tx · 2aWpgS5ywDn2QeNJNJosPgaKQ8XCn9kEn9oAUd1n2szq

3MvjAaDYHpS4A5K4CV3kZMMEH9m9JdBSvbq:  -0.50000000 Waves

2022.12.15 12:23 [2361243] smart account 3MvjAaDYHpS4A5K4CV3kZMMEH9m9JdBSvbq > SELF 0.00000000 Waves

{ "type": 13, "id": "2aWpgS5ywDn2QeNJNJosPgaKQ8XCn9kEn9oAUd1n2szq", "fee": 50000000, "feeAssetId": null, "timestamp": 1671096287292, "version": 2, "chainId": 84, "sender": "3MvjAaDYHpS4A5K4CV3kZMMEH9m9JdBSvbq", "senderPublicKey": "H6UqxUDcJamDRg1uykVcWMn4zhAMTV7i1nfPq1moLWmJ", "proofs": [ "4x8bf4qsRxJS55CKvW4TVPciuU8yRXAKJhv2kuJbppxnxq9qn8caWFyn6sgqZbtyrCX1gsjwJ2vDJmBvxZuXRYMB" ], "script": "base64:BgJBCAISCwoJCAgICAgBCAgIEgQKAggIEgQKAggIEgYKBAgICAESBgoECAgICBIFCgMICAESAwoBCBIDCgEIEgMKAQgJAAlzZXBhcmF0b3ICAV8ABGtCdXkCA2J1eQAGa1ByaWNlAgVwcmljZQAFa1NlbGwCBHNlbGwAEm1heEF1Y3Rpb25EdXJhdGlvbgAHAARrQmlkAgNiaWQADHN0YXR1c0Zvck5GVAkAlgoEAgRPUEVOAgZDTE9TRUQCCFJFV0FSREVEAghDQU5DRUxFRAALZEFwcEFkZHJlc3MBGgFUSrhPbN7C2pPt9I7pSjb41U9/ldVVW12gAQVpc05mdAEHYXNzZXRJZAQHJG1hdGNoMAkA7AcBBQdhc3NldElkAwkAAQIFByRtYXRjaDACBUFzc2V0BAV0b2tlbgUHJG1hdGNoMAMDCQAAAggFBXRva2VuCGRlY2ltYWxzAAAJAAACCAUFdG9rZW4IcXVhbnRpdHkAAQcJAAACCAUFdG9rZW4KcmVpc3N1YWJsZQcHBwkBaQEJY3JlYXRlTmZ0CQhuZnRfbmFtZQluZnRfb3duZXIPbmZ0X2RBcHBBZGRyZXNzCG5mdF90eXBlCG5mdF90YWdzEW5mdF9zZWxsaW5nX3ByaWNlD25mdF9kZXNjcmlwdGlvbgpuZnRfb25TZWxsCG5mdF9kYXRhBAhuZXdUb2tlbgkAwggFBQhuZnRfbmFtZQUPbmZ0X2Rlc2NyaXB0aW9uAAEAAAcEB2lzc3VlSWQJALgIAQUIbmV3VG9rZW4ED2NyZWF0ZV9uZnRfdHhpZAgFAWkNdHJhbnNhY3Rpb25JZAkAzAgCBQhuZXdUb2tlbgkAzAgCCQEOU2NyaXB0VHJhbnNmZXIDCAUBaQZjYWxsZXIAAQUHaXNzdWVJZAkAzAgCCQELU3RyaW5nRW50cnkCCQCsAgIJAKwCAgkA2AQBBQ9jcmVhdGVfbmZ0X3R4aWQFCXNlcGFyYXRvcgIFb3duZXIJAKUIAQgFAWkGY2FsbGVyCQDMCAIJAQtTdHJpbmdFbnRyeQIJAKwCAgkA2AQBBQdpc3N1ZUlkAgZfb3duZXIJAKUIAQgFAWkGY2FsbGVyCQDMCAIJAQtTdHJpbmdFbnRyeQIJAKwCAgkA2AQBBQdpc3N1ZUlkAg9fY3JlYXRvcl9vZl9uZnQJAKUIAQgFAWkGY2FsbGVyCQDMCAIJAQtTdHJpbmdFbnRyeQIJAKwCAgkArAICCQDYBAEFD2NyZWF0ZV9uZnRfdHhpZAUJc2VwYXJhdG9yAghuZnRfdHlwZQUIbmZ0X3R5cGUJAMwIAgkBC1N0cmluZ0VudHJ5AgkArAICCQCsAgIJANgEAQUPY3JlYXRlX25mdF90eGlkBQlzZXBhcmF0b3ICCG5mdF90YWdzBQhuZnRfdGFncwkAzAgCCQELU3RyaW5nRW50cnkCCQCsAgIJAKwCAgkA2AQBBQ9jcmVhdGVfbmZ0X3R4aWQFCXNlcGFyYXRvcgIPbmZ0X2RBcHBBZGRyZXNzBQ9uZnRfZEFwcEFkZHJlc3MJAMwIAgkBDEludGVnZXJFbnRyeQIJAKwCAgkArAICCQDYBAEFD2NyZWF0ZV9uZnRfdHhpZAUJc2VwYXJhdG9yAhFuZnRfc2VsbGluZ19wcmljZQURbmZ0X3NlbGxpbmdfcHJpY2UJAMwIAgkBC1N0cmluZ0VudHJ5AgkArAICCQCsAgIJANgEAQUPY3JlYXRlX25mdF90eGlkBQlzZXBhcmF0b3ICCm5mdF9vblNlbGwFCm5mdF9vblNlbGwJAMwIAgkBC1N0cmluZ0VudHJ5AgkArAICCQCsAgIJANgEAQUPY3JlYXRlX25mdF90eGlkBQlzZXBhcmF0b3ICCG5mdF9kYXRhBQhuZnRfZGF0YQkAzAgCCQELU3RyaW5nRW50cnkCCQCsAgIJAKwCAgkA2AQBBQ9jcmVhdGVfbmZ0X3R4aWQFCXNlcGFyYXRvcgIJaXNzdWVfbmZ0CQDYBAEFB2lzc3VlSWQFA25pbAFpAQdzZWxsTkZUAg9jcmVhdGVfbmZ0X3R4aWQFcHJpY2UEDXNlbGxfbmZ0X3R4aWQIBQFpDXRyYW5zYWN0aW9uSWQEB2Fzc2V0SWQJARFAZXh0ck5hdGl2ZSgxMDUzKQIFBHRoaXMJAKwCAgUPY3JlYXRlX25mdF90eGlkAgZfb3duZXIEBnNlbGxlcggIBQFpBmNhbGxlcgVieXRlcwQKdDAyMDQ0MjEyOQkAlAoCCQEFdmFsdWUBCAkAkQMCCAUBaQhwYXltZW50cwAAB2Fzc2V0SWQJAQV2YWx1ZQEICQCRAwIIBQFpCHBheW1lbnRzAAAGYW1vdW50BAZ0b2tlbjAIBQp0MDIwNDQyMTI5Al8xBAdhbW91bnQwCAUKdDAyMDQ0MjEyOQJfMgMJAQEhAQkBBWlzTmZ0AQUGdG9rZW4wCQACAQIQVG9rZW4gaXMgbm90IE5GVAkAzAgCCQELU3RyaW5nRW50cnkCCQCsAgIJANgEAQUNc2VsbF9uZnRfdHhpZAIGX293bmVyCQClCAEIBQFpBmNhbGxlcgkAzAgCCQELU3RyaW5nRW50cnkCCQCsAgIJANgEAQUNc2VsbF9uZnRfdHhpZAISX25mdF9zZWxsaW5nX3ByaWNlBQVwcmljZQkAzAgCCQELU3RyaW5nRW50cnkCCQCsAgIJANgEAQUNc2VsbF9uZnRfdHhpZAIPX25mdF9wdXRvbl9zZWxsBQdhc3NldElkCQDMCAIJAQtTdHJpbmdFbnRyeQIJAKwCAgkArAICCQDYBAEFDXNlbGxfbmZ0X3R4aWQFCXNlcGFyYXRvcgIKbmZ0X29uU2VsbAIEVFJVRQkAzAgCCQELU3RyaW5nRW50cnkCCQCsAgIJAKwCAgUGa1ByaWNlBQlzZXBhcmF0b3IJANgEAQkBBXZhbHVlAQgJAJEDAggFAWkIcGF5bWVudHMAAAdhc3NldElkBQVwcmljZQkAzAgCCQELU3RyaW5nRW50cnkCCQCsAgIJAKwCAgkApQgBCAUBaQZjYWxsZXIFCXNlcGFyYXRvcgUFa1NlbGwJAKwCAgkArAICCQDYBAEFBnRva2VuMAUJc2VwYXJhdG9yCQCkAwEFB2Ftb3VudDAFA25pbAFpAQZidXlORlQCDXNlbGxfbmZ0X3R4aWQFbmZ0SUQEB2Fzc2V0SWQJANkEAQUFbmZ0SUQEDGJ1eV9uZnRfdHhpZAgFAWkNdHJhbnNhY3Rpb25JZAQRY3VycmVudF9uZnRfb3duZXIJARFAZXh0ck5hdGl2ZSgxMDUzKQIFBHRoaXMJAKwCAgUNc2VsbF9uZnRfdHhpZAIGX293bmVyBAZhbW91bnQJAQV2YWx1ZQEICQCRAwIIBQFpCHBheW1lbnRzAAAGYW1vdW50BAVwcmljZQkBEUBleHRyTmF0aXZlKDEwNTgpAQkArAICCQCsAgIJAKwCAgkArAICBQZrUHJpY2UFCXNlcGFyYXRvcgUFbmZ0SUQCAV8FEWN1cnJlbnRfbmZ0X293bmVyBAVvd25lcgkBE3ZhbHVlT3JFcnJvck1lc3NhZ2UCCQERQGV4dHJOYXRpdmUoMTA1OCkBCQCsAgIJAKwCAgUFbmZ0SUQFCXNlcGFyYXRvcgIFT3duZXICCE5vIG93bmVyAwkBAiE9AggJAJEDAggFAWkIcGF5bWVudHMAAAdhc3NldElkBQR1bml0CQACAQIMUGF5IGluIHdhdmVzAwkAAAIFEWN1cnJlbnRfbmZ0X293bmVyCQClCAEIBQFpBmNhbGxlcgkAAgECJE5vdCBlbGlnaWJsZSB0byBidXkgYXMgeW91IGFyZSBvd25lcgMJAQIhPQIFBmFtb3VudAkBDXBhcnNlSW50VmFsdWUBBQVwcmljZQkAAgECF1NlbGxpbmcgcHJpY2Ugbm90IG1hdGNoCQDMCAIJAQ5TY3JpcHRUcmFuc2ZlcgMIBQFpBmNhbGxlcgABBQdhc3NldElkCQDMCAIJAQ5TY3JpcHRUcmFuc2ZlcgMJAQdBZGRyZXNzAQkA2QQBBRFjdXJyZW50X25mdF9vd25lcgUGYW1vdW50BQR1bml0CQDMCAIJAQtTdHJpbmdFbnRyeQIJAKwCAgkArAICCQClCAEIBQFpBmNhbGxlcgUJc2VwYXJhdG9yBQRrQnV5CQCsAgIJAKwCAgUFbmZ0SUQFCXNlcGFyYXRvcgkApAMBBQZhbW91bnQJAMwIAgkBC0RlbGV0ZUVudHJ5AQkArAICCQCsAgICBG5mdF8FEWN1cnJlbnRfbmZ0X293bmVyAgZfb3duZXIJAMwIAgkBC1N0cmluZ0VudHJ5AgkArAICBQ1zZWxsX25mdF90eGlkAgZfb3duZXICG1RSQU5TRkVSUkVEIC0gTk9UIE9XTkVSIE5PVwkAzAgCCQELU3RyaW5nRW50cnkCCQCsAgIJAKwCAgUNc2VsbF9uZnRfdHhpZAUJc2VwYXJhdG9yAgpuZnRfb25TZWxsAgRTT0xECQDMCAIJAQtTdHJpbmdFbnRyeQIJAKwCAgkA2AQBBQxidXlfbmZ0X3R4aWQCFl9vd25lcnNoaXBfdHJhc25mZXJfdG8JAKUIAQgFAWkGY2FsbGVyCQDMCAIJAQtTdHJpbmdFbnRyeQIJAKwCAgkArAICAgRuZnRfBRFjdXJyZW50X25mdF9vd25lcgIGX293bmVyCQClCAEIBQFpBmNhbGxlcgkAzAgCCQELU3RyaW5nRW50cnkCCQCsAgIJAKwCAgkA2AQBBQdhc3NldElkBQlzZXBhcmF0b3ICBl9vd25lcgkApQgBCAUBaQZjYWxsZXIFA25pbAFpAQphZGRBdWN0aW9uBAVzdGFydANlbmQKc3RhcnRQcmljZQhkdXJhdGlvbgQEdHhJZAkA2AQBCAUBaQ10cmFuc2FjdGlvbklkBAVuZnRJZAkBBXZhbHVlAQgJAJEDAggFAWkIcGF5bWVudHMAAAdhc3NldElkBAVwcmljZQkBBXZhbHVlAQUKc3RhcnRQcmljZQQJZW5kSGVpZ2h0CQBkAggFCWxhc3RCbG9jawZoZWlnaHQFCGR1cmF0aW9uBAZjYWxsZXIICAUBaQZjYWxsZXIFYnl0ZXMEEWNoZWNrTmZ0QXVjdGlvbmVkBAckbWF0Y2gwCQCdCAIFBHRoaXMJAKwCAgkArAICCQCsAgIJANgEAQUFbmZ0SWQFCXNlcGFyYXRvcgILbmZ0X3N0YXR1c18JANgEAQUGY2FsbGVyAwkAAQIFByRtYXRjaDACBlN0cmluZwQBYQUHJG1hdGNoMAYHAwkAAAIICQCRAwIIBQFpCHBheW1lbnRzAAAHYXNzZXRJZAUEdW5pdAkAAgECEE5GVCBub3QgYXR0YWNoZWQDCQAAAgURY2hlY2tOZnRBdWN0aW9uZWQGCQACAQIXQWxyZWFkeSBpbiBhdWN0aW9uIGxpc3QDCQBmAgUIZHVyYXRpb24FEm1heEF1Y3Rpb25EdXJhdGlvbgkAAgEJAKwCAgI2RHVyYXRpb24gaXMgdG9vIGxvbmcuIE11c3QgYmUgbGVzcyB0aGFuIG9yIGVxdWFsIHRvIDcgCQCkAwEFEm1heEF1Y3Rpb25EdXJhdGlvbgkAzAgCCQELU3RyaW5nRW50cnkCCQCsAgIJAKwCAgUEdHhJZAIWbmZ0X3N0YXJ0X2F1Y3Rpb25fZGF0ZQkA2AQBBQZjYWxsZXIFBXN0YXJ0CQDMCAIJAQtTdHJpbmdFbnRyeQIJAKwCAgkArAICBQR0eElkAhRuZnRfZW5kX2F1Y3Rpb25fZGF0ZQkA2AQBBQZjYWxsZXIFA2VuZAkAzAgCCQELU3RyaW5nRW50cnkCCQCsAgIFBHR4SWQCEF9uZnRfc3RhcnRfcHJpY2UFCnN0YXJ0UHJpY2UJAMwIAgkBC1N0cmluZ0VudHJ5AgkArAICBQR0eElkAgpfbmZ0X293bmVyCQClCAEIBQFpBmNhbGxlcgkAzAgCCQELU3RyaW5nRW50cnkCCQCsAgIFBHR4SWQCD19uZnRfb25fYXVjdGlvbgkA2AQBBQVuZnRJZAkAzAgCCQELU3RyaW5nRW50cnkCCQCsAgIFBHR4SWQCEF9wcmV2aW91c19iaWRkZXICBG5vbmUJAMwIAgkBC1N0cmluZ0VudHJ5AgkArAICBQR0eElkAgxfaGlnaGVzdF9iaWQCATAJAMwIAgkBC1N0cmluZ0VudHJ5AgkArAICBQR0eElkAg5fd2lubmVyX29mX25mdAIBMAkAzAgCCQELU3RyaW5nRW50cnkCCQCsAgIFBHR4SWQCDV9iaWRkZXJfY291bnQCATAJAMwIAgkBC1N0cmluZ0VudHJ5AgkArAICBQR0eElkAgtfbmZ0X3N0YXR1cwIET1BFTgUDbmlsAWkBCHBsYWNlQmlkBAlhdWN0aW9uSWQFbmZ0SWQJbmZ0X293bmVyCWJpZF9wcmljZQQEdHhJZAkA2AQBCAUBaQ10cmFuc2FjdGlvbklkBAZjYWxsZXIICAUBaQZjYWxsZXIFYnl0ZXMEB2Fzc2V0SWQJANkEAQUFbmZ0SWQED2N1cnJlbnRCaWRQcmljZQgJAJEDAggFAWkIcGF5bWVudHMAAAZhbW91bnQEFWdldExhc3RXaW5uZXJCaWRQcmljZQkBEUBleHRyTmF0aXZlKDEwNTMpAgUEdGhpcwkArAICBQlhdWN0aW9uSWQCDF9oaWdoZXN0X2JpZAQYZ2V0UHJldmlvdXNCaWRkZXJBZGRyZXNzCQCdCAIFBHRoaXMJAKwCAgUJYXVjdGlvbklkAhBfcHJldmlvdXNfYmlkZGVyBA9jdXJyZW50QmlkQ291bnQJARFAZXh0ck5hdGl2ZSgxMDUzKQIFBHRoaXMJAKwCAgUJYXVjdGlvbklkAg1fYmlkZGVyX2NvdW50BBRnZXRMYXN0V2lubmVyQWRkcmVzcwkBEUBleHRyTmF0aXZlKDEwNTMpAgUEdGhpcwkArAICBQlhdWN0aW9uSWQCDl93aW5uZXJfb2ZfbmZ0BBFjaGVja05mdEF1Y3Rpb25lZAkBEUBleHRyTmF0aXZlKDEwNTMpAgUEdGhpcwkArAICBQlhdWN0aW9uSWQCC19uZnRfc3RhdHVzAwkBAiE9AggJAJEDAggFAWkIcGF5bWVudHMAAAdhc3NldElkBQR1bml0CQACAQIMUGF5IGluIHdhdmVzAwkBAiE9AgURY2hlY2tOZnRBdWN0aW9uZWQCBE9QRU4JAAIBAhROb3Qgb3BlbiBmb3IgYXVjdGlvbgMJAGcCCQENcGFyc2VJbnRWYWx1ZQEFFWdldExhc3RXaW5uZXJCaWRQcmljZQUPY3VycmVudEJpZFByaWNlCQACAQIlQmlkIGlzIGxlc3MgdGhlbiBzdGFydGluZy9oaWdoZXN0IEJpZAMJAAACBRVnZXRMYXN0V2lubmVyQmlkUHJpY2UCATAJAMwIAgkBC1N0cmluZ0VudHJ5AgkArAICBQlhdWN0aW9uSWQCDF9oaWdoZXN0X2JpZAkApAMBBQ9jdXJyZW50QmlkUHJpY2UJAMwIAgkBC1N0cmluZ0VudHJ5AgkArAICBQlhdWN0aW9uSWQCDl93aW5uZXJfb2ZfbmZ0CQDYBAEICAUBaQZjYWxsZXIFYnl0ZXMJAMwIAgkBC1N0cmluZ0VudHJ5AgkArAICBQlhdWN0aW9uSWQCDV9iaWRkZXJfY291bnQJAKQDAQkAZAIJAQ1wYXJzZUludFZhbHVlAQUPY3VycmVudEJpZENvdW50AAEJAMwIAgkBC1N0cmluZ0VudHJ5AgkArAICBQlhdWN0aW9uSWQCB19uZnRfaWQJANgEAQUHYXNzZXRJZAkAzAgCCQELU3RyaW5nRW50cnkCCQCsAgIFCWF1Y3Rpb25JZAIKX25mdF9vd25lcgUJbmZ0X293bmVyCQDMCAIJAQtTdHJpbmdFbnRyeQIJAKwCAgkArAICCQCsAgIFBHR4SWQCAV8FCWF1Y3Rpb25JZAIMX2hpZ2hlc3RfYmlkCQCkAwEFD2N1cnJlbnRCaWRQcmljZQkAzAgCCQELU3RyaW5nRW50cnkCCQCsAgIJAKwCAgkArAICBQR0eElkAgFfBQlhdWN0aW9uSWQCB193aW5uZXIJANgEAQgIBQFpBmNhbGxlcgVieXRlcwkAzAgCCQELU3RyaW5nRW50cnkCCQCsAgIJAKwCAgkArAICBQR0eElkAgFfBQlhdWN0aW9uSWQCDV9iaWRkZXJfY291bnQJAKQDAQkAZAIJAQ1wYXJzZUludFZhbHVlAQUPY3VycmVudEJpZENvdW50AAEJAMwIAgkBC1N0cmluZ0VudHJ5AgkArAICCQCsAgIJAKwCAgUEdHhJZAIBXwUJYXVjdGlvbklkAgdfbmZ0X2lkCQDYBAEFB2Fzc2V0SWQJAMwIAgkBC1N0cmluZ0VudHJ5AgkArAICCQCsAgIJAKwCAgUEdHhJZAIBXwUJYXVjdGlvbklkAgpfbmZ0X293bmVyBQluZnRfb3duZXIJAMwIAgkBC1N0cmluZ0VudHJ5AgkArAICBQR0eElkAg9fYmlkX2Zvcl9uZnRfYnkJANgEAQUGY2FsbGVyCQDMCAIJAQtTdHJpbmdFbnRyeQIJAKwCAgUEdHhJZAIQX2JpZF9wcmljZV9wbGFjZQUJYmlkX3ByaWNlCQDMCAIJAQtTdHJpbmdFbnRyeQIJAKwCAgUEdHhJZAImX3ByZXZpb3VzX2JpZF9hbW91bnRfcmVmdW5kX3RvX2FkZHJlc3MFFGdldExhc3RXaW5uZXJBZGRyZXNzCQDMCAIJAQtTdHJpbmdFbnRyeQIJAKwCAgUEdHhJZAIbX3ByZXZvaXVzX2JpZF9hbW91bnRfcmVmdW5kBRVnZXRMYXN0V2lubmVyQmlkUHJpY2UFA25pbAkAzAgCCQELU3RyaW5nRW50cnkCCQCsAgIFCWF1Y3Rpb25JZAIMX2hpZ2hlc3RfYmlkCQCkAwEFD2N1cnJlbnRCaWRQcmljZQkAzAgCCQELU3RyaW5nRW50cnkCCQCsAgIFCWF1Y3Rpb25JZAIOX3dpbm5lcl9vZl9uZnQJANgEAQgIBQFpBmNhbGxlcgVieXRlcwkAzAgCCQELU3RyaW5nRW50cnkCCQCsAgIFCWF1Y3Rpb25JZAINX2JpZGRlcl9jb3VudAkApAMBCQBkAgkBDXBhcnNlSW50VmFsdWUBBQ9jdXJyZW50QmlkQ291bnQAAQkAzAgCCQELU3RyaW5nRW50cnkCCQCsAgIFCWF1Y3Rpb25JZAIHX25mdF9pZAkA2AQBBQdhc3NldElkCQDMCAIJAQtTdHJpbmdFbnRyeQIJAKwCAgUJYXVjdGlvbklkAgpfbmZ0X293bmVyBQluZnRfb3duZXIJAMwIAgkBC1N0cmluZ0VudHJ5AgkArAICCQCsAgIJAKwCAgUEdHhJZAIBXwUJYXVjdGlvbklkAgxfaGlnaGVzdF9iaWQJAKQDAQUPY3VycmVudEJpZFByaWNlCQDMCAIJAQtTdHJpbmdFbnRyeQIJAKwCAgkArAICCQCsAgIFBHR4SWQCAV8FCWF1Y3Rpb25JZAIHX3dpbm5lcgkA2AQBCAgFAWkGY2FsbGVyBWJ5dGVzCQDMCAIJAQtTdHJpbmdFbnRyeQIJAKwCAgkArAICCQCsAgIFBHR4SWQCAV8FCWF1Y3Rpb25JZAINX2JpZGRlcl9jb3VudAkApAMBCQBkAgkBDXBhcnNlSW50VmFsdWUBBQ9jdXJyZW50QmlkQ291bnQAAQkAzAgCCQELU3RyaW5nRW50cnkCCQCsAgIJAKwCAgkArAICBQR0eElkAgFfBQlhdWN0aW9uSWQCB19uZnRfaWQJANgEAQUHYXNzZXRJZAkAzAgCCQELU3RyaW5nRW50cnkCCQCsAgIJAKwCAgkArAICBQR0eElkAgFfBQlhdWN0aW9uSWQCCl9uZnRfb3duZXIFCW5mdF9vd25lcgkAzAgCCQELU3RyaW5nRW50cnkCCQCsAgIFBHR4SWQCD19iaWRfZm9yX25mdF9ieQkA2AQBBQZjYWxsZXIJAMwIAgkBC1N0cmluZ0VudHJ5AgkArAICBQR0eElkAhBfYmlkX3ByaWNlX3BsYWNlBQliaWRfcHJpY2UJAMwIAgkBC1N0cmluZ0VudHJ5AgkArAICBQR0eElkAiZfcHJldmlvdXNfYmlkX2Ftb3VudF9yZWZ1bmRfdG9fYWRkcmVzcwUUZ2V0TGFzdFdpbm5lckFkZHJlc3MJAMwIAgkBC1N0cmluZ0VudHJ5AgkArAICBQR0eElkAhtfcHJldm9pdXNfYmlkX2Ftb3VudF9yZWZ1bmQFFWdldExhc3RXaW5uZXJCaWRQcmljZQkAzAgCCQEOU2NyaXB0VHJhbnNmZXIDCQEHQWRkcmVzcwEJANkEAQUUZ2V0TGFzdFdpbm5lckFkZHJlc3MJAQ1wYXJzZUludFZhbHVlAQUVZ2V0TGFzdFdpbm5lckJpZFByaWNlBQR1bml0BQNuaWwBaQEOYWNjZXB0QmlkT2ZmZXIDCWF1Y3Rpb25JZAVuZnRJZBRiaWRfYW1vdW50X2Zyb21fdXNlcgQEdHhJZAkA2AQBCAUBaQ10cmFuc2FjdGlvbklkBAZjYWxsZXIICAUBaQZjYWxsZXIFYnl0ZXMEB2Fzc2V0SWQJANkEAQUFbmZ0SWQEEmdldE5mdFdpbm5pbmdQcmljZQkBEUBleHRyTmF0aXZlKDEwNTMpAgUEdGhpcwkArAICBQlhdWN0aW9uSWQCDF9oaWdoZXN0X2JpZAQQZ2V0QXVjdGlvbldpbm5lcgkBEUBleHRyTmF0aXZlKDEwNTMpAgUEdGhpcwkArAICBQlhdWN0aW9uSWQCDl93aW5uZXJfb2ZfbmZ0CQDMCAIJAQ5TY3JpcHRUcmFuc2ZlcgMJAQdBZGRyZXNzAQUGY2FsbGVyCQENcGFyc2VJbnRWYWx1ZQEFEmdldE5mdFdpbm5pbmdQcmljZQUEdW5pdAkAzAgCCQEOU2NyaXB0VHJhbnNmZXIDCQEHQWRkcmVzcwEJANkEAQUQZ2V0QXVjdGlvbldpbm5lcgABBQdhc3NldElkCQDMCAIJAQtTdHJpbmdFbnRyeQIJAKwCAgUEdHhJZAIVX2Ftb3VudF9wYWlkX3RvX293bmVyBRJnZXROZnRXaW5uaW5nUHJpY2UJAMwIAgkBC1N0cmluZ0VudHJ5AgkArAICBQR0eElkAhBfbmZ0X3RyYW5zZmVyX3RvBRBnZXRBdWN0aW9uV2lubmVyCQDMCAIJAQtTdHJpbmdFbnRyeQIJAKwCAgUEdHhJZAILX25mdF9zdGF0dXMCCFJFV0FSREVECQDMCAIJAQtTdHJpbmdFbnRyeQIJAKwCAgUJYXVjdGlvbklkAhVfYW1vdW50X3BhaWRfdG9fb3duZXIFEmdldE5mdFdpbm5pbmdQcmljZQkAzAgCCQELU3RyaW5nRW50cnkCCQCsAgIFCWF1Y3Rpb25JZAIQX25mdF90cmFuc2Zlcl90bwUQZ2V0QXVjdGlvbldpbm5lcgkAzAgCCQELU3RyaW5nRW50cnkCCQCsAgIFCWF1Y3Rpb25JZAILX25mdF9zdGF0dXMCCFJFV0FSREVEBQNuaWwBaQENY2FuY2VsQXVjdGlvbgEJYXVjdGlvbklkBAR0eElkCQDYBAEIBQFpDXRyYW5zYWN0aW9uSWQEBmNhbGxlcggIBQFpBmNhbGxlcgVieXRlcwQNYXVjdGlvblN0YXR1cwkBEUBleHRyTmF0aXZlKDEwNTMpAgUEdGhpcwkArAICBQlhdWN0aW9uSWQCC19uZnRfc3RhdHVzBA1iaWRkaW5nV2lubmVyCQERQGV4dHJOYXRpdmUoMTA1MykCBQR0aGlzCQCsAgIFCWF1Y3Rpb25JZAIOX3dpbm5lcl9vZl9uZnQECG5mdE93bmVyCQERQGV4dHJOYXRpdmUoMTA1MykCBQR0aGlzCQCsAgIFCWF1Y3Rpb25JZAIKX25mdF9vd25lcgQFbmZ0SWQJARFAZXh0ck5hdGl2ZSgxMDUzKQIFBHRoaXMJAKwCAgUJYXVjdGlvbklkAg9fbmZ0X29uX2F1Y3Rpb24EDGJpZGRpbmdQcmljZQkBEUBleHRyTmF0aXZlKDEwNTMpAgUEdGhpcwkArAICBQlhdWN0aW9uSWQCDF9oaWdoZXN0X2JpZAMJAAACBQ1iaWRkaW5nV2lubmVyAgEwCQDMCAIJAQtTdHJpbmdFbnRyeQIJAKwCAgkArAICBQR0eElkBQlhdWN0aW9uSWQCC19uZnRfc3RhdHVzAghDQU5DRUxFRAkAzAgCCQEOU2NyaXB0VHJhbnNmZXIDCQEHQWRkcmVzcwEJANkEAQUIbmZ0T3duZXIAAQkA2QQBBQVuZnRJZAUDbmlsCQDMCAIJAQtTdHJpbmdFbnRyeQIJAKwCAgUJYXVjdGlvbklkAgtfbmZ0X3N0YXR1cwIIQ0FOQ0VMRUQJAMwIAgkBC1N0cmluZ0VudHJ5AgkArAICBQlhdWN0aW9uSWQCJl9wcmV2aW91c19iaWRfYW1vdW50X3JlZnVuZF90b19hZGRyZXNzBQ1iaWRkaW5nV2lubmVyCQDMCAIJAQtTdHJpbmdFbnRyeQIJAKwCAgUJYXVjdGlvbklkAhtfcHJldm9pdXNfYmlkX2Ftb3VudF9yZWZ1bmQFDGJpZGRpbmdQcmljZQkAzAgCCQELU3RyaW5nRW50cnkCCQCsAgIFBHR4SWQCC19uZnRfc3RhdHVzAghDQU5DRUxFRAkAzAgCCQELU3RyaW5nRW50cnkCCQCsAgIFBHR4SWQCJl9wcmV2aW91c19iaWRfYW1vdW50X3JlZnVuZF90b19hZGRyZXNzBQ1iaWRkaW5nV2lubmVyCQDMCAIJAQtTdHJpbmdFbnRyeQIJAKwCAgUEdHhJZAIbX3ByZXZvaXVzX2JpZF9hbW91bnRfcmVmdW5kBQxiaWRkaW5nUHJpY2UJAMwIAgkBDlNjcmlwdFRyYW5zZmVyAwkBB0FkZHJlc3MBCQDZBAEFCG5mdE93bmVyAAEJANkEAQUFbmZ0SWQJAMwIAgkBDlNjcmlwdFRyYW5zZmVyAwkBB0FkZHJlc3MBCQDZBAEFDWJpZGRpbmdXaW5uZXIJAQ1wYXJzZUludFZhbHVlAQUMYmlkZGluZ1ByaWNlBQR1bml0BQNuaWwBaQELd2l0aGRyYXdCaWQBB2JpZFR4SWQEBmNhbGxlcggIBQFpBmNhbGxlcgVieXRlcwQIYmlkUHJpY2UJARFAZXh0ck5hdGl2ZSgxMDUzKQIFBHRoaXMJAKwCAgUHYmlkVHhJZAIMX2hpZ2hlc3RfYmlkBAhhc0JpZGRlcgkBEUBleHRyTmF0aXZlKDEwNTMpAgUEdGhpcwkArAICBQdiaWRUeElkAgdfd2lubmVyBAliaWRGb3JORlQJARFAZXh0ck5hdGl2ZSgxMDUzKQIFBHRoaXMJAKwCAgUHYmlkVHhJZAIHX25mdF9pZAMJAQIhPQIJANgEAQUGY2FsbGVyBQhhc0JpZGRlcgkAAgECBk5vIGJpZAkAzAgCCQELU3RyaW5nRW50cnkCCQCsAgIFB2JpZFR4SWQCCF9uZnRfYmlkAghXSVRIRFJBVwkAzAgCCQELU3RyaW5nRW50cnkCCQCsAgIFB2JpZFR4SWQCB19uZnRfaWQFCWJpZEZvck5GVAkAzAgCCQELU3RyaW5nRW50cnkCCQCsAgIFB2JpZFR4SWQCHF9iaWRkaW5nX3ByaWNlX3JlZnVuZF9hbW91bnQFCGJpZFByaWNlCQDMCAIJAQ5TY3JpcHRUcmFuc2ZlcgMIBQFpBmNhbGxlcgkBDXBhcnNlSW50VmFsdWUBBQhiaWRQcmljZQUEdW5pdAUDbmlsAWkBB3Rlc3RCaWQBBGRhdGEJAMwIAgkBC1N0cmluZ0VudHJ5AgI4RThra0ZCWUN5NDRKSmFxNnBBWjZLaXpzdVJlc2k1VUtOaGJEMVdOWndoaFlfaGlnaGVzdF9iaWQCATAFA25pbAClMbFE", "height": 2361243, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: 5EgSddfB4R8ku6aPmUg7EVZDHc6pvenLM42wmKNnA8gJ Next: none Diff:
OldNewDifferences
7171 then throw("Not eligible to buy as you are owner")
7272 else if ((I != parseIntValue(z)))
7373 then throw("Selling price not match")
74- else [ScriptTransfer(m.caller, 1, j), ScriptTransfer(Address(fromBase58String(H)), I, unit), StringEntry(((toString(m.caller) + a) + b), ((F + a) + toString(I))), DeleteEntry((("nft_" + H) + "_owner")), StringEntry((A + "_owner"), "TRANSFERRED - NOT OWNER NOW"), StringEntry(((A + a) + "nft_onSell"), "SOLD"), StringEntry((toBase58String(G) + "_ownership_trasnfer_to"), toString(m.caller)), StringEntry((("nft_" + H) + "_owner"), toString(m.caller)), StringEntry(((F + a) + "_owner"), toString(m.caller))]
74+ else [ScriptTransfer(m.caller, 1, j), ScriptTransfer(Address(fromBase58String(H)), I, unit), StringEntry(((toString(m.caller) + a) + b), ((F + a) + toString(I))), DeleteEntry((("nft_" + H) + "_owner")), StringEntry((A + "_owner"), "TRANSFERRED - NOT OWNER NOW"), StringEntry(((A + a) + "nft_onSell"), "SOLD"), StringEntry((toBase58String(G) + "_ownership_trasnfer_to"), toString(m.caller)), StringEntry((("nft_" + H) + "_owner"), toString(m.caller)), StringEntry(((toBase58String(j) + a) + "_owner"), toString(m.caller))]
7575 }
7676
7777
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 6 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let a = "_"
55
66 let b = "buy"
77
88 let c = "price"
99
1010 let d = "sell"
1111
1212 let e = 7
1313
1414 let f = "bid"
1515
1616 let g = $Tuple4("OPEN", "CLOSED", "REWARDED", "CANCELED")
1717
1818 let h = base58'3MvjAaDYHpS4A5K4CV3kZMMEH9m9JdBSvbq'
1919
2020 func i (j) = {
2121 let k = assetInfo(j)
2222 if ($isInstanceOf(k, "Asset"))
2323 then {
2424 let l = k
2525 if (if ((l.decimals == 0))
2626 then (l.quantity == 1)
2727 else false)
2828 then (l.reissuable == false)
2929 else false
3030 }
3131 else false
3232 }
3333
3434
3535 @Callable(m)
3636 func createNft (n,o,p,q,r,s,t,u,v) = {
3737 let w = Issue(n, t, 1, 0, false)
3838 let x = calculateAssetId(w)
3939 let y = m.transactionId
4040 [w, ScriptTransfer(m.caller, 1, x), StringEntry(((toBase58String(y) + a) + "owner"), toString(m.caller)), StringEntry((toBase58String(x) + "_owner"), toString(m.caller)), StringEntry((toBase58String(x) + "_creator_of_nft"), toString(m.caller)), StringEntry(((toBase58String(y) + a) + "nft_type"), q), StringEntry(((toBase58String(y) + a) + "nft_tags"), r), StringEntry(((toBase58String(y) + a) + "nft_dAppAddress"), p), IntegerEntry(((toBase58String(y) + a) + "nft_selling_price"), s), StringEntry(((toBase58String(y) + a) + "nft_onSell"), u), StringEntry(((toBase58String(y) + a) + "nft_data"), v), StringEntry(((toBase58String(y) + a) + "issue_nft"), toBase58String(x))]
4141 }
4242
4343
4444
4545 @Callable(m)
4646 func sellNFT (y,z) = {
4747 let A = m.transactionId
4848 let j = getStringValue(this, (y + "_owner"))
4949 let B = m.caller.bytes
5050 let C = $Tuple2(value(m.payments[0].assetId), value(m.payments[0].amount))
5151 let D = C._1
5252 let E = C._2
5353 if (!(i(D)))
5454 then throw("Token is not NFT")
5555 else [StringEntry((toBase58String(A) + "_owner"), toString(m.caller)), StringEntry((toBase58String(A) + "_nft_selling_price"), z), StringEntry((toBase58String(A) + "_nft_puton_sell"), j), StringEntry(((toBase58String(A) + a) + "nft_onSell"), "TRUE"), StringEntry(((c + a) + toBase58String(value(m.payments[0].assetId))), z), StringEntry(((toString(m.caller) + a) + d), ((toBase58String(D) + a) + toString(E)))]
5656 }
5757
5858
5959
6060 @Callable(m)
6161 func buyNFT (A,F) = {
6262 let j = fromBase58String(F)
6363 let G = m.transactionId
6464 let H = getStringValue(this, (A + "_owner"))
6565 let I = value(m.payments[0].amount)
6666 let z = getStringValue(((((c + a) + F) + "_") + H))
6767 let J = valueOrErrorMessage(getStringValue(((F + a) + "Owner")), "No owner")
6868 if ((m.payments[0].assetId != unit))
6969 then throw("Pay in waves")
7070 else if ((H == toString(m.caller)))
7171 then throw("Not eligible to buy as you are owner")
7272 else if ((I != parseIntValue(z)))
7373 then throw("Selling price not match")
74- else [ScriptTransfer(m.caller, 1, j), ScriptTransfer(Address(fromBase58String(H)), I, unit), StringEntry(((toString(m.caller) + a) + b), ((F + a) + toString(I))), DeleteEntry((("nft_" + H) + "_owner")), StringEntry((A + "_owner"), "TRANSFERRED - NOT OWNER NOW"), StringEntry(((A + a) + "nft_onSell"), "SOLD"), StringEntry((toBase58String(G) + "_ownership_trasnfer_to"), toString(m.caller)), StringEntry((("nft_" + H) + "_owner"), toString(m.caller)), StringEntry(((F + a) + "_owner"), toString(m.caller))]
74+ else [ScriptTransfer(m.caller, 1, j), ScriptTransfer(Address(fromBase58String(H)), I, unit), StringEntry(((toString(m.caller) + a) + b), ((F + a) + toString(I))), DeleteEntry((("nft_" + H) + "_owner")), StringEntry((A + "_owner"), "TRANSFERRED - NOT OWNER NOW"), StringEntry(((A + a) + "nft_onSell"), "SOLD"), StringEntry((toBase58String(G) + "_ownership_trasnfer_to"), toString(m.caller)), StringEntry((("nft_" + H) + "_owner"), toString(m.caller)), StringEntry(((toBase58String(j) + a) + "_owner"), toString(m.caller))]
7575 }
7676
7777
7878
7979 @Callable(m)
8080 func addAuction (K,L,M,N) = {
8181 let O = toBase58String(m.transactionId)
8282 let P = value(m.payments[0].assetId)
8383 let z = value(M)
8484 let Q = (lastBlock.height + N)
8585 let R = m.caller.bytes
8686 let S = {
8787 let k = getString(this, (((toBase58String(P) + a) + "nft_status_") + toBase58String(R)))
8888 if ($isInstanceOf(k, "String"))
8989 then {
9090 let T = k
9191 true
9292 }
9393 else false
9494 }
9595 if ((m.payments[0].assetId == unit))
9696 then throw("NFT not attached")
9797 else if ((S == true))
9898 then throw("Already in auction list")
9999 else if ((N > e))
100100 then throw(("Duration is too long. Must be less than or equal to 7 " + toString(e)))
101101 else [StringEntry(((O + "nft_start_auction_date") + toBase58String(R)), K), StringEntry(((O + "nft_end_auction_date") + toBase58String(R)), L), StringEntry((O + "_nft_start_price"), M), StringEntry((O + "_nft_owner"), toString(m.caller)), StringEntry((O + "_nft_on_auction"), toBase58String(P)), StringEntry((O + "_previous_bidder"), "none"), StringEntry((O + "_highest_bid"), "0"), StringEntry((O + "_winner_of_nft"), "0"), StringEntry((O + "_bidder_count"), "0"), StringEntry((O + "_nft_status"), "OPEN")]
102102 }
103103
104104
105105
106106 @Callable(m)
107107 func placeBid (U,P,o,V) = {
108108 let O = toBase58String(m.transactionId)
109109 let R = m.caller.bytes
110110 let j = fromBase58String(P)
111111 let W = m.payments[0].amount
112112 let X = getStringValue(this, (U + "_highest_bid"))
113113 let Y = getString(this, (U + "_previous_bidder"))
114114 let Z = getStringValue(this, (U + "_bidder_count"))
115115 let aa = getStringValue(this, (U + "_winner_of_nft"))
116116 let S = getStringValue(this, (U + "_nft_status"))
117117 if ((m.payments[0].assetId != unit))
118118 then throw("Pay in waves")
119119 else if ((S != "OPEN"))
120120 then throw("Not open for auction")
121121 else if ((parseIntValue(X) >= W))
122122 then throw("Bid is less then starting/highest Bid")
123123 else if ((X == "0"))
124124 then [StringEntry((U + "_highest_bid"), toString(W)), StringEntry((U + "_winner_of_nft"), toBase58String(m.caller.bytes)), StringEntry((U + "_bidder_count"), toString((parseIntValue(Z) + 1))), StringEntry((U + "_nft_id"), toBase58String(j)), StringEntry((U + "_nft_owner"), o), StringEntry((((O + "_") + U) + "_highest_bid"), toString(W)), StringEntry((((O + "_") + U) + "_winner"), toBase58String(m.caller.bytes)), StringEntry((((O + "_") + U) + "_bidder_count"), toString((parseIntValue(Z) + 1))), StringEntry((((O + "_") + U) + "_nft_id"), toBase58String(j)), StringEntry((((O + "_") + U) + "_nft_owner"), o), StringEntry((O + "_bid_for_nft_by"), toBase58String(R)), StringEntry((O + "_bid_price_place"), V), StringEntry((O + "_previous_bid_amount_refund_to_address"), aa), StringEntry((O + "_prevoius_bid_amount_refund"), X)]
125125 else [StringEntry((U + "_highest_bid"), toString(W)), StringEntry((U + "_winner_of_nft"), toBase58String(m.caller.bytes)), StringEntry((U + "_bidder_count"), toString((parseIntValue(Z) + 1))), StringEntry((U + "_nft_id"), toBase58String(j)), StringEntry((U + "_nft_owner"), o), StringEntry((((O + "_") + U) + "_highest_bid"), toString(W)), StringEntry((((O + "_") + U) + "_winner"), toBase58String(m.caller.bytes)), StringEntry((((O + "_") + U) + "_bidder_count"), toString((parseIntValue(Z) + 1))), StringEntry((((O + "_") + U) + "_nft_id"), toBase58String(j)), StringEntry((((O + "_") + U) + "_nft_owner"), o), StringEntry((O + "_bid_for_nft_by"), toBase58String(R)), StringEntry((O + "_bid_price_place"), V), StringEntry((O + "_previous_bid_amount_refund_to_address"), aa), StringEntry((O + "_prevoius_bid_amount_refund"), X), ScriptTransfer(Address(fromBase58String(aa)), parseIntValue(X), unit)]
126126 }
127127
128128
129129
130130 @Callable(m)
131131 func acceptBidOffer (U,P,ab) = {
132132 let O = toBase58String(m.transactionId)
133133 let R = m.caller.bytes
134134 let j = fromBase58String(P)
135135 let ac = getStringValue(this, (U + "_highest_bid"))
136136 let ad = getStringValue(this, (U + "_winner_of_nft"))
137137 [ScriptTransfer(Address(R), parseIntValue(ac), unit), ScriptTransfer(Address(fromBase58String(ad)), 1, j), StringEntry((O + "_amount_paid_to_owner"), ac), StringEntry((O + "_nft_transfer_to"), ad), StringEntry((O + "_nft_status"), "REWARDED"), StringEntry((U + "_amount_paid_to_owner"), ac), StringEntry((U + "_nft_transfer_to"), ad), StringEntry((U + "_nft_status"), "REWARDED")]
138138 }
139139
140140
141141
142142 @Callable(m)
143143 func cancelAuction (U) = {
144144 let O = toBase58String(m.transactionId)
145145 let R = m.caller.bytes
146146 let ae = getStringValue(this, (U + "_nft_status"))
147147 let af = getStringValue(this, (U + "_winner_of_nft"))
148148 let ag = getStringValue(this, (U + "_nft_owner"))
149149 let P = getStringValue(this, (U + "_nft_on_auction"))
150150 let ah = getStringValue(this, (U + "_highest_bid"))
151151 if ((af == "0"))
152152 then [StringEntry(((O + U) + "_nft_status"), "CANCELED"), ScriptTransfer(Address(fromBase58String(ag)), 1, fromBase58String(P))]
153153 else [StringEntry((U + "_nft_status"), "CANCELED"), StringEntry((U + "_previous_bid_amount_refund_to_address"), af), StringEntry((U + "_prevoius_bid_amount_refund"), ah), StringEntry((O + "_nft_status"), "CANCELED"), StringEntry((O + "_previous_bid_amount_refund_to_address"), af), StringEntry((O + "_prevoius_bid_amount_refund"), ah), ScriptTransfer(Address(fromBase58String(ag)), 1, fromBase58String(P)), ScriptTransfer(Address(fromBase58String(af)), parseIntValue(ah), unit)]
154154 }
155155
156156
157157
158158 @Callable(m)
159159 func withdrawBid (ai) = {
160160 let R = m.caller.bytes
161161 let aj = getStringValue(this, (ai + "_highest_bid"))
162162 let ak = getStringValue(this, (ai + "_winner"))
163163 let al = getStringValue(this, (ai + "_nft_id"))
164164 if ((toBase58String(R) != ak))
165165 then throw("No bid")
166166 else [StringEntry((ai + "_nft_bid"), "WITHDRAW"), StringEntry((ai + "_nft_id"), al), StringEntry((ai + "_bidding_price_refund_amount"), aj), ScriptTransfer(m.caller, parseIntValue(aj), unit)]
167167 }
168168
169169
170170
171171 @Callable(m)
172172 func testBid (am) = [StringEntry("E8kkFBYCy44JJaq6pAZ6KizsuResi5UKNhbD1WNZwhhY_highest_bid", "0")]
173173
174174

github/deemru/w8io/873ac7e 
45.55 ms