package Ġes . jn soft . what we ath . presentation . mapper Ċ Ċ import Ġes . jn soft . domain . model . Current Ċ import Ġes . jn soft . domain . model . Units Ċ import Ġes . jn soft . what we ath . presentation . model . Current Presentation Ċ import Ġes . jn soft . what we ath . utils . convert Long To Time Ċ import Ġes . jn soft . what we ath . utils . day time Duration Ċ import Ġjava . math . Round ingMode Ċ import Ġkotlin . math . round ToInt Ċ Ċ fun ĠCurrent . to Presentation ( units : ĠUnits ): ĠCurrent Presentation Ġ{ ĊĠĠĠ Ġreturn ĠCurrent Presentation ( ĊĠĠĠĠĠĠĠ Ġclouds Ġ= Ġ"$ clouds Ġ% ", ĊĠĠĠĠĠĠĠ Ġcountry Ġ= Ġcountry , ĊĠĠĠĠĠĠĠ Ġdelta Time Ġ= Ġdelta Time , ĊĠĠĠĠĠĠĠ Ġdescription Ġ= Ġdescription , ĊĠĠĠĠĠĠĠ Ġhum idity Ġ= Ġ"$ humidity Ġ% ", ĊĠĠĠĠĠĠĠ Ġicon Ġ= Ġicon , ĊĠĠĠĠĠĠĠ Ġid Ġ= Ġid , ĊĠĠĠĠĠĠĠ Ġlat Ġ= Ġlocation . lat , ĊĠĠĠĠĠĠĠ Ġlon Ġ= Ġlocation . lon , ĊĠĠĠĠĠĠĠ Ġname Ġ= Ġname , ĊĠĠĠĠĠĠĠ Ġpressure Ġ= Ġ"$ pressure Ġh Pa ", ĊĠĠĠĠĠĠĠ Ġrain Ġ= Ġrain , ĊĠĠĠĠĠĠĠ Ġrain Text Ġ= Ġwhen Ġ( units ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠUnits . STANDARD Ġ-> Ġ"$ rain Ġmm " ĊĠĠĠĠĠĠĠĠĠĠĠ ĠUnits . METRIC Ġ-> Ġ"$ rain Ġmm " ĊĠĠĠĠĠĠĠĠĠĠĠ ĠUnits . IMP ERIAL Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ( rain Ġ/ Ġ 2 5 . 4 ). to BigDecimal () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. set Scale ( 2 , ĠRound ingMode . HALF _ E VEN ). toString () Ġ+ Ġ" Ġin " ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ}, ĊĠĠĠĠĠĠĠ Ġsnow Ġ= Ġsnow , ĊĠĠĠĠĠĠĠ Ġsnow Text Ġ= Ġwhen Ġ( units ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠUnits . STANDARD Ġ-> Ġ"$ snow Ġmm " ĊĠĠĠĠĠĠĠĠĠĠĠ ĠUnits . METRIC Ġ-> Ġ"$ snow Ġmm " ĊĠĠĠĠĠĠĠĠĠĠĠ ĠUnits . IMP ERIAL Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ( snow Ġ/ Ġ 2 5 . 4 ). to BigDecimal () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. set Scale ( 2 , ĠRound ingMode . HALF _ E VEN ). toString () Ġ+ Ġ" Ġin " ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ}, ĊĠĠĠĠĠĠĠ Ġsun rise Ġ= Ġsun rise , ĊĠĠĠĠĠĠĠ Ġsun rise Text Ġ= Ġconvert Long To Time ( sun rise , Ġtime Zone ), ĊĠĠĠĠĠĠĠ Ġsun set Ġ= Ġsun set , ĊĠĠĠĠĠĠĠ Ġsun setText Ġ= Ġconvert Long To Time ( sun set , Ġtime Zone ), ĊĠĠĠĠĠĠĠ Ġday time Duration Ġ= Ġday time Duration ( sun rise , Ġsun set ), ĊĠĠĠĠĠĠĠ Ġtemp Ġ= Ġwhen Ġ( units ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠUnits . STANDARD Ġ-> Ġtemp . round ToInt (). toString () Ġ+ Ġ" ĠK " ĊĠĠĠĠĠĠĠĠĠĠĠ ĠUnits . METRIC Ġ-> Ġ( temp Ġ- Ġ 2 7 3 . 1 5 ). round ToInt (). toString () Ġ+ Ġ" ĠÂ º C " ĊĠĠĠĠĠĠĠĠĠĠĠ ĠUnits . IMP ERIAL Ġ-> Ġ(( temp Ġ- Ġ 2 7 3 . 1 5 ) Ġ* Ġ 9 Ġ/ Ġ 5 Ġ+ Ġ 3 2 ). round ToInt (). toString () Ġ+ Ġ" ĠÂ º F " ĊĠĠĠĠĠĠĠ Ġ}, ĊĠĠĠĠĠĠĠ Ġtemp Fe els Like Ġ= Ġwhen Ġ( units ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠUnits . STANDARD Ġ-> Ġtemp Fe els Like . round ToInt (). toString () Ġ+ Ġ" ĠK " ĊĠĠĠĠĠĠĠĠĠĠĠ ĠUnits . METRIC Ġ-> Ġ( temp Fe els Like Ġ- Ġ 2 7 3 . 1 5 ). round ToInt (). toString () Ġ+ Ġ" ĠÂ º C " ĊĠĠĠĠĠĠĠĠĠĠĠ ĠUnits . IMP ERIAL Ġ-> Ġ(( temp Fe els Like Ġ- Ġ 2 7 3 . 1 5 ) Ġ* Ġ 9 Ġ/ Ġ 5 Ġ+ Ġ 3 2 ). round ToInt () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. toString () Ġ+ Ġ" ĠÂ º F " ĊĠĠĠĠĠĠĠ Ġ}, ĊĠĠĠĠĠĠĠ Ġtime Zone Ġ= Ġtime Zone , ĊĠĠĠĠĠĠĠ Ġvisibility Ġ= Ġwhen Ġ( units ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠUnits . STANDARD Ġ-> Ġ"$ visibility Ġms " ĊĠĠĠĠĠĠĠĠĠĠĠ ĠUnits . METRIC Ġ-> Ġ( visibility Ġ/ Ġ 1 0 0 0 ). toString () Ġ+ Ġ" Ġkm / s " ĊĠĠĠĠĠĠĠĠĠĠĠ ĠUnits . IMP ERIAL Ġ-> Ġ( visibility Ġ/ Ġ 1 6 0 9 ). toString () Ġ+ Ġ" Ġmi / s " ĊĠĠĠĠĠĠĠ Ġ}, ĊĠĠĠĠĠĠĠ Ġwind Degrees Ġ= Ġwind Degrees , ĊĠĠĠĠĠĠĠ Ġwind Degrees Text Ġ= Ġwhen Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġwind Degrees Ġ<= Ġ 1 1 Ġ-> Ġ" N " ĊĠĠĠĠĠĠĠĠĠĠĠ Ġwind Degrees Ġ<= Ġ 3 3 Ġ-> Ġ" N NE " ĊĠĠĠĠĠĠĠĠĠĠĠ Ġwind Degrees Ġ<= Ġ 5 6 Ġ-> Ġ" NE " ĊĠĠĠĠĠĠĠĠĠĠĠ Ġwind Degrees Ġ<= Ġ 7 8 Ġ-> Ġ" ENE " ĊĠĠĠĠĠĠĠĠĠĠĠ Ġwind Degrees Ġ<= Ġ 1 0 1 Ġ-> Ġ" E " ĊĠĠĠĠĠĠĠĠĠĠĠ Ġwind Degrees Ġ<= Ġ 1 2 3 Ġ-> Ġ" E SE " ĊĠĠĠĠĠĠĠĠĠĠĠ Ġwind Degrees Ġ<= Ġ 1 4 6 Ġ-> Ġ" SE " ĊĠĠĠĠĠĠĠĠĠĠĠ Ġwind Degrees Ġ<= Ġ 1 6 8 Ġ-> Ġ" SSE " ĊĠĠĠĠĠĠĠĠĠĠĠ Ġwind Degrees Ġ<= Ġ 1 9 1 Ġ-> Ġ" S " ĊĠĠĠĠĠĠĠĠĠĠĠ Ġwind Degrees Ġ<= Ġ 2 1 3 Ġ-> Ġ" SS W " ĊĠĠĠĠĠĠĠĠĠĠĠ Ġwind Degrees Ġ<= Ġ 2 3 6 Ġ-> Ġ" SW " ĊĠĠĠĠĠĠĠĠĠĠĠ Ġwind Degrees Ġ<= Ġ 2 5 8 Ġ-> Ġ" WS W " ĊĠĠĠĠĠĠĠĠĠĠĠ Ġwind Degrees Ġ<= Ġ 2 8 1 Ġ-> Ġ" W " ĊĠĠĠĠĠĠĠĠĠĠĠ Ġwind Degrees Ġ<= Ġ 3 0 3 Ġ-> Ġ" WN W " ĊĠĠĠĠĠĠĠĠĠĠĠ Ġwind Degrees Ġ<= Ġ 3 2 6 Ġ-> Ġ" NW " ĊĠĠĠĠĠĠĠĠĠĠĠ Ġwind Degrees Ġ<= Ġ 3 4 8 Ġ-> Ġ" NN W " ĊĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġ-> Ġ" N " ĊĠĠĠĠĠĠĠ Ġ}, ĊĠĠĠĠĠĠĠ Ġwind Speed Ġ= Ġwhen Ġ( units ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠUnits . STANDARD Ġ-> Ġwind Speed . round ToInt (). toString () Ġ+ Ġ" Ġms " ĊĠĠĠĠĠĠĠĠĠĠĠ ĠUnits . METRIC Ġ-> Ġ( wind Speed Ġ* Ġ 3 . 6 ). round ToInt (). toString () Ġ+ Ġ" Ġk mh " ĊĠĠĠĠĠĠĠĠĠĠĠ ĠUnits . IMP ERIAL Ġ-> Ġ( wind Speed Ġ* Ġ 2 . 2 3 7 ). round ToInt (). toString () Ġ+ Ġ" Ġmp h " ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ) Ċ }