package Ġio . horizontal systems . bitcoin core . network . messages Ċ Ċ import Ġio . horizontal systems . bitcoin core . io . Bitcoin Input Mark able Ċ import Ġio . horizontal systems . bitcoin core . io . Bitcoin Output Ċ Ċ class ĠP ong Message ( val Ġnonce : ĠLong ) Ġ: ĠI Message Ġ{ ĊĠĠĠ Ġoverride Ġfun ĠtoString (): ĠString Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġ" P ong Message ( nonce =$ nonce )" ĊĠĠĠ Ġ} Ċ } Ċ Ċ class ĠP ong Message Parser Ġ: ĠI Message Parser Ġ{ ĊĠĠĠ Ġoverride Ġval Ġcommand : ĠString Ġ= Ġ" p ong " ĊĊĠĠĠ Ġoverride Ġfun Ġparse Message ( input : ĠBitcoin Input Mark able ): ĠI Message Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠP ong Message ( input . read Long ()) ĊĠĠĠ Ġ} Ċ } Ċ Ċ class ĠP ong Message Serializer Ġ: ĠI Message Serializer Ġ{ ĊĠĠĠ Ġoverride Ġval Ġcommand : ĠString Ġ= Ġ" p ong " ĊĊĠĠĠ Ġoverride Ġfun Ġserialize ( message : ĠI Message ): ĠByteArray ? Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( message Ġ! is ĠP ong Message ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġnull ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġreturn ĠBitcoin Output () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. write Long ( message . nonce ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. toByteArray () ĊĠĠĠ Ġ} Ċ } Ċ