How to write coverpoint for multiple input transition

I need to write coverpoint for below combos

//128B req seq:{… adr1,adr,adr1,adr}
lr_inp[large_req_utils::LRR_128B_IDX][0] = 33’h10000_3210;
lr_inp[large_req_utils::LRR_128B_IDX][1] = 33’h10000_5432;
lr_inp[large_req_utils::LRR_128B_IDX][2] = 33’h10000_7654;
lr_inp[large_req_utils::LRR_128B_IDX][3] = 33’h10000_ba98;
lr_inp[large_req_utils::LRR_128B_IDX][4] = 33’h10000_dcba;
lr_inp[large_req_utils::LRR_128B_IDX][5] = 33’h10000_fedc;
lr_inp[large_req_utils::LRR_128B_IDX][6] = 33’h10000_3120;
lr_inp[large_req_utils::LRR_128B_IDX][7] = 33’h10000_7564;
lr_inp[large_req_utils::LRR_128B_IDX][8] = 33’h10000_b9a8;
lr_inp[large_req_utils::LRR_128B_IDX][9] = 33’h10000_fdec;

lr_inp[large_req_utils::LRR_128B_IDX][0] = 33’h10000_3210; → suppose this is the incoming address for a particular request then addr=0 and adr1=1 for first 64byte and addr=2 and adr1=3 for second 64byte request…
similarly for all other address mentoned above…

So, I need write coverpoint where addr=0 and adr=1 are covereted to addr=2 and addr=3 in next 64 byte request then we can confirm that request has 33’h10000_3210 this 128byte request has came.

I have wriiten coverpoint in below way, is there any other way than this

large_req : coverpoint addr,adr1 iff(1) {
bins large_request = { ((addr = 0) && (adr1 = 1)) => ((addr = 2) && (adr1 = 3)),
((addr = 2) && (adr1 = 3)) => ((addr = 4) && (adr1 = 5)),
((addr = 4) && (adr1 = 5)) => ((addr = 6) && (adr1 = 7)),
((addr = 8) && (adr1 = 9)) => ((addr = a) && (adr1 = b)),
((addr = a) && (adr1 = b)) => ((addr = c) && (adr1 = d)),
((addr = c) && (adr1 = d)) => ((addr = e) && (adr1 = f)),
((addr = 0) && (adr1 = 2)) => ((addr = 1) && (adr1 = 3)),
((addr = 4) && (adr1 = 6)) => ((addr = 5) && (adr1 = 7)),
((addr = 8) && (adr1 = a)) => ((addr = 9) && (adr1 = b)),
((addr = c) && (adr1 = e)) => ((addr = d) && (adr1 = f))
}

In reply to Santoshi N:

Hello Santoshi,

From your question what I understood is that you want to write coverpoint for two variables with two transition. So here is a way by which you can do that:

cp_addr : coverpoint {addr , addr1}
{bins ad = (2’b10 => 2’b01);}

This is the way which we can do by the help of concatenation.

Thanks,
Ammar.