// ĠOriginal Ġbug : ĠK T - 3 0 6 9 3 Ċ Ċ class ĠA ( ĊĠĠĠ Ġval Ġid : ĠInt , ĊĠĠĠ Ġval Ġname : ĠString , ĊĠĠĠ Ġval Ġfoo : ĠNumber , ĊĠĠĠ Ġval Ġbar : ĠList < Int > Ċ ) Ġ{ ĊĠĠĠ Ġoverride Ġfun Ġequals ( other : ĠAny ?): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( this Ġ=== Ġother ) Ġreturn Ġtrue ĊĠĠĠĠĠĠĠ Ġif Ġ( java Class Ġ!= Ġother ?. java Class ) Ġreturn Ġfalse ĊĊĠĠĠĠĠĠĠ Ġother Ġas ĠA ĊĊĠĠĠĠĠĠĠ Ġif Ġ( id Ġ!= Ġother . id ) Ġreturn Ġfalse ĊĠĠĠĠĠĠĠ Ġif Ġ( name Ġ!= Ġother . name ) Ġreturn Ġfalse ĊĠĠĠĠĠĠĠ Ġif Ġ( foo Ġ!= Ġother . foo ) Ġreturn Ġfalse ĊĠĠĠĠĠĠĠ Ġif Ġ( bar Ġ!= Ġother . bar ) Ġreturn Ġfalse ĊĊĠĠĠĠĠĠĠ Ġreturn Ġtrue ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠhashCode (): ĠInt Ġ{ ĊĠĠĠĠĠĠĠ Ġvar Ġresult Ġ= Ġid ĊĠĠĠĠĠĠĠ Ġresult Ġ= Ġ 3 1 Ġ* Ġresult Ġ+ Ġname . hashCode () ĊĠĠĠĠĠĠĠ Ġresult Ġ= Ġ 3 1 Ġ* Ġresult Ġ+ Ġfoo . hashCode () ĊĠĠĠĠĠĠĠ Ġresult Ġ= Ġ 3 1 Ġ* Ġresult Ġ+ Ġbar . hashCode () ĊĠĠĠĠĠĠĠ Ġreturn Ġresult ĊĠĠĠ Ġ} Ċ } Ċ