public class A {
    int a;

    public A (int a) {
        this.a = a;
    }

    public static class B {
        int b;

        public B (int b) {
            this.b = b;
        }
    }
}