tx · 5AZ7KJKEmakie8GpoCoLNB3hDNFPHPsJ9ydVKp3c3n4N

3MrqFfv385KAzAqqdQyprR7FMLSapeifggB:  -0.01000000 Waves

2022.11.28 14:22 [2336885] smart account 3MrqFfv385KAzAqqdQyprR7FMLSapeifggB > SELF 0.00000000 Waves

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

github/deemru/w8io/169f3d6 
50.20 ms