Transaction Details
SMART CONTRACT
Transaction Hash
ab2c3d5442533c76e123199abcd082ab4a5cca1db39336cea3f2217481a643b4
Block Status
Smart Contract State
SCID Reserves
| SCID | Amount (Atomic Units) |
|---|---|
| 0000000000000000000000000000000000000000000000000000000000000000 | 0 |
String Variables
| Key | Value |
|---|---|
| C | 2f2a2053617050726f706265747461626c652e64766d20e280942066697865642d6f6464732c20686f73742d61747465737465642070726f70206d61726b6574202852313533292e0a2020204e6174697665204445524f204d56502e204f6464732061726520646563696d616c20783130303a20313835203d20312e38352e0a0a202020546865206f70657261746f722066756e647320746865207461626c652e204265747320617265206163636570746564206f6e6c79207768696c6520746865206d61726b65742069730a2020206f70656e20616e64206265666f726520646561646c696e652e204f646473206265636f6d6520696d6d757461626c6520616674657220746865206669727374206265742e0a202020536574746c656d656e74206973206120686f7374206174746573746174696f6e2e20497420756e6c6f636b732070756c6c2d636c61696d733b20697420646f6573206e6f74207363616e0a2020206f7220656e756d657261746520626574746f72732e20457665727920626574746f7220636c61696d73206f6e6365207769746820436c61696d57696e6e696e677328292e0a0a202020546865206f66662d636861696e206f6464732d7265666572656e636520736572766963652069732061647669736f7279206f6e6c792e2049747320766967207265706f72742069730a2020206e6f742074727573746564206279207468697320636f6e747261637420616e642063616e6e6f7420736574746c652061206d61726b65742e0a0a2020204c6966656379636c653a0a2020202020496e697469616c697a6528636f6c6c6563746f722c20666c6f6f722c2072616b655f627073290a202020202046756e6442616e6b28290a2020202020506f73744d61726b6574286d617463682c20646561646c696e65290a20202020205365744f64647328686f73742c206d61726b65742c206f646473312c206f64647332290a202020202054616b654265742877616c6c65742c206d61726b65742c20736964652c20616d6f756e74290a2020202020536574746c6528686f73742c20736964655f776f6e290a2020202020436c61696d57696e6e696e677328290a2020202020576974686472617750726f66697428616d6f756e74290a2a2f0a0a46756e6374696f6e20496e697469616c697a6528636f6c6c6563746f7220537472696e672c20666c6f6f722055696e7436342c2072616b655f6270732055696e743634292055696e7436340a3520202076657273696f6e2822312e302e3022290a313020204946205354524c454e28414444524553535f52415728636f6c6c6563746f722929203d3d203333205448454e20474f544f2033300a3230202052455455524e20310a3330202049462072616b655f627073203c3d2031303030205448454e20474f544f2035300a3430202052455455524e20310a3530202053544f524528226f776e6572222c205349474e45522829290a3630202053544f52452822636f6c6c6563746f72222c20414444524553535f52415728636f6c6c6563746f7229290a3730202053544f52452822666c6f6f72222c20666c6f6f72290a3830202053544f5245282272616b655f627073222c2072616b655f627073290a3930202053544f52452822706f6f6c222c2030290a3130302053544f524528226d61726b6574222c2030290a3131302053544f524528226d61726b65745f6f70656e222c2030290a3132302053544f52452822736574746c6564222c2030290a3133302053544f5245282277696e6e6572222c2032290a3134302053544f52452822646561646c696e65222c2030290a3135302053544f524528226f64647330222c2030290a3136302053544f524528226f64647331222c2030290a3137302053544f524528227369646530222c2030290a3138302053544f524528227369646531222c2030290a3138352053544f524528226c696162696c697479222c2030290a3139302053544f524528226d61726b6574222c2030290a3139352053544f52452822626574735f73746172746564222c2030290a3231302053544f52452822636f6c6c6563746564222c2030290a3232302052455455524e20300a456e642046756e6374696f6e0a0a2f2a204f70657261746f722062616e6b726f6c6c2e204e6174697665204445524f206f6e6c7920696e2074686973204d56502e202a2f0a46756e6374696f6e2046756e6442616e6b28292055696e7436340a3520202076657273696f6e2822312e302e3022290a3130202064696d20762061732055696e7436340a323020204946204c4f414428226f776e65722229203d3d205349474e45522829205448454e20474f544f2034300a3330202052455455524e20310a343020204946204c4f414428226d61726b65745f6f70656e2229203d3d2030205448454e20474f544f2036300a3530202052455455524e20310a363020204c45542076203d204445524f56414c554528290a3730202049462076203e2030205448454e20474f544f2039300a3830202052455455524e20310a393020204946204c4f41442822706f6f6c2229203c3d203138343436373434303733373039353531363135202d2076205448454e20474f544f203131300a3130302052455455524e20310a3131302053544f52452822706f6f6c222c204c4f41442822706f6f6c2229202b2076290a3132302052455455524e20300a456e642046756e6374696f6e0a0a2f2a204f70656e2061206e6577206d61726b65742e204e6f207072696f722066756e6473206f7220756e736574746c6564206c696162696c6974696573206d61792072656d61696e2e202a2f0a46756e6374696f6e20506f73744d61726b6574286d6174636820537472696e672c20646561646c696e652055696e743634292055696e7436340a3520202076657273696f6e2822312e302e3022290a313020204946204c4f414428226f776e65722229203d3d205349474e45522829205448454e20474f544f2033300a3230202052455455524e20310a333020204946204c4f414428226d61726b65745f6f70656e2229203d3d2030205448454e20474f544f2035300a3430202052455455524e20310a353020204946204c4f414428226c696162696c6974792229203d3d2030205448454e20474f544f2037300a3630202052455455524e20310a373020204946204c4f41442822706f6f6c2229203e3d204c4f41442822666c6f6f722229205448454e20474f544f2039300a3830202052455455524e20310a39302020494620646561646c696e65203e20424c4f434b5f4845494748542829205448454e20474f544f203131300a3130302052455455524e20310a313130204946205354524c454e286d6174636829203e2030205448454e20474f544f203133300a3132302052455455524e20310a3133302053544f524528226d61726b6574222c204c4f414428226d61726b65742229202b2031290a3134302053544f524528226d61746368222c206d61746368290a3135302053544f52452822646561646c696e65222c20646561646c696e65290a3136302053544f524528226d61726b65745f6f70656e222c2031290a3137302053544f52452822736574746c6564222c2030290a3138302053544f5245282277696e6e6572222c2032290a3139302053544f524528226f64647330222c2030290a3230302053544f524528226f64647331222c2030290a3232302053544f524528227369646530222c2030290a3233302053544f524528227369646531222c2030290a3234302053544f52452822626574735f73746172746564222c2030290a3235302052455455524e20300a456e642046756e6374696f6e0a0a2f2a20486f7374207075626c697368657320626f746820646563696d616c206f6464732e20686f7374206d75737420626520746865206f70657261746f72207369676e657220616e64207468650a2020206d61726b6574206e756d626572206d757374206d61746368207468652063757272656e746c79206f70656e206d61726b65742e204f6464732061726520312e30302e2e31302e30302e202a2f0a46756e6374696f6e205365744f64647328686f737420537472696e672c206d61726b65742055696e7436342c206f646473312055696e7436342c206f646473322055696e743634292055696e7436340a3520202076657273696f6e2822312e302e3022290a313020204946204c4f414428226f776e65722229203d3d205349474e45522829205448454e20474f544f2033300a3230202052455455524e20310a33302020494620414444524553535f52415728686f737429203d3d205349474e45522829205448454e20474f544f2035300a3430202052455455524e20310a353020204946206d61726b6574203d3d204c4f414428226d61726b65742229205448454e20474f544f2037300a3630202052455455524e20310a373020204946204c4f414428226d61726b65745f6f70656e2229203d3d2031205448454e20474f544f2039300a3830202052455455524e20310a393020204946204c4f41442822736574746c65642229203d3d2030205448454e20474f544f203131300a3130302052455455524e20310a313130204946206f64647331203e3d20313030205448454e20474f544f203133300a3132302052455455524e20310a313330204946206f64647331203c3d2031303030205448454e20474f544f203135300a3134302052455455524e20310a313530204946206f64647332203e3d20313030205448454e20474f544f203137300a3136302052455455524e20310a313730204946206f64647332203c3d2031303030205448454e20474f544f203139300a3138302052455455524e20310a313930204946204c4f41442822626574735f737461727465642229203d3d2030205448454e20474f544f203231300a3230302052455455524e20310a3231302053544f524528226f64647330222c206f64647331290a3232302053544f524528226f64647331222c206f64647332290a3233302052455455524e20300a456e642046756e6374696f6e0a0a2f2a2041636365707420616e206578616374206e61746976652d4445524f207374616b652e2077616c6c657420697320636865636b656420616761696e7374205349474e455220736f20610a20202072656c617965722063616e6e6f74207265646972656374206120626574277320636c61696d2e20412075736572206d61792061646420746f206569746865722073696465206265666f72650a202020736574746c656d656e743b206f6e6520636c61696d206973206d616465207065722073696465206b65792e202a2f0a46756e6374696f6e2054616b654265742877616c6c657420537472696e672c206d61726b65742055696e7436342c20736964652055696e7436342c20616d6f756e742055696e743634292055696e7436340a3520202076657273696f6e2822312e302e3022290a3130202064696d20762c6f6464732c67726f73732c6f6c642061732055696e7436340a32302020494620414444524553535f5241572877616c6c657429203d3d205349474e45522829205448454e20474f544f2034300a3330202052455455524e20310a343020204946206d61726b6574203d3d204c4f414428226d61726b65742229205448454e20474f544f2036300a3530202052455455524e20310a363020204946204c4f414428226d61726b65745f6f70656e2229203d3d2031205448454e20474f544f2038300a3730202052455455524e20310a38302020494620424c4f434b5f4845494748542829203c204c4f41442822646561646c696e652229205448454e20474f544f203130300a3930202052455455524e20310a3130302049462073696465203c3d2031205448454e20474f544f203132300a3131302052455455524e20310a31323020494620616d6f756e74203e2030205448454e20474f544f203134300a3133302052455455524e20310a313430204946204c4f414428226f646473302229203e3d20313030205448454e20474f544f203136300a3135302052455455524e20310a313630204946204c4f414428226f646473312229203e3d20313030205448454e20474f544f203138300a3137302052455455524e20310a3138302049462073696465203d3d2030205448454e20474f544f203231300a313930204c4554206f646473203d204c4f414428226f6464733122290a32303020474f544f203232300a323130204c4554206f646473203d204c4f414428226f6464733022290a32323020494620616d6f756e74203c3d203138343436373434303733373039353531363135202f206f646473205448454e20474f544f203234300a3233302052455455524e20310a323430204c45542067726f7373203d20616d6f756e74202a206f646473202f203130300a323530204946204c4f41442822706f6f6c2229203e3d2067726f7373205448454e20474f544f203237300a3236302052455455524e20310a323730204c45542076203d204445524f56414c554528290a3238302049462076203d3d20616d6f756e74205448454e20474f544f203239350a3239302052455455524e20310a323935204946204c4f41442822706f6f6c2229203c3d203138343436373434303733373039353531363135202d20616d6f756e74205448454e20474f544f203239370a3239362052455455524e20310a323937204c45542076203d204c4f41442822706f6f6c2229202b20616d6f756e740a3239382049462067726f7373203c3d2076205448454e20474f544f203330300a3239392052455455524e20310a333030204946204c4f414428226c696162696c6974792229203c3d2076202d2067726f7373205448454e20474f544f203330350a3330312052455455524e20310a3330352049462073696465203d3d2030205448454e20474f544f203430300a33313020494620455849535453282262315f222b4c4f414428226d61726b657422292b225f222b5349474e4552282929205448454e20474f544f203333300a3332302053544f5245282262315f222b4c4f414428226d61726b657422292b225f222b5349474e455228292c2030290a333330204c4554206f6c64203d204c4f4144282262315f222b4c4f414428226d61726b657422292b225f222b5349474e45522829290a333430204946206f6c64203c3d203138343436373434303733373039353531363135202d20616d6f756e74205448454e20474f544f203336300a3335302052455455524e20310a3336302053544f5245282262315f222b4c4f414428226d61726b657422292b225f222b5349474e455228292c206f6c64202b20616d6f756e74290a333730204946204c4f4144282273696465312229203c3d203138343436373434303733373039353531363135202d20616d6f756e74205448454e20474f544f203339300a3338302052455455524e20310a3339302053544f524528227369646531222c204c4f4144282273696465312229202b20616d6f756e74290a33393520474f544f203537300a34303020494620455849535453282262305f222b4c4f414428226d61726b657422292b225f222b5349474e4552282929205448454e20474f544f203432300a3431302053544f5245282262305f222b4c4f414428226d61726b657422292b225f222b5349474e455228292c2030290a343230204c4554206f6c64203d204c4f4144282262305f222b4c4f414428226d61726b657422292b225f222b5349474e45522829290a343330204946206f6c64203c3d203138343436373434303733373039353531363135202d20616d6f756e74205448454e20474f544f203435300a3434302052455455524e20310a3435302053544f5245282262305f222b4c4f414428226d61726b657422292b225f222b5349474e455228292c206f6c64202b20616d6f756e74290a343630204946204c4f4144282273696465302229203c3d203138343436373434303733373039353531363135202d20616d6f756e74205448454e20474f544f203438300a3437302052455455524e20310a3438302053544f524528227369646530222c204c4f4144282273696465302229202b20616d6f756e74290a353730204946204c4f414428226c696162696c6974792229203c3d203138343436373434303733373039353531363135202d2067726f7373205448454e20474f544f203539300a3538302052455455524e20310a3539302053544f524528226c696162696c697479222c204c4f414428226c696162696c6974792229202b2067726f7373290a3630302053544f52452822706f6f6c222c204c4f41442822706f6f6c2229202b20616d6f756e74290a3631302053544f52452822626574735f73746172746564222c2031290a3632302052455455524e20300a456e642046756e6374696f6e0a0a2f2a20486f7374206174746573746174696f6e2e20497420636c6f73657320746865206d61726b65743b20656163682077696e6e6572206c617465722070756c6c73207468656972206f776e0a20202067726f7373207061796f7574206c6573732072616b652e2054686520686f73742063616e6e6f7420736574746c65206265666f72652074686520646561646c696e652e202a2f0a46756e6374696f6e20536574746c6528686f737420537472696e672c20736964655f776f6e2055696e743634292055696e7436340a3520202076657273696f6e2822312e302e3022290a313020204946204c4f414428226f776e65722229203d3d205349474e45522829205448454e20474f544f2033300a3230202052455455524e20310a33302020494620414444524553535f52415728686f737429203d3d205349474e45522829205448454e20474f544f2035300a3430202052455455524e20310a353020204946204c4f414428226d61726b65745f6f70656e2229203d3d2031205448454e20474f544f2037300a3630202052455455524e20310a37302020494620424c4f434b5f4845494748542829203e3d204c4f41442822646561646c696e652229205448454e20474f544f2039300a3830202052455455524e20310a393020204946204c4f41442822736574746c65642229203d3d2030205448454e20474f544f203131300a3130302052455455524e20310a31313020494620736964655f776f6e203c3d2031205448454e20474f544f203133300a3132302052455455524e20310a313330204946204c4f414428226f646473302229203e3d20313030205448454e20474f544f203135300a3134302052455455524e20310a313530204946204c4f414428226f646473312229203e3d20313030205448454e20474f544f203137300a3136302052455455524e20310a3137302053544f5245282277696e6e6572222c20736964655f776f6e290a3138302053544f52452822736574746c6564222c2031290a3139302053544f524528226d61726b65745f6f70656e222c2030290a3230302052455455524e20300a456e642046756e6374696f6e0a0a2f2a2057696e6e65722070756c6c2d636c61696d2e205468652073746f7265642062657420697320736964652d73706563696669632c20736f206120626574746f722063616e20686f6c640a2020206f6e6520636c61696d206f6e206561636820736964652e2047726f7373206973207374616b652a6f6464732f3130303b2072616b652069732067726f73732a6270732f31303030302e202a2f0a46756e6374696f6e20436c61696d57696e6e696e677328292055696e7436340a3520202076657273696f6e2822312e302e3022290a3130202064696d207374616b652c6f6464732c67726f73732c72616b652c6e65742061732055696e7436340a323020204946204c4f41442822736574746c65642229203d3d2031205448454e20474f544f2034300a3330202052455455524e20310a343020204946204c4f4144282277696e6e65722229203d3d2030205448454e20474f544f2037300a353020494620455849535453282262315f222b4c4f414428226d61726b657422292b225f222b5349474e4552282929205448454e20474f544f2036300a3535202052455455524e20310a3630204946204558495354532822636c61696d6564315f222b4c4f414428226d61726b657422292b225f222b5349474e4552282929205448454e20474f544f2035350a3635204c4554207374616b65203d204c4f4144282262315f222b4c4f414428226d61726b657422292b225f222b5349474e45522829290a3636204c4554206f646473203d204c4f414428226f6464733122290a363720474f544f203130300a373020494620455849535453282262305f222b4c4f414428226d61726b657422292b225f222b5349474e4552282929205448454e20474f544f2038300a37352052455455524e20310a3830204946204558495354532822636c61696d6564305f222b4c4f414428226d61726b657422292b225f222b5349474e4552282929205448454e20474f544f2037350a3835204c4554207374616b65203d204c4f4144282262305f222b4c4f414428226d61726b657422292b225f222b5349474e45522829290a3836204c4554206f646473203d204c4f414428226f6464733022290a313030204946207374616b65203e2030205448454e20474f544f203132300a3131302052455455524e20310a313230204946207374616b65203c3d203138343436373434303733373039353531363135202f206f646473205448454e20474f544f203134300a3133302052455455524e20310a313430204c45542067726f7373203d207374616b65202a206f646473202f203130300a313530204946204c4f41442822706f6f6c2229203e3d2067726f7373205448454e20474f544f203137300a3136302052455455524e20310a313730204c45542072616b65203d2067726f7373202a204c4f4144282272616b655f6270732229202f2031303030300a3138302049462072616b65203c3d2067726f7373205448454e20474f544f203230300a3139302052455455524e20310a323030204c4554206e6574203d2067726f7373202d2072616b650a323130204946204c4f414428226c696162696c6974792229203e3d2067726f7373205448454e20474f544f203233300a3232302052455455524e20310a3233302053544f524528226c696162696c697479222c204c4f414428226c696162696c6974792229202d2067726f7373290a3234302053544f52452822706f6f6c222c204c4f41442822706f6f6c2229202d2067726f7373290a323530204946204c4f4144282277696e6e65722229203d3d2030205448454e20474f544f203238300a3236302053544f52452822636c61696d6564315f222b4c4f414428226d61726b657422292b225f222b5349474e455228292c2031290a32373020474f544f203330300a3238302053544f52452822636c61696d6564305f222b4c4f414428226d61726b657422292b225f222b5349474e455228292c2031290a32393020474f544f203330300a3330302053544f52452822636f6c6c6563746564222c204c4f41442822636f6c6c65637465642229202b2072616b65290a3331302053454e445f4445524f5f544f5f41444452455353284c4f41442822636f6c6c6563746f7222292c2072616b65290a3332302053454e445f4445524f5f544f5f41444452455353285349474e455228292c206e6574290a3333302052455455524e20300a456e642046756e6374696f6e0a0a2f2a204f776e65722063616e207769746864726177206f6e6c792061667465722065766572792077696e6e696e6720636c61696d20697320636f6d706c6574652e2054686520666c6f6f722069730a20202072657461696e65642e204120736574746c6564206d61726b65742077697468207a65726f206c696162696c69747920697320746865206f6e6c792077697468647261772077696e646f772e202a2f0a46756e6374696f6e20576974686472617750726f66697428616d6f756e742055696e743634292055696e7436340a3520202076657273696f6e2822312e302e3022290a313020204946204c4f414428226f776e65722229203d3d205349474e45522829205448454e20474f544f2033300a3230202052455455524e20310a333020204946204c4f414428226d61726b65745f6f70656e2229203d3d2030205448454e20474f544f2035300a3430202052455455524e20310a353020204946204c4f414428226c696162696c6974792229203d3d2030205448454e20474f544f2037300a3630202052455455524e20310a373020204946204c4f41442822706f6f6c2229203e3d204c4f41442822666c6f6f722229205448454e20474f544f2039300a3830202052455455524e20310a39302020494620616d6f756e74203e2030205448454e20474f544f203131300a3130302052455455524e20310a313130204946204c4f41442822706f6f6c2229202d204c4f41442822666c6f6f722229203e3d20616d6f756e74205448454e20474f544f203133300a3132302052455455524e20310a3133302053544f52452822706f6f6c222c204c4f41442822706f6f6c2229202d20616d6f756e74290a3134302053454e445f4445524f5f544f5f41444452455353285349474e455228292c20616d6f756e74290a3135302052455455524e20300a456e642046756e6374696f6e0a |
| b0_1_.���B���8/Ő2'�[(���;��4юa2�/;� | 1000 |
| bets_started | 1 |
| claimed0_1_.���B���8/Ő2'�[(���;��4юa2�/;� | 1 |
| collected | 1 |
| collector | 2e91b5e142c6edcf382fc59032279d5b2882821ac03b83fd34d18e6132a32f3b00 |
| deadline | 7.60893e+06 |
| floor | 0 |
| liability | 0 |
| market | 1 |
| market_open | 0 |
| match | 6c6976652d70726f702d736d6f6b65 |
| odds0 | 185 |
| odds1 | 205 |
| owner | 2e91b5e142c6edcf382fc59032279d5b2882821ac03b83fd34d18e6132a32f3b00 |
| pool | 0 |
| rake_bps | 10 |
| settled | 1 |
| side0 | 1000 |
| side1 | 0 |
| winner | 0 |
Transaction Information
Root Hash
Built Height
7608824
Block
Timestamp
1789233114811
Timestamp (UTC)
2026-09-12 17:11:54
Block Age
42m 20s ago
Fee
0.14247
TX Size
10.866 kB
Version
1
Confirmations
135
Signature Type
DERO_HOMOMORPHIC
DERO Asset
2
Ring Size
0.14247
Fees
0.00000
Deposited
Sender
dero1qyhfrd0pgtrwmnec9lzeqv38n4dj3q5zrtqrhqlaxngcucfj5vhnkqq6pn8fq
Ring Members (2)
Smart Contract Details
SC Balance
0.00000 DERO
Smart Contract Code
Smart Contract Arguments
| Name | Type | Value |
|---|---|---|
| SC_ACTION | uint64 | 1 |
| SC_CODE | string | "/* SapPropbettable.dvm — fixed-odds, host-attested prop market (R153). Native DERO MVP. Odds are decimal x100: 185 = 1.85. The operator funds the table. Bets are accepted only while the market is open and before deadline. Odds become immutable after the first bet. Settlement is a host attestation. It unlocks pull-claims; it does not scan or enumerate bettors. Every bettor claims once with ClaimWinnings(). The off-chain odds-reference service is advisory only. Its vig report is not trusted by this contract and cannot settle a market. Lifecycle: Initialize(collector, floor, rake_bps) FundBank() PostMarket(match, deadline) SetOdds(host, market, odds1, odds2) TakeBet(wallet, market, side, amount) Settle(host, side_won) ClaimWinnings() WithdrawProfit(amount) */ Function Initialize(collector String, floor Uint64, rake_bps Uint64) Uint64 5 version("1.0.0") 10 IF STRLEN(ADDRESS_RAW(collector)) == 33 THEN GOTO 30 20 RETURN 1 30 IF rake_bps <= 1000 THEN GOTO 50 40 RETURN 1 50 STORE("owner", SIGNER()) 60 STORE("collector", ADDRESS_RAW(collector)) 70 STORE("floor", floor) 80 STORE("rake_bps", rake_bps) 90 STORE("pool", 0) 100 STORE("market", 0) 110 STORE("market_open", 0) 120 STORE("settled", 0) 130 STORE("winner", 2) 140 STORE("deadline", 0) 150 STORE("odds0", 0) 160 STORE("odds1", 0) 170 STORE("side0", 0) 180 STORE("side1", 0) 185 STORE("liability", 0) 190 STORE("market", 0) 195 STORE("bets_started", 0) 210 STORE("collected", 0) 220 RETURN 0 End Function /* Operator bankroll. Native DERO only in this MVP. */ Function FundBank() Uint64 5 version("1.0.0") 10 dim v as Uint64 20 IF LOAD("owner") == SIGNER() THEN GOTO 40 30 RETURN 1 40 IF LOAD("market_open") == 0 THEN GOTO 60 50 RETURN 1 60 LET v = DEROVALUE() 70 IF v > 0 THEN GOTO 90 80 RETURN 1 90 IF LOAD("pool") <= 18446744073709551615 - v THEN GOTO 110 100 RETURN 1 110 STORE("pool", LOAD("pool") + v) 120 RETURN 0 End Function /* Open a new market. No prior funds or unsettled liabilities may remain. */ Function PostMarket(match String, deadline Uint64) Uint64 5 version("1.0.0") 10 IF LOAD("owner") == SIGNER() THEN GOTO 30 20 RETURN 1 30 IF LOAD("market_open") == 0 THEN GOTO 50 40 RETURN 1 50 IF LOAD("liability") == 0 THEN GOTO 70 60 RETURN 1 70 IF LOAD("pool") >= LOAD("floor") THEN GOTO 90 80 RETURN 1 90 IF deadline > BLOCK_HEIGHT() THEN GOTO 110 100 RETURN 1 110 IF STRLEN(match) > 0 THEN GOTO 130 120 RETURN 1 130 STORE("market", LOAD("market") + 1) 140 STORE("match", match) 150 STORE("deadline", deadline) 160 STORE("market_open", 1) 170 STORE("settled", 0) 180 STORE("winner", 2) 190 STORE("odds0", 0) 200 STORE("odds1", 0) 220 STORE("side0", 0) 230 STORE("side1", 0) 240 STORE("bets_started", 0) 250 RETURN 0 End Function /* Host publishes both decimal odds. host must be the operator signer and the market number must match the currently open market. Odds are 1.00..10.00. */ Function SetOdds(host String, market Uint64, odds1 Uint64, odds2 Uint64) Uint64 5 version("1.0.0") 10 IF LOAD("owner") == SIGNER() THEN GOTO 30 20 RETURN 1 30 IF ADDRESS_RAW(host) == SIGNER() THEN GOTO 50 40 RETURN 1 50 IF market == LOAD("market") THEN GOTO 70 60 RETURN 1 70 IF LOAD("market_open") == 1 THEN GOTO 90 80 RETURN 1 90 IF LOAD("settled") == 0 THEN GOTO 110 100 RETURN 1 110 IF odds1 >= 100 THEN GOTO 130 120 RETURN 1 130 IF odds1 <= 1000 THEN GOTO 150 140 RETURN 1 150 IF odds2 >= 100 THEN GOTO 170 160 RETURN 1 170 IF odds2 <= 1000 THEN GOTO 190 180 RETURN 1 190 IF LOAD("bets_started") == 0 THEN GOTO 210 200 RETURN 1 210 STORE("odds0", odds1) 220 STORE("odds1", odds2) 230 RETURN 0 End Function /* Accept an exact native-DERO stake. wallet is checked against SIGNER so a relayer cannot redirect a bet's claim. A user may add to either side before settlement; one claim is made per side key. */ Function TakeBet(wallet String, market Uint64, side Uint64, amount Uint64) Uint64 5 version("1.0.0") 10 dim v,odds,gross,old as Uint64 20 IF ADDRESS_RAW(wallet) == SIGNER() THEN GOTO 40 30 RETURN 1 40 IF market == LOAD("market") THEN GOTO 60 50 RETURN 1 60 IF LOAD("market_open") == 1 THEN GOTO 80 70 RETURN 1 80 IF BLOCK_HEIGHT() < LOAD("deadline") THEN GOTO 100 90 RETURN 1 100 IF side <= 1 THEN GOTO 120 110 RETURN 1 120 IF amount > 0 THEN GOTO 140 130 RETURN 1 140 IF LOAD("odds0") >= 100 THEN GOTO 160 150 RETURN 1 160 IF LOAD("odds1") >= 100 THEN GOTO 180 170 RETURN 1 180 IF side == 0 THEN GOTO 210 190 LET odds = LOAD("odds1") 200 GOTO 220 210 LET odds = LOAD("odds0") 220 IF amount <= 18446744073709551615 / odds THEN GOTO 240 230 RETURN 1 240 LET gross = amount * odds / 100 250 IF LOAD("pool") >= gross THEN GOTO 270 260 RETURN 1 270 LET v = DEROVALUE() 280 IF v == amount THEN GOTO 295 290 RETURN 1 295 IF LOAD("pool") <= 18446744073709551615 - amount THEN GOTO 297 296 RETURN 1 297 LET v = LOAD("pool") + amount 298 IF gross <= v THEN GOTO 300 299 RETURN 1 300 IF LOAD("liability") <= v - gross THEN GOTO 305 301 RETURN 1 305 IF side == 0 THEN GOTO 400 310 IF EXISTS("b1_"+LOAD("market")+"_"+SIGNER()) THEN GOTO 330 320 STORE("b1_"+LOAD("market")+"_"+SIGNER(), 0) 330 LET old = LOAD("b1_"+LOAD("market")+"_"+SIGNER()) 340 IF old <= 18446744073709551615 - amount THEN GOTO 360 350 RETURN 1 360 STORE("b1_"+LOAD("market")+"_"+SIGNER(), old + amount) 370 IF LOAD("side1") <= 18446744073709551615 - amount THEN GOTO 390 380 RETURN 1 390 STORE("side1", LOAD("side1") + amount) 395 GOTO 570 400 IF EXISTS("b0_"+LOAD("market")+"_"+SIGNER()) THEN GOTO 420 410 STORE("b0_"+LOAD("market")+"_"+SIGNER(), 0) 420 LET old = LOAD("b0_"+LOAD("market")+"_"+SIGNER()) 430 IF old <= 18446744073709551615 - amount THEN GOTO 450 440 RETURN 1 450 STORE("b0_"+LOAD("market")+"_"+SIGNER(), old + amount) 460 IF LOAD("side0") <= 18446744073709551615 - amount THEN GOTO 480 470 RETURN 1 480 STORE("side0", LOAD("side0") + amount) 570 IF LOAD("liability") <= 18446744073709551615 - gross THEN GOTO 590 580 RETURN 1 590 STORE("liability", LOAD("liability") + gross) 600 STORE("pool", LOAD("pool") + amount) 610 STORE("bets_started", 1) 620 RETURN 0 End Function /* Host attestation. It closes the market; each winner later pulls their own gross payout less rake. The host cannot settle before the deadline. */ Function Settle(host String, side_won Uint64) Uint64 5 version("1.0.0") 10 IF LOAD("owner") == SIGNER() THEN GOTO 30 20 RETURN 1 30 IF ADDRESS_RAW(host) == SIGNER() THEN GOTO 50 40 RETURN 1 50 IF LOAD("market_open") == 1 THEN GOTO 70 60 RETURN 1 70 IF BLOCK_HEIGHT() >= LOAD("deadline") THEN GOTO 90 80 RETURN 1 90 IF LOAD("settled") == 0 THEN GOTO 110 100 RETURN 1 110 IF side_won <= 1 THEN GOTO 130 120 RETURN 1 130 IF LOAD("odds0") >= 100 THEN GOTO 150 140 RETURN 1 150 IF LOAD("odds1") >= 100 THEN GOTO 170 160 RETURN 1 170 STORE("winner", side_won) 180 STORE("settled", 1) 190 STORE("market_open", 0) 200 RETURN 0 End Function /* Winner pull-claim. The stored bet is side-specific, so a bettor can hold one claim on each side. Gross is stake*odds/100; rake is gross*bps/10000. */ Function ClaimWinnings() Uint64 5 version("1.0.0") 10 dim stake,odds,gross,rake,net as Uint64 20 IF LOAD("settled") == 1 THEN GOTO 40 30 RETURN 1 40 IF LOAD("winner") == 0 THEN GOTO 70 50 IF EXISTS("b1_"+LOAD("market")+"_"+SIGNER()) THEN GOTO 60 55 RETURN 1 60 IF EXISTS("claimed1_"+LOAD("market")+"_"+SIGNER()) THEN GOTO 55 65 LET stake = LOAD("b1_"+LOAD("market")+"_"+SIGNER()) 66 LET odds = LOAD("odds1") 67 GOTO 100 70 IF EXISTS("b0_"+LOAD("market")+"_"+SIGNER()) THEN GOTO 80 75 RETURN 1 80 IF EXISTS("claimed0_"+LOAD("market")+"_"+SIGNER()) THEN GOTO 75 85 LET stake = LOAD("b0_"+LOAD("market")+"_"+SIGNER()) 86 LET odds = LOAD("odds0") 100 IF stake > 0 THEN GOTO 120 110 RETURN 1 120 IF stake <= 18446744073709551615 / odds THEN GOTO 140 130 RETURN 1 140 LET gross = stake * odds / 100 150 IF LOAD("pool") >= gross THEN GOTO 170 160 RETURN 1 170 LET rake = gross * LOAD("rake_bps") / 10000 180 IF rake <= gross THEN GOTO 200 190 RETURN 1 200 LET net = gross - rake 210 IF LOAD("liability") >= gross THEN GOTO 230 220 RETURN 1 230 STORE("liability", LOAD("liability") - gross) 240 STORE("pool", LOAD("pool") - gross) 250 IF LOAD("winner") == 0 THEN GOTO 280 260 STORE("claimed1_"+LOAD("market")+"_"+SIGNER(), 1) 270 GOTO 300 280 STORE("claimed0_"+LOAD("market")+"_"+SIGNER(), 1) 290 GOTO 300 300 STORE("collected", LOAD("collected") + rake) 310 SEND_DERO_TO_ADDRESS(LOAD("collector"), rake) 320 SEND_DERO_TO_ADDRESS(SIGNER(), net) 330 RETURN 0 End Function /* Owner can withdraw only after every winning claim is complete. The floor is retained. A settled market with zero liability is the only withdraw window. */ Function WithdrawProfit(amount Uint64) Uint64 5 version("1.0.0") 10 IF LOAD("owner") == SIGNER() THEN GOTO 30 20 RETURN 1 30 IF LOAD("market_open") == 0 THEN GOTO 50 40 RETURN 1 50 IF LOAD("liability") == 0 THEN GOTO 70 60 RETURN 1 70 IF LOAD("pool") >= LOAD("floor") THEN GOTO 90 80 RETURN 1 90 IF amount > 0 THEN GOTO 110 100 RETURN 1 110 IF LOAD("pool") - LOAD("floor") >= amount THEN GOTO 130 120 RETURN 1 130 STORE("pool", LOAD("pool") - amount) 140 SEND_DERO_TO_ADDRESS(SIGNER(), amount) 150 RETURN 0 End Function " |
| collector | string | "dero1qyhfrd0pgtrwmnec9lzeqv38n4dj3q5zrtqrhqlaxngcucfj5vhnkqq6pn8fq" |
| entrypoint | string | "Initialize" |
| floor | uint64 | 0 |
| rake_bps | uint64 | 10 |
Prove Transaction
Prove that you sent DERO in this transaction. Obtain proof using the dero-wallet-cli command or from your wallet statement.
Note: The proof is sent to the server for verification calculations.
Payload proofs are user-provided display proofs; for the strongest verification, confirm with the receiving wallet.