package Ġbit shares kit . models Ċ Ċ import Ġbit shares kit . extensions .* Ċ import Ġbit shares kit . objects . Graph ene Serializable Ċ import Ġkotlinx . io . core . build Packet Ċ import Ġkotlinx . io . core . read Bytes Ċ import Ġorg . java _ json . JSONArray Ċ import Ġorg . java _ json . JSONObject Ċ Ċ @ Suppress (" EXPERIMENT AL _ API _ USAGE ") Ċ data Ġclass ĠChain Parameters ( ĊĠĠĠ Ġval Ġcurrent Fee : ĠF ee Schedule , ĊĠĠĠ Ġval Ġblock Interval : ĠU Byte , ĊĠĠĠ Ġval Ġmaintenance Interval : ĠUInt , ĊĠĠĠ Ġval Ġmaintenance Skip Slots : ĠU Byte , ĊĠĠĠ Ġval Ġcommit tee Proposal Review Period : ĠUInt , ĊĠĠĠ Ġval Ġmaximum Transaction Size : ĠUInt , ĊĠĠĠ Ġval Ġmaximum BlockSize : ĠUInt , ĊĠĠĠ Ġval Ġmaximum Time Until Expiration : ĠUInt , ĊĠĠĠ Ġval Ġmaximum Proposal Lifetime : ĠUInt , ĊĠĠĠ Ġval Ġmaximum Asset Whitelist Author ities : ĠU Byte , ĊĠĠĠ Ġval Ġmaximum Asset Feed Publish ers : ĠU Byte , ĊĠĠĠ Ġval Ġmaximum W itness Count : ĠU Short , ĊĠĠĠ Ġval Ġmaximum Commit tee Count : ĠU Short , ĊĠĠĠ Ġval Ġmaximum Authority Membership : ĠU Short , ĊĠĠĠ Ġval Ġreserve Percent Of Fee : ĠU Short , ĊĠĠĠ Ġval Ġnetwork Percent Of Fee : ĠU Short , ĊĠĠĠ Ġval Ġlifetime Ref errer Percent Of Fee : ĠU Short , ĊĠĠĠ Ġval Ġcash back V esting Period Seconds : ĠUInt , ĊĠĠĠ Ġval Ġcash back V esting Threshold : ĠLong , ĊĠĠĠ Ġval Ġcount Non Member Votes : ĠBoolean , ĊĠĠĠ Ġval Ġallow Non Member Wh itel ists : ĠBoolean , ĊĠĠĠ Ġval Ġw itness Pay Per Block : ĠLong , ĊĠĠĠ Ġval Ġworker Budget Per Day : ĠLong , ĊĠĠĠ Ġval Ġmax Predicate Opcode : ĠU Short , ĊĠĠĠ Ġval Ġfee Liquid ation Threshold : ĠLong , ĊĠĠĠ Ġval Ġaccounts Per Fee Scale : ĠU Short , ĊĠĠĠ Ġval Ġaccount Fee Scale Bit shifts : ĠU Byte , ĊĠĠĠ Ġval Ġmax Authority Depth : ĠU Byte Ċ ): ĠGraph ene Serializable Ġ{ ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĊĠĠĠĠĠĠĠ Ġconst Ġval ĠKEY _ CURRENT _ F EE Ġ= Ġ" current _ fee " ĊĠĠĠĠĠĠĠ Ġconst Ġval ĠKEY _ BLOCK _ INTERVAL Ġ= Ġ" block _ interval " ĊĠĠĠĠĠĠĠ Ġconst Ġval ĠKEY _ MA INTEN ANCE _ INTERVAL Ġ= Ġ" maintenance _ interval " ĊĠĠĠĠĠĠĠ Ġconst Ġval ĠKEY _ MA INTEN ANCE _ SKIP _ SLOT S Ġ= Ġ" maintenance _ skip _ slots " ĊĠĠĠĠĠĠĠ Ġconst Ġval ĠKEY _ COMMIT TE E _ PRO POS AL _ RE VIEW _ PERIOD Ġ= Ġ" committee _ proposal _ review _ period " ĊĠĠĠĠĠĠĠ Ġconst Ġval ĠKEY _ MAXIMUM _ TRANSACTION _ SIZE Ġ= Ġ" maximum _ transaction _ size " ĊĠĠĠĠĠĠĠ Ġconst Ġval ĠKEY _ MAXIMUM _ BLOCK _ SIZE Ġ= Ġ" maximum _ block _ size " ĊĠĠĠĠĠĠĠ Ġconst Ġval ĠKEY _ MAXIMUM _ TIME _ UNT IL _ EXPI RATION Ġ= Ġ" maximum _ time _ until _ expiration " ĊĠĠĠĠĠĠĠ Ġconst Ġval ĠKEY _ MAXIMUM _ PRO POS AL _ LI F ETIME Ġ= Ġ" maximum _ proposal _ lifetime " ĊĠĠĠĠĠĠĠ Ġconst Ġval ĠKEY _ MAXIMUM _ AS SET _ WHITE LIST _ AUTHOR ITIES Ġ= Ġ" maximum _ asset _ whitelist _ author it " ĊĠĠĠĠĠĠĠ Ġconst Ġval ĠKEY _ MAXIMUM _ AS SET _ FEED _ PUBL IS HER S Ġ= Ġ" maximum _ asset _ feed _ publish ers " ĊĠĠĠĠĠĠĠ Ġconst Ġval ĠKEY _ MAXIMUM _ W ITNESS _ COUNT Ġ= Ġ" maximum _ w itness _ count " ĊĠĠĠĠĠĠĠ Ġconst Ġval ĠKEY _ MAXIMUM _ COMMIT TE E _ COUNT Ġ= Ġ" maximum _ committee _ count " ĊĠĠĠĠĠĠĠ Ġconst Ġval ĠKEY _ MAXIMUM _ AUTH ORITY _ MEMBER SHIP Ġ= Ġ" maximum _ authority _ membership " ĊĠĠĠĠĠĠĠ Ġconst Ġval ĠKEY _ RESER VE _ PERCENT _ OF _ F EE Ġ= Ġ" reserve _ percent _ of _ fee " ĊĠĠĠĠĠĠĠ Ġconst Ġval ĠKEY _ NETWORK _ PERCENT _ OF _ F EE Ġ= Ġ" network _ percent _ of _ fee " ĊĠĠĠĠĠĠĠ Ġconst Ġval ĠKEY _ LI F ETIME _ REF ERR ER _ PERCENT _ OF _ F EE Ġ= Ġ" lifetime _ referrer _ percent _ of _ fee " ĊĠĠĠĠĠĠĠ Ġconst Ġval ĠKEY _ C ASH BACK _ VE ST ING _ PERIOD _ SECONDS Ġ= Ġ" cash back _ v esting _ period _ seconds " ĊĠĠĠĠĠĠĠ Ġconst Ġval ĠKEY _ C ASH BACK _ VE ST ING _ THRESHOLD Ġ= Ġ" cash back _ v esting _ threshold " ĊĠĠĠĠĠĠĠ Ġconst Ġval ĠKEY _ COUNT _ NON _ MEMBER _ V OT ES Ġ= Ġ" count _ non _ member _ votes " ĊĠĠĠĠĠĠĠ Ġconst Ġval ĠKEY _ ALLOW _ NON _ MEMBER _ WHITE LIST S Ġ= Ġ" allow _ non _ member _ wh itel ists " ĊĠĠĠĠĠĠĠ Ġconst Ġval ĠKEY _ W ITNESS _ PAY _ PER _ BLOCK Ġ= Ġ" w itness _ pay _ per _ block " ĊĠĠĠĠĠĠĠ Ġconst Ġval ĠKEY _ WORK ER _ BU D GET _ PER _ DAY Ġ= Ġ" worker _ budget _ per _ day " ĊĠĠĠĠĠĠĠ Ġconst Ġval ĠKEY _ MAX _ PRE D ICATE _ OPCODE Ġ= Ġ" max _ predicate _ opcode " ĊĠĠĠĠĠĠĠ Ġconst Ġval ĠKEY _ F EE _ LI Q UID ATION _ THRESHOLD Ġ= Ġ" fee _ liquid ation _ threshold " ĊĠĠĠĠĠĠĠ Ġconst Ġval ĠKEY _ ACCOUNT S _ PER _ F EE _ SCALE Ġ= Ġ" accounts _ per _ fee _ scale " ĊĠĠĠĠĠĠĠ Ġconst Ġval ĠKEY _ ACCOUNT _ F EE _ SCALE _ BIT SH IF TS Ġ= Ġ" account _ fee _ scale _ bit shifts " ĊĠĠĠĠĠĠĠ Ġconst Ġval ĠKEY _ MAX _ AUTH ORITY _ DEPTH Ġ= Ġ" max _ authority _ depth " ĊĊĊĠĠĠĠĠĠĠ Ġfun Ġfrom Json ( raw Json : ĠJSONObject , Ġraw Json Result : ĠJSONArray Ġ= ĠJSONArray ()): ĠChain Parameters Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĠChain Parameters ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġraw Json . opt Item ( KEY _ CURRENT _ F EE ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġraw Json . opt U Byte ( KEY _ BLOCK _ INTERVAL ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġraw Json . opt UInt ( KEY _ MA INTEN ANCE _ INTERVAL ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġraw Json . opt U Byte ( KEY _ MA INTEN ANCE _ SKIP _ SLOT S ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġraw Json . opt UInt ( KEY _ COMMIT TE E _ PRO POS AL _ RE VIEW _ PERIOD ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġraw Json . opt UInt ( KEY _ MAXIMUM _ TRANSACTION _ SIZE ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġraw Json . opt UInt ( KEY _ MAXIMUM _ BLOCK _ SIZE ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġraw Json . opt UInt ( KEY _ MAXIMUM _ TIME _ UNT IL _ EXPI RATION ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġraw Json . opt UInt ( KEY _ MAXIMUM _ PRO POS AL _ LI F ETIME ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġraw Json . opt U Byte ( KEY _ MAXIMUM _ AS SET _ WHITE LIST _ AUTHOR ITIES ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġraw Json . opt U Byte ( KEY _ MAXIMUM _ AS SET _ FEED _ PUBL IS HER S ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġraw Json . opt U Short ( KEY _ MAXIMUM _ W ITNESS _ COUNT ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġraw Json . opt U Short ( KEY _ MAXIMUM _ COMMIT TE E _ COUNT ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġraw Json . opt U Short ( KEY _ MAXIMUM _ AUTH ORITY _ MEMBER SHIP ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġraw Json . opt U Short ( KEY _ RESER VE _ PERCENT _ OF _ F EE ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġraw Json . opt U Short ( KEY _ NETWORK _ PERCENT _ OF _ F EE ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġraw Json . opt U Short ( KEY _ LI F ETIME _ REF ERR ER _ PERCENT _ OF _ F EE ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġraw Json . opt UInt ( KEY _ C ASH BACK _ VE ST ING _ PERIOD _ SECONDS ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġraw Json . opt Long ( KEY _ C ASH BACK _ VE ST ING _ THRESHOLD ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġraw Json . opt Boolean ( KEY _ COUNT _ NON _ MEMBER _ V OT ES ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġraw Json . opt Boolean ( KEY _ ALLOW _ NON _ MEMBER _ WHITE LIST S ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġraw Json . opt Long ( KEY _ W ITNESS _ PAY _ PER _ BLOCK ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġraw Json . opt Long ( KEY _ WORK ER _ BU D GET _ PER _ DAY ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġraw Json . opt U Short ( KEY _ MAX _ PRE D ICATE _ OPCODE ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġraw Json . opt Long ( KEY _ F EE _ LI Q UID ATION _ THRESHOLD ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġraw Json . opt U Short ( KEY _ ACCOUNT S _ PER _ F EE _ SCALE ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġraw Json . opt U Byte ( KEY _ ACCOUNT _ F EE _ SCALE _ BIT SH IF TS ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġraw Json . opt U Byte ( KEY _ MAX _ AUTH ORITY _ DEPTH ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĊĠĠĠ Ġoverride Ġfun Ġto ByteArray (): ĠByteArray Ġ= Ġbuild Packet Ġ{ ĊĠĠĠ Ġ}. read Bytes () ĊĊĠĠĠ Ġoverride Ġfun ĠtoJson Element (): ĠJSONObject Ġ= Ġbuild JsonObject Ġ{ ĊĠĠĠ Ġ} Ċ Ċ }