Dynamic register Configuration

Hello all,
Previously I have generated a ral model in which all register name was declared inside uvm_reg_block parent class.So I was writing registers dynamically as given below

top_file_instance.instance_where_reg_are_written.get_reg_by_name(x).get_field_name(y).write(5,5);
where x = register name
y = field name

But Now I am receiving 2 parallel data stream where for both data stream 2 registers are different. That’s why inside uvm_reg_block I am generating 2 instances where I can declare all register name and for both instance address are different. So now this generated instance class it’s extending uvm_reg_file parent class that’s why I can not write register dynamically by using “get_reg_by_name” because this class instance is extending uvm_reg_file where this method is not available.

But whatever methods are available I am not able to get register object so I can write it as previously I had written.
Now if I want to write register in the following fashion then what method should I write at the place of “*********” which are available in “uvm_reg_file” class

top_file_instance.instance_where_reg_are_written.instance[0].******.get_field_name(y).write(5,5);
This are the methods available in uvm_reg_file
get_name Get the simple name
get_full_name Get the hierarchical name
get_parent Get the parent block
get_regfile Get the parent register file

Thanks in Advance