tx · AN5TD7JJW2AcHcCQAkeTMG1jeMxXvyBsod7zqmfkna8e

3NBPx1Fciu3JQNEGZ21jSnTdutLNGGBUSXh:  -0.01300000 Waves

2024.09.14 17:28 [3283448] smart account 3NBPx1Fciu3JQNEGZ21jSnTdutLNGGBUSXh > SELF 0.00000000 Waves

{ "type": 13, "id": "AN5TD7JJW2AcHcCQAkeTMG1jeMxXvyBsod7zqmfkna8e", "fee": 1300000, "feeAssetId": null, "timestamp": 1726324134079, "version": 2, "chainId": 84, "sender": "3NBPx1Fciu3JQNEGZ21jSnTdutLNGGBUSXh", "senderPublicKey": "3QtfC1XbLZXdeawMDeSERy9vvjUmj1XYd2GFmrvx7pWQ", "proofs": [ "5eEEevEHLk4xEHrhKt7KgH3PYJqV5vTxmHcKp8V3hwK4gLe3GMouNtstgFyj2UYXkavKPg8qeuZgAFMsTLCjmQjZ" ], "script": "base64:BgIjCAISBAoCCAgSBAoCCAESAwoBBBIDCgEBEgASABIAEgMKAQgsAANTRVACAl9fAAVNVUxUOACAwtcvABRXTEcyQUNSRVNfTVVMVElQTElFUgDIAQAFY2hhaW4JAMkBAgkAygECCAUEdGhpcwVieXRlcwABAAEAFmRlZmF1bHRSZXN0MkFkZHJlc3NTdHIEByRtYXRjaDAFBWNoYWluAwkAAAIBAVcFByRtYXRjaDACIzNQRndZdGE4YmlFejMxenBlRmU1REpLOHdFNXRyU3BRVkY4AwkAAAIBAVQFByRtYXRjaDACIzNON1V1WWFyNjI2NFA1OEZCaFZXS1BRQWg0WXVhMmhnbmd2CQACAQINVW5rbm93biBjaGFpbgAVb2xkU3Rha2luZ0NvbnRyYWN0U3RyBAckbWF0Y2gwBQVjaGFpbgMJAAACAQFXBQckbWF0Y2gwAiMzUExuY1h0UzFVODNENmNRYkZEM0g4ckJIUExnenhTRktaMQMJAAACAQFUBQckbWF0Y2gwAiMzTkRDeUJHNXE4NUp1YVJpaWdVZUV0YWlueWpDUVQzWHBabQkAAgECDVVua25vd24gY2hhaW4BD2dldFN0cmluZ09yRmFpbAIHYWRkcmVzcwNrZXkJARN2YWx1ZU9yRXJyb3JNZXNzYWdlAgkAnQgCBQdhZGRyZXNzBQNrZXkJALkJAgkAzAgCAgptYW5kYXRvcnkgCQDMCAIJAKUIAQUHYWRkcmVzcwkAzAgCAgEuCQDMCAIFA2tleQkAzAgCAg8gaXMgbm90IGRlZmluZWQFA25pbAIAABBJZHhDZmdBY3JlczJEYXBwAAEADUlkeENmZ1dsZ0RhcHAAAgEKa2V5UmVzdENmZwACDiVzX19yZXN0Q29uZmlnAQ9rZXlSZXN0MkFkZHJlc3MAAg0lc19fcmVzdDJBZGRyARFyZWFkUmVzdENmZ09yRmFpbAEEcmVzdAkAvAkCCQEPZ2V0U3RyaW5nT3JGYWlsAgUEcmVzdAkBCmtleVJlc3RDZmcABQNTRVABGGdldENvbnRyYWN0QWRkcmVzc09yRmFpbAIIcmVzdDJDZmcDaWR4CQETdmFsdWVPckVycm9yTWVzc2FnZQIJAKYIAQkAkQMCBQhyZXN0MkNmZwUDaWR4CQCsAgICKlJlc3QgY2ZnIGRvZXNuJ3QgY29udGFpbiBhZGRyZXNzIGF0IGluZGV4IAkApAMBBQNpZHgADXJlc3QyQ29udHJhY3QJARFAZXh0ck5hdGl2ZSgxMDYyKQEJAQt2YWx1ZU9yRWxzZQIJAJ0IAgUEdGhpcwkBD2tleVJlc3QyQWRkcmVzcwAFFmRlZmF1bHRSZXN0MkFkZHJlc3NTdHIACHJlc3QyQ2ZnCQERcmVhZFJlc3RDZmdPckZhaWwBBQ1yZXN0MkNvbnRyYWN0AA5hY3JlczJDb250cmFjdAkBGGdldENvbnRyYWN0QWRkcmVzc09yRmFpbAIFCHJlc3QyQ2ZnBRBJZHhDZmdBY3JlczJEYXBwAAt3bGdDb250cmFjdAkBGGdldENvbnRyYWN0QWRkcmVzc09yRmFpbAIFCHJlc3QyQ2ZnBQ1JZHhDZmdXbGdEYXBwABNvbGRBY3Jlc0NvbnRyYWN0S2V5AhBvbGRBY3Jlc0NvbnRyYWN0AQprZXlCbG9ja2VkAAIQY29udHJhY3RzQmxvY2tlZAERa2V5TGFzdFR4SWRCeVVzZXIBBGFkZHIJAKwCAgIPbGFzdFR4SWRCeVVzZXJfBQRhZGRyAA13bGdBc3NldElkS2V5Agt3bGdfYXNzZXRJZAAKd2xnQXNzZXRJZAkBE3ZhbHVlT3JFcnJvck1lc3NhZ2UCCQCcCAIFC3dsZ0NvbnRyYWN0BQ13bGdBc3NldElkS2V5AhhXTEdPTEQgaXMgbm90IGlzc3VlZCB5ZXQAFGFjcmVzSXNzdWVkQW1vdW50S2V5AhFhY3Jlc0lzc3VlZEFtb3VudAAPYWNyZXNBc3NldElkS2V5AgxhY3Jlc0Fzc2V0SWQADGFjcmVzQXNzZXRJZAkBE3ZhbHVlT3JFcnJvck1lc3NhZ2UCCQCcCAIFDmFjcmVzMkNvbnRyYWN0BQ9hY3Jlc0Fzc2V0SWRLZXkCF0FDUkVTIGlzIG5vdCBpc3N1ZWQgeWV0ARhrZXlBY3Jlc1N0YWtlZFRpbWVCeVVzZXIBBGFkZHIJAKwCAgIWYWNyZXNTdGFrZWRUaW1lQnlVc2VyXwUEYWRkcgEVa2V5U3Rha2VkTGFuZHNCeU93bmVyAQlvd25lckFkZHIJAKwCAgITc3Rha2VkTGFuZHNCeU93bmVyXwUJb3duZXJBZGRyARRrZXlTdGFrZWREdWNrQnlPd25lcgEJ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Y3Rpb25JZAUDbmlsARJzdGFrZUFjcmVzSW50ZXJuYWwCA2FtdAdhZGRyZXNzBAl3bGdSZXN1bHQJAPwHBAULd2xnQ29udHJhY3QCEm9uU3Rha2VVbnN0YWtlTGFuZAkAzAgCBQdhZGRyZXNzBQNuaWwFA25pbAMJAAACBQl3bGdSZXN1bHQFCXdsZ1Jlc3VsdAQDbm93CAUJbGFzdEJsb2NrCXRpbWVzdGFtcAQHdGltZUtleQkBGGtleUFjcmVzU3Rha2VkVGltZUJ5VXNlcgEFB2FkZHJlc3MECWFtb3VudEtleQkBF2tleUFjcmVzU3Rha2VkQW10QnlVc2VyAQUHYWRkcmVzcwQObmV3QWNyZXNBbW91bnQJAGQCCQELdmFsdWVPckVsc2UCCQCfCAEFCWFtb3VudEtleQAABQNhbXQECG9sZFRvdGFsCQELdmFsdWVPckVsc2UCCQCfCAEFEmFjcmVzU3Rha2RUb3RhbEtleQAABAl1c2VyRnBLZXkJARVrZXlGYXJtaW5nUG93ZXJCeVVzZXIBBQdhZGRyZXNzBAVvbGRGcAkBC3ZhbHVlT3JFbHNlAgkAnwgBBQl1c2VyRnBLZXkAAAQFbmV3RnAJARZnZXRGYXJtaW5nUG93ZXJCeUFjcmVzAQUObmV3QWNyZXNBbW91bnQECm9sZFRvdGFsRnAJAQt2YWx1ZU9yRWxzZQIJAJ8IAQUUdG90YWxGYXJtaW5nUG93ZXJLZXkAAAkAlAoCCQDMCAIJAQxJbnRlZ2VyRW50cnkCBQd0aW1lS2V5CAUJbGFzdEJsb2NrCXRpbWVzdGFtcAkAzAgCCQEMSW50ZWdlckVudHJ5AgUJYW1vdW50S2V5BQ5uZXdBY3Jlc0Ftb3VudAkAzAgCCQEMSW50ZWdlckVudHJ5AgUSYWNyZXNTdGFrZFRvdGFsS2V5CQBkAgUIb2xkVG90YWwFA2FtdAkAzAgCCQEMSW50ZWdlckVudHJ5AgUJdXNlckZwS2V5BQVuZXdGcAkAzAgCCQEMSW50ZWdlckVudHJ5AgUUdG90YWxGYXJtaW5nUG93ZXJLZXkJAGQCCQBlAgUKb2xkVG90YWxGcAUFb2xkRnAFBW5ld0ZwBQNuaWwFCXdsZ1Jlc3VsdAkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLggBaQENY29uc3RydWN0b3JWMQIJcmVzdDJBZGRyDm9sZEFjckNvbnRyYWN0AwkBAiE9AggFAWkGY2FsbGVyBQR0aGlzCQACAQIRUGVybWlzc2lvbiBkZW5pZWQEDm9sZEFjckNvbnRBZGRyCQERQGV4dHJOYXRpdmUoMTA2MikBBQ5vbGRBY3JDb250cmFjdAkAzAgCCQEMSW50ZWdlckVudHJ5AgUUYWNyZXNJc3N1ZWRBbW91bnRLZXkJARFAZXh0ck5hdGl2ZSgxMDUwKQIFDm9sZEFjckNvbnRBZGRyBRRhY3Jlc0lzc3VlZEFtb3VudEtleQkAzAgCCQELQmluYXJ5RW50cnkCBQ9hY3Jlc0Fzc2V0SWRLZXkJARFAZXh0ck5hdGl2ZSgxMDUyKQIFDm9sZEFjckNvbnRBZGRyBQ9hY3Jlc0Fzc2V0SWRLZXkJAMwIAgkBC1N0cmluZ0VudHJ5AgkBD2tleVJlc3QyQWRkcmVzcwAFCXJlc3QyQWRkcgkAzAgCCQELU3RyaW5nRW50cnkCBRNvbGRBY3Jlc0NvbnRyYWN0S2V5BQ5vbGRBY3JDb250cmFjdAUDbmlsAWkBC3NhdmVJbnRlZ2VyAgNrZXkGYW1vdW50AwkBAiE9AggFAWkGY2FsbGVyBQR0aGlzCQACAQIgc2F2ZUludGVnZXIgaXMgbm90IHB1YmxpYyBtZXRob2QJAMwIAgkBDEludGVnZXJFbnRyeQIFA2tleQUGYW1vdW50BQNuaWwBaQEKc2V0QmxvY2tlZAEJaXNCbG9ja2VkAwkBAiE9AggFAWkGY2FsbGVyBQR0aGlzCQACAQIRcGVybWlzc2lvbiBkZW5pZWQJAMwIAgkBDEJvb2xlYW5FbnRyeQIJAQprZXlCbG9ja2VkAAUJaXNCbG9ja2VkBQNuaWwBaQEMdW5zdGFrZUFjcmVzAQZhbW91bnQEDXByb2xvZ0FjdGlvbnMJAQZwcm9sb2cBBQFpAwkAZwIAAAUGYW1vdW50CQACAQIZQW1vdW50IHNob3VsZCBiZSBwb3NpdGl2ZQQHYWRkcmVzcwkApQgBCAUBaQZjYWxsZXIDCQECIT0CCQCQAwEIBQFpCHBheW1lbnRzAAAJAAIBAhRObyBwYXltZW50cyByZXF1aXJlZAQHdGltZUtleQkBGGtleUFjcmVzU3Rha2VkVGltZUJ5VXNlcgEFB2FkZHJlc3MECWFtb3VudEtleQkBF2tleUFjcmVzU3Rha2VkQW10QnlVc2VyAQUHYWRkcmVzcwQOb2xkQWNyZXNBbW91bnQJAQt2YWx1ZU9yRWxzZQIJAJ8IAQUJYW1vdW50S2V5AAADCQBmAgUGYW1vdW50BQ5vbGRBY3Jlc0Ftb3VudAkAAgEJAKwCAgkArAICCQCsAgICDllvdSBoYXZlIG9ubHkgCQEKZml4ZWRQb2ludAIFDm9sZEFjcmVzQW1vdW50AAgCICBBQ1JFUyBzdGFrZWQsIHRyaWVkIHRvIHVuc3Rha2UgCQEKZml4ZWRQb2ludAIFBmFtb3VudAAIBAhvbGRUb3RhbAkBC3ZhbHVlT3JFbHNlAgkAnwgBBRJhY3Jlc1N0YWtkVG90YWxLZXkAAAQJd2xnUmVzdWx0CQD8BwQFC3dsZ0NvbnRyYWN0AhJvblN0YWtlVW5zdGFrZUxhbmQJAMwIAgUHYWRkcmVzcwUDbmlsBQNuaWwEDm5ld0FjcmVzQW1vdW50CQBlAgUOb2xkQWNyZXNBbW91bnQFBmFtb3VudAQJdXNlckZwS2V5CQEVa2V5RmFybWluZ1Bvd2VyQnlVc2VyAQUHYWRkcmVzcwQFb2xkRnAJAQt2YWx1ZU9yRWxzZQIJAJ8IAQUJdXNlckZwS2V5AAAEBW5ld0ZwCQEWZ2V0RmFybWluZ1Bvd2VyQnlBY3JlcwEFDm5ld0FjcmVzQW1vdW50BApvbGRUb3RhbEZwCQELdmFsdWVPckVsc2UCCQCfCAEFFHRvdGFsRmFybWluZ1Bvd2VyS2V5AAAJAJQKAgkAzggCCQDMCAIJAQxJbnRlZ2VyRW50cnkCBQd0aW1lS2V5CAUJbGFzdEJsb2NrCXRpbWVzdGFtcAkAzAgCCQEMSW50ZWdlckVudHJ5AgUJYW1vdW50S2V5CQBlAgUOb2xkQWNyZXNBbW91bnQFBmFtb3VudAkAzAgCCQEMSW50ZWdlckVudHJ5AgUSYWNyZXNTdGFrZFRvdGFsS2V5CQBlAgUIb2xkVG90YWwFBmFtb3VudAkAzAgCCQEMSW50ZWdlckVudHJ5AgUJdXNlckZwS2V5BQVuZXdGcAkAzAgCCQEMSW50ZWdlckVudHJ5AgUUdG90YWxGYXJtaW5nUG93ZXJLZXkJAGQCCQBlAgUKb2xkVG90YWxGcAUFb2xkRnAFBW5ld0ZwCQDMCAIJAQ5TY3JpcHRUcmFuc2ZlcgMIBQFpBmNhbGxlcgUGYW1vdW50BQxhY3Jlc0Fzc2V0SWQFA25pbAUNcHJvbG9nQWN0aW9ucwUJd2xnUmVzdWx0AWkBCnN0YWtlQWNyZXMABA1wcm9sb2dBY3Rpb25zCQEGcHJvbG9nAQUBaQQHYWRkcmVzcwkApQgBCAUBaQZjYWxsZXIDCQECIT0CCQCQAwEIBQFpCHBheW1lbnRzAAEJAAIBAiJleGFjdGx5IDEgcGF5bWVudCBtdXN0IGJlIGF0dGFjaGVkBANwbXQJAJEDAggFAWkIcGF5bWVudHMAAAQDYW10CAUDcG10BmFtb3VudAMDCQEBIQEJAQlpc0RlZmluZWQBCAUDcG10B2Fzc2V0SWQGCQECIT0CCQEFdmFsdWUBCAUDcG10B2Fzc2V0SWQFDGFjcmVzQXNzZXRJZAkAAgECFEFDUkVTIHBheW1lbnRzIG9ubHkhBAskdDAzODM1MzkwMQkBEnN0YWtlQWNyZXNJbnRlcm5hbAIFA2FtdAUHYWRkcmVzcwQHYWN0aW9ucwgFCyR0MDM4MzUzOTAxAl8xBBB3bGdDbGFpbWVkQW1vdW50CAULJHQwMzgzNTM5MDECXzIJAJQKAgkAzggCBQdhY3Rpb25zBQ1wcm9sb2dBY3Rpb25zBRB3bGdDbGFpbWVkQW1vdW50AWkBCGJ1eUFjcmVzAAQNcHJvbG9nQWN0aW9ucwkBBnByb2xvZwEFAWkEB2FkZHJlc3MJAKUIAQgFAWkGY2FsbGVyAwkBAiE9AgkAkAMBCAUBaQhwYXltZW50cwABCQACAQIiZXhhY3RseSAxIHBheW1lbnQgbXVzdCBiZSBhdHRhY2hlZAQDcG10CQCRAwIIBQFpCHBheW1lbnRzAAAEA2FtdAgFA3BtdAZhbW91bnQDAwkBASEBCQEJaXNEZWZpbmVkAQgFA3BtdAdhc3NldElkBgkBAiE9AgkBBXZhbHVlAQgFA3BtdAdhc3NldElkBQp3bGdBc3NldElkCQACAQIVV0xHT0xEIHBheW1lbnRzIG9ubHkhAwkAZgIFBU1VTFQ4BQNhbXQJAAIBCQCsAgIJAKwCAgIWTWluIHBheW1lbnQgc2hvdWxkIGJlIAkBCmZpeGVkUG9pbnQCBQVNVUxUOAAIAgcgV0xHT0xEBAthY3Jlc0Ftb3VudAkAaAIFA2FtdAUUV0xHMkFDUkVTX01VTFRJUExJRVIED29sZEFjcmVzQWRkcmVzcwkBEUBleHRyTmF0aXZlKDEwNjIpAQkBEUBleHRyTmF0aXZlKDEwNTgpAQUTb2xkQWNyZXNDb250cmFjdEtleQQDcmVxCQD8BwQFD29sZEFjcmVzQWRkcmVzcwIUcmVxdWVzdEFjcmVzQ2FsbGJhY2sJAMwIAgULYWNyZXNBbW91bnQFA25pbAUDbmlsAwkAAAIFA3JlcQUDcmVxBAl3bGdSZW1haW4JAQVhc0ludAEJAPwHBAUOYWNyZXMyQ29udHJhY3QCCmJ1cm5XbGdvbGQFA25pbAkAzAgCCQEPQXR0YWNoZWRQYXltZW50AgUKd2xnQXNzZXRJZAUDYW10BQNuaWwJAJQKAgkAzggCCQDMCAIJAQ5TY3JpcHRUcmFuc2ZlcgMIBQFpBmNhbGxlcgULYWNyZXNBbW91bnQFDGFjcmVzQXNzZXRJZAUDbmlsBQ1wcm9sb2dBY3Rpb25zBQl3bGdSZW1haW4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4BaQEQY29udmVydE9sZFN0YWtlcwAEB2FkZHJlc3MJAKUIAQgFAWkGY2FsbGVyAwkBAiE9AgkAkAMBCAUBaQhwYXltZW50cwAACQACAQIUTm8gcGF5bWVudHMgcmVxdWlyZWQED29sZEFjcmVzQWRkcmVzcwkBEUBleHRyTmF0aXZlKDEwNjIpAQkBEUBleHRyTmF0aXZlKDEwNTgpAQUTb2xkQWNyZXNDb250cmFjdEtleQQGYW1vdW50CQELdmFsdWVPckVsc2UCCQCaCAIFD29sZEFjcmVzQWRkcmVzcwkBF2tleUFjcmVzU3Rha2VkQW10QnlVc2VyAQUHYWRkcmVzcwAABAlnb3RBY3JlczADCQBmAgUGYW1vdW50AAAJAQxhc1R1cGxlMkludHMBCQD8BwQFD29sZEFjcmVzQWRkcmVzcwIUdW5zdGFrZUFjcmVzQ2FsbGJhY2sJAMwIAgUGYW1vdW50CQDMCAIFB2FkZHJlc3MFA25pbAUDbmlsCQCUCgIAAAAABBFvbGRTdGFr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bGl6ZUNhbGxiYWNrCQDMCAIFB2FkZHJlc3MFA25pbAUDbmlsAwkAAAIFCGZpbmFsaXplBQhmaW5hbGl6ZQQDcmVxCQD8BwQFD29sZEFjcmVzQWRkcmVzcwIUcmVxdWVzdEFjcmVzQ2FsbGJhY2sJAMwIAgkAZAIJAGQCCQBkAggFAnJyAl8xCAUCcnICXzIIBQJycgJfMwgFAnJyAl80BQNuaWwFA25pbAMJAAACBQNyZXEFA3JlcQQFaXNzdWUJAMIIBQIIRlBPV0VSMTACKUZhcm1pbmdQb3dlciArMTAlIE5GVCBmb3IgV2F2ZXNMYW5kcyBnYW1lAAEAAAcJAJcKBQgFAnJyAl8xCAUCcnICXzIIBQJycgJfMwgFAnJyAl80CQDMCAIFBWlzc3VlCQDMCAIJAQ5TY3JpcHRUcmFuc2ZlcgMIBQFpBmNhbGxlcgABCQC4CAEFBWlzc3VlBQNuaWwJAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAJcKBQAAAAAAAAAABQNuaWwEC2R1Y2tBc3NldElkCQELdmFsdWVPckVsc2UCCQCdCAIFEW9sZFN0YWtpbmdBZGRyZXNzCQEUa2V5U3Rha2VkRHVja0J5T3duZXIBBQdhZGRyZXNzAgAECmR1Y2tSZXN1bHQDCQECIT0CBQtkdWNrQXNzZXRJZAIACQEMYXNUdXBsZTNJbnRzAQkA/AcEBRFvbGRTdGFraW5nQWRkcmVzcwITdW5zdGFrZUR1Y2tDYWxsYmFjawkAzAgCBQtkdWNrQXNzZXRJZAkAzAgCBQdhZGRyZXNzBQNuaWwFA25pbAkAlQoDAAAAAAAABAF4CQESc3Rha2VBY3Jlc0ludGVybmFsAgkAZAIJAGQCCQBkAgkAZAIJAGQCCQBkAgkAZAIIBQlnb3RBY3JlczACXzEIBQtsYW5kc1Jlc3VsdAJfMQgFC2xhbmRzUmVzdWx0Al8yCAULbGFuZHNSZXN1bHQCXzMIBQtsYW5kc1Jlc3VsdAJfNAgFCmR1Y2tSZXN1bHQCXzEIBQpkdWNrUmVzdWx0Al8yCAUKZHVja1Jlc3VsdAJfMwUHYWRkcmVzcwkAlAoCCQDOCAIIBQts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", "height": 3283448, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: AwAPsXvM7a85MJqvyhaKeQHETwBc2HPFhuCgSFMBFdyU Next: 9KY3Ep8ykqMowVSs6CdZcPxHKzUfiBWMjnTqubKPi2jv Diff:
OldNewDifferences
307307 then throw((("Min payment should be " + S(b, 8)) + " WLGOLD"))
308308 else {
309309 let aQ = (au * c)
310- let aR = J(invoke(u, "burnWlgold", nil, [AttachedPayment(B, au)]))
311- $Tuple2(([ScriptTransfer(as.caller, aQ, E)] ++ aK), aR)
310+ let aR = addressFromStringValue(getStringValue(w))
311+ let aS = invoke(aR, "requestAcresCallback", [aQ], nil)
312+ if ((aS == aS))
313+ then {
314+ let aT = J(invoke(u, "burnWlgold", nil, [AttachedPayment(B, au)]))
315+ $Tuple2(([ScriptTransfer(as.caller, aQ, E)] ++ aK), aT)
316+ }
317+ else throw("Strict value is not equal to itself.")
312318 }
313319 }
314320 }
321327 if ((size(as.payments) != 0))
322328 then throw("No payments required")
323329 else {
324- let aS = addressFromStringValue(getStringValue(w))
325- let aI = valueOrElse(getInteger(aS, Y(i)), 0)
326- let aT = if ((aI > 0))
327- then R(invoke(aS, "unstakeAcresCallback", [aI, i], nil))
330+ let aR = addressFromStringValue(getStringValue(w))
331+ let aI = valueOrElse(getInteger(aR, Y(i)), 0)
332+ let aU = if ((aI > 0))
333+ then R(invoke(aR, "unstakeAcresCallback", [aI, i], nil))
328334 else $Tuple2(0, 0)
329- let aU = addressFromStringValue(g)
330- let aV = getString(aU, G(i))
331- let aW = if (isDefined(aV))
335+ let aV = addressFromStringValue(g)
336+ let aW = getString(aV, G(i))
337+ let aX = if (isDefined(aW))
332338 then {
333- let aX = split_51C(value(aV), "_")
334- func aY (ah,aZ) = if ((aZ == ""))
339+ let aY = split_51C(value(aW), "_")
340+ func aZ (ah,ba) = if ((ba == ""))
335341 then throw("landAssetId is required")
336342 else {
337- let ba = M(invoke(aU, "unstakeLandCallback", [aZ, i], nil))
338- $Tuple4((ah._1 + ba._1), (ah._2 + ba._2), (ah._3 + ba._3), (ah._4 + ba._4))
343+ let bb = M(invoke(aV, "unstakeLandCallback", [ba, i], nil))
344+ $Tuple4((ah._1 + bb._1), (ah._2 + bb._2), (ah._3 + bb._3), (ah._4 + bb._4))
339345 }
340346
341- let bb = {
342- let aj = aX
347+ let bc = {
348+ let aj = aY
343349 let ak = size(aj)
344350 let al = $Tuple4(0, 0, 0, 0)
345351 func am (an,ao) = if ((ao >= ak))
346352 then an
347- else aY(an, aj[ao])
353+ else aZ(an, aj[ao])
348354
349355 func ap (an,ao) = if ((ao >= ak))
350356 then an
352358
353359 ap(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(al, 0), 1), 2), 3), 4), 5), 6), 7), 8), 9), 10), 11), 12), 13), 14), 15), 16), 17), 18), 19), 20), 21), 22), 23), 24), 25), 26), 27), 28), 29), 30), 31), 32), 33), 34), 35), 36), 37), 38), 39), 40), 41), 42), 43), 44), 45), 46), 47), 48), 49), 50), 51), 52), 53), 54), 55), 56), 57), 58), 59), 60), 61), 62), 63), 64), 65), 66), 67), 68), 69), 70), 71), 72), 73), 74), 75), 76), 77), 78), 79), 80), 81), 82), 83), 84), 85), 86), 87), 88), 89), 90), 91), 92), 93), 94), 95), 96), 97), 98), 99), 100)
354360 }
355- let bc = invoke(aU, "unstakeLandsFinalizeCallback", [i], nil)
356- if ((bc == bc))
361+ let bd = invoke(aV, "unstakeLandsFinalizeCallback", [i], nil)
362+ if ((bd == bd))
357363 then {
358- let bd = invoke(aS, "requestAcresCallback", [(((bb._1 + bb._2) + bb._3) + bb._4)], nil)
359- if ((bd == bd))
364+ let aS = invoke(aR, "requestAcresCallback", [(((bc._1 + bc._2) + bc._3) + bc._4)], nil)
365+ if ((aS == aS))
360366 then {
361367 let be = Issue("FPOWER10", "FarmingPower +10% NFT for WavesLands game", 1, 0, false)
362- $Tuple5(bb._1, bb._2, bb._3, bb._4, [be, ScriptTransfer(as.caller, 1, calculateAssetId(be))])
368+ $Tuple5(bc._1, bc._2, bc._3, bc._4, [be, ScriptTransfer(as.caller, 1, calculateAssetId(be))])
363369 }
364370 else throw("Strict value is not equal to itself.")
365371 }
366372 else throw("Strict value is not equal to itself.")
367373 }
368374 else $Tuple5(0, 0, 0, 0, nil)
369- let bf = valueOrElse(getString(aU, I(i)), "")
375+ let bf = valueOrElse(getString(aV, I(i)), "")
370376 let bg = if ((bf != ""))
371- then Q(invoke(aU, "unstakeDuckCallback", [bf, i], nil))
377+ then Q(invoke(aV, "unstakeDuckCallback", [bf, i], nil))
372378 else $Tuple3(0, 0, 0)
373- let bh = at((((((((aT._1 + aW._1) + aW._2) + aW._3) + aW._4) + bg._1) + bg._2) + bg._3), i)
374- $Tuple2((aW._5 ++ bh._1), bh._2)
379+ let bh = at((((((((aU._1 + aX._1) + aX._2) + aX._3) + aX._4) + bg._1) + bg._2) + bg._3), i)
380+ $Tuple2((aX._5 ++ bh._1), bh._2)
375381 }
376382 }
377383
379385
380386 @Callable(as)
381387 func unstakeLandsREADONLY (i) = {
382- let aU = addressFromStringValue(g)
383- let aV = getString(aU, G(i))
384- let aW = if (isDefined(aV))
388+ let aV = addressFromStringValue(g)
389+ let aW = getString(aV, G(i))
390+ let aX = if (isDefined(aW))
385391 then {
386- let aX = split_51C(value(aV), "_")
387- func aY (ah,aZ) = if ((aZ == ""))
392+ let aY = split_51C(value(aW), "_")
393+ func aZ (ah,ba) = if ((ba == ""))
388394 then throw("landAssetId is required")
389395 else {
390- let ba = P(invoke(aU, "unstakeLandREADONLY", [aZ, i], nil))
391- $Tuple4((ah._1 + ba._1), (ah._2 + ba._2), (ah._3 + ba._3), (ah._4 + ba._4))
396+ let bb = P(invoke(aV, "unstakeLandREADONLY", [ba, i], nil))
397+ $Tuple4((ah._1 + bb._1), (ah._2 + bb._2), (ah._3 + bb._3), (ah._4 + bb._4))
392398 }
393399
394- let aj = aX
400+ let aj = aY
395401 let ak = size(aj)
396402 let al = $Tuple4(0, 0, 0, 0)
397403 func am (an,ao) = if ((ao >= ak))
398404 then an
399- else aY(an, aj[ao])
405+ else aZ(an, aj[ao])
400406
401407 func ap (an,ao) = if ((ao >= ak))
402408 then an
405411 ap(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(al, 0), 1), 2), 3), 4), 5), 6), 7), 8), 9), 10), 11), 12), 13), 14), 15), 16), 17), 18), 19), 20), 21), 22), 23), 24), 25), 26), 27), 28), 29), 30), 31), 32), 33), 34), 35), 36), 37), 38), 39), 40), 41), 42), 43), 44), 45), 46), 47), 48), 49), 50), 51), 52), 53), 54), 55), 56), 57), 58), 59), 60), 61), 62), 63), 64), 65), 66), 67), 68), 69), 70), 71), 72), 73), 74), 75), 76), 77), 78), 79), 80), 81), 82), 83), 84), 85), 86), 87), 88), 89), 90), 91), 92), 93), 94), 95), 96), 97), 98), 99), 100)
406412 }
407413 else $Tuple4(0, 0, 0, 0)
408- $Tuple2(nil, aW)
414+ $Tuple2(nil, aX)
409415 }
410416
411417
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 6 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let a = "__"
55
66 let b = 100000000
77
88 let c = 200
99
1010 let d = take(drop(this.bytes, 1), 1)
1111
1212 let e = {
1313 let f = d
1414 if ((base58'2W' == f))
1515 then "3PFwYta8biEz31zpeFe5DJK8wE5trSpQVF8"
1616 else if ((base58'2T' == f))
1717 then "3N7UuYar6264P58FBhVWKPQAh4Yua2hgngv"
1818 else throw("Unknown chain")
1919 }
2020
2121 let g = {
2222 let f = d
2323 if ((base58'2W' == f))
2424 then "3PLncXtS1U83D6cQbFD3H8rBHPLgzxSFKZ1"
2525 else if ((base58'2T' == f))
2626 then "3NDCyBG5q85JuaRiigUeEtainyjCQT3XpZm"
2727 else throw("Unknown chain")
2828 }
2929
3030 func h (i,j) = valueOrErrorMessage(getString(i, j), makeString(["mandatory ", toString(i), ".", j, " is not defined"], ""))
3131
3232
3333 let k = 1
3434
3535 let l = 2
3636
3737 func m () = "%s__restConfig"
3838
3939
4040 func n () = "%s__rest2Addr"
4141
4242
4343 func o (p) = split_4C(h(p, m()), a)
4444
4545
4646 func q (r,s) = valueOrErrorMessage(addressFromString(r[s]), ("Rest cfg doesn't contain address at index " + toString(s)))
4747
4848
4949 let t = addressFromStringValue(valueOrElse(getString(this, n()), e))
5050
5151 let r = o(t)
5252
5353 let u = q(r, k)
5454
5555 let v = q(r, l)
5656
5757 let w = "oldAcresContract"
5858
5959 func x () = "contractsBlocked"
6060
6161
6262 func y (z) = ("lastTxIdByUser_" + z)
6363
6464
6565 let A = "wlg_assetId"
6666
6767 let B = valueOrErrorMessage(getBinary(v, A), "WLGOLD is not issued yet")
6868
6969 let C = "acresIssuedAmount"
7070
7171 let D = "acresAssetId"
7272
7373 let E = valueOrErrorMessage(getBinary(u, D), "ACRES is not issued yet")
7474
7575 func F (z) = ("acresStakedTimeByUser_" + z)
7676
7777
7878 func G (H) = ("stakedLandsByOwner_" + H)
7979
8080
8181 func I (H) = ("stakedDuckByOwner_" + H)
8282
8383
8484 func J (K) = {
8585 let f = K
8686 if ($isInstanceOf(f, "Int"))
8787 then {
8888 let L = f
8989 L
9090 }
9191 else throw("fail to cast into Int")
9292 }
9393
9494
9595 func M (N) = {
9696 let f = N
9797 if ($isInstanceOf(f, "(Int, Int, Int, Int, Int)"))
9898 then {
9999 let O = f
100100 O
101101 }
102102 else throw("fail to cast into (Int, Int, Int, Int, Int)")
103103 }
104104
105105
106106 func P (N) = {
107107 let f = N
108108 if ($isInstanceOf(f, "(Int, Int, Int, Int)"))
109109 then {
110110 let O = f
111111 O
112112 }
113113 else throw("fail to cast into (Int, Int, Int, Int)")
114114 }
115115
116116
117117 func Q (N) = {
118118 let f = N
119119 if ($isInstanceOf(f, "(Int, Int, Int)"))
120120 then {
121121 let O = f
122122 O
123123 }
124124 else throw("fail to cast into (Int, Int, Int)")
125125 }
126126
127127
128128 func R (N) = {
129129 let f = N
130130 if ($isInstanceOf(f, "(Int, Int)"))
131131 then {
132132 let O = f
133133 O
134134 }
135135 else throw("fail to cast into (Int, Int)")
136136 }
137137
138138
139139 func S (N,T) = {
140140 let U = pow(10, 0, T, 0, 0, DOWN)
141141 let V = toString((N % U))
142142 let W = drop(toString(U), (1 + size(V)))
143143 (((toString((N / U)) + ".") + W) + V)
144144 }
145145
146146
147147 let X = 100000000
148148
149149 func Y (z) = ("acresStakedAmountByUser_" + z)
150150
151151
152152 func Z (z) = ("farmingPowerByUser_" + z)
153153
154154
155155 let aa = "acresStakedAmountTotal"
156156
157157 let ab = "totalFarmingPower"
158158
159159 let ac = [10, 20, 40, 80, 150, 250, 400, 700, 1000]
160160
161161 func ad (ae) = {
162162 let af = (ae / X)
163163 func ag (ah,ai) = if ((ai > af))
164164 then ah
165165 else (ah + 1)
166166
167167 let s = {
168168 let aj = ac
169169 let ak = size(aj)
170170 let al = 0
171171 func am (an,ao) = if ((ao >= ak))
172172 then an
173173 else ag(an, aj[ao])
174174
175175 func ap (an,ao) = if ((ao >= ak))
176176 then an
177177 else throw("List size exceeds 10")
178178
179179 ap(am(am(am(am(am(am(am(am(am(am(al, 0), 1), 2), 3), 4), 5), 6), 7), 8), 9), 10)
180180 }
181181 (s + 1)
182182 }
183183
184184
185185 func aq (ae) = ((ae * 20) * (ad(ae) + 4))
186186
187187
188188 func ar (as) = if (if ((as.originCaller != t))
189189 then valueOrElse(getBoolean(x()), false)
190190 else false)
191191 then throw("Contracts are under maintenance")
192192 else [StringEntry(y(toString(as.originCaller)), toBase58String(as.transactionId))]
193193
194194
195195 func at (au,i) = {
196196 let av = invoke(v, "onStakeUnstakeLand", [i], nil)
197197 if ((av == av))
198198 then {
199199 let aw = lastBlock.timestamp
200200 let ax = F(i)
201201 let ay = Y(i)
202202 let az = (valueOrElse(getInteger(ay), 0) + au)
203203 let aA = valueOrElse(getInteger(aa), 0)
204204 let aB = Z(i)
205205 let aC = valueOrElse(getInteger(aB), 0)
206206 let aD = aq(az)
207207 let aE = valueOrElse(getInteger(ab), 0)
208208 $Tuple2([IntegerEntry(ax, lastBlock.timestamp), IntegerEntry(ay, az), IntegerEntry(aa, (aA + au)), IntegerEntry(aB, aD), IntegerEntry(ab, ((aE - aC) + aD))], av)
209209 }
210210 else throw("Strict value is not equal to itself.")
211211 }
212212
213213
214214 @Callable(as)
215215 func constructorV1 (aF,aG) = if ((as.caller != this))
216216 then throw("Permission denied")
217217 else {
218218 let aH = addressFromStringValue(aG)
219219 [IntegerEntry(C, getIntegerValue(aH, C)), BinaryEntry(D, getBinaryValue(aH, D)), StringEntry(n(), aF), StringEntry(w, aG)]
220220 }
221221
222222
223223
224224 @Callable(as)
225225 func saveInteger (j,aI) = if ((as.caller != this))
226226 then throw("saveInteger is not public method")
227227 else [IntegerEntry(j, aI)]
228228
229229
230230
231231 @Callable(as)
232232 func setBlocked (aJ) = if ((as.caller != this))
233233 then throw("permission denied")
234234 else [BooleanEntry(x(), aJ)]
235235
236236
237237
238238 @Callable(as)
239239 func unstakeAcres (aI) = {
240240 let aK = ar(as)
241241 if ((0 >= aI))
242242 then throw("Amount should be positive")
243243 else {
244244 let i = toString(as.caller)
245245 if ((size(as.payments) != 0))
246246 then throw("No payments required")
247247 else {
248248 let ax = F(i)
249249 let ay = Y(i)
250250 let aL = valueOrElse(getInteger(ay), 0)
251251 if ((aI > aL))
252252 then throw(((("You have only " + S(aL, 8)) + " ACRES staked, tried to unstake ") + S(aI, 8)))
253253 else {
254254 let aA = valueOrElse(getInteger(aa), 0)
255255 let av = invoke(v, "onStakeUnstakeLand", [i], nil)
256256 let az = (aL - aI)
257257 let aB = Z(i)
258258 let aC = valueOrElse(getInteger(aB), 0)
259259 let aD = aq(az)
260260 let aE = valueOrElse(getInteger(ab), 0)
261261 $Tuple2(([IntegerEntry(ax, lastBlock.timestamp), IntegerEntry(ay, (aL - aI)), IntegerEntry(aa, (aA - aI)), IntegerEntry(aB, aD), IntegerEntry(ab, ((aE - aC) + aD)), ScriptTransfer(as.caller, aI, E)] ++ aK), av)
262262 }
263263 }
264264 }
265265 }
266266
267267
268268
269269 @Callable(as)
270270 func stakeAcres () = {
271271 let aK = ar(as)
272272 let i = toString(as.caller)
273273 if ((size(as.payments) != 1))
274274 then throw("exactly 1 payment must be attached")
275275 else {
276276 let aM = as.payments[0]
277277 let au = aM.amount
278278 if (if (!(isDefined(aM.assetId)))
279279 then true
280280 else (value(aM.assetId) != E))
281281 then throw("ACRES payments only!")
282282 else {
283283 let aN = at(au, i)
284284 let aO = aN._1
285285 let aP = aN._2
286286 $Tuple2((aO ++ aK), aP)
287287 }
288288 }
289289 }
290290
291291
292292
293293 @Callable(as)
294294 func buyAcres () = {
295295 let aK = ar(as)
296296 let i = toString(as.caller)
297297 if ((size(as.payments) != 1))
298298 then throw("exactly 1 payment must be attached")
299299 else {
300300 let aM = as.payments[0]
301301 let au = aM.amount
302302 if (if (!(isDefined(aM.assetId)))
303303 then true
304304 else (value(aM.assetId) != B))
305305 then throw("WLGOLD payments only!")
306306 else if ((b > au))
307307 then throw((("Min payment should be " + S(b, 8)) + " WLGOLD"))
308308 else {
309309 let aQ = (au * c)
310- let aR = J(invoke(u, "burnWlgold", nil, [AttachedPayment(B, au)]))
311- $Tuple2(([ScriptTransfer(as.caller, aQ, E)] ++ aK), aR)
310+ let aR = addressFromStringValue(getStringValue(w))
311+ let aS = invoke(aR, "requestAcresCallback", [aQ], nil)
312+ if ((aS == aS))
313+ then {
314+ let aT = J(invoke(u, "burnWlgold", nil, [AttachedPayment(B, au)]))
315+ $Tuple2(([ScriptTransfer(as.caller, aQ, E)] ++ aK), aT)
316+ }
317+ else throw("Strict value is not equal to itself.")
312318 }
313319 }
314320 }
315321
316322
317323
318324 @Callable(as)
319325 func convertOldStakes () = {
320326 let i = toString(as.caller)
321327 if ((size(as.payments) != 0))
322328 then throw("No payments required")
323329 else {
324- let aS = addressFromStringValue(getStringValue(w))
325- let aI = valueOrElse(getInteger(aS, Y(i)), 0)
326- let aT = if ((aI > 0))
327- then R(invoke(aS, "unstakeAcresCallback", [aI, i], nil))
330+ let aR = addressFromStringValue(getStringValue(w))
331+ let aI = valueOrElse(getInteger(aR, Y(i)), 0)
332+ let aU = if ((aI > 0))
333+ then R(invoke(aR, "unstakeAcresCallback", [aI, i], nil))
328334 else $Tuple2(0, 0)
329- let aU = addressFromStringValue(g)
330- let aV = getString(aU, G(i))
331- let aW = if (isDefined(aV))
335+ let aV = addressFromStringValue(g)
336+ let aW = getString(aV, G(i))
337+ let aX = if (isDefined(aW))
332338 then {
333- let aX = split_51C(value(aV), "_")
334- func aY (ah,aZ) = if ((aZ == ""))
339+ let aY = split_51C(value(aW), "_")
340+ func aZ (ah,ba) = if ((ba == ""))
335341 then throw("landAssetId is required")
336342 else {
337- let ba = M(invoke(aU, "unstakeLandCallback", [aZ, i], nil))
338- $Tuple4((ah._1 + ba._1), (ah._2 + ba._2), (ah._3 + ba._3), (ah._4 + ba._4))
343+ let bb = M(invoke(aV, "unstakeLandCallback", [ba, i], nil))
344+ $Tuple4((ah._1 + bb._1), (ah._2 + bb._2), (ah._3 + bb._3), (ah._4 + bb._4))
339345 }
340346
341- let bb = {
342- let aj = aX
347+ let bc = {
348+ let aj = aY
343349 let ak = size(aj)
344350 let al = $Tuple4(0, 0, 0, 0)
345351 func am (an,ao) = if ((ao >= ak))
346352 then an
347- else aY(an, aj[ao])
353+ else aZ(an, aj[ao])
348354
349355 func ap (an,ao) = if ((ao >= ak))
350356 then an
351357 else throw("List size exceeds 100")
352358
353359 ap(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(al, 0), 1), 2), 3), 4), 5), 6), 7), 8), 9), 10), 11), 12), 13), 14), 15), 16), 17), 18), 19), 20), 21), 22), 23), 24), 25), 26), 27), 28), 29), 30), 31), 32), 33), 34), 35), 36), 37), 38), 39), 40), 41), 42), 43), 44), 45), 46), 47), 48), 49), 50), 51), 52), 53), 54), 55), 56), 57), 58), 59), 60), 61), 62), 63), 64), 65), 66), 67), 68), 69), 70), 71), 72), 73), 74), 75), 76), 77), 78), 79), 80), 81), 82), 83), 84), 85), 86), 87), 88), 89), 90), 91), 92), 93), 94), 95), 96), 97), 98), 99), 100)
354360 }
355- let bc = invoke(aU, "unstakeLandsFinalizeCallback", [i], nil)
356- if ((bc == bc))
361+ let bd = invoke(aV, "unstakeLandsFinalizeCallback", [i], nil)
362+ if ((bd == bd))
357363 then {
358- let bd = invoke(aS, "requestAcresCallback", [(((bb._1 + bb._2) + bb._3) + bb._4)], nil)
359- if ((bd == bd))
364+ let aS = invoke(aR, "requestAcresCallback", [(((bc._1 + bc._2) + bc._3) + bc._4)], nil)
365+ if ((aS == aS))
360366 then {
361367 let be = Issue("FPOWER10", "FarmingPower +10% NFT for WavesLands game", 1, 0, false)
362- $Tuple5(bb._1, bb._2, bb._3, bb._4, [be, ScriptTransfer(as.caller, 1, calculateAssetId(be))])
368+ $Tuple5(bc._1, bc._2, bc._3, bc._4, [be, ScriptTransfer(as.caller, 1, calculateAssetId(be))])
363369 }
364370 else throw("Strict value is not equal to itself.")
365371 }
366372 else throw("Strict value is not equal to itself.")
367373 }
368374 else $Tuple5(0, 0, 0, 0, nil)
369- let bf = valueOrElse(getString(aU, I(i)), "")
375+ let bf = valueOrElse(getString(aV, I(i)), "")
370376 let bg = if ((bf != ""))
371- then Q(invoke(aU, "unstakeDuckCallback", [bf, i], nil))
377+ then Q(invoke(aV, "unstakeDuckCallback", [bf, i], nil))
372378 else $Tuple3(0, 0, 0)
373- let bh = at((((((((aT._1 + aW._1) + aW._2) + aW._3) + aW._4) + bg._1) + bg._2) + bg._3), i)
374- $Tuple2((aW._5 ++ bh._1), bh._2)
379+ let bh = at((((((((aU._1 + aX._1) + aX._2) + aX._3) + aX._4) + bg._1) + bg._2) + bg._3), i)
380+ $Tuple2((aX._5 ++ bh._1), bh._2)
375381 }
376382 }
377383
378384
379385
380386 @Callable(as)
381387 func unstakeLandsREADONLY (i) = {
382- let aU = addressFromStringValue(g)
383- let aV = getString(aU, G(i))
384- let aW = if (isDefined(aV))
388+ let aV = addressFromStringValue(g)
389+ let aW = getString(aV, G(i))
390+ let aX = if (isDefined(aW))
385391 then {
386- let aX = split_51C(value(aV), "_")
387- func aY (ah,aZ) = if ((aZ == ""))
392+ let aY = split_51C(value(aW), "_")
393+ func aZ (ah,ba) = if ((ba == ""))
388394 then throw("landAssetId is required")
389395 else {
390- let ba = P(invoke(aU, "unstakeLandREADONLY", [aZ, i], nil))
391- $Tuple4((ah._1 + ba._1), (ah._2 + ba._2), (ah._3 + ba._3), (ah._4 + ba._4))
396+ let bb = P(invoke(aV, "unstakeLandREADONLY", [ba, i], nil))
397+ $Tuple4((ah._1 + bb._1), (ah._2 + bb._2), (ah._3 + bb._3), (ah._4 + bb._4))
392398 }
393399
394- let aj = aX
400+ let aj = aY
395401 let ak = size(aj)
396402 let al = $Tuple4(0, 0, 0, 0)
397403 func am (an,ao) = if ((ao >= ak))
398404 then an
399- else aY(an, aj[ao])
405+ else aZ(an, aj[ao])
400406
401407 func ap (an,ao) = if ((ao >= ak))
402408 then an
403409 else throw("List size exceeds 100")
404410
405411 ap(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(am(al, 0), 1), 2), 3), 4), 5), 6), 7), 8), 9), 10), 11), 12), 13), 14), 15), 16), 17), 18), 19), 20), 21), 22), 23), 24), 25), 26), 27), 28), 29), 30), 31), 32), 33), 34), 35), 36), 37), 38), 39), 40), 41), 42), 43), 44), 45), 46), 47), 48), 49), 50), 51), 52), 53), 54), 55), 56), 57), 58), 59), 60), 61), 62), 63), 64), 65), 66), 67), 68), 69), 70), 71), 72), 73), 74), 75), 76), 77), 78), 79), 80), 81), 82), 83), 84), 85), 86), 87), 88), 89), 90), 91), 92), 93), 94), 95), 96), 97), 98), 99), 100)
406412 }
407413 else $Tuple4(0, 0, 0, 0)
408- $Tuple2(nil, aW)
414+ $Tuple2(nil, aX)
409415 }
410416
411417

github/deemru/w8io/fabc49c 
65.40 ms