public class m {
    void aa(){}
}

class Outer extends m{
    static class Inner extends Super {
        private final Outer anObject;

        public Inner(Outer anObject) {
            this.anObject = anObject;
        }

        void bar(){

        }
        void foo() {
            super.foo();
            this.bar();
            anObject.aa();
            anObject.aa();
        }
    }
}
class Super {
    void foo() {}
}