tx · Q19Lomps4Zwk9cGQmM5Mk8SNuMdovXLRggVKXPENX98

3P3qCUfvbDUjRnjrfM5XFMrXrzxxiad94Ez:  -0.01000000 Waves

2023.04.27 13:59 [3618446] smart account 3P3qCUfvbDUjRnjrfM5XFMrXrzxxiad94Ez > SELF 0.00000000 Waves

{ "type": 13, "id": "Q19Lomps4Zwk9cGQmM5Mk8SNuMdovXLRggVKXPENX98", "fee": 1000000, "feeAssetId": null, "timestamp": 1682593216788, "version": 2, "chainId": 87, "sender": "3P3qCUfvbDUjRnjrfM5XFMrXrzxxiad94Ez", "senderPublicKey": "3zaQerEjh4SK1xhin9zzs5qr337aLRFhz7z1ckjFGhMz", "proofs": [ "33bb8uC7HfFMRjkcqYGhciUETsAedfLaUJ3z8CS47FtgFkacWwc4RBenkGL1sBz8NBJ2QkpCK96jV2PdZR4vbs7a" ], "script": "base64:BgLHBAgCEgMKAQESAwoBARIDCgEIIg5mcmVlX3RvX2JvcnJvbSINVVNETl9BU1NFVF9JRCIEYm9zcyIOYWRtaW5QdWJsaWNLZXkiDFdYX1NXQVBfREFQUCIJYXNzZXRzX2luIgpnZXRCYWxhbmNlIgdhc3NldElkIgckbWF0Y2gwIgFiIghnZXRCYXNlMSIEZGF0YSIGcF9kYXRhIgFhIgJhMiIHYXNzZXRJbiIIYW1vdW50SW4iCGdldEJhc2UyIgJwMSIBdCINZ2V0QXNzZXRCeXRlcyIHc3dhcF93eCIBcCIFYXNzZXQiACIGYW1vdW50IgRjYWxsIglzd2FwX3N3b3AiBHN3YXAiC3N3YXBfcHV6emxlIghhc3NldE91dCIGdWNoZWNrIgJpZCIBaCILZmluYWxpemVfb2siBmNhbGxlciIDbmIzIgxuZXdfYW1vdW50SW4iAWkiBGFtbnQiCmN1cnJlbnRCYWwiCmRhdGFfYXJyYXkiCyR0MDI5MTIyOTY4IgskdDAyOTczMzAxMSICdDEiCyR0MDMwMTYzMDU0IgJwMiICdDIiCyR0MDMwNTkzMDk3IgJwMyICdDMiEmFtb3VudF9iZWZfYXNzZXRJbiIRYW1vdW50X2JlZl9hc3NldDEiBXN3YXAxIgJuYiIRYW1vdW50X2JlZl9hc3NldDIiBXN3YXAyIgNuYjIiFWFtb3VudF9iZWZfYmFzZV9hc3NldCIFc3dhcDMiCHRyZXNob2xkIgNpZHUiAnR4IgZ2ZXJpZnkPAAFhCQERQGV4dHJOYXRpdmUoMTA2MikBAiMzUEc3Q0h2QmF0SHBDaHdtOHJlSDc0d2ZFd2sxUEhjOFJxeQABYgEgtiYpwwT1zlORpA5LdSQvZIxRsfrfr1QpvUjSHSqyqtEAAWMJARFAZXh0ck5hdGl2ZSgxMDYyKQECIzNQUkU1S0g5b1BHZkZQczdmR25RY0o0d05zaEVEVVBHajF0AAFkASCv/x58doefXfwer5+x7Fznjj3iPlshsuAGcU0W/5sVbQABZQkBB0FkZHJlc3MBARoBVy4qNTWxDbfxeT7ht0bQnnRSTXsx0IOuBgABZgkAzAgCAixERzJ4RmtQZER3S1VvQmt6R0FoUXRMcFNHemZYTGlDWVBFemVLSDJBZDI0cAUDbmlsAQFnAQFoBAFpBQFoAwkAAQIFAWkCCkJ5dGVWZWN0b3IEAWoFAWkJAPAHAgUEdGhpcwUBaggJAO8HAQUEdGhpcwlhdmFpbGFibGUBAWsBAWwEAW0JALwJAgUBbAIBXwQBbgkAkQMCBQFtAAAEAW8JAJEDAgUBbQABBAFwCQCRAwIFAWYJAQV2YWx1ZQEJALYJAQkAkQMCBQFtAAIEAXEJAJEDAgUBbQADCQCWCgQFAW4FAW8FAXAFAXEBAXIBAWwEAW0JALUJAgUBbAIBXwQBcwkAkQMCBQFtAAAEAXQJAJEDAgUBbQABCQCUCgIFAXMFAXQBAXUBAWgDCQAAAgUBaAIFV0FWRVMFBHVuaXQJANkEAQUBaAEBdgQBdwF4AXoBbgQBQQkA/AcEBQFlAgRzd2FwCQDMCAIAAQkAzAgCBQFuCQDMCAIJAKUIAQUEdGhpcwUDbmlsCQDMCAIJAQ9BdHRhY2hlZFBheW1lbnQCCQEBdQEFAXgFAXoFA25pbAMJAAACBQFBBQFBBQNuaWwJAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4BAUIDAXcBeAF6BAFDCQD8BwQJAQdBZGRyZXNzAQkA2QQBBQF3AghleGNoYW5nZQkAzAgCAAEFA25pbAkAzAgCCQEPQXR0YWNoZWRQYXltZW50AgkBAXUBBQF4BQF6BQNuaWwDCQAAAgUBQwUBQwUDbmlsCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuAQFEBAF3AXgBegFFBAFDCQD8BwQJAQdBZGRyZXNzAQkA2QQBBQF3AgRzd2FwCQDMCAIFAUUJAMwIAgABBQNuaWwJAMwIAgkBD0F0dGFjaGVkUGF5bWVudAIJAQF1AQUBeAUBegUDbmlsAwkAAAIFAUMFAUMFA25pbAkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgEBRgEBRwQBaQkA6QcBBQFHAwkAAQIFAWkCA0ludAQBSAUBaQUBSAAAAQFJBAFKAUsBTAFwCQDMCAIJAQ5TY3JpcHRUcmFuc2ZlcgMFAUoJAGUCBQFLBQFMCQEBdQEFAXAFA25pbAMBTQEGYm9ycm93AQFOAwkBASEBCQEPY29udGFpbnNFbGVtZW50AgkAzAgCBQFhCQDMCAIFAWMJAMwIAgUEdGhpcwUDbmlsCAUBTQZjYWxsZXIJAAIBAh55b3UgYXJlIG5vdCBhbGxvd2VkIHRvIGJvcnJvdyEEAU8JAQFnAQUBYgMJAGYCBQFOBQFPCQACAQIcWW91IGNhbm5ub3QgYm9ycm93IHRoYXQgbXVjaAkAzAgCCQEOU2NyaXB0VHJhbnNmZXIDCAUBTQZjYWxsZXIFAU4FAWIFA25pbAFNAQtzZXRUcmVzaG9sZAEBTgMJAQEhAQkBD2NvbnRhaW5zRWxlbWVudAIJAMwIAgUBYQkAzAgCBQFjCQDMCAIFBHRoaXMFA25pbAgFAU0GY2FsbGVyCQACAQIfeW91IGFyZSBub3QgYWxsb3dlZCB0byBkbyB0aGF0IQkAzAgCCQEMSW50ZWdlckVudHJ5AgIIdHJlc2hvbGQFAU4FA25pbAFNAQF5AQFsAwMJAQIhPQIIBQFNBmNhbGxlcgUEdGhpcwkBAiE9AggFAU0GY2FsbGVyBQFjBwkAAgECG3lvdSBhcmUgbm90IGFsbG93ZWQgdG8gYXJiIQQBUAkAvAkCBQFsAgF8BAFRCQEBawEJAJEDAgUBUAAABAFuCAUBUQJfMQQBbwgFAVECXzIEAXAIBQFRAl8zBAFxCAUBUQJfNAQBUgkBAXIBCQCRAwIFAVAAAQQBcwgFAVICXzEEAVMIBQFSAl8yBAFUCQEBcgEJAJEDAgUBUAACBAFVCAUBVAJfMQQBVggFAVQCXzIEAVcJAQFyAQkAkQMCBQFQAAMEAVgIBQFXAl8xBAFZCAUBVwJfMgQBWgkBAWcBCQEBdQEFAXADCQAAAgUBWgUBWgQBTAMJAGYCCQEFdmFsdWUBCQC2CQEFAXEFAVoFAVoJAQV2YWx1ZQEJALYJAQUBcQMJAAACBQFMBQFMBAJhYQkBAWcBCQEBdQEFAW4DCQAAAgUCYWEFAmFhBAJhYgMJAAACBQFTAgFXCQEBdgQFAXMFAXAFAUwFAW4DCQAAAgUBUwIBUwkBAUIDBQFzBQFwBQFMCQEBRAQFAXMFAXAFAUwFAW4DCQAAAgUCYWIFAmFiBAJhYwkAZQIJAQFnAQkBAXUBBQFuBQJhYQMJAAACBQJhYwUCYWMEAmFkCQEBZwEJAQF1AQUBbwMJAAACBQJhZAUCYWQEAmFlAwkAAAIFAVYCAVcJAQF2BAUBVQUBbgUCYWMFAW8DCQAAAgUBVgIBUwkBAUIDBQFVBQFuBQJhYwkBAUQEBQFVBQFuBQJhYwUBbwMJAAACBQJhZQUCYWUEAmFmCQBlAgkBAWcBCQEBdQEFAW8FAmFkAwkAAAIFAmFmBQJhZgQCYWcJAQFnAQkBAXUBBQFwAwkAAAIFAmFnBQJhZwQCYWgDCQAAAgUBWQIBVwkBAXYEBQFYBQFvBQJhZgUBcAMJAAACBQFZAgFTCQEBQgMFAVgFAW8FAmFmCQEBRAQFAVgFAW8FAmFmBQFwAwkAAAIFAmFoBQJhaAQBSwkAZQIJAQFnAQkBAXUBBQFwBQJhZwMJAAACBQFLBQFLBAJhaQkBC3ZhbHVlT3JFbHNlAgkAmggCBQR0aGlzAgh0cmVzaG9sZADwkwkEAmFqAwkAZgIJALECAQkAkQMCBQFQAAQAAQkAtQkCCQCRAwIFAVAABAIBLQUDbmlsAwkAZgIJAJADAQUCYWoAAAQBSAkBAUYBCQDZBAEJAJEDAgUCYWoAAAMDCQECIT0CBQFIAAAJAGYCBQFLCQBkAgUBTAUCYWkHCQEBSQQIBQFNBmNhbGxlcgUBSwUBTAUBcAUDbmlsAwkAZgIFAUsJAGQCBQFMBQJhaQkBAUkECAUBTQZjYWxsZXIFAUsFAUwFAXAJAAIBCQCsAgIJAKwCAgkArAICCQCsAgIJAKwCAgkArAICCQCsAgIJAKwCAgkArAICAhJvcmlnaW4gYW1vdW50SW4gPSAFAXECESwgbmV3X2Ftb3VudEluID0gCQCkAwEFAUwCDCwgbmV3QmFsXzE6IAkApAMBBQJhYwIMLCBuZXdCYWxfMjogCQCkAwEFAmFmAgwsIG5ld0JhbF8zOiAJAKQDAQUBSwkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgECYWsBAmFsAAMJAMgTAwgFAmFrCWJvZHlCeXRlcwkAkQMCCAUCYWsGcHJvb2ZzAAAIBQJhaw9zZW5kZXJQdWJsaWNLZXkGCQDIEwMIBQJhawlib2R5Qnl0ZXMJAJEDAggFAmFrBnByb29mcwAABQFkQx1CeQ==", "height": 3618446, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: BvXAYTTTwyzbA99EujMhLZaRm5kW4JXuZFcdknLZJBfB Next: DTusfQbCJbnMd8wivFy14Y1DiqHZxEkFzAUYbxZcspfU Diff:
OldNewDifferences
7979 func finalize_ok (caller,nb3,new_amountIn,assetIn) = [ScriptTransfer(caller, (nb3 - new_amountIn), getAssetBytes(assetIn))]
8080
8181
82-func finalize_ko (amountIn,new_amountIn,nb,nb2,nb3) = throw(((((((((("origin amountIn = " + amountIn) + ", new_amountIn = ") + toString(new_amountIn)) + ", newBal_1: ") + toString(nb)) + ", newBal_2: ") + toString(nb2)) + ", newBal_3: ") + toString(nb3)))
83-
84-
8582 @Callable(i)
8683 func borrow (amnt) = if (!(containsElement([free_to_borrom, boss, this], i.caller)))
8784 then throw("you are not allowed to borrow!")
108105 then throw("you are not allowed to arb!")
109106 else {
110107 let data_array = split_4C(data, "|")
111- let $t031863242 = getBase1(data_array[0])
112- let a = $t031863242._1
113- let a2 = $t031863242._2
114- let assetIn = $t031863242._3
115- let amountIn = $t031863242._4
116- let $t032473285 = getBase2(data_array[1])
117- let p1 = $t032473285._1
118- let t1 = $t032473285._2
119- let $t032903328 = getBase2(data_array[2])
120- let p2 = $t032903328._1
121- let t2 = $t032903328._2
122- let $t033333371 = getBase2(data_array[3])
123- let p3 = $t033333371._1
124- let t3 = $t033333371._2
108+ let $t029122968 = getBase1(data_array[0])
109+ let a = $t029122968._1
110+ let a2 = $t029122968._2
111+ let assetIn = $t029122968._3
112+ let amountIn = $t029122968._4
113+ let $t029733011 = getBase2(data_array[1])
114+ let p1 = $t029733011._1
115+ let t1 = $t029733011._2
116+ let $t030163054 = getBase2(data_array[2])
117+ let p2 = $t030163054._1
118+ let t2 = $t030163054._2
119+ let $t030593097 = getBase2(data_array[3])
120+ let p3 = $t030593097._1
121+ let t3 = $t030593097._2
125122 let amount_bef_assetIn = getBalance(getAssetBytes(assetIn))
126123 if ((amount_bef_assetIn == amount_bef_assetIn))
127124 then {
180177 then (nb3 > (new_amountIn + treshold))
181178 else false)
182179 then finalize_ok(i.caller, nb3, new_amountIn, assetIn)
183- else finalize_ko(amountIn, new_amountIn, nb, nb2, nb3)
180+ else nil
184181 }
185182 else if ((nb3 > (new_amountIn + treshold)))
186183 then finalize_ok(i.caller, nb3, new_amountIn, assetIn)
187- else finalize_ko(amountIn, new_amountIn, nb, nb2, nb3)
184+ else throw(((((((((("origin amountIn = " + amountIn) + ", new_amountIn = ") + toString(new_amountIn)) + ", newBal_1: ") + toString(nb)) + ", newBal_2: ") + toString(nb2)) + ", newBal_3: ") + toString(nb3)))
188185 }
189186 else throw("Strict value is not equal to itself.")
190187 }
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 6 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let free_to_borrom = addressFromStringValue("3PG7CHvBatHpChwm8reH74wfEwk1PHc8Rqy")
55
66 let USDN_ASSET_ID = base58'DG2xFkPdDwKUoBkzGAhQtLpSGzfXLiCYPEzeKH2Ad24p'
77
88 let boss = addressFromStringValue("3PRE5KH9oPGfFPs7fGnQcJ4wNshEDUPGj1t")
99
1010 let adminPublicKey = base58'Cr1ybL2JGg9GwJHA2JwqxBPfSW6Q7Jg4HvNrsEiCsHu6'
1111
1212 let WX_SWAP_DAPP = Address(base58'3P68zNiufsu1viZpu1aY3cdahRRKcvV5N93')
1313
1414 let assets_in = ["DG2xFkPdDwKUoBkzGAhQtLpSGzfXLiCYPEzeKH2Ad24p"]
1515
1616 func getBalance (assetId) = match assetId {
1717 case b: ByteVector =>
1818 assetBalance(this, b)
1919 case _ =>
2020 wavesBalance(this).available
2121 }
2222
2323
2424 func getBase1 (data) = {
2525 let p_data = split_4C(data, "_")
2626 let a = p_data[0]
2727 let a2 = p_data[1]
2828 let assetIn = assets_in[value(parseInt(p_data[2]))]
2929 let amountIn = p_data[3]
3030 $Tuple4(a, a2, assetIn, amountIn)
3131 }
3232
3333
3434 func getBase2 (data) = {
3535 let p_data = split(data, "_")
3636 let p1 = p_data[0]
3737 let t = p_data[1]
3838 $Tuple2(p1, t)
3939 }
4040
4141
4242 func getAssetBytes (assetId) = if ((assetId == "WAVES"))
4343 then unit
4444 else fromBase58String(assetId)
4545
4646
4747 func swap_wx (p,asset,amount,a) = {
4848 let call = invoke(WX_SWAP_DAPP, "swap", [1, a, toString(this)], [AttachedPayment(getAssetBytes(asset), amount)])
4949 if ((call == call))
5050 then nil
5151 else throw("Strict value is not equal to itself.")
5252 }
5353
5454
5555 func swap_swop (p,asset,amount) = {
5656 let swap = invoke(Address(fromBase58String(p)), "exchange", [1], [AttachedPayment(getAssetBytes(asset), amount)])
5757 if ((swap == swap))
5858 then nil
5959 else throw("Strict value is not equal to itself.")
6060 }
6161
6262
6363 func swap_puzzle (p,asset,amount,assetOut) = {
6464 let swap = invoke(Address(fromBase58String(p)), "swap", [assetOut, 1], [AttachedPayment(getAssetBytes(asset), amount)])
6565 if ((swap == swap))
6666 then nil
6767 else throw("Strict value is not equal to itself.")
6868 }
6969
7070
7171 func ucheck (id) = match transactionHeightById(id) {
7272 case h: Int =>
7373 h
7474 case _ =>
7575 0
7676 }
7777
7878
7979 func finalize_ok (caller,nb3,new_amountIn,assetIn) = [ScriptTransfer(caller, (nb3 - new_amountIn), getAssetBytes(assetIn))]
8080
8181
82-func finalize_ko (amountIn,new_amountIn,nb,nb2,nb3) = throw(((((((((("origin amountIn = " + amountIn) + ", new_amountIn = ") + toString(new_amountIn)) + ", newBal_1: ") + toString(nb)) + ", newBal_2: ") + toString(nb2)) + ", newBal_3: ") + toString(nb3)))
83-
84-
8582 @Callable(i)
8683 func borrow (amnt) = if (!(containsElement([free_to_borrom, boss, this], i.caller)))
8784 then throw("you are not allowed to borrow!")
8885 else {
8986 let currentBal = getBalance(USDN_ASSET_ID)
9087 if ((amnt > currentBal))
9188 then throw("You cannnot borrow that much")
9289 else [ScriptTransfer(i.caller, amnt, USDN_ASSET_ID)]
9390 }
9491
9592
9693
9794 @Callable(i)
9895 func setTreshold (amnt) = if (!(containsElement([free_to_borrom, boss, this], i.caller)))
9996 then throw("you are not allowed to do that!")
10097 else [IntegerEntry("treshold", amnt)]
10198
10299
103100
104101 @Callable(i)
105102 func y (data) = if (if ((i.caller != this))
106103 then (i.caller != boss)
107104 else false)
108105 then throw("you are not allowed to arb!")
109106 else {
110107 let data_array = split_4C(data, "|")
111- let $t031863242 = getBase1(data_array[0])
112- let a = $t031863242._1
113- let a2 = $t031863242._2
114- let assetIn = $t031863242._3
115- let amountIn = $t031863242._4
116- let $t032473285 = getBase2(data_array[1])
117- let p1 = $t032473285._1
118- let t1 = $t032473285._2
119- let $t032903328 = getBase2(data_array[2])
120- let p2 = $t032903328._1
121- let t2 = $t032903328._2
122- let $t033333371 = getBase2(data_array[3])
123- let p3 = $t033333371._1
124- let t3 = $t033333371._2
108+ let $t029122968 = getBase1(data_array[0])
109+ let a = $t029122968._1
110+ let a2 = $t029122968._2
111+ let assetIn = $t029122968._3
112+ let amountIn = $t029122968._4
113+ let $t029733011 = getBase2(data_array[1])
114+ let p1 = $t029733011._1
115+ let t1 = $t029733011._2
116+ let $t030163054 = getBase2(data_array[2])
117+ let p2 = $t030163054._1
118+ let t2 = $t030163054._2
119+ let $t030593097 = getBase2(data_array[3])
120+ let p3 = $t030593097._1
121+ let t3 = $t030593097._2
125122 let amount_bef_assetIn = getBalance(getAssetBytes(assetIn))
126123 if ((amount_bef_assetIn == amount_bef_assetIn))
127124 then {
128125 let new_amountIn = if ((value(parseInt(amountIn)) > amount_bef_assetIn))
129126 then amount_bef_assetIn
130127 else value(parseInt(amountIn))
131128 if ((new_amountIn == new_amountIn))
132129 then {
133130 let amount_bef_asset1 = getBalance(getAssetBytes(a))
134131 if ((amount_bef_asset1 == amount_bef_asset1))
135132 then {
136133 let swap1 = if ((t1 == "W"))
137134 then swap_wx(p1, assetIn, new_amountIn, a)
138135 else if ((t1 == "S"))
139136 then swap_swop(p1, assetIn, new_amountIn)
140137 else swap_puzzle(p1, assetIn, new_amountIn, a)
141138 if ((swap1 == swap1))
142139 then {
143140 let nb = (getBalance(getAssetBytes(a)) - amount_bef_asset1)
144141 if ((nb == nb))
145142 then {
146143 let amount_bef_asset2 = getBalance(getAssetBytes(a2))
147144 if ((amount_bef_asset2 == amount_bef_asset2))
148145 then {
149146 let swap2 = if ((t2 == "W"))
150147 then swap_wx(p2, a, nb, a2)
151148 else if ((t2 == "S"))
152149 then swap_swop(p2, a, nb)
153150 else swap_puzzle(p2, a, nb, a2)
154151 if ((swap2 == swap2))
155152 then {
156153 let nb2 = (getBalance(getAssetBytes(a2)) - amount_bef_asset2)
157154 if ((nb2 == nb2))
158155 then {
159156 let amount_bef_base_asset = getBalance(getAssetBytes(assetIn))
160157 if ((amount_bef_base_asset == amount_bef_base_asset))
161158 then {
162159 let swap3 = if ((t3 == "W"))
163160 then swap_wx(p3, a2, nb2, assetIn)
164161 else if ((t3 == "S"))
165162 then swap_swop(p3, a2, nb2)
166163 else swap_puzzle(p3, a2, nb2, assetIn)
167164 if ((swap3 == swap3))
168165 then {
169166 let nb3 = (getBalance(getAssetBytes(assetIn)) - amount_bef_base_asset)
170167 if ((nb3 == nb3))
171168 then {
172169 let treshold = valueOrElse(getInteger(this, "treshold"), 150000)
173170 let idu = if ((size(data_array[4]) > 1))
174171 then split(data_array[4], "-")
175172 else nil
176173 if ((size(idu) > 0))
177174 then {
178175 let h = ucheck(fromBase58String(idu[0]))
179176 if (if ((h != 0))
180177 then (nb3 > (new_amountIn + treshold))
181178 else false)
182179 then finalize_ok(i.caller, nb3, new_amountIn, assetIn)
183- else finalize_ko(amountIn, new_amountIn, nb, nb2, nb3)
180+ else nil
184181 }
185182 else if ((nb3 > (new_amountIn + treshold)))
186183 then finalize_ok(i.caller, nb3, new_amountIn, assetIn)
187- else finalize_ko(amountIn, new_amountIn, nb, nb2, nb3)
184+ else throw(((((((((("origin amountIn = " + amountIn) + ", new_amountIn = ") + toString(new_amountIn)) + ", newBal_1: ") + toString(nb)) + ", newBal_2: ") + toString(nb2)) + ", newBal_3: ") + toString(nb3)))
188185 }
189186 else throw("Strict value is not equal to itself.")
190187 }
191188 else throw("Strict value is not equal to itself.")
192189 }
193190 else throw("Strict value is not equal to itself.")
194191 }
195192 else throw("Strict value is not equal to itself.")
196193 }
197194 else throw("Strict value is not equal to itself.")
198195 }
199196 else throw("Strict value is not equal to itself.")
200197 }
201198 else throw("Strict value is not equal to itself.")
202199 }
203200 else throw("Strict value is not equal to itself.")
204201 }
205202 else throw("Strict value is not equal to itself.")
206203 }
207204 else throw("Strict value is not equal to itself.")
208205 }
209206 else throw("Strict value is not equal to itself.")
210207 }
211208
212209
213210 @Verifier(tx)
214211 func verify () = if (sigVerify_128Kb(tx.bodyBytes, tx.proofs[0], tx.senderPublicKey))
215212 then true
216213 else sigVerify_128Kb(tx.bodyBytes, tx.proofs[0], adminPublicKey)
217214

github/deemru/w8io/3ef1775 
53.92 ms