package Ġcom . sas ak ir ione . main . pokemon . clone .` object `. value Ċ Ċ import Ġjava . util . Arrays Ċ import Ġjava . lang . IllegalArgumentException Ċ Ċ class ĠField ( fieldName : ĠString ) Ġ{ ĊĠĠĠ Ġprivate Ġval Ġfield : ĠString ĊĠĠĠ Ġprivate Ġvar Ġremaining Turn : ĠInt ĊĠĠĠ Ġval Ġis Dis abling Priority : ĠBoolean ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġthis . field Ġ== Ġ" ãĤµ ãĤ¤ ãĤ³ ãĥķãĤ£ ãĥ¼ãĥ« ãĥī " ĊĠĠĠ Ġval Ġis End Field : ĠBoolean ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġremaining Turn Ġ== Ġ 0 ĊĠĠĠ Ġval Ġis P sy ch of ield : ĠBoolean ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġthis . field Ġ== Ġ" ãĤµ ãĤ¤ ãĤ³ ãĥķãĤ£ ãĥ¼ãĥ« ãĥī " ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġprivate Ġval Ġfield List Ġ= ĠarrayOf (" ãĤ¨ ãĥ¬ ãĤŃ ãĥķãĤ£ ãĥ¼ãĥ« ãĥī ", Ġ" ãĤ°ãĥ© ãĤ¹ ãĥķãĤ£ ãĥ¼ãĥ« ãĥī ", Ġ" ãĤµ ãĤ¤ ãĤ³ ãĥķãĤ£ ãĥ¼ãĥ« ãĥī ", Ġ" ãĥŁ ãĤ¹ãĥĪ ãĥķãĤ£ ãĥ¼ãĥ« ãĥī ") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġinit Ġ{ ĊĠĠĠĠĠĠĠ Ġfield Check ( fieldName ) ĊĠĠĠĠĠĠĠ Ġfield Ġ= ĠfieldName ĊĠĠĠĠĠĠĠ Ġremaining Turn Ġ= Ġ 5 ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġfield Check ( fieldName : ĠString ) Ġ{ ĊĠĠĠĠĠĠĠ Ġrequire ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠlistOf (* field List ). contains ( fieldName ) ĊĠĠĠĠĠĠĠ Ġ) Ġ{ Ġ" åŃĺåľ¨ ãģĹãģªãģĦ ãĥķãĤ£ ãĥ¼ãĥ« ãĥī ãģ§ãģĻ " Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġforward Turn () Ġ{ ĊĠĠĠĠĠĠĠ Ġremaining Turn Ġ-= Ġ 1 ĊĠĠĠ Ġ} Ċ }