tx · 9kBJohuSW8s7Cw5zdDv2EC5qaatBJJ2ZLwRtMsu5Boti

3NBbFNBed9tcU5AmsJAuExWvgJyNmJxqjWq:  -0.01000000 Waves

2023.08.09 21:20 [2703415] smart account 3NBbFNBed9tcU5AmsJAuExWvgJyNmJxqjWq > SELF 0.00000000 Waves

{ "type": 13, "id": "9kBJohuSW8s7Cw5zdDv2EC5qaatBJJ2ZLwRtMsu5Boti", "fee": 1000000, "feeAssetId": null, "timestamp": 1691605248811, "version": 2, "chainId": 84, "sender": "3NBbFNBed9tcU5AmsJAuExWvgJyNmJxqjWq", "senderPublicKey": "ERewvWFUFQfR1eCnipNAv9n7SdQhof2ESP6PGVjTueLd", "proofs": [ "oQXenbq5Km6cfdAJrMTJiyJzAyE58v7UL1U3Srafhr9uQDvJPCV4ydGiGxnrtGQkte6d9xxW5MuyWnPvA9r52gZ" ], "script": "base64:BgIKCAISABIAEgASAA0ACXdhdmVzMUxJZAkBB0FkZHJlc3MBASCx9eRWoz/T7on2QCucPEyACTagmHhap+TFH25bD+lGhQAJd2F2ZXMzTElkCQEHQWRkcmVzcwEBIHdXDDXqNpTfTtMV3HoBAJm7TRBH1wyKq1fh63GL4LhkAAl3YXZlczVMSWQJAQdBZGRyZXNzAQEgG0ZokmU5WBTQbm1EIuXU3iDl1u675ol+F8RLM/XoZqQAA2FycgkAzAgCAAEJAMwIAgACCQDMCAIAAwkAzAgCAAQJAMwIAgAFBQNuaWwABGFycjIJAMwIAgABCQDMCAIAAgUDbmlsAARhcnIzCQDMCAIAAQkAzAgCAAIJAMwIAgADBQNuaWwBA3N1bQIBYQFiCQD8BwQJARFAZXh0ck5hdGl2ZSgxMDYyKQECIzNOM0RuVmZmblV5WnR6Mk1SYms1VTdnaU4xMTJXZW1wTU5kAgZib3Jyb3cJAMwIAgIsMjVGRXFFalJrcUs2eUNraVQ3THo2U0FZejdnVUZDdHhmQ0NobnJWRkQ1QVQJAMwIAgDAhD0FA25pbAUDbmlsAQpnZXRCYWxhbmNlAgphc3NldElkU3RyB2FkZHJlc3MDCQAAAgUKYXNzZXRJZFN0cgIFV0FWRVMICQDvBwEFB2FkZHJlc3MJYXZhaWxhYmxlCQDwBwIFB2FkZHJlc3MJANkEAQUKYXNzZXRJZFN0cgEPZ2V0Q3VycmVudFByaWNlAQphc3NldElkU3RyAwkAAAIFCmFzc2V0SWRTdHICBVdBVkVTAAIJAAIBAgVFcnJvcgEUZ2V0V2F2ZXNDdXJyZW50UHJpY2UAAICJegEQZ2V0V2F2ZXNOZXdQcmljZQAAwI23AQEWZ2V0V2F2ZXMzTEN1cnJlbnRQcmljZQAAgJ9JARJnZXRXYXZlczNMTmV3UHJpY2UAAICJegQBaQEObWludFdhdmVzM0xfdjEAAwMJAQIhPQIJAJADAQgFAWkIcGF5bWVudHMAAQYJAAACCAkAkQMCCAUBaQhwYXltZW50cwAABmFtb3VudAAACQACAQIcMSBwYXltZW50IGhhcyB0byBiZSBhdHRhY2hlZAQHYWRkcmVzcwkApQgBCAUBaQZjYWxsZXIEEHN0YWJsZUNvaW5BbW91bnQICQCRAwIIBQFpCHBheW1lbnRzAAAGYW1vdW50BBRjb252ZXJ0ZWRXYXZlc0Ftb3VudAkAaAIJAGkCBRBzdGFibGVDb2luQW1vdW50CQEUZ2V0V2F2ZXNDdXJyZW50UHJpY2UAAIDC1y8ED3VzZXJXYXZlc0Ftb3VudAkBCmdldEJhbGFuY2UCAgVXQVZFUwgFAWkGY2FsbGVyAwkAZgIFD3VzZXJXYXZlc0Ftb3VudAUUY29udmVydGVkV2F2ZXNBbW91bnQEDWRlcG9zaXRSZXN1bHQJAPwHBAkBEUBleHRyTmF0aXZlKDEwNjIpAQIjM04zRG5WZmZuVXladHoyTVJiazVVN2dpTjExMldlbXBNTmQCBnN1cHBseQUDbmlsCQDMCAIJAQ9BdHRhY2hlZFBheW1lbnQCBQR1bml0BRRjb252ZXJ0ZWRXYXZlc0Ftb3VudAUDbmlsAwkAAAIFDWRlcG9zaXRSZXN1bHQFDWRlcG9zaXRSZXN1bHQKAQpyZXBlYXRGdW5jAgVhY2N1bQRuZXh0BAxib3Jyb3dSZXN1bHQJAPwHBAkBEUBleHRyTmF0aXZlKDEwNjIpAQIjM04zRG5WZmZuVXladHoyTVJiazVVN2dpTjExMldlbXBNTmQCBmJvcnJvdwkAzAgCAiwyNUZFcUVqUmtxSzZ5Q2tpVDdMejZTQVl6N2dVRkN0eGZDQ2huclZGRDVBVAkAzAgCBRBzdGFibGVDb2luQW1vdW50BQNuaWwFA25pbAMJAAACBQxib3Jyb3dSZXN1bHQFDGJvcnJvd1Jlc3VsdAkAZAIFBWFjY3VtBQRuZXh0CQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuBAVhcnJheQkAzAgCBRBzdGFibGVDb2luQW1vdW50CQDMCAIFEHN0YWJsZUNvaW5BbW91bnQJAMwIAgUQc3RhYmxlQ29pbkFtb3VudAUDbmlsBANyZXMKAAIkbAUFYXJyYXkKAAIkcwkAkAMBBQIkbAoABSRhY2MwAAAKAQUkZjBfMQICJGECJGkDCQBnAgUCJGkFAiRzBQIkYQkBCnJlcGVhdEZ1bmMCBQIkYQkAkQMCBQIkbAUCJGkKAQUkZjBfMgICJGECJGkDCQBnAgUCJGkFAiRzBQIkYQkAAgECE0xpc3Qgc2l6ZSBleGNlZWRzIDMJAQUkZjBfMgIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIFBSRhY2MwAAAAAQACAAMEE3JldHVybmVkVG9rZW5BbW91bnQJAGgCCQBpAgUDcmVzCQEWZ2V0V2F2ZXMzTEN1cnJlbnRQcmljZQAAwIQ9CQDMCAIJAQxJbnRlZ2VyRW50cnkCCQCsAgIFB2FkZHJlc3MCCl9nYXZlX1VTRE4FEHN0YWJsZUNvaW5BbW91bnQJAMwIAgkBDEludGVnZXJFbnRyeQIJAKwCAgUHYWRkcmVzcwIQX2RlcG9zaXRlZF9XQVZFUwUUY29udmVydGVkV2F2ZXNBbW91bnQJAMwIAgkBDEludGVnZXJFbnRyeQIJAKwCAgkArAICBQdhZGRyZXNzAgpfYm9ycm93ZWRfAiwyNUZFcUVqUmtxSzZ5Q2tpVDdMejZTQVl6N2dVRkN0eGZDQ2huclZGRDVBVAUDcmVzCQDMCAIJAQxJbnRlZ2VyRW50cnkCCQCsAgIFB2FkZHJlc3MCEV9yZWNlaXZlZF9XQVZFUzNMBRNyZXR1cm5lZFRva2VuQW1vdW50CQDMCAIJAQ5TY3JpcHRUcmFuc2ZlcgMIBQFpBmNhbGxlcgUTcmV0dXJuZWRUb2tlbkFtb3VudAEgd1cMNeo2lN9O0xXcegEAmbtNEEfXDIqrV+HrcYvguGQFA25pbAkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECHE5vdCBlbm91Z2ggV0FWRVMgdG8gZGVwb3NpdCEBaQEQcmVkZWVtV2F2ZXMzTF92MQADAwkBAiE9AgkAkAMBCAUBaQhwYXltZW50cwABBgkAAAIICQCRAwIIBQFpCHBheW1lbnRzAAAGYW1vdW50AAAJAAIBAhwxIHBheW1lbnQgaGFzIHRvIGJlIGF0dGFjaGVkBAdhZGRyZXNzCQClCAEIBQFpBmNhbGxlcgQLdG9rZW5BbW91bnQICQCRAwIIBQFpCHBheW1lbnRzAAAGYW1vdW50BBJyZXR1cm5lZFVTRE5BbW91bnQJAGgCBQt0b2tlbkFtb3VudAkAaQIJARJnZXRXYXZlczNMTmV3UHJpY2UAAMCEPQkAzAgCCQEMSW50ZWdlckVudHJ5AgkArAICBQdhZGRyZXNzAhFfcmVkZWVtZWRfV0FWRVMzTAULdG9rZW5BbW91bnQJAMwIAgkBDEludGVnZXJFbnRyeQIJAKwCAgUHYWRkcmVzcwIOX3JlY2VpdmVkX1VTRE4FEnJldHVybmVkVVNETkFtb3VudAkAzAgCCQEOU2NyaXB0VHJhbnNmZXIDCAUBaQZjYWxsZXIFEnJldHVybmVkVVNETkFtb3VudAEgD/IcEqzkxDya7EYaqyWosOy6BytGzG2IcvC14pJJAbQFA25pbAFpAQ5taW50V2F2ZXMzTF92MgADAwkBAiE9AgkAkAMBCAUBaQhwYXltZW50cwABBgkAAAIICQCRAwIIBQFpCHBheW1lbnRzAAAGYW1vdW50AAAJAAIBAhwxIHBheW1lbnQgaGFzIHRvIGJlIGF0dGFjaGVkBAdhZGRyZXNzCQClCAEIBQFpBmNhbGxlcgQQc3RhYmxlQ29pbkFtb3VudAgJAJEDAggFAWkIcGF5bWVudHMAAAZhbW91bnQEFGNvbnZlcnRlZFdhdmVzQW1vdW50CQBoAgkAaQIFEHN0YWJsZUNvaW5BbW91bnQAgIl6AIDC1y8ED3VzZXJXYXZlc0Ftb3VudAkBCmdldEJhbGFuY2UCAgVXQVZFUwgFAWkGY2FsbGVyBAliZWRpbmd1bmcJAGgCCQBlAgADAAEJARRnZXRXYXZlc0N1cnJlbnRQcmljZQADCQBnAgUQc3RhYmxlQ29pbkFtb3VudAUJYmVkaW5ndW5nBA1kZXBvc2l0UmVzdWx0CQD8BwQJARFAZXh0ck5hdGl2ZSgxMDYyKQECIzNOM0RuVmZmblV5WnR6Mk1SYms1VTdnaU4xMTJXZW1wTU5kAgZzdXBwbHkFA25pbAkAzAgCCQEPQXR0YWNoZWRQYXltZW50AgUEdW5pdAUUY29udmVydGVkV2F2ZXNBbW91bnQFA25pbAMJAAACBQ1kZXBvc2l0UmVzdWx0BQ1kZXBvc2l0UmVzdWx0CgEKcmVwZWF0RnVuYwIFYWNjdW0EbmV4dAQMYm9ycm93UmVzdWx0CQD8BwQJARFAZXh0ck5hdGl2ZSgxMDYyKQECIzNOM0RuVmZmblV5WnR6Mk1SYms1VTdnaU4xMTJXZW1wTU5kAgZib3Jyb3cJAMwIAgIsMjVGRXFFalJrcUs2eUNraVQ3THo2U0FZejdnVUZDdHhmQ0NobnJWRkQ1QVQJAMwIAgUQc3RhYmxlQ29pbkFtb3VudAUDbmlsBQNuaWwDCQAAAgUMYm9ycm93UmVzdWx0BQxib3Jyb3dSZXN1bHQJAGQCBQVhY2N1bQUEbmV4dAkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgQFYXJyYXkJAMwIAgUQc3RhYmxlQ29pbkFtb3VudAkAzAgCBRBzdGFibGVDb2luQW1vdW50CQDMCAIFEHN0YWJsZUNvaW5BbW91bnQFA25pbAQDcmVzCgACJGwFBWFycmF5CgACJHMJAJADAQUCJGwKAAUkYWNjMAAACgEFJGYwXzECAiRhAiRpAwkAZwIFAiRpBQIkcwUCJGEJAQpyZXBlYXRGdW5jAgUCJGEJAJEDAgUCJGwFAiRpCgEFJGYwXzICAiRhAiRpAwkAZwIFAiRpBQIkcwUCJGEJAAIBAhNMaXN0IHNpemUgZXhjZWVkcyAzCQEFJGYwXzICCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECBQUkYWNjMAAAAAEAAgADBA1ieVdhdmVzS2F1ZmVuCQBoAgkAaQIFA3JlcwkBFGdldFdhdmVzQ3VycmVudFByaWNlAACAwtcvCQDMCAIJAQxJbnRlZ2VyRW50cnkCCQCsAgIFB2FkZHJlc3MCCl9nYXZlX1VTRE4FEHN0YWJsZUNvaW5BbW91bnQJAMwIAgkBDEludGVnZXJFbnRyeQIJAKwCAgUHYWRkcmVzcwIQX2RlcG9zaXRlZF9XQVZFUwUUY29udmVydGVkV2F2ZXNBbW91bnQJAMwIAgkBDEludGVnZXJFbnRyeQIJAKwCAgkArAICBQdhZGRyZXNzAgpfYm9ycm93ZWRfAiwyNUZFcUVqUmtxSzZ5Q2tpVDdMejZTQVl6N2dVRkN0eGZDQ2huclZGRDVBVAUDcmVzCQDMCAIJAQxJbnRlZ2VyRW50cnkCCQCsAgIFB2FkZHJlc3MCEV9yZWNlaXZlZF9XQVZFUzNMAMCEPQkAzAgCCQEOU2NyaXB0VHJhbnNmZXIDCAUBaQZjYWxsZXIAwIQ9ASB3Vww16jaU307TFdx6AQCZu00QR9cMiqtX4etxi+C4ZAUDbmlsCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuCQACAQIcTm90IGVub3VnaCBXQVZFUyB0byBkZXBvc2l0IQFpARByZWRlZW1XYXZlczNMX3YyAAMDCQECIT0CCQCQAwEIBQFpCHBheW1lbnRzAAEGCQAAAggJAJEDAggFAWkIcGF5bWVudHMAAAZhbW91bnQAAAkAAgECHDEgcGF5bWVudCBoYXMgdG8gYmUgYXR0YWNoZWQEB2FkZHJlc3MJAKUIAQgFAWkGY2FsbGVyBAt0b2tlbkFtb3VudAAGBBJyZXR1cm5lZFVTRE5BbW91bnQJAGgCCQBlAgkAaAIFC3Rva2VuQW1vdW50CQBpAgkBEGdldFdhdmVzTmV3UHJpY2UAAMCEPQAEAMCEPQkAzAgCCQEMSW50ZWdlckVudHJ5AgkArAICBQdhZGRyZXNzAhFfcmVkZWVtZWRfV0FWRVMzTAULdG9rZW5BbW91bnQJAMwIAgkBDEludGVnZXJFbnRyeQIJAKwCAgUHYWRkcmVzcwIOX3JlY2VpdmVkX1VTRE4FEnJldHVybmVkVVNETkFtb3VudAkAzAgCCQEOU2NyaXB0VHJhbnNmZXIDCAUBaQZjYWxsZXIFEnJldHVybmVkVVNETkFtb3VudAEgD/IcEqzkxDya7EYaqyWosOy6BytGzG2IcvC14pJJAbQFA25pbAECdHgBBnZlcmlmeQAJAPQDAwgFAnR4CWJvZHlCeXRlcwkAkQMCCAUCdHgGcHJvb2ZzAAAIBQJ0eA9zZW5kZXJQdWJsaWNLZXkz3G7O", "height": 2703415, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: 8mN8xo49f5YZm8McR2TryfYc1YTqqk1ZxnHh4JoWtDbL Next: HExcxCk2Sadz9hQTGvPfRDis2evKqESvkLzztrYmPfTQ Diff:
OldNewDifferences
3030
3131
3232 func getWavesNewPrice () = 3000000
33-
34-
35-func getWaves1LCurrentPrice () = 1500000
3633
3734
3835 func getWaves3LCurrentPrice () = 1200000
163160 }
164161
165162
166-
167-@Callable(i)
168-func checkBalance (assetIdStr) = {
169- let address = i.caller
170- if ((assetIdStr == "WAVES"))
171- then [IntegerEntry("Waves Balance", wavesBalance(address).available)]
172- else [IntegerEntry("Asset Balance", assetBalance(address, fromBase58String(assetIdStr)))]
173- }
174-
175-
176163 @Verifier(tx)
177164 func verify () = sigVerify(tx.bodyBytes, tx.proofs[0], tx.senderPublicKey)
178165
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 6 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let waves1LId = Address(base58'CygdaJKZfxRrHyYMwkNdz9ZgSD5FpJLtk5s5B4q1DKV6')
55
66 let waves3LId = Address(base58'92rW5ucGkH84YeXLnLs8dMN1P7RAFocmR8zfBqUy4gPM')
77
88 let waves5LId = Address(base58'2qUH6Nh6cgC8dxj8fwH3bTJi261PNr5nMQKRbBXBuwmM')
99
1010 let arr = [1, 2, 3, 4, 5]
1111
1212 let arr2 = [1, 2]
1313
1414 let arr3 = [1, 2, 3]
1515
1616 func sum (a,b) = invoke(addressFromStringValue("3N3DnVffnUyZtz2MRbk5U7giN112WempMNd"), "borrow", ["25FEqEjRkqK6yCkiT7Lz6SAYz7gUFCtxfCChnrVFD5AT", 1000000], nil)
1717
1818
1919 func getBalance (assetIdStr,address) = if ((assetIdStr == "WAVES"))
2020 then wavesBalance(address).available
2121 else assetBalance(address, fromBase58String(assetIdStr))
2222
2323
2424 func getCurrentPrice (assetIdStr) = if ((assetIdStr == "WAVES"))
2525 then 2
2626 else throw("Error")
2727
2828
2929 func getWavesCurrentPrice () = 2000000
3030
3131
3232 func getWavesNewPrice () = 3000000
33-
34-
35-func getWaves1LCurrentPrice () = 1500000
3633
3734
3835 func getWaves3LCurrentPrice () = 1200000
3936
4037
4138 func getWaves3LNewPrice () = 2000000
4239
4340
4441 @Callable(i)
4542 func mintWaves3L_v1 () = if (if ((size(i.payments) != 1))
4643 then true
4744 else (i.payments[0].amount == 0))
4845 then throw("1 payment has to be attached")
4946 else {
5047 let address = toString(i.caller)
5148 let stableCoinAmount = i.payments[0].amount
5249 let convertedWavesAmount = ((stableCoinAmount / getWavesCurrentPrice()) * 100000000)
5350 let userWavesAmount = getBalance("WAVES", i.caller)
5451 if ((userWavesAmount > convertedWavesAmount))
5552 then {
5653 let depositResult = invoke(addressFromStringValue("3N3DnVffnUyZtz2MRbk5U7giN112WempMNd"), "supply", nil, [AttachedPayment(unit, convertedWavesAmount)])
5754 if ((depositResult == depositResult))
5855 then {
5956 func repeatFunc (accum,next) = {
6057 let borrowResult = invoke(addressFromStringValue("3N3DnVffnUyZtz2MRbk5U7giN112WempMNd"), "borrow", ["25FEqEjRkqK6yCkiT7Lz6SAYz7gUFCtxfCChnrVFD5AT", stableCoinAmount], nil)
6158 if ((borrowResult == borrowResult))
6259 then (accum + next)
6360 else throw("Strict value is not equal to itself.")
6461 }
6562
6663 let array = [stableCoinAmount, stableCoinAmount, stableCoinAmount]
6764 let res = {
6865 let $l = array
6966 let $s = size($l)
7067 let $acc0 = 0
7168 func $f0_1 ($a,$i) = if (($i >= $s))
7269 then $a
7370 else repeatFunc($a, $l[$i])
7471
7572 func $f0_2 ($a,$i) = if (($i >= $s))
7673 then $a
7774 else throw("List size exceeds 3")
7875
7976 $f0_2($f0_1($f0_1($f0_1($acc0, 0), 1), 2), 3)
8077 }
8178 let returnedTokenAmount = ((res / getWaves3LCurrentPrice()) * 1000000)
8279 [IntegerEntry((address + "_gave_USDN"), stableCoinAmount), IntegerEntry((address + "_deposited_WAVES"), convertedWavesAmount), IntegerEntry(((address + "_borrowed_") + "25FEqEjRkqK6yCkiT7Lz6SAYz7gUFCtxfCChnrVFD5AT"), res), IntegerEntry((address + "_received_WAVES3L"), returnedTokenAmount), ScriptTransfer(i.caller, returnedTokenAmount, base58'92rW5ucGkH84YeXLnLs8dMN1P7RAFocmR8zfBqUy4gPM')]
8380 }
8481 else throw("Strict value is not equal to itself.")
8582 }
8683 else throw("Not enough WAVES to deposit!")
8784 }
8885
8986
9087
9188 @Callable(i)
9289 func redeemWaves3L_v1 () = if (if ((size(i.payments) != 1))
9390 then true
9491 else (i.payments[0].amount == 0))
9592 then throw("1 payment has to be attached")
9693 else {
9794 let address = toString(i.caller)
9895 let tokenAmount = i.payments[0].amount
9996 let returnedUSDNAmount = (tokenAmount * (getWaves3LNewPrice() / 1000000))
10097 [IntegerEntry((address + "_redeemed_WAVES3L"), tokenAmount), IntegerEntry((address + "_received_USDN"), returnedUSDNAmount), ScriptTransfer(i.caller, returnedUSDNAmount, base58'25FEqEjRkqK6yCkiT7Lz6SAYz7gUFCtxfCChnrVFD5AT')]
10198 }
10299
103100
104101
105102 @Callable(i)
106103 func mintWaves3L_v2 () = if (if ((size(i.payments) != 1))
107104 then true
108105 else (i.payments[0].amount == 0))
109106 then throw("1 payment has to be attached")
110107 else {
111108 let address = toString(i.caller)
112109 let stableCoinAmount = i.payments[0].amount
113110 let convertedWavesAmount = ((stableCoinAmount / 2000000) * 100000000)
114111 let userWavesAmount = getBalance("WAVES", i.caller)
115112 let bedingung = ((3 - 1) * getWavesCurrentPrice())
116113 if ((stableCoinAmount >= bedingung))
117114 then {
118115 let depositResult = invoke(addressFromStringValue("3N3DnVffnUyZtz2MRbk5U7giN112WempMNd"), "supply", nil, [AttachedPayment(unit, convertedWavesAmount)])
119116 if ((depositResult == depositResult))
120117 then {
121118 func repeatFunc (accum,next) = {
122119 let borrowResult = invoke(addressFromStringValue("3N3DnVffnUyZtz2MRbk5U7giN112WempMNd"), "borrow", ["25FEqEjRkqK6yCkiT7Lz6SAYz7gUFCtxfCChnrVFD5AT", stableCoinAmount], nil)
123120 if ((borrowResult == borrowResult))
124121 then (accum + next)
125122 else throw("Strict value is not equal to itself.")
126123 }
127124
128125 let array = [stableCoinAmount, stableCoinAmount, stableCoinAmount]
129126 let res = {
130127 let $l = array
131128 let $s = size($l)
132129 let $acc0 = 0
133130 func $f0_1 ($a,$i) = if (($i >= $s))
134131 then $a
135132 else repeatFunc($a, $l[$i])
136133
137134 func $f0_2 ($a,$i) = if (($i >= $s))
138135 then $a
139136 else throw("List size exceeds 3")
140137
141138 $f0_2($f0_1($f0_1($f0_1($acc0, 0), 1), 2), 3)
142139 }
143140 let byWavesKaufen = ((res / getWavesCurrentPrice()) * 100000000)
144141 [IntegerEntry((address + "_gave_USDN"), stableCoinAmount), IntegerEntry((address + "_deposited_WAVES"), convertedWavesAmount), IntegerEntry(((address + "_borrowed_") + "25FEqEjRkqK6yCkiT7Lz6SAYz7gUFCtxfCChnrVFD5AT"), res), IntegerEntry((address + "_received_WAVES3L"), 1000000), ScriptTransfer(i.caller, 1000000, base58'92rW5ucGkH84YeXLnLs8dMN1P7RAFocmR8zfBqUy4gPM')]
145142 }
146143 else throw("Strict value is not equal to itself.")
147144 }
148145 else throw("Not enough WAVES to deposit!")
149146 }
150147
151148
152149
153150 @Callable(i)
154151 func redeemWaves3L_v2 () = if (if ((size(i.payments) != 1))
155152 then true
156153 else (i.payments[0].amount == 0))
157154 then throw("1 payment has to be attached")
158155 else {
159156 let address = toString(i.caller)
160157 let tokenAmount = 6
161158 let returnedUSDNAmount = (((tokenAmount * (getWavesNewPrice() / 1000000)) - 4) * 1000000)
162159 [IntegerEntry((address + "_redeemed_WAVES3L"), tokenAmount), IntegerEntry((address + "_received_USDN"), returnedUSDNAmount), ScriptTransfer(i.caller, returnedUSDNAmount, base58'25FEqEjRkqK6yCkiT7Lz6SAYz7gUFCtxfCChnrVFD5AT')]
163160 }
164161
165162
166-
167-@Callable(i)
168-func checkBalance (assetIdStr) = {
169- let address = i.caller
170- if ((assetIdStr == "WAVES"))
171- then [IntegerEntry("Waves Balance", wavesBalance(address).available)]
172- else [IntegerEntry("Asset Balance", assetBalance(address, fromBase58String(assetIdStr)))]
173- }
174-
175-
176163 @Verifier(tx)
177164 func verify () = sigVerify(tx.bodyBytes, tx.proofs[0], tx.senderPublicKey)
178165

github/deemru/w8io/873ac7e 
93.76 ms