Way to implement cross coverage so that 1 hit in the cross is considered to be covered

Hi All,

I’m trying to implement a cross coverage for variable-> size , index, ways and parameter n(size,ways, index, n). I want to implement it in a way that whenever a single combination is hit for a cross it is considered to be covered. I tried implementing it using at_least option as follows but it still considers other combination to get 100% coverage. Please review my implementation and let me know if there is something wrong or I need to use some other construct!
Thank you

covergroup cg @(posedge init);

ways_4_46: coverpoint ways { bins a = {[4:46]};}
size: coverpoint size { bins val = {8408}; }
index: coverpoint index { bins b2 = {1}; }
n: coverpoint n { bins n_1 = {7};

size_X_n_X_index_X_ways_4_46_cross : cross size,n,index,ways_4_46 { option.at_least = 1 ;}
end group

In reply to Nimisha Varadkar:

You can merge all the cross-bins into a single bin with a select expression

size_X_n_X_index_X_ways_4_46_cross : cross size,n,index,ways_4_46 { 
   bins mrg = binsof(n);
}