tx · bKMiKvRALqamuPfr88KphJwqoLZBNM2XEsRPrBqj5xm

3MumkGGztCKAXpWDqxkddofqXSUbqQkvSJy:  -0.02500000 Waves

2023.07.06 21:11 [2654378] smart account 3MumkGGztCKAXpWDqxkddofqXSUbqQkvSJy > SELF 0.00000000 Waves

{ "type": 13, "id": "bKMiKvRALqamuPfr88KphJwqoLZBNM2XEsRPrBqj5xm", "fee": 2500000, "feeAssetId": null, "timestamp": 1688667074139, "version": 2, "chainId": 84, "sender": "3MumkGGztCKAXpWDqxkddofqXSUbqQkvSJy", "senderPublicKey": "C3PaRKeL8AUKbwUqdniMQtThgcTh5DYHV1777Hkxy7rp", "proofs": [ "3uB7oaxbg9agYi4UrvWrPKdjzCRTNVaGA9ML2VnyFtrTff4WczGXj4DmnqQbQBvKJsSH49eY4xUjnMbA3vP8DEQq" ], "script": "base64:BgJHCAISAwoBGBIDCgEIEgMKAQgSAwoBCBIDCgEIEgMKAQgSAwoBGBIDCgEIEgMKARgSAwoBGBIDCgEYEgMKARgSAwoBCBIAEgBlAAZTQ0FMRTgAgMLXLwAMeHBMZXZlbFNjYWxlAIAZAA94cExldmVsUmVjaXBQb3cAoB8BDGtleUR1Y2tDaGFycwELZHVja0Fzc2V0SWQJAKwCAgIKZHVja0NoYXJzXwULZHVja0Fzc2V0SWQBCWtleUR1Y2tYUAELZHVja0Fzc2V0SWQJAKwCAgIHZHVja1hQXwULZHVja0Fzc2V0SWQBEWtleUR1Y2tGcmVlUG9pbnRzAQtkdWNrQXNzZXRJZAkArAICAg9kdWNrRnJlZVBvaW50c18FC2R1Y2tBc3NldElkAQlrZXlVc2VyWFABBGFkZHIJAKwCAgIHdXNlclhQXwUEYWRkcgERa2V5VXNlckZyZWVQb2ludHMBBGFkZHIJAKwCAgIPdXNlckZyZWVQb2ludHNfBQRhZGRyAQlsZXZlbEJ5WFABAnhwCQBrAwUMeHBMZXZlbFNjYWxlCQBsBgUCeHAAAAUPeHBMZXZlbFJlY2lwUG93AAQABAUERE9XTgUGU0NBTEU4AQltYXhIZWFsdGgBBWxldmVsCQBkAgBkBQVsZXZlbAAKQVJUUFJFU0FMRQIHUFJFU0FMRQAGTlVNUkVTAAYAD0RBSUxZUkVTQllQSUVDRQCA+NIBAAlEQVlNSUxMSVMAgLiZKQAMV0hNVUxUSVBMSUVSAIDIr6AlABBSRVNPVVJDRVBSSUNFTUlOANW1AgANRVNNQVhQQUNLQUdFUwADAAlFU0JVWUNPRUYABAAKRVNTRUxMQ09FRgAKABBwcm9kdWN0aW9uTWF0cml4CQDMCAICEjFfMV8xXzJfMl81XzFfMTBfMAkAzAgCAhMyXzJfMl80XzRfMTBfMV8xMF8wCQDMCAICEzNfM18zXzZfNl8xNV8xXzEwXzAJAMwIAgITMl81XzVfMl83XzVfMl8xMDBfMQkAzAgCAhc0XzEwXzEwXzRfMTRfMTBfMl8xMDBfMQkAzAgCAhc2XzE1XzE1XzZfMjFfMTVfMl8xMDBfMQkAzAgCAhIxXzFfMV8xXzFfOF8xXzEwXzIJAMwIAgITMl8yXzJfMl8yXzE2XzFfMTBfMgkAzAgCAhMzXzNfM18zXzNfMjRfMV8xMF8yCQDMCAICEzlfOV8xXzVfNV8xXzVfMTAwXzMJAMwIAgIXMThfMThfMl8xMF8xMF8yXzVfMTAwXzMJAMwIAgIXMjdfMjdfM18xNV8xNV8zXzVfMTAwXzMJAMwIAgISMl8yXzFfMl8yXzJfMV8xMF80CQDMCAICEjRfNF8yXzRfNF80XzFfMTBfNAkAzAgCAhI2XzZfM182XzZfNl8xXzEwXzQFA25pbAARcmVjaXBlSWR4UGFja3NpemUABwERa2V5TGFzdFR4SWRCeVVzZXIBBGFkZHIJAKwCAgIPbGFzdFR4SWRCeVVzZXJfBQRhZGRyARVrZXlMYW5kQXNzZXRJZFRvT3duZXIBB2Fzc2V0SWQJAKwCAgIJbmZ0T3duZXJfBQdhc3NldElkARprZXlMYW5kQXNzZXRJZFRvQ3VzdG9tTmFtZQEHYXNzZXRJZAkArAICAhhsYW5kQ3VzdG9tTmFtZUJ5QXNzZXRJZF8FB2Fzc2V0SWQBFmtleVN0YWtlZFRpbWVCeUFzc2V0SWQBB2Fzc2V0SWQJAKwCAgILc3Rha2VkVGltZV8FB2Fzc2V0SWQBFmtleUluZnJhTGV2ZWxCeUFzc2V0SWQBB2Fzc2V0SWQJAKwCAgILaW5mcmFMZXZlbF8FB2Fzc2V0SWQBIGtleUxhbmRBcnRTdGF0dXNCeVR5cGVBbmRBc3NldElkAgR0eXBlB2Fzc2V0SWQJALkJAgkAzAgCAg1sYW5kQXJ0U3RhdHVzCQDMCAIFBHR5cGUJAMwIAgUHYXNzZXRJZAUDbmlsAgFfARJrZXlXYXJlaG91c2VCeUxhbmQBC2xhbmRBc3NldElkCQCsAgICCndhcmVIb3VzZV8FC2xhbmRBc3NldElkARprZXlEdWNrQXNzZXRJZFRvQ3VzdG9tTmFtZQEHYXNzZXRJZAkArAICAhhkdWNrQ3VzdG9tTmFtZUJ5QXNzZXRJZF8FB2Fzc2V0SWQBFmtleUFkZHJlc3NUb0N1c3RvbU5hbWUBBGFkZHIJAKwCAgIYYWNjb3VudEN1c3RvbU5hbWVCeUFkZHJfBQRhZGRyAQ9rZXlBZGRyZXNzUmVmQnkBBGFkZHIJAKwCAgIJYWNjUmVmQnlfBQRhZGRyARNrZXlBZGRyZXNzUmVmZXJyYWxzAQRhZGRyCQCsAgICDWFjY1JlZmVycmFsc18FBGFkZHIBEGtleUR1Y2tJZFRvT3duZXIBB2Fzc2V0SWQJAKwCAgIKZHVja093bmVyXwUHYXNzZXRJZAEUa2V5U3Rha2VkRHVja0J5T3duZXIBCW93bmVyQWRkcgkArAICAhJzdGFrZWREdWNrQnlPd25lcl8FCW93bmVyQWRkcgEPa2V5RHVja0xvY2F0aW9uAQtkdWNrQXNzZXRJZAkArAICAg1kdWNrTG9jYXRpb25fBQtkdWNrQXNzZXRJZAENa2V5RHVja0hlYWx0aAELZHVja0Fzc2V0SWQJAKwCAgILZHVja0hlYWx0aF8FC2R1Y2tBc3NldElkAQprZXlCbG9ja2VkAAIQY29udHJhY3RzQmxvY2tlZAEOa2V5T3JkZXJCeUxhbmQBC2xhbmRBc3NldElkCQCsAgICCmxhbmRPcmRlcl8FC2xhbmRBc3NldElkAQ5rZXlFc1dhcmVob3VzZQACGmVtZXJnZW5jeVdhcmVob3VzZVByb2R1Y3RzAApJZHhFZmZVc2VyAAEBEmdldFJlY2lwZU1hdGVyaWFscwEGcmVjaXBlCgEGYWRkTWF0AgJhYwFqCQBkAgUCYWMJAQ1wYXJzZUludFZhbHVlAQkAkQMCBQZyZWNpcGUFAWoKAAIkbAkAzAgCAAAJAMwIAgABCQDMCAIAAgkAzAgCAAMJAMwIAgAECQDMCAIABQUDbmlsCgACJHMJAJADAQUCJGwKAAUkYWNjMAAACgEFJGYwXzECAiRhAiRpAwkAZwIFAiRpBQIkcwUCJGEJAQZhZGRNYXQCBQIkYQkAkQMCBQIkbAUCJGkKAQUkZjBfMgICJGECJGkDCQBnAgUCJGkFAiRzBQIkYQkAAgECE0xpc3Qgc2l6ZSBleGNlZWRzIDYJAQUkZjBfMgIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIFBSRhY2MwAAAAAQACAAMABAAFAAYABWNoYWluCQDJAQIJAMoBAggFBHRoaXMFYnl0ZXMAAQABAAt1c2R0QXNzZXRJZAQHJG1hdGNoMAUFY2hhaW4DCQAAAgEBVwUHJG1hdGNoMAEghNp6sggDP07Ru8qO7ouTvMmC3Qtd+geWqNQj+agP/7kDCQAAAgEBVAUHJG1hdGNoMAEgVbHYn3KHgu/l41uNrAWrZd6aQ6EvFrsF8xq3h6XxxRgJAAIBAg1Vbmtub3duIGNoYWluABVkZWZhdWx0UmVzdEFkZHJlc3NTdHIEByRtYXRjaDAFBWNoYWluAwkAAAIBAVcFByRtYXRjaDACIzNQUUN1dkZidmg0TGtQVW5yblUxejNqbmJBMXA5bTNXTmh2AwkAAAIBAVQFByRtYXRjaDACIzNNdW1rR0d6dENLQVhwV0RxeGtkZG9mcVhTVWJxUWt2U0p5CQACAQINVW5rbm93biBjaGFpbgARSW5mcmFVcGdyYWRlQ29zdFMEByRtYXRjaDAFBWNoYWluAwkAAAIBAVcFByRtYXRjaDAAgMivoCUDCQAAAgEBVAUHJG1hdGNoMACAwtcvCQACAQINVW5rbm93biBjaGFpbgADU0VQAgJfXwAFTVVMVDYAwIQ9AAVNVUxUOACAwtcvAAVTU0laRQAZAAVNU0laRQBkAAVMU0laRQDhAQAGWExTSVpFAJADAAdYWExTSVpFAPEEAQ9nZXRTdHJpbmdPckZhaWwCB2FkZHJlc3MDa2V5CQETdmFsdWVPckVycm9yTWVzc2FnZQIJAJ0IAgUHYWRkcmVzcwUDa2V5CQC5CQIJAMwIAgIKbWFuZGF0b3J5IAkAzAgCCQClCAEFB2FkZHJlc3MJAMwIAgIBLgkAzAgCBQNrZXkJAMwIAgIPIGlzIG5vdCBkZWZpbmVkBQNuaWwCAAARSWR4Q2ZnU3Rha2luZ0RhcHAAAQARSWR4Q2ZnRWNvbm9teURhcHAAAgANSWR4Q2ZnV2xnRGFwcAAEABRJZHhDZmdQdXp6bGVQb29sRGFwcAAFAQprZXlSZXN0Q2ZnAAIOJXNfX3Jlc3RDb25maWcBDmtleVJlc3RBZGRyZXNzAAIMJXNfX3Jlc3RBZGRyARFyZWFkUmVzdENmZ09yRmFpbAEEcmVzdAkAvAkCCQEPZ2V0U3RyaW5nT3JGYWlsAgUEcmVzdAkBCmtleVJlc3RDZmcABQNTRVABGGdldENvbnRyYWN0QWRkcmVzc09yRmFpbAIHcmVzdENmZwNpZHgJARN2YWx1ZU9yRXJyb3JNZXNzYWdlAgkApggBCQCRAwIFB3Jlc3RDZmcFA2lkeAkArAICAipSZXN0IGNmZyBkb2Vzbid0IGNvbnRhaW4gYWRkcmVzcyBhdCBpbmRleCAJAKQDAQUDaWR4AAxyZXN0Q29udHJhY3QJARFAZXh0ck5hdGl2ZSgxMDYyKQEJAQt2YWx1ZU9yRWxzZQIJAJ0IAgUEdGhpcwkBDmtleVJlc3RBZGRyZXNzAAUVZGVmYXVsdFJlc3RBZGRyZXNzU3RyAAdyZXN0Q2ZnCQERcmVhZFJlc3RDZmdPckZhaWwBBQxyZXN0Q29udHJhY3QAD3N0YWtpbmdDb250cmFjdAkBGGdldENvbnRyYWN0QWRkcmVzc09yRmFpbAIFB3Jlc3RDZmcFEUlkeENmZ1N0YWtpbmdEYXBwAA9lY29ub215Q29udHJhY3QJARhnZXRDb250cmFjdEFkZHJlc3NPckZhaWwCBQdyZXN0Q2ZnBRFJZHhDZmdFY29ub215RGFwcAALd2xnQ29udHJhY3QJARhnZXRDb250cmFjdEFkZHJlc3NPckZhaWwCBQdyZXN0Q2ZnBQ1JZHhDZmdXbGdEYXBwABJwdXp6bGVQb29sQ29udHJhY3QJARhnZXRDb250cmFjdEFkZHJlc3NPckZhaWwCBQdyZXN0Q2ZnBRRJZHhDZmdQdXp6bGVQb29sRGFwcAAKcmVjTGFuZE51bQAAAAtyZWNMYW5kU2l6ZQABAAtyZWNUZXJyYWlucwACAAxyZWNDb250aW5lbnQAAwERa2V5UmVzUHJvcG9ydGlvbnMAAhNyZXNUeXBlc1Byb3BvcnRpb25zARVrZXlTdGFrZWRMYW5kc0J5T3duZXIBCW93bmVyQWRkcgkArAICAhNzdGFrZWRMYW5kc0J5T3duZXJfBQlvd25lckFkZHIAEndsZ0lzc3VlZEFtb3VudEtleQIQd2xnX2lzc3VlZEFtb3VudAANd2xnQXNzZXRJZEtleQILd2xnX2Fzc2V0SWQACndsZ0Fzc2V0SWQJARN2YWx1ZU9yRXJyb3JNZXNzYWdlAgkAnAgCBQt3bGdDb250cmFjdAUNd2xnQXNzZXRJZEtleQITTm90IGluaXRpYWxpemVkIHlldAAMaWR4V2xnQW1vdW50AAAAC2lkeFdsZ1ByaWNlAAEAC2lkeFdsZ0Z1bmRzAAIADWlkeFdsZ0Vjb25vbXkAAwAOaWR4V2xnQWN0aXZpdHkABAAPaWR4V2xnQXJiaXRyYWdlAAUACmlkeFdsZ1Bvb2wABgEIYXNTdHJpbmcBAXYEByRtYXRjaDAFAXYDCQABAgUHJG1hdGNoMAIGU3RyaW5nBAFzBQckbWF0Y2gwBQFzCQACAQIYZmFpbCB0byBjYXN0IGludG8gU3RyaW5nAQVhc0ludAEBdgQHJG1hdGNoMAUBdgMJAAECBQckbWF0Y2gwAgNJbnQEAW4FByRtYXRjaDAFAW4JAAIBAhVmYWlsIHRvIGNhc3QgaW50byBJbnQBCWFzQm9vbGVhbgEBdgQHJG1hdGNoMAUBdgMJAAECBQckbWF0Y2gwAgdCb29sZWFuBAFzBQckbWF0Y2gwBQFzCQACAQIZZmFpbCB0byBjYXN0IGludG8gQm9vbGVhbgEPbnVtUGllY2VzQnlTaXplAQhsYW5kU2l6ZQQHJG1hdGNoMAUIbGFuZFNpemUDCQAAAgIBUwUHJG1hdGNoMAUFU1NJWkUDCQAAAgIBTQUHJG1hdGNoMAUFTVNJWkUDCQAAAgIBTAUHJG1hdGNoMAUFTFNJWkUDCQAAAgICWEwFByRtYXRjaDAFBlhMU0laRQMJAAACAgNYWEwFByRtYXRjaDAFB1hYTFNJWkUJAAIBAhFVbmtub3duIGxhbmQgc2l6ZQEOZ2V0Vm90aW5nUG93ZXIBEnVzZXJBZGRyU3RyT3JFbXB0eQQFcHJvcHMJALUJAgkBC3ZhbHVlT3JFbHNlAgkAnQgCBQ9zdGFraW5nQ29udHJhY3QJARFrZXlSZXNQcm9wb3J0aW9ucwACCzBfMF8wXzBfMF8wAgFfCgEFYWRkZXICA2FjYwRpdGVtCQBkAgUDYWNjCQENcGFyc2VJbnRWYWx1ZQEFBGl0ZW0ECnRvdGFsUG93ZXIKAAIkbAUFcHJvcHMKAAIkcwkAkAMBBQIkbAoABSRhY2MwAAAKAQUkZjBfMQICJGECJGkDCQBnAgUCJGkFAiRzBQIkYQkBBWFkZGVyAgUCJGEJAJEDAgUCJGwFAiRpCgEFJGYwXzICAiRhAiRpAwkAZwIFAiRpBQIkcwUCJGEJAAIBAhNMaXN0IHNpemUgZXhjZWVkcyA2CQEFJGYwXzICCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECBQUkYWNjMAAAAAEAAgADAAQABQAGBAp1c2Vyc1Bvd2VyAwkA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byBMaXN0AQ1hc1NwbGl0UmVzdWx0AQN2YWwEByRtYXRjaDAFA3ZhbAMJAAECBQckbWF0Y2gwAhYoTGlzdFtBbnldLCBMaXN0W0FueV0pBAJ0MgUHJG1hdGNoMAkAlAoCCQESYXNMaXN0SW50Q29tcGFjdGVkAQgFAnQyAl8xCQESYXNMaXN0SW50Q29tcGFjdGVkAQgFAnQyAl8yCQACAQIeZmFpbCB0byBjYXN0IGludG8gKExpc3QsIExpc3QpAQ53YWxsZXRJbnRlcm5hbAEOdXNlckFkZHJlc3NPcHQEBGFkZHIJAKYIAQUOdXNlckFkZHJlc3NPcHQEB2JhbGFuY2UDCQEJaXNEZWZpbmVkAQUEYWRkcgkA7wcBCQEFdmFsdWUBBQRhZGRyCQEOQmFsYW5jZURldGFpbHMEAAAAAAAAAAAEC3VzZHRCYWxhbmNlAwkBCWlzRGVmaW5lZAEFBGFkZHIJAPAHAgkBBXZhbHVlAQUEYWRkcgULdXNkdEFzc2V0SWQAAAQNd2xnb2xkQmFsYW5jZQMJAQlpc0RlZmluZWQBBQRhZGRyCQDwBwIJAQV2YWx1ZQEFBGFkZHIFCndsZ0Fzc2V0SWQAAAQKY3VzdG9tTmFtZQkBC3ZhbHVlT3JFbHNlAgkAnQgCBQ9zdGFraW5nQ29udHJhY3QJARZrZXlBZGRyZXNzVG9DdXN0b21OYW1lAQUOdXNlckFkZHJlc3NPcHQFDnVzZXJBZGRyZXNzT3B0BAVyZWZCeQkBC3ZhbHVlT3JFbHNlAgkAnQgCBQ9zdGFraW5nQ29udHJhY3QJAQ9rZXlBZGRyZXNzUmVmQnkBBQ51c2VyQWRkcmVzc09wdAIABARyZWZzCQELdmFsdWVPckVsc2UCCQCdCAIFD3N0YWtpbmdDb250cmFjdAkBE2tleUFkZHJlc3NSZWZlcnJhbHMBBQ51c2VyQWRkcmVzc09wdAIABAhsYXN0VHhJZAkBC3ZhbHVlT3JFbHNlAgkAnQgCBQ9zdGFraW5nQ29udHJhY3QJARFrZXlMYXN0VHhJZEJ5VXNlcgEFDnVzZXJBZGRyZXNzT3B0AgAEBnBpZWNlcwkAkQMCCQEOZ2V0Vm90aW5nUG93ZXIBBQ51c2VyQWRkcmVzc09wdAUKSWR4RWZmVXNlcgQCeHAJAQt2YWx1ZU9yRWxzZQIJAJoIAgUPc3Rha2luZ0NvbnRyYWN0CQEJa2V5VXNlclhQAQUOdXNlckFkZHJlc3NPcHQAAAQDbHZsCQEJbGV2ZWxCeVhQAQUCeHAECmZyZWVQb2ludHMJAQt2YWx1ZU9yRWxzZQIJAJoIAgUPc3Rha2luZ0NvbnRyYWN0CQERa2V5VXNlckZyZWVQb2ludHMBBQ51c2VyQWRkcmVzc09wdAAACQDMCAIJAKwCAgISJXMlc19fY3VzdG9tTmFtZV9fBQpjdXN0b21OYW1lCQDMCAIJAKwCAgISJXMlc19fcmVmZXJyZWRCeV9fBQVyZWZCeQkAzAgCCQCsAgICESVzJXNfX3JlZmVycmFsc19fBQRyZWZzCQDMCAIJAKwCAgIQJXMlc19fbGFzdFR4SWRfXwUIbGFzdFR4SWQJAMwIAgkArAICAhQlcyVkX193YXZlc0JhbGFuY2VfXwkApAMBCAUHYmFsYW5jZQlhdmFpbGFibGUJAMwIAgkArAICAhUlcyVkX193bGdvbGRCYWxhbmNlX18JAKQDAQUNd2xnb2xkQmFsYW5jZQkAzAgCCQCsAgICEyVzJWRfX3VzZHRCYWxhbmNlX18JAKQDAQULdXNkdEJhbGFuY2UJAMwIAgkArAICAhQlcyVkX19zdGFrZWRQaWVjZXNfXwkApAMBBQZwaWVjZXMJAMwIAgkArAICAhElcyVkX19jdXJyZW50WHBfXwkApAMBBQJ4cAkAzAgCCQCsAgICEiVzJWRfX2N1cnJlbnRMdmxfXwkApAMBBQNsdmwJAMwIAgkArAICAholcyVkX19wb2ludHNUb0Rpc3RyaWJ1dGVfXwkApAMBBQpmcmVlUG9pbnRzBQNuaWwBDGFwcGx5Qm9udXNlcwILbGFuZEFzc2V0SWQGcGllY2VzBAppbmZyYUxldmVsCQELdmFsdWVPckVsc2UCCQCaCAIFD3N0YWtpbmdDb250cmFjdAkBFmtleUluZnJhTGV2ZWxCeUFzc2V0SWQBBQtsYW5kQXNzZXRJZAAABAlhcnRQaWVjZXMJAQt2YWx1ZU9yRWxzZQIJAJoIAgUPc3Rha2luZ0NvbnRyYWN0CQEga2V5TGFuZEFydFN0YXR1c0J5VHlwZUFuZEFzc2V0SWQCBQpBUlRQUkVTQUxFBQtsYW5kQXNzZXRJZAAABARhZGQ2CQBpAgUKaW5mcmFMZXZlbAAGBARhZGQ3CQBpAgUKaW5mcmFMZXZlbAAHCQCVCgMFCmluZnJhTGV2ZWwFCWFydFBpZWNlcwkAZAIJAGQCBQ9EQUlMWVJFU0JZUElFQ0UJAGsDBQ9EQUlMWVJFU0JZUElFQ0UJAGQCCQBkAgUKaW5mcmFMZXZlbAUEYWRkNgkAaAIAAgUEYWRkNwAFCQBrAwUPREFJTFlSRVNCWVBJRUNFBQlhcnRQaWVjZXMJAGgCBQZwaWVjZXMABQEXZ2V0V2FyZWhvdXNlVG90YWxWb2x1bWUBCXZvbFByZWZpeAQFcGFydHMJALUJAgUJdm9sUHJlZml4AgFfCQBoAgkAaAIFDFdITVVMVElQTElFUgkAZAIJAQ1wYXJzZUludFZhbHVlAQkAkQMCBQVwYXJ0cwABAAEJAQ1wYXJzZUludFZhbHVlAQkAkQMCBQVwYXJ0cwAAAQxnZXRXYXJlaG91c2UDBXdoS2V5CWxhbmRJbmRleAppbmZyYUxldmVsBAl2b2xQcmVmaXgJAKwCAgkArAICCQCkAwEFCWxhbmRJbmRleAIBXwkApAMBBQppbmZyYUxldmVsBAR0b3RTCQCkAwEJARdnZXRXYXJlaG91c2VUb3RhbFZvbHVtZQEFCXZvbFByZWZpeAQFd2hTdHIJAQt2YWx1ZU9yRWxzZQIJAJ0IAgUPc3Rha2luZ0NvbnRyYWN0BQV3aEtleQkArAICCQCsAgIJAKwCAgkArAICBQl2b2xQcmVmaXgCHjowXzBfMF8wXzBfMDowXzBfMF8wXzBfMDo6MF8wXwUEdG90UwIBXwUEdG90UwkAtQkCBQV3aFN0cgIBOgENZHVja0luZm9UdXBsZQELZHVja0Fzc2V0SWQJAJcKBQkBC3ZhbHVlT3JFbHNlAgkAmggCBQ9zdGFraW5nQ29udHJhY3QJARZrZXlTdGFrZWRUaW1lQnlBc3NldElkAQULZHVja0Fzc2V0SWQA////////////AQgJAQV2YWx1ZQEJAOwHAQkA2QQBBQtkdWNrQXNzZXRJZARuYW1lCQELdmFsdWVPckVsc2UCCQCdCAIFD3N0YWtpbmdDb250cmFjdAkBD2tleUR1Y2tMb2NhdGlvbgEFC2R1Y2tBc3NldElkAgAJAQt2YWx1ZU9yRWxzZQIJAJoIAgUPc3Rha2luZ0NvbnRyYWN0CQENa2V5RHVja0hlYWx0aAEFC2R1Y2tBc3NldElkAP///////////wEJAQhhc1N0cmluZwEJAPwHBAUPc3Rha2luZ0NvbnRyYWN0AhNnZXRCYWNrcGFja1JFQURPTkxZCQDMCAIFC2R1Y2tBc3NldElkBQNuaWwFA25pbAENZHVja0luZm9BcnJheQMLZHVja0Fzc2V0SWQFb3duZXIHZHVja0luZgQKY3VzdG9tTmFtZQkBC3ZhbHVlT3JFbHNlAgkAnQgCBQ9zdGFraW5nQ29udHJhY3QJARprZXlEdWNrQXNzZXRJZFRvQ3VzdG9tTmFtZQEFC2R1Y2tBc3NldElkCAUHZHVja0luZgJfMgQFY2hhcnMJAQt2YWx1ZU9yRWxzZQIJAJ0IAgUPc3Rha2luZ0NvbnRyYWN0CQEMa2V5RHVja0NoYXJzAQULZHVja0Fzc2V0SWQCCTBfMF8wXzBfMAQCeHAJAQt2YWx1ZU9yRWxzZQIJAJoIAgUPc3Rha2luZ0NvbnRyYWN0CQEJa2V5RHVja1hQAQULZHVja0Fzc2V0SWQAAAQDbHZsCQEJbGV2ZWxCeVhQAQUCeHAECmZyZWVQb2ludHMJAQt2YWx1ZU9yRWxzZQIJAJoIAgUPc3Rha2luZ0NvbnRyYWN0CQERa2V5RHVja0ZyZWVQb2ludHMBBQtkdWNrQXNzZXRJZAAACQDMCAIJAKwCAgIPJXMlc19fYXNzZXRJZF9fBQtkdWNrQXNzZXRJZAkAzAgCCQCsAgICDSVzJXNfX293bmVyX18FBW93bmVyCQDMCAIJAKwCAgISJXMlc19fY3VzdG9tTmFtZV9fBQpjdXN0b21OYW1lCQDMCAIJAKwCAgISJXMlZF9fc3Rha2VkVGltZV9fCQCkAwEIBQdkdWNrSW5mAl8xCQDMCAIJAKwCAgIMJXMlc19fbmFtZV9fCAUHZHVja0luZgJfMgkAzAgCCQCsAgICECVzJXNfX2xvY2F0aW9uX18IBQdkdWNrSW5mAl8zCQDMCAIJAKwCAgIOJXMlZF9faGVhbHRoX18JAKQDAQgFB2R1Y2tJbmYCXzQJAMwIAgkArAICAhElcyVkX19tYXhIZWFsdGhfXwkApAMBCQEJbWF4SGVhbHRoAQUDbHZsCQDMCAIJAKwCAgIXJXMlc19fY2hhcmFjdGVyaXN0aWNzX18FBWNoYXJzCQDMCAIJAKwCAgIRJXMlZF9fY3VycmVudFhwX18JAKQDAQUCeHAJAMwIAgkArAICAhIlcyVkX19jdXJyZW50THZsX18JAKQDAQUDbHZsCQDMCAIJAKwCAgIaJXMlZF9fcG9pbnRzVG9EaXN0cmlidXRlX18JAKQDAQUKZnJlZVBvaW50cwkAzAgCCQCsAgICECVzJXNfX2JhY2tQYWNrX18IBQdkdWNrSW5mAl81BQNuaWwBDWxhbmRJbmZvQXJyYXkDC2xhbmRBc3NldElkBW93bmVyCnN0YWtlZFRpbWUDCQAAAgULbGFuZEFzc2V0SWQCAAkAAgECF2xhbmRBc3NldElkIGlzIHJlcXVpcmVkBAFhCQEFdmFsdWUBCQDsBwEJANkEAQULbGFuZEFzc2V0SWQEAWQJALUJAggFAWELZGVzY3JpcHRpb24CAV8EB2xhbmROdW0DCQBmAggFAWEIcXVhbnRpdHkAAAkAkQMCBQFkBQpyZWNMYW5kTnVtCQCsAgICAS0JAJEDAgUBZAUKcmVjTGFuZE51bQQGcGllY2VzCQEPbnVtUGllY2VzQnlTaXplAQkAkQMCBQFkBQtyZWNMYW5kU2l6ZQQMcHJvZHVjdGl2aXR5CQEMYXBwbHlCb251c2VzAgULbGFuZEFzc2V0SWQFBnBpZWNlcwQJZGVsdGFUaW1lCQBlAggFCWxhc3RCbG9jawl0aW1lc3RhbXAFCnN0YWtlZFRpbWUECGF2YWlsUmVzAwkAZgIFCnN0YWtlZFRpbWUAAAkAawMFCWRlbHRhVGltZQkAaAIIBQxwcm9kdWN0aXZpdHkCXzMFBnBpZWNlcwUJREFZTUlMTElTAAAEB25lZWRNYXQJAGsDBRFJbmZyYVVwZ3JhZGVDb3N0UwkAaAIFBnBpZWNlcwkAZAIIBQxwcm9kdWN0aXZpdHkCXzEAAQUFU1NJWkUEDmdsb2JhbEFuZExvY2FsAwkAZgIFCnN0YWtlZFRpbWUAAAkBDWFzU3BsaXRSZXN1bHQBCQD8BwQFD3N0YWtpbmdDb250cmFjdAIkc3BsaXRCeUdsb2JhbEFuZExvY2FsV2VpZ2h0c1JFQURPTkxZCQDMCAIFB25lZWRNYXQJAMwIAgUIYXZhaWxSZXMJAMwIAgkAkQMCBQFkBQtyZWNUZXJyYWlucwUDbmlsBQNuaWwJAJQKAgkBEmFzTGlzdEludENvbXBhY3RlZAEJAPwHBAUPc3Rha2luZ0NvbnRyYWN0AhxzcGxpdEJ5R2xvYmFsV2VpZ2h0c1JFQURPTkxZCQDMCAIFB25lZWRNYXQFA25pbAUDbmlsAgAECmN1c3RvbU5hbWUJAQt2YWx1ZU9yRWxzZQIJAJ0IAgUPc3Rha2luZ0NvbnRyYWN0CQEaa2V5TGFuZEFzc2V0SWRUb0N1c3RvbU5hbWUBBQtsYW5kQXNzZXRJZAkArAICCQCsAgIJAJEDAgUBZAUMcmVjQ29udGluZW50AgEtCQCRAwIFAWQFCnJlY0xhbmROdW0JAMwIAgkArAICAg8lcyVzX19hc3NldElkX18FC2xhbmRBc3NldElkCQDMCAIJAKwCAgINJXMlc19fb3duZXJfXwUFb3duZXIJAMwIAgkArAICAhIlcyVzX19jdXN0b21OYW1lX18FCmN1c3RvbU5hbWUJAMwIAgkArAICAhIlcyVkX19zdGFrZWRUaW1lX18JAKQDAQUKc3Rha2VkVGltZQkAzAgCCQCsAgICEyVzJXNfX2Rlc2NyaXB0aW9uX18JALkJAgkAzAgCBQdsYW5kTnVtCQDMCAIJAJEDAgUBZAULcmVjTGFuZFNpemUJAMwIAgkAkQMCBQFkBQtyZWNUZXJyYWlucwkAzAgCCQCRAwIFAWQFDHJlY0NvbnRpbmVudAUDbmlsAgFfCQDMCAIJAKwCAgISJXMlZF9faW5mcmFMZXZlbF9fCQCkAwEIBQxwcm9kdWN0aXZpdHkCXzEJAMwIAgkArAICAhYlcyVzX19hdmFpbFJlc0J5VHlwZV9fCAUOZ2xvYmFsQW5kTG9jYWwCXzIJAMwIAgkArAICAhUlcyVkX19hdmFpbFJlc1RvdGFsX18JAKQDAQUIYXZhaWxSZXMJAMwIAgkArAICAhQlcyVzX19uZWVkTWF0ZXJpYWxfXwgFDmdsb2JhbEFuZExvY2FsAl8xCQDMCAIJALkJAgkAzAgCAgQlcyVzCQDMCAICDWxhbmRBcnRlZmFjdHMJAMwIAgkArAICAghQUkVTQUxFOgkApAMBCAUMcHJvZHVjdGl2aXR5Al8yBQNuaWwFA1NFUAkAzAgCCQCsAgICESVzJXNfX3dhcmVob3VzZV9fCQC5CQIJAQxnZXRXYXJlaG91c2UDCQESa2V5V2FyZWhvdXNlQnlMYW5kAQULbGFuZEFzc2V0SWQJAGkCBQZwaWVjZXMFBVNTSVpFCAUMcHJvZHVjdGl2aXR5Al8xAgE6CQDMCAIJAKwCAgIRJXMlc19fbGFuZE9yZGVyX18JAQt2YWx1ZU9yRWxzZQIJAJ0IAgUPZWNvbm9teUNvbnRyYWN0CQEOa2V5T3JkZXJCeUxhbmQBBQtsYW5kQXNzZXRJZAIwMEAwXzBAMF8wQDBfMEAwXzBAMF8wQDA6MEAwXzBAMF8wQDBfMEAwXzBAMF8wQDA6BQNuaWwBEmxhbmRPcmRlckluZm9BcnJheQILbGFuZEFzc2V0SWQFb3duZXIDCQAAAgULbGFuZEFzc2V0SWQCAAkAAgECF2xhbmRBc3NldElkIGlzIHJlcXVpcmVkBAFhCQEFdmFsdWUBCQDsBwEJANkEAQULbGFuZEFzc2V0SWQEAWQJALUJAggFAWELZGVzY3JpcHRpb24CAV8EBnBpZWNlcwkBD251bVBpZWNlc0J5U2l6ZQEJAJEDAgUBZAULcmVjTGFuZFNpemUEDHByb2R1Y3Rpdml0eQkBDGFwcGx5Qm9udXNlcwIFC2xhbmRBc3NldElkBQZwaWVjZXMJAMwIAgkArAICAg8lcyVzX19hc3NldElkX18FC2xhbmRBc3NldElkCQDMCAIJAKwCAgINJXMlc19fb3duZXJfXwUFb3duZXIJAMwIAgkArAICAhElcyVzX193YXJlaG91c2VfXwkAuQkCCQEMZ2V0V2FyZWhvdXNlAwkBEmtleVdhcmVob3VzZUJ5TGFuZAEFC2xhbmRBc3NldElkCQBpAgUGcGllY2VzBQVTU0laRQgFDHByb2R1Y3Rpdml0eQJfMQIBOgkAzAgCCQCsAgICESVzJXNfX2xhbmRPcmRlcl9fCQELdmFsdWVPckVsc2UCCQCdCAIFD2Vjb25vbXlDb250cmFjdAkBDmtleU9yZGVyQnlMYW5kAQULbGFuZEFzc2V0SWQCMDBAMF8wQDBfMEAwXzBAMF8wQDBfMEAwOjBAMF8wQDBfMEAwXzBAMF8wQDBfMEAwOgUDbmlsDwFpAQ1jb25zdHJ1Y3RvclYxAQljb250cmFjdHMDCQECIT0CCAUBaQZjYWxsZXIFBHRoaXMJAAIBAhJwZXJtaXNzaW9ucyBkZW5pZWQKAQpkZXNjcmlwdG9yAgNhY2MLaWdub3JlZEl0ZW0JAKwCAgUDYWNjAgIlcwQFZGVzY3IKAAIkbAUJY29udHJhY3RzCgACJHMJAJADAQUCJGwKAAUkYWNjMAIACgEFJGYwXzECAiRhAiRpAwkAZwIFAiRpBQIkcwUCJGEJAQpkZXNjcmlwdG9yAgUCJGEJAJEDAgUCJGwFAiRpCgEFJGYwXzICAiRhAiRpAwkAZwIFAiRpBQIkcwUCJGEJAAIBAhRMaXN0IHNpemUgZXhjZWVkcyAxMAkBBSRmMF8yAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgUFJGFjYzAAAAABAAIAAwAEAAUABgAHAAgACQAKCQDMCAIJAQtTdHJpbmdFbnRyeQIJAQprZXlSZXN0Q2ZnAAkAuQkCCQDMCAIFBWRlc2NyBQljb250cmFjdHMFA1NFUAkAzAgCCQELU3RyaW5nRW50cnkCCQEOa2V5UmVzdEFkZHJlc3MACQClCAEFBHRoaXMFA25pbAFpARJ3YWxsZXRJbmZvUkVBRE9OTFkBDnVzZXJBZGRyZXNzT3B0CQCUCgIFA25pbAkBDndhbGxldEludGVybmFsAQUOdXNlckFkZHJlc3NPcHQBaQEXZHVja0J5T3duZXJJbmZvUkVBRE9OTFkBC3VzZXJBZGRyZXNzBApzdGFrZWREdWNrCQCdCAIFD3N0YWtpbmdDb250cmFjdAkBFGtleVN0YWtlZER1Y2tCeU93bmVyAQULdXNlckFkZHJlc3MJAJQKAgUDbmlsAwMJAQlpc0RlZmluZWQBCQCmCAEFC3VzZXJBZGRyZXNzCQEJaXNEZWZpbmVkAQUKc3Rha2VkRHVjawcEC2R1Y2tBc3NldElkCQEFdmFsdWUBBQpzdGFrZWREdWNrCQENZHVja0luZm9BcnJheQMFC2R1Y2tBc3NldElkBQt1c2VyQWRkcmVzcwkBDWR1Y2tJbmZvVHVwbGUBBQtkdWNrQXNzZXRJZAkBDWR1Y2tJbmZvQXJyYXkDAgAFC3VzZXJBZGRyZXNzCQCXCgUA////////////AQIAAgAA////////////AQIAAWkBGWR1Y2tCeUFzc2V0SWRJbmZvUkVBRE9OTFkBC2R1Y2tBc3NldElkBAVvd25lcgkAnQgCBQ9zdGFraW5nQ29udHJhY3QJARBrZXlEdWNrSWRUb093bmVyAQULZHVja0Fzc2V0SWQEB2R1Y2tJbmYJAQ1kdWNrSW5mb1R1cGxlAQULZHVja0Fzc2V0SWQJAJQKAgUDbmlsCQENZHVja0luZm9BcnJheQMFC2R1Y2tBc3NldElkAwkBCWlzRGVmaW5lZAEFBW93bmVyCQEFdmFsdWUBBQVvd25lcgIACQENZHVja0luZm9UdXBsZQEFC2R1Y2tBc3NldElkAWkBGWxhbmRCeUFzc2V0SWRJbmZvUkVBRE9OTFkBC2xhbmRBc3NldElkAwkAAAIFC2xhbmRBc3NldElkAgAJAAIBAhdsYW5kQXNzZXRJZCBpcyByZXF1aXJlZAQKc3Rha2VkVGltZQkBC3ZhbHVlT3JFbHNlAgkAmggCBQ9zdGFraW5nQ29udHJhY3QJARZrZXlTdGFrZWRUaW1lQnlBc3NldElkAQULbGFuZEFzc2V0SWQA////////////AQQFb3duZXIDCQBmAgUKc3Rha2VkVGltZQAACQEFdmFsdWUBCQCdCAIFD3N0YWtpbmdDb250cmFjdAkBFWtleUxhbmRBc3NldElkVG9Pd25lcgEFC2xhbmRBc3NldElkAgAJAJQKAgUDbmlsCQENbGFuZEluZm9BcnJheQMFC2xhbmRBc3NldElkBQVvd25lcgUKc3Rha2VkVGltZQFpAR5zdGFrZWRMYW5kc0J5T3duZXJJbmZvUkVBRE9OTFkBEGxhbmRPd25lckFkZHJlc3MDCQAAAgUQbGFuZE93bmVyQWRkcmVzcwIACQACAQIcbGFuZE93bmVyQWRkcmVzcyBpcyByZXF1aXJlZAQIbGFuZHNTdHIJAJ0IAgUPc3Rha2luZ0NvbnRyYWN0CQEVa2V5U3Rha2VkTGFuZHNCeU93bmVyAQUQbGFuZE93bmVyQWRkcmVzcwQFbGFuZHMDCQEJaXNEZWZpbmVkAQUIbGFuZHNTdHIJAL0JAgkBBXZhbHVlAQUIbGFuZHNTdHICAV8FA25pbAoBB29uZUxhbmQCA2FjYwtsYW5kQXNzZXRJZAMJAAACBQtsYW5k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", "height": 2654378, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: HEEDWBbdtpGxwWVaumyPQfaX8sJMAMYDdH2nW1DMTX6c Next: 35HepSVcqRERvhivUiiwvNg5fvMTLwNhN7YzCSA6ARNk Diff:
OldNewDifferences
77
88 let c = 4000
99
10-let d = 100
11-
12-let e = 10391
13-
14-let f = 0
15-
16-func g (h) = ("duckChars_" + h)
10+func d (e) = ("duckChars_" + e)
1711
1812
19-func i (h) = ("duckXP_" + h)
13+func f (e) = ("duckXP_" + e)
2014
2115
22-func j (h) = ("duckFreePoints_" + h)
16+func g (e) = ("duckFreePoints_" + e)
2317
2418
25-func k (l) = ("userXP_" + l)
19+func h (i) = ("userXP_" + i)
2620
2721
28-func m (l) = ("userFreePoints_" + l)
22+func j (i) = ("userFreePoints_" + i)
2923
3024
31-func n (o) = fraction(b, pow(o, 0, c, 4, 4, DOWN), a)
25+func k (l) = fraction(b, pow(l, 0, c, 4, 4, DOWN), a)
3226
3327
34-func p (q) = fraction(d, pow(e, 4, q, 0, 8, DOWN), a)
28+func m (n) = (100 + n)
3529
3630
37-let r = "PRESALE"
31+let o = "PRESALE"
3832
39-let s = 6
33+let p = 6
4034
41-let t = 3456000
35+let q = 3456000
4236
43-let u = 86400000
37+let r = 86400000
4438
45-let v = 10000000000
39+let s = 10000000000
4640
47-let w = 39637
41+let t = 39637
4842
49-let x = 3
43+let u = 3
5044
51-let y = 4
45+let v = 4
5246
53-let z = 10
47+let w = 10
5448
55-let A = ["1_1_1_2_2_5_1_10_0", "2_2_2_4_4_10_1_10_0", "3_3_3_6_6_15_1_10_0", "2_5_5_2_7_5_2_100_1", "4_10_10_4_14_10_2_100_1", "6_15_15_6_21_15_2_100_1", "1_1_1_1_1_8_1_10_2", "2_2_2_2_2_16_1_10_2", "3_3_3_3_3_24_1_10_2", "9_9_1_5_5_1_5_100_3", "18_18_2_10_10_2_5_100_3", "27_27_3_15_15_3_5_100_3", "2_2_1_2_2_2_1_10_4", "4_4_2_4_4_4_1_10_4", "6_6_3_6_6_6_1_10_4"]
49+let x = ["1_1_1_2_2_5_1_10_0", "2_2_2_4_4_10_1_10_0", "3_3_3_6_6_15_1_10_0", "2_5_5_2_7_5_2_100_1", "4_10_10_4_14_10_2_100_1", "6_15_15_6_21_15_2_100_1", "1_1_1_1_1_8_1_10_2", "2_2_2_2_2_16_1_10_2", "3_3_3_3_3_24_1_10_2", "9_9_1_5_5_1_5_100_3", "18_18_2_10_10_2_5_100_3", "27_27_3_15_15_3_5_100_3", "2_2_1_2_2_2_1_10_4", "4_4_2_4_4_4_1_10_4", "6_6_3_6_6_6_1_10_4"]
5650
57-let B = 7
51+let y = 7
5852
59-func C (l) = ("lastTxIdByUser_" + l)
53+func z (i) = ("lastTxIdByUser_" + i)
6054
6155
62-func D (E) = ("nftOwner_" + E)
56+func A (B) = ("nftOwner_" + B)
6357
6458
65-func F (E) = ("landCustomNameByAssetId_" + E)
59+func C (B) = ("landCustomNameByAssetId_" + B)
6660
6761
68-func G (E) = ("stakedTime_" + E)
62+func D (B) = ("stakedTime_" + B)
6963
7064
71-func H (E) = ("infraLevel_" + E)
65+func E (B) = ("infraLevel_" + B)
7266
7367
74-func I (J,E) = makeString(["landArtStatus", J, E], "_")
68+func F (G,B) = makeString(["landArtStatus", G, B], "_")
7569
7670
77-func K (L) = ("wareHouse_" + L)
71+func H (I) = ("wareHouse_" + I)
7872
7973
80-func M (E) = ("duckCustomNameByAssetId_" + E)
74+func J (B) = ("duckCustomNameByAssetId_" + B)
8175
8276
83-func N (l) = ("accountCustomNameByAddr_" + l)
77+func K (i) = ("accountCustomNameByAddr_" + i)
8478
8579
86-func O (l) = ("accRefBy_" + l)
80+func L (i) = ("accRefBy_" + i)
8781
8882
89-func P (l) = ("accReferrals_" + l)
83+func M (i) = ("accReferrals_" + i)
9084
9185
92-func Q (E) = ("duckOwner_" + E)
86+func N (B) = ("duckOwner_" + B)
9387
9488
95-func R (S) = ("stakedDuckByOwner_" + S)
89+func O (P) = ("stakedDuckByOwner_" + P)
9690
9791
98-func T (h) = ("duckLocation_" + h)
92+func Q (e) = ("duckLocation_" + e)
9993
10094
101-func U (h) = ("duckHealth_" + h)
95+func R (e) = ("duckHealth_" + e)
10296
10397
104-func V () = "contractsBlocked"
98+func S () = "contractsBlocked"
10599
106100
107-func W (L) = ("landOrder_" + L)
101+func T (I) = ("landOrder_" + I)
108102
109103
110-func X () = "emergencyWarehouseProducts"
104+func U () = "emergencyWarehouseProducts"
111105
112106
113-let Y = 1
107+let V = 1
114108
115-func Z (aa) = {
116- func ab (ac,ad) = (ac + parseIntValue(aa[ad]))
109+func W (X) = {
110+ func Y (Z,aa) = (Z + parseIntValue(X[aa]))
117111
118- let ae = [0, 1, 2, 3, 4, 5]
119- let af = size(ae)
120- let ag = 0
121- func ah (ai,aj) = if ((aj >= af))
122- then ai
123- else ab(ai, ae[aj])
112+ let ab = [0, 1, 2, 3, 4, 5]
113+ let ac = size(ab)
114+ let ad = 0
115+ func ae (af,ag) = if ((ag >= ac))
116+ then af
117+ else Y(af, ab[ag])
124118
125- func ak (ai,aj) = if ((aj >= af))
126- then ai
119+ func ah (af,ag) = if ((ag >= ac))
120+ then af
127121 else throw("List size exceeds 6")
128122
129- ak(ah(ah(ah(ah(ah(ah(ag, 0), 1), 2), 3), 4), 5), 6)
123+ ah(ae(ae(ae(ae(ae(ae(ad, 0), 1), 2), 3), 4), 5), 6)
130124 }
131125
132126
133-let al = take(drop(this.bytes, 1), 1)
127+let ai = take(drop(this.bytes, 1), 1)
134128
135-let am = {
136- let an = al
137- if ((base58'2W' == an))
129+let aj = {
130+ let ak = ai
131+ if ((base58'2W' == ak))
138132 then base58'9wc3LXNA4TEBsXyKtoLE9mrbDD7WMHXvXrCjZvabLAsi'
139- else if ((base58'2T' == an))
133+ else if ((base58'2T' == ak))
140134 then base58'6mWwf9mZBjVgkC54idpyaZLQfAosD914wT8fGf2iiY63'
141135 else throw("Unknown chain")
142136 }
143137
144-let ao = {
145- let an = al
146- if ((base58'2W' == an))
138+let al = {
139+ let ak = ai
140+ if ((base58'2W' == ak))
147141 then "3PQCuvFbvh4LkPUnrnU1z3jnbA1p9m3WNhv"
148- else if ((base58'2T' == an))
142+ else if ((base58'2T' == ak))
149143 then "3MumkGGztCKAXpWDqxkddofqXSUbqQkvSJy"
150144 else throw("Unknown chain")
151145 }
152146
153-let ap = {
154- let an = al
155- if ((base58'2W' == an))
147+let am = {
148+ let ak = ai
149+ if ((base58'2W' == ak))
156150 then 10000000000
157- else if ((base58'2T' == an))
151+ else if ((base58'2T' == ak))
158152 then 100000000
159153 else throw("Unknown chain")
160154 }
161155
162-let aq = "__"
156+let an = "__"
163157
164-let ar = 1000000
158+let ao = 1000000
165159
166-let as = 100000000
160+let ap = 100000000
167161
168-let at = 25
162+let aq = 25
169163
170-let au = 100
164+let ar = 100
171165
172-let av = 225
166+let as = 225
173167
174-let aw = 400
168+let at = 400
175169
176-let ax = 625
170+let au = 625
177171
178-func ay (az,aA) = valueOrErrorMessage(getString(az, aA), makeString(["mandatory ", toString(az), ".", aA, " is not defined"], ""))
172+func av (aw,ax) = valueOrErrorMessage(getString(aw, ax), makeString(["mandatory ", toString(aw), ".", ax, " is not defined"], ""))
179173
180174
181-let aB = 1
175+let ay = 1
182176
183-let aC = 2
177+let az = 2
184178
185-let aD = 4
179+let aA = 4
186180
187-let aE = 5
181+let aB = 5
188182
189-func aF () = "%s__restConfig"
183+func aC () = "%s__restConfig"
190184
191185
192-func aG () = "%s__restAddr"
186+func aD () = "%s__restAddr"
193187
194188
195-func aH (aI) = split_4C(ay(aI, aF()), aq)
189+func aE (aF) = split_4C(av(aF, aC()), an)
196190
197191
198-func aJ (aK,aL) = valueOrErrorMessage(addressFromString(aK[aL]), ("Rest cfg doesn't contain address at index " + toString(aL)))
192+func aG (aH,aI) = valueOrErrorMessage(addressFromString(aH[aI]), ("Rest cfg doesn't contain address at index " + toString(aI)))
199193
200194
201-let aM = addressFromStringValue(valueOrElse(getString(this, aG()), ao))
195+let aJ = addressFromStringValue(valueOrElse(getString(this, aD()), al))
202196
203-let aK = aH(aM)
197+let aH = aE(aJ)
204198
205-let aN = aJ(aK, aB)
199+let aK = aG(aH, ay)
206200
207-let aO = aJ(aK, aC)
201+let aL = aG(aH, az)
208202
209-let aP = aJ(aK, aD)
203+let aM = aG(aH, aA)
210204
211-let aQ = aJ(aK, aE)
205+let aN = aG(aH, aB)
212206
213-let aR = 0
207+let aO = 0
214208
215-let aS = 1
209+let aP = 1
216210
217-let aT = 2
211+let aQ = 2
218212
219-let aU = 3
213+let aR = 3
220214
221-func aV () = "resTypesProportions"
215+func aS () = "resTypesProportions"
222216
223217
224-func aW (S) = ("stakedLandsByOwner_" + S)
218+func aT (P) = ("stakedLandsByOwner_" + P)
225219
226220
227-let aX = "wlg_issuedAmount"
221+let aU = "wlg_issuedAmount"
228222
229-let aY = "wlg_assetId"
223+let aV = "wlg_assetId"
230224
231-let aZ = valueOrErrorMessage(getBinary(aP, aY), "Not initialized yet")
225+let aW = valueOrErrorMessage(getBinary(aM, aV), "Not initialized yet")
232226
233-let ba = 0
227+let aX = 0
234228
235-let bb = 1
229+let aY = 1
236230
237-let bc = 2
231+let aZ = 2
238232
239-let bd = 3
233+let ba = 3
240234
241-let be = 4
235+let bb = 4
242236
243-let bf = 5
237+let bc = 5
244238
245-let bg = 6
239+let bd = 6
246240
247-func bh (bi) = {
248- let an = bi
249- if ($isInstanceOf(an, "String"))
241+func be (bf) = {
242+ let ak = bf
243+ if ($isInstanceOf(ak, "String"))
250244 then {
251- let bj = an
252- bj
245+ let bg = ak
246+ bg
253247 }
254248 else throw("fail to cast into String")
255249 }
256250
257251
258-func bk (bi) = {
259- let an = bi
260- if ($isInstanceOf(an, "Int"))
252+func bh (bf) = {
253+ let ak = bf
254+ if ($isInstanceOf(ak, "Int"))
261255 then {
262- let bl = an
263- bl
256+ let bi = ak
257+ bi
264258 }
265259 else throw("fail to cast into Int")
266260 }
267261
268262
269-func bm (bi) = {
270- let an = bi
271- if ($isInstanceOf(an, "Boolean"))
263+func bj (bf) = {
264+ let ak = bf
265+ if ($isInstanceOf(ak, "Boolean"))
272266 then {
273- let bj = an
274- bj
267+ let bg = ak
268+ bg
275269 }
276270 else throw("fail to cast into Boolean")
277271 }
278272
279273
280-func bn (bo) = {
281- let an = bo
282- if (("S" == an))
283- then at
284- else if (("M" == an))
285- then au
286- else if (("L" == an))
287- then av
288- else if (("XL" == an))
289- then aw
290- else if (("XXL" == an))
291- then ax
274+func bk (bl) = {
275+ let ak = bl
276+ if (("S" == ak))
277+ then aq
278+ else if (("M" == ak))
279+ then ar
280+ else if (("L" == ak))
281+ then as
282+ else if (("XL" == ak))
283+ then at
284+ else if (("XXL" == ak))
285+ then au
292286 else throw("Unknown land size")
293287 }
294288
295289
296-func bp (bq) = {
297- let br = split(valueOrElse(getString(aN, aV()), "0_0_0_0_0_0"), "_")
298- func bs (bt,bu) = (bt + parseIntValue(bu))
290+func bm (bn) = {
291+ let bo = split(valueOrElse(getString(aK, aS()), "0_0_0_0_0_0"), "_")
292+ func bp (bq,br) = (bq + parseIntValue(br))
299293
300- let bv = {
301- let ae = br
302- let af = size(ae)
303- let ag = 0
304- func ah (ai,aj) = if ((aj >= af))
305- then ai
306- else bs(ai, ae[aj])
294+ let bs = {
295+ let ab = bo
296+ let ac = size(ab)
297+ let ad = 0
298+ func ae (af,ag) = if ((ag >= ac))
299+ then af
300+ else bp(af, ab[ag])
307301
308- func ak (ai,aj) = if ((aj >= af))
309- then ai
302+ func ah (af,ag) = if ((ag >= ac))
303+ then af
310304 else throw("List size exceeds 6")
311305
312- ak(ah(ah(ah(ah(ah(ah(ag, 0), 1), 2), 3), 4), 5), 6)
306+ ah(ae(ae(ae(ae(ae(ae(ad, 0), 1), 2), 3), 4), 5), 6)
313307 }
314- let bw = if ((bq == ""))
308+ let bt = if ((bn == ""))
315309 then 0
316310 else {
317- let bx = getString(aN, aW(bq))
318- let by = if (isDefined(bx))
319- then split_51C(value(bx), "_")
311+ let bu = getString(aK, aT(bn))
312+ let bv = if (isDefined(bu))
313+ then split_51C(value(bu), "_")
320314 else nil
321- func bz (bt,L) = {
322- let bA = value(assetInfo(fromBase58String(L)))
323- let bo = split(bA.description, "_")[aS]
324- (bt + bn(bo))
315+ func bw (bq,I) = {
316+ let bx = value(assetInfo(fromBase58String(I)))
317+ let bl = split(bx.description, "_")[aP]
318+ (bq + bk(bl))
325319 }
326320
327- let ae = by
328- let af = size(ae)
329- let ag = 0
330- func bB (ai,aj) = if ((aj >= af))
331- then ai
332- else bz(ai, ae[aj])
321+ let ab = bv
322+ let ac = size(ab)
323+ let ad = 0
324+ func by (af,ag) = if ((ag >= ac))
325+ then af
326+ else bw(af, ab[ag])
333327
334- func bC (ai,aj) = if ((aj >= af))
335- then ai
328+ func bz (af,ag) = if ((ag >= ac))
329+ then af
336330 else throw("List size exceeds 100")
337331
338- bC(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(ag, 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)
332+ bz(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(ad, 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)
339333 }
340-[bv, bw]
334+[bs, bt]
341335 }
342336
343337
344-func bD () = {
345- let bE = valueOrErrorMessage(getInteger(aP, aX), "WLGOLD is not issued yet")
346- let bF = assetBalance(aO, am)
347- let bG = assetBalance(aM, am)
348- let bH = assetBalance(aP, am)
349- let bI = assetBalance(aQ, am)
350- let bJ = ((bF + bG) + bH)
351-[bE, fraction(bJ, as, bE), bJ, bF, bG, bH, bI]
338+func bA () = {
339+ let bB = valueOrErrorMessage(getInteger(aM, aU), "WLGOLD is not issued yet")
340+ let bC = assetBalance(aL, aj)
341+ let bD = assetBalance(aJ, aj)
342+ let bE = assetBalance(aM, aj)
343+ let bF = assetBalance(aN, aj)
344+ let bG = ((bC + bD) + bE)
345+[bB, fraction(bG, ap, bB), bG, bC, bD, bE, bF]
352346 }
353347
354348
355-let bK = 500000
349+let bH = 500000
356350
357-func bL (bM) = {
358- let an = bM
359- if ($isInstanceOf(an, "List[Any]"))
351+func bI (bJ) = {
352+ let ak = bJ
353+ if ($isInstanceOf(ak, "List[Any]"))
360354 then {
361- let bN = an
362- if ((size(bN) != s))
363- then throw(("Array size is " + toString(size(bN))))
355+ let bK = ak
356+ if ((size(bK) != p))
357+ then throw(("Array size is " + toString(size(bK))))
364358 else {
365- func bO (bt,bu) = {
366- let bP = bu
367- if ($isInstanceOf(bP, "Int"))
359+ func bL (bq,br) = {
360+ let bM = br
361+ if ($isInstanceOf(bM, "Int"))
368362 then {
369- let bQ = bP
370- (bt :+ toString(bQ))
363+ let bN = bM
364+ (bq :+ toString(bN))
371365 }
372366 else throw("List type is not Int")
373367 }
374368
375- let bR = {
376- let ae = bN
377- let af = size(ae)
378- let ag = nil
379- func ah (ai,aj) = if ((aj >= af))
380- then ai
381- else bO(ai, ae[aj])
369+ let bO = {
370+ let ab = bK
371+ let ac = size(ab)
372+ let ad = nil
373+ func ae (af,ag) = if ((ag >= ac))
374+ then af
375+ else bL(af, ab[ag])
382376
383- func ak (ai,aj) = if ((aj >= af))
384- then ai
377+ func ah (af,ag) = if ((ag >= ac))
378+ then af
385379 else throw("List size exceeds 6")
386380
387- ak(ah(ah(ah(ah(ah(ah(ag, 0), 1), 2), 3), 4), 5), 6)
381+ ah(ae(ae(ae(ae(ae(ae(ad, 0), 1), 2), 3), 4), 5), 6)
388382 }
389- makeString(bR, "_")
383+ makeString(bO, "_")
390384 }
391385 }
392386 else throw("fail to cast into List")
393387 }
394388
395389
396-func bS (bM) = {
397- let an = bM
398- if ($isInstanceOf(an, "(List[Any], List[Any])"))
390+func bP (bJ) = {
391+ let ak = bJ
392+ if ($isInstanceOf(ak, "(List[Any], List[Any])"))
399393 then {
400- let bT = an
401- $Tuple2(bL(bT._1), bL(bT._2))
394+ let bQ = ak
395+ $Tuple2(bI(bQ._1), bI(bQ._2))
402396 }
403397 else throw("fail to cast into (List, List)")
404398 }
405399
406400
407-func bU (bV) = {
408- let l = addressFromString(bV)
409- let bW = if (isDefined(l))
410- then wavesBalance(value(l))
401+func bR (bS) = {
402+ let i = addressFromString(bS)
403+ let bT = if (isDefined(i))
404+ then wavesBalance(value(i))
411405 else BalanceDetails(0, 0, 0, 0)
412- let bX = if (isDefined(l))
413- then assetBalance(value(l), am)
406+ let bU = if (isDefined(i))
407+ then assetBalance(value(i), aj)
414408 else 0
415- let bY = if (isDefined(l))
416- then assetBalance(value(l), aZ)
409+ let bV = if (isDefined(i))
410+ then assetBalance(value(i), aW)
417411 else 0
418- let bZ = valueOrElse(getString(aN, N(bV)), bV)
419- let ca = valueOrElse(getString(aN, O(bV)), "")
420- let cb = valueOrElse(getString(aN, P(bV)), "")
421- let cc = valueOrElse(getString(aN, C(bV)), "")
422- let cd = bp(bV)[Y]
423- let o = valueOrElse(getInteger(aN, k(bV)), 0)
424- let ce = n(o)
425- let cf = valueOrElse(getInteger(aN, m(bV)), 0)
426-[("%s%s__customName__" + bZ), ("%s%s__referredBy__" + ca), ("%s%s__referrals__" + cb), ("%s%s__lastTxId__" + cc), ("%s%d__wavesBalance__" + toString(bW.available)), ("%s%d__wlgoldBalance__" + toString(bY)), ("%s%d__usdtBalance__" + toString(bX)), ("%s%d__stakedPieces__" + toString(cd)), ("%s%d__currentXp__" + toString(o)), ("%s%d__currentLvl__" + toString(ce)), ("%s%d__pointsToDistribute__" + toString(cf))]
412+ let bW = valueOrElse(getString(aK, K(bS)), bS)
413+ let bX = valueOrElse(getString(aK, L(bS)), "")
414+ let bY = valueOrElse(getString(aK, M(bS)), "")
415+ let bZ = valueOrElse(getString(aK, z(bS)), "")
416+ let ca = bm(bS)[V]
417+ let l = valueOrElse(getInteger(aK, h(bS)), 0)
418+ let cb = k(l)
419+ let cc = valueOrElse(getInteger(aK, j(bS)), 0)
420+[("%s%s__customName__" + bW), ("%s%s__referredBy__" + bX), ("%s%s__referrals__" + bY), ("%s%s__lastTxId__" + bZ), ("%s%d__wavesBalance__" + toString(bT.available)), ("%s%d__wlgoldBalance__" + toString(bV)), ("%s%d__usdtBalance__" + toString(bU)), ("%s%d__stakedPieces__" + toString(ca)), ("%s%d__currentXp__" + toString(l)), ("%s%d__currentLvl__" + toString(cb)), ("%s%d__pointsToDistribute__" + toString(cc))]
427421 }
428422
429423
430-func cg (L,cd) = {
431- let ch = valueOrElse(getInteger(aN, H(L)), 0)
432- let ci = valueOrElse(getInteger(aN, I(r, L)), 0)
433- let cj = (ch / 6)
434- let ck = (ch / 7)
435- $Tuple3(ch, ci, ((t + fraction(t, ((ch + cj) + (2 * ck)), 5)) + fraction(t, ci, (cd * 5))))
424+func cd (I,ca) = {
425+ let ce = valueOrElse(getInteger(aK, E(I)), 0)
426+ let cf = valueOrElse(getInteger(aK, F(o, I)), 0)
427+ let cg = (ce / 6)
428+ let ch = (ce / 7)
429+ $Tuple3(ce, cf, ((q + fraction(q, ((ce + cg) + (2 * ch)), 5)) + fraction(q, cf, (ca * 5))))
436430 }
437431
438432
439-func cl (cm) = {
440- let cn = split(cm, "_")
441- ((v * (parseIntValue(cn[1]) + 1)) * parseIntValue(cn[0]))
433+func ci (cj) = {
434+ let ck = split(cj, "_")
435+ ((s * (parseIntValue(ck[1]) + 1)) * parseIntValue(ck[0]))
442436 }
443437
444438
445-func co (cp,cq,ch) = {
446- let cm = ((toString(cq) + "_") + toString(ch))
447- let cr = toString(cl(cm))
448- let cs = valueOrElse(getString(aN, cp), ((((cm + ":0_0_0_0_0_0:0_0_0_0_0_0::0_0_") + cr) + "_") + cr))
449- split(cs, ":")
439+func cl (cm,cn,ce) = {
440+ let cj = ((toString(cn) + "_") + toString(ce))
441+ let co = toString(ci(cj))
442+ let cp = valueOrElse(getString(aK, cm), ((((cj + ":0_0_0_0_0_0:0_0_0_0_0_0::0_0_") + co) + "_") + co))
443+ split(cp, ":")
450444 }
451445
452446
453-func ct (h) = $Tuple5(valueOrElse(getInteger(aN, G(h)), -1), value(assetInfo(fromBase58String(h))).name, valueOrElse(getString(aN, T(h)), ""), valueOrElse(getInteger(aN, U(h)), -1), bh(invoke(aN, "getBackpackREADONLY", [h], nil)))
447+func cq (e) = $Tuple5(valueOrElse(getInteger(aK, D(e)), -1), value(assetInfo(fromBase58String(e))).name, valueOrElse(getString(aK, Q(e)), ""), valueOrElse(getInteger(aK, R(e)), -1), be(invoke(aK, "getBackpackREADONLY", [e], nil)))
454448
455449
456-func cu (h,cv,cw) = {
457- let bZ = valueOrElse(getString(aN, M(h)), cw._2)
458- let cx = valueOrElse(getString(aN, g(h)), "0_0_0_0_0")
459- let o = valueOrElse(getInteger(aN, i(h)), 0)
460- let ce = n(o)
461- let cf = valueOrElse(getInteger(aN, j(h)), 0)
462-[("%s%s__assetId__" + h), ("%s%s__owner__" + cv), ("%s%s__customName__" + bZ), ("%s%d__stakedTime__" + toString(cw._1)), ("%s%s__name__" + cw._2), ("%s%s__location__" + cw._3), ("%s%d__health__" + toString(cw._4)), ("%s%d__maxHealth__" + toString(p(parseIntValue(split(cx, "_")[f])))), ("%s%s__characteristics__" + cx), ("%s%d__currentXp__" + toString(o)), ("%s%d__currentLvl__" + toString(ce)), ("%s%d__pointsToDistribute__" + toString(cf)), ("%s%s__backPack__" + cw._5)]
450+func cr (e,cs,ct) = {
451+ let bW = valueOrElse(getString(aK, J(e)), ct._2)
452+ let cu = valueOrElse(getString(aK, d(e)), "0_0_0_0_0")
453+ let l = valueOrElse(getInteger(aK, f(e)), 0)
454+ let cb = k(l)
455+ let cc = valueOrElse(getInteger(aK, g(e)), 0)
456+[("%s%s__assetId__" + e), ("%s%s__owner__" + cs), ("%s%s__customName__" + bW), ("%s%d__stakedTime__" + toString(ct._1)), ("%s%s__name__" + ct._2), ("%s%s__location__" + ct._3), ("%s%d__health__" + toString(ct._4)), ("%s%d__maxHealth__" + toString(m(cb))), ("%s%s__characteristics__" + cu), ("%s%d__currentXp__" + toString(l)), ("%s%d__currentLvl__" + toString(cb)), ("%s%d__pointsToDistribute__" + toString(cc)), ("%s%s__backPack__" + ct._5)]
463457 }
464458
465459
466-func cy (L,cv,cz) = if ((L == ""))
460+func cv (I,cs,cw) = if ((I == ""))
467461 then throw("landAssetId is required")
468462 else {
469- let cA = value(assetInfo(fromBase58String(L)))
470- let cB = split(cA.description, "_")
471- let cC = if ((cA.quantity > 0))
472- then cB[aR]
473- else ("-" + cB[aR])
474- let cd = bn(cB[aS])
475- let cD = cg(L, cd)
476- let cE = (lastBlock.timestamp - cz)
477- let cF = if ((cz > 0))
478- then fraction(cE, (cD._3 * cd), u)
463+ let cx = value(assetInfo(fromBase58String(I)))
464+ let cy = split(cx.description, "_")
465+ let cz = if ((cx.quantity > 0))
466+ then cy[aO]
467+ else ("-" + cy[aO])
468+ let ca = bk(cy[aP])
469+ let cA = cd(I, ca)
470+ let cB = (lastBlock.timestamp - cw)
471+ let cC = if ((cw > 0))
472+ then fraction(cB, (cA._3 * ca), r)
479473 else 0
480- let cG = fraction(ap, (cd * (cD._1 + 1)), at)
481- let cH = if ((cz > 0))
482- then bS(invoke(aN, "splitByGlobalAndLocalWeightsREADONLY", [cG, cF, cB[aT]], nil))
483- else $Tuple2(bL(invoke(aN, "splitByGlobalWeightsREADONLY", [cG], nil)), "")
484- let bZ = valueOrElse(getString(aN, F(L)), ((cB[aU] + "-") + cB[aR]))
485-[("%s%s__assetId__" + L), ("%s%s__owner__" + cv), ("%s%s__customName__" + bZ), ("%s%d__stakedTime__" + toString(cz)), ("%s%s__description__" + makeString([cC, cB[aS], cB[aT], cB[aU]], "_")), ("%s%d__infraLevel__" + toString(cD._1)), ("%s%s__availResByType__" + cH._2), ("%s%d__availResTotal__" + toString(cF)), ("%s%s__needMaterial__" + cH._1), makeString(["%s%s", "landArtefacts", ("PRESALE:" + toString(cD._2))], aq), ("%s%s__warehouse__" + makeString(co(K(L), (cd / at), cD._1), ":")), ("%s%s__landOrder__" + valueOrElse(getString(aO, W(L)), "0@0_0@0_0@0_0@0_0@0_0@0:0@0_0@0_0@0_0@0_0@0_0@0:"))]
474+ let cD = fraction(am, (ca * (cA._1 + 1)), aq)
475+ let cE = if ((cw > 0))
476+ then bP(invoke(aK, "splitByGlobalAndLocalWeightsREADONLY", [cD, cC, cy[aQ]], nil))
477+ else $Tuple2(bI(invoke(aK, "splitByGlobalWeightsREADONLY", [cD], nil)), "")
478+ let bW = valueOrElse(getString(aK, C(I)), ((cy[aR] + "-") + cy[aO]))
479+[("%s%s__assetId__" + I), ("%s%s__owner__" + cs), ("%s%s__customName__" + bW), ("%s%d__stakedTime__" + toString(cw)), ("%s%s__description__" + makeString([cz, cy[aP], cy[aQ], cy[aR]], "_")), ("%s%d__infraLevel__" + toString(cA._1)), ("%s%s__availResByType__" + cE._2), ("%s%d__availResTotal__" + toString(cC)), ("%s%s__needMaterial__" + cE._1), makeString(["%s%s", "landArtefacts", ("PRESALE:" + toString(cA._2))], an), ("%s%s__warehouse__" + makeString(cl(H(I), (ca / aq), cA._1), ":")), ("%s%s__landOrder__" + valueOrElse(getString(aL, T(I)), "0@0_0@0_0@0_0@0_0@0_0@0:0@0_0@0_0@0_0@0_0@0_0@0:"))]
486480 }
487481
488482
489-func cI (L,cv) = if ((L == ""))
483+func cF (I,cs) = if ((I == ""))
490484 then throw("landAssetId is required")
491485 else {
492- let cA = value(assetInfo(fromBase58String(L)))
493- let cB = split(cA.description, "_")
494- let cd = bn(cB[aS])
495- let cD = cg(L, cd)
496-[("%s%s__assetId__" + L), ("%s%s__owner__" + cv), ("%s%s__warehouse__" + makeString(co(K(L), (cd / at), cD._1), ":")), ("%s%s__landOrder__" + valueOrElse(getString(aO, W(L)), "0@0_0@0_0@0_0@0_0@0_0@0:0@0_0@0_0@0_0@0_0@0_0@0:"))]
486+ let cx = value(assetInfo(fromBase58String(I)))
487+ let cy = split(cx.description, "_")
488+ let ca = bk(cy[aP])
489+ let cA = cd(I, ca)
490+[("%s%s__assetId__" + I), ("%s%s__owner__" + cs), ("%s%s__warehouse__" + makeString(cl(H(I), (ca / aq), cA._1), ":")), ("%s%s__landOrder__" + valueOrElse(getString(aL, T(I)), "0@0_0@0_0@0_0@0_0@0_0@0:0@0_0@0_0@0_0@0_0@0_0@0:"))]
497491 }
498492
499493
500-@Callable(cJ)
501-func constructorV1 (cK) = if ((cJ.caller != this))
494+@Callable(cG)
495+func constructorV1 (cH) = if ((cG.caller != this))
502496 then throw("permissions denied")
503497 else {
504- func cL (bt,cM) = (bt + "%s")
498+ func cI (bq,cJ) = (bq + "%s")
505499
506- let cN = {
507- let ae = cK
508- let af = size(ae)
509- let ag = ""
510- func ah (ai,aj) = if ((aj >= af))
511- then ai
512- else cL(ai, ae[aj])
500+ let cK = {
501+ let ab = cH
502+ let ac = size(ab)
503+ let ad = ""
504+ func ae (af,ag) = if ((ag >= ac))
505+ then af
506+ else cI(af, ab[ag])
513507
514- func ak (ai,aj) = if ((aj >= af))
515- then ai
508+ func ah (af,ag) = if ((ag >= ac))
509+ then af
516510 else throw("List size exceeds 10")
517511
518- ak(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ag, 0), 1), 2), 3), 4), 5), 6), 7), 8), 9), 10)
512+ ah(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ad, 0), 1), 2), 3), 4), 5), 6), 7), 8), 9), 10)
519513 }
520-[StringEntry(aF(), makeString(cN :: cK, aq)), StringEntry(aG(), toString(this))]
514+[StringEntry(aC(), makeString(cK :: cH, an)), StringEntry(aD(), toString(this))]
521515 }
522516
523517
524518
525-@Callable(cJ)
526-func walletInfoREADONLY (bV) = $Tuple2(nil, bU(bV))
519+@Callable(cG)
520+func walletInfoREADONLY (bS) = $Tuple2(nil, bR(bS))
527521
528522
529523
530-@Callable(cJ)
531-func duckByOwnerInfoREADONLY (cO) = {
532- let cP = getString(aN, R(cO))
533- $Tuple2(nil, if (if (isDefined(addressFromString(cO)))
534- then isDefined(cP)
524+@Callable(cG)
525+func duckByOwnerInfoREADONLY (cL) = {
526+ let cM = getString(aK, O(cL))
527+ $Tuple2(nil, if (if (isDefined(addressFromString(cL)))
528+ then isDefined(cM)
535529 else false)
536530 then {
537- let h = value(cP)
538- cu(h, cO, ct(h))
531+ let e = value(cM)
532+ cr(e, cL, cq(e))
539533 }
540- else cu("", cO, $Tuple5(-1, "", "", -1, "")))
534+ else cr("", cL, $Tuple5(-1, "", "", -1, "")))
541535 }
542536
543537
544538
545-@Callable(cJ)
546-func duckByAssetIdInfoREADONLY (h) = {
547- let cv = getString(aN, Q(h))
548- let cw = ct(h)
549- $Tuple2(nil, cu(h, if (isDefined(cv))
550- then value(cv)
551- else "", ct(h)))
539+@Callable(cG)
540+func duckByAssetIdInfoREADONLY (e) = {
541+ let cs = getString(aK, N(e))
542+ let ct = cq(e)
543+ $Tuple2(nil, cr(e, if (isDefined(cs))
544+ then value(cs)
545+ else "", cq(e)))
552546 }
553547
554548
555549
556-@Callable(cJ)
557-func landByAssetIdInfoREADONLY (L) = if ((L == ""))
550+@Callable(cG)
551+func landByAssetIdInfoREADONLY (I) = if ((I == ""))
558552 then throw("landAssetId is required")
559553 else {
560- let cz = valueOrElse(getInteger(aN, G(L)), -1)
561- let cv = if ((cz > 0))
562- then value(getString(aN, D(L)))
554+ let cw = valueOrElse(getInteger(aK, D(I)), -1)
555+ let cs = if ((cw > 0))
556+ then value(getString(aK, A(I)))
563557 else ""
564- $Tuple2(nil, cy(L, cv, cz))
558+ $Tuple2(nil, cv(I, cs, cw))
565559 }
566560
567561
568562
569-@Callable(cJ)
570-func stakedLandsByOwnerInfoREADONLY (cQ) = if ((cQ == ""))
563+@Callable(cG)
564+func stakedLandsByOwnerInfoREADONLY (cN) = if ((cN == ""))
571565 then throw("landOwnerAddress is required")
572566 else {
573- let bx = getString(aN, aW(cQ))
574- let by = if (isDefined(bx))
575- then split_51C(value(bx), "_")
567+ let bu = getString(aK, aT(cN))
568+ let bv = if (isDefined(bu))
569+ then split_51C(value(bu), "_")
576570 else nil
577- func bz (bt,L) = if ((L == ""))
571+ func bw (bq,I) = if ((I == ""))
578572 then throw("landAssetId is required")
579573 else {
580- let cz = valueOrElse(getInteger(aN, G(L)), -1)
581- (bt :+ cy(L, cQ, cz))
574+ let cw = valueOrElse(getInteger(aK, D(I)), -1)
575+ (bq :+ cv(I, cN, cw))
582576 }
583577
584- let bR = {
585- let ae = by
586- let af = size(ae)
587- let ag = nil
588- func ah (ai,aj) = if ((aj >= af))
589- then ai
590- else bz(ai, ae[aj])
578+ let bO = {
579+ let ab = bv
580+ let ac = size(ab)
581+ let ad = nil
582+ func ae (af,ag) = if ((ag >= ac))
583+ then af
584+ else bw(af, ab[ag])
591585
592- func ak (ai,aj) = if ((aj >= af))
593- then ai
586+ func ah (af,ag) = if ((ag >= ac))
587+ then af
594588 else throw("List size exceeds 100")
595589
596- ak(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ag, 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)
590+ ah(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ad, 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)
597591 }
598- $Tuple2(nil, bR)
592+ $Tuple2(nil, bO)
599593 }
600594
601595
602596
603-@Callable(cJ)
604-func landsByIdsInfoREADONLY (cR) = {
605- func bz (bt,L) = if ((L == ""))
597+@Callable(cG)
598+func landsByIdsInfoREADONLY (cO) = {
599+ func bw (bq,I) = if ((I == ""))
606600 then throw("landAssetId is required")
607601 else {
608- let cz = valueOrElse(getInteger(aN, G(L)), -1)
609- let cv = if ((cz > 0))
610- then value(getString(aN, D(L)))
602+ let cw = valueOrElse(getInteger(aK, D(I)), -1)
603+ let cs = if ((cw > 0))
604+ then value(getString(aK, A(I)))
611605 else ""
612- (bt :+ cy(L, cv, cz))
606+ (bq :+ cv(I, cs, cw))
613607 }
614608
615- let bR = {
616- let ae = cR
617- let af = size(ae)
618- let ag = nil
619- func ah (ai,aj) = if ((aj >= af))
620- then ai
621- else bz(ai, ae[aj])
609+ let bO = {
610+ let ab = cO
611+ let ac = size(ab)
612+ let ad = nil
613+ func ae (af,ag) = if ((ag >= ac))
614+ then af
615+ else bw(af, ab[ag])
622616
623- func ak (ai,aj) = if ((aj >= af))
624- then ai
617+ func ah (af,ag) = if ((ag >= ac))
618+ then af
625619 else throw("List size exceeds 100")
626620
627- ak(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ag, 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)
621+ ah(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ad, 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)
628622 }
629- $Tuple2(nil, bR)
623+ $Tuple2(nil, bO)
630624 }
631625
632626
633627
634-@Callable(cJ)
635-func warehouseOrderByAssetIdInfoREADONLY (L) = if ((L == ""))
628+@Callable(cG)
629+func warehouseOrderByAssetIdInfoREADONLY (I) = if ((I == ""))
636630 then throw("landAssetId is required")
637631 else {
638- let cz = valueOrElse(getInteger(aN, G(L)), -1)
639- let cv = if ((cz > 0))
640- then value(getString(aN, D(L)))
632+ let cw = valueOrElse(getInteger(aK, D(I)), -1)
633+ let cs = if ((cw > 0))
634+ then value(getString(aK, A(I)))
641635 else ""
642- $Tuple2(nil, cI(L, cv))
636+ $Tuple2(nil, cF(I, cs))
643637 }
644638
645639
646640
647-@Callable(cJ)
648-func ordersByLandIdsInfoREADONLY (cR) = {
649- func bz (bt,L) = if ((L == ""))
641+@Callable(cG)
642+func ordersByLandIdsInfoREADONLY (cO) = {
643+ func bw (bq,I) = if ((I == ""))
650644 then throw("landAssetId is required")
651645 else {
652- let cz = valueOrElse(getInteger(aN, G(L)), -1)
653- let cv = if ((cz > 0))
654- then value(getString(aN, D(L)))
646+ let cw = valueOrElse(getInteger(aK, D(I)), -1)
647+ let cs = if ((cw > 0))
648+ then value(getString(aK, A(I)))
655649 else ""
656- (bt :+ cI(L, cv))
650+ (bq :+ cF(I, cs))
657651 }
658652
659- let bR = {
660- let ae = cR
661- let af = size(ae)
662- let ag = nil
663- func ah (ai,aj) = if ((aj >= af))
664- then ai
665- else bz(ai, ae[aj])
653+ let bO = {
654+ let ab = cO
655+ let ac = size(ab)
656+ let ad = nil
657+ func ae (af,ag) = if ((ag >= ac))
658+ then af
659+ else bw(af, ab[ag])
666660
667- func ak (ai,aj) = if ((aj >= af))
668- then ai
661+ func ah (af,ag) = if ((ag >= ac))
662+ then af
669663 else throw("List size exceeds 40")
670664
671- ak(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ag, 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)
665+ ah(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ad, 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)
672666 }
673- $Tuple2(nil, bR)
667+ $Tuple2(nil, bO)
674668 }
675669
676670
677671
678-@Callable(cJ)
679-func cancelWarehouseOrders (cR) = if ((cJ.caller != this))
672+@Callable(cG)
673+func cancelWarehouseOrders (cO) = if ((cG.caller != this))
680674 then throw("permission denied")
681675 else {
682- let cS = getBoolean(aN, V())
683- if (if (!(isDefined(cS)))
676+ let cP = getBoolean(aK, S())
677+ if (if (!(isDefined(cP)))
684678 then true
685- else (value(cS) == false))
679+ else (value(cP) == false))
686680 then throw("Contracts should be blocked before canceling orders")
687681 else {
688- func bz (cA,L) = if ((L == ""))
682+ func bw (cx,I) = if ((I == ""))
689683 then throw("landAssetId is required")
690684 else {
691- let cT = bm(invoke(aO, "setWarehouseOrder", ["0@0_0@0_0@0_0@0_0@0_0@0:0@0_0@0_0@0_0@0_0@0_0@0:", L], nil))
692- if (if (cA)
685+ let cQ = bj(invoke(aL, "setWarehouseOrder", ["0@0_0@0_0@0_0@0_0@0_0@0:0@0_0@0_0@0_0@0_0@0_0@0:", I], nil))
686+ if (if (cx)
693687 then true
694- else cT)
695- then !(if (cA)
696- then cT
688+ else cQ)
689+ then !(if (cx)
690+ then cQ
697691 else false)
698692 else false
699693 }
700694
701- let bR = {
702- let ae = cR
703- let af = size(ae)
704- let ag = false
705- func ah (ai,aj) = if ((aj >= af))
706- then ai
707- else bz(ai, ae[aj])
695+ let bO = {
696+ let ab = cO
697+ let ac = size(ab)
698+ let ad = false
699+ func ae (af,ag) = if ((ag >= ac))
700+ then af
701+ else bw(af, ab[ag])
708702
709- func ak (ai,aj) = if ((aj >= af))
710- then ai
703+ func ah (af,ag) = if ((ag >= ac))
704+ then af
711705 else throw("List size exceeds 30")
712706
713- ak(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ag, 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)
707+ ah(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ad, 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)
714708 }
715- $Tuple2(nil, bR)
709+ $Tuple2(nil, bO)
716710 }
717711 }
718712
719713
720714
721-@Callable(cJ)
722-func fixWarehouseFormats (cR) = if ((cJ.caller != this))
715+@Callable(cG)
716+func fixWarehouseFormats (cO) = if ((cG.caller != this))
723717 then throw("permission denied")
724718 else {
725- func bz (bt,L) = if ((L == ""))
719+ func bw (bq,I) = if ((I == ""))
726720 then throw("landAssetId is required")
727- else (bt + size(bh(invoke(aN, "fixWarehouseFormat", [L], nil))))
721+ else (bq + size(be(invoke(aK, "fixWarehouseFormat", [I], nil))))
728722
729- let bR = {
730- let ae = cR
731- let af = size(ae)
732- let ag = 0
733- func ah (ai,aj) = if ((aj >= af))
734- then ai
735- else bz(ai, ae[aj])
723+ let bO = {
724+ let ab = cO
725+ let ac = size(ab)
726+ let ad = 0
727+ func ae (af,ag) = if ((ag >= ac))
728+ then af
729+ else bw(af, ab[ag])
736730
737- func ak (ai,aj) = if ((aj >= af))
738- then ai
731+ func ah (af,ag) = if ((ag >= ac))
732+ then af
739733 else throw("List size exceeds 25")
740734
741- ak(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ag, 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)
735+ ah(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ad, 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)
742736 }
743- $Tuple2(nil, bR)
737+ $Tuple2(nil, bO)
744738 }
745739
746740
747741
748-@Callable(cJ)
749-func fixStakedPieces (cU) = if ((cJ.caller != this))
742+@Callable(cG)
743+func fixStakedPieces (cR) = if ((cG.caller != this))
750744 then throw("permission denied")
751745 else {
752- func cV (bt,l) = if ((l == ""))
746+ func cS (bq,i) = if ((i == ""))
753747 then throw("address is required")
754- else (bt + bk(invoke(aN, "fixStakedPieces", [l], nil)))
748+ else (bq + bh(invoke(aK, "fixStakedPieces", [i], nil)))
755749
756- let bR = {
757- let ae = cU
758- let af = size(ae)
759- let ag = 0
760- func ah (ai,aj) = if ((aj >= af))
761- then ai
762- else cV(ai, ae[aj])
750+ let bO = {
751+ let ab = cR
752+ let ac = size(ab)
753+ let ad = 0
754+ func ae (af,ag) = if ((ag >= ac))
755+ then af
756+ else cS(af, ab[ag])
763757
764- func ak (ai,aj) = if ((aj >= af))
765- then ai
758+ func ah (af,ag) = if ((ag >= ac))
759+ then af
766760 else throw("List size exceeds 16")
767761
768- ak(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ag, 0), 1), 2), 3), 4), 5), 6), 7), 8), 9), 10), 11), 12), 13), 14), 15), 16)
762+ ah(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ad, 0), 1), 2), 3), 4), 5), 6), 7), 8), 9), 10), 11), 12), 13), 14), 15), 16)
769763 }
770- $Tuple2(nil, bR)
764+ $Tuple2(nil, bO)
771765 }
772766
773767
774768
775-@Callable(cJ)
776-func sendUsdtPrize (cO) = if ((cJ.caller != aN))
769+@Callable(cG)
770+func sendUsdtPrize (cL) = if ((cG.caller != aK))
777771 then throw("permission denied")
778772 else {
779- let cW = fraction(assetBalance(this, am), bK, ar)
780- $Tuple2([ScriptTransfer(addressFromStringValue(cO), cW, am)], cW)
773+ let cT = fraction(assetBalance(this, aj), bH, ao)
774+ $Tuple2([ScriptTransfer(addressFromStringValue(cL), cT, aj)], cT)
781775 }
782776
783777
784778
785-@Callable(cJ)
779+@Callable(cG)
786780 func getEmergencyServiceDataREADONLY () = {
787- let cX = getString(aO, X())
788- let cY = if (isDefined(cX))
789- then split(value(cX), "_")
781+ let cU = getString(aL, U())
782+ let cV = if (isDefined(cU))
783+ then split(value(cU), "_")
790784 else nil
791- func cZ (bt,da) = {
792- let bl = bt._2
793- let aa = split(da, "_")
794- let db = parseIntValue(aa[B])
795- let dc = if ((bl == 0))
796- then (x * db)
785+ func cW (bq,cX) = {
786+ let bi = bq._2
787+ let X = split(cX, "_")
788+ let cY = parseIntValue(X[y])
789+ let cZ = if ((bi == 0))
790+ then (u * cY)
797791 else 0
798- let dd = if ((size(cY) > bl))
799- then parseIntValue(cY[bl])
792+ let da = if ((size(cV) > bi))
793+ then parseIntValue(cV[bi])
800794 else 0
801- let de = Z(aa)
802- let df = fraction((de * y), w, (10 * db))
803- let dg = fraction((de * z), w, (10 * db))
804- let dh = makeString([toString(dc), toString(dd), toString(df), toString(dg)], "_")
805- $Tuple2((bt._1 :+ dh), (bl + 1))
795+ let db = W(X)
796+ let dc = fraction((db * v), t, (10 * cY))
797+ let dd = fraction((db * w), t, (10 * cY))
798+ let de = makeString([toString(cZ), toString(da), toString(dc), toString(dd)], "_")
799+ $Tuple2((bq._1 :+ de), (bi + 1))
806800 }
807801
808- let bj = makeString_2C(( let ae = A
809- let af = size(ae)
810- let ag = $Tuple2(nil, 0)
811- func ah (ai,aj) = if ((aj >= af))
812- then ai
813- else cZ(ai, ae[aj])
802+ let bg = makeString_2C(( let ab = x
803+ let ac = size(ab)
804+ let ad = $Tuple2(nil, 0)
805+ func ae (af,ag) = if ((ag >= ac))
806+ then af
807+ else cW(af, ab[ag])
814808
815- func ak (ai,aj) = if ((aj >= af))
816- then ai
809+ func ah (af,ag) = if ((ag >= ac))
810+ then af
817811 else throw("List size exceeds 50")
818812
819- ak(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ag, 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))._1, ":")
820- let di = ("%s%s__emergencyServiceData__" + bj)
821- $Tuple2(nil, di)
813+ ah(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ad, 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))._1, ":")
814+ let df = ("%s%s__emergencyServiceData__" + bg)
815+ $Tuple2(nil, df)
822816 }
823817
824818
825819
826-@Callable(cJ)
820+@Callable(cG)
827821 func wlgStatsREADONLY () = {
828- let dj = bD()
829- $Tuple2(nil, [("%s%s%d__wlgAmount__" + toString(dj[ba])), ("%s%s%d__wlgPrice__" + toString(dj[bb])), ("%s%s%d__usdtFunds__" + toString(dj[bc])), ("%s%s%d__usdtEconomy__" + toString(dj[bd])), ("%s%s%d__usdtActivity__" + toString(dj[be])), ("%s%s%d__usdtArbitrage__" + toString(dj[bf])), ("%s%s%d__usdtPool__" + toString(dj[bg]))])
822+ let dg = bA()
823+ $Tuple2(nil, [("%s%s%d__wlgAmount__" + toString(dg[aX])), ("%s%s%d__wlgPrice__" + toString(dg[aY])), ("%s%s%d__usdtFunds__" + toString(dg[aZ])), ("%s%s%d__usdtEconomy__" + toString(dg[ba])), ("%s%s%d__usdtActivity__" + toString(dg[bb])), ("%s%s%d__usdtArbitrage__" + toString(dg[bc])), ("%s%s%d__usdtPool__" + toString(dg[bd]))])
830824 }
831825
832826
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 6 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let a = 100000000
55
66 let b = 3200
77
88 let c = 4000
99
10-let d = 100
11-
12-let e = 10391
13-
14-let f = 0
15-
16-func g (h) = ("duckChars_" + h)
10+func d (e) = ("duckChars_" + e)
1711
1812
19-func i (h) = ("duckXP_" + h)
13+func f (e) = ("duckXP_" + e)
2014
2115
22-func j (h) = ("duckFreePoints_" + h)
16+func g (e) = ("duckFreePoints_" + e)
2317
2418
25-func k (l) = ("userXP_" + l)
19+func h (i) = ("userXP_" + i)
2620
2721
28-func m (l) = ("userFreePoints_" + l)
22+func j (i) = ("userFreePoints_" + i)
2923
3024
31-func n (o) = fraction(b, pow(o, 0, c, 4, 4, DOWN), a)
25+func k (l) = fraction(b, pow(l, 0, c, 4, 4, DOWN), a)
3226
3327
34-func p (q) = fraction(d, pow(e, 4, q, 0, 8, DOWN), a)
28+func m (n) = (100 + n)
3529
3630
37-let r = "PRESALE"
31+let o = "PRESALE"
3832
39-let s = 6
33+let p = 6
4034
41-let t = 3456000
35+let q = 3456000
4236
43-let u = 86400000
37+let r = 86400000
4438
45-let v = 10000000000
39+let s = 10000000000
4640
47-let w = 39637
41+let t = 39637
4842
49-let x = 3
43+let u = 3
5044
51-let y = 4
45+let v = 4
5246
53-let z = 10
47+let w = 10
5448
55-let A = ["1_1_1_2_2_5_1_10_0", "2_2_2_4_4_10_1_10_0", "3_3_3_6_6_15_1_10_0", "2_5_5_2_7_5_2_100_1", "4_10_10_4_14_10_2_100_1", "6_15_15_6_21_15_2_100_1", "1_1_1_1_1_8_1_10_2", "2_2_2_2_2_16_1_10_2", "3_3_3_3_3_24_1_10_2", "9_9_1_5_5_1_5_100_3", "18_18_2_10_10_2_5_100_3", "27_27_3_15_15_3_5_100_3", "2_2_1_2_2_2_1_10_4", "4_4_2_4_4_4_1_10_4", "6_6_3_6_6_6_1_10_4"]
49+let x = ["1_1_1_2_2_5_1_10_0", "2_2_2_4_4_10_1_10_0", "3_3_3_6_6_15_1_10_0", "2_5_5_2_7_5_2_100_1", "4_10_10_4_14_10_2_100_1", "6_15_15_6_21_15_2_100_1", "1_1_1_1_1_8_1_10_2", "2_2_2_2_2_16_1_10_2", "3_3_3_3_3_24_1_10_2", "9_9_1_5_5_1_5_100_3", "18_18_2_10_10_2_5_100_3", "27_27_3_15_15_3_5_100_3", "2_2_1_2_2_2_1_10_4", "4_4_2_4_4_4_1_10_4", "6_6_3_6_6_6_1_10_4"]
5650
57-let B = 7
51+let y = 7
5852
59-func C (l) = ("lastTxIdByUser_" + l)
53+func z (i) = ("lastTxIdByUser_" + i)
6054
6155
62-func D (E) = ("nftOwner_" + E)
56+func A (B) = ("nftOwner_" + B)
6357
6458
65-func F (E) = ("landCustomNameByAssetId_" + E)
59+func C (B) = ("landCustomNameByAssetId_" + B)
6660
6761
68-func G (E) = ("stakedTime_" + E)
62+func D (B) = ("stakedTime_" + B)
6963
7064
71-func H (E) = ("infraLevel_" + E)
65+func E (B) = ("infraLevel_" + B)
7266
7367
74-func I (J,E) = makeString(["landArtStatus", J, E], "_")
68+func F (G,B) = makeString(["landArtStatus", G, B], "_")
7569
7670
77-func K (L) = ("wareHouse_" + L)
71+func H (I) = ("wareHouse_" + I)
7872
7973
80-func M (E) = ("duckCustomNameByAssetId_" + E)
74+func J (B) = ("duckCustomNameByAssetId_" + B)
8175
8276
83-func N (l) = ("accountCustomNameByAddr_" + l)
77+func K (i) = ("accountCustomNameByAddr_" + i)
8478
8579
86-func O (l) = ("accRefBy_" + l)
80+func L (i) = ("accRefBy_" + i)
8781
8882
89-func P (l) = ("accReferrals_" + l)
83+func M (i) = ("accReferrals_" + i)
9084
9185
92-func Q (E) = ("duckOwner_" + E)
86+func N (B) = ("duckOwner_" + B)
9387
9488
95-func R (S) = ("stakedDuckByOwner_" + S)
89+func O (P) = ("stakedDuckByOwner_" + P)
9690
9791
98-func T (h) = ("duckLocation_" + h)
92+func Q (e) = ("duckLocation_" + e)
9993
10094
101-func U (h) = ("duckHealth_" + h)
95+func R (e) = ("duckHealth_" + e)
10296
10397
104-func V () = "contractsBlocked"
98+func S () = "contractsBlocked"
10599
106100
107-func W (L) = ("landOrder_" + L)
101+func T (I) = ("landOrder_" + I)
108102
109103
110-func X () = "emergencyWarehouseProducts"
104+func U () = "emergencyWarehouseProducts"
111105
112106
113-let Y = 1
107+let V = 1
114108
115-func Z (aa) = {
116- func ab (ac,ad) = (ac + parseIntValue(aa[ad]))
109+func W (X) = {
110+ func Y (Z,aa) = (Z + parseIntValue(X[aa]))
117111
118- let ae = [0, 1, 2, 3, 4, 5]
119- let af = size(ae)
120- let ag = 0
121- func ah (ai,aj) = if ((aj >= af))
122- then ai
123- else ab(ai, ae[aj])
112+ let ab = [0, 1, 2, 3, 4, 5]
113+ let ac = size(ab)
114+ let ad = 0
115+ func ae (af,ag) = if ((ag >= ac))
116+ then af
117+ else Y(af, ab[ag])
124118
125- func ak (ai,aj) = if ((aj >= af))
126- then ai
119+ func ah (af,ag) = if ((ag >= ac))
120+ then af
127121 else throw("List size exceeds 6")
128122
129- ak(ah(ah(ah(ah(ah(ah(ag, 0), 1), 2), 3), 4), 5), 6)
123+ ah(ae(ae(ae(ae(ae(ae(ad, 0), 1), 2), 3), 4), 5), 6)
130124 }
131125
132126
133-let al = take(drop(this.bytes, 1), 1)
127+let ai = take(drop(this.bytes, 1), 1)
134128
135-let am = {
136- let an = al
137- if ((base58'2W' == an))
129+let aj = {
130+ let ak = ai
131+ if ((base58'2W' == ak))
138132 then base58'9wc3LXNA4TEBsXyKtoLE9mrbDD7WMHXvXrCjZvabLAsi'
139- else if ((base58'2T' == an))
133+ else if ((base58'2T' == ak))
140134 then base58'6mWwf9mZBjVgkC54idpyaZLQfAosD914wT8fGf2iiY63'
141135 else throw("Unknown chain")
142136 }
143137
144-let ao = {
145- let an = al
146- if ((base58'2W' == an))
138+let al = {
139+ let ak = ai
140+ if ((base58'2W' == ak))
147141 then "3PQCuvFbvh4LkPUnrnU1z3jnbA1p9m3WNhv"
148- else if ((base58'2T' == an))
142+ else if ((base58'2T' == ak))
149143 then "3MumkGGztCKAXpWDqxkddofqXSUbqQkvSJy"
150144 else throw("Unknown chain")
151145 }
152146
153-let ap = {
154- let an = al
155- if ((base58'2W' == an))
147+let am = {
148+ let ak = ai
149+ if ((base58'2W' == ak))
156150 then 10000000000
157- else if ((base58'2T' == an))
151+ else if ((base58'2T' == ak))
158152 then 100000000
159153 else throw("Unknown chain")
160154 }
161155
162-let aq = "__"
156+let an = "__"
163157
164-let ar = 1000000
158+let ao = 1000000
165159
166-let as = 100000000
160+let ap = 100000000
167161
168-let at = 25
162+let aq = 25
169163
170-let au = 100
164+let ar = 100
171165
172-let av = 225
166+let as = 225
173167
174-let aw = 400
168+let at = 400
175169
176-let ax = 625
170+let au = 625
177171
178-func ay (az,aA) = valueOrErrorMessage(getString(az, aA), makeString(["mandatory ", toString(az), ".", aA, " is not defined"], ""))
172+func av (aw,ax) = valueOrErrorMessage(getString(aw, ax), makeString(["mandatory ", toString(aw), ".", ax, " is not defined"], ""))
179173
180174
181-let aB = 1
175+let ay = 1
182176
183-let aC = 2
177+let az = 2
184178
185-let aD = 4
179+let aA = 4
186180
187-let aE = 5
181+let aB = 5
188182
189-func aF () = "%s__restConfig"
183+func aC () = "%s__restConfig"
190184
191185
192-func aG () = "%s__restAddr"
186+func aD () = "%s__restAddr"
193187
194188
195-func aH (aI) = split_4C(ay(aI, aF()), aq)
189+func aE (aF) = split_4C(av(aF, aC()), an)
196190
197191
198-func aJ (aK,aL) = valueOrErrorMessage(addressFromString(aK[aL]), ("Rest cfg doesn't contain address at index " + toString(aL)))
192+func aG (aH,aI) = valueOrErrorMessage(addressFromString(aH[aI]), ("Rest cfg doesn't contain address at index " + toString(aI)))
199193
200194
201-let aM = addressFromStringValue(valueOrElse(getString(this, aG()), ao))
195+let aJ = addressFromStringValue(valueOrElse(getString(this, aD()), al))
202196
203-let aK = aH(aM)
197+let aH = aE(aJ)
204198
205-let aN = aJ(aK, aB)
199+let aK = aG(aH, ay)
206200
207-let aO = aJ(aK, aC)
201+let aL = aG(aH, az)
208202
209-let aP = aJ(aK, aD)
203+let aM = aG(aH, aA)
210204
211-let aQ = aJ(aK, aE)
205+let aN = aG(aH, aB)
212206
213-let aR = 0
207+let aO = 0
214208
215-let aS = 1
209+let aP = 1
216210
217-let aT = 2
211+let aQ = 2
218212
219-let aU = 3
213+let aR = 3
220214
221-func aV () = "resTypesProportions"
215+func aS () = "resTypesProportions"
222216
223217
224-func aW (S) = ("stakedLandsByOwner_" + S)
218+func aT (P) = ("stakedLandsByOwner_" + P)
225219
226220
227-let aX = "wlg_issuedAmount"
221+let aU = "wlg_issuedAmount"
228222
229-let aY = "wlg_assetId"
223+let aV = "wlg_assetId"
230224
231-let aZ = valueOrErrorMessage(getBinary(aP, aY), "Not initialized yet")
225+let aW = valueOrErrorMessage(getBinary(aM, aV), "Not initialized yet")
232226
233-let ba = 0
227+let aX = 0
234228
235-let bb = 1
229+let aY = 1
236230
237-let bc = 2
231+let aZ = 2
238232
239-let bd = 3
233+let ba = 3
240234
241-let be = 4
235+let bb = 4
242236
243-let bf = 5
237+let bc = 5
244238
245-let bg = 6
239+let bd = 6
246240
247-func bh (bi) = {
248- let an = bi
249- if ($isInstanceOf(an, "String"))
241+func be (bf) = {
242+ let ak = bf
243+ if ($isInstanceOf(ak, "String"))
250244 then {
251- let bj = an
252- bj
245+ let bg = ak
246+ bg
253247 }
254248 else throw("fail to cast into String")
255249 }
256250
257251
258-func bk (bi) = {
259- let an = bi
260- if ($isInstanceOf(an, "Int"))
252+func bh (bf) = {
253+ let ak = bf
254+ if ($isInstanceOf(ak, "Int"))
261255 then {
262- let bl = an
263- bl
256+ let bi = ak
257+ bi
264258 }
265259 else throw("fail to cast into Int")
266260 }
267261
268262
269-func bm (bi) = {
270- let an = bi
271- if ($isInstanceOf(an, "Boolean"))
263+func bj (bf) = {
264+ let ak = bf
265+ if ($isInstanceOf(ak, "Boolean"))
272266 then {
273- let bj = an
274- bj
267+ let bg = ak
268+ bg
275269 }
276270 else throw("fail to cast into Boolean")
277271 }
278272
279273
280-func bn (bo) = {
281- let an = bo
282- if (("S" == an))
283- then at
284- else if (("M" == an))
285- then au
286- else if (("L" == an))
287- then av
288- else if (("XL" == an))
289- then aw
290- else if (("XXL" == an))
291- then ax
274+func bk (bl) = {
275+ let ak = bl
276+ if (("S" == ak))
277+ then aq
278+ else if (("M" == ak))
279+ then ar
280+ else if (("L" == ak))
281+ then as
282+ else if (("XL" == ak))
283+ then at
284+ else if (("XXL" == ak))
285+ then au
292286 else throw("Unknown land size")
293287 }
294288
295289
296-func bp (bq) = {
297- let br = split(valueOrElse(getString(aN, aV()), "0_0_0_0_0_0"), "_")
298- func bs (bt,bu) = (bt + parseIntValue(bu))
290+func bm (bn) = {
291+ let bo = split(valueOrElse(getString(aK, aS()), "0_0_0_0_0_0"), "_")
292+ func bp (bq,br) = (bq + parseIntValue(br))
299293
300- let bv = {
301- let ae = br
302- let af = size(ae)
303- let ag = 0
304- func ah (ai,aj) = if ((aj >= af))
305- then ai
306- else bs(ai, ae[aj])
294+ let bs = {
295+ let ab = bo
296+ let ac = size(ab)
297+ let ad = 0
298+ func ae (af,ag) = if ((ag >= ac))
299+ then af
300+ else bp(af, ab[ag])
307301
308- func ak (ai,aj) = if ((aj >= af))
309- then ai
302+ func ah (af,ag) = if ((ag >= ac))
303+ then af
310304 else throw("List size exceeds 6")
311305
312- ak(ah(ah(ah(ah(ah(ah(ag, 0), 1), 2), 3), 4), 5), 6)
306+ ah(ae(ae(ae(ae(ae(ae(ad, 0), 1), 2), 3), 4), 5), 6)
313307 }
314- let bw = if ((bq == ""))
308+ let bt = if ((bn == ""))
315309 then 0
316310 else {
317- let bx = getString(aN, aW(bq))
318- let by = if (isDefined(bx))
319- then split_51C(value(bx), "_")
311+ let bu = getString(aK, aT(bn))
312+ let bv = if (isDefined(bu))
313+ then split_51C(value(bu), "_")
320314 else nil
321- func bz (bt,L) = {
322- let bA = value(assetInfo(fromBase58String(L)))
323- let bo = split(bA.description, "_")[aS]
324- (bt + bn(bo))
315+ func bw (bq,I) = {
316+ let bx = value(assetInfo(fromBase58String(I)))
317+ let bl = split(bx.description, "_")[aP]
318+ (bq + bk(bl))
325319 }
326320
327- let ae = by
328- let af = size(ae)
329- let ag = 0
330- func bB (ai,aj) = if ((aj >= af))
331- then ai
332- else bz(ai, ae[aj])
321+ let ab = bv
322+ let ac = size(ab)
323+ let ad = 0
324+ func by (af,ag) = if ((ag >= ac))
325+ then af
326+ else bw(af, ab[ag])
333327
334- func bC (ai,aj) = if ((aj >= af))
335- then ai
328+ func bz (af,ag) = if ((ag >= ac))
329+ then af
336330 else throw("List size exceeds 100")
337331
338- bC(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(bB(ag, 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)
332+ bz(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(by(ad, 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)
339333 }
340-[bv, bw]
334+[bs, bt]
341335 }
342336
343337
344-func bD () = {
345- let bE = valueOrErrorMessage(getInteger(aP, aX), "WLGOLD is not issued yet")
346- let bF = assetBalance(aO, am)
347- let bG = assetBalance(aM, am)
348- let bH = assetBalance(aP, am)
349- let bI = assetBalance(aQ, am)
350- let bJ = ((bF + bG) + bH)
351-[bE, fraction(bJ, as, bE), bJ, bF, bG, bH, bI]
338+func bA () = {
339+ let bB = valueOrErrorMessage(getInteger(aM, aU), "WLGOLD is not issued yet")
340+ let bC = assetBalance(aL, aj)
341+ let bD = assetBalance(aJ, aj)
342+ let bE = assetBalance(aM, aj)
343+ let bF = assetBalance(aN, aj)
344+ let bG = ((bC + bD) + bE)
345+[bB, fraction(bG, ap, bB), bG, bC, bD, bE, bF]
352346 }
353347
354348
355-let bK = 500000
349+let bH = 500000
356350
357-func bL (bM) = {
358- let an = bM
359- if ($isInstanceOf(an, "List[Any]"))
351+func bI (bJ) = {
352+ let ak = bJ
353+ if ($isInstanceOf(ak, "List[Any]"))
360354 then {
361- let bN = an
362- if ((size(bN) != s))
363- then throw(("Array size is " + toString(size(bN))))
355+ let bK = ak
356+ if ((size(bK) != p))
357+ then throw(("Array size is " + toString(size(bK))))
364358 else {
365- func bO (bt,bu) = {
366- let bP = bu
367- if ($isInstanceOf(bP, "Int"))
359+ func bL (bq,br) = {
360+ let bM = br
361+ if ($isInstanceOf(bM, "Int"))
368362 then {
369- let bQ = bP
370- (bt :+ toString(bQ))
363+ let bN = bM
364+ (bq :+ toString(bN))
371365 }
372366 else throw("List type is not Int")
373367 }
374368
375- let bR = {
376- let ae = bN
377- let af = size(ae)
378- let ag = nil
379- func ah (ai,aj) = if ((aj >= af))
380- then ai
381- else bO(ai, ae[aj])
369+ let bO = {
370+ let ab = bK
371+ let ac = size(ab)
372+ let ad = nil
373+ func ae (af,ag) = if ((ag >= ac))
374+ then af
375+ else bL(af, ab[ag])
382376
383- func ak (ai,aj) = if ((aj >= af))
384- then ai
377+ func ah (af,ag) = if ((ag >= ac))
378+ then af
385379 else throw("List size exceeds 6")
386380
387- ak(ah(ah(ah(ah(ah(ah(ag, 0), 1), 2), 3), 4), 5), 6)
381+ ah(ae(ae(ae(ae(ae(ae(ad, 0), 1), 2), 3), 4), 5), 6)
388382 }
389- makeString(bR, "_")
383+ makeString(bO, "_")
390384 }
391385 }
392386 else throw("fail to cast into List")
393387 }
394388
395389
396-func bS (bM) = {
397- let an = bM
398- if ($isInstanceOf(an, "(List[Any], List[Any])"))
390+func bP (bJ) = {
391+ let ak = bJ
392+ if ($isInstanceOf(ak, "(List[Any], List[Any])"))
399393 then {
400- let bT = an
401- $Tuple2(bL(bT._1), bL(bT._2))
394+ let bQ = ak
395+ $Tuple2(bI(bQ._1), bI(bQ._2))
402396 }
403397 else throw("fail to cast into (List, List)")
404398 }
405399
406400
407-func bU (bV) = {
408- let l = addressFromString(bV)
409- let bW = if (isDefined(l))
410- then wavesBalance(value(l))
401+func bR (bS) = {
402+ let i = addressFromString(bS)
403+ let bT = if (isDefined(i))
404+ then wavesBalance(value(i))
411405 else BalanceDetails(0, 0, 0, 0)
412- let bX = if (isDefined(l))
413- then assetBalance(value(l), am)
406+ let bU = if (isDefined(i))
407+ then assetBalance(value(i), aj)
414408 else 0
415- let bY = if (isDefined(l))
416- then assetBalance(value(l), aZ)
409+ let bV = if (isDefined(i))
410+ then assetBalance(value(i), aW)
417411 else 0
418- let bZ = valueOrElse(getString(aN, N(bV)), bV)
419- let ca = valueOrElse(getString(aN, O(bV)), "")
420- let cb = valueOrElse(getString(aN, P(bV)), "")
421- let cc = valueOrElse(getString(aN, C(bV)), "")
422- let cd = bp(bV)[Y]
423- let o = valueOrElse(getInteger(aN, k(bV)), 0)
424- let ce = n(o)
425- let cf = valueOrElse(getInteger(aN, m(bV)), 0)
426-[("%s%s__customName__" + bZ), ("%s%s__referredBy__" + ca), ("%s%s__referrals__" + cb), ("%s%s__lastTxId__" + cc), ("%s%d__wavesBalance__" + toString(bW.available)), ("%s%d__wlgoldBalance__" + toString(bY)), ("%s%d__usdtBalance__" + toString(bX)), ("%s%d__stakedPieces__" + toString(cd)), ("%s%d__currentXp__" + toString(o)), ("%s%d__currentLvl__" + toString(ce)), ("%s%d__pointsToDistribute__" + toString(cf))]
412+ let bW = valueOrElse(getString(aK, K(bS)), bS)
413+ let bX = valueOrElse(getString(aK, L(bS)), "")
414+ let bY = valueOrElse(getString(aK, M(bS)), "")
415+ let bZ = valueOrElse(getString(aK, z(bS)), "")
416+ let ca = bm(bS)[V]
417+ let l = valueOrElse(getInteger(aK, h(bS)), 0)
418+ let cb = k(l)
419+ let cc = valueOrElse(getInteger(aK, j(bS)), 0)
420+[("%s%s__customName__" + bW), ("%s%s__referredBy__" + bX), ("%s%s__referrals__" + bY), ("%s%s__lastTxId__" + bZ), ("%s%d__wavesBalance__" + toString(bT.available)), ("%s%d__wlgoldBalance__" + toString(bV)), ("%s%d__usdtBalance__" + toString(bU)), ("%s%d__stakedPieces__" + toString(ca)), ("%s%d__currentXp__" + toString(l)), ("%s%d__currentLvl__" + toString(cb)), ("%s%d__pointsToDistribute__" + toString(cc))]
427421 }
428422
429423
430-func cg (L,cd) = {
431- let ch = valueOrElse(getInteger(aN, H(L)), 0)
432- let ci = valueOrElse(getInteger(aN, I(r, L)), 0)
433- let cj = (ch / 6)
434- let ck = (ch / 7)
435- $Tuple3(ch, ci, ((t + fraction(t, ((ch + cj) + (2 * ck)), 5)) + fraction(t, ci, (cd * 5))))
424+func cd (I,ca) = {
425+ let ce = valueOrElse(getInteger(aK, E(I)), 0)
426+ let cf = valueOrElse(getInteger(aK, F(o, I)), 0)
427+ let cg = (ce / 6)
428+ let ch = (ce / 7)
429+ $Tuple3(ce, cf, ((q + fraction(q, ((ce + cg) + (2 * ch)), 5)) + fraction(q, cf, (ca * 5))))
436430 }
437431
438432
439-func cl (cm) = {
440- let cn = split(cm, "_")
441- ((v * (parseIntValue(cn[1]) + 1)) * parseIntValue(cn[0]))
433+func ci (cj) = {
434+ let ck = split(cj, "_")
435+ ((s * (parseIntValue(ck[1]) + 1)) * parseIntValue(ck[0]))
442436 }
443437
444438
445-func co (cp,cq,ch) = {
446- let cm = ((toString(cq) + "_") + toString(ch))
447- let cr = toString(cl(cm))
448- let cs = valueOrElse(getString(aN, cp), ((((cm + ":0_0_0_0_0_0:0_0_0_0_0_0::0_0_") + cr) + "_") + cr))
449- split(cs, ":")
439+func cl (cm,cn,ce) = {
440+ let cj = ((toString(cn) + "_") + toString(ce))
441+ let co = toString(ci(cj))
442+ let cp = valueOrElse(getString(aK, cm), ((((cj + ":0_0_0_0_0_0:0_0_0_0_0_0::0_0_") + co) + "_") + co))
443+ split(cp, ":")
450444 }
451445
452446
453-func ct (h) = $Tuple5(valueOrElse(getInteger(aN, G(h)), -1), value(assetInfo(fromBase58String(h))).name, valueOrElse(getString(aN, T(h)), ""), valueOrElse(getInteger(aN, U(h)), -1), bh(invoke(aN, "getBackpackREADONLY", [h], nil)))
447+func cq (e) = $Tuple5(valueOrElse(getInteger(aK, D(e)), -1), value(assetInfo(fromBase58String(e))).name, valueOrElse(getString(aK, Q(e)), ""), valueOrElse(getInteger(aK, R(e)), -1), be(invoke(aK, "getBackpackREADONLY", [e], nil)))
454448
455449
456-func cu (h,cv,cw) = {
457- let bZ = valueOrElse(getString(aN, M(h)), cw._2)
458- let cx = valueOrElse(getString(aN, g(h)), "0_0_0_0_0")
459- let o = valueOrElse(getInteger(aN, i(h)), 0)
460- let ce = n(o)
461- let cf = valueOrElse(getInteger(aN, j(h)), 0)
462-[("%s%s__assetId__" + h), ("%s%s__owner__" + cv), ("%s%s__customName__" + bZ), ("%s%d__stakedTime__" + toString(cw._1)), ("%s%s__name__" + cw._2), ("%s%s__location__" + cw._3), ("%s%d__health__" + toString(cw._4)), ("%s%d__maxHealth__" + toString(p(parseIntValue(split(cx, "_")[f])))), ("%s%s__characteristics__" + cx), ("%s%d__currentXp__" + toString(o)), ("%s%d__currentLvl__" + toString(ce)), ("%s%d__pointsToDistribute__" + toString(cf)), ("%s%s__backPack__" + cw._5)]
450+func cr (e,cs,ct) = {
451+ let bW = valueOrElse(getString(aK, J(e)), ct._2)
452+ let cu = valueOrElse(getString(aK, d(e)), "0_0_0_0_0")
453+ let l = valueOrElse(getInteger(aK, f(e)), 0)
454+ let cb = k(l)
455+ let cc = valueOrElse(getInteger(aK, g(e)), 0)
456+[("%s%s__assetId__" + e), ("%s%s__owner__" + cs), ("%s%s__customName__" + bW), ("%s%d__stakedTime__" + toString(ct._1)), ("%s%s__name__" + ct._2), ("%s%s__location__" + ct._3), ("%s%d__health__" + toString(ct._4)), ("%s%d__maxHealth__" + toString(m(cb))), ("%s%s__characteristics__" + cu), ("%s%d__currentXp__" + toString(l)), ("%s%d__currentLvl__" + toString(cb)), ("%s%d__pointsToDistribute__" + toString(cc)), ("%s%s__backPack__" + ct._5)]
463457 }
464458
465459
466-func cy (L,cv,cz) = if ((L == ""))
460+func cv (I,cs,cw) = if ((I == ""))
467461 then throw("landAssetId is required")
468462 else {
469- let cA = value(assetInfo(fromBase58String(L)))
470- let cB = split(cA.description, "_")
471- let cC = if ((cA.quantity > 0))
472- then cB[aR]
473- else ("-" + cB[aR])
474- let cd = bn(cB[aS])
475- let cD = cg(L, cd)
476- let cE = (lastBlock.timestamp - cz)
477- let cF = if ((cz > 0))
478- then fraction(cE, (cD._3 * cd), u)
463+ let cx = value(assetInfo(fromBase58String(I)))
464+ let cy = split(cx.description, "_")
465+ let cz = if ((cx.quantity > 0))
466+ then cy[aO]
467+ else ("-" + cy[aO])
468+ let ca = bk(cy[aP])
469+ let cA = cd(I, ca)
470+ let cB = (lastBlock.timestamp - cw)
471+ let cC = if ((cw > 0))
472+ then fraction(cB, (cA._3 * ca), r)
479473 else 0
480- let cG = fraction(ap, (cd * (cD._1 + 1)), at)
481- let cH = if ((cz > 0))
482- then bS(invoke(aN, "splitByGlobalAndLocalWeightsREADONLY", [cG, cF, cB[aT]], nil))
483- else $Tuple2(bL(invoke(aN, "splitByGlobalWeightsREADONLY", [cG], nil)), "")
484- let bZ = valueOrElse(getString(aN, F(L)), ((cB[aU] + "-") + cB[aR]))
485-[("%s%s__assetId__" + L), ("%s%s__owner__" + cv), ("%s%s__customName__" + bZ), ("%s%d__stakedTime__" + toString(cz)), ("%s%s__description__" + makeString([cC, cB[aS], cB[aT], cB[aU]], "_")), ("%s%d__infraLevel__" + toString(cD._1)), ("%s%s__availResByType__" + cH._2), ("%s%d__availResTotal__" + toString(cF)), ("%s%s__needMaterial__" + cH._1), makeString(["%s%s", "landArtefacts", ("PRESALE:" + toString(cD._2))], aq), ("%s%s__warehouse__" + makeString(co(K(L), (cd / at), cD._1), ":")), ("%s%s__landOrder__" + valueOrElse(getString(aO, W(L)), "0@0_0@0_0@0_0@0_0@0_0@0:0@0_0@0_0@0_0@0_0@0_0@0:"))]
474+ let cD = fraction(am, (ca * (cA._1 + 1)), aq)
475+ let cE = if ((cw > 0))
476+ then bP(invoke(aK, "splitByGlobalAndLocalWeightsREADONLY", [cD, cC, cy[aQ]], nil))
477+ else $Tuple2(bI(invoke(aK, "splitByGlobalWeightsREADONLY", [cD], nil)), "")
478+ let bW = valueOrElse(getString(aK, C(I)), ((cy[aR] + "-") + cy[aO]))
479+[("%s%s__assetId__" + I), ("%s%s__owner__" + cs), ("%s%s__customName__" + bW), ("%s%d__stakedTime__" + toString(cw)), ("%s%s__description__" + makeString([cz, cy[aP], cy[aQ], cy[aR]], "_")), ("%s%d__infraLevel__" + toString(cA._1)), ("%s%s__availResByType__" + cE._2), ("%s%d__availResTotal__" + toString(cC)), ("%s%s__needMaterial__" + cE._1), makeString(["%s%s", "landArtefacts", ("PRESALE:" + toString(cA._2))], an), ("%s%s__warehouse__" + makeString(cl(H(I), (ca / aq), cA._1), ":")), ("%s%s__landOrder__" + valueOrElse(getString(aL, T(I)), "0@0_0@0_0@0_0@0_0@0_0@0:0@0_0@0_0@0_0@0_0@0_0@0:"))]
486480 }
487481
488482
489-func cI (L,cv) = if ((L == ""))
483+func cF (I,cs) = if ((I == ""))
490484 then throw("landAssetId is required")
491485 else {
492- let cA = value(assetInfo(fromBase58String(L)))
493- let cB = split(cA.description, "_")
494- let cd = bn(cB[aS])
495- let cD = cg(L, cd)
496-[("%s%s__assetId__" + L), ("%s%s__owner__" + cv), ("%s%s__warehouse__" + makeString(co(K(L), (cd / at), cD._1), ":")), ("%s%s__landOrder__" + valueOrElse(getString(aO, W(L)), "0@0_0@0_0@0_0@0_0@0_0@0:0@0_0@0_0@0_0@0_0@0_0@0:"))]
486+ let cx = value(assetInfo(fromBase58String(I)))
487+ let cy = split(cx.description, "_")
488+ let ca = bk(cy[aP])
489+ let cA = cd(I, ca)
490+[("%s%s__assetId__" + I), ("%s%s__owner__" + cs), ("%s%s__warehouse__" + makeString(cl(H(I), (ca / aq), cA._1), ":")), ("%s%s__landOrder__" + valueOrElse(getString(aL, T(I)), "0@0_0@0_0@0_0@0_0@0_0@0:0@0_0@0_0@0_0@0_0@0_0@0:"))]
497491 }
498492
499493
500-@Callable(cJ)
501-func constructorV1 (cK) = if ((cJ.caller != this))
494+@Callable(cG)
495+func constructorV1 (cH) = if ((cG.caller != this))
502496 then throw("permissions denied")
503497 else {
504- func cL (bt,cM) = (bt + "%s")
498+ func cI (bq,cJ) = (bq + "%s")
505499
506- let cN = {
507- let ae = cK
508- let af = size(ae)
509- let ag = ""
510- func ah (ai,aj) = if ((aj >= af))
511- then ai
512- else cL(ai, ae[aj])
500+ let cK = {
501+ let ab = cH
502+ let ac = size(ab)
503+ let ad = ""
504+ func ae (af,ag) = if ((ag >= ac))
505+ then af
506+ else cI(af, ab[ag])
513507
514- func ak (ai,aj) = if ((aj >= af))
515- then ai
508+ func ah (af,ag) = if ((ag >= ac))
509+ then af
516510 else throw("List size exceeds 10")
517511
518- ak(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ag, 0), 1), 2), 3), 4), 5), 6), 7), 8), 9), 10)
512+ ah(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ad, 0), 1), 2), 3), 4), 5), 6), 7), 8), 9), 10)
519513 }
520-[StringEntry(aF(), makeString(cN :: cK, aq)), StringEntry(aG(), toString(this))]
514+[StringEntry(aC(), makeString(cK :: cH, an)), StringEntry(aD(), toString(this))]
521515 }
522516
523517
524518
525-@Callable(cJ)
526-func walletInfoREADONLY (bV) = $Tuple2(nil, bU(bV))
519+@Callable(cG)
520+func walletInfoREADONLY (bS) = $Tuple2(nil, bR(bS))
527521
528522
529523
530-@Callable(cJ)
531-func duckByOwnerInfoREADONLY (cO) = {
532- let cP = getString(aN, R(cO))
533- $Tuple2(nil, if (if (isDefined(addressFromString(cO)))
534- then isDefined(cP)
524+@Callable(cG)
525+func duckByOwnerInfoREADONLY (cL) = {
526+ let cM = getString(aK, O(cL))
527+ $Tuple2(nil, if (if (isDefined(addressFromString(cL)))
528+ then isDefined(cM)
535529 else false)
536530 then {
537- let h = value(cP)
538- cu(h, cO, ct(h))
531+ let e = value(cM)
532+ cr(e, cL, cq(e))
539533 }
540- else cu("", cO, $Tuple5(-1, "", "", -1, "")))
534+ else cr("", cL, $Tuple5(-1, "", "", -1, "")))
541535 }
542536
543537
544538
545-@Callable(cJ)
546-func duckByAssetIdInfoREADONLY (h) = {
547- let cv = getString(aN, Q(h))
548- let cw = ct(h)
549- $Tuple2(nil, cu(h, if (isDefined(cv))
550- then value(cv)
551- else "", ct(h)))
539+@Callable(cG)
540+func duckByAssetIdInfoREADONLY (e) = {
541+ let cs = getString(aK, N(e))
542+ let ct = cq(e)
543+ $Tuple2(nil, cr(e, if (isDefined(cs))
544+ then value(cs)
545+ else "", cq(e)))
552546 }
553547
554548
555549
556-@Callable(cJ)
557-func landByAssetIdInfoREADONLY (L) = if ((L == ""))
550+@Callable(cG)
551+func landByAssetIdInfoREADONLY (I) = if ((I == ""))
558552 then throw("landAssetId is required")
559553 else {
560- let cz = valueOrElse(getInteger(aN, G(L)), -1)
561- let cv = if ((cz > 0))
562- then value(getString(aN, D(L)))
554+ let cw = valueOrElse(getInteger(aK, D(I)), -1)
555+ let cs = if ((cw > 0))
556+ then value(getString(aK, A(I)))
563557 else ""
564- $Tuple2(nil, cy(L, cv, cz))
558+ $Tuple2(nil, cv(I, cs, cw))
565559 }
566560
567561
568562
569-@Callable(cJ)
570-func stakedLandsByOwnerInfoREADONLY (cQ) = if ((cQ == ""))
563+@Callable(cG)
564+func stakedLandsByOwnerInfoREADONLY (cN) = if ((cN == ""))
571565 then throw("landOwnerAddress is required")
572566 else {
573- let bx = getString(aN, aW(cQ))
574- let by = if (isDefined(bx))
575- then split_51C(value(bx), "_")
567+ let bu = getString(aK, aT(cN))
568+ let bv = if (isDefined(bu))
569+ then split_51C(value(bu), "_")
576570 else nil
577- func bz (bt,L) = if ((L == ""))
571+ func bw (bq,I) = if ((I == ""))
578572 then throw("landAssetId is required")
579573 else {
580- let cz = valueOrElse(getInteger(aN, G(L)), -1)
581- (bt :+ cy(L, cQ, cz))
574+ let cw = valueOrElse(getInteger(aK, D(I)), -1)
575+ (bq :+ cv(I, cN, cw))
582576 }
583577
584- let bR = {
585- let ae = by
586- let af = size(ae)
587- let ag = nil
588- func ah (ai,aj) = if ((aj >= af))
589- then ai
590- else bz(ai, ae[aj])
578+ let bO = {
579+ let ab = bv
580+ let ac = size(ab)
581+ let ad = nil
582+ func ae (af,ag) = if ((ag >= ac))
583+ then af
584+ else bw(af, ab[ag])
591585
592- func ak (ai,aj) = if ((aj >= af))
593- then ai
586+ func ah (af,ag) = if ((ag >= ac))
587+ then af
594588 else throw("List size exceeds 100")
595589
596- ak(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ag, 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)
590+ ah(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ad, 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)
597591 }
598- $Tuple2(nil, bR)
592+ $Tuple2(nil, bO)
599593 }
600594
601595
602596
603-@Callable(cJ)
604-func landsByIdsInfoREADONLY (cR) = {
605- func bz (bt,L) = if ((L == ""))
597+@Callable(cG)
598+func landsByIdsInfoREADONLY (cO) = {
599+ func bw (bq,I) = if ((I == ""))
606600 then throw("landAssetId is required")
607601 else {
608- let cz = valueOrElse(getInteger(aN, G(L)), -1)
609- let cv = if ((cz > 0))
610- then value(getString(aN, D(L)))
602+ let cw = valueOrElse(getInteger(aK, D(I)), -1)
603+ let cs = if ((cw > 0))
604+ then value(getString(aK, A(I)))
611605 else ""
612- (bt :+ cy(L, cv, cz))
606+ (bq :+ cv(I, cs, cw))
613607 }
614608
615- let bR = {
616- let ae = cR
617- let af = size(ae)
618- let ag = nil
619- func ah (ai,aj) = if ((aj >= af))
620- then ai
621- else bz(ai, ae[aj])
609+ let bO = {
610+ let ab = cO
611+ let ac = size(ab)
612+ let ad = nil
613+ func ae (af,ag) = if ((ag >= ac))
614+ then af
615+ else bw(af, ab[ag])
622616
623- func ak (ai,aj) = if ((aj >= af))
624- then ai
617+ func ah (af,ag) = if ((ag >= ac))
618+ then af
625619 else throw("List size exceeds 100")
626620
627- ak(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ag, 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)
621+ ah(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ad, 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)
628622 }
629- $Tuple2(nil, bR)
623+ $Tuple2(nil, bO)
630624 }
631625
632626
633627
634-@Callable(cJ)
635-func warehouseOrderByAssetIdInfoREADONLY (L) = if ((L == ""))
628+@Callable(cG)
629+func warehouseOrderByAssetIdInfoREADONLY (I) = if ((I == ""))
636630 then throw("landAssetId is required")
637631 else {
638- let cz = valueOrElse(getInteger(aN, G(L)), -1)
639- let cv = if ((cz > 0))
640- then value(getString(aN, D(L)))
632+ let cw = valueOrElse(getInteger(aK, D(I)), -1)
633+ let cs = if ((cw > 0))
634+ then value(getString(aK, A(I)))
641635 else ""
642- $Tuple2(nil, cI(L, cv))
636+ $Tuple2(nil, cF(I, cs))
643637 }
644638
645639
646640
647-@Callable(cJ)
648-func ordersByLandIdsInfoREADONLY (cR) = {
649- func bz (bt,L) = if ((L == ""))
641+@Callable(cG)
642+func ordersByLandIdsInfoREADONLY (cO) = {
643+ func bw (bq,I) = if ((I == ""))
650644 then throw("landAssetId is required")
651645 else {
652- let cz = valueOrElse(getInteger(aN, G(L)), -1)
653- let cv = if ((cz > 0))
654- then value(getString(aN, D(L)))
646+ let cw = valueOrElse(getInteger(aK, D(I)), -1)
647+ let cs = if ((cw > 0))
648+ then value(getString(aK, A(I)))
655649 else ""
656- (bt :+ cI(L, cv))
650+ (bq :+ cF(I, cs))
657651 }
658652
659- let bR = {
660- let ae = cR
661- let af = size(ae)
662- let ag = nil
663- func ah (ai,aj) = if ((aj >= af))
664- then ai
665- else bz(ai, ae[aj])
653+ let bO = {
654+ let ab = cO
655+ let ac = size(ab)
656+ let ad = nil
657+ func ae (af,ag) = if ((ag >= ac))
658+ then af
659+ else bw(af, ab[ag])
666660
667- func ak (ai,aj) = if ((aj >= af))
668- then ai
661+ func ah (af,ag) = if ((ag >= ac))
662+ then af
669663 else throw("List size exceeds 40")
670664
671- ak(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ag, 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)
665+ ah(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ad, 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)
672666 }
673- $Tuple2(nil, bR)
667+ $Tuple2(nil, bO)
674668 }
675669
676670
677671
678-@Callable(cJ)
679-func cancelWarehouseOrders (cR) = if ((cJ.caller != this))
672+@Callable(cG)
673+func cancelWarehouseOrders (cO) = if ((cG.caller != this))
680674 then throw("permission denied")
681675 else {
682- let cS = getBoolean(aN, V())
683- if (if (!(isDefined(cS)))
676+ let cP = getBoolean(aK, S())
677+ if (if (!(isDefined(cP)))
684678 then true
685- else (value(cS) == false))
679+ else (value(cP) == false))
686680 then throw("Contracts should be blocked before canceling orders")
687681 else {
688- func bz (cA,L) = if ((L == ""))
682+ func bw (cx,I) = if ((I == ""))
689683 then throw("landAssetId is required")
690684 else {
691- let cT = bm(invoke(aO, "setWarehouseOrder", ["0@0_0@0_0@0_0@0_0@0_0@0:0@0_0@0_0@0_0@0_0@0_0@0:", L], nil))
692- if (if (cA)
685+ let cQ = bj(invoke(aL, "setWarehouseOrder", ["0@0_0@0_0@0_0@0_0@0_0@0:0@0_0@0_0@0_0@0_0@0_0@0:", I], nil))
686+ if (if (cx)
693687 then true
694- else cT)
695- then !(if (cA)
696- then cT
688+ else cQ)
689+ then !(if (cx)
690+ then cQ
697691 else false)
698692 else false
699693 }
700694
701- let bR = {
702- let ae = cR
703- let af = size(ae)
704- let ag = false
705- func ah (ai,aj) = if ((aj >= af))
706- then ai
707- else bz(ai, ae[aj])
695+ let bO = {
696+ let ab = cO
697+ let ac = size(ab)
698+ let ad = false
699+ func ae (af,ag) = if ((ag >= ac))
700+ then af
701+ else bw(af, ab[ag])
708702
709- func ak (ai,aj) = if ((aj >= af))
710- then ai
703+ func ah (af,ag) = if ((ag >= ac))
704+ then af
711705 else throw("List size exceeds 30")
712706
713- ak(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ag, 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)
707+ ah(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ad, 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)
714708 }
715- $Tuple2(nil, bR)
709+ $Tuple2(nil, bO)
716710 }
717711 }
718712
719713
720714
721-@Callable(cJ)
722-func fixWarehouseFormats (cR) = if ((cJ.caller != this))
715+@Callable(cG)
716+func fixWarehouseFormats (cO) = if ((cG.caller != this))
723717 then throw("permission denied")
724718 else {
725- func bz (bt,L) = if ((L == ""))
719+ func bw (bq,I) = if ((I == ""))
726720 then throw("landAssetId is required")
727- else (bt + size(bh(invoke(aN, "fixWarehouseFormat", [L], nil))))
721+ else (bq + size(be(invoke(aK, "fixWarehouseFormat", [I], nil))))
728722
729- let bR = {
730- let ae = cR
731- let af = size(ae)
732- let ag = 0
733- func ah (ai,aj) = if ((aj >= af))
734- then ai
735- else bz(ai, ae[aj])
723+ let bO = {
724+ let ab = cO
725+ let ac = size(ab)
726+ let ad = 0
727+ func ae (af,ag) = if ((ag >= ac))
728+ then af
729+ else bw(af, ab[ag])
736730
737- func ak (ai,aj) = if ((aj >= af))
738- then ai
731+ func ah (af,ag) = if ((ag >= ac))
732+ then af
739733 else throw("List size exceeds 25")
740734
741- ak(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ag, 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)
735+ ah(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ad, 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)
742736 }
743- $Tuple2(nil, bR)
737+ $Tuple2(nil, bO)
744738 }
745739
746740
747741
748-@Callable(cJ)
749-func fixStakedPieces (cU) = if ((cJ.caller != this))
742+@Callable(cG)
743+func fixStakedPieces (cR) = if ((cG.caller != this))
750744 then throw("permission denied")
751745 else {
752- func cV (bt,l) = if ((l == ""))
746+ func cS (bq,i) = if ((i == ""))
753747 then throw("address is required")
754- else (bt + bk(invoke(aN, "fixStakedPieces", [l], nil)))
748+ else (bq + bh(invoke(aK, "fixStakedPieces", [i], nil)))
755749
756- let bR = {
757- let ae = cU
758- let af = size(ae)
759- let ag = 0
760- func ah (ai,aj) = if ((aj >= af))
761- then ai
762- else cV(ai, ae[aj])
750+ let bO = {
751+ let ab = cR
752+ let ac = size(ab)
753+ let ad = 0
754+ func ae (af,ag) = if ((ag >= ac))
755+ then af
756+ else cS(af, ab[ag])
763757
764- func ak (ai,aj) = if ((aj >= af))
765- then ai
758+ func ah (af,ag) = if ((ag >= ac))
759+ then af
766760 else throw("List size exceeds 16")
767761
768- ak(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ag, 0), 1), 2), 3), 4), 5), 6), 7), 8), 9), 10), 11), 12), 13), 14), 15), 16)
762+ ah(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ad, 0), 1), 2), 3), 4), 5), 6), 7), 8), 9), 10), 11), 12), 13), 14), 15), 16)
769763 }
770- $Tuple2(nil, bR)
764+ $Tuple2(nil, bO)
771765 }
772766
773767
774768
775-@Callable(cJ)
776-func sendUsdtPrize (cO) = if ((cJ.caller != aN))
769+@Callable(cG)
770+func sendUsdtPrize (cL) = if ((cG.caller != aK))
777771 then throw("permission denied")
778772 else {
779- let cW = fraction(assetBalance(this, am), bK, ar)
780- $Tuple2([ScriptTransfer(addressFromStringValue(cO), cW, am)], cW)
773+ let cT = fraction(assetBalance(this, aj), bH, ao)
774+ $Tuple2([ScriptTransfer(addressFromStringValue(cL), cT, aj)], cT)
781775 }
782776
783777
784778
785-@Callable(cJ)
779+@Callable(cG)
786780 func getEmergencyServiceDataREADONLY () = {
787- let cX = getString(aO, X())
788- let cY = if (isDefined(cX))
789- then split(value(cX), "_")
781+ let cU = getString(aL, U())
782+ let cV = if (isDefined(cU))
783+ then split(value(cU), "_")
790784 else nil
791- func cZ (bt,da) = {
792- let bl = bt._2
793- let aa = split(da, "_")
794- let db = parseIntValue(aa[B])
795- let dc = if ((bl == 0))
796- then (x * db)
785+ func cW (bq,cX) = {
786+ let bi = bq._2
787+ let X = split(cX, "_")
788+ let cY = parseIntValue(X[y])
789+ let cZ = if ((bi == 0))
790+ then (u * cY)
797791 else 0
798- let dd = if ((size(cY) > bl))
799- then parseIntValue(cY[bl])
792+ let da = if ((size(cV) > bi))
793+ then parseIntValue(cV[bi])
800794 else 0
801- let de = Z(aa)
802- let df = fraction((de * y), w, (10 * db))
803- let dg = fraction((de * z), w, (10 * db))
804- let dh = makeString([toString(dc), toString(dd), toString(df), toString(dg)], "_")
805- $Tuple2((bt._1 :+ dh), (bl + 1))
795+ let db = W(X)
796+ let dc = fraction((db * v), t, (10 * cY))
797+ let dd = fraction((db * w), t, (10 * cY))
798+ let de = makeString([toString(cZ), toString(da), toString(dc), toString(dd)], "_")
799+ $Tuple2((bq._1 :+ de), (bi + 1))
806800 }
807801
808- let bj = makeString_2C(( let ae = A
809- let af = size(ae)
810- let ag = $Tuple2(nil, 0)
811- func ah (ai,aj) = if ((aj >= af))
812- then ai
813- else cZ(ai, ae[aj])
802+ let bg = makeString_2C(( let ab = x
803+ let ac = size(ab)
804+ let ad = $Tuple2(nil, 0)
805+ func ae (af,ag) = if ((ag >= ac))
806+ then af
807+ else cW(af, ab[ag])
814808
815- func ak (ai,aj) = if ((aj >= af))
816- then ai
809+ func ah (af,ag) = if ((ag >= ac))
810+ then af
817811 else throw("List size exceeds 50")
818812
819- ak(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ah(ag, 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))._1, ":")
820- let di = ("%s%s__emergencyServiceData__" + bj)
821- $Tuple2(nil, di)
813+ ah(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ae(ad, 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))._1, ":")
814+ let df = ("%s%s__emergencyServiceData__" + bg)
815+ $Tuple2(nil, df)
822816 }
823817
824818
825819
826-@Callable(cJ)
820+@Callable(cG)
827821 func wlgStatsREADONLY () = {
828- let dj = bD()
829- $Tuple2(nil, [("%s%s%d__wlgAmount__" + toString(dj[ba])), ("%s%s%d__wlgPrice__" + toString(dj[bb])), ("%s%s%d__usdtFunds__" + toString(dj[bc])), ("%s%s%d__usdtEconomy__" + toString(dj[bd])), ("%s%s%d__usdtActivity__" + toString(dj[be])), ("%s%s%d__usdtArbitrage__" + toString(dj[bf])), ("%s%s%d__usdtPool__" + toString(dj[bg]))])
822+ let dg = bA()
823+ $Tuple2(nil, [("%s%s%d__wlgAmount__" + toString(dg[aX])), ("%s%s%d__wlgPrice__" + toString(dg[aY])), ("%s%s%d__usdtFunds__" + toString(dg[aZ])), ("%s%s%d__usdtEconomy__" + toString(dg[ba])), ("%s%s%d__usdtActivity__" + toString(dg[bb])), ("%s%s%d__usdtArbitrage__" + toString(dg[bc])), ("%s%s%d__usdtPool__" + toString(dg[bd]))])
830824 }
831825
832826

github/deemru/w8io/169f3d6 
657.62 ms