Transaction Details
SMART CONTRACT
Transaction Hash
f4771e1c38dfeb868d8e4ddb7ea77c90b0cc328f78d082fb305500e7d8cbe78b
Block Status
Smart Contract State
SCID Reserves
| SCID | Amount (Atomic Units) |
|---|---|
| 0000000000000000000000000000000000000000000000000000000000000000 | 0 |
String Variables
| Key | Value |
|---|---|
| C | 46756e6374696f6e20496e697469616c697a655072697661746528292055696e7436340a313020494620696e69742829203d3d2030205448454e20474f544f2033300a32302052455455524e20310a33302053544f524528226e616d65486472222c2022696e6465782e68746d6c22290a33312053544f524528226465736372486472222c20227469635f7461635f746f6520696e6465782e68746d6c22290a33322053544f5245282269636f6e55524c486472222c202222290a33332053544f524528226455524c222c20227469635f7461635f746f652e646f6322290a33342053544f52452822646f6354797065222c202254454c412d48544d4c2d3122290a33352053544f52452822737562446972222c202222290a33362053544f5245282266696c65436865636b43222c20223265303564636434393932363135636633623935366135663061666665323065663561323538323564613136626536616433636239393134636538343664386622290a33372053544f5245282266696c65436865636b53222c202233356262313930333664666630323533633962666464623233336435613137646331396637343232626631323835316261353363653366643165386133396322290a3130302052455455524e20300a456e642046756e6374696f6e0a0a46756e6374696f6e20696e697428292055696e7436340a31302049462045584953545328226f776e65722229203d3d2030205448454e20474f544f2033300a32302052455455524e20310a33302053544f524528226f776e6572222c20616464726573732829290a35302053544f52452822646f6356657273696f6e222c2022312e302e3022290a36302053544f5245282268617368222c204845582854584944282929290a37302053544f524528226c696b6573222c2030290a38302053544f524528226469736c696b6573222c2030290a3130302052455455524e20300a456e642046756e6374696f6e0a0a46756e6374696f6e2061646472657373282920537472696e670a31302044494d207320617320537472696e670a3230204c45542073203d205349474e455228290a33302049462049535f414444524553535f56414c4944287329205448454e20474f544f2035300a34302052455455524e2022616e6f6e220a35302052455455524e20414444524553535f535452494e472873290a456e642046756e6374696f6e0a0a46756e6374696f6e205261746528722055696e743634292055696e7436340a31302044494d206164647220617320537472696e670a3135204c45542061646472203d206164647265737328290a31362049462072203c2031303020262620455849535453286164647229203d3d2030202626206164647220213d2022616e6f6e22205448454e20474f544f2033300a32302052455455524e20310a33302053544f524528616464722c2022222b722b225f222b424c4f434b5f4845494748542829290a34302049462072203c203530205448454e20474f544f2037300a35302053544f524528226c696b6573222c204c4f414428226c696b657322292b31290a36302052455455524e20300a37302053544f524528226469736c696b6573222c204c4f414428226469736c696b657322292b31290a3130302052455455524e20300a456e642046756e6374696f6e0a0a2f2a0a3c21444f43545950452068746d6c3e0a3c68746d6c206c616e673d22656e223e0a0a3c686561643e0a202020203c6d65746120636861727365743d225554462d38223e0a202020203c6d657461206e616d653d2276696577706f72742220636f6e74656e743d2277696474683d6465766963652d77696474682c20696e697469616c2d7363616c653d312e30223e0a202020203c6c696e6b2072656c3d2269636f6e2220687265663d222f7469635f7461635f746f652e7376672220747970653d22696d6167652f737667223e0a202020203c7469746c653e5469632d5461632d546f653c2f7469746c653e0a202020203c7374796c653e0a2020202020202020626f6479207b0a202020202020202020202020746578742d616c69676e3a2063656e7465723b0a202020202020202020202020666f6e742d66616d696c793a20417269616c2c2073616e732d73657269663b0a20202020202020207d0a0a20202020202020202e626f617264207b0a202020202020202020202020646973706c61793a20677269643b0a202020202020202020202020677269642d74656d706c6174652d636f6c756d6e733a2072657065617428332c203130307078293b0a202020202020202020202020677269642d6761703a203570783b0a20202020202020202020202077696474683a2033313070783b0a2020202020202020202020206d617267696e3a2032307078206175746f3b0a20202020202020207d0a0a20202020202020202e63656c6c207b0a20202020202020202020202077696474683a2031303070783b0a2020202020202020202020206865696768743a2031303070783b0a202020202020202020202020646973706c61793a20666c65783b0a202020202020202020202020616c69676e2d6974656d733a2063656e7465723b0a2020202020202020202020206a7573746966792d636f6e74656e743a2063656e7465723b0a202020202020202020202020666f6e742d73697a653a2032656d3b0a2020202020202020202020206261636b67726f756e643a20236565653b0a202020202020202020202020637572736f723a20706f696e7465723b0a202020202020202020202020626f726465723a2032707820736f6c696420233333333b0a20202020202020207d0a0a20202020202020202e63656c6c2e74616b656e207b0a202020202020202020202020637572736f723a206e6f742d616c6c6f7765643b0a20202020202020207d0a0a202020202020202023737461747573207b0a202020202020202020202020666f6e742d73697a653a20312e35656d3b0a2020202020202020202020206d617267696e3a20313070783b0a20202020202020207d0a0a2020202020202020627574746f6e207b0a2020202020202020202020206d617267696e2d746f703a20313070783b0a20202020202020202020202070616464696e673a20313070783b0a202020202020202020202020666f6e742d73697a653a2031656d3b0a202020202020202020202020637572736f723a20706f696e7465723b0a20202020202020207d0a0a202020202020202073656c656374207b0a202020202020202020202020666f6e742d73697a653a2031656d3b0a20202020202020202020202070616464696e673a203570783b0a2020202020202020202020206d617267696e2d746f703a20323070783b0a20202020202020207d0a202020203c2f7374796c653e0a3c2f686561643e0a0a3c626f64793e0a202020203c68313e5469632d5461632d546f653c2f68313e0a202020203c696d67207372633d222f7469635f7461635f746f652e7376672220616c743d225469632054616320546f65222077696474683d22323030223e0a202020203c6469763e0a20202020202020203c6c6162656c20666f723d2267616d654d6f6465223e43686f6f73652047616d65204d6f64653a3c2f6c6162656c3e0a20202020202020203c73656c6563742069643d2267616d654d6f6465223e0a2020202020202020202020203c6f7074696f6e2076616c75653d2268756d616e223e506c6179657220767320506c617965723c2f6f7074696f6e3e0a2020202020202020202020203c6f7074696f6e2076616c75653d22626f74223e506c6179657220767320426f743c2f6f7074696f6e3e0a20202020202020203c2f73656c6563743e0a202020203c2f6469763e0a202020203c6469762069643d22737461747573223e506c6179657220582773207475726e3c2f6469763e0a202020203c64697620636c6173733d22626f617264222069643d22626f617264223e3c2f6469763e0a202020203c627574746f6e206f6e636c69636b3d22726573657447616d652829223e526573746172743c2f627574746f6e3e0a0a202020203c7363726970743e0a2020202020202020636f6e737420626f617264203d20646f63756d656e742e676574456c656d656e74427949642822626f61726422293b0a2020202020202020636f6e737420737461747573203d20646f63756d656e742e676574456c656d656e7442794964282273746174757322293b0a2020202020202020636f6e73742067616d654d6f646553656c656374203d20646f63756d656e742e676574456c656d656e7442794964282267616d654d6f646522293b0a20202020202020206c65742063757272656e74506c61796572203d202258223b0a20202020202020206c65742067616d65426f617264203d2041727261792839292e66696c6c286e756c6c293b0a20202020202020206c65742067616d654d6f6465203d202268756d616e223b0a0a202020202020202067616d654d6f646553656c6563742e6164644576656e744c697374656e657228226368616e6765222c202829203d3e207b0a20202020202020202020202067616d654d6f6465203d2067616d654d6f646553656c6563742e76616c75653b0a202020202020202020202020726573657447616d6528293b0a20202020202020207d293b0a0a202020202020202066756e6374696f6e20636865636b57696e6e65722829207b0a202020202020202020202020636f6e73742077696e6e696e67436f6d626f73203d205b0a202020202020202020202020202020205b302c20312c20325d2c205b332c20342c20355d2c205b362c20372c20385d2c0a202020202020202020202020202020205b302c20332c20365d2c205b312c20342c20375d2c205b322c20352c20385d2c0a202020202020202020202020202020205b302c20342c20385d2c205b322c20342c20365d0a2020202020202020202020205d3b0a202020202020202020202020666f722028636f6e7374205b612c20622c20635d206f662077696e6e696e67436f6d626f7329207b0a202020202020202020202020202020206966202867616d65426f6172645b615d2026262067616d65426f6172645b615d203d3d3d2067616d65426f6172645b625d2026262067616d65426f6172645b615d203d3d3d2067616d65426f6172645b635d29207b0a20202020202020202020202020202020202020207374617475732e696e6e657254657874203d2022506c617965722022202b2067616d65426f6172645b615d202b20222057696e7321223b0a2020202020202020202020202020202020202020646f63756d656e742e717565727953656c6563746f72416c6c28222e63656c6c22292e666f72456163682863656c6c203d3e2063656c6c2e636c6173734c6973742e616464282274616b656e2229293b0a202020202020202020202020202020202020202072657475726e20747275653b0a202020202020202020202020202020207d0a2020202020202020202020207d0a202020202020202020202020696620282167616d65426f6172642e696e636c75646573286e756c6c2929207b0a202020202020202020202020202020207374617475732e696e6e657254657874203d2022497427732061206472617721223b0a2020202020202020202020202020202072657475726e20747275653b0a2020202020202020202020207d0a20202020202020202020202072657475726e2066616c73653b0a20202020202020207d0a0a202020202020202066756e6374696f6e20626f744d6f76652829207b0a20202020202020202020202069662028636865636b57696e6e65722829292072657475726e3b0a2020202020202020202020206c657420617661696c61626c6553706f7473203d2067616d65426f6172642e6d6170282876616c2c2069647829203d3e2076616c203d3d3d206e756c6c203f20696478203a206e756c6c292e66696c7465722876616c203d3e2076616c20213d3d206e756c6c293b0a20202020202020202020202069662028617661696c61626c6553706f74732e6c656e677468203d3d3d2030292072657475726e3b0a2020202020202020202020206c657420626f7443686f696365203d20617661696c61626c6553706f74735b4d6174682e666c6f6f72284d6174682e72616e646f6d2829202a20617661696c61626c6553706f74732e6c656e677468295d3b0a20202020202020202020202067616d65426f6172645b626f7443686f6963655d203d20224f223b0a2020202020202020202020206c657420626f7443656c6c203d20646f63756d656e742e717565727953656c6563746f7228225b646174612d696e6465783d2722202b20626f7443686f696365202b2022275d22293b0a202020202020202020202020626f7443656c6c2e696e6e657254657874203d20224f223b0a202020202020202020202020626f7443656c6c2e636c6173734c6973742e616464282274616b656e22293b0a2020202020202020202020206966202821636865636b57696e6e6572282929207b0a2020202020202020202020202020202063757272656e74506c61796572203d202258223b0a202020202020202020202020202020207374617475732e696e6e657254657874203d2022506c6179657220582773207475726e223b0a2020202020202020202020207d0a20202020202020207d0a0a202020202020202066756e6374696f6e2068616e646c65436c69636b286576656e7429207b0a202020202020202020202020636f6e737420696e646578203d206576656e742e7461726765742e646174617365742e696e6465783b0a2020202020202020202020206966202867616d65426f6172645b696e6465785d207c7c206576656e742e7461726765742e636c6173734c6973742e636f6e7461696e73282274616b656e2229207c7c202867616d654d6f6465203d3d3d2022626f74222026262063757272656e74506c61796572203d3d3d20224f2229292072657475726e3b0a20202020202020202020202067616d65426f6172645b696e6465785d203d2063757272656e74506c617965723b0a2020202020202020202020206576656e742e7461726765742e696e6e657254657874203d2063757272656e74506c617965723b0a2020202020202020202020206576656e742e7461726765742e636c6173734c6973742e616464282274616b656e22293b0a2020202020202020202020206966202821636865636b57696e6e6572282929207b0a202020202020202020202020202020206966202863757272656e74506c61796572203d3d3d2022582229207b0a202020202020202020202020202020202020202063757272656e74506c61796572203d20224f223b0a20202020202020202020202020202020202020207374617475732e696e6e657254657874203d2067616d654d6f6465203d3d3d2022626f7422203f2022426f742773207475726e22203a2022506c61796572204f2773207475726e223b0a20202020202020202020202020202020202020206966202867616d654d6f6465203d3d3d2022626f742229207b0a20202020202020202020202020202020202020202020202073657454696d656f757428626f744d6f76652c20353030293b0a20202020202020202020202020202020202020207d0a202020202020202020202020202020207d20656c7365207b0a202020202020202020202020202020202020202063757272656e74506c61796572203d202258223b0a20202020202020202020202020202020202020207374617475732e696e6e657254657874203d2022506c6179657220582773207475726e223b0a202020202020202020202020202020207d0a2020202020202020202020207d0a20202020202020207d0a0a202020202020202066756e6374696f6e20726573657447616d652829207b0a20202020202020202020202067616d65426f6172642e66696c6c286e756c6c293b0a20202020202020202020202063757272656e74506c61796572203d202258223b0a2020202020202020202020207374617475732e696e6e657254657874203d2022506c6179657220582773207475726e223b0a202020202020202020202020626f6172642e696e6e657248544d4c203d2022223b0a202020202020202020202020666f7220286c65742069203d20303b2069203c20393b20692b2b29207b0a20202020202020202020202020202020636f6e73742063656c6c203d20646f63756d656e742e637265617465456c656d656e74282264697622293b0a2020202020202020202020202020202063656c6c2e636c6173734c6973742e616464282263656c6c22293b0a2020202020202020202020202020202063656c6c2e646174617365742e696e646578203d20693b0a2020202020202020202020202020202063656c6c2e6164644576656e744c697374656e65722822636c69636b222c2068616e646c65436c69636b293b0a20202020202020202020202020202020626f6172642e617070656e644368696c642863656c6c293b0a2020202020202020202020207d0a2020202020202020202020206966202867616d654d6f6465203d3d3d2022626f74222026262063757272656e74506c61796572203d3d3d20224f2229207b0a2020202020202020202020202020202073657454696d656f757428626f744d6f76652c20353030293b0a2020202020202020202020207d0a20202020202020207d0a0a2020202020202020726573657447616d6528293b0a202020203c2f7363726970743e0a3c2f626f64793e0a3c666f6f746572207374796c653d22646973706c61793a20666c65783b206a7573746966792d636f6e74656e743a2063656e7465723b20616c69676e2d6974656d733a2063656e7465723b2070616464696e673a20313070783b223e0a202020203c70207374796c653d22666f6e742d73697a653a20313470783b206d617267696e3a20303b223e0a2020202020202020446f6e6174653a0a20202020202020203c7370616e207374796c653d22666f6e742d66616d696c793a206d6f6e6f73706163653b206261636b67726f756e642d636f6c6f723a20236539656365663b2070616464696e673a20337078203670783b20626f726465722d7261646975733a203470783b223e0a2020202020202020202020206465726f317179716d677771713876336d63376775797032686130726376656e396b387037683635357933336b3576676b67387376356b61327a71716b78667234300a20202020202020203c2f7370616e3e0a202020203c2f703e0a3c2f666f6f7465723e0a0a0a3c2f68746d6c3e0a0a2a2f |
| dURL | 7469635f7461635f746f652e646f63 |
| descrHdr | 7469635f7461635f746f6520696e6465782e68746d6c |
| dislikes | 0 |
| docType | 54454c412d48544d4c2d31 |
| docVersion | 312e302e30 |
| fileCheckC | 32653035646364343939323631356366336239353661356630616666653230656635613235383235646131366265366164336362393931346365383436643866 |
| fileCheckS | 333562623139303336646666303235336339626664646232333364356131376463313966373432326266313238353162613533636533666431653861333963 |
| hash | 66343737316531633338646665623836386438653464646237656137376339306230636333323866373864303832666233303535303065376438636265373862 |
| iconURLHdr | |
| likes | 0 |
| nameHdr | 696e6465782e68746d6c |
| owner | 6465726f317179716d677771713876336d63376775797032686130726376656e396b387037683635357933336b3576676b67387376356b61327a71716b7866723430 |
| subDir |
Transaction Information
Root Hash
Built Height
4922891
Block
Timestamp
1738274174039
Timestamp (UTC)
2025-01-30 21:56:14
Block Age
589d 10h ago
Fee
0.07542
TX Size
8.358 kB
Version
1
Confirmations
2684270
Signature Type
DERO_HOMOMORPHIC
DERO Asset
2
Ring Size
0.07542
Fees
0.00000
Deposited
Sender
dero1qyqmgwqq8v3mc7guyp2ha0rcven9k8p7h655y33k5vgkg8sv5ka2zqqkxfr40
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 | "Function InitializePrivate() Uint64 10 IF init() == 0 THEN GOTO 30 20 RETURN 1 30 STORE("nameHdr", "index.html") 31 STORE("descrHdr", "tic_tac_toe index.html") 32 STORE("iconURLHdr", "") 33 STORE("dURL", "tic_tac_toe.doc") 34 STORE("docType", "TELA-HTML-1") 35 STORE("subDir", "") 36 STORE("fileCheckC", "2e05dcd4992615cf3b956a5f0affe20ef5a25825da16be6ad3cb9914ce846d8f") 37 STORE("fileCheckS", "35bb19036dff0253c9bfddb233d5a17dc19f7422bf12851ba53ce3fd1e8a39c") 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 /* <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <link rel="icon" href="/tic_tac_toe.svg" type="image/svg"> <title>Tic-Tac-Toe</title> <style> body { text-align: center; font-family: Arial, sans-serif; } .board { display: grid; grid-template-columns: repeat(3, 100px); grid-gap: 5px; width: 310px; margin: 20px auto; } .cell { width: 100px; height: 100px; display: flex; align-items: center; justify-content: center; font-size: 2em; background: #eee; cursor: pointer; border: 2px solid #333; } .cell.taken { cursor: not-allowed; } #status { font-size: 1.5em; margin: 10px; } button { margin-top: 10px; padding: 10px; font-size: 1em; cursor: pointer; } select { font-size: 1em; padding: 5px; margin-top: 20px; } </style> </head> <body> <h1>Tic-Tac-Toe</h1> <img src="/tic_tac_toe.svg" alt="Tic Tac Toe" width="200"> <div> <label for="gameMode">Choose Game Mode:</label> <select id="gameMode"> <option value="human">Player vs Player</option> <option value="bot">Player vs Bot</option> </select> </div> <div id="status">Player X's turn</div> <div class="board" id="board"></div> <button onclick="resetGame()">Restart</button> <script> const board = document.getElementById("board"); const status = document.getElementById("status"); const gameModeSelect = document.getElementById("gameMode"); let currentPlayer = "X"; let gameBoard = Array(9).fill(null); let gameMode = "human"; gameModeSelect.addEventListener("change", () => { gameMode = gameModeSelect.value; resetGame(); }); function checkWinner() { const winningCombos = [ [0, 1, 2], [3, 4, 5], [6, 7, 8], [0, 3, 6], [1, 4, 7], [2, 5, 8], [0, 4, 8], [2, 4, 6] ]; for (const [a, b, c] of winningCombos) { if (gameBoard[a] && gameBoard[a] === gameBoard[b] && gameBoard[a] === gameBoard[c]) { status.innerText = "Player " + gameBoard[a] + " Wins!"; document.querySelectorAll(".cell").forEach(cell => cell.classList.add("taken")); return true; } } if (!gameBoard.includes(null)) { status.innerText = "It's a draw!"; return true; } return false; } function botMove() { if (checkWinner()) return; let availableSpots = gameBoard.map((val, idx) => val === null ? idx : null).filter(val => val !== null); if (availableSpots.length === 0) return; let botChoice = availableSpots[Math.floor(Math.random() * availableSpots.length)]; gameBoard[botChoice] = "O"; let botCell = document.querySelector("[data-index='" + botChoice + "']"); botCell.innerText = "O"; botCell.classList.add("taken"); if (!checkWinner()) { currentPlayer = "X"; status.innerText = "Player X's turn"; } } function handleClick(event) { const index = event.target.dataset.index; if (gameBoard[index] || event.target.classList.contains("taken") || (gameMode === "bot" && currentPlayer === "O")) return; gameBoard[index] = currentPlayer; event.target.innerText = currentPlayer; event.target.classList.add("taken"); if (!checkWinner()) { if (currentPlayer === "X") { currentPlayer = "O"; status.innerText = gameMode === "bot" ? "Bot's turn" : "Player O's turn"; if (gameMode === "bot") { setTimeout(botMove, 500); } } else { currentPlayer = "X"; status.innerText = "Player X's turn"; } } } function resetGame() { gameBoard.fill(null); currentPlayer = "X"; status.innerText = "Player X's turn"; board.innerHTML = ""; for (let i = 0; i < 9; i++) { const cell = document.createElement("div"); cell.classList.add("cell"); cell.dataset.index = i; cell.addEventListener("click", handleClick); board.appendChild(cell); } if (gameMode === "bot" && currentPlayer === "O") { setTimeout(botMove, 500); } } resetGame(); </script> </body> <footer style="display: flex; justify-content: center; align-items: center; padding: 10px;"> <p style="font-size: 14px; margin: 0;"> Donate: <span style="font-family: monospace; background-color: #e9ecef; padding: 3px 6px; border-radius: 4px;"> dero1qyqmgwqq8v3mc7guyp2ha0rcven9k8p7h655y33k5vgkg8sv5ka2zqqkxfr40 </span> </p> </footer> </html> */" |
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.