logo DERO HE BlockChain Explorer(v1) Mainnet

Tx hash: c3dae6ff9be9783ee40f647d2705c7f49be825ed6469676bdfe1bcba30f032e9 Type SC

Block: e1d94e5e7785b0dd81d773a3519082da3217fb190b1e101d958be33ba8474563 (VALID)
SCID current reserves
SCID Amount(in atomic units)
0000000000000000000000000000000000000000000000000000000000000000 0
SCID string variables
key value
C 46756e6374696f6e20496e697469616c697a655072697661746528292055696e7436340a313020494620696e69742829203d3d2030205448454e20474f544f2033300a32302052455455524e20310a33302053544f524528227661725f6865616465725f6e616d65222c20227472616e73616374696f6e732e6a7322290a33312053544f524528227661725f6865616465725f6465736372697074696f6e222c20227472616e73616374696f6e732e6a7322290a33322053544f524528227661725f6865616465725f69636f6e222c202222290a33332053544f524528226455524c222c202222290a33342053544f52452822646f6354797065222c20226170706c69636174696f6e2f782d6a61766173637269707422290a33352053544f52452822737562446972222c20222f22290a33362053544f5245282266696c65436865636b43222c20223031323234623236663861333865666265323030646532646264353138313334303562356566636165646562323963313064393836363761623936376430656122290a33372053544f5245282266696c65436865636b53222c20223037653361333766383335663838373633623934343530363939363333303236656361626435626533326237373462376662613534323365393936313734323222290a3130302052455455524e20300a456e642046756e6374696f6e0a0a46756e6374696f6e20696e697428292055696e7436340a31302049462045584953545328226f776e65722229203d3d2030205448454e20474f544f2033300a32302052455455524e20310a33302053544f524528226f776e6572222c20616464726573732829290a35302053544f52452822646f6356657273696f6e222c2022312e302e3022290a36302053544f5245282268617368222c204845582854584944282929290a37302053544f524528226c696b6573222c2030290a38302053544f524528226469736c696b6573222c2030290a3130302052455455524e20300a456e642046756e6374696f6e0a0a46756e6374696f6e2061646472657373282920537472696e670a31302044494d207320617320537472696e670a3230204c45542073203d205349474e455228290a33302049462049535f414444524553535f56414c4944287329205448454e20474f544f2035300a34302052455455524e2022616e6f6e220a35302052455455524e20414444524553535f535452494e472873290a456e642046756e6374696f6e0a0a46756e6374696f6e205261746528722055696e743634292055696e7436340a31302044494d206164647220617320537472696e670a3135204c45542061646472203d206164647265737328290a31362049462072203c2031303020262620455849535453286164647229203d3d2030202626206164647220213d2022616e6f6e22205448454e20474f544f2033300a32302052455455524e20310a33302053544f524528616464722c2022222b722b225f222b424c4f434b5f4845494748542829290a34302049462072203c203530205448454e20474f544f2037300a35302053544f524528226c696b6573222c204c4f414428226c696b657322292b31290a36302052455455524e20300a37302053544f524528226469736c696b6573222c204c4f414428226469736c696b657322292b31290a3130302052455455524e20300a456e642046756e6374696f6e0a0a2f2a0a2f2f204445524f204578706c6f7265722076322e30202d205472616e73616374696f6e73204d6f64756c650a636f6e7374206d6f64756c65203d202866756e6374696f6e2829207b0a2775736520737472696374273b0a7661722044203d2077696e646f772e4465726f4578706c6f7265722c2053203d20442e73746174652c2055203d20442e7574696c732c207569203d20442e75692c2052203d20442e726f757465722c204d203d20442e6d6f64756c65733b0a766172205458203d207b205052454d494e453a20275052454d494e45272c20524547495354524154494f4e3a2027524547495354524154494f4e272c20434f494e424153453a2027434f494e42415345272c204e4f524d414c3a20274e4f524d414c272c204255524e5f54583a20274255524e5f5458272c2053435f54583a202753435f545827207d3b0a7661722054203d207b20706f6f6c496e74657276616c3a206e756c6c2c2063616368653a206e6577204d617028292c206d617843616368653a203530207d3b0a0a66756e6374696f6e20696e69742829207b0a202077696e646f772e6164644576656e744c697374656e657228276578706c6f7265723a766965774368616e6765272c2068616e646c6556696577293b0a202077696e646f772e6164644576656e744c697374656e657228276578706c6f7265723a636f6e6e6563746564272c2066756e6374696f6e2829207b2069662028532e63757272656e7456696577203d3d3d202764617368626f6172642729206c6f61644d656d706f6f6c28293b207d293b0a7d0a0a66756e6374696f6e2068616e646c6556696577286529207b0a20207661722076203d20652e64657461696c2e766965772c2070203d20652e64657461696c2e706172616d3b0a20206966202876203d3d3d2027706f6f6c27292072656e646572506f6f6c5669657728293b0a2020656c7365206966202876203d3d3d2027747844657461696c272026262070292072656e646572547844657461696c2870293b0a2020656c7365206966202876203d3d3d202764617368626f6172642729206c6f61644d656d706f6f6c28293b0a2020696620287620213d3d2027706f6f6c2720262620542e706f6f6c496e74657276616c29207b20636c656172496e74657276616c28542e706f6f6c496e74657276616c293b20542e706f6f6c496e74657276616c203d206e756c6c3b207d0a7d0a0a66756e6374696f6e206465746563745479706528747829207b0a202069662028217478292072657475726e2027554e4b4e4f574e273b0a20206966202874782e7472616e73616374696f6e5f74797065292072657475726e2074782e7472616e73616374696f6e5f747970652e746f55707065724361736528293b0a20206966202874782e636f696e62617365292072657475726e2054582e434f494e424153453b0a20206966202874782e73635f64617461207c7c2074782e736364617461292072657475726e2054582e53435f54583b0a20206966202874782e6275726e5f76616c75652026262074782e6275726e5f76616c7565203e2030292072657475726e2054582e4255524e5f54583b0a202072657475726e2054582e4e4f524d414c3b0a7d0a0a66756e6374696f6e20747970654261646765287429207b0a20206966202874203d3d3d2054582e434f494e42415345292072657475726e202762616467652d6f6b273b0a20206966202874203d3d3d2054582e53435f5458292072657475726e202762616467652d6c697665273b0a20206966202874203d3d3d2054582e4255524e5f5458292072657475726e202762616467652d657272273b0a20206966202874203d3d3d2054582e524547495354524154494f4e292072657475726e202762616467652d6e6577273b0a202072657475726e202762616467652d70656e64696e67273b0a7d0a0a6173796e632066756e6374696f6e206c6f61644d656d706f6f6c2829207b0a202076617220656c203d20646f63756d656e742e676574456c656d656e744279496428276d656d706f6f6c2d6c69737427292c206261646765203d20646f63756d656e742e676574456c656d656e74427949642827706f6f6c2d626164676527293b0a20206966202821656c292072657475726e3b0a2020747279207b0a2020202076617220636f6e6e203d204d2e6765742827636f6e6e656374697669747927293b0a202020206966202821636f6e6e29207468726f77206e6577204572726f7228274e6f20636f6e6e656374697669747927293b0a2020202076617220706f6f6c203d20617761697420636f6e6e2e6765745478506f6f6c28292c20747873203d20706f6f6c2e747873207c7c205b5d3b0a20202020696620286261646765292062616467652e74657874436f6e74656e74203d207478732e6c656e677468202b20272050454e44494e47273b0a20202020696620287478732e6c656e677468203d3d3d203029207b20656c2e696e6e657248544d4c203d20273c64697620636c6173733d22656d7074792d7374617465223e3c64697620636c6173733d22656d7074792d69636f6e223e2a3c2f6469763e3c703e4d656d706f6f6c20697320656d707479202d20616c6c207472616e73616374696f6e7320636f6e6669726d65643c2f703e3c2f6469763e273b2072657475726e3b207d0a20202020656c2e696e6e657248544d4c203d2072656e646572506f6f6c4c697374287478732e736c69636528302c20313029293b0a20207d20636174636820286529207b7d0a7d0a0a6173796e632066756e6374696f6e2072656e646572506f6f6c566965772829207b0a202076617220656c203d20646f63756d656e742e676574456c656d656e74427949642827766965772d706f6f6c27293b0a20206966202821656c292072657475726e3b0a2020656c2e696e6e657248544d4c203d20273c64697620636c6173733d2273656374696f6e2d63617264223e27202b2075692e73656374696f6e486561646572287b2069636f6e3a20275b545d272c207469746c653a20275472616e73616374696f6e20506f6f6c20284d656d706f6f6c29272c2062616467653a207b20746578743a20274c495645272c20636c6173733a202762616467652d6c69766527207d207d29202b0a20202020273c64697620636c6173733d2273656374696f6e2d636f6e74656e74223e3c6469762069643d22706f6f6c2d66756c6c2d6c697374223e3c64697620636c6173733d226c6f6164696e672d7374617465223e3c64697620636c6173733d226c6f6164696e672d7370696e6e6572223e3c2f6469763e3c7370616e3e4c6f6164696e67206d656d706f6f6c2e2e2e3c2f7370616e3e3c2f6469763e3c2f6469763e3c2f6469763e3c2f6469763e273b0a20206177616974206c6f616446756c6c506f6f6c28293b0a2020542e706f6f6c496e74657276616c203d20736574496e74657276616c286c6f616446756c6c506f6f6c2c203130303030293b0a7d0a0a6173796e632066756e6374696f6e206c6f616446756c6c506f6f6c2829207b0a202076617220656c203d20646f63756d656e742e676574456c656d656e74427949642827706f6f6c2d66756c6c2d6c69737427293b0a20206966202821656c292072657475726e3b0a2020747279207b0a2020202076617220636f6e6e203d204d2e6765742827636f6e6e656374697669747927292c20706f6f6c203d20617761697420636f6e6e2e6765745478506f6f6c28292c20747873203d20706f6f6c2e747873207c7c205b5d3b0a20202020696620287478732e6c656e677468203d3d3d203029207b20656c2e696e6e657248544d4c203d20273c64697620636c6173733d22656d7074792d7374617465223e3c64697620636c6173733d22656d7074792d69636f6e223e2a3c2f6469763e3c703e4d656d706f6f6c20697320656d7074793c2f703e3c7020636c6173733d22746578742d6d75746564223e416c6c207472616e73616374696f6e732068617665206265656e20636f6e6669726d65643c2f703e3c2f6469763e273b2072657475726e3b207d0a20202020656c2e696e6e657248544d4c203d20273c64697620636c6173733d22706f6f6c2d7374617473223e3c7370616e20636c6173733d22706f6f6c2d73746174223e3c7374726f6e673e27202b207478732e6c656e677468202b20273c2f7374726f6e673e2070656e64696e67207472616e73616374696f6e733c2f7370616e3e3c2f6469763e27202b2072656e646572506f6f6c4c69737428747873293b0a20207d20636174636820286529207b20656c2e696e6e657248544d4c203d20273c64697620636c6173733d22656d7074792d7374617465223e3c703e4661696c656420746f206c6f6164206d656d706f6f6c3c2f703e3c2f6469763e273b207d0a7d0a0a66756e6374696f6e2072656e646572506f6f6c4c6973742874787329207b0a202072657475726e20273c64697620636c6173733d2274782d6c697374223e27202b207478732e6d61702866756e6374696f6e286829207b0a2020202072657475726e20273c64697620636c6173733d2274782d6974656d22206f6e636c69636b3d22766965775478285c2727202b2068202b20275c2729223e3c64697620636c6173733d2274782d6974656d2d6c656674223e3c7370616e20636c6173733d2274782d747970652062616467652062616467652d70656e64696e67223e50454e44494e473c2f7370616e3e3c7370616e20636c6173733d2274782d68617368206d6f6e6f223e27202b20552e7472756e634861736828682c2031362c20313229202b20273c2f7370616e3e3c2f6469763e3c64697620636c6173733d2274782d6974656d2d7269676874223e3c7370616e20636c6173733d2274782d616374696f6e223e56696577202667743b3c2f7370616e3e3c2f6469763e3c2f6469763e273b0a20207d292e6a6f696e28272729202b20273c2f6469763e273b0a7d0a0a6173796e632066756e6374696f6e2072656e646572547844657461696c287478696429207b0a202076617220656c203d20646f63756d656e742e676574456c656d656e74427949642827766965772d747844657461696c27293b0a20206966202821656c29207b20766172206d61696e203d20646f63756d656e742e676574456c656d656e744279496428276d61696e2d636f6e74656e7427293b20656c203d20646f63756d656e742e637265617465456c656d656e74282764697627293b20656c2e6964203d2027766965772d747844657461696c273b206d61696e2e617070656e644368696c6428656c293b207d0a2020656c2e636c6173734c6973742e72656d6f7665282768696464656e27293b0a202075692e73686f774c6f6164696e6728656c2c20274c6f6164696e67207472616e73616374696f6e2e2e2e27293b0a2020747279207b0a2020202076617220636f6e6e203d204d2e6765742827636f6e6e656374697669747927292c2074783b0a2020202069662028636f6e6e2e686173456e68616e6365644665617475726573282929207478203d20617761697420636f6e6e2e6765745472616e73616374696f6e5769746852696e67732874786964293b0a20202020656c7365207478203d20617761697420636f6e6e2e6765745472616e73616374696f6e2874786964293b0a202020206966202821747829207468726f77206e6577204572726f7228275472616e73616374696f6e206e6f7420666f756e6427293b0a20202020656c2e696e6e657248544d4c203d2072656e646572547848544d4c2874782c20636f6e6e2e686173456e68616e63656446656174757265732829293b0a20207d20636174636820286529207b2075692e73686f774572726f7228656c2c20275472616e73616374696f6e204e6f7420466f756e64272c20652e6d657373616765293b207d0a7d0a0a66756e6374696f6e2072656e646572547848544d4c2874782c20656e68616e63656429207b0a20207661722074797065203d2064657465637454797065287478292c20636c73203d207479706542616467652874797065292c20636f6e66203d2074782e626c6f636b5f6865696768742026262074782e626c6f636b5f686569676874203e20303b0a202072657475726e20273c64697620636c6173733d2264657461696c2d76696577223e3c64697620636c6173733d2264657461696c2d6e6176223e3c627574746f6e20636c6173733d2262746e2062746e2d67686f737422206f6e636c69636b3d22676f4261636b2829223e266c743b204261636b3c2f627574746f6e3e3c2f6469763e27202b0a20202020273c64697620636c6173733d2273656374696f6e2d63617264223e27202b2075692e73656374696f6e486561646572287b2069636f6e3a20275b545d272c207469746c653a20275472616e73616374696f6e272c2062616467653a207b20746578743a20636f6e66203f2027434f4e4649524d454427203a202750454e44494e47272c20636c6173733a20636f6e66203f202762616467652d6f6b27203a202762616467652d70656e64696e6727207d207d29202b0a20202020273c64697620636c6173733d2273656374696f6e2d636f6e74656e74223e3c64697620636c6173733d2264657461696c2d67726964223e3c64697620636c6173733d2264657461696c2d636f6c756d6e223e3c683420636c6173733d2264657461696c2d7375627469746c65223e5472616e73616374696f6e20496e666f726d6174696f6e3c2f68343e27202b0a2020202075692e64657461696c526f77282754584944272c2074782e74786964207c7c2074782e686173682c207b206d6f6e6f3a20747275652c20636f707961626c653a2074727565207d29202b0a2020202075692e64657461696c526f77282754797065272c20273c7370616e20636c6173733d2262616467652027202b20636c73202b2027223e27202b2074797065202b20273c2f7370616e3e2729202b0a202020202874782e626c6f636b5f686569676874203f2075692e64657461696c526f772827426c6f636b20486569676874272c20552e666d744e756d2874782e626c6f636b5f6865696768742929203a20272729202b0a202020202874782e626c6f636b5f74696d657374616d70203f2075692e64657461696c526f77282754696d65272c20552e666d744c6f63616c54696d652874782e626c6f636b5f74696d657374616d702929203a20272729202b0a202020202874782e626c6f636b5f74696d657374616d70203f2075692e64657461696c526f772827416765272c20552e666d744167652874782e626c6f636b5f74696d657374616d702929203a20272729202b0a20202020273c2f6469763e3c64697620636c6173733d2264657461696c2d636f6c756d6e223e3c683420636c6173733d2264657461696c2d7375627469746c65223e5472616e73616374696f6e20446174613c2f68343e27202b0a202020202874782e73697a65203f2075692e64657461696c526f77282753697a65272c20552e666d7442797465732874782e73697a652929203a20272729202b0a202020202874782e66656520213d3d20756e646566696e6564203f2075692e64657461696c526f772827466565272c20552e666d744445524f2874782e66656529202b2027204445524f2729203a20272729202b0a202020202874782e6275726e5f76616c7565203f2075692e64657461696c526f7728274275726e272c20552e666d744445524f2874782e6275726e5f76616c756529202b2027204445524f2729203a20272729202b0a202020202874782e72696e675f73697a65203f2075692e64657461696c526f77282752696e672053697a65272c2074782e72696e675f73697a652e746f537472696e67282929203a20272729202b0a202020202874782e646573745f706f7274203f2075692e64657461696c526f7728274465737420506f7274272c2074782e646573745f706f72742e746f537472696e67282929203a20272729202b0a20202020273c2f6469763e3c2f6469763e3c2f6469763e3c2f6469763e27202b0a202020202874797065203d3d3d2054582e53435f5458203f2072656e646572534328747829203a20272729202b2072656e64657252696e672874782c20656e68616e63656429202b2072656e64657250726f6f662874782e74786964207c7c2074782e686173682c20656e68616e63656429202b20273c2f6469763e273b0a7d0a0a66756e6374696f6e2072656e646572534328747829207b0a20207661722073636964203d2074782e73636964207c7c206578747261637453434944287478292c206570203d2074782e656e747279706f696e74207c7c20657874726163744550287478293b0a2020696620282173636964292072657475726e2027273b0a202072657475726e20273c64697620636c6173733d2273656374696f6e2d63617264223e27202b2075692e73656374696f6e486561646572287b2069636f6e3a20275b53435d272c207469746c653a2027536d61727420436f6e747261637420496e746572616374696f6e27207d29202b0a20202020273c64697620636c6173733d2273656374696f6e2d636f6e74656e74223e27202b2075692e64657461696c526f77282753434944272c20736369642c207b206d6f6e6f3a20747275652c20636f707961626c653a2074727565207d29202b0a20202020286570203f2075692e64657461696c526f77282746756e6374696f6e272c20657029203a20272729202b0a202020202874782e73635f61726773203f20273c646976207374796c653d226d617267696e2d746f703a766172282d2d732d3429223e3c683420636c6173733d2264657461696c2d7375627469746c65223e417267756d656e74733c2f68343e3c64697620636c6173733d2273632d61726773223e27202b2072656e646572417267732874782e73635f6172677329202b20273c2f6469763e3c2f6469763e27203a20272729202b0a20202020273c646976207374796c653d226d617267696e2d746f703a766172282d2d732d3429223e3c627574746f6e20636c6173733d2262746e2062746e2d67686f737422206f6e636c69636b3d22766965775343285c2727202b2073636964202b20275c2729223e5669657720436f6e7472616374202667743b3c2f627574746f6e3e3c2f6469763e3c2f6469763e3c2f6469763e273b0a7d0a0a66756e6374696f6e20657874726163745343494428747829207b0a20206966202874782e73636964292072657475726e2074782e736369643b0a20206966202874782e73635f6172677329207b207661722061203d2074782e73635f617267732e66696e642866756e6374696f6e287829207b2072657475726e20782e6e616d652026262028782e6e616d652e746f4c6f776572436173652829203d3d3d2027736327207c7c20782e6e616d652e746f4c6f776572436173652829203d3d3d20277363696427293b207d293b206966202861292072657475726e20612e76616c75653b207d0a202072657475726e206e756c6c3b0a7d0a0a66756e6374696f6e2065787472616374455028747829207b0a20206966202874782e656e747279706f696e74292072657475726e2074782e656e747279706f696e743b0a20206966202874782e73635f6172677329207b207661722061203d2074782e73635f617267732e66696e642866756e6374696f6e287829207b2072657475726e20782e6e616d652026262028782e6e616d652e746f4c6f776572436173652829203d3d3d2027656e747279706f696e7427207c7c20782e6e616d652e746f4c6f776572436173652829203d3d3d202766756e6374696f6e27293b207d293b206966202861292072657475726e20612e76616c75653b207d0a202072657475726e206e756c6c3b0a7d0a0a66756e6374696f6e2072656e64657241726773286172677329207b0a2020696620282161726773207c7c2021617267732e6c656e677468292072657475726e20273c7370616e20636c6173733d22746578742d6d75746564223e4e6f20617267756d656e74733c2f7370616e3e273b0a202072657475726e20273c64697620636c6173733d22617267732d6c697374223e27202b20617267732e6d61702866756e6374696f6e286129207b0a2020202072657475726e20273c64697620636c6173733d226172672d6974656d223e3c7370616e20636c6173733d226172672d6e616d65223e27202b20552e65736348746d6c28612e6e616d65207c7c2027756e6e616d65642729202b20273c2f7370616e3e3c7370616e20636c6173733d226172672d74797065223e27202b2028612e6461746174797065207c7c20612e74797065207c7c20273f2729202b20273c2f7370616e3e3c7370616e20636c6173733d226172672d76616c7565206d6f6e6f223e27202b20552e65736348746d6c28537472696e6728612e76616c7565207c7c2027272929202b20273c2f7370616e3e3c2f6469763e273b0a20207d292e6a6f696e28272729202b20273c2f6469763e273b0a7d0a0a66756e6374696f6e2072656e64657252696e672874782c20656e68616e63656429207b0a20207661722072696e67203d2074782e72696e67207c7c206578747261637452696e67287478292c2073697a65203d2074782e72696e675f73697a65207c7c202872696e67203f2072696e672e6c656e677468203a2030293b0a2020696620282172696e67207c7c2072696e672e6c656e677468203d3d3d203029207b0a202020206966202873697a65203e2030292072657475726e20273c64697620636c6173733d2273656374696f6e2d63617264223e27202b2075692e73656374696f6e486561646572287b2069636f6e3a20275b525d272c207469746c653a202752696e67205369676e6174757265272c2062616467653a207b20746578743a202753495a452027202b2073697a652c20636c6173733a202762616467652d70656e64696e6727207d207d29202b0a202020202020273c64697620636c6173733d2273656374696f6e2d636f6e74656e74223e3c7020636c6173733d22746578742d6d7574656420746578742d736d223e52696e672073697a653a2027202b2073697a65202b2027206d656d626572732e2052696e672064617461206e6f7420696e636c7564656420696e2074686973207472616e73616374696f6e20726573706f6e73652e3c2f703e3c7020636c6173733d22746578742d6d7574656420746578742d736d22207374796c653d226d617267696e2d746f703a766172282d2d732d3229223e52696e67207369676e6174757265732070726f76696465207472616e73616374696f6e2070726976616379206279206d6978696e6720796f757220696e7075742077697468206465636f7920696e707574732066726f6d206f74686572207472616e73616374696f6e732e3c2f703e3c2f6469763e3c2f6469763e273b0a2020202072657475726e2027273b0a20207d0a202072657475726e20273c64697620636c6173733d2273656374696f6e2d63617264223e27202b2075692e73656374696f6e486561646572287b2069636f6e3a20275b525d272c207469746c653a202752696e67204d656d62657273202827202b2072696e672e6c656e677468202b202729272c2062616467653a207b20746578743a202750524956414359272c20636c6173733a202762616467652d6f6b27207d207d29202b0a20202020273c64697620636c6173733d2273656374696f6e2d636f6e74656e74223e3c7020636c6173733d2272696e672d6578706c616e6174696f6e20746578742d6d7574656420746578742d736d22207374796c653d226d617267696e2d626f74746f6d3a766172282d2d732d3429223e52696e67207369676e6174757265732070726f76696465207472616e73616374696f6e2070726976616379206279206d6978696e6720796f757220696e70757420776974682027202b202872696e672e6c656e677468202d203129202b2027206465636f7920696e707574732066726f6d206f74686572207472616e73616374696f6e732e3c2f703e27202b2072656e64657252696e674d656d626572732872696e6729202b20273c2f6469763e3c2f6469763e273b0a7d0a0a66756e6374696f6e206578747261637452696e6728747829207b0a20206966202874782e72696e67292072657475726e2074782e72696e673b0a20206966202874782e7061796c6f6164732026262074782e7061796c6f6164735b305d3f2e72696e67292072657475726e2074782e7061796c6f6164735b305d2e72696e673b0a202072657475726e206e756c6c3b0a7d0a0a66756e6374696f6e2072656e64657252696e674d656d626572732872696e6729207b0a2020766172206d6178203d2031362c2064697370203d2072696e672e736c69636528302c206d6178292c2072656d203d2072696e672e6c656e677468202d206d61783b0a20207661722068746d6c203d20273c64697620636c6173733d2272696e672d6d656d62657273223e273b0a2020646973702e666f72456163682866756e6374696f6e286d2c206929207b0a202020207661722064203d2041727261792e69734172726179286d29203f206d5b305d203a206d3b0a2020202068746d6c202b3d20273c64697620636c6173733d2272696e672d6d656d626572223e3c7370616e20636c6173733d2272696e672d696e646578223e5b27202b2069202b20275d3c2f7370616e3e3c636f646520636c6173733d2272696e672d6b6579223e27202b20552e7472756e634861736828642c2031322c203829202b20273c2f636f64653e3c2f6469763e273b0a20207d293b0a20206966202872656d203e2030292068746d6c202b3d20273c64697620636c6173733d2272696e672d6d6f726520746578742d6d75746564223e2e2e2e20616e642027202b2072656d202b2027206d6f7265206d656d626572733c2f6469763e273b0a202072657475726e2068746d6c202b20273c2f6469763e273b0a7d0a0a66756e6374696f6e2072656e64657250726f6f6628747869642c20656e68616e63656429207b0a2020766172206964203d20747869642e736c69636528302c2038293b0a20206966202821656e68616e636564292072657475726e20273c64697620636c6173733d2273656374696f6e2d63617264223e27202b2075692e73656374696f6e486561646572287b2069636f6e3a20275b505d272c207469746c653a2027566572696679205061796d656e742050726f6f66272c2062616467653a207b20746578743a20274241434b454e44205245515549524544272c20636c6173733a202762616467652d70656e64696e6727207d207d29202b0a20202020273c64697620636c6173733d2273656374696f6e2d636f6e74656e74223e3c64697620636c6173733d2270726f6f662d6c696d69746564223e3c7020636c6173733d22746578742d6d75746564223e50726f6f662076616c69646174696f6e2072657175697265732061206261636b656e64207468617420737570706f7274732063727970746f6772617068696320766572696669636174696f6e2028476f206e617469766520636f6465292e205468697320697320617661696c61626c65207768656e2072756e6e696e6720746865206578706c6f72657220696e20484f4c4f4752414d206f7220776974682061206c6f63616c206578706c6f726572207468617420737570706f7274732070726f6f662076616c69646174696f6e2e3c2f703e3c2f6469763e3c2f6469763e3c2f6469763e273b0a202072657475726e20273c64697620636c6173733d2273656374696f6e2d63617264223e27202b2075692e73656374696f6e486561646572287b2069636f6e3a20275b505d272c207469746c653a2027566572696679205061796d656e742050726f6f6627207d29202b0a20202020273c64697620636c6173733d2273656374696f6e2d636f6e74656e74223e3c7020636c6173733d22746578742d6d7574656420746578742d736d22207374796c653d226d617267696e2d626f74746f6d3a766172282d2d732d3429223e456e7465722061204445524f2070726f6f6620746f207665726966792069662074686973207472616e73616374696f6e2073656e742066756e647320746f20796f752e3c2f703e27202b0a20202020273c64697620636c6173733d2270726f6f662d666f726d223e3c74657874617265612069643d2270726f6f662d696e7075742d27202b206964202b20272220636c6173733d2270726f6f662d74657874617265612220706c616365686f6c6465723d225061737465206465726f70726f6f6631712e2e2e20686572652220726f77733d2234223e3c2f74657874617265613e27202b0a20202020273c627574746f6e20636c6173733d2262746e2062746e2d7072696d61727922206f6e636c69636b3d224465726f4578706c6f7265722e6d6f64756c65732e676574285c277472616e73616374696f6e735c27292e76616c696461746550726f6f66285c2727202b2074786964202b20275c2729223e56616c69646174652050726f6f663c2f627574746f6e3e3c2f6469763e27202b0a20202020273c6469762069643d2270726f6f662d726573756c742d27202b206964202b202722207374796c653d226d617267696e2d746f703a766172282d2d732d3429223e3c2f6469763e3c2f6469763e3c2f6469763e273b0a7d0a0a6173796e632066756e6374696f6e2076616c696461746550726f6f66287478696429207b0a2020766172206964203d20747869642e736c69636528302c2038292c20696e70203d20646f63756d656e742e676574456c656d656e7442794964282770726f6f662d696e7075742d27202b206964292c20726573203d20646f63756d656e742e676574456c656d656e7442794964282770726f6f662d726573756c742d27202b206964293b0a20206966202821696e70207c7c2021726573292072657475726e3b0a20207661722070726f6f66203d20696e702e76616c75652e7472696d28293b0a2020696620282170726f6f6629207b207265732e696e6e657248544d4c203d20273c64697620636c6173733d2270726f6f662d6572726f72223e506c6561736520656e74657220612070726f6f6620737472696e673c2f6469763e273b2072657475726e3b207d0a20207265732e696e6e657248544d4c203d20273c64697620636c6173733d2270726f6f662d6c6f6164696e67223e3c64697620636c6173733d226c6f6164696e672d7370696e6e657222207374796c653d2277696474683a313670783b6865696768743a31367078223e3c2f6469763e56616c69646174696e672e2e2e3c2f6469763e273b0a2020747279207b0a2020202076617220636f6e6e203d204d2e6765742827636f6e6e656374697669747927292c2072203d20617761697420636f6e6e2e76616c696461746550726f6f662870726f6f662c2074786964293b0a2020202069662028722e76616c696429207265732e696e6e657248544d4c203d20273c64697620636c6173733d2270726f6f662d76616c6964223e3c64697620636c6173733d2270726f6f662d686561646572223e5b4f4b5d2050726f6f662056616c69643c2f6469763e3c64697620636c6173733d2270726f6f662d64657461696c73223e27202b2075692e64657461696c526f772827526563697069656e74272c20552e7472756e634861736828722e616464726573732c2031362c203132292c207b206d6f6e6f3a2074727565207d29202b2075692e64657461696c526f772827416d6f756e74272c20552e666d744445524f28722e616d6f756e7429202b2027204445524f2729202b2028722e7061796c6f6164203f2075692e64657461696c526f7728275061796c6f6164272c20722e7061796c6f616429203a20272729202b20273c2f6469763e3c2f6469763e273b0a20202020656c7365207265732e696e6e657248544d4c203d20273c64697620636c6173733d2270726f6f662d696e76616c6964223e3c64697620636c6173733d2270726f6f662d686561646572223e5b585d2050726f6f6620496e76616c69643c2f6469763e3c703e27202b2028722e6572726f72207c7c20275468652070726f6f6620636f756c64206e6f742062652076616c69646174656420666f722074686973207472616e73616374696f6e2e2729202b20273c2f703e3c2f6469763e273b0a20207d20636174636820286529207b207265732e696e6e657248544d4c203d20273c64697620636c6173733d2270726f6f662d6572726f72223e4572726f723a2027202b20552e65736348746d6c28652e6d65737361676529202b20273c2f6469763e273b207d0a7d0a0a72657475726e207b20696e69743a20696e69742c206c6f61644d656d706f6f6c3a206c6f61644d656d706f6f6c2c206c6f616446756c6c506f6f6c3a206c6f616446756c6c506f6f6c2c2072656e646572547844657461696c3a2072656e646572547844657461696c2c2076616c696461746550726f6f663a2076616c696461746550726f6f662c206465746563745478547970653a20646574656374547970652c2054585f54595045533a205458207d3b0a7d2928293b0a0a2a2f
dURL
dislikes 0
docType 6170706c69636174696f6e2f782d6a617661736372697074
docVersion 312e302e30
fileCheckC 30313232346232366638613338656662653230306465326462643531383133343035623565666361656465623239633130643938363637616239363764306561
fileCheckS 30376533613337663833356638383736336239343435303639393633333032366563616264356265333262373734623766626135343233653939363137343232
hash 63336461653666663962653937383365653430663634376432373035633766343962653832356564363436393637366264666531626362613330663033326539
likes 0
owner 6465726f3171797175366b646c6134346d736e306b7935736b7076346661686a326179383079636a707a32376b6763347766376a6b347973306b7171367333366668
subDir 2f
var_header_description 7472616e73616374696f6e732e6a73
var_header_icon
var_header_name 7472616e73616374696f6e732e6a73
SCID uint64 variables
key value
built BLID : 037d14545241fac61b9785ecbb47b937b4598718dce427a8fc31e9f067c27a86
Tx RootHash: a424469dcbdce9fe09e34f3070e10428ead1b0eaffdc31b2e6b139f9f34cbc0f built height : 6447879
Timestamp: 1767603983741 Timestamp [UTC]: 2026-01-05 09:06:23 Age [y:d:h:m:s]: 255:39:24.785
Block: 6447884 Fee: 0.13762 Tx size: 14.786 kB
Tx version: 1 No of confirmations: 48788 Signature type: DERO_HOMOMORPHIC
Extra:
DERO : 2 inputs/outputs (RING size) Fees 0.13762 Deposited to SC 0.00000
Sender : dero1qyqu6kdla44msn0ky5skpv4fahj2ay80ycjpz27kgc4wf7jk4ys0kqq6s36fh
address
dero1qydwyctd58wj0f8h4g7u90h7vxu8v0sh84wvqxksjn3v7z45m07hzqqvhltnh
dero1qyqu6kdla44msn0ky5skpv4fahj2ay80ycjpz27kgc4wf7jk4ys0kqq6s36fh
SC Balance: 0.00000 DERO
SC CODE:
  Function InitializePrivate() Uint64
10 IF init() == 0 THEN GOTO 30
20 RETURN 1
30 STORE("var_header_name", "transactions.js")
31 STORE("var_header_description", "transactions.js")
32 STORE("var_header_icon", "")
33 STORE("dURL", "")
34 STORE("docType", "application/x-javascript")
35 STORE("subDir", "/")
36 STORE("fileCheckC", "01224b26f8a38efbe200de2dbd51813405b5efcaedeb29c10d98667ab967d0ea")
37 STORE("fileCheckS", "07e3a37f835f88763b94450699633026ecabd5be32b774b7fba5423e99617422")
100 RETURN 0
End Function

Function init() Uint64
10 IF EXISTS("owner") == 0 THEN GOTO 30
20 RETURN 1
30 STORE("owner", address())
50 STORE("docVersion", "1.0.0")
60 STORE("hash", HEX(TXID()))
70 STORE("likes", 0)
80 STORE("dislikes", 0)
100 RETURN 0
End Function

Function address() String
10 DIM s as String
20 LET s = SIGNER()
30 IF IS_ADDRESS_VALID(s) THEN GOTO 50
40 RETURN "anon"
50 RETURN ADDRESS_STRING(s)
End Function

Function Rate(r Uint64) Uint64
10 DIM addr as String
15 LET addr = address()
16 IF r < 100 && EXISTS(addr) == 0 && addr != "anon" THEN GOTO 30
20 RETURN 1
30 STORE(addr, ""+r+"_"+BLOCK_HEIGHT())
40 IF r < 50 THEN GOTO 70
50 STORE("likes", LOAD("likes")+1)
60 RETURN 0
70 STORE("dislikes", LOAD("dislikes")+1)
100 RETURN 0
End Function

/*
// DERO Explorer v2.0 - Transactions Module
const module = (function() {
'use strict';
var D = window.DeroExplorer, S = D.state, U = D.utils, ui = D.ui, R = D.router, M = D.modules;
var TX = { PREMINE: 'PREMINE', REGISTRATION: 'REGISTRATION', COINBASE: 'COINBASE', NORMAL: 'NORMAL', BURN_TX: 'BURN_TX', SC_TX: 'SC_TX' };
var T = { poolInterval: null, cache: new Map(), maxCache: 50 };

function init() {
  window.addEventListener('explorer:viewChange', handleView);
  window.addEventListener('explorer:connected', function() { if (S.currentView === 'dashboard') loadMempool(); });
}

function handleView(e) {
  var v = e.detail.view, p = e.detail.param;
  if (v === 'pool') renderPoolView();
  else if (v === 'txDetail' && p) renderTxDetail(p);
  else if (v === 'dashboard') loadMempool();
  if (v !== 'pool' && T.poolInterval) { clearInterval(T.poolInterval); T.poolInterval = null; }
}

function detectType(tx) {
  if (!tx) return 'UNKNOWN';
  if (tx.transaction_type) return tx.transaction_type.toUpperCase();
  if (tx.coinbase) return TX.COINBASE;
  if (tx.sc_data || tx.scdata) return TX.SC_TX;
  if (tx.burn_value && tx.burn_value > 0) return TX.BURN_TX;
  return TX.NORMAL;
}

function typeBadge(t) {
  if (t === TX.COINBASE) return 'badge-ok';
  if (t === TX.SC_TX) return 'badge-live';
  if (t === TX.BURN_TX) return 'badge-err';
  if (t === TX.REGISTRATION) return 'badge-new';
  return 'badge-pending';
}

async function loadMempool() {
  var el = document.getElementById('mempool-list'), badge = document.getElementById('pool-badge');
  if (!el) return;
  try {
    var conn = M.get('connectivity');
    if (!conn) throw new Error('No connectivity');
    var pool = await conn.getTxPool(), txs = pool.txs || [];
    if (badge) badge.textContent = txs.length + ' PENDING';
    if (txs.length === 0) { el.innerHTML = '<div class="empty-state"><div class="empty-icon">*</div><p>Mempool is empty - all transactions confirmed</p></div>'; return; }
    el.innerHTML = renderPoolList(txs.slice(0, 10));
  } catch (e) {}
}

async function renderPoolView() {
  var el = document.getElementById('view-pool');
  if (!el) return;
  el.innerHTML = '<div class="section-card">' + ui.sectionHeader({ icon: '[T]', title: 'Transaction Pool (Mempool)', badge: { text: 'LIVE', class: 'badge-live' } }) +
    '<div class="section-content"><div id="pool-full-list"><div class="loading-state"><div class="loading-spinner"></div><span>Loading mempool...</span></div></div></div></div>';
  await loadFullPool();
  T.poolInterval = setInterval(loadFullPool, 10000);
}

async function loadFullPool() {
  var el = document.getElementById('pool-full-list');
  if (!el) return;
  try {
    var conn = M.get('connectivity'), pool = await conn.getTxPool(), txs = pool.txs || [];
    if (txs.length === 0) { el.innerHTML = '<div class="empty-state"><div class="empty-icon">*</div><p>Mempool is empty</p><p class="text-muted">All transactions have been confirmed</p></div>'; return; }
    el.innerHTML = '<div class="pool-stats"><span class="pool-stat"><strong>' + txs.length + '</strong> pending transactions</span></div>' + renderPoolList(txs);
  } catch (e) { el.innerHTML = '<div class="empty-state"><p>Failed to load mempool</p></div>'; }
}

function renderPoolList(txs) {
  return '<div class="tx-list">' + txs.map(function(h) {
    return '<div class="tx-item" onclick="viewTx(\'' + h + '\')"><div class="tx-item-left"><span class="tx-type badge badge-pending">PENDING</span><span class="tx-hash mono">' + U.truncHash(h, 16, 12) + '</span></div><div class="tx-item-right"><span class="tx-action">View &gt;</span></div></div>';
  }).join('') + '</div>';
}

async function renderTxDetail(txid) {
  var el = document.getElementById('view-txDetail');
  if (!el) { var main = document.getElementById('main-content'); el = document.createElement('div'); el.id = 'view-txDetail'; main.appendChild(el); }
  el.classList.remove('hidden');
  ui.showLoading(el, 'Loading transaction...');
  try {
    var conn = M.get('connectivity'), tx;
    if (conn.hasEnhancedFeatures()) tx = await conn.getTransactionWithRings(txid);
    else tx = await conn.getTransaction(txid);
    if (!tx) throw new Error('Transaction not found');
    el.innerHTML = renderTxHTML(tx, conn.hasEnhancedFeatures());
  } catch (e) { ui.showError(el, 'Transaction Not Found', e.message); }
}

function renderTxHTML(tx, enhanced) {
  var type = detectType(tx), cls = typeBadge(type), conf = tx.block_height && tx.block_height > 0;
  return '<div class="detail-view"><div class="detail-nav"><button class="btn btn-ghost" onclick="goBack()">&lt; Back</button></div>' +
    '<div class="section-card">' + ui.sectionHeader({ icon: '[T]', title: 'Transaction', badge: { text: conf ? 'CONFIRMED' : 'PENDING', class: conf ? 'badge-ok' : 'badge-pending' } }) +
    '<div class="section-content"><div class="detail-grid"><div class="detail-column"><h4 class="detail-subtitle">Transaction Information</h4>' +
    ui.detailRow('TXID', tx.txid || tx.hash, { mono: true, copyable: true }) +
    ui.detailRow('Type', '<span class="badge ' + cls + '">' + type + '</span>') +
    (tx.block_height ? ui.detailRow('Block Height', U.fmtNum(tx.block_height)) : '') +
    (tx.block_timestamp ? ui.detailRow('Time', U.fmtLocalTime(tx.block_timestamp)) : '') +
    (tx.block_timestamp ? ui.detailRow('Age', U.fmtAge(tx.block_timestamp)) : '') +
    '</div><div class="detail-column"><h4 class="detail-subtitle">Transaction Data</h4>' +
    (tx.size ? ui.detailRow('Size', U.fmtBytes(tx.size)) : '') +
    (tx.fee !== undefined ? ui.detailRow('Fee', U.fmtDERO(tx.fee) + ' DERO') : '') +
    (tx.burn_value ? ui.detailRow('Burn', U.fmtDERO(tx.burn_value) + ' DERO') : '') +
    (tx.ring_size ? ui.detailRow('Ring Size', tx.ring_size.toString()) : '') +
    (tx.dest_port ? ui.detailRow('Dest Port', tx.dest_port.toString()) : '') +
    '</div></div></div></div>' +
    (type === TX.SC_TX ? renderSC(tx) : '') + renderRing(tx, enhanced) + renderProof(tx.txid || tx.hash, enhanced) + '</div>';
}

function renderSC(tx) {
  var scid = tx.scid || extractSCID(tx), ep = tx.entrypoint || extractEP(tx);
  if (!scid) return '';
  return '<div class="section-card">' + ui.sectionHeader({ icon: '[SC]', title: 'Smart Contract Interaction' }) +
    '<div class="section-content">' + ui.detailRow('SCID', scid, { mono: true, copyable: true }) +
    (ep ? ui.detailRow('Function', ep) : '') +
    (tx.sc_args ? '<div style="margin-top:var(--s-4)"><h4 class="detail-subtitle">Arguments</h4><div class="sc-args">' + renderArgs(tx.sc_args) + '</div></div>' : '') +
    '<div style="margin-top:var(--s-4)"><button class="btn btn-ghost" onclick="viewSC(\'' + scid + '\')">View Contract &gt;</button></div></div></div>';
}

function extractSCID(tx) {
  if (tx.scid) return tx.scid;
  if (tx.sc_args) { var a = tx.sc_args.find(function(x) { return x.name && (x.name.toLowerCase() === 'sc' || x.name.toLowerCase() === 'scid'); }); if (a) return a.value; }
  return null;
}

function extractEP(tx) {
  if (tx.entrypoint) return tx.entrypoint;
  if (tx.sc_args) { var a = tx.sc_args.find(function(x) { return x.name && (x.name.toLowerCase() === 'entrypoint' || x.name.toLowerCase() === 'function'); }); if (a) return a.value; }
  return null;
}

function renderArgs(args) {
  if (!args || !args.length) return '<span class="text-muted">No arguments</span>';
  return '<div class="args-list">' + args.map(function(a) {
    return '<div class="arg-item"><span class="arg-name">' + U.escHtml(a.name || 'unnamed') + '</span><span class="arg-type">' + (a.datatype || a.type || '?') + '</span><span class="arg-value mono">' + U.escHtml(String(a.value || '')) + '</span></div>';
  }).join('') + '</div>';
}

function renderRing(tx, enhanced) {
  var ring = tx.ring || extractRing(tx), size = tx.ring_size || (ring ? ring.length : 0);
  if (!ring || ring.length === 0) {
    if (size > 0) return '<div class="section-card">' + ui.sectionHeader({ icon: '[R]', title: 'Ring Signature', badge: { text: 'SIZE ' + size, class: 'badge-pending' } }) +
      '<div class="section-content"><p class="text-muted text-sm">Ring size: ' + size + ' members. Ring data not included in this transaction response.</p><p class="text-muted text-sm" style="margin-top:var(--s-2)">Ring signatures provide transaction privacy by mixing your input with decoy inputs from other transactions.</p></div></div>';
    return '';
  }
  return '<div class="section-card">' + ui.sectionHeader({ icon: '[R]', title: 'Ring Members (' + ring.length + ')', badge: { text: 'PRIVACY', class: 'badge-ok' } }) +
    '<div class="section-content"><p class="ring-explanation text-muted text-sm" style="margin-bottom:var(--s-4)">Ring signatures provide transaction privacy by mixing your input with ' + (ring.length - 1) + ' decoy inputs from other transactions.</p>' + renderRingMembers(ring) + '</div></div>';
}

function extractRing(tx) {
  if (tx.ring) return tx.ring;
  if (tx.payloads && tx.payloads[0]?.ring) return tx.payloads[0].ring;
  return null;
}

function renderRingMembers(ring) {
  var max = 16, disp = ring.slice(0, max), rem = ring.length - max;
  var html = '<div class="ring-members">';
  disp.forEach(function(m, i) {
    var d = Array.isArray(m) ? m[0] : m;
    html += '<div class="ring-member"><span class="ring-index">[' + i + ']</span><code class="ring-key">' + U.truncHash(d, 12, 8) + '</code></div>';
  });
  if (rem > 0) html += '<div class="ring-more text-muted">... and ' + rem + ' more members</div>';
  return html + '</div>';
}

function renderProof(txid, enhanced) {
  var id = txid.slice(0, 8);
  if (!enhanced) return '<div class="section-card">' + ui.sectionHeader({ icon: '[P]', title: 'Verify Payment Proof', badge: { text: 'BACKEND REQUIRED', class: 'badge-pending' } }) +
    '<div class="section-content"><div class="proof-limited"><p class="text-muted">Proof validation requires a backend that supports cryptographic verification (Go native code). This is available when running the explorer in HOLOGRAM or with a local explorer that supports proof validation.</p></div></div></div>';
  return '<div class="section-card">' + ui.sectionHeader({ icon: '[P]', title: 'Verify Payment Proof' }) +
    '<div class="section-content"><p class="text-muted text-sm" style="margin-bottom:var(--s-4)">Enter a DERO proof to verify if this transaction sent funds to you.</p>' +
    '<div class="proof-form"><textarea id="proof-input-' + id + '" class="proof-textarea" placeholder="Paste deroproof1q... here" rows="4"></textarea>' +
    '<button class="btn btn-primary" onclick="DeroExplorer.modules.get(\'transactions\').validateProof(\'' + txid + '\')">Validate Proof</button></div>' +
    '<div id="proof-result-' + id + '" style="margin-top:var(--s-4)"></div></div></div>';
}

async function validateProof(txid) {
  var id = txid.slice(0, 8), inp = document.getElementById('proof-input-' + id), res = document.getElementById('proof-result-' + id);
  if (!inp || !res) return;
  var proof = inp.value.trim();
  if (!proof) { res.innerHTML = '<div class="proof-error">Please enter a proof string</div>'; return; }
  res.innerHTML = '<div class="proof-loading"><div class="loading-spinner" style="width:16px;height:16px"></div>Validating...</div>';
  try {
    var conn = M.get('connectivity'), r = await conn.validateProof(proof, txid);
    if (r.valid) res.innerHTML = '<div class="proof-valid"><div class="proof-header">[OK] Proof Valid</div><div class="proof-details">' + ui.detailRow('Recipient', U.truncHash(r.address, 16, 12), { mono: true }) + ui.detailRow('Amount', U.fmtDERO(r.amount) + ' DERO') + (r.payload ? ui.detailRow('Payload', r.payload) : '') + '</div></div>';
    else res.innerHTML = '<div class="proof-invalid"><div class="proof-header">[X] Proof Invalid</div><p>' + (r.error || 'The proof could not be validated for this transaction.') + '</p></div>';
  } catch (e) { res.innerHTML = '<div class="proof-error">Error: ' + U.escHtml(e.message) + '</div>'; }
}

return { init: init, loadMempool: loadMempool, loadFullPool: loadFullPool, renderTxDetail: renderTxDetail, validateProof: validateProof, detectTxType: detectType, TX_TYPES: TX };
})();

*/
SC Arguments: [Name:SC_ACTION Type:uint64 Value:'1' Name:SC_CODE Type:string Value:'Function InitializePrivate() Uint64 10 IF init() == 0 THEN GOTO 30 20 RETURN 1 30 STORE("var_header_name", "transactions.js") 31 STORE("var_header_description", "transactions.js") 32 STORE("var_header_icon", "") 33 STORE("dURL", "") 34 STORE("docType", "application/x-javascript") 35 STORE("subDir", "/") 36 STORE("fileCheckC", "01224b26f8a38efbe200de2dbd51813405b5efcaedeb29c10d98667ab967d0ea") 37 STORE("fileCheckS", "07e3a37f835f88763b94450699633026ecabd5be32b774b7fba5423e99617422") 100 RETURN 0 End Function Function init() Uint64 10 IF EXISTS("owner") == 0 THEN GOTO 30 20 RETURN 1 30 STORE("owner", address()) 50 STORE("docVersion", "1.0.0") 60 STORE("hash", HEX(TXID())) 70 STORE("likes", 0) 80 STORE("dislikes", 0) 100 RETURN 0 End Function Function address() String 10 DIM s as String 20 LET s = SIGNER() 30 IF IS_ADDRESS_VALID(s) THEN GOTO 50 40 RETURN "anon" 50 RETURN ADDRESS_STRING(s) End Function Function Rate(r Uint64) Uint64 10 DIM addr as String 15 LET addr = address() 16 IF r < 100 && EXISTS(addr) == 0 && addr != "anon" THEN GOTO 30 20 RETURN 1 30 STORE(addr, ""+r+"_"+BLOCK_HEIGHT()) 40 IF r < 50 THEN GOTO 70 50 STORE("likes", LOAD("likes")+1) 60 RETURN 0 70 STORE("dislikes", LOAD("dislikes")+1) 100 RETURN 0 End Function /* // DERO Explorer v2.0 - Transactions Module const module = (function() { 'use strict'; var D = window.DeroExplorer, S = D.state, U = D.utils, ui = D.ui, R = D.router, M = D.modules; var TX = { PREMINE: 'PREMINE', REGISTRATION: 'REGISTRATION', COINBASE: 'COINBASE', NORMAL: 'NORMAL', BURN_TX: 'BURN_TX', SC_TX: 'SC_TX' }; var T = { poolInterval: null, cache: new Map(), maxCache: 50 }; function init() { window.addEventListener('explorer:viewChange', handleView); window.addEventListener('explorer:connected', function() { if (S.currentView === 'dashboard') loadMempool(); }); } function handleView(e) { var v = e.detail.view, p = e.detail.param; if (v === 'pool') renderPoolView(); else if (v === 'txDetail' && p) renderTxDetail(p); else if (v === 'dashboard') loadMempool(); if (v !== 'pool' && T.poolInterval) { clearInterval(T.poolInterval); T.poolInterval = null; } } function detectType(tx) { if (!tx) return 'UNKNOWN'; if (tx.transaction_type) return tx.transaction_type.toUpperCase(); if (tx.coinbase) return TX.COINBASE; if (tx.sc_data || tx.scdata) return TX.SC_TX; if (tx.burn_value && tx.burn_value > 0) return TX.BURN_TX; return TX.NORMAL; } function typeBadge(t) { if (t === TX.COINBASE) return 'badge-ok'; if (t === TX.SC_TX) return 'badge-live'; if (t === TX.BURN_TX) return 'badge-err'; if (t === TX.REGISTRATION) return 'badge-new'; return 'badge-pending'; } async function loadMempool() { var el = document.getElementById('mempool-list'), badge = document.getElementById('pool-badge'); if (!el) return; try { var conn = M.get('connectivity'); if (!conn) throw new Error('No connectivity'); var pool = await conn.getTxPool(), txs = pool.txs || []; if (badge) badge.textContent = txs.length + ' PENDING'; if (txs.length === 0) { el.innerHTML = '<div class="empty-state"><div class="empty-icon">*</div><p>Mempool is empty - all transactions confirmed</p></div>'; return; } el.innerHTML = renderPoolList(txs.slice(0, 10)); } catch (e) {} } async function renderPoolView() { var el = document.getElementById('view-pool'); if (!el) return; el.innerHTML = '<div class="section-card">' + ui.sectionHeader({ icon: '[T]', title: 'Transaction Pool (Mempool)', badge: { text: 'LIVE', class: 'badge-live' } }) + '<div class="section-content"><div id="pool-full-list"><div class="loading-state"><div class="loading-spinner"></div><span>Loading mempool...</span></div></div></div></div>'; await loadFullPool(); T.poolInterval = setInterval(loadFullPool, 10000); } async function loadFullPool() { var el = document.getElementById('pool-full-list'); if (!el) return; try { var conn = M.get('connectivity'), pool = await conn.getTxPool(), txs = pool.txs || []; if (txs.length === 0) { el.innerHTML = '<div class="empty-state"><div class="empty-icon">*</div><p>Mempool is empty</p><p class="text-muted">All transactions have been confirmed</p></div>'; return; } el.innerHTML = '<div class="pool-stats"><span class="pool-stat"><strong>' + txs.length + '</strong> pending transactions</span></div>' + renderPoolList(txs); } catch (e) { el.innerHTML = '<div class="empty-state"><p>Failed to load mempool</p></div>'; } } function renderPoolList(txs) { return '<div class="tx-list">' + txs.map(function(h) { return '<div class="tx-item" onclick="viewTx(\'' + h + '\')"><div class="tx-item-left"><span class="tx-type badge badge-pending">PENDING</span><span class="tx-hash mono">' + U.truncHash(h, 16, 12) + '</span></div><div class="tx-item-right"><span class="tx-action">View &gt;</span></div></div>'; }).join('') + '</div>'; } async function renderTxDetail(txid) { var el = document.getElementById('view-txDetail'); if (!el) { var main = document.getElementById('main-content'); el = document.createElement('div'); el.id = 'view-txDetail'; main.appendChild(el); } el.classList.remove('hidden'); ui.showLoading(el, 'Loading transaction...'); try { var conn = M.get('connectivity'), tx; if (conn.hasEnhancedFeatures()) tx = await conn.getTransactionWithRings(txid); else tx = await conn.getTransaction(txid); if (!tx) throw new Error('Transaction not found'); el.innerHTML = renderTxHTML(tx, conn.hasEnhancedFeatures()); } catch (e) { ui.showError(el, 'Transaction Not Found', e.message); } } function renderTxHTML(tx, enhanced) { var type = detectType(tx), cls = typeBadge(type), conf = tx.block_height && tx.block_height > 0; return '<div class="detail-view"><div class="detail-nav"><button class="btn btn-ghost" onclick="goBack()">&lt; Back</button></div>' + '<div class="section-card">' + ui.sectionHeader({ icon: '[T]', title: 'Transaction', badge: { text: conf ? 'CONFIRMED' : 'PENDING', class: conf ? 'badge-ok' : 'badge-pending' } }) + '<div class="section-content"><div class="detail-grid"><div class="detail-column"><h4 class="detail-subtitle">Transaction Information</h4>' + ui.detailRow('TXID', tx.txid || tx.hash, { mono: true, copyable: true }) + ui.detailRow('Type', '<span class="badge ' + cls + '">' + type + '</span>') + (tx.block_height ? ui.detailRow('Block Height', U.fmtNum(tx.block_height)) : '') + (tx.block_timestamp ? ui.detailRow('Time', U.fmtLocalTime(tx.block_timestamp)) : '') + (tx.block_timestamp ? ui.detailRow('Age', U.fmtAge(tx.block_timestamp)) : '') + '</div><div class="detail-column"><h4 class="detail-subtitle">Transaction Data</h4>' + (tx.size ? ui.detailRow('Size', U.fmtBytes(tx.size)) : '') + (tx.fee !== undefined ? ui.detailRow('Fee', U.fmtDERO(tx.fee) + ' DERO') : '') + (tx.burn_value ? ui.detailRow('Burn', U.fmtDERO(tx.burn_value) + ' DERO') : '') + (tx.ring_size ? ui.detailRow('Ring Size', tx.ring_size.toString()) : '') + (tx.dest_port ? ui.detailRow('Dest Port', tx.dest_port.toString()) : '') + '</div></div></div></div>' + (type === TX.SC_TX ? renderSC(tx) : '') + renderRing(tx, enhanced) + renderProof(tx.txid || tx.hash, enhanced) + '</div>'; } function renderSC(tx) { var scid = tx.scid || extractSCID(tx), ep = tx.entrypoint || extractEP(tx); if (!scid) return ''; return '<div class="section-card">' + ui.sectionHeader({ icon: '[SC]', title: 'Smart Contract Interaction' }) + '<div class="section-content">' + ui.detailRow('SCID', scid, { mono: true, copyable: true }) + (ep ? ui.detailRow('Function', ep) : '') + (tx.sc_args ? '<div style="margin-top:var(--s-4)"><h4 class="detail-subtitle">Arguments</h4><div class="sc-args">' + renderArgs(tx.sc_args) + '</div></div>' : '') + '<div style="margin-top:var(--s-4)"><button class="btn btn-ghost" onclick="viewSC(\'' + scid + '\')">View Contract &gt;</button></div></div></div>'; } function extractSCID(tx) { if (tx.scid) return tx.scid; if (tx.sc_args) { var a = tx.sc_args.find(function(x) { return x.name && (x.name.toLowerCase() === 'sc' || x.name.toLowerCase() === 'scid'); }); if (a) return a.value; } return null; } function extractEP(tx) { if (tx.entrypoint) return tx.entrypoint; if (tx.sc_args) { var a = tx.sc_args.find(function(x) { return x.name && (x.name.toLowerCase() === 'entrypoint' || x.name.toLowerCase() === 'function'); }); if (a) return a.value; } return null; } function renderArgs(args) { if (!args || !args.length) return '<span class="text-muted">No arguments</span>'; return '<div class="args-list">' + args.map(function(a) { return '<div class="arg-item"><span class="arg-name">' + U.escHtml(a.name || 'unnamed') + '</span><span class="arg-type">' + (a.datatype || a.type || '?') + '</span><span class="arg-value mono">' + U.escHtml(String(a.value || '')) + '</span></div>'; }).join('') + '</div>'; } function renderRing(tx, enhanced) { var ring = tx.ring || extractRing(tx), size = tx.ring_size || (ring ? ring.length : 0); if (!ring || ring.length === 0) { if (size > 0) return '<div class="section-card">' + ui.sectionHeader({ icon: '[R]', title: 'Ring Signature', badge: { text: 'SIZE ' + size, class: 'badge-pending' } }) + '<div class="section-content"><p class="text-muted text-sm">Ring size: ' + size + ' members. Ring data not included in this transaction response.</p><p class="text-muted text-sm" style="margin-top:var(--s-2)">Ring signatures provide transaction privacy by mixing your input with decoy inputs from other transactions.</p></div></div>'; return ''; } return '<div class="section-card">' + ui.sectionHeader({ icon: '[R]', title: 'Ring Members (' + ring.length + ')', badge: { text: 'PRIVACY', class: 'badge-ok' } }) + '<div class="section-content"><p class="ring-explanation text-muted text-sm" style="margin-bottom:var(--s-4)">Ring signatures provide transaction privacy by mixing your input with ' + (ring.length - 1) + ' decoy inputs from other transactions.</p>' + renderRingMembers(ring) + '</div></div>'; } function extractRing(tx) { if (tx.ring) return tx.ring; if (tx.payloads && tx.payloads[0]?.ring) return tx.payloads[0].ring; return null; } function renderRingMembers(ring) { var max = 16, disp = ring.slice(0, max), rem = ring.length - max; var html = '<div class="ring-members">'; disp.forEach(function(m, i) { var d = Array.isArray(m) ? m[0] : m; html += '<div class="ring-member"><span class="ring-index">[' + i + ']</span><code class="ring-key">' + U.truncHash(d, 12, 8) + '</code></div>'; }); if (rem > 0) html += '<div class="ring-more text-muted">... and ' + rem + ' more members</div>'; return html + '</div>'; } function renderProof(txid, enhanced) { var id = txid.slice(0, 8); if (!enhanced) return '<div class="section-card">' + ui.sectionHeader({ icon: '[P]', title: 'Verify Payment Proof', badge: { text: 'BACKEND REQUIRED', class: 'badge-pending' } }) + '<div class="section-content"><div class="proof-limited"><p class="text-muted">Proof validation requires a backend that supports cryptographic verification (Go native code). This is available when running the explorer in HOLOGRAM or with a local explorer that supports proof validation.</p></div></div></div>'; return '<div class="section-card">' + ui.sectionHeader({ icon: '[P]', title: 'Verify Payment Proof' }) + '<div class="section-content"><p class="text-muted text-sm" style="margin-bottom:var(--s-4)">Enter a DERO proof to verify if this transaction sent funds to you.</p>' + '<div class="proof-form"><textarea id="proof-input-' + id + '" class="proof-textarea" placeholder="Paste deroproof1q... here" rows="4"></textarea>' + '<button class="btn btn-primary" onclick="DeroExplorer.modules.get(\'transactions\').validateProof(\'' + txid + '\')">Validate Proof</button></div>' + '<div id="proof-result-' + id + '" style="margin-top:var(--s-4)"></div></div></div>'; } async function validateProof(txid) { var id = txid.slice(0, 8), inp = document.getElementById('proof-input-' + id), res = document.getElementById('proof-result-' + id); if (!inp || !res) return; var proof = inp.value.trim(); if (!proof) { res.innerHTML = '<div class="proof-error">Please enter a proof string</div>'; return; } res.innerHTML = '<div class="proof-loading"><div class="loading-spinner" style="width:16px;height:16px"></div>Validating...</div>'; try { var conn = M.get('connectivity'), r = await conn.validateProof(proof, txid); if (r.valid) res.innerHTML = '<div class="proof-valid"><div class="proof-header">[OK] Proof Valid</div><div class="proof-details">' + ui.detailRow('Recipient', U.truncHash(r.address, 16, 12), { mono: true }) + ui.detailRow('Amount', U.fmtDERO(r.amount) + ' DERO') + (r.payload ? ui.detailRow('Payload', r.payload) : '') + '</div></div>'; else res.innerHTML = '<div class="proof-invalid"><div class="proof-header">[X] Proof Invalid</div><p>' + (r.error || 'The proof could not be validated for this transaction.') + '</p></div>'; } catch (e) { res.innerHTML = '<div class="proof-error">Error: ' + U.escHtml(e.message) + '</div>'; } } return { init: init, loadMempool: loadMempool, loadFullPool: loadFullPool, renderTxDetail: renderTxDetail, validateProof: validateProof, detectTxType: detectType, TX_TYPES: TX }; })(); */']


Prove to someone that you have sent them DERO in this transaction

proof can be obtained using wallet command in dero-wallet-cli or from the statement
Note: proof is sent to the server, as the calculations are done on the server side


TX hex bytes
010000050087c68903037d14545241fac61b9785ecbb47b937b4598718dce427a8fc31e9f067c27a860100000000000000000000000000000000000000000000000000000000000000000000e99595143462be98c51e46da56bf77e635656bc59157902548d9f751099bd1b81ce1b611b2082063faeee8f891ad54b24aa8198d5825f0da1034173ee5dc28c622f1072d84881f1020cf915037a9b89b57d6e28c7f0096118943e0d125396acecb7d6e7667168a201a81d097ebf15502e01223ec174ee9c9af03d639c873f4dd191082975de10a2c2a59dd48c3ab43ceb30107c26b2df2330b5fba0efb57b6fa5979b46f862ee9354444b50e4cdcab37834dc8962800c9bf4103cac4392a9f8cb8285eab10291e144496413c97d2e9626eb03f9c4a406f7a0257da580265f78db16d6f8d000e1e2cc06b4c8e701c34046b4de176d10cea7bae6c4b265da5b00e9b84208d4400a424469dcbdce9fe09e34f3070e10428ead1b0eaffdc31b2e6b139f9f34cbc0ff468a26853435f434f44455379345b46756e6374696f6e20496e697469616c697a655072697661746528292055696e7436340a313020494620696e69742829203d3d2030205448454e20474f544f2033300a32302052455455524e20310a33302053544f524528227661725f6865616465725f6e616d65222c20227472616e73616374696f6e732e6a7322290a33312053544f524528227661725f6865616465725f6465736372697074696f6e222c20227472616e73616374696f6e732e6a7322290a33322053544f524528227661725f6865616465725f69636f6e222c202222290a33332053544f524528226455524c222c202222290a33342053544f52452822646f6354797065222c20226170706c69636174696f6e2f782d6a61766173637269707422290a33352053544f52452822737562446972222c20222f22290a33362053544f5245282266696c65436865636b43222c20223031323234623236663861333865666265323030646532646264353138313334303562356566636165646562323963313064393836363761623936376430656122290a33372053544f5245282266696c65436865636b53222c20223037653361333766383335663838373633623934343530363939363333303236656361626435626533326237373462376662613534323365393936313734323222290a3130302052455455524e20300a456e642046756e6374696f6e0a0a46756e6374696f6e20696e697428292055696e7436340a31302049462045584953545328226f776e65722229203d3d2030205448454e20474f544f2033300a32302052455455524e20310a33302053544f524528226f776e6572222c20616464726573732829290a35302053544f52452822646f6356657273696f6e222c2022312e302e3022290a36302053544f5245282268617368222c204845582854584944282929290a37302053544f524528226c696b6573222c2030290a38302053544f524528226469736c696b6573222c2030290a3130302052455455524e20300a456e642046756e6374696f6e0a0a46756e6374696f6e2061646472657373282920537472696e670a31302044494d207320617320537472696e670a3230204c45542073203d205349474e455228290a33302049462049535f414444524553535f56414c4944287329205448454e20474f544f2035300a34302052455455524e2022616e6f6e220a35302052455455524e20414444524553535f535452494e472873290a456e642046756e6374696f6e0a0a46756e6374696f6e205261746528722055696e743634292055696e7436340a31302044494d206164647220617320537472696e670a3135204c45542061646472203d206164647265737328290a31362049462072203c2031303020262620455849535453286164647229203d3d2030202626206164647220213d2022616e6f6e22205448454e20474f544f2033300a32302052455455524e20310a33302053544f524528616464722c2022222b722b225f222b424c4f434b5f4845494748542829290a34302049462072203c203530205448454e20474f544f2037300a35302053544f524528226c696b6573222c204c4f414428226c696b657322292b31290a36302052455455524e20300a37302053544f524528226469736c696b6573222c204c4f414428226469736c696b657322292b31290a3130302052455455524e20300a456e642046756e6374696f6e0a0a2f2a0a2f2f204445524f204578706c6f7265722076322e30202d205472616e73616374696f6e73204d6f64756c650a636f6e7374206d6f64756c65203d202866756e6374696f6e2829207b0a2775736520737472696374273b0a7661722044203d2077696e646f772e4465726f4578706c6f7265722c2053203d20442e73746174652c2055203d20442e7574696c732c207569203d20442e75692c2052203d20442e726f757465722c204d203d20442e6d6f64756c65733b0a766172205458203d207b205052454d494e453a20275052454d494e45272c20524547495354524154494f4e3a2027524547495354524154494f4e272c20434f494e424153453a2027434f494e42415345272c204e4f524d414c3a20274e4f524d414c272c204255524e5f54583a20274255524e5f5458272c2053435f54583a202753435f545827207d3b0a7661722054203d207b20706f6f6c496e74657276616c3a206e756c6c2c2063616368653a206e6577204d617028292c206d617843616368653a203530207d3b0a0a66756e6374696f6e20696e69742829207b0a202077696e646f772e6164644576656e744c697374656e657228276578706c6f7265723a766965774368616e6765272c2068616e646c6556696577293b0a202077696e646f772e6164644576656e744c697374656e657228276578706c6f7265723a636f6e6e6563746564272c2066756e6374696f6e2829207b2069662028532e63757272656e7456696577203d3d3d202764617368626f6172642729206c6f61644d656d706f6f6c28293b207d293b0a7d0a0a66756e6374696f6e2068616e646c6556696577286529207b0a20207661722076203d20652e64657461696c2e766965772c2070203d20652e64657461696c2e706172616d3b0a20206966202876203d3d3d2027706f6f6c27292072656e646572506f6f6c5669657728293b0a2020656c7365206966202876203d3d3d2027747844657461696c272026262070292072656e646572547844657461696c2870293b0a2020656c7365206966202876203d3d3d202764617368626f6172642729206c6f61644d656d706f6f6c28293b0a2020696620287620213d3d2027706f6f6c2720262620542e706f6f6c496e74657276616c29207b20636c656172496e74657276616c28542e706f6f6c496e74657276616c293b20542e706f6f6c496e74657276616c203d206e756c6c3b207d0a7d0a0a66756e6374696f6e206465746563745479706528747829207b0a202069662028217478292072657475726e2027554e4b4e4f574e273b0a20206966202874782e7472616e73616374696f6e5f74797065292072657475726e2074782e7472616e73616374696f6e5f747970652e746f55707065724361736528293b0a20206966202874782e636f696e62617365292072657475726e2054582e434f494e424153453b0a20206966202874782e73635f64617461207c7c2074782e736364617461292072657475726e2054582e53435f54583b0a20206966202874782e6275726e5f76616c75652026262074782e6275726e5f76616c7565203e2030292072657475726e2054582e4255524e5f54583b0a202072657475726e2054582e4e4f524d414c3b0a7d0a0a66756e6374696f6e20747970654261646765287429207b0a20206966202874203d3d3d2054582e434f494e42415345292072657475726e202762616467652d6f6b273b0a20206966202874203d3d3d2054582e53435f5458292072657475726e202762616467652d6c697665273b0a20206966202874203d3d3d2054582e4255524e5f5458292072657475726e202762616467652d657272273b0a20206966202874203d3d3d2054582e524547495354524154494f4e292072657475726e202762616467652d6e6577273b0a202072657475726e202762616467652d70656e64696e67273b0a7d0a0a6173796e632066756e6374696f6e206c6f61644d656d706f6f6c2829207b0a202076617220656c203d20646f63756d656e742e676574456c656d656e744279496428276d656d706f6f6c2d6c69737427292c206261646765203d20646f63756d656e742e676574456c656d656e74427949642827706f6f6c2d626164676527293b0a20206966202821656c292072657475726e3b0a2020747279207b0a2020202076617220636f6e6e203d204d2e6765742827636f6e6e656374697669747927293b0a202020206966202821636f6e6e29207468726f77206e6577204572726f7228274e6f20636f6e6e656374697669747927293b0a2020202076617220706f6f6c203d20617761697420636f6e6e2e6765745478506f6f6c28292c20747873203d20706f6f6c2e747873207c7c205b5d3b0a20202020696620286261646765292062616467652e74657874436f6e74656e74203d207478732e6c656e677468202b20272050454e44494e47273b0a20202020696620287478732e6c656e677468203d3d3d203029207b20656c2e696e6e657248544d4c203d20273c64697620636c6173733d22656d7074792d7374617465223e3c64697620636c6173733d22656d7074792d69636f6e223e2a3c2f6469763e3c703e4d656d706f6f6c20697320656d707479202d20616c6c207472616e73616374696f6e7320636f6e6669726d65643c2f703e3c2f6469763e273b2072657475726e3b207d0a20202020656c2e696e6e657248544d4c203d2072656e646572506f6f6c4c697374287478732e736c69636528302c20313029293b0a20207d20636174636820286529207b7d0a7d0a0a6173796e632066756e6374696f6e2072656e646572506f6f6c566965772829207b0a202076617220656c203d20646f63756d656e742e676574456c656d656e74427949642827766965772d706f6f6c27293b0a20206966202821656c292072657475726e3b0a2020656c2e696e6e657248544d4c203d20273c64697620636c6173733d2273656374696f6e2d63617264223e27202b2075692e73656374696f6e486561646572287b2069636f6e3a20275b545d272c207469746c653a20275472616e73616374696f6e20506f6f6c20284d656d706f6f6c29272c2062616467653a207b20746578743a20274c495645272c20636c6173733a202762616467652d6c69766527207d207d29202b0a20202020273c64697620636c6173733d2273656374696f6e2d636f6e74656e74223e3c6469762069643d22706f6f6c2d66756c6c2d6c697374223e3c64697620636c6173733d226c6f6164696e672d7374617465223e3c64697620636c6173733d226c6f6164696e672d7370696e6e6572223e3c2f6469763e3c7370616e3e4c6f6164696e67206d656d706f6f6c2e2e2e3c2f7370616e3e3c2f6469763e3c2f6469763e3c2f6469763e3c2f6469763e273b0a20206177616974206c6f616446756c6c506f6f6c28293b0a2020542e706f6f6c496e74657276616c203d20736574496e74657276616c286c6f616446756c6c506f6f6c2c203130303030293b0a7d0a0a6173796e632066756e6374696f6e206c6f616446756c6c506f6f6c2829207b0a202076617220656c203d20646f63756d656e742e676574456c656d656e74427949642827706f6f6c2d66756c6c2d6c69737427293b0a20206966202821656c292072657475726e3b0a2020747279207b0a2020202076617220636f6e6e203d204d2e6765742827636f6e6e656374697669747927292c20706f6f6c203d20617761697420636f6e6e2e6765745478506f6f6c28292c20747873203d20706f6f6c2e747873207c7c205b5d3b0a20202020696620287478732e6c656e677468203d3d3d203029207b20656c2e696e6e657248544d4c203d20273c64697620636c6173733d22656d7074792d7374617465223e3c64697620636c6173733d22656d7074792d69636f6e223e2a3c2f6469763e3c703e4d656d706f6f6c20697320656d7074793c2f703e3c7020636c6173733d22746578742d6d75746564223e416c6c207472616e73616374696f6e732068617665206265656e20636f6e6669726d65643c2f703e3c2f6469763e273b2072657475726e3b207d0a20202020656c2e696e6e657248544d4c203d20273c64697620636c6173733d22706f6f6c2d7374617473223e3c7370616e20636c6173733d22706f6f6c2d73746174223e3c7374726f6e673e27202b207478732e6c656e677468202b20273c2f7374726f6e673e2070656e64696e67207472616e73616374696f6e733c2f7370616e3e3c2f6469763e27202b2072656e646572506f6f6c4c69737428747873293b0a20207d20636174636820286529207b20656c2e696e6e657248544d4c203d20273c64697620636c6173733d22656d7074792d7374617465223e3c703e4661696c656420746f206c6f6164206d656d706f6f6c3c2f703e3c2f6469763e273b207d0a7d0a0a66756e6374696f6e2072656e646572506f6f6c4c6973742874787329207b0a202072657475726e20273c64697620636c6173733d2274782d6c697374223e27202b207478732e6d61702866756e6374696f6e286829207b0a2020202072657475726e20273c64697620636c6173733d2274782d6974656d22206f6e636c69636b3d22766965775478285c2727202b2068202b20275c2729223e3c64697620636c6173733d2274782d6974656d2d6c656674223e3c7370616e20636c6173733d2274782d747970652062616467652062616467652d70656e64696e67223e50454e44494e473c2f7370616e3e3c7370616e20636c6173733d2274782d68617368206d6f6e6f223e27202b20552e7472756e634861736828682c2031362c20313229202b20273c2f7370616e3e3c2f6469763e3c64697620636c6173733d2274782d6974656d2d7269676874223e3c7370616e20636c6173733d2274782d616374696f6e223e56696577202667743b3c2f7370616e3e3c2f6469763e3c2f6469763e273b0a20207d292e6a6f696e28272729202b20273c2f6469763e273b0a7d0a0a6173796e632066756e6374696f6e2072656e646572547844657461696c287478696429207b0a202076617220656c203d20646f63756d656e742e676574456c656d656e74427949642827766965772d747844657461696c27293b0a20206966202821656c29207b20766172206d61696e203d20646f63756d656e742e676574456c656d656e744279496428276d61696e2d636f6e74656e7427293b20656c203d20646f63756d656e742e637265617465456c656d656e74282764697627293b20656c2e6964203d2027766965772d747844657461696c273b206d61696e2e617070656e644368696c6428656c293b207d0a2020656c2e636c6173734c6973742e72656d6f7665282768696464656e27293b0a202075692e73686f774c6f6164696e6728656c2c20274c6f6164696e67207472616e73616374696f6e2e2e2e27293b0a2020747279207b0a2020202076617220636f6e6e203d204d2e6765742827636f6e6e656374697669747927292c2074783b0a2020202069662028636f6e6e2e686173456e68616e6365644665617475726573282929207478203d20617761697420636f6e6e2e6765745472616e73616374696f6e5769746852696e67732874786964293b0a20202020656c7365207478203d20617761697420636f6e6e2e6765745472616e73616374696f6e2874786964293b0a202020206966202821747829207468726f77206e6577204572726f7228275472616e73616374696f6e206e6f7420666f756e6427293b0a20202020656c2e696e6e657248544d4c203d2072656e646572547848544d4c2874782c20636f6e6e2e686173456e68616e63656446656174757265732829293b0a20207d20636174636820286529207b2075692e73686f774572726f7228656c2c20275472616e73616374696f6e204e6f7420466f756e64272c20652e6d657373616765293b207d0a7d0a0a66756e6374696f6e2072656e646572547848544d4c2874782c20656e68616e63656429207b0a20207661722074797065203d2064657465637454797065287478292c20636c73203d207479706542616467652874797065292c20636f6e66203d2074782e626c6f636b5f6865696768742026262074782e626c6f636b5f686569676874203e20303b0a202072657475726e20273c64697620636c6173733d2264657461696c2d76696577223e3c64697620636c6173733d2264657461696c2d6e6176223e3c627574746f6e20636c6173733d2262746e2062746e2d67686f737422206f6e636c69636b3d22676f4261636b2829223e266c743b204261636b3c2f627574746f6e3e3c2f6469763e27202b0a20202020273c64697620636c6173733d2273656374696f6e2d63617264223e27202b2075692e73656374696f6e486561646572287b2069636f6e3a20275b545d272c207469746c653a20275472616e73616374696f6e272c2062616467653a207b20746578743a20636f6e66203f2027434f4e4649524d454427203a202750454e44494e47272c20636c6173733a20636f6e66203f202762616467652d6f6b27203a202762616467652d70656e64696e6727207d207d29202b0a20202020273c64697620636c6173733d2273656374696f6e2d636f6e74656e74223e3c64697620636c6173733d2264657461696c2d67726964223e3c64697620636c6173733d2264657461696c2d636f6c756d6e223e3c683420636c6173733d2264657461696c2d7375627469746c65223e5472616e73616374696f6e20496e666f726d6174696f6e3c2f68343e27202b0a2020202075692e64657461696c526f77282754584944272c2074782e74786964207c7c2074782e686173682c207b206d6f6e6f3a20747275652c20636f707961626c653a2074727565207d29202b0a2020202075692e64657461696c526f77282754797065272c20273c7370616e20636c6173733d2262616467652027202b20636c73202b2027223e27202b2074797065202b20273c2f7370616e3e2729202b0a202020202874782e626c6f636b5f686569676874203f2075692e64657461696c526f772827426c6f636b20486569676874272c20552e666d744e756d2874782e626c6f636b5f6865696768742929203a20272729202b0a202020202874782e626c6f636b5f74696d657374616d70203f2075692e64657461696c526f77282754696d65272c20552e666d744c6f63616c54696d652874782e626c6f636b5f74696d657374616d702929203a20272729202b0a202020202874782e626c6f636b5f74696d657374616d70203f2075692e64657461696c526f772827416765272c20552e666d744167652874782e626c6f636b5f74696d657374616d702929203a20272729202b0a20202020273c2f6469763e3c64697620636c6173733d2264657461696c2d636f6c756d6e223e3c683420636c6173733d2264657461696c2d7375627469746c65223e5472616e73616374696f6e20446174613c2f68343e27202b0a202020202874782e73697a65203f2075692e64657461696c526f77282753697a65272c20552e666d7442797465732874782e73697a652929203a20272729202b0a202020202874782e66656520213d3d20756e646566696e6564203f2075692e64657461696c526f772827466565272c20552e666d744445524f2874782e66656529202b2027204445524f2729203a20272729202b0a202020202874782e6275726e5f76616c7565203f2075692e64657461696c526f7728274275726e272c20552e666d744445524f2874782e6275726e5f76616c756529202b2027204445524f2729203a20272729202b0a202020202874782e72696e675f73697a65203f2075692e64657461696c526f77282752696e672053697a65272c2074782e72696e675f73697a652e746f537472696e67282929203a20272729202b0a202020202874782e646573745f706f7274203f2075692e64657461696c526f7728274465737420506f7274272c2074782e646573745f706f72742e746f537472696e67282929203a20272729202b0a20202020273c2f6469763e3c2f6469763e3c2f6469763e3c2f6469763e27202b0a202020202874797065203d3d3d2054582e53435f5458203f2072656e646572534328747829203a20272729202b2072656e64657252696e672874782c20656e68616e63656429202b2072656e64657250726f6f662874782e74786964207c7c2074782e686173682c20656e68616e63656429202b20273c2f6469763e273b0a7d0a0a66756e6374696f6e2072656e646572534328747829207b0a20207661722073636964203d2074782e73636964207c7c206578747261637453434944287478292c206570203d2074782e656e747279706f696e74207c7c20657874726163744550287478293b0a2020696620282173636964292072657475726e2027273b0a202072657475726e20273c64697620636c6173733d2273656374696f6e2d63617264223e27202b2075692e73656374696f6e486561646572287b2069636f6e3a20275b53435d272c207469746c653a2027536d61727420436f6e747261637420496e746572616374696f6e27207d29202b0a20202020273c64697620636c6173733d2273656374696f6e2d636f6e74656e74223e27202b2075692e64657461696c526f77282753434944272c20736369642c207b206d6f6e6f3a20747275652c20636f707961626c653a2074727565207d29202b0a20202020286570203f2075692e64657461696c526f77282746756e6374696f6e272c20657029203a20272729202b0a202020202874782e73635f61726773203f20273c646976207374796c653d226d617267696e2d746f703a766172282d2d732d3429223e3c683420636c6173733d2264657461696c2d7375627469746c65223e417267756d656e74733c2f68343e3c64697620636c6173733d2273632d61726773223e27202b2072656e646572417267732874782e73635f6172677329202b20273c2f6469763e3c2f6469763e27203a20272729202b0a20202020273c646976207374796c653d226d617267696e2d746f703a766172282d2d732d3429223e3c627574746f6e20636c6173733d2262746e2062746e2d67686f737422206f6e636c69636b3d22766965775343285c2727202b2073636964202b20275c2729223e5669657720436f6e7472616374202667743b3c2f627574746f6e3e3c2f6469763e3c2f6469763e3c2f6469763e273b0a7d0a0a66756e6374696f6e20657874726163745343494428747829207b0a20206966202874782e73636964292072657475726e2074782e736369643b0a20206966202874782e73635f6172677329207b207661722061203d2074782e73635f617267732e66696e642866756e6374696f6e287829207b2072657475726e20782e6e616d652026262028782e6e616d652e746f4c6f776572436173652829203d3d3d2027736327207c7c20782e6e616d652e746f4c6f776572436173652829203d3d3d20277363696427293b207d293b206966202861292072657475726e20612e76616c75653b207d0a202072657475726e206e756c6c3b0a7d0a0a66756e6374696f6e2065787472616374455028747829207b0a20206966202874782e656e747279706f696e74292072657475726e2074782e656e747279706f696e743b0a20206966202874782e73635f6172677329207b207661722061203d2074782e73635f617267732e66696e642866756e6374696f6e287829207b2072657475726e20782e6e616d652026262028782e6e616d652e746f4c6f776572436173652829203d3d3d2027656e747279706f696e7427207c7c20782e6e616d652e746f4c6f776572436173652829203d3d3d202766756e6374696f6e27293b207d293b206966202861292072657475726e20612e76616c75653b207d0a202072657475726e206e756c6c3b0a7d0a0a66756e6374696f6e2072656e64657241726773286172677329207b0a2020696620282161726773207c7c2021617267732e6c656e677468292072657475726e20273c7370616e20636c6173733d22746578742d6d75746564223e4e6f20617267756d656e74733c2f7370616e3e273b0a202072657475726e20273c64697620636c6173733d22617267732d6c697374223e27202b20617267732e6d61702866756e6374696f6e286129207b0a2020202072657475726e20273c64697620636c6173733d226172672d6974656d223e3c7370616e20636c6173733d226172672d6e616d65223e27202b20552e65736348746d6c28612e6e616d65207c7c2027756e6e616d65642729202b20273c2f7370616e3e3c7370616e20636c6173733d226172672d74797065223e27202b2028612e6461746174797065207c7c20612e74797065207c7c20273f2729202b20273c2f7370616e3e3c7370616e20636c6173733d226172672d76616c7565206d6f6e6f223e27202b20552e65736348746d6c28537472696e6728612e76616c7565207c7c2027272929202b20273c2f7370616e3e3c2f6469763e273b0a20207d292e6a6f696e28272729202b20273c2f6469763e273b0a7d0a0a66756e6374696f6e2072656e64657252696e672874782c20656e68616e63656429207b0a20207661722072696e67203d2074782e72696e67207c7c206578747261637452696e67287478292c2073697a65203d2074782e72696e675f73697a65207c7c202872696e67203f2072696e672e6c656e677468203a2030293b0a2020696620282172696e67207c7c2072696e672e6c656e677468203d3d3d203029207b0a202020206966202873697a65203e2030292072657475726e20273c64697620636c6173733d2273656374696f6e2d63617264223e27202b2075692e73656374696f6e486561646572287b2069636f6e3a20275b525d272c207469746c653a202752696e67205369676e6174757265272c2062616467653a207b20746578743a202753495a452027202b2073697a652c20636c6173733a202762616467652d70656e64696e6727207d207d29202b0a202020202020273c64697620636c6173733d2273656374696f6e2d636f6e74656e74223e3c7020636c6173733d22746578742d6d7574656420746578742d736d223e52696e672073697a653a2027202b2073697a65202b2027206d656d626572732e2052696e672064617461206e6f7420696e636c7564656420696e2074686973207472616e73616374696f6e20726573706f6e73652e3c2f703e3c7020636c6173733d22746578742d6d7574656420746578742d736d22207374796c653d226d617267696e2d746f703a766172282d2d732d3229223e52696e67207369676e6174757265732070726f76696465207472616e73616374696f6e2070726976616379206279206d6978696e6720796f757220696e7075742077697468206465636f7920696e707574732066726f6d206f74686572207472616e73616374696f6e732e3c2f703e3c2f6469763e3c2f6469763e273b0a2020202072657475726e2027273b0a20207d0a202072657475726e20273c64697620636c6173733d2273656374696f6e2d63617264223e27202b2075692e73656374696f6e486561646572287b2069636f6e3a20275b525d272c207469746c653a202752696e67204d656d62657273202827202b2072696e672e6c656e677468202b202729272c2062616467653a207b20746578743a202750524956414359272c20636c6173733a202762616467652d6f6b27207d207d29202b0a20202020273c64697620636c6173733d2273656374696f6e2d636f6e74656e74223e3c7020636c6173733d2272696e672d6578706c616e6174696f6e20746578742d6d7574656420746578742d736d22207374796c653d226d617267696e2d626f74746f6d3a766172282d2d732d3429223e52696e67207369676e6174757265732070726f76696465207472616e73616374696f6e2070726976616379206279206d6978696e6720796f757220696e70757420776974682027202b202872696e672e6c656e677468202d203129202b2027206465636f7920696e707574732066726f6d206f74686572207472616e73616374696f6e732e3c2f703e27202b2072656e64657252696e674d656d626572732872696e6729202b20273c2f6469763e3c2f6469763e273b0a7d0a0a66756e6374696f6e206578747261637452696e6728747829207b0a20206966202874782e72696e67292072657475726e2074782e72696e673b0a20206966202874782e7061796c6f6164732026262074782e7061796c6f6164735b305d3f2e72696e67292072657475726e2074782e7061796c6f6164735b305d2e72696e673b0a202072657475726e206e756c6c3b0a7d0a0a66756e6374696f6e2072656e64657252696e674d656d626572732872696e6729207b0a2020766172206d6178203d2031362c2064697370203d2072696e672e736c69636528302c206d6178292c2072656d203d2072696e672e6c656e677468202d206d61783b0a20207661722068746d6c203d20273c64697620636c6173733d2272696e672d6d656d62657273223e273b0a2020646973702e666f72456163682866756e6374696f6e286d2c206929207b0a202020207661722064203d2041727261792e69734172726179286d29203f206d5b305d203a206d3b0a2020202068746d6c202b3d20273c64697620636c6173733d2272696e672d6d656d626572223e3c7370616e20636c6173733d2272696e672d696e646578223e5b27202b2069202b20275d3c2f7370616e3e3c636f646520636c6173733d2272696e672d6b6579223e27202b20552e7472756e634861736828642c2031322c203829202b20273c2f636f64653e3c2f6469763e273b0a20207d293b0a20206966202872656d203e2030292068746d6c202b3d20273c64697620636c6173733d2272696e672d6d6f726520746578742d6d75746564223e2e2e2e20616e642027202b2072656d202b2027206d6f7265206d656d626572733c2f6469763e273b0a202072657475726e2068746d6c202b20273c2f6469763e273b0a7d0a0a66756e6374696f6e2072656e64657250726f6f6628747869642c20656e68616e63656429207b0a2020766172206964203d20747869642e736c69636528302c2038293b0a20206966202821656e68616e636564292072657475726e20273c64697620636c6173733d2273656374696f6e2d63617264223e27202b2075692e73656374696f6e486561646572287b2069636f6e3a20275b505d272c207469746c653a2027566572696679205061796d656e742050726f6f66272c2062616467653a207b20746578743a20274241434b454e44205245515549524544272c20636c6173733a202762616467652d70656e64696e6727207d207d29202b0a20202020273c64697620636c6173733d2273656374696f6e2d636f6e74656e74223e3c64697620636c6173733d2270726f6f662d6c696d69746564223e3c7020636c6173733d22746578742d6d75746564223e50726f6f662076616c69646174696f6e2072657175697265732061206261636b656e64207468617420737570706f7274732063727970746f6772617068696320766572696669636174696f6e2028476f206e617469766520636f6465292e205468697320697320617661696c61626c65207768656e2072756e6e696e6720746865206578706c6f72657220696e20484f4c4f4752414d206f7220776974682061206c6f63616c206578706c6f726572207468617420737570706f7274732070726f6f662076616c69646174696f6e2e3c2f703e3c2f6469763e3c2f6469763e3c2f6469763e273b0a202072657475726e20273c64697620636c6173733d2273656374696f6e2d63617264223e27202b2075692e73656374696f6e486561646572287b2069636f6e3a20275b505d272c207469746c653a2027566572696679205061796d656e742050726f6f6627207d29202b0a20202020273c64697620636c6173733d2273656374696f6e2d636f6e74656e74223e3c7020636c6173733d22746578742d6d7574656420746578742d736d22207374796c653d226d617267696e2d626f74746f6d3a766172282d2d732d3429223e456e7465722061204445524f2070726f6f6620746f207665726966792069662074686973207472616e73616374696f6e2073656e742066756e647320746f20796f752e3c2f703e27202b0a20202020273c64697620636c6173733d2270726f6f662d666f726d223e3c74657874617265612069643d2270726f6f662d696e7075742d27202b206964202b20272220636c6173733d2270726f6f662d74657874617265612220706c616365686f6c6465723d225061737465206465726f70726f6f6631712e2e2e20686572652220726f77733d2234223e3c2f74657874617265613e27202b0a20202020273c627574746f6e20636c6173733d2262746e2062746e2d7072696d61727922206f6e636c69636b3d224465726f4578706c6f7265722e6d6f64756c65732e676574285c277472616e73616374696f6e735c27292e76616c696461746550726f6f66285c2727202b2074786964202b20275c2729223e56616c69646174652050726f6f663c2f627574746f6e3e3c2f6469763e27202b0a20202020273c6469762069643d2270726f6f662d726573756c742d27202b206964202b202722207374796c653d226d617267696e2d746f703a766172282d2d732d3429223e3c2f6469763e3c2f6469763e3c2f6469763e273b0a7d0a0a6173796e632066756e6374696f6e2076616c696461746550726f6f66287478696429207b0a2020766172206964203d20747869642e736c69636528302c2038292c20696e70203d20646f63756d656e742e676574456c656d656e7442794964282770726f6f662d696e7075742d27202b206964292c20726573203d20646f63756d656e742e676574456c656d656e7442794964282770726f6f662d726573756c742d27202b206964293b0a20206966202821696e70207c7c2021726573292072657475726e3b0a20207661722070726f6f66203d20696e702e76616c75652e7472696d28293b0a2020696620282170726f6f6629207b207265732e696e6e657248544d4c203d20273c64697620636c6173733d2270726f6f662d6572726f72223e506c6561736520656e74657220612070726f6f6620737472696e673c2f6469763e273b2072657475726e3b207d0a20207265732e696e6e657248544d4c203d20273c64697620636c6173733d2270726f6f662d6c6f6164696e67223e3c64697620636c6173733d226c6f6164696e672d7370696e6e657222207374796c653d2277696474683a313670783b6865696768743a31367078223e3c2f6469763e56616c69646174696e672e2e2e3c2f6469763e273b0a2020747279207b0a2020202076617220636f6e6e203d204d2e6765742827636f6e6e656374697669747927292c2072203d20617761697420636f6e6e2e76616c696461746550726f6f662870726f6f662c2074786964293b0a2020202069662028722e76616c696429207265732e696e6e657248544d4c203d20273c64697620636c6173733d2270726f6f662d76616c6964223e3c64697620636c6173733d2270726f6f662d686561646572223e5b4f4b5d2050726f6f662056616c69643c2f6469763e3c64697620636c6173733d2270726f6f662d64657461696c73223e27202b2075692e64657461696c526f772827526563697069656e74272c20552e7472756e634861736828722e616464726573732c2031362c203132292c207b206d6f6e6f3a2074727565207d29202b2075692e64657461696c526f772827416d6f756e74272c20552e666d744445524f28722e616d6f756e7429202b2027204445524f2729202b2028722e7061796c6f6164203f2075692e64657461696c526f7728275061796c6f6164272c20722e7061796c6f616429203a20272729202b20273c2f6469763e3c2f6469763e273b0a20202020656c7365207265732e696e6e657248544d4c203d20273c64697620636c6173733d2270726f6f662d696e76616c6964223e3c64697620636c6173733d2270726f6f662d686561646572223e5b585d2050726f6f6620496e76616c69643c2f6469763e3c703e27202b2028722e6572726f72207c7c20275468652070726f6f6620636f756c64206e6f742062652076616c69646174656420666f722074686973207472616e73616374696f6e2e2729202b20273c2f703e3c2f6469763e273b0a20207d20636174636820286529207b207265732e696e6e657248544d4c203d20273c64697620636c6173733d2270726f6f662d6572726f72223e4572726f723a2027202b20552e65736348746d6c28652e6d65737361676529202b20273c2f6469763e273b207d0a7d0a0a72657475726e207b20696e69743a20696e69742c206c6f61644d656d706f6f6c3a206c6f61644d656d706f6f6c2c206c6f616446756c6c506f6f6c3a206c6f616446756c6c506f6f6c2c2072656e646572547844657461696c3a2072656e646572547844657461696c2c2076616c696461746550726f6f663a2076616c696461746550726f6f662c206465746563745478547970653a20646574656374547970652c2054585f54595045533a205458207d3b0a7d2928293b0a0a2a2f6a53435f414354494f4e55010cde070a6430c9c7b235e6d0e5e0989a92df688bb96de2fd495182699b6f2968011eac0349d0553b133c1d71b9edaac5bdcab320cbd0c3d97d8fc0d773de58b0a501146bed9f8b3bdca13df6290499ce970e3589a28d18cccc4178ef7e4e6849820200128534ae0775a0158b0101544098f8c68e10916f585a358aa852587a8a36c51e0022d57b5ad9a36cf9086b43a9de226050abc1ab3ad677ebd9875a84b50b55f56e010e65829b6f375d68539918a08e9d58694513432160b8fff230f7571eea790bdd001858c3c7b7ffb6b496aeff98a2f373b27c72c15364783779639f7d6d74eea471012632e4dab39a37b0c4d9c760dac343918653d6de14d52eaa438a554becb2cef90108d16a67bf3602568e973018161ea3c4d6c2e7dcac7f60bf937105528ce7332f002be75b7d372d9f2f0ac7c9ad3af979be97a67ba9bdd67df812b00e7a317a7d7a0027261faeb3ae31417bcaa0b36a9720200f378a84faf0d2c5beb442a2928081170112f98ba528161522a08e324d2aca27693f48994bfea5900a46534db230ff881300023893d3ee2dd65330468e243d43d5a3fc2d047810ed1070ef523c99d7950261010df65139db001d9dc6e73abf5b028a47e3c56159f7aab44f31e1a987ea4417880000000000000000000000000000000000000000000000000000000000000000011627517fb6da742a12f725fa1f29401eaca260ec651809c2258c0ee57a4b39100607da61556d326b0c81caceb8abf757b152027a02c0f0282fcac6160901b4012f88e9517b9224a8aaf66ffd97359d3bca8775fde6f82e68f93d82931e9635fa00282bd9ac034a2f0a819baf299eacd9117da4d9f772a65cbf779a5bd63f79e13701699dc517bd638dc7c2d394daf65667c5bd536ce73ae3d0452617223287f53108748d7f0e299d510e3bb18133c5a555c2f8ba3a54260a78aa8b9bd9e83cd595118520624b17aacd8aad6ef674722e921e06c3b90ccda970743cb77c66d0bbdc2e2c5330e5c13fa3cbce0c6dc6e6ab9b9a6c095df6378238b8980916a966d8ae031c5831e7fd3e27c4943a4a7e69aaeb37a149773151ea74e3c70c9373c119a52eef5f1c62e1e97ea67c5b5a286a060d120622f17c048806225de4e8e47dadb826e3148326e38b37bfbd536c6fc49d5dc100d14a3782e9d0a064edd714dfa3de07a1c4c89ee6c3faffc6bd5d4c8280c07359104852d3d14512aac8bdbf5481382b2d66ad95167d0dc3cbf9b31a9a34a581210dc46c64cae12a6f74a4d87ac02f0012c9d18459489bbbb462e7f388e8a227a61cdf8b88f0d157200e2d157bb34737011ed7889b35b667ce254d1c96a71af27186bf14704b7716d09a525746b9c092f401165954f189f0c48c44618828d60df2fb9f226b29848ed13c4b12cb78089e78540003581a63c24ac78e70bbd1f56975434bc3dc9c37dbaa8607233fc12af9b8c7ed011ba12cb7e4ab425d0a82471489c6cf2598389f8cd3c945588337f612dcd5209b011f548d4d454473492acb80c878ad20c62a13853a48edc1de25b41826b0f9eb0b000e857281c4bf0d28806a54cf16948208cebd9321103f39a6a8e9e06dcaf429f5012015f81f095c885a1ee43082fdfb78903311fca5a8ad7aaa87f946c2a1c1377400128770ac2fe42b8f0a7a49443a8aef01b91919678ef9bd31ec7f9251190a39f901058178512faeb1d96965ad18ef292100461cc710d1b47cadccb2071f0d8ef9bd0012825a31a34ef7fc05009581a25a86703d2e19269afd87a9393cf9ce8ac8e2c801105e9195f6c1605c5224d4ed904b3e07adc527c6c06c7b73b2a7dd0ca3bb03770114fbb89f23ff5ee4cec88a1fad5486e68dbbd2110ff10e913efcdf45d4a935be00
DERO explorer source code | explorer version (api): under development (1.0) | dero version: golang pre-alpha | Copyright 2017-2022 Dero Project