FILE: enums2.kt
    public? abstract interface Some {
    }
    public? final object O1 : Some {
    }
    public? final object O2 : Some {
    }
    public? final enum class SomeEnum {
        public? constructor(x: Some)

        public? final? property x(val): Some
            public? get(): Some

        public? final enum entry FIRST : SomeEnum {
            public? open? override function check(y: Some): Boolean {
                STUB
            }

        }

        public? final enum entry SECOND : SomeEnum {
            public? open? override function check(y: Some): Boolean {
                STUB
            }

        }

        public? abstract function check(y: Some): Boolean

    }
