tx · 2iENBcQDdDGtr3rHVfWZUoNYGF4WqLPB1xSVRjpcrsvd

3MvrXJVzDMDcshazxn88FybxHV2JvWQBxTc:  -0.01100000 Waves

2022.11.30 17:16 [2339943] smart account 3MvrXJVzDMDcshazxn88FybxHV2JvWQBxTc > SELF 0.00000000 Waves

{ "type": 13, "id": "2iENBcQDdDGtr3rHVfWZUoNYGF4WqLPB1xSVRjpcrsvd", "fee": 1100000, "feeAssetId": null, "timestamp": 1669817773500, "version": 2, "chainId": 84, "sender": "3MvrXJVzDMDcshazxn88FybxHV2JvWQBxTc", "senderPublicKey": "Fq8P5ctrS7PNTX37bWWxvnwoB7C2FaNySZWnRmgPUaDH", "proofs": [ "65a4M45kxzvcTMBpGhj854Q8VM5aV7u5rGryxcpVek55CoXQRyCpwvceLWYbEgrxfemSo7wFhcyWCap1wb7CCCs6" ], "script": "base64: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AAAUTGlzdCBzaXplIGV4Y2VlZHMgNjMJAQAAAAUkZjBfMgAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIFAAAABSRhY2MwAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAACAAAAAAAAAAADAAAAAAAAAAAEAAAAAAAAAAAFAAAAAAAAAAAGAAAAAAAAAAAHAAAAAAAAAAAIAAAAAAAAAAAJAAAAAAAAAAAKAAAAAAAAAAALAAAAAAAAAAAMAAAAAAAAAAANAAAAAAAAAAAOAAAAAAAAAAAPAAAAAAAAAAAQAAAAAAAAAAARAAAAAAAAAAASAAAAAAAAAAATAAAAAAAAAAAUAAAAAAAAAAAVAAAAAAAAAAAWAAAAAAAAAAAXAAAAAAAAAAAYAAAAAAAAAAAZAAAAAAAAAAAaAAAAAAAAAAAbAAAAAAAAAAAcAAAAAAAAAAAdAAAAAAAAAAAeAAAAAAAAAAAfAAAAAAAAAAAgAAAAAAAAAAAhAAAAAAAAAAAiAAAAAAAAAAAjAAAAAAAAAAAkAAAAAAAAAAAlAAAAAAAAAAAmAAAAAAAAAAAnAAAAAAAAAAAoAAAAAAAAAAApAAAAAAAAAAAqAAAAAAAAAAArAAAAAAAAAAAsAAAAAAAAAAAtAAAAAAAAAAAuAAAAAAAAAAAvAAAAAAAAAAAwAAAAAAAAAAAxAAAAAAAAAAAyAAAAAAAAAAAzAAAAAAAAAAA0AAAAAAAAAAA1AAAAAAAAAAA2AAAAAAAAAAA3AAAAAAAAAAA4AAAAAAAAAAA5AAAAAAAAAAA6AAAAAAAAAAA7AAAAAAAAAAA8AAAAAAAAAAA9AAAAAAAAAAA+AAAAAAAAAAA/BwEAAAAPaXNBdmFpbGFibGVOYW1lAAAAAQAAAARuYW1lAwkBAAAAC2lzVmFsaWROYW1lAAAAAQUAAAAEbmFtZQkBAAAAASEAAAABCQEAAAAMaXNBY3RpdmVOYW1lAAAAAQUAAAAEbmFtZQcBAAAADmlzVmFsaWRBZGRyZXNzAAAAAQAAAAxtYXliZUFkZHJlc3MJAQAAAAlpc0RlZmluZWQAAAABCQAEJgAAAAEFAAAADG1heWJlQWRkcmVzcwEAAAAHaXNBZG1pbgAAAAEAAAADaW52CQAAAAAAAAIIBQAAAANpbnYAAAAGY2FsbGVyBQAAAAR0aGlzAQAAAAdpc093bmVyAAAAAgAAAANpbnYAAAAEbmFtZQkAAAAAAAACCQAEJQAAAAEIBQAAAANpbnYAAAAMb3JpZ2luQ2FsbGVyCQEAAAALdmFsdWVPckVsc2UAAAACCQEAAAAJX2dldE93bmVyAAAAAQUAAAAEbmFtZQIAAAAAAQAAAAxpc0NvbnRyb2xsZXIAAAABAAAAB2FkZHJlc3MJAQAAAA9jb250YWluc0VsZW1lbnQAAAACBQAAAAtjb250cm9sbGVycwUAAAAHYWRkcmVzcwEAAAAPX3NwbGl0TGFzdExhYmVsAAAAAQAAAARuYW1lBAAAAAZsYWJlbHMJAAS1AAAAAgUAAAAEbmFtZQIAAAABLgQAAAAJbGFzdEluZGV4CQAAZQAAAAIJAAGQAAAAAQUAAAAGbGFiZWxzAAAAAAAAAAABBAAAAAlsYXN0TGFiZWwJAAGRAAAAAgUAAAAGbGFiZWxzBQAAAAlsYXN0SW5kZXgEAAAACnJlc3RMYWJlbHMJAAS5AAAAAgkABFEAAAACBQAAAAZsYWJlbHMFAAAACWxhc3RJbmRleAIAAAABLgkABRQAAAACBQAAAAlsYXN0TGFiZWwFAAAACnJlc3RMYWJlbHMBAAAAD19pc3N1ZU5hbWVUb2tlbgAAAAEAAAAEbmFtZQkABEwAAAACCQAEQgAAAAUDCQAAZgAAAAIJAAExAAAAAQUAAAAEbmFtZQAAAAAAAAAAEAkAASwAAAACCQABLwAAAAIFAAAABG5hbWUAAAAAAAAAAA8CAAAAAX4JAAEvAAAAAgUAAAAEbmFtZQAAAAAAAAAAEAkAASwAAAACBQAAAARuYW1lAgAAAAYud2F2ZXMAAAAAAAAAAAEAAAAAAAAAAAAHBQAAAANuaWwBAAAAFl9yZWdpc3Rlck5hbWVXaXRoVG9rZW4AAAADAAAABG5hbWUAAAAHdG9rZW5JZAAAAAljcmVhdGVkQXQJAARMAAAAAgkBAAAAC1N0cmluZ0VudHJ5AAAAAgkBAAAADmtleV9OYW1lX3Rva2VuAAAAAQUAAAAEbmFtZQUAAAAHdG9rZW5JZAkABEwAAAACCQEAAAALU3RyaW5nRW50cnkAAAACCQEAAAAOa2V5X1Rva2VuX25hbWUAAAABBQAAAAd0b2tlbklkBQAAAARuYW1lCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQEAAAASa2V5X05hbWVfY3JlYXRlZEF0AAAAAQUAAAAEbmFtZQUAAAAJY3JlYXRlZEF0CQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQEAAAASa2V5X05hbWVfZXhwaXJlc0F0AAAAAQUAAAAEbmFtZQkAAGQAAAACBQAAAAljcmVhdGVkQXQFAAAAB25hbWVUVEwFAAAAA25pbAEAAAAVX3Jlc3RvcmVOYW1lV2l0aFRva2VuAAAAAgAAAARuYW1lAAAAB3Rva2VuSWQJAARMAAAAAgkBAAAAC1N0cmluZ0VudHJ5AAAAAgkBAAAADmtleV9OYW1lX3Rva2VuAAAAAQUAAAAEbmFtZQUAAAAHdG9rZW5JZAkABEwAAAACCQEAAAALU3RyaW5nRW50cnkAAAACCQEAAAAOa2V5X1Rva2VuX25hbWUAAAABBQAAAAd0b2tlbklkBQAAAARuYW1lBQAAAANuaWwBAAAAFV90cmFuc2ZlclRva2VuVG9Pd25lcgAAAAIAAAAHdG9rZW5JZAAAAAVvd25lcgkABEwAAAACCQEAAAAOU2NyaXB0VHJhbnNmZXIAAAADCQEAAAARQGV4dHJOYXRpdmUoMTA2MikAAAABBQAAAAVvd25lcgAAAAAAAAAAAQkAAlkAAAABBQAAAAd0b2tlbklkBQAAAANuaWwBAAAACW1vZGlmaWVycwAAAAEAAAALdmFsaWRhdGlvbnMFAAAABHVuaXQBAAAACW9ubHlBZG1pbgAAAAEAAAADaW52AwkBAAAAB2lzQWRtaW4AAAABBQAAAANpbnYFAAAABHVuaXQJAAACAAAAAQIAAAARUGVybWlzc2lvbiBkZW5pZWQBAAAADm9ubHlDb250cm9sbGVyAAAAAQAAAANpbnYDAwkBAAAAB2lzQWRtaW4AAAABBQAAAANpbnYGCQEAAAAMaXNDb250cm9sbGVyAAAAAQkABCUAAAABCAUAAAADaW52AAAABmNhbGxlcgUAAAAEdW5pdAkAAAIAAAABAgAAABFQZXJtaXNzaW9uIGRlbmllZAEAAAAPb25seUluaXRpYWxpemVkAAAAAAMFAAAADWlzSW5pdGlhbGl6ZWQFAAAABHVuaXQJAAACAAAAAQIAAAAbQ29udHJhY3QgaXMgbm90IGluaXRpYWxpemVkAAAACAAAAANpbnYBAAAABGluaXQAAAABAAAAB25hbWVUVEwJAQAAAAt2YWx1ZU9yRWxzZQAAAAIJAQAAAAltb2RpZmllcnMAAAABCQAETAAAAAIJAQAAAAlvbmx5QWRtaW4AAAABBQAAAANpbnYJAARMAAAAAgMJAABmAAAAAgUAAAAHbmFtZVRUTAAAAAAAAAAAAAUAAAAEdW5pdAkAAAIAAAABAgAAABZUVEwgY2Fubm90IGJlIG5lZ2F0aXZlCQAETAAAAAIDCQEAAAABIQAAAAEFAAAADWlzSW5pdGlhbGl6ZWQFAAAABHVuaXQJAAACAAAAAQIAAAAlQ29udHJhY3QgaGFzIGFscmVhZHkgYmVlbiBpbml0aWFsaXplZAUAAAADbmlsCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACBQAAAAtrZXlfbmFtZVRUTAUAAAAHbmFtZVRUTAUAAAADbmlsAAAAA2ludgEAAAANYWRkQ29udHJvbGxlcgAAAAEAAAAHYWRkcmVzcwkBAAAAC3ZhbHVlT3JFbHNlAAAAAgkBAAAACW1vZGlmaWVycwAAAAEJAARMAAAAAgkBAAAACW9ubHlBZG1pbgAAAAEFAAAAA2ludgkABEwAAAACAwkBAAAADmlzVmFsaWRBZGRyZXNzAAAAAQUAAAAHYWRkcmVzcwUAAAAEdW5pdAkAAAIAAAABAgAAACJDb250cm9sbGVyIG11c3QgYmUgYSB2YWxpZCBhZGRyZXNzCQAETAAAAAIDCQEAAAABIQAAAAEJAQAAAAxpc0NvbnRyb2xsZXIAAAABBQAAAAdhZGRyZXNzBQAAAAR1bml0CQAAAgAAAAEJAAEsAAAAAgkAASwAAAACAgAAAAxDb250cm9sbGVyIGAFAAAAB2FkZHJlc3MCAAAAF2AgaXMgYWxyZWFkeSByZWdpc3RlcmVkBQAAAANuaWwJAARMAAAAAgkBAAAAC1N0cmluZ0VudHJ5AAAAAgUAAAAPa2V5X2NvbnRyb2xsZXJzCQAEuQAAAAIJAARNAAAAAgUAAAALY29udHJvbGxlcnMFAAAAB2FkZHJlc3MCAAAAASwFAAAAA25pbAAAAANpbnYBAAAAEHJlbW92ZUNvbnRyb2xsZXIAAAABAAAAB2FkZHJlc3MJAQAAAAt2YWx1ZU9yRWxzZQAAAAIJAQAAAAltb2RpZmllcnMAAAABCQAETAAAAAIJAQAAAAlvbmx5QWRtaW4AAAABBQAAAANpbnYJAARMAAAAAgMJAQAAAAxpc0NvbnRyb2xsZXIAAAABBQAAAAdhZGRyZXNzBQAAAAR1bml0CQAAAgAAAAEJAAEsAAAAAgkAASwAAAACAgAAAAxDb250cm9sbGVyIGAFAAAAB2FkZHJlc3MCAAAAE2AgaXMgbm90IHJlZ2lzdGVyZWQFAAAAA25pbAQAAAAPY29udHJvbGxlckluZGV4CQEAAAAFdmFsdWUAAAABCQAETwAAAAIFAAAAC2NvbnRyb2xsZXJzBQAAAAdhZGRyZXNzCQAETAAAAAIJAQAAAAtTdHJpbmdFbnRyeQAAAAIFAAAAD2tleV9jb250cm9sbGVycwkABLkAAAACCQAEUQAAAAIFAAAAC2NvbnRyb2xsZXJzBQAAAA9jb250cm9sbGVySW5kZXgCAAAAASwFAAAAA25pbAAAAANpbnYBAAAAB2lzVmFsaWQAAAABAAAABG5hbWUJAAUUAAAAAgUAAAADbmlsCQEAAAALaXNWYWxpZE5hbWUAAAABBQAAAARuYW1lAAAAA2ludgEAAAALaXNBdmFpbGFibGUAAAABAAAABG5hbWUJAAUUAAAAAgUAAAADbmlsCQEAAAAPaXNBdmFpbGFibGVOYW1lAAAAAQUAAAAEbmFtZQAAAANpbnYBAAAAB3Jlc29sdmUAAAADAAAABG5hbWUAAAALaW50ZXJmYWNlSWQAAAAEYXJncwQAAAALJHQwNjU1ODY2MDUJAQAAAA9fc3BsaXRMYXN0TGFiZWwAAAABBQAAAARuYW1lBAAAAAVsYWJlbAgFAAAACyR0MDY1NTg2NjA1AAAAAl8xBAAAAApyZXN0TGFiZWxzCAUAAAALJHQwNjU1ODY2MDUAAAACXzIEAAAABW93bmVyCQEAAAAJX2dldE93bmVyAAAAAQUAAAAFbGFiZWwJAAUUAAAAAgUAAAADbmlsAwkBAAAAAiE9AAAAAgkAATEAAAABBQAAAApyZXN0TGFiZWxzAAAAAAAAAAAABQAAAAR1bml0AwkBAAAAD2NvbnRhaW5zRWxlbWVudAAAAAIFAAAAC2NvbnRyb2xsZXJzBQAAAAVvd25lcgUAAAAEdW5pdAQAAAAHJG1hdGNoMAUAAAALaW50ZXJmYWNlSWQDCQAAAAAAAAICAAAABW93bmVyBQAAAAckbWF0Y2gwBQAAAAVvd25lcgMJAAAAAAAAAgIAAAAIcmVzb2x2ZXIFAAAAByRtYXRjaDAJAQAAAAxfZ2V0UmVzb2x2ZXIAAAABBQAAAAVsYWJlbAMJAAAAAAAAAgIAAAAJY3JlYXRlZEF0BQAAAAckbWF0Y2gwCQEAAAANX2dldENyZWF0ZWRBdAAAAAEFAAAABWxhYmVsAwkAAAAAAAACAgAAAAlleHBpcmVzQXQFAAAAByRtYXRjaDAJAQAAAA1fZ2V0RXhwaXJlc0F0AAAAAQUAAAAFbGFiZWwDCQAAAAAAAAICAAAAB3Rva2VuSWQFAAAAByRtYXRjaDAJAQAAAAlfZ2V0VG9rZW4AAAABBQAAAAVsYWJlbAUAAAAEdW5pdAAAAANpbnYBAAAACHJlZ2lzdGVyAAAAAwAAAARuYW1lAAAABW93bmVyAAAACWNyZWF0ZWRBdAkBAAAAC3ZhbHVlT3JFbHNlAAAAAgkBAAAACW1vZGlmaWVycwAAAAEJAARMAAAAAgkBAAAAD29ubHlJbml0aWFsaXplZAAAAAAJAARMAAAAAgkBAAAADm9ubHlDb250cm9sbGVyAAAAAQUAAAADaW52CQAETAAAAAIDCQEAAAAPaXNBdmFpbGFibGVOYW1lAAAAAQUAAAAEbmFtZQUAAAAEdW5pdAkAAAIAAAABCQABLAAAAAIJAAEsAAAAAgIAAAABYAUAAAAEbmFtZQIAAAAWYCBjYW5ub3QgYmUgcmVnaXN0ZXJlZAkABEwAAAACAwkBAAAADmlzVmFsaWRBZGRyZXNzAAAAAQUAAAAFb3duZXIFAAAABHVuaXQJAAACAAAAAQIAAAAdT3duZXIgbXVzdCBiZSBhIHZhbGlkIGFkZHJlc3MJAARMAAAAAgMJAABmAAAAAgUAAAAJY3JlYXRlZEF0AAAAAAAAAAAABQAAAAR1bml0CQAAAgAAAAECAAAAGkNyZWF0ZWRBdCBtdXN0IGJlIHBvc2l0aXZlCQAETAAAAAIDCQAAZwAAAAIIBQAAAAlsYXN0QmxvY2sAAAAJdGltZXN0YW1wBQAAAAljcmVhdGVkQXQFAAAABHVuaXQJAAACAAAAAQIAAAAhQ3JlYXRlZEF0IGNhbm5vdCBiZSBpbiB0aGUgZnV0dXJlBQAAAANuaWwEAAAADmlzc3VlTmFtZVRva2VuCQEAAAAPX2lzc3VlTmFtZVRva2VuAAAAAQUAAAAEbmFtZQQAAAAHdG9rZW5JZAkABDgAAAABCQABkQAAAAIFAAAADmlzc3VlTmFtZVRva2VuAAAAAAAAAAAABAAAAAh0b2tlblN0cgkAAlgAAAABBQAAAAd0b2tlbklkBAAAABVyZWdpc3Rlck5hbWVXaXRoVG9rZW4JAQAAABZfcmVnaXN0ZXJOYW1lV2l0aFRva2VuAAAAAwUAAAAEbmFtZQUAAAAIdG9rZW5TdHIFAAAACWNyZWF0ZWRBdAQAAAAUdHJhbnNmZXJUb2tlblRvT3duZXIJAQAAABVfdHJhbnNmZXJUb2tlblRvT3duZXIAAAACBQAAAAh0b2tlblN0cgUAAAAFb3duZXIEAAAADHNldE93bmVyc2hpcAkBAAAACV9zZXRPd25lcgAAAAIFAAAABG5hbWUFAAAABW93bmVyCQAETgAAAAIJAAROAAAAAgkABE4AAAACBQAAAA5pc3N1ZU5hbWVUb2tlbgUAAAAVcmVnaXN0ZXJOYW1lV2l0aFRva2VuBQAAABR0cmFuc2ZlclRva2VuVG9Pd25lcgUAAAAMc2V0T3duZXJzaGlwAAAAA2ludgEAAAAHcmVjbGFpbQAAAAEAAAAEbmFtZQkBAAAAC3ZhbHVlT3JFbHNlAAAAAgkBAAAACW1vZGlmaWVycwAAAAEJAARMAAAAAgkBAAAAD29ubHlJbml0aWFsaXplZAAAAAAJAARMAAAAAgMJAQAAAAxpc0FjdGl2ZU5hbWUAAAABBQAAAARuYW1lBQAAAAR1bml0CQAAAgAAAAEJAAEsAAAAAgkAASwAAAACAgAAAAFgBQAAAARuYW1lAgAAAA9gIGlzIG5vdCBhY3RpdmUFAAAAA25pbAQAAAAIbmV3T3duZXIIBQAAAANpbnYAAAAMb3JpZ2luQ2FsbGVyBAAAAA9uZXdPd25lckFkZHJlc3MJAAQlAAAAAQUAAAAIbmV3T3duZXIEAAAACHRva2VuU3RyCQEAAAATdmFsdWVPckVycm9yTWVzc2FnZQAAAAIJAQAAAAlfZ2V0VG9rZW4AAAABBQAAAARuYW1lCQABLAAAAAIJAAEsAAAAAgIAAAAYTm8gdG9rZW4gaXMgaXNzdWVkIGZvciBgBQAAAARuYW1lAgAAAAFgBAAAAAd0b2tlbklkCQACWQAAAAEFAAAACHRva2VuU3RyBAAAAAhoYXNUb2tlbgkAAAAAAAACCQAD8AAAAAIFAAAACG5ld093bmVyBQAAAAd0b2tlbklkAAAAAAAAAAABBAAAAAxpc1Rva2VuT3duZXIJAQAAAAdpc093bmVyAAAAAgUAAAADaW52BQAAAARuYW1lBAAAAA1pc1Rva2VuRXhpc3RzBAAAAAckbWF0Y2gwCQAD7AAAAAEFAAAAB3Rva2VuSWQDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAABUFzc2V0BAAAAAV0b2tlbgUAAAAHJG1hdGNoMAkAAAAAAAACCAUAAAAFdG9rZW4AAAAIcXVhbnRpdHkAAAAAAAAAAAEHAwMFAAAADGlzVG9rZW5Pd25lcgkBAAAAASEAAAABBQAAAA1pc1Rva2VuRXhpc3RzBwQAAAANaXNzdWVOZXdUb2tlbgkBAAAAD19pc3N1ZU5hbWVUb2tlbgAAAAEFAAAABG5hbWUEAAAACm5ld1Rva2VuSWQJAAQ4AAAAAQkAAZEAAAACBQAAAA1pc3N1ZU5ld1Rva2VuAAAAAAAAAAAABAAAAAtuZXdUb2tlblN0cgkAAlgAAAABBQAAAApuZXdUb2tlbklkBAAAABdyZXN0b3JlTmFtZVdpdGhOZXdUb2tlbgkBAAAAFV9yZXN0b3JlTmFtZVdpdGhUb2tlbgAAAAIFAAAABG5hbWUFAAAAC25ld1Rva2VuU3RyBAAAABd0cmFuc2Zlck5ld1Rva2VuVG9Pd25lcgkBAAAAFV90cmFuc2ZlclRva2VuVG9Pd25lcgAAAAIFAAAAC25ld1Rva2VuU3RyBQAAAA9uZXdPd25lckFkZHJlc3MJAAROAAAAAgkABE4AAAACBQAAAA1pc3N1ZU5ld1Rva2VuBQAAABdyZXN0b3JlTmFtZVdpdGhOZXdUb2tlbgUAAAAXdHJhbnNmZXJOZXdUb2tlblRvT3duZXIDAwUAAAAMaXNUb2tlbk93bmVyBQAAAAhoYXNUb2tlbgcJAAACAAAAAQIAAAAcWW91IGFscmVhZHkgb3duIGEgbmFtZSB0b2tlbgMJAQAAAAEhAAAAAQUAAAAIaGFzVG9rZW4JAAACAAAAAQIAAAAbWW91IGRvbid0IGhhdmUgYSBuYW1lIHRva2VuCQEAAAAJX3NldE93bmVyAAAAAgUAAAAEbmFtZQUAAAAPbmV3T3duZXJBZGRyZXNzAAAAAIux30k=", "height": 2339943, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: 9gPhBgF8CucDsXS1nJwWsSW9W7ACDPx9VSHefMsiGpAz Next: none Full:
OldNewDifferences
11 {-# STDLIB_VERSION 5 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
4-func a (b,c) = valueOrErrorMessage(getString(b, c), ((("Can't read '" + c) + "' at address ") + toString(b)))
4+func a (b,c,d) = ((((b + "_") + c) + "_") + d)
55
66
7-func d (b,c) = valueOrErrorMessage(getInteger(b, c), ((("Can't read '" + c) + "' at address ") + toString(b)))
7+func e (f) = a("Token", f, "name")
88
99
10-func e (f) = valueOrErrorMessage(addressFromString(f), (("Can't parse address from '" + f) + "'"))
10+func g (b) = a("Name", b, "token")
1111
1212
13-func g (h,i,j) = ((((h + "_") + i) + "_") + j)
13+func h (b) = a("Name", b, "owner")
1414
1515
16-func k (l) = g("Token", l, "name")
16+func i (b) = a("Name", b, "resolver")
1717
1818
19-func m (h) = g("Name", h, "token")
19+func j (b) = a("Name", b, "expiresAt")
2020
2121
22-func n (h) = g("Name", h, "owner")
22+func k (b) = a("Name", b, "createdAt")
2323
2424
25-func o (h) = g("Name", h, "registrar")
25+let l = "nameTTL"
26+
27+let m = "controllers"
28+
29+func n (b,o) = [StringEntry(h(b), o)]
2630
2731
28-func p (h) = g("Name", h, "resolver")
32+func p (b) = getString(this, h(b))
2933
3034
31-func q (h) = g("Name", h, "expiresAt")
35+func q (b) = getString(this, i(b))
3236
3337
34-func r (h) = g("Name", h, "createdAt")
38+func r (b) = getString(this, g(b))
3539
3640
37-let s = "nameTTL"
38-
39-let t = "controllers"
40-
41-func u (h,v) = [StringEntry(n(h), v)]
41+func s (b) = getInteger(this, k(b))
4242
4343
44-func w (h) = getString(this, n(h))
44+func t (b) = getInteger(this, j(b))
4545
4646
47-func x (h,y) = [StringEntry(o(h), y)]
48-
49-
50-func z (h) = getString(this, o(h))
51-
52-
53-func A (h,B) = [StringEntry(p(h), B)]
54-
55-
56-func C (h) = getString(this, p(h))
57-
58-
59-func D (h) = getString(this, m(h))
60-
61-
62-func E (h) = getInteger(this, r(h))
63-
64-
65-func F (h) = getInteger(this, q(h))
66-
67-
68-func G () = getString(this, t)
69-
70-
71-let H = {
72- let I = G()
73- if ($isInstanceOf(I, "String"))
47+let u = {
48+ let v = getString(this, m)
49+ if ($isInstanceOf(v, "String"))
7450 then {
75- let J = I
76- split(J, ",")
51+ let w = v
52+ split(w, ",")
7753 }
7854 else nil
7955 }
8056
81-let K = d(this, s)
57+let x = value(getInteger(this, l))
8258
83-func L (h) = isDefined(getString(this, m(h)))
59+let y = isDefined(getInteger(this, l))
60+
61+func z (b) = isDefined(getString(this, g(b)))
8462
8563
86-func M (h) = isDefined(E(h))
64+func A (b) = isDefined(s(b))
8765
8866
89-func N (h) = {
90- let I = F(h)
91- if ($isInstanceOf(I, "Int"))
67+func B (b) = {
68+ let v = t(b)
69+ if ($isInstanceOf(v, "Int"))
9270 then {
93- let O = I
94- (lastBlock.timestamp > O)
71+ let C = v
72+ (lastBlock.timestamp > C)
9573 }
9674 else false
9775 }
9876
9977
100-func P (h) = if (if (L(h))
101- then M(h)
78+func D (b) = if (if (z(b))
79+ then A(b)
10280 else false)
103- then !(N(h))
81+ then !(B(b))
10482 else false
10583
10684
107-func Q (h) = {
108- let R = "abcdefghijklmnopqrstuvwxyz1234567890-"
109- func S (T,U) = if (T)
110- then contains(R, U)
85+func E (b) = {
86+ let F = "abcdefghijklmnopqrstuvwxyz1234567890-"
87+ func G (H,I) = if (H)
88+ then contains(F, I)
11189 else false
11290
113- if (if (if (if (if ((size(h) > 0))
114- then (63 >= size(h))
91+ if (if (if (if (if ((size(b) > 3))
92+ then (63 >= size(b))
11593 else false)
116- then (indexOf(h, "--") != 2)
94+ then (indexOf(b, "--") != 2)
11795 else false)
118- then (indexOf(h, "-") != 0)
96+ then (indexOf(b, "-") != 0)
11997 else false)
120- then (lastIndexOf(h, "-") != (size(h) - 1))
98+ then (lastIndexOf(b, "-") != (size(b) - 1))
12199 else false)
122100 then {
123- let V = split(h, "")
124- let W = size(V)
125- let X = true
126- func Y (Z,aa) = if ((aa >= W))
127- then Z
128- else S(Z, V[aa])
101+ let J = split(b, "")
102+ let K = size(J)
103+ let L = true
104+ func M (N,O) = if ((O >= K))
105+ then N
106+ else G(N, J[O])
129107
130- func ab (Z,aa) = if ((aa >= W))
131- then Z
108+ func P (N,O) = if ((O >= K))
109+ then N
132110 else throw("List size exceeds 63")
133111
134- ab(Y(Y(Y(Y(Y(Y(Y(Y(Y(Y(Y(Y(Y(Y(Y(Y(Y(Y(Y(Y(Y(Y(Y(Y(Y(Y(Y(Y(Y(Y(Y(Y(Y(Y(Y(Y(Y(Y(Y(Y(Y(Y(Y(Y(Y(Y(Y(Y(Y(Y(Y(Y(Y(Y(Y(Y(Y(Y(Y(Y(Y(Y(Y(X, 0), 1), 2), 3), 4), 5), 6), 7), 8), 9), 10), 11), 12), 13), 14), 15), 16), 17), 18), 19), 20), 21), 22), 23), 24), 25), 26), 27), 28), 29), 30), 31), 32), 33), 34), 35), 36), 37), 38), 39), 40), 41), 42), 43), 44), 45), 46), 47), 48), 49), 50), 51), 52), 53), 54), 55), 56), 57), 58), 59), 60), 61), 62), 63)
112+ P(M(M(M(M(M(M(M(M(M(M(M(M(M(M(M(M(M(M(M(M(M(M(M(M(M(M(M(M(M(M(M(M(M(M(M(M(M(M(M(M(M(M(M(M(M(M(M(M(M(M(M(M(M(M(M(M(M(M(M(M(M(M(M(L, 0), 1), 2), 3), 4), 5), 6), 7), 8), 9), 10), 11), 12), 13), 14), 15), 16), 17), 18), 19), 20), 21), 22), 23), 24), 25), 26), 27), 28), 29), 30), 31), 32), 33), 34), 35), 36), 37), 38), 39), 40), 41), 42), 43), 44), 45), 46), 47), 48), 49), 50), 51), 52), 53), 54), 55), 56), 57), 58), 59), 60), 61), 62), 63)
135113 }
136114 else false
137115 }
138116
139117
140-func ac (h) = if (Q(h))
141- then if (!(L(h)))
142- then true
143- else N(h)
118+func Q (b) = if (E(b))
119+ then !(D(b))
144120 else false
145121
146122
147-func ad (f) = isDefined(addressFromString(f))
123+func R (S) = isDefined(addressFromString(S))
148124
149125
150-func ae (af) = (af.caller == this)
126+func T (U) = (U.caller == this)
151127
152128
153-func ag (af,h) = (toString(af.caller) == valueOrElse(w(h), ""))
129+func V (U,b) = (toString(U.originCaller) == valueOrElse(p(b), ""))
154130
155131
156-func ah (b) = containsElement(H, b)
132+func W (X) = containsElement(u, X)
157133
158134
159-func ai (h) = {
160- let aj = split(h, ".")
161- let ak = (size(aj) - 1)
162- let al = aj[ak]
163- let am = makeString(removeByIndex(aj, ak), ".")
164- $Tuple2(al, am)
135+func Y (b) = {
136+ let Z = split(b, ".")
137+ let aa = (size(Z) - 1)
138+ let ab = Z[aa]
139+ let ac = makeString(removeByIndex(Z, aa), ".")
140+ $Tuple2(ab, ac)
165141 }
166142
167143
168-func an (h) = [Issue(if ((size(h) > 16))
169- then (take(h, 15) + "~")
170- else take(h, 16), (h + ".waves"), 1, 0, false)]
144+func ad (b) = [Issue(if ((size(b) > 16))
145+ then (take(b, 15) + "~")
146+ else take(b, 16), (b + ".waves"), 1, 0, false)]
171147
172148
173-func ao (h,l,ap) = [StringEntry(m(h), l), StringEntry(k(l), h), IntegerEntry(r(h), ap), IntegerEntry(q(h), (ap + K))]
149+func ae (b,f,af) = [StringEntry(g(b), f), StringEntry(e(f), b), IntegerEntry(k(b), af), IntegerEntry(j(b), (af + x))]
174150
175151
176-func aq (h,l) = [StringEntry(m(h), l), StringEntry(k(l), h)]
152+func ag (b,f) = [StringEntry(g(b), f), StringEntry(e(f), b)]
177153
178154
179-func ar (l,v) = [ScriptTransfer(e(v), 1, fromBase58String(l))]
155+func ah (f,o) = [ScriptTransfer(addressFromStringValue(o), 1, fromBase58String(f))]
180156
181157
182-func as (at) = unit
158+func ai (aj) = unit
183159
184160
185-func au (af) = if (ae(af))
161+func ak (U) = if (T(U))
186162 then unit
187163 else throw("Permission denied")
188164
189165
190-func av (af) = if (if (ae(af))
166+func al (U) = if (if (T(U))
191167 then true
192- else ah(toString(af.caller)))
168+ else W(toString(U.caller)))
193169 then unit
194170 else throw("Permission denied")
195171
196172
197-func aw (af,h) = if (if (ae(af))
198- then true
199- else ag(af, h))
173+func am () = if (y)
200174 then unit
201- else throw("Permission denied")
175+ else throw("Contract is not initialized")
202176
203177
204-func ax (ay,az,am) = {
205- let I = invoke(ay, "supportsInterface", [az], nil)
206- if ($isInstanceOf(I, "Boolean"))
207- then {
208- let aA = I
209- if (!(aA))
210- then unit
211- else {
212- let aB = invoke(ay, az, [am], nil)
213- if ($isInstanceOf(aB, "String"))
214- then {
215- let aC = aB
216- aC
217- }
218- else if ($isInstanceOf(aB, "Int"))
219- then {
220- let aD = aB
221- aD
222- }
223- else unit
224- }
225- }
226- else unit
227- }
228-
229-
230-@Callable(af)
231-func init (K) = valueOrElse(as([au(af), if ((K > 0))
178+@Callable(U)
179+func init (x) = valueOrElse(ai([ak(U), if ((x > 0))
232180 then unit
233- else throw("TTL cannot be negative")]), [IntegerEntry(s, K)])
181+ else throw("TTL cannot be negative"), if (!(y))
182+ then unit
183+ else throw("Contract has already been initialized")]), [IntegerEntry(l, x)])
234184
235185
236186
237-@Callable(af)
238-func supportsInterface (az) = $Tuple2(nil, containsElement(["owner", "registrar", "resolver", "nameCreated", "nameExpires"], az))
187+@Callable(U)
188+func addController (X) = valueOrElse(ai([ak(U), if (R(X))
189+ then unit
190+ else throw("Controller must be a valid address"), if (!(W(X)))
191+ then unit
192+ else throw((("Controller `" + X) + "` is already registered"))]), [StringEntry(m, makeString((u :+ X), ","))])
239193
240194
241195
242-@Callable(af)
243-func addController (b) = valueOrElse(as([au(af), if (ad(b))
196+@Callable(U)
197+func removeController (X) = valueOrElse(ai([ak(U), if (W(X))
244198 then unit
245- else throw("Controller must be a valid address"), if (!(ah(b)))
246- then unit
247- else throw((("Controller `" + b) + "` is already registered"))]), [StringEntry(t, makeString((H :+ b), ","))])
248-
249-
250-
251-@Callable(af)
252-func removeController (b) = valueOrElse(as([au(af), if (ah(b))
253- then unit
254- else throw((("Controller `" + b) + "` is not registered"))]), {
255- let aE = value(indexOf(H, b))
256-[StringEntry(t, makeString(removeByIndex(H, aE), ","))]
199+ else throw((("Controller `" + X) + "` is not registered"))]), {
200+ let an = value(indexOf(u, X))
201+[StringEntry(m, makeString(removeByIndex(u, an), ","))]
257202 })
258203
259204
260205
261-@Callable(af)
262-func validate (h) = $Tuple2(nil, Q(h))
206+@Callable(U)
207+func isValid (b) = $Tuple2(nil, E(b))
263208
264209
265210
266-@Callable(af)
267-func available (h) = $Tuple2(nil, ac(h))
211+@Callable(U)
212+func isAvailable (b) = $Tuple2(nil, Q(b))
268213
269214
270215
271-@Callable(af)
272-func owner (h) = {
273- let aF = ai(h)
274- let aG = aF._1
275- let am = aF._2
276- let aH = w(aG)
277- let aI = z(aG)
278- let y = value(addressFromString(value(aI)))
279- $Tuple2(nil, if (if ((size(am) == 0))
280- then true
281- else !(isDefined(aI)))
282- then aH
283- else {
284- let I = ax(y, "owner", am)
285- if ($isInstanceOf(I, "String"))
286- then {
287- let aJ = I
288- if (ad(aJ))
289- then aJ
290- else unit
291- }
292- else unit
293- })
216+@Callable(U)
217+func resolve (b,ao,ap) = {
218+ let aq = Y(b)
219+ let ar = aq._1
220+ let ac = aq._2
221+ let o = p(ar)
222+ $Tuple2(nil, if ((size(ac) != 0))
223+ then unit
224+ else if (containsElement(u, o))
225+ then unit
226+ else {
227+ let v = ao
228+ if (("owner" == v))
229+ then o
230+ else if (("resolver" == v))
231+ then q(ar)
232+ else if (("createdAt" == v))
233+ then s(ar)
234+ else if (("expiresAt" == v))
235+ then t(ar)
236+ else if (("tokenId" == v))
237+ then r(ar)
238+ else unit
239+ })
294240 }
295241
296242
297243
298-@Callable(af)
299-func registrar (h) = {
300- let aK = ai(h)
301- let aG = aK._1
302- let am = aK._2
303- let aI = {
304- let I = z(aG)
305- if ($isInstanceOf(I, "String"))
306- then {
307- let aL = I
308- if (ad(aL))
309- then aL
310- else unit
311- }
312- else unit
313- }
314- let y = value(addressFromString(value(aI)))
315- $Tuple2(nil, if (if ((size(am) == 0))
316- then true
317- else !(isDefined(aI)))
318- then aI
319- else {
320- let I = ax(y, "registrar", am)
321- if ($isInstanceOf(I, "String"))
322- then {
323- let aL = I
324- if (ad(aL))
325- then aL
326- else unit
327- }
328- else unit
329- })
330- }
331-
332-
333-
334-@Callable(af)
335-func setRegistrar (h,y) = valueOrElse(as([if (P(h))
244+@Callable(U)
245+func register (b,o,af) = valueOrElse(ai([am(), al(U), if (Q(b))
336246 then unit
337- else throw("Name expired or not registered"), aw(af, h), if (ad(y))
247+ else throw((("`" + b) + "` cannot be registered")), if (R(o))
338248 then unit
339- else throw("Registrar must be a valid contract address")]), x(h, y))
340-
341-
342-
343-@Callable(af)
344-func resolver (h) = {
345- let aM = ai(h)
346- let aG = aM._1
347- let am = aM._2
348- let aN = C(aG)
349- let aI = z(aG)
350- let y = value(addressFromString(value(aI)))
351- $Tuple2(nil, if (if ((size(am) == 0))
352- then true
353- else !(isDefined(aI)))
354- then aN
355- else {
356- let I = ax(y, "resolver", am)
357- if ($isInstanceOf(I, "String"))
358- then {
359- let aO = I
360- if (ad(aO))
361- then aO
362- else unit
363- }
364- else unit
365- })
366- }
367-
368-
369-
370-@Callable(af)
371-func setResolver (h,B) = valueOrElse(as([if (P(h))
249+ else throw("Owner must be a valid address"), if ((af > 0))
372250 then unit
373- else throw("Name expired or not registered"), aw(af, h), if (ad(B))
374- then unit
375- else throw("Resolver must be a valid contract address")]), A(h, B))
376-
377-
378-
379-@Callable(af)
380-func nameCreated (h) = {
381- let aP = ai(h)
382- let aG = aP._1
383- let am = aP._2
384- let aQ = E(aG)
385- let aI = z(aG)
386- let y = value(addressFromString(value(aI)))
387- $Tuple2(nil, if (if ((size(am) == 0))
388- then true
389- else !(isDefined(aI)))
390- then aQ
391- else {
392- let I = ax(y, "nameCreated", am)
393- if ($isInstanceOf(I, "Int"))
394- then {
395- let aR = I
396- if (if ((aR > 0))
397- then (lastBlock.timestamp > aR)
398- else false)
399- then aR
400- else unit
401- }
402- else unit
403- })
404- }
405-
406-
407-
408-@Callable(af)
409-func nameExpires (h) = {
410- let aS = ai(h)
411- let aG = aS._1
412- let am = aS._2
413- let aT = F(aG)
414- let aI = z(aG)
415- let y = value(addressFromString(value(aI)))
416- $Tuple2(nil, if (if ((size(am) == 0))
417- then true
418- else !(isDefined(aI)))
419- then aT
420- else {
421- let I = ax(y, "nameExpires", am)
422- if ($isInstanceOf(I, "Int"))
423- then {
424- let aU = I
425- if ((aU > 0))
426- then aU
427- else unit
428- }
429- else unit
430- })
431- }
432-
433-
434-
435-@Callable(af)
436-func register (h,v,ap) = valueOrElse(as([av(af), if (ac(h))
437- then unit
438- else throw((("`" + h) + "` cannot be registered")), if (ad(v))
439- then unit
440- else throw("Owner must be a valid address"), if ((ap > 0))
441- then unit
442- else throw("CreatedAt cannot be negative"), if ((lastBlock.timestamp >= ap))
251+ else throw("CreatedAt must be positive"), if ((lastBlock.timestamp >= af))
443252 then unit
444253 else throw("CreatedAt cannot be in the future")]), {
445- let aV = an(h)
446- let l = calculateAssetId(aV[0])
447- let aW = toBase58String(l)
448- let aX = ao(h, aW, ap)
449- let aY = ar(aW, v)
450- let aZ = u(h, v)
451- (((aV ++ aX) ++ aY) ++ aZ)
254+ let as = ad(b)
255+ let f = calculateAssetId(as[0])
256+ let at = toBase58String(f)
257+ let au = ae(b, at, af)
258+ let av = ah(at, o)
259+ let aw = n(b, o)
260+ (((as ++ au) ++ av) ++ aw)
452261 })
453262
454263
455264
456-@Callable(af)
457-func reclaim (h) = valueOrElse(as([if (P(h))
265+@Callable(U)
266+func reclaim (b) = valueOrElse(ai([am(), if (D(b))
458267 then unit
459- else throw((("`" + h) + "` is not active"))]), {
460- let ba = af.caller
461- let bb = toString(ba)
462- let aW = valueOrErrorMessage(D(h), (("No token is issued for `" + h) + "`"))
463- let l = fromBase58String(aW)
464- let bc = (assetBalance(ba, l) == 1)
465- let bd = ag(af, h)
466- let be = {
467- let I = assetInfo(l)
468- if ($isInstanceOf(I, "Asset"))
268+ else throw((("`" + b) + "` is not active"))]), {
269+ let ax = U.originCaller
270+ let ay = toString(ax)
271+ let at = valueOrErrorMessage(r(b), (("No token is issued for `" + b) + "`"))
272+ let f = fromBase58String(at)
273+ let az = (assetBalance(ax, f) == 1)
274+ let aA = V(U, b)
275+ let aB = {
276+ let v = assetInfo(f)
277+ if ($isInstanceOf(v, "Asset"))
469278 then {
470- let bf = I
471- (bf.quantity == 1)
279+ let aC = v
280+ (aC.quantity == 1)
472281 }
473282 else false
474283 }
475- if (if (bd)
476- then !(be)
284+ if (if (aA)
285+ then !(aB)
477286 else false)
478287 then {
479- let bg = an(h)
480- let bh = calculateAssetId(bg[0])
481- let bi = toBase58String(bh)
482- let bj = aq(h, bi)
483- let bk = ar(bi, bb)
484- ((bg ++ bj) ++ bk)
288+ let aD = ad(b)
289+ let aE = calculateAssetId(aD[0])
290+ let aF = toBase58String(aE)
291+ let aG = ag(b, aF)
292+ let aH = ah(aF, ay)
293+ ((aD ++ aG) ++ aH)
485294 }
486- else if (if (bd)
487- then bc
295+ else if (if (aA)
296+ then az
488297 else false)
489298 then throw("You already own a name token")
490- else if (!(bc))
299+ else if (!(az))
491300 then throw("You don't have a name token")
492- else u(h, bb)
301+ else n(b, ay)
493302 })
494303
495304

github/deemru/w8io/169f3d6 
220.43 ms