Smart Contract Details
Open on Dero ExplorerInternal ID:
49408
Hash / Transaction:
Block:
Timestamp:
2024-06-30 05:11:50 UTC (1.3 years ago)
Creator:
EgoBoy
(+23 more)
(1232)
Raw Data:
[{"name":"SC_ACTION","datatype":"U","value":1},{"name":"SC_CODE","datatype":"S","value":"Function Initialize() Uint64\n10 IF EXISTS(\"OWNER\") THEN GOTO 90\n20 STORE(\"OWNER\",ADDRESS_STRING(SIGNER()))\n30 SEND_ASSET_TO_ADDRESS(SIGNER(),1,SCID())\n40 STORE(\"name\",\"DeroID\")\n50 STORE(\"symbol\",\"DeroID\")\n60 STORE(\"decimals\",0)\n90 RETURN 0\nEnd Function\n\nFunction UpdateVar(key String, value String, t String) Uint64\n5 IF notOwner() THEN GOTO 90\n10 IF t == \"U\" THEN GOTO 30\n20 STORE(key,value)\n25 RETURN 0\n30 STORE(key,ATOI(value))\n35 RETURN 0\n90 RETURN 1\nEnd Function\n\nFunction DelVar(key String) Uint64\n5 IF notOwner() THEN GOTO 90\n10 DELETE(key)\n20 RETURN 0\n90 RETURN 1\nEnd Function\n\nFunction Deposit(asset String) Uint64\n10 add(\"treasury\"+asset,ASSETVALUE(HEXDECODE(asset)))\n20 RETURN 0\nEnd Function\n\nFunction Withdraw(asset String, amount Uint64) Uint64\n10 IF notOwner() THEN GOTO 90\n20 SEND_ASSET_TO_ADDRESS(SIGNER(),amount,HEXDECODE(asset))\n30 RETURN 0\n90 RETURN 1\nEnd Function\n\nFunction notOwner() Uint64\n10 IF SIGNER() == ADDRESS_RAW(LOAD(\"OWNER\")) THEN GOTO 90\n20 IF ASSETVALUE(SCID()) == 1 THEN GOTO 80\n30 RETURN 1\n80 SEND_ASSET_TO_ADDRESS(SIGNER(),1,SCID())\n90 RETURN 0\nEnd Function\n\nFunction add(k String, v Uint64) Uint64\n10 IF EXISTS(k) THEN GOTO 30\n15 STORE(k,v)\n20 RETURN(LOAD(k))\n30 STORE(k,LOAD(k)+v)\n35 RETURN LOAD(k)\nEnd Function"},{"name":"entrypoint","datatype":"S","value":"Initialize"}]
Code:
Function Initialize() Uint64
10 IF EXISTS("OWNER") THEN GOTO 90
20 STORE("OWNER",ADDRESS_STRING(SIGNER()))
30 SEND_ASSET_TO_ADDRESS(SIGNER(),1,SCID())
40 STORE("name","DeroID")
50 STORE("symbol","DeroID")
60 STORE("decimals",0)
90 RETURN 0
End Function
Function UpdateVar(key String, value String, t String) Uint64
5 IF notOwner() THEN GOTO 90
10 IF t == "U" THEN GOTO 30
20 STORE(key,value)
25 RETURN 0
30 STORE(key,ATOI(value))
35 RETURN 0
90 RETURN 1
End Function
Function DelVar(key String) Uint64
5 IF notOwner() THEN GOTO 90
10 DELETE(key)
20 RETURN 0
90 RETURN 1
End Function
Function Deposit(asset String) Uint64
10 add("treasury"+asset,ASSETVALUE(HEXDECODE(asset)))
20 RETURN 0
End Function
Function Withdraw(asset String, amount Uint64) Uint64
10 IF notOwner() THEN GOTO 90
20 SEND_ASSET_TO_ADDRESS(SIGNER(),amount,HEXDECODE(asset))
30 RETURN 0
90 RETURN 1
End Function
Function notOwner() Uint64
10 IF SIGNER() == ADDRESS_RAW(LOAD("OWNER")) THEN GOTO 90
20 IF ASSETVALUE(SCID()) == 1 THEN GOTO 80
30 RETURN 1
80 SEND_ASSET_TO_ADDRESS(SIGNER(),1,SCID())
90 RETURN 0
End Function
Function add(k String, v Uint64) Uint64
10 IF EXISTS(k) THEN GOTO 30
15 STORE(k,v)
20 RETURN(LOAD(k))
30 STORE(k,LOAD(k)+v)
35 RETURN LOAD(k)
End Function