logo DERO HE BlockChain Explorer(v1) Mainnet

Tx hash: c2b70701d2dd14c1b6e435ba86c4c46779086b7001651914885c4849fc6b98cd Type SC

Block: ef52ee5aaabbf4f514f56167dad1daa32de594f3eab05e9e92fb3b7a84c7b1da (VALID)
SCID current reserves
SCID Amount(in atomic units)
0000000000000000000000000000000000000000000000000000000000000000 0
SCID string variables
key value
C 2f2f2020436f7079726967687420323032342e20436976696c776172652e20416c6c207269676874732072657365727665642e0a2f2f202054454c4120446563656e7472616c697a65642057656220446f63756d656e74202854454c412d444f432d31290a46756e6374696f6e20496e697469616c697a655072697661746528292055696e7436340a313020494620696e69742829203d3d2030205448454e20474f544f2033300a32302052455455524e20310a33302053544f524528226e616d65486472222c2022627574746f6e732e6a7322290a33312053544f524528226465736372486472222c2022427574746f6e7322290a33322053544f5245282269636f6e55524c486472222c202222290a33332053544f524528226455524c222c2022627574746f6e732e6a7322290a33342053544f52452822646f6354797065222c202254454c412d4a532d3122290a33352053544f52452822737562446972222c202222290a33362053544f5245282266696c65436865636b43222c20223233613534363335383239303336356165363336393430303766383134363863353136663433613434353066313333333863396532623462366436333265636122290a33372053544f5245282266696c65436865636b53222c20223135333065363134383665356563333561303162303437356566646161373130306233303061396266333636663232633033326666353039643065316562616522290a3130302052455455524e20300a456e642046756e6374696f6e0a0a46756e6374696f6e20696e697428292055696e7436340a31302049462045584953545328226f776e65722229203d3d2030205448454e20474f544f2033300a32302052455455524e20310a33302053544f524528226f776e6572222c20616464726573732829290a35302053544f52452822646f6356657273696f6e222c2022312e302e3022290a36302053544f5245282268617368222c204845582854584944282929290a37302053544f524528226c696b6573222c2030290a38302053544f524528226469736c696b6573222c2030290a3130302052455455524e20300a456e642046756e6374696f6e0a0a46756e6374696f6e2061646472657373282920537472696e670a31302044494d207320617320537472696e670a3230204c45542073203d205349474e455228290a33302049462049535f414444524553535f56414c4944287329205448454e20474f544f2035300a34302052455455524e2022616e6f6e220a35302052455455524e20414444524553535f535452494e472873290a456e642046756e6374696f6e0a0a46756e6374696f6e205261746528722055696e743634292055696e7436340a31302044494d206164647220617320537472696e670a3135204c45542061646472203d206164647265737328290a31362049462072203c2031303020262620455849535453286164647229203d3d2030202626206164647220213d2022616e6f6e22205448454e20474f544f2033300a32302052455455524e20310a33302053544f524528616464722c2022222b722b225f222b424c4f434b5f4845494748542829290a34302049462072203c203530205448454e20474f544f2037300a35302053544f524528226c696b6573222c204c4f414428226c696b657322292b31290a36302052455455524e20300a37302053544f524528226469736c696b6573222c204c4f414428226469736c696b657322292b31290a3130302052455455524e20300a456e642046756e6374696f6e0a0a2f2a0a2f2f2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d090a2f2f2d2d47657420616374696f6e2066756e6374696f6e732d2d2d2d090a2f2f2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d0a6c657420627574746f6e5f7374617465733d5b5d0a0a66756e6374696f6e20676574416363657074427574746f6e28616374696f6e5f627574746f6e2c6f66666572297b0a092f2f536f6d656f6e6520656c73652773206f6666657220746861742069732077616974696e6720666f7220612074616b6572090a09616374696f6e5f627574746f6e2e74657874436f6e74656e74203d2022416363657074223b0a09616374696f6e5f627574746f6e2e6164644576656e744c697374656e65722822636c69636b222c2066756e6374696f6e2829207b0a0909616374696f6e5f627574746f6e2e64697361626c6564203d20747275653b0a0909627574746f6e5f7374617465735b6f666665722e69645d203d20616374696f6e5f627574746f6e2e74657874436f6e74656e743b0a0909616363657074426964280a0909096f666665720a0909293b0a097d293b0a7d0a0a0a0a66756e6374696f6e2067657452656d6f7665426964427574746f6e28616374696f6e5f627574746f6e2c6f666665722c646561646c696e65297b0a09616374696f6e5f627574746f6e2e74657874436f6e74656e74203d202252656d6f7665223b0a09616374696f6e5f627574746f6e2e7365744174747269627574652822696e646578222c206f666665722e6964293b09090909090a09616374696f6e5f627574746f6e2e6164644576656e744c697374656e65722822636c69636b222c2066756e6374696f6e2829207b0a0909616374696f6e5f627574746f6e2e64697361626c6564203d20747275653b0a0909627574746f6e5f7374617465735b6f666665722e69645d203d20616374696f6e5f627574746f6e2e74657874436f6e74656e743b0a090972656d6f7665426964286f666665722e6964293b0a097d293b09090a7d0a2f2f74616b657220627574746f6e73202d2d0a2f2f6574682d6465726f0a6173796e632066756e6374696f6e20676574496e7374616c6c4465726f48544c427574746f6e28616374696f6e5f627574746f6e2c6f66666572297b0a09616374696f6e5f627574746f6e2e6164644576656e744c697374656e65722822636c69636b222c6173796e632066756e6374696f6e2829207b0a0909616374696f6e5f627574746f6e2e64697361626c6564203d20747275653b0a09096461726b656e5f6c617965722e636c6173734c6973742e72656d6f7665282268696464656e22293b09090a0909627574746f6e5f7374617465735b6f666665722e69645d203d20616374696f6e5f627574746f6e2e74657874436f6e74656e743b0a09096c6574206465726f5f68746c5f74786964203d20617761697420696e7374616c6c4465726f48544c28322c6f666665722e6465726f5f6269645f61646472657373293b09090a09096966286465726f5f68746c5f74786964203d3d2066616c7365297b0a0909096461726b656e5f6c617965722e636c6173734c6973742e616464282268696464656e22293b0a090909616374696f6e5f627574746f6e2e64697361626c6564203d2066616c73653b0a09090964656c65746520627574746f6e5f7374617465735b6f666665722e69645d0a09090972657475726e2066616c73653b0a09097d0a09096461726b656e5f6c617965722e636c6173734c6973742e72656d6f7665282268696464656e22293b0a090961776169742061646453434944546f4c69737428224445524f222c6465726f5f68746c5f747869642c6f66666572293b0a09096461726b656e5f6c617965722e636c6173734c6973742e616464282268696464656e22293b0a0909616374696f6e5f627574746f6e2e74657874436f6e74656e74203d202257616974696e6720666f7220757064617465223b0a0909616374696f6e5f627574746f6e2e64697361626c6564203d20747275653b0a0909627574746f6e5f7374617465735b6f666665722e69645d203d20616374696f6e5f627574746f6e2e74657874436f6e74656e743b0a0a097d293b0a207d0a2f2f6465726f2d6574680a6173796e632066756e6374696f6e20676574496e7374616c6c45544848544c427574746f6e28616374696f6e5f627574746f6e2c6f66666572297b0a09616374696f6e5f627574746f6e2e6164644576656e744c697374656e65722822636c69636b222c6173796e632066756e6374696f6e2829207b0a0909616374696f6e5f627574746f6e2e64697361626c6564203d20747275653b0a09096461726b656e5f6c617965722e636c6173734c6973742e72656d6f7665282268696464656e22293b0a0909627574746f6e5f7374617465735b6f666665722e69645d203d20616374696f6e5f627574746f6e2e74657874436f6e74656e743b0a09096c6574206574685f68746c5f74786964203d20617761697420696e7374616c6c45544848544c28322c6f666665722e6574685f6269645f61646472657373293b09090a09096966286574685f68746c5f74786964203d3d2066616c7365297b0a0909096461726b656e5f6c617965722e636c6173734c6973742e616464282268696464656e22293b0a090909616374696f6e5f627574746f6e2e64697361626c6564203d2066616c73653b0a09090964656c65746520627574746f6e5f7374617465735b6f666665722e69645d0a09090972657475726e2066616c73653b0a09097d0a0909617761697420616c6572744d6f64616c28224e65787420737465702c20617070726f7665205343206c697374696e6720545820696e204465726f2077616c6c65742e22293b0a09096461726b656e5f6c617965722e636c6173734c6973742e72656d6f7665282268696464656e22293b0a090961776169742061646453434944546f4c6973742822455448222c6574685f68746c5f747869642c6f66666572293b0a09096461726b656e5f6c617965722e636c6173734c6973742e616464282268696464656e22293b0a0909616374696f6e5f627574746f6e2e74657874436f6e74656e74203d202257616974696e6720666f7220757064617465223b0a0909616374696f6e5f627574746f6e2e64697361626c6564203d20747275653b0a0909627574746f6e5f7374617465735b6f666665722e69645d203d20616374696f6e5f627574746f6e2e74657874436f6e74656e743b0a09090a097d293b090a7d0a20090a2f2f74616b65722d6574682d6465726f0a206173796e632066756e6374696f6e2067657446756e644465726f48544c427574746f6e28616374696f6e5f627574746f6e2c6f66666572297b0a0920616374696f6e5f627574746f6e2e6164644576656e744c697374656e65722822636c69636b222c206173796e632066756e6374696f6e2829207b0a09096c65742068617368203d2022223b0a09096c6574206b6579203d2061776169742070726f6d70744d6f64616c280a09090922506c65617365206372656174652061206b657920283332206368617273206d61782920666f722067656e65726174696e6720746865206861736820666f72206269642069643a22202b206f666665722e69642c2072616e646f6d537472696e67283332292c0a0909097b22636c617373223a226b657967656e227d2c0a09090966756e6374696f6e2028297b646f63756d656e742e717565727953656c6563746f7228222e6b657967656e20696e70757422292e736574417474726962757465282274797065222c20227465787422297d0a0909293b09090a090969662028676574427974654c656e677468286b657929203e203332297b0a090909617761697420616c6572744d6f64616c282256616c756520746f6f206c617267652e22293b09090909090909090a09090972657475726e3b0a09097d0a0909696620286b657920213d206e756c6c29207b0a0909096461726b656e5f6c617965722e636c6173734c6973742e72656d6f7665282268696464656e22293b0a09090968617368203d2061776169742067656e657261746553484132353648617368286b65792e746f537472696e672829293b0a0909096c657420707265203d20646f63756d656e742e637265617465456c656d656e74282270726522293b0a0909097072652e696e6e657254657874203d206b65793b0a090909617761697420616c6572744d6f64616c28605361766520796f7572206b657920696e206361736520796f75206c6561766520746865206170702e206b65793a247b7072652e6f7574657248544d4c7d20686173683a247b686173687d20666f7220737761702069643a247b6f666665722e69647d203c62723e60202b200a09090909637265617465446f776e6c6f61644c696e6b286f666665722e69642c6b65792c6f666665722e6473636964292e6f7574657248544d4c0a090909293b0a0909090a0909096461726b656e5f6c617965722e636c6173734c6973742e72656d6f7665282268696464656e22293b0a0909096b6579735b6f666665722e69645d203d206b65793b0a090909627574746f6e5f7374617465735b6f666665722e69645d203d20616374696f6e5f627574746f6e2e74657874436f6e74656e743b0a0909096c6574206465726f5f68746c5f7478203d2061776169742066756e644465726f48544c286f666665722e69642c6f666665722e64736369642c6f666665722e6465726f616d742c68617368290a0909096966286465726f5f68746c5f7478203d3d2066616c7365297b0a09090909617761697420616c6572744d6f64616c282246756e64696e67206661696c656422293b0a0909090964656c65746520627574746f6e5f7374617465735b6f666665722e69645d0a09090909616374696f6e5f627574746f6e2e64697361626c6564203d2066616c73650a0909090972657475726e3b0a0909097d0909090a090909617761697420616c6572744d6f64616c286046756e64696e672073756363657366756c2e205761697420666f7220746865206f7468657220706172747920746f206465706c6f79206120636f6e7472616374207769746820796f75722066756e647320746f20626520756e6c6f636b6564207769746820796f7572206b65792e20247b7072652e6f7574657248544d4c7d60293b0909090a090909617761697420726566726573684269647328293b0a09097d656c73657b0a09090972657475726e3b0a09097d09090a097d290a7d0a2f2f6465726f2d6574680a206173796e632066756e6374696f6e2067657446756e6445544848544c427574746f6e28616374696f6e5f627574746f6e2c6f666665722c6574685f73636964297b0a09616374696f6e5f627574746f6e2e6164644576656e744c697374656e65722822636c69636b222c206173796e632066756e6374696f6e2829207b0a09092f2f6d6179626520636865636b2069662069742066756e646564206669727374206865726520696e2063617365206f662064656c61790a09096c65742068617368203d2022223b0a09096c6574206b6579203d2061776169742070726f6d70744d6f64616c280a09090922506c65617365206372656174652061206b657920283332206368617273206d61782920666f722067656e65726174696e6720746865206861736820666f72206269642069643a22202b206f666665722e69642c2072616e646f6d537472696e67283332292c200a0909097b22636c617373223a226b657967656e227d2c0a09090966756e6374696f6e2028297b646f63756d656e742e717565727953656c6563746f7228222e6b657967656e20696e70757422292e736574417474726962757465282274797065222c20227465787422297d0a0909293b0a090969662028676574427974654c656e677468286b657929203e203332297b0a090909617761697420616c6572744d6f64616c282256616c756520746f6f206c617267652e22293b09090909090909090a09090972657475726e3b0a09097d0a09090a0909696620286b657920213d206e756c6c29207b0a0909096461726b656e5f6c617965722e636c6173734c6973742e72656d6f7665282268696464656e22293b0a09090968617368203d2061776169742067656e657261746553484132353648617368286b65792e746f537472696e672829293b0a0909096c657420707265203d20646f63756d656e742e637265617465456c656d656e74282270726522293b0a0909097072652e696e6e657254657874203d206b65793b0a090909617761697420616c6572744d6f64616c28605361766520796f7572206b657920696e206361736520796f75206c6561766520746865206170702e206b65793a247b7072652e6f7574657248544d4c7d20686173683a247b686173687d20666f7220737761702069643a247b6f666665722e69647d203c62723e60202b0a090909637265617465446f776e6c6f61644c696e6b286f666665722e69642c6b65792c6f666665722e6573636964292e6f7574657248544d4c20293b0a0909096461726b656e5f6c617965722e636c6173734c6973742e72656d6f7665282268696464656e22293b0a0909096b6579735b6f666665722e69645d203d206b65793b0909090a090909627574746f6e5f7374617465735b6f666665722e69645d203d20616374696f6e5f627574746f6e2e74657874436f6e74656e743b0a0909096c6574206574685f68746c5f7478203d2061776169742066756e6445544848544c286f666665722e69642c6574685f736369642c6f666665722e657468616d742c68617368293b0a0909096966286574685f68746c5f7478203d3d2066616c7365297b0a09090909617761697420616c6572744d6f64616c282246756e64696e67206661696c656422293b0a0909090964656c65746520627574746f6e5f7374617465735b6f666665722e69645d0a09090909616374696f6e5f627574746f6e2e64697361626c6564203d2066616c73650a0909090972657475726e3b0a0909097d0909090a090909617761697420616c6572744d6f64616c286046756e64696e672073756363657366756c2e205761697420666f7220746865206f7468657220706172747920746f206465706c6f79206120636f6e7472616374207769746820796f75722066756e647320746f20626520756e6c6f636b6564207769746820796f7572206b65792e20247b7072652e6f7574657248544d4c7d60293b0a090909617761697420726566726573684269647328293b0a09097d656c73657b0a09090972657475726e3b0a09097d0a09090a097d293b0a7d0a2f2f77616974696e6720666f72206f746865722073632e2e2e0a2f2f74616b65722d6574682d6465726f0a6173796e632066756e6374696f6e2067657457616974696e67466f724554485343427574746f6e28616374696f6e5f627574746f6e2c6f666665722c6465726f5f646561646c696e65297b0a09616374696f6e5f627574746f6e2e6164644576656e744c697374656e65722822636c69636b222c206173796e632066756e6374696f6e2829207b0a09617761697420616c6572744d6f64616c2822546865206d616b6572206f6620746865206f666665722073686f756c64206e6f77206465706c6f792061204554482068746c20636f6e7472616374207573696e6720746865206861736820796f752070726f76696465642e205768656e207468617420697320756e6c6f636b6564207769746820746865206b657920796f7520686176652c207468656e20746865792077696c6c206861766520746865206b657920666f72207768617420796f75206c6f636b65642075702e204f746865727769736520796f757220222b636f6e76657274546f4465726f556e697473286f666665722e6465726f616d74292b22204465726f2077696c6c20626520726566756e6461626c6520696e20222b6e696365526f756e64284e756d62657228286465726f5f646561646c696e65202d206e6f77496e5365636f6e64732829292f33363030292e746f4669786564283129292b2220686f75727322293b0a097d293b0a7d0a2f2f6465726f2d6574680a6173796e632066756e6374696f6e2067657457616974696e67466f724465726f5343427574746f6e28616374696f6e5f627574746f6e2c6f666665722c6574685f646561646c696e65297b0a092f2f6c6574206574685f646561646c696e65203d2065746848544c2e646561646c696e653b2f2f73617665207661726961626c6520666f7220627574746f6e0a09616374696f6e5f627574746f6e2e6164644576656e744c697374656e65722822636c69636b222c206173796e632066756e6374696f6e2829207b0a0909617761697420616c6572744d6f64616c2822546865206d616b6572206f6620746865206f666665722073686f756c64206e6f77206465706c6f792061204465726f2068746c20636f6e7472616374207573696e6720746865206861736820796f752070726f76696465642e205768656e207468617420697320756e6c6f636b6564207769746820746865206b657920796f7520686176652c207468656e20746865792077696c6c206861766520746865206b657920666f72207768617420796f75206c6f636b65642075702e204f746865727769736520796f757220222b6f666665722e657468616d742b22204554482077696c6c20626520726566756e6461626c6520696e20222b6e696365526f756e64284e756d62657228286574685f646561646c696e65202d206e6f77496e5365636f6e64732829292f33363030292e746f4669786564283129292b2220686f75727322293b0a097d293b0a7d0a2f2f74616b65722d6574682d6465726f0a6173796e632066756e6374696f6e206765745769746864726177455448427574746f6e28616374696f6e5f627574746f6e2c6f66666572297b0a09616374696f6e5f627574746f6e2e6164644576656e744c697374656e65722822636c69636b222c6173796e632066756e6374696f6e2829207b09090a09096c6574206b65795f746578743d22223b0a0909696628747970656f66206b6579735b6f666665722e69645d20213d2022756e646566696e656422297b0a0909096b65795f74657874203d206b6579735b6f666665722e69645d3b0a09097d0a09096c6574206b6579203d2061776169742070726f6d70744d6f64616c28286b65795f74657874203d3d2022223f22506c6561736520656e74657220746865206b657920746f2075223a225522292b226e6c6f636b206f6666657220776974682049643a22202b206f666665722e69642c206b65795f74657874293b09090a0909696620286b657920213d206e756c6c29207b0909090a0909096461726b656e5f6c617965722e636c6173734c6973742e72656d6f7665282268696464656e22293b0a090909627574746f6e5f7374617465735b6f666665722e69645d203d20616374696f6e5f627574746f6e2e74657874436f6e74656e743b0a0909096c65742074784861736852656365697074203d206177616974206574685769746864726177616c286b65792c6f666665722e6573636964293b0a0909096966287478486173685265636569707420213d2727297b090909090909090a09090909617761697420616c6572744d6f64616c2822545849443a222b74784861736852656365697074293b0a09090909726566726573684269647328293b0a0909097d656c73657b0a0909090964656c65746520627574746f6e5f7374617465735b6f666665722e69645d0a09090909617761697420616c6572744d6f64616c28224572726f72204f636375727265642c2074727920616761696e20696620796f75722066756e647320686176656e277420617272697665642e22293b0a0909097d0a09097d656c73657b0a09090972657475726e3b0a09097d09090909090909090909090a097d293b0a7d0a2f2f74616b65722d6465726f2d6574680a6173796e632066756e6374696f6e2067657457697468647261774465726f427574746f6e28616374696f6e5f627574746f6e2c6f66666572297b0a09616374696f6e5f627574746f6e2e6164644576656e744c697374656e65722822636c69636b222c6173796e632066756e6374696f6e2829207b09090a09096c6574206b65795f746578743d22223b0a0909696628747970656f66206b6579735b6f666665722e69645d20213d2022756e646566696e656422297b0a0909096b65795f74657874203d206b6579735b6f666665722e69645d3b0a09097d0a09096c6574206b6579203d2061776169742070726f6d70744d6f64616c28286b65795f74657874203d3d2022223f22506c6561736520656e74657220746865206b657920746f2075223a225522292b226e6c6f636b206f6666657220776974682049643a22202b206f666665722e69642c206b65795f74657874293b0a09090a0909696620286b657920213d206e756c6c29207b0a0909096461726b656e5f6c617965722e636c6173734c6973742e72656d6f7665282268696464656e22293b0a090909627574746f6e5f7374617465735b6f666665722e69645d203d20616374696f6e5f627574746f6e2e74657874436f6e74656e743b0a0909096c657420747848617368203d206177616974206465726f5769746864726177616c286b65792c6f666665722e6473636964293b0a09090969662874784861736820213d2727297b0a09090909617761697420616c6572744d6f64616c2822545849443a222b747848617368293b0a09090909726566726573684269647328293b0a0909097d656c73657b0a0909090964656c65746520627574746f6e5f7374617465735b6f666665722e69645d0a09090909617761697420616c6572744d6f64616c28224572726f72204f636375727265642c2074727920616761696e20696620796f75722066756e647320686176656e277420617272697665642e22293b0a0909097d0a09097d656c73657b0a09090972657475726e3b0a09097d090a097d293b0a7d0a0a0a0a0a0a2f2f2d2d286d616b6572292d2d2d2d090a2f2f6574682d6465726f0a6173796e632066756e6374696f6e206765744d616b65725044496e7374616c6c427574746f6e28616374696f6e5f627574746f6e2c6f666665722c646561646c696e652c6861736876616c7565297b0a097661722074696d656c656674203d206e696365526f756e64284e756d6265722828646561646c696e65202d206f6e655f616e645f615f68616c665f646179735f696e5f73656373202d206e6f77496e5365636f6e64732829292f33363030292e746f4669786564283129293b0a097661722074696d656c656674666f72646561646c696e65203d206e696365526f756e64284e756d6265722828646561646c696e65202d206f6e655f6461795f696e5f73656373202d206e6f77496e5365636f6e64732829292f33363030292e746f4669786564283129293b0a090a09616374696f6e5f627574746f6e2e74657874436f6e74656e74203d2022496e7374616c6c20455448205343202d20486f757273206c6566743a20222b74696d656c6566743b0a0969662874696d656c656674203c3d2030297b0a0909616374696f6e5f627574746f6e2e74657874436f6e74656e74203d202245787069726564223b0a097d0a09616374696f6e5f627574746f6e2e6164644576656e744c697374656e65722822636c69636b222c6173796e632066756e6374696f6e2829207b0a0909616374696f6e5f627574746f6e2e64697361626c6564203d20747275653b0a09096c657420726573756c74203d20617761697420636f6e6669726d4d6f64616c28223c623e494d504f5254414e543a3c2f623e20222b74696d656c6566742b2220686f757273206c65667420746f20736166656c7920696e7374616c6c20616e64206c6f636b20796f7572206465706f736974206f6620222b6f666665722e657468616d742b224554482e20496620746865206f7468657220706172747920776169747320756e74696c20746865206c617374206d696e75746520746f2063617368206f75742c20796f752077696c6c206861766520222b74696d656c656674666f72646561646c696e652b2220686f75727320746f20636c61696d20796f7572204465726f206265666f726520796f75207269736b206c6f73696e67207468652066756e64732e20546865792063616e20636c61696d206120726566756e6420616674657220746865697220343820686f7572206c6f636b757020666f7220796f752069732075702e20456e7375726520796f752063616e20626520617661696c61626c6520746f20636f6d706c65746520796f7572207769746864726177616c207768656e206974206973207265616479213c62723e2053746172742031206461792045544820636f6e747261637420616e642066756e64206974207769746820222b206f666665722e657468616d74202b2220666f722045544820616464726573733a20222b206f666665722e61636365707465645f6574685f61646472657373202b22207573696e6720686173682076616c75653a20222b6861736876616c75652b222e2041726520796f75207375726520796f752077616e7420746f20636f6e74696e75653f22293b2f2f0a090969662028726573756c7429207b090a0909090a090909617761697420616c6572744d6f64616c2822496e7374616c6c696e6720455448207374616765203220636f6e74726163742077697468206f6e6520646179206c6f636b20706572696f6422293b0a0909096461726b656e5f6c617965722e636c6173734c6973742e72656d6f7665282268696464656e22293b0a0909096c6574206574685f68746c5f736369645f7478203d20617761697420696e7374616c6c45544848544c28312c6f666665722e61636365707465645f6574685f61646472657373293b090909090a0909096966286574685f68746c5f736369645f7478203d3d2066616c7365297b0a09090909616374696f6e5f627574746f6e2e64697361626c6564203d2066616c73653b0a0909090972657475726e3b0a0909097d0a090909617761697420616c6572744d6f64616c28224e65787420737465702c20617070726f7665205343206c697374696e6720545820696e204465726f2077616c6c65742e22293b0a09090961776169742061646453434944546f4c6973742822455448222c6574685f68746c5f736369645f74782c6f66666572293b0a090909616374696f6e5f627574746f6e2e64697361626c6564203d20747275653b0a090909616374696f6e5f627574746f6e2e74657874436f6e74656e74203d202257616974696e6720666f7220757064617465223b0a090909627574746f6e5f7374617465735b6f666665722e69645d203d20616374696f6e5f627574746f6e2e74657874436f6e74656e743b0a09097d656c73657b0a090909616374696f6e5f627574746f6e2e64697361626c6564203d2066616c73653b0a09090972657475726e3b0a09097d0909090a097d293b09090a7d0a2f2f6465726f2d657468090a6173796e632066756e6374696f6e206765744d616b65724450496e7374616c6c427574746f6e28616374696f6e5f627574746f6e2c6f666665722c646561646c696e652c6861736876616c7565297b090a097661722074696d656c656674203d206e696365526f756e64284e756d6265722828646561646c696e65202d206f6e655f616e645f615f68616c665f646179735f696e5f73656373202d206e6f77496e5365636f6e64732829292f33363030292e746f4669786564283129293b0a097661722074696d656c656674666f72646561646c696e65203d206e696365526f756e64284e756d6265722828646561646c696e65202d206f6e655f6461795f696e5f73656373202d206e6f77496e5365636f6e64732829292f33363030292e746f4669786564283129293b0a090a09616374696f6e5f627574746f6e2e74657874436f6e74656e74203d2022496e7374616c6c204445524f205343202d20486f757273206c6566743a222b74696d656c6566743b0a0969662874696d656c656674203c3d2030297b0a0909616374696f6e5f627574746f6e2e74657874436f6e74656e74203d202245787069726564223b0a097d0a09616374696f6e5f627574746f6e2e6164644576656e744c697374656e65722822636c69636b222c6173796e632066756e6374696f6e2829207b0a0909616374696f6e5f627574746f6e2e64697361626c6564203d20747275653b0a09096c657420726573756c74203d20617761697420636f6e6669726d4d6f64616c28223c623e494d504f5254414e543a3c2f623e20222b74696d656c6566742b2220686f757273206c65667420746f20736166656c7920696e7374616c6c20616e64206c6f636b20796f7572206465706f736974206f6620222b636f6e76657274546f4465726f556e697473286f666665722e6465726f616d74292b224465726f2e20496620746865206f7468657220706172747920776169747320756e74696c20746865206c617374206d696e75746520746f2063617368206f75742c20796f752077696c6c206861766520222b74696d656c656674666f72646561646c696e652b2220686f75727320746f20636c61696d20796f757220455448206265666f726520796f75207269736b206c6f73696e67207468652066756e64732e20546865792063616e20636c61696d206120726566756e6420616674657220746865697220343820686f7572206c6f636b757020666f7220796f752069732075702e20456e7375726520796f752063616e20626520617661696c61626c6520746f20636f6d706c65746520796f7572207769746864726177616c207768656e206974206973207265616479213c62723e205374617274203120646179204465726f20636f6e747261637420616e642066756e64206974207769746820222b20636f6e76657274546f4465726f556e697473286f666665722e6465726f616d7429202b2220666f72204465726f20616464726573733a20222b206f666665722e61636365707465645f6465726f5f61646472657373202b22207573696e6720686173682076616c75653a20222b6861736876616c75652b222e2041726520796f75207375726520796f752077616e7420746f20636f6e74696e75653f22293b2f2f0a090969662028726573756c7429207b0a090909617761697420616c6572744d6f64616c2822496e7374616c6c696e67204465726f207374616765203220636f6e74726163742077697468206f6e6520646179206c6f636b20706572696f6422293b0a0909096461726b656e5f6c617965722e636c6173734c6973742e72656d6f7665282268696464656e22293b0a0909096c6574206465726f5f68746c5f73636964203d20617761697420696e7374616c6c4465726f48544c28312c6f666665722e61636365707465645f6465726f5f61646472657373293b090909090a0909096966286465726f5f68746c5f73636964203d3d2066616c7365297b0a09090909616374696f6e5f627574746f6e2e64697361626c6564203d2066616c73653b0a0909090972657475726e3b0a0909097d0a090909617761697420616c6572744d6f64616c28224e65787420737465702c20617070726f7665205343206c697374696e6720545820696e204465726f2077616c6c65742e22293b0a09090961776169742061646453434944546f4c69737428224445524f222c6465726f5f68746c5f736369642c6f66666572293b0a090909616374696f6e5f627574746f6e2e64697361626c6564203d20747275653b0a090909616374696f6e5f627574746f6e2e74657874436f6e74656e74203d202257616974696e6720666f7220757064617465223b0a090909627574746f6e5f7374617465735b6f666665722e69645d203d20616374696f6e5f627574746f6e2e74657874436f6e74656e743b0a09097d656c73657b0a090909616374696f6e5f627574746f6e2e64697361626c6564203d2066616c73653b0a09090972657475726e3b0a09097d09090a097d293b0909090a7d0a0a2f2f6574682d6465726f0a6173796e632066756e6374696f6e206765744d616b6572504446756e64427574746f6e28616374696f6e5f627574746f6e2c6f666665722c6465726f48544c2c65746848544c297b0a097661722074696d656c656674203d206e696365526f756e64284e756d62657228286465726f48544c2e646561646c696e65202d206f6e655f616e645f615f68616c665f646179735f696e5f73656373202d206e6f77496e5365636f6e64732829292f33363030292e746f4669786564283129293b0a097661722074696d656c656674666f72646561646c696e65203d206e696365526f756e64284e756d62657228286465726f48544c2e646561646c696e65202d206f6e655f6461795f696e5f73656373202d206e6f77496e5365636f6e64732829292f33363030292e746f4669786564283129293b0a09616374696f6e5f627574746f6e2e74657874436f6e74656e74203d202246756e64204554482048544c20436f6e7472616374202d20486f757273206c6566743a20222b74696d656c6566743b0a0969662874696d656c656674203c3d2030297b0a0909616374696f6e5f627574746f6e2e74657874436f6e74656e74203d202245787069726564223b0a097d09090a09616374696f6e5f627574746f6e2e6164644576656e744c697374656e65722822636c69636b222c6173796e632066756e6374696f6e2829207b0a0909616374696f6e5f627574746f6e2e64697361626c6564203d20747275653b0a09096c657420726573756c74203d20617761697420636f6e6669726d4d6f64616c28223c623e494d504f5254414e543a3c2f623e20222b74696d656c6566742b2220686f757273206c65667420746f206465706f73697420222b66726f6d45544841746f6d6963556e697473286f666665722e657468616d74292b224554482c206c656176696e6720222b74696d656c656674666f72646561646c696e652b2220686f75727320746f20636c61696d20796f7572204465726f2028616674657220746865792063617368206f757420746865204554482070726f766964696e6720796f7520746865206b657929206265666f726520796f75207269736b206c6f73696e6720796f75722066756e64732e2049662074686579207761697420756e74696c20746865206c617374206d696e75746520746f20636c61696d2074686569722066756e64732028323420686f7572732066726f6d206e6f772920616e6420746865697220343820686f7572206c6f636b2074696d65206973207570206166746572206465706c6f79696e6720746865697220636f6e747261637420746865792063616e20676574207468656972204465726f20726566756e646564206261636b20746f6f2e203c62723e2041726520796f75207375726520796f752077616e7420746f20636f6e74696e75653f203c62723e5361766520737761702064657461696c7320666f722065787472612070726563617574696f6e2028736565206775696465293a20222b6372656174654d616b6572446f776e6c6f61644c696e6b286f666665722e69642c6465726f48544c2e736369642c65746848544c2e73636964292e6f7574657248544d4c20293b0a090969662028726573756c7429207b090909090a090909617761697420616c6572744d6f64616c282246756e64696e6720455448207374616765203220636f6e74726163742077697468206f6e6520646179206c6f636b20706572696f6422293b0a0909096461726b656e5f6c617965722e636c6173734c6973742e72656d6f7665282268696464656e22293b0a090909627574746f6e5f7374617465735b6f666665722e69645d203d20616374696f6e5f627574746f6e2e74657874436f6e74656e743b0a0909096c6574206574685f68746c5f7478203d2061776169742066756e6445544848544c286f666665722e69642c65746848544c2e736369642c6f666665722e657468616d742c6465726f48544c2e68617368293b09090a0909096966286574685f68746c5f7478203d3d2066616c7365297b0a09090909617761697420616c6572744d6f64616c282246756e64696e67206661696c656422293b0a09090909616374696f6e5f627574746f6e2e64697361626c6564203d2066616c73653b0a0909090964656c65746520627574746f6e5f7374617465735b6f666665722e69645d0a0909090972657475726e3b0a0909097d0a090909617761697420616c6572744d6f64616c282246756e64696e672073756363657366756c2c20706c6561736520776169742064696c6967656e746c7920666f7220746865206b657920746f20626520756e6c6f636b656420736f20796f752063616e2067657420796f75722066756e64732e22293b0a09097d656c73657b0a090909616374696f6e5f627574746f6e2e64697361626c6564203d2066616c73653b0a09090972657475726e3b0a09097d0909090a097d293b09090a7d0a2f2f6465726f2d6574680a6173796e632066756e6374696f6e206765744d616b6572445046756e64427574746f6e28616374696f6e5f627574746f6e2c6f666665722c6465726f48544c2c65746848544c297b0a097661722074696d656c656674203d206e696365526f756e64284e756d626572282865746848544c2e646561646c696e65202d206f6e655f616e645f615f68616c665f646179735f696e5f73656373202d206e6f77496e5365636f6e64732829292f33363030292e746f4669786564283129293b0a097661722074696d656c656674666f72646561646c696e65203d206e696365526f756e64284e756d626572282865746848544c2e646561646c696e65202d206f6e655f6461795f696e5f73656373202d206e6f77496e5365636f6e64732829292f33363030292e746f4669786564283129293b0a09616374696f6e5f627574746f6e2e74657874436f6e74656e74203d202246756e64204465726f2048544c20436f6e7472616374202d20486f757273206c6566743a20222b74696d656c6566743b0a0969662874696d656c656674203c3d2030297b0a0909616374696f6e5f627574746f6e2e74657874436f6e74656e74203d202245787069726564223b0a0909616374696f6e5f627574746f6e2e64697361626c6564203d20747275653b0a097d09090a09616374696f6e5f627574746f6e2e6164644576656e744c697374656e65722822636c69636b222c6173796e632066756e6374696f6e2829207b0a09616374696f6e5f627574746f6e2e64697361626c6564203d2066616c73653b0a096c657420726573756c74203d20617761697420636f6e6669726d4d6f64616c28223c623e494d504f5254414e543a3c2f623e20222b74696d656c6566742b2220686f757273206c65667420746f206465706f73697420222b636f6e76657274546f4465726f556e697473286f666665722e6465726f616d74292b224465726f2c206c656176696e6720222b74696d656c656674666f72646561646c696e652b2220686f75727320746f20636c61696d20796f7572204554482028616674657220746865792063617368206f757420746865204465726f2070726f766964696e6720796f7520746865206b657929206265666f726520796f75207269736b206c6f73696e6720796f75722066756e64732e2049662074686579207761697420756e74696c20746865206c617374206d696e75746520746f20636c61696d2074686569722066756e64732028323420686f7572732066726f6d206e6f772920616e6420746865697220343820686f7572206c6f636b2074696d65206973207570206166746572206465706c6f79696e6720746865697220636f6e747261637420746865792063616e206765742074686569722045544820726566756e646564206261636b20746f6f2e203c62723e2041726520796f75207375726520796f752077616e7420746f20636f6e74696e75653f203c62723e5361766520737761702064657461696c7320666f722065787472612070726563617574696f6e2028736565206775696465293a20222b6372656174654d616b6572446f776e6c6f61644c696e6b286f666665722e69642c6465726f48544c2e736369642c65746848544c2e73636964292e6f7574657248544d4c20293b0a090969662028726573756c7429207b090909090a090909617761697420616c6572744d6f64616c282246756e64696e67204465726f207374616765203220636f6e74726163742077697468206f6e6520646179206c6f636b20706572696f6422293b0a0909096461726b656e5f6c617965722e636c6173734c6973742e72656d6f7665282268696464656e22293b0a090909627574746f6e5f7374617465735b6f666665722e69645d203d20616374696f6e5f627574746f6e2e74657874436f6e74656e743b0a0909096c6574206465726f5f68746c5f7478203d2061776169742066756e644465726f48544c286f666665722e69642c6465726f48544c2e736369642c6f666665722e6465726f616d742c65746848544c2e68617368290a0909096966286465726f5f68746c5f7478203d3d2066616c7365297b0a09090909617761697420616c6572744d6f64616c282246756e64696e67206661696c656422293b0a09090909616374696f6e5f627574746f6e2e64697361626c6564203d2066616c73653b0a0909090964656c65746520627574746f6e5f7374617465735b6f666665722e69645d0a0909090972657475726e3b0a0909097d0a090909617761697420616c6572744d6f64616c282246756e64696e672073756363657366756c2c20706c6561736520776169742064696c6967656e746c7920666f7220746865206b657920746f20626520756e6c6f636b656420736f20796f752063616e2067657420796f75722066756e64732e22293b0a09097d656c73657b0a090909616374696f6e5f627574746f6e2e64697361626c6564203d2066616c73653b0a09090972657475726e3b0a09097d0909090a097d293b09090a7d0a2a2f
dURL 627574746f6e732e6a73
descrHdr 427574746f6e73
dislikes 0
docType 54454c412d4a532d31
docVersion 312e302e30
fileCheckC 32336135343633353832393033363561653633363934303037663831343638633531366634336134343530663133333338633965326234623664363332656361
fileCheckS 31353330653631343836653565633335613031623034373565666461613731303062333030613962663336366632326330333266663530396430653165626165
hash 63326237303730316432646431346331623665343335626138366334633436373739303836623730303136353139313438383563343834396663366239386364
iconURLHdr
likes 0
nameHdr 627574746f6e732e6a73
owner 6465726f317179347966376335373777717a767a7134347833306c7967686135776a7a377772687736646e76356e337071346634643761716c75717133306d37616b
subDir
SCID uint64 variables
key value
built BLID : f76ebbf23b77fe753055b2b08b79209948430a91cddc607d4d05ac1b6e328fb9
Tx RootHash: cf677ba7ef290daa109399c3b6fac7d486a13684118efe169fe3dec4272678cc built height : 5886569
Timestamp: 1756945422552 Timestamp [UTC]: 2025-09-04 02:23:42 Age [y:d:h:m:s]: 87:5:10.631
Block: 5886574 Fee: 0.25285 Tx size: 18.061 kB
Tx version: 1 No of confirmations: 16424 Signature type: DERO_HOMOMORPHIC
Extra:
DERO : 2 inputs/outputs (RING size) Fees 0.25285 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", "buttons.js")
31 STORE("descrHdr", "Buttons")
32 STORE("iconURLHdr", "")
33 STORE("dURL", "buttons.js")
34 STORE("docType", "TELA-JS-1")
35 STORE("subDir", "")
36 STORE("fileCheckC", "23a546358290365ae63694007f81468c516f43a4450f13338c9e2b4b6d632eca")
37 STORE("fileCheckS", "1530e61486e5ec35a01b0475efdaa7100b300a9bf366f22c032ff509d0e1ebae")
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

/*
//--------------------------	
//--Get action functions----	
//--------------------------
let button_states=[]

function getAcceptButton(action_button,offer){
	//Someone else's offer that is waiting for a taker	
	action_button.textContent = "Accept";
	action_button.addEventListener("click", function() {
		action_button.disabled = true;
		button_states[offer.id] = action_button.textContent;
		acceptBid(
			offer
		);
	});
}



function getRemoveBidButton(action_button,offer,deadline){
	action_button.textContent = "Remove";
	action_button.setAttribute("index", offer.id);					
	action_button.addEventListener("click", function() {
		action_button.disabled = true;
		button_states[offer.id] = action_button.textContent;
		removeBid(offer.id);
	});		
}
//taker buttons --
//eth-dero
async function getInstallDeroHTLButton(action_button,offer){
	action_button.addEventListener("click",async function() {
		action_button.disabled = true;
		darken_layer.classList.remove("hidden");		
		button_states[offer.id] = action_button.textContent;
		let dero_htl_txid = await installDeroHTL(2,offer.dero_bid_address);		
		if(dero_htl_txid == false){
			darken_layer.classList.add("hidden");
			action_button.disabled = false;
			delete button_states[offer.id]
			return false;
		}
		darken_layer.classList.remove("hidden");
		await addSCIDToList("DERO",dero_htl_txid,offer);
		darken_layer.classList.add("hidden");
		action_button.textContent = "Waiting for update";
		action_button.disabled = true;
		button_states[offer.id] = action_button.textContent;

	});
 }
//dero-eth
async function getInstallETHHTLButton(action_button,offer){
	action_button.addEventListener("click",async function() {
		action_button.disabled = true;
		darken_layer.classList.remove("hidden");
		button_states[offer.id] = action_button.textContent;
		let eth_htl_txid = await installETHHTL(2,offer.eth_bid_address);		
		if(eth_htl_txid == false){
			darken_layer.classList.add("hidden");
			action_button.disabled = false;
			delete button_states[offer.id]
			return false;
		}
		await alertModal("Next step, approve SC listing TX in Dero wallet.");
		darken_layer.classList.remove("hidden");
		await addSCIDToList("ETH",eth_htl_txid,offer);
		darken_layer.classList.add("hidden");
		action_button.textContent = "Waiting for update";
		action_button.disabled = true;
		button_states[offer.id] = action_button.textContent;
		
	});	
}
 	
//taker-eth-dero
 async function getFundDeroHTLButton(action_button,offer){
	 action_button.addEventListener("click", async function() {
		let hash = "";
		let key = await promptModal(
			"Please create a key (32 chars max) for generating the hash for bid id:" + offer.id, randomString(32),
			{"class":"keygen"},
			function (){document.querySelector(".keygen input").setAttribute("type", "text")}
		);		
		if (getByteLength(key) > 32){
			await alertModal("Value too large.");								
			return;
		}
		if (key != null) {
			darken_layer.classList.remove("hidden");
			hash = await generateSHA256Hash(key.toString());
			let pre = document.createElement("pre");
			pre.innerText = key;
			await alertModal(`Save your key in case you leave the app. key:${pre.outerHTML} hash:${hash} for swap id:${offer.id} <br>` + 
				createDownloadLink(offer.id,key,offer.dscid).outerHTML
			);
			
			darken_layer.classList.remove("hidden");
			keys[offer.id] = key;
			button_states[offer.id] = action_button.textContent;
			let dero_htl_tx = await fundDeroHTL(offer.id,offer.dscid,offer.deroamt,hash)
			if(dero_htl_tx == false){
				await alertModal("Funding failed");
				delete button_states[offer.id]
				action_button.disabled = false
				return;
			}			
			await alertModal(`Funding succesful. Wait for the other party to deploy a contract with your funds to be unlocked with your key. ${pre.outerHTML}`);			
			await refreshBids();
		}else{
			return;
		}		
	})
}
//dero-eth
 async function getFundETHHTLButton(action_button,offer,eth_scid){
	action_button.addEventListener("click", async function() {
		//maybe check if it funded first here in case of delay
		let hash = "";
		let key = await promptModal(
			"Please create a key (32 chars max) for generating the hash for bid id:" + offer.id, randomString(32), 
			{"class":"keygen"},
			function (){document.querySelector(".keygen input").setAttribute("type", "text")}
		);
		if (getByteLength(key) > 32){
			await alertModal("Value too large.");								
			return;
		}
		
		if (key != null) {
			darken_layer.classList.remove("hidden");
			hash = await generateSHA256Hash(key.toString());
			let pre = document.createElement("pre");
			pre.innerText = key;
			await alertModal(`Save your key in case you leave the app. key:${pre.outerHTML} hash:${hash} for swap id:${offer.id} <br>` +
			createDownloadLink(offer.id,key,offer.escid).outerHTML );
			darken_layer.classList.remove("hidden");
			keys[offer.id] = key;			
			button_states[offer.id] = action_button.textContent;
			let eth_htl_tx = await fundETHHTL(offer.id,eth_scid,offer.ethamt,hash);
			if(eth_htl_tx == false){
				await alertModal("Funding failed");
				delete button_states[offer.id]
				action_button.disabled = false
				return;
			}			
			await alertModal(`Funding succesful. Wait for the other party to deploy a contract with your funds to be unlocked with your key. ${pre.outerHTML}`);
			await refreshBids();
		}else{
			return;
		}
		
	});
}
//waiting for other sc...
//taker-eth-dero
async function getWaitingForETHSCButton(action_button,offer,dero_deadline){
	action_button.addEventListener("click", async function() {
	await alertModal("The maker of the offer should now deploy a ETH htl contract using the hash you provided. When that is unlocked with the key you have, then they will have the key for what you locked up. Otherwise your "+convertToDeroUnits(offer.deroamt)+" Dero will be refundable in "+niceRound(Number((dero_deadline - nowInSeconds())/3600).toFixed(1))+" hours");
	});
}
//dero-eth
async function getWaitingForDeroSCButton(action_button,offer,eth_deadline){
	//let eth_deadline = ethHTL.deadline;//save variable for button
	action_button.addEventListener("click", async function() {
		await alertModal("The maker of the offer should now deploy a Dero htl contract using the hash you provided. When that is unlocked with the key you have, then they will have the key for what you locked up. Otherwise your "+offer.ethamt+" ETH will be refundable in "+niceRound(Number((eth_deadline - nowInSeconds())/3600).toFixed(1))+" hours");
	});
}
//taker-eth-dero
async function getWithdrawETHButton(action_button,offer){
	action_button.addEventListener("click",async function() {		
		let key_text="";
		if(typeof keys[offer.id] != "undefined"){
			key_text = keys[offer.id];
		}
		let key = await promptModal((key_text == ""?"Please enter the key to u":"U")+"nlock offer with Id:" + offer.id, key_text);		
		if (key != null) {			
			darken_layer.classList.remove("hidden");
			button_states[offer.id] = action_button.textContent;
			let txHashReceipt = await ethWithdrawal(key,offer.escid);
			if(txHashReceipt !=''){							
				await alertModal("TXID:"+txHashReceipt);
				refreshBids();
			}else{
				delete button_states[offer.id]
				await alertModal("Error Occurred, try again if your funds haven't arrived.");
			}
		}else{
			return;
		}											
	});
}
//taker-dero-eth
async function getWithdrawDeroButton(action_button,offer){
	action_button.addEventListener("click",async function() {		
		let key_text="";
		if(typeof keys[offer.id] != "undefined"){
			key_text = keys[offer.id];
		}
		let key = await promptModal((key_text == ""?"Please enter the key to u":"U")+"nlock offer with Id:" + offer.id, key_text);
		
		if (key != null) {
			darken_layer.classList.remove("hidden");
			button_states[offer.id] = action_button.textContent;
			let txHash = await deroWithdrawal(key,offer.dscid);
			if(txHash !=''){
				await alertModal("TXID:"+txHash);
				refreshBids();
			}else{
				delete button_states[offer.id]
				await alertModal("Error Occurred, try again if your funds haven't arrived.");
			}
		}else{
			return;
		}	
	});
}





//--(maker)----	
//eth-dero
async function getMakerPDInstallButton(action_button,offer,deadline,hashvalue){
	var timeleft = niceRound(Number((deadline - one_and_a_half_days_in_secs - nowInSeconds())/3600).toFixed(1));
	var timeleftfordeadline = niceRound(Number((deadline - one_day_in_secs - nowInSeconds())/3600).toFixed(1));
	
	action_button.textContent = "Install ETH SC - Hours left: "+timeleft;
	if(timeleft <= 0){
		action_button.textContent = "Expired";
	}
	action_button.addEventListener("click",async function() {
		action_button.disabled = true;
		let result = await confirmModal("<b>IMPORTANT:</b> "+timeleft+" hours left to safely install and lock your deposit of "+offer.ethamt+"ETH. If the other party waits until the last minute to cash out, you will have "+timeleftfordeadline+" hours to claim your Dero before you risk losing the funds. They can claim a refund after their 48 hour lockup for you is up. Ensure you can be available to complete your withdrawal when it is ready!<br> Start 1 day ETH contract and fund it with "+ offer.ethamt +" for ETH address: "+ offer.accepted_eth_address +" using hash value: "+hashvalue+". Are you sure you want to continue?");//
		if (result) {	
			
			await alertModal("Installing ETH stage 2 contract with one day lock period");
			darken_layer.classList.remove("hidden");
			let eth_htl_scid_tx = await installETHHTL(1,offer.accepted_eth_address);				
			if(eth_htl_scid_tx == false){
				action_button.disabled = false;
				return;
			}
			await alertModal("Next step, approve SC listing TX in Dero wallet.");
			await addSCIDToList("ETH",eth_htl_scid_tx,offer);
			action_button.disabled = true;
			action_button.textContent = "Waiting for update";
			button_states[offer.id] = action_button.textContent;
		}else{
			action_button.disabled = false;
			return;
		}			
	});		
}
//dero-eth	
async function getMakerDPInstallButton(action_button,offer,deadline,hashvalue){	
	var timeleft = niceRound(Number((deadline - one_and_a_half_days_in_secs - nowInSeconds())/3600).toFixed(1));
	var timeleftfordeadline = niceRound(Number((deadline - one_day_in_secs - nowInSeconds())/3600).toFixed(1));
	
	action_button.textContent = "Install DERO SC - Hours left:"+timeleft;
	if(timeleft <= 0){
		action_button.textContent = "Expired";
	}
	action_button.addEventListener("click",async function() {
		action_button.disabled = true;
		let result = await confirmModal("<b>IMPORTANT:</b> "+timeleft+" hours left to safely install and lock your deposit of "+convertToDeroUnits(offer.deroamt)+"Dero. If the other party waits until the last minute to cash out, you will have "+timeleftfordeadline+" hours to claim your ETH before you risk losing the funds. They can claim a refund after their 48 hour lockup for you is up. Ensure you can be available to complete your withdrawal when it is ready!<br> Start 1 day Dero contract and fund it with "+ convertToDeroUnits(offer.deroamt) +" for Dero address: "+ offer.accepted_dero_address +" using hash value: "+hashvalue+". Are you sure you want to continue?");//
		if (result) {
			await alertModal("Installing Dero stage 2 contract with one day lock period");
			darken_layer.classList.remove("hidden");
			let dero_htl_scid = await installDeroHTL(1,offer.accepted_dero_address);				
			if(dero_htl_scid == false){
				action_button.disabled = false;
				return;
			}
			await alertModal("Next step, approve SC listing TX in Dero wallet.");
			await addSCIDToList("DERO",dero_htl_scid,offer);
			action_button.disabled = true;
			action_button.textContent = "Waiting for update";
			button_states[offer.id] = action_button.textContent;
		}else{
			action_button.disabled = false;
			return;
		}		
	});			
}

//eth-dero
async function getMakerPDFundButton(action_button,offer,deroHTL,ethHTL){
	var timeleft = niceRound(Number((deroHTL.deadline - one_and_a_half_days_in_secs - nowInSeconds())/3600).toFixed(1));
	var timeleftfordeadline = niceRound(Number((deroHTL.deadline - one_day_in_secs - nowInSeconds())/3600).toFixed(1));
	action_button.textContent = "Fund ETH HTL Contract - Hours left: "+timeleft;
	if(timeleft <= 0){
		action_button.textContent = "Expired";
	}		
	action_button.addEventListener("click",async function() {
		action_button.disabled = true;
		let result = await confirmModal("<b>IMPORTANT:</b> "+timeleft+" hours left to deposit "+fromETHAtomicUnits(offer.ethamt)+"ETH, leaving "+timeleftfordeadline+" hours to claim your Dero (after they cash out the ETH providing you the key) before you risk losing your funds. If they wait until the last minute to claim their funds (24 hours from now) and their 48 hour lock time is up after deploying their contract they can get their Dero refunded back too. <br> Are you sure you want to continue? <br>Save swap details for extra precaution (see guide): "+createMakerDownloadLink(offer.id,deroHTL.scid,ethHTL.scid).outerHTML );
		if (result) {				
			await alertModal("Funding ETH stage 2 contract with one day lock period");
			darken_layer.classList.remove("hidden");
			button_states[offer.id] = action_button.textContent;
			let eth_htl_tx = await fundETHHTL(offer.id,ethHTL.scid,offer.ethamt,deroHTL.hash);		
			if(eth_htl_tx == false){
				await alertModal("Funding failed");
				action_button.disabled = false;
				delete button_states[offer.id]
				return;
			}
			await alertModal("Funding succesful, please wait diligently for the key to be unlocked so you can get your funds.");
		}else{
			action_button.disabled = false;
			return;
		}			
	});		
}
//dero-eth
async function getMakerDPFundButton(action_button,offer,deroHTL,ethHTL){
	var timeleft = niceRound(Number((ethHTL.deadline - one_and_a_half_days_in_secs - nowInSeconds())/3600).toFixed(1));
	var timeleftfordeadline = niceRound(Number((ethHTL.deadline - one_day_in_secs - nowInSeconds())/3600).toFixed(1));
	action_button.textContent = "Fund Dero HTL Contract - Hours left: "+timeleft;
	if(timeleft <= 0){
		action_button.textContent = "Expired";
		action_button.disabled = true;
	}		
	action_button.addEventListener("click",async function() {
	action_button.disabled = false;
	let result = await confirmModal("<b>IMPORTANT:</b> "+timeleft+" hours left to deposit "+convertToDeroUnits(offer.deroamt)+"Dero, leaving "+timeleftfordeadline+" hours to claim your ETH (after they cash out the Dero providing you the key) before you risk losing your funds. If they wait until the last minute to claim their funds (24 hours from now) and their 48 hour lock time is up after deploying their contract they can get their ETH refunded back too. <br> Are you sure you want to continue? <br>Save swap details for extra precaution (see guide): "+createMakerDownloadLink(offer.id,deroHTL.scid,ethHTL.scid).outerHTML );
		if (result) {				
			await alertModal("Funding Dero stage 2 contract with one day lock period");
			darken_layer.classList.remove("hidden");
			button_states[offer.id] = action_button.textContent;
			let dero_htl_tx = await fundDeroHTL(offer.id,deroHTL.scid,offer.deroamt,ethHTL.hash)
			if(dero_htl_tx == false){
				await alertModal("Funding failed");
				action_button.disabled = false;
				delete button_states[offer.id]
				return;
			}
			await alertModal("Funding succesful, please wait diligently for the key to be unlocked so you can get your funds.");
		}else{
			action_button.disabled = false;
			return;
		}			
	});		
}
*/
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", "buttons.js") 31 STORE("descrHdr", "Buttons") 32 STORE("iconURLHdr", "") 33 STORE("dURL", "buttons.js") 34 STORE("docType", "TELA-JS-1") 35 STORE("subDir", "") 36 STORE("fileCheckC", "23a546358290365ae63694007f81468c516f43a4450f13338c9e2b4b6d632eca") 37 STORE("fileCheckS", "1530e61486e5ec35a01b0475efdaa7100b300a9bf366f22c032ff509d0e1ebae") 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 /* //-------------------------- //--Get action functions---- //-------------------------- let button_states=[] function getAcceptButton(action_button,offer){ //Someone else's offer that is waiting for a taker action_button.textContent = "Accept"; action_button.addEventListener("click", function() { action_button.disabled = true; button_states[offer.id] = action_button.textContent; acceptBid( offer ); }); } function getRemoveBidButton(action_button,offer,deadline){ action_button.textContent = "Remove"; action_button.setAttribute("index", offer.id); action_button.addEventListener("click", function() { action_button.disabled = true; button_states[offer.id] = action_button.textContent; removeBid(offer.id); }); } //taker buttons -- //eth-dero async function getInstallDeroHTLButton(action_button,offer){ action_button.addEventListener("click",async function() { action_button.disabled = true; darken_layer.classList.remove("hidden"); button_states[offer.id] = action_button.textContent; let dero_htl_txid = await installDeroHTL(2,offer.dero_bid_address); if(dero_htl_txid == false){ darken_layer.classList.add("hidden"); action_button.disabled = false; delete button_states[offer.id] return false; } darken_layer.classList.remove("hidden"); await addSCIDToList("DERO",dero_htl_txid,offer); darken_layer.classList.add("hidden"); action_button.textContent = "Waiting for update"; action_button.disabled = true; button_states[offer.id] = action_button.textContent; }); } //dero-eth async function getInstallETHHTLButton(action_button,offer){ action_button.addEventListener("click",async function() { action_button.disabled = true; darken_layer.classList.remove("hidden"); button_states[offer.id] = action_button.textContent; let eth_htl_txid = await installETHHTL(2,offer.eth_bid_address); if(eth_htl_txid == false){ darken_layer.classList.add("hidden"); action_button.disabled = false; delete button_states[offer.id] return false; } await alertModal("Next step, approve SC listing TX in Dero wallet."); darken_layer.classList.remove("hidden"); await addSCIDToList("ETH",eth_htl_txid,offer); darken_layer.classList.add("hidden"); action_button.textContent = "Waiting for update"; action_button.disabled = true; button_states[offer.id] = action_button.textContent; }); } //taker-eth-dero async function getFundDeroHTLButton(action_button,offer){ action_button.addEventListener("click", async function() { let hash = ""; let key = await promptModal( "Please create a key (32 chars max) for generating the hash for bid id:" + offer.id, randomString(32), {"class":"keygen"}, function (){document.querySelector(".keygen input").setAttribute("type", "text")} ); if (getByteLength(key) > 32){ await alertModal("Value too large."); return; } if (key != null) { darken_layer.classList.remove("hidden"); hash = await generateSHA256Hash(key.toString()); let pre = document.createElement("pre"); pre.innerText = key; await alertModal(`Save your key in case you leave the app. key:${pre.outerHTML} hash:${hash} for swap id:${offer.id} <br>` + createDownloadLink(offer.id,key,offer.dscid).outerHTML ); darken_layer.classList.remove("hidden"); keys[offer.id] = key; button_states[offer.id] = action_button.textContent; let dero_htl_tx = await fundDeroHTL(offer.id,offer.dscid,offer.deroamt,hash) if(dero_htl_tx == false){ await alertModal("Funding failed"); delete button_states[offer.id] action_button.disabled = false return; } await alertModal(`Funding succesful. Wait for the other party to deploy a contract with your funds to be unlocked with your key. ${pre.outerHTML}`); await refreshBids(); }else{ return; } }) } //dero-eth async function getFundETHHTLButton(action_button,offer,eth_scid){ action_button.addEventListener("click", async function() { //maybe check if it funded first here in case of delay let hash = ""; let key = await promptModal( "Please create a key (32 chars max) for generating the hash for bid id:" + offer.id, randomString(32), {"class":"keygen"}, function (){document.querySelector(".keygen input").setAttribute("type", "text")} ); if (getByteLength(key) > 32){ await alertModal("Value too large."); return; } if (key != null) { darken_layer.classList.remove("hidden"); hash = await generateSHA256Hash(key.toString()); let pre = document.createElement("pre"); pre.innerText = key; await alertModal(`Save your key in case you leave the app. key:${pre.outerHTML} hash:${hash} for swap id:${offer.id} <br>` + createDownloadLink(offer.id,key,offer.escid).outerHTML ); darken_layer.classList.remove("hidden"); keys[offer.id] = key; button_states[offer.id] = action_button.textContent; let eth_htl_tx = await fundETHHTL(offer.id,eth_scid,offer.ethamt,hash); if(eth_htl_tx == false){ await alertModal("Funding failed"); delete button_states[offer.id] action_button.disabled = false return; } await alertModal(`Funding succesful. Wait for the other party to deploy a contract with your funds to be unlocked with your key. ${pre.outerHTML}`); await refreshBids(); }else{ return; } }); } //waiting for other sc... //taker-eth-dero async function getWaitingForETHSCButton(action_button,offer,dero_deadline){ action_button.addEventListener("click", async function() { await alertModal("The maker of the offer should now deploy a ETH htl contract using the hash you provided. When that is unlocked with the key you have, then they will have the key for what you locked up. Otherwise your "+convertToDeroUnits(offer.deroamt)+" Dero will be refundable in "+niceRound(Number((dero_deadline - nowInSeconds())/3600).toFixed(1))+" hours"); }); } //dero-eth async function getWaitingForDeroSCButton(action_button,offer,eth_deadline){ //let eth_deadline = ethHTL.deadline;//save variable for button action_button.addEventListener("click", async function() { await alertModal("The maker of the offer should now deploy a Dero htl contract using the hash you provided. When that is unlocked with the key you have, then they will have the key for what you locked up. Otherwise your "+offer.ethamt+" ETH will be refundable in "+niceRound(Number((eth_deadline - nowInSeconds())/3600).toFixed(1))+" hours"); }); } //taker-eth-dero async function getWithdrawETHButton(action_button,offer){ action_button.addEventListener("click",async function() { let key_text=""; if(typeof keys[offer.id] != "undefined"){ key_text = keys[offer.id]; } let key = await promptModal((key_text == ""?"Please enter the key to u":"U")+"nlock offer with Id:" + offer.id, key_text); if (key != null) { darken_layer.classList.remove("hidden"); button_states[offer.id] = action_button.textContent; let txHashReceipt = await ethWithdrawal(key,offer.escid); if(txHashReceipt !=''){ await alertModal("TXID:"+txHashReceipt); refreshBids(); }else{ delete button_states[offer.id] await alertModal("Error Occurred, try again if your funds haven't arrived."); } }else{ return; } }); } //taker-dero-eth async function getWithdrawDeroButton(action_button,offer){ action_button.addEventListener("click",async function() { let key_text=""; if(typeof keys[offer.id] != "undefined"){ key_text = keys[offer.id]; } let key = await promptModal((key_text == ""?"Please enter the key to u":"U")+"nlock offer with Id:" + offer.id, key_text); if (key != null) { darken_layer.classList.remove("hidden"); button_states[offer.id] = action_button.textContent; let txHash = await deroWithdrawal(key,offer.dscid); if(txHash !=''){ await alertModal("TXID:"+txHash); refreshBids(); }else{ delete button_states[offer.id] await alertModal("Error Occurred, try again if your funds haven't arrived."); } }else{ return; } }); } //--(maker)---- //eth-dero async function getMakerPDInstallButton(action_button,offer,deadline,hashvalue){ var timeleft = niceRound(Number((deadline - one_and_a_half_days_in_secs - nowInSeconds())/3600).toFixed(1)); var timeleftfordeadline = niceRound(Number((deadline - one_day_in_secs - nowInSeconds())/3600).toFixed(1)); action_button.textContent = "Install ETH SC - Hours left: "+timeleft; if(timeleft <= 0){ action_button.textContent = "Expired"; } action_button.addEventListener("click",async function() { action_button.disabled = true; let result = await confirmModal("<b>IMPORTANT:</b> "+timeleft+" hours left to safely install and lock your deposit of "+offer.ethamt+"ETH. If the other party waits until the last minute to cash out, you will have "+timeleftfordeadline+" hours to claim your Dero before you risk losing the funds. They can claim a refund after their 48 hour lockup for you is up. Ensure you can be available to complete your withdrawal when it is ready!<br> Start 1 day ETH contract and fund it with "+ offer.ethamt +" for ETH address: "+ offer.accepted_eth_address +" using hash value: "+hashvalue+". Are you sure you want to continue?");// if (result) { await alertModal("Installing ETH stage 2 contract with one day lock period"); darken_layer.classList.remove("hidden"); let eth_htl_scid_tx = await installETHHTL(1,offer.accepted_eth_address); if(eth_htl_scid_tx == false){ action_button.disabled = false; return; } await alertModal("Next step, approve SC listing TX in Dero wallet."); await addSCIDToList("ETH",eth_htl_scid_tx,offer); action_button.disabled = true; action_button.textContent = "Waiting for update"; button_states[offer.id] = action_button.textContent; }else{ action_button.disabled = false; return; } }); } //dero-eth async function getMakerDPInstallButton(action_button,offer,deadline,hashvalue){ var timeleft = niceRound(Number((deadline - one_and_a_half_days_in_secs - nowInSeconds())/3600).toFixed(1)); var timeleftfordeadline = niceRound(Number((deadline - one_day_in_secs - nowInSeconds())/3600).toFixed(1)); action_button.textContent = "Install DERO SC - Hours left:"+timeleft; if(timeleft <= 0){ action_button.textContent = "Expired"; } action_button.addEventListener("click",async function() { action_button.disabled = true; let result = await confirmModal("<b>IMPORTANT:</b> "+timeleft+" hours left to safely install and lock your deposit of "+convertToDeroUnits(offer.deroamt)+"Dero. If the other party waits until the last minute to cash out, you will have "+timeleftfordeadline+" hours to claim your ETH before you risk losing the funds. They can claim a refund after their 48 hour lockup for you is up. Ensure you can be available to complete your withdrawal when it is ready!<br> Start 1 day Dero contract and fund it with "+ convertToDeroUnits(offer.deroamt) +" for Dero address: "+ offer.accepted_dero_address +" using hash value: "+hashvalue+". Are you sure you want to continue?");// if (result) { await alertModal("Installing Dero stage 2 contract with one day lock period"); darken_layer.classList.remove("hidden"); let dero_htl_scid = await installDeroHTL(1,offer.accepted_dero_address); if(dero_htl_scid == false){ action_button.disabled = false; return; } await alertModal("Next step, approve SC listing TX in Dero wallet."); await addSCIDToList("DERO",dero_htl_scid,offer); action_button.disabled = true; action_button.textContent = "Waiting for update"; button_states[offer.id] = action_button.textContent; }else{ action_button.disabled = false; return; } }); } //eth-dero async function getMakerPDFundButton(action_button,offer,deroHTL,ethHTL){ var timeleft = niceRound(Number((deroHTL.deadline - one_and_a_half_days_in_secs - nowInSeconds())/3600).toFixed(1)); var timeleftfordeadline = niceRound(Number((deroHTL.deadline - one_day_in_secs - nowInSeconds())/3600).toFixed(1)); action_button.textContent = "Fund ETH HTL Contract - Hours left: "+timeleft; if(timeleft <= 0){ action_button.textContent = "Expired"; } action_button.addEventListener("click",async function() { action_button.disabled = true; let result = await confirmModal("<b>IMPORTANT:</b> "+timeleft+" hours left to deposit "+fromETHAtomicUnits(offer.ethamt)+"ETH, leaving "+timeleftfordeadline+" hours to claim your Dero (after they cash out the ETH providing you the key) before you risk losing your funds. If they wait until the last minute to claim their funds (24 hours from now) and their 48 hour lock time is up after deploying their contract they can get their Dero refunded back too. <br> Are you sure you want to continue? <br>Save swap details for extra precaution (see guide): "+createMakerDownloadLink(offer.id,deroHTL.scid,ethHTL.scid).outerHTML ); if (result) { await alertModal("Funding ETH stage 2 contract with one day lock period"); darken_layer.classList.remove("hidden"); button_states[offer.id] = action_button.textContent; let eth_htl_tx = await fundETHHTL(offer.id,ethHTL.scid,offer.ethamt,deroHTL.hash); if(eth_htl_tx == false){ await alertModal("Funding failed"); action_button.disabled = false; delete button_states[offer.id] return; } await alertModal("Funding succesful, please wait diligently for the key to be unlocked so you can get your funds."); }else{ action_button.disabled = false; return; } }); } //dero-eth async function getMakerDPFundButton(action_button,offer,deroHTL,ethHTL){ var timeleft = niceRound(Number((ethHTL.deadline - one_and_a_half_days_in_secs - nowInSeconds())/3600).toFixed(1)); var timeleftfordeadline = niceRound(Number((ethHTL.deadline - one_day_in_secs - nowInSeconds())/3600).toFixed(1)); action_button.textContent = "Fund Dero HTL Contract - Hours left: "+timeleft; if(timeleft <= 0){ action_button.textContent = "Expired"; action_button.disabled = true; } action_button.addEventListener("click",async function() { action_button.disabled = false; let result = await confirmModal("<b>IMPORTANT:</b> "+timeleft+" hours left to deposit "+convertToDeroUnits(offer.deroamt)+"Dero, leaving "+timeleftfordeadline+" hours to claim your ETH (after they cash out the Dero providing you the key) before you risk losing your funds. If they wait until the last minute to claim their funds (24 hours from now) and their 48 hour lock time is up after deploying their contract they can get their ETH refunded back too. <br> Are you sure you want to continue? <br>Save swap details for extra precaution (see guide): "+createMakerDownloadLink(offer.id,deroHTL.scid,ethHTL.scid).outerHTML ); if (result) { await alertModal("Funding Dero stage 2 contract with one day lock period"); darken_layer.classList.remove("hidden"); button_states[offer.id] = action_button.textContent; let dero_htl_tx = await fundDeroHTL(offer.id,deroHTL.scid,offer.deroamt,ethHTL.hash) if(dero_htl_tx == false){ await alertModal("Funding failed"); action_button.disabled = false; delete button_states[offer.id] return; } await alertModal("Funding succesful, please wait diligently for the key to be unlocked so you can get your funds."); }else{ action_button.disabled = false; return; } }); } */']


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