package Ġcom . test . currency ap it est . model Ċ Ċ import Ġcom . test . currency ap it est . R Ċ import Ġkotlin . collections . HashMap Ċ Ċ class ĠCurrency DataStore Ġ{ ĊĠĠĠ Ġprivate Ġval Ġcountry Flag Map Ġ= ĠHashMap < String ?, ĠInt >() ĊĠĠĠ Ġprivate Ġval Ġcurrency Name Map Ġ= ĠHashMap < String ?, ĠString >() ĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġcurrency Rate Map : ĠMap < String , ĠDouble > ĊĊĠĠĠ Ġinit Ġ{ ĊĠĠĠĠĠĠĠ Ġinit Flags Data () ĊĠĠĠĠĠĠĠ Ġinit Currency Name Data () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġinstance Ġ= ĠCurrency DataStore () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġget Flag Image Drawable ( currency Code : ĠString ): ĠInt ? Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġcountry Flag Map [ currency Code ] ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġget Currency Name ( currency Code : ĠString ): ĠString ? Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( currency Code Ġ== Ġ"") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġ"" ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġreturn Ġcurrency Name Map [ currency Code ] ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġget Currency Rate Map (): ĠMap < String , ĠDouble > Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġcurrency Rate Map ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġset Currency Rate Map ( currency Rate Map : ĠMap < String , ĠDouble >) Ġ{ ĊĠĠĠĠĠĠĠ Ġsynchronized ( this ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthis . currency Rate Map Ġ= Ġcurrency Rate Map ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġinit Flags Data () Ġ{ ĊĠĠĠĠĠĠĠ Ġcountry Flag Map [" AUD "] Ġ= ĠR . drawable . ic _ flag _ au ĊĠĠĠĠĠĠĠ Ġcountry Flag Map [" B GN "] Ġ= ĠR . drawable . ic _ flag _ bg ĊĠĠĠĠĠĠĠ Ġcountry Flag Map [" B RL "] Ġ= ĠR . drawable . ic _ flag _ br ĊĠĠĠĠĠĠĠ Ġcountry Flag Map [" CAD "] Ġ= ĠR . drawable . ic _ flag _ ca ĊĠĠĠĠĠĠĠ Ġcountry Flag Map [" CH F "] Ġ= ĠR . drawable . ic _ flag _ ch ĊĠĠĠĠĠĠĠ Ġcountry Flag Map [" CN Y "] Ġ= ĠR . drawable . ic _ flag _ cn ĊĠĠĠĠĠĠĠ Ġcountry Flag Map [" CZ K "] Ġ= ĠR . drawable . ic _ flag _ cz ĊĠĠĠĠĠĠĠ Ġcountry Flag Map [" DK K "] Ġ= ĠR . drawable . ic _ flag _ dk ĊĠĠĠĠĠĠĠ Ġcountry Flag Map [" GBP "] Ġ= ĠR . drawable . ic _ flag _ gb ĊĠĠĠĠĠĠĠ Ġcountry Flag Map [" HK D "] Ġ= ĠR . drawable . ic _ flag _ hk ĊĠĠĠĠĠĠĠ Ġcountry Flag Map [" HR K "] Ġ= ĠR . drawable . ic _ flag _ hr ĊĠĠĠĠĠĠĠ Ġcountry Flag Map [" HU F "] Ġ= ĠR . drawable . ic _ flag _ hu ĊĠĠĠĠĠĠĠ Ġcountry Flag Map [" IDR "] Ġ= ĠR . drawable . ic _ flag _ id ĊĠĠĠĠĠĠĠ Ġcountry Flag Map [" IL S "] Ġ= ĠR . drawable . ic _ flag _ il ĊĠĠĠĠĠĠĠ Ġcountry Flag Map [" IN R "] Ġ= ĠR . drawable . ic _ flag _ in ĊĠĠĠĠĠĠĠ Ġcountry Flag Map [" IS K "] Ġ= ĠR . drawable . ic _ flag _ is ĊĠĠĠĠĠĠĠ Ġcountry Flag Map [" J PY "] Ġ= ĠR . drawable . ic _ flag _ jp ĊĠĠĠĠĠĠĠ Ġcountry Flag Map [" K RW "] Ġ= ĠR . drawable . ic _ flag _ kr ĊĠĠĠĠĠĠĠ Ġcountry Flag Map [" MX N "] Ġ= ĠR . drawable . ic _ flag _ mx ĊĠĠĠĠĠĠĠ Ġcountry Flag Map [" MY R "] Ġ= ĠR . drawable . ic _ flag _ my ĊĠĠĠĠĠĠĠ Ġcountry Flag Map [" NO K "] Ġ= ĠR . drawable . ic _ flag _ no ĊĠĠĠĠĠĠĠ Ġcountry Flag Map [" NZ D "] Ġ= ĠR . drawable . ic _ flag _ nz ĊĠĠĠĠĠĠĠ Ġcountry Flag Map [" PHP "] Ġ= ĠR . drawable . ic _ flag _ ph ĊĠĠĠĠĠĠĠ Ġcountry Flag Map [" PL N "] Ġ= ĠR . drawable . ic _ flag _ pl ĊĠĠĠĠĠĠĠ Ġcountry Flag Map [" RON "] Ġ= ĠR . drawable . ic _ flag _ ro ĊĠĠĠĠĠĠĠ Ġcountry Flag Map [" R UB "] Ġ= ĠR . drawable . ic _ flag _ ru ĊĠĠĠĠĠĠĠ Ġcountry Flag Map [" SE K "] Ġ= ĠR . drawable . ic _ flag _ se ĊĠĠĠĠĠĠĠ Ġcountry Flag Map [" SG D "] Ġ= ĠR . drawable . ic _ flag _ sg ĊĠĠĠĠĠĠĠ Ġcountry Flag Map [" THB "] Ġ= ĠR . drawable . ic _ flag _ th ĊĠĠĠĠĠĠĠ Ġcountry Flag Map [" TRY "] Ġ= ĠR . drawable . ic _ flag _ tr ĊĠĠĠĠĠĠĠ Ġcountry Flag Map [" USD "] Ġ= ĠR . drawable . ic _ flag _ us ĊĠĠĠĠĠĠĠ Ġcountry Flag Map [" Z AR "] Ġ= ĠR . drawable . ic _ flag _ za ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġinit Currency Name Data () Ġ{ ĊĠĠĠĠĠĠĠ Ġcurrency Name Map [" AUD "] Ġ= Ġ" A ustr alian ĠD ollar " ĊĠĠĠĠĠĠĠ Ġcurrency Name Map [" B GN "] Ġ= Ġ" Bul gar ian ĠLe v " ĊĠĠĠĠĠĠĠ Ġcurrency Name Map [" B RL "] Ġ= Ġ" Br azil ian ĠReal " ĊĠĠĠĠĠĠĠ Ġcurrency Name Map [" CAD "] Ġ= Ġ" Can ad ian ĠD ollar " ĊĠĠĠĠĠĠĠ Ġcurrency Name Map [" CH F "] Ġ= Ġ" Sw iss ĠFranc " ĊĠĠĠĠĠĠĠ Ġcurrency Name Map [" CN Y "] Ġ= Ġ" Chinese ĠY uan " ĊĠĠĠĠĠĠĠ Ġcurrency Name Map [" CZ K "] Ġ= Ġ" C zech ĠRepublic ĠK or una " ĊĠĠĠĠĠĠĠ Ġcurrency Name Map [" DK K "] Ġ= Ġ" Dan ish ĠKr one " ĊĠĠĠĠĠĠĠ Ġcurrency Name Map [" GBP "] Ġ= Ġ" B rit ish ĠP ound " ĊĠĠĠĠĠĠĠ Ġcurrency Name Map [" HK D "] Ġ= Ġ" H ong ĠK ong ĠD ollar " ĊĠĠĠĠĠĠĠ Ġcurrency Name Map [" HR K "] Ġ= Ġ" C ro at ian ĠK una " ĊĠĠĠĠĠĠĠ Ġcurrency Name Map [" HU F "] Ġ= Ġ" H ung arian ĠFor int " ĊĠĠĠĠĠĠĠ Ġcurrency Name Map [" IDR "] Ġ= Ġ" Ind ones ian ĠR up iah " ĊĠĠĠĠĠĠĠ Ġcurrency Name Map [" IL S "] Ġ= Ġ" Is ra eli ĠNew ĠShe kel " ĊĠĠĠĠĠĠĠ Ġcurrency Name Map [" IN R "] Ġ= Ġ" In dian ĠR upe e " ĊĠĠĠĠĠĠĠ Ġcurrency Name Map [" IS K "] Ġ= Ġ" I cel and ic ĠKr Ã³ na " ĊĠĠĠĠĠĠĠ Ġcurrency Name Map [" J PY "] Ġ= Ġ" J apanese ĠY en " ĊĠĠĠĠĠĠĠ Ġcurrency Name Map [" K RW "] Ġ= Ġ" South ĠK orean ĠW on " ĊĠĠĠĠĠĠĠ Ġcurrency Name Map [" MX N "] Ġ= Ġ" M ex ican ĠP es o " ĊĠĠĠĠĠĠĠ Ġcurrency Name Map [" MY R "] Ġ= Ġ" Mal ays ian ĠRing git " ĊĠĠĠĠĠĠĠ Ġcurrency Name Map [" NO K "] Ġ= Ġ" Nor we g ian ĠKr one " ĊĠĠĠĠĠĠĠ Ġcurrency Name Map [" NZ D "] Ġ= Ġ" New ĠZe al and ĠD ollar " ĊĠĠĠĠĠĠĠ Ġcurrency Name Map [" PHP "] Ġ= Ġ" Phil ipp ine ĠP es o " ĊĠĠĠĠĠĠĠ Ġcurrency Name Map [" PL N "] Ġ= Ġ" Pol ish ĠZ lo ty " ĊĠĠĠĠĠĠĠ Ġcurrency Name Map [" RON "] Ġ= Ġ" R oman ian ĠLe u " ĊĠĠĠĠĠĠĠ Ġcurrency Name Map [" R UB "] Ġ= Ġ" R ussian ĠR uble " ĊĠĠĠĠĠĠĠ Ġcurrency Name Map [" SE K "] Ġ= Ġ" Sw ed ish ĠK ron a " ĊĠĠĠĠĠĠĠ Ġcurrency Name Map [" SG D "] Ġ= Ġ" Sing apore ĠD ollar " ĊĠĠĠĠĠĠĠ Ġcurrency Name Map [" THB "] Ġ= Ġ" Th ai ĠBa ht " ĊĠĠĠĠĠĠĠ Ġcurrency Name Map [" TRY "] Ġ= Ġ" Tur k ish ĠL ira " ĊĠĠĠĠĠĠĠ Ġcurrency Name Map [" USD "] Ġ= Ġ" US ĠD ollar " ĊĠĠĠĠĠĠĠ Ġcurrency Name Map [" Z AR "] Ġ= Ġ" South ĠA fr ican ĠRand " ĊĠĠĠ Ġ} Ċ }