tx · 5Zwn6GtspPedj3aLDUbwhdSf9yMXMwgVKyjwzWyPQX8C

3N3QBerUq9f9YXjAszVRZAiAj5bgaGcMwYr:  -0.00500000 Waves

2023.08.21 10:57 [2720123] smart account 3N3QBerUq9f9YXjAszVRZAiAj5bgaGcMwYr > SELF 0.00000000 Waves

{ "type": 13, "id": "5Zwn6GtspPedj3aLDUbwhdSf9yMXMwgVKyjwzWyPQX8C", "fee": 500000, "feeAssetId": null, "timestamp": 1692604629063, "version": 2, "chainId": 84, "sender": "3N3QBerUq9f9YXjAszVRZAiAj5bgaGcMwYr", "senderPublicKey": "BqjwtF4hAZNR68Wv67xxQpdJM85NYAUPYZqhDJJJ9Mw1", "proofs": [ "3WjperNQyK2uvXBjFm847xhF682omKvJ2y99zXBjdfBqmUMux11epmuMkVWR3oWFyHcuTQ9Gcadqa8kxvRZhMuet" ], "script": "base64:BgIKCAISABIAEgASAA0ACXdhdmVzMUxJZAkBB0FkZHJlc3MBASCx9eRWoz/T7on2QCucPEyACTagmHhap+TFH25bD+lGhQAJd2F2ZXMzTElkCQEHQWRkcmVzcwEBIHdXDDXqNpTfTtMV3HoBAJm7TRBH1wyKq1fh63GL4LhkAAl3YXZlczVMSWQJAQdBZGRyZXNzAQEgG0ZokmU5WBTQbm1EIuXU3iDl1u675ol+F8RLM/XoZqQAA2FycgkAzAgCAAEJAMwIAgACCQDMCAIAAwkAzAgCAAQJAMwIAgAFBQNuaWwABGFycjIJAMwIAgABCQDMCAIAAgUDbmlsAARhcnIzCQDMCAIAAQkAzAgCAAIJAMwIAgADBQNuaWwBA3N1bQIBYQFiCQD8BwQJARFAZXh0ck5hdGl2ZSgxMDYyKQECIzNOM0RuVmZmblV5WnR6Mk1SYms1VTdnaU4xMTJXZW1wTU5kAgZib3Jyb3cJAMwIAgIsMjVGRXFFalJrcUs2eUNraVQ3THo2U0FZejdnVUZDdHhmQ0NobnJWRkQ1QVQJAMwIAgDAhD0FA25pbAUDbmlsAQpnZXRCYWxhbmNlAgphc3NldElkU3RyB2FkZHJlc3MDCQAAAgUKYXNzZXRJZFN0cgIFV0FWRVMICQDvBwEFB2FkZHJlc3MJYXZhaWxhYmxlCQDwBwIFB2FkZHJlc3MJANkEAQUKYXNzZXRJZFN0cgEPZ2V0Q3VycmVudFByaWNlAQphc3NldElkU3RyAwkAAAIFCmFzc2V0SWRTdHICBVdBVkVTAAIJAAIBAgVFcnJvcgEUZ2V0V2F2ZXNDdXJyZW50UHJpY2UAAICJegEQZ2V0V2F2ZXNOZXdQcmljZQAAwI23AQEWZ2V0V2F2ZXMzTEN1cnJlbnRQcmljZQAAgJ9JARJnZXRXYXZlczNMTmV3UHJpY2UAAICJegQBaQEObWludFdhdmVzM0xfdjEAAwMJAQIhPQIJAJADAQgFAWkIcGF5bWVudHMAAQYJAAACCAkAkQMCCAUBaQhwYXltZW50cwAABmFtb3VudAAACQACAQIcMSBwYXltZW50IGhhcyB0byBiZSBhdHRhY2hlZAQHYWRkcmVzcwkApQgBCAUBaQZjYWxsZXIEEHN0YWJsZUNvaW5BbW91bnQICQCRAwIIBQFpCHBheW1lbnRzAAAGYW1vdW50BBRjb252ZXJ0ZWRXYXZlc0Ftb3VudAkAaAIJAGkCBRBzdGFibGVDb2luQW1vdW50CQEUZ2V0V2F2ZXNDdXJyZW50UHJpY2UAAIDC1y8ED3VzZXJXYXZlc0Ftb3VudAkBCmdldEJhbGFuY2UCAgVXQVZFUwgFAWkGY2FsbGVyAwkAZgIFD3VzZXJXYXZlc0Ftb3VudAUUY29udmVydGVkV2F2ZXNBbW91bnQEDWRlcG9zaXRSZXN1bHQJAPwHBAkBEUBleHRyTmF0aXZlKDEwNjIpAQIjM04zRG5WZmZuVXladHoyTVJiazVVN2dpTjExMldlbXBNTmQCBnN1cHBseQUDbmlsCQDMCAIJAQ9BdHRhY2hlZFBheW1lbnQCBQR1bml0BRRjb252ZXJ0ZWRXYXZlc0Ftb3VudAUDbmlsAwkAAAIFDWRlcG9zaXRSZXN1bHQFDWRlcG9zaXRSZXN1bHQKAQpyZXBlYXRGdW5jAgVhY2N1bQRuZXh0BAxib3Jyb3dSZXN1bHQJAPwHBAkBEUBleHRyTmF0aXZlKDEwNjIpAQIjM04zRG5WZmZuVXladHoyTVJiazVVN2dpTjExMldlbXBNTmQCBmJvcnJvdwkAzAgCAiwyNUZFcUVqUmtxSzZ5Q2tpVDdMejZTQVl6N2dVRkN0eGZDQ2huclZGRDVBVAkAzAgCBRBzdGFibGVDb2luQW1vdW50BQNuaWwFA25pbAMJAAACBQxib3Jyb3dSZXN1bHQFDGJvcnJvd1Jlc3VsdAkAZAIFBWFjY3VtBQRuZXh0CQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuBAVhcnJheQkAzAgCBRBzdGFibGVDb2luQW1vdW50CQDMCAIFEHN0YWJsZUNvaW5BbW91bnQJAMwIAgUQc3RhYmxlQ29pbkFtb3VudAUDbmlsBANyZXMKAAIkbAUFYXJyYXkKAAIkcwkAkAMBBQIkbAoABSRhY2MwAAAKAQUkZjBfMQICJGECJGkDCQBnAgUCJGkFAiRzBQIkYQkBCnJlcGVhdEZ1bmMCBQIkYQkAkQMCBQIkbAUCJGkKAQUkZjBfMgICJGECJGkDCQBnAgUCJGkFAiRzBQIkYQkAAgECE0xpc3Qgc2l6ZSBleGNlZWRzIDMJAQUkZjBfMgIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIFBSRhY2MwAAAAAQACAAMEE3JldHVybmVkVG9rZW5BbW91bnQJAGgCCQBpAgUDcmVzCQEWZ2V0V2F2ZXMzTEN1cnJlbnRQcmljZQAAwIQ9CQDMCAIJAQxJbnRlZ2VyRW50cnkCCQCsAgIFB2FkZHJlc3MCCl9nYXZlX1VTRE4FEHN0YWJsZUNvaW5BbW91bnQJAMwIAgkBDEludGVnZXJFbnRyeQIJAKwCAgUHYWRkcmVzcwIQX2RlcG9zaXRlZF9XQVZFUwUUY29udmVydGVkV2F2ZXNBbW91bnQJAMwIAgkBDEludGVnZXJFbnRyeQIJAKwCAgkArAICBQdhZGRyZXNzAgpfYm9ycm93ZWRfAiwyNUZFcUVqUmtxSzZ5Q2tpVDdMejZTQVl6N2dVRkN0eGZDQ2huclZGRDVBVAUDcmVzCQDMCAIJAQxJbnRlZ2VyRW50cnkCCQCsAgIFB2FkZHJlc3MCEV9yZWNlaXZlZF9XQVZFUzNMBRNyZXR1cm5lZFRva2VuQW1vdW50CQDMCAIJAQ5TY3JpcHRUcmFuc2ZlcgMIBQFpBmNhbGxlcgUTcmV0dXJuZWRUb2tlbkFtb3VudAEgd1cMNeo2lN9O0xXcegEAmbtNEEfXDIqrV+HrcYvguGQFA25pbAkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECHE5vdCBlbm91Z2ggV0FWRVMgdG8gZGVwb3NpdCEBaQEQcmVkZWVtV2F2ZXMzTF92MQADAwkBAiE9AgkAkAMBCAUBaQhwYXltZW50cwABBgkAAAIICQCRAwIIBQFpCHBheW1lbnRzAAAGYW1vdW50AAAJAAIBAhwxIHBheW1lbnQgaGFzIHRvIGJlIGF0dGFjaGVkBAdhZGRyZXNzCQClCAEIBQFpBmNhbGxlcgQLdG9rZW5BbW91bnQICQCRAwIIBQFpCHBheW1lbnRzAAAGYW1vdW50BBJyZXR1cm5lZFVTRE5BbW91bnQJAGgCBQt0b2tlbkFtb3VudAkAaQIJARJnZXRXYXZlczNMTmV3UHJpY2UAAMCEPQkAzAgCCQEMSW50ZWdlckVudHJ5AgkArAICBQdhZGRyZXNzAhFfcmVkZWVtZWRfV0FWRVMzTAULdG9rZW5BbW91bnQJAMwIAgkBDEludGVnZXJFbnRyeQIJAKwCAgUHYWRkcmVzcwIOX3JlY2VpdmVkX1VTRE4FEnJldHVybmVkVVNETkFtb3VudAkAzAgCCQEOU2NyaXB0VHJhbnNmZXIDCAUBaQZjYWxsZXIFEnJldHVybmVkVVNETkFtb3VudAEgD/IcEqzkxDya7EYaqyWosOy6BytGzG2IcvC14pJJAbQFA25pbAFpAQ5taW50V2F2ZXMzTF92MgADAwkBAiE9AgkAkAMBCAUBaQhwYXltZW50cwABBgkAAAIICQCRAwIIBQFpCHBheW1lbnRzAAAGYW1vdW50AAAJAAIBAhwxIHBheW1lbnQgaGFzIHRvIGJlIGF0dGFjaGVkBAdhZGRyZXNzCQClCAEIBQFpBmNhbGxlcgQQc3RhYmxlQ29pbkFtb3VudAgJAJEDAggFAWkIcGF5bWVudHMAAAZhbW91bnQEFGNvbnZlcnRlZFdhdmVzQW1vdW50CQBoAgkAaQIFEHN0YWJsZUNvaW5BbW91bnQAgIl6AIDC1y8ED3VzZXJXYXZlc0Ftb3VudAkBCmdldEJhbGFuY2UCAgVXQVZFUwgFAWkGY2FsbGVyBAliZWRpbmd1bmcJAGgCCQBlAgADAAEJARRnZXRXYXZlc0N1cnJlbnRQcmljZQADCQBnAgUQc3RhYmxlQ29pbkFtb3VudAUJYmVkaW5ndW5nBA1kZXBvc2l0UmVzdWx0CQD8BwQJARFAZXh0ck5hdGl2ZSgxMDYyKQECIzNOM0RuVmZmblV5WnR6Mk1SYms1VTdnaU4xMTJXZW1wTU5kAgZzdXBwbHkFA25pbAkAzAgCCQEPQXR0YWNoZWRQYXltZW50AgUEdW5pdAUUY29udmVydGVkV2F2ZXNBbW91bnQFA25pbAMJAAACBQ1kZXBvc2l0UmVzdWx0BQ1kZXBvc2l0UmVzdWx0CgEKcmVwZWF0RnVuYwIFYWNjdW0EbmV4dAQMYm9ycm93UmVzdWx0CQD8BwQJARFAZXh0ck5hdGl2ZSgxMDYyKQECIzNOM0RuVmZmblV5WnR6Mk1SYms1VTdnaU4xMTJXZW1wTU5kAgZib3Jyb3cJAMwIAgIsMjVGRXFFalJrcUs2eUNraVQ3THo2U0FZejdnVUZDdHhmQ0NobnJWRkQ1QVQJAMwIAgUQc3RhYmxlQ29pbkFtb3VudAUDbmlsBQNuaWwDCQAAAgUMYm9ycm93UmVzdWx0BQxib3Jyb3dSZXN1bHQJAGQCBQVhY2N1bQUEbmV4dAkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgQFYXJyYXkJAMwIAgUQc3RhYmxlQ29pbkFtb3VudAkAzAgCBRBzdGFibGVDb2luQW1vdW50CQDMCAIFEHN0YWJsZUNvaW5BbW91bnQFA25pbAQDcmVzCgACJGwFBWFycmF5CgACJHMJAJADAQUCJGwKAAUkYWNjMAAACgEFJGYwXzECAiRhAiRpAwkAZwIFAiRpBQIkcwUCJGEJAQpyZXBlYXRGdW5jAgUCJGEJAJEDAgUCJGwFAiRpCgEFJGYwXzICAiRhAiRpAwkAZwIFAiRpBQIkcwUCJGEJAAIBAhNMaXN0IHNpemUgZXhjZWVkcyAzCQEFJGYwXzICCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECBQUkYWNjMAAAAAEAAgADBA1ieVdhdmVzS2F1ZmVuCQBoAgkAaQIFA3JlcwkBFGdldFdhdmVzQ3VycmVudFByaWNlAACAwtcvCQDMCAIJAQxJbnRlZ2VyRW50cnkCCQCsAgIFB2FkZHJlc3MCCl9nYXZlX1VTRE4FEHN0YWJsZUNvaW5BbW91bnQJAMwIAgkBDEludGVnZXJFbnRyeQIJAKwCAgUHYWRkcmVzcwIQX2RlcG9zaXRlZF9XQVZFUwUUY29udmVydGVkV2F2ZXNBbW91bnQJAMwIAgkBDEludGVnZXJFbnRyeQIJAKwCAgkArAICBQdhZGRyZXNzAgpfYm9ycm93ZWRfAiwyNUZFcUVqUmtxSzZ5Q2tpVDdMejZTQVl6N2dVRkN0eGZDQ2huclZGRDVBVAUDcmVzCQDMCAIJAQxJbnRlZ2VyRW50cnkCCQCsAgIFB2FkZHJlc3MCEV9yZWNlaXZlZF9XQVZFUzNMAMCEPQkAzAgCCQEOU2NyaXB0VHJhbnNmZXIDCAUBaQZjYWxsZXIAwIQ9ASB3Vww16jaU307TFdx6AQCZu00QR9cMiqtX4etxi+C4ZAUDbmlsCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuCQACAQIcTm90IGVub3VnaCBXQVZFUyB0byBkZXBvc2l0IQFpARByZWRlZW1XYXZlczNMX3YyAAMDCQECIT0CCQCQAwEIBQFpCHBheW1lbnRzAAEGCQAAAggJAJEDAggFAWkIcGF5bWVudHMAAAZhbW91bnQAAAkAAgECHDEgcGF5bWVudCBoYXMgdG8gYmUgYXR0YWNoZWQEB2FkZHJlc3MJAKUIAQgFAWkGY2FsbGVyBAt0b2tlbkFtb3VudAAGBBJyZXR1cm5lZFVTRE5BbW91bnQJAGgCCQBlAgkAaAIFC3Rva2VuQW1vdW50CQBpAgkBEGdldFdhdmVzTmV3UHJpY2UAAMCEPQAEAMCEPQkAzAgCCQEMSW50ZWdlckVudHJ5AgkArAICBQdhZGRyZXNzAhFfcmVkZWVtZWRfV0FWRVMzTAULdG9rZW5BbW91bnQJAMwIAgkBDEludGVnZXJFbnRyeQIJAKwCAgUHYWRkcmVzcwIOX3JlY2VpdmVkX1VTRE4FEnJldHVybmVkVVNETkFtb3VudAkAzAgCCQEOU2NyaXB0VHJhbnNmZXIDCAUBaQZjYWxsZXIFEnJldHVybmVkVVNETkFtb3VudAEgD/IcEqzkxDya7EYaqyWosOy6BytGzG2IcvC14pJJAbQFA25pbAECdHgBBnZlcmlmeQAJAPQDAwgFAnR4CWJvZHlCeXRlcwkAkQMCCAUCdHgGcHJvb2ZzAAAIBQJ0eA9zZW5kZXJQdWJsaWNLZXkz3G7O", "height": 2720123, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: none Next: none Full:
OldNewDifferences
1-# no script
1+{-# STDLIB_VERSION 6 #-}
2+{-# SCRIPT_TYPE ACCOUNT #-}
3+{-# CONTENT_TYPE DAPP #-}
4+let a = Address(base58'CygdaJKZfxRrHyYMwkNdz9ZgSD5FpJLtk5s5B4q1DKV6')
5+
6+let b = Address(base58'92rW5ucGkH84YeXLnLs8dMN1P7RAFocmR8zfBqUy4gPM')
7+
8+let c = Address(base58'2qUH6Nh6cgC8dxj8fwH3bTJi261PNr5nMQKRbBXBuwmM')
9+
10+let d = [1, 2, 3, 4, 5]
11+
12+let e = [1, 2]
13+
14+let f = [1, 2, 3]
15+
16+func g (h,i) = invoke(addressFromStringValue("3N3DnVffnUyZtz2MRbk5U7giN112WempMNd"), "borrow", ["25FEqEjRkqK6yCkiT7Lz6SAYz7gUFCtxfCChnrVFD5AT", 1000000], nil)
17+
18+
19+func j (k,l) = if ((k == "WAVES"))
20+ then wavesBalance(l).available
21+ else assetBalance(l, fromBase58String(k))
22+
23+
24+func m (k) = if ((k == "WAVES"))
25+ then 2
26+ else throw("Error")
27+
28+
29+func n () = 2000000
30+
31+
32+func o () = 3000000
33+
34+
35+func p () = 1200000
36+
37+
38+func q () = 2000000
39+
40+
41+@Callable(r)
42+func mintWaves3L_v1 () = if (if ((size(r.payments) != 1))
43+ then true
44+ else (r.payments[0].amount == 0))
45+ then throw("1 payment has to be attached")
46+ else {
47+ let l = toString(r.caller)
48+ let s = r.payments[0].amount
49+ let t = ((s / n()) * 100000000)
50+ let u = j("WAVES", r.caller)
51+ if ((u > t))
52+ then {
53+ let v = invoke(addressFromStringValue("3N3DnVffnUyZtz2MRbk5U7giN112WempMNd"), "supply", nil, [AttachedPayment(unit, t)])
54+ if ((v == v))
55+ then {
56+ func w (x,y) = {
57+ let z = invoke(addressFromStringValue("3N3DnVffnUyZtz2MRbk5U7giN112WempMNd"), "borrow", ["25FEqEjRkqK6yCkiT7Lz6SAYz7gUFCtxfCChnrVFD5AT", s], nil)
58+ if ((z == z))
59+ then (x + y)
60+ else throw("Strict value is not equal to itself.")
61+ }
62+
63+ let A = [s, s, s]
64+ let B = {
65+ let C = A
66+ let D = size(C)
67+ let E = 0
68+ func F (G,H) = if ((H >= D))
69+ then G
70+ else w(G, C[H])
71+
72+ func I (G,H) = if ((H >= D))
73+ then G
74+ else throw("List size exceeds 3")
75+
76+ I(F(F(F(E, 0), 1), 2), 3)
77+ }
78+ let J = ((B / p()) * 1000000)
79+[IntegerEntry((l + "_gave_USDN"), s), IntegerEntry((l + "_deposited_WAVES"), t), IntegerEntry(((l + "_borrowed_") + "25FEqEjRkqK6yCkiT7Lz6SAYz7gUFCtxfCChnrVFD5AT"), B), IntegerEntry((l + "_received_WAVES3L"), J), ScriptTransfer(r.caller, J, base58'92rW5ucGkH84YeXLnLs8dMN1P7RAFocmR8zfBqUy4gPM')]
80+ }
81+ else throw("Strict value is not equal to itself.")
82+ }
83+ else throw("Not enough WAVES to deposit!")
84+ }
85+
86+
87+
88+@Callable(r)
89+func redeemWaves3L_v1 () = if (if ((size(r.payments) != 1))
90+ then true
91+ else (r.payments[0].amount == 0))
92+ then throw("1 payment has to be attached")
93+ else {
94+ let l = toString(r.caller)
95+ let K = r.payments[0].amount
96+ let L = (K * (q() / 1000000))
97+[IntegerEntry((l + "_redeemed_WAVES3L"), K), IntegerEntry((l + "_received_USDN"), L), ScriptTransfer(r.caller, L, base58'25FEqEjRkqK6yCkiT7Lz6SAYz7gUFCtxfCChnrVFD5AT')]
98+ }
99+
100+
101+
102+@Callable(r)
103+func mintWaves3L_v2 () = if (if ((size(r.payments) != 1))
104+ then true
105+ else (r.payments[0].amount == 0))
106+ then throw("1 payment has to be attached")
107+ else {
108+ let l = toString(r.caller)
109+ let s = r.payments[0].amount
110+ let t = ((s / 2000000) * 100000000)
111+ let u = j("WAVES", r.caller)
112+ let M = ((3 - 1) * n())
113+ if ((s >= M))
114+ then {
115+ let v = invoke(addressFromStringValue("3N3DnVffnUyZtz2MRbk5U7giN112WempMNd"), "supply", nil, [AttachedPayment(unit, t)])
116+ if ((v == v))
117+ then {
118+ func w (x,y) = {
119+ let z = invoke(addressFromStringValue("3N3DnVffnUyZtz2MRbk5U7giN112WempMNd"), "borrow", ["25FEqEjRkqK6yCkiT7Lz6SAYz7gUFCtxfCChnrVFD5AT", s], nil)
120+ if ((z == z))
121+ then (x + y)
122+ else throw("Strict value is not equal to itself.")
123+ }
124+
125+ let A = [s, s, s]
126+ let B = {
127+ let C = A
128+ let D = size(C)
129+ let E = 0
130+ func F (G,H) = if ((H >= D))
131+ then G
132+ else w(G, C[H])
133+
134+ func I (G,H) = if ((H >= D))
135+ then G
136+ else throw("List size exceeds 3")
137+
138+ I(F(F(F(E, 0), 1), 2), 3)
139+ }
140+ let N = ((B / n()) * 100000000)
141+[IntegerEntry((l + "_gave_USDN"), s), IntegerEntry((l + "_deposited_WAVES"), t), IntegerEntry(((l + "_borrowed_") + "25FEqEjRkqK6yCkiT7Lz6SAYz7gUFCtxfCChnrVFD5AT"), B), IntegerEntry((l + "_received_WAVES3L"), 1000000), ScriptTransfer(r.caller, 1000000, base58'92rW5ucGkH84YeXLnLs8dMN1P7RAFocmR8zfBqUy4gPM')]
142+ }
143+ else throw("Strict value is not equal to itself.")
144+ }
145+ else throw("Not enough WAVES to deposit!")
146+ }
147+
148+
149+
150+@Callable(r)
151+func redeemWaves3L_v2 () = if (if ((size(r.payments) != 1))
152+ then true
153+ else (r.payments[0].amount == 0))
154+ then throw("1 payment has to be attached")
155+ else {
156+ let l = toString(r.caller)
157+ let K = 6
158+ let L = (((K * (o() / 1000000)) - 4) * 1000000)
159+[IntegerEntry((l + "_redeemed_WAVES3L"), K), IntegerEntry((l + "_received_USDN"), L), ScriptTransfer(r.caller, L, base58'25FEqEjRkqK6yCkiT7Lz6SAYz7gUFCtxfCChnrVFD5AT')]
160+ }
161+
162+
163+@Verifier(O)
164+func P () = sigVerify(O.bodyBytes, O.proofs[0], O.senderPublicKey)
165+

github/deemru/w8io/c3f4982 
17.92 ms