tx · 2CgR6yGrPGnXnGHpfkZ5cF1EdAeUuHNnZ8E8i94fFK1m

3MpSqJhv64PR2m7Ywctv1Mp2Kjt3EUk3CSK:  -0.02100000 Waves

2023.03.14 17:38 [2489848] smart account 3MpSqJhv64PR2m7Ywctv1Mp2Kjt3EUk3CSK > SELF 0.00000000 Waves

{ "type": 13, "id": "2CgR6yGrPGnXnGHpfkZ5cF1EdAeUuHNnZ8E8i94fFK1m", "fee": 2100000, "feeAssetId": null, "timestamp": 1678804663729, "version": 2, "chainId": 84, "sender": "3MpSqJhv64PR2m7Ywctv1Mp2Kjt3EUk3CSK", "senderPublicKey": "ErJhyueNNWWr8GEv71cFyhNnAtRC7sZt2TWFo89gdPo8", "proofs": [ "29sS93hRTDJoMwuEAkKccFvL151Si8wLjj8zMbTxHcmomgmm2NneFd62SK691DDeEK1CJ8W6mZbrdm99RqrbcmtB" ], "script": "base64:BgI4CAISBwoFAQEBCAESBQoDARgBEgUKAwEBCBIHCgUBAQgICBIFCgMBAQgSAwoBCBIDCgEBEgMKAQhmAAlTRVBBUkFUT1ICAl9fAAhLRVlfSU5JVAIESU5JVAAMS0VZX01VTFRJU0lHAghNVUxUSVNJRwAKS0VZX1NUQVRVUwIGU1RBVFVTABBLRVlfTUlOX1NFQ19ERVBPAgxNSU5fU0VDX0RFUE8ADktFWV9QVU5JU0hNRU5UAgpQVU5JU0hNRU5UABVLRVlfUkVTRVRfQkxPQ0tfREVMVEECEVJFU0VUX0JMT0NLX0RFTFRBAAxLRVlfU0VDX0RFUE8CCFNFQ19ERVBPABhLRVlfUkVXQVJEX1RPS0VOX0FERFJFU1MCFFJFV0FSRF9UT0tFTl9BRERSRVNTABFLRVlfUkVXQVJEX0FNT1VOVAINUkVXQVJEX0FNT1VOVAARS0VZX0NVUlJFTlRfRVBPQ0gCDUNVUlJFTlRfRVBPQ0gAFUtFWV9TSUdORVJTX1BFUl9FUE9DSAIRU0lHTkVSU19QRVJfRVBPQ0gAEEtFWV9FVkVOVF9TVEFUVVMCDEVWRU5UX1NUQVRVUwAJS0VZX0xPQ0tTAgVMT0NLUwAFS0VZX1QCAVQABUtFWV9SAgFSAAVLRVlfUwIBUwANS0VZX1JfU0lHTkVSUwIJUl9TSUdORVJTABVLRVlfRVZFTlRfU1RBUlRfQkxPQ0sCEUVWRU5UX1NUQVJUX0JMT0NLAAtLRVlfUl9TSUdNQQIHUl9TSUdNQQALS0VZX1NfU0lHTUECB1NfU0lHTUEADUtFWV9TX1NJR05FUlMCCVNfU0lHTkVSUwAZS0VZX1NJR05FRF9FVkVOVF9FWEVDVVRPUgIVU0lHTkVEX0VWRU5UX0VYRUNVVE9SAAhLRVlfU0laRQIEU0laRQAORlVOQ19NSU5UX01BTlkCCG1pbnRNYW55ABFFVkVOVF9TVEFUVVNfSU5JVAABABFFVkVOVF9TVEFUVVNfU0lHTgACABFFVkVOVF9TVEFUVVNfRE9ORQADAAdNQVhfSU5UAP//////////fwEQX3ZhbGlkYXRlQWRkcmVzcwIIYWRkcmVzc18EZXJyXwQHJG1hdGNoMAkApggBBQhhZGRyZXNzXwMJAAECBQckbWF0Y2gwAgdBZGRyZXNzBAFhBQckbWF0Y2gwBgkAAgEFBGVycl8BDl92YWxpZGF0ZUFzc2V0Aghhc3NldElkXwRlcnJfBAckbWF0Y2gwCQDsBwEJANkEAQUIYXNzZXRJZF8DCQABAgUHJG1hdGNoMAIFQXNzZXQEAWEFByRtYXRjaDAGCQACAQUEZXJyXwEMX3ZhbGlkYXRlSW50BAR2YWxfDmxvd2VyQm91bmRhcnlfDnVwcGVyQm91bmRhcnlfBGVycl8DAwkAZgIFDmxvd2VyQm91bmRhcnlfBQR2YWxfBgkAZgIFBHZhbF8FDnVwcGVyQm91bmRhcnlfCQACAQUEZXJyXwYBD192YWxpZGF0ZVN0cmluZwIEdmFsXwRlcnJfAwMJAGcCAAAJALECAQUEdmFsXwYJAQhjb250YWlucwIFBHZhbF8FCVNFUEFSQVRPUgkAAgEFBGVycl8GARVfdmFsaWRhdGVQYXltZW50c1NpemUDCXBheW1lbnRzXwd0YXJnZXRfBGVycl8DCQECIT0CCQCQAwEFCXBheW1lbnRzXwUHdGFyZ2V0XwkAAgEFBGVycl8GARVfdmFsaWRhdGVQYXltZW50QXNzZXQDCHBheW1lbnRfBmFzc2V0XwRlcnJfAwkBAiE9AggFCHBheW1lbnRfB2Fzc2V0SWQFBmFzc2V0XwkAAgEFBGVycl8GARJfdmFsaWRhdGVQdWJsaWNLZXkCCnB1YmxpY0tleV8EZXJyXwMJAQIhPQIJAMgBAQkA2QQBBQpwdWJsaWNLZXlfACAJAAIBBQRlcnJfBgETX3ZhbGlkYXRlUHVibGljS2V5cwILcHVibGljS2V5c18EZXJyXwoBCGZvbGRGdW5jAgNhY2MEZWxlbQkAlAoCAwgFA2FjYwJfMQkBEl92YWxpZGF0ZVB1YmxpY0tleQIFBGVsZW0IBQNhY2MCXzIHCAUDYWNjAl8yBAZyZXN1bHQKAAIkbAULcHVibGljS2V5c18KAAIkcwkAkAMBBQIkbAoABSRhY2MwCQCUCgIGBQRlcnJfCgEFJGYwXzECAiRhAiRpAwkAZwIFAiRpBQIkcwUCJGEJAQhmb2xkRnVuYwIFAiRhCQCRAwIFAiRsBQIkaQoBBSRmMF8yAgIkYQIkaQMJAGcCBQIkaQUCJHMFAiRhCQACAQIUTGlzdCBzaXplIGV4Y2VlZHMgMTAJAQUkZjBfMgIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIFBSRhY2MwAAAAAQACAAMABAAFAAYABwAIAAkACggFBnJlc3VsdAJfMQEJX2xvYWRJbml0AAQHJG1hdGNoMAkAoAgBBQhLRVlfSU5JVAMJAAECBQckbWF0Y2gwAgdCb29sZWFuBAFhBQckbWF0Y2gwBQFhBwEJX3NhdmVJbml0AQdpc0luaXRfCQDMCAIJAQxCb29sZWFuRW50cnkCBQhLRVlfSU5JVAUHaXNJbml0XwUDbmlsAQ1fbG9hZE11bHRpc2lnAAQHJG1hdGNoMAkAoggBBQxLRVlfTVVMVElTSUcDCQABAgUHJG1hdGNoMAIGU3RyaW5nBAFhBQckbWF0Y2gwCQERQGV4dHJOYXRpdmUoMTA2MikBBQFhCQEHQWRkcmVzcwEBAAENX3NhdmVNdWx0aXNpZwEJbXVsdGlzaWdfCQDMCAIJAQtTdHJpbmdFbnRyeQIFDEtFWV9NVUxUSVNJRwkApQgBBQltdWx0aXNpZ18FA25pbAEPX2xvYWRNaW5TZWNEZXBvAAQHJG1hdGNoMAkAnwgBBRBLRVlfTUlOX1NFQ19ERVBPAwkAAQIFByRtYXRjaDACA0ludAQBYQUHJG1hdGNoMAUBYQAAAQ9fc2F2ZU1pblNlY0RlcG8BBHZhbF8JAMwIAgkBDEludGVnZXJFbnRyeQIFEEtFWV9NSU5fU0VDX0RFUE8FBHZhbF8FA25pbAEMX2xvYWRTZWNEZXBvAQhhY2NvdW50XwQHJG1hdGNoMAkAnwgBCQC5CQIJAMwIAgUMS0VZX1NFQ19ERVBPCQDMCAIJAKUIAQUIYWNjb3VudF8FA25pbAUJU0VQQVJBVE9SAwkAAQIFByRtYXRjaDACA0ludAQBYQUHJG1hdGNoMAUBYQAAAQxfc2F2ZVNlY0RlcG8CCGFjY291bnRfBHZhbF8JAMwIAgkBDEludGVnZXJFbnRyeQIJALkJAgkAzAgCBQxLRVlfU0VDX0RFUE8JAMwIAgkApQgBBQhhY2NvdW50XwUDbmlsBQlTRVBBUkFUT1IFBHZhbF8FA25pbAEPX2xvYWRQdW5pc2htZW50AAQHJG1hdGNoMAkAnwgBBQ5LRVlfUFVOSVNITUVOVAMJAAECBQckbWF0Y2gwAgNJbnQEAWEFByRtYXRjaDAFAWEAAAEPX3NhdmVQdW5pc2htZW50AQR2YWxfCQDMCAIJAQxJbnRlZ2VyRW50cnkCBQ5LRVlfUFVOSVNITUVOVAUEdmFsXwUDbmlsARRfbG9hZFJlc2V0QmxvY2tEZWx0YQAEByRtYXRjaDAJAJ8IAQUVS0VZX1JFU0VUX0JMT0NLX0RFTFRBAwkAAQIFByRtYXRjaDACA0ludAQBYQUHJG1hdGNoMAUBYQAAARRfc2F2ZVJlc2V0QmxvY2tEZWx0YQEEdmFsXwkAzAgCCQEMSW50ZWdlckVudHJ5AgUVS0VZX1JFU0VUX0JMT0NLX0RFTFRBBQR2YWxfBQNuaWwBF19sb2FkUmV3YXJkVG9rZW5BZGRyZXNzAAQHJG1hdGNoMAkAoggBBRhLRVlfUkVXQVJEX1RPS0VOX0FERFJFU1MDCQABAgUHJG1hdGNoMAIGU3RyaW5nBAFhBQckbWF0Y2gwCQERQGV4dHJOYXRpdmUoMTA2MikBBQFhCQEHQWRkcmVzcwEBAAEXX3NhdmVSZXdhcmRUb2tlbkFkZHJlc3MBBHZhbF8JAMwIAgkBC1N0cmluZ0VudHJ5AgUYS0VZX1JFV0FSRF9UT0tFTl9BRERSRVNTCQClCAEFBHZhbF8FA25pbAERX2xvYWRSZXdhcmRBbW91bnQABAckbWF0Y2gwCQCfCAEFEUtFWV9SRVdBUkRfQU1PVU5UAwkAAQIFByRtYXRjaDACA0ludAQBYQUHJG1hdGNoMAUBYQAAARFfc2F2ZVJld2FyZEFtb3VudAEEdmFsXwkAzAgCCQEMSW50ZWdlckVudHJ5AgURS0VZX1JFV0FSRF9BTU9VTlQFBHZhbF8FA25pbAERX2xvYWRDdXJyZW50RXBvY2gBDGV4ZWNDaGFpbklkXwQHJG1hdGNoMAkAnwgBCQC5CQIJAMwIAgURS0VZX0NVUlJFTlRfRVBPQ0gJAMwIAgkApAMBBQxleGVjQ2hhaW5JZF8FA25pbAUJU0VQQVJBVE9SAwkAAQIFByRtYXRjaDACA0ludAQBYQUHJG1hdGNoMAUBYQAAARFfc2F2ZUN1cnJlbnRFcG9jaAIMZXhlY0NoYWluSWRfBHZhbF8JAMwIAgkBDEludGVnZXJFbnRyeQIJALkJAgkAzAgCBRFLRVlfQ1VSUkVOVF9FUE9DSAkAzAgCCQCkAwEFDGV4ZWNDaGFpbklkXwUDbmlsBQlTRVBBUkFUT1IFBHZhbF8FA25pbAEMX2xvYWRTaWduZXJzAgxleGVjQ2hhaW5JZF8GZXBvY2hfBAckbWF0Y2gwCQCiCAEJALkJAgkAzAgCBRVLRVlfU0lHTkVSU19QRVJfRVBPQ0gJAMwIAgkApAMBBQxleGVjQ2hhaW5JZF8JAMwIAgkApAMBBQZlcG9jaF8FA25pbAUJU0VQQVJBVE9SAwkAAQIFByRtYXRjaDACBlN0cmluZwQBYQUHJG1hdGNoMAMJAGYCCQCxAgEFAWEAAAkAtQkCBQFhBQlTRVBBUkFUT1IFA25pbAUDbmlsAQxfc2F2ZVNpZ25lcnMDDGV4ZWNDaGFpbklkXwZlcG9jaF8Ic2lnbmVyc18JAMwIAgkBC1N0cmluZ0VudHJ5AgkAuQkCCQDMCAIFFUtFWV9TSUdORVJTX1BFUl9FUE9DSAkAzAgCCQCkAwEFDGV4ZWNDaGFpbklkXwkAzAgCCQCkAwEFBmVwb2NoXwUDbmlsBQlTRVBBUkFUT1IJALkJAgUIc2lnbmVyc18FCVNFUEFSQVRPUgUDbmlsARBfbG9hZEV2ZW50U3RhdHVzAgxleGVjQ2hhaW5JZF8IZXZlbnRJZF8EByRtYXRjaDAJAJ8IAQkAuQkCCQDMCAIFEEtFWV9FVkVOVF9TVEFUVVMJAMwIAgkApAMBBQxleGVjQ2hhaW5JZF8JAMwIAgkApAMBBQhldmVudElkXwUDbmlsBQlTRVBBUkFUT1IDCQABAgUHJG1hdGNoMAIDSW50BAFhBQckbWF0Y2gwBQFhBRFFVkVOVF9TVEFUVVNfSU5JVAEQX3NhdmVFdmVudFN0YXR1cwMMZXhlY0NoYWluSWRfCGV2ZW50SWRfB3N0YXR1c18JAMwIAgkBDEludGVnZXJFbnRyeQIJALkJAgkAzAgCBRBLRVlfRVZFTlRfU1RBVFVTCQDMCAIJAKQDAQUMZXhlY0NoYWluSWRfCQDMCAIJAKQDAQUIZXZlbnRJZF8FA25pbAUJU0VQQVJBVE9SBQdzdGF0dXNfBQNuaWwBCV9sb2FkTG9jawEKcHVibGljS2V5XwQHJG1hdGNoMAkAnwgBCQC5CQIJAMwIAgUJS0VZX0xPQ0tTCQDMCAIFCnB1YmxpY0tleV8FA25pbAUJU0VQQVJBVE9SAwkAAQIFByRtYXRjaDACA0ludAQBYQUHJG1hdGNoMAUBYQAAAQlfc2F2ZUxvY2sCCnB1YmxpY0tleV8EdmFsXwkAzAgCCQEMSW50ZWdlckVudHJ5AgkAuQkCCQDMCAIFCUtFWV9MT0NLUwkAzAgCBQpwdWJsaWNLZXlfBQNuaWwFCVNFUEFSQVRPUgUEdmFsXwUDbmlsAQZfbG9hZFQCDGV4ZWNDaGFpbklkXwZlcG9jaF8EByRtYXRjaDAJAJ8IAQkAuQkCCQDMCAIFBUtFWV9UCQDMCAIJAKQDAQUMZXhlY0NoYWluSWRfCQDMCAIJAKQDAQUGZXBvY2hfBQNuaWwFCVNFUEFSQVRPUgMJAAECBQckbWF0Y2gwAgNJbnQEAWEFByRtYXRjaDAFAWEAAAEGX3NhdmVUAwxleGVjQ2hhaW5JZF8GZXBvY2hfBHZhbF8JAMwIAgkBDEludGVnZXJFbnRyeQIJALkJAgkAzAgCBQVLRVlfVAkAzAgCCQCkAwEFDGV4ZWNDaGFpbklkXwkAzAgCCQCkAwEFBmVwb2NoXwUDbmlsBQlTRVBBUkFUT1IFBHZhbF8FA25pbAEOX2xvYWRSc0J5RXZlbnQCDGV4ZWNDaGFpbklkXwhldmVudElkXwQHJG1hdGNoMAkAoggBCQC5CQIJAMwIAgUFS0VZX1IJAMwIAgkApAMBBQxleGVjQ2hhaW5JZF8JAMwIAgkApAMBBQhldmVudElkXwUDbmlsBQlTRVBBUkFUT1IDCQABAgUHJG1hdGNoMAIGU3RyaW5nBAFhBQckbWF0Y2gwAwkAZgIJALECAQUBYQAACQC1CQIFAWEFCVNFUEFSQVRPUgUDbmlsBQNuaWwBDl9zYXZlUnNCeUV2ZW50AwxleGVjQ2hhaW5JZF8IZXZlbnRJZF8DcnNfCQDMCAIJAQtTdHJpbmdFbnRyeQIJALkJAgkAzAgCBQVLRVlfUgkAzAgCCQCkAwEFDGV4ZWNDaGFpbklkXwkAzAgCCQCkAwEFCGV2ZW50SWRfBQNuaWwFCVNFUEFSQVRPUgkAuQkCBQNyc18FCVNFUEFSQVRPUgUDbmlsAQ5fbG9hZFNzQnlFdmVudAIMZXhlY0NoYWluSWRfCGV2ZW50SWRfBAckbWF0Y2gwCQCiCAEJALkJAgkAzAgCBQVLRVlfUwkAzAgCCQCkAwEFDGV4ZWNDaGFpbklkXwkAzAgCCQCkAwEFCGV2ZW50SWRfBQNuaWwFCVNFUEFSQVRPUgMJAAECBQckbWF0Y2gwAgZTdHJpbmcEAWEFByRtYXRjaDADCQBmAgkAsQIBBQFhAAAJALUJAgUBYQUJU0VQQVJBVE9SBQNuaWwFA25pbAEOX3NhdmVTc0J5RXZlbnQDDGV4ZWNDaGFpbklkXwhldmVudElkXwNzc18JAMwIAgkBC1N0cmluZ0VudHJ5AgkAuQkCCQDMCAIFBUtFWV9TCQDMCAIJAKQDAQUMZXhlY0NoYWluSWRfCQDMCAIJAKQDAQUIZXZlbnRJZF8FA25pbAUJU0VQQVJBVE9SCQC5CQIFA3NzXwUJU0VQQVJBVE9SBQNuaWwBEl9sb2FkUlNpZ21hQnlFdmVudAIMZXhlY0NoYWluSWRfCGV2ZW50SWRfBAckbWF0Y2gwCQCiCAEJALkJAgkAzAgCBQtLRVlfUl9TSUdNQQkAzAgCCQCkAwEFDGV4ZWNDaGFpbklkXwkAzAgCCQCkAwEFCGV2ZW50SWRfBQNuaWwFCVNFUEFSQVRPUgMJAAECBQckbWF0Y2gwAgZTdHJpbmcEAWEFByRtYXRjaDAFAWECAAESX3NhdmVSU2lnbWFCeUV2ZW50AwxleGVjQ2hhaW5JZF8IZXZlbnRJZF8HclNpZ21hXwkAzAgCCQELU3RyaW5nRW50cnkCCQC5CQIJAMwIAgULS0VZX1JfU0lHTUEJAMwIAgkApAMBBQxleGVjQ2hhaW5JZF8JAMwIAgkApAMBBQhldmVudElkXwUDbmlsBQlTRVBBUkFUT1IFB3JTaWdtYV8FA25pbAESX2xvYWRTU2lnbWFCeUV2ZW50AgxleGVjQ2hhaW5JZF8IZXZlbnRJZF8EByRtYXRjaDAJAKIIAQkAuQkCCQDMCAIFC0tFWV9TX1NJR01BCQDMCAIJAKQDAQUMZXhlY0NoYWluSWRfCQDMCAIJAKQDAQUIZXZlbnRJZF8FA25pbAUJU0VQQVJBVE9SAwkAAQIFByRtYXRjaDACBlN0cmluZwQBYQUHJG1hdGNoMAUBYQIAARJfc2F2ZVNTaWdtYUJ5RXZlbnQDDGV4ZWNDaGFpbklkXwhldmVudElkXwdzU2lnbWFfCQDMCAIJAQtTdHJpbmdFbnRyeQIJALkJAgkAzAgCBQtLRVlfU19TSUdNQQkAzAgCCQCkAwEFDGV4ZWNDaGFpbklkXwkAzAgCCQCkAwEFCGV2ZW50SWRfBQNuaWwFCVNFUEFSQVRPUgUHc1NpZ21hXwUDbmlsARZfbG9hZFJCeUV2ZW50QW5kU2lnbmVyAwxleGVjQ2hhaW5JZF8IZXZlbnRJZF8Hc2lnbmVyXwQHJG1hdGNoMAkAoggBCQC5CQIJAMwIAgUFS0VZX1IJAMwIAgkApAMBBQxleGVjQ2hhaW5JZF8JAMwIAgkApAMBBQhldmVudElkXwkAzAgCBQdzaWduZXJfBQNuaWwFCVNFUEFSQVRPUgMJAAECBQckbWF0Y2gwAgZTdHJpbmcEAWEFByRtYXRjaDAFAWECAAEWX3NhdmVSQnlFdmVudEFuZFNpZ25lcgQMZXhlY0NoYWluSWRfCGV2ZW50SWRfB3NpZ25lcl8Ccl8JAMwIAgkBC1N0cmluZ0VudHJ5AgkAuQkCCQDMCAIFBUtFWV9SCQDMCAIJAKQDAQUMZXhlY0NoYWluSWRfCQDMCAIJAKQDAQUIZXZlbnRJZF8JAMwIAgUHc2lnbmVyXwUDbmlsBQlTRVBBUkFUT1IFAnJfBQNuaWwBFl9sb2FkU0J5RXZlbnRBbmRTaWduZXIDDGV4ZWNDaGFpbklkXwhldmVudElkXwdzaWduZXJfBAckbWF0Y2gwCQCiCAEJALkJAgkAzAgCBQVLRVlfUwkAzAgCCQCkAwEFDGV4ZWNDaGFpbklkXwkAzAgCCQCkAwEFCGV2ZW50SWRfCQDMCAIFB3NpZ25lcl8FA25pbAUJU0VQQVJBVE9SAwkAAQIFByRtYXRjaDACBlN0cmluZwQBYQUHJG1hdGNoMAUBYQIAARZfc2F2ZVNCeUV2ZW50QW5kU2lnbmVyBAxleGVjQ2hhaW5JZF8IZXZlbnRJZF8Hc2lnbmVyXwJzXwkAzAgCCQELU3RyaW5nRW50cnkCCQC5CQIJAMwIAgUFS0VZX1MJAMwIAgkApAMBBQxleGVjQ2hhaW5JZF8JAMwIAgkApAMBBQhldmVudElkXwkAzAgCBQdzaWduZXJfBQNuaWwFCVNFUEFSQVRPUgUCc18FA25pbAEYX2xvYWRTaWduZXJzV2l0aFJCeUV2ZW50AgxleGVjQ2hhaW5JZF8IZXZlbnRJZF8EByRtYXRjaDAJAKIIAQkAuQkCCQDMCAIFDUtFWV9SX1NJR05FUlMJAMwIAgkApAMBBQxleGVjQ2hhaW5JZF8JAMwIAgkApAMBBQhldmVudElkXwUDbmlsBQlTRVBBUkFUT1IDCQABAgUHJG1hdGNoMAIGU3RyaW5nBAFhBQckbWF0Y2gwAwkAZgIJALECAQUBYQAACQC1CQIFAWEFCVNFUEFSQVRPUgUDbmlsBQNuaWwBGF9zYXZlU2lnbmVyc1dpdGhSQnlFdmVudAMMZXhlY0NoYWluSWRfCGV2ZW50SWRfA3JzXwkAzAgCCQELU3RyaW5nRW50cnkCCQC5CQIJAMwIAgUNS0VZX1JfU0lHTkVSUwkAzAgCCQCkAwEFDGV4ZWNDaGFpbklkXwkAzAgCCQCkAwEFCGV2ZW50SWRfBQNuaWwFCVNFUEFSQVRPUgkAuQkCBQNyc18FCVNFUEFSQVRPUgUDbmlsARhfbG9hZFNpZ25lcnNXaXRoU0J5RXZlbnQCDGV4ZWNDaGFpbklkXwhldmVudElkXwQHJG1hdGNoMAkAoggBCQC5CQIJAMwIAgUNS0VZX1NfU0lHTkVSUwkAzAgCCQCkAwEFDGV4ZWNDaGFpbklkXwkAzAgCCQCkAwEFCGV2ZW50SWRfBQNuaWwFCVNFUEFSQVRPUgMJAAECBQckbWF0Y2gwAgZTdHJpbmcEAWEFByRtYXRjaDADCQBmAgkAsQIBBQFhAAAJALUJAgUBYQUJU0VQQVJBVE9SBQNuaWwFA25pbAEYX3NhdmVTaWduZXJzV2l0aFNCeUV2ZW50AwxleGVjQ2hhaW5JZF8IZXZlbnRJZF8Dc3NfCQDMCAIJAQtTdHJpbmdFbnRyeQIJALkJAgkAzAgCBQ1LRVlfU19TSUdORVJTCQDMCAIJAKQDAQUMZXhlY0NoYWluSWRfCQDMCAIJAKQDAQUIZXZlbnRJZF8FA25pbAUJU0VQQVJBVE9SCQC5CQIFA3NzXwUJU0VQQVJBVE9SBQNuaWwBFF9sb2FkRXZlbnRTdGFydEJsb2NrAgxleGVjQ2hhaW5JZF8IZXZlbnRJZF8EByRtYXRjaDAJAJ8IAQkAuQkCCQDMCAIFFUtFWV9FVkVOVF9TVEFSVF9CTE9DSwkAzAgCCQCkAwEFDGV4ZWNDaGFpbklkXwkAzAgCCQCkAwEFCGV2ZW50SWRfBQNuaWwFCVNFUEFSQVRPUgMJAAECBQckbWF0Y2gwAgNJbnQEAWEFByRtYXRjaDAFAWEAAAEUX3NhdmVFdmVudFN0YXJ0QmxvY2sDDGV4ZWNDaGFpbklkXwhldmVudElkXwR2YWxfCQDMCAIJAQxJbnRlZ2VyRW50cnkCCQC5CQIJAMwIAgUVS0VZX0VWRU5UX1NUQVJUX0JMT0NLCQDMCAIJAKQDAQUMZXhlY0NoYWluSWRfCQDMCAIJAKQDAQUIZXZlbnRJZF8FA25pbAUJU0VQQVJBVE9SBQR2YWxfBQNuaWwBH19sb2FkU2lnbmVkRXZlbnRFeGVjdXRvcklkeFNpemUBEWV4ZWN1dGlvbkNoYWluSWRfBAckbWF0Y2gwCQCfCAEJALkJAgkAzAgCBRlLRVlfU0lHTkVEX0VWRU5UX0VYRUNVVE9SCQDMCAIJAKQDAQURZXhlY3V0aW9uQ2hhaW5JZF8JAMwIAgUIS0VZX1NJWkUFA25pbAUJU0VQQVJBVE9SAwkAAQIFByRtYXRjaDACA0ludAQBYQUHJG1hdGNoMAUBYQAAAR9fc2F2ZVNpZ25lZEV2ZW50RXhlY3V0b3JJZHhTaXplAhFleGVjdXRpb25DaGFpbklkXwR2YWxfCQDMCAIJAQxJbnRlZ2VyRW50cnkCCQC5CQIJAMwIAgUZS0VZX1NJR05FRF9FVkVOVF9FWEVDVVRPUgkAzAgCCQCkAwEFEWV4ZWN1dGlvbkNoYWluSWRfCQDMCAIFCEtFWV9TSVpFBQNuaWwFCVNFUEFSQVRPUgUEdmFsXwUDbmlsARtfbG9hZFNpZ25lZEV2ZW50RXhlY3V0b3JJZHgCEWV4ZWN1dGlvbkNoYWluSWRfBGlkeF8EByRtYXRjaDAJAJ8IAQkAuQkCCQDMCAIFGUtFWV9TSUdORURfRVZFTlRfRVhFQ1VUT1IJAMwIAgkApAMBBRFleGVjdXRpb25DaGFpbklkXwkAzAgCCQCkAwEFBGlkeF8FA25pbAUJU0VQQVJBVE9SAwkAAQIFByRtYXRjaDACA0ludAQBYQUHJG1hdGNoMAUBYQAAARtfc2F2ZVNpZ25lZEV2ZW50RXhlY3V0b3JJZHgDEWV4ZWN1dGlvbkNoYWluSWRfBGlkeF8EdmFsXwkAzAgCCQEMSW50ZWdlckVudHJ5AgkAuQkCCQDMCAIFGUtFWV9TSUdORURfRVZFTlRfRVhFQ1VUT1IJAMwIAgkApAMBBRFleGVjdXRpb25DaGFpbklkXwkAzAgCCQCkAwEFBGlkeF8FA25pbAUJU0VQQVJBVE9SBQR2YWxfBQNuaWwBEV9vbmx5VGhpc0NvbnRyYWN0AQdjYWxsZXJfAwkBAiE9AgUHY2FsbGVyXwUEdGhpcwkAAgECGV9vbmx5VGhpc0NvbnRyYWN0OiByZXZlcnQGARBfd2hlbk11bHRpc2lnU2V0AAMJAAACCQENX2xvYWRNdWx0aXNpZwAJAQdBZGRyZXNzAQEACQACAQIYX3doZW5NdWx0aXNpZ1NldDogcmV2ZXJ0BgETX3doZW5Ob3RJbml0aWFsaXplZAADCQEJX2xvYWRJbml0AAkAAgECG193aGVuTm90SW5pdGlhbGl6ZWQ6IHJldmVydAYBEF93aGVuSW5pdGlhbGl6ZWQAAwkBASEBCQEJX2xvYWRJbml0AAkAAgECGF93aGVuSW5pdGlhbGl6ZWQ6IHJldmVydAYBD19pc0FjdGl2ZVNpZ25lcgMKcHVibGljS2V5XwtwdWJsaWNLZXlzXwRlcnJfAwkBASEBCQEPY29udGFpbnNFbGVtZW50AgULcHVibGljS2V5c18FCnB1YmxpY0tleV8JAAIBBQRlcnJfBgENX2NoZWNrU2VjRGVwbwIHc2lnbmVyXwRlcnJfAwkAZgIJAQ9fbG9hZE1pblNlY0RlcG8ACQEMX2xvYWRTZWNEZXBvAQkApwgBCQDZBAEFB3NpZ25lcl8JAAIBBQRlcnJfBgEbX2NoZWNrRXZlbnRTdGF0dXNGb3JTdWJtaXRSAwxleGVjQ2hhaW5JZF8IZXZlbnRJZF8EZXJyXwMJAQIhPQIJARBfbG9hZEV2ZW50U3RhdHVzAgUMZXhlY0NoYWluSWRfBQhldmVudElkXwURRVZFTlRfU1RBVFVTX0lOSVQJAAIBBQRlcnJfBgEbX2NoZWNrRXZlbnRTdGF0dXNGb3JTdWJtaXRTAwxleGVjQ2hhaW5JZF8IZXZlbnRJZF8EZXJyXwMJAQIhPQIJARBfbG9hZEV2ZW50U3RhdHVzAgUMZXhlY0NoYWluSWRfBQhldmVudElkXwURRVZFTlRfU1RBVFVTX1NJR04JAAIBBQRlcnJfBgEZX2NoZWNrRXZlbnRTdGF0dXNGb3JSZXNldAMMZXhlY0NoYWluSWRfCGV2ZW50SWRfBGVycl8DAwkBAiE9AgkBEF9sb2FkRXZlbnRTdGF0dXMCBQxleGVjQ2hhaW5JZF8FCGV2ZW50SWRfBRFFVkVOVF9TVEFUVVNfU0lHTgYJAGYCCQBkAgkBFF9sb2FkRXZlbnRTdGFydEJsb2NrAgUMZXhlY0NoYWluSWRfBQhldmVudElkXwkBFF9sb2FkUmVzZXRCbG9ja0RlbHRhAAUGaGVpZ2h0CQACAQUEZXJyXwYBD19pbmNyZW1lbnRMb2NrcwEIc2lnbmVyc18KAQhmb2xkRnVuYwIDYWNjBGVsZW0JAM4IAgUDYWNjCQEJX3NhdmVMb2NrAgUEZWxlbQkAZAIJAQlfbG9hZExvY2sBBQRlbGVtAAEKAAIkbAUIc2lnbmVyc18KAAIkcwkAkAMBBQIkbAoABSRhY2MwBQNuaWwKAQUkZjBfMQICJGECJGkDCQBnAgUCJGkFAiRzBQIkYQkBCGZvbGRGdW5jAgUCJGEJAJEDAgUCJGwFAiRpCgEFJGYwXzICAiRhAiRpAwkAZwIFAiRpBQIkcwUCJGEJAAIBAhRMaXN0IHNpemUgZXhjZWVkcyAxMAkBBSRmMF8yAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgUFJGFjYzAAAAABAAIAAwAEAAUABgAHAAgACQAKAQtfaXNaZXJvTG9jawIKcHVibGljS2V5XwRlcnJfAwkAZgIJAQlfbG9hZExvY2sBBQpwdWJsaWNLZXlfAAAJAAIBBQRlcnJfBgEOX25vdFN1Ym1pdHRlZFIEDGV4ZWNDaGFpbklkXwhldmVudElkXwdzaWduZXJfBGVycl8EAXIJARZfbG9hZFJCeUV2ZW50QW5kU2lnbmVyAwUMZXhlY0NoYWluSWRfBQhldmVudElkXwUHc2lnbmVyXwMDCQECIT0CBQFyAgAJAQ9jb250YWluc0VsZW1lbnQCCQEOX2xvYWRSc0J5RXZlbnQCBQxleGVjQ2hhaW5JZF8FCGV2ZW50SWRfBQFyBwkAAgEFBGVycl8GAQ5fbm90U3VibWl0dGVkUwQMZXhlY0NoYWluSWRfCGV2ZW50SWRfB3NpZ25lcl8EZXJyXwQBcwkBFl9sb2FkU0J5RXZlbnRBbmRTaWduZXIDBQxleGVjQ2hhaW5JZF8FCGV2ZW50SWRfBQdzaWduZXJfAwMJAQIhPQIFAXMCAAkBD2NvbnRhaW5zRWxlbWVudAIJAQ5fbG9hZFNzQnlFdmVudAIFDGV4ZWNDaGFpbklkXwUIZXZlbnRJZF8FAXMHCQACAQUEZXJyXwYBC19zdWJtaXR0ZWRSBAxleGVjQ2hhaW5JZF8IZXZlbnRJZF8Hc2lnbmVyXwRlcnJfBAFyCQEWX2xvYWRSQnlFdmVudEFuZFNpZ25lcgMFDGV4ZWNDaGFpbklkXwUIZXZlbnRJZF8FB3NpZ25lcl8DAwkAAAIFAXICAAYJAQEhAQkBD2NvbnRhaW5zRWxlbWVudAIJAQ5fbG9hZFJzQnlFdmVudAIFDGV4ZWNDaGFpbklkXwUIZXZlbnRJZF8FAXIJAAIBBQRlcnJfBgEPX3NsYXNoSW5jb3JyZWN0Ag1zaWduZXJzV2l0aFJfDXNpZ25lcnNXaXRoU18ECnB1bmlzaG1lbnQJAQ9fbG9hZFB1bmlzaG1lbnQACgEIZm9sZEZ1bmMCA2FjYwRlbGVtAwkBD2NvbnRhaW5zRWxlbWVudAIFDXNpZ25lcnNXaXRoU18FBGVsZW0JAJUKAwgFA2FjYwJfMQkAzQgCCAUDYWNjAl8yBQRlbGVtCAUDYWNjAl8zBA1zaWduZXJBZGRyZXNzCQCnCAEJANkEAQUEZWxlbQkAlQoDCQDOCAIIBQNhY2MCXzEJAQxfc2F2ZVNlY0RlcG8CBQ1zaWduZXJBZGRyZXNzCQBlAgkBDF9sb2FkU2VjRGVwbwEFDXNpZ25lckFkZHJlc3MFCnB1bmlzaG1lbnQIBQNhY2MCXzIJAGQCCAUDYWNjAl8zBQpwdW5pc2htZW50CgACJGwFDXNpZ25lcnNXaXRoUl8KAAIkcwkAkAMBBQIkbAoABSRhY2MwCQCVCgMFA25pbAUDbmlsAAAKAQUkZjBfMQICJGECJGkDCQBnAgUCJGkFAiRzBQIkYQkBCGZvbGRGdW5jAgUCJGEJAJEDAgUCJGwFAiRpCgEFJGYwXzICAiRhAiRpAwkAZwIFAiRpBQIkcwUCJGEJAAIBAhRMaXN0IHNpemUgZXhjZWVkcyAxMAkBBSRmMF8yAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgkBBSRmMF8xAgUFJGFjYzAAAAABAAIAAwAEAAUABgAHAAgACQAKARJfY29tcGVuc2F0ZUNvcnJlY3QCCHNpZ25lcnNfDWNvbXBlbnNhdGlvbl8ECXBlclNpZ25lcgkAaQIFDWNvbXBlbnNhdGlvbl8JAJADAQUIc2lnbmVyc18KAQhmb2xkRnVuYwIDYWNjBGVsZW0JAM0IAgUDYWNjCQEOU2NyaXB0VHJhbnNmZXIDCQCnCAEJANkEAQUEZWxlbQUJcGVyU2lnbmVyBQR1bml0CgACJGwFCHNpZ25lcnNfCgACJHMJAJADAQUCJGwKAAUkYWNjMAUDbmlsCgEFJGYwXzECAiRhAiRpAwkAZwIFAiRpBQIkcwUCJGEJAQhmb2xkRnVuYwIFAiRhCQCRAwIFAiRsBQIkaQoBBSRmMF8yAgIkYQIkaQMJAGcCBQIkaQUCJHMFAiRhCQACAQIUTGlzdCBzaXplIGV4Y2VlZHMgMTAJAQUkZjBfMgIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIFBSRhY2MwAAAAAQACAAMABAAFAAYABwAIAAkACgEVX3B1YmxpY0tleXNUb0FkZHJzU3RyAQtwdWJsaWNLZXlzXwoBCGZvbGRmdW5jAgRhY2NfBWVsZW1fCQDNCAIFBGFjY18JAKUIAQkApwgBCQDZBAEFBWVsZW1fCgACJGwFC3B1YmxpY0tleXNfCgACJHMJAJADAQUCJGwKAAUkYWNjMAUDbmlsCgEFJGYwXzECAiRhAiRpAwkAZwIFAiRpBQIkcwUCJGEJAQhmb2xkZnVuYwIFAiRhCQCRAwIFAiRsBQIkaQoBBSRmMF8yAgIkYQIkaQMJAGcCBQIkaQUCJHMFAiRhCQACAQIUTGlzdCBzaXplIGV4Y2VlZHMgNTEJAQUkZjBfMgIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIFBSRhY2MwAAAAAQACAAMABAAFAAYABwAIAAkACgALAAwADQAOAA8AEAARABIAEwAUABUAFgAXABgAGQAaABsAHAAdAB4AHwAgACEAIgAjACQAJQAmACcAKAApACoAKwAsAC0ALgAvADAAMQAyADMIAWkBBGluaXQFC21pblNlY0RlcG9fC3B1bmlzaG1lbnRfEHJlc2V0QmxvY2tEZWx0YV8TcmV3YXJkVG9rZW5BZGRyZXNzXw1yZXdhcmRBbW91bnRfBANlcnIDAwMDAwMDCQERX29ubHlUaGlzQ29udHJhY3QBCAUBaQZjYWxsZXIJARNfd2hlbk5vdEluaXRpYWxpemVkAAcJARBfd2hlbk11bHRpc2lnU2V0AAcJAQxfdmFsaWRhdGVJbnQEBQttaW5TZWNEZXBvXwULcHVuaXNobWVudF8FB01BWF9JTlQCGGluaXQ6IGludmFsaWQgbWluU2VjRGVwbwcJAQxfdmFsaWRhdGVJbnQEBQtwdW5pc2htZW50XwAABQdNQVhfSU5UAhhpbml0OiBpbnZhbGlkIHB1bmlzaG1lbnQHCQEMX3ZhbGlkYXRlSW50BAUQcmVzZXRCbG9ja0RlbHRhXwAABQdNQVhfSU5UAh1pbml0OiBpbnZhbGlkIHJlc2V0QmxvY2tEZWx0YQcJARBfdmFsaWRhdGVBZGRyZXNzAgUTcmV3YXJkVG9rZW5BZGRyZXNzXwIgaW5pdDogaW52YWxpZCByZXdhcmRUb2tlbkFkZHJlc3MHCQEMX3ZhbGlkYXRlSW50BAUNcmV3YXJkQW1vdW50XwAABQdNQVhfSU5UAhppbml0OiBpbnZhbGlkIHJld2FyZEFtb3VudAcDCQAAAgUDZXJyBQNlcnIJAJQKAgkAzggCCQDOCAIJAM4IAgkAzggCCQDOCAIJAQlfc2F2ZUluaXQBBgkBD19zYXZlTWluU2VjRGVwbwEFC21pblNlY0RlcG9fCQEPX3NhdmVQdW5pc2htZW50AQULcHVuaXNobWVudF8JARRfc2F2ZVJlc2V0QmxvY2tEZWx0YQEFEHJlc2V0QmxvY2tEZWx0YV8JARdfc2F2ZVJld2FyZFRva2VuQWRkcmVzcwEJARFAZXh0ck5hdGl2ZSgxMDYyKQEFE3Jld2FyZFRva2VuQWRkcmVzc18JARFfc2F2ZVJld2FyZEFtb3VudAEFDXJld2FyZEFtb3VudF8FBHVuaXQJAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4BaQEQc2V0QWN0aXZlU2lnbmVycwMMZXhlY0NoYWluSWRfCHNpZ25lcnNfAnRfBANlcnIDAwMJARFfb25seVRoaXNDb250cmFjdAEIBQFpBmNhbGxlcgkBEF93aGVuSW5pdGlhbGl6ZWQABwkBE192YWxpZGF0ZVB1YmxpY0tleXMCBQhzaWduZXJzXwIhc2V0QWN0aXZlU2lnbmVyczogaW52YWxpZCBzaWduZXJzBwkBDF92YWxpZGF0ZUludAQFAnRfAAIJAJADAQUIc2lnbmVyc18CG3NldEFjdGl2ZVNpZ25lcnM6IGludmFsaWQgVAcDCQAAAgUDZXJyBQNlcnIEBWVwb2NoCQERX2xvYWRDdXJyZW50RXBvY2gBBQxleGVjQ2hhaW5JZF8JAJQKAgkAzggCCQDOCAIJAM4IAgkBEV9zYXZlQ3VycmVudEVwb2NoAgUMZXhlY0NoYWluSWRfCQBkAgUFZXBvY2gAAQkBBl9zYXZlVAMFDGV4ZWNDaGFpbklkXwkAZAIFBWVwb2NoAAEFAnRfCQEMX3NhdmVTaWduZXJzAwUMZXhlY0NoYWluSWRfCQBkAgUFZXBvY2gAAQUIc2lnbmVyc18JAQ9faW5jcmVtZW50TG9ja3MBBQhzaWduZXJzXwUEdW5pdAkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgFpAQdzdWJtaXRSAwhldmVudElkXwxleGVjQ2hhaW5JZF8Ccl8ED2NhbGxlclB1YmxpY0tleQkA2AQBCAUBaQ9jYWxsZXJQdWJsaWNLZXkEBWVwb2NoCQERX2xvYWRDdXJyZW50RXBvY2gBBQxleGVjQ2hhaW5JZF8EAXQJAQZfbG9hZFQCBQxleGVjQ2hhaW5JZF8FBWVwb2NoBANlcnIDAwMDAwMDCQEQX3doZW5Jbml0aWFsaXplZAAJAQxfdmFsaWRhdGVJbnQEBQhldmVudElkXwAABQdNQVhfSU5UAhhzdWJtaXRSOiBpbnZhbGlkIGV2ZW50SWQHCQEMX3ZhbGlkYXRlSW50BAUMZXhlY0NoYWluSWRfAAAFB01BWF9JTlQCHHN1Ym1pdFI6IGludmFsaWQgZXhlY0NoYWluSWQHCQEPX3ZhbGlkYXRlU3RyaW5nAgUCcl8CEnN1Ym1pdFI6IGludmFsaWQgcgcJAQ9faXNBY3RpdmVTaWduZXIDBQ9jYWxsZXJQdWJsaWNLZXkJAQxfbG9hZFNpZ25lcnMCBQxleGVjQ2hhaW5JZF8FBWVwb2NoAhNzdWJtaXRSOiBub3QgYWN0aXZlBwkBDV9jaGVja1NlY0RlcG8CBQ9jYWxsZXJQdWJsaWNLZXkCJHN1Ym1pdFI6IG5vdCBlbm91Z2ggc2VjdXJpdHkgZGVwb3NpdAcJARtfY2hlY2tFdmVudFN0YXR1c0ZvclN1Ym1pdFIDBQxleGVjQ2hhaW5JZF8FCGV2ZW50SWRfAh1zdWJtaXRSOiBpbnZhbGlkIGV2ZW50IHN0YXR1cwcJAQ5fbm90U3VibWl0dGVkUgQFDGV4ZWNDaGFpbklkXwUIZXZlbnRJZF8FD2NhbGxlclB1YmxpY0tleQIac3VibWl0UjogYWxyZWFkeSBzdWJtaXR0ZWQHAwkAAAIFA2VycgUDZXJyBAZyQXJyYXkJAQ5fbG9hZFJzQnlFdmVudAIFDGV4ZWNDaGFpbklkXwUIZXZlbnRJZF8EDHNpZ25lcnNBcnJheQkBGF9sb2FkU2lnbmVyc1dpdGhSQnlFdmVudAIFDGV4ZWNDaGFpbklkXwUIZXZlbnRJZF8EEmV2ZW50U3RhdHVzQWN0aW9ucwMJAAACCQBkAgkAkAMBBQZyQXJyYXkAAQUBdAkAzggCCQEQX3NhdmVFdmVudFN0YXR1cwMFDGV4ZWNDaGFpbklkXwUIZXZlbnRJZF8FEUVWRU5UX1NUQVRVU19TSUdOCQEUX3NhdmVFdmVudFN0YXJ0QmxvY2sDBQxleGVjQ2hhaW5JZF8FCGV2ZW50SWRfBQZoZWlnaHQFA25pbAkAlAoCCQDOCAIJAM4IAgkAzggCCQEOX3NhdmVSc0J5RXZlbnQDBQxleGVjQ2hhaW5JZF8FCGV2ZW50SWRfCQDNCAIFBnJBcnJheQUCcl8JARZfc2F2ZVJCeUV2ZW50QW5kU2lnbmVyBAUMZXhlY0NoYWluSWRfBQhldmVudElkXwUPY2FsbGVyUHVibGljS2V5BQJyXwkBGF9zYXZlU2lnbmVyc1dpdGhSQnlFdmVudAMFDGV4ZWNDaGFpbklkXwUIZXZlbnRJZF8JAM0IAgUMc2lnbmVyc0FycmF5BQ9jYWxsZXJQdWJsaWNLZXkFEmV2ZW50U3RhdHVzQWN0aW9ucwUEdW5pdAkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgFpAQdzdWJtaXRTBQhldmVudElkXwxleGVjQ2hhaW5JZF8HclNpZ21hXwJzXwdzU2lnbWFfBA9jYWxsZXJQdWJsaWNLZXkJANgEAQgFAWkPY2FsbGVyUHVibGljS2V5BAVlcG9jaAkBEV9sb2FkQ3VycmVudEVwb2NoAQUMZXhlY0NoYWluSWRfBAF0CQEGX2xvYWRUAgUMZXhlY0NoYWluSWRfBQVlcG9jaAQDZXJyAwMDAwMDAwMDCQEQX3doZW5Jbml0aWFsaXplZAAJAQxfdmFsaWRhdGVJbnQEBQhldmVudElkXwAABQdNQVhfSU5UAhhzdWJtaXRTOiBpbnZhbGlkIGV2ZW50SWQHCQEMX3ZhbGlkYXRlSW50BAUMZXhlY0NoYWluSWRfAAAFB01BWF9JTlQCHHN1Ym1pdFM6IGludmFsaWQgZXhlY0NoYWluSWQHCQEPX3ZhbGlkYXRlU3RyaW5nAgUHclNpZ21hXwIYc3VibWl0UzogaW52YWxpZCByIHNpZ21hBwkBD192YWxpZGF0ZVN0cmluZwIFAnNfAhJzdWJtaXRTOiBpbnZhbGlkIHMHCQEPX2lzQWN0aXZlU2lnbmVyAwUPY2FsbGVyUHVibGljS2V5CQEMX2xvYWRTaWduZXJzAgUMZXhlY0NoYWluSWRfBQVlcG9jaAITc3VibWl0Uzogbm90IGFjdGl2ZQcJAQ1fY2hlY2tTZWNEZXBvAgUPY2FsbGVyUHVibGljS2V5AiRzdWJtaXRTOiBub3QgZW5vdWdoIHNlY3VyaXR5IGRlcG9zaXQHCQEbX2NoZWNrRXZlbnRTdGF0dXNGb3JTdWJtaXRTAwUMZXhlY0NoYWluSWRfBQhldmVudElkXwIdc3VibWl0UzogaW52YWxpZCBldmVudCBzdGF0dXMHCQEOX25vdFN1Ym1pdHRlZFMEBQxleGVjQ2hhaW5JZF8FCGV2ZW50SWRfBQ9jYWxsZXJQdWJsaWNLZXkCGnN1Ym1pdFM6IGFscmVhZHkgc3VibWl0dGVkBwkBC19zdWJtaXR0ZWRSBAUMZXhlY0NoYWluSWRfBQhldmVudElkXwUPY2FsbGVyUHVibGljS2V5AhtzdWJtaXRTOiBSIGlzIG5vdCBzdWJtaXR0ZWQHAwkAAAIFA2VycgUDZXJyBAZzQXJyYXkJAQ5fbG9hZFNzQnlFdmVudAIFDGV4ZWNDaGFpbklkXwUIZXZlbnRJZF8EDHNpZ25lcnNBcnJheQkBGF9sb2FkU2lnbmVyc1dpdGhTQnlFdmVudAIFDGV4ZWNDaGFpbklkXwUIZXZlbnRJZF8EEmV2ZW50U3RhdHVzQWN0aW9ucwMJAAACCQBkAgkAkAMBBQZzQXJyYXkAAQUBdAQEZXJyMQkBD192YWxpZGF0ZVN0cmluZwIFB3NTaWdtYV8CGHN1Ym1pdFM6IGludmFsaWQgcyBzaWdtYQMJAAACBQRlcnIxBQRlcnIxBA9leGVjdXRvcklkeFNpemUJAR9fbG9hZFNpZ25lZEV2ZW50RXhlY3V0b3JJZHhTaXplAQUMZXhlY0NoYWluSWRfBA9yZXdhcmRBZGRyZXNzZXMJARVfcHVibGljS2V5c1RvQWRkcnNTdHIBCQDNCAIFDHNpZ25lcnNBcnJheQUPY2FsbGVyUHVibGljS2V5BA5zaWduZXJzUmV3YXJkcwkA/AcECQEXX2xvYWRSZXdhcmRUb2tlbkFkZHJlc3MABQ5GVU5DX01JTlRfTUFOWQkAzAgCCQERX2xvYWRSZXdhcmRBbW91bnQACQDMCAIFD3Jld2FyZEFkZHJlc3NlcwUDbmlsBQNuaWwDCQAAAgUOc2lnbmVyc1Jld2FyZHMFDnNpZ25lcnNSZXdhcmRzCQDOCAIJAM4IAgkAzggCCQEQX3NhdmVFdmVudFN0YXR1cwMFDGV4ZWNDaGFpbklkXwUIZXZlbnRJZF8FEUVWRU5UX1NUQVRVU19ET05FCQEbX3NhdmVTaWduZWRFdmVudEV4ZWN1dG9ySWR4AwUMZXhlY0NoYWluSWRfBQ9leGVjdXRvcklkeFNpemUFCGV2ZW50SWRfCQEfX3NhdmVTaWduZWRFdmVudEV4ZWN1dG9ySWR4U2l6ZQIFDGV4ZWNDaGFpbklkXwkAZAIFD2V4ZWN1dG9ySWR4U2l6ZQABCQESX3NhdmVTU2lnbWFCeUV2ZW50AwUMZXhlY0NoYWluSWRfBQhldmVudElkXwUHc1NpZ21hXwkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgUDbmlsCQCUCgIJAM4IAgkAzggCCQDOCAIJAM4IAgkBDl9zYXZlU3NCeUV2ZW50AwUMZXhlY0NoYWluSWRfBQhldmVudElkXwkAzQgCBQZzQXJyYXkFAnNfCQEWX3NhdmVTQnlFdmVudEFuZFNpZ25lcgQFDGV4ZWNDaGFpbklkXwUIZXZlbnRJZF8FD2NhbGxlclB1YmxpY0tleQUCc18JARhfc2F2ZVNpZ25lcnNXaXRoU0J5RXZlbnQDBQxleGVjQ2hhaW5JZF8FCGV2ZW50SWRfCQDNCAIFDHNpZ25lcnNBcnJheQUPY2FsbGVyUHVibGljS2V5CQESX3NhdmVSU2lnbWFCeUV2ZW50AwUMZXhlY0NoYWluSWRfBQhldmVudElkXwUHclNpZ21hXwUSZXZlbnRTdGF0dXNBY3Rpb25zBQR1bml0CQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuAWkBBXJlc2V0AwhldmVudElkXwxleGVjQ2hhaW5JZF8Ccl8ED2NhbGxlclB1YmxpY0tleQkA2AQBCAUBaQ9jYWxsZXJQdWJsaWNLZXkEBWVwb2NoCQERX2xvYWRDdXJyZW50RXBvY2gBBQxleGVjQ2hhaW5JZF8EA2VycgMDAwMDAwkBEF93aGVuSW5pdGlhbGl6ZWQACQEMX3ZhbGlkYXRlSW50BAUIZXZlbnRJZF8AAAUHTUFYX0lOVAIWcmVzZXQ6IGludmFsaWQgZXZlbnRJZAcJAQxfdmFsaWRhdGVJbnQEBQxleGVjQ2hhaW5JZF8AAAUHTUFYX0lOVAIacmVzZXQ6IGludmFsaWQgZXhlY0NoYWluSWQHCQEPX3ZhbGlkYXRlU3RyaW5nAgUCcl8CEHJlc2V0OiBpbnZhbGlkIHIHCQEPX2lzQWN0aXZlU2lnbmVyAwUPY2FsbGVyUHVibGljS2V5CQEMX2xvYWRTaWduZXJzAgUMZXhlY0NoYWluSWRfBQVlcG9jaAIRcmVzZXQ6IG5vdCBhY3RpdmUHCQENX2NoZWNrU2VjRGVwbwIFD2NhbGxlclB1YmxpY0tleQIicmVzZXQ6IG5vdCBlbm91Z2ggc2VjdXJpdHkgZGVwb3NpdAcJARlfY2hlY2tFdmVudFN0YXR1c0ZvclJlc2V0AwUMZXhlY0NoYWluSWRfBQhldmVudElkXwIbcmVzZXQ6IGludmFsaWQgZXZlbnQgc3RhdHVzBwMJAAACBQNlcnIFA2VycgQLc2xhc2hBbW91bnQAAAQMc2lnbmVyc1dpdGhSCQEYX2xvYWRTaWduZXJzV2l0aFJCeUV2ZW50AgUMZXhlY0NoYWluSWRfBQhldmVudElkXwQMc2lnbmVyc1dpdGhTCQEYX2xvYWRTaWduZXJzV2l0aFNCeUV2ZW50AgUMZXhlY0NoYWluSWRfBQhldmVudElkXwQGcmVzdWx0CQEPX3NsYXNoSW5jb3JyZWN0AgUMc2lnbmVyc1dpdGhSBQxzaWduZXJzV2l0aFMED3NsYXNoaW5nQWN0aW9ucwgFBnJlc3VsdAJfMQQSY29tcGVuc2F0ZWRTaWduZXJzCAUGcmVzdWx0Al8yBAxjb21wZW5zYXRpb24IBQZyZXN1bHQCXzMEE2NvbXBlbnNhdGlvbkFjdGlvbnMJARJfY29tcGVuc2F0ZUNvcnJlY3QCBRJjb21wZW5zYXRlZFNpZ25lcnMFDGNvbXBlbnNhdGlvbgkAlAoCCQDOCAIJAM4IAgkAzggCCQDOCAIJAM4IAgkAzggCCQDOCAIJAM4IAgkAzggCCQEQX3NhdmVFdmVudFN0YXR1cwMFDGV4ZWNDaGFpbklkXwUIZXZlbnRJZF8FEUVWRU5UX1NUQVRVU19JTklUCQEOX3NhdmVSc0J5RXZlbnQDBQxleGVjQ2hhaW5JZF8FCGV2ZW50SWRfCQDMCAIFAnJfBQNuaWwJARZfc2F2ZVJCeUV2ZW50QW5kU2lnbmVyBAUMZXhlY0NoYWluSWRfBQhldmVudElkXwUPY2FsbGVyUHVibGljS2V5BQJyXwkBGF9zYXZlU2lnbmVyc1dpdGhSQnlFdmVudAMFDGV4ZWNDaGFpbklkXwUIZXZlbnRJZF8JAMwIAgUPY2FsbGVyUHVibGljS2V5BQNuaWwJARJfc2F2ZVJTaWdtYUJ5RXZlbnQDBQxleGVjQ2hhaW5JZF8FCGV2ZW50SWRfAgAJAQ5fc2F2ZVNzQnlFdmVudAMFDGV4ZWNDaGFpbklkXwUIZXZlbnRJZF8FA25pbAkBGF9zYXZlU2lnbmVyc1dpdGhTQnlFdmVudAMFDGV4ZWNDaGFpbklkXwUIZXZlbnRJZF8FA25pbAkBEl9zYXZlU1NpZ21hQnlFdmVudAMFDGV4ZWNDaGFpbklkXwUIZXZlbnRJZF8CAAUPc2xhc2hpbmdBY3Rpb25zBRNjb21wZW5zYXRpb25BY3Rpb25zBQR1bml0CQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuAWkBEmFkZFNlY3VyaXR5RGVwb3NpdAEKcmVjaXBpZW50XwQJcmVjaXBpZW50AwkAAAIFCnJlY2lwaWVudF8CAAkApQgBCAUBaQZjYWxsZXIFCnJlY2lwaWVudF8EA2VycgMDCQEQX3ZhbGlkYXRlQWRkcmVzcwIFCXJlY2lwaWVudAIlYWRkU2VjdXJpdHlEZXBvc2l0OiBpbnZhbGlkIHJlY2lwaWVudAkBFV92YWxpZGF0ZVBheW1lbnRzU2l6ZQMIBQFpCHBheW1lbnRzAAECHmFkZFNlY3VyaXR5RGVwb3NpdDogbm8gcGF5bWVudAcJARVfdmFsaWRhdGVQYXltZW50QXNzZXQDCQCRAwIIBQFpCHBheW1lbnRzAAAFBHVuaXQCIWFkZFNlY3VyaXR5RGVwb3NpdDogaW52YWxpZCBhc3NldAcDCQAAAgUDZXJyBQNlcnIEDXJlY2lwaWVudEFkZHIJARFAZXh0ck5hdGl2ZSgxMDYyKQEFCXJlY2lwaWVudAQHYmFsYW5jZQkBDF9sb2FkU2VjRGVwbwEFDXJlY2lwaWVudEFkZHIEDnVwZGF0ZWRCYWxhbmNlCQBkAgUHYmFsYW5jZQgJAJEDAggFAWkIcGF5bWVudHMAAAZhbW91bnQJAJQKAgkBDF9zYXZlU2VjRGVwbwIFDXJlY2lwaWVudEFkZHIFDnVwZGF0ZWRCYWxhbmNlBQR1bml0CQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuAWkBEnN1YlNlY3VyaXR5RGVwb3NpdAEHYW1vdW50XwQHYmFsYW5jZQkBDF9sb2FkU2VjRGVwbwEIBQFpBmNhbGxlcgQDZXJyAwkBC19pc1plcm9Mb2NrAgkA2AQBCAUBaQ9jYWxsZXJQdWJsaWNLZXkCGnN1YlNlY3VyaXR5RGVwb3NpdDogbG9ja2VkAwkAZgIFB2Ftb3VudF8FB2JhbGFuY2UJAAIBAihzdWJTZWN1cml0eURlcG9zaXQ6IGluc3VmZmljaWVudCBiYWxhbmNlBgcDCQAAAgUDZXJyBQNlcnIJAJQKAgkAzggCCQEMX3NhdmVTZWNEZXBvAggFAWkGY2FsbGVyCQBlAgUHYmFsYW5jZQUHYW1vdW50XwkAzAgCCQEOU2NyaXB0VHJhbnNmZXIDCAUBaQZjYWxsZXIFB2Ftb3VudF8FBHVuaXQFA25pbAUEdW5pdAkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgFpAQtzZXRNdWx0aXNpZwEJbXVsdGlzaWdfBANlcnIDCQERX29ubHlUaGlzQ29udHJhY3QBCAUBaQZjYWxsZXIJARBfdmFsaWRhdGVBZGRyZXNzAgUJbXVsdGlzaWdfAiVzZXRNdWx0aXNpZzogaW52YWxpZCBtdWx0aXNpZyBhZGRyZXNzBwMJAAACBQNlcnIFA2VycgkAlAoCCQENX3NhdmVNdWx0aXNpZwEJARFAZXh0ck5hdGl2ZSgxMDYyKQEFCW11bHRpc2lnXwUEdW5pdAkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgECdHgBBnZlcmlmeQAEByRtYXRjaDAJAKIIAQUMS0VZX01VTFRJU0lHAwkAAQIFByRtYXRjaDACBlN0cmluZwQIbXVsdGlzaWcFByRtYXRjaDAJAQt2YWx1ZU9yRWxzZQIJAJsIAgkBEUBleHRyTmF0aXZlKDEwNjIpAQUIbXVsdGlzaWcJALkJAgkAzAgCBQpLRVlfU1RBVFVTCQDMCAIJAKUIAQUEdGhpcwkAzAgCCQDYBAEIBQJ0eAJpZAUDbmlsBQlTRVBBUkFUT1IHCQD0AwMIBQJ0eAlib2R5Qnl0ZXMJAJEDAggFAnR4BnByb29mcwAACAUCdHgPc2VuZGVyUHVibGljS2V5Wdzfhg==", "height": 2489848, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: EJ59svKZrUUdgh7F38br24ueCJzUSsknzqGACGptEfPZ Next: 3nAKnhSedMQtJqsJZrMeQWAwT8JhPG5Mw8XjQaGw5REq Diff:
OldNewDifferences
8888 else true
8989
9090
91-func O (L,F) = if ((0 >= size(L)))
91+func O (L,F) = if (if ((0 >= size(L)))
92+ then true
93+ else contains(L, a))
9294 then throw(F)
9395 else true
9496
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 6 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let a = "__"
55
66 let b = "INIT"
77
88 let c = "MULTISIG"
99
1010 let d = "STATUS"
1111
1212 let e = "MIN_SEC_DEPO"
1313
1414 let f = "PUNISHMENT"
1515
1616 let g = "RESET_BLOCK_DELTA"
1717
1818 let h = "SEC_DEPO"
1919
2020 let i = "REWARD_TOKEN_ADDRESS"
2121
2222 let j = "REWARD_AMOUNT"
2323
2424 let k = "CURRENT_EPOCH"
2525
2626 let l = "SIGNERS_PER_EPOCH"
2727
2828 let m = "EVENT_STATUS"
2929
3030 let n = "LOCKS"
3131
3232 let o = "T"
3333
3434 let p = "R"
3535
3636 let q = "S"
3737
3838 let r = "R_SIGNERS"
3939
4040 let s = "EVENT_START_BLOCK"
4141
4242 let t = "R_SIGMA"
4343
4444 let u = "S_SIGMA"
4545
4646 let v = "S_SIGNERS"
4747
4848 let w = "SIGNED_EVENT_EXECUTOR"
4949
5050 let x = "SIZE"
5151
5252 let y = "mintMany"
5353
5454 let z = 1
5555
5656 let A = 2
5757
5858 let B = 3
5959
6060 let C = 9223372036854775807
6161
6262 func D (E,F) = {
6363 let G = addressFromString(E)
6464 if ($isInstanceOf(G, "Address"))
6565 then {
6666 let H = G
6767 true
6868 }
6969 else throw(F)
7070 }
7171
7272
7373 func I (J,F) = {
7474 let G = assetInfo(fromBase58String(J))
7575 if ($isInstanceOf(G, "Asset"))
7676 then {
7777 let H = G
7878 true
7979 }
8080 else throw(F)
8181 }
8282
8383
8484 func K (L,M,N,F) = if (if ((M > L))
8585 then true
8686 else (L > N))
8787 then throw(F)
8888 else true
8989
9090
91-func O (L,F) = if ((0 >= size(L)))
91+func O (L,F) = if (if ((0 >= size(L)))
92+ then true
93+ else contains(L, a))
9294 then throw(F)
9395 else true
9496
9597
9698 func P (Q,R,F) = if ((size(Q) != R))
9799 then throw(F)
98100 else true
99101
100102
101103 func S (T,U,F) = if ((T.assetId != U))
102104 then throw(F)
103105 else true
104106
105107
106108 func V (W,F) = if ((size(fromBase58String(W)) != 32))
107109 then throw(F)
108110 else true
109111
110112
111113 func X (Y,F) = {
112114 func Z (aa,ab) = $Tuple2(if (aa._1)
113115 then V(ab, aa._2)
114116 else false, aa._2)
115117
116118 let ac = {
117119 let ad = Y
118120 let ae = size(ad)
119121 let af = $Tuple2(true, F)
120122 func ag (ah,ai) = if ((ai >= ae))
121123 then ah
122124 else Z(ah, ad[ai])
123125
124126 func aj (ah,ai) = if ((ai >= ae))
125127 then ah
126128 else throw("List size exceeds 10")
127129
128130 aj(ag(ag(ag(ag(ag(ag(ag(ag(ag(ag(af, 0), 1), 2), 3), 4), 5), 6), 7), 8), 9), 10)
129131 }
130132 ac._1
131133 }
132134
133135
134136 func ak () = {
135137 let G = getBoolean(b)
136138 if ($isInstanceOf(G, "Boolean"))
137139 then {
138140 let H = G
139141 H
140142 }
141143 else false
142144 }
143145
144146
145147 func al (am) = [BooleanEntry(b, am)]
146148
147149
148150 func an () = {
149151 let G = getString(c)
150152 if ($isInstanceOf(G, "String"))
151153 then {
152154 let H = G
153155 addressFromStringValue(H)
154156 }
155157 else Address(base58'')
156158 }
157159
158160
159161 func ao (ap) = [StringEntry(c, toString(ap))]
160162
161163
162164 func aq () = {
163165 let G = getInteger(e)
164166 if ($isInstanceOf(G, "Int"))
165167 then {
166168 let H = G
167169 H
168170 }
169171 else 0
170172 }
171173
172174
173175 func ar (L) = [IntegerEntry(e, L)]
174176
175177
176178 func as (at) = {
177179 let G = getInteger(makeString([h, toString(at)], a))
178180 if ($isInstanceOf(G, "Int"))
179181 then {
180182 let H = G
181183 H
182184 }
183185 else 0
184186 }
185187
186188
187189 func au (at,L) = [IntegerEntry(makeString([h, toString(at)], a), L)]
188190
189191
190192 func av () = {
191193 let G = getInteger(f)
192194 if ($isInstanceOf(G, "Int"))
193195 then {
194196 let H = G
195197 H
196198 }
197199 else 0
198200 }
199201
200202
201203 func aw (L) = [IntegerEntry(f, L)]
202204
203205
204206 func ax () = {
205207 let G = getInteger(g)
206208 if ($isInstanceOf(G, "Int"))
207209 then {
208210 let H = G
209211 H
210212 }
211213 else 0
212214 }
213215
214216
215217 func ay (L) = [IntegerEntry(g, L)]
216218
217219
218220 func az () = {
219221 let G = getString(i)
220222 if ($isInstanceOf(G, "String"))
221223 then {
222224 let H = G
223225 addressFromStringValue(H)
224226 }
225227 else Address(base58'')
226228 }
227229
228230
229231 func aA (L) = [StringEntry(i, toString(L))]
230232
231233
232234 func aB () = {
233235 let G = getInteger(j)
234236 if ($isInstanceOf(G, "Int"))
235237 then {
236238 let H = G
237239 H
238240 }
239241 else 0
240242 }
241243
242244
243245 func aC (L) = [IntegerEntry(j, L)]
244246
245247
246248 func aD (aE) = {
247249 let G = getInteger(makeString([k, toString(aE)], a))
248250 if ($isInstanceOf(G, "Int"))
249251 then {
250252 let H = G
251253 H
252254 }
253255 else 0
254256 }
255257
256258
257259 func aF (aE,L) = [IntegerEntry(makeString([k, toString(aE)], a), L)]
258260
259261
260262 func aG (aE,aH) = {
261263 let G = getString(makeString([l, toString(aE), toString(aH)], a))
262264 if ($isInstanceOf(G, "String"))
263265 then {
264266 let H = G
265267 if ((size(H) > 0))
266268 then split(H, a)
267269 else nil
268270 }
269271 else nil
270272 }
271273
272274
273275 func aI (aE,aH,aJ) = [StringEntry(makeString([l, toString(aE), toString(aH)], a), makeString(aJ, a))]
274276
275277
276278 func aK (aE,aL) = {
277279 let G = getInteger(makeString([m, toString(aE), toString(aL)], a))
278280 if ($isInstanceOf(G, "Int"))
279281 then {
280282 let H = G
281283 H
282284 }
283285 else z
284286 }
285287
286288
287289 func aM (aE,aL,aN) = [IntegerEntry(makeString([m, toString(aE), toString(aL)], a), aN)]
288290
289291
290292 func aO (W) = {
291293 let G = getInteger(makeString([n, W], a))
292294 if ($isInstanceOf(G, "Int"))
293295 then {
294296 let H = G
295297 H
296298 }
297299 else 0
298300 }
299301
300302
301303 func aP (W,L) = [IntegerEntry(makeString([n, W], a), L)]
302304
303305
304306 func aQ (aE,aH) = {
305307 let G = getInteger(makeString([o, toString(aE), toString(aH)], a))
306308 if ($isInstanceOf(G, "Int"))
307309 then {
308310 let H = G
309311 H
310312 }
311313 else 0
312314 }
313315
314316
315317 func aR (aE,aH,L) = [IntegerEntry(makeString([o, toString(aE), toString(aH)], a), L)]
316318
317319
318320 func aS (aE,aL) = {
319321 let G = getString(makeString([p, toString(aE), toString(aL)], a))
320322 if ($isInstanceOf(G, "String"))
321323 then {
322324 let H = G
323325 if ((size(H) > 0))
324326 then split(H, a)
325327 else nil
326328 }
327329 else nil
328330 }
329331
330332
331333 func aT (aE,aL,aU) = [StringEntry(makeString([p, toString(aE), toString(aL)], a), makeString(aU, a))]
332334
333335
334336 func aV (aE,aL) = {
335337 let G = getString(makeString([q, toString(aE), toString(aL)], a))
336338 if ($isInstanceOf(G, "String"))
337339 then {
338340 let H = G
339341 if ((size(H) > 0))
340342 then split(H, a)
341343 else nil
342344 }
343345 else nil
344346 }
345347
346348
347349 func aW (aE,aL,aX) = [StringEntry(makeString([q, toString(aE), toString(aL)], a), makeString(aX, a))]
348350
349351
350352 func aY (aE,aL) = {
351353 let G = getString(makeString([t, toString(aE), toString(aL)], a))
352354 if ($isInstanceOf(G, "String"))
353355 then {
354356 let H = G
355357 H
356358 }
357359 else ""
358360 }
359361
360362
361363 func aZ (aE,aL,ba) = [StringEntry(makeString([t, toString(aE), toString(aL)], a), ba)]
362364
363365
364366 func bb (aE,aL) = {
365367 let G = getString(makeString([u, toString(aE), toString(aL)], a))
366368 if ($isInstanceOf(G, "String"))
367369 then {
368370 let H = G
369371 H
370372 }
371373 else ""
372374 }
373375
374376
375377 func bc (aE,aL,bd) = [StringEntry(makeString([u, toString(aE), toString(aL)], a), bd)]
376378
377379
378380 func be (aE,aL,bf) = {
379381 let G = getString(makeString([p, toString(aE), toString(aL), bf], a))
380382 if ($isInstanceOf(G, "String"))
381383 then {
382384 let H = G
383385 H
384386 }
385387 else ""
386388 }
387389
388390
389391 func bg (aE,aL,bf,bh) = [StringEntry(makeString([p, toString(aE), toString(aL), bf], a), bh)]
390392
391393
392394 func bi (aE,aL,bf) = {
393395 let G = getString(makeString([q, toString(aE), toString(aL), bf], a))
394396 if ($isInstanceOf(G, "String"))
395397 then {
396398 let H = G
397399 H
398400 }
399401 else ""
400402 }
401403
402404
403405 func bj (aE,aL,bf,bk) = [StringEntry(makeString([q, toString(aE), toString(aL), bf], a), bk)]
404406
405407
406408 func bl (aE,aL) = {
407409 let G = getString(makeString([r, toString(aE), toString(aL)], a))
408410 if ($isInstanceOf(G, "String"))
409411 then {
410412 let H = G
411413 if ((size(H) > 0))
412414 then split(H, a)
413415 else nil
414416 }
415417 else nil
416418 }
417419
418420
419421 func bm (aE,aL,aU) = [StringEntry(makeString([r, toString(aE), toString(aL)], a), makeString(aU, a))]
420422
421423
422424 func bn (aE,aL) = {
423425 let G = getString(makeString([v, toString(aE), toString(aL)], a))
424426 if ($isInstanceOf(G, "String"))
425427 then {
426428 let H = G
427429 if ((size(H) > 0))
428430 then split(H, a)
429431 else nil
430432 }
431433 else nil
432434 }
433435
434436
435437 func bo (aE,aL,aX) = [StringEntry(makeString([v, toString(aE), toString(aL)], a), makeString(aX, a))]
436438
437439
438440 func bp (aE,aL) = {
439441 let G = getInteger(makeString([s, toString(aE), toString(aL)], a))
440442 if ($isInstanceOf(G, "Int"))
441443 then {
442444 let H = G
443445 H
444446 }
445447 else 0
446448 }
447449
448450
449451 func bq (aE,aL,L) = [IntegerEntry(makeString([s, toString(aE), toString(aL)], a), L)]
450452
451453
452454 func br (bs) = {
453455 let G = getInteger(makeString([w, toString(bs), x], a))
454456 if ($isInstanceOf(G, "Int"))
455457 then {
456458 let H = G
457459 H
458460 }
459461 else 0
460462 }
461463
462464
463465 func bt (bs,L) = [IntegerEntry(makeString([w, toString(bs), x], a), L)]
464466
465467
466468 func bu (bs,bv) = {
467469 let G = getInteger(makeString([w, toString(bs), toString(bv)], a))
468470 if ($isInstanceOf(G, "Int"))
469471 then {
470472 let H = G
471473 H
472474 }
473475 else 0
474476 }
475477
476478
477479 func bw (bs,bv,L) = [IntegerEntry(makeString([w, toString(bs), toString(bv)], a), L)]
478480
479481
480482 func bx (by) = if ((by != this))
481483 then throw("_onlyThisContract: revert")
482484 else true
483485
484486
485487 func bz () = if ((an() == Address(base58'')))
486488 then throw("_whenMultisigSet: revert")
487489 else true
488490
489491
490492 func bA () = if (ak())
491493 then throw("_whenNotInitialized: revert")
492494 else true
493495
494496
495497 func bB () = if (!(ak()))
496498 then throw("_whenInitialized: revert")
497499 else true
498500
499501
500502 func bC (W,Y,F) = if (!(containsElement(Y, W)))
501503 then throw(F)
502504 else true
503505
504506
505507 func bD (bf,F) = if ((aq() > as(addressFromPublicKey(fromBase58String(bf)))))
506508 then throw(F)
507509 else true
508510
509511
510512 func bE (aE,aL,F) = if ((aK(aE, aL) != z))
511513 then throw(F)
512514 else true
513515
514516
515517 func bF (aE,aL,F) = if ((aK(aE, aL) != A))
516518 then throw(F)
517519 else true
518520
519521
520522 func bG (aE,aL,F) = if (if ((aK(aE, aL) != A))
521523 then true
522524 else ((bp(aE, aL) + ax()) > height))
523525 then throw(F)
524526 else true
525527
526528
527529 func bH (aJ) = {
528530 func Z (aa,ab) = (aa ++ aP(ab, (aO(ab) + 1)))
529531
530532 let ad = aJ
531533 let ae = size(ad)
532534 let af = nil
533535 func ag (ah,ai) = if ((ai >= ae))
534536 then ah
535537 else Z(ah, ad[ai])
536538
537539 func aj (ah,ai) = if ((ai >= ae))
538540 then ah
539541 else throw("List size exceeds 10")
540542
541543 aj(ag(ag(ag(ag(ag(ag(ag(ag(ag(ag(af, 0), 1), 2), 3), 4), 5), 6), 7), 8), 9), 10)
542544 }
543545
544546
545547 func bI (W,F) = if ((aO(W) > 0))
546548 then throw(F)
547549 else true
548550
549551
550552 func bJ (aE,aL,bf,F) = {
551553 let bK = be(aE, aL, bf)
552554 if (if ((bK != ""))
553555 then containsElement(aS(aE, aL), bK)
554556 else false)
555557 then throw(F)
556558 else true
557559 }
558560
559561
560562 func bL (aE,aL,bf,F) = {
561563 let bM = bi(aE, aL, bf)
562564 if (if ((bM != ""))
563565 then containsElement(aV(aE, aL), bM)
564566 else false)
565567 then throw(F)
566568 else true
567569 }
568570
569571
570572 func bN (aE,aL,bf,F) = {
571573 let bK = be(aE, aL, bf)
572574 if (if ((bK == ""))
573575 then true
574576 else !(containsElement(aS(aE, aL), bK)))
575577 then throw(F)
576578 else true
577579 }
578580
579581
580582 func bO (bP,bQ) = {
581583 let bR = av()
582584 func Z (aa,ab) = if (containsElement(bQ, ab))
583585 then $Tuple3(aa._1, (aa._2 :+ ab), aa._3)
584586 else {
585587 let bS = addressFromPublicKey(fromBase58String(ab))
586588 $Tuple3((aa._1 ++ au(bS, (as(bS) - bR))), aa._2, (aa._3 + bR))
587589 }
588590
589591 let ad = bP
590592 let ae = size(ad)
591593 let af = $Tuple3(nil, nil, 0)
592594 func ag (ah,ai) = if ((ai >= ae))
593595 then ah
594596 else Z(ah, ad[ai])
595597
596598 func aj (ah,ai) = if ((ai >= ae))
597599 then ah
598600 else throw("List size exceeds 10")
599601
600602 aj(ag(ag(ag(ag(ag(ag(ag(ag(ag(ag(af, 0), 1), 2), 3), 4), 5), 6), 7), 8), 9), 10)
601603 }
602604
603605
604606 func bT (aJ,bU) = {
605607 let bV = (bU / size(aJ))
606608 func Z (aa,ab) = (aa :+ ScriptTransfer(addressFromPublicKey(fromBase58String(ab)), bV, unit))
607609
608610 let ad = aJ
609611 let ae = size(ad)
610612 let af = nil
611613 func ag (ah,ai) = if ((ai >= ae))
612614 then ah
613615 else Z(ah, ad[ai])
614616
615617 func aj (ah,ai) = if ((ai >= ae))
616618 then ah
617619 else throw("List size exceeds 10")
618620
619621 aj(ag(ag(ag(ag(ag(ag(ag(ag(ag(ag(af, 0), 1), 2), 3), 4), 5), 6), 7), 8), 9), 10)
620622 }
621623
622624
623625 func bW (Y) = {
624626 func bX (bY,bZ) = (bY :+ toString(addressFromPublicKey(fromBase58String(bZ))))
625627
626628 let ad = Y
627629 let ae = size(ad)
628630 let af = nil
629631 func ag (ah,ai) = if ((ai >= ae))
630632 then ah
631633 else bX(ah, ad[ai])
632634
633635 func aj (ah,ai) = if ((ai >= ae))
634636 then ah
635637 else throw("List size exceeds 51")
636638
637639 aj(ag(ag(ag(ag(ag(ag(ag(ag(ag(ag(ag(ag(ag(ag(ag(ag(ag(ag(ag(ag(ag(ag(ag(ag(ag(ag(ag(ag(ag(ag(ag(ag(ag(ag(ag(ag(ag(ag(ag(ag(ag(ag(ag(ag(ag(ag(ag(ag(ag(ag(ag(af, 0), 1), 2), 3), 4), 5), 6), 7), 8), 9), 10), 11), 12), 13), 14), 15), 16), 17), 18), 19), 20), 21), 22), 23), 24), 25), 26), 27), 28), 29), 30), 31), 32), 33), 34), 35), 36), 37), 38), 39), 40), 41), 42), 43), 44), 45), 46), 47), 48), 49), 50), 51)
638640 }
639641
640642
641643 @Callable(ca)
642644 func init (cb,cc,cd,ce,cf) = {
643645 let cg = if (if (if (if (if (if (if (bx(ca.caller))
644646 then bA()
645647 else false)
646648 then bz()
647649 else false)
648650 then K(cb, cc, C, "init: invalid minSecDepo")
649651 else false)
650652 then K(cc, 0, C, "init: invalid punishment")
651653 else false)
652654 then K(cd, 0, C, "init: invalid resetBlockDelta")
653655 else false)
654656 then D(ce, "init: invalid rewardTokenAddress")
655657 else false)
656658 then K(cf, 0, C, "init: invalid rewardAmount")
657659 else false
658660 if ((cg == cg))
659661 then $Tuple2((((((al(true) ++ ar(cb)) ++ aw(cc)) ++ ay(cd)) ++ aA(addressFromStringValue(ce))) ++ aC(cf)), unit)
660662 else throw("Strict value is not equal to itself.")
661663 }
662664
663665
664666
665667 @Callable(ca)
666668 func setActiveSigners (aE,aJ,ch) = {
667669 let cg = if (if (if (bx(ca.caller))
668670 then bB()
669671 else false)
670672 then X(aJ, "setActiveSigners: invalid signers")
671673 else false)
672674 then K(ch, 2, size(aJ), "setActiveSigners: invalid T")
673675 else false
674676 if ((cg == cg))
675677 then {
676678 let ci = aD(aE)
677679 $Tuple2((((aF(aE, (ci + 1)) ++ aR(aE, (ci + 1), ch)) ++ aI(aE, (ci + 1), aJ)) ++ bH(aJ)), unit)
678680 }
679681 else throw("Strict value is not equal to itself.")
680682 }
681683
682684
683685
684686 @Callable(ca)
685687 func submitR (aL,aE,bh) = {
686688 let cj = toBase58String(ca.callerPublicKey)
687689 let ci = aD(aE)
688690 let ck = aQ(aE, ci)
689691 let cg = if (if (if (if (if (if (if (bB())
690692 then K(aL, 0, C, "submitR: invalid eventId")
691693 else false)
692694 then K(aE, 0, C, "submitR: invalid execChainId")
693695 else false)
694696 then O(bh, "submitR: invalid r")
695697 else false)
696698 then bC(cj, aG(aE, ci), "submitR: not active")
697699 else false)
698700 then bD(cj, "submitR: not enough security deposit")
699701 else false)
700702 then bE(aE, aL, "submitR: invalid event status")
701703 else false)
702704 then bJ(aE, aL, cj, "submitR: already submitted")
703705 else false
704706 if ((cg == cg))
705707 then {
706708 let cl = aS(aE, aL)
707709 let cm = bl(aE, aL)
708710 let cn = if (((size(cl) + 1) == ck))
709711 then (aM(aE, aL, A) ++ bq(aE, aL, height))
710712 else nil
711713 $Tuple2((((aT(aE, aL, (cl :+ bh)) ++ bg(aE, aL, cj, bh)) ++ bm(aE, aL, (cm :+ cj))) ++ cn), unit)
712714 }
713715 else throw("Strict value is not equal to itself.")
714716 }
715717
716718
717719
718720 @Callable(ca)
719721 func submitS (aL,aE,ba,bk,bd) = {
720722 let cj = toBase58String(ca.callerPublicKey)
721723 let ci = aD(aE)
722724 let ck = aQ(aE, ci)
723725 let cg = if (if (if (if (if (if (if (if (if (bB())
724726 then K(aL, 0, C, "submitS: invalid eventId")
725727 else false)
726728 then K(aE, 0, C, "submitS: invalid execChainId")
727729 else false)
728730 then O(ba, "submitS: invalid r sigma")
729731 else false)
730732 then O(bk, "submitS: invalid s")
731733 else false)
732734 then bC(cj, aG(aE, ci), "submitS: not active")
733735 else false)
734736 then bD(cj, "submitS: not enough security deposit")
735737 else false)
736738 then bF(aE, aL, "submitS: invalid event status")
737739 else false)
738740 then bL(aE, aL, cj, "submitS: already submitted")
739741 else false)
740742 then bN(aE, aL, cj, "submitS: R is not submitted")
741743 else false
742744 if ((cg == cg))
743745 then {
744746 let co = aV(aE, aL)
745747 let cm = bn(aE, aL)
746748 let cn = if (((size(co) + 1) == ck))
747749 then {
748750 let cp = O(bd, "submitS: invalid s sigma")
749751 if ((cp == cp))
750752 then {
751753 let cq = br(aE)
752754 let cr = bW((cm :+ cj))
753755 let cs = invoke(az(), y, [aB(), cr], nil)
754756 if ((cs == cs))
755757 then (((aM(aE, aL, B) ++ bw(aE, cq, aL)) ++ bt(aE, (cq + 1))) ++ bc(aE, aL, bd))
756758 else throw("Strict value is not equal to itself.")
757759 }
758760 else throw("Strict value is not equal to itself.")
759761 }
760762 else nil
761763 $Tuple2(((((aW(aE, aL, (co :+ bk)) ++ bj(aE, aL, cj, bk)) ++ bo(aE, aL, (cm :+ cj))) ++ aZ(aE, aL, ba)) ++ cn), unit)
762764 }
763765 else throw("Strict value is not equal to itself.")
764766 }
765767
766768
767769
768770 @Callable(ca)
769771 func reset (aL,aE,bh) = {
770772 let cj = toBase58String(ca.callerPublicKey)
771773 let ci = aD(aE)
772774 let cg = if (if (if (if (if (if (bB())
773775 then K(aL, 0, C, "reset: invalid eventId")
774776 else false)
775777 then K(aE, 0, C, "reset: invalid execChainId")
776778 else false)
777779 then O(bh, "reset: invalid r")
778780 else false)
779781 then bC(cj, aG(aE, ci), "reset: not active")
780782 else false)
781783 then bD(cj, "reset: not enough security deposit")
782784 else false)
783785 then bG(aE, aL, "reset: invalid event status")
784786 else false
785787 if ((cg == cg))
786788 then {
787789 let ct = 0
788790 let cu = bl(aE, aL)
789791 let cv = bn(aE, aL)
790792 let ac = bO(cu, cv)
791793 let cw = ac._1
792794 let cx = ac._2
793795 let cy = ac._3
794796 let cz = bT(cx, cy)
795797 $Tuple2((((((((((aM(aE, aL, z) ++ aT(aE, aL, [bh])) ++ bg(aE, aL, cj, bh)) ++ bm(aE, aL, [cj])) ++ aZ(aE, aL, "")) ++ aW(aE, aL, nil)) ++ bo(aE, aL, nil)) ++ bc(aE, aL, "")) ++ cw) ++ cz), unit)
796798 }
797799 else throw("Strict value is not equal to itself.")
798800 }
799801
800802
801803
802804 @Callable(ca)
803805 func addSecurityDeposit (cA) = {
804806 let cB = if ((cA == ""))
805807 then toString(ca.caller)
806808 else cA
807809 let cg = if (if (D(cB, "addSecurityDeposit: invalid recipient"))
808810 then P(ca.payments, 1, "addSecurityDeposit: no payment")
809811 else false)
810812 then S(ca.payments[0], unit, "addSecurityDeposit: invalid asset")
811813 else false
812814 if ((cg == cg))
813815 then {
814816 let cC = addressFromStringValue(cB)
815817 let cD = as(cC)
816818 let cE = (cD + ca.payments[0].amount)
817819 $Tuple2(au(cC, cE), unit)
818820 }
819821 else throw("Strict value is not equal to itself.")
820822 }
821823
822824
823825
824826 @Callable(ca)
825827 func subSecurityDeposit (cF) = {
826828 let cD = as(ca.caller)
827829 let cg = if (bI(toBase58String(ca.callerPublicKey), "subSecurityDeposit: locked"))
828830 then if ((cF > cD))
829831 then throw("subSecurityDeposit: insufficient balance")
830832 else true
831833 else false
832834 if ((cg == cg))
833835 then $Tuple2((au(ca.caller, (cD - cF)) ++ [ScriptTransfer(ca.caller, cF, unit)]), unit)
834836 else throw("Strict value is not equal to itself.")
835837 }
836838
837839
838840
839841 @Callable(ca)
840842 func setMultisig (ap) = {
841843 let cg = if (bx(ca.caller))
842844 then D(ap, "setMultisig: invalid multisig address")
843845 else false
844846 if ((cg == cg))
845847 then $Tuple2(ao(addressFromStringValue(ap)), unit)
846848 else throw("Strict value is not equal to itself.")
847849 }
848850
849851
850852 @Verifier(cG)
851853 func cH () = {
852854 let G = getString(c)
853855 if ($isInstanceOf(G, "String"))
854856 then {
855857 let cI = G
856858 valueOrElse(getBoolean(addressFromStringValue(cI), makeString([d, toString(this), toBase58String(cG.id)], a)), false)
857859 }
858860 else sigVerify(cG.bodyBytes, cG.proofs[0], cG.senderPublicKey)
859861 }
860862

github/deemru/w8io/169f3d6 
73.35 ms