package

internal fun priority(/*0*/ op: Operation): kotlin.Int

internal sealed class Operation {
    private constructor Operation(/*0*/ left: kotlin.Int, /*1*/ right: kotlin.Int)
    internal final val left: kotlin.Int
    internal final val right: kotlin.Int
    public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
    internal abstract fun exec(): kotlin.Int
    public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
    public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String

    internal final class Minus : Operation {
        public constructor Minus(/*0*/ left: kotlin.Int, /*1*/ right: kotlin.Int)
        internal final override /*1*/ /*fake_override*/ val left: kotlin.Int
        internal final override /*1*/ /*fake_override*/ val right: kotlin.Int
        public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
        internal open override /*1*/ fun exec(): kotlin.Int
        public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
        public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
    }

    internal final class Plus : Operation {
        public constructor Plus(/*0*/ left: kotlin.Int, /*1*/ right: kotlin.Int)
        internal final override /*1*/ /*fake_override*/ val left: kotlin.Int
        internal final override /*1*/ /*fake_override*/ val right: kotlin.Int
        public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
        internal open override /*1*/ fun exec(): kotlin.Int
        public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
        public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
    }

    internal final class Slash : Operation {
        public constructor Slash(/*0*/ left: kotlin.Int, /*1*/ right: kotlin.Int)
        internal final override /*1*/ /*fake_override*/ val left: kotlin.Int
        internal final override /*1*/ /*fake_override*/ val right: kotlin.Int
        public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
        internal open override /*1*/ fun exec(): kotlin.Int
        public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
        public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
    }

    internal final class Times : Operation {
        public constructor Times(/*0*/ left: kotlin.Int, /*1*/ right: kotlin.Int)
        internal final override /*1*/ /*fake_override*/ val left: kotlin.Int
        internal final override /*1*/ /*fake_override*/ val right: kotlin.Int
        public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
        internal open override /*1*/ fun exec(): kotlin.Int
        public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
        public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
    }
}
