tx · 7dm32yV1cPE9e3ZdD3TSp1K33oSUkK7YTN4DwLjue5mU

3Mp3nG9T5fKGziHW8mcCqx3jMFx3towh3WA:  -0.02300000 Waves

2023.03.14 11:15 [2489456] smart account 3Mp3nG9T5fKGziHW8mcCqx3jMFx3towh3WA > SELF 0.00000000 Waves

{ "type": 13, "id": "7dm32yV1cPE9e3ZdD3TSp1K33oSUkK7YTN4DwLjue5mU", "fee": 2300000, "feeAssetId": null, "timestamp": 1678781737285, "version": 2, "chainId": 84, "sender": "3Mp3nG9T5fKGziHW8mcCqx3jMFx3towh3WA", "senderPublicKey": "D46gQxzmdzdCTYRg6dMcwFoUrc6ZmxF6GKd5ZoTkvzp1", "proofs": [ "22KrXJzBzxRnJNd5hR2WMyzjXPHj3tP37EFCNrth5nkjq9btjDzD8VnzYM5gxcJJo1z7MFu5eiPCkD74TsGh97oZ" ], "script": "base64:BgLEFQgCEgMKAQgSABIECgIIARIHCgUICAgIARIECgIICBIFCgMICAESBAoCCAgSAwoBARIDCgEBEgQKAggIEgQKAggEEgASAwoBARIAEgQKAggIEgQKAggIEgQKAggIIglzZXBhcmF0b3IiDnBvb2xXZWlnaHRNdWx0Ig9tYXhEZXB0aERlZmF1bHQiFmZpbmFsaXphdGlvblN0YWdlVG90YWwiF2ZpbmFsaXphdGlvblN0YWdlU2hhcmVzIg5rZXlFcG9jaExlbmd0aCIRa2V5RXBvY2hMZW5ndGhOZXciFWtleUVwb2NoTGVuZ3RoQnlFcG9jaCIFZXBvY2giD2tleUN1cnJlbnRFcG9jaCILa2V5TWF4RGVwdGgiImtleVZvdGluZ0VtaXNzaW9uQ2FuZGlkYXRlQ29udHJhY3QiEmtleUZhY3RvcnlDb250cmFjdCITa2V5Qm9vc3RpbmdDb250cmFjdCISa2V5U3Rha2luZ0NvbnRyYWN0IhRrZXlGaW5hbGl6YXRpb25TdGFnZSILa2V5TmV4dFBvb2wiC2tleU5leHRVc2VyIg5rZXlTdGFydEhlaWdodCIRa2V5Q3VycmVudEVwb2NoVWkiEGtleVN0YXJ0SGVpZ2h0VWkiHWtleUZpbmFsaXphdGlvblNob3VsZEJlRm9yY2VkIhVrZXlTdGFydEhlaWdodEJ5RXBvY2giDGtleUZpbmFsaXplZCIJa2V5SW5MaXN0IgRwb29sIgskdDAxNjkzMTczMyINYW1vdW50QXNzZXRJZCIMcHJpY2VBc3NldElkIgdrZXlVc2VkIgdhZGRyZXNzIgdrZXlWb3RlIgskdDAyMDA3MjA0NyIPa2V5Vm90aW5nUmVzdWx0IgskdDAyMjI5MjI2OSIVa2V5Vm90aW5nUmVzdWx0U3Rha2VkIgxscEFzc2V0SWRTdHIiDGtleVBvb2xTaGFyZSILJHQwMjU5MDI2MzAiDWtleVRvdGFsVm90ZXMiD2tleVN0YWtlZEJ5VXNlciIOdXNlckFkZHJlc3NTdHIiB3dyYXBFcnIiA21zZyIIdGhyb3dFcnIiDmdldFZhbHVlT3JGYWlsIgNrZXkiBHR5cGUiBWVycm9yIgckbWF0Y2gwIgNzdHIiA2ludCIMZ2V0U3RyT3JGYWlsIgFAIgxnZXRJbnRPckZhaWwiDHBvb2xUb1N0cmluZyIMc3RyaW5nVG9Qb29sIgVwYXJ0cyIWZ2V0THBBc3NldEJ5UG9vbEFzc2V0cyIfa2V5TWFwcGluZ3NCYXNlQXNzZXQyaW50ZXJuYWxJZCIMYmFzZUFzc2V0U3RyIilrZXlNYXBwaW5nUG9vbEFzc2V0c1RvUG9vbENvbnRyYWN0QWRkcmVzcyIYaW50ZXJuYWxBbW91bnRBc3NldElkU3RyIhdpbnRlcm5hbFByaWNlQXNzZXRJZFN0ciIfa2V5TWFwcGluZ1Bvb2xDb250cmFjdFRvTFBBc3NldCITcG9vbENvbnRyYWN0QWRkcmVzcyIPZmFjdG9yeUNvbnRyYWN0IhVhbW91bnRBc3NldEludGVybmFsSWQiFHByaWNlQXNzZXRJbnRlcm5hbElkIglscEFzc2V0SWQiGGNoZWNrV3hFbWlzc2lvblBvb2xMYWJlbCILJHQwNTE1MjUxOTIiDXBvb2xzTGlzdE5hbWUiEGdldFZvdGVzTGlzdE5hbWUiCyR0MDU0OTM1NTMzIgtrZXlMaXN0SGVhZCIIbGlzdE5hbWUiBG1ldGEiC2tleUxpc3RTaXplIgtrZXlMaXN0UHJldiICaWQiC2tleUxpc3ROZXh0Igxjb250YWluc05vZGUiCmhlYWRPclVuaXQiCnByZXZPclVuaXQiCm5leHRPclVuaXQiEWluc2VydE5vZGVBY3Rpb25zIghsaXN0U2l6ZSIJY2hlY2tOb2RlIhFkZWxldGVOb2RlQWN0aW9ucyITa2V5TWFuYWdlclB1YmxpY0tleSIaa2V5UGVuZGluZ01hbmFnZXJQdWJsaWNLZXkiFm1hbmFnZXJQdWJsaWNLZXlPclVuaXQiAXMiHXBlbmRpbmdNYW5hZ2VyUHVibGljS2V5T3JVbml0IhVwZXJtaXNzaW9uRGVuaWVkRXJyb3IiCG11c3RUaGlzIgFpIgttdXN0TWFuYWdlciICcGsiF3BlbmRpbmdNYW5hZ2VyUHVibGljS2V5IgtjaGVja0NhbGxlciIVY2hlY2tNYW5hZ2VyUHVibGljS2V5IgJwbSIFaGFzUE0iB2NoZWNrUE0iC3VzZXJBZGRyZXNzIgx0YXJnZXRIZWlnaHQiF2Jvb3N0aW5nQ29udHJhY3RBZGRyZXNzIh92b3RpbmdFbWlzc2lvbkNhbmRpZGF0ZUNvbnRyYWN0IhBib29zdGluZ0NvbnRyYWN0Ig9zdGFraW5nQ29udHJhY3QiC2Vwb2NoTGVuZ3RoIgZjaGVja3MiDWluTGlzdEFjdGlvbnMiGGN1cnJlbnRFcG9jaElzTm90RGVmaW5lZCISc3RhcnRIZWlnaHRBY3Rpb25zIgZhbW91bnQiC3N0YXJ0SGVpZ2h0IgllbmRIZWlnaHQiF2ZpbmFsaXphdGlvblN0YWdlT3JVbml0IgR1c2VkIgR2b3RlIgpwb29sUmVzdWx0Igp0b3RhbFZvdGVzIhNnd3hBbW91bnRBdEVuZFRvdGFsIglhdmFpbGFibGUiB25ld1ZvdGUiCnd4RW1pc3Npb24iDXZvdGVzTGlzdE5hbWUiEHZvdGVzTGlzdEFjdGlvbnMiDm5ld0Vwb2NoTGVuZ3RoIgtuZXdNYXhEZXB0aCIHcG9vbFN0ciINZXBvY2hQcmV2aW91cyITc3RhcnRIZWlnaHRQcmV2aW91cyITZXBvY2hMZW5ndGhQcmV2aW91cyIRZW5kSGVpZ2h0UHJldmlvdXMiEGNoZWNrVGFyZ2V0RXBvY2giDSR0MDE3OTg0MTgwMjQiG2d3eEFtb3VudEF0RW5kVG90YWxQcmV2aW91cyIMdm90aW5nUmVzdWx0Igx2b3RlUHJldmlvdXMiGnZvdGluZ1Jlc3VsdFN0YWtlZFByZXZpb3VzIgxzdGFrZWRCeVVzZXIiGXZvdGluZ1Jlc3VsdFN0YWtlZEFjdGlvbnMiB2FjdGlvbnMiBWZvcmNlIgt0YXJnZXRFcG9jaCIMY3VycmVudEVwb2NoIg0kdDAyMDM2NjIwNDA2IgFyIgVzaGFyZSIPbW9kaWZ5V2VpZ2h0SW52IhBwb29sc0xpc3RBY3Rpb25zIg1wcmV2aW91c0Vwb2NoIghuZXdFcG9jaCIUbmV3RXBvY2hMZW5ndGhPcHRpb24iFW5ld0Vwb2NoTGVuZ3RoQWN0aW9ucyIKcG9vbE9yVW5pdCIKdXNlck9yVW5pdCIHJG1hdGNoMSIMcG9vbHNIZWFkU3RyIg5uZXh0VXNlck9yVW5pdCIEdXNlciIEbmV4dCIOcHJvY2Vzc1ZvdGVJbnYiDm5leHRQb29sT3JVbml0IgckbWF0Y2gyIghuZXh0VXNlciILbmV4dFBvb2xTdHIiB2NvdW50ZXIiBnJlc3VsdCIIbWF4RGVwdGgiA2ludiICdHgiBnZlcmlmeSIPdGFyZ2V0UHVibGljS2V5OAABYQICX18AAWIAgMLXLwABYwAKAAFkAAAAAWUAAQABZgkAuQkCCQDMCAICAiVzCQDMCAICC2Vwb2NoTGVuZ3RoBQNuaWwFAWEAAWcJALkJAgkAzAgCAgQlcyVzCQDMCAICEGVwb2NoTGVuZ3RoX19uZXcFA25pbAUBYQEBaAEBaQkAuQkCCQDMCAICBCVzJWQJAMwIAgILZXBvY2hMZW5ndGgJAMwIAgkApAMBBQFpBQNuaWwFAWEAAWoJALkJAgkAzAgCAgIlcwkAzAgCAgxjdXJyZW50RXBvY2gFA25pbAUBYQABawkAuQkCCQDMCAICAiVzCQDMCAICCG1heERlcHRoBQNuaWwFAWEAAWwJALkJAgkAzAgCAgIlcwkAzAgCAh92b3RpbmdFbWlzc2lvbkNhbmRpZGF0ZUNvbnRyYWN0BQNuaWwFAWEAAW0JALkJAgkAzAgCAgIlcwkAzAgCAg9mYWN0b3J5Q29udHJhY3QFA25pbAUBYQABbgkAuQkCCQDMCAICAiVzCQDMCAICEGJvb3N0aW5nQ29udHJhY3QFA25pbAUBYQABbwkAuQkCCQDMCAICAiVzCQDMCAICD3N0YWtpbmdDb250cmFjdAUDbmlsBQFhAAFwCQC5CQIJAMwIAgICJXMJAMwIAgIRZmluYWxpemF0aW9uU3RhZ2UFA25pbAUBYQABcQkAuQkCCQDMCAICAiVzCQDMCAICCG5leHRQb29sBQNuaWwFAWEAAXIJALkJAgkAzAgCAgIlcwkAzAgCAghuZXh0VXNlcgUDbmlsBQFhAAFzCQC5CQIJAMwIAgICJXMJAMwIAgILc3RhcnRIZWlnaHQFA25pbAUBYQABdAkAuQkCCQDMCAICAiVzCQDMCAICDmN1cnJlbnRFcG9jaFVpBQNuaWwFAWEAAXUJALkJAgkAzAgCAgIlcwkAzAgCAg1zdGFydEhlaWdodFVpBQNuaWwFAWEAAXYJALkJAgkAzAgCAgIlcwkAzAgCAgVmb3JjZQUDbmlsBQFhAQF3AQFpCQC5CQIJAMwIAgIEJXMlZAkAzAgCAgtzdGFydEhlaWdodAkAzAgCCQCkAwEFAWkFA25pbAUBYQEBeAEBaQkAuQkCCQDMCAICBCVzJWQJAMwIAgIJZmluYWxpemVkCQDMCAIJAKQDAQUBaQUDbmlsBQFhAQF5AQF6BAFBBQF6BAFCCAUBQQJfMQQBQwgFAUECXzIJALkJAgkAzAgCAgYlcyVzJXMJAMwIAgIGaW5MaXN0CQDMCAIFAUIJAMwIAgUBQwUDbmlsBQFhAQFEAgFFAWkJALkJAgkAzAgCAgYlcyVzJWQJAMwIAgIEdXNlZAkAzAgCCQClCAEFAUUJAMwIAgkApAMBBQFpBQNuaWwFAWEBAUYDAXoBRQFpBAFHBQF6BAFCCAUBRwJfMQQBQwgFAUcCXzIJALkJAgkAzAgCAgolcyVzJXMlcyVkCQDMCAICBHZvdGUJAMwIAgUBQgkAzAgCBQFDCQDMCAIJAKUIAQUBRQkAzAgCCQCkAwEFAWkFA25pbAUBYQEBSAIBegFpBAFJBQF6BAFCCAUBSQJfMQQBQwgFAUkCXzIJALkJAgkAzAgCAgglcyVzJXMlZAkAzAgCAgx2b3RpbmdSZXN1bHQJAMwIAgUBQgkAzAgCBQFDCQDMCAIJAKQDAQUBaQUDbmlsBQFhAQFKAgFLAWkJALkJAgkAzAgCAgYlcyVzJWQJAMwIAgISdm90aW5nUmVzdWx0U3Rha2VkCQDMCAIFAUsJAMwIAgkApAMBBQFpBQNuaWwFAWEBAUwCAXoBaQQBTQUBegQBQggFAU0CXzEEAUMIBQFNAl8yCQC5CQIJAMwIAgIIJXMlcyVzJWQJAMwIAgIJcG9vbFNoYXJlCQDMCAIFAUIJAMwIAgUBQwkAzAgCCQCkAwEFAWkFA25pbAUBYQEBTgEBaQkAuQkCCQDMCAICBCVzJWQJAMwIAgIKdG90YWxWb3RlcwkAzAgCCQCkAwEFAWkFA25pbAUBYQEBTwIBSwFQCQC5CQIJAMwIAgIGJXMlcyVzCQDMCAICBnN0YWtlZAkAzAgCBQFQCQDMCAIFAUsFA25pbAUBYQEBUQEBUgkAuQkCCQDMCAICFXZvdGluZ19lbWlzc2lvbi5yaWRlOgkAzAgCBQFSBQNuaWwCASABAVMBAVIJAAIBCQEBUQEFAVIBAVQDAUUBVQFWBAFXCQC5CQIJAMwIAgIKbWFuZGF0b3J5IAkAzAgCCQClCAEFAUUJAMwIAgIBLgkAzAgCBQFVCQDMCAICDyBpcyBub3QgZGVmaW5lZAUDbmlsAgAJARN2YWx1ZU9yRXJyb3JNZXNzYWdlAgQBWAUBVgMJAAECBQFYAgZTdHJpbmcEAVkFAVgJAJ0IAgUBRQUBVQMJAAECBQFYAgNJbnQEAVoFAVgJAJoIAgUBRQUBVQkAAgECEmludmFsaWQgZW50cnkgdHlwZQUBVwECYWECAUUBVQoAAmFiCQEBVAMFAUUFAVUCAAMJAAECBQJhYgIGU3RyaW5nBQJhYgkAAgEJAKwCAgkAAwEFAmFiAhsgY291bGRuJ3QgYmUgY2FzdCB0byBTdHJpbmcBAmFjAgFFAVUKAAJhYgkBAVQDBQFFBQFVAAADCQABAgUCYWICA0ludAUCYWIJAAIBCQCsAgIJAAMBBQJhYgIYIGNvdWxkbid0IGJlIGNhc3QgdG8gSW50AQJhZAEBegkArAICCQCsAgIIBQF6Al8xBQFhCAUBegJfMgECYWUBAVkEAmFmCQC1CQIFAVkFAWEDCQAAAgkAkAMBBQJhZgACCQCUCgIJAJEDAgUCYWYAAAkAkQMCBQJhZgABCQACAQITaW52YWxpZCBwb29sIHN0cmluZwECYWcCAUIBQwoBAmFoAQJhaQkArAICAiglcyVzJXNfX21hcHBpbmdzX19iYXNlQXNzZXQyaW50ZXJuYWxJZF9fBQJhaQoBAmFqAgJhawJhbAkArAICCQCsAgIJAKwCAgkArAICAgolZCVkJXMlc19fCQCkAwEFAmFrAgJfXwkApAMBBQJhbAIjX19tYXBwaW5nc19fcG9vbEFzc2V0czJQb29sQ29udHJhY3QKAQJhbQECYW4JAKwCAgkArAICAgglcyVzJXNfXwUCYW4CIF9fbWFwcGluZ3NfX3Bvb2xDb250cmFjdDJMcEFzc2V0BAJhbwkBEUBleHRyTmF0aXZlKDEwNjIpAQkBAmFhAgUEdGhpcwUBbQQCYXAJAQJhYwIFAmFvCQECYWgBBQFCBAJhcQkBAmFjAgUCYW8JAQJhaAEFAUMEAmFuCQECYWECBQJhbwkBAmFqAgUCYXAFAmFxBAJhcgkBAmFhAgUCYW8JAQJhbQEFAmFuBQJhcgECYXMBAXoEAmF0BQF6BAFCCAUCYXQCXzEEAUMIBQJhdAJfMgQCYW8JARFAZXh0ck5hdGl2ZSgxMDYyKQEJAQJhYQIFBHRoaXMFAW0KAAJhYgkA/AcEBQJhbwIYY2hlY2tXeEVtaXNzaW9uUG9vbExhYmVsCQDMCAIFAUIJAMwIAgUBQwUDbmlsBQNuaWwDCQABAgUCYWICB0Jvb2xlYW4FAmFiCQACAQkArAICCQADAQUCYWICHCBjb3VsZG4ndCBiZSBjYXN0IHRvIEJvb2xlYW4AAmF1AgVwb29scwECYXYBAXoEAmF3BQF6BAFCCAUCYXcCXzEEAUMIBQJhdwJfMgkAuQkCCQDMCAICBXZvdGVzCQDMCAIFAUIJAMwIAgUBQwUDbmlsBQFhAQJheAECYXkEAmF6AwkAAAIFAmF5BQJhdQIEJXMlcwIIJXMlcyVzJXMJALkJAgkAzAgCBQJhegkAzAgCBQJheQkAzAgCAgRoZWFkBQNuaWwFAWEBAmFBAQJheQQCYXoDCQAAAgUCYXkFAmF1AgQlcyVzAgglcyVzJXMlcwkAuQkCCQDMCAIFAmF6CQDMCAIFAmF5CQDMCAICBHNpemUFA25pbAUBYQECYUICAmF5AmFDBAJhegMJAAACBQJheQUCYXUCCCVzJXMlcyVzAgolcyVzJXMlcyVzCQC5CQIJAMwIAgUCYXoJAMwIAgUCYXkJAMwIAgUCYUMJAMwIAgIEcHJldgUDbmlsBQFhAQJhRAICYXkCYUMEAmF6AwkAAAIFAmF5BQJhdQIIJXMlcyVzJXMCCiVzJXMlcyVzJXMJALkJAgkAzAgCBQJhegkAzAgCBQJheQkAzAgCBQJhQwkAzAgCAgRuZXh0BQNuaWwFAWEBAmFFAgJheQJhQwQCYUYJAJ0IAgUEdGhpcwkBAmF4AQUCYXkEAmFHCQCdCAIFBHRoaXMJAQJhQgIFAmF5BQJhQwQCYUgJAJ0IAgUEdGhpcwkBAmFEAgUCYXkFAmFDAwMJAAACBQJhQwkBC3ZhbHVlT3JFbHNlAgUCYUYCAAYJAQIhPQIFAmFHBQR1bml0BgkBAiE9AgUCYUgFBHVuaXQBAmFJAgJheQJhQwQCYUYJAJ0IAgUEdGhpcwkBAmF4AQUCYXkEAmFKCQELdmFsdWVPckVsc2UCCQCaCAIFBHRoaXMJAQJhQQEFAmF5AAAEAmFLAwkBASEBCQECYUUCBQJheQUCYUMGCQACAQILTm9kZSBleGlzdHMDCQAAAgUCYUsFAmFLCQDOCAIJAM4IAgkAzAgCCQEMSW50ZWdlckVudHJ5AgkBAmFBAQUCYXkJAGQCBQJhSgABBQNuaWwDCQECIT0CBQJhRgUEdW5pdAkAzAgCCQELU3RyaW5nRW50cnkCCQECYUQCBQJheQUCYUMJAQV2YWx1ZQEFAmFGCQDMCAIJAQtTdHJpbmdFbnRyeQIJAQJhQgIFAmF5CQEFdmFsdWUBBQJhRgUCYUMFA25pbAUDbmlsCQDMCAIJAQtTdHJpbmdFbnRyeQIJAQJheAEFAmF5BQJhQwUDbmlsCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuAQJhTAICYXkCYUMEAmFGCQCdCAIFBHRoaXMJAQJheAEFAmF5BAJhSgkBC3ZhbHVlT3JFbHNlAgkAmggCBQR0aGlzCQECYUEBBQJheQAABAJhRwkAnQgCBQR0aGlzCQECYUICBQJheQUCYUMEAmFICQCdCAIFBHRoaXMJAQJhRAIFAmF5BQJhQwkAzggCCQDMCAIJAQxJbnRlZ2VyRW50cnkCCQECYUEBBQJheQkAZQIFAmFKAAEFA25pbAMDCQECIT0CBQJhRwUEdW5pdAkBAiE9AgUCYUgFBHVuaXQHCQDMCAIJAQtTdHJpbmdFbnRyeQIJAQJhRAIFAmF5CQEFdmFsdWUBBQJhRwkBBXZhbHVlAQUCYUgJAMwIAgkBC1N0cmluZ0VudHJ5AgkBAmFCAgUCYXkJAQV2YWx1ZQEFAmFICQEFdmFsdWUBBQJhRwkAzAgCCQELRGVsZXRlRW50cnkBCQECYUICBQJheQUCYUMJAMwIAgkBC0RlbGV0ZUVudHJ5AQkBAmFEAgUCYXkFAmFDBQNuaWwDCQECIT0CBQJhSAUEdW5pdAkAzAgCCQELU3RyaW5nRW50cnkCCQECYXgBBQJheQkBBXZhbHVlAQUCYUgJAMwIAgkBC0RlbGV0ZUVudHJ5AQkBAmFEAgUCYXkFAmFDCQDMCAIJAQtEZWxldGVFbnRyeQEJAQJhQgIFAmF5CQEFdmFsdWUBBQJhSAUDbmlsAwkBAiE9AgUCYUcFBHVuaXQJAMwIAgkBC0RlbGV0ZUVudHJ5AQkBAmFCAgUCYXkFAmFDCQDMCAIJAQtEZWxldGVFbnRyeQEJAQJhRAIFAmF5CQEFdmFsdWUBBQJhRwUDbmlsAwkAAAIFAmFDCQELdmFsdWVPckVsc2UCBQJhRgIACQDMCAIJAQtEZWxldGVFbnRyeQEJAQJheAEFAmF5BQNuaWwJAAIBCQCsAgIJAKwCAgkArAICAg5pbnZhbGlkIG5vZGU6IAUCYXkCAS4FAmFDAQJhTQACFCVzX19tYW5hZ2VyUHVibGljS2V5AQJhTgACGyVzX19wZW5kaW5nTWFuYWdlclB1YmxpY0tleQECYU8ABAFYCQCiCAEJAQJhTQADCQABAgUBWAIGU3RyaW5nBAJhUAUBWAkA2QQBBQJhUAMJAAECBQFYAgRVbml0BQR1bml0CQACAQILTWF0Y2ggZXJyb3IBAmFRAAQBWAkAoggBCQECYU4AAwkAAQIFAVgCBlN0cmluZwQCYVAFAVgJANkEAQUCYVADCQABAgUBWAIEVW5pdAUEdW5pdAkAAgECC01hdGNoIGVycm9yAAJhUgkAAgECEVBlcm1pc3Npb24gZGVuaWVkAQJhUwECYVQDCQAAAggFAmFUBmNhbGxlcgUEdGhpcwYFAmFSAQJhVQECYVQEAVgJAQJhTwADCQABAgUBWAIKQnl0ZVZlY3RvcgQCYVYFAVgDCQAAAggFAmFUD2NhbGxlclB1YmxpY0tleQUCYVYGBQJhUgMJAAECBQFYAgRVbml0CQECYVMBBQJhVAkAAgECC01hdGNoIGVycm9yEQJhVAEKc2V0TWFuYWdlcgECYVcEAmFYCQECYVUBBQJhVAMJAAACBQJhWAUCYVgEAmFZCQDZBAEFAmFXAwkAAAIFAmFZBQJhWQkAzAgCCQELU3RyaW5nRW50cnkCCQECYU4ABQJhVwUDbmlsCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuAmFUAQ5jb25maXJtTWFuYWdlcgAEAmFaCQECYVEABAJiYQMJAQlpc0RlZmluZWQBBQJhWgYJAAIBAhJObyBwZW5kaW5nIG1hbmFnZXIDCQAAAgUCYmEFAmJhBAJiYgMJAAACCAUCYVQPY2FsbGVyUHVibGljS2V5CQEFdmFsdWUBBQJhWgYJAAIBAhtZb3UgYXJlIG5vdCBwZW5kaW5nIG1hbmFnZXIDCQAAAgUCYmIFAmJiCQDMCAIJAQtTdHJpbmdFbnRyeQIJAQJhTQAJANgEAQkBBXZhbHVlAQUCYVoJAMwIAgkBC0RlbGV0ZUVudHJ5AQkBAmFOAAUDbmlsCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuAmFUARhnZXRVc2VyR3d4QW1vdW50QXRIZWlnaHQCAmJjAmJkBAJiZQkBE3ZhbHVlT3JFcnJvck1lc3NhZ2UCCQCmCAEJAQJhYQIFBHRoaXMFAW4CIWludmFsaWQgYm9vc3RpbmcgY29udHJhY3QgYWRkcmVzcwkAlAoCBQNuaWwKAAJhYgkA/AcEBQJiZQIgZ2V0VXNlckd3eEFtb3VudEF0SGVpZ2h0UkVBRE9OTFkJAMwIAgUCYmMJAMwIAgUCYmQFA25pbAUDbmlsAwkAAQIFAmFiAgNJbnQFAmFiCQACAQkArAICCQADAQUCYWICGCBjb3VsZG4ndCBiZSBjYXN0IHRvIEludAJhVAELY29uc3RydWN0b3IFAmFvAmJmAmJnAmJoAmJpBAJiagkAzAgCCQECYVUBBQJhVAkAzAgCAwkBAiE9AgkApggBBQJhbwUEdW5pdAYCIGludmFsaWQgZmFjdG9yeSBjb250cmFjdCBhZGRyZXNzCQDMCAIDCQECIT0CCQCmCAEFAmJmBQR1bml0BgIyaW52YWxpZCB2b3RpbmcgZW1pc3Npb24gY2FuZGlkYXRlIGNvbnRyYWN0IGFkZHJlc3MJAMwIAgMJAQIhPQIJAKYIAQUCYmcFBHVuaXQGAiFpbnZhbGlkIGJvb3N0aW5nIGNvbnRyYWN0IGFkZHJlc3MJAMwIAgMJAQIhPQIJAKYIAQUCYmgFBHVuaXQGAiBpbnZhbGlkIHN0YWtpbmcgY29udHJhY3QgYWRkcmVzcwkAzAgCAwkAZgIFAmJpAAAGCQACAQIUaW52YWxpZCBlcG9jaCBsZW5ndGgFA25pbAMJAAACBQJiagUCYmoJAJQKAgkAzAgCCQELU3RyaW5nRW50cnkCBQFtBQJhbwkAzAgCCQELU3RyaW5nRW50cnkCBQFsBQJiZgkAzAgCCQELU3RyaW5nRW50cnkCBQFuBQJiZwkAzAgCCQELU3RyaW5nRW50cnkCBQFvBQJiaAkAzAgCCQEMSW50ZWdlckVudHJ5AgUBZgUCYmkFA25pbAUEdW5pdAkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgJhVAEGY3JlYXRlAgFCAUMEAmJqCQDMCAIDCQAAAgkA2AQBCAgFAmFUBmNhbGxlcgVieXRlcwkBC3ZhbHVlT3JFbHNlAgkAnQgCBQR0aGlzBQFsAgAGCQECYVUBBQJhVAUDbmlsAwkAAAIFAmJqBQJiagQBegkAlAoCBQFCBQFDBAJiawkAzggCCQDMCAIJAQxCb29sZWFuRW50cnkCCQEBeQEFAXoGBQNuaWwJAQJhSQIFAmF1CQECYWQBBQF6BAJibAkAAAIJAJoIAgUEdGhpcwUBagUEdW5pdAQCYm0DBQJibAQBaQAACQDMCAIJAQxJbnRlZ2VyRW50cnkCBQFqBQFpCQDMCAIJAQxJbnRlZ2VyRW50cnkCCQEBdwEFAWkFBmhlaWdodAkAzAgCCQEMSW50ZWdlckVudHJ5AgUBcwUGaGVpZ2h0CQDMCAIJAQxJbnRlZ2VyRW50cnkCBQF0BQFpCQDMCAIJAQxJbnRlZ2VyRW50cnkCBQF1BQZoZWlnaHQFA25pbAUDbmlsCQCUCgIJAM4IAgUCYmsFAmJtBQR1bml0CQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuAmFUAQR2b3RlAwFCAUMCYm4EAXoJAJQKAgUBQgUBQwQBaQkBC3ZhbHVlT3JFbHNlAgkAmggCBQR0aGlzBQFqAAAEAmJvCQECYWMCBQR0aGlzCQEBdwEFAWkEAmJpCQECYWMCBQR0aGlzBQFmBAJicAkAZAIFAmJvBQJiaQQCYnEJAJoIAgUEdGhpcwUBcAQCYnIJAQt2YWx1ZU9yRWxzZQIJAJoIAgUEdGhpcwkBAUQCCAUCYVQGY2FsbGVyBQFpAAAEAmJzCQELdmFsdWVPckVsc2UCCQCaCAIFBHRoaXMJAQFGAwUBeggFAmFUBmNhbGxlcgUBaQAABAJidAkBC3ZhbHVlT3JFbHNlAgkAmggCBQR0aGlzCQEBSAIFAXoFAWkAAAQCYnUJAQt2YWx1ZU9yRWxzZQIJAJoIAgUEdGhpcwkBAU4BBQFpAAAEAmJ2CgACYWIJAPwHBAUEdGhpcwIYZ2V0VXNlckd3eEFtb3VudEF0SGVpZ2h0CQDMCAIJANgEAQgIBQJhVAZjYWxsZXIFYnl0ZXMJAMwIAgUCYnAFA25pbAUDbmlsAwkAAQIFAmFiAgNJbnQFAmFiCQACAQkArAICCQADAQUCYWICGCBjb3VsZG4ndCBiZSBjYXN0IHRvIEludAQCYncJAGUCBQJidgUCYnIEAmJ4CQBkAgUCYnMFAmJuBAJieQkBAmFzAQUBegQCYmoJAMwIAgMJAQIhPQIJAKAIAQkBAXkBBQF6BQR1bml0BgkAAgECDmludmFsaWQgYXNzZXRzCQDMCAIDCQBmAgUCYnAFBmhlaWdodAYJAAIBAg5pbnZhbGlkIGhlaWdodAkAzAgCAwkAAAIFAmJxBQR1bml0BgkAAgECGGZpbmFsaXphdGlvbiBpbiBwcm9ncmVzcwkAzAgCAwkAZgIFAmJ2AAAGCQACAQITeW91IGRvIG5vdCBoYXZlIGdXWAkAzAgCAwMJAGYCBQJibgAACQBnAgUCYncFAmJuBwYJAAIBAg5pbnZhbGlkIGFtb3VudAkAzAgCAwUCYnkGCQACAQIdcG9vbCBoYXNuJ3QgV1hfRU1JU1NJT04gbGFiZWwFA25pbAMJAAACBQJiagUCYmoEAmJ6CQECYXYBBQF6BAFQCQClCAEIBQJhVAZjYWxsZXIEAmJBAwkBAmFFAgUCYnoFAVAFA25pbAkBAmFJAgUCYnoFAVAJAJQKAgkAzggCCQDMCAIJAQxJbnRlZ2VyRW50cnkCCQEBRAIIBQJhVAZjYWxsZXIFAWkJAGQCBQJicgUCYm4JAMwIAgkBDEludGVnZXJFbnRyeQIJAQFGAwUBeggFAmFUBmNhbGxlcgUBaQUCYngJAMwIAgkBDEludGVnZXJFbnRyeQIJAQFIAgUBegUBaQkAZAIFAmJ0BQJibgkAzAgCCQEMSW50ZWdlckVudHJ5AgkBAU4BBQFpCQBkAgUCYnUFAmJuBQNuaWwFAmJBBQR1bml0CQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuAmFUAQpjYW5jZWxWb3RlAgFCAUMEAXoJAJQKAgUBQgUBQwQBaQkBC3ZhbHVlT3JFbHNlAgkAmggCBQR0aGlzBQFqAAAEAmJvCQECYWMCBQR0aGlzCQEBdwEFAWkEAmJpCQECYWMCBQR0aGlzBQFmBAJicAkAZAIFAmJvBQJiaQQCYnEJAJoIAgUEdGhpcwUBcAQCYnIJAQt2YWx1ZU9yRWxzZQIJAJoIAgUEdGhpcwkBAUQCCAUCYVQGY2FsbGVyBQFpAAAEAmJzCQELdmFsdWVPckVsc2UCCQCaCAIFBHRoaXMJAQFGAwUBeggFAmFUBmNhbGxlcgUBaQAABAJidAkBC3ZhbHVlT3JFbHNlAgkAmggCBQR0aGlzCQEBSAIFAXoFAWkAAAQCYnUJAQt2YWx1ZU9yRWxzZQIJAJoIAgUEdGhpcwkBAU4BBQFpAAAEAmJqCQDMCAIDCQECIT0CCQCgCAEJAQF5AQUBegUEdW5pdAYJAAIBAg5pbnZhbGlkIGFzc2V0cwkAzAgCAwkAZgIFAmJwBQZoZWlnaHQGCQACAQIOaW52YWxpZCBoZWlnaHQJAMwIAgMJAAACBQJicQUEdW5pdAYJAAIBAhhmaW5hbGl6YXRpb24gaW4gcHJvZ3Jlc3MJAMwIAgMJAGYCBQJicwAABgkAAgECB25vIHZvdGUFA25pbAMJAAACBQJiagUCYmoEAmJ6CQECYXYBBQF6BAFQCQClCAEIBQJhVAZjYWxsZXIJAJQKAgkAzggCCQDMCAIJAQxJbnRlZ2VyRW50cnkCCQEBRAIIBQJhVAZjYWxsZXIFAWkJAJYDAQkAzAgCCQBlAgUCYnIFAmJzCQDMCAIAAAUDbmlsCQDMCAIJAQtEZWxldGVFbnRyeQEJAQFGAwUBeggFAmFUBmNhbGxlcgUBaQkAzAgCCQEMSW50ZWdlckVudHJ5AgkBAUgCBQF6BQFpCQBlAgUCYnQFAmJzCQDMCAIJAQxJbnRlZ2VyRW50cnkCCQEBTgEFAWkJAGUCBQJidQUCYnMFA25pbAkBAmFMAgUCYnoFAVAFBHVuaXQJAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4CYVQBDnNldEVwb2NoTGVuZ3RoAQJiQgQCYmoJAMwIAgkBAmFVAQUCYVQJAMwIAgMJAGYCBQJiQgAABgkAAgECFGludmFsaWQgZXBvY2ggbGVuZ3RoBQNuaWwDCQAAAgUCYmoFAmJqCQCUCgIJAMwIAgkBDEludGVnZXJFbnRyeQIFAWcFAmJCBQNuaWwFBHVuaXQJAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4CYVQBC3NldE1heERlcHRoAQJiQwQCYmoJAMwIAgkBAmFVAQUCYVQJAMwIAgMJAGYCBQJiQwAABgkAAgECEWludmFsaWQgbWF4IGRlcHRoBQNuaWwDCQAAAgUCYmoFAmJqCQCUCgIJAMwIAgkBDEludGVnZXJFbnRyeQIFAWsFAmJDBQNuaWwFBHVuaXQJAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4CYVQBE3Byb2Nlc3NWb3RlSU5URVJOQUwCAmJEAVAEAmFYCQECYVMBBQJhVAMJAAACBQJhWAUCYVgEAmJjCQETdmFsdWVPckVycm9yTWVzc2FnZQIJAKYIAQUBUAkArAICAipwcm9jZXNzVm90ZUlOVEVSTkFMOiBpbnZhbGlkIHVzZXIgYWRkcmVzcyAFAVAEAWkJAQJhYwIFBHRoaXMFAWoEAmJFCQBlAgUBaQABBAJiaQkBAmFjAgUEdGhpcwUBZgQCYm8JAQJhYwIFBHRoaXMJAQF3AQUBaQQCYnAJAGQCBQJibwUCYmkEAmJGCQECYWMCBQR0aGlzCQEBdwEFAmJFBAJiRwkBAmFjAgUEdGhpcwkBAWgBBQJiRQQCYkgJAGQCBQJiRgUCYkcEAmJJAwkAZwIFAmJFAAAGCQACAQIrcHJvY2Vzc1ZvdGVJTlRFUk5BTDogaW52YWxpZCBwcmV2aW91cyBlcG9jaAMJAAACBQJiSQUCYkkEAXoJAQJhZQEFAmJEBAJiSgUBegQBQggFAmJKAl8xBAFDCAUCYkoCXzIEAmJ5CQECYXMBBQF6BAJidgoAAmFiCQD8BwQFBHRoaXMCGGdldFVzZXJHd3hBbW91bnRBdEhlaWdodAkAzAgCBQFQCQDMCAIFAmJwBQNuaWwFA25pbAMJAAECBQJhYgIDSW50BQJhYgkAAgEJAKwCAgkAAwEFAmFiAhggY291bGRuJ3QgYmUgY2FzdCB0byBJbnQEAmJLCgACYWIJAPwHBAUEdGhpcwIYZ2V0VXNlckd3eEFtb3VudEF0SGVpZ2h0CQDMCAIFAVAJAMwIAgUCYkgFA25pbAUDbmlsAwkAAQIFAmFiAgNJbnQFAmFiCQACAQkArAICCQADAQUCYWICGCBjb3VsZG4ndCBiZSBjYXN0IHRvIEludAQCYnUJAQt2YWx1ZU9yRWxzZQIJAJ8IAQkBAU4BBQFpAAAEAmJMCQELdmFsdWVPckVsc2UCCQCfCAEJAQFIAgUBegUBaQAABAJiTQkBE3ZhbHVlT3JFcnJvck1lc3NhZ2UCCQCfCAEJAQFGAwUBegUCYmMFAmJFCQCsAgIJAKwCAgkArAICCQCsAgICFHByb2Nlc3NWb3RlSU5URVJOQUwgBQJiRAIBIAUBUAISOiBubyBwcmV2aW91cyB2b3RlBAJicgkBC3ZhbHVlT3JFbHNlAgkAmggCBQR0aGlzCQEBRAIFAmJjBQFpAAAEAUsJAQJhZwIFAUIFAUMEAmJOCQELdmFsdWVPckVsc2UCCQCfCAEJAQFKAgUBSwUCYkUAAAQCYmgJARFAZXh0ck5hdGl2ZSgxMDYyKQEJAQJhYQIFBHRoaXMFAW8EAmJPCQELdmFsdWVPckVsc2UCCQCaCAIFAmJoCQEBTwIFAUsFAVAAAAQCYlADCQAAAgUCYk8AAAUDbmlsCQDMCAIJAQxJbnRlZ2VyRW50cnkCCQEBSgIFAUsFAmJFCQBkAgUCYk4FAmJNBQNuaWwEAmJ4AwkAZgIFAmJLAAAJAGsDBQJiTQUCYnYFAmJLAAAEAmJRAwMJAGYCBQJieAAABQJieQcJAMwIAgkBDEludGVnZXJFbnRyeQIJAQFGAwUBegUCYmMFAWkFAmJ4CQDMCAIJAQxJbnRlZ2VyRW50cnkCCQEBTgEFAWkJAGQCBQJidQUCYngJAMwIAgkBDEludGVnZXJFbnRyeQIJAQFIAgUBegUBaQkAZAIFAmJMBQJieAkAzAgCCQEMSW50ZWdlckVudHJ5AgkBAUQCBQJiYwUBaQkAZAIFAmJyBQJieAUDbmlsCQECYUwCCQECYXYBBQF6BQFQCQCUCgIJAM4IAgUCYlEFAmJQBQR1bml0CQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuAmFUARNwcm9jZXNzUG9vbElOVEVSTkFMAgJiRAJiUgQCYVgJAQJhUwEFAmFUAwkAAAIFAmFYBQJhWAQCYlMEAmJUCQECYWMCBQR0aGlzBQFqAwUCYlIFAmJUCQBlAgUCYlQAAQQCYkkDCQBnAgUCYlMAAAYJAAIBAilwcm9jZXNzUG9vbElOVEVSTkFMOiBpbnZhbGlkIHRhcmdldCBlcG9jaAMJAAACBQJiSQUCYkkEAXoJAQJhZQEFAmJEBAJiVQUBegQBQggFAmJVAl8xBAFDCAUCYlUCXzIEAmJoCQERQGV4dHJOYXRpdmUoMTA2MikBCQECYWECBQR0aGlzBQFvBAJhbwkBEUBleHRyTmF0aXZlKDEwNjIpAQkBAmFhAgUEdGhpcwUBbQQCYXIJAQJhZwIFAUIFAUMEAmJWCgACYWIJAPwHBAUCYmgCEnVzZXJzTGlzdFRyYXZlcnNhbAkAzAgCBQJhcgUDbmlsBQNuaWwDCQABAgUCYWICB0Jvb2xlYW4FAmFiCQACAQkArAICCQADAQUCYWICHCBjb3VsZG4ndCBiZSBjYXN0IHRvIEJvb2xlYW4DCQAAAgUCYlYFAmJWAwUCYlYJAJQKAgUDbmlsBgQCYnkJAQJhcwEFAXoEAmJ1CQELdmFsdWVPckVsc2UCCQCaCAIFBHRoaXMJAQFOAQUCYlMAAAQCYkwJAQt2YWx1ZU9yRWxzZQIJAJoIAgUEdGhpcwkBAUgCBQF6BQJiUwAABAJiVwMDCQAAAgUCYnUAAAYJAQEhAQUCYnkAAAkAawMFAmJMBQFiBQJidQQCYlgJAPwHBAUCYW8CDG1vZGlmeVdlaWdodAkAzAgCBQJhcgkAzAgCBQJiVwUDbmlsBQNuaWwDCQAAAgUCYlgFAmJYBAJiWQMDBQJieQYFAmJSBQNuaWwJAM4IAgkAzAgCCQELRGVsZXRlRW50cnkBCQEBeQEFAXoFA25pbAkBAmFMAgUCYXUFAmJECQCUCgIJAM4IAgkAzAgCCQEMSW50ZWdlckVudHJ5AgkBAUwCBQF6BQJiUwUCYlcFA25pbAUCYlkHCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuAmFUAQ5maW5hbGl6ZUhlbHBlcgAEAmJSCQELdmFsdWVPckVsc2UCCQCgCAEFAXYHBAFpCQELdmFsdWVPckVsc2UCCQCaCAIFBHRoaXMFAWoAAAQCYloJAGUCBQFpAAEEAmJvCQECYWMCBQR0aGlzCQEBdwEFAWkEAmJpCQECYWMCBQR0aGlzBQFmBAJicAkAZAIFAmJvBQJiaQQCYnEJAJoIAgUEdGhpcwUBcAMDAwkAZwIFBmhlaWdodAUCYnAJAAACBQJicQUEdW5pdAcJAQEhAQUCYlIHBAJjYQkAZAIFAWkAAQQCY2IJAJoIAgUEdGhpcwUBZwQCY2MEAVgFAmNiAwkAAQIFAVgCA0ludAQCYkIFAVgJAMwIAgkBDEludGVnZXJFbnRyeQIFAWYFAmJCCQDMCAIJAQtEZWxldGVFbnRyeQEFAWcFA25pbAMJAAECBQFYAgRVbml0BQNuaWwJAAIBAgtNYXRjaCBlcnJvcgkAlAoCCQDOCAIJAMwIAgkBDEludGVnZXJFbnRyeQIJAQF3AQUCY2EFBmhlaWdodAkAzAgCCQEMSW50ZWdlckVudHJ5AgUBcwUGaGVpZ2h0CQDMCAIJAQxJbnRlZ2VyRW50cnkCBQFqBQJjYQkAzAgCCQEMSW50ZWdlckVudHJ5AgUBcAUBZAkAzAgCCQEMSW50ZWdlckVudHJ5AgkBAWgBBQFpBQJiaQUDbmlsBQJjYwYDAwUCYlIJAAACBQJicQUEdW5pdAcJAJQKAgkAzAgCCQEMSW50ZWdlckVudHJ5AgUBcAUBZQUDbmlsBgMJAAACBQJicQUEdW5pdAkAlAoCBQNuaWwHAwkAAAIFAmJxBQFkBAJjZAkAoggBBQFxBAJjZQkAoggBBQFyBAFYBQJjZAMJAAECBQFYAgRVbml0BAJjZgkAoggBCQECYXgBBQJhdQMJAAECBQJjZgIEVW5pdAkAlAoCCQDMCAIJAQxJbnRlZ2VyRW50cnkCBQFwBQFlCQDMCAIJAQtEZWxldGVFbnRyeQEFAXEJAMwIAgkBC0RlbGV0ZUVudHJ5AQUBcgUDbmlsBgMJAAECBQJjZgIGU3RyaW5nBAJjZwUCY2YJAJQKAgkAzAgCCQELU3RyaW5nRW50cnkCBQFxBQJjZwUDbmlsBgkAAgECC01hdGNoIGVycm9yAwkAAQIFAVgCBlN0cmluZwQCYkQFAVgEAXoJAQJhZQEFAmJEBAJjaAQCY2YFAmNlAwkAAQIFAmNmAgRVbml0CQCiCAEJAQJheAEJAQJhdgEFAXoDCQABAgUCY2YCBlN0cmluZwQCY2kFAmNmBAJjagkAoggBCQECYUQCCQECYXYBBQF6BQJjaQMJAAACBQJjagUCY2oEAmNrCQD8BwQFBHRoaXMCE3Byb2Nlc3NWb3RlSU5URVJOQUwJAMwIAgUCYkQJAMwIAgUCY2kFA25pbAUDbmlsAwkAAAIFAmNrBQJjawUCY2oJAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAgtNYXRjaCBlcnJvcgQCY2YFAmNoAwkAAQIFAmNmAgRVbml0BAJjbAkAoggBCQECYUQCBQJhdQUCYkQEAmNtBQJjbAMJAAECBQJjbQIEVW5pdAkAlAoCCQDMCAIJAQxJbnRlZ2VyRW50cnkCBQFwBQFlCQDMCAIJAQtEZWxldGVFbnRyeQEFAXEJAMwIAgkBC0RlbGV0ZUVudHJ5AQUBcgUDbmlsBgMJAAECBQJjbQIGU3RyaW5nBAJhUAUCY20JAJQKAgkAzAgCCQELU3RyaW5nRW50cnkCBQFxBQJhUAkAzAgCCQELRGVsZXRlRW50cnkBBQFyBQNuaWwGCQACAQILTWF0Y2ggZXJyb3IDCQABAgUCY2YCBlN0cmluZwQCY24FAmNmCQCUCgIJAMwIAgkBC1N0cmluZ0VudHJ5AgUBcgUCY24FA25pbAYJAAIBAgtNYXRjaCBlcnJvcgkAAgECC01hdGNoIGVycm9yAwkAAAIFAmJxBQFlBAJjZAkAoggBBQFxBAFYBQJjZAMJAAECBQFYAgRVbml0BAJjZgkAoggBCQECYXgBBQJhdQMJAAECBQJjZgIEVW5pdAQCYlEDBQJiUgkAzAgCCQELRGVsZXRlRW50cnkBBQFwCQDMCAIJAQtEZWxldGVFbnRyeQEFAXYFA25pbAkAzAgCCQELRGVsZXRlRW50cnkBBQFwCQDMCAIJAQxCb29sZWFuRW50cnkCCQEBeAEFAmJaBgkAzAgCCQEMSW50ZWdlckVudHJ5AgUBdAUBaQkAzAgCCQEMSW50ZWdlckVudHJ5AgUBdQUCYm8FA25pbAkAlAoCBQJiUQYDCQABAgUCY2YCBlN0cmluZwQCY28FAmNmCQCUCgIJAMwIAgkBC1N0cmluZ0VudHJ5AgUBcQUCY28FA25pbAYJAAIBAgtNYXRjaCBlcnJvcgMJAAECBQFYAgZTdHJpbmcEAmJEBQFYBAJjbAkAoggBCQECYUQCBQJhdQUCYkQDCQAAAgUCY2wFAmNsBAJiVgoAAmFiCQD8BwQFBHRoaXMCE3Byb2Nlc3NQb29sSU5URVJOQUwJAMwIAgUCYkQJAMwIAgUCYlIFA25pbAUDbmlsAwkAAQIFAmFiAgdCb29sZWFuBQJhYgkAAgEJAKwCAgkAAwEFAmFiAhwgY291bGRuJ3QgYmUgY2FzdCB0byBCb29sZWFuAwkAAAIFAmJWBQJiVgMFAmJWCQCUCgIFA25pbAYEAmNmBQJjbAMJAAECBQJjZgIEVW5pdAQCYlEDBQJiUgkAzAgCCQELRGVsZXRlRW50cnkBBQFwCQDMCAIJAQtEZWxldGVFbnRyeQEFAXYJAMwIAgkBC0RlbGV0ZUVudHJ5AQUBcQUDbmlsCQDMCAIJAQtEZWxldGVFbnRyeQEFAXAJAMwIAgkBDEJvb2xlYW5FbnRyeQIJAQF4AQUCYloGCQDMCAIJAQxJbnRlZ2VyRW50cnkCBQF0BQFpCQDMCAIJAQxJbnRlZ2VyRW50cnkCBQF1BQJibwkAzAgCCQELRGVsZXRlRW50cnkBBQFxBQNuaWwJAJQKAgUCYlEGAwkAAQIFAmNmAgZTdHJpbmcEAmNvBQJjZgkAlAoCCQDMCAIJAQtTdHJpbmdFbnRyeQIFAXEFAmNvBQNuaWwGCQACAQILTWF0Y2ggZXJyb3IJAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAgtNYXRjaCBlcnJvcgkAAgECFmZpbmFsaXphdGlvbiBpcyBicm9rZW4CYVQBD2ZpbmFsaXplV3JhcHBlcgECY3AEAmNxCgACYWIJAPwHBAUEdGhpcwIOZmluYWxpemVIZWxwZXIFA25pbAUDbmlsAwkAAQIFAmFiAgdCb29sZWFuBQJhYgkAAgEJAKwCAgkAAwEFAmFiAhwgY291bGRuJ3QgYmUgY2FzdCB0byBCb29sZWFuAwkAAAIFAmNxBQJjcQMJAQEhAQUCY3EDCQAAAgUCY3AAAAkAAgECHkN1cnJlbnQgdm90aW5nIGlzIG5vdCBvdmVyIHlldAkAlAoCBQNuaWwFBHVuaXQEAmNyCQELdmFsdWVPckVsc2UCCQCaCAIFBHRoaXMFAWsFAWMDCQBmAgUCY3IFAmNwBAJjcwkA/AcEBQR0aGlzAg9maW5hbGl6ZVdyYXBwZXIJAMwIAgkAZAIFAmNwAAEFA25pbAUDbmlsAwkAAAIFAmNzBQJjcwkAlAoCBQNuaWwFBHVuaXQJAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAJQKAgUDbmlsBQR1bml0CQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuAmFUAQhmaW5hbGl6ZQAEAmNzCQD8BwQFBHRoaXMCD2ZpbmFsaXplV3JhcHBlcgkAzAgCAAAFA25pbAUDbmlsAwkAAAIFAmNzBQJjcwkAlAoCBQNuaWwFBHVuaXQJAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4CYVQBFGNvbnRhaW5zTm9kZVJFQURPTkxZAgJheQJhQwkAlAoCBQNuaWwJAQJhRQIFAmF5BQJhQwJhVAEKaW5zZXJ0Tm9kZQICYXkCYUMEAmFYCQECYVUBBQJhVAMJAAACBQJhWAUCYVgJAJQKAgkBAmFJAgUCYXkFAmFDBQR1bml0CQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuAmFUAQpkZWxldGVOb2RlAgJheQJhQwQCYVgJAQJhVQEFAmFUAwkAAAIFAmFYBQJhWAkAlAoCCQECYUwCBQJheQUCYUMFBHVuaXQJAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4BAmN0AQJjdQAEAmN2BAFYCQECYU8AAwkAAQIFAVgCCkJ5dGVWZWN0b3IEAmFWBQFYBQJhVgMJAAECBQFYAgRVbml0CAUCY3QPc2VuZGVyUHVibGljS2V5CQACAQILTWF0Y2ggZXJyb3IJAPQDAwgFAmN0CWJvZHlCeXRlcwkAkQMCCAUCY3QGcHJvb2ZzAAAFAmN2kCt4wA==", "height": 2489456, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: A4Y8NgoKZAi6bn8LtwQQ2u2MaLzM4gE5GEyU9V4s5CAm Next: 5sxn6MPQ4bXP2paRo5nsofkeoVNTebTgeWMgDgeKC6XH Diff:
OldNewDifferences
7777 }
7878
7979
80-func J (z,i) = {
81- let K = z
82- let B = K._1
83- let C = K._2
80+func J (K,i) = makeString(["%s%s%d", "votingResultStaked", K, toString(i)], a)
81+
82+
83+func L (z,i) = {
84+ let M = z
85+ let B = M._1
86+ let C = M._2
8487 makeString(["%s%s%s%d", "poolShare", B, C, toString(i)], a)
8588 }
8689
8790
88-func L (i) = makeString(["%s%d", "totalVotes", toString(i)], a)
91+func N (i) = makeString(["%s%d", "totalVotes", toString(i)], a)
8992
9093
91-func M (E,N,O) = {
92- let P = makeString(["mandatory ", toString(E), ".", N, " is not defined"], "")
94+func O (K,P) = makeString(["%s%s%s", "staked", P, K], a)
95+
96+
97+func Q (R) = makeString(["voting_emission.ride:", R], " ")
98+
99+
100+func S (R) = throw(Q(R))
101+
102+
103+func T (E,U,V) = {
104+ let W = makeString(["mandatory ", toString(E), ".", U, " is not defined"], "")
93105 valueOrErrorMessage({
94- let Q = O
95- if ($isInstanceOf(Q, "String"))
106+ let X = V
107+ if ($isInstanceOf(X, "String"))
96108 then {
97- let R = Q
98- getString(E, N)
109+ let Y = X
110+ getString(E, U)
99111 }
100- else if ($isInstanceOf(Q, "Int"))
112+ else if ($isInstanceOf(X, "Int"))
101113 then {
102- let S = Q
103- getInteger(E, N)
114+ let Z = X
115+ getInteger(E, U)
104116 }
105117 else throw("invalid entry type")
106- }, P)
118+ }, W)
107119 }
108120
109121
110-func T (E,N) = {
111- let U = M(E, N, "")
112- if ($isInstanceOf(U, "String"))
113- then U
114- else throw(($getType(U) + " couldn't be cast to String"))
122+func aa (E,U) = {
123+ let ab = T(E, U, "")
124+ if ($isInstanceOf(ab, "String"))
125+ then ab
126+ else throw(($getType(ab) + " couldn't be cast to String"))
115127 }
116128
117129
118-func V (E,N) = {
119- let U = M(E, N, 0)
120- if ($isInstanceOf(U, "Int"))
121- then U
122- else throw(($getType(U) + " couldn't be cast to Int"))
130+func ac (E,U) = {
131+ let ab = T(E, U, 0)
132+ if ($isInstanceOf(ab, "Int"))
133+ then ab
134+ else throw(($getType(ab) + " couldn't be cast to Int"))
123135 }
124136
125137
126-func W (z) = ((z._1 + a) + z._2)
138+func ad (z) = ((z._1 + a) + z._2)
127139
128140
129-func X (R) = {
130- let Y = split(R, a)
131- if ((size(Y) == 2))
132- then $Tuple2(Y[0], Y[1])
141+func ae (Y) = {
142+ let af = split(Y, a)
143+ if ((size(af) == 2))
144+ then $Tuple2(af[0], af[1])
133145 else throw("invalid pool string")
134146 }
135147
136148
137-func Z (B,C) = {
138- func aa (ab) = ("%s%s%s__mappings__baseAsset2internalId__" + ab)
149+func ag (B,C) = {
150+ func ah (ai) = ("%s%s%s__mappings__baseAsset2internalId__" + ai)
139151
140- func ac (ad,ae) = (((("%d%d%s%s__" + toString(ad)) + "__") + toString(ae)) + "__mappings__poolAssets2PoolContract")
152+ func aj (ak,al) = (((("%d%d%s%s__" + toString(ak)) + "__") + toString(al)) + "__mappings__poolAssets2PoolContract")
141153
142- func af (ag) = (("%s%s%s__" + ag) + "__mappings__poolContract2LpAsset")
154+ func am (an) = (("%s%s%s__" + an) + "__mappings__poolContract2LpAsset")
143155
144- let ah = addressFromStringValue(T(this, m))
145- let ai = V(ah, aa(B))
146- let aj = V(ah, aa(C))
147- let ag = T(ah, ac(ai, aj))
148- let ak = T(ah, af(ag))
149- ak
156+ let ao = addressFromStringValue(aa(this, m))
157+ let ap = ac(ao, ah(B))
158+ let aq = ac(ao, ah(C))
159+ let an = aa(ao, aj(ap, aq))
160+ let ar = aa(ao, am(an))
161+ ar
150162 }
151163
152164
153-func al (z) = {
154- let am = z
155- let B = am._1
156- let C = am._2
157- let ah = addressFromStringValue(T(this, m))
158- let U = invoke(ah, "checkWxEmissionPoolLabel", [B, C], nil)
159- if ($isInstanceOf(U, "Boolean"))
160- then U
161- else throw(($getType(U) + " couldn't be cast to Boolean"))
165+func as (z) = {
166+ let at = z
167+ let B = at._1
168+ let C = at._2
169+ let ao = addressFromStringValue(aa(this, m))
170+ let ab = invoke(ao, "checkWxEmissionPoolLabel", [B, C], nil)
171+ if ($isInstanceOf(ab, "Boolean"))
172+ then ab
173+ else throw(($getType(ab) + " couldn't be cast to Boolean"))
162174 }
163175
164176
165-let an = "pools"
177+let au = "pools"
166178
167-func ao (z) = {
168- let ap = z
169- let B = ap._1
170- let C = ap._2
179+func av (z) = {
180+ let aw = z
181+ let B = aw._1
182+ let C = aw._2
171183 makeString(["votes", B, C], a)
172184 }
173185
174186
175-func aq (ar) = {
176- let as = if ((ar == an))
187+func ax (ay) = {
188+ let az = if ((ay == au))
177189 then "%s%s"
178190 else "%s%s%s%s"
179- makeString([as, ar, "head"], a)
191+ makeString([az, ay, "head"], a)
180192 }
181193
182194
183-func at (ar) = {
184- let as = if ((ar == an))
195+func aA (ay) = {
196+ let az = if ((ay == au))
185197 then "%s%s"
186198 else "%s%s%s%s"
187- makeString([as, ar, "size"], a)
199+ makeString([az, ay, "size"], a)
188200 }
189201
190202
191-func au (ar,av) = {
192- let as = if ((ar == an))
203+func aB (ay,aC) = {
204+ let az = if ((ay == au))
193205 then "%s%s%s%s"
194206 else "%s%s%s%s%s"
195- makeString([as, ar, av, "prev"], a)
207+ makeString([az, ay, aC, "prev"], a)
196208 }
197209
198210
199-func aw (ar,av) = {
200- let as = if ((ar == an))
211+func aD (ay,aC) = {
212+ let az = if ((ay == au))
201213 then "%s%s%s%s"
202214 else "%s%s%s%s%s"
203- makeString([as, ar, av, "next"], a)
215+ makeString([az, ay, aC, "next"], a)
204216 }
205217
206218
207-func ax (ar,av) = {
208- let ay = getString(this, aq(ar))
209- let az = getString(this, au(ar, av))
210- let aA = getString(this, aw(ar, av))
211- if (if ((av == valueOrElse(ay, "")))
219+func aE (ay,aC) = {
220+ let aF = getString(this, ax(ay))
221+ let aG = getString(this, aB(ay, aC))
222+ let aH = getString(this, aD(ay, aC))
223+ if (if ((aC == valueOrElse(aF, "")))
212224 then true
213- else (az != unit))
225+ else (aG != unit))
214226 then true
215- else (aA != unit)
227+ else (aH != unit)
216228 }
217229
218230
219-func aB (ar,av) = {
220- let ay = getString(this, aq(ar))
221- let aC = valueOrElse(getInteger(this, at(ar)), 0)
222- let aD = if (!(ax(ar, av)))
231+func aI (ay,aC) = {
232+ let aF = getString(this, ax(ay))
233+ let aJ = valueOrElse(getInteger(this, aA(ay)), 0)
234+ let aK = if (!(aE(ay, aC)))
223235 then true
224236 else throw("Node exists")
225- if ((aD == aD))
226- then (([IntegerEntry(at(ar), (aC + 1))] ++ (if ((ay != unit))
227- then [StringEntry(aw(ar, av), value(ay)), StringEntry(au(ar, value(ay)), av)]
228- else nil)) ++ [StringEntry(aq(ar), av)])
237+ if ((aK == aK))
238+ then (([IntegerEntry(aA(ay), (aJ + 1))] ++ (if ((aF != unit))
239+ then [StringEntry(aD(ay, aC), value(aF)), StringEntry(aB(ay, value(aF)), aC)]
240+ else nil)) ++ [StringEntry(ax(ay), aC)])
229241 else throw("Strict value is not equal to itself.")
230242 }
231243
232244
233-func aE (ar,av) = {
234- let ay = getString(this, aq(ar))
235- let aC = valueOrElse(getInteger(this, at(ar)), 0)
236- let az = getString(this, au(ar, av))
237- let aA = getString(this, aw(ar, av))
238- ([IntegerEntry(at(ar), (aC - 1))] ++ (if (if ((az != unit))
239- then (aA != unit)
245+func aL (ay,aC) = {
246+ let aF = getString(this, ax(ay))
247+ let aJ = valueOrElse(getInteger(this, aA(ay)), 0)
248+ let aG = getString(this, aB(ay, aC))
249+ let aH = getString(this, aD(ay, aC))
250+ ([IntegerEntry(aA(ay), (aJ - 1))] ++ (if (if ((aG != unit))
251+ then (aH != unit)
240252 else false)
241- then [StringEntry(aw(ar, value(az)), value(aA)), StringEntry(au(ar, value(aA)), value(az)), DeleteEntry(au(ar, av)), DeleteEntry(aw(ar, av))]
242- else if ((aA != unit))
243- then [StringEntry(aq(ar), value(aA)), DeleteEntry(aw(ar, av)), DeleteEntry(au(ar, value(aA)))]
244- else if ((az != unit))
245- then [DeleteEntry(au(ar, av)), DeleteEntry(aw(ar, value(az)))]
246- else if ((av == valueOrElse(ay, "")))
247- then [DeleteEntry(aq(ar))]
248- else throw(((("invalid node: " + ar) + ".") + av))))
253+ then [StringEntry(aD(ay, value(aG)), value(aH)), StringEntry(aB(ay, value(aH)), value(aG)), DeleteEntry(aB(ay, aC)), DeleteEntry(aD(ay, aC))]
254+ else if ((aH != unit))
255+ then [StringEntry(ax(ay), value(aH)), DeleteEntry(aD(ay, aC)), DeleteEntry(aB(ay, value(aH)))]
256+ else if ((aG != unit))
257+ then [DeleteEntry(aB(ay, aC)), DeleteEntry(aD(ay, value(aG)))]
258+ else if ((aC == valueOrElse(aF, "")))
259+ then [DeleteEntry(ax(ay))]
260+ else throw(((("invalid node: " + ay) + ".") + aC))))
249261 }
250262
251263
252-func aF () = "%s__managerPublicKey"
264+func aM () = "%s__managerPublicKey"
253265
254266
255-func aG () = "%s__pendingManagerPublicKey"
267+func aN () = "%s__pendingManagerPublicKey"
256268
257269
258-func aH () = {
259- let Q = getString(aF())
260- if ($isInstanceOf(Q, "String"))
270+func aO () = {
271+ let X = getString(aM())
272+ if ($isInstanceOf(X, "String"))
261273 then {
262- let aI = Q
263- fromBase58String(aI)
274+ let aP = X
275+ fromBase58String(aP)
264276 }
265- else if ($isInstanceOf(Q, "Unit"))
277+ else if ($isInstanceOf(X, "Unit"))
266278 then unit
267279 else throw("Match error")
268280 }
269281
270282
271-func aJ () = {
272- let Q = getString(aG())
273- if ($isInstanceOf(Q, "String"))
283+func aQ () = {
284+ let X = getString(aN())
285+ if ($isInstanceOf(X, "String"))
274286 then {
275- let aI = Q
276- fromBase58String(aI)
287+ let aP = X
288+ fromBase58String(aP)
277289 }
278- else if ($isInstanceOf(Q, "Unit"))
290+ else if ($isInstanceOf(X, "Unit"))
279291 then unit
280292 else throw("Match error")
281293 }
282294
283295
284-let aK = throw("Permission denied")
296+let aR = throw("Permission denied")
285297
286-func aL (aM) = if ((aM.caller == this))
298+func aS (aT) = if ((aT.caller == this))
287299 then true
288- else aK
300+ else aR
289301
290302
291-func aN (aM) = {
292- let Q = aH()
293- if ($isInstanceOf(Q, "ByteVector"))
303+func aU (aT) = {
304+ let X = aO()
305+ if ($isInstanceOf(X, "ByteVector"))
294306 then {
295- let aO = Q
296- if ((aM.callerPublicKey == aO))
307+ let aV = X
308+ if ((aT.callerPublicKey == aV))
297309 then true
298- else aK
310+ else aR
299311 }
300- else if ($isInstanceOf(Q, "Unit"))
301- then aL(aM)
312+ else if ($isInstanceOf(X, "Unit"))
313+ then aS(aT)
302314 else throw("Match error")
303315 }
304316
305317
306-@Callable(aM)
307-func setManager (aP) = {
308- let aQ = aN(aM)
309- if ((aQ == aQ))
318+@Callable(aT)
319+func setManager (aW) = {
320+ let aX = aU(aT)
321+ if ((aX == aX))
310322 then {
311- let aR = fromBase58String(aP)
312- if ((aR == aR))
313- then [StringEntry(aG(), aP)]
323+ let aY = fromBase58String(aW)
324+ if ((aY == aY))
325+ then [StringEntry(aN(), aW)]
314326 else throw("Strict value is not equal to itself.")
315327 }
316328 else throw("Strict value is not equal to itself.")
318330
319331
320332
321-@Callable(aM)
333+@Callable(aT)
322334 func confirmManager () = {
323- let aS = aJ()
324- let aT = if (isDefined(aS))
335+ let aZ = aQ()
336+ let ba = if (isDefined(aZ))
325337 then true
326338 else throw("No pending manager")
327- if ((aT == aT))
339+ if ((ba == ba))
328340 then {
329- let aU = if ((aM.callerPublicKey == value(aS)))
341+ let bb = if ((aT.callerPublicKey == value(aZ)))
330342 then true
331343 else throw("You are not pending manager")
332- if ((aU == aU))
333- then [StringEntry(aF(), toBase58String(value(aS))), DeleteEntry(aG())]
344+ if ((bb == bb))
345+ then [StringEntry(aM(), toBase58String(value(aZ))), DeleteEntry(aN())]
334346 else throw("Strict value is not equal to itself.")
335347 }
336348 else throw("Strict value is not equal to itself.")
338350
339351
340352
341-@Callable(aM)
342-func getUserGwxAmountAtHeight (aV,aW) = {
343- let aX = valueOrErrorMessage(addressFromString(T(this, n)), "invalid boosting contract address")
353+@Callable(aT)
354+func getUserGwxAmountAtHeight (bc,bd) = {
355+ let be = valueOrErrorMessage(addressFromString(aa(this, n)), "invalid boosting contract address")
344356 $Tuple2(nil, {
345- let U = invoke(aX, "getUserGwxAmountAtHeightREADONLY", [aV, aW], nil)
346- if ($isInstanceOf(U, "Int"))
347- then U
348- else throw(($getType(U) + " couldn't be cast to Int"))
357+ let ab = invoke(be, "getUserGwxAmountAtHeightREADONLY", [bc, bd], nil)
358+ if ($isInstanceOf(ab, "Int"))
359+ then ab
360+ else throw(($getType(ab) + " couldn't be cast to Int"))
349361 })
350362 }
351363
352364
353365
354-@Callable(aM)
355-func constructor (ah,aY,aZ,ba,bb) = {
356- let bc = [aN(aM), if ((addressFromString(ah) != unit))
366+@Callable(aT)
367+func constructor (ao,bf,bg,bh,bi) = {
368+ let bj = [aU(aT), if ((addressFromString(ao) != unit))
357369 then true
358- else "invalid factory contract address", if ((addressFromString(aY) != unit))
370+ else "invalid factory contract address", if ((addressFromString(bf) != unit))
359371 then true
360- else "invalid voting emission candidate contract address", if ((addressFromString(aZ) != unit))
372+ else "invalid voting emission candidate contract address", if ((addressFromString(bg) != unit))
361373 then true
362- else "invalid boosting contract address", if ((addressFromString(ba) != unit))
374+ else "invalid boosting contract address", if ((addressFromString(bh) != unit))
363375 then true
364- else "invalid staking contract address", if ((bb > 0))
376+ else "invalid staking contract address", if ((bi > 0))
365377 then true
366378 else throw("invalid epoch length")]
367- if ((bc == bc))
368- then $Tuple2([StringEntry(m, ah), StringEntry(l, aY), StringEntry(n, aZ), StringEntry(o, ba), IntegerEntry(f, bb)], unit)
379+ if ((bj == bj))
380+ then $Tuple2([StringEntry(m, ao), StringEntry(l, bf), StringEntry(n, bg), StringEntry(o, bh), IntegerEntry(f, bi)], unit)
369381 else throw("Strict value is not equal to itself.")
370382 }
371383
372384
373385
374-@Callable(aM)
386+@Callable(aT)
375387 func create (B,C) = {
376- let bc = [if ((toBase58String(aM.caller.bytes) == valueOrElse(getString(this, l), "")))
388+ let bj = [if ((toBase58String(aT.caller.bytes) == valueOrElse(getString(this, l), "")))
377389 then true
378- else aN(aM)]
379- if ((bc == bc))
390+ else aU(aT)]
391+ if ((bj == bj))
380392 then {
381393 let z = $Tuple2(B, C)
382- let bd = ([BooleanEntry(y(z), true)] ++ aB(an, W(z)))
383- let be = (getInteger(this, j) == unit)
384- let bf = if (be)
394+ let bk = ([BooleanEntry(y(z), true)] ++ aI(au, ad(z)))
395+ let bl = (getInteger(this, j) == unit)
396+ let bm = if (bl)
385397 then {
386398 let i = 0
387399 [IntegerEntry(j, i), IntegerEntry(w(i), height), IntegerEntry(s, height), IntegerEntry(t, i), IntegerEntry(u, height)]
388400 }
389401 else nil
390- $Tuple2((bd ++ bf), unit)
402+ $Tuple2((bk ++ bm), unit)
391403 }
392404 else throw("Strict value is not equal to itself.")
393405 }
394406
395407
396408
397-@Callable(aM)
398-func vote (B,C,bg) = {
409+@Callable(aT)
410+func vote (B,C,bn) = {
399411 let z = $Tuple2(B, C)
400412 let i = valueOrElse(getInteger(this, j), 0)
401- let bh = V(this, w(i))
402- let bb = V(this, f)
403- let bi = (bh + bb)
404- let bj = getInteger(this, p)
405- let bk = valueOrElse(getInteger(this, D(aM.caller, i)), 0)
406- let bl = valueOrElse(getInteger(this, F(z, aM.caller, i)), 0)
407- let bm = valueOrElse(getInteger(this, H(z, i)), 0)
408- let bn = valueOrElse(getInteger(this, L(i)), 0)
409- let bo = {
410- let U = invoke(this, "getUserGwxAmountAtHeight", [toBase58String(aM.caller.bytes), bi], nil)
411- if ($isInstanceOf(U, "Int"))
412- then U
413- else throw(($getType(U) + " couldn't be cast to Int"))
413+ let bo = ac(this, w(i))
414+ let bi = ac(this, f)
415+ let bp = (bo + bi)
416+ let bq = getInteger(this, p)
417+ let br = valueOrElse(getInteger(this, D(aT.caller, i)), 0)
418+ let bs = valueOrElse(getInteger(this, F(z, aT.caller, i)), 0)
419+ let bt = valueOrElse(getInteger(this, H(z, i)), 0)
420+ let bu = valueOrElse(getInteger(this, N(i)), 0)
421+ let bv = {
422+ let ab = invoke(this, "getUserGwxAmountAtHeight", [toBase58String(aT.caller.bytes), bp], nil)
423+ if ($isInstanceOf(ab, "Int"))
424+ then ab
425+ else throw(($getType(ab) + " couldn't be cast to Int"))
414426 }
415- let bp = (bo - bk)
416- let bq = (bl + bg)
417- let br = al(z)
418- let bc = [if ((getBoolean(y(z)) != unit))
427+ let bw = (bv - br)
428+ let bx = (bs + bn)
429+ let by = as(z)
430+ let bj = [if ((getBoolean(y(z)) != unit))
419431 then true
420- else throw("invalid assets"), if ((bi > height))
432+ else throw("invalid assets"), if ((bp > height))
421433 then true
422- else throw("invalid height"), if ((bj == unit))
434+ else throw("invalid height"), if ((bq == unit))
423435 then true
424- else throw("finalization in progress"), if ((bo > 0))
436+ else throw("finalization in progress"), if ((bv > 0))
425437 then true
426- else throw("you do not have gWX"), if (if ((bg > 0))
427- then (bp >= bg)
438+ else throw("you do not have gWX"), if (if ((bn > 0))
439+ then (bw >= bn)
428440 else false)
429441 then true
430- else throw("invalid amount"), if (br)
442+ else throw("invalid amount"), if (by)
431443 then true
432444 else throw("pool hasn't WX_EMISSION label")]
433- if ((bc == bc))
445+ if ((bj == bj))
434446 then {
435- let bs = ao(z)
436- let bt = toString(aM.caller)
437- let bu = if (ax(bs, bt))
447+ let bz = av(z)
448+ let P = toString(aT.caller)
449+ let bA = if (aE(bz, P))
438450 then nil
439- else aB(bs, bt)
440- $Tuple2(([IntegerEntry(D(aM.caller, i), (bk + bg)), IntegerEntry(F(z, aM.caller, i), bq), IntegerEntry(H(z, i), (bm + bg)), IntegerEntry(L(i), (bn + bg))] ++ bu), unit)
451+ else aI(bz, P)
452+ $Tuple2(([IntegerEntry(D(aT.caller, i), (br + bn)), IntegerEntry(F(z, aT.caller, i), bx), IntegerEntry(H(z, i), (bt + bn)), IntegerEntry(N(i), (bu + bn))] ++ bA), unit)
441453 }
442454 else throw("Strict value is not equal to itself.")
443455 }
444456
445457
446458
447-@Callable(aM)
459+@Callable(aT)
448460 func cancelVote (B,C) = {
449461 let z = $Tuple2(B, C)
450462 let i = valueOrElse(getInteger(this, j), 0)
451- let bh = V(this, w(i))
452- let bb = V(this, f)
453- let bi = (bh + bb)
454- let bj = getInteger(this, p)
455- let bk = valueOrElse(getInteger(this, D(aM.caller, i)), 0)
456- let bl = valueOrElse(getInteger(this, F(z, aM.caller, i)), 0)
457- let bm = valueOrElse(getInteger(this, H(z, i)), 0)
458- let bn = valueOrElse(getInteger(this, L(i)), 0)
459- let bc = [if ((getBoolean(y(z)) != unit))
463+ let bo = ac(this, w(i))
464+ let bi = ac(this, f)
465+ let bp = (bo + bi)
466+ let bq = getInteger(this, p)
467+ let br = valueOrElse(getInteger(this, D(aT.caller, i)), 0)
468+ let bs = valueOrElse(getInteger(this, F(z, aT.caller, i)), 0)
469+ let bt = valueOrElse(getInteger(this, H(z, i)), 0)
470+ let bu = valueOrElse(getInteger(this, N(i)), 0)
471+ let bj = [if ((getBoolean(y(z)) != unit))
460472 then true
461- else throw("invalid assets"), if ((bi > height))
473+ else throw("invalid assets"), if ((bp > height))
462474 then true
463- else throw("invalid height"), if ((bj == unit))
475+ else throw("invalid height"), if ((bq == unit))
464476 then true
465- else throw("finalization in progress"), if ((bl > 0))
477+ else throw("finalization in progress"), if ((bs > 0))
466478 then true
467479 else throw("no vote")]
468- if ((bc == bc))
480+ if ((bj == bj))
469481 then {
470- let bs = ao(z)
471- let bt = toString(aM.caller)
472- $Tuple2(([IntegerEntry(D(aM.caller, i), max([(bk - bl), 0])), DeleteEntry(F(z, aM.caller, i)), IntegerEntry(H(z, i), (bm - bl)), IntegerEntry(L(i), (bn - bl))] ++ aE(bs, bt)), unit)
482+ let bz = av(z)
483+ let P = toString(aT.caller)
484+ $Tuple2(([IntegerEntry(D(aT.caller, i), max([(br - bs), 0])), DeleteEntry(F(z, aT.caller, i)), IntegerEntry(H(z, i), (bt - bs)), IntegerEntry(N(i), (bu - bs))] ++ aL(bz, P)), unit)
473485 }
474486 else throw("Strict value is not equal to itself.")
475487 }
476488
477489
478490
479-@Callable(aM)
480-func setEpochLength (bv) = {
481- let bc = [aN(aM), if ((bv > 0))
491+@Callable(aT)
492+func setEpochLength (bB) = {
493+ let bj = [aU(aT), if ((bB > 0))
482494 then true
483495 else throw("invalid epoch length")]
484- if ((bc == bc))
485- then $Tuple2([IntegerEntry(g, bv)], unit)
496+ if ((bj == bj))
497+ then $Tuple2([IntegerEntry(g, bB)], unit)
486498 else throw("Strict value is not equal to itself.")
487499 }
488500
489501
490502
491-@Callable(aM)
492-func setMaxDepth (bw) = {
493- let bc = [aN(aM), if ((bw > 0))
503+@Callable(aT)
504+func setMaxDepth (bC) = {
505+ let bj = [aU(aT), if ((bC > 0))
494506 then true
495507 else throw("invalid max depth")]
496- if ((bc == bc))
497- then $Tuple2([IntegerEntry(k, bw)], unit)
508+ if ((bj == bj))
509+ then $Tuple2([IntegerEntry(k, bC)], unit)
498510 else throw("Strict value is not equal to itself.")
499511 }
500512
501513
502514
503-@Callable(aM)
504-func processVoteINTERNAL (bx,bt) = {
505- let aQ = aL(aM)
506- if ((aQ == aQ))
515+@Callable(aT)
516+func processVoteINTERNAL (bD,P) = {
517+ let aX = aS(aT)
518+ if ((aX == aX))
507519 then {
508- let aV = valueOrErrorMessage(addressFromString(bt), ("processVoteINTERNAL: invalid user address " + bt))
509- let i = V(this, j)
510- let by = (i - 1)
511- let bb = V(this, f)
512- let bh = V(this, w(i))
513- let bi = (bh + bb)
514- let bz = V(this, w(by))
515- let bA = V(this, h(by))
516- let bB = (bz + bA)
517- let bC = if ((by >= 0))
520+ let bc = valueOrErrorMessage(addressFromString(P), ("processVoteINTERNAL: invalid user address " + P))
521+ let i = ac(this, j)
522+ let bE = (i - 1)
523+ let bi = ac(this, f)
524+ let bo = ac(this, w(i))
525+ let bp = (bo + bi)
526+ let bF = ac(this, w(bE))
527+ let bG = ac(this, h(bE))
528+ let bH = (bF + bG)
529+ let bI = if ((bE >= 0))
518530 then true
519531 else throw("processVoteINTERNAL: invalid previous epoch")
520- if ((bC == bC))
532+ if ((bI == bI))
521533 then {
522- let z = X(bx)
523- let bD = z
524- let B = bD._1
525- let C = bD._2
526- let br = al(z)
527- let bo = {
528- let U = invoke(this, "getUserGwxAmountAtHeight", [bt, bi], nil)
529- if ($isInstanceOf(U, "Int"))
530- then U
531- else throw(($getType(U) + " couldn't be cast to Int"))
534+ let z = ae(bD)
535+ let bJ = z
536+ let B = bJ._1
537+ let C = bJ._2
538+ let by = as(z)
539+ let bv = {
540+ let ab = invoke(this, "getUserGwxAmountAtHeight", [P, bp], nil)
541+ if ($isInstanceOf(ab, "Int"))
542+ then ab
543+ else throw(($getType(ab) + " couldn't be cast to Int"))
532544 }
533- let bE = {
534- let U = invoke(this, "getUserGwxAmountAtHeight", [bt, bB], nil)
535- if ($isInstanceOf(U, "Int"))
536- then U
537- else throw(($getType(U) + " couldn't be cast to Int"))
545+ let bK = {
546+ let ab = invoke(this, "getUserGwxAmountAtHeight", [P, bH], nil)
547+ if ($isInstanceOf(ab, "Int"))
548+ then ab
549+ else throw(($getType(ab) + " couldn't be cast to Int"))
538550 }
539- let bn = valueOrElse(getInteger(L(i)), 0)
540- let bF = valueOrElse(getInteger(H(z, i)), 0)
541- let bG = valueOrErrorMessage(getInteger(F(z, aV, by)), (((("processVoteINTERNAL " + bx) + " ") + bt) + ": no previous vote"))
542- let bk = valueOrElse(getInteger(this, D(aV, i)), 0)
543- let bq = if ((bE > 0))
544- then fraction(bG, bo, bE)
551+ let bu = valueOrElse(getInteger(N(i)), 0)
552+ let bL = valueOrElse(getInteger(H(z, i)), 0)
553+ let bM = valueOrErrorMessage(getInteger(F(z, bc, bE)), (((("processVoteINTERNAL " + bD) + " ") + P) + ": no previous vote"))
554+ let br = valueOrElse(getInteger(this, D(bc, i)), 0)
555+ let K = ag(B, C)
556+ let bN = valueOrElse(getInteger(J(K, bE)), 0)
557+ let bh = addressFromStringValue(aa(this, o))
558+ let bO = valueOrElse(getInteger(bh, O(K, P)), 0)
559+ let bP = if ((bO == 0))
560+ then nil
561+ else [IntegerEntry(J(K, bE), (bN + bM))]
562+ let bx = if ((bK > 0))
563+ then fraction(bM, bv, bK)
545564 else 0
546- let bH = if (if ((bq > 0))
547- then br
565+ let bQ = if (if ((bx > 0))
566+ then by
548567 else false)
549- then [IntegerEntry(F(z, aV, i), bq), IntegerEntry(L(i), (bn + bq)), IntegerEntry(H(z, i), (bF + bq)), IntegerEntry(D(aV, i), (bk + bq))]
550- else aE(ao(z), bt)
551- $Tuple2(bH, unit)
568+ then [IntegerEntry(F(z, bc, i), bx), IntegerEntry(N(i), (bu + bx)), IntegerEntry(H(z, i), (bL + bx)), IntegerEntry(D(bc, i), (br + bx))]
569+ else aL(av(z), P)
570+ $Tuple2((bQ ++ bP), unit)
552571 }
553572 else throw("Strict value is not equal to itself.")
554573 }
557576
558577
559578
560-@Callable(aM)
561-func processPoolINTERNAL (bx,bI) = {
562- let aQ = aL(aM)
563- if ((aQ == aQ))
579+@Callable(aT)
580+func processPoolINTERNAL (bD,bR) = {
581+ let aX = aS(aT)
582+ if ((aX == aX))
564583 then {
565- let bJ = {
566- let bK = V(this, j)
567- if (bI)
568- then bK
569- else (bK - 1)
584+ let bS = {
585+ let bT = ac(this, j)
586+ if (bR)
587+ then bT
588+ else (bT - 1)
570589 }
571- let bC = if ((bJ >= 0))
590+ let bI = if ((bS >= 0))
572591 then true
573592 else throw("processPoolINTERNAL: invalid target epoch")
574- if ((bC == bC))
593+ if ((bI == bI))
575594 then {
576- let z = X(bx)
577- let bL = z
578- let B = bL._1
579- let C = bL._2
580- let ba = addressFromStringValue(T(this, o))
581- let ah = addressFromStringValue(T(this, m))
582- let ak = Z(B, C)
583- let bM = {
584- let U = invoke(ba, "usersListTraversal", [ak], nil)
585- if ($isInstanceOf(U, "Boolean"))
586- then U
587- else throw(($getType(U) + " couldn't be cast to Boolean"))
595+ let z = ae(bD)
596+ let bU = z
597+ let B = bU._1
598+ let C = bU._2
599+ let bh = addressFromStringValue(aa(this, o))
600+ let ao = addressFromStringValue(aa(this, m))
601+ let ar = ag(B, C)
602+ let bV = {
603+ let ab = invoke(bh, "usersListTraversal", [ar], nil)
604+ if ($isInstanceOf(ab, "Boolean"))
605+ then ab
606+ else throw(($getType(ab) + " couldn't be cast to Boolean"))
588607 }
589- if ((bM == bM))
590- then if (bM)
608+ if ((bV == bV))
609+ then if (bV)
591610 then $Tuple2(nil, true)
592611 else {
593- let br = al(z)
594- let bn = valueOrElse(getInteger(this, L(bJ)), 0)
595- let bF = valueOrElse(getInteger(this, H(z, bJ)), 0)
596- let bN = if (if ((bn == 0))
612+ let by = as(z)
613+ let bu = valueOrElse(getInteger(this, N(bS)), 0)
614+ let bL = valueOrElse(getInteger(this, H(z, bS)), 0)
615+ let bW = if (if ((bu == 0))
597616 then true
598- else !(br))
617+ else !(by))
599618 then 0
600- else fraction(bF, b, bn)
601- let bO = invoke(ah, "modifyWeight", [ak, bN], nil)
602- if ((bO == bO))
619+ else fraction(bL, b, bu)
620+ let bX = invoke(ao, "modifyWeight", [ar, bW], nil)
621+ if ((bX == bX))
603622 then {
604- let bP = if (if (br)
623+ let bY = if (if (by)
605624 then true
606- else bI)
625+ else bR)
607626 then nil
608- else ([DeleteEntry(y(z))] ++ aE(an, bx))
609- $Tuple2(([IntegerEntry(J(z, bJ), bN)] ++ bP), false)
627+ else ([DeleteEntry(y(z))] ++ aL(au, bD))
628+ $Tuple2(([IntegerEntry(L(z, bS), bW)] ++ bY), false)
610629 }
611630 else throw("Strict value is not equal to itself.")
612631 }
619638
620639
621640
622-@Callable(aM)
641+@Callable(aT)
623642 func finalizeHelper () = {
624- let bI = valueOrElse(getBoolean(v), false)
643+ let bR = valueOrElse(getBoolean(v), false)
625644 let i = valueOrElse(getInteger(this, j), 0)
626- let bQ = (i - 1)
627- let bh = V(this, w(i))
628- let bb = V(this, f)
629- let bi = (bh + bb)
630- let bj = getInteger(this, p)
631- if (if (if ((height >= bi))
632- then (bj == unit)
645+ let bZ = (i - 1)
646+ let bo = ac(this, w(i))
647+ let bi = ac(this, f)
648+ let bp = (bo + bi)
649+ let bq = getInteger(this, p)
650+ if (if (if ((height >= bp))
651+ then (bq == unit)
633652 else false)
634- then !(bI)
653+ then !(bR)
635654 else false)
636655 then {
637- let bR = (i + 1)
638- let bS = getInteger(this, g)
639- let bT = {
640- let Q = bS
641- if ($isInstanceOf(Q, "Int"))
656+ let ca = (i + 1)
657+ let cb = getInteger(this, g)
658+ let cc = {
659+ let X = cb
660+ if ($isInstanceOf(X, "Int"))
642661 then {
643- let bv = Q
644-[IntegerEntry(f, bv), DeleteEntry(g)]
662+ let bB = X
663+[IntegerEntry(f, bB), DeleteEntry(g)]
645664 }
646- else if ($isInstanceOf(Q, "Unit"))
665+ else if ($isInstanceOf(X, "Unit"))
647666 then nil
648667 else throw("Match error")
649668 }
650- $Tuple2(([IntegerEntry(w(bR), height), IntegerEntry(s, height), IntegerEntry(j, bR), IntegerEntry(p, d), IntegerEntry(h(i), bb)] ++ bT), true)
669+ $Tuple2(([IntegerEntry(w(ca), height), IntegerEntry(s, height), IntegerEntry(j, ca), IntegerEntry(p, d), IntegerEntry(h(i), bi)] ++ cc), true)
651670 }
652- else if (if (bI)
653- then (bj == unit)
671+ else if (if (bR)
672+ then (bq == unit)
654673 else false)
655674 then $Tuple2([IntegerEntry(p, e)], true)
656- else if ((bj == unit))
675+ else if ((bq == unit))
657676 then $Tuple2(nil, false)
658- else if ((bj == d))
677+ else if ((bq == d))
659678 then {
660- let bU = getString(q)
661- let bV = getString(r)
662- let Q = bU
663- if ($isInstanceOf(Q, "Unit"))
679+ let cd = getString(q)
680+ let ce = getString(r)
681+ let X = cd
682+ if ($isInstanceOf(X, "Unit"))
664683 then {
665- let bW = getString(aq(an))
666- if ($isInstanceOf(bW, "Unit"))
684+ let cf = getString(ax(au))
685+ if ($isInstanceOf(cf, "Unit"))
667686 then $Tuple2([IntegerEntry(p, e), DeleteEntry(q), DeleteEntry(r)], true)
668- else if ($isInstanceOf(bW, "String"))
687+ else if ($isInstanceOf(cf, "String"))
669688 then {
670- let bX = bW
671- $Tuple2([StringEntry(q, bX)], true)
689+ let cg = cf
690+ $Tuple2([StringEntry(q, cg)], true)
672691 }
673692 else throw("Match error")
674693 }
675- else if ($isInstanceOf(Q, "String"))
694+ else if ($isInstanceOf(X, "String"))
676695 then {
677- let bx = Q
678- let z = X(bx)
679- let bY = {
680- let bW = bV
681- if ($isInstanceOf(bW, "Unit"))
682- then getString(aq(ao(z)))
683- else if ($isInstanceOf(bW, "String"))
696+ let bD = X
697+ let z = ae(bD)
698+ let ch = {
699+ let cf = ce
700+ if ($isInstanceOf(cf, "Unit"))
701+ then getString(ax(av(z)))
702+ else if ($isInstanceOf(cf, "String"))
684703 then {
685- let bZ = bW
686- let ca = getString(aw(ao(z), bZ))
687- if ((ca == ca))
704+ let ci = cf
705+ let cj = getString(aD(av(z), ci))
706+ if ((cj == cj))
688707 then {
689- let cb = invoke(this, "processVoteINTERNAL", [bx, bZ], nil)
690- if ((cb == cb))
691- then ca
708+ let ck = invoke(this, "processVoteINTERNAL", [bD, ci], nil)
709+ if ((ck == ck))
710+ then cj
692711 else throw("Strict value is not equal to itself.")
693712 }
694713 else throw("Strict value is not equal to itself.")
695714 }
696715 else throw("Match error")
697716 }
698- let bW = bY
699- if ($isInstanceOf(bW, "Unit"))
717+ let cf = ch
718+ if ($isInstanceOf(cf, "Unit"))
700719 then {
701- let cc = getString(aw(an, bx))
702- let cd = cc
703- if ($isInstanceOf(cd, "Unit"))
720+ let cl = getString(aD(au, bD))
721+ let cm = cl
722+ if ($isInstanceOf(cm, "Unit"))
704723 then $Tuple2([IntegerEntry(p, e), DeleteEntry(q), DeleteEntry(r)], true)
705- else if ($isInstanceOf(cd, "String"))
724+ else if ($isInstanceOf(cm, "String"))
706725 then {
707- let aI = cd
708- $Tuple2([StringEntry(q, aI), DeleteEntry(r)], true)
726+ let aP = cm
727+ $Tuple2([StringEntry(q, aP), DeleteEntry(r)], true)
709728 }
710729 else throw("Match error")
711730 }
712- else if ($isInstanceOf(bW, "String"))
731+ else if ($isInstanceOf(cf, "String"))
713732 then {
714- let ce = bW
715- $Tuple2([StringEntry(r, ce)], true)
733+ let cn = cf
734+ $Tuple2([StringEntry(r, cn)], true)
716735 }
717736 else throw("Match error")
718737 }
719738 else throw("Match error")
720739 }
721- else if ((bj == e))
740+ else if ((bq == e))
722741 then {
723- let bU = getString(q)
724- let Q = bU
725- if ($isInstanceOf(Q, "Unit"))
742+ let cd = getString(q)
743+ let X = cd
744+ if ($isInstanceOf(X, "Unit"))
726745 then {
727- let bW = getString(aq(an))
728- if ($isInstanceOf(bW, "Unit"))
746+ let cf = getString(ax(au))
747+ if ($isInstanceOf(cf, "Unit"))
729748 then {
730- let bH = if (bI)
749+ let bQ = if (bR)
731750 then [DeleteEntry(p), DeleteEntry(v)]
732- else [DeleteEntry(p), BooleanEntry(x(bQ), true), IntegerEntry(t, i), IntegerEntry(u, bh)]
733- $Tuple2(bH, true)
751+ else [DeleteEntry(p), BooleanEntry(x(bZ), true), IntegerEntry(t, i), IntegerEntry(u, bo)]
752+ $Tuple2(bQ, true)
734753 }
735- else if ($isInstanceOf(bW, "String"))
754+ else if ($isInstanceOf(cf, "String"))
736755 then {
737- let cf = bW
738- $Tuple2([StringEntry(q, cf)], true)
756+ let co = cf
757+ $Tuple2([StringEntry(q, co)], true)
739758 }
740759 else throw("Match error")
741760 }
742- else if ($isInstanceOf(Q, "String"))
761+ else if ($isInstanceOf(X, "String"))
743762 then {
744- let bx = Q
745- let cc = getString(aw(an, bx))
746- if ((cc == cc))
763+ let bD = X
764+ let cl = getString(aD(au, bD))
765+ if ((cl == cl))
747766 then {
748- let bM = {
749- let U = invoke(this, "processPoolINTERNAL", [bx, bI], nil)
750- if ($isInstanceOf(U, "Boolean"))
751- then U
752- else throw(($getType(U) + " couldn't be cast to Boolean"))
767+ let bV = {
768+ let ab = invoke(this, "processPoolINTERNAL", [bD, bR], nil)
769+ if ($isInstanceOf(ab, "Boolean"))
770+ then ab
771+ else throw(($getType(ab) + " couldn't be cast to Boolean"))
753772 }
754- if ((bM == bM))
755- then if (bM)
773+ if ((bV == bV))
774+ then if (bV)
756775 then $Tuple2(nil, true)
757776 else {
758- let bW = cc
759- if ($isInstanceOf(bW, "Unit"))
777+ let cf = cl
778+ if ($isInstanceOf(cf, "Unit"))
760779 then {
761- let bH = if (bI)
780+ let bQ = if (bR)
762781 then [DeleteEntry(p), DeleteEntry(v), DeleteEntry(q)]
763- else [DeleteEntry(p), BooleanEntry(x(bQ), true), IntegerEntry(t, i), IntegerEntry(u, bh), DeleteEntry(q)]
764- $Tuple2(bH, true)
782+ else [DeleteEntry(p), BooleanEntry(x(bZ), true), IntegerEntry(t, i), IntegerEntry(u, bo), DeleteEntry(q)]
783+ $Tuple2(bQ, true)
765784 }
766- else if ($isInstanceOf(bW, "String"))
785+ else if ($isInstanceOf(cf, "String"))
767786 then {
768- let cf = bW
769- $Tuple2([StringEntry(q, cf)], true)
787+ let co = cf
788+ $Tuple2([StringEntry(q, co)], true)
770789 }
771790 else throw("Match error")
772791 }
781800
782801
783802
784-@Callable(aM)
785-func finalizeWrapper (cg) = {
786- let ch = {
787- let U = invoke(this, "finalizeHelper", nil, nil)
788- if ($isInstanceOf(U, "Boolean"))
789- then U
790- else throw(($getType(U) + " couldn't be cast to Boolean"))
803+@Callable(aT)
804+func finalizeWrapper (cp) = {
805+ let cq = {
806+ let ab = invoke(this, "finalizeHelper", nil, nil)
807+ if ($isInstanceOf(ab, "Boolean"))
808+ then ab
809+ else throw(($getType(ab) + " couldn't be cast to Boolean"))
791810 }
792- if ((ch == ch))
793- then if (!(ch))
794- then if ((cg == 0))
811+ if ((cq == cq))
812+ then if (!(cq))
813+ then if ((cp == 0))
795814 then throw("Current voting is not over yet")
796815 else $Tuple2(nil, unit)
797816 else {
798- let ci = valueOrElse(getInteger(this, k), c)
799- if ((ci > cg))
817+ let cr = valueOrElse(getInteger(this, k), c)
818+ if ((cr > cp))
800819 then {
801- let cj = invoke(this, "finalizeWrapper", [(cg + 1)], nil)
802- if ((cj == cj))
820+ let cs = invoke(this, "finalizeWrapper", [(cp + 1)], nil)
821+ if ((cs == cs))
803822 then $Tuple2(nil, unit)
804823 else throw("Strict value is not equal to itself.")
805824 }
810829
811830
812831
813-@Callable(aM)
832+@Callable(aT)
814833 func finalize () = {
815- let cj = invoke(this, "finalizeWrapper", [0], nil)
816- if ((cj == cj))
834+ let cs = invoke(this, "finalizeWrapper", [0], nil)
835+ if ((cs == cs))
817836 then $Tuple2(nil, unit)
818837 else throw("Strict value is not equal to itself.")
819838 }
820839
821840
822841
823-@Callable(aM)
824-func containsNodeREADONLY (ar,av) = $Tuple2(nil, ax(ar, av))
842+@Callable(aT)
843+func containsNodeREADONLY (ay,aC) = $Tuple2(nil, aE(ay, aC))
825844
826845
827846
828-@Callable(aM)
829-func insertNode (ar,av) = {
830- let aQ = aN(aM)
831- if ((aQ == aQ))
832- then $Tuple2(aB(ar, av), unit)
847+@Callable(aT)
848+func insertNode (ay,aC) = {
849+ let aX = aU(aT)
850+ if ((aX == aX))
851+ then $Tuple2(aI(ay, aC), unit)
833852 else throw("Strict value is not equal to itself.")
834853 }
835854
836855
837856
838-@Callable(aM)
839-func deleteNode (ar,av) = {
840- let aQ = aN(aM)
841- if ((aQ == aQ))
842- then $Tuple2(aE(ar, av), unit)
857+@Callable(aT)
858+func deleteNode (ay,aC) = {
859+ let aX = aU(aT)
860+ if ((aX == aX))
861+ then $Tuple2(aL(ay, aC), unit)
843862 else throw("Strict value is not equal to itself.")
844863 }
845864
846865
847-@Verifier(ck)
848-func cl () = {
849- let cm = {
850- let Q = aH()
851- if ($isInstanceOf(Q, "ByteVector"))
866+@Verifier(ct)
867+func cu () = {
868+ let cv = {
869+ let X = aO()
870+ if ($isInstanceOf(X, "ByteVector"))
852871 then {
853- let aO = Q
854- aO
872+ let aV = X
873+ aV
855874 }
856- else if ($isInstanceOf(Q, "Unit"))
857- then ck.senderPublicKey
875+ else if ($isInstanceOf(X, "Unit"))
876+ then ct.senderPublicKey
858877 else throw("Match error")
859878 }
860- sigVerify(ck.bodyBytes, ck.proofs[0], cm)
879+ sigVerify(ct.bodyBytes, ct.proofs[0], cv)
861880 }
862881
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 6 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let a = "__"
55
66 let b = 100000000
77
88 let c = 10
99
1010 let d = 0
1111
1212 let e = 1
1313
1414 let f = makeString(["%s", "epochLength"], a)
1515
1616 let g = makeString(["%s%s", "epochLength__new"], a)
1717
1818 func h (i) = makeString(["%s%d", "epochLength", toString(i)], a)
1919
2020
2121 let j = makeString(["%s", "currentEpoch"], a)
2222
2323 let k = makeString(["%s", "maxDepth"], a)
2424
2525 let l = makeString(["%s", "votingEmissionCandidateContract"], a)
2626
2727 let m = makeString(["%s", "factoryContract"], a)
2828
2929 let n = makeString(["%s", "boostingContract"], a)
3030
3131 let o = makeString(["%s", "stakingContract"], a)
3232
3333 let p = makeString(["%s", "finalizationStage"], a)
3434
3535 let q = makeString(["%s", "nextPool"], a)
3636
3737 let r = makeString(["%s", "nextUser"], a)
3838
3939 let s = makeString(["%s", "startHeight"], a)
4040
4141 let t = makeString(["%s", "currentEpochUi"], a)
4242
4343 let u = makeString(["%s", "startHeightUi"], a)
4444
4545 let v = makeString(["%s", "force"], a)
4646
4747 func w (i) = makeString(["%s%d", "startHeight", toString(i)], a)
4848
4949
5050 func x (i) = makeString(["%s%d", "finalized", toString(i)], a)
5151
5252
5353 func y (z) = {
5454 let A = z
5555 let B = A._1
5656 let C = A._2
5757 makeString(["%s%s%s", "inList", B, C], a)
5858 }
5959
6060
6161 func D (E,i) = makeString(["%s%s%d", "used", toString(E), toString(i)], a)
6262
6363
6464 func F (z,E,i) = {
6565 let G = z
6666 let B = G._1
6767 let C = G._2
6868 makeString(["%s%s%s%s%d", "vote", B, C, toString(E), toString(i)], a)
6969 }
7070
7171
7272 func H (z,i) = {
7373 let I = z
7474 let B = I._1
7575 let C = I._2
7676 makeString(["%s%s%s%d", "votingResult", B, C, toString(i)], a)
7777 }
7878
7979
80-func J (z,i) = {
81- let K = z
82- let B = K._1
83- let C = K._2
80+func J (K,i) = makeString(["%s%s%d", "votingResultStaked", K, toString(i)], a)
81+
82+
83+func L (z,i) = {
84+ let M = z
85+ let B = M._1
86+ let C = M._2
8487 makeString(["%s%s%s%d", "poolShare", B, C, toString(i)], a)
8588 }
8689
8790
88-func L (i) = makeString(["%s%d", "totalVotes", toString(i)], a)
91+func N (i) = makeString(["%s%d", "totalVotes", toString(i)], a)
8992
9093
91-func M (E,N,O) = {
92- let P = makeString(["mandatory ", toString(E), ".", N, " is not defined"], "")
94+func O (K,P) = makeString(["%s%s%s", "staked", P, K], a)
95+
96+
97+func Q (R) = makeString(["voting_emission.ride:", R], " ")
98+
99+
100+func S (R) = throw(Q(R))
101+
102+
103+func T (E,U,V) = {
104+ let W = makeString(["mandatory ", toString(E), ".", U, " is not defined"], "")
93105 valueOrErrorMessage({
94- let Q = O
95- if ($isInstanceOf(Q, "String"))
106+ let X = V
107+ if ($isInstanceOf(X, "String"))
96108 then {
97- let R = Q
98- getString(E, N)
109+ let Y = X
110+ getString(E, U)
99111 }
100- else if ($isInstanceOf(Q, "Int"))
112+ else if ($isInstanceOf(X, "Int"))
101113 then {
102- let S = Q
103- getInteger(E, N)
114+ let Z = X
115+ getInteger(E, U)
104116 }
105117 else throw("invalid entry type")
106- }, P)
118+ }, W)
107119 }
108120
109121
110-func T (E,N) = {
111- let U = M(E, N, "")
112- if ($isInstanceOf(U, "String"))
113- then U
114- else throw(($getType(U) + " couldn't be cast to String"))
122+func aa (E,U) = {
123+ let ab = T(E, U, "")
124+ if ($isInstanceOf(ab, "String"))
125+ then ab
126+ else throw(($getType(ab) + " couldn't be cast to String"))
115127 }
116128
117129
118-func V (E,N) = {
119- let U = M(E, N, 0)
120- if ($isInstanceOf(U, "Int"))
121- then U
122- else throw(($getType(U) + " couldn't be cast to Int"))
130+func ac (E,U) = {
131+ let ab = T(E, U, 0)
132+ if ($isInstanceOf(ab, "Int"))
133+ then ab
134+ else throw(($getType(ab) + " couldn't be cast to Int"))
123135 }
124136
125137
126-func W (z) = ((z._1 + a) + z._2)
138+func ad (z) = ((z._1 + a) + z._2)
127139
128140
129-func X (R) = {
130- let Y = split(R, a)
131- if ((size(Y) == 2))
132- then $Tuple2(Y[0], Y[1])
141+func ae (Y) = {
142+ let af = split(Y, a)
143+ if ((size(af) == 2))
144+ then $Tuple2(af[0], af[1])
133145 else throw("invalid pool string")
134146 }
135147
136148
137-func Z (B,C) = {
138- func aa (ab) = ("%s%s%s__mappings__baseAsset2internalId__" + ab)
149+func ag (B,C) = {
150+ func ah (ai) = ("%s%s%s__mappings__baseAsset2internalId__" + ai)
139151
140- func ac (ad,ae) = (((("%d%d%s%s__" + toString(ad)) + "__") + toString(ae)) + "__mappings__poolAssets2PoolContract")
152+ func aj (ak,al) = (((("%d%d%s%s__" + toString(ak)) + "__") + toString(al)) + "__mappings__poolAssets2PoolContract")
141153
142- func af (ag) = (("%s%s%s__" + ag) + "__mappings__poolContract2LpAsset")
154+ func am (an) = (("%s%s%s__" + an) + "__mappings__poolContract2LpAsset")
143155
144- let ah = addressFromStringValue(T(this, m))
145- let ai = V(ah, aa(B))
146- let aj = V(ah, aa(C))
147- let ag = T(ah, ac(ai, aj))
148- let ak = T(ah, af(ag))
149- ak
156+ let ao = addressFromStringValue(aa(this, m))
157+ let ap = ac(ao, ah(B))
158+ let aq = ac(ao, ah(C))
159+ let an = aa(ao, aj(ap, aq))
160+ let ar = aa(ao, am(an))
161+ ar
150162 }
151163
152164
153-func al (z) = {
154- let am = z
155- let B = am._1
156- let C = am._2
157- let ah = addressFromStringValue(T(this, m))
158- let U = invoke(ah, "checkWxEmissionPoolLabel", [B, C], nil)
159- if ($isInstanceOf(U, "Boolean"))
160- then U
161- else throw(($getType(U) + " couldn't be cast to Boolean"))
165+func as (z) = {
166+ let at = z
167+ let B = at._1
168+ let C = at._2
169+ let ao = addressFromStringValue(aa(this, m))
170+ let ab = invoke(ao, "checkWxEmissionPoolLabel", [B, C], nil)
171+ if ($isInstanceOf(ab, "Boolean"))
172+ then ab
173+ else throw(($getType(ab) + " couldn't be cast to Boolean"))
162174 }
163175
164176
165-let an = "pools"
177+let au = "pools"
166178
167-func ao (z) = {
168- let ap = z
169- let B = ap._1
170- let C = ap._2
179+func av (z) = {
180+ let aw = z
181+ let B = aw._1
182+ let C = aw._2
171183 makeString(["votes", B, C], a)
172184 }
173185
174186
175-func aq (ar) = {
176- let as = if ((ar == an))
187+func ax (ay) = {
188+ let az = if ((ay == au))
177189 then "%s%s"
178190 else "%s%s%s%s"
179- makeString([as, ar, "head"], a)
191+ makeString([az, ay, "head"], a)
180192 }
181193
182194
183-func at (ar) = {
184- let as = if ((ar == an))
195+func aA (ay) = {
196+ let az = if ((ay == au))
185197 then "%s%s"
186198 else "%s%s%s%s"
187- makeString([as, ar, "size"], a)
199+ makeString([az, ay, "size"], a)
188200 }
189201
190202
191-func au (ar,av) = {
192- let as = if ((ar == an))
203+func aB (ay,aC) = {
204+ let az = if ((ay == au))
193205 then "%s%s%s%s"
194206 else "%s%s%s%s%s"
195- makeString([as, ar, av, "prev"], a)
207+ makeString([az, ay, aC, "prev"], a)
196208 }
197209
198210
199-func aw (ar,av) = {
200- let as = if ((ar == an))
211+func aD (ay,aC) = {
212+ let az = if ((ay == au))
201213 then "%s%s%s%s"
202214 else "%s%s%s%s%s"
203- makeString([as, ar, av, "next"], a)
215+ makeString([az, ay, aC, "next"], a)
204216 }
205217
206218
207-func ax (ar,av) = {
208- let ay = getString(this, aq(ar))
209- let az = getString(this, au(ar, av))
210- let aA = getString(this, aw(ar, av))
211- if (if ((av == valueOrElse(ay, "")))
219+func aE (ay,aC) = {
220+ let aF = getString(this, ax(ay))
221+ let aG = getString(this, aB(ay, aC))
222+ let aH = getString(this, aD(ay, aC))
223+ if (if ((aC == valueOrElse(aF, "")))
212224 then true
213- else (az != unit))
225+ else (aG != unit))
214226 then true
215- else (aA != unit)
227+ else (aH != unit)
216228 }
217229
218230
219-func aB (ar,av) = {
220- let ay = getString(this, aq(ar))
221- let aC = valueOrElse(getInteger(this, at(ar)), 0)
222- let aD = if (!(ax(ar, av)))
231+func aI (ay,aC) = {
232+ let aF = getString(this, ax(ay))
233+ let aJ = valueOrElse(getInteger(this, aA(ay)), 0)
234+ let aK = if (!(aE(ay, aC)))
223235 then true
224236 else throw("Node exists")
225- if ((aD == aD))
226- then (([IntegerEntry(at(ar), (aC + 1))] ++ (if ((ay != unit))
227- then [StringEntry(aw(ar, av), value(ay)), StringEntry(au(ar, value(ay)), av)]
228- else nil)) ++ [StringEntry(aq(ar), av)])
237+ if ((aK == aK))
238+ then (([IntegerEntry(aA(ay), (aJ + 1))] ++ (if ((aF != unit))
239+ then [StringEntry(aD(ay, aC), value(aF)), StringEntry(aB(ay, value(aF)), aC)]
240+ else nil)) ++ [StringEntry(ax(ay), aC)])
229241 else throw("Strict value is not equal to itself.")
230242 }
231243
232244
233-func aE (ar,av) = {
234- let ay = getString(this, aq(ar))
235- let aC = valueOrElse(getInteger(this, at(ar)), 0)
236- let az = getString(this, au(ar, av))
237- let aA = getString(this, aw(ar, av))
238- ([IntegerEntry(at(ar), (aC - 1))] ++ (if (if ((az != unit))
239- then (aA != unit)
245+func aL (ay,aC) = {
246+ let aF = getString(this, ax(ay))
247+ let aJ = valueOrElse(getInteger(this, aA(ay)), 0)
248+ let aG = getString(this, aB(ay, aC))
249+ let aH = getString(this, aD(ay, aC))
250+ ([IntegerEntry(aA(ay), (aJ - 1))] ++ (if (if ((aG != unit))
251+ then (aH != unit)
240252 else false)
241- then [StringEntry(aw(ar, value(az)), value(aA)), StringEntry(au(ar, value(aA)), value(az)), DeleteEntry(au(ar, av)), DeleteEntry(aw(ar, av))]
242- else if ((aA != unit))
243- then [StringEntry(aq(ar), value(aA)), DeleteEntry(aw(ar, av)), DeleteEntry(au(ar, value(aA)))]
244- else if ((az != unit))
245- then [DeleteEntry(au(ar, av)), DeleteEntry(aw(ar, value(az)))]
246- else if ((av == valueOrElse(ay, "")))
247- then [DeleteEntry(aq(ar))]
248- else throw(((("invalid node: " + ar) + ".") + av))))
253+ then [StringEntry(aD(ay, value(aG)), value(aH)), StringEntry(aB(ay, value(aH)), value(aG)), DeleteEntry(aB(ay, aC)), DeleteEntry(aD(ay, aC))]
254+ else if ((aH != unit))
255+ then [StringEntry(ax(ay), value(aH)), DeleteEntry(aD(ay, aC)), DeleteEntry(aB(ay, value(aH)))]
256+ else if ((aG != unit))
257+ then [DeleteEntry(aB(ay, aC)), DeleteEntry(aD(ay, value(aG)))]
258+ else if ((aC == valueOrElse(aF, "")))
259+ then [DeleteEntry(ax(ay))]
260+ else throw(((("invalid node: " + ay) + ".") + aC))))
249261 }
250262
251263
252-func aF () = "%s__managerPublicKey"
264+func aM () = "%s__managerPublicKey"
253265
254266
255-func aG () = "%s__pendingManagerPublicKey"
267+func aN () = "%s__pendingManagerPublicKey"
256268
257269
258-func aH () = {
259- let Q = getString(aF())
260- if ($isInstanceOf(Q, "String"))
270+func aO () = {
271+ let X = getString(aM())
272+ if ($isInstanceOf(X, "String"))
261273 then {
262- let aI = Q
263- fromBase58String(aI)
274+ let aP = X
275+ fromBase58String(aP)
264276 }
265- else if ($isInstanceOf(Q, "Unit"))
277+ else if ($isInstanceOf(X, "Unit"))
266278 then unit
267279 else throw("Match error")
268280 }
269281
270282
271-func aJ () = {
272- let Q = getString(aG())
273- if ($isInstanceOf(Q, "String"))
283+func aQ () = {
284+ let X = getString(aN())
285+ if ($isInstanceOf(X, "String"))
274286 then {
275- let aI = Q
276- fromBase58String(aI)
287+ let aP = X
288+ fromBase58String(aP)
277289 }
278- else if ($isInstanceOf(Q, "Unit"))
290+ else if ($isInstanceOf(X, "Unit"))
279291 then unit
280292 else throw("Match error")
281293 }
282294
283295
284-let aK = throw("Permission denied")
296+let aR = throw("Permission denied")
285297
286-func aL (aM) = if ((aM.caller == this))
298+func aS (aT) = if ((aT.caller == this))
287299 then true
288- else aK
300+ else aR
289301
290302
291-func aN (aM) = {
292- let Q = aH()
293- if ($isInstanceOf(Q, "ByteVector"))
303+func aU (aT) = {
304+ let X = aO()
305+ if ($isInstanceOf(X, "ByteVector"))
294306 then {
295- let aO = Q
296- if ((aM.callerPublicKey == aO))
307+ let aV = X
308+ if ((aT.callerPublicKey == aV))
297309 then true
298- else aK
310+ else aR
299311 }
300- else if ($isInstanceOf(Q, "Unit"))
301- then aL(aM)
312+ else if ($isInstanceOf(X, "Unit"))
313+ then aS(aT)
302314 else throw("Match error")
303315 }
304316
305317
306-@Callable(aM)
307-func setManager (aP) = {
308- let aQ = aN(aM)
309- if ((aQ == aQ))
318+@Callable(aT)
319+func setManager (aW) = {
320+ let aX = aU(aT)
321+ if ((aX == aX))
310322 then {
311- let aR = fromBase58String(aP)
312- if ((aR == aR))
313- then [StringEntry(aG(), aP)]
323+ let aY = fromBase58String(aW)
324+ if ((aY == aY))
325+ then [StringEntry(aN(), aW)]
314326 else throw("Strict value is not equal to itself.")
315327 }
316328 else throw("Strict value is not equal to itself.")
317329 }
318330
319331
320332
321-@Callable(aM)
333+@Callable(aT)
322334 func confirmManager () = {
323- let aS = aJ()
324- let aT = if (isDefined(aS))
335+ let aZ = aQ()
336+ let ba = if (isDefined(aZ))
325337 then true
326338 else throw("No pending manager")
327- if ((aT == aT))
339+ if ((ba == ba))
328340 then {
329- let aU = if ((aM.callerPublicKey == value(aS)))
341+ let bb = if ((aT.callerPublicKey == value(aZ)))
330342 then true
331343 else throw("You are not pending manager")
332- if ((aU == aU))
333- then [StringEntry(aF(), toBase58String(value(aS))), DeleteEntry(aG())]
344+ if ((bb == bb))
345+ then [StringEntry(aM(), toBase58String(value(aZ))), DeleteEntry(aN())]
334346 else throw("Strict value is not equal to itself.")
335347 }
336348 else throw("Strict value is not equal to itself.")
337349 }
338350
339351
340352
341-@Callable(aM)
342-func getUserGwxAmountAtHeight (aV,aW) = {
343- let aX = valueOrErrorMessage(addressFromString(T(this, n)), "invalid boosting contract address")
353+@Callable(aT)
354+func getUserGwxAmountAtHeight (bc,bd) = {
355+ let be = valueOrErrorMessage(addressFromString(aa(this, n)), "invalid boosting contract address")
344356 $Tuple2(nil, {
345- let U = invoke(aX, "getUserGwxAmountAtHeightREADONLY", [aV, aW], nil)
346- if ($isInstanceOf(U, "Int"))
347- then U
348- else throw(($getType(U) + " couldn't be cast to Int"))
357+ let ab = invoke(be, "getUserGwxAmountAtHeightREADONLY", [bc, bd], nil)
358+ if ($isInstanceOf(ab, "Int"))
359+ then ab
360+ else throw(($getType(ab) + " couldn't be cast to Int"))
349361 })
350362 }
351363
352364
353365
354-@Callable(aM)
355-func constructor (ah,aY,aZ,ba,bb) = {
356- let bc = [aN(aM), if ((addressFromString(ah) != unit))
366+@Callable(aT)
367+func constructor (ao,bf,bg,bh,bi) = {
368+ let bj = [aU(aT), if ((addressFromString(ao) != unit))
357369 then true
358- else "invalid factory contract address", if ((addressFromString(aY) != unit))
370+ else "invalid factory contract address", if ((addressFromString(bf) != unit))
359371 then true
360- else "invalid voting emission candidate contract address", if ((addressFromString(aZ) != unit))
372+ else "invalid voting emission candidate contract address", if ((addressFromString(bg) != unit))
361373 then true
362- else "invalid boosting contract address", if ((addressFromString(ba) != unit))
374+ else "invalid boosting contract address", if ((addressFromString(bh) != unit))
363375 then true
364- else "invalid staking contract address", if ((bb > 0))
376+ else "invalid staking contract address", if ((bi > 0))
365377 then true
366378 else throw("invalid epoch length")]
367- if ((bc == bc))
368- then $Tuple2([StringEntry(m, ah), StringEntry(l, aY), StringEntry(n, aZ), StringEntry(o, ba), IntegerEntry(f, bb)], unit)
379+ if ((bj == bj))
380+ then $Tuple2([StringEntry(m, ao), StringEntry(l, bf), StringEntry(n, bg), StringEntry(o, bh), IntegerEntry(f, bi)], unit)
369381 else throw("Strict value is not equal to itself.")
370382 }
371383
372384
373385
374-@Callable(aM)
386+@Callable(aT)
375387 func create (B,C) = {
376- let bc = [if ((toBase58String(aM.caller.bytes) == valueOrElse(getString(this, l), "")))
388+ let bj = [if ((toBase58String(aT.caller.bytes) == valueOrElse(getString(this, l), "")))
377389 then true
378- else aN(aM)]
379- if ((bc == bc))
390+ else aU(aT)]
391+ if ((bj == bj))
380392 then {
381393 let z = $Tuple2(B, C)
382- let bd = ([BooleanEntry(y(z), true)] ++ aB(an, W(z)))
383- let be = (getInteger(this, j) == unit)
384- let bf = if (be)
394+ let bk = ([BooleanEntry(y(z), true)] ++ aI(au, ad(z)))
395+ let bl = (getInteger(this, j) == unit)
396+ let bm = if (bl)
385397 then {
386398 let i = 0
387399 [IntegerEntry(j, i), IntegerEntry(w(i), height), IntegerEntry(s, height), IntegerEntry(t, i), IntegerEntry(u, height)]
388400 }
389401 else nil
390- $Tuple2((bd ++ bf), unit)
402+ $Tuple2((bk ++ bm), unit)
391403 }
392404 else throw("Strict value is not equal to itself.")
393405 }
394406
395407
396408
397-@Callable(aM)
398-func vote (B,C,bg) = {
409+@Callable(aT)
410+func vote (B,C,bn) = {
399411 let z = $Tuple2(B, C)
400412 let i = valueOrElse(getInteger(this, j), 0)
401- let bh = V(this, w(i))
402- let bb = V(this, f)
403- let bi = (bh + bb)
404- let bj = getInteger(this, p)
405- let bk = valueOrElse(getInteger(this, D(aM.caller, i)), 0)
406- let bl = valueOrElse(getInteger(this, F(z, aM.caller, i)), 0)
407- let bm = valueOrElse(getInteger(this, H(z, i)), 0)
408- let bn = valueOrElse(getInteger(this, L(i)), 0)
409- let bo = {
410- let U = invoke(this, "getUserGwxAmountAtHeight", [toBase58String(aM.caller.bytes), bi], nil)
411- if ($isInstanceOf(U, "Int"))
412- then U
413- else throw(($getType(U) + " couldn't be cast to Int"))
413+ let bo = ac(this, w(i))
414+ let bi = ac(this, f)
415+ let bp = (bo + bi)
416+ let bq = getInteger(this, p)
417+ let br = valueOrElse(getInteger(this, D(aT.caller, i)), 0)
418+ let bs = valueOrElse(getInteger(this, F(z, aT.caller, i)), 0)
419+ let bt = valueOrElse(getInteger(this, H(z, i)), 0)
420+ let bu = valueOrElse(getInteger(this, N(i)), 0)
421+ let bv = {
422+ let ab = invoke(this, "getUserGwxAmountAtHeight", [toBase58String(aT.caller.bytes), bp], nil)
423+ if ($isInstanceOf(ab, "Int"))
424+ then ab
425+ else throw(($getType(ab) + " couldn't be cast to Int"))
414426 }
415- let bp = (bo - bk)
416- let bq = (bl + bg)
417- let br = al(z)
418- let bc = [if ((getBoolean(y(z)) != unit))
427+ let bw = (bv - br)
428+ let bx = (bs + bn)
429+ let by = as(z)
430+ let bj = [if ((getBoolean(y(z)) != unit))
419431 then true
420- else throw("invalid assets"), if ((bi > height))
432+ else throw("invalid assets"), if ((bp > height))
421433 then true
422- else throw("invalid height"), if ((bj == unit))
434+ else throw("invalid height"), if ((bq == unit))
423435 then true
424- else throw("finalization in progress"), if ((bo > 0))
436+ else throw("finalization in progress"), if ((bv > 0))
425437 then true
426- else throw("you do not have gWX"), if (if ((bg > 0))
427- then (bp >= bg)
438+ else throw("you do not have gWX"), if (if ((bn > 0))
439+ then (bw >= bn)
428440 else false)
429441 then true
430- else throw("invalid amount"), if (br)
442+ else throw("invalid amount"), if (by)
431443 then true
432444 else throw("pool hasn't WX_EMISSION label")]
433- if ((bc == bc))
445+ if ((bj == bj))
434446 then {
435- let bs = ao(z)
436- let bt = toString(aM.caller)
437- let bu = if (ax(bs, bt))
447+ let bz = av(z)
448+ let P = toString(aT.caller)
449+ let bA = if (aE(bz, P))
438450 then nil
439- else aB(bs, bt)
440- $Tuple2(([IntegerEntry(D(aM.caller, i), (bk + bg)), IntegerEntry(F(z, aM.caller, i), bq), IntegerEntry(H(z, i), (bm + bg)), IntegerEntry(L(i), (bn + bg))] ++ bu), unit)
451+ else aI(bz, P)
452+ $Tuple2(([IntegerEntry(D(aT.caller, i), (br + bn)), IntegerEntry(F(z, aT.caller, i), bx), IntegerEntry(H(z, i), (bt + bn)), IntegerEntry(N(i), (bu + bn))] ++ bA), unit)
441453 }
442454 else throw("Strict value is not equal to itself.")
443455 }
444456
445457
446458
447-@Callable(aM)
459+@Callable(aT)
448460 func cancelVote (B,C) = {
449461 let z = $Tuple2(B, C)
450462 let i = valueOrElse(getInteger(this, j), 0)
451- let bh = V(this, w(i))
452- let bb = V(this, f)
453- let bi = (bh + bb)
454- let bj = getInteger(this, p)
455- let bk = valueOrElse(getInteger(this, D(aM.caller, i)), 0)
456- let bl = valueOrElse(getInteger(this, F(z, aM.caller, i)), 0)
457- let bm = valueOrElse(getInteger(this, H(z, i)), 0)
458- let bn = valueOrElse(getInteger(this, L(i)), 0)
459- let bc = [if ((getBoolean(y(z)) != unit))
463+ let bo = ac(this, w(i))
464+ let bi = ac(this, f)
465+ let bp = (bo + bi)
466+ let bq = getInteger(this, p)
467+ let br = valueOrElse(getInteger(this, D(aT.caller, i)), 0)
468+ let bs = valueOrElse(getInteger(this, F(z, aT.caller, i)), 0)
469+ let bt = valueOrElse(getInteger(this, H(z, i)), 0)
470+ let bu = valueOrElse(getInteger(this, N(i)), 0)
471+ let bj = [if ((getBoolean(y(z)) != unit))
460472 then true
461- else throw("invalid assets"), if ((bi > height))
473+ else throw("invalid assets"), if ((bp > height))
462474 then true
463- else throw("invalid height"), if ((bj == unit))
475+ else throw("invalid height"), if ((bq == unit))
464476 then true
465- else throw("finalization in progress"), if ((bl > 0))
477+ else throw("finalization in progress"), if ((bs > 0))
466478 then true
467479 else throw("no vote")]
468- if ((bc == bc))
480+ if ((bj == bj))
469481 then {
470- let bs = ao(z)
471- let bt = toString(aM.caller)
472- $Tuple2(([IntegerEntry(D(aM.caller, i), max([(bk - bl), 0])), DeleteEntry(F(z, aM.caller, i)), IntegerEntry(H(z, i), (bm - bl)), IntegerEntry(L(i), (bn - bl))] ++ aE(bs, bt)), unit)
482+ let bz = av(z)
483+ let P = toString(aT.caller)
484+ $Tuple2(([IntegerEntry(D(aT.caller, i), max([(br - bs), 0])), DeleteEntry(F(z, aT.caller, i)), IntegerEntry(H(z, i), (bt - bs)), IntegerEntry(N(i), (bu - bs))] ++ aL(bz, P)), unit)
473485 }
474486 else throw("Strict value is not equal to itself.")
475487 }
476488
477489
478490
479-@Callable(aM)
480-func setEpochLength (bv) = {
481- let bc = [aN(aM), if ((bv > 0))
491+@Callable(aT)
492+func setEpochLength (bB) = {
493+ let bj = [aU(aT), if ((bB > 0))
482494 then true
483495 else throw("invalid epoch length")]
484- if ((bc == bc))
485- then $Tuple2([IntegerEntry(g, bv)], unit)
496+ if ((bj == bj))
497+ then $Tuple2([IntegerEntry(g, bB)], unit)
486498 else throw("Strict value is not equal to itself.")
487499 }
488500
489501
490502
491-@Callable(aM)
492-func setMaxDepth (bw) = {
493- let bc = [aN(aM), if ((bw > 0))
503+@Callable(aT)
504+func setMaxDepth (bC) = {
505+ let bj = [aU(aT), if ((bC > 0))
494506 then true
495507 else throw("invalid max depth")]
496- if ((bc == bc))
497- then $Tuple2([IntegerEntry(k, bw)], unit)
508+ if ((bj == bj))
509+ then $Tuple2([IntegerEntry(k, bC)], unit)
498510 else throw("Strict value is not equal to itself.")
499511 }
500512
501513
502514
503-@Callable(aM)
504-func processVoteINTERNAL (bx,bt) = {
505- let aQ = aL(aM)
506- if ((aQ == aQ))
515+@Callable(aT)
516+func processVoteINTERNAL (bD,P) = {
517+ let aX = aS(aT)
518+ if ((aX == aX))
507519 then {
508- let aV = valueOrErrorMessage(addressFromString(bt), ("processVoteINTERNAL: invalid user address " + bt))
509- let i = V(this, j)
510- let by = (i - 1)
511- let bb = V(this, f)
512- let bh = V(this, w(i))
513- let bi = (bh + bb)
514- let bz = V(this, w(by))
515- let bA = V(this, h(by))
516- let bB = (bz + bA)
517- let bC = if ((by >= 0))
520+ let bc = valueOrErrorMessage(addressFromString(P), ("processVoteINTERNAL: invalid user address " + P))
521+ let i = ac(this, j)
522+ let bE = (i - 1)
523+ let bi = ac(this, f)
524+ let bo = ac(this, w(i))
525+ let bp = (bo + bi)
526+ let bF = ac(this, w(bE))
527+ let bG = ac(this, h(bE))
528+ let bH = (bF + bG)
529+ let bI = if ((bE >= 0))
518530 then true
519531 else throw("processVoteINTERNAL: invalid previous epoch")
520- if ((bC == bC))
532+ if ((bI == bI))
521533 then {
522- let z = X(bx)
523- let bD = z
524- let B = bD._1
525- let C = bD._2
526- let br = al(z)
527- let bo = {
528- let U = invoke(this, "getUserGwxAmountAtHeight", [bt, bi], nil)
529- if ($isInstanceOf(U, "Int"))
530- then U
531- else throw(($getType(U) + " couldn't be cast to Int"))
534+ let z = ae(bD)
535+ let bJ = z
536+ let B = bJ._1
537+ let C = bJ._2
538+ let by = as(z)
539+ let bv = {
540+ let ab = invoke(this, "getUserGwxAmountAtHeight", [P, bp], nil)
541+ if ($isInstanceOf(ab, "Int"))
542+ then ab
543+ else throw(($getType(ab) + " couldn't be cast to Int"))
532544 }
533- let bE = {
534- let U = invoke(this, "getUserGwxAmountAtHeight", [bt, bB], nil)
535- if ($isInstanceOf(U, "Int"))
536- then U
537- else throw(($getType(U) + " couldn't be cast to Int"))
545+ let bK = {
546+ let ab = invoke(this, "getUserGwxAmountAtHeight", [P, bH], nil)
547+ if ($isInstanceOf(ab, "Int"))
548+ then ab
549+ else throw(($getType(ab) + " couldn't be cast to Int"))
538550 }
539- let bn = valueOrElse(getInteger(L(i)), 0)
540- let bF = valueOrElse(getInteger(H(z, i)), 0)
541- let bG = valueOrErrorMessage(getInteger(F(z, aV, by)), (((("processVoteINTERNAL " + bx) + " ") + bt) + ": no previous vote"))
542- let bk = valueOrElse(getInteger(this, D(aV, i)), 0)
543- let bq = if ((bE > 0))
544- then fraction(bG, bo, bE)
551+ let bu = valueOrElse(getInteger(N(i)), 0)
552+ let bL = valueOrElse(getInteger(H(z, i)), 0)
553+ let bM = valueOrErrorMessage(getInteger(F(z, bc, bE)), (((("processVoteINTERNAL " + bD) + " ") + P) + ": no previous vote"))
554+ let br = valueOrElse(getInteger(this, D(bc, i)), 0)
555+ let K = ag(B, C)
556+ let bN = valueOrElse(getInteger(J(K, bE)), 0)
557+ let bh = addressFromStringValue(aa(this, o))
558+ let bO = valueOrElse(getInteger(bh, O(K, P)), 0)
559+ let bP = if ((bO == 0))
560+ then nil
561+ else [IntegerEntry(J(K, bE), (bN + bM))]
562+ let bx = if ((bK > 0))
563+ then fraction(bM, bv, bK)
545564 else 0
546- let bH = if (if ((bq > 0))
547- then br
565+ let bQ = if (if ((bx > 0))
566+ then by
548567 else false)
549- then [IntegerEntry(F(z, aV, i), bq), IntegerEntry(L(i), (bn + bq)), IntegerEntry(H(z, i), (bF + bq)), IntegerEntry(D(aV, i), (bk + bq))]
550- else aE(ao(z), bt)
551- $Tuple2(bH, unit)
568+ then [IntegerEntry(F(z, bc, i), bx), IntegerEntry(N(i), (bu + bx)), IntegerEntry(H(z, i), (bL + bx)), IntegerEntry(D(bc, i), (br + bx))]
569+ else aL(av(z), P)
570+ $Tuple2((bQ ++ bP), unit)
552571 }
553572 else throw("Strict value is not equal to itself.")
554573 }
555574 else throw("Strict value is not equal to itself.")
556575 }
557576
558577
559578
560-@Callable(aM)
561-func processPoolINTERNAL (bx,bI) = {
562- let aQ = aL(aM)
563- if ((aQ == aQ))
579+@Callable(aT)
580+func processPoolINTERNAL (bD,bR) = {
581+ let aX = aS(aT)
582+ if ((aX == aX))
564583 then {
565- let bJ = {
566- let bK = V(this, j)
567- if (bI)
568- then bK
569- else (bK - 1)
584+ let bS = {
585+ let bT = ac(this, j)
586+ if (bR)
587+ then bT
588+ else (bT - 1)
570589 }
571- let bC = if ((bJ >= 0))
590+ let bI = if ((bS >= 0))
572591 then true
573592 else throw("processPoolINTERNAL: invalid target epoch")
574- if ((bC == bC))
593+ if ((bI == bI))
575594 then {
576- let z = X(bx)
577- let bL = z
578- let B = bL._1
579- let C = bL._2
580- let ba = addressFromStringValue(T(this, o))
581- let ah = addressFromStringValue(T(this, m))
582- let ak = Z(B, C)
583- let bM = {
584- let U = invoke(ba, "usersListTraversal", [ak], nil)
585- if ($isInstanceOf(U, "Boolean"))
586- then U
587- else throw(($getType(U) + " couldn't be cast to Boolean"))
595+ let z = ae(bD)
596+ let bU = z
597+ let B = bU._1
598+ let C = bU._2
599+ let bh = addressFromStringValue(aa(this, o))
600+ let ao = addressFromStringValue(aa(this, m))
601+ let ar = ag(B, C)
602+ let bV = {
603+ let ab = invoke(bh, "usersListTraversal", [ar], nil)
604+ if ($isInstanceOf(ab, "Boolean"))
605+ then ab
606+ else throw(($getType(ab) + " couldn't be cast to Boolean"))
588607 }
589- if ((bM == bM))
590- then if (bM)
608+ if ((bV == bV))
609+ then if (bV)
591610 then $Tuple2(nil, true)
592611 else {
593- let br = al(z)
594- let bn = valueOrElse(getInteger(this, L(bJ)), 0)
595- let bF = valueOrElse(getInteger(this, H(z, bJ)), 0)
596- let bN = if (if ((bn == 0))
612+ let by = as(z)
613+ let bu = valueOrElse(getInteger(this, N(bS)), 0)
614+ let bL = valueOrElse(getInteger(this, H(z, bS)), 0)
615+ let bW = if (if ((bu == 0))
597616 then true
598- else !(br))
617+ else !(by))
599618 then 0
600- else fraction(bF, b, bn)
601- let bO = invoke(ah, "modifyWeight", [ak, bN], nil)
602- if ((bO == bO))
619+ else fraction(bL, b, bu)
620+ let bX = invoke(ao, "modifyWeight", [ar, bW], nil)
621+ if ((bX == bX))
603622 then {
604- let bP = if (if (br)
623+ let bY = if (if (by)
605624 then true
606- else bI)
625+ else bR)
607626 then nil
608- else ([DeleteEntry(y(z))] ++ aE(an, bx))
609- $Tuple2(([IntegerEntry(J(z, bJ), bN)] ++ bP), false)
627+ else ([DeleteEntry(y(z))] ++ aL(au, bD))
628+ $Tuple2(([IntegerEntry(L(z, bS), bW)] ++ bY), false)
610629 }
611630 else throw("Strict value is not equal to itself.")
612631 }
613632 else throw("Strict value is not equal to itself.")
614633 }
615634 else throw("Strict value is not equal to itself.")
616635 }
617636 else throw("Strict value is not equal to itself.")
618637 }
619638
620639
621640
622-@Callable(aM)
641+@Callable(aT)
623642 func finalizeHelper () = {
624- let bI = valueOrElse(getBoolean(v), false)
643+ let bR = valueOrElse(getBoolean(v), false)
625644 let i = valueOrElse(getInteger(this, j), 0)
626- let bQ = (i - 1)
627- let bh = V(this, w(i))
628- let bb = V(this, f)
629- let bi = (bh + bb)
630- let bj = getInteger(this, p)
631- if (if (if ((height >= bi))
632- then (bj == unit)
645+ let bZ = (i - 1)
646+ let bo = ac(this, w(i))
647+ let bi = ac(this, f)
648+ let bp = (bo + bi)
649+ let bq = getInteger(this, p)
650+ if (if (if ((height >= bp))
651+ then (bq == unit)
633652 else false)
634- then !(bI)
653+ then !(bR)
635654 else false)
636655 then {
637- let bR = (i + 1)
638- let bS = getInteger(this, g)
639- let bT = {
640- let Q = bS
641- if ($isInstanceOf(Q, "Int"))
656+ let ca = (i + 1)
657+ let cb = getInteger(this, g)
658+ let cc = {
659+ let X = cb
660+ if ($isInstanceOf(X, "Int"))
642661 then {
643- let bv = Q
644-[IntegerEntry(f, bv), DeleteEntry(g)]
662+ let bB = X
663+[IntegerEntry(f, bB), DeleteEntry(g)]
645664 }
646- else if ($isInstanceOf(Q, "Unit"))
665+ else if ($isInstanceOf(X, "Unit"))
647666 then nil
648667 else throw("Match error")
649668 }
650- $Tuple2(([IntegerEntry(w(bR), height), IntegerEntry(s, height), IntegerEntry(j, bR), IntegerEntry(p, d), IntegerEntry(h(i), bb)] ++ bT), true)
669+ $Tuple2(([IntegerEntry(w(ca), height), IntegerEntry(s, height), IntegerEntry(j, ca), IntegerEntry(p, d), IntegerEntry(h(i), bi)] ++ cc), true)
651670 }
652- else if (if (bI)
653- then (bj == unit)
671+ else if (if (bR)
672+ then (bq == unit)
654673 else false)
655674 then $Tuple2([IntegerEntry(p, e)], true)
656- else if ((bj == unit))
675+ else if ((bq == unit))
657676 then $Tuple2(nil, false)
658- else if ((bj == d))
677+ else if ((bq == d))
659678 then {
660- let bU = getString(q)
661- let bV = getString(r)
662- let Q = bU
663- if ($isInstanceOf(Q, "Unit"))
679+ let cd = getString(q)
680+ let ce = getString(r)
681+ let X = cd
682+ if ($isInstanceOf(X, "Unit"))
664683 then {
665- let bW = getString(aq(an))
666- if ($isInstanceOf(bW, "Unit"))
684+ let cf = getString(ax(au))
685+ if ($isInstanceOf(cf, "Unit"))
667686 then $Tuple2([IntegerEntry(p, e), DeleteEntry(q), DeleteEntry(r)], true)
668- else if ($isInstanceOf(bW, "String"))
687+ else if ($isInstanceOf(cf, "String"))
669688 then {
670- let bX = bW
671- $Tuple2([StringEntry(q, bX)], true)
689+ let cg = cf
690+ $Tuple2([StringEntry(q, cg)], true)
672691 }
673692 else throw("Match error")
674693 }
675- else if ($isInstanceOf(Q, "String"))
694+ else if ($isInstanceOf(X, "String"))
676695 then {
677- let bx = Q
678- let z = X(bx)
679- let bY = {
680- let bW = bV
681- if ($isInstanceOf(bW, "Unit"))
682- then getString(aq(ao(z)))
683- else if ($isInstanceOf(bW, "String"))
696+ let bD = X
697+ let z = ae(bD)
698+ let ch = {
699+ let cf = ce
700+ if ($isInstanceOf(cf, "Unit"))
701+ then getString(ax(av(z)))
702+ else if ($isInstanceOf(cf, "String"))
684703 then {
685- let bZ = bW
686- let ca = getString(aw(ao(z), bZ))
687- if ((ca == ca))
704+ let ci = cf
705+ let cj = getString(aD(av(z), ci))
706+ if ((cj == cj))
688707 then {
689- let cb = invoke(this, "processVoteINTERNAL", [bx, bZ], nil)
690- if ((cb == cb))
691- then ca
708+ let ck = invoke(this, "processVoteINTERNAL", [bD, ci], nil)
709+ if ((ck == ck))
710+ then cj
692711 else throw("Strict value is not equal to itself.")
693712 }
694713 else throw("Strict value is not equal to itself.")
695714 }
696715 else throw("Match error")
697716 }
698- let bW = bY
699- if ($isInstanceOf(bW, "Unit"))
717+ let cf = ch
718+ if ($isInstanceOf(cf, "Unit"))
700719 then {
701- let cc = getString(aw(an, bx))
702- let cd = cc
703- if ($isInstanceOf(cd, "Unit"))
720+ let cl = getString(aD(au, bD))
721+ let cm = cl
722+ if ($isInstanceOf(cm, "Unit"))
704723 then $Tuple2([IntegerEntry(p, e), DeleteEntry(q), DeleteEntry(r)], true)
705- else if ($isInstanceOf(cd, "String"))
724+ else if ($isInstanceOf(cm, "String"))
706725 then {
707- let aI = cd
708- $Tuple2([StringEntry(q, aI), DeleteEntry(r)], true)
726+ let aP = cm
727+ $Tuple2([StringEntry(q, aP), DeleteEntry(r)], true)
709728 }
710729 else throw("Match error")
711730 }
712- else if ($isInstanceOf(bW, "String"))
731+ else if ($isInstanceOf(cf, "String"))
713732 then {
714- let ce = bW
715- $Tuple2([StringEntry(r, ce)], true)
733+ let cn = cf
734+ $Tuple2([StringEntry(r, cn)], true)
716735 }
717736 else throw("Match error")
718737 }
719738 else throw("Match error")
720739 }
721- else if ((bj == e))
740+ else if ((bq == e))
722741 then {
723- let bU = getString(q)
724- let Q = bU
725- if ($isInstanceOf(Q, "Unit"))
742+ let cd = getString(q)
743+ let X = cd
744+ if ($isInstanceOf(X, "Unit"))
726745 then {
727- let bW = getString(aq(an))
728- if ($isInstanceOf(bW, "Unit"))
746+ let cf = getString(ax(au))
747+ if ($isInstanceOf(cf, "Unit"))
729748 then {
730- let bH = if (bI)
749+ let bQ = if (bR)
731750 then [DeleteEntry(p), DeleteEntry(v)]
732- else [DeleteEntry(p), BooleanEntry(x(bQ), true), IntegerEntry(t, i), IntegerEntry(u, bh)]
733- $Tuple2(bH, true)
751+ else [DeleteEntry(p), BooleanEntry(x(bZ), true), IntegerEntry(t, i), IntegerEntry(u, bo)]
752+ $Tuple2(bQ, true)
734753 }
735- else if ($isInstanceOf(bW, "String"))
754+ else if ($isInstanceOf(cf, "String"))
736755 then {
737- let cf = bW
738- $Tuple2([StringEntry(q, cf)], true)
756+ let co = cf
757+ $Tuple2([StringEntry(q, co)], true)
739758 }
740759 else throw("Match error")
741760 }
742- else if ($isInstanceOf(Q, "String"))
761+ else if ($isInstanceOf(X, "String"))
743762 then {
744- let bx = Q
745- let cc = getString(aw(an, bx))
746- if ((cc == cc))
763+ let bD = X
764+ let cl = getString(aD(au, bD))
765+ if ((cl == cl))
747766 then {
748- let bM = {
749- let U = invoke(this, "processPoolINTERNAL", [bx, bI], nil)
750- if ($isInstanceOf(U, "Boolean"))
751- then U
752- else throw(($getType(U) + " couldn't be cast to Boolean"))
767+ let bV = {
768+ let ab = invoke(this, "processPoolINTERNAL", [bD, bR], nil)
769+ if ($isInstanceOf(ab, "Boolean"))
770+ then ab
771+ else throw(($getType(ab) + " couldn't be cast to Boolean"))
753772 }
754- if ((bM == bM))
755- then if (bM)
773+ if ((bV == bV))
774+ then if (bV)
756775 then $Tuple2(nil, true)
757776 else {
758- let bW = cc
759- if ($isInstanceOf(bW, "Unit"))
777+ let cf = cl
778+ if ($isInstanceOf(cf, "Unit"))
760779 then {
761- let bH = if (bI)
780+ let bQ = if (bR)
762781 then [DeleteEntry(p), DeleteEntry(v), DeleteEntry(q)]
763- else [DeleteEntry(p), BooleanEntry(x(bQ), true), IntegerEntry(t, i), IntegerEntry(u, bh), DeleteEntry(q)]
764- $Tuple2(bH, true)
782+ else [DeleteEntry(p), BooleanEntry(x(bZ), true), IntegerEntry(t, i), IntegerEntry(u, bo), DeleteEntry(q)]
783+ $Tuple2(bQ, true)
765784 }
766- else if ($isInstanceOf(bW, "String"))
785+ else if ($isInstanceOf(cf, "String"))
767786 then {
768- let cf = bW
769- $Tuple2([StringEntry(q, cf)], true)
787+ let co = cf
788+ $Tuple2([StringEntry(q, co)], true)
770789 }
771790 else throw("Match error")
772791 }
773792 else throw("Strict value is not equal to itself.")
774793 }
775794 else throw("Strict value is not equal to itself.")
776795 }
777796 else throw("Match error")
778797 }
779798 else throw("finalization is broken")
780799 }
781800
782801
783802
784-@Callable(aM)
785-func finalizeWrapper (cg) = {
786- let ch = {
787- let U = invoke(this, "finalizeHelper", nil, nil)
788- if ($isInstanceOf(U, "Boolean"))
789- then U
790- else throw(($getType(U) + " couldn't be cast to Boolean"))
803+@Callable(aT)
804+func finalizeWrapper (cp) = {
805+ let cq = {
806+ let ab = invoke(this, "finalizeHelper", nil, nil)
807+ if ($isInstanceOf(ab, "Boolean"))
808+ then ab
809+ else throw(($getType(ab) + " couldn't be cast to Boolean"))
791810 }
792- if ((ch == ch))
793- then if (!(ch))
794- then if ((cg == 0))
811+ if ((cq == cq))
812+ then if (!(cq))
813+ then if ((cp == 0))
795814 then throw("Current voting is not over yet")
796815 else $Tuple2(nil, unit)
797816 else {
798- let ci = valueOrElse(getInteger(this, k), c)
799- if ((ci > cg))
817+ let cr = valueOrElse(getInteger(this, k), c)
818+ if ((cr > cp))
800819 then {
801- let cj = invoke(this, "finalizeWrapper", [(cg + 1)], nil)
802- if ((cj == cj))
820+ let cs = invoke(this, "finalizeWrapper", [(cp + 1)], nil)
821+ if ((cs == cs))
803822 then $Tuple2(nil, unit)
804823 else throw("Strict value is not equal to itself.")
805824 }
806825 else $Tuple2(nil, unit)
807826 }
808827 else throw("Strict value is not equal to itself.")
809828 }
810829
811830
812831
813-@Callable(aM)
832+@Callable(aT)
814833 func finalize () = {
815- let cj = invoke(this, "finalizeWrapper", [0], nil)
816- if ((cj == cj))
834+ let cs = invoke(this, "finalizeWrapper", [0], nil)
835+ if ((cs == cs))
817836 then $Tuple2(nil, unit)
818837 else throw("Strict value is not equal to itself.")
819838 }
820839
821840
822841
823-@Callable(aM)
824-func containsNodeREADONLY (ar,av) = $Tuple2(nil, ax(ar, av))
842+@Callable(aT)
843+func containsNodeREADONLY (ay,aC) = $Tuple2(nil, aE(ay, aC))
825844
826845
827846
828-@Callable(aM)
829-func insertNode (ar,av) = {
830- let aQ = aN(aM)
831- if ((aQ == aQ))
832- then $Tuple2(aB(ar, av), unit)
847+@Callable(aT)
848+func insertNode (ay,aC) = {
849+ let aX = aU(aT)
850+ if ((aX == aX))
851+ then $Tuple2(aI(ay, aC), unit)
833852 else throw("Strict value is not equal to itself.")
834853 }
835854
836855
837856
838-@Callable(aM)
839-func deleteNode (ar,av) = {
840- let aQ = aN(aM)
841- if ((aQ == aQ))
842- then $Tuple2(aE(ar, av), unit)
857+@Callable(aT)
858+func deleteNode (ay,aC) = {
859+ let aX = aU(aT)
860+ if ((aX == aX))
861+ then $Tuple2(aL(ay, aC), unit)
843862 else throw("Strict value is not equal to itself.")
844863 }
845864
846865
847-@Verifier(ck)
848-func cl () = {
849- let cm = {
850- let Q = aH()
851- if ($isInstanceOf(Q, "ByteVector"))
866+@Verifier(ct)
867+func cu () = {
868+ let cv = {
869+ let X = aO()
870+ if ($isInstanceOf(X, "ByteVector"))
852871 then {
853- let aO = Q
854- aO
872+ let aV = X
873+ aV
855874 }
856- else if ($isInstanceOf(Q, "Unit"))
857- then ck.senderPublicKey
875+ else if ($isInstanceOf(X, "Unit"))
876+ then ct.senderPublicKey
858877 else throw("Match error")
859878 }
860- sigVerify(ck.bodyBytes, ck.proofs[0], cm)
879+ sigVerify(ct.bodyBytes, ct.proofs[0], cv)
861880 }
862881

github/deemru/w8io/169f3d6 
317.76 ms