tx · E2vKMkohJmUV57Qp1ShDoCseSkxr2582Kpgmn9mPPMRW

3MzhpxAKSeCcAYnwEQzd4v8xhuxEa7H79mA:  -0.03700000 Waves

2022.11.25 19:31 [2332866] smart account 3MzhpxAKSeCcAYnwEQzd4v8xhuxEa7H79mA > SELF 0.00000000 Waves

{ "type": 13, "id": "E2vKMkohJmUV57Qp1ShDoCseSkxr2582Kpgmn9mPPMRW", "fee": 3700000, "feeAssetId": null, "timestamp": 1669393860880, "version": 2, "chainId": 84, "sender": "3MzhpxAKSeCcAYnwEQzd4v8xhuxEa7H79mA", "senderPublicKey": "A4jJoT1GfErs6Zq9p6jQrT43kuzivydaycZfLbuBCAhq", "proofs": [ "2EkoYhwTvEoJaeGD84UW7pBNMyyHnjNBjRWnPCSLJvRhASzGrifeNeu2oDZSyAJ2TFScEtdXhHo5LYvZAQzTmmcD" ], "script": "base64:BgIQCAISAwoBCBIDCgEBEgASABYAC2tfaW5zdXJhbmNlAgtrX2luc3VyYW5jZQAUa19jb29yZGluYXRvckFkZHJlc3MCFGtfY29vcmRpbmF0b3JBZGRyZXNzAAVrX2FtbQIFa19hbW0AD2tfYWRtaW5fYWRkcmVzcwIPa19hZG1pbl9hZGRyZXNzABJrX2FkbWluX3B1YmxpY19rZXkCEmtfYWRtaW5fcHVibGljX2tleQANa19xdW90ZV9hc3NldAINa19xdW90ZV9hc3NldAAPa19xdW90ZV9zdGFraW5nAg9rX3F1b3RlX3N0YWtpbmcAEWtfbWFuYWdlcl9hZGRyZXNzAhFrX21hbmFnZXJfYWRkcmVzcwAUa19jb2xsYXRlcmFsX2FkZHJlc3MCFGtfY29sbGF0ZXJhbF9hZGRyZXNzAA1rX2luaXRpYWxpemVkAg1rX2luaXRpYWxpemVkAQ50b0NvbXBvc2l0ZUtleQIEX2tleQhfYWRkcmVzcwkArAICCQCsAgIFBF9rZXkCAV8FCF9hZGRyZXNzAQlpbnN1cmFuY2UACQELdmFsdWVPckVsc2UCCQCaCAIFBHRoaXMFC2tfaW5zdXJhbmNlAAABC2Nvb3JkaW5hdG9yAAkBE3ZhbHVlT3JFcnJvck1lc3NhZ2UCCQCmCAEJARN2YWx1ZU9yRXJyb3JNZXNzYWdlAgkAnQgCBQR0aGlzBRRrX2Nvb3JkaW5hdG9yQWRkcmVzcwITQ29vcmRpbmF0b3Igbm90IHNldAITQ29vcmRpbmF0b3Igbm90IHNldAELaXNXaGl0ZWxpc3QBCF9hZGRyZXNzCQELdmFsdWVPckVsc2UCCQCbCAIJAQtjb29yZGluYXRvcgAJAQ50b0NvbXBvc2l0ZUtleQIFBWtfYW1tBQhfYWRkcmVzcwcBC2luaXRpYWxpemVkAAkBC3ZhbHVlT3JFbHNlAgkAmwgCBQR0aGlzBQ1rX2luaXRpYWxpemVkBwEMYWRtaW5BZGRyZXNzAAkApggBCQETdmFsdWVPckVycm9yTWVzc2FnZQIJAJ0IAgkBC2Nvb3JkaW5hdG9yAAUPa19hZG1pbl9hZGRyZXNzAhVBZG1pbiBhZGRyZXNzIG5vdCBzZXQBDmFkbWluUHVibGljS2V5AAkA2QQBCQETdmFsdWVPckVycm9yTWVzc2FnZQIJAJ0IAgkBC2Nvb3JkaW5hdG9yAAUSa19hZG1pbl9wdWJsaWNfa2V5AhhBZG1pbiBwdWJsaWMga2V5IG5vdCBzZXQBCnF1b3RlQXNzZXQACQDZBAEJARN2YWx1ZU9yRXJyb3JNZXNzYWdlAgkAnQgCCQELY29vcmRpbmF0b3IABQ1rX3F1b3RlX2Fzc2V0AhNRdW90ZSBhc3NldCBub3Qgc2V0ARFxdW90ZUFzc2V0U3Rha2luZwAJARN2YWx1ZU9yRXJyb3JNZXNzYWdlAgkApggBCQETdmFsdWVPckVycm9yTWVzc2FnZQIJAJ0IAgkBC2Nvb3JkaW5hdG9yAAUPa19xdW90ZV9zdGFraW5nAhtRdW90ZSBhc3NldCBzdGFraW5nIG5vdCBzZXQCG1F1b3RlIGFzc2V0IHN0YWtpbmcgbm90IHNldAEObWFuYWdlckFkZHJlc3MACQETdmFsdWVPckVycm9yTWVzc2FnZQIJAKYIAQkBE3ZhbHVlT3JFcnJvck1lc3NhZ2UCCQCdCAIJAQtjb29yZGluYXRvcgAFEWtfbWFuYWdlcl9hZGRyZXNzAg9NYW5hZ2VyIG5vdCBzZXQCD01hbmFnZXIgbm90IHNldAERY29sbGF0ZXJhbEFkZHJlc3MACQETdmFsdWVPckVycm9yTWVzc2FnZQIJAKYIAQkBE3ZhbHVlT3JFcnJvck1lc3NhZ2UCCQCdCAIJAQtjb29yZGluYXRvcgAFFGtfY29sbGF0ZXJhbF9hZGRyZXNzAhJDb2xsYXRlcmFsIG5vdCBzZXQCEkNvbGxhdGVyYWwgbm90IHNldAEPdXBkYXRlSW5zdXJhbmNlAQFpCQDMCAIJAQxJbnRlZ2VyRW50cnkCBQtrX2luc3VyYW5jZQUBaQUDbmlsBAFpAQppbml0aWFsaXplAQxfY29vcmRpbmF0b3IDCQELaW5pdGlhbGl6ZWQACQACAQITQWxyZWFkeSBpbml0aWFsaXplZAkAzAgCCQELU3RyaW5nRW50cnkCBRRrX2Nvb3JkaW5hdG9yQWRkcmVzcwUMX2Nvb3JkaW5hdG9yCQDMCAIJAQxCb29sZWFuRW50cnkCBQ1rX2luaXRpYWxpemVkBgUDbmlsAWkBCHdpdGhkcmF3AQdfYW1vdW50AwMDCQEBIQEDCQELaXNXaGl0ZWxpc3QBCQClCAEIBQFpBmNhbGxlcgYJAAACCAUBaQZjYWxsZXIJARFjb2xsYXRlcmFsQWRkcmVzcwAGCQEBIQEJAQtpbml0aWFsaXplZAAGCQBmAgUHX2Ftb3VudAkBCWluc3VyYW5jZQAJAAIBCQCsAgIJAKwCAgkArAICAiRJbnZhbGlkIHdpdGhkcmF3IHBhcmFtcyAoaW5zdXJhbmNlKSAJAKQDAQUHX2Ftb3VudAIDID4gCQCkAwEJAQlpbnN1cmFuY2UABAd1bnN0YWtlCQD8BwQJAQ5tYW5hZ2VyQWRkcmVzcwACCHdpdGhkcmF3CQDMCAIJANgEAQkBCnF1b3RlQXNzZXQACQDMCAIFB19hbW91bnQFA25pbAUDbmlsAwkAAAIFB3Vuc3Rha2UFB3Vuc3Rha2UJAM4IAgkBD3VwZGF0ZUluc3VyYW5jZQEJAGUCCQEJaW5zdXJhbmNlAAUHX2Ftb3VudAkAzAgCCQEOU2NyaXB0VHJhbnNmZXIDCAUBaQZjYWxsZXIFB19hbW91bnQJAQpxdW90ZUFzc2V0AAUDbmlsCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuAWkBB2RlcG9zaXQABAdfYW1vdW50CAkAkQMCCAUBaQhwYXltZW50cwAABmFtb3VudAMDAwkBAiE9AggJAJEDAggFAWkIcGF5bWVudHMAAAdhc3NldElkCQEKcXVvdGVBc3NldAAGCQEBIQEJAQtpbml0aWFsaXplZAAGCQEBIQEDAwkBC2lzV2hpdGVsaXN0AQkApQgBCAUBaQZjYWxsZXIGCQAAAggFAWkGY2FsbGVyCQERY29sbGF0ZXJhbEFkZHJlc3MABgkAAAIIBQFpBmNhbGxlcgkBDGFkbWluQWRkcmVzcwAJAAIBAiJJbnZhbGlkIGRlcG9zaXQgcGFyYW1zIChpbnN1cmFuY2UpBAVzdGFrZQkA/AcECQEObWFuYWdlckFkZHJlc3MAAgdkZXBvc2l0BQNuaWwJAMwIAgkBD0F0dGFjaGVkUGF5bWVudAIJAQpxdW90ZUFzc2V0AAUHX2Ftb3VudAUDbmlsAwkAAAIFBXN0YWtlBQVzdGFrZQkBD3VwZGF0ZUluc3VyYW5jZQEJAGQCCQEJaW5zdXJhbmNlAAUHX2Ftb3VudAkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgFpARBtaWdyYXRlTGlxdWlkaXR5AAQGYW1vdW50CQEJaW5zdXJhbmNlAAQHdW5zdGFrZQkA/AcECQERcXVvdGVBc3NldFN0YWtpbmcAAg51bmxvY2tOZXV0cmlubwkAzAgCBQZhbW91bnQJAMwIAgkA2AQBCQEKcXVvdGVBc3NldAAFA25pbAUDbmlsAwkAAAIFB3Vuc3Rha2UFB3Vuc3Rha2UEBXN0YWtlCQD8BwQJAQ5tYW5hZ2VyQWRkcmVzcwACB2RlcG9zaXQFA25pbAkAzAgCCQEPQXR0YWNoZWRQYXltZW50AgkBCnF1b3RlQXNzZXQABQZhbW91bnQFA25pbAMJAAACBQVzdGFrZQUFc3Rha2UFA25pbAkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgECdHgBBnZlcmlmeQAJAPQDAwgFAnR4CWJvZHlCeXRlcwkAkQMCCAUCdHgGcHJvb2ZzAAAJAQ5hZG1pblB1YmxpY0tleQBuR7Tn", "height": 2332866, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: AWCT2y1W1AWX5PvSkp7Kv9i4w9qrTiYmM2a8Daeh3UGM Next: none Diff:
OldNewDifferences
9494 else (y.caller == w()))
9595 then true
9696 else (y.caller == r())))
97- then throw("Invalid deposit params")
97+ then throw("Invalid deposit params (insurance)")
9898 else {
9999 let C = invoke(v(), "deposit", nil, [AttachedPayment(t(), A)])
100100 if ((C == C))
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 6 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let a = "k_insurance"
55
66 let b = "k_coordinatorAddress"
77
88 let c = "k_amm"
99
1010 let d = "k_admin_address"
1111
1212 let e = "k_admin_public_key"
1313
1414 let f = "k_quote_asset"
1515
1616 let g = "k_quote_staking"
1717
1818 let h = "k_manager_address"
1919
2020 let i = "k_collateral_address"
2121
2222 let j = "k_initialized"
2323
2424 func k (l,m) = ((l + "_") + m)
2525
2626
2727 func n () = valueOrElse(getInteger(this, a), 0)
2828
2929
3030 func o () = valueOrErrorMessage(addressFromString(valueOrErrorMessage(getString(this, b), "Coordinator not set")), "Coordinator not set")
3131
3232
3333 func p (m) = valueOrElse(getBoolean(o(), k(c, m)), false)
3434
3535
3636 func q () = valueOrElse(getBoolean(this, j), false)
3737
3838
3939 func r () = addressFromString(valueOrErrorMessage(getString(o(), d), "Admin address not set"))
4040
4141
4242 func s () = fromBase58String(valueOrErrorMessage(getString(o(), e), "Admin public key not set"))
4343
4444
4545 func t () = fromBase58String(valueOrErrorMessage(getString(o(), f), "Quote asset not set"))
4646
4747
4848 func u () = valueOrErrorMessage(addressFromString(valueOrErrorMessage(getString(o(), g), "Quote asset staking not set")), "Quote asset staking not set")
4949
5050
5151 func v () = valueOrErrorMessage(addressFromString(valueOrErrorMessage(getString(o(), h), "Manager not set")), "Manager not set")
5252
5353
5454 func w () = valueOrErrorMessage(addressFromString(valueOrErrorMessage(getString(o(), i), "Collateral not set")), "Collateral not set")
5555
5656
5757 func x (y) = [IntegerEntry(a, y)]
5858
5959
6060 @Callable(y)
6161 func initialize (z) = if (q())
6262 then throw("Already initialized")
6363 else [StringEntry(b, z), BooleanEntry(j, true)]
6464
6565
6666
6767 @Callable(y)
6868 func withdraw (A) = if (if (if (!(if (p(toString(y.caller)))
6969 then true
7070 else (y.caller == w())))
7171 then true
7272 else !(q()))
7373 then true
7474 else (A > n()))
7575 then throw(((("Invalid withdraw params (insurance) " + toString(A)) + " > ") + toString(n())))
7676 else {
7777 let B = invoke(v(), "withdraw", [toBase58String(t()), A], nil)
7878 if ((B == B))
7979 then (x((n() - A)) ++ [ScriptTransfer(y.caller, A, t())])
8080 else throw("Strict value is not equal to itself.")
8181 }
8282
8383
8484
8585 @Callable(y)
8686 func deposit () = {
8787 let A = y.payments[0].amount
8888 if (if (if ((y.payments[0].assetId != t()))
8989 then true
9090 else !(q()))
9191 then true
9292 else !(if (if (p(toString(y.caller)))
9393 then true
9494 else (y.caller == w()))
9595 then true
9696 else (y.caller == r())))
97- then throw("Invalid deposit params")
97+ then throw("Invalid deposit params (insurance)")
9898 else {
9999 let C = invoke(v(), "deposit", nil, [AttachedPayment(t(), A)])
100100 if ((C == C))
101101 then x((n() + A))
102102 else throw("Strict value is not equal to itself.")
103103 }
104104 }
105105
106106
107107
108108 @Callable(y)
109109 func migrateLiquidity () = {
110110 let D = n()
111111 let B = invoke(u(), "unlockNeutrino", [D, toBase58String(t())], nil)
112112 if ((B == B))
113113 then {
114114 let C = invoke(v(), "deposit", nil, [AttachedPayment(t(), D)])
115115 if ((C == C))
116116 then nil
117117 else throw("Strict value is not equal to itself.")
118118 }
119119 else throw("Strict value is not equal to itself.")
120120 }
121121
122122
123123 @Verifier(E)
124124 func F () = sigVerify(E.bodyBytes, E.proofs[0], s())
125125

github/deemru/w8io/873ac7e 
22.45 ms