Parameter override in class

I am trying to override parameters to agent but seeing compilation error stating that you can not override 64 bits with 128 bits.
what can be the issue ? Am I missing something? Thanks !

My piece of code -

parameter [31:0][31:0] FIFO_DEPTH = {32’d4, 32’d8, 32’d10, 32’d16};
parameter [31:0][31:0] DATA_WIDTH = {32’d16, 32’d24, 32’d32, 32’d48};

class mst_agent#(parameter MASTER_FIFO_DEPTH = {32’d4, 32’d8 },parameter MASTER_DATA_WIDTH = {32’d16, 32’d24}) extends uvm_agent;
endclass
class base_testbench extends uvm_component;
mst_agent#(.MASTER_FIFO_DEPTH(FIFO_DEPTH),.MASTER_DATA_WIDTH(DATA_WIDTH)) mst_agt;
endclass

*E,TYCMPAT (base_testbench.sv,81|150): assignment operator type check failed (expecting datatype compatible with ‘class vip_pkg::_mst_agent#(.MASTER_FIFO_DEPTH(128’h00000004000000080000000a00000010),.MASTER_DATA_WIDTH(128’h00000010000000180000002000000030))’ but found ‘class vip_pkg::mst_agent#(.MASTER_FIFO_DEPTH(64’h0000000400000008),.MASTER_DATA_WIDTH(64’h0000001000000018))’ instead).

In reply to Andee:

One issue is with your simulator. The packed array range [31:0][31:0] is 1024 bits. Did you mean [3:0][31:0]?
Double check the line number of the error. did you use the correct factory registration? Did you use the correct parameterization when creating your agent?

In reply to dave_59:

In reply to Andee:
One issue is with your simulator. The packed array range [31:0][31:0] is 1024 bits. Did you mean [3:0][31:0]?
Double check the line number of the error. did you use the correct factory registration? Did you use the correct parameterization when creating your agent?

Thanks Dave for the pointer ! passing parameters while registering mast_agent in factory helped.
`uvm_component_param_utils(mst_agent#(MASTER_FIFO_DEPTH ,MASTER_DATA_WIDTH ))