import jdk.internal.value.ValueClass;

public class Test {
    static V1 v1Fld = new V1(5);
    static V2 v2Fld = new V2(7);
    static A aFld;

    static A[] aArr = (V1[]) ValueClass.newNullableAtomicArray(V1.class, 100);


    public static void main(String[] args) {
        for (int i = 0; i < 10000; i++) {
            test();
        }
    }


    static void test() {
        for (int i = 0; i < 100; ++i) {
            aFld = aArr[i];
        }
    }
}


abstract value class A {}

value class V1 extends A {
    int x;

    V1(int x) {
        this.x = x;
    }
}

value class V2 extends A {
    int x;

    V2(int x) {
        this.x = x;
    }
}

