package Ġcom . y und om . k ache . map Ċ Ċ class ĠL ru Map < K , ĠV >( private Ġval Ġcapacity : ĠInt ) Ġ: ĠMutable Map < K , ĠV > Ġ{ ĊĠĠĠ Ġprivate Ġvar Ġmap : ĠMutable Map < K , ĠV > Ġ= Ġobject Ġ: ĠLinkedHashMap < K , ĠV >( capacity ) Ġ{ ĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġremove El dest Entry ( el dest : ĠMutable Map . Mutable Entry < K , ĠV >? ): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġsize Ġ> Ġcapacity ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġval Ġsize : ĠInt ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġmap . size ĊĊĠĠĠ Ġoverride Ġfun Ġcontains Key ( key : ĠK ): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġmap . containsKey ( key ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġcontains Value ( value : ĠV ): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġmap . contains Value ( value ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġget ( key : ĠK ): ĠV ? Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġvalue Ġ= Ġmap . get ( key ) ĊĠĠĠĠĠĠĠ Ġvalue ?. run Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġmap . remove ( key ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġmap . put ( key , Ġvalue ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġreturn Ġvalue ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠisEmpty (): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġmap . isEmpty () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġval Ġentries : ĠMutable Set < Mutable Map . Mutable Entry < K , ĠV >> ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġmap . entries ĊĠĠĠ Ġoverride Ġval Ġkeys : ĠMutable Set < K > ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġmap . keys ĊĠĠĠ Ġoverride Ġval Ġvalues : ĠMutable Collection < V > ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġmap . values ĊĊĠĠĠ Ġoverride Ġfun Ġclear () Ġ{ ĊĠĠĠĠĠĠĠ Ġmap . clear () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġput ( key : ĠK , Ġvalue : ĠV ): ĠV ? Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġprevious Ġ= Ġmap . get ( key ) ĊĠĠĠĠĠĠĠ Ġmap . remove ( key ) ĊĠĠĠĠĠĠĠ Ġmap . put ( key , Ġvalue ) ĊĠĠĠĠĠĠĠ Ġreturn Ġprevious ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġput All ( from : ĠMap < out ĠK , ĠV >) Ġ{ ĊĠĠĠĠĠĠĠ Ġfrom . forEach Ġ{ Ġkey , Ġ_ Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġmap . remove ( key ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġmap . put All ( from ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġremove ( key : ĠK ): ĠV ? Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġmap . remove ( key ) ĊĠĠĠ Ġ} Ċ }