tx · 5Sn25VTaaJXYJFWvK2ZaoGtwnBcvr8eARjgUHiTEbwkW

3N5ZhGLzDmoMwHsWKAoTqkFvVYuditKPyvY:  -0.01000000 Waves

2022.11.14 15:53 [2316825] smart account 3N5ZhGLzDmoMwHsWKAoTqkFvVYuditKPyvY > SELF 0.00000000 Waves

{ "type": 13, "id": "5Sn25VTaaJXYJFWvK2ZaoGtwnBcvr8eARjgUHiTEbwkW", "fee": 1000000, "feeAssetId": null, "timestamp": 1668430443957, "version": 2, "chainId": 84, "sender": "3N5ZhGLzDmoMwHsWKAoTqkFvVYuditKPyvY", "senderPublicKey": "7mgUaX6yf7mFk48Gus7kVGRUwCZXtr2CKWJW6KoukPiW", "proofs": [ "3r2iB4T3qK5AvFk3PcDA4EtViRLqNAmDvHUJCpJSxjUZ29wTRKxJdjpVtKtaRPNL25L8qVRXHYvgsmjYWt7p1h7T" ], "script": "base64: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", "height": 2316825, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: 5ai9BKHW4QAdmDs9aNSXoiHznyc5ZoMmfjN1qpDuNcfj Next: 5K9e9dPw2NV47zr2VdqywautqEdcNbE78gJVyGQe8yCg Diff:
OldNewDifferences
2121
2222
2323 @Callable(i)
24+func withdraw () = {
25+ let caller = toString(i.caller)
26+ let pmt = i.payments[0]
27+ let callerBalance = valueOrElse(getInteger(this, caller), 0)
28+ if ((callerBalance == 0))
29+ then throw("Nothing to withdraw")
30+ else [IntegerEntry(caller, (callerBalance - pmt.amount)), ScriptTransfer(i.caller, pmt.amount, usdnID)]
31+ }
32+
33+
34+
35+@Callable(i)
2436 func claim (amount) = {
2537 let caller = toString(i.caller)
2638 let forWithdraw = getIntegerValue(this, caller)
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 5 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let usdnID = base58'25FEqEjRkqK6yCkiT7Lz6SAYz7gUFCtxfCChnrVFD5AT'
55
66 @Callable(i)
77 func deposit () = {
88 let pmt = i.payments[0]
99 let caller = toString(i.caller)
1010 if ((pmt.assetId != usdnID))
1111 then throw("Invalid asset")
1212 else {
1313 let deposited = valueOrElse(getInteger(this, caller), 0)
1414 let s = IntegerEntry(caller, (pmt.amount + deposited))
1515 let onStake = valueOrElse(getInteger(this, "_tresury"), 0)
1616 let updateTreasury = IntegerEntry("_treasury", (pmt.amount + onStake))
1717 [s, updateTreasury]
1818 }
1919 }
2020
2121
2222
2323 @Callable(i)
24+func withdraw () = {
25+ let caller = toString(i.caller)
26+ let pmt = i.payments[0]
27+ let callerBalance = valueOrElse(getInteger(this, caller), 0)
28+ if ((callerBalance == 0))
29+ then throw("Nothing to withdraw")
30+ else [IntegerEntry(caller, (callerBalance - pmt.amount)), ScriptTransfer(i.caller, pmt.amount, usdnID)]
31+ }
32+
33+
34+
35+@Callable(i)
2436 func claim (amount) = {
2537 let caller = toString(i.caller)
2638 let forWithdraw = getIntegerValue(this, caller)
2739 if ((amount > forWithdraw))
2840 then throw("Not enough to claim")
2941 else [IntegerEntry((caller + "_withdraw"), (forWithdraw - amount)), ScriptTransfer(i.caller, amount, usdnID)]
3042 }
3143
3244
3345 @Verifier(tx)
3446 func verify () = sigVerify(tx.bodyBytes, tx.proofs[0], tx.senderPublicKey)
3547

github/deemru/w8io/169f3d6 
28.19 ms