tx · J1dfTGD5c2L46L9o891ki6iC66cKaeUQu7W9v9EBhYag

3N1oZwpYE3p4x63jWiKpszmfLU3Lk3KtSWe:  -0.01200000 Waves

2024.10.18 21:15 [3332586] smart account 3N1oZwpYE3p4x63jWiKpszmfLU3Lk3KtSWe > SELF 0.00000000 Waves

{ "type": 13, "id": "J1dfTGD5c2L46L9o891ki6iC66cKaeUQu7W9v9EBhYag", "fee": 1200000, "feeAssetId": null, "timestamp": 1729275368214, "version": 2, "chainId": 84, "sender": "3N1oZwpYE3p4x63jWiKpszmfLU3Lk3KtSWe", "senderPublicKey": "CqqNd9FdJdY64okp1oAAQ8z3kyrEcd6UKxtboqZgrSaP", "proofs": [ "U9ayhyCtLPcQHRJEVhFfGf8uAt9K1GkRLP4M17R6DLHqsPHMhZ9WG6ErQtPYJu5EBdXbbKMKvGqih5jpdSezxJL" ], "script": "base64:BgIRCAISAwoBCBIAEgQKAgQIEgAXAQdnZXRCb29sAQNrZXkEByRtYXRjaDAJAJsIAgUEdGhpcwUDa2V5AwkAAQIFByRtYXRjaDACB0Jvb2xlYW4EAWIFByRtYXRjaDAFAWIHAQlpc1Rlc3RFbnYACQEHZ2V0Qm9vbAECB1RFU1RFTlYBF3N0YXRpY0tleV9vcmFjbGVBZGRyZXNzAAIUc3RhdGljX29yYWNsZUFkZHJlc3MBGHN0YXRpY0tleV9icmVlZGVyQWRkcmVzcwACFXN0YXRpY19icmVlZGVyQWRkcmVzcwEWc3RhdGljS2V5X2l0ZW1zQWRkcmVzcwACE3N0YXRpY19pdGVtc0FkZHJlc3MBEnN0YXRpY0tleV9leHRyYUZlZQACD3N0YXRpY19leHRyYUZlZQEYc3RhdGljS2V5X2V4dHJhRmVlUmVtb3ZlAAIVc3RhdGljX2V4dHJhRmVlUmVtb3ZlARdzdGF0aWNLZXlfZmVlQWdncmVnYXRvcgACFHN0YXRpY19mZWVBZ2dyZWdhdG9yAAl3ZWFyYWJsZXMJAMwIAgIIQVJULUNBUEUJAMwIAgIHQVJULUhBVAkAzAgCAgpBUlQtWFNDQVJGCQDMCAICDEFSVC1YU1dFQVRFUgUDbmlsAQ9rZXlBcnRlZmFjdER1Y2sCBmR1Y2tJZAh3ZWFyYWJsZQkArAICCQCsAgIFBmR1Y2tJZAIBXwUId2VhcmFibGUBDGtleVR5cGVzRHVjawIGZHVja0lkBHR5cGUJAKwCAgkArAICBQZkdWNrSWQCAV8FBHR5cGUBFHRyeUdldFN0cmluZ0V4dGVybmFsAgdhZGRyZXNzA2tleQQHJG1hdGNoMAkAnQgCBQdhZGRyZXNzBQNrZXkDCQABAgUHJG1hdGNoMAIGU3RyaW5nBAFhBQckbWF0Y2gwBQFhAgABDHRyeUdldFN0cmluZwEDa2V5CQEUdHJ5R2V0U3RyaW5nRXh0ZXJuYWwCBQR0aGlzBQNrZXkBBWFzSW50AQV2YWx1ZQQHJG1hdGNoMAUFdmFsdWUDCQABAgUHJG1hdGNoMAIDSW50BANpbnQFByRtYXRjaDAFA2ludAkAAgECGXdyb25nIHR5cGUsIGV4cGVjdGVkOiBJbnQBCGFzU3RyaW5nAQV2YWx1ZQQHJG1hdGNoMAUFdmFsdWUDCQABAgUHJG1hdGNoMAIGU3RyaW5nBAZzdHJpbmcFByRtYXRjaDAFBnN0cmluZwkAAgECHHdyb25nIHR5cGUsIGV4cGVjdGVkOiBTdHJpbmcBCWdldE9yYWNsZQAJAQdBZGRyZXNzAQkA2QQBCQEMdHJ5R2V0U3RyaW5nAQkBF3N0YXRpY0tleV9vcmFjbGVBZGRyZXNzAAERZ2V0QnJlZWRlckFkZHJlc3MACQEHQWRkcmVzcwEJANkEAQkBFHRyeUdldFN0cmluZ0V4dGVybmFsAgkBCWdldE9yYWNsZQAJARhzdGF0aWNLZXlfYnJlZWRlckFkZHJlc3MAAQ9nZXRJdGVtc0FkZHJlc3MACQEHQWRkcmVzcwEJANkEAQkBFHRyeUdldFN0cmluZ0V4dGVybmFsAgkBCWdldE9yYWNsZQAJARZzdGF0aWNLZXlfaXRlbXNBZGRyZXNzAAEQZ2V0RmVlQWdncmVnYXRvcgAJAQdBZGRyZXNzAQkA2QQBCQEUdHJ5R2V0U3RyaW5nRXh0ZXJuYWwCCQEJZ2V0T3JhY2xlAAkBF3N0YXRpY0tleV9mZWVBZ2dyZWdhdG9yAAEWY2hlY2tBZGRpdGlvbmFsUGF5bWVudAIHcGF5bWVudA5hbW91bnRPdmVycmlkZQMJAQlpc0RlZmluZWQBCAUHcGF5bWVudAdhc3NldElkCQACAQIZV0NBUDogUGxlYXNlIGF0dGFjaCB3YXZlcwQJZmVlQW1vdW50AwkBAiE9AgUOYW1vdW50T3ZlcnJpZGUAAAUOYW1vdW50T3ZlcnJpZGUJARFAZXh0ck5hdGl2ZSgxMDUwKQIJAQlnZXRPcmFjbGUACQESc3RhdGljS2V5X2V4dHJhRmVlAAMJAQIhPQIIBQdwYXltZW50BmFtb3VudAUJZmVlQW1vdW50CQACAQkArAICCQCsAgICHFdDQVA6IFBsZWFzZSBhdHRhY2ggZXhhY3RseSAJAKQDAQUJZmVlQW1vdW50AhMgYW1vdW50IG9mIHdhdmVsZXRzCQDMCAIJAQ5TY3JpcHRUcmFuc2ZlcgMJARBnZXRGZWVBZ2dyZWdhdG9yAAUJZmVlQW1vdW50BQR1bml0BQNuaWwBEnRyeUdldENvc21ldGljSXRlbQEEaXRlbQQDa2V5CQCsAgICEGRpcmVjdF9jb3NtZXRpY18FBGl0ZW0EByRtYXRjaDAJAJoIAgkBD2dldEl0ZW1zQWRkcmVzcwAFA2tleQMJAAECBQckbWF0Y2gwAgNJbnQEAWEFByRtYXRjaDAFAWEFBHVuaXQBCnRyeUdldFR5cGUBCHdlYXJhYmxlCQEUdHJ5R2V0U3RyaW5nRXh0ZXJuYWwCCQEPZ2V0SXRlbXNBZGRyZXNzAAkArAICAg50eXBlX2Nvc21ldGljXwUId2VhcmFibGUBCHdlYXJJdGVtAg9hc3NldElkV2VhckFibGUGZHVja0lkBAxhcnRlZmFjdE5hbWUJAQhhc1N0cmluZwEJAPwHBAkBD2dldEl0ZW1zQWRkcmVzcwACFGNoZWNrQXJ0ZWZhY3REZXRhaWxzCQDMCAIFD2Fzc2V0SWRXZWFyQWJsZQUDbmlsBQNuaWwDCQAAAgUMYXJ0ZWZhY3ROYW1lBQxhcnRlZmFjdE5hbWUDAwkBASEBCQEPY29udGFpbnNFbGVtZW50AgUJd2VhcmFibGVzBQxhcnRlZmFjdE5hbWUJAQEhAQkBCWlzRGVmaW5lZAEJARJ0cnlHZXRDb3NtZXRpY0l0ZW0BBQxhcnRlZmFjdE5hbWUHCQACAQIbV1JJVEQ6IFVuc3VwcG9ydGVkIHdlYXJhYmxlBAphcnRlZmFjdElkCQEMdHJ5R2V0U3RyaW5nAQkBD2tleUFydGVmYWN0RHVjawIFBmR1Y2tJZAUMYXJ0ZWZhY3ROYW1lBAlib29zdER1Y2sDCQAAAgUMYXJ0ZWZhY3ROYW1lAgpBUlQtWFNDQVJGCQD8BwQJAQ9nZXRJdGVtc0FkZHJlc3MAAg9tYW5pcHVsYXRlQm9vc3QJAMwIAgBFCQDMCAIFBmR1Y2tJZAUDbmlsBQNuaWwFA25pbAMJAAACBQlib29zdER1Y2sFCWJvb3N0RHVjawMJAQIhPQIFCmFydGVmYWN0SWQCAAkAAgEJAKwCAgIaRHVjayBpcyBhbHJlYWR5IHdlYXJpbmcgYSAFDGFydGVmYWN0TmFtZQQEdHlwZQkBCnRyeUdldFR5cGUBBQxhcnRlZmFjdE5hbWUECnR5cGVPbkR1Y2sDCQECIT0CBQR0eXBlAgAJAQIhPQIJAQx0cnlHZXRTdHJpbmcBCQEMa2V5VHlwZXNEdWNrAgUGZHVja0lkBQR0eXBlAgAJAAIBCQCsAgICJlR5cGUgdW5kZWZpbmVkLCBwbGVhc2UgY29udGFjdCBhZG1pbnMgBQxhcnRlZmFjdE5hbWUDBQp0eXBlT25EdWNrCQACAQIyWW91IGNhbiBvbmx5IGF0dGFjaCAxIGZyb20gZWFjaCB0eXBlIHRvIHlvdXIgZHVjayEECnR5cGVSZXN1bHQDCQECIT0CBQR0eXBlAgAJAMwIAgkBC1N0cmluZ0VudHJ5AgkBDGtleVR5cGVzRHVjawIFBmR1Y2tJZAUEdHlwZQUPYXNzZXRJZFdlYXJBYmxlBQNuaWwFA25pbAkAzggCCQDMCAIJAQtTdHJpbmdFbnRyeQIJAQ9rZXlBcnRlZmFjdER1Y2sCBQZkdWNrSWQFDGFydGVmYWN0TmFtZQUPYXNzZXRJZFdlYXJBYmxlBQNuaWwFCnR5cGVSZXN1bHQJAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4EAWkBD2NvbmZpZ3VyZU9yYWNsZQEGb3JhY2xlAwkBAiE9AggFAWkGY2FsbGVyBQR0aGlzCQACAQIKYWRtaW4gb25seQkAzAgCCQELU3RyaW5nRW50cnkCCQEXc3RhdGljS2V5X29yYWNsZUFkZHJlc3MABQZvcmFjbGUFA25pbAFpAQ53ZWFySXRlbVRvRHVjawAEDGZpcnN0UGF5bWVudAkBBXZhbHVlAQkAkQMCCAUBaQhwYXltZW50cwAABA1zZWNvbmRQYXltZW50CQEFdmFsdWUBCQCRAwIIBQFpCHBheW1lbnRzAAEEDHZhbGlkUGF5bWVudAkBFmNoZWNrQWRkaXRpb25hbFBheW1lbnQCCQCRAwIIBQFpCHBheW1lbnRzAAIAAAQGZHVja0lkCQDYBAEJAQV2YWx1ZQEIBQxmaXJzdFBheW1lbnQHYXNzZXRJZAQNc2Vjb25kQXNzZXRJZAkA2AQBCQEFdmFsdWUBCAUNc2Vjb25kUGF5bWVudAdhc3NldElkAwMJAQIhPQIIBQxmaXJzdFBheW1lbnQGYW1vdW50AAEGCQECIT0CCAUNc2Vjb25kUGF5bWVudAZhbW91bnQAAQkAAgECGldSSVREOiBORlQgaXMgbm90IGF0dGFjaGVkBAhjaGlsZHJlbgkBBWFzSW50AQkA/AcECQERZ2V0QnJlZWRlckFkZHJlc3MAAhZ2YWxpZGF0ZUFuZEdldENoaWxkcmVuCQDMCAIFBmR1Y2tJZAUDbmlsBQNuaWwDCQAAAgUIY2hpbGRyZW4FCGNoaWxkcmVuCQDOCAIJAM4IAgkBCHdlYXJJdGVtAgUNc2Vjb25kQXNzZXRJZAUGZHVja0lkCQDMCAIJAQ5TY3JpcHRUcmFuc2ZlcgMIBQFpBmNhbGxlcgABCAUMZmlyc3RQYXltZW50B2Fzc2V0SWQFA25pbAUMdmFsaWRQYXltZW50CQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuAWkBEnJlbW92ZUl0ZW1Gcm9tRHVjawIIYnVybkl0ZW0MYXJ0ZWZhY3ROYW1lBAh3YXZlc0ZlZQMFCGJ1cm5JdGVtAAAJARFAZXh0ck5hdGl2ZSgxMDUwKQIJAQlnZXRPcmFjbGUACQEYc3RhdGljS2V5X2V4dHJhRmVlUmVtb3ZlAAQLZHVja1BheW1lbnQJAQV2YWx1ZQEJAJEDAggFAWkIcGF5bWVudHMAAAQPcm9ib0R1Y2tQYXltZW50CQEFdmFsdWUBCQCRAwIIBQFpCHBheW1lbnRzAAEEDHZhbGlkUGF5bWVudAkBFmNoZWNrQWRkaXRpb25hbFBheW1lbnQCCQCRAwIIBQFpCHBheW1lbnRzAAIFCHdhdmVzRmVlBAZkdWNrSWQJANgEAQkBBXZhbHVlAQgFC2R1Y2tQYXltZW50B2Fzc2V0SWQECnJvYm9EdWNrSWQJANgEAQkBBXZhbHVlAQgFD3JvYm9EdWNrUGF5bWVudAdhc3NldElkAwMJAQIhPQIIBQtkdWNrUGF5bWVudAZhbW91bnQAAQYJAQIhPQIIBQ9yb2JvRHVja1BheW1lbnQGYW1vdW50AAEJAAIBAhpXUklURDogTkZUIGlzIG5vdCBhdHRhY2hlZAQIY2hpbGRyZW4JAQVhc0ludAEJAPwHBAkBEWdldEJyZWVkZXJBZGRyZXNzAAIWdmFsaWRhdGVBbmRHZXRDaGlsZHJlbgkAzAgCBQZkdWNrSWQFA25pbAUDbmlsAwkAAAIFCGNoaWxkcmVuBQhjaGlsZHJlbgQUYXJ0ZWZhY3ROYW1lUm9ib2R1Y2sJAQhhc1N0cmluZwEJAPwHBAkBD2dldEl0ZW1zQWRkcmVzcwACFGNoZWNrQXJ0ZWZhY3REZXRhaWxzCQDMCAIFCnJvYm9EdWNrSWQFA25pbAUDbmlsAwkAAAIFFGFydGVmYWN0TmFtZVJvYm9kdWNrBRRhcnRlZmFjdE5hbWVSb2JvZHVjawMJAQIhPQIFFGFydGVmYWN0TmFtZVJvYm9kdWNrAgxBUlQtUk9CT0RVQ0sJAAIBAh9Pbmx5IHJvZG9kdWNrIGNhbiByZW1vdmUgaXRlbXMhAwMJAQEhAQkBD2NvbnRhaW5zRWxlbWVudAIFCXdlYXJhYmxlcwUMYXJ0ZWZhY3ROYW1lCQEBIQEJAQlpc0RlZmluZWQBCQESdHJ5R2V0Q29zbWV0aWNJdGVtAQUMYXJ0ZWZhY3ROYW1lBwkAAgECG1dSSVREOiBVbnN1cHBvcnRlZCB3ZWFyYWJsZQQKYXJ0ZWZhY3RJZAkBDHRyeUdldFN0cmluZwEJAQ9rZXlBcnRlZmFjdER1Y2sCBQZkdWNrSWQFDGFydGVmYWN0TmFtZQQJYm9vc3REdWNrAwkAAAIFDGFydGVmYWN0TmFtZQIKQVJULVhTQ0FSRgkA/AcECQEPZ2V0SXRlbXNBZGRyZXNzAAIPbWFuaXB1bGF0ZUJvb3N0CQDMCAIARQkAzAgCBQZkdWNrSWQFA25pbAUDbmlsBQNuaWwDCQAAAgUJYm9vc3REdWNrBQlib29zdER1Y2sDCQAAAgUKYXJ0ZWZhY3RJZAIACQACAQkArAICAhNEdWNrIG5vdCB3ZWFyaW5nIGEgBQxhcnRlZmFjdE5hbWUEBHR5cGUJAQp0cnlHZXRUeXBlAQUMYXJ0ZWZhY3ROYW1lBAp0eXBlUmVzdWx0AwkBAiE9AgUEdHlwZQIACQDMCAIJAQtEZWxldGVFbnRyeQEJAQxrZXlUeXBlc0R1Y2sCBQZkdWNrSWQFBHR5cGUFA25pbAUDbmlsBARidXJuAwUIYnVybkl0ZW0JAMwIAgkBBEJ1cm4CCQDZBAEFCmFydGVmYWN0SWQAAQUDbmlsCQDMCAIJAQ5TY3JpcHRUcmFuc2ZlcgMIBQFpBmNhbGxlcgABCQDZBAEFCmFydGVmYWN0SWQFA25pbAkAzggCCQDOCAIJAM4IAgkAzAgCCQELRGVsZXRlRW50cnkBCQEPa2V5QXJ0ZWZhY3REdWNrAgUGZHVja0lkBQxhcnRlZmFjdE5hbWUJAMwIAgkBDlNjcmlwdFRyYW5zZmVyAwgFAWkGY2FsbGVyAAEIBQtkdWNrUGF5bWVudAdhc3NldElkCQDMCAIJAQRCdXJuAgkA2QQBBQpyb2JvRHVja0lkAAEFA25pbAUEYnVybgUMdmFsaWRQYXltZW50BQp0eXBlUmVzdWx0CQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuAWkBEHdlYXJYSXRlbXNUb0R1Y2sABAx2YWxpZFBheW1lbnQJARZjaGVja0FkZGl0aW9uYWxQYXltZW50AgkAkQMCCAUBaQhwYXltZW50cwABAAADCQBmAgADCQCQAwEIBQFpCHBheW1lbnRzCQACAQIxV1dYSVREOiBQbGVhc2UgYXR0YWNoIGF0IGxlYXN0IDEgaXRlbSBhbmQgMSBkdWNrIQMJAGYCCQCQAwEIBQFpCHBheW1lbnRzAAcJAAIBAjFXV1hJVEQ6IFlvdSBjYW4gb25seSBhdHRhY2ggNSBpdGVtcyBhbmQgb25lIGR1Y2shCgEKaGFuZGxlSXRlbQIDYWNjB3BheW1lbnQEBWluZGV4CQDPCAIIBQFpCHBheW1lbnRzBQdwYXltZW50AwkAAAIFBWluZGV4AAAEBmR1Y2tJZAkA2AQBCQEFdmFsdWUBCAUHcGF5bWVudAdhc3NldElkAwkBAiE9AggFB3BheW1lbnQGYW1vdW50AAEJAAIBAhtXUklURDogRHVjayBpcyBub3QgYXR0YWNoZWQECGNoaWxkcmVuCQEFYXNJbnQBCQD8BwQJARFnZXRCcmVlZGVyQWRkcmVzcwACFnZhbGlkYXRlQW5kR2V0Q2hpbGRyZW4JAMwIAgUGZHVja0lkBQNuaWwFA25pbAMJAAACBQhjaGlsZHJlbgUIY2hpbGRyZW4JAM4IAgUDYWNjCQDMCAIJAQ5TY3JpcHRUcmFuc2ZlcgMIBQFpBmNhbGxlcgABCAUHcGF5bWVudAdhc3NldElkBQNuaWwJAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAM4IAgUDYWNjCQEId2Vhckl0ZW0CCQDYBAEJAQV2YWx1ZQEIBQdwYXltZW50B2Fzc2V0SWQJANgEAQkBBXZhbHVlAQgJAJEDAggFAWkIcGF5bWVudHMAAQdhc3NldElkCQDOCAIKAAIkbAgFAWkIcGF5bWVudHMKAAIkcwkAkAMBBQIkbAoABSRhY2MwBQNuaWwKAQUkZjBfMQICJGECJGkDCQBnAgUCJGkFAiRzBQIkYQkBCmhhbmRsZUl0ZW0CBQIkYQkAkQMCBQIkbAUCJGkKAQUkZjBfMgICJGECJGkDCQBnAgUCJGkFAiRzBQIkYQkAAgECE0xpc3Qgc2l6ZSBleGNlZWRzIDYJAQUkZjBfMgIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIFBSRhY2MwAAAAAQACAAMABAAFAAYFDHZhbGlkUGF5bWVudAECdHgBBnZlcmlmeQADCQEJaXNUZXN0RW52AAkA9AMDCAUCdHgJYm9keUJ5dGVzCQCRAwIIBQJ0eAZwcm9vZnMAAAgFAnR4D3NlbmRlclB1YmxpY0tleQQJZmlyc3RVc2VyASBRHOT9Zv8SadLxWhSfO7Li9Dt/wctoJ6I0Xmw411fdbQQKc2Vjb25kVXNlcgEgXHIOS67xIU9m5hlF+mqise2xNilZXxnMzLDhTUGIan0ECXRoaXJkVXNlcgEgoK+R5S15Q2FhMhKtjrn6GFlRnS1TSTbD0KP3qGAZO04ED2ZpcnN0VXNlclNpZ25lZAMJAPQDAwgFAnR4CWJvZHlCeXRlcwkAkQMCCAUCdHgGcHJvb2ZzAAAFCWZpcnN0VXNlcgABAwkA9AMDCAUCdHgJYm9keUJ5dGVzCQCRAwIIBQJ0eAZwcm9vZnMAAQUJZmlyc3RVc2VyAAEDCQD0AwMIBQJ0eAlib2R5Qnl0ZXMJAJEDAggFAnR4BnByb29mcwACBQlmaXJzdFVzZXIAAQAABBBzZWNvbmRVc2VyU2lnbmVkAwkA9AMDCAUCdHgJYm9keUJ5dGVzCQCRAwIIBQJ0eAZwcm9vZnMAAAUKc2Vjb25kVXNlcgABAwkA9AMDCAUCdHgJYm9keUJ5dGVzCQCRAwIIBQJ0eAZwcm9vZnMAAQUKc2Vjb25kVXNlcgABAwkA9AMDCAUCdHgJYm9keUJ5dGVzCQCRAwIIBQJ0eAZwcm9vZnMAAgUKc2Vjb25kVXNlcgABAAAED3RoaXJkVXNlclNpZ25lZAMJAPQDAwgFAnR4CWJvZHlCeXRlcwkAkQMCCAUCdHgGcHJvb2ZzAAAFCXRoaXJkVXNlcgABAwkA9AMDCAUCdHgJYm9keUJ5dGVzCQCRAwIIBQJ0eAZwcm9vZnMAAQUJdGhpcmRVc2VyAAEDCQD0AwMIBQJ0eAlib2R5Qnl0ZXMJAJEDAggFAnR4BnByb29mcwACBQl0aGlyZFVzZXIAAQAABA9zaWduYXR1cmVzQ291bnQJAGQCCQBkAgUPZmlyc3RVc2VyU2lnbmVkBRBzZWNvbmRVc2VyU2lnbmVkBQ90aGlyZFVzZXJTaWduZWQEByRtYXRjaDAFAnR4CQBnAgUPc2lnbmF0dXJlc0NvdW50AALeIUoS", "height": 3332586, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: EnKXPiVbchaW82oGzZ23AuJYdyGQmfLVwfgFniQj4G8C Next: GcfYNFwa8wzERYTomDtNgdyEtAhTjfH3T5qHYn36Lcjz Full:
OldNewDifferences
11 {-# STDLIB_VERSION 6 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 func a (b) = {
55 let c = getBoolean(this, b)
66 if ($isInstanceOf(c, "Boolean"))
77 then {
88 let d = c
99 d
1010 }
1111 else false
1212 }
1313
1414
1515 func e () = a("TESTENV")
1616
1717
1818 func f () = "static_oracleAddress"
1919
2020
2121 func g () = "static_breederAddress"
2222
2323
2424 func h () = "static_itemsAddress"
2525
2626
2727 func i () = "static_extraFee"
2828
2929
3030 func j () = "static_extraFeeRemove"
3131
3232
3333 func k () = "static_feeAggregator"
3434
3535
3636 let l = ["ART-CAPE", "ART-HAT", "ART-XSCARF", "ART-XSWEATER"]
3737
3838 func m (n,o) = ((n + "_") + o)
3939
4040
4141 func p (n,q) = ((n + "_") + q)
4242
4343
4444 func r (s,b) = {
4545 let c = getString(s, b)
4646 if ($isInstanceOf(c, "String"))
4747 then {
4848 let t = c
4949 t
5050 }
5151 else ""
5252 }
5353
5454
5555 func u (b) = r(this, b)
5656
5757
5858 func v (w) = {
5959 let c = w
6060 if ($isInstanceOf(c, "Int"))
6161 then {
6262 let x = c
6363 x
6464 }
6565 else throw("wrong type, expected: Int")
6666 }
6767
6868
6969 func y (w) = {
7070 let c = w
7171 if ($isInstanceOf(c, "String"))
7272 then {
7373 let z = c
7474 z
7575 }
7676 else throw("wrong type, expected: String")
7777 }
7878
7979
8080 func A () = Address(fromBase58String(u(f())))
8181
8282
8383 func B () = Address(fromBase58String(r(A(), g())))
8484
8585
8686 func C () = Address(fromBase58String(r(A(), h())))
8787
8888
8989 func D () = Address(fromBase58String(r(A(), k())))
9090
9191
9292 func E (F,G) = if (isDefined(F.assetId))
9393 then throw("WCAP: Please attach waves")
9494 else {
9595 let H = if ((G != 0))
9696 then G
9797 else getIntegerValue(A(), i())
9898 if ((F.amount != H))
9999 then throw((("WCAP: Please attach exactly " + toString(H)) + " amount of wavelets"))
100100 else [ScriptTransfer(D(), H, unit)]
101101 }
102102
103103
104104 func I (J) = {
105105 let b = ("direct_cosmetic_" + J)
106106 let c = getInteger(C(), b)
107107 if ($isInstanceOf(c, "Int"))
108108 then {
109109 let t = c
110110 t
111111 }
112112 else unit
113113 }
114114
115115
116116 func K (o) = r(C(), ("type_cosmetic_" + o))
117117
118118
119119 func L (M,n) = {
120120 let N = y(invoke(C(), "checkArtefactDetails", [M], nil))
121121 if ((N == N))
122122 then if (if (!(containsElement(l, N)))
123123 then !(isDefined(I(N)))
124124 else false)
125125 then throw("WRITD: Unsupported wearable")
126126 else {
127127 let O = u(m(n, N))
128128 let P = if ((N == "ART-XSCARF"))
129129 then invoke(C(), "manipulateBoost", [69, n], nil)
130130 else nil
131131 if ((P == P))
132132 then if ((O != ""))
133133 then throw(("Duck is already wearing a " + N))
134134 else {
135135 let q = K(N)
136136 let Q = if ((q != ""))
137137 then (u(p(n, q)) != "")
138138 else throw(("Type undefined, please contact admins " + N))
139139 if (Q)
140140 then throw("You can only attach 1 from each type to your duck!")
141141 else {
142142 let R = if ((q != ""))
143143 then [StringEntry(p(n, q), M)]
144144 else nil
145145 ([StringEntry(m(n, N), M)] ++ R)
146146 }
147147 }
148148 else throw("Strict value is not equal to itself.")
149149 }
150150 else throw("Strict value is not equal to itself.")
151151 }
152152
153153
154154 @Callable(S)
155155 func configureOracle (T) = if ((S.caller != this))
156156 then throw("admin only")
157157 else [StringEntry(f(), T)]
158158
159159
160160
161161 @Callable(S)
162162 func wearItemToDuck () = {
163163 let U = value(S.payments[0])
164164 let V = value(S.payments[1])
165165 let W = E(S.payments[2], 0)
166166 let n = toBase58String(value(U.assetId))
167167 let X = toBase58String(value(V.assetId))
168168 if (if ((U.amount != 1))
169169 then true
170170 else (V.amount != 1))
171171 then throw("WRITD: NFT is not attached")
172172 else {
173173 let Y = v(invoke(B(), "validateAndGetChildren", [n], nil))
174174 if ((Y == Y))
175175 then ((L(X, n) ++ [ScriptTransfer(S.caller, 1, U.assetId)]) ++ W)
176176 else throw("Strict value is not equal to itself.")
177177 }
178178 }
179179
180180
181181
182182 @Callable(S)
183183 func removeItemFromDuck (Z,N) = {
184184 let aa = if (Z)
185185 then 0
186186 else getIntegerValue(A(), j())
187187 let ab = value(S.payments[0])
188188 let ac = value(S.payments[1])
189189 let W = E(S.payments[2], aa)
190190 let n = toBase58String(value(ab.assetId))
191191 let ad = toBase58String(value(ac.assetId))
192192 if (if ((ab.amount != 1))
193193 then true
194194 else (ac.amount != 1))
195195 then throw("WRITD: NFT is not attached")
196196 else {
197197 let Y = v(invoke(B(), "validateAndGetChildren", [n], nil))
198198 if ((Y == Y))
199199 then {
200200 let ae = y(invoke(C(), "checkArtefactDetails", [ad], nil))
201201 if ((ae == ae))
202202 then if ((ae != "ART-ROBODUCK"))
203203 then throw("Only rododuck can remove items!")
204204 else if (if (!(containsElement(l, N)))
205205 then !(isDefined(I(N)))
206206 else false)
207207 then throw("WRITD: Unsupported wearable")
208208 else {
209209 let O = u(m(n, N))
210210 let P = if ((N == "ART-XSCARF"))
211211 then invoke(C(), "manipulateBoost", [69, n], nil)
212212 else nil
213213 if ((P == P))
214214 then if ((O == ""))
215215 then throw(("Duck not wearing a " + N))
216216 else {
217217 let q = K(N)
218218 let R = if ((q != ""))
219219 then [DeleteEntry(p(n, q))]
220220 else nil
221221 let af = if (Z)
222222 then [Burn(fromBase58String(O), 1)]
223223 else [ScriptTransfer(S.caller, 1, fromBase58String(O))]
224224 ((([DeleteEntry(m(n, N)), ScriptTransfer(S.caller, 1, ab.assetId), Burn(fromBase58String(ad), 1)] ++ af) ++ W) ++ R)
225225 }
226226 else throw("Strict value is not equal to itself.")
227227 }
228228 else throw("Strict value is not equal to itself.")
229229 }
230230 else throw("Strict value is not equal to itself.")
231231 }
232232 }
233233
234234
235235
236236 @Callable(S)
237237 func wearXItemsToDuck () = {
238238 let W = E(S.payments[1], 0)
239239 if ((3 > size(S.payments)))
240240 then throw("WWXITD: Please attach at least 1 item and 1 duck!")
241241 else if ((size(S.payments) > 7))
242242 then throw("WWXITD: You can only attach 5 items and one duck!")
243243 else {
244244 func ag (ah,F) = {
245245 let ai = indexOf(S.payments, F)
246246 if ((ai == 0))
247247 then {
248248 let n = toBase58String(value(F.assetId))
249249 if ((F.amount != 1))
250250 then throw("WRITD: Duck is not attached")
251251 else {
252252 let Y = v(invoke(B(), "validateAndGetChildren", [n], nil))
253253 if ((Y == Y))
254254 then (ah ++ [ScriptTransfer(S.caller, 1, F.assetId)])
255255 else throw("Strict value is not equal to itself.")
256256 }
257257 }
258258 else (ah ++ L(toBase58String(value(F.assetId)), toBase58String(value(S.payments[1].assetId))))
259259 }
260260
261261 ({
262262 let aj = S.payments
263263 let ak = size(aj)
264264 let al = nil
265265 func am (an,ao) = if ((ao >= ak))
266266 then an
267267 else ag(an, aj[ao])
268268
269269 func ap (an,ao) = if ((ao >= ak))
270270 then an
271271 else throw("List size exceeds 6")
272272
273273 ap(am(am(am(am(am(am(al, 0), 1), 2), 3), 4), 5), 6)
274274 } ++ W)
275275 }
276276 }
277277
278278
279279 @Verifier(aq)
280280 func ar () = if (e())
281281 then sigVerify(aq.bodyBytes, aq.proofs[0], aq.senderPublicKey)
282282 else {
283283 let as = base58'6TdaXEfhnjYquvPf3yV7MFxt2CbgFmaqsvGwkKfXtKi4'
284284 let at = base58'7DsP2WaMLocbHuUxux7pbXRjTrrZ1TFQPsi5QumS3gr8'
285285 let au = base58'BpFWP3p3JgYrrP45xfrKzeMcWMEXoinj4FVPPkUiA8D3'
286286 let av = if (sigVerify(aq.bodyBytes, aq.proofs[0], as))
287287 then 1
288288 else if (sigVerify(aq.bodyBytes, aq.proofs[1], as))
289289 then 1
290290 else if (sigVerify(aq.bodyBytes, aq.proofs[2], as))
291291 then 1
292292 else 0
293293 let aw = if (sigVerify(aq.bodyBytes, aq.proofs[0], at))
294294 then 1
295295 else if (sigVerify(aq.bodyBytes, aq.proofs[1], at))
296296 then 1
297297 else if (sigVerify(aq.bodyBytes, aq.proofs[2], at))
298298 then 1
299299 else 0
300300 let ax = if (sigVerify(aq.bodyBytes, aq.proofs[0], au))
301301 then 1
302302 else if (sigVerify(aq.bodyBytes, aq.proofs[1], au))
303303 then 1
304304 else if (sigVerify(aq.bodyBytes, aq.proofs[2], au))
305305 then 1
306306 else 0
307307 let ay = ((av + aw) + ax)
308308 let c = aq
309309 (ay >= 2)
310310 }
311311

github/deemru/w8io/c3f4982 
27.14 ms