DERO HE BlockChain Explorer(v1) Mainnet

hosted on

DERO Mining Node

Tx hash: f579697727f541c567aee994b4651cbdcd94e6c7196b0b31d076f89356fdf7f9 Type SC

Block: 4c5e95ddfb97cfd0af641610d63adaffc6794bf1999eaf64d498d51ac9317535 (VALID)
SCID current reserves
SCID Amount(in atomic units)
0000000000000000000000000000000000000000000000000000000000000000 0
SCID string variables
key value
C 2f2f2020436f7079726967687420323032342e20436976696c776172652e20416c6c207269676874732072657365727665642e0a2f2f202054454c4120446563656e7472616c697a65642057656220446f63756d656e74202854454c412d444f432d31290a46756e6374696f6e20496e697469616c697a655072697661746528292055696e7436340a313020494620696e69742829203d3d2030205448454e20474f544f2033300a32302052455455524e20310a33302053544f524528226e616d65486472222c20227570646174652e6a7322290a33312053544f524528226465736372486472222c2022557064617465204a532066696c6522290a33322053544f5245282269636f6e55524c486472222c202222290a33332053544f524528226455524c222c20227570646174652e6a7322290a33342053544f52452822646f6354797065222c202254454c412d4a532d3122290a33352053544f52452822737562446972222c202222290a33362053544f5245282266696c65436865636b43222c20223166353833623435306531316230663233323438623632303662363136326539346330333935623530336534323639656336646336306239353939666339326622290a33372053544f5245282266696c65436865636b53222c20223231303230353437343635336665376161663632623364613538386264653931656161323534316563366539313464333935643434643162346136373164653522290a3130302052455455524e20300a456e642046756e6374696f6e0a0a46756e6374696f6e20696e697428292055696e7436340a31302049462045584953545328226f776e65722229203d3d2030205448454e20474f544f2033300a32302052455455524e20310a33302053544f524528226f776e6572222c20616464726573732829290a35302053544f52452822646f6356657273696f6e222c2022312e302e3022290a36302053544f5245282268617368222c204845582854584944282929290a37302053544f524528226c696b6573222c2030290a38302053544f524528226469736c696b6573222c2030290a3130302052455455524e20300a456e642046756e6374696f6e0a0a46756e6374696f6e2061646472657373282920537472696e670a31302044494d207320617320537472696e670a3230204c45542073203d205349474e455228290a33302049462049535f414444524553535f56414c4944287329205448454e20474f544f2035300a34302052455455524e2022616e6f6e220a35302052455455524e20414444524553535f535452494e472873290a456e642046756e6374696f6e0a0a46756e6374696f6e205261746528722055696e743634292055696e7436340a31302044494d206164647220617320537472696e670a3135204c45542061646472203d206164647265737328290a31362049462072203c2031303020262620455849535453286164647229203d3d2030202626206164647220213d2022616e6f6e22205448454e20474f544f2033300a32302052455455524e20310a33302053544f524528616464722c2022222b722b225f222b424c4f434b5f4845494748542829290a34302049462072203c203530205448454e20474f544f2037300a35302053544f524528226c696b6573222c204c4f414428226c696b657322292b31290a36302052455455524e20300a37302053544f524528226469736c696b6573222c204c4f414428226469736c696b657322292b31290a3130302052455455524e20300a456e642046756e6374696f6e0a0a2f2a2f2f2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d0a2f2f2055706461746520456e7469746965730a0a66756e6374696f6e2075706461746528647429207b090a0975706461746543616d65726128293b0a0975706461746556696577426f7828293b09090a09757064617465537061776e54696d6572286474293b0a09757064617465456e656d696573286474293b0a0975706461746550726f6a656374696c6573286474293b090a7d0a0a0a0a66756e6374696f6e20726573697a655356472829207b0a097377203d2077696e646f772e696e6e657257696474683b0a097368203d2077696e646f772e696e6e65724865696768743b0a0975706461746556696577426f7828293b0a7d0a0a66756e6374696f6e2075706461746556696577426f782829207b0a0a09696620286b6579735b223d225d29207a6f6f6d202a3d20302e39383b0a09696620286b6579735b222d225d29207a6f6f6d202a3d20312e30323b0a0a0a09636f6e7374207669657757203d207377202a207a6f6f6d3b0a09636f6e7374207669657748203d207368202a207a6f6f6d3b0a0a09636f6e73742063616d58203d2063616d43656e7465722e78202d207669657757202f20323b0a09636f6e73742063616d59203d2063616d43656e7465722e79202d207669657748202f20323b0a0a0963616d4c6566742020203d2063616d43656e7465722e78202d20287377202a207a6f6f6d29202f20323b0a0963616d546f70202020203d2063616d43656e7465722e79202d20287368202a207a6f6f6d29202f20323b0a0963616d526967687420203d2063616d43656e7465722e78202b20287377202a207a6f6f6d29202f20323b0a0963616d426f74746f6d203d2063616d43656e7465722e79202b20287368202a207a6f6f6d29202f20323b0a0a097376672e736574417474726962757465282276696577426f78222c2060247b63616d587d20247b63616d597d20247b76696577577d20247b76696577487d60293b0a7d0a0a0a2f2f2054696d65720a6c657420656e656d79537061776e54696d6572203d20313030303b2f2f31207365636f6e640a66756e6374696f6e20757064617465537061776e54696d657228647429207b0a09656e656d79537061776e54696d6572202d3d2064743b0a0969662028656e656d79537061776e54696d6572203c3d203029207b0a0909666f722028636f6e73742062617365206f662067616d652e626173657329207b0a09090969662028626173652e636f6f6c646f776e203e203029207b0a09090909626173652e636f6f6c646f776e202d3d2064743b0a09090909636f6e74696e75653b0a0909097d0a0a090909636f6e737420636f756e74203d2067616d652e656e656d6965732e66696c7465722865203d3e20652e62617365203d3d3d2062617365292e6c656e6774683b0a0a09090969662028636f756e74203c20626173652e6d6178456e656d69657329207b0a09090909737061776e456e656d7946726f6d426173652862617365293b0a09090909626173652e636f6f6c646f776e203d20626173652e737061776e496e74657276616c3b0a0909097d0a09097d0a0909656e656d79537061776e54696d6572203d20323030303b0a097d0a7d0a0a66756e6374696f6e2075706461746543616d65726128647429207b0a092f2f2063616d65726120666f6c6c6f777320706c617965720a0963616d43656e7465722e78203d2067616d652e706c617965722e783b0a0963616d43656e7465722e79203d2067616d652e706c617965722e793b0a7d0a66756e6374696f6e2075706461746550726f6a656374696c657328647429207b090a092f2f2068616e646c652070726f6a656374696c65730a09666f7220286c65742070206f662067616d652e70726f6a656374696c657329207b0a0909702e78202b3d204d6174682e636f7328702e616e676c6529202a20702e7370656564202a2064743b0a0909702e79202b3d204d6174682e73696e28702e616e676c6529202a20702e7370656564202a2064743b0a0909702e6c696665202d3d2064743b202020202020200a097d0a7d0a0a66756e6374696f6e207570646174655061727469636c657328647429207b0a09666f7220286c65742070206f662067616d652e7061727469636c657329207b0a0909702e78202b3d20702e7678202a2064743b0a0909702e79202b3d20702e7679202a2064743b0a0909702e6c696665202d3d2064743b0a097d0a7d0a0a66756e6374696f6e20656e656d7943616e53686f6f74286529207b0a09636f6e7374206478203d2067616d652e706c617965722e78202d20652e783b0a09636f6e7374206479203d2067616d652e706c617965722e79202d20652e793b0a09636f6e73742064697374203d204d6174682e6879706f742864782c206479293b0a0a096966202864697374203e20383030292072657475726e2066616c73653b202f2f206d61782072616e67650a0969662028652e66697265436f6f6c646f776e203e2030292072657475726e2066616c73653b0a0a092f2f206f7074696f6e616c3a20636865636b20696620656e656d7920697320726f7567686c7920666163696e672074686520706c617965720a09636f6e737420616e676c65546f506c61796572203d204d6174682e6174616e322864792c206478293b0a09636f6e73742064696666203d204d6174682e616273284d6174682e6174616e32284d6174682e73696e28616e676c65546f506c61796572202d20652e616e676c65292c204d6174682e636f7328616e676c65546f506c61796572202d20652e616e676c652929293b0a096966202864696666203e20302e36292072657475726e2066616c73653b202f2f206e6f7420666163696e6720706c6179657220656e6f7567680a0a0972657475726e20747275653b0a7d0a66756e6374696f6e2067657450726564696374656441696d286529207b0a09636f6e7374207078203d2067616d652e706c617965722e783b0a09636f6e7374207079203d2067616d652e706c617965722e793b0a09636f6e737420707678203d204d6174682e636f732867616d652e706c617965722e616e676c6529202a2067616d652e706c617965722e73706565643b0a09636f6e737420707679203d204d6174682e73696e2867616d652e706c617965722e616e676c6529202a2067616d652e706c617965722e73706565643b0a0a09636f6e7374206578203d20652e783b0a09636f6e7374206579203d20652e793b0a0a09636f6e73742062756c6c65745370656564203d203930303b200a0a09636f6e7374206478203d207078202d2065783b0a09636f6e7374206479203d207079202d2065793b0a0a09636f6e73742064697374203d204d6174682e6879706f742864782c206479293b0a09636f6e73742074203d2064697374202f2062756c6c657453706565643b0a0a09636f6e73742070726564696374656458203d207078202b20707678202a20743b0a09636f6e73742070726564696374656459203d207079202b20707679202a20743b0a0a0972657475726e204d6174682e6174616e322870726564696374656459202d2065792c2070726564696374656458202d206578293b0a7d0a0a0a66756e6374696f6e2067657441766f6964616e6365416e676c65286529207b0a09636f6e7374206c6f6f6b44697374203d2033303b0a0a09636f6e73742072617973203d205b0a0909652e616e676c652c20202020202020202f2f2063656e7465720a0909652e616e676c65202b20302e342c20202f2f206c6566740a0909652e616e676c65202d20302e342020202f2f2072696768740a095d3b0a0a096c65742064616e6765724c656674203d2066616c73653b0a096c65742064616e67657243656e746572203d2066616c73653b0a096c65742064616e6765725269676874203d2066616c73653b0a0a09666f7220286c65742069203d20303b2069203c20726179732e6c656e6774683b20692b2b29207b0a0909636f6e737420616e67203d20726179735b695d3b0a0909636f6e7374206c78203d20652e78202b204d6174682e636f7328616e6729202a206c6f6f6b446973743b0a0909636f6e7374206c79203d20652e79202b204d6174682e73696e28616e6729202a206c6f6f6b446973743b0a0a0909666f722028636f6e7374206f626a206f6620776f726c644f626a6563747329207b0a09090969662028706f696e74496e506f6c79286c782c206c792c206f626a2e706f6c792c206f626a2e782c206f626a2e792929207b0a090909096966202869203d3d3d2030292064616e67657243656e746572203d20747275653b0a090909096966202869203d3d3d2031292064616e6765724c656674203d20747275653b0a090909096966202869203d3d3d2032292064616e6765725269676874203d20747275653b0a0909097d0a09097d0a097d0a0a092f2f2052657475726e20616e20616e676c65206f666673657420746f206170706c7920746f2064657369726564416e676c650a096966202864616e67657243656e74657229207b0a0909636f6e73742073696465203d20652e61766f6964446972203f3f20284d6174682e72616e646f6d2829203c20302e35203f2031203a202d31293b0a0909652e61766f6964446972203d20736964653b0a090972657475726e2073696465202a20302e383b0a097d0a096966202864616e6765724c656674292072657475726e202d302e343b0a096966202864616e6765725269676874292072657475726e202b302e343b0a0a0972657475726e20303b202f2f206e6f2061766f6964616e6365206e65656465640a7d0a0a0a66756e6374696f6e20757064617465456e656d69657328647429207b0a09666f7220286c65742065206f662067616d652e656e656d69657329207b0a09097377697463682028652e7479706529207b0a090909636173652022636861736572223a202075706461746543686173657228652c206474293b20627265616b3b0a09090963617365202273747261666572223a207570646174655374726166657228652c206474293b20627265616b3b0a09090963617365202274616e6b223a2020202075706461746554616e6b28652c206474293b20627265616b3b0a09097d0a097d202020200a7d0a0a66756e6374696f6e2075706461746543686173657228652c20647429207b0a09090a092f2f20312e204348415345204c4f4749430a09636f6e7374206478203d2067616d652e706c617965722e78202d20652e783b0a09636f6e7374206479203d2067616d652e706c617965722e79202d20652e793b0a096c65742064657369726564416e676c65203d204d6174682e6174616e322864792c206478293b0a0a092f2f20322e2041564f4944414e4345204c4f4749430a0964657369726564416e676c65202b3d2067657441766f6964616e6365416e676c652865293b0a0a092f2f20536d6f6f7468207374656572696e6720746f776172642064657369726564416e676c650a096c65742064696666203d2064657369726564416e676c65202d20652e616e676c653b0a0964696666203d204d6174682e6174616e32284d6174682e73696e2864696666292c204d6174682e636f73286469666629293b0a09652e616e676c65202b3d2064696666202a20302e31353b0a0a092f2f20342e204d4f56450a09652e78202b3d204d6174682e636f7328652e616e676c6529202a20652e7370656564202a2064743b0a09652e79202b3d204d6174682e73696e28652e616e676c6529202a20652e7370656564202a2064743b0a0a0a092f2f20466972696e670a09652e66697265436f6f6c646f776e202d3d2064743b0a092f2f206166746572206d6f76656d656e740a0969662028656e656d7943616e53686f6f7428652929207b0a0909636f6e73742061696d416e676c65203d2067657450726564696374656441696d2865293b0a09090a0909737061776e456e656d7942756c6c657428652e782c20652e792c2061696d416e676c65293b0a0909652e66697265436f6f6c646f776e203d20652e66697265526174653b0a097d0a0a7d0a0a0a66756e6374696f6e207570646174655374726166657228652c20647429207b0a09636f6e7374206478203d2067616d652e706c617965722e78202d20652e783b0a09636f6e7374206479203d2067616d652e706c617965722e79202d20652e793b0a09636f6e73742064697374203d204d6174682e6879706f742864782c206479293b0a0a09636f6e737420616e676c65546f506c61796572203d204d6174682e6174616e322864792c206478293b0a096c65742064657369726564416e676c65203d20616e676c65546f506c617965723b0a0a092f2f204d61696e7461696e2064697374616e63650a09636f6e737420696465616c203d203236303b0a096966202864697374203c20696465616c202d203230292064657369726564416e676c65202b3d204d6174682e50493b202f2f206261636b2075700a09656c7365206966202864697374203e20696465616c202b203230292064657369726564416e676c65203d20616e676c65546f506c617965723b202f2f206d6f766520696e0a0a092f2f20416464207374726166696e670a09636f6e737420737472616665203d20652e636c6f636b77697365203f204d6174682e50492f32203a202d4d6174682e50492f323b0a0964657369726564416e676c65202b3d207374726166653b0a0a092f2f204164642061766f6964616e63650a0964657369726564416e676c65202b3d2067657441766f6964616e6365416e676c652865293b0a0a092f2f20536d6f6f7468207374656572696e670a096c65742064696666203d2064657369726564416e676c65202d20652e616e676c653b0a0964696666203d204d6174682e6174616e32284d6174682e73696e2864696666292c204d6174682e636f73286469666629293b0a09652e616e676c65202b3d2064696666202a20302e31353b0a0a092f2f204d6f76650a09652e78202b3d204d6174682e636f7328652e616e676c6529202a20652e7370656564202a2064743b0a09652e79202b3d204d6174682e73696e28652e616e676c6529202a20652e7370656564202a2064743b0a0a092f2f2053686f6f74696e670a09652e66697265436f6f6c646f776e202d3d2064743b0a0969662028656e656d7943616e53686f6f7428652929207b0a0909636f6e73742061696d416e676c65203d2067657450726564696374656441696d2865293b0a0909737061776e456e656d7942756c6c657428652e782c20652e792c2061696d416e676c65293b0a0909652e66697265436f6f6c646f776e203d20652e66697265526174653b0a097d0a7d0a0a66756e6374696f6e2075706461746554616e6b28652c20647429207b0a0a092f2f202d2d2d20312e2048554c4c204d4f56454d454e540a0a09636f6e7374206478203d2067616d652e706c617965722e78202d20652e783b0a09636f6e7374206479203d2067616d652e706c617965722e79202d20652e793b0a09636f6e737420616e676c65546f506c61796572203d204d6174682e6174616e322864792c206478293b0a0a092f2f204164642061766f6964616e63650a096c6574206465736972656448756c6c416e676c65203d20616e676c65546f506c61796572202b2067657441766f6964616e6365416e676c652865293b0a0a092f2f20536d6f6f74682068756c6c207374656572696e670a096c6574206469666648756c6c203d206465736972656448756c6c416e676c65202d20652e616e676c653b0a096469666648756c6c203d204d6174682e6174616e32284d6174682e73696e286469666648756c6c292c204d6174682e636f73286469666648756c6c29293b0a09652e616e676c65202b3d206469666648756c6c202a20652e68756c6c5475726e53706565643b0a0a092f2f204d61696e7461696e20696465616c2072616e67650a09636f6e73742064697374203d204d6174682e6879706f742864782c206479293b0a096966202864697374203e20652e696465616c52616e6765202b203430207c7c20652e7265706f736974696f6e696e6729207b0a09092f2f206d6f766520636c6f7365720a0909652e78202b3d204d6174682e636f7328652e616e676c6529202a20652e7370656564202a2064743b0a0909652e79202b3d204d6174682e73696e28652e616e676c6529202a20652e7370656564202a2064743b0a097d20656c7365206966202864697374203c20652e696465616c52616e6765202d20343029207b0a09092f2f206261636b2075700a0909652e78202d3d204d6174682e636f7328652e616e676c6529202a20652e7370656564202a2064743b0a0909652e79202d3d204d6174682e73696e28652e616e676c6529202a20652e7370656564202a2064743b0a097d0a0a0a092f2f202d2d2d20322e2054555252455420524f544154494f4e0a0a096966202821652e7475727265742e616e676c652920652e7475727265742e616e676c65203d20652e616e676c653b202f2f20696e69740a0a096c65742064657369726564547572726574416e676c65203d20616e676c65546f506c617965723b0a0a096c65742064696666547572726574203d2064657369726564547572726574416e676c65202d20652e7475727265742e616e676c653b0a0964696666547572726574203d204d6174682e6174616e32284d6174682e73696e2864696666547572726574292c204d6174682e636f73286469666654757272657429293b0a0a09652e7475727265742e616e676c65202b3d2064696666547572726574202a20652e7475727265742e7475726e53706565643b0a0a0a092f2f202d2d2d20332e204649524520434f4e54524f4c0a0a09652e66697265436f6f6c646f776e202d3d2064743b0a0a09636f6e737420747572726574416c69676e6564203d204d6174682e616273286469666654757272657429203c20302e313b0a09636f6e737420636c65617253686f74203d2021726179486974734f626a65637428652e782c20652e792c20652e7475727265742e616e676c65293b0a09636f6e737420696e52616e6765203d2064697374203c20652e696465616c52616e6765202b203130303b0a0a0969662028636c65617253686f7420262620696e52616e6765297b0a0909652e7265706f736974696f6e696e67203d2066616c73653b0a090969662028747572726574416c69676e656420262620652e66697265436f6f6c646f776e203c3d20302029207b0a090909737061776e426967456e656d7942756c6c657428652e782c20652e792c20652e7475727265742e616e676c65293b0a090909652e66697265436f6f6c646f776e203d20652e66697265526174653b0a09097d0a097d20656c7365206966202821636c65617253686f74297b09090a0909652e7265706f736974696f6e696e67203d20747275653b0a097d0a7d0a0a0a66756e6374696f6e20726179486974734f626a65637428782c20792c20616e676c652c206d617844697374203d203230303029207b0a09636f6e737420656e6458203d2078202b204d6174682e636f7328616e676c6529202a206d6178446973743b0a09636f6e737420656e6459203d2079202b204d6174682e73696e28616e676c6529202a206d6178446973743b0a0a09666f722028636f6e7374206f626a206f6620776f726c644f626a6563747329207b0a0909636f6e737420706f6c79203d20676574576f726c64506f6c79286f626a293b0a0a0909666f7220286c65742069203d20303b2069203c20706f6c792e6c656e6774683b20692b2b29207b0a090909636f6e73742061203d20706f6c795b695d3b0a090909636f6e73742062203d20706f6c795b2869202b203129202520706f6c792e6c656e6774685d3b0a0a090909696620287365676d656e7473496e7465727365637428782c20792c20656e64582c20656e64592c20612e782c20612e792c20622e782c20622e792929207b0a0909090972657475726e20747275653b202f2f20626c6f636b65640a0909097d0a09097d0a097d0a0a0972657475726e2066616c73653b202f2f20636c6561722073686f740a7d0a0a66756e6374696f6e207365676d656e7473496e746572736563742878312c79312c2078322c79322c2078332c79332c2078342c793429207b0a0966756e6374696f6e206363772861782c61792c2062782c62792c2063782c637929207b0a090972657475726e20286379202d20617929202a20286278202d20617829203e20286279202d20617929202a20286378202d206178293b0a097d0a0972657475726e20280a09096363772878312c79312c2078332c79332c2078342c79342920213d3d206363772878322c79322c2078332c79332c2078342c7934292026260a09096363772878312c79312c2078322c79322c2078332c79332920213d3d206363772878312c79312c2078322c79322c2078342c7934290a09293b0a7d0a2a2f
dURL 7570646174652e6a73
descrHdr 557064617465204a532066696c65
dislikes 0
docType 54454c412d4a532d31
docVersion 312e302e30
fileCheckC 31663538336234353065313162306632333234386236323036623631363265393463303339356235303365343236396563366463363062393539396663393266
fileCheckS 32313032303534373436353366653761616636326233646135383862646539316561613235343165633665393134643339356434346431623461363731646535
hash 66353739363937373237663534316335363761656539393462343635316362646364393465366337313936623062333164303736663839333536666466376639
iconURLHdr
likes 0
nameHdr 7570646174652e6a73
owner 6465726f317179347966376335373777717a767a7134347833306c7967686135776a7a377772687736646e76356e337071346634643761716c75717133306d37616b
subDir
SCID uint64 variables
key value
built BLID : 00cb7d79d2dd807d84182ecf9449a831d707a06212f089fbba2d37d4689bf52e
Tx RootHash: 8ba7fb6a3dca6052cbe55b5bd63194d27867d5e9dd0c456a76df547f974b4530 built height : 7138355
Timestamp: 1780511416352 Timestamp [UTC]: 2026-06-03 20:30:16 Age [y:d:h:m:s]: 3:15:10.981
Block: 7138356 Fee: 0.13627 Tx size: 10.461 kB
Tx version: 1 No of confirmations: 632 Signature type: DERO_HOMOMORPHIC
Extra:
DERO : 2 inputs/outputs (RING size) Fees 0.13627 Deposited to SC 0.00000
Sender : dero1qy4yf7c577wqzvzq44x30lygha5wjz7wrhw6dnv5n3pq4f4d7aqluqq30m7ak
address
dero1qy4yf7c577wqzvzq44x30lygha5wjz7wrhw6dnv5n3pq4f4d7aqluqq30m7ak
dero1qykyta6ntpd27nl0yq4xtzaf4ls6p5e9pqu0k2x4x3pqq5xavjsdxqgny8270
SC Balance: 0.00000 DERO
SC CODE:
  //  Copyright 2024. Civilware. All rights reserved.
//  TELA Decentralized Web Document (TELA-DOC-1)
Function InitializePrivate() Uint64
10 IF init() == 0 THEN GOTO 30
20 RETURN 1
30 STORE("nameHdr", "update.js")
31 STORE("descrHdr", "Update JS file")
32 STORE("iconURLHdr", "")
33 STORE("dURL", "update.js")
34 STORE("docType", "TELA-JS-1")
35 STORE("subDir", "")
36 STORE("fileCheckC", "1f583b450e11b0f23248b6206b6162e94c0395b503e4269ec6dc60b9599fc92f")
37 STORE("fileCheckS", "210205474653fe7aaf62b3da588bde91eaa2541ec6e914d395d44d1b4a671de5")
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

/*//----------------
// Update Entities

function update(dt) {	
	updateCamera();
	updateViewBox();		
	updateSpawnTimer(dt);
	updateEnemies(dt);
	updateProjectiles(dt);	
}



function resizeSVG() {
	sw = window.innerWidth;
	sh = window.innerHeight;
	updateViewBox();
}

function updateViewBox() {

	if (keys["="]) zoom *= 0.98;
	if (keys["-"]) zoom *= 1.02;


	const viewW = sw * zoom;
	const viewH = sh * zoom;

	const camX = camCenter.x - viewW / 2;
	const camY = camCenter.y - viewH / 2;

	camLeft   = camCenter.x - (sw * zoom) / 2;
	camTop    = camCenter.y - (sh * zoom) / 2;
	camRight  = camCenter.x + (sw * zoom) / 2;
	camBottom = camCenter.y + (sh * zoom) / 2;

	svg.setAttribute("viewBox", `${camX} ${camY} ${viewW} ${viewH}`);
}


// Timer
let enemySpawnTimer = 1000;//1 second
function updateSpawnTimer(dt) {
	enemySpawnTimer -= dt;
	if (enemySpawnTimer <= 0) {
		for (const base of game.bases) {
			if (base.cooldown > 0) {
				base.cooldown -= dt;
				continue;
			}

			const count = game.enemies.filter(e => e.base === base).length;

			if (count < base.maxEnemies) {
				spawnEnemyFromBase(base);
				base.cooldown = base.spawnInterval;
			}
		}
		enemySpawnTimer = 2000;
	}
}

function updateCamera(dt) {
	// camera follows player
	camCenter.x = game.player.x;
	camCenter.y = game.player.y;
}
function updateProjectiles(dt) {	
	// handle projectiles
	for (let p of game.projectiles) {
		p.x += Math.cos(p.angle) * p.speed * dt;
		p.y += Math.sin(p.angle) * p.speed * dt;
		p.life -= dt;       
	}
}

function updateParticles(dt) {
	for (let p of game.particles) {
		p.x += p.vx * dt;
		p.y += p.vy * dt;
		p.life -= dt;
	}
}

function enemyCanShoot(e) {
	const dx = game.player.x - e.x;
	const dy = game.player.y - e.y;
	const dist = Math.hypot(dx, dy);

	if (dist > 800) return false; // max range
	if (e.fireCooldown > 0) return false;

	// optional: check if enemy is roughly facing the player
	const angleToPlayer = Math.atan2(dy, dx);
	const diff = Math.abs(Math.atan2(Math.sin(angleToPlayer - e.angle), Math.cos(angleToPlayer - e.angle)));
	if (diff > 0.6) return false; // not facing player enough

	return true;
}
function getPredictedAim(e) {
	const px = game.player.x;
	const py = game.player.y;
	const pvx = Math.cos(game.player.angle) * game.player.speed;
	const pvy = Math.sin(game.player.angle) * game.player.speed;

	const ex = e.x;
	const ey = e.y;

	const bulletSpeed = 900; 

	const dx = px - ex;
	const dy = py - ey;

	const dist = Math.hypot(dx, dy);
	const t = dist / bulletSpeed;

	const predictedX = px + pvx * t;
	const predictedY = py + pvy * t;

	return Math.atan2(predictedY - ey, predictedX - ex);
}


function getAvoidanceAngle(e) {
	const lookDist = 30;

	const rays = [
		e.angle,        // center
		e.angle + 0.4,  // left
		e.angle - 0.4   // right
	];

	let dangerLeft = false;
	let dangerCenter = false;
	let dangerRight = false;

	for (let i = 0; i < rays.length; i++) {
		const ang = rays[i];
		const lx = e.x + Math.cos(ang) * lookDist;
		const ly = e.y + Math.sin(ang) * lookDist;

		for (const obj of worldObjects) {
			if (pointInPoly(lx, ly, obj.poly, obj.x, obj.y)) {
				if (i === 0) dangerCenter = true;
				if (i === 1) dangerLeft = true;
				if (i === 2) dangerRight = true;
			}
		}
	}

	// Return an angle offset to apply to desiredAngle
	if (dangerCenter) {
		const side = e.avoidDir ?? (Math.random() < 0.5 ? 1 : -1);
		e.avoidDir = side;
		return side * 0.8;
	}
	if (dangerLeft) return -0.4;
	if (dangerRight) return +0.4;

	return 0; // no avoidance needed
}


function updateEnemies(dt) {
	for (let e of game.enemies) {
		switch (e.type) {
			case "chaser":  updateChaser(e, dt); break;
			case "strafer": updateStrafer(e, dt); break;
			case "tank":    updateTank(e, dt); break;
		}
	}    
}

function updateChaser(e, dt) {
		
	// 1. CHASE LOGIC
	const dx = game.player.x - e.x;
	const dy = game.player.y - e.y;
	let desiredAngle = Math.atan2(dy, dx);

	// 2. AVOIDANCE LOGIC
	desiredAngle += getAvoidanceAngle(e);

	// Smooth steering toward desiredAngle
	let diff = desiredAngle - e.angle;
	diff = Math.atan2(Math.sin(diff), Math.cos(diff));
	e.angle += diff * 0.15;

	// 4. MOVE
	e.x += Math.cos(e.angle) * e.speed * dt;
	e.y += Math.sin(e.angle) * e.speed * dt;


	// Firing
	e.fireCooldown -= dt;
	// after movement
	if (enemyCanShoot(e)) {
		const aimAngle = getPredictedAim(e);
		
		spawnEnemyBullet(e.x, e.y, aimAngle);
		e.fireCooldown = e.fireRate;
	}

}


function updateStrafer(e, dt) {
	const dx = game.player.x - e.x;
	const dy = game.player.y - e.y;
	const dist = Math.hypot(dx, dy);

	const angleToPlayer = Math.atan2(dy, dx);
	let desiredAngle = angleToPlayer;

	// Maintain distance
	const ideal = 260;
	if (dist < ideal - 20) desiredAngle += Math.PI; // back up
	else if (dist > ideal + 20) desiredAngle = angleToPlayer; // move in

	// Add strafing
	const strafe = e.clockwise ? Math.PI/2 : -Math.PI/2;
	desiredAngle += strafe;

	// Add avoidance
	desiredAngle += getAvoidanceAngle(e);

	// Smooth steering
	let diff = desiredAngle - e.angle;
	diff = Math.atan2(Math.sin(diff), Math.cos(diff));
	e.angle += diff * 0.15;

	// Move
	e.x += Math.cos(e.angle) * e.speed * dt;
	e.y += Math.sin(e.angle) * e.speed * dt;

	// Shooting
	e.fireCooldown -= dt;
	if (enemyCanShoot(e)) {
		const aimAngle = getPredictedAim(e);
		spawnEnemyBullet(e.x, e.y, aimAngle);
		e.fireCooldown = e.fireRate;
	}
}

function updateTank(e, dt) {

	// --- 1. HULL MOVEMENT

	const dx = game.player.x - e.x;
	const dy = game.player.y - e.y;
	const angleToPlayer = Math.atan2(dy, dx);

	// Add avoidance
	let desiredHullAngle = angleToPlayer + getAvoidanceAngle(e);

	// Smooth hull steering
	let diffHull = desiredHullAngle - e.angle;
	diffHull = Math.atan2(Math.sin(diffHull), Math.cos(diffHull));
	e.angle += diffHull * e.hullTurnSpeed;

	// Maintain ideal range
	const dist = Math.hypot(dx, dy);
	if (dist > e.idealRange + 40 || e.repositioning) {
		// move closer
		e.x += Math.cos(e.angle) * e.speed * dt;
		e.y += Math.sin(e.angle) * e.speed * dt;
	} else if (dist < e.idealRange - 40) {
		// back up
		e.x -= Math.cos(e.angle) * e.speed * dt;
		e.y -= Math.sin(e.angle) * e.speed * dt;
	}


	// --- 2. TURRET ROTATION

	if (!e.turret.angle) e.turret.angle = e.angle; // init

	let desiredTurretAngle = angleToPlayer;

	let diffTurret = desiredTurretAngle - e.turret.angle;
	diffTurret = Math.atan2(Math.sin(diffTurret), Math.cos(diffTurret));

	e.turret.angle += diffTurret * e.turret.turnSpeed;


	// --- 3. FIRE CONTROL

	e.fireCooldown -= dt;

	const turretAligned = Math.abs(diffTurret) < 0.1;
	const clearShot = !rayHitsObject(e.x, e.y, e.turret.angle);
	const inRange = dist < e.idealRange + 100;

	if (clearShot && inRange){
		e.repositioning = false;
		if (turretAligned && e.fireCooldown <= 0 ) {
			spawnBigEnemyBullet(e.x, e.y, e.turret.angle);
			e.fireCooldown = e.fireRate;
		}
	} else if (!clearShot){		
		e.repositioning = true;
	}
}


function rayHitsObject(x, y, angle, maxDist = 2000) {
	const endX = x + Math.cos(angle) * maxDist;
	const endY = y + Math.sin(angle) * maxDist;

	for (const obj of worldObjects) {
		const poly = getWorldPoly(obj);

		for (let i = 0; i < poly.length; i++) {
			const a = poly[i];
			const b = poly[(i + 1) % poly.length];

			if (segmentsIntersect(x, y, endX, endY, a.x, a.y, b.x, b.y)) {
				return true; // blocked
			}
		}
	}

	return false; // clear shot
}

function segmentsIntersect(x1,y1, x2,y2, x3,y3, x4,y4) {
	function ccw(ax,ay, bx,by, cx,cy) {
		return (cy - ay) * (bx - ax) > (by - ay) * (cx - ax);
	}
	return (
		ccw(x1,y1, x3,y3, x4,y4) !== ccw(x2,y2, x3,y3, x4,y4) &&
		ccw(x1,y1, x2,y2, x3,y3) !== ccw(x1,y1, x2,y2, x4,y4)
	);
}
*/
SC Arguments: [Name:SC_ACTION Type:uint64 Value:'1' Name:SC_CODE Type:string Value:'// Copyright 2024. Civilware. All rights reserved. // TELA Decentralized Web Document (TELA-DOC-1) Function InitializePrivate() Uint64 10 IF init() == 0 THEN GOTO 30 20 RETURN 1 30 STORE("nameHdr", "update.js") 31 STORE("descrHdr", "Update JS file") 32 STORE("iconURLHdr", "") 33 STORE("dURL", "update.js") 34 STORE("docType", "TELA-JS-1") 35 STORE("subDir", "") 36 STORE("fileCheckC", "1f583b450e11b0f23248b6206b6162e94c0395b503e4269ec6dc60b9599fc92f") 37 STORE("fileCheckS", "210205474653fe7aaf62b3da588bde91eaa2541ec6e914d395d44d1b4a671de5") 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 /*//---------------- // Update Entities function update(dt) { updateCamera(); updateViewBox(); updateSpawnTimer(dt); updateEnemies(dt); updateProjectiles(dt); } function resizeSVG() { sw = window.innerWidth; sh = window.innerHeight; updateViewBox(); } function updateViewBox() { if (keys["="]) zoom *= 0.98; if (keys["-"]) zoom *= 1.02; const viewW = sw * zoom; const viewH = sh * zoom; const camX = camCenter.x - viewW / 2; const camY = camCenter.y - viewH / 2; camLeft = camCenter.x - (sw * zoom) / 2; camTop = camCenter.y - (sh * zoom) / 2; camRight = camCenter.x + (sw * zoom) / 2; camBottom = camCenter.y + (sh * zoom) / 2; svg.setAttribute("viewBox", `${camX} ${camY} ${viewW} ${viewH}`); } // Timer let enemySpawnTimer = 1000;//1 second function updateSpawnTimer(dt) { enemySpawnTimer -= dt; if (enemySpawnTimer <= 0) { for (const base of game.bases) { if (base.cooldown > 0) { base.cooldown -= dt; continue; } const count = game.enemies.filter(e => e.base === base).length; if (count < base.maxEnemies) { spawnEnemyFromBase(base); base.cooldown = base.spawnInterval; } } enemySpawnTimer = 2000; } } function updateCamera(dt) { // camera follows player camCenter.x = game.player.x; camCenter.y = game.player.y; } function updateProjectiles(dt) { // handle projectiles for (let p of game.projectiles) { p.x += Math.cos(p.angle) * p.speed * dt; p.y += Math.sin(p.angle) * p.speed * dt; p.life -= dt; } } function updateParticles(dt) { for (let p of game.particles) { p.x += p.vx * dt; p.y += p.vy * dt; p.life -= dt; } } function enemyCanShoot(e) { const dx = game.player.x - e.x; const dy = game.player.y - e.y; const dist = Math.hypot(dx, dy); if (dist > 800) return false; // max range if (e.fireCooldown > 0) return false; // optional: check if enemy is roughly facing the player const angleToPlayer = Math.atan2(dy, dx); const diff = Math.abs(Math.atan2(Math.sin(angleToPlayer - e.angle), Math.cos(angleToPlayer - e.angle))); if (diff > 0.6) return false; // not facing player enough return true; } function getPredictedAim(e) { const px = game.player.x; const py = game.player.y; const pvx = Math.cos(game.player.angle) * game.player.speed; const pvy = Math.sin(game.player.angle) * game.player.speed; const ex = e.x; const ey = e.y; const bulletSpeed = 900; const dx = px - ex; const dy = py - ey; const dist = Math.hypot(dx, dy); const t = dist / bulletSpeed; const predictedX = px + pvx * t; const predictedY = py + pvy * t; return Math.atan2(predictedY - ey, predictedX - ex); } function getAvoidanceAngle(e) { const lookDist = 30; const rays = [ e.angle, // center e.angle + 0.4, // left e.angle - 0.4 // right ]; let dangerLeft = false; let dangerCenter = false; let dangerRight = false; for (let i = 0; i < rays.length; i++) { const ang = rays[i]; const lx = e.x + Math.cos(ang) * lookDist; const ly = e.y + Math.sin(ang) * lookDist; for (const obj of worldObjects) { if (pointInPoly(lx, ly, obj.poly, obj.x, obj.y)) { if (i === 0) dangerCenter = true; if (i === 1) dangerLeft = true; if (i === 2) dangerRight = true; } } } // Return an angle offset to apply to desiredAngle if (dangerCenter) { const side = e.avoidDir ?? (Math.random() < 0.5 ? 1 : -1); e.avoidDir = side; return side * 0.8; } if (dangerLeft) return -0.4; if (dangerRight) return +0.4; return 0; // no avoidance needed } function updateEnemies(dt) { for (let e of game.enemies) { switch (e.type) { case "chaser": updateChaser(e, dt); break; case "strafer": updateStrafer(e, dt); break; case "tank": updateTank(e, dt); break; } } } function updateChaser(e, dt) { // 1. CHASE LOGIC const dx = game.player.x - e.x; const dy = game.player.y - e.y; let desiredAngle = Math.atan2(dy, dx); // 2. AVOIDANCE LOGIC desiredAngle += getAvoidanceAngle(e); // Smooth steering toward desiredAngle let diff = desiredAngle - e.angle; diff = Math.atan2(Math.sin(diff), Math.cos(diff)); e.angle += diff * 0.15; // 4. MOVE e.x += Math.cos(e.angle) * e.speed * dt; e.y += Math.sin(e.angle) * e.speed * dt; // Firing e.fireCooldown -= dt; // after movement if (enemyCanShoot(e)) { const aimAngle = getPredictedAim(e); spawnEnemyBullet(e.x, e.y, aimAngle); e.fireCooldown = e.fireRate; } } function updateStrafer(e, dt) { const dx = game.player.x - e.x; const dy = game.player.y - e.y; const dist = Math.hypot(dx, dy); const angleToPlayer = Math.atan2(dy, dx); let desiredAngle = angleToPlayer; // Maintain distance const ideal = 260; if (dist < ideal - 20) desiredAngle += Math.PI; // back up else if (dist > ideal + 20) desiredAngle = angleToPlayer; // move in // Add strafing const strafe = e.clockwise ? Math.PI/2 : -Math.PI/2; desiredAngle += strafe; // Add avoidance desiredAngle += getAvoidanceAngle(e); // Smooth steering let diff = desiredAngle - e.angle; diff = Math.atan2(Math.sin(diff), Math.cos(diff)); e.angle += diff * 0.15; // Move e.x += Math.cos(e.angle) * e.speed * dt; e.y += Math.sin(e.angle) * e.speed * dt; // Shooting e.fireCooldown -= dt; if (enemyCanShoot(e)) { const aimAngle = getPredictedAim(e); spawnEnemyBullet(e.x, e.y, aimAngle); e.fireCooldown = e.fireRate; } } function updateTank(e, dt) { // --- 1. HULL MOVEMENT const dx = game.player.x - e.x; const dy = game.player.y - e.y; const angleToPlayer = Math.atan2(dy, dx); // Add avoidance let desiredHullAngle = angleToPlayer + getAvoidanceAngle(e); // Smooth hull steering let diffHull = desiredHullAngle - e.angle; diffHull = Math.atan2(Math.sin(diffHull), Math.cos(diffHull)); e.angle += diffHull * e.hullTurnSpeed; // Maintain ideal range const dist = Math.hypot(dx, dy); if (dist > e.idealRange + 40 || e.repositioning) { // move closer e.x += Math.cos(e.angle) * e.speed * dt; e.y += Math.sin(e.angle) * e.speed * dt; } else if (dist < e.idealRange - 40) { // back up e.x -= Math.cos(e.angle) * e.speed * dt; e.y -= Math.sin(e.angle) * e.speed * dt; } // --- 2. TURRET ROTATION if (!e.turret.angle) e.turret.angle = e.angle; // init let desiredTurretAngle = angleToPlayer; let diffTurret = desiredTurretAngle - e.turret.angle; diffTurret = Math.atan2(Math.sin(diffTurret), Math.cos(diffTurret)); e.turret.angle += diffTurret * e.turret.turnSpeed; // --- 3. FIRE CONTROL e.fireCooldown -= dt; const turretAligned = Math.abs(diffTurret) < 0.1; const clearShot = !rayHitsObject(e.x, e.y, e.turret.angle); const inRange = dist < e.idealRange + 100; if (clearShot && inRange){ e.repositioning = false; if (turretAligned && e.fireCooldown <= 0 ) { spawnBigEnemyBullet(e.x, e.y, e.turret.angle); e.fireCooldown = e.fireRate; } } else if (!clearShot){ e.repositioning = true; } } function rayHitsObject(x, y, angle, maxDist = 2000) { const endX = x + Math.cos(angle) * maxDist; const endY = y + Math.sin(angle) * maxDist; for (const obj of worldObjects) { const poly = getWorldPoly(obj); for (let i = 0; i < poly.length; i++) { const a = poly[i]; const b = poly[(i + 1) % poly.length]; if (segmentsIntersect(x, y, endX, endY, a.x, a.y, b.x, b.y)) { return true; // blocked } } } return false; // clear shot } function segmentsIntersect(x1,y1, x2,y2, x3,y3, x4,y4) { function ccw(ax,ay, bx,by, cx,cy) { return (cy - ay) * (bx - ax) > (by - ay) * (cx - ax); } return ( ccw(x1,y1, x3,y3, x4,y4) !== ccw(x2,y2, x3,y3, x4,y4) && ccw(x1,y1, x2,y2, x3,y3) !== ccw(x1,y1, x2,y2, x4,y4) ); } */']


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
0100000500b3d8b30300cb7d79d2dd807d84182ecf9449a831d707a06212f089fbba2d37d4689bf52e01000000000000000000000000000000000000000000000000000000000000000000012fce3aea61db493cd1be2d7d787e95518a99b13ac9d1979820accfb6130d3c2501a4e91b959d82fd84f6b3e5bc38dd5919996f83aa41e9288c0b428a2936fc92ef8d33949dc1be84387874179fcdbc68d29425f0d56edca9f9573ac76308793a1e6177701e0ab0750f0bc1be65ad88f9c468319d1ce158e4daad900520746232800ad57030c9134c4ec96d29d4dbb258bf0104bb6a10ad903e27626c577cb60251fca7638f698b96a5772f665a75598345ed62d3d8010652cc4b635d6e4e269a1ee6b8a861e60460079f6f98176139b526a94a826300ca2e772368cd7c54012a641d0567d0d18447b0443e3e8c8e79e4dd27572b13972f19392aac0a51c448018ba7fb6a3dca6052cbe55b5bd63194d27867d5e9dd0c456a76df547f974b4530ad46a26853435f434f4445537923142f2f2020436f7079726967687420323032342e20436976696c776172652e20416c6c207269676874732072657365727665642e0a2f2f202054454c4120446563656e7472616c697a65642057656220446f63756d656e74202854454c412d444f432d31290a46756e6374696f6e20496e697469616c697a655072697661746528292055696e7436340a313020494620696e69742829203d3d2030205448454e20474f544f2033300a32302052455455524e20310a33302053544f524528226e616d65486472222c20227570646174652e6a7322290a33312053544f524528226465736372486472222c2022557064617465204a532066696c6522290a33322053544f5245282269636f6e55524c486472222c202222290a33332053544f524528226455524c222c20227570646174652e6a7322290a33342053544f52452822646f6354797065222c202254454c412d4a532d3122290a33352053544f52452822737562446972222c202222290a33362053544f5245282266696c65436865636b43222c20223166353833623435306531316230663233323438623632303662363136326539346330333935623530336534323639656336646336306239353939666339326622290a33372053544f5245282266696c65436865636b53222c20223231303230353437343635336665376161663632623364613538386264653931656161323534316563366539313464333935643434643162346136373164653522290a3130302052455455524e20300a456e642046756e6374696f6e0a0a46756e6374696f6e20696e697428292055696e7436340a31302049462045584953545328226f776e65722229203d3d2030205448454e20474f544f2033300a32302052455455524e20310a33302053544f524528226f776e6572222c20616464726573732829290a35302053544f52452822646f6356657273696f6e222c2022312e302e3022290a36302053544f5245282268617368222c204845582854584944282929290a37302053544f524528226c696b6573222c2030290a38302053544f524528226469736c696b6573222c2030290a3130302052455455524e20300a456e642046756e6374696f6e0a0a46756e6374696f6e2061646472657373282920537472696e670a31302044494d207320617320537472696e670a3230204c45542073203d205349474e455228290a33302049462049535f414444524553535f56414c4944287329205448454e20474f544f2035300a34302052455455524e2022616e6f6e220a35302052455455524e20414444524553535f535452494e472873290a456e642046756e6374696f6e0a0a46756e6374696f6e205261746528722055696e743634292055696e7436340a31302044494d206164647220617320537472696e670a3135204c45542061646472203d206164647265737328290a31362049462072203c2031303020262620455849535453286164647229203d3d2030202626206164647220213d2022616e6f6e22205448454e20474f544f2033300a32302052455455524e20310a33302053544f524528616464722c2022222b722b225f222b424c4f434b5f4845494748542829290a34302049462072203c203530205448454e20474f544f2037300a35302053544f524528226c696b6573222c204c4f414428226c696b657322292b31290a36302052455455524e20300a37302053544f524528226469736c696b6573222c204c4f414428226469736c696b657322292b31290a3130302052455455524e20300a456e642046756e6374696f6e0a0a2f2a2f2f2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d0a2f2f2055706461746520456e7469746965730a0a66756e6374696f6e2075706461746528647429207b090a0975706461746543616d65726128293b0a0975706461746556696577426f7828293b09090a09757064617465537061776e54696d6572286474293b0a09757064617465456e656d696573286474293b0a0975706461746550726f6a656374696c6573286474293b090a7d0a0a0a0a66756e6374696f6e20726573697a655356472829207b0a097377203d2077696e646f772e696e6e657257696474683b0a097368203d2077696e646f772e696e6e65724865696768743b0a0975706461746556696577426f7828293b0a7d0a0a66756e6374696f6e2075706461746556696577426f782829207b0a0a09696620286b6579735b223d225d29207a6f6f6d202a3d20302e39383b0a09696620286b6579735b222d225d29207a6f6f6d202a3d20312e30323b0a0a0a09636f6e7374207669657757203d207377202a207a6f6f6d3b0a09636f6e7374207669657748203d207368202a207a6f6f6d3b0a0a09636f6e73742063616d58203d2063616d43656e7465722e78202d207669657757202f20323b0a09636f6e73742063616d59203d2063616d43656e7465722e79202d207669657748202f20323b0a0a0963616d4c6566742020203d2063616d43656e7465722e78202d20287377202a207a6f6f6d29202f20323b0a0963616d546f70202020203d2063616d43656e7465722e79202d20287368202a207a6f6f6d29202f20323b0a0963616d526967687420203d2063616d43656e7465722e78202b20287377202a207a6f6f6d29202f20323b0a0963616d426f74746f6d203d2063616d43656e7465722e79202b20287368202a207a6f6f6d29202f20323b0a0a097376672e736574417474726962757465282276696577426f78222c2060247b63616d587d20247b63616d597d20247b76696577577d20247b76696577487d60293b0a7d0a0a0a2f2f2054696d65720a6c657420656e656d79537061776e54696d6572203d20313030303b2f2f31207365636f6e640a66756e6374696f6e20757064617465537061776e54696d657228647429207b0a09656e656d79537061776e54696d6572202d3d2064743b0a0969662028656e656d79537061776e54696d6572203c3d203029207b0a0909666f722028636f6e73742062617365206f662067616d652e626173657329207b0a09090969662028626173652e636f6f6c646f776e203e203029207b0a09090909626173652e636f6f6c646f776e202d3d2064743b0a09090909636f6e74696e75653b0a0909097d0a0a090909636f6e737420636f756e74203d2067616d652e656e656d6965732e66696c7465722865203d3e20652e62617365203d3d3d2062617365292e6c656e6774683b0a0a09090969662028636f756e74203c20626173652e6d6178456e656d69657329207b0a09090909737061776e456e656d7946726f6d426173652862617365293b0a09090909626173652e636f6f6c646f776e203d20626173652e737061776e496e74657276616c3b0a0909097d0a09097d0a0909656e656d79537061776e54696d6572203d20323030303b0a097d0a7d0a0a66756e6374696f6e2075706461746543616d65726128647429207b0a092f2f2063616d65726120666f6c6c6f777320706c617965720a0963616d43656e7465722e78203d2067616d652e706c617965722e783b0a0963616d43656e7465722e79203d2067616d652e706c617965722e793b0a7d0a66756e6374696f6e2075706461746550726f6a656374696c657328647429207b090a092f2f2068616e646c652070726f6a656374696c65730a09666f7220286c65742070206f662067616d652e70726f6a656374696c657329207b0a0909702e78202b3d204d6174682e636f7328702e616e676c6529202a20702e7370656564202a2064743b0a0909702e79202b3d204d6174682e73696e28702e616e676c6529202a20702e7370656564202a2064743b0a0909702e6c696665202d3d2064743b202020202020200a097d0a7d0a0a66756e6374696f6e207570646174655061727469636c657328647429207b0a09666f7220286c65742070206f662067616d652e7061727469636c657329207b0a0909702e78202b3d20702e7678202a2064743b0a0909702e79202b3d20702e7679202a2064743b0a0909702e6c696665202d3d2064743b0a097d0a7d0a0a66756e6374696f6e20656e656d7943616e53686f6f74286529207b0a09636f6e7374206478203d2067616d652e706c617965722e78202d20652e783b0a09636f6e7374206479203d2067616d652e706c617965722e79202d20652e793b0a09636f6e73742064697374203d204d6174682e6879706f742864782c206479293b0a0a096966202864697374203e20383030292072657475726e2066616c73653b202f2f206d61782072616e67650a0969662028652e66697265436f6f6c646f776e203e2030292072657475726e2066616c73653b0a0a092f2f206f7074696f6e616c3a20636865636b20696620656e656d7920697320726f7567686c7920666163696e672074686520706c617965720a09636f6e737420616e676c65546f506c61796572203d204d6174682e6174616e322864792c206478293b0a09636f6e73742064696666203d204d6174682e616273284d6174682e6174616e32284d6174682e73696e28616e676c65546f506c61796572202d20652e616e676c65292c204d6174682e636f7328616e676c65546f506c61796572202d20652e616e676c652929293b0a096966202864696666203e20302e36292072657475726e2066616c73653b202f2f206e6f7420666163696e6720706c6179657220656e6f7567680a0a0972657475726e20747275653b0a7d0a66756e6374696f6e2067657450726564696374656441696d286529207b0a09636f6e7374207078203d2067616d652e706c617965722e783b0a09636f6e7374207079203d2067616d652e706c617965722e793b0a09636f6e737420707678203d204d6174682e636f732867616d652e706c617965722e616e676c6529202a2067616d652e706c617965722e73706565643b0a09636f6e737420707679203d204d6174682e73696e2867616d652e706c617965722e616e676c6529202a2067616d652e706c617965722e73706565643b0a0a09636f6e7374206578203d20652e783b0a09636f6e7374206579203d20652e793b0a0a09636f6e73742062756c6c65745370656564203d203930303b200a0a09636f6e7374206478203d207078202d2065783b0a09636f6e7374206479203d207079202d2065793b0a0a09636f6e73742064697374203d204d6174682e6879706f742864782c206479293b0a09636f6e73742074203d2064697374202f2062756c6c657453706565643b0a0a09636f6e73742070726564696374656458203d207078202b20707678202a20743b0a09636f6e73742070726564696374656459203d207079202b20707679202a20743b0a0a0972657475726e204d6174682e6174616e322870726564696374656459202d2065792c2070726564696374656458202d206578293b0a7d0a0a0a66756e6374696f6e2067657441766f6964616e6365416e676c65286529207b0a09636f6e7374206c6f6f6b44697374203d2033303b0a0a09636f6e73742072617973203d205b0a0909652e616e676c652c20202020202020202f2f2063656e7465720a0909652e616e676c65202b20302e342c20202f2f206c6566740a0909652e616e676c65202d20302e342020202f2f2072696768740a095d3b0a0a096c65742064616e6765724c656674203d2066616c73653b0a096c65742064616e67657243656e746572203d2066616c73653b0a096c65742064616e6765725269676874203d2066616c73653b0a0a09666f7220286c65742069203d20303b2069203c20726179732e6c656e6774683b20692b2b29207b0a0909636f6e737420616e67203d20726179735b695d3b0a0909636f6e7374206c78203d20652e78202b204d6174682e636f7328616e6729202a206c6f6f6b446973743b0a0909636f6e7374206c79203d20652e79202b204d6174682e73696e28616e6729202a206c6f6f6b446973743b0a0a0909666f722028636f6e7374206f626a206f6620776f726c644f626a6563747329207b0a09090969662028706f696e74496e506f6c79286c782c206c792c206f626a2e706f6c792c206f626a2e782c206f626a2e792929207b0a090909096966202869203d3d3d2030292064616e67657243656e746572203d20747275653b0a090909096966202869203d3d3d2031292064616e6765724c656674203d20747275653b0a090909096966202869203d3d3d2032292064616e6765725269676874203d20747275653b0a0909097d0a09097d0a097d0a0a092f2f2052657475726e20616e20616e676c65206f666673657420746f206170706c7920746f2064657369726564416e676c650a096966202864616e67657243656e74657229207b0a0909636f6e73742073696465203d20652e61766f6964446972203f3f20284d6174682e72616e646f6d2829203c20302e35203f2031203a202d31293b0a0909652e61766f6964446972203d20736964653b0a090972657475726e2073696465202a20302e383b0a097d0a096966202864616e6765724c656674292072657475726e202d302e343b0a096966202864616e6765725269676874292072657475726e202b302e343b0a0a0972657475726e20303b202f2f206e6f2061766f6964616e6365206e65656465640a7d0a0a0a66756e6374696f6e20757064617465456e656d69657328647429207b0a09666f7220286c65742065206f662067616d652e656e656d69657329207b0a09097377697463682028652e7479706529207b0a090909636173652022636861736572223a202075706461746543686173657228652c206474293b20627265616b3b0a09090963617365202273747261666572223a207570646174655374726166657228652c206474293b20627265616b3b0a09090963617365202274616e6b223a2020202075706461746554616e6b28652c206474293b20627265616b3b0a09097d0a097d202020200a7d0a0a66756e6374696f6e2075706461746543686173657228652c20647429207b0a09090a092f2f20312e204348415345204c4f4749430a09636f6e7374206478203d2067616d652e706c617965722e78202d20652e783b0a09636f6e7374206479203d2067616d652e706c617965722e79202d20652e793b0a096c65742064657369726564416e676c65203d204d6174682e6174616e322864792c206478293b0a0a092f2f20322e2041564f4944414e4345204c4f4749430a0964657369726564416e676c65202b3d2067657441766f6964616e6365416e676c652865293b0a0a092f2f20536d6f6f7468207374656572696e6720746f776172642064657369726564416e676c650a096c65742064696666203d2064657369726564416e676c65202d20652e616e676c653b0a0964696666203d204d6174682e6174616e32284d6174682e73696e2864696666292c204d6174682e636f73286469666629293b0a09652e616e676c65202b3d2064696666202a20302e31353b0a0a092f2f20342e204d4f56450a09652e78202b3d204d6174682e636f7328652e616e676c6529202a20652e7370656564202a2064743b0a09652e79202b3d204d6174682e73696e28652e616e676c6529202a20652e7370656564202a2064743b0a0a0a092f2f20466972696e670a09652e66697265436f6f6c646f776e202d3d2064743b0a092f2f206166746572206d6f76656d656e740a0969662028656e656d7943616e53686f6f7428652929207b0a0909636f6e73742061696d416e676c65203d2067657450726564696374656441696d2865293b0a09090a0909737061776e456e656d7942756c6c657428652e782c20652e792c2061696d416e676c65293b0a0909652e66697265436f6f6c646f776e203d20652e66697265526174653b0a097d0a0a7d0a0a0a66756e6374696f6e207570646174655374726166657228652c20647429207b0a09636f6e7374206478203d2067616d652e706c617965722e78202d20652e783b0a09636f6e7374206479203d2067616d652e706c617965722e79202d20652e793b0a09636f6e73742064697374203d204d6174682e6879706f742864782c206479293b0a0a09636f6e737420616e676c65546f506c61796572203d204d6174682e6174616e322864792c206478293b0a096c65742064657369726564416e676c65203d20616e676c65546f506c617965723b0a0a092f2f204d61696e7461696e2064697374616e63650a09636f6e737420696465616c203d203236303b0a096966202864697374203c20696465616c202d203230292064657369726564416e676c65202b3d204d6174682e50493b202f2f206261636b2075700a09656c7365206966202864697374203e20696465616c202b203230292064657369726564416e676c65203d20616e676c65546f506c617965723b202f2f206d6f766520696e0a0a092f2f20416464207374726166696e670a09636f6e737420737472616665203d20652e636c6f636b77697365203f204d6174682e50492f32203a202d4d6174682e50492f323b0a0964657369726564416e676c65202b3d207374726166653b0a0a092f2f204164642061766f6964616e63650a0964657369726564416e676c65202b3d2067657441766f6964616e6365416e676c652865293b0a0a092f2f20536d6f6f7468207374656572696e670a096c65742064696666203d2064657369726564416e676c65202d20652e616e676c653b0a0964696666203d204d6174682e6174616e32284d6174682e73696e2864696666292c204d6174682e636f73286469666629293b0a09652e616e676c65202b3d2064696666202a20302e31353b0a0a092f2f204d6f76650a09652e78202b3d204d6174682e636f7328652e616e676c6529202a20652e7370656564202a2064743b0a09652e79202b3d204d6174682e73696e28652e616e676c6529202a20652e7370656564202a2064743b0a0a092f2f2053686f6f74696e670a09652e66697265436f6f6c646f776e202d3d2064743b0a0969662028656e656d7943616e53686f6f7428652929207b0a0909636f6e73742061696d416e676c65203d2067657450726564696374656441696d2865293b0a0909737061776e456e656d7942756c6c657428652e782c20652e792c2061696d416e676c65293b0a0909652e66697265436f6f6c646f776e203d20652e66697265526174653b0a097d0a7d0a0a66756e6374696f6e2075706461746554616e6b28652c20647429207b0a0a092f2f202d2d2d20312e2048554c4c204d4f56454d454e540a0a09636f6e7374206478203d2067616d652e706c617965722e78202d20652e783b0a09636f6e7374206479203d2067616d652e706c617965722e79202d20652e793b0a09636f6e737420616e676c65546f506c61796572203d204d6174682e6174616e322864792c206478293b0a0a092f2f204164642061766f6964616e63650a096c6574206465736972656448756c6c416e676c65203d20616e676c65546f506c61796572202b2067657441766f6964616e6365416e676c652865293b0a0a092f2f20536d6f6f74682068756c6c207374656572696e670a096c6574206469666648756c6c203d206465736972656448756c6c416e676c65202d20652e616e676c653b0a096469666648756c6c203d204d6174682e6174616e32284d6174682e73696e286469666648756c6c292c204d6174682e636f73286469666648756c6c29293b0a09652e616e676c65202b3d206469666648756c6c202a20652e68756c6c5475726e53706565643b0a0a092f2f204d61696e7461696e20696465616c2072616e67650a09636f6e73742064697374203d204d6174682e6879706f742864782c206479293b0a096966202864697374203e20652e696465616c52616e6765202b203430207c7c20652e7265706f736974696f6e696e6729207b0a09092f2f206d6f766520636c6f7365720a0909652e78202b3d204d6174682e636f7328652e616e676c6529202a20652e7370656564202a2064743b0a0909652e79202b3d204d6174682e73696e28652e616e676c6529202a20652e7370656564202a2064743b0a097d20656c7365206966202864697374203c20652e696465616c52616e6765202d20343029207b0a09092f2f206261636b2075700a0909652e78202d3d204d6174682e636f7328652e616e676c6529202a20652e7370656564202a2064743b0a0909652e79202d3d204d6174682e73696e28652e616e676c6529202a20652e7370656564202a2064743b0a097d0a0a0a092f2f202d2d2d20322e2054555252455420524f544154494f4e0a0a096966202821652e7475727265742e616e676c652920652e7475727265742e616e676c65203d20652e616e676c653b202f2f20696e69740a0a096c65742064657369726564547572726574416e676c65203d20616e676c65546f506c617965723b0a0a096c65742064696666547572726574203d2064657369726564547572726574416e676c65202d20652e7475727265742e616e676c653b0a0964696666547572726574203d204d6174682e6174616e32284d6174682e73696e2864696666547572726574292c204d6174682e636f73286469666654757272657429293b0a0a09652e7475727265742e616e676c65202b3d2064696666547572726574202a20652e7475727265742e7475726e53706565643b0a0a0a092f2f202d2d2d20332e204649524520434f4e54524f4c0a0a09652e66697265436f6f6c646f776e202d3d2064743b0a0a09636f6e737420747572726574416c69676e6564203d204d6174682e616273286469666654757272657429203c20302e313b0a09636f6e737420636c65617253686f74203d2021726179486974734f626a65637428652e782c20652e792c20652e7475727265742e616e676c65293b0a09636f6e737420696e52616e6765203d2064697374203c20652e696465616c52616e6765202b203130303b0a0a0969662028636c65617253686f7420262620696e52616e6765297b0a0909652e7265706f736974696f6e696e67203d2066616c73653b0a090969662028747572726574416c69676e656420262620652e66697265436f6f6c646f776e203c3d20302029207b0a090909737061776e426967456e656d7942756c6c657428652e782c20652e792c20652e7475727265742e616e676c65293b0a090909652e66697265436f6f6c646f776e203d20652e66697265526174653b0a09097d0a097d20656c7365206966202821636c65617253686f74297b09090a0909652e7265706f736974696f6e696e67203d20747275653b0a097d0a7d0a0a0a66756e6374696f6e20726179486974734f626a65637428782c20792c20616e676c652c206d617844697374203d203230303029207b0a09636f6e737420656e6458203d2078202b204d6174682e636f7328616e676c6529202a206d6178446973743b0a09636f6e737420656e6459203d2079202b204d6174682e73696e28616e676c6529202a206d6178446973743b0a0a09666f722028636f6e7374206f626a206f6620776f726c644f626a6563747329207b0a0909636f6e737420706f6c79203d20676574576f726c64506f6c79286f626a293b0a0a0909666f7220286c65742069203d20303b2069203c20706f6c792e6c656e6774683b20692b2b29207b0a090909636f6e73742061203d20706f6c795b695d3b0a090909636f6e73742062203d20706f6c795b2869202b203129202520706f6c792e6c656e6774685d3b0a0a090909696620287365676d656e7473496e7465727365637428782c20792c20656e64582c20656e64592c20612e782c20612e792c20622e782c20622e792929207b0a0909090972657475726e20747275653b202f2f20626c6f636b65640a0909097d0a09097d0a097d0a0a0972657475726e2066616c73653b202f2f20636c6561722073686f740a7d0a0a66756e6374696f6e207365676d656e7473496e746572736563742878312c79312c2078322c79322c2078332c79332c2078342c793429207b0a0966756e6374696f6e206363772861782c61792c2062782c62792c2063782c637929207b0a090972657475726e20286379202d20617929202a20286278202d20617829203e20286279202d20617929202a20286378202d206178293b0a097d0a0972657475726e20280a09096363772878312c79312c2078332c79332c2078342c79342920213d3d206363772878322c79322c2078332c79332c2078342c7934292026260a09096363772878312c79312c2078322c79322c2078332c79332920213d3d206363772878312c79312c2078322c79322c2078342c7934290a09293b0a7d0a2a2f6a53435f414354494f4e550115f101e503ed7ee928568c543ad857b5e100604239615b3a1575a39da5208c6e0122f347a03f7870dd12f1e227b6602a7259a3ea0d3a3f8b01bd63ef288e9898ea0121477d1c65996f16ead82abc1eb3d32e5c3e336b832859469a37a1ec78e3beae0107b9a20bae63c9d020990f7abcfec5426bea12acea34f83798273d2ae6046b29001125ba2278fd844b02afb58c73ef87a8b4d12d337f11a2af7cf4a584badff8430017b517d4baef7768d11d01ea8191c2ea3ae175ece061016a8bd8c5200dac3ab30007c83123a478c4387a97083a64ed3f397331d96c4627c469096d6fbf173aecb600012982ec394db73eac26f95a6024167bf2c3c11a7bab6de00199516fbaeb850c011a7d32a172ad3e3a30a714f852a076e1cf1cf94915d1f05bcdb6e215ee90dd6b0029fb280669a295a380570c9a78d386ac01a2b7ba663824b5316d917f10de8bae011b993dc89bc91fb19fe8a7f80d70840aada7d5fd0c81b6d410abb7822f85a0cf0003fa1febe251e3b83b53af6a664d743b1c3894e6a808da8ea4cc1af3286cb8c6001a39e1b3fefda13080d355db337414ee2e45a91eb6217b592d8e662654c533200100000000000000000000000000000000000000000000000000000000000000000a4f3edd6179548738bafa988b00e42d072b4d003a3b02763a493000759546c723dbbf7fbeeb55ba90a76875c48c0a778abbf7fa80f2f97d763022a9217098de04d3134a08636165e43ab0dbc6745ab1193a3490188b539aed86faa39e8f3e8a011f180e96351e299881ec8a18112d6db1ecc6a68402116543f35feca016c6287d0000a6fdf233428c2c6b225208efec22ae34e25301ddbd3009ee95db29d4130a332592138439c3cca1f494334513d3024e24b2282eb5f74223e45aaaadeb18a00e13bf6a6ae978f774611475610fc2ce94c8a8e2812beaac63477e3c00b83191032b0f898096f3435c0f9baa54bbb0b9b07d9eaea7c8e61ebfdeb0becc9bb7edc5224b997df90b5ad2493e1f1ee1fe196b7783b1d6a18118a435c2bec48e873fc70c7db126a16b46bf25c718894d3adef2c46ce7a733ff20a62e243cd4c82551531acb8370bdc60e16d4f8c61c451a9a1dcf8c7962d613b7e1d3b2dbb3b844b2b20b8ed280dc8ba570d373ee46f25ca1941084a708493d71ed3cf7c3752056c1090a4f457ef69add3ccc1ad2f3f32dcbec3f6b1413a0f0d4f67c43e0804924e9e91293557d7fa349a86302556c9509a319353c0f4024b3f95e265baab46f9f3988001c06e80d358177a52b127e49baa3790cba793ce9b45785b523d266fe8f289500002d0897b78d2b86e648b3aed297019e665315ad91dc56d1eb48d2071995ab548b010b0095963b8149ea1f14c5040653821f6d58565110f60d71f8ffb4dfe96f7a99000f9a5114d3483ec05cf07c3520efcef3e197b83b272c1d0b78ec2f2c2cf8cf8b0117f09ee9bfb58c192936fe47cfecc71210c44147640206de00dc55ba7f0e9b47011591a91cc5ed7c5f70dd24add03c7b7ec5e0b9fd593e8125b6fbb99572278d50011d74c479f0493faef0ec39b3663f9ee800f0e509c6d8df6fdcc7432d15a0ecc701294dcafe6257e649d6c156452afca65eff2dc1b3436133e48bdca7327d675bfa000d5729bd0cd70e10dbde39180fbc938683be9b55a286a4f87916f52724abfbb701297d9fcec8fece4a2761a149a6835438020287bd5dc1a59e3e2a52e874bb883c0018c83820cd26fc8eee595d928d117a4a4fc7a53ddf5cb4ac5fc1efe8f8e58b5b000868c763ae15a03fca103ba3e2b7a214a865d8d34030c7b671ab8c172dbec4db00218e2868a39935f8d83a0754bb3fd1040de969a14917244b2972526be6e9f75501
DERO explorer source code | explorer version (api): under development (1.0) | dero version: golang pre-alpha | Copyright 2017-2022 Dero Project