/** Ċ Ġ* ĠCopyright Ġ( c ) Ġ 2 0 2 0 ĠE mer ald Pay , ĠInc Ċ Ġ* Ċ Ġ* ĠLicensed Ġunder Ġthe ĠApache ĠLicense , ĠVersion Ġ 2 . 0 Ġ( the Ġ" License "); Ċ Ġ* Ġyou Ġmay Ġnot Ġuse Ġthis Ġfile Ġexcept Ġin Ġcompliance Ġwith Ġthe ĠLicense . Ċ Ġ* ĠYou Ġmay Ġobtain Ġa Ġcopy Ġof Ġthe ĠLicense Ġat Ċ Ġ* Ċ Ġ* ĠĠĠĠĠĠĠ Ġhttp :// www . apache . org / licenses / LICENSE - 2 . 0 Ċ Ġ* Ċ Ġ* ĠUnless Ġrequired Ġby Ġapplicable Ġlaw Ġor Ġagreed Ġto Ġin Ġwriting , Ġsoftware Ċ Ġ* Ġdistributed Ġunder Ġthe ĠLicense Ġis Ġdistributed Ġon Ġan Ġ" AS ĠIS " ĠBASIS , Ċ Ġ* ĠWITHOUT ĠWARRANTIES ĠOR ĠCONDITIONS ĠOF ĠANY ĠKIND , Ġeither Ġexpress Ġor Ġimplied . Ċ Ġ* ĠSee Ġthe ĠLicense Ġfor Ġthe Ġspecific Ġlanguage Ġgoverning Ġpermissions Ġand Ċ Ġ* Ġlimitations Ġunder Ġthe ĠLicense . Ċ Ġ*/ Ċ package Ġio . em eral dp ay . d sh ack le . upstream . bitcoin Ċ Ċ import Ġio . em eral dp ay . d sh ack le . upstream . Head Ċ import Ġio . em eral dp ay . d sh ack le . upstream . bitcoin . data . E spl ora Un spent Ċ import Ġio . em eral dp ay . d sh ack le . upstream . bitcoin . data . Simple Un spent Ċ import Ġorg . bitcoin j . core . Address Ċ import Ġorg . slf 4 j . LoggerFactory Ċ import Ġreactor . core . publisher . Mono Ċ import Ġjava . util . function . Function Ċ Ċ class ĠE spl ora Un spent Reader ( ĊĠĠĠĠĠĠĠ Ġprivate Ġval Ġes pl ora Client : ĠE spl ora Client , ĊĠĠĠĠĠĠĠ Ġprivate Ġval Ġhead : ĠHead Ċ ) Ġ: ĠUn spent Reader Ġ{ ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġprivate Ġval Ġlog Ġ= ĠLoggerFactory . getLogger ( E spl ora Un spent Reader :: class . java ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġval Ġconvert : Ġ( T : ĠE spl ora Un spent ) Ġ-> ĠSimple Un spent Ġ= Ġ{ Ġbase Ġ-> ĊĠĠĠĠĠĠĠ ĠSimple Un spent ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbase . tx id , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbase . v out , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbase . value , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġhead . getCurrent Height ()?. let Ġ{ Ġbase . height Ġ- Ġit Ġ} Ġ?: Ġ 0 ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġval Ġconvert All : ĠFunction < List < E spl ora Un spent >, ĠList < Simple Un spent >> Ġ= ĠFunction Ġ{ Ġbase Ġ-> ĊĠĠĠĠĠĠĠ Ġbase . map ( convert ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġread ( key : ĠAddress ): ĠMono < List < Simple Un spent >> Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġes pl ora Client . get U tx o ( key ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. map ( convert All ) ĊĠĠĠ Ġ} Ċ Ċ }