tx · 7mZrmwvKersWKeDmFSf7bYaKxS6iWvcC5JBHqyV7HKMZ

3Mu2Rf9Lq4qKYnDt7zKJ4fa8tXvaAQVwJVE:  -0.01000000 Waves

2023.07.23 18:32 [2678681] smart account 3Mu2Rf9Lq4qKYnDt7zKJ4fa8tXvaAQVwJVE > SELF 0.00000000 Waves

{ "type": 13, "id": "7mZrmwvKersWKeDmFSf7bYaKxS6iWvcC5JBHqyV7HKMZ", "fee": 1000000, "feeAssetId": null, "timestamp": 1690126418961, "version": 2, "chainId": 84, "sender": "3Mu2Rf9Lq4qKYnDt7zKJ4fa8tXvaAQVwJVE", "senderPublicKey": "5ijzyZ48KXTRHdsMMmAhd26WNdWJeMvGb7uh9jZHBkqb", "proofs": [ "42PKwvqtHSKg7NzePRK12WQDd67Ks8cqyv3VaARSKpS6eCqsqwCMtN2DBXZRvhNrpVP4DKyqg12AjH2zGpDiUXB4" ], "script": "base64:BgIgCAISBgoECAgBARIECgIBBBIDCgEBEgQKAgEEEgMKAQETAANTRVACAl9fARBibG9ja0hlaWdodEVycm9yAAkAAgECL1RoZSBibG9jaydzIGhlaWdodCBpcyB0b28gYmlnIGZvciB0aGlzIHByb3Bvc2FsARBhbHJlYWR5Vm90ZUVycm9yAAkAAgECFllvdSBoYXZlIGFscmVhZHkgdm90ZWQBC25vVm90ZUVycm9yAAkAAgECGllvdSBoYXZlIG5vdCBhbHJlYWR5IHZvdGVkARJnd3hDb250cmFjdEFkZHJlc3MACQC5CQIJAMwIAgICJXMJAMwIAgISZ3d4Q29udHJhY3RBZGRyZXNzBQNuaWwFA1NFUAEPa2V5Q3VycmVudEluZGV4AAkAuQkCCQDMCAICAiVzCQDMCAICDGN1cnJlbnRJbmRleAUDbmlsBQNTRVABD2tleVByb3Bvc2FsSW5mbwEGbnVtYmVyCQC5CQIJAMwIAgIEJXMlZAkAzAgCAgxwcm9wb3NhbEluZm8JAMwIAgkApAMBBQZudW1iZXIFA25pbAUDU0VQARZrZXlQcm9wb3NhbERlc2NyaXB0aW9uAQZudW1iZXIJALkJAgkAzAgCAgQlcyVkCQDMCAICE3Byb3Bvc2FsRGVzY3JpcHRpb24JAMwIAgkApAMBBQZudW1iZXIFA25pbAUDU0VQARVrZXlVc2VyVm90ZU9uUHJvcG9zYWwCBm51bWJlcgR1c2VyCQC5CQIJAMwIAgIGJXMlZCVzCQDMCAICEnVzZXJWb3RlT25Qcm9wb3NhbAkAzAgCCQCkAwEFBm51bWJlcgkAzAgCBQR1c2VyBQNuaWwFA1NFUAETa2V5TWFuYWdlclB1YmxpY0tleQACFCVzX19tYW5hZ2VyUHVibGljS2V5ARZrZXlNYW5hZ2VyVmF1bHRBZGRyZXNzAAIXJXNfX21hbmFnZXJWYXVsdEFkZHJlc3MBD2dldEN1cnJlbnRJbmRleAAJARFAZXh0ck5hdGl2ZSgxMDUwKQIFBHRoaXMJAQ9rZXlDdXJyZW50SW5kZXgAARxnZXRNYW5hZ2VyVmF1bHRBZGRyZXNzT3JUaGlzAAQHJG1hdGNoMAkAoggBCQEWa2V5TWFuYWdlclZhdWx0QWRkcmVzcwADCQABAgUHJG1hdGNoMAIGU3RyaW5nBAFzBQckbWF0Y2gwCQERQGV4dHJOYXRpdmUoMTA2MikBBQFzBQR0aGlzARJmb3JtYXRQcm9wb3NhbEluZm8FBG5hbWUDZW5kDHF1b3J1bU51bWJlcg1wb3NpdGl2ZVZvdGVzDW5lZ2F0aXZlVm90ZXMJALkJAgkAzAgCAgolZCVkJWQlZCVkCQDMCAIFBG5hbWUJAMwIAgUDZW5kCQDMCAIFDHF1b3J1bU51bWJlcgkAzAgCBQ1wb3NpdGl2ZVZvdGVzCQDMCAIFDW5lZ2F0aXZlVm90ZXMFA25pbAUDU0VQARhmb3JtYXRVc2VyVm90ZU9uUHJvcG9zYWwCBHZvdGUJZ3d4TnVtYmVyCQC5CQIJAMwIAgIEJWQlZAkAzAgCBQR2b3RlCQDMCAIFCWd3eE51bWJlcgUDbmlsBQNTRVABBWFzSW50AQN2YWwEByRtYXRjaDAFA3ZhbAMJAAECBQckbWF0Y2gwAgNJbnQEBnZhbEludAUHJG1hdGNoMAUGdmFsSW50CQACAQIVZmFpbCB0byBjYXN0IGludG8gSW50ARZtYW5hZ2VyUHVibGljS2V5T3JVbml0AAQTbWFuYWdlclZhdWx0QWRkcmVzcwkBHGdldE1hbmFnZXJWYXVsdEFkZHJlc3NPclRoaXMABAckbWF0Y2gwCQCdCAIFE21hbmFnZXJWYXVsdEFkZHJlc3MJARNrZXlNYW5hZ2VyUHVibGljS2V5AAMJAAECBQckbWF0Y2gwAgZTdHJpbmcEAXMFByRtYXRjaDAJANkEAQUBcwMJAAECBQckbWF0Y2gwAgRVbml0BQR1bml0CQACAQILTWF0Y2ggZXJyb3IBCWlzTWFuYWdlcgEBaQQHJG1hdGNoMAkBFm1hbmFnZXJQdWJsaWNLZXlPclVuaXQAAwkAAQIFByRtYXRjaDACCkJ5dGVWZWN0b3IEAnBrBQckbWF0Y2gwCQAAAggFAWkPY2FsbGVyUHVibGljS2V5BQJwawMJAAECBQckbWF0Y2gwAgRVbml0CQAAAggFAWkGY2FsbGVyBQR0aGlzCQACAQILTWF0Y2ggZXJyb3IBC211c3RNYW5hZ2VyAQFpAwkBCWlzTWFuYWdlcgEFAWkGCQACAQIRcGVybWlzc2lvbiBkZW5pZWQFAWkBDHN0YXJ0TmV3Vm90ZQQEbmFtZQtkZXNjcmlwdGlvbhBleHBpcmF0aW9uSGVpZ2h0DHF1b3J1bU51bWJlcgQIdGhlSW5kZXgAAAkAzAgCCQEMSW50ZWdlckVudHJ5AgkBD2tleUN1cnJlbnRJbmRleAAJAGQCBQh0aGVJbmRleAABCQDMCAIJAQtTdHJpbmdFbnRyeQIJAQ9rZXlQcm9wb3NhbEluZm8BBQh0aGVJbmRleAkBEmZvcm1hdFByb3Bvc2FsSW5mbwUFBG5hbWUJAKQDAQkAZAIIBQlsYXN0QmxvY2sGaGVpZ2h0BRBleHBpcmF0aW9uSGVpZ2h0CQCkAwEFDHF1b3J1bU51bWJlcgIBMAIBMAkAzAgCCQELU3RyaW5nRW50cnkCCQEWa2V5UHJvcG9zYWxEZXNjcmlwdGlvbgEFCHRoZUluZGV4BQtkZXNjcmlwdGlvbgUDbmlsAWkBB3ZvdGVGb3ICDXByb3Bvc2FsSW5kZXgGY2hvaWNlBAVFTVBUWQIFRU1QVFkECHZvdGVJbmZvCQELdmFsdWVPckVsc2UCCQCdCAIFBHRoaXMJAQ9rZXlQcm9wb3NhbEluZm8BBQ1wcm9wb3NhbEluZGV4BQVFTVBUWQQNdm90ZUluZm9BcnJheQkAtQkCBQh2b3RlSW5mbwUDU0VQBAx1c2VyVm90ZUluZm8JAQt2YWx1ZU9yRWxzZQIJAJ0IAgUEdGhpcwkBFWtleVVzZXJWb3RlT25Qcm9wb3NhbAIFDXByb3Bvc2FsSW5kZXgJAKUIAQgFAWkGY2FsbGVyBQVFTVBUWQQGY2hlY2tzCQDMCAIDCQECIT0CBQh2b3RlSW5mbwUFRU1QVFkGCQACAQIMTm8gc3VjaCB2b3RlCQDMCAIDCQBmAgkBBXZhbHVlAQkAtgkBCQCRAwIFDXZvdGVJbmZvQXJyYXkAAggFCWxhc3RCbG9jawZoZWlnaHQGCQEQYmxvY2tIZWlnaHRFcnJvcgAJAMwIAgMJAAACBQx1c2VyVm90ZUluZm8FBUVNUFRZBgkBEGFscmVhZHlWb3RlRXJyb3IABQNuaWwDCQAAAgUGY2hlY2tzBQZjaGVja3MECWd3eE51bWJlcgkBBWFzSW50AQkA/AcECQERQGV4dHJOYXRpdmUoMTA2MikBCQERQGV4dHJOYXRpdmUoMTA1OCkBCQESZ3d4Q29udHJhY3RBZGRyZXNzAAIgZ2V0VXNlckd3eEFtb3VudEF0SGVpZ2h0UkVBRE9OTFkJAMwIAgkApQgBCAUBaQZjYWxsZXIJAMwIAgkBBXZhbHVlAQkAtgkBCQCRAwIFDXZvdGVJbmZvQXJyYXkAAgUDbmlsBQNuaWwECyR0MDM1MTY0NTUyAwUGY2hvaWNlBAdhY3Rpb24xCQELU3RyaW5nRW50cnkCCQEPa2V5UHJvcG9zYWxJbmZvAQUNcHJvcG9zYWxJbmRleAkBEmZvcm1hdFByb3Bvc2FsSW5mbwUJAJEDAgUNdm90ZUluZm9BcnJheQABCQCRAwIFDXZvdGVJbmZvQXJyYXkAAgkAkQMCBQ12b3RlSW5mb0FycmF5AAMJAKQDAQkAZAIJAQV2YWx1ZQEJALYJAQkAkQMCBQ12b3RlSW5mb0FycmF5AAQFCWd3eE51bWJlcgkAkQMCBQ12b3RlSW5mb0FycmF5AAUEB2FjdGlvbjIJAQtTdHJpbmdFbnRyeQIJARVrZXlVc2VyVm90ZU9uUHJvcG9zYWwCBQ1wcm9wb3NhbEluZGV4CQClCAEIBQFpBmNhbGxlcgkBGGZvcm1hdFVzZXJWb3RlT25Qcm9wb3NhbAICATEJAKQDAQUJZ3d4TnVtYmVyCQCUCgIFB2FjdGlvbjEFB2FjdGlvbjIEB2FjdGlvbjEJAQtTdHJpbmdFbnRyeQIJAQ9rZXlQcm9wb3NhbEluZm8BBQ1wcm9wb3NhbEluZGV4CQESZm9ybWF0UHJvcG9zYWxJbmZvBQkAkQMCBQ12b3RlSW5mb0FycmF5AAEJAJEDAgUNdm90ZUluZm9BcnJheQACCQCRAwIFDXZvdGVJbmZvQXJyYXkAAwkAkQMCBQ12b3RlSW5mb0FycmF5AAQJAKQDAQkAZAIJAQV2YWx1ZQEJALYJAQkAkQMCBQ12b3RlSW5mb0FycmF5AAUFCWd3eE51bWJlcgQHYWN0aW9uMgkBC1N0cmluZ0VudHJ5AgkBFWtleVVzZXJWb3RlT25Qcm9wb3NhbAIFDXByb3Bvc2FsSW5kZXgJAKUIAQgFAWkGY2FsbGVyCQEYZm9ybWF0VXNlclZvdGVPblByb3Bvc2FsAgIBMAkApAMBBQlnd3hOdW1iZXIJAJQKAgUHYWN0aW9uMQUHYWN0aW9uMgQHYWN0aW9uMQgFCyR0MDM1MTY0NTUyAl8xBAdhY3Rpb24yCAULJHQwMzUxNjQ1NTICXzIJAMwIAgUHYWN0aW9uMQkAzAgCBQdhY3Rpb24yBQNuaWwJAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4BaQEKZGVsZXRlVm90ZQENcHJvcG9zYWxJbmRleAQFRU1QVFkCBUVNUFRZBAh2b3RlSW5mbwkBC3ZhbHVlT3JFbHNlAgkAnQgCBQR0aGlzCQEPa2V5UHJvcG9zYWxJbmZvAQUNcHJvcG9zYWxJbmRleAUFRU1QVFkEDXZvdGVJbmZvQXJyYXkJALUJAgUIdm90ZUluZm8FA1NFUAQMdXNlclZvdGVJbmZvCQELdmFsdWVPckVsc2UCCQCdCAIFBHRoaXMJARVrZXlVc2VyVm90ZU9uUHJvcG9zYWwCBQ1wcm9wb3NhbEluZGV4CQClCAEIBQFpBmNhbGxlcgUFRU1QVFkEEXVzZXJWb3RlSW5mb0FycmF5CQC1CQIFDHVzZXJWb3RlSW5mbwUDU0VQBAZjaGVja3MJAMwIAgMJAQIhPQIFCHZvdGVJbmZvBQVFTVBUWQYJAAIBAgxObyBzdWNoIHZvdGUJAMwIAgMJAGYCCQEFdmFsdWUBCQC2CQEJAJEDAgUNdm90ZUluZm9BcnJheQACCAUJbGFzdEJsb2NrBmhlaWdodAYJARBibG9ja0hlaWdodEVycm9yAAkAzAgCAwkBAiE9AgUMdXNlclZvdGVJbmZvBQVFTVBUWQYJAQtub1ZvdGVFcnJvcgAFA25pbAMJAAACBQZjaGVja3MFBmNoZWNrcwQGYWN0aW9uAwkAAAIJAJEDAgURdXNlclZvdGVJbmZvQXJyYXkAAQIBMQkBC1N0cmluZ0VudHJ5AgkBD2tleVByb3Bvc2FsSW5mbwEFDXByb3Bvc2FsSW5kZXgJARJmb3JtYXRQcm9wb3NhbEluZm8FCQCRAwIFDXZvdGVJbmZvQXJyYXkAAQkAkQMCBQ12b3RlSW5mb0FycmF5AAIJAJEDAgUNdm90ZUluZm9BcnJheQADCQCkAwEJAGUCCQEFdmFsdWUBCQC2CQEJAJEDAgUNdm90ZUluZm9BcnJheQAECQEFdmFsdWUBCQC2CQEJAJEDAgURdXNlclZvdGVJbmZvQXJyYXkAAgkAkQMCBQ12b3RlSW5mb0FycmF5AAUJAQtTdHJpbmdFbnRyeQIJAQ9rZXlQcm9wb3NhbEluZm8BBQ1wcm9wb3NhbEluZGV4CQESZm9ybWF0UHJvcG9zYWxJbmZvBQkAkQMCBQ12b3RlSW5mb0FycmF5AAEJAJEDAgUNdm90ZUluZm9BcnJheQACCQCRAwIFDXZvdGVJbmZvQXJyYXkAAwkAkQMCBQ12b3RlSW5mb0FycmF5AAQJAKQDAQkAZQIJAQV2YWx1ZQEJALYJAQkAkQMCBQ12b3RlSW5mb0FycmF5AAUJAQV2YWx1ZQEJALYJAQkAkQMCBRF1c2VyVm90ZUluZm9BcnJheQACCQDMCAIFBmFjdGlvbgkAzAgCCQELRGVsZXRlRW50cnkBCQEVa2V5VXNlclZvdGVPblByb3Bvc2FsAgUNcHJvcG9zYWxJbmRleAkApQgBCAUBaQZjYWxsZXIFA25pbAkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgFpAQpjaGFuZ2VWb3RlAg1wcm9wb3NhbEluZGV4BmNob2ljZQQFRU1QVFkCBUVNUFRZBAh2b3RlSW5mbwkBC3ZhbHVlT3JFbHNlAgkAnQgCBQR0aGlzCQEPa2V5UHJvcG9zYWxJbmZvAQUNcHJvcG9zYWxJbmRleAUFRU1QVFkEDXZvdGVJbmZvQXJyYXkJALUJAgUIdm90ZUluZm8FA1NFUAQMdXNlclZvdGVJbmZvCQELdmFsdWVPckVsc2UCCQCdCAIFBHRoaXMJARVrZXlVc2VyVm90ZU9uUHJvcG9zYWwCBQ1wcm9wb3NhbEluZGV4CQClCAEIBQFpBmNhbGxlcgUFRU1QVFkEEXVzZXJWb3RlSW5mb0FycmF5CQC1CQIFDHVzZXJWb3RlSW5mbwUDU0VQBAZjaGVja3MJAMwIAgMJAQIhPQIFCHZvdGVJbmZvBQVFTVBUWQYJAAIBAgxObyBzdWNoIHZvdGUJAMwIAgMJAGYCCQEFdmFsdWUBCQC2CQEJAJEDAgUNdm90ZUluZm9BcnJheQACCAUJbGFzdEJsb2NrBmhlaWdodAYJARBibG9ja0hlaWdodEVycm9yAAkAzAgCAwkBAiE9AgUMdXNlclZvdGVJbmZvBQVFTVBUWQYJAQtub1ZvdGVFcnJvcgAFA25pbAMJAAACBQZjaGVja3MFBmNoZWNrcwQJZ3d4TnVtYmVyCQEFYXNJbnQBCQD8BwQJARFAZXh0ck5hdGl2ZSgxMDYyKQEJARFAZXh0ck5hdGl2ZSgxMDU4KQEJARJnd3hDb250cmFjdEFkZHJlc3MAAiBnZXRVc2VyR3d4QW1vdW50QXRIZWlnaHRSRUFET05MWQkAzAgCCQClCAEIBQFpBmNhbGxlcgkAzAgCCQEFdmFsdWUBCQC2CQEJAJEDAgUNdm90ZUluZm9BcnJheQADBQNuaWwFA25pbAQLJHQwNjcyMDcwNTkDBQZjaG9pY2UECWZvck51bWJlcgUJZ3d4TnVtYmVyBA1hZ2FpbnN0TnVtYmVyAAAEDWNob2ljZUludGVnZXIAAQkAlQoDBQlmb3JOdW1iZXIFDWFnYWluc3ROdW1iZXIFDWNob2ljZUludGVnZXIECWZvck51bWJlcgAABA1hZ2FpbnN0TnVtYmVyBQlnd3hOdW1iZXIEDWNob2ljZUludGVnZXIAAAkAlQoDBQlmb3JOdW1iZXIFDWFnYWluc3ROdW1iZXIFDWNob2ljZUludGVnZXIEDHVzZXJQb3dlckZvcggFCyR0MDY3MjA3MDU5Al8xBBB1c2VyUG93ZXJBZ2FpbnN0CAULJHQwNjcyMDcwNTkCXzIECWNob2ljZUludAgFCyR0MDY3MjA3MDU5Al8zBAZhY3Rpb24DCQAAAgkAkQMCBRF1c2VyVm90ZUluZm9BcnJheQABAgExCQELU3RyaW5nRW50cnkCCQEPa2V5UHJvcG9zYWxJbmZvAQUNcHJvcG9zYWxJbmRleAkBEmZvcm1hdFByb3Bvc2FsSW5mbwUJAJEDAgUNdm90ZUluZm9BcnJheQABCQCRAwIFDXZvdGVJbmZvQXJyYXkAAgkAkQMCBQ12b3RlSW5mb0FycmF5AAMJAKQDAQkAZAIJAGUCCQEFdmFsdWUBCQC2CQEJAJEDAgUNdm90ZUluZm9BcnJheQAECQEFdmFsdWUBCQC2CQEJAJEDAgURdXNlclZvdGVJbmZvQXJyYXkAAgUMdXNlclBvd2VyRm9yCQCkAwEJAGQCCQEFdmFsdWUBCQC2CQEJAJEDAgUNdm90ZUluZm9BcnJheQAFBRB1c2VyUG93ZXJBZ2FpbnN0CQELU3RyaW5nRW50cnkCCQEPa2V5UHJvcG9zYWxJbmZvAQUNcHJvcG9zYWxJbmRleAkBEmZvcm1hdFByb3Bvc2FsSW5mbwUJAJEDAgUNdm90ZUluZm9BcnJheQABCQCRAwIFDXZvdGVJbmZvQXJyYXkAAgkAkQMCBQ12b3RlSW5mb0FycmF5AAMJAKQDAQkAZAIJAQV2YWx1ZQEJALYJAQkAkQMCBQ12b3RlSW5mb0FycmF5AAQFDHVzZXJQb3dlckZvcgkApAMBCQBkAgkAZQIJAQV2YWx1ZQEJALYJAQkAkQMCBQ12b3RlSW5mb0FycmF5AAUJAQV2YWx1ZQEJALYJAQkAkQMCBRF1c2VyVm90ZUluZm9BcnJheQACBRB1c2VyUG93ZXJBZ2FpbnN0CQDMCAIFBmFjdGlvbgkAzAgCCQELU3RyaW5nRW50cnkCCQEVa2V5VXNlclZvdGVPblByb3Bvc2FsAgUNcHJvcG9zYWxJbmRleAkApQgBCAUBaQZjYWxsZXIJARhmb3JtYXRVc2VyVm90ZU9uUHJvcG9zYWwCCQCkAwEFCWNob2ljZUludAkApAMBBQlnd3hOdW1iZXIFA25pbAkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgFpARFnZXRSZXN1bHRSRUFET05MWQENcHJvcG9zYWxJbmRleAQFRU1QVFkCBUVNUFRZBAh2b3RlSW5mbwkBC3ZhbHVlT3JFbHNlAgkAnQgCBQR0aGlzCQEPa2V5UHJvcG9zYWxJbmZvAQUNcHJvcG9zYWxJbmRleAUFRU1QVFkEDXZvdGVJbmZvQXJyYXkJALUJAgUIdm90ZUluZm8FA1NFUAQGY2hlY2tzCQDMCAIDCQECIT0CBQh2b3RlSW5mbwUFRU1QVFkGCQACAQIMTm8gc3VjaCB2b3RlBQNuaWwDCQAAAgUGY2hlY2tzBQZjaGVja3MEDHF1b3J1bU51bWJlcgkAkQMCBQ12b3RlSW5mb0FycmF5AAMEDXBvc2l0aXZlVm90ZXMJAJEDAgUNdm90ZUluZm9BcnJheQAEBA1uZWdhdGl2ZVZvdGVzCQCRAwIFDXZvdGVJbmZvQXJyYXkABQkAlAoCBQNuaWwJAMwIAgUNcG9zaXRpdmVWb3RlcwkAzAgCBQ1uZWdhdGl2ZVZvdGVzCQDMCAIFDHF1b3J1bU51bWJlcgUDbmlsCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuAD8DwCg=", "height": 2678681, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: HiRWTGLFXhvd4rcWzgjLj84pgXAYbvRknDuib86Tcswv Next: J1nDFoPMsnY56ZbtcBHMHYWsFDRsYQQYoX2iT93iZ9SW Diff:
OldNewDifferences
9898
9999 @Callable(G)
100100 func startNewVote (s,J,K,u) = {
101- let L = n()
101+ let L = 0
102102 [IntegerEntry(f(), (L + 1)), StringEntry(g(L), r(s, toString((lastBlock.height + K)), toString(u), "0", "0")), StringEntry(i(L), J)]
103103 }
104104
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 6 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let a = "__"
55
66 func b () = throw("The block's height is too big for this proposal")
77
88
99 func c () = throw("You have already voted")
1010
1111
1212 func d () = throw("You have not already voted")
1313
1414
1515 func e () = makeString(["%s", "gwxContractAddress"], a)
1616
1717
1818 func f () = makeString(["%s", "currentIndex"], a)
1919
2020
2121 func g (h) = makeString(["%s%d", "proposalInfo", toString(h)], a)
2222
2323
2424 func i (h) = makeString(["%s%d", "proposalDescription", toString(h)], a)
2525
2626
2727 func j (h,k) = makeString(["%s%d%s", "userVoteOnProposal", toString(h), k], a)
2828
2929
3030 func l () = "%s__managerPublicKey"
3131
3232
3333 func m () = "%s__managerVaultAddress"
3434
3535
3636 func n () = getIntegerValue(this, f())
3737
3838
3939 func o () = {
4040 let p = getString(m())
4141 if ($isInstanceOf(p, "String"))
4242 then {
4343 let q = p
4444 addressFromStringValue(q)
4545 }
4646 else this
4747 }
4848
4949
5050 func r (s,t,u,v,w) = makeString(["%d%d%d%d%d", s, t, u, v, w], a)
5151
5252
5353 func x (y,z) = makeString(["%d%d", y, z], a)
5454
5555
5656 func A (B) = {
5757 let p = B
5858 if ($isInstanceOf(p, "Int"))
5959 then {
6060 let C = p
6161 C
6262 }
6363 else throw("fail to cast into Int")
6464 }
6565
6666
6767 func D () = {
6868 let E = o()
6969 let p = getString(E, l())
7070 if ($isInstanceOf(p, "String"))
7171 then {
7272 let q = p
7373 fromBase58String(q)
7474 }
7575 else if ($isInstanceOf(p, "Unit"))
7676 then unit
7777 else throw("Match error")
7878 }
7979
8080
8181 func F (G) = {
8282 let p = D()
8383 if ($isInstanceOf(p, "ByteVector"))
8484 then {
8585 let H = p
8686 (G.callerPublicKey == H)
8787 }
8888 else if ($isInstanceOf(p, "Unit"))
8989 then (G.caller == this)
9090 else throw("Match error")
9191 }
9292
9393
9494 func I (G) = if (F(G))
9595 then true
9696 else throw("permission denied")
9797
9898
9999 @Callable(G)
100100 func startNewVote (s,J,K,u) = {
101- let L = n()
101+ let L = 0
102102 [IntegerEntry(f(), (L + 1)), StringEntry(g(L), r(s, toString((lastBlock.height + K)), toString(u), "0", "0")), StringEntry(i(L), J)]
103103 }
104104
105105
106106
107107 @Callable(G)
108108 func voteFor (M,N) = {
109109 let O = "EMPTY"
110110 let P = valueOrElse(getString(this, g(M)), O)
111111 let Q = split(P, a)
112112 let R = valueOrElse(getString(this, j(M, toString(G.caller))), O)
113113 let S = [if ((P != O))
114114 then true
115115 else throw("No such vote"), if ((value(parseInt(Q[2])) > lastBlock.height))
116116 then true
117117 else b(), if ((R == O))
118118 then true
119119 else c()]
120120 if ((S == S))
121121 then {
122122 let z = A(invoke(addressFromStringValue(getStringValue(e())), "getUserGwxAmountAtHeightREADONLY", [toString(G.caller), value(parseInt(Q[2]))], nil))
123123 let T = if (N)
124124 then {
125125 let U = StringEntry(g(M), r(Q[1], Q[2], Q[3], toString((value(parseInt(Q[4])) + z)), Q[5]))
126126 let V = StringEntry(j(M, toString(G.caller)), x("1", toString(z)))
127127 $Tuple2(U, V)
128128 }
129129 else {
130130 let U = StringEntry(g(M), r(Q[1], Q[2], Q[3], Q[4], toString((value(parseInt(Q[5])) + z))))
131131 let V = StringEntry(j(M, toString(G.caller)), x("0", toString(z)))
132132 $Tuple2(U, V)
133133 }
134134 let U = T._1
135135 let V = T._2
136136 [U, V]
137137 }
138138 else throw("Strict value is not equal to itself.")
139139 }
140140
141141
142142
143143 @Callable(G)
144144 func deleteVote (M) = {
145145 let O = "EMPTY"
146146 let P = valueOrElse(getString(this, g(M)), O)
147147 let Q = split(P, a)
148148 let R = valueOrElse(getString(this, j(M, toString(G.caller))), O)
149149 let W = split(R, a)
150150 let S = [if ((P != O))
151151 then true
152152 else throw("No such vote"), if ((value(parseInt(Q[2])) > lastBlock.height))
153153 then true
154154 else b(), if ((R != O))
155155 then true
156156 else d()]
157157 if ((S == S))
158158 then {
159159 let X = if ((W[1] == "1"))
160160 then StringEntry(g(M), r(Q[1], Q[2], Q[3], toString((value(parseInt(Q[4])) - value(parseInt(W[2])))), Q[5]))
161161 else StringEntry(g(M), r(Q[1], Q[2], Q[3], Q[4], toString((value(parseInt(Q[5])) - value(parseInt(W[2]))))))
162162 [X, DeleteEntry(j(M, toString(G.caller)))]
163163 }
164164 else throw("Strict value is not equal to itself.")
165165 }
166166
167167
168168
169169 @Callable(G)
170170 func changeVote (M,N) = {
171171 let O = "EMPTY"
172172 let P = valueOrElse(getString(this, g(M)), O)
173173 let Q = split(P, a)
174174 let R = valueOrElse(getString(this, j(M, toString(G.caller))), O)
175175 let W = split(R, a)
176176 let S = [if ((P != O))
177177 then true
178178 else throw("No such vote"), if ((value(parseInt(Q[2])) > lastBlock.height))
179179 then true
180180 else b(), if ((R != O))
181181 then true
182182 else d()]
183183 if ((S == S))
184184 then {
185185 let z = A(invoke(addressFromStringValue(getStringValue(e())), "getUserGwxAmountAtHeightREADONLY", [toString(G.caller), value(parseInt(Q[3]))], nil))
186186 let Y = if (N)
187187 then {
188188 let Z = z
189189 let aa = 0
190190 let ab = 1
191191 $Tuple3(Z, aa, ab)
192192 }
193193 else {
194194 let Z = 0
195195 let aa = z
196196 let ab = 0
197197 $Tuple3(Z, aa, ab)
198198 }
199199 let ac = Y._1
200200 let ad = Y._2
201201 let ae = Y._3
202202 let X = if ((W[1] == "1"))
203203 then StringEntry(g(M), r(Q[1], Q[2], Q[3], toString(((value(parseInt(Q[4])) - value(parseInt(W[2]))) + ac)), toString((value(parseInt(Q[5])) + ad))))
204204 else StringEntry(g(M), r(Q[1], Q[2], Q[3], toString((value(parseInt(Q[4])) + ac)), toString(((value(parseInt(Q[5])) - value(parseInt(W[2]))) + ad))))
205205 [X, StringEntry(j(M, toString(G.caller)), x(toString(ae), toString(z)))]
206206 }
207207 else throw("Strict value is not equal to itself.")
208208 }
209209
210210
211211
212212 @Callable(G)
213213 func getResultREADONLY (M) = {
214214 let O = "EMPTY"
215215 let P = valueOrElse(getString(this, g(M)), O)
216216 let Q = split(P, a)
217217 let S = [if ((P != O))
218218 then true
219219 else throw("No such vote")]
220220 if ((S == S))
221221 then {
222222 let u = Q[3]
223223 let v = Q[4]
224224 let w = Q[5]
225225 $Tuple2(nil, [v, w, u])
226226 }
227227 else throw("Strict value is not equal to itself.")
228228 }
229229
230230

github/deemru/w8io/03bedc9 
44.47 ms