tx · 4T3gTomtqU3JT5KDW6U14t2FfTaPPViKgFhFg6A5Pe94

3MrkN6oPxUnKSE6dWPcZpCKvxMop2J6RZnU:  -0.01300000 Waves

2023.05.10 13:15 [2571655] smart account 3MrkN6oPxUnKSE6dWPcZpCKvxMop2J6RZnU > SELF 0.00000000 Waves

{ "type": 13, "id": "4T3gTomtqU3JT5KDW6U14t2FfTaPPViKgFhFg6A5Pe94", "fee": 1300000, "feeAssetId": null, "timestamp": 1683713766952, "version": 2, "chainId": 84, "sender": "3MrkN6oPxUnKSE6dWPcZpCKvxMop2J6RZnU", "senderPublicKey": "6rcTS9tjxpHUnn2Q3Qsx6QVR9pQBBPt3id4bgSfbQ5Uo", "proofs": [ "5tjBWG8oMuZvZpbQfwv7FyAuRHinM1BzotP6zuk2XLR46z5onALEJKJWkWRCQQhohkXTKgn1kx8r5xz7uG6yfWxu" ], "script": "base64:AAIFAAAAAAAAALsIAiITa2V5TWFuYWdlclB1YmxpY0tleSIWa2V5TWFuYWdlclZhdWx0QWRkcmVzcyIcZ2V0TWFuYWdlclZhdWx0QWRkcmVzc09yVGhpcyIHJG1hdGNoMCIBcyIWbWFuYWdlclB1YmxpY0tleU9yVW5pdCITbWFuYWdlclZhdWx0QWRkcmVzcyILbXVzdE1hbmFnZXIiAWkiAnBkIgJwayICdHgiBnZlcmlmeSIPdGFyZ2V0UHVibGljS2V5AAAABQEAAAABYQAAAAACAAAAFCVzX19tYW5hZ2VyUHVibGljS2V5AQAAAAFiAAAAAAIAAAAXJXNfX21hbmFnZXJWYXVsdEFkZHJlc3MBAAAAAWMAAAAABAAAAAFkCQAEIgAAAAEJAQAAAAFiAAAAAAMJAAABAAAAAgUAAAABZAIAAAAGU3RyaW5nBAAAAAFlBQAAAAFkCQEAAAARQGV4dHJOYXRpdmUoMTA2MikAAAABBQAAAAFlBQAAAAR0aGlzAQAAAAFmAAAAAAQAAAABZwkBAAAAAWMAAAAABAAAAAFkCQAEHQAAAAIFAAAAAWcJAQAAAAFhAAAAAAMJAAABAAAAAgUAAAABZAIAAAAGU3RyaW5nBAAAAAFlBQAAAAFkCQACWQAAAAEFAAAAAWUDCQAAAQAAAAIFAAAAAWQCAAAABFVuaXQFAAAABHVuaXQJAAACAAAAAQIAAAALTWF0Y2ggZXJyb3IBAAAAAWgAAAABAAAAAWkEAAAAAWoJAAACAAAAAQIAAAARUGVybWlzc2lvbiBkZW5pZWQEAAAAAWQJAQAAAAFmAAAAAAMJAAABAAAAAgUAAAABZAIAAAAKQnl0ZVZlY3RvcgQAAAABawUAAAABZAMJAAAAAAAAAggFAAAAAWkAAAAPY2FsbGVyUHVibGljS2V5BQAAAAFrBgUAAAABagMJAAABAAAAAgUAAAABZAIAAAAEVW5pdAMJAAAAAAAAAggFAAAAAWkAAAAGY2FsbGVyBQAAAAR0aGlzBgUAAAABagkAAAIAAAABAgAAAAtNYXRjaCBlcnJvcgAAAAAAAAABAAAAAWwBAAAAAW0AAAAABAAAAAFuBAAAAAFkCQEAAAABZgAAAAADCQAAAQAAAAIFAAAAAWQCAAAACkJ5dGVWZWN0b3IEAAAAAWsFAAAAAWQFAAAAAWsDCQAAAQAAAAIFAAAAAWQCAAAABFVuaXQIBQAAAAFsAAAAD3NlbmRlclB1YmxpY0tleQkAAAIAAAABAgAAAAtNYXRjaCBlcnJvcgkAAfQAAAADCAUAAAABbAAAAAlib2R5Qnl0ZXMJAAGRAAAAAggFAAAAAWwAAAAGcHJvb2ZzAAAAAAAAAAAABQAAAAFuM9K62w==", "height": 2571655, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: DnoMgAVcekedEUj6xfMJeARr9g2kuUNik525HBmgQvHV Next: none Diff:
OldNewDifferences
77 func keyManagerVaultAddress () = "%s__managerVaultAddress"
88
99
10-func getManagerAddressOrFail () = addressFromStringValue(getStringValue(keyManagerVaultAddress()))
10+func getManagerVaultAddressOrThis () = match getString(keyManagerVaultAddress()) {
11+ case s: String =>
12+ addressFromStringValue(s)
13+ case _ =>
14+ this
15+}
1116
1217
1318 func managerPublicKeyOrUnit () = {
14- let managerVaultAddress = getManagerAddressOrFail()
19+ let managerVaultAddress = getManagerVaultAddressOrThis()
1520 match getString(managerVaultAddress, keyManagerPublicKey()) {
1621 case s: String =>
1722 fromBase58String(s)
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 5 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 func keyManagerPublicKey () = "%s__managerPublicKey"
55
66
77 func keyManagerVaultAddress () = "%s__managerVaultAddress"
88
99
10-func getManagerAddressOrFail () = addressFromStringValue(getStringValue(keyManagerVaultAddress()))
10+func getManagerVaultAddressOrThis () = match getString(keyManagerVaultAddress()) {
11+ case s: String =>
12+ addressFromStringValue(s)
13+ case _ =>
14+ this
15+}
1116
1217
1318 func managerPublicKeyOrUnit () = {
14- let managerVaultAddress = getManagerAddressOrFail()
19+ let managerVaultAddress = getManagerVaultAddressOrThis()
1520 match getString(managerVaultAddress, keyManagerPublicKey()) {
1621 case s: String =>
1722 fromBase58String(s)
1823 case _: Unit =>
1924 unit
2025 case _ =>
2126 throw("Match error")
2227 }
2328 }
2429
2530
2631 func mustManager (i) = {
2732 let pd = throw("Permission denied")
2833 match managerPublicKeyOrUnit() {
2934 case pk: ByteVector =>
3035 if ((i.callerPublicKey == pk))
3136 then true
3237 else pd
3338 case _: Unit =>
3439 if ((i.caller == this))
3540 then true
3641 else pd
3742 case _ =>
3843 throw("Match error")
3944 }
4045 }
4146
4247
4348
4449 @Verifier(tx)
4550 func verify () = {
4651 let targetPublicKey = match managerPublicKeyOrUnit() {
4752 case pk: ByteVector =>
4853 pk
4954 case _: Unit =>
5055 tx.senderPublicKey
5156 case _ =>
5257 throw("Match error")
5358 }
5459 sigVerify(tx.bodyBytes, tx.proofs[0], targetPublicKey)
5560 }
5661

github/deemru/w8io/169f3d6 
45.21 ms