import java.util.function.Function; 
  
class Outer { 
    static class Super { 
        Super(Function<Object, Inner> creator) {} 
    } 
  
    class Inner extends Super { 
        Inner(Object something) { 
            super(Inner::new); // java.lang.VerifyError: Bad type on operand stack 
            // super(smt -> Outer.this.new Inner(smt)); // Workaround 
        } 
    } 
  
    public static void main(String[] args) { 
       new Outer().new Inner(42); 
    } 
} 