tx · Auja26VPCZjXFsSSk628HxCNGL1hbLsmM2hte6MiUwyk

3PAucbbumdUXmhzcR421zGiayphEdo2tRoz:  -0.01300000 Waves

2024.04.29 08:32 [4149662] smart account 3PAucbbumdUXmhzcR421zGiayphEdo2tRoz > SELF 0.00000000 Waves

{ "type": 13, "id": "Auja26VPCZjXFsSSk628HxCNGL1hbLsmM2hte6MiUwyk", "fee": 1300000, "feeAssetId": null, "timestamp": 1714368802899, "version": 2, "chainId": 87, "sender": "3PAucbbumdUXmhzcR421zGiayphEdo2tRoz", "senderPublicKey": "AiArNcvVoWJyv8ktLosfrg7eoy6oUZYooeHTZwTLQkZm", "proofs": [ "BpeZtUdHF4XzpVunMgN6pEvrwV1sAJF3aCQRkumyvX3rxVfWnVmhAjS3Jgh1vU63NVi27KMprQD7XYpgB5mMFKQ" ], "script": "base64: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c3RSYXRlVXBkYXRlZAkAtgIBAICglKWNHQUFRkxPT1IACXdhdmVzSW5XWAkAZAIICQDvBwEFEFdYX0JVUk5YVE5fV0FWRVMHcmVndWxhcgUKYmFzZUFtb3VudAALYnVybnh0bkluV1gJAPAHAgUQV1hfQlVSTlhUTl9XQVZFUwUJYnVybnh0bklkABFidXJueHRud2F2ZXNwcmljZQkAawMFAmQ4BQl3YXZlc0luV1gFC2J1cm54dG5JbldYAA9idXJueHRuYmFsYW5jZTIJAPAHAgkBB0FkZHJlc3MBBQVwb29sMgUJYnVybnh0bklkAAp1c2RiYWxhbmNlCQBpAgkAZAIJAGQCCQBkAgkA8AcCCQEHQWRkcmVzcwEFBXBvb2wyBQd1c2R0ZXJjCQDwBwIJAQdBZGRyZXNzAQUFcG9vbDIFB3VzZGNlcmMJAPAHAgkBB0FkZHJlc3MBBQVwb29sMgUHdXNkdGJzYwkA8AcCCQEHQWRkcmVzcwEFBXBvb2wyBQd1c2RjYnNjAAQAD2J1cm54dG51c2RwcmljZQkAawMFAmQ4BQp1c2RiYWxhbmNlBQ9idXJueHRuYmFsYW5jZTIAA0FUSAMJAGYCBRFidXJueHRud2F2ZXNwcmljZQkBEUBleHRyTmF0aXZlKDEwNTUpAQIPQVRIIGluIHdhdmVsZXRzBRFidXJueHRud2F2ZXNwcmljZQkBEUBleHRyTmF0aXZlKDEwNTApAgUEdGhpcwIPQVRIIGluIHdhdmVsZXRzAAZBVEh1c2QDCQBmAgUPYnVybnh0bnVzZHByaWNlCQERQGV4dHJOYXRpdmUoMTA1NSkBAg9BVEggaW4gY2VudGxldHMFD2J1cm54dG51c2RwcmljZQkBEUBleHRyTmF0aXZlKDEwNTApAgUEdGhpcwIPQVRIIGluIGNlbnRsZXRzAAtwcmljZWdyb3d0aAkAaQIJAGUCCQBrAwUCZDgFEWJ1cm54dG53YXZlc3ByaWNlCQERQGV4dHJOYXRpdmUoMTA1MCkCBQR0aGlzAiFpbnRpYWwgcHJpY2UgQlVSTi1YVE4gaW4gd2F2ZWxldHMFAmQ4AMCEPQALc3VyZkFkZHJlc3MJAQdBZGRyZXNzAQEaAVdraDjhA9SajJ8SG8YsvCMHOQvN7RLXCl8AC3N1cmZTdGFraW5nCQBpAgkBEUBleHRyTmF0aXZlKDEwNTApAgULc3VyZkFkZHJlc3MJAKwCAgkArAICAhUlcyVzJXNfX3BhcmFtQnlVc2VyX18JAKUIAQUEdGhpcwIIX19hbW91bnQFAmQ2CwFpAQtGaXJzdEludm9rZQADCQECIT0CCAUBaQZjYWxsZXIFBHRoaXMJAAIBAhxhY2Nlc3Mgb25seSBieSBwcm9qZWN0IG93bmVyBAFiCQD8BwQFBHRoaXMCB2J1cm5YVE4FA25pbAUDbmlsAwkAAAIFAWIFAWIEBGdyb3cJAPwHBAUEdGhpcwIEZ3JvdwUDbmlsBQNuaWwDCQAAAgUEZ3JvdwUEZ3JvdwQGZEVudHJ5CQD8BwQFBHRoaXMCBmRFbnRyeQUDbmlsBQNuaWwDCQAAAgUGZEVudHJ5BQZkRW50cnkFA25pbAkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgFpAQxzZWNvbmRJbnZva2UAAwkBAiE9AggFAWkGY2FsbGVyBQR0aGlzCQACAQIcYWNjZXNzIG9ubHkgYnkgcHJvamVjdCBvd25lcgQJc3Rha2VTdXJmAwkAZgIJAPAHAgUEdGhpcwUGc3VyZklkAAAJAPwHBAULc3VyZkFkZHJlc3MCBXN0YWtlBQNuaWwJAMwIAgkBD0F0dGFjaGVkUGF5bWVudAIFBnN1cmZJZAkA8AcCBQR0aGlzBQZzdXJmSWQFA25pbAUEdW5pdAMJAAACBQlzdGFrZVN1cmYFCXN0YWtlU3VyZgoBBnN3YXBXWAMHYXNzZXRJbghhc3NldE91dAhhbW91bnRJbgkA/AcECQEHQWRkcmVzcwEBGgFXLio1NbENt/F5PuG3RtCedFJNezHQg64GAgRzd2FwCQDMCAIJAGsDBQhhbW91bnRJbgB9AGQJAMwIAgkA2AQBBQhhc3NldE91dAkAzAgCCQClCAEFBHRoaXMFA25pbAkAzAgCCQEPQXR0YWNoZWRQYXltZW50AgUHYXNzZXRJbgUIYW1vdW50SW4FA25pbAQQc3dhcFhUTnRvVlZYVE5MUAMJAGYCCQDwBwIFBHRoaXMFBXh0bklkAAAJAQZzd2FwV1gDBQV4dG5JZAUHdnZ4dG5scAkA8AcCBQR0aGlzBQV4dG5JZAUEdW5pdAMJAAACBRBzd2FwWFROdG9WVlhUTkxQBRBzd2FwWFROdG9WVlhUTkxQCQDMCAIJAQxJbnRlZ2VyRW50cnkCAht0b3RhbCBTVVJGIE5ldXRyaW5vIHN0YWtpbmcFC3N1cmZTdGFraW5nBQNuaWwJAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4BaQELdGhpcmRJbnZva2UAAwkBAiE9AggFAWkGY2FsbGVyBQR0aGlzCQACAQIcYWNjZXNzIG9ubHkgYnkgcHJvamVjdCBvd25lcgQIc3dhcFN3b3AJAPwHBAkBB0FkZHJlc3MBBQhwb29sTWVnYQIEc3dhcAkAzAgCCQDYBAEFBnB1enpsZQkAzAgCAAAFA25pbAkAzAgCCQEPQXR0YWNoZWRQYXltZW50AgUGc3dvcElkCQDwBwIFBHRoaXMFBnN3b3BJZAUDbmlsAwkAAAIFCHN3YXBTd29wBQhzd2FwU3dvcAQPcG9vbE9uZVRva2VuSW52CQD8BwQJAQdBZGRyZXNzAQEaAVf9JcO9TmGUQe+6XhJjj8U5b0m1iDr16W0CIWdlbmVyYXRlSW5kZXhXaXRoT25lVG9rZW5BbmRTdGFrZQkAzAgCCQDYBAEFB3Bvb2xCQkIFA25pbAkAzAgCCQEPQXR0YWNoZWRQYXltZW50AgUGcHV6emxlCQDwBwIFBHRoaXMFBnB1enpsZQUDbmlsAwkAAAIFD3Bvb2xPbmVUb2tlbkludgUPcG9vbE9uZVRva2VuSW52BA5zdXJmQnVybkFtb3VudAUCZDYECHN1cmZCdXJuCQEEQnVybgIFBnN1cmZJZAUOc3VyZkJ1cm5BbW91bnQJAMwIAgUIc3VyZkJ1cm4JAMwIAgkBDEludGVnZXJFbnRyeQICEVNVUkYgdG90YWwgYnVybmVkCQBkAgkBDXRyeUdldEludGVnZXICBQR0aGlzAhFTVVJGIHRvdGFsIGJ1cm5lZAUOc3VyZkJ1cm5BbW91bnQFA25pbAkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgFpAQZkRW50cnkAAwkBAiE9AggFAWkGY2FsbGVyBQR0aGlzCQACAQIcYWNjZXNzIG9ubHkgYnkgcHJvamVjdCBvd25lcgkAzAgCCQEMSW50ZWdlckVudHJ5AgIiQlVSTi1YVE4gLyBXQVZFUyBwcmljZSBpbiB3YXZlbGV0cwURYnVybnh0bndhdmVzcHJpY2UJAMwIAgkBDEludGVnZXJFbnRyeQICDlByaWNlIGdyb3d0aCAlBQtwcmljZWdyb3d0aAkAzAgCCQEMSW50ZWdlckVudHJ5AgIPQVRIIGluIHdhdmVsZXRzBQNBVEgJAMwIAgkBDEludGVnZXJFbnRyeQICIEJVUk4tWFROIC8gVVNEIHByaWNlIGluIGNlbnRsZXRzBQ9idXJueHRudXNkcHJpY2UJAMwIAgkBDEludGVnZXJFbnRyeQICD0FUSCBpbiBjZW50bGV0cwUGQVRIdXNkCQDMCAIJAQxJbnRlZ2VyRW50cnkCAhVBY3RpdmF0ZWQgYmxvY2toZWlnaHQFBmhlaWdodAkAzAgCCQEMSW50ZWdlckVudHJ5AgIPQlVSTi1YVE4gc3VwcGx5BAckbWF0Y2gwCQDsBwEFCWJ1cm54dG5JZAMJAAECBQckbWF0Y2gwAgVBc3NldAQFYXNzZXQFByRtYXRjaDAJAGkCCAUFYXNzZXQIcXVhbnRpdHkFAmQ4CQACAQIQQ2FuJ3QgZmluZCBhc3NldAkAzAgCCQEMSW50ZWdlckVudHJ5AgIVQlVSTi1YVE4gdG90YWwgYnVybmVkCQBlAgCAlOvcAwQHJG1hdGNoMAkA7AcBBQlidXJueHRuSWQDCQABAgUHJG1hdGNoMAIFQXNzZXQEBWFzc2V0BQckbWF0Y2gwCQBpAggFBWFzc2V0CHF1YW50aXR5BQJkOAkAAgECEENhbid0IGZpbmQgYXNzZXQJAMwIAgkBDEludGVnZXJFbnRyeQICC1NVUkYgc3VwcGx5BAckbWF0Y2gwCQDsBwEFBnN1cmZJZAMJAAECBQckbWF0Y2gwAgVBc3NldAQFYXNzZXQFByRtYXRjaDAJAGkCCAUFYXNzZXQIcXVhbnRpdHkFAmQ2CQACAQIQQ2FuJ3QgZmluZCBhc3NldAUDbmlsAWkBBGdyb3cAAwkBAiE9AggFAWkGY2FsbGVyBQR0aGlzCQACAQIcYWNjZXNzIG9ubHkgYnkgcHJvamVjdCBvd25lcgQUYnVybnh0bkJhbGFuY2VCZWZvcmUJAPAHAgUEdGhpcwUJYnVybnh0bklkAwkAAAIFFGJ1cm54dG5CYWxhbmNlQmVmb3JlBRRidXJueHRuQmFsYW5jZUJlZm9yZQQIY2xhaW1JbnYJAPwHBAkBB0FkZHJlc3MBARoBV4WdLDDV/AM+YcWt3pK/xSqR85muGkFACgIRY2xhaW1JbmRleFJld2FyZHMFA25pbAUDbmlsAwkAAAIFCGNsYWltSW52BQhjbGFpbUludgQJY2xhaW1JbnZXCQD8BwQJAQdBZGRyZXNzAQUJcG9vbFdoaXJsAhFjbGFpbUluZGV4UmV3YXJkcwUDbmlsBQNuaWwDCQAAAgUJY2xhaW1JbnZXBQljbGFpbUludlcEEWJ1cm54dG5EaWZmZXJlbmNlCQBlAgkA8AcCBQR0aGlzBQlidXJueHRuSWQFFGJ1cm54dG5CYWxhbmNlQmVmb3JlBAtidXJueHRuQnVybgkBBEJ1cm4CBQlidXJueHRuSWQFEWJ1cm54dG5EaWZmZXJlbmNlCQDMCAIFC2J1cm54dG5CdXJuBQNuaWwJAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4BaQEEcHVtcAADCQECIT0CCAUBaQZjYWxsZXIFBHRoaXMJAAIBAhxhY2Nlc3Mgb25seSBieSBwcm9qZWN0IG93bmVyBBRidXJueHRuQmFsYW5jZUJlZm9yZQkA8AcCBQR0aGlzBQlidXJueHRuSWQDCQAAAgUUYnVybnh0bkJhbGFuY2VCZWZvcmUFFGJ1cm54dG5CYWxhbmNlQmVmb3JlBAhjbGFpbUludgkA/AcECQEHQWRkcmVzcwEBGgFXhZ0sMNX8Az5hxa3ekr/FKpHzma4aQUAKAhFjbGFpbUluZGV4UmV3YXJkcwUDbmlsBQNuaWwDCQAAAgUIY2xhaW1JbnYFCGNsYWltSW52BAljbGFpbUludlcJAPwHBAkBB0FkZHJlc3MBBQlwb29sV2hpcmwCEWNsYWltSW5kZXhSZXdhcmRzBQNuaWwFA25pbAMJAAACBQljbGFpbUludlcFCWNsYWltSW52VwQFc3dlc3QJAPwHBAkBB0FkZHJlc3MBBQZwb29sSWQCBHN3YXAJAMwIAgUNYnVybnh0blN0cmluZwkAzAgCAAAFA25pbAkAzAgCCQEPQXR0YWNoZWRQYXltZW50AgUGd2VzdElkCQDwBwIFBHRoaXMFBndlc3RJZAUDbmlsAwkAAAIFBXN3ZXN0BQVzd2VzdAQGc3ZpcmVzCQD8BwQJAQdBZGRyZXNzAQUGcG9vbElkAgRzd2FwCQDMCAIFDWJ1cm54dG5TdHJpbmcJAMwIAgAABQNuaWwJAMwIAgkBD0F0dGFjaGVkUGF5bWVudAIFB3ZpcmVzSWQJAPAHAgUEdGhpcwUHdmlyZXNJZAUDbmlsAwkAAAIFBnN2aXJlcwUGc3ZpcmVzBARzZWdnCQD8BwQJAQdBZGRyZXNzAQUGcG9vbElkAgRzd2FwCQDMCAIFDWJ1cm54dG5TdHJpbmcJAMwIAgAABQNuaWwJAMwIAgkBD0F0dGFjaGVkUGF5bWVudAIFBWVnZ0lkCQDwBwIFBHRoaXMFBWVnZ0lkBQNuaWwDCQAAAgUEc2VnZwUEc2VnZwQFc25zYnQJAPwHBAkBB0FkZHJlc3MBBQZwb29sSWQCBHN3YXAJAMwIAgUNYnVybnh0blN0cmluZwkAzAgCAAAFA25pbAkAzAgCCQEPQXR0YWNoZWRQYXltZW50AgUGbnNidElkCQDwBwIFBHRoaXMFBm5zYnRJZAUDbmlsAwkAAAIFBXNuc2J0BQVzbnNidAQJc3dhcHdhdmVzCQD8BwQJAQdBZGRyZXNzAQUGcG9vbElkAgRzd2FwCQDMCAIFDWJ1cm54dG5TdHJpbmcJAMwIAgAABQNuaWwJAMwIAgkBD0F0dGFjaGVkUGF5bWVudAIFBHVuaXQDCQBmAgkAZQIICQDvBwEFBHRoaXMJYXZhaWxhYmxlBQJkOAAACQBlAggJAO8HAQUEdGhpcwlhdmFpbGFibGUFAmQ4AAAFA25pbAMJAAACBQlzd2Fwd2F2ZXMFCXN3YXB3YXZlcwQRYnVybnh0bkRpZmZlcmVuY2UJAGUCCQDwBwIFBHRoaXMFCWJ1cm54dG5JZAUUYnVybnh0bkJhbGFuY2VCZWZvcmUJAMwIAgkBBEJ1cm4CBQlidXJueHRuSWQFEWJ1cm54dG5EaWZmZXJlbmNlBQNuaWwJAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4BaQEOUHVtcEJ5QW55Ym9keTIAAwkAZgIJAGQCCQERQGV4dHJOYXRpdmUoMTA1MCkCBQR0aGlzAhVBY3RpdmF0ZWQgYmxvY2toZWlnaHQJAGgCAAgAoAsFBmhlaWdodAkAAgEJAKwCAgIWV2FpdCB0aWxsIGJsb2NraGVpZ2h0OgkApAMBCQBkAgkBEUBleHRyTmF0aXZlKDEwNTApAgUEdGhpcwIVQWN0aXZhdGVkIGJsb2NraGVpZ2h0CQBoAgAIAKALBBRidXJueHRuQmFsYW5jZUJlZm9yZQkA8AcCBQR0aGlzBQlidXJueHRuSWQDCQAAAgUUYnVybnh0bkJhbGFuY2VCZWZvcmUFFGJ1cm54dG5CYWxhbmNlQmVmb3JlBAhjbGFpbUludgkA/AcECQEHQWRkcmVzcwEBGgFXhZ0sMNX8Az5hxa3ekr/FKpHzma4aQUAKAhFjbGFpbUluZGV4UmV3YXJkcwUDbmlsBQNuaWwDCQAAAgUIY2xhaW1JbnYFCGNsYWltSW52BAVzd2VzdAkA/AcECQEHQWRkcmVzcwEFBnBvb2xJZAIEc3dhcAkAzAgCBQ1idXJueHRuU3RyaW5nCQDMCAIAAAUDbmlsCQDMCAIJAQ9BdHRhY2hlZFBheW1lbnQCBQZ3ZXN0SWQJAPAHAgUEdGhpcwUGd2VzdElkBQNuaWwDCQAAAgUFc3dlc3QFBXN3ZXN0BAZzdmlyZXMJAPwHBAkBB0FkZHJlc3MBBQZwb29sSWQCBHN3YXAJAMwIAgUNYnVybnh0blN0cmluZwkAzAgCAAAFA25pbAkAzAgCCQEPQXR0YWNoZWRQYXltZW50AgUHdmlyZXNJZAkA8AcCBQR0aGlzBQd2aXJlc0lkBQNuaWwDCQAAAgUGc3ZpcmVzBQZzdmlyZXMEBHNlZ2cJAPwHBAkBB0FkZHJlc3MBBQZwb29sSWQCBHN3YXAJAMwIAgUNYnVybnh0blN0cmluZwkAzAgCAAAFA25pbAkAzAgCCQEPQXR0YWNoZWRQYXltZW50AgUFZWdnSWQJAPAHAgUEdGhpcwUFZWdnSWQFA25pbAMJAAACBQRzZWdnBQRzZWdnBAVzc3VyZgkA/AcECQEHQWRkcmVzcwEFBnBvb2xJZAIEc3dhcAkAzAgCBQ1idXJueHRuU3RyaW5nCQDMCAIAAAUDbmlsCQDMCAIJAQ9BdHRhY2hlZFBheW1lbnQCBQZzdXJmSWQJAPAHAgUEdGhpcwUGc3VyZklkBQNuaWwDCQAAAgUFc3N1cmYFBXNzdXJmBAVzbnNidAkA/AcECQEHQWRkcmVzcwEFBnBvb2xJZAIEc3dhcAkAzAgCBQ1idXJueHRuU3RyaW5nCQDMCAIAAAUDbmlsCQDMCAIJAQ9BdHRhY2hlZFBheW1lbnQCBQZuc2J0SWQJAPAHAgUEdGhpcwUGbnNidElkBQNuaWwDCQAAAgUFc25zYnQFBXNuc2J0BANzd3gJAPwHBAkBB0FkZHJlc3MBBQZwb29sSWQCBHN3YXAJAMwIAgUNYnVybnh0blN0cmluZwkAzAgCAAAFA25pbAkAzAgCCQEPQXR0YWNoZWRQYXltZW50AgUEd3hJZAkA8AcCBQR0aGlzBQR3eElkBQNuaWwDCQAAAgUDc3d4BQNzd3gEBXNzd29wCQD8BwQJAQdBZGRyZXNzAQUGcG9vbElkAgRzd2FwCQDMCAIFDWJ1cm54dG5TdHJpbmcJAMwIAgAABQNuaWwJAMwIAgkBD0F0dGFjaGVkUGF5bWVudAIFBnN3b3BJZAkA8AcCBQR0aGlzBQZzd29wSWQFA25pbAMJAAACBQVzc3dvcAUFc3N3b3AECXN3YXB3YXZlcwkA/AcECQEHQWRkcmVzcwEFBnBvb2xJZAIEc3dhcAkAzAgCBQ1idXJueHRuU3RyaW5nCQDMCAIAAAUDbmlsCQDMCAIJAQ9BdHRhY2hlZFBheW1lbnQCBQR1bml0AwkAZgIJAGUCCAkA7wcBBQR0aGlzCWF2YWlsYWJsZQUCZDgAAAkAZQIICQDvBwEFBHRoaXMJYXZhaWxhYmxlBQJkOAAABQNuaWwDCQAAAgUJc3dhcHdhdmVzBQlzd2Fwd2F2ZXMEDXh0bmJ1cm5hbW91bnQDCQBnAgkA8AcCBQR0aGlzBQV4dG5JZAkAaAIAZAUCZDYJAGgCAGQFAmQ2CQDwBwIFBHRoaXMFBXh0bklkBAd4dG5CdXJuCQEEQnVybgIFBXh0bklkBQ14dG5idXJuYW1vdW50BBFidXJueHRuRGlmZmVyZW5jZQkAZQIJAPAHAgUEdGhpcwUJYnVybnh0bklkBRRidXJueHRuQmFsYW5jZUJlZm9yZQQLYnVybnh0bkJ1cm4JAQRCdXJuAgUJYnVybnh0bklkBRFidXJueHRuRGlmZmVyZW5jZQkAzAgCBQd4dG5CdXJuCQDMCAIFC2J1cm54dG5CdXJuCQDMCAIJAQxJbnRlZ2VyRW50cnkCAg9CVVJOLVhUTiBzdXBwbHkEByRtYXRjaDAJAOwHAQUJYnVybnh0bklkAwkAAQIFByRtYXRjaDACBUFzc2V0BAVhc3NldAUHJG1hdGNoMAkAaQIIBQVhc3NldAhxdWFudGl0eQUCZDgJAAIBAhBDYW4ndCBmaW5kIGFzc2V0CQDMCAIJAQxJbnRlZ2VyRW50cnkCAhVCVVJOLVhUTiB0b3RhbCBidXJuZWQJAGUCAICU69wDBAckbWF0Y2gwCQDsBwEFCWJ1cm54dG5JZAMJAAECBQckbWF0Y2gwAgVBc3NldAQFYXNzZXQFByRtYXRjaDAJAGkCCAUFYXNzZXQIcXVhbnRpdHkFAmQ4CQACAQIQQ2FuJ3QgZmluZCBhc3NldAkAzAgCCQEMSW50ZWdlckVudHJ5AgIQWFROIHRvdGFsIGJ1cm5lZAkAZAIJARFAZXh0ck5hdGl2ZSgxMDUwKQIFBHRoaXMCEFhUTiB0b3RhbCBidXJuZWQFDXh0bmJ1cm5hbW91bnQFA25pbAkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgFpAQ5QdW1wQnlBbnlib2R5MQADCQBmAgkAZAIJARFAZXh0ck5hdGl2ZSgxMDUwKQIFBHRoaXMCFUFjdGl2YXRlZCBibG9ja2hlaWdodAkAaAIACACgCwUGaGVpZ2h0CQACAQkArAICAhZXYWl0IHRpbGwgYmxvY2toZWlnaHQ6CQCkAwEJAGQCCQERQGV4dHJOYXRpdmUoMTA1MCkCBQR0aGlzAhVBY3RpdmF0ZWQgYmxvY2toZWlnaHQJAGgCAAgAoAsECWNsYWltSW52QgkA/AcECQEHQWRkcmVzcwEFB3Bvb2xCQkICEWNsYWltSW5kZXhSZXdhcmRzBQNuaWwFA25pbAMJAAACBQljbGFpbUludkIFCWNsYWltSW52QgQJY2xhaW1JbnZXCQD8BwQJAQdBZGRyZXNzAQUJcG9vbFdoaXJsAhFjbGFpbUluZGV4UmV3YXJkcwUDbmlsBQNuaWwDCQAAAgUJY2xhaW1JbnZXBQljbGFpbUludlcEBnN3aGlybAkA/AcECQEHQWRkcmVzcwEFB3Bvb2xCQkICBHN3YXAJAMwIAgUNYnVybnh0blN0cmluZwkAzAgCAAAFA25pbAkAzAgCCQEPQXR0YWNoZWRQYXltZW50AgUJd2hpcmxwb29sCQDwBwIFBHRoaXMFCXdoaXJscG9vbAUDbmlsAwkAAAIFBnN3aGlybAUGc3doaXJsBAdzcHV6emxlCQD8BwQJAQdBZGRyZXNzAQUHcG9vbEJCQgIEc3dhcAkAzAgCBQ1idXJueHRuU3RyaW5nCQDMCAIAAAUDbmlsCQDMCAIJAQ9BdHRhY2hlZFBheW1lbnQCBQZwdXp6bGUJAPAHAgUEdGhpcwUGcHV6emxlBQNuaWwDCQAAAgUHc3B1enpsZQUHc3B1enpsZQQFc3JvbWUJAPwHBAkBB0FkZHJlc3MBBQdwb29sQkJCAgRzd2FwCQDMCAIFDWJ1cm54dG5TdHJpbmcJAMwIAgAABQNuaWwJAMwIAgkBD0F0dGFjaGVkUGF5bWVudAIFBHJvbWUJAPAHAgUEdGhpcwUEcm9tZQUDbmlsAwkAAAIFBXNyb21lBQVzcm9tZQUDbmlsCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuAWkBCHdpdGhkcmF3AAMJAQIhPQIIBQFpBmNhbGxlcgkBB0FkZHJlc3MBARoBVxiJGyRtL+JEpbK5LtBkI1AuKd9yMNoyWQkAAgECCW5vIGFjY2VzcwQId2l0aGRyYXcJAPwHBAkBB0FkZHJlc3MBARoBV3US3ZOCD1veJXYVOctJ1R9TKAnE6HFeJwIVd2l0aGRyYXdWZXN0ZWRBbGxVU0ROCQDMCAIHCQDMCAIGBQNuaWwFA25pbAMJAAACBQh3aXRoZHJhdwUId2l0aGRyYXcFA25pbAkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgFpAQ1pbXBvcnRWVlhUTkxQAAMJAQIhPQIIBQFpBmNhbGxlcgkBB0FkZHJlc3MBARoBVxiJGyRtL+JEpbK5LtBkI1AuKd9yMNoyWQkAAgECCW5vIGFjY2VzcwQGaW1wb3J0CQD8BwQJAQdBZGRyZXNzAQEaAVd1Et2Tgg9b3iV2FTnLSdUfUygJxOhxXicCCGltcG9ydExQBQNuaWwJAMwIAgkBD0F0dGFjaGVkUGF5bWVudAIFB3Z2eHRubHAJAPAHAgUEdGhpcwUHdnZ4dG5scAUDbmlsAwkAAAIFBmltcG9ydAUGaW1wb3J0BQNuaWwJAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4BaQEHYnVyblhUTgADCQECIT0CCAUBaQZjYWxsZXIFBHRoaXMJAAIBAhxhY2Nlc3Mgb25seSBieSBwcm9qZWN0IG93bmVyBA14dG5idXJuYW1vdW50BQJkNgQHeHRuQnVybgkBBEJ1cm4CBQV4dG5JZAUNeHRuYnVybmFtb3VudAkAzAgCBQd4dG5CdXJuCQDMCAIJAQxJbnRlZ2VyRW50cnkCAhBYVE4gdG90YWwgYnVybmVkCQBkAgkBEUBleHRyTmF0aXZlKDEwNTApAgUEdGhpcwIQWFROIHRvdGFsIGJ1cm5lZAUNeHRuYnVybmFtb3VudAkAzAgCCQEMSW50ZWdlckVudHJ5AgIKWFROIHN1cHBseQQHJG1hdGNoMAkA7AcBBQV4dG5JZAMJAAECBQckbWF0Y2gwAgVBc3NldAQFYXNzZXQFByRtYXRjaDAJAGkCCQBlAggFBWFzc2V0CHF1YW50aXR5CQDwBwIJAQdBZGRyZXNzAQEaAVdwBGKmR5vprVZolMvvhYwwgiAomggUlrIFBXh0bklkBQJkNgkAAgECEENhbid0IGZpbmQgYXNzZXQFA25pbADNrvPK", "height": 4149662, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: 7WoiFXFXjqC5m9Nqn3umw29aBzgvPRwtFusxTjM9tEvV Next: 7RRyjkM8MbyUG3vA1hbhRFvcZAqebXkXmvZtsAZEszQM Diff:
OldNewDifferences
126126 let b = invoke(this, "burnXTN", nil, nil)
127127 if ((b == b))
128128 then {
129- let grow = if ((burnxtnwavesprice >= getIntegerValue(this, "ATH in wavelets")))
130- then invoke(this, "grow", nil, nil)
131- else unit
129+ let grow = invoke(this, "grow", nil, nil)
132130 if ((grow == grow))
133131 then {
134- let pump = if ((getIntegerValue(this, "ATH in wavelets") > burnxtnwavesprice))
135- then invoke(this, "pump", nil, nil)
136- else unit
137- if ((pump == pump))
138- then {
139- let dEntry = invoke(this, "dEntry", nil, nil)
140- if ((dEntry == dEntry))
141- then nil
142- else throw("Strict value is not equal to itself.")
143- }
144- else throw("Strict value is not equal to itself.")
145- }
146- else throw("Strict value is not equal to itself.")
147- }
148- else throw("Strict value is not equal to itself.")
149- }
150-
151-
152-
153-@Callable(i)
154-func thirdInvoke () = if ((i.caller != this))
155- then throw("access only by project owner")
156- else {
157- let wavesBalanceBefore = wavesBalance(this).available
158- if ((wavesBalanceBefore == wavesBalanceBefore))
159- then {
160- let swapSwop = invoke(Address(poolMega), "swap", [toBase58String(puzzle), 0], [AttachedPayment(swopId, assetBalance(this, swopId))])
161- if ((swapSwop == swapSwop))
162- then {
163- let poolOneTokenInv = invoke(Address(base58'3PR1Qvi9mHT35SwWEkLSqqE2L8thiPLdVWU'), "generateIndexWithOneTokenAndStake", [toBase58String(poolBBB)], [AttachedPayment(puzzle, assetBalance(this, puzzle))])
164- if ((poolOneTokenInv == poolOneTokenInv))
165- then {
166- let burnxtnBalanceBefore = assetBalance(this, burnxtnId)
167- if ((burnxtnBalanceBefore == burnxtnBalanceBefore))
168- then {
169- let swapWhirl = invoke(Address(poolBBB), "swap", [toBase58String(burnxtnId), 0], [AttachedPayment(whirlpool, assetBalance(this, whirlpool))])
170- if ((swapWhirl == swapWhirl))
171- then {
172- let swapRome = invoke(Address(poolBBB), "swap", [toBase58String(burnxtnId), 0], [AttachedPayment(rome, assetBalance(this, rome))])
173- if ((swapRome == swapRome))
174- then {
175- let wavesDifference = (wavesBalance(this).available - wavesBalanceBefore)
176- let burnxtnDifference = (assetBalance(this, burnxtnId) - burnxtnBalanceBefore)
177- let swapWaves = invoke(Address(poolId), "swap", [toBase58String(surfId), 0], [AttachedPayment(unit, wavesDifference)])
178- if ((swapWaves == swapWaves))
179- then {
180- let swapBurnxtn = invoke(Address(poolId), "swap", [toBase58String(surfId), 0], [AttachedPayment(burnxtnId, burnxtnDifference)])
181- if ((swapBurnxtn == swapBurnxtn))
182- then {
183- let surfBurnAmount = assetBalance(this, surfId)
184- let surfBurn = Burn(surfId, surfBurnAmount)
185-[surfBurn, IntegerEntry("SURF total burned", (tryGetInteger(this, "SURF total burned") + surfBurnAmount))]
186- }
187- else throw("Strict value is not equal to itself.")
188- }
189- else throw("Strict value is not equal to itself.")
190- }
191- else throw("Strict value is not equal to itself.")
192- }
193- else throw("Strict value is not equal to itself.")
194- }
195- else throw("Strict value is not equal to itself.")
196- }
132+ let dEntry = invoke(this, "dEntry", nil, nil)
133+ if ((dEntry == dEntry))
134+ then nil
197135 else throw("Strict value is not equal to itself.")
198136 }
199137 else throw("Strict value is not equal to itself.")
219157 else unit
220158 if ((swapXTNtoVVXTNLP == swapXTNtoVVXTNLP))
221159 then [IntegerEntry("total SURF Neutrino staking", surfStaking)]
160+ else throw("Strict value is not equal to itself.")
161+ }
162+ else throw("Strict value is not equal to itself.")
163+ }
164+
165+
166+
167+@Callable(i)
168+func thirdInvoke () = if ((i.caller != this))
169+ then throw("access only by project owner")
170+ else {
171+ let swapSwop = invoke(Address(poolMega), "swap", [toBase58String(puzzle), 0], [AttachedPayment(swopId, assetBalance(this, swopId))])
172+ if ((swapSwop == swapSwop))
173+ then {
174+ let poolOneTokenInv = invoke(Address(base58'3PR1Qvi9mHT35SwWEkLSqqE2L8thiPLdVWU'), "generateIndexWithOneTokenAndStake", [toBase58String(poolBBB)], [AttachedPayment(puzzle, assetBalance(this, puzzle))])
175+ if ((poolOneTokenInv == poolOneTokenInv))
176+ then {
177+ let surfBurnAmount = d6
178+ let surfBurn = Burn(surfId, surfBurnAmount)
179+[surfBurn, IntegerEntry("SURF total burned", (tryGetInteger(this, "SURF total burned") + surfBurnAmount))]
180+ }
222181 else throw("Strict value is not equal to itself.")
223182 }
224183 else throw("Strict value is not equal to itself.")
463422 func burnXTN () = if ((i.caller != this))
464423 then throw("access only by project owner")
465424 else {
466- let xtnburnamount = if ((assetBalance(this, xtnId) >= (100 * d6)))
467- then (100 * d6)
468- else assetBalance(this, xtnId)
425+ let xtnburnamount = d6
469426 let xtnBurn = Burn(xtnId, xtnburnamount)
470427 [xtnBurn, IntegerEntry("XTN total burned", (getIntegerValue(this, "XTN total burned") + xtnburnamount)), IntegerEntry("XTN supply", match assetInfo(xtnId) {
471428 case asset: Asset =>
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 6 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 func tryGetInteger (address,key) = match getInteger(address, key) {
55 case b: Int =>
66 b
77 case _ =>
88 0
99 }
1010
1111
1212 let d6 = 1000000
1313
1414 let d8 = 100000000
1515
1616 let poolId = base58'3PE7NtJdmVq4yo47LKDqurQ8RLDCouvJCPB'
1717
1818 let pool2 = base58'3PQHndCUVrv3wBuQjbvVP9SnGmfbfitGxfx'
1919
2020 let poolMega = base58'3PBiMQLnX8wd4bssXCgF8KuUqHv1H4zWHGi'
2121
2222 let poolBBB = base58'3P9VPwVfNj3dDevQZt1Z951A4K57cmQmCgk'
2323
2424 let poolWhirl = base58'3P2myTbd5zpEHcYmNpdWTp5gXS5B8tL1RCY'
2525
2626 let xtnId = base58'DG2xFkPdDwKUoBkzGAhQtLpSGzfXLiCYPEzeKH2Ad24p'
2727
2828 let burnxtnId = base58'3SjxA2YLdfF9fTRbzLm9xFn27C6MW34W1YsdJ6Axefns'
2929
3030 let burnxtnString = toBase58String(burnxtnId)
3131
3232 let westId = base58'4LHHvYGNKJUg5hj65aGD5vgScvCBmLpdRFtjokvCjSL8'
3333
3434 let viresId = base58'DSbbhLsSTeDg5Lsiufk2Aneh3DjVqJuPr2M9uU1gwy5p'
3535
3636 let eggId = base58'C1iWsKGqLwjHUndiQ7iXpdmPum9PeCDFfyXBdJJosDRS'
3737
3838 let surfId = base58'At8D6NFFpheCbvKVnjVoeLL84Eo8NZn6ovManxfLaFWL'
3939
4040 let nsbtId = base58'6nSpVyNH7yM69eg446wrQR94ipbbcmZMU1ENPwanC97g'
4141
4242 let wxId = base58'Atqv59EYzjFGuitKVnMRk6H8FukjoV3ktPorbEys25on'
4343
4444 let swopId = base58'Ehie5xYpeN8op1Cctc6aGUrqx8jq3jtf1DSjXDbfm7aT'
4545
4646 let usdterc = base58'9wc3LXNA4TEBsXyKtoLE9mrbDD7WMHXvXrCjZvabLAsi'
4747
4848 let usdcerc = base58'HGgabTqUS8WtVFUJzfmrTDMgEccJuZLBPhFgQFxvnsoW'
4949
5050 let usdtbsc = base58'A81p1LTRyoq2rDR2TNxB2dWYxsiNwCSSi8sXef2SEkwb'
5151
5252 let usdcbsc = base58'4BKKSp6NoNcrFHyorZogDyctq1fq6w7114Ym1pw6HUtC'
5353
5454 let swaves = base58'YiNbofFzC17jEHHCMwrRcpy9MrrjabMMLZxg8g5xmf7'
5555
5656 let puzzle = base58'HEB8Qaw9xrWpWs8tHsiATYGBWDBtP2S7kcPALrMu43AS'
5757
5858 let whirlpool = base58'73tY3E6Gd5AWYmsuq8m8Kek7KnJNAYyS3GoveTbc6jCi'
5959
6060 let rome = base58'AP4Cb5xLYGH6ZigHreCZHoXpQTWDkPsG2BHqfDUx6taJ'
6161
6262 let vvxtnlp = base58'8KEtor9aSsSj38MknyAE7k1uRThHY9prAXgiE4D7WpyL'
6363
6464 let SWAVES_stake = Address(base58'3PDPzZVLhN1EuzGy4xAxjjTVkawKDLEaHiV')
6565
6666 func _loadInt (key_,default_) = match getInteger(SWAVES_stake, key_) {
6767 case a: Int =>
6868 a
6969 case _ =>
7070 default_
7171 }
7272
7373
7474 func _loadBigInt (key_,default_) = match getBinary(SWAVES_stake, key_) {
7575 case a: ByteVector =>
7676 toBigInt(a)
7777 case _ =>
7878 default_
7979 }
8080
8181
8282 let WX_BURNXTN_WAVES = Address(base58'3P5vwLbXddLWpsRspftMxLuzfsjk3dLT3n5')
8383
8484 let lastRate = _loadBigInt("LAST_RATE", toBigInt(1000000000000))
8585
8686 let currentRate = _loadBigInt("CURRENT_RATE", toBigInt(0))
8787
8888 let lastHeight = _loadInt("LAST_HEIGHT", 0)
8989
9090 let targetHeight = min([_loadInt("TARGET_HEIGHT", 0), height])
9191
9292 let lastRateUpdated = (lastRate + (currentRate * toBigInt((targetHeight - lastHeight))))
9393
9494 let baseAmount = toInt(fraction(toBigInt(assetBalance(WX_BURNXTN_WAVES, swaves)), lastRateUpdated, toBigInt(1000000000000), FLOOR))
9595
9696 let wavesInWX = (wavesBalance(WX_BURNXTN_WAVES).regular + baseAmount)
9797
9898 let burnxtnInWX = assetBalance(WX_BURNXTN_WAVES, burnxtnId)
9999
100100 let burnxtnwavesprice = fraction(d8, wavesInWX, burnxtnInWX)
101101
102102 let burnxtnbalance2 = assetBalance(Address(pool2), burnxtnId)
103103
104104 let usdbalance = ((((assetBalance(Address(pool2), usdterc) + assetBalance(Address(pool2), usdcerc)) + assetBalance(Address(pool2), usdtbsc)) + assetBalance(Address(pool2), usdcbsc)) / 4)
105105
106106 let burnxtnusdprice = fraction(d8, usdbalance, burnxtnbalance2)
107107
108108 let ATH = if ((burnxtnwavesprice > getIntegerValue("ATH in wavelets")))
109109 then burnxtnwavesprice
110110 else getIntegerValue(this, "ATH in wavelets")
111111
112112 let ATHusd = if ((burnxtnusdprice > getIntegerValue("ATH in centlets")))
113113 then burnxtnusdprice
114114 else getIntegerValue(this, "ATH in centlets")
115115
116116 let pricegrowth = ((fraction(d8, burnxtnwavesprice, getIntegerValue(this, "intial price BURN-XTN in wavelets")) - d8) / 1000000)
117117
118118 let surfAddress = Address(base58'3PBiotFpqjRMkkeFBccnQNUXUopy7KFez5C')
119119
120120 let surfStaking = (getIntegerValue(surfAddress, (("%s%s%s__paramByUser__" + toString(this)) + "__amount")) / d6)
121121
122122 @Callable(i)
123123 func FirstInvoke () = if ((i.caller != this))
124124 then throw("access only by project owner")
125125 else {
126126 let b = invoke(this, "burnXTN", nil, nil)
127127 if ((b == b))
128128 then {
129- let grow = if ((burnxtnwavesprice >= getIntegerValue(this, "ATH in wavelets")))
130- then invoke(this, "grow", nil, nil)
131- else unit
129+ let grow = invoke(this, "grow", nil, nil)
132130 if ((grow == grow))
133131 then {
134- let pump = if ((getIntegerValue(this, "ATH in wavelets") > burnxtnwavesprice))
135- then invoke(this, "pump", nil, nil)
136- else unit
137- if ((pump == pump))
138- then {
139- let dEntry = invoke(this, "dEntry", nil, nil)
140- if ((dEntry == dEntry))
141- then nil
142- else throw("Strict value is not equal to itself.")
143- }
144- else throw("Strict value is not equal to itself.")
145- }
146- else throw("Strict value is not equal to itself.")
147- }
148- else throw("Strict value is not equal to itself.")
149- }
150-
151-
152-
153-@Callable(i)
154-func thirdInvoke () = if ((i.caller != this))
155- then throw("access only by project owner")
156- else {
157- let wavesBalanceBefore = wavesBalance(this).available
158- if ((wavesBalanceBefore == wavesBalanceBefore))
159- then {
160- let swapSwop = invoke(Address(poolMega), "swap", [toBase58String(puzzle), 0], [AttachedPayment(swopId, assetBalance(this, swopId))])
161- if ((swapSwop == swapSwop))
162- then {
163- let poolOneTokenInv = invoke(Address(base58'3PR1Qvi9mHT35SwWEkLSqqE2L8thiPLdVWU'), "generateIndexWithOneTokenAndStake", [toBase58String(poolBBB)], [AttachedPayment(puzzle, assetBalance(this, puzzle))])
164- if ((poolOneTokenInv == poolOneTokenInv))
165- then {
166- let burnxtnBalanceBefore = assetBalance(this, burnxtnId)
167- if ((burnxtnBalanceBefore == burnxtnBalanceBefore))
168- then {
169- let swapWhirl = invoke(Address(poolBBB), "swap", [toBase58String(burnxtnId), 0], [AttachedPayment(whirlpool, assetBalance(this, whirlpool))])
170- if ((swapWhirl == swapWhirl))
171- then {
172- let swapRome = invoke(Address(poolBBB), "swap", [toBase58String(burnxtnId), 0], [AttachedPayment(rome, assetBalance(this, rome))])
173- if ((swapRome == swapRome))
174- then {
175- let wavesDifference = (wavesBalance(this).available - wavesBalanceBefore)
176- let burnxtnDifference = (assetBalance(this, burnxtnId) - burnxtnBalanceBefore)
177- let swapWaves = invoke(Address(poolId), "swap", [toBase58String(surfId), 0], [AttachedPayment(unit, wavesDifference)])
178- if ((swapWaves == swapWaves))
179- then {
180- let swapBurnxtn = invoke(Address(poolId), "swap", [toBase58String(surfId), 0], [AttachedPayment(burnxtnId, burnxtnDifference)])
181- if ((swapBurnxtn == swapBurnxtn))
182- then {
183- let surfBurnAmount = assetBalance(this, surfId)
184- let surfBurn = Burn(surfId, surfBurnAmount)
185-[surfBurn, IntegerEntry("SURF total burned", (tryGetInteger(this, "SURF total burned") + surfBurnAmount))]
186- }
187- else throw("Strict value is not equal to itself.")
188- }
189- else throw("Strict value is not equal to itself.")
190- }
191- else throw("Strict value is not equal to itself.")
192- }
193- else throw("Strict value is not equal to itself.")
194- }
195- else throw("Strict value is not equal to itself.")
196- }
132+ let dEntry = invoke(this, "dEntry", nil, nil)
133+ if ((dEntry == dEntry))
134+ then nil
197135 else throw("Strict value is not equal to itself.")
198136 }
199137 else throw("Strict value is not equal to itself.")
200138 }
201139 else throw("Strict value is not equal to itself.")
202140 }
203141
204142
205143
206144 @Callable(i)
207145 func secondInvoke () = if ((i.caller != this))
208146 then throw("access only by project owner")
209147 else {
210148 let stakeSurf = if ((assetBalance(this, surfId) > 0))
211149 then invoke(surfAddress, "stake", nil, [AttachedPayment(surfId, assetBalance(this, surfId))])
212150 else unit
213151 if ((stakeSurf == stakeSurf))
214152 then {
215153 func swapWX (assetIn,assetOut,amountIn) = invoke(Address(base58'3P68zNiufsu1viZpu1aY3cdahRRKcvV5N93'), "swap", [fraction(amountIn, 125, 100), toBase58String(assetOut), toString(this)], [AttachedPayment(assetIn, amountIn)])
216154
217155 let swapXTNtoVVXTNLP = if ((assetBalance(this, xtnId) > 0))
218156 then swapWX(xtnId, vvxtnlp, assetBalance(this, xtnId))
219157 else unit
220158 if ((swapXTNtoVVXTNLP == swapXTNtoVVXTNLP))
221159 then [IntegerEntry("total SURF Neutrino staking", surfStaking)]
160+ else throw("Strict value is not equal to itself.")
161+ }
162+ else throw("Strict value is not equal to itself.")
163+ }
164+
165+
166+
167+@Callable(i)
168+func thirdInvoke () = if ((i.caller != this))
169+ then throw("access only by project owner")
170+ else {
171+ let swapSwop = invoke(Address(poolMega), "swap", [toBase58String(puzzle), 0], [AttachedPayment(swopId, assetBalance(this, swopId))])
172+ if ((swapSwop == swapSwop))
173+ then {
174+ let poolOneTokenInv = invoke(Address(base58'3PR1Qvi9mHT35SwWEkLSqqE2L8thiPLdVWU'), "generateIndexWithOneTokenAndStake", [toBase58String(poolBBB)], [AttachedPayment(puzzle, assetBalance(this, puzzle))])
175+ if ((poolOneTokenInv == poolOneTokenInv))
176+ then {
177+ let surfBurnAmount = d6
178+ let surfBurn = Burn(surfId, surfBurnAmount)
179+[surfBurn, IntegerEntry("SURF total burned", (tryGetInteger(this, "SURF total burned") + surfBurnAmount))]
180+ }
222181 else throw("Strict value is not equal to itself.")
223182 }
224183 else throw("Strict value is not equal to itself.")
225184 }
226185
227186
228187
229188 @Callable(i)
230189 func dEntry () = if ((i.caller != this))
231190 then throw("access only by project owner")
232191 else [IntegerEntry("BURN-XTN / WAVES price in wavelets", burnxtnwavesprice), IntegerEntry("Price growth %", pricegrowth), IntegerEntry("ATH in wavelets", ATH), IntegerEntry("BURN-XTN / USD price in centlets", burnxtnusdprice), IntegerEntry("ATH in centlets", ATHusd), IntegerEntry("Activated blockheight", height), IntegerEntry("BURN-XTN supply", match assetInfo(burnxtnId) {
233192 case asset: Asset =>
234193 (asset.quantity / d8)
235194 case _ =>
236195 throw("Can't find asset")
237196 }), IntegerEntry("BURN-XTN total burned", (1000000000 - match assetInfo(burnxtnId) {
238197 case asset: Asset =>
239198 (asset.quantity / d8)
240199 case _ =>
241200 throw("Can't find asset")
242201 })), IntegerEntry("SURF supply", match assetInfo(surfId) {
243202 case asset: Asset =>
244203 (asset.quantity / d6)
245204 case _ =>
246205 throw("Can't find asset")
247206 })]
248207
249208
250209
251210 @Callable(i)
252211 func grow () = if ((i.caller != this))
253212 then throw("access only by project owner")
254213 else {
255214 let burnxtnBalanceBefore = assetBalance(this, burnxtnId)
256215 if ((burnxtnBalanceBefore == burnxtnBalanceBefore))
257216 then {
258217 let claimInv = invoke(Address(base58'3PE7NtJdmVq4yo47LKDqurQ8RLDCouvJCPB'), "claimIndexRewards", nil, nil)
259218 if ((claimInv == claimInv))
260219 then {
261220 let claimInvW = invoke(Address(poolWhirl), "claimIndexRewards", nil, nil)
262221 if ((claimInvW == claimInvW))
263222 then {
264223 let burnxtnDifference = (assetBalance(this, burnxtnId) - burnxtnBalanceBefore)
265224 let burnxtnBurn = Burn(burnxtnId, burnxtnDifference)
266225 [burnxtnBurn]
267226 }
268227 else throw("Strict value is not equal to itself.")
269228 }
270229 else throw("Strict value is not equal to itself.")
271230 }
272231 else throw("Strict value is not equal to itself.")
273232 }
274233
275234
276235
277236 @Callable(i)
278237 func pump () = if ((i.caller != this))
279238 then throw("access only by project owner")
280239 else {
281240 let burnxtnBalanceBefore = assetBalance(this, burnxtnId)
282241 if ((burnxtnBalanceBefore == burnxtnBalanceBefore))
283242 then {
284243 let claimInv = invoke(Address(base58'3PE7NtJdmVq4yo47LKDqurQ8RLDCouvJCPB'), "claimIndexRewards", nil, nil)
285244 if ((claimInv == claimInv))
286245 then {
287246 let claimInvW = invoke(Address(poolWhirl), "claimIndexRewards", nil, nil)
288247 if ((claimInvW == claimInvW))
289248 then {
290249 let swest = invoke(Address(poolId), "swap", [burnxtnString, 0], [AttachedPayment(westId, assetBalance(this, westId))])
291250 if ((swest == swest))
292251 then {
293252 let svires = invoke(Address(poolId), "swap", [burnxtnString, 0], [AttachedPayment(viresId, assetBalance(this, viresId))])
294253 if ((svires == svires))
295254 then {
296255 let segg = invoke(Address(poolId), "swap", [burnxtnString, 0], [AttachedPayment(eggId, assetBalance(this, eggId))])
297256 if ((segg == segg))
298257 then {
299258 let snsbt = invoke(Address(poolId), "swap", [burnxtnString, 0], [AttachedPayment(nsbtId, assetBalance(this, nsbtId))])
300259 if ((snsbt == snsbt))
301260 then {
302261 let swapwaves = invoke(Address(poolId), "swap", [burnxtnString, 0], [AttachedPayment(unit, if (((wavesBalance(this).available - d8) > 0))
303262 then (wavesBalance(this).available - d8)
304263 else 0)])
305264 if ((swapwaves == swapwaves))
306265 then {
307266 let burnxtnDifference = (assetBalance(this, burnxtnId) - burnxtnBalanceBefore)
308267 [Burn(burnxtnId, burnxtnDifference)]
309268 }
310269 else throw("Strict value is not equal to itself.")
311270 }
312271 else throw("Strict value is not equal to itself.")
313272 }
314273 else throw("Strict value is not equal to itself.")
315274 }
316275 else throw("Strict value is not equal to itself.")
317276 }
318277 else throw("Strict value is not equal to itself.")
319278 }
320279 else throw("Strict value is not equal to itself.")
321280 }
322281 else throw("Strict value is not equal to itself.")
323282 }
324283 else throw("Strict value is not equal to itself.")
325284 }
326285
327286
328287
329288 @Callable(i)
330289 func PumpByAnybody2 () = if (((getIntegerValue(this, "Activated blockheight") + (8 * 1440)) > height))
331290 then throw(("Wait till blockheight:" + toString((getIntegerValue(this, "Activated blockheight") + (8 * 1440)))))
332291 else {
333292 let burnxtnBalanceBefore = assetBalance(this, burnxtnId)
334293 if ((burnxtnBalanceBefore == burnxtnBalanceBefore))
335294 then {
336295 let claimInv = invoke(Address(base58'3PE7NtJdmVq4yo47LKDqurQ8RLDCouvJCPB'), "claimIndexRewards", nil, nil)
337296 if ((claimInv == claimInv))
338297 then {
339298 let swest = invoke(Address(poolId), "swap", [burnxtnString, 0], [AttachedPayment(westId, assetBalance(this, westId))])
340299 if ((swest == swest))
341300 then {
342301 let svires = invoke(Address(poolId), "swap", [burnxtnString, 0], [AttachedPayment(viresId, assetBalance(this, viresId))])
343302 if ((svires == svires))
344303 then {
345304 let segg = invoke(Address(poolId), "swap", [burnxtnString, 0], [AttachedPayment(eggId, assetBalance(this, eggId))])
346305 if ((segg == segg))
347306 then {
348307 let ssurf = invoke(Address(poolId), "swap", [burnxtnString, 0], [AttachedPayment(surfId, assetBalance(this, surfId))])
349308 if ((ssurf == ssurf))
350309 then {
351310 let snsbt = invoke(Address(poolId), "swap", [burnxtnString, 0], [AttachedPayment(nsbtId, assetBalance(this, nsbtId))])
352311 if ((snsbt == snsbt))
353312 then {
354313 let swx = invoke(Address(poolId), "swap", [burnxtnString, 0], [AttachedPayment(wxId, assetBalance(this, wxId))])
355314 if ((swx == swx))
356315 then {
357316 let sswop = invoke(Address(poolId), "swap", [burnxtnString, 0], [AttachedPayment(swopId, assetBalance(this, swopId))])
358317 if ((sswop == sswop))
359318 then {
360319 let swapwaves = invoke(Address(poolId), "swap", [burnxtnString, 0], [AttachedPayment(unit, if (((wavesBalance(this).available - d8) > 0))
361320 then (wavesBalance(this).available - d8)
362321 else 0)])
363322 if ((swapwaves == swapwaves))
364323 then {
365324 let xtnburnamount = if ((assetBalance(this, xtnId) >= (100 * d6)))
366325 then (100 * d6)
367326 else assetBalance(this, xtnId)
368327 let xtnBurn = Burn(xtnId, xtnburnamount)
369328 let burnxtnDifference = (assetBalance(this, burnxtnId) - burnxtnBalanceBefore)
370329 let burnxtnBurn = Burn(burnxtnId, burnxtnDifference)
371330 [xtnBurn, burnxtnBurn, IntegerEntry("BURN-XTN supply", match assetInfo(burnxtnId) {
372331 case asset: Asset =>
373332 (asset.quantity / d8)
374333 case _ =>
375334 throw("Can't find asset")
376335 }), IntegerEntry("BURN-XTN total burned", (1000000000 - match assetInfo(burnxtnId) {
377336 case asset: Asset =>
378337 (asset.quantity / d8)
379338 case _ =>
380339 throw("Can't find asset")
381340 })), IntegerEntry("XTN total burned", (getIntegerValue(this, "XTN total burned") + xtnburnamount))]
382341 }
383342 else throw("Strict value is not equal to itself.")
384343 }
385344 else throw("Strict value is not equal to itself.")
386345 }
387346 else throw("Strict value is not equal to itself.")
388347 }
389348 else throw("Strict value is not equal to itself.")
390349 }
391350 else throw("Strict value is not equal to itself.")
392351 }
393352 else throw("Strict value is not equal to itself.")
394353 }
395354 else throw("Strict value is not equal to itself.")
396355 }
397356 else throw("Strict value is not equal to itself.")
398357 }
399358 else throw("Strict value is not equal to itself.")
400359 }
401360 else throw("Strict value is not equal to itself.")
402361 }
403362
404363
405364
406365 @Callable(i)
407366 func PumpByAnybody1 () = if (((getIntegerValue(this, "Activated blockheight") + (8 * 1440)) > height))
408367 then throw(("Wait till blockheight:" + toString((getIntegerValue(this, "Activated blockheight") + (8 * 1440)))))
409368 else {
410369 let claimInvB = invoke(Address(poolBBB), "claimIndexRewards", nil, nil)
411370 if ((claimInvB == claimInvB))
412371 then {
413372 let claimInvW = invoke(Address(poolWhirl), "claimIndexRewards", nil, nil)
414373 if ((claimInvW == claimInvW))
415374 then {
416375 let swhirl = invoke(Address(poolBBB), "swap", [burnxtnString, 0], [AttachedPayment(whirlpool, assetBalance(this, whirlpool))])
417376 if ((swhirl == swhirl))
418377 then {
419378 let spuzzle = invoke(Address(poolBBB), "swap", [burnxtnString, 0], [AttachedPayment(puzzle, assetBalance(this, puzzle))])
420379 if ((spuzzle == spuzzle))
421380 then {
422381 let srome = invoke(Address(poolBBB), "swap", [burnxtnString, 0], [AttachedPayment(rome, assetBalance(this, rome))])
423382 if ((srome == srome))
424383 then nil
425384 else throw("Strict value is not equal to itself.")
426385 }
427386 else throw("Strict value is not equal to itself.")
428387 }
429388 else throw("Strict value is not equal to itself.")
430389 }
431390 else throw("Strict value is not equal to itself.")
432391 }
433392 else throw("Strict value is not equal to itself.")
434393 }
435394
436395
437396
438397 @Callable(i)
439398 func withdraw () = if ((i.caller != Address(base58'3P4AdC9J6MzTEi2LL9xgQN8EimMnbk4d6Nt')))
440399 then throw("no access")
441400 else {
442401 let withdraw = invoke(Address(base58'3PCbvPVQfSvVu88ip8Fm5YjwJhjEYk1Txhk'), "withdrawVestedAllUSDN", [false, true], nil)
443402 if ((withdraw == withdraw))
444403 then nil
445404 else throw("Strict value is not equal to itself.")
446405 }
447406
448407
449408
450409 @Callable(i)
451410 func importVVXTNLP () = if ((i.caller != Address(base58'3P4AdC9J6MzTEi2LL9xgQN8EimMnbk4d6Nt')))
452411 then throw("no access")
453412 else {
454413 let import = invoke(Address(base58'3PCbvPVQfSvVu88ip8Fm5YjwJhjEYk1Txhk'), "importLP", nil, [AttachedPayment(vvxtnlp, assetBalance(this, vvxtnlp))])
455414 if ((import == import))
456415 then nil
457416 else throw("Strict value is not equal to itself.")
458417 }
459418
460419
461420
462421 @Callable(i)
463422 func burnXTN () = if ((i.caller != this))
464423 then throw("access only by project owner")
465424 else {
466- let xtnburnamount = if ((assetBalance(this, xtnId) >= (100 * d6)))
467- then (100 * d6)
468- else assetBalance(this, xtnId)
425+ let xtnburnamount = d6
469426 let xtnBurn = Burn(xtnId, xtnburnamount)
470427 [xtnBurn, IntegerEntry("XTN total burned", (getIntegerValue(this, "XTN total burned") + xtnburnamount)), IntegerEntry("XTN supply", match assetInfo(xtnId) {
471428 case asset: Asset =>
472429 ((asset.quantity - assetBalance(Address(base58'3PC9BfRwJWWiw9AREE2B3eWzCks3CYtg4yo'), xtnId)) / d6)
473430 case _ =>
474431 throw("Can't find asset")
475432 })]
476433 }
477434
478435

github/deemru/w8io/6500d08 
46.01 ms