package Ġdata structures Ċ Ċ import Ġjava . util .* Ċ Ċ // Ġsaves Ġfor Ġeach Ġkey , Ġonly Ġthe Ġ" best " Ġvalue Ċ class ĠBest Map < K , ĠV >( val Ġis First Better : Ġ( V , ĠV ) Ġ-> ĠBoolean ) Ġ: ĠHashMap < K , ĠV >() Ġ{ ĊĊ ĉ fun Ġupdate ( key : ĠK , Ġvalue : ĠV ) Ġ{ Ċĉ ĉ if Ġ( containsKey ( key )) Ġ{ Ċĉĉ ĉ if Ġ( is First Better ( value , Ġthis [ key ] !! )) Ġ{ Ċĉĉĉ ĉ put ( key , Ġvalue ) Ċĉĉ ĉ } Ċĉ ĉ } Ġelse Ġ{ Ċĉĉ ĉ put ( key , Ġvalue ) Ċĉ ĉ } Ċ ĉ } Ċ }