// version 8:
class ValInLambda {
    Runnable foo = (Runnable) () -> {
        final int i = 1;
        final java.lang.Runnable foo = (System.currentTimeMillis() > 0) ? (Runnable) () -> {
        } : System.out::println;
    };
    
    public void easyLambda() {
        Runnable foo = (Runnable) () -> {
            final int i = 1;
        };
    }
    
    public void easyIntersectionLambda() {
        Runnable foo = (Runnable) () -> {
            final int i = 1;
        };
    }
    
    public void easyLubLambda() {
        Runnable foo = (Runnable) () -> {
            final java.lang.Runnable fooInner = (System.currentTimeMillis() > 0) ? (Runnable) () -> {
            } : System.out::println;
        };
    }
}