tx · 3tetNDAh839p3eR1YTtkQCmHF4BuDBCrETDFFhYTY9Gp

3MpWdTGf7g4WqgCF16vRCm47r3jqWR4x3rH:  -0.01000000 Waves

2023.02.27 15:30 [2468123] smart account 3MpWdTGf7g4WqgCF16vRCm47r3jqWR4x3rH > SELF 0.00000000 Waves

{ "type": 13, "id": "3tetNDAh839p3eR1YTtkQCmHF4BuDBCrETDFFhYTY9Gp", "fee": 1000000, "feeAssetId": null, "timestamp": 1677501045603, "version": 2, "chainId": 84, "sender": "3MpWdTGf7g4WqgCF16vRCm47r3jqWR4x3rH", "senderPublicKey": "E1AisEe56YET9Mh4nmc7caxvzk8vBN6W6Er2y7XoyLHt", "proofs": [ "1nCJRjX5EUXYcE2nvNbQuNEUT8iqUdEF2j5BhgEv8kUGSdA4wkZBnKj6XQCo3T4bLnFFK8uniKPi5WxTskGKvE1" ], "script": "base64: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", "height": 2468123, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: none Next: 6f6NCBiFwq5oJuTvU1UVJjx4cKd9eqBQyUwQsM4guQq9 Full:
OldNewDifferences
1-# no script
1+{-# STDLIB_VERSION 5 #-}
2+{-# SCRIPT_TYPE ACCOUNT #-}
3+{-# CONTENT_TYPE DAPP #-}
4+let usdtAssetId = base58'7mGJzFEKeMzg5xNbvmFEzNq5KShSf2cE8LQM'
5+
6+@Callable(i)
7+func deposit (address,isCollateral) = if ((size(i.payments) != 1))
8+ then throw("must contain two payments")
9+ else match i.payments[0] {
10+ case payment: AttachedPayment =>
11+ if (if ((payment.assetId == usdtAssetId))
12+ then (payment.amount > 0)
13+ else false)
14+ then {
15+ let callerAddress = toBase58String(i.caller.bytes)
16+ match getInteger(callerAddress) {
17+ case amount: Int =>
18+[IntegerEntry(callerAddress, (amount + payment.amount))]
19+ case _ =>
20+[IntegerEntry(callerAddress, payment.amount)]
21+ }
22+ }
23+ else throw("Wrong asset received or zero amount")
24+ case _ =>
25+ throw("Expected AttachedPayment type")
26+ }
27+
28+
29+
30+@Callable(i)
31+func withdraw2 (address,amount) = {
32+ let callerAddress = toBase58String(i.caller.bytes)
33+ match getInteger(callerAddress) {
34+ case existedAmount: Int =>
35+ if ((existedAmount > amount))
36+ then [IntegerEntry(callerAddress, (existedAmount - amount)), ScriptTransfer(i.caller, amount, usdtAssetId)]
37+ else if ((existedAmount == amount))
38+ then [DeleteEntry(callerAddress), ScriptTransfer(i.caller, amount, usdtAssetId)]
39+ else throw("Existed amount is smaller than requested")
40+ case _ =>
41+ throw("User not found")
42+ }
43+ }
44+
45+
46+@Verifier(tx)
47+func verify () = sigVerify(tx.bodyBytes, tx.proofs[0], tx.senderPublicKey)
48+

github/deemru/w8io/169f3d6 
73.82 ms