tx · BFikV3gGw5x6eVhrTx6y2Fm26S7mSk4gwT8qAGsE5jVM

3N2PjXqef29HexCE7PeGZa9eRjS2jVeaFe4:  -0.05000000 Waves

2023.08.28 10:44 [2730239] smart account 3N2PjXqef29HexCE7PeGZa9eRjS2jVeaFe4 > SELF 0.00000000 Waves

{ "type": 13, "id": "BFikV3gGw5x6eVhrTx6y2Fm26S7mSk4gwT8qAGsE5jVM", "fee": 5000000, "feeAssetId": null, "timestamp": 1693208643603, "version": 2, "chainId": 84, "sender": "3N2PjXqef29HexCE7PeGZa9eRjS2jVeaFe4", "senderPublicKey": "DU1U4j8FqHUMRr9WgfF3yo67ULEFkjp7dtMWMpjBK1ar", "proofs": [ "MXkuByzk11683tL6Nhs2QcZnNtCMrExeJPUiBspPt4HcxB9Lpyrm3qGirTLd6tpSLeCJ36p7GuEeRTAhdPfQZUs", "4nBSPRDFCJ15HR5Z8VmdfKHpo1Mb41J3BTH1Vq16EPo1omVxQoQk8krTUaGF73q2p8Vz4P4qJVDckRoQzvhgP574" ], "script": "base64:BgImCAISBwoFCAgICAESABIDCgEBEgASABIDCgEIEgASBQoDCAgIEgAbAAZTQ0FMRTgAgMLXLwAJa0ludGVyZXN0AghpbnRlcmVzdAANa1VzZXJJbnRlcmVzdAINX3VzZXJJbnRlcmVzdAAOa1VzZXJBdmFpbGFibGUCE191c2VyQXZhaWxhYmxlQ2xhaW0AEGtVc2VyVG9rZW5TdGFrZWQCEF91c2VyVG9rZW5TdGFrZWQAEWtUb3RhbFRva2VuU3Rha2VkAhB0b3RhbFRva2VuU3Rha2VkAAxrTkZUSW50ZXJlc3QCC05GVEludGVyZXN0ABBrTkZUVXNlckludGVyZXN0AhBfTkZUVXNlckludGVyZXN0ABZrTkZUVXNlckF2YWlsYWJsZUNsYWltAhZfTkZUVXNlckF2YWlsYWJsZUNsYWltAA9rTkZUVG90YWxTdGFrZWQCDk5GVFRvdGFsU3Rha2VkAA5rdXNlck5GVFN0YWtlZAIOX3VzZXJORlRTdGFrZWQAEGt1c2VyTkZUU3Rha2VkSWQCEF91c2VyTkZUU3Rha2VkSWQAC2tORlRDcmVhdGVkAgtfTkZUQ3JlYXRlZAAIa1Rva2VuaWQCB3Rva2VuSWQADmtQZXJzZW50Rm9yTkZUAg1wZXJjZW50Rm9yTkZUAAlrQWRtaW4xUEsCC2FkbWluX3B1Yl8xAAlrQWRtaW4yUEsCC2FkbWluX3B1Yl8yAAlrQWRtaW4zUEsCC2FkbWluX3B1Yl8zAAhhZG1pbjFQSwkA2QQBCQETdmFsdWVPckVycm9yTWVzc2FnZQIJAJ0IAgUEdGhpcwUJa0FkbWluMVBLAhJDYW4ndCBnZXQgYWRtaW4xUEsACGFkbWluMlBLCQDZBAEJARN2YWx1ZU9yRXJyb3JNZXNzYWdlAgkAnQgCBQR0aGlzBQlrQWRtaW4yUEsCEkNhbid0IGdldCBhZG1pbjJQSwAIYWRtaW4zUEsJANkEAQkBE3ZhbHVlT3JFcnJvck1lc3NhZ2UCCQCdCAIFBHRoaXMFCWtBZG1pbjNQSwIUQ2FuJ3QgZ2V0IG9wZXJhdG9yUEsAB3Rva2VuSWQJARN2YWx1ZU9yRXJyb3JNZXNzYWdlAgkAnQgCBQR0aGlzBQhrVG9rZW5pZAIXQ2FuJ3QgZ2V0IHN0YWtpbmcgdG9rZW4BC2lzQWRtaW5DYWxsAQFpAwkBD2NvbnRhaW5zRWxlbWVudAIJAMwIAgUIYWRtaW4xUEsJAMwIAgUIYWRtaW4yUEsJAMwIAgUIYWRtaW4zUEsFA25pbAgFAWkPY2FsbGVyUHVibGljS2V5BQR1bml0CQACAQIhT25seSBhZG1pbiBjYW4gY2FsbCB0aGlzIGZ1bmN0aW9uAQppc1NlbGZDYWxsAQFpAwkAAAIIBQFpBmNhbGxlcgUEdGhpcwUEdW5pdAkAAgECK09ubHkgY29udHJhY3QgaXRzZWxmIGNhbiBjYWxsIHRoaXMgZnVuY3Rpb24BDGFzc2V0SWRUb1N0cgEHYXNzZXRJZAQHJG1hdGNoMAUHYXNzZXRJZAMJAAECBQckbWF0Y2gwAgpCeXRlVmVjdG9yBAJpZAUHJG1hdGNoMAkA2AQBBQJpZAMJAAECBQckbWF0Y2gwAgRVbml0BAV3YXZlcwUHJG1hdGNoMAIFV0FWRVMJAAIBAgxOb3QgQXNzZXQgaWQBCWNsYWltQ2FsYwEEdXNlcgQQdG90YWxUb2tlblN0YWtlZAkBC3ZhbHVlT3JFbHNlAgkAmggCBQR0aGlzBRFrVG90YWxUb2tlblN0YWtlZAAABAtjdXJJbnRlcmVzdAkBC3ZhbHVlT3JFbHNlAgkAmggCBQR0aGlzBQlrSW50ZXJlc3QAAAQRYXZhaWxhYmxlRm9yQ2xhaW0JAQt2YWx1ZU9yRWxzZQIJAJoIAgUEdGhpcwkArAICBQR1c2VyBQ5rVXNlckF2YWlsYWJsZQAABAx1c2VySW50ZXJlc3QJAQt2YWx1ZU9yRWxzZQIJAJoIAgUEdGhpcwkArAICBQR1c2VyBQ1rVXNlckludGVyZXN0BQtjdXJJbnRlcmVzdAQPdXNlclRva2VuU3Rha2VkCQELdmFsdWVPckVsc2UCCQCaCAIFBHRoaXMJAKwCAgUEdXNlcgUQa1VzZXJUb2tlblN0YWtlZAAABAtjbGFpbUFtb3VudAkAawMFD3VzZXJUb2tlblN0YWtlZAkAZQIFC2N1ckludGVyZXN0BQx1c2VySW50ZXJlc3QFBlNDQUxFOAkAlgoEBQtjdXJJbnRlcmVzdAkAZAIFC2NsYWltQW1vdW50BRFhdmFpbGFibGVGb3JDbGFpbQUPdXNlclRva2VuU3Rha2VkBRB0b3RhbFRva2VuU3Rha2VkAQxjbGFpbUNhbGNOZnQBBHVzZXIEDnRvdGFsTmZ0U3Rha2VkCQELdmFsdWVPckVsc2UCCQCaCAIFBHRoaXMFD2tORlRUb3RhbFN0YWtlZAAABAtjdXJJbnRlcmVzdAkBC3ZhbHVlT3JFbHNlAgkAmggCBQR0aGlzBQxrTkZUSW50ZXJlc3QAAAQRYXZhaWxhYmxlRm9yQ2xhaW0JAQt2YWx1ZU9yRWxzZQIJAJoIAgUEdGhpcwkArAICBQR1c2VyBRZrTkZUVXNlckF2YWlsYWJsZUNsYWltAAAEDHVzZXJJbnRlcmVzdAkBC3ZhbHVlT3JFbHNlAgkAmggCBQR0aGlzCQCsAgIFBHVzZXIFEGtORlRVc2VySW50ZXJlc3QFC2N1ckludGVyZXN0BA11c2VyTmZ0U3Rha2VkCQELdmFsdWVPckVsc2UCCQCaCAIFBHRoaXMJAKwCAgUEdXNlcgUOa3VzZXJORlRTdGFrZWQAAAQLY2xhaW1BbW91bnQJAGgCBQ11c2VyTmZ0U3Rha2VkCQBlAgULY3VySW50ZXJlc3QFDHVzZXJJbnRlcmVzdAkAlgoEBQtjdXJJbnRlcmVzdAkAZAIFC2NsYWltQW1vdW50BRFhdmFpbGFibGVGb3JDbGFpbQUNdXNlck5mdFN0YWtlZAUOdG90YWxOZnRTdGFrZWQJAWkBBGluaXQFB3Rva2VuSWQHYWRtMVB1YgdhZG0yUHViB2FkbTNQdWIMdG9ORlRQZXJjZW50CQELdmFsdWVPckVsc2UCCQEKaXNTZWxmQ2FsbAEFAWkDCQEJaXNEZWZpbmVkAQkAnQgCBQR0aGlzBQhrVG9rZW5pZAkAAgECE0RBcHAgYWxyZWFkeSBpbml0ZWQDCQEBIQEJAQlpc0RlZmluZWQBCQDsBwEJANkEAQUHdG9rZW5JZAkAAgECIGFzc2V0IGlkIGlzIG5vdCBjb3JyZWN0IGFzc2V0IGlkAwkBAiE9AgkAyAEBCQDZBAEFB2FkbTFQdWIAIAkAAgECIWdyb3VwMUFkbWluMVB1YktleSBpcyBub3QgY29ycmVjdAMJAQIhPQIJAMgBAQkA2QQBBQdhZG0yUHViACAJAAIBAiFncm91cDFBZG1pbjFQdWJLZXkgaXMgbm90IGNvcnJlY3QDCQECIT0CCQDIAQEJANkEAQUHYWRtM1B1YgAgCQACAQIhZ3JvdXAxQWRtaW4xUHViS2V5IGlzIG5vdCBjb3JyZWN0CQDMCAIJAQtTdHJpbmdFbnRyeQIFCGtUb2tlbmlkBQd0b2tlbklkCQDMCAIJAQtTdHJpbmdFbnRyeQIFCWtBZG1pbjFQSwUHYWRtMVB1YgkAzAgCCQELU3RyaW5nRW50cnkCBQlrQWRtaW4yUEsFB2FkbTJQdWIJAMwIAgkBC1N0cmluZ0VudHJ5AgUJa0FkbWluM1BLBQdhZG0zUHViCQDMCAIJAQxJbnRlZ2VyRW50cnkCBQ5rUGVyc2VudEZvck5GVAUMdG9ORlRQZXJjZW50BQNuaWwBaQEFc3Rha2UAAwkBAiE9AgkAkAMBCAUBaQhwYXltZW50cwABCQACAQIUT25lIHBheW1lbnQgZXhwZWN0ZWQECyR0MDM2ODAzNzU1CQCUCgIICQCRAwIIBQFpCHBheW1lbnRzAAAGYW1vdW50CAkAkQMCCAUBaQhwYXltZW50cwAAB2Fzc2V0SWQECXBtdEFtb3VudAgFCyR0MDM2ODAzNzU1Al8xBApwbXRBc3NldElkCAULJHQwMzY4MDM3NTUCXzIDCQECIT0CBQpwbXRBc3NldElkCQDZBAEFB3Rva2VuSWQJAAIBAhNXcm9uZyBwYXltZW50IGFzc2V0BAR1c2VyCQClCAEIBQFpBmNhbGxlcgQLJHQwMzg3NjM5NzIJAQljbGFpbUNhbGMBBQR1c2VyBA91c2VyTmV3SW50ZXJlc3QIBQskdDAzODc2Mzk3MgJfMQQUY2xhaW1BbW91bnRBdmFpbGFibGUIBQskdDAzODc2Mzk3MgJfMgQPdXNlclRva2VuU3Rha2VkCAULJHQwMzg3NjM5NzICXzMEEHRvdGFsVG9rZW5TdGFrZWQIBQskdDAzODc2Mzk3MgJfNAkAzAgCCQEMSW50ZWdlckVudHJ5AgkArAICBQR1c2VyBQ1rVXNlckludGVyZXN0BQ91c2VyTmV3SW50ZXJlc3QJAMwIAgkBDEludGVnZXJFbnRyeQIJAKwCAgUEdXNlcgUOa1VzZXJBdmFpbGFibGUFFGNsYWltQW1vdW50QXZhaWxhYmxlCQDMCAIJAQxJbnRlZ2VyRW50cnkCCQCsAgIFBHVzZXIFEGtVc2VyVG9rZW5TdGFrZWQJAGQCBQ91c2VyVG9rZW5TdGFrZWQFCXBtdEFtb3VudAkAzAgCCQEMSW50ZWdlckVudHJ5AgURa1RvdGFsVG9rZW5TdGFrZWQJAGQCBRB0b3RhbFRva2VuU3Rha2VkBQlwbXRBbW91bnQFA25pbAFpAQd1bnN0YWtlAQZhbW91bnQEBHVzZXIJAKUIAQgFAWkGY2FsbGVyAwkAZwIAAAUGYW1vdW50CQACAQIdQW1vdW50IG11c3QgYmUgZ3JlYXRlciB0aGFuIDAECyR0MDQzODY0NDgyCQEJY2xhaW1DYWxjAQUEdXNlcgQPdXNlck5ld0ludGVyZXN0CAULJHQwNDM4NjQ0ODICXzEEFGNsYWltQW1vdW50QXZhaWxhYmxlCAULJHQwNDM4NjQ0ODICXzIED3VzZXJUb2tlblN0YWtlZAgFCyR0MDQzODY0NDgyAl8zBBB0b3RhbFRva2VuU3Rha2VkCAULJHQwNDM4NjQ0ODICXzQDCQBmAgUGYW1vdW50BQ91c2VyVG9rZW5TdGFrZWQJAAIBAiJZb3UgY2FuJ3QgdW5zdGFrZSBtb3JlIHRoYW4gc3Rha2VkCQDMCAIJAQxJbnRlZ2VyRW50cnkCCQCsAgIFBHVzZXIFDWtVc2VySW50ZXJlc3QFD3VzZXJOZXdJbnRlcmVzdAkAzAgCCQEMSW50ZWdlckVudHJ5AgkArAICBQR1c2VyBQ5rVXNlckF2YWlsYWJsZQUUY2xhaW1BbW91bnRBdmFpbGFibGUJAMwIAgkBDEludGVnZXJFbnRyeQIJAKwCAgUEdXNlcgUQa1VzZXJUb2tlblN0YWtlZAkAZQIFD3VzZXJUb2tlblN0YWtlZAUGYW1vdW50CQDMCAIJAQxJbnRlZ2VyRW50cnkCBRFrVG90YWxUb2tlblN0YWtlZAkAZQIFEHRvdGFsVG9rZW5TdGFrZWQFBmFtb3VudAUDbmlsAWkBBWNsYWltAAQEdXNlcgkApQgBCAUBaQZjYWxsZXIECyR0MDQ4OTg0OTk0CQEJY2xhaW1DYWxjAQUEdXNlcgQPdXNlck5ld0ludGVyZXN0CAULJHQwNDg5ODQ5OTQCXzEEFGNsYWltQW1vdW50QXZhaWxhYmxlCAULJHQwNDg5ODQ5OTQCXzIED3VzZXJUb2tlblN0YWtlZAgFCyR0MDQ4OTg0OTk0Al8zBBB0b3RhbFRva2VuU3Rha2VkCAULJHQwNDg5ODQ5OTQCXzQDCQAAAgUUY2xhaW1BbW91bnRBdmFpbGFibGUAAAkAAgECEE5vdGhpbmcgdG8gY2xhaW0JAMwIAgkBDEludGVnZXJFbnRyeQIJAKwCAgUEdXNlcgUNa1VzZXJJbnRlcmVzdAUPdXNlck5ld0ludGVyZXN0CQDMCAIJAQxJbnRlZ2VyRW50cnkCCQCsAgIFBHVzZXIFDmtVc2VyQXZhaWxhYmxlAAAJAMwIAgkBDlNjcmlwdFRyYW5zZmVyAwgFAWkGY2FsbGVyBRRjbGFpbUFtb3VudEF2YWlsYWJsZQkA2QQBBQd0b2tlbklkBQNuaWwBaQEIc3Rha2VORlQAAwkBAiE9AgkAkAMBCAUBaQhwYXltZW50cwABCQACAQIUT25lIHBheW1lbnQgZXhwZWN0ZWQECyR0MDUzNTk1NDM0CQCUCgIICQCRAwIIBQFpCHBheW1lbnRzAAAGYW1vdW50CAkAkQMCCAUBaQhwYXltZW50cwAAB2Fzc2V0SWQECXBtdEFtb3VudAgFCyR0MDUzNTk1NDM0Al8xBApwbXRBc3NldElkCAULJHQwNTM1OTU0MzQCXzIEDXBtdEFzc2V0SWRTdHIJAQxhc3NldElkVG9TdHIBBQpwbXRBc3NldElkAwkBASEBCQEJaXNEZWZpbmVkAQkAnQgCBQR0aGlzCQCsAgIFDXBtdEFzc2V0SWRTdHIFC2tORlRDcmVhdGVkCQACAQIPV3JvbmcgbmZ0IGFzc2V0BAR1c2VyCQClCAEIBQFpBmNhbGxlcgQLJHQwNTYxNTU3MTAJAQxjbGFpbUNhbGNOZnQBBQR1c2VyBA91c2VyTmV3SW50ZXJlc3QIBQskdDA1NjE1NTcxMAJfMQQUY2xhaW1BbW91bnRBdmFpbGFibGUIBQskdDA1NjE1NTcxMAJfMgQNdXNlck5GVFN0YWtlZAgFCyR0MDU2MTU1NzEwAl8zBA50b3RhbE5GVFN0YWtlZAgFCyR0MDU2MTU1NzEwAl80CQDMCAIJAQxJbnRlZ2VyRW50cnkCCQCsAgIFBHVzZXIFEGtORlRVc2VySW50ZXJlc3QFD3VzZXJOZXdJbnRlcmVzdAkAzAgCCQEMSW50ZWdlckVudHJ5AgkArAICBQR1c2VyBRZrTkZUVXNlckF2YWlsYWJsZUNsYWltBRRjbGFpbUFtb3VudEF2YWlsYWJsZQkAzAgCCQEMSW50ZWdlckVudHJ5AgkArAICBQR1c2VyBQ5rdXNlck5GVFN0YWtlZAkAZAIFDXVzZXJORlRTdGFrZWQFCXBtdEFtb3VudAkAzAgCCQEMSW50ZWdlckVudHJ5AgUPa05GVFRvdGFsU3Rha2VkCQBkAgUOdG90YWxORlRTdGFrZWQFCXBtdEFtb3VudAkAzAgCCQEMSW50ZWdlckVudHJ5AgkArAICCQCsAgIJAKwCAgUEdXNlcgIBXwUNcG10QXNzZXRJZFN0cgUQa3VzZXJORlRTdGFrZWRJZAABBQNuaWwBaQEKdW5zdGFrZU5GVAECaWQEBHVzZXIJAKUIAQgFAWkGY2FsbGVyAwkBCWlzRGVmaW5lZAEJAJ0IAgUEdGhpcwkArAICCQCsAgIJAKwCAgUEdXNlcgUCaWQCAV8FEGt1c2VyTkZUU3Rha2VkSWQJAAIBAhFZb3UgZGlkbid0IHN0YWtlZAQLJHQwNjIzNTYzMzAJAQxjbGFpbUNhbGNOZnQBBQR1c2VyBA91c2VyTmV3SW50ZXJlc3QIBQskdDA2MjM1NjMzMAJfMQQUY2xhaW1BbW91bnRBdmFpbGFibGUIBQskdDA2MjM1NjMzMAJfMgQNdXNlck5GVFN0YWtlZAgFCyR0MDYyMzU2MzMwAl8zBA50b3RhbE5GVFN0YWtlZAgFCyR0MDYyMzU2MzMwAl80CQDMCAIJAQxJbnRlZ2VyRW50cnkCCQCsAgIFBHVzZXIFEGtORlRVc2VySW50ZXJlc3QFD3VzZXJOZXdJbnRlcmVzdAkAzAgCCQEMSW50ZWdlckVudHJ5AgkArAICBQR1c2VyBRZrTkZUVXNlckF2YWlsYWJsZUNsYWltBRRjbGFpbUFtb3VudEF2YWlsYWJsZQkAzAgCCQEMSW50ZWdlckVudHJ5AgkArAICBQR1c2VyBQ5rdXNlck5GVFN0YWtlZAkAZQIFDXVzZXJORlRTdGFrZWQAAQkAzAgCCQEMSW50ZWdlckVudHJ5AgUPa05GVFRvdGFsU3Rha2VkCQBlAgUOdG90YWxORlRTdGFrZWQAAQkAzAgCCQELRGVsZXRlRW50cnkBCQCsAgIJAKwCAgkArAICBQR1c2VyAgFfBQJpZAUQa3VzZXJORlRTdGFrZWRJZAkAzAgCCQEOU2NyaXB0VHJhbnNmZXIDCAUBaQZjYWxsZXIAAQkA2QQBBQJpZAUDbmlsAWkBCGNsYWltTkZUAAQEdXNlcgkApQgBCAUBaQZjYWxsZXIECyR0MDY3NjQ2ODU5CQEMY2xhaW1DYWxjTmZ0AQUEdXNlcgQPdXNlck5ld0ludGVyZXN0CAULJHQwNjc2NDY4NTkCXzEEFGNsYWltQW1vdW50QXZhaWxhYmxlCAULJHQwNjc2NDY4NTkCXzIEDXVzZXJORlRTdGFrZWQIBQskdDA2NzY0Njg1OQJfMwQOdG90YWxORlRTdGFrZWQIBQskdDA2NzY0Njg1OQJfNAMJAAACBRRjbGFpbUFtb3VudEF2YWlsYWJsZQAACQACAQIQTm90aGluZyB0byBjbGFpbQkAzAgCCQEMSW50ZWdlckVudHJ5AgkArAICBQR1c2VyBRBrTkZUVXNlckludGVyZXN0BQ91c2VyTmV3SW50ZXJlc3QJAMwIAgkBDEludGVnZXJFbnRyeQIJAKwCAgUEdXNlcgUWa05GVFVzZXJBdmFpbGFibGVDbGFpbQAACQDMCAIJAQ5TY3JpcHRUcmFuc2ZlcgMIBQFpBmNhbGxlcgUUY2xhaW1BbW91bnRBdmFpbGFibGUJANkEAQUHdG9rZW5JZAUDbmlsAWkBCGlzc3VlTkZUAwh1c2VyQWRkcgRuYW1lBWRlc2NyCQELdmFsdWVPckVsc2UCCQELaXNBZG1pbkNhbGwBBQFpBAV1QWRkcgkBE3ZhbHVlT3JFcnJvck1lc3NhZ2UCCQCmCAEFCHVzZXJBZGRyAhJXcm9uZyB1c2VyIGFkZHJlc3MEBWlzc3VlCQDCCAUFBG5hbWUFBWRlc2NyAAEAAAcEBW5mdElkCQC4CAEFBWlzc3VlCQDMCAIFBWlzc3VlCQDMCAIJAQtTdHJpbmdFbnRyeQIJAKwCAgkA2AQBBQVuZnRJZAULa05GVENyZWF0ZWQFCHVzZXJBZGRyCQDMCAIJAQ5TY3JpcHRUcmFuc2ZlcgMFBXVBZGRyAAEFBW5mdElkBQNuaWwBaQEHYWlyZHJvcAAJAQt2YWx1ZU9yRWxzZQIJAQtpc0FkbWluQ2FsbAEFAWkDCQECIT0CCQCQAwEIBQFpCHBheW1lbnRzAAEJAAIBAhRPbmUgcGF5bWVudCBleHBlY3RlZAQLJHQwNzY1OTc3MzQJAJQKAggJAJEDAggFAWkIcGF5bWVudHMAAAZhbW91bnQICQCRAwIIBQFpCHBheW1lbnRzAAAHYXNzZXRJZAQJcG10QW1vdW50CAULJHQwNzY1OTc3MzQCXzEECnBtdEFzc2V0SWQIBQskdDA3NjU5NzczNAJfMgMJAQIhPQIFCnBtdEFzc2V0SWQJANkEAQUHdG9rZW5JZAkAAgECE1dyb25nIHBheW1lbnQgYXNzZXQEDXBlcmNlbnRGb3JORlQJARFAZXh0ck5hdGl2ZSgxMDUwKQIFBHRoaXMFDmtQZXJzZW50Rm9yTkZUBBB0b3RhbFRva2VuU3Rha2VkCQELdmFsdWVPckVsc2UCCQCaCAIFBHRoaXMFEWtUb3RhbFRva2VuU3Rha2VkAAAEDnRvdGFsTkZUU3Rha2VkCQELdmFsdWVPckVsc2UCCQCaCAIFBHRoaXMFD2tORlRUb3RhbFN0YWtlZAAABAtjdXJJbnRlcmVzdAkBC3ZhbHVlT3JFbHNlAgkAmggCBQR0aGlzBQlrSW50ZXJlc3QAAAQOY3VyTkZUSW50ZXJlc3QJAQt2YWx1ZU9yRWxzZQIJAJoIAgUEdGhpcwUMa05GVEludGVyZXN0AAAECyR0MDgxNTc4MzMyAwkAAAIFDnRvdGFsTkZUU3Rha2VkAAAJAJQKAgAABQlwbXRBbW91bnQEBG5mdFAJAGsDBQlwbXRBbW91bnQFDXBlcmNlbnRGb3JORlQAZAkAlAoCBQRuZnRQCQBlAgUJcG10QW1vdW50BQRuZnRQBAZwbXRORlQIBQskdDA4MTU3ODMzMgJfMQQIcG10VG9rZW4IBQskdDA4MTU3ODMzMgJfMgQLaW50ZXJlc3ROZXcDCQBmAgUQdG90YWxUb2tlblN0YWtlZAAACQBkAgULY3VySW50ZXJlc3QJAGsDBQhwbXRUb2tlbgUGU0NBTEU4BRB0b3RhbFRva2VuU3Rha2VkBQtjdXJJbnRlcmVzdAQOaW50ZXJlc3RORlROZXcDCQBmAgUOdG90YWxORlRTdGFrZWQAAAkAZAIFDmN1ck5GVEludGVyZXN0CQBpAgUGcG10TkZUBQ50b3RhbE5GVFN0YWtlZAUOY3VyTkZUSW50ZXJlc3QJAMwIAgkBDEludGVnZXJFbnRyeQIFCWtJbnRlcmVzdAULaW50ZXJlc3ROZXcJAMwIAgkBDEludGVnZXJFbnRyeQIFDGtORlRJbnRlcmVzdAUOaW50ZXJlc3RORlROZXcFA25pbAECdHgBBnZlcmlmeQAEE211bHRpU2lnbmVkQnlBZG1pbnMEEmFkbWluUHViS2V5MVNpZ25lZAMJAPQDAwgFAnR4CWJvZHlCeXRlcwkAkQMCCAUCdHgGcHJvb2ZzAAAFCGFkbWluMVBLAAEAAAQSYWRtaW5QdWJLZXkyU2lnbmVkAwkA9AMDCAUCdHgJYm9keUJ5dGVzCQCRAwIIBQJ0eAZwcm9vZnMAAQUIYWRtaW4yUEsAAQAABBJhZG1pblB1YktleTNTaWduZWQDCQD0AwMIBQJ0eAlib2R5Qnl0ZXMJAJEDAggFAnR4BnByb29mcwACBQhhZG1pbjNQSwABAAAJAGcCCQBkAgkAZAIFEmFkbWluUHViS2V5MVNpZ25lZAUSYWRtaW5QdWJLZXkyU2lnbmVkBRJhZG1pblB1YktleTNTaWduZWQAAgQHJG1hdGNoMAUCdHgDCQABAgUHJG1hdGNoMAIXSW52b2tlU2NyaXB0VHJhbnNhY3Rpb24EA2ludgUHJG1hdGNoMAQGaXNTZWxmCQD0AwMIBQJ0eAlib2R5Qnl0ZXMJAJEDAggFAnR4BnByb29mcwAACAUCdHgPc2VuZGVyUHVibGljS2V5BAppc1JpZ2h0RmVlAwkAAAIIBQNpbnYDZmVlAKD3NgkAAAIIBQNpbnYKZmVlQXNzZXRJZAUEdW5pdAcECmlzSW5pdENhbGwJAAACCAUDaW52CGZ1bmN0aW9uAgRpbml0BAxpc25vUGF5bWVudHMJAAACCQCQAwEIBQNpbnYIcGF5bWVudHMAAAMDAwMFCmlzUmlnaHRGZWUFCmlzSW5pdENhbGwHBQZpc1NlbGYHBQxpc25vUGF5bWVudHMHBgUTbXVsdGlTaWduZWRCeUFkbWlucwUTbXVsdGlTaWduZWRCeUFkbWluc+vhltw=", "height": 2730239, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: 3PL9wCceaWydMQqoFNBNTz2FxxHonpb83HKqLh58dGJ8 Next: CoSnShRbEYaTKsKRLMDT9vzqAy66izyZHP62wyt21Tci Diff:
OldNewDifferences
8888 let I = valueOrElse(getInteger(this, (F + i)), 0)
8989 let J = valueOrElse(getInteger(this, (F + h)), H)
9090 let O = valueOrElse(getInteger(this, (F + k)), 0)
91- let L = fraction(O, (H - J), a)
91+ let L = (O * (H - J))
9292 $Tuple4(H, (L + I), O, N)
9393 }
9494
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 6 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let a = 100000000
55
66 let b = "interest"
77
88 let c = "_userInterest"
99
1010 let d = "_userAvailableClaim"
1111
1212 let e = "_userTokenStaked"
1313
1414 let f = "totalTokenStaked"
1515
1616 let g = "NFTInterest"
1717
1818 let h = "_NFTUserInterest"
1919
2020 let i = "_NFTUserAvailableClaim"
2121
2222 let j = "NFTTotalStaked"
2323
2424 let k = "_userNFTStaked"
2525
2626 let l = "_userNFTStakedId"
2727
2828 let m = "_NFTCreated"
2929
3030 let n = "tokenId"
3131
3232 let o = "percentForNFT"
3333
3434 let p = "admin_pub_1"
3535
3636 let q = "admin_pub_2"
3737
3838 let r = "admin_pub_3"
3939
4040 let s = fromBase58String(valueOrErrorMessage(getString(this, p), "Can't get admin1PK"))
4141
4242 let t = fromBase58String(valueOrErrorMessage(getString(this, q), "Can't get admin2PK"))
4343
4444 let u = fromBase58String(valueOrErrorMessage(getString(this, r), "Can't get operatorPK"))
4545
4646 let v = valueOrErrorMessage(getString(this, n), "Can't get staking token")
4747
4848 func w (x) = if (containsElement([s, t, u], x.callerPublicKey))
4949 then unit
5050 else throw("Only admin can call this function")
5151
5252
5353 func y (x) = if ((x.caller == this))
5454 then unit
5555 else throw("Only contract itself can call this function")
5656
5757
5858 func z (A) = {
5959 let B = A
6060 if ($isInstanceOf(B, "ByteVector"))
6161 then {
6262 let C = B
6363 toBase58String(C)
6464 }
6565 else if ($isInstanceOf(B, "Unit"))
6666 then {
6767 let D = B
6868 "WAVES"
6969 }
7070 else throw("Not Asset id")
7171 }
7272
7373
7474 func E (F) = {
7575 let G = valueOrElse(getInteger(this, f), 0)
7676 let H = valueOrElse(getInteger(this, b), 0)
7777 let I = valueOrElse(getInteger(this, (F + d)), 0)
7878 let J = valueOrElse(getInteger(this, (F + c)), H)
7979 let K = valueOrElse(getInteger(this, (F + e)), 0)
8080 let L = fraction(K, (H - J), a)
8181 $Tuple4(H, (L + I), K, G)
8282 }
8383
8484
8585 func M (F) = {
8686 let N = valueOrElse(getInteger(this, j), 0)
8787 let H = valueOrElse(getInteger(this, g), 0)
8888 let I = valueOrElse(getInteger(this, (F + i)), 0)
8989 let J = valueOrElse(getInteger(this, (F + h)), H)
9090 let O = valueOrElse(getInteger(this, (F + k)), 0)
91- let L = fraction(O, (H - J), a)
91+ let L = (O * (H - J))
9292 $Tuple4(H, (L + I), O, N)
9393 }
9494
9595
9696 @Callable(x)
9797 func init (v,P,Q,R,S) = valueOrElse(y(x), if (isDefined(getString(this, n)))
9898 then throw("DApp already inited")
9999 else if (!(isDefined(assetInfo(fromBase58String(v)))))
100100 then throw("asset id is not correct asset id")
101101 else if ((size(fromBase58String(P)) != 32))
102102 then throw("group1Admin1PubKey is not correct")
103103 else if ((size(fromBase58String(Q)) != 32))
104104 then throw("group1Admin1PubKey is not correct")
105105 else if ((size(fromBase58String(R)) != 32))
106106 then throw("group1Admin1PubKey is not correct")
107107 else [StringEntry(n, v), StringEntry(p, P), StringEntry(q, Q), StringEntry(r, R), IntegerEntry(o, S)])
108108
109109
110110
111111 @Callable(x)
112112 func stake () = if ((size(x.payments) != 1))
113113 then throw("One payment expected")
114114 else {
115115 let T = $Tuple2(x.payments[0].amount, x.payments[0].assetId)
116116 let U = T._1
117117 let V = T._2
118118 if ((V != fromBase58String(v)))
119119 then throw("Wrong payment asset")
120120 else {
121121 let F = toString(x.caller)
122122 let W = E(F)
123123 let X = W._1
124124 let Y = W._2
125125 let K = W._3
126126 let G = W._4
127127 [IntegerEntry((F + c), X), IntegerEntry((F + d), Y), IntegerEntry((F + e), (K + U)), IntegerEntry(f, (G + U))]
128128 }
129129 }
130130
131131
132132
133133 @Callable(x)
134134 func unstake (Z) = {
135135 let F = toString(x.caller)
136136 if ((0 >= Z))
137137 then throw("Amount must be greater than 0")
138138 else {
139139 let aa = E(F)
140140 let X = aa._1
141141 let Y = aa._2
142142 let K = aa._3
143143 let G = aa._4
144144 if ((Z > K))
145145 then throw("You can't unstake more than staked")
146146 else [IntegerEntry((F + c), X), IntegerEntry((F + d), Y), IntegerEntry((F + e), (K - Z)), IntegerEntry(f, (G - Z))]
147147 }
148148 }
149149
150150
151151
152152 @Callable(x)
153153 func claim () = {
154154 let F = toString(x.caller)
155155 let ab = E(F)
156156 let X = ab._1
157157 let Y = ab._2
158158 let K = ab._3
159159 let G = ab._4
160160 if ((Y == 0))
161161 then throw("Nothing to claim")
162162 else [IntegerEntry((F + c), X), IntegerEntry((F + d), 0), ScriptTransfer(x.caller, Y, fromBase58String(v))]
163163 }
164164
165165
166166
167167 @Callable(x)
168168 func stakeNFT () = if ((size(x.payments) != 1))
169169 then throw("One payment expected")
170170 else {
171171 let ac = $Tuple2(x.payments[0].amount, x.payments[0].assetId)
172172 let U = ac._1
173173 let V = ac._2
174174 let ad = z(V)
175175 if (!(isDefined(getString(this, (ad + m)))))
176176 then throw("Wrong nft asset")
177177 else {
178178 let F = toString(x.caller)
179179 let ae = M(F)
180180 let X = ae._1
181181 let Y = ae._2
182182 let af = ae._3
183183 let ag = ae._4
184184 [IntegerEntry((F + h), X), IntegerEntry((F + i), Y), IntegerEntry((F + k), (af + U)), IntegerEntry(j, (ag + U)), IntegerEntry((((F + "_") + ad) + l), 1)]
185185 }
186186 }
187187
188188
189189
190190 @Callable(x)
191191 func unstakeNFT (C) = {
192192 let F = toString(x.caller)
193193 if (isDefined(getString(this, (((F + C) + "_") + l))))
194194 then throw("You didn't staked")
195195 else {
196196 let ah = M(F)
197197 let X = ah._1
198198 let Y = ah._2
199199 let af = ah._3
200200 let ag = ah._4
201201 [IntegerEntry((F + h), X), IntegerEntry((F + i), Y), IntegerEntry((F + k), (af - 1)), IntegerEntry(j, (ag - 1)), DeleteEntry((((F + "_") + C) + l)), ScriptTransfer(x.caller, 1, fromBase58String(C))]
202202 }
203203 }
204204
205205
206206
207207 @Callable(x)
208208 func claimNFT () = {
209209 let F = toString(x.caller)
210210 let ai = M(F)
211211 let X = ai._1
212212 let Y = ai._2
213213 let af = ai._3
214214 let ag = ai._4
215215 if ((Y == 0))
216216 then throw("Nothing to claim")
217217 else [IntegerEntry((F + h), X), IntegerEntry((F + i), 0), ScriptTransfer(x.caller, Y, fromBase58String(v))]
218218 }
219219
220220
221221
222222 @Callable(x)
223223 func issueNFT (aj,ak,al) = valueOrElse(w(x), {
224224 let am = valueOrErrorMessage(addressFromString(aj), "Wrong user address")
225225 let an = Issue(ak, al, 1, 0, false)
226226 let ao = calculateAssetId(an)
227227 [an, StringEntry((toBase58String(ao) + m), aj), ScriptTransfer(am, 1, ao)]
228228 })
229229
230230
231231
232232 @Callable(x)
233233 func airdrop () = valueOrElse(w(x), if ((size(x.payments) != 1))
234234 then throw("One payment expected")
235235 else {
236236 let ap = $Tuple2(x.payments[0].amount, x.payments[0].assetId)
237237 let U = ap._1
238238 let V = ap._2
239239 if ((V != fromBase58String(v)))
240240 then throw("Wrong payment asset")
241241 else {
242242 let aq = getIntegerValue(this, o)
243243 let G = valueOrElse(getInteger(this, f), 0)
244244 let ag = valueOrElse(getInteger(this, j), 0)
245245 let H = valueOrElse(getInteger(this, b), 0)
246246 let ar = valueOrElse(getInteger(this, g), 0)
247247 let as = if ((ag == 0))
248248 then $Tuple2(0, U)
249249 else {
250250 let at = fraction(U, aq, 100)
251251 $Tuple2(at, (U - at))
252252 }
253253 let au = as._1
254254 let av = as._2
255255 let aw = if ((G > 0))
256256 then (H + fraction(av, a, G))
257257 else H
258258 let ax = if ((ag > 0))
259259 then (ar + (au / ag))
260260 else ar
261261 [IntegerEntry(b, aw), IntegerEntry(g, ax)]
262262 }
263263 })
264264
265265
266266 @Verifier(ay)
267267 func az () = {
268268 let aA = {
269269 let aB = if (sigVerify(ay.bodyBytes, ay.proofs[0], s))
270270 then 1
271271 else 0
272272 let aC = if (sigVerify(ay.bodyBytes, ay.proofs[1], t))
273273 then 1
274274 else 0
275275 let aD = if (sigVerify(ay.bodyBytes, ay.proofs[2], u))
276276 then 1
277277 else 0
278278 (((aB + aC) + aD) >= 2)
279279 }
280280 let B = ay
281281 if ($isInstanceOf(B, "InvokeScriptTransaction"))
282282 then {
283283 let aE = B
284284 let aF = sigVerify(ay.bodyBytes, ay.proofs[0], ay.senderPublicKey)
285285 let aG = if ((aE.fee == 900000))
286286 then (aE.feeAssetId == unit)
287287 else false
288288 let aH = (aE.function == "init")
289289 let aI = (size(aE.payments) == 0)
290290 if (if (if (if (aG)
291291 then aH
292292 else false)
293293 then aF
294294 else false)
295295 then aI
296296 else false)
297297 then true
298298 else aA
299299 }
300300 else aA
301301 }
302302

github/deemru/w8io/169f3d6 
43.77 ms