tx · 6afjE2GJ9yrFhZynkCRYQMpTg4h59YgJNMsjumUhWxLP

3N4aFcsnij7Y1qGaQTLFNN2px73fHsXQHe9:  -0.03700000 Waves

2022.10.06 10:42 [2260170] smart account 3N4aFcsnij7Y1qGaQTLFNN2px73fHsXQHe9 > SELF 0.00000000 Waves

{ "type": 13, "id": "6afjE2GJ9yrFhZynkCRYQMpTg4h59YgJNMsjumUhWxLP", "fee": 3700000, "feeAssetId": null, "timestamp": 1665042166528, "version": 2, "chainId": 84, "sender": "3N4aFcsnij7Y1qGaQTLFNN2px73fHsXQHe9", "senderPublicKey": "9tSn5bcPwQj2eR4oxkB2oUpmEoBqc2on24JrNhCgFoTK", "proofs": [ "59uBek37EHVRJALjpxCxh6VNHXgWD5a81ia3gCK4qaBimNiskjqR3J2JpzpJem54yBCvLN3FM8fWE9UW1fabTezZ" ], "script": "base64:BgIQCAISAwoBCBIDCgEBEgASABQAC2tfaW5zdXJhbmNlAgtrX2luc3VyYW5jZQAUa19jb29yZGluYXRvckFkZHJlc3MCFGtfY29vcmRpbmF0b3JBZGRyZXNzAAVrX2FtbQIFa19hbW0AD2tfYWRtaW5fYWRkcmVzcwIPa19hZG1pbl9hZGRyZXNzABJrX2FkbWluX3B1YmxpY19rZXkCEmtfYWRtaW5fcHVibGljX2tleQANa19xdW90ZV9hc3NldAINa19xdW90ZV9hc3NldAAPa19xdW90ZV9zdGFraW5nAg9rX3F1b3RlX3N0YWtpbmcAEWtfbWFuYWdlcl9hZGRyZXNzAhFrX21hbmFnZXJfYWRkcmVzcwANa19pbml0aWFsaXplZAINa19pbml0aWFsaXplZAEOdG9Db21wb3NpdGVLZXkCBF9rZXkIX2FkZHJlc3MJAKwCAgkArAICBQRfa2V5AgFfBQhfYWRkcmVzcwEJaW5zdXJhbmNlAAkBC3ZhbHVlT3JFbHNlAgkAmggCBQR0aGlzBQtrX2luc3VyYW5jZQAAAQtjb29yZGluYXRvcgAJARN2YWx1ZU9yRXJyb3JNZXNzYWdlAgkApggBCQETdmFsdWVPckVycm9yTWVzc2FnZQIJAJ0IAgUEdGhpcwUUa19jb29yZGluYXRvckFkZHJlc3MCE0Nvb3JkaW5hdG9yIG5vdCBzZXQCE0Nvb3JkaW5hdG9yIG5vdCBzZXQBC2lzV2hpdGVsaXN0AQhfYWRkcmVzcwkBC3ZhbHVlT3JFbHNlAgkAmwgCCQELY29vcmRpbmF0b3IACQEOdG9Db21wb3NpdGVLZXkCBQVrX2FtbQUIX2FkZHJlc3MHAQtpbml0aWFsaXplZAAJAQt2YWx1ZU9yRWxzZQIJAJsIAgUEdGhpcwUNa19pbml0aWFsaXplZAcBDGFkbWluQWRkcmVzcwAJAKYIAQkBE3ZhbHVlT3JFcnJvck1lc3NhZ2UCCQCdCAIJAQtjb29yZGluYXRvcgAFD2tfYWRtaW5fYWRkcmVzcwIVQWRtaW4gYWRkcmVzcyBub3Qgc2V0AQ5hZG1pblB1YmxpY0tleQAJANkEAQkBE3ZhbHVlT3JFcnJvck1lc3NhZ2UCCQCdCAIJAQtjb29yZGluYXRvcgAFEmtfYWRtaW5fcHVibGljX2tleQIYQWRtaW4gcHVibGljIGtleSBub3Qgc2V0AQpxdW90ZUFzc2V0AAkA2QQBCQETdmFsdWVPckVycm9yTWVzc2FnZQIJAJ0IAgkBC2Nvb3JkaW5hdG9yAAUNa19xdW90ZV9hc3NldAITUXVvdGUgYXNzZXQgbm90IHNldAERcXVvdGVBc3NldFN0YWtpbmcACQETdmFsdWVPckVycm9yTWVzc2FnZQIJAKYIAQkBE3ZhbHVlT3JFcnJvck1lc3NhZ2UCCQCdCAIJAQtjb29yZGluYXRvcgAFD2tfcXVvdGVfc3Rha2luZwIbUXVvdGUgYXNzZXQgc3Rha2luZyBub3Qgc2V0AhtRdW90ZSBhc3NldCBzdGFraW5nIG5vdCBzZXQBDm1hbmFnZXJBZGRyZXNzAAkBE3ZhbHVlT3JFcnJvck1lc3NhZ2UCCQCmCAEJARN2YWx1ZU9yRXJyb3JNZXNzYWdlAgkAnQgCCQELY29vcmRpbmF0b3IABRFrX21hbmFnZXJfYWRkcmVzcwIPTWFuYWdlciBub3Qgc2V0Ag9NYW5hZ2VyIG5vdCBzZXQBD3VwZGF0ZUluc3VyYW5jZQEBaQkAzAgCCQEMSW50ZWdlckVudHJ5AgULa19pbnN1cmFuY2UFAWkFA25pbAQBaQEKaW5pdGlhbGl6ZQEMX2Nvb3JkaW5hdG9yAwkBC2luaXRpYWxpemVkAAkAAgECE0FscmVhZHkgaW5pdGlhbGl6ZWQJAMwIAgkBC1N0cmluZ0VudHJ5AgUUa19jb29yZGluYXRvckFkZHJlc3MFDF9jb29yZGluYXRvcgkAzAgCCQEMQm9vbGVhbkVudHJ5AgUNa19pbml0aWFsaXplZAYFA25pbAFpAQh3aXRoZHJhdwEHX2Ftb3VudAMDAwkBASEBCQELaXNXaGl0ZWxpc3QBCQClCAEIBQFpBmNhbGxlcgYJAQEhAQkBC2luaXRpYWxpemVkAAYJAGYCBQdfYW1vdW50CQEJaW5zdXJhbmNlAAkAAgEJAKwCAgkArAICCQCsAgICGEludmFsaWQgd2l0aGRyYXcgcGFyYW1zIAkApAMBBQdfYW1vdW50AgMgPiAJAKQDAQkBCWluc3VyYW5jZQAEB3Vuc3Rha2UJAPwHBAkBDm1hbmFnZXJBZGRyZXNzAAIId2l0aGRyYXcJAMwIAgkA2AQBCQEKcXVvdGVBc3NldAAJAMwIAgUHX2Ftb3VudAUDbmlsBQNuaWwDCQAAAgUHdW5zdGFrZQUHdW5zdGFrZQkAzggCCQEPdXBkYXRlSW5zdXJhbmNlAQkAZQIJAQlpbnN1cmFuY2UABQdfYW1vdW50CQDMCAIJAQ5TY3JpcHRUcmFuc2ZlcgMIBQFpBmNhbGxlcgUHX2Ftb3VudAkBCnF1b3RlQXNzZXQABQNuaWwJAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4BaQEHZGVwb3NpdAAEB19hbW91bnQICQCRAwIIBQFpCHBheW1lbnRzAAAGYW1vdW50AwMDCQECIT0CCAkAkQMCCAUBaQhwYXltZW50cwAAB2Fzc2V0SWQJAQpxdW90ZUFzc2V0AAYJAQEhAQkBC2luaXRpYWxpemVkAAYDCQEBIQEJAQtpc1doaXRlbGlzdAEJAKUIAQgFAWkGY2FsbGVyCQECIT0CCAUBaQZjYWxsZXIJAQxhZG1pbkFkZHJlc3MABwkAAgECFkludmFsaWQgZGVwb3NpdCBwYXJhbXMEBXN0YWtlCQD8BwQJAQ5tYW5hZ2VyQWRkcmVzcwACB2RlcG9zaXQFA25pbAkAzAgCCQEPQXR0YWNoZWRQYXltZW50AgkBCnF1b3RlQXNzZXQABQdfYW1vdW50BQNuaWwDCQAAAgUFc3Rha2UFBXN0YWtlCQEPdXBkYXRlSW5zdXJhbmNlAQkAZAIJAQlpbnN1cmFuY2UABQdfYW1vdW50CQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuAWkBEG1pZ3JhdGVMaXF1aWRpdHkABAZhbW91bnQJAQlpbnN1cmFuY2UABAd1bnN0YWtlCQD8BwQJARFxdW90ZUFzc2V0U3Rha2luZwACDnVubG9ja05ldXRyaW5vCQDMCAIFBmFtb3VudAkAzAgCCQDYBAEJAQpxdW90ZUFzc2V0AAUDbmlsBQNuaWwDCQAAAgUHdW5zdGFrZQUHdW5zdGFrZQQFc3Rha2UJAPwHBAkBDm1hbmFnZXJBZGRyZXNzAAIHZGVwb3NpdAUDbmlsCQDMCAIJAQ9BdHRhY2hlZFBheW1lbnQCCQEKcXVvdGVBc3NldAAFBmFtb3VudAUDbmlsAwkAAAIFBXN0YWtlBQVzdGFrZQUDbmlsCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuAQJ0eAEGdmVyaWZ5AAkA9AMDCAUCdHgJYm9keUJ5dGVzCQCRAwIIBQJ0eAZwcm9vZnMAAAkBDmFkbWluUHVibGljS2V5AJp4IHE=", "height": 2260170, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: AzwYdTNQpQJC2qTbgndBAFuYFZhPrpWnETmrS1Hrh2or Next: 2X8Wi8q659CMUgK4Uc9UTxRzqBFzq7MyFUkiw9Vag4Ad Diff:
OldNewDifferences
1-{-# STDLIB_VERSION 5 #-}
1+{-# STDLIB_VERSION 6 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let a = "k_insurance"
1515
1616 let g = "k_quote_staking"
1717
18-let h = "k_staking_address"
18+let h = "k_manager_address"
1919
2020 let i = "k_initialized"
2121
2525 func m () = valueOrElse(getInteger(this, a), 0)
2626
2727
28-func n () = valueOrErrorMessage(addressFromString(getStringValue(this, b)), "Coordinator not set")
28+func n () = valueOrErrorMessage(addressFromString(valueOrErrorMessage(getString(this, b), "Coordinator not set")), "Coordinator not set")
2929
3030
3131 func o (l) = valueOrElse(getBoolean(n(), j(c, l)), false)
3434 func p () = valueOrElse(getBoolean(this, i), false)
3535
3636
37-func q () = addressFromString(getStringValue(n(), d))
37+func q () = addressFromString(valueOrErrorMessage(getString(n(), d), "Admin address not set"))
3838
3939
40-func r () = fromBase58String(getStringValue(n(), e))
40+func r () = fromBase58String(valueOrErrorMessage(getString(n(), e), "Admin public key not set"))
4141
4242
43-func s () = fromBase58String(getStringValue(n(), f))
43+func s () = fromBase58String(valueOrErrorMessage(getString(n(), f), "Quote asset not set"))
4444
4545
46-func t () = valueOrErrorMessage(addressFromString(getStringValue(n(), g)), "Quote asset staking not set")
46+func t () = valueOrErrorMessage(addressFromString(valueOrErrorMessage(getString(n(), g), "Quote asset staking not set")), "Quote asset staking not set")
4747
4848
49-func u () = valueOrErrorMessage(addressFromString(getStringValue(n(), h)), "Insurance not set")
49+func u () = valueOrErrorMessage(addressFromString(valueOrErrorMessage(getString(n(), h), "Manager not set")), "Manager not set")
5050
5151
5252 func v (w) = [IntegerEntry(a, w)]
6767 else (y > m()))
6868 then throw(((("Invalid withdraw params " + toString(y)) + " > ") + toString(m())))
6969 else {
70- let z = invoke(t(), "unlockNeutrino", [y, toBase58String(s())], nil)
70+ let z = invoke(u(), "withdraw", [toBase58String(s()), y], nil)
7171 if ((z == z))
7272 then (v((m() - y)) ++ [ScriptTransfer(w.caller, y, s())])
7373 else throw("Strict value is not equal to itself.")
8787 else false)
8888 then throw("Invalid deposit params")
8989 else {
90- let A = invoke(t(), "lockNeutrino", nil, [AttachedPayment(s(), y)])
90+ let A = invoke(u(), "deposit", nil, [AttachedPayment(s(), y)])
9191 if ((A == A))
9292 then v((m() + y))
9393 else throw("Strict value is not equal to itself.")
9595 }
9696
9797
98-@Verifier(B)
99-func C () = sigVerify(B.bodyBytes, B.proofs[0], r())
98+
99+@Callable(w)
100+func migrateLiquidity () = {
101+ let B = m()
102+ let z = invoke(t(), "unlockNeutrino", [B, toBase58String(s())], nil)
103+ if ((z == z))
104+ then {
105+ let A = invoke(u(), "deposit", nil, [AttachedPayment(s(), B)])
106+ if ((A == A))
107+ then nil
108+ else throw("Strict value is not equal to itself.")
109+ }
110+ else throw("Strict value is not equal to itself.")
111+ }
112+
113+
114+@Verifier(C)
115+func D () = sigVerify(C.bodyBytes, C.proofs[0], r())
100116
Full:
OldNewDifferences
1-{-# STDLIB_VERSION 5 #-}
1+{-# 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
18-let h = "k_staking_address"
18+let h = "k_manager_address"
1919
2020 let i = "k_initialized"
2121
2222 func j (k,l) = ((k + "_") + l)
2323
2424
2525 func m () = valueOrElse(getInteger(this, a), 0)
2626
2727
28-func n () = valueOrErrorMessage(addressFromString(getStringValue(this, b)), "Coordinator not set")
28+func n () = valueOrErrorMessage(addressFromString(valueOrErrorMessage(getString(this, b), "Coordinator not set")), "Coordinator not set")
2929
3030
3131 func o (l) = valueOrElse(getBoolean(n(), j(c, l)), false)
3232
3333
3434 func p () = valueOrElse(getBoolean(this, i), false)
3535
3636
37-func q () = addressFromString(getStringValue(n(), d))
37+func q () = addressFromString(valueOrErrorMessage(getString(n(), d), "Admin address not set"))
3838
3939
40-func r () = fromBase58String(getStringValue(n(), e))
40+func r () = fromBase58String(valueOrErrorMessage(getString(n(), e), "Admin public key not set"))
4141
4242
43-func s () = fromBase58String(getStringValue(n(), f))
43+func s () = fromBase58String(valueOrErrorMessage(getString(n(), f), "Quote asset not set"))
4444
4545
46-func t () = valueOrErrorMessage(addressFromString(getStringValue(n(), g)), "Quote asset staking not set")
46+func t () = valueOrErrorMessage(addressFromString(valueOrErrorMessage(getString(n(), g), "Quote asset staking not set")), "Quote asset staking not set")
4747
4848
49-func u () = valueOrErrorMessage(addressFromString(getStringValue(n(), h)), "Insurance not set")
49+func u () = valueOrErrorMessage(addressFromString(valueOrErrorMessage(getString(n(), h), "Manager not set")), "Manager not set")
5050
5151
5252 func v (w) = [IntegerEntry(a, w)]
5353
5454
5555 @Callable(w)
5656 func initialize (x) = if (p())
5757 then throw("Already initialized")
5858 else [StringEntry(b, x), BooleanEntry(i, true)]
5959
6060
6161
6262 @Callable(w)
6363 func withdraw (y) = if (if (if (!(o(toString(w.caller))))
6464 then true
6565 else !(p()))
6666 then true
6767 else (y > m()))
6868 then throw(((("Invalid withdraw params " + toString(y)) + " > ") + toString(m())))
6969 else {
70- let z = invoke(t(), "unlockNeutrino", [y, toBase58String(s())], nil)
70+ let z = invoke(u(), "withdraw", [toBase58String(s()), y], nil)
7171 if ((z == z))
7272 then (v((m() - y)) ++ [ScriptTransfer(w.caller, y, s())])
7373 else throw("Strict value is not equal to itself.")
7474 }
7575
7676
7777
7878 @Callable(w)
7979 func deposit () = {
8080 let y = w.payments[0].amount
8181 if (if (if ((w.payments[0].assetId != s()))
8282 then true
8383 else !(p()))
8484 then true
8585 else if (!(o(toString(w.caller))))
8686 then (w.caller != q())
8787 else false)
8888 then throw("Invalid deposit params")
8989 else {
90- let A = invoke(t(), "lockNeutrino", nil, [AttachedPayment(s(), y)])
90+ let A = invoke(u(), "deposit", nil, [AttachedPayment(s(), y)])
9191 if ((A == A))
9292 then v((m() + y))
9393 else throw("Strict value is not equal to itself.")
9494 }
9595 }
9696
9797
98-@Verifier(B)
99-func C () = sigVerify(B.bodyBytes, B.proofs[0], r())
98+
99+@Callable(w)
100+func migrateLiquidity () = {
101+ let B = m()
102+ let z = invoke(t(), "unlockNeutrino", [B, toBase58String(s())], nil)
103+ if ((z == z))
104+ then {
105+ let A = invoke(u(), "deposit", nil, [AttachedPayment(s(), B)])
106+ if ((A == A))
107+ then nil
108+ else throw("Strict value is not equal to itself.")
109+ }
110+ else throw("Strict value is not equal to itself.")
111+ }
112+
113+
114+@Verifier(C)
115+func D () = sigVerify(C.bodyBytes, C.proofs[0], r())
100116

github/deemru/w8io/c3f4982 
35.52 ms