tx · 4mVfajyAKdL2TL3c5pe9meJr8EHcxVqr7tqN55Ptsmuz

3PPfDHC6hNqDMxRArJvJRkYfC8y6S3rSnYb:  -0.01400000 Waves

2022.04.08 22:23 [3065320] smart account 3PPfDHC6hNqDMxRArJvJRkYfC8y6S3rSnYb > SELF 0.00000000 Waves

{ "type": 13, "id": "4mVfajyAKdL2TL3c5pe9meJr8EHcxVqr7tqN55Ptsmuz", "fee": 1400000, "feeAssetId": null, "timestamp": 1649445843758, "version": 2, "chainId": 87, "sender": "3PPfDHC6hNqDMxRArJvJRkYfC8y6S3rSnYb", "senderPublicKey": "4FaPZLDv7cbxuVqPY33ZvAmEhjJBRdYxUxrnBLEoZ6WH", "proofs": [ "5kw2EzmdRikQCYzaqnHK9eyxAUVuVUBJ9BBrsQ7BGSWH6943HWcR3C21ruMwwWhEHNbC35Qcu4xPPrgMyZrHv15r" ], "script": "base64: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", "height": 3065320, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: H4sxdivo4e7WdM2JC7KUUC91rwZdaA5jG4PEJ4WDSEiS Next: 8vKsRoyNbQPben49XGzqPdoMUA9UJiYKfcEYLRi188cG Diff:
OldNewDifferences
33 {-# CONTENT_TYPE DAPP #-}
44 let a = Address(base58'3P8LVqVKhTViMJau96KNir6FhHr4WnfoW57')
55
6-let b = Address(base58'3PPfDHC6hNqDMxRArJvJRkYfC8y6S3rSnYb')
6+let b = Address(base58'3P3pDosq4GCwfJkvq4yqKvvoTwmoqc9qPmo')
77
8-func c (d) = {
9- let e = getString(a, (("nft_" + d) + "_data"))
10- if ($isInstanceOf(e, "String"))
8+let c = Address(base58'3PPfDHC6hNqDMxRArJvJRkYfC8y6S3rSnYb')
9+
10+func d (e) = {
11+ let f = getString(a, (("nft_" + e) + "_data"))
12+ if ($isInstanceOf(f, "String"))
1113 then {
12- let f = e
14+ let g = f
1315 true
1416 }
1517 else false
1618 }
1719
1820
19-@Callable(g)
20-func sendToGateway (h) = {
21- let i = value(g.payments[0])
22- let j = value(i.assetId)
23- let d = toBase58String(j)
24- if (!(c(d)))
21+@Callable(h)
22+func sendToGateway (i) = {
23+ let j = value(h.payments[0])
24+ let k = value(j.assetId)
25+ let e = toBase58String(k)
26+ if (!(d(e)))
2527 then throw("wrong NFT attached")
26- else [StringEntry((("nft_" + d) + "_sentTo"), h), IntegerEntry((("nft_" + d) + "_lockedAt"), height), StringEntry((("nft_" + d) + "_lockedBy"), toString(g.caller))]
28+ else [StringEntry((("nft_" + e) + "_sentTo"), i), IntegerEntry((("nft_" + e) + "_lockedAt"), height), StringEntry((("nft_" + e) + "_lockedBy"), toString(h.caller))]
2729 }
2830
2931
3032
31-@Callable(g)
32-func sendFromGateway (d,h) = if ((g.caller != b))
33- then throw("gateway address allowed only")
34- else [ScriptTransfer(Address(fromBase58String(h)), 1, fromBase58String(d)), StringEntry((("nft_" + d) + "_unlockedTo"), h), IntegerEntry((("nft_" + d) + "_unlockedAt"), height)]
33+@Callable(h)
34+func stakeAndSendToGateway (i) = {
35+ let j = value(h.payments[0])
36+ let l = value(j.assetId)
37+ let m = toBase58String(l)
38+ let e = {
39+ let f = invoke(b, "lock", nil, h.payments)
40+ if ($isInstanceOf(f, "String"))
41+ then {
42+ let g = f
43+ g
44+ }
45+ else throw("error while wrapping duck")
46+ }
47+ if ((e == e))
48+ then if (!(d(e)))
49+ then throw("wrong NFT attached")
50+ else [StringEntry((("nft_" + e) + "_sentTo"), i), IntegerEntry((("nft_" + e) + "_lockedAt"), height), StringEntry((("nft_" + e) + "_lockedBy"), toString(h.caller))]
51+ else throw("Strict value is not equal to itself.")
52+ }
3553
3654
37-@Verifier(k)
38-func l () = sigVerify(k.bodyBytes, k.proofs[0], k.senderPublicKey)
55+
56+@Callable(h)
57+func sendFromGateway (e,i) = if ((h.caller != c))
58+ then throw("gateway address allowed only")
59+ else [ScriptTransfer(Address(fromBase58String(i)), 1, fromBase58String(e)), StringEntry((("nft_" + e) + "_unlockedTo"), i), IntegerEntry((("nft_" + e) + "_unlockedAt"), height)]
60+
61+
62+
63+@Callable(h)
64+func unstakeAndSendFromGateway (e,i) = {
65+ let k = fromBase58String(e)
66+ if ((h.caller != c))
67+ then throw("gateway address allowed only")
68+ else {
69+ let m = {
70+ let f = invoke(b, "unlock", nil, [AttachedPayment(k, 1)])
71+ if ($isInstanceOf(f, "String"))
72+ then {
73+ let g = f
74+ g
75+ }
76+ else throw("error while unstaking duck")
77+ }
78+ if ((m == m))
79+ then [ScriptTransfer(Address(fromBase58String(i)), 1, fromBase58String(m)), StringEntry((("nft_" + e) + "_unlockedTo"), i), IntegerEntry((("nft_" + e) + "_unlockedAt"), height)]
80+ else throw("Strict value is not equal to itself.")
81+ }
82+ }
83+
84+
85+@Verifier(n)
86+func o () = sigVerify(n.bodyBytes, n.proofs[0], n.senderPublicKey)
3987
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 5 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let a = Address(base58'3P8LVqVKhTViMJau96KNir6FhHr4WnfoW57')
55
6-let b = Address(base58'3PPfDHC6hNqDMxRArJvJRkYfC8y6S3rSnYb')
6+let b = Address(base58'3P3pDosq4GCwfJkvq4yqKvvoTwmoqc9qPmo')
77
8-func c (d) = {
9- let e = getString(a, (("nft_" + d) + "_data"))
10- if ($isInstanceOf(e, "String"))
8+let c = Address(base58'3PPfDHC6hNqDMxRArJvJRkYfC8y6S3rSnYb')
9+
10+func d (e) = {
11+ let f = getString(a, (("nft_" + e) + "_data"))
12+ if ($isInstanceOf(f, "String"))
1113 then {
12- let f = e
14+ let g = f
1315 true
1416 }
1517 else false
1618 }
1719
1820
19-@Callable(g)
20-func sendToGateway (h) = {
21- let i = value(g.payments[0])
22- let j = value(i.assetId)
23- let d = toBase58String(j)
24- if (!(c(d)))
21+@Callable(h)
22+func sendToGateway (i) = {
23+ let j = value(h.payments[0])
24+ let k = value(j.assetId)
25+ let e = toBase58String(k)
26+ if (!(d(e)))
2527 then throw("wrong NFT attached")
26- else [StringEntry((("nft_" + d) + "_sentTo"), h), IntegerEntry((("nft_" + d) + "_lockedAt"), height), StringEntry((("nft_" + d) + "_lockedBy"), toString(g.caller))]
28+ else [StringEntry((("nft_" + e) + "_sentTo"), i), IntegerEntry((("nft_" + e) + "_lockedAt"), height), StringEntry((("nft_" + e) + "_lockedBy"), toString(h.caller))]
2729 }
2830
2931
3032
31-@Callable(g)
32-func sendFromGateway (d,h) = if ((g.caller != b))
33- then throw("gateway address allowed only")
34- else [ScriptTransfer(Address(fromBase58String(h)), 1, fromBase58String(d)), StringEntry((("nft_" + d) + "_unlockedTo"), h), IntegerEntry((("nft_" + d) + "_unlockedAt"), height)]
33+@Callable(h)
34+func stakeAndSendToGateway (i) = {
35+ let j = value(h.payments[0])
36+ let l = value(j.assetId)
37+ let m = toBase58String(l)
38+ let e = {
39+ let f = invoke(b, "lock", nil, h.payments)
40+ if ($isInstanceOf(f, "String"))
41+ then {
42+ let g = f
43+ g
44+ }
45+ else throw("error while wrapping duck")
46+ }
47+ if ((e == e))
48+ then if (!(d(e)))
49+ then throw("wrong NFT attached")
50+ else [StringEntry((("nft_" + e) + "_sentTo"), i), IntegerEntry((("nft_" + e) + "_lockedAt"), height), StringEntry((("nft_" + e) + "_lockedBy"), toString(h.caller))]
51+ else throw("Strict value is not equal to itself.")
52+ }
3553
3654
37-@Verifier(k)
38-func l () = sigVerify(k.bodyBytes, k.proofs[0], k.senderPublicKey)
55+
56+@Callable(h)
57+func sendFromGateway (e,i) = if ((h.caller != c))
58+ then throw("gateway address allowed only")
59+ else [ScriptTransfer(Address(fromBase58String(i)), 1, fromBase58String(e)), StringEntry((("nft_" + e) + "_unlockedTo"), i), IntegerEntry((("nft_" + e) + "_unlockedAt"), height)]
60+
61+
62+
63+@Callable(h)
64+func unstakeAndSendFromGateway (e,i) = {
65+ let k = fromBase58String(e)
66+ if ((h.caller != c))
67+ then throw("gateway address allowed only")
68+ else {
69+ let m = {
70+ let f = invoke(b, "unlock", nil, [AttachedPayment(k, 1)])
71+ if ($isInstanceOf(f, "String"))
72+ then {
73+ let g = f
74+ g
75+ }
76+ else throw("error while unstaking duck")
77+ }
78+ if ((m == m))
79+ then [ScriptTransfer(Address(fromBase58String(i)), 1, fromBase58String(m)), StringEntry((("nft_" + e) + "_unlockedTo"), i), IntegerEntry((("nft_" + e) + "_unlockedAt"), height)]
80+ else throw("Strict value is not equal to itself.")
81+ }
82+ }
83+
84+
85+@Verifier(n)
86+func o () = sigVerify(n.bodyBytes, n.proofs[0], n.senderPublicKey)
3987

github/deemru/w8io/3ef1775 
47.53 ms