package

@kotlin.native.concurrent.ThreadLocal public val cornerPoint: Point
@kotlin.native.concurrent.ThreadLocal public val extraInfo: Information
@kotlin.native.concurrent.ThreadLocal public var field1: kotlin.Int
@kotlin.native.concurrent.ThreadLocal public val person: Person1
@kotlin.native.concurrent.ThreadLocal public val point1: Point

public final class Bar {
    public constructor Bar()
    public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
    public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
    public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String

    @kotlin.native.concurrent.ThreadLocal public object SomeObject {
        private constructor SomeObject()
        public final var field1: kotlin.Int
        public final var field2: kotlin.String?
        public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
        public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
        public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
    }
}

public final class Delegate {
    public constructor Delegate()
    public final val value: kotlin.Int = 10
    public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
    public final operator fun getValue(/*0*/ thisRef: kotlin.Any?, /*1*/ property: kotlin.reflect.KProperty<*>): kotlin.Int
    public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
    public final operator fun setValue(/*0*/ thisRef: kotlin.Any?, /*1*/ property: kotlin.reflect.KProperty<*>, /*2*/ value: kotlin.Int): kotlin.Unit
    public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}

public abstract class Information {
    public constructor Information()
    public abstract var field: kotlin.String
    public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
    public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
    public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}

public final class Person {
    public constructor Person(/*0*/ name: kotlin.String)
    public final val name: kotlin.String
    @kotlin.native.concurrent.ThreadLocal public final var surname: kotlin.String?
    public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
    public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
    public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}

@kotlin.native.concurrent.ThreadLocal public final class Person1 {
    public constructor Person1(/*0*/ name: kotlin.String)
    @kotlin.native.concurrent.ThreadLocal public final val extraInfo: Information
    public final val name: kotlin.String
    public final var surname: kotlin.String?
    public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
    public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
    public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}

public final data class Point {
    public constructor Point(/*0*/ x: kotlin.Double, /*1*/ y: kotlin.Double)
    public final val x: kotlin.Double
    public final val y: kotlin.Double
    public final operator /*synthesized*/ fun component1(): kotlin.Double
    public final operator /*synthesized*/ fun component2(): kotlin.Double
    public final /*synthesized*/ fun copy(/*0*/ x: kotlin.Double = ..., /*1*/ y: kotlin.Double = ...): Point
    public open override /*1*/ /*synthesized*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
    public open override /*1*/ /*synthesized*/ fun hashCode(): kotlin.Int
    public open override /*1*/ /*synthesized*/ fun toString(): kotlin.String
}

@kotlin.native.concurrent.ThreadLocal public object WithDelegate {
    private constructor WithDelegate()
    public final var field1: kotlin.Int
    public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
    public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
    public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}

package kotlin {

    package kotlin.native {

        package kotlin.native.concurrent {

            @kotlin.annotation.Target(allowedTargets = {AnnotationTarget.PROPERTY, AnnotationTarget.CLASS}) @kotlin.annotation.Retention(value = AnnotationRetention.BINARY) public final annotation class ThreadLocal : kotlin.Annotation {
                public constructor ThreadLocal()
                public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
                public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
                public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
            }
        }
    }
}
