tx · 68kEWqAWVfGSHooYJBtCXdhuSE9A2GGtBCQ7nVbMimTw

3N1vLkqi1Wz7MDLtpwRFBg5V33fHpnxaFuV:  -0.03300000 Waves

2024.11.21 12:27 [3381030] smart account 3N1vLkqi1Wz7MDLtpwRFBg5V33fHpnxaFuV > SELF 0.00000000 Waves

{ "type": 13, "id": "68kEWqAWVfGSHooYJBtCXdhuSE9A2GGtBCQ7nVbMimTw", "fee": 3300000, "feeAssetId": null, "timestamp": 1732181125154, "version": 2, "chainId": 84, "sender": "3N1vLkqi1Wz7MDLtpwRFBg5V33fHpnxaFuV", "senderPublicKey": "8eBztzvcDYHno9SMCjk6rkQHJHDMXFt5YcknLLsAARn8", "proofs": [ "5JZwyz1PYFGpVZThhWuF4SmQjNJWsDPNf4pMQ91DwfBZw73n4BZPyjfVkSSD3z8bTtwn1GBGtSdRnriSP4AnxUXe" ], "script": "base64:BwJuCAISCAoGCAgICAgIEggKBggICAgICBIJCgcICAgICAgIEgUKAwgICBIDCgEIEgwKCggICAgICAgICAgSBgoECAgICBIFCgMBCAgSBQoDAQgIEgMKAQESAwoBCBIDCgEIEgASABIDCgEIEgMKAQhwAAlTRVBBUkFUT1ICAl9fAAxLRVlfTVVMVElTSUcCCE1VTFRJU0lHAApLRVlfU1RBVFVTAgZTVEFUVVMACEtFWV9JTklUAgRJTklUAApLRVlfUEFVU0VEAgZQQVVTRUQACktFWV9QQVVTRVICBlBBVVNFUgAMS0VZX0VYRUNVVE9SAghFWEVDVVRPUgATS0VZX0NBTExFUl9DT05UUkFDVAIPQ0FMTEVSX0NPTlRSQUNUAA9LRVlfV0FWRVNfVkFVTFQCC1dBVkVTX1ZBVUxUABNLRVlfQUNDT1VOVF9TVE9SQUdFAg9BQ0NPVU5UX1NUT1JBR0UACUtFWV9DSEFJTgIFQ0hBSU4AEktFWV9BU1NFVF9DVVJSRU5DWQIOQVNTRVRfQ1VSUkVOQ1kAEktFWV9BU1NFVF9SRVNFUlZFUwIOQVNTRVRfUkVTRVJWRVMAGUtFWV9BU1NFVF9SRVNFUlZFU19MT0NLRUQCFUFTU0VUX1JFU0VSVkVTX0xPQ0tFRAAYS0VZX1VTRVJfTE9DS0VEX0NVUlJFTkNZAhRVU0VSX0xPQ0tFRF9DVVJSRU5DWQAVS0VZX0NVUlJFTkNZX1JFU0VSVkVTAhFDVVJSRU5DWV9SRVNFUlZFUwAbS0VZX1JFUVVFU1RfV0lUSERSQVdBTF9TSVpFAhdSRVFVRVNUX1dJVEhEUkFXQUxfU0laRQAWS0VZX1JFUVVFU1RfV0lUSERSQVdBTAISUkVRVUVTVF9XSVRIRFJBV0FMACJLRVlfUkVRVUVTVF9XSVRIRFJBV0FMX0JMT0NLX0RFTEFZAh5SRVFVRVNUX1dJVEhEUkFXQUxfQkxPQ0tfREVMQVkADUtFWV9TRVFVRU5DRVICCVNFUVVFTkNFUgATS0VZX1dJVEhEUkFXQUxfSEFTSAIPV0lUSERSQVdBTF9IQVNIABFLRVlfVkFVTFRfQURBUFRFUgINVkFVTFRfQURBUFRFUgAWS0VZX1JFV0FSRF9ESVNUUklCVVRPUgISUkVXQVJEX0RJU1RSSUJVVE9SABlLRVlfUkVMQVlFUl9GRUVfUkVDSVBJRU5UAhVSRUxBWUVSX0ZFRV9SRUNJUElFTlQADEZVTkNfREVQT1NJVAIHZGVwb3NpdAAVRlVOQ19HRVRfVVNFUl9CQUxBTkNFAg5nZXRVc2VyQmFsYW5jZQAWRlVOQ19JTlRFUk5BTF9UUkFOU0ZFUgIQaW50ZXJuYWxUcmFuc2ZlcgANRlVOQ19XSVRIRFJBVwIId2l0aGRyYXcAG0ZVTkNfREVQT1NJVF9TVEFLSU5HX1JFV0FSRAIUZGVwb3NpdFN0YWtpbmdSZXdhcmQAFlJFUVVFU1RfU1RBVFVTX0NSRUFURUQAAAATUkVRVUVTVF9TVEFUVVNfRE9ORQABABdSRVFVRVNUX1NUQVRVU19SRUpFQ1RFRAACAAVXQVZFUwIFV0FWRVMAC1NQT1RfV0FMTEVUAgRTUE9UAAdNQVhfSU5UAP//////////fwALWkVST19CSUdJTlQJALYCAQAAAApPTkVfQklHSU5UCQC2AgEAAQAHT05FX0RBWQCAuJkpAA5BTEdfVFlQRV9XQVZFUwABAAxBTEdfVFlQRV9FVk0AAgAURVZNX1NJR05BVFVSRV9QUkVGSVgBHBlFdGhlcmV1bSBTaWduZWQgTWVzc2FnZToKMzIBEF92YWxpZGF0ZUFkZHJlc3MCCGFkZHJlc3NfBGVycl8EByRtYXRjaDAJAKYIAQUIYWRkcmVzc18DCQABAgUHJG1hdGNoMAIHQWRkcmVzcwQBYQUHJG1hdGNoMAYJAAIBBQRlcnJfAQxfdmFsaWRhdGVJbnQEBHZhbF8ObG93ZXJCb3VuZGFyeV8OdXBwZXJCb3VuZGFyeV8EZXJyXwMDCQBmAgUObG93ZXJCb3VuZGFyeV8FBHZhbF8GCQBmAgUEdmFsXwUOdXBwZXJCb3VuZGFyeV8JAAIBBQRlcnJfBgEPX3ZhbGlkYXRlQmlnSW50AwR2YWxfDmxvd2VyQm91bmRhcnlfBGVycl8DCQC/AgIFDmxvd2VyQm91bmRhcnlfBQR2YWxfCQACAQUEZXJyXwYBEV92YWxpZGF0ZUJpZ0ludF8yBAR2YWxfDmxvd2VyQm91bmRhcnlfDnVwcGVyQm91bmRhcnlfBGVycl8DAwkAvwICBQ5sb3dlckJvdW5kYXJ5XwUEdmFsXwYJAL8CAgUEdmFsXwUOdXBwZXJCb3VuZGFyeV8JAAIBBQRlcnJfBgEPX3ZhbGlkYXRlU3RyaW5nAgR2YWxfBGVycl8DAwkAZwIAAAkAsQIBBQR2YWxfBgkBCGNvbnRhaW5zAgUEdmFsXwUJU0VQQVJBVE9SCQACAQUEZXJyXwYBFF92YWxpZGF0ZVN0cmluZ0VxdWFsAwV2YWwxXwV2YWwyXwRlcnJfAwkBAiE9AgUFdmFsMV8FBXZhbDJfCQACAQUEZXJyXwYBCV9sb2FkSW5pdAAEByRtYXRjaDAJAKAIAQUIS0VZX0lOSVQDCQABAgUHJG1hdGNoMAIHQm9vbGVhbgQBYQUHJG1hdGNoMAUBYQcBCV9zYXZlSW5pdAEHaXNJbml0XwkAzAgCCQEMQm9vbGVhbkVudHJ5AgUIS0VZX0lOSVQFB2lzSW5pdF8FA25pbAEKX2xvYWRQYXVzZQAEByRtYXRjaDAJAKAIAQUKS0VZX1BBVVNFRAMJAAECBQckbWF0Y2gwAgdCb29sZWFuBAFhBQckbWF0Y2gwBQFhBwEKX3NhdmVQYXVzZQEJaXNQYXVzZWRfCQDMCAIJAQxCb29sZWFuRW50cnkCBQpLRVlfUEFVU0VEBQlpc1BhdXNlZF8FA25pbAELX2xvYWRQYXVzZXIABAckbWF0Y2gwCQCiCAEFCktFWV9QQVVTRVIDCQABAgUHJG1hdGNoMAIGU3RyaW5nBAFhBQckbWF0Y2gwCQERQGV4dHJOYXRpdmUoMTA2MikBBQFhCQEHQWRkcmVzcwEBAAELX3NhdmVQYXVzZXIBB3BhdXNlcl8JAMwIAgkBC1N0cmluZ0VudHJ5AgUKS0VZX1BBVVNFUgkApQgBBQdwYXVzZXJfBQNuaWwBDV9sb2FkTXVsdGlzaWcABAckbWF0Y2gwCQCiCAEFDEtFWV9NVUxUSVNJRwMJAAECBQckbWF0Y2gwAgZTdHJpbmcEAWEFByRtYXRjaDAJARFAZXh0ck5hdGl2ZSgxMDYyKQEFAWEJAQdBZGRyZXNzAQEAAQ1fc2F2ZU11bHRpc2lnAQltdWx0aXNpZ18JAMwIAgkBC1N0cmluZ0VudHJ5AgUMS0VZX01VTFRJU0lHCQClCAEFCW11bHRpc2lnXwUDbmlsARNfbG9hZENhbGxlckNvbnRyYWN0AQhjaGFpbklkXwQHJG1hdGNoMAkAoggBCQC5CQIJAMwIAgUTS0VZX0NBTExFUl9DT05UUkFDVAkAzAgCCQCkAwEFCGNoYWluSWRfBQNuaWwFCVNFUEFSQVRPUgMJAAECBQckbWF0Y2gwAgZTdHJpbmcEAWEFByRtYXRjaDAFAWECAAETX3NhdmVDYWxsZXJDb250cmFjdAIIY2hhaW5JZF8PY2FsbGVyQ29udHJhY3RfCQDMCAIJAQtTdHJpbmdFbnRyeQIJALkJAgkAzAgCBRNLRVlfQ0FMTEVSX0NPTlRSQUNUCQDMCAIJAKQDAQUIY2hhaW5JZF8FA25pbAUJU0VQQVJBVE9SBQ9jYWxsZXJDb250cmFjdF8FA25pbAENX2xvYWRFeGVjdXRvcgAEByRtYXRjaDAJAKIIAQUMS0VZX0VYRUNVVE9SAwkAAQIFByRtYXRjaDACBlN0cmluZwQBYQUHJG1hdGNoMAkBEUBleHRyTmF0aXZlKDEwNjIpAQUBYQkBB0FkZHJlc3MBAQABDV9zYXZlRXhlY3V0b3IBCWV4ZWN1dG9yXwkAzAgCCQELU3RyaW5nRW50cnkCBQxLRVlfRVhFQ1VUT1IJAKUIAQUJZXhlY3V0b3JfBQNuaWwBE19sb2FkQWNjb3VudFN0b3JhZ2UABAckbWF0Y2gwCQCiCAEFE0tFWV9BQ0NPVU5UX1NUT1JBR0UDCQABAgUHJG1hdGNoMAIGU3RyaW5nBAFhBQckbWF0Y2gwCQERQGV4dHJOYXRpdmUoMTA2MikBBQFhCQEHQWRkcmVzcwEBAAETX3NhdmVBY2NvdW50U3RvcmFnZQEPYWNjb3VudFN0b3JhZ2VfCQDMCAIJAQtTdHJpbmdFbnRyeQIFE0tFWV9BQ0NPVU5UX1NUT1JBR0UJAKUIAQUPYWNjb3VudFN0b3JhZ2VfBQNuaWwBD19sb2FkV2F2ZXNWYXVsdAAEByRtYXRjaDAJAKIIAQUPS0VZX1dBVkVTX1ZBVUxUAwkAAQIFByRtYXRjaDACBlN0cmluZwQBYQUHJG1hdGNoMAkBEUBleHRyTmF0aXZlKDEwNjIpAQUBYQkBB0FkZHJlc3MBAQABD19zYXZlV2F2ZXNWYXVsdAELd2F2ZXNWYXVsdF8JAMwIAgkBC1N0cmluZ0VudHJ5AgUPS0VZX1dBVkVTX1ZBVUxUCQClCAEFC3dhdmVzVmF1bHRfBQNuaWwBCl9sb2FkQ2hhaW4BCGNoYWluSWRfBAckbWF0Y2gwCQCiCAEJALkJAgkAzAgCBQlLRVlfQ0hBSU4JAMwIAgkApAMBBQhjaGFpbklkXwUDbmlsBQlTRVBBUkFUT1IDCQABAgUHJG1hdGNoMAIGU3RyaW5nBAFhBQckbWF0Y2gwBQFhAgABCl9zYXZlQ2hhaW4CCGNoYWluSWRfBW5hbWVfCQDMCAIJAQtTdHJpbmdFbnRyeQIJALkJAgkAzAgCBQlLRVlfQ0hBSU4JAMwIAgkApAMBBQhjaGFpbklkXwUDbmlsBQlTRVBBUkFUT1IFBW5hbWVfBQNuaWwBEl9sb2FkQXNzZXRDdXJyZW5jeQIIY2hhaW5JZF8GYXNzZXRfBAckbWF0Y2gwCQCiCAEJALkJAgkAzAgCBRJLRVlfQVNTRVRfQ1VSUkVOQ1kJAMwIAgkApAMBBQhjaGFpbklkXwkAzAgCBQZhc3NldF8FA25pbAUJU0VQQVJBVE9SAwkAAQIFByRtYXRjaDACBlN0cmluZwQBYQUHJG1hdGNoMAUBYQIAARJfc2F2ZUFzc2V0Q3VycmVuY3kDCGNoYWluSWRfBmFzc2V0XwljdXJyZW5jeV8JAMwIAgkBC1N0cmluZ0VudHJ5AgkAuQkCCQDMCAIFEktFWV9BU1NFVF9DVVJSRU5DWQkAzAgCCQCkAwEFCGNoYWluSWRfCQDMCAIFBmFzc2V0XwUDbmlsBQlTRVBBUkFUT1IFCWN1cnJlbmN5XwUDbmlsARJfbG9hZEFzc2V0UmVzZXJ2ZXMCCGNoYWluSWRfBmFzc2V0XwQHJG1hdGNoMAkAoggBCQC5CQIJAMwIAgUSS0VZX0FTU0VUX1JFU0VSVkVTCQDMCAIJAKQDAQUIY2hhaW5JZF8JAMwIAgUGYXNzZXRfBQNuaWwFCVNFUEFSQVRPUgMJAAECBQckbWF0Y2gwAgZTdHJpbmcEAWEFByRtYXRjaDAJAKcDAQUBYQULWkVST19CSUdJTlQBEl9zYXZlQXNzZXRSZXNlcnZlcwMIY2hhaW5JZF8GYXNzZXRfCXJlc2VydmVzXwkAzAgCCQELU3RyaW5nRW50cnkCCQC5CQIJAMwIAgUSS0VZX0FTU0VUX1JFU0VSVkVTCQDMCAIJAKQDAQUIY2hhaW5JZF8JAMwIAgUGYXNzZXRfBQNuaWwFCVNFUEFSQVRPUgkApgMBBQlyZXNlcnZlc18FA25pbAEYX2xvYWRBc3NldFJlc2VydmVzTG9ja2VkAghjaGFpbklkXwZhc3NldF8EByRtYXRjaDAJAKIIAQkAuQkCCQDMCAIFGUtFWV9BU1NFVF9SRVNFUlZFU19MT0NLRUQJAMwIAgkApAMBBQhjaGFpbklkXwkAzAgCBQZhc3NldF8FA25pbAUJU0VQQVJBVE9SAwkAAQIFByRtYXRjaDACBlN0cmluZwQBYQUHJG1hdGNoMAkApwMBBQFhBQtaRVJPX0JJR0lOVAEYX3NhdmVBc3NldFJlc2VydmVzTG9ja2VkAwhjaGFpbklkXwZhc3NldF8JcmVzZXJ2ZXNfCQDMCAIJAQtTdHJpbmdFbnRyeQIJALkJAgkAzAgCBRlLRVlfQVNTRVRfUkVTRVJWRVNfTE9DS0VECQDMCAIJAKQDAQUIY2hhaW5JZF8JAMwIAgUGYXNzZXRfBQNuaWwFCVNFUEFSQVRPUgkApgMBBQlyZXNlcnZlc18FA25pbAEXX2xvYWRVc2VyTG9ja2VkQ3VycmVuY3kCCWN1cnJlbmN5XwV1c2VyXwQHJG1hdGNoMAkAoggBCQC5CQIJAMwIAgUYS0VZX1VTRVJfTE9DS0VEX0NVUlJFTkNZCQDMCAIFCWN1cnJlbmN5XwkAzAgCBQV1c2VyXwUDbmlsBQlTRVBBUkFUT1IDCQABAgUHJG1hdGNoMAIGU3RyaW5nBAFhBQckbWF0Y2gwCQCnAwEFAWEFC1pFUk9fQklHSU5UARdfc2F2ZVVzZXJMb2NrZWRDdXJyZW5jeQMJY3VycmVuY3lfBXVzZXJfB2Ftb3VudF8JAMwIAgkBC1N0cmluZ0VudHJ5AgkAuQkCCQDMCAIFGEtFWV9VU0VSX0xPQ0tFRF9DVVJSRU5DWQkAzAgCBQljdXJyZW5jeV8JAMwIAgUFdXNlcl8FA25pbAUJU0VQQVJBVE9SCQCmAwEFB2Ftb3VudF8FA25pbAEVX2xvYWRDdXJyZW5jeVJlc2VydmVzAQljdXJyZW5jeV8EByRtYXRjaDAJAKIIAQkAuQkCCQDMCAIFFUtFWV9DVVJSRU5DWV9SRVNFUlZFUwkAzAgCBQljdXJyZW5jeV8FA25pbAUJU0VQQVJBVE9SAwkAAQIFByRtYXRjaDACBlN0cmluZwQBYQUHJG1hdGNoMAkApwMBBQFhBQtaRVJPX0JJR0lOVAEVX3NhdmVDdXJyZW5jeVJlc2VydmVzAgljdXJyZW5jeV8JcmVzZXJ2ZXNfCQDMCAIJAQtTdHJpbmdFbnRyeQIJALkJAgkAzAgCBRVLRVlfQ1VSUkVOQ1lfUkVTRVJWRVMJAMwIAgUJY3VycmVuY3lfBQNuaWwFCVNFUEFSQVRPUgkApgMBBQlyZXNlcnZlc18FA25pbAEaX2xvYWRSZXF1ZXN0V2l0aGRyYXdhbFNpemUABAckbWF0Y2gwCQCfCAEFG0tFWV9SRVFVRVNUX1dJVEhEUkFXQUxfU0laRQMJAAECBQckbWF0Y2gwAgNJbnQEAWEFByRtYXRjaDAFAWEAAAEaX3NhdmVSZXF1ZXN0V2l0aGRyYXdhbFNpemUBBHZhbF8JAMwIAgkBDEludGVnZXJFbnRyeQIFG0tFWV9SRVFVRVNUX1dJVEhEUkFXQUxfU0laRQUEdmFsXwUDbmlsARZfbG9hZFJlcXVlc3RXaXRoZHJhd2FsAQZpbmRleF8EByRtYXRjaDAJAKIIAQkAuQkCCQDMCAIFFktFWV9SRVFVRVNUX1dJVEhEUkFXQUwJAMwIAgkApAMBBQZpbmRleF8FA25pbAUJU0VQQVJBVE9SAwkAAQIFByRtYXRjaDACBlN0cmluZwQBYQUHJG1hdGNoMAQGc3RydWN0CQC1CQIFAWEFCVNFUEFSQVRPUgkAmgoICQCRAwIFBnN0cnVjdAAACQCRAwIFBnN0cnVjdAABCQENcGFyc2VJbnRWYWx1ZQEJAJEDAgUGc3RydWN0AAIJAJEDAgUGc3RydWN0AAMJAKcDAQkAkQMCBQZzdHJ1Y3QABAkBDXBhcnNlSW50VmFsdWUBCQCRAwIFBnN0cnVjdAAFCQCRAwIFBnN0cnVjdAAGCQENcGFyc2VJbnRWYWx1ZQEJAJEDAgUGc3RydWN0AAcJAJoKCAIAAgAAAAIABQtaRVJPX0JJR0lOVAAAAgAFFlJFUVVFU1RfU1RBVFVTX0NSRUFURUQBFl9zYXZlUmVxdWVzdFdpdGhkcmF3YWwCBmluZGV4XwhyZXF1ZXN0XwkAzAgCCQELU3RyaW5nRW50cnkCCQC5CQIJAMwIAgUWS0VZX1JFUVVFU1RfV0lUSERSQVdBTAkAzAgCCQCkAwEFBmluZGV4XwUDbmlsBQlTRVBBUkFUT1IJALkJAgkAzAgCCAUIcmVxdWVzdF8CXzEJAMwIAggFCHJlcXVlc3RfAl8yCQDMCAIJAKQDAQgFCHJlcXVlc3RfAl8zCQDMCAIIBQhyZXF1ZXN0XwJfNAkAzAgCCQCmAwEIBQhyZXF1ZXN0XwJfNQkAzAgCCQCkAwEIBQhyZXF1ZXN0XwJfNgkAzAgCCAUIcmVxdWVzdF8CXzcJAMwIAgkApAMBCAUIcmVxdWVzdF8CXzgFA25pbAUJU0VQQVJBVE9SBQNuaWwBIF9sb2FkUmVxdWVzdFdpdGhkcmF3YWxCbG9ja0RlbGF5AAQHJG1hdGNoMAkAnwgBBSJLRVlfUkVRVUVTVF9XSVRIRFJBV0FMX0JMT0NLX0RFTEFZAwkAAQIFByRtYXRjaDACA0ludAQBYQUHJG1hdGNoMAUBYQAAASBfc2F2ZVJlcXVlc3RXaXRoZHJhd2FsQmxvY2tEZWxheQEGZGVsYXlfCQDMCAIJAQxJbnRlZ2VyRW50cnkCBSJLRVlfUkVRVUVTVF9XSVRIRFJBV0FMX0JMT0NLX0RFTEFZBQZkZWxheV8FA25pbAEOX2xvYWRTZXF1ZW5jZXIABAckbWF0Y2gwCQCiCAEFDUtFWV9TRVFVRU5DRVIDCQABAgUHJG1hdGNoMAIGU3RyaW5nBAFhBQckbWF0Y2gwCQERQGV4dHJOYXRpdmUoMTA2MikBBQFhCQEHQWRkcmVzcwEBAAEOX3NhdmVTZXF1ZW5jZXIBCnNlcXVlbmNlcl8JAMwIAgkBC1N0cmluZ0VudHJ5AgUNS0VZX1NFUVVFTkNFUgkApQgBBQpzZXF1ZW5jZXJfBQNuaWwBE19sb2FkV2l0aGRyYXdhbEhhc2gBD3dpdGhkcmF3YWxIYXNoXwQHJG1hdGNoMAkAoggBCQC5CQIJAMwIAgUTS0VZX1dJVEhEUkFXQUxfSEFTSAkAzAgCCQDYBAEFD3dpdGhkcmF3YWxIYXNoXwUDbmlsBQlTRVBBUkFUT1IDCQABAgUHJG1hdGNoMAIGU3RyaW5nBAFhBQckbWF0Y2gwBQFhAgABE19zYXZlV2l0aGRyYXdhbEhhc2gCD3dpdGhkcmF3YWxIYXNoXwV0eElkXwkAzAgCCQELU3RyaW5nRW50cnkCCQC5CQIJAMwIAgUTS0VZX1dJVEhEUkFXQUxfSEFTSAkAzAgCCQDYBAEFD3dpdGhkcmF3YWxIYXNoXwUDbmlsBQlTRVBBUkFUT1IFBXR4SWRfBQNuaWwBEV9sb2FkVmF1bHRBZGFwdGVyAAQHJG1hdGNoMAkAoggBBRFLRVlfVkFVTFRfQURBUFRFUgMJAAECBQckbWF0Y2gwAgZTdHJpbmcEAWEFByRtYXRjaDAJARFAZXh0ck5hdGl2ZSgxMDYyKQEFAWEJAQdBZGRyZXNzAQEAARFfc2F2ZVZhdWx0QWRhcHRlcgENdmF1bHRBZGFwdGVyXwkAzAgCCQELU3RyaW5nRW50cnkCBRFLRVlfVkFVTFRfQURBUFRFUgkApQgBBQ12YXVsdEFkYXB0ZXJfBQNuaWwBFl9sb2FkUmV3YXJkRGlzdHJpYnV0b3IABAckbWF0Y2gwCQCiCAEFFktFWV9SRVdBUkRfRElTVFJJQlVUT1IDCQABAgUHJG1hdGNoMAIGU3RyaW5nBAFhBQckbWF0Y2gwBQFhAgABFl9zYXZlUmV3YXJkRGlzdHJpYnV0b3IBDGRpc3RyaWJ1dG9yXwkAzAgCCQELU3RyaW5nRW50cnkCBRZLRVlfUkVXQVJEX0RJU1RSSUJVVE9SBQxkaXN0cmlidXRvcl8FA25pbAEYX2xvYWRSZWxheWVyRmVlUmVjaXBpZW50AAQHJG1hdGNoMAkAoggBBRlLRVlfUkVMQVlFUl9GRUVfUkVDSVBJRU5UAwkAAQIFByRtYXRjaDACBlN0cmluZwQBYQUHJG1hdGNoMAUBYQIAARhfc2F2ZVJlbGF5ZXJGZWVSZWNpcGllbnQBFHJlbGF5ZXJGZWVSZWNpcGllbnRfCQDMCAIJAQtTdHJpbmdFbnRyeQIFGUtFWV9SRUxBWUVSX0ZFRV9SRUNJUElFTlQFFHJlbGF5ZXJGZWVSZWNpcGllbnRfBQNuaWwBEV9vbmx5VGhpc0NvbnRyYWN0AQdjYWxsZXJfAwkBAiE9AgUHY2FsbGVyXwUEdGhpcwkAAgECGV9vbmx5VGhpc0NvbnRyYWN0OiByZXZlcnQGARBfd2hlbk11bHRpc2lnU2V0AAMJAAACCQENX2xvYWRNdWx0aXNpZwAJAQdBZGRyZXNzAQEACQACAQIYX3doZW5NdWx0aXNpZ1NldDogcmV2ZXJ0BgETX3doZW5Ob3RJbml0aWFsaXplZAADCQEJX2xvYWRJbml0AAkAAgECG193aGVuTm90SW5pdGlhbGl6ZWQ6IHJldmVydAYBEF93aGVuSW5pdGlhbGl6ZWQAAwkBASEBCQEJX2xvYWRJbml0AAkAAgECGF93aGVuSW5pdGlhbGl6ZWQ6IHJldmVydAYBDl93aGVuTm90UGF1c2VkAAMJAQpfbG9hZFBhdXNlAAkAAgECFl93aGVuTm90UGF1c2VkOiByZXZlcnQGAQtfd2hlblBhdXNlZAADCQEBIQEJAQpfbG9hZFBhdXNlAAkAAgECE193aGVuUGF1c2VkOiByZXZlcnQGAQtfb25seVBhdXNlcgEHY2FsbGVyXwMJAQIhPQIFB2NhbGxlcl8JAQtfbG9hZFBhdXNlcgAJAAIBAhNfb25seVBhdXNlcjogcmV2ZXJ0BgERX3ZhbGlkYXRlRXhlY3V0b3ICBHZhbF8EZXJyXwMJAQIhPQIFBHZhbF8JAQ1fbG9hZEV4ZWN1dG9yAAkAAgEFBGVycl8GARdfdmFsaWRhdGVDYWxsZXJDb250cmFjdAMIY2hhaW5JZF8PY2FsbGVyQ29udHJhY3RfBGVycl8DCQECIT0CCQETX2xvYWRDYWxsZXJDb250cmFjdAEFCGNoYWluSWRfBQ9jYWxsZXJDb250cmFjdF8JAAIBBQRlcnJfBgEMX2NoYWluRXhpc3RzAghjaGFpbklkXwRlcnJfAwkAZwIAAAkAsQIBCQEKX2xvYWRDaGFpbgEFCGNoYWluSWRfCQACAQUEZXJyXwYBDl9jaGFpbk5vdEV4aXN0AghjaGFpbklkXwRlcnJfAwkAZgIJALECAQkBCl9sb2FkQ2hhaW4BBQhjaGFpbklkXwAACQACAQUEZXJyXwYBFF9hc3NldEN1cnJlbmN5RXhpc3RzAwhjaGFpbklkXwZhc3NldF8EZXJyXwMJAGcCAAAJALECAQkBEl9sb2FkQXNzZXRDdXJyZW5jeQIFCGNoYWluSWRfBQZhc3NldF8JAAIBBQRlcnJfBgEWX2Fzc2V0Q3VycmVuY3lOb3RFeGlzdAMIY2hhaW5JZF8GYXNzZXRfBGVycl8DCQBmAgkAsQIBCQESX2xvYWRBc3NldEN1cnJlbmN5AgUIY2hhaW5JZF8FBmFzc2V0XwAACQACAQUEZXJyXwYBE192YWxpZGF0ZVdhdmVzVmF1bHQCBmNhbGxlcgRlcnJfAwkBAiE9AgkBD19sb2FkV2F2ZXNWYXVsdAAFBmNhbGxlcgkAAgEFBGVycl8GARFfcmVxdWVzdElzQ3JlYXRlZAIHc3RhdHVzXwRlcnJfAwkBAiE9AgUHc3RhdHVzXwUWUkVRVUVTVF9TVEFUVVNfQ1JFQVRFRAkAAgEFBGVycl8GARJfdmFsaWRhdGVTZXF1ZW5jZXICBmNhbGxlcgRlcnJfAwkBAiE9AgkBDl9sb2FkU2VxdWVuY2VyAAUGY2FsbGVyCQACAQUEZXJyXwYBHF9jaGVja1dpdGhkcmF3YWxIYXNoTm90RXhpc3QCD3dpdGhkcmF3YWxIYXNoXwRlcnJfAwkAZgIJALECAQkBE19sb2FkV2l0aGRyYXdhbEhhc2gBBQ93aXRoZHJhd2FsSGFzaF8AAAkAAgEFBGVycl8GARhfdmFsaWRhdGVTaWduYXR1cmVGb3JtYXQDCnNpZ25hdHVyZV8EYWxnXwRlcnJfAwkAAAIFBGFsZ18FDkFMR19UWVBFX1dBVkVTAwkBAiE9AgkAyAEBBQpzaWduYXR1cmVfAEAJAAIBBQRlcnJfBgMJAAACBQRhbGdfBQxBTEdfVFlQRV9FVk0DCQECIT0CCQDIAQEFCnNpZ25hdHVyZV8AQQkAAgEFBGVycl8GCQACAQkArAICBQRlcnJfAgk6IGludiBhbGcBEl92YWxpZGF0ZVB1YmxpY0tleQMKcHVibGljS2V5XwRhbGdfBGVycl8DCQAAAgUEYWxnXwUOQUxHX1RZUEVfV0FWRVMDCQECIT0CCQDIAQEFCnB1YmxpY0tleV8AIAkAAgEFBGVycl8GAwkAAAIFBGFsZ18FDEFMR19UWVBFX0VWTQMJAQIhPQIJAMgBAQUKcHVibGljS2V5XwAUCQACAQUEZXJyXwYJAAIBCQCsAgIFBGVycl8CCTogaW52IGFsZwEcX3ZhbGlkYXRlV2l0aGRyYXdhbFNpZ25hdHVyZQUPd2l0aGRyYXdhbEhhc2hfCnNpZ25hdHVyZV8KcHVibGljS2V5XwRhbGdfBGVycl8EBnJlc3VsdAMJAAACBQRhbGdfBQ5BTEdfVFlQRV9XQVZFUwkA9AMDBQ93aXRoZHJhd2FsSGFzaF8FCnNpZ25hdHVyZV8FCnB1YmxpY0tleV8DCQAAAgUEYWxnXwUMQUxHX1RZUEVfRVZNBA5oYXNoV2l0aFByZWZpeAkAjBUBCQDLAQIFFEVWTV9TSUdOQVRVUkVfUFJFRklYBQ93aXRoZHJhd2FsSGFzaF8JAAACCQDMAQIJAIwVAQkAhAcCBQ5oYXNoV2l0aFByZWZpeAUKc2lnbmF0dXJlXwAUBQpwdWJsaWNLZXlfCQACAQkArAICBQRlcnJfAgk6IGludiBhbGcDCQEBIQEFBnJlc3VsdAkAAgEFBGVycl8GASBfdmFsaWRhdGVQdWJsaWNLZXlNYXRjaGVzQWRkcmVzcwQKcHVibGljS2V5XwVmcm9tXwRhbGdfBGVycl8EB2FkZHJlc3MDCQAAAgUEYWxnXwUOQUxHX1RZUEVfV0FWRVMJAKUIAQkApwgBBQpwdWJsaWNLZXlfAwkAAAIFBGFsZ18FDEFMR19UWVBFX0VWTQkArAICAgIweAkA3AQBBQpwdWJsaWNLZXlfCQACAQkArAICBQRlcnJfAgk6IGludiBhbGcDCQECIT0CBQdhZGRyZXNzBQVmcm9tXwkAAgEFBGVycl8GEAFpAQRpbml0BglleGVjdXRvcl8HcGF1c2VyXw9hY2NvdW50U3RvcmFnZV8Ld2F2ZXNWYXVsdF8Kc2VxdWVuY2VyXw12YXVsdEFkYXB0ZXJfBANlcnIDAwMDAwMDAwkBEV9vbmx5VGhpc0NvbnRyYWN0AQgFAWkGY2FsbGVyCQETX3doZW5Ob3RJbml0aWFsaXplZAAHCQEQX3doZW5NdWx0aXNpZ1NldAAHCQEQX3ZhbGlkYXRlQWRkcmVzcwIFCWV4ZWN1dG9yXwIWaW5pdDogaW52YWxpZCBleGVjdXRvcgcJARBfdmFsaWRhdGVBZGRyZXNzAgUHcGF1c2VyXwIUaW5pdDogaW52YWxpZCBwYXVzZXIHCQEQX3ZhbGlkYXRlQWRkcmVzcwIFD2FjY291bnRTdG9yYWdlXwIcaW5pdDogaW52YWxpZCBhY2NvdW50U3RvcmFnZQcJARBfdmFsaWRhdGVBZGRyZXNzAgULd2F2ZXNWYXVsdF8CGGluaXQ6IGludmFsaWQgd2F2ZXNWYXVsdAcJARBfdmFsaWRhdGVBZGRyZXNzAgUKc2VxdWVuY2VyXwIXaW5pdDogaW52YWxpZCBzZXF1ZW5jZXIHCQEQX3ZhbGlkYXRlQWRkcmVzcwIFDXZhdWx0QWRhcHRlcl8CGmluaXQ6IGludmFsaWQgdmF1bHRBZGFwdGVyBwMJAAACBQNlcnIFA2VycgkAlAoCCQDOCAIJAM4IAgkAzggCCQDOCAIJAM4IAgkAzggCCQEJX3NhdmVJbml0AQYJAQ1fc2F2ZUV4ZWN1dG9yAQkBEUBleHRyTmF0aXZlKDEwNjIpAQUJZXhlY3V0b3JfCQELX3NhdmVQYXVzZXIBCQERQGV4dHJOYXRpdmUoMTA2MikBBQdwYXVzZXJfCQETX3NhdmVBY2NvdW50U3RvcmFnZQEJARFAZXh0ck5hdGl2ZSgxMDYyKQEFD2FjY291bnRTdG9yYWdlXwkBD19zYXZlV2F2ZXNWYXVsdAEJARFAZXh0ck5hdGl2ZSgxMDYyKQEFC3dhdmVzVmF1bHRfCQEOX3NhdmVTZXF1ZW5jZXIBCQERQGV4dHJOYXRpdmUoMTA2MikBBQpzZXF1ZW5jZXJfCQERX3NhdmVWYXVsdEFkYXB0ZXIBCQERQGV4dHJOYXRpdmUoMTA2MikBBQ12YXVsdEFkYXB0ZXJfBQR1bml0CQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuAWkBB2RlcG9zaXQGD2NhbGxlckNvbnRyYWN0XwVmcm9tXwN0b18IY2hhaW5JZF8GYXNzZXRfB2Ftb3VudF8EB2NoYWluSWQJARN2YWx1ZU9yRXJyb3JNZXNzYWdlAgkAtgkBBQhjaGFpbklkXwIYZGVwb3NpdDogY2hhaW5JZCBub3QgaW50BAZhbW91bnQJARN2YWx1ZU9yRXJyb3JNZXNzYWdlAgkAqAMBBQdhbW91bnRfAhdkZXBvc2l0OiBhbW91bnQgbm90IGludAQDZXJyAwMDAwMDCQEQX3doZW5Jbml0aWFsaXplZAAJAQ5fd2hlbk5vdFBhdXNlZAAHCQEMX2NoYWluRXhpc3RzAgUHY2hhaW5JZAIYZGVwb3NpdDogaW52YWxpZCBjaGFpbklkBwkBD192YWxpZGF0ZVN0cmluZwIFBWZyb21fAhVkZXBvc2l0OiBpbnZhbGlkIGZyb20HCQEPX3ZhbGlkYXRlU3RyaW5nAgUDdG9fAhNkZXBvc2l0OiBpbnZhbGlkIHRvBwkBFF9hc3NldEN1cnJlbmN5RXhpc3RzAwUHY2hhaW5JZAUGYXNzZXRfAhZkZXBvc2l0OiBpbnZhbGlkIGFzc2V0BwkBD192YWxpZGF0ZUJpZ0ludAMFBmFtb3VudAULWkVST19CSUdJTlQCF2RlcG9zaXQ6IGludmFsaWQgYW1vdW50BwMJAAACBQNlcnIFA2VycgQEZXJyMQMJAAACCQEKX2xvYWRDaGFpbgEFB2NoYWluSWQFBVdBVkVTCQETX3ZhbGlkYXRlV2F2ZXNWYXVsdAIIBQFpBmNhbGxlcgIcZGVwb3NpdDogaW52YWxpZCB3YXZlcyB2YXVsdAMJARFfdmFsaWRhdGVFeGVjdXRvcgIIBQFpBmNhbGxlcgIZZGVwb3NpdDogaW52YWxpZCBleGVjdXRvcgkBF192YWxpZGF0ZUNhbGxlckNvbnRyYWN0AwUHY2hhaW5JZAUPY2FsbGVyQ29udHJhY3RfAiBkZXBvc2l0OiBpbnZhbGlkIGNhbGxlciBjb250cmFjdAcDCQAAAgUEZXJyMQUEZXJyMQQQbmV3QXNzZXRSZXNlcnZlcwkAtwICCQESX2xvYWRBc3NldFJlc2VydmVzAgUHY2hhaW5JZAUGYXNzZXRfBQZhbW91bnQECGN1cnJlbmN5CQESX2xvYWRBc3NldEN1cnJlbmN5AgUHY2hhaW5JZAUGYXNzZXRfBBNuZXdDdXJyZW5jeVJlc2VydmVzCQC3AgIJARVfbG9hZEN1cnJlbmN5UmVzZXJ2ZXMBBQhjdXJyZW5jeQUGYW1vdW50BAppbnZvY2F0aW9uCQD8BwQJARNfbG9hZEFjY291bnRTdG9yYWdlAAUMRlVOQ19ERVBPU0lUCQDMCAIFA3RvXwkAzAgCBQhjdXJyZW5jeQkAzAgCBQdhbW91bnRfBQNuaWwFA25pbAMJAAACBQppbnZvY2F0aW9uBQppbnZvY2F0aW9uCQCUCgIJAM4IAgkBEl9zYXZlQXNzZXRSZXNlcnZlcwMFB2NoYWluSWQFBmFzc2V0XwUQbmV3QXNzZXRSZXNlcnZlcwkBFV9zYXZlQ3VycmVuY3lSZXNlcnZlcwIFCGN1cnJlbmN5BRNuZXdDdXJyZW5jeVJlc2VydmVzBQR1bml0CQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuAWkBEXJlcXVlc3RXaXRoZHJhd2FsBw9jYWxsZXJDb250cmFjdF8FZnJvbV8DdG9fDGZyb21DaGFpbklkXwp0b0NoYWluSWRfBmFzc2V0XwdhbW91bnRfBAtmcm9tQ2hhaW5JZAkBE3ZhbHVlT3JFcnJvck1lc3NhZ2UCCQC2CQEFDGZyb21DaGFpbklkXwImcmVxdWVzdFdpdGhkcmF3YWw6IGZyb21DaGFpbklkIG5vdCBpbnQECXRvQ2hhaW5JZAkBE3ZhbHVlT3JFcnJvck1lc3NhZ2UCCQC2CQEFCnRvQ2hhaW5JZF8CJHJlcXVlc3RXaXRoZHJhd2FsOiB0b0NoYWluSWQgbm90IGludAQGYW1vdW50CQETdmFsdWVPckVycm9yTWVzc2FnZQIJAKgDAQUHYW1vdW50XwIhcmVxdWVzdFdpdGhkcmF3YWw6IGFtb3VudCBub3QgaW50BANlcnIDAwMDAwMJARBfd2hlbkluaXRpYWxpemVkAAkBDF9jaGFpbkV4aXN0cwIFC2Zyb21DaGFpbklkAiZyZXF1ZXN0V2l0aGRyYXdhbDogaW52YWxpZCBmcm9tQ2hhaW5JZAcJAQxfY2hhaW5FeGlzdHMCBQl0b0NoYWluSWQCJHJlcXVlc3RXaXRoZHJhd2FsOiBpbnZhbGlkIHRvQ2hhaW5JZAcJAQ9fdmFsaWRhdGVTdHJpbmcCBQVmcm9tXwIfcmVxdWVzdFdpdGhkcmF3YWw6IGludmFsaWQgZnJvbQcJAQ9fdmFsaWRhdGVTdHJpbmcCBQN0b18CHXJlcXVlc3RXaXRoZHJhd2FsOiBpbnZhbGlkIHRvBwkBFF9hc3NldEN1cnJlbmN5RXhpc3RzAwUJdG9DaGFpbklkBQZhc3NldF8CIHJlcXVlc3RXaXRoZHJhd2FsOiBpbnZhbGlkIGFzc2V0BwkBD192YWxpZGF0ZUJpZ0ludAMFBmFtb3VudAULWkVST19CSUdJTlQCIXJlcXVlc3RXaXRoZHJhd2FsOiBpbnZhbGlkIGFtb3VudAcDCQAAAgUDZXJyBQNlcnIEBGVycjEDCQAAAgkBCl9sb2FkQ2hhaW4BBQtmcm9tQ2hhaW5JZAUFV0FWRVMJARNfdmFsaWRhdGVXYXZlc1ZhdWx0AggFAWkGY2FsbGVyAiZyZXF1ZXN0V2l0aGRyYXdhbDogaW52YWxpZCB3YXZlcyB2YXVsdAMJARFfdmFsaWRhdGVFeGVjdXRvcgIIBQFpBmNhbGxlcgIjcmVxdWVzdFdpdGhkcmF3YWw6IGludmFsaWQgZXhlY3V0b3IJARdfdmFsaWRhdGVDYWxsZXJDb250cmFjdAMFC2Zyb21DaGFpbklkBQ9jYWxsZXJDb250cmFjdF8CKnJlcXVlc3RXaXRoZHJhd2FsOiBpbnZhbGlkIGNhbGxlciBjb250cmFjdAcDCQAAAgUEZXJyMQUEZXJyMQQIY3VycmVuY3kJARJfbG9hZEFzc2V0Q3VycmVuY3kCBQl0b0NoYWluSWQFBmFzc2V0XwQQYXZhaWxhYmxlQmFsYW5jZQQHJG1hdGNoMAkA/AcECQETX2xvYWRBY2NvdW50U3RvcmFnZQAFFUZVTkNfR0VUX1VTRVJfQkFMQU5DRQkAzAgCBQVmcm9tXwkAzAgCBQtTUE9UX1dBTExFVAkAzAgCBQhjdXJyZW5jeQUDbmlsBQNuaWwDCQABAgUHJG1hdGNoMAIGU3RyaW5nBAFhBQckbWF0Y2gwCQCnAwEFAWEJAAIBAjxyZXF1ZXN0V2l0aGRyYXdhbDogY2FuJ3QgdGFrZSBhdmFpbGFibGUgYmFsYW5jZSBmcm9tIHN0b3JhZ2UDCQAAAgUQYXZhaWxhYmxlQmFsYW5jZQUQYXZhaWxhYmxlQmFsYW5jZQQObG9ja2VkUmVzZXJ2ZXMJARhfbG9hZEFzc2V0UmVzZXJ2ZXNMb2NrZWQCBQl0b0NoYWluSWQFBmFzc2V0XwQSdXNlckxvY2tlZEN1cnJlbmN5CQEXX2xvYWRVc2VyTG9ja2VkQ3VycmVuY3kCBQhjdXJyZW5jeQUFZnJvbV8EDSR0MDE5Mjg4MTk3NDMDAwkAwAICCQC4AgIFEGF2YWlsYWJsZUJhbGFuY2UFEnVzZXJMb2NrZWRDdXJyZW5jeQUGYW1vdW50CQDAAgIJALgCAgkBEl9sb2FkQXNzZXRSZXNlcnZlcwIFCXRvQ2hhaW5JZAUGYXNzZXRfBQ5sb2NrZWRSZXNlcnZlcwUGYW1vdW50BwkAlAoCBRZSRVFVRVNUX1NUQVRVU19DUkVBVEVECQDOCAIJARhfc2F2ZUFzc2V0UmVzZXJ2ZXNMb2NrZWQDBQl0b0NoYWluSWQFBmFzc2V0XwkAtwICBQ5sb2NrZWRSZXNlcnZlcwUGYW1vdW50CQEXX3NhdmVVc2VyTG9ja2VkQ3VycmVuY3kDBQhjdXJyZW5jeQUFZnJvbV8JALcCAgUGYW1vdW50BRJ1c2VyTG9ja2VkQ3VycmVuY3kJAJQKAgUXUkVRVUVTVF9TVEFUVVNfUkVKRUNURUQFA25pbAQNcmVxdWVzdFN0YXR1cwgFDSR0MDE5Mjg4MTk3NDMCXzEED3Jlc2VydmVzQWN0aW9ucwgFDSR0MDE5Mjg4MTk3NDMCXzIEFXJlcXVlc3RXaXRoZHJhd2FsU2l6ZQkBGl9sb2FkUmVxdWVzdFdpdGhkcmF3YWxTaXplAAQRcmVxdWVzdFdpdGhkcmF3YWwJAJoKCAUFZnJvbV8FA3RvXwUJdG9DaGFpbklkBQZhc3NldF8FBmFtb3VudAUGaGVpZ2h0CQDYBAEIBQFpDXRyYW5zYWN0aW9uSWQFDXJlcXVlc3RTdGF0dXMJAJQKAgkAzggCCQDOCAIJARZfc2F2ZVJlcXVlc3RXaXRoZHJhd2FsAgUVcmVxdWVzdFdpdGhkcmF3YWxTaXplBRFyZXF1ZXN0V2l0aGRyYXdhbAkBGl9zYXZlUmVxdWVzdFdpdGhkcmF3YWxTaXplAQkAZAIFFXJlcXVlc3RXaXRoZHJhd2FsU2l6ZQABBQ9yZXNlcnZlc0FjdGlvbnMFFXJlcXVlc3RXaXRoZHJhd2FsU2l6ZQkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgFpARFleGVjdXRlV2l0aGRyYXdhbAMPY2FsbGVyQ29udHJhY3RfCGNoYWluSWRfFHJlcXVlc3RXaXRoZHJhd2FsSWRfBAdjaGFpbklkCQETdmFsdWVPckVycm9yTWVzc2FnZQIJALYJAQUIY2hhaW5JZF8CImV4ZWN1dGVXaXRoZHJhd2FsOiBjaGFpbklkIG5vdCBpbnQEE3JlcXVlc3RXaXRoZHJhd2FsSWQJARN2YWx1ZU9yRXJyb3JNZXNzYWdlAgkAtgkBBRRyZXF1ZXN0V2l0aGRyYXdhbElkXwIuZXhlY3V0ZVdpdGhkcmF3YWw6IHJlcXVlc3RXaXRoZHJhd2FsSWQgbm90IGludAQVcmVxdWVzdFdpdGhkcmF3YWxTaXplCQEaX2xvYWRSZXF1ZXN0V2l0aGRyYXdhbFNpemUABANlcnIDAwkBEF93aGVuSW5pdGlhbGl6ZWQACQEMX2NoYWluRXhpc3RzAgUHY2hhaW5JZAIiZXhlY3V0ZVdpdGhkcmF3YWw6IGludmFsaWQgY2hhaW5JZAcJAQxfdmFsaWRhdGVJbnQEBRNyZXF1ZXN0V2l0aGRyYXdhbElkAAAJAGUCBRVyZXF1ZXN0V2l0aGRyYXdhbFNpemUAAQIuZXhlY3V0ZVdpdGhkcmF3YWw6IGludmFsaWQgcmVxdWVzdFdpdGhkcmF3YWxJZAcDCQAAAgUDZXJyBQNlcnIEBGVycjEDCQAAAgkBCl9sb2FkQ2hhaW4BBQdjaGFpbklkBQVXQVZFUwkBE192YWxpZGF0ZVdhdmVzVmF1bHQCCAUBaQZjYWxsZXICJmV4ZWN1dGVXaXRoZHJhd2FsOiBpbnZhbGlkIHdhdmVzIHZhdWx0AwkBEV92YWxpZGF0ZUV4ZWN1dG9yAggFAWkGY2FsbGVyAiNleGVjdXRlV2l0aGRyYXdhbDogaW52YWxpZCBleGVjdXRvcgkBF192YWxpZGF0ZUNhbGxlckNvbnRyYWN0AwUHY2hhaW5JZAUPY2FsbGVyQ29udHJhY3RfAipleGVjdXRlV2l0aGRyYXdhbDogaW52YWxpZCBjYWxsZXIgY29udHJhY3QHAwkAAAIFBGVycjEFBGVycjEEB3JlcXVlc3QJARZfbG9hZFJlcXVlc3RXaXRoZHJhd2FsAQUTcmVxdWVzdFdpdGhkcmF3YWxJZAQLcmVxdWVzdEZyb20IBQdyZXF1ZXN0Al8xBAlyZXF1ZXN0VG8IBQdyZXF1ZXN0Al8yBBByZXF1ZXN0VG9DaGFpbklkCAUHcmVxdWVzdAJfMwQMcmVxdWVzdEFzc2V0CAUHcmVxdWVzdAJfNAQNcmVxdWVzdEFtb3VudAgFB3JlcXVlc3QCXzUEDXJlcXVlc3RIZWlnaHQIBQdyZXF1ZXN0Al82BA1yZXF1ZXN0U3RhdHVzCAUHcmVxdWVzdAJfOAQQbmV3QXNzZXRSZXNlcnZlcwkAuAICCQESX2xvYWRBc3NldFJlc2VydmVzAgUQcmVxdWVzdFRvQ2hhaW5JZAUMcmVxdWVzdEFzc2V0BQ1yZXF1ZXN0QW1vdW50BBZuZXdBc3NldFJlc2VydmVzTG9ja2VkCQC4AgIJARhfbG9hZEFzc2V0UmVzZXJ2ZXNMb2NrZWQCBRByZXF1ZXN0VG9DaGFpbklkBQxyZXF1ZXN0QXNzZXQFDXJlcXVlc3RBbW91bnQECGN1cnJlbmN5CQESX2xvYWRBc3NldEN1cnJlbmN5AgUQcmVxdWVzdFRvQ2hhaW5JZAUMcmVxdWVzdEFzc2V0BBNuZXdDdXJyZW5jeVJlc2VydmVzCQC4AgIJARVfbG9hZEN1cnJlbmN5UmVzZXJ2ZXMBBQhjdXJyZW5jeQUNcmVxdWVzdEFtb3VudAQVbmV3VXNlckxvY2tlZEN1cnJlbmN5CQC4AgIJARdfbG9hZFVzZXJMb2NrZWRDdXJyZW5jeQIFCGN1cnJlbmN5BQtyZXF1ZXN0RnJvbQUNcmVxdWVzdEFtb3VudAQEZXJyMgMDAwMDCQEPX3ZhbGlkYXRlQmlnSW50AwUQbmV3QXNzZXRSZXNlcnZlcwULWkVST19CSUdJTlQCLGV4ZWN1dGVXaXRoZHJhd2FsOiBuZWdhdGl2ZSBuZXdBc3NldFJlc2VydmVzCQEPX3ZhbGlkYXRlQmlnSW50AwUWbmV3QXNzZXRSZXNlcnZlc0xvY2tlZAULWkVST19CSUdJTlQCMmV4ZWN1dGVXaXRoZHJhd2FsOiBuZWdhdGl2ZSBuZXdBc3NldFJlc2VydmVzTG9ja2VkBwkBD192YWxpZGF0ZUJpZ0ludAMFE25ld0N1cnJlbmN5UmVzZXJ2ZXMFC1pFUk9fQklHSU5UAi9leGVjdXRlV2l0aGRyYXdhbDogbmVnYXRpdmUgbmV3Q3VycmVuY3lSZXNlcnZlcwcJAQ9fdmFsaWRhdGVCaWdJbnQDBRVuZXdVc2VyTG9ja2VkQ3VycmVuY3kFC1pFUk9fQklHSU5UAjFleGVjdXRlV2l0aGRyYXdhbDogbmVnYXRpdmUgbmV3VXNlckxvY2tlZEN1cnJlbmN5BwkBDF92YWxpZGF0ZUludAQJAGUCBQZoZWlnaHQFDXJlcXVlc3RIZWlnaHQJASBfbG9hZFJlcXVlc3RXaXRoZHJhd2FsQmxvY2tEZWxheQAFB01BWF9JTlQCJ2V4ZWN1dGVXaXRoZHJhd2FsOiB0b28gZWFybHkgdG8gZXhlY3V0ZQcJARFfcmVxdWVzdElzQ3JlYXRlZAIFDXJlcXVlc3RTdGF0dXMCJmV4ZWN1dGVXaXRoZHJhd2FsOiByZXF1ZXN0IGlzIHJlc29sdmVkBwMJAAACBQRlcnIyBQRlcnIyBBFzdG9yYWdlSW52b2NhdGlvbgkA/AcECQETX2xvYWRBY2NvdW50U3RvcmFnZQAFDUZVTkNfV0lUSERSQVcJAMwIAgULcmVxdWVzdEZyb20JAMwIAgUIY3VycmVuY3kJAMwIAgkApgMBBQ1yZXF1ZXN0QW1vdW50BQNuaWwFA25pbAMJAAACBRFzdG9yYWdlSW52b2NhdGlvbgURc3RvcmFnZUludm9jYXRpb24EEndpdGhkcmF3SW52b2NhdGlvbgMJAAACCQEKX2xvYWRDaGFpbgEFEHJlcXVlc3RUb0NoYWluSWQFBVdBVkVTCQD8BwQJAQ9fbG9hZFdhdmVzVmF1bHQABQ1GVU5DX1dJVEhEUkFXCQDMCAIFCXJlcXVlc3RUbwkAzAgCBQxyZXF1ZXN0QXNzZXQJAMwIAgkApgMBBQ1yZXF1ZXN0QW1vdW50BQNuaWwFA25pbAkA/AcECQERX2xvYWRWYXVsdEFkYXB0ZXIABQ1GVU5DX1dJVEhEUkFXCQDMCAIFEHJlcXVlc3RUb0NoYWluSWQJAMwIAgUMcmVxdWVzdEFzc2V0CQDMCAIJAKYDAQUNcmVxdWVzdEFtb3VudAkAzAgCBQlyZXF1ZXN0VG8FA25pbAUDbmlsAwkAAAIFEndpdGhkcmF3SW52b2NhdGlvbgUSd2l0aGRyYXdJbnZvY2F0aW9uBA5yZXF1ZXN0VXBkYXRlZAkAmgoICAUHcmVxdWVzdAJfMQgFB3JlcXVlc3QCXzIIBQdyZXF1ZXN0Al8zCAUHcmVxdWVzdAJfNAgFB3JlcXVlc3QCXzUIBQdyZXF1ZXN0Al82CAUHcmVxdWVzdAJfNwUTUkVRVUVTVF9TVEFUVVNfRE9ORQkAlAoCCQDOCAIJAM4IAgkAzggCCQDOCAIJARJfc2F2ZUFzc2V0UmVzZXJ2ZXMDBRByZXF1ZXN0VG9DaGFpbklkBQxyZXF1ZXN0QXNzZXQFEG5ld0Fzc2V0UmVzZXJ2ZXMJARhfc2F2ZUFzc2V0UmVzZXJ2ZXNMb2NrZWQDBRByZXF1ZXN0VG9DaGFpbklkBQxyZXF1ZXN0QXNzZXQFFm5ld0Fzc2V0UmVzZXJ2ZXNMb2NrZWQJARVfc2F2ZUN1cnJlbmN5UmVzZXJ2ZXMCBQhjdXJyZW5jeQUTbmV3Q3VycmVuY3lSZXNlcnZlcwkBF19zYXZlVXNlckxvY2tlZEN1cnJlbmN5AwUIY3VycmVuY3kFC3JlcXVlc3RGcm9tBRVuZXdVc2VyTG9ja2VkQ3VycmVuY3kJARZfc2F2ZVJlcXVlc3RXaXRoZHJhd2FsAgUTcmVxdWVzdFdpdGhkcmF3YWxJZAUOcmVxdWVzdFVwZGF0ZWQFBHVuaXQJAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4BaQEQcmVqZWN0V2l0aGRyYXdhbAEUcmVxdWVzdFdpdGhkcmF3YWxJZF8EE3JlcXVlc3RXaXRoZHJhd2FsSWQJARN2YWx1ZU9yRXJyb3JNZXNzYWdlAgkAtgkBBRRyZXF1ZXN0V2l0aGRyYXdhbElkXwItcmVqZWN0V2l0aGRyYXdhbDogcmVxdWVzdFdpdGhkcmF3YWxJZCBub3QgaW50BBVyZXF1ZXN0V2l0aGRyYXdhbFNpemUJARpfbG9hZFJlcXVlc3RXaXRoZHJhd2FsU2l6ZQAEA2VycgMDCQEQX3doZW5Jbml0aWFsaXplZAAJARJfdmFsaWRhdGVTZXF1ZW5jZXICCAUBaQZjYWxsZXICI3JlamVjdFdpdGhkcmF3YWw6IGludmFsaWQgc2VxdWVuY2VyBwkBDF92YWxpZGF0ZUludAQFE3JlcXVlc3RXaXRoZHJhd2FsSWQAAAkAZQIFFXJlcXVlc3RXaXRoZHJhd2FsU2l6ZQABAi1yZWplY3RXaXRoZHJhd2FsOiBpbnZhbGlkIHJlcXVlc3RXaXRoZHJhd2FsSWQHAwkAAAIFA2VycgUDZXJyBAdyZXF1ZXN0CQEWX2xvYWRSZXF1ZXN0V2l0aGRyYXdhbAEFE3JlcXVlc3RXaXRoZHJhd2FsSWQEC3JlcXVlc3RGcm9tCAUHcmVxdWVzdAJfMQQJcmVxdWVzdFRvCAUHcmVxdWVzdAJfMgQQcmVxdWVzdFRvQ2hhaW5JZAgFB3JlcXVlc3QCXzMEDHJlcXVlc3RBc3NldAgFB3JlcXVlc3QCXzQEDXJlcXVlc3RBbW91bnQIBQdyZXF1ZXN0Al81BA1yZXF1ZXN0SGVpZ2h0CAUHcmVxdWVzdAJfNgQNcmVxdWVzdFN0YXR1cwgFB3JlcXVlc3QCXzgECGN1cnJlbmN5CQESX2xvYWRBc3NldEN1cnJlbmN5AgUQcmVxdWVzdFRvQ2hhaW5JZAUMcmVxdWVzdEFzc2V0BBZuZXdBc3NldFJlc2VydmVzTG9ja2VkCQC4AgIJARhfbG9hZEFzc2V0UmVzZXJ2ZXNMb2NrZWQCBRByZXF1ZXN0VG9DaGFpbklkBQxyZXF1ZXN0QXNzZXQFDXJlcXVlc3RBbW91bnQEFW5ld1VzZXJMb2NrZWRDdXJyZW5jeQkAuAICCQEXX2xvYWRVc2VyTG9ja2VkQ3VycmVuY3kCBQhjdXJyZW5jeQULcmVxdWVzdEZyb20FDXJlcXVlc3RBbW91bnQEBGVycjEDAwkBD192YWxpZGF0ZUJpZ0ludAMFFm5ld0Fzc2V0UmVzZXJ2ZXNMb2NrZWQFC1pFUk9fQklHSU5UAjFyZWplY3RXaXRoZHJhd2FsOiBuZWdhdGl2ZSBuZXdBc3NldFJlc2VydmVzTG9ja2VkCQEPX3ZhbGlkYXRlQmlnSW50AwUVbmV3VXNlckxvY2tlZEN1cnJlbmN5BQtaRVJPX0JJR0lOVAIwcmVqZWN0V2l0aGRyYXdhbDogbmVnYXRpdmUgbmV3VXNlckxvY2tlZEN1cnJlbmN5BwkBEV9yZXF1ZXN0SXNDcmVhdGVkAgUNcmVxdWVzdFN0YXR1cwIlcmVqZWN0V2l0aGRyYXdhbDogcmVxdWVzdCBpcyByZXNvbHZlZAcDCQAAAgUEZXJyMQUEZXJyMQQQYXZhaWxhYmxlQmFsYW5jZQQHJG1hdGNoMAkA/AcECQETX2xvYWRBY2NvdW50U3RvcmFnZQAFFUZVTkNfR0VUX1VTRVJfQkFMQU5DRQkAzAgCBQtyZXF1ZXN0RnJvbQkAzAgCBQtTUE9UX1dBTExFVAkAzAgCBQhjdXJyZW5jeQUDbmlsBQNuaWwDCQABAgUHJG1hdGNoMAIGU3RyaW5nBAFhBQckbWF0Y2gwCQCnAwEFAWEJAAIBAjtyZWplY3RXaXRoZHJhd2FsOiBjYW4ndCB0YWtlIGF2YWlsYWJsZSBiYWxhbmNlIGZyb20gc3RvcmFnZQMJAAACBRBhdmFpbGFibGVCYWxhbmNlBRBhdmFpbGFibGVCYWxhbmNlAwkAvwICBQ1yZXF1ZXN0QW1vdW50BRBhdmFpbGFibGVCYWxhbmNlBA5yZXF1ZXN0VXBkYXRlZAkAmgoICAUHcmVxdWVzdAJfMQgFB3JlcXVlc3QCXzIIBQdyZXF1ZXN0Al8zCAUHcmVxdWVzdAJfNAgFB3JlcXVlc3QCXzUIBQdyZXF1ZXN0Al82CAUHcmVxdWVzdAJfNwUXUkVRVUVTVF9TVEFUVVNfUkVKRUNURUQJAJQKAgkAzggCCQDOCAIJARhfc2F2ZUFzc2V0UmVzZXJ2ZXNMb2NrZWQDBRByZXF1ZXN0VG9DaGFpbklkBQxyZXF1ZXN0QXNzZXQFFm5ld0Fzc2V0UmVzZXJ2ZXNMb2NrZWQJARdfc2F2ZVVzZXJMb2NrZWRDdXJyZW5jeQMFCGN1cnJlbmN5BQtyZXF1ZXN0RnJvbQUVbmV3VXNlckxvY2tlZEN1cnJlbmN5CQEWX3NhdmVSZXF1ZXN0V2l0aGRyYXdhbAIFE3JlcXVlc3RXaXRoZHJhd2FsSWQFDnJlcXVlc3RVcGRhdGVkBgkAlAoCBQNuaWwHCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuAWkBCHdpdGhkcmF3CgVmcm9tXwN0b18KdG9DaGFpbklkXwZhc3NldF8HYW1vdW50XwtnYXNsZXNzRmVlXwp0aW1lc3RhbXBfCnB1YmxpY0tleV8EYWxnXwpzaWduYXR1cmVfBAl0b0NoYWluSWQJARN2YWx1ZU9yRXJyb3JNZXNzYWdlAgkAtgkBBQp0b0NoYWluSWRfAht3aXRoZHJhdzogdG9DaGFpbklkIG5vdCBpbnQEBmFtb3VudAkBE3ZhbHVlT3JFcnJvck1lc3NhZ2UCCQCoAwEFB2Ftb3VudF8CGHdpdGhkcmF3OiBhbW91bnQgbm90IGludAQKZ2FzbGVzc0ZlZQkBE3ZhbHVlT3JFcnJvck1lc3NhZ2UCCQCoAwEFC2dhc2xlc3NGZWVfAhx3aXRoZHJhdzogZ2FzbGVzc0ZlZSBub3QgaW50BAl0aW1lc3RhbXAJARN2YWx1ZU9yRXJyb3JNZXNzYWdlAgkAtgkBBQp0aW1lc3RhbXBfAht3aXRoZHJhdzogdGltZXN0YW1wIG5vdCBpbnQEA2FsZwkBE3ZhbHVlT3JFcnJvck1lc3NhZ2UCCQC2CQEFBGFsZ18CFXdpdGhkcmF3OiBhbGcgbm90IGludAQJcHVibGljS2V5CQDZBAEFCnB1YmxpY0tleV8ECXNpZ25hdHVyZQkA2QQBBQpzaWduYXR1cmVfBANlcnIDAwMDAwMDAwMDAwkBEF93aGVuSW5pdGlhbGl6ZWQACQESX3ZhbGlkYXRlU2VxdWVuY2VyAggFAWkGY2FsbGVyAht3aXRoZHJhdzogaW52YWxpZCBzZXF1ZW5jZXIHCQEPX3ZhbGlkYXRlU3RyaW5nAgUFZnJvbV8CFndpdGhkcmF3OiBpbnZhbGlkIGZyb20HCQEPX3ZhbGlkYXRlU3RyaW5nAgUDdG9fAhR3aXRoZHJhdzogaW52YWxpZCB0bwcJAQxfY2hhaW5FeGlzdHMCBQl0b0NoYWluSWQCG3dpdGhkcmF3OiBpbnZhbGlkIHRvQ2hhaW5JZAcJARRfYXNzZXRDdXJyZW5jeUV4aXN0cwMFCXRvQ2hhaW5JZAUGYXNzZXRfAhd3aXRoZHJhdzogaW52YWxpZCBhc3NldAcJAQ9fdmFsaWRhdGVCaWdJbnQDBQZhbW91bnQFC1pFUk9fQklHSU5UAhh3aXRoZHJhdzogaW52YWxpZCBhbW91bnQHCQERX3ZhbGlkYXRlQmlnSW50XzIEBQpnYXNsZXNzRmVlBQtaRVJPX0JJR0lOVAUGYW1vdW50Ahx3aXRoZHJhdzogaW52YWxpZCBnYXNsZXNzRmVlBwkBDF92YWxpZGF0ZUludAQJAGQCBQl0aW1lc3RhbXAFB09ORV9EQVkIBQlsYXN0QmxvY2sJdGltZXN0YW1wBQdNQVhfSU5UAht3aXRoZHJhdzogaW52YWxpZCB0aW1lc3RhbXAHCQESX3ZhbGlkYXRlUHVibGljS2V5AwUJcHVibGljS2V5BQNhbGcCGHdpdGhkcmF3OiBpbnYgcHVibGljIGtleQcJARhfdmFsaWRhdGVTaWduYXR1cmVGb3JtYXQDBQlzaWduYXR1cmUFA2FsZwIYd2l0aGRyYXc6IGludiBzaWcgZm9ybWF0BwkBIF92YWxpZGF0ZVB1YmxpY0tleU1hdGNoZXNBZGRyZXNzBAUJcHVibGljS2V5BQVmcm9tXwUDYWxnAh13aXRoZHJhdzogcHVibGljIGtleSBtaXNtYXRjaAcDCQAAAgUDZXJyBQNlcnIED3dpdGhkcmF3YWxCeXRlcwkAywECCQDLAQIJAMsBAgkAywECCQDLAQIJAMsBAgkAywECCQDLAQIJAMsBAgkAywECCQDLAQIJAJoDAQkAsQIBBQVmcm9tXwkAmwMBBQVmcm9tXwkAmgMBCQCxAgEFA3RvXwkAmwMBBQN0b18JAJoDAQUJdG9DaGFpbklkCQCaAwEJALECAQUGYXNzZXRfCQCbAwEFBmFzc2V0XwkAnQMBBQZhbW91bnQJAJ0DAQUKZ2FzbGVzc0ZlZQkAmgMBBQl0aW1lc3RhbXAFCXB1YmxpY0tleQkAmgMBBQNhbGcEDndpdGhkcmF3YWxIYXNoCQCMFQEFD3dpdGhkcmF3YWxCeXRlcwQIY3VycmVuY3kJARJfbG9hZEFzc2V0Q3VycmVuY3kCBQl0b0NoYWluSWQFBmFzc2V0XwQQYXZhaWxhYmxlQmFsYW5jZQQHJG1hdGNoMAkA/AcECQETX2xvYWRBY2NvdW50U3RvcmFnZQAFFUZVTkNfR0VUX1VTRVJfQkFMQU5DRQkAzAgCBQVmcm9tXwkAzAgCBQtTUE9UX1dBTExFVAkAzAgCBQhjdXJyZW5jeQUDbmlsBQNuaWwDCQABAgUHJG1hdGNoMAIGU3RyaW5nBAFhBQckbWF0Y2gwCQCnAwEFAWEJAAIBAjN3aXRoZHJhdzogY2FuJ3QgdGFrZSBhdmFpbGFibGUgYmFsYW5jZSBmcm9tIHN0b3JhZ2UDCQAAAgUQYXZhaWxhYmxlQmFsYW5jZQUQYXZhaWxhYmxlQmFsYW5jZQQNYXNzZXRSZXNlcnZlcwkBEl9sb2FkQXNzZXRSZXNlcnZlcwIFCXRvQ2hhaW5JZAUGYXNzZXRfBA5sb2NrZWRSZXNlcnZlcwkBGF9sb2FkQXNzZXRSZXNlcnZlc0xvY2tlZAIFCXRvQ2hhaW5JZAUGYXNzZXRfBAxhbW91bnRUb1NlbmQJALgCAgUGYW1vdW50BQpnYXNsZXNzRmVlBA9hbW91bnRUb1NlbmRTdHIJAKYDAQUMYW1vdW50VG9TZW5kBARlcnIxAwMDCQEcX3ZhbGlkYXRlV2l0aGRyYXdhbFNpZ25hdHVyZQUFDndpdGhkcmF3YWxIYXNoBQlzaWduYXR1cmUFCXB1YmxpY0tleQUDYWxnAhV3aXRoZHJhdzogaW52YWxpZCBzaWcJARxfY2hlY2tXaXRoZHJhd2FsSGFzaE5vdEV4aXN0AgUOd2l0aGRyYXdhbEhhc2gCGndpdGhkcmF3OiBhbHJlYWR5IGV4ZWN1dGVkBwkBD192YWxpZGF0ZUJpZ0ludAMFEGF2YWlsYWJsZUJhbGFuY2UFDGFtb3VudFRvU2VuZAIed2l0aGRyYXc6IGluc3VmZmljaWVudCBiYWxhbmNlBwkBD192YWxpZGF0ZUJpZ0ludAMJALgCAgUNYXNzZXRSZXNlcnZlcwUObG9ja2VkUmVzZXJ2ZXMFDGFtb3VudFRvU2VuZAIfd2l0aGRyYXc6IGluc3VmZmljaWVudCByZXNlcnZlcwcDCQAAAgUEZXJyMQUEZXJyMQQQbmV3QXNzZXRSZXNlcnZlcwkAuAICBQ1hc3NldFJlc2VydmVzBQxhbW91bnRUb1NlbmQEE25ld0N1cnJlbmN5UmVzZXJ2ZXMJALgCAgkBFV9sb2FkQ3VycmVuY3lSZXNlcnZlcwEFCGN1cnJlbmN5BQxhbW91bnRUb1NlbmQEBGVycjIDCQEPX3ZhbGlkYXRlQmlnSW50AwUQbmV3QXNzZXRSZXNlcnZlcwULWkVST19CSUdJTlQCI3dpdGhkcmF3OiBuZWdhdGl2ZSBuZXdBc3NldFJlc2VydmVzCQEPX3ZhbGlkYXRlQmlnSW50AwUTbmV3Q3VycmVuY3lSZXNlcnZlcwULWkVST19CSUdJTlQCJndpdGhkcmF3OiBuZWdhdGl2ZSBuZXdDdXJyZW5jeVJlc2VydmVzBwMJAAACBQRlcnIyBQRlcnIyBBJzdG9yYWdlSW52b2NhdGlvbjEJAPwHBAkBE19sb2FkQWNjb3VudFN0b3JhZ2UABQ1GVU5DX1dJVEhEUkFXCQDMCAIFBWZyb21fCQDMCAIFCGN1cnJlbmN5CQDMCAIFB2Ftb3VudF8FA25pbAUDbmlsAwkAAAIFEnN0b3JhZ2VJbnZvY2F0aW9uMQUSc3RvcmFnZUludm9jYXRpb24xBBJzdG9yYWdlSW52b2NhdGlvbjIJAPwHBAkBE19sb2FkQWNjb3VudFN0b3JhZ2UABQxGVU5DX0RFUE9TSVQJAMwIAgkBGF9sb2FkUmVsYXllckZlZVJlY2lwaWVudAAJAMwIAgUIY3VycmVuY3kJAMwIAgULZ2FzbGVzc0ZlZV8FA25pbAUDbmlsAwkAAAIFEnN0b3JhZ2VJbnZvY2F0aW9uMgUSc3RvcmFnZUludm9jYXRpb24yBBJ3aXRoZHJhd0ludm9jYXRpb24DCQAAAgkBCl9sb2FkQ2hhaW4BBQl0b0NoYWluSWQFBVdBVkVTCQD8BwQJAQ9fbG9hZFdhdmVzVmF1bHQABQ1GVU5DX1dJVEhEUkFXCQDMCAIFA3RvXwkAzAgCBQZhc3NldF8JAMwIAgUPYW1vdW50VG9TZW5kU3RyBQNuaWwFA25pbAkA/AcECQERX2xvYWRWYXVsdEFkYXB0ZXIABQ1GVU5DX1dJVEhEUkFXCQDMCAIFCXRvQ2hhaW5JZAkAzAgCBQZhc3NldF8JAMwIAgUPYW1vdW50VG9TZW5kU3RyCQDMCAIFA3RvXwkAzAgCBQtnYXNsZXNzRmVlXwUDbmlsBQNuaWwDCQAAAgUSd2l0aGRyYXdJbnZvY2F0aW9uBRJ3aXRoZHJhd0ludm9jYXRpb24JAJQKAgkAzggCCQDOCAIJARJfc2F2ZUFzc2V0UmVzZXJ2ZXMDBQl0b0NoYWluSWQFBmFzc2V0XwUQbmV3QXNzZXRSZXNlcnZlcwkBFV9zYXZlQ3VycmVuY3lSZXNlcnZlcwIFCGN1cnJlbmN5BRNuZXdDdXJyZW5jeVJlc2VydmVzCQETX3NhdmVXaXRoZHJhd2FsSGFzaAIFDndpdGhkcmF3YWxIYXNoCQDYBAEIBQFpDXRyYW5zYWN0aW9uSWQFBHVuaXQJAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4BaQEUZGVwb3NpdFN0YWtpbmdSZXdhcmQED2NhbGxlckNvbnRyYWN0XwhjaGFpbklkXwZhc3NldF8HYW1vdW50XwQHY2hhaW5JZAkBE3ZhbHVlT3JFcnJvck1lc3NhZ2UCCQC2CQEFCGNoYWluSWRfAiVkZXBvc2l0U3Rha2luZ1Jld2FyZDogY2hhaW5JZCBub3QgaW50BAZhbW91bnQJARN2YWx1ZU9yRXJyb3JNZXNzYWdlAgkAqAMBBQdhbW91bnRfAiRkZXBvc2l0U3Rha2luZ1Jld2FyZDogYW1vdW50IG5vdCBpbnQEA2VycgMDAwMJARBfd2hlbkluaXRpYWxpemVkAAkBDl93aGVuTm90UGF1c2VkAAcJAQxfY2hhaW5FeGlzdHMCBQdjaGFpbklkAiVkZXBvc2l0U3Rha2luZ1Jld2FyZDogaW52YWxpZCBjaGFpbklkBwkBFF9hc3NldEN1cnJlbmN5RXhpc3RzAwUHY2hhaW5JZAUGYXNzZXRfAiNkZXBvc2l0U3Rha2luZ1Jld2FyZDogaW52YWxpZCBhc3NldAcJAQ9fdmFsaWRhdGVCaWdJbnQDBQZhbW91bnQFC1pFUk9fQklHSU5UAiRkZXBvc2l0U3Rha2luZ1Jld2FyZDogaW52YWxpZCBhbW91bnQHAwkAAAIFA2VycgUDZXJyBARlcnIxAwkAAAIJAQpfbG9hZENoYWluAQUHY2hhaW5JZAUFV0FWRVMJARNfdmFsaWRhdGVXYXZlc1ZhdWx0AggFAWkGY2FsbGVyAilkZXBvc2l0U3Rha2luZ1Jld2FyZDogaW52YWxpZCB3YXZlcyB2YXVsdAMJARFfdmFsaWRhdGVFeGVjdXRvcgIIBQFpBmNhbGxlcgImZGVwb3NpdFN0YWtpbmdSZXdhcmQ6IGludmFsaWQgZXhlY3V0b3IJARdfdmFsaWRhdGVDYWxsZXJDb250cmFjdAMFB2NoYWluSWQFD2NhbGxlckNvbnRyYWN0XwItZGVwb3NpdFN0YWtpbmdSZXdhcmQ6IGludmFsaWQgY2FsbGVyIGNvbnRyYWN0BwMJAAACBQRlcnIxBQRlcnIxBBBuZXdBc3NldFJlc2VydmVzCQC3AgIJARJfbG9hZEFzc2V0UmVzZXJ2ZXMCBQdjaGFpbklkBQZhc3NldF8FBmFtb3VudAQIY3VycmVuY3kJARJfbG9hZEFzc2V0Q3VycmVuY3kCBQdjaGFpbklkBQZhc3NldF8EE25ld0N1cnJlbmN5UmVzZXJ2ZXMJALcCAgkBFV9sb2FkQ3VycmVuY3lSZXNlcnZlcwEFCGN1cnJlbmN5BQZhbW91bnQECmludm9jYXRpb24JAPwHBAkBE19sb2FkQWNjb3VudFN0b3JhZ2UABRtGVU5DX0RFUE9TSVRfU1RBS0lOR19SRVdBUkQJAMwIAgkBFl9sb2FkUmV3YXJkRGlzdHJpYnV0b3IACQDMCAIFCGN1cnJlbmN5CQDMCAIFB2Ftb3VudF8FA25pbAUDbmlsAwkAAAIFCmludm9jYXRpb24FCmludm9jYXRpb24JAJQKAgkAzggCCQESX3NhdmVBc3NldFJlc2VydmVzAwUHY2hhaW5JZAUGYXNzZXRfBRBuZXdBc3NldFJlc2VydmVzCQEVX3NhdmVDdXJyZW5jeVJlc2VydmVzAgUIY3VycmVuY3kFE25ld0N1cnJlbmN5UmVzZXJ2ZXMFBHVuaXQJAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4BaQEIYWRkQ2hhaW4DCGNoYWluSWRfBW5hbWVfD2NhbGxlckNvbnRyYWN0XwQDZXJyAwMDAwMJARFfb25seVRoaXNDb250cmFjdAEIBQFpBmNhbGxlcgkBEF93aGVuSW5pdGlhbGl6ZWQABwkBDF92YWxpZGF0ZUludAQFCGNoYWluSWRfAAAFB01BWF9JTlQCGWFkZENoYWluOiBpbnZhbGlkIGNoYWluSWQHCQEPX3ZhbGlkYXRlU3RyaW5nAgUFbmFtZV8CFmFkZENoYWluOiBpbnZhbGlkIG5hbWUHCQEPX3ZhbGlkYXRlU3RyaW5nAgUPY2FsbGVyQ29udHJhY3RfAiBhZGRDaGFpbjogaW52YWxpZCBjYWxsZXJDb250cmFjdAcJAQ5fY2hhaW5Ob3RFeGlzdAIFCGNoYWluSWRfAhhhZGRDaGFpbjogYWxyZWFkeSBleGlzdHMHAwkAAAIFA2VycgUDZXJyCQCUCgIJAM4IAgkBCl9zYXZlQ2hhaW4CBQhjaGFpbklkXwUFbmFtZV8JARNfc2F2ZUNhbGxlckNvbnRyYWN0AgUIY2hhaW5JZF8FD2NhbGxlckNvbnRyYWN0XwUEdW5pdAkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgFpAQhhZGRBc3NldAMIY2hhaW5JZF8GYXNzZXRfCWN1cnJlbmN5XwQDZXJyAwMDAwMJARFfb25seVRoaXNDb250cmFjdAEIBQFpBmNhbGxlcgkBEF93aGVuSW5pdGlhbGl6ZWQABwkBDF9jaGFpbkV4aXN0cwIFCGNoYWluSWRfAhlhZGRBc3NldDogaW52YWxpZCBjaGFpbklkBwkBD192YWxpZGF0ZVN0cmluZwIFBmFzc2V0XwIXYWRkQXNzZXQ6IGludmFsaWQgYXNzZXQHCQEPX3ZhbGlkYXRlU3RyaW5nAgUJY3VycmVuY3lfAhphZGRBc3NldDogaW52YWxpZCBjdXJyZW5jeQcJARZfYXNzZXRDdXJyZW5jeU5vdEV4aXN0AwUIY2hhaW5JZF8FBmFzc2V0XwIYYWRkQXNzZXQ6IGFscmVhZHkgZXhpc3RzBwMJAAACBQNlcnIFA2VycgkAlAoCCQESX3NhdmVBc3NldEN1cnJlbmN5AwUIY2hhaW5JZF8FBmFzc2V0XwUJY3VycmVuY3lfBQR1bml0CQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuAWkBHnNldFJlcXVlc3RXaXRoZHJhd2FsQmxvY2tEZWxheQEGZGVsYXlfBANlcnIDAwkBEV9vbmx5VGhpc0NvbnRyYWN0AQgFAWkGY2FsbGVyCQEQX3doZW5Jbml0aWFsaXplZAAHCQEMX3ZhbGlkYXRlSW50BAUGZGVsYXlfAAAFB01BWF9JTlQCLXNldFJlcXVlc3RXaXRoZHJhd2FsQmxvY2tEZWxheTogaW52YWxpZCBkZWxheQcDCQAAAgUDZXJyBQNlcnIJAJQKAgkBIF9zYXZlUmVxdWVzdFdpdGhkcmF3YWxCbG9ja0RlbGF5AQUGZGVsYXlfBQR1bml0CQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuAWkBF3VwZGF0ZVJld2FyZERpc3RyaWJ1dG9yARJyZXdhcmREaXN0cmlidXRvcl8EA2VycgMDCQERX29ubHlUaGlzQ29udHJhY3QBCAUBaQZjYWxsZXIJARBfd2hlbkluaXRpYWxpemVkAAcJAQ9fdmFsaWRhdGVTdHJpbmcCBRJyZXdhcmREaXN0cmlidXRvcl8CMnVwZGF0ZVJld2FyZERpc3RyaWJ1dG9yOiBpbnZhbGlkIHJld2FyZERpc3RyaWJ1dG9yBwMJAAACBQNlcnIFA2VycgkAlAoCCQEWX3NhdmVSZXdhcmREaXN0cmlidXRvcgEFEnJld2FyZERpc3RyaWJ1dG9yXwUEdW5pdAkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgFpARl1cGRhdGVSZWxheWVyRmVlUmVjaXBpZW50ARRyZWxheWVyRmVlUmVjaXBpZW50XwQDZXJyAwMJARFfb25seVRoaXNDb250cmFjdAEIBQFpBmNhbGxlcgkBEF93aGVuSW5pdGlhbGl6ZWQABwkBD192YWxpZGF0ZVN0cmluZwIFFHJlbGF5ZXJGZWVSZWNpcGllbnRfAjZ1cGRhdGVSZWxheWVyRmVlUmVjaXBpZW50OiBpbnZhbGlkIHJlbGF5ZXJGZWVSZWNpcGllbnQHAwkAAAIFA2VycgUDZXJyCQCUCgIJARhfc2F2ZVJlbGF5ZXJGZWVSZWNpcGllbnQBBRRyZWxheWVyRmVlUmVjaXBpZW50XwUEdW5pdAkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgFpAQVwYXVzZQAEA2VycgMDCQELX29ubHlQYXVzZXIBCAUBaQZjYWxsZXIJARBfd2hlbkluaXRpYWxpemVkAAcJAQ5fd2hlbk5vdFBhdXNlZAAHAwkAAAIFA2VycgUDZXJyCQCUCgIJAQpfc2F2ZVBhdXNlAQYFBHVuaXQJAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4BaQEHdW5wYXVzZQAEA2VycgMDCQELX29ubHlQYXVzZXIBCAUBaQZjYWxsZXIJARBfd2hlbkluaXRpYWxpemVkAAcJAQtfd2hlblBhdXNlZAAHAwkAAAIFA2VycgUDZXJyCQCUCgIJAQpfc2F2ZVBhdXNlAQcFBHVuaXQJAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4BaQEMdXBkYXRlUGF1c2VyAQdwYXVzZXJfBANlcnIDAwkBEV9vbmx5VGhpc0NvbnRyYWN0AQgFAWkGY2FsbGVyCQEQX3doZW5Jbml0aWFsaXplZAAHCQEQX3ZhbGlkYXRlQWRkcmVzcwIFB3BhdXNlcl8CHHVwZGF0ZVBhdXNlcjogaW52YWxpZCBwYXVzZXIHAwkAAAIFA2VycgUDZXJyCQCUCgIJAQtfc2F2ZVBhdXNlcgEJARFAZXh0ck5hdGl2ZSgxMDYyKQEFB3BhdXNlcl8FBHVuaXQJAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4BaQELc2V0TXVsdGlzaWcBCW11bHRpc2lnXwQDZXJyAwkBEV9vbmx5VGhpc0NvbnRyYWN0AQgFAWkGY2FsbGVyCQEQX3ZhbGlkYXRlQWRkcmVzcwIFCW11bHRpc2lnXwIdc2V0TXVsdGlzaWc6IGludmFsaWQgbXVsdGlzaWcHAwkAAAIFA2VycgUDZXJyCQCUCgIJAQ1fc2F2ZU11bHRpc2lnAQkBEUBleHRyTmF0aXZlKDEwNjIpAQUJbXVsdGlzaWdfBQR1bml0CQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuAQJ0eAEGdmVyaWZ5AAQHJG1hdGNoMAkAoggBBQxLRVlfTVVMVElTSUcDCQABAgUHJG1hdGNoMAIGU3RyaW5nBAhtdWx0aXNpZwUHJG1hdGNoMAkBC3ZhbHVlT3JFbHNlAgkAmwgCCQERQGV4dHJOYXRpdmUoMTA2MikBBQhtdWx0aXNpZwkAuQkCCQDMCAIFCktFWV9TVEFUVVMJAMwIAgkApQgBBQR0aGlzCQDMCAIJANgEAQgFAnR4AmlkBQNuaWwFCVNFUEFSQVRPUgcJAPQDAwgFAnR4CWJvZHlCeXRlcwkAkQMCCAUCdHgGcHJvb2ZzAAAIBQJ0eA9zZW5kZXJQdWJsaWNLZXk6/AbW", "height": 3381030, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: 24CCS8Lw6GTV9BDLBGwj5tWteWGmyRMVHu9F6KH8LUDh Next: CvSULfUYVtr5buc9CPvVWmqXsmaPHDdjbdtXkwZ6Cd7p Diff:
OldNewDifferences
2929
3030 let n = "ASSET_RESERVES_LOCKED"
3131
32-let o = "CURRENCY_RESERVES"
32+let o = "USER_LOCKED_CURRENCY"
3333
34-let p = "REQUEST_WITHDRAWAL_SIZE"
34+let p = "CURRENCY_RESERVES"
3535
36-let q = "REQUEST_WITHDRAWAL"
36+let q = "REQUEST_WITHDRAWAL_SIZE"
3737
38-let r = "REQUEST_WITHDRAWAL_BLOCK_DELAY"
38+let r = "REQUEST_WITHDRAWAL"
3939
40-let s = "SEQUENCER"
40+let s = "REQUEST_WITHDRAWAL_BLOCK_DELAY"
4141
42-let t = "WITHDRAWAL_HASH"
42+let t = "SEQUENCER"
4343
44-let u = "VAULT_ADAPTER"
44+let u = "WITHDRAWAL_HASH"
4545
46-let v = "REWARD_DISTRIBUTOR"
46+let v = "VAULT_ADAPTER"
4747
48-let w = "deposit"
48+let w = "REWARD_DISTRIBUTOR"
4949
50-let x = "getUserBalance"
50+let x = "RELAYER_FEE_RECIPIENT"
5151
52-let y = "internalTransfer"
52+let y = "deposit"
5353
54-let z = "withdraw"
54+let z = "getUserBalance"
5555
56-let A = "depositStakingReward"
56+let A = "internalTransfer"
5757
58-let B = 0
58+let B = "withdraw"
5959
60-let C = 1
60+let C = "depositStakingReward"
6161
62-let D = 2
62+let D = 0
6363
64-let E = "WAVES"
64+let E = 1
6565
66-let F = "SPOT"
66+let F = 2
6767
68-let G = "WITHDRAWALS"
68+let G = "WAVES"
6969
70-let H = 9223372036854775807
70+let H = "SPOT"
7171
72-let I = toBigInt(0)
72+let I = 9223372036854775807
7373
74-let J = toBigInt(1)
74+let J = toBigInt(0)
7575
76-let K = 86400000
76+let K = toBigInt(1)
7777
78-let L = 1
78+let L = 86400000
7979
80-let M = 2
80+let M = 1
8181
82-let N = base58'G5Nu92G2p7moXW9qjjN3na7gtq4dWCeVdaSjry'
82+let N = 2
8383
84-func O (P,Q) = {
85- let R = addressFromString(P)
86- if ($isInstanceOf(R, "Address"))
84+let O = base58'G5Nu92G2p7moXW9qjjN3na7gtq4dWCeVdaSjry'
85+
86+func P (Q,R) = {
87+ let S = addressFromString(Q)
88+ if ($isInstanceOf(S, "Address"))
8789 then {
88- let S = R
90+ let T = S
8991 true
9092 }
91- else throw(Q)
93+ else throw(R)
9294 }
9395
9496
95-func T (U,V,W,Q) = if (if ((V > U))
97+func U (V,W,X,R) = if (if ((W > V))
9698 then true
97- else (U > W))
98- then throw(Q)
99+ else (V > X))
100+ then throw(R)
99101 else true
100102
101103
102-func X (U,V,Q) = if ((V > U))
103- then throw(Q)
104+func Y (V,W,R) = if ((W > V))
105+ then throw(R)
104106 else true
105107
106108
107-func Y (U,Q) = if (if ((0 >= size(U)))
109+func Z (V,W,X,R) = if (if ((W > V))
108110 then true
109- else contains(U, a))
110- then throw(Q)
111+ else (V > X))
112+ then throw(R)
111113 else true
112114
113115
114-func Z (aa,ab,Q) = if ((aa != ab))
115- then throw(Q)
116+func aa (V,R) = if (if ((0 >= size(V)))
117+ then true
118+ else contains(V, a))
119+ then throw(R)
116120 else true
117121
118122
119-func ac () = {
120- let R = getBoolean(d)
121- if ($isInstanceOf(R, "Boolean"))
123+func ab (ac,ad,R) = if ((ac != ad))
124+ then throw(R)
125+ else true
126+
127+
128+func ae () = {
129+ let S = getBoolean(d)
130+ if ($isInstanceOf(S, "Boolean"))
122131 then {
123- let S = R
124- S
132+ let T = S
133+ T
125134 }
126135 else false
127136 }
128137
129138
130-func ad (ae) = [BooleanEntry(d, ae)]
139+func af (ag) = [BooleanEntry(d, ag)]
131140
132141
133-func af () = {
134- let R = getBoolean(e)
135- if ($isInstanceOf(R, "Boolean"))
142+func ah () = {
143+ let S = getBoolean(e)
144+ if ($isInstanceOf(S, "Boolean"))
136145 then {
137- let S = R
138- S
146+ let T = S
147+ T
139148 }
140149 else false
141150 }
142151
143152
144-func ag (ah) = [BooleanEntry(e, ah)]
153+func ai (aj) = [BooleanEntry(e, aj)]
145154
146155
147-func ai () = {
148- let R = getString(f)
149- if ($isInstanceOf(R, "String"))
156+func ak () = {
157+ let S = getString(f)
158+ if ($isInstanceOf(S, "String"))
150159 then {
151- let S = R
152- addressFromStringValue(S)
160+ let T = S
161+ addressFromStringValue(T)
153162 }
154163 else Address(base58'')
155164 }
156165
157166
158-func aj (ak) = [StringEntry(f, toString(ak))]
167+func al (am) = [StringEntry(f, toString(am))]
159168
160169
161-func al () = {
162- let R = getString(b)
163- if ($isInstanceOf(R, "String"))
170+func an () = {
171+ let S = getString(b)
172+ if ($isInstanceOf(S, "String"))
164173 then {
165- let S = R
166- addressFromStringValue(S)
174+ let T = S
175+ addressFromStringValue(T)
167176 }
168177 else Address(base58'')
169178 }
170179
171180
172-func am (an) = [StringEntry(b, toString(an))]
181+func ao (ap) = [StringEntry(b, toString(ap))]
173182
174183
175-func ao (ap) = {
176- let R = getString(makeString([h, toString(ap)], a))
177- if ($isInstanceOf(R, "String"))
184+func aq (ar) = {
185+ let S = getString(makeString([h, toString(ar)], a))
186+ if ($isInstanceOf(S, "String"))
178187 then {
179- let S = R
180- S
188+ let T = S
189+ T
181190 }
182191 else ""
183192 }
184193
185194
186-func aq (ap,ar) = [StringEntry(makeString([h, toString(ap)], a), ar)]
195+func as (ar,at) = [StringEntry(makeString([h, toString(ar)], a), at)]
187196
188197
189-func as () = {
190- let R = getString(g)
191- if ($isInstanceOf(R, "String"))
198+func au () = {
199+ let S = getString(g)
200+ if ($isInstanceOf(S, "String"))
192201 then {
193- let S = R
194- addressFromStringValue(S)
202+ let T = S
203+ addressFromStringValue(T)
195204 }
196205 else Address(base58'')
197206 }
198207
199208
200-func at (au) = [StringEntry(g, toString(au))]
209+func av (aw) = [StringEntry(g, toString(aw))]
201210
202211
203-func av () = {
204- let R = getString(j)
205- if ($isInstanceOf(R, "String"))
212+func ax () = {
213+ let S = getString(j)
214+ if ($isInstanceOf(S, "String"))
206215 then {
207- let S = R
208- addressFromStringValue(S)
216+ let T = S
217+ addressFromStringValue(T)
209218 }
210219 else Address(base58'')
211220 }
212221
213222
214-func aw (ax) = [StringEntry(j, toString(ax))]
223+func ay (az) = [StringEntry(j, toString(az))]
215224
216225
217-func ay () = {
218- let R = getString(i)
219- if ($isInstanceOf(R, "String"))
226+func aA () = {
227+ let S = getString(i)
228+ if ($isInstanceOf(S, "String"))
220229 then {
221- let S = R
222- addressFromStringValue(S)
230+ let T = S
231+ addressFromStringValue(T)
223232 }
224233 else Address(base58'')
225234 }
226235
227236
228-func az (aA) = [StringEntry(i, toString(aA))]
237+func aB (aC) = [StringEntry(i, toString(aC))]
229238
230239
231-func aB (ap) = {
232- let R = getString(makeString([k, toString(ap)], a))
233- if ($isInstanceOf(R, "String"))
240+func aD (ar) = {
241+ let S = getString(makeString([k, toString(ar)], a))
242+ if ($isInstanceOf(S, "String"))
234243 then {
235- let S = R
236- S
244+ let T = S
245+ T
237246 }
238247 else ""
239248 }
240249
241250
242-func aC (ap,aD) = [StringEntry(makeString([k, toString(ap)], a), aD)]
251+func aE (ar,aF) = [StringEntry(makeString([k, toString(ar)], a), aF)]
243252
244253
245-func aE (ap,aF) = {
246- let R = getString(makeString([l, toString(ap), aF], a))
247- if ($isInstanceOf(R, "String"))
254+func aG (ar,aH) = {
255+ let S = getString(makeString([l, toString(ar), aH], a))
256+ if ($isInstanceOf(S, "String"))
248257 then {
249- let S = R
250- S
258+ let T = S
259+ T
251260 }
252261 else ""
253262 }
254263
255264
256-func aG (ap,aF,aH) = [StringEntry(makeString([l, toString(ap), aF], a), aH)]
265+func aI (ar,aH,aJ) = [StringEntry(makeString([l, toString(ar), aH], a), aJ)]
257266
258267
259-func aI (ap,aF) = {
260- let R = getString(makeString([m, toString(ap), aF], a))
261- if ($isInstanceOf(R, "String"))
268+func aK (ar,aH) = {
269+ let S = getString(makeString([m, toString(ar), aH], a))
270+ if ($isInstanceOf(S, "String"))
262271 then {
263- let S = R
264- parseBigIntValue(S)
272+ let T = S
273+ parseBigIntValue(T)
265274 }
266- else I
275+ else J
267276 }
268277
269278
270-func aJ (ap,aF,aK) = [StringEntry(makeString([m, toString(ap), aF], a), toString(aK))]
279+func aL (ar,aH,aM) = [StringEntry(makeString([m, toString(ar), aH], a), toString(aM))]
271280
272281
273-func aL (ap,aF) = {
274- let R = getString(makeString([n, toString(ap), aF], a))
275- if ($isInstanceOf(R, "String"))
282+func aN (ar,aH) = {
283+ let S = getString(makeString([n, toString(ar), aH], a))
284+ if ($isInstanceOf(S, "String"))
276285 then {
277- let S = R
278- parseBigIntValue(S)
286+ let T = S
287+ parseBigIntValue(T)
279288 }
280- else I
289+ else J
281290 }
282291
283292
284-func aM (ap,aF,aK) = [StringEntry(makeString([n, toString(ap), aF], a), toString(aK))]
293+func aO (ar,aH,aM) = [StringEntry(makeString([n, toString(ar), aH], a), toString(aM))]
285294
286295
287-func aN (aH) = {
288- let R = getString(makeString([o, aH], a))
289- if ($isInstanceOf(R, "String"))
296+func aP (aJ,aQ) = {
297+ let S = getString(makeString([o, aJ, aQ], a))
298+ if ($isInstanceOf(S, "String"))
290299 then {
291- let S = R
292- parseBigIntValue(S)
300+ let T = S
301+ parseBigIntValue(T)
293302 }
294- else I
303+ else J
295304 }
296305
297306
298-func aO (aH,aK) = [StringEntry(makeString([o, aH], a), toString(aK))]
307+func aR (aJ,aQ,aS) = [StringEntry(makeString([o, aJ, aQ], a), toString(aS))]
299308
300309
301-func aP () = {
302- let R = getInteger(p)
303- if ($isInstanceOf(R, "Int"))
310+func aT (aJ) = {
311+ let S = getString(makeString([p, aJ], a))
312+ if ($isInstanceOf(S, "String"))
304313 then {
305- let S = R
306- S
314+ let T = S
315+ parseBigIntValue(T)
316+ }
317+ else J
318+ }
319+
320+
321+func aU (aJ,aM) = [StringEntry(makeString([p, aJ], a), toString(aM))]
322+
323+
324+func aV () = {
325+ let S = getInteger(q)
326+ if ($isInstanceOf(S, "Int"))
327+ then {
328+ let T = S
329+ T
307330 }
308331 else 0
309332 }
310333
311334
312-func aQ (U) = [IntegerEntry(p, U)]
335+func aW (V) = [IntegerEntry(q, V)]
313336
314337
315-func aR (aS) = {
316- let R = getString(makeString([q, toString(aS)], a))
317- if ($isInstanceOf(R, "String"))
338+func aX (aY) = {
339+ let S = getString(makeString([r, toString(aY)], a))
340+ if ($isInstanceOf(S, "String"))
318341 then {
319- let S = R
320- let aT = split(S, a)
321- $Tuple8(aT[0], aT[1], parseIntValue(aT[2]), aT[3], parseBigIntValue(aT[4]), parseIntValue(aT[5]), aT[6], parseIntValue(aT[7]))
342+ let T = S
343+ let aZ = split(T, a)
344+ $Tuple8(aZ[0], aZ[1], parseIntValue(aZ[2]), aZ[3], parseBigIntValue(aZ[4]), parseIntValue(aZ[5]), aZ[6], parseIntValue(aZ[7]))
322345 }
323- else $Tuple8("", "", 0, "", I, 0, "", B)
346+ else $Tuple8("", "", 0, "", J, 0, "", D)
324347 }
325348
326349
327-func aU (aS,aV) = [StringEntry(makeString([q, toString(aS)], a), makeString([aV._1, aV._2, toString(aV._3), aV._4, toString(aV._5), toString(aV._6), aV._7, toString(aV._8)], a))]
350+func ba (aY,bb) = [StringEntry(makeString([r, toString(aY)], a), makeString([bb._1, bb._2, toString(bb._3), bb._4, toString(bb._5), toString(bb._6), bb._7, toString(bb._8)], a))]
328351
329352
330-func aW () = {
331- let R = getInteger(r)
332- if ($isInstanceOf(R, "Int"))
353+func bc () = {
354+ let S = getInteger(s)
355+ if ($isInstanceOf(S, "Int"))
333356 then {
334- let S = R
335- S
357+ let T = S
358+ T
336359 }
337360 else 0
338361 }
339362
340363
341-func aX (aY) = [IntegerEntry(r, aY)]
364+func bd (be) = [IntegerEntry(s, be)]
342365
343366
344-func aZ () = {
345- let R = getString(s)
346- if ($isInstanceOf(R, "String"))
367+func bf () = {
368+ let S = getString(t)
369+ if ($isInstanceOf(S, "String"))
347370 then {
348- let S = R
349- addressFromStringValue(S)
371+ let T = S
372+ addressFromStringValue(T)
350373 }
351374 else Address(base58'')
352375 }
353376
354377
355-func ba (bb) = [StringEntry(s, toString(bb))]
378+func bg (bh) = [StringEntry(t, toString(bh))]
356379
357380
358-func bc (bd) = {
359- let R = getString(makeString([t, toBase58String(bd)], a))
360- if ($isInstanceOf(R, "String"))
381+func bi (bj) = {
382+ let S = getString(makeString([u, toBase58String(bj)], a))
383+ if ($isInstanceOf(S, "String"))
361384 then {
362- let S = R
363- S
385+ let T = S
386+ T
364387 }
365388 else ""
366389 }
367390
368391
369-func be (bd,bf) = [StringEntry(makeString([t, toBase58String(bd)], a), bf)]
392+func bk (bj,bl) = [StringEntry(makeString([u, toBase58String(bj)], a), bl)]
370393
371394
372-func bg () = {
373- let R = getString(u)
374- if ($isInstanceOf(R, "String"))
395+func bm () = {
396+ let S = getString(v)
397+ if ($isInstanceOf(S, "String"))
375398 then {
376- let S = R
377- addressFromStringValue(S)
399+ let T = S
400+ addressFromStringValue(T)
378401 }
379402 else Address(base58'')
380403 }
381404
382405
383-func bh (bi) = [StringEntry(u, toString(bi))]
406+func bn (bo) = [StringEntry(v, toString(bo))]
384407
385408
386-func bj () = {
387- let R = getString(v)
388- if ($isInstanceOf(R, "String"))
409+func bp () = {
410+ let S = getString(w)
411+ if ($isInstanceOf(S, "String"))
389412 then {
390- let S = R
391- S
413+ let T = S
414+ T
392415 }
393416 else ""
394417 }
395418
396419
397-func bk (bl) = [StringEntry(v, bl)]
420+func bq (br) = [StringEntry(w, br)]
398421
399422
400-func bm (bn) = if ((bn != this))
423+func bs () = {
424+ let S = getString(x)
425+ if ($isInstanceOf(S, "String"))
426+ then {
427+ let T = S
428+ T
429+ }
430+ else ""
431+ }
432+
433+
434+func bt (bu) = [StringEntry(x, bu)]
435+
436+
437+func bv (bw) = if ((bw != this))
401438 then throw("_onlyThisContract: revert")
402439 else true
403440
404441
405-func bo () = if ((al() == Address(base58'')))
442+func bx () = if ((an() == Address(base58'')))
406443 then throw("_whenMultisigSet: revert")
407444 else true
408445
409446
410-func bp () = if (ac())
447+func by () = if (ae())
411448 then throw("_whenNotInitialized: revert")
412449 else true
413450
414451
415-func bq () = if (!(ac()))
452+func bz () = if (!(ae()))
416453 then throw("_whenInitialized: revert")
417454 else true
418455
419456
420-func br () = if (af())
457+func bA () = if (ah())
421458 then throw("_whenNotPaused: revert")
422459 else true
423460
424461
425-func bs () = if (!(af()))
462+func bB () = if (!(ah()))
426463 then throw("_whenPaused: revert")
427464 else true
428465
429466
430-func bt (bn) = if ((bn != ai()))
467+func bC (bw) = if ((bw != ak()))
431468 then throw("_onlyPauser: revert")
432469 else true
433470
434471
435-func bu (U,Q) = if ((U != as()))
436- then throw(Q)
472+func bD (V,R) = if ((V != au()))
473+ then throw(R)
437474 else true
438475
439476
440-func bv (ap,ar,Q) = if ((ao(ap) != ar))
441- then throw(Q)
477+func bE (ar,at,R) = if ((aq(ar) != at))
478+ then throw(R)
442479 else true
443480
444481
445-func bw (ap,Q) = if ((0 >= size(aB(ap))))
446- then throw(Q)
482+func bF (ar,R) = if ((0 >= size(aD(ar))))
483+ then throw(R)
447484 else true
448485
449486
450-func bx (ap,Q) = if ((size(aB(ap)) > 0))
451- then throw(Q)
487+func bG (ar,R) = if ((size(aD(ar)) > 0))
488+ then throw(R)
452489 else true
453490
454491
455-func by (ap,aF,Q) = if ((0 >= size(aE(ap, aF))))
456- then throw(Q)
492+func bH (ar,aH,R) = if ((0 >= size(aG(ar, aH))))
493+ then throw(R)
457494 else true
458495
459496
460-func bz (ap,aF,Q) = if ((size(aE(ap, aF)) > 0))
461- then throw(Q)
497+func bI (ar,aH,R) = if ((size(aG(ar, aH)) > 0))
498+ then throw(R)
462499 else true
463500
464501
465-func bA (bB,Q) = if ((ay() != bB))
466- then throw(Q)
502+func bJ (bK,R) = if ((aA() != bK))
503+ then throw(R)
467504 else true
468505
469506
470-func bC (bD,Q) = if ((bD != B))
471- then throw(Q)
507+func bL (bM,R) = if ((bM != D))
508+ then throw(R)
472509 else true
473510
474511
475-func bE (bB,Q) = if ((aZ() != bB))
476- then throw(Q)
512+func bN (bK,R) = if ((bf() != bK))
513+ then throw(R)
477514 else true
478515
479516
480-func bF (bd,Q) = if ((size(bc(bd)) > 0))
481- then throw(Q)
517+func bO (bj,R) = if ((size(bi(bj)) > 0))
518+ then throw(R)
482519 else true
483520
484521
485-func bG (bH,bI,Q) = if ((bI == L))
486- then if ((size(bH) != 64))
487- then throw(Q)
522+func bP (bQ,bR,R) = if ((bR == M))
523+ then if ((size(bQ) != 64))
524+ then throw(R)
488525 else true
489- else if ((bI == M))
490- then if ((size(bH) != 65))
491- then throw(Q)
526+ else if ((bR == N))
527+ then if ((size(bQ) != 65))
528+ then throw(R)
492529 else true
493- else throw((Q + ": inv alg"))
530+ else throw((R + ": inv alg"))
494531
495532
496-func bJ (bK,bI,Q) = if ((bI == L))
497- then if ((size(bK) != 32))
498- then throw(Q)
533+func bS (bT,bR,R) = if ((bR == M))
534+ then if ((size(bT) != 32))
535+ then throw(R)
499536 else true
500- else if ((bI == M))
501- then if ((size(bK) != 20))
502- then throw(Q)
537+ else if ((bR == N))
538+ then if ((size(bT) != 20))
539+ then throw(R)
503540 else true
504- else throw((Q + ": inv alg"))
541+ else throw((R + ": inv alg"))
505542
506543
507-func bL (bd,bH,bK,bI,Q) = {
508- let bM = if ((bI == L))
509- then sigVerify(bd, bH, bK)
510- else if ((bI == M))
544+func bU (bj,bQ,bT,bR,R) = {
545+ let bV = if ((bR == M))
546+ then sigVerify(bj, bQ, bT)
547+ else if ((bR == N))
511548 then {
512- let bN = keccak256_16Kb((N + bd))
513- (takeRight(keccak256_16Kb(ecrecover(bN, bH)), 20) == bK)
549+ let bW = keccak256_16Kb((O + bj))
550+ (takeRight(keccak256_16Kb(ecrecover(bW, bQ)), 20) == bT)
514551 }
515- else throw((Q + ": inv alg"))
516- if (!(bM))
517- then throw(Q)
552+ else throw((R + ": inv alg"))
553+ if (!(bV))
554+ then throw(R)
518555 else true
519556 }
520557
521558
522-func bO (bK,bP,bI,Q) = {
523- let bQ = if ((bI == L))
524- then toString(addressFromPublicKey(bK))
525- else if ((bI == M))
526- then ("0x" + toBase16String(bK))
527- else throw((Q + ": inv alg"))
528- if ((bQ != bP))
529- then throw(Q)
559+func bX (bT,bY,bR,R) = {
560+ let bZ = if ((bR == M))
561+ then toString(addressFromPublicKey(bT))
562+ else if ((bR == N))
563+ then ("0x" + toBase16String(bT))
564+ else throw((R + ": inv alg"))
565+ if ((bZ != bY))
566+ then throw(R)
530567 else true
531568 }
532569
533570
534-@Callable(bR)
535-func init (au,ak,ax,aA,bb,bi) = {
536- let bS = if (if (if (if (if (if (if (if (bm(bR.caller))
537- then bp()
571+@Callable(ca)
572+func init (aw,am,az,aC,bh,bo) = {
573+ let cb = if (if (if (if (if (if (if (if (bv(ca.caller))
574+ then by()
538575 else false)
539- then bo()
576+ then bx()
540577 else false)
541- then O(au, "init: invalid executor")
578+ then P(aw, "init: invalid executor")
542579 else false)
543- then O(ak, "init: invalid pauser")
580+ then P(am, "init: invalid pauser")
544581 else false)
545- then O(ax, "init: invalid accountStorage")
582+ then P(az, "init: invalid accountStorage")
546583 else false)
547- then O(aA, "init: invalid wavesVault")
584+ then P(aC, "init: invalid wavesVault")
548585 else false)
549- then O(bb, "init: invalid sequencer")
586+ then P(bh, "init: invalid sequencer")
550587 else false)
551- then O(bi, "init: invalid vaultAdapter")
588+ then P(bo, "init: invalid vaultAdapter")
552589 else false
553- if ((bS == bS))
554- then $Tuple2(((((((ad(true) ++ at(addressFromStringValue(au))) ++ aj(addressFromStringValue(ak))) ++ aw(addressFromStringValue(ax))) ++ az(addressFromStringValue(aA))) ++ ba(addressFromStringValue(bb))) ++ bh(addressFromStringValue(bi))), unit)
590+ if ((cb == cb))
591+ then $Tuple2(((((((af(true) ++ av(addressFromStringValue(aw))) ++ al(addressFromStringValue(am))) ++ ay(addressFromStringValue(az))) ++ aB(addressFromStringValue(aC))) ++ bg(addressFromStringValue(bh))) ++ bn(addressFromStringValue(bo))), unit)
555592 else throw("Strict value is not equal to itself.")
556593 }
557594
558595
559596
560-@Callable(bR)
561-func deposit (ar,bP,bT,ap,aF,bU) = {
562- let bV = valueOrErrorMessage(parseInt(ap), "deposit: chainId not int")
563- let bW = valueOrErrorMessage(parseBigInt(bU), "deposit: amount not int")
564- let bS = if (if (if (if (if (if (bq())
565- then br()
597+@Callable(ca)
598+func deposit (at,bY,cc,ar,aH,aS) = {
599+ let cd = valueOrErrorMessage(parseInt(ar), "deposit: chainId not int")
600+ let ce = valueOrErrorMessage(parseBigInt(aS), "deposit: amount not int")
601+ let cb = if (if (if (if (if (if (bz())
602+ then bA()
566603 else false)
567- then bw(bV, "deposit: invalid chainId")
604+ then bF(cd, "deposit: invalid chainId")
568605 else false)
569- then Y(bP, "deposit: invalid from")
606+ then aa(bY, "deposit: invalid from")
570607 else false)
571- then Y(bT, "deposit: invalid to")
608+ then aa(cc, "deposit: invalid to")
572609 else false)
573- then by(bV, aF, "deposit: invalid asset")
610+ then bH(cd, aH, "deposit: invalid asset")
574611 else false)
575- then X(bW, I, "deposit: invalid amount")
612+ then Y(ce, J, "deposit: invalid amount")
576613 else false
577- if ((bS == bS))
614+ if ((cb == cb))
578615 then {
579- let bX = if ((aB(bV) == E))
580- then bA(bR.caller, "deposit: invalid waves vault")
581- else if (bu(bR.caller, "deposit: invalid executor"))
582- then bv(bV, ar, "deposit: invalid caller contract")
616+ let cf = if ((aD(cd) == G))
617+ then bJ(ca.caller, "deposit: invalid waves vault")
618+ else if (bD(ca.caller, "deposit: invalid executor"))
619+ then bE(cd, at, "deposit: invalid caller contract")
583620 else false
584- if ((bX == bX))
621+ if ((cf == cf))
585622 then {
586- let bY = (aI(bV, aF) + bW)
587- let bZ = aE(bV, aF)
588- let ca = (aN(bZ) + bW)
589- let cb = invoke(av(), w, [bT, bZ, bU], nil)
590- if ((cb == cb))
591- then $Tuple2((aJ(bV, aF, bY) ++ aO(bZ, ca)), unit)
623+ let cg = (aK(cd, aH) + ce)
624+ let ch = aG(cd, aH)
625+ let ci = (aT(ch) + ce)
626+ let cj = invoke(ax(), y, [cc, ch, aS], nil)
627+ if ((cj == cj))
628+ then $Tuple2((aL(cd, aH, cg) ++ aU(ch, ci)), unit)
592629 else throw("Strict value is not equal to itself.")
593630 }
594631 else throw("Strict value is not equal to itself.")
598635
599636
600637
601-@Callable(bR)
602-func requestWithdrawal (ar,bP,bT,cc,cd,aF,bU) = {
603- let ce = valueOrErrorMessage(parseInt(cc), "requestWithdrawal: fromChainId not int")
604- let cf = valueOrErrorMessage(parseInt(cd), "requestWithdrawal: toChainId not int")
605- let bW = valueOrErrorMessage(parseBigInt(bU), "requestWithdrawal: amount not int")
606- let bS = if (if (if (if (if (if (bq())
607- then bw(ce, "requestWithdrawal: invalid fromChainId")
638+@Callable(ca)
639+func requestWithdrawal (at,bY,cc,ck,cl,aH,aS) = {
640+ let cm = valueOrErrorMessage(parseInt(ck), "requestWithdrawal: fromChainId not int")
641+ let cn = valueOrErrorMessage(parseInt(cl), "requestWithdrawal: toChainId not int")
642+ let ce = valueOrErrorMessage(parseBigInt(aS), "requestWithdrawal: amount not int")
643+ let cb = if (if (if (if (if (if (bz())
644+ then bF(cm, "requestWithdrawal: invalid fromChainId")
608645 else false)
609- then bw(cf, "requestWithdrawal: invalid toChainId")
646+ then bF(cn, "requestWithdrawal: invalid toChainId")
610647 else false)
611- then Y(bP, "requestWithdrawal: invalid from")
648+ then aa(bY, "requestWithdrawal: invalid from")
612649 else false)
613- then Y(bT, "requestWithdrawal: invalid to")
650+ then aa(cc, "requestWithdrawal: invalid to")
614651 else false)
615- then by(cf, aF, "requestWithdrawal: invalid asset")
652+ then bH(cn, aH, "requestWithdrawal: invalid asset")
616653 else false)
617- then X(bW, I, "requestWithdrawal: invalid amount")
654+ then Y(ce, J, "requestWithdrawal: invalid amount")
618655 else false
619- if ((bS == bS))
656+ if ((cb == cb))
620657 then {
621- let bX = if ((aB(ce) == E))
622- then bA(bR.caller, "requestWithdrawal: invalid waves vault")
623- else if (bu(bR.caller, "requestWithdrawal: invalid executor"))
624- then bv(ce, ar, "requestWithdrawal: invalid caller contract")
658+ let cf = if ((aD(cm) == G))
659+ then bJ(ca.caller, "requestWithdrawal: invalid waves vault")
660+ else if (bD(ca.caller, "requestWithdrawal: invalid executor"))
661+ then bE(cm, at, "requestWithdrawal: invalid caller contract")
625662 else false
626- if ((bX == bX))
663+ if ((cf == cf))
627664 then {
628- let bZ = aE(cf, aF)
629- let cg = {
630- let R = invoke(av(), x, [bP, F, bZ], nil)
631- if ($isInstanceOf(R, "String"))
665+ let ch = aG(cn, aH)
666+ let co = {
667+ let S = invoke(ax(), z, [bY, H, ch], nil)
668+ if ($isInstanceOf(S, "String"))
632669 then {
633- let S = R
634- parseBigIntValue(S)
670+ let T = S
671+ parseBigIntValue(T)
635672 }
636673 else throw("requestWithdrawal: can't take available balance from storage")
637674 }
638- if ((cg == cg))
675+ if ((co == co))
639676 then {
640- let ch = aL(cf, aF)
641- let ci = if (if ((cg >= bW))
642- then ((aI(cf, aF) - ch) >= bW)
677+ let cp = aN(cn, aH)
678+ let cq = aP(ch, bY)
679+ let cr = if (if (((co - cq) >= ce))
680+ then ((aK(cn, aH) - cp) >= ce)
643681 else false)
644- then $Tuple3(B, invoke(av(), y, [bP, F, G, bZ, bU], nil), aM(cf, aF, (ch + bW)))
645- else $Tuple3(D, unit, nil)
646- if ((ci == ci))
647- then {
648- let cj = ci._3
649- let ck = ci._2
650- let cl = ci._1
651- let cm = aP()
652- let cn = $Tuple8(bP, bT, cf, aF, bW, height, toBase58String(bR.transactionId), cl)
653- $Tuple2(((aU(cm, cn) ++ aQ((cm + 1))) ++ cj), cm)
654- }
655- else throw("Strict value is not equal to itself.")
682+ then $Tuple2(D, (aO(cn, aH, (cp + ce)) ++ aR(ch, bY, (ce + cq))))
683+ else $Tuple2(F, nil)
684+ let cs = cr._1
685+ let ct = cr._2
686+ let cu = aV()
687+ let cv = $Tuple8(bY, cc, cn, aH, ce, height, toBase58String(ca.transactionId), cs)
688+ $Tuple2(((ba(cu, cv) ++ aW((cu + 1))) ++ ct), cu)
656689 }
657690 else throw("Strict value is not equal to itself.")
658691 }
663696
664697
665698
666-@Callable(bR)
667-func executeWithdrawal (ar,ap,co) = {
668- let bV = valueOrErrorMessage(parseInt(ap), "executeWithdrawal: chainId not int")
669- let cp = valueOrErrorMessage(parseInt(co), "executeWithdrawal: requestWithdrawalId not int")
670- let cm = aP()
671- let bS = if (if (bq())
672- then bw(bV, "executeWithdrawal: invalid chainId")
699+@Callable(ca)
700+func executeWithdrawal (at,ar,cw) = {
701+ let cd = valueOrErrorMessage(parseInt(ar), "executeWithdrawal: chainId not int")
702+ let cx = valueOrErrorMessage(parseInt(cw), "executeWithdrawal: requestWithdrawalId not int")
703+ let cu = aV()
704+ let cb = if (if (bz())
705+ then bF(cd, "executeWithdrawal: invalid chainId")
673706 else false)
674- then T(cp, 0, (cm - 1), "executeWithdrawal: invalid requestWithdrawalId")
707+ then U(cx, 0, (cu - 1), "executeWithdrawal: invalid requestWithdrawalId")
675708 else false
676- if ((bS == bS))
709+ if ((cb == cb))
677710 then {
678- let bX = if ((aB(bV) == E))
679- then bA(bR.caller, "executeWithdrawal: invalid waves vault")
680- else if (bu(bR.caller, "executeWithdrawal: invalid executor"))
681- then bv(bV, ar, "executeWithdrawal: invalid caller contract")
711+ let cf = if ((aD(cd) == G))
712+ then bJ(ca.caller, "executeWithdrawal: invalid waves vault")
713+ else if (bD(ca.caller, "executeWithdrawal: invalid executor"))
714+ then bE(cd, at, "executeWithdrawal: invalid caller contract")
682715 else false
683- if ((bX == bX))
716+ if ((cf == cf))
684717 then {
685- let cq = aR(cp)
686- let cr = cq._1
687- let cs = cq._2
688- let ct = cq._3
689- let cu = cq._4
690- let cv = cq._5
691- let cw = cq._6
692- let cl = cq._8
693- let bY = (aI(ct, cu) - cv)
694- let cx = (aL(ct, cu) - cv)
695- let bZ = aE(ct, cu)
696- let ca = (aN(bZ) - cv)
697- let cy = if (if (if (if (X(bY, I, "executeWithdrawal: negative newAssetReserves"))
698- then X(cx, I, "executeWithdrawal: negative newAssetReservesLocked")
718+ let cy = aX(cx)
719+ let cz = cy._1
720+ let cA = cy._2
721+ let cB = cy._3
722+ let cC = cy._4
723+ let cD = cy._5
724+ let cE = cy._6
725+ let cs = cy._8
726+ let cg = (aK(cB, cC) - cD)
727+ let cF = (aN(cB, cC) - cD)
728+ let ch = aG(cB, cC)
729+ let ci = (aT(ch) - cD)
730+ let cG = (aP(ch, cz) - cD)
731+ let cH = if (if (if (if (if (Y(cg, J, "executeWithdrawal: negative newAssetReserves"))
732+ then Y(cF, J, "executeWithdrawal: negative newAssetReservesLocked")
699733 else false)
700- then X(ca, I, "executeWithdrawal: negative newCurrencyReserves")
734+ then Y(ci, J, "executeWithdrawal: negative newCurrencyReserves")
701735 else false)
702- then T((height - cw), aW(), H, "executeWithdrawal: too early to execute")
736+ then Y(cG, J, "executeWithdrawal: negative newUserLockedCurrency")
703737 else false)
704- then bC(cl, "executeWithdrawal: request is resolved")
738+ then U((height - cE), bc(), I, "executeWithdrawal: too early to execute")
739+ else false)
740+ then bL(cs, "executeWithdrawal: request is resolved")
705741 else false
706- if ((cy == cy))
742+ if ((cH == cH))
707743 then {
708- let ck = invoke(av(), z, [cr, bZ, toString(cv)], nil)
709- if ((ck == ck))
744+ let cI = invoke(ax(), B, [cz, ch, toString(cD)], nil)
745+ if ((cI == cI))
710746 then {
711- let cz = if ((aB(ct) == E))
712- then invoke(ay(), z, [cs, cu, toString(cv)], nil)
713- else invoke(bg(), z, [ct, cu, toString(cv), cs], nil)
714- if ((cz == cz))
747+ let cJ = if ((aD(cB) == G))
748+ then invoke(aA(), B, [cA, cC, toString(cD)], nil)
749+ else invoke(bm(), B, [cB, cC, toString(cD), cA], nil)
750+ if ((cJ == cJ))
715751 then {
716- let cA = $Tuple8(cq._1, cq._2, cq._3, cq._4, cq._5, cq._6, cq._7, C)
717- $Tuple2((((aJ(ct, cu, bY) ++ aM(ct, cu, cx)) ++ aO(bZ, ca)) ++ aU(cp, cA)), unit)
752+ let cK = $Tuple8(cy._1, cy._2, cy._3, cy._4, cy._5, cy._6, cy._7, E)
753+ $Tuple2(((((aL(cB, cC, cg) ++ aO(cB, cC, cF)) ++ aU(ch, ci)) ++ aR(ch, cz, cG)) ++ ba(cx, cK)), unit)
718754 }
719755 else throw("Strict value is not equal to itself.")
720756 }
729765
730766
731767
732-@Callable(bR)
733-func withdraw (bP,bT,cd,aF,bU,cB,bK,bI,bH) = {
734- let cf = valueOrErrorMessage(parseInt(cd), "withdraw: toChainId not int")
735- let bW = valueOrErrorMessage(parseBigInt(bU), "withdraw: amount not int")
736- let cC = valueOrErrorMessage(parseInt(cB), "withdraw: timestamp not int")
737- let cD = valueOrErrorMessage(parseInt(bI), "withdraw: alg not int")
738- let cE = fromBase58String(bK)
739- let cF = fromBase58String(bH)
740- let bS = if (if (if (if (if (if (if (if (if (if (bq())
741- then bE(bR.caller, "withdraw: invalid sequencer")
768+@Callable(ca)
769+func rejectWithdrawal (cw) = {
770+ let cx = valueOrErrorMessage(parseInt(cw), "rejectWithdrawal: requestWithdrawalId not int")
771+ let cu = aV()
772+ let cb = if (if (bz())
773+ then bN(ca.caller, "rejectWithdrawal: invalid sequencer")
742774 else false)
743- then Y(bP, "withdraw: invalid from")
775+ then U(cx, 0, (cu - 1), "rejectWithdrawal: invalid requestWithdrawalId")
776+ else false
777+ if ((cb == cb))
778+ then {
779+ let cy = aX(cx)
780+ let cz = cy._1
781+ let cA = cy._2
782+ let cB = cy._3
783+ let cC = cy._4
784+ let cD = cy._5
785+ let cE = cy._6
786+ let cs = cy._8
787+ let ch = aG(cB, cC)
788+ let cF = (aN(cB, cC) - cD)
789+ let cG = (aP(ch, cz) - cD)
790+ let cf = if (if (Y(cF, J, "rejectWithdrawal: negative newAssetReservesLocked"))
791+ then Y(cG, J, "rejectWithdrawal: negative newUserLockedCurrency")
792+ else false)
793+ then bL(cs, "rejectWithdrawal: request is resolved")
794+ else false
795+ if ((cf == cf))
796+ then {
797+ let co = {
798+ let S = invoke(ax(), z, [cz, H, ch], nil)
799+ if ($isInstanceOf(S, "String"))
800+ then {
801+ let T = S
802+ parseBigIntValue(T)
803+ }
804+ else throw("rejectWithdrawal: can't take available balance from storage")
805+ }
806+ if ((co == co))
807+ then if ((cD > co))
808+ then {
809+ let cK = $Tuple8(cy._1, cy._2, cy._3, cy._4, cy._5, cy._6, cy._7, F)
810+ $Tuple2(((aO(cB, cC, cF) ++ aR(ch, cz, cG)) ++ ba(cx, cK)), true)
811+ }
812+ else $Tuple2(nil, false)
813+ else throw("Strict value is not equal to itself.")
814+ }
815+ else throw("Strict value is not equal to itself.")
816+ }
817+ else throw("Strict value is not equal to itself.")
818+ }
819+
820+
821+
822+@Callable(ca)
823+func withdraw (bY,cc,cl,aH,aS,cL,cM,bT,bR,bQ) = {
824+ let cn = valueOrErrorMessage(parseInt(cl), "withdraw: toChainId not int")
825+ let ce = valueOrErrorMessage(parseBigInt(aS), "withdraw: amount not int")
826+ let cN = valueOrErrorMessage(parseBigInt(cL), "withdraw: gaslessFee not int")
827+ let cO = valueOrErrorMessage(parseInt(cM), "withdraw: timestamp not int")
828+ let cP = valueOrErrorMessage(parseInt(bR), "withdraw: alg not int")
829+ let cQ = fromBase58String(bT)
830+ let cR = fromBase58String(bQ)
831+ let cb = if (if (if (if (if (if (if (if (if (if (if (bz())
832+ then bN(ca.caller, "withdraw: invalid sequencer")
744833 else false)
745- then Y(bT, "withdraw: invalid to")
834+ then aa(bY, "withdraw: invalid from")
746835 else false)
747- then bw(cf, "withdraw: invalid toChainId")
836+ then aa(cc, "withdraw: invalid to")
748837 else false)
749- then by(cf, aF, "withdraw: invalid asset")
838+ then bF(cn, "withdraw: invalid toChainId")
750839 else false)
751- then X(bW, I, "withdraw: invalid amount")
840+ then bH(cn, aH, "withdraw: invalid asset")
752841 else false)
753- then T((cC + K), lastBlock.timestamp, H, "withdraw: invalid timestamp")
842+ then Y(ce, J, "withdraw: invalid amount")
754843 else false)
755- then bJ(cE, cD, "withdraw: inv public key")
844+ then Z(cN, J, ce, "withdraw: invalid gaslessFee")
756845 else false)
757- then bG(cF, cD, "withdraw: inv sig format")
846+ then U((cO + L), lastBlock.timestamp, I, "withdraw: invalid timestamp")
758847 else false)
759- then bO(cE, bP, cD, "withdraw: public key mismatch")
848+ then bS(cQ, cP, "withdraw: inv public key")
849+ else false)
850+ then bP(cR, cP, "withdraw: inv sig format")
851+ else false)
852+ then bX(cQ, bY, cP, "withdraw: public key mismatch")
760853 else false
761- if ((bS == bS))
854+ if ((cb == cb))
762855 then {
763- let cG = ((((((((((toBytes(size(bP)) + toBytes(bP)) + toBytes(size(bT))) + toBytes(bT)) + toBytes(cf)) + toBytes(size(aF))) + toBytes(aF)) + toBytes(bW)) + toBytes(cC)) + cE) + toBytes(cD))
764- let cH = keccak256_16Kb(cG)
765- let bZ = aE(cf, aF)
766- let cg = {
767- let R = invoke(av(), x, [bP, F, bZ], nil)
768- if ($isInstanceOf(R, "String"))
856+ let cS = (((((((((((toBytes(size(bY)) + toBytes(bY)) + toBytes(size(cc))) + toBytes(cc)) + toBytes(cn)) + toBytes(size(aH))) + toBytes(aH)) + toBytes(ce)) + toBytes(cN)) + toBytes(cO)) + cQ) + toBytes(cP))
857+ let cT = keccak256_16Kb(cS)
858+ let ch = aG(cn, aH)
859+ let co = {
860+ let S = invoke(ax(), z, [bY, H, ch], nil)
861+ if ($isInstanceOf(S, "String"))
769862 then {
770- let S = R
771- parseBigIntValue(S)
863+ let T = S
864+ parseBigIntValue(T)
772865 }
773866 else throw("withdraw: can't take available balance from storage")
774867 }
775- if ((cg == cg))
868+ if ((co == co))
776869 then {
777- let cI = aI(cf, aF)
778- let ch = aL(cf, aF)
779- let bX = if (if (if (bL(cH, cF, cE, cD, "withdraw: invalid sig"))
780- then bF(cH, "withdraw: already executed")
870+ let cU = aK(cn, aH)
871+ let cp = aN(cn, aH)
872+ let cV = (ce - cN)
873+ let cW = toString(cV)
874+ let cf = if (if (if (bU(cT, cR, cQ, cP, "withdraw: invalid sig"))
875+ then bO(cT, "withdraw: already executed")
781876 else false)
782- then X(cg, bW, "withdraw: insufficient balance")
877+ then Y(co, cV, "withdraw: insufficient balance")
783878 else false)
784- then X((cI - ch), bW, "withdraw: insufficient reserves")
879+ then Y((cU - cp), cV, "withdraw: insufficient reserves")
785880 else false
786- if ((bX == bX))
881+ if ((cf == cf))
787882 then {
788- let bY = (cI - bW)
789- let ca = (aN(bZ) - bW)
790- let cy = if (X(bY, I, "withdraw: negative newAssetReserves"))
791- then X(ca, I, "withdraw: negative newCurrencyReserves")
883+ let cg = (cU - cV)
884+ let ci = (aT(ch) - cV)
885+ let cH = if (Y(cg, J, "withdraw: negative newAssetReserves"))
886+ then Y(ci, J, "withdraw: negative newCurrencyReserves")
792887 else false
793- if ((cy == cy))
888+ if ((cH == cH))
794889 then {
795- let ck = invoke(av(), y, [bP, F, G, bZ, bU], nil)
796- if ((ck == ck))
890+ let cX = invoke(ax(), B, [bY, ch, aS], nil)
891+ if ((cX == cX))
797892 then {
798- let cJ = invoke(av(), z, [bP, bZ, bU], nil)
799- if ((cJ == cJ))
893+ let cY = invoke(ax(), y, [bs(), ch, cL], nil)
894+ if ((cY == cY))
800895 then {
801- let cz = if ((aB(cf) == E))
802- then invoke(ay(), z, [bT, aF, bU], nil)
803- else invoke(bg(), z, [cf, aF, bU, bT], nil)
804- if ((cz == cz))
805- then $Tuple2(((aJ(cf, aF, bY) ++ aO(bZ, ca)) ++ be(cH, toBase58String(bR.transactionId))), unit)
896+ let cJ = if ((aD(cn) == G))
897+ then invoke(aA(), B, [cc, aH, cW], nil)
898+ else invoke(bm(), B, [cn, aH, cW, cc, cL], nil)
899+ if ((cJ == cJ))
900+ then $Tuple2(((aL(cn, aH, cg) ++ aU(ch, ci)) ++ bk(cT, toBase58String(ca.transactionId))), unit)
806901 else throw("Strict value is not equal to itself.")
807902 }
808903 else throw("Strict value is not equal to itself.")
820915
821916
822917
823-@Callable(bR)
824-func depositStakingReward (ar,ap,aF,bU) = {
825- let bV = valueOrErrorMessage(parseInt(ap), "depositStakingReward: chainId not int")
826- let bW = valueOrErrorMessage(parseBigInt(bU), "depositStakingReward: amount not int")
827- let bS = if (if (if (if (bq())
828- then br()
918+@Callable(ca)
919+func depositStakingReward (at,ar,aH,aS) = {
920+ let cd = valueOrErrorMessage(parseInt(ar), "depositStakingReward: chainId not int")
921+ let ce = valueOrErrorMessage(parseBigInt(aS), "depositStakingReward: amount not int")
922+ let cb = if (if (if (if (bz())
923+ then bA()
829924 else false)
830- then bw(bV, "depositStakingReward: invalid chainId")
925+ then bF(cd, "depositStakingReward: invalid chainId")
831926 else false)
832- then by(bV, aF, "depositStakingReward: invalid asset")
927+ then bH(cd, aH, "depositStakingReward: invalid asset")
833928 else false)
834- then X(bW, I, "depositStakingReward: invalid amount")
929+ then Y(ce, J, "depositStakingReward: invalid amount")
835930 else false
836- if ((bS == bS))
931+ if ((cb == cb))
837932 then {
838- let bX = if ((aB(bV) == E))
839- then bA(bR.caller, "depositStakingReward: invalid waves vault")
840- else if (bu(bR.caller, "depositStakingReward: invalid executor"))
841- then bv(bV, ar, "depositStakingReward: invalid caller contract")
933+ let cf = if ((aD(cd) == G))
934+ then bJ(ca.caller, "depositStakingReward: invalid waves vault")
935+ else if (bD(ca.caller, "depositStakingReward: invalid executor"))
936+ then bE(cd, at, "depositStakingReward: invalid caller contract")
842937 else false
843- if ((bX == bX))
938+ if ((cf == cf))
844939 then {
845- let bY = (aI(bV, aF) + bW)
846- let bZ = aE(bV, aF)
847- let ca = (aN(bZ) + bW)
848- let cb = invoke(av(), A, [bj(), bZ, bU], nil)
849- if ((cb == cb))
850- then $Tuple2((aJ(bV, aF, bY) ++ aO(bZ, ca)), unit)
940+ let cg = (aK(cd, aH) + ce)
941+ let ch = aG(cd, aH)
942+ let ci = (aT(ch) + ce)
943+ let cj = invoke(ax(), C, [bp(), ch, aS], nil)
944+ if ((cj == cj))
945+ then $Tuple2((aL(cd, aH, cg) ++ aU(ch, ci)), unit)
851946 else throw("Strict value is not equal to itself.")
852947 }
853948 else throw("Strict value is not equal to itself.")
857952
858953
859954
860-@Callable(bR)
861-func addChain (ap,aD,ar) = {
862- let bS = if (if (if (if (if (bm(bR.caller))
863- then bq()
955+@Callable(ca)
956+func addChain (ar,aF,at) = {
957+ let cb = if (if (if (if (if (bv(ca.caller))
958+ then bz()
864959 else false)
865- then T(ap, 0, H, "addChain: invalid chainId")
960+ then U(ar, 0, I, "addChain: invalid chainId")
866961 else false)
867- then Y(aD, "addChain: invalid name")
962+ then aa(aF, "addChain: invalid name")
868963 else false)
869- then Y(ar, "addChain: invalid callerContract")
964+ then aa(at, "addChain: invalid callerContract")
870965 else false)
871- then bx(ap, "addChain: already exists")
966+ then bG(ar, "addChain: already exists")
872967 else false
873- if ((bS == bS))
874- then $Tuple2((aC(ap, aD) ++ aq(ap, ar)), unit)
968+ if ((cb == cb))
969+ then $Tuple2((aE(ar, aF) ++ as(ar, at)), unit)
875970 else throw("Strict value is not equal to itself.")
876971 }
877972
878973
879974
880-@Callable(bR)
881-func addAsset (ap,aF,aH) = {
882- let bS = if (if (if (if (if (bm(bR.caller))
883- then bq()
975+@Callable(ca)
976+func addAsset (ar,aH,aJ) = {
977+ let cb = if (if (if (if (if (bv(ca.caller))
978+ then bz()
884979 else false)
885- then bw(ap, "addAsset: invalid chainId")
980+ then bF(ar, "addAsset: invalid chainId")
886981 else false)
887- then Y(aF, "addAsset: invalid asset")
982+ then aa(aH, "addAsset: invalid asset")
888983 else false)
889- then Y(aH, "addAsset: invalid currency")
984+ then aa(aJ, "addAsset: invalid currency")
890985 else false)
891- then bz(ap, aF, "addAsset: already exists")
986+ then bI(ar, aH, "addAsset: already exists")
892987 else false
893- if ((bS == bS))
894- then $Tuple2(aG(ap, aF, aH), unit)
988+ if ((cb == cb))
989+ then $Tuple2(aI(ar, aH, aJ), unit)
895990 else throw("Strict value is not equal to itself.")
896991 }
897992
898993
899994
900-@Callable(bR)
901-func setRequestWithdrawalBlockDelay (aY) = {
902- let bS = if (if (bm(bR.caller))
903- then bq()
995+@Callable(ca)
996+func setRequestWithdrawalBlockDelay (be) = {
997+ let cb = if (if (bv(ca.caller))
998+ then bz()
904999 else false)
905- then T(aY, 0, H, "setRequestWithdrawalBlockDelay: invalid delay")
1000+ then U(be, 0, I, "setRequestWithdrawalBlockDelay: invalid delay")
9061001 else false
907- if ((bS == bS))
908- then $Tuple2(aX(aY), unit)
1002+ if ((cb == cb))
1003+ then $Tuple2(bd(be), unit)
9091004 else throw("Strict value is not equal to itself.")
9101005 }
9111006
9121007
9131008
914-@Callable(bR)
915-func updateRewardDistributor (cK) = {
916- let bS = if (if (bm(bR.caller))
917- then bq()
1009+@Callable(ca)
1010+func updateRewardDistributor (cZ) = {
1011+ let cb = if (if (bv(ca.caller))
1012+ then bz()
9181013 else false)
919- then Y(cK, "updateRewardDistributor: invalid rewardDistributor")
1014+ then aa(cZ, "updateRewardDistributor: invalid rewardDistributor")
9201015 else false
921- if ((bS == bS))
922- then $Tuple2(bk(cK), unit)
1016+ if ((cb == cb))
1017+ then $Tuple2(bq(cZ), unit)
9231018 else throw("Strict value is not equal to itself.")
9241019 }
9251020
9261021
9271022
928-@Callable(bR)
929-func pause () = {
930- let bS = if (if (bt(bR.caller))
931- then bq()
1023+@Callable(ca)
1024+func updateRelayerFeeRecipient (bu) = {
1025+ let cb = if (if (bv(ca.caller))
1026+ then bz()
9321027 else false)
933- then br()
1028+ then aa(bu, "updateRelayerFeeRecipient: invalid relayerFeeRecipient")
9341029 else false
935- if ((bS == bS))
936- then $Tuple2(ag(true), unit)
1030+ if ((cb == cb))
1031+ then $Tuple2(bt(bu), unit)
9371032 else throw("Strict value is not equal to itself.")
9381033 }
9391034
9401035
9411036
942-@Callable(bR)
943-func unpause () = {
944- let bS = if (if (bt(bR.caller))
945- then bq()
1037+@Callable(ca)
1038+func pause () = {
1039+ let cb = if (if (bC(ca.caller))
1040+ then bz()
9461041 else false)
947- then bs()
1042+ then bA()
9481043 else false
949- if ((bS == bS))
950- then $Tuple2(ag(false), unit)
1044+ if ((cb == cb))
1045+ then $Tuple2(ai(true), unit)
9511046 else throw("Strict value is not equal to itself.")
9521047 }
9531048
9541049
9551050
956-@Callable(bR)
957-func updatePauser (ak) = {
958- let bS = if (if (bm(bR.caller))
959- then bq()
1051+@Callable(ca)
1052+func unpause () = {
1053+ let cb = if (if (bC(ca.caller))
1054+ then bz()
9601055 else false)
961- then O(ak, "updatePauser: invalid pauser")
1056+ then bB()
9621057 else false
963- if ((bS == bS))
964- then $Tuple2(aj(addressFromStringValue(ak)), unit)
1058+ if ((cb == cb))
1059+ then $Tuple2(ai(false), unit)
9651060 else throw("Strict value is not equal to itself.")
9661061 }
9671062
9681063
9691064
970-@Callable(bR)
971-func setMultisig (an) = {
972- let bS = if (bm(bR.caller))
973- then O(an, "setMultisig: invalid multisig")
1065+@Callable(ca)
1066+func updatePauser (am) = {
1067+ let cb = if (if (bv(ca.caller))
1068+ then bz()
1069+ else false)
1070+ then P(am, "updatePauser: invalid pauser")
9741071 else false
975- if ((bS == bS))
976- then $Tuple2(am(addressFromStringValue(an)), unit)
1072+ if ((cb == cb))
1073+ then $Tuple2(al(addressFromStringValue(am)), unit)
9771074 else throw("Strict value is not equal to itself.")
9781075 }
9791076
9801077
981-@Verifier(cL)
982-func cM () = {
983- let R = getString(b)
984- if ($isInstanceOf(R, "String"))
1078+
1079+@Callable(ca)
1080+func setMultisig (ap) = {
1081+ let cb = if (bv(ca.caller))
1082+ then P(ap, "setMultisig: invalid multisig")
1083+ else false
1084+ if ((cb == cb))
1085+ then $Tuple2(ao(addressFromStringValue(ap)), unit)
1086+ else throw("Strict value is not equal to itself.")
1087+ }
1088+
1089+
1090+@Verifier(da)
1091+func db () = {
1092+ let S = getString(b)
1093+ if ($isInstanceOf(S, "String"))
9851094 then {
986- let cN = R
987- valueOrElse(getBoolean(addressFromStringValue(cN), makeString([c, toString(this), toBase58String(cL.id)], a)), false)
1095+ let dc = S
1096+ valueOrElse(getBoolean(addressFromStringValue(dc), makeString([c, toString(this), toBase58String(da.id)], a)), false)
9881097 }
989- else sigVerify(cL.bodyBytes, cL.proofs[0], cL.senderPublicKey)
1098+ else sigVerify(da.bodyBytes, da.proofs[0], da.senderPublicKey)
9901099 }
9911100
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 7 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let a = "__"
55
66 let b = "MULTISIG"
77
88 let c = "STATUS"
99
1010 let d = "INIT"
1111
1212 let e = "PAUSED"
1313
1414 let f = "PAUSER"
1515
1616 let g = "EXECUTOR"
1717
1818 let h = "CALLER_CONTRACT"
1919
2020 let i = "WAVES_VAULT"
2121
2222 let j = "ACCOUNT_STORAGE"
2323
2424 let k = "CHAIN"
2525
2626 let l = "ASSET_CURRENCY"
2727
2828 let m = "ASSET_RESERVES"
2929
3030 let n = "ASSET_RESERVES_LOCKED"
3131
32-let o = "CURRENCY_RESERVES"
32+let o = "USER_LOCKED_CURRENCY"
3333
34-let p = "REQUEST_WITHDRAWAL_SIZE"
34+let p = "CURRENCY_RESERVES"
3535
36-let q = "REQUEST_WITHDRAWAL"
36+let q = "REQUEST_WITHDRAWAL_SIZE"
3737
38-let r = "REQUEST_WITHDRAWAL_BLOCK_DELAY"
38+let r = "REQUEST_WITHDRAWAL"
3939
40-let s = "SEQUENCER"
40+let s = "REQUEST_WITHDRAWAL_BLOCK_DELAY"
4141
42-let t = "WITHDRAWAL_HASH"
42+let t = "SEQUENCER"
4343
44-let u = "VAULT_ADAPTER"
44+let u = "WITHDRAWAL_HASH"
4545
46-let v = "REWARD_DISTRIBUTOR"
46+let v = "VAULT_ADAPTER"
4747
48-let w = "deposit"
48+let w = "REWARD_DISTRIBUTOR"
4949
50-let x = "getUserBalance"
50+let x = "RELAYER_FEE_RECIPIENT"
5151
52-let y = "internalTransfer"
52+let y = "deposit"
5353
54-let z = "withdraw"
54+let z = "getUserBalance"
5555
56-let A = "depositStakingReward"
56+let A = "internalTransfer"
5757
58-let B = 0
58+let B = "withdraw"
5959
60-let C = 1
60+let C = "depositStakingReward"
6161
62-let D = 2
62+let D = 0
6363
64-let E = "WAVES"
64+let E = 1
6565
66-let F = "SPOT"
66+let F = 2
6767
68-let G = "WITHDRAWALS"
68+let G = "WAVES"
6969
70-let H = 9223372036854775807
70+let H = "SPOT"
7171
72-let I = toBigInt(0)
72+let I = 9223372036854775807
7373
74-let J = toBigInt(1)
74+let J = toBigInt(0)
7575
76-let K = 86400000
76+let K = toBigInt(1)
7777
78-let L = 1
78+let L = 86400000
7979
80-let M = 2
80+let M = 1
8181
82-let N = base58'G5Nu92G2p7moXW9qjjN3na7gtq4dWCeVdaSjry'
82+let N = 2
8383
84-func O (P,Q) = {
85- let R = addressFromString(P)
86- if ($isInstanceOf(R, "Address"))
84+let O = base58'G5Nu92G2p7moXW9qjjN3na7gtq4dWCeVdaSjry'
85+
86+func P (Q,R) = {
87+ let S = addressFromString(Q)
88+ if ($isInstanceOf(S, "Address"))
8789 then {
88- let S = R
90+ let T = S
8991 true
9092 }
91- else throw(Q)
93+ else throw(R)
9294 }
9395
9496
95-func T (U,V,W,Q) = if (if ((V > U))
97+func U (V,W,X,R) = if (if ((W > V))
9698 then true
97- else (U > W))
98- then throw(Q)
99+ else (V > X))
100+ then throw(R)
99101 else true
100102
101103
102-func X (U,V,Q) = if ((V > U))
103- then throw(Q)
104+func Y (V,W,R) = if ((W > V))
105+ then throw(R)
104106 else true
105107
106108
107-func Y (U,Q) = if (if ((0 >= size(U)))
109+func Z (V,W,X,R) = if (if ((W > V))
108110 then true
109- else contains(U, a))
110- then throw(Q)
111+ else (V > X))
112+ then throw(R)
111113 else true
112114
113115
114-func Z (aa,ab,Q) = if ((aa != ab))
115- then throw(Q)
116+func aa (V,R) = if (if ((0 >= size(V)))
117+ then true
118+ else contains(V, a))
119+ then throw(R)
116120 else true
117121
118122
119-func ac () = {
120- let R = getBoolean(d)
121- if ($isInstanceOf(R, "Boolean"))
123+func ab (ac,ad,R) = if ((ac != ad))
124+ then throw(R)
125+ else true
126+
127+
128+func ae () = {
129+ let S = getBoolean(d)
130+ if ($isInstanceOf(S, "Boolean"))
122131 then {
123- let S = R
124- S
132+ let T = S
133+ T
125134 }
126135 else false
127136 }
128137
129138
130-func ad (ae) = [BooleanEntry(d, ae)]
139+func af (ag) = [BooleanEntry(d, ag)]
131140
132141
133-func af () = {
134- let R = getBoolean(e)
135- if ($isInstanceOf(R, "Boolean"))
142+func ah () = {
143+ let S = getBoolean(e)
144+ if ($isInstanceOf(S, "Boolean"))
136145 then {
137- let S = R
138- S
146+ let T = S
147+ T
139148 }
140149 else false
141150 }
142151
143152
144-func ag (ah) = [BooleanEntry(e, ah)]
153+func ai (aj) = [BooleanEntry(e, aj)]
145154
146155
147-func ai () = {
148- let R = getString(f)
149- if ($isInstanceOf(R, "String"))
156+func ak () = {
157+ let S = getString(f)
158+ if ($isInstanceOf(S, "String"))
150159 then {
151- let S = R
152- addressFromStringValue(S)
160+ let T = S
161+ addressFromStringValue(T)
153162 }
154163 else Address(base58'')
155164 }
156165
157166
158-func aj (ak) = [StringEntry(f, toString(ak))]
167+func al (am) = [StringEntry(f, toString(am))]
159168
160169
161-func al () = {
162- let R = getString(b)
163- if ($isInstanceOf(R, "String"))
170+func an () = {
171+ let S = getString(b)
172+ if ($isInstanceOf(S, "String"))
164173 then {
165- let S = R
166- addressFromStringValue(S)
174+ let T = S
175+ addressFromStringValue(T)
167176 }
168177 else Address(base58'')
169178 }
170179
171180
172-func am (an) = [StringEntry(b, toString(an))]
181+func ao (ap) = [StringEntry(b, toString(ap))]
173182
174183
175-func ao (ap) = {
176- let R = getString(makeString([h, toString(ap)], a))
177- if ($isInstanceOf(R, "String"))
184+func aq (ar) = {
185+ let S = getString(makeString([h, toString(ar)], a))
186+ if ($isInstanceOf(S, "String"))
178187 then {
179- let S = R
180- S
188+ let T = S
189+ T
181190 }
182191 else ""
183192 }
184193
185194
186-func aq (ap,ar) = [StringEntry(makeString([h, toString(ap)], a), ar)]
195+func as (ar,at) = [StringEntry(makeString([h, toString(ar)], a), at)]
187196
188197
189-func as () = {
190- let R = getString(g)
191- if ($isInstanceOf(R, "String"))
198+func au () = {
199+ let S = getString(g)
200+ if ($isInstanceOf(S, "String"))
192201 then {
193- let S = R
194- addressFromStringValue(S)
202+ let T = S
203+ addressFromStringValue(T)
195204 }
196205 else Address(base58'')
197206 }
198207
199208
200-func at (au) = [StringEntry(g, toString(au))]
209+func av (aw) = [StringEntry(g, toString(aw))]
201210
202211
203-func av () = {
204- let R = getString(j)
205- if ($isInstanceOf(R, "String"))
212+func ax () = {
213+ let S = getString(j)
214+ if ($isInstanceOf(S, "String"))
206215 then {
207- let S = R
208- addressFromStringValue(S)
216+ let T = S
217+ addressFromStringValue(T)
209218 }
210219 else Address(base58'')
211220 }
212221
213222
214-func aw (ax) = [StringEntry(j, toString(ax))]
223+func ay (az) = [StringEntry(j, toString(az))]
215224
216225
217-func ay () = {
218- let R = getString(i)
219- if ($isInstanceOf(R, "String"))
226+func aA () = {
227+ let S = getString(i)
228+ if ($isInstanceOf(S, "String"))
220229 then {
221- let S = R
222- addressFromStringValue(S)
230+ let T = S
231+ addressFromStringValue(T)
223232 }
224233 else Address(base58'')
225234 }
226235
227236
228-func az (aA) = [StringEntry(i, toString(aA))]
237+func aB (aC) = [StringEntry(i, toString(aC))]
229238
230239
231-func aB (ap) = {
232- let R = getString(makeString([k, toString(ap)], a))
233- if ($isInstanceOf(R, "String"))
240+func aD (ar) = {
241+ let S = getString(makeString([k, toString(ar)], a))
242+ if ($isInstanceOf(S, "String"))
234243 then {
235- let S = R
236- S
244+ let T = S
245+ T
237246 }
238247 else ""
239248 }
240249
241250
242-func aC (ap,aD) = [StringEntry(makeString([k, toString(ap)], a), aD)]
251+func aE (ar,aF) = [StringEntry(makeString([k, toString(ar)], a), aF)]
243252
244253
245-func aE (ap,aF) = {
246- let R = getString(makeString([l, toString(ap), aF], a))
247- if ($isInstanceOf(R, "String"))
254+func aG (ar,aH) = {
255+ let S = getString(makeString([l, toString(ar), aH], a))
256+ if ($isInstanceOf(S, "String"))
248257 then {
249- let S = R
250- S
258+ let T = S
259+ T
251260 }
252261 else ""
253262 }
254263
255264
256-func aG (ap,aF,aH) = [StringEntry(makeString([l, toString(ap), aF], a), aH)]
265+func aI (ar,aH,aJ) = [StringEntry(makeString([l, toString(ar), aH], a), aJ)]
257266
258267
259-func aI (ap,aF) = {
260- let R = getString(makeString([m, toString(ap), aF], a))
261- if ($isInstanceOf(R, "String"))
268+func aK (ar,aH) = {
269+ let S = getString(makeString([m, toString(ar), aH], a))
270+ if ($isInstanceOf(S, "String"))
262271 then {
263- let S = R
264- parseBigIntValue(S)
272+ let T = S
273+ parseBigIntValue(T)
265274 }
266- else I
275+ else J
267276 }
268277
269278
270-func aJ (ap,aF,aK) = [StringEntry(makeString([m, toString(ap), aF], a), toString(aK))]
279+func aL (ar,aH,aM) = [StringEntry(makeString([m, toString(ar), aH], a), toString(aM))]
271280
272281
273-func aL (ap,aF) = {
274- let R = getString(makeString([n, toString(ap), aF], a))
275- if ($isInstanceOf(R, "String"))
282+func aN (ar,aH) = {
283+ let S = getString(makeString([n, toString(ar), aH], a))
284+ if ($isInstanceOf(S, "String"))
276285 then {
277- let S = R
278- parseBigIntValue(S)
286+ let T = S
287+ parseBigIntValue(T)
279288 }
280- else I
289+ else J
281290 }
282291
283292
284-func aM (ap,aF,aK) = [StringEntry(makeString([n, toString(ap), aF], a), toString(aK))]
293+func aO (ar,aH,aM) = [StringEntry(makeString([n, toString(ar), aH], a), toString(aM))]
285294
286295
287-func aN (aH) = {
288- let R = getString(makeString([o, aH], a))
289- if ($isInstanceOf(R, "String"))
296+func aP (aJ,aQ) = {
297+ let S = getString(makeString([o, aJ, aQ], a))
298+ if ($isInstanceOf(S, "String"))
290299 then {
291- let S = R
292- parseBigIntValue(S)
300+ let T = S
301+ parseBigIntValue(T)
293302 }
294- else I
303+ else J
295304 }
296305
297306
298-func aO (aH,aK) = [StringEntry(makeString([o, aH], a), toString(aK))]
307+func aR (aJ,aQ,aS) = [StringEntry(makeString([o, aJ, aQ], a), toString(aS))]
299308
300309
301-func aP () = {
302- let R = getInteger(p)
303- if ($isInstanceOf(R, "Int"))
310+func aT (aJ) = {
311+ let S = getString(makeString([p, aJ], a))
312+ if ($isInstanceOf(S, "String"))
304313 then {
305- let S = R
306- S
314+ let T = S
315+ parseBigIntValue(T)
316+ }
317+ else J
318+ }
319+
320+
321+func aU (aJ,aM) = [StringEntry(makeString([p, aJ], a), toString(aM))]
322+
323+
324+func aV () = {
325+ let S = getInteger(q)
326+ if ($isInstanceOf(S, "Int"))
327+ then {
328+ let T = S
329+ T
307330 }
308331 else 0
309332 }
310333
311334
312-func aQ (U) = [IntegerEntry(p, U)]
335+func aW (V) = [IntegerEntry(q, V)]
313336
314337
315-func aR (aS) = {
316- let R = getString(makeString([q, toString(aS)], a))
317- if ($isInstanceOf(R, "String"))
338+func aX (aY) = {
339+ let S = getString(makeString([r, toString(aY)], a))
340+ if ($isInstanceOf(S, "String"))
318341 then {
319- let S = R
320- let aT = split(S, a)
321- $Tuple8(aT[0], aT[1], parseIntValue(aT[2]), aT[3], parseBigIntValue(aT[4]), parseIntValue(aT[5]), aT[6], parseIntValue(aT[7]))
342+ let T = S
343+ let aZ = split(T, a)
344+ $Tuple8(aZ[0], aZ[1], parseIntValue(aZ[2]), aZ[3], parseBigIntValue(aZ[4]), parseIntValue(aZ[5]), aZ[6], parseIntValue(aZ[7]))
322345 }
323- else $Tuple8("", "", 0, "", I, 0, "", B)
346+ else $Tuple8("", "", 0, "", J, 0, "", D)
324347 }
325348
326349
327-func aU (aS,aV) = [StringEntry(makeString([q, toString(aS)], a), makeString([aV._1, aV._2, toString(aV._3), aV._4, toString(aV._5), toString(aV._6), aV._7, toString(aV._8)], a))]
350+func ba (aY,bb) = [StringEntry(makeString([r, toString(aY)], a), makeString([bb._1, bb._2, toString(bb._3), bb._4, toString(bb._5), toString(bb._6), bb._7, toString(bb._8)], a))]
328351
329352
330-func aW () = {
331- let R = getInteger(r)
332- if ($isInstanceOf(R, "Int"))
353+func bc () = {
354+ let S = getInteger(s)
355+ if ($isInstanceOf(S, "Int"))
333356 then {
334- let S = R
335- S
357+ let T = S
358+ T
336359 }
337360 else 0
338361 }
339362
340363
341-func aX (aY) = [IntegerEntry(r, aY)]
364+func bd (be) = [IntegerEntry(s, be)]
342365
343366
344-func aZ () = {
345- let R = getString(s)
346- if ($isInstanceOf(R, "String"))
367+func bf () = {
368+ let S = getString(t)
369+ if ($isInstanceOf(S, "String"))
347370 then {
348- let S = R
349- addressFromStringValue(S)
371+ let T = S
372+ addressFromStringValue(T)
350373 }
351374 else Address(base58'')
352375 }
353376
354377
355-func ba (bb) = [StringEntry(s, toString(bb))]
378+func bg (bh) = [StringEntry(t, toString(bh))]
356379
357380
358-func bc (bd) = {
359- let R = getString(makeString([t, toBase58String(bd)], a))
360- if ($isInstanceOf(R, "String"))
381+func bi (bj) = {
382+ let S = getString(makeString([u, toBase58String(bj)], a))
383+ if ($isInstanceOf(S, "String"))
361384 then {
362- let S = R
363- S
385+ let T = S
386+ T
364387 }
365388 else ""
366389 }
367390
368391
369-func be (bd,bf) = [StringEntry(makeString([t, toBase58String(bd)], a), bf)]
392+func bk (bj,bl) = [StringEntry(makeString([u, toBase58String(bj)], a), bl)]
370393
371394
372-func bg () = {
373- let R = getString(u)
374- if ($isInstanceOf(R, "String"))
395+func bm () = {
396+ let S = getString(v)
397+ if ($isInstanceOf(S, "String"))
375398 then {
376- let S = R
377- addressFromStringValue(S)
399+ let T = S
400+ addressFromStringValue(T)
378401 }
379402 else Address(base58'')
380403 }
381404
382405
383-func bh (bi) = [StringEntry(u, toString(bi))]
406+func bn (bo) = [StringEntry(v, toString(bo))]
384407
385408
386-func bj () = {
387- let R = getString(v)
388- if ($isInstanceOf(R, "String"))
409+func bp () = {
410+ let S = getString(w)
411+ if ($isInstanceOf(S, "String"))
389412 then {
390- let S = R
391- S
413+ let T = S
414+ T
392415 }
393416 else ""
394417 }
395418
396419
397-func bk (bl) = [StringEntry(v, bl)]
420+func bq (br) = [StringEntry(w, br)]
398421
399422
400-func bm (bn) = if ((bn != this))
423+func bs () = {
424+ let S = getString(x)
425+ if ($isInstanceOf(S, "String"))
426+ then {
427+ let T = S
428+ T
429+ }
430+ else ""
431+ }
432+
433+
434+func bt (bu) = [StringEntry(x, bu)]
435+
436+
437+func bv (bw) = if ((bw != this))
401438 then throw("_onlyThisContract: revert")
402439 else true
403440
404441
405-func bo () = if ((al() == Address(base58'')))
442+func bx () = if ((an() == Address(base58'')))
406443 then throw("_whenMultisigSet: revert")
407444 else true
408445
409446
410-func bp () = if (ac())
447+func by () = if (ae())
411448 then throw("_whenNotInitialized: revert")
412449 else true
413450
414451
415-func bq () = if (!(ac()))
452+func bz () = if (!(ae()))
416453 then throw("_whenInitialized: revert")
417454 else true
418455
419456
420-func br () = if (af())
457+func bA () = if (ah())
421458 then throw("_whenNotPaused: revert")
422459 else true
423460
424461
425-func bs () = if (!(af()))
462+func bB () = if (!(ah()))
426463 then throw("_whenPaused: revert")
427464 else true
428465
429466
430-func bt (bn) = if ((bn != ai()))
467+func bC (bw) = if ((bw != ak()))
431468 then throw("_onlyPauser: revert")
432469 else true
433470
434471
435-func bu (U,Q) = if ((U != as()))
436- then throw(Q)
472+func bD (V,R) = if ((V != au()))
473+ then throw(R)
437474 else true
438475
439476
440-func bv (ap,ar,Q) = if ((ao(ap) != ar))
441- then throw(Q)
477+func bE (ar,at,R) = if ((aq(ar) != at))
478+ then throw(R)
442479 else true
443480
444481
445-func bw (ap,Q) = if ((0 >= size(aB(ap))))
446- then throw(Q)
482+func bF (ar,R) = if ((0 >= size(aD(ar))))
483+ then throw(R)
447484 else true
448485
449486
450-func bx (ap,Q) = if ((size(aB(ap)) > 0))
451- then throw(Q)
487+func bG (ar,R) = if ((size(aD(ar)) > 0))
488+ then throw(R)
452489 else true
453490
454491
455-func by (ap,aF,Q) = if ((0 >= size(aE(ap, aF))))
456- then throw(Q)
492+func bH (ar,aH,R) = if ((0 >= size(aG(ar, aH))))
493+ then throw(R)
457494 else true
458495
459496
460-func bz (ap,aF,Q) = if ((size(aE(ap, aF)) > 0))
461- then throw(Q)
497+func bI (ar,aH,R) = if ((size(aG(ar, aH)) > 0))
498+ then throw(R)
462499 else true
463500
464501
465-func bA (bB,Q) = if ((ay() != bB))
466- then throw(Q)
502+func bJ (bK,R) = if ((aA() != bK))
503+ then throw(R)
467504 else true
468505
469506
470-func bC (bD,Q) = if ((bD != B))
471- then throw(Q)
507+func bL (bM,R) = if ((bM != D))
508+ then throw(R)
472509 else true
473510
474511
475-func bE (bB,Q) = if ((aZ() != bB))
476- then throw(Q)
512+func bN (bK,R) = if ((bf() != bK))
513+ then throw(R)
477514 else true
478515
479516
480-func bF (bd,Q) = if ((size(bc(bd)) > 0))
481- then throw(Q)
517+func bO (bj,R) = if ((size(bi(bj)) > 0))
518+ then throw(R)
482519 else true
483520
484521
485-func bG (bH,bI,Q) = if ((bI == L))
486- then if ((size(bH) != 64))
487- then throw(Q)
522+func bP (bQ,bR,R) = if ((bR == M))
523+ then if ((size(bQ) != 64))
524+ then throw(R)
488525 else true
489- else if ((bI == M))
490- then if ((size(bH) != 65))
491- then throw(Q)
526+ else if ((bR == N))
527+ then if ((size(bQ) != 65))
528+ then throw(R)
492529 else true
493- else throw((Q + ": inv alg"))
530+ else throw((R + ": inv alg"))
494531
495532
496-func bJ (bK,bI,Q) = if ((bI == L))
497- then if ((size(bK) != 32))
498- then throw(Q)
533+func bS (bT,bR,R) = if ((bR == M))
534+ then if ((size(bT) != 32))
535+ then throw(R)
499536 else true
500- else if ((bI == M))
501- then if ((size(bK) != 20))
502- then throw(Q)
537+ else if ((bR == N))
538+ then if ((size(bT) != 20))
539+ then throw(R)
503540 else true
504- else throw((Q + ": inv alg"))
541+ else throw((R + ": inv alg"))
505542
506543
507-func bL (bd,bH,bK,bI,Q) = {
508- let bM = if ((bI == L))
509- then sigVerify(bd, bH, bK)
510- else if ((bI == M))
544+func bU (bj,bQ,bT,bR,R) = {
545+ let bV = if ((bR == M))
546+ then sigVerify(bj, bQ, bT)
547+ else if ((bR == N))
511548 then {
512- let bN = keccak256_16Kb((N + bd))
513- (takeRight(keccak256_16Kb(ecrecover(bN, bH)), 20) == bK)
549+ let bW = keccak256_16Kb((O + bj))
550+ (takeRight(keccak256_16Kb(ecrecover(bW, bQ)), 20) == bT)
514551 }
515- else throw((Q + ": inv alg"))
516- if (!(bM))
517- then throw(Q)
552+ else throw((R + ": inv alg"))
553+ if (!(bV))
554+ then throw(R)
518555 else true
519556 }
520557
521558
522-func bO (bK,bP,bI,Q) = {
523- let bQ = if ((bI == L))
524- then toString(addressFromPublicKey(bK))
525- else if ((bI == M))
526- then ("0x" + toBase16String(bK))
527- else throw((Q + ": inv alg"))
528- if ((bQ != bP))
529- then throw(Q)
559+func bX (bT,bY,bR,R) = {
560+ let bZ = if ((bR == M))
561+ then toString(addressFromPublicKey(bT))
562+ else if ((bR == N))
563+ then ("0x" + toBase16String(bT))
564+ else throw((R + ": inv alg"))
565+ if ((bZ != bY))
566+ then throw(R)
530567 else true
531568 }
532569
533570
534-@Callable(bR)
535-func init (au,ak,ax,aA,bb,bi) = {
536- let bS = if (if (if (if (if (if (if (if (bm(bR.caller))
537- then bp()
571+@Callable(ca)
572+func init (aw,am,az,aC,bh,bo) = {
573+ let cb = if (if (if (if (if (if (if (if (bv(ca.caller))
574+ then by()
538575 else false)
539- then bo()
576+ then bx()
540577 else false)
541- then O(au, "init: invalid executor")
578+ then P(aw, "init: invalid executor")
542579 else false)
543- then O(ak, "init: invalid pauser")
580+ then P(am, "init: invalid pauser")
544581 else false)
545- then O(ax, "init: invalid accountStorage")
582+ then P(az, "init: invalid accountStorage")
546583 else false)
547- then O(aA, "init: invalid wavesVault")
584+ then P(aC, "init: invalid wavesVault")
548585 else false)
549- then O(bb, "init: invalid sequencer")
586+ then P(bh, "init: invalid sequencer")
550587 else false)
551- then O(bi, "init: invalid vaultAdapter")
588+ then P(bo, "init: invalid vaultAdapter")
552589 else false
553- if ((bS == bS))
554- then $Tuple2(((((((ad(true) ++ at(addressFromStringValue(au))) ++ aj(addressFromStringValue(ak))) ++ aw(addressFromStringValue(ax))) ++ az(addressFromStringValue(aA))) ++ ba(addressFromStringValue(bb))) ++ bh(addressFromStringValue(bi))), unit)
590+ if ((cb == cb))
591+ then $Tuple2(((((((af(true) ++ av(addressFromStringValue(aw))) ++ al(addressFromStringValue(am))) ++ ay(addressFromStringValue(az))) ++ aB(addressFromStringValue(aC))) ++ bg(addressFromStringValue(bh))) ++ bn(addressFromStringValue(bo))), unit)
555592 else throw("Strict value is not equal to itself.")
556593 }
557594
558595
559596
560-@Callable(bR)
561-func deposit (ar,bP,bT,ap,aF,bU) = {
562- let bV = valueOrErrorMessage(parseInt(ap), "deposit: chainId not int")
563- let bW = valueOrErrorMessage(parseBigInt(bU), "deposit: amount not int")
564- let bS = if (if (if (if (if (if (bq())
565- then br()
597+@Callable(ca)
598+func deposit (at,bY,cc,ar,aH,aS) = {
599+ let cd = valueOrErrorMessage(parseInt(ar), "deposit: chainId not int")
600+ let ce = valueOrErrorMessage(parseBigInt(aS), "deposit: amount not int")
601+ let cb = if (if (if (if (if (if (bz())
602+ then bA()
566603 else false)
567- then bw(bV, "deposit: invalid chainId")
604+ then bF(cd, "deposit: invalid chainId")
568605 else false)
569- then Y(bP, "deposit: invalid from")
606+ then aa(bY, "deposit: invalid from")
570607 else false)
571- then Y(bT, "deposit: invalid to")
608+ then aa(cc, "deposit: invalid to")
572609 else false)
573- then by(bV, aF, "deposit: invalid asset")
610+ then bH(cd, aH, "deposit: invalid asset")
574611 else false)
575- then X(bW, I, "deposit: invalid amount")
612+ then Y(ce, J, "deposit: invalid amount")
576613 else false
577- if ((bS == bS))
614+ if ((cb == cb))
578615 then {
579- let bX = if ((aB(bV) == E))
580- then bA(bR.caller, "deposit: invalid waves vault")
581- else if (bu(bR.caller, "deposit: invalid executor"))
582- then bv(bV, ar, "deposit: invalid caller contract")
616+ let cf = if ((aD(cd) == G))
617+ then bJ(ca.caller, "deposit: invalid waves vault")
618+ else if (bD(ca.caller, "deposit: invalid executor"))
619+ then bE(cd, at, "deposit: invalid caller contract")
583620 else false
584- if ((bX == bX))
621+ if ((cf == cf))
585622 then {
586- let bY = (aI(bV, aF) + bW)
587- let bZ = aE(bV, aF)
588- let ca = (aN(bZ) + bW)
589- let cb = invoke(av(), w, [bT, bZ, bU], nil)
590- if ((cb == cb))
591- then $Tuple2((aJ(bV, aF, bY) ++ aO(bZ, ca)), unit)
623+ let cg = (aK(cd, aH) + ce)
624+ let ch = aG(cd, aH)
625+ let ci = (aT(ch) + ce)
626+ let cj = invoke(ax(), y, [cc, ch, aS], nil)
627+ if ((cj == cj))
628+ then $Tuple2((aL(cd, aH, cg) ++ aU(ch, ci)), unit)
592629 else throw("Strict value is not equal to itself.")
593630 }
594631 else throw("Strict value is not equal to itself.")
595632 }
596633 else throw("Strict value is not equal to itself.")
597634 }
598635
599636
600637
601-@Callable(bR)
602-func requestWithdrawal (ar,bP,bT,cc,cd,aF,bU) = {
603- let ce = valueOrErrorMessage(parseInt(cc), "requestWithdrawal: fromChainId not int")
604- let cf = valueOrErrorMessage(parseInt(cd), "requestWithdrawal: toChainId not int")
605- let bW = valueOrErrorMessage(parseBigInt(bU), "requestWithdrawal: amount not int")
606- let bS = if (if (if (if (if (if (bq())
607- then bw(ce, "requestWithdrawal: invalid fromChainId")
638+@Callable(ca)
639+func requestWithdrawal (at,bY,cc,ck,cl,aH,aS) = {
640+ let cm = valueOrErrorMessage(parseInt(ck), "requestWithdrawal: fromChainId not int")
641+ let cn = valueOrErrorMessage(parseInt(cl), "requestWithdrawal: toChainId not int")
642+ let ce = valueOrErrorMessage(parseBigInt(aS), "requestWithdrawal: amount not int")
643+ let cb = if (if (if (if (if (if (bz())
644+ then bF(cm, "requestWithdrawal: invalid fromChainId")
608645 else false)
609- then bw(cf, "requestWithdrawal: invalid toChainId")
646+ then bF(cn, "requestWithdrawal: invalid toChainId")
610647 else false)
611- then Y(bP, "requestWithdrawal: invalid from")
648+ then aa(bY, "requestWithdrawal: invalid from")
612649 else false)
613- then Y(bT, "requestWithdrawal: invalid to")
650+ then aa(cc, "requestWithdrawal: invalid to")
614651 else false)
615- then by(cf, aF, "requestWithdrawal: invalid asset")
652+ then bH(cn, aH, "requestWithdrawal: invalid asset")
616653 else false)
617- then X(bW, I, "requestWithdrawal: invalid amount")
654+ then Y(ce, J, "requestWithdrawal: invalid amount")
618655 else false
619- if ((bS == bS))
656+ if ((cb == cb))
620657 then {
621- let bX = if ((aB(ce) == E))
622- then bA(bR.caller, "requestWithdrawal: invalid waves vault")
623- else if (bu(bR.caller, "requestWithdrawal: invalid executor"))
624- then bv(ce, ar, "requestWithdrawal: invalid caller contract")
658+ let cf = if ((aD(cm) == G))
659+ then bJ(ca.caller, "requestWithdrawal: invalid waves vault")
660+ else if (bD(ca.caller, "requestWithdrawal: invalid executor"))
661+ then bE(cm, at, "requestWithdrawal: invalid caller contract")
625662 else false
626- if ((bX == bX))
663+ if ((cf == cf))
627664 then {
628- let bZ = aE(cf, aF)
629- let cg = {
630- let R = invoke(av(), x, [bP, F, bZ], nil)
631- if ($isInstanceOf(R, "String"))
665+ let ch = aG(cn, aH)
666+ let co = {
667+ let S = invoke(ax(), z, [bY, H, ch], nil)
668+ if ($isInstanceOf(S, "String"))
632669 then {
633- let S = R
634- parseBigIntValue(S)
670+ let T = S
671+ parseBigIntValue(T)
635672 }
636673 else throw("requestWithdrawal: can't take available balance from storage")
637674 }
638- if ((cg == cg))
675+ if ((co == co))
639676 then {
640- let ch = aL(cf, aF)
641- let ci = if (if ((cg >= bW))
642- then ((aI(cf, aF) - ch) >= bW)
677+ let cp = aN(cn, aH)
678+ let cq = aP(ch, bY)
679+ let cr = if (if (((co - cq) >= ce))
680+ then ((aK(cn, aH) - cp) >= ce)
643681 else false)
644- then $Tuple3(B, invoke(av(), y, [bP, F, G, bZ, bU], nil), aM(cf, aF, (ch + bW)))
645- else $Tuple3(D, unit, nil)
646- if ((ci == ci))
647- then {
648- let cj = ci._3
649- let ck = ci._2
650- let cl = ci._1
651- let cm = aP()
652- let cn = $Tuple8(bP, bT, cf, aF, bW, height, toBase58String(bR.transactionId), cl)
653- $Tuple2(((aU(cm, cn) ++ aQ((cm + 1))) ++ cj), cm)
654- }
655- else throw("Strict value is not equal to itself.")
682+ then $Tuple2(D, (aO(cn, aH, (cp + ce)) ++ aR(ch, bY, (ce + cq))))
683+ else $Tuple2(F, nil)
684+ let cs = cr._1
685+ let ct = cr._2
686+ let cu = aV()
687+ let cv = $Tuple8(bY, cc, cn, aH, ce, height, toBase58String(ca.transactionId), cs)
688+ $Tuple2(((ba(cu, cv) ++ aW((cu + 1))) ++ ct), cu)
656689 }
657690 else throw("Strict value is not equal to itself.")
658691 }
659692 else throw("Strict value is not equal to itself.")
660693 }
661694 else throw("Strict value is not equal to itself.")
662695 }
663696
664697
665698
666-@Callable(bR)
667-func executeWithdrawal (ar,ap,co) = {
668- let bV = valueOrErrorMessage(parseInt(ap), "executeWithdrawal: chainId not int")
669- let cp = valueOrErrorMessage(parseInt(co), "executeWithdrawal: requestWithdrawalId not int")
670- let cm = aP()
671- let bS = if (if (bq())
672- then bw(bV, "executeWithdrawal: invalid chainId")
699+@Callable(ca)
700+func executeWithdrawal (at,ar,cw) = {
701+ let cd = valueOrErrorMessage(parseInt(ar), "executeWithdrawal: chainId not int")
702+ let cx = valueOrErrorMessage(parseInt(cw), "executeWithdrawal: requestWithdrawalId not int")
703+ let cu = aV()
704+ let cb = if (if (bz())
705+ then bF(cd, "executeWithdrawal: invalid chainId")
673706 else false)
674- then T(cp, 0, (cm - 1), "executeWithdrawal: invalid requestWithdrawalId")
707+ then U(cx, 0, (cu - 1), "executeWithdrawal: invalid requestWithdrawalId")
675708 else false
676- if ((bS == bS))
709+ if ((cb == cb))
677710 then {
678- let bX = if ((aB(bV) == E))
679- then bA(bR.caller, "executeWithdrawal: invalid waves vault")
680- else if (bu(bR.caller, "executeWithdrawal: invalid executor"))
681- then bv(bV, ar, "executeWithdrawal: invalid caller contract")
711+ let cf = if ((aD(cd) == G))
712+ then bJ(ca.caller, "executeWithdrawal: invalid waves vault")
713+ else if (bD(ca.caller, "executeWithdrawal: invalid executor"))
714+ then bE(cd, at, "executeWithdrawal: invalid caller contract")
682715 else false
683- if ((bX == bX))
716+ if ((cf == cf))
684717 then {
685- let cq = aR(cp)
686- let cr = cq._1
687- let cs = cq._2
688- let ct = cq._3
689- let cu = cq._4
690- let cv = cq._5
691- let cw = cq._6
692- let cl = cq._8
693- let bY = (aI(ct, cu) - cv)
694- let cx = (aL(ct, cu) - cv)
695- let bZ = aE(ct, cu)
696- let ca = (aN(bZ) - cv)
697- let cy = if (if (if (if (X(bY, I, "executeWithdrawal: negative newAssetReserves"))
698- then X(cx, I, "executeWithdrawal: negative newAssetReservesLocked")
718+ let cy = aX(cx)
719+ let cz = cy._1
720+ let cA = cy._2
721+ let cB = cy._3
722+ let cC = cy._4
723+ let cD = cy._5
724+ let cE = cy._6
725+ let cs = cy._8
726+ let cg = (aK(cB, cC) - cD)
727+ let cF = (aN(cB, cC) - cD)
728+ let ch = aG(cB, cC)
729+ let ci = (aT(ch) - cD)
730+ let cG = (aP(ch, cz) - cD)
731+ let cH = if (if (if (if (if (Y(cg, J, "executeWithdrawal: negative newAssetReserves"))
732+ then Y(cF, J, "executeWithdrawal: negative newAssetReservesLocked")
699733 else false)
700- then X(ca, I, "executeWithdrawal: negative newCurrencyReserves")
734+ then Y(ci, J, "executeWithdrawal: negative newCurrencyReserves")
701735 else false)
702- then T((height - cw), aW(), H, "executeWithdrawal: too early to execute")
736+ then Y(cG, J, "executeWithdrawal: negative newUserLockedCurrency")
703737 else false)
704- then bC(cl, "executeWithdrawal: request is resolved")
738+ then U((height - cE), bc(), I, "executeWithdrawal: too early to execute")
739+ else false)
740+ then bL(cs, "executeWithdrawal: request is resolved")
705741 else false
706- if ((cy == cy))
742+ if ((cH == cH))
707743 then {
708- let ck = invoke(av(), z, [cr, bZ, toString(cv)], nil)
709- if ((ck == ck))
744+ let cI = invoke(ax(), B, [cz, ch, toString(cD)], nil)
745+ if ((cI == cI))
710746 then {
711- let cz = if ((aB(ct) == E))
712- then invoke(ay(), z, [cs, cu, toString(cv)], nil)
713- else invoke(bg(), z, [ct, cu, toString(cv), cs], nil)
714- if ((cz == cz))
747+ let cJ = if ((aD(cB) == G))
748+ then invoke(aA(), B, [cA, cC, toString(cD)], nil)
749+ else invoke(bm(), B, [cB, cC, toString(cD), cA], nil)
750+ if ((cJ == cJ))
715751 then {
716- let cA = $Tuple8(cq._1, cq._2, cq._3, cq._4, cq._5, cq._6, cq._7, C)
717- $Tuple2((((aJ(ct, cu, bY) ++ aM(ct, cu, cx)) ++ aO(bZ, ca)) ++ aU(cp, cA)), unit)
752+ let cK = $Tuple8(cy._1, cy._2, cy._3, cy._4, cy._5, cy._6, cy._7, E)
753+ $Tuple2(((((aL(cB, cC, cg) ++ aO(cB, cC, cF)) ++ aU(ch, ci)) ++ aR(ch, cz, cG)) ++ ba(cx, cK)), unit)
718754 }
719755 else throw("Strict value is not equal to itself.")
720756 }
721757 else throw("Strict value is not equal to itself.")
722758 }
723759 else throw("Strict value is not equal to itself.")
724760 }
725761 else throw("Strict value is not equal to itself.")
726762 }
727763 else throw("Strict value is not equal to itself.")
728764 }
729765
730766
731767
732-@Callable(bR)
733-func withdraw (bP,bT,cd,aF,bU,cB,bK,bI,bH) = {
734- let cf = valueOrErrorMessage(parseInt(cd), "withdraw: toChainId not int")
735- let bW = valueOrErrorMessage(parseBigInt(bU), "withdraw: amount not int")
736- let cC = valueOrErrorMessage(parseInt(cB), "withdraw: timestamp not int")
737- let cD = valueOrErrorMessage(parseInt(bI), "withdraw: alg not int")
738- let cE = fromBase58String(bK)
739- let cF = fromBase58String(bH)
740- let bS = if (if (if (if (if (if (if (if (if (if (bq())
741- then bE(bR.caller, "withdraw: invalid sequencer")
768+@Callable(ca)
769+func rejectWithdrawal (cw) = {
770+ let cx = valueOrErrorMessage(parseInt(cw), "rejectWithdrawal: requestWithdrawalId not int")
771+ let cu = aV()
772+ let cb = if (if (bz())
773+ then bN(ca.caller, "rejectWithdrawal: invalid sequencer")
742774 else false)
743- then Y(bP, "withdraw: invalid from")
775+ then U(cx, 0, (cu - 1), "rejectWithdrawal: invalid requestWithdrawalId")
776+ else false
777+ if ((cb == cb))
778+ then {
779+ let cy = aX(cx)
780+ let cz = cy._1
781+ let cA = cy._2
782+ let cB = cy._3
783+ let cC = cy._4
784+ let cD = cy._5
785+ let cE = cy._6
786+ let cs = cy._8
787+ let ch = aG(cB, cC)
788+ let cF = (aN(cB, cC) - cD)
789+ let cG = (aP(ch, cz) - cD)
790+ let cf = if (if (Y(cF, J, "rejectWithdrawal: negative newAssetReservesLocked"))
791+ then Y(cG, J, "rejectWithdrawal: negative newUserLockedCurrency")
792+ else false)
793+ then bL(cs, "rejectWithdrawal: request is resolved")
794+ else false
795+ if ((cf == cf))
796+ then {
797+ let co = {
798+ let S = invoke(ax(), z, [cz, H, ch], nil)
799+ if ($isInstanceOf(S, "String"))
800+ then {
801+ let T = S
802+ parseBigIntValue(T)
803+ }
804+ else throw("rejectWithdrawal: can't take available balance from storage")
805+ }
806+ if ((co == co))
807+ then if ((cD > co))
808+ then {
809+ let cK = $Tuple8(cy._1, cy._2, cy._3, cy._4, cy._5, cy._6, cy._7, F)
810+ $Tuple2(((aO(cB, cC, cF) ++ aR(ch, cz, cG)) ++ ba(cx, cK)), true)
811+ }
812+ else $Tuple2(nil, false)
813+ else throw("Strict value is not equal to itself.")
814+ }
815+ else throw("Strict value is not equal to itself.")
816+ }
817+ else throw("Strict value is not equal to itself.")
818+ }
819+
820+
821+
822+@Callable(ca)
823+func withdraw (bY,cc,cl,aH,aS,cL,cM,bT,bR,bQ) = {
824+ let cn = valueOrErrorMessage(parseInt(cl), "withdraw: toChainId not int")
825+ let ce = valueOrErrorMessage(parseBigInt(aS), "withdraw: amount not int")
826+ let cN = valueOrErrorMessage(parseBigInt(cL), "withdraw: gaslessFee not int")
827+ let cO = valueOrErrorMessage(parseInt(cM), "withdraw: timestamp not int")
828+ let cP = valueOrErrorMessage(parseInt(bR), "withdraw: alg not int")
829+ let cQ = fromBase58String(bT)
830+ let cR = fromBase58String(bQ)
831+ let cb = if (if (if (if (if (if (if (if (if (if (if (bz())
832+ then bN(ca.caller, "withdraw: invalid sequencer")
744833 else false)
745- then Y(bT, "withdraw: invalid to")
834+ then aa(bY, "withdraw: invalid from")
746835 else false)
747- then bw(cf, "withdraw: invalid toChainId")
836+ then aa(cc, "withdraw: invalid to")
748837 else false)
749- then by(cf, aF, "withdraw: invalid asset")
838+ then bF(cn, "withdraw: invalid toChainId")
750839 else false)
751- then X(bW, I, "withdraw: invalid amount")
840+ then bH(cn, aH, "withdraw: invalid asset")
752841 else false)
753- then T((cC + K), lastBlock.timestamp, H, "withdraw: invalid timestamp")
842+ then Y(ce, J, "withdraw: invalid amount")
754843 else false)
755- then bJ(cE, cD, "withdraw: inv public key")
844+ then Z(cN, J, ce, "withdraw: invalid gaslessFee")
756845 else false)
757- then bG(cF, cD, "withdraw: inv sig format")
846+ then U((cO + L), lastBlock.timestamp, I, "withdraw: invalid timestamp")
758847 else false)
759- then bO(cE, bP, cD, "withdraw: public key mismatch")
848+ then bS(cQ, cP, "withdraw: inv public key")
849+ else false)
850+ then bP(cR, cP, "withdraw: inv sig format")
851+ else false)
852+ then bX(cQ, bY, cP, "withdraw: public key mismatch")
760853 else false
761- if ((bS == bS))
854+ if ((cb == cb))
762855 then {
763- let cG = ((((((((((toBytes(size(bP)) + toBytes(bP)) + toBytes(size(bT))) + toBytes(bT)) + toBytes(cf)) + toBytes(size(aF))) + toBytes(aF)) + toBytes(bW)) + toBytes(cC)) + cE) + toBytes(cD))
764- let cH = keccak256_16Kb(cG)
765- let bZ = aE(cf, aF)
766- let cg = {
767- let R = invoke(av(), x, [bP, F, bZ], nil)
768- if ($isInstanceOf(R, "String"))
856+ let cS = (((((((((((toBytes(size(bY)) + toBytes(bY)) + toBytes(size(cc))) + toBytes(cc)) + toBytes(cn)) + toBytes(size(aH))) + toBytes(aH)) + toBytes(ce)) + toBytes(cN)) + toBytes(cO)) + cQ) + toBytes(cP))
857+ let cT = keccak256_16Kb(cS)
858+ let ch = aG(cn, aH)
859+ let co = {
860+ let S = invoke(ax(), z, [bY, H, ch], nil)
861+ if ($isInstanceOf(S, "String"))
769862 then {
770- let S = R
771- parseBigIntValue(S)
863+ let T = S
864+ parseBigIntValue(T)
772865 }
773866 else throw("withdraw: can't take available balance from storage")
774867 }
775- if ((cg == cg))
868+ if ((co == co))
776869 then {
777- let cI = aI(cf, aF)
778- let ch = aL(cf, aF)
779- let bX = if (if (if (bL(cH, cF, cE, cD, "withdraw: invalid sig"))
780- then bF(cH, "withdraw: already executed")
870+ let cU = aK(cn, aH)
871+ let cp = aN(cn, aH)
872+ let cV = (ce - cN)
873+ let cW = toString(cV)
874+ let cf = if (if (if (bU(cT, cR, cQ, cP, "withdraw: invalid sig"))
875+ then bO(cT, "withdraw: already executed")
781876 else false)
782- then X(cg, bW, "withdraw: insufficient balance")
877+ then Y(co, cV, "withdraw: insufficient balance")
783878 else false)
784- then X((cI - ch), bW, "withdraw: insufficient reserves")
879+ then Y((cU - cp), cV, "withdraw: insufficient reserves")
785880 else false
786- if ((bX == bX))
881+ if ((cf == cf))
787882 then {
788- let bY = (cI - bW)
789- let ca = (aN(bZ) - bW)
790- let cy = if (X(bY, I, "withdraw: negative newAssetReserves"))
791- then X(ca, I, "withdraw: negative newCurrencyReserves")
883+ let cg = (cU - cV)
884+ let ci = (aT(ch) - cV)
885+ let cH = if (Y(cg, J, "withdraw: negative newAssetReserves"))
886+ then Y(ci, J, "withdraw: negative newCurrencyReserves")
792887 else false
793- if ((cy == cy))
888+ if ((cH == cH))
794889 then {
795- let ck = invoke(av(), y, [bP, F, G, bZ, bU], nil)
796- if ((ck == ck))
890+ let cX = invoke(ax(), B, [bY, ch, aS], nil)
891+ if ((cX == cX))
797892 then {
798- let cJ = invoke(av(), z, [bP, bZ, bU], nil)
799- if ((cJ == cJ))
893+ let cY = invoke(ax(), y, [bs(), ch, cL], nil)
894+ if ((cY == cY))
800895 then {
801- let cz = if ((aB(cf) == E))
802- then invoke(ay(), z, [bT, aF, bU], nil)
803- else invoke(bg(), z, [cf, aF, bU, bT], nil)
804- if ((cz == cz))
805- then $Tuple2(((aJ(cf, aF, bY) ++ aO(bZ, ca)) ++ be(cH, toBase58String(bR.transactionId))), unit)
896+ let cJ = if ((aD(cn) == G))
897+ then invoke(aA(), B, [cc, aH, cW], nil)
898+ else invoke(bm(), B, [cn, aH, cW, cc, cL], nil)
899+ if ((cJ == cJ))
900+ then $Tuple2(((aL(cn, aH, cg) ++ aU(ch, ci)) ++ bk(cT, toBase58String(ca.transactionId))), unit)
806901 else throw("Strict value is not equal to itself.")
807902 }
808903 else throw("Strict value is not equal to itself.")
809904 }
810905 else throw("Strict value is not equal to itself.")
811906 }
812907 else throw("Strict value is not equal to itself.")
813908 }
814909 else throw("Strict value is not equal to itself.")
815910 }
816911 else throw("Strict value is not equal to itself.")
817912 }
818913 else throw("Strict value is not equal to itself.")
819914 }
820915
821916
822917
823-@Callable(bR)
824-func depositStakingReward (ar,ap,aF,bU) = {
825- let bV = valueOrErrorMessage(parseInt(ap), "depositStakingReward: chainId not int")
826- let bW = valueOrErrorMessage(parseBigInt(bU), "depositStakingReward: amount not int")
827- let bS = if (if (if (if (bq())
828- then br()
918+@Callable(ca)
919+func depositStakingReward (at,ar,aH,aS) = {
920+ let cd = valueOrErrorMessage(parseInt(ar), "depositStakingReward: chainId not int")
921+ let ce = valueOrErrorMessage(parseBigInt(aS), "depositStakingReward: amount not int")
922+ let cb = if (if (if (if (bz())
923+ then bA()
829924 else false)
830- then bw(bV, "depositStakingReward: invalid chainId")
925+ then bF(cd, "depositStakingReward: invalid chainId")
831926 else false)
832- then by(bV, aF, "depositStakingReward: invalid asset")
927+ then bH(cd, aH, "depositStakingReward: invalid asset")
833928 else false)
834- then X(bW, I, "depositStakingReward: invalid amount")
929+ then Y(ce, J, "depositStakingReward: invalid amount")
835930 else false
836- if ((bS == bS))
931+ if ((cb == cb))
837932 then {
838- let bX = if ((aB(bV) == E))
839- then bA(bR.caller, "depositStakingReward: invalid waves vault")
840- else if (bu(bR.caller, "depositStakingReward: invalid executor"))
841- then bv(bV, ar, "depositStakingReward: invalid caller contract")
933+ let cf = if ((aD(cd) == G))
934+ then bJ(ca.caller, "depositStakingReward: invalid waves vault")
935+ else if (bD(ca.caller, "depositStakingReward: invalid executor"))
936+ then bE(cd, at, "depositStakingReward: invalid caller contract")
842937 else false
843- if ((bX == bX))
938+ if ((cf == cf))
844939 then {
845- let bY = (aI(bV, aF) + bW)
846- let bZ = aE(bV, aF)
847- let ca = (aN(bZ) + bW)
848- let cb = invoke(av(), A, [bj(), bZ, bU], nil)
849- if ((cb == cb))
850- then $Tuple2((aJ(bV, aF, bY) ++ aO(bZ, ca)), unit)
940+ let cg = (aK(cd, aH) + ce)
941+ let ch = aG(cd, aH)
942+ let ci = (aT(ch) + ce)
943+ let cj = invoke(ax(), C, [bp(), ch, aS], nil)
944+ if ((cj == cj))
945+ then $Tuple2((aL(cd, aH, cg) ++ aU(ch, ci)), unit)
851946 else throw("Strict value is not equal to itself.")
852947 }
853948 else throw("Strict value is not equal to itself.")
854949 }
855950 else throw("Strict value is not equal to itself.")
856951 }
857952
858953
859954
860-@Callable(bR)
861-func addChain (ap,aD,ar) = {
862- let bS = if (if (if (if (if (bm(bR.caller))
863- then bq()
955+@Callable(ca)
956+func addChain (ar,aF,at) = {
957+ let cb = if (if (if (if (if (bv(ca.caller))
958+ then bz()
864959 else false)
865- then T(ap, 0, H, "addChain: invalid chainId")
960+ then U(ar, 0, I, "addChain: invalid chainId")
866961 else false)
867- then Y(aD, "addChain: invalid name")
962+ then aa(aF, "addChain: invalid name")
868963 else false)
869- then Y(ar, "addChain: invalid callerContract")
964+ then aa(at, "addChain: invalid callerContract")
870965 else false)
871- then bx(ap, "addChain: already exists")
966+ then bG(ar, "addChain: already exists")
872967 else false
873- if ((bS == bS))
874- then $Tuple2((aC(ap, aD) ++ aq(ap, ar)), unit)
968+ if ((cb == cb))
969+ then $Tuple2((aE(ar, aF) ++ as(ar, at)), unit)
875970 else throw("Strict value is not equal to itself.")
876971 }
877972
878973
879974
880-@Callable(bR)
881-func addAsset (ap,aF,aH) = {
882- let bS = if (if (if (if (if (bm(bR.caller))
883- then bq()
975+@Callable(ca)
976+func addAsset (ar,aH,aJ) = {
977+ let cb = if (if (if (if (if (bv(ca.caller))
978+ then bz()
884979 else false)
885- then bw(ap, "addAsset: invalid chainId")
980+ then bF(ar, "addAsset: invalid chainId")
886981 else false)
887- then Y(aF, "addAsset: invalid asset")
982+ then aa(aH, "addAsset: invalid asset")
888983 else false)
889- then Y(aH, "addAsset: invalid currency")
984+ then aa(aJ, "addAsset: invalid currency")
890985 else false)
891- then bz(ap, aF, "addAsset: already exists")
986+ then bI(ar, aH, "addAsset: already exists")
892987 else false
893- if ((bS == bS))
894- then $Tuple2(aG(ap, aF, aH), unit)
988+ if ((cb == cb))
989+ then $Tuple2(aI(ar, aH, aJ), unit)
895990 else throw("Strict value is not equal to itself.")
896991 }
897992
898993
899994
900-@Callable(bR)
901-func setRequestWithdrawalBlockDelay (aY) = {
902- let bS = if (if (bm(bR.caller))
903- then bq()
995+@Callable(ca)
996+func setRequestWithdrawalBlockDelay (be) = {
997+ let cb = if (if (bv(ca.caller))
998+ then bz()
904999 else false)
905- then T(aY, 0, H, "setRequestWithdrawalBlockDelay: invalid delay")
1000+ then U(be, 0, I, "setRequestWithdrawalBlockDelay: invalid delay")
9061001 else false
907- if ((bS == bS))
908- then $Tuple2(aX(aY), unit)
1002+ if ((cb == cb))
1003+ then $Tuple2(bd(be), unit)
9091004 else throw("Strict value is not equal to itself.")
9101005 }
9111006
9121007
9131008
914-@Callable(bR)
915-func updateRewardDistributor (cK) = {
916- let bS = if (if (bm(bR.caller))
917- then bq()
1009+@Callable(ca)
1010+func updateRewardDistributor (cZ) = {
1011+ let cb = if (if (bv(ca.caller))
1012+ then bz()
9181013 else false)
919- then Y(cK, "updateRewardDistributor: invalid rewardDistributor")
1014+ then aa(cZ, "updateRewardDistributor: invalid rewardDistributor")
9201015 else false
921- if ((bS == bS))
922- then $Tuple2(bk(cK), unit)
1016+ if ((cb == cb))
1017+ then $Tuple2(bq(cZ), unit)
9231018 else throw("Strict value is not equal to itself.")
9241019 }
9251020
9261021
9271022
928-@Callable(bR)
929-func pause () = {
930- let bS = if (if (bt(bR.caller))
931- then bq()
1023+@Callable(ca)
1024+func updateRelayerFeeRecipient (bu) = {
1025+ let cb = if (if (bv(ca.caller))
1026+ then bz()
9321027 else false)
933- then br()
1028+ then aa(bu, "updateRelayerFeeRecipient: invalid relayerFeeRecipient")
9341029 else false
935- if ((bS == bS))
936- then $Tuple2(ag(true), unit)
1030+ if ((cb == cb))
1031+ then $Tuple2(bt(bu), unit)
9371032 else throw("Strict value is not equal to itself.")
9381033 }
9391034
9401035
9411036
942-@Callable(bR)
943-func unpause () = {
944- let bS = if (if (bt(bR.caller))
945- then bq()
1037+@Callable(ca)
1038+func pause () = {
1039+ let cb = if (if (bC(ca.caller))
1040+ then bz()
9461041 else false)
947- then bs()
1042+ then bA()
9481043 else false
949- if ((bS == bS))
950- then $Tuple2(ag(false), unit)
1044+ if ((cb == cb))
1045+ then $Tuple2(ai(true), unit)
9511046 else throw("Strict value is not equal to itself.")
9521047 }
9531048
9541049
9551050
956-@Callable(bR)
957-func updatePauser (ak) = {
958- let bS = if (if (bm(bR.caller))
959- then bq()
1051+@Callable(ca)
1052+func unpause () = {
1053+ let cb = if (if (bC(ca.caller))
1054+ then bz()
9601055 else false)
961- then O(ak, "updatePauser: invalid pauser")
1056+ then bB()
9621057 else false
963- if ((bS == bS))
964- then $Tuple2(aj(addressFromStringValue(ak)), unit)
1058+ if ((cb == cb))
1059+ then $Tuple2(ai(false), unit)
9651060 else throw("Strict value is not equal to itself.")
9661061 }
9671062
9681063
9691064
970-@Callable(bR)
971-func setMultisig (an) = {
972- let bS = if (bm(bR.caller))
973- then O(an, "setMultisig: invalid multisig")
1065+@Callable(ca)
1066+func updatePauser (am) = {
1067+ let cb = if (if (bv(ca.caller))
1068+ then bz()
1069+ else false)
1070+ then P(am, "updatePauser: invalid pauser")
9741071 else false
975- if ((bS == bS))
976- then $Tuple2(am(addressFromStringValue(an)), unit)
1072+ if ((cb == cb))
1073+ then $Tuple2(al(addressFromStringValue(am)), unit)
9771074 else throw("Strict value is not equal to itself.")
9781075 }
9791076
9801077
981-@Verifier(cL)
982-func cM () = {
983- let R = getString(b)
984- if ($isInstanceOf(R, "String"))
1078+
1079+@Callable(ca)
1080+func setMultisig (ap) = {
1081+ let cb = if (bv(ca.caller))
1082+ then P(ap, "setMultisig: invalid multisig")
1083+ else false
1084+ if ((cb == cb))
1085+ then $Tuple2(ao(addressFromStringValue(ap)), unit)
1086+ else throw("Strict value is not equal to itself.")
1087+ }
1088+
1089+
1090+@Verifier(da)
1091+func db () = {
1092+ let S = getString(b)
1093+ if ($isInstanceOf(S, "String"))
9851094 then {
986- let cN = R
987- valueOrElse(getBoolean(addressFromStringValue(cN), makeString([c, toString(this), toBase58String(cL.id)], a)), false)
1095+ let dc = S
1096+ valueOrElse(getBoolean(addressFromStringValue(dc), makeString([c, toString(this), toBase58String(da.id)], a)), false)
9881097 }
989- else sigVerify(cL.bodyBytes, cL.proofs[0], cL.senderPublicKey)
1098+ else sigVerify(da.bodyBytes, da.proofs[0], da.senderPublicKey)
9901099 }
9911100

github/deemru/w8io/026f985 
362.08 ms