tx · 6eK19d1JP3qiR2a8AaK6PBGhZ9GXZL9EVFoU65mehnvT

3N7HtrKeFFLz5oy6PfGv1Lg3GwPk4gCPdGy:  -0.01200000 Waves

2023.07.02 19:43 [2648547] smart account 3N7HtrKeFFLz5oy6PfGv1Lg3GwPk4gCPdGy > SELF 0.00000000 Waves

{ "type": 13, "id": "6eK19d1JP3qiR2a8AaK6PBGhZ9GXZL9EVFoU65mehnvT", "fee": 1200000, "feeAssetId": null, "timestamp": 1688316217549, "version": 2, "chainId": 84, "sender": "3N7HtrKeFFLz5oy6PfGv1Lg3GwPk4gCPdGy", "senderPublicKey": "FsR18761ZAsUqsTd7TK3XmR6bhihs1UXVmpHYxz5JzQ1", "proofs": [ "4E55GNUCivVzQ4VHNkaDzSMBNHmpjkgBM2nX9ysC94Y3SVAGCM41KxEm1febEaJUuWHminh9Q5LamSpKAaJ3mM4e" ], "script": "base64:BgIgCAISBgoECAgICBIDCgEBEgMKAQESABIDCgEIEgMKAQhFAQprZXlCbG9ja2VkAAIQY29udHJhY3RzQmxvY2tlZAALSWR4RWZmVG90YWwAAAAKSWR4RWZmVXNlcgABAAVjaGFpbgkAyQECCQDKAQIIBQR0aGlzBWJ5dGVzAAEAAQALdXNkdEFzc2V0SWQEByRtYXRjaDAFBWNoYWluAwkAAAIBAVcFByRtYXRjaDABIITaerIIAz9O0bvKju6Lk7zJgt0LXfoHlqjUI/moD/+5AwkAAAIBAVQFByRtYXRjaDABIFWx2J9yh4Lv5eNbjawFq2XemkOhLxa7BfMat4el8cUYCQACAQINVW5rbm93biBjaGFpbgAVZGVmYXVsdFJlc3RBZGRyZXNzU3RyBAckbWF0Y2gwBQVjaGFpbgMJAAACAQFXBQckbWF0Y2gwAiMzUFFDdXZGYnZoNExrUFVucm5VMXozam5iQTFwOW0zV05odgMJAAACAQFUBQckbWF0Y2gwAiMzTXVta0dHenRDS0FYcFdEcXhrZGRvZnFYU1VicVFrdlNKeQkAAgECDVVua25vd24gY2hhaW4ADmFyYml0cmFnZURlbGF5BAckbWF0Y2gwBQVjaGFpbgMJAAACAQFXBQckbWF0Y2gwAMDPJAMJAAACAQFUBQckbWF0Y2gwAODUAwkAAgECDVVua25vd24gY2hhaW4AA1NFUAICX18ABU1VTFQ2AMCEPQAFTVVMVDgAgMLXLwAFU1NJWkUAGQAFTVNJWkUAZAAFTFNJWkUA4QEABlhMU0laRQCQAwAHWFhMU0laRQDxBAEPZ2V0U3RyaW5nT3JGYWlsAgdhZGRyZXNzA2tleQkBE3ZhbHVlT3JFcnJvck1lc3NhZ2UCCQCdCAIFB2FkZHJlc3MFA2tleQkAuQkCCQDMCAICCm1hbmRhdG9yeSAJAMwIAgkApQgBBQdhZGRyZXNzCQDMCAICAS4JAMwIAgUDa2V5CQDMCAICDyBpcyBub3QgZGVmaW5lZAUDbmlsAgAAEUlkeENmZ1N0YWtpbmdEYXBwAAEAEUlkeENmZ0Vjb25vbXlEYXBwAAIADUlkeENmZ1dsZ0RhcHAABAAUSWR4Q2ZnUHV6emxlUG9vbERhcHAABQEKa2V5UmVzdENmZwACDiVzX19yZXN0Q29uZmlnAQ5rZXlSZXN0QWRkcmVzcwACDCVzX19yZXN0QWRkcgERcmVhZFJlc3RDZmdPckZhaWwBBHJlc3QJALwJAgkBD2dldFN0cmluZ09yRmFpbAIFBHJlc3QJAQprZXlSZXN0Q2ZnAAUDU0VQARhnZXRDb250cmFjdEFkZHJlc3NPckZhaWwCB3Jlc3RDZmcDaWR4CQETdmFsdWVPckVycm9yTWVzc2FnZQIJAKYIAQkAkQMCBQdyZXN0Q2ZnBQNpZHgJAKwCAgIqUmVzdCBjZmcgZG9lc24ndCBjb250YWluIGFkZHJlc3MgYXQgaW5kZXggCQCkAwEFA2lkeAAMcmVzdENvbnRyYWN0CQERQGV4dHJOYXRpdmUoMTA2MikBCQELdmFsdWVPckVsc2UCCQCdCAIFBHRoaXMJAQ5rZXlSZXN0QWRkcmVzcwAFFWRlZmF1bHRSZXN0QWRkcmVzc1N0cgAHcmVzdENmZwkBEXJlYWRSZXN0Q2ZnT3JGYWlsAQUMcmVzdENvbnRyYWN0AA9zdGFraW5nQ29udHJhY3QJARhnZXRDb250cmFjdEFkZHJlc3NPckZhaWwCBQdyZXN0Q2ZnBRFJZHhDZmdTdGFraW5nRGFwcAAPZWNvbm9teUNvbnRyYWN0CQEYZ2V0Q29udHJhY3RBZGRyZXNzT3JGYWlsAgUHcmVzdENmZwURSWR4Q2ZnRWNvbm9teURhcHAAC3dsZ0NvbnRyYWN0CQEYZ2V0Q29udHJhY3RBZGRyZXNzT3JGYWlsAgUHcmVzdENmZwUNSWR4Q2ZnV2xnRGFwcAAScHV6emxlUG9vbENvbnRyYWN0CQEYZ2V0Q29udHJhY3RBZGRyZXNzT3JGYWlsAgUHcmVzdENmZwUUSWR4Q2ZnUHV6emxlUG9vbERhcHAAC3JlY0xhbmRTaXplAAEBEWtleVJlc1Byb3BvcnRpb25zAAITcmVzVHlwZXNQcm9wb3J0aW9ucwEVa2V5U3Rha2VkTGFuZHNCeU93bmVyAQlvd25lckFkZHIJAKwCAgITc3Rha2VkTGFuZHNCeU93bmVyXwUJb3duZXJBZGRyABJ3bGdJc3N1ZWRBbW91bnRLZXkCEHdsZ19pc3N1ZWRBbW91bnQADXdsZ0Fzc2V0SWRLZXkCC3dsZ19hc3NldElkAAp3bGdBc3NldElkCQETdmFsdWVPckVycm9yTWVzc2FnZQIJAJwIAgULd2xnQ29udHJhY3QFDXdsZ0Fzc2V0SWRLZXkCE05vdCBpbml0aWFsaXplZCB5ZXQADGlkeFdsZ0Ftb3VudAAAAAtpZHhXbGdQcmljZQABAAtpZHhXbGdGdW5kcwACAQVhc0ludAEBdgQHJG1hdGNoMAUBdgMJAAECBQckbWF0Y2gwAgNJbnQEAW4FByRtYXRjaDAFAW4JAAIBAhVmYWlsIHRvIGNhc3QgaW50byBJbnQBD251bVBpZWNlc0J5U2l6ZQEIbGFuZFNpemUEByRtYXRjaDAFCGxhbmRTaXplAwkAAAICAVMFByRtYXRjaDAFBVNTSVpFAwkAAAICAU0FByRtYXRjaDAFBU1TSVpFAwkAAAICAUwFByRtYXRjaDAFBUxTSVpFAwkAAAICAlhMBQckbWF0Y2gwBQZYTFNJWkUDCQAAAgIDWFhMBQckbWF0Y2gwBQdYWExTSVpFCQACAQIRVW5rbm93biBsYW5kIHNpemUBDmdldFZvdGluZ1Bvd2VyARJ1c2VyQWRkclN0ck9yRW1wdHkEBXByb3BzCQC1CQIJAQt2YWx1ZU9yRWxzZQIJAJ0IAgUPc3Rha2luZ0NvbnRyYWN0CQERa2V5UmVzUHJvcG9ydGlvbnMAAgswXzBfMF8wXzBfMAIBXwoBBWFkZGVyAgNhY2MEaXRlbQkAZAIFA2FjYwkBDXBhcnNlSW50VmFsdWUBBQRpdGVtBAp0b3RhbFBvd2VyCgACJGwFBXByb3BzCgACJHMJAJADAQUCJGwKAAUkYWNjMAAACgEFJGYwXzECAiRhAiRpAwkAZwIFAiRpBQIkcwUCJGEJAQVhZGRlcgIFAiRhCQCRAwIFAiRsBQIkaQoBBSRmMF8yAgIkYQIkaQMJAGcCBQIkaQUCJHMFAiRhCQACAQITTGlzdCBzaXplIGV4Y2VlZHMgNgkBBSRmMF8yAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgUFJGFjYzAAAAABAAIAAwAEAAUABgQKdXNlcnNQb3dlcgMJAAACBRJ1c2VyQWRkclN0ck9yRW1wdHkCAAAABAhsYW5kc1N0cgkAnQgCBQ9zdGFraW5nQ29udHJhY3QJARVrZXlTdGFrZWRMYW5kc0J5T3du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BAlwdXp6bGVVc2QJAPAHAgUScHV6emxlUG9vbENvbnRyYWN0BQt1c2R0QXNzZXRJZAQNdG90YWxGdW5kc1VzZAkAZAIJAGQCCQBkAgUKZWNvbm9teVVzZAUHcmVzdFVzZAUGd2xnVXNkBQlwdXp6bGVVc2QJAMwIAgUMaXNzdWVkQW1vdW50CQDMCAIJAGsDBQ10b3RhbEZ1bmRzVXNkBQVNVUxUOAUMaXNzdWVkQW1vdW50CQDMCAIFDXRvdGFsRnVuZHNVc2QJAMwIAgUKZWNvbm9teVVzZAkAzAgCBQdyZXN0VXNkCQDMCAIFBndsZ1VzZAkAzAgCBQlwdXp6bGVVc2QFA25pbAEKZml4ZWRQb2ludAIDdmFsCGRlY2ltYWxzBAZ0ZW5Qb3cJAGwGAAoAAAUIZGVjaW1hbHMAAAAABQRET1dOCQCsAgIJAKwCAgkApAMBCQBpAgUDdmFsBQZ0ZW5Qb3cCAS4JAKQDAQkAagIFA3ZhbAUGdGVuUG93AAZNVUxUMTQAgIDpg7HeFgAOTUFSS0VUSU5HU0hBUkUAoI0GAAlURUFNU0hBUkUAwJoMAA1BQ1RJVklUWVNIQVJFAKCNBgALUExBWUVSU0hBUkUAgLUYAApZRUFSTUlMTElTAICG68d1AApXRUVLTUlMTElTAICIsqACAAlNQVhQRVJJT0QAnAEAAkE2AIDC1y8AAkI4AIDh6xcAD3dsZ0lzc3VlVGltZUtleQINd2xnX2lzc3VlVGltZQAQbWFya2V0aW5nQWRkcktleQINbWFya2V0aW5nQWRkcgALdGVhbUFkZHJLZXkCCHRlYW1BZGRyAA1wcm9maXRBZGRyS2V5Agpwcm9maXRBZGRyABRsYXN0TWFya2V0aW5nVGltZUtleQIZbGFzdENsYWltZWRUaW1lX21hcmtldGluZwAPbGFzdFRlYW1UaW1lS2V5AhRsYXN0Q2xhaW1lZFRpbWVfdGVhbQAVbGFzdEFjdGl2aXRpZXNUaW1lS2V5AhpsYXN0Q2xhaW1lZFRpbWVfYWN0aXZpdGllcwEYa2V5TGFzdENsYWltZWRUaW1lQnlVc2VyAQRhZGRyCQCsAgICFGxhc3RDbGFpbWVkVGltZVVzZXJfBQRhZGRyARRrZXlMYXN0QXJiVGltZUJ5VXNlcgEEYWRkcgkArAICAhBsYXN0QXJiVGltZVVzZXJfBQRhZGRyABRzdGFrZXJzQW1vdW50TGVmdEtleQIRc3Rha2Vyc0Ftb3VudExlZnQAGXN0YWtlcnNBbW91bnRQYWlkVG90YWxLZXkCFnN0YWtlcnNBbW91bnRQYWlkVG90YWwBGGtleVN0YWtlcnNBbW91bnRQYWlkVXNlcgEEYWRkcgkArAICAhZzdGFrZXJzQW1vdW50UGFpZFVzZXJfBQRhZGRyAQZwcm9sb2cAAwkBC3ZhbHVlT3JFbHNlAgkAmwgCBQ9zdGFraW5nQ29udHJhY3QJAQprZXlCbG9ja2VkAAcJAAIBAh9Db250cmFjdHMgYXJlIHVuZGVyIG1haW50ZW5hbmNlCQEFYXNJbnQBCQD8BwQFD3N0YWtpbmdDb250cmFjdAIKc2F2ZUxhc3RUeAUDbmlsBQNuaWwBDGdldFN3YXBMaW1pdAEEYWRkcgQIbGFzdFRpbWUJAQt2YWx1ZU9yRWxzZQIJAJ8IAQkBFGtleUxhc3RBcmJUaW1lQnlVc2VyAQUEYWRkcgAABANub3cIBQlsYXN0QmxvY2sJdGltZXN0YW1wAwkAZgIFDmFyYml0cmFnZURlbGF5CQBlAgUDbm93BQhsYXN0VGltZQkAAgEJAKwCAgkArAICAh9BcmJpdHJhZ2VzIGFyZSBwb3NzaWJsZSBvbmNlIGEgCQCkAwEJAGkCBQ5hcmJpdHJhZ2VEZWxheQDg1AMCAm1zBAZwaWVjZXMJAJEDAgkBDmdldFZvdGluZ1Bvd2VyAQUEYWRkcgUKSWR4RWZmVXNlcgQEcG93OAkAbAYFBnBpZWNlcwAABQJCOAAIAAgFB0NFSUxJTkcJAGsDBQJBNgUEcG93OAUFTVVMVDgBDWNsYWltSW50ZXJuYWwBBmNhbGxlcgQKY2FsbGVyQWRkcgkApQgBBQZjYWxsZXIEA25vdwgFCWxhc3RCbG9jawl0aW1lc3RhbXAECWlzc3VlVGltZQkBE3ZhbHVlT3JFcnJvck1lc3NhZ2UCCQCfCAEFD3dsZ0lzc3VlVGltZUtleQIPTm90IGluaXRpYWxpemVkBBFsYXN0TWFya2V0aW5nVGltZQkBC3ZhbHVlT3JFbHNlAgkAnwgBBRRsYXN0TWFya2V0aW5nVGltZUtleQUJaXNzdWVUaW1lBA1tYXJrZXRpbmdBZGRyCQERQGV4dHJOYXRpdmUoMTA2MikBCQEFdmFsdWUBCQCiCAEFEG1hcmtldGluZ0FkZHJLZXkED21hcmtldGluZ0Ftb3VudAkAawMJAGsDBQZNVUxUMTQFDk1BUktFVElOR1NIQVJFBQVNVUxUNgkAZQIFA25vdwURbGFzdE1hcmtldGluZ1RpbWUFCllFQVJNSUxMSVMEDGxhc3RUZWFtVGltZQkBC3ZhbHVlT3JFbHNlAgkAnwgBBQ9sYXN0VGVhbVRpbWVLZXkFCWlzc3VlVGltZQQIdGVhbUFkZHIJARFAZXh0ck5hdGl2ZSgxMDYyKQEJAQV2YWx1ZQEJAKIIAQULdGVhbUFkZHJLZXkECnRlYW1BbW91bnQJAGsDCQBrAwUGTVVMVDE0BQlURUFNU0hBUkUFBU1VTFQ2CQBlAgUDbm93BQxsYXN0VGVhbVRpbWUJAGgCAAMFCllFQVJNSUxMSVMEEmxhc3RBY3Rpdml0aWVzVGltZQkBC3ZhbHVlT3JFbHNlAgkAnwgBBRVsYXN0QWN0aXZpdGllc1RpbWVLZXkFCWlzc3VlVGltZQQJYWN0QW1vdW50CQBrAwkAawMFBk1VTFQxNAUNQUNUSVZJVFlTSEFSRQUFTVVMVDYJAGUCBQNub3cFEmxhc3RBY3Rpdml0aWVzVGltZQkAaAIAAwUKWUVBUk1JTExJUwQJY3VyUGVyaW9kCQBpAgkAZQIFA25vdwUJaXNzdWVUaW1lBQpXRUVLTUlMTElTAwkAZgIFCWN1clBlcmlvZAkAaQIFCU1BWFBFUklPRAACCQACAQI9UGxlYXNlIG1vZGlmeSBjb250cmFjdCBmb3IgbmV4dCAxLjUgeWVhcnMsIGFjY29yZGluZyB0byBzdGF0cwQDZWZmCQEOZ2V0Vm90aW5nUG93ZXIBBQpjYWxsZXJBZGRyBAt0b3RhbFBpZWNlcwkAkQMCBQNlZmYFC0lkeEVmZlRvdGFsBA9hbW91bnRMZWZ0VG90YWwJAQt2YWx1ZU9yRWxzZQIJAJ8IAQUUc3Rha2Vyc0Ftb3VudExlZnRLZXkAAAQVY3VyUGVyaW9kRGlzdHJpYnV0aW9uCQBrAwUPYW1vdW50TGVmdFRvdGFsCQBoAgACBQt0b3RhbFBpZWNlcwkAZAIFC3RvdGFsUGllY2VzCQBoAgkAlgMBCQDMCAIAoI0GCQDMCAIFC3RvdGFsUGllY2VzBQNuaWwJAGUCBQlNQVhQRVJJT0QFCWN1clBlcmlvZAQLdXNlclRpbWVLZXkJARhrZXlMYXN0Q2xhaW1lZFRpbWVCeVVzZXIBBQpjYWxsZXJBZGRyBAxsYXN0VXNlclRpbWUJAQt2YWx1ZU9yRWxzZQIJAJ8IAQULdXNlclRpbWVLZXkFCWlzc3VlVGltZQQKdXNlckFtb3VudAkAawMJAGsDBRVjdXJQZXJpb2REaXN0cmlidXRpb24JAJEDAgUDZWZmBQpJZHhFZmZVc2VyBQt0b3RhbFBpZWNlcwkAZQIFA25vdwUMbGFzdFVzZXJUaW1lCQBoAgADBQpZRUFSTUlMTElTBAd1c2VyS2V5CQEYa2V5U3Rha2Vyc0Ftb3VudFBhaWRVc2VyAQUKY2FsbGVyQWRkcgkAlAoCCQDMCAIJAQ5TY3JpcHRUcmFuc2ZlcgMFDW1hcmtldGluZ0FkZHIFD21hcmtldGluZ0Ftb3VudAUKd2xnQXNzZXRJZAkAzAgCCQEOU2NyaXB0VHJhbnNmZXIDBQh0ZWFtQWRkcgUKdGVhbUFtb3VudAUKd2xnQXNzZXRJZAkAzAgCCQEOU2NyaXB0VHJhbnNmZXIDBQxyZXN0Q29udHJhY3QFCWFjdEFtb3VudAUKd2xnQXNzZXRJZAkAzAgCCQEOU2NyaXB0VHJhbnNmZXIDBQZjYWxsZXIFCnVzZXJBbW91bnQFCndsZ0Fzc2V0SWQJAMwIAgkBDEludGVnZXJFbnRyeQIFB3VzZXJLZXkJAGQCCQELdmFsdWVPckVsc2UCCQCfCAEFB3VzZXJLZXkAAAUKdXNlckFtb3VudAkAzAgCCQEMSW50ZWdlckVudHJ5AgUZc3Rha2Vyc0Ftb3VudFBhaWRUb3RhbEtleQkAZAIJAQt2YWx1ZU9yRWxzZQIJAJ8IAQUZc3Rha2Vyc0Ftb3VudFBhaWRUb3RhbEtleQAABQp1c2VyQW1vdW50CQDMCAIJAQxJbnRlZ2VyRW50cnkCBRRzdGFrZXJzQW1vdW50TGVmdEtleQkAZQIFD2Ftb3VudExlZnRUb3RhbAUKdXNlckFtb3VudAkAzAgCCQEMSW50ZWdlckVudHJ5AgUUbGFzdE1hcmtldGluZ1RpbWVLZXkFA25vdwkAzAgCCQEMSW50ZWdlckVudHJ5AgUPbGFzdFRlYW1UaW1lS2V5BQNub3cJAMwIAgkBDEludGVnZXJFbnRyeQIFFWxhc3RBY3Rpdml0aWVzVGltZUtleQUDbm93CQDMCAIJAQxJbnRlZ2VyRW50cnkCBQt1c2VyVGltZUtleQUDbm93BQNuaWwFCnVzZXJBbW91bnQGAWkBDWNvbnN0cnVjdG9yVjEECHJlc3RBZGRyDW1hcmtldGluZ0FkZHIIdGVhbUFkZHIKcHJvZml0QWRkcgMJAQIhPQIIBQFpBmNhbGxlcgUEdGhpcwkAAgECEVBlcm1pc3Npb24gZGVuaWVkAwkBCWlzRGVmaW5lZAEJAKEIAQUNd2xnQXNzZXRJZEtleQkAAgECE0FscmVhZHkgaW5pdGlhbGl6ZWQEDGlzc3VlZEFtb3VudAUGTVVMVDE0BAVpc3N1ZQkAwwgHAgZXTEdPTEQCIFdhdmVzTGFuZHMgR29sZCBpbnZlc3RtZW50IHRva2VuBQxpc3N1ZWRBbW91bnQACAYFBHVuaXQAAAQHYXNzZXRJZAkAuAgBBQVpc3N1ZQkAzAgCBQVpc3N1ZQkAzAgCCQEMSW50ZWdlckVudHJ5AgUPd2xnSXNzdWVUaW1lS2V5CAUJbGFzdEJsb2NrCXRpbWVzdGFtcAkAzAgCCQEMSW50ZWdlckVudHJ5AgUSd2xnSXNzdWVkQW1vdW50S2V5BQxpc3N1ZWRBbW91bnQJAMwIAgkBDEludGVnZXJFbnRyeQIFGXN0YWtlcnNBbW91bnRQYWlkVG90YWxLZXkAAAkAzAgCCQEMSW50ZWdlckVudHJ5AgUUc3Rha2Vyc0Ftb3VudExlZnRLZXkJAGsDBQZNVUxUMTQFC1BMQVlFUlNIQVJFBQVNVUxUNgkAzAgCCQELQmluYXJ5RW50cnkCBQ13bGdBc3NldElkS2V5BQdhc3NldElkCQDMCAIJAQtTdHJpbmdFbnRyeQIJAQ5rZXlSZXN0QWRkcmVzcwAFCHJlc3RBZGRyCQDMCAIJAQtTdHJpbmdFbnRyeQIFEG1hcmtldGluZ0FkZHJLZXkFDW1hcmtldGluZ0FkZHIJAMwIAgkBC1N0cmluZ0VudHJ5AgULdGVhbUFkZHJLZXkFCHRlYW1BZGRyCQDMCAIJAQtTdHJpbmdFbnRyeQIFDXByb2ZpdEFkZHJLZXkFCnByb2ZpdEFkZHIFA25pbAFpAQZidXlXbGcBCW1pbkFtb3VudAQMcHJvbG9nUmVzdWx0CQEGcHJvbG9nAAMJAQIhPQIJAJADAQgFAWkIcGF5bWVudHMAAQkAAgECImV4YWN0bHkgMSBwYXltZW50IG11c3QgYmUgYXR0YWNoZWQEA3BtdAkAkQMCCAUBaQhwYXltZW50cwAABAd1c2R0QW10CAUDcG10BmFtb3VudAQKcG10QXNzZXRJZAkBE3ZhbHVlT3JFcnJvck1lc3NhZ2UCCAUDcG10B2Fzc2V0SWQCHldBVkVTIGNhbid0IGJlIHVzZWQgYXMgcGF5bWVudAMJAQIhPQIFCnBtdEFzc2V0SWQFC3VzZHRBc3NldElkCQACAQITVVNEVCBwYXltZW50cyBvbmx5IQQGY2FsbGVyCAUBaQZjYWxsZXIEBGFkZHIJAKUIAQUGY2FsbGVyBAdtYXhVc2R0CQEMZ2V0U3dhcExpbWl0AQUEYWRkcgMJAGYCBQd1c2R0QW10BQdtYXhVc2R0CQACAQkArAICCQCsAgICEllvdSBjYW4gc3BlbmQgbWF4IAkBCmZpeGVkUG9pbnQCBQdtYXhVc2R0AAYCBSBVU0RUBAhjdXJTdGF0cwkBC2dldFdsZ1N0YXRzAAQMY3VyV2xnQW1vdW50CQCRAwIFCGN1clN0YXRzBQxpZHhXbGdBbW91bnQEC29sZEZ1bmRzVXNkCQBlAgkAkQMCBQhjdXJTdGF0cwULaWR4V2xnRnVuZHMFB3VzZHRBbXQECHdsZ1ByaWNlCQBrAwULb2xkRnVuZHNVc2QFBU1VTFQ4BQxjdXJXbGdBbW91bnQECGJ1eVByaWNlCQBrAwUId2xnUHJpY2UABgAFBAl3bGdBbW91bnQJAGsDBQd1c2R0QW10BQVNVUxUOAUIYnV5UHJpY2UDCQBmAgUJbWluQW1vdW50BQl3bGdBbW91bnQJAAIBAjBQcmljZSBjaGFuZ2VkIGR1cmluZyBvcGVyYXRpb24sIHBsZWFzZSB0cnkgYWdhaW4EDHByb2ZpdEFtb3VudAkAaQIFB3VzZHRBbXQABgQKZGVsdGFGdW5kcwkAZQIFB3VzZHRBbXQFDHByb2ZpdEFtb3VudAQIcmVpc3N1ZWQJAGsDBQxjdXJXbGdBbW91bnQFCmRlbHRhRnVuZHMFC29sZEZ1bmRzVXNkCQCUCgIJAMwIAgkBB1JlaXNzdWUDBQp3bGdBc3NldElkBQhyZWlzc3VlZAYJAMwIAgkBDEludGVnZXJFbnRyeQIFEndsZ0lzc3VlZEFtb3VudEtleQkAZAIFDGN1cldsZ0Ftb3VudAUIcmVpc3N1ZWQJAMwIAgkBDEludGVnZXJFbnRyeQIJARRrZXlMYXN0QXJiVGltZUJ5VXNlcgEFBGFkZHIIBQlsYXN0QmxvY2sJdGltZXN0YW1wCQDMCAIJAQ5TY3JpcHRUcmFuc2ZlcgMJARFAZXh0ck5hdGl2ZSgxMDYyKQEJAQV2YWx1ZQEJAKIIAQUNcHJvZml0QWRkcktleQUMcHJvZml0QW1vdW50BQt1c2R0QXNzZXRJZAkAzAgCCQEOU2NyaXB0VHJhbnNmZXIDBQZjYWxsZXIFCXdsZ0Ftb3VudAUKd2xnQXNzZXRJZAUDbmlsBQxwcm9sb2dSZXN1bHQBaQEHc2VsbFdsZwEJbWluQW1vdW50BAxwcm9sb2dSZXN1bHQJAQZwcm9sb2cAAwkBAiE9AgkAkAMBCAUBaQhwYXltZW50cwABCQACAQIiZXhhY3RseSAxIHBheW1lbnQgbXVzdCBiZSBhdHRhY2hlZAQDcG10CQCRAwIIBQFpCHBheW1lbnRzAAAEBndsZ0FtdAgFA3BtdAZhbW91bnQECnBtdEFzc2V0SWQJARN2YWx1ZU9yRXJyb3JNZXNzYWdlAggFA3BtdAdhc3NldElkAh5XQVZFUyBjYW4ndCBiZSB1c2VkIGFzIHBheW1lbnQDCQECIT0CBQpwbXRBc3NldElkBQp3bGdBc3NldElkCQACAQIVV0xHT0xEIHBheW1lbnRzIG9ubHkhBAZjYWxsZXIIBQFpBmNhbGxlcgQEYWRkcgkApQgBBQZjYWxsZXIEB21heFVzZHQJAQxnZXRTd2FwTGltaXQBBQRhZGRyBAhjdXJTdGF0cwkBC2dldFdsZ1N0YXRzAAQMY3VyV2xnQW1vdW50CQCRAwIFCGN1clN0YXRzBQxpZHhXbGdBbW91bnQECXNlbGxQcmljZQkAawMJAJEDAgUIY3VyU3RhdHMFC2lkeFdsZ1ByaWNlAAQABQQHdXNkdEFtdAkAawMFBndsZ0FtdAUJc2VsbFByaWNlBQVNVUxUOAMJAGYCBQd1c2R0QW10BQdtYXhVc2R0CQACAQkArAICCQCsAgICEFlvdSBjYW4gZ2V0IG1heCAJAQpmaXhlZFBvaW50AgUHbWF4VXNkdAAGAgUgVVNEVAMJAGYCBQltaW5BbW91bnQFB3VzZHRBbXQJAAIBAjBQcmljZSBjaGFuZ2VkIGR1cmluZyBvcGVyYXRpb24sIHBsZWFzZSB0cnkgYWdhaW4EDHByb2ZpdEFtb3VudAkAaQIFB3VzZHRBbXQABAQGYnVybmVkCQBrAwkAZAIFB3VzZHRBbXQFDHByb2ZpdEFtb3VudAUMY3VyV2xnQW1vdW50CQCRAwIFCGN1clN0YXRzBQtpZHhXbGdGdW5kcwkAlAoCCQDMCAIJAQRCdXJuAgUKd2xnQXNzZXRJZAUGYnVybmVkCQDMCAIJAQxJbnRlZ2VyRW50cnkCBRJ3bGdJc3N1ZWRBbW91bnRLZXkJAGUCBQxjdXJXbGdBbW91bnQFBmJ1cm5lZAkAzAgCCQEMSW50ZWdlckVudHJ5AgkBFGtleUxhc3RBcmJUaW1lQnlVc2VyAQUEYWRkcggFCWxhc3RCbG9jawl0aW1lc3RhbXAJAMwIAgkBDlNjcmlwdFRyYW5zZmVyAwkBEUBleHRyTmF0aXZlKDEwNjIpAQkBBXZhbHVlAQkAoggBBQ1wcm9maXRBZGRyS2V5BQxwcm9maXRBbW91bnQFC3VzZHRBc3NldElkCQDMCAIJAQ5TY3JpcHRUcmFuc2ZlcgMFBmNhbGxlcgUHdXNkdEFtdAULdXNkdEFzc2V0SWQFA25pbAUMcHJvbG9nUmVzdWx0AWkBBWNsYWltAAQMcHJvbG9nUmVzdWx0CQEGcHJvbG9nAAQHYWN0aW9ucwgJAQ1jbGFpbUludGVybmFsAQgFAWkGY2FsbGVyAl8xCQCUCgIFB2FjdGlvbnMFDHByb2xvZ1Jlc3VsdAFpAQtvblN0YWtlTGFuZAEEYWRkcgMJAQIhPQIIBQFpBmNhbGxlcgUPc3Rha2luZ0NvbnRyYWN0CQACAQIRUGVybWlzc2lvbiBkZW5pZWQJAQ1jbGFpbUludGVybmFsAQkBEUBleHRyTmF0aXZlKDEwNjIpAQUEYWRkcgFpAQ1vblVuc3Rha2VMYW5kAQRhZGRyAwkBAiE9AggFAWkGY2FsbGVyBQ9zdGFraW5nQ29udHJhY3QJAAIBAhFQZXJtaXNzaW9uIGRlbmllZAkBDWNsYWltSW50ZXJuYWwBCQERQGV4dHJOYXRpdmUoMTA2MikBBQRhZGRyAGT001U=", "height": 2648547, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: CDpwHRtmo6zdWy3NCUS5Rw66qFpeG3gn1asXF4FW8SDH Next: 35Z36AT5VfLXJ5FB19VsrV2o1EZ4SWLja7GZ2EFMY4Qt Diff:
OldNewDifferences
256256 let be = valueOrElse(getInteger(aY(aX)), 0)
257257 let bf = lastBlock.timestamp
258258 if ((h > (bf - be)))
259- then throw("Arbitrages are possible once a 10 minutes")
259+ then throw((("Arbitrages are possible once a " + toString((h / 60000))) + "ms"))
260260 else {
261261 let bg = Y(aX)[c]
262262 let bh = pow(bg, 0, aO, 8, 8, CEILING)
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 6 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 func a () = "contractsBlocked"
55
66
77 let b = 0
88
99 let c = 1
1010
1111 let d = take(drop(this.bytes, 1), 1)
1212
1313 let e = {
1414 let f = d
1515 if ((base58'2W' == f))
1616 then base58'9wc3LXNA4TEBsXyKtoLE9mrbDD7WMHXvXrCjZvabLAsi'
1717 else if ((base58'2T' == f))
1818 then base58'6mWwf9mZBjVgkC54idpyaZLQfAosD914wT8fGf2iiY63'
1919 else throw("Unknown chain")
2020 }
2121
2222 let g = {
2323 let f = d
2424 if ((base58'2W' == f))
2525 then "3PQCuvFbvh4LkPUnrnU1z3jnbA1p9m3WNhv"
2626 else if ((base58'2T' == f))
2727 then "3MumkGGztCKAXpWDqxkddofqXSUbqQkvSJy"
2828 else throw("Unknown chain")
2929 }
3030
3131 let h = {
3232 let f = d
3333 if ((base58'2W' == f))
3434 then 600000
3535 else if ((base58'2T' == f))
3636 then 60000
3737 else throw("Unknown chain")
3838 }
3939
4040 let i = "__"
4141
4242 let j = 1000000
4343
4444 let k = 100000000
4545
4646 let l = 25
4747
4848 let m = 100
4949
5050 let n = 225
5151
5252 let o = 400
5353
5454 let p = 625
5555
5656 func q (r,s) = valueOrErrorMessage(getString(r, s), makeString(["mandatory ", toString(r), ".", s, " is not defined"], ""))
5757
5858
5959 let t = 1
6060
6161 let u = 2
6262
6363 let v = 4
6464
6565 let w = 5
6666
6767 func x () = "%s__restConfig"
6868
6969
7070 func y () = "%s__restAddr"
7171
7272
7373 func z (A) = split_4C(q(A, x()), i)
7474
7575
7676 func B (C,D) = valueOrErrorMessage(addressFromString(C[D]), ("Rest cfg doesn't contain address at index " + toString(D)))
7777
7878
7979 let E = addressFromStringValue(valueOrElse(getString(this, y()), g))
8080
8181 let C = z(E)
8282
8383 let F = B(C, t)
8484
8585 let G = B(C, u)
8686
8787 let H = B(C, v)
8888
8989 let I = B(C, w)
9090
9191 let J = 1
9292
9393 func K () = "resTypesProportions"
9494
9595
9696 func L (M) = ("stakedLandsByOwner_" + M)
9797
9898
9999 let N = "wlg_issuedAmount"
100100
101101 let O = "wlg_assetId"
102102
103103 let P = valueOrErrorMessage(getBinary(H, O), "Not initialized yet")
104104
105105 let Q = 0
106106
107107 let R = 1
108108
109109 let S = 2
110110
111111 func T (U) = {
112112 let f = U
113113 if ($isInstanceOf(f, "Int"))
114114 then {
115115 let V = f
116116 V
117117 }
118118 else throw("fail to cast into Int")
119119 }
120120
121121
122122 func W (X) = {
123123 let f = X
124124 if (("S" == f))
125125 then l
126126 else if (("M" == f))
127127 then m
128128 else if (("L" == f))
129129 then n
130130 else if (("XL" == f))
131131 then o
132132 else if (("XXL" == f))
133133 then p
134134 else throw("Unknown land size")
135135 }
136136
137137
138138 func Y (Z) = {
139139 let aa = split(valueOrElse(getString(F, K()), "0_0_0_0_0_0"), "_")
140140 func ab (ac,ad) = (ac + parseIntValue(ad))
141141
142142 let ae = {
143143 let af = aa
144144 let ag = size(af)
145145 let ah = 0
146146 func ai (aj,ak) = if ((ak >= ag))
147147 then aj
148148 else ab(aj, af[ak])
149149
150150 func al (aj,ak) = if ((ak >= ag))
151151 then aj
152152 else throw("List size exceeds 6")
153153
154154 al(ai(ai(ai(ai(ai(ai(ah, 0), 1), 2), 3), 4), 5), 6)
155155 }
156156 let am = if ((Z == ""))
157157 then 0
158158 else {
159159 let an = getString(F, L(Z))
160160 let ao = if (isDefined(an))
161161 then split_51C(value(an), "_")
162162 else nil
163163 func ap (ac,aq) = {
164164 let ar = value(assetInfo(fromBase58String(aq)))
165165 let X = split(ar.description, "_")[J]
166166 (ac + W(X))
167167 }
168168
169169 let af = ao
170170 let ag = size(af)
171171 let ah = 0
172172 func as (aj,ak) = if ((ak >= ag))
173173 then aj
174174 else ap(aj, af[ak])
175175
176176 func at (aj,ak) = if ((ak >= ag))
177177 then aj
178178 else throw("List size exceeds 100")
179179
180180 at(as(as(as(as(as(as(as(as(as(as(as(as(as(as(as(as(as(as(as(as(as(as(as(as(as(as(as(as(as(as(as(as(as(as(as(as(as(as(as(as(as(as(as(as(as(as(as(as(as(as(as(as(as(as(as(as(as(as(as(as(as(as(as(as(as(as(as(as(as(as(as(as(as(as(as(as(as(as(as(as(as(as(as(as(as(as(as(as(as(as(as(as(as(as(as(as(as(as(as(as(ah, 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)
181181 }
182182 [ae, am]
183183 }
184184
185185
186186 func au () = {
187187 let av = valueOrErrorMessage(getInteger(H, N), "WLGOLD is not issued yet")
188188 let aw = assetBalance(G, e)
189189 let ax = assetBalance(E, e)
190190 let ay = assetBalance(H, e)
191191 let az = assetBalance(I, e)
192192 let aA = (((aw + ax) + ay) + az)
193193 [av, fraction(aA, k, av), aA, aw, ax, ay, az]
194194 }
195195
196196
197197 func aB (aC,aD) = {
198198 let aE = pow(10, 0, aD, 0, 0, DOWN)
199199 ((toString((aC / aE)) + ".") + toString((aC % aE)))
200200 }
201201
202202
203203 let aF = 100000000000000
204204
205205 let aG = 100000
206206
207207 let aH = 200000
208208
209209 let aI = 100000
210210
211211 let aJ = 400000
212212
213213 let aK = 31557600000
214214
215215 let aL = 604800000
216216
217217 let aM = 156
218218
219219 let aN = 100000000
220220
221221 let aO = 50000000
222222
223223 let aP = "wlg_issueTime"
224224
225225 let aQ = "marketingAddr"
226226
227227 let aR = "teamAddr"
228228
229229 let aS = "profitAddr"
230230
231231 let aT = "lastClaimedTime_marketing"
232232
233233 let aU = "lastClaimedTime_team"
234234
235235 let aV = "lastClaimedTime_activities"
236236
237237 func aW (aX) = ("lastClaimedTimeUser_" + aX)
238238
239239
240240 func aY (aX) = ("lastArbTimeUser_" + aX)
241241
242242
243243 let aZ = "stakersAmountLeft"
244244
245245 let ba = "stakersAmountPaidTotal"
246246
247247 func bb (aX) = ("stakersAmountPaidUser_" + aX)
248248
249249
250250 func bc () = if (valueOrElse(getBoolean(F, a()), false))
251251 then throw("Contracts are under maintenance")
252252 else T(invoke(F, "saveLastTx", nil, nil))
253253
254254
255255 func bd (aX) = {
256256 let be = valueOrElse(getInteger(aY(aX)), 0)
257257 let bf = lastBlock.timestamp
258258 if ((h > (bf - be)))
259- then throw("Arbitrages are possible once a 10 minutes")
259+ then throw((("Arbitrages are possible once a " + toString((h / 60000))) + "ms"))
260260 else {
261261 let bg = Y(aX)[c]
262262 let bh = pow(bg, 0, aO, 8, 8, CEILING)
263263 fraction(aN, bh, k)
264264 }
265265 }
266266
267267
268268 func bi (bj) = {
269269 let bk = toString(bj)
270270 let bf = lastBlock.timestamp
271271 let bl = valueOrErrorMessage(getInteger(aP), "Not initialized")
272272 let bm = valueOrElse(getInteger(aT), bl)
273273 let bn = addressFromStringValue(value(getString(aQ)))
274274 let bo = fraction(fraction(aF, aG, j), (bf - bm), aK)
275275 let bp = valueOrElse(getInteger(aU), bl)
276276 let bq = addressFromStringValue(value(getString(aR)))
277277 let br = fraction(fraction(aF, aH, j), (bf - bp), (3 * aK))
278278 let bs = valueOrElse(getInteger(aV), bl)
279279 let bt = fraction(fraction(aF, aI, j), (bf - bs), (3 * aK))
280280 let bu = ((bf - bl) / aL)
281281 if ((bu > (aM / 2)))
282282 then throw("Please modify contract for next 1.5 years, according to stats")
283283 else {
284284 let bv = Y(bk)
285285 let bw = bv[b]
286286 let bx = valueOrElse(getInteger(aZ), 0)
287287 let by = fraction(bx, (2 * bw), (bw + (max([100000, bw]) * (aM - bu))))
288288 let bz = aW(bk)
289289 let bA = valueOrElse(getInteger(bz), bl)
290290 let bB = fraction(fraction(by, bv[c], bw), (bf - bA), (3 * aK))
291291 let bC = bb(bk)
292292 $Tuple2([ScriptTransfer(bn, bo, P), ScriptTransfer(bq, br, P), ScriptTransfer(E, bt, P), ScriptTransfer(bj, bB, P), IntegerEntry(bC, (valueOrElse(getInteger(bC), 0) + bB)), IntegerEntry(ba, (valueOrElse(getInteger(ba), 0) + bB)), IntegerEntry(aZ, (bx - bB)), IntegerEntry(aT, bf), IntegerEntry(aU, bf), IntegerEntry(aV, bf), IntegerEntry(bz, bf)], bB)
293293 }
294294 }
295295
296296
297297 @Callable(bD)
298298 func constructorV1 (bE,bn,bq,bF) = if ((bD.caller != this))
299299 then throw("Permission denied")
300300 else if (isDefined(getBinary(O)))
301301 then throw("Already initialized")
302302 else {
303303 let av = aF
304304 let bG = Issue("WLGOLD", "WavesLands Gold investment token", av, 8, true, unit, 0)
305305 let bH = calculateAssetId(bG)
306306 [bG, IntegerEntry(aP, lastBlock.timestamp), IntegerEntry(N, av), IntegerEntry(ba, 0), IntegerEntry(aZ, fraction(aF, aJ, j)), BinaryEntry(O, bH), StringEntry(y(), bE), StringEntry(aQ, bn), StringEntry(aR, bq), StringEntry(aS, bF)]
307307 }
308308
309309
310310
311311 @Callable(bD)
312312 func buyWlg (bI) = {
313313 let bJ = bc()
314314 if ((size(bD.payments) != 1))
315315 then throw("exactly 1 payment must be attached")
316316 else {
317317 let bK = bD.payments[0]
318318 let bL = bK.amount
319319 let bM = valueOrErrorMessage(bK.assetId, "WAVES can't be used as payment")
320320 if ((bM != e))
321321 then throw("USDT payments only!")
322322 else {
323323 let bj = bD.caller
324324 let aX = toString(bj)
325325 let bN = bd(aX)
326326 if ((bL > bN))
327327 then throw((("You can spend max " + aB(bN, 6)) + " USDT"))
328328 else {
329329 let bO = au()
330330 let bP = bO[Q]
331331 let bQ = (bO[S] - bL)
332332 let bR = fraction(bQ, k, bP)
333333 let bS = fraction(bR, 6, 5)
334334 let bT = fraction(bL, k, bS)
335335 if ((bI > bT))
336336 then throw("Price changed during operation, please try again")
337337 else {
338338 let bU = (bL / 6)
339339 let bV = (bL - bU)
340340 let bW = fraction(bP, bV, bQ)
341341 $Tuple2([Reissue(P, bW, true), IntegerEntry(N, (bP + bW)), IntegerEntry(aY(aX), lastBlock.timestamp), ScriptTransfer(addressFromStringValue(value(getString(aS))), bU, e), ScriptTransfer(bj, bT, P)], bJ)
342342 }
343343 }
344344 }
345345 }
346346 }
347347
348348
349349
350350 @Callable(bD)
351351 func sellWlg (bI) = {
352352 let bJ = bc()
353353 if ((size(bD.payments) != 1))
354354 then throw("exactly 1 payment must be attached")
355355 else {
356356 let bK = bD.payments[0]
357357 let bX = bK.amount
358358 let bM = valueOrErrorMessage(bK.assetId, "WAVES can't be used as payment")
359359 if ((bM != P))
360360 then throw("WLGOLD payments only!")
361361 else {
362362 let bj = bD.caller
363363 let aX = toString(bj)
364364 let bN = bd(aX)
365365 let bO = au()
366366 let bP = bO[Q]
367367 let bY = fraction(bO[R], 4, 5)
368368 let bL = fraction(bX, bY, k)
369369 if ((bL > bN))
370370 then throw((("You can get max " + aB(bN, 6)) + " USDT"))
371371 else if ((bI > bL))
372372 then throw("Price changed during operation, please try again")
373373 else {
374374 let bU = (bL / 4)
375375 let bZ = fraction((bL + bU), bP, bO[S])
376376 $Tuple2([Burn(P, bZ), IntegerEntry(N, (bP - bZ)), IntegerEntry(aY(aX), lastBlock.timestamp), ScriptTransfer(addressFromStringValue(value(getString(aS))), bU, e), ScriptTransfer(bj, bL, e)], bJ)
377377 }
378378 }
379379 }
380380 }
381381
382382
383383
384384 @Callable(bD)
385385 func claim () = {
386386 let bJ = bc()
387387 let ca = bi(bD.caller)._1
388388 $Tuple2(ca, bJ)
389389 }
390390
391391
392392
393393 @Callable(bD)
394394 func onStakeLand (aX) = if ((bD.caller != F))
395395 then throw("Permission denied")
396396 else bi(addressFromStringValue(aX))
397397
398398
399399
400400 @Callable(bD)
401401 func onUnstakeLand (aX) = if ((bD.caller != F))
402402 then throw("Permission denied")
403403 else bi(addressFromStringValue(aX))
404404
405405

github/deemru/w8io/03bedc9 
161.30 ms