logo DERO HE BlockChain Explorer(v1) Mainnet

Tx hash: 9bf54b18c3677e4bd5a5c4c9f47c2faf5a4c75cef0c90b1d9c32c0553edb3fdb Type SC

Block: 0a1e90a2abaea36954062022fdba1247eb1e49c155dcbdc29d8b1f9ae1b4d4e5 (VALID)
SCID current reserves
SCID Amount(in atomic units)
0000000000000000000000000000000000000000000000000000000000000000 0
SCID string variables
key value
C 46756e6374696f6e20496e697469616c697a655072697661746528292055696e7436340a313020494620696e69742829203d3d2030205448454e20474f544f2033300a32302052455455524e20310a33302053544f524528227661725f6865616465725f6e616d65222c20227472616e73616374696f6e732e6a7322290a33312053544f524528227661725f6865616465725f6465736372697074696f6e222c202222290a33322053544f524528227661725f6865616465725f69636f6e222c202222290a33332053544f524528226455524c222c202222290a33342053544f52452822646f6354797065222c202254454c412d4a532d3122290a33352053544f52452822737562446972222c20222f22290a33362053544f5245282266696c65436865636b43222c20223235353633626666643165643435666662366664376136643332633830366532626231353639353938666135366133346162653434626466623831313130613722290a33372053544f5245282266696c65436865636b53222c20223230613232306634333062666236626430633630373539363563313964353938323332383137633165303433626530633534333165666135613366383265366222290a3130302052455455524e20300a456e642046756e6374696f6e0a0a46756e6374696f6e20696e697428292055696e7436340a31302049462045584953545328226f776e65722229203d3d2030205448454e20474f544f2033300a32302052455455524e20310a33302053544f524528226f776e6572222c20616464726573732829290a35302053544f52452822646f6356657273696f6e222c2022312e302e3022290a36302053544f5245282268617368222c204845582854584944282929290a37302053544f524528226c696b6573222c2030290a38302053544f524528226469736c696b6573222c2030290a3130302052455455524e20300a456e642046756e6374696f6e0a0a46756e6374696f6e2061646472657373282920537472696e670a31302044494d207320617320537472696e670a3230204c45542073203d205349474e455228290a33302049462049535f414444524553535f56414c4944287329205448454e20474f544f2035300a34302052455455524e2022616e6f6e220a35302052455455524e20414444524553535f535452494e472873290a456e642046756e6374696f6e0a0a46756e6374696f6e205261746528722055696e743634292055696e7436340a31302044494d206164647220617320537472696e670a3135204c45542061646472203d206164647265737328290a31362049462072203c2031303020262620455849535453286164647229203d3d2030202626206164647220213d2022616e6f6e22205448454e20474f544f2033300a32302052455455524e20310a33302053544f524528616464722c2022222b722b225f222b424c4f434b5f4845494748542829290a34302049462072203c203530205448454e20474f544f2037300a35302053544f524528226c696b6573222c204c4f414428226c696b657322292b31290a36302052455455524e20300a37302053544f524528226469736c696b6573222c204c4f414428226469736c696b657322292b31290a3130302052455455524e20300a456e642046756e6374696f6e0a0a2f2a0a2f2f204445524f204578706c6f7265722076322e30202d205472616e73616374696f6e73204d6f64756c650a636f6e7374206d6f64756c65203d202866756e6374696f6e2829207b0a2775736520737472696374273b0a7661722044203d2077696e646f772e4465726f4578706c6f7265722c2053203d20442e73746174652c2055203d20442e7574696c732c207569203d20442e75692c2052203d20442e726f757465722c204d203d20442e6d6f64756c65733b0a766172205458203d207b205052454d494e453a20275052454d494e45272c20524547495354524154494f4e3a2027524547495354524154494f4e272c20434f494e424153453a2027434f494e42415345272c204e4f524d414c3a20274e4f524d414c272c204255524e5f54583a20274255524e5f5458272c2053435f54583a202753435f545827207d3b0a7661722054203d207b20706f6f6c496e74657276616c3a206e756c6c2c2063616368653a206e6577204d617028292c206d617843616368653a203530207d3b0a0a66756e6374696f6e20696e69742829207b0a202077696e646f772e6164644576656e744c697374656e657228276578706c6f7265723a766965774368616e6765272c2068616e646c6556696577293b0a202077696e646f772e6164644576656e744c697374656e657228276578706c6f7265723a636f6e6e6563746564272c2066756e6374696f6e2829207b2069662028532e63757272656e7456696577203d3d3d202764617368626f6172642729206c6f61644d656d706f6f6c28293b207d293b0a7d0a0a66756e6374696f6e2068616e646c6556696577286529207b0a20207661722076203d20652e64657461696c2e766965772c2070203d20652e64657461696c2e706172616d3b0a20206966202876203d3d3d2027706f6f6c27292072656e646572506f6f6c5669657728293b0a2020656c7365206966202876203d3d3d2027747844657461696c272026262070292072656e646572547844657461696c2870293b0a2020656c7365206966202876203d3d3d202764617368626f6172642729206c6f61644d656d706f6f6c28293b0a2020696620287620213d3d2027706f6f6c2720262620542e706f6f6c496e74657276616c29207b20636c656172496e74657276616c28542e706f6f6c496e74657276616c293b20542e706f6f6c496e74657276616c203d206e756c6c3b207d0a7d0a0a66756e6374696f6e206465746563745479706528747829207b0a202069662028217478292072657475726e2027554e4b4e4f574e273b0a20206966202874782e7472616e73616374696f6e5f74797065292072657475726e2074782e7472616e73616374696f6e5f747970652e746f55707065724361736528293b0a20206966202874782e636f696e62617365292072657475726e2054582e434f494e424153453b0a20206966202874782e73635f64617461207c7c2074782e736364617461292072657475726e2054582e53435f54583b0a20206966202874782e6275726e5f76616c75652026262074782e6275726e5f76616c7565203e2030292072657475726e2054582e4255524e5f54583b0a202072657475726e2054582e4e4f524d414c3b0a7d0a0a66756e6374696f6e20747970654261646765287429207b0a20206966202874203d3d3d2054582e434f494e42415345292072657475726e202762616467652d6f6b273b0a20206966202874203d3d3d2054582e53435f5458292072657475726e202762616467652d6c697665273b0a20206966202874203d3d3d2054582e4255524e5f5458292072657475726e202762616467652d657272273b0a20206966202874203d3d3d2054582e524547495354524154494f4e292072657475726e202762616467652d6e6577273b0a202072657475726e202762616467652d70656e64696e67273b0a7d0a0a6173796e632066756e6374696f6e206c6f61644d656d706f6f6c2829207b0a202076617220656c203d20646f63756d656e742e676574456c656d656e744279496428276d656d706f6f6c2d6c69737427292c206261646765203d20646f63756d656e742e676574456c656d656e74427949642827706f6f6c2d626164676527293b0a20206966202821656c292072657475726e3b0a2020747279207b0a2020202076617220636f6e6e203d204d2e6765742827636f6e6e656374697669747927293b0a202020206966202821636f6e6e29207468726f77206e6577204572726f7228274e6f20636f6e6e656374697669747927293b0a2020202076617220706f6f6c203d20617761697420636f6e6e2e6765745478506f6f6c28292c20747873203d20706f6f6c2e747873207c7c205b5d3b0a20202020696620286261646765292062616467652e74657874436f6e74656e74203d207478732e6c656e677468202b20272050454e44494e47273b0a20202020696620287478732e6c656e677468203d3d3d203029207b20656c2e696e6e657248544d4c203d20273c64697620636c6173733d22656d7074792d7374617465223e3c64697620636c6173733d22656d7074792d69636f6e223e2a3c2f6469763e3c703e4d656d706f6f6c20697320656d707479202d20616c6c207472616e73616374696f6e7320636f6e6669726d65643c2f703e3c2f6469763e273b2072657475726e3b207d0a20202020656c2e696e6e657248544d4c203d2072656e646572506f6f6c4c697374287478732e736c69636528302c20313029293b0a20207d20636174636820286529207b7d0a7d0a0a6173796e632066756e6374696f6e2072656e646572506f6f6c566965772829207b0a202076617220656c203d20646f63756d656e742e676574456c656d656e74427949642827766965772d706f6f6c27293b0a20206966202821656c292072657475726e3b0a2020656c2e696e6e657248544d4c203d20273c64697620636c6173733d2273656374696f6e2d63617264223e27202b2075692e73656374696f6e486561646572287b2069636f6e3a20275b545d272c207469746c653a20275472616e73616374696f6e20506f6f6c20284d656d706f6f6c29272c2062616467653a207b20746578743a20274c495645272c20636c6173733a202762616467652d6c69766527207d207d29202b0a20202020273c64697620636c6173733d2273656374696f6e2d636f6e74656e74223e3c6469762069643d22706f6f6c2d66756c6c2d6c697374223e3c64697620636c6173733d226c6f6164696e672d7374617465223e3c64697620636c6173733d226c6f6164696e672d7370696e6e6572223e3c2f6469763e3c7370616e3e4c6f6164696e67206d656d706f6f6c2e2e2e3c2f7370616e3e3c2f6469763e3c2f6469763e3c2f6469763e3c2f6469763e273b0a20206177616974206c6f616446756c6c506f6f6c28293b0a2020542e706f6f6c496e74657276616c203d20736574496e74657276616c286c6f616446756c6c506f6f6c2c203130303030293b0a7d0a0a6173796e632066756e6374696f6e206c6f616446756c6c506f6f6c2829207b0a202076617220656c203d20646f63756d656e742e676574456c656d656e74427949642827706f6f6c2d66756c6c2d6c69737427293b0a20206966202821656c292072657475726e3b0a2020747279207b0a2020202076617220636f6e6e203d204d2e6765742827636f6e6e656374697669747927292c20706f6f6c203d20617761697420636f6e6e2e6765745478506f6f6c28292c20747873203d20706f6f6c2e747873207c7c205b5d3b0a20202020696620287478732e6c656e677468203d3d3d203029207b20656c2e696e6e657248544d4c203d20273c64697620636c6173733d22656d7074792d7374617465223e3c64697620636c6173733d22656d7074792d69636f6e223e2a3c2f6469763e3c703e4d656d706f6f6c20697320656d7074793c2f703e3c7020636c6173733d22746578742d6d75746564223e416c6c207472616e73616374696f6e732068617665206265656e20636f6e6669726d65643c2f703e3c2f6469763e273b2072657475726e3b207d0a20202020656c2e696e6e657248544d4c203d20273c64697620636c6173733d22706f6f6c2d7374617473223e3c7370616e20636c6173733d22706f6f6c2d73746174223e3c7374726f6e673e27202b207478732e6c656e677468202b20273c2f7374726f6e673e2070656e64696e67207472616e73616374696f6e733c2f7370616e3e3c2f6469763e27202b2072656e646572506f6f6c4c69737428747873293b0a20207d20636174636820286529207b20656c2e696e6e657248544d4c203d20273c64697620636c6173733d22656d7074792d7374617465223e3c703e4661696c656420746f206c6f6164206d656d706f6f6c3c2f703e3c2f6469763e273b207d0a7d0a0a66756e6374696f6e2072656e646572506f6f6c4c6973742874787329207b0a202072657475726e20273c64697620636c6173733d2274782d6c697374223e27202b207478732e6d61702866756e6374696f6e286829207b0a2020202072657475726e20273c64697620636c6173733d2274782d6974656d22206f6e636c69636b3d22766965775478285c2727202b2068202b20275c2729223e3c64697620636c6173733d2274782d6974656d2d6c656674223e3c7370616e20636c6173733d2274782d747970652062616467652062616467652d70656e64696e67223e50454e44494e473c2f7370616e3e3c7370616e20636c6173733d2274782d68617368206d6f6e6f223e27202b20552e7472756e634861736828682c2031362c20313229202b20273c2f7370616e3e3c2f6469763e3c64697620636c6173733d2274782d6974656d2d7269676874223e3c7370616e20636c6173733d2274782d616374696f6e223e56696577202667743b3c2f7370616e3e3c2f6469763e3c2f6469763e273b0a20207d292e6a6f696e28272729202b20273c2f6469763e273b0a7d0a0a6173796e632066756e6374696f6e2072656e646572547844657461696c287478696429207b0a202076617220656c203d20646f63756d656e742e676574456c656d656e74427949642827766965772d747844657461696c27293b0a20206966202821656c29207b20766172206d61696e203d20646f63756d656e742e676574456c656d656e744279496428276d61696e2d636f6e74656e7427293b20656c203d20646f63756d656e742e637265617465456c656d656e74282764697627293b20656c2e6964203d2027766965772d747844657461696c273b206d61696e2e617070656e644368696c6428656c293b207d0a2020656c2e636c6173734c6973742e72656d6f7665282768696464656e27293b0a202075692e73686f774c6f6164696e6728656c2c20274c6f6164696e67207472616e73616374696f6e2e2e2e27293b0a2020747279207b0a2020202076617220636f6e6e203d204d2e6765742827636f6e6e656374697669747927292c2074783b0a2020202069662028636f6e6e2e686173456e68616e6365644665617475726573282929207478203d20617761697420636f6e6e2e6765745472616e73616374696f6e5769746852696e67732874786964293b0a20202020656c7365207478203d20617761697420636f6e6e2e6765745472616e73616374696f6e2874786964293b0a202020206966202821747829207468726f77206e6577204572726f7228275472616e73616374696f6e206e6f7420666f756e6427293b0a20202020656c2e696e6e657248544d4c203d2072656e646572547848544d4c2874782c20636f6e6e2e686173456e68616e63656446656174757265732829293b0a20207d20636174636820286529207b2075692e73686f774572726f7228656c2c20275472616e73616374696f6e204e6f7420466f756e64272c20652e6d657373616765293b207d0a7d0a0a66756e6374696f6e2072656e646572547848544d4c2874782c20656e68616e63656429207b0a20207661722074797065203d2064657465637454797065287478292c20636c73203d207479706542616467652874797065292c20636f6e66203d2074782e626c6f636b5f6865696768742026262074782e626c6f636b5f686569676874203e20303b0a202072657475726e20273c64697620636c6173733d2264657461696c2d76696577223e3c64697620636c6173733d2264657461696c2d6e6176223e3c627574746f6e20636c6173733d2262746e2062746e2d67686f737422206f6e636c69636b3d22676f4261636b2829223e266c743b204261636b3c2f627574746f6e3e3c2f6469763e27202b0a20202020273c64697620636c6173733d2273656374696f6e2d63617264223e27202b2075692e73656374696f6e486561646572287b2069636f6e3a20275b545d272c207469746c653a20275472616e73616374696f6e272c2062616467653a207b20746578743a20636f6e66203f2027434f4e4649524d454427203a202750454e44494e47272c20636c6173733a20636f6e66203f202762616467652d6f6b27203a202762616467652d70656e64696e6727207d207d29202b0a20202020273c64697620636c6173733d2273656374696f6e2d636f6e74656e74223e3c64697620636c6173733d2264657461696c2d67726964223e3c64697620636c6173733d2264657461696c2d636f6c756d6e223e3c683420636c6173733d2264657461696c2d7375627469746c65223e5472616e73616374696f6e20496e666f726d6174696f6e3c2f68343e27202b0a2020202075692e64657461696c526f77282754584944272c2074782e74786964207c7c2074782e686173682c207b206d6f6e6f3a20747275652c20636f707961626c653a2074727565207d29202b0a2020202075692e64657461696c526f77282754797065272c20273c7370616e20636c6173733d2262616467652027202b20636c73202b2027223e27202b2074797065202b20273c2f7370616e3e2729202b0a202020202874782e626c6f636b5f686569676874203f2075692e64657461696c526f772827426c6f636b20486569676874272c20552e666d744e756d2874782e626c6f636b5f6865696768742929203a20272729202b0a202020202874782e626c6f636b5f74696d657374616d70203f2075692e64657461696c526f77282754696d65272c20552e666d744c6f63616c54696d652874782e626c6f636b5f74696d657374616d702929203a20272729202b0a202020202874782e626c6f636b5f74696d657374616d70203f2075692e64657461696c526f772827416765272c20552e666d744167652874782e626c6f636b5f74696d657374616d702929203a20272729202b0a20202020273c2f6469763e3c64697620636c6173733d2264657461696c2d636f6c756d6e223e3c683420636c6173733d2264657461696c2d7375627469746c65223e5472616e73616374696f6e20446174613c2f68343e27202b0a202020202874782e73697a65203f2075692e64657461696c526f77282753697a65272c20552e666d7442797465732874782e73697a652929203a20272729202b0a202020202874782e66656520213d3d20756e646566696e6564203f2075692e64657461696c526f772827466565272c20552e666d744445524f2874782e66656529202b2027204445524f2729203a20272729202b0a202020202874782e6275726e5f76616c7565203f2075692e64657461696c526f7728274275726e272c20552e666d744445524f2874782e6275726e5f76616c756529202b2027204445524f2729203a20272729202b0a202020202874782e72696e675f73697a65203f2075692e64657461696c526f77282752696e672053697a65272c2074782e72696e675f73697a652e746f537472696e67282929203a20272729202b0a202020202874782e646573745f706f7274203f2075692e64657461696c526f7728274465737420506f7274272c2074782e646573745f706f72742e746f537472696e67282929203a20272729202b0a20202020273c2f6469763e3c2f6469763e3c2f6469763e3c2f6469763e27202b0a202020202874797065203d3d3d2054582e53435f5458203f2072656e646572534328747829203a20272729202b2072656e64657252696e672874782c20656e68616e63656429202b2072656e64657250726f6f662874782e74786964207c7c2074782e686173682c20656e68616e63656429202b20273c2f6469763e273b0a7d0a0a66756e6374696f6e2072656e646572534328747829207b0a20207661722073636964203d2074782e73636964207c7c206578747261637453434944287478292c206570203d2074782e656e747279706f696e74207c7c20657874726163744550287478293b0a2020696620282173636964292072657475726e2027273b0a202072657475726e20273c64697620636c6173733d2273656374696f6e2d63617264223e27202b2075692e73656374696f6e486561646572287b2069636f6e3a20275b53435d272c207469746c653a2027536d61727420436f6e747261637420496e746572616374696f6e27207d29202b0a20202020273c64697620636c6173733d2273656374696f6e2d636f6e74656e74223e27202b2075692e64657461696c526f77282753434944272c20736369642c207b206d6f6e6f3a20747275652c20636f707961626c653a2074727565207d29202b0a20202020286570203f2075692e64657461696c526f77282746756e6374696f6e272c20657029203a20272729202b0a202020202874782e73635f61726773203f20273c646976207374796c653d226d617267696e2d746f703a766172282d2d732d3429223e3c683420636c6173733d2264657461696c2d7375627469746c65223e417267756d656e74733c2f68343e3c64697620636c6173733d2273632d61726773223e27202b2072656e646572417267732874782e73635f6172677329202b20273c2f6469763e3c2f6469763e27203a20272729202b0a20202020273c646976207374796c653d226d617267696e2d746f703a766172282d2d732d3429223e3c627574746f6e20636c6173733d2262746e2062746e2d67686f737422206f6e636c69636b3d22766965775343285c2727202b2073636964202b20275c2729223e5669657720436f6e7472616374202667743b3c2f627574746f6e3e3c2f6469763e3c2f6469763e3c2f6469763e273b0a7d0a0a66756e6374696f6e20657874726163745343494428747829207b0a20206966202874782e73636964292072657475726e2074782e736369643b0a20206966202874782e73635f6172677329207b207661722061203d2074782e73635f617267732e66696e642866756e6374696f6e287829207b2072657475726e20782e6e616d652026262028782e6e616d652e746f4c6f776572436173652829203d3d3d2027736327207c7c20782e6e616d652e746f4c6f776572436173652829203d3d3d20277363696427293b207d293b206966202861292072657475726e20612e76616c75653b207d0a202072657475726e206e756c6c3b0a7d0a0a66756e6374696f6e2065787472616374455028747829207b0a20206966202874782e656e747279706f696e74292072657475726e2074782e656e747279706f696e743b0a20206966202874782e73635f6172677329207b207661722061203d2074782e73635f617267732e66696e642866756e6374696f6e287829207b2072657475726e20782e6e616d652026262028782e6e616d652e746f4c6f776572436173652829203d3d3d2027656e747279706f696e7427207c7c20782e6e616d652e746f4c6f776572436173652829203d3d3d202766756e6374696f6e27293b207d293b206966202861292072657475726e20612e76616c75653b207d0a202072657475726e206e756c6c3b0a7d0a0a66756e6374696f6e2072656e64657241726773286172677329207b0a2020696620282161726773207c7c2021617267732e6c656e677468292072657475726e20273c7370616e20636c6173733d22746578742d6d75746564223e4e6f20617267756d656e74733c2f7370616e3e273b0a202072657475726e20273c64697620636c6173733d22617267732d6c697374223e27202b20617267732e6d61702866756e6374696f6e286129207b0a2020202072657475726e20273c64697620636c6173733d226172672d6974656d223e3c7370616e20636c6173733d226172672d6e616d65223e27202b20552e65736348746d6c28612e6e616d65207c7c2027756e6e616d65642729202b20273c2f7370616e3e3c7370616e20636c6173733d226172672d74797065223e27202b2028612e6461746174797065207c7c20612e74797065207c7c20273f2729202b20273c2f7370616e3e3c7370616e20636c6173733d226172672d76616c7565206d6f6e6f223e27202b20552e65736348746d6c28537472696e6728612e76616c7565207c7c2027272929202b20273c2f7370616e3e3c2f6469763e273b0a20207d292e6a6f696e28272729202b20273c2f6469763e273b0a7d0a0a66756e6374696f6e2072656e64657252696e672874782c20656e68616e63656429207b0a20207661722072696e67203d2074782e72696e67207c7c206578747261637452696e67287478292c2073697a65203d2074782e72696e675f73697a65207c7c202872696e67203f2072696e672e6c656e677468203a2030293b0a2020696620282172696e67207c7c2072696e672e6c656e677468203d3d3d203029207b0a202020206966202873697a65203e2030292072657475726e20273c64697620636c6173733d2273656374696f6e2d63617264223e27202b2075692e73656374696f6e486561646572287b2069636f6e3a20275b525d272c207469746c653a202752696e67205369676e6174757265272c2062616467653a207b20746578743a202753495a452027202b2073697a652c20636c6173733a202762616467652d70656e64696e6727207d207d29202b0a202020202020273c64697620636c6173733d2273656374696f6e2d636f6e74656e74223e3c7020636c6173733d22746578742d6d7574656420746578742d736d223e52696e672073697a653a2027202b2073697a65202b2027206d656d626572732e2052696e672064617461206e6f7420696e636c7564656420696e2074686973207472616e73616374696f6e20726573706f6e73652e3c2f703e3c7020636c6173733d22746578742d6d7574656420746578742d736d22207374796c653d226d617267696e2d746f703a766172282d2d732d3229223e52696e67207369676e6174757265732070726f76696465207472616e73616374696f6e2070726976616379206279206d6978696e6720796f757220696e7075742077697468206465636f7920696e707574732066726f6d206f74686572207472616e73616374696f6e732e3c2f703e3c2f6469763e3c2f6469763e273b0a2020202072657475726e2027273b0a20207d0a202072657475726e20273c64697620636c6173733d2273656374696f6e2d63617264223e27202b2075692e73656374696f6e486561646572287b2069636f6e3a20275b525d272c207469746c653a202752696e67204d656d62657273202827202b2072696e672e6c656e677468202b202729272c2062616467653a207b20746578743a202750524956414359272c20636c6173733a202762616467652d6f6b27207d207d29202b0a20202020273c64697620636c6173733d2273656374696f6e2d636f6e74656e74223e3c7020636c6173733d2272696e672d6578706c616e6174696f6e20746578742d6d7574656420746578742d736d22207374796c653d226d617267696e2d626f74746f6d3a766172282d2d732d3429223e52696e67207369676e6174757265732070726f76696465207472616e73616374696f6e2070726976616379206279206d6978696e6720796f757220696e70757420776974682027202b202872696e672e6c656e677468202d203129202b2027206465636f7920696e707574732066726f6d206f74686572207472616e73616374696f6e732e3c2f703e27202b2072656e64657252696e674d656d626572732872696e6729202b20273c2f6469763e3c2f6469763e273b0a7d0a0a66756e6374696f6e206578747261637452696e6728747829207b0a20206966202874782e72696e67292072657475726e2074782e72696e673b0a20206966202874782e7061796c6f6164732026262074782e7061796c6f6164735b305d3f2e72696e67292072657475726e2074782e7061796c6f6164735b305d2e72696e673b0a202072657475726e206e756c6c3b0a7d0a0a66756e6374696f6e2072656e64657252696e674d656d626572732872696e6729207b0a2020766172206d6178203d2031362c2064697370203d2072696e672e736c69636528302c206d6178292c2072656d203d2072696e672e6c656e677468202d206d61783b0a20207661722068746d6c203d20273c64697620636c6173733d2272696e672d6d656d62657273223e273b0a2020646973702e666f72456163682866756e6374696f6e286d2c206929207b0a202020207661722064203d2041727261792e69734172726179286d29203f206d5b305d203a206d3b0a2020202068746d6c202b3d20273c64697620636c6173733d2272696e672d6d656d626572223e3c7370616e20636c6173733d2272696e672d696e646578223e5b27202b2069202b20275d3c2f7370616e3e3c636f646520636c6173733d2272696e672d6b6579223e27202b20552e7472756e634861736828642c2031322c203829202b20273c2f636f64653e3c2f6469763e273b0a20207d293b0a20206966202872656d203e2030292068746d6c202b3d20273c64697620636c6173733d2272696e672d6d6f726520746578742d6d75746564223e2e2e2e20616e642027202b2072656d202b2027206d6f7265206d656d626572733c2f6469763e273b0a202072657475726e2068746d6c202b20273c2f6469763e273b0a7d0a0a66756e6374696f6e2072656e64657250726f6f6628747869642c20656e68616e63656429207b0a2020766172206964203d20747869642e736c69636528302c2038293b0a20206966202821656e68616e636564292072657475726e20273c64697620636c6173733d2273656374696f6e2d63617264223e27202b2075692e73656374696f6e486561646572287b2069636f6e3a20275b505d272c207469746c653a2027566572696679205061796d656e742050726f6f66272c2062616467653a207b20746578743a20274241434b454e44205245515549524544272c20636c6173733a202762616467652d70656e64696e6727207d207d29202b0a20202020273c64697620636c6173733d2273656374696f6e2d636f6e74656e74223e3c64697620636c6173733d2270726f6f662d6c696d69746564223e3c7020636c6173733d22746578742d6d75746564223e50726f6f662076616c69646174696f6e2072657175697265732061206261636b656e64207468617420737570706f7274732063727970746f6772617068696320766572696669636174696f6e2028476f206e617469766520636f6465292e205468697320697320617661696c61626c65207768656e2072756e6e696e6720746865206578706c6f72657220696e20484f4c4f4752414d206f7220776974682061206c6f63616c206578706c6f726572207468617420737570706f7274732070726f6f662076616c69646174696f6e2e3c2f703e3c2f6469763e3c2f6469763e3c2f6469763e273b0a202072657475726e20273c64697620636c6173733d2273656374696f6e2d63617264223e27202b2075692e73656374696f6e486561646572287b2069636f6e3a20275b505d272c207469746c653a2027566572696679205061796d656e742050726f6f6627207d29202b0a20202020273c64697620636c6173733d2273656374696f6e2d636f6e74656e74223e3c7020636c6173733d22746578742d6d7574656420746578742d736d22207374796c653d226d617267696e2d626f74746f6d3a766172282d2d732d3429223e456e7465722061204445524f2070726f6f6620746f207665726966792069662074686973207472616e73616374696f6e2073656e742066756e647320746f20796f752e3c2f703e27202b0a20202020273c64697620636c6173733d2270726f6f662d666f726d223e3c74657874617265612069643d2270726f6f662d696e7075742d27202b206964202b20272220636c6173733d2270726f6f662d74657874617265612220706c616365686f6c6465723d225061737465206465726f70726f6f6631712e2e2e20686572652220726f77733d2234223e3c2f74657874617265613e27202b0a20202020273c627574746f6e20636c6173733d2262746e2062746e2d7072696d61727922206f6e636c69636b3d224465726f4578706c6f7265722e6d6f64756c65732e676574285c277472616e73616374696f6e735c27292e76616c696461746550726f6f66285c2727202b2074786964202b20275c2729223e56616c69646174652050726f6f663c2f627574746f6e3e3c2f6469763e27202b0a20202020273c6469762069643d2270726f6f662d726573756c742d27202b206964202b202722207374796c653d226d617267696e2d746f703a766172282d2d732d3429223e3c2f6469763e3c2f6469763e3c2f6469763e273b0a7d0a0a6173796e632066756e6374696f6e2076616c696461746550726f6f66287478696429207b0a2020766172206964203d20747869642e736c69636528302c2038292c20696e70203d20646f63756d656e742e676574456c656d656e7442794964282770726f6f662d696e7075742d27202b206964292c20726573203d20646f63756d656e742e676574456c656d656e7442794964282770726f6f662d726573756c742d27202b206964293b0a20206966202821696e70207c7c2021726573292072657475726e3b0a20207661722070726f6f66203d20696e702e76616c75652e7472696d28293b0a2020696620282170726f6f6629207b207265732e696e6e657248544d4c203d20273c64697620636c6173733d2270726f6f662d6572726f72223e506c6561736520656e74657220612070726f6f6620737472696e673c2f6469763e273b2072657475726e3b207d0a20207265732e696e6e657248544d4c203d20273c64697620636c6173733d2270726f6f662d6c6f6164696e67223e3c64697620636c6173733d226c6f6164696e672d7370696e6e657222207374796c653d2277696474683a313670783b6865696768743a31367078223e3c2f6469763e56616c69646174696e672e2e2e3c2f6469763e273b0a2020747279207b0a2020202076617220636f6e6e203d204d2e6765742827636f6e6e656374697669747927292c2072203d20617761697420636f6e6e2e76616c696461746550726f6f662870726f6f662c2074786964293b0a2020202069662028722e76616c696429207265732e696e6e657248544d4c203d20273c64697620636c6173733d2270726f6f662d76616c6964223e3c64697620636c6173733d2270726f6f662d686561646572223e5b4f4b5d2050726f6f662056616c69643c2f6469763e3c64697620636c6173733d2270726f6f662d64657461696c73223e27202b2075692e64657461696c526f772827526563697069656e74272c20552e7472756e634861736828722e616464726573732c2031362c203132292c207b206d6f6e6f3a2074727565207d29202b2075692e64657461696c526f772827416d6f756e74272c20552e666d744445524f28722e616d6f756e7429202b2027204445524f2729202b2028722e7061796c6f6164203f2075692e64657461696c526f7728275061796c6f6164272c20722e7061796c6f616429203a20272729202b20273c2f6469763e3c2f6469763e273b0a20202020656c7365207265732e696e6e657248544d4c203d20273c64697620636c6173733d2270726f6f662d696e76616c6964223e3c64697620636c6173733d2270726f6f662d686561646572223e5b585d2050726f6f6620496e76616c69643c2f6469763e3c703e27202b2028722e6572726f72207c7c20275468652070726f6f6620636f756c64206e6f742062652076616c69646174656420666f722074686973207472616e73616374696f6e2e2729202b20273c2f703e3c2f6469763e273b0a20207d20636174636820286529207b207265732e696e6e657248544d4c203d20273c64697620636c6173733d2270726f6f662d6572726f72223e4572726f723a2027202b20552e65736348746d6c28652e6d65737361676529202b20273c2f6469763e273b207d0a7d0a0a72657475726e207b20696e69743a20696e69742c206c6f61644d656d706f6f6c3a206c6f61644d656d706f6f6c2c206c6f616446756c6c506f6f6c3a206c6f616446756c6c506f6f6c2c2072656e646572547844657461696c3a2072656e646572547844657461696c2c2076616c696461746550726f6f663a2076616c696461746550726f6f662c206465746563745478547970653a20646574656374547970652c2054585f54595045533a205458207d3b0a7d2928293b0a0a2a2f
dURL
dislikes 0
docType 54454c412d4a532d31
docVersion 312e302e30
fileCheckC 32353536336266666431656434356666623666643761366433326338303665326262313536393539386661353661333461626534346264666238313131306137
fileCheckS 32306132323066343330626662366264306336303735393635633139643539383233323831376331653034336265306335343331656661356133663832653662
hash 39626635346231386333363737653462643561356334633966343763326661663561346337356365663063393062316439633332633035353365646233666462
likes 0
owner 6465726f3171797175366b646c6134346d736e306b7935736b7076346661686a326179383079636a707a32376b6763347766376a6b347973306b7171367333366668
subDir 2f
var_header_description
var_header_icon
var_header_name 7472616e73616374696f6e732e6a73
SCID uint64 variables
key value
built BLID : bbea2a40e51815c78c88fdc04641fa5e80893206d74259d3d4fba6fd2b625c58
Tx RootHash: 89a270a50bfff3915c8e40cfaad11909a3ddc356c2852b56fc8f83c83e926894 built height : 6449060
Timestamp: 1767626030740 Timestamp [UTC]: 2026-01-05 15:13:50 Age [y:d:h:m:s]: 177:22:58.627
Block: 6449061 Fee: 0.13702 Tx size: 14.757 kB
Tx version: 1 No of confirmations: 33829 Signature type: DERO_HOMOMORPHIC
Extra:
DERO : 2 inputs/outputs (RING size) Fees 0.13702 Deposited to SC 0.00000
Sender : dero1qyqu6kdla44msn0ky5skpv4fahj2ay80ycjpz27kgc4wf7jk4ys0kqq6s36fh
address
dero1qyqu6kdla44msn0ky5skpv4fahj2ay80ycjpz27kgc4wf7jk4ys0kqq6s36fh
dero1qynar7ppnt2mp9syjfl44jcng59arsq5txwq3undqswq6v5uptvwjqg89lndp
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", "")
32 STORE("var_header_icon", "")
33 STORE("dURL", "")
34 STORE("docType", "TELA-JS-1")
35 STORE("subDir", "/")
36 STORE("fileCheckC", "25563bffd1ed45ffb6fd7a6d32c806e2bb1569598fa56a34abe44bdfb81110a7")
37 STORE("fileCheckS", "20a220f430bfb6bd0c6075965c19d598232817c1e043be0c5431efa5a3f82e6b")
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", "") 32 STORE("var_header_icon", "") 33 STORE("dURL", "") 34 STORE("docType", "TELA-JS-1") 35 STORE("subDir", "/") 36 STORE("fileCheckC", "25563bffd1ed45ffb6fd7a6d32c806e2bb1569598fa56a34abe44bdfb81110a7") 37 STORE("fileCheckS", "20a220f430bfb6bd0c6075965c19d598232817c1e043be0c5431efa5a3f82e6b") 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
0100000500a4cf8903bbea2a40e51815c78c88fdc04641fa5e80893206d74259d3d4fba6fd2b625c5801000000000000000000000000000000000000000000000000000000000000000000006d5a197fa3812c2f104515e4ddca1c1d2d5f362c1f9a2daed16aab775193a474f551645013b3d0e76912ea971bf1724ffb8867661c783adceff6b67fc6855e1b9ff6fe85f1eddd39bbbb57ce67256aa14917bb3e0414ee367c88c151c3cbb9652aaf0bb557520fe901b710b44d0560cf5f9cb36f121dfdb65c0164981c3a230ddf8b737edd6206d10af00ef40e2219288a0107866b1b5f095eb0fb39a341966fd27696d1c1ec629673ab5ca8f08d6360a3a9eb9aa0012a9f8cb8285eab9c2a5e482e3d4e2d134e20350186cb6933f4f7e9d20bf81ba914e9de09cc41b8ec9e18ee19ef470103ec4a0827cf6943d12105f5466e6d13d77d71400a7a5d053e38da5ed3ccde0d0089a270a50bfff3915c8e40cfaad11909a3ddc356c2852b56fc8f83c83e926894d668a26853435f434f44455379343d46756e6374696f6e20496e697469616c697a655072697661746528292055696e7436340a313020494620696e69742829203d3d2030205448454e20474f544f2033300a32302052455455524e20310a33302053544f524528227661725f6865616465725f6e616d65222c20227472616e73616374696f6e732e6a7322290a33312053544f524528227661725f6865616465725f6465736372697074696f6e222c202222290a33322053544f524528227661725f6865616465725f69636f6e222c202222290a33332053544f524528226455524c222c202222290a33342053544f52452822646f6354797065222c202254454c412d4a532d3122290a33352053544f52452822737562446972222c20222f22290a33362053544f5245282266696c65436865636b43222c20223235353633626666643165643435666662366664376136643332633830366532626231353639353938666135366133346162653434626466623831313130613722290a33372053544f5245282266696c65436865636b53222c20223230613232306634333062666236626430633630373539363563313964353938323332383137633165303433626530633534333165666135613366383265366222290a3130302052455455524e20300a456e642046756e6374696f6e0a0a46756e6374696f6e20696e697428292055696e7436340a31302049462045584953545328226f776e65722229203d3d2030205448454e20474f544f2033300a32302052455455524e20310a33302053544f524528226f776e6572222c20616464726573732829290a35302053544f52452822646f6356657273696f6e222c2022312e302e3022290a36302053544f5245282268617368222c204845582854584944282929290a37302053544f524528226c696b6573222c2030290a38302053544f524528226469736c696b6573222c2030290a3130302052455455524e20300a456e642046756e6374696f6e0a0a46756e6374696f6e2061646472657373282920537472696e670a31302044494d207320617320537472696e670a3230204c45542073203d205349474e455228290a33302049462049535f414444524553535f56414c4944287329205448454e20474f544f2035300a34302052455455524e2022616e6f6e220a35302052455455524e20414444524553535f535452494e472873290a456e642046756e6374696f6e0a0a46756e6374696f6e205261746528722055696e743634292055696e7436340a31302044494d206164647220617320537472696e670a3135204c45542061646472203d206164647265737328290a31362049462072203c2031303020262620455849535453286164647229203d3d2030202626206164647220213d2022616e6f6e22205448454e20474f544f2033300a32302052455455524e20310a33302053544f524528616464722c2022222b722b225f222b424c4f434b5f4845494748542829290a34302049462072203c203530205448454e20474f544f2037300a35302053544f524528226c696b6573222c204c4f414428226c696b657322292b31290a36302052455455524e20300a37302053544f524528226469736c696b6573222c204c4f414428226469736c696b657322292b31290a3130302052455455524e20300a456e642046756e6374696f6e0a0a2f2a0a2f2f204445524f204578706c6f7265722076322e30202d205472616e73616374696f6e73204d6f64756c650a636f6e7374206d6f64756c65203d202866756e6374696f6e2829207b0a2775736520737472696374273b0a7661722044203d2077696e646f772e4465726f4578706c6f7265722c2053203d20442e73746174652c2055203d20442e7574696c732c207569203d20442e75692c2052203d20442e726f757465722c204d203d20442e6d6f64756c65733b0a766172205458203d207b205052454d494e453a20275052454d494e45272c20524547495354524154494f4e3a2027524547495354524154494f4e272c20434f494e424153453a2027434f494e42415345272c204e4f524d414c3a20274e4f524d414c272c204255524e5f54583a20274255524e5f5458272c2053435f54583a202753435f545827207d3b0a7661722054203d207b20706f6f6c496e74657276616c3a206e756c6c2c2063616368653a206e6577204d617028292c206d617843616368653a203530207d3b0a0a66756e6374696f6e20696e69742829207b0a202077696e646f772e6164644576656e744c697374656e657228276578706c6f7265723a766965774368616e6765272c2068616e646c6556696577293b0a202077696e646f772e6164644576656e744c697374656e657228276578706c6f7265723a636f6e6e6563746564272c2066756e6374696f6e2829207b2069662028532e63757272656e7456696577203d3d3d202764617368626f6172642729206c6f61644d656d706f6f6c28293b207d293b0a7d0a0a66756e6374696f6e2068616e646c6556696577286529207b0a20207661722076203d20652e64657461696c2e766965772c2070203d20652e64657461696c2e706172616d3b0a20206966202876203d3d3d2027706f6f6c27292072656e646572506f6f6c5669657728293b0a2020656c7365206966202876203d3d3d2027747844657461696c272026262070292072656e646572547844657461696c2870293b0a2020656c7365206966202876203d3d3d202764617368626f6172642729206c6f61644d656d706f6f6c28293b0a2020696620287620213d3d2027706f6f6c2720262620542e706f6f6c496e74657276616c29207b20636c656172496e74657276616c28542e706f6f6c496e74657276616c293b20542e706f6f6c496e74657276616c203d206e756c6c3b207d0a7d0a0a66756e6374696f6e206465746563745479706528747829207b0a202069662028217478292072657475726e2027554e4b4e4f574e273b0a20206966202874782e7472616e73616374696f6e5f74797065292072657475726e2074782e7472616e73616374696f6e5f747970652e746f55707065724361736528293b0a20206966202874782e636f696e62617365292072657475726e2054582e434f494e424153453b0a20206966202874782e73635f64617461207c7c2074782e736364617461292072657475726e2054582e53435f54583b0a20206966202874782e6275726e5f76616c75652026262074782e6275726e5f76616c7565203e2030292072657475726e2054582e4255524e5f54583b0a202072657475726e2054582e4e4f524d414c3b0a7d0a0a66756e6374696f6e20747970654261646765287429207b0a20206966202874203d3d3d2054582e434f494e42415345292072657475726e202762616467652d6f6b273b0a20206966202874203d3d3d2054582e53435f5458292072657475726e202762616467652d6c697665273b0a20206966202874203d3d3d2054582e4255524e5f5458292072657475726e202762616467652d657272273b0a20206966202874203d3d3d2054582e524547495354524154494f4e292072657475726e202762616467652d6e6577273b0a202072657475726e202762616467652d70656e64696e67273b0a7d0a0a6173796e632066756e6374696f6e206c6f61644d656d706f6f6c2829207b0a202076617220656c203d20646f63756d656e742e676574456c656d656e744279496428276d656d706f6f6c2d6c69737427292c206261646765203d20646f63756d656e742e676574456c656d656e74427949642827706f6f6c2d626164676527293b0a20206966202821656c292072657475726e3b0a2020747279207b0a2020202076617220636f6e6e203d204d2e6765742827636f6e6e656374697669747927293b0a202020206966202821636f6e6e29207468726f77206e6577204572726f7228274e6f20636f6e6e656374697669747927293b0a2020202076617220706f6f6c203d20617761697420636f6e6e2e6765745478506f6f6c28292c20747873203d20706f6f6c2e747873207c7c205b5d3b0a20202020696620286261646765292062616467652e74657874436f6e74656e74203d207478732e6c656e677468202b20272050454e44494e47273b0a20202020696620287478732e6c656e677468203d3d3d203029207b20656c2e696e6e657248544d4c203d20273c64697620636c6173733d22656d7074792d7374617465223e3c64697620636c6173733d22656d7074792d69636f6e223e2a3c2f6469763e3c703e4d656d706f6f6c20697320656d707479202d20616c6c207472616e73616374696f6e7320636f6e6669726d65643c2f703e3c2f6469763e273b2072657475726e3b207d0a20202020656c2e696e6e657248544d4c203d2072656e646572506f6f6c4c697374287478732e736c69636528302c20313029293b0a20207d20636174636820286529207b7d0a7d0a0a6173796e632066756e6374696f6e2072656e646572506f6f6c566965772829207b0a202076617220656c203d20646f63756d656e742e676574456c656d656e74427949642827766965772d706f6f6c27293b0a20206966202821656c292072657475726e3b0a2020656c2e696e6e657248544d4c203d20273c64697620636c6173733d2273656374696f6e2d63617264223e27202b2075692e73656374696f6e486561646572287b2069636f6e3a20275b545d272c207469746c653a20275472616e73616374696f6e20506f6f6c20284d656d706f6f6c29272c2062616467653a207b20746578743a20274c495645272c20636c6173733a202762616467652d6c69766527207d207d29202b0a20202020273c64697620636c6173733d2273656374696f6e2d636f6e74656e74223e3c6469762069643d22706f6f6c2d66756c6c2d6c697374223e3c64697620636c6173733d226c6f6164696e672d7374617465223e3c64697620636c6173733d226c6f6164696e672d7370696e6e6572223e3c2f6469763e3c7370616e3e4c6f6164696e67206d656d706f6f6c2e2e2e3c2f7370616e3e3c2f6469763e3c2f6469763e3c2f6469763e3c2f6469763e273b0a20206177616974206c6f616446756c6c506f6f6c28293b0a2020542e706f6f6c496e74657276616c203d20736574496e74657276616c286c6f616446756c6c506f6f6c2c203130303030293b0a7d0a0a6173796e632066756e6374696f6e206c6f616446756c6c506f6f6c2829207b0a202076617220656c203d20646f63756d656e742e676574456c656d656e74427949642827706f6f6c2d66756c6c2d6c69737427293b0a20206966202821656c292072657475726e3b0a2020747279207b0a2020202076617220636f6e6e203d204d2e6765742827636f6e6e656374697669747927292c20706f6f6c203d20617761697420636f6e6e2e6765745478506f6f6c28292c20747873203d20706f6f6c2e747873207c7c205b5d3b0a20202020696620287478732e6c656e677468203d3d3d203029207b20656c2e696e6e657248544d4c203d20273c64697620636c6173733d22656d7074792d7374617465223e3c64697620636c6173733d22656d7074792d69636f6e223e2a3c2f6469763e3c703e4d656d706f6f6c20697320656d7074793c2f703e3c7020636c6173733d22746578742d6d75746564223e416c6c207472616e73616374696f6e732068617665206265656e20636f6e6669726d65643c2f703e3c2f6469763e273b2072657475726e3b207d0a20202020656c2e696e6e657248544d4c203d20273c64697620636c6173733d22706f6f6c2d7374617473223e3c7370616e20636c6173733d22706f6f6c2d73746174223e3c7374726f6e673e27202b207478732e6c656e677468202b20273c2f7374726f6e673e2070656e64696e67207472616e73616374696f6e733c2f7370616e3e3c2f6469763e27202b2072656e646572506f6f6c4c69737428747873293b0a20207d20636174636820286529207b20656c2e696e6e657248544d4c203d20273c64697620636c6173733d22656d7074792d7374617465223e3c703e4661696c656420746f206c6f6164206d656d706f6f6c3c2f703e3c2f6469763e273b207d0a7d0a0a66756e6374696f6e2072656e646572506f6f6c4c6973742874787329207b0a202072657475726e20273c64697620636c6173733d2274782d6c697374223e27202b207478732e6d61702866756e6374696f6e286829207b0a2020202072657475726e20273c64697620636c6173733d2274782d6974656d22206f6e636c69636b3d22766965775478285c2727202b2068202b20275c2729223e3c64697620636c6173733d2274782d6974656d2d6c656674223e3c7370616e20636c6173733d2274782d747970652062616467652062616467652d70656e64696e67223e50454e44494e473c2f7370616e3e3c7370616e20636c6173733d2274782d68617368206d6f6e6f223e27202b20552e7472756e634861736828682c2031362c20313229202b20273c2f7370616e3e3c2f6469763e3c64697620636c6173733d2274782d6974656d2d7269676874223e3c7370616e20636c6173733d2274782d616374696f6e223e56696577202667743b3c2f7370616e3e3c2f6469763e3c2f6469763e273b0a20207d292e6a6f696e28272729202b20273c2f6469763e273b0a7d0a0a6173796e632066756e6374696f6e2072656e646572547844657461696c287478696429207b0a202076617220656c203d20646f63756d656e742e676574456c656d656e74427949642827766965772d747844657461696c27293b0a20206966202821656c29207b20766172206d61696e203d20646f63756d656e742e676574456c656d656e744279496428276d61696e2d636f6e74656e7427293b20656c203d20646f63756d656e742e637265617465456c656d656e74282764697627293b20656c2e6964203d2027766965772d747844657461696c273b206d61696e2e617070656e644368696c6428656c293b207d0a2020656c2e636c6173734c6973742e72656d6f7665282768696464656e27293b0a202075692e73686f774c6f6164696e6728656c2c20274c6f6164696e67207472616e73616374696f6e2e2e2e27293b0a2020747279207b0a2020202076617220636f6e6e203d204d2e6765742827636f6e6e656374697669747927292c2074783b0a2020202069662028636f6e6e2e686173456e68616e6365644665617475726573282929207478203d20617761697420636f6e6e2e6765745472616e73616374696f6e5769746852696e67732874786964293b0a20202020656c7365207478203d20617761697420636f6e6e2e6765745472616e73616374696f6e2874786964293b0a202020206966202821747829207468726f77206e6577204572726f7228275472616e73616374696f6e206e6f7420666f756e6427293b0a20202020656c2e696e6e657248544d4c203d2072656e646572547848544d4c2874782c20636f6e6e2e686173456e68616e63656446656174757265732829293b0a20207d20636174636820286529207b2075692e73686f774572726f7228656c2c20275472616e73616374696f6e204e6f7420466f756e64272c20652e6d657373616765293b207d0a7d0a0a66756e6374696f6e2072656e646572547848544d4c2874782c20656e68616e63656429207b0a20207661722074797065203d2064657465637454797065287478292c20636c73203d207479706542616467652874797065292c20636f6e66203d2074782e626c6f636b5f6865696768742026262074782e626c6f636b5f686569676874203e20303b0a202072657475726e20273c64697620636c6173733d2264657461696c2d76696577223e3c64697620636c6173733d2264657461696c2d6e6176223e3c627574746f6e20636c6173733d2262746e2062746e2d67686f737422206f6e636c69636b3d22676f4261636b2829223e266c743b204261636b3c2f627574746f6e3e3c2f6469763e27202b0a20202020273c64697620636c6173733d2273656374696f6e2d63617264223e27202b2075692e73656374696f6e486561646572287b2069636f6e3a20275b545d272c207469746c653a20275472616e73616374696f6e272c2062616467653a207b20746578743a20636f6e66203f2027434f4e4649524d454427203a202750454e44494e47272c20636c6173733a20636f6e66203f202762616467652d6f6b27203a202762616467652d70656e64696e6727207d207d29202b0a20202020273c64697620636c6173733d2273656374696f6e2d636f6e74656e74223e3c64697620636c6173733d2264657461696c2d67726964223e3c64697620636c6173733d2264657461696c2d636f6c756d6e223e3c683420636c6173733d2264657461696c2d7375627469746c65223e5472616e73616374696f6e20496e666f726d6174696f6e3c2f68343e27202b0a2020202075692e64657461696c526f77282754584944272c2074782e74786964207c7c2074782e686173682c207b206d6f6e6f3a20747275652c20636f707961626c653a2074727565207d29202b0a2020202075692e64657461696c526f77282754797065272c20273c7370616e20636c6173733d2262616467652027202b20636c73202b2027223e27202b2074797065202b20273c2f7370616e3e2729202b0a202020202874782e626c6f636b5f686569676874203f2075692e64657461696c526f772827426c6f636b20486569676874272c20552e666d744e756d2874782e626c6f636b5f6865696768742929203a20272729202b0a202020202874782e626c6f636b5f74696d657374616d70203f2075692e64657461696c526f77282754696d65272c20552e666d744c6f63616c54696d652874782e626c6f636b5f74696d657374616d702929203a20272729202b0a202020202874782e626c6f636b5f74696d657374616d70203f2075692e64657461696c526f772827416765272c20552e666d744167652874782e626c6f636b5f74696d657374616d702929203a20272729202b0a20202020273c2f6469763e3c64697620636c6173733d2264657461696c2d636f6c756d6e223e3c683420636c6173733d2264657461696c2d7375627469746c65223e5472616e73616374696f6e20446174613c2f68343e27202b0a202020202874782e73697a65203f2075692e64657461696c526f77282753697a65272c20552e666d7442797465732874782e73697a652929203a20272729202b0a202020202874782e66656520213d3d20756e646566696e6564203f2075692e64657461696c526f772827466565272c20552e666d744445524f2874782e66656529202b2027204445524f2729203a20272729202b0a202020202874782e6275726e5f76616c7565203f2075692e64657461696c526f7728274275726e272c20552e666d744445524f2874782e6275726e5f76616c756529202b2027204445524f2729203a20272729202b0a202020202874782e72696e675f73697a65203f2075692e64657461696c526f77282752696e672053697a65272c2074782e72696e675f73697a652e746f537472696e67282929203a20272729202b0a202020202874782e646573745f706f7274203f2075692e64657461696c526f7728274465737420506f7274272c2074782e646573745f706f72742e746f537472696e67282929203a20272729202b0a20202020273c2f6469763e3c2f6469763e3c2f6469763e3c2f6469763e27202b0a202020202874797065203d3d3d2054582e53435f5458203f2072656e646572534328747829203a20272729202b2072656e64657252696e672874782c20656e68616e63656429202b2072656e64657250726f6f662874782e74786964207c7c2074782e686173682c20656e68616e63656429202b20273c2f6469763e273b0a7d0a0a66756e6374696f6e2072656e646572534328747829207b0a20207661722073636964203d2074782e73636964207c7c206578747261637453434944287478292c206570203d2074782e656e747279706f696e74207c7c20657874726163744550287478293b0a2020696620282173636964292072657475726e2027273b0a202072657475726e20273c64697620636c6173733d2273656374696f6e2d63617264223e27202b2075692e73656374696f6e486561646572287b2069636f6e3a20275b53435d272c207469746c653a2027536d61727420436f6e747261637420496e746572616374696f6e27207d29202b0a20202020273c64697620636c6173733d2273656374696f6e2d636f6e74656e74223e27202b2075692e64657461696c526f77282753434944272c20736369642c207b206d6f6e6f3a20747275652c20636f707961626c653a2074727565207d29202b0a20202020286570203f2075692e64657461696c526f77282746756e6374696f6e272c20657029203a20272729202b0a202020202874782e73635f61726773203f20273c646976207374796c653d226d617267696e2d746f703a766172282d2d732d3429223e3c683420636c6173733d2264657461696c2d7375627469746c65223e417267756d656e74733c2f68343e3c64697620636c6173733d2273632d61726773223e27202b2072656e646572417267732874782e73635f6172677329202b20273c2f6469763e3c2f6469763e27203a20272729202b0a20202020273c646976207374796c653d226d617267696e2d746f703a766172282d2d732d3429223e3c627574746f6e20636c6173733d2262746e2062746e2d67686f737422206f6e636c69636b3d22766965775343285c2727202b2073636964202b20275c2729223e5669657720436f6e7472616374202667743b3c2f627574746f6e3e3c2f6469763e3c2f6469763e3c2f6469763e273b0a7d0a0a66756e6374696f6e20657874726163745343494428747829207b0a20206966202874782e73636964292072657475726e2074782e736369643b0a20206966202874782e73635f6172677329207b207661722061203d2074782e73635f617267732e66696e642866756e6374696f6e287829207b2072657475726e20782e6e616d652026262028782e6e616d652e746f4c6f776572436173652829203d3d3d2027736327207c7c20782e6e616d652e746f4c6f776572436173652829203d3d3d20277363696427293b207d293b206966202861292072657475726e20612e76616c75653b207d0a202072657475726e206e756c6c3b0a7d0a0a66756e6374696f6e2065787472616374455028747829207b0a20206966202874782e656e747279706f696e74292072657475726e2074782e656e747279706f696e743b0a20206966202874782e73635f6172677329207b207661722061203d2074782e73635f617267732e66696e642866756e6374696f6e287829207b2072657475726e20782e6e616d652026262028782e6e616d652e746f4c6f776572436173652829203d3d3d2027656e747279706f696e7427207c7c20782e6e616d652e746f4c6f776572436173652829203d3d3d202766756e6374696f6e27293b207d293b206966202861292072657475726e20612e76616c75653b207d0a202072657475726e206e756c6c3b0a7d0a0a66756e6374696f6e2072656e64657241726773286172677329207b0a2020696620282161726773207c7c2021617267732e6c656e677468292072657475726e20273c7370616e20636c6173733d22746578742d6d75746564223e4e6f20617267756d656e74733c2f7370616e3e273b0a202072657475726e20273c64697620636c6173733d22617267732d6c697374223e27202b20617267732e6d61702866756e6374696f6e286129207b0a2020202072657475726e20273c64697620636c6173733d226172672d6974656d223e3c7370616e20636c6173733d226172672d6e616d65223e27202b20552e65736348746d6c28612e6e616d65207c7c2027756e6e616d65642729202b20273c2f7370616e3e3c7370616e20636c6173733d226172672d74797065223e27202b2028612e6461746174797065207c7c20612e74797065207c7c20273f2729202b20273c2f7370616e3e3c7370616e20636c6173733d226172672d76616c7565206d6f6e6f223e27202b20552e65736348746d6c28537472696e6728612e76616c7565207c7c2027272929202b20273c2f7370616e3e3c2f6469763e273b0a20207d292e6a6f696e28272729202b20273c2f6469763e273b0a7d0a0a66756e6374696f6e2072656e64657252696e672874782c20656e68616e63656429207b0a20207661722072696e67203d2074782e72696e67207c7c206578747261637452696e67287478292c2073697a65203d2074782e72696e675f73697a65207c7c202872696e67203f2072696e672e6c656e677468203a2030293b0a2020696620282172696e67207c7c2072696e672e6c656e677468203d3d3d203029207b0a202020206966202873697a65203e2030292072657475726e20273c64697620636c6173733d2273656374696f6e2d63617264223e27202b2075692e73656374696f6e486561646572287b2069636f6e3a20275b525d272c207469746c653a202752696e67205369676e6174757265272c2062616467653a207b20746578743a202753495a452027202b2073697a652c20636c6173733a202762616467652d70656e64696e6727207d207d29202b0a202020202020273c64697620636c6173733d2273656374696f6e2d636f6e74656e74223e3c7020636c6173733d22746578742d6d7574656420746578742d736d223e52696e672073697a653a2027202b2073697a65202b2027206d656d626572732e2052696e672064617461206e6f7420696e636c7564656420696e2074686973207472616e73616374696f6e20726573706f6e73652e3c2f703e3c7020636c6173733d22746578742d6d7574656420746578742d736d22207374796c653d226d617267696e2d746f703a766172282d2d732d3229223e52696e67207369676e6174757265732070726f76696465207472616e73616374696f6e2070726976616379206279206d6978696e6720796f757220696e7075742077697468206465636f7920696e707574732066726f6d206f74686572207472616e73616374696f6e732e3c2f703e3c2f6469763e3c2f6469763e273b0a2020202072657475726e2027273b0a20207d0a202072657475726e20273c64697620636c6173733d2273656374696f6e2d63617264223e27202b2075692e73656374696f6e486561646572287b2069636f6e3a20275b525d272c207469746c653a202752696e67204d656d62657273202827202b2072696e672e6c656e677468202b202729272c2062616467653a207b20746578743a202750524956414359272c20636c6173733a202762616467652d6f6b27207d207d29202b0a20202020273c64697620636c6173733d2273656374696f6e2d636f6e74656e74223e3c7020636c6173733d2272696e672d6578706c616e6174696f6e20746578742d6d7574656420746578742d736d22207374796c653d226d617267696e2d626f74746f6d3a766172282d2d732d3429223e52696e67207369676e6174757265732070726f76696465207472616e73616374696f6e2070726976616379206279206d6978696e6720796f757220696e70757420776974682027202b202872696e672e6c656e677468202d203129202b2027206465636f7920696e707574732066726f6d206f74686572207472616e73616374696f6e732e3c2f703e27202b2072656e64657252696e674d656d626572732872696e6729202b20273c2f6469763e3c2f6469763e273b0a7d0a0a66756e6374696f6e206578747261637452696e6728747829207b0a20206966202874782e72696e67292072657475726e2074782e72696e673b0a20206966202874782e7061796c6f6164732026262074782e7061796c6f6164735b305d3f2e72696e67292072657475726e2074782e7061796c6f6164735b305d2e72696e673b0a202072657475726e206e756c6c3b0a7d0a0a66756e6374696f6e2072656e64657252696e674d656d626572732872696e6729207b0a2020766172206d6178203d2031362c2064697370203d2072696e672e736c69636528302c206d6178292c2072656d203d2072696e672e6c656e677468202d206d61783b0a20207661722068746d6c203d20273c64697620636c6173733d2272696e672d6d656d62657273223e273b0a2020646973702e666f72456163682866756e6374696f6e286d2c206929207b0a202020207661722064203d2041727261792e69734172726179286d29203f206d5b305d203a206d3b0a2020202068746d6c202b3d20273c64697620636c6173733d2272696e672d6d656d626572223e3c7370616e20636c6173733d2272696e672d696e646578223e5b27202b2069202b20275d3c2f7370616e3e3c636f646520636c6173733d2272696e672d6b6579223e27202b20552e7472756e634861736828642c2031322c203829202b20273c2f636f64653e3c2f6469763e273b0a20207d293b0a20206966202872656d203e2030292068746d6c202b3d20273c64697620636c6173733d2272696e672d6d6f726520746578742d6d75746564223e2e2e2e20616e642027202b2072656d202b2027206d6f7265206d656d626572733c2f6469763e273b0a202072657475726e2068746d6c202b20273c2f6469763e273b0a7d0a0a66756e6374696f6e2072656e64657250726f6f6628747869642c20656e68616e63656429207b0a2020766172206964203d20747869642e736c69636528302c2038293b0a20206966202821656e68616e636564292072657475726e20273c64697620636c6173733d2273656374696f6e2d63617264223e27202b2075692e73656374696f6e486561646572287b2069636f6e3a20275b505d272c207469746c653a2027566572696679205061796d656e742050726f6f66272c2062616467653a207b20746578743a20274241434b454e44205245515549524544272c20636c6173733a202762616467652d70656e64696e6727207d207d29202b0a20202020273c64697620636c6173733d2273656374696f6e2d636f6e74656e74223e3c64697620636c6173733d2270726f6f662d6c696d69746564223e3c7020636c6173733d22746578742d6d75746564223e50726f6f662076616c69646174696f6e2072657175697265732061206261636b656e64207468617420737570706f7274732063727970746f6772617068696320766572696669636174696f6e2028476f206e617469766520636f6465292e205468697320697320617661696c61626c65207768656e2072756e6e696e6720746865206578706c6f72657220696e20484f4c4f4752414d206f7220776974682061206c6f63616c206578706c6f726572207468617420737570706f7274732070726f6f662076616c69646174696f6e2e3c2f703e3c2f6469763e3c2f6469763e3c2f6469763e273b0a202072657475726e20273c64697620636c6173733d2273656374696f6e2d63617264223e27202b2075692e73656374696f6e486561646572287b2069636f6e3a20275b505d272c207469746c653a2027566572696679205061796d656e742050726f6f6627207d29202b0a20202020273c64697620636c6173733d2273656374696f6e2d636f6e74656e74223e3c7020636c6173733d22746578742d6d7574656420746578742d736d22207374796c653d226d617267696e2d626f74746f6d3a766172282d2d732d3429223e456e7465722061204445524f2070726f6f6620746f207665726966792069662074686973207472616e73616374696f6e2073656e742066756e647320746f20796f752e3c2f703e27202b0a20202020273c64697620636c6173733d2270726f6f662d666f726d223e3c74657874617265612069643d2270726f6f662d696e7075742d27202b206964202b20272220636c6173733d2270726f6f662d74657874617265612220706c616365686f6c6465723d225061737465206465726f70726f6f6631712e2e2e20686572652220726f77733d2234223e3c2f74657874617265613e27202b0a20202020273c627574746f6e20636c6173733d2262746e2062746e2d7072696d61727922206f6e636c69636b3d224465726f4578706c6f7265722e6d6f64756c65732e676574285c277472616e73616374696f6e735c27292e76616c696461746550726f6f66285c2727202b2074786964202b20275c2729223e56616c69646174652050726f6f663c2f627574746f6e3e3c2f6469763e27202b0a20202020273c6469762069643d2270726f6f662d726573756c742d27202b206964202b202722207374796c653d226d617267696e2d746f703a766172282d2d732d3429223e3c2f6469763e3c2f6469763e3c2f6469763e273b0a7d0a0a6173796e632066756e6374696f6e2076616c696461746550726f6f66287478696429207b0a2020766172206964203d20747869642e736c69636528302c2038292c20696e70203d20646f63756d656e742e676574456c656d656e7442794964282770726f6f662d696e7075742d27202b206964292c20726573203d20646f63756d656e742e676574456c656d656e7442794964282770726f6f662d726573756c742d27202b206964293b0a20206966202821696e70207c7c2021726573292072657475726e3b0a20207661722070726f6f66203d20696e702e76616c75652e7472696d28293b0a2020696620282170726f6f6629207b207265732e696e6e657248544d4c203d20273c64697620636c6173733d2270726f6f662d6572726f72223e506c6561736520656e74657220612070726f6f6620737472696e673c2f6469763e273b2072657475726e3b207d0a20207265732e696e6e657248544d4c203d20273c64697620636c6173733d2270726f6f662d6c6f6164696e67223e3c64697620636c6173733d226c6f6164696e672d7370696e6e657222207374796c653d2277696474683a313670783b6865696768743a31367078223e3c2f6469763e56616c69646174696e672e2e2e3c2f6469763e273b0a2020747279207b0a2020202076617220636f6e6e203d204d2e6765742827636f6e6e656374697669747927292c2072203d20617761697420636f6e6e2e76616c696461746550726f6f662870726f6f662c2074786964293b0a2020202069662028722e76616c696429207265732e696e6e657248544d4c203d20273c64697620636c6173733d2270726f6f662d76616c6964223e3c64697620636c6173733d2270726f6f662d686561646572223e5b4f4b5d2050726f6f662056616c69643c2f6469763e3c64697620636c6173733d2270726f6f662d64657461696c73223e27202b2075692e64657461696c526f772827526563697069656e74272c20552e7472756e634861736828722e616464726573732c2031362c203132292c207b206d6f6e6f3a2074727565207d29202b2075692e64657461696c526f772827416d6f756e74272c20552e666d744445524f28722e616d6f756e7429202b2027204445524f2729202b2028722e7061796c6f6164203f2075692e64657461696c526f7728275061796c6f6164272c20722e7061796c6f616429203a20272729202b20273c2f6469763e3c2f6469763e273b0a20202020656c7365207265732e696e6e657248544d4c203d20273c64697620636c6173733d2270726f6f662d696e76616c6964223e3c64697620636c6173733d2270726f6f662d686561646572223e5b585d2050726f6f6620496e76616c69643c2f6469763e3c703e27202b2028722e6572726f72207c7c20275468652070726f6f6620636f756c64206e6f742062652076616c69646174656420666f722074686973207472616e73616374696f6e2e2729202b20273c2f703e3c2f6469763e273b0a20207d20636174636820286529207b207265732e696e6e657248544d4c203d20273c64697620636c6173733d2270726f6f662d6572726f72223e4572726f723a2027202b20552e65736348746d6c28652e6d65737361676529202b20273c2f6469763e273b207d0a7d0a0a72657475726e207b20696e69743a20696e69742c206c6f61644d656d706f6f6c3a206c6f61644d656d706f6f6c2c206c6f616446756c6c506f6f6c3a206c6f616446756c6c506f6f6c2c2072656e646572547844657461696c3a2072656e646572547844657461696c2c2076616c696461746550726f6f663a2076616c696461746550726f6f662c206465746563745478547970653a20646574656374547970652c2054585f54595045533a205458207d3b0a7d2928293b0a0a2a2f6a53435f414354494f4e55010d0ecdd5f86457b10f226b6e412359a020bdb9a37469f919827b0ba78f20bcfe0017a69c18c4bdf99c126c0c9cc3132d02da0c1aff417f701d086e888465421de1000b3fe4038aef97fb906f419fc7246eb3e6f02ae654b7bfd476f1229ed76f4092001f1eebcfc284818b4584c2bb36c768d8e768e72efac81a8b04fed7568b92c7c801249249527b1264fefd0318421498abb5e4e98ce7661d6748143953925e9e9b1301014a2c3f6b9e713c01409d7fbf3a844ff00e1dbfb23ec2c410cf54f23f889493002f415fa615f99b3b69e34d5154dc77af680abca4f762dfebc48f0a9f2cb43e270117f8da6878081b65801e63920bc090f2fe7e40e563550e06439f757a42ee5c130014fcf5b888c8d5531873cb8c9f1ba288f85aed50691cef6770d59b8e9411a9ef0026ea8aacd7111fb50dcc0c170baeb28d4e5b14b6b26d94410196b3ea53263458012c76937a26af4f304825b2386cf22a36c60df451f65e7697e49d0944225c14ba001aaea8102707bd4bbcee9f95d1fa3ab45e4197d43f8b3f4797605f02e26203880016ae2f7b8f153680b1e5614ffb3770fa6f3878bffbd90e7fa6ba527aeb11f2fa00000000000000000000000000000000000000000000000000000000000000000011e77e28d9d7cc657e634be8327cda3ca0a16f183dd11a6e23f40285da15a4a218db187cecb714a5a3dda6e9e1dfbba29543d953f49e717aba644b3d3f6c8acc0c02ce66d11c36763eb370ab779cf744e730ee146d82d81dfc3d1525467651ea0021df8edc0706fdbcd0a6984ee99b89e38817f59e2f3dafabb8425cfa84f15d010027557205cb8d4fe1e5f548e60bd46018273084da06d0ec4a507f03ffcea1737f26f914ff6f093b9526f66930071b3f565c3e2f145ef95fa9440e3634b08f16c91409d8997aa4a649a80935099fdf986ca5bfd6c85348f208d5bb118746ba627919f88f16766c5ba39f3944669301bdeea7c93097ff3578fe3c153a702043a4772abe7d11440b58b9a5bd6eb85d47d0139d5bcef24ae841e70ee1c082fe4ee211050b13acb223bdb4a4ed43e57b868672b8c9a01b0d2d8a7dc89ce10a6ac7bfe12fca96596c749634f9a0cfaaf5fa5a6df6a68d26a79f56d844852c3645514bff1a480e880cc95c47632ba1a0cf013069ecb6440c84d67af8ed5b4eb196f90e5b100349778f0f280229ca1c20a75a6c0e68b84e5e486e0a77e0d3e3e1105f47eb2c84d7327ef63a36d6425fc6f8b09c67d8384dc84367c91e8478c570f1b6bc4a0118b43eda91c65140b581c03fc9462e16e76f7455a76f2f6a02816629e0a1aefa01141f41c0afc4025cc9f356a075ee3ca191087d562eb8df052e82b464fa71e38a011a0aa612fa7e4420931075be8694ba4527be34882549b522dc4ef78f242586fd010c968ea5bc729f9cb48285e1c29de268a71a52eebca99f68993005afe28c9f66000a94ab54bdbe73163d6d59d312ef3f45d6c72c17f7fb53b82cc364e9c46cc97201269d89d057acc7c16bd6fdfcefa0396a4b8575ab2c158aad4a5fcd674a5e675c000904e15fd388e2991894e66429782d965ed601bc6ace15a16d01971094c66792001b202860a17593a46a6e832211c4cbdbd263c399feccf7588a119acd55bb48bc0018de32c2326dcd5d724e8baefb0c5ac7bb50323afd6e8c0b197b5426fa59fae4002ccd030da978042477e08e33019531aed5d59036a745850b7e020f58aadded570016729cb5e06322bd33db3e300a0ccd94c66cc268888a73ab3e754843c23ca1de011234ff8d628ec68e15a0b5fa0f5fafd1d9efbffd94327da2b216081cb612a78300151b04db967c755f5aac97fc5f51b88a4df96c8b3bc29c8d32d80f1a19b1475901
DERO explorer source code | explorer version (api): under development (1.0) | dero version: golang pre-alpha | Copyright 2017-2022 Dero Project