class ĠItem ( val Ġname : ĠString , Ġval Ġrating : ĠInt ): ĠComparable < Item > Ġ{ ĊĠĠĠ Ġpublic Ġoverride Ġfun Ġcompare To ( other : ĠItem ): ĠInt Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġcompare By ( this , Ġother , Ġ{ Ġrating Ġ}, Ġ{ Ġname Ġ}) ĊĠĠĠ Ġ} Ċ } Ċ Ċ // Ġfrom Ġstandard Ġlibrary Ċ fun Ġ< T Ġ: ĠAny > Ġcompare By ( a : ĠT ?, Ġb : ĠT ?, ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġvar arg Ġfunctions : ĠT . () Ġ-> ĠComparable < *> ?): ĠInt Ġ= Ġthrow ĠException ()