package Ġio . ple o . ant ae us . models Ċ Ċ data Ġclass ĠP ocket ( ĊĠĠĠ Ġval Ġid : ĠInt , ĊĠĠĠ Ġval Ġcustomer Id : ĠInt , ĊĠĠĠ Ġval Ġbalance : ĠMoney Ċ ) Ġ{ ĊĠĠĠ Ġfun Ġde bit ( amount : ĠMoney ): ĠP ocket Ġ{ ĊĠĠĠĠĠĠĠ Ġcheck ( amount . currency Ġ== Ġbalance . currency ) Ġ{ Ġ" Amount Ġcurrency Ġshould Ġbe Ġsame Ġas Ġp ocket Ġcurrency " Ġ} ĊĠĠĠĠĠĠĠ Ġcheck ( amount Ġ<= Ġbalance ) Ġ{ Ġ" Amount Ġshould Ġbe Ġless Ġthen Ġor Ġequals Ġto Ġp ocket Ġbalance " Ġ} ĊĠĠĠĠĠĠĠ Ġreturn Ġcopy ( balance Ġ= Ġbalance Ġ- Ġamount ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġcredit ( amount : ĠMoney ): ĠP ocket Ġ{ ĊĠĠĠĠĠĠĠ Ġcheck ( amount . currency Ġ== Ġbalance . currency ) Ġ{ Ġ" Amount Ġcurrency Ġshould Ġbe Ġsame Ġas Ġp ocket Ġcurrency " Ġ} ĊĠĠĠĠĠĠĠ Ġreturn Ġcopy ( balance Ġ= Ġbalance Ġ+ Ġamount ) ĊĠĠĠ Ġ} Ċ Ċ } Ċ