tx · Gf6pwhR3UYk3PnoMQGNGJTH1ioev6wyS3FTEY5qj9AC3

3N9Zi6AcWcGbM23jQJ4fnzFsoHoTsxYDznr:  -0.02400000 Waves

2024.01.15 09:06 [2932251] smart account 3N9Zi6AcWcGbM23jQJ4fnzFsoHoTsxYDznr > SELF 0.00000000 Waves

{ "type": 13, "id": "Gf6pwhR3UYk3PnoMQGNGJTH1ioev6wyS3FTEY5qj9AC3", "fee": 2400000, "feeAssetId": null, "timestamp": 1705298796966, "version": 2, "chainId": 84, "sender": "3N9Zi6AcWcGbM23jQJ4fnzFsoHoTsxYDznr", "senderPublicKey": "GFbasS3jufhZkK4xR7tdTjjnP8K33KvJFEDHRtxXDkaJ", "proofs": [ "S2nx2cF7w8v33n76tMqjnrSXUeUFDfWyQ3B8ULRq8Uy4VLU1KHyUcaJ6rBanLmuX5SM4q9yQkRvgsmQKKWW7PaJ" ], "script": "base64:BgLnFwgCEgQKAggBEgcKBQgICAgBEgQKAggIEgUKAwgIARIECgIICBIDCgEBEgMKAQESBAoCCAgSBAoCCAQSABIDCgEBEgASBAoCCAgSBAoCCAgSBAoCCAgSABIECgIICCIJc2VwYXJhdG9yIg5wb29sV2VpZ2h0TXVsdCIPbWF4RGVwdGhEZWZhdWx0IhZmaW5hbGl6YXRpb25TdGFnZVRvdGFsIhdmaW5hbGl6YXRpb25TdGFnZVNoYXJlcyIOa2V5RXBvY2hMZW5ndGgiEWtleUVwb2NoTGVuZ3RoTmV3IhVrZXlFcG9jaExlbmd0aEJ5RXBvY2giBWVwb2NoIg9rZXlDdXJyZW50RXBvY2giC2tleU1heERlcHRoIiJrZXlWb3RpbmdFbWlzc2lvbkNhbmRpZGF0ZUNvbnRyYWN0Ih1rZXlWb3RpbmdFbWlzc2lvblJhdGVDb250cmFjdCISa2V5RmFjdG9yeUNvbnRyYWN0IhNrZXlCb29zdGluZ0NvbnRyYWN0IhJrZXlTdGFraW5nQ29udHJhY3QiFmtleUFzc2V0c1N0b3JlQ29udHJhY3QiFGtleUZpbmFsaXphdGlvblN0YWdlIgtrZXlOZXh0UG9vbCILa2V5TmV4dFVzZXIiDmtleVN0YXJ0SGVpZ2h0IhFrZXlDdXJyZW50RXBvY2hVaSIQa2V5U3RhcnRIZWlnaHRVaSIda2V5RmluYWxpemF0aW9uU2hvdWxkQmVGb3JjZWQiFWtleVN0YXJ0SGVpZ2h0QnlFcG9jaCIMa2V5RmluYWxpemVkIglrZXlJbkxpc3QiBHBvb2wiCyR0MDE4NjkxOTA5Ig1hbW91bnRBc3NldElkIgxwcmljZUFzc2V0SWQiB2tleVVzZWQiB2FkZHJlc3MiB2tleVZvdGUiCyR0MDIxODMyMjIzIg9rZXlWb3RpbmdSZXN1bHQiCyR0MDI0MDUyNDQ1IhVrZXlWb3RpbmdSZXN1bHRTdGFrZWQiDGxwQXNzZXRJZFN0ciIMa2V5UG9vbFNoYXJlIgskdDAyNzY2MjgwNiINa2V5VG90YWxWb3RlcyIPa2V5U3Rha2VkQnlVc2VyIg51c2VyQWRkcmVzc1N0ciIHd3JhcEVyciIDbXNnIgh0aHJvd0VyciIOZ2V0VmFsdWVPckZhaWwiA2tleSIEdHlwZSIFZXJyb3IiByRtYXRjaDAiA3N0ciIDaW50IgxnZXRTdHJPckZhaWwiAUAiDGdldEludE9yRmFpbCIMcG9vbFRvU3RyaW5nIgxzdHJpbmdUb1Bvb2wiBXBhcnRzIg9mYWN0b3J5Q29udHJhY3QiGklkeEZhY3RvcnlDZmdHd3hSZXdhcmREYXBwIg1rZXlGYWN0b3J5Q2ZnIhRyZWFkRmFjdG9yeUNmZ09yRmFpbCIHZmFjdG9yeSIZZ2V0R3d4UmV3YXJkQWRkcmVzc09yRmFpbCIKZmFjdG9yeUNmZyIWZ2V0THBBc3NldEJ5UG9vbEFzc2V0cyIfa2V5TWFwcGluZ3NCYXNlQXNzZXQyaW50ZXJuYWxJZCIMYmFzZUFzc2V0U3RyIilrZXlNYXBwaW5nUG9vbEFzc2V0c1RvUG9vbENvbnRyYWN0QWRkcmVzcyIYaW50ZXJuYWxBbW91bnRBc3NldElkU3RyIhdpbnRlcm5hbFByaWNlQXNzZXRJZFN0ciIfa2V5TWFwcGluZ1Bvb2xDb250cmFjdFRvTFBBc3NldCITcG9vbENvbnRyYWN0QWRkcmVzcyIVYW1vdW50QXNzZXRJbnRlcm5hbElkIhRwcmljZUFzc2V0SW50ZXJuYWxJZCIJbHBBc3NldElkIhhjaGVja1d4RW1pc3Npb25Qb29sTGFiZWwiCyR0MDU2NDY1Njg2IhBnd3hSZXdhcmREZXBvc2l0IhJnd3hSZXdhcmRzQ29udHJhY3QiDXBvb2xzTGlzdE5hbWUiEGdldFZvdGVzTGlzdE5hbWUiCyR0MDYxMDM2MTQzIgtrZXlMaXN0SGVhZCIIbGlzdE5hbWUiBG1ldGEiC2tleUxpc3RTaXplIgtrZXlMaXN0UHJldiICaWQiC2tleUxpc3ROZXh0Igxjb250YWluc05vZGUiCmhlYWRPclVuaXQiCnByZXZPclVuaXQiCm5leHRPclVuaXQiEWluc2VydE5vZGVBY3Rpb25zIghsaXN0U2l6ZSIJY2hlY2tOb2RlIhFkZWxldGVOb2RlQWN0aW9ucyIWa2V5TWFuYWdlclZhdWx0QWRkcmVzcyITa2V5TWFuYWdlclB1YmxpY0tleSIcZ2V0TWFuYWdlclZhdWx0QWRkcmVzc09yVGhpcyIBcyIWbWFuYWdlclB1YmxpY0tleU9yVW5pdCITbWFuYWdlclZhdWx0QWRkcmVzcyIJaXNNYW5hZ2VyIgFpIgJwayILbXVzdE1hbmFnZXIiCG11c3RUaGlzIgt1c2VyQWRkcmVzcyIMdGFyZ2V0SGVpZ2h0Ihdib29zdGluZ0NvbnRyYWN0QWRkcmVzcyIfdm90aW5nRW1pc3Npb25DYW5kaWRhdGVDb250cmFjdCIQYm9vc3RpbmdDb250cmFjdCIPc3Rha2luZ0NvbnRyYWN0IgtlcG9jaExlbmd0aCIGY2hlY2tzIg1pbkxpc3RBY3Rpb25zIhhjdXJyZW50RXBvY2hJc05vdERlZmluZWQiEnN0YXJ0SGVpZ2h0QWN0aW9ucyIGYW1vdW50IgtzdGFydEhlaWdodCIJZW5kSGVpZ2h0IhdmaW5hbGl6YXRpb25TdGFnZU9yVW5pdCIEdXNlZCIEdm90ZSIKcG9vbFJlc3VsdCIKdG90YWxWb3RlcyITZ3d4QW1vdW50QXRFbmRUb3RhbCIJYXZhaWxhYmxlIgduZXdWb3RlIgp3eEVtaXNzaW9uIg12b3Rlc0xpc3ROYW1lIhB2b3Rlc0xpc3RBY3Rpb25zIg5uZXdFcG9jaExlbmd0aCILbmV3TWF4RGVwdGgiB3Bvb2xTdHIiC2NoZWNrQ2FsbGVyIg1lcG9jaFByZXZpb3VzIhNzdGFydEhlaWdodFByZXZpb3VzIhNlcG9jaExlbmd0aFByZXZpb3VzIhFlbmRIZWlnaHRQcmV2aW91cyIQY2hlY2tUYXJnZXRFcG9jaCINJHQwMTgxNDYxODE4NiIbZ3d4QW1vdW50QXRFbmRUb3RhbFByZXZpb3VzIgx2b3RpbmdSZXN1bHQiDHZvdGVQcmV2aW91cyIadm90aW5nUmVzdWx0U3Rha2VkUHJldmlvdXMiDHN0YWtlZEJ5VXNlciIZdm90aW5nUmVzdWx0U3Rha2VkQWN0aW9ucyILYmFsYW5jZUlzT2siB2FjdGlvbnMiBWZvcmNlIgt0YXJnZXRFcG9jaCIMY3VycmVudEVwb2NoIg0kdDAyMDcyMjIwNzYyIgFyIhNhc3NldHNTdG9yZUNvbnRyYWN0IhNhbW91bnRBc3NldFZlcmlmaWVkIhJwcmljZUFzc2V0VmVyaWZpZWQiEHNldFd4RW1pc3Npb25JbnYiBXNoYXJlIg9tb2RpZnlXZWlnaHRJbnYiDXByZXZpb3VzRXBvY2giCG5ld0Vwb2NoIhRuZXdFcG9jaExlbmd0aE9wdGlvbiIVbmV3RXBvY2hMZW5ndGhBY3Rpb25zIgpwb29sT3JVbml0Igp1c2VyT3JVbml0IgckbWF0Y2gxIgxwb29sc0hlYWRTdHIiDm5leHRVc2VyT3JVbml0IgR1c2VyIgRuZXh0Ig5wcm9jZXNzVm90ZUludiIObmV4dFBvb2xPclVuaXQiByRtYXRjaDIiCG5leHRVc2VyIhNnd3hSZXdhcmREZXBvc2l0SW52IgtuZXh0UG9vbFN0ciIHY291bnRlciIadm90aW5nRW1pc3Npb25SYXRlQ29udHJhY3QiBnJlc3VsdCIDaW52IghtYXhEZXB0aCIWZmluYWxpemF0aW9uSW5Qcm9ncmVzcyICdHgiBnZlcmlmeSIPdGFyZ2V0UHVibGljS2V5QAABYQICX18AAWIAgMLXLwABYwAKAAFkAAAAAWUAAQABZgkAuQkCCQDMCAICAiVzCQDMCAICC2Vwb2NoTGVuZ3RoBQNuaWwFAWEAAWcJALkJAgkAzAgCAgQlcyVzCQDMCAICEGVwb2NoTGVuZ3RoX19uZXcFA25pbAUBYQEBaAEBaQkAuQkCCQDMCAICBCVzJWQJAMwIAgILZXBvY2hMZW5ndGgJAMwIAgkApAMBBQFpBQNuaWwFAWEAAWoJALkJAgkAzAgCAgIlcwkAzAgCAgxjdXJyZW50RXBvY2gFA25pbAUBYQABawkAuQkCCQDMCAICAiVzCQDMCAICCG1heERlcHRoBQNuaWwFAWEAAWwJALkJAgkAzAgCAgIlcwkAzAgCAh92b3RpbmdFbWlzc2lvbkNhbmRpZGF0ZUNvbnRyYWN0BQNuaWwFAWEAAW0JALkJAgkAzAgCAgIlcwkAzAgCAhp2b3RpbmdFbWlzc2lvblJhdGVDb250cmFjdAUDbmlsBQFhAAFuCQC5CQIJAMwIAgICJXMJAMwIAgIPZmFjdG9yeUNvbnRyYWN0BQNuaWwFAWEAAW8JALkJAgkAzAgCAgIlcwkAzAgCAhBib29zdGluZ0NvbnRyYWN0BQNuaWwFAWEAAXAJALkJAgkAzAgCAgIlcwkAzAgCAg9zdGFraW5nQ29udHJhY3QFA25pbAUBYQABcQkAuQkCCQDMCAICAiVzCQDMCAICE2Fzc2V0c1N0b3JlQ29udHJhY3QFA25pbAUBYQABcgkAuQkCCQDMCAICAiVzCQDMCAICEWZpbmFsaXphdGlvblN0YWdlBQNuaWwFAWEAAXMJALkJAgkAzAgCAgIlcwkAzAgCAghuZXh0UG9vbAUDbmlsBQFhAAF0CQC5CQIJAMwIAgICJXMJAMwIAgIIbmV4dFVzZXIFA25pbAUBYQABdQkAuQkCCQDMCAICAiVzCQDMCAICC3N0YXJ0SGVpZ2h0BQNuaWwFAWEAAXYJALkJAgkAzAgCAgIlcwkAzAgCAg5jdXJyZW50RXBvY2hVaQUDbmlsBQFhAAF3CQC5CQIJAMwIAgICJXMJAMwIAgINc3RhcnRIZWlnaHRVaQUDbmlsBQFhAAF4CQC5CQIJAMwIAgICJXMJAMwIAgIFZm9yY2UFA25pbAUBYQEBeQEBaQkAuQkCCQDMCAICBCVzJWQJAMwIAgILc3RhcnRIZWlnaHQJAMwIAgkApAMBBQFpBQNuaWwFAWEBAXoBAWkJALkJAgkAzAgCAgQlcyVkCQDMCAICCWZpbmFsaXplZAkAzAgCCQCkAwEFAWkFA25pbAUBYQEBQQEBQgQBQwUBQgQBRAgFAUMCXzEEAUUIBQFDAl8yCQC5CQIJAMwIAgIGJXMlcyVzCQDMCAICBmluTGlzdAkAzAgCBQFECQDMCAIFAUUFA25pbAUBYQEBRgIBRwFpCQC5CQIJAMwIAgIGJXMlcyVkCQDMCAICBHVzZWQJAMwIAgkApQgBBQFHCQDMCAIJAKQDAQUBaQUDbmlsBQFhAQFIAwFCAUcBaQQBSQUBQgQBRAgFAUkCXzEEAUUIBQFJAl8yCQC5CQIJAMwIAgIKJXMlcyVzJXMlZAkAzAgCAgR2b3RlCQDMCAIFAUQJAMwIAgUBRQkAzAgCCQClCAEFAUcJAMwIAgkApAMBBQFpBQNuaWwFAWEBAUoCAUIBaQQBSwUBQgQBRAgFAUsCXzEEAUUIBQFLAl8yCQC5CQIJAMwIAgIIJXMlcyVzJWQJAMwIAgIMdm90aW5nUmVzdWx0CQDMCAIFAUQJAMwIAgUBRQkAzAgCCQCkAwEFAWkFA25pbAUBYQEBTAIBTQFpCQC5CQIJAMwIAgIGJXMlcyVkCQDMCAICEnZvdGluZ1Jlc3VsdFN0YWtlZAkAzAgCBQFNCQDMCAIJAKQDAQUBaQUDbmlsBQFhAQFOAgFCAWkEAU8FAUIEAUQIBQFPAl8xBAFFCAUBTwJfMgkAuQkCCQDMCAICCCVzJXMlcyVkCQDMCAICCXBvb2xTaGFyZQkAzAgCBQFECQDMCAIFAUUJAMwIAgkApAMBBQFpBQNuaWwFAWEBAVABAWkJALkJAgkAzAgCAgQlcyVkCQDMCAICCnRvdGFsVm90ZXMJAMwIAgkApAMBBQFpBQNuaWwFAWEBAVECAU0BUgkAuQkCCQDMCAICBiVzJXMlcwkAzAgCAgZzdGFrZWQJAMwIAgUBUgkAzAgCBQFNBQNuaWwFAWEBAVMBAVQJALkJAgkAzAgCAhV2b3RpbmdfZW1pc3Npb24ucmlkZToJAMwIAgUBVAUDbmlsAgEgAQFVAQFUCQACAQkBAVMBBQFUAQFWAwFHAVcBWAQBWQkBAVMBCQC5CQIJAMwIAgIKbWFuZGF0b3J5IAkAzAgCCQClCAEFAUcJAMwIAgIBLgkAzAgCBQFXCQDMCAICDyBpcyBub3QgZGVmaW5lZAUDbmlsAgAJARN2YWx1ZU9yRXJyb3JNZXNzYWdlAgQBWgUBWAMJAAECBQFaAgZTdHJpbmcEAmFhBQFaCQCdCAIFAUcFAVcDCQABAgUBWgIDSW50BAJhYgUBWgkAmggCBQFHBQFXCQEBVQECEmludmFsaWQgZW50cnkgdHlwZQUBWQECYWMCAUcBVwoAAmFkCQEBVgMFAUcFAVcCAAMJAAECBQJhZAIGU3RyaW5nBQJhZAkAAgEJAKwCAgkAAwEFAmFkAhsgY291bGRuJ3QgYmUgY2FzdCB0byBTdHJpbmcBAmFlAgFHAVcKAAJhZAkBAVYDBQFHBQFXAAADCQABAgUCYWQCA0ludAUCYWQJAAIBCQCsAgIJAAMBBQJhZAIYIGNvdWxkbid0IGJlIGNhc3QgdG8gSW50AQJhZgEBQgkArAICCQCsAgIIBQFCAl8xBQFhCAUBQgJfMgECYWcBAmFhBAJhaAkAtQkCBQJhYQUBYQMJAAACCQCQAwEFAmFoAAIJAJQKAgkAkQMCBQJhaAAACQCRAwIFAmFoAAEJAQFVAQITaW52YWxpZCBwb29sIHN0cmluZwACYWkJARFAZXh0ck5hdGl2ZSgxMDYyKQEJAQJhYwIFBHRoaXMFAW4AAmFqAAoBAmFrAAIRJXNfX2ZhY3RvcnlDb25maWcBAmFsAQJhbQkAtQkCCQECYWMCBQJhbQkBAmFrAAUBYQECYW4BAmFvCQERQGV4dHJOYXRpdmUoMTA2MikBCQCRAwIFAmFvBQJhagECYXACAUQBRQoBAmFxAQJhcgkArAICAiglcyVzJXNfX21hcHBpbmdzX19iYXNlQXNzZXQyaW50ZXJuYWxJZF9fBQJhcgoBAmFzAgJhdAJhdQkArAICCQCsAgIJAKwCAgkArAICAgolZCVkJXMlc19fCQCkAwEFAmF0AgJfXwkApAMBBQJhdQIjX19tYXBwaW5nc19fcG9vbEFzc2V0czJQb29sQ29udHJhY3QKAQJhdgECYXcJAKwCAgkArAICAgglcyVzJXNfXwUCYXcCIF9fbWFwcGluZ3NfX3Bvb2xDb250cmFjdDJMcEFzc2V0BAJheAkBAmFlAgUCYWkJAQJhcQEFAUQEAmF5CQECYWUCBQJhaQkBAmFxAQUBRQQCYXcJAQJhYwIFAmFpCQECYXMCBQJheAUCYXkEAmF6CQECYWMCBQJhaQkBAmF2AQUCYXcFAmF6AQJhQQEBQgQCYUIFAUIEAUQIBQJhQgJfMQQBRQgFAmFCAl8yCgACYWQJAPwHBAUCYWkCGGNoZWNrV3hFbWlzc2lvblBvb2xMYWJlbAkAzAgCBQFECQDMCAIFAUUFA25pbAUDbmlsAwkAAQIFAmFkAgdCb29sZWFuBQJhZAkAAgEJAKwCAgkAAwEFAmFkAhwgY291bGRuJ3QgYmUgY2FzdCB0byBCb29sZWFuAQJhQwAEAmFvCQECYWwBBQJhaQQCYUQJAQJhbgEFAmFvCQD8BwQFAmFEAgdkZXBvc2l0BQNuaWwFA25pbAACYUUCBXBvb2xzAQJhRgEBQgQCYUcFAUIEAUQIBQJhRwJfMQQBRQgFAmFHAl8yCQC5CQIJAMwIAgIFdm90ZXMJAMwIAgUBRAkAzAgCBQFFBQNuaWwFAWEBAmFIAQJhSQQCYUoDCQAAAgUCYUkFAmFFAgQlcyVzAgglcyVzJXMlcwkAuQkCCQDMCAIFAmFKCQDMCAIFAmFJCQDMCAICBGhlYWQFA25pbAUBYQECYUsBAmFJBAJhSgMJAAACBQJhSQUCYUUCBCVzJXMCCCVzJXMlcyVzCQC5CQIJAMwIAgUCYUoJAMwIAgUCYUkJAMwIAgIEc2l6ZQUDbmlsBQFhAQJhTAICYUkCYU0EAmFKAwkAAAIFAmFJBQJhRQIIJXMlcyVzJXMCCiVzJXMlcyVzJXMJALkJAgkAzAgCBQJhSgkAzAgCBQJhSQkAzAgCBQJhTQkAzAgCAgRwcmV2BQNuaWwFAWEBAmFOAgJhSQJhTQQCYUoDCQAAAgUCYUkFAmFFAgglcyVzJXMlcwIKJXMlcyVzJXMlcwkAuQkCCQDMCAIFAmFKCQDMCAIFAmFJCQDMCAIFAmFNCQDMCAICBG5leHQFA25pbAUBYQECYU8CAmFJAmFNBAJhUAkAnQgCBQR0aGlzCQECYUgBBQJhSQQCYVEJAJ0IAgUEdGhpcwkBAmFMAgUCYUkFAmFNBAJhUgkAnQgCBQR0aGlzCQECYU4CBQJhSQUCYU0DAwkAAAIFAmFNCQELdmFsdWVPckVsc2UCBQJhUAIABgkBAiE9AgUCYVEFBHVuaXQGCQECIT0CBQJhUgUEdW5pdAECYVMCAmFJAmFNBAJhUAkAnQgCBQR0aGlzCQECYUgBBQJhSQQCYVQJAQt2YWx1ZU9yRWxzZQIJAJoIAgUEdGhpcwkBAmFLAQUCYUkAAAQCYVUDCQEBIQEJAQJhTwIFAmFJBQJhTQYJAQFVAQILTm9kZSBleGlzdHMDCQAAAgUCYVUFAmFVCQDOCAIJAM4IAgkAzAgCCQEMSW50ZWdlckVudHJ5AgkBAmFLAQUCYUkJAGQCBQJhVAABBQNuaWwDCQECIT0CBQJhUAUEdW5pdAkAzAgCCQELU3RyaW5nRW50cnkCCQECYU4CBQJhSQUCYU0JAQV2YWx1ZQEFAmFQCQDMCAIJAQtTdHJpbmdFbnRyeQIJAQJhTAIFAmFJCQEFdmFsdWUBBQJhUAUCYU0FA25pbAUDbmlsCQDMCAIJAQtTdHJpbmdFbnRyeQIJAQJhSAEFAmFJBQJhTQUDbmlsCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuAQJhVgICYUkCYU0EAmFQCQCdCAIFBHRoaXMJAQJhSAEFAmFJBAJhVAkBC3ZhbHVlT3JFbHNlAgkAmggCBQR0aGlzCQECYUsBBQJhSQAABAJhUQkAnQgCBQR0aGlzCQECYUwCBQJhSQUCYU0EAmFSCQCdCAIFBHRoaXMJAQJhTgIFAmFJBQJhTQkAzggCCQDMCAIJAQxJbnRlZ2VyRW50cnkCCQECYUsBBQJhSQkAZQIFAmFUAAEFA25pbAMDCQECIT0CBQJhUQUEdW5pdAkBAiE9AgUCYVIFBHVuaXQHCQDMCAIJAQtTdHJpbmdFbnRyeQIJAQJhTgIFAmFJCQEFdmFsdWUBBQJhUQkBBXZhbHVlAQUCYVIJAMwIAgkBC1N0cmluZ0VudHJ5AgkBAmFMAgUCYUkJAQV2YWx1ZQEFAmFSCQEFdmFsdWUBBQJhUQkAzAgCCQELRGVsZXRlRW50cnkBCQECYUwCBQJhSQUCYU0JAMwIAgkBC0RlbGV0ZUVudHJ5AQkBAmFOAgUCYUkFAmFNBQNuaWwDCQECIT0CBQJhUgUEdW5pdAkAzAgCCQELU3RyaW5nRW50cnkCCQECYUgBBQJhSQkBBXZhbHVlAQUCYVIJAMwIAgkBC0RlbGV0ZUVudHJ5AQkBAmFOAgUCYUkFAmFNCQDMCAIJAQtEZWxldGVFbnRyeQEJAQJhTAIFAmFJCQEFdmFsdWUBBQJhUgUDbmlsAwkBAiE9AgUCYVEFBHVuaXQJAMwIAgkBC0RlbGV0ZUVudHJ5AQkBAmFMAgUCYUkFAmFNCQDMCAIJAQtEZWxldGVFbnRyeQEJAQJhTgIFAmFJCQEFdmFsdWUBBQJhUQUDbmlsAwkAAAIFAmFNCQELdmFsdWVPckVsc2UCBQJhUAIACQDMCAIJAQtEZWxldGVFbnRyeQEJAQJhSAEFAmFJBQNuaWwJAQFVAQkArAICCQCsAgIJAKwCAgIOaW52YWxpZCBub2RlOiAFAmFJAgEuBQJhTQECYVcAAhclc19fbWFuYWdlclZhdWx0QWRkcmVzcwECYVgAAhQlc19fbWFuYWdlclB1YmxpY0tleQECYVkABAFaCQCiCAEJAQJhVwADCQABAgUBWgIGU3RyaW5nBAJhWgUBWgkBEUBleHRyTmF0aXZlKDEwNjIpAQUCYVoFBHRoaXMBAmJhAAQCYmIJAQJhWQAEAVoJAJ0IAgUCYmIJAQJhWAADCQABAgUBWgIGU3RyaW5nBAJhWgUBWgkA2QQBBQJhWgMJAAECBQFaAgRVbml0BQR1bml0CQACAQILTWF0Y2ggZXJyb3IBAmJjAQJiZAQBWgkBAmJhAAMJAAECBQFaAgpCeXRlVmVjdG9yBAJiZQUBWgkAAAIIBQJiZA9jYWxsZXJQdWJsaWNLZXkFAmJlAwkAAQIFAVoCBFVuaXQJAAACCAUCYmQGY2FsbGVyBQR0aGlzCQACAQILTWF0Y2ggZXJyb3IBAmJmAQJiZAMJAQJiYwEFAmJkBgkAAgECEXBlcm1pc3Npb24gZGVuaWVkAQJiZwECYmQDCQAAAggFAmJkBmNhbGxlcgUEdGhpcwYJAAIBAhFwZXJtaXNzaW9uIGRlbmllZBECYmQBGGdldFVzZXJHd3hBbW91bnRBdEhlaWdodAICYmgCYmkEAmJqCQETdmFsdWVPckVycm9yTWVzc2FnZQIJAKYIAQkBAmFjAgUEdGhpcwUBbwkBAVMBAiFpbnZhbGlkIGJvb3N0aW5nIGNvbnRyYWN0IGFkZHJlc3MJAJQKAgUDbmlsCgACYWQJAPwHBAUCYmoCIGdldFVzZXJHd3hBbW91bnRBdEhlaWdodFJFQURPTkxZCQDMCAIFAmJoCQDMCAIFAmJpBQNuaWwFA25pbAMJAAECBQJhZAIDSW50BQJhZAkAAgEJAKwCAgkAAwEFAmFkAhggY291bGRuJ3QgYmUgY2FzdCB0byBJbnQCYmQBC2NvbnN0cnVjdG9yBQJhaQJiawJibAJibQJibgQCYm8JAMwIAgkBAmJmAQUCYmQJAMwIAgMJAQIhPQIJAKYIAQUCYWkFBHVuaXQGAiBpbnZhbGlkIGZhY3RvcnkgY29udHJhY3QgYWRkcmVzcwkAzAgCAwkBAiE9AgkApggBBQJiawUEdW5pdAYCMmludmFsaWQgdm90aW5nIGVtaXNzaW9uIGNhbmRpZGF0ZSBjb250cmFjdCBhZGRyZXNzCQDMCAIDCQECIT0CCQCmCAEFAmJsBQR1bml0BgIhaW52YWxpZCBib29zdGluZyBjb250cmFjdCBhZGRyZXNzCQDMCAIDCQECIT0CCQCmCAEFAmJtBQR1bml0BgIgaW52YWxpZCBzdGFraW5nIGNvbnRyYWN0IGFkZHJlc3MJAMwIAgMJAGYCBQJibgAABgkBAVUBAhRpbnZhbGlkIGVwb2NoIGxlbmd0aAUDbmlsAwkAAAIFAmJvBQJibwkAlAoCCQDMCAIJAQtTdHJpbmdFbnRyeQIFAW4FAmFpCQDMCAIJAQtTdHJpbmdFbnRyeQIFAWwFAmJrCQDMCAIJAQtTdHJpbmdFbnRyeQIFAW8FAmJsCQDMCAIJAQtTdHJpbmdFbnRyeQIFAXAFAmJtCQDMCAIJAQxJbnRlZ2VyRW50cnkCBQFmBQJibgUDbmlsBQR1bml0CQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuAmJkAQZjcmVhdGUCAUQBRQQCYm8JAMwIAgMJAAACCQDYBAEICAUCYmQGY2FsbGVyBWJ5dGVzCQELdmFsdWVPckVsc2UCCQCdCAIFBHRoaXMFAWwCAAYJAQJiZgEFAmJkBQNuaWwDCQAAAgUCYm8FAmJvBAFCCQCUCgIFAUQFAUUEAmJwCQDOCAIJAMwIAgkBDEJvb2xlYW5FbnRyeQIJAQFBAQUBQgYFA25pbAkBAmFTAgUCYUUJAQJhZgEFAUIEAmJxCQAAAgkAmggCBQR0aGlzBQFqBQR1bml0BAJicgMFAmJxBAFpAAAJAMwIAgkBDEludGVnZXJFbnRyeQIFAWoFAWkJAMwIAgkBDEludGVnZXJFbnRyeQIJAQF5AQUBaQUGaGVpZ2h0CQDMCAIJAQxJbnRlZ2VyRW50cnkCBQF1BQZoZWlnaHQJAMwIAgkBDEludGVnZXJFbnRyeQIFAXYFAWkJAMwIAgkBDEludGVnZXJFbnRyeQIFAXcFBmhlaWdodAUDbmlsBQNuaWwJAJQKAgkAzggCBQJicAUCYnIFBHVuaXQJAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4CYmQBBHZvdGUDAUQBRQJicwQBQgkAlAoCBQFEBQFFBAFpCQELdmFsdWVPckVsc2UCCQCaCAIFBHRoaXMFAWoAAAQCYnQJAQJhZQIFBHRoaXMJAQF5AQUBaQQCYm4JAQJhZQIFBHRoaXMFAWYEAmJ1CQBkAgUCYnQFAmJuBAJidgkAmggCBQR0aGlzBQFyBAJidwkBC3ZhbHVlT3JFbHNlAgkAmggCBQR0aGlzCQEBRgIIBQJiZAZjYWxsZXIFAWkAAAQCYngJAQt2YWx1ZU9yRWxzZQIJAJoIAgUEdGhpcwkBAUgDBQFCCAUCYmQGY2FsbGVyBQFpAAAEAmJ5CQELdmFsdWVPckVsc2UCCQCaCAIFBHRoaXMJAQFKAgUBQgUBaQAABAJiegkBC3ZhbHVlT3JFbHNlAgkAmggCBQR0aGlzCQEBUAEFAWkAAAQCYkEKAAJhZAkA/AcEBQR0aGlzAhhnZXRVc2VyR3d4QW1vdW50QXRIZWlnaHQJAMwIAgkA2AQBCAgFAmJkBmNhbGxlcgVieXRlcwkAzAgCBQJidQUDbmlsBQNuaWwDCQABAgUCYWQCA0ludAUCYWQJAAIBCQCsAgIJAAMBBQJhZAIYIGNvdWxkbid0IGJlIGNhc3QgdG8gSW50BAJiQgkAZQIFAmJBBQJidwQCYkMJAGQCBQJieAUCYnMEAmJECQECYUEBBQFCBAJibwkAzAgCAwkBAiE9AgkAoAgBCQEBQQEFAUIFBHVuaXQGCQEBVQECDmludmFsaWQgYXNzZXRzCQDMCAIDCQBmAgUCYnUFBmhlaWdodAYJAQFVAQIOaW52YWxpZCBoZWlnaHQJAMwIAgMJAAACBQJidgUEdW5pdAYJAQFVAQIYZmluYWxpemF0aW9uIGluIHByb2dyZXNzCQDMCAIDCQBmAgUCYkEAAAYJAQFVAQITeW91IGRvIG5vdCBoYXZlIGdXWAkAzAgCAwMJAGYCBQJicwAACQBnAgUCYkIFAmJzBwYJAQFVAQIOaW52YWxpZCBhbW91bnQJAMwIAgMFAmJEBgkBAVUBAh1wb29sIGhhc24ndCBXWF9FTUlTU0lPTiBsYWJlbAUDbmlsAwkAAAIFAmJvBQJibwQCYkUJAQJhRgEFAUIEAVIJAKUIAQgFAmJkBmNhbGxlcgQCYkYDCQECYU8CBQJiRQUBUgUDbmlsCQECYVMCBQJiRQUBUgkAlAoCCQDOCAIJAMwIAgkBDEludGVnZXJFbnRyeQIJAQFGAggFAmJkBmNhbGxlcgUBaQkAZAIFAmJ3BQJicwkAzAgCCQEMSW50ZWdlckVudHJ5AgkBAUgDBQFCCAUCYmQGY2FsbGVyBQFpBQJiQwkAzAgCCQEMSW50ZWdlckVudHJ5AgkBAUoCBQFCBQFpCQBkAgUCYnkFAmJzCQDMCAIJAQxJbnRlZ2VyRW50cnkCCQEBUAEFAWkJAGQCBQJiegUCYnMFA25pbAUCYkYFBHVuaXQJAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4CYmQBCmNhbmNlbFZvdGUCAUQBRQQBQgkAlAoCBQFEBQFFBAFpCQELdmFsdWVPckVsc2UCCQCaCAIFBHRoaXMFAWoAAAQCYnQJAQJhZQIFBHRoaXMJAQF5AQUBaQQCYm4JAQJhZQIFBHRoaXMFAWYEAmJ1CQBkAgUCYnQFAmJuBAJidgkAmggCBQR0aGlzBQFyBAJidwkBC3ZhbHVlT3JFbHNlAgkAmggCBQR0aGlzCQEBRgIIBQJiZAZjYWxsZXIFAWkAAAQCYngJAQt2YWx1ZU9yRWxzZQIJAJoIAgUEdGhpcwkBAUgDBQFCCAUCYmQGY2FsbGVyBQFpAAAEAmJ5CQELdmFsdWVPckVsc2UCCQCaCAIFBHRoaXMJAQFKAgUBQgUBaQAABAJiegkBC3ZhbHVlT3JFbHNlAgkAmggCBQR0aGlzCQEBUAEFAWkAAAQCYm8JAMwIAgMJAQIhPQIJAKAIAQkBAUEBBQFCBQR1bml0BgkBAVUBAg5pbnZhbGlkIGFzc2V0cwkAzAgCAwkAZgIFAmJ1BQZoZWlnaHQGCQEBVQECDmludmFsaWQgaGVpZ2h0CQDMCAIDCQAAAgUCYnYFBHVuaXQGCQEBVQECGGZpbmFsaXphdGlvbiBpbiBwcm9ncmVzcwkAzAgCAwkAZgIFAmJ4AAAGCQEBVQECB25vIHZvdGUFA25pbAMJAAACBQJibwUCYm8EAmJFCQECYUYBBQFCBAFSCQClCAEIBQJiZAZjYWxsZXIJAJQKAgkAzggCCQDMCAIJAQxJbnRlZ2VyRW50cnkCCQEBRgIIBQJiZAZjYWxsZXIFAWkJAJYDAQkAzAgCCQBlAgUCYncFAmJ4CQDMCAIAAAUDbmlsCQDMCAIJAQtEZWxldGVFbnRyeQEJAQFIAwUBQggFAmJkBmNhbGxlcgUBaQkAzAgCCQEMSW50ZWdlckVudHJ5AgkBAUoCBQFCBQFpCQBlAgUCYnkFAmJ4CQDMCAIJAQxJbnRlZ2VyRW50cnkCCQEBUAEFAWkJAGUCBQJiegUCYngFA25pbAkBAmFWAgUCYkUFAVIFBHVuaXQJAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4CYmQBDnNldEVwb2NoTGVuZ3RoAQJiRwQCYm8JAMwIAgkBAmJmAQUCYmQJAMwIAgMJAGYCBQJiRwAABgkBAVUBAhRpbnZhbGlkIGVwb2NoIGxlbmd0aAUDbmlsAwkAAAIFAmJvBQJibwkAlAoCCQDMCAIJAQxJbnRlZ2VyRW50cnkCBQFnBQJiRwUDbmlsBQR1bml0CQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuAmJkAQtzZXRNYXhEZXB0aAECYkgEAmJvCQDMCAIJAQJiZgEFAmJkCQDMCAIDCQBmAgUCYkgAAAYJAQFVAQIRaW52YWxpZCBtYXggZGVwdGgFA25pbAMJAAACBQJibwUCYm8JAJQKAgkAzAgCCQEMSW50ZWdlckVudHJ5AgUBawUCYkgFA25pbAUEdW5pdAkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgJiZAETcHJvY2Vzc1ZvdGVJTlRFUk5BTAICYkkBUgQCYkoJAQJiZwEFAmJkAwkAAAIFAmJKBQJiSgQCYmgJARN2YWx1ZU9yRXJyb3JNZXNzYWdlAgkApggBBQFSCQEBUwEJAKwCAgIqcHJvY2Vzc1ZvdGVJTlRFUk5BTDogaW52YWxpZCB1c2VyIGFkZHJlc3MgBQFSBAFpCQECYWUCBQR0aGlzBQFqBAJiSwkAZQIFAWkAAQQCYm4JAQJhZQIFBHRoaXMFAWYEAmJ0CQECYWUCBQR0aGlzCQEBeQEFAWkEAmJ1CQBkAgUCYnQFAmJuBAJiTAkBAmFlAgUEdGhpcwkBAXkBBQJiSwQCYk0JAQJhZQIFBHRoaXMJAQFoAQUCYksEAmJOCQBkAgUCYkwFAmJNBAJiTwMJAGcCBQJiSwAABgkBAVUBAitwcm9jZXNzVm90ZUlOVEVSTkFMOiBpbnZhbGlkIHByZXZpb3VzIGVwb2NoAwkAAAIFAmJPBQJiTwQBQgkBAmFnAQUCYkkEAmJQBQFCBAFECAUCYlACXzEEAUUIBQJiUAJfMgQCYkQJAQJhQQEFAUIEAmJBCgACYWQJAPwHBAUEdGhpcwIYZ2V0VXNlckd3eEFtb3VudEF0SGVpZ2h0CQDMCAIFAVIJAMwIAgUCYnUFA25pbAUDbmlsAwkAAQIFAmFkAgNJbnQFAmFkCQACAQkArAICCQADAQUCYWQCGCBjb3VsZG4ndCBiZSBjYXN0IHRvIEludAQCYlEKAAJhZAkA/AcEBQR0aGlzAhhnZXRVc2VyR3d4QW1vdW50QXRIZWlnaHQJAMwIAgUBUgkAzAgCBQJiTgUDbmlsBQNuaWwDCQABAgUCYWQCA0ludAUCYWQJAAIBCQCsAgIJAAMBBQJhZAIYIGNvdWxkbid0IGJlIGNhc3QgdG8gSW50BAJiegkBC3ZhbHVlT3JFbHNlAgkAnwgBCQEBUAEFAWkAAAQCYlIJAQt2YWx1ZU9yRWxzZQIJAJ8IAQkBAUoCBQFCBQFpAAAEAmJTCQETdmFsdWVPckVycm9yTWVzc2FnZQIJAJ8IAQkBAUgDBQFCBQJiaAUCYksJAQFTAQkArAICCQCsAgIJAKwCAgkArAICAhRwcm9jZXNzVm90ZUlOVEVSTkFMIAUCYkkCASAFAVICEjogbm8gcHJldmlvdXMgdm90ZQQCYncJAQt2YWx1ZU9yRWxzZQIJAJoIAgUEdGhpcwkBAUYCBQJiaAUBaQAABAFNCQECYXACBQFEBQFFBAJiVAkBC3ZhbHVlT3JFbHNlAgkAnwgBCQEBTAIFAU0FAmJLAAAEAmJtCQERQGV4dHJOYXRpdmUoMTA2MikBCQECYWMCBQR0aGlzBQFwBAJiVQkBC3ZhbHVlT3JFbHNlAgkAmggCBQJibQkBAVECBQFNBQFSAAAEAmJWAwkAAAIFAmJVAAAFA25pbAkAzAgCCQEMSW50ZWdlckVudHJ5AgkBAUwCBQFNBQJiSwkAZAIFAmJUBQJiUwUDbmlsBAJhegkBAmFwAgUBRAUBRQQCYlcKAAJhZAkA/AcEBQJhaQIMY2hlY2tCYWxhbmNlCQDMCAIFAmF6BQNuaWwFA25pbAMJAAECBQJhZAIHQm9vbGVhbgUCYWQJAAIBCQCsAgIJAAMBBQJhZAIcIGNvdWxkbid0IGJlIGNhc3QgdG8gQm9vbGVhbgQCYkMDCQBmAgUCYlEAAAkAawMFAmJTBQJiQQUCYlEAAAQCYlgDAwMJAGYCBQJiQwAABQJiRAcFAmJXBwkAzAgCCQEMSW50ZWdlckVudHJ5AgkBAUgDBQFCBQJiaAUBaQUCYkMJAMwIAgkBDEludGVnZXJFbnRyeQIJAQFQAQUBaQkAZAIFAmJ6BQJiQwkAzAgCCQEMSW50ZWdlckVudHJ5AgkBAUoCBQFCBQFpCQBkAgUCYlIFAmJDCQDMCAIJAQxJbnRlZ2VyRW50cnkCCQEBRgIFAmJoBQFpCQBkAgUCYncFAmJDBQNuaWwJAQJhVgIJAQJhRgEFAUIFAVIJAJQKAgkAzggCBQJiWAUCYlYFBHVuaXQJAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4CYmQBE3Byb2Nlc3NQb29sSU5URVJOQUwCAmJJAmJZBAJiSgkBAmJnAQUCYmQDCQAAAgUCYkoFAmJKBAJiWgQCY2EJAQJhZQIFBHRoaXMFAWoDBQJiWQUCY2EJAGUCBQJjYQABBAJiTwMJAGcCBQJiWgAABgkBAVUBAilwcm9jZXNzUG9vbElOVEVSTkFMOiBpbnZhbGlkIHRhcmdldCBlcG9jaAMJAAACBQJiTwUCYk8EAUIJAQJhZwEFAmJJBAJjYgUBQgQBRAgFAmNiAl8xBAFFCAUCY2ICXzIEAmJtCQERQGV4dHJOYXRpdmUoMTA2MikBCQECYWMCBQR0aGlzBQFwBAJhegkBAmFwAgUBRAUBRQQCY2MKAAJhZAkA/AcEBQJibQISdXNlcnNMaXN0VHJhdmVyc2FsCQDMCAIFAmF6BQNuaWwFA25pbAMJAAECBQJhZAIHQm9vbGVhbgUCYWQJAAIBCQCsAgIJAAMBBQJhZAIcIGNvdWxkbid0IGJlIGNhc3QgdG8gQm9vbGVhbgMJAAACBQJjYwUCY2MDBQJjYwkAlAoCBQNuaWwGBAJjZAkBEUBleHRyTmF0aXZlKDEwNjIpAQkBC3ZhbHVlT3JFbHNlAgkAnQgCBQR0aGlzBQFxAh1pbnZhbGlkIGFzc2V0cyBzdG9yZSBjb250cmFjdAQCYkQJAQJhQQEFAUIEAmJXCgACYWQJAPwHBAUCYWkCDGNoZWNrQmFsYW5jZQkAzAgCBQJhegUDbmlsBQNuaWwDCQABAgUCYWQCB0Jvb2xlYW4FAmFkCQACAQkArAICCQADAQUCYWQCHCBjb3VsZG4ndCBiZSBjYXN0IHRvIEJvb2xlYW4EAmNlCgACYWQJAPwHBAUCY2QCEmlzVmVyaWZpZWRSRUFET05MWQkAzAgCBQFEBQNuaWwFA25pbAMJAAECBQJhZAIHQm9vbGVhbgUCYWQJAAIBCQCsAgIJAAMBBQJhZAIcIGNvdWxkbid0IGJlIGNhc3QgdG8gQm9vbGVhbgQCY2YKAAJhZAkA/AcEBQJjZAISaXNWZXJpZmllZFJFQURPTkxZCQDMCAIFAUUFA25pbAUDbmlsAwkAAQIFAmFkAgdCb29sZWFuBQJhZAkAAgEJAKwCAgkAAwEFAmFkAhwgY291bGRuJ3QgYmUgY2FzdCB0byBCb29sZWFuBAJjZwMDAwMJAQEhAQUCYkQFAmJXBwUCY2UHBQJjZgcJAPwHBAUCYWkCFnNldFd4RW1pc3Npb25Qb29sTGFiZWwJAMwIAgUBRAkAzAgCBQFFBQNuaWwFA25pbAUEdW5pdAMJAAACBQJjZwUCY2cEAmJ6CQELdmFsdWVPckVsc2UCCQCaCAIFBHRoaXMJAQFQAQUCYloAAAQCYlIJAQt2YWx1ZU9yRWxzZQIJAJoIAgUEdGhpcwkBAUoCBQFCBQJiWgAABAJjaAMDAwkAAAIFAmJ6AAAGCQEBIQEFAmJEBgkBASEBBQJiVwAACQBrAwUCYlIFAWIFAmJ6BAJjaQkA/AcEBQJhaQIMbW9kaWZ5V2VpZ2h0CQDMCAIFAmF6CQDMCAIFAmNoBQNuaWwFA25pbAMJAAACBQJjaQUCY2kJAJQKAgkAzAgCCQEMSW50ZWdlckVudHJ5AgkBAU4CBQFCBQJiWgUCY2gFA25pbAcJAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4CYmQBDmZpbmFsaXplSGVscGVyAAQCYlkJAQt2YWx1ZU9yRWxzZQIJAKAIAQUBeAcEAWkJAQt2YWx1ZU9yRWxzZQIJAJoIAgUEdGhpcwUBagAABAJjagkAZQIFAWkAAQQCYnQJAQJhZQIFBHRoaXMJAQF5AQUBaQQCYm4JAQJhZQIFBHRoaXMFAWYEAmJ1CQBkAgUCYnQFAmJuBAJidgkAmggCBQR0aGlzBQFyAwMDCQBnAgUGaGVpZ2h0BQJidQkAAAIFAmJ2BQR1bml0BwkBASEBBQJiWQcEAmNrCQBkAgUBaQABBAJjbAkAmggCBQR0aGlzBQFnBAJjbQQBWgUCY2wDCQABAgUBWgIDSW50BAJiRwUBWgkAzAgCCQEMSW50ZWdlckVudHJ5AgUBZgUCYkcJAMwIAgkBC0RlbGV0ZUVudHJ5AQUBZwUDbmlsAwkAAQIFAVoCBFVuaXQFA25pbAkAAgECC01hdGNoIGVycm9yCQCUCgIJAM4IAgkAzAgCCQEMSW50ZWdlckVudHJ5AgkBAXkBBQJjawUGaGVpZ2h0CQDMCAIJAQxJbnRlZ2VyRW50cnkCBQF1BQZoZWlnaHQJAMwIAgkBDEludGVnZXJFbnRyeQIFAWoFAmNrCQDMCAIJAQxJbnRlZ2VyRW50cnkCBQFyBQFkCQDMCAIJAQxJbnRlZ2VyRW50cnkCCQEBaAEFAWkFAmJuBQNuaWwFAmNtBgMDBQJiWQkAAAIFAmJ2BQR1bml0BwkAlAoCCQDMCAIJAQxJbnRlZ2VyRW50cnkCBQFyBQFlBQNuaWwGAwkAAAIFAmJ2BQR1bml0CQCUCgIFA25pbAcDCQAAAgUCYnYFAWQEAmNuCQCiCAEFAXMEAmNvCQCiCAEFAXQEAVoFAmNuAwkAAQIFAVoCBFVuaXQEAmNwCQCiCAEJAQJhSAEFAmFFAwkAAQIFAmNwAgRVbml0CQCUCgIJAMwIAgkBDEludGVnZXJFbnRyeQIFAXIFAWUJAMwIAgkBC0RlbGV0ZUVudHJ5AQUBcwkAzAgCCQELRGVsZXRlRW50cnkBBQF0BQNuaWwGAwkAAQIFAmNwAgZTdHJpbmcEAmNxBQJjcAkAlAoCCQDMCAIJAQtTdHJpbmdFbnRyeQIFAXMFAmNxBQNuaWwGCQACAQILTWF0Y2ggZXJyb3IDCQABAgUBWgIGU3RyaW5nBAJiSQUBWgQBQgkBAmFnAQUCYkkEAmNyBAJjcAUCY28DCQABAgUCY3ACBFVuaXQJAKIIAQkBAmFIAQkBAmFGAQUBQgMJAAECBQJjcAIGU3RyaW5nBAJjcwUCY3AEAmN0CQCiCAEJAQJhTgIJAQJhRgEFAUIFAmNzAwkAAAIFAmN0BQJjdAQCY3UJAPwHBAUEdGhpcwITcHJvY2Vzc1ZvdGVJTlRFUk5BTAkAzAgCBQJiSQkAzAgCBQJjcwUDbmlsBQNuaWwDCQAAAgUCY3UFAmN1BQJjdAkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECC01hdGNoIGVycm9yBAJjcAUCY3IDCQABAgUCY3ACBFVuaXQEAmN2CQCiCAEJAQJhTgIFAmFFBQJiSQQCY3cFAmN2AwkAAQIFAmN3AgRVbml0CQCUCgIJAMwIAgkBDEludGVnZXJFbnRyeQIFAXIFAWUJAMwIAgkBC0RlbGV0ZUVudHJ5AQUBcwkAzAgCCQELRGVsZXRlRW50cnkBBQF0BQNuaWwGAwkAAQIFAmN3AgZTdHJpbmcEAmFaBQJjdwkAlAoCCQDMCAIJAQtTdHJpbmdFbnRyeQIFAXMFAmFaCQDMCAIJAQtEZWxldGVFbnRyeQEFAXQFA25pbAYJAAIBAgtNYXRjaCBlcnJvcgMJAAECBQJjcAIGU3RyaW5nBAJjeAUCY3AJAJQKAgkAzAgCCQELU3RyaW5nRW50cnkCBQF0BQJjeAUDbmlsBgkAAgECC01hdGNoIGVycm9yCQACAQILTWF0Y2ggZXJyb3IDCQAAAgUCYnYFAWUEAmNuCQCiCAEFAXMEAVoFAmNuAwkAAQIFAVoCBFVuaXQEAmNwCQCiCAEJAQJhSAEFAmFFAwkAAQIFAmNwAgRVbml0BAJiWAMFAmJZCQDMCAIJAQtEZWxldGVFbnRyeQEFAXIJAMwIAgkBC0RlbGV0ZUVudHJ5AQUBeAUDbmlsCQDMCAIJAQtEZWxldGVFbnRyeQEFAXIJAMwIAgkBDEJvb2xlYW5FbnRyeQIJAQF6AQUCY2oGCQDMCAIJAQxJbnRlZ2VyRW50cnkCBQF2BQFpCQDMCAIJAQxJbnRlZ2VyRW50cnkCBQF3BQJidAUDbmlsBAJjeQkBAmFDAAMJAAACBQJjeQUCY3kJAJQKAgUCYlgGCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuAwkAAQIFAmNwAgZTdHJpbmcEAmN6BQJjcAkAlAoCCQDMCAIJAQtTdHJpbmdFbnRyeQIFAXMFAmN6BQNuaWwGCQACAQILTWF0Y2ggZXJyb3IDCQABAgUBWgIGU3RyaW5nBAJiSQUBWgQCY3YJAKIIAQkBAmFOAgUCYUUFAmJJAwkAAAIFAmN2BQJjdgQCY2MKAAJhZAkA/AcEBQR0aGlzAhNwcm9jZXNzUG9vbElOVEVSTkFMCQDMCAIFAmJJCQDMCAIFAmJZBQNuaWwFA25pbAMJAAECBQJhZAIHQm9vbGVhbgUCYWQJAAIBCQCsAgIJAAMBBQJhZAIcIGNvdWxkbid0IGJlIGNhc3QgdG8gQm9vbGVhbgMJAAACBQJjYwUCY2MDBQJjYwkAlAoCBQNuaWwGBAJjcAUCY3YDCQABAgUCY3ACBFVuaXQEAmJYAwUCYlkJAMwIAgkBC0RlbGV0ZUVudHJ5AQUBcgkAzAgCCQELRGVsZXRlRW50cnkBBQF4CQDMCAIJAQtEZWxldGVFbnRyeQEFAXMFA25pbAkAzAgCCQELRGVsZXRlRW50cnkBBQFyCQDMCAIJAQxCb29sZWFuRW50cnkCCQEBegEFAmNqBgkAzAgCCQEMSW50ZWdlckVudHJ5AgUBdgUBaQkAzAgCCQEMSW50ZWdlckVudHJ5AgUBdwUCYnQJAMwIAgkBC0RlbGV0ZUVudHJ5AQUBcwUDbmlsBAJjeQkBAmFDAAMJAAACBQJjeQUCY3kJAJQKAgUCYlgGCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuAwkAAQIFAmNwAgZTdHJpbmcEAmN6BQJjcAkAlAoCCQDMCAIJAQtTdHJpbmdFbnRyeQIFAXMFAmN6BQNuaWwGCQACAQILTWF0Y2ggZXJyb3IJAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAgtNYXRjaCBlcnJvcgkBAVUBAhZmaW5hbGl6YXRpb24gaXMgYnJva2VuAmJkAQ9maW5hbGl6ZVdyYXBwZXIBAmNBBAJjQgkBEUBleHRyTmF0aXZlKDEwNjIpAQkBEUBleHRyTmF0aXZlKDEwNTMpAgUEdGhpcwUBbQQCY0MKAAJhZAkA/AcEBQR0aGlzAg5maW5hbGl6ZUhlbHBlcgUDbmlsBQNuaWwDCQABAgUCYWQCB0Jvb2xlYW4FAmFkCQACAQkArAICCQADAQUCYWQCHCBjb3VsZG4ndCBiZSBjYXN0IHRvIEJvb2xlYW4DCQAAAgUCY0MFAmNDAwkBASEBBQJjQwMJAAACBQJjQQAACQEBVQECHkN1cnJlbnQgdm90aW5nIGlzIG5vdCBvdmVyIHlldAQCY0QJAPwHBAUCY0ICCGZpbmFsaXplBQNuaWwFA25pbAMJAAACBQJjRAUCY0QJAJQKAgUDbmlsBQR1bml0CQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuBAJjRQkBC3ZhbHVlT3JFbHNlAgkAmggCBQR0aGlzBQFrBQFjAwkAZgIFAmNFBQJjQQQCY0QJAPwHBAUEdGhpcwIPZmluYWxpemVXcmFwcGVyCQDMCAIJAGQCBQJjQQABBQNuaWwFA25pbAMJAAACBQJjRAUCY0QJAJQKAgUDbmlsBQR1bml0CQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuCQCUCgIFA25pbAUEdW5pdAkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgJiZAEIZmluYWxpemUABAJjRAkA/AcEBQR0aGlzAg9maW5hbGl6ZVdyYXBwZXIJAMwIAgAABQNuaWwFA25pbAMJAAACBQJjRAUCY0QJAJQKAgUDbmlsBQR1bml0CQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuAmJkARRjb250YWluc05vZGVSRUFET05MWQICYUkCYU0JAJQKAgUDbmlsCQECYU8CBQJhSQUCYU0CYmQBCmluc2VydE5vZGUCAmFJAmFNBAJiSgkBAmJmAQUCYmQDCQAAAgUCYkoFAmJKCQCUCgIJAQJhUwIFAmFJBQJhTQUEdW5pdAkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgJiZAEKZGVsZXRlTm9kZQICYUkCYU0EAmJKCQECYmYBBQJiZAMJAAACBQJiSgUCYkoJAJQKAgkBAmFWAgUCYUkFAmFNBQR1bml0CQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuAmJkARhpc0ZpbmFsaXphdGlvbkluUHJvZ3Jlc3MABAJidgkAmggCBQR0aGlzBQFyBAJjRgkBAiE9AgUCYnYFBHVuaXQJAJQKAgUDbmlsBQJjRgJiZAEKZGVsZXRlUG9vbAIBRAFFBAJiSgMDCQAAAggFAmJkBmNhbGxlcgUCYWkGCQECYmYBBQJiZAYJAQFVAQIRUGVybWlzc2lvbiBkZW5pZWQDCQAAAgUCYkoFAmJKBAJhSQIFcG9vbHMEAUIJAJQKAgUBRAUBRQQCYU0JALkJAgkAzAgCBQFECQDMCAIFAUUFA25pbAUBYQQCYlgDCQECYU8CBQJhSQUCYU0JAQJhVgIFAmFJBQJhTQUDbmlsCQDOCAIJAMwIAgkBC0RlbGV0ZUVudHJ5AQkBAUEBBQFCBQNuaWwFAmJYCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuAQJjRwECY0gABAJjSQQBWgkBAmJhAAMJAAECBQFaAgpCeXRlVmVjdG9yBAJiZQUBWgUCYmUDCQABAgUBWgIEVW5pdAgFAmNHD3NlbmRlclB1YmxpY0tleQkAAgECC01hdGNoIGVycm9yCQD0AwMIBQJjRwlib2R5Qnl0ZXMJAJEDAggFAmNHBnByb29mcwAABQJjSeYK41I=", "height": 2932251, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: 6FY627hQpwQbpuxPkTSiSRNDTg45vxDnJ46axyrwscfb Next: GGrxUtyWStFqoWpfsizaH2df2wUuz1wdjQGdkBjksJVx Diff:
OldNewDifferences
3232
3333 let p = makeString(["%s", "stakingContract"], a)
3434
35-let q = makeString(["%s", "finalizationStage"], a)
35+let q = makeString(["%s", "assetsStoreContract"], a)
3636
37-let r = makeString(["%s", "nextPool"], a)
37+let r = makeString(["%s", "finalizationStage"], a)
3838
39-let s = makeString(["%s", "nextUser"], a)
39+let s = makeString(["%s", "nextPool"], a)
4040
41-let t = makeString(["%s", "startHeight"], a)
41+let t = makeString(["%s", "nextUser"], a)
4242
43-let u = makeString(["%s", "currentEpochUi"], a)
43+let u = makeString(["%s", "startHeight"], a)
4444
45-let v = makeString(["%s", "startHeightUi"], a)
45+let v = makeString(["%s", "currentEpochUi"], a)
4646
47-let w = makeString(["%s", "force"], a)
47+let w = makeString(["%s", "startHeightUi"], a)
4848
49-func x (i) = makeString(["%s%d", "startHeight", toString(i)], a)
49+let x = makeString(["%s", "force"], a)
50+
51+func y (i) = makeString(["%s%d", "startHeight", toString(i)], a)
5052
5153
52-func y (i) = makeString(["%s%d", "finalized", toString(i)], a)
54+func z (i) = makeString(["%s%d", "finalized", toString(i)], a)
5355
5456
55-func z (A) = {
56- let B = A
57- let C = B._1
58- let D = B._2
59- makeString(["%s%s%s", "inList", C, D], a)
57+func A (B) = {
58+ let C = B
59+ let D = C._1
60+ let E = C._2
61+ makeString(["%s%s%s", "inList", D, E], a)
6062 }
6163
6264
63-func E (F,i) = makeString(["%s%s%d", "used", toString(F), toString(i)], a)
65+func F (G,i) = makeString(["%s%s%d", "used", toString(G), toString(i)], a)
6466
6567
66-func G (A,F,i) = {
67- let H = A
68- let C = H._1
69- let D = H._2
70- makeString(["%s%s%s%s%d", "vote", C, D, toString(F), toString(i)], a)
68+func H (B,G,i) = {
69+ let I = B
70+ let D = I._1
71+ let E = I._2
72+ makeString(["%s%s%s%s%d", "vote", D, E, toString(G), toString(i)], a)
7173 }
7274
7375
74-func I (A,i) = {
75- let J = A
76- let C = J._1
77- let D = J._2
78- makeString(["%s%s%s%d", "votingResult", C, D, toString(i)], a)
76+func J (B,i) = {
77+ let K = B
78+ let D = K._1
79+ let E = K._2
80+ makeString(["%s%s%s%d", "votingResult", D, E, toString(i)], a)
7981 }
8082
8183
82-func K (L,i) = makeString(["%s%s%d", "votingResultStaked", L, toString(i)], a)
84+func L (M,i) = makeString(["%s%s%d", "votingResultStaked", M, toString(i)], a)
8385
8486
85-func M (A,i) = {
86- let N = A
87- let C = N._1
88- let D = N._2
89- makeString(["%s%s%s%d", "poolShare", C, D, toString(i)], a)
87+func N (B,i) = {
88+ let O = B
89+ let D = O._1
90+ let E = O._2
91+ makeString(["%s%s%s%d", "poolShare", D, E, toString(i)], a)
9092 }
9193
9294
93-func O (i) = makeString(["%s%d", "totalVotes", toString(i)], a)
95+func P (i) = makeString(["%s%d", "totalVotes", toString(i)], a)
9496
9597
96-func P (L,Q) = makeString(["%s%s%s", "staked", Q, L], a)
98+func Q (M,R) = makeString(["%s%s%s", "staked", R, M], a)
9799
98100
99-func R (S) = makeString(["voting_emission.ride:", S], " ")
101+func S (T) = makeString(["voting_emission.ride:", T], " ")
100102
101103
102-func T (S) = throw(R(S))
104+func U (T) = throw(S(T))
103105
104106
105-func U (F,V,W) = {
106- let X = R(makeString(["mandatory ", toString(F), ".", V, " is not defined"], ""))
107+func V (G,W,X) = {
108+ let Y = S(makeString(["mandatory ", toString(G), ".", W, " is not defined"], ""))
107109 valueOrErrorMessage({
108- let Y = W
109- if ($isInstanceOf(Y, "String"))
110+ let Z = X
111+ if ($isInstanceOf(Z, "String"))
110112 then {
111- let Z = Y
112- getString(F, V)
113+ let aa = Z
114+ getString(G, W)
113115 }
114- else if ($isInstanceOf(Y, "Int"))
116+ else if ($isInstanceOf(Z, "Int"))
115117 then {
116- let aa = Y
117- getInteger(F, V)
118+ let ab = Z
119+ getInteger(G, W)
118120 }
119- else T("invalid entry type")
120- }, X)
121+ else U("invalid entry type")
122+ }, Y)
121123 }
122124
123125
124-func ab (F,V) = {
125- let ac = U(F, V, "")
126- if ($isInstanceOf(ac, "String"))
127- then ac
128- else throw(($getType(ac) + " couldn't be cast to String"))
126+func ac (G,W) = {
127+ let ad = V(G, W, "")
128+ if ($isInstanceOf(ad, "String"))
129+ then ad
130+ else throw(($getType(ad) + " couldn't be cast to String"))
129131 }
130132
131133
132-func ad (F,V) = {
133- let ac = U(F, V, 0)
134- if ($isInstanceOf(ac, "Int"))
135- then ac
136- else throw(($getType(ac) + " couldn't be cast to Int"))
134+func ae (G,W) = {
135+ let ad = V(G, W, 0)
136+ if ($isInstanceOf(ad, "Int"))
137+ then ad
138+ else throw(($getType(ad) + " couldn't be cast to Int"))
137139 }
138140
139141
140-func ae (A) = ((A._1 + a) + A._2)
142+func af (B) = ((B._1 + a) + B._2)
141143
142144
143-func af (Z) = {
144- let ag = split(Z, a)
145- if ((size(ag) == 2))
146- then $Tuple2(ag[0], ag[1])
147- else T("invalid pool string")
145+func ag (aa) = {
146+ let ah = split(aa, a)
147+ if ((size(ah) == 2))
148+ then $Tuple2(ah[0], ah[1])
149+ else U("invalid pool string")
148150 }
149151
150152
151-let ah = addressFromStringValue(ab(this, n))
153+let ai = addressFromStringValue(ac(this, n))
152154
153-let ai = 10
155+let aj = 10
154156
155-func aj () = "%s__factoryConfig"
157+func ak () = "%s__factoryConfig"
156158
157159
158-func ak (al) = split(ab(al, aj()), a)
160+func al (am) = split(ac(am, ak()), a)
159161
160162
161-func am (an) = addressFromStringValue(an[ai])
163+func an (ao) = addressFromStringValue(ao[aj])
162164
163165
164-func ao (C,D) = {
165- func ap (aq) = ("%s%s%s__mappings__baseAsset2internalId__" + aq)
166+func ap (D,E) = {
167+ func aq (ar) = ("%s%s%s__mappings__baseAsset2internalId__" + ar)
166168
167- func ar (as,at) = (((("%d%d%s%s__" + toString(as)) + "__") + toString(at)) + "__mappings__poolAssets2PoolContract")
169+ func as (at,au) = (((("%d%d%s%s__" + toString(at)) + "__") + toString(au)) + "__mappings__poolAssets2PoolContract")
168170
169- func au (av) = (("%s%s%s__" + av) + "__mappings__poolContract2LpAsset")
171+ func av (aw) = (("%s%s%s__" + aw) + "__mappings__poolContract2LpAsset")
170172
171- let aw = ad(ah, ap(C))
172- let ax = ad(ah, ap(D))
173- let av = ab(ah, ar(aw, ax))
174- let ay = ab(ah, au(av))
175- ay
173+ let ax = ae(ai, aq(D))
174+ let ay = ae(ai, aq(E))
175+ let aw = ac(ai, as(ax, ay))
176+ let az = ac(ai, av(aw))
177+ az
176178 }
177179
178180
179-func az (A) = {
180- let aA = A
181- let C = aA._1
182- let D = aA._2
183- let ac = invoke(ah, "checkWxEmissionPoolLabel", [C, D], nil)
184- if ($isInstanceOf(ac, "Boolean"))
185- then ac
186- else throw(($getType(ac) + " couldn't be cast to Boolean"))
181+func aA (B) = {
182+ let aB = B
183+ let D = aB._1
184+ let E = aB._2
185+ let ad = invoke(ai, "checkWxEmissionPoolLabel", [D, E], nil)
186+ if ($isInstanceOf(ad, "Boolean"))
187+ then ad
188+ else throw(($getType(ad) + " couldn't be cast to Boolean"))
187189 }
188190
189191
190-func aB () = {
191- let an = ak(ah)
192- let aC = am(an)
193- invoke(aC, "deposit", nil, nil)
192+func aC () = {
193+ let ao = al(ai)
194+ let aD = an(ao)
195+ invoke(aD, "deposit", nil, nil)
194196 }
195197
196198
197-let aD = "pools"
199+let aE = "pools"
198200
199-func aE (A) = {
200- let aF = A
201- let C = aF._1
202- let D = aF._2
203- makeString(["votes", C, D], a)
201+func aF (B) = {
202+ let aG = B
203+ let D = aG._1
204+ let E = aG._2
205+ makeString(["votes", D, E], a)
204206 }
205207
206208
207-func aG (aH) = {
208- let aI = if ((aH == aD))
209+func aH (aI) = {
210+ let aJ = if ((aI == aE))
209211 then "%s%s"
210212 else "%s%s%s%s"
211- makeString([aI, aH, "head"], a)
213+ makeString([aJ, aI, "head"], a)
212214 }
213215
214216
215-func aJ (aH) = {
216- let aI = if ((aH == aD))
217+func aK (aI) = {
218+ let aJ = if ((aI == aE))
217219 then "%s%s"
218220 else "%s%s%s%s"
219- makeString([aI, aH, "size"], a)
221+ makeString([aJ, aI, "size"], a)
220222 }
221223
222224
223-func aK (aH,aL) = {
224- let aI = if ((aH == aD))
225+func aL (aI,aM) = {
226+ let aJ = if ((aI == aE))
225227 then "%s%s%s%s"
226228 else "%s%s%s%s%s"
227- makeString([aI, aH, aL, "prev"], a)
229+ makeString([aJ, aI, aM, "prev"], a)
228230 }
229231
230232
231-func aM (aH,aL) = {
232- let aI = if ((aH == aD))
233+func aN (aI,aM) = {
234+ let aJ = if ((aI == aE))
233235 then "%s%s%s%s"
234236 else "%s%s%s%s%s"
235- makeString([aI, aH, aL, "next"], a)
237+ makeString([aJ, aI, aM, "next"], a)
236238 }
237239
238240
239-func aN (aH,aL) = {
240- let aO = getString(this, aG(aH))
241- let aP = getString(this, aK(aH, aL))
242- let aQ = getString(this, aM(aH, aL))
243- if (if ((aL == valueOrElse(aO, "")))
241+func aO (aI,aM) = {
242+ let aP = getString(this, aH(aI))
243+ let aQ = getString(this, aL(aI, aM))
244+ let aR = getString(this, aN(aI, aM))
245+ if (if ((aM == valueOrElse(aP, "")))
244246 then true
245- else (aP != unit))
247+ else (aQ != unit))
246248 then true
247- else (aQ != unit)
249+ else (aR != unit)
248250 }
249251
250252
251-func aR (aH,aL) = {
252- let aO = getString(this, aG(aH))
253- let aS = valueOrElse(getInteger(this, aJ(aH)), 0)
254- let aT = if (!(aN(aH, aL)))
253+func aS (aI,aM) = {
254+ let aP = getString(this, aH(aI))
255+ let aT = valueOrElse(getInteger(this, aK(aI)), 0)
256+ let aU = if (!(aO(aI, aM)))
255257 then true
256- else T("Node exists")
257- if ((aT == aT))
258- then (([IntegerEntry(aJ(aH), (aS + 1))] ++ (if ((aO != unit))
259- then [StringEntry(aM(aH, aL), value(aO)), StringEntry(aK(aH, value(aO)), aL)]
260- else nil)) ++ [StringEntry(aG(aH), aL)])
258+ else U("Node exists")
259+ if ((aU == aU))
260+ then (([IntegerEntry(aK(aI), (aT + 1))] ++ (if ((aP != unit))
261+ then [StringEntry(aN(aI, aM), value(aP)), StringEntry(aL(aI, value(aP)), aM)]
262+ else nil)) ++ [StringEntry(aH(aI), aM)])
261263 else throw("Strict value is not equal to itself.")
262264 }
263265
264266
265-func aU (aH,aL) = {
266- let aO = getString(this, aG(aH))
267- let aS = valueOrElse(getInteger(this, aJ(aH)), 0)
268- let aP = getString(this, aK(aH, aL))
269- let aQ = getString(this, aM(aH, aL))
270- ([IntegerEntry(aJ(aH), (aS - 1))] ++ (if (if ((aP != unit))
271- then (aQ != unit)
267+func aV (aI,aM) = {
268+ let aP = getString(this, aH(aI))
269+ let aT = valueOrElse(getInteger(this, aK(aI)), 0)
270+ let aQ = getString(this, aL(aI, aM))
271+ let aR = getString(this, aN(aI, aM))
272+ ([IntegerEntry(aK(aI), (aT - 1))] ++ (if (if ((aQ != unit))
273+ then (aR != unit)
272274 else false)
273- then [StringEntry(aM(aH, value(aP)), value(aQ)), StringEntry(aK(aH, value(aQ)), value(aP)), DeleteEntry(aK(aH, aL)), DeleteEntry(aM(aH, aL))]
274- else if ((aQ != unit))
275- then [StringEntry(aG(aH), value(aQ)), DeleteEntry(aM(aH, aL)), DeleteEntry(aK(aH, value(aQ)))]
276- else if ((aP != unit))
277- then [DeleteEntry(aK(aH, aL)), DeleteEntry(aM(aH, value(aP)))]
278- else if ((aL == valueOrElse(aO, "")))
279- then [DeleteEntry(aG(aH))]
280- else T(((("invalid node: " + aH) + ".") + aL))))
275+ then [StringEntry(aN(aI, value(aQ)), value(aR)), StringEntry(aL(aI, value(aR)), value(aQ)), DeleteEntry(aL(aI, aM)), DeleteEntry(aN(aI, aM))]
276+ else if ((aR != unit))
277+ then [StringEntry(aH(aI), value(aR)), DeleteEntry(aN(aI, aM)), DeleteEntry(aL(aI, value(aR)))]
278+ else if ((aQ != unit))
279+ then [DeleteEntry(aL(aI, aM)), DeleteEntry(aN(aI, value(aQ)))]
280+ else if ((aM == valueOrElse(aP, "")))
281+ then [DeleteEntry(aH(aI))]
282+ else U(((("invalid node: " + aI) + ".") + aM))))
281283 }
282284
283285
284-func aV () = "%s__managerVaultAddress"
286+func aW () = "%s__managerVaultAddress"
285287
286288
287-func aW () = "%s__managerPublicKey"
289+func aX () = "%s__managerPublicKey"
288290
289291
290-func aX () = {
291- let Y = getString(aV())
292- if ($isInstanceOf(Y, "String"))
292+func aY () = {
293+ let Z = getString(aW())
294+ if ($isInstanceOf(Z, "String"))
293295 then {
294- let aY = Y
295- addressFromStringValue(aY)
296+ let aZ = Z
297+ addressFromStringValue(aZ)
296298 }
297299 else this
298300 }
299301
300302
301-func aZ () = {
302- let ba = aX()
303- let Y = getString(ba, aW())
304- if ($isInstanceOf(Y, "String"))
303+func ba () = {
304+ let bb = aY()
305+ let Z = getString(bb, aX())
306+ if ($isInstanceOf(Z, "String"))
305307 then {
306- let aY = Y
307- fromBase58String(aY)
308+ let aZ = Z
309+ fromBase58String(aZ)
308310 }
309- else if ($isInstanceOf(Y, "Unit"))
311+ else if ($isInstanceOf(Z, "Unit"))
310312 then unit
311313 else throw("Match error")
312314 }
313315
314316
315-func bb (bc) = {
316- let Y = aZ()
317- if ($isInstanceOf(Y, "ByteVector"))
317+func bc (bd) = {
318+ let Z = ba()
319+ if ($isInstanceOf(Z, "ByteVector"))
318320 then {
319- let bd = Y
320- (bc.callerPublicKey == bd)
321+ let be = Z
322+ (bd.callerPublicKey == be)
321323 }
322- else if ($isInstanceOf(Y, "Unit"))
323- then (bc.caller == this)
324+ else if ($isInstanceOf(Z, "Unit"))
325+ then (bd.caller == this)
324326 else throw("Match error")
325327 }
326328
327329
328-func be (bc) = if (bb(bc))
330+func bf (bd) = if (bc(bd))
329331 then true
330332 else throw("permission denied")
331333
332334
333-func bf (bc) = if ((bc.caller == this))
335+func bg (bd) = if ((bd.caller == this))
334336 then true
335337 else throw("permission denied")
336338
337339
338-@Callable(bc)
339-func getUserGwxAmountAtHeight (bg,bh) = {
340- let bi = valueOrErrorMessage(addressFromString(ab(this, o)), R("invalid boosting contract address"))
340+@Callable(bd)
341+func getUserGwxAmountAtHeight (bh,bi) = {
342+ let bj = valueOrErrorMessage(addressFromString(ac(this, o)), S("invalid boosting contract address"))
341343 $Tuple2(nil, {
342- let ac = invoke(bi, "getUserGwxAmountAtHeightREADONLY", [bg, bh], nil)
343- if ($isInstanceOf(ac, "Int"))
344- then ac
345- else throw(($getType(ac) + " couldn't be cast to Int"))
344+ let ad = invoke(bj, "getUserGwxAmountAtHeightREADONLY", [bh, bi], nil)
345+ if ($isInstanceOf(ad, "Int"))
346+ then ad
347+ else throw(($getType(ad) + " couldn't be cast to Int"))
346348 })
347349 }
348350
349351
350352
351-@Callable(bc)
352-func constructor (ah,bj,bk,bl,bm) = {
353- let bn = [be(bc), if ((addressFromString(ah) != unit))
353+@Callable(bd)
354+func constructor (ai,bk,bl,bm,bn) = {
355+ let bo = [bf(bd), if ((addressFromString(ai) != unit))
354356 then true
355- else "invalid factory contract address", if ((addressFromString(bj) != unit))
357+ else "invalid factory contract address", if ((addressFromString(bk) != unit))
356358 then true
357- else "invalid voting emission candidate contract address", if ((addressFromString(bk) != unit))
359+ else "invalid voting emission candidate contract address", if ((addressFromString(bl) != unit))
358360 then true
359- else "invalid boosting contract address", if ((addressFromString(bl) != unit))
361+ else "invalid boosting contract address", if ((addressFromString(bm) != unit))
360362 then true
361- else "invalid staking contract address", if ((bm > 0))
363+ else "invalid staking contract address", if ((bn > 0))
362364 then true
363- else T("invalid epoch length")]
364- if ((bn == bn))
365- then $Tuple2([StringEntry(n, ah), StringEntry(l, bj), StringEntry(o, bk), StringEntry(p, bl), IntegerEntry(f, bm)], unit)
365+ else U("invalid epoch length")]
366+ if ((bo == bo))
367+ then $Tuple2([StringEntry(n, ai), StringEntry(l, bk), StringEntry(o, bl), StringEntry(p, bm), IntegerEntry(f, bn)], unit)
366368 else throw("Strict value is not equal to itself.")
367369 }
368370
369371
370372
371-@Callable(bc)
372-func create (C,D) = {
373- let bn = [if ((toBase58String(bc.caller.bytes) == valueOrElse(getString(this, l), "")))
373+@Callable(bd)
374+func create (D,E) = {
375+ let bo = [if ((toBase58String(bd.caller.bytes) == valueOrElse(getString(this, l), "")))
374376 then true
375- else be(bc)]
376- if ((bn == bn))
377+ else bf(bd)]
378+ if ((bo == bo))
377379 then {
378- let A = $Tuple2(C, D)
379- let bo = ([BooleanEntry(z(A), true)] ++ aR(aD, ae(A)))
380- let bp = (getInteger(this, j) == unit)
381- let bq = if (bp)
380+ let B = $Tuple2(D, E)
381+ let bp = ([BooleanEntry(A(B), true)] ++ aS(aE, af(B)))
382+ let bq = (getInteger(this, j) == unit)
383+ let br = if (bq)
382384 then {
383385 let i = 0
384-[IntegerEntry(j, i), IntegerEntry(x(i), height), IntegerEntry(t, height), IntegerEntry(u, i), IntegerEntry(v, height)]
386+[IntegerEntry(j, i), IntegerEntry(y(i), height), IntegerEntry(u, height), IntegerEntry(v, i), IntegerEntry(w, height)]
385387 }
386388 else nil
387- $Tuple2((bo ++ bq), unit)
389+ $Tuple2((bp ++ br), unit)
388390 }
389391 else throw("Strict value is not equal to itself.")
390392 }
391393
392394
393395
394-@Callable(bc)
395-func vote (C,D,br) = {
396- let A = $Tuple2(C, D)
396+@Callable(bd)
397+func vote (D,E,bs) = {
398+ let B = $Tuple2(D, E)
397399 let i = valueOrElse(getInteger(this, j), 0)
398- let bs = ad(this, x(i))
399- let bm = ad(this, f)
400- let bt = (bs + bm)
401- let bu = getInteger(this, q)
402- let bv = valueOrElse(getInteger(this, E(bc.caller, i)), 0)
403- let bw = valueOrElse(getInteger(this, G(A, bc.caller, i)), 0)
404- let bx = valueOrElse(getInteger(this, I(A, i)), 0)
405- let by = valueOrElse(getInteger(this, O(i)), 0)
406- let bz = {
407- let ac = invoke(this, "getUserGwxAmountAtHeight", [toBase58String(bc.caller.bytes), bt], nil)
408- if ($isInstanceOf(ac, "Int"))
409- then ac
410- else throw(($getType(ac) + " couldn't be cast to Int"))
400+ let bt = ae(this, y(i))
401+ let bn = ae(this, f)
402+ let bu = (bt + bn)
403+ let bv = getInteger(this, r)
404+ let bw = valueOrElse(getInteger(this, F(bd.caller, i)), 0)
405+ let bx = valueOrElse(getInteger(this, H(B, bd.caller, i)), 0)
406+ let by = valueOrElse(getInteger(this, J(B, i)), 0)
407+ let bz = valueOrElse(getInteger(this, P(i)), 0)
408+ let bA = {
409+ let ad = invoke(this, "getUserGwxAmountAtHeight", [toBase58String(bd.caller.bytes), bu], nil)
410+ if ($isInstanceOf(ad, "Int"))
411+ then ad
412+ else throw(($getType(ad) + " couldn't be cast to Int"))
411413 }
412- let bA = (bz - bv)
413- let bB = (bw + br)
414- let bC = az(A)
415- let bn = [if ((getBoolean(z(A)) != unit))
414+ let bB = (bA - bw)
415+ let bC = (bx + bs)
416+ let bD = aA(B)
417+ let bo = [if ((getBoolean(A(B)) != unit))
416418 then true
417- else T("invalid assets"), if ((bt > height))
419+ else U("invalid assets"), if ((bu > height))
418420 then true
419- else T("invalid height"), if ((bu == unit))
421+ else U("invalid height"), if ((bv == unit))
420422 then true
421- else T("finalization in progress"), if ((bz > 0))
423+ else U("finalization in progress"), if ((bA > 0))
422424 then true
423- else T("you do not have gWX"), if (if ((br > 0))
424- then (bA >= br)
425+ else U("you do not have gWX"), if (if ((bs > 0))
426+ then (bB >= bs)
425427 else false)
426428 then true
427- else T("invalid amount"), if (bC)
429+ else U("invalid amount"), if (bD)
428430 then true
429- else T("pool hasn't WX_EMISSION label")]
430- if ((bn == bn))
431+ else U("pool hasn't WX_EMISSION label")]
432+ if ((bo == bo))
431433 then {
432- let bD = aE(A)
433- let Q = toString(bc.caller)
434- let bE = if (aN(bD, Q))
434+ let bE = aF(B)
435+ let R = toString(bd.caller)
436+ let bF = if (aO(bE, R))
435437 then nil
436- else aR(bD, Q)
437- $Tuple2(([IntegerEntry(E(bc.caller, i), (bv + br)), IntegerEntry(G(A, bc.caller, i), bB), IntegerEntry(I(A, i), (bx + br)), IntegerEntry(O(i), (by + br))] ++ bE), unit)
438+ else aS(bE, R)
439+ $Tuple2(([IntegerEntry(F(bd.caller, i), (bw + bs)), IntegerEntry(H(B, bd.caller, i), bC), IntegerEntry(J(B, i), (by + bs)), IntegerEntry(P(i), (bz + bs))] ++ bF), unit)
438440 }
439441 else throw("Strict value is not equal to itself.")
440442 }
441443
442444
443445
444-@Callable(bc)
445-func cancelVote (C,D) = {
446- let A = $Tuple2(C, D)
446+@Callable(bd)
447+func cancelVote (D,E) = {
448+ let B = $Tuple2(D, E)
447449 let i = valueOrElse(getInteger(this, j), 0)
448- let bs = ad(this, x(i))
449- let bm = ad(this, f)
450- let bt = (bs + bm)
451- let bu = getInteger(this, q)
452- let bv = valueOrElse(getInteger(this, E(bc.caller, i)), 0)
453- let bw = valueOrElse(getInteger(this, G(A, bc.caller, i)), 0)
454- let bx = valueOrElse(getInteger(this, I(A, i)), 0)
455- let by = valueOrElse(getInteger(this, O(i)), 0)
456- let bn = [if ((getBoolean(z(A)) != unit))
450+ let bt = ae(this, y(i))
451+ let bn = ae(this, f)
452+ let bu = (bt + bn)
453+ let bv = getInteger(this, r)
454+ let bw = valueOrElse(getInteger(this, F(bd.caller, i)), 0)
455+ let bx = valueOrElse(getInteger(this, H(B, bd.caller, i)), 0)
456+ let by = valueOrElse(getInteger(this, J(B, i)), 0)
457+ let bz = valueOrElse(getInteger(this, P(i)), 0)
458+ let bo = [if ((getBoolean(A(B)) != unit))
457459 then true
458- else T("invalid assets"), if ((bt > height))
460+ else U("invalid assets"), if ((bu > height))
459461 then true
460- else T("invalid height"), if ((bu == unit))
462+ else U("invalid height"), if ((bv == unit))
461463 then true
462- else T("finalization in progress"), if ((bw > 0))
464+ else U("finalization in progress"), if ((bx > 0))
463465 then true
464- else T("no vote")]
465- if ((bn == bn))
466+ else U("no vote")]
467+ if ((bo == bo))
466468 then {
467- let bD = aE(A)
468- let Q = toString(bc.caller)
469- $Tuple2(([IntegerEntry(E(bc.caller, i), max([(bv - bw), 0])), DeleteEntry(G(A, bc.caller, i)), IntegerEntry(I(A, i), (bx - bw)), IntegerEntry(O(i), (by - bw))] ++ aU(bD, Q)), unit)
469+ let bE = aF(B)
470+ let R = toString(bd.caller)
471+ $Tuple2(([IntegerEntry(F(bd.caller, i), max([(bw - bx), 0])), DeleteEntry(H(B, bd.caller, i)), IntegerEntry(J(B, i), (by - bx)), IntegerEntry(P(i), (bz - bx))] ++ aV(bE, R)), unit)
470472 }
471473 else throw("Strict value is not equal to itself.")
472474 }
473475
474476
475477
476-@Callable(bc)
477-func setEpochLength (bF) = {
478- let bn = [be(bc), if ((bF > 0))
478+@Callable(bd)
479+func setEpochLength (bG) = {
480+ let bo = [bf(bd), if ((bG > 0))
479481 then true
480- else T("invalid epoch length")]
481- if ((bn == bn))
482- then $Tuple2([IntegerEntry(g, bF)], unit)
482+ else U("invalid epoch length")]
483+ if ((bo == bo))
484+ then $Tuple2([IntegerEntry(g, bG)], unit)
483485 else throw("Strict value is not equal to itself.")
484486 }
485487
486488
487489
488-@Callable(bc)
489-func setMaxDepth (bG) = {
490- let bn = [be(bc), if ((bG > 0))
490+@Callable(bd)
491+func setMaxDepth (bH) = {
492+ let bo = [bf(bd), if ((bH > 0))
491493 then true
492- else T("invalid max depth")]
493- if ((bn == bn))
494- then $Tuple2([IntegerEntry(k, bG)], unit)
494+ else U("invalid max depth")]
495+ if ((bo == bo))
496+ then $Tuple2([IntegerEntry(k, bH)], unit)
495497 else throw("Strict value is not equal to itself.")
496498 }
497499
498500
499501
500-@Callable(bc)
501-func processVoteINTERNAL (bH,Q) = {
502- let bI = bf(bc)
503- if ((bI == bI))
502+@Callable(bd)
503+func processVoteINTERNAL (bI,R) = {
504+ let bJ = bg(bd)
505+ if ((bJ == bJ))
504506 then {
505- let bg = valueOrErrorMessage(addressFromString(Q), R(("processVoteINTERNAL: invalid user address " + Q)))
506- let i = ad(this, j)
507- let bJ = (i - 1)
508- let bm = ad(this, f)
509- let bs = ad(this, x(i))
510- let bt = (bs + bm)
511- let bK = ad(this, x(bJ))
512- let bL = ad(this, h(bJ))
513- let bM = (bK + bL)
514- let bN = if ((bJ >= 0))
507+ let bh = valueOrErrorMessage(addressFromString(R), S(("processVoteINTERNAL: invalid user address " + R)))
508+ let i = ae(this, j)
509+ let bK = (i - 1)
510+ let bn = ae(this, f)
511+ let bt = ae(this, y(i))
512+ let bu = (bt + bn)
513+ let bL = ae(this, y(bK))
514+ let bM = ae(this, h(bK))
515+ let bN = (bL + bM)
516+ let bO = if ((bK >= 0))
515517 then true
516- else T("processVoteINTERNAL: invalid previous epoch")
517- if ((bN == bN))
518+ else U("processVoteINTERNAL: invalid previous epoch")
519+ if ((bO == bO))
518520 then {
519- let A = af(bH)
520- let bO = A
521- let C = bO._1
522- let D = bO._2
523- let bC = az(A)
524- let bz = {
525- let ac = invoke(this, "getUserGwxAmountAtHeight", [Q, bt], nil)
526- if ($isInstanceOf(ac, "Int"))
527- then ac
528- else throw(($getType(ac) + " couldn't be cast to Int"))
521+ let B = ag(bI)
522+ let bP = B
523+ let D = bP._1
524+ let E = bP._2
525+ let bD = aA(B)
526+ let bA = {
527+ let ad = invoke(this, "getUserGwxAmountAtHeight", [R, bu], nil)
528+ if ($isInstanceOf(ad, "Int"))
529+ then ad
530+ else throw(($getType(ad) + " couldn't be cast to Int"))
529531 }
530- let bP = {
531- let ac = invoke(this, "getUserGwxAmountAtHeight", [Q, bM], nil)
532- if ($isInstanceOf(ac, "Int"))
533- then ac
534- else throw(($getType(ac) + " couldn't be cast to Int"))
532+ let bQ = {
533+ let ad = invoke(this, "getUserGwxAmountAtHeight", [R, bN], nil)
534+ if ($isInstanceOf(ad, "Int"))
535+ then ad
536+ else throw(($getType(ad) + " couldn't be cast to Int"))
535537 }
536- let by = valueOrElse(getInteger(O(i)), 0)
537- let bQ = valueOrElse(getInteger(I(A, i)), 0)
538- let bR = valueOrErrorMessage(getInteger(G(A, bg, bJ)), R((((("processVoteINTERNAL " + bH) + " ") + Q) + ": no previous vote")))
539- let bv = valueOrElse(getInteger(this, E(bg, i)), 0)
540- let L = ao(C, D)
541- let bS = valueOrElse(getInteger(K(L, bJ)), 0)
542- let bl = addressFromStringValue(ab(this, p))
543- let bT = valueOrElse(getInteger(bl, P(L, Q)), 0)
544- let bU = if ((bT == 0))
538+ let bz = valueOrElse(getInteger(P(i)), 0)
539+ let bR = valueOrElse(getInteger(J(B, i)), 0)
540+ let bS = valueOrErrorMessage(getInteger(H(B, bh, bK)), S((((("processVoteINTERNAL " + bI) + " ") + R) + ": no previous vote")))
541+ let bw = valueOrElse(getInteger(this, F(bh, i)), 0)
542+ let M = ap(D, E)
543+ let bT = valueOrElse(getInteger(L(M, bK)), 0)
544+ let bm = addressFromStringValue(ac(this, p))
545+ let bU = valueOrElse(getInteger(bm, Q(M, R)), 0)
546+ let bV = if ((bU == 0))
545547 then nil
546- else [IntegerEntry(K(L, bJ), (bS + bR))]
547- let ay = ao(C, D)
548- let bV = {
549- let ac = invoke(ah, "checkBalance", [ay], nil)
550- if ($isInstanceOf(ac, "Boolean"))
551- then ac
552- else throw(($getType(ac) + " couldn't be cast to Boolean"))
548+ else [IntegerEntry(L(M, bK), (bT + bS))]
549+ let az = ap(D, E)
550+ let bW = {
551+ let ad = invoke(ai, "checkBalance", [az], nil)
552+ if ($isInstanceOf(ad, "Boolean"))
553+ then ad
554+ else throw(($getType(ad) + " couldn't be cast to Boolean"))
553555 }
554- let bB = if ((bP > 0))
555- then fraction(bR, bz, bP)
556+ let bC = if ((bQ > 0))
557+ then fraction(bS, bA, bQ)
556558 else 0
557- let bW = if (if (if ((bB > 0))
558- then bC
559+ let bX = if (if (if ((bC > 0))
560+ then bD
559561 else false)
560- then bV
562+ then bW
561563 else false)
562- then [IntegerEntry(G(A, bg, i), bB), IntegerEntry(O(i), (by + bB)), IntegerEntry(I(A, i), (bQ + bB)), IntegerEntry(E(bg, i), (bv + bB))]
563- else aU(aE(A), Q)
564- $Tuple2((bW ++ bU), unit)
564+ then [IntegerEntry(H(B, bh, i), bC), IntegerEntry(P(i), (bz + bC)), IntegerEntry(J(B, i), (bR + bC)), IntegerEntry(F(bh, i), (bw + bC))]
565+ else aV(aF(B), R)
566+ $Tuple2((bX ++ bV), unit)
565567 }
566568 else throw("Strict value is not equal to itself.")
567569 }
570572
571573
572574
573-@Callable(bc)
574-func processPoolINTERNAL (bH,bX) = {
575- let bI = bf(bc)
576- if ((bI == bI))
575+@Callable(bd)
576+func processPoolINTERNAL (bI,bY) = {
577+ let bJ = bg(bd)
578+ if ((bJ == bJ))
577579 then {
578- let bY = {
579- let bZ = ad(this, j)
580- if (bX)
581- then bZ
582- else (bZ - 1)
580+ let bZ = {
581+ let ca = ae(this, j)
582+ if (bY)
583+ then ca
584+ else (ca - 1)
583585 }
584- let bN = if ((bY >= 0))
586+ let bO = if ((bZ >= 0))
585587 then true
586- else T("processPoolINTERNAL: invalid target epoch")
587- if ((bN == bN))
588+ else U("processPoolINTERNAL: invalid target epoch")
589+ if ((bO == bO))
588590 then {
589- let A = af(bH)
590- let ca = A
591- let C = ca._1
592- let D = ca._2
593- let bl = addressFromStringValue(ab(this, p))
594- let ay = ao(C, D)
595- let cb = {
596- let ac = invoke(bl, "usersListTraversal", [ay], nil)
597- if ($isInstanceOf(ac, "Boolean"))
598- then ac
599- else throw(($getType(ac) + " couldn't be cast to Boolean"))
591+ let B = ag(bI)
592+ let cb = B
593+ let D = cb._1
594+ let E = cb._2
595+ let bm = addressFromStringValue(ac(this, p))
596+ let az = ap(D, E)
597+ let cc = {
598+ let ad = invoke(bm, "usersListTraversal", [az], nil)
599+ if ($isInstanceOf(ad, "Boolean"))
600+ then ad
601+ else throw(($getType(ad) + " couldn't be cast to Boolean"))
600602 }
601- if ((cb == cb))
602- then if (cb)
603+ if ((cc == cc))
604+ then if (cc)
603605 then $Tuple2(nil, true)
604606 else {
605- let bC = az(A)
606- let bV = {
607- let ac = invoke(ah, "checkBalance", [ay], nil)
608- if ($isInstanceOf(ac, "Boolean"))
609- then ac
610- else throw(($getType(ac) + " couldn't be cast to Boolean"))
607+ let cd = addressFromStringValue(valueOrElse(getString(this, q), "invalid assets store contract"))
608+ let bD = aA(B)
609+ let bW = {
610+ let ad = invoke(ai, "checkBalance", [az], nil)
611+ if ($isInstanceOf(ad, "Boolean"))
612+ then ad
613+ else throw(($getType(ad) + " couldn't be cast to Boolean"))
611614 }
612- let by = valueOrElse(getInteger(this, O(bY)), 0)
613- let bQ = valueOrElse(getInteger(this, I(A, bY)), 0)
614- let cc = if (if (if ((by == 0))
615- then true
616- else !(bC))
617- then true
618- else !(bV))
619- then 0
620- else fraction(bQ, b, by)
621- let cd = invoke(ah, "modifyWeight", [ay, cc], nil)
622- if ((cd == cd))
615+ let ce = {
616+ let ad = invoke(cd, "isVerifiedREADONLY", [D], nil)
617+ if ($isInstanceOf(ad, "Boolean"))
618+ then ad
619+ else throw(($getType(ad) + " couldn't be cast to Boolean"))
620+ }
621+ let cf = {
622+ let ad = invoke(cd, "isVerifiedREADONLY", [E], nil)
623+ if ($isInstanceOf(ad, "Boolean"))
624+ then ad
625+ else throw(($getType(ad) + " couldn't be cast to Boolean"))
626+ }
627+ let cg = if (if (if (if (!(bD))
628+ then bW
629+ else false)
630+ then ce
631+ else false)
632+ then cf
633+ else false)
634+ then invoke(ai, "setWxEmissionPoolLabel", [D, E], nil)
635+ else unit
636+ if ((cg == cg))
623637 then {
624- let ce = if (if (bC)
638+ let bz = valueOrElse(getInteger(this, P(bZ)), 0)
639+ let bR = valueOrElse(getInteger(this, J(B, bZ)), 0)
640+ let ch = if (if (if ((bz == 0))
625641 then true
626- else bX)
627- then nil
628- else ([DeleteEntry(z(A))] ++ aU(aD, bH))
629- $Tuple2(([IntegerEntry(M(A, bY), cc)] ++ ce), false)
642+ else !(bD))
643+ then true
644+ else !(bW))
645+ then 0
646+ else fraction(bR, b, bz)
647+ let ci = invoke(ai, "modifyWeight", [az, ch], nil)
648+ if ((ci == ci))
649+ then $Tuple2([IntegerEntry(N(B, bZ), ch)], false)
650+ else throw("Strict value is not equal to itself.")
630651 }
631652 else throw("Strict value is not equal to itself.")
632653 }
639660
640661
641662
642-@Callable(bc)
663+@Callable(bd)
643664 func finalizeHelper () = {
644- let bX = valueOrElse(getBoolean(w), false)
665+ let bY = valueOrElse(getBoolean(x), false)
645666 let i = valueOrElse(getInteger(this, j), 0)
646- let cf = (i - 1)
647- let bs = ad(this, x(i))
648- let bm = ad(this, f)
649- let bt = (bs + bm)
650- let bu = getInteger(this, q)
651- if (if (if ((height >= bt))
652- then (bu == unit)
667+ let cj = (i - 1)
668+ let bt = ae(this, y(i))
669+ let bn = ae(this, f)
670+ let bu = (bt + bn)
671+ let bv = getInteger(this, r)
672+ if (if (if ((height >= bu))
673+ then (bv == unit)
653674 else false)
654- then !(bX)
675+ then !(bY)
655676 else false)
656677 then {
657- let cg = (i + 1)
658- let ch = getInteger(this, g)
659- let ci = {
660- let Y = ch
661- if ($isInstanceOf(Y, "Int"))
678+ let ck = (i + 1)
679+ let cl = getInteger(this, g)
680+ let cm = {
681+ let Z = cl
682+ if ($isInstanceOf(Z, "Int"))
662683 then {
663- let bF = Y
664-[IntegerEntry(f, bF), DeleteEntry(g)]
684+ let bG = Z
685+[IntegerEntry(f, bG), DeleteEntry(g)]
665686 }
666- else if ($isInstanceOf(Y, "Unit"))
687+ else if ($isInstanceOf(Z, "Unit"))
667688 then nil
668689 else throw("Match error")
669690 }
670- $Tuple2(([IntegerEntry(x(cg), height), IntegerEntry(t, height), IntegerEntry(j, cg), IntegerEntry(q, d), IntegerEntry(h(i), bm)] ++ ci), true)
691+ $Tuple2(([IntegerEntry(y(ck), height), IntegerEntry(u, height), IntegerEntry(j, ck), IntegerEntry(r, d), IntegerEntry(h(i), bn)] ++ cm), true)
671692 }
672- else if (if (bX)
673- then (bu == unit)
693+ else if (if (bY)
694+ then (bv == unit)
674695 else false)
675- then $Tuple2([IntegerEntry(q, e)], true)
676- else if ((bu == unit))
696+ then $Tuple2([IntegerEntry(r, e)], true)
697+ else if ((bv == unit))
677698 then $Tuple2(nil, false)
678- else if ((bu == d))
699+ else if ((bv == d))
679700 then {
680- let cj = getString(r)
681- let ck = getString(s)
682- let Y = cj
683- if ($isInstanceOf(Y, "Unit"))
701+ let cn = getString(s)
702+ let co = getString(t)
703+ let Z = cn
704+ if ($isInstanceOf(Z, "Unit"))
684705 then {
685- let cl = getString(aG(aD))
686- if ($isInstanceOf(cl, "Unit"))
687- then $Tuple2([IntegerEntry(q, e), DeleteEntry(r), DeleteEntry(s)], true)
688- else if ($isInstanceOf(cl, "String"))
706+ let cp = getString(aH(aE))
707+ if ($isInstanceOf(cp, "Unit"))
708+ then $Tuple2([IntegerEntry(r, e), DeleteEntry(s), DeleteEntry(t)], true)
709+ else if ($isInstanceOf(cp, "String"))
689710 then {
690- let cm = cl
691- $Tuple2([StringEntry(r, cm)], true)
711+ let cq = cp
712+ $Tuple2([StringEntry(s, cq)], true)
692713 }
693714 else throw("Match error")
694715 }
695- else if ($isInstanceOf(Y, "String"))
716+ else if ($isInstanceOf(Z, "String"))
696717 then {
697- let bH = Y
698- let A = af(bH)
699- let cn = {
700- let cl = ck
701- if ($isInstanceOf(cl, "Unit"))
702- then getString(aG(aE(A)))
703- else if ($isInstanceOf(cl, "String"))
718+ let bI = Z
719+ let B = ag(bI)
720+ let cr = {
721+ let cp = co
722+ if ($isInstanceOf(cp, "Unit"))
723+ then getString(aH(aF(B)))
724+ else if ($isInstanceOf(cp, "String"))
704725 then {
705- let co = cl
706- let cp = getString(aM(aE(A), co))
707- if ((cp == cp))
726+ let cs = cp
727+ let ct = getString(aN(aF(B), cs))
728+ if ((ct == ct))
708729 then {
709- let cq = invoke(this, "processVoteINTERNAL", [bH, co], nil)
710- if ((cq == cq))
711- then cp
730+ let cu = invoke(this, "processVoteINTERNAL", [bI, cs], nil)
731+ if ((cu == cu))
732+ then ct
712733 else throw("Strict value is not equal to itself.")
713734 }
714735 else throw("Strict value is not equal to itself.")
715736 }
716737 else throw("Match error")
717738 }
718- let cl = cn
719- if ($isInstanceOf(cl, "Unit"))
739+ let cp = cr
740+ if ($isInstanceOf(cp, "Unit"))
720741 then {
721- let cr = getString(aM(aD, bH))
722- let cs = cr
723- if ($isInstanceOf(cs, "Unit"))
724- then $Tuple2([IntegerEntry(q, e), DeleteEntry(r), DeleteEntry(s)], true)
725- else if ($isInstanceOf(cs, "String"))
742+ let cv = getString(aN(aE, bI))
743+ let cw = cv
744+ if ($isInstanceOf(cw, "Unit"))
745+ then $Tuple2([IntegerEntry(r, e), DeleteEntry(s), DeleteEntry(t)], true)
746+ else if ($isInstanceOf(cw, "String"))
726747 then {
727- let aY = cs
728- $Tuple2([StringEntry(r, aY), DeleteEntry(s)], true)
748+ let aZ = cw
749+ $Tuple2([StringEntry(s, aZ), DeleteEntry(t)], true)
729750 }
730751 else throw("Match error")
731752 }
732- else if ($isInstanceOf(cl, "String"))
753+ else if ($isInstanceOf(cp, "String"))
733754 then {
734- let ct = cl
735- $Tuple2([StringEntry(s, ct)], true)
755+ let cx = cp
756+ $Tuple2([StringEntry(t, cx)], true)
736757 }
737758 else throw("Match error")
738759 }
739760 else throw("Match error")
740761 }
741- else if ((bu == e))
762+ else if ((bv == e))
742763 then {
743- let cj = getString(r)
744- let Y = cj
745- if ($isInstanceOf(Y, "Unit"))
764+ let cn = getString(s)
765+ let Z = cn
766+ if ($isInstanceOf(Z, "Unit"))
746767 then {
747- let cl = getString(aG(aD))
748- if ($isInstanceOf(cl, "Unit"))
768+ let cp = getString(aH(aE))
769+ if ($isInstanceOf(cp, "Unit"))
749770 then {
750- let bW = if (bX)
751- then [DeleteEntry(q), DeleteEntry(w)]
752- else [DeleteEntry(q), BooleanEntry(y(cf), true), IntegerEntry(u, i), IntegerEntry(v, bs)]
753- let cu = aB()
754- if ((cu == cu))
755- then $Tuple2(bW, true)
771+ let bX = if (bY)
772+ then [DeleteEntry(r), DeleteEntry(x)]
773+ else [DeleteEntry(r), BooleanEntry(z(cj), true), IntegerEntry(v, i), IntegerEntry(w, bt)]
774+ let cy = aC()
775+ if ((cy == cy))
776+ then $Tuple2(bX, true)
756777 else throw("Strict value is not equal to itself.")
757778 }
758- else if ($isInstanceOf(cl, "String"))
779+ else if ($isInstanceOf(cp, "String"))
759780 then {
760- let cv = cl
761- $Tuple2([StringEntry(r, cv)], true)
781+ let cz = cp
782+ $Tuple2([StringEntry(s, cz)], true)
762783 }
763784 else throw("Match error")
764785 }
765- else if ($isInstanceOf(Y, "String"))
786+ else if ($isInstanceOf(Z, "String"))
766787 then {
767- let bH = Y
768- let cr = getString(aM(aD, bH))
769- if ((cr == cr))
788+ let bI = Z
789+ let cv = getString(aN(aE, bI))
790+ if ((cv == cv))
770791 then {
771- let cb = {
772- let ac = invoke(this, "processPoolINTERNAL", [bH, bX], nil)
773- if ($isInstanceOf(ac, "Boolean"))
774- then ac
775- else throw(($getType(ac) + " couldn't be cast to Boolean"))
792+ let cc = {
793+ let ad = invoke(this, "processPoolINTERNAL", [bI, bY], nil)
794+ if ($isInstanceOf(ad, "Boolean"))
795+ then ad
796+ else throw(($getType(ad) + " couldn't be cast to Boolean"))
776797 }
777- if ((cb == cb))
778- then if (cb)
798+ if ((cc == cc))
799+ then if (cc)
779800 then $Tuple2(nil, true)
780801 else {
781- let cl = cr
782- if ($isInstanceOf(cl, "Unit"))
802+ let cp = cv
803+ if ($isInstanceOf(cp, "Unit"))
783804 then {
784- let bW = if (bX)
785- then [DeleteEntry(q), DeleteEntry(w), DeleteEntry(r)]
786- else [DeleteEntry(q), BooleanEntry(y(cf), true), IntegerEntry(u, i), IntegerEntry(v, bs), DeleteEntry(r)]
787- let cu = aB()
788- if ((cu == cu))
789- then $Tuple2(bW, true)
805+ let bX = if (bY)
806+ then [DeleteEntry(r), DeleteEntry(x), DeleteEntry(s)]
807+ else [DeleteEntry(r), BooleanEntry(z(cj), true), IntegerEntry(v, i), IntegerEntry(w, bt), DeleteEntry(s)]
808+ let cy = aC()
809+ if ((cy == cy))
810+ then $Tuple2(bX, true)
790811 else throw("Strict value is not equal to itself.")
791812 }
792- else if ($isInstanceOf(cl, "String"))
813+ else if ($isInstanceOf(cp, "String"))
793814 then {
794- let cv = cl
795- $Tuple2([StringEntry(r, cv)], true)
815+ let cz = cp
816+ $Tuple2([StringEntry(s, cz)], true)
796817 }
797818 else throw("Match error")
798819 }
802823 }
803824 else throw("Match error")
804825 }
805- else T("finalization is broken")
826+ else U("finalization is broken")
806827 }
807828
808829
809830
810-@Callable(bc)
811-func finalizeWrapper (cw) = {
812- let cx = addressFromStringValue(getStringValue(this, m))
813- let cy = {
814- let ac = invoke(this, "finalizeHelper", nil, nil)
815- if ($isInstanceOf(ac, "Boolean"))
816- then ac
817- else throw(($getType(ac) + " couldn't be cast to Boolean"))
831+@Callable(bd)
832+func finalizeWrapper (cA) = {
833+ let cB = addressFromStringValue(getStringValue(this, m))
834+ let cC = {
835+ let ad = invoke(this, "finalizeHelper", nil, nil)
836+ if ($isInstanceOf(ad, "Boolean"))
837+ then ad
838+ else throw(($getType(ad) + " couldn't be cast to Boolean"))
818839 }
819- if ((cy == cy))
820- then if (!(cy))
821- then if ((cw == 0))
822- then T("Current voting is not over yet")
840+ if ((cC == cC))
841+ then if (!(cC))
842+ then if ((cA == 0))
843+ then U("Current voting is not over yet")
823844 else {
824- let cz = invoke(cx, "finalize", nil, nil)
825- if ((cz == cz))
845+ let cD = invoke(cB, "finalize", nil, nil)
846+ if ((cD == cD))
826847 then $Tuple2(nil, unit)
827848 else throw("Strict value is not equal to itself.")
828849 }
829850 else {
830- let cA = valueOrElse(getInteger(this, k), c)
831- if ((cA > cw))
851+ let cE = valueOrElse(getInteger(this, k), c)
852+ if ((cE > cA))
832853 then {
833- let cz = invoke(this, "finalizeWrapper", [(cw + 1)], nil)
834- if ((cz == cz))
854+ let cD = invoke(this, "finalizeWrapper", [(cA + 1)], nil)
855+ if ((cD == cD))
835856 then $Tuple2(nil, unit)
836857 else throw("Strict value is not equal to itself.")
837858 }
842863
843864
844865
845-@Callable(bc)
866+@Callable(bd)
846867 func finalize () = {
847- let cz = invoke(this, "finalizeWrapper", [0], nil)
848- if ((cz == cz))
868+ let cD = invoke(this, "finalizeWrapper", [0], nil)
869+ if ((cD == cD))
849870 then $Tuple2(nil, unit)
850871 else throw("Strict value is not equal to itself.")
851872 }
852873
853874
854875
855-@Callable(bc)
856-func containsNodeREADONLY (aH,aL) = $Tuple2(nil, aN(aH, aL))
876+@Callable(bd)
877+func containsNodeREADONLY (aI,aM) = $Tuple2(nil, aO(aI, aM))
857878
858879
859880
860-@Callable(bc)
861-func insertNode (aH,aL) = {
862- let bI = be(bc)
863- if ((bI == bI))
864- then $Tuple2(aR(aH, aL), unit)
881+@Callable(bd)
882+func insertNode (aI,aM) = {
883+ let bJ = bf(bd)
884+ if ((bJ == bJ))
885+ then $Tuple2(aS(aI, aM), unit)
865886 else throw("Strict value is not equal to itself.")
866887 }
867888
868889
869890
870-@Callable(bc)
871-func deleteNode (aH,aL) = {
872- let bI = be(bc)
873- if ((bI == bI))
874- then $Tuple2(aU(aH, aL), unit)
891+@Callable(bd)
892+func deleteNode (aI,aM) = {
893+ let bJ = bf(bd)
894+ if ((bJ == bJ))
895+ then $Tuple2(aV(aI, aM), unit)
875896 else throw("Strict value is not equal to itself.")
876897 }
877898
878899
879900
880-@Callable(bc)
901+@Callable(bd)
881902 func isFinalizationInProgress () = {
882- let bu = getInteger(this, q)
883- let cB = (bu != unit)
884- $Tuple2(nil, cB)
903+ let bv = getInteger(this, r)
904+ let cF = (bv != unit)
905+ $Tuple2(nil, cF)
885906 }
886907
887908
888909
889-@Callable(bc)
890-func deletePool (C,D) = {
891- let bI = if (if ((bc.caller == ah))
910+@Callable(bd)
911+func deletePool (D,E) = {
912+ let bJ = if (if ((bd.caller == ai))
892913 then true
893- else be(bc))
914+ else bf(bd))
894915 then true
895- else T("Permission denied")
896- if ((bI == bI))
916+ else U("Permission denied")
917+ if ((bJ == bJ))
897918 then {
898- let aH = "pools"
899- let A = $Tuple2(C, D)
900- let aL = makeString([C, D], a)
901- let bW = if (aN(aH, aL))
902- then aU(aH, aL)
919+ let aI = "pools"
920+ let B = $Tuple2(D, E)
921+ let aM = makeString([D, E], a)
922+ let bX = if (aO(aI, aM))
923+ then aV(aI, aM)
903924 else nil
904- ([DeleteEntry(z(A))] ++ bW)
925+ ([DeleteEntry(A(B))] ++ bX)
905926 }
906927 else throw("Strict value is not equal to itself.")
907928 }
908929
909930
910-@Verifier(cC)
911-func cD () = {
912- let cE = {
913- let Y = aZ()
914- if ($isInstanceOf(Y, "ByteVector"))
931+@Verifier(cG)
932+func cH () = {
933+ let cI = {
934+ let Z = ba()
935+ if ($isInstanceOf(Z, "ByteVector"))
915936 then {
916- let bd = Y
917- bd
937+ let be = Z
938+ be
918939 }
919- else if ($isInstanceOf(Y, "Unit"))
920- then cC.senderPublicKey
940+ else if ($isInstanceOf(Z, "Unit"))
941+ then cG.senderPublicKey
921942 else throw("Match error")
922943 }
923- sigVerify(cC.bodyBytes, cC.proofs[0], cE)
944+ sigVerify(cG.bodyBytes, cG.proofs[0], cI)
924945 }
925946
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", "votingEmissionRateContract"], a)
2828
2929 let n = makeString(["%s", "factoryContract"], a)
3030
3131 let o = makeString(["%s", "boostingContract"], a)
3232
3333 let p = makeString(["%s", "stakingContract"], a)
3434
35-let q = makeString(["%s", "finalizationStage"], a)
35+let q = makeString(["%s", "assetsStoreContract"], a)
3636
37-let r = makeString(["%s", "nextPool"], a)
37+let r = makeString(["%s", "finalizationStage"], a)
3838
39-let s = makeString(["%s", "nextUser"], a)
39+let s = makeString(["%s", "nextPool"], a)
4040
41-let t = makeString(["%s", "startHeight"], a)
41+let t = makeString(["%s", "nextUser"], a)
4242
43-let u = makeString(["%s", "currentEpochUi"], a)
43+let u = makeString(["%s", "startHeight"], a)
4444
45-let v = makeString(["%s", "startHeightUi"], a)
45+let v = makeString(["%s", "currentEpochUi"], a)
4646
47-let w = makeString(["%s", "force"], a)
47+let w = makeString(["%s", "startHeightUi"], a)
4848
49-func x (i) = makeString(["%s%d", "startHeight", toString(i)], a)
49+let x = makeString(["%s", "force"], a)
50+
51+func y (i) = makeString(["%s%d", "startHeight", toString(i)], a)
5052
5153
52-func y (i) = makeString(["%s%d", "finalized", toString(i)], a)
54+func z (i) = makeString(["%s%d", "finalized", toString(i)], a)
5355
5456
55-func z (A) = {
56- let B = A
57- let C = B._1
58- let D = B._2
59- makeString(["%s%s%s", "inList", C, D], a)
57+func A (B) = {
58+ let C = B
59+ let D = C._1
60+ let E = C._2
61+ makeString(["%s%s%s", "inList", D, E], a)
6062 }
6163
6264
63-func E (F,i) = makeString(["%s%s%d", "used", toString(F), toString(i)], a)
65+func F (G,i) = makeString(["%s%s%d", "used", toString(G), toString(i)], a)
6466
6567
66-func G (A,F,i) = {
67- let H = A
68- let C = H._1
69- let D = H._2
70- makeString(["%s%s%s%s%d", "vote", C, D, toString(F), toString(i)], a)
68+func H (B,G,i) = {
69+ let I = B
70+ let D = I._1
71+ let E = I._2
72+ makeString(["%s%s%s%s%d", "vote", D, E, toString(G), toString(i)], a)
7173 }
7274
7375
74-func I (A,i) = {
75- let J = A
76- let C = J._1
77- let D = J._2
78- makeString(["%s%s%s%d", "votingResult", C, D, toString(i)], a)
76+func J (B,i) = {
77+ let K = B
78+ let D = K._1
79+ let E = K._2
80+ makeString(["%s%s%s%d", "votingResult", D, E, toString(i)], a)
7981 }
8082
8183
82-func K (L,i) = makeString(["%s%s%d", "votingResultStaked", L, toString(i)], a)
84+func L (M,i) = makeString(["%s%s%d", "votingResultStaked", M, toString(i)], a)
8385
8486
85-func M (A,i) = {
86- let N = A
87- let C = N._1
88- let D = N._2
89- makeString(["%s%s%s%d", "poolShare", C, D, toString(i)], a)
87+func N (B,i) = {
88+ let O = B
89+ let D = O._1
90+ let E = O._2
91+ makeString(["%s%s%s%d", "poolShare", D, E, toString(i)], a)
9092 }
9193
9294
93-func O (i) = makeString(["%s%d", "totalVotes", toString(i)], a)
95+func P (i) = makeString(["%s%d", "totalVotes", toString(i)], a)
9496
9597
96-func P (L,Q) = makeString(["%s%s%s", "staked", Q, L], a)
98+func Q (M,R) = makeString(["%s%s%s", "staked", R, M], a)
9799
98100
99-func R (S) = makeString(["voting_emission.ride:", S], " ")
101+func S (T) = makeString(["voting_emission.ride:", T], " ")
100102
101103
102-func T (S) = throw(R(S))
104+func U (T) = throw(S(T))
103105
104106
105-func U (F,V,W) = {
106- let X = R(makeString(["mandatory ", toString(F), ".", V, " is not defined"], ""))
107+func V (G,W,X) = {
108+ let Y = S(makeString(["mandatory ", toString(G), ".", W, " is not defined"], ""))
107109 valueOrErrorMessage({
108- let Y = W
109- if ($isInstanceOf(Y, "String"))
110+ let Z = X
111+ if ($isInstanceOf(Z, "String"))
110112 then {
111- let Z = Y
112- getString(F, V)
113+ let aa = Z
114+ getString(G, W)
113115 }
114- else if ($isInstanceOf(Y, "Int"))
116+ else if ($isInstanceOf(Z, "Int"))
115117 then {
116- let aa = Y
117- getInteger(F, V)
118+ let ab = Z
119+ getInteger(G, W)
118120 }
119- else T("invalid entry type")
120- }, X)
121+ else U("invalid entry type")
122+ }, Y)
121123 }
122124
123125
124-func ab (F,V) = {
125- let ac = U(F, V, "")
126- if ($isInstanceOf(ac, "String"))
127- then ac
128- else throw(($getType(ac) + " couldn't be cast to String"))
126+func ac (G,W) = {
127+ let ad = V(G, W, "")
128+ if ($isInstanceOf(ad, "String"))
129+ then ad
130+ else throw(($getType(ad) + " couldn't be cast to String"))
129131 }
130132
131133
132-func ad (F,V) = {
133- let ac = U(F, V, 0)
134- if ($isInstanceOf(ac, "Int"))
135- then ac
136- else throw(($getType(ac) + " couldn't be cast to Int"))
134+func ae (G,W) = {
135+ let ad = V(G, W, 0)
136+ if ($isInstanceOf(ad, "Int"))
137+ then ad
138+ else throw(($getType(ad) + " couldn't be cast to Int"))
137139 }
138140
139141
140-func ae (A) = ((A._1 + a) + A._2)
142+func af (B) = ((B._1 + a) + B._2)
141143
142144
143-func af (Z) = {
144- let ag = split(Z, a)
145- if ((size(ag) == 2))
146- then $Tuple2(ag[0], ag[1])
147- else T("invalid pool string")
145+func ag (aa) = {
146+ let ah = split(aa, a)
147+ if ((size(ah) == 2))
148+ then $Tuple2(ah[0], ah[1])
149+ else U("invalid pool string")
148150 }
149151
150152
151-let ah = addressFromStringValue(ab(this, n))
153+let ai = addressFromStringValue(ac(this, n))
152154
153-let ai = 10
155+let aj = 10
154156
155-func aj () = "%s__factoryConfig"
157+func ak () = "%s__factoryConfig"
156158
157159
158-func ak (al) = split(ab(al, aj()), a)
160+func al (am) = split(ac(am, ak()), a)
159161
160162
161-func am (an) = addressFromStringValue(an[ai])
163+func an (ao) = addressFromStringValue(ao[aj])
162164
163165
164-func ao (C,D) = {
165- func ap (aq) = ("%s%s%s__mappings__baseAsset2internalId__" + aq)
166+func ap (D,E) = {
167+ func aq (ar) = ("%s%s%s__mappings__baseAsset2internalId__" + ar)
166168
167- func ar (as,at) = (((("%d%d%s%s__" + toString(as)) + "__") + toString(at)) + "__mappings__poolAssets2PoolContract")
169+ func as (at,au) = (((("%d%d%s%s__" + toString(at)) + "__") + toString(au)) + "__mappings__poolAssets2PoolContract")
168170
169- func au (av) = (("%s%s%s__" + av) + "__mappings__poolContract2LpAsset")
171+ func av (aw) = (("%s%s%s__" + aw) + "__mappings__poolContract2LpAsset")
170172
171- let aw = ad(ah, ap(C))
172- let ax = ad(ah, ap(D))
173- let av = ab(ah, ar(aw, ax))
174- let ay = ab(ah, au(av))
175- ay
173+ let ax = ae(ai, aq(D))
174+ let ay = ae(ai, aq(E))
175+ let aw = ac(ai, as(ax, ay))
176+ let az = ac(ai, av(aw))
177+ az
176178 }
177179
178180
179-func az (A) = {
180- let aA = A
181- let C = aA._1
182- let D = aA._2
183- let ac = invoke(ah, "checkWxEmissionPoolLabel", [C, D], nil)
184- if ($isInstanceOf(ac, "Boolean"))
185- then ac
186- else throw(($getType(ac) + " couldn't be cast to Boolean"))
181+func aA (B) = {
182+ let aB = B
183+ let D = aB._1
184+ let E = aB._2
185+ let ad = invoke(ai, "checkWxEmissionPoolLabel", [D, E], nil)
186+ if ($isInstanceOf(ad, "Boolean"))
187+ then ad
188+ else throw(($getType(ad) + " couldn't be cast to Boolean"))
187189 }
188190
189191
190-func aB () = {
191- let an = ak(ah)
192- let aC = am(an)
193- invoke(aC, "deposit", nil, nil)
192+func aC () = {
193+ let ao = al(ai)
194+ let aD = an(ao)
195+ invoke(aD, "deposit", nil, nil)
194196 }
195197
196198
197-let aD = "pools"
199+let aE = "pools"
198200
199-func aE (A) = {
200- let aF = A
201- let C = aF._1
202- let D = aF._2
203- makeString(["votes", C, D], a)
201+func aF (B) = {
202+ let aG = B
203+ let D = aG._1
204+ let E = aG._2
205+ makeString(["votes", D, E], a)
204206 }
205207
206208
207-func aG (aH) = {
208- let aI = if ((aH == aD))
209+func aH (aI) = {
210+ let aJ = if ((aI == aE))
209211 then "%s%s"
210212 else "%s%s%s%s"
211- makeString([aI, aH, "head"], a)
213+ makeString([aJ, aI, "head"], a)
212214 }
213215
214216
215-func aJ (aH) = {
216- let aI = if ((aH == aD))
217+func aK (aI) = {
218+ let aJ = if ((aI == aE))
217219 then "%s%s"
218220 else "%s%s%s%s"
219- makeString([aI, aH, "size"], a)
221+ makeString([aJ, aI, "size"], a)
220222 }
221223
222224
223-func aK (aH,aL) = {
224- let aI = if ((aH == aD))
225+func aL (aI,aM) = {
226+ let aJ = if ((aI == aE))
225227 then "%s%s%s%s"
226228 else "%s%s%s%s%s"
227- makeString([aI, aH, aL, "prev"], a)
229+ makeString([aJ, aI, aM, "prev"], a)
228230 }
229231
230232
231-func aM (aH,aL) = {
232- let aI = if ((aH == aD))
233+func aN (aI,aM) = {
234+ let aJ = if ((aI == aE))
233235 then "%s%s%s%s"
234236 else "%s%s%s%s%s"
235- makeString([aI, aH, aL, "next"], a)
237+ makeString([aJ, aI, aM, "next"], a)
236238 }
237239
238240
239-func aN (aH,aL) = {
240- let aO = getString(this, aG(aH))
241- let aP = getString(this, aK(aH, aL))
242- let aQ = getString(this, aM(aH, aL))
243- if (if ((aL == valueOrElse(aO, "")))
241+func aO (aI,aM) = {
242+ let aP = getString(this, aH(aI))
243+ let aQ = getString(this, aL(aI, aM))
244+ let aR = getString(this, aN(aI, aM))
245+ if (if ((aM == valueOrElse(aP, "")))
244246 then true
245- else (aP != unit))
247+ else (aQ != unit))
246248 then true
247- else (aQ != unit)
249+ else (aR != unit)
248250 }
249251
250252
251-func aR (aH,aL) = {
252- let aO = getString(this, aG(aH))
253- let aS = valueOrElse(getInteger(this, aJ(aH)), 0)
254- let aT = if (!(aN(aH, aL)))
253+func aS (aI,aM) = {
254+ let aP = getString(this, aH(aI))
255+ let aT = valueOrElse(getInteger(this, aK(aI)), 0)
256+ let aU = if (!(aO(aI, aM)))
255257 then true
256- else T("Node exists")
257- if ((aT == aT))
258- then (([IntegerEntry(aJ(aH), (aS + 1))] ++ (if ((aO != unit))
259- then [StringEntry(aM(aH, aL), value(aO)), StringEntry(aK(aH, value(aO)), aL)]
260- else nil)) ++ [StringEntry(aG(aH), aL)])
258+ else U("Node exists")
259+ if ((aU == aU))
260+ then (([IntegerEntry(aK(aI), (aT + 1))] ++ (if ((aP != unit))
261+ then [StringEntry(aN(aI, aM), value(aP)), StringEntry(aL(aI, value(aP)), aM)]
262+ else nil)) ++ [StringEntry(aH(aI), aM)])
261263 else throw("Strict value is not equal to itself.")
262264 }
263265
264266
265-func aU (aH,aL) = {
266- let aO = getString(this, aG(aH))
267- let aS = valueOrElse(getInteger(this, aJ(aH)), 0)
268- let aP = getString(this, aK(aH, aL))
269- let aQ = getString(this, aM(aH, aL))
270- ([IntegerEntry(aJ(aH), (aS - 1))] ++ (if (if ((aP != unit))
271- then (aQ != unit)
267+func aV (aI,aM) = {
268+ let aP = getString(this, aH(aI))
269+ let aT = valueOrElse(getInteger(this, aK(aI)), 0)
270+ let aQ = getString(this, aL(aI, aM))
271+ let aR = getString(this, aN(aI, aM))
272+ ([IntegerEntry(aK(aI), (aT - 1))] ++ (if (if ((aQ != unit))
273+ then (aR != unit)
272274 else false)
273- then [StringEntry(aM(aH, value(aP)), value(aQ)), StringEntry(aK(aH, value(aQ)), value(aP)), DeleteEntry(aK(aH, aL)), DeleteEntry(aM(aH, aL))]
274- else if ((aQ != unit))
275- then [StringEntry(aG(aH), value(aQ)), DeleteEntry(aM(aH, aL)), DeleteEntry(aK(aH, value(aQ)))]
276- else if ((aP != unit))
277- then [DeleteEntry(aK(aH, aL)), DeleteEntry(aM(aH, value(aP)))]
278- else if ((aL == valueOrElse(aO, "")))
279- then [DeleteEntry(aG(aH))]
280- else T(((("invalid node: " + aH) + ".") + aL))))
275+ then [StringEntry(aN(aI, value(aQ)), value(aR)), StringEntry(aL(aI, value(aR)), value(aQ)), DeleteEntry(aL(aI, aM)), DeleteEntry(aN(aI, aM))]
276+ else if ((aR != unit))
277+ then [StringEntry(aH(aI), value(aR)), DeleteEntry(aN(aI, aM)), DeleteEntry(aL(aI, value(aR)))]
278+ else if ((aQ != unit))
279+ then [DeleteEntry(aL(aI, aM)), DeleteEntry(aN(aI, value(aQ)))]
280+ else if ((aM == valueOrElse(aP, "")))
281+ then [DeleteEntry(aH(aI))]
282+ else U(((("invalid node: " + aI) + ".") + aM))))
281283 }
282284
283285
284-func aV () = "%s__managerVaultAddress"
286+func aW () = "%s__managerVaultAddress"
285287
286288
287-func aW () = "%s__managerPublicKey"
289+func aX () = "%s__managerPublicKey"
288290
289291
290-func aX () = {
291- let Y = getString(aV())
292- if ($isInstanceOf(Y, "String"))
292+func aY () = {
293+ let Z = getString(aW())
294+ if ($isInstanceOf(Z, "String"))
293295 then {
294- let aY = Y
295- addressFromStringValue(aY)
296+ let aZ = Z
297+ addressFromStringValue(aZ)
296298 }
297299 else this
298300 }
299301
300302
301-func aZ () = {
302- let ba = aX()
303- let Y = getString(ba, aW())
304- if ($isInstanceOf(Y, "String"))
303+func ba () = {
304+ let bb = aY()
305+ let Z = getString(bb, aX())
306+ if ($isInstanceOf(Z, "String"))
305307 then {
306- let aY = Y
307- fromBase58String(aY)
308+ let aZ = Z
309+ fromBase58String(aZ)
308310 }
309- else if ($isInstanceOf(Y, "Unit"))
311+ else if ($isInstanceOf(Z, "Unit"))
310312 then unit
311313 else throw("Match error")
312314 }
313315
314316
315-func bb (bc) = {
316- let Y = aZ()
317- if ($isInstanceOf(Y, "ByteVector"))
317+func bc (bd) = {
318+ let Z = ba()
319+ if ($isInstanceOf(Z, "ByteVector"))
318320 then {
319- let bd = Y
320- (bc.callerPublicKey == bd)
321+ let be = Z
322+ (bd.callerPublicKey == be)
321323 }
322- else if ($isInstanceOf(Y, "Unit"))
323- then (bc.caller == this)
324+ else if ($isInstanceOf(Z, "Unit"))
325+ then (bd.caller == this)
324326 else throw("Match error")
325327 }
326328
327329
328-func be (bc) = if (bb(bc))
330+func bf (bd) = if (bc(bd))
329331 then true
330332 else throw("permission denied")
331333
332334
333-func bf (bc) = if ((bc.caller == this))
335+func bg (bd) = if ((bd.caller == this))
334336 then true
335337 else throw("permission denied")
336338
337339
338-@Callable(bc)
339-func getUserGwxAmountAtHeight (bg,bh) = {
340- let bi = valueOrErrorMessage(addressFromString(ab(this, o)), R("invalid boosting contract address"))
340+@Callable(bd)
341+func getUserGwxAmountAtHeight (bh,bi) = {
342+ let bj = valueOrErrorMessage(addressFromString(ac(this, o)), S("invalid boosting contract address"))
341343 $Tuple2(nil, {
342- let ac = invoke(bi, "getUserGwxAmountAtHeightREADONLY", [bg, bh], nil)
343- if ($isInstanceOf(ac, "Int"))
344- then ac
345- else throw(($getType(ac) + " couldn't be cast to Int"))
344+ let ad = invoke(bj, "getUserGwxAmountAtHeightREADONLY", [bh, bi], nil)
345+ if ($isInstanceOf(ad, "Int"))
346+ then ad
347+ else throw(($getType(ad) + " couldn't be cast to Int"))
346348 })
347349 }
348350
349351
350352
351-@Callable(bc)
352-func constructor (ah,bj,bk,bl,bm) = {
353- let bn = [be(bc), if ((addressFromString(ah) != unit))
353+@Callable(bd)
354+func constructor (ai,bk,bl,bm,bn) = {
355+ let bo = [bf(bd), if ((addressFromString(ai) != unit))
354356 then true
355- else "invalid factory contract address", if ((addressFromString(bj) != unit))
357+ else "invalid factory contract address", if ((addressFromString(bk) != unit))
356358 then true
357- else "invalid voting emission candidate contract address", if ((addressFromString(bk) != unit))
359+ else "invalid voting emission candidate contract address", if ((addressFromString(bl) != unit))
358360 then true
359- else "invalid boosting contract address", if ((addressFromString(bl) != unit))
361+ else "invalid boosting contract address", if ((addressFromString(bm) != unit))
360362 then true
361- else "invalid staking contract address", if ((bm > 0))
363+ else "invalid staking contract address", if ((bn > 0))
362364 then true
363- else T("invalid epoch length")]
364- if ((bn == bn))
365- then $Tuple2([StringEntry(n, ah), StringEntry(l, bj), StringEntry(o, bk), StringEntry(p, bl), IntegerEntry(f, bm)], unit)
365+ else U("invalid epoch length")]
366+ if ((bo == bo))
367+ then $Tuple2([StringEntry(n, ai), StringEntry(l, bk), StringEntry(o, bl), StringEntry(p, bm), IntegerEntry(f, bn)], unit)
366368 else throw("Strict value is not equal to itself.")
367369 }
368370
369371
370372
371-@Callable(bc)
372-func create (C,D) = {
373- let bn = [if ((toBase58String(bc.caller.bytes) == valueOrElse(getString(this, l), "")))
373+@Callable(bd)
374+func create (D,E) = {
375+ let bo = [if ((toBase58String(bd.caller.bytes) == valueOrElse(getString(this, l), "")))
374376 then true
375- else be(bc)]
376- if ((bn == bn))
377+ else bf(bd)]
378+ if ((bo == bo))
377379 then {
378- let A = $Tuple2(C, D)
379- let bo = ([BooleanEntry(z(A), true)] ++ aR(aD, ae(A)))
380- let bp = (getInteger(this, j) == unit)
381- let bq = if (bp)
380+ let B = $Tuple2(D, E)
381+ let bp = ([BooleanEntry(A(B), true)] ++ aS(aE, af(B)))
382+ let bq = (getInteger(this, j) == unit)
383+ let br = if (bq)
382384 then {
383385 let i = 0
384-[IntegerEntry(j, i), IntegerEntry(x(i), height), IntegerEntry(t, height), IntegerEntry(u, i), IntegerEntry(v, height)]
386+[IntegerEntry(j, i), IntegerEntry(y(i), height), IntegerEntry(u, height), IntegerEntry(v, i), IntegerEntry(w, height)]
385387 }
386388 else nil
387- $Tuple2((bo ++ bq), unit)
389+ $Tuple2((bp ++ br), unit)
388390 }
389391 else throw("Strict value is not equal to itself.")
390392 }
391393
392394
393395
394-@Callable(bc)
395-func vote (C,D,br) = {
396- let A = $Tuple2(C, D)
396+@Callable(bd)
397+func vote (D,E,bs) = {
398+ let B = $Tuple2(D, E)
397399 let i = valueOrElse(getInteger(this, j), 0)
398- let bs = ad(this, x(i))
399- let bm = ad(this, f)
400- let bt = (bs + bm)
401- let bu = getInteger(this, q)
402- let bv = valueOrElse(getInteger(this, E(bc.caller, i)), 0)
403- let bw = valueOrElse(getInteger(this, G(A, bc.caller, i)), 0)
404- let bx = valueOrElse(getInteger(this, I(A, i)), 0)
405- let by = valueOrElse(getInteger(this, O(i)), 0)
406- let bz = {
407- let ac = invoke(this, "getUserGwxAmountAtHeight", [toBase58String(bc.caller.bytes), bt], nil)
408- if ($isInstanceOf(ac, "Int"))
409- then ac
410- else throw(($getType(ac) + " couldn't be cast to Int"))
400+ let bt = ae(this, y(i))
401+ let bn = ae(this, f)
402+ let bu = (bt + bn)
403+ let bv = getInteger(this, r)
404+ let bw = valueOrElse(getInteger(this, F(bd.caller, i)), 0)
405+ let bx = valueOrElse(getInteger(this, H(B, bd.caller, i)), 0)
406+ let by = valueOrElse(getInteger(this, J(B, i)), 0)
407+ let bz = valueOrElse(getInteger(this, P(i)), 0)
408+ let bA = {
409+ let ad = invoke(this, "getUserGwxAmountAtHeight", [toBase58String(bd.caller.bytes), bu], nil)
410+ if ($isInstanceOf(ad, "Int"))
411+ then ad
412+ else throw(($getType(ad) + " couldn't be cast to Int"))
411413 }
412- let bA = (bz - bv)
413- let bB = (bw + br)
414- let bC = az(A)
415- let bn = [if ((getBoolean(z(A)) != unit))
414+ let bB = (bA - bw)
415+ let bC = (bx + bs)
416+ let bD = aA(B)
417+ let bo = [if ((getBoolean(A(B)) != unit))
416418 then true
417- else T("invalid assets"), if ((bt > height))
419+ else U("invalid assets"), if ((bu > height))
418420 then true
419- else T("invalid height"), if ((bu == unit))
421+ else U("invalid height"), if ((bv == unit))
420422 then true
421- else T("finalization in progress"), if ((bz > 0))
423+ else U("finalization in progress"), if ((bA > 0))
422424 then true
423- else T("you do not have gWX"), if (if ((br > 0))
424- then (bA >= br)
425+ else U("you do not have gWX"), if (if ((bs > 0))
426+ then (bB >= bs)
425427 else false)
426428 then true
427- else T("invalid amount"), if (bC)
429+ else U("invalid amount"), if (bD)
428430 then true
429- else T("pool hasn't WX_EMISSION label")]
430- if ((bn == bn))
431+ else U("pool hasn't WX_EMISSION label")]
432+ if ((bo == bo))
431433 then {
432- let bD = aE(A)
433- let Q = toString(bc.caller)
434- let bE = if (aN(bD, Q))
434+ let bE = aF(B)
435+ let R = toString(bd.caller)
436+ let bF = if (aO(bE, R))
435437 then nil
436- else aR(bD, Q)
437- $Tuple2(([IntegerEntry(E(bc.caller, i), (bv + br)), IntegerEntry(G(A, bc.caller, i), bB), IntegerEntry(I(A, i), (bx + br)), IntegerEntry(O(i), (by + br))] ++ bE), unit)
438+ else aS(bE, R)
439+ $Tuple2(([IntegerEntry(F(bd.caller, i), (bw + bs)), IntegerEntry(H(B, bd.caller, i), bC), IntegerEntry(J(B, i), (by + bs)), IntegerEntry(P(i), (bz + bs))] ++ bF), unit)
438440 }
439441 else throw("Strict value is not equal to itself.")
440442 }
441443
442444
443445
444-@Callable(bc)
445-func cancelVote (C,D) = {
446- let A = $Tuple2(C, D)
446+@Callable(bd)
447+func cancelVote (D,E) = {
448+ let B = $Tuple2(D, E)
447449 let i = valueOrElse(getInteger(this, j), 0)
448- let bs = ad(this, x(i))
449- let bm = ad(this, f)
450- let bt = (bs + bm)
451- let bu = getInteger(this, q)
452- let bv = valueOrElse(getInteger(this, E(bc.caller, i)), 0)
453- let bw = valueOrElse(getInteger(this, G(A, bc.caller, i)), 0)
454- let bx = valueOrElse(getInteger(this, I(A, i)), 0)
455- let by = valueOrElse(getInteger(this, O(i)), 0)
456- let bn = [if ((getBoolean(z(A)) != unit))
450+ let bt = ae(this, y(i))
451+ let bn = ae(this, f)
452+ let bu = (bt + bn)
453+ let bv = getInteger(this, r)
454+ let bw = valueOrElse(getInteger(this, F(bd.caller, i)), 0)
455+ let bx = valueOrElse(getInteger(this, H(B, bd.caller, i)), 0)
456+ let by = valueOrElse(getInteger(this, J(B, i)), 0)
457+ let bz = valueOrElse(getInteger(this, P(i)), 0)
458+ let bo = [if ((getBoolean(A(B)) != unit))
457459 then true
458- else T("invalid assets"), if ((bt > height))
460+ else U("invalid assets"), if ((bu > height))
459461 then true
460- else T("invalid height"), if ((bu == unit))
462+ else U("invalid height"), if ((bv == unit))
461463 then true
462- else T("finalization in progress"), if ((bw > 0))
464+ else U("finalization in progress"), if ((bx > 0))
463465 then true
464- else T("no vote")]
465- if ((bn == bn))
466+ else U("no vote")]
467+ if ((bo == bo))
466468 then {
467- let bD = aE(A)
468- let Q = toString(bc.caller)
469- $Tuple2(([IntegerEntry(E(bc.caller, i), max([(bv - bw), 0])), DeleteEntry(G(A, bc.caller, i)), IntegerEntry(I(A, i), (bx - bw)), IntegerEntry(O(i), (by - bw))] ++ aU(bD, Q)), unit)
469+ let bE = aF(B)
470+ let R = toString(bd.caller)
471+ $Tuple2(([IntegerEntry(F(bd.caller, i), max([(bw - bx), 0])), DeleteEntry(H(B, bd.caller, i)), IntegerEntry(J(B, i), (by - bx)), IntegerEntry(P(i), (bz - bx))] ++ aV(bE, R)), unit)
470472 }
471473 else throw("Strict value is not equal to itself.")
472474 }
473475
474476
475477
476-@Callable(bc)
477-func setEpochLength (bF) = {
478- let bn = [be(bc), if ((bF > 0))
478+@Callable(bd)
479+func setEpochLength (bG) = {
480+ let bo = [bf(bd), if ((bG > 0))
479481 then true
480- else T("invalid epoch length")]
481- if ((bn == bn))
482- then $Tuple2([IntegerEntry(g, bF)], unit)
482+ else U("invalid epoch length")]
483+ if ((bo == bo))
484+ then $Tuple2([IntegerEntry(g, bG)], unit)
483485 else throw("Strict value is not equal to itself.")
484486 }
485487
486488
487489
488-@Callable(bc)
489-func setMaxDepth (bG) = {
490- let bn = [be(bc), if ((bG > 0))
490+@Callable(bd)
491+func setMaxDepth (bH) = {
492+ let bo = [bf(bd), if ((bH > 0))
491493 then true
492- else T("invalid max depth")]
493- if ((bn == bn))
494- then $Tuple2([IntegerEntry(k, bG)], unit)
494+ else U("invalid max depth")]
495+ if ((bo == bo))
496+ then $Tuple2([IntegerEntry(k, bH)], unit)
495497 else throw("Strict value is not equal to itself.")
496498 }
497499
498500
499501
500-@Callable(bc)
501-func processVoteINTERNAL (bH,Q) = {
502- let bI = bf(bc)
503- if ((bI == bI))
502+@Callable(bd)
503+func processVoteINTERNAL (bI,R) = {
504+ let bJ = bg(bd)
505+ if ((bJ == bJ))
504506 then {
505- let bg = valueOrErrorMessage(addressFromString(Q), R(("processVoteINTERNAL: invalid user address " + Q)))
506- let i = ad(this, j)
507- let bJ = (i - 1)
508- let bm = ad(this, f)
509- let bs = ad(this, x(i))
510- let bt = (bs + bm)
511- let bK = ad(this, x(bJ))
512- let bL = ad(this, h(bJ))
513- let bM = (bK + bL)
514- let bN = if ((bJ >= 0))
507+ let bh = valueOrErrorMessage(addressFromString(R), S(("processVoteINTERNAL: invalid user address " + R)))
508+ let i = ae(this, j)
509+ let bK = (i - 1)
510+ let bn = ae(this, f)
511+ let bt = ae(this, y(i))
512+ let bu = (bt + bn)
513+ let bL = ae(this, y(bK))
514+ let bM = ae(this, h(bK))
515+ let bN = (bL + bM)
516+ let bO = if ((bK >= 0))
515517 then true
516- else T("processVoteINTERNAL: invalid previous epoch")
517- if ((bN == bN))
518+ else U("processVoteINTERNAL: invalid previous epoch")
519+ if ((bO == bO))
518520 then {
519- let A = af(bH)
520- let bO = A
521- let C = bO._1
522- let D = bO._2
523- let bC = az(A)
524- let bz = {
525- let ac = invoke(this, "getUserGwxAmountAtHeight", [Q, bt], nil)
526- if ($isInstanceOf(ac, "Int"))
527- then ac
528- else throw(($getType(ac) + " couldn't be cast to Int"))
521+ let B = ag(bI)
522+ let bP = B
523+ let D = bP._1
524+ let E = bP._2
525+ let bD = aA(B)
526+ let bA = {
527+ let ad = invoke(this, "getUserGwxAmountAtHeight", [R, bu], nil)
528+ if ($isInstanceOf(ad, "Int"))
529+ then ad
530+ else throw(($getType(ad) + " couldn't be cast to Int"))
529531 }
530- let bP = {
531- let ac = invoke(this, "getUserGwxAmountAtHeight", [Q, bM], nil)
532- if ($isInstanceOf(ac, "Int"))
533- then ac
534- else throw(($getType(ac) + " couldn't be cast to Int"))
532+ let bQ = {
533+ let ad = invoke(this, "getUserGwxAmountAtHeight", [R, bN], nil)
534+ if ($isInstanceOf(ad, "Int"))
535+ then ad
536+ else throw(($getType(ad) + " couldn't be cast to Int"))
535537 }
536- let by = valueOrElse(getInteger(O(i)), 0)
537- let bQ = valueOrElse(getInteger(I(A, i)), 0)
538- let bR = valueOrErrorMessage(getInteger(G(A, bg, bJ)), R((((("processVoteINTERNAL " + bH) + " ") + Q) + ": no previous vote")))
539- let bv = valueOrElse(getInteger(this, E(bg, i)), 0)
540- let L = ao(C, D)
541- let bS = valueOrElse(getInteger(K(L, bJ)), 0)
542- let bl = addressFromStringValue(ab(this, p))
543- let bT = valueOrElse(getInteger(bl, P(L, Q)), 0)
544- let bU = if ((bT == 0))
538+ let bz = valueOrElse(getInteger(P(i)), 0)
539+ let bR = valueOrElse(getInteger(J(B, i)), 0)
540+ let bS = valueOrErrorMessage(getInteger(H(B, bh, bK)), S((((("processVoteINTERNAL " + bI) + " ") + R) + ": no previous vote")))
541+ let bw = valueOrElse(getInteger(this, F(bh, i)), 0)
542+ let M = ap(D, E)
543+ let bT = valueOrElse(getInteger(L(M, bK)), 0)
544+ let bm = addressFromStringValue(ac(this, p))
545+ let bU = valueOrElse(getInteger(bm, Q(M, R)), 0)
546+ let bV = if ((bU == 0))
545547 then nil
546- else [IntegerEntry(K(L, bJ), (bS + bR))]
547- let ay = ao(C, D)
548- let bV = {
549- let ac = invoke(ah, "checkBalance", [ay], nil)
550- if ($isInstanceOf(ac, "Boolean"))
551- then ac
552- else throw(($getType(ac) + " couldn't be cast to Boolean"))
548+ else [IntegerEntry(L(M, bK), (bT + bS))]
549+ let az = ap(D, E)
550+ let bW = {
551+ let ad = invoke(ai, "checkBalance", [az], nil)
552+ if ($isInstanceOf(ad, "Boolean"))
553+ then ad
554+ else throw(($getType(ad) + " couldn't be cast to Boolean"))
553555 }
554- let bB = if ((bP > 0))
555- then fraction(bR, bz, bP)
556+ let bC = if ((bQ > 0))
557+ then fraction(bS, bA, bQ)
556558 else 0
557- let bW = if (if (if ((bB > 0))
558- then bC
559+ let bX = if (if (if ((bC > 0))
560+ then bD
559561 else false)
560- then bV
562+ then bW
561563 else false)
562- then [IntegerEntry(G(A, bg, i), bB), IntegerEntry(O(i), (by + bB)), IntegerEntry(I(A, i), (bQ + bB)), IntegerEntry(E(bg, i), (bv + bB))]
563- else aU(aE(A), Q)
564- $Tuple2((bW ++ bU), unit)
564+ then [IntegerEntry(H(B, bh, i), bC), IntegerEntry(P(i), (bz + bC)), IntegerEntry(J(B, i), (bR + bC)), IntegerEntry(F(bh, i), (bw + bC))]
565+ else aV(aF(B), R)
566+ $Tuple2((bX ++ bV), unit)
565567 }
566568 else throw("Strict value is not equal to itself.")
567569 }
568570 else throw("Strict value is not equal to itself.")
569571 }
570572
571573
572574
573-@Callable(bc)
574-func processPoolINTERNAL (bH,bX) = {
575- let bI = bf(bc)
576- if ((bI == bI))
575+@Callable(bd)
576+func processPoolINTERNAL (bI,bY) = {
577+ let bJ = bg(bd)
578+ if ((bJ == bJ))
577579 then {
578- let bY = {
579- let bZ = ad(this, j)
580- if (bX)
581- then bZ
582- else (bZ - 1)
580+ let bZ = {
581+ let ca = ae(this, j)
582+ if (bY)
583+ then ca
584+ else (ca - 1)
583585 }
584- let bN = if ((bY >= 0))
586+ let bO = if ((bZ >= 0))
585587 then true
586- else T("processPoolINTERNAL: invalid target epoch")
587- if ((bN == bN))
588+ else U("processPoolINTERNAL: invalid target epoch")
589+ if ((bO == bO))
588590 then {
589- let A = af(bH)
590- let ca = A
591- let C = ca._1
592- let D = ca._2
593- let bl = addressFromStringValue(ab(this, p))
594- let ay = ao(C, D)
595- let cb = {
596- let ac = invoke(bl, "usersListTraversal", [ay], nil)
597- if ($isInstanceOf(ac, "Boolean"))
598- then ac
599- else throw(($getType(ac) + " couldn't be cast to Boolean"))
591+ let B = ag(bI)
592+ let cb = B
593+ let D = cb._1
594+ let E = cb._2
595+ let bm = addressFromStringValue(ac(this, p))
596+ let az = ap(D, E)
597+ let cc = {
598+ let ad = invoke(bm, "usersListTraversal", [az], nil)
599+ if ($isInstanceOf(ad, "Boolean"))
600+ then ad
601+ else throw(($getType(ad) + " couldn't be cast to Boolean"))
600602 }
601- if ((cb == cb))
602- then if (cb)
603+ if ((cc == cc))
604+ then if (cc)
603605 then $Tuple2(nil, true)
604606 else {
605- let bC = az(A)
606- let bV = {
607- let ac = invoke(ah, "checkBalance", [ay], nil)
608- if ($isInstanceOf(ac, "Boolean"))
609- then ac
610- else throw(($getType(ac) + " couldn't be cast to Boolean"))
607+ let cd = addressFromStringValue(valueOrElse(getString(this, q), "invalid assets store contract"))
608+ let bD = aA(B)
609+ let bW = {
610+ let ad = invoke(ai, "checkBalance", [az], nil)
611+ if ($isInstanceOf(ad, "Boolean"))
612+ then ad
613+ else throw(($getType(ad) + " couldn't be cast to Boolean"))
611614 }
612- let by = valueOrElse(getInteger(this, O(bY)), 0)
613- let bQ = valueOrElse(getInteger(this, I(A, bY)), 0)
614- let cc = if (if (if ((by == 0))
615- then true
616- else !(bC))
617- then true
618- else !(bV))
619- then 0
620- else fraction(bQ, b, by)
621- let cd = invoke(ah, "modifyWeight", [ay, cc], nil)
622- if ((cd == cd))
615+ let ce = {
616+ let ad = invoke(cd, "isVerifiedREADONLY", [D], nil)
617+ if ($isInstanceOf(ad, "Boolean"))
618+ then ad
619+ else throw(($getType(ad) + " couldn't be cast to Boolean"))
620+ }
621+ let cf = {
622+ let ad = invoke(cd, "isVerifiedREADONLY", [E], nil)
623+ if ($isInstanceOf(ad, "Boolean"))
624+ then ad
625+ else throw(($getType(ad) + " couldn't be cast to Boolean"))
626+ }
627+ let cg = if (if (if (if (!(bD))
628+ then bW
629+ else false)
630+ then ce
631+ else false)
632+ then cf
633+ else false)
634+ then invoke(ai, "setWxEmissionPoolLabel", [D, E], nil)
635+ else unit
636+ if ((cg == cg))
623637 then {
624- let ce = if (if (bC)
638+ let bz = valueOrElse(getInteger(this, P(bZ)), 0)
639+ let bR = valueOrElse(getInteger(this, J(B, bZ)), 0)
640+ let ch = if (if (if ((bz == 0))
625641 then true
626- else bX)
627- then nil
628- else ([DeleteEntry(z(A))] ++ aU(aD, bH))
629- $Tuple2(([IntegerEntry(M(A, bY), cc)] ++ ce), false)
642+ else !(bD))
643+ then true
644+ else !(bW))
645+ then 0
646+ else fraction(bR, b, bz)
647+ let ci = invoke(ai, "modifyWeight", [az, ch], nil)
648+ if ((ci == ci))
649+ then $Tuple2([IntegerEntry(N(B, bZ), ch)], false)
650+ else throw("Strict value is not equal to itself.")
630651 }
631652 else throw("Strict value is not equal to itself.")
632653 }
633654 else throw("Strict value is not equal to itself.")
634655 }
635656 else throw("Strict value is not equal to itself.")
636657 }
637658 else throw("Strict value is not equal to itself.")
638659 }
639660
640661
641662
642-@Callable(bc)
663+@Callable(bd)
643664 func finalizeHelper () = {
644- let bX = valueOrElse(getBoolean(w), false)
665+ let bY = valueOrElse(getBoolean(x), false)
645666 let i = valueOrElse(getInteger(this, j), 0)
646- let cf = (i - 1)
647- let bs = ad(this, x(i))
648- let bm = ad(this, f)
649- let bt = (bs + bm)
650- let bu = getInteger(this, q)
651- if (if (if ((height >= bt))
652- then (bu == unit)
667+ let cj = (i - 1)
668+ let bt = ae(this, y(i))
669+ let bn = ae(this, f)
670+ let bu = (bt + bn)
671+ let bv = getInteger(this, r)
672+ if (if (if ((height >= bu))
673+ then (bv == unit)
653674 else false)
654- then !(bX)
675+ then !(bY)
655676 else false)
656677 then {
657- let cg = (i + 1)
658- let ch = getInteger(this, g)
659- let ci = {
660- let Y = ch
661- if ($isInstanceOf(Y, "Int"))
678+ let ck = (i + 1)
679+ let cl = getInteger(this, g)
680+ let cm = {
681+ let Z = cl
682+ if ($isInstanceOf(Z, "Int"))
662683 then {
663- let bF = Y
664-[IntegerEntry(f, bF), DeleteEntry(g)]
684+ let bG = Z
685+[IntegerEntry(f, bG), DeleteEntry(g)]
665686 }
666- else if ($isInstanceOf(Y, "Unit"))
687+ else if ($isInstanceOf(Z, "Unit"))
667688 then nil
668689 else throw("Match error")
669690 }
670- $Tuple2(([IntegerEntry(x(cg), height), IntegerEntry(t, height), IntegerEntry(j, cg), IntegerEntry(q, d), IntegerEntry(h(i), bm)] ++ ci), true)
691+ $Tuple2(([IntegerEntry(y(ck), height), IntegerEntry(u, height), IntegerEntry(j, ck), IntegerEntry(r, d), IntegerEntry(h(i), bn)] ++ cm), true)
671692 }
672- else if (if (bX)
673- then (bu == unit)
693+ else if (if (bY)
694+ then (bv == unit)
674695 else false)
675- then $Tuple2([IntegerEntry(q, e)], true)
676- else if ((bu == unit))
696+ then $Tuple2([IntegerEntry(r, e)], true)
697+ else if ((bv == unit))
677698 then $Tuple2(nil, false)
678- else if ((bu == d))
699+ else if ((bv == d))
679700 then {
680- let cj = getString(r)
681- let ck = getString(s)
682- let Y = cj
683- if ($isInstanceOf(Y, "Unit"))
701+ let cn = getString(s)
702+ let co = getString(t)
703+ let Z = cn
704+ if ($isInstanceOf(Z, "Unit"))
684705 then {
685- let cl = getString(aG(aD))
686- if ($isInstanceOf(cl, "Unit"))
687- then $Tuple2([IntegerEntry(q, e), DeleteEntry(r), DeleteEntry(s)], true)
688- else if ($isInstanceOf(cl, "String"))
706+ let cp = getString(aH(aE))
707+ if ($isInstanceOf(cp, "Unit"))
708+ then $Tuple2([IntegerEntry(r, e), DeleteEntry(s), DeleteEntry(t)], true)
709+ else if ($isInstanceOf(cp, "String"))
689710 then {
690- let cm = cl
691- $Tuple2([StringEntry(r, cm)], true)
711+ let cq = cp
712+ $Tuple2([StringEntry(s, cq)], true)
692713 }
693714 else throw("Match error")
694715 }
695- else if ($isInstanceOf(Y, "String"))
716+ else if ($isInstanceOf(Z, "String"))
696717 then {
697- let bH = Y
698- let A = af(bH)
699- let cn = {
700- let cl = ck
701- if ($isInstanceOf(cl, "Unit"))
702- then getString(aG(aE(A)))
703- else if ($isInstanceOf(cl, "String"))
718+ let bI = Z
719+ let B = ag(bI)
720+ let cr = {
721+ let cp = co
722+ if ($isInstanceOf(cp, "Unit"))
723+ then getString(aH(aF(B)))
724+ else if ($isInstanceOf(cp, "String"))
704725 then {
705- let co = cl
706- let cp = getString(aM(aE(A), co))
707- if ((cp == cp))
726+ let cs = cp
727+ let ct = getString(aN(aF(B), cs))
728+ if ((ct == ct))
708729 then {
709- let cq = invoke(this, "processVoteINTERNAL", [bH, co], nil)
710- if ((cq == cq))
711- then cp
730+ let cu = invoke(this, "processVoteINTERNAL", [bI, cs], nil)
731+ if ((cu == cu))
732+ then ct
712733 else throw("Strict value is not equal to itself.")
713734 }
714735 else throw("Strict value is not equal to itself.")
715736 }
716737 else throw("Match error")
717738 }
718- let cl = cn
719- if ($isInstanceOf(cl, "Unit"))
739+ let cp = cr
740+ if ($isInstanceOf(cp, "Unit"))
720741 then {
721- let cr = getString(aM(aD, bH))
722- let cs = cr
723- if ($isInstanceOf(cs, "Unit"))
724- then $Tuple2([IntegerEntry(q, e), DeleteEntry(r), DeleteEntry(s)], true)
725- else if ($isInstanceOf(cs, "String"))
742+ let cv = getString(aN(aE, bI))
743+ let cw = cv
744+ if ($isInstanceOf(cw, "Unit"))
745+ then $Tuple2([IntegerEntry(r, e), DeleteEntry(s), DeleteEntry(t)], true)
746+ else if ($isInstanceOf(cw, "String"))
726747 then {
727- let aY = cs
728- $Tuple2([StringEntry(r, aY), DeleteEntry(s)], true)
748+ let aZ = cw
749+ $Tuple2([StringEntry(s, aZ), DeleteEntry(t)], true)
729750 }
730751 else throw("Match error")
731752 }
732- else if ($isInstanceOf(cl, "String"))
753+ else if ($isInstanceOf(cp, "String"))
733754 then {
734- let ct = cl
735- $Tuple2([StringEntry(s, ct)], true)
755+ let cx = cp
756+ $Tuple2([StringEntry(t, cx)], true)
736757 }
737758 else throw("Match error")
738759 }
739760 else throw("Match error")
740761 }
741- else if ((bu == e))
762+ else if ((bv == e))
742763 then {
743- let cj = getString(r)
744- let Y = cj
745- if ($isInstanceOf(Y, "Unit"))
764+ let cn = getString(s)
765+ let Z = cn
766+ if ($isInstanceOf(Z, "Unit"))
746767 then {
747- let cl = getString(aG(aD))
748- if ($isInstanceOf(cl, "Unit"))
768+ let cp = getString(aH(aE))
769+ if ($isInstanceOf(cp, "Unit"))
749770 then {
750- let bW = if (bX)
751- then [DeleteEntry(q), DeleteEntry(w)]
752- else [DeleteEntry(q), BooleanEntry(y(cf), true), IntegerEntry(u, i), IntegerEntry(v, bs)]
753- let cu = aB()
754- if ((cu == cu))
755- then $Tuple2(bW, true)
771+ let bX = if (bY)
772+ then [DeleteEntry(r), DeleteEntry(x)]
773+ else [DeleteEntry(r), BooleanEntry(z(cj), true), IntegerEntry(v, i), IntegerEntry(w, bt)]
774+ let cy = aC()
775+ if ((cy == cy))
776+ then $Tuple2(bX, true)
756777 else throw("Strict value is not equal to itself.")
757778 }
758- else if ($isInstanceOf(cl, "String"))
779+ else if ($isInstanceOf(cp, "String"))
759780 then {
760- let cv = cl
761- $Tuple2([StringEntry(r, cv)], true)
781+ let cz = cp
782+ $Tuple2([StringEntry(s, cz)], true)
762783 }
763784 else throw("Match error")
764785 }
765- else if ($isInstanceOf(Y, "String"))
786+ else if ($isInstanceOf(Z, "String"))
766787 then {
767- let bH = Y
768- let cr = getString(aM(aD, bH))
769- if ((cr == cr))
788+ let bI = Z
789+ let cv = getString(aN(aE, bI))
790+ if ((cv == cv))
770791 then {
771- let cb = {
772- let ac = invoke(this, "processPoolINTERNAL", [bH, bX], nil)
773- if ($isInstanceOf(ac, "Boolean"))
774- then ac
775- else throw(($getType(ac) + " couldn't be cast to Boolean"))
792+ let cc = {
793+ let ad = invoke(this, "processPoolINTERNAL", [bI, bY], nil)
794+ if ($isInstanceOf(ad, "Boolean"))
795+ then ad
796+ else throw(($getType(ad) + " couldn't be cast to Boolean"))
776797 }
777- if ((cb == cb))
778- then if (cb)
798+ if ((cc == cc))
799+ then if (cc)
779800 then $Tuple2(nil, true)
780801 else {
781- let cl = cr
782- if ($isInstanceOf(cl, "Unit"))
802+ let cp = cv
803+ if ($isInstanceOf(cp, "Unit"))
783804 then {
784- let bW = if (bX)
785- then [DeleteEntry(q), DeleteEntry(w), DeleteEntry(r)]
786- else [DeleteEntry(q), BooleanEntry(y(cf), true), IntegerEntry(u, i), IntegerEntry(v, bs), DeleteEntry(r)]
787- let cu = aB()
788- if ((cu == cu))
789- then $Tuple2(bW, true)
805+ let bX = if (bY)
806+ then [DeleteEntry(r), DeleteEntry(x), DeleteEntry(s)]
807+ else [DeleteEntry(r), BooleanEntry(z(cj), true), IntegerEntry(v, i), IntegerEntry(w, bt), DeleteEntry(s)]
808+ let cy = aC()
809+ if ((cy == cy))
810+ then $Tuple2(bX, true)
790811 else throw("Strict value is not equal to itself.")
791812 }
792- else if ($isInstanceOf(cl, "String"))
813+ else if ($isInstanceOf(cp, "String"))
793814 then {
794- let cv = cl
795- $Tuple2([StringEntry(r, cv)], true)
815+ let cz = cp
816+ $Tuple2([StringEntry(s, cz)], true)
796817 }
797818 else throw("Match error")
798819 }
799820 else throw("Strict value is not equal to itself.")
800821 }
801822 else throw("Strict value is not equal to itself.")
802823 }
803824 else throw("Match error")
804825 }
805- else T("finalization is broken")
826+ else U("finalization is broken")
806827 }
807828
808829
809830
810-@Callable(bc)
811-func finalizeWrapper (cw) = {
812- let cx = addressFromStringValue(getStringValue(this, m))
813- let cy = {
814- let ac = invoke(this, "finalizeHelper", nil, nil)
815- if ($isInstanceOf(ac, "Boolean"))
816- then ac
817- else throw(($getType(ac) + " couldn't be cast to Boolean"))
831+@Callable(bd)
832+func finalizeWrapper (cA) = {
833+ let cB = addressFromStringValue(getStringValue(this, m))
834+ let cC = {
835+ let ad = invoke(this, "finalizeHelper", nil, nil)
836+ if ($isInstanceOf(ad, "Boolean"))
837+ then ad
838+ else throw(($getType(ad) + " couldn't be cast to Boolean"))
818839 }
819- if ((cy == cy))
820- then if (!(cy))
821- then if ((cw == 0))
822- then T("Current voting is not over yet")
840+ if ((cC == cC))
841+ then if (!(cC))
842+ then if ((cA == 0))
843+ then U("Current voting is not over yet")
823844 else {
824- let cz = invoke(cx, "finalize", nil, nil)
825- if ((cz == cz))
845+ let cD = invoke(cB, "finalize", nil, nil)
846+ if ((cD == cD))
826847 then $Tuple2(nil, unit)
827848 else throw("Strict value is not equal to itself.")
828849 }
829850 else {
830- let cA = valueOrElse(getInteger(this, k), c)
831- if ((cA > cw))
851+ let cE = valueOrElse(getInteger(this, k), c)
852+ if ((cE > cA))
832853 then {
833- let cz = invoke(this, "finalizeWrapper", [(cw + 1)], nil)
834- if ((cz == cz))
854+ let cD = invoke(this, "finalizeWrapper", [(cA + 1)], nil)
855+ if ((cD == cD))
835856 then $Tuple2(nil, unit)
836857 else throw("Strict value is not equal to itself.")
837858 }
838859 else $Tuple2(nil, unit)
839860 }
840861 else throw("Strict value is not equal to itself.")
841862 }
842863
843864
844865
845-@Callable(bc)
866+@Callable(bd)
846867 func finalize () = {
847- let cz = invoke(this, "finalizeWrapper", [0], nil)
848- if ((cz == cz))
868+ let cD = invoke(this, "finalizeWrapper", [0], nil)
869+ if ((cD == cD))
849870 then $Tuple2(nil, unit)
850871 else throw("Strict value is not equal to itself.")
851872 }
852873
853874
854875
855-@Callable(bc)
856-func containsNodeREADONLY (aH,aL) = $Tuple2(nil, aN(aH, aL))
876+@Callable(bd)
877+func containsNodeREADONLY (aI,aM) = $Tuple2(nil, aO(aI, aM))
857878
858879
859880
860-@Callable(bc)
861-func insertNode (aH,aL) = {
862- let bI = be(bc)
863- if ((bI == bI))
864- then $Tuple2(aR(aH, aL), unit)
881+@Callable(bd)
882+func insertNode (aI,aM) = {
883+ let bJ = bf(bd)
884+ if ((bJ == bJ))
885+ then $Tuple2(aS(aI, aM), unit)
865886 else throw("Strict value is not equal to itself.")
866887 }
867888
868889
869890
870-@Callable(bc)
871-func deleteNode (aH,aL) = {
872- let bI = be(bc)
873- if ((bI == bI))
874- then $Tuple2(aU(aH, aL), unit)
891+@Callable(bd)
892+func deleteNode (aI,aM) = {
893+ let bJ = bf(bd)
894+ if ((bJ == bJ))
895+ then $Tuple2(aV(aI, aM), unit)
875896 else throw("Strict value is not equal to itself.")
876897 }
877898
878899
879900
880-@Callable(bc)
901+@Callable(bd)
881902 func isFinalizationInProgress () = {
882- let bu = getInteger(this, q)
883- let cB = (bu != unit)
884- $Tuple2(nil, cB)
903+ let bv = getInteger(this, r)
904+ let cF = (bv != unit)
905+ $Tuple2(nil, cF)
885906 }
886907
887908
888909
889-@Callable(bc)
890-func deletePool (C,D) = {
891- let bI = if (if ((bc.caller == ah))
910+@Callable(bd)
911+func deletePool (D,E) = {
912+ let bJ = if (if ((bd.caller == ai))
892913 then true
893- else be(bc))
914+ else bf(bd))
894915 then true
895- else T("Permission denied")
896- if ((bI == bI))
916+ else U("Permission denied")
917+ if ((bJ == bJ))
897918 then {
898- let aH = "pools"
899- let A = $Tuple2(C, D)
900- let aL = makeString([C, D], a)
901- let bW = if (aN(aH, aL))
902- then aU(aH, aL)
919+ let aI = "pools"
920+ let B = $Tuple2(D, E)
921+ let aM = makeString([D, E], a)
922+ let bX = if (aO(aI, aM))
923+ then aV(aI, aM)
903924 else nil
904- ([DeleteEntry(z(A))] ++ bW)
925+ ([DeleteEntry(A(B))] ++ bX)
905926 }
906927 else throw("Strict value is not equal to itself.")
907928 }
908929
909930
910-@Verifier(cC)
911-func cD () = {
912- let cE = {
913- let Y = aZ()
914- if ($isInstanceOf(Y, "ByteVector"))
931+@Verifier(cG)
932+func cH () = {
933+ let cI = {
934+ let Z = ba()
935+ if ($isInstanceOf(Z, "ByteVector"))
915936 then {
916- let bd = Y
917- bd
937+ let be = Z
938+ be
918939 }
919- else if ($isInstanceOf(Y, "Unit"))
920- then cC.senderPublicKey
940+ else if ($isInstanceOf(Z, "Unit"))
941+ then cG.senderPublicKey
921942 else throw("Match error")
922943 }
923- sigVerify(cC.bodyBytes, cC.proofs[0], cE)
944+ sigVerify(cG.bodyBytes, cG.proofs[0], cI)
924945 }
925946

github/deemru/w8io/3ef1775 
550.42 ms