package

public interface ExtMap</*0*/ K, /*1*/ V> : kotlin.Map<K, V> {
    public abstract override /*1*/ /*fake_override*/ val isEmpty: kotlin.Boolean
    public abstract override /*1*/ /*fake_override*/ val size: kotlin.Int
    public abstract override /*1*/ /*fake_override*/ fun containsKey(/*0*/ key: kotlin.Any?): kotlin.Boolean
    public abstract override /*1*/ /*fake_override*/ fun containsValue(/*0*/ value: kotlin.Any?): kotlin.Boolean
    public abstract override /*1*/ /*fake_override*/ fun entrySet(): kotlin.Set<kotlin.Map.Entry<K, V>>
    public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
    public abstract override /*1*/ /*fake_override*/ fun get(/*0*/ key: kotlin.Any?): V?
    public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
    public abstract override /*1*/ /*fake_override*/ fun keySet(): kotlin.Set<K>
    public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
    public abstract override /*1*/ /*fake_override*/ fun values(): kotlin.Collection<V>
}

public final class HashMapEx</*0*/ K, /*1*/ V> : java.util.HashMap<K, V>, ExtMap<K, V> {
    public constructor HashMapEx</*0*/ K, /*1*/ V>()
    invisible_fake final override /*1*/ /*fake_override*/ var entrySet: kotlin.(Mutable)Set<kotlin.(Mutable)Map.(Mutable)Entry<K!, V!>!>!
    invisible_fake final override /*1*/ /*fake_override*/ val hashSeed: kotlin.Int
    public open override /*2*/ /*fake_override*/ val isEmpty: kotlin.Boolean
    invisible_fake final override /*1*/ /*fake_override*/ var keySet: kotlin.(Mutable)Set<K!>!
    invisible_fake final override /*1*/ /*fake_override*/ val loadFactor: kotlin.Float
    invisible_fake final override /*1*/ /*fake_override*/ var modCount: kotlin.Int
    invisible_fake final override /*1*/ /*fake_override*/ var size: kotlin.Int
    public open override /*2*/ /*fake_override*/ val size: kotlin.Int
    invisible_fake final override /*1*/ /*fake_override*/ var table: kotlin.Array<(out) java.util.HashMap.Entry<K!, V!>!>!
    invisible_fake final override /*1*/ /*fake_override*/ var threshold: kotlin.Int
    invisible_fake final override /*1*/ /*fake_override*/ var useAltHashing: kotlin.Boolean
    invisible_fake final override /*1*/ /*fake_override*/ var values: kotlin.(Mutable)Collection<V!>!
    invisible_fake open override /*1*/ /*fake_override*/ fun addEntry(/*0*/ p0: kotlin.Int, /*1*/ p1: K!, /*2*/ p2: V!, /*3*/ p3: kotlin.Int): kotlin.Unit
    invisible_fake open override /*1*/ /*fake_override*/ fun capacity(): kotlin.Int
    public open override /*1*/ /*fake_override*/ fun clear(): kotlin.Unit
    public open override /*1*/ /*fake_override*/ fun clone(): kotlin.Any
    public open override /*2*/ /*fake_override*/ fun containsKey(/*0*/ key: kotlin.Any?): kotlin.Boolean
    invisible_fake open override /*1*/ /*fake_override*/ fun containsNullValue(): kotlin.Boolean
    public open override /*2*/ /*fake_override*/ fun containsValue(/*0*/ value: kotlin.Any?): kotlin.Boolean
    invisible_fake open override /*1*/ /*fake_override*/ fun createEntry(/*0*/ p0: kotlin.Int, /*1*/ p1: K!, /*2*/ p2: V!, /*3*/ p3: kotlin.Int): kotlin.Unit
    public open override /*2*/ /*fake_override*/ fun entrySet(): kotlin.MutableSet<kotlin.MutableMap.MutableEntry<K, V>>
    invisible_fake open override /*1*/ /*fake_override*/ fun entrySet0(): kotlin.(Mutable)Set<kotlin.(Mutable)Map.(Mutable)Entry<K!, V!>!>!
    public open override /*2*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
    public open override /*2*/ /*fake_override*/ fun get(/*0*/ key: kotlin.Any?): V?
    invisible_fake final override /*1*/ /*fake_override*/ fun getEntry(/*0*/ p0: kotlin.Any!): java.util.HashMap.Entry<K!, V!>!
    invisible_fake open override /*1*/ /*fake_override*/ fun getForNullKey(): V!
    invisible_fake final override /*1*/ /*fake_override*/ fun hash(/*0*/ p0: kotlin.Any!): kotlin.Int
    public open override /*2*/ /*fake_override*/ fun hashCode(): kotlin.Int
    invisible_fake open override /*1*/ /*fake_override*/ fun init(): kotlin.Unit
    public open override /*2*/ /*fake_override*/ fun keySet(): kotlin.MutableSet<K>
    invisible_fake open override /*1*/ /*fake_override*/ fun loadFactor(): kotlin.Float
    invisible_fake open override /*1*/ /*fake_override*/ fun newEntryIterator(): kotlin.(Mutable)Iterator<kotlin.(Mutable)Map.(Mutable)Entry<K!, V!>!>!
    invisible_fake open override /*1*/ /*fake_override*/ fun newKeyIterator(): kotlin.(Mutable)Iterator<K!>!
    invisible_fake open override /*1*/ /*fake_override*/ fun newValueIterator(): kotlin.(Mutable)Iterator<V!>!
    public open override /*1*/ /*fake_override*/ fun put(/*0*/ key: K, /*1*/ value: V): V?
    public open override /*1*/ /*fake_override*/ fun putAll(/*0*/ m: kotlin.Map<out K, V>): kotlin.Unit
    invisible_fake open override /*1*/ /*fake_override*/ fun putAllForCreate(/*0*/ p0: (kotlin.MutableMap<out K!, out V!>..kotlin.Map<out K!, V!>?)): kotlin.Unit
    invisible_fake open override /*1*/ /*fake_override*/ fun putForCreate(/*0*/ p0: K!, /*1*/ p1: V!): kotlin.Unit
    invisible_fake open override /*1*/ /*fake_override*/ fun putForNullKey(/*0*/ p0: V!): V!
    invisible_fake open override /*1*/ /*fake_override*/ fun readObject(/*0*/ p0: java.io.ObjectInputStream!): kotlin.Unit
    public open override /*1*/ /*fake_override*/ fun remove(/*0*/ key: kotlin.Any?): V?
    invisible_fake final override /*1*/ /*fake_override*/ fun removeEntryForKey(/*0*/ p0: kotlin.Any!): java.util.HashMap.Entry<K!, V!>!
    invisible_fake final override /*1*/ /*fake_override*/ fun removeMapping(/*0*/ p0: kotlin.Any!): java.util.HashMap.Entry<K!, V!>!
    invisible_fake open override /*1*/ /*fake_override*/ fun resize(/*0*/ p0: kotlin.Int): kotlin.Unit
    public open override /*2*/ /*fake_override*/ fun toString(): kotlin.String
    invisible_fake open override /*1*/ /*fake_override*/ fun transfer(/*0*/ p0: kotlin.Array<(out) java.util.HashMap.Entry<(raw) kotlin.Any!, (raw) kotlin.Any!>!>!, /*1*/ p1: kotlin.Boolean): kotlin.Unit
    public open override /*2*/ /*fake_override*/ fun values(): kotlin.MutableCollection<V>
    invisible_fake open override /*1*/ /*fake_override*/ fun writeObject(/*0*/ p0: java.io.ObjectOutputStream!): kotlin.Unit
}
