// One-dimensional array subtyping with equal types
class OneDimIncludedRPLs<region R> {
// Default RPL
int[] defaultRPL1;
int[] defaultRPL2 = defaultRPL1;
// Root bound to RPL
int[]<Root> rootRPL1;
int[]<*> rootRPL2 = rootRPL1;
// Index-parameterized RPL
int[]<[i]>#i indexParamRPL1;
int[]<*> indexParamRPL2 = indexParamRPL1;
// Index-parameterized type
OneDimIncludedRPLs<[i]>[]#i indexParamType1;
OneDimIncludedRPLs<[i]>[]<*>#i indexParamType2 = indexParamType1;
// Index-parameterized both
OneDimIncludedRPLs<[i]>[]<[i]>#i indexParamBoth1;
OneDimIncludedRPLs<[i]>[]<*>#i indexParamBoth2 = indexParamBoth1;
}