tx · 7db296TdSDtxQ1aGsiUKGe6d1ajzxETUwyGbtqQDs644

3N9evuqxGecMq9hBmpdJu2VkMzdR5VNVrvK:  -0.02400000 Waves

2022.07.19 18:52 [2146838] smart account 3N9evuqxGecMq9hBmpdJu2VkMzdR5VNVrvK > SELF 0.00000000 Waves

{ "type": 13, "id": "7db296TdSDtxQ1aGsiUKGe6d1ajzxETUwyGbtqQDs644", "fee": 2400000, "feeAssetId": null, "timestamp": 1658245974925, "version": 2, "chainId": 84, "sender": "3N9evuqxGecMq9hBmpdJu2VkMzdR5VNVrvK", "senderPublicKey": "AHY8zupoYc6HPJ5fh1gQiGE9bNZSeifFbcQQ89okxVug", "proofs": [ "XtLxAiftxwfzYMvKH9uyYMpuoz62wtZg6TsFXwMpAAWCHRAukob6La1tgfmcHHDonbgWojBP3QoBvWdw41ujuU4" ], "script": "base64:BgIvCAISABIAEgASABIDCgEBEgASAwoBARIAEgASAwoBCBIECgIBARIDCgEIEgMKAQgEAAtTdGFrZWRUb2tlbgEg+a5dhaqgwfNcHhVklvUuRcimKrmAG+DKV13AJarHD1AAC0dvdmVyblRva2VuASABbIXC10DGLlfEc7PFC2dO3zpcxegcWHrOz/9RkZaZLQAUTGlrZVBhY2thZ2VBU0lNSUNvc3QJAGgCAAEAgMLXLwAWTGlrZVBhY2thZ2VUUk9JS0FOQ29zdAkAaAIABQCAwtcvDQFpAQtEZXZXaXRoZHJhdwAECmN1cnJlbnRLZXkJANgEAQgIBQFpBmNhbGxlcgVieXRlcwMJAAACBQpjdXJyZW50S2V5AiMzUDc0YnVIdDk4Qm5vakZjYVJFSlp0Yjk4S0R5VW1aR2VtSgQMRGV2Qm94QW1vdW50BAckbWF0Y2gwCQCaCAIFBHRoaXMCBkRldkJveAMJAAECBQckbWF0Y2gwAgNJbnQEAWEFByRtYXRjaDAFAWEAAAMJAGYCAAAFDERldkJveEFtb3VudAkAAgECEk5vdCBlbm91Z2ggYmFsYW5jZQkAzAgCCQEMSW50ZWdlckVudHJ5AgIGRGV2Qm94AAAJAMwIAgkBDlNjcmlwdFRyYW5zZmVyAwgFAWkGY2FsbGVyBQxEZXZCb3hBbW91bnQFC0dvdmVyblRva2VuBQNuaWwJAAIBAixZb3UgY2Fubm90IHdpdGhkcmF3IGFzIHlvdXIgYXJlIG5vdCB0aGUgRGV2LgFpARVXaXRoZHJhd1dlZWtseUVhcm5pbmcABBpDb250cmFjdFdhbGxldFN0YWtlQmFsYW5jZQkA8AcCBQR0aGlzBQtTdGFrZWRUb2tlbgQMTWF4RGVwb3NpdGVyBAckbWF0Y2gwCQCdCAIFBHRoaXMCDE1heERlcG9zaXRlcgMJAAECBQckbWF0Y2gwAgZTdHJpbmcEAWEFByRtYXRjaDAFAWECAAQSVXNlcldlZWtseUVhcm5pbmdzCQCsAgIJANgEAQgIBQFpBmNhbGxlcgVieXRlcwIMX1dlZWtFYXJuaW5nBAxTdGFrZUJhbGFuY2UEByRtYXRjaDAJAJoIAgUEdGhpcwIMU3Rha2VCYWxhbmNlAwkAAQIFByRtYXRjaDACA0ludAQBYQUHJG1hdGNoMAUBYQAABAtQcml6ZUFtb3VudAQHJG1hdGNoMAkAmggCBQR0aGlzAgdGdW5kQm94AwkAAQIFByRtYXRjaDACA0ludAQBYQUHJG1hdGNoMAUBYQAABBVIZWlnaHRUcmFuc2FjdEZ1bmRCb3gEByRtYXRjaDAJAJoIAgUEdGhpcwILUHJpemVIZWlnaHQDCQABAgUHJG1hdGNoMAIDSW50BAFhBQckbWF0Y2gwBQFhAAAEEFByaXplSGVpZ2h0VmFsdWUDAwkAAAIFFUhlaWdodFRyYW5zYWN0RnVuZEJveAAACQAAAgULUHJpemVBbW91bnQAAAcAAAMDCQAAAgUVSGVpZ2h0VHJhbnNhY3RGdW5kQm94AAAJAQIhPQIFC1ByaXplQW1vdW50AAAHBQZoZWlnaHQDAwkBAiE9AgUVSGVpZ2h0VHJhbnNhY3RGdW5kQm94AAAJAQIhPQIFC1ByaXplQW1vdW50AAAHBRVIZWlnaHRUcmFuc2FjdEZ1bmRCb3gAAAQKY3VycmVudEtleQkA2AQBCAgFAWkGY2FsbGVyBWJ5dGVzBAluZXdBbW91bnQEByRtYXRjaDAJAJoIAgUEdGhpcwUSVXNlcldlZWtseUVhcm5pbmdzAwkAAQIFByRtYXRjaDACA0ludAQBYQUHJG1hdGNoMAUBYQAAAwkAZgIAAAUJbmV3QW1vdW50CQACAQIeQ2FuJ3Qgd2l0aGRyYXcgbmVnYXRpdmUgYW1vdW50AwkAZgIAAAUJbmV3QW1vdW50CQACAQkArAICAkFVc2VyIGNhbm5vdCB3aXRoZHJhdyBtb3JlIHRoYW4gZGVwb3NpdGVkIGZ1bmRzLCBZb3VyIGRlcG9zaXQgaXM6IAkApAMBCQBpAgUJbmV3QW1vdW50AIDC1y8JAMwIAgkBDEludGVnZXJFbnRyeQIFElVzZXJXZWVrbHlFYXJuaW5ncwAACQDMCAIJAQxJbnRlZ2VyRW50cnkCAgtQcml6ZUhlaWdodAUQUHJpemVIZWlnaHRWYWx1ZQkAzAgCCQEMSW50ZWdlckVudHJ5AgIKTWF4RGVwb3NpdAAACQDMCAIJAQ5TY3JpcHRUcmFuc2ZlcgMIBQFpBmNhbGxlcgUJbmV3QW1vdW50BQtTdGFrZWRUb2tlbgUDbmlsAWkBClB1c2hSZXdhcmQABAxtaW5QdXNoQmxvY2sACgQNbWluU3Rha2VCbG9jawkAaAIABwCgCwQORGVsYXlBZnRlclB1c2gAPAQIV2FpdFRpbWUJAGgCAKALAAEEBm1pbnJlZgADBA5GaXJzdFB1c2hUaW1lcgkAaAIABwCgCwQXdXNlcldhbGxldEdvdmVybkJhbGFuY2UJAPAHAgkBB0FkZHJlc3MBCAgFAWkGY2FsbGVyBWJ5dGVzBQtHb3Zlcm5Ub2tlbgQDcG10AwkAAAIJAJADAQgFAWkIcGF5bWVudHMAAQkAkQMCCAUBaQhwYXltZW50cwAACQACAQIcQXR0YWNoZWQgcGF5bWVudCBpcyByZXF1aXJlZAQIVXNlclB1c2gJAKwCAgkA2AQBCAgFAWkGY2FsbGVyBWJ5dGVzAgVfUHVzaAQUVXNlckxhc3RQdXNoT2xkVmFsdWUEByRtYXRjaDAJAJoIAgUEdGhpcwUIVXNlclB1c2gDCQABAgUHJG1hdGNoMAIDSW50BAFhBQckbWF0Y2gwBQFhAAAEC1VzZXJSZWZzTnVtCQCsAgIJANgEAQgIBQFpBmNhbGxlcgVieXRlcwIFX3JlZnMEEFVzZXJSZWZzTnVtVmFsdWUEByRtYXRjaDAJAJoIAgUEdGhpcwULVXNlclJlZnNOdW0DCQABAgUHJG1hdGNoMAIDSW50BAFhBQckbWF0Y2gwBQFhAAAEEEhpZ2hlc3RQdXNoVmFsdWUEByRtYXRjaDAJAJoIAgUEdGhpcwILSGlnaGVzdFB1c2gDCQABAgUHJG1hdGNoMAIDSW50BAFhBQckbWF0Y2gwBQFhAAADCQBmAgUXdXNlcldhbGxldEdvdmVybkJhbGFuY2UIBQNwbXQGYW1vdW50AwMJAGYCCQBkAggFA3BtdAZhbW91bnQFFFVzZXJMYXN0UHVzaE9sZFZhbHVlBRBIaWdoZXN0UHVzaFZhbHVlCQAAAggFA3BtdAdhc3NldElkBQtHb3Zlcm5Ub2tlbgcEEVVzZXJMYXN0UHVzaEJsb2NrCQCsAgIJANgEAQgIBQFpBmNhbGxlcgVieXRlcwISX1VzZXJMYXN0UHVzaEJsb2NrBBJVc2VyTGFzdFN0YWtlQmxvY2sJAKwCAgkA2AQBCAgFAWkGY2FsbGVyBWJ5dGVzAhNfVXNlckxhc3RTdGFrZUJsb2NrBAlVc2VyU3Rha2UJAKwCAgkA2AQBCAgFAWkGY2FsbGVyBWJ5dGVzAghfU3Rha2luZwQaQ29udHJhY3RXYWxsZXRTdGFrZUJhbGFuY2UJAPAHAgUEdGhpcwULU3Rha2VkVG9rZW4EDFN0YWtlQmFsYW5jZQQHJG1hdGNoMAkAmggCBQR0aGlzAgxTdGFrZUJhbGFuY2UDCQABAgUHJG1hdGNoMAIDSW50BAFhBQckbWF0Y2gwBQFhAAAEC1ByaXplQW1vdW50BAckbWF0Y2gwCQCaCAIFBHRoaXMCB0Z1bmRCb3gDCQABAgUHJG1hdGNoMAIDSW50BAFhBQckbWF0Y2gwBQFhAAAEFUhlaWdodFRyYW5zYWN0RnVuZEJveAQHJG1hdGNoMAkAmggCBQR0aGlzAgtQcml6ZUhlaWdodAMJAAECBQckbWF0Y2gwAgNJbnQEAWEFByRtYXRjaDAFAWEAAAQQUHJpemVIZWlnaHRWYWx1ZQMDCQAAAgUVSGVpZ2h0VHJhbnNhY3RGdW5kQm94AAAJAAACBQtQcml6ZUFtb3VudAAABwAAAwMJAAACBRVIZWlnaHRUcmFuc2FjdEZ1bmRCb3gAAAkBAiE9AgULUHJpemVBbW91bnQAAAcFBmhlaWdodAMDCQECIT0CBRVIZWlnaHRUcmFuc2FjdEZ1bmRCb3gAAAkBAiE9AgULUHJpemVBbW91bnQAAAcFFUhlaWdodFRyYW5zYWN0RnVuZEJveAAABAtBY3R1YWxEZWxheQQHJG1hdGNoMAkAmggCBQR0aGlzAgVEZWxheQMJAAECBQckbWF0Y2gwAgNJbnQEAWEFByRtYXRjaDAFAWEAAAQSSGlnaGVzdFB1c2hBZGRyZXNzBAckbWF0Y2gwCQCaCAIFBHRoaXMCEkhpZ2hlc3RQdXNoQWRkcmVzcwMJAAECBQckbWF0Y2gwAgNJbnQEAWEFByRtYXRjaDAFAWEAAAQWVXNlckxhc3RQdXNoQmxvY2tWYWx1ZQQHJG1hdGNoMAkAmggCBQR0aGlzBRFVc2VyTGFzdFB1c2hCbG9jawMJAAECBQckbWF0Y2gwAgNJbnQEAWEFByRtYXRjaDAFAWEAAAQXVXNlckxhc3RTdGFrZUJsb2NrVmFsdWUEByRtYXRjaDAJAJoIAgUEdGhpcwUSVXNlckxhc3RTdGFrZUJsb2NrAwkAAQIFByRtYXRjaDACA0ludAQBYQUHJG1hdGNoMAUBYQAABA5Vc2VyU3Rha2VWYWx1ZQQHJG1hdGNoMAkAmggCBQR0aGlzBQlVc2VyU3Rha2UDCQABAgUHJG1hdGNoMAIDSW50BAFhBQckbWF0Y2gwBQFhAAAEDURldkJveEJhbGFuY2UEByRtYXRjaDAJAJoIAgUEdGhpcwIGRGV2Qm94AwkAAQIFByRtYXRjaDACA0ludAQBYQUHJG1hdGNoMAUBYQAABAxEZXZCb3hBbW91bnQJAGQCBQ1EZXZCb3hCYWxhbmNlCQBpAgkAaAIIBQNwbXQGYW1vdW50AAUA6AcEDVVzZXJQdXNodmFsdWUJAGQCCAUDcG10BmFtb3VudAUUVXNlckxhc3RQdXNoT2xkVmFsdWUECE5ld0RlbGF5AwMJAGYCBQZoZWlnaHQJAGQCCQBkAgUQUHJpemVIZWlnaHRWYWx1ZQULQWN0dWFsRGVsYXkFCFdhaXRUaW1lCQBmAgUQSGlnaGVzdFB1c2hWYWx1ZQAABwUORmlyc3RQdXNoVGltZXIJAGQCBQtBY3R1YWxEZWxheQUORGVsYXlBZnRlclB1c2gEF0hpZ2hlc3RQdXNoQWRkcmVzc1ZhbHVlAwMJAGYCBQZoZWlnaHQJAGQCCQBkAgUQUHJpemVIZWlnaHRWYWx1ZQUITmV3RGVsYXkFCFdhaXRUaW1lCQBmAgUQSGlnaGVzdFB1c2hWYWx1ZQAABwIABRJIaWdoZXN0UHVzaEFkZHJlc3MEE1ByaXplSGVpZ2h0VmFsdWVOZXcDAwkAZgIFBmhlaWdodAkAZAIJAGQCBRBQcml6ZUhlaWdodFZhbHVlBQhOZXdEZWxheQUIV2FpdFRpbWUJAGYCBRBIaWdoZXN0UHVzaFZhbHVlAAAHBQZoZWlnaHQFEFByaXplSGVpZ2h0VmFsdWUDAwkAZgIFDVVzZXJQdXNodmFsdWUAAAkAZgIJAGUCBQZoZWlnaHQFF1VzZXJMYXN0U3Rha2VCbG9ja1ZhbHVlBQ1taW5TdGFrZUJsb2NrBwMJAGYCCQBlAgUGaGVpZ2h0BRZVc2VyTGFzdFB1c2hCbG9ja1ZhbHVlBQxtaW5QdXNoQmxvY2sDCQBmAgUOVXNlclN0YWtlVmFsdWUAAAMJAGYCBQ1Vc2VyUHVzaHZhbHVlBRBIaWdoZXN0UHVzaFZhbHVlAwkAZgIFC1ByaXplQW1vdW50AAADAwMDCQBnAgkAZAIFE1ByaXplSGVpZ2h0VmFsdWVOZXcFCE5ld0RlbGF5BQZoZWlnaHQGCQBnAgUGaGVpZ2h0CQBkAgkAZAIFE1ByaXplSGVpZ2h0VmFsdWVOZXcFCE5ld0RlbGF5BQhXYWl0VGltZQkAZgIFEEhpZ2hlc3RQdXNoVmFsdWUAAAcGCQAAAgUQSGlnaGVzdFB1c2hWYWx1ZQAAAwkAZwIFEFVzZXJSZWZzTnVtVmFsdWUFBm1pbnJlZgkAzAgCCQEMSW50ZWdlckVudHJ5AgUIVXNlclB1c2gFDVVzZXJQdXNodmFsdWUJAMwIAgkBC1N0cmluZ0VudHJ5AgISSGlnaGVzdFB1c2hBZGRyZXNzCQDYBAEICAUBaQZjYWxsZXIFYnl0ZXMJAMwIAgkBDEludGVnZXJFbnRyeQICC0hpZ2hlc3RQdXNoBQ1Vc2VyUHVzaHZhbHVlCQDMCAIJAQxJbnRlZ2VyRW50cnkCBRFVc2VyTGFzdFB1c2hCbG9jawUGaGVpZ2h0CQDMCAIJAQxJbnRlZ2VyRW50cnkCAgtQcml6ZUhlaWdodAUTUHJpemVIZWlnaHRWYWx1ZU5ldwkAzAgCCQEMSW50ZWdlckVudHJ5AgIFRGVsYXkFCE5ld0RlbGF5CQDMCAIJAQxJbnRlZ2VyRW50cnkCAgZEZXZCb3gFDERldkJveEFtb3VudAUDbmlsCQACAQkArAICCQCsAgICEVlvdSBoYXZlIHRvIGhhdmUgCQCkAwEFBm1pbnJlZgI8IHJlZmVycmFscyBhbHJlYWR5IHN0YWtpbmcgZm9yIGEgbWluaW11bSBvZiAxMCBkYXlzLCB0byBwdXNoBAN0eHQDCQBmAgUQSGlnaGVzdFB1c2hWYWx1ZQAAAk9Zb3UgY2Fubm90IFB1c2ggYWZ0ZXIgcmV3YXJkaW5nIFByaXplIGFuZCBiZWZvcmUgT25lIGRheSBoYXMgcGFzc2VkIGFmdGVyIGF3YXJkAhBVbmV4cGVjdGVkIGVycm9yCQACAQUDdHh0CQACAQJOWW91IGNhbm5vdCBwdXNoIGJlZm9yZSB0aGUgcmV3YXJkIGlzIHVubG9ja2VkLCBubyByZXdhcmQgaGFzIGJlZW4gZGV0ZWN0ZWQgeWV0CQACAQJDWW91ciBwdXNoIGluIHRyb2lrYW4gdG9rZW4sIHNob3VsZCBiZSBIaWdoZXIgdGhhbiBsYXN0IEhpZ2hlc3QgUHVzaAkAAgECWFRvIGJlIGFibGUgdG8gcGFydGljaXBhdGUgaW4gUHVzaGluZyBmb3IgdGhlIHJld2FyZCB5b3UgbmVlZCB0byBTdGFrZSBBU0lNSXMgaW4gdGhlIGRBcHAJAAIBAjVZb3UgaGF2ZSB0byB3YWl0IDEwbWluIGJlZm9yZSB5b3UgY2FuIG1ha2UgYSBuZXcgUHVzaAkAAgEJAKwCAgI6WW91ciBQdXNoIGRvdCBub3QgY29tcGx5IG9uZSBvZiB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnM6IAJdMS4gUG9zaXRpdmUgVmFsdWUgZm9yIFB1c2ggaW4gVHJvaWthbiBUb2tlCiAyLiBNdXN0IFN0YWtlZCBBU0lNSSBUb2tlbiBmb3IgYSBtaW5pbXVtIG9mIHdlZWsgCQACAQkArAICCQCsAgICdkNhbiBkZXBvc2l0IG9ubHkgcG9zaXRpdmUgYW1vdW50cyBvZiBUcm9pa2FuIFRva2VuLCBvciBDaGVjayB5b3VyIFdhbGxldCBiYWxhbmNlIGluIFRyb2lrYSwgeW91IHNob3VsZCBoYXZlIG1vcmUgdGhhbiAJAKQDAQUQSGlnaGVzdFB1c2hWYWx1ZQIIIHRvIHB1c2gJAAIBAqQBWW91IGRvIG5vdCBoYXZlIGVub3VnaCBUcm9pa2FuIFRva2VucyBpbiB5b3VyIFdhbGxldCBCYWxhbmNlLCBQbGVhc2UgSGFydmVzdCBpZiB5b3UgaGF2ZSBlYXJuZWQgVHJvaWthbiB3YWxsZXQgb3IgdHJhbnNmZXIgdG8geW91ciB3YWxsZXQgbmVjZXNzYXJ5IFRyb2lrYW4gYW1vdW50ICEBaQEFU3Rha2UABAhXYWl0VGltZQkAaAIAoAsAAQQDcG10AwkAAAIJAJADAQgFAWkIcGF5bWVudHMAAQkAkQMCCAUBaQhwYXltZW50cwAACQACAQIcQXR0YWNoZWQgcGF5bWVudCBpcyByZXF1aXJlZAMDCQBmAggFA3BtdAZhbW91bnQAAAkAAAIIBQNwbXQHYXNzZXRJZAULU3Rha2VkVG9rZW4HBB9Hb3Zlcm5Ub2tlblNtYXJ0Q29udHJhY3RCYWxhbmNlCQDwBwIFBHRoaXMFC0dvdmVyblRva2VuBAdVc2VyQVBZCQCsAgIJANgEAQgIBQFpBmNhbGxlcgVieXRlcwIEX0FQWQQIVXNlclB1c2gJAKwCAgkA2AQBCAgFAWkGY2FsbGVyBWJ5dGVzAgVfUHVzaAQSVXNlclN0YWtlZFRva2VuS2V5CQCsAgIJANgEAQgIBQFpBmNhbGxlcgVieXRlcwIIX1N0YWtpbmcEElVzZXJHb3Zlcm5Ub2tlbktleQkArAICCQDYBAEICAUBaQZjYWxsZXIFYnl0ZXMCCV9FYXJuaW5ncwQSVXNlckxhc3RTdGFrZUJsb2NrCQCsAgIJANgEAQgIBQFpBmNhbGxlcgVieXRlcwITX1VzZXJMYXN0U3Rha2VCbG9jawQYVXNlclN0YWtlVHJhbnNhY3Rpb25zS2V5CQCsAgIJANgEAQgIBQFpBmNhbGxlcgVieXRlcwITX1N0YWtlZFRyYW5zYWN0aW9ucwQNQWRkcmVzc0hlaWdodAkArAICCQDYBAEICAUBaQZjYWxsZXIFYnl0ZXMCDF9Qcml6ZUhlaWdodAQQVXNlcldlZWtFYXJuaW5ncwkArAICCQDYBAEICAUBaQZjYWxsZXIFYnl0ZXMCDF9XZWVrRWFybmluZwQVVXNlclN0YWtlVHJhbnNhY3Rpb25zBAckbWF0Y2gwCQCaCAIFBHRoaXMFGFVzZXJTdGFrZVRyYW5zYWN0aW9uc0tleQMJAAECBQckbWF0Y2gwAgNJbnQEAWEFByRtYXRjaDAFAWEAAAQMTWF4RGVwb3NpdGVyBAckbWF0Y2gwCQCdCAIFBHRoaXMCDE1heERlcG9zaXRlcgMJAAECBQckbWF0Y2gwAgZTdHJpbmcEAWEFByRtYXRjaDAFAWECAAQPTWF4RGVwb3NpdEJsb2NrBAckbWF0Y2gwCQCaCAIFBHRoaXMCD01heERlcG9zaXRCbG9jawMJAAECBQckbWF0Y2gwAgNJbnQEAWEFByRtYXRjaDAFAWEAAAQKTWF4RGVwb3NpdAQHJG1hdGNoMAkAmggCBQR0aGlzAgpNYXhEZXBvc2l0AwkAAQIFByRtYXRjaDACA0ludAQBYQUHJG1hdGNoMAUBYQAABBFNYXhEZXBvc2l0ZXJWYWx1ZQMJAGYCCAUDcG10BmFtb3VudAUKTWF4RGVwb3NpdAkA2AQBCAgFAWkGY2FsbGVyBWJ5dGVzBQxNYXhEZXBvc2l0ZXIED01heERlcG9zaXRWYWx1ZQMJAGYCCAUDcG10BmFtb3VudAUKTWF4RGVwb3NpdAgFA3BtdAZhbW91bnQFCk1heERlcG9zaXQEFE1heERlcG9zaXRCbG9ja1ZhbHVlAwkAZgIIBQNwbXQGYW1vdW50BQpNYXhEZXBvc2l0BQZoZWlnaHQFD01heERlcG9zaXRCbG9jawQNVXNlclB1c2hWYWx1ZQQHJG1hdGNoMAkAmggCBQR0aGlzBQhVc2VyUHVzaAMJAAECBQckbWF0Y2gwAgNJbnQEAWEFByRtYXRjaDAFAWEAAAQXVXNlckxhc3RTdGFrZUJsb2NrVmFsdWUEByRtYXRjaDAJAJoIAgUEdGhpcwUSVXNlckxhc3RTdGFrZUJsb2NrAwkAAQIFByRtYXRjaDACA0ludAQBYQUHJG1hdGNoMAUBYQAABBpVc2VyTGFzdFN0YWtlQmxvY2tOZXdWYWx1ZQMJAAACBRdVc2VyTGFzdFN0YWtlQmxvY2tWYWx1ZQAABQZoZWlnaHQFF1VzZXJMYXN0U3Rha2VCbG9ja1ZhbHVlBBhOZXdVc2VyU3Rha2VUcmFuc2FjdGlvbnMJAGQCBRVVc2VyU3Rha2VUcmFuc2FjdGlvbnMAAQQYY3VycmVudEFtb3VudFN0YWtlZFRva2VuBAckbWF0Y2gwCQCaCAIFBHRoaXMFElVzZXJTdGFrZWRUb2tlbktleQMJAAECBQckbWF0Y2gwAgNJbnQEAWEFByRtYXRjaDAFAWEAAAQUbmV3QW1vdW50U3Rha2VkVG9rZW4JAGQCBRhjdXJyZW50QW1vdW50U3Rha2VkVG9rZW4IBQNwbXQGYW1vdW50BBpDb250cmFjdFdhbGxldFN0YWtlQmFsYW5jZQkA8AcCBQR0aGlzBQtTdGFrZWRUb2tlbgQMU3Rha2VCYWxhbmNlBAckbWF0Y2gwCQCaCAIFBHRoaXMCDFN0YWtlQmFsYW5jZQMJAAECBQckbWF0Y2gwAgNJbnQEAWEFByRtYXRjaDAFAWEAAAQSU3Rha2VCYWxhbmNlQW1vdW50CQBkAgUMU3Rha2VCYWxhbmNlCAUDcG10BmFtb3VudAQLUHJpemVBbW91bnQEByRtYXRjaDAJAJoIAgUEdGhpcwIHRnVuZEJveAMJAAECBQckbWF0Y2gwAgNJbnQEAWEFByRtYXRjaDAFAWEAAAQVVXNlcldlZWtFYXJuaW5nc1ZhbHVlBAckbWF0Y2gwCQCaCAIFBHRoaXMFEFVzZXJXZWVrRWFybmluZ3MDCQABAgUHJG1hdGNoMAIDSW50BAFhBQckbWF0Y2gwBQFhAAAEGGN1cnJlbnRBbW91bnRHb3Zlcm5Ub2tlbgQHJG1hdGNoMAkAmggCBQR0aGlzBRJVc2VyR292ZXJuVG9rZW5LZXkDCQABAgUHJG1hdGNoMAIDSW50BAFhBQckbWF0Y2gwBQFhAAAEFUhlaWdodFRyYW5zYWN0RnVuZEJveAQHJG1hdGNoMAkAmggCBQR0aGlzAgtQcml6ZUhlaWdodAMJAAECBQckbWF0Y2gwAgNJbnQEAWEFByRtYXRjaDAFAWEAAAQQUHJpemVIZWlnaHRWYWx1ZQMDCQAAAgUVSGVpZ2h0VHJhbnNhY3RGdW5kQm94AAAJAAACBQtQcml6ZUFtb3VudAAABwAAAwMJAAACBRVIZWlnaHRUcmFuc2FjdEZ1bmRCb3gAAAkBAiE9AgULUHJpemVBbW91bnQAAAcFBmhlaWdodAMDCQECIT0CBRVIZWlnaHRUcmFuc2FjdEZ1bmRCb3gAAAkBAiE9AgULUHJpemVBbW91bnQAAAcFFUhlaWdodFRyYW5zYWN0RnVuZEJveAAABAtBY3R1YWxEZWxheQQHJG1hdGNoMAkAmggCBQR0aGlzAgVEZWxheQMJAAECBQckbWF0Y2gwAgNJbnQEAWEFByRtYXRjaDAFAWEAAAQQSGlnaGVzdFB1c2hWYWx1ZQQHJG1hdGNoMAkAmggCBQR0aGlzAgtIaWdoZXN0UHVzaAMJAAECBQckbWF0Y2gwAgNJbnQEAWEFByRtYXRjaDAFAWEAAAQSSGlnaGVzdFB1c2hBZGRyZXNzBAckbWF0Y2gwCQCdCAIFBHRoaXMCEkhpZ2hlc3RQdXNoQWRkcmVzcwMJAAECBQckbWF0Y2gwAgZTdHJpbmcEAWEFByRtYXRjaDAFAWECAAQXSGlnaGVzdFB1c2hBZGRyZXNzVmFsdWUDAwkAZgIFBmhlaWdodAkAZAIJAGQCBRBQcml6ZUhlaWdodFZhbHVlBQtBY3R1YWxEZWxheQUIV2FpdFRpbWUJAGYCBRBIaWdoZXN0UHVzaFZhbHVlAAAHAgAFEkhpZ2hlc3RQdXNoQWRkcmVzcwQTUHJpemVIZWlnaHRWYWx1ZU5ldwMDCQBmAgUGaGVpZ2h0CQBkAgkAZAIFEFByaXplSGVpZ2h0VmFsdWUFC0FjdHVhbERlbGF5BQhXYWl0VGltZQkAZgIFEEhpZ2hlc3RQdXNoVmFsdWUAAAcFBmhlaWdodAUQUHJpemVIZWlnaHRWYWx1ZQMJAGYCAIDC1y8FH0dvdmVyblRva2VuU21hcnRDb250cmFjdEJhbGFuY2UJAAIBAj5ObyBlbm91Z2ggR292ZXJuVG9rZW4gSW4gQ29udHJhY3QsIFBsZWFzZSBkZXBvc2l0IEdvdmVyblRva2VucwQGUmV3YXJkAwkAAAIFDFN0YWtlQmFsYW5jZQAAAJBOAwkAZgIFGE5ld1VzZXJTdGFrZVRyYW5zYWN0aW9ucwAKCQBoAgkAaAIAkE4FGE5ld1VzZXJTdGFrZVRyYW5zYWN0aW9ucwkAZAIAAQkAaQIFFG5ld0Ftb3VudFN0YWtlZFRva2VuBQxTdGFrZUJhbGFuY2UJAGgCAJBOCQBkAgABCQBpAgUUbmV3QW1vdW50U3Rha2VkVG9rZW4FDFN0YWtlQmFsYW5jZQQMVXNlckFQWVZhbHVlAwkAZgIFGGN1cnJlbnRBbW91bnRHb3Zlcm5Ub2tlbgAACQBpAgkAaAIAZAUGUmV3YXJkBRhjdXJyZW50QW1vdW50R292ZXJuVG9rZW4AAAQUbmV3QW1vdW50R292ZXJuVG9rZW4JAGQCBRhjdXJyZW50QW1vdW50R292ZXJuVG9rZW4FBlJld2FyZAkAzAgCCQEMSW50ZWdlckVudHJ5AgUSVXNlckdvdmVyblRva2VuS2V5BRRuZXdBbW91bnRHb3Zlcm5Ub2tlbgkAzAgCCQEMSW50ZWdlckVudHJ5AgUSVXNlclN0YWtlZFRva2VuS2V5BRRuZXdBbW91bnRTdGFrZWRUb2tlbgkAzAgCCQEMSW50ZWdlckVudHJ5AgUYVXNlclN0YWtlVHJhbnNhY3Rpb25zS2V5BRhOZXdVc2VyU3Rha2VUcmFuc2FjdGlvbnMJAMwIAgkBDEludGVnZXJFbnRyeQICDFN0YWtlQmFsYW5jZQUSU3Rha2VCYWxhbmNlQW1vdW50CQDMCAIJAQxJbnRlZ2VyRW50cnkCAgtQcml6ZUhlaWdodAUTUHJpemVIZWlnaHRWYWx1ZU5ldwkAzAgCCQEMSW50ZWdlckVudHJ5AgUHVXNlckFQWQUMVXNlckFQWVZhbHVlCQDMCAIJAQxJbnRlZ2VyRW50cnkCBRJVc2VyTGFzdFN0YWtlQmxvY2sFGlVzZXJMYXN0U3Rha2VCbG9ja05ld1ZhbHVlCQDMCAIJAQxJbnRlZ2VyRW50cnkCBQhVc2VyUHVzaAUNVXNlclB1c2hWYWx1ZQkAzAgCCQELU3RyaW5nRW50cnkCAgxNYXhEZXBvc2l0ZXIFEU1heERlcG9zaXRlclZhbHVlCQDMCAIJAQxJbnRlZ2VyRW50cnkCAgpNYXhEZXBvc2l0BQ9NYXhEZXBvc2l0VmFsdWUJAMwIAgkBDEludGVnZXJFbnRyeQICD01heERlcG9zaXRCbG9jawUUTWF4RGVwb3NpdEJsb2NrVmFsdWUJAMwIAgkBC1N0cmluZ0VudHJ5AgISSGlnaGVzdFB1c2hBZGRyZXNzBRdIaWdoZXN0UHVzaEFkZHJlc3NWYWx1ZQkAzAgCCQEMSW50ZWdlckVudHJ5AgUQVXNlcldlZWtFYXJuaW5ncwUVVXNlcldlZWtFYXJuaW5nc1ZhbHVlCQDMCAIJAQ5TY3JpcHRUcmFuc2ZlcgMIBQFpBmNhbGxlcgUGUmV3YXJkBQtHb3Zlcm5Ub2tlbgUDbmlsCQACAQIbQ2FuIGRlcG9zaXQgb25seSBTdGFrZVRva2VuAWkBE1dpdGhkcmF3U3Rha2VkRnVuZHMBBmFtb3VudAQIV2FpdFRpbWUJAGgCAKALAAEEElVzZXJMYXN0U3Rha2VCbG9jawkArAICCQDYBAEICAUBaQZjYWxsZXIFYnl0ZXMCE19Vc2VyTGFzdFN0YWtlQmxvY2sEElVzZXJTdGFrZWRUb2tlbktleQkArAICCQDYBAEICAUBaQZjYWxsZXIFYnl0ZXMCCF9TdGFraW5nBBJVc2VyR292ZXJuVG9rZW5LZXkJAKwCAgkArAICCQDYBAEICAUBaQZjYWxsZXIFYnl0ZXMCAV8JANgEAQULR292ZXJuVG9rZW4EGkNvbnRyYWN0V2FsbGV0U3Rha2VCYWxhbmNlCQDwBwIFBHRoaXMFC1N0YWtlZFRva2VuBBdVc2VyTGFzdFN0YWtlQmxvY2tWYWx1ZQQHJG1hdGNoMAkAmggCBQR0aGlzBRJVc2VyTGFzdFN0YWtlQmxvY2sDCQABAgUHJG1hdGNoMAIDSW50BAFhBQckbWF0Y2gwBQFhAAAEDFN0YWtlQmFsYW5jZQQHJG1hdGNoMAkAmggCBQR0aGlzAgxTdGFrZUJhbGFuY2UDCQABAgUHJG1hdGNoMAIDSW50BAFhBQckbWF0Y2gwBQFhAAAEC1ByaXplQW1vdW50BAckbWF0Y2gwCQCaCAIFBHRoaXMCB0Z1bmRCb3gDCQABAgUHJG1hdGNoMAIDSW50BAFhBQckbWF0Y2gwBQFhAAAEFUhlaWdodFRyYW5zYWN0RnVuZEJveAQHJG1hdGNoMAkAmggCBQR0aGlzAgtQcml6ZUhlaWdodAMJAAECBQckbWF0Y2gwAgNJbnQEAWEFByRtYXRjaDAFAWEAAAQLQWN0dWFsRGVsYXkEByRtYXRjaDAJAJoIAgUEdGhpcwIFRGVsYXkDCQABAgUHJG1hdGNoMAIDSW50BAFhBQckbWF0Y2gwBQFhAAAEEEhpZ2hlc3RQdXNoVmFsdWUEByRtYXRjaDAJAJoIAgUEdGhpcwILSGlnaGVzdFB1c2gDCQABAgUHJG1hdGNoMAIDSW50BAFhBQckbWF0Y2gwBQFhAAAEEFByaXplSGVpZ2h0VmFsdWUDAwkAAAIFFUhlaWdodFRyYW5zYWN0RnVuZEJveAAACQAAAgULUHJpemVBbW91bnQAAAcAAAMDCQAAAgUVSGVpZ2h0VHJhbnNhY3RGdW5kQm94AAAJAQIhPQIFC1ByaXplQW1vdW50AAAHBQZoZWlnaHQDAwkBAiE9AgUVSGVpZ2h0VHJhbnNhY3RGdW5kQm94AAAJAQIhPQIFC1ByaXplQW1vdW50AAAHBRVIZWlnaHRUcmFuc2FjdEZ1bmRCb3gAAAQSSGlnaGVzdFB1c2hBZGRyZXNzBAckbWF0Y2gwCQCdCAIFBHRoaXMCEkhpZ2hlc3RQdXNoQWRkcmVzcwMJAAECBQckbWF0Y2gwAgZTdHJpbmcEAWEFByRtYXRjaDAFAWECAAQXSGlnaGVzdFB1c2hBZGRyZXNzVmFsdWUDAwkAZgIFBmhlaWdodAkAZAIJAGQCBRBQcml6ZUhlaWdodFZhbHVlBQtBY3R1YWxEZWxheQUIV2FpdFRpbWUJAGYCBRBIaWdoZXN0UHVzaFZhbHVlAAAHAgAFEkhpZ2hlc3RQdXNoQWRkcmVzcwQTUHJpemVIZWlnaHRWYWx1ZU5ldwMDCQBmAgUGaGVpZ2h0CQBkAgkAZAIFEFByaXplSGVpZ2h0VmFsdWUFC0FjdHVhbERlbGF5BQhXYWl0VGltZQkAZgIFEEhpZ2hlc3RQdXNoVmFsdWUAAAcFBmhlaWdodAUQUHJpemVIZWlnaHRWYWx1ZQQKY3VycmVudEtleQkA2AQBCAgFAWkGY2FsbGVyBWJ5dGVzBA1jdXJyZW50QW1vdW50BAckbWF0Y2gwCQCaCAIFBHRoaXMFElVzZXJTdGFrZWRUb2tlbktleQMJAAECBQckbWF0Y2gwAgNJbnQEAWEFByRtYXRjaDAFAWEAAAQJbmV3QW1vdW50CQBlAgUNY3VycmVudEFtb3VudAUGYW1vdW50BBJTdGFrZUJhbGFuY2VBbW91bnQJAGUCBQxTdGFrZUJhbGFuY2UFBmFtb3VudAQaVXNlckxhc3RTdGFrZUJsb2NrTmV3VmFsdWUDCQAAAgUSU3Rha2VCYWxhbmNlQW1vdW50AAAAAAUXVXNlckxhc3RTdGFrZUJsb2NrVmFsdWUDCQBmAgAABQZhbW91bnQJAAIBAh5DYW4ndCB3aXRoZHJhdyBuZWdhdGl2ZSBhbW91bnQDCQBmAgAABQluZXdBbW91bnQJAAIBCQCsAgICQVVzZXIgY2Fubm90IHdpdGhkcmF3IG1vcmUgdGhhbiBkZXBvc2l0ZWQgZnVuZHMsIFlvdXIgZGVwb3NpdCBpczogCQCkAwEJAGkCBQ1jdXJyZW50QW1vdW50AIDC1y8DCQBmAgCAwtcvCQDwBwIFBHRoaXMFC0dvdmVyblRva2VuCQACAQkArAICAh9Ob3QgZW5vdWdoIFRyb2lrYSBJbiBDb250cmFjdDogCQCkAwEJAGkCCQDwBwIFBHRoaXMFC0dvdmVyblRva2VuAIDC1y8JAMwIAgkBDEludGVnZXJFbnRyeQIFElVzZXJHb3Zlcm5Ub2tlbktleQCAwtcvCQDMCAIJAQxJbnRlZ2VyRW50cnkCBRJVc2VyU3Rha2VkVG9rZW5LZXkFCW5ld0Ftb3VudAkAzAgCCQEMSW50ZWdlckVudHJ5AgIMU3Rha2VCYWxhbmNlBRJTdGFrZUJhbGFuY2VBbW91bnQJAMwIAgkBDEludGVnZXJFbnRyeQICC1ByaXplSGVpZ2h0BRNQcml6ZUhlaWdodFZhbHVlTmV3CQDMCAIJAQxJbnRlZ2VyRW50cnkCBRJVc2VyTGFzdFN0YWtlQmxvY2sFGlVzZXJMYXN0U3Rha2VCbG9ja05ld1ZhbHVlCQDMCAIJAQtTdHJpbmdFbnRyeQICEkhpZ2hlc3RQdXNoQWRkcmVzcwUXSGlnaGVzdFB1c2hBZGRyZXNzVmFsdWUJAMwIAgkBDlNjcmlwdFRyYW5zZmVyAwgFAWkGY2FsbGVyAIDC1y8FC0dvdmVyblRva2VuCQDMCAIJAQ5TY3JpcHRUcmFuc2ZlcgMIBQFpBmNhbGxlcgUGYW1vdW50BQtTdGFrZWRUb2tlbgUDbmlsAWkBFldpdGhkcmF3QmlnU3Rha2VSZXdhcmQABAhXYWl0VGltZQkAaAIAoAsAAQQYTGFzdEJpZ1N0YWtlclJld2FyZEJsb2NrCQCsAgIJANgEAQgIBQFpBmNhbGxlcgVieXRlcwIZX0xhc3RCaWdTdGFrZXJSZXdhcmRCbG9jawQPQmlnU3Rha2VyUmV3YXJkCQCsAgIJANgEAQgIBQFpBmNhbGxlcgVieXRlcwIKX0JpZ1N0YWtlcgQSVXNlckdvdmVyblRva2VuS2V5CQCsAgIJANgEAQgIBQFpBmNhbGxlcgVieXRlcwIJX0Vhcm5pbmdzBBJMaW1pV2l0aGRyYXdSZXdhcmQACgQVVXNlckdvdmVyblRva2VuQW1vdW50BAckbWF0Y2gwCQCaCAIFBHRoaXMFElVzZXJHb3Zlcm5Ub2tlbktleQMJAAECBQckbWF0Y2gwAgNJbnQEAWEFByRtYXRjaDAFAWEAAAQdTGFzdEJpZ1N0YWtlclJld2FyZEJsb2NrVmFsdWUEByRtYXRjaDAJAJoIAgUEdGhpcwUYTGFzdEJpZ1N0YWtlclJld2FyZEJsb2NrAwkAAQIFByRtYXRjaDACA0ludAQBYQUHJG1hdGNoMAUBYQAABBlCaWdTdGFrZXJSZXdhcmRUb3RhbFZhbHVlBAckbWF0Y2gwCQCaCAIFBHRoaXMCFEJpZ1N0YWtlclJld2FyZFRvdGFsAwkAAQIFByRtYXRjaDACA0ludAQBYQUHJG1hdGNoMAUBYQAABAtQcml6ZUFtb3VudAQHJG1hdGNoMAkAmggCBQR0aGlzAgdGdW5kQm94AwkAAQIFByRtYXRjaDACA0ludAQBYQUHJG1hdGNoMAUBYQAABBVIZWlnaHRUcmFuc2FjdEZ1bmRCb3gEByRtYXRjaDAJAJoIAgUEdGhpcwILUHJpemVIZWlnaHQDCQABAgUHJG1hdGNoMAIDSW50BAFhBQckbWF0Y2gwBQFhAAAEEFByaXplSGVpZ2h0VmFsdWUDAwkAAAIFFUhlaWdodFRyYW5zYWN0RnVuZEJveAAACQAAAgULUHJpemVBbW91bnQAAAcAAAMDCQAAAgUVSGVpZ2h0VHJhbnNhY3RGdW5kQm94AAAJAQIhPQIFC1ByaXplQW1vdW50AAAHBQZoZWlnaHQDAwkBAiE9AgUVSGVpZ2h0VHJhbnNhY3RGdW5kQm94AAAJAQIhPQIFC1ByaXplQW1vdW50AAAHBRVIZWlnaHRUcmFuc2FjdEZ1bmRCb3gAAAQLQWN0dWFsRGVsYXkEByRtYXRjaDAJAJoIAgUEdGhpcwIFRGVsYXkDCQABAgUHJG1hdGNoMAIDSW50BAFhBQckbWF0Y2gwBQFhAAAEEEhpZ2hlc3RQdXNoVmFsdWUEByRtYXRjaDAJAJoIAgUEdGhpcwILSGlnaGVzdFB1c2gDCQABAgUHJG1hdGNoMAIDSW50BAFhBQckbWF0Y2gwBQFhAAAEEkhpZ2hlc3RQdXNoQWRkcmVzcwQHJG1hdGNoMAkAnQgCBQR0aGlzAhJIaWdoZXN0UHVzaEFkZHJlc3MDCQABAgUHJG1hdGNoMAIGU3RyaW5nBAFhBQckbWF0Y2gwBQFhAgAEF0hpZ2hlc3RQdXNoQWRkcmVzc1ZhbHVlAwMJAGYCBQZoZWlnaHQJAGQCCQBkAgUQUHJpemVIZWlnaHRWYWx1ZQULQWN0dWFsRGVsYXkFCFdhaXRUaW1lCQBmAgUQSGlnaGVzdFB1c2hWYWx1ZQAABwIABRJIaWdoZXN0UHVzaEFkZHJlc3MEE1ByaXplSGVpZ2h0VmFsdWVOZXcDAwkAZgIFBmhlaWdodAkAZAIJAGQCBRBQcml6ZUhlaWdodFZhbHVlBQtBY3R1YWxEZWxheQUIV2FpdFRpbWUJAGYCBRBIaWdoZXN0UHVzaFZhbHVlAAAHBQZoZWlnaHQFEFByaXplSGVpZ2h0VmFsdWUECmN1cnJlbnRLZXkJANgEAQgIBQFpBmNhbGxlcgVieXRlcwQGYW1vdW50BAckbWF0Y2gwCQCaCAIFBHRoaXMFD0JpZ1N0YWtlclJld2FyZAMJAAECBQckbWF0Y2gwAgNJbnQEAWEFByRtYXRjaDAFAWEAAAQSU3Rha2VCYWxhbmNlQW1vdW50CQBlAgUZQmlnU3Rha2VyUmV3YXJkVG90YWxWYWx1ZQUGYW1vdW50BBJCaWdTdGFrZXJSZXdhcmRUYXgDCQBmAgAACQBoAgkAaQIFFVVzZXJHb3Zlcm5Ub2tlbkFtb3VudADoBwkAZQIA6AcJAGkCCQBoAgDoBwkAZQIFBmhlaWdodAUdTGFzdEJpZ1N0YWtlclJld2FyZEJsb2NrVmFsdWUJAGgCBRJMaW1pV2l0aGRyYXdSZXdhcmQAoAsJAGgCAOgHAIDC1y8JAGgCCQBpAgUVVXNlckdvdmVyblRva2VuQW1vdW50AOgHCQBlAgDoBwkAaQIJAGgCAOgHCQBlAgUGaGVpZ2h0BR1MYXN0QmlnU3Rha2VyUmV3YXJkQmxvY2tWYWx1ZQkAaAIFEkxpbWlXaXRoZHJhd1Jld2FyZACgCwMJAGYCAAAFBmFtb3VudAkAAgEJAKwCAgkArAICCQCsAgICH0Nhbid0IHdpdGhkcmF3IG5lZ2F0aXZlIGFtb3VudCAJAKQDAQkAZQIFFVVzZXJHb3Zlcm5Ub2tlbkFtb3VudAkAaAIA6AcAgMLXLwIFIC4uLiAJAKQDAQUGYW1vdW50AwMDCQBmAgkAaAIA6AcAgMLXLwUVVXNlckdvdmVyblRva2VuQW1vdW50BgkAZgIAAQUGYW1vdW50BgkAZgIAAAkAZQIFFVVzZXJHb3Zlcm5Ub2tlbkFtb3VudAUSQmlnU3Rha2VyUmV3YXJkVGF4CQACAQkArAICAlxObyBBU0lNSSByZXdhcmQgYXZhaWxhYmxlLCBvciBOb3QgZW5vdWdoIEVhcm5lZCBUcm9pa2FuIFRva2VucyB0byBkbyB0cmFuc2FjdGlvbiwgeW91IGhhdmU6IAkApAMBCQBpAgUVVXNlckdvdmVyblRva2VuQW1vdW50AIDC1y8DCQBmAgUSU3Rha2VCYWxhbmNlQW1vdW50AAAJAMwIAgkBDEludGVnZXJFbnRyeQIFD0JpZ1N0YWtlclJld2FyZAAACQDMCAIJAQxJbnRlZ2VyRW50cnkCAhRCaWdTdGFrZXJSZXdhcmRUb3RhbAUSU3Rha2VCYWxhbmNlQW1vdW50CQDMCAIJAQxJbnRlZ2VyRW50cnkCBRJVc2VyR292ZXJuVG9rZW5LZXkJAGUCBRVVc2VyR292ZXJuVG9rZW5BbW91bnQFEkJpZ1N0YWtlclJld2FyZFRheAkAzAgCCQEMSW50ZWdlckVudHJ5AgILUHJpemVIZWlnaHQFEFByaXplSGVpZ2h0VmFsdWUJAMwIAgkBDEludGVnZXJFbnRyeQIFGExhc3RCaWdTdGFrZXJSZXdhcmRCbG9jawUGaGVpZ2h0CQDMCAIJAQtTdHJpbmdFbnRyeQICEkhpZ2hlc3RQdXNoQWRkcmVzcwUXSGlnaGVzdFB1c2hBZGRyZXNzVmFsdWUJAMwIAgkBDlNjcmlwdFRyYW5zZmVyAwgFAWkGY2FsbGVyBQZhbW91bnQFC1N0YWtlZFRva2VuBQNuaWwJAAIBAlJCYWxhbmNlIEVycm9yLCBUb3RhbCBCaWcgU3Rha2VycyBjYW5ub3QgYmUgbmVnYXRpdmUsIE9wZXJhdGlvbiB3b24ndCBiZSBhdXRob3JpemVkAWkBE0hhcnZlc3RHb3Zlcm5Ub2lrZW4BBmFtb3VudAQaQ29udHJhY3RXYWxsZXRTdGFrZUJhbGFuY2UJAPAHAgUEdGhpcwULU3Rha2VkVG9rZW4EElVzZXJHb3Zlcm5Ub2tlbktleQkArAICCQDYBAEICAUBaQZjYWxsZXIFYnl0ZXMCCV9FYXJuaW5ncwQMU3Rha2VCYWxhbmNlBAckbWF0Y2gwCQCaCAIFBHRoaXMCDFN0YWtlQmFsYW5jZQMJAAECBQckbWF0Y2gwAgNJbnQEAWEFByRtYXRjaDAFAWEAAAQLUHJpemVBbW91bnQEByRtYXRjaDAJAJoIAgUEdGhpcwIHRnVuZEJveAMJAAECBQckbWF0Y2gwAgNJbnQEAWEFByRtYXRjaDAFAWEAAAQVSGVpZ2h0VHJhbnNhY3RGdW5kQm94BAckbWF0Y2gwCQCaCAIFBHRoaXMCC1ByaXplSGVpZ2h0AwkAAQIFByRtYXRjaDACA0ludAQBYQUHJG1hdGNoMAUBYQAABBBQcml6ZUhlaWdodFZhbHVlAwMJAAACBRVIZWlnaHRUcmFuc2FjdEZ1bmRCb3gAAAkAAAIFC1ByaXplQW1vdW50AAAHAAADAwkAAAIFFUhlaWdodFRyYW5zYWN0RnVuZEJveAAACQECIT0CBQtQcml6ZUFtb3VudAAABwUGaGVpZ2h0AwMJAQIhPQIFFUhlaWdodFRyYW5zYWN0RnVuZEJveAAACQECIT0CBQtQcml6ZUFtb3VudAAABwUVSGVpZ2h0VHJhbnNhY3RGdW5kQm94AAAECmN1cnJlbnRLZXkJANgEAQgIBQFpBmNhbGxlcgVieXRlcwQNY3VycmVudEFtb3VudAQHJG1hdGNoMAkAmggCBQR0aGlzBRJVc2VyR292ZXJuVG9rZW5LZXkDCQABAgUHJG1hdGNoMAIDSW50BAFhBQckbWF0Y2gwBQFhAAAECW5ld0Ftb3VudAkAZQIFDWN1cnJlbnRBbW91bnQFBmFtb3VudAMJAGYCAAAFBmFtb3VudAkAAgECHkNhbid0IHdpdGhkcmF3IG5lZ2F0aXZlIGFtb3VudAMJAGYCAAAFCW5ld0Ftb3VudAkAAgEJAKwCAgJBVXNlciBjYW5ub3Qgd2l0aGRyYXcgbW9yZSB0aGFuIGRlcG9zaXRlZCBmdW5kcywgWW91ciBkZXBvc2l0IGlzOiAJAKQDAQkAaQIFDWN1cnJlbnRBbW91bnQAgMLXLwkAzAgCCQEMSW50ZWdlckVudHJ5AgUSVXNlckdvdmVyblRva2VuS2V5BQluZXdBbW91bnQJAMwIAgkBDEludGVnZXJFbnRyeQICC1ByaXplSGVpZ2h0BRBQcml6ZUhlaWdodFZhbHVlCQDMCAIJAQ5TY3JpcHRUcmFuc2ZlcgMIBQFpBmNhbGxlcgUGYW1vdW50BQtHb3Zlcm5Ub2tlbgUDbmlsAWkBCmRlbGF5cHJpemUABAlEZWxheURheXMJAGgCAKALAAEECFdhaXRUaW1lCQBoAgCgCwABBBJVc2VyR292ZXJuVG9rZW5LZXkJAKwCAgkArAICCQDYBAEICAUBaQZjYWxsZXIFYnl0ZXMCAV8JANgEAQULR292ZXJuVG9rZW4EGFVzZXJXYWxsZXRTR292ZXJuQmFsYW5jZQkA8AcCCQEHQWRkcmVzcwEICAUBaQZjYWxsZXIFYnl0ZXMFC0dvdmVyblRva2VuBBpDb250cmFjdFdhbGxldFN0YWtlQmFsYW5jZQkA8AcCBQR0aGlzBQtTdGFrZWRUb2tlbgQMU3Rha2VCYWxhbmNlBAckbWF0Y2gwCQCaCAIFBHRoaXMCDFN0YWtlQmFsYW5jZQMJAAECBQckbWF0Y2gwAgNJbnQEAWEFByRtYXRjaDAFAWEAAAQLUHJpemVBbW91bnQEByRtYXRjaDAJAJoIAgUEdGhpcwIHRnVuZEJveAMJAAECBQckbWF0Y2gwAgNJbnQEAWEFByRtYXRjaDAFAWEAAAQVSGVpZ2h0VHJhbnNhY3RGdW5kQm94BAckbWF0Y2gwCQCaCAIFBHRoaXMCC1ByaXplSGVpZ2h0AwkAAQIFByRtYXRjaDACA0ludAQBYQUHJG1hdGNoMAUBYQAABAtBY3R1YWxEZWxheQQHJG1hdGNoMAkAmggCBQR0aGlzAgVEZWxheQMJAAECBQckbWF0Y2gwAgNJbnQEAWEFByRtYXRjaDAFAWEAAAQQUHJpemVIZWlnaHRWYWx1ZQMDCQAAAgUVSGVpZ2h0VHJhbnNhY3RGdW5kQm94AAAJAAACBQtQcml6ZUFtb3VudAAABwAAAwMJAAACBRVIZWlnaHRUcmFuc2FjdEZ1bmRCb3gAAAkBAiE9AgULUHJpemVBbW91bnQAAAcFBmhlaWdodAMDCQECIT0CBRVIZWlnaHRUcmFuc2FjdEZ1bmRCb3gAAAkBAiE9AgULUHJpemVBbW91bnQAAAcFFUhlaWdodFRyYW5zYWN0RnVuZEJveAAABBBIaWdoZXN0UHVzaFZhbHVlBAckbWF0Y2gwCQCaCAIFBHRoaXMCC0hpZ2hlc3RQdXNoAwkAAQIFByRtYXRjaDACA0ludAQBYQUHJG1hdGNoMAUBYQAABBJIaWdoZXN0UHVzaEFkZHJlc3MEByRtYXRjaDAJAJ0IAgUEdGhpcwISSGlnaGVzdFB1c2hBZGRyZXNzAwkAAQIFByRtYXRjaDACBlN0cmluZwQBYQUHJG1hdGNoMAUBYQIABBdIaWdoZXN0UHVzaEFkZHJlc3NWYWx1ZQMDCQBmAgUGaGVpZ2h0CQBkAgkAZAIFEFByaXplSGVpZ2h0VmFsdWUFC0FjdHVhbERlbGF5BQhXYWl0VGltZQkAZgIFEEhpZ2hlc3RQdXNoVmFsdWUAAAcCAAUSSGlnaGVzdFB1c2hBZGRyZXNzBBNQcml6ZUhlaWdodFZhbHVlTmV3AwMJAGYCBQZoZWlnaHQJAGQCCQBkAgUQUHJpemVIZWlnaHRWYWx1ZQULQWN0dWFsRGVsYXkFCFdhaXRUaW1lCQBmAgUQSGlnaGVzdFB1c2hWYWx1ZQAABwUGaGVpZ2h0BRBQcml6ZUhlaWdodFZhbHVlBA9BY3R1YWxEZWxheUNvc3QEByRtYXRjaDAJAJoIAgUEdGhpcwIJRGVsYXlDb3N0AwkAAQIFByRtYXRjaDACA0ludAQBYQUHJG1hdGNoMAUBYQAKBANwbXQDCQAAAgkAkAMBCAUBaQhwYXltZW50cwABCQCRAwIIBQFpCHBheW1lbnRzAAAJAAIBAhxBdHRhY2hlZCBwYXltZW50IGlzIHJlcXVpcmVkBA1EZXZCb3hCYWxhbmNlBAckbWF0Y2gwCQCaCAIFBHRoaXMCBkRldkJveAMJAAECBQckbWF0Y2gwAgNJbnQEAWEFByRtYXRjaDAFAWEAAAMDCQEJaXNEZWZpbmVkAQgFA3BtdAdhc3NldElkCQAAAggFA3BtdAdhc3NldElkBQtHb3Zlcm5Ub2tlbgcDCQBmAgULUHJpemVBbW91bnQAAAQVVXNlckdvdmVyblRva2VuQW1vdW50CAUDcG10BmFtb3VudAQMRGV2Qm94QW1vdW50CQBkAgUNRGV2Qm94QmFsYW5jZQkAaQIJAGgCCAUDcG10BmFtb3VudAAFAOgHBAxOZXdEZWxheUNvc3QDCQAAAgUPQWN0dWFsRGVsYXlDb3N0AAAAgJTr3AMJAGgCAAIFD0FjdHVhbERlbGF5Q29zdAMJAGcCBRVVc2VyR292ZXJuVG9rZW5BbW91bnQFDE5ld0RlbGF5Q29zdAQITmV3RGVsYXkJAGQCBQtBY3R1YWxEZWxheQUJRGVsYXlEYXlzCQDMCAIJAQxJbnRlZ2VyRW50cnkCAgVEZWxheQUITmV3RGVsYXkJAMwIAgkBDEludGVnZXJFbnRyeQICCURlbGF5Q29zdAUMTmV3RGVsYXlDb3N0CQDMCAIJAQxJbnRlZ2VyRW50cnkCAgtQcml6ZUhlaWdodAUTUHJpemVIZWlnaHRWYWx1ZU5ldwkAzAgCCQEMSW50ZWdlckVudHJ5AgIGRGV2Qm94BQxEZXZCb3hBbW91bnQJAMwIAgkBC1N0cmluZ0VudHJ5AgISSGlnaGVzdFB1c2hBZGRyZXNzBRdIaWdoZXN0UHVzaEFkZHJlc3NWYWx1ZQUDbmlsCQACAQkArAICCQCsAgICSVRvIGRlbGF5IHRoZSByZWxlYXNlIG9mIHRoZSByZXdhcmQgT05FIERBWSBsYXRlciB0aGFuIGV4cGVjdGVkLCB5b3UgbmVlZCAJAKQDAQUMTmV3RGVsYXlDb3N0AgdUUk9JS0FzCQACAQJeWW91IGNhbm5vdCBkZWxheSB0aGUgcmV3YXJkIGJlZm9yZSByZXdhcmQgaXMgcmVjZWl2ZWQhIFBsZWFzZSB3YWl0IHVudGlsIGEgcmV3YXJkIGlzIGF2YWlsYWJsZQkAAgECKUNhbiBVc2Ugb25seSBUcm9pa2EgVG9rZW4gdG8gRGVsYXkgUmV3YXJkAWkBCkNsYWltUHJpemUABBJVc2VyU3Rha2VkVG9rZW5LZXkJAKwCAgkA2AQBCAgFAWkGY2FsbGVyBWJ5dGVzAghfU3Rha2luZwQIVXNlclB1c2gJAKwCAgkA2AQBCAgFAWkGY2FsbGVyBWJ5dGVzAgVfUHVzaAQSVXNlckxhc3RTdGFrZUJsb2NrCQCsAgIJANgEAQgIBQFpBmNhbGxlcgVieXRlcwITX1VzZXJMYXN0U3Rha2VCbG9jawQNbWluU3Rha2VCbG9jawkAaAIAoAsABwQGbWlucmVmAAMEF0NvbnRyYWN0R292VG9rZW5CYWxhbmNlCQDwBwIFBHRoaXMFC0dvdmVyblRva2VuBBpDb250cmFjdFdhbGxldFN0YWtlQmFsYW5jZQkA8AcCBQR0aGlzBQtTdGFrZWRUb2tlbgQMU3Rha2VCYWxhbmNlBAckbWF0Y2gwCQCaCAIFBHRoaXMCDFN0YWtlQmFsYW5jZQMJAAECBQckbWF0Y2gwAgNJbnQEAWEFByRtYXRjaDAFAWEAAAQLUHJpemVBbW91bnQEByRtYXRjaDAJAJoIAgUEdGhpcwIHRnVuZEJveAMJAAECBQckbWF0Y2gwAgNJbnQEAWEFByRtYXRjaDAFAWEAAAQNVXNlclB1c2hWYWx1ZQQHJG1hdGNoMAkAmggCBQR0aGlzBQhVc2VyUHVzaAMJAAECBQckbWF0Y2gwAgNJbnQEAWEFByRtYXRjaDAFAWEAAAQXVXNlckxhc3RTdGFrZUJsb2NrVmFsdWUEByRtYXRjaDAJAJoIAgUEdGhpcwUSVXNlckxhc3RTdGFrZUJsb2NrAwkAAQIFByRtYXRjaDACA0ludAQBYQUHJG1hdGNoMAUBYQAABBVVc2VyU3Rha2VkVG9rZW5BbW91bnQEByRtYXRjaDAJAJoIAgUEdGhpcwUSVXNlclN0YWtlZFRva2VuS2V5AwkAAQIFByRtYXRjaDACA0ludAQBYQUHJG1hdGNoMAUBYQAABAtBY3R1YWxEZWxheQQHJG1hdGNoMAkAmggCBQR0aGlzAgVEZWxheQMJAAECBQckbWF0Y2gwAgNJbnQEAWEFByRtYXRjaDAFAWEAAAQLUHJpemVXaW5uZXIEByRtYXRjaDAJAJ0IAgUEdGhpcwISSGlnaGVzdFB1c2hBZGRyZXNzAwkAAQIFByRtYXRjaDACBlN0cmluZwQBYQUHJG1hdGNoMAUBYQIABAtQcml6ZUhlaWdodAQHJG1hdGNoMAkAmggCBQR0aGlzAgtQcml6ZUhlaWdodAMJAAECBQckbWF0Y2gwAgNJbnQEAWEFByRtYXRjaDAFAWEAAAQQSGlnaGVzdFB1c2hWYWx1ZQQHJG1hdGNoMAkAmggCBQR0aGlzAgtIaWdoZXN0UHVzaAMJAAECBQckbWF0Y2gwAgNJbnQEAWEFByRtYXRjaDAFAWEAAAQLVXNlclJlZnNOdW0JAKwCAgkA2AQBCAgFAWkGY2FsbGVyBWJ5dGVzAgVfcmVmcwQQVXNlclJlZnNOdW1WYWx1ZQQHJG1hdGNoMAkAmggCBQR0aGlzBQtVc2VyUmVmc051bQMJAAECBQckbWF0Y2gwAgNJbnQEAWEFByRtYXRjaDAFAWEAAAMDCQAAAgULUHJpemVBbW91bnQAAAYJAGYCAIDIr6AlBRdDb250cmFjdEdvdlRva2VuQmFsYW5jZQkAAgECSU5vIHByaXplIHRvIENsYWltIG9yIE5vdCBlbm91Z2ggR292ZXJuIFRva2VuIGVuIENvbnRyYWN0IChNaW4gMTAwIFRyb2lrYSkDCQECIT0CCQDYBAEICAUBaQZjYWxsZXIFYnl0ZXMFC1ByaXplV2lubmVyCQACAQI2WW91IGFyZSBub3QgdGhlIHdpbm5lciBoZW5jZSBjYW5ub3QgY2xhaW0gdGhlIHJld2FyZCAgAwMJAGYCAIDC1y8FFVVzZXJTdGFrZWRUb2tlbkFtb3VudAkAZgIFDW1pblN0YWtlQmxvY2sFF1VzZXJMYXN0U3Rha2VCbG9ja1ZhbHVlBwkAAgECLllvdSBoYXZlIHRvIFN0YWtlIEFTSU1JIFRva2VuIHRvIGNsYWltIHJld2FyZCADAwkAZgIFBmhlaWdodAkAZAIFC1ByaXplSGVpZ2h0BQtBY3R1YWxEZWxheQkAZwIFDVVzZXJQdXNoVmFsdWUFEEhpZ2hlc3RQdXNoVmFsdWUHAwkAZwIFEFVzZXJSZWZzTnVtVmFsdWUFBm1pbnJlZgkAzAgCCQEMSW50ZWdlckVudHJ5AgULUHJpemVXaW5uZXIFC1ByaXplQW1vdW50CQDMCAIJAQxJbnRlZ2VyRW50cnkCAgdGdW5kQm94AAAJAMwIAgkBDEludGVnZXJFbnRyeQICC0hpZ2hlc3RQdXNoAAAJAMwIAgkBDEludGVnZXJFbnRyeQIFCFVzZXJQdXNoAAAJAMwIAgkBC1N0cmluZ0VudHJ5AgISSGlnaGVzdFB1c2hBZGRyZXNzAgAJAMwIAgkBDEludGVnZXJFbnRyeQICC1ByaXplSGVpZ2h0AAAJAMwIAgkBDEludGVnZXJFbnRyeQICBURlbGF5AAAJAMwIAgkBDEludGVnZXJFbnRyeQICCURlbGF5Q29zdAAACQDMCAIJAQtTdHJpbmdFbnRyeQICCkxhc3RXaW5uZXIFC1ByaXplV2lubmVyCQDMCAIJAQxJbnRlZ2VyRW50cnkCAglMYXN0UHJpemUFC1ByaXplQW1vdW50CQDMCAIJAQ5TY3JpcHRUcmFuc2ZlcgMIBQFpBmNhbGxlcgULUHJpemVBbW91bnQFC1N0YWtlZFRva2VuCQDMCAIJAQ5TY3JpcHRUcmFuc2ZlcgMIBQFpBmNhbGxlcgCAlOvcAwULR292ZXJuVG9rZW4FA25pbAkAAgEJAKwCAgkArAICAhJZb3UgaGF2ZSB0byBoYXZlICAJAKQDAQUGbWlucmVmAkcgIHJlZmVycmFscyBhbHJlYWR5IHN0YWtpbmcgZm9yIGEgbWluaW11bSBvZiAxMCBkYXlzIHRvIENsYWltIHRoZSBwcml6ZQkAAgECYVlvdSBoYXZlIHRvIGJlIHRoZSB1c2VyIHdpdGggdGhlIGhpZ2hlc3QgUHVzaCBhbmQgd2FpdCB0aWxsIGNvdW50b3duIGlzIGZpbmlzaGVkLCB0byBjbGFpbSBSZXdhcmQBaQEJQWRkbWVudG9yAQZNZW50b3IEEVVzZXJNZW50b3JBZGRyZXNzCQCsAgIJANgEAQgIBQFpBmNhbGxlcgVieXRlcwIHX01lbnRvcgMJAQIhPQIFBk1lbnRvcgIACQDMCAIJAQtTdHJpbmdFbnRyeQIFEVVzZXJNZW50b3JBZGRyZXNzBQZNZW50b3IFA25pbAkAAgECIE1lbnRvcidzIEFkZHJlc3MgY2Fubm90IGJlIGVtcHR5AWkBD0dldExpa2VzUGFja2FnZQINVHdpdHRlclVzZXJJZAdUd2l0dElkBBtMaWtlUGFja2FnZVRST0lLQU5Db3N0VmFsdWUEByRtYXRjaDAJAJoIAgUEdGhpcwIWTGlrZVBhY2thZ2VUUk9JS0FOQ29zdAMJAAECBQckbWF0Y2gwAgNJbnQEAWEFByRtYXRjaDAFAWEAAAQZTGlrZVBhY2thZ2VBU0lNSUNvc3RWYWx1ZQQHJG1hdGNoMAkAmggCBQR0aGlzAhRMaWtlUGFja2FnZUFTSU1JQ29zdAMJAAECBQckbWF0Y2gwAgNJbnQEAWEFByRtYXRjaDAFAWEAAAQDcG10AwkAAAIJAJADAQgFAWkIcGF5bWVudHMAAgkAkQMCCAUBaQhwYXltZW50cwAACQACAQIcQXR0YWNoZWQgcGF5bWVudCBpcyByZXF1aXJlZAMDCQAAAggJAJEDAggFAWkIcGF5bWVudHMAAAdhc3NldElkBQtTdGFrZWRUb2tlbgkAAAIICQCRAwIIBQFpCHBheW1lbnRzAAEHYXNzZXRJZAULR292ZXJuVG9rZW4HAwkAZwIICQCRAwIIBQFpCHBheW1lbnRzAAAGYW1vdW50BRlMaWtlUGFja2FnZUFTSU1JQ29zdFZhbHVlAwkAZwIICQCRAwIIBQFpCHBheW1lbnRzAAEGYW1vdW50BRtMaWtlUGFja2FnZVRST0lLQU5Db3N0VmFsdWUECkluZmx1ZW5jZXIJAKwCAgkArAICCQCkAwEFDVR3aXR0ZXJVc2VySWQCDF9Ud2l0dDJMaWtlXwkApAMBBQdUd2l0dElkBBFJbmZsdWVuY2VyQmFsYW5jZQQHJG1hdGNoMAkAmggCBQR0aGlzBQpJbmZsdWVuY2VyAwkAAQIFByRtYXRjaDACA0ludAQBYQUHJG1hdGNoMAUBYQAAAwkAAAIFEUluZmx1ZW5jZXJCYWxhbmNlAAAJAMwIAgkBDEludGVnZXJFbnRyeQIJAKwCAgkArAICCQCkAwEFDVR3aXR0ZXJVc2VySWQCDF9Ud2l0dDJMaWtlXwkApAMBBQdUd2l0dElkCQBpAgkAaAIAXwUUTGlrZVBhY2thZ2VBU0lNSUNvc3QAZAkAzAgCCQEMSW50ZWdlckVudHJ5AgIQTGlrZVR3aXR0c0RldkJveAkAaQIJAGgCAAUFFExpa2VQYWNrYWdlQVNJTUlDb3N0AGQFA25pbAkAAgECZkNhbm5vdCBhY3F1aXJlIGEgbmV3IHBhY2thZ2UsIHRoZSBwcmlvciBsaWtlIHBhY2thZ2UgaGFzIHRvIGJlIGRyYWluZWQgdG8gYmUgYWJsZSB0byBhY3F1aXJlIGEgbmV3IG9uZQkAAgEJAKwCAgIaVFJPSUtBTiBBbW91bnQgc2hvdWxkIGJlIDoJAKQDAQkAaQIFFExpa2VQYWNrYWdlQVNJTUlDb3N0AIDC1y8JAAIBCQCsAgICGEFTSU1JIEFtb3VudCBzaG91bGQgYmUgOgkApAMBCQBpAgUWTGlrZVBhY2thZ2VUUk9JS0FOQ29zdACAwtcvCQACAQIwUGF5bWVudHMgc2hvdWxkIGJlIGJvdGggQVNJTUkgYW5kIFRST0lLQU4gdG9rZW5zAWkBF0dldE15TGlrZWRUd2l0dHNSZXdhcmRzAQZVc2VySWQEGFVzZXJFYXJuZWRMaWtlVHdpdHRBU0lNSQQHJG1hdGNoMAkAmggCBQR0aGlzCQCsAgIFBlVzZXJJZAIMX0xpa2VfQW1vdW50AwkAAQIFByRtYXRjaDACA0ludAQBYQUHJG1hdGNoMAUBYQAABBxVc2VyRWFybmVkZEFwcFJUVHdpdHRUUk9JS0FOBAckbWF0Y2gwCQCaCAIFBHRoaXMJAKwCAgUGVXNlcklkAhZfVHJvaWthbmRBcHBfUlRfQW1vdW50AwkAAQIFByRtYXRjaDACA0ludAQBYQUHJG1hdGNoMAUBYQAAAwMJAGcCBRhVc2VyRWFybmVkTGlrZVR3aXR0QVNJTUkJAGgCAAEAgMLXLwkAZwIFHFVzZXJFYXJuZWRkQXBwUlRUd2l0dFRST0lLQU4JAGgCAAEAgMLXLwcJAMwIAgkBDEludGVnZXJFbnRyeQIJAKwCAgUGVXNlcklkAhZfVHJvaWthbmRBcHBfUlRfQW1vdW50AAAJAMwIAgkBDEludGVnZXJFbnRyeQIJAKwCAgUGVXNlcklkAgxfTGlrZV9BbW91bnQAAAkAzAgCCQEOU2NyaXB0VHJhbnNmZXIDCAUBaQZjYWxsZXIFGFVzZXJFYXJuZWRMaWtlVHdpdHRBU0lNSQULU3Rha2VkVG9rZW4JAMwIAgkBDlNjcmlwdFRyYW5zZmVyAwgFAWkGY2FsbGVyBRxVc2VyRWFybmVkZEFwcFJUVHdpdHRUUk9JS0FOBQtHb3Zlcm5Ub2tlbgUDbmlsCQACAQI7TWluaW11bSBlYXJuaW5ncyB0byB3aXRoZHJhdyBhcmU6IDEwMCBBU0lNSSBhbmQgNTAgVHJvaWthbnMBaQEVTGlua1R3aXR0ZXJBY2MyV2FsbGV0AQ1Ud2l0dGVyVXNlcklkBBNUd2l0dGVyTGlua2VkV2FsbGV0BAckbWF0Y2gwCQCdCAIFBHRoaXMJAKwCAgUNVHdpdHRlclVzZXJJZAIHX1dhbGxldAMJAAECBQckbWF0Y2gwAgZTdHJpbmcEAWEFByRtYXRjaDAFAWECBE5vbmUDCQAAAgkA2AQBCAgFAWkGY2FsbGVyBWJ5dGVzBRNUd2l0dGVyTGlua2VkV2FsbGV0CQACAQI6WW91IGFscmVhZHkgaGF2ZSB5b3VyIHdhbGxldCBsaW5rZWQgdG8gdGhlIFR3aXR0ZXIgYWNjb3VudAMDCQECIT0CCQDYBAEICAUBaQZjYWxsZXIFYnl0ZXMFE1R3aXR0ZXJMaW5rZWRXYWxsZXQJAQIhPQIFE1R3aXR0ZXJMaW5rZWRXYWxsZXQCBE5vbmUHCQACAQJJVGhlIHdhbGxldCB5b3UgYXJlIHVzaW5nIGlzIG5vdCB0aGUgbGlua2VkIFdhbGxldCB0byB0aGlzIFR3aXR0ZXIgYWNjb3VudAkAzAgCCQELU3RyaW5nRW50cnkCCQCsAgIFDVR3aXR0ZXJVc2VySWQCB19XYWxsZXQJANgEAQgIBQFpBmNhbGxlcgVieXRlcwUDbmlsABDR/Hc=", "height": 2146838, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: GWBzu7anXvdwPSDwGmCTgugKK3DccgTfCMB8bcYAMmRA Next: B6MPnqNvu7YTFn7hsqwrvLDpeFPSCuAviNf7nNM4z4x9 Diff:
OldNewDifferences
11401140 @Callable(e)
11411141 func GetMyLikedTwittsRewards (aP) = {
11421142 let aQ = {
1143- let h = getInteger(this, (toString(aP) + "_Like_Amount"))
1143+ let h = getInteger(this, (aP + "_Like_Amount"))
11441144 if ($isInstanceOf(h, "Int"))
11451145 then {
11461146 let i = h
11491149 else 0
11501150 }
11511151 let aR = {
1152- let h = getInteger(this, (toString(aP) + "_TroikandApp_RT_Amount"))
1152+ let h = getInteger(this, (aP + "_TroikandApp_RT_Amount"))
11531153 if ($isInstanceOf(h, "Int"))
11541154 then {
11551155 let i = h
11601160 if (if ((aQ >= (1 * 100000000)))
11611161 then (aR >= (1 * 100000000))
11621162 else false)
1163- then [IntegerEntry((toString(aP) + "_TroikandApp_RT_Amount"), 0), IntegerEntry((toString(aP) + "_Like_Amount"), 0), ScriptTransfer(e.caller, aQ, a), ScriptTransfer(e.caller, aR, b)]
1163+ then [IntegerEntry((aP + "_TroikandApp_RT_Amount"), 0), IntegerEntry((aP + "_Like_Amount"), 0), ScriptTransfer(e.caller, aQ, a), ScriptTransfer(e.caller, aR, b)]
11641164 else throw("Minimum earnings to withdraw are: 100 ASIMI and 50 Troikans")
11651165 }
11661166
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 6 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let a = base58'Hoej8L1ezqQY4Miex4Z4J7uJ33LCdcubV3DsubGHEqWP'
55
66 let b = base58'6ZPMzZseuYoMP4ByozJpVxbugXBobwJYF22zVjW5JjN'
77
88 let c = (1 * 100000000)
99
1010 let d = (5 * 100000000)
1111
1212 @Callable(e)
1313 func DevWithdraw () = {
1414 let f = toBase58String(e.caller.bytes)
1515 if ((f == "3P74buHt98BnojFcaREJZtb98KDyUmZGemJ"))
1616 then {
1717 let g = {
1818 let h = getInteger(this, "DevBox")
1919 if ($isInstanceOf(h, "Int"))
2020 then {
2121 let i = h
2222 i
2323 }
2424 else 0
2525 }
2626 if ((0 > g))
2727 then throw("Not enough balance")
2828 else [IntegerEntry("DevBox", 0), ScriptTransfer(e.caller, g, b)]
2929 }
3030 else throw("You cannot withdraw as your are not the Dev.")
3131 }
3232
3333
3434
3535 @Callable(e)
3636 func WithdrawWeeklyEarning () = {
3737 let j = assetBalance(this, a)
3838 let k = {
3939 let h = getString(this, "MaxDepositer")
4040 if ($isInstanceOf(h, "String"))
4141 then {
4242 let i = h
4343 i
4444 }
4545 else ""
4646 }
4747 let l = (toBase58String(e.caller.bytes) + "_WeekEarning")
4848 let m = {
4949 let h = getInteger(this, "StakeBalance")
5050 if ($isInstanceOf(h, "Int"))
5151 then {
5252 let i = h
5353 i
5454 }
5555 else 0
5656 }
5757 let n = {
5858 let h = getInteger(this, "FundBox")
5959 if ($isInstanceOf(h, "Int"))
6060 then {
6161 let i = h
6262 i
6363 }
6464 else 0
6565 }
6666 let o = {
6767 let h = getInteger(this, "PrizeHeight")
6868 if ($isInstanceOf(h, "Int"))
6969 then {
7070 let i = h
7171 i
7272 }
7373 else 0
7474 }
7575 let p = if (if ((o == 0))
7676 then (n == 0)
7777 else false)
7878 then 0
7979 else if (if ((o == 0))
8080 then (n != 0)
8181 else false)
8282 then height
8383 else if (if ((o != 0))
8484 then (n != 0)
8585 else false)
8686 then o
8787 else 0
8888 let f = toBase58String(e.caller.bytes)
8989 let q = {
9090 let h = getInteger(this, l)
9191 if ($isInstanceOf(h, "Int"))
9292 then {
9393 let i = h
9494 i
9595 }
9696 else 0
9797 }
9898 if ((0 > q))
9999 then throw("Can't withdraw negative amount")
100100 else if ((0 > q))
101101 then throw(("User cannot withdraw more than deposited funds, Your deposit is: " + toString((q / 100000000))))
102102 else [IntegerEntry(l, 0), IntegerEntry("PrizeHeight", p), IntegerEntry("MaxDeposit", 0), ScriptTransfer(e.caller, q, a)]
103103 }
104104
105105
106106
107107 @Callable(e)
108108 func PushReward () = {
109109 let r = 10
110110 let s = (7 * 1440)
111111 let t = 60
112112 let u = (1440 * 1)
113113 let v = 3
114114 let w = (7 * 1440)
115115 let x = assetBalance(Address(e.caller.bytes), b)
116116 let y = if ((size(e.payments) == 1))
117117 then e.payments[0]
118118 else throw("Attached payment is required")
119119 let z = (toBase58String(e.caller.bytes) + "_Push")
120120 let A = {
121121 let h = getInteger(this, z)
122122 if ($isInstanceOf(h, "Int"))
123123 then {
124124 let i = h
125125 i
126126 }
127127 else 0
128128 }
129129 let B = (toBase58String(e.caller.bytes) + "_refs")
130130 let C = {
131131 let h = getInteger(this, B)
132132 if ($isInstanceOf(h, "Int"))
133133 then {
134134 let i = h
135135 i
136136 }
137137 else 0
138138 }
139139 let D = {
140140 let h = getInteger(this, "HighestPush")
141141 if ($isInstanceOf(h, "Int"))
142142 then {
143143 let i = h
144144 i
145145 }
146146 else 0
147147 }
148148 if ((x > y.amount))
149149 then if (if (((y.amount + A) > D))
150150 then (y.assetId == b)
151151 else false)
152152 then {
153153 let E = (toBase58String(e.caller.bytes) + "_UserLastPushBlock")
154154 let F = (toBase58String(e.caller.bytes) + "_UserLastStakeBlock")
155155 let G = (toBase58String(e.caller.bytes) + "_Staking")
156156 let j = assetBalance(this, a)
157157 let m = {
158158 let h = getInteger(this, "StakeBalance")
159159 if ($isInstanceOf(h, "Int"))
160160 then {
161161 let i = h
162162 i
163163 }
164164 else 0
165165 }
166166 let n = {
167167 let h = getInteger(this, "FundBox")
168168 if ($isInstanceOf(h, "Int"))
169169 then {
170170 let i = h
171171 i
172172 }
173173 else 0
174174 }
175175 let o = {
176176 let h = getInteger(this, "PrizeHeight")
177177 if ($isInstanceOf(h, "Int"))
178178 then {
179179 let i = h
180180 i
181181 }
182182 else 0
183183 }
184184 let p = if (if ((o == 0))
185185 then (n == 0)
186186 else false)
187187 then 0
188188 else if (if ((o == 0))
189189 then (n != 0)
190190 else false)
191191 then height
192192 else if (if ((o != 0))
193193 then (n != 0)
194194 else false)
195195 then o
196196 else 0
197197 let H = {
198198 let h = getInteger(this, "Delay")
199199 if ($isInstanceOf(h, "Int"))
200200 then {
201201 let i = h
202202 i
203203 }
204204 else 0
205205 }
206206 let I = {
207207 let h = getInteger(this, "HighestPushAddress")
208208 if ($isInstanceOf(h, "Int"))
209209 then {
210210 let i = h
211211 i
212212 }
213213 else 0
214214 }
215215 let J = {
216216 let h = getInteger(this, E)
217217 if ($isInstanceOf(h, "Int"))
218218 then {
219219 let i = h
220220 i
221221 }
222222 else 0
223223 }
224224 let K = {
225225 let h = getInteger(this, F)
226226 if ($isInstanceOf(h, "Int"))
227227 then {
228228 let i = h
229229 i
230230 }
231231 else 0
232232 }
233233 let L = {
234234 let h = getInteger(this, G)
235235 if ($isInstanceOf(h, "Int"))
236236 then {
237237 let i = h
238238 i
239239 }
240240 else 0
241241 }
242242 let M = {
243243 let h = getInteger(this, "DevBox")
244244 if ($isInstanceOf(h, "Int"))
245245 then {
246246 let i = h
247247 i
248248 }
249249 else 0
250250 }
251251 let g = (M + ((y.amount * 5) / 1000))
252252 let N = (y.amount + A)
253253 let O = if (if ((height > ((p + H) + u)))
254254 then (D > 0)
255255 else false)
256256 then w
257257 else (H + t)
258258 let P = if (if ((height > ((p + O) + u)))
259259 then (D > 0)
260260 else false)
261261 then ""
262262 else I
263263 let Q = if (if ((height > ((p + O) + u)))
264264 then (D > 0)
265265 else false)
266266 then height
267267 else p
268268 if (if ((N > 0))
269269 then ((height - K) > s)
270270 else false)
271271 then if (((height - J) > r))
272272 then if ((L > 0))
273273 then if ((N > D))
274274 then if ((n > 0))
275275 then if (if (if (if (((Q + O) >= height))
276276 then true
277277 else (height >= ((Q + O) + u)))
278278 then (D > 0)
279279 else false)
280280 then true
281281 else (D == 0))
282282 then if ((C >= v))
283283 then [IntegerEntry(z, N), StringEntry("HighestPushAddress", toBase58String(e.caller.bytes)), IntegerEntry("HighestPush", N), IntegerEntry(E, height), IntegerEntry("PrizeHeight", Q), IntegerEntry("Delay", O), IntegerEntry("DevBox", g)]
284284 else throw((("You have to have " + toString(v)) + " referrals already staking for a minimum of 10 days, to push"))
285285 else {
286286 let R = if ((D > 0))
287287 then "You cannot Push after rewarding Prize and before One day has passed after award"
288288 else "Unexpected error"
289289 throw(R)
290290 }
291291 else throw("You cannot push before the reward is unlocked, no reward has been detected yet")
292292 else throw("Your push in troikan token, should be Higher than last Highest Push")
293293 else throw("To be able to participate in Pushing for the reward you need to Stake ASIMIs in the dApp")
294294 else throw("You have to wait 10min before you can make a new Push")
295295 else throw(("Your Push dot not comply one of the following conditions: " + "1. Positive Value for Push in Troikan Toke
296296 2. Must Staked ASIMI Token for a minimum of week "))
297297 }
298298 else throw((("Can deposit only positive amounts of Troikan Token, or Check your Wallet balance in Troika, you should have more than " + toString(D)) + " to push"))
299299 else throw("You do not have enough Troikan Tokens in your Wallet Balance, Please Harvest if you have earned Troikan wallet or transfer to your wallet necessary Troikan amount !")
300300 }
301301
302302
303303
304304 @Callable(e)
305305 func Stake () = {
306306 let u = (1440 * 1)
307307 let y = if ((size(e.payments) == 1))
308308 then e.payments[0]
309309 else throw("Attached payment is required")
310310 if (if ((y.amount > 0))
311311 then (y.assetId == a)
312312 else false)
313313 then {
314314 let S = assetBalance(this, b)
315315 let T = (toBase58String(e.caller.bytes) + "_APY")
316316 let z = (toBase58String(e.caller.bytes) + "_Push")
317317 let U = (toBase58String(e.caller.bytes) + "_Staking")
318318 let V = (toBase58String(e.caller.bytes) + "_Earnings")
319319 let F = (toBase58String(e.caller.bytes) + "_UserLastStakeBlock")
320320 let W = (toBase58String(e.caller.bytes) + "_StakedTransactions")
321321 let X = (toBase58String(e.caller.bytes) + "_PrizeHeight")
322322 let Y = (toBase58String(e.caller.bytes) + "_WeekEarning")
323323 let Z = {
324324 let h = getInteger(this, W)
325325 if ($isInstanceOf(h, "Int"))
326326 then {
327327 let i = h
328328 i
329329 }
330330 else 0
331331 }
332332 let k = {
333333 let h = getString(this, "MaxDepositer")
334334 if ($isInstanceOf(h, "String"))
335335 then {
336336 let i = h
337337 i
338338 }
339339 else ""
340340 }
341341 let aa = {
342342 let h = getInteger(this, "MaxDepositBlock")
343343 if ($isInstanceOf(h, "Int"))
344344 then {
345345 let i = h
346346 i
347347 }
348348 else 0
349349 }
350350 let ab = {
351351 let h = getInteger(this, "MaxDeposit")
352352 if ($isInstanceOf(h, "Int"))
353353 then {
354354 let i = h
355355 i
356356 }
357357 else 0
358358 }
359359 let ac = if ((y.amount > ab))
360360 then toBase58String(e.caller.bytes)
361361 else k
362362 let ad = if ((y.amount > ab))
363363 then y.amount
364364 else ab
365365 let ae = if ((y.amount > ab))
366366 then height
367367 else aa
368368 let af = {
369369 let h = getInteger(this, z)
370370 if ($isInstanceOf(h, "Int"))
371371 then {
372372 let i = h
373373 i
374374 }
375375 else 0
376376 }
377377 let K = {
378378 let h = getInteger(this, F)
379379 if ($isInstanceOf(h, "Int"))
380380 then {
381381 let i = h
382382 i
383383 }
384384 else 0
385385 }
386386 let ag = if ((K == 0))
387387 then height
388388 else K
389389 let ah = (Z + 1)
390390 let ai = {
391391 let h = getInteger(this, U)
392392 if ($isInstanceOf(h, "Int"))
393393 then {
394394 let i = h
395395 i
396396 }
397397 else 0
398398 }
399399 let aj = (ai + y.amount)
400400 let j = assetBalance(this, a)
401401 let m = {
402402 let h = getInteger(this, "StakeBalance")
403403 if ($isInstanceOf(h, "Int"))
404404 then {
405405 let i = h
406406 i
407407 }
408408 else 0
409409 }
410410 let ak = (m + y.amount)
411411 let n = {
412412 let h = getInteger(this, "FundBox")
413413 if ($isInstanceOf(h, "Int"))
414414 then {
415415 let i = h
416416 i
417417 }
418418 else 0
419419 }
420420 let al = {
421421 let h = getInteger(this, Y)
422422 if ($isInstanceOf(h, "Int"))
423423 then {
424424 let i = h
425425 i
426426 }
427427 else 0
428428 }
429429 let am = {
430430 let h = getInteger(this, V)
431431 if ($isInstanceOf(h, "Int"))
432432 then {
433433 let i = h
434434 i
435435 }
436436 else 0
437437 }
438438 let o = {
439439 let h = getInteger(this, "PrizeHeight")
440440 if ($isInstanceOf(h, "Int"))
441441 then {
442442 let i = h
443443 i
444444 }
445445 else 0
446446 }
447447 let p = if (if ((o == 0))
448448 then (n == 0)
449449 else false)
450450 then 0
451451 else if (if ((o == 0))
452452 then (n != 0)
453453 else false)
454454 then height
455455 else if (if ((o != 0))
456456 then (n != 0)
457457 else false)
458458 then o
459459 else 0
460460 let H = {
461461 let h = getInteger(this, "Delay")
462462 if ($isInstanceOf(h, "Int"))
463463 then {
464464 let i = h
465465 i
466466 }
467467 else 0
468468 }
469469 let D = {
470470 let h = getInteger(this, "HighestPush")
471471 if ($isInstanceOf(h, "Int"))
472472 then {
473473 let i = h
474474 i
475475 }
476476 else 0
477477 }
478478 let I = {
479479 let h = getString(this, "HighestPushAddress")
480480 if ($isInstanceOf(h, "String"))
481481 then {
482482 let i = h
483483 i
484484 }
485485 else ""
486486 }
487487 let P = if (if ((height > ((p + H) + u)))
488488 then (D > 0)
489489 else false)
490490 then ""
491491 else I
492492 let Q = if (if ((height > ((p + H) + u)))
493493 then (D > 0)
494494 else false)
495495 then height
496496 else p
497497 if ((100000000 > S))
498498 then throw("No enough GovernToken In Contract, Please deposit GovernTokens")
499499 else {
500500 let an = if ((m == 0))
501501 then 10000
502502 else if ((ah > 10))
503503 then ((10000 * ah) * (1 + (aj / m)))
504504 else (10000 * (1 + (aj / m)))
505505 let ao = if ((am > 0))
506506 then ((100 * an) / am)
507507 else 0
508508 let ap = (am + an)
509509 [IntegerEntry(V, ap), IntegerEntry(U, aj), IntegerEntry(W, ah), IntegerEntry("StakeBalance", ak), IntegerEntry("PrizeHeight", Q), IntegerEntry(T, ao), IntegerEntry(F, ag), IntegerEntry(z, af), StringEntry("MaxDepositer", ac), IntegerEntry("MaxDeposit", ad), IntegerEntry("MaxDepositBlock", ae), StringEntry("HighestPushAddress", P), IntegerEntry(Y, al), ScriptTransfer(e.caller, an, b)]
510510 }
511511 }
512512 else throw("Can deposit only StakeToken")
513513 }
514514
515515
516516
517517 @Callable(e)
518518 func WithdrawStakedFunds (aq) = {
519519 let u = (1440 * 1)
520520 let F = (toBase58String(e.caller.bytes) + "_UserLastStakeBlock")
521521 let U = (toBase58String(e.caller.bytes) + "_Staking")
522522 let V = ((toBase58String(e.caller.bytes) + "_") + toBase58String(b))
523523 let j = assetBalance(this, a)
524524 let K = {
525525 let h = getInteger(this, F)
526526 if ($isInstanceOf(h, "Int"))
527527 then {
528528 let i = h
529529 i
530530 }
531531 else 0
532532 }
533533 let m = {
534534 let h = getInteger(this, "StakeBalance")
535535 if ($isInstanceOf(h, "Int"))
536536 then {
537537 let i = h
538538 i
539539 }
540540 else 0
541541 }
542542 let n = {
543543 let h = getInteger(this, "FundBox")
544544 if ($isInstanceOf(h, "Int"))
545545 then {
546546 let i = h
547547 i
548548 }
549549 else 0
550550 }
551551 let o = {
552552 let h = getInteger(this, "PrizeHeight")
553553 if ($isInstanceOf(h, "Int"))
554554 then {
555555 let i = h
556556 i
557557 }
558558 else 0
559559 }
560560 let H = {
561561 let h = getInteger(this, "Delay")
562562 if ($isInstanceOf(h, "Int"))
563563 then {
564564 let i = h
565565 i
566566 }
567567 else 0
568568 }
569569 let D = {
570570 let h = getInteger(this, "HighestPush")
571571 if ($isInstanceOf(h, "Int"))
572572 then {
573573 let i = h
574574 i
575575 }
576576 else 0
577577 }
578578 let p = if (if ((o == 0))
579579 then (n == 0)
580580 else false)
581581 then 0
582582 else if (if ((o == 0))
583583 then (n != 0)
584584 else false)
585585 then height
586586 else if (if ((o != 0))
587587 then (n != 0)
588588 else false)
589589 then o
590590 else 0
591591 let I = {
592592 let h = getString(this, "HighestPushAddress")
593593 if ($isInstanceOf(h, "String"))
594594 then {
595595 let i = h
596596 i
597597 }
598598 else ""
599599 }
600600 let P = if (if ((height > ((p + H) + u)))
601601 then (D > 0)
602602 else false)
603603 then ""
604604 else I
605605 let Q = if (if ((height > ((p + H) + u)))
606606 then (D > 0)
607607 else false)
608608 then height
609609 else p
610610 let f = toBase58String(e.caller.bytes)
611611 let ar = {
612612 let h = getInteger(this, U)
613613 if ($isInstanceOf(h, "Int"))
614614 then {
615615 let i = h
616616 i
617617 }
618618 else 0
619619 }
620620 let q = (ar - aq)
621621 let ak = (m - aq)
622622 let ag = if ((ak == 0))
623623 then 0
624624 else K
625625 if ((0 > aq))
626626 then throw("Can't withdraw negative amount")
627627 else if ((0 > q))
628628 then throw(("User cannot withdraw more than deposited funds, Your deposit is: " + toString((ar / 100000000))))
629629 else if ((100000000 > assetBalance(this, b)))
630630 then throw(("Not enough Troika In Contract: " + toString((assetBalance(this, b) / 100000000))))
631631 else [IntegerEntry(V, 100000000), IntegerEntry(U, q), IntegerEntry("StakeBalance", ak), IntegerEntry("PrizeHeight", Q), IntegerEntry(F, ag), StringEntry("HighestPushAddress", P), ScriptTransfer(e.caller, 100000000, b), ScriptTransfer(e.caller, aq, a)]
632632 }
633633
634634
635635
636636 @Callable(e)
637637 func WithdrawBigStakeReward () = {
638638 let u = (1440 * 1)
639639 let as = (toBase58String(e.caller.bytes) + "_LastBigStakerRewardBlock")
640640 let at = (toBase58String(e.caller.bytes) + "_BigStaker")
641641 let V = (toBase58String(e.caller.bytes) + "_Earnings")
642642 let au = 10
643643 let av = {
644644 let h = getInteger(this, V)
645645 if ($isInstanceOf(h, "Int"))
646646 then {
647647 let i = h
648648 i
649649 }
650650 else 0
651651 }
652652 let aw = {
653653 let h = getInteger(this, as)
654654 if ($isInstanceOf(h, "Int"))
655655 then {
656656 let i = h
657657 i
658658 }
659659 else 0
660660 }
661661 let ax = {
662662 let h = getInteger(this, "BigStakerRewardTotal")
663663 if ($isInstanceOf(h, "Int"))
664664 then {
665665 let i = h
666666 i
667667 }
668668 else 0
669669 }
670670 let n = {
671671 let h = getInteger(this, "FundBox")
672672 if ($isInstanceOf(h, "Int"))
673673 then {
674674 let i = h
675675 i
676676 }
677677 else 0
678678 }
679679 let o = {
680680 let h = getInteger(this, "PrizeHeight")
681681 if ($isInstanceOf(h, "Int"))
682682 then {
683683 let i = h
684684 i
685685 }
686686 else 0
687687 }
688688 let p = if (if ((o == 0))
689689 then (n == 0)
690690 else false)
691691 then 0
692692 else if (if ((o == 0))
693693 then (n != 0)
694694 else false)
695695 then height
696696 else if (if ((o != 0))
697697 then (n != 0)
698698 else false)
699699 then o
700700 else 0
701701 let H = {
702702 let h = getInteger(this, "Delay")
703703 if ($isInstanceOf(h, "Int"))
704704 then {
705705 let i = h
706706 i
707707 }
708708 else 0
709709 }
710710 let D = {
711711 let h = getInteger(this, "HighestPush")
712712 if ($isInstanceOf(h, "Int"))
713713 then {
714714 let i = h
715715 i
716716 }
717717 else 0
718718 }
719719 let I = {
720720 let h = getString(this, "HighestPushAddress")
721721 if ($isInstanceOf(h, "String"))
722722 then {
723723 let i = h
724724 i
725725 }
726726 else ""
727727 }
728728 let P = if (if ((height > ((p + H) + u)))
729729 then (D > 0)
730730 else false)
731731 then ""
732732 else I
733733 let Q = if (if ((height > ((p + H) + u)))
734734 then (D > 0)
735735 else false)
736736 then height
737737 else p
738738 let f = toBase58String(e.caller.bytes)
739739 let aq = {
740740 let h = getInteger(this, at)
741741 if ($isInstanceOf(h, "Int"))
742742 then {
743743 let i = h
744744 i
745745 }
746746 else 0
747747 }
748748 let ak = (ax - aq)
749749 let ay = if ((0 > ((av / 1000) * (1000 - ((1000 * (height - aw)) / (au * 1440))))))
750750 then (1000 * 100000000)
751751 else ((av / 1000) * (1000 - ((1000 * (height - aw)) / (au * 1440))))
752752 if ((0 > aq))
753753 then throw(((("Can't withdraw negative amount " + toString((av - (1000 * 100000000)))) + " ... ") + toString(aq)))
754754 else if (if (if (((1000 * 100000000) > av))
755755 then true
756756 else (1 > aq))
757757 then true
758758 else (0 > (av - ay)))
759759 then throw(("No ASIMI reward available, or Not enough Earned Troikan Tokens to do transaction, you have: " + toString((av / 100000000))))
760760 else if ((ak > 0))
761761 then [IntegerEntry(at, 0), IntegerEntry("BigStakerRewardTotal", ak), IntegerEntry(V, (av - ay)), IntegerEntry("PrizeHeight", p), IntegerEntry(as, height), StringEntry("HighestPushAddress", P), ScriptTransfer(e.caller, aq, a)]
762762 else throw("Balance Error, Total Big Stakers cannot be negative, Operation won't be authorized")
763763 }
764764
765765
766766
767767 @Callable(e)
768768 func HarvestGovernToiken (aq) = {
769769 let j = assetBalance(this, a)
770770 let V = (toBase58String(e.caller.bytes) + "_Earnings")
771771 let m = {
772772 let h = getInteger(this, "StakeBalance")
773773 if ($isInstanceOf(h, "Int"))
774774 then {
775775 let i = h
776776 i
777777 }
778778 else 0
779779 }
780780 let n = {
781781 let h = getInteger(this, "FundBox")
782782 if ($isInstanceOf(h, "Int"))
783783 then {
784784 let i = h
785785 i
786786 }
787787 else 0
788788 }
789789 let o = {
790790 let h = getInteger(this, "PrizeHeight")
791791 if ($isInstanceOf(h, "Int"))
792792 then {
793793 let i = h
794794 i
795795 }
796796 else 0
797797 }
798798 let p = if (if ((o == 0))
799799 then (n == 0)
800800 else false)
801801 then 0
802802 else if (if ((o == 0))
803803 then (n != 0)
804804 else false)
805805 then height
806806 else if (if ((o != 0))
807807 then (n != 0)
808808 else false)
809809 then o
810810 else 0
811811 let f = toBase58String(e.caller.bytes)
812812 let ar = {
813813 let h = getInteger(this, V)
814814 if ($isInstanceOf(h, "Int"))
815815 then {
816816 let i = h
817817 i
818818 }
819819 else 0
820820 }
821821 let q = (ar - aq)
822822 if ((0 > aq))
823823 then throw("Can't withdraw negative amount")
824824 else if ((0 > q))
825825 then throw(("User cannot withdraw more than deposited funds, Your deposit is: " + toString((ar / 100000000))))
826826 else [IntegerEntry(V, q), IntegerEntry("PrizeHeight", p), ScriptTransfer(e.caller, aq, b)]
827827 }
828828
829829
830830
831831 @Callable(e)
832832 func delayprize () = {
833833 let az = (1440 * 1)
834834 let u = (1440 * 1)
835835 let V = ((toBase58String(e.caller.bytes) + "_") + toBase58String(b))
836836 let aA = assetBalance(Address(e.caller.bytes), b)
837837 let j = assetBalance(this, a)
838838 let m = {
839839 let h = getInteger(this, "StakeBalance")
840840 if ($isInstanceOf(h, "Int"))
841841 then {
842842 let i = h
843843 i
844844 }
845845 else 0
846846 }
847847 let n = {
848848 let h = getInteger(this, "FundBox")
849849 if ($isInstanceOf(h, "Int"))
850850 then {
851851 let i = h
852852 i
853853 }
854854 else 0
855855 }
856856 let o = {
857857 let h = getInteger(this, "PrizeHeight")
858858 if ($isInstanceOf(h, "Int"))
859859 then {
860860 let i = h
861861 i
862862 }
863863 else 0
864864 }
865865 let H = {
866866 let h = getInteger(this, "Delay")
867867 if ($isInstanceOf(h, "Int"))
868868 then {
869869 let i = h
870870 i
871871 }
872872 else 0
873873 }
874874 let p = if (if ((o == 0))
875875 then (n == 0)
876876 else false)
877877 then 0
878878 else if (if ((o == 0))
879879 then (n != 0)
880880 else false)
881881 then height
882882 else if (if ((o != 0))
883883 then (n != 0)
884884 else false)
885885 then o
886886 else 0
887887 let D = {
888888 let h = getInteger(this, "HighestPush")
889889 if ($isInstanceOf(h, "Int"))
890890 then {
891891 let i = h
892892 i
893893 }
894894 else 0
895895 }
896896 let I = {
897897 let h = getString(this, "HighestPushAddress")
898898 if ($isInstanceOf(h, "String"))
899899 then {
900900 let i = h
901901 i
902902 }
903903 else ""
904904 }
905905 let P = if (if ((height > ((p + H) + u)))
906906 then (D > 0)
907907 else false)
908908 then ""
909909 else I
910910 let Q = if (if ((height > ((p + H) + u)))
911911 then (D > 0)
912912 else false)
913913 then height
914914 else p
915915 let aB = {
916916 let h = getInteger(this, "DelayCost")
917917 if ($isInstanceOf(h, "Int"))
918918 then {
919919 let i = h
920920 i
921921 }
922922 else 10
923923 }
924924 let y = if ((size(e.payments) == 1))
925925 then e.payments[0]
926926 else throw("Attached payment is required")
927927 let M = {
928928 let h = getInteger(this, "DevBox")
929929 if ($isInstanceOf(h, "Int"))
930930 then {
931931 let i = h
932932 i
933933 }
934934 else 0
935935 }
936936 if (if (isDefined(y.assetId))
937937 then (y.assetId == b)
938938 else false)
939939 then if ((n > 0))
940940 then {
941941 let av = y.amount
942942 let g = (M + ((y.amount * 5) / 1000))
943943 let aC = if ((aB == 0))
944944 then 1000000000
945945 else (2 * aB)
946946 if ((av >= aC))
947947 then {
948948 let O = (H + az)
949949 [IntegerEntry("Delay", O), IntegerEntry("DelayCost", aC), IntegerEntry("PrizeHeight", Q), IntegerEntry("DevBox", g), StringEntry("HighestPushAddress", P)]
950950 }
951951 else throw((("To delay the release of the reward ONE DAY later than expected, you need " + toString(aC)) + "TROIKAs"))
952952 }
953953 else throw("You cannot delay the reward before reward is received! Please wait until a reward is available")
954954 else throw("Can Use only Troika Token to Delay Reward")
955955 }
956956
957957
958958
959959 @Callable(e)
960960 func ClaimPrize () = {
961961 let U = (toBase58String(e.caller.bytes) + "_Staking")
962962 let z = (toBase58String(e.caller.bytes) + "_Push")
963963 let F = (toBase58String(e.caller.bytes) + "_UserLastStakeBlock")
964964 let s = (1440 * 7)
965965 let v = 3
966966 let aD = assetBalance(this, b)
967967 let j = assetBalance(this, a)
968968 let m = {
969969 let h = getInteger(this, "StakeBalance")
970970 if ($isInstanceOf(h, "Int"))
971971 then {
972972 let i = h
973973 i
974974 }
975975 else 0
976976 }
977977 let n = {
978978 let h = getInteger(this, "FundBox")
979979 if ($isInstanceOf(h, "Int"))
980980 then {
981981 let i = h
982982 i
983983 }
984984 else 0
985985 }
986986 let af = {
987987 let h = getInteger(this, z)
988988 if ($isInstanceOf(h, "Int"))
989989 then {
990990 let i = h
991991 i
992992 }
993993 else 0
994994 }
995995 let K = {
996996 let h = getInteger(this, F)
997997 if ($isInstanceOf(h, "Int"))
998998 then {
999999 let i = h
10001000 i
10011001 }
10021002 else 0
10031003 }
10041004 let aE = {
10051005 let h = getInteger(this, U)
10061006 if ($isInstanceOf(h, "Int"))
10071007 then {
10081008 let i = h
10091009 i
10101010 }
10111011 else 0
10121012 }
10131013 let H = {
10141014 let h = getInteger(this, "Delay")
10151015 if ($isInstanceOf(h, "Int"))
10161016 then {
10171017 let i = h
10181018 i
10191019 }
10201020 else 0
10211021 }
10221022 let aF = {
10231023 let h = getString(this, "HighestPushAddress")
10241024 if ($isInstanceOf(h, "String"))
10251025 then {
10261026 let i = h
10271027 i
10281028 }
10291029 else ""
10301030 }
10311031 let aG = {
10321032 let h = getInteger(this, "PrizeHeight")
10331033 if ($isInstanceOf(h, "Int"))
10341034 then {
10351035 let i = h
10361036 i
10371037 }
10381038 else 0
10391039 }
10401040 let D = {
10411041 let h = getInteger(this, "HighestPush")
10421042 if ($isInstanceOf(h, "Int"))
10431043 then {
10441044 let i = h
10451045 i
10461046 }
10471047 else 0
10481048 }
10491049 let B = (toBase58String(e.caller.bytes) + "_refs")
10501050 let C = {
10511051 let h = getInteger(this, B)
10521052 if ($isInstanceOf(h, "Int"))
10531053 then {
10541054 let i = h
10551055 i
10561056 }
10571057 else 0
10581058 }
10591059 if (if ((n == 0))
10601060 then true
10611061 else (10000000000 > aD))
10621062 then throw("No prize to Claim or Not enough Govern Token en Contract (Min 100 Troika)")
10631063 else if ((toBase58String(e.caller.bytes) != aF))
10641064 then throw("You are not the winner hence cannot claim the reward ")
10651065 else if (if ((100000000 > aE))
10661066 then (s > K)
10671067 else false)
10681068 then throw("You have to Stake ASIMI Token to claim reward ")
10691069 else if (if ((height > (aG + H)))
10701070 then (af >= D)
10711071 else false)
10721072 then if ((C >= v))
10731073 then [IntegerEntry(aF, n), IntegerEntry("FundBox", 0), IntegerEntry("HighestPush", 0), IntegerEntry(z, 0), StringEntry("HighestPushAddress", ""), IntegerEntry("PrizeHeight", 0), IntegerEntry("Delay", 0), IntegerEntry("DelayCost", 0), StringEntry("LastWinner", aF), IntegerEntry("LastPrize", n), ScriptTransfer(e.caller, n, a), ScriptTransfer(e.caller, 1000000000, b)]
10741074 else throw((("You have to have " + toString(v)) + " referrals already staking for a minimum of 10 days to Claim the prize"))
10751075 else throw("You have to be the user with the highest Push and wait till countown is finished, to claim Reward")
10761076 }
10771077
10781078
10791079
10801080 @Callable(e)
10811081 func Addmentor (aH) = {
10821082 let aI = (toBase58String(e.caller.bytes) + "_Mentor")
10831083 if ((aH != ""))
10841084 then [StringEntry(aI, aH)]
10851085 else throw("Mentor's Address cannot be empty")
10861086 }
10871087
10881088
10891089
10901090 @Callable(e)
10911091 func GetLikesPackage (aJ,aK) = {
10921092 let aL = {
10931093 let h = getInteger(this, "LikePackageTROIKANCost")
10941094 if ($isInstanceOf(h, "Int"))
10951095 then {
10961096 let i = h
10971097 i
10981098 }
10991099 else 0
11001100 }
11011101 let aM = {
11021102 let h = getInteger(this, "LikePackageASIMICost")
11031103 if ($isInstanceOf(h, "Int"))
11041104 then {
11051105 let i = h
11061106 i
11071107 }
11081108 else 0
11091109 }
11101110 let y = if ((size(e.payments) == 2))
11111111 then e.payments[0]
11121112 else throw("Attached payment is required")
11131113 if (if ((e.payments[0].assetId == a))
11141114 then (e.payments[1].assetId == b)
11151115 else false)
11161116 then if ((e.payments[0].amount >= aM))
11171117 then if ((e.payments[1].amount >= aL))
11181118 then {
11191119 let aN = ((toString(aJ) + "_Twitt2Like_") + toString(aK))
11201120 let aO = {
11211121 let h = getInteger(this, aN)
11221122 if ($isInstanceOf(h, "Int"))
11231123 then {
11241124 let i = h
11251125 i
11261126 }
11271127 else 0
11281128 }
11291129 if ((aO == 0))
11301130 then [IntegerEntry(((toString(aJ) + "_Twitt2Like_") + toString(aK)), ((95 * c) / 100)), IntegerEntry("LikeTwittsDevBox", ((5 * c) / 100))]
11311131 else throw("Cannot acquire a new package, the prior like package has to be drained to be able to acquire a new one")
11321132 }
11331133 else throw(("TROIKAN Amount should be :" + toString((c / 100000000))))
11341134 else throw(("ASIMI Amount should be :" + toString((d / 100000000))))
11351135 else throw("Payments should be both ASIMI and TROIKAN tokens")
11361136 }
11371137
11381138
11391139
11401140 @Callable(e)
11411141 func GetMyLikedTwittsRewards (aP) = {
11421142 let aQ = {
1143- let h = getInteger(this, (toString(aP) + "_Like_Amount"))
1143+ let h = getInteger(this, (aP + "_Like_Amount"))
11441144 if ($isInstanceOf(h, "Int"))
11451145 then {
11461146 let i = h
11471147 i
11481148 }
11491149 else 0
11501150 }
11511151 let aR = {
1152- let h = getInteger(this, (toString(aP) + "_TroikandApp_RT_Amount"))
1152+ let h = getInteger(this, (aP + "_TroikandApp_RT_Amount"))
11531153 if ($isInstanceOf(h, "Int"))
11541154 then {
11551155 let i = h
11561156 i
11571157 }
11581158 else 0
11591159 }
11601160 if (if ((aQ >= (1 * 100000000)))
11611161 then (aR >= (1 * 100000000))
11621162 else false)
1163- then [IntegerEntry((toString(aP) + "_TroikandApp_RT_Amount"), 0), IntegerEntry((toString(aP) + "_Like_Amount"), 0), ScriptTransfer(e.caller, aQ, a), ScriptTransfer(e.caller, aR, b)]
1163+ then [IntegerEntry((aP + "_TroikandApp_RT_Amount"), 0), IntegerEntry((aP + "_Like_Amount"), 0), ScriptTransfer(e.caller, aQ, a), ScriptTransfer(e.caller, aR, b)]
11641164 else throw("Minimum earnings to withdraw are: 100 ASIMI and 50 Troikans")
11651165 }
11661166
11671167
11681168
11691169 @Callable(e)
11701170 func LinkTwitterAcc2Wallet (aJ) = {
11711171 let aS = {
11721172 let h = getString(this, (aJ + "_Wallet"))
11731173 if ($isInstanceOf(h, "String"))
11741174 then {
11751175 let i = h
11761176 i
11771177 }
11781178 else "None"
11791179 }
11801180 if ((toBase58String(e.caller.bytes) == aS))
11811181 then throw("You already have your wallet linked to the Twitter account")
11821182 else if (if ((toBase58String(e.caller.bytes) != aS))
11831183 then (aS != "None")
11841184 else false)
11851185 then throw("The wallet you are using is not the linked Wallet to this Twitter account")
11861186 else [StringEntry((aJ + "_Wallet"), toBase58String(e.caller.bytes))]
11871187 }
11881188
11891189

github/deemru/w8io/3ef1775 
152.26 ms