package Ġcom . hand truth . mc . p aket . field Ċ Ċ import Ġcom . hand truth . mc . p aket . util . DOUBLE _ SIZE Ċ import Ġcom . hand truth . mc . p aket . codec . Double Codec Ċ import Ġio . ktor . utils . io . core .* Ċ import Ġkotlin . reflect . K Property Ċ Ċ public Ġclass ĠDouble Field ( public Ġvar Ġdouble : ĠDouble Ġ= Ġ. 0 ) Ġ: ĠAbstract Field < Double >() Ġ{ ĊĠĠĠ Ġoverride Ġval Ġsize : ĠInt Ġget () Ġ= ĠDOUBLE _ SIZE ĊĊĠĠĠ Ġoverride Ġvar Ġvalue : ĠDouble Ġby Ġthis :: double ĊĊĠĠĠ Ġoverride Ġval Ġcodec : ĠDouble Codec Ġget () Ġ= ĠDouble Codec ĊĊĠĠĠ Ġoverride Ġfun Ġread ( input : ĠInput ) Ġ{ ĊĠĠĠĠĠĠĠ Ġdouble Ġ= Ġinput . read Double () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġwrite ( output : ĠOutput ) Ġ{ ĊĠĠĠĠĠĠĠ Ġoutput . write Double ( double ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Suppress (" OVERRIDE _ BY _ INLINE ", Ġ" NOTH ING _ TO _ INLINE ") ĊĠĠĠ Ġpublic Ġoverride Ġinline Ġoperator Ġfun ĠgetValue ( this Ref : ĠAny ?, Ġproperty : ĠK Property < *> ): ĠDouble Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġdouble ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Suppress (" OVERRIDE _ BY _ INLINE ", Ġ" NOTH ING _ TO _ INLINE ") ĊĠĠĠ Ġpublic Ġoverride Ġinline Ġoperator Ġfun ĠsetValue ( this Ref : ĠAny ?, Ġproperty : ĠK Property <* >, Ġvalue : ĠDouble ) Ġ{ ĊĠĠĠĠĠĠĠ Ġthis . double Ġ= Ġvalue ĊĠĠĠ Ġ} Ċ } Ċ