// ĠEXPECT ED _ RE ACH ABLE _ NODES : Ġ 1 2 8 6 Ċ package Ġfoo Ċ Ċ class ĠFoo ( val Ġname : ĠString ) Ġ{ ĊĠĠĠ Ġoverride Ġfun Ġequals ( other : ĠAny ?): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( other Ġ! is ĠFoo ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġfalse ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġreturn Ġthis . name Ġ== Ġother . name ĊĠĠĠ Ġ} Ċ } Ċ Ċ class ĠBar () Ġ{ Ċ Ċ } Ċ Ċ fun Ġbox (): ĠString Ġ{ ĊĠĠĠ Ġval Ġa Ġ= ĠFoo (" abc ") ĊĠĠĠ Ġval Ġb Ġ= ĠFoo (" abc ") ĊĠĠĠ Ġval Ġc Ġ= ĠFoo (" def ") ĊĊĠĠĠ Ġif Ġ(!( a . equals ( b ))) Ġreturn Ġ" fail 1 " ĊĠĠĠ Ġif Ġ( a . equals ( c )) Ġreturn Ġ" fail 2 " ĊĠĠĠ Ġif Ġ( Bar (). equals ( Bar ())) Ġreturn Ġ" fail 3 " ĊĠĠĠ Ġval Ġg Ġ= ĠBar () ĊĠĠĠ Ġif Ġ(!( g . equals ( g ))) Ġreturn Ġ" fail 4 " ĊĠĠĠ Ġif Ġ( g . equals ( Bar ())) Ġreturn Ġ" fail 5 " ĊĠĠĠ Ġreturn Ġ" OK " Ċ }