tx · BqfApDvCnsC3J3vPvKdmpVhaDYF8s3fr7wqoF24Fq8Bo

3Mxnm4wd25YMdQYKvdQ7NWf2zRoMkPrhLrN:  -0.01000000 Waves

2019.11.16 00:01 [766734] smart account 3Mxnm4wd25YMdQYKvdQ7NWf2zRoMkPrhLrN > SELF 0.00000000 Waves

{ "type": 13, "id": "BqfApDvCnsC3J3vPvKdmpVhaDYF8s3fr7wqoF24Fq8Bo", "fee": 1000000, "feeAssetId": null, "timestamp": 1573851679183, "version": 1, "sender": "3Mxnm4wd25YMdQYKvdQ7NWf2zRoMkPrhLrN", "senderPublicKey": "FpjmXEPHMFPsSMkoA7XTMmBU8bnxZFyD1aFSM4Az4fZ1", "proofs": [ "UoGPYZyksqzks4Cs4HX1CwbC2pTRyBLP1qfnkuHkvx5oM3kucWsBUrqm4wuRjnJEuTdKoWZjtoRiEAMErfRmgU7" ], "script": "base64:AAIDAAAAAAAAACwIARIAEgASBQoDCAEIEgASAwoBCBIAEgYKBAgBAQgSAwoBCBIHCgUICAEBCAAAAGYBAAAADmdldE51bWJlckJ5S2V5AAAAAQAAAANrZXkEAAAAByRtYXRjaDAJAAQaAAAAAgUAAAAEdGhpcwUAAAADa2V5AwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAANJbnQEAAAAAWEFAAAAByRtYXRjaDAFAAAAAWEAAAAAAAAAAAABAAAADmdldFN0cmluZ0J5S2V5AAAAAQAAAANrZXkEAAAAByRtYXRjaDAJAAQdAAAAAgUAAAAEdGhpcwUAAAADa2V5AwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAAZTdHJpbmcEAAAAAWEFAAAAByRtYXRjaDAFAAAAAWECAAAAAAEAAAAMZ2V0Qm9vbEJ5S2V5AAAAAQAAAANrZXkEAAAAByRtYXRjaDAJAAQbAAAAAgUAAAAEdGhpcwUAAAADa2V5AwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAAdCb29sZWFuBAAAAAFhBQAAAAckbWF0Y2gwBQAAAAFhBwEAAAAYZ2V0TnVtYmVyQnlBZGRyZXNzQW5kS2V5AAAAAgAAAAdhZGRyZXNzAAAAA2tleQQAAAAHJG1hdGNoMAkABBoAAAACCQEAAAAcQGV4dHJVc2VyKGFkZHJlc3NGcm9tU3RyaW5nKQAAAAEFAAAAB2FkZHJlc3MFAAAAA2tleQMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAADSW50BAAAAAFhBQAAAAckbWF0Y2gwBQAAAAFhAAAAAAAAAAAAAQAAABhnZXRTdHJpbmdCeUFkZHJlc3NBbmRLZXkAAAACAAAAB2FkZHJlc3MAAAADa2V5BAAAAAckbWF0Y2gwCQAEHQAAAAIJAQAAABxAZXh0clVzZXIoYWRkcmVzc0Zyb21TdHJpbmcpAAAAAQUAAAAHYWRkcmVzcwUAAAADa2V5AwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAAZTdHJpbmcEAAAAAWEFAAAAByRtYXRjaDAFAAAAAWECAAAAAAEAAAAWZ2V0Qm9vbEJ5QWRkcmVzc0FuZEtleQAAAAIAAAAHYWRkcmVzcwAAAANrZXkEAAAAByRtYXRjaDAJAAQbAAAAAgkBAAAAHEBleHRyVXNlcihhZGRyZXNzRnJvbVN0cmluZykAAAABBQAAAAdhZGRyZXNzBQAAAANrZXkDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAAB0Jvb2xlYW4EAAAAAWEFAAAAByRtYXRjaDAFAAAAAWEHAAAAAAxTRU5EVFhFWFBJUkUAAAAAAAAAAB4AAAAAD0xJU1RTUExJVFNZTUJPTAIAAAABXwAAAAAOTElTVERBVEFTWU1CT0wCAAAAASsAAAAAB1dBVkVMRVQAAAAAAAX14QAAAAAABVBBVUxJAAAAAAAAAABkAAAAAA1DUllUSUNBTFNIQVJFAAAAAAAAAAAUAAAAAAxMRUFTSU5HU0hBUkUAAAAAAAAAAFoAAAAADUxFQVNJTlRYQ09VTlQAAAAAAAAAAAoAAAAADURFRklDSVRPRkZTRVQAAAAAAAAAAAoAAAAADFdBVkVTQVNTRVRJRAIAAAAFd2F2ZXMAAAAACENBTkNFTEVEAgAAAAhjYW5jZWxlZAAAAAADTkVXAgAAAANuZXcAAAAAEk5ldXRyaW5vQXNzZXRJZEtleQIAAAARbmV1dHJpbm9fYXNzZXRfaWQAAAAADkJvbmRBc3NldElkS2V5AgAAAA1ib25kX2Fzc2V0X2lkAAAAABJSZXNlcnZlQ29udHJhY3RLZXkCAAAAEHJlc2VydmVfY29udHJhY3QAAAAAEkF1Y3Rpb25Db250cmFjdEtleQIAAAAQYXVjdGlvbl9jb250cmFjdAAAAAAWTGlxdWlkYXRpb25Db250cmFjdEtleQIAAAAUbGlxdWlkYXRpb25fY29udHJhY3QAAAAADlJQRENvbnRyYWN0S2V5AgAAAAxycGRfY29udHJhY3QAAAAAEUNvbnRvbENvbnRyYWN0S2V5AgAAABBjb250cm9sX2NvbnRyYWN0AAAAABZCYWxhbmNlTG9ja0ludGVydmFsS2V5AgAAABViYWxhbmNlX2xvY2tfaW50ZXJ2YWwAAAAAFU1pbldhdmVzU3dhcEFtb3VudEtleQIAAAAVbWluX3dhdmVzX3N3YXBfYW1vdW50AAAAABhNaW5OZXV0cmlub1N3YXBBbW91bnRLZXkCAAAAGG1pbl9uZXV0cmlub19zd2FwX2Ftb3VudAAAAAAOTm9kZUFkZHJlc3NLZXkCAAAADG5vZGVfYWRkcmVzcwAAAAAVTm9kZU9yYWNsZVByb3ZpZGVyS2V5AgAAABRvcmFjbGVfbm9kZV9wcm92aWRlcgAAAAASTGVhc2luZ0ludGVydmFsS2V5AgAAABBsZWFzaW5nX2ludGVydmFsAAAAAA1SUERCYWxhbmNlS2V5AgAAAAtycGRfYmFsYW5jZQEAAAAYZ2V0UlBEQ29udHJhY3RCYWxhbmNlS2V5AAAAAQAAAAdhc3NldElkCQABLAAAAAIJAAEsAAAAAgUAAAANUlBEQmFsYW5jZUtleQIAAAABXwkAAlgAAAABBQAAAAdhc3NldElkAAAAABFUb3RhbE9yZGVyYm9va0tleQIAAAAPdG90YWxfb3JkZXJib29rAAAAABxUb3RhbExpcXVpZGF0aW9uT3JkZXJib29rS2V5AgAAABt0b3RhbF9saXF1aWRhdGlvbl9vcmRlcmJvb2sAAAAACFByaWNlS2V5AgAAAAVwcmljZQAAAAANUHJpY2VJbmRleEtleQIAAAALcHJpY2VfaW5kZXgAAAAADElzQmxvY2tlZEtleQIAAAAKaXNfYmxvY2tlZAAAAAAVTGVhc2luZ0V4cGlyZUJsb2NrS2V5AgAAABRsZWFzaW5nX2V4cGlyZV9ibG9jawAAAAAOSXNSZWJhbGFuY2VLZXkCAAAADGlzX3JlYmFsYW5jZQAAAAARTGVhc2luZ1R4Q291bnRLZXkCAAAADWxlYXNpbmdfaW5kZXgAAAAAEExlYXNpbmdBbW91bnRLZXkCAAAADmxlYXNpbmdfYW1vdW50AQAAABJnZXRQcmljZUhpc3RvcnlLZXkAAAABAAAABWJsb2NrCQABLAAAAAIJAAEsAAAAAgUAAAAIUHJpY2VLZXkCAAAAAV8JAAGkAAAAAQUAAAAFYmxvY2sBAAAAGGdldEhlaWdodFByaWNlQnlJbmRleEtleQAAAAEAAAAFaW5kZXgJAAEsAAAAAgkAASwAAAACBQAAAA1QcmljZUluZGV4S2V5AgAAAAFfCQABpAAAAAEFAAAABWluZGV4AAAAAA9SUERTeW5jSW5kZXhLZXkCAAAADnJwZF9zeW5jX2luZGV4AQAAACBnZXRSUERTbmFwc2hvdENvbnRyYWN0QmFsYW5jZUtleQAAAAIAAAAFY291bnQAAAAHYXNzZXRJZAkAASwAAAACCQABLAAAAAIJAAEsAAAAAgkAASwAAAACBQAAAA1SUERCYWxhbmNlS2V5AgAAAAFfCQACWAAAAAEFAAAAB2Fzc2V0SWQCAAAAAV8JAAGkAAAAAQUAAAAFY291bnQBAAAAHWdldENhbmNlbExlYXNlVHhSZXNlcnZlRmVlS2V5AAAAAQAAAARoYXNoCQABLAAAAAIJAAEsAAAAAgIAAAAbY2FuY2VsX2xlYXNlX3R4X3Jlc2VydmVfZmVlAgAAAAFfBQAAAARoYXNoAQAAABpnZXRBY2NvdW50TG9ja2VkQmFsYW5jZUtleQAAAAIAAAAFb3duZXIAAAAHYXNzZXRJZAkAASwAAAACCQABLAAAAAIJAAEsAAAAAgIAAAAIYmFsYW5jZV8FAAAAB2Fzc2V0SWQCAAAAAV8FAAAABW93bmVyAQAAABhnZXRCYWxhbmNlVW5sb2NrQmxvY2tLZXkAAAABAAAABW93bmVyCQABLAAAAAICAAAADmJhbGFuY2VfYmxvY2tfBQAAAAVvd25lcgEAAAAPZ2V0UlBEUHJvZml0S2V5AAAAAQAAAAVjb3VudAkAASwAAAACCQABLAAAAAICAAAACnJwZF9wcm9maXQCAAAAAV8JAAGkAAAAAQUAAAAFY291bnQBAAAAE2dldExvY2tlZEJhbGFuY2VLZXkAAAABAAAAB2Fzc2V0SWQJAAEsAAAAAgIAAAAIYmFsYW5jZV8FAAAAB2Fzc2V0SWQBAAAAE2dldExlYXNlVHhTdGF0dXNLZXkAAAABAAAABGhhc2gJAAEsAAAAAgkAASwAAAACAgAAAA9sZWFzZV90eF9zdGF0dXMCAAAAAV8FAAAABGhhc2gBAAAAGWdldExlYXNlVHhBbW91bnRCeUhhc2hLZXkAAAABAAAABGhhc2gJAAEsAAAAAgkAASwAAAACBQAAABBMZWFzaW5nQW1vdW50S2V5AgAAAAFfBQAAAARoYXNoAQAAABhnZXRMZWFzZVR4Qnl0ZXNCeUhhc2hLZXkAAAABAAAABGhhc2gJAAEsAAAAAgkAASwAAAACAgAAAAhsZWFzZV90eAIAAAABXwUAAAAEaGFzaAEAAAAcZ2V0TGVhc2VUeEV4cGlyZVNlbmRCbG9ja0tleQAAAAEAAAAEaGFzaAkAASwAAAACCQABLAAAAAICAAAAE2xlYXNpbmdfZXhwaXJlX3NlbmQCAAAAAV8FAAAABGhhc2gBAAAAFmNvbnZlcnROZXV0cmlub1RvV2F2ZXMAAAACAAAABmFtb3VudAAAAAVwcmljZQkAAGkAAAACCQAAaAAAAAIJAABpAAAAAgkAAGgAAAACBQAAAAZhbW91bnQAAAAAAAAAAGQFAAAABXByaWNlBQAAAAdXQVZFTEVUBQAAAAVQQVVMSQEAAAAWY29udmVydFdhdmVzVG9OZXV0cmlubwAAAAIAAAAGYW1vdW50AAAABXByaWNlCQAAaQAAAAIJAABoAAAAAgkAAGkAAAACCQAAaAAAAAIFAAAABmFtb3VudAUAAAAFcHJpY2UAAAAAAAAAAGQFAAAABVBBVUxJBQAAAAdXQVZFTEVUAQAAABVjb252ZXJ0TmV1dHJpbm9Ub0JvbmQAAAABAAAABmFtb3VudAkAAGkAAAACBQAAAAZhbW91bnQFAAAABVBBVUxJAQAAABVjb252ZXJ0Qm9uZFRvTmV1dHJpbm8AAAABAAAABmFtb3VudAkAAGgAAAACBQAAAAZhbW91bnQFAAAABVBBVUxJAQAAABJjb252ZXJ0V2F2ZXNUb0JvbmQAAAACAAAABmFtb3VudAAAAAVwcmljZQkBAAAAFWNvbnZlcnROZXV0cmlub1RvQm9uZAAAAAEJAQAAABZjb252ZXJ0V2F2ZXNUb05ldXRyaW5vAAAAAgUAAAAGYW1vdW50BQAAAAVwcmljZQEAAAAQZ2V0TG9ja2VkQmFsYW5jZQAAAAEAAAAHYXNzZXRJZAkBAAAADmdldE51bWJlckJ5S2V5AAAAAQkBAAAAE2dldExvY2tlZEJhbGFuY2VLZXkAAAABBQAAAAdhc3NldElkAAAAABNsaXF1aWRhdGlvbkNvbnRyYWN0CQEAAAAOZ2V0U3RyaW5nQnlLZXkAAAABBQAAABZMaXF1aWRhdGlvbkNvbnRyYWN0S2V5AAAAABVuZXV0cmlub0Fzc2V0SWRTdHJpbmcJAQAAAA5nZXRTdHJpbmdCeUtleQAAAAEFAAAAEk5ldXRyaW5vQXNzZXRJZEtleQAAAAAPbmV1dHJpbm9Bc3NldElkCQACWQAAAAEFAAAAFW5ldXRyaW5vQXNzZXRJZFN0cmluZwAAAAAPcmVzZXJ2ZUNvbnRyYWN0CQEAAAAOZ2V0U3RyaW5nQnlLZXkAAAABBQAAABJSZXNlcnZlQ29udHJhY3RLZXkAAAAAD2F1Y3Rpb25Db250cmFjdAkBAAAADmdldFN0cmluZ0J5S2V5AAAAAQUAAAASQXVjdGlvbkNvbnRyYWN0S2V5AAAAAAtycGRDb250cmFjdAkBAAAADmdldFN0cmluZ0J5S2V5AAAAAQUAAAAOUlBEQ29udHJhY3RLZXkAAAAAD2NvbnRyb2xDb250cmFjdAkBAAAADmdldFN0cmluZ0J5S2V5AAAAAQUAAAARQ29udG9sQ29udHJhY3RLZXkAAAAADGN1cnJlbnRQcmljZQkBAAAAGGdldE51bWJlckJ5QWRkcmVzc0FuZEtleQAAAAIFAAAAD2NvbnRyb2xDb250cmFjdAUAAAAIUHJpY2VLZXkAAAAACnByaWNlSW5kZXgJAQAAABhnZXROdW1iZXJCeUFkZHJlc3NBbmRLZXkAAAACBQAAAA9jb250cm9sQ29udHJhY3QFAAAADVByaWNlSW5kZXhLZXkAAAAACWlzQmxvY2tlZAkBAAAAFmdldEJvb2xCeUFkZHJlc3NBbmRLZXkAAAACBQAAAA9jb250cm9sQ29udHJhY3QFAAAADElzQmxvY2tlZEtleQAAAAAObGVhc2luZ1R4Q291bnQJAQAAAA5nZXROdW1iZXJCeUtleQAAAAEFAAAAEUxlYXNpbmdUeENvdW50S2V5AAAAAAtpc1JlYmFsYW5jZQkBAAAADGdldEJvb2xCeUtleQAAAAEFAAAADklzUmViYWxhbmNlS2V5AAAAAA9sZWFzaW5nSW50ZXJ2YWwJAQAAAA5nZXROdW1iZXJCeUtleQAAAAEFAAAAEkxlYXNpbmdJbnRlcnZhbEtleQAAAAASbGVhc2luZ0V4cGlyZUJsb2NrCQEAAAAOZ2V0TnVtYmVyQnlLZXkAAAABBQAAABVMZWFzaW5nRXhwaXJlQmxvY2tLZXkAAAAADWxlYXNpbmdBbW91bnQJAQAAAA5nZXROdW1iZXJCeUtleQAAAAEFAAAAEExlYXNpbmdBbW91bnRLZXkAAAAAC25vZGVBZGRyZXNzCQEAAAAOZ2V0U3RyaW5nQnlLZXkAAAABBQAAAA5Ob2RlQWRkcmVzc0tleQAAAAAVbm9kZU9yYWNsZVByb3ZpZGVyS2V5CQEAAAAOZ2V0U3RyaW5nQnlLZXkAAAABBQAAABVOb2RlT3JhY2xlUHJvdmlkZXJLZXkAAAAADHJwZFN5bmNJbmRleAkBAAAADmdldE51bWJlckJ5S2V5AAAAAQUAAAAPUlBEU3luY0luZGV4S2V5AAAAABNiYWxhbmNlTG9ja0ludGVydmFsCQEAAAAOZ2V0TnVtYmVyQnlLZXkAAAABBQAAABZCYWxhbmNlTG9ja0ludGVydmFsS2V5AAAAABJtaW5XYXZlc1N3YXBBbW91bnQJAQAAAA5nZXROdW1iZXJCeUtleQAAAAEFAAAAFU1pbldhdmVzU3dhcEFtb3VudEtleQAAAAAVbWluTmV1dHJpbm9Td2FwQW1vdW50CQEAAAAOZ2V0TnVtYmVyQnlLZXkAAAABBQAAABhNaW5OZXV0cmlub1N3YXBBbW91bnRLZXkAAAAAB3Jlc2VydmUJAABlAAAAAgkBAAAADHdhdmVzQmFsYW5jZQAAAAEFAAAABHRoaXMJAQAAABBnZXRMb2NrZWRCYWxhbmNlAAAAAQUAAAAMV0FWRVNBU1NFVElEAAAAABVyZXNlcnZlV2l0aG91dExlYXNpbmcJAABlAAAAAgUAAAAHcmVzZXJ2ZQUAAAANbGVhc2luZ0Ftb3VudAAAAAALYm9uZEFzc2V0SWQJAAJZAAAAAQkBAAAADmdldFN0cmluZ0J5S2V5AAAAAQUAAAAOQm9uZEFzc2V0SWRLZXkAAAAACmJvbmRTdXBwbHkJAABlAAAAAggJAQAAAAdleHRyYWN0AAAAAQkAA+wAAAABBQAAAAtib25kQXNzZXRJZAAAAAhxdWFudGl0eQkAA+sAAAACBQAAAAR0aGlzBQAAAAtib25kQXNzZXRJZAAAAAAObmV1dHJpbm9TdXBwbHkJAABkAAAAAgkAAGUAAAACCAkBAAAAB2V4dHJhY3QAAAABCQAD7AAAAAEFAAAAD25ldXRyaW5vQXNzZXRJZAAAAAhxdWFudGl0eQkAA+sAAAACBQAAAAR0aGlzBQAAAA9uZXV0cmlub0Fzc2V0SWQJAQAAABBnZXRMb2NrZWRCYWxhbmNlAAAAAQUAAAAVbmV1dHJpbm9Bc3NldElkU3RyaW5nAAAAAAdzdXJwbHVzCQAAZQAAAAIJAQAAABZjb252ZXJ0V2F2ZXNUb05ldXRyaW5vAAAAAgUAAAAHcmVzZXJ2ZQUAAAAMY3VycmVudFByaWNlBQAAAA5uZXV0cmlub1N1cHBseQAAAAAHZGVmaWNpdAkAAGUAAAACBQAAAA5uZXV0cmlub1N1cHBseQkBAAAAFmNvbnZlcnRXYXZlc1RvTmV1dHJpbm8AAAACBQAAAAdyZXNlcnZlBQAAAAxjdXJyZW50UHJpY2UBAAAAFWdldFJQRENvbnRyYWN0QmFsYW5jZQAAAAEAAAAHYXNzZXRJZAkBAAAAGGdldE51bWJlckJ5QWRkcmVzc0FuZEtleQAAAAIFAAAAC3JwZENvbnRyYWN0CQEAAAAYZ2V0UlBEQ29udHJhY3RCYWxhbmNlS2V5AAAAAQUAAAAHYXNzZXRJZAAAAAAZdG90YWxMaXF1aWRhdGlvbk9yZGVyYm9vawkBAAAAGGdldE51bWJlckJ5QWRkcmVzc0FuZEtleQAAAAIFAAAAD2F1Y3Rpb25Db250cmFjdAUAAAAcVG90YWxMaXF1aWRhdGlvbk9yZGVyYm9va0tleQAAAAAOdG90YWxPcmRlcmJvb2sJAQAAABhnZXROdW1iZXJCeUFkZHJlc3NBbmRLZXkAAAACBQAAAA9hdWN0aW9uQ29udHJhY3QFAAAAEVRvdGFsT3JkZXJib29rS2V5AQAAAA9nZXRQcmljZUhpc3RvcnkAAAABAAAABWJsb2NrCQEAAAAYZ2V0TnVtYmVyQnlBZGRyZXNzQW5kS2V5AAAAAgUAAAAPY29udHJvbENvbnRyYWN0CQEAAAASZ2V0UHJpY2VIaXN0b3J5S2V5AAAAAQUAAAAFYmxvY2sBAAAAFWdldEhlaWdodFByaWNlQnlJbmRleAAAAAEAAAAFaW5kZXgJAQAAABhnZXROdW1iZXJCeUFkZHJlc3NBbmRLZXkAAAACBQAAAA9jb250cm9sQ29udHJhY3QJAQAAABhnZXRIZWlnaHRQcmljZUJ5SW5kZXhLZXkAAAABBQAAAAVpbmRleAEAAAAaZ2V0Q2FuY2VsTGVhc2VUeFJlc2VydmVGZWUAAAABAAAABGhhc2gJAQAAAA5nZXROdW1iZXJCeUtleQAAAAEJAQAAAB1nZXRDYW5jZWxMZWFzZVR4UmVzZXJ2ZUZlZUtleQAAAAEFAAAABGhhc2gBAAAAF2dldEFjY291bnRMb2NrZWRCYWxhbmNlAAAAAgAAAAVvd25lcgAAAAdhc3NldElkCQEAAAAOZ2V0TnVtYmVyQnlLZXkAAAABCQEAAAAaZ2V0QWNjb3VudExvY2tlZEJhbGFuY2VLZXkAAAACBQAAAAVvd25lcgUAAAAHYXNzZXRJZAEAAAAVZ2V0VW5sb2NrQmFsYW5jZUJsb2NrAAAAAQAAAAVvd25lcgkBAAAADmdldE51bWJlckJ5S2V5AAAAAQkBAAAAGGdldEJhbGFuY2VVbmxvY2tCbG9ja0tleQAAAAEFAAAABW93bmVyAQAAAAxnZXRSUERQcm9maXQAAAABAAAABWNvdW50CQEAAAAOZ2V0TnVtYmVyQnlLZXkAAAABCQEAAAAPZ2V0UlBEUHJvZml0S2V5AAAAAQUAAAAFY291bnQBAAAAEGdldExlYXNlVHhTdGF0dXMAAAABAAAABGhhc2gJAQAAAA5nZXRTdHJpbmdCeUtleQAAAAEJAQAAABNnZXRMZWFzZVR4U3RhdHVzS2V5AAAAAQUAAAAEaGFzaAEAAAAWZ2V0TGVhc2VUeEFtb3VudEJ5SGFzaAAAAAEAAAAEaGFzaAkBAAAADmdldE51bWJlckJ5S2V5AAAAAQkBAAAAGWdldExlYXNlVHhBbW91bnRCeUhhc2hLZXkAAAABBQAAAARoYXNoAQAAABVnZXRMZWFzZVR4Qnl0ZXNCeUhhc2gAAAABAAAABGhhc2gJAQAAAA5nZXRTdHJpbmdCeUtleQAAAAEJAQAAABhnZXRMZWFzZVR4Qnl0ZXNCeUhhc2hLZXkAAAABBQAAAARoYXNoAQAAABlnZXRMZWFzZVR4RXhwaXJlU2VuZEJsb2NrAAAAAQAAAARoYXNoCQEAAAAOZ2V0TnVtYmVyQnlLZXkAAAABCQEAAAAcZ2V0TGVhc2VUeEV4cGlyZVNlbmRCbG9ja0tleQAAAAEFAAAABGhhc2gAAAAJAAAAAWkBAAAAE3N3YXBXYXZlc1RvTmV1dHJpbm8AAAAABAAAAANwbXQJAQAAAAdleHRyYWN0AAAAAQgFAAAAAWkAAAAHcGF5bWVudAQAAAAHYWNjb3VudAkABCUAAAABCAUAAAABaQAAAAZjYWxsZXIDCQAAZgAAAAIFAAAAEm1pbldhdmVzU3dhcEFtb3VudAgFAAAAA3BtdAAAAAZhbW91bnQJAAACAAAAAQkAASwAAAACCQABLAAAAAICAAAALWFuIGFtb3VudCBpcyBsZXNzIHRoYW4gbWluIGF2YWlsYWJsZSBhbW91bnQ6IAkAAaQAAAABBQAAABJtaW5XYXZlc1N3YXBBbW91bnQCAAAACSB3YXZlbGV0cwMJAQAAAAlpc0RlZmluZWQAAAABCAUAAAADcG10AAAAB2Fzc2V0SWQJAAACAAAAAQIAAAASY2FuIHVzZSB3YXZlcyBvbmx5AwUAAAAJaXNCbG9ja2VkCQAAAgAAAAECAAAAWmNvbnRyYWN0IGlzIGJsb2NrZWQgYnkgRU1FUkdFTkNZIFNIVVRET1dOIGFjdGlvbnMgdW50aWxsIHJlYWN0aXZhdGlvbiBieSBlbWVyZ2VuY3kgb3JhY2xlcwMJAABmAAAAAgkBAAAAFWdldFVubG9ja0JhbGFuY2VCbG9jawAAAAEFAAAAB2FjY291bnQFAAAABmhlaWdodAkAAAIAAAABCQABLAAAAAIJAAEsAAAAAgIAAAAGYXdhaXQgCQABpAAAAAEJAABlAAAAAgkBAAAAFWdldFVubG9ja0JhbGFuY2VCbG9jawAAAAEFAAAAB2FjY291bnQFAAAABmhlaWdodAIAAAAHIGJsb2NrcwMJAQAAAAIhPQAAAAIJAQAAABdnZXRBY2NvdW50TG9ja2VkQmFsYW5jZQAAAAIFAAAAB2FjY291bnQFAAAADFdBVkVTQVNTRVRJRAAAAAAAAAAAAAkAAAIAAAABAgAAACJwbGVhc2Ugd2l0aGRyYXcgbG9ja2VkIGZ1bmRzIGZpcnN0CQEAAAAIV3JpdGVTZXQAAAABCQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACCQEAAAAaZ2V0QWNjb3VudExvY2tlZEJhbGFuY2VLZXkAAAACBQAAAAdhY2NvdW50BQAAAAxXQVZFU0FTU0VUSUQIBQAAAANwbXQAAAAGYW1vdW50CQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACCQEAAAAYZ2V0QmFsYW5jZVVubG9ja0Jsb2NrS2V5AAAAAQUAAAAHYWNjb3VudAkAAGQAAAACBQAAAAZoZWlnaHQFAAAAE2JhbGFuY2VMb2NrSW50ZXJ2YWwJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIJAQAAABNnZXRMb2NrZWRCYWxhbmNlS2V5AAAAAQUAAAAMV0FWRVNBU1NFVElECQAAZAAAAAIJAQAAABBnZXRMb2NrZWRCYWxhbmNlAAAAAQUAAAAMV0FWRVNBU1NFVElECAUAAAADcG10AAAABmFtb3VudAUAAAADbmlsAAAAAWkBAAAAE3N3YXBOZXV0cmlub1RvV2F2ZXMAAAAABAAAAANwbXQJAQAAAAdleHRyYWN0AAAAAQgFAAAAAWkAAAAHcGF5bWVudAQAAAAHYWNjb3VudAkABCUAAAABCAUAAAABaQAAAAZjYWxsZXIDCQAAZgAAAAIFAAAAFW1pbk5ldXRyaW5vU3dhcEFtb3VudAgFAAAAA3BtdAAAAAZhbW91bnQJAAACAAAAAQkAASwAAAACCQABLAAAAAICAAAALWFuIGFtb3VudCBpcyBsZXNzIHRoYW4gbWluIGF2YWlsYWJsZSBhbW91bnQ6IAkAAaQAAAABBQAAABVtaW5OZXV0cmlub1N3YXBBbW91bnQCAAAADyBuZXV0cmlubyBjZW50cwMFAAAACWlzQmxvY2tlZAkAAAIAAAABAgAAAFpjb250cmFjdCBpcyBibG9ja2VkIGJ5IEVNRVJHRU5DWSBTSFVURE9XTiBhY3Rpb25zIHVudGlsbCByZWFjdGl2YXRpb24gYnkgZW1lcmdlbmN5IG9yYWNsZXMDCQEAAAACIT0AAAACCAUAAAADcG10AAAAB2Fzc2V0SWQFAAAAD25ldXRyaW5vQXNzZXRJZAkAAAIAAAABAgAAAChjYW4gdXNlIGFwcHJvcHJpYXRlIG5ldXRyaW5vIHRva2VucyBvbmx5AwkAAGYAAAACCQEAAAAVZ2V0VW5sb2NrQmFsYW5jZUJsb2NrAAAAAQUAAAAHYWNjb3VudAUAAAAGaGVpZ2h0CQAAAgAAAAEJAAEsAAAAAgkAASwAAAACAgAAAAZhd2FpdCAJAAGkAAAAAQkAAGUAAAACCQEAAAAVZ2V0VW5sb2NrQmFsYW5jZUJsb2NrAAAAAQUAAAAHYWNjb3VudAUAAAAGaGVpZ2h0AgAAAAcgYmxvY2tzAwkBAAAAAiE9AAAAAgkBAAAAF2dldEFjY291bnRMb2NrZWRCYWxhbmNlAAAAAgUAAAAHYWNjb3VudAUAAAAVbmV1dHJpbm9Bc3NldElkU3RyaW5nAAAAAAAAAAAACQAAAgAAAAECAAAAInBsZWFzZSB3aXRoZHJhdyBsb2NrZWQgZnVuZHMgZmlyc3QEAAAAEG5ld0xvY2tlZEJhbGFuY2UJAABkAAAAAgkBAAAAEGdldExvY2tlZEJhbGFuY2UAAAABBQAAABVuZXV0cmlub0Fzc2V0SWRTdHJpbmcIBQAAAANwbXQAAAAGYW1vdW50CQEAAAAIV3JpdGVTZXQAAAABCQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACCQEAAAAaZ2V0QWNjb3VudExvY2tlZEJhbGFuY2VLZXkAAAACBQAAAAdhY2NvdW50BQAAABVuZXV0cmlub0Fzc2V0SWRTdHJpbmcIBQAAAANwbXQAAAAGYW1vdW50CQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACCQEAAAAYZ2V0QmFsYW5jZVVubG9ja0Jsb2NrS2V5AAAAAQUAAAAHYWNjb3VudAkAAGQAAAACBQAAAAZoZWlnaHQFAAAAE2JhbGFuY2VMb2NrSW50ZXJ2YWwJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIJAQAAABNnZXRMb2NrZWRCYWxhbmNlS2V5AAAAAQUAAAAVbmV1dHJpbm9Bc3NldElkU3RyaW5nBQAAABBuZXdMb2NrZWRCYWxhbmNlCQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACBQAAAA5Jc1JlYmFsYW5jZUtleQMJAABnAAAAAgUAAAAVcmVzZXJ2ZVdpdGhvdXRMZWFzaW5nCQEAAAAWY29udmVydE5ldXRyaW5vVG9XYXZlcwAAAAIFAAAAEG5ld0xvY2tlZEJhbGFuY2UFAAAADGN1cnJlbnRQcmljZQcGBQAAAANuaWwAAAABaQEAAAAId2l0aGRyYXcAAAADAAAAB2FjY291bnQAAAAFaW5kZXgAAAANbG9ja2VkQXNzZXRJZAQAAAAMdW5sb2NrSGVpZ2h0CQEAAAAVZ2V0VW5sb2NrQmFsYW5jZUJsb2NrAAAAAQUAAAAHYWNjb3VudAQAAAANbG9ja2VkQmFsYW5jZQkBAAAAF2dldEFjY291bnRMb2NrZWRCYWxhbmNlAAAAAgUAAAAHYWNjb3VudAUAAAANbG9ja2VkQXNzZXRJZAQAAAALaW5kZXhIZWlnaHQJAQAAABVnZXRIZWlnaHRQcmljZUJ5SW5kZXgAAAABBQAAAAVpbmRleAQAAAAPbmV4dEluZGV4SGVpZ2h0CQEAAAAVZ2V0SGVpZ2h0UHJpY2VCeUluZGV4AAAAAQkAAGQAAAACBQAAAAVpbmRleAAAAAAAAAAAAQQAAAAMcHJpY2VCeUluZGV4CQEAAAAPZ2V0UHJpY2VIaXN0b3J5AAAAAQUAAAALaW5kZXhIZWlnaHQEAAAABmFtb3VudAMJAAAAAAAAAgUAAAANbG9ja2VkQXNzZXRJZAUAAAAVbmV1dHJpbm9Bc3NldElkU3RyaW5nCQEAAAAWY29udmVydE5ldXRyaW5vVG9XYXZlcwAAAAIFAAAADWxvY2tlZEJhbGFuY2UFAAAADHByaWNlQnlJbmRleAkBAAAAFmNvbnZlcnRXYXZlc1RvTmV1dHJpbm8AAAACBQAAAA1sb2NrZWRCYWxhbmNlBQAAAAxwcmljZUJ5SW5kZXgDBQAAAAlpc0Jsb2NrZWQJAAACAAAAAQIAAABaY29udHJhY3QgaXMgYmxvY2tlZCBieSBFTUVSR0VOQ1kgU0hVVERPV04gYWN0aW9ucyB1bnRpbGwgcmVhY3RpdmF0aW9uIGJ5IGVtZXJnZW5jeSBvcmFjbGVzAwkAAGcAAAACAAAAAAAAAAAABQAAAAZhbW91bnQJAAACAAAAAQkAASwAAAACCQABLAAAAAICAAAAFWJhbGFuY2UgZXF1YWxzIHplcm8gKAUAAAANbG9ja2VkQXNzZXRJZAIAAAABKQMJAABmAAAAAgUAAAAMdW5sb2NrSGVpZ2h0BQAAAAZoZWlnaHQJAAACAAAAAQkAASwAAAACCQABLAAAAAICAAAAEXBsZWFzZSB3YWl0IGZvcjogCQABpAAAAAEFAAAADHVubG9ja0hlaWdodAIAAAAlIGJsb2NrIGhlaWdodCB0byB3aXRoZHJhdyBXQVZFUyBmdW5kcwMDAwkAAGYAAAACBQAAAAVpbmRleAUAAAAKcHJpY2VJbmRleAYJAABmAAAAAgUAAAALaW5kZXhIZWlnaHQFAAAADHVubG9ja0hlaWdodAYDCQEAAAACIT0AAAACBQAAAA9uZXh0SW5kZXhIZWlnaHQAAAAAAAAAAAAJAABnAAAAAgUAAAAMdW5sb2NrSGVpZ2h0BQAAAA9uZXh0SW5kZXhIZWlnaHQHCQAAAgAAAAECAAAAG2ludmFsaWQgcHJpY2UgaGlzdG9yeSBpbmRleAkBAAAADFNjcmlwdFJlc3VsdAAAAAIJAQAAAAhXcml0ZVNldAAAAAEJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIJAQAAABpnZXRBY2NvdW50TG9ja2VkQmFsYW5jZUtleQAAAAIFAAAAB2FjY291bnQFAAAADWxvY2tlZEFzc2V0SWQAAAAAAAAAAAAJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIJAQAAABNnZXRMb2NrZWRCYWxhbmNlS2V5AAAAAQUAAAANbG9ja2VkQXNzZXRJZAkAAGUAAAACCQEAAAAQZ2V0TG9ja2VkQmFsYW5jZQAAAAEFAAAADWxvY2tlZEFzc2V0SWQFAAAADWxvY2tlZEJhbGFuY2UFAAAAA25pbAkBAAAAC1RyYW5zZmVyU2V0AAAAAQkABEwAAAACCQEAAAAOU2NyaXB0VHJhbnNmZXIAAAADCQEAAAAcQGV4dHJVc2VyKGFkZHJlc3NGcm9tU3RyaW5nKQAAAAEFAAAAB2FjY291bnQFAAAABmFtb3VudAMJAAAAAAAAAgUAAAANbG9ja2VkQXNzZXRJZAUAAAAVbmV1dHJpbm9Bc3NldElkU3RyaW5nBQAAAAR1bml0BQAAAA9uZXV0cmlub0Fzc2V0SWQFAAAAA25pbAAAAAFpAQAAABF0cmFuc2ZlclRvQXVjdGlvbgAAAAAEAAAAEWRlZmljaXRCb25kQW1vdW50CQAAZQAAAAIJAABlAAAAAgkBAAAAFWNvbnZlcnROZXV0cmlub1RvQm9uZAAAAAEFAAAAB2RlZmljaXQJAAPrAAAAAgkBAAAAHEBleHRyVXNlcihhZGRyZXNzRnJvbVN0cmluZykAAAABBQAAAA9hdWN0aW9uQ29udHJhY3QFAAAAC2JvbmRBc3NldElkBQAAABl0b3RhbExpcXVpZGF0aW9uT3JkZXJib29rBAAAAAtzdXJwbHVzQm9uZAkAAGUAAAACCQAAZQAAAAIJAQAAABVjb252ZXJ0TmV1dHJpbm9Ub0JvbmQAAAABBQAAAAdzdXJwbHVzCQAD6wAAAAIJAQAAABxAZXh0clVzZXIoYWRkcmVzc0Zyb21TdHJpbmcpAAAAAQUAAAAPYXVjdGlvbkNvbnRyYWN0BQAAAA9uZXV0cmlub0Fzc2V0SWQFAAAADnRvdGFsT3JkZXJib29rAwUAAAAJaXNCbG9ja2VkCQAAAgAAAAECAAAAWmNvbnRyYWN0IGlzIGJsb2NrZWQgYnkgRU1FUkdFTkNZIFNIVVRET1dOIGFjdGlvbnMgdW50aWxsIHJlYWN0aXZhdGlvbiBieSBlbWVyZ2VuY3kgb3JhY2xlcwMJAABnAAAAAgUAAAARZGVmaWNpdEJvbmRBbW91bnQJAABpAAAAAgkAAGgAAAACBQAAAA5uZXV0cmlub1N1cHBseQUAAAANREVGSUNJVE9GRlNFVAAAAAAAAAAAZAkBAAAAC1RyYW5zZmVyU2V0AAAAAQkABEwAAAACCQEAAAAOU2NyaXB0VHJhbnNmZXIAAAADCQEAAAAcQGV4dHJVc2VyKGFkZHJlc3NGcm9tU3RyaW5nKQAAAAEFAAAAD2F1Y3Rpb25Db250cmFjdAUAAAARZGVmaWNpdEJvbmRBbW91bnQFAAAAC2JvbmRBc3NldElkBQAAAANuaWwDCQAAZgAAAAIFAAAAC3N1cnBsdXNCb25kAAAAAAAAAAAACQEAAAALVHJhbnNmZXJTZXQAAAABCQAETAAAAAIJAQAAAA5TY3JpcHRUcmFuc2ZlcgAAAAMJAQAAABxAZXh0clVzZXIoYWRkcmVzc0Zyb21TdHJpbmcpAAAAAQUAAAATbGlxdWlkYXRpb25Db250cmFjdAkBAAAAFWNvbnZlcnRCb25kVG9OZXV0cmlubwAAAAEFAAAAC3N1cnBsdXNCb25kBQAAAA9uZXV0cmlub0Fzc2V0SWQFAAAAA25pbAkAAAIAAAABAgAAACVib25kIHdlcmUgZ2VuZXJhdGVkIG9yIGRvIG5vdCBuZWVkIGl0AAAAAWkBAAAACHRyYW5zZmVyAAAAAQAAAAdhY2NvdW50BAAAAANwbXQJAQAAAAdleHRyYWN0AAAAAQgFAAAAAWkAAAAHcGF5bWVudAkBAAAAC1RyYW5zZmVyU2V0AAAAAQkABEwAAAACCQEAAAAOU2NyaXB0VHJhbnNmZXIAAAADCQEAAAAcQGV4dHJVc2VyKGFkZHJlc3NGcm9tU3RyaW5nKQAAAAEFAAAAB2FjY291bnQIBQAAAANwbXQAAAAGYW1vdW50CAUAAAADcG10AAAAB2Fzc2V0SWQFAAAAA25pbAAAAAFpAQAAAApub2RlUmV3YXJkAAAAAAQAAAADcG10CQEAAAAFdmFsdWUAAAABCAUAAAABaQAAAAdwYXltZW50AwkBAAAAAiE9AAAAAggFAAAAAWkAAAAGY2FsbGVyCQEAAAAcQGV4dHJVc2VyKGFkZHJlc3NGcm9tU3RyaW5nKQAAAAEFAAAAC25vZGVBZGRyZXNzCQAAAgAAAAECAAAAR29ubHkgbm9kZSBhY2NvdW50IGlzIGFibGUgdG8gdHJhbnNmZXIgc3Rha2luZyByZXdhcmRzIGZyb20gbWFpbiBhY2NvdW50AwkBAAAACWlzRGVmaW5lZAAAAAEIBQAAAANwbXQAAAAHYXNzZXRJZAkAAAIAAAABAgAAABl3YXZlcyB0b2tlbnMgb25seSBhbGxvd2VkBAAAAAZhbW91bnQJAQAAABZjb252ZXJ0V2F2ZXNUb05ldXRyaW5vAAAAAggFAAAAA3BtdAAAAAZhbW91bnQFAAAADGN1cnJlbnRQcmljZQQAAAAPbmV3UnBkU3luY0luZGV4CQAAZAAAAAIFAAAADHJwZFN5bmNJbmRleAAAAAAAAAAAAQkBAAAADFNjcmlwdFJlc3VsdAAAAAIJAQAAAAhXcml0ZVNldAAAAAEJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIFAAAAD1JQRFN5bmNJbmRleEtleQUAAAAPbmV3UnBkU3luY0luZGV4CQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACCQEAAAAPZ2V0UlBEUHJvZml0S2V5AAAAAQUAAAAMcnBkU3luY0luZGV4BQAAAAZhbW91bnQJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIJAQAAACBnZXRSUERTbmFwc2hvdENvbnRyYWN0QmFsYW5jZUtleQAAAAIFAAAADHJwZFN5bmNJbmRleAUAAAAPbmV1dHJpbm9Bc3NldElkCQEAAAAVZ2V0UlBEQ29udHJhY3RCYWxhbmNlAAAAAQUAAAAPbmV1dHJpbm9Bc3NldElkBQAAAANuaWwJAQAAAAtUcmFuc2ZlclNldAAAAAEJAARMAAAAAgkBAAAADlNjcmlwdFRyYW5zZmVyAAAAAwkBAAAAHEBleHRyVXNlcihhZGRyZXNzRnJvbVN0cmluZykAAAABBQAAAAtycGRDb250cmFjdAUAAAAGYW1v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ZWVSZXNlcnZlCQAAZAAAAAIFAAAADWxlYXNpbmdBbW91bnQFAAAABmFtb3VudAUAAAAVcmVzZXJ2ZVdpdGhvdXRMZWFzaW5nAgAAAAEpCQEAAAAIV3JpdGVTZXQAAAABCQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACCQEAAAAdZ2V0Q2FuY2VsTGVhc2VUeFJlc2VydmVGZWVLZXkAAAABBQAAAAZ0eEhhc2gFAAAAA2ZlZQkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgUAAAARTGVhc2luZ1R4Q291bnRLZXkDCQAAAAAAAAIJAQAAABBnZXRMZWFzZVR4U3RhdHVzAAAAAQUAAAAGdHhIYXNoAgAAAAAJAABkAAAAAgUAAAAObGVhc2luZ1R4Q291bnQAAAAAAAAAAAEFAAAADmxlYXNpbmdUeENvdW50CQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACBQAAABBMZWFzaW5nQW1vdW50S2V5CQAAZAAAAAIFAAAADWxlYXNpbmdBbW91bnQFAAAABmFtb3VudAkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgUAAAAVTGVhc2luZ0V4cGlyZUJsb2NrS2V5AwkAAGYAAAACBQAAAAZoZWlnaHQFAAAAEmxlYXNpbmdFeHBpcmVCbG9jawkAAGQAAAACBQAAAAZoZWlnaHQFAAAAD2xlYXNpbmdJbnRlcnZhbAUAAAASbGVhc2luZ0V4cGlyZUJsb2NrCQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACCQEAAAATZ2V0TGVhc2VUeFN0YXR1c0tleQAAAAEFAAAABnR4SGFzaAUAAAADTkVXCQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACCQEAAAAcZ2V0TGVhc2VUeEV4cGlyZVNlbmRCbG9ja0tleQAAAAEFAAAABnR4SGFzaAkAAGQAAAACBQAAAAZoZWlnaHQFAAAADFNFTkRUWEVYUElSRQkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgkBAAAAGWdldExlYXNlVHhBbW91bnRCeUhhc2hLZXkAAAABBQAAAAZ0eEhhc2gFAAAABmFtb3VudAkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgkBAAAAGGdldExlYXNlVHhCeXRlc0J5SGFzaEtleQAAAAEFAAAABnR4SGFzaAkAAloAAAABBQAAAAd0eEJ5dGVzBQAAAANuaWwAAAABaQEAAAASY2FuY2VsU3R1Y2tMZWFzZVR4AAAAAQAAAAZ0eEhhc2gDAwMJAAAAAAAAAgkBAAAAEGdldExlYXNlVHhTdGF0dXMAAAABBQAAAAZ0eEhhc2gFAAAAA05FVwkBAAAAASEAAAABCQEAAAAJaXNEZWZpbmVkAAAAAQkAA+kAAAABCQACWQAAAAEFAAAABnR4SGFzaAcJAABmAAAAAgUAAAAGaGVpZ2h0CQEAAAAZZ2V0TGVhc2VUeEV4cGlyZVNlbmRCbG9jawAAAAEFAAAABnR4SGFzaAcEAAAABmFtb3VudAkBAAAAFmdldExlYXNlVHhBbW91bnRCeUhhc2gAAAABBQAAAAZ0eEhhc2gJAQAAAAhXcml0ZVNldAAAAAEJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIFAAAAEUxlYXNpbmdUeENvdW50S2V5CQAAZQAAAAIFAAAADmxlYXNpbmdUeENvdW50AAAAAAAAAAABCQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACBQAAABBMZWFzaW5nQW1vdW50S2V5CQAAZQAAAAIFAAAADWxlYXNpbmdBbW91bnQFAAAABmFtb3VudAkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgkBAAAAE2dldExlYXNlVHhTdGF0dXNLZXkAAAABBQAAAAZ0eEhhc2gFAAAACENBTkNFTEVECQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACBQAAAA5Jc1JlYmFsYW5jZUtleQMJAABnAAAAAgkAAGUAAAACBQAAABVyZXNlcnZlV2l0aG91dExlYXNpbmcFAAAABmFtb3VudAkBAAAAFmNvbnZlcnROZXV0cmlub1RvV2F2ZXMAAAACCQEAAAAQZ2V0TG9ja2VkQmFsYW5jZQAAAAEFAAAAFW5ldXRyaW5vQXNzZXRJZFN0cmluZwUAAAAMY3VycmVudFByaWNlBwYFAAAAA25pbAkAAAIAAAABAgAAAA9pbnZhbGlkIHR4IGhhc2gAAAABaQEAAAAVcmVnaXN0cmF0aW9uVW5sZWFzZVR4AAAABQAAAA1jaGFpbklkU3RyaW5nAAAAD3NlbmRlclB1Ymxp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", "chainId": 84, "height": 766734, "spentComplexity": 0 } View: original | compacted Prev: none Next: none Full:
OldNewDifferences
1-# no script
1+{-# STDLIB_VERSION 3 #-}
2+{-# SCRIPT_TYPE ACCOUNT #-}
3+{-# CONTENT_TYPE DAPP #-}
4+func a (b) = {
5+ let c = getInteger(this, b)
6+ if ($isInstanceOf(c, "Int"))
7+ then {
8+ let d = c
9+ d
10+ }
11+ else 0
12+ }
13+
14+
15+func e (b) = {
16+ let c = getString(this, b)
17+ if ($isInstanceOf(c, "String"))
18+ then {
19+ let d = c
20+ d
21+ }
22+ else ""
23+ }
24+
25+
26+func f (b) = {
27+ let c = getBoolean(this, b)
28+ if ($isInstanceOf(c, "Boolean"))
29+ then {
30+ let d = c
31+ d
32+ }
33+ else false
34+ }
35+
36+
37+func g (h,b) = {
38+ let c = getInteger(addressFromStringValue(h), b)
39+ if ($isInstanceOf(c, "Int"))
40+ then {
41+ let d = c
42+ d
43+ }
44+ else 0
45+ }
46+
47+
48+func i (h,b) = {
49+ let c = getString(addressFromStringValue(h), b)
50+ if ($isInstanceOf(c, "String"))
51+ then {
52+ let d = c
53+ d
54+ }
55+ else ""
56+ }
57+
58+
59+func j (h,b) = {
60+ let c = getBoolean(addressFromStringValue(h), b)
61+ if ($isInstanceOf(c, "Boolean"))
62+ then {
63+ let d = c
64+ d
65+ }
66+ else false
67+ }
68+
69+
70+let k = 30
71+
72+let l = "_"
73+
74+let m = "+"
75+
76+let n = 100000000
77+
78+let o = 100
79+
80+let p = 20
81+
82+let q = 90
83+
84+let r = 10
85+
86+let s = 10
87+
88+let t = "waves"
89+
90+let u = "canceled"
91+
92+let v = "new"
93+
94+let w = "neutrino_asset_id"
95+
96+let x = "bond_asset_id"
97+
98+let y = "reserve_contract"
99+
100+let z = "auction_contract"
101+
102+let A = "liquidation_contract"
103+
104+let B = "rpd_contract"
105+
106+let C = "control_contract"
107+
108+let D = "balance_lock_interval"
109+
110+let E = "min_waves_swap_amount"
111+
112+let F = "min_neutrino_swap_amount"
113+
114+let G = "node_address"
115+
116+let H = "oracle_node_provider"
117+
118+let I = "leasing_interval"
119+
120+let J = "rpd_balance"
121+
122+func K (L) = ((J + "_") + toBase58String(L))
123+
124+
125+let M = "total_orderbook"
126+
127+let N = "total_liquidation_orderbook"
128+
129+let O = "price"
130+
131+let P = "price_index"
132+
133+let Q = "is_blocked"
134+
135+let R = "leasing_expire_block"
136+
137+let S = "is_rebalance"
138+
139+let T = "leasing_index"
140+
141+let U = "leasing_amount"
142+
143+func V (W) = ((O + "_") + toString(W))
144+
145+
146+func X (Y) = ((P + "_") + toString(Y))
147+
148+
149+let Z = "rpd_sync_index"
150+
151+func aa (ab,L) = ((((J + "_") + toBase58String(L)) + "_") + toString(ab))
152+
153+
154+func ac (ad) = (("cancel_lease_tx_reserve_fee" + "_") + ad)
155+
156+
157+func ae (af,L) = ((("balance_" + L) + "_") + af)
158+
159+
160+func ag (af) = ("balance_block_" + af)
161+
162+
163+func ah (ab) = (("rpd_profit" + "_") + toString(ab))
164+
165+
166+func ai (L) = ("balance_" + L)
167+
168+
169+func aj (ad) = (("lease_tx_status" + "_") + ad)
170+
171+
172+func ak (ad) = ((U + "_") + ad)
173+
174+
175+func al (ad) = (("lease_tx" + "_") + ad)
176+
177+
178+func am (ad) = (("leasing_expire_send" + "_") + ad)
179+
180+
181+func an (ao,ap) = ((((ao * 100) / ap) * n) / o)
182+
183+
184+func aq (ao,ap) = ((((ao * ap) / 100) * o) / n)
185+
186+
187+func ar (ao) = (ao / o)
188+
189+
190+func as (ao) = (ao * o)
191+
192+
193+func at (ao,ap) = ar(aq(ao, ap))
194+
195+
196+func au (L) = a(ai(L))
197+
198+
199+let av = e(A)
200+
201+let aw = e(w)
202+
203+let ax = fromBase58String(aw)
204+
205+let ay = e(y)
206+
207+let az = e(z)
208+
209+let aA = e(B)
210+
211+let aB = e(C)
212+
213+let aC = g(aB, O)
214+
215+let aD = g(aB, P)
216+
217+let aE = j(aB, Q)
218+
219+let aF = a(T)
220+
221+let aG = f(S)
222+
223+let aH = a(I)
224+
225+let aI = a(R)
226+
227+let aJ = a(U)
228+
229+let aK = e(G)
230+
231+let aL = e(H)
232+
233+let aM = a(Z)
234+
235+let aN = a(D)
236+
237+let aO = a(E)
238+
239+let aP = a(F)
240+
241+let aQ = (wavesBalance(this) - au(t))
242+
243+let aR = (aQ - aJ)
244+
245+let aS = fromBase58String(e(x))
246+
247+let aT = (extract(assetInfo(aS)).quantity - assetBalance(this, aS))
248+
249+let aU = ((extract(assetInfo(ax)).quantity - assetBalance(this, ax)) + au(aw))
250+
251+let aV = (aq(aQ, aC) - aU)
252+
253+let aW = (aU - aq(aQ, aC))
254+
255+func aX (L) = g(aA, K(L))
256+
257+
258+let aY = g(az, N)
259+
260+let aZ = g(az, M)
261+
262+func ba (W) = g(aB, V(W))
263+
264+
265+func bb (Y) = g(aB, X(Y))
266+
267+
268+func bc (ad) = a(ac(ad))
269+
270+
271+func bd (af,L) = a(ae(af, L))
272+
273+
274+func be (af) = a(ag(af))
275+
276+
277+func bf (ab) = a(ah(ab))
278+
279+
280+func bg (ad) = e(aj(ad))
281+
282+
283+func bh (ad) = a(ak(ad))
284+
285+
286+func bi (ad) = e(al(ad))
287+
288+
289+func bj (ad) = a(am(ad))
290+
291+
292+@Callable(bk)
293+func swapWavesToNeutrino () = {
294+ let bl = extract(bk.payment)
295+ let bm = toString(bk.caller)
296+ if ((aO > bl.amount))
297+ then throw((("an amount is less than min available amount: " + toString(aO)) + " wavelets"))
298+ else if (isDefined(bl.assetId))
299+ then throw("can use waves only")
300+ else if (aE)
301+ then throw("contract is blocked by EMERGENCY SHUTDOWN actions untill reactivation by emergency oracles")
302+ else if ((be(bm) > height))
303+ then throw((("await " + toString((be(bm) - height))) + " blocks"))
304+ else if ((bd(bm, t) != 0))
305+ then throw("please withdraw locked funds first")
306+ else WriteSet([DataEntry(ae(bm, t), bl.amount), DataEntry(ag(bm), (height + aN)), DataEntry(ai(t), (au(t) + bl.amount))])
307+ }
308+
309+
310+
311+@Callable(bk)
312+func swapNeutrinoToWaves () = {
313+ let bl = extract(bk.payment)
314+ let bm = toString(bk.caller)
315+ if ((aP > bl.amount))
316+ then throw((("an amount is less than min available amount: " + toString(aP)) + " neutrino cents"))
317+ else if (aE)
318+ then throw("contract is blocked by EMERGENCY SHUTDOWN actions untill reactivation by emergency oracles")
319+ else if ((bl.assetId != ax))
320+ then throw("can use appropriate neutrino tokens only")
321+ else if ((be(bm) > height))
322+ then throw((("await " + toString((be(bm) - height))) + " blocks"))
323+ else if ((bd(bm, aw) != 0))
324+ then throw("please withdraw locked funds first")
325+ else {
326+ let bn = (au(aw) + bl.amount)
327+ WriteSet([DataEntry(ae(bm, aw), bl.amount), DataEntry(ag(bm), (height + aN)), DataEntry(ai(aw), bn), DataEntry(S, if ((aR >= an(bn, aC)))
328+ then false
329+ else true)])
330+ }
331+ }
332+
333+
334+
335+@Callable(bk)
336+func withdraw (bm,Y,bo) = {
337+ let bp = be(bm)
338+ let bq = bd(bm, bo)
339+ let br = bb(Y)
340+ let bs = bb((Y + 1))
341+ let bt = ba(br)
342+ let ao = if ((bo == aw))
343+ then an(bq, bt)
344+ else aq(bq, bt)
345+ if (aE)
346+ then throw("contract is blocked by EMERGENCY SHUTDOWN actions untill reactivation by emergency oracles")
347+ else if ((0 >= ao))
348+ then throw((("balance equals zero (" + bo) + ")"))
349+ else if ((bp > height))
350+ then throw((("please wait for: " + toString(bp)) + " block height to withdraw WAVES funds"))
351+ else if (if (if ((Y > aD))
352+ then true
353+ else (br > bp))
354+ then true
355+ else if ((bs != 0))
356+ then (bp >= bs)
357+ else false)
358+ then throw("invalid price history index")
359+ else ScriptResult(WriteSet([DataEntry(ae(bm, bo), 0), DataEntry(ai(bo), (au(bo) - bq))]), TransferSet([ScriptTransfer(addressFromStringValue(bm), ao, if ((bo == aw))
360+ then unit
361+ else ax)]))
362+ }
363+
364+
365+
366+@Callable(bk)
367+func transferToAuction () = {
368+ let bu = ((ar(aW) - assetBalance(addressFromStringValue(az), aS)) - aY)
369+ let bv = ((ar(aV) - assetBalance(addressFromStringValue(az), ax)) - aZ)
370+ if (aE)
371+ then throw("contract is blocked by EMERGENCY SHUTDOWN actions untill reactivation by emergency oracles")
372+ else if ((bu >= ((aU * s) / 100)))
373+ then TransferSet([ScriptTransfer(addressFromStringValue(az), bu, aS)])
374+ else if ((bv > 0))
375+ then TransferSet([ScriptTransfer(addressFromStringValue(av), as(bv), ax)])
376+ else throw("bond were generated or do not need it")
377+ }
378+
379+
380+
381+@Callable(bk)
382+func transfer (bm) = {
383+ let bl = extract(bk.payment)
384+ TransferSet([ScriptTransfer(addressFromStringValue(bm), bl.amount, bl.assetId)])
385+ }
386+
387+
388+
389+@Callable(bk)
390+func nodeReward () = {
391+ let bl = value(bk.payment)
392+ if ((bk.caller != addressFromStringValue(aK)))
393+ then throw("only node account is able to transfer staking rewards from main account")
394+ else if (isDefined(bl.assetId))
395+ then throw("waves tokens only allowed")
396+ else {
397+ let ao = aq(bl.amount, aC)
398+ let bw = (aM + 1)
399+ ScriptResult(WriteSet([DataEntry(Z, bw), DataEntry(ah(aM), ao), DataEntry(aa(aM, ax), aX(ax))]), TransferSet([ScriptTransfer(addressFromStringValue(aA), ao, ax)]))
400+ }
401+ }
402+
403+
404+
405+@Callable(bk)
406+func registrationLeaseTx (bx,by,bz,bA) = {
407+ let bB = (((aQ * q) / 100) - an(au(aw), aC))
408+ let ao = (bB / r)
409+ let bC = (((((base58'3h1H' + fromBase58String(bx)) + fromBase58String(aK)) + toBytes(ao)) + toBytes(by)) + toBytes(bz))
410+ let bD = blake2b256(bC)
411+ let bE = toBase58String(bD)
412+ let bl = extract(bk.payment)
413+ if ((toString(bk.caller) == aL))
414+ then throw("invalid caller")
415+ else if (isDefined(bl.assetId))
416+ then throw("invalid paymtn asset")
417+ else if ((bA != bE))
418+ then throw((("invalid tx hash(amount:" + toString(ao)) + ")"))
419+ else if ((aF >= r))
420+ then throw("the number of leasing transactions is equal to the maximum")
421+ else if ((this != addressFromPublicKey(fromBase58String(bx))))
422+ then throw("invalid pubKey")
423+ else if (if ((lastBlock.timestamp > bz))
424+ then true
425+ else (bz > (lastBlock.timestamp + 5400000)))
426+ then throw((("invalid timestamp(lastBlock: " + toString(lastBlock.timestamp)) + ")"))
427+ else if ((bg(bE) != ""))
428+ then throw("tx is exist")
429+ else if ((bl.amount != (by * 2)))
430+ then throw("invalid payment amount")
431+ else if (if ((by > 1000000))
432+ then true
433+ else (500000 > by))
434+ then throw("invalid fee")
435+ else if (((bB - (aJ + ao)) > aR))
436+ then throw((("invalid amount(result:" + toString(((bB - (aJ + ao)) > aR))) + ")"))
437+ else WriteSet([DataEntry(ac(bE), by), DataEntry(T, if ((bg(bE) == ""))
438+ then (aF + 1)
439+ else aF), DataEntry(U, (aJ + ao)), DataEntry(R, if ((height > aI))
440+ then (height + aH)
441+ else aI), DataEntry(aj(bE), v), DataEntry(am(bE), (height + k)), DataEntry(ak(bE), ao), DataEntry(al(bE), toBase64String(bC))])
442+ }
443+
444+
445+
446+@Callable(bk)
447+func cancelStuckLeaseTx (bE) = if (if (if ((bg(bE) == v))
448+ then !(isDefined(transactionHeightById(fromBase58String(bE))))
449+ else false)
450+ then (height > bj(bE))
451+ else false)
452+ then {
453+ let ao = bh(bE)
454+ WriteSet([DataEntry(T, (aF - 1)), DataEntry(U, (aJ - ao)), DataEntry(aj(bE), u), DataEntry(S, if (((aR - ao) >= an(au(aw), aC)))
455+ then false
456+ else true)])
457+ }
458+ else throw("invalid tx hash")
459+
460+
461+
462+@Callable(bk)
463+func registrationUnleaseTx (bF,bx,by,bz,bA) = {
464+ let bC = (((((base58'gm' + toBytes(bF)) + fromBase58String(bx)) + toBytes(by)) + toBytes(bz)) + fromBase58String(bA))
465+ let bE = blake2b256(bC)
466+ if ((bg(bA) != v))
467+ then throw("invalid tx status")
468+ else if ((this != addressFromPublicKey(fromBase58String(bx))))
469+ then throw("invalid pubKey")
470+ else if (!(isDefined(transactionHeightById(bE))))
471+ then throw("blockchain does not contain this transaction")
472+ else {
473+ let ao = bh(bA)
474+ WriteSet([DataEntry(T, (aF - 1)), DataEntry(U, (aJ - ao)), DataEntry(aj(bA), u), DataEntry(S, if (((aR - ao) >= an(au(aw), aC)))
475+ then false
476+ else true)])
477+ }
478+ }
479+
480+
481+@Verifier(bG)
482+func bH () = {
483+ let bI = toBase58String(bG.id)
484+ let c = bG
485+ if ($isInstanceOf(c, "LeaseTransaction"))
486+ then {
487+ let bJ = c
488+ if (if ((aI >= height))
489+ then (bj(bI) >= height)
490+ else false)
491+ then (bg(bI) == v)
492+ else false
493+ }
494+ else if ($isInstanceOf(c, "LeaseCancelTransaction"))
495+ then {
496+ let bK = c
497+ let bL = toBase58String(bK.leaseId)
498+ if (if (if ((height > aI))
499+ then true
500+ else aG)
501+ then (bK.fee == bc(bL))
502+ else false)
503+ then (bg(bL) == v)
504+ else false
505+ }
506+ else sigVerify(bG.bodyBytes, bG.proofs[0], bG.senderPublicKey)
507+ }
508+

github/deemru/w8io/026f985 
35.89 ms