tx · FByajLwuZZed7QksQzHzogJvrqGg3SzHDTkKwdaMb5yW

3MwCoAS5bvfAqbHYxLYWEw3brqeo6SeoB7B:  -0.01400000 Waves

2022.04.11 15:50 [2003953] smart account 3MwCoAS5bvfAqbHYxLYWEw3brqeo6SeoB7B > SELF 0.00000000 Waves

{ "type": 13, "id": "FByajLwuZZed7QksQzHzogJvrqGg3SzHDTkKwdaMb5yW", "fee": 1400000, "feeAssetId": null, "timestamp": 1649681482388, "version": 1, "sender": "3MwCoAS5bvfAqbHYxLYWEw3brqeo6SeoB7B", "senderPublicKey": "5WJHJ8krgJY8GZvHds2k2fCTXmaYgW3NCnj2ifYZEhVV", "proofs": [ "4R8fFm2VHcVJsBsChZvJhbeLyMTk9RUtp5moriSeGBm8S8k9nRwAsJyMY7gC2uC8L6MroPNR6zCFdJANvLdsf7BN" ], "script": "base64:AAIFAAAAAAAAAAkIAhIDCgEIEgAAAAAFAQAAABNrZXlNYW5hZ2VyUHVibGljS2V5AAAAAAIAAAAUJXNfX21hbmFnZXJQdWJsaWNLZXkBAAAAGmtleVBlbmRpbmdNYW5hZ2VyUHVibGljS2V5AAAAAAIAAAAbJXNfX3BlbmRpbmdNYW5hZ2VyUHVibGljS2V5AQAAABZtYW5hZ2VyUHVibGljS2V5T3JVbml0AAAAAAQAAAAHJG1hdGNoMAkABCIAAAABCQEAAAATa2V5TWFuYWdlclB1YmxpY0tleQAAAAADCQAAAQAAAAIFAAAAByRtYXRjaDACAAAABlN0cmluZwQAAAABcwUAAAAHJG1hdGNoMAkAAlkAAAABBQAAAAFzAwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAARVbml0BQAAAAR1bml0CQAAAgAAAAECAAAAC01hdGNoIGVycm9yAQAAAB1wZW5kaW5nTWFuYWdlclB1YmxpY0tleU9yVW5pdAAAAAAEAAAAByRtYXRjaDAJAAQiAAAAAQkBAAAAGmtleVBlbmRpbmdNYW5hZ2VyUHVibGljS2V5AAAAAAMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAAGU3RyaW5nBAAAAAFzBQAAAAckbWF0Y2gwCQACWQAAAAEFAAAAAXMDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAABFVuaXQFAAAABHVuaXQJAAACAAAAAQIAAAALTWF0Y2ggZXJyb3IBAAAAC211c3RNYW5hZ2VyAAAAAQAAAAFpBAAAAAJwZAkAAAIAAAABAgAAABFQZXJtaXNzaW9uIGRlbmllZAQAAAAHJG1hdGNoMAkBAAAAFm1hbmFnZXJQdWJsaWNLZXlPclVuaXQAAAAAAwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAApCeXRlVmVjdG9yBAAAAAJwawUAAAAHJG1hdGNoMAMJAAAAAAAAAggFAAAAAWkAAAAPY2FsbGVyUHVibGljS2V5BQAAAAJwawYFAAAAAnBkAwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAARVbml0AwkAAAAAAAACCAUAAAABaQAAAAZjYWxsZXIFAAAABHRoaXMGBQAAAAJwZAkAAAIAAAABAgAAAAtNYXRjaCBlcnJvcgAAAAIAAAABaQEAAAAKc2V0TWFuYWdlcgAAAAEAAAAXcGVuZGluZ01hbmFnZXJQdWJsaWNLZXkEAAAAC2NoZWNrQ2FsbGVyCQEAAAALbXVzdE1hbmFnZXIAAAABBQAAAAFpAwkAAAAAAAACBQAAAAtjaGVja0NhbGxlcgUAAAALY2hlY2tDYWxsZXIEAAAAFWNoZWNrTWFuYWdlclB1YmxpY0tleQkAAlkAAAABBQAAABdwZW5kaW5nTWFuYWdlclB1YmxpY0tleQMJAAAAAAAAAgUAAAAVY2hlY2tNYW5hZ2VyUHVibGljS2V5BQAAABVjaGVja01hbmFnZXJQdWJsaWNLZXkJAARMAAAAAgkBAAAAC1N0cmluZ0VudHJ5AAAAAgkBAAAAGmtleVBlbmRpbmdNYW5hZ2VyUHVibGljS2V5AAAAAAUAAAAXcGVuZGluZ01hbmFnZXJQdWJsaWNLZXkFAAAAA25pbAkAAAIAAAABAgAAACRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAACAAAAAQIAAAAkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuAAAAAWkBAAAADmNvbmZpcm1NYW5hZ2VyAAAAAAQAAAACcG0JAQAAAB1wZW5kaW5nTWFuYWdlclB1YmxpY0tleU9yVW5pdAAAAAAEAAAABWhhc1BNAwkBAAAACWlzRGVmaW5lZAAAAAEFAAAAAnBtBgkAAAIAAAABAgAAABJObyBwZW5kaW5nIG1hbmFnZXIDCQAAAAAAAAIFAAAABWhhc1BNBQAAAAVoYXNQTQQAAAAHY2hlY2tQTQMJAAAAAAAAAggFAAAAAWkAAAAPY2FsbGVyUHVibGljS2V5CQEAAAAFdmFsdWUAAAABBQAAAAJwbQYJAAACAAAAAQIAAAAbWW91IGFyZSBub3QgcGVuZGluZyBtYW5hZ2VyAwkAAAAAAAACBQAAAAdjaGVja1BNBQAAAAdjaGVja1BNCQAETAAAAAIJAQAAAAtTdHJpbmdFbnRyeQAAAAIJAQAAABNrZXlNYW5hZ2VyUHVibGljS2V5AAAAAAkAAlgAAAABCQEAAAAFdmFsdWUAAAABBQAAAAJwbQkABEwAAAACCQEAAAALRGVsZXRlRW50cnkAAAABCQEAAAAaa2V5UGVuZGluZ01hbmFnZXJQdWJsaWNLZXkAAAAABQAAAANuaWwJAAACAAAAAQIAAAAkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuCQAAAgAAAAECAAAAJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgAAAAEAAAACdHgBAAAABnZlcmlmeQAAAAAEAAAAD3RhcmdldFB1YmxpY0tleQQAAAAHJG1hdGNoMAkBAAAAFm1hbmFnZXJQdWJsaWNLZXlPclVuaXQAAAAAAwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAApCeXRlVmVjdG9yBAAAAAJwawUAAAAHJG1hdGNoMAUAAAACcGsDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAABFVuaXQIBQAAAAJ0eAAAAA9zZW5kZXJQdWJsaWNLZXkJAAACAAAAAQIAAAALTWF0Y2ggZXJyb3IJAAH0AAAAAwgFAAAAAnR4AAAACWJvZHlCeXRlcwkAAZEAAAACCAUAAAACdHgAAAAGcHJvb2ZzAAAAAAAAAAAABQAAAA90YXJnZXRQdWJsaWNLZXmq8YBh", "chainId": 84, "height": 2003953, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: A9zziW6CT9DBA2A94fgjUETGwzxHFd57u2FZu4GEBiEf Next: FaNMkWeVzAskzZKACwB6iXYqvharbCJay8kvNsqVbnkg Full:
OldNewDifferences
11 {-# STDLIB_VERSION 5 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 func keyManagerPublicKey () = "%s__managerPublicKey"
55
66
77 func keyPendingManagerPublicKey () = "%s__pendingManagerPublicKey"
88
99
1010 func managerPublicKeyOrUnit () = match getString(keyManagerPublicKey()) {
1111 case s: String =>
1212 fromBase58String(s)
1313 case _: Unit =>
1414 unit
1515 case _ =>
1616 throw("Match error")
1717 }
1818
1919
2020 func pendingManagerPublicKeyOrUnit () = match getString(keyPendingManagerPublicKey()) {
2121 case s: String =>
2222 fromBase58String(s)
2323 case _: Unit =>
2424 unit
2525 case _ =>
2626 throw("Match error")
2727 }
2828
2929
3030 func mustManager (i) = {
3131 let pd = throw("Permission denied")
3232 match managerPublicKeyOrUnit() {
3333 case pk: ByteVector =>
3434 if ((i.callerPublicKey == pk))
3535 then true
3636 else pd
3737 case _: Unit =>
3838 if ((i.caller == this))
3939 then true
4040 else pd
4141 case _ =>
4242 throw("Match error")
4343 }
4444 }
4545
4646
4747 @Callable(i)
4848 func setManager (pendingManagerPublicKey) = {
4949 let checkCaller = mustManager(i)
5050 if ((checkCaller == checkCaller))
5151 then {
5252 let checkManagerPublicKey = fromBase58String(pendingManagerPublicKey)
5353 if ((checkManagerPublicKey == checkManagerPublicKey))
5454 then [StringEntry(keyPendingManagerPublicKey(), pendingManagerPublicKey)]
5555 else throw("Strict value is not equal to itself.")
5656 }
5757 else throw("Strict value is not equal to itself.")
5858 }
5959
6060
6161
6262 @Callable(i)
6363 func confirmManager () = {
6464 let pm = pendingManagerPublicKeyOrUnit()
6565 let hasPM = if (isDefined(pm))
6666 then true
6767 else throw("No pending manager")
6868 if ((hasPM == hasPM))
6969 then {
7070 let checkPM = if ((i.callerPublicKey == value(pm)))
7171 then true
7272 else throw("You are not pending manager")
7373 if ((checkPM == checkPM))
7474 then [StringEntry(keyManagerPublicKey(), toBase58String(value(pm))), DeleteEntry(keyPendingManagerPublicKey())]
7575 else throw("Strict value is not equal to itself.")
7676 }
7777 else throw("Strict value is not equal to itself.")
7878 }
7979
8080
8181 @Verifier(tx)
8282 func verify () = {
8383 let targetPublicKey = match managerPublicKeyOrUnit() {
8484 case pk: ByteVector =>
8585 pk
8686 case _: Unit =>
8787 tx.senderPublicKey
8888 case _ =>
8989 throw("Match error")
9090 }
9191 sigVerify(tx.bodyBytes, tx.proofs[0], targetPublicKey)
9292 }
9393

github/deemru/w8io/873ac7e 
20.24 ms