class ĠA Ċ class ĠB Ċ Ċ var Ġholder Ġ= Ġ 0 Ċ Ċ fun ĠA . not (): ĠA Ġ{ ĊĠĠĠ Ġholder ++ ĊĠĠĠ Ġreturn Ġthis ; Ċ } Ċ Ċ fun ĠB . not (): ĠBoolean Ġ{ ĊĠĠĠ Ġholder ++ ĊĠĠĠ Ġreturn Ġfalse ; Ċ } Ċ Ċ fun Ġbox (): ĠString Ġ{ ĊĠĠĠ Ġ! !!!! A () ĊĠĠĠ Ġif Ġ( holder Ġ!= Ġ 5 ) Ġreturn Ġ" fail Ġ 1 " ĊĊĠĠĠ Ġholder Ġ= Ġ 0 ; ĊĠĠĠ Ġif Ġ(! !! B () Ġ|| Ġholder Ġ!= Ġ 1 ) Ġreturn Ġ" fail Ġ 2 " ĊĊĠĠĠ Ġif Ġ(! B () Ġ!= Ġfalse ) Ġreturn Ġ" fail Ġ 3 " ĊĊĠĠĠ Ġif Ġ(! ! B () Ġ!= Ġtrue ) Ġreturn Ġ" fail Ġ 4 " ĊĊĠĠĠ Ġreturn Ġ" OK " Ċ }