Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1vOcRf-00FhvF-1h for pgsql-hackers@arkaria.postgresql.org; Thu, 27 Nov 2025 13:54:05 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.96) (envelope-from ) id 1vOcRe-006VX7-0C for pgsql-hackers@arkaria.postgresql.org; Thu, 27 Nov 2025 13:54:02 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1vOLD1-001EoA-2s for pgsql-hackers@lists.postgresql.org; Wed, 26 Nov 2025 19:29:48 +0000 Received: from mail-il1-x12c.google.com ([2607:f8b0:4864:20::12c]) by magus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.96) (envelope-from ) id 1vOLCz-001evc-2i for pgsql-hackers@lists.postgresql.org; Wed, 26 Nov 2025 19:29:47 +0000 Received: by mail-il1-x12c.google.com with SMTP id e9e14a558f8ab-434a80e5463so721095ab.3 for ; Wed, 26 Nov 2025 11:29:45 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=illuminatedcomputing-com.20230601.gappssmtp.com; s=20230601; t=1764185383; x=1764790183; darn=lists.postgresql.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=tjWW6aycgU8QuRmAjWZBIrOm4r0zUgD05MIhQpqmauM=; b=Xco5KruWeJNGCRuN798cK8LC++layyKnbV9qFRspR9LsPloeTqzQS3Gxb37HJ2Od8y NUlj1BzBWpvGEhjojgjNV5nwTdii32MTgO4KEqcr6bnXVDcL43aXmhVKMEEjHhEnVbIc cavUSHi3mLTNsN7cETHIU3IFAsx7uzIvtI9bx+PPhxbgRwOEoQisEvFCK/UriDvECclo 4Qo22QVrOra2b4kTGf75p2xsHzjuwwy4y+d3Sbsdcuvi5+4atf52nT4yPL/V0Z12mR4o 7+j7phkNtz+1cQM9GQKn5CSQGCa8tAPX3SEpVOMghx+ByOoxQvLpOmJesZYDoP9xAEQW K7Bg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1764185383; x=1764790183; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-gg:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=tjWW6aycgU8QuRmAjWZBIrOm4r0zUgD05MIhQpqmauM=; b=eGLSYS1aLzqUDbblBch8ID8xww6A1uHg5ctk4t3iCiuVq7JsEc040wX9dH+9U2LtXp yHu5vAMYs42/TJpeJRW4CcpGK3ebA9jldUr+HzFKmbUEKCwVYMa6TkjRbHK+XfTitRFs 2K6Z+26A8Y8FBSEGt7iHF/3kUv7huOdlyAx+x1xsoJPbaE5Zq0ozDiy3wKtwlmeGrhDf AaWmOa5Guz1uO3/f3RDB5ecKyiU3llA3WdIKXp9dQ2yJ+i0uNlySfGgv25+u1sQkHmze 6IMXV0WTtuWdSQW3eLo2N83ShiUxMj6EHNyc/jR7kOxeOZL+UD6TtfhRaebYs5Xaka/j VC0g== X-Forwarded-Encrypted: i=1; AJvYcCWZY22wiBWsNZmshrNsoAF6pPpMSaK/K8M7lme17UcHJVbwaLYlMFnSRdy9G4CoDzxVmy6KVpX4D7Da8u9T@lists.postgresql.org X-Gm-Message-State: AOJu0YxQXyrZtyJB2Y+8ROy2OgdnOUPZCZSAs8kHW0/Ey5C+UEa5reOI PZCRbEPLaZmPhh0uQT/CgL7fTxxbXdWEd47x1wnhVfYMBa5OsY3LTZxjwW8RGotKyK4weHZqf49 /0ywY/gp9hoFOnQnS59F7QxNTxS1jklo+SO6805JARg== X-Gm-Gg: ASbGncurqni8SOEa5gq+0KPGkCJNE18+v2S5VAbTfi/SbIiS0P1JFiuUXOjhA8zuvLS wp+/q49HfMonY7DjCPMBdDFbGPbmr7P2J0FdOTa4iz2veOMx16CbDgug8lVfUC2dvm0EV5GaZ+J rKmBksihEsATYtyCjEuZY3kwddd6szo2HXwH6QCY7+sDg7EuKxWo5lJH8jlWU6tsD7WpfwDWley n6kt+d5Jag/YFTNhqmiVsVHKMvHDjmPpN/46d5mnJA3gj9Qm15PC47WBb2W3r5hNdsS X-Google-Smtp-Source: AGHT+IESWlbZqKP1VlN63XCQbLrJW/Xyy+nvSCmsNKbW5yJSfgqkCI5ej/5P7wdqQ2Q72BkpcmoGWRf+ogZF3UnDA3g= X-Received: by 2002:a05:6e02:2581:b0:435:a148:393a with SMTP id e9e14a558f8ab-435b99f1a69mr157124785ab.42.1764185383214; Wed, 26 Nov 2025 11:29:43 -0800 (PST) MIME-Version: 1.0 References: <2f5364f3-a1d3-4410-98f3-d788b11e6525@eisentraut.org> <1ace7bc1-9dd4-42c9-a473-517cef37cce9@eisentraut.org> <6F8D7105-BD1C-432D-84F3-BC688C0C8EDC@gmail.com> <9B820A52-D2F6-465D-B258-6FE8EBA59FAE@gmail.com> <53a13f97-340f-4d04-9dcc-77ca3ffb6a6a@eisentraut.org> In-Reply-To: <53a13f97-340f-4d04-9dcc-77ca3ffb6a6a@eisentraut.org> From: Paul A Jungwirth Date: Wed, 26 Nov 2025 11:29:30 -0800 X-Gm-Features: AWmQ_bmOAwk0sKdskEjRXpHM0hYP7YLBIQofM_bsWLjEbCRwbnKhwvhzxmq-uD4 Message-ID: Subject: Re: SQL:2011 Application Time Update & Delete To: Peter Eisentraut Cc: Chao Li , PostgreSQL Hackers Content-Type: multipart/mixed; boundary="000000000000160b4c0644846b0a" List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk --000000000000160b4c0644846b0a Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Sat, Nov 22, 2025 at 12:55=E2=80=AFAM Peter Eisentraut wrote: > > On 19.11.25 19:49, Paul A Jungwirth wrote: > > On Thu, Nov 13, 2025 at 8:10=E2=80=AFPM Chao Li wrote: > >> I continue reviewing ... > > > > Thank you for another detailed review! New patches are attached (v61), > > details below. > > I have committed 0001 and 0003 from this set. I will continue reviewing > the rest. Thanks! Rebased to e135e04457. --=20 Paul ~{:-) pj@illuminatedcomputing.com --000000000000160b4c0644846b0a Content-Type: text/x-patch; charset="US-ASCII"; name="v62-0002-Add-UPDATE-DELETE-FOR-PORTION-OF.patch" Content-Disposition: attachment; filename="v62-0002-Add-UPDATE-DELETE-FOR-PORTION-OF.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_migeesg21 RnJvbSA0ODQ1NzJhODlmY2JiMzViZWNkYTY0ZjY0NGQwOTQyMjM2MjE0NTEwIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiAiUGF1bCBBLiBKdW5nd2lydGgiIDxwakBpbGx1bWluYXRlZGNv bXB1dGluZy5jb20+CkRhdGU6IEZyaSwgMjUgSnVuIDIwMjEgMTg6NTQ6MzUgLTA3MDAKU3ViamVj dDogW1BBVENIIHY2MiAyLzhdIEFkZCBVUERBVEUvREVMRVRFIEZPUiBQT1JUSU9OIE9GCgotIEFk ZGVkIGJpc29uIHN1cHBvcnQgZm9yIEZPUiBQT1JUSU9OIE9GIHN5bnRheC4gVGhlIGJvdW5kcyBt dXN0IGJlCiAgY29uc3RhbnQsIHNvIHdlIGZvcmJpZCBjb2x1bW4gcmVmZXJlbmNlcywgc3VicXVl cmllcywgZXRjLiBXZSBkbwogIGFjY2VwdCBmdW5jdGlvbnMgbGlrZSBOT1coKS4KLSBBZGRlZCBs b2dpYyB0byBleGVjdXRvciB0byBpbnNlcnQgbmV3IHJvd3MgZm9yIHRoZSAidGVtcG9yYWwgbGVm dG92ZXIiCiAgcGFydCBvZiBhIHJlY29yZCB0b3VjaGVkIGJ5IGEgRk9SIFBPUlRJT04gT0YgcXVl cnkuCi0gRG9jdW1lbnRlZCBGT1IgUE9SVElPTiBPRi4KLSBBZGRlZCB0ZXN0cy4KCkF1dGhvcjog UGF1bCBBLiBKdW5nd2lydGggPHBqQGlsbHVtaW5hdGVkY29tcHV0aW5nLmNvbT4KLS0tCiAuLi4v cG9zdGdyZXNfZmR3L2V4cGVjdGVkL3Bvc3RncmVzX2Zkdy5vdXQgICAgfCAgIDQ1ICstCiBjb250 cmliL3Bvc3RncmVzX2Zkdy9zcWwvcG9zdGdyZXNfZmR3LnNxbCAgICAgfCAgIDM0ICsKIGRvYy9z cmMvc2dtbC9yZWYvY3JlYXRlX3B1YmxpY2F0aW9uLnNnbWwgICAgICB8ICAgIDYgKwogZG9jL3Ny Yy9zZ21sL3JlZi9kZWxldGUuc2dtbCAgICAgICAgICAgICAgICAgIHwgIDEwMSArLQogZG9jL3Ny Yy9zZ21sL3JlZi91cGRhdGUuc2dtbCAgICAgICAgICAgICAgICAgIHwgIDEwMyArLQogZG9jL3Ny Yy9zZ21sL3RyaWdnZXIuc2dtbCAgICAgICAgICAgICAgICAgICAgIHwgICAgOSArCiBzcmMvYmFj a2VuZC9leGVjdXRvci9leGVjTWFpbi5jICAgICAgICAgICAgICAgfCAgICAxICsKIHNyYy9iYWNr ZW5kL2V4ZWN1dG9yL25vZGVNb2RpZnlUYWJsZS5jICAgICAgICB8ICAzMjcgKysrKy0KIHNyYy9i YWNrZW5kL25vZGVzL25vZGVGdW5jcy5jICAgICAgICAgICAgICAgICB8ICAgMjQgKwogc3JjL2Jh Y2tlbmQvb3B0aW1pemVyL3BsYW4vY3JlYXRlcGxhbi5jICAgICAgIHwgICAgNiArLQogc3JjL2Jh Y2tlbmQvb3B0aW1pemVyL3BsYW4vcGxhbm5lci5jICAgICAgICAgIHwgICAgMSArCiBzcmMvYmFj a2VuZC9vcHRpbWl6ZXIvdXRpbC9wYXRobm9kZS5jICAgICAgICAgfCAgICAzICstCiBzcmMvYmFj a2VuZC9wYXJzZXIvYW5hbHl6ZS5jICAgICAgICAgICAgICAgICAgfCAgMjYzICsrKy0KIHNyYy9i YWNrZW5kL3BhcnNlci9ncmFtLnkgICAgICAgICAgICAgICAgICAgICB8ICAxMDAgKy0KIHNyYy9i YWNrZW5kL3BhcnNlci9wYXJzZV9hZ2cuYyAgICAgICAgICAgICAgICB8ICAgMTAgKwogc3JjL2Jh Y2tlbmQvcGFyc2VyL3BhcnNlX2NvbGxhdGUuYyAgICAgICAgICAgIHwgICAgMSArCiBzcmMvYmFj a2VuZC9wYXJzZXIvcGFyc2VfZXhwci5jICAgICAgICAgICAgICAgfCAgICA4ICsKIHNyYy9iYWNr ZW5kL3BhcnNlci9wYXJzZV9mdW5jLmMgICAgICAgICAgICAgICB8ICAgIDMgKwogc3JjL2JhY2tl bmQvcGFyc2VyL3BhcnNlX21lcmdlLmMgICAgICAgICAgICAgIHwgICAgMiArLQogc3JjL2JhY2tl bmQvcmV3cml0ZS9yZXdyaXRlSGFuZGxlci5jICAgICAgICAgIHwgICA0MyArCiBzcmMvYmFja2Vu ZC91dGlscy9hZHQvcmlfdHJpZ2dlcnMuYyAgICAgICAgICAgfCAgICAyICstCiBzcmMvYmFja2Vu ZC91dGlscy9jYWNoZS9sc3lzY2FjaGUuYyAgICAgICAgICAgfCAgIDI3ICsKIHNyYy9pbmNsdWRl L25vZGVzL2V4ZWNub2Rlcy5oICAgICAgICAgICAgICAgICB8ICAgMjIgKwogc3JjL2luY2x1ZGUv bm9kZXMvcGFyc2Vub2Rlcy5oICAgICAgICAgICAgICAgIHwgICAyMCArCiBzcmMvaW5jbHVkZS9u b2Rlcy9wYXRobm9kZXMuaCAgICAgICAgICAgICAgICAgfCAgICAxICsKIHNyYy9pbmNsdWRlL25v ZGVzL3BsYW5ub2Rlcy5oICAgICAgICAgICAgICAgICB8ICAgIDIgKwogc3JjL2luY2x1ZGUvbm9k ZXMvcHJpbW5vZGVzLmggICAgICAgICAgICAgICAgIHwgICAyNyArCiBzcmMvaW5jbHVkZS9vcHRp bWl6ZXIvcGF0aG5vZGUuaCAgICAgICAgICAgICAgfCAgICAyICstCiBzcmMvaW5jbHVkZS9wYXJz ZXIvYW5hbHl6ZS5oICAgICAgICAgICAgICAgICAgfCAgICAzICstCiBzcmMvaW5jbHVkZS9wYXJz ZXIva3dsaXN0LmggICAgICAgICAgICAgICAgICAgfCAgICAxICsKIHNyYy9pbmNsdWRlL3BhcnNl ci9wYXJzZV9ub2RlLmggICAgICAgICAgICAgICB8ICAgIDEgKwogc3JjL2luY2x1ZGUvdXRpbHMv bHN5c2NhY2hlLmggICAgICAgICAgICAgICAgIHwgICAgMSArCiBzcmMvdGVzdC9yZWdyZXNzL2V4 cGVjdGVkL2Zvcl9wb3J0aW9uX29mLm91dCAgfCAxMjQ4ICsrKysrKysrKysrKysrKysrCiBzcmMv dGVzdC9yZWdyZXNzL2V4cGVjdGVkL3ByaXZpbGVnZXMub3V0ICAgICAgfCAgIDE4ICsKIHNyYy90 ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvdXBkYXRhYmxlX3ZpZXdzLm91dCB8ICAgMzIgKwogLi4uL3Jl Z3Jlc3MvZXhwZWN0ZWQvd2l0aG91dF9vdmVybGFwcy5vdXQgICAgIHwgIDI0NSArKystCiBzcmMv dGVzdC9yZWdyZXNzL3BhcmFsbGVsX3NjaGVkdWxlICAgICAgICAgICAgfCAgICAyICstCiBzcmMv dGVzdC9yZWdyZXNzL3NxbC9mb3JfcG9ydGlvbl9vZi5zcWwgICAgICAgfCAgOTA1ICsrKysrKysr KysrKwogc3JjL3Rlc3QvcmVncmVzcy9zcWwvcHJpdmlsZWdlcy5zcWwgICAgICAgICAgIHwgICAx OCArCiBzcmMvdGVzdC9yZWdyZXNzL3NxbC91cGRhdGFibGVfdmlld3Muc3FsICAgICAgfCAgIDE0 ICsKIHNyYy90ZXN0L3JlZ3Jlc3Mvc3FsL3dpdGhvdXRfb3ZlcmxhcHMuc3FsICAgICB8ICAxMjAg Ky0KIHNyYy90ZXN0L3N1YnNjcmlwdGlvbi90LzAzNF90ZW1wb3JhbC5wbCAgICAgICB8ICAxMTAg Ky0KIHNyYy90b29scy9wZ2luZGVudC90eXBlZGVmcy5saXN0ICAgICAgICAgICAgICB8ICAgIDQg KwogNDMgZmlsZXMgY2hhbmdlZCwgMzgyNiBpbnNlcnRpb25zKCspLCA4OSBkZWxldGlvbnMoLSkK IGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVkL2Zvcl9wb3J0aW9u X29mLm91dAogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyYy90ZXN0L3JlZ3Jlc3Mvc3FsL2Zvcl9wb3J0 aW9uX29mLnNxbAoKZGlmZiAtLWdpdCBhL2NvbnRyaWIvcG9zdGdyZXNfZmR3L2V4cGVjdGVkL3Bv c3RncmVzX2Zkdy5vdXQgYi9jb250cmliL3Bvc3RncmVzX2Zkdy9leHBlY3RlZC9wb3N0Z3Jlc19m ZHcub3V0CmluZGV4IGNkMjgxMjYwNDlkLi44YzBmMWU4Yjc3MSAxMDA2NDQKLS0tIGEvY29udHJp Yi9wb3N0Z3Jlc19mZHcvZXhwZWN0ZWQvcG9zdGdyZXNfZmR3Lm91dAorKysgYi9jb250cmliL3Bv c3RncmVzX2Zkdy9leHBlY3RlZC9wb3N0Z3Jlc19mZHcub3V0CkBAIC01MCwxMSArNTAsMTkgQEAg Q1JFQVRFIFRBQkxFICJTIDEiLiJUIDQiICgKIAljMyB0ZXh0LAogCUNPTlNUUkFJTlQgdDRfcGtl eSBQUklNQVJZIEtFWSAoYzEpCiApOworQ1JFQVRFIFRBQkxFICJTIDEiLiJUIDUiICgKKwljMSBp bnQ0cmFuZ2UgTk9UIE5VTEwsCisJYzIgaW50IE5PVCBOVUxMLAorCWMzIHRleHQsCisJYzQgZGF0 ZXJhbmdlIE5PVCBOVUxMLAorCUNPTlNUUkFJTlQgdDVfcGtleSBQUklNQVJZIEtFWSAoYzEsIGM0 IFdJVEhPVVQgT1ZFUkxBUFMpCispOwogLS0gRGlzYWJsZSBhdXRvdmFjdXVtIGZvciB0aGVzZSB0 YWJsZXMgdG8gYXZvaWQgdW5leHBlY3RlZCBlZmZlY3RzIG9mIHRoYXQKIEFMVEVSIFRBQkxFICJT IDEiLiJUIDEiIFNFVCAoYXV0b3ZhY3V1bV9lbmFibGVkID0gJ2ZhbHNlJyk7CiBBTFRFUiBUQUJM RSAiUyAxIi4iVCAyIiBTRVQgKGF1dG92YWN1dW1fZW5hYmxlZCA9ICdmYWxzZScpOwogQUxURVIg VEFCTEUgIlMgMSIuIlQgMyIgU0VUIChhdXRvdmFjdXVtX2VuYWJsZWQgPSAnZmFsc2UnKTsKIEFM VEVSIFRBQkxFICJTIDEiLiJUIDQiIFNFVCAoYXV0b3ZhY3V1bV9lbmFibGVkID0gJ2ZhbHNlJyk7 CitBTFRFUiBUQUJMRSAiUyAxIi4iVCA1IiBTRVQgKGF1dG92YWN1dW1fZW5hYmxlZCA9ICdmYWxz ZScpOwogSU5TRVJUIElOVE8gIlMgMSIuIlQgMSIKIAlTRUxFQ1QgaWQsCiAJICAgICAgIGlkICUg MTAsCkBAIC04MSwxMCArODksMTcgQEAgSU5TRVJUIElOVE8gIlMgMSIuIlQgNCIKIAkgICAgICAg J0FBQScgfHwgdG9fY2hhcihpZCwgJ0ZNMDAwJykKIAlGUk9NIGdlbmVyYXRlX3NlcmllcygxLCAx MDApIGlkOwogREVMRVRFIEZST00gIlMgMSIuIlQgNCIgV0hFUkUgYzEgJSAzICE9IDA7CS0tIGRl bGV0ZSBmb3Igb3V0ZXIgam9pbiB0ZXN0cworSU5TRVJUIElOVE8gIlMgMSIuIlQgNSIKKwlTRUxF Q1QgaW50NHJhbmdlKGlkLCBpZCArIDEpLAorCSAgICAgICBpZCArIDEsCisJICAgICAgICdBQUEn IHx8IHRvX2NoYXIoaWQsICdGTTAwMCcpLAorICAgICAgICAnWzIwMDAtMDEtMDEsMjAyMC0wMS0w MSknCisJRlJPTSBnZW5lcmF0ZV9zZXJpZXMoMSwgMTAwKSBpZDsKIEFOQUxZWkUgIlMgMSIuIlQg MSI7CiBBTkFMWVpFICJTIDEiLiJUIDIiOwogQU5BTFlaRSAiUyAxIi4iVCAzIjsKIEFOQUxZWkUg IlMgMSIuIlQgNCI7CitBTkFMWVpFICJTIDEiLiJUIDUiOwogLS0gPT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQogLS0gY3Jl YXRlIGZvcmVpZ24gdGFibGVzCiAtLSA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CkBAIC0xMzIsNiArMTQ3LDEyIEBAIENS RUFURSBGT1JFSUdOIFRBQkxFIGZ0NyAoCiAJYzIgaW50IE5PVCBOVUxMLAogCWMzIHRleHQKICkg U0VSVkVSIGxvb3BiYWNrMyBPUFRJT05TIChzY2hlbWFfbmFtZSAnUyAxJywgdGFibGVfbmFtZSAn VCA0Jyk7CitDUkVBVEUgRk9SRUlHTiBUQUJMRSBmdDggKAorCWMxIGludDRyYW5nZSBOT1QgTlVM TCwKKwljMiBpbnQgTk9UIE5VTEwsCisJYzMgdGV4dCwKKwljNCBkYXRlcmFuZ2UgTk9UIE5VTEwK KykgU0VSVkVSIGxvb3BiYWNrIE9QVElPTlMgKHNjaGVtYV9uYW1lICdTIDEnLCB0YWJsZV9uYW1l ICdUIDUnKTsKIC0tID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT0KIC0tIHRlc3RzIGZvciB2YWxpZGF0b3IKIC0tID09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT0KQEAgLTIxNCw3ICsyMzUsOCBAQCBBTFRFUiBGT1JFSUdOIFRBQkxFIGZ0MiBBTFRFUiBD T0xVTU4gYzEgT1BUSU9OUyAoY29sdW1uX25hbWUgJ0MgMScpOwogIHB1YmxpYyB8IGZ0NSAgIHwg bG9vcGJhY2sgIHwgKHNjaGVtYV9uYW1lICdTIDEnLCB0YWJsZV9uYW1lICdUIDQnKSB8IAogIHB1 YmxpYyB8IGZ0NiAgIHwgbG9vcGJhY2syIHwgKHNjaGVtYV9uYW1lICdTIDEnLCB0YWJsZV9uYW1l ICdUIDQnKSB8IAogIHB1YmxpYyB8IGZ0NyAgIHwgbG9vcGJhY2szIHwgKHNjaGVtYV9uYW1lICdT IDEnLCB0YWJsZV9uYW1lICdUIDQnKSB8IAotKDYgcm93cykKKyBwdWJsaWMgfCBmdDggICB8IGxv b3BiYWNrICB8IChzY2hlbWFfbmFtZSAnUyAxJywgdGFibGVfbmFtZSAnVCA1JykgfCAKKyg3IHJv d3MpCiAKIC0tIFRlc3QgdGhhdCBhbHRlcmF0aW9uIG9mIHNlcnZlciBvcHRpb25zIGNhdXNlcyBy ZWNvbm5lY3Rpb24KIC0tIFJlbW90ZSdzIGVycm9ycyBtaWdodCBiZSBub24tRW5nbGlzaCwgc28g aGlkZSB0aGVtIHRvIGVuc3VyZSBzdGFibGUgcmVzdWx0cwpAQCAtNjMwMyw2ICs2MzI1LDI3IEBA IERFTEVURSBGUk9NIGZ0MiBXSEVSRSBjMSA9IDEyMDAgUkVUVVJOSU5HIHRhYmxlb2lkOjpyZWdj bGFzczsKICBmdDIKICgxIHJvdykKIAorLS0gVGVzdCBVUERBVEUgRk9SIFBPUlRJT04gT0YKK1VQ REFURSBmdDggRk9SIFBPUlRJT04gT0YgYzQgRlJPTSAnMjAwNS0wMS0wMScgVE8gJzIwMDYtMDEt MDEnCitTRVQgYzIgPSBjMiArIDEKK1dIRVJFIGMxID0gJ1sxLDIpJzsKK0VSUk9SOiAgZm9yZWln biB0YWJsZXMgZG9uJ3Qgc3VwcG9ydCBGT1IgUE9SVElPTiBPRgorU0VMRUNUICogRlJPTSBmdDgg V0hFUkUgYzEgPSAnWzEsMiknIE9SREVSIEJZIGMxLCBjNDsKKyAgYzEgICB8IGMyIHwgICBjMyAg IHwgICAgICAgICAgIGM0ICAgICAgICAgICAgCistLS0tLS0tKy0tLS0rLS0tLS0tLS0rLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLQorIFsxLDIpIHwgIDIgfCBBQUEwMDEgfCBbMDEtMDEtMjAwMCww MS0wMS0yMDIwKQorKDEgcm93KQorCistLSBUZXN0IERFTEVURSBGT1IgUE9SVElPTiBPRgorREVM RVRFIEZST00gZnQ4IEZPUiBQT1JUSU9OIE9GIGM0IEZST00gJzIwMDUtMDEtMDEnIFRPICcyMDA2 LTAxLTAxJworV0hFUkUgYzEgPSAnWzIsMyknOworRVJST1I6ICBmb3JlaWduIHRhYmxlcyBkb24n dCBzdXBwb3J0IEZPUiBQT1JUSU9OIE9GCitTRUxFQ1QgKiBGUk9NIGZ0OCBXSEVSRSBjMSA9ICdb MiwzKScgT1JERVIgQlkgYzEsIGM0OworICBjMSAgIHwgYzIgfCAgIGMzICAgfCAgICAgICAgICAg YzQgICAgICAgICAgICAKKy0tLS0tLS0rLS0tLSstLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tCisgWzIsMykgfCAgMyB8IEFBQTAwMiB8IFswMS0wMS0yMDAwLDAxLTAxLTIwMjApCiso MSByb3cpCisKIC0tIFRlc3QgVVBEQVRFL0RFTEVURSB3aXRoIFJFVFVSTklORyBvbiBhIHRocmVl LXRhYmxlIGpvaW4KIElOU0VSVCBJTlRPIGZ0MiAoYzEsYzIsYzMpCiAgIFNFTEVDVCBpZCwgaWQg LSAxMjAwLCB0b19jaGFyKGlkLCAnRk0wMDAwMCcpIEZST00gZ2VuZXJhdGVfc2VyaWVzKDEyMDEs IDEzMDApIGlkOwpkaWZmIC0tZ2l0IGEvY29udHJpYi9wb3N0Z3Jlc19mZHcvc3FsL3Bvc3RncmVz X2Zkdy5zcWwgYi9jb250cmliL3Bvc3RncmVzX2Zkdy9zcWwvcG9zdGdyZXNfZmR3LnNxbAppbmRl eCA5YThmOWUyODEzNS4uNzM4ZmMyNGZiMDcgMTAwNjQ0Ci0tLSBhL2NvbnRyaWIvcG9zdGdyZXNf ZmR3L3NxbC9wb3N0Z3Jlc19mZHcuc3FsCisrKyBiL2NvbnRyaWIvcG9zdGdyZXNfZmR3L3NxbC9w b3N0Z3Jlc19mZHcuc3FsCkBAIC01NCwxMiArNTQsMjAgQEAgQ1JFQVRFIFRBQkxFICJTIDEiLiJU IDQiICgKIAljMyB0ZXh0LAogCUNPTlNUUkFJTlQgdDRfcGtleSBQUklNQVJZIEtFWSAoYzEpCiAp OworQ1JFQVRFIFRBQkxFICJTIDEiLiJUIDUiICgKKwljMSBpbnQ0cmFuZ2UgTk9UIE5VTEwsCisJ YzIgaW50IE5PVCBOVUxMLAorCWMzIHRleHQsCisJYzQgZGF0ZXJhbmdlIE5PVCBOVUxMLAorCUNP TlNUUkFJTlQgdDVfcGtleSBQUklNQVJZIEtFWSAoYzEsIGM0IFdJVEhPVVQgT1ZFUkxBUFMpCisp OwogCiAtLSBEaXNhYmxlIGF1dG92YWN1dW0gZm9yIHRoZXNlIHRhYmxlcyB0byBhdm9pZCB1bmV4 cGVjdGVkIGVmZmVjdHMgb2YgdGhhdAogQUxURVIgVEFCTEUgIlMgMSIuIlQgMSIgU0VUIChhdXRv dmFjdXVtX2VuYWJsZWQgPSAnZmFsc2UnKTsKIEFMVEVSIFRBQkxFICJTIDEiLiJUIDIiIFNFVCAo YXV0b3ZhY3V1bV9lbmFibGVkID0gJ2ZhbHNlJyk7CiBBTFRFUiBUQUJMRSAiUyAxIi4iVCAzIiBT RVQgKGF1dG92YWN1dW1fZW5hYmxlZCA9ICdmYWxzZScpOwogQUxURVIgVEFCTEUgIlMgMSIuIlQg NCIgU0VUIChhdXRvdmFjdXVtX2VuYWJsZWQgPSAnZmFsc2UnKTsKK0FMVEVSIFRBQkxFICJTIDEi LiJUIDUiIFNFVCAoYXV0b3ZhY3V1bV9lbmFibGVkID0gJ2ZhbHNlJyk7CiAKIElOU0VSVCBJTlRP ICJTIDEiLiJUIDEiCiAJU0VMRUNUIGlkLApAQCAtODcsMTEgKzk1LDE4IEBAIElOU0VSVCBJTlRP ICJTIDEiLiJUIDQiCiAJICAgICAgICdBQUEnIHx8IHRvX2NoYXIoaWQsICdGTTAwMCcpCiAJRlJP TSBnZW5lcmF0ZV9zZXJpZXMoMSwgMTAwKSBpZDsKIERFTEVURSBGUk9NICJTIDEiLiJUIDQiIFdI RVJFIGMxICUgMyAhPSAwOwktLSBkZWxldGUgZm9yIG91dGVyIGpvaW4gdGVzdHMKK0lOU0VSVCBJ TlRPICJTIDEiLiJUIDUiCisJU0VMRUNUIGludDRyYW5nZShpZCwgaWQgKyAxKSwKKwkgICAgICAg aWQgKyAxLAorCSAgICAgICAnQUFBJyB8fCB0b19jaGFyKGlkLCAnRk0wMDAnKSwKKyAgICAgICAg J1syMDAwLTAxLTAxLDIwMjAtMDEtMDEpJworCUZST00gZ2VuZXJhdGVfc2VyaWVzKDEsIDEwMCkg aWQ7CiAKIEFOQUxZWkUgIlMgMSIuIlQgMSI7CiBBTkFMWVpFICJTIDEiLiJUIDIiOwogQU5BTFla RSAiUyAxIi4iVCAzIjsKIEFOQUxZWkUgIlMgMSIuIlQgNCI7CitBTkFMWVpFICJTIDEiLiJUIDUi OwogCiAtLSA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09CiAtLSBjcmVhdGUgZm9yZWlnbiB0YWJsZXMKQEAgLTE0Niw2ICsx NjEsMTQgQEAgQ1JFQVRFIEZPUkVJR04gVEFCTEUgZnQ3ICgKIAljMyB0ZXh0CiApIFNFUlZFUiBs b29wYmFjazMgT1BUSU9OUyAoc2NoZW1hX25hbWUgJ1MgMScsIHRhYmxlX25hbWUgJ1QgNCcpOwog CitDUkVBVEUgRk9SRUlHTiBUQUJMRSBmdDggKAorCWMxIGludDRyYW5nZSBOT1QgTlVMTCwKKwlj MiBpbnQgTk9UIE5VTEwsCisJYzMgdGV4dCwKKwljNCBkYXRlcmFuZ2UgTk9UIE5VTEwKKykgU0VS VkVSIGxvb3BiYWNrIE9QVElPTlMgKHNjaGVtYV9uYW1lICdTIDEnLCB0YWJsZV9uYW1lICdUIDUn KTsKKworCiAtLSA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09CiAtLSB0ZXN0cyBmb3IgdmFsaWRhdG9yCiAtLSA9PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09CkBAIC0xNTM4LDYgKzE1NjEsMTcgQEAgRVhQTEFJTiAodmVyYm9zZSwgY29zdHMgb2ZmKQog REVMRVRFIEZST00gZnQyIFdIRVJFIGMxID0gMTIwMCBSRVRVUk5JTkcgdGFibGVvaWQ6OnJlZ2Ns YXNzOyAgICAgICAgICAgICAgICAgICAgICAgLS0gY2FuIGJlIHB1c2hlZCBkb3duCiBERUxFVEUg RlJPTSBmdDIgV0hFUkUgYzEgPSAxMjAwIFJFVFVSTklORyB0YWJsZW9pZDo6cmVnY2xhc3M7CiAK Ky0tIFRlc3QgVVBEQVRFIEZPUiBQT1JUSU9OIE9GCitVUERBVEUgZnQ4IEZPUiBQT1JUSU9OIE9G IGM0IEZST00gJzIwMDUtMDEtMDEnIFRPICcyMDA2LTAxLTAxJworU0VUIGMyID0gYzIgKyAxCitX SEVSRSBjMSA9ICdbMSwyKSc7CitTRUxFQ1QgKiBGUk9NIGZ0OCBXSEVSRSBjMSA9ICdbMSwyKScg T1JERVIgQlkgYzEsIGM0OworCistLSBUZXN0IERFTEVURSBGT1IgUE9SVElPTiBPRgorREVMRVRF IEZST00gZnQ4IEZPUiBQT1JUSU9OIE9GIGM0IEZST00gJzIwMDUtMDEtMDEnIFRPICcyMDA2LTAx LTAxJworV0hFUkUgYzEgPSAnWzIsMyknOworU0VMRUNUICogRlJPTSBmdDggV0hFUkUgYzEgPSAn WzIsMyknIE9SREVSIEJZIGMxLCBjNDsKKwogLS0gVGVzdCBVUERBVEUvREVMRVRFIHdpdGggUkVU VVJOSU5HIG9uIGEgdGhyZWUtdGFibGUgam9pbgogSU5TRVJUIElOVE8gZnQyIChjMSxjMixjMykK ICAgU0VMRUNUIGlkLCBpZCAtIDEyMDAsIHRvX2NoYXIoaWQsICdGTTAwMDAwJykgRlJPTSBnZW5l cmF0ZV9zZXJpZXMoMTIwMSwgMTMwMCkgaWQ7CmRpZmYgLS1naXQgYS9kb2Mvc3JjL3NnbWwvcmVm L2NyZWF0ZV9wdWJsaWNhdGlvbi5zZ21sIGIvZG9jL3NyYy9zZ21sL3JlZi9jcmVhdGVfcHVibGlj YXRpb24uc2dtbAppbmRleCA2NmE3MGU1YzViNS4uYjVjOGE1MTcyZGYgMTAwNjQ0Ci0tLSBhL2Rv Yy9zcmMvc2dtbC9yZWYvY3JlYXRlX3B1YmxpY2F0aW9uLnNnbWwKKysrIGIvZG9jL3NyYy9zZ21s L3JlZi9jcmVhdGVfcHVibGljYXRpb24uc2dtbApAQCAtMzkwLDYgKzM5MCwxMiBAQCBDUkVBVEUg UFVCTElDQVRJT04gPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPm5hbWU8L3JlcGxhY2Vh YmxlPgogICAgZm9yIGVhY2ggcm93IGluc2VydGVkLCB1cGRhdGVkLCBvciBkZWxldGVkLgogICA8 L3BhcmE+CiAKKyAgPHBhcmE+CisgICBGb3IgYW4gPGNvbW1hbmQ+VVBEQVRFL0RFTEVURSAuLi4g Rk9SIFBPUlRJT04gT0Y8L2NvbW1hbmQ+IGNvbW1hbmQsIHRoZQorICAgcHVibGljYXRpb24gd2ls bCBwdWJsaXNoIGFuIDxjb21tYW5kPlVQREFURTwvY29tbWFuZD4gb3IgPGNvbW1hbmQ+REVMRVRF PC9jb21tYW5kPiwKKyAgIGZvbGxvd2VkIGJ5IG9uZSA8Y29tbWFuZD5JTlNFUlQ8L2NvbW1hbmQ+ IGZvciBlYWNoIHRlbXBvcmFsIGxlZnRvdmVyIHJvdyBpbnNlcnRlZC4KKyAgPC9wYXJhPgorCiAg IDxwYXJhPgogICAgPGNvbW1hbmQ+QVRUQUNIPC9jb21tYW5kPmluZyBhIHRhYmxlIGludG8gYSBw YXJ0aXRpb24gdHJlZSB3aG9zZSByb290IGlzCiAgICBwdWJsaXNoZWQgdXNpbmcgYSBwdWJsaWNh dGlvbiB3aXRoIDxsaXRlcmFsPnB1Ymxpc2hfdmlhX3BhcnRpdGlvbl9yb290PC9saXRlcmFsPgpk aWZmIC0tZ2l0IGEvZG9jL3NyYy9zZ21sL3JlZi9kZWxldGUuc2dtbCBiL2RvYy9zcmMvc2dtbC9y ZWYvZGVsZXRlLnNnbWwKaW5kZXggNWI1MmY3N2UyOGYuLjhkZDUxYWFjY2UyIDEwMDY0NAotLS0g YS9kb2Mvc3JjL3NnbWwvcmVmL2RlbGV0ZS5zZ21sCisrKyBiL2RvYy9zcmMvc2dtbC9yZWYvZGVs ZXRlLnNnbWwKQEAgLTIyLDcgKzIyLDkgQEAgUG9zdGdyZVNRTCBkb2N1bWVudGF0aW9uCiAgPHJl ZnN5bm9wc2lzZGl2PgogPHN5bm9wc2lzPgogWyBXSVRIIFsgUkVDVVJTSVZFIF0gPHJlcGxhY2Vh YmxlIGNsYXNzPSJwYXJhbWV0ZXIiPndpdGhfcXVlcnk8L3JlcGxhY2VhYmxlPiBbLCAuLi5dIF0K LURFTEVURSBGUk9NIFsgT05MWSBdIDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj50YWJs ZV9uYW1lPC9yZXBsYWNlYWJsZT4gWyAqIF0gWyBbIEFTIF0gPHJlcGxhY2VhYmxlIGNsYXNzPSJw YXJhbWV0ZXIiPmFsaWFzPC9yZXBsYWNlYWJsZT4gXQorREVMRVRFIEZST00gWyBPTkxZIF0gPHJl cGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPnRhYmxlX25hbWU8L3JlcGxhY2VhYmxlPiBbICog XQorICAgIFsgRk9SIFBPUlRJT04gT0YgPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPnJh bmdlX25hbWU8L3JlcGxhY2VhYmxlPiA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+Zm9y X3BvcnRpb25fb2ZfdGFyZ2V0PC9yZXBsYWNlYWJsZT4gXQorICAgIFsgWyBBUyBdIDxyZXBsYWNl YWJsZSBjbGFzcz0icGFyYW1ldGVyIj5hbGlhczwvcmVwbGFjZWFibGU+IF0KICAgICBbIFVTSU5H IDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5mcm9tX2l0ZW08L3JlcGxhY2VhYmxlPiBb LCAuLi5dIF0KICAgICBbIFdIRVJFIDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5jb25k aXRpb248L3JlcGxhY2VhYmxlPiB8IFdIRVJFIENVUlJFTlQgT0YgPHJlcGxhY2VhYmxlIGNsYXNz PSJwYXJhbWV0ZXIiPmN1cnNvcl9uYW1lPC9yZXBsYWNlYWJsZT4gXQogICAgIFsgUkVUVVJOSU5H IFsgV0lUSCAoIHsgT0xEIHwgTkVXIH0gQVMgPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIi Pm91dHB1dF9hbGlhczwvcmVwbGFjZWFibGU+IFssIC4uLl0gKSBdCkBAIC01NSw2ICs1Nyw0OCBA QCBERUxFVEUgRlJPTSBbIE9OTFkgXSA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+dGFi bGVfbmFtZTwvcmVwbGFjZWFibGU+IFsgKgogICAgY2lyY3Vtc3RhbmNlcy4KICAgPC9wYXJhPgog CisgIDxwYXJhPgorICAgSWYgdGhlIHRhYmxlIGhhcyBhIHJhbmdlIG9yIG11bHRpcmFuZ2UgY29s dW1uLAorICAgeW91IG1heSBzdXBwbHkgYSA8bGl0ZXJhbD5GT1IgUE9SVElPTiBPRjwvbGl0ZXJh bD4gY2xhdXNlLCBhbmQgdGhlIGRlbGV0ZSB3aWxsCisgICBvbmx5IGFmZmVjdCByb3dzIHRoYXQg b3ZlcmxhcCB0aGUgZ2l2ZW4gaW50ZXJ2YWwuIEZ1cnRoZXJtb3JlLCBpZiBhIHJvdydzIGhpc3Rv cnkKKyAgIGV4dGVuZHMgb3V0c2lkZSB0aGUgPGxpdGVyYWw+Rk9SIFBPUlRJT04gT0Y8L2xpdGVy YWw+IGJvdW5kcywgdGhlbiB0aGUgZGVsZXRlCisgICB3aWxsIG9ubHkgY2hhbmdlIHRoZSBoaXN0 b3J5IHdpdGhpbiB0aG9zZSBib3VuZHMuIEluIGVmZmVjdCB5b3UgYXJlIGRlbGV0aW5nIGFueQor ICAgbW9tZW50IHRhcmdldGVkIGJ5IDxsaXRlcmFsPkZPUiBQT1JUSU9OIE9GPC9saXRlcmFsPiBh bmQgbm8gbW9tZW50cyBvdXRzaWRlLgorICA8L3BhcmE+CisKKyAgPHBhcmE+CisgICBTcGVjaWZp Y2FsbHksIGFmdGVyIDxwcm9kdWN0bmFtZT5Qb3N0Z3JlU1FMPC9wcm9kdWN0bmFtZT4gZGVsZXRl cyBhIHJvdywKKyAgIGl0IHdpbGwgPGxpdGVyYWw+SU5TRVJUPC9saXRlcmFsPgorICAgbmV3IDxn bG9zc3Rlcm0gbGlua2VuZD0iZ2xvc3NhcnktdGVtcG9yYWwtbGVmdG92ZXJzIj50ZW1wb3JhbCBs ZWZ0b3ZlcnM8L2dsb3NzdGVybT46CisgICByb3dzIHdob3NlIHJhbmdlIG9yIG11bHRpcmFuZ2Ug cmVjZWl2ZXMgdGhlIHJlbWFpbmluZyBoaXN0b3J5IG91dHNpZGUKKyAgIHRoZSB0YXJnZXRlZCA8 bGl0ZXJhbD5GUk9NPC9saXRlcmFsPi88bGl0ZXJhbD5UTzwvbGl0ZXJhbD4gYm91bmRzLCB3aXRo IHRoZQorICAgb3JpZ2luYWwgdmFsdWVzIGluIHRoZWlyIG90aGVyIGNvbHVtbnMuIEZvciByYW5n ZSBjb2x1bW5zLCB0aGVyZSB3aWxsIGJlIHplcm8KKyAgIHRvIHR3byBpbnNlcnRlZCByZWNvcmRz LCBkZXBlbmRpbmcgb24gd2hldGhlciB0aGUgb3JpZ2luYWwgaGlzdG9yeSB3YXMKKyAgIGNvbXBs ZXRlbHkgZGVsZXRlZCwgZXh0ZW5kZWQgYmVmb3JlL2FmdGVyIHRoZSBjaGFuZ2UsIG9yIGJvdGgu IEZvcgorICAgaW5zdGFuY2UgZ2l2ZW4gYW4gb3JpZ2luYWwgcmFuZ2Ugb2YgPGxpdGVyYWw+WzIs Nik8L2xpdGVyYWw+LCBhIGRlbGV0ZSBvZgorICAgPGxpdGVyYWw+WzEsNyk8L2xpdGVyYWw+IHlp ZWxkcyBubyBsZWZ0b3ZlcnMsIGEgZGVsZXRlIG9mCisgICA8bGl0ZXJhbD5bMiw1KTwvbGl0ZXJh bD4geWllbGRzIG9uZSwgYW5kIGEgZGVsZXRlIG9mCisgICA8bGl0ZXJhbD5bMyw1KTwvbGl0ZXJh bD4geWllbGRzIHR3by4gTXVsdGlyYW5nZXMgbmV2ZXIgcmVxdWlyZSB0d28gdGVtcG9yYWwKKyAg IGxlZnRvdmVycywgYmVjYXVzZSBvbmUgdmFsdWUgY2FuIGFsd2F5cyBjb250YWluIHdoYXRldmVy IGhpc3RvcnkgcmVtYWlucy4KKyAgPC9wYXJhPgorCisgIDxwYXJhPgorICAgVGhlc2Ugc2Vjb25k YXJ5IGluc2VydHMgZmlyZSA8bGl0ZXJhbD5JTlNFUlQ8L2xpdGVyYWw+IHRyaWdnZXJzLgorICAg Qm90aCA8bGl0ZXJhbD5TVEFURU1FTlQ8L2xpdGVyYWw+IGFuZCA8bGl0ZXJhbD5ST1c8L2xpdGVy YWw+IHRyaWdnZXJzIGFyZSBmaXJlZC4KKyAgIFRoZSA8bGl0ZXJhbD5CRUZPUkUgREVMRVRFPC9s aXRlcmFsPiB0cmlnZ2VycyBhcmUgZmlyZWQgZmlyc3QsIHRoZW4KKyAgIDxsaXRlcmFsPkJFRk9S RSBJTlNFUlQ8L2xpdGVyYWw+LCB0aGVuIDxsaXRlcmFsPkFGVEVSIElOU0VSVDwvbGl0ZXJhbD4s CisgICB0aGVuIDxsaXRlcmFsPkFGVEVSIERFTEVURTwvbGl0ZXJhbD4uCisgIDwvcGFyYT4KKwor ICA8cGFyYT4KKyAgIFRoZXNlIHNlY29uZGFyeSBpbnNlcnRzIGRvIG5vdCByZXF1aXJlIDxsaXRl cmFsPklOU0VSVDwvbGl0ZXJhbD4gcHJpdmlsZWdlIG9uCisgICB0aGUgdGFibGUuIFRoaXMgaXMg YmVjYXVzZSBjb25jZXB0dWFsbHkgbm8gbmV3IGluZm9ybWF0aW9uIGhhcyBiZWVuIGFkZGVkLgor ICAgVGhlIGluc2VydGVkIHJvd3Mgb25seSBwcmVzZXJ2ZSBleGlzdGluZyBkYXRhIGFib3V0IHRo ZSB1bnRhcmdldGVkIHRpbWUgcGVyaW9kLgorICAgTm90ZSB0aGlzIG1heSByZXN1bHQgaW4gdXNl cnMgZmlyaW5nIDxsaXRlcmFsPklOU0VSVDwvbGl0ZXJhbD4gdHJpZ2dlcnMgd2hvCisgICBkb24n dCBoYXZlIGluc2VydCBwcml2aWxlZ2VzLCBzbyBiZSBjYXJlZnVsIGFib3V0IDxsaXRlcmFsPlNF Q1VSSVRZIERFRklORVI8L2xpdGVyYWw+CisgICB0cmlnZ2VyIGZ1bmN0aW9ucyEKKyAgPC9wYXJh PgorCiAgIDxwYXJhPgogICAgVGhlIG9wdGlvbmFsIDxsaXRlcmFsPlJFVFVSTklORzwvbGl0ZXJh bD4gY2xhdXNlIGNhdXNlcyA8Y29tbWFuZD5ERUxFVEU8L2NvbW1hbmQ+CiAgICB0byBjb21wdXRl IGFuZCByZXR1cm4gdmFsdWUocykgYmFzZWQgb24gZWFjaCByb3cgYWN0dWFsbHkgZGVsZXRlZC4K QEAgLTExNyw2ICsxNjEsNTcgQEAgREVMRVRFIEZST00gWyBPTkxZIF0gPHJlcGxhY2VhYmxlIGNs YXNzPSJwYXJhbWV0ZXIiPnRhYmxlX25hbWU8L3JlcGxhY2VhYmxlPiBbICoKICAgICA8L2xpc3Rp dGVtPgogICAgPC92YXJsaXN0ZW50cnk+CiAKKyAgIDx2YXJsaXN0ZW50cnk+CisgICAgPHRlcm0+ PHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPnJhbmdlX25hbWU8L3JlcGxhY2VhYmxlPjwv dGVybT4KKyAgICA8bGlzdGl0ZW0+CisgICAgIDxwYXJhPgorICAgICAgVGhlIHJhbmdlIG9yIG11 bHRpcmFuZ2UgY29sdW1uIHRvIHVzZSB3aGVuIHBlcmZvcm1pbmcgYSB0ZW1wb3JhbCBkZWxldGUu CisgICAgIDwvcGFyYT4KKyAgICA8L2xpc3RpdGVtPgorICAgPC92YXJsaXN0ZW50cnk+CisKKyAg IDx2YXJsaXN0ZW50cnk+CisgICAgPHRlcm0+PHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIi PmZvcl9wb3J0aW9uX29mX3RhcmdldDwvcmVwbGFjZWFibGU+PC90ZXJtPgorICAgIDxsaXN0aXRl bT4KKyAgICAgPHBhcmE+CisgICAgICBUaGUgaW50ZXJ2YWwgdG8gZGVsZXRlLiBJZiB5b3UgYXJl IHRhcmdldGluZyBhIHJhbmdlIGNvbHVtbiwKKyAgICAgIHlvdSBtYXkgZ2l2ZSB0aGlzIGluIHRo ZSBmb3JtIDxsaXRlcmFsPkZST008L2xpdGVyYWw+CisgICAgICA8cmVwbGFjZWFibGUgY2xhc3M9 InBhcmFtZXRlciI+c3RhcnRfdGltZTwvcmVwbGFjZWFibGU+IDxsaXRlcmFsPlRPPC9saXRlcmFs PgorICAgICAgPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPmVuZF90aW1lPC9yZXBsYWNl YWJsZT4uCisgICAgICBPdGhlcndpc2UgeW91IG11c3QgdXNlCisgICAgICA8bGl0ZXJhbD4oPC9s aXRlcmFsPjxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5leHByZXNzaW9uPC9yZXBsYWNl YWJsZT48bGl0ZXJhbD4pPC9saXRlcmFsPgorICAgICAgd2hlcmUgdGhlIGV4cHJlc3Npb24geWll bGRzIGEgdmFsdWUgb2YgdGhlIHNhbWUgdHlwZSBhcworICAgICAgPHJlcGxhY2VhYmxlIGNsYXNz PSJwYXJhbWV0ZXIiPnJhbmdlX25hbWU8L3JlcGxhY2VhYmxlPi4KKyAgICAgPC9wYXJhPgorICAg IDwvbGlzdGl0ZW0+CisgICA8L3Zhcmxpc3RlbnRyeT4KKworICAgPHZhcmxpc3RlbnRyeT4KKyAg ICA8dGVybT48cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+c3RhcnRfdGltZTwvcmVwbGFj ZWFibGU+PC90ZXJtPgorICAgIDxsaXN0aXRlbT4KKyAgICAgPHBhcmE+CisgICAgICBUaGUgZWFy bGllc3QgdGltZSAoaW5jbHVzaXZlKSB0byBjaGFuZ2UgaW4gYSB0ZW1wb3JhbCBkZWxldGUuCisg ICAgICBUaGlzIG11c3QgYmUgYSB2YWx1ZSBtYXRjaGluZyB0aGUgYmFzZSB0eXBlIG9mIHRoZSBy YW5nZSBmcm9tCisgICAgICA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+cmFuZ2VfbmFt ZTwvcmVwbGFjZWFibGU+LiBBCisgICAgICA8bGl0ZXJhbD5OVUxMPC9saXRlcmFsPiBoZXJlIGlu ZGljYXRlcyBhIGRlbGV0ZSB3aG9zZSBiZWdpbm5pbmcgaXMKKyAgICAgIHVuYm91bmRlZCAoYXMg d2l0aCByYW5nZSB0eXBlcykuCisgICAgIDwvcGFyYT4KKyAgICA8L2xpc3RpdGVtPgorICAgPC92 YXJsaXN0ZW50cnk+CisKKyAgIDx2YXJsaXN0ZW50cnk+CisgICAgPHRlcm0+PHJlcGxhY2VhYmxl IGNsYXNzPSJwYXJhbWV0ZXIiPmVuZF90aW1lPC9yZXBsYWNlYWJsZT48L3Rlcm0+CisgICAgPGxp c3RpdGVtPgorICAgICA8cGFyYT4KKyAgICAgIFRoZSBsYXRlc3QgdGltZSAoZXhjbHVzaXZlKSB0 byBjaGFuZ2UgaW4gYSB0ZW1wb3JhbCBkZWxldGUuCisgICAgICBUaGlzIG11c3QgYmUgYSB2YWx1 ZSBtYXRjaGluZyB0aGUgYmFzZSB0eXBlIG9mIHRoZSByYW5nZSBmcm9tCisgICAgICA8cmVwbGFj ZWFibGUgY2xhc3M9InBhcmFtZXRlciI+cmFuZ2VfbmFtZTwvcmVwbGFjZWFibGU+LiBBCisgICAg ICA8bGl0ZXJhbD5OVUxMPC9saXRlcmFsPiBoZXJlIGluZGljYXRlcyBhIGRlbGV0ZSB3aG9zZSBl bmQgaXMgdW5ib3VuZGVkCisgICAgICAoYXMgd2l0aCByYW5nZSB0eXBlcykuCisgICAgIDwvcGFy YT4KKyAgICA8L2xpc3RpdGVtPgorICAgPC92YXJsaXN0ZW50cnk+CisKICAgIDx2YXJsaXN0ZW50 cnk+CiAgICAgPHRlcm0+PHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPmZyb21faXRlbTwv cmVwbGFjZWFibGU+PC90ZXJtPgogICAgIDxsaXN0aXRlbT4KQEAgLTIzOCw2ICszMzMsMTAgQEAg REVMRVRFIDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5jb3VudDwvcmVwbGFjZWFibGU+ CiAgICBzdXBwcmVzc2VkIGJ5IGEgPGxpdGVyYWw+QkVGT1JFIERFTEVURTwvbGl0ZXJhbD4gdHJp Z2dlci4gIElmIDxyZXBsYWNlYWJsZQogICAgY2xhc3M9InBhcmFtZXRlciI+Y291bnQ8L3JlcGxh Y2VhYmxlPiBpcyAwLCBubyByb3dzIHdlcmUgZGVsZXRlZCBieQogICAgdGhlIHF1ZXJ5ICh0aGlz IGlzIG5vdCBjb25zaWRlcmVkIGFuIGVycm9yKS4KKyAgIElmIDxsaXRlcmFsPkZPUiBQT1JUSU9O IE9GPC9saXRlcmFsPiB3YXMgdXNlZCwgdGhlCisgICA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFt ZXRlciI+Y291bnQ8L3JlcGxhY2VhYmxlPiBhbHNvIGluY2x1ZGVzCisgICA8Z2xvc3N0ZXJtIGxp bmtlbmQ9Imdsb3NzYXJ5LXRlbXBvcmFsLWxlZnRvdmVycyI+dGVtcG9yYWwgbGVmdG92ZXJzPC9n bG9zc3Rlcm0+CisgICB0aGF0IHdlcmUgaW5zZXJ0ZWQuCiAgIDwvcGFyYT4KIAogICA8cGFyYT4K ZGlmZiAtLWdpdCBhL2RvYy9zcmMvc2dtbC9yZWYvdXBkYXRlLnNnbWwgYi9kb2Mvc3JjL3NnbWwv cmVmL3VwZGF0ZS5zZ21sCmluZGV4IDQwY2NhMDYzOTQ2Li5hMTVmMjFkZjFiMiAxMDA2NDQKLS0t IGEvZG9jL3NyYy9zZ21sL3JlZi91cGRhdGUuc2dtbAorKysgYi9kb2Mvc3JjL3NnbWwvcmVmL3Vw ZGF0ZS5zZ21sCkBAIC0yMiw3ICsyMiw5IEBAIFBvc3RncmVTUUwgZG9jdW1lbnRhdGlvbgogIDxy ZWZzeW5vcHNpc2Rpdj4KIDxzeW5vcHNpcz4KIFsgV0lUSCBbIFJFQ1VSU0lWRSBdIDxyZXBsYWNl YWJsZSBjbGFzcz0icGFyYW1ldGVyIj53aXRoX3F1ZXJ5PC9yZXBsYWNlYWJsZT4gWywgLi4uXSBd Ci1VUERBVEUgWyBPTkxZIF0gPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPnRhYmxlX25h bWU8L3JlcGxhY2VhYmxlPiBbICogXSBbIFsgQVMgXSA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFt ZXRlciI+YWxpYXM8L3JlcGxhY2VhYmxlPiBdCitVUERBVEUgWyBPTkxZIF0gPHJlcGxhY2VhYmxl IGNsYXNzPSJwYXJhbWV0ZXIiPnRhYmxlX25hbWU8L3JlcGxhY2VhYmxlPiBbICogXQorICAgIFsg Rk9SIFBPUlRJT04gT0YgPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPnJhbmdlX25hbWU8 L3JlcGxhY2VhYmxlPiA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+Zm9yX3BvcnRpb25f b2ZfdGFyZ2V0PC9yZXBsYWNlYWJsZT4gXQorICAgIFsgWyBBUyBdIDxyZXBsYWNlYWJsZSBjbGFz cz0icGFyYW1ldGVyIj5hbGlhczwvcmVwbGFjZWFibGU+IF0KICAgICBTRVQgeyA8cmVwbGFjZWFi bGUgY2xhc3M9InBhcmFtZXRlciI+Y29sdW1uX25hbWU8L3JlcGxhY2VhYmxlPiA9IHsgPHJlcGxh Y2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPmV4cHJlc3Npb248L3JlcGxhY2VhYmxlPiB8IERFRkFV TFQgfSB8CiAgICAgICAgICAgKCA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+Y29sdW1u X25hbWU8L3JlcGxhY2VhYmxlPiBbLCAuLi5dICkgPSBbIFJPVyBdICggeyA8cmVwbGFjZWFibGUg Y2xhc3M9InBhcmFtZXRlciI+ZXhwcmVzc2lvbjwvcmVwbGFjZWFibGU+IHwgREVGQVVMVCB9IFss IC4uLl0gKSB8CiAgICAgICAgICAgKCA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+Y29s dW1uX25hbWU8L3JlcGxhY2VhYmxlPiBbLCAuLi5dICkgPSAoIDxyZXBsYWNlYWJsZSBjbGFzcz0i cGFyYW1ldGVyIj5zdWItU0VMRUNUPC9yZXBsYWNlYWJsZT4gKQpAQCAtNTIsNiArNTQsNTAgQEAg VVBEQVRFIFsgT05MWSBdIDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj50YWJsZV9uYW1l PC9yZXBsYWNlYWJsZT4gWyAqIF0gWwogICAgY2lyY3Vtc3RhbmNlcy4KICAgPC9wYXJhPgogCisg IDxwYXJhPgorICAgSWYgdGhlIHRhYmxlIGhhcyBhIHJhbmdlIG9yIG11bHRpcmFuZ2UgY29sdW1u LAorICAgeW91IG1heSBzdXBwbHkgYSA8bGl0ZXJhbD5GT1IgUE9SVElPTiBPRjwvbGl0ZXJhbD4g Y2xhdXNlLCBhbmQgdGhlIHVwZGF0ZSB3aWxsCisgICBvbmx5IGFmZmVjdCByb3dzIHRoYXQgb3Zl cmxhcCB0aGUgZ2l2ZW4gaW50ZXJ2YWwuIEZ1cnRoZXJtb3JlLCBpZiBhIHJvdydzIGhpc3RvcnkK KyAgIGV4dGVuZHMgb3V0c2lkZSB0aGUgPGxpdGVyYWw+Rk9SIFBPUlRJT04gT0Y8L2xpdGVyYWw+ IGJvdW5kcywgdGhlbiB0aGUgdXBkYXRlCisgICB3aWxsIG9ubHkgY2hhbmdlIHRoZSBoaXN0b3J5 IHdpdGhpbiB0aG9zZSBib3VuZHMuIEluIGVmZmVjdCB5b3UgYXJlIHVwZGF0aW5nIGFueQorICAg bW9tZW50IHRhcmdldGVkIGJ5IDxsaXRlcmFsPkZPUiBQT1JUSU9OIE9GPC9saXRlcmFsPiBhbmQg bm8gbW9tZW50cyBvdXRzaWRlLgorICA8L3BhcmE+CisKKyAgPHBhcmE+CisgICBTcGVjaWZpY2Fs bHksIHdoZW4gPHByb2R1Y3RuYW1lPlBvc3RncmVTUUw8L3Byb2R1Y3RuYW1lPiB1cGRhdGVzIGEg cm93LAorICAgaXQgd2lsbCBhbHNvIGNoYW5nZSB0aGUgcmFuZ2Ugb3IgbXVsdGlyYW5nZSBzbyB0 aGF0IGl0cyBhcHBsaWNhdGlvbiB0aW1lCisgICBubyBsb25nZXIgZXh0ZW5kcyBiZXlvbmQgdGhl IHRhcmdldGVkIDxsaXRlcmFsPkZPUiBQT1JUSU9OIE9GPC9saXRlcmFsPiBib3VuZHMuCisgICBU aGVuIDxwcm9kdWN0bmFtZT5Qb3N0Z3JlU1FMPC9wcm9kdWN0bmFtZT4gd2lsbCA8bGl0ZXJhbD5J TlNFUlQ8L2xpdGVyYWw+CisgICBuZXcgPGdsb3NzdGVybSBsaW5rZW5kPSJnbG9zc2FyeS10ZW1w b3JhbC1sZWZ0b3ZlcnMiPnRlbXBvcmFsIGxlZnRvdmVyczwvZ2xvc3N0ZXJtPjoKKyAgIHJvd3Mg d2hvc2UgcmFuZ2Ugb3IgbXVsdGlyYW5nZSByZWNlaXZlcyB0aGUgcmVtYWluaW5nIGhpc3Rvcnkg b3V0c2lkZQorICAgdGhlIHRhcmdldGVkIDxsaXRlcmFsPkZST008L2xpdGVyYWw+LzxsaXRlcmFs PlRPPC9saXRlcmFsPiBib3VuZHMsIHdpdGggdGhlCisgICBvcmlnaW5hbCB2YWx1ZXMgaW4gdGhl aXIgb3RoZXIgY29sdW1ucy4gRm9yIHJhbmdlIGNvbHVtbnMsIHRoZXJlIHdpbGwgYmUgemVybwor ICAgdG8gdHdvIGluc2VydGVkIHJlY29yZHMsIGRlcGVuZGluZyBvbiB3aGV0aGVyIHRoZSBvcmln aW5hbCBoaXN0b3J5IHdhcworICAgY29tcGxldGVseSB1cGRhdGVkLCBleHRlbmRlZCBiZWZvcmUv YWZ0ZXIgdGhlIGNoYW5nZSwgb3IgYm90aC4gRm9yCisgICBpbnN0YW5jZSBnaXZlbiBhbiBvcmln aW5hbCByYW5nZSBvZiA8bGl0ZXJhbD5bMiw2KTwvbGl0ZXJhbD4sIGFuIHVwZGF0ZSBvZgorICAg PGxpdGVyYWw+WzEsNyk8L2xpdGVyYWw+IHlpZWxkcyBubyBsZWZ0b3ZlcnMsIGFuIHVwZGF0ZSBv ZgorICAgPGxpdGVyYWw+WzIsNSk8L2xpdGVyYWw+IHlpZWxkcyBvbmUsIGFuZCBhbiB1cGRhdGUg b2YKKyAgIDxsaXRlcmFsPlszLDUpPC9saXRlcmFsPiB5aWVsZHMgdHdvLiBNdWx0aXJhbmdlcyBu ZXZlciByZXF1aXJlIHR3byB0ZW1wb3JhbAorICAgbGVmdG92ZXJzLCBiZWNhdXNlIG9uZSB2YWx1 ZSBjYW4gYWx3YXlzIGNvbnRhaW4gd2hhdGV2ZXIgaGlzdG9yeSByZW1haW5zLgorICA8L3BhcmE+ CisKKyAgPHBhcmE+CisgICBUaGVzZSBzZWNvbmRhcnkgaW5zZXJ0cyBmaXJlIDxsaXRlcmFsPklO U0VSVDwvbGl0ZXJhbD4gdHJpZ2dlcnMuCisgICBCb3RoIDxsaXRlcmFsPlNUQVRFTUVOVDwvbGl0 ZXJhbD4gYW5kIDxsaXRlcmFsPlJPVzwvbGl0ZXJhbD4gdHJpZ2dlcnMgYXJlIGZpcmVkLgorICAg VGhlIDxsaXRlcmFsPkJFRk9SRSBVUERBVEU8L2xpdGVyYWw+IHRyaWdnZXJzIGFyZSBmaXJlZCBm aXJzdCwgdGhlbgorICAgPGxpdGVyYWw+QkVGT1JFIElOU0VSVDwvbGl0ZXJhbD4sIHRoZW4gPGxp dGVyYWw+QUZURVIgSU5TRVJUPC9saXRlcmFsPiwKKyAgIHRoZW4gPGxpdGVyYWw+QUZURVIgVVBE QVRFPC9saXRlcmFsPi4KKyAgPC9wYXJhPgorCisgIDxwYXJhPgorICAgVGhlc2Ugc2Vjb25kYXJ5 IGluc2VydHMgZG8gbm90IHJlcXVpcmUgPGxpdGVyYWw+SU5TRVJUPC9saXRlcmFsPiBwcml2aWxl Z2Ugb24KKyAgIHRoZSB0YWJsZS4gVGhpcyBpcyBiZWNhdXNlIGNvbmNlcHR1YWxseSBubyBuZXcg aW5mb3JtYXRpb24gaGFzIGJlZW4gYWRkZWQuCisgICBUaGUgaW5zZXJ0ZWQgcm93cyBvbmx5IHBy ZXNlcnZlIGV4aXN0aW5nIGRhdGEgYWJvdXQgdGhlIHVudGFyZ2V0ZWQgdGltZSBwZXJpb2QuCisg ICBOb3RlIHRoaXMgbWF5IHJlc3VsdCBpbiB1c2VycyBmaXJpbmcgPGxpdGVyYWw+SU5TRVJUPC9s aXRlcmFsPiB0cmlnZ2VycyB3aG8KKyAgIGRvbid0IGhhdmUgaW5zZXJ0IHByaXZpbGVnZXMsIHNv IGJlIGNhcmVmdWwgYWJvdXQgPGxpdGVyYWw+U0VDVVJJVFkgREVGSU5FUjwvbGl0ZXJhbD4KKyAg IHRyaWdnZXIgZnVuY3Rpb25zIQorICA8L3BhcmE+CisKICAgPHBhcmE+CiAgICBUaGUgb3B0aW9u YWwgPGxpdGVyYWw+UkVUVVJOSU5HPC9saXRlcmFsPiBjbGF1c2UgY2F1c2VzIDxjb21tYW5kPlVQ REFURTwvY29tbWFuZD4KICAgIHRvIGNvbXB1dGUgYW5kIHJldHVybiB2YWx1ZShzKSBiYXNlZCBv biBlYWNoIHJvdyBhY3R1YWxseSB1cGRhdGVkLgpAQCAtMTE2LDYgKzE2Miw1NyBAQCBVUERBVEUg WyBPTkxZIF0gPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPnRhYmxlX25hbWU8L3JlcGxh Y2VhYmxlPiBbICogXSBbCiAgICAgPC9saXN0aXRlbT4KICAgIDwvdmFybGlzdGVudHJ5PgogCisg ICA8dmFybGlzdGVudHJ5PgorICAgIDx0ZXJtPjxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVy Ij5yYW5nZV9uYW1lPC9yZXBsYWNlYWJsZT48L3Rlcm0+CisgICAgPGxpc3RpdGVtPgorICAgICA8 cGFyYT4KKyAgICAgIFRoZSByYW5nZSBvciBtdWx0aXJhbmdlIGNvbHVtbiB0byB1c2Ugd2hlbiBw ZXJmb3JtaW5nIGEgdGVtcG9yYWwgdXBkYXRlLgorICAgICA8L3BhcmE+CisgICAgPC9saXN0aXRl bT4KKyAgIDwvdmFybGlzdGVudHJ5PgorCisgICA8dmFybGlzdGVudHJ5PgorICAgIDx0ZXJtPjxy ZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5mb3JfcG9ydGlvbl9vZl90YXJnZXQ8L3JlcGxh Y2VhYmxlPjwvdGVybT4KKyAgICA8bGlzdGl0ZW0+CisgICAgIDxwYXJhPgorICAgICAgVGhlIGlu dGVydmFsIHRvIHVwZGF0ZS4gSWYgeW91IGFyZSB0YXJnZXRpbmcgYSByYW5nZSBjb2x1bW4sCisg ICAgICB5b3UgbWF5IGdpdmUgdGhpcyBpbiB0aGUgZm9ybSA8bGl0ZXJhbD5GUk9NPC9saXRlcmFs PgorICAgICAgPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPnN0YXJ0X3RpbWU8L3JlcGxh Y2VhYmxlPiA8bGl0ZXJhbD5UTzwvbGl0ZXJhbD4KKyAgICAgIDxyZXBsYWNlYWJsZSBjbGFzcz0i cGFyYW1ldGVyIj5lbmRfdGltZTwvcmVwbGFjZWFibGU+LgorICAgICAgT3RoZXJ3aXNlIHlvdSBt dXN0IHVzZQorICAgICAgPGxpdGVyYWw+KDwvbGl0ZXJhbD48cmVwbGFjZWFibGUgY2xhc3M9InBh cmFtZXRlciI+ZXhwcmVzc2lvbjwvcmVwbGFjZWFibGU+PGxpdGVyYWw+KTwvbGl0ZXJhbD4KKyAg ICAgIHdoZXJlIHRoZSBleHByZXNzaW9uIHlpZWxkcyBhIHZhbHVlIG9mIHRoZSBzYW1lIHR5cGUg YXMKKyAgICAgIDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5yYW5nZV9uYW1lPC9yZXBs YWNlYWJsZT4uCisgICAgIDwvcGFyYT4KKyAgICA8L2xpc3RpdGVtPgorICAgPC92YXJsaXN0ZW50 cnk+CisKKyAgIDx2YXJsaXN0ZW50cnk+CisgICAgPHRlcm0+PHJlcGxhY2VhYmxlIGNsYXNzPSJw YXJhbWV0ZXIiPnN0YXJ0X3RpbWU8L3JlcGxhY2VhYmxlPjwvdGVybT4KKyAgICA8bGlzdGl0ZW0+ CisgICAgIDxwYXJhPgorICAgICAgVGhlIGVhcmxpZXN0IHRpbWUgKGluY2x1c2l2ZSkgdG8gY2hh bmdlIGluIGEgdGVtcG9yYWwgdXBkYXRlLgorICAgICAgVGhpcyBtdXN0IGJlIGEgdmFsdWUgbWF0 Y2hpbmcgdGhlIGJhc2UgdHlwZSBvZiB0aGUgcmFuZ2UgZnJvbQorICAgICAgPHJlcGxhY2VhYmxl IGNsYXNzPSJwYXJhbWV0ZXIiPnJhbmdlX25hbWU8L3JlcGxhY2VhYmxlPi4gQQorICAgICAgPGxp dGVyYWw+TlVMTDwvbGl0ZXJhbD4gaGVyZSBpbmRpY2F0ZXMgYW4gdXBkYXRlIHdob3NlIGJlZ2lu bmluZyBpcworICAgICAgdW5ib3VuZGVkIChhcyB3aXRoIHJhbmdlIHR5cGVzKS4KKyAgICAgPC9w YXJhPgorICAgIDwvbGlzdGl0ZW0+CisgICA8L3Zhcmxpc3RlbnRyeT4KKworICAgPHZhcmxpc3Rl bnRyeT4KKyAgICA8dGVybT48cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+ZW5kX3RpbWU8 L3JlcGxhY2VhYmxlPjwvdGVybT4KKyAgICA8bGlzdGl0ZW0+CisgICAgIDxwYXJhPgorICAgICAg VGhlIGxhdGVzdCB0aW1lIChleGNsdXNpdmUpIHRvIGNoYW5nZSBpbiBhIHRlbXBvcmFsIHVwZGF0 ZS4KKyAgICAgIFRoaXMgbXVzdCBiZSBhIHZhbHVlIG1hdGNoaW5nIHRoZSBiYXNlIHR5cGUgb2Yg dGhlIHJhbmdlIGZyb20KKyAgICAgIDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5yYW5n ZV9uYW1lPC9yZXBsYWNlYWJsZT4uIEEKKyAgICAgIDxsaXRlcmFsPk5VTEw8L2xpdGVyYWw+IGhl cmUgaW5kaWNhdGVzIGFuIHVwZGF0ZSB3aG9zZSBlbmQgaXMgdW5ib3VuZGVkCisgICAgICAoYXMg d2l0aCByYW5nZSB0eXBlcykuCisgICAgIDwvcGFyYT4KKyAgICA8L2xpc3RpdGVtPgorICAgPC92 YXJsaXN0ZW50cnk+CisKICAgIDx2YXJsaXN0ZW50cnk+CiAgICAgPHRlcm0+PHJlcGxhY2VhYmxl IGNsYXNzPSJwYXJhbWV0ZXIiPmNvbHVtbl9uYW1lPC9yZXBsYWNlYWJsZT48L3Rlcm0+CiAgICAg PGxpc3RpdGVtPgpAQCAtMjgzLDYgKzM4MCwxMCBAQCBVUERBVEUgPHJlcGxhY2VhYmxlIGNsYXNz PSJwYXJhbWV0ZXIiPmNvdW50PC9yZXBsYWNlYWJsZT4KICAgIHVwZGF0ZXMgd2VyZSBzdXBwcmVz c2VkIGJ5IGEgPGxpdGVyYWw+QkVGT1JFIFVQREFURTwvbGl0ZXJhbD4gdHJpZ2dlci4gIElmCiAg ICA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+Y291bnQ8L3JlcGxhY2VhYmxlPiBpcyAw LCBubyByb3dzIHdlcmUKICAgIHVwZGF0ZWQgYnkgdGhlIHF1ZXJ5ICh0aGlzIGlzIG5vdCBjb25z aWRlcmVkIGFuIGVycm9yKS4KKyAgIElmIDxsaXRlcmFsPkZPUiBQT1JUSU9OIE9GPC9saXRlcmFs PiB3YXMgdXNlZCwgdGhlCisgICA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+Y291bnQ8 L3JlcGxhY2VhYmxlPiBhbHNvIGluY2x1ZGVzCisgICA8Z2xvc3N0ZXJtIGxpbmtlbmQ9Imdsb3Nz YXJ5LXRlbXBvcmFsLWxlZnRvdmVycyI+dGVtcG9yYWwgbGVmdG92ZXJzPC9nbG9zc3Rlcm0+Cisg ICB0aGF0IHdlcmUgaW5zZXJ0ZWQuCiAgIDwvcGFyYT4KIAogICA8cGFyYT4KZGlmZiAtLWdpdCBh L2RvYy9zcmMvc2dtbC90cmlnZ2VyLnNnbWwgYi9kb2Mvc3JjL3NnbWwvdHJpZ2dlci5zZ21sCmlu ZGV4IDAwNjJmMWEzZmQxLi4yYjY4YzM4ODJlYyAxMDA2NDQKLS0tIGEvZG9jL3NyYy9zZ21sL3Ry aWdnZXIuc2dtbAorKysgYi9kb2Mvc3JjL3NnbWwvdHJpZ2dlci5zZ21sCkBAIC0zNzMsNiArMzcz LDE1IEBACiAgICAgcmVzcG9uc2liaWxpdHkgdG8gYXZvaWQgdGhhdC4KICAgIDwvcGFyYT4KIAor ICAgPHBhcmE+CisgICAgSWYgYW4gPGNvbW1hbmQ+VVBEQVRFPC9jb21tYW5kPiBvciA8Y29tbWFu ZD5ERUxFVEU8L2NvbW1hbmQ+IHVzZXMKKyAgICA8bGl0ZXJhbD5GT1IgUE9SVElPTiBPRjwvbGl0 ZXJhbD4sIGNhdXNpbmcgbmV3IHJvd3MgdG8gYmUgaW5zZXJ0ZWQKKyAgICB0byBwcmVzZXJ2ZSB0 aGUgbGVmdG92ZXIgdW50YXJnZXRlZCBwYXJ0IG9mIG1vZGlmaWVkIHJlY29yZHMsIHRoZW4KKyAg ICA8Y29tbWFuZD5JTlNFUlQ8L2NvbW1hbmQ+IHRyaWdnZXJzIGFyZSBmaXJlZCBmb3IgZWFjaCBp bnNlcnRlZAorICAgIHJvdy4gRWFjaCByb3cgaXMgaW5zZXJ0ZWQgc2VwYXJhdGVseSwgc28gdGhl eSBmaXJlIHRoZWlyIG93bgorICAgIHN0YXRlbWVudCB0cmlnZ2VycywgYW5kIHRoZXkgaGF2ZSB0 aGVpciBvd24gdHJhbnNpdGlvbiB0YWJsZXMuCisgICA8L3BhcmE+CisKICAgIDxwYXJhPgogICAg IDxpbmRleHRlcm0+CiAgICAgIDxwcmltYXJ5PnRyaWdnZXI8L3ByaW1hcnk+CmRpZmYgLS1naXQg YS9zcmMvYmFja2VuZC9leGVjdXRvci9leGVjTWFpbi5jIGIvc3JjL2JhY2tlbmQvZXhlY3V0b3Iv ZXhlY01haW4uYwppbmRleCAyN2M5ZWVjNjk3Yi4uMjY5Yzg3N2RiY2YgMTAwNjQ0Ci0tLSBhL3Ny Yy9iYWNrZW5kL2V4ZWN1dG9yL2V4ZWNNYWluLmMKKysrIGIvc3JjL2JhY2tlbmQvZXhlY3V0b3Iv ZXhlY01haW4uYwpAQCAtMTI5NSw2ICsxMjk1LDcgQEAgSW5pdFJlc3VsdFJlbEluZm8oUmVzdWx0 UmVsSW5mbyAqcmVzdWx0UmVsSW5mbywKIAlyZXN1bHRSZWxJbmZvLT5yaV9wcm9qZWN0UmV0dXJu aW5nID0gTlVMTDsKIAlyZXN1bHRSZWxJbmZvLT5yaV9vbkNvbmZsaWN0QXJiaXRlckluZGV4ZXMg PSBOSUw7CiAJcmVzdWx0UmVsSW5mby0+cmlfb25Db25mbGljdCA9IE5VTEw7CisJcmVzdWx0UmVs SW5mby0+cmlfZm9yUG9ydGlvbk9mID0gTlVMTDsKIAlyZXN1bHRSZWxJbmZvLT5yaV9SZXR1cm5p bmdTbG90ID0gTlVMTDsKIAlyZXN1bHRSZWxJbmZvLT5yaV9UcmlnT2xkU2xvdCA9IE5VTEw7CiAJ cmVzdWx0UmVsSW5mby0+cmlfVHJpZ05ld1Nsb3QgPSBOVUxMOwpkaWZmIC0tZ2l0IGEvc3JjL2Jh Y2tlbmQvZXhlY3V0b3Ivbm9kZU1vZGlmeVRhYmxlLmMgYi9zcmMvYmFja2VuZC9leGVjdXRvci9u b2RlTW9kaWZ5VGFibGUuYwppbmRleCBlNDRmMTIyMzg4Ni4uNmJiZjA5OGUxMzEgMTAwNjQ0Ci0t LSBhL3NyYy9iYWNrZW5kL2V4ZWN1dG9yL25vZGVNb2RpZnlUYWJsZS5jCisrKyBiL3NyYy9iYWNr ZW5kL2V4ZWN1dG9yL25vZGVNb2RpZnlUYWJsZS5jCkBAIC02OSw2ICs2OSw3IEBACiAjaW5jbHVk ZSAidXRpbHMvYnVpbHRpbnMuaCIKICNpbmNsdWRlICJ1dGlscy9kYXR1bS5oIgogI2luY2x1ZGUg InV0aWxzL2luamVjdGlvbl9wb2ludC5oIgorI2luY2x1ZGUgInV0aWxzL3JhbmdldHlwZXMuaCIK ICNpbmNsdWRlICJ1dGlscy9yZWwuaCIKICNpbmNsdWRlICJ1dGlscy9zbmFwbWdyLmgiCiAKQEAg LTEzMiw3ICsxMzMsNiBAQCB0eXBlZGVmIHN0cnVjdCBVcGRhdGVDb250ZXh0CiAJTG9ja1R1cGxl TW9kZSBsb2NrbW9kZTsKIH0gVXBkYXRlQ29udGV4dDsKIAotCiBzdGF0aWMgdm9pZCBFeGVjQmF0 Y2hJbnNlcnQoTW9kaWZ5VGFibGVTdGF0ZSAqbXRzdGF0ZSwKIAkJCQkJCQlSZXN1bHRSZWxJbmZv ICpyZXN1bHRSZWxJbmZvLAogCQkJCQkJCVR1cGxlVGFibGVTbG90ICoqc2xvdHMsCkBAIC0xNTMs NiArMTUzLDEwIEBAIHN0YXRpYyBib29sIEV4ZWNPbkNvbmZsaWN0VXBkYXRlKE1vZGlmeVRhYmxl Q29udGV4dCAqY29udGV4dCwKIAkJCQkJCQkJIFR1cGxlVGFibGVTbG90ICpleGNsdWRlZFNsb3Qs CiAJCQkJCQkJCSBib29sIGNhblNldFRhZywKIAkJCQkJCQkJIFR1cGxlVGFibGVTbG90ICoqcmV0 dXJuaW5nKTsKK3N0YXRpYyB2b2lkIEV4ZWNGb3JQb3J0aW9uT2ZMZWZ0b3ZlcnMoTW9kaWZ5VGFi bGVDb250ZXh0ICpjb250ZXh0LAorCQkJCQkJCQkJICBFU3RhdGUgKmVzdGF0ZSwKKwkJCQkJCQkJ CSAgUmVzdWx0UmVsSW5mbyAqcmVzdWx0UmVsSW5mbywKKwkJCQkJCQkJCSAgSXRlbVBvaW50ZXIg dHVwbGVpZCk7CiBzdGF0aWMgVHVwbGVUYWJsZVNsb3QgKkV4ZWNQcmVwYXJlVHVwbGVSb3V0aW5n KE1vZGlmeVRhYmxlU3RhdGUgKm10c3RhdGUsCiAJCQkJCQkJCQkJCSAgIEVTdGF0ZSAqZXN0YXRl LAogCQkJCQkJCQkJCQkgICBQYXJ0aXRpb25UdXBsZVJvdXRpbmcgKnByb3V0ZSwKQEAgLTE3NSw2 ICsxNzksOSBAQCBzdGF0aWMgVHVwbGVUYWJsZVNsb3QgKkV4ZWNNZXJnZU1hdGNoZWQoTW9kaWZ5 VGFibGVDb250ZXh0ICpjb250ZXh0LAogc3RhdGljIFR1cGxlVGFibGVTbG90ICpFeGVjTWVyZ2VO b3RNYXRjaGVkKE1vZGlmeVRhYmxlQ29udGV4dCAqY29udGV4dCwKIAkJCQkJCQkJCQkgICBSZXN1 bHRSZWxJbmZvICpyZXN1bHRSZWxJbmZvLAogCQkJCQkJCQkJCSAgIGJvb2wgY2FuU2V0VGFnKTsK K3N0YXRpYyB2b2lkIEV4ZWNTZXR1cFRyYW5zaXRpb25DYXB0dXJlU3RhdGUoTW9kaWZ5VGFibGVT dGF0ZSAqbXRzdGF0ZSwgRVN0YXRlICplc3RhdGUpOworc3RhdGljIHZvaWQgZmlyZUJTVHJpZ2dl cnMoTW9kaWZ5VGFibGVTdGF0ZSAqbm9kZSk7CitzdGF0aWMgdm9pZCBmaXJlQVNUcmlnZ2VycyhN b2RpZnlUYWJsZVN0YXRlICpub2RlKTsKIAogCiAvKgpAQCAtMTM1Nyw2ICsxMzY0LDE5MiBAQCBF eGVjSW5zZXJ0KE1vZGlmeVRhYmxlQ29udGV4dCAqY29udGV4dCwKIAlyZXR1cm4gcmVzdWx0Owog fQogCisvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tCisgKgkJRXhlY0ZvclBvcnRpb25PZkxlZnRvdmVycworICoKKyAqCQlJ bnNlcnQgdHVwbGVzIGZvciB0aGUgdW50b3VjaGVkIHBvcnRpb24gb2YgYSByb3cgaW4gYSBGT1IK KyAqCQlQT1JUSU9OIE9GIFVQREFURS9ERUxFVEUKKyAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAqLworc3RhdGljIHZv aWQKK0V4ZWNGb3JQb3J0aW9uT2ZMZWZ0b3ZlcnMoTW9kaWZ5VGFibGVDb250ZXh0ICpjb250ZXh0 LAorCQkJCQkJICBFU3RhdGUgKmVzdGF0ZSwKKwkJCQkJCSAgUmVzdWx0UmVsSW5mbyAqcmVzdWx0 UmVsSW5mbywKKwkJCQkJCSAgSXRlbVBvaW50ZXIgdHVwbGVpZCkKK3sKKwlNb2RpZnlUYWJsZVN0 YXRlICptdHN0YXRlID0gY29udGV4dC0+bXRzdGF0ZTsKKwlNb2RpZnlUYWJsZSAqbm9kZSA9IChN b2RpZnlUYWJsZSAqKSBtdHN0YXRlLT5wcy5wbGFuOworCUZvclBvcnRpb25PZkV4cHIgKmZvclBv cnRpb25PZiA9IChGb3JQb3J0aW9uT2ZFeHByICopIG5vZGUtPmZvclBvcnRpb25PZjsKKwlBdHRy TnVtYmVyCXJhbmdlQXR0bm87CisJRGF0dW0JCW9sZFJhbmdlOworCVR5cGVDYWNoZUVudHJ5ICp0 eXBjYWNoZTsKKwlGb3JQb3J0aW9uT2ZTdGF0ZSAqZnBvU3RhdGUgPSByZXN1bHRSZWxJbmZvLT5y aV9mb3JQb3J0aW9uT2Y7CisJVHVwbGVUYWJsZVNsb3QgKm9sZHR1cGxlU2xvdCA9IGZwb1N0YXRl LT5mcF9FeGlzdGluZzsKKwlUdXBsZVRhYmxlU2xvdCAqbGVmdG92ZXJTbG90ID0gZnBvU3RhdGUt PmZwX0xlZnRvdmVyOworCVR1cGxlQ29udmVyc2lvbk1hcCAqbWFwID0gTlVMTDsKKwlIZWFwVHVw bGUJb2xkdHVwbGUgPSBOVUxMOworCUNtZFR5cGUJCW9sZE9wZXJhdGlvbjsKKwlUcmFuc2l0aW9u Q2FwdHVyZVN0YXRlICpvbGRUY3M7CisJRm1nckluZm8JZmxpbmZvOworCVJldHVyblNldEluZm8g cnNpOworCWJvb2wJCWRpZEluaXQgPSBmYWxzZTsKKwlib29sCQlzaG91bGRGcmVlID0gZmFsc2U7 CisKKwlMT0NBTF9GQ0lORk8oZmNpbmZvLCAyKTsKKworCS8qCisJICogR2V0IHRoZSBvbGQgcHJl LVVQREFURS9ERUxFVEUgdHVwbGUuIFdlIHdpbGwgdXNlIGl0cyByYW5nZSB0byBjb21wdXRlCisJ ICogdW50b3VjaGVkIHBhcnRzIG9mIGhpc3RvcnksIGFuZCBpZiBuZWNlc3Nhcnkgd2Ugd2lsbCBp bnNlcnQgY29waWVzCisJICogd2l0aCB0cnVuY2F0ZWQgc3RhcnQvZW5kIHRpbWVzLgorCSAqCisJ ICogV2UgaGF2ZSBhbHJlYWR5IGxvY2tlZCB0aGUgdHVwbGUgaW4gRXhlY1VwZGF0ZS9FeGVjRGVs ZXRlLCBhbmQgaXQgaGFzCisJICogcGFzc2VkIEV2YWxQbGFuUXVhbC4gVGhpcyBlbnN1cmVzIHRo YXQgY29uY3VycmVudCB1cGRhdGVzIGluIFJFQUQKKwkgKiBDT01NSVRURUQgY2FuJ3QgaW5zZXJ0 IGNvbmZsaWN0aW5nIHRlbXBvcmFsIGxlZnRvdmVycy4KKwkgKi8KKwlpZiAoIXRhYmxlX3R1cGxl X2ZldGNoX3Jvd192ZXJzaW9uKHJlc3VsdFJlbEluZm8tPnJpX1JlbGF0aW9uRGVzYywgdHVwbGVp ZCwgU25hcHNob3RBbnksIG9sZHR1cGxlU2xvdCkpCisJCWVsb2coRVJST1IsICJmYWlsZWQgdG8g ZmV0Y2ggdHVwbGUgZm9yIEZPUiBQT1JUSU9OIE9GIik7CisKKwkvKgorCSAqIEdldCB0aGUgb2xk IHJhbmdlIG9mIHRoZSByZWNvcmQgYmVpbmcgdXBkYXRlZC9kZWxldGVkLiBNdXN0IHJlYWQgd2l0 aAorCSAqIHRoZSBhdHRubyBvZiB0aGUgbGVhZiBwYXJ0aXRpb24gYmVpbmcgdXBkYXRlZC4KKwkg Ki8KKworCXJhbmdlQXR0bm8gPSBmb3JQb3J0aW9uT2YtPnJhbmdlVmFyLT52YXJhdHRubzsKKwlp ZiAocmVzdWx0UmVsSW5mby0+cmlfUm9vdFJlc3VsdFJlbEluZm8pCisJCW1hcCA9IEV4ZWNHZXRD aGlsZFRvUm9vdE1hcChyZXN1bHRSZWxJbmZvKTsKKwlpZiAobWFwICE9IE5VTEwpCisJCXJhbmdl QXR0bm8gPSBtYXAtPmF0dHJNYXAtPmF0dG51bXNbcmFuZ2VBdHRubyAtIDFdOworCXNsb3RfZ2V0 YWxsYXR0cnMob2xkdHVwbGVTbG90KTsKKworCWlmIChvbGR0dXBsZVNsb3QtPnR0c19pc251bGxb cmFuZ2VBdHRubyAtIDFdKQorCQllbG9nKEVSUk9SLCAiZm91bmQgYSBOVUxMIHJhbmdlIGluIGEg dGVtcG9yYWwgdGFibGUiKTsKKwlvbGRSYW5nZSA9IG9sZHR1cGxlU2xvdC0+dHRzX3ZhbHVlc1ty YW5nZUF0dG5vIC0gMV07CisKKwkvKgorCSAqIEdldCB0aGUgcmFuZ2UncyB0eXBlIGNhY2hlIGVu dHJ5LiBUaGlzIGlzIHdvcnRoIGNhY2hpbmcgZm9yIHRoZSB3aG9sZQorCSAqIFVQREFURS9ERUxF VEUgYXMgcmFuZ2UgZnVuY3Rpb25zIGRvLgorCSAqLworCisJdHlwY2FjaGUgPSBmcG9TdGF0ZS0+ ZnBfbGVmdG92ZXJzdHlwY2FjaGU7CisJaWYgKHR5cGNhY2hlID09IE5VTEwpCisJeworCQl0eXBj YWNoZSA9IGxvb2t1cF90eXBlX2NhY2hlKGZvclBvcnRpb25PZi0+cmFuZ2VUeXBlLCAwKTsKKwkJ ZnBvU3RhdGUtPmZwX2xlZnRvdmVyc3R5cGNhY2hlID0gdHlwY2FjaGU7CisJfQorCisJLyoKKwkg KiBHZXQgdGhlIHJhbmdlcyB0byB0aGUgbGVmdC9yaWdodCBvZiB0aGUgdGFyZ2V0ZWQgcmFuZ2Uu IFdlIGNhbGwgYSBTRVRPRgorCSAqIHN1cHBvcnQgZnVuY3Rpb24gYW5kIGluc2VydCBhcyBtYW55 IHRlbXBvcmFsIGxlZnRvdmVycyBhcyBpdCBnaXZlcyB1cy4KKwkgKiBBbHRob3VnaCByYW5nZXR5 cGVzIGhhdmUgMC8xLzIgbGVmdG92ZXJzLCBtdWx0aXJhbmdlcyBoYXZlIDAvMSwgYW5kCisJICog b3RoZXIgdHlwZXMgbWF5IGhhdmUgbW9yZS4KKwkgKi8KKworCWZtZ3JfaW5mbyhmb3JQb3J0aW9u T2YtPndpdGhvdXRQb3J0aW9uUHJvYywgJmZsaW5mbyk7CisJcnNpLnR5cGUgPSBUX1JldHVyblNl dEluZm87CisJcnNpLmVjb250ZXh0ID0gbXRzdGF0ZS0+cHMucHNfRXhwckNvbnRleHQ7CisJcnNp LmV4cGVjdGVkRGVzYyA9IE5VTEw7CisJcnNpLmFsbG93ZWRNb2RlcyA9IChpbnQpIChTRlJNX1Zh bHVlUGVyQ2FsbCk7CisJcnNpLnJldHVybk1vZGUgPSBTRlJNX1ZhbHVlUGVyQ2FsbDsKKwlyc2ku c2V0UmVzdWx0ID0gTlVMTDsKKwlyc2kuc2V0RGVzYyA9IE5VTEw7CisKKwlJbml0RnVuY3Rpb25D YWxsSW5mb0RhdGEoKmZjaW5mbywgJmZsaW5mbywgMiwgSW52YWxpZE9pZCwgTlVMTCwgKE5vZGUg KikgJnJzaSk7CisJZmNpbmZvLT5hcmdzWzBdLnZhbHVlID0gb2xkUmFuZ2U7CisJZmNpbmZvLT5h cmdzWzBdLmlzbnVsbCA9IGZhbHNlOworCWZjaW5mby0+YXJnc1sxXS52YWx1ZSA9IGZwb1N0YXRl LT5mcF90YXJnZXRSYW5nZTsKKwlmY2luZm8tPmFyZ3NbMV0uaXNudWxsID0gZmFsc2U7CisKKwkv KgorCSAqIElmIHRoZXJlIGFyZSBwYXJ0aXRpb25zLCB3ZSBtdXN0IGluc2VydCBpbnRvIHRoZSBy b290IHRhYmxlLCBzbyB3ZSBnZXQKKwkgKiB0dXBsZSByb3V0aW5nLiBXZSBhbHJlYWR5IHNldCB1 cCBsZWZ0b3ZlclNsb3Qgd2l0aCB0aGUgcm9vdCB0dXBsZQorCSAqIGRlc2NyaXB0b3IuCisJICov CisJaWYgKHJlc3VsdFJlbEluZm8tPnJpX1Jvb3RSZXN1bHRSZWxJbmZvKQorCQlyZXN1bHRSZWxJ bmZvID0gcmVzdWx0UmVsSW5mby0+cmlfUm9vdFJlc3VsdFJlbEluZm87CisKKwkvKgorCSAqIElu c2VydCBhIGxlZnRvdmVyIGZvciBlYWNoIHZhbHVlIHJldHVybmVkIGJ5IHRoZSB3aXRob3V0X3Bv cnRpb24gaGVscGVyCisJICogZnVuY3Rpb24KKwkgKi8KKwl3aGlsZSAodHJ1ZSkKKwl7CisJCURh dHVtCQlsZWZ0b3ZlciA9IEZ1bmN0aW9uQ2FsbEludm9rZShmY2luZm8pOworCisJCS8qIEFyZSB3 ZSBkb25lPyAqLworCQlpZiAocnNpLmlzRG9uZSA9PSBFeHByRW5kUmVzdWx0KQorCQkJYnJlYWs7 CisKKwkJaWYgKGZjaW5mby0+aXNudWxsKQorCQkJZWxvZyhFUlJPUiwgIkdvdCBhIG51bGwgZnJv bSB3aXRob3V0X3BvcnRpb24gZnVuY3Rpb24iKTsKKworCQlpZiAoIWRpZEluaXQpCisJCXsKKwkJ CS8qCisJCQkgKiBNYWtlIGEgY29weSBvZiB0aGUgcHJlLVVQREFURSByb3cuIFRoZW4gd2UnbGwg b3ZlcndyaXRlIHRoZQorCQkJICogcmFuZ2UgY29sdW1uIGJlbG93LiBDb252ZXJ0IG9sZHR1cGxl IHRvIHRoZSBiYXNlIHRhYmxlJ3MgZm9ybWF0CisJCQkgKiBpZiBuZWNlc3NhcnkuIFdlIG5lZWQg dG8gaW5zZXJ0IHRlbXBvcmFsIGxlZnRvdmVycyB0aHJvdWdoIHRoZQorCQkJICogcm9vdCBwYXJ0 aXRpb24gc28gdGhleSBnZXQgcm91dGVkIGNvcnJlY3RseS4KKwkJCSAqLworCQkJaWYgKG1hcCAh PSBOVUxMKQorCQkJeworCQkJCWxlZnRvdmVyU2xvdCA9IGV4ZWN1dGVfYXR0cl9tYXBfc2xvdCht YXAtPmF0dHJNYXAsCisJCQkJCQkJCQkJCQkJIG9sZHR1cGxlU2xvdCwKKwkJCQkJCQkJCQkJCQkg bGVmdG92ZXJTbG90KTsKKwkJCX0KKwkJCWVsc2UKKwkJCXsKKwkJCQlvbGR0dXBsZSA9IEV4ZWNG ZXRjaFNsb3RIZWFwVHVwbGUob2xkdHVwbGVTbG90LCBmYWxzZSwgJnNob3VsZEZyZWUpOworCQkJ CUV4ZWNGb3JjZVN0b3JlSGVhcFR1cGxlKG9sZHR1cGxlLCBsZWZ0b3ZlclNsb3QsIGZhbHNlKTsK KwkJCX0KKworCQkJLyoKKwkJCSAqIFNhdmUgc29tZSBtdHN0YXRlIHRoaW5ncyBzbyB3ZSBjYW4g cmVzdG9yZSB0aGVtIGJlbG93LiBYWFg6CisJCQkgKiBTaG91bGQgd2UgY3JlYXRlIG91ciBvd24g TW9kaWZ5VGFibGVTdGF0ZSBpbnN0ZWFkPworCQkJICovCisJCQlvbGRPcGVyYXRpb24gPSBtdHN0 YXRlLT5vcGVyYXRpb247CisJCQltdHN0YXRlLT5vcGVyYXRpb24gPSBDTURfSU5TRVJUOworCQkJ b2xkVGNzID0gbXRzdGF0ZS0+bXRfdHJhbnNpdGlvbl9jYXB0dXJlOworCisJCQlkaWRJbml0ID0g dHJ1ZTsKKwkJfQorCisJCWxlZnRvdmVyU2xvdC0+dHRzX3ZhbHVlc1tmb3JQb3J0aW9uT2YtPnJh bmdlVmFyLT52YXJhdHRubyAtIDFdID0gbGVmdG92ZXI7CisJCWxlZnRvdmVyU2xvdC0+dHRzX2lz bnVsbFtmb3JQb3J0aW9uT2YtPnJhbmdlVmFyLT52YXJhdHRubyAtIDFdID0gZmFsc2U7CisJCUV4 ZWNNYXRlcmlhbGl6ZVNsb3QobGVmdG92ZXJTbG90KTsKKworCQkvKgorCQkgKiBJZiB0aGVyZSBh cmUgcGFydGl0aW9ucywgd2UgbXVzdCBpbnNlcnQgaW50byB0aGUgcm9vdCB0YWJsZSwgc28gd2UK KwkJICogZ2V0IHR1cGxlIHJvdXRpbmcuIFdlIGFscmVhZHkgc2V0IHVwIGxlZnRvdmVyU2xvdCB3 aXRoIHRoZSByb290CisJCSAqIHR1cGxlIGRlc2NyaXB0b3IuCisJCSAqLworCQlpZiAocmVzdWx0 UmVsSW5mby0+cmlfUm9vdFJlc3VsdFJlbEluZm8pCisJCQlyZXN1bHRSZWxJbmZvID0gcmVzdWx0 UmVsSW5mby0+cmlfUm9vdFJlc3VsdFJlbEluZm87CisKKwkJLyoKKwkJICogVGhlIHN0YW5kYXJk IHNheXMgdGhhdCBlYWNoIHRlbXBvcmFsIGxlZnRvdmVyIHNob3VsZCBleGVjdXRlIGl0cworCQkg KiBvd24gSU5TRVJUIHN0YXRlbWVudCwgZmlyaW5nIGFsbCBzdGF0ZW1lbnQgYW5kIHJvdyB0cmln Z2VycywgYnV0CisJCSAqIHNraXBwaW5nIGluc2VydCBwZXJtaXNzaW9uIGNoZWNrcy4gVGhlcmVm b3JlIHdlIGdpdmUgZWFjaCBpbnNlcnQKKwkJICogaXRzIG93biB0cmFuc2l0aW9uIHRhYmxlLiBJ ZiB3ZSBqdXN0IHB1c2ggJiBwb3AgYSBuZXcgdHJpZ2dlciBsZXZlbAorCQkgKiBmb3IgZWFjaCBp bnNlcnQsIHdlIGdldCBleGFjdGx5IHdoYXQgd2UgbmVlZC4KKwkJICovCisJCUFmdGVyVHJpZ2dl ckJlZ2luUXVlcnkoKTsKKwkJRXhlY1NldHVwVHJhbnNpdGlvbkNhcHR1cmVTdGF0ZShtdHN0YXRl LCBlc3RhdGUpOworCQlmaXJlQlNUcmlnZ2VycyhtdHN0YXRlKTsKKwkJRXhlY0luc2VydChjb250 ZXh0LCByZXN1bHRSZWxJbmZvLCBsZWZ0b3ZlclNsb3QsIG5vZGUtPmNhblNldFRhZywgTlVMTCwg TlVMTCk7CisJCWZpcmVBU1RyaWdnZXJzKG10c3RhdGUpOworCQlBZnRlclRyaWdnZXJFbmRRdWVy eShlc3RhdGUpOworCX0KKworCWlmIChkaWRJbml0KQorCXsKKwkJbXRzdGF0ZS0+b3BlcmF0aW9u ID0gb2xkT3BlcmF0aW9uOworCQltdHN0YXRlLT5tdF90cmFuc2l0aW9uX2NhcHR1cmUgPSBvbGRU Y3M7CisKKwkJaWYgKHNob3VsZEZyZWUpCisJCQloZWFwX2ZyZWV0dXBsZShvbGR0dXBsZSk7CisJ fQorfQorCiAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tCiAgKgkJRXhlY0JhdGNoSW5zZXJ0CiAgKgpAQCAtMTUxMCw3ICsx NzAzLDggQEAgRXhlY0RlbGV0ZUFjdChNb2RpZnlUYWJsZUNvbnRleHQgKmNvbnRleHQsIFJlc3Vs dFJlbEluZm8gKnJlc3VsdFJlbEluZm8sCiAgKgogICogQ2xvc2luZyBzdGVwcyBvZiB0dXBsZSBk ZWxldGlvbjsgdGhpcyBpbnZva2VzIEFGVEVSIEZPUiBFQUNIIFJPVyB0cmlnZ2VycywKICAqIGlu Y2x1ZGluZyB0aGUgVVBEQVRFIHRyaWdnZXJzIGlmIHRoZSBkZWxldGlvbiBpcyBiZWluZyBkb25l IGFzIHBhcnQgb2YgYQotICogY3Jvc3MtcGFydGl0aW9uIHR1cGxlIG1vdmUuCisgKiBjcm9zcy1w YXJ0aXRpb24gdHVwbGUgbW92ZS4gSXQgYWxzbyBpbnNlcnRzIHRlbXBvcmFsIGxlZnRvdmVycyBm cm9tIGEKKyAqIERFTEVURSBGT1IgUE9SVElPTiBPRi4KICAqLwogc3RhdGljIHZvaWQKIEV4ZWNE ZWxldGVFcGlsb2d1ZShNb2RpZnlUYWJsZUNvbnRleHQgKmNvbnRleHQsIFJlc3VsdFJlbEluZm8g KnJlc3VsdFJlbEluZm8sCkBAIC0xNTQzLDYgKzE3MzcsMTAgQEAgRXhlY0RlbGV0ZUVwaWxvZ3Vl KE1vZGlmeVRhYmxlQ29udGV4dCAqY29udGV4dCwgUmVzdWx0UmVsSW5mbyAqcmVzdWx0UmVsSW5m bywKIAkJYXJfZGVsZXRlX3RyaWdfdGNzID0gTlVMTDsKIAl9CiAKKwkvKiBDb21wdXRlIHRlbXBv cmFsIGxlZnRvdmVycyBpbiBGT1IgUE9SVElPTiBPRiAqLworCWlmICgoKE1vZGlmeVRhYmxlICop IGNvbnRleHQtPm10c3RhdGUtPnBzLnBsYW4pLT5mb3JQb3J0aW9uT2YpCisJCUV4ZWNGb3JQb3J0 aW9uT2ZMZWZ0b3ZlcnMoY29udGV4dCwgZXN0YXRlLCByZXN1bHRSZWxJbmZvLCB0dXBsZWlkKTsK KwogCS8qIEFGVEVSIFJPVyBERUxFVEUgVHJpZ2dlcnMgKi8KIAlFeGVjQVJEZWxldGVUcmlnZ2Vy cyhlc3RhdGUsIHJlc3VsdFJlbEluZm8sIHR1cGxlaWQsIG9sZHR1cGxlLAogCQkJCQkJIGFyX2Rl bGV0ZV90cmlnX3RjcywgY2hhbmdpbmdQYXJ0KTsKQEAgLTE5NjgsNyArMjE2NiwxMCBAQCBFeGVj Q3Jvc3NQYXJ0aXRpb25VcGRhdGUoTW9kaWZ5VGFibGVDb250ZXh0ICpjb250ZXh0LAogCWlmIChy ZXN1bHRSZWxJbmZvID09IG10c3RhdGUtPnJvb3RSZXN1bHRSZWxJbmZvKQogCQlFeGVjUGFydGl0 aW9uQ2hlY2tFbWl0RXJyb3IocmVzdWx0UmVsSW5mbywgc2xvdCwgZXN0YXRlKTsKIAotCS8qIElu aXRpYWxpemUgdHVwbGUgcm91dGluZyBpbmZvIGlmIG5vdCBhbHJlYWR5IGRvbmUuICovCisJLyoK KwkgKiBJbml0aWFsaXplIHR1cGxlIHJvdXRpbmcgaW5mbyBpZiBub3QgYWxyZWFkeSBkb25lLiBO b3RlIHdoYXRldmVyIHdlIGRvCisJICogaGVyZSBtdXN0IGJlIGRvbmUgaW4gRXhlY0luaXRNb2Rp ZnlUYWJsZSBmb3IgRk9SIFBPUlRJT04gT0YgYXMgd2VsbC4KKwkgKi8KIAlpZiAobXRzdGF0ZS0+ bXRfcGFydGl0aW9uX3R1cGxlX3JvdXRpbmcgPT0gTlVMTCkKIAl7CiAJCVJlbGF0aW9uCXJvb3RS ZWwgPSBtdHN0YXRlLT5yb290UmVzdWx0UmVsSW5mby0+cmlfUmVsYXRpb25EZXNjOwpAQCAtMjMx Nyw3ICsyNTE4LDggQEAgbHJlcGxhY2U6CiAgKiBFeGVjVXBkYXRlRXBpbG9ndWUgLS0gc3Vicm91 dGluZSBmb3IgRXhlY1VwZGF0ZQogICoKICAqIENsb3Npbmcgc3RlcHMgb2YgdXBkYXRpbmcgYSB0 dXBsZS4gIE11c3QgYmUgY2FsbGVkIGlmIEV4ZWNVcGRhdGVBY3QKLSAqIHJldHVybnMgaW5kaWNh dGluZyB0aGF0IHRoZSB0dXBsZSB3YXMgdXBkYXRlZC4KKyAqIHJldHVybnMgaW5kaWNhdGluZyB0 aGF0IHRoZSB0dXBsZSB3YXMgdXBkYXRlZC4gSXQgYWxzbyBpbnNlcnRzIHRlbXBvcmFsCisgKiBs ZWZ0b3ZlcnMgZnJvbSBhbiBVUERBVEUgRk9SIFBPUlRJT04gT0YuCiAgKi8KIHN0YXRpYyB2b2lk CiBFeGVjVXBkYXRlRXBpbG9ndWUoTW9kaWZ5VGFibGVDb250ZXh0ICpjb250ZXh0LCBVcGRhdGVD b250ZXh0ICp1cGRhdGVDeHQsCkBAIC0yMzM1LDYgKzI1MzcsMTAgQEAgRXhlY1VwZGF0ZUVwaWxv Z3VlKE1vZGlmeVRhYmxlQ29udGV4dCAqY29udGV4dCwgVXBkYXRlQ29udGV4dCAqdXBkYXRlQ3h0 LAogCQkJCQkJCQkJCQkgICBOVUxMLCBOSUwsCiAJCQkJCQkJCQkJCSAgICh1cGRhdGVDeHQtPnVw ZGF0ZUluZGV4ZXMgPT0gVFVfU3VtbWFyaXppbmcpKTsKIAorCS8qIENvbXB1dGUgdGVtcG9yYWwg bGVmdG92ZXJzIGluIEZPUiBQT1JUSU9OIE9GICovCisJaWYgKCgoTW9kaWZ5VGFibGUgKikgY29u dGV4dC0+bXRzdGF0ZS0+cHMucGxhbiktPmZvclBvcnRpb25PZikKKwkJRXhlY0ZvclBvcnRpb25P ZkxlZnRvdmVycyhjb250ZXh0LCBjb250ZXh0LT5lc3RhdGUsIHJlc3VsdFJlbEluZm8sIHR1cGxl aWQpOworCiAJLyogQUZURVIgUk9XIFVQREFURSBUcmlnZ2VycyAqLwogCUV4ZWNBUlVwZGF0ZVRy aWdnZXJzKGNvbnRleHQtPmVzdGF0ZSwgcmVzdWx0UmVsSW5mbywKIAkJCQkJCSBOVUxMLCBOVUxM LApAQCAtNTA4NSw2ICs1MjkxLDExOSBAQCBFeGVjSW5pdE1vZGlmeVRhYmxlKE1vZGlmeVRhYmxl ICpub2RlLCBFU3RhdGUgKmVzdGF0ZSwgaW50IGVmbGFncykKIAkJfQogCX0KIAorCS8qCisJICog SWYgbmVlZGVkLCBpbml0aWFsaXplIHRoZSB0YXJnZXQgcmFuZ2UgZm9yIEZPUiBQT1JUSU9OIE9G LgorCSAqLworCWlmIChub2RlLT5mb3JQb3J0aW9uT2YpCisJeworCQlSZXN1bHRSZWxJbmZvICpy b290UmVsSW5mbzsKKwkJVHVwbGVEZXNjCXR1cERlc2M7CisJCUZvclBvcnRpb25PZkV4cHIgKmZv clBvcnRpb25PZjsKKwkJRGF0dW0JCXRhcmdldFJhbmdlOworCQlib29sCQlpc051bGw7CisJCUV4 cHJDb250ZXh0ICplY29udGV4dDsKKwkJRXhwclN0YXRlICAqZXhwclN0YXRlOworCQlGb3JQb3J0 aW9uT2ZTdGF0ZSAqZnBvU3RhdGU7CisKKwkJcm9vdFJlbEluZm8gPSBtdHN0YXRlLT5yZXN1bHRS ZWxJbmZvOworCQlpZiAocm9vdFJlbEluZm8tPnJpX1Jvb3RSZXN1bHRSZWxJbmZvKQorCQkJcm9v dFJlbEluZm8gPSByb290UmVsSW5mby0+cmlfUm9vdFJlc3VsdFJlbEluZm87CisKKwkJdHVwRGVz YyA9IHJvb3RSZWxJbmZvLT5yaV9SZWxhdGlvbkRlc2MtPnJkX2F0dDsKKwkJZm9yUG9ydGlvbk9m ID0gKEZvclBvcnRpb25PZkV4cHIgKikgbm9kZS0+Zm9yUG9ydGlvbk9mOworCisJCS8qIEV2YWwg dGhlIEZPUiBQT1JUSU9OIE9GIHRhcmdldCAqLworCQlpZiAobXRzdGF0ZS0+cHMucHNfRXhwckNv bnRleHQgPT0gTlVMTCkKKwkJCUV4ZWNBc3NpZ25FeHByQ29udGV4dChlc3RhdGUsICZtdHN0YXRl LT5wcyk7CisJCWVjb250ZXh0ID0gbXRzdGF0ZS0+cHMucHNfRXhwckNvbnRleHQ7CisKKwkJZXhw clN0YXRlID0gRXhlY1ByZXBhcmVFeHByKChFeHByICopIGZvclBvcnRpb25PZi0+dGFyZ2V0UmFu Z2UsIGVzdGF0ZSk7CisJCXRhcmdldFJhbmdlID0gRXhlY0V2YWxFeHByKGV4cHJTdGF0ZSwgZWNv bnRleHQsICZpc051bGwpOworCQlpZiAoaXNOdWxsKQorCQkJZWxvZyhFUlJPUiwgImdvdCBhIE5V TEwgRk9SIFBPUlRJT04gT0YgdGFyZ2V0IHJhbmdlIik7CisKKwkJLyogQ3JlYXRlIHN0YXRlIGZv ciBGT1IgUE9SVElPTiBPRiBvcGVyYXRpb24gKi8KKworCQlmcG9TdGF0ZSA9IG1ha2VOb2RlKEZv clBvcnRpb25PZlN0YXRlKTsKKwkJZnBvU3RhdGUtPmZwX3JhbmdlTmFtZSA9IGZvclBvcnRpb25P Zi0+cmFuZ2VfbmFtZTsKKwkJZnBvU3RhdGUtPmZwX3JhbmdlVHlwZSA9IGZvclBvcnRpb25PZi0+ cmFuZ2VUeXBlOworCQlmcG9TdGF0ZS0+ZnBfcmFuZ2VBdHRubyA9IGZvclBvcnRpb25PZi0+cmFu Z2VWYXItPnZhcmF0dG5vOworCQlmcG9TdGF0ZS0+ZnBfdGFyZ2V0UmFuZ2UgPSB0YXJnZXRSYW5n ZTsKKworCQkvKiBJbml0aWFsaXplIHNsb3QgZm9yIHRoZSBleGlzdGluZyB0dXBsZSAqLworCisJ CWZwb1N0YXRlLT5mcF9FeGlzdGluZyA9CisJCQl0YWJsZV9zbG90X2NyZWF0ZShyb290UmVsSW5m by0+cmlfUmVsYXRpb25EZXNjLAorCQkJCQkJCSAgJm10c3RhdGUtPnBzLnN0YXRlLT5lc190dXBs ZVRhYmxlKTsKKworCQkvKiBDcmVhdGUgdGhlIHR1cGxlIHNsb3QgZm9yIElOU0VSVGluZyB0aGUg dGVtcG9yYWwgbGVmdG92ZXJzICovCisKKwkJZnBvU3RhdGUtPmZwX0xlZnRvdmVyID0KKwkJCUV4 ZWNJbml0RXh0cmFUdXBsZVNsb3QobXRzdGF0ZS0+cHMuc3RhdGUsIHR1cERlc2MsICZUVFNPcHNW aXJ0dWFsKTsKKworCQkvKgorCQkgKiBXZSBtdXN0IGF0dGFjaCB0aGUgRm9yUG9ydGlvbk9mU3Rh dGUgdG8gYWxsIHJlc3VsdCByZWxzLCBpbiBjYXNlIG9mCisJCSAqIGEgY3Jvc3MtcGFydGl0aW9u IHVwZGF0ZSBvciB0cmlnZ2VycyBmaXJpbmcgb24gcGFydGl0aW9ucy4gWFhYOiBDYW4KKwkJICog d2UgZGVmZXIgdGhpcyB0byBvbmx5IHRoZSBsZWFmcyB3ZSB0b3VjaD8KKwkJICovCisJCWZvciAo aSA9IDA7IGkgPCBucmVsczsgaSsrKQorCQl7CisJCQlGb3JQb3J0aW9uT2ZTdGF0ZSAqbGVhZlN0 YXRlOworCisJCQlyZXN1bHRSZWxJbmZvID0gJm10c3RhdGUtPnJlc3VsdFJlbEluZm9baV07CisK KwkJCWxlYWZTdGF0ZSA9IG1ha2VOb2RlKEZvclBvcnRpb25PZlN0YXRlKTsKKwkJCWxlYWZTdGF0 ZS0+ZnBfcmFuZ2VOYW1lID0gZnBvU3RhdGUtPmZwX3JhbmdlTmFtZTsKKwkJCWxlYWZTdGF0ZS0+ ZnBfcmFuZ2VUeXBlID0gZnBvU3RhdGUtPmZwX3JhbmdlVHlwZTsKKwkJCWxlYWZTdGF0ZS0+ZnBf cmFuZ2VBdHRubyA9IGZwb1N0YXRlLT5mcF9yYW5nZUF0dG5vOworCQkJbGVhZlN0YXRlLT5mcF90 YXJnZXRSYW5nZSA9IGZwb1N0YXRlLT5mcF90YXJnZXRSYW5nZTsKKwkJCWxlYWZTdGF0ZS0+ZnBf TGVmdG92ZXIgPSBmcG9TdGF0ZS0+ZnBfTGVmdG92ZXI7CisJCQkvKiBFYWNoIHBhcnRpdGlvbiBu ZWVkcyBhIHNsb3QgbWF0Y2hpbmcgaXRzIHR1cGxlIGRlc2NyaXB0b3IgKi8KKwkJCWxlYWZTdGF0 ZS0+ZnBfRXhpc3RpbmcgPQorCQkJCXRhYmxlX3Nsb3RfY3JlYXRlKHJlc3VsdFJlbEluZm8tPnJp X1JlbGF0aW9uRGVzYywKKwkJCQkJCQkJICAmbXRzdGF0ZS0+cHMuc3RhdGUtPmVzX3R1cGxlVGFi bGUpOworCisJCQlyZXN1bHRSZWxJbmZvLT5yaV9mb3JQb3J0aW9uT2YgPSBsZWFmU3RhdGU7CisJ CX0KKworCQkvKiBNYWtlIHN1cmUgdGhlIHJvb3QgcmVsYXRpb24gaGFzIHRoZSBGT1IgUE9SVElP TiBPRiBjbGF1c2UgdG9vLiAqLworCQlpZiAobm9kZS0+cm9vdFJlbGF0aW9uID4gMCkKKwkJCW10 c3RhdGUtPnJvb3RSZXN1bHRSZWxJbmZvLT5yaV9mb3JQb3J0aW9uT2YgPSBmcG9TdGF0ZTsKKwor CQlpZiAocmVsLT5yZF9yZWwtPnJlbGtpbmQgPT0gUkVMS0lORF9QQVJUSVRJT05FRF9UQUJMRSAm JgorCQkJbXRzdGF0ZS0+bXRfcGFydGl0aW9uX3R1cGxlX3JvdXRpbmcgPT0gTlVMTCkKKwkJewor CQkJLyoKKwkJCSAqIFdlIHdpbGwgbmVlZCB0dXBsZSByb3V0aW5nIHRvIGluc2VydCB0ZW1wb3Jh bCBsZWZ0b3ZlcnMuIFNpbmNlCisJCQkgKiB3ZSBhcmUgaW5pdGlhbGl6aW5nIHRoaW5ncyBiZWZv cmUgRXhlY0Nyb3NzUGFydGl0aW9uVXBkYXRlCisJCQkgKiBydW5zLCB3ZSBtdXN0IGRvIGV2ZXJ5 dGhpbmcgaXQgbmVlZHMgYXMgd2VsbC4KKwkJCSAqLworCQkJUmVsYXRpb24Jcm9vdFJlbCA9IG10 c3RhdGUtPnJvb3RSZXN1bHRSZWxJbmZvLT5yaV9SZWxhdGlvbkRlc2M7CisJCQlNZW1vcnlDb250 ZXh0IG9sZGN4dDsKKworCQkJLyogVGhpbmdzIGJ1aWx0IGhlcmUgaGF2ZSB0byBsYXN0IGZvciB0 aGUgcXVlcnkgZHVyYXRpb24uICovCisJCQlvbGRjeHQgPSBNZW1vcnlDb250ZXh0U3dpdGNoVG8o ZXN0YXRlLT5lc19xdWVyeV9jeHQpOworCisJCQltdHN0YXRlLT5tdF9wYXJ0aXRpb25fdHVwbGVf cm91dGluZyA9CisJCQkJRXhlY1NldHVwUGFydGl0aW9uVHVwbGVSb3V0aW5nKGVzdGF0ZSwgcm9v dFJlbCk7CisKKwkJCS8qCisJCQkgKiBCZWZvcmUgYSBwYXJ0aXRpb24ncyB0dXBsZSBjYW4gYmUg cmUtcm91dGVkLCBpdCBtdXN0IGZpcnN0CisJCQkgKiBiZSBjb252ZXJ0ZWQgdG8gdGhlIHJvb3Qn cyBmb3JtYXQsIHNvIHdlJ2xsIG5lZWQgYSBzbG90IGZvcgorCQkJICogc3RvcmluZyBzdWNoIHR1 cGxlcy4KKwkJCSAqLworCQkJQXNzZXJ0KG10c3RhdGUtPm10X3Jvb3RfdHVwbGVfc2xvdCA9PSBO VUxMKTsKKwkJCW10c3RhdGUtPm10X3Jvb3RfdHVwbGVfc2xvdCA9IHRhYmxlX3Nsb3RfY3JlYXRl KHJvb3RSZWwsIE5VTEwpOworCisJCQlNZW1vcnlDb250ZXh0U3dpdGNoVG8ob2xkY3h0KTsKKwkJ fQorCisJCS8qCisJCSAqIERvbid0IGZyZWUgdGhlIEV4cHJDb250ZXh0IGhlcmUgYmVjYXVzZSB0 aGUgcmVzdWx0IG11c3QgbGFzdCBmb3IKKwkJICogdGhlIHdob2xlIHF1ZXJ5CisJCSAqLworCX0K KwogCS8qCiAJICogSWYgd2UgaGF2ZSBhbnkgc2Vjb25kYXJ5IHJlbGF0aW9ucyBpbiBhbiBVUERB VEUgb3IgREVMRVRFLCB0aGV5IG5lZWQgdG8KIAkgKiBiZSB0cmVhdGVkIGxpa2Ugbm9uLWxvY2tl ZCByZWxhdGlvbnMgaW4gU0VMRUNUIEZPUiBVUERBVEUsIGkuZS4sIHRoZQpkaWZmIC0tZ2l0IGEv c3JjL2JhY2tlbmQvbm9kZXMvbm9kZUZ1bmNzLmMgYi9zcmMvYmFja2VuZC9ub2Rlcy9ub2RlRnVu Y3MuYwppbmRleCBkMjI4MzE4ZGM3Mi4uMjc2NzJlMzc1MGQgMTAwNjQ0Ci0tLSBhL3NyYy9iYWNr ZW5kL25vZGVzL25vZGVGdW5jcy5jCisrKyBiL3NyYy9iYWNrZW5kL25vZGVzL25vZGVGdW5jcy5j CkBAIC0yNTY3LDYgKzI1NjcsMTQgQEAgZXhwcmVzc2lvbl90cmVlX3dhbGtlcl9pbXBsKE5vZGUg Km5vZGUsCiAJCQkJCXJldHVybiB0cnVlOwogCQkJfQogCQkJYnJlYWs7CisJCWNhc2UgVF9Gb3JQ b3J0aW9uT2ZFeHByOgorCQkJeworCQkJCUZvclBvcnRpb25PZkV4cHIgKmZvclBvcnRpb25PZiA9 IChGb3JQb3J0aW9uT2ZFeHByICopIG5vZGU7CisKKwkJCQlpZiAoV0FMSyhmb3JQb3J0aW9uT2Yt PnRhcmdldFJhbmdlKSkKKwkJCQkJcmV0dXJuIHRydWU7CisJCQl9CisJCQlicmVhazsKIAkJY2Fz ZSBUX1BhcnRpdGlvblBydW5lU3RlcE9wOgogCQkJewogCQkJCVBhcnRpdGlvblBydW5lU3RlcE9w ICpvcHN0ZXAgPSAoUGFydGl0aW9uUHJ1bmVTdGVwT3AgKikgbm9kZTsKQEAgLTI3MTUsNiArMjcy Myw4IEBAIHF1ZXJ5X3RyZWVfd2Fsa2VyX2ltcGwoUXVlcnkgKnF1ZXJ5LAogCQlyZXR1cm4gdHJ1 ZTsKIAlpZiAoV0FMSyhxdWVyeS0+bWVyZ2VKb2luQ29uZGl0aW9uKSkKIAkJcmV0dXJuIHRydWU7 CisJaWYgKFdBTEsocXVlcnktPmZvclBvcnRpb25PZikpCisJCXJldHVybiB0cnVlOwogCWlmIChX QUxLKHF1ZXJ5LT5yZXR1cm5pbmdMaXN0KSkKIAkJcmV0dXJuIHRydWU7CiAJaWYgKFdBTEsocXVl cnktPmpvaW50cmVlKSkKQEAgLTM2MDksNiArMzYxOSwxOSBAQCBleHByZXNzaW9uX3RyZWVfbXV0 YXRvcl9pbXBsKE5vZGUgKm5vZGUsCiAJCQkJcmV0dXJuIChOb2RlICopIG5ld25vZGU7CiAJCQl9 CiAJCQlicmVhazsKKwkJY2FzZSBUX0ZvclBvcnRpb25PZkV4cHI6CisJCQl7CisJCQkJRm9yUG9y dGlvbk9mRXhwciAqZnBvID0gKEZvclBvcnRpb25PZkV4cHIgKikgbm9kZTsKKwkJCQlGb3JQb3J0 aW9uT2ZFeHByICpuZXdub2RlOworCisJCQkJRkxBVENPUFkobmV3bm9kZSwgZnBvLCBGb3JQb3J0 aW9uT2ZFeHByKTsKKwkJCQlNVVRBVEUobmV3bm9kZS0+cmFuZ2VWYXIsIGZwby0+cmFuZ2VWYXIs IFZhciAqKTsKKwkJCQlNVVRBVEUobmV3bm9kZS0+dGFyZ2V0UmFuZ2UsIGZwby0+dGFyZ2V0UmFu Z2UsIE5vZGUgKik7CisJCQkJTVVUQVRFKG5ld25vZGUtPnJhbmdlVGFyZ2V0TGlzdCwgZnBvLT5y YW5nZVRhcmdldExpc3QsIExpc3QgKik7CisKKwkJCQlyZXR1cm4gKE5vZGUgKikgbmV3bm9kZTsK KwkJCX0KKwkJCWJyZWFrOwogCQljYXNlIFRfUGFydGl0aW9uUHJ1bmVTdGVwT3A6CiAJCQl7CiAJ CQkJUGFydGl0aW9uUHJ1bmVTdGVwT3AgKm9wc3RlcCA9IChQYXJ0aXRpb25QcnVuZVN0ZXBPcCAq KSBub2RlOwpAQCAtMzc5MCw2ICszODEzLDcgQEAgcXVlcnlfdHJlZV9tdXRhdG9yX2ltcGwoUXVl cnkgKnF1ZXJ5LAogCU1VVEFURShxdWVyeS0+b25Db25mbGljdCwgcXVlcnktPm9uQ29uZmxpY3Qs IE9uQ29uZmxpY3RFeHByICopOwogCU1VVEFURShxdWVyeS0+bWVyZ2VBY3Rpb25MaXN0LCBxdWVy eS0+bWVyZ2VBY3Rpb25MaXN0LCBMaXN0ICopOwogCU1VVEFURShxdWVyeS0+bWVyZ2VKb2luQ29u ZGl0aW9uLCBxdWVyeS0+bWVyZ2VKb2luQ29uZGl0aW9uLCBOb2RlICopOworCU1VVEFURShxdWVy eS0+Zm9yUG9ydGlvbk9mLCBxdWVyeS0+Zm9yUG9ydGlvbk9mLCBGb3JQb3J0aW9uT2ZFeHByICop OwogCU1VVEFURShxdWVyeS0+cmV0dXJuaW5nTGlzdCwgcXVlcnktPnJldHVybmluZ0xpc3QsIExp c3QgKik7CiAJTVVUQVRFKHF1ZXJ5LT5qb2ludHJlZSwgcXVlcnktPmpvaW50cmVlLCBGcm9tRXhw ciAqKTsKIAlNVVRBVEUocXVlcnktPnNldE9wZXJhdGlvbnMsIHF1ZXJ5LT5zZXRPcGVyYXRpb25z LCBOb2RlICopOwpkaWZmIC0tZ2l0IGEvc3JjL2JhY2tlbmQvb3B0aW1pemVyL3BsYW4vY3JlYXRl cGxhbi5jIGIvc3JjL2JhY2tlbmQvb3B0aW1pemVyL3BsYW4vY3JlYXRlcGxhbi5jCmluZGV4IDhh ZjA5MWJhNjQ3Li40YTQzZjU3OWY4NCAxMDA2NDQKLS0tIGEvc3JjL2JhY2tlbmQvb3B0aW1pemVy L3BsYW4vY3JlYXRlcGxhbi5jCisrKyBiL3NyYy9iYWNrZW5kL29wdGltaXplci9wbGFuL2NyZWF0 ZXBsYW4uYwpAQCAtMzE2LDcgKzMxNiw3IEBAIHN0YXRpYyBNb2RpZnlUYWJsZSAqbWFrZV9tb2Rp Znl0YWJsZShQbGFubmVySW5mbyAqcm9vdCwgUGxhbiAqc3VicGxhbiwKIAkJCQkJCQkJCSBMaXN0 ICp3aXRoQ2hlY2tPcHRpb25MaXN0cywgTGlzdCAqcmV0dXJuaW5nTGlzdHMsCiAJCQkJCQkJCQkg TGlzdCAqcm93TWFya3MsIE9uQ29uZmxpY3RFeHByICpvbmNvbmZsaWN0LAogCQkJCQkJCQkJIExp c3QgKm1lcmdlQWN0aW9uTGlzdHMsIExpc3QgKm1lcmdlSm9pbkNvbmRpdGlvbnMsCi0JCQkJCQkJ CQkgaW50IGVwcVBhcmFtKTsKKwkJCQkJCQkJCSBGb3JQb3J0aW9uT2ZFeHByICpmb3JQb3J0aW9u T2YsIGludCBlcHFQYXJhbSk7CiBzdGF0aWMgR2F0aGVyTWVyZ2UgKmNyZWF0ZV9nYXRoZXJfbWVy Z2VfcGxhbihQbGFubmVySW5mbyAqcm9vdCwKIAkJCQkJCQkJCQkJIEdhdGhlck1lcmdlUGF0aCAq YmVzdF9wYXRoKTsKIApAQCAtMjY3NSw2ICsyNjc1LDcgQEAgY3JlYXRlX21vZGlmeXRhYmxlX3Bs YW4oUGxhbm5lckluZm8gKnJvb3QsIE1vZGlmeVRhYmxlUGF0aCAqYmVzdF9wYXRoKQogCQkJCQkJ CWJlc3RfcGF0aC0+b25jb25mbGljdCwKIAkJCQkJCQliZXN0X3BhdGgtPm1lcmdlQWN0aW9uTGlz dHMsCiAJCQkJCQkJYmVzdF9wYXRoLT5tZXJnZUpvaW5Db25kaXRpb25zLAorCQkJCQkJCWJlc3Rf cGF0aC0+Zm9yUG9ydGlvbk9mLAogCQkJCQkJCWJlc3RfcGF0aC0+ZXBxUGFyYW0pOwogCiAJY29w eV9nZW5lcmljX3BhdGhfaW5mbygmcGxhbi0+cGxhbiwgJmJlc3RfcGF0aC0+cGF0aCk7CkBAIC03 MDAxLDcgKzcwMDIsNyBAQCBtYWtlX21vZGlmeXRhYmxlKFBsYW5uZXJJbmZvICpyb290LCBQbGFu ICpzdWJwbGFuLAogCQkJCSBMaXN0ICp3aXRoQ2hlY2tPcHRpb25MaXN0cywgTGlzdCAqcmV0dXJu aW5nTGlzdHMsCiAJCQkJIExpc3QgKnJvd01hcmtzLCBPbkNvbmZsaWN0RXhwciAqb25jb25mbGlj dCwKIAkJCQkgTGlzdCAqbWVyZ2VBY3Rpb25MaXN0cywgTGlzdCAqbWVyZ2VKb2luQ29uZGl0aW9u cywKLQkJCQkgaW50IGVwcVBhcmFtKQorCQkJCSBGb3JQb3J0aW9uT2ZFeHByICpmb3JQb3J0aW9u T2YsIGludCBlcHFQYXJhbSkKIHsKIAlNb2RpZnlUYWJsZSAqbm9kZSA9IG1ha2VOb2RlKE1vZGlm eVRhYmxlKTsKIAlib29sCQlyZXR1cm5pbmdfb2xkX29yX25ldyA9IGZhbHNlOwpAQCAtNzA3MCw2 ICs3MDcxLDcgQEAgbWFrZV9tb2RpZnl0YWJsZShQbGFubmVySW5mbyAqcm9vdCwgUGxhbiAqc3Vi cGxhbiwKIAkJbm9kZS0+ZXhjbFJlbFRsaXN0ID0gb25jb25mbGljdC0+ZXhjbFJlbFRsaXN0Owog CX0KIAlub2RlLT51cGRhdGVDb2xub3NMaXN0cyA9IHVwZGF0ZUNvbG5vc0xpc3RzOworCW5vZGUt PmZvclBvcnRpb25PZiA9IChOb2RlICopIGZvclBvcnRpb25PZjsKIAlub2RlLT53aXRoQ2hlY2tP cHRpb25MaXN0cyA9IHdpdGhDaGVja09wdGlvbkxpc3RzOwogCW5vZGUtPnJldHVybmluZ09sZEFs aWFzID0gcm9vdC0+cGFyc2UtPnJldHVybmluZ09sZEFsaWFzOwogCW5vZGUtPnJldHVybmluZ05l d0FsaWFzID0gcm9vdC0+cGFyc2UtPnJldHVybmluZ05ld0FsaWFzOwpkaWZmIC0tZ2l0IGEvc3Jj L2JhY2tlbmQvb3B0aW1pemVyL3BsYW4vcGxhbm5lci5jIGIvc3JjL2JhY2tlbmQvb3B0aW1pemVy L3BsYW4vcGxhbm5lci5jCmluZGV4IGM0ZmQ2NDZiOTk5Li43ZTJmMTlmYjVlMiAxMDA2NDQKLS0t IGEvc3JjL2JhY2tlbmQvb3B0aW1pemVyL3BsYW4vcGxhbm5lci5jCisrKyBiL3NyYy9iYWNrZW5k L29wdGltaXplci9wbGFuL3BsYW5uZXIuYwpAQCAtMjE1MSw2ICsyMTUxLDcgQEAgZ3JvdXBpbmdf cGxhbm5lcihQbGFubmVySW5mbyAqcm9vdCwgZG91YmxlIHR1cGxlX2ZyYWN0aW9uLAogCQkJCQkJ CQkJCXBhcnNlLT5vbkNvbmZsaWN0LAogCQkJCQkJCQkJCW1lcmdlQWN0aW9uTGlzdHMsCiAJCQkJ CQkJCQkJbWVyZ2VKb2luQ29uZGl0aW9ucywKKwkJCQkJCQkJCQlwYXJzZS0+Zm9yUG9ydGlvbk9m LAogCQkJCQkJCQkJCWFzc2lnbl9zcGVjaWFsX2V4ZWNfcGFyYW0ocm9vdCkpOwogCQl9CiAKZGlm ZiAtLWdpdCBhL3NyYy9iYWNrZW5kL29wdGltaXplci91dGlsL3BhdGhub2RlLmMgYi9zcmMvYmFj a2VuZC9vcHRpbWl6ZXIvdXRpbC9wYXRobm9kZS5jCmluZGV4IGU0ZmQ2OTUwZmFkLi4zMmIxOTMw Yjk0NSAxMDA2NDQKLS0tIGEvc3JjL2JhY2tlbmQvb3B0aW1pemVyL3V0aWwvcGF0aG5vZGUuYwor KysgYi9zcmMvYmFja2VuZC9vcHRpbWl6ZXIvdXRpbC9wYXRobm9kZS5jCkBAIC0zNjM1LDcgKzM2 MzUsNyBAQCBjcmVhdGVfbW9kaWZ5dGFibGVfcGF0aChQbGFubmVySW5mbyAqcm9vdCwgUmVsT3B0 SW5mbyAqcmVsLAogCQkJCQkJTGlzdCAqd2l0aENoZWNrT3B0aW9uTGlzdHMsIExpc3QgKnJldHVy bmluZ0xpc3RzLAogCQkJCQkJTGlzdCAqcm93TWFya3MsIE9uQ29uZmxpY3RFeHByICpvbmNvbmZs aWN0LAogCQkJCQkJTGlzdCAqbWVyZ2VBY3Rpb25MaXN0cywgTGlzdCAqbWVyZ2VKb2luQ29uZGl0 aW9ucywKLQkJCQkJCWludCBlcHFQYXJhbSkKKwkJCQkJCUZvclBvcnRpb25PZkV4cHIgKmZvclBv cnRpb25PZiwgaW50IGVwcVBhcmFtKQogewogCU1vZGlmeVRhYmxlUGF0aCAqcGF0aG5vZGUgPSBt YWtlTm9kZShNb2RpZnlUYWJsZVBhdGgpOwogCkBAIC0zNzAxLDYgKzM3MDEsNyBAQCBjcmVhdGVf bW9kaWZ5dGFibGVfcGF0aChQbGFubmVySW5mbyAqcm9vdCwgUmVsT3B0SW5mbyAqcmVsLAogCXBh dGhub2RlLT5yZXR1cm5pbmdMaXN0cyA9IHJldHVybmluZ0xpc3RzOwogCXBhdGhub2RlLT5yb3dN YXJrcyA9IHJvd01hcmtzOwogCXBhdGhub2RlLT5vbmNvbmZsaWN0ID0gb25jb25mbGljdDsKKwlw YXRobm9kZS0+Zm9yUG9ydGlvbk9mID0gZm9yUG9ydGlvbk9mOwogCXBhdGhub2RlLT5lcHFQYXJh bSA9IGVwcVBhcmFtOwogCXBhdGhub2RlLT5tZXJnZUFjdGlvbkxpc3RzID0gbWVyZ2VBY3Rpb25M aXN0czsKIAlwYXRobm9kZS0+bWVyZ2VKb2luQ29uZGl0aW9ucyA9IG1lcmdlSm9pbkNvbmRpdGlv bnM7CmRpZmYgLS1naXQgYS9zcmMvYmFja2VuZC9wYXJzZXIvYW5hbHl6ZS5jIGIvc3JjL2JhY2tl bmQvcGFyc2VyL2FuYWx5emUuYwppbmRleCA3ODQzYTBjODU3ZS4uM2VmZWRkNjc4YzAgMTAwNjQ0 Ci0tLSBhL3NyYy9iYWNrZW5kL3BhcnNlci9hbmFseXplLmMKKysrIGIvc3JjL2JhY2tlbmQvcGFy c2VyL2FuYWx5emUuYwpAQCAtMjQsOCArMjQsMTEgQEAKIAogI2luY2x1ZGUgInBvc3RncmVzLmgi CiAKKyNpbmNsdWRlICJhY2Nlc3Mvc3RyYXRudW0uaCIKICNpbmNsdWRlICJhY2Nlc3Mvc3lzYXR0 ci5oIgogI2luY2x1ZGUgImNhdGFsb2cvZGVwZW5kZW5jeS5oIgorI2luY2x1ZGUgImNhdGFsb2cv cGdfYW0uaCIKKyNpbmNsdWRlICJjYXRhbG9nL3BnX29wZXJhdG9yLmgiCiAjaW5jbHVkZSAiY2F0 YWxvZy9wZ19wcm9jLmgiCiAjaW5jbHVkZSAiY2F0YWxvZy9wZ190eXBlLmgiCiAjaW5jbHVkZSAi Y29tbWFuZHMvZGVmcmVtLmgiCkBAIC01MSw3ICs1NCw5IEBACiAjaW5jbHVkZSAicGFyc2VyL3Bh cnNldHJlZS5oIgogI2luY2x1ZGUgInV0aWxzL2JhY2tlbmRfc3RhdHVzLmgiCiAjaW5jbHVkZSAi dXRpbHMvYnVpbHRpbnMuaCIKKyNpbmNsdWRlICJ1dGlscy9mbWdyb2lkcy5oIgogI2luY2x1ZGUg InV0aWxzL2d1Yy5oIgorI2luY2x1ZGUgInV0aWxzL2xzeXNjYWNoZS5oIgogI2luY2x1ZGUgInV0 aWxzL3JlbC5oIgogI2luY2x1ZGUgInV0aWxzL3N5c2NhY2hlLmgiCiAKQEAgLTY4LDEwICs3Mywx NiBAQCB0eXBlZGVmIHN0cnVjdCBTZWxlY3RTdG10UGFzc3Rocm91Z2gKIHBvc3RfcGFyc2VfYW5h bHl6ZV9ob29rX3R5cGUgcG9zdF9wYXJzZV9hbmFseXplX2hvb2sgPSBOVUxMOwogCiBzdGF0aWMg UXVlcnkgKnRyYW5zZm9ybU9wdGlvbmFsU2VsZWN0SW50byhQYXJzZVN0YXRlICpwc3RhdGUsIE5v ZGUgKnBhcnNlVHJlZSk7CitzdGF0aWMgTm9kZSAqYWRkRm9yUG9ydGlvbk9mV2hlcmVDb25kaXRp b25zKFF1ZXJ5ICpxcnksIEZvclBvcnRpb25PZkNsYXVzZSAqZm9yUG9ydGlvbk9mLAorCQkJCQkJ CQkJCQlOb2RlICp3aGVyZUNsYXVzZSk7CiBzdGF0aWMgUXVlcnkgKnRyYW5zZm9ybURlbGV0ZVN0 bXQoUGFyc2VTdGF0ZSAqcHN0YXRlLCBEZWxldGVTdG10ICpzdG10KTsKIHN0YXRpYyBRdWVyeSAq dHJhbnNmb3JtSW5zZXJ0U3RtdChQYXJzZVN0YXRlICpwc3RhdGUsIEluc2VydFN0bXQgKnN0bXQp Owogc3RhdGljIE9uQ29uZmxpY3RFeHByICp0cmFuc2Zvcm1PbkNvbmZsaWN0Q2xhdXNlKFBhcnNl U3RhdGUgKnBzdGF0ZSwKIAkJCQkJCQkJCQkJCSBPbkNvbmZsaWN0Q2xhdXNlICpvbkNvbmZsaWN0 Q2xhdXNlKTsKK3N0YXRpYyBGb3JQb3J0aW9uT2ZFeHByICp0cmFuc2Zvcm1Gb3JQb3J0aW9uT2ZD bGF1c2UoUGFyc2VTdGF0ZSAqcHN0YXRlLAorCQkJCQkJCQkJCQkJCSBpbnQgcnRpbmRleCwKKwkJ CQkJCQkJCQkJCQkgRm9yUG9ydGlvbk9mQ2xhdXNlICpmb3JQb3J0aW9uT2ZDbGF1c2UsCisJCQkJ CQkJCQkJCQkJIGJvb2wgaXNVcGRhdGUpOwogc3RhdGljIGludAljb3VudF9yb3dleHByX2NvbHVt bnMoUGFyc2VTdGF0ZSAqcHN0YXRlLCBOb2RlICpleHByKTsKIHN0YXRpYyBRdWVyeSAqdHJhbnNm b3JtU2VsZWN0U3RtdChQYXJzZVN0YXRlICpwc3RhdGUsIFNlbGVjdFN0bXQgKnN0bXQsCiAJCQkJ CQkJCSAgU2VsZWN0U3RtdFBhc3N0aHJvdWdoICpwYXNzdGhydSk7CkBAIC00OTQsNiArNTA1LDM1 IEBAIHN0bXRfcmVxdWlyZXNfcGFyc2VfYW5hbHlzaXMoUmF3U3RtdCAqcGFyc2VUcmVlKQogCXJl dHVybiByZXN1bHQ7CiB9CiAKKy8qCisgKiBhZGRGb3JQb3J0aW9uT2ZXaGVyZUNvbmRpdGlvbnMK KyAqCQlBZGRzIGEgcXVhbCB0byByZXN0cmljdCB0aGUgcXVlcnkgdG8gcm93cyBtYXRjaGluZyB0 aGUgRk9SIFBPUlRJT04gT0YKKyAqCQlGUk9NIC4uLiBUTyBib3VuZHMuCisgKgorICoJSWYgZm9y UG9ydGlvbk9mIGlzIHNldCwgcXJ5LT5mb3JQb3J0aW9uT2YgbXVzdCBiZSB0b28uCisgKi8KK3N0 YXRpYyBOb2RlICoKK2FkZEZvclBvcnRpb25PZldoZXJlQ29uZGl0aW9ucyhRdWVyeSAqcXJ5LCBG b3JQb3J0aW9uT2ZDbGF1c2UgKmZvclBvcnRpb25PZiwKKwkJCQkJCQkgICBOb2RlICp3aGVyZUNs YXVzZSkKK3sKKwlpZiAoZm9yUG9ydGlvbk9mKQorCXsKKwkJTm9kZSAqb3ZlcmxhcHNFeHByOwor CQlBc3NlcnQocXJ5LT5mb3JQb3J0aW9uT2YpOworCisJCW92ZXJsYXBzRXhwciA9IHFyeS0+Zm9y UG9ydGlvbk9mLT5vdmVybGFwc0V4cHI7CisKKwkJaWYgKHdoZXJlQ2xhdXNlKQorCQkJcmV0dXJu IChOb2RlICopIG1ha2VCb29sRXhwcihBTkRfRVhQUiwKKwkJCQkJCQkJCQkgbGlzdF9tYWtlMih3 aGVyZUNsYXVzZSwgb3ZlcmxhcHNFeHByKSwKKwkJCQkJCQkJCQkgLTEpOworCQllbHNlCisJCQly ZXR1cm4gb3ZlcmxhcHNFeHByOworCX0KKwllbHNlCisJCXJldHVybiB3aGVyZUNsYXVzZTsKK30K KwogLyoKICAqIGFuYWx5emVfcmVxdWlyZXNfc25hcHNob3QKICAqCQlSZXR1cm5zIHRydWUgaWYg YSBzbmFwc2hvdCBtdXN0IGJlIHNldCBiZWZvcmUgZG9pbmcgcGFyc2UgYW5hbHlzaXMKQEAgLTU2 Niw2ICs2MDYsNyBAQCB0cmFuc2Zvcm1EZWxldGVTdG10KFBhcnNlU3RhdGUgKnBzdGF0ZSwgRGVs ZXRlU3RtdCAqc3RtdCkKIHsKIAlRdWVyeQkgICAqcXJ5ID0gbWFrZU5vZGUoUXVlcnkpOwogCVBh cnNlTmFtZXNwYWNlSXRlbSAqbnNpdGVtOworCU5vZGUJICAgKndoZXJlQ2xhdXNlOwogCU5vZGUJ ICAgKnF1YWw7CiAKIAlxcnktPmNvbW1hbmRUeXBlID0gQ01EX0RFTEVURTsKQEAgLTYwNCw3ICs2 NDUsMTEgQEAgdHJhbnNmb3JtRGVsZXRlU3RtdChQYXJzZVN0YXRlICpwc3RhdGUsIERlbGV0ZVN0 bXQgKnN0bXQpCiAJbnNpdGVtLT5wX2xhdGVyYWxfb25seSA9IGZhbHNlOwogCW5zaXRlbS0+cF9s YXRlcmFsX29rID0gdHJ1ZTsKIAotCXF1YWwgPSB0cmFuc2Zvcm1XaGVyZUNsYXVzZShwc3RhdGUs IHN0bXQtPndoZXJlQ2xhdXNlLAorCWlmIChzdG10LT5mb3JQb3J0aW9uT2YpCisJCXFyeS0+Zm9y UG9ydGlvbk9mID0gdHJhbnNmb3JtRm9yUG9ydGlvbk9mQ2xhdXNlKHBzdGF0ZSwgcXJ5LT5yZXN1 bHRSZWxhdGlvbiwgc3RtdC0+Zm9yUG9ydGlvbk9mLCBmYWxzZSk7CisKKwl3aGVyZUNsYXVzZSA9 IGFkZEZvclBvcnRpb25PZldoZXJlQ29uZGl0aW9ucyhxcnksIHN0bXQtPmZvclBvcnRpb25PZiwg c3RtdC0+d2hlcmVDbGF1c2UpOworCXF1YWwgPSB0cmFuc2Zvcm1XaGVyZUNsYXVzZShwc3RhdGUs IHdoZXJlQ2xhdXNlLAogCQkJCQkJCQlFWFBSX0tJTkRfV0hFUkUsICJXSEVSRSIpOwogCiAJdHJh bnNmb3JtUmV0dXJuaW5nQ2xhdXNlKHBzdGF0ZSwgcXJ5LCBzdG10LT5yZXR1cm5pbmdDbGF1c2Us CkBAIC0xMjM5LDcgKzEyODQsNyBAQCB0cmFuc2Zvcm1PbkNvbmZsaWN0Q2xhdXNlKFBhcnNlU3Rh dGUgKnBzdGF0ZSwKIAkJICogTm93IHRyYW5zZm9ybSB0aGUgVVBEQVRFIHN1YmV4cHJlc3Npb25z LgogCQkgKi8KIAkJb25Db25mbGljdFNldCA9Ci0JCQl0cmFuc2Zvcm1VcGRhdGVUYXJnZXRMaXN0 KHBzdGF0ZSwgb25Db25mbGljdENsYXVzZS0+dGFyZ2V0TGlzdCk7CisJCQl0cmFuc2Zvcm1VcGRh dGVUYXJnZXRMaXN0KHBzdGF0ZSwgb25Db25mbGljdENsYXVzZS0+dGFyZ2V0TGlzdCwgTlVMTCk7 CiAKIAkJb25Db25mbGljdFdoZXJlID0gdHJhbnNmb3JtV2hlcmVDbGF1c2UocHN0YXRlLAogCQkJ CQkJCQkJCQkgICBvbkNvbmZsaWN0Q2xhdXNlLT53aGVyZUNsYXVzZSwKQEAgLTEyNjksNiArMTMx NCwxOTQgQEAgdHJhbnNmb3JtT25Db25mbGljdENsYXVzZShQYXJzZVN0YXRlICpwc3RhdGUsCiAJ cmV0dXJuIHJlc3VsdDsKIH0KIAorLyoKKyAqIHRyYW5zZm9ybUZvclBvcnRpb25PZkNsYXVzZQor ICoKKyAqCSAgVHJhbnNmb3JtcyBhIEZvclBvcnRpb25PZkNsYXVzZSBpbiBhbiBVUERBVEUvREVM RVRFIHN0YXRlbWVudC4KKyAqCisgKgkgIC0gTG9vayB1cCB0aGUgcmFuZ2UvcGVyaW9kIHJlcXVl c3RlZC4KKyAqCSAgLSBCdWlsZCBhIGNvbXBhdGlibGUgcmFuZ2UgdmFsdWUgZnJvbSB0aGUgRlJP TSBhbmQgVE8gZXhwcmVzc2lvbnMuCisgKgkgIC0gQnVpbGQgYW4gIm92ZXJsYXBzIiBleHByZXNz aW9uIGZvciBmaWx0ZXJpbmcuCisgKgkgIC0gRm9yIFVQREFURXMsIGJ1aWxkIGFuICJpbnRlcnNl Y3RzIiBleHByZXNzaW9uIHRoZSByZXdyaXRlciBjYW4gYWRkCisgKgkJdG8gdGhlIHRhcmdldExp c3QgdG8gY2hhbmdlIHRoZSB0ZW1wb3JhbCBib3VuZHMuCisgKi8KK3N0YXRpYyBGb3JQb3J0aW9u T2ZFeHByICoKK3RyYW5zZm9ybUZvclBvcnRpb25PZkNsYXVzZShQYXJzZVN0YXRlICpwc3RhdGUs CisJCQkJCQkJaW50IHJ0aW5kZXgsCisJCQkJCQkJRm9yUG9ydGlvbk9mQ2xhdXNlICpmb3JQb3J0 aW9uT2YsCisJCQkJCQkJYm9vbCBpc1VwZGF0ZSkKK3sKKwlSZWxhdGlvbgl0YXJnZXRyZWwgPSBw c3RhdGUtPnBfdGFyZ2V0X3JlbGF0aW9uOworCVJURVBlcm1pc3Npb25JbmZvICp0YXJnZXRfcGVy bWluZm8gPSBwc3RhdGUtPnBfdGFyZ2V0X25zaXRlbS0+cF9wZXJtaW5mbzsKKwljaGFyCSAgICpy YW5nZV9uYW1lID0gZm9yUG9ydGlvbk9mLT5yYW5nZV9uYW1lOworCWNoYXIJICAgKnJhbmdlX3R5 cGVfbmFtZXNwYWNlID0gTlVMTDsKKwljaGFyCSAgICpyYW5nZV90eXBlX25hbWUgPSBOVUxMOwor CWludAkJCXJhbmdlX2F0dG5vID0gSW52YWxpZEF0dHJOdW1iZXI7CisJRm9ybV9wZ19hdHRyaWJ1 dGUgYXR0cjsKKwlPaWQJCQlvcGNsYXNzOworCU9pZAkJCW9wZmFtaWx5OworCU9pZAkJCW9wY2lu dHlwZTsKKwlPaWQJCQlmdW5jaWQgPSBJbnZhbGlkT2lkOworCVN0cmF0ZWd5TnVtYmVyIHN0cmF0 OworCU9pZAkJCW9waWQ7CisJRm9yUG9ydGlvbk9mRXhwciAqcmVzdWx0OworCVZhcgkJICAgKnJh bmdlVmFyOworCU5vZGUJICAgKnRhcmdldEV4cHI7CisKKwkvKiBXZSBkb24ndCBzdXBwb3J0IEZP UiBQT1JUSU9OIE9GIEZEVyBxdWVyaWVzLiAqLworCWlmICh0YXJnZXRyZWwtPnJkX3JlbC0+cmVs a2luZCA9PSBSRUxLSU5EX0ZPUkVJR05fVEFCTEUpCisJCWVyZXBvcnQoRVJST1IsCisJCQkJKGVy cmNvZGUoRVJSQ09ERV9GRUFUVVJFX05PVF9TVVBQT1JURUQpLAorCQkJCSBlcnJtc2coImZvcmVp Z24gdGFibGVzIGRvbid0IHN1cHBvcnQgRk9SIFBPUlRJT04gT0YiKSkpOworCisJcmVzdWx0ID0g bWFrZU5vZGUoRm9yUG9ydGlvbk9mRXhwcik7CisKKwkvKiBMb29rIHVwIHRoZSBGT1IgUE9SVElP TiBPRiBuYW1lIHJlcXVlc3RlZC4gKi8KKwlyYW5nZV9hdHRubyA9IGF0dG5hbWVBdHROdW0odGFy Z2V0cmVsLCByYW5nZV9uYW1lLCBmYWxzZSk7CisJaWYgKHJhbmdlX2F0dG5vID09IEludmFsaWRB dHRyTnVtYmVyKQorCQllcmVwb3J0KEVSUk9SLAorCQkJCShlcnJjb2RlKEVSUkNPREVfVU5ERUZJ TkVEX0NPTFVNTiksCisJCQkJIGVycm1zZygiY29sdW1uIG9yIHBlcmlvZCBcIiVzXCIgb2YgcmVs YXRpb24gXCIlc1wiIGRvZXMgbm90IGV4aXN0IiwKKwkJCQkJCXJhbmdlX25hbWUsCisJCQkJCQlS ZWxhdGlvbkdldFJlbGF0aW9uTmFtZSh0YXJnZXRyZWwpKSwKKwkJCQkgcGFyc2VyX2VycnBvc2l0 aW9uKHBzdGF0ZSwgZm9yUG9ydGlvbk9mLT5sb2NhdGlvbikpKTsKKwlhdHRyID0gVHVwbGVEZXNj QXR0cih0YXJnZXRyZWwtPnJkX2F0dCwgcmFuZ2VfYXR0bm8gLSAxKTsKKworCXJhbmdlVmFyID0g bWFrZVZhcigKKwkJCQkJICAgcnRpbmRleCwKKwkJCQkJICAgcmFuZ2VfYXR0bm8sCisJCQkJCSAg IGF0dHItPmF0dHR5cGlkLAorCQkJCQkgICBhdHRyLT5hdHR0eXBtb2QsCisJCQkJCSAgIGF0dHIt PmF0dGNvbGxhdGlvbiwKKwkJCQkJICAgMCk7CisJcmFuZ2VWYXItPmxvY2F0aW9uID0gZm9yUG9y dGlvbk9mLT5sb2NhdGlvbjsKKwlyZXN1bHQtPnJhbmdlVmFyID0gcmFuZ2VWYXI7CisJcmVzdWx0 LT5yYW5nZVR5cGUgPSBhdHRyLT5hdHR0eXBpZDsKKwlpZiAoIWdldF90eXBuYW1lX2FuZF9uYW1l c3BhY2UoYXR0ci0+YXR0dHlwaWQsICZyYW5nZV90eXBlX25hbWUsICZyYW5nZV90eXBlX25hbWVz cGFjZSkpCisJCWVsb2coRVJST1IsICJjYWNoZSBsb29rdXAgZmFpbGVkIGZvciB0eXBlICV1Iiwg YXR0ci0+YXR0dHlwaWQpOworCisKKwlpZiAoZm9yUG9ydGlvbk9mLT50YXJnZXQpCisKKwkJLyoK KwkJICogV2Ugd2VyZSBhbHJlYWR5IGdpdmVuIGFuIGV4cHJlc3Npb24gZm9yIHRoZSB0YXJnZXQs IHNvIHdlIGRvbid0CisJCSAqIGhhdmUgdG8gYnVpbGQgYW55dGhpbmcuCisJCSAqLworCQl0YXJn ZXRFeHByID0gZm9yUG9ydGlvbk9mLT50YXJnZXQ7CisJZWxzZQorCXsKKwkJLyogTWFrZSBzdXJl IGl0J3MgYSByYW5nZSBjb2x1bW4gKi8KKwkJaWYgKCF0eXBlX2lzX3JhbmdlKGF0dHItPmF0dHR5 cGlkKSkKKwkJCWVyZXBvcnQoRVJST1IsCisJCQkJCShlcnJjb2RlKEVSUkNPREVfSU5WQUxJRF9D T0xVTU5fUkVGRVJFTkNFKSwKKwkJCQkJIGVycm1zZygiY29sdW1uIFwiJXNcIiBvZiByZWxhdGlv biBcIiVzXCIgaXMgbm90IGEgcmFuZ2UgdHlwZSIsCisJCQkJCQkJcmFuZ2VfbmFtZSwKKwkJCQkJ CQlSZWxhdGlvbkdldFJlbGF0aW9uTmFtZSh0YXJnZXRyZWwpKSwKKwkJCQkJIHBhcnNlcl9lcnJw b3NpdGlvbihwc3RhdGUsIGZvclBvcnRpb25PZi0+bG9jYXRpb24pKSk7CisKKwkJLyoKKwkJICog QnVpbGQgYSByYW5nZSBmcm9tIHRoZSBGUk9NIC4uLiBUTyAuLi4uIGJvdW5kcy4gVGhpcyBzaG91 bGQgZ2l2ZSBhCisJCSAqIGNvbnN0YW50IHJlc3VsdCwgc28gd2UgYWNjZXB0IGZ1bmN0aW9ucyBs aWtlIE5PVygpIGJ1dCBub3QgY29sdW1uCisJCSAqIHJlZmVyZW5jZXMsIHN1YnF1ZXJpZXMsIGV0 Yy4KKwkJICovCisJCXRhcmdldEV4cHIgPSAoTm9kZSAqKSBtYWtlRnVuY0NhbGwoCisJCQkJCQkJ CQkJICAgbGlzdF9tYWtlMihtYWtlU3RyaW5nKHJhbmdlX3R5cGVfbmFtZXNwYWNlKSwgbWFrZVN0 cmluZyhyYW5nZV90eXBlX25hbWUpKSwKKwkJCQkJCQkJCQkgICBsaXN0X21ha2UyKGZvclBvcnRp b25PZi0+dGFyZ2V0X3N0YXJ0LCBmb3JQb3J0aW9uT2YtPnRhcmdldF9lbmQpLAorCQkJCQkJCQkJ CSAgIENPRVJDRV9FWFBMSUNJVF9DQUxMLAorCQkJCQkJCQkJCSAgIGZvclBvcnRpb25PZi0+bG9j YXRpb24pOworCX0KKwlyZXN1bHQtPnRhcmdldFJhbmdlID0gdHJhbnNmb3JtRXhwcihwc3RhdGUs IHRhcmdldEV4cHIsIEVYUFJfS0lORF9VUERBVEVfUE9SVElPTik7CisKKwkvKgorCSAqIEJ1aWxk IG92ZXJsYXBzRXhwciB0byB1c2UgaW4gdGhlIHdoZXJlQ2xhdXNlLiBUaGlzIG1lYW5zIHdlIG9u bHkgaGl0CisJICogcm93cyBtYXRjaGluZyB0aGUgRlJPTSAmIFRPIGJvdW5kcy4gV2UgbXVzdCBs b29rIHVwIHRoZSBvdmVybGFwcworCSAqIG9wZXJhdG9yICh1c3VhbGx5ICImJiIpLgorCSAqLwor CW9wY2xhc3MgPSBHZXREZWZhdWx0T3BDbGFzcyhhdHRyLT5hdHR0eXBpZCwgR0lTVF9BTV9PSUQp OworCXN0cmF0ID0gUlRPdmVybGFwU3RyYXRlZ3lOdW1iZXI7CisJR2V0T3BlcmF0b3JGcm9tQ29t cGFyZVR5cGUob3BjbGFzcywgSW52YWxpZE9pZCwgQ09NUEFSRV9PVkVSTEFQLCAmb3BpZCwgJnN0 cmF0KTsKKwlyZXN1bHQtPm92ZXJsYXBzRXhwciA9IChOb2RlICopIG1ha2VTaW1wbGVBX0V4cHIo QUVYUFJfT1AsIGdldF9vcG5hbWUob3BpZCksCisJCQkJCQkJCQkJCQkJIChOb2RlICopIGNvcHlP YmplY3QocmFuZ2VWYXIpLCB0YXJnZXRFeHByLAorCQkJCQkJCQkJCQkJCSBmb3JQb3J0aW9uT2Yt PmxvY2F0aW9uKTsKKworCS8qCisJICogTG9vayB1cCB0aGUgd2l0aG91dF9wb3J0aW9uIGZ1bmMu IFRoaXMgY29tcHV0ZXMgdGhlIGJvdW5kcyBvZiB0ZW1wb3JhbAorCSAqIGxlZnRvdmVycy4KKwkg KgorCSAqIFhYWDogRmluZCBhIG1vcmUgZXh0ZW5zaWJsZSB3YXkgdG8gbG9vayB1cCB0aGUgZnVu Y3Rpb24sIHBlcm1pdHRpbmcKKwkgKiB1c2VyLWRlZmluZWQgdHlwZXMuIEFuIG9wY2xhc3Mgc3Vw cG9ydCBmdW5jdGlvbiBkb2Vzbid0IG1ha2Ugc2Vuc2UsCisJICogc2luY2UgdGhlcmUgaXMgbm8g aW5kZXggaW52b2x2ZWQuIFBlcmhhcHMgYSB0eXBlIHN1cHBvcnQgZnVuY3Rpb24uCisJICovCisJ aWYgKGdldF9vcGNsYXNzX29wZmFtaWx5X2FuZF9pbnB1dF90eXBlKG9wY2xhc3MsICZvcGZhbWls eSwgJm9wY2ludHlwZSkpCisJCXN3aXRjaCAob3BjaW50eXBlKQorCQl7CisJCQljYXNlIEFOWVJB TkdFT0lEOgorCQkJCXJlc3VsdC0+d2l0aG91dFBvcnRpb25Qcm9jID0gRl9SQU5HRV9NSU5VU19N VUxUSTsKKwkJCQlicmVhazsKKwkJCWNhc2UgQU5ZTVVMVElSQU5HRU9JRDoKKwkJCQlyZXN1bHQt PndpdGhvdXRQb3J0aW9uUHJvYyA9IEZfTVVMVElSQU5HRV9NSU5VU19NVUxUSTsKKwkJCQlicmVh azsKKwkJCWRlZmF1bHQ6CisJCQkJZWxvZyhFUlJPUiwgInVuZXhwZWN0ZWQgb3BjaW50eXBlOiAl dSIsIG9wY2ludHlwZSk7CisJCX0KKwllbHNlCisJCWVsb2coRVJST1IsICJ1bmV4cGVjdGVkIG9w Y2xhc3M6ICV1Iiwgb3BjbGFzcyk7CisKKwlpZiAoaXNVcGRhdGUpCisJeworCQkvKgorCQkgKiBO b3cgbWFrZSBzdXJlIHdlIHVwZGF0ZSB0aGUgc3RhcnQvZW5kIHRpbWUgb2YgdGhlIHJlY29yZC4g Rm9yIGEKKwkJICogcmFuZ2UgY29sIChyKSB0aGlzIGlzIGByID0gciAqIHRhcmdldFJhbmdlYC4K KwkJICovCisJCU9pZAkJCWludGVyc2VjdG9wZXJvaWQ7CisJCUxpc3QJICAgKmZ1bmNBcmdzID0g TklMOworCQlGdW5jRXhwciAgICpyYW5nZVRMRUV4cHI7CisJCVRhcmdldEVudHJ5ICp0bGU7CisK KwkJLyoKKwkJICogV2hhdGV2ZXIgb3BlcmF0b3IgaXMgdXNlZCBmb3IgaW50ZXJzZWN0IGJ5IHRl bXBvcmFsIGZvcmVpZ24ga2V5cywKKwkJICogd2UgY2FuIHVzZSBpdHMgYmFja2luZyBwcm9jZWR1 cmUgZm9yIGludGVyc2VjdHMgaW4gRk9SIFBPUlRJT04gT0YuCisJCSAqIFhYWDogU2hhcmUgY29k ZSB3aXRoIEZpbmRGS1BlcmlvZE9wZXJzPworCQkgKi8KKwkJc3dpdGNoIChvcGNpbnR5cGUpCisJ CXsKKwkJCWNhc2UgQU5ZUkFOR0VPSUQ6CisJCQkJaW50ZXJzZWN0b3Blcm9pZCA9IE9JRF9SQU5H RV9JTlRFUlNFQ1RfUkFOR0VfT1A7CisJCQkJYnJlYWs7CisJCQljYXNlIEFOWU1VTFRJUkFOR0VP SUQ6CisJCQkJaW50ZXJzZWN0b3Blcm9pZCA9IE9JRF9NVUxUSVJBTkdFX0lOVEVSU0VDVF9NVUxU SVJBTkdFX09QOworCQkJCWJyZWFrOworCQkJZGVmYXVsdDoKKwkJCQllbG9nKEVSUk9SLCAiVW5l eHBlY3RlZCBvcGNpbnR5cGU6ICV1Iiwgb3BjaW50eXBlKTsKKwkJfQorCQlmdW5jaWQgPSBnZXRf b3Bjb2RlKGludGVyc2VjdG9wZXJvaWQpOworCQlpZiAoIU9pZElzVmFsaWQoZnVuY2lkKSkKKwkJ CWVyZXBvcnQoRVJST1IsCisJCQkJCWVycmNvZGUoRVJSQ09ERV9VTkRFRklORURfT0JKRUNUKSwK KwkJCQkJZXJybXNnKCJjb3VsZCBub3QgaWRlbnRpZnkgYW4gaW50ZXJzZWN0IGZ1bmN0aW9uIGZv ciB0eXBlICVzIiwgZm9ybWF0X3R5cGVfYmUob3BjaW50eXBlKSkpOworCisJCXRhcmdldEV4cHIg PSB0cmFuc2Zvcm1FeHByKHBzdGF0ZSwgdGFyZ2V0RXhwciwgRVhQUl9LSU5EX1VQREFURV9QT1JU SU9OKTsKKwkJZnVuY0FyZ3MgPSBsYXBwZW5kKGZ1bmNBcmdzLCBjb3B5T2JqZWN0KHJhbmdlVmFy KSk7CisJCWZ1bmNBcmdzID0gbGFwcGVuZChmdW5jQXJncywgdGFyZ2V0RXhwcik7CisJCXJhbmdl VExFRXhwciA9IG1ha2VGdW5jRXhwcihmdW5jaWQsIGF0dHItPmF0dHR5cGlkLCBmdW5jQXJncywK KwkJCQkJCQkJCUludmFsaWRPaWQsIEludmFsaWRPaWQsIENPRVJDRV9FWFBMSUNJVF9DQUxMKTsK KworCQkvKiBNYWtlIGEgVExFIHRvIHNldCB0aGUgcmFuZ2UgY29sdW1uICovCisJCXJlc3VsdC0+ cmFuZ2VUYXJnZXRMaXN0ID0gTklMOworCQl0bGUgPSBtYWtlVGFyZ2V0RW50cnkoKEV4cHIgKikg cmFuZ2VUTEVFeHByLCByYW5nZV9hdHRubywgcmFuZ2VfbmFtZSwgZmFsc2UpOworCQlyZXN1bHQt PnJhbmdlVGFyZ2V0TGlzdCA9IGxhcHBlbmQocmVzdWx0LT5yYW5nZVRhcmdldExpc3QsIHRsZSk7 CisKKwkJLyogTWFyayB0aGUgcmFuZ2UgY29sdW1uIGFzIHJlcXVpcmluZyB1cGRhdGUgcGVybWlz c2lvbnMgKi8KKwkJdGFyZ2V0X3Blcm1pbmZvLT51cGRhdGVkQ29scyA9IGJtc19hZGRfbWVtYmVy KHRhcmdldF9wZXJtaW5mby0+dXBkYXRlZENvbHMsCisJCQkJCQkJCQkJCQkJICByYW5nZV9hdHRu byAtIEZpcnN0TG93SW52YWxpZEhlYXBBdHRyaWJ1dGVOdW1iZXIpOworCX0KKwllbHNlCisJCXJl c3VsdC0+cmFuZ2VUYXJnZXRMaXN0ID0gTklMOworCisJcmVzdWx0LT5yYW5nZV9uYW1lID0gcmFu Z2VfbmFtZTsKKworCXJldHVybiByZXN1bHQ7Cit9CiAKIC8qCiAgKiBCdWlsZE9uQ29uZmxpY3RF eGNsdWRlZFRhcmdldGxpc3QKQEAgLTI0OTIsNiArMjcyNSw3IEBAIHRyYW5zZm9ybVVwZGF0ZVN0 bXQoUGFyc2VTdGF0ZSAqcHN0YXRlLCBVcGRhdGVTdG10ICpzdG10KQogewogCVF1ZXJ5CSAgICpx cnkgPSBtYWtlTm9kZShRdWVyeSk7CiAJUGFyc2VOYW1lc3BhY2VJdGVtICpuc2l0ZW07CisJTm9k ZQkgICAqd2hlcmVDbGF1c2U7CiAJTm9kZQkgICAqcXVhbDsKIAogCXFyeS0+Y29tbWFuZFR5cGUg PSBDTURfVVBEQVRFOwpAQCAtMjUwOSw2ICsyNzQzLDEwIEBAIHRyYW5zZm9ybVVwZGF0ZVN0bXQo UGFyc2VTdGF0ZSAqcHN0YXRlLCBVcGRhdGVTdG10ICpzdG10KQogCQkJCQkJCQkJCSBzdG10LT5y ZWxhdGlvbi0+aW5oLAogCQkJCQkJCQkJCSB0cnVlLAogCQkJCQkJCQkJCSBBQ0xfVVBEQVRFKTsK KworCWlmIChzdG10LT5mb3JQb3J0aW9uT2YpCisJCXFyeS0+Zm9yUG9ydGlvbk9mID0gdHJhbnNm b3JtRm9yUG9ydGlvbk9mQ2xhdXNlKHBzdGF0ZSwgcXJ5LT5yZXN1bHRSZWxhdGlvbiwgc3RtdC0+ Zm9yUG9ydGlvbk9mLCB0cnVlKTsKKwogCW5zaXRlbSA9IHBzdGF0ZS0+cF90YXJnZXRfbnNpdGVt OwogCiAJLyogc3VicXVlcmllcyBpbiBGUk9NIGNhbm5vdCBhY2Nlc3MgdGhlIHJlc3VsdCByZWxh dGlvbiAqLwpAQCAtMjUyNSw3ICsyNzYzLDggQEAgdHJhbnNmb3JtVXBkYXRlU3RtdChQYXJzZVN0 YXRlICpwc3RhdGUsIFVwZGF0ZVN0bXQgKnN0bXQpCiAJbnNpdGVtLT5wX2xhdGVyYWxfb25seSA9 IGZhbHNlOwogCW5zaXRlbS0+cF9sYXRlcmFsX29rID0gdHJ1ZTsKIAotCXF1YWwgPSB0cmFuc2Zv cm1XaGVyZUNsYXVzZShwc3RhdGUsIHN0bXQtPndoZXJlQ2xhdXNlLAorCXdoZXJlQ2xhdXNlID0g YWRkRm9yUG9ydGlvbk9mV2hlcmVDb25kaXRpb25zKHFyeSwgc3RtdC0+Zm9yUG9ydGlvbk9mLCBz dG10LT53aGVyZUNsYXVzZSk7CisJcXVhbCA9IHRyYW5zZm9ybVdoZXJlQ2xhdXNlKHBzdGF0ZSwg d2hlcmVDbGF1c2UsCiAJCQkJCQkJCUVYUFJfS0lORF9XSEVSRSwgIldIRVJFIik7CiAKIAl0cmFu c2Zvcm1SZXR1cm5pbmdDbGF1c2UocHN0YXRlLCBxcnksIHN0bXQtPnJldHVybmluZ0NsYXVzZSwK QEAgLTI1MzUsNyArMjc3NCw3IEBAIHRyYW5zZm9ybVVwZGF0ZVN0bXQoUGFyc2VTdGF0ZSAqcHN0 YXRlLCBVcGRhdGVTdG10ICpzdG10KQogCSAqIE5vdyB3ZSBhcmUgZG9uZSB3aXRoIFNFTEVDVC1s aWtlIHByb2Nlc3NpbmcsIGFuZCBjYW4gZ2V0IG9uIHdpdGgKIAkgKiB0cmFuc2Zvcm1pbmcgdGhl IHRhcmdldCBsaXN0IHRvIG1hdGNoIHRoZSBVUERBVEUgdGFyZ2V0IGNvbHVtbnMuCiAJICovCi0J cXJ5LT50YXJnZXRMaXN0ID0gdHJhbnNmb3JtVXBkYXRlVGFyZ2V0TGlzdChwc3RhdGUsIHN0bXQt PnRhcmdldExpc3QpOworCXFyeS0+dGFyZ2V0TGlzdCA9IHRyYW5zZm9ybVVwZGF0ZVRhcmdldExp c3QocHN0YXRlLCBzdG10LT50YXJnZXRMaXN0LCBxcnktPmZvclBvcnRpb25PZik7CiAKIAlxcnkt PnJ0YWJsZSA9IHBzdGF0ZS0+cF9ydGFibGU7CiAJcXJ5LT5ydGVwZXJtaW5mb3MgPSBwc3RhdGUt PnBfcnRlcGVybWluZm9zOwpAQCAtMjU1NCw3ICsyNzkzLDcgQEAgdHJhbnNmb3JtVXBkYXRlU3Rt dChQYXJzZVN0YXRlICpwc3RhdGUsIFVwZGF0ZVN0bXQgKnN0bXQpCiAgKgloYW5kbGUgU0VUIGNs YXVzZSBpbiBVUERBVEUvTUVSR0UvSU5TRVJUIC4uLiBPTiBDT05GTElDVCBVUERBVEUKICAqLwog TGlzdCAqCi10cmFuc2Zvcm1VcGRhdGVUYXJnZXRMaXN0KFBhcnNlU3RhdGUgKnBzdGF0ZSwgTGlz dCAqb3JpZ1RsaXN0KQordHJhbnNmb3JtVXBkYXRlVGFyZ2V0TGlzdChQYXJzZVN0YXRlICpwc3Rh dGUsIExpc3QgKm9yaWdUbGlzdCwgRm9yUG9ydGlvbk9mRXhwciAqZm9yUG9ydGlvbk9mKQogewog CUxpc3QJICAgKnRsaXN0ID0gTklMOwogCVJURVBlcm1pc3Npb25JbmZvICp0YXJnZXRfcGVybWlu Zm87CkBAIC0yNjA3LDYgKzI4NDYsMjAgQEAgdHJhbnNmb3JtVXBkYXRlVGFyZ2V0TGlzdChQYXJz ZVN0YXRlICpwc3RhdGUsIExpc3QgKm9yaWdUbGlzdCkKIAkJCQkJIGVycmhpbnQoIlNFVCB0YXJn ZXQgY29sdW1ucyBjYW5ub3QgYmUgcXVhbGlmaWVkIHdpdGggdGhlIHJlbGF0aW9uIG5hbWUuIikg OiAwLAogCQkJCQkgcGFyc2VyX2VycnBvc2l0aW9uKHBzdGF0ZSwgb3JpZ1RhcmdldC0+bG9jYXRp b24pKSk7CiAKKwkJLyoKKwkJICogSWYgdGhpcyBpcyBhIEZPUiBQT1JUSU9OIE9GIHVwZGF0ZSwg Zm9yYmlkIGRpcmVjdGx5IHNldHRpbmcgdGhlCisJCSAqIHJhbmdlIGNvbHVtbiwgc2luY2UgdGhh dCB3b3VsZCBjb25mbGljdCB3aXRoIHRoZSBpbXBsaWNpdCB1cGRhdGVzLgorCQkgKi8KKwkJaWYg KGZvclBvcnRpb25PZiAhPSBOVUxMKQorCQl7CisJCQlpZiAoYXR0cm5vID09IGZvclBvcnRpb25P Zi0+cmFuZ2VWYXItPnZhcmF0dG5vKQorCQkJCWVyZXBvcnQoRVJST1IsCisJCQkJCQkoZXJyY29k ZShFUlJDT0RFX1NZTlRBWF9FUlJPUiksCisJCQkJCQkgZXJybXNnKCJjYW4ndCBkaXJlY3RseSBh c3NpZ24gdG8gXCIlc1wiIGluIGEgRk9SIFBPUlRJT04gT0YgdXBkYXRlIiwKKwkJCQkJCQkJb3Jp Z1RhcmdldC0+bmFtZSksCisJCQkJCQkgcGFyc2VyX2VycnBvc2l0aW9uKHBzdGF0ZSwgb3JpZ1Rh cmdldC0+bG9jYXRpb24pKSk7CisJCX0KKwogCQl1cGRhdGVUYXJnZXRMaXN0RW50cnkocHN0YXRl LCB0bGUsIG9yaWdUYXJnZXQtPm5hbWUsCiAJCQkJCQkJICBhdHRybm8sCiAJCQkJCQkJICBvcmln VGFyZ2V0LT5pbmRpcmVjdGlvbiwKZGlmZiAtLWdpdCBhL3NyYy9iYWNrZW5kL3BhcnNlci9ncmFt LnkgYi9zcmMvYmFja2VuZC9wYXJzZXIvZ3JhbS55CmluZGV4IGMzYTBhMzU0YTljLi43OWU1M2Yx ZGY2MiAxMDA2NDQKLS0tIGEvc3JjL2JhY2tlbmQvcGFyc2VyL2dyYW0ueQorKysgYi9zcmMvYmFj a2VuZC9wYXJzZXIvZ3JhbS55CkBAIC0yNTAsNiArMjUwLDcgQEAgc3RhdGljIE5vZGUgKm1ha2VS ZWN1cnNpdmVWaWV3U2VsZWN0KGNoYXIgKnJlbG5hbWUsIExpc3QgKmFsaWFzZXMsIE5vZGUgKnF1 ZXJ5KTsKIAlSYW5nZVZhciAgICpyYW5nZTsKIAlJbnRvQ2xhdXNlICppbnRvOwogCVdpdGhDbGF1 c2UgKndpdGg7CisJRm9yUG9ydGlvbk9mQ2xhdXNlICpmb3Jwb3J0aW9ub2Y7CiAJSW5mZXJDbGF1 c2UJKmluZmVyOwogCU9uQ29uZmxpY3RDbGF1c2UgKm9uY29uZmxpY3Q7CiAJQV9JbmRpY2VzICAq YWluZDsKQEAgLTU1NSw2ICs1NTYsOCBAQCBzdGF0aWMgTm9kZSAqbWFrZVJlY3Vyc2l2ZVZpZXdT ZWxlY3QoY2hhciAqcmVsbmFtZSwgTGlzdCAqYWxpYXNlcywgTm9kZSAqcXVlcnkpOwogJXR5cGUg PHJhbmdlPglyZWxhdGlvbl9leHByCiAldHlwZSA8cmFuZ2U+CWV4dGVuZGVkX3JlbGF0aW9uX2V4 cHIKICV0eXBlIDxyYW5nZT4JcmVsYXRpb25fZXhwcl9vcHRfYWxpYXMKKyV0eXBlIDxhbGlhcz4J b3B0X2FsaWFzCisldHlwZSA8Zm9ycG9ydGlvbm9mPiBmb3JfcG9ydGlvbl9vZl9jbGF1c2UKICV0 eXBlIDxub2RlPgl0YWJsZXNhbXBsZV9jbGF1c2Ugb3B0X3JlcGVhdGFibGVfY2xhdXNlCiAldHlw ZSA8dGFyZ2V0Pgl0YXJnZXRfZWwgc2V0X3RhcmdldCBpbnNlcnRfY29sdW1uX2l0ZW0KIApAQCAt NzYzLDcgKzc2Niw3IEBAIHN0YXRpYyBOb2RlICptYWtlUmVjdXJzaXZlVmlld1NlbGVjdChjaGFy ICpyZWxuYW1lLCBMaXN0ICphbGlhc2VzLCBOb2RlICpxdWVyeSk7CiAJT1ZFUiBPVkVSTEFQUyBP VkVSTEFZIE9WRVJSSURJTkcgT1dORUQgT1dORVIKIAogCVBBUkFMTEVMIFBBUkFNRVRFUiBQQVJT RVIgUEFSVElBTCBQQVJUSVRJT04gUEFTU0lORyBQQVNTV09SRCBQQVRICi0JUEVSSU9EIFBMQUNJ TkcgUExBTiBQTEFOUyBQT0xJQ1kKKwlQRVJJT0QgUExBQ0lORyBQTEFOIFBMQU5TIFBPTElDWSBQ T1JUSU9OCiAJUE9TSVRJT04gUFJFQ0VESU5HIFBSRUNJU0lPTiBQUkVTRVJWRSBQUkVQQVJFIFBS RVBBUkVEIFBSSU1BUlkKIAlQUklPUiBQUklWSUxFR0VTIFBST0NFRFVSQUwgUFJPQ0VEVVJFIFBS T0NFRFVSRVMgUFJPR1JBTSBQVUJMSUNBVElPTgogCkBAIC04ODIsMTIgKzg4NSwxNSBAQCBzdGF0 aWMgTm9kZSAqbWFrZVJlY3Vyc2l2ZVZpZXdTZWxlY3QoY2hhciAqcmVsbmFtZSwgTGlzdCAqYWxp YXNlcywgTm9kZSAqcXVlcnkpOwogICoganNvbl9wcmVkaWNhdGVfdHlwZV9jb25zdHJhaW50IGFu ZCBqc29uX2tleV91bmlxdWVuZXNzX2NvbnN0cmFpbnRfb3B0CiAgKiBwcm9kdWN0aW9ucyAoc2Vl IGNvbW1lbnRzIHRoZXJlKS4KICAqCisgKiBUTyBpcyBhc3NpZ25lZCB0aGUgc2FtZSBwcmVjZWRl bmNlIGFzIElERU5ULCB0byBzdXBwb3J0IHRoZSBvcHRfaW50ZXJ2YWwKKyAqIHByb2R1Y3Rpb24g KHNlZSBjb21tZW50IHRoZXJlKS4KKyAqCiAgKiBMaWtlIHRoZSBVTkJPVU5ERUQgUFJFQ0VESU5H L0ZPTExPV0lORyBjYXNlLCBORVNURUQgaXMgYXNzaWduZWQgYSBsb3dlcgogICogcHJlY2VkZW5j ZSB0aGFuIFBBVEggdG8gZml4IGFtYmlndWl0eSBpbiB0aGUganNvbl90YWJsZSBwcm9kdWN0aW9u LgogICovCiAlbm9uYXNzb2MJVU5CT1VOREVEIE5FU1RFRCAvKiBpZGVhbGx5IHdvdWxkIGhhdmUg c2FtZSBwcmVjZWRlbmNlIGFzIElERU5UICovCiAlbm9uYXNzb2MJSURFTlQgUEFSVElUSU9OIFJB TkdFIFJPV1MgR1JPVVBTIFBSRUNFRElORyBGT0xMT1dJTkcgQ1VCRSBST0xMVVAKLQkJCVNFVCBL RVlTIE9CSkVDVF9QIFNDQUxBUiBWQUxVRV9QIFdJVEggV0lUSE9VVCBQQVRICisJCQlTRVQgS0VZ UyBPQkpFQ1RfUCBTQ0FMQVIgVE8gVVNJTkcgVkFMVUVfUCBXSVRIIFdJVEhPVVQgUEFUSAogJWxl ZnQJCU9wIE9QRVJBVE9SCQkvKiBtdWx0aS1jaGFyYWN0ZXIgb3BzIGFuZCB1c2VyLWRlZmluZWQg b3BlcmF0b3JzICovCiAlbGVmdAkJJysnICctJwogJWxlZnQJCScqJyAnLycgJyUnCkBAIC0xMjU1 MCw2ICsxMjU1NiwyMCBAQCBEZWxldGVTdG10OiBvcHRfd2l0aF9jbGF1c2UgREVMRVRFX1AgRlJP TSByZWxhdGlvbl9leHByX29wdF9hbGlhcwogCQkJCQluLT53aXRoQ2xhdXNlID0gJDE7CiAJCQkJ CSQkID0gKE5vZGUgKikgbjsKIAkJCQl9CisJCQl8IG9wdF93aXRoX2NsYXVzZSBERUxFVEVfUCBG Uk9NIHJlbGF0aW9uX2V4cHIgZm9yX3BvcnRpb25fb2ZfY2xhdXNlIG9wdF9hbGlhcworCQkJdXNp bmdfY2xhdXNlIHdoZXJlX29yX2N1cnJlbnRfY2xhdXNlIHJldHVybmluZ19jbGF1c2UKKwkJCQl7 CisJCQkJCURlbGV0ZVN0bXQgKm4gPSBtYWtlTm9kZShEZWxldGVTdG10KTsKKworCQkJCQluLT5y ZWxhdGlvbiA9ICQ0OworCQkJCQluLT5mb3JQb3J0aW9uT2YgPSAkNTsKKwkJCQkJbi0+cmVsYXRp b24tPmFsaWFzID0gJDY7CisJCQkJCW4tPnVzaW5nQ2xhdXNlID0gJDc7CisJCQkJCW4tPndoZXJl Q2xhdXNlID0gJDg7CisJCQkJCW4tPnJldHVybmluZ0NsYXVzZSA9ICQ5OworCQkJCQluLT53aXRo Q2xhdXNlID0gJDE7CisJCQkJCSQkID0gKE5vZGUgKikgbjsKKwkJCQl9CiAJCTsKIAogdXNpbmdf Y2xhdXNlOgpAQCAtMTI2MjQsNiArMTI2NDQsMjUgQEAgVXBkYXRlU3RtdDogb3B0X3dpdGhfY2xh dXNlIFVQREFURSByZWxhdGlvbl9leHByX29wdF9hbGlhcwogCQkJCQluLT53aXRoQ2xhdXNlID0g JDE7CiAJCQkJCSQkID0gKE5vZGUgKikgbjsKIAkJCQl9CisJCQl8IG9wdF93aXRoX2NsYXVzZSBV UERBVEUgcmVsYXRpb25fZXhwcgorCQkJZm9yX3BvcnRpb25fb2ZfY2xhdXNlIG9wdF9hbGlhcwor CQkJU0VUIHNldF9jbGF1c2VfbGlzdAorCQkJZnJvbV9jbGF1c2UKKwkJCXdoZXJlX29yX2N1cnJl bnRfY2xhdXNlCisJCQlyZXR1cm5pbmdfY2xhdXNlCisJCQkJeworCQkJCQlVcGRhdGVTdG10ICpu ID0gbWFrZU5vZGUoVXBkYXRlU3RtdCk7CisKKwkJCQkJbi0+cmVsYXRpb24gPSAkMzsKKwkJCQkJ bi0+Zm9yUG9ydGlvbk9mID0gJDQ7CisJCQkJCW4tPnJlbGF0aW9uLT5hbGlhcyA9ICQ1OworCQkJ CQluLT50YXJnZXRMaXN0ID0gJDc7CisJCQkJCW4tPmZyb21DbGF1c2UgPSAkODsKKwkJCQkJbi0+ d2hlcmVDbGF1c2UgPSAkOTsKKwkJCQkJbi0+cmV0dXJuaW5nQ2xhdXNlID0gJDEwOworCQkJCQlu LT53aXRoQ2xhdXNlID0gJDE7CisJCQkJCSQkID0gKE5vZGUgKikgbjsKKwkJCQl9CiAJCTsKIAog c2V0X2NsYXVzZV9saXN0OgpAQCAtMTQxMjEsNiArMTQxNjAsNDQgQEAgcmVsYXRpb25fZXhwcl9v cHRfYWxpYXM6IHJlbGF0aW9uX2V4cHIJCQkJCSVwcmVjIFVNSU5VUwogCQkJCX0KIAkJOwogCitv cHRfYWxpYXM6CisJCQlBUyBDb2xJZAorCQkJCXsKKwkJCQkJQWxpYXMJICAgKmFsaWFzID0gbWFr ZU5vZGUoQWxpYXMpOworCisJCQkJCWFsaWFzLT5hbGlhc25hbWUgPSAkMjsKKwkJCQkJJCQgPSBh bGlhczsKKwkJCQl9CisJCQl8IEJhcmVDb2xMYWJlbAorCQkJCXsKKwkJCQkJQWxpYXMJICAgKmFs aWFzID0gbWFrZU5vZGUoQWxpYXMpOworCisJCQkJCWFsaWFzLT5hbGlhc25hbWUgPSAkMTsKKwkJ CQkJJCQgPSBhbGlhczsKKwkJCQl9CisJCQl8IC8qIGVtcHR5ICovICVwcmVjIFVNSU5VUyB7ICQk ID0gTlVMTDsgfQorCQk7CisKK2Zvcl9wb3J0aW9uX29mX2NsYXVzZToKKwkJCUZPUiBQT1JUSU9O IE9GIENvbElkICcoJyBhX2V4cHIgJyknCisJCQkJeworCQkJCQlGb3JQb3J0aW9uT2ZDbGF1c2Ug Km4gPSBtYWtlTm9kZShGb3JQb3J0aW9uT2ZDbGF1c2UpOworCQkJCQluLT5yYW5nZV9uYW1lID0g JDQ7CisJCQkJCW4tPmxvY2F0aW9uID0gQDQ7CisJCQkJCW4tPnRhcmdldCA9ICQ2OworCQkJCQkk JCA9IG47CisJCQkJfQorCQkJfCBGT1IgUE9SVElPTiBPRiBDb2xJZCBGUk9NIGFfZXhwciBUTyBh X2V4cHIKKwkJCQl7CisJCQkJCUZvclBvcnRpb25PZkNsYXVzZSAqbiA9IG1ha2VOb2RlKEZvclBv cnRpb25PZkNsYXVzZSk7CisJCQkJCW4tPnJhbmdlX25hbWUgPSAkNDsKKwkJCQkJbi0+bG9jYXRp b24gPSBANDsKKwkJCQkJbi0+dGFyZ2V0X3N0YXJ0ID0gJDY7CisJCQkJCW4tPnRhcmdldF9lbmQg PSAkODsKKwkJCQkJJCQgPSBuOworCQkJCX0KKwkJOworCiAvKgogICogVEFCTEVTQU1QTEUgZGVj b3JhdGlvbiBpbiBhIEZST00gaXRlbQogICovCkBAIC0xNDk2MSwxNiArMTUwMzgsMjUgQEAgb3B0 X3RpbWV6b25lOgogCQkJfCAvKkVNUFRZKi8JCQkJCQkJCXsgJCQgPSBmYWxzZTsgfQogCQk7CiAK Ky8qCisgKiBXZSBuZWVkIHRvIGhhbmRsZSB0aGlzIHNoaWZ0L3JlZHVjZSBjb25mbGljdDoKKyAq IEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gdCArIElOVEVSVkFMICcxJyBZRUFSIFRPIE1P TlRILgorICogV2UgZG9uJ3Qgc2VlIGZhciBlbm91Z2ggYWhlYWQgdG8ga25vdyBpZiB0aGVyZSBp cyBhbm90aGVyIFRPIGNvbWluZy4KKyAqIFdlIHByZWZlciB0byBpbnRlcnByZXQgdGhpcyBhcyBG Uk9NICh0ICsgSU5URVJWQUwgJzEnIFlFQVIgVE8gTU9OVEgpLAorICogaS5lLiB0byBzaGlmdC4K KyAqIFRoYXQgZ2l2ZXMgdGhlIHVzZXIgdGhlIG9wdGlvbiBvZiBhZGRpbmcgcGFyZW50aGVzZXMg dG8gZ2V0IHRoZSBvdGhlciBtZWFuaW5nLgorICogSWYgd2UgcmVkdWNlZCwgaW50ZXJ2YWxzIGNv dWxkIG5ldmVyIGhhdmUgYSBUTy4KKyAqLwogb3B0X2ludGVydmFsOgotCQkJWUVBUl9QCisJCQlZ RUFSX1AJCQkJCQkJCQkJCQkJCQkJJXByZWMgSVMKIAkJCQl7ICQkID0gbGlzdF9tYWtlMShtYWtl SW50Q29uc3QoSU5URVJWQUxfTUFTSyhZRUFSKSwgQDEpKTsgfQogCQkJfCBNT05USF9QCiAJCQkJ eyAkJCA9IGxpc3RfbWFrZTEobWFrZUludENvbnN0KElOVEVSVkFMX01BU0soTU9OVEgpLCBAMSkp OyB9Ci0JCQl8IERBWV9QCisJCQl8IERBWV9QCQkJCQkJCQkJCQkJCQkJCSVwcmVjIElTCiAJCQkJ eyAkJCA9IGxpc3RfbWFrZTEobWFrZUludENvbnN0KElOVEVSVkFMX01BU0soREFZKSwgQDEpKTsg fQotCQkJfCBIT1VSX1AKKwkJCXwgSE9VUl9QCQkJCQkJCQkJCQkJCQkJJXByZWMgSVMKIAkJCQl7 ICQkID0gbGlzdF9tYWtlMShtYWtlSW50Q29uc3QoSU5URVJWQUxfTUFTSyhIT1VSKSwgQDEpKTsg fQotCQkJfCBNSU5VVEVfUAorCQkJfCBNSU5VVEVfUAkJCQkJCQkJCQkJCQkJJXByZWMgSVMKIAkJ CQl7ICQkID0gbGlzdF9tYWtlMShtYWtlSW50Q29uc3QoSU5URVJWQUxfTUFTSyhNSU5VVEUpLCBA MSkpOyB9CiAJCQl8IGludGVydmFsX3NlY29uZAogCQkJCXsgJCQgPSAkMTsgfQpAQCAtMTgwNDUs NiArMTgxMzEsNyBAQCB1bnJlc2VydmVkX2tleXdvcmQ6CiAJCQl8IFBMQU4KIAkJCXwgUExBTlMK IAkJCXwgUE9MSUNZCisJCQl8IFBPUlRJT04KIAkJCXwgUFJFQ0VESU5HCiAJCQl8IFBSRVBBUkUK IAkJCXwgUFJFUEFSRUQKQEAgLTE4Njc2LDYgKzE4NzYzLDcgQEAgYmFyZV9sYWJlbF9rZXl3b3Jk OgogCQkJfCBQTEFOCiAJCQl8IFBMQU5TCiAJCQl8IFBPTElDWQorCQkJfCBQT1JUSU9OCiAJCQl8 IFBPU0lUSU9OCiAJCQl8IFBSRUNFRElORwogCQkJfCBQUkVQQVJFCmRpZmYgLS1naXQgYS9zcmMv YmFja2VuZC9wYXJzZXIvcGFyc2VfYWdnLmMgYi9zcmMvYmFja2VuZC9wYXJzZXIvcGFyc2VfYWdn LmMKaW5kZXggYjgzNDA1NTdiMzQuLjM0Y2I0MTkyODM1IDEwMDY0NAotLS0gYS9zcmMvYmFja2Vu ZC9wYXJzZXIvcGFyc2VfYWdnLmMKKysrIGIvc3JjL2JhY2tlbmQvcGFyc2VyL3BhcnNlX2FnZy5j CkBAIC01ODMsNiArNTgzLDEzIEBAIGNoZWNrX2FnZ2xldmVsc19hbmRfY29uc3RyYWludHMoUGFy c2VTdGF0ZSAqcHN0YXRlLCBOb2RlICpleHByKQogCQljYXNlIEVYUFJfS0lORF9DWUNMRV9NQVJL OgogCQkJZXJya2luZCA9IHRydWU7CiAJCQlicmVhazsKKwkJY2FzZSBFWFBSX0tJTkRfVVBEQVRF X1BPUlRJT046CisJCQlpZiAoaXNBZ2cpCisJCQkJZXJyID0gXygiYWdncmVnYXRlIGZ1bmN0aW9u cyBhcmUgbm90IGFsbG93ZWQgaW4gRk9SIFBPUlRJT04gT0YgZXhwcmVzc2lvbnMiKTsKKwkJCWVs c2UKKwkJCQllcnIgPSBfKCJncm91cGluZyBvcGVyYXRpb25zIGFyZSBub3QgYWxsb3dlZCBpbiBG T1IgUE9SVElPTiBPRiBleHByZXNzaW9ucyIpOworCisJCQlicmVhazsKIAogCQkJLyoKIAkJCSAq IFRoZXJlIGlzIGludGVudGlvbmFsbHkgbm8gZGVmYXVsdDogY2FzZSBoZXJlLCBzbyB0aGF0IHRo ZQpAQCAtMTAyMyw2ICsxMDMwLDkgQEAgdHJhbnNmb3JtV2luZG93RnVuY0NhbGwoUGFyc2VTdGF0 ZSAqcHN0YXRlLCBXaW5kb3dGdW5jICp3ZnVuYywKIAkJY2FzZSBFWFBSX0tJTkRfQ1lDTEVfTUFS SzoKIAkJCWVycmtpbmQgPSB0cnVlOwogCQkJYnJlYWs7CisJCWNhc2UgRVhQUl9LSU5EX1VQREFU RV9QT1JUSU9OOgorCQkJZXJyID0gXygid2luZG93IGZ1bmN0aW9ucyBhcmUgbm90IGFsbG93ZWQg aW4gRk9SIFBPUlRJT04gT0YgZXhwcmVzc2lvbnMiKTsKKwkJCWJyZWFrOwogCiAJCQkvKgogCQkJ ICogVGhlcmUgaXMgaW50ZW50aW9uYWxseSBubyBkZWZhdWx0OiBjYXNlIGhlcmUsIHNvIHRoYXQg dGhlCmRpZmYgLS1naXQgYS9zcmMvYmFja2VuZC9wYXJzZXIvcGFyc2VfY29sbGF0ZS5jIGIvc3Jj L2JhY2tlbmQvcGFyc2VyL3BhcnNlX2NvbGxhdGUuYwppbmRleCBkMmUyMTgzNTNmMy4uNTIyMzQ1 YjE2NjggMTAwNjQ0Ci0tLSBhL3NyYy9iYWNrZW5kL3BhcnNlci9wYXJzZV9jb2xsYXRlLmMKKysr IGIvc3JjL2JhY2tlbmQvcGFyc2VyL3BhcnNlX2NvbGxhdGUuYwpAQCAtNDg0LDYgKzQ4NCw3IEBA IGFzc2lnbl9jb2xsYXRpb25zX3dhbGtlcihOb2RlICpub2RlLCBhc3NpZ25fY29sbGF0aW9uc19j b250ZXh0ICpjb250ZXh0KQogCQljYXNlIFRfSm9pbkV4cHI6CiAJCWNhc2UgVF9Gcm9tRXhwcjoK IAkJY2FzZSBUX09uQ29uZmxpY3RFeHByOgorCQljYXNlIFRfRm9yUG9ydGlvbk9mRXhwcjoKIAkJ Y2FzZSBUX1NvcnRHcm91cENsYXVzZToKIAkJY2FzZSBUX01lcmdlQWN0aW9uOgogCQkJKHZvaWQp IGV4cHJlc3Npb25fdHJlZV93YWxrZXIobm9kZSwKZGlmZiAtLWdpdCBhL3NyYy9iYWNrZW5kL3Bh cnNlci9wYXJzZV9leHByLmMgYi9zcmMvYmFja2VuZC9wYXJzZXIvcGFyc2VfZXhwci5jCmluZGV4 IDMyZDZhZTkxOGNhLi4yZDQ2OWMxNzdmMCAxMDA2NDQKLS0tIGEvc3JjL2JhY2tlbmQvcGFyc2Vy L3BhcnNlX2V4cHIuYworKysgYi9zcmMvYmFja2VuZC9wYXJzZXIvcGFyc2VfZXhwci5jCkBAIC01 ODUsNiArNTg1LDkgQEAgdHJhbnNmb3JtQ29sdW1uUmVmKFBhcnNlU3RhdGUgKnBzdGF0ZSwgQ29s dW1uUmVmICpjcmVmKQogCQljYXNlIEVYUFJfS0lORF9QQVJUSVRJT05fQk9VTkQ6CiAJCQllcnIg PSBfKCJjYW5ub3QgdXNlIGNvbHVtbiByZWZlcmVuY2UgaW4gcGFydGl0aW9uIGJvdW5kIGV4cHJl c3Npb24iKTsKIAkJCWJyZWFrOworCQljYXNlIEVYUFJfS0lORF9VUERBVEVfUE9SVElPTjoKKwkJ CWVyciA9IF8oImNhbm5vdCB1c2UgY29sdW1uIHJlZmVyZW5jZSBpbiBGT1IgUE9SVElPTiBPRiBl eHByZXNzaW9uIik7CisJCQlicmVhazsKIAogCQkJLyoKIAkJCSAqIFRoZXJlIGlzIGludGVudGlv bmFsbHkgbm8gZGVmYXVsdDogY2FzZSBoZXJlLCBzbyB0aGF0IHRoZQpAQCAtMTg2MSw2ICsxODY0 LDkgQEAgdHJhbnNmb3JtU3ViTGluayhQYXJzZVN0YXRlICpwc3RhdGUsIFN1YkxpbmsgKnN1Ymxp bmspCiAJCWNhc2UgRVhQUl9LSU5EX0dFTkVSQVRFRF9DT0xVTU46CiAJCQllcnIgPSBfKCJjYW5u b3QgdXNlIHN1YnF1ZXJ5IGluIGNvbHVtbiBnZW5lcmF0aW9uIGV4cHJlc3Npb24iKTsKIAkJCWJy ZWFrOworCQljYXNlIEVYUFJfS0lORF9VUERBVEVfUE9SVElPTjoKKwkJCWVyciA9IF8oImNhbm5v dCB1c2Ugc3VicXVlcnkgaW4gRk9SIFBPUlRJT04gT0YgZXhwcmVzc2lvbiIpOworCQkJYnJlYWs7 CiAKIAkJCS8qCiAJCQkgKiBUaGVyZSBpcyBpbnRlbnRpb25hbGx5IG5vIGRlZmF1bHQ6IGNhc2Ug aGVyZSwgc28gdGhhdCB0aGUKQEAgLTMxNzQsNiArMzE4MCw4IEBAIFBhcnNlRXhwcktpbmROYW1l KFBhcnNlRXhwcktpbmQgZXhwcktpbmQpCiAJCQlyZXR1cm4gIlVQREFURSI7CiAJCWNhc2UgRVhQ Ul9LSU5EX01FUkdFX1dIRU46CiAJCQlyZXR1cm4gIk1FUkdFIFdIRU4iOworCQljYXNlIEVYUFJf S0lORF9VUERBVEVfUE9SVElPTjoKKwkJCXJldHVybiAiRk9SIFBPUlRJT04gT0YiOwogCQljYXNl IEVYUFJfS0lORF9HUk9VUF9CWToKIAkJCXJldHVybiAiR1JPVVAgQlkiOwogCQljYXNlIEVYUFJf S0lORF9PUkRFUl9CWToKZGlmZiAtLWdpdCBhL3NyYy9iYWNrZW5kL3BhcnNlci9wYXJzZV9mdW5j LmMgYi9zcmMvYmFja2VuZC9wYXJzZXIvcGFyc2VfZnVuYy5jCmluZGV4IDc3OGQ2OWM2ZjNjLi40 NzY0ZGQyMWM5MCAxMDA2NDQKLS0tIGEvc3JjL2JhY2tlbmQvcGFyc2VyL3BhcnNlX2Z1bmMuYwor KysgYi9zcmMvYmFja2VuZC9wYXJzZXIvcGFyc2VfZnVuYy5jCkBAIC0yNzgzLDYgKzI3ODMsOSBA QCBjaGVja19zcmZfY2FsbF9wbGFjZW1lbnQoUGFyc2VTdGF0ZSAqcHN0YXRlLCBOb2RlICpsYXN0 X3NyZiwgaW50IGxvY2F0aW9uKQogCQljYXNlIEVYUFJfS0lORF9DWUNMRV9NQVJLOgogCQkJZXJy a2luZCA9IHRydWU7CiAJCQlicmVhazsKKwkJY2FzZSBFWFBSX0tJTkRfVVBEQVRFX1BPUlRJT046 CisJCQllcnIgPSBfKCJzZXQtcmV0dXJuaW5nIGZ1bmN0aW9ucyBhcmUgbm90IGFsbG93ZWQgaW4g Rk9SIFBPUlRJT04gT0YgZXhwcmVzc2lvbnMiKTsKKwkJCWJyZWFrOwogCiAJCQkvKgogCQkJICog VGhlcmUgaXMgaW50ZW50aW9uYWxseSBubyBkZWZhdWx0OiBjYXNlIGhlcmUsIHNvIHRoYXQgdGhl CmRpZmYgLS1naXQgYS9zcmMvYmFja2VuZC9wYXJzZXIvcGFyc2VfbWVyZ2UuYyBiL3NyYy9iYWNr ZW5kL3BhcnNlci9wYXJzZV9tZXJnZS5jCmluZGV4IDUxZDc3MDNlZmY3Li5lZDI3NmM0MTQ2MCAx MDA2NDQKLS0tIGEvc3JjL2JhY2tlbmQvcGFyc2VyL3BhcnNlX21lcmdlLmMKKysrIGIvc3JjL2Jh Y2tlbmQvcGFyc2VyL3BhcnNlX21lcmdlLmMKQEAgLTM4NSw3ICszODUsNyBAQCB0cmFuc2Zvcm1N ZXJnZVN0bXQoUGFyc2VTdGF0ZSAqcHN0YXRlLCBNZXJnZVN0bXQgKnN0bXQpCiAJCQkJCXBzdGF0 ZS0+cF9pc19pbnNlcnQgPSBmYWxzZTsKIAkJCQkJYWN0aW9uLT50YXJnZXRMaXN0ID0KIAkJCQkJ CXRyYW5zZm9ybVVwZGF0ZVRhcmdldExpc3QocHN0YXRlLAotCQkJCQkJCQkJCQkJICBtZXJnZVdo ZW5DbGF1c2UtPnRhcmdldExpc3QpOworCQkJCQkJCQkJCQkJICBtZXJnZVdoZW5DbGF1c2UtPnRh cmdldExpc3QsIE5VTEwpOwogCQkJCX0KIAkJCQlicmVhazsKIAkJCWNhc2UgQ01EX0RFTEVURToK ZGlmZiAtLWdpdCBhL3NyYy9iYWNrZW5kL3Jld3JpdGUvcmV3cml0ZUhhbmRsZXIuYyBiL3NyYy9i YWNrZW5kL3Jld3JpdGUvcmV3cml0ZUhhbmRsZXIuYwppbmRleCBhZGM5ZTc2MDBlMS4uZTg4M2I3 ZjJhNjAgMTAwNjQ0Ci0tLSBhL3NyYy9iYWNrZW5kL3Jld3JpdGUvcmV3cml0ZUhhbmRsZXIuYwor KysgYi9zcmMvYmFja2VuZC9yZXdyaXRlL3Jld3JpdGVIYW5kbGVyLmMKQEAgLTM3MjksNiArMzcy OSwzMCBAQCByZXdyaXRlVGFyZ2V0VmlldyhRdWVyeSAqcGFyc2V0cmVlLCBSZWxhdGlvbiB2aWV3 KQogCQkJCQkJCQkJICAmcGFyc2V0cmVlLT5oYXNTdWJMaW5rcyk7CiAJfQogCisJaWYgKHBhcnNl dHJlZS0+Zm9yUG9ydGlvbk9mICYmIHBhcnNldHJlZS0+Y29tbWFuZFR5cGUgPT0gQ01EX1VQREFU RSkKKwl7CisJCS8qCisJCSAqIExpa2UgdGhlIElOU0VSVC9VUERBVEUgY29kZSBhYm92ZSwgdXBk YXRlIHRoZSByZXNub3MgaW4gdGhlCisJCSAqIGF1eGlsaWFyeSBVUERBVEUgdGFyZ2V0bGlzdCB0 byByZWZlciB0byBjb2x1bW5zIG9mIHRoZSBiYXNlCisJCSAqIHJlbGF0aW9uLgorCQkgKi8KKwkJ Zm9yZWFjaChsYywgcGFyc2V0cmVlLT5mb3JQb3J0aW9uT2YtPnJhbmdlVGFyZ2V0TGlzdCkKKwkJ eworCQkJVGFyZ2V0RW50cnkgKnRsZSA9IChUYXJnZXRFbnRyeSAqKSBsZmlyc3QobGMpOworCQkJ VGFyZ2V0RW50cnkgKnZpZXdfdGxlOworCisJCQlpZiAodGxlLT5yZXNqdW5rKQorCQkJCWNvbnRp bnVlOworCisJCQl2aWV3X3RsZSA9IGdldF90bGVfYnlfcmVzbm8odmlld190YXJnZXRsaXN0LCB0 bGUtPnJlc25vKTsKKwkJCWlmICh2aWV3X3RsZSAhPSBOVUxMICYmICF2aWV3X3RsZS0+cmVzanVu ayAmJiBJc0Eodmlld190bGUtPmV4cHIsIFZhcikpCisJCQkJdGxlLT5yZXNubyA9ICgoVmFyICop IHZpZXdfdGxlLT5leHByKS0+dmFyYXR0bm87CisJCQllbHNlCisJCQkJZWxvZyhFUlJPUiwgImF0 dHJpYnV0ZSBudW1iZXIgJWQgbm90IGZvdW5kIGluIHZpZXcgdGFyZ2V0bGlzdCIsCisJCQkJCSB0 bGUtPnJlc25vKTsKKwkJfQorCX0KKwogCS8qCiAJICogRm9yIFVQREFURS9ERUxFVEUvTUVSR0Us IHB1bGwgdXAgYW55IFdIRVJFIHF1YWxzIGZyb20gdGhlIHZpZXcuICBXZQogCSAqIGtub3cgdGhh dCBhbnkgVmFycyBpbiB0aGUgcXVhbHMgbXVzdCByZWZlcmVuY2UgdGhlIG9uZSBiYXNlIHJlbGF0 aW9uLApAQCAtNDA2OCw2ICs0MDkyLDI1IEBAIFJld3JpdGVRdWVyeShRdWVyeSAqcGFyc2V0cmVl LCBMaXN0ICpyZXdyaXRlX2V2ZW50cywgaW50IG9yaWdfcnRfbGVuZ3RoKQogCQllbHNlIGlmIChl dmVudCA9PSBDTURfVVBEQVRFKQogCQl7CiAJCQlBc3NlcnQocGFyc2V0cmVlLT5vdmVycmlkZSA9 PSBPVkVSUklESU5HX05PVF9TRVQpOworCisJCQkvKgorCQkJICogVXBkYXRlIEZPUiBQT1JUSU9O IE9GIGNvbHVtbihzKSBhdXRvbWF0aWNhbGx5LiBEb24ndCBkbyB0aGlzCisJCQkgKiB1bnRpbCB3 ZSdyZSBkb25lIHJld3JpdGluZyBhIHZpZXcgdXBkYXRlLCBzbyB0aGF0IHdlIGRvbid0IGFkZAor CQkJICogdGhlIHNhbWUgdXBkYXRlIG9uIHRoZSByZWN1cnNpb24uCisJCQkgKi8KKwkJCWlmIChw YXJzZXRyZWUtPmZvclBvcnRpb25PZiAmJgorCQkJCXJ0X2VudHJ5X3JlbGF0aW9uLT5yZF9yZWwt PnJlbGtpbmQgIT0gUkVMS0lORF9WSUVXKQorCQkJeworCQkJCUxpc3RDZWxsICAgKnRsOworCisJ CQkJZm9yZWFjaCh0bCwgcGFyc2V0cmVlLT5mb3JQb3J0aW9uT2YtPnJhbmdlVGFyZ2V0TGlzdCkK KwkJCQl7CisJCQkJCVRhcmdldEVudHJ5ICp0bGUgPSAoVGFyZ2V0RW50cnkgKikgbGZpcnN0KHRs KTsKKworCQkJCQlwYXJzZXRyZWUtPnRhcmdldExpc3QgPSBsYXBwZW5kKHBhcnNldHJlZS0+dGFy Z2V0TGlzdCwgdGxlKTsKKwkJCQl9CisJCQl9CisKIAkJCXBhcnNldHJlZS0+dGFyZ2V0TGlzdCA9 CiAJCQkJcmV3cml0ZVRhcmdldExpc3RJVShwYXJzZXRyZWUtPnRhcmdldExpc3QsCiAJCQkJCQkJ CQlwYXJzZXRyZWUtPmNvbW1hbmRUeXBlLApkaWZmIC0tZ2l0IGEvc3JjL2JhY2tlbmQvdXRpbHMv YWR0L3JpX3RyaWdnZXJzLmMgYi9zcmMvYmFja2VuZC91dGlscy9hZHQvcmlfdHJpZ2dlcnMuYwpp bmRleCAwNTlmYzVlYmY2MC4uZDZiMWViNTdhNDggMTAwNjQ0Ci0tLSBhL3NyYy9iYWNrZW5kL3V0 aWxzL2FkdC9yaV90cmlnZ2Vycy5jCisrKyBiL3NyYy9iYWNrZW5kL3V0aWxzL2FkdC9yaV90cmln Z2Vycy5jCkBAIC0xMjgsNyArMTI4LDcgQEAgdHlwZWRlZiBzdHJ1Y3QgUklfQ29uc3RyYWludElu Zm8KIAlPaWQJCQlmZl9lcV9vcHJzW1JJX01BWF9OVU1LRVlTXTsgLyogZXF1YWxpdHkgb3BlcmF0 b3JzIChGSyA9IEZLKSAqLwogCU9pZAkJCXBlcmlvZF9jb250YWluZWRfYnlfb3BlcjsJLyogYW55 cmFuZ2UgPEAgYW55cmFuZ2UgKi8KIAlPaWQJCQlhZ2dlZF9wZXJpb2RfY29udGFpbmVkX2J5X29w ZXI7IC8qIGZrYXR0ciA8QCByYW5nZV9hZ2cocGthdHRyKSAqLwotCU9pZAkJCXBlcmlvZF9pbnRl cnNlY3Rfb3BlcjsJLyogYW55cmFuZ2UgKiBhbnlyYW5nZSAqLworCU9pZAkJCXBlcmlvZF9pbnRl cnNlY3Rfb3BlcjsJLyogYW55cmFuZ2UgKiBhbnlyYW5nZSAob3IgbXVsdGlyYW5nZSkgKi8KIAlk bGlzdF9ub2RlCXZhbGlkX2xpbms7CQkvKiBMaW5rIGluIGxpc3Qgb2YgdmFsaWQgZW50cmllcyAq LwogfSBSSV9Db25zdHJhaW50SW5mbzsKIApkaWZmIC0tZ2l0IGEvc3JjL2JhY2tlbmQvdXRpbHMv Y2FjaGUvbHN5c2NhY2hlLmMgYi9zcmMvYmFja2VuZC91dGlscy9jYWNoZS9sc3lzY2FjaGUuYwpp bmRleCBmYTdjZDdlMDZhNy4uNDMxNThhZmFjMTUgMTAwNjQ0Ci0tLSBhL3NyYy9iYWNrZW5kL3V0 aWxzL2NhY2hlL2xzeXNjYWNoZS5jCisrKyBiL3NyYy9iYWNrZW5kL3V0aWxzL2NhY2hlL2xzeXNj YWNoZS5jCkBAIC0yMzU1LDYgKzIzNTUsMzMgQEAgZ2V0X3R5cGlzZGVmaW5lZChPaWQgdHlwaWQp CiAJCXJldHVybiBmYWxzZTsKIH0KIAorLyoKKyAqIGdldF90eXBuYW1lX2FuZF9uYW1lc3BhY2UK KyAqCisgKgkgIFJldHVybnMgdGhlIG5hbWUgYW5kIG5hbWVzcGFjZSBvZiBhIGdpdmVuIHR5cGUK KyAqCisgKiBSZXR1cm5zIHRydWUgaWYgb25lIGZvdW5kLCBvciBmYWxzZSBpZiBub3QuCisgKi8K K2Jvb2wKK2dldF90eXBuYW1lX2FuZF9uYW1lc3BhY2UoT2lkIHR5cGlkLCBjaGFyICoqdHlwbmFt ZSwgY2hhciAqKnR5cG5hbWVzcGFjZSkKK3sKKwlIZWFwVHVwbGUJdHA7CisKKwl0cCA9IFNlYXJj aFN5c0NhY2hlMShUWVBFT0lELCBPYmplY3RJZEdldERhdHVtKHR5cGlkKSk7CisJaWYgKEhlYXBU dXBsZUlzVmFsaWQodHApKQorCXsKKwkJRm9ybV9wZ190eXBlIHR5cHR1cCA9IChGb3JtX3BnX3R5 cGUpIEdFVFNUUlVDVCh0cCk7CisKKwkJKnR5cG5hbWUgPSBwc3RyZHVwKE5hbWVTdHIodHlwdHVw LT50eXBuYW1lKSk7CisJCSp0eXBuYW1lc3BhY2UgPSBnZXRfbmFtZXNwYWNlX25hbWUodHlwdHVw LT50eXBuYW1lc3BhY2UpOworCQlSZWxlYXNlU3lzQ2FjaGUodHApOworCQkvKiAqdHlwbmFtZXNw YWNlIGlzIE5VTEwgaWYgaXQgd2Fzbid0IGZvdW5kOiAqLworCQlyZXR1cm4gKnR5cG5hbWVzcGFj ZTsKKwl9CisJZWxzZQorCQlyZXR1cm4gZmFsc2U7Cit9CisKIC8qCiAgKiBnZXRfdHlwbGVuCiAg KgpkaWZmIC0tZ2l0IGEvc3JjL2luY2x1ZGUvbm9kZXMvZXhlY25vZGVzLmggYi9zcmMvaW5jbHVk ZS9ub2Rlcy9leGVjbm9kZXMuaAppbmRleCAxOGFlOGYwZDRiYi4uYWNiM2Q1NDU4YTIgMTAwNjQ0 Ci0tLSBhL3NyYy9pbmNsdWRlL25vZGVzL2V4ZWNub2Rlcy5oCisrKyBiL3NyYy9pbmNsdWRlL25v ZGVzL2V4ZWNub2Rlcy5oCkBAIC00OCw2ICs0OCw3IEBACiAjaW5jbHVkZSAidXRpbHMvc29ydHN1 cHBvcnQuaCIKICNpbmNsdWRlICJ1dGlscy90dXBsZXNvcnQuaCIKICNpbmNsdWRlICJ1dGlscy90 dXBsZXN0b3JlLmgiCisjaW5jbHVkZSAidXRpbHMvdHlwY2FjaGUuaCIKIAogLyoKICAqIGZvcndh cmQgcmVmZXJlbmNlcyBpbiB0aGlzIGZpbGUKQEAgLTQ1Miw2ICs0NTMsMjQgQEAgdHlwZWRlZiBz dHJ1Y3QgTWVyZ2VBY3Rpb25TdGF0ZQogCUV4cHJTdGF0ZSAgKm1hc193aGVucXVhbDsJLyogV0hF TiBbTk9UXSBNQVRDSEVEIEFORCBjb25kaXRpb25zICovCiB9IE1lcmdlQWN0aW9uU3RhdGU7CiAK Ky8qCisgKiBGb3JQb3J0aW9uT2ZTdGF0ZQorICoKKyAqIEV4ZWN1dG9yIHN0YXRlIG9mIGEgRk9S IFBPUlRJT04gT0Ygb3BlcmF0aW9uLgorICovCit0eXBlZGVmIHN0cnVjdCBGb3JQb3J0aW9uT2ZT dGF0ZQoreworCU5vZGVUYWcJCXR5cGU7CisKKwljaGFyCSAgICpmcF9yYW5nZU5hbWU7CS8qIHRo ZSBjb2x1bW4gbmFtZWQgaW4gRk9SIFBPUlRJT04gT0YgKi8KKwlPaWQJCQlmcF9yYW5nZVR5cGU7 CS8qIHRoZSB0eXBlIG9mIHRoZSBGT1IgUE9SVElPTiBPRiBleHByZXNzaW9uICovCisJaW50CQkJ ZnBfcmFuZ2VBdHRubzsJLyogdGhlIGF0dG5vIG9mIHRoZSByYW5nZSBjb2x1bW4gKi8KKwlEYXR1 bQkJZnBfdGFyZ2V0UmFuZ2U7IC8qIHRoZSByYW5nZS9tdWx0aXJhbmdlIGZyb20gRk9SIFBPUlRJ T04gT0YgKi8KKwlUeXBlQ2FjaGVFbnRyeSAqZnBfbGVmdG92ZXJzdHlwY2FjaGU7CS8qIHR5cGUg Y2FjaGUgZW50cnkgb2YgdGhlIHJhbmdlICovCisJVHVwbGVUYWJsZVNsb3QgKmZwX0V4aXN0aW5n OwkvKiBzbG90IHRvIHN0b3JlIG9sZCB0dXBsZSAqLworCVR1cGxlVGFibGVTbG90ICpmcF9MZWZ0 b3ZlcjsJLyogc2xvdCB0byBzdG9yZSBsZWZ0b3ZlciAqLworfSBGb3JQb3J0aW9uT2ZTdGF0ZTsK KwogLyoKICAqIFJlc3VsdFJlbEluZm8KICAqCkBAIC01ODgsNiArNjA3LDkgQEAgdHlwZWRlZiBz dHJ1Y3QgUmVzdWx0UmVsSW5mbwogCS8qIGZvciBNRVJHRSwgZXhwciBzdGF0ZSBmb3IgY2hlY2tp bmcgdGhlIGpvaW4gY29uZGl0aW9uICovCiAJRXhwclN0YXRlICAqcmlfTWVyZ2VKb2luQ29uZGl0 aW9uOwogCisJLyogRk9SIFBPUlRJT04gT0YgZXZhbHVhdGlvbiBzdGF0ZSAqLworCUZvclBvcnRp b25PZlN0YXRlICpyaV9mb3JQb3J0aW9uT2Y7CisKIAkvKiBwYXJ0aXRpb24gY2hlY2sgZXhwcmVz c2lvbiBzdGF0ZSAoTlVMTCBpZiBub3Qgc2V0IHVwIHlldCkgKi8KIAlFeHByU3RhdGUgICpyaV9Q YXJ0aXRpb25DaGVja0V4cHI7CiAKZGlmZiAtLWdpdCBhL3NyYy9pbmNsdWRlL25vZGVzL3BhcnNl bm9kZXMuaCBiL3NyYy9pbmNsdWRlL25vZGVzL3BhcnNlbm9kZXMuaAppbmRleCBkMTQyOTRhNGVj ZS4uOGFhYzRjNDE3ZTkgMTAwNjQ0Ci0tLSBhL3NyYy9pbmNsdWRlL25vZGVzL3BhcnNlbm9kZXMu aAorKysgYi9zcmMvaW5jbHVkZS9ub2Rlcy9wYXJzZW5vZGVzLmgKQEAgLTE0Nyw2ICsxNDcsOSBA QCB0eXBlZGVmIHN0cnVjdCBRdWVyeQogCSAqLwogCWludAkJCXJlc3VsdFJlbGF0aW9uIHBnX25v ZGVfYXR0cihxdWVyeV9qdW1ibGVfaWdub3JlKTsKIAorCS8qIEZPUiBQT1JUSU9OIE9GIGNsYXVz ZSBmb3IgVVBEQVRFL0RFTEVURSAqLworCUZvclBvcnRpb25PZkV4cHIgKmZvclBvcnRpb25PZjsK KwogCS8qIGhhcyBhZ2dyZWdhdGVzIGluIHRsaXN0IG9yIGhhdmluZ1F1YWwgKi8KIAlib29sCQlo YXNBZ2dzIHBnX25vZGVfYXR0cihxdWVyeV9qdW1ibGVfaWdub3JlKTsKIAkvKiBoYXMgd2luZG93 IGZ1bmN0aW9ucyBpbiB0bGlzdCAqLwpAQCAtMTYxMyw2ICsxNjE2LDIxIEBAIHR5cGVkZWYgc3Ry dWN0IFJvd01hcmtDbGF1c2UKIAlib29sCQlwdXNoZWREb3duOwkJLyogcHVzaGVkIGRvd24gZnJv bSBoaWdoZXIgcXVlcnkgbGV2ZWw/ICovCiB9IFJvd01hcmtDbGF1c2U7CiAKKy8qCisgKiBGb3JQ b3J0aW9uT2ZDbGF1c2UKKyAqCQlyZXByZXNlbnRhdGlvbiBvZiBGT1IgUE9SVElPTiBPRiA8cGVy aW9kLW5hbWU+IEZST00gPHRzPiBUTyA8dGU+CisgKgkJb3IgRk9SIFBPUlRJT04gT0YgPHBlcmlv ZC1uYW1lPiAoPHRhcmdldD4pCisgKi8KK3R5cGVkZWYgc3RydWN0IEZvclBvcnRpb25PZkNsYXVz ZQoreworCU5vZGVUYWcJCXR5cGU7CisJY2hhcgkgICAqcmFuZ2VfbmFtZTsKKwlpbnQJCQlsb2Nh dGlvbjsKKwlOb2RlCSAgICp0YXJnZXQ7CisJTm9kZQkgICAqdGFyZ2V0X3N0YXJ0OworCU5vZGUJ ICAgKnRhcmdldF9lbmQ7Cit9IEZvclBvcnRpb25PZkNsYXVzZTsKKwogLyoKICAqIFdpdGhDbGF1 c2UgLQogICoJICAgcmVwcmVzZW50YXRpb24gb2YgV0lUSCBjbGF1c2UKQEAgLTIxMjYsNiArMjE0 NCw3IEBAIHR5cGVkZWYgc3RydWN0IERlbGV0ZVN0bXQKIAlOb2RlCSAgICp3aGVyZUNsYXVzZTsJ LyogcXVhbGlmaWNhdGlvbnMgKi8KIAlSZXR1cm5pbmdDbGF1c2UgKnJldHVybmluZ0NsYXVzZTsJ LyogUkVUVVJOSU5HIGNsYXVzZSAqLwogCVdpdGhDbGF1c2UgKndpdGhDbGF1c2U7CQkvKiBXSVRI IGNsYXVzZSAqLworCUZvclBvcnRpb25PZkNsYXVzZSAqZm9yUG9ydGlvbk9mOwkvKiBGT1IgUE9S VElPTiBPRiBjbGF1c2UgKi8KIH0gRGVsZXRlU3RtdDsKIAogLyogLS0tLS0tLS0tLS0tLS0tLS0t LS0tLQpAQCAtMjE0MSw2ICsyMTYwLDcgQEAgdHlwZWRlZiBzdHJ1Y3QgVXBkYXRlU3RtdAogCUxp c3QJICAgKmZyb21DbGF1c2U7CQkvKiBvcHRpb25hbCBmcm9tIGNsYXVzZSBmb3IgbW9yZSB0YWJs ZXMgKi8KIAlSZXR1cm5pbmdDbGF1c2UgKnJldHVybmluZ0NsYXVzZTsJLyogUkVUVVJOSU5HIGNs YXVzZSAqLwogCVdpdGhDbGF1c2UgKndpdGhDbGF1c2U7CQkvKiBXSVRIIGNsYXVzZSAqLworCUZv clBvcnRpb25PZkNsYXVzZSAqZm9yUG9ydGlvbk9mOwkvKiBGT1IgUE9SVElPTiBPRiBjbGF1c2Ug Ki8KIH0gVXBkYXRlU3RtdDsKIAogLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQpkaWZmIC0tZ2l0 IGEvc3JjL2luY2x1ZGUvbm9kZXMvcGF0aG5vZGVzLmggYi9zcmMvaW5jbHVkZS9ub2Rlcy9wYXRo bm9kZXMuaAppbmRleCA0NmE4NjU1NjIxZC4uMDA0NThjMGIwNWYgMTAwNjQ0Ci0tLSBhL3NyYy9p bmNsdWRlL25vZGVzL3BhdGhub2Rlcy5oCisrKyBiL3NyYy9pbmNsdWRlL25vZGVzL3BhdGhub2Rl cy5oCkBAIC0yNjEzLDYgKzI2MTMsNyBAQCB0eXBlZGVmIHN0cnVjdCBNb2RpZnlUYWJsZVBhdGgK IAlMaXN0CSAgICpyZXR1cm5pbmdMaXN0czsgLyogcGVyLXRhcmdldC10YWJsZSBSRVRVUk5JTkcg dGxpc3RzICovCiAJTGlzdAkgICAqcm93TWFya3M7CQkvKiBQbGFuUm93TWFya3MgKG5vbi1sb2Nr aW5nIG9ubHkpICovCiAJT25Db25mbGljdEV4cHIgKm9uY29uZmxpY3Q7IC8qIE9OIENPTkZMSUNU IGNsYXVzZSwgb3IgTlVMTCAqLworCUZvclBvcnRpb25PZkV4cHIgKmZvclBvcnRpb25PZjsgLyog Rk9SIFBPUlRJT04gT0YgY2xhdXNlIGZvciBVUERBVEUvREVMRVRFICovCiAJaW50CQkJZXBxUGFy YW07CQkvKiBJRCBvZiBQYXJhbSBmb3IgRXZhbFBsYW5RdWFsIHJlLWV2YWwgKi8KIAlMaXN0CSAg ICptZXJnZUFjdGlvbkxpc3RzOwkvKiBwZXItdGFyZ2V0LXRhYmxlIGxpc3RzIG9mIGFjdGlvbnMg Zm9yCiAJCQkJCQkJCQkgKiBNRVJHRSAqLwpkaWZmIC0tZ2l0IGEvc3JjL2luY2x1ZGUvbm9kZXMv cGxhbm5vZGVzLmggYi9zcmMvaW5jbHVkZS9ub2Rlcy9wbGFubm9kZXMuaAppbmRleCBjNDM5M2E5 NDMyMS4uOTJiODdjMTQ4NTkgMTAwNjQ0Ci0tLSBhL3NyYy9pbmNsdWRlL25vZGVzL3BsYW5ub2Rl cy5oCisrKyBiL3NyYy9pbmNsdWRlL25vZGVzL3BsYW5ub2Rlcy5oCkBAIC0zNjgsNiArMzY4LDgg QEAgdHlwZWRlZiBzdHJ1Y3QgTW9kaWZ5VGFibGUKIAlMaXN0CSAgICpvbkNvbmZsaWN0Q29sczsK IAkvKiBXSEVSRSBmb3IgT04gQ09ORkxJQ1QgVVBEQVRFICovCiAJTm9kZQkgICAqb25Db25mbGlj dFdoZXJlOworCS8qIEZPUiBQT1JUSU9OIE9GIGNsYXVzZSBmb3IgVVBEQVRFL0RFTEVURSAqLwor CU5vZGUJICAgKmZvclBvcnRpb25PZjsKIAkvKiBSVEkgb2YgdGhlIEVYQ0xVREVEIHBzZXVkbyBy ZWxhdGlvbiAqLwogCUluZGV4CQlleGNsUmVsUlRJOwogCS8qIHRsaXN0IG9mIHRoZSBFWENMVURF RCBwc2V1ZG8gcmVsYXRpb24gKi8KZGlmZiAtLWdpdCBhL3NyYy9pbmNsdWRlL25vZGVzL3ByaW1u b2Rlcy5oIGIvc3JjL2luY2x1ZGUvbm9kZXMvcHJpbW5vZGVzLmgKaW5kZXggMWI0NDM2ZjJmZjYu LmZiYmNkNzdkZDg0IDEwMDY0NAotLS0gYS9zcmMvaW5jbHVkZS9ub2Rlcy9wcmltbm9kZXMuaAor KysgYi9zcmMvaW5jbHVkZS9ub2Rlcy9wcmltbm9kZXMuaApAQCAtMjM4NSw0ICsyMzg1LDMxIEBA IHR5cGVkZWYgc3RydWN0IE9uQ29uZmxpY3RFeHByCiAJTGlzdAkgICAqZXhjbFJlbFRsaXN0Owkv KiB0bGlzdCBvZiB0aGUgRVhDTFVERUQgcHNldWRvIHJlbGF0aW9uICovCiB9IE9uQ29uZmxpY3RF eHByOwogCisvKi0tLS0tLS0tLS0KKyAqIEZvclBvcnRpb25PZkV4cHIgLSByZXByZXNlbnRzIGEg Rk9SIFBPUlRJT04gT0YgLi4uIGV4cHJlc3Npb24KKyAqCisgKiBXZSBzZXQgdXAgYW4gZXhwcmVz c2lvbiB0byBtYWtlIGEgcmFuZ2UgZnJvbSB0aGUgRlJPTS9UTyBib3VuZHMsCisgKiBzbyB0aGF0 IHdlIGNhbiB1c2UgcmFuZ2Ugb3BlcmF0b3JzIHdpdGggaXQuCisgKgorICogVGhlbiB3ZSBzZXQg dXAgYW4gb3ZlcmxhcHMgZXhwcmVzc2lvbiBiZXR3ZWVuIHRoYXQgYW5kIHRoZSByYW5nZSBjb2x1 bW4sCisgKiBzbyB0aGF0IHdlIGNhbiBmaW5kIHRoZSByb3dzIHdlIG5lZWQgdG8gdXBkYXRlL2Rl bGV0ZS4KKyAqCisgKiBJbiB0aGUgZXhlY3V0b3Igd2UnbGwgYWxzbyBidWlsZCBhbiBpbnRlcnNl Y3QgZXhwcmVzc2lvbiBiZXR3ZWVuIHRoZQorICogdGFyZ2V0ZWQgcmFuZ2UgYW5kIHRoZSByYW5n ZSBjb2x1bW4sIHNvIHRoYXQgd2UgY2FuIHVwZGF0ZSB0aGUgc3RhcnQvZW5kCisgKiBib3VuZHMg b2YgdGhlIFVQREFURSdkIHJlY29yZC4KKyAqLS0tLS0tLS0tLQorICovCit0eXBlZGVmIHN0cnVj dCBGb3JQb3J0aW9uT2ZFeHByCit7CisJTm9kZVRhZwkJdHlwZTsKKwlWYXIJCSAgICpyYW5nZVZh cjsJCS8qIFJhbmdlIGNvbHVtbiAqLworCWNoYXIJICAgKnJhbmdlX25hbWU7CQkvKiBSYW5nZSBu YW1lICovCisJTm9kZQkgICAqdGFyZ2V0UmFuZ2U7CS8qIEZPUiBQT1JUSU9OIE9GIGJvdW5kcyBh cyBhIHJhbmdlICovCisJT2lkCQkJcmFuZ2VUeXBlOwkJLyogdHlwZSBvZiB0YXJnZXRSYW5nZSAq LworCU5vZGUJICAgKm92ZXJsYXBzRXhwcjsJLyogcmFuZ2UgJiYgdGFyZ2V0UmFuZ2UgKi8KKwlM aXN0CSAgICpyYW5nZVRhcmdldExpc3Q7CS8qIExpc3Qgb2YgVGFyZ2V0RW50cnlzIHRvIHNldCB0 aGUgdGltZQorCQkJCQkJCQkJICogY29sdW1uKHMpICovCisJT2lkCQkJd2l0aG91dFBvcnRpb25Q cm9jOyAvKiBTUkYgcHJvYyBmb3Igb2xkX3JhbmdlIC0gdGFyZ2V0X3JhbmdlICovCit9IEZvclBv cnRpb25PZkV4cHI7CisKICNlbmRpZgkJCQkJCQkvKiBQUklNTk9ERVNfSCAqLwpkaWZmIC0tZ2l0 IGEvc3JjL2luY2x1ZGUvb3B0aW1pemVyL3BhdGhub2RlLmggYi9zcmMvaW5jbHVkZS9vcHRpbWl6 ZXIvcGF0aG5vZGUuaAppbmRleCA5NTVlOTA1Njg1OC4uYWMwZjY5MTc0M2YgMTAwNjQ0Ci0tLSBh L3NyYy9pbmNsdWRlL29wdGltaXplci9wYXRobm9kZS5oCisrKyBiL3NyYy9pbmNsdWRlL29wdGlt aXplci9wYXRobm9kZS5oCkBAIC0yODYsNyArMjg2LDcgQEAgZXh0ZXJuIE1vZGlmeVRhYmxlUGF0 aCAqY3JlYXRlX21vZGlmeXRhYmxlX3BhdGgoUGxhbm5lckluZm8gKnJvb3QsCiAJCQkJCQkJCQkJ CQlMaXN0ICp3aXRoQ2hlY2tPcHRpb25MaXN0cywgTGlzdCAqcmV0dXJuaW5nTGlzdHMsCiAJCQkJ CQkJCQkJCQlMaXN0ICpyb3dNYXJrcywgT25Db25mbGljdEV4cHIgKm9uY29uZmxpY3QsCiAJCQkJ CQkJCQkJCQlMaXN0ICptZXJnZUFjdGlvbkxpc3RzLCBMaXN0ICptZXJnZUpvaW5Db25kaXRpb25z LAotCQkJCQkJCQkJCQkJaW50IGVwcVBhcmFtKTsKKwkJCQkJCQkJCQkJCUZvclBvcnRpb25PZkV4 cHIgKmZvclBvcnRpb25PZiwgaW50IGVwcVBhcmFtKTsKIGV4dGVybiBMaW1pdFBhdGggKmNyZWF0 ZV9saW1pdF9wYXRoKFBsYW5uZXJJbmZvICpyb290LCBSZWxPcHRJbmZvICpyZWwsCiAJCQkJCQkJ CQlQYXRoICpzdWJwYXRoLAogCQkJCQkJCQkJTm9kZSAqbGltaXRPZmZzZXQsIE5vZGUgKmxpbWl0 Q291bnQsCmRpZmYgLS1naXQgYS9zcmMvaW5jbHVkZS9wYXJzZXIvYW5hbHl6ZS5oIGIvc3JjL2lu Y2x1ZGUvcGFyc2VyL2FuYWx5emUuaAppbmRleCBmMjllZDAzYjQ3Ni4uNDYxNGJlMDUyZGMgMTAw NjQ0Ci0tLSBhL3NyYy9pbmNsdWRlL3BhcnNlci9hbmFseXplLmgKKysrIGIvc3JjL2luY2x1ZGUv cGFyc2VyL2FuYWx5emUuaApAQCAtNDMsNyArNDMsOCBAQCBleHRlcm4gTGlzdCAqdHJhbnNmb3Jt SW5zZXJ0Um93KFBhcnNlU3RhdGUgKnBzdGF0ZSwgTGlzdCAqZXhwcmxpc3QsCiAJCQkJCQkJCUxp c3QgKnN0bXRjb2xzLCBMaXN0ICppY29sdW1ucywgTGlzdCAqYXR0cm5vcywKIAkJCQkJCQkJYm9v bCBzdHJpcF9pbmRpcmVjdGlvbik7CiBleHRlcm4gTGlzdCAqdHJhbnNmb3JtVXBkYXRlVGFyZ2V0 TGlzdChQYXJzZVN0YXRlICpwc3RhdGUsCi0JCQkJCQkJCQkgICBMaXN0ICpvcmlnVGxpc3QpOwor CQkJCQkJCQkJICAgTGlzdCAqb3JpZ1RsaXN0LAorCQkJCQkJCQkJICAgRm9yUG9ydGlvbk9mRXhw ciAqZm9yUG9ydGlvbk9mKTsKIGV4dGVybiB2b2lkIHRyYW5zZm9ybVJldHVybmluZ0NsYXVzZShQ YXJzZVN0YXRlICpwc3RhdGUsIFF1ZXJ5ICpxcnksCiAJCQkJCQkJCQkgUmV0dXJuaW5nQ2xhdXNl ICpyZXR1cm5pbmdDbGF1c2UsCiAJCQkJCQkJCQkgUGFyc2VFeHByS2luZCBleHByS2luZCk7CmRp ZmYgLS1naXQgYS9zcmMvaW5jbHVkZS9wYXJzZXIva3dsaXN0LmggYi9zcmMvaW5jbHVkZS9wYXJz ZXIva3dsaXN0LmgKaW5kZXggNWQ0ZmUyN2VmOTYuLmI5ZjAzMzY1NzUzIDEwMDY0NAotLS0gYS9z cmMvaW5jbHVkZS9wYXJzZXIva3dsaXN0LmgKKysrIGIvc3JjL2luY2x1ZGUvcGFyc2VyL2t3bGlz dC5oCkBAIC0zNDcsNiArMzQ3LDcgQEAgUEdfS0VZV09SRCgicGxhY2luZyIsIFBMQUNJTkcsIFJF U0VSVkVEX0tFWVdPUkQsIEJBUkVfTEFCRUwpCiBQR19LRVlXT1JEKCJwbGFuIiwgUExBTiwgVU5S RVNFUlZFRF9LRVlXT1JELCBCQVJFX0xBQkVMKQogUEdfS0VZV09SRCgicGxhbnMiLCBQTEFOUywg VU5SRVNFUlZFRF9LRVlXT1JELCBCQVJFX0xBQkVMKQogUEdfS0VZV09SRCgicG9saWN5IiwgUE9M SUNZLCBVTlJFU0VSVkVEX0tFWVdPUkQsIEJBUkVfTEFCRUwpCitQR19LRVlXT1JEKCJwb3J0aW9u IiwgUE9SVElPTiwgVU5SRVNFUlZFRF9LRVlXT1JELCBCQVJFX0xBQkVMKQogUEdfS0VZV09SRCgi cG9zaXRpb24iLCBQT1NJVElPTiwgQ09MX05BTUVfS0VZV09SRCwgQkFSRV9MQUJFTCkKIFBHX0tF WVdPUkQoInByZWNlZGluZyIsIFBSRUNFRElORywgVU5SRVNFUlZFRF9LRVlXT1JELCBCQVJFX0xB QkVMKQogUEdfS0VZV09SRCgicHJlY2lzaW9uIiwgUFJFQ0lTSU9OLCBDT0xfTkFNRV9LRVlXT1JE LCBBU19MQUJFTCkKZGlmZiAtLWdpdCBhL3NyYy9pbmNsdWRlL3BhcnNlci9wYXJzZV9ub2RlLmgg Yi9zcmMvaW5jbHVkZS9wYXJzZXIvcGFyc2Vfbm9kZS5oCmluZGV4IGY3ZDA3Yzg0NTQyLi4zZTQ1 N2Q5NjFmZSAxMDA2NDQKLS0tIGEvc3JjL2luY2x1ZGUvcGFyc2VyL3BhcnNlX25vZGUuaAorKysg Yi9zcmMvaW5jbHVkZS9wYXJzZXIvcGFyc2Vfbm9kZS5oCkBAIC01Niw2ICs1Niw3IEBAIHR5cGVk ZWYgZW51bSBQYXJzZUV4cHJLaW5kCiAJRVhQUl9LSU5EX1VQREFURV9TT1VSQ0UsCS8qIFVQREFU RSBhc3NpZ25tZW50IHNvdXJjZSBpdGVtICovCiAJRVhQUl9LSU5EX1VQREFURV9UQVJHRVQsCS8q IFVQREFURSBhc3NpZ25tZW50IHRhcmdldCBpdGVtICovCiAJRVhQUl9LSU5EX01FUkdFX1dIRU4s CQkvKiBNRVJHRSBXSEVOIFtOT1RdIE1BVENIRUQgY29uZGl0aW9uICovCisJRVhQUl9LSU5EX1VQ REFURV9QT1JUSU9OLAkvKiBVUERBVEUgRk9SIFBPUlRJT04gT0YgaXRlbSAqLwogCUVYUFJfS0lO RF9HUk9VUF9CWSwJCQkvKiBHUk9VUCBCWSAqLwogCUVYUFJfS0lORF9PUkRFUl9CWSwJCQkvKiBP UkRFUiBCWSAqLwogCUVYUFJfS0lORF9ESVNUSU5DVF9PTiwJCS8qIERJU1RJTkNUIE9OICovCmRp ZmYgLS1naXQgYS9zcmMvaW5jbHVkZS91dGlscy9sc3lzY2FjaGUuaCBiL3NyYy9pbmNsdWRlL3V0 aWxzL2xzeXNjYWNoZS5oCmluZGV4IDUwZmIxNDllOWFjLi41YjUwZWYyMzBhYiAxMDA2NDQKLS0t IGEvc3JjL2luY2x1ZGUvdXRpbHMvbHN5c2NhY2hlLmgKKysrIGIvc3JjL2luY2x1ZGUvdXRpbHMv bHN5c2NhY2hlLmgKQEAgLTE1MCw2ICsxNTAsNyBAQCBleHRlcm4gT2lkCWdldF9yZWxfcmVsYW0o T2lkIHJlbGlkKTsKIGV4dGVybiBPaWQJZ2V0X3RyYW5zZm9ybV9mcm9tc3FsKE9pZCB0eXBpZCwg T2lkIGxhbmdpZCwgTGlzdCAqdHJmdHlwZXMpOwogZXh0ZXJuIE9pZAlnZXRfdHJhbnNmb3JtX3Rv c3FsKE9pZCB0eXBpZCwgT2lkIGxhbmdpZCwgTGlzdCAqdHJmdHlwZXMpOwogZXh0ZXJuIGJvb2wg Z2V0X3R5cGlzZGVmaW5lZChPaWQgdHlwaWQpOworZXh0ZXJuIGJvb2wgZ2V0X3R5cG5hbWVfYW5k X25hbWVzcGFjZShPaWQgdHlwaWQsIGNoYXIgKip0eXBuYW1lLCBjaGFyICoqdHlwbmFtZXNwYWNl KTsKIGV4dGVybiBpbnQxNiBnZXRfdHlwbGVuKE9pZCB0eXBpZCk7CiBleHRlcm4gYm9vbCBnZXRf dHlwYnl2YWwoT2lkIHR5cGlkKTsKIGV4dGVybiB2b2lkIGdldF90eXBsZW5ieXZhbChPaWQgdHlw aWQsIGludDE2ICp0eXBsZW4sIGJvb2wgKnR5cGJ5dmFsKTsKZGlmZiAtLWdpdCBhL3NyYy90ZXN0 L3JlZ3Jlc3MvZXhwZWN0ZWQvZm9yX3BvcnRpb25fb2Yub3V0IGIvc3JjL3Rlc3QvcmVncmVzcy9l eHBlY3RlZC9mb3JfcG9ydGlvbl9vZi5vdXQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw MDAwMDAwMDAuLjkyODhiNDIyNGY3Ci0tLSAvZGV2L251bGwKKysrIGIvc3JjL3Rlc3QvcmVncmVz cy9leHBlY3RlZC9mb3JfcG9ydGlvbl9vZi5vdXQKQEAgLTAsMCArMSwxMjQ4IEBACistLSBUZXN0 cyBmb3IgVVBEQVRFL0RFTEVURSBGT1IgUE9SVElPTiBPRgorU0VUIGRhdGVzdHlsZSBUTyBJU08s IFlNRDsKKy0tIFdvcmtzIG9uIG5vbi1QSyBjb2x1bW5zCitDUkVBVEUgVEFCTEUgZm9yX3BvcnRp b25fb2ZfdGVzdCAoCisgIGlkIGludDRyYW5nZSwKKyAgdmFsaWRfYXQgZGF0ZXJhbmdlLAorICBu YW1lIHRleHQgTk9UIE5VTEwKKyk7CitJTlNFUlQgSU5UTyBmb3JfcG9ydGlvbl9vZl90ZXN0IChp ZCwgdmFsaWRfYXQsIG5hbWUpIFZBTFVFUworICAoJ1sxLDIpJywgJ1syMDE4LTAxLTAyLDIwMjAt MDEtMDEpJywgJ29uZScpOworVVBEQVRFIGZvcl9wb3J0aW9uX29mX3Rlc3QKKyAgRk9SIFBPUlRJ T04gT0YgdmFsaWRfYXQgRlJPTSAnMjAxOC0wMS0xNScgVE8gJzIwMTktMDEtMDEnCisgIFNFVCBu YW1lID0gJ29uZV4xJzsKK0RFTEVURSBGUk9NIGZvcl9wb3J0aW9uX29mX3Rlc3QKKyAgRk9SIFBP UlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAxOS0wMS0xNScgVE8gJzIwMTktMDEtMjAnOworLS0g V2l0aCBhIHRhYmxlIGFsaWFzIHdpdGggQVMKK1VQREFURSBmb3JfcG9ydGlvbl9vZl90ZXN0Cisg IEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMTktMDItMDEnIFRPICcyMDE5LTAyLTAz JyBBUyB0CisgIFNFVCBuYW1lID0gJ29uZV4yJzsKK0RFTEVURSBGUk9NIGZvcl9wb3J0aW9uX29m X3Rlc3QKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAxOS0wMi0wMycgVE8gJzIw MTktMDItMDQnIEFTIHQ7CistLSBXaXRoIGEgdGFibGUgYWxpYXMgd2l0aG91dCBBUworVVBEQVRF IGZvcl9wb3J0aW9uX29mX3Rlc3QKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAx OS0wMi0wNCcgVE8gJzIwMTktMDItMDUnIHQKKyAgU0VUIG5hbWUgPSAnb25lXjMnOworREVMRVRF IEZST00gZm9yX3BvcnRpb25fb2ZfdGVzdAorICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9N ICcyMDE5LTAyLTA1JyBUTyAnMjAxOS0wMi0wNicgdDsKKy0tIFVQREFURSB3aXRoIEZST00KK1VQ REFURSBmb3JfcG9ydGlvbl9vZl90ZXN0CisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00g JzIwMTktMDMtMDEnIHRvICcyMDE5LTAzLTAyJworICBTRVQgbmFtZSA9ICdvbmVeNCcKKyAgRlJP TSAoU0VMRUNUICdbMSwyKSc6OmludDRyYW5nZSkgQVMgdDIoaWQpCisgIFdIRVJFIGZvcl9wb3J0 aW9uX29mX3Rlc3QuaWQgPSB0Mi5pZDsKKy0tIERFTEVURSB3aXRoIFVTSU5HCitERUxFVEUgRlJP TSBmb3JfcG9ydGlvbl9vZl90ZXN0CisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIw MTktMDMtMDInIFRPICcyMDE5LTAzLTAzJworICBVU0lORyAoU0VMRUNUICdbMSwyKSc6OmludDRy YW5nZSkgQVMgdDIoaWQpCisgIFdIRVJFIGZvcl9wb3J0aW9uX29mX3Rlc3QuaWQgPSB0Mi5pZDsK K1NFTEVDVCAqIEZST00gZm9yX3BvcnRpb25fb2ZfdGVzdCBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7 CisgIGlkICAgfCAgICAgICAgdmFsaWRfYXQgICAgICAgICB8IG5hbWUgIAorLS0tLS0tLSstLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0KKyBbMSwyKSB8IFsyMDE4LTAxLTAyLDIwMTgt MDEtMTUpIHwgb25lCisgWzEsMikgfCBbMjAxOC0wMS0xNSwyMDE5LTAxLTAxKSB8IG9uZV4xCisg WzEsMikgfCBbMjAxOS0wMS0wMSwyMDE5LTAxLTE1KSB8IG9uZQorIFsxLDIpIHwgWzIwMTktMDEt MjAsMjAxOS0wMi0wMSkgfCBvbmUKKyBbMSwyKSB8IFsyMDE5LTAyLTAxLDIwMTktMDItMDMpIHwg b25lXjIKKyBbMSwyKSB8IFsyMDE5LTAyLTA0LDIwMTktMDItMDUpIHwgb25lXjMKKyBbMSwyKSB8 IFsyMDE5LTAyLTA2LDIwMTktMDMtMDEpIHwgb25lCisgWzEsMikgfCBbMjAxOS0wMy0wMSwyMDE5 LTAzLTAyKSB8IG9uZV40CisgWzEsMikgfCBbMjAxOS0wMy0wMywyMDIwLTAxLTAxKSB8IG9uZQor KDkgcm93cykKKworLS0gV29ya3Mgb24gbW9yZSB0aGFuIG9uZSByYW5nZQorRFJPUCBUQUJMRSBm b3JfcG9ydGlvbl9vZl90ZXN0OworQ1JFQVRFIFRBQkxFIGZvcl9wb3J0aW9uX29mX3Rlc3QgKAor ICBpZCBpbnQ0cmFuZ2UsCisgIHZhbGlkMV9hdCBkYXRlcmFuZ2UsCisgIHZhbGlkMl9hdCBkYXRl cmFuZ2UsCisgIG5hbWUgdGV4dCBOT1QgTlVMTAorKTsKK0lOU0VSVCBJTlRPIGZvcl9wb3J0aW9u X29mX3Rlc3QgKGlkLCB2YWxpZDFfYXQsIHZhbGlkMl9hdCwgbmFtZSkgVkFMVUVTCisgICgnWzEs MiknLCAnWzIwMTgtMDEtMDIsMjAxOC0wMi0wMyknLCAnWzIwMTUtMDEtMDEsMjAyNS0wMS0wMSkn LCAnb25lJyk7CitVUERBVEUgZm9yX3BvcnRpb25fb2ZfdGVzdAorICBGT1IgUE9SVElPTiBPRiB2 YWxpZDFfYXQgRlJPTSAnMjAxOC0wMS0xNScgVE8gTlVMTAorICBTRVQgbmFtZSA9ICdmb28nOwor ICBTRUxFQ1QgKiBGUk9NIGZvcl9wb3J0aW9uX29mX3Rlc3QgT1JERVIgQlkgaWQsIHZhbGlkMV9h dCwgdmFsaWQyX2F0OworICBpZCAgIHwgICAgICAgIHZhbGlkMV9hdCAgICAgICAgfCAgICAgICAg dmFsaWQyX2F0ICAgICAgICB8IG5hbWUgCistLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0KKyBbMSwyKSB8IFsyMDE4LTAxLTAy LDIwMTgtMDEtMTUpIHwgWzIwMTUtMDEtMDEsMjAyNS0wMS0wMSkgfCBvbmUKKyBbMSwyKSB8IFsy MDE4LTAxLTE1LDIwMTgtMDItMDMpIHwgWzIwMTUtMDEtMDEsMjAyNS0wMS0wMSkgfCBmb28KKygy IHJvd3MpCisKK1VQREFURSBmb3JfcG9ydGlvbl9vZl90ZXN0CisgIEZPUiBQT1JUSU9OIE9GIHZh bGlkMl9hdCBGUk9NICcyMDE4LTAxLTE1JyBUTyBOVUxMCisgIFNFVCBuYW1lID0gJ2Jhcic7Cisg IFNFTEVDVCAqIEZST00gZm9yX3BvcnRpb25fb2ZfdGVzdCBPUkRFUiBCWSBpZCwgdmFsaWQxX2F0 LCB2YWxpZDJfYXQ7CisgIGlkICAgfCAgICAgICAgdmFsaWQxX2F0ICAgICAgICB8ICAgICAgICB2 YWxpZDJfYXQgICAgICAgIHwgbmFtZSAKKy0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLQorIFsxLDIpIHwgWzIwMTgtMDEtMDIs MjAxOC0wMS0xNSkgfCBbMjAxNS0wMS0wMSwyMDE4LTAxLTE1KSB8IG9uZQorIFsxLDIpIHwgWzIw MTgtMDEtMDIsMjAxOC0wMS0xNSkgfCBbMjAxOC0wMS0xNSwyMDI1LTAxLTAxKSB8IGJhcgorIFsx LDIpIHwgWzIwMTgtMDEtMTUsMjAxOC0wMi0wMykgfCBbMjAxNS0wMS0wMSwyMDE4LTAxLTE1KSB8 IGZvbworIFsxLDIpIHwgWzIwMTgtMDEtMTUsMjAxOC0wMi0wMykgfCBbMjAxOC0wMS0xNSwyMDI1 LTAxLTAxKSB8IGJhcgorKDQgcm93cykKKworREVMRVRFIEZST00gZm9yX3BvcnRpb25fb2ZfdGVz dAorICBGT1IgUE9SVElPTiBPRiB2YWxpZDFfYXQgRlJPTSAnMjAxOC0wMS0yMCcgVE8gTlVMTDsK KyAgU0VMRUNUICogRlJPTSBmb3JfcG9ydGlvbl9vZl90ZXN0IE9SREVSIEJZIGlkLCB2YWxpZDFf YXQsIHZhbGlkMl9hdDsKKyAgaWQgICB8ICAgICAgICB2YWxpZDFfYXQgICAgICAgIHwgICAgICAg IHZhbGlkMl9hdCAgICAgICAgfCBuYW1lIAorLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tCisgWzEsMikgfCBbMjAxOC0wMS0w MiwyMDE4LTAxLTE1KSB8IFsyMDE1LTAxLTAxLDIwMTgtMDEtMTUpIHwgb25lCisgWzEsMikgfCBb MjAxOC0wMS0wMiwyMDE4LTAxLTE1KSB8IFsyMDE4LTAxLTE1LDIwMjUtMDEtMDEpIHwgYmFyCisg WzEsMikgfCBbMjAxOC0wMS0xNSwyMDE4LTAxLTIwKSB8IFsyMDE1LTAxLTAxLDIwMTgtMDEtMTUp IHwgZm9vCisgWzEsMikgfCBbMjAxOC0wMS0xNSwyMDE4LTAxLTIwKSB8IFsyMDE4LTAxLTE1LDIw MjUtMDEtMDEpIHwgYmFyCisoNCByb3dzKQorCitERUxFVEUgRlJPTSBmb3JfcG9ydGlvbl9vZl90 ZXN0CisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkMl9hdCBGUk9NICcyMDE4LTAxLTIwJyBUTyBOVUxM OworICBTRUxFQ1QgKiBGUk9NIGZvcl9wb3J0aW9uX29mX3Rlc3QgT1JERVIgQlkgaWQsIHZhbGlk MV9hdCwgdmFsaWQyX2F0OworICBpZCAgIHwgICAgICAgIHZhbGlkMV9hdCAgICAgICAgfCAgICAg ICAgdmFsaWQyX2F0ICAgICAgICB8IG5hbWUgCistLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0KKyBbMSwyKSB8IFsyMDE4LTAx LTAyLDIwMTgtMDEtMTUpIHwgWzIwMTUtMDEtMDEsMjAxOC0wMS0xNSkgfCBvbmUKKyBbMSwyKSB8 IFsyMDE4LTAxLTAyLDIwMTgtMDEtMTUpIHwgWzIwMTgtMDEtMTUsMjAxOC0wMS0yMCkgfCBiYXIK KyBbMSwyKSB8IFsyMDE4LTAxLTE1LDIwMTgtMDEtMjApIHwgWzIwMTUtMDEtMDEsMjAxOC0wMS0x NSkgfCBmb28KKyBbMSwyKSB8IFsyMDE4LTAxLTE1LDIwMTgtMDEtMjApIHwgWzIwMTgtMDEtMTUs MjAxOC0wMS0yMCkgfCBiYXIKKyg0IHJvd3MpCisKKy0tIFRlc3Qgd2l0aCBOVUxMcyBpbiB0aGUg c2NhbGFyL3JhbmdlIGtleSBjb2x1bW5zLgorLS0gVGhpcyB3b24ndCBoYXBwZW4gaWYgdGhlcmUg aXMgYSBQUklNQVJZIEtFWSBvciBVTklRVUUgY29uc3RyYWludAorLS0gYnV0IEZPUiBQT1JUSU9O IE9GIHNob3VsZG4ndCByZXF1aXJlIHRoYXQuCitEUk9QIFRBQkxFIGZvcl9wb3J0aW9uX29mX3Rl c3Q7CitDUkVBVEUgVU5MT0dHRUQgVEFCTEUgZm9yX3BvcnRpb25fb2ZfdGVzdCAoCisgIGlkIGlu dDRyYW5nZSwKKyAgdmFsaWRfYXQgZGF0ZXJhbmdlLAorICBuYW1lIHRleHQKKyk7CitJTlNFUlQg SU5UTyBmb3JfcG9ydGlvbl9vZl90ZXN0IChpZCwgdmFsaWRfYXQsIG5hbWUpIFZBTFVFUworICAo J1sxLDIpJywgTlVMTCwgJzEgbnVsbCcpLAorICAoJ1sxLDIpJywgJygsKScsICcxIHVuYm91bmRl ZCcpLAorICAoJ1sxLDIpJywgJ2VtcHR5JywgJzEgZW1wdHknKSwKKyAgKE5VTEwsIE5VTEwsIE5V TEwpLAorICAoTlVMTCwgZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMTktMDEtMDEnKSwgJ251 bGwga2V5Jyk7CitVUERBVEUgZm9yX3BvcnRpb25fb2ZfdGVzdAorICBGT1IgUE9SVElPTiBPRiB2 YWxpZF9hdCBGUk9NIE5VTEwgVE8gTlVMTAorICBTRVQgbmFtZSA9ICdOVUxMIHRvIE5VTEwnOwor U0VMRUNUICogRlJPTSBmb3JfcG9ydGlvbl9vZl90ZXN0IE9SREVSIEJZIGlkLCB2YWxpZF9hdDsK KyAgaWQgICB8ICAgICAgICB2YWxpZF9hdCAgICAgICAgIHwgICAgIG5hbWUgICAgIAorLS0tLS0t LSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tCisgWzEsMikgfCBlbXB0 eSAgICAgICAgICAgICAgICAgICB8IDEgZW1wdHkKKyBbMSwyKSB8ICgsKSAgICAgICAgICAgICAg ICAgICAgIHwgTlVMTCB0byBOVUxMCisgWzEsMikgfCAgICAgICAgICAgICAgICAgICAgICAgICB8 IDEgbnVsbAorICAgICAgIHwgWzIwMTgtMDEtMDEsMjAxOS0wMS0wMSkgfCBOVUxMIHRvIE5VTEwK KyAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgIHwgCisoNSByb3dzKQorCitEUk9QIFRB QkxFIGZvcl9wb3J0aW9uX29mX3Rlc3Q7CistLQorLS0gVVBEQVRFIHRlc3RzCistLQorQ1JFQVRF IFRBQkxFIGZvcl9wb3J0aW9uX29mX3Rlc3QgKAorICBpZCBpbnQ0cmFuZ2UgTk9UIE5VTEwsCisg IHZhbGlkX2F0IGRhdGVyYW5nZSBOT1QgTlVMTCwKKyAgbmFtZSB0ZXh0IE5PVCBOVUxMLAorICBD T05TVFJBSU5UIGZvcl9wb3J0aW9uX29mX3BrIFBSSU1BUlkgS0VZIChpZCwgdmFsaWRfYXQgV0lU SE9VVCBPVkVSTEFQUykKKyk7CitJTlNFUlQgSU5UTyBmb3JfcG9ydGlvbl9vZl90ZXN0IChpZCwg dmFsaWRfYXQsIG5hbWUpIFZBTFVFUworICAoJ1sxLDIpJywgJ1syMDE4LTAxLTAyLDIwMTgtMDIt MDMpJywgJ29uZScpLAorICAoJ1sxLDIpJywgJ1syMDE4LTAyLTAzLDIwMTgtMDMtMDMpJywgJ29u ZScpLAorICAoJ1sxLDIpJywgJ1syMDE4LTAzLTAzLDIwMTgtMDQtMDQpJywgJ29uZScpLAorICAo J1syLDMpJywgJ1syMDE4LTAxLTAxLDIwMTgtMDEtMDUpJywgJ3R3bycpLAorICAoJ1szLDQpJywg J1syMDE4LTAxLTAxLCknLCAndGhyZWUnKSwKKyAgKCdbNCw1KScsICcoLDIwMTgtMDQtMDEpJywg J2ZvdXInKSwKKyAgKCdbNSw2KScsICcoLCknLCAnZml2ZScpCisgIDsKK1xzZXQgUVVJRVQgZmFs c2UKKy0tIFVwZGF0aW5nIHdpdGggYSBtaXNzaW5nIGNvbHVtbiBmYWlscworVVBEQVRFIGZvcl9w b3J0aW9uX29mX3Rlc3QKKyAgRk9SIFBPUlRJT04gT0YgaW52YWxpZF9hdCBGUk9NICcyMDE4LTA2 LTAxJyBUTyBOVUxMCisgIFNFVCBuYW1lID0gJ2ZvbycKKyAgV0hFUkUgaWQgPSAnWzUsNiknOwor RVJST1I6ICBjb2x1bW4gb3IgcGVyaW9kICJpbnZhbGlkX2F0IiBvZiByZWxhdGlvbiAiZm9yX3Bv cnRpb25fb2ZfdGVzdCIgZG9lcyBub3QgZXhpc3QKK0xJTkUgMjogICBGT1IgUE9SVElPTiBPRiBp bnZhbGlkX2F0IEZST00gJzIwMTgtMDYtMDEnIFRPIE5VTEwKKyAgICAgICAgICAgICAgICAgICAg ICAgICBeCistLSBVcGRhdGluZyB0aGUgcmFuZ2UgZmFpbHMKK1VQREFURSBmb3JfcG9ydGlvbl9v Zl90ZXN0CisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMTgtMDYtMDEnIFRPIE5V TEwKKyAgU0VUIHZhbGlkX2F0ID0gJ1sxOTkwLTAxLTAxLDE5OTktMDEtMDEpJworICBXSEVSRSBp ZCA9ICdbNSw2KSc7CitFUlJPUjogIGNhbid0IGRpcmVjdGx5IGFzc2lnbiB0byAidmFsaWRfYXQi IGluIGEgRk9SIFBPUlRJT04gT0YgdXBkYXRlCitMSU5FIDM6ICAgU0VUIHZhbGlkX2F0ID0gJ1sx OTkwLTAxLTAxLDE5OTktMDEtMDEpJworICAgICAgICAgICAgICBeCistLSBUaGUgd3JvbmcgdHlw ZSBmYWlscworVVBEQVRFIGZvcl9wb3J0aW9uX29mX3Rlc3QKKyAgRk9SIFBPUlRJT04gT0YgdmFs aWRfYXQgRlJPTSAxIFRPIDQKKyAgU0VUIG5hbWUgPSAnbm9wZScKKyAgV0hFUkUgaWQgPSAnWzMs NCknOworRVJST1I6ICBmdW5jdGlvbiBwZ19jYXRhbG9nLmRhdGVyYW5nZShpbnRlZ2VyLCBpbnRl Z2VyKSBkb2VzIG5vdCBleGlzdAorTElORSAyOiAgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZS T00gMSBUTyA0CisgICAgICAgICAgICAgICAgICAgICAgICAgXgorREVUQUlMOiAgTm8gZnVuY3Rp b24gb2YgdGhhdCBuYW1lIGFjY2VwdHMgdGhlIGdpdmVuIGFyZ3VtZW50IHR5cGVzLgorSElOVDog IFlvdSBtaWdodCBuZWVkIHRvIGFkZCBleHBsaWNpdCB0eXBlIGNhc3RzLgorLS0gVXBkYXRpbmcg d2l0aCB0aW1lc3RhbXBzIHJldmVyc2VkIGZhaWxzCitVUERBVEUgZm9yX3BvcnRpb25fb2ZfdGVz dAorICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDE4LTA2LTAxJyBUTyAnMjAxOC0w MS0wMScKKyAgU0VUIG5hbWUgPSAndGhyZWVeMScKKyAgV0hFUkUgaWQgPSAnWzMsNCknOworRVJS T1I6ICByYW5nZSBsb3dlciBib3VuZCBtdXN0IGJlIGxlc3MgdGhhbiBvciBlcXVhbCB0byByYW5n ZSB1cHBlciBib3VuZAorLS0gVXBkYXRpbmcgd2l0aCBhIHN1YnF1ZXJ5IGZhaWxzCitVUERBVEUg Zm9yX3BvcnRpb25fb2ZfdGVzdAorICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NIChTRUxF Q1QgJzIwMTgtMDEtMDEnKSBUTyAnMjAxOC0wNi0wMScKKyAgU0VUIG5hbWUgPSAnbm9wZScKKyAg V0hFUkUgaWQgPSAnWzMsNCknOworRVJST1I6ICBjYW5ub3QgdXNlIHN1YnF1ZXJ5IGluIEZPUiBQ T1JUSU9OIE9GIGV4cHJlc3Npb24KK0xJTkUgMjogICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBG Uk9NIChTRUxFQ1QgJzIwMTgtMDEtMDEnKSBUTyAnMjAxLi4uCisgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBeCistLSBVcGRhdGluZyB3aXRoIGEgY29sdW1uIGZhaWxzCitV UERBVEUgZm9yX3BvcnRpb25fb2ZfdGVzdAorICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9N IGxvd2VyKHZhbGlkX2F0KSBUTyBOVUxMCisgIFNFVCBuYW1lID0gJ25vcGUnCisgIFdIRVJFIGlk ID0gJ1szLDQpJzsKK0VSUk9SOiAgY2Fubm90IHVzZSBjb2x1bW4gcmVmZXJlbmNlIGluIEZPUiBQ T1JUSU9OIE9GIGV4cHJlc3Npb24KK0xJTkUgMjogICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBG Uk9NIGxvd2VyKHZhbGlkX2F0KSBUTyBOVUxMCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBeCistLSBVcGRhdGluZyB3aXRoIHRpbWVzdGFtcHMgZXF1YWwgZG9l cyBub3RoaW5nCitVUERBVEUgZm9yX3BvcnRpb25fb2ZfdGVzdAorICBGT1IgUE9SVElPTiBPRiB2 YWxpZF9hdCBGUk9NICcyMDE4LTA0LTAxJyBUTyAnMjAxOC0wNC0wMScKKyAgU0VUIG5hbWUgPSAn dGhyZWVeMCcKKyAgV0hFUkUgaWQgPSAnWzMsNCknOworVVBEQVRFIDAKKy0tIFVwZGF0aW5nIGEg ZmluaXRlL29wZW4gcG9ydGlvbiB3aXRoIGEgZmluaXRlL29wZW4gdGFyZ2V0CitVUERBVEUgZm9y X3BvcnRpb25fb2ZfdGVzdAorICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDE4LTA2 LTAxJyBUTyBOVUxMCisgIFNFVCBuYW1lID0gJ3RocmVlXjEnCisgIFdIRVJFIGlkID0gJ1szLDQp JzsKK1VQREFURSAyCistLSBVcGRhdGluZyBhIGZpbml0ZS9vcGVuIHBvcnRpb24gd2l0aCBhbiBv cGVuL2Zpbml0ZSB0YXJnZXQKK1VQREFURSBmb3JfcG9ydGlvbl9vZl90ZXN0CisgIEZPUiBQT1JU SU9OIE9GIHZhbGlkX2F0IEZST00gTlVMTCBUTyAnMjAxOC0wMy0wMScKKyAgU0VUIG5hbWUgPSAn dGhyZWVeMicKKyAgV0hFUkUgaWQgPSAnWzMsNCknOworVVBEQVRFIDIKKy0tIFVwZGF0aW5nIGFu IG9wZW4vZmluaXRlIHBvcnRpb24gd2l0aCBhbiBvcGVuL2Zpbml0ZSB0YXJnZXQKK1VQREFURSBm b3JfcG9ydGlvbl9vZl90ZXN0CisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gTlVMTCBU TyAnMjAxOC0wMi0wMScKKyAgU0VUIG5hbWUgPSAnZm91cl4xJworICBXSEVSRSBpZCA9ICdbNCw1 KSc7CitVUERBVEUgMgorLS0gVXBkYXRpbmcgYW4gb3Blbi9maW5pdGUgcG9ydGlvbiB3aXRoIGEg ZmluaXRlL29wZW4gdGFyZ2V0CitVUERBVEUgZm9yX3BvcnRpb25fb2ZfdGVzdAorICBGT1IgUE9S VElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDE3LTAxLTAxJyBUTyBOVUxMCisgIFNFVCBuYW1lID0g J2ZvdXJeMicKKyAgV0hFUkUgaWQgPSAnWzQsNSknOworVVBEQVRFIDMKKy0tIFVwZGF0aW5nIGEg ZmluaXRlL2Zpbml0ZSBwb3J0aW9uIHdpdGggYW4gZXhhY3QgZml0CitVUERBVEUgZm9yX3BvcnRp b25fb2ZfdGVzdAorICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDE3LTAxLTAxJyBU TyAnMjAxOC0wMi0wMScKKyAgU0VUIG5hbWUgPSAnZm91cl4zJworICBXSEVSRSBpZCA9ICdbNCw1 KSc7CitVUERBVEUgMQorLS0gVXBkYXRpbmcgYW4gZW5jbG9zZWQgc3BhbgorVVBEQVRFIGZvcl9w b3J0aW9uX29mX3Rlc3QKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSBOVUxMIFRPIE5V TEwKKyAgU0VUIG5hbWUgPSAndHdvXjInCisgIFdIRVJFIGlkID0gJ1syLDMpJzsKK1VQREFURSAx CistLSBVcGRhdGluZyBhbiBvcGVuL29wZW4gcG9ydGlvbiB3aXRoIGEgZmluaXRlL2Zpbml0ZSB0 YXJnZXQKK1VQREFURSBmb3JfcG9ydGlvbl9vZl90ZXN0CisgIEZPUiBQT1JUSU9OIE9GIHZhbGlk X2F0IEZST00gJzIwMTgtMDEtMDEnIFRPICcyMDE5LTAxLTAxJworICBTRVQgbmFtZSA9ICdmaXZl XjEnCisgIFdIRVJFIGlkID0gJ1s1LDYpJzsKK1VQREFURSAzCistLSBVcGRhdGluZyBhbiBlbmNs b3NlZCBzcGFuIHdpdGggc2VwYXJhdGUgcHJvdHJ1ZGluZyBzcGFucworVVBEQVRFIGZvcl9wb3J0 aW9uX29mX3Rlc3QKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAxNy0wMS0wMScg VE8gJzIwMjAtMDEtMDEnCisgIFNFVCBuYW1lID0gJ2ZpdmVeMicKKyAgV0hFUkUgaWQgPSAnWzUs NiknOworVVBEQVRFIDUKKy0tIFVwZGF0aW5nIG11bHRpcGxlIGVuY2xvc2VkIHNwYW5zCitVUERB VEUgZm9yX3BvcnRpb25fb2ZfdGVzdAorICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NIE5V TEwgVE8gTlVMTAorICBTRVQgbmFtZSA9ICdvbmVeMicKKyAgV0hFUkUgaWQgPSAnWzEsMiknOwor VVBEQVRFIDMKKy0tIFVwZGF0aW5nIHdpdGggYSBkaXJlY3QgdGFyZ2V0CitVUERBVEUgZm9yX3Bv cnRpb25fb2ZfdGVzdAorICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCAoZGF0ZXJhbmdlKCcyMDE4 LTAzLTEwJywgJzIwMTgtMDMtMTcnKSkKKyAgU0VUIG5hbWUgPSAnb25lXjMnCisgIFdIRVJFIGlk ID0gJ1sxLDIpJzsKK1VQREFURSAzCistLSBVcGRhdGluZyB0aGUgbm9uLXJhbmdlIHBhcnQgb2Yg dGhlIFBLOgorVVBEQVRFIGZvcl9wb3J0aW9uX29mX3Rlc3QKKyAgRk9SIFBPUlRJT04gT0YgdmFs aWRfYXQgRlJPTSAnMjAxOC0wMi0xNScgVE8gTlVMTAorICBTRVQgaWQgPSAnWzYsNyknCisgIFdI RVJFIGlkID0gJ1sxLDIpJzsKK1VQREFURSA1CistLSBVUERBVEUgd2l0aCBubyBXSEVSRSBjbGF1 c2UKK1VQREFURSBmb3JfcG9ydGlvbl9vZl90ZXN0CisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0 IEZST00gJzIwMzAtMDEtMDEnIFRPIE5VTEwKKyAgU0VUIG5hbWUgPSBuYW1lIHx8ICcqJzsKK1VQ REFURSA0CitTRUxFQ1QgKiBGUk9NIGZvcl9wb3J0aW9uX29mX3Rlc3QgT1JERVIgQlkgaWQsIHZh bGlkX2F0OworICBpZCAgIHwgICAgICAgIHZhbGlkX2F0ICAgICAgICAgfCAgIG5hbWUgICAKKy0t LS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tCisgWzEsMikgfCBbMjAx OC0wMS0wMiwyMDE4LTAyLTAzKSB8IG9uZV4yCisgWzEsMikgfCBbMjAxOC0wMi0wMywyMDE4LTAy LTE1KSB8IG9uZV4yCisgWzIsMykgfCBbMjAxOC0wMS0wMSwyMDE4LTAxLTA1KSB8IHR3b14yCisg WzMsNCkgfCBbMjAxOC0wMS0wMSwyMDE4LTAzLTAxKSB8IHRocmVlXjIKKyBbMyw0KSB8IFsyMDE4 LTAzLTAxLDIwMTgtMDYtMDEpIHwgdGhyZWUKKyBbMyw0KSB8IFsyMDE4LTA2LTAxLDIwMzAtMDEt MDEpIHwgdGhyZWVeMQorIFszLDQpIHwgWzIwMzAtMDEtMDEsKSAgICAgICAgICAgfCB0aHJlZV4x KgorIFs0LDUpIHwgKCwyMDE3LTAxLTAxKSAgICAgICAgICAgfCBmb3VyXjEKKyBbNCw1KSB8IFsy MDE3LTAxLTAxLDIwMTgtMDItMDEpIHwgZm91cl4zCisgWzQsNSkgfCBbMjAxOC0wMi0wMSwyMDE4 LTA0LTAxKSB8IGZvdXJeMgorIFs1LDYpIHwgKCwyMDE3LTAxLTAxKSAgICAgICAgICAgfCBmaXZl CisgWzUsNikgfCBbMjAxNy0wMS0wMSwyMDE4LTAxLTAxKSB8IGZpdmVeMgorIFs1LDYpIHwgWzIw MTgtMDEtMDEsMjAxOS0wMS0wMSkgfCBmaXZlXjIKKyBbNSw2KSB8IFsyMDE5LTAxLTAxLDIwMjAt MDEtMDEpIHwgZml2ZV4yCisgWzUsNikgfCBbMjAyMC0wMS0wMSwyMDMwLTAxLTAxKSB8IGZpdmUK KyBbNSw2KSB8IFsyMDMwLTAxLTAxLCkgICAgICAgICAgIHwgZml2ZSoKKyBbNiw3KSB8IFsyMDE4 LTAyLTE1LDIwMTgtMDMtMDMpIHwgb25lXjIKKyBbNiw3KSB8IFsyMDE4LTAzLTAzLDIwMTgtMDMt MTApIHwgb25lXjIKKyBbNiw3KSB8IFsyMDE4LTAzLTEwLDIwMTgtMDMtMTcpIHwgb25lXjMKKyBb Niw3KSB8IFsyMDE4LTAzLTE3LDIwMTgtMDQtMDQpIHwgb25lXjIKKygyMCByb3dzKQorCitcc2V0 IFFVSUVUIHRydWUKKy0tIFVwZGF0aW5nIHdpdGggYSBzaGlmdC9yZWR1Y2UgY29uZmxpY3QKKy0t IChyZXF1aXJlcyBhIHRzcmFuZ2UgY29sdW1uKQorQ1JFQVRFIFVOTE9HR0VEIFRBQkxFIGZvcl9w b3J0aW9uX29mX3Rlc3QyICgKKyAgaWQgaW50NHJhbmdlLAorICB2YWxpZF9hdCB0c3JhbmdlLAor ICBuYW1lIHRleHQKKyk7CitJTlNFUlQgSU5UTyBmb3JfcG9ydGlvbl9vZl90ZXN0MiAoaWQsIHZh bGlkX2F0LCBuYW1lKSBWQUxVRVMKKyAgKCdbMSwyKScsICdbMjAwMC0wMS0wMSwyMDIwLTAxLTAx KScsICdvbmUnKTsKKy0tIHVwZGF0ZXMgWzIwMTEtMDMtMDEgMDE6MDI6MDAsIDIwMTItMDEtMDEp IChub3RlIDIgbWludXRlcykKK1VQREFURSBmb3JfcG9ydGlvbl9vZl90ZXN0MgorICBGT1IgUE9S VElPTiBPRiB2YWxpZF9hdAorICAgIEZST00gJzIwMTEtMDMtMDEnOjp0aW1lc3RhbXAgKyBJTlRF UlZBTCAnMTowMjowMycgSE9VUiBUTyBNSU5VVEUKKyAgICBUTyAnMjAxMi0wMS0wMScKKyAgU0VU IG5hbWUgPSAnb25lXjEnCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKy0tIFRPIGlzIHVzZWQgZm9y IHRoZSBib3VuZCBidXQgbm90IHRoZSBJTlRFUlZBTDoKKy0tIHN5bnRheCBlcnJvcgorVVBEQVRF IGZvcl9wb3J0aW9uX29mX3Rlc3QyCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0CisgICAgRlJP TSAnMjAxMy0wMy0wMSc6OnRpbWVzdGFtcCArIElOVEVSVkFMICcxOjAyOjAzJyBIT1VSCisgICAg VE8gJzIwMTQtMDEtMDEnCisgIFNFVCBuYW1lID0gJ29uZV4yJworICBXSEVSRSBpZCA9ICdbMSwy KSc7CitFUlJPUjogIHN5bnRheCBlcnJvciBhdCBvciBuZWFyICInMjAxNC0wMS0wMSciCitMSU5F IDQ6ICAgICBUTyAnMjAxNC0wMS0wMScKKyAgICAgICAgICAgICAgIF4KKy0tIGFkZGluZyBwYXJl bnMgZml4ZXMgaXQKKy0tIHVwZGF0ZXMgWzIwMTUtMDMtMDEgMDE6MDA6MDAsIDIwMTYtMDEtMDEp IChubyBtaW51dGVzKQorVVBEQVRFIGZvcl9wb3J0aW9uX29mX3Rlc3QyCisgIEZPUiBQT1JUSU9O IE9GIHZhbGlkX2F0CisgICAgRlJPTSAoJzIwMTUtMDMtMDEnOjp0aW1lc3RhbXAgKyBJTlRFUlZB TCAnMTowMjowMycgSE9VUikKKyAgICBUTyAnMjAxNi0wMS0wMScKKyAgU0VUIG5hbWUgPSAnb25l XjMnCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKK1NFTEVDVCAqIEZST00gZm9yX3BvcnRpb25fb2Zf dGVzdDIgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworICBpZCAgIHwgICAgICAgICAgICAgICAgICAg dmFsaWRfYXQgICAgICAgICAgICAgICAgICAgIHwgbmFtZSAgCistLS0tLS0tKy0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0KKyBbMSwyKSB8IFsi MjAwMC0wMS0wMSAwMDowMDowMCIsIjIwMTEtMDMtMDEgMDE6MDI6MDAiKSB8IG9uZQorIFsxLDIp IHwgWyIyMDExLTAzLTAxIDAxOjAyOjAwIiwiMjAxMi0wMS0wMSAwMDowMDowMCIpIHwgb25lXjEK KyBbMSwyKSB8IFsiMjAxMi0wMS0wMSAwMDowMDowMCIsIjIwMTUtMDMtMDEgMDE6MDA6MDAiKSB8 IG9uZQorIFsxLDIpIHwgWyIyMDE1LTAzLTAxIDAxOjAwOjAwIiwiMjAxNi0wMS0wMSAwMDowMDow MCIpIHwgb25lXjMKKyBbMSwyKSB8IFsiMjAxNi0wMS0wMSAwMDowMDowMCIsIjIwMjAtMDEtMDEg MDA6MDA6MDAiKSB8IG9uZQorKDUgcm93cykKKworRFJPUCBUQUJMRSBmb3JfcG9ydGlvbl9vZl90 ZXN0MjsKKy0tIFVQREFURSBGT1IgUE9SVElPTiBPRiBpbiBhIENURToKKy0tIFZpc2libGUgdG8g U0VMRUNUOgorSU5TRVJUIElOVE8gZm9yX3BvcnRpb25fb2ZfdGVzdCAoaWQsIHZhbGlkX2F0LCBu YW1lKSBWQUxVRVMKKyAgKCdbMTAsMTEpJywgJ1syMDE4LTAxLTAxLDIwMjAtMDEtMDEpJywgJ3Rl bicpOworV0lUSCB1cGRhdGVfYXByIEFTICgKKyAgVVBEQVRFIGZvcl9wb3J0aW9uX29mX3Rlc3QK KyAgICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDE4LTA0LTAxJyBUTyAnMjAxOC0w NS0wMScKKyAgICBTRVQgbmFtZSA9ICdBcHIgMjAxOCcKKyAgICBXSEVSRSBpZCA9ICdbMTAsMTEp JworICAgIFJFVFVSTklORyBpZCwgdmFsaWRfYXQsIG5hbWUKKykKK1NFTEVDVCAqCisgIEZST00g Zm9yX3BvcnRpb25fb2ZfdGVzdCBBUyB0LCB1cGRhdGVfYXByCisgIFdIRVJFIHQuaWQgPSB1cGRh dGVfYXByLmlkOworICAgaWQgICAgfCAgICAgICAgdmFsaWRfYXQgICAgICAgICB8IG5hbWUgfCAg IGlkICAgIHwgICAgICAgIHZhbGlkX2F0ICAgICAgICAgfCAgIG5hbWUgICAKKy0tLS0tLS0tLSst LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLSstLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLSstLS0tLS0tLS0tCisgWzEwLDExKSB8IFsyMDE4LTAxLTAxLDIwMjAtMDEtMDEp IHwgdGVuICB8IFsxMCwxMSkgfCBbMjAxOC0wNC0wMSwyMDE4LTA1LTAxKSB8IEFwciAyMDE4Ciso MSByb3cpCisKK1NFTEVDVCAqIEZST00gZm9yX3BvcnRpb25fb2ZfdGVzdCBXSEVSRSBpZCA9ICdb MTAsMTEpJzsKKyAgIGlkICAgIHwgICAgICAgIHZhbGlkX2F0ICAgICAgICAgfCAgIG5hbWUgICAK Ky0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0KKyBbMTAsMTEp IHwgWzIwMTgtMDQtMDEsMjAxOC0wNS0wMSkgfCBBcHIgMjAxOAorIFsxMCwxMSkgfCBbMjAxOC0w MS0wMSwyMDE4LTA0LTAxKSB8IHRlbgorIFsxMCwxMSkgfCBbMjAxOC0wNS0wMSwyMDIwLTAxLTAx KSB8IHRlbgorKDMgcm93cykKKworLS0gTm90IHZpc2libGUgdG8gVVBEQVRFOgorLS0gVHVwbGVz IHVwZGF0ZWQvaW5zZXJ0ZWQgd2l0aGluIHRoZSBDVEUgYXJlIG5vdCB2aXNpYmxlIHRvIHRoZSBt YWluIHF1ZXJ5IHlldCwKKy0tIGJ1dCBuZWl0aGVyIGFyZSBvbGQgdHVwbGVzIHRoZSBDVEUgY2hh bmdlZDoKK0lOU0VSVCBJTlRPIGZvcl9wb3J0aW9uX29mX3Rlc3QgKGlkLCB2YWxpZF9hdCwgbmFt ZSkgVkFMVUVTCisgICgnWzExLDEyKScsICdbMjAxOC0wMS0wMSwyMDIwLTAxLTAxKScsICdlbGV2 ZW4nKTsKK1dJVEggdXBkYXRlX2FwciBBUyAoCisgIFVQREFURSBmb3JfcG9ydGlvbl9vZl90ZXN0 CisgICAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAxOC0wNC0wMScgVE8gJzIwMTgt MDUtMDEnCisgICAgU0VUIG5hbWUgPSAnQXByIDIwMTgnCisgICAgV0hFUkUgaWQgPSAnWzExLDEy KScKKyAgICBSRVRVUk5JTkcgaWQsIHZhbGlkX2F0LCBuYW1lCispCitVUERBVEUgZm9yX3BvcnRp b25fb2ZfdGVzdAorICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDE4LTA1LTAxJyBU TyAnMjAxOC0wNi0wMScKKyAgQVMgdAorICBTRVQgbmFtZSA9ICdNYXkgMjAxOCcKKyAgRlJPTSB1 cGRhdGVfYXByIEFTIGoKKyAgV0hFUkUgdC5pZCA9IGouaWQ7CitTRUxFQ1QgKiBGUk9NIGZvcl9w b3J0aW9uX29mX3Rlc3QgV0hFUkUgaWQgPSAnWzExLDEyKSc7CisgICBpZCAgICB8ICAgICAgICB2 YWxpZF9hdCAgICAgICAgIHwgICBuYW1lICAgCistLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLSstLS0tLS0tLS0tCisgWzExLDEyKSB8IFsyMDE4LTA0LTAxLDIwMTgtMDUtMDEpIHwg QXByIDIwMTgKKyBbMTEsMTIpIHwgWzIwMTgtMDEtMDEsMjAxOC0wNC0wMSkgfCBlbGV2ZW4KKyBb MTEsMTIpIHwgWzIwMTgtMDUtMDEsMjAyMC0wMS0wMSkgfCBlbGV2ZW4KKygzIHJvd3MpCisKK0RF TEVURSBGUk9NIGZvcl9wb3J0aW9uX29mX3Rlc3QgV0hFUkUgaWQgSU4gKCdbMTAsMTEpJywgJ1sx MSwxMiknKTsKKy0tIFVQREFURSBGT1IgUE9SVElPTiBPRiBpbiBhIFBML3BnU1FMIGZ1bmN0aW9u CitJTlNFUlQgSU5UTyBmb3JfcG9ydGlvbl9vZl90ZXN0IChpZCwgdmFsaWRfYXQsIG5hbWUpIFZB TFVFUworICAoJ1sxMCwxMSknLCAnWzIwMTgtMDEtMDEsMjAyMC0wMS0wMSknLCAndGVuJyk7CitD UkVBVEUgRlVOQ1RJT04gZnBvX3VwZGF0ZShfaWQgaW50NHJhbmdlLCBfdGFyZ2V0X2Zyb20gZGF0 ZSwgX3RhcmdldF90aWwgZGF0ZSkKK1JFVFVSTlMgdm9pZCBMQU5HVUFHRSBwbHBnc3FsIEFTCisk JAorQkVHSU4KKyAgVVBEQVRFIGZvcl9wb3J0aW9uX29mX3Rlc3QKKyAgICBGT1IgUE9SVElPTiBP RiB2YWxpZF9hdCBGUk9NICQyIFRPICQzCisgICAgU0VUIG5hbWUgPSBjb25jYXQoX3RhcmdldF9m cm9tOjp0ZXh0LCAnIHRvICcsIF90YXJnZXRfdGlsOjp0ZXh0KQorICAgIFdIRVJFIGlkID0gJDE7 CitFTkQ7CiskJDsKK1NFTEVDVCBmcG9fdXBkYXRlKCdbMTAsMTEpJywgJzIwMTUtMDEtMDEnLCAn MjAxOS0wMS0wMScpOworIGZwb191cGRhdGUgCistLS0tLS0tLS0tLS0KKyAKKygxIHJvdykKKwor U0VMRUNUICogRlJPTSBmb3JfcG9ydGlvbl9vZl90ZXN0IFdIRVJFIGlkID0gJ1sxMCwxMSknOwor ICAgaWQgICAgfCAgICAgICAgdmFsaWRfYXQgICAgICAgICB8ICAgICAgICAgICBuYW1lICAgICAg ICAgICAKKy0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tCisgWzEwLDExKSB8IFsyMDE4LTAxLTAxLDIwMTktMDEtMDEpIHwgMjAxNS0w MS0wMSB0byAyMDE5LTAxLTAxCisgWzEwLDExKSB8IFsyMDE5LTAxLTAxLDIwMjAtMDEtMDEpIHwg dGVuCisoMiByb3dzKQorCitEUk9QIFRBQkxFIGZvcl9wb3J0aW9uX29mX3Rlc3Q7CistLQorLS0g REVMRVRFIHRlc3RzCistLQorQ1JFQVRFIFRBQkxFIGZvcl9wb3J0aW9uX29mX3Rlc3QgKAorICBp ZCBpbnQ0cmFuZ2UgTk9UIE5VTEwsCisgIHZhbGlkX2F0IGRhdGVyYW5nZSBOT1QgTlVMTCwKKyAg bmFtZSB0ZXh0IE5PVCBOVUxMLAorICBDT05TVFJBSU5UIGZvcl9wb3J0aW9uX29mX3BrIFBSSU1B UlkgS0VZIChpZCwgdmFsaWRfYXQgV0lUSE9VVCBPVkVSTEFQUykKKyk7CitJTlNFUlQgSU5UTyBm b3JfcG9ydGlvbl9vZl90ZXN0IChpZCwgdmFsaWRfYXQsIG5hbWUpIFZBTFVFUworICAoJ1sxLDIp JywgJ1syMDE4LTAxLTAyLDIwMTgtMDItMDMpJywgJ29uZScpLAorICAoJ1sxLDIpJywgJ1syMDE4 LTAyLTAzLDIwMTgtMDMtMDMpJywgJ29uZScpLAorICAoJ1sxLDIpJywgJ1syMDE4LTAzLTAzLDIw MTgtMDQtMDQpJywgJ29uZScpLAorICAoJ1syLDMpJywgJ1syMDE4LTAxLTAxLDIwMTgtMDEtMDUp JywgJ3R3bycpLAorICAoJ1szLDQpJywgJ1syMDE4LTAxLTAxLCknLCAndGhyZWUnKSwKKyAgKCdb NCw1KScsICcoLDIwMTgtMDQtMDEpJywgJ2ZvdXInKSwKKyAgKCdbNSw2KScsICcoLCknLCAnZml2 ZScpLAorICAoJ1s2LDcpJywgJ1syMDE4LTAxLTAxLCknLCAnc2l4JyksCisgICgnWzcsOCknLCAn KCwyMDE4LTA0LTAxKScsICdzZXZlbicpLAorICAoJ1s4LDkpJywgJ1syMDE4LTAxLTAyLDIwMTgt MDItMDMpJywgJ2VpZ2h0JyksCisgICgnWzgsOSknLCAnWzIwMTgtMDItMDMsMjAxOC0wMy0wMykn LCAnZWlnaHQnKSwKKyAgKCdbOCw5KScsICdbMjAxOC0wMy0wMywyMDE4LTA0LTA0KScsICdlaWdo dCcpCisgIDsKK1xzZXQgUVVJRVQgZmFsc2UKKy0tIERlbGV0aW5nIHdpdGggYSBtaXNzaW5nIGNv bHVtbiBmYWlscworREVMRVRFIEZST00gZm9yX3BvcnRpb25fb2ZfdGVzdAorICBGT1IgUE9SVElP TiBPRiBpbnZhbGlkX2F0IEZST00gJzIwMTgtMDYtMDEnIFRPIE5VTEwKKyAgV0hFUkUgaWQgPSAn WzUsNiknOworRVJST1I6ICBjb2x1bW4gb3IgcGVyaW9kICJpbnZhbGlkX2F0IiBvZiByZWxhdGlv biAiZm9yX3BvcnRpb25fb2ZfdGVzdCIgZG9lcyBub3QgZXhpc3QKK0xJTkUgMjogICBGT1IgUE9S VElPTiBPRiBpbnZhbGlkX2F0IEZST00gJzIwMTgtMDYtMDEnIFRPIE5VTEwKKyAgICAgICAgICAg ICAgICAgICAgICAgICBeCistLSBUaGUgd3JvbmcgdHlwZSBmYWlscworREVMRVRFIEZST00gZm9y X3BvcnRpb25fb2ZfdGVzdAorICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NIDEgVE8gNAor ICBXSEVSRSBpZCA9ICdbMyw0KSc7CitFUlJPUjogIGZ1bmN0aW9uIHBnX2NhdGFsb2cuZGF0ZXJh bmdlKGludGVnZXIsIGludGVnZXIpIGRvZXMgbm90IGV4aXN0CitMSU5FIDI6ICAgRk9SIFBPUlRJ T04gT0YgdmFsaWRfYXQgRlJPTSAxIFRPIDQKKyAgICAgICAgICAgICAgICAgICAgICAgICBeCitE RVRBSUw6ICBObyBmdW5jdGlvbiBvZiB0aGF0IG5hbWUgYWNjZXB0cyB0aGUgZ2l2ZW4gYXJndW1l bnQgdHlwZXMuCitISU5UOiAgWW91IG1pZ2h0IG5lZWQgdG8gYWRkIGV4cGxpY2l0IHR5cGUgY2Fz dHMuCistLSBEZWxldGluZyB3aXRoIHRpbWVzdGFtcHMgcmV2ZXJzZWQgZmFpbHMKK0RFTEVURSBG Uk9NIGZvcl9wb3J0aW9uX29mX3Rlc3QKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAn MjAxOC0wNi0wMScgVE8gJzIwMTgtMDEtMDEnCisgIFdIRVJFIGlkID0gJ1szLDQpJzsKK0VSUk9S OiAgcmFuZ2UgbG93ZXIgYm91bmQgbXVzdCBiZSBsZXNzIHRoYW4gb3IgZXF1YWwgdG8gcmFuZ2Ug dXBwZXIgYm91bmQKKy0tIERlbGV0aW5nIHdpdGggYSBzdWJxdWVyeSBmYWlscworREVMRVRFIEZS T00gZm9yX3BvcnRpb25fb2ZfdGVzdAorICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NIChT RUxFQ1QgJzIwMTgtMDEtMDEnKSBUTyAnMjAxOC0wNi0wMScKKyAgV0hFUkUgaWQgPSAnWzMsNCkn OworRVJST1I6ICBjYW5ub3QgdXNlIHN1YnF1ZXJ5IGluIEZPUiBQT1JUSU9OIE9GIGV4cHJlc3Np b24KK0xJTkUgMjogICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NIChTRUxFQ1QgJzIwMTgt MDEtMDEnKSBUTyAnMjAxLi4uCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBeCistLSBEZWxldGluZyB3aXRoIGEgY29sdW1uIGZhaWxzCitERUxFVEUgRlJPTSBmb3JfcG9y dGlvbl9vZl90ZXN0CisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gbG93ZXIodmFsaWRf YXQpIFRPIE5VTEwKKyAgV0hFUkUgaWQgPSAnWzMsNCknOworRVJST1I6ICBjYW5ub3QgdXNlIGNv bHVtbiByZWZlcmVuY2UgaW4gRk9SIFBPUlRJT04gT0YgZXhwcmVzc2lvbgorTElORSAyOiAgIEZP UiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gbG93ZXIodmFsaWRfYXQpIFRPIE5VTEwKKyAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF4KKy0tIERlbGV0aW5nIHdp dGggdGltZXN0YW1wcyBlcXVhbCBkb2VzIG5vdGhpbmcKK0RFTEVURSBGUk9NIGZvcl9wb3J0aW9u X29mX3Rlc3QKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAxOC0wNC0wMScgVE8g JzIwMTgtMDQtMDEnCisgIFdIRVJFIGlkID0gJ1szLDQpJzsKK0RFTEVURSAwCistLSBEZWxldGlu ZyBhIGZpbml0ZS9vcGVuIHBvcnRpb24gd2l0aCBhIGZpbml0ZS9vcGVuIHRhcmdldAorREVMRVRF IEZST00gZm9yX3BvcnRpb25fb2ZfdGVzdAorICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9N ICcyMDE4LTA2LTAxJyBUTyBOVUxMCisgIFdIRVJFIGlkID0gJ1szLDQpJzsKK0RFTEVURSAyCist LSBEZWxldGluZyBhIGZpbml0ZS9vcGVuIHBvcnRpb24gd2l0aCBhbiBvcGVuL2Zpbml0ZSB0YXJn ZXQKK0RFTEVURSBGUk9NIGZvcl9wb3J0aW9uX29mX3Rlc3QKKyAgRk9SIFBPUlRJT04gT0YgdmFs aWRfYXQgRlJPTSBOVUxMIFRPICcyMDE4LTAzLTAxJworICBXSEVSRSBpZCA9ICdbNiw3KSc7CitE RUxFVEUgMgorLS0gRGVsZXRpbmcgYW4gb3Blbi9maW5pdGUgcG9ydGlvbiB3aXRoIGFuIG9wZW4v ZmluaXRlIHRhcmdldAorREVMRVRFIEZST00gZm9yX3BvcnRpb25fb2ZfdGVzdAorICBGT1IgUE9S VElPTiBPRiB2YWxpZF9hdCBGUk9NIE5VTEwgVE8gJzIwMTgtMDItMDEnCisgIFdIRVJFIGlkID0g J1s0LDUpJzsKK0RFTEVURSAyCistLSBEZWxldGluZyBhbiBvcGVuL2Zpbml0ZSBwb3J0aW9uIHdp dGggYSBmaW5pdGUvb3BlbiB0YXJnZXQKK0RFTEVURSBGUk9NIGZvcl9wb3J0aW9uX29mX3Rlc3QK KyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAxNy0wMS0wMScgVE8gTlVMTAorICBX SEVSRSBpZCA9ICdbNyw4KSc7CitERUxFVEUgMgorLS0gRGVsZXRpbmcgYSBmaW5pdGUvZmluaXRl IHBvcnRpb24gd2l0aCBhbiBleGFjdCBmaXQKK0RFTEVURSBGUk9NIGZvcl9wb3J0aW9uX29mX3Rl c3QKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAxOC0wMi0wMScgVE8gJzIwMTgt MDQtMDEnCisgIFdIRVJFIGlkID0gJ1s0LDUpJzsKK0RFTEVURSAxCistLSBEZWxldGluZyBhbiBl bmNsb3NlZCBzcGFuCitERUxFVEUgRlJPTSBmb3JfcG9ydGlvbl9vZl90ZXN0CisgIEZPUiBQT1JU SU9OIE9GIHZhbGlkX2F0IEZST00gTlVMTCBUTyBOVUxMCisgIFdIRVJFIGlkID0gJ1syLDMpJzsK K0RFTEVURSAxCistLSBEZWxldGluZyBhbiBvcGVuL29wZW4gcG9ydGlvbiB3aXRoIGEgZmluaXRl L2Zpbml0ZSB0YXJnZXQKK0RFTEVURSBGUk9NIGZvcl9wb3J0aW9uX29mX3Rlc3QKKyAgRk9SIFBP UlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAxOC0wMS0wMScgVE8gJzIwMTktMDEtMDEnCisgIFdI RVJFIGlkID0gJ1s1LDYpJzsKK0RFTEVURSAzCistLSBEZWxldGluZyBhbiBlbmNsb3NlZCBzcGFu IHdpdGggc2VwYXJhdGUgcHJvdHJ1ZGluZyBzcGFucworREVMRVRFIEZST00gZm9yX3BvcnRpb25f b2ZfdGVzdAorICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDE4LTAyLTAzJyBUTyAn MjAxOC0wMy0wMycKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworREVMRVRFIDEKKy0tIERlbGV0aW5n IG11bHRpcGxlIGVuY2xvc2VkIHNwYW5zCitERUxFVEUgRlJPTSBmb3JfcG9ydGlvbl9vZl90ZXN0 CisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gTlVMTCBUTyBOVUxMCisgIFdIRVJFIGlk ID0gJ1s4LDkpJzsKK0RFTEVURSAzCistLSBEZWxldGluZyB3aXRoIGEgZGlyZWN0IHRhcmdldAor REVMRVRFIEZST00gZm9yX3BvcnRpb25fb2ZfdGVzdAorICBGT1IgUE9SVElPTiBPRiB2YWxpZF9h dCAoZGF0ZXJhbmdlKCcyMDE4LTAzLTEwJywgJzIwMTgtMDMtMTcnKSkKKyAgV0hFUkUgaWQgPSAn WzEsMiknOworREVMRVRFIDMKKy0tIERFTEVURSB3aXRoIG5vIFdIRVJFIGNsYXVzZQorREVMRVRF IEZST00gZm9yX3BvcnRpb25fb2ZfdGVzdAorICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9N ICcyMDMwLTAxLTAxJyBUTyBOVUxMOworREVMRVRFIDQKK1NFTEVDVCAqIEZST00gZm9yX3BvcnRp b25fb2ZfdGVzdCBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisgIGlkICAgfCAgICAgICAgdmFsaWRf YXQgICAgICAgICB8IG5hbWUgIAorLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0t LS0tLS0KKyBbMSwyKSB8IFsyMDE4LTAxLTAyLDIwMTgtMDItMDMpIHwgb25lCisgWzEsMikgfCBb MjAxOC0wMy0wMywyMDE4LTAzLTEwKSB8IG9uZQorIFsxLDIpIHwgWzIwMTgtMDMtMTcsMjAxOC0w NC0wNCkgfCBvbmUKKyBbMyw0KSB8IFsyMDE4LTAxLTAxLDIwMTgtMDYtMDEpIHwgdGhyZWUKKyBb NSw2KSB8ICgsMjAxOC0wMS0wMSkgICAgICAgICAgIHwgZml2ZQorIFs1LDYpIHwgWzIwMTktMDEt MDEsMjAzMC0wMS0wMSkgfCBmaXZlCisgWzYsNykgfCBbMjAxOC0wMy0wMSwyMDMwLTAxLTAxKSB8 IHNpeAorIFs3LDgpIHwgKCwyMDE3LTAxLTAxKSAgICAgICAgICAgfCBzZXZlbgorKDggcm93cykK KworXHNldCBRVUlFVCB0cnVlCistLSBVUERBVEUgLi4uIFJFVFVSTklORyByZXR1cm5zIG9ubHkg dGhlIHVwZGF0ZWQgdmFsdWVzIChub3QgdGhlIGluc2VydGVkIHNpZGUgdmFsdWVzKQorVVBEQVRF IGZvcl9wb3J0aW9uX29mX3Rlc3QKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAx OC0wMi0wMScgVE8gJzIwMTgtMDItMTUnCisgIFNFVCBuYW1lID0gJ3RocmVlXjMnCisgIFdIRVJF IGlkID0gJ1szLDQpJworICBSRVRVUk5JTkcgKjsKKyAgaWQgICB8ICAgICAgICB2YWxpZF9hdCAg ICAgICAgIHwgIG5hbWUgICAKKy0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0t LS0tLS0KKyBbMyw0KSB8IFsyMDE4LTAyLTAxLDIwMTgtMDItMTUpIHwgdGhyZWVeMworKDEgcm93 KQorCistLSBERUxFVEUgLi4uIFJFVFVSTklORyByZXR1cm5zIHRoZSBkZWxldGVkIHZhbHVlcyAo cmVnYXJkbGVzcyBvZiBib3VuZHMpCitERUxFVEUgRlJPTSBmb3JfcG9ydGlvbl9vZl90ZXN0Cisg IEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMTgtMDItMDInIFRPICcyMDE4LTAyLTAz JworICBXSEVSRSBpZCA9ICdbMyw0KScKKyAgUkVUVVJOSU5HICo7CisgIGlkICAgfCAgICAgICAg dmFsaWRfYXQgICAgICAgICB8ICBuYW1lICAgCistLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0rLS0tLS0tLS0tCisgWzMsNCkgfCBbMjAxOC0wMi0wMSwyMDE4LTAyLTE1KSB8IHRocmVl XjMKKygxIHJvdykKKworLS0gREVMRVRFIEZPUiBQT1JUSU9OIE9GIGluIGEgUEwvcGdTUUwgZnVu Y3Rpb24KK0lOU0VSVCBJTlRPIGZvcl9wb3J0aW9uX29mX3Rlc3QgKGlkLCB2YWxpZF9hdCwgbmFt ZSkgVkFMVUVTCisgICgnWzEwLDExKScsICdbMjAxOC0wMS0wMSwyMDIwLTAxLTAxKScsICd0ZW4n KTsKK0NSRUFURSBGVU5DVElPTiBmcG9fZGVsZXRlKF9pZCBpbnQ0cmFuZ2UsIF90YXJnZXRfZnJv bSBkYXRlLCBfdGFyZ2V0X3RpbCBkYXRlKQorUkVUVVJOUyB2b2lkIExBTkdVQUdFIHBscGdzcWwg QVMKKyQkCitCRUdJTgorICBERUxFVEUgRlJPTSBmb3JfcG9ydGlvbl9vZl90ZXN0CisgICAgRk9S IFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAkMiBUTyAkMworICAgIFdIRVJFIGlkID0gJDE7CitF TkQ7CiskJDsKK1NFTEVDVCBmcG9fZGVsZXRlKCdbMTAsMTEpJywgJzIwMTUtMDEtMDEnLCAnMjAx OS0wMS0wMScpOworIGZwb19kZWxldGUgCistLS0tLS0tLS0tLS0KKyAKKygxIHJvdykKKworU0VM RUNUICogRlJPTSBmb3JfcG9ydGlvbl9vZl90ZXN0IFdIRVJFIGlkID0gJ1sxMCwxMSknOworICAg aWQgICAgfCAgICAgICAgdmFsaWRfYXQgICAgICAgICB8IG5hbWUgCistLS0tLS0tLS0rLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0KKyBbMTAsMTEpIHwgWzIwMTktMDEtMDEsMjAyMC0w MS0wMSkgfCB0ZW4KKygxIHJvdykKKworREVMRVRFIEZST00gZm9yX3BvcnRpb25fb2ZfdGVzdCBX SEVSRSBpZCBJTiAoJ1sxMCwxMSknKTsKKy0tIHRlc3QgdGhhdCB3ZSBydW4gdHJpZ2dlcnMgb24g dGhlIFVQREFURS9ERUxFVEVkIHJvdyBhbmQgdGhlIElOU0VSVGVkIHJvd3MKK0NSRUFURSBGVU5D VElPTiBkdW1wX3RyaWdnZXIoKQorUkVUVVJOUyBUUklHR0VSIExBTkdVQUdFIHBscGdzcWwgQVMK KyQkCitCRUdJTgorICBSQUlTRSBOT1RJQ0UgJyU6ICUgJSAlOicsCisgICAgVEdfTkFNRSwgVEdf V0hFTiwgVEdfT1AsIFRHX0xFVkVMOworCisgIElGIFRHX0FSR1ZbMF0gVEhFTgorICAgIFJBSVNF IE5PVElDRSAnICBvbGQ6ICUnLCAoU0VMRUNUIHN0cmluZ19hZ2cob2xkX3RhYmxlOjp0ZXh0LCAn XG4gICAgICAgJykgRlJPTSBvbGRfdGFibGUpOworICBFTFNFCisgICAgUkFJU0UgTk9USUNFICcg IG9sZDogJScsIE9MRC52YWxpZF9hdDsKKyAgRU5EIElGOworICBJRiBUR19BUkdWWzFdIFRIRU4K KyAgICBSQUlTRSBOT1RJQ0UgJyAgbmV3OiAlJywgKFNFTEVDVCBzdHJpbmdfYWdnKG5ld190YWJs ZTo6dGV4dCwgJ1xuICAgICAgICcpIEZST00gbmV3X3RhYmxlKTsKKyAgRUxTRQorICAgIFJBSVNF IE5PVElDRSAnICBuZXc6ICUnLCBORVcudmFsaWRfYXQ7CisgIEVORCBJRjsKKworICBJRiBUR19P UCA9ICdJTlNFUlQnIE9SIFRHX09QID0gJ1VQREFURScgVEhFTgorICAgIFJFVFVSTiBORVc7Cisg IEVMU0lGIFRHX09QID0gJ0RFTEVURScgVEhFTgorICAgIFJFVFVSTiBPTEQ7CisgIEVORCBJRjsK K0VORDsKKyQkOworLS0gc3RhdGVtZW50IHRyaWdnZXJzOgorQ1JFQVRFIFRSSUdHRVIgZnBvX2Jl Zm9yZV9zdG10CitCRUZPUkUgSU5TRVJUIE9SIFVQREFURSBPUiBERUxFVEUgT04gZm9yX3BvcnRp b25fb2ZfdGVzdAorRk9SIEVBQ0ggU1RBVEVNRU5UIEVYRUNVVEUgUFJPQ0VEVVJFIGR1bXBfdHJp Z2dlcihmYWxzZSwgZmFsc2UpOworQ1JFQVRFIFRSSUdHRVIgZnBvX2FmdGVyX2luc2VydF9zdG10 CitBRlRFUiBJTlNFUlQgT04gZm9yX3BvcnRpb25fb2ZfdGVzdAorRk9SIEVBQ0ggU1RBVEVNRU5U IEVYRUNVVEUgUFJPQ0VEVVJFIGR1bXBfdHJpZ2dlcihmYWxzZSwgZmFsc2UpOworQ1JFQVRFIFRS SUdHRVIgZnBvX2FmdGVyX3VwZGF0ZV9zdG10CitBRlRFUiBVUERBVEUgT04gZm9yX3BvcnRpb25f b2ZfdGVzdAorRk9SIEVBQ0ggU1RBVEVNRU5UIEVYRUNVVEUgUFJPQ0VEVVJFIGR1bXBfdHJpZ2dl cihmYWxzZSwgZmFsc2UpOworQ1JFQVRFIFRSSUdHRVIgZnBvX2FmdGVyX2RlbGV0ZV9zdG10CitB RlRFUiBERUxFVEUgT04gZm9yX3BvcnRpb25fb2ZfdGVzdAorRk9SIEVBQ0ggU1RBVEVNRU5UIEVY RUNVVEUgUFJPQ0VEVVJFIGR1bXBfdHJpZ2dlcihmYWxzZSwgZmFsc2UpOworLS0gcm93IHRyaWdn ZXJzOgorQ1JFQVRFIFRSSUdHRVIgZnBvX2JlZm9yZV9yb3cKK0JFRk9SRSBJTlNFUlQgT1IgVVBE QVRFIE9SIERFTEVURSBPTiBmb3JfcG9ydGlvbl9vZl90ZXN0CitGT1IgRUFDSCBST1cgRVhFQ1VU RSBQUk9DRURVUkUgZHVtcF90cmlnZ2VyKGZhbHNlLCBmYWxzZSk7CitDUkVBVEUgVFJJR0dFUiBm cG9fYWZ0ZXJfaW5zZXJ0X3JvdworQUZURVIgSU5TRVJUIE9OIGZvcl9wb3J0aW9uX29mX3Rlc3QK K0ZPUiBFQUNIIFJPVyBFWEVDVVRFIFBST0NFRFVSRSBkdW1wX3RyaWdnZXIoZmFsc2UsIGZhbHNl KTsKK0NSRUFURSBUUklHR0VSIGZwb19hZnRlcl91cGRhdGVfcm93CitBRlRFUiBVUERBVEUgT04g Zm9yX3BvcnRpb25fb2ZfdGVzdAorRk9SIEVBQ0ggUk9XIEVYRUNVVEUgUFJPQ0VEVVJFIGR1bXBf dHJpZ2dlcihmYWxzZSwgZmFsc2UpOworQ1JFQVRFIFRSSUdHRVIgZnBvX2FmdGVyX2RlbGV0ZV9y b3cKK0FGVEVSIERFTEVURSBPTiBmb3JfcG9ydGlvbl9vZl90ZXN0CitGT1IgRUFDSCBST1cgRVhF Q1VURSBQUk9DRURVUkUgZHVtcF90cmlnZ2VyKGZhbHNlLCBmYWxzZSk7CitVUERBVEUgZm9yX3Bv cnRpb25fb2ZfdGVzdAorICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDIxLTAxLTAx JyBUTyAnMjAyMi0wMS0wMScKKyAgU0VUIG5hbWUgPSAnZml2ZV4zJworICBXSEVSRSBpZCA9ICdb NSw2KSc7CitOT1RJQ0U6ICBmcG9fYmVmb3JlX3N0bXQ6IEJFRk9SRSBVUERBVEUgU1RBVEVNRU5U OgorTk9USUNFOiAgICBvbGQ6IDxOVUxMPgorTk9USUNFOiAgICBuZXc6IDxOVUxMPgorTk9USUNF OiAgZnBvX2JlZm9yZV9yb3c6IEJFRk9SRSBVUERBVEUgUk9XOgorTk9USUNFOiAgICBvbGQ6IFsy MDE5LTAxLTAxLDIwMzAtMDEtMDEpCitOT1RJQ0U6ICAgIG5ldzogWzIwMjEtMDEtMDEsMjAyMi0w MS0wMSkKK05PVElDRTogIGZwb19iZWZvcmVfc3RtdDogQkVGT1JFIElOU0VSVCBTVEFURU1FTlQ6 CitOT1RJQ0U6ICAgIG9sZDogPE5VTEw+CitOT1RJQ0U6ICAgIG5ldzogPE5VTEw+CitOT1RJQ0U6 ICBmcG9fYmVmb3JlX3JvdzogQkVGT1JFIElOU0VSVCBST1c6CitOT1RJQ0U6ICAgIG9sZDogPE5V TEw+CitOT1RJQ0U6ICAgIG5ldzogWzIwMTktMDEtMDEsMjAyMS0wMS0wMSkKK05PVElDRTogIGZw b19hZnRlcl9pbnNlcnRfcm93OiBBRlRFUiBJTlNFUlQgUk9XOgorTk9USUNFOiAgICBvbGQ6IDxO VUxMPgorTk9USUNFOiAgICBuZXc6IFsyMDE5LTAxLTAxLDIwMjEtMDEtMDEpCitOT1RJQ0U6ICBm cG9fYWZ0ZXJfaW5zZXJ0X3N0bXQ6IEFGVEVSIElOU0VSVCBTVEFURU1FTlQ6CitOT1RJQ0U6ICAg IG9sZDogPE5VTEw+CitOT1RJQ0U6ICAgIG5ldzogPE5VTEw+CitOT1RJQ0U6ICBmcG9fYmVmb3Jl X3N0bXQ6IEJFRk9SRSBJTlNFUlQgU1RBVEVNRU5UOgorTk9USUNFOiAgICBvbGQ6IDxOVUxMPgor Tk9USUNFOiAgICBuZXc6IDxOVUxMPgorTk9USUNFOiAgZnBvX2JlZm9yZV9yb3c6IEJFRk9SRSBJ TlNFUlQgUk9XOgorTk9USUNFOiAgICBvbGQ6IDxOVUxMPgorTk9USUNFOiAgICBuZXc6IFsyMDIy LTAxLTAxLDIwMzAtMDEtMDEpCitOT1RJQ0U6ICBmcG9fYWZ0ZXJfaW5zZXJ0X3JvdzogQUZURVIg SU5TRVJUIFJPVzoKK05PVElDRTogICAgb2xkOiA8TlVMTD4KK05PVElDRTogICAgbmV3OiBbMjAy Mi0wMS0wMSwyMDMwLTAxLTAxKQorTk9USUNFOiAgZnBvX2FmdGVyX2luc2VydF9zdG10OiBBRlRF UiBJTlNFUlQgU1RBVEVNRU5UOgorTk9USUNFOiAgICBvbGQ6IDxOVUxMPgorTk9USUNFOiAgICBu ZXc6IDxOVUxMPgorTk9USUNFOiAgZnBvX2FmdGVyX3VwZGF0ZV9yb3c6IEFGVEVSIFVQREFURSBS T1c6CitOT1RJQ0U6ICAgIG9sZDogWzIwMTktMDEtMDEsMjAzMC0wMS0wMSkKK05PVElDRTogICAg bmV3OiBbMjAyMS0wMS0wMSwyMDIyLTAxLTAxKQorTk9USUNFOiAgZnBvX2FmdGVyX3VwZGF0ZV9z dG10OiBBRlRFUiBVUERBVEUgU1RBVEVNRU5UOgorTk9USUNFOiAgICBvbGQ6IDxOVUxMPgorTk9U SUNFOiAgICBuZXc6IDxOVUxMPgorREVMRVRFIEZST00gZm9yX3BvcnRpb25fb2ZfdGVzdAorICBG T1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDIzLTAxLTAxJyBUTyAnMjAyNC0wMS0wMScK KyAgV0hFUkUgaWQgPSAnWzUsNiknOworTk9USUNFOiAgZnBvX2JlZm9yZV9zdG10OiBCRUZPUkUg REVMRVRFIFNUQVRFTUVOVDoKK05PVElDRTogICAgb2xkOiA8TlVMTD4KK05PVElDRTogICAgbmV3 OiA8TlVMTD4KK05PVElDRTogIGZwb19iZWZvcmVfcm93OiBCRUZPUkUgREVMRVRFIFJPVzoKK05P VElDRTogICAgb2xkOiBbMjAyMi0wMS0wMSwyMDMwLTAxLTAxKQorTk9USUNFOiAgICBuZXc6IDxO VUxMPgorTk9USUNFOiAgZnBvX2JlZm9yZV9zdG10OiBCRUZPUkUgSU5TRVJUIFNUQVRFTUVOVDoK K05PVElDRTogICAgb2xkOiA8TlVMTD4KK05PVElDRTogICAgbmV3OiA8TlVMTD4KK05PVElDRTog IGZwb19iZWZvcmVfcm93OiBCRUZPUkUgSU5TRVJUIFJPVzoKK05PVElDRTogICAgb2xkOiA8TlVM TD4KK05PVElDRTogICAgbmV3OiBbMjAyMi0wMS0wMSwyMDIzLTAxLTAxKQorTk9USUNFOiAgZnBv X2FmdGVyX2luc2VydF9yb3c6IEFGVEVSIElOU0VSVCBST1c6CitOT1RJQ0U6ICAgIG9sZDogPE5V TEw+CitOT1RJQ0U6ICAgIG5ldzogWzIwMjItMDEtMDEsMjAyMy0wMS0wMSkKK05PVElDRTogIGZw b19hZnRlcl9pbnNlcnRfc3RtdDogQUZURVIgSU5TRVJUIFNUQVRFTUVOVDoKK05PVElDRTogICAg b2xkOiA8TlVMTD4KK05PVElDRTogICAgbmV3OiA8TlVMTD4KK05PVElDRTogIGZwb19iZWZvcmVf c3RtdDogQkVGT1JFIElOU0VSVCBTVEFURU1FTlQ6CitOT1RJQ0U6ICAgIG9sZDogPE5VTEw+CitO T1RJQ0U6ICAgIG5ldzogPE5VTEw+CitOT1RJQ0U6ICBmcG9fYmVmb3JlX3JvdzogQkVGT1JFIElO U0VSVCBST1c6CitOT1RJQ0U6ICAgIG9sZDogPE5VTEw+CitOT1RJQ0U6ICAgIG5ldzogWzIwMjQt MDEtMDEsMjAzMC0wMS0wMSkKK05PVElDRTogIGZwb19hZnRlcl9pbnNlcnRfcm93OiBBRlRFUiBJ TlNFUlQgUk9XOgorTk9USUNFOiAgICBvbGQ6IDxOVUxMPgorTk9USUNFOiAgICBuZXc6IFsyMDI0 LTAxLTAxLDIwMzAtMDEtMDEpCitOT1RJQ0U6ICBmcG9fYWZ0ZXJfaW5zZXJ0X3N0bXQ6IEFGVEVS IElOU0VSVCBTVEFURU1FTlQ6CitOT1RJQ0U6ICAgIG9sZDogPE5VTEw+CitOT1RJQ0U6ICAgIG5l dzogPE5VTEw+CitOT1RJQ0U6ICBmcG9fYWZ0ZXJfZGVsZXRlX3JvdzogQUZURVIgREVMRVRFIFJP VzoKK05PVElDRTogICAgb2xkOiBbMjAyMi0wMS0wMSwyMDMwLTAxLTAxKQorTk9USUNFOiAgICBu ZXc6IDxOVUxMPgorTk9USUNFOiAgZnBvX2FmdGVyX2RlbGV0ZV9zdG10OiBBRlRFUiBERUxFVEUg U1RBVEVNRU5UOgorTk9USUNFOiAgICBvbGQ6IDxOVUxMPgorTk9USUNFOiAgICBuZXc6IDxOVUxM PgorU0VMRUNUICogRlJPTSBmb3JfcG9ydGlvbl9vZl90ZXN0IE9SREVSIEJZIGlkLCB2YWxpZF9h dDsKKyAgaWQgICB8ICAgICAgICB2YWxpZF9hdCAgICAgICAgIHwgIG5hbWUgICAKKy0tLS0tLS0r LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0KKyBbMSwyKSB8IFsyMDE4LTAxLTAy LDIwMTgtMDItMDMpIHwgb25lCisgWzEsMikgfCBbMjAxOC0wMy0wMywyMDE4LTAzLTEwKSB8IG9u ZQorIFsxLDIpIHwgWzIwMTgtMDMtMTcsMjAxOC0wNC0wNCkgfCBvbmUKKyBbMyw0KSB8IFsyMDE4 LTAxLTAxLDIwMTgtMDItMDEpIHwgdGhyZWUKKyBbMyw0KSB8IFsyMDE4LTAyLTAxLDIwMTgtMDIt MDIpIHwgdGhyZWVeMworIFszLDQpIHwgWzIwMTgtMDItMDMsMjAxOC0wMi0xNSkgfCB0aHJlZV4z CisgWzMsNCkgfCBbMjAxOC0wMi0xNSwyMDE4LTA2LTAxKSB8IHRocmVlCisgWzUsNikgfCAoLDIw MTgtMDEtMDEpICAgICAgICAgICB8IGZpdmUKKyBbNSw2KSB8IFsyMDE5LTAxLTAxLDIwMjEtMDEt MDEpIHwgZml2ZQorIFs1LDYpIHwgWzIwMjEtMDEtMDEsMjAyMi0wMS0wMSkgfCBmaXZlXjMKKyBb NSw2KSB8IFsyMDIyLTAxLTAxLDIwMjMtMDEtMDEpIHwgZml2ZQorIFs1LDYpIHwgWzIwMjQtMDEt MDEsMjAzMC0wMS0wMSkgfCBmaXZlCisgWzYsNykgfCBbMjAxOC0wMy0wMSwyMDMwLTAxLTAxKSB8 IHNpeAorIFs3LDgpIHwgKCwyMDE3LTAxLTAxKSAgICAgICAgICAgfCBzZXZlbgorKDE0IHJvd3Mp CisKKy0tIFRyaWdnZXJzIHdpdGggYSBjdXN0b20gdHJhbnNpdGlvbiB0YWJsZSBuYW1lOgorRFJP UCBUQUJMRSBmb3JfcG9ydGlvbl9vZl90ZXN0OworQ1JFQVRFIFRBQkxFIGZvcl9wb3J0aW9uX29m X3Rlc3QgKAorICBpZCBpbnQ0cmFuZ2UsCisgIHZhbGlkX2F0IGRhdGVyYW5nZSwKKyAgbmFtZSB0 ZXh0CispOworSU5TRVJUIElOVE8gZm9yX3BvcnRpb25fb2ZfdGVzdCBWQUxVRVMgKCdbMSwyKScs ICdbMjAxOC0wMS0wMSwyMDIwLTAxLTAxKScsICdvbmUnKTsKKy0tIHN0YXRlbWVudCB0cmlnZ2Vy czoKK0NSRUFURSBUUklHR0VSIGZwb19iZWZvcmVfc3RtdAorQkVGT1JFIElOU0VSVCBPUiBVUERB VEUgT1IgREVMRVRFIE9OIGZvcl9wb3J0aW9uX29mX3Rlc3QKK0ZPUiBFQUNIIFNUQVRFTUVOVCBF WEVDVVRFIFBST0NFRFVSRSBkdW1wX3RyaWdnZXIoZmFsc2UsIGZhbHNlKTsKK0NSRUFURSBUUklH R0VSIGZwb19hZnRlcl9pbnNlcnRfc3RtdAorQUZURVIgSU5TRVJUIE9OIGZvcl9wb3J0aW9uX29m X3Rlc3QKK1JFRkVSRU5DSU5HIE5FVyBUQUJMRSBBUyBuZXdfdGFibGUKK0ZPUiBFQUNIIFNUQVRF TUVOVCBFWEVDVVRFIFBST0NFRFVSRSBkdW1wX3RyaWdnZXIoZmFsc2UsIHRydWUpOworQ1JFQVRF IFRSSUdHRVIgZnBvX2FmdGVyX3VwZGF0ZV9zdG10CitBRlRFUiBVUERBVEUgT04gZm9yX3BvcnRp b25fb2ZfdGVzdAorUkVGRVJFTkNJTkcgTkVXIFRBQkxFIEFTIG5ld190YWJsZSBPTEQgVEFCTEUg QVMgb2xkX3RhYmxlCitGT1IgRUFDSCBTVEFURU1FTlQgRVhFQ1VURSBQUk9DRURVUkUgZHVtcF90 cmlnZ2VyKHRydWUsIHRydWUpOworQ1JFQVRFIFRSSUdHRVIgZnBvX2FmdGVyX2RlbGV0ZV9zdG10 CitBRlRFUiBERUxFVEUgT04gZm9yX3BvcnRpb25fb2ZfdGVzdAorUkVGRVJFTkNJTkcgT0xEIFRB QkxFIEFTIG9sZF90YWJsZQorRk9SIEVBQ0ggU1RBVEVNRU5UIEVYRUNVVEUgUFJPQ0VEVVJFIGR1 bXBfdHJpZ2dlcih0cnVlLCBmYWxzZSk7CistLSByb3cgdHJpZ2dlcnM6CitDUkVBVEUgVFJJR0dF UiBmcG9fYmVmb3JlX3JvdworQkVGT1JFIElOU0VSVCBPUiBVUERBVEUgT1IgREVMRVRFIE9OIGZv cl9wb3J0aW9uX29mX3Rlc3QKK0ZPUiBFQUNIIFJPVyBFWEVDVVRFIFBST0NFRFVSRSBkdW1wX3Ry aWdnZXIoZmFsc2UsIGZhbHNlKTsKK0NSRUFURSBUUklHR0VSIGZwb19hZnRlcl9pbnNlcnRfcm93 CitBRlRFUiBJTlNFUlQgT04gZm9yX3BvcnRpb25fb2ZfdGVzdAorUkVGRVJFTkNJTkcgTkVXIFRB QkxFIEFTIG5ld190YWJsZQorRk9SIEVBQ0ggUk9XIEVYRUNVVEUgUFJPQ0VEVVJFIGR1bXBfdHJp Z2dlcihmYWxzZSwgdHJ1ZSk7CitDUkVBVEUgVFJJR0dFUiBmcG9fYWZ0ZXJfdXBkYXRlX3Jvdwor QUZURVIgVVBEQVRFIE9OIGZvcl9wb3J0aW9uX29mX3Rlc3QKK1JFRkVSRU5DSU5HIE9MRCBUQUJM RSBBUyBvbGRfdGFibGUgTkVXIFRBQkxFIEFTIG5ld190YWJsZQorRk9SIEVBQ0ggUk9XIEVYRUNV VEUgUFJPQ0VEVVJFIGR1bXBfdHJpZ2dlcih0cnVlLCB0cnVlKTsKK0NSRUFURSBUUklHR0VSIGZw b19hZnRlcl9kZWxldGVfcm93CitBRlRFUiBERUxFVEUgT04gZm9yX3BvcnRpb25fb2ZfdGVzdAor UkVGRVJFTkNJTkcgT0xEIFRBQkxFIEFTIG9sZF90YWJsZQorRk9SIEVBQ0ggUk9XIEVYRUNVVEUg UFJPQ0VEVVJFIGR1bXBfdHJpZ2dlcih0cnVlLCBmYWxzZSk7CitCRUdJTjsKK1VQREFURSBmb3Jf cG9ydGlvbl9vZl90ZXN0CisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMTgtMDEt MTUnIFRPICcyMDE5LTAxLTAxJworICBTRVQgbmFtZSA9ICcyMDE4LTAxLTE1X3RvXzIwMTktMDEt MDEnOworTk9USUNFOiAgZnBvX2JlZm9yZV9zdG10OiBCRUZPUkUgVVBEQVRFIFNUQVRFTUVOVDoK K05PVElDRTogICAgb2xkOiA8TlVMTD4KK05PVElDRTogICAgbmV3OiA8TlVMTD4KK05PVElDRTog IGZwb19iZWZvcmVfcm93OiBCRUZPUkUgVVBEQVRFIFJPVzoKK05PVElDRTogICAgb2xkOiBbMjAx OC0wMS0wMSwyMDIwLTAxLTAxKQorTk9USUNFOiAgICBuZXc6IFsyMDE4LTAxLTE1LDIwMTktMDEt MDEpCitOT1RJQ0U6ICBmcG9fYmVmb3JlX3N0bXQ6IEJFRk9SRSBJTlNFUlQgU1RBVEVNRU5UOgor Tk9USUNFOiAgICBvbGQ6IDxOVUxMPgorTk9USUNFOiAgICBuZXc6IDxOVUxMPgorTk9USUNFOiAg ZnBvX2JlZm9yZV9yb3c6IEJFRk9SRSBJTlNFUlQgUk9XOgorTk9USUNFOiAgICBvbGQ6IDxOVUxM PgorTk9USUNFOiAgICBuZXc6IFsyMDE4LTAxLTAxLDIwMTgtMDEtMTUpCitOT1RJQ0U6ICBmcG9f YWZ0ZXJfaW5zZXJ0X3JvdzogQUZURVIgSU5TRVJUIFJPVzoKK05PVElDRTogICAgb2xkOiA8TlVM TD4KK05PVElDRTogICAgbmV3OiAoIlsxLDIpIiwiWzIwMTgtMDEtMDEsMjAxOC0wMS0xNSkiLG9u ZSkKK05PVElDRTogIGZwb19hZnRlcl9pbnNlcnRfc3RtdDogQUZURVIgSU5TRVJUIFNUQVRFTUVO VDoKK05PVElDRTogICAgb2xkOiA8TlVMTD4KK05PVElDRTogICAgbmV3OiAoIlsxLDIpIiwiWzIw MTgtMDEtMDEsMjAxOC0wMS0xNSkiLG9uZSkKK05PVElDRTogIGZwb19iZWZvcmVfc3RtdDogQkVG T1JFIElOU0VSVCBTVEFURU1FTlQ6CitOT1RJQ0U6ICAgIG9sZDogPE5VTEw+CitOT1RJQ0U6ICAg IG5ldzogPE5VTEw+CitOT1RJQ0U6ICBmcG9fYmVmb3JlX3JvdzogQkVGT1JFIElOU0VSVCBST1c6 CitOT1RJQ0U6ICAgIG9sZDogPE5VTEw+CitOT1RJQ0U6ICAgIG5ldzogWzIwMTktMDEtMDEsMjAy MC0wMS0wMSkKK05PVElDRTogIGZwb19hZnRlcl9pbnNlcnRfcm93OiBBRlRFUiBJTlNFUlQgUk9X OgorTk9USUNFOiAgICBvbGQ6IDxOVUxMPgorTk9USUNFOiAgICBuZXc6ICgiWzEsMikiLCJbMjAx OS0wMS0wMSwyMDIwLTAxLTAxKSIsb25lKQorTk9USUNFOiAgZnBvX2FmdGVyX2luc2VydF9zdG10 OiBBRlRFUiBJTlNFUlQgU1RBVEVNRU5UOgorTk9USUNFOiAgICBvbGQ6IDxOVUxMPgorTk9USUNF OiAgICBuZXc6ICgiWzEsMikiLCJbMjAxOS0wMS0wMSwyMDIwLTAxLTAxKSIsb25lKQorTk9USUNF OiAgZnBvX2FmdGVyX3VwZGF0ZV9yb3c6IEFGVEVSIFVQREFURSBST1c6CitOT1RJQ0U6ICAgIG9s ZDogKCJbMSwyKSIsIlsyMDE4LTAxLTAxLDIwMjAtMDEtMDEpIixvbmUpCitOT1RJQ0U6ICAgIG5l dzogKCJbMSwyKSIsIlsyMDE4LTAxLTE1LDIwMTktMDEtMDEpIiwyMDE4LTAxLTE1X3RvXzIwMTkt MDEtMDEpCitOT1RJQ0U6ICBmcG9fYWZ0ZXJfdXBkYXRlX3N0bXQ6IEFGVEVSIFVQREFURSBTVEFU RU1FTlQ6CitOT1RJQ0U6ICAgIG9sZDogKCJbMSwyKSIsIlsyMDE4LTAxLTAxLDIwMjAtMDEtMDEp IixvbmUpCitOT1RJQ0U6ICAgIG5ldzogKCJbMSwyKSIsIlsyMDE4LTAxLTE1LDIwMTktMDEtMDEp IiwyMDE4LTAxLTE1X3RvXzIwMTktMDEtMDEpCitST0xMQkFDSzsKK0JFR0lOOworREVMRVRFIEZS T00gZm9yX3BvcnRpb25fb2ZfdGVzdAorICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NIE5V TEwgVE8gJzIwMTgtMDEtMjEnOworTk9USUNFOiAgZnBvX2JlZm9yZV9zdG10OiBCRUZPUkUgREVM RVRFIFNUQVRFTUVOVDoKK05PVElDRTogICAgb2xkOiA8TlVMTD4KK05PVElDRTogICAgbmV3OiA8 TlVMTD4KK05PVElDRTogIGZwb19iZWZvcmVfcm93OiBCRUZPUkUgREVMRVRFIFJPVzoKK05PVElD RTogICAgb2xkOiBbMjAxOC0wMS0wMSwyMDIwLTAxLTAxKQorTk9USUNFOiAgICBuZXc6IDxOVUxM PgorTk9USUNFOiAgZnBvX2JlZm9yZV9zdG10OiBCRUZPUkUgSU5TRVJUIFNUQVRFTUVOVDoKK05P VElDRTogICAgb2xkOiA8TlVMTD4KK05PVElDRTogICAgbmV3OiA8TlVMTD4KK05PVElDRTogIGZw b19iZWZvcmVfcm93OiBCRUZPUkUgSU5TRVJUIFJPVzoKK05PVElDRTogICAgb2xkOiA8TlVMTD4K K05PVElDRTogICAgbmV3OiBbMjAxOC0wMS0yMSwyMDIwLTAxLTAxKQorTk9USUNFOiAgZnBvX2Fm dGVyX2luc2VydF9yb3c6IEFGVEVSIElOU0VSVCBST1c6CitOT1RJQ0U6ICAgIG9sZDogPE5VTEw+ CitOT1RJQ0U6ICAgIG5ldzogKCJbMSwyKSIsIlsyMDE4LTAxLTIxLDIwMjAtMDEtMDEpIixvbmUp CitOT1RJQ0U6ICBmcG9fYWZ0ZXJfaW5zZXJ0X3N0bXQ6IEFGVEVSIElOU0VSVCBTVEFURU1FTlQ6 CitOT1RJQ0U6ICAgIG9sZDogPE5VTEw+CitOT1RJQ0U6ICAgIG5ldzogKCJbMSwyKSIsIlsyMDE4 LTAxLTIxLDIwMjAtMDEtMDEpIixvbmUpCitOT1RJQ0U6ICBmcG9fYWZ0ZXJfZGVsZXRlX3Jvdzog QUZURVIgREVMRVRFIFJPVzoKK05PVElDRTogICAgb2xkOiAoIlsxLDIpIiwiWzIwMTgtMDEtMDEs MjAyMC0wMS0wMSkiLG9uZSkKK05PVElDRTogICAgbmV3OiA8TlVMTD4KK05PVElDRTogIGZwb19h ZnRlcl9kZWxldGVfc3RtdDogQUZURVIgREVMRVRFIFNUQVRFTUVOVDoKK05PVElDRTogICAgb2xk OiAoIlsxLDIpIiwiWzIwMTgtMDEtMDEsMjAyMC0wMS0wMSkiLG9uZSkKK05PVElDRTogICAgbmV3 OiA8TlVMTD4KK1JPTExCQUNLOworQkVHSU47CitVUERBVEUgZm9yX3BvcnRpb25fb2ZfdGVzdAor ICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NIE5VTEwgVE8gJzIwMTgtMDEtMDInCisgIFNF VCBuYW1lID0gJ05VTExfdG9fMjAxOC0wMS0wMSc7CitOT1RJQ0U6ICBmcG9fYmVmb3JlX3N0bXQ6 IEJFRk9SRSBVUERBVEUgU1RBVEVNRU5UOgorTk9USUNFOiAgICBvbGQ6IDxOVUxMPgorTk9USUNF OiAgICBuZXc6IDxOVUxMPgorTk9USUNFOiAgZnBvX2JlZm9yZV9yb3c6IEJFRk9SRSBVUERBVEUg Uk9XOgorTk9USUNFOiAgICBvbGQ6IFsyMDE4LTAxLTAxLDIwMjAtMDEtMDEpCitOT1RJQ0U6ICAg IG5ldzogWzIwMTgtMDEtMDEsMjAxOC0wMS0wMikKK05PVElDRTogIGZwb19iZWZvcmVfc3RtdDog QkVGT1JFIElOU0VSVCBTVEFURU1FTlQ6CitOT1RJQ0U6ICAgIG9sZDogPE5VTEw+CitOT1RJQ0U6 ICAgIG5ldzogPE5VTEw+CitOT1RJQ0U6ICBmcG9fYmVmb3JlX3JvdzogQkVGT1JFIElOU0VSVCBS T1c6CitOT1RJQ0U6ICAgIG9sZDogPE5VTEw+CitOT1RJQ0U6ICAgIG5ldzogWzIwMTgtMDEtMDIs MjAyMC0wMS0wMSkKK05PVElDRTogIGZwb19hZnRlcl9pbnNlcnRfcm93OiBBRlRFUiBJTlNFUlQg Uk9XOgorTk9USUNFOiAgICBvbGQ6IDxOVUxMPgorTk9USUNFOiAgICBuZXc6ICgiWzEsMikiLCJb MjAxOC0wMS0wMiwyMDIwLTAxLTAxKSIsb25lKQorTk9USUNFOiAgZnBvX2FmdGVyX2luc2VydF9z dG10OiBBRlRFUiBJTlNFUlQgU1RBVEVNRU5UOgorTk9USUNFOiAgICBvbGQ6IDxOVUxMPgorTk9U SUNFOiAgICBuZXc6ICgiWzEsMikiLCJbMjAxOC0wMS0wMiwyMDIwLTAxLTAxKSIsb25lKQorTk9U SUNFOiAgZnBvX2FmdGVyX3VwZGF0ZV9yb3c6IEFGVEVSIFVQREFURSBST1c6CitOT1RJQ0U6ICAg IG9sZDogKCJbMSwyKSIsIlsyMDE4LTAxLTAxLDIwMjAtMDEtMDEpIixvbmUpCitOT1RJQ0U6ICAg IG5ldzogKCJbMSwyKSIsIlsyMDE4LTAxLTAxLDIwMTgtMDEtMDIpIixOVUxMX3RvXzIwMTgtMDEt MDEpCitOT1RJQ0U6ICBmcG9fYWZ0ZXJfdXBkYXRlX3N0bXQ6IEFGVEVSIFVQREFURSBTVEFURU1F TlQ6CitOT1RJQ0U6ICAgIG9sZDogKCJbMSwyKSIsIlsyMDE4LTAxLTAxLDIwMjAtMDEtMDEpIixv bmUpCitOT1RJQ0U6ICAgIG5ldzogKCJbMSwyKSIsIlsyMDE4LTAxLTAxLDIwMTgtMDEtMDIpIixO VUxMX3RvXzIwMTgtMDEtMDEpCitST0xMQkFDSzsKKy0tIERlZmVycmVkIHRyaWdnZXJzCistLSAo bXVzdCBiZSBDT05TVFJBSU5UIHRyaWdnZXJzIHRodXMgQUZURVIgUk9XIHdpdGggbm8gdHJhbnNp dGlvbiB0YWJsZXMpCitEUk9QIFRBQkxFIGZvcl9wb3J0aW9uX29mX3Rlc3Q7CitDUkVBVEUgVEFC TEUgZm9yX3BvcnRpb25fb2ZfdGVzdCAoCisgIGlkIGludDRyYW5nZSwKKyAgdmFsaWRfYXQgZGF0 ZXJhbmdlLAorICBuYW1lIHRleHQKKyk7CitJTlNFUlQgSU5UTyBmb3JfcG9ydGlvbl9vZl90ZXN0 IChpZCwgdmFsaWRfYXQsIG5hbWUpIFZBTFVFUworICAoJ1sxLDIpJywgJ1syMDE4LTAxLTAxLDIw MjAtMDEtMDEpJywgJ29uZScpOworQ1JFQVRFIENPTlNUUkFJTlQgVFJJR0dFUiBmcG9fYWZ0ZXJf aW5zZXJ0X3JvdworQUZURVIgSU5TRVJUIE9OIGZvcl9wb3J0aW9uX29mX3Rlc3QKK0RFRkVSUkFC TEUgSU5JVElBTExZIERFRkVSUkVECitGT1IgRUFDSCBST1cgRVhFQ1VURSBQUk9DRURVUkUgZHVt cF90cmlnZ2VyKGZhbHNlLCBmYWxzZSk7CitDUkVBVEUgQ09OU1RSQUlOVCBUUklHR0VSIGZwb19h ZnRlcl91cGRhdGVfcm93CitBRlRFUiBVUERBVEUgT04gZm9yX3BvcnRpb25fb2ZfdGVzdAorREVG RVJSQUJMRSBJTklUSUFMTFkgREVGRVJSRUQKK0ZPUiBFQUNIIFJPVyBFWEVDVVRFIFBST0NFRFVS RSBkdW1wX3RyaWdnZXIoZmFsc2UsIGZhbHNlKTsKK0NSRUFURSBDT05TVFJBSU5UIFRSSUdHRVIg ZnBvX2FmdGVyX2RlbGV0ZV9yb3cKK0FGVEVSIERFTEVURSBPTiBmb3JfcG9ydGlvbl9vZl90ZXN0 CitERUZFUlJBQkxFIElOSVRJQUxMWSBERUZFUlJFRAorRk9SIEVBQ0ggUk9XIEVYRUNVVEUgUFJP Q0VEVVJFIGR1bXBfdHJpZ2dlcihmYWxzZSwgZmFsc2UpOworQkVHSU47CitVUERBVEUgZm9yX3Bv cnRpb25fb2ZfdGVzdAorICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDE4LTAxLTE1 JyBUTyAnMjAxOS0wMS0wMScKKyAgU0VUIG5hbWUgPSAnMjAxOC0wMS0xNV90b18yMDE5LTAxLTAx JzsKK0NPTU1JVDsKK05PVElDRTogIGZwb19hZnRlcl9pbnNlcnRfcm93OiBBRlRFUiBJTlNFUlQg Uk9XOgorTk9USUNFOiAgICBvbGQ6IDxOVUxMPgorTk9USUNFOiAgICBuZXc6IFsyMDE4LTAxLTAx LDIwMTgtMDEtMTUpCitOT1RJQ0U6ICBmcG9fYWZ0ZXJfaW5zZXJ0X3JvdzogQUZURVIgSU5TRVJU IFJPVzoKK05PVElDRTogICAgb2xkOiA8TlVMTD4KK05PVElDRTogICAgbmV3OiBbMjAxOS0wMS0w MSwyMDIwLTAxLTAxKQorTk9USUNFOiAgZnBvX2FmdGVyX3VwZGF0ZV9yb3c6IEFGVEVSIFVQREFU RSBST1c6CitOT1RJQ0U6ICAgIG9sZDogWzIwMTgtMDEtMDEsMjAyMC0wMS0wMSkKK05PVElDRTog ICAgbmV3OiBbMjAxOC0wMS0xNSwyMDE5LTAxLTAxKQorQkVHSU47CitERUxFVEUgRlJPTSBmb3Jf cG9ydGlvbl9vZl90ZXN0CisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gTlVMTCBUTyAn MjAxOC0wMS0yMSc7CitDT01NSVQ7CitOT1RJQ0U6ICBmcG9fYWZ0ZXJfaW5zZXJ0X3JvdzogQUZU RVIgSU5TRVJUIFJPVzoKK05PVElDRTogICAgb2xkOiA8TlVMTD4KK05PVElDRTogICAgbmV3OiBb MjAxOC0wMS0yMSwyMDE5LTAxLTAxKQorTk9USUNFOiAgZnBvX2FmdGVyX2RlbGV0ZV9yb3c6IEFG VEVSIERFTEVURSBST1c6CitOT1RJQ0U6ICAgIG9sZDogWzIwMTgtMDEtMTUsMjAxOS0wMS0wMSkK K05PVElDRTogICAgbmV3OiA8TlVMTD4KK05PVElDRTogIGZwb19hZnRlcl9kZWxldGVfcm93OiBB RlRFUiBERUxFVEUgUk9XOgorTk9USUNFOiAgICBvbGQ6IFsyMDE4LTAxLTAxLDIwMTgtMDEtMTUp CitOT1RJQ0U6ICAgIG5ldzogPE5VTEw+CitCRUdJTjsKK1VQREFURSBmb3JfcG9ydGlvbl9vZl90 ZXN0CisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gTlVMTCBUTyAnMjAxOC0wMS0wMicK KyAgU0VUIG5hbWUgPSAnTlVMTF90b18yMDE4LTAxLTAxJzsKK0NPTU1JVDsKK1NFTEVDVCAqIEZS T00gZm9yX3BvcnRpb25fb2ZfdGVzdDsKKyAgaWQgICB8ICAgICAgICB2YWxpZF9hdCAgICAgICAg IHwgICAgICAgICAgIG5hbWUgICAgICAgICAgIAorLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgWzEsMikgfCBbMjAxOS0wMS0wMSwy MDIwLTAxLTAxKSB8IG9uZQorIFsxLDIpIHwgWzIwMTgtMDEtMjEsMjAxOS0wMS0wMSkgfCAyMDE4 LTAxLTE1X3RvXzIwMTktMDEtMDEKKygyIHJvd3MpCisKKy0tIHRlc3QgRk9SIFBPUlRJT04gT0Yg ZnJvbSB0cmlnZ2VycyBkdXJpbmcgRk9SIFBPUlRJT04gT0Y6CitEUk9QIFRBQkxFIGZvcl9wb3J0 aW9uX29mX3Rlc3Q7CitDUkVBVEUgVEFCTEUgZm9yX3BvcnRpb25fb2ZfdGVzdCAoCisgIGlkIGlu dDRyYW5nZSwKKyAgdmFsaWRfYXQgZGF0ZXJhbmdlLAorICBuYW1lIHRleHQKKyk7CitJTlNFUlQg SU5UTyBmb3JfcG9ydGlvbl9vZl90ZXN0IChpZCwgdmFsaWRfYXQsIG5hbWUpIFZBTFVFUworICAo J1sxLDIpJywgJ1syMDE4LTAxLTAxLDIwMjAtMDEtMDEpJywgJ29uZScpLAorICAoJ1syLDMpJywg J1syMDE4LTAxLTAxLDIwMjAtMDEtMDEpJywgJ3R3bycpLAorICAoJ1szLDQpJywgJ1syMDE4LTAx LTAxLDIwMjAtMDEtMDEpJywgJ3RocmVlJyksCisgICgnWzQsNSknLCAnWzIwMTgtMDEtMDEsMjAy MC0wMS0wMSknLCAnZm91cicpOworQ1JFQVRFIEZVTkNUSU9OIHRyZ19mcG9fdXBkYXRlKCkKK1JF VFVSTlMgVFJJR0dFUiBMQU5HVUFHRSBwbHBnc3FsIEFTCiskJAorQkVHSU4KKyAgSUYgcGdfdHJp Z2dlcl9kZXB0aCgpID0gMSBUSEVOCisgICAgVVBEQVRFIGZvcl9wb3J0aW9uX29mX3Rlc3QKKyAg ICAgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMTgtMDItMDEnIFRPICcyMDE4LTAz LTAxJworICAgICAgU0VUIG5hbWUgPSBDT05DQVQobmFtZSwgJ14nKQorICAgICAgV0hFUkUgaWQg PSBPTEQuaWQ7CisgIEVORCBJRjsKKyAgUkVUVVJOIENBU0UgV0hFTiAnVEdfT1AnID0gJ0RFTEVU RScgVEhFTiBPTEQgRUxTRSBORVcgRU5EOworRU5EOworJCQ7CitDUkVBVEUgRlVOQ1RJT04gdHJn X2Zwb19kZWxldGUoKQorUkVUVVJOUyBUUklHR0VSIExBTkdVQUdFIHBscGdzcWwgQVMKKyQkCitC RUdJTgorICBJRiBwZ190cmlnZ2VyX2RlcHRoKCkgPSAxIFRIRU4KKyAgICBERUxFVEUgRlJPTSBm b3JfcG9ydGlvbl9vZl90ZXN0CisgICAgICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcy MDE4LTAzLTAxJyBUTyAnMjAxOC0wNC0wMScKKyAgICAgIFdIRVJFIGlkID0gT0xELmlkOworICBF TkQgSUY7CisgIFJFVFVSTiBDQVNFIFdIRU4gJ1RHX09QJyA9ICdERUxFVEUnIFRIRU4gT0xEIEVM U0UgTkVXIEVORDsKK0VORDsKKyQkOworLS0gVVBEQVRFIEZPUiBQT1JUSU9OIE9GIGZyb20gYSB0 cmlnZ2VyIGZpcmVkIGJ5IFVQREFURSBGT1IgUE9SVElPTiBPRgorQ1JFQVRFIFRSSUdHRVIgZnBv X2FmdGVyX3VwZGF0ZV9yb3cKK0FGVEVSIFVQREFURSBPTiBmb3JfcG9ydGlvbl9vZl90ZXN0CitG T1IgRUFDSCBST1cgRVhFQ1VURSBQUk9DRURVUkUgdHJnX2Zwb191cGRhdGUoKTsKK1VQREFURSBm b3JfcG9ydGlvbl9vZl90ZXN0CisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMTgt MDUtMDEnIFRPICcyMDE4LTA2LTAxJworICBTRVQgbmFtZSA9IENPTkNBVChuYW1lLCAnKicpCisg IFdIRVJFIGlkID0gJ1sxLDIpJzsKK1NFTEVDVCAqIEZST00gZm9yX3BvcnRpb25fb2ZfdGVzdCBX SEVSRSBpZCA9ICdbMSwyKScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworICBpZCAgIHwgICAgICAg IHZhbGlkX2F0ICAgICAgICAgfCBuYW1lIAorLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tKy0tLS0tLQorIFsxLDIpIHwgWzIwMTgtMDEtMDEsMjAxOC0wMi0wMSkgfCBvbmUKKyBbMSwy KSB8IFsyMDE4LTAyLTAxLDIwMTgtMDMtMDEpIHwgb25lXgorIFsxLDIpIHwgWzIwMTgtMDMtMDEs MjAxOC0wNS0wMSkgfCBvbmUKKyBbMSwyKSB8IFsyMDE4LTA1LTAxLDIwMTgtMDYtMDEpIHwgb25l KgorIFsxLDIpIHwgWzIwMTgtMDYtMDEsMjAyMC0wMS0wMSkgfCBvbmUKKyg1IHJvd3MpCisKK0RS T1AgVFJJR0dFUiBmcG9fYWZ0ZXJfdXBkYXRlX3JvdyBPTiBmb3JfcG9ydGlvbl9vZl90ZXN0Owor LS0gVVBEQVRFIEZPUiBQT1JUSU9OIE9GIGZyb20gYSB0cmlnZ2VyIGZpcmVkIGJ5IERFTEVURSBG T1IgUE9SVElPTiBPRgorQ1JFQVRFIFRSSUdHRVIgZnBvX2FmdGVyX2RlbGV0ZV9yb3cKK0FGVEVS IERFTEVURSBPTiBmb3JfcG9ydGlvbl9vZl90ZXN0CitGT1IgRUFDSCBST1cgRVhFQ1VURSBQUk9D RURVUkUgdHJnX2Zwb191cGRhdGUoKTsKK0RFTEVURSBGUk9NIGZvcl9wb3J0aW9uX29mX3Rlc3QK KyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAxOC0wNS0wMScgVE8gJzIwMTgtMDYt MDEnCisgIFdIRVJFIGlkID0gJ1syLDMpJzsKK1NFTEVDVCAqIEZST00gZm9yX3BvcnRpb25fb2Zf dGVzdCBXSEVSRSBpZCA9ICdbMiwzKScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworICBpZCAgIHwg ICAgICAgIHZhbGlkX2F0ICAgICAgICAgfCBuYW1lIAorLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tKy0tLS0tLQorIFsyLDMpIHwgWzIwMTgtMDEtMDEsMjAxOC0wMi0wMSkgfCB0d28K KyBbMiwzKSB8IFsyMDE4LTAyLTAxLDIwMTgtMDMtMDEpIHwgdHdvXgorIFsyLDMpIHwgWzIwMTgt MDMtMDEsMjAxOC0wNS0wMSkgfCB0d28KKyBbMiwzKSB8IFsyMDE4LTA2LTAxLDIwMjAtMDEtMDEp IHwgdHdvCisoNCByb3dzKQorCitEUk9QIFRSSUdHRVIgZnBvX2FmdGVyX2RlbGV0ZV9yb3cgT04g Zm9yX3BvcnRpb25fb2ZfdGVzdDsKKy0tIERFTEVURSBGT1IgUE9SVElPTiBPRiBmcm9tIGEgdHJp Z2dlciBmaXJlZCBieSBVUERBVEUgRk9SIFBPUlRJT04gT0YKK0NSRUFURSBUUklHR0VSIGZwb19h ZnRlcl91cGRhdGVfcm93CitBRlRFUiBVUERBVEUgT04gZm9yX3BvcnRpb25fb2ZfdGVzdAorRk9S IEVBQ0ggUk9XIEVYRUNVVEUgUFJPQ0VEVVJFIHRyZ19mcG9fZGVsZXRlKCk7CitVUERBVEUgZm9y X3BvcnRpb25fb2ZfdGVzdAorICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDE4LTA1 LTAxJyBUTyAnMjAxOC0wNi0wMScKKyAgU0VUIG5hbWUgPSBDT05DQVQobmFtZSwgJyonKQorICBX SEVSRSBpZCA9ICdbMyw0KSc7CitTRUxFQ1QgKiBGUk9NIGZvcl9wb3J0aW9uX29mX3Rlc3QgV0hF UkUgaWQgPSAnWzMsNCknIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKyAgaWQgICB8ICAgICAgICB2 YWxpZF9hdCAgICAgICAgIHwgIG5hbWUgIAorLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tKy0tLS0tLS0tCisgWzMsNCkgfCBbMjAxOC0wMS0wMSwyMDE4LTAzLTAxKSB8IHRocmVlCisg WzMsNCkgfCBbMjAxOC0wNC0wMSwyMDE4LTA1LTAxKSB8IHRocmVlCisgWzMsNCkgfCBbMjAxOC0w NS0wMSwyMDE4LTA2LTAxKSB8IHRocmVlKgorIFszLDQpIHwgWzIwMTgtMDYtMDEsMjAyMC0wMS0w MSkgfCB0aHJlZQorKDQgcm93cykKKworRFJPUCBUUklHR0VSIGZwb19hZnRlcl91cGRhdGVfcm93 IE9OIGZvcl9wb3J0aW9uX29mX3Rlc3Q7CistLSBERUxFVEUgRk9SIFBPUlRJT04gT0YgZnJvbSBh IHRyaWdnZXIgZmlyZWQgYnkgREVMRVRFIEZPUiBQT1JUSU9OIE9GCitDUkVBVEUgVFJJR0dFUiBm cG9fYWZ0ZXJfZGVsZXRlX3JvdworQUZURVIgREVMRVRFIE9OIGZvcl9wb3J0aW9uX29mX3Rlc3QK K0ZPUiBFQUNIIFJPVyBFWEVDVVRFIFBST0NFRFVSRSB0cmdfZnBvX2RlbGV0ZSgpOworREVMRVRF IEZST00gZm9yX3BvcnRpb25fb2ZfdGVzdAorICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9N ICcyMDE4LTA1LTAxJyBUTyAnMjAxOC0wNi0wMScKKyAgV0hFUkUgaWQgPSAnWzQsNSknOworU0VM RUNUICogRlJPTSBmb3JfcG9ydGlvbl9vZl90ZXN0IFdIRVJFIGlkID0gJ1s0LDUpJyBPUkRFUiBC WSBpZCwgdmFsaWRfYXQ7CisgIGlkICAgfCAgICAgICAgdmFsaWRfYXQgICAgICAgICB8IG5hbWUg CistLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tCisgWzQsNSkgfCBbMjAx OC0wMS0wMSwyMDE4LTAzLTAxKSB8IGZvdXIKKyBbNCw1KSB8IFsyMDE4LTA0LTAxLDIwMTgtMDUt MDEpIHwgZm91cgorIFs0LDUpIHwgWzIwMTgtMDYtMDEsMjAyMC0wMS0wMSkgfCBmb3VyCisoMyBy b3dzKQorCitEUk9QIFRSSUdHRVIgZnBvX2FmdGVyX2RlbGV0ZV9yb3cgT04gZm9yX3BvcnRpb25f b2ZfdGVzdDsKKy0tIFRlc3Qgd2l0aCBtdWx0aXJhbmdlcworQ1JFQVRFIFRBQkxFIGZvcl9wb3J0 aW9uX29mX3Rlc3QyICgKKyAgaWQgaW50NHJhbmdlIE5PVCBOVUxMLAorICB2YWxpZF9hdCBkYXRl bXVsdGlyYW5nZSBOT1QgTlVMTCwKKyAgbmFtZSB0ZXh0IE5PVCBOVUxMLAorICBDT05TVFJBSU5U IGZvcl9wb3J0aW9uX29mX3Rlc3QyX3BrIFBSSU1BUlkgS0VZIChpZCwgdmFsaWRfYXQgV0lUSE9V VCBPVkVSTEFQUykKKyk7CitJTlNFUlQgSU5UTyBmb3JfcG9ydGlvbl9vZl90ZXN0MiAoaWQsIHZh bGlkX2F0LCBuYW1lKSBWQUxVRVMKKyAgKCdbMSwyKScsIGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5n ZSgnMjAxOC0wMS0wMicsICcyMDE4LTAyLTAzKScpLCBkYXRlcmFuZ2UoJzIwMTgtMDItMDQnLCAn MjAxOC0wMy0wMycpKSwgJ29uZScpLAorICAoJ1sxLDIpJywgZGF0ZW11bHRpcmFuZ2UoZGF0ZXJh bmdlKCcyMDE4LTAzLTAzJywgJzIwMTgtMDQtMDQpJykpLCAnb25lJyksCisgICgnWzIsMyknLCBk YXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAxOC0wNS0wMSknKSksICd0 d28nKSwKKyAgKCdbMyw0KScsIGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAxOC0wMS0wMScs IG51bGwpKSwgJ3RocmVlJyk7CisgIDsKK1VQREFURSBmb3JfcG9ydGlvbl9vZl90ZXN0MgorICBG T1IgUE9SVElPTiBPRiB2YWxpZF9hdCAoZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDE4LTAx LTEwJywgJzIwMTgtMDItMTAnKSwgZGF0ZXJhbmdlKCcyMDE4LTAzLTA1JywgJzIwMTgtMDUtMDEn KSkpCisgIFNFVCBuYW1lID0gJ29uZV4xJworICBXSEVSRSBpZCA9ICdbMSwyKSc7CitERUxFVEUg RlJPTSBmb3JfcG9ydGlvbl9vZl90ZXN0MgorICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCAoZGF0 ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDE4LTAxLTE1JywgJzIwMTgtMDItMTUnKSwgZGF0ZXJh bmdlKCcyMDE4LTAzLTAxJywgJzIwMTgtMDMtMTUnKSkpCisgIFdIRVJFIGlkID0gJ1syLDMpJzsK K1NFTEVDVCAqIEZST00gZm9yX3BvcnRpb25fb2ZfdGVzdDIgT1JERVIgQlkgaWQsIHZhbGlkX2F0 OworICBpZCAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWxpZF9hdCAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IG5hbWUgIAorLS0tLS0tLSstLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0rLS0tLS0tLQorIFsxLDIpIHwge1syMDE4LTAxLTAyLDIwMTgtMDEtMTApLFsyMDE4 LTAyLTEwLDIwMTgtMDMtMDMpfSAgICAgICAgICAgICAgICAgICAgICAgICB8IG9uZQorIFsxLDIp IHwge1syMDE4LTAxLTEwLDIwMTgtMDItMDMpLFsyMDE4LTAyLTA0LDIwMTgtMDItMTApfSAgICAg ICAgICAgICAgICAgICAgICAgICB8IG9uZV4xCisgWzEsMikgfCB7WzIwMTgtMDMtMDMsMjAxOC0w My0wNSl9ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwg b25lCisgWzEsMikgfCB7WzIwMTgtMDMtMDUsMjAxOC0wNC0wNCl9ICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgb25lXjEKKyBbMiwzKSB8IHtbMjAxOC0w MS0wMSwyMDE4LTAxLTE1KSxbMjAxOC0wMi0xNSwyMDE4LTAzLTAxKSxbMjAxOC0wMy0xNSwyMDE4 LTA1LTAxKX0gfCB0d28KKyBbMyw0KSB8IHtbMjAxOC0wMS0wMSwpfSAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCB0aHJlZQorKDYgcm93 cykKKworRFJPUCBUQUJMRSBmb3JfcG9ydGlvbl9vZl90ZXN0MjsKKy0tIFRlc3Qgd2l0aCBhIGN1 c3RvbSByYW5nZSB0eXBlCitDUkVBVEUgVFlQRSBteWRhdGVyYW5nZSBBUyByYW5nZShzdWJ0eXBl PWRhdGUpOworQ1JFQVRFIFRBQkxFIGZvcl9wb3J0aW9uX29mX3Rlc3QyICgKKyAgaWQgaW50NHJh bmdlIE5PVCBOVUxMLAorICB2YWxpZF9hdCBteWRhdGVyYW5nZSBOT1QgTlVMTCwKKyAgbmFtZSB0 ZXh0IE5PVCBOVUxMLAorICBDT05TVFJBSU5UIGZvcl9wb3J0aW9uX29mX3Rlc3QyX3BrIFBSSU1B UlkgS0VZIChpZCwgdmFsaWRfYXQgV0lUSE9VVCBPVkVSTEFQUykKKyk7CitJTlNFUlQgSU5UTyBm b3JfcG9ydGlvbl9vZl90ZXN0MiAoaWQsIHZhbGlkX2F0LCBuYW1lKSBWQUxVRVMKKyAgKCdbMSwy KScsICdbMjAxOC0wMS0wMiwyMDE4LTAyLTAzKScsICdvbmUnKSwKKyAgKCdbMSwyKScsICdbMjAx OC0wMi0wMywyMDE4LTAzLTAzKScsICdvbmUnKSwKKyAgKCdbMSwyKScsICdbMjAxOC0wMy0wMywy MDE4LTA0LTA0KScsICdvbmUnKSwKKyAgKCdbMiwzKScsICdbMjAxOC0wMS0wMSwyMDE4LTA1LTAx KScsICd0d28nKSwKKyAgKCdbMyw0KScsICdbMjAxOC0wMS0wMSwpJywgJ3RocmVlJyk7CisgIDsK K1VQREFURSBmb3JfcG9ydGlvbl9vZl90ZXN0MgorICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBG Uk9NICcyMDE4LTAxLTEwJyBUTyAnMjAxOC0wMi0xMCcKKyAgU0VUIG5hbWUgPSAnb25lXjEnCisg IFdIRVJFIGlkID0gJ1sxLDIpJzsKK0RFTEVURSBGUk9NIGZvcl9wb3J0aW9uX29mX3Rlc3QyCisg IEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMTgtMDEtMTUnIFRPICcyMDE4LTAyLTE1 JworICBXSEVSRSBpZCA9ICdbMiwzKSc7CitTRUxFQ1QgKiBGUk9NIGZvcl9wb3J0aW9uX29mX3Rl c3QyIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKyAgaWQgICB8ICAgICAgICB2YWxpZF9hdCAgICAg ICAgIHwgbmFtZSAgCistLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLQor IFsxLDIpIHwgWzIwMTgtMDEtMDIsMjAxOC0wMS0xMCkgfCBvbmUKKyBbMSwyKSB8IFsyMDE4LTAx LTEwLDIwMTgtMDItMDMpIHwgb25lXjEKKyBbMSwyKSB8IFsyMDE4LTAyLTAzLDIwMTgtMDItMTAp IHwgb25lXjEKKyBbMSwyKSB8IFsyMDE4LTAyLTEwLDIwMTgtMDMtMDMpIHwgb25lCisgWzEsMikg fCBbMjAxOC0wMy0wMywyMDE4LTA0LTA0KSB8IG9uZQorIFsyLDMpIHwgWzIwMTgtMDEtMDEsMjAx OC0wMS0xNSkgfCB0d28KKyBbMiwzKSB8IFsyMDE4LTAyLTE1LDIwMTgtMDUtMDEpIHwgdHdvCisg WzMsNCkgfCBbMjAxOC0wMS0wMSwpICAgICAgICAgICB8IHRocmVlCisoOCByb3dzKQorCitEUk9Q IFRBQkxFIGZvcl9wb3J0aW9uX29mX3Rlc3QyOworRFJPUCBUWVBFIG15ZGF0ZXJhbmdlOworLS0g VGVzdCBGT1IgUE9SVElPTiBPRiBhZ2FpbnN0IGEgcGFydGl0aW9uZWQgdGFibGUuCistLSB0ZW1w b3JhbF9wYXJ0aXRpb25lZF8xIGhhcyB0aGUgc2FtZSBhdHRudW1zIGFzIHRoZSByb290CistLSB0 ZW1wb3JhbF9wYXJ0aXRpb25lZF8zIGhhcyB0aGUgZGlmZmVyZW50IGF0dG51bXMgZnJvbSB0aGUg cm9vdAorLS0gdGVtcG9yYWxfcGFydGl0aW9uZWRfNSBoYXMgdGhlIGRpZmZlcmVudCBhdHRudW1z IHRvbywgYnV0IHJldmVyc2VkCitDUkVBVEUgVEFCTEUgdGVtcG9yYWxfcGFydGl0aW9uZWQgKAor ICBpZCBpbnQ0cmFuZ2UsCisgIHZhbGlkX2F0IGRhdGVyYW5nZSwKKyAgbmFtZSB0ZXh0LAorICBD T05TVFJBSU5UIHRlbXBvcmFsX3Bhcml0aW9uZWRfdXEgVU5JUVVFIChpZCwgdmFsaWRfYXQgV0lU SE9VVCBPVkVSTEFQUykKKykgUEFSVElUSU9OIEJZIExJU1QgKGlkKTsKK0NSRUFURSBUQUJMRSB0 ZW1wb3JhbF9wYXJ0aXRpb25lZF8xIFBBUlRJVElPTiBPRiB0ZW1wb3JhbF9wYXJ0aXRpb25lZCBG T1IgVkFMVUVTIElOICgnWzEsMiknLCAnWzIsMyknKTsKK0NSRUFURSBUQUJMRSB0ZW1wb3JhbF9w YXJ0aXRpb25lZF8zIFBBUlRJVElPTiBPRiB0ZW1wb3JhbF9wYXJ0aXRpb25lZCBGT1IgVkFMVUVT IElOICgnWzMsNCknLCAnWzQsNSknKTsKK0NSRUFURSBUQUJMRSB0ZW1wb3JhbF9wYXJ0aXRpb25l ZF81IFBBUlRJVElPTiBPRiB0ZW1wb3JhbF9wYXJ0aXRpb25lZCBGT1IgVkFMVUVTIElOICgnWzUs NiknLCAnWzYsNyknKTsKK0FMVEVSIFRBQkxFIHRlbXBvcmFsX3BhcnRpdGlvbmVkIERFVEFDSCBQ QVJUSVRJT04gdGVtcG9yYWxfcGFydGl0aW9uZWRfMzsKK0FMVEVSIFRBQkxFIHRlbXBvcmFsX3Bh cnRpdGlvbmVkXzMgRFJPUCBDT0xVTU4gaWQsIERST1AgQ09MVU1OIHZhbGlkX2F0OworQUxURVIg VEFCTEUgdGVtcG9yYWxfcGFydGl0aW9uZWRfMyBBREQgQ09MVU1OIGlkIGludDRyYW5nZSBOT1Qg TlVMTCwgQUREIENPTFVNTiB2YWxpZF9hdCBkYXRlcmFuZ2UgTk9UIE5VTEw7CitBTFRFUiBUQUJM RSB0ZW1wb3JhbF9wYXJ0aXRpb25lZCBBVFRBQ0ggUEFSVElUSU9OIHRlbXBvcmFsX3BhcnRpdGlv bmVkXzMgRk9SIFZBTFVFUyBJTiAoJ1szLDQpJywgJ1s0LDUpJyk7CitBTFRFUiBUQUJMRSB0ZW1w b3JhbF9wYXJ0aXRpb25lZCBERVRBQ0ggUEFSVElUSU9OIHRlbXBvcmFsX3BhcnRpdGlvbmVkXzU7 CitBTFRFUiBUQUJMRSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF81IERST1AgQ09MVU1OIGlkLCBEUk9Q IENPTFVNTiB2YWxpZF9hdDsKK0FMVEVSIFRBQkxFIHRlbXBvcmFsX3BhcnRpdGlvbmVkXzUgQURE IENPTFVNTiB2YWxpZF9hdCBkYXRlcmFuZ2UgTk9UIE5VTEwsIEFERCBDT0xVTU4gaWQgaW50NHJh bmdlIE5PVCBOVUxMOworQUxURVIgVEFCTEUgdGVtcG9yYWxfcGFydGl0aW9uZWQgQVRUQUNIIFBB UlRJVElPTiB0ZW1wb3JhbF9wYXJ0aXRpb25lZF81IEZPUiBWQUxVRVMgSU4gKCdbNSw2KScsICdb Niw3KScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGFydGl0aW9uZWQgKGlkLCB2YWxpZF9hdCwg bmFtZSkgVkFMVUVTCisgICgnWzEsMiknLCBkYXRlcmFuZ2UoJzIwMDAtMDEtMDEnLCAnMjAxMC0w MS0wMScpLCAnb25lJyksCisgICgnWzMsNCknLCBkYXRlcmFuZ2UoJzIwMDAtMDEtMDEnLCAnMjAx MC0wMS0wMScpLCAndGhyZWUnKSwKKyAgKCdbNSw2KScsIGRhdGVyYW5nZSgnMjAwMC0wMS0wMScs ICcyMDEwLTAxLTAxJyksICdmaXZlJyk7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX3BhcnRpdGlv bmVkOworICBpZCAgIHwgICAgICAgIHZhbGlkX2F0ICAgICAgICAgfCBuYW1lICAKKy0tLS0tLS0r LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tCisgWzEsMikgfCBbMjAwMC0wMS0wMSwy MDEwLTAxLTAxKSB8IG9uZQorIFszLDQpIHwgWzIwMDAtMDEtMDEsMjAxMC0wMS0wMSkgfCB0aHJl ZQorIFs1LDYpIHwgWzIwMDAtMDEtMDEsMjAxMC0wMS0wMSkgfCBmaXZlCisoMyByb3dzKQorCist LSBVcGRhdGUgd2l0aG91dCBtb3Zpbmcgd2l0aGluIHBhcnRpdGlvbiAxCitVUERBVEUgdGVtcG9y YWxfcGFydGl0aW9uZWQgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAwMC0wMy0wMScg VE8gJzIwMDAtMDQtMDEnCisgIFNFVCBuYW1lID0gJ29uZV4xJworICBXSEVSRSBpZCA9ICdbMSwy KSc7CistLSBVcGRhdGUgd2l0aG91dCBtb3Zpbmcgd2l0aGluIHBhcnRpdGlvbiAzCitVUERBVEUg dGVtcG9yYWxfcGFydGl0aW9uZWQgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAwMC0w My0wMScgVE8gJzIwMDAtMDQtMDEnCisgIFNFVCBuYW1lID0gJ3RocmVlXjEnCisgIFdIRVJFIGlk ID0gJ1szLDQpJzsKKy0tIFVwZGF0ZSB3aXRob3V0IG1vdmluZyB3aXRoaW4gcGFydGl0aW9uIDUK K1VQREFURSB0ZW1wb3JhbF9wYXJ0aXRpb25lZCBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9N ICcyMDAwLTAzLTAxJyBUTyAnMjAwMC0wNC0wMScKKyAgU0VUIG5hbWUgPSAnZml2ZV4xJworICBX SEVSRSBpZCA9ICdbNSw2KSc7CistLSBNb3ZlIGZyb20gcGFydGl0aW9uIDEgdG8gcGFydGl0aW9u IDMKK1VQREFURSB0ZW1wb3JhbF9wYXJ0aXRpb25lZCBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBG Uk9NICcyMDAwLTA2LTAxJyBUTyAnMjAwMC0wNy0wMScKKyAgU0VUIG5hbWUgPSAnb25lXjInLAor ICAgICAgaWQgPSAnWzQsNSknCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKy0tIE1vdmUgZnJvbSBw YXJ0aXRpb24gMyB0byBwYXJ0aXRpb24gMQorVVBEQVRFIHRlbXBvcmFsX3BhcnRpdGlvbmVkIEZP UiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMDAtMDYtMDEnIFRPICcyMDAwLTA3LTAxJwor ICBTRVQgbmFtZSA9ICd0aHJlZV4yJywKKyAgICAgIGlkID0gJ1syLDMpJworICBXSEVSRSBpZCA9 ICdbMyw0KSc7CistLSBNb3ZlIGZyb20gcGFydGl0aW9uIDUgdG8gcGFydGl0aW9uIDMKK1VQREFU RSB0ZW1wb3JhbF9wYXJ0aXRpb25lZCBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDAw LTA2LTAxJyBUTyAnMjAwMC0wNy0wMScKKyAgU0VUIG5hbWUgPSAnZml2ZV4yJywKKyAgICAgIGlk ID0gJ1szLDQpJworICBXSEVSRSBpZCA9ICdbNSw2KSc7CistLSBVcGRhdGUgYWxsIHBhcnRpdGlv bnMgYXQgb25jZSAoZWFjaCB3aXRoIGxlZnRvdmVycykKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxf cGFydGl0aW9uZWQgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworICBpZCAgIHwgICAgICAgIHZhbGlk X2F0ICAgICAgICAgfCAgbmFtZSAgIAorLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t Ky0tLS0tLS0tLQorIFsxLDIpIHwgWzIwMDAtMDEtMDEsMjAwMC0wMy0wMSkgfCBvbmUKKyBbMSwy KSB8IFsyMDAwLTAzLTAxLDIwMDAtMDQtMDEpIHwgb25lXjEKKyBbMSwyKSB8IFsyMDAwLTA0LTAx LDIwMDAtMDYtMDEpIHwgb25lCisgWzEsMikgfCBbMjAwMC0wNy0wMSwyMDEwLTAxLTAxKSB8IG9u ZQorIFsyLDMpIHwgWzIwMDAtMDYtMDEsMjAwMC0wNy0wMSkgfCB0aHJlZV4yCisgWzMsNCkgfCBb MjAwMC0wMS0wMSwyMDAwLTAzLTAxKSB8IHRocmVlCisgWzMsNCkgfCBbMjAwMC0wMy0wMSwyMDAw LTA0LTAxKSB8IHRocmVlXjEKKyBbMyw0KSB8IFsyMDAwLTA0LTAxLDIwMDAtMDYtMDEpIHwgdGhy ZWUKKyBbMyw0KSB8IFsyMDAwLTA2LTAxLDIwMDAtMDctMDEpIHwgZml2ZV4yCisgWzMsNCkgfCBb MjAwMC0wNy0wMSwyMDEwLTAxLTAxKSB8IHRocmVlCisgWzQsNSkgfCBbMjAwMC0wNi0wMSwyMDAw LTA3LTAxKSB8IG9uZV4yCisgWzUsNikgfCBbMjAwMC0wMS0wMSwyMDAwLTAzLTAxKSB8IGZpdmUK KyBbNSw2KSB8IFsyMDAwLTAzLTAxLDIwMDAtMDQtMDEpIHwgZml2ZV4xCisgWzUsNikgfCBbMjAw MC0wNC0wMSwyMDAwLTA2LTAxKSB8IGZpdmUKKyBbNSw2KSB8IFsyMDAwLTA3LTAxLDIwMTAtMDEt MDEpIHwgZml2ZQorKDE1IHJvd3MpCisKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfcGFydGl0aW9u ZWRfMSBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisgIGlkICAgfCAgICAgICAgdmFsaWRfYXQgICAg ICAgICB8ICBuYW1lICAgCistLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0t LS0tCisgWzEsMikgfCBbMjAwMC0wMS0wMSwyMDAwLTAzLTAxKSB8IG9uZQorIFsxLDIpIHwgWzIw MDAtMDMtMDEsMjAwMC0wNC0wMSkgfCBvbmVeMQorIFsxLDIpIHwgWzIwMDAtMDQtMDEsMjAwMC0w Ni0wMSkgfCBvbmUKKyBbMSwyKSB8IFsyMDAwLTA3LTAxLDIwMTAtMDEtMDEpIHwgb25lCisgWzIs MykgfCBbMjAwMC0wNi0wMSwyMDAwLTA3LTAxKSB8IHRocmVlXjIKKyg1IHJvd3MpCisKK1NFTEVD VCAqIEZST00gdGVtcG9yYWxfcGFydGl0aW9uZWRfMyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7Cisg IG5hbWUgICB8ICBpZCAgIHwgICAgICAgIHZhbGlkX2F0ICAgICAgICAgCistLS0tLS0tLS0rLS0t LS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgdGhyZWUgICB8IFszLDQpIHwgWzIwMDAt MDEtMDEsMjAwMC0wMy0wMSkKKyB0aHJlZV4xIHwgWzMsNCkgfCBbMjAwMC0wMy0wMSwyMDAwLTA0 LTAxKQorIHRocmVlICAgfCBbMyw0KSB8IFsyMDAwLTA0LTAxLDIwMDAtMDYtMDEpCisgZml2ZV4y ICB8IFszLDQpIHwgWzIwMDAtMDYtMDEsMjAwMC0wNy0wMSkKKyB0aHJlZSAgIHwgWzMsNCkgfCBb MjAwMC0wNy0wMSwyMDEwLTAxLTAxKQorIG9uZV4yICAgfCBbNCw1KSB8IFsyMDAwLTA2LTAxLDIw MDAtMDctMDEpCisoNiByb3dzKQorCitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX3BhcnRpdGlvbmVk XzUgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworICBuYW1lICB8ICAgICAgICB2YWxpZF9hdCAgICAg ICAgIHwgIGlkICAgCistLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0K KyBmaXZlICAgfCBbMjAwMC0wMS0wMSwyMDAwLTAzLTAxKSB8IFs1LDYpCisgZml2ZV4xIHwgWzIw MDAtMDMtMDEsMjAwMC0wNC0wMSkgfCBbNSw2KQorIGZpdmUgICB8IFsyMDAwLTA0LTAxLDIwMDAt MDYtMDEpIHwgWzUsNikKKyBmaXZlICAgfCBbMjAwMC0wNy0wMSwyMDEwLTAxLTAxKSB8IFs1LDYp CisoNCByb3dzKQorCitEUk9QIFRBQkxFIHRlbXBvcmFsX3BhcnRpdGlvbmVkOworUkVTRVQgZGF0 ZXN0eWxlOwpkaWZmIC0tZ2l0IGEvc3JjL3Rlc3QvcmVncmVzcy9leHBlY3RlZC9wcml2aWxlZ2Vz Lm91dCBiL3NyYy90ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvcHJpdmlsZWdlcy5vdXQKaW5kZXggZGFh ZmFhOTRmZGUuLjlmZjhlN2ZiMzYzIDEwMDY0NAotLS0gYS9zcmMvdGVzdC9yZWdyZXNzL2V4cGVj dGVkL3ByaXZpbGVnZXMub3V0CisrKyBiL3NyYy90ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvcHJpdmls ZWdlcy5vdXQKQEAgLTExMTksNiArMTExOSwyNCBAQCBFUlJPUjogIG51bGwgdmFsdWUgaW4gY29s dW1uICJiIiBvZiByZWxhdGlvbiAiZXJydHN0X3BhcnRfMiIgdmlvbGF0ZXMgbm90LW51bGwgYwog REVUQUlMOiAgRmFpbGluZyByb3cgY29udGFpbnMgKGEsIGIsIGMpID0gKGFhYWEsIG51bGwsIGNj YykuCiBTRVQgU0VTU0lPTiBBVVRIT1JJWkFUSU9OIHJlZ3Jlc3NfcHJpdl91c2VyMTsKIERST1Ag VEFCTEUgZXJydHN0OworLS0gdGVzdCBjb2x1bW4tbGV2ZWwgcHJpdmlsZWdlcyBvbiB0aGUgcmFu Z2UgdXNlZCBpbiBGT1IgUE9SVElPTiBPRgorU0VUIFNFU1NJT04gQVVUSE9SSVpBVElPTiByZWdy ZXNzX3ByaXZfdXNlcjE7CitDUkVBVEUgVEFCTEUgdDEgKAorICBjMSBpbnQ0cmFuZ2UsCisgIHZh bGlkX2F0IHRzcmFuZ2UsCisJQ09OU1RSQUlOVCB0MXBrIFBSSU1BUlkgS0VZIChjMSwgdmFsaWRf YXQgV0lUSE9VVCBPVkVSTEFQUykKKyk7CitHUkFOVCBTRUxFQ1QgT04gdDEgVE8gcmVncmVzc19w cml2X3VzZXIyOworR1JBTlQgU0VMRUNUIE9OIHQxIFRPIHJlZ3Jlc3NfcHJpdl91c2VyMzsKK0dS QU5UIFVQREFURSAoYzEpIE9OIHQxIFRPIHJlZ3Jlc3NfcHJpdl91c2VyMjsKK0dSQU5UIFVQREFU RSAoYzEsIHZhbGlkX2F0KSBPTiB0MSBUTyByZWdyZXNzX3ByaXZfdXNlcjM7CitTRVQgU0VTU0lP TiBBVVRIT1JJWkFUSU9OIHJlZ3Jlc3NfcHJpdl91c2VyMjsKK1VQREFURSB0MSBGT1IgUE9SVElP TiBPRiB2YWxpZF9hdCBGUk9NICcyMDAwLTAxLTAxJyBUTyAnMjAwMS0wMS0wMScgU0VUIGMxID0g J1syLDMpJzsKK0VSUk9SOiAgcGVybWlzc2lvbiBkZW5pZWQgZm9yIHRhYmxlIHQxCitTRVQgU0VT U0lPTiBBVVRIT1JJWkFUSU9OIHJlZ3Jlc3NfcHJpdl91c2VyMzsKK1VQREFURSB0MSBGT1IgUE9S VElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDAwLTAxLTAxJyBUTyAnMjAwMS0wMS0wMScgU0VUIGMx ID0gJ1syLDMpJzsKK1NFVCBTRVNTSU9OIEFVVEhPUklaQVRJT04gcmVncmVzc19wcml2X3VzZXIx OworRFJPUCBUQUJMRSB0MTsKIC0tIHRlc3QgY29sdW1uLWxldmVsIHByaXZpbGVnZXMgd2hlbiBp bnZvbHZlZCB3aXRoIERFTEVURQogU0VUIFNFU1NJT04gQVVUSE9SSVpBVElPTiByZWdyZXNzX3By aXZfdXNlcjE7CiBBTFRFUiBUQUJMRSBhdGVzdDYgQUREIENPTFVNTiB0aHJlZSBpbnRlZ2VyOwpk aWZmIC0tZ2l0IGEvc3JjL3Rlc3QvcmVncmVzcy9leHBlY3RlZC91cGRhdGFibGVfdmlld3Mub3V0 IGIvc3JjL3Rlc3QvcmVncmVzcy9leHBlY3RlZC91cGRhdGFibGVfdmlld3Mub3V0CmluZGV4IDAz ZGY3ZTc1YjdiLi40ZmI5MjhkNTYxZCAxMDA2NDQKLS0tIGEvc3JjL3Rlc3QvcmVncmVzcy9leHBl Y3RlZC91cGRhdGFibGVfdmlld3Mub3V0CisrKyBiL3NyYy90ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQv dXBkYXRhYmxlX3ZpZXdzLm91dApAQCAtMzcwMCw2ICszNzAwLDM4IEBAIHNlbGVjdCAqIGZyb20g dXZfaW9jdV90YWI7CiAKIGRyb3AgdmlldyB1dl9pb2N1X3ZpZXc7CiBkcm9wIHRhYmxlIHV2X2lv Y3VfdGFiOworLS0gQ2hlY2sgVVBEQVRFIEZPUiBQT1JUSU9OIE9GIHdvcmtzIGNvcnJlY3RseQor Y3JlYXRlIHRhYmxlIHV2X2Zwb190YWIgKGlkIGludDRyYW5nZSwgdmFsaWRfYXQgdHNyYW5nZSwg YiBmbG9hdCwKKyAgICBjb25zdHJhaW50IHBrX3V2X2Zwb190YWIgcHJpbWFyeSBrZXkgKGlkLCB2 YWxpZF9hdCB3aXRob3V0IG92ZXJsYXBzKSk7CitpbnNlcnQgaW50byB1dl9mcG9fdGFiIHZhbHVl cyAoJ1sxLDFdJywgJ1syMDIwLTAxLTAxLCAyMDMwLTAxLTAxKScsIDApOworY3JlYXRlIHZpZXcg dXZfZnBvX3ZpZXcgYXMKKyAgICBzZWxlY3QgYiwgYisxIGFzIGMsIHZhbGlkX2F0LCBpZCwgJzIu MCc6OnRleHQgYXMgdHdvIGZyb20gdXZfZnBvX3RhYjsKK2luc2VydCBpbnRvIHV2X2Zwb192aWV3 IChpZCwgdmFsaWRfYXQsIGIpIHZhbHVlcyAoJ1sxLDFdJywgJ1syMDEwLTAxLTAxLCAyMDIwLTAx LTAxKScsIDEpOworc2VsZWN0ICogZnJvbSB1dl9mcG9fdmlldzsKKyBiIHwgYyB8ICAgICAgICAg ICAgICAgICAgICAgICAgdmFsaWRfYXQgICAgICAgICAgICAgICAgICAgICAgICAgfCAgaWQgICB8 IHR3byAKKy0tLSstLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0rLS0tLS0KKyAwIHwgMSB8IFsiV2VkIEphbiAwMSAwMDow MDowMCAyMDIwIiwiVHVlIEphbiAwMSAwMDowMDowMCAyMDMwIikgfCBbMSwyKSB8IDIuMAorIDEg fCAyIHwgWyJGcmkgSmFuIDAxIDAwOjAwOjAwIDIwMTAiLCJXZWQgSmFuIDAxIDAwOjAwOjAwIDIw MjAiKSB8IFsxLDIpIHwgMi4wCisoMiByb3dzKQorCit1cGRhdGUgdXZfZnBvX3ZpZXcgZm9yIHBv cnRpb24gb2YgdmFsaWRfYXQgZnJvbSAnMjAxNS0wMS0wMScgdG8gJzIwMjAtMDEtMDEnIHNldCBi ID0gMiB3aGVyZSBpZCA9ICdbMSwxXSc7CitzZWxlY3QgKiBmcm9tIHV2X2Zwb192aWV3OworIGIg fCBjIHwgICAgICAgICAgICAgICAgICAgICAgICB2YWxpZF9hdCAgICAgICAgICAgICAgICAgICAg ICAgICB8ICBpZCAgIHwgdHdvIAorLS0tKy0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLSstLS0tLQorIDAgfCAxIHwgWyJX ZWQgSmFuIDAxIDAwOjAwOjAwIDIwMjAiLCJUdWUgSmFuIDAxIDAwOjAwOjAwIDIwMzAiKSB8IFsx LDIpIHwgMi4wCisgMiB8IDMgfCBbIlRodSBKYW4gMDEgMDA6MDA6MDAgMjAxNSIsIldlZCBKYW4g MDEgMDA6MDA6MDAgMjAyMCIpIHwgWzEsMikgfCAyLjAKKyAxIHwgMiB8IFsiRnJpIEphbiAwMSAw MDowMDowMCAyMDEwIiwiVGh1IEphbiAwMSAwMDowMDowMCAyMDE1IikgfCBbMSwyKSB8IDIuMAor KDMgcm93cykKKworZGVsZXRlIGZyb20gdXZfZnBvX3ZpZXcgZm9yIHBvcnRpb24gb2YgdmFsaWRf YXQgZnJvbSAnMjAxNy0wMS0wMScgdG8gJzIwMjItMDEtMDEnIHdoZXJlIGlkID0gJ1sxLDFdJzsK K3NlbGVjdCAqIGZyb20gdXZfZnBvX3ZpZXc7CisgYiB8IGMgfCAgICAgICAgICAgICAgICAgICAg ICAgIHZhbGlkX2F0ICAgICAgICAgICAgICAgICAgICAgICAgIHwgIGlkICAgfCB0d28gCistLS0r LS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLSstLS0tLS0tKy0tLS0tCisgMSB8IDIgfCBbIkZyaSBKYW4gMDEgMDA6MDA6MDAgMjAxMCIs IlRodSBKYW4gMDEgMDA6MDA6MDAgMjAxNSIpIHwgWzEsMikgfCAyLjAKKyAwIHwgMSB8IFsiU2F0 IEphbiAwMSAwMDowMDowMCAyMDIyIiwiVHVlIEphbiAwMSAwMDowMDowMCAyMDMwIikgfCBbMSwy KSB8IDIuMAorIDIgfCAzIHwgWyJUaHUgSmFuIDAxIDAwOjAwOjAwIDIwMTUiLCJTdW4gSmFuIDAx IDAwOjAwOjAwIDIwMTciKSB8IFsxLDIpIHwgMi4wCisoMyByb3dzKQorCiAtLSBUZXN0IHdob2xl LXJvdyByZWZlcmVuY2VzIHRvIHRoZSB2aWV3CiBjcmVhdGUgdGFibGUgdXZfaW9jdV90YWIgKGEg aW50IHVuaXF1ZSwgYiB0ZXh0KTsKIGNyZWF0ZSB2aWV3IHV2X2lvY3VfdmlldyBhcwpkaWZmIC0t Z2l0IGEvc3JjL3Rlc3QvcmVncmVzcy9leHBlY3RlZC93aXRob3V0X292ZXJsYXBzLm91dCBiL3Ny Yy90ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvd2l0aG91dF9vdmVybGFwcy5vdXQKaW5kZXggZjMxNDRi ZGMzOWMuLjQwMTU1MGI1NDgyIDEwMDY0NAotLS0gYS9zcmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVk L3dpdGhvdXRfb3ZlcmxhcHMub3V0CisrKyBiL3NyYy90ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvd2l0 aG91dF9vdmVybGFwcy5vdXQKQEAgLTIsNyArMiw3IEBACiAtLQogLS0gV2UgbGVhdmUgYmVoaW5k IHNldmVyYWwgdGFibGVzIHRvIHRlc3QgcGdfZHVtcCBldGM6CiAtLSB0ZW1wb3JhbF9ybmcsIHRl bXBvcmFsX3JuZzIsCi0tLSB0ZW1wb3JhbF9ma19ybmcycm5nLgorLS0gdGVtcG9yYWxfZmtfcm5n MnJuZywgdGVtcG9yYWxfZmsyX3JuZzJybmcuCiBTRVQgZGF0ZXN0eWxlIFRPIElTTywgWU1EOwog LS0KIC0tIHRlc3QgaW5wdXQgcGFyc2VyCkBAIC04ODksNiArODg5LDM2IEBAIElOU0VSVCBJTlRP IHRlbXBvcmFsMyAoaWQsIHZhbGlkX2F0LCBpZDIsIG5hbWUpCiAgICgnWzEsMiknLCBkYXRlcmFu Z2UoJzIwMDAtMDEtMDEnLCAnMjAxMC0wMS0wMScpLCAnWzcsOCknLCAnZm9vJyksCiAgICgnWzIs MyknLCBkYXRlcmFuZ2UoJzIwMDAtMDEtMDEnLCAnMjAxMC0wMS0wMScpLCAnWzksMTApJywgJ2Jh cicpCiA7CitVUERBVEUgdGVtcG9yYWwzIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIw MDAtMDUtMDEnIFRPICcyMDAwLTA3LTAxJworICBTRVQgbmFtZSA9IG5hbWUgfHwgJzEnOworVVBE QVRFIHRlbXBvcmFsMyBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDAwLTA0LTAxJyBU TyAnMjAwMC0wNi0wMScKKyAgU0VUIG5hbWUgPSBuYW1lIHx8ICcyJworICBXSEVSRSBpZCA9ICdb MiwzKSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsMyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7Cisg IGlkICAgfCAgICAgICAgdmFsaWRfYXQgICAgICAgICB8ICBpZDIgICB8IG5hbWUgIAorLS0tLS0t LSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tKy0tLS0tLS0KKyBbMSwyKSB8IFsy MDAwLTAxLTAxLDIwMDAtMDUtMDEpIHwgWzcsOCkgIHwgZm9vCisgWzEsMikgfCBbMjAwMC0wNS0w MSwyMDAwLTA3LTAxKSB8IFs3LDgpICB8IGZvbzEKKyBbMSwyKSB8IFsyMDAwLTA3LTAxLDIwMTAt MDEtMDEpIHwgWzcsOCkgIHwgZm9vCisgWzIsMykgfCBbMjAwMC0wMS0wMSwyMDAwLTA0LTAxKSB8 IFs5LDEwKSB8IGJhcgorIFsyLDMpIHwgWzIwMDAtMDQtMDEsMjAwMC0wNS0wMSkgfCBbOSwxMCkg fCBiYXIyCisgWzIsMykgfCBbMjAwMC0wNS0wMSwyMDAwLTA2LTAxKSB8IFs5LDEwKSB8IGJhcjEy CisgWzIsMykgfCBbMjAwMC0wNi0wMSwyMDAwLTA3LTAxKSB8IFs5LDEwKSB8IGJhcjEKKyBbMiwz KSB8IFsyMDAwLTA3LTAxLDIwMTAtMDEtMDEpIHwgWzksMTApIHwgYmFyCisoOCByb3dzKQorCist LSBjb25mbGljdGluZyBpZCBvbmx5OgorSU5TRVJUIElOVE8gdGVtcG9yYWwzIChpZCwgdmFsaWRf YXQsIGlkMiwgbmFtZSkKKyAgVkFMVUVTCisgICgnWzEsMiknLCBkYXRlcmFuZ2UoJzIwMDUtMDEt MDEnLCAnMjAwNi0wMS0wMScpLCAnWzgsOSknLCAnZm9vMycpOworRVJST1I6ICBjb25mbGljdGlu ZyBrZXkgdmFsdWUgdmlvbGF0ZXMgZXhjbHVzaW9uIGNvbnN0cmFpbnQgInRlbXBvcmFsM19wayIK K0RFVEFJTDogIEtleSAoaWQsIHZhbGlkX2F0KT0oWzEsMiksIFsyMDA1LTAxLTAxLDIwMDYtMDEt MDEpKSBjb25mbGljdHMgd2l0aCBleGlzdGluZyBrZXkgKGlkLCB2YWxpZF9hdCk9KFsxLDIpLCBb MjAwMC0wNy0wMSwyMDEwLTAxLTAxKSkuCistLSBjb25mbGljdGluZyBpZDIgb25seToKK0lOU0VS VCBJTlRPIHRlbXBvcmFsMyAoaWQsIHZhbGlkX2F0LCBpZDIsIG5hbWUpCisgIFZBTFVFUworICAo J1szLDQpJywgZGF0ZXJhbmdlKCcyMDA1LTAxLTAxJywgJzIwMTAtMDEtMDEnKSwgJ1s5LDEwKScs ICdiYXIzJyk7CitFUlJPUjogIGNvbmZsaWN0aW5nIGtleSB2YWx1ZSB2aW9sYXRlcyBleGNsdXNp b24gY29uc3RyYWludCAidGVtcG9yYWwzX3VuaXEiCitERVRBSUw6ICBLZXkgKGlkMiwgdmFsaWRf YXQpPShbOSwxMCksIFsyMDA1LTAxLTAxLDIwMTAtMDEtMDEpKSBjb25mbGljdHMgd2l0aCBleGlz dGluZyBrZXkgKGlkMiwgdmFsaWRfYXQpPShbOSwxMCksIFsyMDAwLTA3LTAxLDIwMTAtMDEtMDEp KS4KIERST1AgVEFCTEUgdGVtcG9yYWwzOwogLS0KIC0tIHRlc3QgY2hhbmdpbmcgdGhlIFBLJ3Mg ZGVwZW5kZW5jaWVzCkBAIC05MjAsMjYgKzk1MCw0MyBAQCBJTlNFUlQgSU5UTyB0ZW1wb3JhbF9w YXJ0aXRpb25lZCAoaWQsIHZhbGlkX2F0LCBuYW1lKSBWQUxVRVMKICAgKCdbMSwyKScsIGRhdGVy YW5nZSgnMjAwMC0wMS0wMScsICcyMDAwLTAyLTAxJyksICdvbmUnKSwKICAgKCdbMSwyKScsIGRh dGVyYW5nZSgnMjAwMC0wMi0wMScsICcyMDAwLTAzLTAxJyksICdvbmUnKSwKICAgKCdbMyw0KScs IGRhdGVyYW5nZSgnMjAwMC0wMS0wMScsICcyMDEwLTAxLTAxJyksICd0aHJlZScpOwotU0VMRUNU ICogRlJPTSB0ZW1wb3JhbF9wYXJ0aXRpb25lZCBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7Ci0gIGlk ICAgfCAgICAgICAgdmFsaWRfYXQgICAgICAgICB8IG5hbWUgIAotLS0tLS0tLSstLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0KLSBbMSwyKSB8IFsyMDAwLTAxLTAxLDIwMDAtMDItMDEp IHwgb25lCi0gWzEsMikgfCBbMjAwMC0wMi0wMSwyMDAwLTAzLTAxKSB8IG9uZQotIFszLDQpIHwg WzIwMDAtMDEtMDEsMjAxMC0wMS0wMSkgfCB0aHJlZQorU0VMRUNUIHRhYmxlb2lkOjpyZWdjbGFz cywgKiBGUk9NIHRlbXBvcmFsX3BhcnRpdGlvbmVkIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKyB0 YWJsZW9pZCB8ICBpZCAgIHwgICAgICAgIHZhbGlkX2F0ICAgICAgICAgfCBuYW1lICAKKy0tLS0t LS0tLS0rLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0KKyB0cDEgICAg ICB8IFsxLDIpIHwgWzIwMDAtMDEtMDEsMjAwMC0wMi0wMSkgfCBvbmUKKyB0cDEgICAgICB8IFsx LDIpIHwgWzIwMDAtMDItMDEsMjAwMC0wMy0wMSkgfCBvbmUKKyB0cDIgICAgICB8IFszLDQpIHwg WzIwMDAtMDEtMDEsMjAxMC0wMS0wMSkgfCB0aHJlZQogKDMgcm93cykKIAotU0VMRUNUICogRlJP TSB0cDEgT1JERVIgQlkgaWQsIHZhbGlkX2F0OwotICBpZCAgIHwgICAgICAgIHZhbGlkX2F0ICAg ICAgICAgfCBuYW1lIAotLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLQot IFsxLDIpIHwgWzIwMDAtMDEtMDEsMjAwMC0wMi0wMSkgfCBvbmUKLSBbMSwyKSB8IFsyMDAwLTAy LTAxLDIwMDAtMDMtMDEpIHwgb25lCi0oMiByb3dzKQotCi1TRUxFQ1QgKiBGUk9NIHRwMiBPUkRF UiBCWSBpZCwgdmFsaWRfYXQ7Ci0gIGlkICAgfCAgICAgICAgdmFsaWRfYXQgICAgICAgICB8IG5h bWUgIAotLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0KLSBbMyw0KSB8 IFsyMDAwLTAxLTAxLDIwMTAtMDEtMDEpIHwgdGhyZWUKLSgxIHJvdykKK1VQREFURSAgdGVtcG9y YWxfcGFydGl0aW9uZWQKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAwMC0wMS0x NScgVE8gJzIwMDAtMDItMTUnCisgIFNFVCBuYW1lID0gJ29uZTInCisgIFdIRVJFIGlkID0gJ1sx LDIpJzsKK1VQREFURSAgdGVtcG9yYWxfcGFydGl0aW9uZWQKKyAgRk9SIFBPUlRJT04gT0YgdmFs aWRfYXQgRlJPTSAnMjAwMC0wMi0yMCcgVE8gJzIwMDAtMDItMjUnCisgIFNFVCBpZCA9ICdbNCw1 KScKKyAgV0hFUkUgbmFtZSA9ICdvbmUnOworVVBEQVRFICB0ZW1wb3JhbF9wYXJ0aXRpb25lZAor ICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDAyLTAxLTAxJyBUTyAnMjAwMy0wMS0w MScKKyAgU0VUIGlkID0gJ1syLDMpJworICBXSEVSRSBuYW1lID0gJ3RocmVlJzsKK0RFTEVURSBG Uk9NIHRlbXBvcmFsX3BhcnRpdGlvbmVkCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00g JzIwMDAtMDEtMTUnIFRPICcyMDAwLTAyLTE1JworICBXSEVSRSBpZCA9ICdbMyw0KSc7CitTRUxF Q1QgdGFibGVvaWQ6OnJlZ2NsYXNzLCAqIEZST00gdGVtcG9yYWxfcGFydGl0aW9uZWQgT1JERVIg QlkgaWQsIHZhbGlkX2F0OworIHRhYmxlb2lkIHwgIGlkICAgfCAgICAgICAgdmFsaWRfYXQgICAg ICAgICB8IG5hbWUgIAorLS0tLS0tLS0tLSstLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0rLS0tLS0tLQorIHRwMSAgICAgIHwgWzEsMikgfCBbMjAwMC0wMS0wMSwyMDAwLTAxLTE1KSB8 IG9uZQorIHRwMSAgICAgIHwgWzEsMikgfCBbMjAwMC0wMS0xNSwyMDAwLTAyLTAxKSB8IG9uZTIK KyB0cDEgICAgICB8IFsxLDIpIHwgWzIwMDAtMDItMDEsMjAwMC0wMi0xNSkgfCBvbmUyCisgdHAx ICAgICAgfCBbMSwyKSB8IFsyMDAwLTAyLTE1LDIwMDAtMDItMjApIHwgb25lCisgdHAxICAgICAg fCBbMSwyKSB8IFsyMDAwLTAyLTI1LDIwMDAtMDMtMDEpIHwgb25lCisgdHAxICAgICAgfCBbMiwz KSB8IFsyMDAyLTAxLTAxLDIwMDMtMDEtMDEpIHwgdGhyZWUKKyB0cDIgICAgICB8IFszLDQpIHwg WzIwMDAtMDEtMDEsMjAwMC0wMS0xNSkgfCB0aHJlZQorIHRwMiAgICAgIHwgWzMsNCkgfCBbMjAw MC0wMi0xNSwyMDAyLTAxLTAxKSB8IHRocmVlCisgdHAyICAgICAgfCBbMyw0KSB8IFsyMDAzLTAx LTAxLDIwMTAtMDEtMDEpIHwgdGhyZWUKKyB0cDIgICAgICB8IFs0LDUpIHwgWzIwMDAtMDItMjAs MjAwMC0wMi0yNSkgfCBvbmUKKygxMCByb3dzKQogCiBEUk9QIFRBQkxFIHRlbXBvcmFsX3BhcnRp dGlvbmVkOwogLS0gdGVtcG9yYWwgVU5JUVVFOgpAQCAtOTU1LDI2ICsxMDAyLDQzIEBAIElOU0VS VCBJTlRPIHRlbXBvcmFsX3BhcnRpdGlvbmVkIChpZCwgdmFsaWRfYXQsIG5hbWUpIFZBTFVFUwog ICAoJ1sxLDIpJywgZGF0ZXJhbmdlKCcyMDAwLTAxLTAxJywgJzIwMDAtMDItMDEnKSwgJ29uZScp LAogICAoJ1sxLDIpJywgZGF0ZXJhbmdlKCcyMDAwLTAyLTAxJywgJzIwMDAtMDMtMDEnKSwgJ29u ZScpLAogICAoJ1szLDQpJywgZGF0ZXJhbmdlKCcyMDAwLTAxLTAxJywgJzIwMTAtMDEtMDEnKSwg J3RocmVlJyk7Ci1TRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX3BhcnRpdGlvbmVkIE9SREVSIEJZIGlk LCB2YWxpZF9hdDsKLSAgaWQgICB8ICAgICAgICB2YWxpZF9hdCAgICAgICAgIHwgbmFtZSAgCi0t LS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLQotIFsxLDIpIHwgWzIwMDAt MDEtMDEsMjAwMC0wMi0wMSkgfCBvbmUKLSBbMSwyKSB8IFsyMDAwLTAyLTAxLDIwMDAtMDMtMDEp IHwgb25lCi0gWzMsNCkgfCBbMjAwMC0wMS0wMSwyMDEwLTAxLTAxKSB8IHRocmVlCitTRUxFQ1Qg dGFibGVvaWQ6OnJlZ2NsYXNzLCAqIEZST00gdGVtcG9yYWxfcGFydGl0aW9uZWQgT1JERVIgQlkg aWQsIHZhbGlkX2F0OworIHRhYmxlb2lkIHwgIGlkICAgfCAgICAgICAgdmFsaWRfYXQgICAgICAg ICB8IG5hbWUgIAorLS0tLS0tLS0tLSstLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0r LS0tLS0tLQorIHRwMSAgICAgIHwgWzEsMikgfCBbMjAwMC0wMS0wMSwyMDAwLTAyLTAxKSB8IG9u ZQorIHRwMSAgICAgIHwgWzEsMikgfCBbMjAwMC0wMi0wMSwyMDAwLTAzLTAxKSB8IG9uZQorIHRw MiAgICAgIHwgWzMsNCkgfCBbMjAwMC0wMS0wMSwyMDEwLTAxLTAxKSB8IHRocmVlCiAoMyByb3dz KQogCi1TRUxFQ1QgKiBGUk9NIHRwMSBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7Ci0gIGlkICAgfCAg ICAgICAgdmFsaWRfYXQgICAgICAgICB8IG5hbWUgCi0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0rLS0tLS0tCi0gWzEsMikgfCBbMjAwMC0wMS0wMSwyMDAwLTAyLTAxKSB8IG9uZQot IFsxLDIpIHwgWzIwMDAtMDItMDEsMjAwMC0wMy0wMSkgfCBvbmUKLSgyIHJvd3MpCi0KLVNFTEVD VCAqIEZST00gdHAyIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKLSAgaWQgICB8ICAgICAgICB2YWxp ZF9hdCAgICAgICAgIHwgbmFtZSAgCi0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0r LS0tLS0tLQotIFszLDQpIHwgWzIwMDAtMDEtMDEsMjAxMC0wMS0wMSkgfCB0aHJlZQotKDEgcm93 KQorVVBEQVRFICB0ZW1wb3JhbF9wYXJ0aXRpb25lZAorICBGT1IgUE9SVElPTiBPRiB2YWxpZF9h dCBGUk9NICcyMDAwLTAxLTE1JyBUTyAnMjAwMC0wMi0xNScKKyAgU0VUIG5hbWUgPSAnb25lMicK KyAgV0hFUkUgaWQgPSAnWzEsMiknOworVVBEQVRFICB0ZW1wb3JhbF9wYXJ0aXRpb25lZAorICBG T1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDAwLTAyLTIwJyBUTyAnMjAwMC0wMi0yNScK KyAgU0VUIGlkID0gJ1s0LDUpJworICBXSEVSRSBuYW1lID0gJ29uZSc7CitVUERBVEUgIHRlbXBv cmFsX3BhcnRpdGlvbmVkCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMDItMDEt MDEnIFRPICcyMDAzLTAxLTAxJworICBTRVQgaWQgPSAnWzIsMyknCisgIFdIRVJFIG5hbWUgPSAn dGhyZWUnOworREVMRVRFIEZST00gdGVtcG9yYWxfcGFydGl0aW9uZWQKKyAgRk9SIFBPUlRJT04g T0YgdmFsaWRfYXQgRlJPTSAnMjAwMC0wMS0xNScgVE8gJzIwMDAtMDItMTUnCisgIFdIRVJFIGlk ID0gJ1szLDQpJzsKK1NFTEVDVCB0YWJsZW9pZDo6cmVnY2xhc3MsICogRlJPTSB0ZW1wb3JhbF9w YXJ0aXRpb25lZCBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisgdGFibGVvaWQgfCAgaWQgICB8ICAg ICAgICB2YWxpZF9hdCAgICAgICAgIHwgbmFtZSAgCistLS0tLS0tLS0tKy0tLS0tLS0rLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tCisgdHAxICAgICAgfCBbMSwyKSB8IFsyMDAwLTAx LTAxLDIwMDAtMDEtMTUpIHwgb25lCisgdHAxICAgICAgfCBbMSwyKSB8IFsyMDAwLTAxLTE1LDIw MDAtMDItMDEpIHwgb25lMgorIHRwMSAgICAgIHwgWzEsMikgfCBbMjAwMC0wMi0wMSwyMDAwLTAy LTE1KSB8IG9uZTIKKyB0cDEgICAgICB8IFsxLDIpIHwgWzIwMDAtMDItMTUsMjAwMC0wMi0yMCkg fCBvbmUKKyB0cDEgICAgICB8IFsxLDIpIHwgWzIwMDAtMDItMjUsMjAwMC0wMy0wMSkgfCBvbmUK KyB0cDEgICAgICB8IFsyLDMpIHwgWzIwMDItMDEtMDEsMjAwMy0wMS0wMSkgfCB0aHJlZQorIHRw MiAgICAgIHwgWzMsNCkgfCBbMjAwMC0wMS0wMSwyMDAwLTAxLTE1KSB8IHRocmVlCisgdHAyICAg ICAgfCBbMyw0KSB8IFsyMDAwLTAyLTE1LDIwMDItMDEtMDEpIHwgdGhyZWUKKyB0cDIgICAgICB8 IFszLDQpIHwgWzIwMDMtMDEtMDEsMjAxMC0wMS0wMSkgfCB0aHJlZQorIHRwMiAgICAgIHwgWzQs NSkgfCBbMjAwMC0wMi0yMCwyMDAwLTAyLTI1KSB8IG9uZQorKDEwIHJvd3MpCiAKIERST1AgVEFC TEUgdGVtcG9yYWxfcGFydGl0aW9uZWQ7CiAtLSBBTFRFUiBUQUJMRSBSRVBMSUNBIElERU5USVRZ CkBAIC0xNzU1LDYgKzE4MTksMzMgQEAgVVBEQVRFIHRlbXBvcmFsX3JuZyBTRVQgaWQgPSAnWzcs OCknCiAgIFdIRVJFIGlkID0gJ1s1LDYpJyBBTkQgdmFsaWRfYXQgPSBkYXRlcmFuZ2UoJzIwMTgt MDEtMDEnLCAnMjAxOC0wMi0wMScpOwogRVJST1I6ICB1cGRhdGUgb3IgZGVsZXRlIG9uIHRhYmxl ICJ0ZW1wb3JhbF9ybmciIHZpb2xhdGVzIGZvcmVpZ24ga2V5IGNvbnN0cmFpbnQgInRlbXBvcmFs X2ZrX3JuZzJybmdfZmsiIG9uIHRhYmxlICJ0ZW1wb3JhbF9ma19ybmcycm5nIgogREVUQUlMOiAg S2V5IChpZCwgdmFsaWRfYXQpPShbNSw2KSwgWzIwMTgtMDEtMDEsMjAxOC0wMi0wMSkpIGlzIHN0 aWxsIHJlZmVyZW5jZWQgZnJvbSB0YWJsZSAidGVtcG9yYWxfZmtfcm5nMnJuZyIuCistLSBjaGFu Z2luZyBhbiB1bnJlZmVyZW5jZWQgcGFydCBpcyBva2F5OgorVVBEQVRFIHRlbXBvcmFsX3JuZwor ICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDE4LTAxLTAyJyBUTyAnMjAxOC0wMS0w MycKKyAgU0VUIGlkID0gJ1s3LDgpJworICBXSEVSRSBpZCA9ICdbNSw2KSc7CistLSBjaGFuZ2lu ZyBqdXN0IGEgcGFydCBmYWlsczoKK1VQREFURSB0ZW1wb3JhbF9ybmcKKyAgRk9SIFBPUlRJT04g T0YgdmFsaWRfYXQgRlJPTSAnMjAxOC0wMS0wNScgVE8gJzIwMTgtMDEtMTAnCisgIFNFVCBpZCA9 ICdbNyw4KScKKyAgV0hFUkUgaWQgPSAnWzUsNiknOworRVJST1I6ICB1cGRhdGUgb3IgZGVsZXRl IG9uIHRhYmxlICJ0ZW1wb3JhbF9ybmciIHZpb2xhdGVzIGZvcmVpZ24ga2V5IGNvbnN0cmFpbnQg InRlbXBvcmFsX2ZrX3JuZzJybmdfZmsiIG9uIHRhYmxlICJ0ZW1wb3JhbF9ma19ybmcycm5nIgor REVUQUlMOiAgS2V5IChpZCwgdmFsaWRfYXQpPShbNSw2KSwgWzIwMTgtMDEtMDMsMjAxOC0wMi0w MSkpIGlzIHN0aWxsIHJlZmVyZW5jZWQgZnJvbSB0YWJsZSAidGVtcG9yYWxfZmtfcm5nMnJuZyIu CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX3JuZyBXSEVSRSBpZCBpbiAoJ1s1LDYpJywgJ1s3LDgp JykgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworICBpZCAgIHwgICAgICAgIHZhbGlkX2F0ICAgICAg ICAgCistLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBbNSw2KSB8IFsyMDE2LTAy LTAxLDIwMTYtMDMtMDEpCisgWzUsNikgfCBbMjAxOC0wMS0wMSwyMDE4LTAxLTAyKQorIFs1LDYp IHwgWzIwMTgtMDEtMDMsMjAxOC0wMi0wMSkKKyBbNyw4KSB8IFsyMDE4LTAxLTAyLDIwMTgtMDEt MDMpCisoNCByb3dzKQorCitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrX3JuZzJybmcgV0hFUkUg aWQgaW4gKCdbMyw0KScpIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKyAgaWQgICB8ICAgICAgICB2 YWxpZF9hdCAgICAgICAgIHwgcGFyZW50X2lkIAorLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tKy0tLS0tLS0tLS0tCisgWzMsNCkgfCBbMjAxOC0wMS0wNSwyMDE4LTAxLTEwKSB8IFs1 LDYpCisoMSByb3cpCisKIC0tIHRoZW4gZGVsZXRlIHRoZSBvYmplY3RpbmcgRksgcmVjb3JkIGFu ZCB0aGUgc2FtZSBQSyB1cGRhdGUgc3VjY2VlZHM6CiBERUxFVEUgRlJPTSB0ZW1wb3JhbF9ma19y bmcycm5nIFdIRVJFIGlkID0gJ1szLDQpJzsKIFVQREFURSB0ZW1wb3JhbF9ybmcgU0VUIHZhbGlk X2F0ID0gZGF0ZXJhbmdlKCcyMDE2LTAxLTAxJywgJzIwMTYtMDItMDEnKQpAQCAtMTgwMiw2ICsx ODkzLDQyIEBAIEJFR0lOOwogQ09NTUlUOwogRVJST1I6ICB1cGRhdGUgb3IgZGVsZXRlIG9uIHRh YmxlICJ0ZW1wb3JhbF9ybmciIHZpb2xhdGVzIGZvcmVpZ24ga2V5IGNvbnN0cmFpbnQgInRlbXBv cmFsX2ZrX3JuZzJybmdfZmsiIG9uIHRhYmxlICJ0ZW1wb3JhbF9ma19ybmcycm5nIgogREVUQUlM OiAgS2V5IChpZCwgdmFsaWRfYXQpPShbNSw2KSwgWzIwMTgtMDEtMDEsMjAxOC0wMi0wMSkpIGlz IHN0aWxsIHJlZmVyZW5jZWQgZnJvbSB0YWJsZSAidGVtcG9yYWxfZmtfcm5nMnJuZyIuCistLSBk ZWxldGluZyBhbiB1bnJlZmVyZW5jZWQgcGFydCBpcyBva2F5OgorREVMRVRFIEZST00gdGVtcG9y YWxfcm5nCitGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDE4LTAxLTAyJyBUTyAnMjAx OC0wMS0wMycKK1dIRVJFIGlkID0gJ1s1LDYpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfcm5n IFdIRVJFIGlkIGluICgnWzUsNiknLCAnWzcsOCknKSBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7Cisg IGlkICAgfCAgICAgICAgdmFsaWRfYXQgICAgICAgICAKKy0tLS0tLS0rLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLQorIFs1LDYpIHwgWzIwMTgtMDEtMDEsMjAxOC0wMS0wMikKKyBbNSw2KSB8IFsy MDE4LTAxLTAzLDIwMTgtMDItMDEpCisoMiByb3dzKQorCitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFs X2ZrX3JuZzJybmcgV0hFUkUgaWQgaW4gKCdbMyw0KScpIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsK KyAgaWQgICB8ICAgICAgICB2YWxpZF9hdCAgICAgICAgIHwgcGFyZW50X2lkIAorLS0tLS0tLSst LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tCisgWzMsNCkgfCBbMjAxOC0wMS0w NSwyMDE4LTAxLTEwKSB8IFs1LDYpCisoMSByb3cpCisKKy0tIGRlbGV0aW5nIGp1c3QgYSBwYXJ0 IGZhaWxzOgorREVMRVRFIEZST00gdGVtcG9yYWxfcm5nCitGT1IgUE9SVElPTiBPRiB2YWxpZF9h dCBGUk9NICcyMDE4LTAxLTA1JyBUTyAnMjAxOC0wMS0xMCcKK1dIRVJFIGlkID0gJ1s1LDYpJzsK K0VSUk9SOiAgdXBkYXRlIG9yIGRlbGV0ZSBvbiB0YWJsZSAidGVtcG9yYWxfcm5nIiB2aW9sYXRl cyBmb3JlaWduIGtleSBjb25zdHJhaW50ICJ0ZW1wb3JhbF9ma19ybmcycm5nX2ZrIiBvbiB0YWJs ZSAidGVtcG9yYWxfZmtfcm5nMnJuZyIKK0RFVEFJTDogIEtleSAoaWQsIHZhbGlkX2F0KT0oWzUs NiksIFsyMDE4LTAxLTAzLDIwMTgtMDItMDEpKSBpcyBzdGlsbCByZWZlcmVuY2VkIGZyb20gdGFi bGUgInRlbXBvcmFsX2ZrX3JuZzJybmciLgorU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9ybmcgV0hF UkUgaWQgaW4gKCdbNSw2KScsICdbNyw4KScpIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKyAgaWQg ICB8ICAgICAgICB2YWxpZF9hdCAgICAgICAgIAorLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tCisgWzUsNikgfCBbMjAxOC0wMS0wMSwyMDE4LTAxLTAyKQorIFs1LDYpIHwgWzIwMTgt MDEtMDMsMjAxOC0wMi0wMSkKKygyIHJvd3MpCisKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmtf cm5nMnJuZyBXSEVSRSBpZCBpbiAoJ1szLDQpJykgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworICBp ZCAgIHwgICAgICAgIHZhbGlkX2F0ICAgICAgICAgfCBwYXJlbnRfaWQgCistLS0tLS0tKy0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0KKyBbMyw0KSB8IFsyMDE4LTAxLTA1LDIw MTgtMDEtMTApIHwgWzUsNikKKygxIHJvdykKKwogLS0gdGhlbiBkZWxldGUgdGhlIG9iamVjdGlu ZyBGSyByZWNvcmQgYW5kIHRoZSBzYW1lIFBLIGRlbGV0ZSBzdWNjZWVkczoKIERFTEVURSBGUk9N IHRlbXBvcmFsX2ZrX3JuZzJybmcgV0hFUkUgaWQgPSAnWzMsNCknOwogREVMRVRFIEZST00gdGVt cG9yYWxfcm5nIFdIRVJFIGlkID0gJ1s1LDYpJyBBTkQgdmFsaWRfYXQgPSBkYXRlcmFuZ2UoJzIw MTgtMDEtMDEnLCAnMjAxOC0wMi0wMScpOwpAQCAtMTgxOCwxMSArMTk0NSwxMiBAQCBBTFRFUiBU QUJMRSB0ZW1wb3JhbF9ma19ybmcycm5nCiAgIE9OIERFTEVURSBSRVNUUklDVDsKIEVSUk9SOiAg dW5zdXBwb3J0ZWQgT04gREVMRVRFIGFjdGlvbiBmb3IgZm9yZWlnbiBrZXkgY29uc3RyYWludCB1 c2luZyBQRVJJT0QKIC0tCi0tLSB0ZXN0IE9OIFVQREFURS9ERUxFVEUgb3B0aW9ucworLS0gcm5n MnJuZyB0ZXN0IE9OIFVQREFURS9ERUxFVEUgb3B0aW9ucwogLS0KIC0tIHRlc3QgRksgcmVmZXJl bmNlZCB1cGRhdGVzIENBU0NBREUKK1RSVU5DQVRFIHRlbXBvcmFsX3JuZywgdGVtcG9yYWxfZmtf cm5nMnJuZzsKIElOU0VSVCBJTlRPIHRlbXBvcmFsX3JuZyAoaWQsIHZhbGlkX2F0KSBWQUxVRVMg KCdbNiw3KScsIGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJykpOwotSU5TRVJU IElOVE8gdGVtcG9yYWxfZmtfcm5nMnJuZyAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQpIFZBTFVF UyAoJ1s0LDUpJywgZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSwgJ1s2LDcp Jyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ma19ybmcycm5nIChpZCwgdmFsaWRfYXQsIHBhcmVu dF9pZCkgVkFMVUVTICgnWzEwMCwxMDEpJywgZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEt MDEtMDEnKSwgJ1s2LDcpJyk7CiBBTFRFUiBUQUJMRSB0ZW1wb3JhbF9ma19ybmcycm5nCiAgIEFE RCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3JuZzJybmdfZmsKICAgICBGT1JFSUdOIEtFWSAocGFy ZW50X2lkLCBQRVJJT0QgdmFsaWRfYXQpCkBAIC0xODMwLDggKzE5NTgsOSBAQCBBTFRFUiBUQUJM RSB0ZW1wb3JhbF9ma19ybmcycm5nCiAgICAgT04gREVMRVRFIENBU0NBREUgT04gVVBEQVRFIENB U0NBREU7CiBFUlJPUjogIHVuc3VwcG9ydGVkIE9OIFVQREFURSBhY3Rpb24gZm9yIGZvcmVpZ24g a2V5IGNvbnN0cmFpbnQgdXNpbmcgUEVSSU9ECiAtLSB0ZXN0IEZLIHJlZmVyZW5jZWQgdXBkYXRl cyBTRVQgTlVMTAotSU5TRVJUIElOVE8gdGVtcG9yYWxfcm5nIChpZCwgdmFsaWRfYXQpIFZBTFVF UyAoJ1s5LDEwKScsIGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJykpOwotSU5T RVJUIElOVE8gdGVtcG9yYWxfZmtfcm5nMnJuZyAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQpIFZB TFVFUyAoJ1s2LDcpJywgZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSwgJ1s5 LDEwKScpOworVFJVTkNBVEUgdGVtcG9yYWxfcm5nLCB0ZW1wb3JhbF9ma19ybmcycm5nOworSU5T RVJUIElOVE8gdGVtcG9yYWxfcm5nIChpZCwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s2LDcpJywgZGF0 ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3Jh bF9ma19ybmcycm5nIChpZCwgdmFsaWRfYXQsIHBhcmVudF9pZCkgVkFMVUVTICgnWzEwMCwxMDEp JywgZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSwgJ1s2LDcpJyk7CiBBTFRF UiBUQUJMRSB0ZW1wb3JhbF9ma19ybmcycm5nCiAgIEFERCBDT05TVFJBSU5UIHRlbXBvcmFsX2Zr X3JuZzJybmdfZmsKICAgICBGT1JFSUdOIEtFWSAocGFyZW50X2lkLCBQRVJJT0QgdmFsaWRfYXQp CkBAIC0xODM5LDkgKzE5NjgsMTAgQEAgQUxURVIgVEFCTEUgdGVtcG9yYWxfZmtfcm5nMnJuZwog ICAgIE9OIERFTEVURSBTRVQgTlVMTCBPTiBVUERBVEUgU0VUIE5VTEw7CiBFUlJPUjogIHVuc3Vw cG9ydGVkIE9OIFVQREFURSBhY3Rpb24gZm9yIGZvcmVpZ24ga2V5IGNvbnN0cmFpbnQgdXNpbmcg UEVSSU9ECiAtLSB0ZXN0IEZLIHJlZmVyZW5jZWQgdXBkYXRlcyBTRVQgREVGQVVMVAorVFJVTkNB VEUgdGVtcG9yYWxfcm5nLCB0ZW1wb3JhbF9ma19ybmcycm5nOwogSU5TRVJUIElOVE8gdGVtcG9y YWxfcm5nIChpZCwgdmFsaWRfYXQpIFZBTFVFUyAoJ1stMSwtMV0nLCBkYXRlcmFuZ2UobnVsbCwg bnVsbCkpOwotSU5TRVJUIElOVE8gdGVtcG9yYWxfcm5nIChpZCwgdmFsaWRfYXQpIFZBTFVFUyAo J1sxMiwxMyknLCBkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpKTsKLUlOU0VS VCBJTlRPIHRlbXBvcmFsX2ZrX3JuZzJybmcgKGlkLCB2YWxpZF9hdCwgcGFyZW50X2lkKSBWQUxV RVMgKCdbOCw5KScsIGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJyksICdbMTIs MTMpJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ybmcgKGlkLCB2YWxpZF9hdCkgVkFMVUVTICgn WzYsNyknLCBkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpKTsKK0lOU0VSVCBJ TlRPIHRlbXBvcmFsX2ZrX3JuZzJybmcgKGlkLCB2YWxpZF9hdCwgcGFyZW50X2lkKSBWQUxVRVMg KCdbMTAwLDEwMSknLCBkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpLCAnWzYs NyknKTsKIEFMVEVSIFRBQkxFIHRlbXBvcmFsX2ZrX3JuZzJybmcKICAgQUxURVIgQ09MVU1OIHBh cmVudF9pZCBTRVQgREVGQVVMVCAnWy0xLC0xXScsCiAgIEFERCBDT05TVFJBSU5UIHRlbXBvcmFs X2ZrX3JuZzJybmdfZmsKQEAgLTIyMTEsNiArMjM0MSwyMiBAQCBVUERBVEUgdGVtcG9yYWxfbWx0 cm5nIFNFVCBpZCA9ICdbNyw4KScKICAgV0hFUkUgaWQgPSAnWzUsNiknIEFORCB2YWxpZF9hdCA9 IGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDE4LTAyLTAxJykpOwog RVJST1I6ICB1cGRhdGUgb3IgZGVsZXRlIG9uIHRhYmxlICJ0ZW1wb3JhbF9tbHRybmciIHZpb2xh dGVzIGZvcmVpZ24ga2V5IGNvbnN0cmFpbnQgInRlbXBvcmFsX2ZrX21sdHJuZzJtbHRybmdfZmsi IG9uIHRhYmxlICJ0ZW1wb3JhbF9ma19tbHRybmcybWx0cm5nIgogREVUQUlMOiAgS2V5IChpZCwg dmFsaWRfYXQpPShbNSw2KSwge1syMDE4LTAxLTAxLDIwMTgtMDItMDEpfSkgaXMgc3RpbGwgcmVm ZXJlbmNlZCBmcm9tIHRhYmxlICJ0ZW1wb3JhbF9ma19tbHRybmcybWx0cm5nIi4KKy0tIGNoYW5n aW5nIGFuIHVucmVmZXJlbmNlZCBwYXJ0IGlzIG9rYXk6CitVUERBVEUgdGVtcG9yYWxfbWx0cm5n CisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IChkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIw MTgtMDEtMDInLCAnMjAxOC0wMS0wMycpKSkKKyAgU0VUIGlkID0gJ1s3LDgpJworICBXSEVSRSBp ZCA9ICdbNSw2KSc7CistLSBjaGFuZ2luZyBqdXN0IGEgcGFydCBmYWlsczoKK1VQREFURSB0ZW1w b3JhbF9tbHRybmcKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgKGRhdGVtdWx0aXJhbmdlKGRh dGVyYW5nZSgnMjAxOC0wMS0wNScsICcyMDE4LTAxLTEwJykpKQorICBTRVQgaWQgPSAnWzcsOCkn CisgIFdIRVJFIGlkID0gJ1s1LDYpJzsKK0VSUk9SOiAgdXBkYXRlIG9yIGRlbGV0ZSBvbiB0YWJs ZSAidGVtcG9yYWxfbWx0cm5nIiB2aW9sYXRlcyBmb3JlaWduIGtleSBjb25zdHJhaW50ICJ0ZW1w b3JhbF9ma19tbHRybmcybWx0cm5nX2ZrIiBvbiB0YWJsZSAidGVtcG9yYWxfZmtfbWx0cm5nMm1s dHJuZyIKK0RFVEFJTDogIEtleSAoaWQsIHZhbGlkX2F0KT0oWzUsNiksIHtbMjAxOC0wMS0wMSwy MDE4LTAxLTAyKSxbMjAxOC0wMS0wMywyMDE4LTAyLTAxKX0pIGlzIHN0aWxsIHJlZmVyZW5jZWQg ZnJvbSB0YWJsZSAidGVtcG9yYWxfZmtfbWx0cm5nMm1sdHJuZyIuCistLSB0aGVuIGRlbGV0ZSB0 aGUgb2JqZWN0aW5nIEZLIHJlY29yZCBhbmQgdGhlIHNhbWUgUEsgdXBkYXRlIHN1Y2NlZWRzOgor REVMRVRFIEZST00gdGVtcG9yYWxfZmtfbWx0cm5nMm1sdHJuZyBXSEVSRSBpZCA9ICdbMyw0KSc7 CitVUERBVEUgdGVtcG9yYWxfbWx0cm5nIFNFVCBpZCA9ICdbNyw4KScKKyAgV0hFUkUgaWQgPSAn WzUsNiknIEFORCB2YWxpZF9hdCA9IGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAxOC0wMS0w MScsICcyMDE4LTAyLTAxJykpOwogLS0KIC0tIHRlc3QgRksgcmVmZXJlbmNlZCB1cGRhdGVzIFJF U1RSSUNUCiAtLQpAQCAtMjI1Myw2ICsyMzk5LDE5IEBAIEJFR0lOOwogQ09NTUlUOwogRVJST1I6 ICB1cGRhdGUgb3IgZGVsZXRlIG9uIHRhYmxlICJ0ZW1wb3JhbF9tbHRybmciIHZpb2xhdGVzIGZv cmVpZ24ga2V5IGNvbnN0cmFpbnQgInRlbXBvcmFsX2ZrX21sdHJuZzJtbHRybmdfZmsiIG9uIHRh YmxlICJ0ZW1wb3JhbF9ma19tbHRybmcybWx0cm5nIgogREVUQUlMOiAgS2V5IChpZCwgdmFsaWRf YXQpPShbNSw2KSwge1syMDE4LTAxLTAxLDIwMTgtMDItMDEpfSkgaXMgc3RpbGwgcmVmZXJlbmNl ZCBmcm9tIHRhYmxlICJ0ZW1wb3JhbF9ma19tbHRybmcybWx0cm5nIi4KKy0tIGRlbGV0aW5nIGFu IHVucmVmZXJlbmNlZCBwYXJ0IGlzIG9rYXk6CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9tbHRybmcK K0ZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IChkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIwMTgt MDEtMDInLCAnMjAxOC0wMS0wMycpKSkKK1dIRVJFIGlkID0gJ1s1LDYpJzsKKy0tIGRlbGV0aW5n IGp1c3QgYSBwYXJ0IGZhaWxzOgorREVMRVRFIEZST00gdGVtcG9yYWxfbWx0cm5nCitGT1IgUE9S VElPTiBPRiB2YWxpZF9hdCAoZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDE4LTAxLTA1Jywg JzIwMTgtMDEtMTAnKSkpCitXSEVSRSBpZCA9ICdbNSw2KSc7CitFUlJPUjogIHVwZGF0ZSBvciBk ZWxldGUgb24gdGFibGUgInRlbXBvcmFsX21sdHJuZyIgdmlvbGF0ZXMgZm9yZWlnbiBrZXkgY29u c3RyYWludCAidGVtcG9yYWxfZmtfbWx0cm5nMm1sdHJuZ19mayIgb24gdGFibGUgInRlbXBvcmFs X2ZrX21sdHJuZzJtbHRybmciCitERVRBSUw6ICBLZXkgKGlkLCB2YWxpZF9hdCk9KFs1LDYpLCB7 WzIwMTgtMDEtMDEsMjAxOC0wMS0wMiksWzIwMTgtMDEtMDMsMjAxOC0wMi0wMSl9KSBpcyBzdGls bCByZWZlcmVuY2VkIGZyb20gdGFibGUgInRlbXBvcmFsX2ZrX21sdHJuZzJtbHRybmciLgorLS0g dGhlbiBkZWxldGUgdGhlIG9iamVjdGluZyBGSyByZWNvcmQgYW5kIHRoZSBzYW1lIFBLIGRlbGV0 ZSBzdWNjZWVkczoKK0RFTEVURSBGUk9NIHRlbXBvcmFsX2ZrX21sdHJuZzJtbHRybmcgV0hFUkUg aWQgPSAnWzMsNCknOworREVMRVRFIEZST00gdGVtcG9yYWxfbWx0cm5nIFdIRVJFIGlkID0gJ1s1 LDYpJyBBTkQgdmFsaWRfYXQgPSBkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIwMTgtMDEtMDEn LCAnMjAxOC0wMi0wMScpKTsKIC0tCiAtLSBGSyBiZXR3ZWVuIHBhcnRpdGlvbmVkIHRhYmxlczog cmFuZ2VzCiAtLQpkaWZmIC0tZ2l0IGEvc3JjL3Rlc3QvcmVncmVzcy9wYXJhbGxlbF9zY2hlZHVs ZSBiL3NyYy90ZXN0L3JlZ3Jlc3MvcGFyYWxsZWxfc2NoZWR1bGUKaW5kZXggY2M2ZDc5OWJjZWEu LjNkNDgwNWU0MzAxIDEwMDY0NAotLS0gYS9zcmMvdGVzdC9yZWdyZXNzL3BhcmFsbGVsX3NjaGVk dWxlCisrKyBiL3NyYy90ZXN0L3JlZ3Jlc3MvcGFyYWxsZWxfc2NoZWR1bGUKQEAgLTQ4LDcgKzQ4 LDcgQEAgdGVzdDogY3JlYXRlX2luZGV4IGNyZWF0ZV9pbmRleF9zcGdpc3QgY3JlYXRlX3ZpZXcg aW5kZXhfaW5jbHVkaW5nIGluZGV4X2luY2x1ZGkKICMgLS0tLS0tLS0tLQogIyBBbm90aGVyIGdy b3VwIG9mIHBhcmFsbGVsIHRlc3RzCiAjIC0tLS0tLS0tLS0KLXRlc3Q6IGNyZWF0ZV9hZ2dyZWdh dGUgY3JlYXRlX2Z1bmN0aW9uX3NxbCBjcmVhdGVfY2FzdCBjb25zdHJhaW50cyB0cmlnZ2VycyBz ZWxlY3QgaW5oZXJpdCB0eXBlZF90YWJsZSB2YWN1dW0gZHJvcF9pZl9leGlzdHMgdXBkYXRhYmxl X3ZpZXdzIHJvbGVhdHRyaWJ1dGVzIGNyZWF0ZV9hbSBoYXNoX2Z1bmMgZXJyb3JzIGluZmluaXRl X3JlY3Vyc2UKK3Rlc3Q6IGNyZWF0ZV9hZ2dyZWdhdGUgY3JlYXRlX2Z1bmN0aW9uX3NxbCBjcmVh dGVfY2FzdCBjb25zdHJhaW50cyB0cmlnZ2VycyBzZWxlY3QgaW5oZXJpdCB0eXBlZF90YWJsZSB2 YWN1dW0gZHJvcF9pZl9leGlzdHMgdXBkYXRhYmxlX3ZpZXdzIHJvbGVhdHRyaWJ1dGVzIGNyZWF0 ZV9hbSBoYXNoX2Z1bmMgZXJyb3JzIGluZmluaXRlX3JlY3Vyc2UgZm9yX3BvcnRpb25fb2YKIAog IyAtLS0tLS0tLS0tCiAjIHNhbml0eV9jaGVjayBkb2VzIGEgdmFjdXVtLCBhZmZlY3RpbmcgdGhl IHNvcnQgb3JkZXIgb2YgU0VMRUNUICoKZGlmZiAtLWdpdCBhL3NyYy90ZXN0L3JlZ3Jlc3Mvc3Fs L2Zvcl9wb3J0aW9uX29mLnNxbCBiL3NyYy90ZXN0L3JlZ3Jlc3Mvc3FsL2Zvcl9wb3J0aW9uX29m LnNxbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMC4uMGU2YzJkYjVhNzUK LS0tIC9kZXYvbnVsbAorKysgYi9zcmMvdGVzdC9yZWdyZXNzL3NxbC9mb3JfcG9ydGlvbl9vZi5z cWwKQEAgLTAsMCArMSw5MDUgQEAKKy0tIFRlc3RzIGZvciBVUERBVEUvREVMRVRFIEZPUiBQT1JU SU9OIE9GCisKK1NFVCBkYXRlc3R5bGUgVE8gSVNPLCBZTUQ7CisKKy0tIFdvcmtzIG9uIG5vbi1Q SyBjb2x1bW5zCitDUkVBVEUgVEFCTEUgZm9yX3BvcnRpb25fb2ZfdGVzdCAoCisgIGlkIGludDRy YW5nZSwKKyAgdmFsaWRfYXQgZGF0ZXJhbmdlLAorICBuYW1lIHRleHQgTk9UIE5VTEwKKyk7CitJ TlNFUlQgSU5UTyBmb3JfcG9ydGlvbl9vZl90ZXN0IChpZCwgdmFsaWRfYXQsIG5hbWUpIFZBTFVF UworICAoJ1sxLDIpJywgJ1syMDE4LTAxLTAyLDIwMjAtMDEtMDEpJywgJ29uZScpOworCitVUERB VEUgZm9yX3BvcnRpb25fb2ZfdGVzdAorICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcy MDE4LTAxLTE1JyBUTyAnMjAxOS0wMS0wMScKKyAgU0VUIG5hbWUgPSAnb25lXjEnOworCitERUxF VEUgRlJPTSBmb3JfcG9ydGlvbl9vZl90ZXN0CisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZS T00gJzIwMTktMDEtMTUnIFRPICcyMDE5LTAxLTIwJzsKKworLS0gV2l0aCBhIHRhYmxlIGFsaWFz IHdpdGggQVMKKworVVBEQVRFIGZvcl9wb3J0aW9uX29mX3Rlc3QKKyAgRk9SIFBPUlRJT04gT0Yg dmFsaWRfYXQgRlJPTSAnMjAxOS0wMi0wMScgVE8gJzIwMTktMDItMDMnIEFTIHQKKyAgU0VUIG5h bWUgPSAnb25lXjInOworCitERUxFVEUgRlJPTSBmb3JfcG9ydGlvbl9vZl90ZXN0CisgIEZPUiBQ T1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMTktMDItMDMnIFRPICcyMDE5LTAyLTA0JyBBUyB0 OworCistLSBXaXRoIGEgdGFibGUgYWxpYXMgd2l0aG91dCBBUworCitVUERBVEUgZm9yX3BvcnRp b25fb2ZfdGVzdAorICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDE5LTAyLTA0JyBU TyAnMjAxOS0wMi0wNScgdAorICBTRVQgbmFtZSA9ICdvbmVeMyc7CisKK0RFTEVURSBGUk9NIGZv cl9wb3J0aW9uX29mX3Rlc3QKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAxOS0w Mi0wNScgVE8gJzIwMTktMDItMDYnIHQ7CisKKy0tIFVQREFURSB3aXRoIEZST00KKworVVBEQVRF IGZvcl9wb3J0aW9uX29mX3Rlc3QKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAx OS0wMy0wMScgdG8gJzIwMTktMDMtMDInCisgIFNFVCBuYW1lID0gJ29uZV40JworICBGUk9NIChT RUxFQ1QgJ1sxLDIpJzo6aW50NHJhbmdlKSBBUyB0MihpZCkKKyAgV0hFUkUgZm9yX3BvcnRpb25f b2ZfdGVzdC5pZCA9IHQyLmlkOworCistLSBERUxFVEUgd2l0aCBVU0lORworCitERUxFVEUgRlJP TSBmb3JfcG9ydGlvbl9vZl90ZXN0CisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIw MTktMDMtMDInIFRPICcyMDE5LTAzLTAzJworICBVU0lORyAoU0VMRUNUICdbMSwyKSc6OmludDRy YW5nZSkgQVMgdDIoaWQpCisgIFdIRVJFIGZvcl9wb3J0aW9uX29mX3Rlc3QuaWQgPSB0Mi5pZDsK KworU0VMRUNUICogRlJPTSBmb3JfcG9ydGlvbl9vZl90ZXN0IE9SREVSIEJZIGlkLCB2YWxpZF9h dDsKKworLS0gV29ya3Mgb24gbW9yZSB0aGFuIG9uZSByYW5nZQorRFJPUCBUQUJMRSBmb3JfcG9y dGlvbl9vZl90ZXN0OworQ1JFQVRFIFRBQkxFIGZvcl9wb3J0aW9uX29mX3Rlc3QgKAorICBpZCBp bnQ0cmFuZ2UsCisgIHZhbGlkMV9hdCBkYXRlcmFuZ2UsCisgIHZhbGlkMl9hdCBkYXRlcmFuZ2Us CisgIG5hbWUgdGV4dCBOT1QgTlVMTAorKTsKK0lOU0VSVCBJTlRPIGZvcl9wb3J0aW9uX29mX3Rl c3QgKGlkLCB2YWxpZDFfYXQsIHZhbGlkMl9hdCwgbmFtZSkgVkFMVUVTCisgICgnWzEsMiknLCAn WzIwMTgtMDEtMDIsMjAxOC0wMi0wMyknLCAnWzIwMTUtMDEtMDEsMjAyNS0wMS0wMSknLCAnb25l Jyk7CisKK1VQREFURSBmb3JfcG9ydGlvbl9vZl90ZXN0CisgIEZPUiBQT1JUSU9OIE9GIHZhbGlk MV9hdCBGUk9NICcyMDE4LTAxLTE1JyBUTyBOVUxMCisgIFNFVCBuYW1lID0gJ2Zvbyc7CisgIFNF TEVDVCAqIEZST00gZm9yX3BvcnRpb25fb2ZfdGVzdCBPUkRFUiBCWSBpZCwgdmFsaWQxX2F0LCB2 YWxpZDJfYXQ7CisKK1VQREFURSBmb3JfcG9ydGlvbl9vZl90ZXN0CisgIEZPUiBQT1JUSU9OIE9G IHZhbGlkMl9hdCBGUk9NICcyMDE4LTAxLTE1JyBUTyBOVUxMCisgIFNFVCBuYW1lID0gJ2Jhcic7 CisgIFNFTEVDVCAqIEZST00gZm9yX3BvcnRpb25fb2ZfdGVzdCBPUkRFUiBCWSBpZCwgdmFsaWQx X2F0LCB2YWxpZDJfYXQ7CisKK0RFTEVURSBGUk9NIGZvcl9wb3J0aW9uX29mX3Rlc3QKKyAgRk9S IFBPUlRJT04gT0YgdmFsaWQxX2F0IEZST00gJzIwMTgtMDEtMjAnIFRPIE5VTEw7CisgIFNFTEVD VCAqIEZST00gZm9yX3BvcnRpb25fb2ZfdGVzdCBPUkRFUiBCWSBpZCwgdmFsaWQxX2F0LCB2YWxp ZDJfYXQ7CisKK0RFTEVURSBGUk9NIGZvcl9wb3J0aW9uX29mX3Rlc3QKKyAgRk9SIFBPUlRJT04g T0YgdmFsaWQyX2F0IEZST00gJzIwMTgtMDEtMjAnIFRPIE5VTEw7CisgIFNFTEVDVCAqIEZST00g Zm9yX3BvcnRpb25fb2ZfdGVzdCBPUkRFUiBCWSBpZCwgdmFsaWQxX2F0LCB2YWxpZDJfYXQ7CisK Ky0tIFRlc3Qgd2l0aCBOVUxMcyBpbiB0aGUgc2NhbGFyL3JhbmdlIGtleSBjb2x1bW5zLgorLS0g VGhpcyB3b24ndCBoYXBwZW4gaWYgdGhlcmUgaXMgYSBQUklNQVJZIEtFWSBvciBVTklRVUUgY29u c3RyYWludAorLS0gYnV0IEZPUiBQT1JUSU9OIE9GIHNob3VsZG4ndCByZXF1aXJlIHRoYXQuCitE Uk9QIFRBQkxFIGZvcl9wb3J0aW9uX29mX3Rlc3Q7CitDUkVBVEUgVU5MT0dHRUQgVEFCTEUgZm9y X3BvcnRpb25fb2ZfdGVzdCAoCisgIGlkIGludDRyYW5nZSwKKyAgdmFsaWRfYXQgZGF0ZXJhbmdl LAorICBuYW1lIHRleHQKKyk7CitJTlNFUlQgSU5UTyBmb3JfcG9ydGlvbl9vZl90ZXN0IChpZCwg dmFsaWRfYXQsIG5hbWUpIFZBTFVFUworICAoJ1sxLDIpJywgTlVMTCwgJzEgbnVsbCcpLAorICAo J1sxLDIpJywgJygsKScsICcxIHVuYm91bmRlZCcpLAorICAoJ1sxLDIpJywgJ2VtcHR5JywgJzEg ZW1wdHknKSwKKyAgKE5VTEwsIE5VTEwsIE5VTEwpLAorICAoTlVMTCwgZGF0ZXJhbmdlKCcyMDE4 LTAxLTAxJywgJzIwMTktMDEtMDEnKSwgJ251bGwga2V5Jyk7CitVUERBVEUgZm9yX3BvcnRpb25f b2ZfdGVzdAorICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NIE5VTEwgVE8gTlVMTAorICBT RVQgbmFtZSA9ICdOVUxMIHRvIE5VTEwnOworU0VMRUNUICogRlJPTSBmb3JfcG9ydGlvbl9vZl90 ZXN0IE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKworRFJPUCBUQUJMRSBmb3JfcG9ydGlvbl9vZl90 ZXN0OworCistLQorLS0gVVBEQVRFIHRlc3RzCistLQorCitDUkVBVEUgVEFCTEUgZm9yX3BvcnRp b25fb2ZfdGVzdCAoCisgIGlkIGludDRyYW5nZSBOT1QgTlVMTCwKKyAgdmFsaWRfYXQgZGF0ZXJh bmdlIE5PVCBOVUxMLAorICBuYW1lIHRleHQgTk9UIE5VTEwsCisgIENPTlNUUkFJTlQgZm9yX3Bv cnRpb25fb2ZfcGsgUFJJTUFSWSBLRVkgKGlkLCB2YWxpZF9hdCBXSVRIT1VUIE9WRVJMQVBTKQor KTsKK0lOU0VSVCBJTlRPIGZvcl9wb3J0aW9uX29mX3Rlc3QgKGlkLCB2YWxpZF9hdCwgbmFtZSkg VkFMVUVTCisgICgnWzEsMiknLCAnWzIwMTgtMDEtMDIsMjAxOC0wMi0wMyknLCAnb25lJyksCisg ICgnWzEsMiknLCAnWzIwMTgtMDItMDMsMjAxOC0wMy0wMyknLCAnb25lJyksCisgICgnWzEsMikn LCAnWzIwMTgtMDMtMDMsMjAxOC0wNC0wNCknLCAnb25lJyksCisgICgnWzIsMyknLCAnWzIwMTgt MDEtMDEsMjAxOC0wMS0wNSknLCAndHdvJyksCisgICgnWzMsNCknLCAnWzIwMTgtMDEtMDEsKScs ICd0aHJlZScpLAorICAoJ1s0LDUpJywgJygsMjAxOC0wNC0wMSknLCAnZm91cicpLAorICAoJ1s1 LDYpJywgJygsKScsICdmaXZlJykKKyAgOworXHNldCBRVUlFVCBmYWxzZQorCistLSBVcGRhdGlu ZyB3aXRoIGEgbWlzc2luZyBjb2x1bW4gZmFpbHMKK1VQREFURSBmb3JfcG9ydGlvbl9vZl90ZXN0 CisgIEZPUiBQT1JUSU9OIE9GIGludmFsaWRfYXQgRlJPTSAnMjAxOC0wNi0wMScgVE8gTlVMTAor ICBTRVQgbmFtZSA9ICdmb28nCisgIFdIRVJFIGlkID0gJ1s1LDYpJzsKKworLS0gVXBkYXRpbmcg dGhlIHJhbmdlIGZhaWxzCitVUERBVEUgZm9yX3BvcnRpb25fb2ZfdGVzdAorICBGT1IgUE9SVElP TiBPRiB2YWxpZF9hdCBGUk9NICcyMDE4LTA2LTAxJyBUTyBOVUxMCisgIFNFVCB2YWxpZF9hdCA9 ICdbMTk5MC0wMS0wMSwxOTk5LTAxLTAxKScKKyAgV0hFUkUgaWQgPSAnWzUsNiknOworCistLSBU aGUgd3JvbmcgdHlwZSBmYWlscworVVBEQVRFIGZvcl9wb3J0aW9uX29mX3Rlc3QKKyAgRk9SIFBP UlRJT04gT0YgdmFsaWRfYXQgRlJPTSAxIFRPIDQKKyAgU0VUIG5hbWUgPSAnbm9wZScKKyAgV0hF UkUgaWQgPSAnWzMsNCknOworCistLSBVcGRhdGluZyB3aXRoIHRpbWVzdGFtcHMgcmV2ZXJzZWQg ZmFpbHMKK1VQREFURSBmb3JfcG9ydGlvbl9vZl90ZXN0CisgIEZPUiBQT1JUSU9OIE9GIHZhbGlk X2F0IEZST00gJzIwMTgtMDYtMDEnIFRPICcyMDE4LTAxLTAxJworICBTRVQgbmFtZSA9ICd0aHJl ZV4xJworICBXSEVSRSBpZCA9ICdbMyw0KSc7CisKKy0tIFVwZGF0aW5nIHdpdGggYSBzdWJxdWVy eSBmYWlscworVVBEQVRFIGZvcl9wb3J0aW9uX29mX3Rlc3QKKyAgRk9SIFBPUlRJT04gT0YgdmFs aWRfYXQgRlJPTSAoU0VMRUNUICcyMDE4LTAxLTAxJykgVE8gJzIwMTgtMDYtMDEnCisgIFNFVCBu YW1lID0gJ25vcGUnCisgIFdIRVJFIGlkID0gJ1szLDQpJzsKKworLS0gVXBkYXRpbmcgd2l0aCBh IGNvbHVtbiBmYWlscworVVBEQVRFIGZvcl9wb3J0aW9uX29mX3Rlc3QKKyAgRk9SIFBPUlRJT04g T0YgdmFsaWRfYXQgRlJPTSBsb3dlcih2YWxpZF9hdCkgVE8gTlVMTAorICBTRVQgbmFtZSA9ICdu b3BlJworICBXSEVSRSBpZCA9ICdbMyw0KSc7CisKKy0tIFVwZGF0aW5nIHdpdGggdGltZXN0YW1w cyBlcXVhbCBkb2VzIG5vdGhpbmcKK1VQREFURSBmb3JfcG9ydGlvbl9vZl90ZXN0CisgIEZPUiBQ T1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMTgtMDQtMDEnIFRPICcyMDE4LTA0LTAxJworICBT RVQgbmFtZSA9ICd0aHJlZV4wJworICBXSEVSRSBpZCA9ICdbMyw0KSc7CisKKy0tIFVwZGF0aW5n IGEgZmluaXRlL29wZW4gcG9ydGlvbiB3aXRoIGEgZmluaXRlL29wZW4gdGFyZ2V0CitVUERBVEUg Zm9yX3BvcnRpb25fb2ZfdGVzdAorICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDE4 LTA2LTAxJyBUTyBOVUxMCisgIFNFVCBuYW1lID0gJ3RocmVlXjEnCisgIFdIRVJFIGlkID0gJ1sz LDQpJzsKKworLS0gVXBkYXRpbmcgYSBmaW5pdGUvb3BlbiBwb3J0aW9uIHdpdGggYW4gb3Blbi9m aW5pdGUgdGFyZ2V0CitVUERBVEUgZm9yX3BvcnRpb25fb2ZfdGVzdAorICBGT1IgUE9SVElPTiBP RiB2YWxpZF9hdCBGUk9NIE5VTEwgVE8gJzIwMTgtMDMtMDEnCisgIFNFVCBuYW1lID0gJ3RocmVl XjInCisgIFdIRVJFIGlkID0gJ1szLDQpJzsKKworLS0gVXBkYXRpbmcgYW4gb3Blbi9maW5pdGUg cG9ydGlvbiB3aXRoIGFuIG9wZW4vZmluaXRlIHRhcmdldAorVVBEQVRFIGZvcl9wb3J0aW9uX29m X3Rlc3QKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSBOVUxMIFRPICcyMDE4LTAyLTAx JworICBTRVQgbmFtZSA9ICdmb3VyXjEnCisgIFdIRVJFIGlkID0gJ1s0LDUpJzsKKworLS0gVXBk YXRpbmcgYW4gb3Blbi9maW5pdGUgcG9ydGlvbiB3aXRoIGEgZmluaXRlL29wZW4gdGFyZ2V0CitV UERBVEUgZm9yX3BvcnRpb25fb2ZfdGVzdAorICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9N ICcyMDE3LTAxLTAxJyBUTyBOVUxMCisgIFNFVCBuYW1lID0gJ2ZvdXJeMicKKyAgV0hFUkUgaWQg PSAnWzQsNSknOworCistLSBVcGRhdGluZyBhIGZpbml0ZS9maW5pdGUgcG9ydGlvbiB3aXRoIGFu IGV4YWN0IGZpdAorVVBEQVRFIGZvcl9wb3J0aW9uX29mX3Rlc3QKKyAgRk9SIFBPUlRJT04gT0Yg dmFsaWRfYXQgRlJPTSAnMjAxNy0wMS0wMScgVE8gJzIwMTgtMDItMDEnCisgIFNFVCBuYW1lID0g J2ZvdXJeMycKKyAgV0hFUkUgaWQgPSAnWzQsNSknOworCistLSBVcGRhdGluZyBhbiBlbmNsb3Nl ZCBzcGFuCitVUERBVEUgZm9yX3BvcnRpb25fb2ZfdGVzdAorICBGT1IgUE9SVElPTiBPRiB2YWxp ZF9hdCBGUk9NIE5VTEwgVE8gTlVMTAorICBTRVQgbmFtZSA9ICd0d29eMicKKyAgV0hFUkUgaWQg PSAnWzIsMyknOworCistLSBVcGRhdGluZyBhbiBvcGVuL29wZW4gcG9ydGlvbiB3aXRoIGEgZmlu aXRlL2Zpbml0ZSB0YXJnZXQKK1VQREFURSBmb3JfcG9ydGlvbl9vZl90ZXN0CisgIEZPUiBQT1JU SU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMTgtMDEtMDEnIFRPICcyMDE5LTAxLTAxJworICBTRVQg bmFtZSA9ICdmaXZlXjEnCisgIFdIRVJFIGlkID0gJ1s1LDYpJzsKKworLS0gVXBkYXRpbmcgYW4g ZW5jbG9zZWQgc3BhbiB3aXRoIHNlcGFyYXRlIHByb3RydWRpbmcgc3BhbnMKK1VQREFURSBmb3Jf cG9ydGlvbl9vZl90ZXN0CisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMTctMDEt MDEnIFRPICcyMDIwLTAxLTAxJworICBTRVQgbmFtZSA9ICdmaXZlXjInCisgIFdIRVJFIGlkID0g J1s1LDYpJzsKKworLS0gVXBkYXRpbmcgbXVsdGlwbGUgZW5jbG9zZWQgc3BhbnMKK1VQREFURSBm b3JfcG9ydGlvbl9vZl90ZXN0CisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gTlVMTCBU TyBOVUxMCisgIFNFVCBuYW1lID0gJ29uZV4yJworICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKKy0t IFVwZGF0aW5nIHdpdGggYSBkaXJlY3QgdGFyZ2V0CitVUERBVEUgZm9yX3BvcnRpb25fb2ZfdGVz dAorICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCAoZGF0ZXJhbmdlKCcyMDE4LTAzLTEwJywgJzIw MTgtMDMtMTcnKSkKKyAgU0VUIG5hbWUgPSAnb25lXjMnCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsK KworLS0gVXBkYXRpbmcgdGhlIG5vbi1yYW5nZSBwYXJ0IG9mIHRoZSBQSzoKK1VQREFURSBmb3Jf cG9ydGlvbl9vZl90ZXN0CisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMTgtMDIt MTUnIFRPIE5VTEwKKyAgU0VUIGlkID0gJ1s2LDcpJworICBXSEVSRSBpZCA9ICdbMSwyKSc7CisK Ky0tIFVQREFURSB3aXRoIG5vIFdIRVJFIGNsYXVzZQorVVBEQVRFIGZvcl9wb3J0aW9uX29mX3Rl c3QKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAzMC0wMS0wMScgVE8gTlVMTAor ICBTRVQgbmFtZSA9IG5hbWUgfHwgJyonOworCitTRUxFQ1QgKiBGUk9NIGZvcl9wb3J0aW9uX29m X3Rlc3QgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworXHNldCBRVUlFVCB0cnVlCisKKy0tIFVwZGF0 aW5nIHdpdGggYSBzaGlmdC9yZWR1Y2UgY29uZmxpY3QKKy0tIChyZXF1aXJlcyBhIHRzcmFuZ2Ug Y29sdW1uKQorQ1JFQVRFIFVOTE9HR0VEIFRBQkxFIGZvcl9wb3J0aW9uX29mX3Rlc3QyICgKKyAg aWQgaW50NHJhbmdlLAorICB2YWxpZF9hdCB0c3JhbmdlLAorICBuYW1lIHRleHQKKyk7CitJTlNF UlQgSU5UTyBmb3JfcG9ydGlvbl9vZl90ZXN0MiAoaWQsIHZhbGlkX2F0LCBuYW1lKSBWQUxVRVMK KyAgKCdbMSwyKScsICdbMjAwMC0wMS0wMSwyMDIwLTAxLTAxKScsICdvbmUnKTsKKy0tIHVwZGF0 ZXMgWzIwMTEtMDMtMDEgMDE6MDI6MDAsIDIwMTItMDEtMDEpIChub3RlIDIgbWludXRlcykKK1VQ REFURSBmb3JfcG9ydGlvbl9vZl90ZXN0MgorICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdAorICAg IEZST00gJzIwMTEtMDMtMDEnOjp0aW1lc3RhbXAgKyBJTlRFUlZBTCAnMTowMjowMycgSE9VUiBU TyBNSU5VVEUKKyAgICBUTyAnMjAxMi0wMS0wMScKKyAgU0VUIG5hbWUgPSAnb25lXjEnCisgIFdI RVJFIGlkID0gJ1sxLDIpJzsKKworLS0gVE8gaXMgdXNlZCBmb3IgdGhlIGJvdW5kIGJ1dCBub3Qg dGhlIElOVEVSVkFMOgorLS0gc3ludGF4IGVycm9yCitVUERBVEUgZm9yX3BvcnRpb25fb2ZfdGVz dDIKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQKKyAgICBGUk9NICcyMDEzLTAzLTAxJzo6dGlt ZXN0YW1wICsgSU5URVJWQUwgJzE6MDI6MDMnIEhPVVIKKyAgICBUTyAnMjAxNC0wMS0wMScKKyAg U0VUIG5hbWUgPSAnb25lXjInCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworLS0gYWRkaW5nIHBh cmVucyBmaXhlcyBpdAorLS0gdXBkYXRlcyBbMjAxNS0wMy0wMSAwMTowMDowMCwgMjAxNi0wMS0w MSkgKG5vIG1pbnV0ZXMpCitVUERBVEUgZm9yX3BvcnRpb25fb2ZfdGVzdDIKKyAgRk9SIFBPUlRJ T04gT0YgdmFsaWRfYXQKKyAgICBGUk9NICgnMjAxNS0wMy0wMSc6OnRpbWVzdGFtcCArIElOVEVS VkFMICcxOjAyOjAzJyBIT1VSKQorICAgIFRPICcyMDE2LTAxLTAxJworICBTRVQgbmFtZSA9ICdv bmVeMycKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitTRUxFQ1QgKiBGUk9NIGZvcl9wb3J0aW9u X29mX3Rlc3QyIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK0RST1AgVEFCTEUgZm9yX3BvcnRpb25f b2ZfdGVzdDI7CisKKy0tIFVQREFURSBGT1IgUE9SVElPTiBPRiBpbiBhIENURToKKworLS0gVmlz aWJsZSB0byBTRUxFQ1Q6CitJTlNFUlQgSU5UTyBmb3JfcG9ydGlvbl9vZl90ZXN0IChpZCwgdmFs aWRfYXQsIG5hbWUpIFZBTFVFUworICAoJ1sxMCwxMSknLCAnWzIwMTgtMDEtMDEsMjAyMC0wMS0w MSknLCAndGVuJyk7CitXSVRIIHVwZGF0ZV9hcHIgQVMgKAorICBVUERBVEUgZm9yX3BvcnRpb25f b2ZfdGVzdAorICAgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMTgtMDQtMDEnIFRP ICcyMDE4LTA1LTAxJworICAgIFNFVCBuYW1lID0gJ0FwciAyMDE4JworICAgIFdIRVJFIGlkID0g J1sxMCwxMSknCisgICAgUkVUVVJOSU5HIGlkLCB2YWxpZF9hdCwgbmFtZQorKQorU0VMRUNUICoK KyAgRlJPTSBmb3JfcG9ydGlvbl9vZl90ZXN0IEFTIHQsIHVwZGF0ZV9hcHIKKyAgV0hFUkUgdC5p ZCA9IHVwZGF0ZV9hcHIuaWQ7CitTRUxFQ1QgKiBGUk9NIGZvcl9wb3J0aW9uX29mX3Rlc3QgV0hF UkUgaWQgPSAnWzEwLDExKSc7CisKKy0tIE5vdCB2aXNpYmxlIHRvIFVQREFURToKKy0tIFR1cGxl cyB1cGRhdGVkL2luc2VydGVkIHdpdGhpbiB0aGUgQ1RFIGFyZSBub3QgdmlzaWJsZSB0byB0aGUg bWFpbiBxdWVyeSB5ZXQsCistLSBidXQgbmVpdGhlciBhcmUgb2xkIHR1cGxlcyB0aGUgQ1RFIGNo YW5nZWQ6CitJTlNFUlQgSU5UTyBmb3JfcG9ydGlvbl9vZl90ZXN0IChpZCwgdmFsaWRfYXQsIG5h bWUpIFZBTFVFUworICAoJ1sxMSwxMiknLCAnWzIwMTgtMDEtMDEsMjAyMC0wMS0wMSknLCAnZWxl dmVuJyk7CitXSVRIIHVwZGF0ZV9hcHIgQVMgKAorICBVUERBVEUgZm9yX3BvcnRpb25fb2ZfdGVz dAorICAgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMTgtMDQtMDEnIFRPICcyMDE4 LTA1LTAxJworICAgIFNFVCBuYW1lID0gJ0FwciAyMDE4JworICAgIFdIRVJFIGlkID0gJ1sxMSwx MiknCisgICAgUkVUVVJOSU5HIGlkLCB2YWxpZF9hdCwgbmFtZQorKQorVVBEQVRFIGZvcl9wb3J0 aW9uX29mX3Rlc3QKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAxOC0wNS0wMScg VE8gJzIwMTgtMDYtMDEnCisgIEFTIHQKKyAgU0VUIG5hbWUgPSAnTWF5IDIwMTgnCisgIEZST00g dXBkYXRlX2FwciBBUyBqCisgIFdIRVJFIHQuaWQgPSBqLmlkOworU0VMRUNUICogRlJPTSBmb3Jf cG9ydGlvbl9vZl90ZXN0IFdIRVJFIGlkID0gJ1sxMSwxMiknOworREVMRVRFIEZST00gZm9yX3Bv cnRpb25fb2ZfdGVzdCBXSEVSRSBpZCBJTiAoJ1sxMCwxMSknLCAnWzExLDEyKScpOworCistLSBV UERBVEUgRk9SIFBPUlRJT04gT0YgaW4gYSBQTC9wZ1NRTCBmdW5jdGlvbgorSU5TRVJUIElOVE8g Zm9yX3BvcnRpb25fb2ZfdGVzdCAoaWQsIHZhbGlkX2F0LCBuYW1lKSBWQUxVRVMKKyAgKCdbMTAs MTEpJywgJ1syMDE4LTAxLTAxLDIwMjAtMDEtMDEpJywgJ3RlbicpOworQ1JFQVRFIEZVTkNUSU9O IGZwb191cGRhdGUoX2lkIGludDRyYW5nZSwgX3RhcmdldF9mcm9tIGRhdGUsIF90YXJnZXRfdGls IGRhdGUpCitSRVRVUk5TIHZvaWQgTEFOR1VBR0UgcGxwZ3NxbCBBUworJCQKK0JFR0lOCisgIFVQ REFURSBmb3JfcG9ydGlvbl9vZl90ZXN0CisgICAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJP TSAkMiBUTyAkMworICAgIFNFVCBuYW1lID0gY29uY2F0KF90YXJnZXRfZnJvbTo6dGV4dCwgJyB0 byAnLCBfdGFyZ2V0X3RpbDo6dGV4dCkKKyAgICBXSEVSRSBpZCA9ICQxOworRU5EOworJCQ7CitT RUxFQ1QgZnBvX3VwZGF0ZSgnWzEwLDExKScsICcyMDE1LTAxLTAxJywgJzIwMTktMDEtMDEnKTsK K1NFTEVDVCAqIEZST00gZm9yX3BvcnRpb25fb2ZfdGVzdCBXSEVSRSBpZCA9ICdbMTAsMTEpJzsK KworRFJPUCBUQUJMRSBmb3JfcG9ydGlvbl9vZl90ZXN0OworCistLQorLS0gREVMRVRFIHRlc3Rz CistLQorCitDUkVBVEUgVEFCTEUgZm9yX3BvcnRpb25fb2ZfdGVzdCAoCisgIGlkIGludDRyYW5n ZSBOT1QgTlVMTCwKKyAgdmFsaWRfYXQgZGF0ZXJhbmdlIE5PVCBOVUxMLAorICBuYW1lIHRleHQg Tk9UIE5VTEwsCisgIENPTlNUUkFJTlQgZm9yX3BvcnRpb25fb2ZfcGsgUFJJTUFSWSBLRVkgKGlk LCB2YWxpZF9hdCBXSVRIT1VUIE9WRVJMQVBTKQorKTsKK0lOU0VSVCBJTlRPIGZvcl9wb3J0aW9u X29mX3Rlc3QgKGlkLCB2YWxpZF9hdCwgbmFtZSkgVkFMVUVTCisgICgnWzEsMiknLCAnWzIwMTgt MDEtMDIsMjAxOC0wMi0wMyknLCAnb25lJyksCisgICgnWzEsMiknLCAnWzIwMTgtMDItMDMsMjAx OC0wMy0wMyknLCAnb25lJyksCisgICgnWzEsMiknLCAnWzIwMTgtMDMtMDMsMjAxOC0wNC0wNCkn LCAnb25lJyksCisgICgnWzIsMyknLCAnWzIwMTgtMDEtMDEsMjAxOC0wMS0wNSknLCAndHdvJyks CisgICgnWzMsNCknLCAnWzIwMTgtMDEtMDEsKScsICd0aHJlZScpLAorICAoJ1s0LDUpJywgJygs MjAxOC0wNC0wMSknLCAnZm91cicpLAorICAoJ1s1LDYpJywgJygsKScsICdmaXZlJyksCisgICgn WzYsNyknLCAnWzIwMTgtMDEtMDEsKScsICdzaXgnKSwKKyAgKCdbNyw4KScsICcoLDIwMTgtMDQt MDEpJywgJ3NldmVuJyksCisgICgnWzgsOSknLCAnWzIwMTgtMDEtMDIsMjAxOC0wMi0wMyknLCAn ZWlnaHQnKSwKKyAgKCdbOCw5KScsICdbMjAxOC0wMi0wMywyMDE4LTAzLTAzKScsICdlaWdodCcp LAorICAoJ1s4LDkpJywgJ1syMDE4LTAzLTAzLDIwMTgtMDQtMDQpJywgJ2VpZ2h0JykKKyAgOwor XHNldCBRVUlFVCBmYWxzZQorCistLSBEZWxldGluZyB3aXRoIGEgbWlzc2luZyBjb2x1bW4gZmFp bHMKK0RFTEVURSBGUk9NIGZvcl9wb3J0aW9uX29mX3Rlc3QKKyAgRk9SIFBPUlRJT04gT0YgaW52 YWxpZF9hdCBGUk9NICcyMDE4LTA2LTAxJyBUTyBOVUxMCisgIFdIRVJFIGlkID0gJ1s1LDYpJzsK KworLS0gVGhlIHdyb25nIHR5cGUgZmFpbHMKK0RFTEVURSBGUk9NIGZvcl9wb3J0aW9uX29mX3Rl c3QKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAxIFRPIDQKKyAgV0hFUkUgaWQgPSAn WzMsNCknOworCistLSBEZWxldGluZyB3aXRoIHRpbWVzdGFtcHMgcmV2ZXJzZWQgZmFpbHMKK0RF TEVURSBGUk9NIGZvcl9wb3J0aW9uX29mX3Rlc3QKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQg RlJPTSAnMjAxOC0wNi0wMScgVE8gJzIwMTgtMDEtMDEnCisgIFdIRVJFIGlkID0gJ1szLDQpJzsK KworLS0gRGVsZXRpbmcgd2l0aCBhIHN1YnF1ZXJ5IGZhaWxzCitERUxFVEUgRlJPTSBmb3JfcG9y dGlvbl9vZl90ZXN0CisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gKFNFTEVDVCAnMjAx OC0wMS0wMScpIFRPICcyMDE4LTA2LTAxJworICBXSEVSRSBpZCA9ICdbMyw0KSc7CisKKy0tIERl bGV0aW5nIHdpdGggYSBjb2x1bW4gZmFpbHMKK0RFTEVURSBGUk9NIGZvcl9wb3J0aW9uX29mX3Rl c3QKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSBsb3dlcih2YWxpZF9hdCkgVE8gTlVM TAorICBXSEVSRSBpZCA9ICdbMyw0KSc7CisKKy0tIERlbGV0aW5nIHdpdGggdGltZXN0YW1wcyBl cXVhbCBkb2VzIG5vdGhpbmcKK0RFTEVURSBGUk9NIGZvcl9wb3J0aW9uX29mX3Rlc3QKKyAgRk9S IFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAxOC0wNC0wMScgVE8gJzIwMTgtMDQtMDEnCisg IFdIRVJFIGlkID0gJ1szLDQpJzsKKworLS0gRGVsZXRpbmcgYSBmaW5pdGUvb3BlbiBwb3J0aW9u IHdpdGggYSBmaW5pdGUvb3BlbiB0YXJnZXQKK0RFTEVURSBGUk9NIGZvcl9wb3J0aW9uX29mX3Rl c3QKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAxOC0wNi0wMScgVE8gTlVMTAor ICBXSEVSRSBpZCA9ICdbMyw0KSc7CisKKy0tIERlbGV0aW5nIGEgZmluaXRlL29wZW4gcG9ydGlv biB3aXRoIGFuIG9wZW4vZmluaXRlIHRhcmdldAorREVMRVRFIEZST00gZm9yX3BvcnRpb25fb2Zf dGVzdAorICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NIE5VTEwgVE8gJzIwMTgtMDMtMDEn CisgIFdIRVJFIGlkID0gJ1s2LDcpJzsKKworLS0gRGVsZXRpbmcgYW4gb3Blbi9maW5pdGUgcG9y dGlvbiB3aXRoIGFuIG9wZW4vZmluaXRlIHRhcmdldAorREVMRVRFIEZST00gZm9yX3BvcnRpb25f b2ZfdGVzdAorICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NIE5VTEwgVE8gJzIwMTgtMDIt MDEnCisgIFdIRVJFIGlkID0gJ1s0LDUpJzsKKworLS0gRGVsZXRpbmcgYW4gb3Blbi9maW5pdGUg cG9ydGlvbiB3aXRoIGEgZmluaXRlL29wZW4gdGFyZ2V0CitERUxFVEUgRlJPTSBmb3JfcG9ydGlv bl9vZl90ZXN0CisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMTctMDEtMDEnIFRP IE5VTEwKKyAgV0hFUkUgaWQgPSAnWzcsOCknOworCistLSBEZWxldGluZyBhIGZpbml0ZS9maW5p dGUgcG9ydGlvbiB3aXRoIGFuIGV4YWN0IGZpdAorREVMRVRFIEZST00gZm9yX3BvcnRpb25fb2Zf dGVzdAorICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDE4LTAyLTAxJyBUTyAnMjAx OC0wNC0wMScKKyAgV0hFUkUgaWQgPSAnWzQsNSknOworCistLSBEZWxldGluZyBhbiBlbmNsb3Nl ZCBzcGFuCitERUxFVEUgRlJPTSBmb3JfcG9ydGlvbl9vZl90ZXN0CisgIEZPUiBQT1JUSU9OIE9G IHZhbGlkX2F0IEZST00gTlVMTCBUTyBOVUxMCisgIFdIRVJFIGlkID0gJ1syLDMpJzsKKworLS0g RGVsZXRpbmcgYW4gb3Blbi9vcGVuIHBvcnRpb24gd2l0aCBhIGZpbml0ZS9maW5pdGUgdGFyZ2V0 CitERUxFVEUgRlJPTSBmb3JfcG9ydGlvbl9vZl90ZXN0CisgIEZPUiBQT1JUSU9OIE9GIHZhbGlk X2F0IEZST00gJzIwMTgtMDEtMDEnIFRPICcyMDE5LTAxLTAxJworICBXSEVSRSBpZCA9ICdbNSw2 KSc7CisKKy0tIERlbGV0aW5nIGFuIGVuY2xvc2VkIHNwYW4gd2l0aCBzZXBhcmF0ZSBwcm90cnVk aW5nIHNwYW5zCitERUxFVEUgRlJPTSBmb3JfcG9ydGlvbl9vZl90ZXN0CisgIEZPUiBQT1JUSU9O IE9GIHZhbGlkX2F0IEZST00gJzIwMTgtMDItMDMnIFRPICcyMDE4LTAzLTAzJworICBXSEVSRSBp ZCA9ICdbMSwyKSc7CisKKy0tIERlbGV0aW5nIG11bHRpcGxlIGVuY2xvc2VkIHNwYW5zCitERUxF VEUgRlJPTSBmb3JfcG9ydGlvbl9vZl90ZXN0CisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZS T00gTlVMTCBUTyBOVUxMCisgIFdIRVJFIGlkID0gJ1s4LDkpJzsKKworLS0gRGVsZXRpbmcgd2l0 aCBhIGRpcmVjdCB0YXJnZXQKK0RFTEVURSBGUk9NIGZvcl9wb3J0aW9uX29mX3Rlc3QKKyAgRk9S IFBPUlRJT04gT0YgdmFsaWRfYXQgKGRhdGVyYW5nZSgnMjAxOC0wMy0xMCcsICcyMDE4LTAzLTE3 JykpCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworLS0gREVMRVRFIHdpdGggbm8gV0hFUkUgY2xh dXNlCitERUxFVEUgRlJPTSBmb3JfcG9ydGlvbl9vZl90ZXN0CisgIEZPUiBQT1JUSU9OIE9GIHZh bGlkX2F0IEZST00gJzIwMzAtMDEtMDEnIFRPIE5VTEw7CisKK1NFTEVDVCAqIEZST00gZm9yX3Bv cnRpb25fb2ZfdGVzdCBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7Citcc2V0IFFVSUVUIHRydWUKKwor LS0gVVBEQVRFIC4uLiBSRVRVUk5JTkcgcmV0dXJucyBvbmx5IHRoZSB1cGRhdGVkIHZhbHVlcyAo bm90IHRoZSBpbnNlcnRlZCBzaWRlIHZhbHVlcykKK1VQREFURSBmb3JfcG9ydGlvbl9vZl90ZXN0 CisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMTgtMDItMDEnIFRPICcyMDE4LTAy LTE1JworICBTRVQgbmFtZSA9ICd0aHJlZV4zJworICBXSEVSRSBpZCA9ICdbMyw0KScKKyAgUkVU VVJOSU5HICo7CisKKy0tIERFTEVURSAuLi4gUkVUVVJOSU5HIHJldHVybnMgdGhlIGRlbGV0ZWQg dmFsdWVzIChyZWdhcmRsZXNzIG9mIGJvdW5kcykKK0RFTEVURSBGUk9NIGZvcl9wb3J0aW9uX29m X3Rlc3QKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAxOC0wMi0wMicgVE8gJzIw MTgtMDItMDMnCisgIFdIRVJFIGlkID0gJ1szLDQpJworICBSRVRVUk5JTkcgKjsKKworLS0gREVM RVRFIEZPUiBQT1JUSU9OIE9GIGluIGEgUEwvcGdTUUwgZnVuY3Rpb24KK0lOU0VSVCBJTlRPIGZv cl9wb3J0aW9uX29mX3Rlc3QgKGlkLCB2YWxpZF9hdCwgbmFtZSkgVkFMVUVTCisgICgnWzEwLDEx KScsICdbMjAxOC0wMS0wMSwyMDIwLTAxLTAxKScsICd0ZW4nKTsKK0NSRUFURSBGVU5DVElPTiBm cG9fZGVsZXRlKF9pZCBpbnQ0cmFuZ2UsIF90YXJnZXRfZnJvbSBkYXRlLCBfdGFyZ2V0X3RpbCBk YXRlKQorUkVUVVJOUyB2b2lkIExBTkdVQUdFIHBscGdzcWwgQVMKKyQkCitCRUdJTgorICBERUxF VEUgRlJPTSBmb3JfcG9ydGlvbl9vZl90ZXN0CisgICAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQg RlJPTSAkMiBUTyAkMworICAgIFdIRVJFIGlkID0gJDE7CitFTkQ7CiskJDsKK1NFTEVDVCBmcG9f ZGVsZXRlKCdbMTAsMTEpJywgJzIwMTUtMDEtMDEnLCAnMjAxOS0wMS0wMScpOworU0VMRUNUICog RlJPTSBmb3JfcG9ydGlvbl9vZl90ZXN0IFdIRVJFIGlkID0gJ1sxMCwxMSknOworREVMRVRFIEZS T00gZm9yX3BvcnRpb25fb2ZfdGVzdCBXSEVSRSBpZCBJTiAoJ1sxMCwxMSknKTsKKworCistLSB0 ZXN0IHRoYXQgd2UgcnVuIHRyaWdnZXJzIG9uIHRoZSBVUERBVEUvREVMRVRFZCByb3cgYW5kIHRo ZSBJTlNFUlRlZCByb3dzCisKK0NSRUFURSBGVU5DVElPTiBkdW1wX3RyaWdnZXIoKQorUkVUVVJO UyBUUklHR0VSIExBTkdVQUdFIHBscGdzcWwgQVMKKyQkCitCRUdJTgorICBSQUlTRSBOT1RJQ0Ug JyU6ICUgJSAlOicsCisgICAgVEdfTkFNRSwgVEdfV0hFTiwgVEdfT1AsIFRHX0xFVkVMOworCisg IElGIFRHX0FSR1ZbMF0gVEhFTgorICAgIFJBSVNFIE5PVElDRSAnICBvbGQ6ICUnLCAoU0VMRUNU IHN0cmluZ19hZ2cob2xkX3RhYmxlOjp0ZXh0LCAnXG4gICAgICAgJykgRlJPTSBvbGRfdGFibGUp OworICBFTFNFCisgICAgUkFJU0UgTk9USUNFICcgIG9sZDogJScsIE9MRC52YWxpZF9hdDsKKyAg RU5EIElGOworICBJRiBUR19BUkdWWzFdIFRIRU4KKyAgICBSQUlTRSBOT1RJQ0UgJyAgbmV3OiAl JywgKFNFTEVDVCBzdHJpbmdfYWdnKG5ld190YWJsZTo6dGV4dCwgJ1xuICAgICAgICcpIEZST00g bmV3X3RhYmxlKTsKKyAgRUxTRQorICAgIFJBSVNFIE5PVElDRSAnICBuZXc6ICUnLCBORVcudmFs aWRfYXQ7CisgIEVORCBJRjsKKworICBJRiBUR19PUCA9ICdJTlNFUlQnIE9SIFRHX09QID0gJ1VQ REFURScgVEhFTgorICAgIFJFVFVSTiBORVc7CisgIEVMU0lGIFRHX09QID0gJ0RFTEVURScgVEhF TgorICAgIFJFVFVSTiBPTEQ7CisgIEVORCBJRjsKK0VORDsKKyQkOworCistLSBzdGF0ZW1lbnQg dHJpZ2dlcnM6CisKK0NSRUFURSBUUklHR0VSIGZwb19iZWZvcmVfc3RtdAorQkVGT1JFIElOU0VS VCBPUiBVUERBVEUgT1IgREVMRVRFIE9OIGZvcl9wb3J0aW9uX29mX3Rlc3QKK0ZPUiBFQUNIIFNU QVRFTUVOVCBFWEVDVVRFIFBST0NFRFVSRSBkdW1wX3RyaWdnZXIoZmFsc2UsIGZhbHNlKTsKKwor Q1JFQVRFIFRSSUdHRVIgZnBvX2FmdGVyX2luc2VydF9zdG10CitBRlRFUiBJTlNFUlQgT04gZm9y X3BvcnRpb25fb2ZfdGVzdAorRk9SIEVBQ0ggU1RBVEVNRU5UIEVYRUNVVEUgUFJPQ0VEVVJFIGR1 bXBfdHJpZ2dlcihmYWxzZSwgZmFsc2UpOworCitDUkVBVEUgVFJJR0dFUiBmcG9fYWZ0ZXJfdXBk YXRlX3N0bXQKK0FGVEVSIFVQREFURSBPTiBmb3JfcG9ydGlvbl9vZl90ZXN0CitGT1IgRUFDSCBT VEFURU1FTlQgRVhFQ1VURSBQUk9DRURVUkUgZHVtcF90cmlnZ2VyKGZhbHNlLCBmYWxzZSk7CisK K0NSRUFURSBUUklHR0VSIGZwb19hZnRlcl9kZWxldGVfc3RtdAorQUZURVIgREVMRVRFIE9OIGZv cl9wb3J0aW9uX29mX3Rlc3QKK0ZPUiBFQUNIIFNUQVRFTUVOVCBFWEVDVVRFIFBST0NFRFVSRSBk dW1wX3RyaWdnZXIoZmFsc2UsIGZhbHNlKTsKKworLS0gcm93IHRyaWdnZXJzOgorCitDUkVBVEUg VFJJR0dFUiBmcG9fYmVmb3JlX3JvdworQkVGT1JFIElOU0VSVCBPUiBVUERBVEUgT1IgREVMRVRF IE9OIGZvcl9wb3J0aW9uX29mX3Rlc3QKK0ZPUiBFQUNIIFJPVyBFWEVDVVRFIFBST0NFRFVSRSBk dW1wX3RyaWdnZXIoZmFsc2UsIGZhbHNlKTsKKworQ1JFQVRFIFRSSUdHRVIgZnBvX2FmdGVyX2lu c2VydF9yb3cKK0FGVEVSIElOU0VSVCBPTiBmb3JfcG9ydGlvbl9vZl90ZXN0CitGT1IgRUFDSCBS T1cgRVhFQ1VURSBQUk9DRURVUkUgZHVtcF90cmlnZ2VyKGZhbHNlLCBmYWxzZSk7CisKK0NSRUFU RSBUUklHR0VSIGZwb19hZnRlcl91cGRhdGVfcm93CitBRlRFUiBVUERBVEUgT04gZm9yX3BvcnRp b25fb2ZfdGVzdAorRk9SIEVBQ0ggUk9XIEVYRUNVVEUgUFJPQ0VEVVJFIGR1bXBfdHJpZ2dlcihm YWxzZSwgZmFsc2UpOworCitDUkVBVEUgVFJJR0dFUiBmcG9fYWZ0ZXJfZGVsZXRlX3JvdworQUZU RVIgREVMRVRFIE9OIGZvcl9wb3J0aW9uX29mX3Rlc3QKK0ZPUiBFQUNIIFJPVyBFWEVDVVRFIFBS T0NFRFVSRSBkdW1wX3RyaWdnZXIoZmFsc2UsIGZhbHNlKTsKKworCitVUERBVEUgZm9yX3BvcnRp b25fb2ZfdGVzdAorICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDIxLTAxLTAxJyBU TyAnMjAyMi0wMS0wMScKKyAgU0VUIG5hbWUgPSAnZml2ZV4zJworICBXSEVSRSBpZCA9ICdbNSw2 KSc7CisKK0RFTEVURSBGUk9NIGZvcl9wb3J0aW9uX29mX3Rlc3QKKyAgRk9SIFBPUlRJT04gT0Yg dmFsaWRfYXQgRlJPTSAnMjAyMy0wMS0wMScgVE8gJzIwMjQtMDEtMDEnCisgIFdIRVJFIGlkID0g J1s1LDYpJzsKKworU0VMRUNUICogRlJPTSBmb3JfcG9ydGlvbl9vZl90ZXN0IE9SREVSIEJZIGlk LCB2YWxpZF9hdDsKKworLS0gVHJpZ2dlcnMgd2l0aCBhIGN1c3RvbSB0cmFuc2l0aW9uIHRhYmxl IG5hbWU6CisKK0RST1AgVEFCTEUgZm9yX3BvcnRpb25fb2ZfdGVzdDsKK0NSRUFURSBUQUJMRSBm b3JfcG9ydGlvbl9vZl90ZXN0ICgKKyAgaWQgaW50NHJhbmdlLAorICB2YWxpZF9hdCBkYXRlcmFu Z2UsCisgIG5hbWUgdGV4dAorKTsKK0lOU0VSVCBJTlRPIGZvcl9wb3J0aW9uX29mX3Rlc3QgVkFM VUVTICgnWzEsMiknLCAnWzIwMTgtMDEtMDEsMjAyMC0wMS0wMSknLCAnb25lJyk7CisKKy0tIHN0 YXRlbWVudCB0cmlnZ2VyczoKKworQ1JFQVRFIFRSSUdHRVIgZnBvX2JlZm9yZV9zdG10CitCRUZP UkUgSU5TRVJUIE9SIFVQREFURSBPUiBERUxFVEUgT04gZm9yX3BvcnRpb25fb2ZfdGVzdAorRk9S IEVBQ0ggU1RBVEVNRU5UIEVYRUNVVEUgUFJPQ0VEVVJFIGR1bXBfdHJpZ2dlcihmYWxzZSwgZmFs c2UpOworCitDUkVBVEUgVFJJR0dFUiBmcG9fYWZ0ZXJfaW5zZXJ0X3N0bXQKK0FGVEVSIElOU0VS VCBPTiBmb3JfcG9ydGlvbl9vZl90ZXN0CitSRUZFUkVOQ0lORyBORVcgVEFCTEUgQVMgbmV3X3Rh YmxlCitGT1IgRUFDSCBTVEFURU1FTlQgRVhFQ1VURSBQUk9DRURVUkUgZHVtcF90cmlnZ2VyKGZh bHNlLCB0cnVlKTsKKworQ1JFQVRFIFRSSUdHRVIgZnBvX2FmdGVyX3VwZGF0ZV9zdG10CitBRlRF UiBVUERBVEUgT04gZm9yX3BvcnRpb25fb2ZfdGVzdAorUkVGRVJFTkNJTkcgTkVXIFRBQkxFIEFT IG5ld190YWJsZSBPTEQgVEFCTEUgQVMgb2xkX3RhYmxlCitGT1IgRUFDSCBTVEFURU1FTlQgRVhF Q1VURSBQUk9DRURVUkUgZHVtcF90cmlnZ2VyKHRydWUsIHRydWUpOworCitDUkVBVEUgVFJJR0dF UiBmcG9fYWZ0ZXJfZGVsZXRlX3N0bXQKK0FGVEVSIERFTEVURSBPTiBmb3JfcG9ydGlvbl9vZl90 ZXN0CitSRUZFUkVOQ0lORyBPTEQgVEFCTEUgQVMgb2xkX3RhYmxlCitGT1IgRUFDSCBTVEFURU1F TlQgRVhFQ1VURSBQUk9DRURVUkUgZHVtcF90cmlnZ2VyKHRydWUsIGZhbHNlKTsKKworLS0gcm93 IHRyaWdnZXJzOgorCitDUkVBVEUgVFJJR0dFUiBmcG9fYmVmb3JlX3JvdworQkVGT1JFIElOU0VS VCBPUiBVUERBVEUgT1IgREVMRVRFIE9OIGZvcl9wb3J0aW9uX29mX3Rlc3QKK0ZPUiBFQUNIIFJP VyBFWEVDVVRFIFBST0NFRFVSRSBkdW1wX3RyaWdnZXIoZmFsc2UsIGZhbHNlKTsKKworQ1JFQVRF IFRSSUdHRVIgZnBvX2FmdGVyX2luc2VydF9yb3cKK0FGVEVSIElOU0VSVCBPTiBmb3JfcG9ydGlv bl9vZl90ZXN0CitSRUZFUkVOQ0lORyBORVcgVEFCTEUgQVMgbmV3X3RhYmxlCitGT1IgRUFDSCBS T1cgRVhFQ1VURSBQUk9DRURVUkUgZHVtcF90cmlnZ2VyKGZhbHNlLCB0cnVlKTsKKworQ1JFQVRF IFRSSUdHRVIgZnBvX2FmdGVyX3VwZGF0ZV9yb3cKK0FGVEVSIFVQREFURSBPTiBmb3JfcG9ydGlv bl9vZl90ZXN0CitSRUZFUkVOQ0lORyBPTEQgVEFCTEUgQVMgb2xkX3RhYmxlIE5FVyBUQUJMRSBB UyBuZXdfdGFibGUKK0ZPUiBFQUNIIFJPVyBFWEVDVVRFIFBST0NFRFVSRSBkdW1wX3RyaWdnZXIo dHJ1ZSwgdHJ1ZSk7CisKK0NSRUFURSBUUklHR0VSIGZwb19hZnRlcl9kZWxldGVfcm93CitBRlRF UiBERUxFVEUgT04gZm9yX3BvcnRpb25fb2ZfdGVzdAorUkVGRVJFTkNJTkcgT0xEIFRBQkxFIEFT IG9sZF90YWJsZQorRk9SIEVBQ0ggUk9XIEVYRUNVVEUgUFJPQ0VEVVJFIGR1bXBfdHJpZ2dlcih0 cnVlLCBmYWxzZSk7CisKK0JFR0lOOworVVBEQVRFIGZvcl9wb3J0aW9uX29mX3Rlc3QKKyAgRk9S IFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAxOC0wMS0xNScgVE8gJzIwMTktMDEtMDEnCisg IFNFVCBuYW1lID0gJzIwMTgtMDEtMTVfdG9fMjAxOS0wMS0wMSc7CitST0xMQkFDSzsKKworQkVH SU47CitERUxFVEUgRlJPTSBmb3JfcG9ydGlvbl9vZl90ZXN0CisgIEZPUiBQT1JUSU9OIE9GIHZh bGlkX2F0IEZST00gTlVMTCBUTyAnMjAxOC0wMS0yMSc7CitST0xMQkFDSzsKKworQkVHSU47CitV UERBVEUgZm9yX3BvcnRpb25fb2ZfdGVzdAorICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9N IE5VTEwgVE8gJzIwMTgtMDEtMDInCisgIFNFVCBuYW1lID0gJ05VTExfdG9fMjAxOC0wMS0wMSc7 CitST0xMQkFDSzsKKworLS0gRGVmZXJyZWQgdHJpZ2dlcnMKKy0tIChtdXN0IGJlIENPTlNUUkFJ TlQgdHJpZ2dlcnMgdGh1cyBBRlRFUiBST1cgd2l0aCBubyB0cmFuc2l0aW9uIHRhYmxlcykKKwor RFJPUCBUQUJMRSBmb3JfcG9ydGlvbl9vZl90ZXN0OworQ1JFQVRFIFRBQkxFIGZvcl9wb3J0aW9u X29mX3Rlc3QgKAorICBpZCBpbnQ0cmFuZ2UsCisgIHZhbGlkX2F0IGRhdGVyYW5nZSwKKyAgbmFt ZSB0ZXh0CispOworSU5TRVJUIElOVE8gZm9yX3BvcnRpb25fb2ZfdGVzdCAoaWQsIHZhbGlkX2F0 LCBuYW1lKSBWQUxVRVMKKyAgKCdbMSwyKScsICdbMjAxOC0wMS0wMSwyMDIwLTAxLTAxKScsICdv bmUnKTsKKworQ1JFQVRFIENPTlNUUkFJTlQgVFJJR0dFUiBmcG9fYWZ0ZXJfaW5zZXJ0X3Jvdwor QUZURVIgSU5TRVJUIE9OIGZvcl9wb3J0aW9uX29mX3Rlc3QKK0RFRkVSUkFCTEUgSU5JVElBTExZ IERFRkVSUkVECitGT1IgRUFDSCBST1cgRVhFQ1VURSBQUk9DRURVUkUgZHVtcF90cmlnZ2VyKGZh bHNlLCBmYWxzZSk7CisKK0NSRUFURSBDT05TVFJBSU5UIFRSSUdHRVIgZnBvX2FmdGVyX3VwZGF0 ZV9yb3cKK0FGVEVSIFVQREFURSBPTiBmb3JfcG9ydGlvbl9vZl90ZXN0CitERUZFUlJBQkxFIElO SVRJQUxMWSBERUZFUlJFRAorRk9SIEVBQ0ggUk9XIEVYRUNVVEUgUFJPQ0VEVVJFIGR1bXBfdHJp Z2dlcihmYWxzZSwgZmFsc2UpOworCitDUkVBVEUgQ09OU1RSQUlOVCBUUklHR0VSIGZwb19hZnRl cl9kZWxldGVfcm93CitBRlRFUiBERUxFVEUgT04gZm9yX3BvcnRpb25fb2ZfdGVzdAorREVGRVJS QUJMRSBJTklUSUFMTFkgREVGRVJSRUQKK0ZPUiBFQUNIIFJPVyBFWEVDVVRFIFBST0NFRFVSRSBk dW1wX3RyaWdnZXIoZmFsc2UsIGZhbHNlKTsKKworQkVHSU47CitVUERBVEUgZm9yX3BvcnRpb25f b2ZfdGVzdAorICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDE4LTAxLTE1JyBUTyAn MjAxOS0wMS0wMScKKyAgU0VUIG5hbWUgPSAnMjAxOC0wMS0xNV90b18yMDE5LTAxLTAxJzsKK0NP TU1JVDsKKworQkVHSU47CitERUxFVEUgRlJPTSBmb3JfcG9ydGlvbl9vZl90ZXN0CisgIEZPUiBQ T1JUSU9OIE9GIHZhbGlkX2F0IEZST00gTlVMTCBUTyAnMjAxOC0wMS0yMSc7CitDT01NSVQ7CisK K0JFR0lOOworVVBEQVRFIGZvcl9wb3J0aW9uX29mX3Rlc3QKKyAgRk9SIFBPUlRJT04gT0YgdmFs aWRfYXQgRlJPTSBOVUxMIFRPICcyMDE4LTAxLTAyJworICBTRVQgbmFtZSA9ICdOVUxMX3RvXzIw MTgtMDEtMDEnOworQ09NTUlUOworCitTRUxFQ1QgKiBGUk9NIGZvcl9wb3J0aW9uX29mX3Rlc3Q7 CisKKy0tIHRlc3QgRk9SIFBPUlRJT04gT0YgZnJvbSB0cmlnZ2VycyBkdXJpbmcgRk9SIFBPUlRJ T04gT0Y6CisKK0RST1AgVEFCTEUgZm9yX3BvcnRpb25fb2ZfdGVzdDsKK0NSRUFURSBUQUJMRSBm b3JfcG9ydGlvbl9vZl90ZXN0ICgKKyAgaWQgaW50NHJhbmdlLAorICB2YWxpZF9hdCBkYXRlcmFu Z2UsCisgIG5hbWUgdGV4dAorKTsKK0lOU0VSVCBJTlRPIGZvcl9wb3J0aW9uX29mX3Rlc3QgKGlk LCB2YWxpZF9hdCwgbmFtZSkgVkFMVUVTCisgICgnWzEsMiknLCAnWzIwMTgtMDEtMDEsMjAyMC0w MS0wMSknLCAnb25lJyksCisgICgnWzIsMyknLCAnWzIwMTgtMDEtMDEsMjAyMC0wMS0wMSknLCAn dHdvJyksCisgICgnWzMsNCknLCAnWzIwMTgtMDEtMDEsMjAyMC0wMS0wMSknLCAndGhyZWUnKSwK KyAgKCdbNCw1KScsICdbMjAxOC0wMS0wMSwyMDIwLTAxLTAxKScsICdmb3VyJyk7CisKK0NSRUFU RSBGVU5DVElPTiB0cmdfZnBvX3VwZGF0ZSgpCitSRVRVUk5TIFRSSUdHRVIgTEFOR1VBR0UgcGxw Z3NxbCBBUworJCQKK0JFR0lOCisgIElGIHBnX3RyaWdnZXJfZGVwdGgoKSA9IDEgVEhFTgorICAg IFVQREFURSBmb3JfcG9ydGlvbl9vZl90ZXN0CisgICAgICBGT1IgUE9SVElPTiBPRiB2YWxpZF9h dCBGUk9NICcyMDE4LTAyLTAxJyBUTyAnMjAxOC0wMy0wMScKKyAgICAgIFNFVCBuYW1lID0gQ09O Q0FUKG5hbWUsICdeJykKKyAgICAgIFdIRVJFIGlkID0gT0xELmlkOworICBFTkQgSUY7CisgIFJF VFVSTiBDQVNFIFdIRU4gJ1RHX09QJyA9ICdERUxFVEUnIFRIRU4gT0xEIEVMU0UgTkVXIEVORDsK K0VORDsKKyQkOworCitDUkVBVEUgRlVOQ1RJT04gdHJnX2Zwb19kZWxldGUoKQorUkVUVVJOUyBU UklHR0VSIExBTkdVQUdFIHBscGdzcWwgQVMKKyQkCitCRUdJTgorICBJRiBwZ190cmlnZ2VyX2Rl cHRoKCkgPSAxIFRIRU4KKyAgICBERUxFVEUgRlJPTSBmb3JfcG9ydGlvbl9vZl90ZXN0CisgICAg ICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDE4LTAzLTAxJyBUTyAnMjAxOC0wNC0w MScKKyAgICAgIFdIRVJFIGlkID0gT0xELmlkOworICBFTkQgSUY7CisgIFJFVFVSTiBDQVNFIFdI RU4gJ1RHX09QJyA9ICdERUxFVEUnIFRIRU4gT0xEIEVMU0UgTkVXIEVORDsKK0VORDsKKyQkOwor CistLSBVUERBVEUgRk9SIFBPUlRJT04gT0YgZnJvbSBhIHRyaWdnZXIgZmlyZWQgYnkgVVBEQVRF IEZPUiBQT1JUSU9OIE9GCisKK0NSRUFURSBUUklHR0VSIGZwb19hZnRlcl91cGRhdGVfcm93CitB RlRFUiBVUERBVEUgT04gZm9yX3BvcnRpb25fb2ZfdGVzdAorRk9SIEVBQ0ggUk9XIEVYRUNVVEUg UFJPQ0VEVVJFIHRyZ19mcG9fdXBkYXRlKCk7CisKK1VQREFURSBmb3JfcG9ydGlvbl9vZl90ZXN0 CisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMTgtMDUtMDEnIFRPICcyMDE4LTA2 LTAxJworICBTRVQgbmFtZSA9IENPTkNBVChuYW1lLCAnKicpCisgIFdIRVJFIGlkID0gJ1sxLDIp JzsKKworU0VMRUNUICogRlJPTSBmb3JfcG9ydGlvbl9vZl90ZXN0IFdIRVJFIGlkID0gJ1sxLDIp JyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisKK0RST1AgVFJJR0dFUiBmcG9fYWZ0ZXJfdXBkYXRl X3JvdyBPTiBmb3JfcG9ydGlvbl9vZl90ZXN0OworCistLSBVUERBVEUgRk9SIFBPUlRJT04gT0Yg ZnJvbSBhIHRyaWdnZXIgZmlyZWQgYnkgREVMRVRFIEZPUiBQT1JUSU9OIE9GCisKK0NSRUFURSBU UklHR0VSIGZwb19hZnRlcl9kZWxldGVfcm93CitBRlRFUiBERUxFVEUgT04gZm9yX3BvcnRpb25f b2ZfdGVzdAorRk9SIEVBQ0ggUk9XIEVYRUNVVEUgUFJPQ0VEVVJFIHRyZ19mcG9fdXBkYXRlKCk7 CisKK0RFTEVURSBGUk9NIGZvcl9wb3J0aW9uX29mX3Rlc3QKKyAgRk9SIFBPUlRJT04gT0YgdmFs aWRfYXQgRlJPTSAnMjAxOC0wNS0wMScgVE8gJzIwMTgtMDYtMDEnCisgIFdIRVJFIGlkID0gJ1sy LDMpJzsKKworU0VMRUNUICogRlJPTSBmb3JfcG9ydGlvbl9vZl90ZXN0IFdIRVJFIGlkID0gJ1sy LDMpJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisKK0RST1AgVFJJR0dFUiBmcG9fYWZ0ZXJfZGVs ZXRlX3JvdyBPTiBmb3JfcG9ydGlvbl9vZl90ZXN0OworCistLSBERUxFVEUgRk9SIFBPUlRJT04g T0YgZnJvbSBhIHRyaWdnZXIgZmlyZWQgYnkgVVBEQVRFIEZPUiBQT1JUSU9OIE9GCisKK0NSRUFU RSBUUklHR0VSIGZwb19hZnRlcl91cGRhdGVfcm93CitBRlRFUiBVUERBVEUgT04gZm9yX3BvcnRp b25fb2ZfdGVzdAorRk9SIEVBQ0ggUk9XIEVYRUNVVEUgUFJPQ0VEVVJFIHRyZ19mcG9fZGVsZXRl KCk7CisKK1VQREFURSBmb3JfcG9ydGlvbl9vZl90ZXN0CisgIEZPUiBQT1JUSU9OIE9GIHZhbGlk X2F0IEZST00gJzIwMTgtMDUtMDEnIFRPICcyMDE4LTA2LTAxJworICBTRVQgbmFtZSA9IENPTkNB VChuYW1lLCAnKicpCisgIFdIRVJFIGlkID0gJ1szLDQpJzsKKworU0VMRUNUICogRlJPTSBmb3Jf cG9ydGlvbl9vZl90ZXN0IFdIRVJFIGlkID0gJ1szLDQpJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7 CisKK0RST1AgVFJJR0dFUiBmcG9fYWZ0ZXJfdXBkYXRlX3JvdyBPTiBmb3JfcG9ydGlvbl9vZl90 ZXN0OworCistLSBERUxFVEUgRk9SIFBPUlRJT04gT0YgZnJvbSBhIHRyaWdnZXIgZmlyZWQgYnkg REVMRVRFIEZPUiBQT1JUSU9OIE9GCisKK0NSRUFURSBUUklHR0VSIGZwb19hZnRlcl9kZWxldGVf cm93CitBRlRFUiBERUxFVEUgT04gZm9yX3BvcnRpb25fb2ZfdGVzdAorRk9SIEVBQ0ggUk9XIEVY RUNVVEUgUFJPQ0VEVVJFIHRyZ19mcG9fZGVsZXRlKCk7CisKK0RFTEVURSBGUk9NIGZvcl9wb3J0 aW9uX29mX3Rlc3QKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAxOC0wNS0wMScg VE8gJzIwMTgtMDYtMDEnCisgIFdIRVJFIGlkID0gJ1s0LDUpJzsKKworU0VMRUNUICogRlJPTSBm b3JfcG9ydGlvbl9vZl90ZXN0IFdIRVJFIGlkID0gJ1s0LDUpJyBPUkRFUiBCWSBpZCwgdmFsaWRf YXQ7CisKK0RST1AgVFJJR0dFUiBmcG9fYWZ0ZXJfZGVsZXRlX3JvdyBPTiBmb3JfcG9ydGlvbl9v Zl90ZXN0OworCistLSBUZXN0IHdpdGggbXVsdGlyYW5nZXMKKworQ1JFQVRFIFRBQkxFIGZvcl9w b3J0aW9uX29mX3Rlc3QyICgKKyAgaWQgaW50NHJhbmdlIE5PVCBOVUxMLAorICB2YWxpZF9hdCBk YXRlbXVsdGlyYW5nZSBOT1QgTlVMTCwKKyAgbmFtZSB0ZXh0IE5PVCBOVUxMLAorICBDT05TVFJB SU5UIGZvcl9wb3J0aW9uX29mX3Rlc3QyX3BrIFBSSU1BUlkgS0VZIChpZCwgdmFsaWRfYXQgV0lU SE9VVCBPVkVSTEFQUykKKyk7CitJTlNFUlQgSU5UTyBmb3JfcG9ydGlvbl9vZl90ZXN0MiAoaWQs IHZhbGlkX2F0LCBuYW1lKSBWQUxVRVMKKyAgKCdbMSwyKScsIGRhdGVtdWx0aXJhbmdlKGRhdGVy YW5nZSgnMjAxOC0wMS0wMicsICcyMDE4LTAyLTAzKScpLCBkYXRlcmFuZ2UoJzIwMTgtMDItMDQn LCAnMjAxOC0wMy0wMycpKSwgJ29uZScpLAorICAoJ1sxLDIpJywgZGF0ZW11bHRpcmFuZ2UoZGF0 ZXJhbmdlKCcyMDE4LTAzLTAzJywgJzIwMTgtMDQtMDQpJykpLCAnb25lJyksCisgICgnWzIsMykn LCBkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAxOC0wNS0wMSknKSks ICd0d28nKSwKKyAgKCdbMyw0KScsIGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAxOC0wMS0w MScsIG51bGwpKSwgJ3RocmVlJyk7CisgIDsKKworVVBEQVRFIGZvcl9wb3J0aW9uX29mX3Rlc3Qy CisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IChkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIw MTgtMDEtMTAnLCAnMjAxOC0wMi0xMCcpLCBkYXRlcmFuZ2UoJzIwMTgtMDMtMDUnLCAnMjAxOC0w NS0wMScpKSkKKyAgU0VUIG5hbWUgPSAnb25lXjEnCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKwor REVMRVRFIEZST00gZm9yX3BvcnRpb25fb2ZfdGVzdDIKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRf YXQgKGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAxOC0wMS0xNScsICcyMDE4LTAyLTE1Jyks IGRhdGVyYW5nZSgnMjAxOC0wMy0wMScsICcyMDE4LTAzLTE1JykpKQorICBXSEVSRSBpZCA9ICdb MiwzKSc7CisKK1NFTEVDVCAqIEZST00gZm9yX3BvcnRpb25fb2ZfdGVzdDIgT1JERVIgQlkgaWQs IHZhbGlkX2F0OworCitEUk9QIFRBQkxFIGZvcl9wb3J0aW9uX29mX3Rlc3QyOworCistLSBUZXN0 IHdpdGggYSBjdXN0b20gcmFuZ2UgdHlwZQorCitDUkVBVEUgVFlQRSBteWRhdGVyYW5nZSBBUyBy YW5nZShzdWJ0eXBlPWRhdGUpOworCitDUkVBVEUgVEFCTEUgZm9yX3BvcnRpb25fb2ZfdGVzdDIg KAorICBpZCBpbnQ0cmFuZ2UgTk9UIE5VTEwsCisgIHZhbGlkX2F0IG15ZGF0ZXJhbmdlIE5PVCBO VUxMLAorICBuYW1lIHRleHQgTk9UIE5VTEwsCisgIENPTlNUUkFJTlQgZm9yX3BvcnRpb25fb2Zf dGVzdDJfcGsgUFJJTUFSWSBLRVkgKGlkLCB2YWxpZF9hdCBXSVRIT1VUIE9WRVJMQVBTKQorKTsK K0lOU0VSVCBJTlRPIGZvcl9wb3J0aW9uX29mX3Rlc3QyIChpZCwgdmFsaWRfYXQsIG5hbWUpIFZB TFVFUworICAoJ1sxLDIpJywgJ1syMDE4LTAxLTAyLDIwMTgtMDItMDMpJywgJ29uZScpLAorICAo J1sxLDIpJywgJ1syMDE4LTAyLTAzLDIwMTgtMDMtMDMpJywgJ29uZScpLAorICAoJ1sxLDIpJywg J1syMDE4LTAzLTAzLDIwMTgtMDQtMDQpJywgJ29uZScpLAorICAoJ1syLDMpJywgJ1syMDE4LTAx LTAxLDIwMTgtMDUtMDEpJywgJ3R3bycpLAorICAoJ1szLDQpJywgJ1syMDE4LTAxLTAxLCknLCAn dGhyZWUnKTsKKyAgOworCitVUERBVEUgZm9yX3BvcnRpb25fb2ZfdGVzdDIKKyAgRk9SIFBPUlRJ T04gT0YgdmFsaWRfYXQgRlJPTSAnMjAxOC0wMS0xMCcgVE8gJzIwMTgtMDItMTAnCisgIFNFVCBu YW1lID0gJ29uZV4xJworICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK0RFTEVURSBGUk9NIGZvcl9w b3J0aW9uX29mX3Rlc3QyCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMTgtMDEt MTUnIFRPICcyMDE4LTAyLTE1JworICBXSEVSRSBpZCA9ICdbMiwzKSc7CisKK1NFTEVDVCAqIEZS T00gZm9yX3BvcnRpb25fb2ZfdGVzdDIgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworCitEUk9QIFRB QkxFIGZvcl9wb3J0aW9uX29mX3Rlc3QyOworRFJPUCBUWVBFIG15ZGF0ZXJhbmdlOworCistLSBU ZXN0IEZPUiBQT1JUSU9OIE9GIGFnYWluc3QgYSBwYXJ0aXRpb25lZCB0YWJsZS4KKy0tIHRlbXBv cmFsX3BhcnRpdGlvbmVkXzEgaGFzIHRoZSBzYW1lIGF0dG51bXMgYXMgdGhlIHJvb3QKKy0tIHRl bXBvcmFsX3BhcnRpdGlvbmVkXzMgaGFzIHRoZSBkaWZmZXJlbnQgYXR0bnVtcyBmcm9tIHRoZSBy b290CistLSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF81IGhhcyB0aGUgZGlmZmVyZW50IGF0dG51bXMg dG9vLCBidXQgcmV2ZXJzZWQKKworQ1JFQVRFIFRBQkxFIHRlbXBvcmFsX3BhcnRpdGlvbmVkICgK KyAgaWQgaW50NHJhbmdlLAorICB2YWxpZF9hdCBkYXRlcmFuZ2UsCisgIG5hbWUgdGV4dCwKKyAg Q09OU1RSQUlOVCB0ZW1wb3JhbF9wYXJpdGlvbmVkX3VxIFVOSVFVRSAoaWQsIHZhbGlkX2F0IFdJ VEhPVVQgT1ZFUkxBUFMpCispIFBBUlRJVElPTiBCWSBMSVNUIChpZCk7CitDUkVBVEUgVEFCTEUg dGVtcG9yYWxfcGFydGl0aW9uZWRfMSBQQVJUSVRJT04gT0YgdGVtcG9yYWxfcGFydGl0aW9uZWQg Rk9SIFZBTFVFUyBJTiAoJ1sxLDIpJywgJ1syLDMpJyk7CitDUkVBVEUgVEFCTEUgdGVtcG9yYWxf cGFydGl0aW9uZWRfMyBQQVJUSVRJT04gT0YgdGVtcG9yYWxfcGFydGl0aW9uZWQgRk9SIFZBTFVF UyBJTiAoJ1szLDQpJywgJ1s0LDUpJyk7CitDUkVBVEUgVEFCTEUgdGVtcG9yYWxfcGFydGl0aW9u ZWRfNSBQQVJUSVRJT04gT0YgdGVtcG9yYWxfcGFydGl0aW9uZWQgRk9SIFZBTFVFUyBJTiAoJ1s1 LDYpJywgJ1s2LDcpJyk7CisKK0FMVEVSIFRBQkxFIHRlbXBvcmFsX3BhcnRpdGlvbmVkIERFVEFD SCBQQVJUSVRJT04gdGVtcG9yYWxfcGFydGl0aW9uZWRfMzsKK0FMVEVSIFRBQkxFIHRlbXBvcmFs X3BhcnRpdGlvbmVkXzMgRFJPUCBDT0xVTU4gaWQsIERST1AgQ09MVU1OIHZhbGlkX2F0OworQUxU RVIgVEFCTEUgdGVtcG9yYWxfcGFydGl0aW9uZWRfMyBBREQgQ09MVU1OIGlkIGludDRyYW5nZSBO T1QgTlVMTCwgQUREIENPTFVNTiB2YWxpZF9hdCBkYXRlcmFuZ2UgTk9UIE5VTEw7CitBTFRFUiBU QUJMRSB0ZW1wb3JhbF9wYXJ0aXRpb25lZCBBVFRBQ0ggUEFSVElUSU9OIHRlbXBvcmFsX3BhcnRp dGlvbmVkXzMgRk9SIFZBTFVFUyBJTiAoJ1szLDQpJywgJ1s0LDUpJyk7CisKK0FMVEVSIFRBQkxF IHRlbXBvcmFsX3BhcnRpdGlvbmVkIERFVEFDSCBQQVJUSVRJT04gdGVtcG9yYWxfcGFydGl0aW9u ZWRfNTsKK0FMVEVSIFRBQkxFIHRlbXBvcmFsX3BhcnRpdGlvbmVkXzUgRFJPUCBDT0xVTU4gaWQs IERST1AgQ09MVU1OIHZhbGlkX2F0OworQUxURVIgVEFCTEUgdGVtcG9yYWxfcGFydGl0aW9uZWRf NSBBREQgQ09MVU1OIHZhbGlkX2F0IGRhdGVyYW5nZSBOT1QgTlVMTCwgQUREIENPTFVNTiBpZCBp bnQ0cmFuZ2UgTk9UIE5VTEw7CitBTFRFUiBUQUJMRSB0ZW1wb3JhbF9wYXJ0aXRpb25lZCBBVFRB Q0ggUEFSVElUSU9OIHRlbXBvcmFsX3BhcnRpdGlvbmVkXzUgRk9SIFZBTFVFUyBJTiAoJ1s1LDYp JywgJ1s2LDcpJyk7CisKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BhcnRpdGlvbmVkIChpZCwgdmFs aWRfYXQsIG5hbWUpIFZBTFVFUworICAoJ1sxLDIpJywgZGF0ZXJhbmdlKCcyMDAwLTAxLTAxJywg JzIwMTAtMDEtMDEnKSwgJ29uZScpLAorICAoJ1szLDQpJywgZGF0ZXJhbmdlKCcyMDAwLTAxLTAx JywgJzIwMTAtMDEtMDEnKSwgJ3RocmVlJyksCisgICgnWzUsNiknLCBkYXRlcmFuZ2UoJzIwMDAt MDEtMDEnLCAnMjAxMC0wMS0wMScpLCAnZml2ZScpOworCitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFs X3BhcnRpdGlvbmVkOworCistLSBVcGRhdGUgd2l0aG91dCBtb3Zpbmcgd2l0aGluIHBhcnRpdGlv biAxCitVUERBVEUgdGVtcG9yYWxfcGFydGl0aW9uZWQgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQg RlJPTSAnMjAwMC0wMy0wMScgVE8gJzIwMDAtMDQtMDEnCisgIFNFVCBuYW1lID0gJ29uZV4xJwor ICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKKy0tIFVwZGF0ZSB3aXRob3V0IG1vdmluZyB3aXRoaW4g cGFydGl0aW9uIDMKK1VQREFURSB0ZW1wb3JhbF9wYXJ0aXRpb25lZCBGT1IgUE9SVElPTiBPRiB2 YWxpZF9hdCBGUk9NICcyMDAwLTAzLTAxJyBUTyAnMjAwMC0wNC0wMScKKyAgU0VUIG5hbWUgPSAn dGhyZWVeMScKKyAgV0hFUkUgaWQgPSAnWzMsNCknOworCistLSBVcGRhdGUgd2l0aG91dCBtb3Zp bmcgd2l0aGluIHBhcnRpdGlvbiA1CitVUERBVEUgdGVtcG9yYWxfcGFydGl0aW9uZWQgRk9SIFBP UlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAwMC0wMy0wMScgVE8gJzIwMDAtMDQtMDEnCisgIFNF VCBuYW1lID0gJ2ZpdmVeMScKKyAgV0hFUkUgaWQgPSAnWzUsNiknOworCistLSBNb3ZlIGZyb20g cGFydGl0aW9uIDEgdG8gcGFydGl0aW9uIDMKK1VQREFURSB0ZW1wb3JhbF9wYXJ0aXRpb25lZCBG T1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDAwLTA2LTAxJyBUTyAnMjAwMC0wNy0wMScK KyAgU0VUIG5hbWUgPSAnb25lXjInLAorICAgICAgaWQgPSAnWzQsNSknCisgIFdIRVJFIGlkID0g J1sxLDIpJzsKKworLS0gTW92ZSBmcm9tIHBhcnRpdGlvbiAzIHRvIHBhcnRpdGlvbiAxCitVUERB VEUgdGVtcG9yYWxfcGFydGl0aW9uZWQgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAw MC0wNi0wMScgVE8gJzIwMDAtMDctMDEnCisgIFNFVCBuYW1lID0gJ3RocmVlXjInLAorICAgICAg aWQgPSAnWzIsMyknCisgIFdIRVJFIGlkID0gJ1szLDQpJzsKKworLS0gTW92ZSBmcm9tIHBhcnRp dGlvbiA1IHRvIHBhcnRpdGlvbiAzCitVUERBVEUgdGVtcG9yYWxfcGFydGl0aW9uZWQgRk9SIFBP UlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAwMC0wNi0wMScgVE8gJzIwMDAtMDctMDEnCisgIFNF VCBuYW1lID0gJ2ZpdmVeMicsCisgICAgICBpZCA9ICdbMyw0KScKKyAgV0hFUkUgaWQgPSAnWzUs NiknOworCistLSBVcGRhdGUgYWxsIHBhcnRpdGlvbnMgYXQgb25jZSAoZWFjaCB3aXRoIGxlZnRv dmVycykKKworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9wYXJ0aXRpb25lZCBPUkRFUiBCWSBpZCwg dmFsaWRfYXQ7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX3BhcnRpdGlvbmVkXzEgT1JERVIgQlkg aWQsIHZhbGlkX2F0OworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF8zIE9SREVS IEJZIGlkLCB2YWxpZF9hdDsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfcGFydGl0aW9uZWRfNSBP UkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisKK0RST1AgVEFCTEUgdGVtcG9yYWxfcGFydGl0aW9uZWQ7 CisKK1JFU0VUIGRhdGVzdHlsZTsKZGlmZiAtLWdpdCBhL3NyYy90ZXN0L3JlZ3Jlc3Mvc3FsL3By aXZpbGVnZXMuc3FsIGIvc3JjL3Rlc3QvcmVncmVzcy9zcWwvcHJpdmlsZWdlcy5zcWwKaW5kZXgg OTZlZmYxMTA0ZDIuLmFlNTdmMjMzMzE0IDEwMDY0NAotLS0gYS9zcmMvdGVzdC9yZWdyZXNzL3Nx bC9wcml2aWxlZ2VzLnNxbAorKysgYi9zcmMvdGVzdC9yZWdyZXNzL3NxbC9wcml2aWxlZ2VzLnNx bApAQCAtNzY1LDYgKzc2NSwyNCBAQCBVUERBVEUgZXJydHN0IFNFVCBhID0gJ2FhYWEnLCBiID0g TlVMTCBXSEVSRSBhID0gJ2FhYSc7CiBTRVQgU0VTU0lPTiBBVVRIT1JJWkFUSU9OIHJlZ3Jlc3Nf cHJpdl91c2VyMTsKIERST1AgVEFCTEUgZXJydHN0OwogCistLSB0ZXN0IGNvbHVtbi1sZXZlbCBw cml2aWxlZ2VzIG9uIHRoZSByYW5nZSB1c2VkIGluIEZPUiBQT1JUSU9OIE9GCitTRVQgU0VTU0lP TiBBVVRIT1JJWkFUSU9OIHJlZ3Jlc3NfcHJpdl91c2VyMTsKK0NSRUFURSBUQUJMRSB0MSAoCisg IGMxIGludDRyYW5nZSwKKyAgdmFsaWRfYXQgdHNyYW5nZSwKKwlDT05TVFJBSU5UIHQxcGsgUFJJ TUFSWSBLRVkgKGMxLCB2YWxpZF9hdCBXSVRIT1VUIE9WRVJMQVBTKQorKTsKK0dSQU5UIFNFTEVD VCBPTiB0MSBUTyByZWdyZXNzX3ByaXZfdXNlcjI7CitHUkFOVCBTRUxFQ1QgT04gdDEgVE8gcmVn cmVzc19wcml2X3VzZXIzOworR1JBTlQgVVBEQVRFIChjMSkgT04gdDEgVE8gcmVncmVzc19wcml2 X3VzZXIyOworR1JBTlQgVVBEQVRFIChjMSwgdmFsaWRfYXQpIE9OIHQxIFRPIHJlZ3Jlc3NfcHJp dl91c2VyMzsKK1NFVCBTRVNTSU9OIEFVVEhPUklaQVRJT04gcmVncmVzc19wcml2X3VzZXIyOwor VVBEQVRFIHQxIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMDAtMDEtMDEnIFRPICcy MDAxLTAxLTAxJyBTRVQgYzEgPSAnWzIsMyknOworU0VUIFNFU1NJT04gQVVUSE9SSVpBVElPTiBy ZWdyZXNzX3ByaXZfdXNlcjM7CitVUERBVEUgdDEgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJP TSAnMjAwMC0wMS0wMScgVE8gJzIwMDEtMDEtMDEnIFNFVCBjMSA9ICdbMiwzKSc7CitTRVQgU0VT U0lPTiBBVVRIT1JJWkFUSU9OIHJlZ3Jlc3NfcHJpdl91c2VyMTsKK0RST1AgVEFCTEUgdDE7CisK IC0tIHRlc3QgY29sdW1uLWxldmVsIHByaXZpbGVnZXMgd2hlbiBpbnZvbHZlZCB3aXRoIERFTEVU RQogU0VUIFNFU1NJT04gQVVUSE9SSVpBVElPTiByZWdyZXNzX3ByaXZfdXNlcjE7CiBBTFRFUiBU QUJMRSBhdGVzdDYgQUREIENPTFVNTiB0aHJlZSBpbnRlZ2VyOwpkaWZmIC0tZ2l0IGEvc3JjL3Rl c3QvcmVncmVzcy9zcWwvdXBkYXRhYmxlX3ZpZXdzLnNxbCBiL3NyYy90ZXN0L3JlZ3Jlc3Mvc3Fs L3VwZGF0YWJsZV92aWV3cy5zcWwKaW5kZXggYzA3MWZmZmMxMTYuLmU4YzA0ZTNhZDkxIDEwMDY0 NAotLS0gYS9zcmMvdGVzdC9yZWdyZXNzL3NxbC91cGRhdGFibGVfdmlld3Muc3FsCisrKyBiL3Ny Yy90ZXN0L3JlZ3Jlc3Mvc3FsL3VwZGF0YWJsZV92aWV3cy5zcWwKQEAgLTE4ODEsNiArMTg4MSwy MCBAQCBzZWxlY3QgKiBmcm9tIHV2X2lvY3VfdGFiOwogZHJvcCB2aWV3IHV2X2lvY3VfdmlldzsK IGRyb3AgdGFibGUgdXZfaW9jdV90YWI7CiAKKy0tIENoZWNrIFVQREFURSBGT1IgUE9SVElPTiBP RiB3b3JrcyBjb3JyZWN0bHkKK2NyZWF0ZSB0YWJsZSB1dl9mcG9fdGFiIChpZCBpbnQ0cmFuZ2Us IHZhbGlkX2F0IHRzcmFuZ2UsIGIgZmxvYXQsCisgICAgY29uc3RyYWludCBwa191dl9mcG9fdGFi IHByaW1hcnkga2V5IChpZCwgdmFsaWRfYXQgd2l0aG91dCBvdmVybGFwcykpOworaW5zZXJ0IGlu dG8gdXZfZnBvX3RhYiB2YWx1ZXMgKCdbMSwxXScsICdbMjAyMC0wMS0wMSwgMjAzMC0wMS0wMSkn LCAwKTsKK2NyZWF0ZSB2aWV3IHV2X2Zwb192aWV3IGFzCisgICAgc2VsZWN0IGIsIGIrMSBhcyBj LCB2YWxpZF9hdCwgaWQsICcyLjAnOjp0ZXh0IGFzIHR3byBmcm9tIHV2X2Zwb190YWI7CisKK2lu c2VydCBpbnRvIHV2X2Zwb192aWV3IChpZCwgdmFsaWRfYXQsIGIpIHZhbHVlcyAoJ1sxLDFdJywg J1syMDEwLTAxLTAxLCAyMDIwLTAxLTAxKScsIDEpOworc2VsZWN0ICogZnJvbSB1dl9mcG9fdmll dzsKK3VwZGF0ZSB1dl9mcG9fdmlldyBmb3IgcG9ydGlvbiBvZiB2YWxpZF9hdCBmcm9tICcyMDE1 LTAxLTAxJyB0byAnMjAyMC0wMS0wMScgc2V0IGIgPSAyIHdoZXJlIGlkID0gJ1sxLDFdJzsKK3Nl bGVjdCAqIGZyb20gdXZfZnBvX3ZpZXc7CitkZWxldGUgZnJvbSB1dl9mcG9fdmlldyBmb3IgcG9y dGlvbiBvZiB2YWxpZF9hdCBmcm9tICcyMDE3LTAxLTAxJyB0byAnMjAyMi0wMS0wMScgd2hlcmUg aWQgPSAnWzEsMV0nOworc2VsZWN0ICogZnJvbSB1dl9mcG9fdmlldzsKKwogLS0gVGVzdCB3aG9s ZS1yb3cgcmVmZXJlbmNlcyB0byB0aGUgdmlldwogY3JlYXRlIHRhYmxlIHV2X2lvY3VfdGFiIChh IGludCB1bmlxdWUsIGIgdGV4dCk7CiBjcmVhdGUgdmlldyB1dl9pb2N1X3ZpZXcgYXMKZGlmZiAt LWdpdCBhL3NyYy90ZXN0L3JlZ3Jlc3Mvc3FsL3dpdGhvdXRfb3ZlcmxhcHMuc3FsIGIvc3JjL3Rl c3QvcmVncmVzcy9zcWwvd2l0aG91dF9vdmVybGFwcy5zcWwKaW5kZXggNGFhY2EyNDJiYmUuLmM1 Yzg5ZmU0MGFiIDEwMDY0NAotLS0gYS9zcmMvdGVzdC9yZWdyZXNzL3NxbC93aXRob3V0X292ZXJs YXBzLnNxbAorKysgYi9zcmMvdGVzdC9yZWdyZXNzL3NxbC93aXRob3V0X292ZXJsYXBzLnNxbApA QCAtMiw3ICsyLDcgQEAKIC0tCiAtLSBXZSBsZWF2ZSBiZWhpbmQgc2V2ZXJhbCB0YWJsZXMgdG8g dGVzdCBwZ19kdW1wIGV0YzoKIC0tIHRlbXBvcmFsX3JuZywgdGVtcG9yYWxfcm5nMiwKLS0tIHRl bXBvcmFsX2ZrX3JuZzJybmcuCistLSB0ZW1wb3JhbF9ma19ybmcycm5nLCB0ZW1wb3JhbF9mazJf cm5nMnJuZy4KIAogU0VUIGRhdGVzdHlsZSBUTyBJU08sIFlNRDsKIApAQCAtNjMyLDYgKzYzMiwy MCBAQCBJTlNFUlQgSU5UTyB0ZW1wb3JhbDMgKGlkLCB2YWxpZF9hdCwgaWQyLCBuYW1lKQogICAo J1sxLDIpJywgZGF0ZXJhbmdlKCcyMDAwLTAxLTAxJywgJzIwMTAtMDEtMDEnKSwgJ1s3LDgpJywg J2ZvbycpLAogICAoJ1syLDMpJywgZGF0ZXJhbmdlKCcyMDAwLTAxLTAxJywgJzIwMTAtMDEtMDEn KSwgJ1s5LDEwKScsICdiYXInKQogOworVVBEQVRFIHRlbXBvcmFsMyBGT1IgUE9SVElPTiBPRiB2 YWxpZF9hdCBGUk9NICcyMDAwLTA1LTAxJyBUTyAnMjAwMC0wNy0wMScKKyAgU0VUIG5hbWUgPSBu YW1lIHx8ICcxJzsKK1VQREFURSB0ZW1wb3JhbDMgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJP TSAnMjAwMC0wNC0wMScgVE8gJzIwMDAtMDYtMDEnCisgIFNFVCBuYW1lID0gbmFtZSB8fCAnMicK KyAgV0hFUkUgaWQgPSAnWzIsMyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbDMgT1JERVIgQlkg aWQsIHZhbGlkX2F0OworLS0gY29uZmxpY3RpbmcgaWQgb25seToKK0lOU0VSVCBJTlRPIHRlbXBv cmFsMyAoaWQsIHZhbGlkX2F0LCBpZDIsIG5hbWUpCisgIFZBTFVFUworICAoJ1sxLDIpJywgZGF0 ZXJhbmdlKCcyMDA1LTAxLTAxJywgJzIwMDYtMDEtMDEnKSwgJ1s4LDkpJywgJ2ZvbzMnKTsKKy0t IGNvbmZsaWN0aW5nIGlkMiBvbmx5OgorSU5TRVJUIElOVE8gdGVtcG9yYWwzIChpZCwgdmFsaWRf YXQsIGlkMiwgbmFtZSkKKyAgVkFMVUVTCisgICgnWzMsNCknLCBkYXRlcmFuZ2UoJzIwMDUtMDEt MDEnLCAnMjAxMC0wMS0wMScpLCAnWzksMTApJywgJ2JhcjMnKTsKIERST1AgVEFCTEUgdGVtcG9y YWwzOwogCiAtLQpAQCAtNjY3LDkgKzY4MSwyMyBAQCBJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wYXJ0 aXRpb25lZCAoaWQsIHZhbGlkX2F0LCBuYW1lKSBWQUxVRVMKICAgKCdbMSwyKScsIGRhdGVyYW5n ZSgnMjAwMC0wMS0wMScsICcyMDAwLTAyLTAxJyksICdvbmUnKSwKICAgKCdbMSwyKScsIGRhdGVy YW5nZSgnMjAwMC0wMi0wMScsICcyMDAwLTAzLTAxJyksICdvbmUnKSwKICAgKCdbMyw0KScsIGRh dGVyYW5nZSgnMjAwMC0wMS0wMScsICcyMDEwLTAxLTAxJyksICd0aHJlZScpOwotU0VMRUNUICog RlJPTSB0ZW1wb3JhbF9wYXJ0aXRpb25lZCBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7Ci1TRUxFQ1Qg KiBGUk9NIHRwMSBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7Ci1TRUxFQ1QgKiBGUk9NIHRwMiBPUkRF UiBCWSBpZCwgdmFsaWRfYXQ7CitTRUxFQ1QgdGFibGVvaWQ6OnJlZ2NsYXNzLCAqIEZST00gdGVt cG9yYWxfcGFydGl0aW9uZWQgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworVVBEQVRFICB0ZW1wb3Jh bF9wYXJ0aXRpb25lZAorICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDAwLTAxLTE1 JyBUTyAnMjAwMC0wMi0xNScKKyAgU0VUIG5hbWUgPSAnb25lMicKKyAgV0hFUkUgaWQgPSAnWzEs MiknOworVVBEQVRFICB0ZW1wb3JhbF9wYXJ0aXRpb25lZAorICBGT1IgUE9SVElPTiBPRiB2YWxp ZF9hdCBGUk9NICcyMDAwLTAyLTIwJyBUTyAnMjAwMC0wMi0yNScKKyAgU0VUIGlkID0gJ1s0LDUp JworICBXSEVSRSBuYW1lID0gJ29uZSc7CitVUERBVEUgIHRlbXBvcmFsX3BhcnRpdGlvbmVkCisg IEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMDItMDEtMDEnIFRPICcyMDAzLTAxLTAx JworICBTRVQgaWQgPSAnWzIsMyknCisgIFdIRVJFIG5hbWUgPSAndGhyZWUnOworREVMRVRFIEZS T00gdGVtcG9yYWxfcGFydGl0aW9uZWQKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAn MjAwMC0wMS0xNScgVE8gJzIwMDAtMDItMTUnCisgIFdIRVJFIGlkID0gJ1szLDQpJzsKK1NFTEVD VCB0YWJsZW9pZDo6cmVnY2xhc3MsICogRlJPTSB0ZW1wb3JhbF9wYXJ0aXRpb25lZCBPUkRFUiBC WSBpZCwgdmFsaWRfYXQ7CiBEUk9QIFRBQkxFIHRlbXBvcmFsX3BhcnRpdGlvbmVkOwogCiAtLSB0 ZW1wb3JhbCBVTklRVUU6CkBAIC02ODUsOSArNzEzLDIzIEBAIElOU0VSVCBJTlRPIHRlbXBvcmFs X3BhcnRpdGlvbmVkIChpZCwgdmFsaWRfYXQsIG5hbWUpIFZBTFVFUwogICAoJ1sxLDIpJywgZGF0 ZXJhbmdlKCcyMDAwLTAxLTAxJywgJzIwMDAtMDItMDEnKSwgJ29uZScpLAogICAoJ1sxLDIpJywg ZGF0ZXJhbmdlKCcyMDAwLTAyLTAxJywgJzIwMDAtMDMtMDEnKSwgJ29uZScpLAogICAoJ1szLDQp JywgZGF0ZXJhbmdlKCcyMDAwLTAxLTAxJywgJzIwMTAtMDEtMDEnKSwgJ3RocmVlJyk7Ci1TRUxF Q1QgKiBGUk9NIHRlbXBvcmFsX3BhcnRpdGlvbmVkIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKLVNF TEVDVCAqIEZST00gdHAxIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKLVNFTEVDVCAqIEZST00gdHAy IE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK1NFTEVDVCB0YWJsZW9pZDo6cmVnY2xhc3MsICogRlJP TSB0ZW1wb3JhbF9wYXJ0aXRpb25lZCBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CitVUERBVEUgIHRl bXBvcmFsX3BhcnRpdGlvbmVkCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMDAt MDEtMTUnIFRPICcyMDAwLTAyLTE1JworICBTRVQgbmFtZSA9ICdvbmUyJworICBXSEVSRSBpZCA9 ICdbMSwyKSc7CitVUERBVEUgIHRlbXBvcmFsX3BhcnRpdGlvbmVkCisgIEZPUiBQT1JUSU9OIE9G IHZhbGlkX2F0IEZST00gJzIwMDAtMDItMjAnIFRPICcyMDAwLTAyLTI1JworICBTRVQgaWQgPSAn WzQsNSknCisgIFdIRVJFIG5hbWUgPSAnb25lJzsKK1VQREFURSAgdGVtcG9yYWxfcGFydGl0aW9u ZWQKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAwMi0wMS0wMScgVE8gJzIwMDMt MDEtMDEnCisgIFNFVCBpZCA9ICdbMiwzKScKKyAgV0hFUkUgbmFtZSA9ICd0aHJlZSc7CitERUxF VEUgRlJPTSB0ZW1wb3JhbF9wYXJ0aXRpb25lZAorICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBG Uk9NICcyMDAwLTAxLTE1JyBUTyAnMjAwMC0wMi0xNScKKyAgV0hFUkUgaWQgPSAnWzMsNCknOwor U0VMRUNUIHRhYmxlb2lkOjpyZWdjbGFzcywgKiBGUk9NIHRlbXBvcmFsX3BhcnRpdGlvbmVkIE9S REVSIEJZIGlkLCB2YWxpZF9hdDsKIERST1AgVEFCTEUgdGVtcG9yYWxfcGFydGl0aW9uZWQ7CiAK IC0tIEFMVEVSIFRBQkxFIFJFUExJQ0EgSURFTlRJVFkKQEAgLTEyOTEsNiArMTMzMywxOCBAQCBD T01NSVQ7CiAtLSBjaGFuZ2luZyB0aGUgc2NhbGFyIHBhcnQgZmFpbHM6CiBVUERBVEUgdGVtcG9y YWxfcm5nIFNFVCBpZCA9ICdbNyw4KScKICAgV0hFUkUgaWQgPSAnWzUsNiknIEFORCB2YWxpZF9h dCA9IGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDE4LTAyLTAxJyk7CistLSBjaGFuZ2luZyBh biB1bnJlZmVyZW5jZWQgcGFydCBpcyBva2F5OgorVVBEQVRFIHRlbXBvcmFsX3JuZworICBGT1Ig UE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDE4LTAxLTAyJyBUTyAnMjAxOC0wMS0wMycKKyAg U0VUIGlkID0gJ1s3LDgpJworICBXSEVSRSBpZCA9ICdbNSw2KSc7CistLSBjaGFuZ2luZyBqdXN0 IGEgcGFydCBmYWlsczoKK1VQREFURSB0ZW1wb3JhbF9ybmcKKyAgRk9SIFBPUlRJT04gT0YgdmFs aWRfYXQgRlJPTSAnMjAxOC0wMS0wNScgVE8gJzIwMTgtMDEtMTAnCisgIFNFVCBpZCA9ICdbNyw4 KScKKyAgV0hFUkUgaWQgPSAnWzUsNiknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9ybmcgV0hF UkUgaWQgaW4gKCdbNSw2KScsICdbNyw4KScpIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK1NFTEVD VCAqIEZST00gdGVtcG9yYWxfZmtfcm5nMnJuZyBXSEVSRSBpZCBpbiAoJ1szLDQpJykgT1JERVIg QlkgaWQsIHZhbGlkX2F0OwogLS0gdGhlbiBkZWxldGUgdGhlIG9iamVjdGluZyBGSyByZWNvcmQg YW5kIHRoZSBzYW1lIFBLIHVwZGF0ZSBzdWNjZWVkczoKIERFTEVURSBGUk9NIHRlbXBvcmFsX2Zr X3JuZzJybmcgV0hFUkUgaWQgPSAnWzMsNCknOwogVVBEQVRFIHRlbXBvcmFsX3JuZyBTRVQgdmFs aWRfYXQgPSBkYXRlcmFuZ2UoJzIwMTYtMDEtMDEnLCAnMjAxNi0wMi0wMScpCkBAIC0xMzM4LDYg KzEzOTIsMTggQEAgQkVHSU47CiAKICAgREVMRVRFIEZST00gdGVtcG9yYWxfcm5nIFdIRVJFIGlk ID0gJ1s1LDYpJyBBTkQgdmFsaWRfYXQgPSBkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAxOC0w Mi0wMScpOwogQ09NTUlUOworLS0gZGVsZXRpbmcgYW4gdW5yZWZlcmVuY2VkIHBhcnQgaXMgb2th eToKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3JuZworRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJP TSAnMjAxOC0wMS0wMicgVE8gJzIwMTgtMDEtMDMnCitXSEVSRSBpZCA9ICdbNSw2KSc7CitTRUxF Q1QgKiBGUk9NIHRlbXBvcmFsX3JuZyBXSEVSRSBpZCBpbiAoJ1s1LDYpJywgJ1s3LDgpJykgT1JE RVIgQlkgaWQsIHZhbGlkX2F0OworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9ma19ybmcycm5nIFdI RVJFIGlkIGluICgnWzMsNCknKSBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CistLSBkZWxldGluZyBq dXN0IGEgcGFydCBmYWlsczoKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3JuZworRk9SIFBPUlRJT04g T0YgdmFsaWRfYXQgRlJPTSAnMjAxOC0wMS0wNScgVE8gJzIwMTgtMDEtMTAnCitXSEVSRSBpZCA9 ICdbNSw2KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX3JuZyBXSEVSRSBpZCBpbiAoJ1s1LDYp JywgJ1s3LDgpJykgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworU0VMRUNUICogRlJPTSB0ZW1wb3Jh bF9ma19ybmcycm5nIFdIRVJFIGlkIGluICgnWzMsNCknKSBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7 CiAtLSB0aGVuIGRlbGV0ZSB0aGUgb2JqZWN0aW5nIEZLIHJlY29yZCBhbmQgdGhlIHNhbWUgUEsg ZGVsZXRlIHN1Y2NlZWRzOgogREVMRVRFIEZST00gdGVtcG9yYWxfZmtfcm5nMnJuZyBXSEVSRSBp ZCA9ICdbMyw0KSc7CiBERUxFVEUgRlJPTSB0ZW1wb3JhbF9ybmcgV0hFUkUgaWQgPSAnWzUsNikn IEFORCB2YWxpZF9hdCA9IGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDE4LTAyLTAxJyk7CkBA IC0xMzU2LDEyICsxNDIyLDEzIEBAIEFMVEVSIFRBQkxFIHRlbXBvcmFsX2ZrX3JuZzJybmcKICAg T04gREVMRVRFIFJFU1RSSUNUOwogCiAtLQotLS0gdGVzdCBPTiBVUERBVEUvREVMRVRFIG9wdGlv bnMKKy0tIHJuZzJybmcgdGVzdCBPTiBVUERBVEUvREVMRVRFIG9wdGlvbnMKIC0tCiAKIC0tIHRl c3QgRksgcmVmZXJlbmNlZCB1cGRhdGVzIENBU0NBREUKK1RSVU5DQVRFIHRlbXBvcmFsX3JuZywg dGVtcG9yYWxfZmtfcm5nMnJuZzsKIElOU0VSVCBJTlRPIHRlbXBvcmFsX3JuZyAoaWQsIHZhbGlk X2F0KSBWQUxVRVMgKCdbNiw3KScsIGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAx JykpOwotSU5TRVJUIElOVE8gdGVtcG9yYWxfZmtfcm5nMnJuZyAoaWQsIHZhbGlkX2F0LCBwYXJl bnRfaWQpIFZBTFVFUyAoJ1s0LDUpJywgZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEt MDEnKSwgJ1s2LDcpJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ma19ybmcycm5nIChpZCwgdmFs aWRfYXQsIHBhcmVudF9pZCkgVkFMVUVTICgnWzEwMCwxMDEpJywgZGF0ZXJhbmdlKCcyMDE4LTAx LTAxJywgJzIwMjEtMDEtMDEnKSwgJ1s2LDcpJyk7CiBBTFRFUiBUQUJMRSB0ZW1wb3JhbF9ma19y bmcycm5nCiAgIEFERCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3JuZzJybmdfZmsKICAgICBGT1JF SUdOIEtFWSAocGFyZW50X2lkLCBQRVJJT0QgdmFsaWRfYXQpCkBAIC0xMzY5LDggKzE0MzYsOSBA QCBBTFRFUiBUQUJMRSB0ZW1wb3JhbF9ma19ybmcycm5nCiAgICAgT04gREVMRVRFIENBU0NBREUg T04gVVBEQVRFIENBU0NBREU7CiAKIC0tIHRlc3QgRksgcmVmZXJlbmNlZCB1cGRhdGVzIFNFVCBO VUxMCi1JTlNFUlQgSU5UTyB0ZW1wb3JhbF9ybmcgKGlkLCB2YWxpZF9hdCkgVkFMVUVTICgnWzks MTApJywgZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSk7Ci1JTlNFUlQgSU5U TyB0ZW1wb3JhbF9ma19ybmcycm5nIChpZCwgdmFsaWRfYXQsIHBhcmVudF9pZCkgVkFMVUVTICgn WzYsNyknLCBkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpLCAnWzksMTApJyk7 CitUUlVOQ0FURSB0ZW1wb3JhbF9ybmcsIHRlbXBvcmFsX2ZrX3JuZzJybmc7CitJTlNFUlQgSU5U TyB0ZW1wb3JhbF9ybmcgKGlkLCB2YWxpZF9hdCkgVkFMVUVTICgnWzYsNyknLCBkYXRlcmFuZ2Uo JzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrX3Ju ZzJybmcgKGlkLCB2YWxpZF9hdCwgcGFyZW50X2lkKSBWQUxVRVMgKCdbMTAwLDEwMSknLCBkYXRl cmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpLCAnWzYsNyknKTsKIEFMVEVSIFRBQkxF IHRlbXBvcmFsX2ZrX3JuZzJybmcKICAgQUREIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcm5nMnJu Z19mawogICAgIEZPUkVJR04gS0VZIChwYXJlbnRfaWQsIFBFUklPRCB2YWxpZF9hdCkKQEAgLTEz NzgsOSArMTQ0NiwxMCBAQCBBTFRFUiBUQUJMRSB0ZW1wb3JhbF9ma19ybmcycm5nCiAgICAgT04g REVMRVRFIFNFVCBOVUxMIE9OIFVQREFURSBTRVQgTlVMTDsKIAogLS0gdGVzdCBGSyByZWZlcmVu Y2VkIHVwZGF0ZXMgU0VUIERFRkFVTFQKK1RSVU5DQVRFIHRlbXBvcmFsX3JuZywgdGVtcG9yYWxf Zmtfcm5nMnJuZzsKIElOU0VSVCBJTlRPIHRlbXBvcmFsX3JuZyAoaWQsIHZhbGlkX2F0KSBWQUxV RVMgKCdbLTEsLTFdJywgZGF0ZXJhbmdlKG51bGwsIG51bGwpKTsKLUlOU0VSVCBJTlRPIHRlbXBv cmFsX3JuZyAoaWQsIHZhbGlkX2F0KSBWQUxVRVMgKCdbMTIsMTMpJywgZGF0ZXJhbmdlKCcyMDE4 LTAxLTAxJywgJzIwMjEtMDEtMDEnKSk7Ci1JTlNFUlQgSU5UTyB0ZW1wb3JhbF9ma19ybmcycm5n IChpZCwgdmFsaWRfYXQsIHBhcmVudF9pZCkgVkFMVUVTICgnWzgsOSknLCBkYXRlcmFuZ2UoJzIw MTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpLCAnWzEyLDEzKScpOworSU5TRVJUIElOVE8gdGVtcG9y YWxfcm5nIChpZCwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s2LDcpJywgZGF0ZXJhbmdlKCcyMDE4LTAx LTAxJywgJzIwMjEtMDEtMDEnKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ma19ybmcycm5nIChp ZCwgdmFsaWRfYXQsIHBhcmVudF9pZCkgVkFMVUVTICgnWzEwMCwxMDEpJywgZGF0ZXJhbmdlKCcy MDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSwgJ1s2LDcpJyk7CiBBTFRFUiBUQUJMRSB0ZW1wb3Jh bF9ma19ybmcycm5nCiAgIEFMVEVSIENPTFVNTiBwYXJlbnRfaWQgU0VUIERFRkFVTFQgJ1stMSwt MV0nLAogICBBREQgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19ybmcycm5nX2ZrCkBAIC0xNzE2LDYg KzE3ODUsMjAgQEAgQkVHSU47CiAgIFdIRVJFIGlkID0gJ1s1LDYpJyBBTkQgdmFsaWRfYXQgPSBk YXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAxOC0wMi0wMScpKTsKIENP TU1JVDsKIC0tIGNoYW5naW5nIHRoZSBzY2FsYXIgcGFydCBmYWlsczoKK1VQREFURSB0ZW1wb3Jh bF9tbHRybmcgU0VUIGlkID0gJ1s3LDgpJworICBXSEVSRSBpZCA9ICdbNSw2KScgQU5EIHZhbGlk X2F0ID0gZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMTgtMDItMDEn KSk7CistLSBjaGFuZ2luZyBhbiB1bnJlZmVyZW5jZWQgcGFydCBpcyBva2F5OgorVVBEQVRFIHRl bXBvcmFsX21sdHJuZworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCAoZGF0ZW11bHRpcmFuZ2Uo ZGF0ZXJhbmdlKCcyMDE4LTAxLTAyJywgJzIwMTgtMDEtMDMnKSkpCisgIFNFVCBpZCA9ICdbNyw4 KScKKyAgV0hFUkUgaWQgPSAnWzUsNiknOworLS0gY2hhbmdpbmcganVzdCBhIHBhcnQgZmFpbHM6 CitVUERBVEUgdGVtcG9yYWxfbWx0cm5nCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IChkYXRl bXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIwMTgtMDEtMDUnLCAnMjAxOC0wMS0xMCcpKSkKKyAgU0VU IGlkID0gJ1s3LDgpJworICBXSEVSRSBpZCA9ICdbNSw2KSc7CistLSB0aGVuIGRlbGV0ZSB0aGUg b2JqZWN0aW5nIEZLIHJlY29yZCBhbmQgdGhlIHNhbWUgUEsgdXBkYXRlIHN1Y2NlZWRzOgorREVM RVRFIEZST00gdGVtcG9yYWxfZmtfbWx0cm5nMm1sdHJuZyBXSEVSRSBpZCA9ICdbMyw0KSc7CiBV UERBVEUgdGVtcG9yYWxfbWx0cm5nIFNFVCBpZCA9ICdbNyw4KScKICAgV0hFUkUgaWQgPSAnWzUs NiknIEFORCB2YWxpZF9hdCA9IGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAxOC0wMS0wMScs ICcyMDE4LTAyLTAxJykpOwogCkBAIC0xNzYwLDYgKzE4NDMsMTcgQEAgQkVHSU47CiAKICAgREVM RVRFIEZST00gdGVtcG9yYWxfbWx0cm5nIFdIRVJFIGlkID0gJ1s1LDYpJyBBTkQgdmFsaWRfYXQg PSBkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAxOC0wMi0wMScpKTsK IENPTU1JVDsKKy0tIGRlbGV0aW5nIGFuIHVucmVmZXJlbmNlZCBwYXJ0IGlzIG9rYXk6CitERUxF VEUgRlJPTSB0ZW1wb3JhbF9tbHRybmcKK0ZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IChkYXRlbXVs dGlyYW5nZShkYXRlcmFuZ2UoJzIwMTgtMDEtMDInLCAnMjAxOC0wMS0wMycpKSkKK1dIRVJFIGlk ID0gJ1s1LDYpJzsKKy0tIGRlbGV0aW5nIGp1c3QgYSBwYXJ0IGZhaWxzOgorREVMRVRFIEZST00g dGVtcG9yYWxfbWx0cm5nCitGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCAoZGF0ZW11bHRpcmFuZ2Uo ZGF0ZXJhbmdlKCcyMDE4LTAxLTA1JywgJzIwMTgtMDEtMTAnKSkpCitXSEVSRSBpZCA9ICdbNSw2 KSc7CistLSB0aGVuIGRlbGV0ZSB0aGUgb2JqZWN0aW5nIEZLIHJlY29yZCBhbmQgdGhlIHNhbWUg UEsgZGVsZXRlIHN1Y2NlZWRzOgorREVMRVRFIEZST00gdGVtcG9yYWxfZmtfbWx0cm5nMm1sdHJu ZyBXSEVSRSBpZCA9ICdbMyw0KSc7CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9tbHRybmcgV0hFUkUg aWQgPSAnWzUsNiknIEFORCB2YWxpZF9hdCA9IGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAx OC0wMS0wMScsICcyMDE4LTAyLTAxJykpOwogCiAtLQogLS0gRksgYmV0d2VlbiBwYXJ0aXRpb25l ZCB0YWJsZXM6IHJhbmdlcwpkaWZmIC0tZ2l0IGEvc3JjL3Rlc3Qvc3Vic2NyaXB0aW9uL3QvMDM0 X3RlbXBvcmFsLnBsIGIvc3JjL3Rlc3Qvc3Vic2NyaXB0aW9uL3QvMDM0X3RlbXBvcmFsLnBsCmlu ZGV4IDZiYmY2NTY3Mjc5Li5iNzQ2OTNjYjg5YyAxMDA2NDQKLS0tIGEvc3JjL3Rlc3Qvc3Vic2Ny aXB0aW9uL3QvMDM0X3RlbXBvcmFsLnBsCisrKyBiL3NyYy90ZXN0L3N1YnNjcmlwdGlvbi90LzAz NF90ZW1wb3JhbC5wbApAQCAtMTM3LDYgKzEzNywxMiBAQCBpcyggJHN0ZGVyciwKIAlxcShwc3Fs OjxzdGRpbj46MTogRVJST1I6ICBjYW5ub3QgdXBkYXRlIHRhYmxlICJ0ZW1wb3JhbF9ub19rZXki IGJlY2F1c2UgaXQgZG9lcyBub3QgaGF2ZSBhIHJlcGxpY2EgaWRlbnRpdHkgYW5kIHB1Ymxpc2hl cyB1cGRhdGVzCiBISU5UOiAgVG8gZW5hYmxlIHVwZGF0aW5nIHRoZSB0YWJsZSwgc2V0IFJFUExJ Q0EgSURFTlRJVFkgdXNpbmcgQUxURVIgVEFCTEUuKSwKIAkiY2FuJ3QgVVBEQVRFIHRlbXBvcmFs X25vX2tleSBERUZBVUxUIik7CisoJHJlc3VsdCwgJHN0ZG91dCwgJHN0ZGVycikgPSAkbm9kZV9w dWJsaXNoZXItPnBzcWwoJ3Bvc3RncmVzJywKKwkiVVBEQVRFIHRlbXBvcmFsX25vX2tleSBGT1Ig UE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDAxLTAxLTAxJyBUTyAnMjAwMi0wMS0wMScgU0VU IGEgPSAnYycgV0hFUkUgaWQgPSAnWzIsMyknIik7CitpcyggJHN0ZGVyciwKKwlxcShwc3FsOjxz dGRpbj46MTogRVJST1I6ICBjYW5ub3QgdXBkYXRlIHRhYmxlICJ0ZW1wb3JhbF9ub19rZXkiIGJl Y2F1c2UgaXQgZG9lcyBub3QgaGF2ZSBhIHJlcGxpY2EgaWRlbnRpdHkgYW5kIHB1Ymxpc2hlcyB1 cGRhdGVzCitISU5UOiAgVG8gZW5hYmxlIHVwZGF0aW5nIHRoZSB0YWJsZSwgc2V0IFJFUExJQ0Eg SURFTlRJVFkgdXNpbmcgQUxURVIgVEFCTEUuKSwKKwkiY2FuJ3QgVVBEQVRFIEZPUiBQT1JUSU9O IE9GIHRlbXBvcmFsX25vX2tleSBERUZBVUxUIik7CiAKICgkcmVzdWx0LCAkc3Rkb3V0LCAkc3Rk ZXJyKSA9ICRub2RlX3B1Ymxpc2hlci0+cHNxbCgncG9zdGdyZXMnLAogCSJERUxFVEUgRlJPTSB0 ZW1wb3JhbF9ub19rZXkgV0hFUkUgaWQgPSAnWzMsNCknIik7CkBAIC0xNDQsNiArMTUwLDEyIEBA IGlzKCAkc3RkZXJyLAogCXFxKHBzcWw6PHN0ZGluPjoxOiBFUlJPUjogIGNhbm5vdCBkZWxldGUg ZnJvbSB0YWJsZSAidGVtcG9yYWxfbm9fa2V5IiBiZWNhdXNlIGl0IGRvZXMgbm90IGhhdmUgYSBy ZXBsaWNhIGlkZW50aXR5IGFuZCBwdWJsaXNoZXMgZGVsZXRlcwogSElOVDogIFRvIGVuYWJsZSBk ZWxldGluZyBmcm9tIHRoZSB0YWJsZSwgc2V0IFJFUExJQ0EgSURFTlRJVFkgdXNpbmcgQUxURVIg VEFCTEUuKSwKIAkiY2FuJ3QgREVMRVRFIHRlbXBvcmFsX25vX2tleSBERUZBVUxUIik7CisoJHJl c3VsdCwgJHN0ZG91dCwgJHN0ZGVycikgPSAkbm9kZV9wdWJsaXNoZXItPnBzcWwoJ3Bvc3RncmVz JywKKwkiREVMRVRFIEZST00gdGVtcG9yYWxfbm9fa2V5IEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0 IEZST00gJzIwMDItMDEtMDEnIFRPICcyMDAzLTAxLTAxJyBXSEVSRSBpZCA9ICdbMiwzKSciKTsK K2lzKCAkc3RkZXJyLAorCXFxKHBzcWw6PHN0ZGluPjoxOiBFUlJPUjogIGNhbm5vdCBkZWxldGUg ZnJvbSB0YWJsZSAidGVtcG9yYWxfbm9fa2V5IiBiZWNhdXNlIGl0IGRvZXMgbm90IGhhdmUgYSBy ZXBsaWNhIGlkZW50aXR5IGFuZCBwdWJsaXNoZXMgZGVsZXRlcworSElOVDogIFRvIGVuYWJsZSBk ZWxldGluZyBmcm9tIHRoZSB0YWJsZSwgc2V0IFJFUExJQ0EgSURFTlRJVFkgdXNpbmcgQUxURVIg VEFCTEUuKSwKKwkiY2FuJ3QgREVMRVRFIEZPUiBQT1JUSU9OIE9GIHRlbXBvcmFsX25vX2tleSBE RUZBVUxUIik7CiAKICRub2RlX3B1Ymxpc2hlci0+d2FpdF9mb3JfY2F0Y2h1cCgnc3ViMScpOwog CkBAIC0xNjUsMTYgKzE3NywyMiBAQCAkbm9kZV9wdWJsaXNoZXItPnNhZmVfcHNxbCgKIAogJG5v ZGVfcHVibGlzaGVyLT5zYWZlX3BzcWwoJ3Bvc3RncmVzJywKIAkiVVBEQVRFIHRlbXBvcmFsX3Br IFNFVCBhID0gJ2InIFdIRVJFIGlkID0gJ1syLDMpJyIpOworJG5vZGVfcHVibGlzaGVyLT5zYWZl X3BzcWwoJ3Bvc3RncmVzJywKKwkiVVBEQVRFIHRlbXBvcmFsX3BrIEZPUiBQT1JUSU9OIE9GIHZh bGlkX2F0IEZST00gJzIwMDEtMDEtMDEnIFRPICcyMDAyLTAxLTAxJyBTRVQgYSA9ICdjJyBXSEVS RSBpZCA9ICdbMiwzKSciKTsKIAogJG5vZGVfcHVibGlzaGVyLT5zYWZlX3BzcWwoJ3Bvc3RncmVz JywKIAkiREVMRVRFIEZST00gdGVtcG9yYWxfcGsgV0hFUkUgaWQgPSAnWzMsNCknIik7Ciskbm9k ZV9wdWJsaXNoZXItPnNhZmVfcHNxbCgncG9zdGdyZXMnLAorCSJERUxFVEUgRlJPTSB0ZW1wb3Jh bF9wayBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDAyLTAxLTAxJyBUTyAnMjAwMy0w MS0wMScgV0hFUkUgaWQgPSAnWzIsMyknIik7CiAKICRub2RlX3B1Ymxpc2hlci0+d2FpdF9mb3Jf Y2F0Y2h1cCgnc3ViMScpOwogCiAkcmVzdWx0ID0gJG5vZGVfc3Vic2NyaWJlci0+c2FmZV9wc3Fs KCdwb3N0Z3JlcycsCiAJIlNFTEVDVCAqIEZST00gdGVtcG9yYWxfcGsgT1JERVIgQlkgaWQsIHZh bGlkX2F0Iik7CiBpcyggJHJlc3VsdCwgcXF7WzEsMil8WzIwMDAtMDEtMDEsMjAxMC0wMS0wMSl8 YQotWzIsMyl8WzIwMDAtMDEtMDEsMjAxMC0wMS0wMSl8YgorWzIsMyl8WzIwMDAtMDEtMDEsMjAw MS0wMS0wMSl8YgorWzIsMyl8WzIwMDEtMDEtMDEsMjAwMi0wMS0wMSl8YworWzIsMyl8WzIwMDMt MDEtMDEsMjAxMC0wMS0wMSl8YgogWzQsNSl8WzIwMDAtMDEtMDEsMjAxMC0wMS0wMSl8YX0sICdy ZXBsaWNhdGVkIHRlbXBvcmFsX3BrIERFRkFVTFQnKTsKIAogIyByZXBsaWNhdGUgd2l0aCBhIHVu aXF1ZSBrZXk6CkBAIC0xOTIsNiArMjEwLDEyIEBAIGlzKCAkc3RkZXJyLAogCXFxKHBzcWw6PHN0 ZGluPjoxOiBFUlJPUjogIGNhbm5vdCB1cGRhdGUgdGFibGUgInRlbXBvcmFsX3VuaXF1ZSIgYmVj YXVzZSBpdCBkb2VzIG5vdCBoYXZlIGEgcmVwbGljYSBpZGVudGl0eSBhbmQgcHVibGlzaGVzIHVw ZGF0ZXMKIEhJTlQ6ICBUbyBlbmFibGUgdXBkYXRpbmcgdGhlIHRhYmxlLCBzZXQgUkVQTElDQSBJ REVOVElUWSB1c2luZyBBTFRFUiBUQUJMRS4pLAogCSJjYW4ndCBVUERBVEUgdGVtcG9yYWxfdW5p cXVlIERFRkFVTFQiKTsKKygkcmVzdWx0LCAkc3Rkb3V0LCAkc3RkZXJyKSA9ICRub2RlX3B1Ymxp c2hlci0+cHNxbCgncG9zdGdyZXMnLAorCSJVUERBVEUgdGVtcG9yYWxfdW5pcXVlIEZPUiBQT1JU SU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMDEtMDEtMDEnIFRPICcyMDAyLTAxLTAxJyBTRVQgYSA9 ICdjJyBXSEVSRSBpZCA9ICdbMiwzKSciKTsKK2lzKCAkc3RkZXJyLAorCXFxKHBzcWw6PHN0ZGlu PjoxOiBFUlJPUjogIGNhbm5vdCB1cGRhdGUgdGFibGUgInRlbXBvcmFsX3VuaXF1ZSIgYmVjYXVz ZSBpdCBkb2VzIG5vdCBoYXZlIGEgcmVwbGljYSBpZGVudGl0eSBhbmQgcHVibGlzaGVzIHVwZGF0 ZXMKK0hJTlQ6ICBUbyBlbmFibGUgdXBkYXRpbmcgdGhlIHRhYmxlLCBzZXQgUkVQTElDQSBJREVO VElUWSB1c2luZyBBTFRFUiBUQUJMRS4pLAorCSJjYW4ndCBVUERBVEUgRk9SIFBPUlRJT04gT0Yg dGVtcG9yYWxfdW5pcXVlIERFRkFVTFQiKTsKIAogKCRyZXN1bHQsICRzdGRvdXQsICRzdGRlcnIp ID0gJG5vZGVfcHVibGlzaGVyLT5wc3FsKCdwb3N0Z3JlcycsCiAJIkRFTEVURSBGUk9NIHRlbXBv cmFsX3VuaXF1ZSBXSEVSRSBpZCA9ICdbMyw0KSciKTsKQEAgLTE5OSw2ICsyMjMsMTIgQEAgaXMo ICRzdGRlcnIsCiAJcXEocHNxbDo8c3RkaW4+OjE6IEVSUk9SOiAgY2Fubm90IGRlbGV0ZSBmcm9t IHRhYmxlICJ0ZW1wb3JhbF91bmlxdWUiIGJlY2F1c2UgaXQgZG9lcyBub3QgaGF2ZSBhIHJlcGxp Y2EgaWRlbnRpdHkgYW5kIHB1Ymxpc2hlcyBkZWxldGVzCiBISU5UOiAgVG8gZW5hYmxlIGRlbGV0 aW5nIGZyb20gdGhlIHRhYmxlLCBzZXQgUkVQTElDQSBJREVOVElUWSB1c2luZyBBTFRFUiBUQUJM RS4pLAogCSJjYW4ndCBERUxFVEUgdGVtcG9yYWxfdW5pcXVlIERFRkFVTFQiKTsKKygkcmVzdWx0 LCAkc3Rkb3V0LCAkc3RkZXJyKSA9ICRub2RlX3B1Ymxpc2hlci0+cHNxbCgncG9zdGdyZXMnLAor CSJERUxFVEUgRlJPTSB0ZW1wb3JhbF91bmlxdWUgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJP TSAnMjAwMi0wMS0wMScgVE8gJzIwMDMtMDEtMDEnIFdIRVJFIGlkID0gJ1syLDMpJyIpOworaXMo ICRzdGRlcnIsCisJcXEocHNxbDo8c3RkaW4+OjE6IEVSUk9SOiAgY2Fubm90IGRlbGV0ZSBmcm9t IHRhYmxlICJ0ZW1wb3JhbF91bmlxdWUiIGJlY2F1c2UgaXQgZG9lcyBub3QgaGF2ZSBhIHJlcGxp Y2EgaWRlbnRpdHkgYW5kIHB1Ymxpc2hlcyBkZWxldGVzCitISU5UOiAgVG8gZW5hYmxlIGRlbGV0 aW5nIGZyb20gdGhlIHRhYmxlLCBzZXQgUkVQTElDQSBJREVOVElUWSB1c2luZyBBTFRFUiBUQUJM RS4pLAorCSJjYW4ndCBERUxFVEUgRk9SIFBPUlRJT04gT0YgdGVtcG9yYWxfdW5pcXVlIERFRkFV TFQiKTsKIAogJG5vZGVfcHVibGlzaGVyLT53YWl0X2Zvcl9jYXRjaHVwKCdzdWIxJyk7CiAKQEAg LTI4NywxNiArMzE3LDIyIEBAICRub2RlX3B1Ymxpc2hlci0+c2FmZV9wc3FsKAogCiAkbm9kZV9w dWJsaXNoZXItPnNhZmVfcHNxbCgncG9zdGdyZXMnLAogCSJVUERBVEUgdGVtcG9yYWxfbm9fa2V5 IFNFVCBhID0gJ2InIFdIRVJFIGlkID0gJ1syLDMpJyIpOworJG5vZGVfcHVibGlzaGVyLT5zYWZl X3BzcWwoJ3Bvc3RncmVzJywKKwkiVVBEQVRFIHRlbXBvcmFsX25vX2tleSBGT1IgUE9SVElPTiBP RiB2YWxpZF9hdCBGUk9NICcyMDAxLTAxLTAxJyBUTyAnMjAwMi0wMS0wMScgU0VUIGEgPSAnYycg V0hFUkUgaWQgPSAnWzIsMyknIik7CiAKICRub2RlX3B1Ymxpc2hlci0+c2FmZV9wc3FsKCdwb3N0 Z3JlcycsCiAJIkRFTEVURSBGUk9NIHRlbXBvcmFsX25vX2tleSBXSEVSRSBpZCA9ICdbMyw0KSci KTsKKyRub2RlX3B1Ymxpc2hlci0+c2FmZV9wc3FsKCdwb3N0Z3JlcycsCisJIkRFTEVURSBGUk9N IHRlbXBvcmFsX25vX2tleSBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDAyLTAxLTAx JyBUTyAnMjAwMy0wMS0wMScgV0hFUkUgaWQgPSAnWzIsMyknIik7CiAKICRub2RlX3B1Ymxpc2hl ci0+d2FpdF9mb3JfY2F0Y2h1cCgnc3ViMScpOwogCiAkcmVzdWx0ID0gJG5vZGVfc3Vic2NyaWJl ci0+c2FmZV9wc3FsKCdwb3N0Z3JlcycsCiAJIlNFTEVDVCAqIEZST00gdGVtcG9yYWxfbm9fa2V5 IE9SREVSIEJZIGlkLCB2YWxpZF9hdCIpOwogaXMoICRyZXN1bHQsIHFxe1sxLDIpfFsyMDAwLTAx LTAxLDIwMTAtMDEtMDEpfGEKLVsyLDMpfFsyMDAwLTAxLTAxLDIwMTAtMDEtMDEpfGIKK1syLDMp fFsyMDAwLTAxLTAxLDIwMDEtMDEtMDEpfGIKK1syLDMpfFsyMDAxLTAxLTAxLDIwMDItMDEtMDEp fGMKK1syLDMpfFsyMDAzLTAxLTAxLDIwMTAtMDEtMDEpfGIKIFs0LDUpfFsyMDAwLTAxLTAxLDIw MTAtMDEtMDEpfGF9LCAncmVwbGljYXRlZCB0ZW1wb3JhbF9ub19rZXkgRlVMTCcpOwogCiAjIHJl cGxpY2F0ZSB3aXRoIGEgcHJpbWFyeSBrZXk6CkBAIC0zMTAsMTYgKzM0NiwyMiBAQCAkbm9kZV9w dWJsaXNoZXItPnNhZmVfcHNxbCgKIAogJG5vZGVfcHVibGlzaGVyLT5zYWZlX3BzcWwoJ3Bvc3Rn cmVzJywKIAkiVVBEQVRFIHRlbXBvcmFsX3BrIFNFVCBhID0gJ2InIFdIRVJFIGlkID0gJ1syLDMp JyIpOworJG5vZGVfcHVibGlzaGVyLT5zYWZlX3BzcWwoJ3Bvc3RncmVzJywKKwkiVVBEQVRFIHRl bXBvcmFsX3BrIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMDEtMDEtMDEnIFRPICcy MDAyLTAxLTAxJyBTRVQgYSA9ICdjJyBXSEVSRSBpZCA9ICdbMiwzKSciKTsKIAogJG5vZGVfcHVi bGlzaGVyLT5zYWZlX3BzcWwoJ3Bvc3RncmVzJywKIAkiREVMRVRFIEZST00gdGVtcG9yYWxfcGsg V0hFUkUgaWQgPSAnWzMsNCknIik7Ciskbm9kZV9wdWJsaXNoZXItPnNhZmVfcHNxbCgncG9zdGdy ZXMnLAorCSJERUxFVEUgRlJPTSB0ZW1wb3JhbF9wayBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBG Uk9NICcyMDAyLTAxLTAxJyBUTyAnMjAwMy0wMS0wMScgV0hFUkUgaWQgPSAnWzIsMyknIik7CiAK ICRub2RlX3B1Ymxpc2hlci0+d2FpdF9mb3JfY2F0Y2h1cCgnc3ViMScpOwogCiAkcmVzdWx0ID0g JG5vZGVfc3Vic2NyaWJlci0+c2FmZV9wc3FsKCdwb3N0Z3JlcycsCiAJIlNFTEVDVCAqIEZST00g dGVtcG9yYWxfcGsgT1JERVIgQlkgaWQsIHZhbGlkX2F0Iik7CiBpcyggJHJlc3VsdCwgcXF7WzEs Mil8WzIwMDAtMDEtMDEsMjAxMC0wMS0wMSl8YQotWzIsMyl8WzIwMDAtMDEtMDEsMjAxMC0wMS0w MSl8YgorWzIsMyl8WzIwMDAtMDEtMDEsMjAwMS0wMS0wMSl8YgorWzIsMyl8WzIwMDEtMDEtMDEs MjAwMi0wMS0wMSl8YworWzIsMyl8WzIwMDMtMDEtMDEsMjAxMC0wMS0wMSl8YgogWzQsNSl8WzIw MDAtMDEtMDEsMjAxMC0wMS0wMSl8YX0sICdyZXBsaWNhdGVkIHRlbXBvcmFsX3BrIEZVTEwnKTsK IAogIyByZXBsaWNhdGUgd2l0aCBhIHVuaXF1ZSBrZXk6CkBAIC0zMzMsMTcgKzM3NSwyMyBAQCAk bm9kZV9wdWJsaXNoZXItPnNhZmVfcHNxbCgKIAogJG5vZGVfcHVibGlzaGVyLT5zYWZlX3BzcWwo J3Bvc3RncmVzJywKIAkiVVBEQVRFIHRlbXBvcmFsX3VuaXF1ZSBTRVQgYSA9ICdiJyBXSEVSRSBp ZCA9ICdbMiwzKSciKTsKKyRub2RlX3B1Ymxpc2hlci0+c2FmZV9wc3FsKCdwb3N0Z3JlcycsCisJ IlVQREFURSB0ZW1wb3JhbF91bmlxdWUgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAw MS0wMS0wMScgVE8gJzIwMDItMDEtMDEnIFNFVCBhID0gJ2MnIFdIRVJFIGlkID0gJ1syLDMpJyIp OwogCiAkbm9kZV9wdWJsaXNoZXItPnNhZmVfcHNxbCgncG9zdGdyZXMnLAogCSJERUxFVEUgRlJP TSB0ZW1wb3JhbF91bmlxdWUgV0hFUkUgaWQgPSAnWzMsNCknIik7Ciskbm9kZV9wdWJsaXNoZXIt PnNhZmVfcHNxbCgncG9zdGdyZXMnLAorCSJERUxFVEUgRlJPTSB0ZW1wb3JhbF91bmlxdWUgRk9S IFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAwMi0wMS0wMScgVE8gJzIwMDMtMDEtMDEnIFdI RVJFIGlkID0gJ1syLDMpJyIpOwogCiAkbm9kZV9wdWJsaXNoZXItPndhaXRfZm9yX2NhdGNodXAo J3N1YjEnKTsKIAogJHJlc3VsdCA9ICRub2RlX3N1YnNjcmliZXItPnNhZmVfcHNxbCgncG9zdGdy ZXMnLAogCSJTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX3VuaXF1ZSBPUkRFUiBCWSBpZCwgdmFsaWRf YXQiKTsKIGlzKCAkcmVzdWx0LCBxcXtbMSwyKXxbMjAwMC0wMS0wMSwyMDEwLTAxLTAxKXxhCi1b MiwzKXxbMjAwMC0wMS0wMSwyMDEwLTAxLTAxKXxiCi1bNCw1KXxbMjAwMC0wMS0wMSwyMDEwLTAx LTAxKXxhfSwgJ3JlcGxpY2F0ZWQgdGVtcG9yYWxfdW5pcXVlIEZVTEwnKTsKK1syLDMpfFsyMDAw LTAxLTAxLDIwMDEtMDEtMDEpfGIKK1syLDMpfFsyMDAxLTAxLTAxLDIwMDItMDEtMDEpfGMKK1sy LDMpfFsyMDAzLTAxLTAxLDIwMTAtMDEtMDEpfGIKK1s0LDUpfFsyMDAwLTAxLTAxLDIwMTAtMDEt MDEpfGF9LCAncmVwbGljYXRlZCB0ZW1wb3JhbF91bmlxdWUgREVGQVVMVCcpOwogCiAjIGNsZWFu dXAKIApAQCAtNDI1LDE2ICs0NzMsMjIgQEAgJG5vZGVfcHVibGlzaGVyLT5zYWZlX3BzcWwoCiAK ICRub2RlX3B1Ymxpc2hlci0+c2FmZV9wc3FsKCdwb3N0Z3JlcycsCiAJIlVQREFURSB0ZW1wb3Jh bF9wayBTRVQgYSA9ICdiJyBXSEVSRSBpZCA9ICdbMiwzKSciKTsKKyRub2RlX3B1Ymxpc2hlci0+ c2FmZV9wc3FsKCdwb3N0Z3JlcycsCisJIlVQREFURSB0ZW1wb3JhbF9wayBGT1IgUE9SVElPTiBP RiB2YWxpZF9hdCBGUk9NICcyMDAxLTAxLTAxJyBUTyAnMjAwMi0wMS0wMScgU0VUIGEgPSAnYycg V0hFUkUgaWQgPSAnWzIsMyknIik7CiAKICRub2RlX3B1Ymxpc2hlci0+c2FmZV9wc3FsKCdwb3N0 Z3JlcycsCiAJIkRFTEVURSBGUk9NIHRlbXBvcmFsX3BrIFdIRVJFIGlkID0gJ1szLDQpJyIpOwor JG5vZGVfcHVibGlzaGVyLT5zYWZlX3BzcWwoJ3Bvc3RncmVzJywKKwkiREVMRVRFIEZST00gdGVt cG9yYWxfcGsgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAwMi0wMS0wMScgVE8gJzIw MDMtMDEtMDEnIFdIRVJFIGlkID0gJ1syLDMpJyIpOwogCiAkbm9kZV9wdWJsaXNoZXItPndhaXRf Zm9yX2NhdGNodXAoJ3N1YjEnKTsKIAogJHJlc3VsdCA9ICRub2RlX3N1YnNjcmliZXItPnNhZmVf cHNxbCgncG9zdGdyZXMnLAogCSJTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX3BrIE9SREVSIEJZIGlk LCB2YWxpZF9hdCIpOwogaXMoICRyZXN1bHQsIHFxe1sxLDIpfFsyMDAwLTAxLTAxLDIwMTAtMDEt MDEpfGEKLVsyLDMpfFsyMDAwLTAxLTAxLDIwMTAtMDEtMDEpfGIKK1syLDMpfFsyMDAwLTAxLTAx LDIwMDEtMDEtMDEpfGIKK1syLDMpfFsyMDAxLTAxLTAxLDIwMDItMDEtMDEpfGMKK1syLDMpfFsy MDAzLTAxLTAxLDIwMTAtMDEtMDEpfGIKIFs0LDUpfFsyMDAwLTAxLTAxLDIwMTAtMDEtMDEpfGF9 LCAncmVwbGljYXRlZCB0ZW1wb3JhbF9wayBVU0lORyBJTkRFWCcpOwogCiAjIHJlcGxpY2F0ZSB3 aXRoIGEgdW5pcXVlIGtleToKQEAgLTQ0OCwxNiArNTAyLDIyIEBAICRub2RlX3B1Ymxpc2hlci0+ c2FmZV9wc3FsKAogCiAkbm9kZV9wdWJsaXNoZXItPnNhZmVfcHNxbCgncG9zdGdyZXMnLAogCSJV UERBVEUgdGVtcG9yYWxfdW5pcXVlIFNFVCBhID0gJ2InIFdIRVJFIGlkID0gJ1syLDMpJyIpOwor JG5vZGVfcHVibGlzaGVyLT5zYWZlX3BzcWwoJ3Bvc3RncmVzJywKKwkiVVBEQVRFIHRlbXBvcmFs X3VuaXF1ZSBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDAxLTAxLTAxJyBUTyAnMjAw Mi0wMS0wMScgU0VUIGEgPSAnYycgV0hFUkUgaWQgPSAnWzIsMyknIik7CiAKICRub2RlX3B1Ymxp c2hlci0+c2FmZV9wc3FsKCdwb3N0Z3JlcycsCiAJIkRFTEVURSBGUk9NIHRlbXBvcmFsX3VuaXF1 ZSBXSEVSRSBpZCA9ICdbMyw0KSciKTsKKyRub2RlX3B1Ymxpc2hlci0+c2FmZV9wc3FsKCdwb3N0 Z3JlcycsCisJIkRFTEVURSBGUk9NIHRlbXBvcmFsX3VuaXF1ZSBGT1IgUE9SVElPTiBPRiB2YWxp ZF9hdCBGUk9NICcyMDAyLTAxLTAxJyBUTyAnMjAwMy0wMS0wMScgV0hFUkUgaWQgPSAnWzIsMykn Iik7CiAKICRub2RlX3B1Ymxpc2hlci0+d2FpdF9mb3JfY2F0Y2h1cCgnc3ViMScpOwogCiAkcmVz dWx0ID0gJG5vZGVfc3Vic2NyaWJlci0+c2FmZV9wc3FsKCdwb3N0Z3JlcycsCiAJIlNFTEVDVCAq IEZST00gdGVtcG9yYWxfdW5pcXVlIE9SREVSIEJZIGlkLCB2YWxpZF9hdCIpOwogaXMoICRyZXN1 bHQsIHFxe1sxLDIpfFsyMDAwLTAxLTAxLDIwMTAtMDEtMDEpfGEKLVsyLDMpfFsyMDAwLTAxLTAx LDIwMTAtMDEtMDEpfGIKK1syLDMpfFsyMDAwLTAxLTAxLDIwMDEtMDEtMDEpfGIKK1syLDMpfFsy MDAxLTAxLTAxLDIwMDItMDEtMDEpfGMKK1syLDMpfFsyMDAzLTAxLTAxLDIwMTAtMDEtMDEpfGIK IFs0LDUpfFsyMDAwLTAxLTAxLDIwMTAtMDEtMDEpfGF9LCAncmVwbGljYXRlZCB0ZW1wb3JhbF91 bmlxdWUgVVNJTkcgSU5ERVgnKTsKIAogIyBjbGVhbnVwCkBAIC01NDMsNiArNjAzLDEyIEBAIGlz KCAkc3RkZXJyLAogCXFxKHBzcWw6PHN0ZGluPjoxOiBFUlJPUjogIGNhbm5vdCB1cGRhdGUgdGFi bGUgInRlbXBvcmFsX25vX2tleSIgYmVjYXVzZSBpdCBkb2VzIG5vdCBoYXZlIGEgcmVwbGljYSBp ZGVudGl0eSBhbmQgcHVibGlzaGVzIHVwZGF0ZXMKIEhJTlQ6ICBUbyBlbmFibGUgdXBkYXRpbmcg dGhlIHRhYmxlLCBzZXQgUkVQTElDQSBJREVOVElUWSB1c2luZyBBTFRFUiBUQUJMRS4pLAogCSJj YW4ndCBVUERBVEUgdGVtcG9yYWxfbm9fa2V5IE5PVEhJTkciKTsKKygkcmVzdWx0LCAkc3Rkb3V0 LCAkc3RkZXJyKSA9ICRub2RlX3B1Ymxpc2hlci0+cHNxbCgncG9zdGdyZXMnLAorCSJVUERBVEUg dGVtcG9yYWxfbm9fa2V5IEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMDEtMDEtMDEn IFRPICcyMDAyLTAxLTAxJyBTRVQgYSA9ICdjJyBXSEVSRSBpZCA9ICdbMiwzKSciKTsKK2lzKCAk c3RkZXJyLAorCXFxKHBzcWw6PHN0ZGluPjoxOiBFUlJPUjogIGNhbm5vdCB1cGRhdGUgdGFibGUg InRlbXBvcmFsX25vX2tleSIgYmVjYXVzZSBpdCBkb2VzIG5vdCBoYXZlIGEgcmVwbGljYSBpZGVu dGl0eSBhbmQgcHVibGlzaGVzIHVwZGF0ZXMKK0hJTlQ6ICBUbyBlbmFibGUgdXBkYXRpbmcgdGhl IHRhYmxlLCBzZXQgUkVQTElDQSBJREVOVElUWSB1c2luZyBBTFRFUiBUQUJMRS4pLAorCSJjYW4n dCBVUERBVEUgdGVtcG9yYWxfbm9fa2V5IE5PVEhJTkciKTsKIAogKCRyZXN1bHQsICRzdGRvdXQs ICRzdGRlcnIpID0gJG5vZGVfcHVibGlzaGVyLT5wc3FsKCdwb3N0Z3JlcycsCiAJIkRFTEVURSBG Uk9NIHRlbXBvcmFsX25vX2tleSBXSEVSRSBpZCA9ICdbMyw0KSciKTsKQEAgLTU1MCw2ICs2MTYs MTIgQEAgaXMoICRzdGRlcnIsCiAJcXEocHNxbDo8c3RkaW4+OjE6IEVSUk9SOiAgY2Fubm90IGRl bGV0ZSBmcm9tIHRhYmxlICJ0ZW1wb3JhbF9ub19rZXkiIGJlY2F1c2UgaXQgZG9lcyBub3QgaGF2 ZSBhIHJlcGxpY2EgaWRlbnRpdHkgYW5kIHB1Ymxpc2hlcyBkZWxldGVzCiBISU5UOiAgVG8gZW5h YmxlIGRlbGV0aW5nIGZyb20gdGhlIHRhYmxlLCBzZXQgUkVQTElDQSBJREVOVElUWSB1c2luZyBB TFRFUiBUQUJMRS4pLAogCSJjYW4ndCBERUxFVEUgdGVtcG9yYWxfbm9fa2V5IE5PVEhJTkciKTsK KygkcmVzdWx0LCAkc3Rkb3V0LCAkc3RkZXJyKSA9ICRub2RlX3B1Ymxpc2hlci0+cHNxbCgncG9z dGdyZXMnLAorCSJERUxFVEUgRlJPTSB0ZW1wb3JhbF9ub19rZXkgRk9SIFBPUlRJT04gT0YgdmFs aWRfYXQgRlJPTSAnMjAwMi0wMS0wMScgVE8gJzIwMDMtMDEtMDEnIFdIRVJFIGlkID0gJ1syLDMp JyIpOworaXMoICRzdGRlcnIsCisJcXEocHNxbDo8c3RkaW4+OjE6IEVSUk9SOiAgY2Fubm90IGRl bGV0ZSBmcm9tIHRhYmxlICJ0ZW1wb3JhbF9ub19rZXkiIGJlY2F1c2UgaXQgZG9lcyBub3QgaGF2 ZSBhIHJlcGxpY2EgaWRlbnRpdHkgYW5kIHB1Ymxpc2hlcyBkZWxldGVzCitISU5UOiAgVG8gZW5h YmxlIGRlbGV0aW5nIGZyb20gdGhlIHRhYmxlLCBzZXQgUkVQTElDQSBJREVOVElUWSB1c2luZyBB TFRFUiBUQUJMRS4pLAorCSJjYW4ndCBERUxFVEUgdGVtcG9yYWxfbm9fa2V5IE5PVEhJTkciKTsK IAogJG5vZGVfcHVibGlzaGVyLT53YWl0X2Zvcl9jYXRjaHVwKCdzdWIxJyk7CiAKQEAgLTU3NSw2 ICs2NDcsMTIgQEAgaXMoICRzdGRlcnIsCiAJcXEocHNxbDo8c3RkaW4+OjE6IEVSUk9SOiAgY2Fu bm90IHVwZGF0ZSB0YWJsZSAidGVtcG9yYWxfcGsiIGJlY2F1c2UgaXQgZG9lcyBub3QgaGF2ZSBh IHJlcGxpY2EgaWRlbnRpdHkgYW5kIHB1Ymxpc2hlcyB1cGRhdGVzCiBISU5UOiAgVG8gZW5hYmxl IHVwZGF0aW5nIHRoZSB0YWJsZSwgc2V0IFJFUExJQ0EgSURFTlRJVFkgdXNpbmcgQUxURVIgVEFC TEUuKSwKIAkiY2FuJ3QgVVBEQVRFIHRlbXBvcmFsX3BrIE5PVEhJTkciKTsKKygkcmVzdWx0LCAk c3Rkb3V0LCAkc3RkZXJyKSA9ICRub2RlX3B1Ymxpc2hlci0+cHNxbCgncG9zdGdyZXMnLAorCSJV UERBVEUgdGVtcG9yYWxfcGsgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAwMS0wMS0w MScgVE8gJzIwMDItMDEtMDEnIFNFVCBhID0gJ2MnIFdIRVJFIGlkID0gJ1syLDMpJyIpOworaXMo ICRzdGRlcnIsCisJcXEocHNxbDo8c3RkaW4+OjE6IEVSUk9SOiAgY2Fubm90IHVwZGF0ZSB0YWJs ZSAidGVtcG9yYWxfcGsiIGJlY2F1c2UgaXQgZG9lcyBub3QgaGF2ZSBhIHJlcGxpY2EgaWRlbnRp dHkgYW5kIHB1Ymxpc2hlcyB1cGRhdGVzCitISU5UOiAgVG8gZW5hYmxlIHVwZGF0aW5nIHRoZSB0 YWJsZSwgc2V0IFJFUExJQ0EgSURFTlRJVFkgdXNpbmcgQUxURVIgVEFCTEUuKSwKKwkiY2FuJ3Qg VVBEQVRFIHRlbXBvcmFsX3BrIE5PVEhJTkciKTsKIAogKCRyZXN1bHQsICRzdGRvdXQsICRzdGRl cnIpID0gJG5vZGVfcHVibGlzaGVyLT5wc3FsKCdwb3N0Z3JlcycsCiAJIkRFTEVURSBGUk9NIHRl bXBvcmFsX3BrIFdIRVJFIGlkID0gJ1szLDQpJyIpOwpAQCAtNTgyLDYgKzY2MCwxMiBAQCBpcygg JHN0ZGVyciwKIAlxcShwc3FsOjxzdGRpbj46MTogRVJST1I6ICBjYW5ub3QgZGVsZXRlIGZyb20g dGFibGUgInRlbXBvcmFsX3BrIiBiZWNhdXNlIGl0IGRvZXMgbm90IGhhdmUgYSByZXBsaWNhIGlk ZW50aXR5IGFuZCBwdWJsaXNoZXMgZGVsZXRlcwogSElOVDogIFRvIGVuYWJsZSBkZWxldGluZyBm cm9tIHRoZSB0YWJsZSwgc2V0IFJFUExJQ0EgSURFTlRJVFkgdXNpbmcgQUxURVIgVEFCTEUuKSwK IAkiY2FuJ3QgREVMRVRFIHRlbXBvcmFsX3BrIE5PVEhJTkciKTsKKygkcmVzdWx0LCAkc3Rkb3V0 LCAkc3RkZXJyKSA9ICRub2RlX3B1Ymxpc2hlci0+cHNxbCgncG9zdGdyZXMnLAorCSJERUxFVEUg RlJPTSB0ZW1wb3JhbF9wayBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDAyLTAxLTAx JyBUTyAnMjAwMy0wMS0wMScgV0hFUkUgaWQgPSAnWzIsMyknIik7CitpcyggJHN0ZGVyciwKKwlx cShwc3FsOjxzdGRpbj46MTogRVJST1I6ICBjYW5ub3QgZGVsZXRlIGZyb20gdGFibGUgInRlbXBv cmFsX3BrIiBiZWNhdXNlIGl0IGRvZXMgbm90IGhhdmUgYSByZXBsaWNhIGlkZW50aXR5IGFuZCBw dWJsaXNoZXMgZGVsZXRlcworSElOVDogIFRvIGVuYWJsZSBkZWxldGluZyBmcm9tIHRoZSB0YWJs ZSwgc2V0IFJFUExJQ0EgSURFTlRJVFkgdXNpbmcgQUxURVIgVEFCTEUuKSwKKwkiY2FuJ3QgREVM RVRFIHRlbXBvcmFsX3BrIE5PVEhJTkciKTsKIAogJG5vZGVfcHVibGlzaGVyLT53YWl0X2Zvcl9j YXRjaHVwKCdzdWIxJyk7CiAKQEAgLTYwNyw2ICs2OTEsMTIgQEAgaXMoICRzdGRlcnIsCiAJcXEo cHNxbDo8c3RkaW4+OjE6IEVSUk9SOiAgY2Fubm90IHVwZGF0ZSB0YWJsZSAidGVtcG9yYWxfdW5p cXVlIiBiZWNhdXNlIGl0IGRvZXMgbm90IGhhdmUgYSByZXBsaWNhIGlkZW50aXR5IGFuZCBwdWJs aXNoZXMgdXBkYXRlcwogSElOVDogIFRvIGVuYWJsZSB1cGRhdGluZyB0aGUgdGFibGUsIHNldCBS RVBMSUNBIElERU5USVRZIHVzaW5nIEFMVEVSIFRBQkxFLiksCiAJImNhbid0IFVQREFURSB0ZW1w b3JhbF91bmlxdWUgTk9USElORyIpOworKCRyZXN1bHQsICRzdGRvdXQsICRzdGRlcnIpID0gJG5v ZGVfcHVibGlzaGVyLT5wc3FsKCdwb3N0Z3JlcycsCisJIlVQREFURSB0ZW1wb3JhbF91bmlxdWUg Rk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAwMS0wMS0wMScgVE8gJzIwMDItMDEtMDEn IFNFVCBhID0gJ2MnIFdIRVJFIGlkID0gJ1syLDMpJyIpOworaXMoICRzdGRlcnIsCisJcXEocHNx bDo8c3RkaW4+OjE6IEVSUk9SOiAgY2Fubm90IHVwZGF0ZSB0YWJsZSAidGVtcG9yYWxfdW5pcXVl IiBiZWNhdXNlIGl0IGRvZXMgbm90IGhhdmUgYSByZXBsaWNhIGlkZW50aXR5IGFuZCBwdWJsaXNo ZXMgdXBkYXRlcworSElOVDogIFRvIGVuYWJsZSB1cGRhdGluZyB0aGUgdGFibGUsIHNldCBSRVBM SUNBIElERU5USVRZIHVzaW5nIEFMVEVSIFRBQkxFLiksCisJImNhbid0IFVQREFURSBGT1IgUE9S VElPTiBPRiB0ZW1wb3JhbF91bmlxdWUgTk9USElORyIpOwogCiAoJHJlc3VsdCwgJHN0ZG91dCwg JHN0ZGVycikgPSAkbm9kZV9wdWJsaXNoZXItPnBzcWwoJ3Bvc3RncmVzJywKIAkiREVMRVRFIEZS T00gdGVtcG9yYWxfdW5pcXVlIFdIRVJFIGlkID0gJ1szLDQpJyIpOwpAQCAtNjE0LDYgKzcwNCwx MiBAQCBpcyggJHN0ZGVyciwKIAlxcShwc3FsOjxzdGRpbj46MTogRVJST1I6ICBjYW5ub3QgZGVs ZXRlIGZyb20gdGFibGUgInRlbXBvcmFsX3VuaXF1ZSIgYmVjYXVzZSBpdCBkb2VzIG5vdCBoYXZl IGEgcmVwbGljYSBpZGVudGl0eSBhbmQgcHVibGlzaGVzIGRlbGV0ZXMKIEhJTlQ6ICBUbyBlbmFi bGUgZGVsZXRpbmcgZnJvbSB0aGUgdGFibGUsIHNldCBSRVBMSUNBIElERU5USVRZIHVzaW5nIEFM VEVSIFRBQkxFLiksCiAJImNhbid0IERFTEVURSB0ZW1wb3JhbF91bmlxdWUgTk9USElORyIpOwor KCRyZXN1bHQsICRzdGRvdXQsICRzdGRlcnIpID0gJG5vZGVfcHVibGlzaGVyLT5wc3FsKCdwb3N0 Z3JlcycsCisJIkRFTEVURSBGUk9NIHRlbXBvcmFsX3VuaXF1ZSBGT1IgUE9SVElPTiBPRiB2YWxp ZF9hdCBGUk9NICcyMDAyLTAxLTAxJyBUTyAnMjAwMy0wMS0wMScgV0hFUkUgaWQgPSAnWzIsMykn Iik7CitpcyggJHN0ZGVyciwKKwlxcShwc3FsOjxzdGRpbj46MTogRVJST1I6ICBjYW5ub3QgZGVs ZXRlIGZyb20gdGFibGUgInRlbXBvcmFsX3VuaXF1ZSIgYmVjYXVzZSBpdCBkb2VzIG5vdCBoYXZl IGEgcmVwbGljYSBpZGVudGl0eSBhbmQgcHVibGlzaGVzIGRlbGV0ZXMKK0hJTlQ6ICBUbyBlbmFi bGUgZGVsZXRpbmcgZnJvbSB0aGUgdGFibGUsIHNldCBSRVBMSUNBIElERU5USVRZIHVzaW5nIEFM VEVSIFRBQkxFLiksCisJImNhbid0IERFTEVURSBGT1IgUE9SVElPTiBPRiB0ZW1wb3JhbF91bmlx dWUgTk9USElORyIpOwogCiAkbm9kZV9wdWJsaXNoZXItPndhaXRfZm9yX2NhdGNodXAoJ3N1YjEn KTsKIApkaWZmIC0tZ2l0IGEvc3JjL3Rvb2xzL3BnaW5kZW50L3R5cGVkZWZzLmxpc3QgYi9zcmMv dG9vbHMvcGdpbmRlbnQvdHlwZWRlZnMubGlzdAppbmRleCBkZmNkNjE5YmZlZS4uM2I0ZDI4NzUw OTQgMTAwNjQ0Ci0tLSBhL3NyYy90b29scy9wZ2luZGVudC90eXBlZGVmcy5saXN0CisrKyBiL3Ny Yy90b29scy9wZ2luZGVudC90eXBlZGVmcy5saXN0CkBAIC04NDAsNiArODQwLDkgQEAgRm9yQm90 aFN0YXRlCiBGb3JFYWNoU3RhdGUKIEZvckZpdmVTdGF0ZQogRm9yRm91clN0YXRlCitGb3JQb3J0 aW9uT2ZDbGF1c2UKK0ZvclBvcnRpb25PZkV4cHIKK0ZvclBvcnRpb25PZlN0YXRlCiBGb3JUaHJl ZVN0YXRlCiBGb3JlaWduQXN5bmNDb25maWd1cmVXYWl0X2Z1bmN0aW9uCiBGb3JlaWduQXN5bmNO b3RpZnlfZnVuY3Rpb24KQEAgLTk3Myw2ICs5NzYsNyBAQCBGb3JtX3BnX3RzX3RlbXBsYXRlCiBG b3JtX3BnX3R5cGUKIEZvcm1fcGdfdXNlcl9tYXBwaW5nCiBGb3JtYXROb2RlCitGUE9fUXVlcnlI YXNoRW50cnkKIEZyZWVCbG9ja051bWJlckFycmF5CiBGcmVlTGlzdERhdGEKIEZyZWVQYWdlQnRy ZWUKLS0gCjIuNDcuMwoK --000000000000160b4c0644846b0a Content-Type: text/x-patch; charset="US-ASCII"; name="v62-0003-Add-isolation-tests-for-UPDATE-DELETE-FOR-PORTIO.patch" Content-Disposition: attachment; filename="v62-0003-Add-isolation-tests-for-UPDATE-DELETE-FOR-PORTIO.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_migeesg72 RnJvbSBiODc4MDU0YTgxZDRjNjM5YTkxYzZiMzU2Y2JkYzM4OWYwMThhMjJkIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiAiUGF1bCBBLiBKdW5nd2lydGgiIDxwakBpbGx1bWluYXRlZGNv bXB1dGluZy5jb20+CkRhdGU6IEZyaSwgMzEgT2N0IDIwMjUgMTk6NTk6NTIgLTA3MDAKU3ViamVj dDogW1BBVENIIHY2MiAzLzhdIEFkZCBpc29sYXRpb24gdGVzdHMgZm9yIFVQREFURS9ERUxFVEUg Rk9SIFBPUlRJT04gT0YKCkNvbmN1cnJlbnQgdXBkYXRlcy9kZWxldGVzIGluIFJFQUQgQ09NTUlU VEVEIG1vZGUgZG9uJ3QgZ2l2ZSB5b3Ugd2hhdCB5b3Ugd2FudDoKdGhlIHNlY29uZCB1cGRhdGUv ZGVsZXRlIGZhaWxzIHRvIGxlZnRvdmVycyBmcm9tIHRoZSBmaXJzdCwgc28geW91IGVzc2VudGlh bGx5CmhhdmUgbG9zdCB1cGRhdGVzL2RlbGV0ZXMuIEJ1dCB3ZSBhcmUgZm9sbG93aW5nIHRoZSBy dWxlcywgYW5kIG90aGVyIFJEQk1TZXMKZ2l2ZSB5b3Ugc2NyZXd5IHJlc3VsdHMgaW4gUkVBRCBD T01NSVRURUQgdG9vIChhbGJlaXQgZGlmZmVyZW50KS4KCk9uZSBhcHByb2FjaCBpcyB0byBsb2Nr IHRoZSBoaXN0b3J5IHlvdSB3YW50IHdpdGggU0VMRUNUIEZPUiBVUERBVEUgYmVmb3JlCmlzc3Vp bmcgdGhlIGFjdHVhbCBVUERBVEUvREVMRVRFLiBUaGF0IHdheSB5b3Ugc2VlIHRoZSBsZWZ0b3Zl cnMgb2YgYW55b25lIGVsc2UKd2hvIGFsc28gdG91Y2hlZCB0aGF0IGhpc3RvcnkuIFRoZSBpc29s YXRpb24gdGVzdHMgaGVyZSB1c2UgdGhhdCBhcHByb2FjaCBhbmQKc2hvdyB0aGF0IGl0J3Mgdmlh YmxlLgoKQXV0aG9yOiBQYXVsIEEuIEp1bmd3aXJ0aCA8cGpAaWxsdW1pbmF0ZWRjb21wdXRpbmcu Y29tPgotLS0KIGRvYy9zcmMvc2dtbC9kbWwuc2dtbCAgICAgICAgICAgICAgICAgICAgICAgICB8 ICAgMTYgKwogc3JjL2JhY2tlbmQvZXhlY3V0b3Ivbm9kZU1vZGlmeVRhYmxlLmMgICAgICAgIHwg ICAgNCArCiAuLi4vaXNvbGF0aW9uL2V4cGVjdGVkL2Zvci1wb3J0aW9uLW9mLm91dCAgICAgfCA1 ODAzICsrKysrKysrKysrKysrKysrCiBzcmMvdGVzdC9pc29sYXRpb24vaXNvbGF0aW9uX3NjaGVk dWxlICAgICAgICAgfCAgICAxICsKIHNyYy90ZXN0L2lzb2xhdGlvbi9zcGVjcy9mb3ItcG9ydGlv bi1vZi5zcGVjICB8ICA3NTAgKysrCiA1IGZpbGVzIGNoYW5nZWQsIDY1NzQgaW5zZXJ0aW9ucygr KQogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyYy90ZXN0L2lzb2xhdGlvbi9leHBlY3RlZC9mb3ItcG9y dGlvbi1vZi5vdXQKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmMvdGVzdC9pc29sYXRpb24vc3BlY3Mv Zm9yLXBvcnRpb24tb2Yuc3BlYwoKZGlmZiAtLWdpdCBhL2RvYy9zcmMvc2dtbC9kbWwuc2dtbCBi L2RvYy9zcmMvc2dtbC9kbWwuc2dtbAppbmRleCAxZDE2ZWFlMTg3NC4uM2YxOGE5NmZmZjUgMTAw NjQ0Ci0tLSBhL2RvYy9zcmMvc2dtbC9kbWwuc2dtbAorKysgYi9kb2Mvc3JjL3NnbWwvZG1sLnNn bWwKQEAgLTM5Myw2ICszOTMsMjIgQEAgV0hFUkUgcHJvZHVjdF9ubyA9IDU7CiAgICBjb2x1bW4g cmVmZXJlbmNlcyBhcmUgbm90LgogICA8L3BhcmE+CiAKKyAgPHBhcmE+CisgICBJbiA8bGl0ZXJh bD5SRUFEIENPTU1JVFRFRDwvbGl0ZXJhbD4gbW9kZSwgdGVtcG9yYWwgdXBkYXRlcyBhbmQgZGVs ZXRlcyBjYW4KKyAgIHlpZWxkIHVuZXhwZWN0ZWQgcmVzdWx0cyB3aGVuIHRoZXkgY29uY3VycmVu dGx5IHRvdWNoIHRoZSBzYW1lIHJvdy4gSXQgaXMKKyAgIHBvc3NpYmxlIHRvIGxvc2UgYWxsIG9y IHBhcnQgb2YgdGhlIHNlY29uZCB1cGRhdGUgb3IgZGVsZXRlLiBUaGF0J3MgYmVjYXVzZQorICAg YWZ0ZXIgdGhlIGZpcnN0IHVwZGF0ZSBjaGFuZ2VzIHRoZSBzdGFydC9lbmQgdGltZXMgb2YgdGhl IG9yaWdpbmFsCisgICByZWNvcmQsIGl0IG1heSBubyBsb25nZXIgZml0IHdpdGhpbiB0aGUgc2Vj b25kIHF1ZXJ5J3MgPGxpdGVyYWw+Rk9SIFBPUlRJT04KKyAgIE9GPC9saXRlcmFsPiBib3VuZHMs IHNvIGl0IGJlY29tZXMgZGlzcXVhbGlmaWVkIGZyb20gdGhlIHF1ZXJ5LiBPbiB0aGUgb3RoZXIK KyAgIGhhbmQgdGhlIGp1c3QtaW5zZXJ0ZWQgdGVtcG9yYWwgbGVmdG92ZXJzIG1heSBiZSBvdmVy bG9va2VkIGJ5IHRoZSBzZWNvbmQgcXVlcnksCisgICB3aGljaCBoYXMgYWxyZWFkeSBzY2FubmVk IHRoZSB0YWJsZSB0byBmaW5kIHJvd3MgdG8gbW9kaWZ5LiBUbyBzb2x2ZSB0aGVzZQorICAgcHJv YmxlbXMsIHByZWNlZGUgZXZlcnkgdGVtcG9yYWwgdXBkYXRlL2RlbGV0ZSB3aXRoIGEgPGxpdGVy YWw+U0VMRUNUIEZPUgorICAgVVBEQVRFPC9saXRlcmFsPiBtYXRjaGluZyB0aGUgc2FtZSBjcml0 ZXJpYSAoaW5jbHVkaW5nIHRoZSB0YXJnZXRlZCBwb3J0aW9uIG9mCisgICBhcHBsaWNhdGlvbiB0 aW1lKS4gVGhhdCB3YXkgdGhlIGFjdHVhbCB1cGRhdGUvZGVsZXRlIGRvZXNuJ3QgYmVnaW4gdW50 aWwgdGhlCisgICBsb2NrIGlzIGhlbGQsIGFuZCBhbGwgY29uY3VycmVudCBsZWZ0b3ZlcnMgd2ls bCBiZSB2aXNpYmxlLiBJbiBvdGhlcgorICAgdHJhbnNhY3Rpb24gaXNvbGF0aW9uIGxldmVscywg dGhpcyBsb2NrIGlzIG5vdCByZXF1aXJlZC4KKyAgPC9wYXJhPgorCiAgIDxwYXJhPgogICAgV2hl biB0ZW1wb3JhbCBsZWZ0b3ZlcnMgYXJlIGluc2VydGVkLCBhbGwgPGxpdGVyYWw+SU5TRVJUPC9s aXRlcmFsPgogICAgdHJpZ2dlcnMgYXJlIGZpcmVkLCBidXQgcGVybWlzc2lvbiBjaGVja3MgZm9y IGluc2VydGluZyByb3dzIGFyZQpkaWZmIC0tZ2l0IGEvc3JjL2JhY2tlbmQvZXhlY3V0b3Ivbm9k ZU1vZGlmeVRhYmxlLmMgYi9zcmMvYmFja2VuZC9leGVjdXRvci9ub2RlTW9kaWZ5VGFibGUuYwpp bmRleCA2YmJmMDk4ZTEzMS4uZWE2NWM2NWY4MDYgMTAwNjQ0Ci0tLSBhL3NyYy9iYWNrZW5kL2V4 ZWN1dG9yL25vZGVNb2RpZnlUYWJsZS5jCisrKyBiL3NyYy9iYWNrZW5kL2V4ZWN1dG9yL25vZGVN b2RpZnlUYWJsZS5jCkBAIC0xNDA1LDYgKzE0MDUsMTAgQEAgRXhlY0ZvclBvcnRpb25PZkxlZnRv dmVycyhNb2RpZnlUYWJsZUNvbnRleHQgKmNvbnRleHQsCiAJICogV2UgaGF2ZSBhbHJlYWR5IGxv Y2tlZCB0aGUgdHVwbGUgaW4gRXhlY1VwZGF0ZS9FeGVjRGVsZXRlLCBhbmQgaXQgaGFzCiAJICog cGFzc2VkIEV2YWxQbGFuUXVhbC4gVGhpcyBlbnN1cmVzIHRoYXQgY29uY3VycmVudCB1cGRhdGVz IGluIFJFQUQKIAkgKiBDT01NSVRURUQgY2FuJ3QgaW5zZXJ0IGNvbmZsaWN0aW5nIHRlbXBvcmFs IGxlZnRvdmVycy4KKwkgKgorCSAqIEl0IGRvZXMgKm5vdCogcHJvdGVjdCBhZ2FpbnN0IGNvbmN1 cnJlbnQgdXBkYXRlL2RlbGV0ZXMgb3Zlcmxvb2tpbmcgZWFjaAorCSAqIG90aGVycycgbGVmdG92 ZXJzIHRob3VnaC4gU2VlIG91ciBpc29sYXRpb24gdGVzdHMgZm9yIGRldGFpbHMgYWJvdXQgdGhh dAorCSAqIGFuZCBhIHZpYWJsZSB3b3JrYXJvdW5kLgogCSAqLwogCWlmICghdGFibGVfdHVwbGVf ZmV0Y2hfcm93X3ZlcnNpb24ocmVzdWx0UmVsSW5mby0+cmlfUmVsYXRpb25EZXNjLCB0dXBsZWlk LCBTbmFwc2hvdEFueSwgb2xkdHVwbGVTbG90KSkKIAkJZWxvZyhFUlJPUiwgImZhaWxlZCB0byBm ZXRjaCB0dXBsZSBmb3IgRk9SIFBPUlRJT04gT0YiKTsKZGlmZiAtLWdpdCBhL3NyYy90ZXN0L2lz b2xhdGlvbi9leHBlY3RlZC9mb3ItcG9ydGlvbi1vZi5vdXQgYi9zcmMvdGVzdC9pc29sYXRpb24v ZXhwZWN0ZWQvZm9yLXBvcnRpb24tb2Yub3V0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw MDAwMDAwMDAwLi44OWY2NDZkZDg5OQotLS0gL2Rldi9udWxsCisrKyBiL3NyYy90ZXN0L2lzb2xh dGlvbi9leHBlY3RlZC9mb3ItcG9ydGlvbi1vZi5vdXQKQEAgLTAsMCArMSw1ODAzIEBACitQYXJz ZWQgdGVzdCBzcGVjIHdpdGggMiBzZXNzaW9ucworCitzdGFydGluZyBwZXJtdXRhdGlvbjogczFy YyBzMnJjIHMybG9jazIwMjcgczJ1cGQyMDI3IHMyYyBzMWxvY2syMDI1IHMxdXBkMjAyNSBzMWMg czFxCitzdGVwIHMxcmM6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBSRUFEIENPTU1JVFRFRDsKK3N0 ZXAgczJyYzogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFJFQUQgQ09NTUlUVEVEOworc3RlcCBzMmxv Y2syMDI3OiAKKyAgU0VMRUNUICogRlJPTSBwcm9kdWN0cworICBXSEVSRSBpZCA9ICdbMSwyKScg QU5EIHZhbGlkX2F0ICYmICdbMjAyNy0wMS0wMSwyMDI4LTAxLTAxKScKKyAgT1JERVIgQlkgdmFs aWRfYXQgRk9SIFVQREFURTsKKworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UK Ky0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwy MDMwLTAxLTAxKXwgNS4wMAorKDEgcm93KQorCitzdGVwIHMydXBkMjAyNzogCisgIFVQREFURSBw cm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI3LTAxLTAxJyBUTyAn MjAyOC0wMS0wMScKKyAgU0VUIHByaWNlID0gMTAuMDAKKyAgV0hFUkUgaWQgPSAnWzEsMiknOwor CitzdGVwIHMyYzogQ09NTUlUOworc3RlcCBzMWxvY2syMDI1OiAKKyAgU0VMRUNUICogRlJPTSBw cm9kdWN0cworICBXSEVSRSBpZCA9ICdbMSwyKScgQU5EIHZhbGlkX2F0ICYmICdbMjAyNS0wMS0w MSwyMDI2LTAxLTAxKScKKyAgT1JERVIgQlkgdmFsaWRfYXQgRk9SIFVQREFURTsKKworaWQgICB8 dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDI3LTAxLTAxKXwgNS4wMAorKDEgcm93KQor CitzdGVwIHMxdXBkMjAyNTogCisgIFVQREFURSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2 YWxpZF9hdCBGUk9NICcyMDI1LTAxLTAxJyBUTyAnMjAyNi0wMS0wMScKKyAgU0VUIHByaWNlID0g OC4wMAorICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAgczFjOiBDT01NSVQ7CitzdGVwIHMx cTogU0VMRUNUICogRlJPTSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2 YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMjUtMDEtMDEpfCA1LjAwCitbMSwyKXxbMjAy NS0wMS0wMSwyMDI2LTAxLTAxKXwgOC4wMAorWzEsMil8WzIwMjYtMDEtMDEsMjAyNy0wMS0wMSl8 IDUuMDAKK1sxLDIpfFsyMDI3LTAxLTAxLDIwMjgtMDEtMDEpfDEwLjAwCitbMSwyKXxbMjAyOC0w MS0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDUgcm93cykKKworCitzdGFydGluZyBwZXJtdXRhdGlv bjogczFyYyBzMnJjIHMybG9jazIwMjUwMyBzMnVwZDIwMjUwMyBzMmMgczFsb2NrMjAyNSBzMXVw ZDIwMjUgczFjIHMxcQorc3RlcCBzMXJjOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgUkVBRCBDT01N SVRURUQ7CitzdGVwIHMycmM6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBSRUFEIENPTU1JVFRFRDsK K3N0ZXAgczJsb2NrMjAyNTAzOiAKKyAgU0VMRUNUICogRlJPTSBwcm9kdWN0cworICBXSEVSRSBp ZCA9ICdbMSwyKScgQU5EIHZhbGlkX2F0ICYmICdbMjAyNS0wMy0wMSwyMDI1LTA0LTAxKScKKyAg T1JERVIgQlkgdmFsaWRfYXQgRk9SIFVQREFURTsKKworaWQgICB8dmFsaWRfYXQgICAgICAgICAg ICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxb MjAyMC0wMS0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDEgcm93KQorCitzdGVwIHMydXBkMjAyNTAz OiAKKyAgVVBEQVRFIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIw MjUtMDMtMDEnIFRPICcyMDI1LTA0LTAxJworICBTRVQgcHJpY2UgPSAxMC4wMAorICBXSEVSRSBp ZCA9ICdbMSwyKSc7CisKK3N0ZXAgczJjOiBDT01NSVQ7CitzdGVwIHMxbG9jazIwMjU6IAorICBT RUxFQ1QgKiBGUk9NIHByb2R1Y3RzCisgIFdIRVJFIGlkID0gJ1sxLDIpJyBBTkQgdmFsaWRfYXQg JiYgJ1syMDI1LTAxLTAxLDIwMjYtMDEtMDEpJworICBPUkRFUiBCWSB2YWxpZF9hdCBGT1IgVVBE QVRFOworCitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMjUtMDMtMDEpfCA1 LjAwCitbMSwyKXxbMjAyNS0wMy0wMSwyMDI1LTA0LTAxKXwxMC4wMAorWzEsMil8WzIwMjUtMDQt MDEsMjAzMC0wMS0wMSl8IDUuMDAKKygzIHJvd3MpCisKK3N0ZXAgczF1cGQyMDI1OiAKKyAgVVBE QVRFIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDEtMDEn IFRPICcyMDI2LTAxLTAxJworICBTRVQgcHJpY2UgPSA4LjAwCisgIFdIRVJFIGlkID0gJ1sxLDIp JzsKKworc3RlcCBzMWM6IENPTU1JVDsKK3N0ZXAgczFxOiBTRUxFQ1QgKiBGUk9NIHByb2R1Y3Rz IE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAgfHBy aWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAtMDEt MDEsMjAyNS0wMS0wMSl8IDUuMDAKK1sxLDIpfFsyMDI1LTAxLTAxLDIwMjUtMDMtMDEpfCA4LjAw CitbMSwyKXxbMjAyNS0wMy0wMSwyMDI1LTA0LTAxKXwgOC4wMAorWzEsMil8WzIwMjUtMDQtMDEs MjAyNi0wMS0wMSl8IDguMDAKK1sxLDIpfFsyMDI2LTAxLTAxLDIwMzAtMDEtMDEpfCA1LjAwCiso NSByb3dzKQorCisKK3N0YXJ0aW5nIHBlcm11dGF0aW9uOiBzMXJjIHMycmMgczJsb2NrMjAyNTIw MjYgczJ1cGQyMDI1MjAyNiBzMmMgczFsb2NrMjAyNSBzMXVwZDIwMjUgczFjIHMxcQorc3RlcCBz MXJjOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgUkVBRCBDT01NSVRURUQ7CitzdGVwIHMycmM6IEJF R0lOIElTT0xBVElPTiBMRVZFTCBSRUFEIENPTU1JVFRFRDsKK3N0ZXAgczJsb2NrMjAyNTIwMjY6 IAorICBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzCisgIFdIRVJFIGlkID0gJ1sxLDIpJyBBTkQgdmFs aWRfYXQgJiYgJ1syMDI1LTA2LTAxLDIwMjYtMDYtMDEpJworICBPUkRFUiBCWSB2YWxpZF9hdCBG T1IgVVBEQVRFOworCitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQorLS0tLS0r LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMzAtMDEt MDEpfCA1LjAwCisoMSByb3cpCisKK3N0ZXAgczJ1cGQyMDI1MjAyNjogCisgIFVQREFURSBwcm9k dWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTA2LTAxJyBUTyAnMjAy Ni0wNi0wMScKKyAgU0VUIHByaWNlID0gMTAuMDAKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitz dGVwIHMyYzogQ09NTUlUOworc3RlcCBzMWxvY2syMDI1OiAKKyAgU0VMRUNUICogRlJPTSBwcm9k dWN0cworICBXSEVSRSBpZCA9ICdbMSwyKScgQU5EIHZhbGlkX2F0ICYmICdbMjAyNS0wMS0wMSwy MDI2LTAxLTAxKScKKyAgT1JERVIgQlkgdmFsaWRfYXQgRk9SIFVQREFURTsKKworaWQgICB8dmFs aWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t Ky0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDI1LTA2LTAxKXwgNS4wMAorWzEsMil8WzIwMjUt MDYtMDEsMjAyNi0wNi0wMSl8MTAuMDAKKygyIHJvd3MpCisKK3N0ZXAgczF1cGQyMDI1OiAKKyAg VVBEQVRFIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDEt MDEnIFRPICcyMDI2LTAxLTAxJworICBTRVQgcHJpY2UgPSA4LjAwCisgIFdIRVJFIGlkID0gJ1sx LDIpJzsKKworc3RlcCBzMWM6IENPTU1JVDsKK3N0ZXAgczFxOiBTRUxFQ1QgKiBGUk9NIHByb2R1 Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAg fHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAt MDEtMDEsMjAyNS0wMS0wMSl8IDUuMDAKK1sxLDIpfFsyMDI1LTAxLTAxLDIwMjUtMDYtMDEpfCA4 LjAwCitbMSwyKXxbMjAyNS0wNi0wMSwyMDI2LTAxLTAxKXwgOC4wMAorWzEsMil8WzIwMjYtMDEt MDEsMjAyNi0wNi0wMSl8MTAuMDAKK1sxLDIpfFsyMDI2LTA2LTAxLDIwMzAtMDEtMDEpfCA1LjAw CisoNSByb3dzKQorCisKK3N0YXJ0aW5nIHBlcm11dGF0aW9uOiBzMXJjIHMycmMgczFsb2NrMjAy NSBzMXVwZDIwMjUgczFjIHMybG9jazIwMjcgczJ1cGQyMDI3IHMyYyBzMXEKK3N0ZXAgczFyYzog QkVHSU4gSVNPTEFUSU9OIExFVkVMIFJFQUQgQ09NTUlUVEVEOworc3RlcCBzMnJjOiBCRUdJTiBJ U09MQVRJT04gTEVWRUwgUkVBRCBDT01NSVRURUQ7CitzdGVwIHMxbG9jazIwMjU6IAorICBTRUxF Q1QgKiBGUk9NIHByb2R1Y3RzCisgIFdIRVJFIGlkID0gJ1sxLDIpJyBBTkQgdmFsaWRfYXQgJiYg J1syMDI1LTAxLTAxLDIwMjYtMDEtMDEpJworICBPUkRFUiBCWSB2YWxpZF9hdCBGT1IgVVBEQVRF OworCitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMzAtMDEtMDEpfCA1LjAw CisoMSByb3cpCisKK3N0ZXAgczF1cGQyMDI1OiAKKyAgVVBEQVRFIHByb2R1Y3RzCisgIEZPUiBQ T1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDEtMDEnIFRPICcyMDI2LTAxLTAxJworICBT RVQgcHJpY2UgPSA4LjAwCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMWM6IENPTU1J VDsKK3N0ZXAgczJsb2NrMjAyNzogCisgIFNFTEVDVCAqIEZST00gcHJvZHVjdHMKKyAgV0hFUkUg aWQgPSAnWzEsMiknIEFORCB2YWxpZF9hdCAmJiAnWzIwMjctMDEtMDEsMjAyOC0wMS0wMSknCisg IE9SREVSIEJZIHZhbGlkX2F0IEZPUiBVUERBVEU7CisKK2lkICAgfHZhbGlkX2F0ICAgICAgICAg ICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8 WzIwMjYtMDEtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKygxIHJvdykKKworc3RlcCBzMnVwZDIwMjc6 IAorICBVUERBVEUgcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAy Ny0wMS0wMScgVE8gJzIwMjgtMDEtMDEnCisgIFNFVCBwcmljZSA9IDEwLjAwCisgIFdIRVJFIGlk ID0gJ1sxLDIpJzsKKworc3RlcCBzMmM6IENPTU1JVDsKK3N0ZXAgczFxOiBTRUxFQ1QgKiBGUk9N IHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK2lkICAgfHZhbGlkX2F0ICAgICAgICAg ICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8 WzIwMjAtMDEtMDEsMjAyNS0wMS0wMSl8IDUuMDAKK1sxLDIpfFsyMDI1LTAxLTAxLDIwMjYtMDEt MDEpfCA4LjAwCitbMSwyKXxbMjAyNi0wMS0wMSwyMDI3LTAxLTAxKXwgNS4wMAorWzEsMil8WzIw MjctMDEtMDEsMjAyOC0wMS0wMSl8MTAuMDAKK1sxLDIpfFsyMDI4LTAxLTAxLDIwMzAtMDEtMDEp fCA1LjAwCisoNSByb3dzKQorCisKK3N0YXJ0aW5nIHBlcm11dGF0aW9uOiBzMXJjIHMycmMgczFs b2NrMjAyNSBzMXVwZDIwMjUgczFjIHMybG9jazIwMjUwMyBzMnVwZDIwMjUwMyBzMmMgczFxCitz dGVwIHMxcmM6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBSRUFEIENPTU1JVFRFRDsKK3N0ZXAgczJy YzogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFJFQUQgQ09NTUlUVEVEOworc3RlcCBzMWxvY2syMDI1 OiAKKyAgU0VMRUNUICogRlJPTSBwcm9kdWN0cworICBXSEVSRSBpZCA9ICdbMSwyKScgQU5EIHZh bGlkX2F0ICYmICdbMjAyNS0wMS0wMSwyMDI2LTAxLTAxKScKKyAgT1JERVIgQlkgdmFsaWRfYXQg Rk9SIFVQREFURTsKKworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0t Ky0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDMwLTAx LTAxKXwgNS4wMAorKDEgcm93KQorCitzdGVwIHMxdXBkMjAyNTogCisgIFVQREFURSBwcm9kdWN0 cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTAxLTAxJyBUTyAnMjAyNi0w MS0wMScKKyAgU0VUIHByaWNlID0gOC4wMAorICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAg czFjOiBDT01NSVQ7CitzdGVwIHMybG9jazIwMjUwMzogCisgIFNFTEVDVCAqIEZST00gcHJvZHVj dHMKKyAgV0hFUkUgaWQgPSAnWzEsMiknIEFORCB2YWxpZF9hdCAmJiAnWzIwMjUtMDMtMDEsMjAy NS0wNC0wMSknCisgIE9SREVSIEJZIHZhbGlkX2F0IEZPUiBVUERBVEU7CisKK2lkICAgfHZhbGlk X2F0ICAgICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSst LS0tLQorWzEsMil8WzIwMjUtMDEtMDEsMjAyNi0wMS0wMSl8IDguMDAKKygxIHJvdykKKworc3Rl cCBzMnVwZDIwMjUwMzogCisgIFVQREFURSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxp ZF9hdCBGUk9NICcyMDI1LTAzLTAxJyBUTyAnMjAyNS0wNC0wMScKKyAgU0VUIHByaWNlID0gMTAu MDAKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMyYzogQ09NTUlUOworc3RlcCBzMXE6 IFNFTEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworaWQgICB8dmFs aWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t Ky0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDI1LTAxLTAxKXwgNS4wMAorWzEsMil8WzIwMjUt MDEtMDEsMjAyNS0wMy0wMSl8IDguMDAKK1sxLDIpfFsyMDI1LTAzLTAxLDIwMjUtMDQtMDEpfDEw LjAwCitbMSwyKXxbMjAyNS0wNC0wMSwyMDI2LTAxLTAxKXwgOC4wMAorWzEsMil8WzIwMjYtMDEt MDEsMjAzMC0wMS0wMSl8IDUuMDAKKyg1IHJvd3MpCisKKworc3RhcnRpbmcgcGVybXV0YXRpb246 IHMxcmMgczJyYyBzMWxvY2syMDI1IHMxdXBkMjAyNSBzMWMgczJsb2NrMjAyNTIwMjYgczJ1cGQy MDI1MjAyNiBzMmMgczFxCitzdGVwIHMxcmM6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBSRUFEIENP TU1JVFRFRDsKK3N0ZXAgczJyYzogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFJFQUQgQ09NTUlUVEVE Oworc3RlcCBzMWxvY2syMDI1OiAKKyAgU0VMRUNUICogRlJPTSBwcm9kdWN0cworICBXSEVSRSBp ZCA9ICdbMSwyKScgQU5EIHZhbGlkX2F0ICYmICdbMjAyNS0wMS0wMSwyMDI2LTAxLTAxKScKKyAg T1JERVIgQlkgdmFsaWRfYXQgRk9SIFVQREFURTsKKworaWQgICB8dmFsaWRfYXQgICAgICAgICAg ICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxb MjAyMC0wMS0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDEgcm93KQorCitzdGVwIHMxdXBkMjAyNTog CisgIFVQREFURSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1 LTAxLTAxJyBUTyAnMjAyNi0wMS0wMScKKyAgU0VUIHByaWNlID0gOC4wMAorICBXSEVSRSBpZCA9 ICdbMSwyKSc7CisKK3N0ZXAgczFjOiBDT01NSVQ7CitzdGVwIHMybG9jazIwMjUyMDI2OiAKKyAg U0VMRUNUICogRlJPTSBwcm9kdWN0cworICBXSEVSRSBpZCA9ICdbMSwyKScgQU5EIHZhbGlkX2F0 ICYmICdbMjAyNS0wNi0wMSwyMDI2LTA2LTAxKScKKyAgT1JERVIgQlkgdmFsaWRfYXQgRk9SIFVQ REFURTsKKworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyNS0wMS0wMSwyMDI2LTAxLTAxKXwg OC4wMAorWzEsMil8WzIwMjYtMDEtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKygyIHJvd3MpCisKK3N0 ZXAgczJ1cGQyMDI1MjAyNjogCisgIFVQREFURSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2 YWxpZF9hdCBGUk9NICcyMDI1LTA2LTAxJyBUTyAnMjAyNi0wNi0wMScKKyAgU0VUIHByaWNlID0g MTAuMDAKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMyYzogQ09NTUlUOworc3RlcCBz MXE6IFNFTEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworaWQgICB8 dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDI1LTAxLTAxKXwgNS4wMAorWzEsMil8WzIw MjUtMDEtMDEsMjAyNS0wNi0wMSl8IDguMDAKK1sxLDIpfFsyMDI1LTA2LTAxLDIwMjYtMDEtMDEp fDEwLjAwCitbMSwyKXxbMjAyNi0wMS0wMSwyMDI2LTA2LTAxKXwxMC4wMAorWzEsMil8WzIwMjYt MDYtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKyg1IHJvd3MpCisKKworc3RhcnRpbmcgcGVybXV0YXRp b246IHMxcmMgczJyYyBzMmxvY2syMDI3IHMydXBkMjAyNyBzMWxvY2syMDI1IHMyYyBzMXVwZDIw MjUgczFjIHMxcQorc3RlcCBzMXJjOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgUkVBRCBDT01NSVRU RUQ7CitzdGVwIHMycmM6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBSRUFEIENPTU1JVFRFRDsKK3N0 ZXAgczJsb2NrMjAyNzogCisgIFNFTEVDVCAqIEZST00gcHJvZHVjdHMKKyAgV0hFUkUgaWQgPSAn WzEsMiknIEFORCB2YWxpZF9hdCAmJiAnWzIwMjctMDEtMDEsMjAyOC0wMS0wMSknCisgIE9SREVS IEJZIHZhbGlkX2F0IEZPUiBVUERBVEU7CisKK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAg fHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAt MDEtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKygxIHJvdykKKworc3RlcCBzMnVwZDIwMjc6IAorICBV UERBVEUgcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNy0wMS0w MScgVE8gJzIwMjgtMDEtMDEnCisgIFNFVCBwcmljZSA9IDEwLjAwCisgIFdIRVJFIGlkID0gJ1sx LDIpJzsKKworc3RlcCBzMWxvY2syMDI1OiAKKyAgU0VMRUNUICogRlJPTSBwcm9kdWN0cworICBX SEVSRSBpZCA9ICdbMSwyKScgQU5EIHZhbGlkX2F0ICYmICdbMjAyNS0wMS0wMSwyMDI2LTAxLTAx KScKKyAgT1JERVIgQlkgdmFsaWRfYXQgRk9SIFVQREFURTsKKyA8d2FpdGluZyAuLi4+CitzdGVw IHMyYzogQ09NTUlUOworc3RlcCBzMWxvY2syMDI1OiA8Li4uIGNvbXBsZXRlZD4KK2lkfHZhbGlk X2F0fHByaWNlCistLSstLS0tLS0tLSstLS0tLQorKDAgcm93cykKKworc3RlcCBzMXVwZDIwMjU6 IAorICBVUERBVEUgcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAy NS0wMS0wMScgVE8gJzIwMjYtMDEtMDEnCisgIFNFVCBwcmljZSA9IDguMDAKKyAgV0hFUkUgaWQg PSAnWzEsMiknOworCitzdGVwIHMxYzogQ09NTUlUOworc3RlcCBzMXE6IFNFTEVDVCAqIEZST00g cHJvZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworaWQgICB8dmFsaWRfYXQgICAgICAgICAg ICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxb MjAyMC0wMS0wMSwyMDI1LTAxLTAxKXwgNS4wMAorWzEsMil8WzIwMjUtMDEtMDEsMjAyNi0wMS0w MSl8IDguMDAKK1sxLDIpfFsyMDI2LTAxLTAxLDIwMjctMDEtMDEpfCA1LjAwCitbMSwyKXxbMjAy Ny0wMS0wMSwyMDI4LTAxLTAxKXwxMC4wMAorWzEsMil8WzIwMjgtMDEtMDEsMjAzMC0wMS0wMSl8 IDUuMDAKKyg1IHJvd3MpCisKKworc3RhcnRpbmcgcGVybXV0YXRpb246IHMxcmMgczJyYyBzMmxv Y2syMDI1MDMgczJ1cGQyMDI1MDMgczFsb2NrMjAyNSBzMmMgczF1cGQyMDI1IHMxYyBzMXEKK3N0 ZXAgczFyYzogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFJFQUQgQ09NTUlUVEVEOworc3RlcCBzMnJj OiBCRUdJTiBJU09MQVRJT04gTEVWRUwgUkVBRCBDT01NSVRURUQ7CitzdGVwIHMybG9jazIwMjUw MzogCisgIFNFTEVDVCAqIEZST00gcHJvZHVjdHMKKyAgV0hFUkUgaWQgPSAnWzEsMiknIEFORCB2 YWxpZF9hdCAmJiAnWzIwMjUtMDMtMDEsMjAyNS0wNC0wMSknCisgIE9SREVSIEJZIHZhbGlkX2F0 IEZPUiBVUERBVEU7CisKK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAgfHByaWNlCistLS0t LSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAtMDEtMDEsMjAzMC0w MS0wMSl8IDUuMDAKKygxIHJvdykKKworc3RlcCBzMnVwZDIwMjUwMzogCisgIFVQREFURSBwcm9k dWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTAzLTAxJyBUTyAnMjAy NS0wNC0wMScKKyAgU0VUIHByaWNlID0gMTAuMDAKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitz dGVwIHMxbG9jazIwMjU6IAorICBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzCisgIFdIRVJFIGlkID0g J1sxLDIpJyBBTkQgdmFsaWRfYXQgJiYgJ1syMDI1LTAxLTAxLDIwMjYtMDEtMDEpJworICBPUkRF UiBCWSB2YWxpZF9hdCBGT1IgVVBEQVRFOworIDx3YWl0aW5nIC4uLj4KK3N0ZXAgczJjOiBDT01N SVQ7CitzdGVwIHMxbG9jazIwMjU6IDwuLi4gY29tcGxldGVkPgoraWQgICB8dmFsaWRfYXQgICAg ICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitb MSwyKXxbMjAyNS0wMy0wMSwyMDI1LTA0LTAxKXwxMC4wMAorKDEgcm93KQorCitzdGVwIHMxdXBk MjAyNTogCisgIFVQREFURSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9N ICcyMDI1LTAxLTAxJyBUTyAnMjAyNi0wMS0wMScKKyAgU0VUIHByaWNlID0gOC4wMAorICBXSEVS RSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAgczFjOiBDT01NSVQ7CitzdGVwIHMxcTogU0VMRUNUICog RlJPTSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAgICAg ICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sx LDIpfFsyMDIwLTAxLTAxLDIwMjUtMDEtMDEpfCA1LjAwCitbMSwyKXxbMjAyNS0wMS0wMSwyMDI1 LTAzLTAxKXwgOC4wMAorWzEsMil8WzIwMjUtMDMtMDEsMjAyNS0wNC0wMSl8IDguMDAKK1sxLDIp fFsyMDI1LTA0LTAxLDIwMjYtMDEtMDEpfCA4LjAwCitbMSwyKXxbMjAyNi0wMS0wMSwyMDMwLTAx LTAxKXwgNS4wMAorKDUgcm93cykKKworCitzdGFydGluZyBwZXJtdXRhdGlvbjogczFyYyBzMnJj IHMybG9jazIwMjUyMDI2IHMydXBkMjAyNTIwMjYgczFsb2NrMjAyNSBzMmMgczF1cGQyMDI1IHMx YyBzMXEKK3N0ZXAgczFyYzogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFJFQUQgQ09NTUlUVEVEOwor c3RlcCBzMnJjOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgUkVBRCBDT01NSVRURUQ7CitzdGVwIHMy bG9jazIwMjUyMDI2OiAKKyAgU0VMRUNUICogRlJPTSBwcm9kdWN0cworICBXSEVSRSBpZCA9ICdb MSwyKScgQU5EIHZhbGlkX2F0ICYmICdbMjAyNS0wNi0wMSwyMDI2LTA2LTAxKScKKyAgT1JERVIg QlkgdmFsaWRfYXQgRk9SIFVQREFURTsKKworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8 cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0w MS0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDEgcm93KQorCitzdGVwIHMydXBkMjAyNTIwMjY6IAor ICBVUERBVEUgcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0w Ni0wMScgVE8gJzIwMjYtMDYtMDEnCisgIFNFVCBwcmljZSA9IDEwLjAwCisgIFdIRVJFIGlkID0g J1sxLDIpJzsKKworc3RlcCBzMWxvY2syMDI1OiAKKyAgU0VMRUNUICogRlJPTSBwcm9kdWN0cwor ICBXSEVSRSBpZCA9ICdbMSwyKScgQU5EIHZhbGlkX2F0ICYmICdbMjAyNS0wMS0wMSwyMDI2LTAx LTAxKScKKyAgT1JERVIgQlkgdmFsaWRfYXQgRk9SIFVQREFURTsKKyA8d2FpdGluZyAuLi4+Citz dGVwIHMyYzogQ09NTUlUOworc3RlcCBzMWxvY2syMDI1OiA8Li4uIGNvbXBsZXRlZD4KK2lkICAg fHZhbGlkX2F0ICAgICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0t LS0tLSstLS0tLQorWzEsMil8WzIwMjUtMDYtMDEsMjAyNi0wNi0wMSl8MTAuMDAKKygxIHJvdykK Kworc3RlcCBzMXVwZDIwMjU6IAorICBVUERBVEUgcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0Yg dmFsaWRfYXQgRlJPTSAnMjAyNS0wMS0wMScgVE8gJzIwMjYtMDEtMDEnCisgIFNFVCBwcmljZSA9 IDguMDAKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMxYzogQ09NTUlUOworc3RlcCBz MXE6IFNFTEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworaWQgICB8 dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDI1LTAxLTAxKXwgNS4wMAorWzEsMil8WzIw MjUtMDEtMDEsMjAyNS0wNi0wMSl8IDguMDAKK1sxLDIpfFsyMDI1LTA2LTAxLDIwMjYtMDEtMDEp fCA4LjAwCitbMSwyKXxbMjAyNi0wMS0wMSwyMDI2LTA2LTAxKXwxMC4wMAorWzEsMil8WzIwMjYt MDYtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKyg1IHJvd3MpCisKKworc3RhcnRpbmcgcGVybXV0YXRp b246IHMxcmMgczJyYyBzMmxvY2syMDI3IHMyZGVsMjAyNyBzMmMgczFsb2NrMjAyNSBzMXVwZDIw MjUgczFjIHMxcQorc3RlcCBzMXJjOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgUkVBRCBDT01NSVRU RUQ7CitzdGVwIHMycmM6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBSRUFEIENPTU1JVFRFRDsKK3N0 ZXAgczJsb2NrMjAyNzogCisgIFNFTEVDVCAqIEZST00gcHJvZHVjdHMKKyAgV0hFUkUgaWQgPSAn WzEsMiknIEFORCB2YWxpZF9hdCAmJiAnWzIwMjctMDEtMDEsMjAyOC0wMS0wMSknCisgIE9SREVS IEJZIHZhbGlkX2F0IEZPUiBVUERBVEU7CisKK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAg fHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAt MDEtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKygxIHJvdykKKworc3RlcCBzMmRlbDIwMjc6IAorICBE RUxFVEUgRlJPTSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI3 LTAxLTAxJyBUTyAnMjAyOC0wMS0wMScKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMy YzogQ09NTUlUOworc3RlcCBzMWxvY2syMDI1OiAKKyAgU0VMRUNUICogRlJPTSBwcm9kdWN0cwor ICBXSEVSRSBpZCA9ICdbMSwyKScgQU5EIHZhbGlkX2F0ICYmICdbMjAyNS0wMS0wMSwyMDI2LTAx LTAxKScKKyAgT1JERVIgQlkgdmFsaWRfYXQgRk9SIFVQREFURTsKKworaWQgICB8dmFsaWRfYXQg ICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0t CitbMSwyKXxbMjAyMC0wMS0wMSwyMDI3LTAxLTAxKXwgNS4wMAorKDEgcm93KQorCitzdGVwIHMx dXBkMjAyNTogCisgIFVQREFURSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBG Uk9NICcyMDI1LTAxLTAxJyBUTyAnMjAyNi0wMS0wMScKKyAgU0VUIHByaWNlID0gOC4wMAorICBX SEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAgczFjOiBDT01NSVQ7CitzdGVwIHMxcTogU0VMRUNU ICogRlJPTSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAg ICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0K K1sxLDIpfFsyMDIwLTAxLTAxLDIwMjUtMDEtMDEpfCA1LjAwCitbMSwyKXxbMjAyNS0wMS0wMSwy MDI2LTAxLTAxKXwgOC4wMAorWzEsMil8WzIwMjYtMDEtMDEsMjAyNy0wMS0wMSl8IDUuMDAKK1sx LDIpfFsyMDI4LTAxLTAxLDIwMzAtMDEtMDEpfCA1LjAwCisoNCByb3dzKQorCisKK3N0YXJ0aW5n IHBlcm11dGF0aW9uOiBzMXJjIHMycmMgczJsb2NrMjAyNTAzIHMyZGVsMjAyNTAzIHMyYyBzMWxv Y2syMDI1IHMxdXBkMjAyNSBzMWMgczFxCitzdGVwIHMxcmM6IEJFR0lOIElTT0xBVElPTiBMRVZF TCBSRUFEIENPTU1JVFRFRDsKK3N0ZXAgczJyYzogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFJFQUQg Q09NTUlUVEVEOworc3RlcCBzMmxvY2syMDI1MDM6IAorICBTRUxFQ1QgKiBGUk9NIHByb2R1Y3Rz CisgIFdIRVJFIGlkID0gJ1sxLDIpJyBBTkQgdmFsaWRfYXQgJiYgJ1syMDI1LTAzLTAxLDIwMjUt MDQtMDEpJworICBPUkRFUiBCWSB2YWxpZF9hdCBGT1IgVVBEQVRFOworCitpZCAgIHx2YWxpZF9h dCAgICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0t LS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMzAtMDEtMDEpfCA1LjAwCisoMSByb3cpCisKK3N0ZXAg czJkZWwyMDI1MDM6IAorICBERUxFVEUgRlJPTSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2 YWxpZF9hdCBGUk9NICcyMDI1LTAzLTAxJyBUTyAnMjAyNS0wNC0wMScKKyAgV0hFUkUgaWQgPSAn WzEsMiknOworCitzdGVwIHMyYzogQ09NTUlUOworc3RlcCBzMWxvY2syMDI1OiAKKyAgU0VMRUNU ICogRlJPTSBwcm9kdWN0cworICBXSEVSRSBpZCA9ICdbMSwyKScgQU5EIHZhbGlkX2F0ICYmICdb MjAyNS0wMS0wMSwyMDI2LTAxLTAxKScKKyAgT1JERVIgQlkgdmFsaWRfYXQgRk9SIFVQREFURTsK KworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDI1LTAzLTAxKXwgNS4wMAor WzEsMil8WzIwMjUtMDQtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKygyIHJvd3MpCisKK3N0ZXAgczF1 cGQyMDI1OiAKKyAgVVBEQVRFIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZS T00gJzIwMjUtMDEtMDEnIFRPICcyMDI2LTAxLTAxJworICBTRVQgcHJpY2UgPSA4LjAwCisgIFdI RVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMWM6IENPTU1JVDsKK3N0ZXAgczFxOiBTRUxFQ1Qg KiBGUk9NIHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK2lkICAgfHZhbGlkX2F0ICAg ICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQor WzEsMil8WzIwMjAtMDEtMDEsMjAyNS0wMS0wMSl8IDUuMDAKK1sxLDIpfFsyMDI1LTAxLTAxLDIw MjUtMDMtMDEpfCA4LjAwCitbMSwyKXxbMjAyNS0wNC0wMSwyMDI2LTAxLTAxKXwgOC4wMAorWzEs Mil8WzIwMjYtMDEtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKyg0IHJvd3MpCisKKworc3RhcnRpbmcg cGVybXV0YXRpb246IHMxcmMgczJyYyBzMmxvY2syMDI1MjAyNiBzMmRlbDIwMjUyMDI2IHMyYyBz MWxvY2syMDI1IHMxdXBkMjAyNSBzMWMgczFxCitzdGVwIHMxcmM6IEJFR0lOIElTT0xBVElPTiBM RVZFTCBSRUFEIENPTU1JVFRFRDsKK3N0ZXAgczJyYzogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFJF QUQgQ09NTUlUVEVEOworc3RlcCBzMmxvY2syMDI1MjAyNjogCisgIFNFTEVDVCAqIEZST00gcHJv ZHVjdHMKKyAgV0hFUkUgaWQgPSAnWzEsMiknIEFORCB2YWxpZF9hdCAmJiAnWzIwMjUtMDYtMDEs MjAyNi0wNi0wMSknCisgIE9SREVSIEJZIHZhbGlkX2F0IEZPUiBVUERBVEU7CisKK2lkICAgfHZh bGlkX2F0ICAgICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0t LSstLS0tLQorWzEsMil8WzIwMjAtMDEtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKygxIHJvdykKKwor c3RlcCBzMmRlbDIwMjUyMDI2OiAKKyAgREVMRVRFIEZST00gcHJvZHVjdHMKKyAgRk9SIFBPUlRJ T04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wNi0wMScgVE8gJzIwMjYtMDYtMDEnCisgIFdIRVJF IGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMmM6IENPTU1JVDsKK3N0ZXAgczFsb2NrMjAyNTogCisg IFNFTEVDVCAqIEZST00gcHJvZHVjdHMKKyAgV0hFUkUgaWQgPSAnWzEsMiknIEFORCB2YWxpZF9h dCAmJiAnWzIwMjUtMDEtMDEsMjAyNi0wMS0wMSknCisgIE9SREVSIEJZIHZhbGlkX2F0IEZPUiBV UERBVEU7CisKK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0t LS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAtMDEtMDEsMjAyNS0wNi0wMSl8 IDUuMDAKKygxIHJvdykKKworc3RlcCBzMXVwZDIwMjU6IAorICBVUERBVEUgcHJvZHVjdHMKKyAg Rk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wMS0wMScgVE8gJzIwMjYtMDEtMDEn CisgIFNFVCBwcmljZSA9IDguMDAKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMxYzog Q09NTUlUOworc3RlcCBzMXE6IFNFTEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQsIHZh bGlkX2F0OworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDI1LTAxLTAxKXwg NS4wMAorWzEsMil8WzIwMjUtMDEtMDEsMjAyNS0wNi0wMSl8IDguMDAKK1sxLDIpfFsyMDI2LTA2 LTAxLDIwMzAtMDEtMDEpfCA1LjAwCisoMyByb3dzKQorCisKK3N0YXJ0aW5nIHBlcm11dGF0aW9u OiBzMXJjIHMycmMgczFsb2NrMjAyNSBzMXVwZDIwMjUgczFjIHMybG9jazIwMjcgczJkZWwyMDI3 IHMyYyBzMXEKK3N0ZXAgczFyYzogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFJFQUQgQ09NTUlUVEVE Oworc3RlcCBzMnJjOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgUkVBRCBDT01NSVRURUQ7CitzdGVw IHMxbG9jazIwMjU6IAorICBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzCisgIFdIRVJFIGlkID0gJ1sx LDIpJyBBTkQgdmFsaWRfYXQgJiYgJ1syMDI1LTAxLTAxLDIwMjYtMDEtMDEpJworICBPUkRFUiBC WSB2YWxpZF9hdCBGT1IgVVBEQVRFOworCitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxw cmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAx LTAxLDIwMzAtMDEtMDEpfCA1LjAwCisoMSByb3cpCisKK3N0ZXAgczF1cGQyMDI1OiAKKyAgVVBE QVRFIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDEtMDEn IFRPICcyMDI2LTAxLTAxJworICBTRVQgcHJpY2UgPSA4LjAwCisgIFdIRVJFIGlkID0gJ1sxLDIp JzsKKworc3RlcCBzMWM6IENPTU1JVDsKK3N0ZXAgczJsb2NrMjAyNzogCisgIFNFTEVDVCAqIEZS T00gcHJvZHVjdHMKKyAgV0hFUkUgaWQgPSAnWzEsMiknIEFORCB2YWxpZF9hdCAmJiAnWzIwMjct MDEtMDEsMjAyOC0wMS0wMSknCisgIE9SREVSIEJZIHZhbGlkX2F0IEZPUiBVUERBVEU7CisKK2lk ICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0t LS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjYtMDEtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKygxIHJv dykKKworc3RlcCBzMmRlbDIwMjc6IAorICBERUxFVEUgRlJPTSBwcm9kdWN0cworICBGT1IgUE9S VElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI3LTAxLTAxJyBUTyAnMjAyOC0wMS0wMScKKyAgV0hF UkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMyYzogQ09NTUlUOworc3RlcCBzMXE6IFNFTEVDVCAq IEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworaWQgICB8dmFsaWRfYXQgICAg ICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitb MSwyKXxbMjAyMC0wMS0wMSwyMDI1LTAxLTAxKXwgNS4wMAorWzEsMil8WzIwMjUtMDEtMDEsMjAy Ni0wMS0wMSl8IDguMDAKK1sxLDIpfFsyMDI2LTAxLTAxLDIwMjctMDEtMDEpfCA1LjAwCitbMSwy KXxbMjAyOC0wMS0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDQgcm93cykKKworCitzdGFydGluZyBw ZXJtdXRhdGlvbjogczFyYyBzMnJjIHMxbG9jazIwMjUgczF1cGQyMDI1IHMxYyBzMmxvY2syMDI1 MDMgczJkZWwyMDI1MDMgczJjIHMxcQorc3RlcCBzMXJjOiBCRUdJTiBJU09MQVRJT04gTEVWRUwg UkVBRCBDT01NSVRURUQ7CitzdGVwIHMycmM6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBSRUFEIENP TU1JVFRFRDsKK3N0ZXAgczFsb2NrMjAyNTogCisgIFNFTEVDVCAqIEZST00gcHJvZHVjdHMKKyAg V0hFUkUgaWQgPSAnWzEsMiknIEFORCB2YWxpZF9hdCAmJiAnWzIwMjUtMDEtMDEsMjAyNi0wMS0w MSknCisgIE9SREVSIEJZIHZhbGlkX2F0IEZPUiBVUERBVEU7CisKK2lkICAgfHZhbGlkX2F0ICAg ICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQor WzEsMil8WzIwMjAtMDEtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKygxIHJvdykKKworc3RlcCBzMXVw ZDIwMjU6IAorICBVUERBVEUgcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJP TSAnMjAyNS0wMS0wMScgVE8gJzIwMjYtMDEtMDEnCisgIFNFVCBwcmljZSA9IDguMDAKKyAgV0hF UkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMxYzogQ09NTUlUOworc3RlcCBzMmxvY2syMDI1MDM6 IAorICBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzCisgIFdIRVJFIGlkID0gJ1sxLDIpJyBBTkQgdmFs aWRfYXQgJiYgJ1syMDI1LTAzLTAxLDIwMjUtMDQtMDEpJworICBPUkRFUiBCWSB2YWxpZF9hdCBG T1IgVVBEQVRFOworCitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQorLS0tLS0r LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDI1LTAxLTAxLDIwMjYtMDEt MDEpfCA4LjAwCisoMSByb3cpCisKK3N0ZXAgczJkZWwyMDI1MDM6IAorICBERUxFVEUgRlJPTSBw cm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTAzLTAxJyBUTyAn MjAyNS0wNC0wMScKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMyYzogQ09NTUlUOwor c3RlcCBzMXE6IFNFTEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0Owor aWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDI1LTAxLTAxKXwgNS4wMAorWzEs Mil8WzIwMjUtMDEtMDEsMjAyNS0wMy0wMSl8IDguMDAKK1sxLDIpfFsyMDI1LTA0LTAxLDIwMjYt MDEtMDEpfCA4LjAwCitbMSwyKXxbMjAyNi0wMS0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDQgcm93 cykKKworCitzdGFydGluZyBwZXJtdXRhdGlvbjogczFyYyBzMnJjIHMxbG9jazIwMjUgczF1cGQy MDI1IHMxYyBzMmxvY2syMDI1MjAyNiBzMmRlbDIwMjUyMDI2IHMyYyBzMXEKK3N0ZXAgczFyYzog QkVHSU4gSVNPTEFUSU9OIExFVkVMIFJFQUQgQ09NTUlUVEVEOworc3RlcCBzMnJjOiBCRUdJTiBJ U09MQVRJT04gTEVWRUwgUkVBRCBDT01NSVRURUQ7CitzdGVwIHMxbG9jazIwMjU6IAorICBTRUxF Q1QgKiBGUk9NIHByb2R1Y3RzCisgIFdIRVJFIGlkID0gJ1sxLDIpJyBBTkQgdmFsaWRfYXQgJiYg J1syMDI1LTAxLTAxLDIwMjYtMDEtMDEpJworICBPUkRFUiBCWSB2YWxpZF9hdCBGT1IgVVBEQVRF OworCitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMzAtMDEtMDEpfCA1LjAw CisoMSByb3cpCisKK3N0ZXAgczF1cGQyMDI1OiAKKyAgVVBEQVRFIHByb2R1Y3RzCisgIEZPUiBQ T1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDEtMDEnIFRPICcyMDI2LTAxLTAxJworICBT RVQgcHJpY2UgPSA4LjAwCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMWM6IENPTU1J VDsKK3N0ZXAgczJsb2NrMjAyNTIwMjY6IAorICBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzCisgIFdI RVJFIGlkID0gJ1sxLDIpJyBBTkQgdmFsaWRfYXQgJiYgJ1syMDI1LTA2LTAxLDIwMjYtMDYtMDEp JworICBPUkRFUiBCWSB2YWxpZF9hdCBGT1IgVVBEQVRFOworCitpZCAgIHx2YWxpZF9hdCAgICAg ICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sx LDIpfFsyMDI1LTAxLTAxLDIwMjYtMDEtMDEpfCA4LjAwCitbMSwyKXxbMjAyNi0wMS0wMSwyMDMw LTAxLTAxKXwgNS4wMAorKDIgcm93cykKKworc3RlcCBzMmRlbDIwMjUyMDI2OiAKKyAgREVMRVRF IEZST00gcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wNi0w MScgVE8gJzIwMjYtMDYtMDEnCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMmM6IENP TU1JVDsKK3N0ZXAgczFxOiBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxp ZF9hdDsKK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0t LS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAtMDEtMDEsMjAyNS0wMS0wMSl8IDUu MDAKK1sxLDIpfFsyMDI1LTAxLTAxLDIwMjUtMDYtMDEpfCA4LjAwCitbMSwyKXxbMjAyNi0wNi0w MSwyMDMwLTAxLTAxKXwgNS4wMAorKDMgcm93cykKKworCitzdGFydGluZyBwZXJtdXRhdGlvbjog czFyYyBzMnJjIHMybG9jazIwMjcgczJkZWwyMDI3IHMxbG9jazIwMjUgczJjIHMxdXBkMjAyNSBz MWMgczFxCitzdGVwIHMxcmM6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBSRUFEIENPTU1JVFRFRDsK K3N0ZXAgczJyYzogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFJFQUQgQ09NTUlUVEVEOworc3RlcCBz MmxvY2syMDI3OiAKKyAgU0VMRUNUICogRlJPTSBwcm9kdWN0cworICBXSEVSRSBpZCA9ICdbMSwy KScgQU5EIHZhbGlkX2F0ICYmICdbMjAyNy0wMS0wMSwyMDI4LTAxLTAxKScKKyAgT1JERVIgQlkg dmFsaWRfYXQgRk9SIFVQREFURTsKKworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJp Y2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0w MSwyMDMwLTAxLTAxKXwgNS4wMAorKDEgcm93KQorCitzdGVwIHMyZGVsMjAyNzogCisgIERFTEVU RSBGUk9NIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjctMDEt MDEnIFRPICcyMDI4LTAxLTAxJworICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAgczFsb2Nr MjAyNTogCisgIFNFTEVDVCAqIEZST00gcHJvZHVjdHMKKyAgV0hFUkUgaWQgPSAnWzEsMiknIEFO RCB2YWxpZF9hdCAmJiAnWzIwMjUtMDEtMDEsMjAyNi0wMS0wMSknCisgIE9SREVSIEJZIHZhbGlk X2F0IEZPUiBVUERBVEU7CisgPHdhaXRpbmcgLi4uPgorc3RlcCBzMmM6IENPTU1JVDsKK3N0ZXAg czFsb2NrMjAyNTogPC4uLiBjb21wbGV0ZWQ+CitpZHx2YWxpZF9hdHxwcmljZQorLS0rLS0tLS0t LS0rLS0tLS0KKygwIHJvd3MpCisKK3N0ZXAgczF1cGQyMDI1OiAKKyAgVVBEQVRFIHByb2R1Y3Rz CisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDEtMDEnIFRPICcyMDI2LTAx LTAxJworICBTRVQgcHJpY2UgPSA4LjAwCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBz MWM6IENPTU1JVDsKK3N0ZXAgczFxOiBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzIE9SREVSIEJZIGlk LCB2YWxpZF9hdDsKK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAgfHByaWNlCistLS0tLSst LS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAtMDEtMDEsMjAyNS0wMS0w MSl8IDUuMDAKK1sxLDIpfFsyMDI1LTAxLTAxLDIwMjYtMDEtMDEpfCA4LjAwCitbMSwyKXxbMjAy Ni0wMS0wMSwyMDI3LTAxLTAxKXwgNS4wMAorWzEsMil8WzIwMjgtMDEtMDEsMjAzMC0wMS0wMSl8 IDUuMDAKKyg0IHJvd3MpCisKKworc3RhcnRpbmcgcGVybXV0YXRpb246IHMxcmMgczJyYyBzMmxv Y2syMDI1MDMgczJkZWwyMDI1MDMgczFsb2NrMjAyNSBzMmMgczF1cGQyMDI1IHMxYyBzMXEKK3N0 ZXAgczFyYzogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFJFQUQgQ09NTUlUVEVEOworc3RlcCBzMnJj OiBCRUdJTiBJU09MQVRJT04gTEVWRUwgUkVBRCBDT01NSVRURUQ7CitzdGVwIHMybG9jazIwMjUw MzogCisgIFNFTEVDVCAqIEZST00gcHJvZHVjdHMKKyAgV0hFUkUgaWQgPSAnWzEsMiknIEFORCB2 YWxpZF9hdCAmJiAnWzIwMjUtMDMtMDEsMjAyNS0wNC0wMSknCisgIE9SREVSIEJZIHZhbGlkX2F0 IEZPUiBVUERBVEU7CisKK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAgfHByaWNlCistLS0t LSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAtMDEtMDEsMjAzMC0w MS0wMSl8IDUuMDAKKygxIHJvdykKKworc3RlcCBzMmRlbDIwMjUwMzogCisgIERFTEVURSBGUk9N IHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDMtMDEnIFRP ICcyMDI1LTA0LTAxJworICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAgczFsb2NrMjAyNTog CisgIFNFTEVDVCAqIEZST00gcHJvZHVjdHMKKyAgV0hFUkUgaWQgPSAnWzEsMiknIEFORCB2YWxp ZF9hdCAmJiAnWzIwMjUtMDEtMDEsMjAyNi0wMS0wMSknCisgIE9SREVSIEJZIHZhbGlkX2F0IEZP UiBVUERBVEU7CisgPHdhaXRpbmcgLi4uPgorc3RlcCBzMmM6IENPTU1JVDsKK3N0ZXAgczFsb2Nr MjAyNTogPC4uLiBjb21wbGV0ZWQ+CitpZHx2YWxpZF9hdHxwcmljZQorLS0rLS0tLS0tLS0rLS0t LS0KKygwIHJvd3MpCisKK3N0ZXAgczF1cGQyMDI1OiAKKyAgVVBEQVRFIHByb2R1Y3RzCisgIEZP UiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDEtMDEnIFRPICcyMDI2LTAxLTAxJwor ICBTRVQgcHJpY2UgPSA4LjAwCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMWM6IENP TU1JVDsKK3N0ZXAgczFxOiBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxp ZF9hdDsKK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0t LS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAtMDEtMDEsMjAyNS0wMS0wMSl8IDUu MDAKK1sxLDIpfFsyMDI1LTAxLTAxLDIwMjUtMDMtMDEpfCA4LjAwCitbMSwyKXxbMjAyNS0wNC0w MSwyMDI2LTAxLTAxKXwgOC4wMAorWzEsMil8WzIwMjYtMDEtMDEsMjAzMC0wMS0wMSl8IDUuMDAK Kyg0IHJvd3MpCisKKworc3RhcnRpbmcgcGVybXV0YXRpb246IHMxcmMgczJyYyBzMmxvY2syMDI1 MjAyNiBzMmRlbDIwMjUyMDI2IHMxbG9jazIwMjUgczJjIHMxdXBkMjAyNSBzMWMgczFxCitzdGVw IHMxcmM6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBSRUFEIENPTU1JVFRFRDsKK3N0ZXAgczJyYzog QkVHSU4gSVNPTEFUSU9OIExFVkVMIFJFQUQgQ09NTUlUVEVEOworc3RlcCBzMmxvY2syMDI1MjAy NjogCisgIFNFTEVDVCAqIEZST00gcHJvZHVjdHMKKyAgV0hFUkUgaWQgPSAnWzEsMiknIEFORCB2 YWxpZF9hdCAmJiAnWzIwMjUtMDYtMDEsMjAyNi0wNi0wMSknCisgIE9SREVSIEJZIHZhbGlkX2F0 IEZPUiBVUERBVEU7CisKK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAgfHByaWNlCistLS0t LSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAtMDEtMDEsMjAzMC0w MS0wMSl8IDUuMDAKKygxIHJvdykKKworc3RlcCBzMmRlbDIwMjUyMDI2OiAKKyAgREVMRVRFIEZS T00gcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wNi0wMScg VE8gJzIwMjYtMDYtMDEnCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMWxvY2syMDI1 OiAKKyAgU0VMRUNUICogRlJPTSBwcm9kdWN0cworICBXSEVSRSBpZCA9ICdbMSwyKScgQU5EIHZh bGlkX2F0ICYmICdbMjAyNS0wMS0wMSwyMDI2LTAxLTAxKScKKyAgT1JERVIgQlkgdmFsaWRfYXQg Rk9SIFVQREFURTsKKyA8d2FpdGluZyAuLi4+CitzdGVwIHMyYzogQ09NTUlUOworc3RlcCBzMWxv Y2syMDI1OiA8Li4uIGNvbXBsZXRlZD4KK2lkfHZhbGlkX2F0fHByaWNlCistLSstLS0tLS0tLSst LS0tLQorKDAgcm93cykKKworc3RlcCBzMXVwZDIwMjU6IAorICBVUERBVEUgcHJvZHVjdHMKKyAg Rk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wMS0wMScgVE8gJzIwMjYtMDEtMDEn CisgIFNFVCBwcmljZSA9IDguMDAKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMxYzog Q09NTUlUOworc3RlcCBzMXE6IFNFTEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQsIHZh bGlkX2F0OworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDI1LTAxLTAxKXwg NS4wMAorWzEsMil8WzIwMjUtMDEtMDEsMjAyNS0wNi0wMSl8IDguMDAKK1sxLDIpfFsyMDI2LTA2 LTAxLDIwMzAtMDEtMDEpfCA1LjAwCisoMyByb3dzKQorCisKK3N0YXJ0aW5nIHBlcm11dGF0aW9u OiBzMXJjIHMycmMgczJsb2NrMjAyNyBzMnVwZDIwMjcgczJjIHMxbG9jazIwMjUgczFkZWwyMDI1 IHMxYyBzMXEKK3N0ZXAgczFyYzogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFJFQUQgQ09NTUlUVEVE Oworc3RlcCBzMnJjOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgUkVBRCBDT01NSVRURUQ7CitzdGVw IHMybG9jazIwMjc6IAorICBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzCisgIFdIRVJFIGlkID0gJ1sx LDIpJyBBTkQgdmFsaWRfYXQgJiYgJ1syMDI3LTAxLTAxLDIwMjgtMDEtMDEpJworICBPUkRFUiBC WSB2YWxpZF9hdCBGT1IgVVBEQVRFOworCitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxw cmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAx LTAxLDIwMzAtMDEtMDEpfCA1LjAwCisoMSByb3cpCisKK3N0ZXAgczJ1cGQyMDI3OiAKKyAgVVBE QVRFIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjctMDEtMDEn IFRPICcyMDI4LTAxLTAxJworICBTRVQgcHJpY2UgPSAxMC4wMAorICBXSEVSRSBpZCA9ICdbMSwy KSc7CisKK3N0ZXAgczJjOiBDT01NSVQ7CitzdGVwIHMxbG9jazIwMjU6IAorICBTRUxFQ1QgKiBG Uk9NIHByb2R1Y3RzCisgIFdIRVJFIGlkID0gJ1sxLDIpJyBBTkQgdmFsaWRfYXQgJiYgJ1syMDI1 LTAxLTAxLDIwMjYtMDEtMDEpJworICBPUkRFUiBCWSB2YWxpZF9hdCBGT1IgVVBEQVRFOworCitp ZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMjctMDEtMDEpfCA1LjAwCisoMSBy b3cpCisKK3N0ZXAgczFkZWwyMDI1OiAKKyAgREVMRVRFIEZST00gcHJvZHVjdHMKKyAgRk9SIFBP UlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wMS0wMScgVE8gJzIwMjYtMDEtMDEnCisgIFdI RVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMWM6IENPTU1JVDsKK3N0ZXAgczFxOiBTRUxFQ1Qg KiBGUk9NIHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK2lkICAgfHZhbGlkX2F0ICAg ICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQor WzEsMil8WzIwMjAtMDEtMDEsMjAyNS0wMS0wMSl8IDUuMDAKK1sxLDIpfFsyMDI2LTAxLTAxLDIw MjctMDEtMDEpfCA1LjAwCitbMSwyKXxbMjAyNy0wMS0wMSwyMDI4LTAxLTAxKXwxMC4wMAorWzEs Mil8WzIwMjgtMDEtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKyg0IHJvd3MpCisKKworc3RhcnRpbmcg cGVybXV0YXRpb246IHMxcmMgczJyYyBzMmxvY2syMDI1MDMgczJ1cGQyMDI1MDMgczJjIHMxbG9j azIwMjUgczFkZWwyMDI1IHMxYyBzMXEKK3N0ZXAgczFyYzogQkVHSU4gSVNPTEFUSU9OIExFVkVM IFJFQUQgQ09NTUlUVEVEOworc3RlcCBzMnJjOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgUkVBRCBD T01NSVRURUQ7CitzdGVwIHMybG9jazIwMjUwMzogCisgIFNFTEVDVCAqIEZST00gcHJvZHVjdHMK KyAgV0hFUkUgaWQgPSAnWzEsMiknIEFORCB2YWxpZF9hdCAmJiAnWzIwMjUtMDMtMDEsMjAyNS0w NC0wMSknCisgIE9SREVSIEJZIHZhbGlkX2F0IEZPUiBVUERBVEU7CisKK2lkICAgfHZhbGlkX2F0 ICAgICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0t LQorWzEsMil8WzIwMjAtMDEtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKygxIHJvdykKKworc3RlcCBz MnVwZDIwMjUwMzogCisgIFVQREFURSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9h dCBGUk9NICcyMDI1LTAzLTAxJyBUTyAnMjAyNS0wNC0wMScKKyAgU0VUIHByaWNlID0gMTAuMDAK KyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMyYzogQ09NTUlUOworc3RlcCBzMWxvY2sy MDI1OiAKKyAgU0VMRUNUICogRlJPTSBwcm9kdWN0cworICBXSEVSRSBpZCA9ICdbMSwyKScgQU5E IHZhbGlkX2F0ICYmICdbMjAyNS0wMS0wMSwyMDI2LTAxLTAxKScKKyAgT1JERVIgQlkgdmFsaWRf YXQgRk9SIFVQREFURTsKKworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0t LS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDI1 LTAzLTAxKXwgNS4wMAorWzEsMil8WzIwMjUtMDMtMDEsMjAyNS0wNC0wMSl8MTAuMDAKK1sxLDIp fFsyMDI1LTA0LTAxLDIwMzAtMDEtMDEpfCA1LjAwCisoMyByb3dzKQorCitzdGVwIHMxZGVsMjAy NTogCisgIERFTEVURSBGUk9NIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZS T00gJzIwMjUtMDEtMDEnIFRPICcyMDI2LTAxLTAxJworICBXSEVSRSBpZCA9ICdbMSwyKSc7CisK K3N0ZXAgczFjOiBDT01NSVQ7CitzdGVwIHMxcTogU0VMRUNUICogRlJPTSBwcm9kdWN0cyBPUkRF UiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQor LS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIw MjUtMDEtMDEpfCA1LjAwCitbMSwyKXxbMjAyNi0wMS0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDIg cm93cykKKworCitzdGFydGluZyBwZXJtdXRhdGlvbjogczFyYyBzMnJjIHMybG9jazIwMjUyMDI2 IHMydXBkMjAyNTIwMjYgczJjIHMxbG9jazIwMjUgczFkZWwyMDI1IHMxYyBzMXEKK3N0ZXAgczFy YzogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFJFQUQgQ09NTUlUVEVEOworc3RlcCBzMnJjOiBCRUdJ TiBJU09MQVRJT04gTEVWRUwgUkVBRCBDT01NSVRURUQ7CitzdGVwIHMybG9jazIwMjUyMDI2OiAK KyAgU0VMRUNUICogRlJPTSBwcm9kdWN0cworICBXSEVSRSBpZCA9ICdbMSwyKScgQU5EIHZhbGlk X2F0ICYmICdbMjAyNS0wNi0wMSwyMDI2LTA2LTAxKScKKyAgT1JERVIgQlkgdmFsaWRfYXQgRk9S IFVQREFURTsKKworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDMwLTAxLTAx KXwgNS4wMAorKDEgcm93KQorCitzdGVwIHMydXBkMjAyNTIwMjY6IAorICBVUERBVEUgcHJvZHVj dHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wNi0wMScgVE8gJzIwMjYt MDYtMDEnCisgIFNFVCBwcmljZSA9IDEwLjAwCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3Rl cCBzMmM6IENPTU1JVDsKK3N0ZXAgczFsb2NrMjAyNTogCisgIFNFTEVDVCAqIEZST00gcHJvZHVj dHMKKyAgV0hFUkUgaWQgPSAnWzEsMiknIEFORCB2YWxpZF9hdCAmJiAnWzIwMjUtMDEtMDEsMjAy Ni0wMS0wMSknCisgIE9SREVSIEJZIHZhbGlkX2F0IEZPUiBVUERBVEU7CisKK2lkICAgfHZhbGlk X2F0ICAgICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSst LS0tLQorWzEsMil8WzIwMjAtMDEtMDEsMjAyNS0wNi0wMSl8IDUuMDAKK1sxLDIpfFsyMDI1LTA2 LTAxLDIwMjYtMDYtMDEpfDEwLjAwCisoMiByb3dzKQorCitzdGVwIHMxZGVsMjAyNTogCisgIERF TEVURSBGUk9NIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUt MDEtMDEnIFRPICcyMDI2LTAxLTAxJworICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAgczFj OiBDT01NSVQ7CitzdGVwIHMxcTogU0VMRUNUICogRlJPTSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwg dmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMjUtMDEtMDEp fCA1LjAwCitbMSwyKXxbMjAyNi0wMS0wMSwyMDI2LTA2LTAxKXwxMC4wMAorWzEsMil8WzIwMjYt MDYtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKygzIHJvd3MpCisKKworc3RhcnRpbmcgcGVybXV0YXRp b246IHMxcmMgczJyYyBzMWxvY2syMDI1IHMxZGVsMjAyNSBzMWMgczJsb2NrMjAyNyBzMnVwZDIw MjcgczJjIHMxcQorc3RlcCBzMXJjOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgUkVBRCBDT01NSVRU RUQ7CitzdGVwIHMycmM6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBSRUFEIENPTU1JVFRFRDsKK3N0 ZXAgczFsb2NrMjAyNTogCisgIFNFTEVDVCAqIEZST00gcHJvZHVjdHMKKyAgV0hFUkUgaWQgPSAn WzEsMiknIEFORCB2YWxpZF9hdCAmJiAnWzIwMjUtMDEtMDEsMjAyNi0wMS0wMSknCisgIE9SREVS IEJZIHZhbGlkX2F0IEZPUiBVUERBVEU7CisKK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAg fHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAt MDEtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKygxIHJvdykKKworc3RlcCBzMWRlbDIwMjU6IAorICBE RUxFVEUgRlJPTSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1 LTAxLTAxJyBUTyAnMjAyNi0wMS0wMScKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMx YzogQ09NTUlUOworc3RlcCBzMmxvY2syMDI3OiAKKyAgU0VMRUNUICogRlJPTSBwcm9kdWN0cwor ICBXSEVSRSBpZCA9ICdbMSwyKScgQU5EIHZhbGlkX2F0ICYmICdbMjAyNy0wMS0wMSwyMDI4LTAx LTAxKScKKyAgT1JERVIgQlkgdmFsaWRfYXQgRk9SIFVQREFURTsKKworaWQgICB8dmFsaWRfYXQg ICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0t CitbMSwyKXxbMjAyNi0wMS0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDEgcm93KQorCitzdGVwIHMy dXBkMjAyNzogCisgIFVQREFURSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBG Uk9NICcyMDI3LTAxLTAxJyBUTyAnMjAyOC0wMS0wMScKKyAgU0VUIHByaWNlID0gMTAuMDAKKyAg V0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMyYzogQ09NTUlUOworc3RlcCBzMXE6IFNFTEVD VCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworaWQgICB8dmFsaWRfYXQg ICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0t CitbMSwyKXxbMjAyMC0wMS0wMSwyMDI1LTAxLTAxKXwgNS4wMAorWzEsMil8WzIwMjYtMDEtMDEs MjAyNy0wMS0wMSl8IDUuMDAKK1sxLDIpfFsyMDI3LTAxLTAxLDIwMjgtMDEtMDEpfDEwLjAwCitb MSwyKXxbMjAyOC0wMS0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDQgcm93cykKKworCitzdGFydGlu ZyBwZXJtdXRhdGlvbjogczFyYyBzMnJjIHMxbG9jazIwMjUgczFkZWwyMDI1IHMxYyBzMmxvY2sy MDI1MDMgczJ1cGQyMDI1MDMgczJjIHMxcQorc3RlcCBzMXJjOiBCRUdJTiBJU09MQVRJT04gTEVW RUwgUkVBRCBDT01NSVRURUQ7CitzdGVwIHMycmM6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBSRUFE IENPTU1JVFRFRDsKK3N0ZXAgczFsb2NrMjAyNTogCisgIFNFTEVDVCAqIEZST00gcHJvZHVjdHMK KyAgV0hFUkUgaWQgPSAnWzEsMiknIEFORCB2YWxpZF9hdCAmJiAnWzIwMjUtMDEtMDEsMjAyNi0w MS0wMSknCisgIE9SREVSIEJZIHZhbGlkX2F0IEZPUiBVUERBVEU7CisKK2lkICAgfHZhbGlkX2F0 ICAgICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0t LQorWzEsMil8WzIwMjAtMDEtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKygxIHJvdykKKworc3RlcCBz MWRlbDIwMjU6IAorICBERUxFVEUgRlJPTSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxp ZF9hdCBGUk9NICcyMDI1LTAxLTAxJyBUTyAnMjAyNi0wMS0wMScKKyAgV0hFUkUgaWQgPSAnWzEs MiknOworCitzdGVwIHMxYzogQ09NTUlUOworc3RlcCBzMmxvY2syMDI1MDM6IAorICBTRUxFQ1Qg KiBGUk9NIHByb2R1Y3RzCisgIFdIRVJFIGlkID0gJ1sxLDIpJyBBTkQgdmFsaWRfYXQgJiYgJ1sy MDI1LTAzLTAxLDIwMjUtMDQtMDEpJworICBPUkRFUiBCWSB2YWxpZF9hdCBGT1IgVVBEQVRFOwor CitpZHx2YWxpZF9hdHxwcmljZQorLS0rLS0tLS0tLS0rLS0tLS0KKygwIHJvd3MpCisKK3N0ZXAg czJ1cGQyMDI1MDM6IAorICBVUERBVEUgcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRf YXQgRlJPTSAnMjAyNS0wMy0wMScgVE8gJzIwMjUtMDQtMDEnCisgIFNFVCBwcmljZSA9IDEwLjAw CisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMmM6IENPTU1JVDsKK3N0ZXAgczFxOiBT RUxFQ1QgKiBGUk9NIHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK2lkICAgfHZhbGlk X2F0ICAgICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSst LS0tLQorWzEsMil8WzIwMjAtMDEtMDEsMjAyNS0wMS0wMSl8IDUuMDAKK1sxLDIpfFsyMDI2LTAx LTAxLDIwMzAtMDEtMDEpfCA1LjAwCisoMiByb3dzKQorCisKK3N0YXJ0aW5nIHBlcm11dGF0aW9u OiBzMXJjIHMycmMgczFsb2NrMjAyNSBzMWRlbDIwMjUgczFjIHMybG9jazIwMjUyMDI2IHMydXBk MjAyNTIwMjYgczJjIHMxcQorc3RlcCBzMXJjOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgUkVBRCBD T01NSVRURUQ7CitzdGVwIHMycmM6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBSRUFEIENPTU1JVFRF RDsKK3N0ZXAgczFsb2NrMjAyNTogCisgIFNFTEVDVCAqIEZST00gcHJvZHVjdHMKKyAgV0hFUkUg aWQgPSAnWzEsMiknIEFORCB2YWxpZF9hdCAmJiAnWzIwMjUtMDEtMDEsMjAyNi0wMS0wMSknCisg IE9SREVSIEJZIHZhbGlkX2F0IEZPUiBVUERBVEU7CisKK2lkICAgfHZhbGlkX2F0ICAgICAgICAg ICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8 WzIwMjAtMDEtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKygxIHJvdykKKworc3RlcCBzMWRlbDIwMjU6 IAorICBERUxFVEUgRlJPTSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9N ICcyMDI1LTAxLTAxJyBUTyAnMjAyNi0wMS0wMScKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitz dGVwIHMxYzogQ09NTUlUOworc3RlcCBzMmxvY2syMDI1MjAyNjogCisgIFNFTEVDVCAqIEZST00g cHJvZHVjdHMKKyAgV0hFUkUgaWQgPSAnWzEsMiknIEFORCB2YWxpZF9hdCAmJiAnWzIwMjUtMDYt MDEsMjAyNi0wNi0wMSknCisgIE9SREVSIEJZIHZhbGlkX2F0IEZPUiBVUERBVEU7CisKK2lkICAg fHZhbGlkX2F0ICAgICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0t LS0tLSstLS0tLQorWzEsMil8WzIwMjYtMDEtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKygxIHJvdykK Kworc3RlcCBzMnVwZDIwMjUyMDI2OiAKKyAgVVBEQVRFIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9O IE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDYtMDEnIFRPICcyMDI2LTA2LTAxJworICBTRVQgcHJp Y2UgPSAxMC4wMAorICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAgczJjOiBDT01NSVQ7Citz dGVwIHMxcTogU0VMRUNUICogRlJPTSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7Citp ZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMjUtMDEtMDEpfCA1LjAwCitbMSwy KXxbMjAyNi0wMS0wMSwyMDI2LTA2LTAxKXwxMC4wMAorWzEsMil8WzIwMjYtMDYtMDEsMjAzMC0w MS0wMSl8IDUuMDAKKygzIHJvd3MpCisKKworc3RhcnRpbmcgcGVybXV0YXRpb246IHMxcmMgczJy YyBzMmxvY2syMDI3IHMydXBkMjAyNyBzMWxvY2syMDI1IHMyYyBzMWRlbDIwMjUgczFjIHMxcQor c3RlcCBzMXJjOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgUkVBRCBDT01NSVRURUQ7CitzdGVwIHMy cmM6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBSRUFEIENPTU1JVFRFRDsKK3N0ZXAgczJsb2NrMjAy NzogCisgIFNFTEVDVCAqIEZST00gcHJvZHVjdHMKKyAgV0hFUkUgaWQgPSAnWzEsMiknIEFORCB2 YWxpZF9hdCAmJiAnWzIwMjctMDEtMDEsMjAyOC0wMS0wMSknCisgIE9SREVSIEJZIHZhbGlkX2F0 IEZPUiBVUERBVEU7CisKK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAgfHByaWNlCistLS0t LSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAtMDEtMDEsMjAzMC0w MS0wMSl8IDUuMDAKKygxIHJvdykKKworc3RlcCBzMnVwZDIwMjc6IAorICBVUERBVEUgcHJvZHVj dHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNy0wMS0wMScgVE8gJzIwMjgt MDEtMDEnCisgIFNFVCBwcmljZSA9IDEwLjAwCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3Rl cCBzMWxvY2syMDI1OiAKKyAgU0VMRUNUICogRlJPTSBwcm9kdWN0cworICBXSEVSRSBpZCA9ICdb MSwyKScgQU5EIHZhbGlkX2F0ICYmICdbMjAyNS0wMS0wMSwyMDI2LTAxLTAxKScKKyAgT1JERVIg QlkgdmFsaWRfYXQgRk9SIFVQREFURTsKKyA8d2FpdGluZyAuLi4+CitzdGVwIHMyYzogQ09NTUlU Oworc3RlcCBzMWxvY2syMDI1OiA8Li4uIGNvbXBsZXRlZD4KK2lkfHZhbGlkX2F0fHByaWNlCist LSstLS0tLS0tLSstLS0tLQorKDAgcm93cykKKworc3RlcCBzMWRlbDIwMjU6IAorICBERUxFVEUg RlJPTSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTAxLTAx JyBUTyAnMjAyNi0wMS0wMScKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMxYzogQ09N TUlUOworc3RlcCBzMXE6IFNFTEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlk X2F0OworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDI1LTAxLTAxKXwgNS4w MAorWzEsMil8WzIwMjYtMDEtMDEsMjAyNy0wMS0wMSl8IDUuMDAKK1sxLDIpfFsyMDI3LTAxLTAx LDIwMjgtMDEtMDEpfDEwLjAwCitbMSwyKXxbMjAyOC0wMS0wMSwyMDMwLTAxLTAxKXwgNS4wMAor KDQgcm93cykKKworCitzdGFydGluZyBwZXJtdXRhdGlvbjogczFyYyBzMnJjIHMybG9jazIwMjUw MyBzMnVwZDIwMjUwMyBzMWxvY2syMDI1IHMyYyBzMWRlbDIwMjUgczFjIHMxcQorc3RlcCBzMXJj OiBCRUdJTiBJU09MQVRJT04gTEVWRUwgUkVBRCBDT01NSVRURUQ7CitzdGVwIHMycmM6IEJFR0lO IElTT0xBVElPTiBMRVZFTCBSRUFEIENPTU1JVFRFRDsKK3N0ZXAgczJsb2NrMjAyNTAzOiAKKyAg U0VMRUNUICogRlJPTSBwcm9kdWN0cworICBXSEVSRSBpZCA9ICdbMSwyKScgQU5EIHZhbGlkX2F0 ICYmICdbMjAyNS0wMy0wMSwyMDI1LTA0LTAxKScKKyAgT1JERVIgQlkgdmFsaWRfYXQgRk9SIFVQ REFURTsKKworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDMwLTAxLTAxKXwg NS4wMAorKDEgcm93KQorCitzdGVwIHMydXBkMjAyNTAzOiAKKyAgVVBEQVRFIHByb2R1Y3RzCisg IEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDMtMDEnIFRPICcyMDI1LTA0LTAx JworICBTRVQgcHJpY2UgPSAxMC4wMAorICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAgczFs b2NrMjAyNTogCisgIFNFTEVDVCAqIEZST00gcHJvZHVjdHMKKyAgV0hFUkUgaWQgPSAnWzEsMikn IEFORCB2YWxpZF9hdCAmJiAnWzIwMjUtMDEtMDEsMjAyNi0wMS0wMSknCisgIE9SREVSIEJZIHZh bGlkX2F0IEZPUiBVUERBVEU7CisgPHdhaXRpbmcgLi4uPgorc3RlcCBzMmM6IENPTU1JVDsKK3N0 ZXAgczFsb2NrMjAyNTogPC4uLiBjb21wbGV0ZWQ+CitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAg ICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsy MDI1LTAzLTAxLDIwMjUtMDQtMDEpfDEwLjAwCisoMSByb3cpCisKK3N0ZXAgczFkZWwyMDI1OiAK KyAgREVMRVRFIEZST00gcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAn MjAyNS0wMS0wMScgVE8gJzIwMjYtMDEtMDEnCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3Rl cCBzMWM6IENPTU1JVDsKK3N0ZXAgczFxOiBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzIE9SREVSIEJZ IGlkLCB2YWxpZF9hdDsKK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAgfHByaWNlCistLS0t LSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAtMDEtMDEsMjAyNS0w MS0wMSl8IDUuMDAKK1sxLDIpfFsyMDI2LTAxLTAxLDIwMzAtMDEtMDEpfCA1LjAwCisoMiByb3dz KQorCisKK3N0YXJ0aW5nIHBlcm11dGF0aW9uOiBzMXJjIHMycmMgczJsb2NrMjAyNTIwMjYgczJ1 cGQyMDI1MjAyNiBzMWxvY2syMDI1IHMyYyBzMWRlbDIwMjUgczFjIHMxcQorc3RlcCBzMXJjOiBC RUdJTiBJU09MQVRJT04gTEVWRUwgUkVBRCBDT01NSVRURUQ7CitzdGVwIHMycmM6IEJFR0lOIElT T0xBVElPTiBMRVZFTCBSRUFEIENPTU1JVFRFRDsKK3N0ZXAgczJsb2NrMjAyNTIwMjY6IAorICBT RUxFQ1QgKiBGUk9NIHByb2R1Y3RzCisgIFdIRVJFIGlkID0gJ1sxLDIpJyBBTkQgdmFsaWRfYXQg JiYgJ1syMDI1LTA2LTAxLDIwMjYtMDYtMDEpJworICBPUkRFUiBCWSB2YWxpZF9hdCBGT1IgVVBE QVRFOworCitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMzAtMDEtMDEpfCA1 LjAwCisoMSByb3cpCisKK3N0ZXAgczJ1cGQyMDI1MjAyNjogCisgIFVQREFURSBwcm9kdWN0cwor ICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTA2LTAxJyBUTyAnMjAyNi0wNi0w MScKKyAgU0VUIHByaWNlID0gMTAuMDAKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMx bG9jazIwMjU6IAorICBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzCisgIFdIRVJFIGlkID0gJ1sxLDIp JyBBTkQgdmFsaWRfYXQgJiYgJ1syMDI1LTAxLTAxLDIwMjYtMDEtMDEpJworICBPUkRFUiBCWSB2 YWxpZF9hdCBGT1IgVVBEQVRFOworIDx3YWl0aW5nIC4uLj4KK3N0ZXAgczJjOiBDT01NSVQ7Citz dGVwIHMxbG9jazIwMjU6IDwuLi4gY29tcGxldGVkPgoraWQgICB8dmFsaWRfYXQgICAgICAgICAg ICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxb MjAyNS0wNi0wMSwyMDI2LTA2LTAxKXwxMC4wMAorKDEgcm93KQorCitzdGVwIHMxZGVsMjAyNTog CisgIERFTEVURSBGUk9NIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00g JzIwMjUtMDEtMDEnIFRPICcyMDI2LTAxLTAxJworICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0 ZXAgczFjOiBDT01NSVQ7CitzdGVwIHMxcTogU0VMRUNUICogRlJPTSBwcm9kdWN0cyBPUkRFUiBC WSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQorLS0t LS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMjUt MDEtMDEpfCA1LjAwCitbMSwyKXxbMjAyNi0wMS0wMSwyMDI2LTA2LTAxKXwxMC4wMAorWzEsMil8 WzIwMjYtMDYtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKygzIHJvd3MpCisKKworc3RhcnRpbmcgcGVy bXV0YXRpb246IHMxcmMgczJyYyBzMmxvY2syMDI3IHMyZGVsMjAyNyBzMmMgczFsb2NrMjAyNSBz MWRlbDIwMjUgczFjIHMxcQorc3RlcCBzMXJjOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgUkVBRCBD T01NSVRURUQ7CitzdGVwIHMycmM6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBSRUFEIENPTU1JVFRF RDsKK3N0ZXAgczJsb2NrMjAyNzogCisgIFNFTEVDVCAqIEZST00gcHJvZHVjdHMKKyAgV0hFUkUg aWQgPSAnWzEsMiknIEFORCB2YWxpZF9hdCAmJiAnWzIwMjctMDEtMDEsMjAyOC0wMS0wMSknCisg IE9SREVSIEJZIHZhbGlkX2F0IEZPUiBVUERBVEU7CisKK2lkICAgfHZhbGlkX2F0ICAgICAgICAg ICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8 WzIwMjAtMDEtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKygxIHJvdykKKworc3RlcCBzMmRlbDIwMjc6 IAorICBERUxFVEUgRlJPTSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9N ICcyMDI3LTAxLTAxJyBUTyAnMjAyOC0wMS0wMScKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitz dGVwIHMyYzogQ09NTUlUOworc3RlcCBzMWxvY2syMDI1OiAKKyAgU0VMRUNUICogRlJPTSBwcm9k dWN0cworICBXSEVSRSBpZCA9ICdbMSwyKScgQU5EIHZhbGlkX2F0ICYmICdbMjAyNS0wMS0wMSwy MDI2LTAxLTAxKScKKyAgT1JERVIgQlkgdmFsaWRfYXQgRk9SIFVQREFURTsKKworaWQgICB8dmFs aWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t Ky0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDI3LTAxLTAxKXwgNS4wMAorKDEgcm93KQorCitz dGVwIHMxZGVsMjAyNTogCisgIERFTEVURSBGUk9NIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9G IHZhbGlkX2F0IEZST00gJzIwMjUtMDEtMDEnIFRPICcyMDI2LTAxLTAxJworICBXSEVSRSBpZCA9 ICdbMSwyKSc7CisKK3N0ZXAgczFjOiBDT01NSVQ7CitzdGVwIHMxcTogU0VMRUNUICogRlJPTSBw cm9kdWN0cyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAg ICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsy MDIwLTAxLTAxLDIwMjUtMDEtMDEpfCA1LjAwCitbMSwyKXxbMjAyNi0wMS0wMSwyMDI3LTAxLTAx KXwgNS4wMAorWzEsMil8WzIwMjgtMDEtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKygzIHJvd3MpCisK Kworc3RhcnRpbmcgcGVybXV0YXRpb246IHMxcmMgczJyYyBzMmxvY2syMDI1MDMgczJkZWwyMDI1 MDMgczJjIHMxbG9jazIwMjUgczFkZWwyMDI1IHMxYyBzMXEKK3N0ZXAgczFyYzogQkVHSU4gSVNP TEFUSU9OIExFVkVMIFJFQUQgQ09NTUlUVEVEOworc3RlcCBzMnJjOiBCRUdJTiBJU09MQVRJT04g TEVWRUwgUkVBRCBDT01NSVRURUQ7CitzdGVwIHMybG9jazIwMjUwMzogCisgIFNFTEVDVCAqIEZS T00gcHJvZHVjdHMKKyAgV0hFUkUgaWQgPSAnWzEsMiknIEFORCB2YWxpZF9hdCAmJiAnWzIwMjUt MDMtMDEsMjAyNS0wNC0wMSknCisgIE9SREVSIEJZIHZhbGlkX2F0IEZPUiBVUERBVEU7CisKK2lk ICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0t LS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAtMDEtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKygxIHJv dykKKworc3RlcCBzMmRlbDIwMjUwMzogCisgIERFTEVURSBGUk9NIHByb2R1Y3RzCisgIEZPUiBQ T1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDMtMDEnIFRPICcyMDI1LTA0LTAxJworICBX SEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAgczJjOiBDT01NSVQ7CitzdGVwIHMxbG9jazIwMjU6 IAorICBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzCisgIFdIRVJFIGlkID0gJ1sxLDIpJyBBTkQgdmFs aWRfYXQgJiYgJ1syMDI1LTAxLTAxLDIwMjYtMDEtMDEpJworICBPUkRFUiBCWSB2YWxpZF9hdCBG T1IgVVBEQVRFOworCitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQorLS0tLS0r LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMjUtMDMt MDEpfCA1LjAwCitbMSwyKXxbMjAyNS0wNC0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDIgcm93cykK Kworc3RlcCBzMWRlbDIwMjU6IAorICBERUxFVEUgRlJPTSBwcm9kdWN0cworICBGT1IgUE9SVElP TiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTAxLTAxJyBUTyAnMjAyNi0wMS0wMScKKyAgV0hFUkUg aWQgPSAnWzEsMiknOworCitzdGVwIHMxYzogQ09NTUlUOworc3RlcCBzMXE6IFNFTEVDVCAqIEZS T00gcHJvZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworaWQgICB8dmFsaWRfYXQgICAgICAg ICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwy KXxbMjAyMC0wMS0wMSwyMDI1LTAxLTAxKXwgNS4wMAorWzEsMil8WzIwMjYtMDEtMDEsMjAzMC0w MS0wMSl8IDUuMDAKKygyIHJvd3MpCisKKworc3RhcnRpbmcgcGVybXV0YXRpb246IHMxcmMgczJy YyBzMmxvY2syMDI1MjAyNiBzMmRlbDIwMjUyMDI2IHMyYyBzMWxvY2syMDI1IHMxZGVsMjAyNSBz MWMgczFxCitzdGVwIHMxcmM6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBSRUFEIENPTU1JVFRFRDsK K3N0ZXAgczJyYzogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFJFQUQgQ09NTUlUVEVEOworc3RlcCBz MmxvY2syMDI1MjAyNjogCisgIFNFTEVDVCAqIEZST00gcHJvZHVjdHMKKyAgV0hFUkUgaWQgPSAn WzEsMiknIEFORCB2YWxpZF9hdCAmJiAnWzIwMjUtMDYtMDEsMjAyNi0wNi0wMSknCisgIE9SREVS IEJZIHZhbGlkX2F0IEZPUiBVUERBVEU7CisKK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAg fHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAt MDEtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKygxIHJvdykKKworc3RlcCBzMmRlbDIwMjUyMDI2OiAK KyAgREVMRVRFIEZST00gcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAn MjAyNS0wNi0wMScgVE8gJzIwMjYtMDYtMDEnCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3Rl cCBzMmM6IENPTU1JVDsKK3N0ZXAgczFsb2NrMjAyNTogCisgIFNFTEVDVCAqIEZST00gcHJvZHVj dHMKKyAgV0hFUkUgaWQgPSAnWzEsMiknIEFORCB2YWxpZF9hdCAmJiAnWzIwMjUtMDEtMDEsMjAy Ni0wMS0wMSknCisgIE9SREVSIEJZIHZhbGlkX2F0IEZPUiBVUERBVEU7CisKK2lkICAgfHZhbGlk X2F0ICAgICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSst LS0tLQorWzEsMil8WzIwMjAtMDEtMDEsMjAyNS0wNi0wMSl8IDUuMDAKKygxIHJvdykKKworc3Rl cCBzMWRlbDIwMjU6IAorICBERUxFVEUgRlJPTSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2 YWxpZF9hdCBGUk9NICcyMDI1LTAxLTAxJyBUTyAnMjAyNi0wMS0wMScKKyAgV0hFUkUgaWQgPSAn WzEsMiknOworCitzdGVwIHMxYzogQ09NTUlUOworc3RlcCBzMXE6IFNFTEVDVCAqIEZST00gcHJv ZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAg ICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAy MC0wMS0wMSwyMDI1LTAxLTAxKXwgNS4wMAorWzEsMil8WzIwMjYtMDYtMDEsMjAzMC0wMS0wMSl8 IDUuMDAKKygyIHJvd3MpCisKKworc3RhcnRpbmcgcGVybXV0YXRpb246IHMxcmMgczJyYyBzMWxv Y2syMDI1IHMxZGVsMjAyNSBzMWMgczJsb2NrMjAyNyBzMmRlbDIwMjcgczJjIHMxcQorc3RlcCBz MXJjOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgUkVBRCBDT01NSVRURUQ7CitzdGVwIHMycmM6IEJF R0lOIElTT0xBVElPTiBMRVZFTCBSRUFEIENPTU1JVFRFRDsKK3N0ZXAgczFsb2NrMjAyNTogCisg IFNFTEVDVCAqIEZST00gcHJvZHVjdHMKKyAgV0hFUkUgaWQgPSAnWzEsMiknIEFORCB2YWxpZF9h dCAmJiAnWzIwMjUtMDEtMDEsMjAyNi0wMS0wMSknCisgIE9SREVSIEJZIHZhbGlkX2F0IEZPUiBV UERBVEU7CisKK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0t LS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAtMDEtMDEsMjAzMC0wMS0wMSl8 IDUuMDAKKygxIHJvdykKKworc3RlcCBzMWRlbDIwMjU6IAorICBERUxFVEUgRlJPTSBwcm9kdWN0 cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTAxLTAxJyBUTyAnMjAyNi0w MS0wMScKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMxYzogQ09NTUlUOworc3RlcCBz MmxvY2syMDI3OiAKKyAgU0VMRUNUICogRlJPTSBwcm9kdWN0cworICBXSEVSRSBpZCA9ICdbMSwy KScgQU5EIHZhbGlkX2F0ICYmICdbMjAyNy0wMS0wMSwyMDI4LTAxLTAxKScKKyAgT1JERVIgQlkg dmFsaWRfYXQgRk9SIFVQREFURTsKKworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJp Y2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyNi0wMS0w MSwyMDMwLTAxLTAxKXwgNS4wMAorKDEgcm93KQorCitzdGVwIHMyZGVsMjAyNzogCisgIERFTEVU RSBGUk9NIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjctMDEt MDEnIFRPICcyMDI4LTAxLTAxJworICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAgczJjOiBD T01NSVQ7CitzdGVwIHMxcTogU0VMRUNUICogRlJPTSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwgdmFs aWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMjUtMDEtMDEpfCA1 LjAwCitbMSwyKXxbMjAyNi0wMS0wMSwyMDI3LTAxLTAxKXwgNS4wMAorWzEsMil8WzIwMjgtMDEt MDEsMjAzMC0wMS0wMSl8IDUuMDAKKygzIHJvd3MpCisKKworc3RhcnRpbmcgcGVybXV0YXRpb246 IHMxcmMgczJyYyBzMWxvY2syMDI1IHMxZGVsMjAyNSBzMWMgczJsb2NrMjAyNTAzIHMyZGVsMjAy NTAzIHMyYyBzMXEKK3N0ZXAgczFyYzogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFJFQUQgQ09NTUlU VEVEOworc3RlcCBzMnJjOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgUkVBRCBDT01NSVRURUQ7Citz dGVwIHMxbG9jazIwMjU6IAorICBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzCisgIFdIRVJFIGlkID0g J1sxLDIpJyBBTkQgdmFsaWRfYXQgJiYgJ1syMDI1LTAxLTAxLDIwMjYtMDEtMDEpJworICBPUkRF UiBCWSB2YWxpZF9hdCBGT1IgVVBEQVRFOworCitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAg IHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIw LTAxLTAxLDIwMzAtMDEtMDEpfCA1LjAwCisoMSByb3cpCisKK3N0ZXAgczFkZWwyMDI1OiAKKyAg REVMRVRFIEZST00gcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAy NS0wMS0wMScgVE8gJzIwMjYtMDEtMDEnCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBz MWM6IENPTU1JVDsKK3N0ZXAgczJsb2NrMjAyNTAzOiAKKyAgU0VMRUNUICogRlJPTSBwcm9kdWN0 cworICBXSEVSRSBpZCA9ICdbMSwyKScgQU5EIHZhbGlkX2F0ICYmICdbMjAyNS0wMy0wMSwyMDI1 LTA0LTAxKScKKyAgT1JERVIgQlkgdmFsaWRfYXQgRk9SIFVQREFURTsKKworaWR8dmFsaWRfYXR8 cHJpY2UKKy0tKy0tLS0tLS0tKy0tLS0tCisoMCByb3dzKQorCitzdGVwIHMyZGVsMjAyNTAzOiAK KyAgREVMRVRFIEZST00gcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAn MjAyNS0wMy0wMScgVE8gJzIwMjUtMDQtMDEnCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3Rl cCBzMmM6IENPTU1JVDsKK3N0ZXAgczFxOiBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzIE9SREVSIEJZ IGlkLCB2YWxpZF9hdDsKK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAgfHByaWNlCistLS0t LSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAtMDEtMDEsMjAyNS0w MS0wMSl8IDUuMDAKK1sxLDIpfFsyMDI2LTAxLTAxLDIwMzAtMDEtMDEpfCA1LjAwCisoMiByb3dz KQorCisKK3N0YXJ0aW5nIHBlcm11dGF0aW9uOiBzMXJjIHMycmMgczFsb2NrMjAyNSBzMWRlbDIw MjUgczFjIHMybG9jazIwMjUyMDI2IHMyZGVsMjAyNTIwMjYgczJjIHMxcQorc3RlcCBzMXJjOiBC RUdJTiBJU09MQVRJT04gTEVWRUwgUkVBRCBDT01NSVRURUQ7CitzdGVwIHMycmM6IEJFR0lOIElT T0xBVElPTiBMRVZFTCBSRUFEIENPTU1JVFRFRDsKK3N0ZXAgczFsb2NrMjAyNTogCisgIFNFTEVD VCAqIEZST00gcHJvZHVjdHMKKyAgV0hFUkUgaWQgPSAnWzEsMiknIEFORCB2YWxpZF9hdCAmJiAn WzIwMjUtMDEtMDEsMjAyNi0wMS0wMSknCisgIE9SREVSIEJZIHZhbGlkX2F0IEZPUiBVUERBVEU7 CisKK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0t LS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAtMDEtMDEsMjAzMC0wMS0wMSl8IDUuMDAK KygxIHJvdykKKworc3RlcCBzMWRlbDIwMjU6IAorICBERUxFVEUgRlJPTSBwcm9kdWN0cworICBG T1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTAxLTAxJyBUTyAnMjAyNi0wMS0wMScK KyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMxYzogQ09NTUlUOworc3RlcCBzMmxvY2sy MDI1MjAyNjogCisgIFNFTEVDVCAqIEZST00gcHJvZHVjdHMKKyAgV0hFUkUgaWQgPSAnWzEsMikn IEFORCB2YWxpZF9hdCAmJiAnWzIwMjUtMDYtMDEsMjAyNi0wNi0wMSknCisgIE9SREVSIEJZIHZh bGlkX2F0IEZPUiBVUERBVEU7CisKK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAgfHByaWNl CistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjYtMDEtMDEs MjAzMC0wMS0wMSl8IDUuMDAKKygxIHJvdykKKworc3RlcCBzMmRlbDIwMjUyMDI2OiAKKyAgREVM RVRFIEZST00gcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0w Ni0wMScgVE8gJzIwMjYtMDYtMDEnCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMmM6 IENPTU1JVDsKK3N0ZXAgczFxOiBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2 YWxpZF9hdDsKK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0t LS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAtMDEtMDEsMjAyNS0wMS0wMSl8 IDUuMDAKK1sxLDIpfFsyMDI2LTA2LTAxLDIwMzAtMDEtMDEpfCA1LjAwCisoMiByb3dzKQorCisK K3N0YXJ0aW5nIHBlcm11dGF0aW9uOiBzMXJjIHMycmMgczJsb2NrMjAyNyBzMmRlbDIwMjcgczFs b2NrMjAyNSBzMmMgczFkZWwyMDI1IHMxYyBzMXEKK3N0ZXAgczFyYzogQkVHSU4gSVNPTEFUSU9O IExFVkVMIFJFQUQgQ09NTUlUVEVEOworc3RlcCBzMnJjOiBCRUdJTiBJU09MQVRJT04gTEVWRUwg UkVBRCBDT01NSVRURUQ7CitzdGVwIHMybG9jazIwMjc6IAorICBTRUxFQ1QgKiBGUk9NIHByb2R1 Y3RzCisgIFdIRVJFIGlkID0gJ1sxLDIpJyBBTkQgdmFsaWRfYXQgJiYgJ1syMDI3LTAxLTAxLDIw MjgtMDEtMDEpJworICBPUkRFUiBCWSB2YWxpZF9hdCBGT1IgVVBEQVRFOworCitpZCAgIHx2YWxp ZF9hdCAgICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0r LS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMzAtMDEtMDEpfCA1LjAwCisoMSByb3cpCisKK3N0 ZXAgczJkZWwyMDI3OiAKKyAgREVMRVRFIEZST00gcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0Yg dmFsaWRfYXQgRlJPTSAnMjAyNy0wMS0wMScgVE8gJzIwMjgtMDEtMDEnCisgIFdIRVJFIGlkID0g J1sxLDIpJzsKKworc3RlcCBzMWxvY2syMDI1OiAKKyAgU0VMRUNUICogRlJPTSBwcm9kdWN0cwor ICBXSEVSRSBpZCA9ICdbMSwyKScgQU5EIHZhbGlkX2F0ICYmICdbMjAyNS0wMS0wMSwyMDI2LTAx LTAxKScKKyAgT1JERVIgQlkgdmFsaWRfYXQgRk9SIFVQREFURTsKKyA8d2FpdGluZyAuLi4+Citz dGVwIHMyYzogQ09NTUlUOworc3RlcCBzMWxvY2syMDI1OiA8Li4uIGNvbXBsZXRlZD4KK2lkfHZh bGlkX2F0fHByaWNlCistLSstLS0tLS0tLSstLS0tLQorKDAgcm93cykKKworc3RlcCBzMWRlbDIw MjU6IAorICBERUxFVEUgRlJPTSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBG Uk9NICcyMDI1LTAxLTAxJyBUTyAnMjAyNi0wMS0wMScKKyAgV0hFUkUgaWQgPSAnWzEsMiknOwor CitzdGVwIHMxYzogQ09NTUlUOworc3RlcCBzMXE6IFNFTEVDVCAqIEZST00gcHJvZHVjdHMgT1JE RVIgQlkgaWQsIHZhbGlkX2F0OworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UK Ky0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwy MDI1LTAxLTAxKXwgNS4wMAorWzEsMil8WzIwMjYtMDEtMDEsMjAyNy0wMS0wMSl8IDUuMDAKK1sx LDIpfFsyMDI4LTAxLTAxLDIwMzAtMDEtMDEpfCA1LjAwCisoMyByb3dzKQorCisKK3N0YXJ0aW5n IHBlcm11dGF0aW9uOiBzMXJjIHMycmMgczJsb2NrMjAyNTAzIHMyZGVsMjAyNTAzIHMxbG9jazIw MjUgczJjIHMxZGVsMjAyNSBzMWMgczFxCitzdGVwIHMxcmM6IEJFR0lOIElTT0xBVElPTiBMRVZF TCBSRUFEIENPTU1JVFRFRDsKK3N0ZXAgczJyYzogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFJFQUQg Q09NTUlUVEVEOworc3RlcCBzMmxvY2syMDI1MDM6IAorICBTRUxFQ1QgKiBGUk9NIHByb2R1Y3Rz CisgIFdIRVJFIGlkID0gJ1sxLDIpJyBBTkQgdmFsaWRfYXQgJiYgJ1syMDI1LTAzLTAxLDIwMjUt MDQtMDEpJworICBPUkRFUiBCWSB2YWxpZF9hdCBGT1IgVVBEQVRFOworCitpZCAgIHx2YWxpZF9h dCAgICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0t LS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMzAtMDEtMDEpfCA1LjAwCisoMSByb3cpCisKK3N0ZXAg czJkZWwyMDI1MDM6IAorICBERUxFVEUgRlJPTSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2 YWxpZF9hdCBGUk9NICcyMDI1LTAzLTAxJyBUTyAnMjAyNS0wNC0wMScKKyAgV0hFUkUgaWQgPSAn WzEsMiknOworCitzdGVwIHMxbG9jazIwMjU6IAorICBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzCisg IFdIRVJFIGlkID0gJ1sxLDIpJyBBTkQgdmFsaWRfYXQgJiYgJ1syMDI1LTAxLTAxLDIwMjYtMDEt MDEpJworICBPUkRFUiBCWSB2YWxpZF9hdCBGT1IgVVBEQVRFOworIDx3YWl0aW5nIC4uLj4KK3N0 ZXAgczJjOiBDT01NSVQ7CitzdGVwIHMxbG9jazIwMjU6IDwuLi4gY29tcGxldGVkPgoraWR8dmFs aWRfYXR8cHJpY2UKKy0tKy0tLS0tLS0tKy0tLS0tCisoMCByb3dzKQorCitzdGVwIHMxZGVsMjAy NTogCisgIERFTEVURSBGUk9NIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZS T00gJzIwMjUtMDEtMDEnIFRPICcyMDI2LTAxLTAxJworICBXSEVSRSBpZCA9ICdbMSwyKSc7CisK K3N0ZXAgczFjOiBDT01NSVQ7CitzdGVwIHMxcTogU0VMRUNUICogRlJPTSBwcm9kdWN0cyBPUkRF UiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQor LS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIw MjUtMDEtMDEpfCA1LjAwCitbMSwyKXxbMjAyNi0wMS0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDIg cm93cykKKworCitzdGFydGluZyBwZXJtdXRhdGlvbjogczFyYyBzMnJjIHMybG9jazIwMjUyMDI2 IHMyZGVsMjAyNTIwMjYgczFsb2NrMjAyNSBzMmMgczFkZWwyMDI1IHMxYyBzMXEKK3N0ZXAgczFy YzogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFJFQUQgQ09NTUlUVEVEOworc3RlcCBzMnJjOiBCRUdJ TiBJU09MQVRJT04gTEVWRUwgUkVBRCBDT01NSVRURUQ7CitzdGVwIHMybG9jazIwMjUyMDI2OiAK KyAgU0VMRUNUICogRlJPTSBwcm9kdWN0cworICBXSEVSRSBpZCA9ICdbMSwyKScgQU5EIHZhbGlk X2F0ICYmICdbMjAyNS0wNi0wMSwyMDI2LTA2LTAxKScKKyAgT1JERVIgQlkgdmFsaWRfYXQgRk9S IFVQREFURTsKKworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDMwLTAxLTAx KXwgNS4wMAorKDEgcm93KQorCitzdGVwIHMyZGVsMjAyNTIwMjY6IAorICBERUxFVEUgRlJPTSBw cm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTA2LTAxJyBUTyAn MjAyNi0wNi0wMScKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMxbG9jazIwMjU6IAor ICBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzCisgIFdIRVJFIGlkID0gJ1sxLDIpJyBBTkQgdmFsaWRf YXQgJiYgJ1syMDI1LTAxLTAxLDIwMjYtMDEtMDEpJworICBPUkRFUiBCWSB2YWxpZF9hdCBGT1Ig VVBEQVRFOworIDx3YWl0aW5nIC4uLj4KK3N0ZXAgczJjOiBDT01NSVQ7CitzdGVwIHMxbG9jazIw MjU6IDwuLi4gY29tcGxldGVkPgoraWR8dmFsaWRfYXR8cHJpY2UKKy0tKy0tLS0tLS0tKy0tLS0t CisoMCByb3dzKQorCitzdGVwIHMxZGVsMjAyNTogCisgIERFTEVURSBGUk9NIHByb2R1Y3RzCisg IEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDEtMDEnIFRPICcyMDI2LTAxLTAx JworICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAgczFjOiBDT01NSVQ7CitzdGVwIHMxcTog U0VMRUNUICogRlJPTSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxp ZF9hdCAgICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0r LS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMjUtMDEtMDEpfCA1LjAwCitbMSwyKXxbMjAyNi0w Ni0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDIgcm93cykKKworCitzdGFydGluZyBwZXJtdXRhdGlv bjogczFyciBzMnJyIHMydXBkMjAyNyBzMmMgczF1cGQyMDI1IHMxYyBzMXEKK3N0ZXAgczFycjog QkVHSU4gSVNPTEFUSU9OIExFVkVMIFJFUEVBVEFCTEUgUkVBRDsKK3N0ZXAgczJycjogQkVHSU4g SVNPTEFUSU9OIExFVkVMIFJFUEVBVEFCTEUgUkVBRDsKK3N0ZXAgczJ1cGQyMDI3OiAKKyAgVVBE QVRFIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjctMDEtMDEn IFRPICcyMDI4LTAxLTAxJworICBTRVQgcHJpY2UgPSAxMC4wMAorICBXSEVSRSBpZCA9ICdbMSwy KSc7CisKK3N0ZXAgczJjOiBDT01NSVQ7CitzdGVwIHMxdXBkMjAyNTogCisgIFVQREFURSBwcm9k dWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTAxLTAxJyBUTyAnMjAy Ni0wMS0wMScKKyAgU0VUIHByaWNlID0gOC4wMAorICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0 ZXAgczFjOiBDT01NSVQ7CitzdGVwIHMxcTogU0VMRUNUICogRlJPTSBwcm9kdWN0cyBPUkRFUiBC WSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQorLS0t LS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMjUt MDEtMDEpfCA1LjAwCitbMSwyKXxbMjAyNS0wMS0wMSwyMDI2LTAxLTAxKXwgOC4wMAorWzEsMil8 WzIwMjYtMDEtMDEsMjAyNy0wMS0wMSl8IDUuMDAKK1sxLDIpfFsyMDI3LTAxLTAxLDIwMjgtMDEt MDEpfDEwLjAwCitbMSwyKXxbMjAyOC0wMS0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDUgcm93cykK KworCitzdGFydGluZyBwZXJtdXRhdGlvbjogczFyciBzMnJyIHMydXBkMjAyNTAzIHMyYyBzMXVw ZDIwMjUgczFjIHMxcQorc3RlcCBzMXJyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgUkVQRUFUQUJM RSBSRUFEOworc3RlcCBzMnJyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgUkVQRUFUQUJMRSBSRUFE Oworc3RlcCBzMnVwZDIwMjUwMzogCisgIFVQREFURSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBP RiB2YWxpZF9hdCBGUk9NICcyMDI1LTAzLTAxJyBUTyAnMjAyNS0wNC0wMScKKyAgU0VUIHByaWNl ID0gMTAuMDAKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMyYzogQ09NTUlUOworc3Rl cCBzMXVwZDIwMjU6IAorICBVUERBVEUgcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRf YXQgRlJPTSAnMjAyNS0wMS0wMScgVE8gJzIwMjYtMDEtMDEnCisgIFNFVCBwcmljZSA9IDguMDAK KyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMxYzogQ09NTUlUOworc3RlcCBzMXE6IFNF TEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworaWQgICB8dmFsaWRf YXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0t LS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDI1LTAxLTAxKXwgNS4wMAorWzEsMil8WzIwMjUtMDEt MDEsMjAyNS0wMy0wMSl8IDguMDAKK1sxLDIpfFsyMDI1LTAzLTAxLDIwMjUtMDQtMDEpfCA4LjAw CitbMSwyKXxbMjAyNS0wNC0wMSwyMDI2LTAxLTAxKXwgOC4wMAorWzEsMil8WzIwMjYtMDEtMDEs MjAzMC0wMS0wMSl8IDUuMDAKKyg1IHJvd3MpCisKKworc3RhcnRpbmcgcGVybXV0YXRpb246IHMx cnIgczJyciBzMnVwZDIwMjUyMDI2IHMyYyBzMXVwZDIwMjUgczFjIHMxcQorc3RlcCBzMXJyOiBC RUdJTiBJU09MQVRJT04gTEVWRUwgUkVQRUFUQUJMRSBSRUFEOworc3RlcCBzMnJyOiBCRUdJTiBJ U09MQVRJT04gTEVWRUwgUkVQRUFUQUJMRSBSRUFEOworc3RlcCBzMnVwZDIwMjUyMDI2OiAKKyAg VVBEQVRFIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDYt MDEnIFRPICcyMDI2LTA2LTAxJworICBTRVQgcHJpY2UgPSAxMC4wMAorICBXSEVSRSBpZCA9ICdb MSwyKSc7CisKK3N0ZXAgczJjOiBDT01NSVQ7CitzdGVwIHMxdXBkMjAyNTogCisgIFVQREFURSBw cm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTAxLTAxJyBUTyAn MjAyNi0wMS0wMScKKyAgU0VUIHByaWNlID0gOC4wMAorICBXSEVSRSBpZCA9ICdbMSwyKSc7CisK K3N0ZXAgczFjOiBDT01NSVQ7CitzdGVwIHMxcTogU0VMRUNUICogRlJPTSBwcm9kdWN0cyBPUkRF UiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQor LS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIw MjUtMDEtMDEpfCA1LjAwCitbMSwyKXxbMjAyNS0wMS0wMSwyMDI1LTA2LTAxKXwgOC4wMAorWzEs Mil8WzIwMjUtMDYtMDEsMjAyNi0wMS0wMSl8IDguMDAKK1sxLDIpfFsyMDI2LTAxLTAxLDIwMjYt MDYtMDEpfDEwLjAwCitbMSwyKXxbMjAyNi0wNi0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDUgcm93 cykKKworCitzdGFydGluZyBwZXJtdXRhdGlvbjogczFyciBzMnJyIHMxdXBkMjAyNSBzMWMgczJ1 cGQyMDI3IHMyYyBzMXEKK3N0ZXAgczFycjogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFJFUEVBVEFC TEUgUkVBRDsKK3N0ZXAgczJycjogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFJFUEVBVEFCTEUgUkVB RDsKK3N0ZXAgczF1cGQyMDI1OiAKKyAgVVBEQVRFIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9G IHZhbGlkX2F0IEZST00gJzIwMjUtMDEtMDEnIFRPICcyMDI2LTAxLTAxJworICBTRVQgcHJpY2Ug PSA4LjAwCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMWM6IENPTU1JVDsKK3N0ZXAg czJ1cGQyMDI3OiAKKyAgVVBEQVRFIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0 IEZST00gJzIwMjctMDEtMDEnIFRPICcyMDI4LTAxLTAxJworICBTRVQgcHJpY2UgPSAxMC4wMAor ICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAgczJjOiBDT01NSVQ7CitzdGVwIHMxcTogU0VM RUNUICogRlJPTSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9h dCAgICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0t LS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMjUtMDEtMDEpfCA1LjAwCitbMSwyKXxbMjAyNS0wMS0w MSwyMDI2LTAxLTAxKXwgOC4wMAorWzEsMil8WzIwMjYtMDEtMDEsMjAyNy0wMS0wMSl8IDUuMDAK K1sxLDIpfFsyMDI3LTAxLTAxLDIwMjgtMDEtMDEpfDEwLjAwCitbMSwyKXxbMjAyOC0wMS0wMSwy MDMwLTAxLTAxKXwgNS4wMAorKDUgcm93cykKKworCitzdGFydGluZyBwZXJtdXRhdGlvbjogczFy ciBzMnJyIHMxdXBkMjAyNSBzMWMgczJ1cGQyMDI1MDMgczJjIHMxcQorc3RlcCBzMXJyOiBCRUdJ TiBJU09MQVRJT04gTEVWRUwgUkVQRUFUQUJMRSBSRUFEOworc3RlcCBzMnJyOiBCRUdJTiBJU09M QVRJT04gTEVWRUwgUkVQRUFUQUJMRSBSRUFEOworc3RlcCBzMXVwZDIwMjU6IAorICBVUERBVEUg cHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wMS0wMScgVE8g JzIwMjYtMDEtMDEnCisgIFNFVCBwcmljZSA9IDguMDAKKyAgV0hFUkUgaWQgPSAnWzEsMiknOwor CitzdGVwIHMxYzogQ09NTUlUOworc3RlcCBzMnVwZDIwMjUwMzogCisgIFVQREFURSBwcm9kdWN0 cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTAzLTAxJyBUTyAnMjAyNS0w NC0wMScKKyAgU0VUIHByaWNlID0gMTAuMDAKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVw IHMyYzogQ09NTUlUOworc3RlcCBzMXE6IFNFTEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkg aWQsIHZhbGlkX2F0OworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0t Ky0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDI1LTAx LTAxKXwgNS4wMAorWzEsMil8WzIwMjUtMDEtMDEsMjAyNS0wMy0wMSl8IDguMDAKK1sxLDIpfFsy MDI1LTAzLTAxLDIwMjUtMDQtMDEpfDEwLjAwCitbMSwyKXxbMjAyNS0wNC0wMSwyMDI2LTAxLTAx KXwgOC4wMAorWzEsMil8WzIwMjYtMDEtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKyg1IHJvd3MpCisK Kworc3RhcnRpbmcgcGVybXV0YXRpb246IHMxcnIgczJyciBzMXVwZDIwMjUgczFjIHMydXBkMjAy NTIwMjYgczJjIHMxcQorc3RlcCBzMXJyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgUkVQRUFUQUJM RSBSRUFEOworc3RlcCBzMnJyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgUkVQRUFUQUJMRSBSRUFE Oworc3RlcCBzMXVwZDIwMjU6IAorICBVUERBVEUgcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0Yg dmFsaWRfYXQgRlJPTSAnMjAyNS0wMS0wMScgVE8gJzIwMjYtMDEtMDEnCisgIFNFVCBwcmljZSA9 IDguMDAKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMxYzogQ09NTUlUOworc3RlcCBz MnVwZDIwMjUyMDI2OiAKKyAgVVBEQVRFIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlk X2F0IEZST00gJzIwMjUtMDYtMDEnIFRPICcyMDI2LTA2LTAxJworICBTRVQgcHJpY2UgPSAxMC4w MAorICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAgczJjOiBDT01NSVQ7CitzdGVwIHMxcTog U0VMRUNUICogRlJPTSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxp ZF9hdCAgICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0r LS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMjUtMDEtMDEpfCA1LjAwCitbMSwyKXxbMjAyNS0w MS0wMSwyMDI1LTA2LTAxKXwgOC4wMAorWzEsMil8WzIwMjUtMDYtMDEsMjAyNi0wMS0wMSl8MTAu MDAKK1sxLDIpfFsyMDI2LTAxLTAxLDIwMjYtMDYtMDEpfDEwLjAwCitbMSwyKXxbMjAyNi0wNi0w MSwyMDMwLTAxLTAxKXwgNS4wMAorKDUgcm93cykKKworCitzdGFydGluZyBwZXJtdXRhdGlvbjog czFyciBzMnJyIHMydXBkMjAyNyBzMXVwZDIwMjUgczJjIHMxYyBzMXEKK3N0ZXAgczFycjogQkVH SU4gSVNPTEFUSU9OIExFVkVMIFJFUEVBVEFCTEUgUkVBRDsKK3N0ZXAgczJycjogQkVHSU4gSVNP TEFUSU9OIExFVkVMIFJFUEVBVEFCTEUgUkVBRDsKK3N0ZXAgczJ1cGQyMDI3OiAKKyAgVVBEQVRF IHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjctMDEtMDEnIFRP ICcyMDI4LTAxLTAxJworICBTRVQgcHJpY2UgPSAxMC4wMAorICBXSEVSRSBpZCA9ICdbMSwyKSc7 CisKK3N0ZXAgczF1cGQyMDI1OiAKKyAgVVBEQVRFIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9G IHZhbGlkX2F0IEZST00gJzIwMjUtMDEtMDEnIFRPICcyMDI2LTAxLTAxJworICBTRVQgcHJpY2Ug PSA4LjAwCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKyA8d2FpdGluZyAuLi4+CitzdGVwIHMyYzog Q09NTUlUOworc3RlcCBzMXVwZDIwMjU6IDwuLi4gY29tcGxldGVkPgorRVJST1I6ICBjb3VsZCBu b3Qgc2VyaWFsaXplIGFjY2VzcyBkdWUgdG8gY29uY3VycmVudCB1cGRhdGUKK3N0ZXAgczFjOiBD T01NSVQ7CitzdGVwIHMxcTogU0VMRUNUICogRlJPTSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwgdmFs aWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMjctMDEtMDEpfCA1 LjAwCitbMSwyKXxbMjAyNy0wMS0wMSwyMDI4LTAxLTAxKXwxMC4wMAorWzEsMil8WzIwMjgtMDEt MDEsMjAzMC0wMS0wMSl8IDUuMDAKKygzIHJvd3MpCisKKworc3RhcnRpbmcgcGVybXV0YXRpb246 IHMxcnIgczJyciBzMnVwZDIwMjUwMyBzMXVwZDIwMjUgczJjIHMxYyBzMXEKK3N0ZXAgczFycjog QkVHSU4gSVNPTEFUSU9OIExFVkVMIFJFUEVBVEFCTEUgUkVBRDsKK3N0ZXAgczJycjogQkVHSU4g SVNPTEFUSU9OIExFVkVMIFJFUEVBVEFCTEUgUkVBRDsKK3N0ZXAgczJ1cGQyMDI1MDM6IAorICBV UERBVEUgcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wMy0w MScgVE8gJzIwMjUtMDQtMDEnCisgIFNFVCBwcmljZSA9IDEwLjAwCisgIFdIRVJFIGlkID0gJ1sx LDIpJzsKKworc3RlcCBzMXVwZDIwMjU6IAorICBVUERBVEUgcHJvZHVjdHMKKyAgRk9SIFBPUlRJ T04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wMS0wMScgVE8gJzIwMjYtMDEtMDEnCisgIFNFVCBw cmljZSA9IDguMDAKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworIDx3YWl0aW5nIC4uLj4KK3N0ZXAg czJjOiBDT01NSVQ7CitzdGVwIHMxdXBkMjAyNTogPC4uLiBjb21wbGV0ZWQ+CitFUlJPUjogIGNv dWxkIG5vdCBzZXJpYWxpemUgYWNjZXNzIGR1ZSB0byBjb25jdXJyZW50IHVwZGF0ZQorc3RlcCBz MWM6IENPTU1JVDsKK3N0ZXAgczFxOiBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzIE9SREVSIEJZIGlk LCB2YWxpZF9hdDsKK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAgfHByaWNlCistLS0tLSst LS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAtMDEtMDEsMjAyNS0wMy0w MSl8IDUuMDAKK1sxLDIpfFsyMDI1LTAzLTAxLDIwMjUtMDQtMDEpfDEwLjAwCitbMSwyKXxbMjAy NS0wNC0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDMgcm93cykKKworCitzdGFydGluZyBwZXJtdXRh dGlvbjogczFyciBzMnJyIHMydXBkMjAyNTIwMjYgczF1cGQyMDI1IHMyYyBzMWMgczFxCitzdGVw IHMxcnI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBSRVBFQVRBQkxFIFJFQUQ7CitzdGVwIHMycnI6 IEJFR0lOIElTT0xBVElPTiBMRVZFTCBSRVBFQVRBQkxFIFJFQUQ7CitzdGVwIHMydXBkMjAyNTIw MjY6IAorICBVUERBVEUgcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAn MjAyNS0wNi0wMScgVE8gJzIwMjYtMDYtMDEnCisgIFNFVCBwcmljZSA9IDEwLjAwCisgIFdIRVJF IGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMXVwZDIwMjU6IAorICBVUERBVEUgcHJvZHVjdHMKKyAg Rk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wMS0wMScgVE8gJzIwMjYtMDEtMDEn CisgIFNFVCBwcmljZSA9IDguMDAKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworIDx3YWl0aW5nIC4u Lj4KK3N0ZXAgczJjOiBDT01NSVQ7CitzdGVwIHMxdXBkMjAyNTogPC4uLiBjb21wbGV0ZWQ+CitF UlJPUjogIGNvdWxkIG5vdCBzZXJpYWxpemUgYWNjZXNzIGR1ZSB0byBjb25jdXJyZW50IHVwZGF0 ZQorc3RlcCBzMWM6IENPTU1JVDsKK3N0ZXAgczFxOiBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzIE9S REVSIEJZIGlkLCB2YWxpZF9hdDsKK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAgfHByaWNl CistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAtMDEtMDEs MjAyNS0wNi0wMSl8IDUuMDAKK1sxLDIpfFsyMDI1LTA2LTAxLDIwMjYtMDYtMDEpfDEwLjAwCitb MSwyKXxbMjAyNi0wNi0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDMgcm93cykKKworCitzdGFydGlu ZyBwZXJtdXRhdGlvbjogczFyciBzMnJyIHMxcSBzMnVwZDIwMjcgczJjIHMxdXBkMjAyNSBzMWMg czFxCitzdGVwIHMxcnI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBSRVBFQVRBQkxFIFJFQUQ7Citz dGVwIHMycnI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBSRVBFQVRBQkxFIFJFQUQ7CitzdGVwIHMx cTogU0VMRUNUICogRlJPTSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2 YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMzAtMDEtMDEpfCA1LjAwCisoMSByb3cpCisK K3N0ZXAgczJ1cGQyMDI3OiAKKyAgVVBEQVRFIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZh bGlkX2F0IEZST00gJzIwMjctMDEtMDEnIFRPICcyMDI4LTAxLTAxJworICBTRVQgcHJpY2UgPSAx MC4wMAorICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAgczJjOiBDT01NSVQ7CitzdGVwIHMx dXBkMjAyNTogCisgIFVQREFURSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBG Uk9NICcyMDI1LTAxLTAxJyBUTyAnMjAyNi0wMS0wMScKKyAgU0VUIHByaWNlID0gOC4wMAorICBX SEVSRSBpZCA9ICdbMSwyKSc7CisKK0VSUk9SOiAgY291bGQgbm90IHNlcmlhbGl6ZSBhY2Nlc3Mg ZHVlIHRvIGNvbmN1cnJlbnQgdXBkYXRlCitzdGVwIHMxYzogQ09NTUlUOworc3RlcCBzMXE6IFNF TEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworaWQgICB8dmFsaWRf YXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0t LS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDI3LTAxLTAxKXwgNS4wMAorWzEsMil8WzIwMjctMDEt MDEsMjAyOC0wMS0wMSl8MTAuMDAKK1sxLDIpfFsyMDI4LTAxLTAxLDIwMzAtMDEtMDEpfCA1LjAw CisoMyByb3dzKQorCisKK3N0YXJ0aW5nIHBlcm11dGF0aW9uOiBzMXJyIHMycnIgczFxIHMydXBk MjAyNTAzIHMyYyBzMXVwZDIwMjUgczFjIHMxcQorc3RlcCBzMXJyOiBCRUdJTiBJU09MQVRJT04g TEVWRUwgUkVQRUFUQUJMRSBSRUFEOworc3RlcCBzMnJyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwg UkVQRUFUQUJMRSBSRUFEOworc3RlcCBzMXE6IFNFTEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIg QlkgaWQsIHZhbGlkX2F0OworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0t LS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDMw LTAxLTAxKXwgNS4wMAorKDEgcm93KQorCitzdGVwIHMydXBkMjAyNTAzOiAKKyAgVVBEQVRFIHBy b2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDMtMDEnIFRPICcy MDI1LTA0LTAxJworICBTRVQgcHJpY2UgPSAxMC4wMAorICBXSEVSRSBpZCA9ICdbMSwyKSc7CisK K3N0ZXAgczJjOiBDT01NSVQ7CitzdGVwIHMxdXBkMjAyNTogCisgIFVQREFURSBwcm9kdWN0cwor ICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTAxLTAxJyBUTyAnMjAyNi0wMS0w MScKKyAgU0VUIHByaWNlID0gOC4wMAorICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK0VSUk9SOiAg Y291bGQgbm90IHNlcmlhbGl6ZSBhY2Nlc3MgZHVlIHRvIGNvbmN1cnJlbnQgdXBkYXRlCitzdGVw IHMxYzogQ09NTUlUOworc3RlcCBzMXE6IFNFTEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkg aWQsIHZhbGlkX2F0OworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0t Ky0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDI1LTAz LTAxKXwgNS4wMAorWzEsMil8WzIwMjUtMDMtMDEsMjAyNS0wNC0wMSl8MTAuMDAKK1sxLDIpfFsy MDI1LTA0LTAxLDIwMzAtMDEtMDEpfCA1LjAwCisoMyByb3dzKQorCisKK3N0YXJ0aW5nIHBlcm11 dGF0aW9uOiBzMXJyIHMycnIgczFxIHMydXBkMjAyNTIwMjYgczJjIHMxdXBkMjAyNSBzMWMgczFx CitzdGVwIHMxcnI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBSRVBFQVRBQkxFIFJFQUQ7CitzdGVw IHMycnI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBSRVBFQVRBQkxFIFJFQUQ7CitzdGVwIHMxcTog U0VMRUNUICogRlJPTSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxp ZF9hdCAgICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0r LS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMzAtMDEtMDEpfCA1LjAwCisoMSByb3cpCisKK3N0 ZXAgczJ1cGQyMDI1MjAyNjogCisgIFVQREFURSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2 YWxpZF9hdCBGUk9NICcyMDI1LTA2LTAxJyBUTyAnMjAyNi0wNi0wMScKKyAgU0VUIHByaWNlID0g MTAuMDAKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMyYzogQ09NTUlUOworc3RlcCBz MXVwZDIwMjU6IAorICBVUERBVEUgcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQg RlJPTSAnMjAyNS0wMS0wMScgVE8gJzIwMjYtMDEtMDEnCisgIFNFVCBwcmljZSA9IDguMDAKKyAg V0hFUkUgaWQgPSAnWzEsMiknOworCitFUlJPUjogIGNvdWxkIG5vdCBzZXJpYWxpemUgYWNjZXNz IGR1ZSB0byBjb25jdXJyZW50IHVwZGF0ZQorc3RlcCBzMWM6IENPTU1JVDsKK3N0ZXAgczFxOiBT RUxFQ1QgKiBGUk9NIHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK2lkICAgfHZhbGlk X2F0ICAgICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSst LS0tLQorWzEsMil8WzIwMjAtMDEtMDEsMjAyNS0wNi0wMSl8IDUuMDAKK1sxLDIpfFsyMDI1LTA2 LTAxLDIwMjYtMDYtMDEpfDEwLjAwCitbMSwyKXxbMjAyNi0wNi0wMSwyMDMwLTAxLTAxKXwgNS4w MAorKDMgcm93cykKKworCitzdGFydGluZyBwZXJtdXRhdGlvbjogczFyciBzMnJyIHMxcSBzMXVw ZDIwMjUgczFjIHMydXBkMjAyNyBzMmMgczFxCitzdGVwIHMxcnI6IEJFR0lOIElTT0xBVElPTiBM RVZFTCBSRVBFQVRBQkxFIFJFQUQ7CitzdGVwIHMycnI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBS RVBFQVRBQkxFIFJFQUQ7CitzdGVwIHMxcTogU0VMRUNUICogRlJPTSBwcm9kdWN0cyBPUkRFUiBC WSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQorLS0t LS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMzAt MDEtMDEpfCA1LjAwCisoMSByb3cpCisKK3N0ZXAgczF1cGQyMDI1OiAKKyAgVVBEQVRFIHByb2R1 Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDEtMDEnIFRPICcyMDI2 LTAxLTAxJworICBTRVQgcHJpY2UgPSA4LjAwCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3Rl cCBzMWM6IENPTU1JVDsKK3N0ZXAgczJ1cGQyMDI3OiAKKyAgVVBEQVRFIHByb2R1Y3RzCisgIEZP UiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjctMDEtMDEnIFRPICcyMDI4LTAxLTAxJwor ICBTRVQgcHJpY2UgPSAxMC4wMAorICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAgczJjOiBD T01NSVQ7CitzdGVwIHMxcTogU0VMRUNUICogRlJPTSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwgdmFs aWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMjUtMDEtMDEpfCA1 LjAwCitbMSwyKXxbMjAyNS0wMS0wMSwyMDI2LTAxLTAxKXwgOC4wMAorWzEsMil8WzIwMjYtMDEt MDEsMjAyNy0wMS0wMSl8IDUuMDAKK1sxLDIpfFsyMDI3LTAxLTAxLDIwMjgtMDEtMDEpfDEwLjAw CitbMSwyKXxbMjAyOC0wMS0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDUgcm93cykKKworCitzdGFy dGluZyBwZXJtdXRhdGlvbjogczFyciBzMnJyIHMxcSBzMXVwZDIwMjUgczFjIHMydXBkMjAyNTAz IHMyYyBzMXEKK3N0ZXAgczFycjogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFJFUEVBVEFCTEUgUkVB RDsKK3N0ZXAgczJycjogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFJFUEVBVEFCTEUgUkVBRDsKK3N0 ZXAgczFxOiBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK2lk ICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0t LS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAtMDEtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKygxIHJv dykKKworc3RlcCBzMXVwZDIwMjU6IAorICBVUERBVEUgcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04g T0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wMS0wMScgVE8gJzIwMjYtMDEtMDEnCisgIFNFVCBwcmlj ZSA9IDguMDAKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMxYzogQ09NTUlUOworc3Rl cCBzMnVwZDIwMjUwMzogCisgIFVQREFURSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxp ZF9hdCBGUk9NICcyMDI1LTAzLTAxJyBUTyAnMjAyNS0wNC0wMScKKyAgU0VUIHByaWNlID0gMTAu MDAKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMyYzogQ09NTUlUOworc3RlcCBzMXE6 IFNFTEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworaWQgICB8dmFs aWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t Ky0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDI1LTAxLTAxKXwgNS4wMAorWzEsMil8WzIwMjUt MDEtMDEsMjAyNS0wMy0wMSl8IDguMDAKK1sxLDIpfFsyMDI1LTAzLTAxLDIwMjUtMDQtMDEpfDEw LjAwCitbMSwyKXxbMjAyNS0wNC0wMSwyMDI2LTAxLTAxKXwgOC4wMAorWzEsMil8WzIwMjYtMDEt MDEsMjAzMC0wMS0wMSl8IDUuMDAKKyg1IHJvd3MpCisKKworc3RhcnRpbmcgcGVybXV0YXRpb246 IHMxcnIgczJyciBzMXEgczF1cGQyMDI1IHMxYyBzMnVwZDIwMjUyMDI2IHMyYyBzMXEKK3N0ZXAg czFycjogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFJFUEVBVEFCTEUgUkVBRDsKK3N0ZXAgczJycjog QkVHSU4gSVNPTEFUSU9OIExFVkVMIFJFUEVBVEFCTEUgUkVBRDsKK3N0ZXAgczFxOiBTRUxFQ1Qg KiBGUk9NIHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK2lkICAgfHZhbGlkX2F0ICAg ICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQor WzEsMil8WzIwMjAtMDEtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKygxIHJvdykKKworc3RlcCBzMXVw ZDIwMjU6IAorICBVUERBVEUgcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJP TSAnMjAyNS0wMS0wMScgVE8gJzIwMjYtMDEtMDEnCisgIFNFVCBwcmljZSA9IDguMDAKKyAgV0hF UkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMxYzogQ09NTUlUOworc3RlcCBzMnVwZDIwMjUyMDI2 OiAKKyAgVVBEQVRFIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIw MjUtMDYtMDEnIFRPICcyMDI2LTA2LTAxJworICBTRVQgcHJpY2UgPSAxMC4wMAorICBXSEVSRSBp ZCA9ICdbMSwyKSc7CisKK3N0ZXAgczJjOiBDT01NSVQ7CitzdGVwIHMxcTogU0VMRUNUICogRlJP TSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAgICAgICAg ICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIp fFsyMDIwLTAxLTAxLDIwMjUtMDEtMDEpfCA1LjAwCitbMSwyKXxbMjAyNS0wMS0wMSwyMDI1LTA2 LTAxKXwgOC4wMAorWzEsMil8WzIwMjUtMDYtMDEsMjAyNi0wMS0wMSl8MTAuMDAKK1sxLDIpfFsy MDI2LTAxLTAxLDIwMjYtMDYtMDEpfDEwLjAwCitbMSwyKXxbMjAyNi0wNi0wMSwyMDMwLTAxLTAx KXwgNS4wMAorKDUgcm93cykKKworCitzdGFydGluZyBwZXJtdXRhdGlvbjogczFyciBzMnJyIHMx cSBzMnVwZDIwMjcgczF1cGQyMDI1IHMyYyBzMWMgczFxCitzdGVwIHMxcnI6IEJFR0lOIElTT0xB VElPTiBMRVZFTCBSRVBFQVRBQkxFIFJFQUQ7CitzdGVwIHMycnI6IEJFR0lOIElTT0xBVElPTiBM RVZFTCBSRVBFQVRBQkxFIFJFQUQ7CitzdGVwIHMxcTogU0VMRUNUICogRlJPTSBwcm9kdWN0cyBP UkRFUiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmlj ZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAx LDIwMzAtMDEtMDEpfCA1LjAwCisoMSByb3cpCisKK3N0ZXAgczJ1cGQyMDI3OiAKKyAgVVBEQVRF IHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjctMDEtMDEnIFRP ICcyMDI4LTAxLTAxJworICBTRVQgcHJpY2UgPSAxMC4wMAorICBXSEVSRSBpZCA9ICdbMSwyKSc7 CisKK3N0ZXAgczF1cGQyMDI1OiAKKyAgVVBEQVRFIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9G IHZhbGlkX2F0IEZST00gJzIwMjUtMDEtMDEnIFRPICcyMDI2LTAxLTAxJworICBTRVQgcHJpY2Ug PSA4LjAwCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKyA8d2FpdGluZyAuLi4+CitzdGVwIHMyYzog Q09NTUlUOworc3RlcCBzMXVwZDIwMjU6IDwuLi4gY29tcGxldGVkPgorRVJST1I6ICBjb3VsZCBu b3Qgc2VyaWFsaXplIGFjY2VzcyBkdWUgdG8gY29uY3VycmVudCB1cGRhdGUKK3N0ZXAgczFjOiBD T01NSVQ7CitzdGVwIHMxcTogU0VMRUNUICogRlJPTSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwgdmFs aWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMjctMDEtMDEpfCA1 LjAwCitbMSwyKXxbMjAyNy0wMS0wMSwyMDI4LTAxLTAxKXwxMC4wMAorWzEsMil8WzIwMjgtMDEt MDEsMjAzMC0wMS0wMSl8IDUuMDAKKygzIHJvd3MpCisKKworc3RhcnRpbmcgcGVybXV0YXRpb246 IHMxcnIgczJyciBzMXEgczJ1cGQyMDI1MDMgczF1cGQyMDI1IHMyYyBzMWMgczFxCitzdGVwIHMx cnI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBSRVBFQVRBQkxFIFJFQUQ7CitzdGVwIHMycnI6IEJF R0lOIElTT0xBVElPTiBMRVZFTCBSRVBFQVRBQkxFIFJFQUQ7CitzdGVwIHMxcTogU0VMRUNUICog RlJPTSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAgICAg ICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sx LDIpfFsyMDIwLTAxLTAxLDIwMzAtMDEtMDEpfCA1LjAwCisoMSByb3cpCisKK3N0ZXAgczJ1cGQy MDI1MDM6IAorICBVUERBVEUgcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJP TSAnMjAyNS0wMy0wMScgVE8gJzIwMjUtMDQtMDEnCisgIFNFVCBwcmljZSA9IDEwLjAwCisgIFdI RVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMXVwZDIwMjU6IAorICBVUERBVEUgcHJvZHVjdHMK KyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wMS0wMScgVE8gJzIwMjYtMDEt MDEnCisgIFNFVCBwcmljZSA9IDguMDAKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworIDx3YWl0aW5n IC4uLj4KK3N0ZXAgczJjOiBDT01NSVQ7CitzdGVwIHMxdXBkMjAyNTogPC4uLiBjb21wbGV0ZWQ+ CitFUlJPUjogIGNvdWxkIG5vdCBzZXJpYWxpemUgYWNjZXNzIGR1ZSB0byBjb25jdXJyZW50IHVw ZGF0ZQorc3RlcCBzMWM6IENPTU1JVDsKK3N0ZXAgczFxOiBTRUxFQ1QgKiBGUk9NIHByb2R1Y3Rz IE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAgfHBy aWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAtMDEt MDEsMjAyNS0wMy0wMSl8IDUuMDAKK1sxLDIpfFsyMDI1LTAzLTAxLDIwMjUtMDQtMDEpfDEwLjAw CitbMSwyKXxbMjAyNS0wNC0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDMgcm93cykKKworCitzdGFy dGluZyBwZXJtdXRhdGlvbjogczFyciBzMnJyIHMxcSBzMnVwZDIwMjUyMDI2IHMxdXBkMjAyNSBz MmMgczFjIHMxcQorc3RlcCBzMXJyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgUkVQRUFUQUJMRSBS RUFEOworc3RlcCBzMnJyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgUkVQRUFUQUJMRSBSRUFEOwor c3RlcCBzMXE6IFNFTEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0Owor aWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDEg cm93KQorCitzdGVwIHMydXBkMjAyNTIwMjY6IAorICBVUERBVEUgcHJvZHVjdHMKKyAgRk9SIFBP UlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wNi0wMScgVE8gJzIwMjYtMDYtMDEnCisgIFNF VCBwcmljZSA9IDEwLjAwCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMXVwZDIwMjU6 IAorICBVUERBVEUgcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAy NS0wMS0wMScgVE8gJzIwMjYtMDEtMDEnCisgIFNFVCBwcmljZSA9IDguMDAKKyAgV0hFUkUgaWQg PSAnWzEsMiknOworIDx3YWl0aW5nIC4uLj4KK3N0ZXAgczJjOiBDT01NSVQ7CitzdGVwIHMxdXBk MjAyNTogPC4uLiBjb21wbGV0ZWQ+CitFUlJPUjogIGNvdWxkIG5vdCBzZXJpYWxpemUgYWNjZXNz IGR1ZSB0byBjb25jdXJyZW50IHVwZGF0ZQorc3RlcCBzMWM6IENPTU1JVDsKK3N0ZXAgczFxOiBT RUxFQ1QgKiBGUk9NIHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK2lkICAgfHZhbGlk X2F0ICAgICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSst LS0tLQorWzEsMil8WzIwMjAtMDEtMDEsMjAyNS0wNi0wMSl8IDUuMDAKK1sxLDIpfFsyMDI1LTA2 LTAxLDIwMjYtMDYtMDEpfDEwLjAwCitbMSwyKXxbMjAyNi0wNi0wMSwyMDMwLTAxLTAxKXwgNS4w MAorKDMgcm93cykKKworCitzdGFydGluZyBwZXJtdXRhdGlvbjogczFyciBzMnJyIHMyZGVsMjAy NyBzMmMgczF1cGQyMDI1IHMxYyBzMXEKK3N0ZXAgczFycjogQkVHSU4gSVNPTEFUSU9OIExFVkVM IFJFUEVBVEFCTEUgUkVBRDsKK3N0ZXAgczJycjogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFJFUEVB VEFCTEUgUkVBRDsKK3N0ZXAgczJkZWwyMDI3OiAKKyAgREVMRVRFIEZST00gcHJvZHVjdHMKKyAg Rk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNy0wMS0wMScgVE8gJzIwMjgtMDEtMDEn CisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMmM6IENPTU1JVDsKK3N0ZXAgczF1cGQy MDI1OiAKKyAgVVBEQVRFIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00g JzIwMjUtMDEtMDEnIFRPICcyMDI2LTAxLTAxJworICBTRVQgcHJpY2UgPSA4LjAwCisgIFdIRVJF IGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMWM6IENPTU1JVDsKK3N0ZXAgczFxOiBTRUxFQ1QgKiBG Uk9NIHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK2lkICAgfHZhbGlkX2F0ICAgICAg ICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEs Mil8WzIwMjAtMDEtMDEsMjAyNS0wMS0wMSl8IDUuMDAKK1sxLDIpfFsyMDI1LTAxLTAxLDIwMjYt MDEtMDEpfCA4LjAwCitbMSwyKXxbMjAyNi0wMS0wMSwyMDI3LTAxLTAxKXwgNS4wMAorWzEsMil8 WzIwMjgtMDEtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKyg0IHJvd3MpCisKKworc3RhcnRpbmcgcGVy bXV0YXRpb246IHMxcnIgczJyciBzMmRlbDIwMjUwMyBzMmMgczF1cGQyMDI1IHMxYyBzMXEKK3N0 ZXAgczFycjogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFJFUEVBVEFCTEUgUkVBRDsKK3N0ZXAgczJy cjogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFJFUEVBVEFCTEUgUkVBRDsKK3N0ZXAgczJkZWwyMDI1 MDM6IAorICBERUxFVEUgRlJPTSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBG Uk9NICcyMDI1LTAzLTAxJyBUTyAnMjAyNS0wNC0wMScKKyAgV0hFUkUgaWQgPSAnWzEsMiknOwor CitzdGVwIHMyYzogQ09NTUlUOworc3RlcCBzMXVwZDIwMjU6IAorICBVUERBVEUgcHJvZHVjdHMK KyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wMS0wMScgVE8gJzIwMjYtMDEt MDEnCisgIFNFVCBwcmljZSA9IDguMDAKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMx YzogQ09NTUlUOworc3RlcCBzMXE6IFNFTEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQs IHZhbGlkX2F0OworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDI1LTAxLTAx KXwgNS4wMAorWzEsMil8WzIwMjUtMDEtMDEsMjAyNS0wMy0wMSl8IDguMDAKK1sxLDIpfFsyMDI1 LTA0LTAxLDIwMjYtMDEtMDEpfCA4LjAwCitbMSwyKXxbMjAyNi0wMS0wMSwyMDMwLTAxLTAxKXwg NS4wMAorKDQgcm93cykKKworCitzdGFydGluZyBwZXJtdXRhdGlvbjogczFyciBzMnJyIHMyZGVs MjAyNTIwMjYgczJjIHMxdXBkMjAyNSBzMWMgczFxCitzdGVwIHMxcnI6IEJFR0lOIElTT0xBVElP TiBMRVZFTCBSRVBFQVRBQkxFIFJFQUQ7CitzdGVwIHMycnI6IEJFR0lOIElTT0xBVElPTiBMRVZF TCBSRVBFQVRBQkxFIFJFQUQ7CitzdGVwIHMyZGVsMjAyNTIwMjY6IAorICBERUxFVEUgRlJPTSBw cm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTA2LTAxJyBUTyAn MjAyNi0wNi0wMScKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMyYzogQ09NTUlUOwor c3RlcCBzMXVwZDIwMjU6IAorICBVUERBVEUgcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFs aWRfYXQgRlJPTSAnMjAyNS0wMS0wMScgVE8gJzIwMjYtMDEtMDEnCisgIFNFVCBwcmljZSA9IDgu MDAKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMxYzogQ09NTUlUOworc3RlcCBzMXE6 IFNFTEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworaWQgICB8dmFs aWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t Ky0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDI1LTAxLTAxKXwgNS4wMAorWzEsMil8WzIwMjUt MDEtMDEsMjAyNS0wNi0wMSl8IDguMDAKK1sxLDIpfFsyMDI2LTA2LTAxLDIwMzAtMDEtMDEpfCA1 LjAwCisoMyByb3dzKQorCisKK3N0YXJ0aW5nIHBlcm11dGF0aW9uOiBzMXJyIHMycnIgczF1cGQy MDI1IHMxYyBzMmRlbDIwMjcgczJjIHMxcQorc3RlcCBzMXJyOiBCRUdJTiBJU09MQVRJT04gTEVW RUwgUkVQRUFUQUJMRSBSRUFEOworc3RlcCBzMnJyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgUkVQ RUFUQUJMRSBSRUFEOworc3RlcCBzMXVwZDIwMjU6IAorICBVUERBVEUgcHJvZHVjdHMKKyAgRk9S IFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wMS0wMScgVE8gJzIwMjYtMDEtMDEnCisg IFNFVCBwcmljZSA9IDguMDAKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMxYzogQ09N TUlUOworc3RlcCBzMmRlbDIwMjc6IAorICBERUxFVEUgRlJPTSBwcm9kdWN0cworICBGT1IgUE9S VElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI3LTAxLTAxJyBUTyAnMjAyOC0wMS0wMScKKyAgV0hF UkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMyYzogQ09NTUlUOworc3RlcCBzMXE6IFNFTEVDVCAq IEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworaWQgICB8dmFsaWRfYXQgICAg ICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitb MSwyKXxbMjAyMC0wMS0wMSwyMDI1LTAxLTAxKXwgNS4wMAorWzEsMil8WzIwMjUtMDEtMDEsMjAy Ni0wMS0wMSl8IDguMDAKK1sxLDIpfFsyMDI2LTAxLTAxLDIwMjctMDEtMDEpfCA1LjAwCitbMSwy KXxbMjAyOC0wMS0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDQgcm93cykKKworCitzdGFydGluZyBw ZXJtdXRhdGlvbjogczFyciBzMnJyIHMxdXBkMjAyNSBzMWMgczJkZWwyMDI1MDMgczJjIHMxcQor c3RlcCBzMXJyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgUkVQRUFUQUJMRSBSRUFEOworc3RlcCBz MnJyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgUkVQRUFUQUJMRSBSRUFEOworc3RlcCBzMXVwZDIw MjU6IAorICBVUERBVEUgcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAn MjAyNS0wMS0wMScgVE8gJzIwMjYtMDEtMDEnCisgIFNFVCBwcmljZSA9IDguMDAKKyAgV0hFUkUg aWQgPSAnWzEsMiknOworCitzdGVwIHMxYzogQ09NTUlUOworc3RlcCBzMmRlbDIwMjUwMzogCisg IERFTEVURSBGUk9NIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIw MjUtMDMtMDEnIFRPICcyMDI1LTA0LTAxJworICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAg czJjOiBDT01NSVQ7CitzdGVwIHMxcTogU0VMRUNUICogRlJPTSBwcm9kdWN0cyBPUkRFUiBCWSBp ZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQorLS0tLS0r LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMjUtMDEt MDEpfCA1LjAwCitbMSwyKXxbMjAyNS0wMS0wMSwyMDI1LTAzLTAxKXwgOC4wMAorWzEsMil8WzIw MjUtMDQtMDEsMjAyNi0wMS0wMSl8IDguMDAKK1sxLDIpfFsyMDI2LTAxLTAxLDIwMzAtMDEtMDEp fCA1LjAwCisoNCByb3dzKQorCisKK3N0YXJ0aW5nIHBlcm11dGF0aW9uOiBzMXJyIHMycnIgczF1 cGQyMDI1IHMxYyBzMmRlbDIwMjUyMDI2IHMyYyBzMXEKK3N0ZXAgczFycjogQkVHSU4gSVNPTEFU SU9OIExFVkVMIFJFUEVBVEFCTEUgUkVBRDsKK3N0ZXAgczJycjogQkVHSU4gSVNPTEFUSU9OIExF VkVMIFJFUEVBVEFCTEUgUkVBRDsKK3N0ZXAgczF1cGQyMDI1OiAKKyAgVVBEQVRFIHByb2R1Y3Rz CisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDEtMDEnIFRPICcyMDI2LTAx LTAxJworICBTRVQgcHJpY2UgPSA4LjAwCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBz MWM6IENPTU1JVDsKK3N0ZXAgczJkZWwyMDI1MjAyNjogCisgIERFTEVURSBGUk9NIHByb2R1Y3Rz CisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDYtMDEnIFRPICcyMDI2LTA2 LTAxJworICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAgczJjOiBDT01NSVQ7CitzdGVwIHMx cTogU0VMRUNUICogRlJPTSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2 YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMjUtMDEtMDEpfCA1LjAwCitbMSwyKXxbMjAy NS0wMS0wMSwyMDI1LTA2LTAxKXwgOC4wMAorWzEsMil8WzIwMjYtMDYtMDEsMjAzMC0wMS0wMSl8 IDUuMDAKKygzIHJvd3MpCisKKworc3RhcnRpbmcgcGVybXV0YXRpb246IHMxcnIgczJyciBzMmRl bDIwMjcgczF1cGQyMDI1IHMyYyBzMWMgczFxCitzdGVwIHMxcnI6IEJFR0lOIElTT0xBVElPTiBM RVZFTCBSRVBFQVRBQkxFIFJFQUQ7CitzdGVwIHMycnI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBS RVBFQVRBQkxFIFJFQUQ7CitzdGVwIHMyZGVsMjAyNzogCisgIERFTEVURSBGUk9NIHByb2R1Y3Rz CisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjctMDEtMDEnIFRPICcyMDI4LTAx LTAxJworICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAgczF1cGQyMDI1OiAKKyAgVVBEQVRF IHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDEtMDEnIFRP ICcyMDI2LTAxLTAxJworICBTRVQgcHJpY2UgPSA4LjAwCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsK KyA8d2FpdGluZyAuLi4+CitzdGVwIHMyYzogQ09NTUlUOworc3RlcCBzMXVwZDIwMjU6IDwuLi4g Y29tcGxldGVkPgorRVJST1I6ICBjb3VsZCBub3Qgc2VyaWFsaXplIGFjY2VzcyBkdWUgdG8gY29u Y3VycmVudCBkZWxldGUKK3N0ZXAgczFjOiBDT01NSVQ7CitzdGVwIHMxcTogU0VMRUNUICogRlJP TSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAgICAgICAg ICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIp fFsyMDIwLTAxLTAxLDIwMjctMDEtMDEpfCA1LjAwCitbMSwyKXxbMjAyOC0wMS0wMSwyMDMwLTAx LTAxKXwgNS4wMAorKDIgcm93cykKKworCitzdGFydGluZyBwZXJtdXRhdGlvbjogczFyciBzMnJy IHMyZGVsMjAyNTAzIHMxdXBkMjAyNSBzMmMgczFjIHMxcQorc3RlcCBzMXJyOiBCRUdJTiBJU09M QVRJT04gTEVWRUwgUkVQRUFUQUJMRSBSRUFEOworc3RlcCBzMnJyOiBCRUdJTiBJU09MQVRJT04g TEVWRUwgUkVQRUFUQUJMRSBSRUFEOworc3RlcCBzMmRlbDIwMjUwMzogCisgIERFTEVURSBGUk9N IHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDMtMDEnIFRP ICcyMDI1LTA0LTAxJworICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAgczF1cGQyMDI1OiAK KyAgVVBEQVRFIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUt MDEtMDEnIFRPICcyMDI2LTAxLTAxJworICBTRVQgcHJpY2UgPSA4LjAwCisgIFdIRVJFIGlkID0g J1sxLDIpJzsKKyA8d2FpdGluZyAuLi4+CitzdGVwIHMyYzogQ09NTUlUOworc3RlcCBzMXVwZDIw MjU6IDwuLi4gY29tcGxldGVkPgorRVJST1I6ICBjb3VsZCBub3Qgc2VyaWFsaXplIGFjY2VzcyBk dWUgdG8gY29uY3VycmVudCBkZWxldGUKK3N0ZXAgczFjOiBDT01NSVQ7CitzdGVwIHMxcTogU0VM RUNUICogRlJPTSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9h dCAgICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0t LS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMjUtMDMtMDEpfCA1LjAwCitbMSwyKXxbMjAyNS0wNC0w MSwyMDMwLTAxLTAxKXwgNS4wMAorKDIgcm93cykKKworCitzdGFydGluZyBwZXJtdXRhdGlvbjog czFyciBzMnJyIHMyZGVsMjAyNTIwMjYgczF1cGQyMDI1IHMyYyBzMWMgczFxCitzdGVwIHMxcnI6 IEJFR0lOIElTT0xBVElPTiBMRVZFTCBSRVBFQVRBQkxFIFJFQUQ7CitzdGVwIHMycnI6IEJFR0lO IElTT0xBVElPTiBMRVZFTCBSRVBFQVRBQkxFIFJFQUQ7CitzdGVwIHMyZGVsMjAyNTIwMjY6IAor ICBERUxFVEUgRlJPTSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcy MDI1LTA2LTAxJyBUTyAnMjAyNi0wNi0wMScKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVw IHMxdXBkMjAyNTogCisgIFVQREFURSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9h dCBGUk9NICcyMDI1LTAxLTAxJyBUTyAnMjAyNi0wMS0wMScKKyAgU0VUIHByaWNlID0gOC4wMAor ICBXSEVSRSBpZCA9ICdbMSwyKSc7CisgPHdhaXRpbmcgLi4uPgorc3RlcCBzMmM6IENPTU1JVDsK K3N0ZXAgczF1cGQyMDI1OiA8Li4uIGNvbXBsZXRlZD4KK0VSUk9SOiAgY291bGQgbm90IHNlcmlh bGl6ZSBhY2Nlc3MgZHVlIHRvIGNvbmN1cnJlbnQgZGVsZXRlCitzdGVwIHMxYzogQ09NTUlUOwor c3RlcCBzMXE6IFNFTEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0Owor aWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDI1LTA2LTAxKXwgNS4wMAorWzEs Mil8WzIwMjYtMDYtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKygyIHJvd3MpCisKKworc3RhcnRpbmcg cGVybXV0YXRpb246IHMxcnIgczJyciBzMXEgczJkZWwyMDI3IHMyYyBzMXVwZDIwMjUgczFjIHMx cQorc3RlcCBzMXJyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgUkVQRUFUQUJMRSBSRUFEOworc3Rl cCBzMnJyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgUkVQRUFUQUJMRSBSRUFEOworc3RlcCBzMXE6 IFNFTEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworaWQgICB8dmFs aWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t Ky0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDEgcm93KQorCitz dGVwIHMyZGVsMjAyNzogCisgIERFTEVURSBGUk9NIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9G IHZhbGlkX2F0IEZST00gJzIwMjctMDEtMDEnIFRPICcyMDI4LTAxLTAxJworICBXSEVSRSBpZCA9 ICdbMSwyKSc7CisKK3N0ZXAgczJjOiBDT01NSVQ7CitzdGVwIHMxdXBkMjAyNTogCisgIFVQREFU RSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTAxLTAxJyBU TyAnMjAyNi0wMS0wMScKKyAgU0VUIHByaWNlID0gOC4wMAorICBXSEVSRSBpZCA9ICdbMSwyKSc7 CisKK0VSUk9SOiAgY291bGQgbm90IHNlcmlhbGl6ZSBhY2Nlc3MgZHVlIHRvIGNvbmN1cnJlbnQg ZGVsZXRlCitzdGVwIHMxYzogQ09NTUlUOworc3RlcCBzMXE6IFNFTEVDVCAqIEZST00gcHJvZHVj dHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8 cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0w MS0wMSwyMDI3LTAxLTAxKXwgNS4wMAorWzEsMil8WzIwMjgtMDEtMDEsMjAzMC0wMS0wMSl8IDUu MDAKKygyIHJvd3MpCisKKworc3RhcnRpbmcgcGVybXV0YXRpb246IHMxcnIgczJyciBzMXEgczJk ZWwyMDI1MDMgczJjIHMxdXBkMjAyNSBzMWMgczFxCitzdGVwIHMxcnI6IEJFR0lOIElTT0xBVElP TiBMRVZFTCBSRVBFQVRBQkxFIFJFQUQ7CitzdGVwIHMycnI6IEJFR0lOIElTT0xBVElPTiBMRVZF TCBSRVBFQVRBQkxFIFJFQUQ7CitzdGVwIHMxcTogU0VMRUNUICogRlJPTSBwcm9kdWN0cyBPUkRF UiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQor LS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIw MzAtMDEtMDEpfCA1LjAwCisoMSByb3cpCisKK3N0ZXAgczJkZWwyMDI1MDM6IAorICBERUxFVEUg RlJPTSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTAzLTAx JyBUTyAnMjAyNS0wNC0wMScKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMyYzogQ09N TUlUOworc3RlcCBzMXVwZDIwMjU6IAorICBVUERBVEUgcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04g T0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wMS0wMScgVE8gJzIwMjYtMDEtMDEnCisgIFNFVCBwcmlj ZSA9IDguMDAKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitFUlJPUjogIGNvdWxkIG5vdCBzZXJp YWxpemUgYWNjZXNzIGR1ZSB0byBjb25jdXJyZW50IGRlbGV0ZQorc3RlcCBzMWM6IENPTU1JVDsK K3N0ZXAgczFxOiBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsK K2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0t LS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAtMDEtMDEsMjAyNS0wMy0wMSl8IDUuMDAKK1sx LDIpfFsyMDI1LTA0LTAxLDIwMzAtMDEtMDEpfCA1LjAwCisoMiByb3dzKQorCisKK3N0YXJ0aW5n IHBlcm11dGF0aW9uOiBzMXJyIHMycnIgczFxIHMyZGVsMjAyNTIwMjYgczJjIHMxdXBkMjAyNSBz MWMgczFxCitzdGVwIHMxcnI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBSRVBFQVRBQkxFIFJFQUQ7 CitzdGVwIHMycnI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBSRVBFQVRBQkxFIFJFQUQ7CitzdGVw IHMxcTogU0VMRUNUICogRlJPTSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAg IHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMzAtMDEtMDEpfCA1LjAwCisoMSByb3cp CisKK3N0ZXAgczJkZWwyMDI1MjAyNjogCisgIERFTEVURSBGUk9NIHByb2R1Y3RzCisgIEZPUiBQ T1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDYtMDEnIFRPICcyMDI2LTA2LTAxJworICBX SEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAgczJjOiBDT01NSVQ7CitzdGVwIHMxdXBkMjAyNTog CisgIFVQREFURSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1 LTAxLTAxJyBUTyAnMjAyNi0wMS0wMScKKyAgU0VUIHByaWNlID0gOC4wMAorICBXSEVSRSBpZCA9 ICdbMSwyKSc7CisKK0VSUk9SOiAgY291bGQgbm90IHNlcmlhbGl6ZSBhY2Nlc3MgZHVlIHRvIGNv bmN1cnJlbnQgZGVsZXRlCitzdGVwIHMxYzogQ09NTUlUOworc3RlcCBzMXE6IFNFTEVDVCAqIEZS T00gcHJvZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworaWQgICB8dmFsaWRfYXQgICAgICAg ICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwy KXxbMjAyMC0wMS0wMSwyMDI1LTA2LTAxKXwgNS4wMAorWzEsMil8WzIwMjYtMDYtMDEsMjAzMC0w MS0wMSl8IDUuMDAKKygyIHJvd3MpCisKKworc3RhcnRpbmcgcGVybXV0YXRpb246IHMxcnIgczJy ciBzMXEgczF1cGQyMDI1IHMxYyBzMmRlbDIwMjcgczJjIHMxcQorc3RlcCBzMXJyOiBCRUdJTiBJ U09MQVRJT04gTEVWRUwgUkVQRUFUQUJMRSBSRUFEOworc3RlcCBzMnJyOiBCRUdJTiBJU09MQVRJ T04gTEVWRUwgUkVQRUFUQUJMRSBSRUFEOworc3RlcCBzMXE6IFNFTEVDVCAqIEZST00gcHJvZHVj dHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8 cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0w MS0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDEgcm93KQorCitzdGVwIHMxdXBkMjAyNTogCisgIFVQ REFURSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTAxLTAx JyBUTyAnMjAyNi0wMS0wMScKKyAgU0VUIHByaWNlID0gOC4wMAorICBXSEVSRSBpZCA9ICdbMSwy KSc7CisKK3N0ZXAgczFjOiBDT01NSVQ7CitzdGVwIHMyZGVsMjAyNzogCisgIERFTEVURSBGUk9N IHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjctMDEtMDEnIFRP ICcyMDI4LTAxLTAxJworICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAgczJjOiBDT01NSVQ7 CitzdGVwIHMxcTogU0VMRUNUICogRlJPTSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7 CitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMjUtMDEtMDEpfCA1LjAwCitb MSwyKXxbMjAyNS0wMS0wMSwyMDI2LTAxLTAxKXwgOC4wMAorWzEsMil8WzIwMjYtMDEtMDEsMjAy Ny0wMS0wMSl8IDUuMDAKK1sxLDIpfFsyMDI4LTAxLTAxLDIwMzAtMDEtMDEpfCA1LjAwCisoNCBy b3dzKQorCisKK3N0YXJ0aW5nIHBlcm11dGF0aW9uOiBzMXJyIHMycnIgczFxIHMxdXBkMjAyNSBz MWMgczJkZWwyMDI1MDMgczJjIHMxcQorc3RlcCBzMXJyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwg UkVQRUFUQUJMRSBSRUFEOworc3RlcCBzMnJyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgUkVQRUFU QUJMRSBSRUFEOworc3RlcCBzMXE6IFNFTEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQs IHZhbGlkX2F0OworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDMwLTAxLTAx KXwgNS4wMAorKDEgcm93KQorCitzdGVwIHMxdXBkMjAyNTogCisgIFVQREFURSBwcm9kdWN0cwor ICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTAxLTAxJyBUTyAnMjAyNi0wMS0w MScKKyAgU0VUIHByaWNlID0gOC4wMAorICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAgczFj OiBDT01NSVQ7CitzdGVwIHMyZGVsMjAyNTAzOiAKKyAgREVMRVRFIEZST00gcHJvZHVjdHMKKyAg Rk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wMy0wMScgVE8gJzIwMjUtMDQtMDEn CisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMmM6IENPTU1JVDsKK3N0ZXAgczFxOiBT RUxFQ1QgKiBGUk9NIHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK2lkICAgfHZhbGlk X2F0ICAgICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSst LS0tLQorWzEsMil8WzIwMjAtMDEtMDEsMjAyNS0wMS0wMSl8IDUuMDAKK1sxLDIpfFsyMDI1LTAx LTAxLDIwMjUtMDMtMDEpfCA4LjAwCitbMSwyKXxbMjAyNS0wNC0wMSwyMDI2LTAxLTAxKXwgOC4w MAorWzEsMil8WzIwMjYtMDEtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKyg0IHJvd3MpCisKKworc3Rh cnRpbmcgcGVybXV0YXRpb246IHMxcnIgczJyciBzMXEgczF1cGQyMDI1IHMxYyBzMmRlbDIwMjUy MDI2IHMyYyBzMXEKK3N0ZXAgczFycjogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFJFUEVBVEFCTEUg UkVBRDsKK3N0ZXAgczJycjogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFJFUEVBVEFCTEUgUkVBRDsK K3N0ZXAgczFxOiBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsK K2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0t LS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAtMDEtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKygx IHJvdykKKworc3RlcCBzMXVwZDIwMjU6IAorICBVUERBVEUgcHJvZHVjdHMKKyAgRk9SIFBPUlRJ T04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wMS0wMScgVE8gJzIwMjYtMDEtMDEnCisgIFNFVCBw cmljZSA9IDguMDAKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMxYzogQ09NTUlUOwor c3RlcCBzMmRlbDIwMjUyMDI2OiAKKyAgREVMRVRFIEZST00gcHJvZHVjdHMKKyAgRk9SIFBPUlRJ T04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wNi0wMScgVE8gJzIwMjYtMDYtMDEnCisgIFdIRVJF IGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMmM6IENPTU1JVDsKK3N0ZXAgczFxOiBTRUxFQ1QgKiBG Uk9NIHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK2lkICAgfHZhbGlkX2F0ICAgICAg ICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEs Mil8WzIwMjAtMDEtMDEsMjAyNS0wMS0wMSl8IDUuMDAKK1sxLDIpfFsyMDI1LTAxLTAxLDIwMjUt MDYtMDEpfCA4LjAwCitbMSwyKXxbMjAyNi0wNi0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDMgcm93 cykKKworCitzdGFydGluZyBwZXJtdXRhdGlvbjogczFyciBzMnJyIHMxcSBzMmRlbDIwMjcgczF1 cGQyMDI1IHMyYyBzMWMgczFxCitzdGVwIHMxcnI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBSRVBF QVRBQkxFIFJFQUQ7CitzdGVwIHMycnI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBSRVBFQVRBQkxF IFJFQUQ7CitzdGVwIHMxcTogU0VMRUNUICogRlJPTSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwgdmFs aWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMzAtMDEtMDEpfCA1 LjAwCisoMSByb3cpCisKK3N0ZXAgczJkZWwyMDI3OiAKKyAgREVMRVRFIEZST00gcHJvZHVjdHMK KyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNy0wMS0wMScgVE8gJzIwMjgtMDEt MDEnCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMXVwZDIwMjU6IAorICBVUERBVEUg cHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wMS0wMScgVE8g JzIwMjYtMDEtMDEnCisgIFNFVCBwcmljZSA9IDguMDAKKyAgV0hFUkUgaWQgPSAnWzEsMiknOwor IDx3YWl0aW5nIC4uLj4KK3N0ZXAgczJjOiBDT01NSVQ7CitzdGVwIHMxdXBkMjAyNTogPC4uLiBj b21wbGV0ZWQ+CitFUlJPUjogIGNvdWxkIG5vdCBzZXJpYWxpemUgYWNjZXNzIGR1ZSB0byBjb25j dXJyZW50IGRlbGV0ZQorc3RlcCBzMWM6IENPTU1JVDsKK3N0ZXAgczFxOiBTRUxFQ1QgKiBGUk9N IHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK2lkICAgfHZhbGlkX2F0ICAgICAgICAg ICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8 WzIwMjAtMDEtMDEsMjAyNy0wMS0wMSl8IDUuMDAKK1sxLDIpfFsyMDI4LTAxLTAxLDIwMzAtMDEt MDEpfCA1LjAwCisoMiByb3dzKQorCisKK3N0YXJ0aW5nIHBlcm11dGF0aW9uOiBzMXJyIHMycnIg czFxIHMyZGVsMjAyNTAzIHMxdXBkMjAyNSBzMmMgczFjIHMxcQorc3RlcCBzMXJyOiBCRUdJTiBJ U09MQVRJT04gTEVWRUwgUkVQRUFUQUJMRSBSRUFEOworc3RlcCBzMnJyOiBCRUdJTiBJU09MQVRJ T04gTEVWRUwgUkVQRUFUQUJMRSBSRUFEOworc3RlcCBzMXE6IFNFTEVDVCAqIEZST00gcHJvZHVj dHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8 cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0w MS0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDEgcm93KQorCitzdGVwIHMyZGVsMjAyNTAzOiAKKyAg REVMRVRFIEZST00gcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAy NS0wMy0wMScgVE8gJzIwMjUtMDQtMDEnCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBz MXVwZDIwMjU6IAorICBVUERBVEUgcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQg RlJPTSAnMjAyNS0wMS0wMScgVE8gJzIwMjYtMDEtMDEnCisgIFNFVCBwcmljZSA9IDguMDAKKyAg V0hFUkUgaWQgPSAnWzEsMiknOworIDx3YWl0aW5nIC4uLj4KK3N0ZXAgczJjOiBDT01NSVQ7Citz dGVwIHMxdXBkMjAyNTogPC4uLiBjb21wbGV0ZWQ+CitFUlJPUjogIGNvdWxkIG5vdCBzZXJpYWxp emUgYWNjZXNzIGR1ZSB0byBjb25jdXJyZW50IGRlbGV0ZQorc3RlcCBzMWM6IENPTU1JVDsKK3N0 ZXAgczFxOiBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK2lk ICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0t LS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAtMDEtMDEsMjAyNS0wMy0wMSl8IDUuMDAKK1sxLDIp fFsyMDI1LTA0LTAxLDIwMzAtMDEtMDEpfCA1LjAwCisoMiByb3dzKQorCisKK3N0YXJ0aW5nIHBl cm11dGF0aW9uOiBzMXJyIHMycnIgczFxIHMyZGVsMjAyNTIwMjYgczF1cGQyMDI1IHMyYyBzMWMg czFxCitzdGVwIHMxcnI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBSRVBFQVRBQkxFIFJFQUQ7Citz dGVwIHMycnI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBSRVBFQVRBQkxFIFJFQUQ7CitzdGVwIHMx cTogU0VMRUNUICogRlJPTSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2 YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMzAtMDEtMDEpfCA1LjAwCisoMSByb3cpCisK K3N0ZXAgczJkZWwyMDI1MjAyNjogCisgIERFTEVURSBGUk9NIHByb2R1Y3RzCisgIEZPUiBQT1JU SU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDYtMDEnIFRPICcyMDI2LTA2LTAxJworICBXSEVS RSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAgczF1cGQyMDI1OiAKKyAgVVBEQVRFIHByb2R1Y3RzCisg IEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDEtMDEnIFRPICcyMDI2LTAxLTAx JworICBTRVQgcHJpY2UgPSA4LjAwCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKyA8d2FpdGluZyAu Li4+CitzdGVwIHMyYzogQ09NTUlUOworc3RlcCBzMXVwZDIwMjU6IDwuLi4gY29tcGxldGVkPgor RVJST1I6ICBjb3VsZCBub3Qgc2VyaWFsaXplIGFjY2VzcyBkdWUgdG8gY29uY3VycmVudCBkZWxl dGUKK3N0ZXAgczFjOiBDT01NSVQ7CitzdGVwIHMxcTogU0VMRUNUICogRlJPTSBwcm9kdWN0cyBP UkRFUiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmlj ZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAx LDIwMjUtMDYtMDEpfCA1LjAwCitbMSwyKXxbMjAyNi0wNi0wMSwyMDMwLTAxLTAxKXwgNS4wMAor KDIgcm93cykKKworCitzdGFydGluZyBwZXJtdXRhdGlvbjogczFyciBzMnJyIHMydXBkMjAyNyBz MmMgczFkZWwyMDI1IHMxYyBzMXEKK3N0ZXAgczFycjogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFJF UEVBVEFCTEUgUkVBRDsKK3N0ZXAgczJycjogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFJFUEVBVEFC TEUgUkVBRDsKK3N0ZXAgczJ1cGQyMDI3OiAKKyAgVVBEQVRFIHByb2R1Y3RzCisgIEZPUiBQT1JU SU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjctMDEtMDEnIFRPICcyMDI4LTAxLTAxJworICBTRVQg cHJpY2UgPSAxMC4wMAorICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAgczJjOiBDT01NSVQ7 CitzdGVwIHMxZGVsMjAyNTogCisgIERFTEVURSBGUk9NIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9O IE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDEtMDEnIFRPICcyMDI2LTAxLTAxJworICBXSEVSRSBp ZCA9ICdbMSwyKSc7CisKK3N0ZXAgczFjOiBDT01NSVQ7CitzdGVwIHMxcTogU0VMRUNUICogRlJP TSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAgICAgICAg ICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIp fFsyMDIwLTAxLTAxLDIwMjUtMDEtMDEpfCA1LjAwCitbMSwyKXxbMjAyNi0wMS0wMSwyMDI3LTAx LTAxKXwgNS4wMAorWzEsMil8WzIwMjctMDEtMDEsMjAyOC0wMS0wMSl8MTAuMDAKK1sxLDIpfFsy MDI4LTAxLTAxLDIwMzAtMDEtMDEpfCA1LjAwCisoNCByb3dzKQorCisKK3N0YXJ0aW5nIHBlcm11 dGF0aW9uOiBzMXJyIHMycnIgczJ1cGQyMDI1MDMgczJjIHMxZGVsMjAyNSBzMWMgczFxCitzdGVw IHMxcnI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBSRVBFQVRBQkxFIFJFQUQ7CitzdGVwIHMycnI6 IEJFR0lOIElTT0xBVElPTiBMRVZFTCBSRVBFQVRBQkxFIFJFQUQ7CitzdGVwIHMydXBkMjAyNTAz OiAKKyAgVVBEQVRFIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIw MjUtMDMtMDEnIFRPICcyMDI1LTA0LTAxJworICBTRVQgcHJpY2UgPSAxMC4wMAorICBXSEVSRSBp ZCA9ICdbMSwyKSc7CisKK3N0ZXAgczJjOiBDT01NSVQ7CitzdGVwIHMxZGVsMjAyNTogCisgIERF TEVURSBGUk9NIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUt MDEtMDEnIFRPICcyMDI2LTAxLTAxJworICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAgczFj OiBDT01NSVQ7CitzdGVwIHMxcTogU0VMRUNUICogRlJPTSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwg dmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMjUtMDEtMDEp fCA1LjAwCitbMSwyKXxbMjAyNi0wMS0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDIgcm93cykKKwor CitzdGFydGluZyBwZXJtdXRhdGlvbjogczFyciBzMnJyIHMydXBkMjAyNTIwMjYgczJjIHMxZGVs MjAyNSBzMWMgczFxCitzdGVwIHMxcnI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBSRVBFQVRBQkxF IFJFQUQ7CitzdGVwIHMycnI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBSRVBFQVRBQkxFIFJFQUQ7 CitzdGVwIHMydXBkMjAyNTIwMjY6IAorICBVUERBVEUgcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04g T0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wNi0wMScgVE8gJzIwMjYtMDYtMDEnCisgIFNFVCBwcmlj ZSA9IDEwLjAwCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMmM6IENPTU1JVDsKK3N0 ZXAgczFkZWwyMDI1OiAKKyAgREVMRVRFIEZST00gcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0Yg dmFsaWRfYXQgRlJPTSAnMjAyNS0wMS0wMScgVE8gJzIwMjYtMDEtMDEnCisgIFdIRVJFIGlkID0g J1sxLDIpJzsKKworc3RlcCBzMWM6IENPTU1JVDsKK3N0ZXAgczFxOiBTRUxFQ1QgKiBGUk9NIHBy b2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAg ICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIw MjAtMDEtMDEsMjAyNS0wMS0wMSl8IDUuMDAKK1sxLDIpfFsyMDI2LTAxLTAxLDIwMjYtMDYtMDEp fDEwLjAwCitbMSwyKXxbMjAyNi0wNi0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDMgcm93cykKKwor CitzdGFydGluZyBwZXJtdXRhdGlvbjogczFyciBzMnJyIHMxZGVsMjAyNSBzMWMgczJ1cGQyMDI3 IHMyYyBzMXEKK3N0ZXAgczFycjogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFJFUEVBVEFCTEUgUkVB RDsKK3N0ZXAgczJycjogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFJFUEVBVEFCTEUgUkVBRDsKK3N0 ZXAgczFkZWwyMDI1OiAKKyAgREVMRVRFIEZST00gcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0Yg dmFsaWRfYXQgRlJPTSAnMjAyNS0wMS0wMScgVE8gJzIwMjYtMDEtMDEnCisgIFdIRVJFIGlkID0g J1sxLDIpJzsKKworc3RlcCBzMWM6IENPTU1JVDsKK3N0ZXAgczJ1cGQyMDI3OiAKKyAgVVBEQVRF IHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjctMDEtMDEnIFRP ICcyMDI4LTAxLTAxJworICBTRVQgcHJpY2UgPSAxMC4wMAorICBXSEVSRSBpZCA9ICdbMSwyKSc7 CisKK3N0ZXAgczJjOiBDT01NSVQ7CitzdGVwIHMxcTogU0VMRUNUICogRlJPTSBwcm9kdWN0cyBP UkRFUiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmlj ZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAx LDIwMjUtMDEtMDEpfCA1LjAwCitbMSwyKXxbMjAyNi0wMS0wMSwyMDI3LTAxLTAxKXwgNS4wMAor WzEsMil8WzIwMjctMDEtMDEsMjAyOC0wMS0wMSl8MTAuMDAKK1sxLDIpfFsyMDI4LTAxLTAxLDIw MzAtMDEtMDEpfCA1LjAwCisoNCByb3dzKQorCisKK3N0YXJ0aW5nIHBlcm11dGF0aW9uOiBzMXJy IHMycnIgczFkZWwyMDI1IHMxYyBzMnVwZDIwMjUwMyBzMmMgczFxCitzdGVwIHMxcnI6IEJFR0lO IElTT0xBVElPTiBMRVZFTCBSRVBFQVRBQkxFIFJFQUQ7CitzdGVwIHMycnI6IEJFR0lOIElTT0xB VElPTiBMRVZFTCBSRVBFQVRBQkxFIFJFQUQ7CitzdGVwIHMxZGVsMjAyNTogCisgIERFTEVURSBG Uk9NIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDEtMDEn IFRPICcyMDI2LTAxLTAxJworICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAgczFjOiBDT01N SVQ7CitzdGVwIHMydXBkMjAyNTAzOiAKKyAgVVBEQVRFIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9O IE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDMtMDEnIFRPICcyMDI1LTA0LTAxJworICBTRVQgcHJp Y2UgPSAxMC4wMAorICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAgczJjOiBDT01NSVQ7Citz dGVwIHMxcTogU0VMRUNUICogRlJPTSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7Citp ZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMjUtMDEtMDEpfCA1LjAwCitbMSwy KXxbMjAyNi0wMS0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDIgcm93cykKKworCitzdGFydGluZyBw ZXJtdXRhdGlvbjogczFyciBzMnJyIHMxZGVsMjAyNSBzMWMgczJ1cGQyMDI1MjAyNiBzMmMgczFx CitzdGVwIHMxcnI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBSRVBFQVRBQkxFIFJFQUQ7CitzdGVw IHMycnI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBSRVBFQVRBQkxFIFJFQUQ7CitzdGVwIHMxZGVs MjAyNTogCisgIERFTEVURSBGUk9NIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0 IEZST00gJzIwMjUtMDEtMDEnIFRPICcyMDI2LTAxLTAxJworICBXSEVSRSBpZCA9ICdbMSwyKSc7 CisKK3N0ZXAgczFjOiBDT01NSVQ7CitzdGVwIHMydXBkMjAyNTIwMjY6IAorICBVUERBVEUgcHJv ZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wNi0wMScgVE8gJzIw MjYtMDYtMDEnCisgIFNFVCBwcmljZSA9IDEwLjAwCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKwor c3RlcCBzMmM6IENPTU1JVDsKK3N0ZXAgczFxOiBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzIE9SREVS IEJZIGlkLCB2YWxpZF9hdDsKK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAgfHByaWNlCist LS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAtMDEtMDEsMjAy NS0wMS0wMSl8IDUuMDAKK1sxLDIpfFsyMDI2LTAxLTAxLDIwMjYtMDYtMDEpfDEwLjAwCitbMSwy KXxbMjAyNi0wNi0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDMgcm93cykKKworCitzdGFydGluZyBw ZXJtdXRhdGlvbjogczFyciBzMnJyIHMydXBkMjAyNyBzMWRlbDIwMjUgczJjIHMxYyBzMXEKK3N0 ZXAgczFycjogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFJFUEVBVEFCTEUgUkVBRDsKK3N0ZXAgczJy cjogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFJFUEVBVEFCTEUgUkVBRDsKK3N0ZXAgczJ1cGQyMDI3 OiAKKyAgVVBEQVRFIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIw MjctMDEtMDEnIFRPICcyMDI4LTAxLTAxJworICBTRVQgcHJpY2UgPSAxMC4wMAorICBXSEVSRSBp ZCA9ICdbMSwyKSc7CisKK3N0ZXAgczFkZWwyMDI1OiAKKyAgREVMRVRFIEZST00gcHJvZHVjdHMK KyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wMS0wMScgVE8gJzIwMjYtMDEt MDEnCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKyA8d2FpdGluZyAuLi4+CitzdGVwIHMyYzogQ09N TUlUOworc3RlcCBzMWRlbDIwMjU6IDwuLi4gY29tcGxldGVkPgorRVJST1I6ICBjb3VsZCBub3Qg c2VyaWFsaXplIGFjY2VzcyBkdWUgdG8gY29uY3VycmVudCB1cGRhdGUKK3N0ZXAgczFjOiBDT01N SVQ7CitzdGVwIHMxcTogU0VMRUNUICogRlJPTSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwgdmFsaWRf YXQ7CitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMjctMDEtMDEpfCA1LjAw CitbMSwyKXxbMjAyNy0wMS0wMSwyMDI4LTAxLTAxKXwxMC4wMAorWzEsMil8WzIwMjgtMDEtMDEs MjAzMC0wMS0wMSl8IDUuMDAKKygzIHJvd3MpCisKKworc3RhcnRpbmcgcGVybXV0YXRpb246IHMx cnIgczJyciBzMnVwZDIwMjUwMyBzMWRlbDIwMjUgczJjIHMxYyBzMXEKK3N0ZXAgczFycjogQkVH SU4gSVNPTEFUSU9OIExFVkVMIFJFUEVBVEFCTEUgUkVBRDsKK3N0ZXAgczJycjogQkVHSU4gSVNP TEFUSU9OIExFVkVMIFJFUEVBVEFCTEUgUkVBRDsKK3N0ZXAgczJ1cGQyMDI1MDM6IAorICBVUERB VEUgcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wMy0wMScg VE8gJzIwMjUtMDQtMDEnCisgIFNFVCBwcmljZSA9IDEwLjAwCisgIFdIRVJFIGlkID0gJ1sxLDIp JzsKKworc3RlcCBzMWRlbDIwMjU6IAorICBERUxFVEUgRlJPTSBwcm9kdWN0cworICBGT1IgUE9S VElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTAxLTAxJyBUTyAnMjAyNi0wMS0wMScKKyAgV0hF UkUgaWQgPSAnWzEsMiknOworIDx3YWl0aW5nIC4uLj4KK3N0ZXAgczJjOiBDT01NSVQ7CitzdGVw IHMxZGVsMjAyNTogPC4uLiBjb21wbGV0ZWQ+CitFUlJPUjogIGNvdWxkIG5vdCBzZXJpYWxpemUg YWNjZXNzIGR1ZSB0byBjb25jdXJyZW50IHVwZGF0ZQorc3RlcCBzMWM6IENPTU1JVDsKK3N0ZXAg czFxOiBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK2lkICAg fHZhbGlkX2F0ICAgICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0t LS0tLSstLS0tLQorWzEsMil8WzIwMjAtMDEtMDEsMjAyNS0wMy0wMSl8IDUuMDAKK1sxLDIpfFsy MDI1LTAzLTAxLDIwMjUtMDQtMDEpfDEwLjAwCitbMSwyKXxbMjAyNS0wNC0wMSwyMDMwLTAxLTAx KXwgNS4wMAorKDMgcm93cykKKworCitzdGFydGluZyBwZXJtdXRhdGlvbjogczFyciBzMnJyIHMy dXBkMjAyNTIwMjYgczFkZWwyMDI1IHMyYyBzMWMgczFxCitzdGVwIHMxcnI6IEJFR0lOIElTT0xB VElPTiBMRVZFTCBSRVBFQVRBQkxFIFJFQUQ7CitzdGVwIHMycnI6IEJFR0lOIElTT0xBVElPTiBM RVZFTCBSRVBFQVRBQkxFIFJFQUQ7CitzdGVwIHMydXBkMjAyNTIwMjY6IAorICBVUERBVEUgcHJv ZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wNi0wMScgVE8gJzIw MjYtMDYtMDEnCisgIFNFVCBwcmljZSA9IDEwLjAwCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKwor c3RlcCBzMWRlbDIwMjU6IAorICBERUxFVEUgRlJPTSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBP RiB2YWxpZF9hdCBGUk9NICcyMDI1LTAxLTAxJyBUTyAnMjAyNi0wMS0wMScKKyAgV0hFUkUgaWQg PSAnWzEsMiknOworIDx3YWl0aW5nIC4uLj4KK3N0ZXAgczJjOiBDT01NSVQ7CitzdGVwIHMxZGVs MjAyNTogPC4uLiBjb21wbGV0ZWQ+CitFUlJPUjogIGNvdWxkIG5vdCBzZXJpYWxpemUgYWNjZXNz IGR1ZSB0byBjb25jdXJyZW50IHVwZGF0ZQorc3RlcCBzMWM6IENPTU1JVDsKK3N0ZXAgczFxOiBT RUxFQ1QgKiBGUk9NIHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK2lkICAgfHZhbGlk X2F0ICAgICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSst LS0tLQorWzEsMil8WzIwMjAtMDEtMDEsMjAyNS0wNi0wMSl8IDUuMDAKK1sxLDIpfFsyMDI1LTA2 LTAxLDIwMjYtMDYtMDEpfDEwLjAwCitbMSwyKXxbMjAyNi0wNi0wMSwyMDMwLTAxLTAxKXwgNS4w MAorKDMgcm93cykKKworCitzdGFydGluZyBwZXJtdXRhdGlvbjogczFyciBzMnJyIHMxcSBzMnVw ZDIwMjcgczJjIHMxZGVsMjAyNSBzMWMgczFxCitzdGVwIHMxcnI6IEJFR0lOIElTT0xBVElPTiBM RVZFTCBSRVBFQVRBQkxFIFJFQUQ7CitzdGVwIHMycnI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBS RVBFQVRBQkxFIFJFQUQ7CitzdGVwIHMxcTogU0VMRUNUICogRlJPTSBwcm9kdWN0cyBPUkRFUiBC WSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQorLS0t LS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMzAt MDEtMDEpfCA1LjAwCisoMSByb3cpCisKK3N0ZXAgczJ1cGQyMDI3OiAKKyAgVVBEQVRFIHByb2R1 Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjctMDEtMDEnIFRPICcyMDI4 LTAxLTAxJworICBTRVQgcHJpY2UgPSAxMC4wMAorICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0 ZXAgczJjOiBDT01NSVQ7CitzdGVwIHMxZGVsMjAyNTogCisgIERFTEVURSBGUk9NIHByb2R1Y3Rz CisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDEtMDEnIFRPICcyMDI2LTAx LTAxJworICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK0VSUk9SOiAgY291bGQgbm90IHNlcmlhbGl6 ZSBhY2Nlc3MgZHVlIHRvIGNvbmN1cnJlbnQgdXBkYXRlCitzdGVwIHMxYzogQ09NTUlUOworc3Rl cCBzMXE6IFNFTEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworaWQg ICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDI3LTAxLTAxKXwgNS4wMAorWzEsMil8 WzIwMjctMDEtMDEsMjAyOC0wMS0wMSl8MTAuMDAKK1sxLDIpfFsyMDI4LTAxLTAxLDIwMzAtMDEt MDEpfCA1LjAwCisoMyByb3dzKQorCisKK3N0YXJ0aW5nIHBlcm11dGF0aW9uOiBzMXJyIHMycnIg czFxIHMydXBkMjAyNTAzIHMyYyBzMWRlbDIwMjUgczFjIHMxcQorc3RlcCBzMXJyOiBCRUdJTiBJ U09MQVRJT04gTEVWRUwgUkVQRUFUQUJMRSBSRUFEOworc3RlcCBzMnJyOiBCRUdJTiBJU09MQVRJ T04gTEVWRUwgUkVQRUFUQUJMRSBSRUFEOworc3RlcCBzMXE6IFNFTEVDVCAqIEZST00gcHJvZHVj dHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8 cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0w MS0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDEgcm93KQorCitzdGVwIHMydXBkMjAyNTAzOiAKKyAg VVBEQVRFIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDMt MDEnIFRPICcyMDI1LTA0LTAxJworICBTRVQgcHJpY2UgPSAxMC4wMAorICBXSEVSRSBpZCA9ICdb MSwyKSc7CisKK3N0ZXAgczJjOiBDT01NSVQ7CitzdGVwIHMxZGVsMjAyNTogCisgIERFTEVURSBG Uk9NIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDEtMDEn IFRPICcyMDI2LTAxLTAxJworICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK0VSUk9SOiAgY291bGQg bm90IHNlcmlhbGl6ZSBhY2Nlc3MgZHVlIHRvIGNvbmN1cnJlbnQgdXBkYXRlCitzdGVwIHMxYzog Q09NTUlUOworc3RlcCBzMXE6IFNFTEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQsIHZh bGlkX2F0OworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDI1LTAzLTAxKXwg NS4wMAorWzEsMil8WzIwMjUtMDMtMDEsMjAyNS0wNC0wMSl8MTAuMDAKK1sxLDIpfFsyMDI1LTA0 LTAxLDIwMzAtMDEtMDEpfCA1LjAwCisoMyByb3dzKQorCisKK3N0YXJ0aW5nIHBlcm11dGF0aW9u OiBzMXJyIHMycnIgczFxIHMydXBkMjAyNTIwMjYgczJjIHMxZGVsMjAyNSBzMWMgczFxCitzdGVw IHMxcnI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBSRVBFQVRBQkxFIFJFQUQ7CitzdGVwIHMycnI6 IEJFR0lOIElTT0xBVElPTiBMRVZFTCBSRVBFQVRBQkxFIFJFQUQ7CitzdGVwIHMxcTogU0VMRUNU ICogRlJPTSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAg ICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0K K1sxLDIpfFsyMDIwLTAxLTAxLDIwMzAtMDEtMDEpfCA1LjAwCisoMSByb3cpCisKK3N0ZXAgczJ1 cGQyMDI1MjAyNjogCisgIFVQREFURSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9h dCBGUk9NICcyMDI1LTA2LTAxJyBUTyAnMjAyNi0wNi0wMScKKyAgU0VUIHByaWNlID0gMTAuMDAK KyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMyYzogQ09NTUlUOworc3RlcCBzMWRlbDIw MjU6IAorICBERUxFVEUgRlJPTSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBG Uk9NICcyMDI1LTAxLTAxJyBUTyAnMjAyNi0wMS0wMScKKyAgV0hFUkUgaWQgPSAnWzEsMiknOwor CitFUlJPUjogIGNvdWxkIG5vdCBzZXJpYWxpemUgYWNjZXNzIGR1ZSB0byBjb25jdXJyZW50IHVw ZGF0ZQorc3RlcCBzMWM6IENPTU1JVDsKK3N0ZXAgczFxOiBTRUxFQ1QgKiBGUk9NIHByb2R1Y3Rz IE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAgfHBy aWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAtMDEt MDEsMjAyNS0wNi0wMSl8IDUuMDAKK1sxLDIpfFsyMDI1LTA2LTAxLDIwMjYtMDYtMDEpfDEwLjAw CitbMSwyKXxbMjAyNi0wNi0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDMgcm93cykKKworCitzdGFy dGluZyBwZXJtdXRhdGlvbjogczFyciBzMnJyIHMxcSBzMWRlbDIwMjUgczFjIHMydXBkMjAyNyBz MmMgczFxCitzdGVwIHMxcnI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBSRVBFQVRBQkxFIFJFQUQ7 CitzdGVwIHMycnI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBSRVBFQVRBQkxFIFJFQUQ7CitzdGVw IHMxcTogU0VMRUNUICogRlJPTSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAg IHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMzAtMDEtMDEpfCA1LjAwCisoMSByb3cp CisKK3N0ZXAgczFkZWwyMDI1OiAKKyAgREVMRVRFIEZST00gcHJvZHVjdHMKKyAgRk9SIFBPUlRJ T04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wMS0wMScgVE8gJzIwMjYtMDEtMDEnCisgIFdIRVJF IGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMWM6IENPTU1JVDsKK3N0ZXAgczJ1cGQyMDI3OiAKKyAg VVBEQVRFIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjctMDEt MDEnIFRPICcyMDI4LTAxLTAxJworICBTRVQgcHJpY2UgPSAxMC4wMAorICBXSEVSRSBpZCA9ICdb MSwyKSc7CisKK3N0ZXAgczJjOiBDT01NSVQ7CitzdGVwIHMxcTogU0VMRUNUICogRlJPTSBwcm9k dWN0cyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAg IHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIw LTAxLTAxLDIwMjUtMDEtMDEpfCA1LjAwCitbMSwyKXxbMjAyNi0wMS0wMSwyMDI3LTAxLTAxKXwg NS4wMAorWzEsMil8WzIwMjctMDEtMDEsMjAyOC0wMS0wMSl8MTAuMDAKK1sxLDIpfFsyMDI4LTAx LTAxLDIwMzAtMDEtMDEpfCA1LjAwCisoNCByb3dzKQorCisKK3N0YXJ0aW5nIHBlcm11dGF0aW9u OiBzMXJyIHMycnIgczFxIHMxZGVsMjAyNSBzMWMgczJ1cGQyMDI1MDMgczJjIHMxcQorc3RlcCBz MXJyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgUkVQRUFUQUJMRSBSRUFEOworc3RlcCBzMnJyOiBC RUdJTiBJU09MQVRJT04gTEVWRUwgUkVQRUFUQUJMRSBSRUFEOworc3RlcCBzMXE6IFNFTEVDVCAq IEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworaWQgICB8dmFsaWRfYXQgICAg ICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitb MSwyKXxbMjAyMC0wMS0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDEgcm93KQorCitzdGVwIHMxZGVs MjAyNTogCisgIERFTEVURSBGUk9NIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0 IEZST00gJzIwMjUtMDEtMDEnIFRPICcyMDI2LTAxLTAxJworICBXSEVSRSBpZCA9ICdbMSwyKSc7 CisKK3N0ZXAgczFjOiBDT01NSVQ7CitzdGVwIHMydXBkMjAyNTAzOiAKKyAgVVBEQVRFIHByb2R1 Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDMtMDEnIFRPICcyMDI1 LTA0LTAxJworICBTRVQgcHJpY2UgPSAxMC4wMAorICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0 ZXAgczJjOiBDT01NSVQ7CitzdGVwIHMxcTogU0VMRUNUICogRlJPTSBwcm9kdWN0cyBPUkRFUiBC WSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQorLS0t LS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMjUt MDEtMDEpfCA1LjAwCitbMSwyKXxbMjAyNi0wMS0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDIgcm93 cykKKworCitzdGFydGluZyBwZXJtdXRhdGlvbjogczFyciBzMnJyIHMxcSBzMWRlbDIwMjUgczFj IHMydXBkMjAyNTIwMjYgczJjIHMxcQorc3RlcCBzMXJyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwg UkVQRUFUQUJMRSBSRUFEOworc3RlcCBzMnJyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgUkVQRUFU QUJMRSBSRUFEOworc3RlcCBzMXE6IFNFTEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQs IHZhbGlkX2F0OworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDMwLTAxLTAx KXwgNS4wMAorKDEgcm93KQorCitzdGVwIHMxZGVsMjAyNTogCisgIERFTEVURSBGUk9NIHByb2R1 Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDEtMDEnIFRPICcyMDI2 LTAxLTAxJworICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAgczFjOiBDT01NSVQ7CitzdGVw IHMydXBkMjAyNTIwMjY6IAorICBVUERBVEUgcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFs aWRfYXQgRlJPTSAnMjAyNS0wNi0wMScgVE8gJzIwMjYtMDYtMDEnCisgIFNFVCBwcmljZSA9IDEw LjAwCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMmM6IENPTU1JVDsKK3N0ZXAgczFx OiBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK2lkICAgfHZh bGlkX2F0ICAgICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0t LSstLS0tLQorWzEsMil8WzIwMjAtMDEtMDEsMjAyNS0wMS0wMSl8IDUuMDAKK1sxLDIpfFsyMDI2 LTAxLTAxLDIwMjYtMDYtMDEpfDEwLjAwCitbMSwyKXxbMjAyNi0wNi0wMSwyMDMwLTAxLTAxKXwg NS4wMAorKDMgcm93cykKKworCitzdGFydGluZyBwZXJtdXRhdGlvbjogczFyciBzMnJyIHMxcSBz MnVwZDIwMjcgczFkZWwyMDI1IHMyYyBzMWMgczFxCitzdGVwIHMxcnI6IEJFR0lOIElTT0xBVElP TiBMRVZFTCBSRVBFQVRBQkxFIFJFQUQ7CitzdGVwIHMycnI6IEJFR0lOIElTT0xBVElPTiBMRVZF TCBSRVBFQVRBQkxFIFJFQUQ7CitzdGVwIHMxcTogU0VMRUNUICogRlJPTSBwcm9kdWN0cyBPUkRF UiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQor LS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIw MzAtMDEtMDEpfCA1LjAwCisoMSByb3cpCisKK3N0ZXAgczJ1cGQyMDI3OiAKKyAgVVBEQVRFIHBy b2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjctMDEtMDEnIFRPICcy MDI4LTAxLTAxJworICBTRVQgcHJpY2UgPSAxMC4wMAorICBXSEVSRSBpZCA9ICdbMSwyKSc7CisK K3N0ZXAgczFkZWwyMDI1OiAKKyAgREVMRVRFIEZST00gcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04g T0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wMS0wMScgVE8gJzIwMjYtMDEtMDEnCisgIFdIRVJFIGlk ID0gJ1sxLDIpJzsKKyA8d2FpdGluZyAuLi4+CitzdGVwIHMyYzogQ09NTUlUOworc3RlcCBzMWRl bDIwMjU6IDwuLi4gY29tcGxldGVkPgorRVJST1I6ICBjb3VsZCBub3Qgc2VyaWFsaXplIGFjY2Vz cyBkdWUgdG8gY29uY3VycmVudCB1cGRhdGUKK3N0ZXAgczFjOiBDT01NSVQ7CitzdGVwIHMxcTog U0VMRUNUICogRlJPTSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxp ZF9hdCAgICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0r LS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMjctMDEtMDEpfCA1LjAwCitbMSwyKXxbMjAyNy0w MS0wMSwyMDI4LTAxLTAxKXwxMC4wMAorWzEsMil8WzIwMjgtMDEtMDEsMjAzMC0wMS0wMSl8IDUu MDAKKygzIHJvd3MpCisKKworc3RhcnRpbmcgcGVybXV0YXRpb246IHMxcnIgczJyciBzMXEgczJ1 cGQyMDI1MDMgczFkZWwyMDI1IHMyYyBzMWMgczFxCitzdGVwIHMxcnI6IEJFR0lOIElTT0xBVElP TiBMRVZFTCBSRVBFQVRBQkxFIFJFQUQ7CitzdGVwIHMycnI6IEJFR0lOIElTT0xBVElPTiBMRVZF TCBSRVBFQVRBQkxFIFJFQUQ7CitzdGVwIHMxcTogU0VMRUNUICogRlJPTSBwcm9kdWN0cyBPUkRF UiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQor LS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIw MzAtMDEtMDEpfCA1LjAwCisoMSByb3cpCisKK3N0ZXAgczJ1cGQyMDI1MDM6IAorICBVUERBVEUg cHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wMy0wMScgVE8g JzIwMjUtMDQtMDEnCisgIFNFVCBwcmljZSA9IDEwLjAwCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsK Kworc3RlcCBzMWRlbDIwMjU6IAorICBERUxFVEUgRlJPTSBwcm9kdWN0cworICBGT1IgUE9SVElP TiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTAxLTAxJyBUTyAnMjAyNi0wMS0wMScKKyAgV0hFUkUg aWQgPSAnWzEsMiknOworIDx3YWl0aW5nIC4uLj4KK3N0ZXAgczJjOiBDT01NSVQ7CitzdGVwIHMx ZGVsMjAyNTogPC4uLiBjb21wbGV0ZWQ+CitFUlJPUjogIGNvdWxkIG5vdCBzZXJpYWxpemUgYWNj ZXNzIGR1ZSB0byBjb25jdXJyZW50IHVwZGF0ZQorc3RlcCBzMWM6IENPTU1JVDsKK3N0ZXAgczFx OiBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK2lkICAgfHZh bGlkX2F0ICAgICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0t LSstLS0tLQorWzEsMil8WzIwMjAtMDEtMDEsMjAyNS0wMy0wMSl8IDUuMDAKK1sxLDIpfFsyMDI1 LTAzLTAxLDIwMjUtMDQtMDEpfDEwLjAwCitbMSwyKXxbMjAyNS0wNC0wMSwyMDMwLTAxLTAxKXwg NS4wMAorKDMgcm93cykKKworCitzdGFydGluZyBwZXJtdXRhdGlvbjogczFyciBzMnJyIHMxcSBz MnVwZDIwMjUyMDI2IHMxZGVsMjAyNSBzMmMgczFjIHMxcQorc3RlcCBzMXJyOiBCRUdJTiBJU09M QVRJT04gTEVWRUwgUkVQRUFUQUJMRSBSRUFEOworc3RlcCBzMnJyOiBCRUdJTiBJU09MQVRJT04g TEVWRUwgUkVQRUFUQUJMRSBSRUFEOworc3RlcCBzMXE6IFNFTEVDVCAqIEZST00gcHJvZHVjdHMg T1JERVIgQlkgaWQsIHZhbGlkX2F0OworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJp Y2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0w MSwyMDMwLTAxLTAxKXwgNS4wMAorKDEgcm93KQorCitzdGVwIHMydXBkMjAyNTIwMjY6IAorICBV UERBVEUgcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wNi0w MScgVE8gJzIwMjYtMDYtMDEnCisgIFNFVCBwcmljZSA9IDEwLjAwCisgIFdIRVJFIGlkID0gJ1sx LDIpJzsKKworc3RlcCBzMWRlbDIwMjU6IAorICBERUxFVEUgRlJPTSBwcm9kdWN0cworICBGT1Ig UE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTAxLTAxJyBUTyAnMjAyNi0wMS0wMScKKyAg V0hFUkUgaWQgPSAnWzEsMiknOworIDx3YWl0aW5nIC4uLj4KK3N0ZXAgczJjOiBDT01NSVQ7Citz dGVwIHMxZGVsMjAyNTogPC4uLiBjb21wbGV0ZWQ+CitFUlJPUjogIGNvdWxkIG5vdCBzZXJpYWxp emUgYWNjZXNzIGR1ZSB0byBjb25jdXJyZW50IHVwZGF0ZQorc3RlcCBzMWM6IENPTU1JVDsKK3N0 ZXAgczFxOiBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK2lk ICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0t LS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAtMDEtMDEsMjAyNS0wNi0wMSl8IDUuMDAKK1sxLDIp fFsyMDI1LTA2LTAxLDIwMjYtMDYtMDEpfDEwLjAwCitbMSwyKXxbMjAyNi0wNi0wMSwyMDMwLTAx LTAxKXwgNS4wMAorKDMgcm93cykKKworCitzdGFydGluZyBwZXJtdXRhdGlvbjogczFyciBzMnJy IHMyZGVsMjAyNyBzMmMgczFkZWwyMDI1IHMxYyBzMXEKK3N0ZXAgczFycjogQkVHSU4gSVNPTEFU SU9OIExFVkVMIFJFUEVBVEFCTEUgUkVBRDsKK3N0ZXAgczJycjogQkVHSU4gSVNPTEFUSU9OIExF VkVMIFJFUEVBVEFCTEUgUkVBRDsKK3N0ZXAgczJkZWwyMDI3OiAKKyAgREVMRVRFIEZST00gcHJv ZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNy0wMS0wMScgVE8gJzIw MjgtMDEtMDEnCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMmM6IENPTU1JVDsKK3N0 ZXAgczFkZWwyMDI1OiAKKyAgREVMRVRFIEZST00gcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0Yg dmFsaWRfYXQgRlJPTSAnMjAyNS0wMS0wMScgVE8gJzIwMjYtMDEtMDEnCisgIFdIRVJFIGlkID0g J1sxLDIpJzsKKworc3RlcCBzMWM6IENPTU1JVDsKK3N0ZXAgczFxOiBTRUxFQ1QgKiBGUk9NIHBy b2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAg ICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIw MjAtMDEtMDEsMjAyNS0wMS0wMSl8IDUuMDAKK1sxLDIpfFsyMDI2LTAxLTAxLDIwMjctMDEtMDEp fCA1LjAwCitbMSwyKXxbMjAyOC0wMS0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDMgcm93cykKKwor CitzdGFydGluZyBwZXJtdXRhdGlvbjogczFyciBzMnJyIHMyZGVsMjAyNTAzIHMyYyBzMWRlbDIw MjUgczFjIHMxcQorc3RlcCBzMXJyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgUkVQRUFUQUJMRSBS RUFEOworc3RlcCBzMnJyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgUkVQRUFUQUJMRSBSRUFEOwor c3RlcCBzMmRlbDIwMjUwMzogCisgIERFTEVURSBGUk9NIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9O IE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDMtMDEnIFRPICcyMDI1LTA0LTAxJworICBXSEVSRSBp ZCA9ICdbMSwyKSc7CisKK3N0ZXAgczJjOiBDT01NSVQ7CitzdGVwIHMxZGVsMjAyNTogCisgIERF TEVURSBGUk9NIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUt MDEtMDEnIFRPICcyMDI2LTAxLTAxJworICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAgczFj OiBDT01NSVQ7CitzdGVwIHMxcTogU0VMRUNUICogRlJPTSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwg dmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMjUtMDEtMDEp fCA1LjAwCitbMSwyKXxbMjAyNi0wMS0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDIgcm93cykKKwor CitzdGFydGluZyBwZXJtdXRhdGlvbjogczFyciBzMnJyIHMyZGVsMjAyNTIwMjYgczJjIHMxZGVs MjAyNSBzMWMgczFxCitzdGVwIHMxcnI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBSRVBFQVRBQkxF IFJFQUQ7CitzdGVwIHMycnI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBSRVBFQVRBQkxFIFJFQUQ7 CitzdGVwIHMyZGVsMjAyNTIwMjY6IAorICBERUxFVEUgRlJPTSBwcm9kdWN0cworICBGT1IgUE9S VElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTA2LTAxJyBUTyAnMjAyNi0wNi0wMScKKyAgV0hF UkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMyYzogQ09NTUlUOworc3RlcCBzMWRlbDIwMjU6IAor ICBERUxFVEUgRlJPTSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcy MDI1LTAxLTAxJyBUTyAnMjAyNi0wMS0wMScKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVw IHMxYzogQ09NTUlUOworc3RlcCBzMXE6IFNFTEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkg aWQsIHZhbGlkX2F0OworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0t Ky0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDI1LTAx LTAxKXwgNS4wMAorWzEsMil8WzIwMjYtMDYtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKygyIHJvd3Mp CisKKworc3RhcnRpbmcgcGVybXV0YXRpb246IHMxcnIgczJyciBzMWRlbDIwMjUgczFjIHMyZGVs MjAyNyBzMmMgczFxCitzdGVwIHMxcnI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBSRVBFQVRBQkxF IFJFQUQ7CitzdGVwIHMycnI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBSRVBFQVRBQkxFIFJFQUQ7 CitzdGVwIHMxZGVsMjAyNTogCisgIERFTEVURSBGUk9NIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9O IE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDEtMDEnIFRPICcyMDI2LTAxLTAxJworICBXSEVSRSBp ZCA9ICdbMSwyKSc7CisKK3N0ZXAgczFjOiBDT01NSVQ7CitzdGVwIHMyZGVsMjAyNzogCisgIERF TEVURSBGUk9NIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjct MDEtMDEnIFRPICcyMDI4LTAxLTAxJworICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAgczJj OiBDT01NSVQ7CitzdGVwIHMxcTogU0VMRUNUICogRlJPTSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwg dmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMjUtMDEtMDEp fCA1LjAwCitbMSwyKXxbMjAyNi0wMS0wMSwyMDI3LTAxLTAxKXwgNS4wMAorWzEsMil8WzIwMjgt MDEtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKygzIHJvd3MpCisKKworc3RhcnRpbmcgcGVybXV0YXRp b246IHMxcnIgczJyciBzMWRlbDIwMjUgczFjIHMyZGVsMjAyNTAzIHMyYyBzMXEKK3N0ZXAgczFy cjogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFJFUEVBVEFCTEUgUkVBRDsKK3N0ZXAgczJycjogQkVH SU4gSVNPTEFUSU9OIExFVkVMIFJFUEVBVEFCTEUgUkVBRDsKK3N0ZXAgczFkZWwyMDI1OiAKKyAg REVMRVRFIEZST00gcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAy NS0wMS0wMScgVE8gJzIwMjYtMDEtMDEnCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBz MWM6IENPTU1JVDsKK3N0ZXAgczJkZWwyMDI1MDM6IAorICBERUxFVEUgRlJPTSBwcm9kdWN0cwor ICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTAzLTAxJyBUTyAnMjAyNS0wNC0w MScKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMyYzogQ09NTUlUOworc3RlcCBzMXE6 IFNFTEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworaWQgICB8dmFs aWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t Ky0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDI1LTAxLTAxKXwgNS4wMAorWzEsMil8WzIwMjYt MDEtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKygyIHJvd3MpCisKKworc3RhcnRpbmcgcGVybXV0YXRp b246IHMxcnIgczJyciBzMWRlbDIwMjUgczFjIHMyZGVsMjAyNTIwMjYgczJjIHMxcQorc3RlcCBz MXJyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgUkVQRUFUQUJMRSBSRUFEOworc3RlcCBzMnJyOiBC RUdJTiBJU09MQVRJT04gTEVWRUwgUkVQRUFUQUJMRSBSRUFEOworc3RlcCBzMWRlbDIwMjU6IAor ICBERUxFVEUgRlJPTSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcy MDI1LTAxLTAxJyBUTyAnMjAyNi0wMS0wMScKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVw IHMxYzogQ09NTUlUOworc3RlcCBzMmRlbDIwMjUyMDI2OiAKKyAgREVMRVRFIEZST00gcHJvZHVj dHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wNi0wMScgVE8gJzIwMjYt MDYtMDEnCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMmM6IENPTU1JVDsKK3N0ZXAg czFxOiBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK2lkICAg fHZhbGlkX2F0ICAgICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0t LS0tLSstLS0tLQorWzEsMil8WzIwMjAtMDEtMDEsMjAyNS0wMS0wMSl8IDUuMDAKK1sxLDIpfFsy MDI2LTA2LTAxLDIwMzAtMDEtMDEpfCA1LjAwCisoMiByb3dzKQorCisKK3N0YXJ0aW5nIHBlcm11 dGF0aW9uOiBzMXJyIHMycnIgczJkZWwyMDI3IHMxZGVsMjAyNSBzMmMgczFjIHMxcQorc3RlcCBz MXJyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgUkVQRUFUQUJMRSBSRUFEOworc3RlcCBzMnJyOiBC RUdJTiBJU09MQVRJT04gTEVWRUwgUkVQRUFUQUJMRSBSRUFEOworc3RlcCBzMmRlbDIwMjc6IAor ICBERUxFVEUgRlJPTSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcy MDI3LTAxLTAxJyBUTyAnMjAyOC0wMS0wMScKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVw IHMxZGVsMjAyNTogCisgIERFTEVURSBGUk9NIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZh bGlkX2F0IEZST00gJzIwMjUtMDEtMDEnIFRPICcyMDI2LTAxLTAxJworICBXSEVSRSBpZCA9ICdb MSwyKSc7CisgPHdhaXRpbmcgLi4uPgorc3RlcCBzMmM6IENPTU1JVDsKK3N0ZXAgczFkZWwyMDI1 OiA8Li4uIGNvbXBsZXRlZD4KK0VSUk9SOiAgY291bGQgbm90IHNlcmlhbGl6ZSBhY2Nlc3MgZHVl IHRvIGNvbmN1cnJlbnQgZGVsZXRlCitzdGVwIHMxYzogQ09NTUlUOworc3RlcCBzMXE6IFNFTEVD VCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworaWQgICB8dmFsaWRfYXQg ICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0t CitbMSwyKXxbMjAyMC0wMS0wMSwyMDI3LTAxLTAxKXwgNS4wMAorWzEsMil8WzIwMjgtMDEtMDEs MjAzMC0wMS0wMSl8IDUuMDAKKygyIHJvd3MpCisKKworc3RhcnRpbmcgcGVybXV0YXRpb246IHMx cnIgczJyciBzMmRlbDIwMjUwMyBzMWRlbDIwMjUgczJjIHMxYyBzMXEKK3N0ZXAgczFycjogQkVH SU4gSVNPTEFUSU9OIExFVkVMIFJFUEVBVEFCTEUgUkVBRDsKK3N0ZXAgczJycjogQkVHSU4gSVNP TEFUSU9OIExFVkVMIFJFUEVBVEFCTEUgUkVBRDsKK3N0ZXAgczJkZWwyMDI1MDM6IAorICBERUxF VEUgRlJPTSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTAz LTAxJyBUTyAnMjAyNS0wNC0wMScKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMxZGVs MjAyNTogCisgIERFTEVURSBGUk9NIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0 IEZST00gJzIwMjUtMDEtMDEnIFRPICcyMDI2LTAxLTAxJworICBXSEVSRSBpZCA9ICdbMSwyKSc7 CisgPHdhaXRpbmcgLi4uPgorc3RlcCBzMmM6IENPTU1JVDsKK3N0ZXAgczFkZWwyMDI1OiA8Li4u IGNvbXBsZXRlZD4KK0VSUk9SOiAgY291bGQgbm90IHNlcmlhbGl6ZSBhY2Nlc3MgZHVlIHRvIGNv bmN1cnJlbnQgZGVsZXRlCitzdGVwIHMxYzogQ09NTUlUOworc3RlcCBzMXE6IFNFTEVDVCAqIEZS T00gcHJvZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworaWQgICB8dmFsaWRfYXQgICAgICAg ICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwy KXxbMjAyMC0wMS0wMSwyMDI1LTAzLTAxKXwgNS4wMAorWzEsMil8WzIwMjUtMDQtMDEsMjAzMC0w MS0wMSl8IDUuMDAKKygyIHJvd3MpCisKKworc3RhcnRpbmcgcGVybXV0YXRpb246IHMxcnIgczJy ciBzMmRlbDIwMjUyMDI2IHMxZGVsMjAyNSBzMmMgczFjIHMxcQorc3RlcCBzMXJyOiBCRUdJTiBJ U09MQVRJT04gTEVWRUwgUkVQRUFUQUJMRSBSRUFEOworc3RlcCBzMnJyOiBCRUdJTiBJU09MQVRJ T04gTEVWRUwgUkVQRUFUQUJMRSBSRUFEOworc3RlcCBzMmRlbDIwMjUyMDI2OiAKKyAgREVMRVRF IEZST00gcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wNi0w MScgVE8gJzIwMjYtMDYtMDEnCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMWRlbDIw MjU6IAorICBERUxFVEUgRlJPTSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBG Uk9NICcyMDI1LTAxLTAxJyBUTyAnMjAyNi0wMS0wMScKKyAgV0hFUkUgaWQgPSAnWzEsMiknOwor IDx3YWl0aW5nIC4uLj4KK3N0ZXAgczJjOiBDT01NSVQ7CitzdGVwIHMxZGVsMjAyNTogPC4uLiBj b21wbGV0ZWQ+CitFUlJPUjogIGNvdWxkIG5vdCBzZXJpYWxpemUgYWNjZXNzIGR1ZSB0byBjb25j dXJyZW50IGRlbGV0ZQorc3RlcCBzMWM6IENPTU1JVDsKK3N0ZXAgczFxOiBTRUxFQ1QgKiBGUk9N IHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK2lkICAgfHZhbGlkX2F0ICAgICAgICAg ICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8 WzIwMjAtMDEtMDEsMjAyNS0wNi0wMSl8IDUuMDAKK1sxLDIpfFsyMDI2LTA2LTAxLDIwMzAtMDEt MDEpfCA1LjAwCisoMiByb3dzKQorCisKK3N0YXJ0aW5nIHBlcm11dGF0aW9uOiBzMXJyIHMycnIg czFxIHMyZGVsMjAyNyBzMmMgczFkZWwyMDI1IHMxYyBzMXEKK3N0ZXAgczFycjogQkVHSU4gSVNP TEFUSU9OIExFVkVMIFJFUEVBVEFCTEUgUkVBRDsKK3N0ZXAgczJycjogQkVHSU4gSVNPTEFUSU9O IExFVkVMIFJFUEVBVEFCTEUgUkVBRDsKK3N0ZXAgczFxOiBTRUxFQ1QgKiBGUk9NIHByb2R1Y3Rz IE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAgfHBy aWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAtMDEt MDEsMjAzMC0wMS0wMSl8IDUuMDAKKygxIHJvdykKKworc3RlcCBzMmRlbDIwMjc6IAorICBERUxF VEUgRlJPTSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI3LTAx LTAxJyBUTyAnMjAyOC0wMS0wMScKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMyYzog Q09NTUlUOworc3RlcCBzMWRlbDIwMjU6IAorICBERUxFVEUgRlJPTSBwcm9kdWN0cworICBGT1Ig UE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTAxLTAxJyBUTyAnMjAyNi0wMS0wMScKKyAg V0hFUkUgaWQgPSAnWzEsMiknOworCitFUlJPUjogIGNvdWxkIG5vdCBzZXJpYWxpemUgYWNjZXNz IGR1ZSB0byBjb25jdXJyZW50IGRlbGV0ZQorc3RlcCBzMWM6IENPTU1JVDsKK3N0ZXAgczFxOiBT RUxFQ1QgKiBGUk9NIHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK2lkICAgfHZhbGlk X2F0ICAgICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSst LS0tLQorWzEsMil8WzIwMjAtMDEtMDEsMjAyNy0wMS0wMSl8IDUuMDAKK1sxLDIpfFsyMDI4LTAx LTAxLDIwMzAtMDEtMDEpfCA1LjAwCisoMiByb3dzKQorCisKK3N0YXJ0aW5nIHBlcm11dGF0aW9u OiBzMXJyIHMycnIgczFxIHMyZGVsMjAyNTAzIHMyYyBzMWRlbDIwMjUgczFjIHMxcQorc3RlcCBz MXJyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgUkVQRUFUQUJMRSBSRUFEOworc3RlcCBzMnJyOiBC RUdJTiBJU09MQVRJT04gTEVWRUwgUkVQRUFUQUJMRSBSRUFEOworc3RlcCBzMXE6IFNFTEVDVCAq IEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworaWQgICB8dmFsaWRfYXQgICAg ICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitb MSwyKXxbMjAyMC0wMS0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDEgcm93KQorCitzdGVwIHMyZGVs MjAyNTAzOiAKKyAgREVMRVRFIEZST00gcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRf YXQgRlJPTSAnMjAyNS0wMy0wMScgVE8gJzIwMjUtMDQtMDEnCisgIFdIRVJFIGlkID0gJ1sxLDIp JzsKKworc3RlcCBzMmM6IENPTU1JVDsKK3N0ZXAgczFkZWwyMDI1OiAKKyAgREVMRVRFIEZST00g cHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wMS0wMScgVE8g JzIwMjYtMDEtMDEnCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworRVJST1I6ICBjb3VsZCBub3Qg c2VyaWFsaXplIGFjY2VzcyBkdWUgdG8gY29uY3VycmVudCBkZWxldGUKK3N0ZXAgczFjOiBDT01N SVQ7CitzdGVwIHMxcTogU0VMRUNUICogRlJPTSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwgdmFsaWRf YXQ7CitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMjUtMDMtMDEpfCA1LjAw CitbMSwyKXxbMjAyNS0wNC0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDIgcm93cykKKworCitzdGFy dGluZyBwZXJtdXRhdGlvbjogczFyciBzMnJyIHMxcSBzMmRlbDIwMjUyMDI2IHMyYyBzMWRlbDIw MjUgczFjIHMxcQorc3RlcCBzMXJyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgUkVQRUFUQUJMRSBS RUFEOworc3RlcCBzMnJyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgUkVQRUFUQUJMRSBSRUFEOwor c3RlcCBzMXE6IFNFTEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0Owor aWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDEg cm93KQorCitzdGVwIHMyZGVsMjAyNTIwMjY6IAorICBERUxFVEUgRlJPTSBwcm9kdWN0cworICBG T1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTA2LTAxJyBUTyAnMjAyNi0wNi0wMScK KyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMyYzogQ09NTUlUOworc3RlcCBzMWRlbDIw MjU6IAorICBERUxFVEUgRlJPTSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBG Uk9NICcyMDI1LTAxLTAxJyBUTyAnMjAyNi0wMS0wMScKKyAgV0hFUkUgaWQgPSAnWzEsMiknOwor CitFUlJPUjogIGNvdWxkIG5vdCBzZXJpYWxpemUgYWNjZXNzIGR1ZSB0byBjb25jdXJyZW50IGRl bGV0ZQorc3RlcCBzMWM6IENPTU1JVDsKK3N0ZXAgczFxOiBTRUxFQ1QgKiBGUk9NIHByb2R1Y3Rz IE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAgfHBy aWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAtMDEt MDEsMjAyNS0wNi0wMSl8IDUuMDAKK1sxLDIpfFsyMDI2LTA2LTAxLDIwMzAtMDEtMDEpfCA1LjAw CisoMiByb3dzKQorCisKK3N0YXJ0aW5nIHBlcm11dGF0aW9uOiBzMXJyIHMycnIgczFxIHMxZGVs MjAyNSBzMWMgczJkZWwyMDI3IHMyYyBzMXEKK3N0ZXAgczFycjogQkVHSU4gSVNPTEFUSU9OIExF VkVMIFJFUEVBVEFCTEUgUkVBRDsKK3N0ZXAgczJycjogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFJF UEVBVEFCTEUgUkVBRDsKK3N0ZXAgczFxOiBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzIE9SREVSIEJZ IGlkLCB2YWxpZF9hdDsKK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAgfHByaWNlCistLS0t LSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAtMDEtMDEsMjAzMC0w MS0wMSl8IDUuMDAKKygxIHJvdykKKworc3RlcCBzMWRlbDIwMjU6IAorICBERUxFVEUgRlJPTSBw cm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTAxLTAxJyBUTyAn MjAyNi0wMS0wMScKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMxYzogQ09NTUlUOwor c3RlcCBzMmRlbDIwMjc6IAorICBERUxFVEUgRlJPTSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBP RiB2YWxpZF9hdCBGUk9NICcyMDI3LTAxLTAxJyBUTyAnMjAyOC0wMS0wMScKKyAgV0hFUkUgaWQg PSAnWzEsMiknOworCitzdGVwIHMyYzogQ09NTUlUOworc3RlcCBzMXE6IFNFTEVDVCAqIEZST00g cHJvZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworaWQgICB8dmFsaWRfYXQgICAgICAgICAg ICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxb MjAyMC0wMS0wMSwyMDI1LTAxLTAxKXwgNS4wMAorWzEsMil8WzIwMjYtMDEtMDEsMjAyNy0wMS0w MSl8IDUuMDAKK1sxLDIpfFsyMDI4LTAxLTAxLDIwMzAtMDEtMDEpfCA1LjAwCisoMyByb3dzKQor CisKK3N0YXJ0aW5nIHBlcm11dGF0aW9uOiBzMXJyIHMycnIgczFxIHMxZGVsMjAyNSBzMWMgczJk ZWwyMDI1MDMgczJjIHMxcQorc3RlcCBzMXJyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgUkVQRUFU QUJMRSBSRUFEOworc3RlcCBzMnJyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgUkVQRUFUQUJMRSBS RUFEOworc3RlcCBzMXE6IFNFTEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlk X2F0OworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDMwLTAxLTAxKXwgNS4w MAorKDEgcm93KQorCitzdGVwIHMxZGVsMjAyNTogCisgIERFTEVURSBGUk9NIHByb2R1Y3RzCisg IEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDEtMDEnIFRPICcyMDI2LTAxLTAx JworICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAgczFjOiBDT01NSVQ7CitzdGVwIHMyZGVs MjAyNTAzOiAKKyAgREVMRVRFIEZST00gcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRf YXQgRlJPTSAnMjAyNS0wMy0wMScgVE8gJzIwMjUtMDQtMDEnCisgIFdIRVJFIGlkID0gJ1sxLDIp JzsKKworc3RlcCBzMmM6IENPTU1JVDsKK3N0ZXAgczFxOiBTRUxFQ1QgKiBGUk9NIHByb2R1Y3Rz IE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAgfHBy aWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAtMDEt MDEsMjAyNS0wMS0wMSl8IDUuMDAKK1sxLDIpfFsyMDI2LTAxLTAxLDIwMzAtMDEtMDEpfCA1LjAw CisoMiByb3dzKQorCisKK3N0YXJ0aW5nIHBlcm11dGF0aW9uOiBzMXJyIHMycnIgczFxIHMxZGVs MjAyNSBzMWMgczJkZWwyMDI1MjAyNiBzMmMgczFxCitzdGVwIHMxcnI6IEJFR0lOIElTT0xBVElP TiBMRVZFTCBSRVBFQVRBQkxFIFJFQUQ7CitzdGVwIHMycnI6IEJFR0lOIElTT0xBVElPTiBMRVZF TCBSRVBFQVRBQkxFIFJFQUQ7CitzdGVwIHMxcTogU0VMRUNUICogRlJPTSBwcm9kdWN0cyBPUkRF UiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQor LS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIw MzAtMDEtMDEpfCA1LjAwCisoMSByb3cpCisKK3N0ZXAgczFkZWwyMDI1OiAKKyAgREVMRVRFIEZS T00gcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wMS0wMScg VE8gJzIwMjYtMDEtMDEnCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMWM6IENPTU1J VDsKK3N0ZXAgczJkZWwyMDI1MjAyNjogCisgIERFTEVURSBGUk9NIHByb2R1Y3RzCisgIEZPUiBQ T1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDYtMDEnIFRPICcyMDI2LTA2LTAxJworICBX SEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAgczJjOiBDT01NSVQ7CitzdGVwIHMxcTogU0VMRUNU ICogRlJPTSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAg ICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0K K1sxLDIpfFsyMDIwLTAxLTAxLDIwMjUtMDEtMDEpfCA1LjAwCitbMSwyKXxbMjAyNi0wNi0wMSwy MDMwLTAxLTAxKXwgNS4wMAorKDIgcm93cykKKworCitzdGFydGluZyBwZXJtdXRhdGlvbjogczFy ciBzMnJyIHMxcSBzMmRlbDIwMjcgczFkZWwyMDI1IHMyYyBzMWMgczFxCitzdGVwIHMxcnI6IEJF R0lOIElTT0xBVElPTiBMRVZFTCBSRVBFQVRBQkxFIFJFQUQ7CitzdGVwIHMycnI6IEJFR0lOIElT T0xBVElPTiBMRVZFTCBSRVBFQVRBQkxFIFJFQUQ7CitzdGVwIHMxcTogU0VMRUNUICogRlJPTSBw cm9kdWN0cyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAg ICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsy MDIwLTAxLTAxLDIwMzAtMDEtMDEpfCA1LjAwCisoMSByb3cpCisKK3N0ZXAgczJkZWwyMDI3OiAK KyAgREVMRVRFIEZST00gcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAn MjAyNy0wMS0wMScgVE8gJzIwMjgtMDEtMDEnCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3Rl cCBzMWRlbDIwMjU6IAorICBERUxFVEUgRlJPTSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2 YWxpZF9hdCBGUk9NICcyMDI1LTAxLTAxJyBUTyAnMjAyNi0wMS0wMScKKyAgV0hFUkUgaWQgPSAn WzEsMiknOworIDx3YWl0aW5nIC4uLj4KK3N0ZXAgczJjOiBDT01NSVQ7CitzdGVwIHMxZGVsMjAy NTogPC4uLiBjb21wbGV0ZWQ+CitFUlJPUjogIGNvdWxkIG5vdCBzZXJpYWxpemUgYWNjZXNzIGR1 ZSB0byBjb25jdXJyZW50IGRlbGV0ZQorc3RlcCBzMWM6IENPTU1JVDsKK3N0ZXAgczFxOiBTRUxF Q1QgKiBGUk9NIHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK2lkICAgfHZhbGlkX2F0 ICAgICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0t LQorWzEsMil8WzIwMjAtMDEtMDEsMjAyNy0wMS0wMSl8IDUuMDAKK1sxLDIpfFsyMDI4LTAxLTAx LDIwMzAtMDEtMDEpfCA1LjAwCisoMiByb3dzKQorCisKK3N0YXJ0aW5nIHBlcm11dGF0aW9uOiBz MXJyIHMycnIgczFxIHMyZGVsMjAyNTAzIHMxZGVsMjAyNSBzMmMgczFjIHMxcQorc3RlcCBzMXJy OiBCRUdJTiBJU09MQVRJT04gTEVWRUwgUkVQRUFUQUJMRSBSRUFEOworc3RlcCBzMnJyOiBCRUdJ TiBJU09MQVRJT04gTEVWRUwgUkVQRUFUQUJMRSBSRUFEOworc3RlcCBzMXE6IFNFTEVDVCAqIEZS T00gcHJvZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworaWQgICB8dmFsaWRfYXQgICAgICAg ICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwy KXxbMjAyMC0wMS0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDEgcm93KQorCitzdGVwIHMyZGVsMjAy NTAzOiAKKyAgREVMRVRFIEZST00gcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQg RlJPTSAnMjAyNS0wMy0wMScgVE8gJzIwMjUtMDQtMDEnCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsK Kworc3RlcCBzMWRlbDIwMjU6IAorICBERUxFVEUgRlJPTSBwcm9kdWN0cworICBGT1IgUE9SVElP TiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTAxLTAxJyBUTyAnMjAyNi0wMS0wMScKKyAgV0hFUkUg aWQgPSAnWzEsMiknOworIDx3YWl0aW5nIC4uLj4KK3N0ZXAgczJjOiBDT01NSVQ7CitzdGVwIHMx ZGVsMjAyNTogPC4uLiBjb21wbGV0ZWQ+CitFUlJPUjogIGNvdWxkIG5vdCBzZXJpYWxpemUgYWNj ZXNzIGR1ZSB0byBjb25jdXJyZW50IGRlbGV0ZQorc3RlcCBzMWM6IENPTU1JVDsKK3N0ZXAgczFx OiBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK2lkICAgfHZh bGlkX2F0ICAgICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0t LSstLS0tLQorWzEsMil8WzIwMjAtMDEtMDEsMjAyNS0wMy0wMSl8IDUuMDAKK1sxLDIpfFsyMDI1 LTA0LTAxLDIwMzAtMDEtMDEpfCA1LjAwCisoMiByb3dzKQorCisKK3N0YXJ0aW5nIHBlcm11dGF0 aW9uOiBzMXJyIHMycnIgczFxIHMyZGVsMjAyNTIwMjYgczFkZWwyMDI1IHMyYyBzMWMgczFxCitz dGVwIHMxcnI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBSRVBFQVRBQkxFIFJFQUQ7CitzdGVwIHMy cnI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBSRVBFQVRBQkxFIFJFQUQ7CitzdGVwIHMxcTogU0VM RUNUICogRlJPTSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9h dCAgICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0t LS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMzAtMDEtMDEpfCA1LjAwCisoMSByb3cpCisKK3N0ZXAg czJkZWwyMDI1MjAyNjogCisgIERFTEVURSBGUk9NIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9G IHZhbGlkX2F0IEZST00gJzIwMjUtMDYtMDEnIFRPICcyMDI2LTA2LTAxJworICBXSEVSRSBpZCA9 ICdbMSwyKSc7CisKK3N0ZXAgczFkZWwyMDI1OiAKKyAgREVMRVRFIEZST00gcHJvZHVjdHMKKyAg Rk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wMS0wMScgVE8gJzIwMjYtMDEtMDEn CisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKyA8d2FpdGluZyAuLi4+CitzdGVwIHMyYzogQ09NTUlU Oworc3RlcCBzMWRlbDIwMjU6IDwuLi4gY29tcGxldGVkPgorRVJST1I6ICBjb3VsZCBub3Qgc2Vy aWFsaXplIGFjY2VzcyBkdWUgdG8gY29uY3VycmVudCBkZWxldGUKK3N0ZXAgczFjOiBDT01NSVQ7 CitzdGVwIHMxcTogU0VMRUNUICogRlJPTSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7 CitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMjUtMDYtMDEpfCA1LjAwCitb MSwyKXxbMjAyNi0wNi0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDIgcm93cykKKworCitzdGFydGlu ZyBwZXJtdXRhdGlvbjogczFzZXIgczJzZXIgczJ1cGQyMDI3IHMyYyBzMXVwZDIwMjUgczFjIHMx cQorc3RlcCBzMXNlcjogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFNFUklBTElaQUJMRTsKK3N0ZXAg czJzZXI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBTRVJJQUxJWkFCTEU7CitzdGVwIHMydXBkMjAy NzogCisgIFVQREFURSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcy MDI3LTAxLTAxJyBUTyAnMjAyOC0wMS0wMScKKyAgU0VUIHByaWNlID0gMTAuMDAKKyAgV0hFUkUg aWQgPSAnWzEsMiknOworCitzdGVwIHMyYzogQ09NTUlUOworc3RlcCBzMXVwZDIwMjU6IAorICBV UERBVEUgcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wMS0w MScgVE8gJzIwMjYtMDEtMDEnCisgIFNFVCBwcmljZSA9IDguMDAKKyAgV0hFUkUgaWQgPSAnWzEs MiknOworCitzdGVwIHMxYzogQ09NTUlUOworc3RlcCBzMXE6IFNFTEVDVCAqIEZST00gcHJvZHVj dHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8 cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0w MS0wMSwyMDI1LTAxLTAxKXwgNS4wMAorWzEsMil8WzIwMjUtMDEtMDEsMjAyNi0wMS0wMSl8IDgu MDAKK1sxLDIpfFsyMDI2LTAxLTAxLDIwMjctMDEtMDEpfCA1LjAwCitbMSwyKXxbMjAyNy0wMS0w MSwyMDI4LTAxLTAxKXwxMC4wMAorWzEsMil8WzIwMjgtMDEtMDEsMjAzMC0wMS0wMSl8IDUuMDAK Kyg1IHJvd3MpCisKKworc3RhcnRpbmcgcGVybXV0YXRpb246IHMxc2VyIHMyc2VyIHMydXBkMjAy NTAzIHMyYyBzMXVwZDIwMjUgczFjIHMxcQorc3RlcCBzMXNlcjogQkVHSU4gSVNPTEFUSU9OIExF VkVMIFNFUklBTElaQUJMRTsKK3N0ZXAgczJzZXI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBTRVJJ QUxJWkFCTEU7CitzdGVwIHMydXBkMjAyNTAzOiAKKyAgVVBEQVRFIHByb2R1Y3RzCisgIEZPUiBQ T1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDMtMDEnIFRPICcyMDI1LTA0LTAxJworICBT RVQgcHJpY2UgPSAxMC4wMAorICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAgczJjOiBDT01N SVQ7CitzdGVwIHMxdXBkMjAyNTogCisgIFVQREFURSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBP RiB2YWxpZF9hdCBGUk9NICcyMDI1LTAxLTAxJyBUTyAnMjAyNi0wMS0wMScKKyAgU0VUIHByaWNl ID0gOC4wMAorICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAgczFjOiBDT01NSVQ7CitzdGVw IHMxcTogU0VMRUNUICogRlJPTSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAg IHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMjUtMDEtMDEpfCA1LjAwCitbMSwyKXxb MjAyNS0wMS0wMSwyMDI1LTAzLTAxKXwgOC4wMAorWzEsMil8WzIwMjUtMDMtMDEsMjAyNS0wNC0w MSl8IDguMDAKK1sxLDIpfFsyMDI1LTA0LTAxLDIwMjYtMDEtMDEpfCA4LjAwCitbMSwyKXxbMjAy Ni0wMS0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDUgcm93cykKKworCitzdGFydGluZyBwZXJtdXRh dGlvbjogczFzZXIgczJzZXIgczJ1cGQyMDI1MjAyNiBzMmMgczF1cGQyMDI1IHMxYyBzMXEKK3N0 ZXAgczFzZXI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBTRVJJQUxJWkFCTEU7CitzdGVwIHMyc2Vy OiBCRUdJTiBJU09MQVRJT04gTEVWRUwgU0VSSUFMSVpBQkxFOworc3RlcCBzMnVwZDIwMjUyMDI2 OiAKKyAgVVBEQVRFIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIw MjUtMDYtMDEnIFRPICcyMDI2LTA2LTAxJworICBTRVQgcHJpY2UgPSAxMC4wMAorICBXSEVSRSBp ZCA9ICdbMSwyKSc7CisKK3N0ZXAgczJjOiBDT01NSVQ7CitzdGVwIHMxdXBkMjAyNTogCisgIFVQ REFURSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTAxLTAx JyBUTyAnMjAyNi0wMS0wMScKKyAgU0VUIHByaWNlID0gOC4wMAorICBXSEVSRSBpZCA9ICdbMSwy KSc7CisKK3N0ZXAgczFjOiBDT01NSVQ7CitzdGVwIHMxcTogU0VMRUNUICogRlJPTSBwcm9kdWN0 cyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxw cmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAx LTAxLDIwMjUtMDEtMDEpfCA1LjAwCitbMSwyKXxbMjAyNS0wMS0wMSwyMDI1LTA2LTAxKXwgOC4w MAorWzEsMil8WzIwMjUtMDYtMDEsMjAyNi0wMS0wMSl8IDguMDAKK1sxLDIpfFsyMDI2LTAxLTAx LDIwMjYtMDYtMDEpfDEwLjAwCitbMSwyKXxbMjAyNi0wNi0wMSwyMDMwLTAxLTAxKXwgNS4wMAor KDUgcm93cykKKworCitzdGFydGluZyBwZXJtdXRhdGlvbjogczFzZXIgczJzZXIgczF1cGQyMDI1 IHMxYyBzMnVwZDIwMjcgczJjIHMxcQorc3RlcCBzMXNlcjogQkVHSU4gSVNPTEFUSU9OIExFVkVM IFNFUklBTElaQUJMRTsKK3N0ZXAgczJzZXI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBTRVJJQUxJ WkFCTEU7CitzdGVwIHMxdXBkMjAyNTogCisgIFVQREFURSBwcm9kdWN0cworICBGT1IgUE9SVElP TiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTAxLTAxJyBUTyAnMjAyNi0wMS0wMScKKyAgU0VUIHBy aWNlID0gOC4wMAorICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAgczFjOiBDT01NSVQ7Citz dGVwIHMydXBkMjAyNzogCisgIFVQREFURSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxp ZF9hdCBGUk9NICcyMDI3LTAxLTAxJyBUTyAnMjAyOC0wMS0wMScKKyAgU0VUIHByaWNlID0gMTAu MDAKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMyYzogQ09NTUlUOworc3RlcCBzMXE6 IFNFTEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworaWQgICB8dmFs aWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t Ky0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDI1LTAxLTAxKXwgNS4wMAorWzEsMil8WzIwMjUt MDEtMDEsMjAyNi0wMS0wMSl8IDguMDAKK1sxLDIpfFsyMDI2LTAxLTAxLDIwMjctMDEtMDEpfCA1 LjAwCitbMSwyKXxbMjAyNy0wMS0wMSwyMDI4LTAxLTAxKXwxMC4wMAorWzEsMil8WzIwMjgtMDEt MDEsMjAzMC0wMS0wMSl8IDUuMDAKKyg1IHJvd3MpCisKKworc3RhcnRpbmcgcGVybXV0YXRpb246 IHMxc2VyIHMyc2VyIHMxdXBkMjAyNSBzMWMgczJ1cGQyMDI1MDMgczJjIHMxcQorc3RlcCBzMXNl cjogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFNFUklBTElaQUJMRTsKK3N0ZXAgczJzZXI6IEJFR0lO IElTT0xBVElPTiBMRVZFTCBTRVJJQUxJWkFCTEU7CitzdGVwIHMxdXBkMjAyNTogCisgIFVQREFU RSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTAxLTAxJyBU TyAnMjAyNi0wMS0wMScKKyAgU0VUIHByaWNlID0gOC4wMAorICBXSEVSRSBpZCA9ICdbMSwyKSc7 CisKK3N0ZXAgczFjOiBDT01NSVQ7CitzdGVwIHMydXBkMjAyNTAzOiAKKyAgVVBEQVRFIHByb2R1 Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDMtMDEnIFRPICcyMDI1 LTA0LTAxJworICBTRVQgcHJpY2UgPSAxMC4wMAorICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0 ZXAgczJjOiBDT01NSVQ7CitzdGVwIHMxcTogU0VMRUNUICogRlJPTSBwcm9kdWN0cyBPUkRFUiBC WSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQorLS0t LS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMjUt MDEtMDEpfCA1LjAwCitbMSwyKXxbMjAyNS0wMS0wMSwyMDI1LTAzLTAxKXwgOC4wMAorWzEsMil8 WzIwMjUtMDMtMDEsMjAyNS0wNC0wMSl8MTAuMDAKK1sxLDIpfFsyMDI1LTA0LTAxLDIwMjYtMDEt MDEpfCA4LjAwCitbMSwyKXxbMjAyNi0wMS0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDUgcm93cykK KworCitzdGFydGluZyBwZXJtdXRhdGlvbjogczFzZXIgczJzZXIgczF1cGQyMDI1IHMxYyBzMnVw ZDIwMjUyMDI2IHMyYyBzMXEKK3N0ZXAgczFzZXI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBTRVJJ QUxJWkFCTEU7CitzdGVwIHMyc2VyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgU0VSSUFMSVpBQkxF Oworc3RlcCBzMXVwZDIwMjU6IAorICBVUERBVEUgcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0Yg dmFsaWRfYXQgRlJPTSAnMjAyNS0wMS0wMScgVE8gJzIwMjYtMDEtMDEnCisgIFNFVCBwcmljZSA9 IDguMDAKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMxYzogQ09NTUlUOworc3RlcCBz MnVwZDIwMjUyMDI2OiAKKyAgVVBEQVRFIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlk X2F0IEZST00gJzIwMjUtMDYtMDEnIFRPICcyMDI2LTA2LTAxJworICBTRVQgcHJpY2UgPSAxMC4w MAorICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAgczJjOiBDT01NSVQ7CitzdGVwIHMxcTog U0VMRUNUICogRlJPTSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxp ZF9hdCAgICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0r LS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMjUtMDEtMDEpfCA1LjAwCitbMSwyKXxbMjAyNS0w MS0wMSwyMDI1LTA2LTAxKXwgOC4wMAorWzEsMil8WzIwMjUtMDYtMDEsMjAyNi0wMS0wMSl8MTAu MDAKK1sxLDIpfFsyMDI2LTAxLTAxLDIwMjYtMDYtMDEpfDEwLjAwCitbMSwyKXxbMjAyNi0wNi0w MSwyMDMwLTAxLTAxKXwgNS4wMAorKDUgcm93cykKKworCitzdGFydGluZyBwZXJtdXRhdGlvbjog czFzZXIgczJzZXIgczJ1cGQyMDI3IHMxdXBkMjAyNSBzMmMgczFjIHMxcQorc3RlcCBzMXNlcjog QkVHSU4gSVNPTEFUSU9OIExFVkVMIFNFUklBTElaQUJMRTsKK3N0ZXAgczJzZXI6IEJFR0lOIElT T0xBVElPTiBMRVZFTCBTRVJJQUxJWkFCTEU7CitzdGVwIHMydXBkMjAyNzogCisgIFVQREFURSBw cm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI3LTAxLTAxJyBUTyAn MjAyOC0wMS0wMScKKyAgU0VUIHByaWNlID0gMTAuMDAKKyAgV0hFUkUgaWQgPSAnWzEsMiknOwor CitzdGVwIHMxdXBkMjAyNTogCisgIFVQREFURSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2 YWxpZF9hdCBGUk9NICcyMDI1LTAxLTAxJyBUTyAnMjAyNi0wMS0wMScKKyAgU0VUIHByaWNlID0g OC4wMAorICBXSEVSRSBpZCA9ICdbMSwyKSc7CisgPHdhaXRpbmcgLi4uPgorc3RlcCBzMmM6IENP TU1JVDsKK3N0ZXAgczF1cGQyMDI1OiA8Li4uIGNvbXBsZXRlZD4KK0VSUk9SOiAgY291bGQgbm90 IHNlcmlhbGl6ZSBhY2Nlc3MgZHVlIHRvIGNvbmN1cnJlbnQgdXBkYXRlCitzdGVwIHMxYzogQ09N TUlUOworc3RlcCBzMXE6IFNFTEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlk X2F0OworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDI3LTAxLTAxKXwgNS4w MAorWzEsMil8WzIwMjctMDEtMDEsMjAyOC0wMS0wMSl8MTAuMDAKK1sxLDIpfFsyMDI4LTAxLTAx LDIwMzAtMDEtMDEpfCA1LjAwCisoMyByb3dzKQorCisKK3N0YXJ0aW5nIHBlcm11dGF0aW9uOiBz MXNlciBzMnNlciBzMnVwZDIwMjUwMyBzMXVwZDIwMjUgczJjIHMxYyBzMXEKK3N0ZXAgczFzZXI6 IEJFR0lOIElTT0xBVElPTiBMRVZFTCBTRVJJQUxJWkFCTEU7CitzdGVwIHMyc2VyOiBCRUdJTiBJ U09MQVRJT04gTEVWRUwgU0VSSUFMSVpBQkxFOworc3RlcCBzMnVwZDIwMjUwMzogCisgIFVQREFU RSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTAzLTAxJyBU TyAnMjAyNS0wNC0wMScKKyAgU0VUIHByaWNlID0gMTAuMDAKKyAgV0hFUkUgaWQgPSAnWzEsMikn OworCitzdGVwIHMxdXBkMjAyNTogCisgIFVQREFURSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBP RiB2YWxpZF9hdCBGUk9NICcyMDI1LTAxLTAxJyBUTyAnMjAyNi0wMS0wMScKKyAgU0VUIHByaWNl ID0gOC4wMAorICBXSEVSRSBpZCA9ICdbMSwyKSc7CisgPHdhaXRpbmcgLi4uPgorc3RlcCBzMmM6 IENPTU1JVDsKK3N0ZXAgczF1cGQyMDI1OiA8Li4uIGNvbXBsZXRlZD4KK0VSUk9SOiAgY291bGQg bm90IHNlcmlhbGl6ZSBhY2Nlc3MgZHVlIHRvIGNvbmN1cnJlbnQgdXBkYXRlCitzdGVwIHMxYzog Q09NTUlUOworc3RlcCBzMXE6IFNFTEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQsIHZh bGlkX2F0OworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDI1LTAzLTAxKXwg NS4wMAorWzEsMil8WzIwMjUtMDMtMDEsMjAyNS0wNC0wMSl8MTAuMDAKK1sxLDIpfFsyMDI1LTA0 LTAxLDIwMzAtMDEtMDEpfCA1LjAwCisoMyByb3dzKQorCisKK3N0YXJ0aW5nIHBlcm11dGF0aW9u OiBzMXNlciBzMnNlciBzMnVwZDIwMjUyMDI2IHMxdXBkMjAyNSBzMmMgczFjIHMxcQorc3RlcCBz MXNlcjogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFNFUklBTElaQUJMRTsKK3N0ZXAgczJzZXI6IEJF R0lOIElTT0xBVElPTiBMRVZFTCBTRVJJQUxJWkFCTEU7CitzdGVwIHMydXBkMjAyNTIwMjY6IAor ICBVUERBVEUgcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0w Ni0wMScgVE8gJzIwMjYtMDYtMDEnCisgIFNFVCBwcmljZSA9IDEwLjAwCisgIFdIRVJFIGlkID0g J1sxLDIpJzsKKworc3RlcCBzMXVwZDIwMjU6IAorICBVUERBVEUgcHJvZHVjdHMKKyAgRk9SIFBP UlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wMS0wMScgVE8gJzIwMjYtMDEtMDEnCisgIFNF VCBwcmljZSA9IDguMDAKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworIDx3YWl0aW5nIC4uLj4KK3N0 ZXAgczJjOiBDT01NSVQ7CitzdGVwIHMxdXBkMjAyNTogPC4uLiBjb21wbGV0ZWQ+CitFUlJPUjog IGNvdWxkIG5vdCBzZXJpYWxpemUgYWNjZXNzIGR1ZSB0byBjb25jdXJyZW50IHVwZGF0ZQorc3Rl cCBzMWM6IENPTU1JVDsKK3N0ZXAgczFxOiBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzIE9SREVSIEJZ IGlkLCB2YWxpZF9hdDsKK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAgfHByaWNlCistLS0t LSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAtMDEtMDEsMjAyNS0w Ni0wMSl8IDUuMDAKK1sxLDIpfFsyMDI1LTA2LTAxLDIwMjYtMDYtMDEpfDEwLjAwCitbMSwyKXxb MjAyNi0wNi0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDMgcm93cykKKworCitzdGFydGluZyBwZXJt dXRhdGlvbjogczFzZXIgczJzZXIgczFxIHMydXBkMjAyNyBzMmMgczF1cGQyMDI1IHMxYyBzMXEK K3N0ZXAgczFzZXI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBTRVJJQUxJWkFCTEU7CitzdGVwIHMy c2VyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgU0VSSUFMSVpBQkxFOworc3RlcCBzMXE6IFNFTEVD VCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworaWQgICB8dmFsaWRfYXQg ICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0t CitbMSwyKXxbMjAyMC0wMS0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDEgcm93KQorCitzdGVwIHMy dXBkMjAyNzogCisgIFVQREFURSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBG Uk9NICcyMDI3LTAxLTAxJyBUTyAnMjAyOC0wMS0wMScKKyAgU0VUIHByaWNlID0gMTAuMDAKKyAg V0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMyYzogQ09NTUlUOworc3RlcCBzMXVwZDIwMjU6 IAorICBVUERBVEUgcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAy NS0wMS0wMScgVE8gJzIwMjYtMDEtMDEnCisgIFNFVCBwcmljZSA9IDguMDAKKyAgV0hFUkUgaWQg PSAnWzEsMiknOworCitFUlJPUjogIGNvdWxkIG5vdCBzZXJpYWxpemUgYWNjZXNzIGR1ZSB0byBj b25jdXJyZW50IHVwZGF0ZQorc3RlcCBzMWM6IENPTU1JVDsKK3N0ZXAgczFxOiBTRUxFQ1QgKiBG Uk9NIHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK2lkICAgfHZhbGlkX2F0ICAgICAg ICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEs Mil8WzIwMjAtMDEtMDEsMjAyNy0wMS0wMSl8IDUuMDAKK1sxLDIpfFsyMDI3LTAxLTAxLDIwMjgt MDEtMDEpfDEwLjAwCitbMSwyKXxbMjAyOC0wMS0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDMgcm93 cykKKworCitzdGFydGluZyBwZXJtdXRhdGlvbjogczFzZXIgczJzZXIgczFxIHMydXBkMjAyNTAz IHMyYyBzMXVwZDIwMjUgczFjIHMxcQorc3RlcCBzMXNlcjogQkVHSU4gSVNPTEFUSU9OIExFVkVM IFNFUklBTElaQUJMRTsKK3N0ZXAgczJzZXI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBTRVJJQUxJ WkFCTEU7CitzdGVwIHMxcTogU0VMRUNUICogRlJPTSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwgdmFs aWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMzAtMDEtMDEpfCA1 LjAwCisoMSByb3cpCisKK3N0ZXAgczJ1cGQyMDI1MDM6IAorICBVUERBVEUgcHJvZHVjdHMKKyAg Rk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wMy0wMScgVE8gJzIwMjUtMDQtMDEn CisgIFNFVCBwcmljZSA9IDEwLjAwCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMmM6 IENPTU1JVDsKK3N0ZXAgczF1cGQyMDI1OiAKKyAgVVBEQVRFIHByb2R1Y3RzCisgIEZPUiBQT1JU SU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDEtMDEnIFRPICcyMDI2LTAxLTAxJworICBTRVQg cHJpY2UgPSA4LjAwCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworRVJST1I6ICBjb3VsZCBub3Qg c2VyaWFsaXplIGFjY2VzcyBkdWUgdG8gY29uY3VycmVudCB1cGRhdGUKK3N0ZXAgczFjOiBDT01N SVQ7CitzdGVwIHMxcTogU0VMRUNUICogRlJPTSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwgdmFsaWRf YXQ7CitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMjUtMDMtMDEpfCA1LjAw CitbMSwyKXxbMjAyNS0wMy0wMSwyMDI1LTA0LTAxKXwxMC4wMAorWzEsMil8WzIwMjUtMDQtMDEs MjAzMC0wMS0wMSl8IDUuMDAKKygzIHJvd3MpCisKKworc3RhcnRpbmcgcGVybXV0YXRpb246IHMx c2VyIHMyc2VyIHMxcSBzMnVwZDIwMjUyMDI2IHMyYyBzMXVwZDIwMjUgczFjIHMxcQorc3RlcCBz MXNlcjogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFNFUklBTElaQUJMRTsKK3N0ZXAgczJzZXI6IEJF R0lOIElTT0xBVElPTiBMRVZFTCBTRVJJQUxJWkFCTEU7CitzdGVwIHMxcTogU0VMRUNUICogRlJP TSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAgICAgICAg ICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIp fFsyMDIwLTAxLTAxLDIwMzAtMDEtMDEpfCA1LjAwCisoMSByb3cpCisKK3N0ZXAgczJ1cGQyMDI1 MjAyNjogCisgIFVQREFURSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9N ICcyMDI1LTA2LTAxJyBUTyAnMjAyNi0wNi0wMScKKyAgU0VUIHByaWNlID0gMTAuMDAKKyAgV0hF UkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMyYzogQ09NTUlUOworc3RlcCBzMXVwZDIwMjU6IAor ICBVUERBVEUgcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0w MS0wMScgVE8gJzIwMjYtMDEtMDEnCisgIFNFVCBwcmljZSA9IDguMDAKKyAgV0hFUkUgaWQgPSAn WzEsMiknOworCitFUlJPUjogIGNvdWxkIG5vdCBzZXJpYWxpemUgYWNjZXNzIGR1ZSB0byBjb25j dXJyZW50IHVwZGF0ZQorc3RlcCBzMWM6IENPTU1JVDsKK3N0ZXAgczFxOiBTRUxFQ1QgKiBGUk9N IHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK2lkICAgfHZhbGlkX2F0ICAgICAgICAg ICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8 WzIwMjAtMDEtMDEsMjAyNS0wNi0wMSl8IDUuMDAKK1sxLDIpfFsyMDI1LTA2LTAxLDIwMjYtMDYt MDEpfDEwLjAwCitbMSwyKXxbMjAyNi0wNi0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDMgcm93cykK KworCitzdGFydGluZyBwZXJtdXRhdGlvbjogczFzZXIgczJzZXIgczFxIHMxdXBkMjAyNSBzMWMg czJ1cGQyMDI3IHMyYyBzMXEKK3N0ZXAgczFzZXI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBTRVJJ QUxJWkFCTEU7CitzdGVwIHMyc2VyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgU0VSSUFMSVpBQkxF Oworc3RlcCBzMXE6IFNFTEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0 OworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDMwLTAxLTAxKXwgNS4wMAor KDEgcm93KQorCitzdGVwIHMxdXBkMjAyNTogCisgIFVQREFURSBwcm9kdWN0cworICBGT1IgUE9S VElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTAxLTAxJyBUTyAnMjAyNi0wMS0wMScKKyAgU0VU IHByaWNlID0gOC4wMAorICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAgczFjOiBDT01NSVQ7 CitzdGVwIHMydXBkMjAyNzogCisgIFVQREFURSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2 YWxpZF9hdCBGUk9NICcyMDI3LTAxLTAxJyBUTyAnMjAyOC0wMS0wMScKKyAgU0VUIHByaWNlID0g MTAuMDAKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMyYzogQ09NTUlUOworc3RlcCBz MXE6IFNFTEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworaWQgICB8 dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDI1LTAxLTAxKXwgNS4wMAorWzEsMil8WzIw MjUtMDEtMDEsMjAyNi0wMS0wMSl8IDguMDAKK1sxLDIpfFsyMDI2LTAxLTAxLDIwMjctMDEtMDEp fCA1LjAwCitbMSwyKXxbMjAyNy0wMS0wMSwyMDI4LTAxLTAxKXwxMC4wMAorWzEsMil8WzIwMjgt MDEtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKyg1IHJvd3MpCisKKworc3RhcnRpbmcgcGVybXV0YXRp b246IHMxc2VyIHMyc2VyIHMxcSBzMXVwZDIwMjUgczFjIHMydXBkMjAyNTAzIHMyYyBzMXEKK3N0 ZXAgczFzZXI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBTRVJJQUxJWkFCTEU7CitzdGVwIHMyc2Vy OiBCRUdJTiBJU09MQVRJT04gTEVWRUwgU0VSSUFMSVpBQkxFOworc3RlcCBzMXE6IFNFTEVDVCAq IEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworaWQgICB8dmFsaWRfYXQgICAg ICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitb MSwyKXxbMjAyMC0wMS0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDEgcm93KQorCitzdGVwIHMxdXBk MjAyNTogCisgIFVQREFURSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9N ICcyMDI1LTAxLTAxJyBUTyAnMjAyNi0wMS0wMScKKyAgU0VUIHByaWNlID0gOC4wMAorICBXSEVS RSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAgczFjOiBDT01NSVQ7CitzdGVwIHMydXBkMjAyNTAzOiAK KyAgVVBEQVRFIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUt MDMtMDEnIFRPICcyMDI1LTA0LTAxJworICBTRVQgcHJpY2UgPSAxMC4wMAorICBXSEVSRSBpZCA9 ICdbMSwyKSc7CisKK3N0ZXAgczJjOiBDT01NSVQ7CitzdGVwIHMxcTogU0VMRUNUICogRlJPTSBw cm9kdWN0cyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAg ICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsy MDIwLTAxLTAxLDIwMjUtMDEtMDEpfCA1LjAwCitbMSwyKXxbMjAyNS0wMS0wMSwyMDI1LTAzLTAx KXwgOC4wMAorWzEsMil8WzIwMjUtMDMtMDEsMjAyNS0wNC0wMSl8MTAuMDAKK1sxLDIpfFsyMDI1 LTA0LTAxLDIwMjYtMDEtMDEpfCA4LjAwCitbMSwyKXxbMjAyNi0wMS0wMSwyMDMwLTAxLTAxKXwg NS4wMAorKDUgcm93cykKKworCitzdGFydGluZyBwZXJtdXRhdGlvbjogczFzZXIgczJzZXIgczFx IHMxdXBkMjAyNSBzMWMgczJ1cGQyMDI1MjAyNiBzMmMgczFxCitzdGVwIHMxc2VyOiBCRUdJTiBJ U09MQVRJT04gTEVWRUwgU0VSSUFMSVpBQkxFOworc3RlcCBzMnNlcjogQkVHSU4gSVNPTEFUSU9O IExFVkVMIFNFUklBTElaQUJMRTsKK3N0ZXAgczFxOiBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzIE9S REVSIEJZIGlkLCB2YWxpZF9hdDsKK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAgfHByaWNl CistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAtMDEtMDEs MjAzMC0wMS0wMSl8IDUuMDAKKygxIHJvdykKKworc3RlcCBzMXVwZDIwMjU6IAorICBVUERBVEUg cHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wMS0wMScgVE8g JzIwMjYtMDEtMDEnCisgIFNFVCBwcmljZSA9IDguMDAKKyAgV0hFUkUgaWQgPSAnWzEsMiknOwor CitzdGVwIHMxYzogQ09NTUlUOworc3RlcCBzMnVwZDIwMjUyMDI2OiAKKyAgVVBEQVRFIHByb2R1 Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDYtMDEnIFRPICcyMDI2 LTA2LTAxJworICBTRVQgcHJpY2UgPSAxMC4wMAorICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0 ZXAgczJjOiBDT01NSVQ7CitzdGVwIHMxcTogU0VMRUNUICogRlJPTSBwcm9kdWN0cyBPUkRFUiBC WSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQorLS0t LS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMjUt MDEtMDEpfCA1LjAwCitbMSwyKXxbMjAyNS0wMS0wMSwyMDI1LTA2LTAxKXwgOC4wMAorWzEsMil8 WzIwMjUtMDYtMDEsMjAyNi0wMS0wMSl8MTAuMDAKK1sxLDIpfFsyMDI2LTAxLTAxLDIwMjYtMDYt MDEpfDEwLjAwCitbMSwyKXxbMjAyNi0wNi0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDUgcm93cykK KworCitzdGFydGluZyBwZXJtdXRhdGlvbjogczFzZXIgczJzZXIgczFxIHMydXBkMjAyNyBzMXVw ZDIwMjUgczJjIHMxYyBzMXEKK3N0ZXAgczFzZXI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBTRVJJ QUxJWkFCTEU7CitzdGVwIHMyc2VyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgU0VSSUFMSVpBQkxF Oworc3RlcCBzMXE6IFNFTEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0 OworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDMwLTAxLTAxKXwgNS4wMAor KDEgcm93KQorCitzdGVwIHMydXBkMjAyNzogCisgIFVQREFURSBwcm9kdWN0cworICBGT1IgUE9S VElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI3LTAxLTAxJyBUTyAnMjAyOC0wMS0wMScKKyAgU0VU IHByaWNlID0gMTAuMDAKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMxdXBkMjAyNTog CisgIFVQREFURSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1 LTAxLTAxJyBUTyAnMjAyNi0wMS0wMScKKyAgU0VUIHByaWNlID0gOC4wMAorICBXSEVSRSBpZCA9 ICdbMSwyKSc7CisgPHdhaXRpbmcgLi4uPgorc3RlcCBzMmM6IENPTU1JVDsKK3N0ZXAgczF1cGQy MDI1OiA8Li4uIGNvbXBsZXRlZD4KK0VSUk9SOiAgY291bGQgbm90IHNlcmlhbGl6ZSBhY2Nlc3Mg ZHVlIHRvIGNvbmN1cnJlbnQgdXBkYXRlCitzdGVwIHMxYzogQ09NTUlUOworc3RlcCBzMXE6IFNF TEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworaWQgICB8dmFsaWRf YXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0t LS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDI3LTAxLTAxKXwgNS4wMAorWzEsMil8WzIwMjctMDEt MDEsMjAyOC0wMS0wMSl8MTAuMDAKK1sxLDIpfFsyMDI4LTAxLTAxLDIwMzAtMDEtMDEpfCA1LjAw CisoMyByb3dzKQorCisKK3N0YXJ0aW5nIHBlcm11dGF0aW9uOiBzMXNlciBzMnNlciBzMXEgczJ1 cGQyMDI1MDMgczF1cGQyMDI1IHMyYyBzMWMgczFxCitzdGVwIHMxc2VyOiBCRUdJTiBJU09MQVRJ T04gTEVWRUwgU0VSSUFMSVpBQkxFOworc3RlcCBzMnNlcjogQkVHSU4gSVNPTEFUSU9OIExFVkVM IFNFUklBTElaQUJMRTsKK3N0ZXAgczFxOiBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzIE9SREVSIEJZ IGlkLCB2YWxpZF9hdDsKK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAgfHByaWNlCistLS0t LSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAtMDEtMDEsMjAzMC0w MS0wMSl8IDUuMDAKKygxIHJvdykKKworc3RlcCBzMnVwZDIwMjUwMzogCisgIFVQREFURSBwcm9k dWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTAzLTAxJyBUTyAnMjAy NS0wNC0wMScKKyAgU0VUIHByaWNlID0gMTAuMDAKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitz dGVwIHMxdXBkMjAyNTogCisgIFVQREFURSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxp ZF9hdCBGUk9NICcyMDI1LTAxLTAxJyBUTyAnMjAyNi0wMS0wMScKKyAgU0VUIHByaWNlID0gOC4w MAorICBXSEVSRSBpZCA9ICdbMSwyKSc7CisgPHdhaXRpbmcgLi4uPgorc3RlcCBzMmM6IENPTU1J VDsKK3N0ZXAgczF1cGQyMDI1OiA8Li4uIGNvbXBsZXRlZD4KK0VSUk9SOiAgY291bGQgbm90IHNl cmlhbGl6ZSBhY2Nlc3MgZHVlIHRvIGNvbmN1cnJlbnQgdXBkYXRlCitzdGVwIHMxYzogQ09NTUlU Oworc3RlcCBzMXE6IFNFTEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0 OworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDI1LTAzLTAxKXwgNS4wMAor WzEsMil8WzIwMjUtMDMtMDEsMjAyNS0wNC0wMSl8MTAuMDAKK1sxLDIpfFsyMDI1LTA0LTAxLDIw MzAtMDEtMDEpfCA1LjAwCisoMyByb3dzKQorCisKK3N0YXJ0aW5nIHBlcm11dGF0aW9uOiBzMXNl ciBzMnNlciBzMXEgczJ1cGQyMDI1MjAyNiBzMXVwZDIwMjUgczJjIHMxYyBzMXEKK3N0ZXAgczFz ZXI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBTRVJJQUxJWkFCTEU7CitzdGVwIHMyc2VyOiBCRUdJ TiBJU09MQVRJT04gTEVWRUwgU0VSSUFMSVpBQkxFOworc3RlcCBzMXE6IFNFTEVDVCAqIEZST00g cHJvZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworaWQgICB8dmFsaWRfYXQgICAgICAgICAg ICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxb MjAyMC0wMS0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDEgcm93KQorCitzdGVwIHMydXBkMjAyNTIw MjY6IAorICBVUERBVEUgcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAn MjAyNS0wNi0wMScgVE8gJzIwMjYtMDYtMDEnCisgIFNFVCBwcmljZSA9IDEwLjAwCisgIFdIRVJF IGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMXVwZDIwMjU6IAorICBVUERBVEUgcHJvZHVjdHMKKyAg Rk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wMS0wMScgVE8gJzIwMjYtMDEtMDEn CisgIFNFVCBwcmljZSA9IDguMDAKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworIDx3YWl0aW5nIC4u Lj4KK3N0ZXAgczJjOiBDT01NSVQ7CitzdGVwIHMxdXBkMjAyNTogPC4uLiBjb21wbGV0ZWQ+CitF UlJPUjogIGNvdWxkIG5vdCBzZXJpYWxpemUgYWNjZXNzIGR1ZSB0byBjb25jdXJyZW50IHVwZGF0 ZQorc3RlcCBzMWM6IENPTU1JVDsKK3N0ZXAgczFxOiBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzIE9S REVSIEJZIGlkLCB2YWxpZF9hdDsKK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAgfHByaWNl CistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAtMDEtMDEs MjAyNS0wNi0wMSl8IDUuMDAKK1sxLDIpfFsyMDI1LTA2LTAxLDIwMjYtMDYtMDEpfDEwLjAwCitb MSwyKXxbMjAyNi0wNi0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDMgcm93cykKKworCitzdGFydGlu ZyBwZXJtdXRhdGlvbjogczFzZXIgczJzZXIgczJkZWwyMDI3IHMyYyBzMXVwZDIwMjUgczFjIHMx cQorc3RlcCBzMXNlcjogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFNFUklBTElaQUJMRTsKK3N0ZXAg czJzZXI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBTRVJJQUxJWkFCTEU7CitzdGVwIHMyZGVsMjAy NzogCisgIERFTEVURSBGUk9NIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZS T00gJzIwMjctMDEtMDEnIFRPICcyMDI4LTAxLTAxJworICBXSEVSRSBpZCA9ICdbMSwyKSc7CisK K3N0ZXAgczJjOiBDT01NSVQ7CitzdGVwIHMxdXBkMjAyNTogCisgIFVQREFURSBwcm9kdWN0cwor ICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTAxLTAxJyBUTyAnMjAyNi0wMS0w MScKKyAgU0VUIHByaWNlID0gOC4wMAorICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAgczFj OiBDT01NSVQ7CitzdGVwIHMxcTogU0VMRUNUICogRlJPTSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwg dmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMjUtMDEtMDEp fCA1LjAwCitbMSwyKXxbMjAyNS0wMS0wMSwyMDI2LTAxLTAxKXwgOC4wMAorWzEsMil8WzIwMjYt MDEtMDEsMjAyNy0wMS0wMSl8IDUuMDAKK1sxLDIpfFsyMDI4LTAxLTAxLDIwMzAtMDEtMDEpfCA1 LjAwCisoNCByb3dzKQorCisKK3N0YXJ0aW5nIHBlcm11dGF0aW9uOiBzMXNlciBzMnNlciBzMmRl bDIwMjUwMyBzMmMgczF1cGQyMDI1IHMxYyBzMXEKK3N0ZXAgczFzZXI6IEJFR0lOIElTT0xBVElP TiBMRVZFTCBTRVJJQUxJWkFCTEU7CitzdGVwIHMyc2VyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwg U0VSSUFMSVpBQkxFOworc3RlcCBzMmRlbDIwMjUwMzogCisgIERFTEVURSBGUk9NIHByb2R1Y3Rz CisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDMtMDEnIFRPICcyMDI1LTA0 LTAxJworICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAgczJjOiBDT01NSVQ7CitzdGVwIHMx dXBkMjAyNTogCisgIFVQREFURSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBG Uk9NICcyMDI1LTAxLTAxJyBUTyAnMjAyNi0wMS0wMScKKyAgU0VUIHByaWNlID0gOC4wMAorICBX SEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAgczFjOiBDT01NSVQ7CitzdGVwIHMxcTogU0VMRUNU ICogRlJPTSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAg ICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0K K1sxLDIpfFsyMDIwLTAxLTAxLDIwMjUtMDEtMDEpfCA1LjAwCitbMSwyKXxbMjAyNS0wMS0wMSwy MDI1LTAzLTAxKXwgOC4wMAorWzEsMil8WzIwMjUtMDQtMDEsMjAyNi0wMS0wMSl8IDguMDAKK1sx LDIpfFsyMDI2LTAxLTAxLDIwMzAtMDEtMDEpfCA1LjAwCisoNCByb3dzKQorCisKK3N0YXJ0aW5n IHBlcm11dGF0aW9uOiBzMXNlciBzMnNlciBzMmRlbDIwMjUyMDI2IHMyYyBzMXVwZDIwMjUgczFj IHMxcQorc3RlcCBzMXNlcjogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFNFUklBTElaQUJMRTsKK3N0 ZXAgczJzZXI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBTRVJJQUxJWkFCTEU7CitzdGVwIHMyZGVs MjAyNTIwMjY6IAorICBERUxFVEUgRlJPTSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxp ZF9hdCBGUk9NICcyMDI1LTA2LTAxJyBUTyAnMjAyNi0wNi0wMScKKyAgV0hFUkUgaWQgPSAnWzEs MiknOworCitzdGVwIHMyYzogQ09NTUlUOworc3RlcCBzMXVwZDIwMjU6IAorICBVUERBVEUgcHJv ZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wMS0wMScgVE8gJzIw MjYtMDEtMDEnCisgIFNFVCBwcmljZSA9IDguMDAKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitz dGVwIHMxYzogQ09NTUlUOworc3RlcCBzMXE6IFNFTEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIg QlkgaWQsIHZhbGlkX2F0OworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0t LS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDI1 LTAxLTAxKXwgNS4wMAorWzEsMil8WzIwMjUtMDEtMDEsMjAyNS0wNi0wMSl8IDguMDAKK1sxLDIp fFsyMDI2LTA2LTAxLDIwMzAtMDEtMDEpfCA1LjAwCisoMyByb3dzKQorCisKK3N0YXJ0aW5nIHBl cm11dGF0aW9uOiBzMXNlciBzMnNlciBzMXVwZDIwMjUgczFjIHMyZGVsMjAyNyBzMmMgczFxCitz dGVwIHMxc2VyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgU0VSSUFMSVpBQkxFOworc3RlcCBzMnNl cjogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFNFUklBTElaQUJMRTsKK3N0ZXAgczF1cGQyMDI1OiAK KyAgVVBEQVRFIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUt MDEtMDEnIFRPICcyMDI2LTAxLTAxJworICBTRVQgcHJpY2UgPSA4LjAwCisgIFdIRVJFIGlkID0g J1sxLDIpJzsKKworc3RlcCBzMWM6IENPTU1JVDsKK3N0ZXAgczJkZWwyMDI3OiAKKyAgREVMRVRF IEZST00gcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNy0wMS0w MScgVE8gJzIwMjgtMDEtMDEnCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMmM6IENP TU1JVDsKK3N0ZXAgczFxOiBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxp ZF9hdDsKK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0t LS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAtMDEtMDEsMjAyNS0wMS0wMSl8IDUu MDAKK1sxLDIpfFsyMDI1LTAxLTAxLDIwMjYtMDEtMDEpfCA4LjAwCitbMSwyKXxbMjAyNi0wMS0w MSwyMDI3LTAxLTAxKXwgNS4wMAorWzEsMil8WzIwMjgtMDEtMDEsMjAzMC0wMS0wMSl8IDUuMDAK Kyg0IHJvd3MpCisKKworc3RhcnRpbmcgcGVybXV0YXRpb246IHMxc2VyIHMyc2VyIHMxdXBkMjAy NSBzMWMgczJkZWwyMDI1MDMgczJjIHMxcQorc3RlcCBzMXNlcjogQkVHSU4gSVNPTEFUSU9OIExF VkVMIFNFUklBTElaQUJMRTsKK3N0ZXAgczJzZXI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBTRVJJ QUxJWkFCTEU7CitzdGVwIHMxdXBkMjAyNTogCisgIFVQREFURSBwcm9kdWN0cworICBGT1IgUE9S VElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTAxLTAxJyBUTyAnMjAyNi0wMS0wMScKKyAgU0VU IHByaWNlID0gOC4wMAorICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAgczFjOiBDT01NSVQ7 CitzdGVwIHMyZGVsMjAyNTAzOiAKKyAgREVMRVRFIEZST00gcHJvZHVjdHMKKyAgRk9SIFBPUlRJ T04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wMy0wMScgVE8gJzIwMjUtMDQtMDEnCisgIFdIRVJF IGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMmM6IENPTU1JVDsKK3N0ZXAgczFxOiBTRUxFQ1QgKiBG Uk9NIHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK2lkICAgfHZhbGlkX2F0ICAgICAg ICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEs Mil8WzIwMjAtMDEtMDEsMjAyNS0wMS0wMSl8IDUuMDAKK1sxLDIpfFsyMDI1LTAxLTAxLDIwMjUt MDMtMDEpfCA4LjAwCitbMSwyKXxbMjAyNS0wNC0wMSwyMDI2LTAxLTAxKXwgOC4wMAorWzEsMil8 WzIwMjYtMDEtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKyg0IHJvd3MpCisKKworc3RhcnRpbmcgcGVy bXV0YXRpb246IHMxc2VyIHMyc2VyIHMxdXBkMjAyNSBzMWMgczJkZWwyMDI1MjAyNiBzMmMgczFx CitzdGVwIHMxc2VyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgU0VSSUFMSVpBQkxFOworc3RlcCBz MnNlcjogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFNFUklBTElaQUJMRTsKK3N0ZXAgczF1cGQyMDI1 OiAKKyAgVVBEQVRFIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIw MjUtMDEtMDEnIFRPICcyMDI2LTAxLTAxJworICBTRVQgcHJpY2UgPSA4LjAwCisgIFdIRVJFIGlk ID0gJ1sxLDIpJzsKKworc3RlcCBzMWM6IENPTU1JVDsKK3N0ZXAgczJkZWwyMDI1MjAyNjogCisg IERFTEVURSBGUk9NIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIw MjUtMDYtMDEnIFRPICcyMDI2LTA2LTAxJworICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAg czJjOiBDT01NSVQ7CitzdGVwIHMxcTogU0VMRUNUICogRlJPTSBwcm9kdWN0cyBPUkRFUiBCWSBp ZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQorLS0tLS0r LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMjUtMDEt MDEpfCA1LjAwCitbMSwyKXxbMjAyNS0wMS0wMSwyMDI1LTA2LTAxKXwgOC4wMAorWzEsMil8WzIw MjYtMDYtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKygzIHJvd3MpCisKKworc3RhcnRpbmcgcGVybXV0 YXRpb246IHMxc2VyIHMyc2VyIHMyZGVsMjAyNyBzMXVwZDIwMjUgczJjIHMxYyBzMXEKK3N0ZXAg czFzZXI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBTRVJJQUxJWkFCTEU7CitzdGVwIHMyc2VyOiBC RUdJTiBJU09MQVRJT04gTEVWRUwgU0VSSUFMSVpBQkxFOworc3RlcCBzMmRlbDIwMjc6IAorICBE RUxFVEUgRlJPTSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI3 LTAxLTAxJyBUTyAnMjAyOC0wMS0wMScKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMx dXBkMjAyNTogCisgIFVQREFURSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBG Uk9NICcyMDI1LTAxLTAxJyBUTyAnMjAyNi0wMS0wMScKKyAgU0VUIHByaWNlID0gOC4wMAorICBX SEVSRSBpZCA9ICdbMSwyKSc7CisgPHdhaXRpbmcgLi4uPgorc3RlcCBzMmM6IENPTU1JVDsKK3N0 ZXAgczF1cGQyMDI1OiA8Li4uIGNvbXBsZXRlZD4KK0VSUk9SOiAgY291bGQgbm90IHNlcmlhbGl6 ZSBhY2Nlc3MgZHVlIHRvIGNvbmN1cnJlbnQgZGVsZXRlCitzdGVwIHMxYzogQ09NTUlUOworc3Rl cCBzMXE6IFNFTEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworaWQg ICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDI3LTAxLTAxKXwgNS4wMAorWzEsMil8 WzIwMjgtMDEtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKygyIHJvd3MpCisKKworc3RhcnRpbmcgcGVy bXV0YXRpb246IHMxc2VyIHMyc2VyIHMyZGVsMjAyNTAzIHMxdXBkMjAyNSBzMmMgczFjIHMxcQor c3RlcCBzMXNlcjogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFNFUklBTElaQUJMRTsKK3N0ZXAgczJz ZXI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBTRVJJQUxJWkFCTEU7CitzdGVwIHMyZGVsMjAyNTAz OiAKKyAgREVMRVRFIEZST00gcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJP TSAnMjAyNS0wMy0wMScgVE8gJzIwMjUtMDQtMDEnCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKwor c3RlcCBzMXVwZDIwMjU6IAorICBVUERBVEUgcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFs aWRfYXQgRlJPTSAnMjAyNS0wMS0wMScgVE8gJzIwMjYtMDEtMDEnCisgIFNFVCBwcmljZSA9IDgu MDAKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworIDx3YWl0aW5nIC4uLj4KK3N0ZXAgczJjOiBDT01N SVQ7CitzdGVwIHMxdXBkMjAyNTogPC4uLiBjb21wbGV0ZWQ+CitFUlJPUjogIGNvdWxkIG5vdCBz ZXJpYWxpemUgYWNjZXNzIGR1ZSB0byBjb25jdXJyZW50IGRlbGV0ZQorc3RlcCBzMWM6IENPTU1J VDsKK3N0ZXAgczFxOiBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9h dDsKK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0t LS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAtMDEtMDEsMjAyNS0wMy0wMSl8IDUuMDAK K1sxLDIpfFsyMDI1LTA0LTAxLDIwMzAtMDEtMDEpfCA1LjAwCisoMiByb3dzKQorCisKK3N0YXJ0 aW5nIHBlcm11dGF0aW9uOiBzMXNlciBzMnNlciBzMmRlbDIwMjUyMDI2IHMxdXBkMjAyNSBzMmMg czFjIHMxcQorc3RlcCBzMXNlcjogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFNFUklBTElaQUJMRTsK K3N0ZXAgczJzZXI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBTRVJJQUxJWkFCTEU7CitzdGVwIHMy ZGVsMjAyNTIwMjY6IAorICBERUxFVEUgRlJPTSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2 YWxpZF9hdCBGUk9NICcyMDI1LTA2LTAxJyBUTyAnMjAyNi0wNi0wMScKKyAgV0hFUkUgaWQgPSAn WzEsMiknOworCitzdGVwIHMxdXBkMjAyNTogCisgIFVQREFURSBwcm9kdWN0cworICBGT1IgUE9S VElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTAxLTAxJyBUTyAnMjAyNi0wMS0wMScKKyAgU0VU IHByaWNlID0gOC4wMAorICBXSEVSRSBpZCA9ICdbMSwyKSc7CisgPHdhaXRpbmcgLi4uPgorc3Rl cCBzMmM6IENPTU1JVDsKK3N0ZXAgczF1cGQyMDI1OiA8Li4uIGNvbXBsZXRlZD4KK0VSUk9SOiAg Y291bGQgbm90IHNlcmlhbGl6ZSBhY2Nlc3MgZHVlIHRvIGNvbmN1cnJlbnQgZGVsZXRlCitzdGVw IHMxYzogQ09NTUlUOworc3RlcCBzMXE6IFNFTEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkg aWQsIHZhbGlkX2F0OworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0t Ky0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDI1LTA2 LTAxKXwgNS4wMAorWzEsMil8WzIwMjYtMDYtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKygyIHJvd3Mp CisKKworc3RhcnRpbmcgcGVybXV0YXRpb246IHMxc2VyIHMyc2VyIHMxcSBzMmRlbDIwMjcgczJj IHMxdXBkMjAyNSBzMWMgczFxCitzdGVwIHMxc2VyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgU0VS SUFMSVpBQkxFOworc3RlcCBzMnNlcjogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFNFUklBTElaQUJM RTsKK3N0ZXAgczFxOiBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9h dDsKK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0t LS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAtMDEtMDEsMjAzMC0wMS0wMSl8IDUuMDAK KygxIHJvdykKKworc3RlcCBzMmRlbDIwMjc6IAorICBERUxFVEUgRlJPTSBwcm9kdWN0cworICBG T1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI3LTAxLTAxJyBUTyAnMjAyOC0wMS0wMScK KyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMyYzogQ09NTUlUOworc3RlcCBzMXVwZDIw MjU6IAorICBVUERBVEUgcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAn MjAyNS0wMS0wMScgVE8gJzIwMjYtMDEtMDEnCisgIFNFVCBwcmljZSA9IDguMDAKKyAgV0hFUkUg aWQgPSAnWzEsMiknOworCitFUlJPUjogIGNvdWxkIG5vdCBzZXJpYWxpemUgYWNjZXNzIGR1ZSB0 byBjb25jdXJyZW50IGRlbGV0ZQorc3RlcCBzMWM6IENPTU1JVDsKK3N0ZXAgczFxOiBTRUxFQ1Qg KiBGUk9NIHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK2lkICAgfHZhbGlkX2F0ICAg ICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQor WzEsMil8WzIwMjAtMDEtMDEsMjAyNy0wMS0wMSl8IDUuMDAKK1sxLDIpfFsyMDI4LTAxLTAxLDIw MzAtMDEtMDEpfCA1LjAwCisoMiByb3dzKQorCisKK3N0YXJ0aW5nIHBlcm11dGF0aW9uOiBzMXNl ciBzMnNlciBzMXEgczJkZWwyMDI1MDMgczJjIHMxdXBkMjAyNSBzMWMgczFxCitzdGVwIHMxc2Vy OiBCRUdJTiBJU09MQVRJT04gTEVWRUwgU0VSSUFMSVpBQkxFOworc3RlcCBzMnNlcjogQkVHSU4g SVNPTEFUSU9OIExFVkVMIFNFUklBTElaQUJMRTsKK3N0ZXAgczFxOiBTRUxFQ1QgKiBGUk9NIHBy b2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAg ICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIw MjAtMDEtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKygxIHJvdykKKworc3RlcCBzMmRlbDIwMjUwMzog CisgIERFTEVURSBGUk9NIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00g JzIwMjUtMDMtMDEnIFRPICcyMDI1LTA0LTAxJworICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0 ZXAgczJjOiBDT01NSVQ7CitzdGVwIHMxdXBkMjAyNTogCisgIFVQREFURSBwcm9kdWN0cworICBG T1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTAxLTAxJyBUTyAnMjAyNi0wMS0wMScK KyAgU0VUIHByaWNlID0gOC4wMAorICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK0VSUk9SOiAgY291 bGQgbm90IHNlcmlhbGl6ZSBhY2Nlc3MgZHVlIHRvIGNvbmN1cnJlbnQgZGVsZXRlCitzdGVwIHMx YzogQ09NTUlUOworc3RlcCBzMXE6IFNFTEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQs IHZhbGlkX2F0OworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDI1LTAzLTAx KXwgNS4wMAorWzEsMil8WzIwMjUtMDQtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKygyIHJvd3MpCisK Kworc3RhcnRpbmcgcGVybXV0YXRpb246IHMxc2VyIHMyc2VyIHMxcSBzMmRlbDIwMjUyMDI2IHMy YyBzMXVwZDIwMjUgczFjIHMxcQorc3RlcCBzMXNlcjogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFNF UklBTElaQUJMRTsKK3N0ZXAgczJzZXI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBTRVJJQUxJWkFC TEU7CitzdGVwIHMxcTogU0VMRUNUICogRlJPTSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwgdmFsaWRf YXQ7CitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMzAtMDEtMDEpfCA1LjAw CisoMSByb3cpCisKK3N0ZXAgczJkZWwyMDI1MjAyNjogCisgIERFTEVURSBGUk9NIHByb2R1Y3Rz CisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDYtMDEnIFRPICcyMDI2LTA2 LTAxJworICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAgczJjOiBDT01NSVQ7CitzdGVwIHMx dXBkMjAyNTogCisgIFVQREFURSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBG Uk9NICcyMDI1LTAxLTAxJyBUTyAnMjAyNi0wMS0wMScKKyAgU0VUIHByaWNlID0gOC4wMAorICBX SEVSRSBpZCA9ICdbMSwyKSc7CisKK0VSUk9SOiAgY291bGQgbm90IHNlcmlhbGl6ZSBhY2Nlc3Mg ZHVlIHRvIGNvbmN1cnJlbnQgZGVsZXRlCitzdGVwIHMxYzogQ09NTUlUOworc3RlcCBzMXE6IFNF TEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworaWQgICB8dmFsaWRf YXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0t LS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDI1LTA2LTAxKXwgNS4wMAorWzEsMil8WzIwMjYtMDYt MDEsMjAzMC0wMS0wMSl8IDUuMDAKKygyIHJvd3MpCisKKworc3RhcnRpbmcgcGVybXV0YXRpb246 IHMxc2VyIHMyc2VyIHMxcSBzMXVwZDIwMjUgczFjIHMyZGVsMjAyNyBzMmMgczFxCitzdGVwIHMx c2VyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgU0VSSUFMSVpBQkxFOworc3RlcCBzMnNlcjogQkVH SU4gSVNPTEFUSU9OIExFVkVMIFNFUklBTElaQUJMRTsKK3N0ZXAgczFxOiBTRUxFQ1QgKiBGUk9N IHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK2lkICAgfHZhbGlkX2F0ICAgICAgICAg ICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8 WzIwMjAtMDEtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKygxIHJvdykKKworc3RlcCBzMXVwZDIwMjU6 IAorICBVUERBVEUgcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAy NS0wMS0wMScgVE8gJzIwMjYtMDEtMDEnCisgIFNFVCBwcmljZSA9IDguMDAKKyAgV0hFUkUgaWQg PSAnWzEsMiknOworCitzdGVwIHMxYzogQ09NTUlUOworc3RlcCBzMmRlbDIwMjc6IAorICBERUxF VEUgRlJPTSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI3LTAx LTAxJyBUTyAnMjAyOC0wMS0wMScKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMyYzog Q09NTUlUOworc3RlcCBzMXE6IFNFTEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQsIHZh bGlkX2F0OworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDI1LTAxLTAxKXwg NS4wMAorWzEsMil8WzIwMjUtMDEtMDEsMjAyNi0wMS0wMSl8IDguMDAKK1sxLDIpfFsyMDI2LTAx LTAxLDIwMjctMDEtMDEpfCA1LjAwCitbMSwyKXxbMjAyOC0wMS0wMSwyMDMwLTAxLTAxKXwgNS4w MAorKDQgcm93cykKKworCitzdGFydGluZyBwZXJtdXRhdGlvbjogczFzZXIgczJzZXIgczFxIHMx dXBkMjAyNSBzMWMgczJkZWwyMDI1MDMgczJjIHMxcQorc3RlcCBzMXNlcjogQkVHSU4gSVNPTEFU SU9OIExFVkVMIFNFUklBTElaQUJMRTsKK3N0ZXAgczJzZXI6IEJFR0lOIElTT0xBVElPTiBMRVZF TCBTRVJJQUxJWkFCTEU7CitzdGVwIHMxcTogU0VMRUNUICogRlJPTSBwcm9kdWN0cyBPUkRFUiBC WSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQorLS0t LS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMzAt MDEtMDEpfCA1LjAwCisoMSByb3cpCisKK3N0ZXAgczF1cGQyMDI1OiAKKyAgVVBEQVRFIHByb2R1 Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDEtMDEnIFRPICcyMDI2 LTAxLTAxJworICBTRVQgcHJpY2UgPSA4LjAwCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3Rl cCBzMWM6IENPTU1JVDsKK3N0ZXAgczJkZWwyMDI1MDM6IAorICBERUxFVEUgRlJPTSBwcm9kdWN0 cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTAzLTAxJyBUTyAnMjAyNS0w NC0wMScKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMyYzogQ09NTUlUOworc3RlcCBz MXE6IFNFTEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworaWQgICB8 dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDI1LTAxLTAxKXwgNS4wMAorWzEsMil8WzIw MjUtMDEtMDEsMjAyNS0wMy0wMSl8IDguMDAKK1sxLDIpfFsyMDI1LTA0LTAxLDIwMjYtMDEtMDEp fCA4LjAwCitbMSwyKXxbMjAyNi0wMS0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDQgcm93cykKKwor CitzdGFydGluZyBwZXJtdXRhdGlvbjogczFzZXIgczJzZXIgczFxIHMxdXBkMjAyNSBzMWMgczJk ZWwyMDI1MjAyNiBzMmMgczFxCitzdGVwIHMxc2VyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgU0VS SUFMSVpBQkxFOworc3RlcCBzMnNlcjogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFNFUklBTElaQUJM RTsKK3N0ZXAgczFxOiBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9h dDsKK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0t LS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAtMDEtMDEsMjAzMC0wMS0wMSl8IDUuMDAK KygxIHJvdykKKworc3RlcCBzMXVwZDIwMjU6IAorICBVUERBVEUgcHJvZHVjdHMKKyAgRk9SIFBP UlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wMS0wMScgVE8gJzIwMjYtMDEtMDEnCisgIFNF VCBwcmljZSA9IDguMDAKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMxYzogQ09NTUlU Oworc3RlcCBzMmRlbDIwMjUyMDI2OiAKKyAgREVMRVRFIEZST00gcHJvZHVjdHMKKyAgRk9SIFBP UlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wNi0wMScgVE8gJzIwMjYtMDYtMDEnCisgIFdI RVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMmM6IENPTU1JVDsKK3N0ZXAgczFxOiBTRUxFQ1Qg KiBGUk9NIHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK2lkICAgfHZhbGlkX2F0ICAg ICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQor WzEsMil8WzIwMjAtMDEtMDEsMjAyNS0wMS0wMSl8IDUuMDAKK1sxLDIpfFsyMDI1LTAxLTAxLDIw MjUtMDYtMDEpfCA4LjAwCitbMSwyKXxbMjAyNi0wNi0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDMg cm93cykKKworCitzdGFydGluZyBwZXJtdXRhdGlvbjogczFzZXIgczJzZXIgczFxIHMyZGVsMjAy NyBzMXVwZDIwMjUgczJjIHMxYyBzMXEKK3N0ZXAgczFzZXI6IEJFR0lOIElTT0xBVElPTiBMRVZF TCBTRVJJQUxJWkFCTEU7CitzdGVwIHMyc2VyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgU0VSSUFM SVpBQkxFOworc3RlcCBzMXE6IFNFTEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQsIHZh bGlkX2F0OworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDMwLTAxLTAxKXwg NS4wMAorKDEgcm93KQorCitzdGVwIHMyZGVsMjAyNzogCisgIERFTEVURSBGUk9NIHByb2R1Y3Rz CisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjctMDEtMDEnIFRPICcyMDI4LTAx LTAxJworICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAgczF1cGQyMDI1OiAKKyAgVVBEQVRF IHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDEtMDEnIFRP ICcyMDI2LTAxLTAxJworICBTRVQgcHJpY2UgPSA4LjAwCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsK KyA8d2FpdGluZyAuLi4+CitzdGVwIHMyYzogQ09NTUlUOworc3RlcCBzMXVwZDIwMjU6IDwuLi4g Y29tcGxldGVkPgorRVJST1I6ICBjb3VsZCBub3Qgc2VyaWFsaXplIGFjY2VzcyBkdWUgdG8gY29u Y3VycmVudCBkZWxldGUKK3N0ZXAgczFjOiBDT01NSVQ7CitzdGVwIHMxcTogU0VMRUNUICogRlJP TSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAgICAgICAg ICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIp fFsyMDIwLTAxLTAxLDIwMjctMDEtMDEpfCA1LjAwCitbMSwyKXxbMjAyOC0wMS0wMSwyMDMwLTAx LTAxKXwgNS4wMAorKDIgcm93cykKKworCitzdGFydGluZyBwZXJtdXRhdGlvbjogczFzZXIgczJz ZXIgczFxIHMyZGVsMjAyNTAzIHMxdXBkMjAyNSBzMmMgczFjIHMxcQorc3RlcCBzMXNlcjogQkVH SU4gSVNPTEFUSU9OIExFVkVMIFNFUklBTElaQUJMRTsKK3N0ZXAgczJzZXI6IEJFR0lOIElTT0xB VElPTiBMRVZFTCBTRVJJQUxJWkFCTEU7CitzdGVwIHMxcTogU0VMRUNUICogRlJPTSBwcm9kdWN0 cyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxw cmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAx LTAxLDIwMzAtMDEtMDEpfCA1LjAwCisoMSByb3cpCisKK3N0ZXAgczJkZWwyMDI1MDM6IAorICBE RUxFVEUgRlJPTSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1 LTAzLTAxJyBUTyAnMjAyNS0wNC0wMScKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMx dXBkMjAyNTogCisgIFVQREFURSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBG Uk9NICcyMDI1LTAxLTAxJyBUTyAnMjAyNi0wMS0wMScKKyAgU0VUIHByaWNlID0gOC4wMAorICBX SEVSRSBpZCA9ICdbMSwyKSc7CisgPHdhaXRpbmcgLi4uPgorc3RlcCBzMmM6IENPTU1JVDsKK3N0 ZXAgczF1cGQyMDI1OiA8Li4uIGNvbXBsZXRlZD4KK0VSUk9SOiAgY291bGQgbm90IHNlcmlhbGl6 ZSBhY2Nlc3MgZHVlIHRvIGNvbmN1cnJlbnQgZGVsZXRlCitzdGVwIHMxYzogQ09NTUlUOworc3Rl cCBzMXE6IFNFTEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworaWQg ICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDI1LTAzLTAxKXwgNS4wMAorWzEsMil8 WzIwMjUtMDQtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKygyIHJvd3MpCisKKworc3RhcnRpbmcgcGVy bXV0YXRpb246IHMxc2VyIHMyc2VyIHMxcSBzMmRlbDIwMjUyMDI2IHMxdXBkMjAyNSBzMmMgczFj IHMxcQorc3RlcCBzMXNlcjogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFNFUklBTElaQUJMRTsKK3N0 ZXAgczJzZXI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBTRVJJQUxJWkFCTEU7CitzdGVwIHMxcTog U0VMRUNUICogRlJPTSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxp ZF9hdCAgICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0r LS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMzAtMDEtMDEpfCA1LjAwCisoMSByb3cpCisKK3N0 ZXAgczJkZWwyMDI1MjAyNjogCisgIERFTEVURSBGUk9NIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9O IE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDYtMDEnIFRPICcyMDI2LTA2LTAxJworICBXSEVSRSBp ZCA9ICdbMSwyKSc7CisKK3N0ZXAgczF1cGQyMDI1OiAKKyAgVVBEQVRFIHByb2R1Y3RzCisgIEZP UiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDEtMDEnIFRPICcyMDI2LTAxLTAxJwor ICBTRVQgcHJpY2UgPSA4LjAwCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKyA8d2FpdGluZyAuLi4+ CitzdGVwIHMyYzogQ09NTUlUOworc3RlcCBzMXVwZDIwMjU6IDwuLi4gY29tcGxldGVkPgorRVJS T1I6ICBjb3VsZCBub3Qgc2VyaWFsaXplIGFjY2VzcyBkdWUgdG8gY29uY3VycmVudCBkZWxldGUK K3N0ZXAgczFjOiBDT01NSVQ7CitzdGVwIHMxcTogU0VMRUNUICogRlJPTSBwcm9kdWN0cyBPUkRF UiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQor LS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIw MjUtMDYtMDEpfCA1LjAwCitbMSwyKXxbMjAyNi0wNi0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDIg cm93cykKKworCitzdGFydGluZyBwZXJtdXRhdGlvbjogczFzZXIgczJzZXIgczJ1cGQyMDI3IHMy YyBzMWRlbDIwMjUgczFjIHMxcQorc3RlcCBzMXNlcjogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFNF UklBTElaQUJMRTsKK3N0ZXAgczJzZXI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBTRVJJQUxJWkFC TEU7CitzdGVwIHMydXBkMjAyNzogCisgIFVQREFURSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBP RiB2YWxpZF9hdCBGUk9NICcyMDI3LTAxLTAxJyBUTyAnMjAyOC0wMS0wMScKKyAgU0VUIHByaWNl ID0gMTAuMDAKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMyYzogQ09NTUlUOworc3Rl cCBzMWRlbDIwMjU6IAorICBERUxFVEUgRlJPTSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2 YWxpZF9hdCBGUk9NICcyMDI1LTAxLTAxJyBUTyAnMjAyNi0wMS0wMScKKyAgV0hFUkUgaWQgPSAn WzEsMiknOworCitzdGVwIHMxYzogQ09NTUlUOworc3RlcCBzMXE6IFNFTEVDVCAqIEZST00gcHJv ZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAg ICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAy MC0wMS0wMSwyMDI1LTAxLTAxKXwgNS4wMAorWzEsMil8WzIwMjYtMDEtMDEsMjAyNy0wMS0wMSl8 IDUuMDAKK1sxLDIpfFsyMDI3LTAxLTAxLDIwMjgtMDEtMDEpfDEwLjAwCitbMSwyKXxbMjAyOC0w MS0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDQgcm93cykKKworCitzdGFydGluZyBwZXJtdXRhdGlv bjogczFzZXIgczJzZXIgczJ1cGQyMDI1MDMgczJjIHMxZGVsMjAyNSBzMWMgczFxCitzdGVwIHMx c2VyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgU0VSSUFMSVpBQkxFOworc3RlcCBzMnNlcjogQkVH SU4gSVNPTEFUSU9OIExFVkVMIFNFUklBTElaQUJMRTsKK3N0ZXAgczJ1cGQyMDI1MDM6IAorICBV UERBVEUgcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wMy0w MScgVE8gJzIwMjUtMDQtMDEnCisgIFNFVCBwcmljZSA9IDEwLjAwCisgIFdIRVJFIGlkID0gJ1sx LDIpJzsKKworc3RlcCBzMmM6IENPTU1JVDsKK3N0ZXAgczFkZWwyMDI1OiAKKyAgREVMRVRFIEZS T00gcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wMS0wMScg VE8gJzIwMjYtMDEtMDEnCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMWM6IENPTU1J VDsKK3N0ZXAgczFxOiBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9h dDsKK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0t LS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAtMDEtMDEsMjAyNS0wMS0wMSl8IDUuMDAK K1sxLDIpfFsyMDI2LTAxLTAxLDIwMzAtMDEtMDEpfCA1LjAwCisoMiByb3dzKQorCisKK3N0YXJ0 aW5nIHBlcm11dGF0aW9uOiBzMXNlciBzMnNlciBzMnVwZDIwMjUyMDI2IHMyYyBzMWRlbDIwMjUg czFjIHMxcQorc3RlcCBzMXNlcjogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFNFUklBTElaQUJMRTsK K3N0ZXAgczJzZXI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBTRVJJQUxJWkFCTEU7CitzdGVwIHMy dXBkMjAyNTIwMjY6IAorICBVUERBVEUgcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRf YXQgRlJPTSAnMjAyNS0wNi0wMScgVE8gJzIwMjYtMDYtMDEnCisgIFNFVCBwcmljZSA9IDEwLjAw CisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMmM6IENPTU1JVDsKK3N0ZXAgczFkZWwy MDI1OiAKKyAgREVMRVRFIEZST00gcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQg RlJPTSAnMjAyNS0wMS0wMScgVE8gJzIwMjYtMDEtMDEnCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsK Kworc3RlcCBzMWM6IENPTU1JVDsKK3N0ZXAgczFxOiBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzIE9S REVSIEJZIGlkLCB2YWxpZF9hdDsKK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAgfHByaWNl CistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAtMDEtMDEs MjAyNS0wMS0wMSl8IDUuMDAKK1sxLDIpfFsyMDI2LTAxLTAxLDIwMjYtMDYtMDEpfDEwLjAwCitb MSwyKXxbMjAyNi0wNi0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDMgcm93cykKKworCitzdGFydGlu ZyBwZXJtdXRhdGlvbjogczFzZXIgczJzZXIgczFkZWwyMDI1IHMxYyBzMnVwZDIwMjcgczJjIHMx cQorc3RlcCBzMXNlcjogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFNFUklBTElaQUJMRTsKK3N0ZXAg czJzZXI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBTRVJJQUxJWkFCTEU7CitzdGVwIHMxZGVsMjAy NTogCisgIERFTEVURSBGUk9NIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZS T00gJzIwMjUtMDEtMDEnIFRPICcyMDI2LTAxLTAxJworICBXSEVSRSBpZCA9ICdbMSwyKSc7CisK K3N0ZXAgczFjOiBDT01NSVQ7CitzdGVwIHMydXBkMjAyNzogCisgIFVQREFURSBwcm9kdWN0cwor ICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI3LTAxLTAxJyBUTyAnMjAyOC0wMS0w MScKKyAgU0VUIHByaWNlID0gMTAuMDAKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMy YzogQ09NTUlUOworc3RlcCBzMXE6IFNFTEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQs IHZhbGlkX2F0OworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDI1LTAxLTAx KXwgNS4wMAorWzEsMil8WzIwMjYtMDEtMDEsMjAyNy0wMS0wMSl8IDUuMDAKK1sxLDIpfFsyMDI3 LTAxLTAxLDIwMjgtMDEtMDEpfDEwLjAwCitbMSwyKXxbMjAyOC0wMS0wMSwyMDMwLTAxLTAxKXwg NS4wMAorKDQgcm93cykKKworCitzdGFydGluZyBwZXJtdXRhdGlvbjogczFzZXIgczJzZXIgczFk ZWwyMDI1IHMxYyBzMnVwZDIwMjUwMyBzMmMgczFxCitzdGVwIHMxc2VyOiBCRUdJTiBJU09MQVRJ T04gTEVWRUwgU0VSSUFMSVpBQkxFOworc3RlcCBzMnNlcjogQkVHSU4gSVNPTEFUSU9OIExFVkVM IFNFUklBTElaQUJMRTsKK3N0ZXAgczFkZWwyMDI1OiAKKyAgREVMRVRFIEZST00gcHJvZHVjdHMK KyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wMS0wMScgVE8gJzIwMjYtMDEt MDEnCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMWM6IENPTU1JVDsKK3N0ZXAgczJ1 cGQyMDI1MDM6IAorICBVUERBVEUgcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQg RlJPTSAnMjAyNS0wMy0wMScgVE8gJzIwMjUtMDQtMDEnCisgIFNFVCBwcmljZSA9IDEwLjAwCisg IFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMmM6IENPTU1JVDsKK3N0ZXAgczFxOiBTRUxF Q1QgKiBGUk9NIHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK2lkICAgfHZhbGlkX2F0 ICAgICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0t LQorWzEsMil8WzIwMjAtMDEtMDEsMjAyNS0wMS0wMSl8IDUuMDAKK1sxLDIpfFsyMDI2LTAxLTAx LDIwMzAtMDEtMDEpfCA1LjAwCisoMiByb3dzKQorCisKK3N0YXJ0aW5nIHBlcm11dGF0aW9uOiBz MXNlciBzMnNlciBzMWRlbDIwMjUgczFjIHMydXBkMjAyNTIwMjYgczJjIHMxcQorc3RlcCBzMXNl cjogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFNFUklBTElaQUJMRTsKK3N0ZXAgczJzZXI6IEJFR0lO IElTT0xBVElPTiBMRVZFTCBTRVJJQUxJWkFCTEU7CitzdGVwIHMxZGVsMjAyNTogCisgIERFTEVU RSBGUk9NIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDEt MDEnIFRPICcyMDI2LTAxLTAxJworICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAgczFjOiBD T01NSVQ7CitzdGVwIHMydXBkMjAyNTIwMjY6IAorICBVUERBVEUgcHJvZHVjdHMKKyAgRk9SIFBP UlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wNi0wMScgVE8gJzIwMjYtMDYtMDEnCisgIFNF VCBwcmljZSA9IDEwLjAwCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMmM6IENPTU1J VDsKK3N0ZXAgczFxOiBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9h dDsKK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0t LS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAtMDEtMDEsMjAyNS0wMS0wMSl8IDUuMDAK K1sxLDIpfFsyMDI2LTAxLTAxLDIwMjYtMDYtMDEpfDEwLjAwCitbMSwyKXxbMjAyNi0wNi0wMSwy MDMwLTAxLTAxKXwgNS4wMAorKDMgcm93cykKKworCitzdGFydGluZyBwZXJtdXRhdGlvbjogczFz ZXIgczJzZXIgczJ1cGQyMDI3IHMxZGVsMjAyNSBzMmMgczFjIHMxcQorc3RlcCBzMXNlcjogQkVH SU4gSVNPTEFUSU9OIExFVkVMIFNFUklBTElaQUJMRTsKK3N0ZXAgczJzZXI6IEJFR0lOIElTT0xB VElPTiBMRVZFTCBTRVJJQUxJWkFCTEU7CitzdGVwIHMydXBkMjAyNzogCisgIFVQREFURSBwcm9k dWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI3LTAxLTAxJyBUTyAnMjAy OC0wMS0wMScKKyAgU0VUIHByaWNlID0gMTAuMDAKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitz dGVwIHMxZGVsMjAyNTogCisgIERFTEVURSBGUk9NIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9G IHZhbGlkX2F0IEZST00gJzIwMjUtMDEtMDEnIFRPICcyMDI2LTAxLTAxJworICBXSEVSRSBpZCA9 ICdbMSwyKSc7CisgPHdhaXRpbmcgLi4uPgorc3RlcCBzMmM6IENPTU1JVDsKK3N0ZXAgczFkZWwy MDI1OiA8Li4uIGNvbXBsZXRlZD4KK0VSUk9SOiAgY291bGQgbm90IHNlcmlhbGl6ZSBhY2Nlc3Mg ZHVlIHRvIGNvbmN1cnJlbnQgdXBkYXRlCitzdGVwIHMxYzogQ09NTUlUOworc3RlcCBzMXE6IFNF TEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworaWQgICB8dmFsaWRf YXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0t LS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDI3LTAxLTAxKXwgNS4wMAorWzEsMil8WzIwMjctMDEt MDEsMjAyOC0wMS0wMSl8MTAuMDAKK1sxLDIpfFsyMDI4LTAxLTAxLDIwMzAtMDEtMDEpfCA1LjAw CisoMyByb3dzKQorCisKK3N0YXJ0aW5nIHBlcm11dGF0aW9uOiBzMXNlciBzMnNlciBzMnVwZDIw MjUwMyBzMWRlbDIwMjUgczJjIHMxYyBzMXEKK3N0ZXAgczFzZXI6IEJFR0lOIElTT0xBVElPTiBM RVZFTCBTRVJJQUxJWkFCTEU7CitzdGVwIHMyc2VyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgU0VS SUFMSVpBQkxFOworc3RlcCBzMnVwZDIwMjUwMzogCisgIFVQREFURSBwcm9kdWN0cworICBGT1Ig UE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTAzLTAxJyBUTyAnMjAyNS0wNC0wMScKKyAg U0VUIHByaWNlID0gMTAuMDAKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMxZGVsMjAy NTogCisgIERFTEVURSBGUk9NIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZS T00gJzIwMjUtMDEtMDEnIFRPICcyMDI2LTAxLTAxJworICBXSEVSRSBpZCA9ICdbMSwyKSc7Cisg PHdhaXRpbmcgLi4uPgorc3RlcCBzMmM6IENPTU1JVDsKK3N0ZXAgczFkZWwyMDI1OiA8Li4uIGNv bXBsZXRlZD4KK0VSUk9SOiAgY291bGQgbm90IHNlcmlhbGl6ZSBhY2Nlc3MgZHVlIHRvIGNvbmN1 cnJlbnQgdXBkYXRlCitzdGVwIHMxYzogQ09NTUlUOworc3RlcCBzMXE6IFNFTEVDVCAqIEZST00g cHJvZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworaWQgICB8dmFsaWRfYXQgICAgICAgICAg ICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxb MjAyMC0wMS0wMSwyMDI1LTAzLTAxKXwgNS4wMAorWzEsMil8WzIwMjUtMDMtMDEsMjAyNS0wNC0w MSl8MTAuMDAKK1sxLDIpfFsyMDI1LTA0LTAxLDIwMzAtMDEtMDEpfCA1LjAwCisoMyByb3dzKQor CisKK3N0YXJ0aW5nIHBlcm11dGF0aW9uOiBzMXNlciBzMnNlciBzMnVwZDIwMjUyMDI2IHMxZGVs MjAyNSBzMmMgczFjIHMxcQorc3RlcCBzMXNlcjogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFNFUklB TElaQUJMRTsKK3N0ZXAgczJzZXI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBTRVJJQUxJWkFCTEU7 CitzdGVwIHMydXBkMjAyNTIwMjY6IAorICBVUERBVEUgcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04g T0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wNi0wMScgVE8gJzIwMjYtMDYtMDEnCisgIFNFVCBwcmlj ZSA9IDEwLjAwCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMWRlbDIwMjU6IAorICBE RUxFVEUgRlJPTSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1 LTAxLTAxJyBUTyAnMjAyNi0wMS0wMScKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworIDx3YWl0aW5n IC4uLj4KK3N0ZXAgczJjOiBDT01NSVQ7CitzdGVwIHMxZGVsMjAyNTogPC4uLiBjb21wbGV0ZWQ+ CitFUlJPUjogIGNvdWxkIG5vdCBzZXJpYWxpemUgYWNjZXNzIGR1ZSB0byBjb25jdXJyZW50IHVw ZGF0ZQorc3RlcCBzMWM6IENPTU1JVDsKK3N0ZXAgczFxOiBTRUxFQ1QgKiBGUk9NIHByb2R1Y3Rz IE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAgfHBy aWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAtMDEt MDEsMjAyNS0wNi0wMSl8IDUuMDAKK1sxLDIpfFsyMDI1LTA2LTAxLDIwMjYtMDYtMDEpfDEwLjAw CitbMSwyKXxbMjAyNi0wNi0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDMgcm93cykKKworCitzdGFy dGluZyBwZXJtdXRhdGlvbjogczFzZXIgczJzZXIgczFxIHMydXBkMjAyNyBzMmMgczFkZWwyMDI1 IHMxYyBzMXEKK3N0ZXAgczFzZXI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBTRVJJQUxJWkFCTEU7 CitzdGVwIHMyc2VyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgU0VSSUFMSVpBQkxFOworc3RlcCBz MXE6IFNFTEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworaWQgICB8 dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDEgcm93KQor CitzdGVwIHMydXBkMjAyNzogCisgIFVQREFURSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2 YWxpZF9hdCBGUk9NICcyMDI3LTAxLTAxJyBUTyAnMjAyOC0wMS0wMScKKyAgU0VUIHByaWNlID0g MTAuMDAKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMyYzogQ09NTUlUOworc3RlcCBz MWRlbDIwMjU6IAorICBERUxFVEUgRlJPTSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxp ZF9hdCBGUk9NICcyMDI1LTAxLTAxJyBUTyAnMjAyNi0wMS0wMScKKyAgV0hFUkUgaWQgPSAnWzEs MiknOworCitFUlJPUjogIGNvdWxkIG5vdCBzZXJpYWxpemUgYWNjZXNzIGR1ZSB0byBjb25jdXJy ZW50IHVwZGF0ZQorc3RlcCBzMWM6IENPTU1JVDsKK3N0ZXAgczFxOiBTRUxFQ1QgKiBGUk9NIHBy b2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAg ICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIw MjAtMDEtMDEsMjAyNy0wMS0wMSl8IDUuMDAKK1sxLDIpfFsyMDI3LTAxLTAxLDIwMjgtMDEtMDEp fDEwLjAwCitbMSwyKXxbMjAyOC0wMS0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDMgcm93cykKKwor CitzdGFydGluZyBwZXJtdXRhdGlvbjogczFzZXIgczJzZXIgczFxIHMydXBkMjAyNTAzIHMyYyBz MWRlbDIwMjUgczFjIHMxcQorc3RlcCBzMXNlcjogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFNFUklB TElaQUJMRTsKK3N0ZXAgczJzZXI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBTRVJJQUxJWkFCTEU7 CitzdGVwIHMxcTogU0VMRUNUICogRlJPTSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7 CitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMzAtMDEtMDEpfCA1LjAwCiso MSByb3cpCisKK3N0ZXAgczJ1cGQyMDI1MDM6IAorICBVUERBVEUgcHJvZHVjdHMKKyAgRk9SIFBP UlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wMy0wMScgVE8gJzIwMjUtMDQtMDEnCisgIFNF VCBwcmljZSA9IDEwLjAwCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMmM6IENPTU1J VDsKK3N0ZXAgczFkZWwyMDI1OiAKKyAgREVMRVRFIEZST00gcHJvZHVjdHMKKyAgRk9SIFBPUlRJ T04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wMS0wMScgVE8gJzIwMjYtMDEtMDEnCisgIFdIRVJF IGlkID0gJ1sxLDIpJzsKKworRVJST1I6ICBjb3VsZCBub3Qgc2VyaWFsaXplIGFjY2VzcyBkdWUg dG8gY29uY3VycmVudCB1cGRhdGUKK3N0ZXAgczFjOiBDT01NSVQ7CitzdGVwIHMxcTogU0VMRUNU ICogRlJPTSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAg ICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0K K1sxLDIpfFsyMDIwLTAxLTAxLDIwMjUtMDMtMDEpfCA1LjAwCitbMSwyKXxbMjAyNS0wMy0wMSwy MDI1LTA0LTAxKXwxMC4wMAorWzEsMil8WzIwMjUtMDQtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKygz IHJvd3MpCisKKworc3RhcnRpbmcgcGVybXV0YXRpb246IHMxc2VyIHMyc2VyIHMxcSBzMnVwZDIw MjUyMDI2IHMyYyBzMWRlbDIwMjUgczFjIHMxcQorc3RlcCBzMXNlcjogQkVHSU4gSVNPTEFUSU9O IExFVkVMIFNFUklBTElaQUJMRTsKK3N0ZXAgczJzZXI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBT RVJJQUxJWkFCTEU7CitzdGVwIHMxcTogU0VMRUNUICogRlJPTSBwcm9kdWN0cyBPUkRFUiBCWSBp ZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQorLS0tLS0r LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMzAtMDEt MDEpfCA1LjAwCisoMSByb3cpCisKK3N0ZXAgczJ1cGQyMDI1MjAyNjogCisgIFVQREFURSBwcm9k dWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTA2LTAxJyBUTyAnMjAy Ni0wNi0wMScKKyAgU0VUIHByaWNlID0gMTAuMDAKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitz dGVwIHMyYzogQ09NTUlUOworc3RlcCBzMWRlbDIwMjU6IAorICBERUxFVEUgRlJPTSBwcm9kdWN0 cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTAxLTAxJyBUTyAnMjAyNi0w MS0wMScKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitFUlJPUjogIGNvdWxkIG5vdCBzZXJpYWxp emUgYWNjZXNzIGR1ZSB0byBjb25jdXJyZW50IHVwZGF0ZQorc3RlcCBzMWM6IENPTU1JVDsKK3N0 ZXAgczFxOiBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK2lk ICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0t LS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAtMDEtMDEsMjAyNS0wNi0wMSl8IDUuMDAKK1sxLDIp fFsyMDI1LTA2LTAxLDIwMjYtMDYtMDEpfDEwLjAwCitbMSwyKXxbMjAyNi0wNi0wMSwyMDMwLTAx LTAxKXwgNS4wMAorKDMgcm93cykKKworCitzdGFydGluZyBwZXJtdXRhdGlvbjogczFzZXIgczJz ZXIgczFxIHMxZGVsMjAyNSBzMWMgczJ1cGQyMDI3IHMyYyBzMXEKK3N0ZXAgczFzZXI6IEJFR0lO IElTT0xBVElPTiBMRVZFTCBTRVJJQUxJWkFCTEU7CitzdGVwIHMyc2VyOiBCRUdJTiBJU09MQVRJ T04gTEVWRUwgU0VSSUFMSVpBQkxFOworc3RlcCBzMXE6IFNFTEVDVCAqIEZST00gcHJvZHVjdHMg T1JERVIgQlkgaWQsIHZhbGlkX2F0OworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJp Y2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0w MSwyMDMwLTAxLTAxKXwgNS4wMAorKDEgcm93KQorCitzdGVwIHMxZGVsMjAyNTogCisgIERFTEVU RSBGUk9NIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDEt MDEnIFRPICcyMDI2LTAxLTAxJworICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAgczFjOiBD T01NSVQ7CitzdGVwIHMydXBkMjAyNzogCisgIFVQREFURSBwcm9kdWN0cworICBGT1IgUE9SVElP TiBPRiB2YWxpZF9hdCBGUk9NICcyMDI3LTAxLTAxJyBUTyAnMjAyOC0wMS0wMScKKyAgU0VUIHBy aWNlID0gMTAuMDAKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMyYzogQ09NTUlUOwor c3RlcCBzMXE6IFNFTEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0Owor aWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDI1LTAxLTAxKXwgNS4wMAorWzEs Mil8WzIwMjYtMDEtMDEsMjAyNy0wMS0wMSl8IDUuMDAKK1sxLDIpfFsyMDI3LTAxLTAxLDIwMjgt MDEtMDEpfDEwLjAwCitbMSwyKXxbMjAyOC0wMS0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDQgcm93 cykKKworCitzdGFydGluZyBwZXJtdXRhdGlvbjogczFzZXIgczJzZXIgczFxIHMxZGVsMjAyNSBz MWMgczJ1cGQyMDI1MDMgczJjIHMxcQorc3RlcCBzMXNlcjogQkVHSU4gSVNPTEFUSU9OIExFVkVM IFNFUklBTElaQUJMRTsKK3N0ZXAgczJzZXI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBTRVJJQUxJ WkFCTEU7CitzdGVwIHMxcTogU0VMRUNUICogRlJPTSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwgdmFs aWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMzAtMDEtMDEpfCA1 LjAwCisoMSByb3cpCisKK3N0ZXAgczFkZWwyMDI1OiAKKyAgREVMRVRFIEZST00gcHJvZHVjdHMK KyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wMS0wMScgVE8gJzIwMjYtMDEt MDEnCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMWM6IENPTU1JVDsKK3N0ZXAgczJ1 cGQyMDI1MDM6IAorICBVUERBVEUgcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQg RlJPTSAnMjAyNS0wMy0wMScgVE8gJzIwMjUtMDQtMDEnCisgIFNFVCBwcmljZSA9IDEwLjAwCisg IFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMmM6IENPTU1JVDsKK3N0ZXAgczFxOiBTRUxF Q1QgKiBGUk9NIHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK2lkICAgfHZhbGlkX2F0 ICAgICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0t LQorWzEsMil8WzIwMjAtMDEtMDEsMjAyNS0wMS0wMSl8IDUuMDAKK1sxLDIpfFsyMDI2LTAxLTAx LDIwMzAtMDEtMDEpfCA1LjAwCisoMiByb3dzKQorCisKK3N0YXJ0aW5nIHBlcm11dGF0aW9uOiBz MXNlciBzMnNlciBzMXEgczFkZWwyMDI1IHMxYyBzMnVwZDIwMjUyMDI2IHMyYyBzMXEKK3N0ZXAg czFzZXI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBTRVJJQUxJWkFCTEU7CitzdGVwIHMyc2VyOiBC RUdJTiBJU09MQVRJT04gTEVWRUwgU0VSSUFMSVpBQkxFOworc3RlcCBzMXE6IFNFTEVDVCAqIEZS T00gcHJvZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworaWQgICB8dmFsaWRfYXQgICAgICAg ICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwy KXxbMjAyMC0wMS0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDEgcm93KQorCitzdGVwIHMxZGVsMjAy NTogCisgIERFTEVURSBGUk9NIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZS T00gJzIwMjUtMDEtMDEnIFRPICcyMDI2LTAxLTAxJworICBXSEVSRSBpZCA9ICdbMSwyKSc7CisK K3N0ZXAgczFjOiBDT01NSVQ7CitzdGVwIHMydXBkMjAyNTIwMjY6IAorICBVUERBVEUgcHJvZHVj dHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wNi0wMScgVE8gJzIwMjYt MDYtMDEnCisgIFNFVCBwcmljZSA9IDEwLjAwCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3Rl cCBzMmM6IENPTU1JVDsKK3N0ZXAgczFxOiBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzIE9SREVSIEJZ IGlkLCB2YWxpZF9hdDsKK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAgfHByaWNlCistLS0t LSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAtMDEtMDEsMjAyNS0w MS0wMSl8IDUuMDAKK1sxLDIpfFsyMDI2LTAxLTAxLDIwMjYtMDYtMDEpfDEwLjAwCitbMSwyKXxb MjAyNi0wNi0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDMgcm93cykKKworCitzdGFydGluZyBwZXJt dXRhdGlvbjogczFzZXIgczJzZXIgczFxIHMydXBkMjAyNyBzMWRlbDIwMjUgczJjIHMxYyBzMXEK K3N0ZXAgczFzZXI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBTRVJJQUxJWkFCTEU7CitzdGVwIHMy c2VyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgU0VSSUFMSVpBQkxFOworc3RlcCBzMXE6IFNFTEVD VCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworaWQgICB8dmFsaWRfYXQg ICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0t CitbMSwyKXxbMjAyMC0wMS0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDEgcm93KQorCitzdGVwIHMy dXBkMjAyNzogCisgIFVQREFURSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBG Uk9NICcyMDI3LTAxLTAxJyBUTyAnMjAyOC0wMS0wMScKKyAgU0VUIHByaWNlID0gMTAuMDAKKyAg V0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMxZGVsMjAyNTogCisgIERFTEVURSBGUk9NIHBy b2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDEtMDEnIFRPICcy MDI2LTAxLTAxJworICBXSEVSRSBpZCA9ICdbMSwyKSc7CisgPHdhaXRpbmcgLi4uPgorc3RlcCBz MmM6IENPTU1JVDsKK3N0ZXAgczFkZWwyMDI1OiA8Li4uIGNvbXBsZXRlZD4KK0VSUk9SOiAgY291 bGQgbm90IHNlcmlhbGl6ZSBhY2Nlc3MgZHVlIHRvIGNvbmN1cnJlbnQgdXBkYXRlCitzdGVwIHMx YzogQ09NTUlUOworc3RlcCBzMXE6IFNFTEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQs IHZhbGlkX2F0OworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDI3LTAxLTAx KXwgNS4wMAorWzEsMil8WzIwMjctMDEtMDEsMjAyOC0wMS0wMSl8MTAuMDAKK1sxLDIpfFsyMDI4 LTAxLTAxLDIwMzAtMDEtMDEpfCA1LjAwCisoMyByb3dzKQorCisKK3N0YXJ0aW5nIHBlcm11dGF0 aW9uOiBzMXNlciBzMnNlciBzMXEgczJ1cGQyMDI1MDMgczFkZWwyMDI1IHMyYyBzMWMgczFxCitz dGVwIHMxc2VyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgU0VSSUFMSVpBQkxFOworc3RlcCBzMnNl cjogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFNFUklBTElaQUJMRTsKK3N0ZXAgczFxOiBTRUxFQ1Qg KiBGUk9NIHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK2lkICAgfHZhbGlkX2F0ICAg ICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQor WzEsMil8WzIwMjAtMDEtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKygxIHJvdykKKworc3RlcCBzMnVw ZDIwMjUwMzogCisgIFVQREFURSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBG Uk9NICcyMDI1LTAzLTAxJyBUTyAnMjAyNS0wNC0wMScKKyAgU0VUIHByaWNlID0gMTAuMDAKKyAg V0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMxZGVsMjAyNTogCisgIERFTEVURSBGUk9NIHBy b2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDEtMDEnIFRPICcy MDI2LTAxLTAxJworICBXSEVSRSBpZCA9ICdbMSwyKSc7CisgPHdhaXRpbmcgLi4uPgorc3RlcCBz MmM6IENPTU1JVDsKK3N0ZXAgczFkZWwyMDI1OiA8Li4uIGNvbXBsZXRlZD4KK0VSUk9SOiAgY291 bGQgbm90IHNlcmlhbGl6ZSBhY2Nlc3MgZHVlIHRvIGNvbmN1cnJlbnQgdXBkYXRlCitzdGVwIHMx YzogQ09NTUlUOworc3RlcCBzMXE6IFNFTEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQs IHZhbGlkX2F0OworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDI1LTAzLTAx KXwgNS4wMAorWzEsMil8WzIwMjUtMDMtMDEsMjAyNS0wNC0wMSl8MTAuMDAKK1sxLDIpfFsyMDI1 LTA0LTAxLDIwMzAtMDEtMDEpfCA1LjAwCisoMyByb3dzKQorCisKK3N0YXJ0aW5nIHBlcm11dGF0 aW9uOiBzMXNlciBzMnNlciBzMXEgczJ1cGQyMDI1MjAyNiBzMWRlbDIwMjUgczJjIHMxYyBzMXEK K3N0ZXAgczFzZXI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBTRVJJQUxJWkFCTEU7CitzdGVwIHMy c2VyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgU0VSSUFMSVpBQkxFOworc3RlcCBzMXE6IFNFTEVD VCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworaWQgICB8dmFsaWRfYXQg ICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0t CitbMSwyKXxbMjAyMC0wMS0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDEgcm93KQorCitzdGVwIHMy dXBkMjAyNTIwMjY6IAorICBVUERBVEUgcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRf YXQgRlJPTSAnMjAyNS0wNi0wMScgVE8gJzIwMjYtMDYtMDEnCisgIFNFVCBwcmljZSA9IDEwLjAw CisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMWRlbDIwMjU6IAorICBERUxFVEUgRlJP TSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTAxLTAxJyBU TyAnMjAyNi0wMS0wMScKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworIDx3YWl0aW5nIC4uLj4KK3N0 ZXAgczJjOiBDT01NSVQ7CitzdGVwIHMxZGVsMjAyNTogPC4uLiBjb21wbGV0ZWQ+CitFUlJPUjog IGNvdWxkIG5vdCBzZXJpYWxpemUgYWNjZXNzIGR1ZSB0byBjb25jdXJyZW50IHVwZGF0ZQorc3Rl cCBzMWM6IENPTU1JVDsKK3N0ZXAgczFxOiBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzIE9SREVSIEJZ IGlkLCB2YWxpZF9hdDsKK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAgfHByaWNlCistLS0t LSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAtMDEtMDEsMjAyNS0w Ni0wMSl8IDUuMDAKK1sxLDIpfFsyMDI1LTA2LTAxLDIwMjYtMDYtMDEpfDEwLjAwCitbMSwyKXxb MjAyNi0wNi0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDMgcm93cykKKworCitzdGFydGluZyBwZXJt dXRhdGlvbjogczFzZXIgczJzZXIgczJkZWwyMDI3IHMyYyBzMWRlbDIwMjUgczFjIHMxcQorc3Rl cCBzMXNlcjogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFNFUklBTElaQUJMRTsKK3N0ZXAgczJzZXI6 IEJFR0lOIElTT0xBVElPTiBMRVZFTCBTRVJJQUxJWkFCTEU7CitzdGVwIHMyZGVsMjAyNzogCisg IERFTEVURSBGUk9NIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIw MjctMDEtMDEnIFRPICcyMDI4LTAxLTAxJworICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAg czJjOiBDT01NSVQ7CitzdGVwIHMxZGVsMjAyNTogCisgIERFTEVURSBGUk9NIHByb2R1Y3RzCisg IEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDEtMDEnIFRPICcyMDI2LTAxLTAx JworICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAgczFjOiBDT01NSVQ7CitzdGVwIHMxcTog U0VMRUNUICogRlJPTSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxp ZF9hdCAgICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0r LS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMjUtMDEtMDEpfCA1LjAwCitbMSwyKXxbMjAyNi0w MS0wMSwyMDI3LTAxLTAxKXwgNS4wMAorWzEsMil8WzIwMjgtMDEtMDEsMjAzMC0wMS0wMSl8IDUu MDAKKygzIHJvd3MpCisKKworc3RhcnRpbmcgcGVybXV0YXRpb246IHMxc2VyIHMyc2VyIHMyZGVs MjAyNTAzIHMyYyBzMWRlbDIwMjUgczFjIHMxcQorc3RlcCBzMXNlcjogQkVHSU4gSVNPTEFUSU9O IExFVkVMIFNFUklBTElaQUJMRTsKK3N0ZXAgczJzZXI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBT RVJJQUxJWkFCTEU7CitzdGVwIHMyZGVsMjAyNTAzOiAKKyAgREVMRVRFIEZST00gcHJvZHVjdHMK KyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wMy0wMScgVE8gJzIwMjUtMDQt MDEnCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMmM6IENPTU1JVDsKK3N0ZXAgczFk ZWwyMDI1OiAKKyAgREVMRVRFIEZST00gcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRf YXQgRlJPTSAnMjAyNS0wMS0wMScgVE8gJzIwMjYtMDEtMDEnCisgIFdIRVJFIGlkID0gJ1sxLDIp JzsKKworc3RlcCBzMWM6IENPTU1JVDsKK3N0ZXAgczFxOiBTRUxFQ1QgKiBGUk9NIHByb2R1Y3Rz IE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAgfHBy aWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAtMDEt MDEsMjAyNS0wMS0wMSl8IDUuMDAKK1sxLDIpfFsyMDI2LTAxLTAxLDIwMzAtMDEtMDEpfCA1LjAw CisoMiByb3dzKQorCisKK3N0YXJ0aW5nIHBlcm11dGF0aW9uOiBzMXNlciBzMnNlciBzMmRlbDIw MjUyMDI2IHMyYyBzMWRlbDIwMjUgczFjIHMxcQorc3RlcCBzMXNlcjogQkVHSU4gSVNPTEFUSU9O IExFVkVMIFNFUklBTElaQUJMRTsKK3N0ZXAgczJzZXI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBT RVJJQUxJWkFCTEU7CitzdGVwIHMyZGVsMjAyNTIwMjY6IAorICBERUxFVEUgRlJPTSBwcm9kdWN0 cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTA2LTAxJyBUTyAnMjAyNi0w Ni0wMScKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMyYzogQ09NTUlUOworc3RlcCBz MWRlbDIwMjU6IAorICBERUxFVEUgRlJPTSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxp ZF9hdCBGUk9NICcyMDI1LTAxLTAxJyBUTyAnMjAyNi0wMS0wMScKKyAgV0hFUkUgaWQgPSAnWzEs MiknOworCitzdGVwIHMxYzogQ09NTUlUOworc3RlcCBzMXE6IFNFTEVDVCAqIEZST00gcHJvZHVj dHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8 cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0w MS0wMSwyMDI1LTAxLTAxKXwgNS4wMAorWzEsMil8WzIwMjYtMDYtMDEsMjAzMC0wMS0wMSl8IDUu MDAKKygyIHJvd3MpCisKKworc3RhcnRpbmcgcGVybXV0YXRpb246IHMxc2VyIHMyc2VyIHMxZGVs MjAyNSBzMWMgczJkZWwyMDI3IHMyYyBzMXEKK3N0ZXAgczFzZXI6IEJFR0lOIElTT0xBVElPTiBM RVZFTCBTRVJJQUxJWkFCTEU7CitzdGVwIHMyc2VyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgU0VS SUFMSVpBQkxFOworc3RlcCBzMWRlbDIwMjU6IAorICBERUxFVEUgRlJPTSBwcm9kdWN0cworICBG T1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTAxLTAxJyBUTyAnMjAyNi0wMS0wMScK KyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMxYzogQ09NTUlUOworc3RlcCBzMmRlbDIw Mjc6IAorICBERUxFVEUgRlJPTSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBG Uk9NICcyMDI3LTAxLTAxJyBUTyAnMjAyOC0wMS0wMScKKyAgV0hFUkUgaWQgPSAnWzEsMiknOwor CitzdGVwIHMyYzogQ09NTUlUOworc3RlcCBzMXE6IFNFTEVDVCAqIEZST00gcHJvZHVjdHMgT1JE RVIgQlkgaWQsIHZhbGlkX2F0OworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UK Ky0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwy MDI1LTAxLTAxKXwgNS4wMAorWzEsMil8WzIwMjYtMDEtMDEsMjAyNy0wMS0wMSl8IDUuMDAKK1sx LDIpfFsyMDI4LTAxLTAxLDIwMzAtMDEtMDEpfCA1LjAwCisoMyByb3dzKQorCisKK3N0YXJ0aW5n IHBlcm11dGF0aW9uOiBzMXNlciBzMnNlciBzMWRlbDIwMjUgczFjIHMyZGVsMjAyNTAzIHMyYyBz MXEKK3N0ZXAgczFzZXI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBTRVJJQUxJWkFCTEU7CitzdGVw IHMyc2VyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgU0VSSUFMSVpBQkxFOworc3RlcCBzMWRlbDIw MjU6IAorICBERUxFVEUgRlJPTSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBG Uk9NICcyMDI1LTAxLTAxJyBUTyAnMjAyNi0wMS0wMScKKyAgV0hFUkUgaWQgPSAnWzEsMiknOwor CitzdGVwIHMxYzogQ09NTUlUOworc3RlcCBzMmRlbDIwMjUwMzogCisgIERFTEVURSBGUk9NIHBy b2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDMtMDEnIFRPICcy MDI1LTA0LTAxJworICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAgczJjOiBDT01NSVQ7Citz dGVwIHMxcTogU0VMRUNUICogRlJPTSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7Citp ZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMjUtMDEtMDEpfCA1LjAwCitbMSwy KXxbMjAyNi0wMS0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDIgcm93cykKKworCitzdGFydGluZyBw ZXJtdXRhdGlvbjogczFzZXIgczJzZXIgczFkZWwyMDI1IHMxYyBzMmRlbDIwMjUyMDI2IHMyYyBz MXEKK3N0ZXAgczFzZXI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBTRVJJQUxJWkFCTEU7CitzdGVw IHMyc2VyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgU0VSSUFMSVpBQkxFOworc3RlcCBzMWRlbDIw MjU6IAorICBERUxFVEUgRlJPTSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBG Uk9NICcyMDI1LTAxLTAxJyBUTyAnMjAyNi0wMS0wMScKKyAgV0hFUkUgaWQgPSAnWzEsMiknOwor CitzdGVwIHMxYzogQ09NTUlUOworc3RlcCBzMmRlbDIwMjUyMDI2OiAKKyAgREVMRVRFIEZST00g cHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wNi0wMScgVE8g JzIwMjYtMDYtMDEnCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMmM6IENPTU1JVDsK K3N0ZXAgczFxOiBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsK K2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0t LS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAtMDEtMDEsMjAyNS0wMS0wMSl8IDUuMDAKK1sx LDIpfFsyMDI2LTA2LTAxLDIwMzAtMDEtMDEpfCA1LjAwCisoMiByb3dzKQorCisKK3N0YXJ0aW5n IHBlcm11dGF0aW9uOiBzMXNlciBzMnNlciBzMmRlbDIwMjcgczFkZWwyMDI1IHMyYyBzMWMgczFx CitzdGVwIHMxc2VyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgU0VSSUFMSVpBQkxFOworc3RlcCBz MnNlcjogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFNFUklBTElaQUJMRTsKK3N0ZXAgczJkZWwyMDI3 OiAKKyAgREVMRVRFIEZST00gcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJP TSAnMjAyNy0wMS0wMScgVE8gJzIwMjgtMDEtMDEnCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKwor c3RlcCBzMWRlbDIwMjU6IAorICBERUxFVEUgRlJPTSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBP RiB2YWxpZF9hdCBGUk9NICcyMDI1LTAxLTAxJyBUTyAnMjAyNi0wMS0wMScKKyAgV0hFUkUgaWQg PSAnWzEsMiknOworIDx3YWl0aW5nIC4uLj4KK3N0ZXAgczJjOiBDT01NSVQ7CitzdGVwIHMxZGVs MjAyNTogPC4uLiBjb21wbGV0ZWQ+CitFUlJPUjogIGNvdWxkIG5vdCBzZXJpYWxpemUgYWNjZXNz IGR1ZSB0byBjb25jdXJyZW50IGRlbGV0ZQorc3RlcCBzMWM6IENPTU1JVDsKK3N0ZXAgczFxOiBT RUxFQ1QgKiBGUk9NIHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK2lkICAgfHZhbGlk X2F0ICAgICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSst LS0tLQorWzEsMil8WzIwMjAtMDEtMDEsMjAyNy0wMS0wMSl8IDUuMDAKK1sxLDIpfFsyMDI4LTAx LTAxLDIwMzAtMDEtMDEpfCA1LjAwCisoMiByb3dzKQorCisKK3N0YXJ0aW5nIHBlcm11dGF0aW9u OiBzMXNlciBzMnNlciBzMmRlbDIwMjUwMyBzMWRlbDIwMjUgczJjIHMxYyBzMXEKK3N0ZXAgczFz ZXI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBTRVJJQUxJWkFCTEU7CitzdGVwIHMyc2VyOiBCRUdJ TiBJU09MQVRJT04gTEVWRUwgU0VSSUFMSVpBQkxFOworc3RlcCBzMmRlbDIwMjUwMzogCisgIERF TEVURSBGUk9NIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUt MDMtMDEnIFRPICcyMDI1LTA0LTAxJworICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAgczFk ZWwyMDI1OiAKKyAgREVMRVRFIEZST00gcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRf YXQgRlJPTSAnMjAyNS0wMS0wMScgVE8gJzIwMjYtMDEtMDEnCisgIFdIRVJFIGlkID0gJ1sxLDIp JzsKKyA8d2FpdGluZyAuLi4+CitzdGVwIHMyYzogQ09NTUlUOworc3RlcCBzMWRlbDIwMjU6IDwu Li4gY29tcGxldGVkPgorRVJST1I6ICBjb3VsZCBub3Qgc2VyaWFsaXplIGFjY2VzcyBkdWUgdG8g Y29uY3VycmVudCBkZWxldGUKK3N0ZXAgczFjOiBDT01NSVQ7CitzdGVwIHMxcTogU0VMRUNUICog RlJPTSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAgICAg ICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sx LDIpfFsyMDIwLTAxLTAxLDIwMjUtMDMtMDEpfCA1LjAwCitbMSwyKXxbMjAyNS0wNC0wMSwyMDMw LTAxLTAxKXwgNS4wMAorKDIgcm93cykKKworCitzdGFydGluZyBwZXJtdXRhdGlvbjogczFzZXIg czJzZXIgczJkZWwyMDI1MjAyNiBzMWRlbDIwMjUgczJjIHMxYyBzMXEKK3N0ZXAgczFzZXI6IEJF R0lOIElTT0xBVElPTiBMRVZFTCBTRVJJQUxJWkFCTEU7CitzdGVwIHMyc2VyOiBCRUdJTiBJU09M QVRJT04gTEVWRUwgU0VSSUFMSVpBQkxFOworc3RlcCBzMmRlbDIwMjUyMDI2OiAKKyAgREVMRVRF IEZST00gcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wNi0w MScgVE8gJzIwMjYtMDYtMDEnCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMWRlbDIw MjU6IAorICBERUxFVEUgRlJPTSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBG Uk9NICcyMDI1LTAxLTAxJyBUTyAnMjAyNi0wMS0wMScKKyAgV0hFUkUgaWQgPSAnWzEsMiknOwor IDx3YWl0aW5nIC4uLj4KK3N0ZXAgczJjOiBDT01NSVQ7CitzdGVwIHMxZGVsMjAyNTogPC4uLiBj b21wbGV0ZWQ+CitFUlJPUjogIGNvdWxkIG5vdCBzZXJpYWxpemUgYWNjZXNzIGR1ZSB0byBjb25j dXJyZW50IGRlbGV0ZQorc3RlcCBzMWM6IENPTU1JVDsKK3N0ZXAgczFxOiBTRUxFQ1QgKiBGUk9N IHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK2lkICAgfHZhbGlkX2F0ICAgICAgICAg ICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8 WzIwMjAtMDEtMDEsMjAyNS0wNi0wMSl8IDUuMDAKK1sxLDIpfFsyMDI2LTA2LTAxLDIwMzAtMDEt MDEpfCA1LjAwCisoMiByb3dzKQorCisKK3N0YXJ0aW5nIHBlcm11dGF0aW9uOiBzMXNlciBzMnNl ciBzMXEgczJkZWwyMDI3IHMyYyBzMWRlbDIwMjUgczFjIHMxcQorc3RlcCBzMXNlcjogQkVHSU4g SVNPTEFUSU9OIExFVkVMIFNFUklBTElaQUJMRTsKK3N0ZXAgczJzZXI6IEJFR0lOIElTT0xBVElP TiBMRVZFTCBTRVJJQUxJWkFCTEU7CitzdGVwIHMxcTogU0VMRUNUICogRlJPTSBwcm9kdWN0cyBP UkRFUiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmlj ZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAx LDIwMzAtMDEtMDEpfCA1LjAwCisoMSByb3cpCisKK3N0ZXAgczJkZWwyMDI3OiAKKyAgREVMRVRF IEZST00gcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNy0wMS0w MScgVE8gJzIwMjgtMDEtMDEnCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMmM6IENP TU1JVDsKK3N0ZXAgczFkZWwyMDI1OiAKKyAgREVMRVRFIEZST00gcHJvZHVjdHMKKyAgRk9SIFBP UlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wMS0wMScgVE8gJzIwMjYtMDEtMDEnCisgIFdI RVJFIGlkID0gJ1sxLDIpJzsKKworRVJST1I6ICBjb3VsZCBub3Qgc2VyaWFsaXplIGFjY2VzcyBk dWUgdG8gY29uY3VycmVudCBkZWxldGUKK3N0ZXAgczFjOiBDT01NSVQ7CitzdGVwIHMxcTogU0VM RUNUICogRlJPTSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9h dCAgICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0t LS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMjctMDEtMDEpfCA1LjAwCitbMSwyKXxbMjAyOC0wMS0w MSwyMDMwLTAxLTAxKXwgNS4wMAorKDIgcm93cykKKworCitzdGFydGluZyBwZXJtdXRhdGlvbjog czFzZXIgczJzZXIgczFxIHMyZGVsMjAyNTAzIHMyYyBzMWRlbDIwMjUgczFjIHMxcQorc3RlcCBz MXNlcjogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFNFUklBTElaQUJMRTsKK3N0ZXAgczJzZXI6IEJF R0lOIElTT0xBVElPTiBMRVZFTCBTRVJJQUxJWkFCTEU7CitzdGVwIHMxcTogU0VMRUNUICogRlJP TSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAgICAgICAg ICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIp fFsyMDIwLTAxLTAxLDIwMzAtMDEtMDEpfCA1LjAwCisoMSByb3cpCisKK3N0ZXAgczJkZWwyMDI1 MDM6IAorICBERUxFVEUgRlJPTSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBG Uk9NICcyMDI1LTAzLTAxJyBUTyAnMjAyNS0wNC0wMScKKyAgV0hFUkUgaWQgPSAnWzEsMiknOwor CitzdGVwIHMyYzogQ09NTUlUOworc3RlcCBzMWRlbDIwMjU6IAorICBERUxFVEUgRlJPTSBwcm9k dWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTAxLTAxJyBUTyAnMjAy Ni0wMS0wMScKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitFUlJPUjogIGNvdWxkIG5vdCBzZXJp YWxpemUgYWNjZXNzIGR1ZSB0byBjb25jdXJyZW50IGRlbGV0ZQorc3RlcCBzMWM6IENPTU1JVDsK K3N0ZXAgczFxOiBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsK K2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAgfHByaWNlCistLS0tLSstLS0tLS0tLS0tLS0t LS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAtMDEtMDEsMjAyNS0wMy0wMSl8IDUuMDAKK1sx LDIpfFsyMDI1LTA0LTAxLDIwMzAtMDEtMDEpfCA1LjAwCisoMiByb3dzKQorCisKK3N0YXJ0aW5n IHBlcm11dGF0aW9uOiBzMXNlciBzMnNlciBzMXEgczJkZWwyMDI1MjAyNiBzMmMgczFkZWwyMDI1 IHMxYyBzMXEKK3N0ZXAgczFzZXI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBTRVJJQUxJWkFCTEU7 CitzdGVwIHMyc2VyOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgU0VSSUFMSVpBQkxFOworc3RlcCBz MXE6IFNFTEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworaWQgICB8 dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDEgcm93KQor CitzdGVwIHMyZGVsMjAyNTIwMjY6IAorICBERUxFVEUgRlJPTSBwcm9kdWN0cworICBGT1IgUE9S VElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTA2LTAxJyBUTyAnMjAyNi0wNi0wMScKKyAgV0hF UkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMyYzogQ09NTUlUOworc3RlcCBzMWRlbDIwMjU6IAor ICBERUxFVEUgRlJPTSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcy MDI1LTAxLTAxJyBUTyAnMjAyNi0wMS0wMScKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitFUlJP UjogIGNvdWxkIG5vdCBzZXJpYWxpemUgYWNjZXNzIGR1ZSB0byBjb25jdXJyZW50IGRlbGV0ZQor c3RlcCBzMWM6IENPTU1JVDsKK3N0ZXAgczFxOiBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzIE9SREVS IEJZIGlkLCB2YWxpZF9hdDsKK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAgfHByaWNlCist LS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAtMDEtMDEsMjAy NS0wNi0wMSl8IDUuMDAKK1sxLDIpfFsyMDI2LTA2LTAxLDIwMzAtMDEtMDEpfCA1LjAwCisoMiBy b3dzKQorCisKK3N0YXJ0aW5nIHBlcm11dGF0aW9uOiBzMXNlciBzMnNlciBzMXEgczFkZWwyMDI1 IHMxYyBzMmRlbDIwMjcgczJjIHMxcQorc3RlcCBzMXNlcjogQkVHSU4gSVNPTEFUSU9OIExFVkVM IFNFUklBTElaQUJMRTsKK3N0ZXAgczJzZXI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBTRVJJQUxJ WkFCTEU7CitzdGVwIHMxcTogU0VMRUNUICogRlJPTSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwgdmFs aWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMzAtMDEtMDEpfCA1 LjAwCisoMSByb3cpCisKK3N0ZXAgczFkZWwyMDI1OiAKKyAgREVMRVRFIEZST00gcHJvZHVjdHMK KyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wMS0wMScgVE8gJzIwMjYtMDEt MDEnCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMWM6IENPTU1JVDsKK3N0ZXAgczJk ZWwyMDI3OiAKKyAgREVMRVRFIEZST00gcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRf YXQgRlJPTSAnMjAyNy0wMS0wMScgVE8gJzIwMjgtMDEtMDEnCisgIFdIRVJFIGlkID0gJ1sxLDIp JzsKKworc3RlcCBzMmM6IENPTU1JVDsKK3N0ZXAgczFxOiBTRUxFQ1QgKiBGUk9NIHByb2R1Y3Rz IE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKK2lkICAgfHZhbGlkX2F0ICAgICAgICAgICAgICAgfHBy aWNlCistLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLQorWzEsMil8WzIwMjAtMDEt MDEsMjAyNS0wMS0wMSl8IDUuMDAKK1sxLDIpfFsyMDI2LTAxLTAxLDIwMjctMDEtMDEpfCA1LjAw CitbMSwyKXxbMjAyOC0wMS0wMSwyMDMwLTAxLTAxKXwgNS4wMAorKDMgcm93cykKKworCitzdGFy dGluZyBwZXJtdXRhdGlvbjogczFzZXIgczJzZXIgczFxIHMxZGVsMjAyNSBzMWMgczJkZWwyMDI1 MDMgczJjIHMxcQorc3RlcCBzMXNlcjogQkVHSU4gSVNPTEFUSU9OIExFVkVMIFNFUklBTElaQUJM RTsKK3N0ZXAgczJzZXI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBTRVJJQUxJWkFCTEU7CitzdGVw IHMxcTogU0VMRUNUICogRlJPTSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAg IHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMzAtMDEtMDEpfCA1LjAwCisoMSByb3cp CisKK3N0ZXAgczFkZWwyMDI1OiAKKyAgREVMRVRFIEZST00gcHJvZHVjdHMKKyAgRk9SIFBPUlRJ T04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wMS0wMScgVE8gJzIwMjYtMDEtMDEnCisgIFdIRVJF IGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMWM6IENPTU1JVDsKK3N0ZXAgczJkZWwyMDI1MDM6IAor ICBERUxFVEUgRlJPTSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcy MDI1LTAzLTAxJyBUTyAnMjAyNS0wNC0wMScKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVw IHMyYzogQ09NTUlUOworc3RlcCBzMXE6IFNFTEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIgQlkg aWQsIHZhbGlkX2F0OworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0tLS0t Ky0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDI1LTAx LTAxKXwgNS4wMAorWzEsMil8WzIwMjYtMDEtMDEsMjAzMC0wMS0wMSl8IDUuMDAKKygyIHJvd3Mp CisKKworc3RhcnRpbmcgcGVybXV0YXRpb246IHMxc2VyIHMyc2VyIHMxcSBzMWRlbDIwMjUgczFj IHMyZGVsMjAyNTIwMjYgczJjIHMxcQorc3RlcCBzMXNlcjogQkVHSU4gSVNPTEFUSU9OIExFVkVM IFNFUklBTElaQUJMRTsKK3N0ZXAgczJzZXI6IEJFR0lOIElTT0xBVElPTiBMRVZFTCBTRVJJQUxJ WkFCTEU7CitzdGVwIHMxcTogU0VMRUNUICogRlJPTSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwgdmFs aWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIwMzAtMDEtMDEpfCA1 LjAwCisoMSByb3cpCisKK3N0ZXAgczFkZWwyMDI1OiAKKyAgREVMRVRFIEZST00gcHJvZHVjdHMK KyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNS0wMS0wMScgVE8gJzIwMjYtMDEt MDEnCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworc3RlcCBzMWM6IENPTU1JVDsKK3N0ZXAgczJk ZWwyMDI1MjAyNjogCisgIERFTEVURSBGUk9NIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZh bGlkX2F0IEZST00gJzIwMjUtMDYtMDEnIFRPICcyMDI2LTA2LTAxJworICBXSEVSRSBpZCA9ICdb MSwyKSc7CisKK3N0ZXAgczJjOiBDT01NSVQ7CitzdGVwIHMxcTogU0VMRUNUICogRlJPTSBwcm9k dWN0cyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAg IHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIw LTAxLTAxLDIwMjUtMDEtMDEpfCA1LjAwCitbMSwyKXxbMjAyNi0wNi0wMSwyMDMwLTAxLTAxKXwg NS4wMAorKDIgcm93cykKKworCitzdGFydGluZyBwZXJtdXRhdGlvbjogczFzZXIgczJzZXIgczFx IHMyZGVsMjAyNyBzMWRlbDIwMjUgczJjIHMxYyBzMXEKK3N0ZXAgczFzZXI6IEJFR0lOIElTT0xB VElPTiBMRVZFTCBTRVJJQUxJWkFCTEU7CitzdGVwIHMyc2VyOiBCRUdJTiBJU09MQVRJT04gTEVW RUwgU0VSSUFMSVpBQkxFOworc3RlcCBzMXE6IFNFTEVDVCAqIEZST00gcHJvZHVjdHMgT1JERVIg QlkgaWQsIHZhbGlkX2F0OworaWQgICB8dmFsaWRfYXQgICAgICAgICAgICAgICB8cHJpY2UKKy0t LS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxbMjAyMC0wMS0wMSwyMDMw LTAxLTAxKXwgNS4wMAorKDEgcm93KQorCitzdGVwIHMyZGVsMjAyNzogCisgIERFTEVURSBGUk9N IHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjctMDEtMDEnIFRP ICcyMDI4LTAxLTAxJworICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAgczFkZWwyMDI1OiAK KyAgREVMRVRFIEZST00gcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAn MjAyNS0wMS0wMScgVE8gJzIwMjYtMDEtMDEnCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKKyA8d2Fp dGluZyAuLi4+CitzdGVwIHMyYzogQ09NTUlUOworc3RlcCBzMWRlbDIwMjU6IDwuLi4gY29tcGxl dGVkPgorRVJST1I6ICBjb3VsZCBub3Qgc2VyaWFsaXplIGFjY2VzcyBkdWUgdG8gY29uY3VycmVu dCBkZWxldGUKK3N0ZXAgczFjOiBDT01NSVQ7CitzdGVwIHMxcTogU0VMRUNUICogRlJPTSBwcm9k dWN0cyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAg IHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIw LTAxLTAxLDIwMjctMDEtMDEpfCA1LjAwCitbMSwyKXxbMjAyOC0wMS0wMSwyMDMwLTAxLTAxKXwg NS4wMAorKDIgcm93cykKKworCitzdGFydGluZyBwZXJtdXRhdGlvbjogczFzZXIgczJzZXIgczFx IHMyZGVsMjAyNTAzIHMxZGVsMjAyNSBzMmMgczFjIHMxcQorc3RlcCBzMXNlcjogQkVHSU4gSVNP TEFUSU9OIExFVkVMIFNFUklBTElaQUJMRTsKK3N0ZXAgczJzZXI6IEJFR0lOIElTT0xBVElPTiBM RVZFTCBTRVJJQUxJWkFCTEU7CitzdGVwIHMxcTogU0VMRUNUICogRlJPTSBwcm9kdWN0cyBPUkRF UiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxwcmljZQor LS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAxLTAxLDIw MzAtMDEtMDEpfCA1LjAwCisoMSByb3cpCisKK3N0ZXAgczJkZWwyMDI1MDM6IAorICBERUxFVEUg RlJPTSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTAzLTAx JyBUTyAnMjAyNS0wNC0wMScKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworCitzdGVwIHMxZGVsMjAy NTogCisgIERFTEVURSBGUk9NIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZS T00gJzIwMjUtMDEtMDEnIFRPICcyMDI2LTAxLTAxJworICBXSEVSRSBpZCA9ICdbMSwyKSc7Cisg PHdhaXRpbmcgLi4uPgorc3RlcCBzMmM6IENPTU1JVDsKK3N0ZXAgczFkZWwyMDI1OiA8Li4uIGNv bXBsZXRlZD4KK0VSUk9SOiAgY291bGQgbm90IHNlcmlhbGl6ZSBhY2Nlc3MgZHVlIHRvIGNvbmN1 cnJlbnQgZGVsZXRlCitzdGVwIHMxYzogQ09NTUlUOworc3RlcCBzMXE6IFNFTEVDVCAqIEZST00g cHJvZHVjdHMgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworaWQgICB8dmFsaWRfYXQgICAgICAgICAg ICAgICB8cHJpY2UKKy0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tCitbMSwyKXxb MjAyMC0wMS0wMSwyMDI1LTAzLTAxKXwgNS4wMAorWzEsMil8WzIwMjUtMDQtMDEsMjAzMC0wMS0w MSl8IDUuMDAKKygyIHJvd3MpCisKKworc3RhcnRpbmcgcGVybXV0YXRpb246IHMxc2VyIHMyc2Vy IHMxcSBzMmRlbDIwMjUyMDI2IHMxZGVsMjAyNSBzMmMgczFjIHMxcQorc3RlcCBzMXNlcjogQkVH SU4gSVNPTEFUSU9OIExFVkVMIFNFUklBTElaQUJMRTsKK3N0ZXAgczJzZXI6IEJFR0lOIElTT0xB VElPTiBMRVZFTCBTRVJJQUxJWkFCTEU7CitzdGVwIHMxcTogU0VMRUNUICogRlJPTSBwcm9kdWN0 cyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAgICAgICAgICAgICAgIHxw cmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0KK1sxLDIpfFsyMDIwLTAx LTAxLDIwMzAtMDEtMDEpfCA1LjAwCisoMSByb3cpCisKK3N0ZXAgczJkZWwyMDI1MjAyNjogCisg IERFTEVURSBGUk9NIHByb2R1Y3RzCisgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIw MjUtMDYtMDEnIFRPICcyMDI2LTA2LTAxJworICBXSEVSRSBpZCA9ICdbMSwyKSc7CisKK3N0ZXAg czFkZWwyMDI1OiAKKyAgREVMRVRFIEZST00gcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFs aWRfYXQgRlJPTSAnMjAyNS0wMS0wMScgVE8gJzIwMjYtMDEtMDEnCisgIFdIRVJFIGlkID0gJ1sx LDIpJzsKKyA8d2FpdGluZyAuLi4+CitzdGVwIHMyYzogQ09NTUlUOworc3RlcCBzMWRlbDIwMjU6 IDwuLi4gY29tcGxldGVkPgorRVJST1I6ICBjb3VsZCBub3Qgc2VyaWFsaXplIGFjY2VzcyBkdWUg dG8gY29uY3VycmVudCBkZWxldGUKK3N0ZXAgczFjOiBDT01NSVQ7CitzdGVwIHMxcTogU0VMRUNU ICogRlJPTSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CitpZCAgIHx2YWxpZF9hdCAg ICAgICAgICAgICAgIHxwcmljZQorLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0K K1sxLDIpfFsyMDIwLTAxLTAxLDIwMjUtMDYtMDEpfCA1LjAwCitbMSwyKXxbMjAyNi0wNi0wMSwy MDMwLTAxLTAxKXwgNS4wMAorKDIgcm93cykKKwpkaWZmIC0tZ2l0IGEvc3JjL3Rlc3QvaXNvbGF0 aW9uL2lzb2xhdGlvbl9zY2hlZHVsZSBiL3NyYy90ZXN0L2lzb2xhdGlvbi9pc29sYXRpb25fc2No ZWR1bGUKaW5kZXggMTEyZjA1YTM2NzcuLmUwOTQyYmFlZTcyIDEwMDY0NAotLS0gYS9zcmMvdGVz dC9pc29sYXRpb24vaXNvbGF0aW9uX3NjaGVkdWxlCisrKyBiL3NyYy90ZXN0L2lzb2xhdGlvbi9p c29sYXRpb25fc2NoZWR1bGUKQEAgLTExOSwzICsxMTksNCBAQCB0ZXN0OiBzZXJpYWxpemFibGUt cGFyYWxsZWwtMgogdGVzdDogc2VyaWFsaXphYmxlLXBhcmFsbGVsLTMKIHRlc3Q6IG1hdHZpZXct d3JpdGUtc2tldwogdGVzdDogbG9jay1ub3dhaXQKK3Rlc3Q6IGZvci1wb3J0aW9uLW9mCmRpZmYg LS1naXQgYS9zcmMvdGVzdC9pc29sYXRpb24vc3BlY3MvZm9yLXBvcnRpb24tb2Yuc3BlYyBiL3Ny Yy90ZXN0L2lzb2xhdGlvbi9zcGVjcy9mb3ItcG9ydGlvbi1vZi5zcGVjCm5ldyBmaWxlIG1vZGUg MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwLi45NDJlZmQ0MzliYQotLS0gL2Rldi9udWxsCisrKyBi L3NyYy90ZXN0L2lzb2xhdGlvbi9zcGVjcy9mb3ItcG9ydGlvbi1vZi5zcGVjCkBAIC0wLDAgKzEs NzUwIEBACisjIFVQREFURS9ERUxFVEUgRk9SIFBPUlRJT04gT0YgdGVzdAorIworIyBUZXN0IGlu c2VydGluZyB0ZW1wb3JhbCBsZWZ0b3ZlcnMgZnJvbSBhIEZPUiBQT1JUSU9OIE9GIHVwZGF0ZS9k ZWxldGUuCisjCisjIEluIFJFQUQgQ09NTUlUVEVEIG1vZGUsIGNvbmN1cnJlbnQgdXBkYXRlcy9k ZWxldGVzIHRvIHRoZSBzYW1lIHJlY29yZHMgY2F1c2UKKyMgd2VpcmQgcmVzdWx0cy4gUG9ydGlv bnMgb2YgaGlzdG9yeSB0aGF0IHNob3VsZCBoYXZlIGJlZW4gdXBkYXRlZC9kZWxldGVkIGRvbid0 CisjIGdldCBjaGFuZ2VkLiBUaGF0J3MgYmVjYXVzZSB0aGUgbGVmdG92ZXJzIGZyb20gb25lIG9w ZXJhdGlvbiBhcmUgYWRkZWQgdG9vCisjIGxhdGUgdG8gYmUgc2VlbiBieSB0aGUgb3RoZXIuIEV2 YWxQbGFuUXVhbCB3aWxsIHJlbG9hZCB0aGUgY2hhbmdlZC1pbi1jb21tb24KKyMgcm93LCBidXQg aXQgd29uJ3QgcmUtc2NhbiB0byBmaW5kIG5ldyBsZWZ0b3ZlcnMuCisjCisjIE1hcmlhREIgc2lt aWxhcmx5IGdpdmVzIHVuZGVzaXJhYmxlIHJlc3VsdHMgaW4gUkVBRCBDT01NSVRURUQgbW9kZSAo YWx0aG91Z2gKKyMgbm90IHRoZSBzYW1lIHJlc3VsdHMpLiBEQjIgZG9lc24ndCBoYXZlIFJFQUQg Q09NTUlUVEVELCBidXQgaXQgZ2l2ZXMgY29ycmVjdAorIyByZXN1bHRzIGF0IGFsbCBsZXZlbHMs IGluIHBhcnRpY3VsYXIgUkVBRCBTVEFCSUxJVFkgKHdoaWNoIHNlZW1zIGNsb3Nlc3QpLgorIwor IyBBIHdvcmthcm91bmQgaXMgdG8gbG9jayB0aGUgcGFydCBvZiBoaXN0b3J5IHlvdSB3YW50IGJl Zm9yZSBjaGFuZ2luZyBpdCAodXNpbmcKKyMgU0VMRUNUIEZPUiBVUERBVEUpLiBUaGF0IHdheSB0 aGUgc2VhcmNoIGZvciByb3dzIGlzIGxhdGUgZW5vdWdoIHRvIHNlZQorIyBsZWZ0b3ZlcnMgZnJv bSB0aGUgb3RoZXIgc2Vzc2lvbihzKS4gVGhpcyBzaG91bGRuJ3QgaW1wb3NlIGFueSBuZXcgZGVh ZGxvY2sKKyMgcmlza3MsIHNpbmNlIHRoZSBsb2NrcyBhcmUgdGhlIHNhbWUgYXMgYmVmb3JlLiBB ZGRpbmcgYSB0aGlyZC9mb3VydGgvZXRjLgorIyBjb25uZWN0aW9uIGFsc28gZG9lc24ndCBjaGFu Z2UgdGhlIHNlbWFudGljcy4gVGhlIFJFQUQgQ09NTUlUVEVEIHRlc3RzIGhlcmUKKyMgdXNlIHRo YXQgYXBwcm9hY2ggdG8gcHJvdmUgdGhhdCBpdCdzIHZpYWJsZSBhbmQgaXNuJ3Qgdml0aWF0ZWQg YnkgYW55IGJ1Z3MuCisjIEluY2lkZW50YWxseSwgdGhpcyBhcHByb2FjaCBhbHNvIHdvcmtzIGlu IE1hcmlhREIuCisjCisjIFdlIHJ1biB0aGUgc2FtZSB0ZXN0cyB1bmRlciBSRVBFQVRBQkxFIFJF QUQgYW5kIFNFUklBTElaQUJMRS4KKyMgSW4gZ2VuZXJhbCB0aGV5IGRvIHdoYXQgeW91J2Qgd2Fu dCB3aXRoIG5vIGV4cGxpY2l0IGxvY2tpbmcgcmVxdWlyZWQsIGJ1dCBzb21lCisjIG9yZGVyaW5n cyByYWlzZSBhIGNvbmN1cnJlbnQgdXBkYXRlL2RlbGV0ZSBmYWlsdXJlIChhcyBleHBlY3RlZCku IElmIHRoZXJlIGlzCisjIGEgcHJpb3IgcmVhZCBieSBzMSwgY29uY3VycmVudCB1cGRhdGUvZGVs ZXRlIGZhaWx1cmVzIGFyZSBtb3JlIGNvbW1vbi4KKyMKKyMgV2UgdGVzdCB1cGRhdGVzIHdoZXJl IHMyIHVwZGF0ZXMgaGlzdG9yeSB0aGF0IGlzOgorIworIyAtIG5vbi1vdmVybGFwcGluZyB3aXRo IHMxLAorIyAtIGNvbnRhaW5lZCBlbnRpcmVseSBpbiBzMSwKKyMgLSBwYXJ0bHkgY29udGFpbmVk IGluIHMxLgorIworIyBXZSBkb24ndCBuZWVkIHRvIHRlc3Qgd2hlcmUgczIgZW50aXJlbHkgY29u dGFpbnMgczEgYmVjYXVzZSBvZiBzeW1tZXRyeToKKyMgd2UgdGVzdCBib3RoIHdoZW4gczEgcHJl Y2VkZXMgczIgYW5kIHdoZW4gczIgcHJlY2VkZXMgczEsICBzbyB0aGF0IHNjZW5hcmlvIGlzCisj IGNvdmVyZWQuCisjCisjIFdlIHRlc3QgdmFyaW91cyBvcmRlcmluZ3Mgb2YgdGhlIHVwZGF0ZS9k ZWxldGUvY29tbWl0IGZyb20gczEgYW5kIHMyLgorIyBOb3RlIHRoYXQgYHMxbG9jayBzMmxvY2sg czFjaGFuZ2VgIGlzIGJvcmluZyBiZWNhdXNlIGl0J3MgdGhlIHNhbWUgYXMKKyMgYHMxbG9jayBz MWNoYW5nZSBzMmxvY2tgLiBJbiBvdGhlciB3b3JkcyBpdCBkb2Vzbid0IG1hdHRlciBpZiBzb21l dGhpbmcKKyMgaW50ZXJwb3NlcyBiZXR3ZWVuIHRoZSBsb2NrIGFuZCBpdHMgY2hhbmdlIChhcyBs b25nIGFzIGV2ZXJ5b25lIGlzIGZvbGxvd2luZworIyB0aGUgc2FtZSBwb2xpY3kpLgorCitzZXR1 cAoreworICBDUkVBVEUgVEFCTEUgcHJvZHVjdHMgKAorCWlkIGludDRyYW5nZSBOT1QgTlVMTCwK Kwl2YWxpZF9hdCBkYXRlcmFuZ2UgTk9UIE5VTEwsCisJcHJpY2UgZGVjaW1hbCBOT1QgTlVMTCwK KwlQUklNQVJZIEtFWSAoaWQsIHZhbGlkX2F0IFdJVEhPVVQgT1ZFUkxBUFMpKTsKKyAgSU5TRVJU IElOVE8gcHJvZHVjdHMgVkFMVUVTCisJKCdbMSwyKScsICdbMjAyMC0wMS0wMSwyMDMwLTAxLTAx KScsIDUuMDApOworfQorCit0ZWFyZG93biB7IERST1AgVEFCTEUgcHJvZHVjdHM7IH0KKworc2Vz c2lvbiBzMQorc2V0dXAJCXsgU0VUIGRhdGVzdHlsZSBUTyBJU08sIFlNRDsgfQorc3RlcCBzMXJj CXsgQkVHSU4gSVNPTEFUSU9OIExFVkVMIFJFQUQgQ09NTUlUVEVEOyB9CitzdGVwIHMxcnIJeyBC RUdJTiBJU09MQVRJT04gTEVWRUwgUkVQRUFUQUJMRSBSRUFEOyB9CitzdGVwIHMxc2VyCXsgQkVH SU4gSVNPTEFUSU9OIExFVkVMIFNFUklBTElaQUJMRTsgfQorc3RlcCBzMWxvY2syMDI1IHsKKyAg U0VMRUNUICogRlJPTSBwcm9kdWN0cworICBXSEVSRSBpZCA9ICdbMSwyKScgQU5EIHZhbGlkX2F0 ICYmICdbMjAyNS0wMS0wMSwyMDI2LTAxLTAxKScKKyAgT1JERVIgQlkgdmFsaWRfYXQgRk9SIFVQ REFURTsKK30KK3N0ZXAgczF1cGQyMDI1CXsKKyAgVVBEQVRFIHByb2R1Y3RzCisgIEZPUiBQT1JU SU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMjUtMDEtMDEnIFRPICcyMDI2LTAxLTAxJworICBTRVQg cHJpY2UgPSA4LjAwCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKK30KK3N0ZXAgczFkZWwyMDI1IHsK KyAgREVMRVRFIEZST00gcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAn MjAyNS0wMS0wMScgVE8gJzIwMjYtMDEtMDEnCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKK30KK3N0 ZXAgczFxCXsgU0VMRUNUICogRlJPTSBwcm9kdWN0cyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7IH0K K3N0ZXAgczFjCXsgQ09NTUlUOyB9CisKK3Nlc3Npb24gczIKK3NldHVwCQl7IFNFVCBkYXRlc3R5 bGUgVE8gSVNPLCBZTUQ7IH0KK3N0ZXAgczJyYwl7IEJFR0lOIElTT0xBVElPTiBMRVZFTCBSRUFE IENPTU1JVFRFRDsgfQorc3RlcCBzMnJyCXsgQkVHSU4gSVNPTEFUSU9OIExFVkVMIFJFUEVBVEFC TEUgUkVBRDsgfQorc3RlcCBzMnNlcgl7IEJFR0lOIElTT0xBVElPTiBMRVZFTCBTRVJJQUxJWkFC TEU7IH0KK3N0ZXAgczJsb2NrMjAyNTAzIHsKKyAgU0VMRUNUICogRlJPTSBwcm9kdWN0cworICBX SEVSRSBpZCA9ICdbMSwyKScgQU5EIHZhbGlkX2F0ICYmICdbMjAyNS0wMy0wMSwyMDI1LTA0LTAx KScKKyAgT1JERVIgQlkgdmFsaWRfYXQgRk9SIFVQREFURTsKK30KK3N0ZXAgczJsb2NrMjAyNTIw MjYgeworICBTRUxFQ1QgKiBGUk9NIHByb2R1Y3RzCisgIFdIRVJFIGlkID0gJ1sxLDIpJyBBTkQg dmFsaWRfYXQgJiYgJ1syMDI1LTA2LTAxLDIwMjYtMDYtMDEpJworICBPUkRFUiBCWSB2YWxpZF9h dCBGT1IgVVBEQVRFOworfQorc3RlcCBzMmxvY2syMDI3IHsKKyAgU0VMRUNUICogRlJPTSBwcm9k dWN0cworICBXSEVSRSBpZCA9ICdbMSwyKScgQU5EIHZhbGlkX2F0ICYmICdbMjAyNy0wMS0wMSwy MDI4LTAxLTAxKScKKyAgT1JERVIgQlkgdmFsaWRfYXQgRk9SIFVQREFURTsKK30KK3N0ZXAgczJ1 cGQyMDI1MDMgeworICBVUERBVEUgcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQg RlJPTSAnMjAyNS0wMy0wMScgVE8gJzIwMjUtMDQtMDEnCisgIFNFVCBwcmljZSA9IDEwLjAwCisg IFdIRVJFIGlkID0gJ1sxLDIpJzsKK30KK3N0ZXAgczJ1cGQyMDI1MjAyNiB7CisgIFVQREFURSBw cm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1LTA2LTAxJyBUTyAn MjAyNi0wNi0wMScKKyAgU0VUIHByaWNlID0gMTAuMDAKKyAgV0hFUkUgaWQgPSAnWzEsMiknOwor fQorc3RlcCBzMnVwZDIwMjcgeworICBVUERBVEUgcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0Yg dmFsaWRfYXQgRlJPTSAnMjAyNy0wMS0wMScgVE8gJzIwMjgtMDEtMDEnCisgIFNFVCBwcmljZSA9 IDEwLjAwCisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKK30KK3N0ZXAgczJkZWwyMDI1MDMgeworICBE RUxFVEUgRlJPTSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDI1 LTAzLTAxJyBUTyAnMjAyNS0wNC0wMScKKyAgV0hFUkUgaWQgPSAnWzEsMiknOworfQorc3RlcCBz MmRlbDIwMjUyMDI2IHsKKyAgREVMRVRFIEZST00gcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0Yg dmFsaWRfYXQgRlJPTSAnMjAyNS0wNi0wMScgVE8gJzIwMjYtMDYtMDEnCisgIFdIRVJFIGlkID0g J1sxLDIpJzsKK30KK3N0ZXAgczJkZWwyMDI3IHsKKyAgREVMRVRFIEZST00gcHJvZHVjdHMKKyAg Rk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyNy0wMS0wMScgVE8gJzIwMjgtMDEtMDEn CisgIFdIRVJFIGlkID0gJ1sxLDIpJzsKK30KK3N0ZXAgczJjCXsgQ09NTUlUOyB9CisKKyMgIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIworIyBSRUFEIENPTU1JVFRFRCB0 ZXN0cywgVVBEQVRFK1VQREFURToKKyMgIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIworCisjIHMxIHNlZXMgdGhlIGxlZnRvdmVycworcGVybXV0YXRpb24gczFyYyBzMnJj IHMybG9jazIwMjcgczJ1cGQyMDI3IHMyYyBzMWxvY2syMDI1IHMxdXBkMjAyNSBzMWMgczFxCisK KyMgczEgcmVsb2FkcyB0aGUgdXBkYXRlZCByb3cgYW5kIHNlZXMgaXRzIGxlZnRvdmVycworcGVy bXV0YXRpb24gczFyYyBzMnJjIHMybG9jazIwMjUwMyBzMnVwZDIwMjUwMyBzMmMgczFsb2NrMjAy NSBzMXVwZDIwMjUgczFjIHMxcQorCisjIHMxIHJlbG9hZHMgdGhlIHVwZGF0ZWQgcm93IGFuZCBz ZWVzIGl0cyBsZWZ0b3ZlcnMKK3Blcm11dGF0aW9uIHMxcmMgczJyYyBzMmxvY2syMDI1MjAyNiBz MnVwZDIwMjUyMDI2IHMyYyBzMWxvY2syMDI1IHMxdXBkMjAyNSBzMWMgczFxCisKKyMgczIgc2Vl cyB0aGUgbGVmdG92ZXJzCitwZXJtdXRhdGlvbiBzMXJjIHMycmMgczFsb2NrMjAyNSBzMXVwZDIw MjUgczFjIHMybG9jazIwMjcgczJ1cGQyMDI3IHMyYyBzMXEKKworIyBzMiBsb2FkcyB0aGUgdXBk YXRlZCByb3cKK3Blcm11dGF0aW9uIHMxcmMgczJyYyBzMWxvY2syMDI1IHMxdXBkMjAyNSBzMWMg czJsb2NrMjAyNTAzIHMydXBkMjAyNTAzIHMyYyBzMXEKKworIyBzMiBsb2FkcyB0aGUgdXBkYXRl ZCByb3cgYW5kIHNlZXMgaXRzIGxlZnRvdmVycworcGVybXV0YXRpb24gczFyYyBzMnJjIHMxbG9j azIwMjUgczF1cGQyMDI1IHMxYyBzMmxvY2syMDI1MjAyNiBzMnVwZDIwMjUyMDI2IHMyYyBzMXEK KworIyBzMSB1cGRhdGVzIHRoZSBsZWZ0b3ZlcnMgZnJvbSBzMgorIyBMb2NraW5nIGlzIHJlcXVp cmVkIG9yIHMxIHdvbid0IHNlZSB0aGUgbGVmdG92ZXJzLgorcGVybXV0YXRpb24gczFyYyBzMnJj IHMybG9jazIwMjcgczJ1cGQyMDI3IHMxbG9jazIwMjUgczJjIHMxdXBkMjAyNSBzMWMgczFxCisK KyMgczEgb3ZlcndyaXRlcyB0aGUgcm93IGZyb20gczIgYW5kIHNlZXMgaXRzIGxlZnRvdmVycwor IyBMb2NraW5nIGlzIHJlcXVpcmVkIG9yIHMxIHdvbid0IHNlZSB0aGUgbGVmdG92ZXJzLgorcGVy bXV0YXRpb24gczFyYyBzMnJjIHMybG9jazIwMjUwMyBzMnVwZDIwMjUwMyBzMWxvY2syMDI1IHMy YyBzMXVwZDIwMjUgczFjIHMxcQorCisjIHMxIG92ZXJ3cml0ZXMgdGhlIHJvdyBmcm9tIHMyIGFu ZCBzZWVzIGl0cyBsZWZ0b3ZlcnMKKyMgTG9ja2luZyBpcyByZXF1aXJlZCBvciBzMSB3b24ndCBz ZWUgdGhlIGxlZnRvdmVycy4KK3Blcm11dGF0aW9uIHMxcmMgczJyYyBzMmxvY2syMDI1MjAyNiBz MnVwZDIwMjUyMDI2IHMxbG9jazIwMjUgczJjIHMxdXBkMjAyNSBzMWMgczFxCisKKyMgIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIworIyBSRUFEIENPTU1JVFRFRCB0ZXN0 cywgVVBEQVRFK0RFTEVURToKKyMgIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIworCisjIHMxIHNlZXMgdGhlIGxlZnRvdmVycworcGVybXV0YXRpb24gczFyYyBzMnJjIHMy bG9jazIwMjcgczJkZWwyMDI3IHMyYyBzMWxvY2syMDI1IHMxdXBkMjAyNSBzMWMgczFxCisKKyMg czEgaWdub3JlcyB0aGUgZGVsZXRlZCByb3cgYW5kIHNlZXMgaXRzIGxlZnRvdmVycworcGVybXV0 YXRpb24gczFyYyBzMnJjIHMybG9jazIwMjUwMyBzMmRlbDIwMjUwMyBzMmMgczFsb2NrMjAyNSBz MXVwZDIwMjUgczFjIHMxcQorCisjIHMxIGlnbm9yZXMgdGhlIGRlbGV0ZWQgcm93IGFuZCBzZWVz IGl0cyBsZWZ0b3ZlcnMKK3Blcm11dGF0aW9uIHMxcmMgczJyYyBzMmxvY2syMDI1MjAyNiBzMmRl bDIwMjUyMDI2IHMyYyBzMWxvY2syMDI1IHMxdXBkMjAyNSBzMWMgczFxCisKKyMgczIgc2VlcyB0 aGUgbGVmdG92ZXJzCitwZXJtdXRhdGlvbiBzMXJjIHMycmMgczFsb2NrMjAyNSBzMXVwZDIwMjUg czFjIHMybG9jazIwMjcgczJkZWwyMDI3IHMyYyBzMXEKKworIyBzMiBsb2FkcyB0aGUgdXBkYXRl ZCByb3cKK3Blcm11dGF0aW9uIHMxcmMgczJyYyBzMWxvY2syMDI1IHMxdXBkMjAyNSBzMWMgczJs b2NrMjAyNTAzIHMyZGVsMjAyNTAzIHMyYyBzMXEKKworIyBzMiBsb2FkcyB0aGUgdXBkYXRlZCBy b3cgYW5kIHNlZXMgaXRzIGxlZnRvdmVycworcGVybXV0YXRpb24gczFyYyBzMnJjIHMxbG9jazIw MjUgczF1cGQyMDI1IHMxYyBzMmxvY2syMDI1MjAyNiBzMmRlbDIwMjUyMDI2IHMyYyBzMXEKKwor IyBzMSB1cGRhdGVzIHRoZSBsZWZ0b3ZlcnMgZnJvbSBzMgorIyBMb2NraW5nIGlzIHJlcXVpcmVk IG9yIHMxIHdvbid0IHNlZSB0aGUgbGVmdG92ZXJzLgorcGVybXV0YXRpb24gczFyYyBzMnJjIHMy bG9jazIwMjcgczJkZWwyMDI3IHMxbG9jazIwMjUgczJjIHMxdXBkMjAyNSBzMWMgczFxCisKKyMg czEgc2VlcyB0aGUgbGVmdG92ZXJzIGZyb20gczIKKyMgTG9ja2luZyBpcyByZXF1aXJlZCBvciBz MSB3b24ndCBzZWUgdGhlIGxlZnRvdmVycy4KK3Blcm11dGF0aW9uIHMxcmMgczJyYyBzMmxvY2sy MDI1MDMgczJkZWwyMDI1MDMgczFsb2NrMjAyNSBzMmMgczF1cGQyMDI1IHMxYyBzMXEKKworIyBz MSBzZWVzIHRoZSBsZWZ0b3ZlcnMgZnJvbSBzMgorIyBMb2NraW5nIGlzIHJlcXVpcmVkIG9yIHMx IHdvbid0IHNlZSB0aGUgbGVmdG92ZXJzLgorcGVybXV0YXRpb24gczFyYyBzMnJjIHMybG9jazIw MjUyMDI2IHMyZGVsMjAyNTIwMjYgczFsb2NrMjAyNSBzMmMgczF1cGQyMDI1IHMxYyBzMXEKKwor IyAjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCisjIFJFQUQgQ09NTUlU VEVEIHRlc3RzLCBERUxFVEUrVVBEQVRFOgorIyAjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjCisKKyMgczEgc2VlcyB0aGUgbGVmdG92ZXJzCitwZXJtdXRhdGlvbiBzMXJj IHMycmMgczJsb2NrMjAyNyBzMnVwZDIwMjcgczJjIHMxbG9jazIwMjUgczFkZWwyMDI1IHMxYyBz MXEKKworIyBzMSByZWxvYWRzIHRoZSB1cGRhdGVkIHJvdyBhbmQgc2VlcyBpdHMgbGVmdG92ZXJz CitwZXJtdXRhdGlvbiBzMXJjIHMycmMgczJsb2NrMjAyNTAzIHMydXBkMjAyNTAzIHMyYyBzMWxv Y2syMDI1IHMxZGVsMjAyNSBzMWMgczFxCisKKyMgczEgcmVsb2FkcyB0aGUgdXBkYXRlZCByb3cg YW5kIHNlZXMgaXRzIGxlZnRvdmVycworcGVybXV0YXRpb24gczFyYyBzMnJjIHMybG9jazIwMjUy MDI2IHMydXBkMjAyNTIwMjYgczJjIHMxbG9jazIwMjUgczFkZWwyMDI1IHMxYyBzMXEKKworIyBz MiBzZWVzIHRoZSBsZWZ0b3ZlcnMKK3Blcm11dGF0aW9uIHMxcmMgczJyYyBzMWxvY2syMDI1IHMx ZGVsMjAyNSBzMWMgczJsb2NrMjAyNyBzMnVwZDIwMjcgczJjIHMxcQorCisjIHMyIGlnbm9yZXMg dGhlIGRlbGV0ZWQgcm93CitwZXJtdXRhdGlvbiBzMXJjIHMycmMgczFsb2NrMjAyNSBzMWRlbDIw MjUgczFjIHMybG9jazIwMjUwMyBzMnVwZDIwMjUwMyBzMmMgczFxCisKKyMgczIgaWdub3JlcyB0 aGUgZGVsZXRlZCByb3cgYW5kIHNlZXMgaXRzIGxlZnRvdmVycworcGVybXV0YXRpb24gczFyYyBz MnJjIHMxbG9jazIwMjUgczFkZWwyMDI1IHMxYyBzMmxvY2syMDI1MjAyNiBzMnVwZDIwMjUyMDI2 IHMyYyBzMXEKKworIyBzMSBkZWxldGVzIHRoZSBsZWZ0b3ZlcnMgZnJvbSBzMgorIyBMb2NraW5n IGlzIHJlcXVpcmVkIG9yIHMxIHdvbid0IHNlZSB0aGUgbGVmdG92ZXJzLgorcGVybXV0YXRpb24g czFyYyBzMnJjIHMybG9jazIwMjcgczJ1cGQyMDI3IHMxbG9jazIwMjUgczJjIHMxZGVsMjAyNSBz MWMgczFxCisKKyMgczEgZGVsZXRlcyB0aGUgbmV3IHJvdyBmcm9tIHMyIGFuZCBpdHMgbGVmdG92 ZXJzCisjIExvY2tpbmcgaXMgcmVxdWlyZWQgb3IgczEgd29uJ3Qgc2VlIHRoZSBsZWZ0b3ZlcnMu CitwZXJtdXRhdGlvbiBzMXJjIHMycmMgczJsb2NrMjAyNTAzIHMydXBkMjAyNTAzIHMxbG9jazIw MjUgczJjIHMxZGVsMjAyNSBzMWMgczFxCisKKyMgczEgZGVsZXRlcyB0aGUgbmV3IHJvdyBmcm9t IHMyIGFuZCBpdHMgbGVmdG92ZXJzCisjIExvY2tpbmcgaXMgcmVxdWlyZWQgb3IgczEgd29uJ3Qg c2VlIHRoZSBsZWZ0b3ZlcnMuCitwZXJtdXRhdGlvbiBzMXJjIHMycmMgczJsb2NrMjAyNTIwMjYg czJ1cGQyMDI1MjAyNiBzMWxvY2syMDI1IHMyYyBzMWRlbDIwMjUgczFjIHMxcQorCisjICMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKKyMgUkVBRCBDT01NSVRURUQgdGVz dHMsIERFTEVURStERUxFVEU6CisjICMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMKKworIyBzMSBzZWVzIHRoZSBsZWZ0b3ZlcnMKK3Blcm11dGF0aW9uIHMxcmMgczJyYyBz MmxvY2syMDI3IHMyZGVsMjAyNyBzMmMgczFsb2NrMjAyNSBzMWRlbDIwMjUgczFjIHMxcQorCisj IHMxIGlnbm9yZXMgdGhlIGRlbGV0ZWQgcm93IGFuZCBzZWVzIGl0cyBsZWZ0b3ZlcnMKK3Blcm11 dGF0aW9uIHMxcmMgczJyYyBzMmxvY2syMDI1MDMgczJkZWwyMDI1MDMgczJjIHMxbG9jazIwMjUg czFkZWwyMDI1IHMxYyBzMXEKKworIyBzMSBpZ25vcmVzIHRoZSBkZWxldGVkIHJvdyBhbmQgc2Vl cyBpdHMgbGVmdG92ZXJzCitwZXJtdXRhdGlvbiBzMXJjIHMycmMgczJsb2NrMjAyNTIwMjYgczJk ZWwyMDI1MjAyNiBzMmMgczFsb2NrMjAyNSBzMWRlbDIwMjUgczFjIHMxcQorCisjIHMyIHNlZXMg dGhlIGxlZnRvdmVycworcGVybXV0YXRpb24gczFyYyBzMnJjIHMxbG9jazIwMjUgczFkZWwyMDI1 IHMxYyBzMmxvY2syMDI3IHMyZGVsMjAyNyBzMmMgczFxCisKKyMgczIgaWdub3JlcyB0aGUgZGVs ZXRlZCByb3cKK3Blcm11dGF0aW9uIHMxcmMgczJyYyBzMWxvY2syMDI1IHMxZGVsMjAyNSBzMWMg czJsb2NrMjAyNTAzIHMyZGVsMjAyNTAzIHMyYyBzMXEKKworIyBzMiBpZ25vcmVzIHRoZSBkZWxl dGVkIHJvdyBhbmQgc2VlcyBpdHMgbGVmdG92ZXJzCitwZXJtdXRhdGlvbiBzMXJjIHMycmMgczFs b2NrMjAyNSBzMWRlbDIwMjUgczFjIHMybG9jazIwMjUyMDI2IHMyZGVsMjAyNTIwMjYgczJjIHMx cQorCisjIHMxIGRlbGV0ZXMgdGhlIGxlZnRvdmVycyBmcm9tIHMyCisjIExvY2tpbmcgaXMgcmVx dWlyZWQgb3IgczEgd29uJ3Qgc2VlIHRoZSBsZWZ0b3ZlcnMuCitwZXJtdXRhdGlvbiBzMXJjIHMy cmMgczJsb2NrMjAyNyBzMmRlbDIwMjcgczFsb2NrMjAyNSBzMmMgczFkZWwyMDI1IHMxYyBzMXEK KworIyBzMSBkZWxldGVzIHRoZSBsZWZ0b3ZlcnMgZnJvbSBzMgorIyBMb2NraW5nIGlzIHJlcXVp cmVkIG9yIHMxIHdvbid0IHNlZSB0aGUgbGVmdG92ZXJzLgorcGVybXV0YXRpb24gczFyYyBzMnJj IHMybG9jazIwMjUwMyBzMmRlbDIwMjUwMyBzMWxvY2syMDI1IHMyYyBzMWRlbDIwMjUgczFjIHMx cQorCisjIHMxIGRlbGV0ZXMgdGhlIGxlZnRvdmVycyBmcm9tIHMyCisjIExvY2tpbmcgaXMgcmVx dWlyZWQgb3IgczEgd29uJ3Qgc2VlIHRoZSBsZWZ0b3ZlcnMuCitwZXJtdXRhdGlvbiBzMXJjIHMy cmMgczJsb2NrMjAyNTIwMjYgczJkZWwyMDI1MjAyNiBzMWxvY2syMDI1IHMyYyBzMWRlbDIwMjUg czFjIHMxcQorCisjICMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKKyMg UkVQRUFUQUJMRSBSRUFEIHRlc3RzLCBVUERBVEUrVVBEQVRFOgorIyAjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCisKKyMgczEgc2VlcyB0aGUgbGVmdG92ZXJzCitwZXJt dXRhdGlvbiBzMXJyIHMycnIgczJ1cGQyMDI3IHMyYyBzMXVwZDIwMjUgczFjIHMxcQorCisjIHMx IHJlbG9hZHMgdGhlIHVwZGF0ZWQgcm93IGFuZCBzZWVzIGl0cyBsZWZ0b3ZlcnMKK3Blcm11dGF0 aW9uIHMxcnIgczJyciBzMnVwZDIwMjUwMyBzMmMgczF1cGQyMDI1IHMxYyBzMXEKKworIyBzMSBy ZWxvYWRzIHRoZSB1cGRhdGVkIHJvdyBhbmQgc2VlcyBpdHMgbGVmdG92ZXJzCitwZXJtdXRhdGlv biBzMXJyIHMycnIgczJ1cGQyMDI1MjAyNiBzMmMgczF1cGQyMDI1IHMxYyBzMXEKKworIyBzMiBz ZWVzIHRoZSBsZWZ0b3ZlcnMKK3Blcm11dGF0aW9uIHMxcnIgczJyciBzMXVwZDIwMjUgczFjIHMy dXBkMjAyNyBzMmMgczFxCisKKyMgczIgbG9hZHMgdGhlIHVwZGF0ZWQgcm93IGFuZCBzZWVzIGl0 cyBsZWZ0b3ZlcnMKK3Blcm11dGF0aW9uIHMxcnIgczJyciBzMXVwZDIwMjUgczFjIHMydXBkMjAy NTAzIHMyYyBzMXEKKworIyBzMiBsb2FkcyB0aGUgdXBkYXRlZCByb3cgYW5kIHNlZXMgaXRzIGxl ZnRvdmVycworcGVybXV0YXRpb24gczFyciBzMnJyIHMxdXBkMjAyNSBzMWMgczJ1cGQyMDI1MjAy NiBzMmMgczFxCisKKyMgczEgZmFpbHMgZnJvbSBjb25jdXJyZW50IHVwZGF0ZQorcGVybXV0YXRp b24gczFyciBzMnJyIHMydXBkMjAyNyBzMXVwZDIwMjUgczJjIHMxYyBzMXEKKworIyBzMSBmYWls cyBmcm9tIGNvbmN1cnJlbnQgdXBkYXRlCitwZXJtdXRhdGlvbiBzMXJyIHMycnIgczJ1cGQyMDI1 MDMgczF1cGQyMDI1IHMyYyBzMWMgczFxCisKKyMgczEgZmFpbHMgZnJvbSBjb25jdXJyZW50IHVw ZGF0ZQorcGVybXV0YXRpb24gczFyciBzMnJyIHMydXBkMjAyNTIwMjYgczF1cGQyMDI1IHMyYyBz MWMgczFxCisKKyMjIHdpdGggcHJpb3IgcmVhZCBieSBzMToKKworIyBzMSBmYWlscyBmcm9tIGNv bmN1cnJlbnQgdXBkYXRlCitwZXJtdXRhdGlvbiBzMXJyIHMycnIgczFxIHMydXBkMjAyNyBzMmMg czF1cGQyMDI1IHMxYyBzMXEKKworIyBzMSBmYWlscyBmcm9tIGNvbmN1cnJlbnQgdXBkYXRlCitw ZXJtdXRhdGlvbiBzMXJyIHMycnIgczFxIHMydXBkMjAyNTAzIHMyYyBzMXVwZDIwMjUgczFjIHMx cQorCisjIHMxIGZhaWxzIGZyb20gY29uY3VycmVudCB1cGRhdGUKK3Blcm11dGF0aW9uIHMxcnIg czJyciBzMXEgczJ1cGQyMDI1MjAyNiBzMmMgczF1cGQyMDI1IHMxYyBzMXEKKworIyBzMiBzZWVz IHRoZSBsZWZ0b3ZlcnMKK3Blcm11dGF0aW9uIHMxcnIgczJyciBzMXEgczF1cGQyMDI1IHMxYyBz MnVwZDIwMjcgczJjIHMxcQorCisjIHMyIGxvYWRzIHRoZSB1cGRhdGVkIHJvdworcGVybXV0YXRp b24gczFyciBzMnJyIHMxcSBzMXVwZDIwMjUgczFjIHMydXBkMjAyNTAzIHMyYyBzMXEKKworIyBz MiBsb2FkcyB0aGUgdXBkYXRlZCByb3cgYW5kIHNlZXMgaXRzIGxlZnRvdmVycworcGVybXV0YXRp b24gczFyciBzMnJyIHMxcSBzMXVwZDIwMjUgczFjIHMydXBkMjAyNTIwMjYgczJjIHMxcQorCisj IHMxIGZhaWxzIGZyb20gY29uY3VycmVudCB1cGRhdGUKK3Blcm11dGF0aW9uIHMxcnIgczJyciBz MXEgczJ1cGQyMDI3IHMxdXBkMjAyNSBzMmMgczFjIHMxcQorCisjIHMxIGZhaWxzIGZyb20gY29u Y3VycmVudCB1cGRhdGUKK3Blcm11dGF0aW9uIHMxcnIgczJyciBzMXEgczJ1cGQyMDI1MDMgczF1 cGQyMDI1IHMyYyBzMWMgczFxCisKKyMgczEgZmFpbHMgZnJvbSBjb25jdXJyZW50IHVwZGF0ZQor cGVybXV0YXRpb24gczFyciBzMnJyIHMxcSBzMnVwZDIwMjUyMDI2IHMxdXBkMjAyNSBzMmMgczFj IHMxcQorCisjICMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKKyMgUkVQ RUFUQUJMRSBSRUFEIHRlc3RzLCBVUERBVEUrREVMRVRFOgorIyAjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjCisKKyMgczEgc2VlcyB0aGUgbGVmdG92ZXJzCitwZXJtdXRh dGlvbiBzMXJyIHMycnIgczJkZWwyMDI3IHMyYyBzMXVwZDIwMjUgczFjIHMxcQorCisjIHMxIGln bm9yZXMgdGhlIGRlbGV0ZWQgcm93IGFuZCBzZWVzIGl0cyBsZWZ0b3ZlcnMKK3Blcm11dGF0aW9u IHMxcnIgczJyciBzMmRlbDIwMjUwMyBzMmMgczF1cGQyMDI1IHMxYyBzMXEKKworIyBzMSBpZ25v cmVzIHRoZSBkZWxldGVkIHJvdyBhbmQgc2VlcyBpdHMgbGVmdG92ZXJzCitwZXJtdXRhdGlvbiBz MXJyIHMycnIgczJkZWwyMDI1MjAyNiBzMmMgczF1cGQyMDI1IHMxYyBzMXEKKworIyBzMiBzZWVz IHRoZSBsZWZ0b3ZlcnMKK3Blcm11dGF0aW9uIHMxcnIgczJyciBzMXVwZDIwMjUgczFjIHMyZGVs MjAyNyBzMmMgczFxCisKKyMgczIgbG9hZHMgdGhlIHVwZGF0ZWQgcm93CitwZXJtdXRhdGlvbiBz MXJyIHMycnIgczF1cGQyMDI1IHMxYyBzMmRlbDIwMjUwMyBzMmMgczFxCisKKyMgczIgbG9hZHMg dGhlIHVwZGF0ZWQgcm93IGFuZCBzZWVzIGl0cyBsZWZ0b3ZlcnMKK3Blcm11dGF0aW9uIHMxcnIg czJyciBzMXVwZDIwMjUgczFjIHMyZGVsMjAyNTIwMjYgczJjIHMxcQorCisjIHMxIGZhaWxzIGZy b20gY29uY3VycmVudCBkZWxldGUKK3Blcm11dGF0aW9uIHMxcnIgczJyciBzMmRlbDIwMjcgczF1 cGQyMDI1IHMyYyBzMWMgczFxCisKKyMgczEgZmFpbHMgZnJvbSBjb25jdXJyZW50IGRlbGV0ZQor cGVybXV0YXRpb24gczFyciBzMnJyIHMyZGVsMjAyNTAzIHMxdXBkMjAyNSBzMmMgczFjIHMxcQor CisjIHMxIGZhaWxzIGZyb20gY29uY3VycmVudCBkZWxldGUKK3Blcm11dGF0aW9uIHMxcnIgczJy ciBzMmRlbDIwMjUyMDI2IHMxdXBkMjAyNSBzMmMgczFjIHMxcQorCisjIyB3aXRoIHByaW9yIHJl YWQgYnkgczE6CisKKyMgczEgZmFpbHMgZnJvbSBjb25jdXJyZW50IGRlbGV0ZQorcGVybXV0YXRp b24gczFyciBzMnJyIHMxcSBzMmRlbDIwMjcgczJjIHMxdXBkMjAyNSBzMWMgczFxCisKKyMgczEg ZmFpbHMgZnJvbSBjb25jdXJyZW50IGRlbGV0ZQorcGVybXV0YXRpb24gczFyciBzMnJyIHMxcSBz MmRlbDIwMjUwMyBzMmMgczF1cGQyMDI1IHMxYyBzMXEKKworIyBzMSBmYWlscyBmcm9tIGNvbmN1 cnJlbnQgZGVsZXRlCitwZXJtdXRhdGlvbiBzMXJyIHMycnIgczFxIHMyZGVsMjAyNTIwMjYgczJj IHMxdXBkMjAyNSBzMWMgczFxCisKKyMgczIgc2VlcyB0aGUgbGVmdG92ZXJzCitwZXJtdXRhdGlv biBzMXJyIHMycnIgczFxIHMxdXBkMjAyNSBzMWMgczJkZWwyMDI3IHMyYyBzMXEKKworIyBzMiBs b2FkcyB0aGUgdXBkYXRlZCByb3cKK3Blcm11dGF0aW9uIHMxcnIgczJyciBzMXEgczF1cGQyMDI1 IHMxYyBzMmRlbDIwMjUwMyBzMmMgczFxCisKKyMgczIgbG9hZHMgdGhlIHVwZGF0ZWQgcm93IGFu ZCBzZWVzIGl0cyBsZWZ0b3ZlcnMKK3Blcm11dGF0aW9uIHMxcnIgczJyciBzMXEgczF1cGQyMDI1 IHMxYyBzMmRlbDIwMjUyMDI2IHMyYyBzMXEKKworIyBzMSBmYWlscyBmcm9tIGNvbmN1cnJlbnQg ZGVsZXRlCitwZXJtdXRhdGlvbiBzMXJyIHMycnIgczFxIHMyZGVsMjAyNyBzMXVwZDIwMjUgczJj IHMxYyBzMXEKKworIyBzMSBmYWlscyBmcm9tIGNvbmN1cnJlbnQgZGVsZXRlCitwZXJtdXRhdGlv biBzMXJyIHMycnIgczFxIHMyZGVsMjAyNTAzIHMxdXBkMjAyNSBzMmMgczFjIHMxcQorCisjIHMx IGZhaWxzIGZyb20gY29uY3VycmVudCBkZWxldGUKK3Blcm11dGF0aW9uIHMxcnIgczJyciBzMXEg czJkZWwyMDI1MjAyNiBzMXVwZDIwMjUgczJjIHMxYyBzMXEKKworIyAjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCisjIFJFUEVBVEFCTEUgUkVBRCB0ZXN0cywgREVMRVRF K1VQREFURToKKyMgIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIworCisj IHMxIHNlZXMgdGhlIGxlZnRvdmVycworcGVybXV0YXRpb24gczFyciBzMnJyIHMydXBkMjAyNyBz MmMgczFkZWwyMDI1IHMxYyBzMXEKKworIyBzMSByZWxvYWRzIHRoZSB1cGRhdGVkIHJvdyBhbmQg c2VlcyBpdHMgbGVmdG92ZXJzCitwZXJtdXRhdGlvbiBzMXJyIHMycnIgczJ1cGQyMDI1MDMgczJj IHMxZGVsMjAyNSBzMWMgczFxCisKKyMgczEgcmVsb2FkcyB0aGUgdXBkYXRlZCByb3cgYW5kIHNl ZXMgaXRzIGxlZnRvdmVycworcGVybXV0YXRpb24gczFyciBzMnJyIHMydXBkMjAyNTIwMjYgczJj IHMxZGVsMjAyNSBzMWMgczFxCisKKyMgczIgc2VlcyB0aGUgbGVmdG92ZXJzCitwZXJtdXRhdGlv biBzMXJyIHMycnIgczFkZWwyMDI1IHMxYyBzMnVwZDIwMjcgczJjIHMxcQorCisjIHMyIGlnbm9y ZXMgdGhlIGRlbGV0ZWQgcm93CitwZXJtdXRhdGlvbiBzMXJyIHMycnIgczFkZWwyMDI1IHMxYyBz MnVwZDIwMjUwMyBzMmMgczFxCisKKyMgczIgaWdub3JlcyB0aGUgZGVsZXRlZCByb3cgYW5kIHNl ZXMgaXRzIGxlZnRvdmVycworcGVybXV0YXRpb24gczFyciBzMnJyIHMxZGVsMjAyNSBzMWMgczJ1 cGQyMDI1MjAyNiBzMmMgczFxCisKKyMgczEgZmFpbHMgZnJvbSBjb25jdXJyZW50IHVwZGF0ZQor cGVybXV0YXRpb24gczFyciBzMnJyIHMydXBkMjAyNyBzMWRlbDIwMjUgczJjIHMxYyBzMXEKKwor IyBzMSBmYWlscyBmcm9tIGNvbmN1cnJlbnQgdXBkYXRlCitwZXJtdXRhdGlvbiBzMXJyIHMycnIg czJ1cGQyMDI1MDMgczFkZWwyMDI1IHMyYyBzMWMgczFxCisKKyMgczEgZmFpbHMgZnJvbSBjb25j dXJyZW50IHVwZGF0ZQorcGVybXV0YXRpb24gczFyciBzMnJyIHMydXBkMjAyNTIwMjYgczFkZWwy MDI1IHMyYyBzMWMgczFxCisKKyMjIHdpdGggcHJpb3IgcmVhZCBieSBzMToKKworIyBzMSBmYWls cyBmcm9tIGNvbmN1cnJlbnQgdXBkYXRlCitwZXJtdXRhdGlvbiBzMXJyIHMycnIgczFxIHMydXBk MjAyNyBzMmMgczFkZWwyMDI1IHMxYyBzMXEKKworIyBzMSBmYWlscyBmcm9tIGNvbmN1cnJlbnQg dXBkYXRlCitwZXJtdXRhdGlvbiBzMXJyIHMycnIgczFxIHMydXBkMjAyNTAzIHMyYyBzMWRlbDIw MjUgczFjIHMxcQorCisjIHMxIGZhaWxzIGZyb20gY29uY3VycmVudCB1cGRhdGUKK3Blcm11dGF0 aW9uIHMxcnIgczJyciBzMXEgczJ1cGQyMDI1MjAyNiBzMmMgczFkZWwyMDI1IHMxYyBzMXEKKwor IyBzMiBzZWVzIHRoZSBsZWZ0b3ZlcnMKK3Blcm11dGF0aW9uIHMxcnIgczJyciBzMXEgczFkZWwy MDI1IHMxYyBzMnVwZDIwMjcgczJjIHMxcQorCisjIHMyIGlnbm9yZXMgdGhlIGRlbGV0ZWQgcm93 CitwZXJtdXRhdGlvbiBzMXJyIHMycnIgczFxIHMxZGVsMjAyNSBzMWMgczJ1cGQyMDI1MDMgczJj IHMxcQorCisjIHMyIGlnbm9yZXMgdGhlIGRlbGV0ZWQgcm93IGFuZCBzZWVzIGl0cyBsZWZ0b3Zl cnMKK3Blcm11dGF0aW9uIHMxcnIgczJyciBzMXEgczFkZWwyMDI1IHMxYyBzMnVwZDIwMjUyMDI2 IHMyYyBzMXEKKworIyBzMSBmYWlscyBmcm9tIGNvbmN1cnJlbnQgdXBkYXRlCitwZXJtdXRhdGlv biBzMXJyIHMycnIgczFxIHMydXBkMjAyNyBzMWRlbDIwMjUgczJjIHMxYyBzMXEKKworIyBzMSBm YWlscyBmcm9tIGNvbmN1cnJlbnQgdXBkYXRlCitwZXJtdXRhdGlvbiBzMXJyIHMycnIgczFxIHMy dXBkMjAyNTAzIHMxZGVsMjAyNSBzMmMgczFjIHMxcQorCisjIHMxIGZhaWxzIGZyb20gY29uY3Vy cmVudCB1cGRhdGUKK3Blcm11dGF0aW9uIHMxcnIgczJyciBzMXEgczJ1cGQyMDI1MjAyNiBzMWRl bDIwMjUgczJjIHMxYyBzMXEKKworIyAjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjCisjIFJFUEVBVEFCTEUgUkVBRCB0ZXN0cywgREVMRVRFK0RFTEVURToKKyMgIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIworCisjIHMxIHNlZXMgdGhlIGxlZnRv dmVycworcGVybXV0YXRpb24gczFyciBzMnJyIHMyZGVsMjAyNyBzMmMgczFkZWwyMDI1IHMxYyBz MXEKKworIyBzMSByZWxvYWRzIHRoZSB1cGRhdGVkIHJvdyBhbmQgc2VlcyBpdHMgbGVmdG92ZXJz CitwZXJtdXRhdGlvbiBzMXJyIHMycnIgczJkZWwyMDI1MDMgczJjIHMxZGVsMjAyNSBzMWMgczFx CisKKyMgczEgcmVsb2FkcyB0aGUgdXBkYXRlZCByb3cgYW5kIHNlZXMgaXRzIGxlZnRvdmVycwor cGVybXV0YXRpb24gczFyciBzMnJyIHMyZGVsMjAyNTIwMjYgczJjIHMxZGVsMjAyNSBzMWMgczFx CisKKyMgczIgc2VlcyB0aGUgbGVmdG92ZXJzCitwZXJtdXRhdGlvbiBzMXJyIHMycnIgczFkZWwy MDI1IHMxYyBzMmRlbDIwMjcgczJjIHMxcQorCisjIHMyIGlnbm9yZXMgdGhlIGRlbGV0ZWQgcm93 CitwZXJtdXRhdGlvbiBzMXJyIHMycnIgczFkZWwyMDI1IHMxYyBzMmRlbDIwMjUwMyBzMmMgczFx CisKKyMgczIgaWdub3JlcyB0aGUgZGVsZXRlZCByb3cgYW5kIHNlZXMgaXRzIGxlZnRvdmVycwor cGVybXV0YXRpb24gczFyciBzMnJyIHMxZGVsMjAyNSBzMWMgczJkZWwyMDI1MjAyNiBzMmMgczFx CisKKyMgczEgZmFpbHMgZnJvbSBjb25jdXJyZW50IGRlbGV0ZQorcGVybXV0YXRpb24gczFyciBz MnJyIHMyZGVsMjAyNyBzMWRlbDIwMjUgczJjIHMxYyBzMXEKKworIyBzMSBmYWlscyBmcm9tIGNv bmN1cnJlbnQgZGVsZXRlCitwZXJtdXRhdGlvbiBzMXJyIHMycnIgczJkZWwyMDI1MDMgczFkZWwy MDI1IHMyYyBzMWMgczFxCisKKyMgczEgZmFpbHMgZnJvbSBjb25jdXJyZW50IGRlbGV0ZQorcGVy bXV0YXRpb24gczFyciBzMnJyIHMyZGVsMjAyNTIwMjYgczFkZWwyMDI1IHMyYyBzMWMgczFxCisK KyMjIHdpdGggcHJpb3IgcmVhZCBieSBzMToKKworIyBzMSBmYWlscyBmcm9tIGNvbmN1cnJlbnQg ZGVsZXRlCitwZXJtdXRhdGlvbiBzMXJyIHMycnIgczFxIHMyZGVsMjAyNyBzMmMgczFkZWwyMDI1 IHMxYyBzMXEKKworIyBzMSBmYWlscyBmcm9tIGNvbmN1cnJlbnQgZGVsZXRlCitwZXJtdXRhdGlv biBzMXJyIHMycnIgczFxIHMyZGVsMjAyNTAzIHMyYyBzMWRlbDIwMjUgczFjIHMxcQorCisjIHMx IGZhaWxzIGZyb20gY29uY3VycmVudCBkZWxldGUKK3Blcm11dGF0aW9uIHMxcnIgczJyciBzMXEg czJkZWwyMDI1MjAyNiBzMmMgczFkZWwyMDI1IHMxYyBzMXEKKworIyBzMiBzZWVzIHRoZSBsZWZ0 b3ZlcnMKK3Blcm11dGF0aW9uIHMxcnIgczJyciBzMXEgczFkZWwyMDI1IHMxYyBzMmRlbDIwMjcg czJjIHMxcQorCisjIHMyIGlnbm9yZXMgdGhlIGRlbGV0ZWQgcm93CitwZXJtdXRhdGlvbiBzMXJy IHMycnIgczFxIHMxZGVsMjAyNSBzMWMgczJkZWwyMDI1MDMgczJjIHMxcQorCisjIHMyIGlnbm9y ZXMgdGhlIGRlbGV0ZWQgcm93IGFuZCBzZWVzIGl0cyBsZWZ0b3ZlcnMKK3Blcm11dGF0aW9uIHMx cnIgczJyciBzMXEgczFkZWwyMDI1IHMxYyBzMmRlbDIwMjUyMDI2IHMyYyBzMXEKKworIyBzMSBm YWlscyBmcm9tIGNvbmN1cnJlbnQgZGVsZXRlCitwZXJtdXRhdGlvbiBzMXJyIHMycnIgczFxIHMy ZGVsMjAyNyBzMWRlbDIwMjUgczJjIHMxYyBzMXEKKworIyBzMSBmYWlscyBmcm9tIGNvbmN1cnJl bnQgZGVsZXRlCitwZXJtdXRhdGlvbiBzMXJyIHMycnIgczFxIHMyZGVsMjAyNTAzIHMxZGVsMjAy NSBzMmMgczFjIHMxcQorCisjIHMxIGZhaWxzIGZyb20gY29uY3VycmVudCBkZWxldGUKK3Blcm11 dGF0aW9uIHMxcnIgczJyciBzMXEgczJkZWwyMDI1MjAyNiBzMWRlbDIwMjUgczJjIHMxYyBzMXEK KworIyAjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCisjIFNFUklBTEla QUJMRSB0ZXN0cywgVVBEQVRFK1VQREFURToKKyMgIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIworCisjIHMxIHNlZXMgdGhlIGxlZnRvdmVycworcGVybXV0YXRpb24gczFz ZXIgczJzZXIgczJ1cGQyMDI3IHMyYyBzMXVwZDIwMjUgczFjIHMxcQorCisjIHMxIHJlbG9hZHMg dGhlIHVwZGF0ZWQgcm93IGFuZCBzZWVzIGl0cyBsZWZ0b3ZlcnMKK3Blcm11dGF0aW9uIHMxc2Vy IHMyc2VyIHMydXBkMjAyNTAzIHMyYyBzMXVwZDIwMjUgczFjIHMxcQorCisjIHMxIHJlbG9hZHMg dGhlIHVwZGF0ZWQgcm93IGFuZCBzZWVzIGl0cyBsZWZ0b3ZlcnMKK3Blcm11dGF0aW9uIHMxc2Vy IHMyc2VyIHMydXBkMjAyNTIwMjYgczJjIHMxdXBkMjAyNSBzMWMgczFxCisKKyMgczIgc2VlcyB0 aGUgbGVmdG92ZXJzCitwZXJtdXRhdGlvbiBzMXNlciBzMnNlciBzMXVwZDIwMjUgczFjIHMydXBk MjAyNyBzMmMgczFxCisKKyMgczIgbG9hZHMgdGhlIHVwZGF0ZWQgcm93CitwZXJtdXRhdGlvbiBz MXNlciBzMnNlciBzMXVwZDIwMjUgczFjIHMydXBkMjAyNTAzIHMyYyBzMXEKKworIyBzMiBsb2Fk cyB0aGUgdXBkYXRlZCByb3cgYW5kIHNlZXMgaXRzIGxlZnRvdmVycworcGVybXV0YXRpb24gczFz ZXIgczJzZXIgczF1cGQyMDI1IHMxYyBzMnVwZDIwMjUyMDI2IHMyYyBzMXEKKworIyBzMSBmYWls cyBmcm9tIGNvbmN1cnJlbnQgdXBkYXRlCitwZXJtdXRhdGlvbiBzMXNlciBzMnNlciBzMnVwZDIw MjcgczF1cGQyMDI1IHMyYyBzMWMgczFxCisKKyMgczEgZmFpbHMgZnJvbSBjb25jdXJyZW50IHVw ZGF0ZQorcGVybXV0YXRpb24gczFzZXIgczJzZXIgczJ1cGQyMDI1MDMgczF1cGQyMDI1IHMyYyBz MWMgczFxCisKKyMgczEgZmFpbHMgZnJvbSBjb25jdXJyZW50IHVwZGF0ZQorcGVybXV0YXRpb24g czFzZXIgczJzZXIgczJ1cGQyMDI1MjAyNiBzMXVwZDIwMjUgczJjIHMxYyBzMXEKKworIyMgd2l0 aCBwcmlvciByZWFkIGJ5IHMxOgorCisjIHMxIGZhaWxzIGZyb20gY29uY3VycmVudCB1cGRhdGUK K3Blcm11dGF0aW9uIHMxc2VyIHMyc2VyIHMxcSBzMnVwZDIwMjcgczJjIHMxdXBkMjAyNSBzMWMg czFxCisKKyMgczEgZmFpbHMgZnJvbSBjb25jdXJyZW50IHVwZGF0ZQorcGVybXV0YXRpb24gczFz ZXIgczJzZXIgczFxIHMydXBkMjAyNTAzIHMyYyBzMXVwZDIwMjUgczFjIHMxcQorCisjIHMxIGZh aWxzIGZyb20gY29uY3VycmVudCB1cGRhdGUKK3Blcm11dGF0aW9uIHMxc2VyIHMyc2VyIHMxcSBz MnVwZDIwMjUyMDI2IHMyYyBzMXVwZDIwMjUgczFjIHMxcQorCisjIHMyIHNlZXMgdGhlIGxlZnRv dmVycworcGVybXV0YXRpb24gczFzZXIgczJzZXIgczFxIHMxdXBkMjAyNSBzMWMgczJ1cGQyMDI3 IHMyYyBzMXEKKworIyBzMiBsb2FkcyB0aGUgdXBkYXRlZCByb3cKK3Blcm11dGF0aW9uIHMxc2Vy IHMyc2VyIHMxcSBzMXVwZDIwMjUgczFjIHMydXBkMjAyNTAzIHMyYyBzMXEKKworIyBzMiBsb2Fk cyB0aGUgdXBkYXRlZCByb3cgYW5kIHNlZXMgaXRzIGxlZnRvdmVycworcGVybXV0YXRpb24gczFz ZXIgczJzZXIgczFxIHMxdXBkMjAyNSBzMWMgczJ1cGQyMDI1MjAyNiBzMmMgczFxCisKKyMgczEg ZmFpbHMgZnJvbSBjb25jdXJyZW50IHVwZGF0ZQorcGVybXV0YXRpb24gczFzZXIgczJzZXIgczFx IHMydXBkMjAyNyBzMXVwZDIwMjUgczJjIHMxYyBzMXEKKworIyBzMSBmYWlscyBmcm9tIGNvbmN1 cnJlbnQgdXBkYXRlCitwZXJtdXRhdGlvbiBzMXNlciBzMnNlciBzMXEgczJ1cGQyMDI1MDMgczF1 cGQyMDI1IHMyYyBzMWMgczFxCisKKyMgczEgZmFpbHMgZnJvbSBjb25jdXJyZW50IHVwZGF0ZQor cGVybXV0YXRpb24gczFzZXIgczJzZXIgczFxIHMydXBkMjAyNTIwMjYgczF1cGQyMDI1IHMyYyBz MWMgczFxCisKKyMgIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIworIyBT RVJJQUxJWkFCTEUgdGVzdHMsIFVQREFURStERUxFVEU6CisjICMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMKKworIyBzMSBzZWVzIHRoZSBsZWZ0b3ZlcnMKK3Blcm11dGF0 aW9uIHMxc2VyIHMyc2VyIHMyZGVsMjAyNyBzMmMgczF1cGQyMDI1IHMxYyBzMXEKKworIyBzMSBp Z25vcmVzIHRoZSBkZWxldGVkIHJvdyBhbmQgc2VlcyBpdHMgbGVmdG92ZXJzCitwZXJtdXRhdGlv biBzMXNlciBzMnNlciBzMmRlbDIwMjUwMyBzMmMgczF1cGQyMDI1IHMxYyBzMXEKKworIyBzMSBp Z25vcmVzIHRoZSBkZWxldGVkIHJvdyBhbmQgc2VlcyBpdHMgbGVmdG92ZXJzCitwZXJtdXRhdGlv biBzMXNlciBzMnNlciBzMmRlbDIwMjUyMDI2IHMyYyBzMXVwZDIwMjUgczFjIHMxcQorCisjIHMy IHNlZXMgdGhlIGxlZnRvdmVycworcGVybXV0YXRpb24gczFzZXIgczJzZXIgczF1cGQyMDI1IHMx YyBzMmRlbDIwMjcgczJjIHMxcQorCisjIHMyIGxvYWRzIHRoZSB1cGRhdGVkIHJvdworcGVybXV0 YXRpb24gczFzZXIgczJzZXIgczF1cGQyMDI1IHMxYyBzMmRlbDIwMjUwMyBzMmMgczFxCisKKyMg czIgbG9hZHMgdGhlIHVwZGF0ZWQgcm93IGFuZCBzZWVzIGl0cyBsZWZ0b3ZlcnMKK3Blcm11dGF0 aW9uIHMxc2VyIHMyc2VyIHMxdXBkMjAyNSBzMWMgczJkZWwyMDI1MjAyNiBzMmMgczFxCisKKyMg czEgZmFpbHMgZnJvbSBjb25jdXJyZW50IGRlbGV0ZQorcGVybXV0YXRpb24gczFzZXIgczJzZXIg czJkZWwyMDI3IHMxdXBkMjAyNSBzMmMgczFjIHMxcQorCisjIHMxIGZhaWxzIGZyb20gY29uY3Vy cmVudCBkZWxldGUKK3Blcm11dGF0aW9uIHMxc2VyIHMyc2VyIHMyZGVsMjAyNTAzIHMxdXBkMjAy NSBzMmMgczFjIHMxcQorCisjIHMxIGZhaWxzIGZyb20gY29uY3VycmVudCBkZWxldGUKK3Blcm11 dGF0aW9uIHMxc2VyIHMyc2VyIHMyZGVsMjAyNTIwMjYgczF1cGQyMDI1IHMyYyBzMWMgczFxCisK KyMjIHdpdGggcHJpb3IgcmVhZCBieSBzMToKKworIyBzMSBmYWlscyBmcm9tIGNvbmN1cnJlbnQg ZGVsZXRlCitwZXJtdXRhdGlvbiBzMXNlciBzMnNlciBzMXEgczJkZWwyMDI3IHMyYyBzMXVwZDIw MjUgczFjIHMxcQorCisjIHMxIGZhaWxzIGZyb20gY29uY3VycmVudCBkZWxldGUKK3Blcm11dGF0 aW9uIHMxc2VyIHMyc2VyIHMxcSBzMmRlbDIwMjUwMyBzMmMgczF1cGQyMDI1IHMxYyBzMXEKKwor IyBzMSBmYWlscyBmcm9tIGNvbmN1cnJlbnQgZGVsZXRlCitwZXJtdXRhdGlvbiBzMXNlciBzMnNl ciBzMXEgczJkZWwyMDI1MjAyNiBzMmMgczF1cGQyMDI1IHMxYyBzMXEKKworIyBzMiBzZWVzIHRo ZSBsZWZ0b3ZlcnMKK3Blcm11dGF0aW9uIHMxc2VyIHMyc2VyIHMxcSBzMXVwZDIwMjUgczFjIHMy ZGVsMjAyNyBzMmMgczFxCisKKyMgczIgbG9hZHMgdGhlIHVwZGF0ZWQgcm93CitwZXJtdXRhdGlv biBzMXNlciBzMnNlciBzMXEgczF1cGQyMDI1IHMxYyBzMmRlbDIwMjUwMyBzMmMgczFxCisKKyMg czIgbG9hZHMgdGhlIHVwZGF0ZWQgcm93IGFuZCBzZWVzIGl0cyBsZWZ0b3ZlcnMKK3Blcm11dGF0 aW9uIHMxc2VyIHMyc2VyIHMxcSBzMXVwZDIwMjUgczFjIHMyZGVsMjAyNTIwMjYgczJjIHMxcQor CisjIHMxIGZhaWxzIGZyb20gY29uY3VycmVudCBkZWxldGUKK3Blcm11dGF0aW9uIHMxc2VyIHMy c2VyIHMxcSBzMmRlbDIwMjcgczF1cGQyMDI1IHMyYyBzMWMgczFxCisKKyMgczEgZmFpbHMgZnJv bSBjb25jdXJyZW50IGRlbGV0ZQorcGVybXV0YXRpb24gczFzZXIgczJzZXIgczFxIHMyZGVsMjAy NTAzIHMxdXBkMjAyNSBzMmMgczFjIHMxcQorCisjIHMxIGZhaWxzIGZyb20gY29uY3VycmVudCBk ZWxldGUKK3Blcm11dGF0aW9uIHMxc2VyIHMyc2VyIHMxcSBzMmRlbDIwMjUyMDI2IHMxdXBkMjAy NSBzMmMgczFjIHMxcQorCisjICMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMKKyMgU0VSSUFMSVpBQkxFIHRlc3RzLCBERUxFVEUrVVBEQVRFOgorIyAjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCisKKyMgczEgc2VlcyB0aGUgbGVmdG92ZXJzCitw ZXJtdXRhdGlvbiBzMXNlciBzMnNlciBzMnVwZDIwMjcgczJjIHMxZGVsMjAyNSBzMWMgczFxCisK KyMgczEgcmVsb2FkcyB0aGUgdXBkYXRlZCByb3cgYW5kIHNlZXMgaXRzIGxlZnRvdmVycworcGVy bXV0YXRpb24gczFzZXIgczJzZXIgczJ1cGQyMDI1MDMgczJjIHMxZGVsMjAyNSBzMWMgczFxCisK KyMgczEgcmVsb2FkcyB0aGUgdXBkYXRlZCByb3cgYW5kIHNlZXMgaXRzIGxlZnRvdmVycworcGVy bXV0YXRpb24gczFzZXIgczJzZXIgczJ1cGQyMDI1MjAyNiBzMmMgczFkZWwyMDI1IHMxYyBzMXEK KworIyBzMiBzZWVzIHRoZSBsZWZ0b3ZlcnMKK3Blcm11dGF0aW9uIHMxc2VyIHMyc2VyIHMxZGVs MjAyNSBzMWMgczJ1cGQyMDI3IHMyYyBzMXEKKworIyBzMiBpZ25vcmVzIHRoZSBkZWxldGVkIHJv dworcGVybXV0YXRpb24gczFzZXIgczJzZXIgczFkZWwyMDI1IHMxYyBzMnVwZDIwMjUwMyBzMmMg czFxCisKKyMgczIgaWdub3JlcyB0aGUgZGVsZXRlZCByb3cgYW5kIHNlZXMgaXRzIGxlZnRvdmVy cworcGVybXV0YXRpb24gczFzZXIgczJzZXIgczFkZWwyMDI1IHMxYyBzMnVwZDIwMjUyMDI2IHMy YyBzMXEKKworIyBzMSBmYWlscyBmcm9tIGNvbmN1cnJlbnQgdXBkYXRlCitwZXJtdXRhdGlvbiBz MXNlciBzMnNlciBzMnVwZDIwMjcgczFkZWwyMDI1IHMyYyBzMWMgczFxCisKKyMgczEgZmFpbHMg ZnJvbSBjb25jdXJyZW50IHVwZGF0ZQorcGVybXV0YXRpb24gczFzZXIgczJzZXIgczJ1cGQyMDI1 MDMgczFkZWwyMDI1IHMyYyBzMWMgczFxCisKKyMgczEgZmFpbHMgZnJvbSBjb25jdXJyZW50IHVw ZGF0ZQorcGVybXV0YXRpb24gczFzZXIgczJzZXIgczJ1cGQyMDI1MjAyNiBzMWRlbDIwMjUgczJj IHMxYyBzMXEKKworIyMgd2l0aCBwcmlvciByZWFkIGJ5IHMxOgorCisjIHMxIGZhaWxzIGZyb20g Y29uY3VycmVudCB1cGRhdGUKK3Blcm11dGF0aW9uIHMxc2VyIHMyc2VyIHMxcSBzMnVwZDIwMjcg czJjIHMxZGVsMjAyNSBzMWMgczFxCisKKyMgczEgZmFpbHMgZnJvbSBjb25jdXJyZW50IHVwZGF0 ZQorcGVybXV0YXRpb24gczFzZXIgczJzZXIgczFxIHMydXBkMjAyNTAzIHMyYyBzMWRlbDIwMjUg czFjIHMxcQorCisjIHMxIGZhaWxzIGZyb20gY29uY3VycmVudCB1cGRhdGUKK3Blcm11dGF0aW9u IHMxc2VyIHMyc2VyIHMxcSBzMnVwZDIwMjUyMDI2IHMyYyBzMWRlbDIwMjUgczFjIHMxcQorCisj IHMyIHNlZXMgdGhlIGxlZnRvdmVycworcGVybXV0YXRpb24gczFzZXIgczJzZXIgczFxIHMxZGVs MjAyNSBzMWMgczJ1cGQyMDI3IHMyYyBzMXEKKworIyBzMiBpZ25vcmVzIHRoZSBkZWxldGVkIHJv dworcGVybXV0YXRpb24gczFzZXIgczJzZXIgczFxIHMxZGVsMjAyNSBzMWMgczJ1cGQyMDI1MDMg czJjIHMxcQorCisjIHMyIGlnbm9yZXMgdGhlIGRlbGV0ZWQgcm93IGFuZCBzZWVzIGl0cyBsZWZ0 b3ZlcnMKK3Blcm11dGF0aW9uIHMxc2VyIHMyc2VyIHMxcSBzMWRlbDIwMjUgczFjIHMydXBkMjAy NTIwMjYgczJjIHMxcQorCisjIHMxIGZhaWxzIGZyb20gY29uY3VycmVudCB1cGRhdGUKK3Blcm11 dGF0aW9uIHMxc2VyIHMyc2VyIHMxcSBzMnVwZDIwMjcgczFkZWwyMDI1IHMyYyBzMWMgczFxCisK KyMgczEgZmFpbHMgZnJvbSBjb25jdXJyZW50IHVwZGF0ZQorcGVybXV0YXRpb24gczFzZXIgczJz ZXIgczFxIHMydXBkMjAyNTAzIHMxZGVsMjAyNSBzMmMgczFjIHMxcQorCisjIHMxIGZhaWxzIGZy b20gY29uY3VycmVudCB1cGRhdGUKK3Blcm11dGF0aW9uIHMxc2VyIHMyc2VyIHMxcSBzMnVwZDIw MjUyMDI2IHMxZGVsMjAyNSBzMmMgczFjIHMxcQorCisjICMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMKKyMgU0VSSUFMSVpBQkxFIHRlc3RzLCBERUxFVEUrREVMRVRFOgor IyAjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCisKKyMgczEgc2VlcyB0 aGUgbGVmdG92ZXJzCitwZXJtdXRhdGlvbiBzMXNlciBzMnNlciBzMmRlbDIwMjcgczJjIHMxZGVs MjAyNSBzMWMgczFxCisKKyMgczEgaWdub3JlcyB0aGUgZGVsZXRlZCByb3cgYW5kIHNlZXMgaXRz IGxlZnRvdmVycworcGVybXV0YXRpb24gczFzZXIgczJzZXIgczJkZWwyMDI1MDMgczJjIHMxZGVs MjAyNSBzMWMgczFxCisKKyMgczEgaWdub3JlcyB0aGUgZGVsZXRlZCByb3cgYW5kIHNlZXMgaXRz IGxlZnRvdmVycworcGVybXV0YXRpb24gczFzZXIgczJzZXIgczJkZWwyMDI1MjAyNiBzMmMgczFk ZWwyMDI1IHMxYyBzMXEKKworIyBzMiBzZWVzIHRoZSBsZWZ0b3ZlcnMKK3Blcm11dGF0aW9uIHMx c2VyIHMyc2VyIHMxZGVsMjAyNSBzMWMgczJkZWwyMDI3IHMyYyBzMXEKKworIyBzMiBpZ25vcmVz IHRoZSBkZWxldGVkIHJvdworcGVybXV0YXRpb24gczFzZXIgczJzZXIgczFkZWwyMDI1IHMxYyBz MmRlbDIwMjUwMyBzMmMgczFxCisKKyMgczIgaWdub3JlcyB0aGUgZGVsZXRlZCByb3cgYW5kIHNl ZXMgaXRzIGxlZnRvdmVycworcGVybXV0YXRpb24gczFzZXIgczJzZXIgczFkZWwyMDI1IHMxYyBz MmRlbDIwMjUyMDI2IHMyYyBzMXEKKworIyBzMSBmYWlscyBmcm9tIGNvbmN1cnJlbnQgZGVsZXRl CitwZXJtdXRhdGlvbiBzMXNlciBzMnNlciBzMmRlbDIwMjcgczFkZWwyMDI1IHMyYyBzMWMgczFx CisKKyMgczEgZmFpbHMgZnJvbSBjb25jdXJyZW50IGRlbGV0ZQorcGVybXV0YXRpb24gczFzZXIg czJzZXIgczJkZWwyMDI1MDMgczFkZWwyMDI1IHMyYyBzMWMgczFxCisKKyMgczEgZmFpbHMgZnJv bSBjb25jdXJyZW50IGRlbGV0ZQorcGVybXV0YXRpb24gczFzZXIgczJzZXIgczJkZWwyMDI1MjAy NiBzMWRlbDIwMjUgczJjIHMxYyBzMXEKKworIyB3aXRoIHByaW9yIHJlYWQgYnkgczE6CisKKyMg czEgZmFpbHMgZnJvbSBjb25jdXJyZW50IGRlbGV0ZQorcGVybXV0YXRpb24gczFzZXIgczJzZXIg czFxIHMyZGVsMjAyNyBzMmMgczFkZWwyMDI1IHMxYyBzMXEKKworIyBzMSBmYWlscyBmcm9tIGNv bmN1cnJlbnQgZGVsZXRlCitwZXJtdXRhdGlvbiBzMXNlciBzMnNlciBzMXEgczJkZWwyMDI1MDMg czJjIHMxZGVsMjAyNSBzMWMgczFxCisKKyMgczEgZmFpbHMgZnJvbSBjb25jdXJyZW50IGRlbGV0 ZQorcGVybXV0YXRpb24gczFzZXIgczJzZXIgczFxIHMyZGVsMjAyNTIwMjYgczJjIHMxZGVsMjAy NSBzMWMgczFxCisKKyMgczIgc2VlcyB0aGUgbGVmdG92ZXJzCitwZXJtdXRhdGlvbiBzMXNlciBz MnNlciBzMXEgczFkZWwyMDI1IHMxYyBzMmRlbDIwMjcgczJjIHMxcQorCisjIHMyIGlnbm9yZXMg dGhlIGRlbGV0ZWQgcm93CitwZXJtdXRhdGlvbiBzMXNlciBzMnNlciBzMXEgczFkZWwyMDI1IHMx YyBzMmRlbDIwMjUwMyBzMmMgczFxCisKKyMgczIgaWdub3JlcyB0aGUgZGVsZXRlZCByb3cgYW5k IHNlZXMgaXRzIGxlZnRvdmVycworcGVybXV0YXRpb24gczFzZXIgczJzZXIgczFxIHMxZGVsMjAy NSBzMWMgczJkZWwyMDI1MjAyNiBzMmMgczFxCisKKyMgczEgZmFpbHMgZnJvbSBjb25jdXJyZW50 IGRlbGV0ZQorcGVybXV0YXRpb24gczFzZXIgczJzZXIgczFxIHMyZGVsMjAyNyBzMWRlbDIwMjUg czJjIHMxYyBzMXEKKworIyBzMSBmYWlscyBmcm9tIGNvbmN1cnJlbnQgZGVsZXRlCitwZXJtdXRh dGlvbiBzMXNlciBzMnNlciBzMXEgczJkZWwyMDI1MDMgczFkZWwyMDI1IHMyYyBzMWMgczFxCisK KyMgczEgZmFpbHMgZnJvbSBjb25jdXJyZW50IGRlbGV0ZQorcGVybXV0YXRpb24gczFzZXIgczJz ZXIgczFxIHMyZGVsMjAyNTIwMjYgczFkZWwyMDI1IHMyYyBzMWMgczFxCi0tIAoyLjQ3LjMKCg== --000000000000160b4c0644846b0a Content-Type: text/x-patch; charset="US-ASCII"; name="v62-0001-Document-temporal-update-delete.patch" Content-Disposition: attachment; filename="v62-0001-Document-temporal-update-delete.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_migeesfq0 RnJvbSA0M2RlYThlYWY2NWMyMDQxMTI5ZTFlMjAxM2FmZjE1MGJiNDMyNTg4IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiAiUGF1bCBBLiBKdW5nd2lydGgiIDxwakBpbGx1bWluYXRlZGNv bXB1dGluZy5jb20+CkRhdGU6IFR1ZSwgMTcgSnVuIDIwMjUgMjE6Mzg6NDAgLTA3MDAKU3ViamVj dDogW1BBVENIIHY2MiAxLzhdIERvY3VtZW50IHRlbXBvcmFsIHVwZGF0ZS9kZWxldGUKClRoZSBG T1IgUE9SVElPTiBPRiBzeW50YXggd2lsbCBhbHNvIGJlIGRvY3VtZW50ZWQgaW4gdGhlIHJlZmVy ZW5jZSBwYWdlcwpmb3IgVVBEQVRFIGFuZCBERUxFVEUsIGJ1dCB0aGlzIGNvbW1pdCBhZGRzIGEg bmV3IHNlY3Rpb24gdG8gdGhlIERNTCBjaGFwdGVyLApjYWxsZWQgIlVwZGF0aW5nIGFuZCBEZWxl dGluZyBUZW1wb3JhbCBEYXRhLCIgZ2l2aW5nIGEgY29uY2VwdHVhbCBkZXNjcmlwdGlvbiwKYXMg d2VsbCBhcyBhIGdsb3NzYXJ5IHRlcm0gZm9yICJ0ZW1wb3JhbCBsZWZ0b3ZlcnMiLiBUaGUgU1FM IHN0YW5kYXJkIGRvZXNuJ3QKZ2l2ZSBhbnkgdGVybSBmb3IgdGhlIHN1cHBsZW1lbnRhcnkgSU5T RVJUcyBhZnRlciBhbiBVUERBVEUvREVMRVRFIEZPUiBQT1JUSU9OCk9GLCBidXQgaXQgaXMgcmVh bGx5IGhhbmR5IHRvIGhhdmUgYSBuYW1lIGZvciB0aGVtLgoKQXV0aG9yOiBQYXVsIEEuIEp1bmd3 aXJ0aCA8cGpAaWxsdW1pbmF0ZWRjb21wdXRpbmcuY29tPgotLS0KIGRvYy9zcmMvc2dtbC9kbWwu c2dtbCAgICAgICAgICAgICAgICAgICB8IDEzOSArKysrKysrKysrKysrKysrKysrKysrKysKIGRv Yy9zcmMvc2dtbC9nbG9zc2FyeS5zZ21sICAgICAgICAgICAgICB8ICAxNSArKysKIGRvYy9zcmMv c2dtbC9pbWFnZXMvTWFrZWZpbGUgICAgICAgICAgICB8ICAgNCArLQogZG9jL3NyYy9zZ21sL2lt YWdlcy90ZW1wb3JhbC1kZWxldGUuc3ZnIHwgIDQxICsrKysrKysKIGRvYy9zcmMvc2dtbC9pbWFn ZXMvdGVtcG9yYWwtZGVsZXRlLnR4dCB8ICAxMiArKwogZG9jL3NyYy9zZ21sL2ltYWdlcy90ZW1w b3JhbC11cGRhdGUuc3ZnIHwgIDQ1ICsrKysrKysrCiBkb2Mvc3JjL3NnbWwvaW1hZ2VzL3RlbXBv cmFsLXVwZGF0ZS50eHQgfCAgMTIgKysKIDcgZmlsZXMgY2hhbmdlZCwgMjY3IGluc2VydGlvbnMo KyksIDEgZGVsZXRpb24oLSkKIGNyZWF0ZSBtb2RlIDEwMDY0NCBkb2Mvc3JjL3NnbWwvaW1hZ2Vz L3RlbXBvcmFsLWRlbGV0ZS5zdmcKIGNyZWF0ZSBtb2RlIDEwMDY0NCBkb2Mvc3JjL3NnbWwvaW1h Z2VzL3RlbXBvcmFsLWRlbGV0ZS50eHQKIGNyZWF0ZSBtb2RlIDEwMDY0NCBkb2Mvc3JjL3NnbWwv aW1hZ2VzL3RlbXBvcmFsLXVwZGF0ZS5zdmcKIGNyZWF0ZSBtb2RlIDEwMDY0NCBkb2Mvc3JjL3Nn bWwvaW1hZ2VzL3RlbXBvcmFsLXVwZGF0ZS50eHQKCmRpZmYgLS1naXQgYS9kb2Mvc3JjL3NnbWwv ZG1sLnNnbWwgYi9kb2Mvc3JjL3NnbWwvZG1sLnNnbWwKaW5kZXggNjFjNjRjZjZjNDkuLjFkMTZl YWUxODc0IDEwMDY0NAotLS0gYS9kb2Mvc3JjL3NnbWwvZG1sLnNnbWwKKysrIGIvZG9jL3NyYy9z Z21sL2RtbC5zZ21sCkBAIC0yNjEsNiArMjYxLDE0NSBAQCBERUxFVEUgRlJPTSBwcm9kdWN0czsK ICAgPC9wYXJhPgogIDwvc2VjdDE+CiAKKyA8c2VjdDEgaWQ9ImRtbC1hcHBsaWNhdGlvbi10aW1l LXVwZGF0ZS1kZWxldGUiPgorICA8dGl0bGU+VXBkYXRpbmcgYW5kIERlbGV0aW5nIFRlbXBvcmFs IERhdGE8L3RpdGxlPgorCisgIDxwYXJhPgorICAgU3BlY2lhbCBzeW50YXggaXMgYXZhaWxhYmxl IHRvIHVwZGF0ZSBhbmQgZGVsZXRlIGZyb20gPGxpbmsKKyAgIGxpbmtlbmQ9ImRkbC1hcHBsaWNh dGlvbi10aW1lIj5hcHBsaWNhdGlvbi10aW1lIHRlbXBvcmFsIHRhYmxlczwvbGluaz4uIChObwor ICAgZXh0cmEgc3ludGF4IGlzIHJlcXVpcmVkIHRvIGluc2VydCBpbnRvIHRoZW06IHRoZSB1c2Vy IGp1c3QKKyAgIHByb3ZpZGVzIHRoZSBhcHBsaWNhdGlvbiB0aW1lIGxpa2UgYW55IG90aGVyIGF0 dHJpYnV0ZS4pIFdoZW4gdXBkYXRpbmcKKyAgIG9yIGRlbGV0aW5nLCB0aGUgdXNlciBjYW4gdGFy Z2V0IGEgc3BlY2lmaWMgcG9ydGlvbiBvZiBoaXN0b3J5LiBPbmx5CisgICByb3dzIG92ZXJsYXBw aW5nIHRoYXQgaGlzdG9yeSBhcmUgYWZmZWN0ZWQsIGFuZCB3aXRoaW4gdGhvc2Ugcm93cyBvbmx5 CisgICB0aGUgdGFyZ2V0ZWQgaGlzdG9yeSBpcyBjaGFuZ2VkLiBJZiBhIHJvdyBjb250YWlucyBt b3JlIGhpc3RvcnkgYmV5b25kCisgICB3aGF0IGlzIHRhcmdldGVkLCBpdHMgYXBwbGljYXRpb24g dGltZSBpcyByZWR1Y2VkIHRvIGZpdCB3aXRoaW4gdGhlCisgICB0YXJnZXRlZCBpbnRlcnZhbCwg YW5kIG5ldyByb3dzIGFyZSBpbnNlcnRlZCB0byBwcmVzZXJ2ZSB0aGUgaGlzdG9yeQorICAgdGhh dCB3YXMgbm90IHRhcmdldGVkLgorICA8L3BhcmE+CisKKyAgPHBhcmE+CisgICBSZWNhbGwgdGhl IGV4YW1wbGUgdGFibGUgZnJvbSA8eHJlZiBsaW5rZW5kPSJ0ZW1wb3JhbC1lbnRpdGllcy1maWd1 cmUiIC8+LAorICAgY29udGFpbmluZyB0aGlzIGRhdGE6CisKKzxwcm9ncmFtbGlzdGluZz4KKyBw cm9kdWN0X25vIHwgcHJpY2UgfCAgICAgICAgdmFsaWRfYXQKKy0tLS0tLS0tLS0tLSstLS0tLS0t Ky0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAgICAgICAgICA1IHwgIDUuMDAgfCBbMjAyMC0w MS0wMSwyMDIyLTAxLTAxKQorICAgICAgICAgIDUgfCAgOC4wMCB8IFsyMDIyLTAxLTAxLCkKKyAg ICAgICAgICA2IHwgIDkuMDAgfCBbMjAyMS0wMS0wMSwyMDI0LTAxLTAxKQorPC9wcm9ncmFtbGlz dGluZz4KKworICAgQSB0ZW1wb3JhbCB1cGRhdGUgbWlnaHQgbG9vayBsaWtlIHRoaXM6CisKKzxw cm9ncmFtbGlzdGluZz4KK1VQREFURSBwcm9kdWN0cworICBGT1IgUE9SVElPTiBPRiB2YWxpZF9h dCBGUk9NICcyMDIzLTA5LTAxJyBUTyAnMjAyNS0wMy0wMScKKyAgQVMgcAorICBTRVQgcHJpY2Ug PSAxMi4wMAorICBXSEVSRSBwcm9kdWN0X25vID0gNTsKKzwvcHJvZ3JhbWxpc3Rpbmc+CisKKyAg IFRoYXQgY29tbWFuZCB3aWxsIHVwZGF0ZSB0aGUgc2Vjb25kIHJlY29yZCBmb3IgcHJvZHVjdCA1 LiBJdCB3aWxsIHNldCB0aGUKKyAgIHByaWNlIHRvIDEyLjAwIGFuZCB0aGUgYXBwbGljYXRpb24g dGltZSB0byA8bGl0ZXJhbD5bMjAyMy0wOS0wMSwyMDI1LTAzLTAxKTwvbGl0ZXJhbD4uCisgICBU aGVuLCBzaW5jZSB0aGUgcm93J3MgYXBwbGljYXRpb24gdGltZSB3YXMgb3JpZ2luYWxseQorICAg PGxpdGVyYWw+WzIwMjItMDEtMDEsKTwvbGl0ZXJhbD4sIHRoZSBjb21tYW5kIG11c3QgaW5zZXJ0 IHR3bworICAgPGdsb3NzdGVybSBsaW5rZW5kPSJnbG9zc2FyeS10ZW1wb3JhbC1sZWZ0b3ZlcnMi PnRlbXBvcmFsCisgICBsZWZ0b3ZlcnM8L2dsb3NzdGVybT46IG9uZSBmb3IgaGlzdG9yeSBiZWZv cmUgU2VwdGVtYmVyIDEsIDIwMjMsIGFuZAorICAgYW5vdGhlciBmb3IgaGlzdG9yeSBzaW5jZSBN YXJjaCAxLCAyMDI1LiBBZnRlciB0aGUgdXBkYXRlLCB0aGUgdGFibGUKKyAgIGhhcyBmb3VyIHJv d3MgZm9yIHByb2R1Y3QgNToKKworPHByb2dyYW1saXN0aW5nPgorIHByb2R1Y3Rfbm8gfCBwcmlj ZSB8ICAgICAgICB2YWxpZF9hdAorLS0tLS0tLS0tLS0tKy0tLS0tLS0rLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLQorICAgICAgICAgIDUgfCAgNS4wMCB8IFsyMDIwLTAxLTAxLDIwMjItMDEtMDEp CisgICAgICAgICAgNSB8ICA4LjAwIHwgWzIwMjItMDEtMDEsMjAyMy0wOS0wMSkKKyAgICAgICAg ICA1IHwgMTIuMDAgfCBbMjAyMy0wOS0wMSwyMDI1LTAzLTAxKQorICAgICAgICAgIDUgfCAgOC4w MCB8IFsyMDI1LTAzLTAxLCkKKzwvcHJvZ3JhbWxpc3Rpbmc+CisKKyAgIFRoZSBuZXcgaGlzdG9y eSBjb3VsZCBiZSBwbG90dGVkIGFzIGluIDx4cmVmIGxpbmtlbmQ9InRlbXBvcmFsLXVwZGF0ZS1m aWd1cmUiLz4uCisgIDwvcGFyYT4KKworICA8ZmlndXJlIGlkPSJ0ZW1wb3JhbC11cGRhdGUtZmln dXJlIj4KKyAgIDx0aXRsZT5UZW1wb3JhbCBVcGRhdGUgRXhhbXBsZTwvdGl0bGU+CisgICA8bWVk aWFvYmplY3Q+CisgICAgPGltYWdlb2JqZWN0PgorICAgICA8aW1hZ2VkYXRhIGZpbGVyZWY9Imlt YWdlcy90ZW1wb3JhbC11cGRhdGUuc3ZnIiBmb3JtYXQ9IlNWRyIgd2lkdGg9IjEwMCUiLz4KKyAg ICA8L2ltYWdlb2JqZWN0PgorICAgPC9tZWRpYW9iamVjdD4KKyAgPC9maWd1cmU+CisKKyAgPHBh cmE+CisgICBTaW1pbGFybHksIGEgc3BlY2lmaWMgcG9ydGlvbiBvZiBoaXN0b3J5IG1heSBiZSB0 YXJnZXRlZCB3aGVuCisgICBkZWxldGluZyByb3dzIGZyb20gYSB0YWJsZS4gSW4gdGhhdCBjYXNl LCB0aGUgb3JpZ2luYWwgcm93cyBhcmUKKyAgIHJlbW92ZWQsIGJ1dCBuZXcKKyAgIDxnbG9zc3Rl cm0gbGlua2VuZD0iZ2xvc3NhcnktdGVtcG9yYWwtbGVmdG92ZXJzIj50ZW1wb3JhbCBsZWZ0b3Zl cnM8L2dsb3NzdGVybT4KKyAgIGFyZSBpbnNlcnRlZCB0byBwcmVzZXJ2ZSB0aGUgdW50b3VjaGVk IGhpc3RvcnkuIFRoZSBzeW50YXggZm9yIGEKKyAgIHRlbXBvcmFsIGRlbGV0ZSBpczoKKworPHBy b2dyYW1saXN0aW5nPgorREVMRVRFIEZST00gcHJvZHVjdHMKKyAgRk9SIFBPUlRJT04gT0YgdmFs aWRfYXQgRlJPTSAnMjAyMS0wOC0wMScgVE8gJzIwMjMtMDktMDEnCisgIEFTIHAKK1dIRVJFIHBy b2R1Y3Rfbm8gPSA1OworPC9wcm9ncmFtbGlzdGluZz4KKworICAgQ29udGludWluZyB0aGUgZXhh bXBsZSwgdGhpcyBjb21tYW5kIHdvdWxkIGRlbGV0ZSB0d28gcmVjb3Jkcy4gVGhlCisgICBmaXJz dCByZWNvcmQgd291bGQgeWllbGQgYSBzaW5nbGUgdGVtcG9yYWwgbGVmdG92ZXIsIGFuZCB0aGUg c2Vjb25kCisgICB3b3VsZCBiZSBkZWxldGVkIGVudGlyZWx5LiBUaGUgcm93cyBmb3IgcHJvZHVj dCA1IHdvdWxkIG5vdyBiZToKKworPHByb2dyYW1saXN0aW5nPgorIHByb2R1Y3Rfbm8gfCBwcmlj ZSB8ICAgICAgICB2YWxpZF9hdAorLS0tLS0tLS0tLS0tKy0tLS0tLS0rLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLQorICAgICAgICAgIDUgfCAgNS4wMCB8IFsyMDIwLTAxLTAxLDIwMjEtMDgtMDEp CisgICAgICAgICAgNSB8IDEyLjAwIHwgWzIwMjMtMDktMDEsMjAyNS0wMy0wMSkKKyAgICAgICAg ICA1IHwgIDguMDAgfCBbMjAyNS0wMy0wMSwpCis8L3Byb2dyYW1saXN0aW5nPgorCisgICBUaGUg bmV3IGhpc3RvcnkgY291bGQgYmUgcGxvdHRlZCBhcyBpbiA8eHJlZiBsaW5rZW5kPSJ0ZW1wb3Jh bC1kZWxldGUtZmlndXJlIi8+LgorICA8L3BhcmE+CisKKyAgPGZpZ3VyZSBpZD0idGVtcG9yYWwt ZGVsZXRlLWZpZ3VyZSI+CisgICA8dGl0bGU+VGVtcG9yYWwgRGVsZXRlIEV4YW1wbGU8L3RpdGxl PgorICAgPG1lZGlhb2JqZWN0PgorICAgIDxpbWFnZW9iamVjdD4KKyAgICAgPGltYWdlZGF0YSBm aWxlcmVmPSJpbWFnZXMvdGVtcG9yYWwtZGVsZXRlLnN2ZyIgZm9ybWF0PSJTVkciIHdpZHRoPSIx MDAlIi8+CisgICAgPC9pbWFnZW9iamVjdD4KKyAgIDwvbWVkaWFvYmplY3Q+CisgIDwvZmlndXJl PgorCisgIDxwYXJhPgorICAgSW5zdGVhZCBvZiB1c2luZyB0aGUgPGxpdGVyYWw+RlJPTSAuLi4g VE8gLi4uPC9saXRlcmFsPiBzeW50YXgsCisgICB0ZW1wb3JhbCB1cGRhdGUvZGVsZXRlIGNvbW1h bmRzIGNhbiBhbHNvIGdpdmUgdGhlIHRhcmdldGVkCisgICByYW5nZS9tdWx0aXJhbmdlIGRpcmVj dGx5LCBpbnNpZGUgcGFyZW50aGVzZXMuIEZvciBleGFtcGxlOgorICAgPGxpdGVyYWw+REVMRVRF IEZST00gcHJvZHVjdHMgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgKCdbMjAyOC0wMS0wMSwpJykg Li4uPC9saXRlcmFsPi4KKyAgIFRoaXMgc3ludGF4IGlzIHJlcXVpcmVkIHdoZW4gYXBwbGljYXRp b24gdGltZSBpcyBzdG9yZWQKKyAgIGluIGEgbXVsdGlyYW5nZSBjb2x1bW4uCisgIDwvcGFyYT4K KworICA8cGFyYT4KKyAgIFdoZW4gYXBwbGljYXRpb24gdGltZSBpcyBzdG9yZWQgaW4gYSByYW5n ZXR5cGUgY29sdW1uLCB6ZXJvLCBvbmUgb3IKKyAgIHR3byB0ZW1wb3JhbCBsZWZ0b3ZlcnMgYXJl IHByb2R1Y2VkIGJ5IGVhY2ggcm93IHRoYXQgaXMKKyAgIHVwZGF0ZWQvZGVsZXRlZC4gV2l0aCBh IG11bHRpcmFuZ2UgY29sdW1uLCBvbmx5IHplcm8gb3Igb25lIHRlbXBvcmFsCisgICBsZWZ0b3Zl ciBpcyBwcm9kdWNlZC4gVGhlIGxlZnRvdmVyIGJvdW5kcyBhcmUgY29tcHV0ZWQgdXNpbmcKKyAg IDxsaXRlcmFsPnJhbmdlX21pbnVzX211bHRpPC9saXRlcmFsPiBhbmQKKyAgIDxsaXRlcmFsPm11 bHRpcmFuZ2VfbWludXNfbXVsdGk8L2xpdGVyYWw+CisgICAoc2VlIDx4cmVmIGxpbmtlbmQ9ImZ1 bmN0aW9ucy1yYW5nZSIvPikuCisgIDwvcGFyYT4KKworICA8cGFyYT4KKyAgIFRoZSBib3VuZHMg Z2l2ZW4gdG8gPGxpdGVyYWw+Rk9SIFBPUlRJT04gT0Y8L2xpdGVyYWw+IG11c3QgYmUKKyAgIGNv bnN0YW50LiBGdW5jdGlvbnMgbGlrZSA8bGl0ZXJhbD5OT1coKTwvbGl0ZXJhbD4gYXJlIGFsbG93 ZWQsIGJ1dAorICAgY29sdW1uIHJlZmVyZW5jZXMgYXJlIG5vdC4KKyAgPC9wYXJhPgorCisgIDxw YXJhPgorICAgV2hlbiB0ZW1wb3JhbCBsZWZ0b3ZlcnMgYXJlIGluc2VydGVkLCBhbGwgPGxpdGVy YWw+SU5TRVJUPC9saXRlcmFsPgorICAgdHJpZ2dlcnMgYXJlIGZpcmVkLCBidXQgcGVybWlzc2lv biBjaGVja3MgZm9yIGluc2VydGluZyByb3dzIGFyZQorICAgc2tpcHBlZC4KKyAgPC9wYXJhPgor IDwvc2VjdDE+CisKICA8c2VjdDEgaWQ9ImRtbC1yZXR1cm5pbmciPgogICA8dGl0bGU+UmV0dXJu aW5nIERhdGEgZnJvbSBNb2RpZmllZCBSb3dzPC90aXRsZT4KIApkaWZmIC0tZ2l0IGEvZG9jL3Ny Yy9zZ21sL2dsb3NzYXJ5LnNnbWwgYi9kb2Mvc3JjL3NnbWwvZ2xvc3Nhcnkuc2dtbAppbmRleCBh NzZjZjVjMzgzZi4uMTA0MjllZGJiNTIgMTAwNjQ0Ci0tLSBhL2RvYy9zcmMvc2dtbC9nbG9zc2Fy eS5zZ21sCisrKyBiL2RvYy9zcmMvc2dtbC9nbG9zc2FyeS5zZ21sCkBAIC0xOTE2LDYgKzE5MTYs MjEgQEAKICAgIDwvZ2xvc3NkZWY+CiAgIDwvZ2xvc3NlbnRyeT4KIAorICA8Z2xvc3NlbnRyeSBp ZD0iZ2xvc3NhcnktdGVtcG9yYWwtbGVmdG92ZXJzIj4KKyAgIDxnbG9zc3Rlcm0+VGVtcG9yYWwg bGVmdG92ZXJzPC9nbG9zc3Rlcm0+CisgICA8Z2xvc3NkZWY+CisgICAgPHBhcmE+CisgICAgIEFm dGVyIGEgdGVtcG9yYWwgdXBkYXRlIG9yIGRlbGV0ZSwgdGhlIHBvcnRpb24gb2YgaGlzdG9yeSB0 aGF0IHdhcyBub3QKKyAgICAgdXBkYXRlZC9kZWxldGVkLiBXaGVuIHVzaW5nIHJhbmdlcyB0byB0 cmFjayBhcHBsaWNhdGlvbiB0aW1lLCB0aGVyZSBtYXkgYmUKKyAgICAgemVybywgb25lLCBvciB0 d28gc3RyZXRjaGVzIG9mIGhpc3RvcnkgdGhhdCB3ZXJlIG5vdCB1cGRhdGVkL2RlbGV0ZWQKKyAg ICAgKGJlZm9yZSBhbmQvb3IgYWZ0ZXIgdGhlIHBvcnRpb24gdGhhdCB3YXMgdXBkYXRlZC9kZWxl dGVkKS4gTmV3IHJvd3MgYXJlCisgICAgIGF1dG9tYXRpY2FsbHkgaW5zZXJ0ZWQgaW50byB0aGUg dGFibGUgdG8gcHJlc2VydmUgdGhhdCBoaXN0b3J5LiBBIHNpbmdsZQorICAgICBtdWx0aXJhbmdl IGNhbiBhY2NvbW1vZGF0ZSB0aGUgdW50b3VjaGVkIGhpc3RvcnkgYmVmb3JlIGFuZCBhZnRlciB0 aGUKKyAgICAgdXBkYXRlL2RlbGV0ZSwgc28gdGhlcmUgd2lsbCBiZSBvbmx5IHplcm8gb3Igb25l IGxlZnRvdmVyLgorICAgIDwvcGFyYT4KKyAgIDwvZ2xvc3NkZWY+CisgIDwvZ2xvc3NlbnRyeT4K KwogICA8Z2xvc3NlbnRyeSBpZD0iZ2xvc3NhcnktdGVtcG9yYWwtdGFibGUiPgogICAgPGdsb3Nz dGVybT5UZW1wb3JhbCB0YWJsZTwvZ2xvc3N0ZXJtPgogICAgPGdsb3NzZGVmPgpkaWZmIC0tZ2l0 IGEvZG9jL3NyYy9zZ21sL2ltYWdlcy9NYWtlZmlsZSBiL2RvYy9zcmMvc2dtbC9pbWFnZXMvTWFr ZWZpbGUKaW5kZXggZmQ1NWI5YWQyM2YuLjM4Zjg4NjlkNzhkIDEwMDY0NAotLS0gYS9kb2Mvc3Jj L3NnbWwvaW1hZ2VzL01ha2VmaWxlCisrKyBiL2RvYy9zcmMvc2dtbC9pbWFnZXMvTWFrZWZpbGUK QEAgLTcsNyArNyw5IEBAIEFMTF9JTUFHRVMgPSBcCiAJZ2luLnN2ZyBcCiAJcGFnZWxheW91dC5z dmcgXAogCXRlbXBvcmFsLWVudGl0aWVzLnN2ZyBcCi0JdGVtcG9yYWwtcmVmZXJlbmNlcy5zdmcK Kwl0ZW1wb3JhbC1yZWZlcmVuY2VzLnN2ZyBcCisJdGVtcG9yYWwtdXBkYXRlLnN2ZyBcCisJdGVt cG9yYWwtZGVsZXRlLnN2ZwogCiBESVRBQSA9IGRpdGFhCiBET1QgPSBkb3QKZGlmZiAtLWdpdCBh L2RvYy9zcmMvc2dtbC9pbWFnZXMvdGVtcG9yYWwtZGVsZXRlLnN2ZyBiL2RvYy9zcmMvc2dtbC9p bWFnZXMvdGVtcG9yYWwtZGVsZXRlLnN2ZwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw MDAwMDAwMC4uMmQ4YjFkNmVjN2IKLS0tIC9kZXYvbnVsbAorKysgYi9kb2Mvc3JjL3NnbWwvaW1h Z2VzL3RlbXBvcmFsLWRlbGV0ZS5zdmcKQEAgLTAsMCArMSw0MSBAQAorPD94bWwgdmVyc2lvbj0i MS4wIj8+Cis8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0i MCAwIDEzMzAgMjI0IiB3aWR0aD0iMTMzMCIgaGVpZ2h0PSIyMjQiIHNoYXBlLXJlbmRlcmluZz0i Z2VvbWV0cmljUHJlY2lzaW9uIiB2ZXJzaW9uPSIxLjAiPgorICA8ZGVmcz4KKyAgICA8ZmlsdGVy IGlkPSJmMiIgeD0iMCIgeT0iMCIgd2lkdGg9IjIwMCUiIGhlaWdodD0iMjAwJSI+CisgICAgICA8 ZmVPZmZzZXQgcmVzdWx0PSJvZmZPdXQiIGluPSJTb3VyY2VHcmFwaGljIiBkeD0iNSIgZHk9IjUi Lz4KKyAgICAgIDxmZUdhdXNzaWFuQmx1ciByZXN1bHQ9ImJsdXJPdXQiIGluPSJvZmZPdXQiIHN0 ZERldmlhdGlvbj0iMyIvPgorICAgICAgPGZlQmxlbmQgaW49IlNvdXJjZUdyYXBoaWMiIGluMj0i Ymx1ck91dCIgbW9kZT0ibm9ybWFsIi8+CisgICAgPC9maWx0ZXI+CisgIDwvZGVmcz4KKyAgPGcg c3Ryb2tlLXdpZHRoPSIxIiBzdHJva2UtbGluZWNhcD0ic3F1YXJlIiBzdHJva2UtbGluZWpvaW49 InJvdW5kIj4KKyAgICA8cmVjdCB4PSIwIiB5PSIwIiB3aWR0aD0iMTMzMCIgaGVpZ2h0PSIyMjQi IHN0eWxlPSJmaWxsOiAjZmZmZmZmIi8+CisgICAgPHBhdGggc3Ryb2tlPSIjMDAwMDAwIiBzdHJv a2Utd2lkdGg9IjEuMDAwMDAwIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9p bj0icm91bmQiIGZpbGw9IiM5OWRkOTkiIGQ9Ik02ODUuMCA2My4wIEw2ODUuMCAxNDcuMCBMMTAw NS4wIDE0Ny4wIEwxMDA1LjAgNjMuMCB6Ii8+CisgICAgPHBhdGggc3Ryb2tlPSIjMDAwMDAwIiBz dHJva2Utd2lkdGg9IjEuMDAwMDAwIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5l am9pbj0icm91bmQiIGZpbGw9IiM5OWRkOTkiIGQ9Ik0zMTUuMCA2My4wIEwzMTUuMCAxNDcuMCBM MjUuMCAxNDcuMCBMMjUuMCA2My4wIHoiLz4KKyAgICA8cGF0aCBzdHJva2U9IiMwMDAwMDAiIHN0 cm9rZS13aWR0aD0iMS4wMDAwMDAiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVq b2luPSJyb3VuZCIgZmlsbD0iIzk5ZGQ5OSIgZD0iTTEwMDUuMCA2My4wIEwxMDA1LjAgMTQ3LjAg TDEyNzUuMCAxNDcuMCBMMTI3NS4wIDYzLjAgeiIvPgorICAgIDxwYXRoIHN0cm9rZT0iIzAwMDAw MCIgc3Ryb2tlLXdpZHRoPSIxLjAwMDAwMCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2Ut bGluZWpvaW49InJvdW5kIiBmaWxsPSJub25lIiBkPSJNMjA1LjAgMTY4LjAgTDIwNS4wIDE4MS4w ICIvPgorICAgIDxwYXRoIHN0cm9rZT0iIzAwMDAwMCIgc3Ryb2tlLXdpZHRoPSIxLjAwMDAwMCIg c3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiBmaWxsPSJub25l IiBkPSJNMjUuMCAxNjguMCBMMjUuMCAxODEuMCAiLz4KKyAgICA8cGF0aCBzdHJva2U9IiMwMDAw MDAiIHN0cm9rZS13aWR0aD0iMS4wMDAwMDAiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tl LWxpbmVqb2luPSJyb3VuZCIgZmlsbD0ibm9uZSIgZD0iTTM4NS4wIDE2OC4wIEwzODUuMCAxODEu MCAiLz4KKyAgICA8cGF0aCBzdHJva2U9IiMwMDAwMDAiIHN0cm9rZS13aWR0aD0iMS4wMDAwMDAi IHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgZmlsbD0ibm9u ZSIgZD0iTTU2NS4wIDE2OC4wIEw1NjUuMCAxODEuMCAiLz4KKyAgICA8cGF0aCBzdHJva2U9IiMw MDAwMDAiIHN0cm9rZS13aWR0aD0iMS4wMDAwMDAiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ry b2tlLWxpbmVqb2luPSJyb3VuZCIgZmlsbD0ibm9uZSIgZD0iTTc0NS4wIDE2OC4wIEw3NDUuMCAx ODEuMCAiLz4KKyAgICA8cGF0aCBzdHJva2U9IiMwMDAwMDAiIHN0cm9rZS13aWR0aD0iMS4wMDAw MDAiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgZmlsbD0i bm9uZSIgZD0iTTkyNS4wIDE2OC4wIEw5MjUuMCAxODEuMCAiLz4KKyAgICA8cGF0aCBzdHJva2U9 IiMwMDAwMDAiIHN0cm9rZS13aWR0aD0iMS4wMDAwMDAiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIg c3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgZmlsbD0ibm9uZSIgZD0iTTExMDUuMCAxNjguMCBMMTEw NS4wIDE4MS4wICIvPgorICAgIDxwYXRoIHN0cm9rZT0iIzAwMDAwMCIgc3Ryb2tlLXdpZHRoPSIx LjAwMDAwMCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiBm aWxsPSJub25lIiBkPSJNMTI4NS4wIDE2OC4wIEwxMjg1LjAgMTgxLjAgIi8+CisgICAgPHRleHQg eD0iNDYiIHk9Ijk2IiBmb250LWZhbWlseT0iQ291cmllciIgZm9udC1zaXplPSIxNSIgc3Ryb2tl PSJub25lIiBmaWxsPSIjMDAwMDAwIj5wcm9kdWN0czwvdGV4dD4KKyAgICA8dGV4dCB4PSI0MCIg eT0iMTEwIiBmb250LWZhbWlseT0iQ291cmllciIgZm9udC1zaXplPSIxNSIgc3Ryb2tlPSJub25l IiBmaWxsPSIjMDAwMDAwIj4oNSwgNS4wMCw8L3RleHQ+CisgICAgPHRleHQgeD0iODMiIHk9IjEy NCIgZm9udC1mYW1pbHk9IkNvdXJpZXIiIGZvbnQtc2l6ZT0iMTUiIHN0cm9rZT0ibm9uZSIgZmls bD0iIzAwMDAwMCI+WzEgSmFuIDIwMjAsMSBBdWcgMjAyMSkpPC90ZXh0PgorICAgIDx0ZXh0IHg9 IjIwIiB5PSIxOTQiIGZvbnQtZmFtaWx5PSJDb3VyaWVyIiBmb250LXNpemU9IjE1IiBzdHJva2U9 Im5vbmUiIGZpbGw9IiMwMDAwMDAiPjIwMjA8L3RleHQ+CisgICAgPHRleHQgeD0iMjAwIiB5PSIx OTQiIGZvbnQtZmFtaWx5PSJDb3VyaWVyIiBmb250LXNpemU9IjE1IiBzdHJva2U9Im5vbmUiIGZp bGw9IiMwMDAwMDAiPjIwMjE8L3RleHQ+CisgICAgPHRleHQgeD0iMzgwIiB5PSIxOTQiIGZvbnQt ZmFtaWx5PSJDb3VyaWVyIiBmb250LXNpemU9IjE1IiBzdHJva2U9Im5vbmUiIGZpbGw9IiMwMDAw MDAiPjIwMjI8L3RleHQ+CisgICAgPHRleHQgeD0iNTYwIiB5PSIxOTQiIGZvbnQtZmFtaWx5PSJD b3VyaWVyIiBmb250LXNpemU9IjE1IiBzdHJva2U9Im5vbmUiIGZpbGw9IiMwMDAwMDAiPjIwMjM8 L3RleHQ+CisgICAgPHRleHQgeD0iNzA2IiB5PSI5NiIgZm9udC1mYW1pbHk9IkNvdXJpZXIiIGZv bnQtc2l6ZT0iMTUiIHN0cm9rZT0ibm9uZSIgZmlsbD0iIzAwMDAwMCI+cHJvZHVjdHM8L3RleHQ+ CisgICAgPHRleHQgeD0iNzAwIiB5PSIxMTAiIGZvbnQtZmFtaWx5PSJDb3VyaWVyIiBmb250LXNp emU9IjE1IiBzdHJva2U9Im5vbmUiIGZpbGw9IiMwMDAwMDAiPig1LCAxMi4wMCw8L3RleHQ+Cisg ICAgPHRleHQgeD0iNzQzIiB5PSIxMjQiIGZvbnQtZmFtaWx5PSJDb3VyaWVyIiBmb250LXNpemU9 IjE1IiBzdHJva2U9Im5vbmUiIGZpbGw9IiMwMDAwMDAiPlsxIFNlcCAyMDIzLDEgTWFyIDIwMjUp KTwvdGV4dD4KKyAgICA8dGV4dCB4PSI3NDAiIHk9IjE5NCIgZm9udC1mYW1pbHk9IkNvdXJpZXIi IGZvbnQtc2l6ZT0iMTUiIHN0cm9rZT0ibm9uZSIgZmlsbD0iIzAwMDAwMCI+MjAyNDwvdGV4dD4K KyAgICA8dGV4dCB4PSI5MjAiIHk9IjE5NCIgZm9udC1mYW1pbHk9IkNvdXJpZXIiIGZvbnQtc2l6 ZT0iMTUiIHN0cm9rZT0ibm9uZSIgZmlsbD0iIzAwMDAwMCI+MjAyNTwvdGV4dD4KKyAgICA8dGV4 dCB4PSIxMDI2IiB5PSI5NiIgZm9udC1mYW1pbHk9IkNvdXJpZXIiIGZvbnQtc2l6ZT0iMTUiIHN0 cm9rZT0ibm9uZSIgZmlsbD0iIzAwMDAwMCI+cHJvZHVjdHM8L3RleHQ+CisgICAgPHRleHQgeD0i MTAyMCIgeT0iMTEwIiBmb250LWZhbWlseT0iQ291cmllciIgZm9udC1zaXplPSIxNSIgc3Ryb2tl PSJub25lIiBmaWxsPSIjMDAwMDAwIj4oNSwgOC4wMCw8L3RleHQ+CisgICAgPHRleHQgeD0iMTA1 NiIgeT0iMTI0IiBmb250LWZhbWlseT0iQ291cmllciIgZm9udC1zaXplPSIxNSIgc3Ryb2tlPSJu b25lIiBmaWxsPSIjMDAwMDAwIj5bMSBNYXIgMjAyNSwpKTwvdGV4dD4KKyAgICA8dGV4dCB4PSIx MTAwIiB5PSIxOTQiIGZvbnQtZmFtaWx5PSJDb3VyaWVyIiBmb250LXNpemU9IjE1IiBzdHJva2U9 Im5vbmUiIGZpbGw9IiMwMDAwMDAiPjIwMjY8L3RleHQ+CisgICAgPHRleHQgeD0iMTI4OSIgeT0i MTk0IiBmb250LWZhbWlseT0iQ291cmllciIgZm9udC1zaXplPSIxNSIgc3Ryb2tlPSJub25lIiBm aWxsPSIjMDAwMDAwIj4uLi48L3RleHQ+CisgIDwvZz4KKzwvc3ZnPgpkaWZmIC0tZ2l0IGEvZG9j L3NyYy9zZ21sL2ltYWdlcy90ZW1wb3JhbC1kZWxldGUudHh0IGIvZG9jL3NyYy9zZ21sL2ltYWdl cy90ZW1wb3JhbC1kZWxldGUudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw MDAwLi42MTFkZjUyMTU2OQotLS0gL2Rldi9udWxsCisrKyBiL2RvYy9zcmMvc2dtbC9pbWFnZXMv dGVtcG9yYWwtZGVsZXRlLnR4dApAQCAtMCwwICsxLDEyIEBACisKKworKy0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0rICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKy0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCit8 IGNHUkUgICAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICB8IGNHUkUgICAgICAgICAgICAgICAgICAgICAgICAgIHwgY0dSRSAgICAgICAgICAg ICAgICAgICAgIHwKK3wgcHJvZHVjdHMgICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIHwgcHJvZHVjdHMgICAgICAgICAgICAgICAgICAgICAgfCBw cm9kdWN0cyAgICAgICAgICAgICAgICAgfAorfCAoNSwgNS4wMCwgICAgICAgICAgICAgICAgICB8 ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAoNSwgMTIuMDAsICAgICAgICAg ICAgICAgICAgICB8ICg1LCA4LjAwLCAgICAgICAgICAgICAgICB8Cit8ICAgWzEgSmFuIDIwMjAs MSBBdWcgMjAyMSkpIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgWzEg U2VwIDIwMjMsMSBNYXIgMjAyNSkpICAgIHwgICBbMSBNYXIgMjAyNSwpKSAgICAgICAgIHwKK3wg ICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAg ICAgICAgICAgfAorKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCisKK3wgICAgICAgICAgICAgICAgIHwgICAgICAgICAg ICAgICAgIHwgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAg ICAgIHwgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgIHwKKzIwMjAgICAgICAgICAg ICAgIDIwMjEgICAgICAgICAgICAgIDIwMjIgICAgICAgICAgICAgIDIwMjMgICAgICAgICAgICAg IDIwMjQgICAgICAgICAgICAgIDIwMjUgICAgICAgICAgICAgIDIwMjYgICAgICAgICAgICAgIC4u LgpkaWZmIC0tZ2l0IGEvZG9jL3NyYy9zZ21sL2ltYWdlcy90ZW1wb3JhbC11cGRhdGUuc3ZnIGIv ZG9jL3NyYy9zZ21sL2ltYWdlcy90ZW1wb3JhbC11cGRhdGUuc3ZnCm5ldyBmaWxlIG1vZGUgMTAw NjQ0CmluZGV4IDAwMDAwMDAwMDAwLi42YzdjNDNjOGQyMgotLS0gL2Rldi9udWxsCisrKyBiL2Rv Yy9zcmMvc2dtbC9pbWFnZXMvdGVtcG9yYWwtdXBkYXRlLnN2ZwpAQCAtMCwwICsxLDQ1IEBACis8 P3htbCB2ZXJzaW9uPSIxLjAiPz4KKzxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAv c3ZnIiB2aWV3Qm94PSIwIDAgMTMzMCAyMjQiIHdpZHRoPSIxMzMwIiBoZWlnaHQ9IjIyNCIgc2hh cGUtcmVuZGVyaW5nPSJnZW9tZXRyaWNQcmVjaXNpb24iIHZlcnNpb249IjEuMCI+CisgIDxkZWZz PgorICAgIDxmaWx0ZXIgaWQ9ImYyIiB4PSIwIiB5PSIwIiB3aWR0aD0iMjAwJSIgaGVpZ2h0PSIy MDAlIj4KKyAgICAgIDxmZU9mZnNldCByZXN1bHQ9Im9mZk91dCIgaW49IlNvdXJjZUdyYXBoaWMi IGR4PSI1IiBkeT0iNSIvPgorICAgICAgPGZlR2F1c3NpYW5CbHVyIHJlc3VsdD0iYmx1ck91dCIg aW49Im9mZk91dCIgc3RkRGV2aWF0aW9uPSIzIi8+CisgICAgICA8ZmVCbGVuZCBpbj0iU291cmNl R3JhcGhpYyIgaW4yPSJibHVyT3V0IiBtb2RlPSJub3JtYWwiLz4KKyAgICA8L2ZpbHRlcj4KKyAg PC9kZWZzPgorICA8ZyBzdHJva2Utd2lkdGg9IjEiIHN0cm9rZS1saW5lY2FwPSJzcXVhcmUiIHN0 cm9rZS1saW5lam9pbj0icm91bmQiPgorICAgIDxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMzMw IiBoZWlnaHQ9IjIyNCIgc3R5bGU9ImZpbGw6ICNmZmZmZmYiLz4KKyAgICA8cGF0aCBzdHJva2U9 IiMwMDAwMDAiIHN0cm9rZS13aWR0aD0iMS4wMDAwMDAiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIg c3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgZmlsbD0iIzk5ZGQ5OSIgZD0iTTM4NS4wIDYzLjAgTDM4 NS4wIDE0Ny4wIEwyNS4wIDE0Ny4wIEwyNS4wIDYzLjAgeiIvPgorICAgIDxwYXRoIHN0cm9rZT0i IzAwMDAwMCIgc3Ryb2tlLXdpZHRoPSIxLjAwMDAwMCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBz dHJva2UtbGluZWpvaW49InJvdW5kIiBmaWxsPSIjOTlkZDk5IiBkPSJNMTI4NS4wIDYzLjAgTDEy ODUuMCAxNDcuMCBMOTc1LjAgMTQ3LjAgTDk3NS4wIDYzLjAgeiIvPgorICAgIDxwYXRoIHN0cm9r ZT0iIzAwMDAwMCIgc3Ryb2tlLXdpZHRoPSIxLjAwMDAwMCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5k IiBzdHJva2UtbGluZWpvaW49InJvdW5kIiBmaWxsPSIjOTlkZDk5IiBkPSJNMzg1LjAgMTQ3LjAg TDY4NS4wIDE0Ny4wIEw2ODUuMCA2My4wIEwzODUuMCA2My4wIHoiLz4KKyAgICA8cGF0aCBzdHJv a2U9IiMwMDAwMDAiIHN0cm9rZS13aWR0aD0iMS4wMDAwMDAiIHN0cm9rZS1saW5lY2FwPSJyb3Vu ZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgZmlsbD0iIzk5ZGQ5OSIgZD0iTTY4NS4wIDYzLjAg TDY4NS4wIDE0Ny4wIEw5NzUuMCAxNDcuMCBMOTc1LjAgNjMuMCB6Ii8+CisgICAgPHBhdGggc3Ry b2tlPSIjMDAwMDAwIiBzdHJva2Utd2lkdGg9IjEuMDAwMDAwIiBzdHJva2UtbGluZWNhcD0icm91 bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIGZpbGw9Im5vbmUiIGQ9Ik0yMDUuMCAxNjguMCBM MjA1LjAgMTgxLjAgIi8+CisgICAgPHBhdGggc3Ryb2tlPSIjMDAwMDAwIiBzdHJva2Utd2lkdGg9 IjEuMDAwMDAwIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQi IGZpbGw9Im5vbmUiIGQ9Ik0yNS4wIDE2OC4wIEwyNS4wIDE4MS4wICIvPgorICAgIDxwYXRoIHN0 cm9rZT0iIzAwMDAwMCIgc3Ryb2tlLXdpZHRoPSIxLjAwMDAwMCIgc3Ryb2tlLWxpbmVjYXA9InJv dW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiBmaWxsPSJub25lIiBkPSJNMzg1LjAgMTY4LjAg TDM4NS4wIDE4MS4wICIvPgorICAgIDxwYXRoIHN0cm9rZT0iIzAwMDAwMCIgc3Ryb2tlLXdpZHRo PSIxLjAwMDAwMCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5k IiBmaWxsPSJub25lIiBkPSJNNTY1LjAgMTY4LjAgTDU2NS4wIDE4MS4wICIvPgorICAgIDxwYXRo IHN0cm9rZT0iIzAwMDAwMCIgc3Ryb2tlLXdpZHRoPSIxLjAwMDAwMCIgc3Ryb2tlLWxpbmVjYXA9 InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiBmaWxsPSJub25lIiBkPSJNNzQ1LjAgMTY4 LjAgTDc0NS4wIDE4MS4wICIvPgorICAgIDxwYXRoIHN0cm9rZT0iIzAwMDAwMCIgc3Ryb2tlLXdp ZHRoPSIxLjAwMDAwMCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJv dW5kIiBmaWxsPSJub25lIiBkPSJNOTI1LjAgMTY4LjAgTDkyNS4wIDE4MS4wICIvPgorICAgIDxw YXRoIHN0cm9rZT0iIzAwMDAwMCIgc3Ryb2tlLXdpZHRoPSIxLjAwMDAwMCIgc3Ryb2tlLWxpbmVj YXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiBmaWxsPSJub25lIiBkPSJNMTEwNS4w IDE2OC4wIEwxMTA1LjAgMTgxLjAgIi8+CisgICAgPHBhdGggc3Ryb2tlPSIjMDAwMDAwIiBzdHJv a2Utd2lkdGg9IjEuMDAwMDAwIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9p bj0icm91bmQiIGZpbGw9Im5vbmUiIGQ9Ik0xMjg1LjAgMTY4LjAgTDEyODUuMCAxODEuMCAiLz4K KyAgICA8dGV4dCB4PSI0NiIgeT0iOTYiIGZvbnQtZmFtaWx5PSJDb3VyaWVyIiBmb250LXNpemU9 IjE1IiBzdHJva2U9Im5vbmUiIGZpbGw9IiMwMDAwMDAiPnByb2R1Y3RzPC90ZXh0PgorICAgIDx0 ZXh0IHg9IjQwIiB5PSIxMTAiIGZvbnQtZmFtaWx5PSJDb3VyaWVyIiBmb250LXNpemU9IjE1IiBz dHJva2U9Im5vbmUiIGZpbGw9IiMwMDAwMDAiPig1LCA1LjAwLDwvdGV4dD4KKyAgICA8dGV4dCB4 PSI4NiIgeT0iMTI0IiBmb250LWZhbWlseT0iQ291cmllciIgZm9udC1zaXplPSIxNSIgc3Ryb2tl PSJub25lIiBmaWxsPSIjMDAwMDAwIj5bMSBKYW4gMjAyMCwxIEphbiAyMDIyKSk8L3RleHQ+Cisg ICAgPHRleHQgeD0iMjAiIHk9IjE5NCIgZm9udC1mYW1pbHk9IkNvdXJpZXIiIGZvbnQtc2l6ZT0i MTUiIHN0cm9rZT0ibm9uZSIgZmlsbD0iIzAwMDAwMCI+MjAyMDwvdGV4dD4KKyAgICA8dGV4dCB4 PSIyMDAiIHk9IjE5NCIgZm9udC1mYW1pbHk9IkNvdXJpZXIiIGZvbnQtc2l6ZT0iMTUiIHN0cm9r ZT0ibm9uZSIgZmlsbD0iIzAwMDAwMCI+MjAyMTwvdGV4dD4KKyAgICA8dGV4dCB4PSI0MDYiIHk9 Ijk2IiBmb250LWZhbWlseT0iQ291cmllciIgZm9udC1zaXplPSIxNSIgc3Ryb2tlPSJub25lIiBm aWxsPSIjMDAwMDAwIj5wcm9kdWN0czwvdGV4dD4KKyAgICA8dGV4dCB4PSI0MDAiIHk9IjExMCIg Zm9udC1mYW1pbHk9IkNvdXJpZXIiIGZvbnQtc2l6ZT0iMTUiIHN0cm9rZT0ibm9uZSIgZmlsbD0i IzAwMDAwMCI+KDUsIDguMDAsPC90ZXh0PgorICAgIDx0ZXh0IHg9IjQ0NSIgeT0iMTI0IiBmb250 LWZhbWlseT0iQ291cmllciIgZm9udC1zaXplPSIxNSIgc3Ryb2tlPSJub25lIiBmaWxsPSIjMDAw MDAwIj5bMSBKYW4gMjAyMiwxIFNlcCAyMDIzKSk8L3RleHQ+CisgICAgPHRleHQgeD0iMzgwIiB5 PSIxOTQiIGZvbnQtZmFtaWx5PSJDb3VyaWVyIiBmb250LXNpemU9IjE1IiBzdHJva2U9Im5vbmUi IGZpbGw9IiMwMDAwMDAiPjIwMjI8L3RleHQ+CisgICAgPHRleHQgeD0iNTYwIiB5PSIxOTQiIGZv bnQtZmFtaWx5PSJDb3VyaWVyIiBmb250LXNpemU9IjE1IiBzdHJva2U9Im5vbmUiIGZpbGw9IiMw MDAwMDAiPjIwMjM8L3RleHQ+CisgICAgPHRleHQgeD0iNzA2IiB5PSI5NiIgZm9udC1mYW1pbHk9 IkNvdXJpZXIiIGZvbnQtc2l6ZT0iMTUiIHN0cm9rZT0ibm9uZSIgZmlsbD0iIzAwMDAwMCI+cHJv ZHVjdHM8L3RleHQ+CisgICAgPHRleHQgeD0iNzAwIiB5PSIxMTAiIGZvbnQtZmFtaWx5PSJDb3Vy aWVyIiBmb250LXNpemU9IjE1IiBzdHJva2U9Im5vbmUiIGZpbGw9IiMwMDAwMDAiPig1LCAxMi4w MCw8L3RleHQ+CisgICAgPHRleHQgeD0iNzQzIiB5PSIxMjQiIGZvbnQtZmFtaWx5PSJDb3VyaWVy IiBmb250LXNpemU9IjE1IiBzdHJva2U9Im5vbmUiIGZpbGw9IiMwMDAwMDAiPlsxIFNlcCAyMDIz LDEgTWFyIDIwMjUpKTwvdGV4dD4KKyAgICA8dGV4dCB4PSI3NDAiIHk9IjE5NCIgZm9udC1mYW1p bHk9IkNvdXJpZXIiIGZvbnQtc2l6ZT0iMTUiIHN0cm9rZT0ibm9uZSIgZmlsbD0iIzAwMDAwMCI+ MjAyNDwvdGV4dD4KKyAgICA8dGV4dCB4PSI5MjAiIHk9IjE5NCIgZm9udC1mYW1pbHk9IkNvdXJp ZXIiIGZvbnQtc2l6ZT0iMTUiIHN0cm9rZT0ibm9uZSIgZmlsbD0iIzAwMDAwMCI+MjAyNTwvdGV4 dD4KKyAgICA8dGV4dCB4PSI5OTYiIHk9Ijk2IiBmb250LWZhbWlseT0iQ291cmllciIgZm9udC1z aXplPSIxNSIgc3Ryb2tlPSJub25lIiBmaWxsPSIjMDAwMDAwIj5wcm9kdWN0czwvdGV4dD4KKyAg ICA8dGV4dCB4PSI5OTAiIHk9IjExMCIgZm9udC1mYW1pbHk9IkNvdXJpZXIiIGZvbnQtc2l6ZT0i MTUiIHN0cm9rZT0ibm9uZSIgZmlsbD0iIzAwMDAwMCI+KDUsIDguMDAsPC90ZXh0PgorICAgIDx0 ZXh0IHg9IjEwMjYiIHk9IjEyNCIgZm9udC1mYW1pbHk9IkNvdXJpZXIiIGZvbnQtc2l6ZT0iMTUi IHN0cm9rZT0ibm9uZSIgZmlsbD0iIzAwMDAwMCI+WzEgTWFyIDIwMjUsKSk8L3RleHQ+CisgICAg PHRleHQgeD0iMTEwMCIgeT0iMTk0IiBmb250LWZhbWlseT0iQ291cmllciIgZm9udC1zaXplPSIx NSIgc3Ryb2tlPSJub25lIiBmaWxsPSIjMDAwMDAwIj4yMDI2PC90ZXh0PgorICAgIDx0ZXh0IHg9 IjEyODkiIHk9IjE5NCIgZm9udC1mYW1pbHk9IkNvdXJpZXIiIGZvbnQtc2l6ZT0iMTUiIHN0cm9r ZT0ibm9uZSIgZmlsbD0iIzAwMDAwMCI+Li4uPC90ZXh0PgorICA8L2c+Cis8L3N2Zz4KZGlmZiAt LWdpdCBhL2RvYy9zcmMvc2dtbC9pbWFnZXMvdGVtcG9yYWwtdXBkYXRlLnR4dCBiL2RvYy9zcmMv c2dtbC9pbWFnZXMvdGVtcG9yYWwtdXBkYXRlLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl eCAwMDAwMDAwMDAwMC4uN2U4NjJkODk0MzcKLS0tIC9kZXYvbnVsbAorKysgYi9kb2Mvc3JjL3Nn bWwvaW1hZ2VzL3RlbXBvcmFsLXVwZGF0ZS50eHQKQEAgLTAsMCArMSwxMiBAQAorCisKKystLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLSsKK3wgY0dSRSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgY0dSRSAgICAg ICAgICAgICAgICAgICAgICAgIHwgY0dSRSAgICAgICAgICAgICAgICAgICAgICAgfCBjR1JFICAg ICAgICAgICAgICAgICAgICAgICAgIHwKK3wgcHJvZHVjdHMgICAgICAgICAgICAgICAgICAgICAg ICAgIHwgcHJvZHVjdHMgICAgICAgICAgICAgICAgICAgIHwgcHJvZHVjdHMgICAgICAgICAgICAg ICAgICAgfCBwcm9kdWN0cyAgICAgICAgICAgICAgICAgICAgIHwKK3wgKDUsIDUuMDAsICAgICAg ICAgICAgICAgICAgICAgICAgIHwgKDUsIDguMDAsICAgICAgICAgICAgICAgICAgIHwgKDUsIDEy LjAwLCAgICAgICAgICAgICAgICAgfCAoNSwgOC4wMCwgICAgICAgICAgICAgICAgICAgIHwKK3wg ICBbMSBKYW4gMjAyMCwxIEphbiAyMDIyKSkgICAgICAgIHwgICBbMSBKYW4gMjAyMiwxIFNlcCAy MDIzKSkgIHwgICBbMSBTZXAgMjAyMywxIE1hciAyMDI1KSkgfCAgIFsxIE1hciAyMDI1LCkpICAg ICAgICAgICAgIHwKK3wgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIHwKKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKKworfCAgICAgICAgICAg ICAgICAgfCAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAg ICAgfCAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAg fAorMjAyMCAgICAgICAgICAgICAgMjAyMSAgICAgICAgICAgICAgMjAyMiAgICAgICAgICAgICAg MjAyMyAgICAgICAgICAgICAgMjAyNCAgICAgICAgICAgICAgMjAyNSAgICAgICAgICAgICAgMjAy NiAgICAgICAgICAgICAgLi4uCi0tIAoyLjQ3LjMKCg== --000000000000160b4c0644846b0a Content-Type: text/x-patch; charset="US-ASCII"; name="v62-0004-Add-tg_temporal-to-TriggerData.patch" Content-Disposition: attachment; filename="v62-0004-Add-tg_temporal-to-TriggerData.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_migeesgb3 RnJvbSBiNmRmZWEwZDVlOGE3NzdkMmQ1NTc5MzkyZWFmODg3ZTE1MWIyZTAzIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiAiUGF1bCBBLiBKdW5nd2lydGgiIDxwakBpbGx1bWluYXRlZGNv bXB1dGluZy5jb20+CkRhdGU6IEZyaSwgMTMgSnVuIDIwMjUgMTU6NDA6MDYgLTA3MDAKU3ViamVj dDogW1BBVENIIHY2MiA0LzhdIEFkZCB0Z190ZW1wb3JhbCB0byBUcmlnZ2VyRGF0YQoKVGhpcyBu ZWVkcyB0byBiZSBwYXNzZWQgdG8gb3VyIFJJIHRyaWdnZXJzIHRvIGltcGxlbWVudCB0ZW1wb3Jh bApDQVNDQURFL1NFVCBOVUxML1NFVCBERUZBVUxUIHdoZW4gdGhlIHVzZXIgY29tbWFuZCBpcyBh biBVUERBVEUvREVMRVRFCkZPUiBQT1JUSU9OIE9GLiBUaGUgdHJpZ2dlcnMgd2lsbCB1c2UgdGhl IEZPUiBQT1JUSU9OIE9GIGJvdW5kcyB0byBhdm9pZApvdmVyLWFwcGx5aW5nIHRoZSBjaGFuZ2Ug dG8gcmVmZXJlbmNpbmcgcmVjb3Jkcy4KClByb2JhYmx5IGl0IGlzIHVzZWZ1bCBmb3IgdXNlci1k ZWZpbmVkIHRyaWdnZXJzIGFzIHdlbGwsIGZvciBleGFtcGxlCmF1ZGl0aW5nIG9yIHRyaWdnZXIt YmFzZWQgcmVwbGljYXRpb24uCgpBdXRob3I6IFBhdWwgQS4gSnVuZ3dpcnRoIDxwakBpbGx1bWlu YXRlZGNvbXB1dGluZy5jb20+Ci0tLQogZG9jL3NyYy9zZ21sL3RyaWdnZXIuc2dtbCAgICAgIHwg NTYgKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLQogc3JjL2JhY2tlbmQvY29tbWFu ZHMvdHJpZ2dlci5jIHwgNTEgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKwogc3JjL2lu Y2x1ZGUvY29tbWFuZHMvdHJpZ2dlci5oIHwgIDEgKwogMyBmaWxlcyBjaGFuZ2VkLCA5NyBpbnNl cnRpb25zKCspLCAxMSBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kb2Mvc3JjL3NnbWwvdHJp Z2dlci5zZ21sIGIvZG9jL3NyYy9zZ21sL3RyaWdnZXIuc2dtbAppbmRleCAyYjY4YzM4ODJlYy4u Y2ZjMDg0YjM0YzYgMTAwNjQ0Ci0tLSBhL2RvYy9zcmMvc2dtbC90cmlnZ2VyLnNnbWwKKysrIGIv ZG9jL3NyYy9zZ21sL3RyaWdnZXIuc2dtbApAQCAtNTYzLDE3ICs1NjMsMTggQEAgQ0FMTEVEX0FT X1RSSUdHRVIoZmNpbmZvKQogPHByb2dyYW1saXN0aW5nPgogdHlwZWRlZiBzdHJ1Y3QgVHJpZ2dl ckRhdGEKIHsKLSAgICBOb2RlVGFnICAgICAgICAgIHR5cGU7Ci0gICAgVHJpZ2dlckV2ZW50ICAg ICB0Z19ldmVudDsKLSAgICBSZWxhdGlvbiAgICAgICAgIHRnX3JlbGF0aW9uOwotICAgIEhlYXBU dXBsZSAgICAgICAgdGdfdHJpZ3R1cGxlOwotICAgIEhlYXBUdXBsZSAgICAgICAgdGdfbmV3dHVw bGU7Ci0gICAgVHJpZ2dlciAgICAgICAgICp0Z190cmlnZ2VyOwotICAgIFR1cGxlVGFibGVTbG90 ICAqdGdfdHJpZ3Nsb3Q7Ci0gICAgVHVwbGVUYWJsZVNsb3QgICp0Z19uZXdzbG90OwotICAgIFR1 cGxlc3RvcmVzdGF0ZSAqdGdfb2xkdGFibGU7Ci0gICAgVHVwbGVzdG9yZXN0YXRlICp0Z19uZXd0 YWJsZTsKLSAgICBjb25zdCBCaXRtYXBzZXQgKnRnX3VwZGF0ZWRjb2xzOworICAgIE5vZGVUYWcg ICAgICAgICAgICB0eXBlOworICAgIFRyaWdnZXJFdmVudCAgICAgICB0Z19ldmVudDsKKyAgICBS ZWxhdGlvbiAgICAgICAgICAgdGdfcmVsYXRpb247CisgICAgSGVhcFR1cGxlICAgICAgICAgIHRn X3RyaWd0dXBsZTsKKyAgICBIZWFwVHVwbGUgICAgICAgICAgdGdfbmV3dHVwbGU7CisgICAgVHJp Z2dlciAgICAgICAgICAgKnRnX3RyaWdnZXI7CisgICAgVHVwbGVUYWJsZVNsb3QgICAgKnRnX3Ry aWdzbG90OworICAgIFR1cGxlVGFibGVTbG90ICAgICp0Z19uZXdzbG90OworICAgIFR1cGxlc3Rv cmVzdGF0ZSAgICp0Z19vbGR0YWJsZTsKKyAgICBUdXBsZXN0b3Jlc3RhdGUgICAqdGdfbmV3dGFi bGU7CisgICAgY29uc3QgQml0bWFwc2V0ICAgKnRnX3VwZGF0ZWRjb2xzOworICAgIEZvclBvcnRp b25PZlN0YXRlICp0Z190ZW1wb3JhbDsKIH0gVHJpZ2dlckRhdGE7CiA8L3Byb2dyYW1saXN0aW5n PgogCkBAIC04NDEsNiArODQyLDM5IEBAIHR5cGVkZWYgc3RydWN0IFRyaWdnZXIKICAgICAgICA8 L3BhcmE+CiAgICAgICA8L2xpc3RpdGVtPgogICAgICA8L3Zhcmxpc3RlbnRyeT4KKworICAgICA8 dmFybGlzdGVudHJ5PgorICAgICAgPHRlcm0+PHN0cnVjdGZpZWxkPnRnX3RlbXBvcmFsPC9zdHJ1 Y3RmaWVsZD48L3Rlcm0+CisgICAgICA8bGlzdGl0ZW0+CisgICAgICAgPHBhcmE+CisgICAgICAg IFNldCBmb3IgPGxpdGVyYWw+VVBEQVRFPC9saXRlcmFsPiBhbmQgPGxpdGVyYWw+REVMRVRFPC9s aXRlcmFsPiBxdWVyaWVzCisgICAgICAgIHRoYXQgdXNlIDxsaXRlcmFsPkZPUiBQT1JUSU9OIE9G PC9saXRlcmFsPiwgb3RoZXJ3aXNlIDxzeW1ib2w+TlVMTDwvc3ltYm9sPi4KKyAgICAgICAgQ29u dGFpbnMgYSBwb2ludGVyIHRvIGEgc3RydWN0dXJlIG9mIHR5cGUKKyAgICAgICAgPHN0cnVjdG5h bWU+Rm9yUG9ydGlvbk9mU3RhdGU8L3N0cnVjdG5hbWU+LCBkZWZpbmVkIGluCisgICAgICAgIDxm aWxlbmFtZT5ub2Rlcy9leGVjbm9kZXMuaDwvZmlsZW5hbWU+OgorCis8cHJvZ3JhbWxpc3Rpbmc+ Cit0eXBlZGVmIHN0cnVjdCBGb3JQb3J0aW9uT2ZTdGF0ZQoreworICAgIE5vZGVUYWcgICAgIHR5 cGU7CisKKyAgICBjaGFyICAgICAgICpmcF9yYW5nZU5hbWU7ICAgLyogdGhlIGNvbHVtbiBuYW1l ZCBpbiBGT1IgUE9SVElPTiBPRiAqLworICAgIE9pZCAgICAgICAgIGZwX3JhbmdlVHlwZTsgICAv KiB0aGUgdHlwZSBvZiB0aGUgRk9SIFBPUlRJT04gT0YgZXhwcmVzc2lvbiAqLworICAgIGludCAg ICAgICAgIGZwX3JhbmdlQXR0bm87ICAvKiB0aGUgYXR0bm8gb2YgdGhlIHJhbmdlIGNvbHVtbiAq LworICAgIERhdHVtICAgICAgIGZwX3RhcmdldFJhbmdlOyAvKiB0aGUgcmFuZ2UvbXVsdGlyYW5n ZSBmcm9tIEZPUiBQT1JUSU9OIE9GICovCisgICAgVHlwZUNhY2hlRW50cnkgKmZwX2xlZnRvdmVy c3R5cGNhY2hlOyAgIC8qIHR5cGUgY2FjaGUgZW50cnkgb2YgdGhlIHJhbmdlICovCit9IEZvclBv cnRpb25PZlN0YXRlOworPC9wcm9ncmFtbGlzdGluZz4KKworICAgICAgIHdoZXJlIDxzdHJ1Y3Rm aWVsZD5mcF9yYW5nZU5hbWU8L3N0cnVjdGZpZWxkPiBpcyB0aGUgcmFuZ2UKKyAgICAgICBjb2x1 bW4gbmFtZWQgaW4gdGhlIDxsaXRlcmFsPkZPUiBQT1JUSU9OIE9GPC9saXRlcmFsPiBjbGF1c2Us CisgICAgICAgPHN0cnVjdGZpZWxkPmZwX3JhbmdlVHlwZTwvc3RydWN0ZmllbGQ+IGlzIGl0cyBy YW5nZSB0eXBlLAorICAgICAgIDxzdHJ1Y3RmaWVsZD5mcF9yYW5nZUF0dG5vPC9zdHJ1Y3RmaWVs ZD4gaXMgaXRzIGF0dHJpYnV0ZSBudW1iZXIsCisgICAgICAgYW5kIDxzdHJ1Y3RmaWVsZD5mcF90 YXJnZXRSYW5nZTwvc3RydWN0ZmllbGQ+IGlzIGEgcmFuZ2V0eXBlIHZhbHVlIGNyZWF0ZWQKKyAg ICAgICBieSBldmFsdWF0aW5nIHRoZSA8bGl0ZXJhbD5GT1IgUE9SVElPTiBPRjwvbGl0ZXJhbD4g Ym91bmRzLgorICAgICAgIDwvcGFyYT4KKyAgICAgIDwvbGlzdGl0ZW0+CisgICAgIDwvdmFybGlz dGVudHJ5PgogICAgIDwvdmFyaWFibGVsaXN0PgogICAgPC9wYXJhPgogCmRpZmYgLS1naXQgYS9z cmMvYmFja2VuZC9jb21tYW5kcy90cmlnZ2VyLmMgYi9zcmMvYmFja2VuZC9jb21tYW5kcy90cmln Z2VyLmMKaW5kZXggNTc5YWM4ZDc2YWUuLjQzYjlkODJlNjNhIDEwMDY0NAotLS0gYS9zcmMvYmFj a2VuZC9jb21tYW5kcy90cmlnZ2VyLmMKKysrIGIvc3JjL2JhY2tlbmQvY29tbWFuZHMvdHJpZ2dl ci5jCkBAIC00NywxMiArNDcsMTQgQEAKICNpbmNsdWRlICJzdG9yYWdlL2xtZ3IuaCIKICNpbmNs dWRlICJ1dGlscy9hY2wuaCIKICNpbmNsdWRlICJ1dGlscy9idWlsdGlucy5oIgorI2luY2x1ZGUg InV0aWxzL2RhdHVtLmgiCiAjaW5jbHVkZSAidXRpbHMvZm1ncm9pZHMuaCIKICNpbmNsdWRlICJ1 dGlscy9ndWNfaG9va3MuaCIKICNpbmNsdWRlICJ1dGlscy9pbnZhbC5oIgogI2luY2x1ZGUgInV0 aWxzL2xzeXNjYWNoZS5oIgogI2luY2x1ZGUgInV0aWxzL21lbXV0aWxzLmgiCiAjaW5jbHVkZSAi dXRpbHMvcGxhbmNhY2hlLmgiCisjaW5jbHVkZSAidXRpbHMvcmFuZ2V0eXBlcy5oIgogI2luY2x1 ZGUgInV0aWxzL3JlbC5oIgogI2luY2x1ZGUgInV0aWxzL3NuYXBtZ3IuaCIKICNpbmNsdWRlICJ1 dGlscy9zeXNjYWNoZS5oIgpAQCAtMjY0OSw2ICsyNjUxLDcgQEAgRXhlY0JTRGVsZXRlVHJpZ2dl cnMoRVN0YXRlICplc3RhdGUsIFJlc3VsdFJlbEluZm8gKnJlbGluZm8pCiAJTG9jVHJpZ2dlckRh dGEudGdfZXZlbnQgPSBUUklHR0VSX0VWRU5UX0RFTEVURSB8CiAJCVRSSUdHRVJfRVZFTlRfQkVG T1JFOwogCUxvY1RyaWdnZXJEYXRhLnRnX3JlbGF0aW9uID0gcmVsaW5mby0+cmlfUmVsYXRpb25E ZXNjOworCUxvY1RyaWdnZXJEYXRhLnRnX3RlbXBvcmFsID0gcmVsaW5mby0+cmlfZm9yUG9ydGlv bk9mOwogCWZvciAoaSA9IDA7IGkgPCB0cmlnZGVzYy0+bnVtdHJpZ2dlcnM7IGkrKykKIAl7CiAJ CVRyaWdnZXIgICAgKnRyaWdnZXIgPSAmdHJpZ2Rlc2MtPnRyaWdnZXJzW2ldOwpAQCAtMjc1Nyw2 ICsyNzYwLDcgQEAgRXhlY0JSRGVsZXRlVHJpZ2dlcnMoRVN0YXRlICplc3RhdGUsIEVQUVN0YXRl ICplcHFzdGF0ZSwKIAkJVFJJR0dFUl9FVkVOVF9ST1cgfAogCQlUUklHR0VSX0VWRU5UX0JFRk9S RTsKIAlMb2NUcmlnZ2VyRGF0YS50Z19yZWxhdGlvbiA9IHJlbGluZm8tPnJpX1JlbGF0aW9uRGVz YzsKKwlMb2NUcmlnZ2VyRGF0YS50Z190ZW1wb3JhbCA9IHJlbGluZm8tPnJpX2ZvclBvcnRpb25P ZjsKIAlmb3IgKGkgPSAwOyBpIDwgdHJpZ2Rlc2MtPm51bXRyaWdnZXJzOyBpKyspCiAJewogCQlI ZWFwVHVwbGUJbmV3dHVwbGU7CkBAIC0yODU4LDYgKzI4NjIsNyBAQCBFeGVjSVJEZWxldGVUcmln Z2VycyhFU3RhdGUgKmVzdGF0ZSwgUmVzdWx0UmVsSW5mbyAqcmVsaW5mbywKIAkJVFJJR0dFUl9F VkVOVF9ST1cgfAogCQlUUklHR0VSX0VWRU5UX0lOU1RFQUQ7CiAJTG9jVHJpZ2dlckRhdGEudGdf cmVsYXRpb24gPSByZWxpbmZvLT5yaV9SZWxhdGlvbkRlc2M7CisJTG9jVHJpZ2dlckRhdGEudGdf dGVtcG9yYWwgPSByZWxpbmZvLT5yaV9mb3JQb3J0aW9uT2Y7CiAKIAlFeGVjRm9yY2VTdG9yZUhl YXBUdXBsZSh0cmlndHVwbGUsIHNsb3QsIGZhbHNlKTsKIApAQCAtMjkyMSw2ICsyOTI2LDcgQEAg RXhlY0JTVXBkYXRlVHJpZ2dlcnMoRVN0YXRlICplc3RhdGUsIFJlc3VsdFJlbEluZm8gKnJlbGlu Zm8pCiAJCVRSSUdHRVJfRVZFTlRfQkVGT1JFOwogCUxvY1RyaWdnZXJEYXRhLnRnX3JlbGF0aW9u ID0gcmVsaW5mby0+cmlfUmVsYXRpb25EZXNjOwogCUxvY1RyaWdnZXJEYXRhLnRnX3VwZGF0ZWRj b2xzID0gdXBkYXRlZENvbHM7CisJTG9jVHJpZ2dlckRhdGEudGdfdGVtcG9yYWwgPSByZWxpbmZv LT5yaV9mb3JQb3J0aW9uT2Y7CiAJZm9yIChpID0gMDsgaSA8IHRyaWdkZXNjLT5udW10cmlnZ2Vy czsgaSsrKQogCXsKIAkJVHJpZ2dlciAgICAqdHJpZ2dlciA9ICZ0cmlnZGVzYy0+dHJpZ2dlcnNb aV07CkBAIC0zMDY0LDYgKzMwNzAsNyBAQCBFeGVjQlJVcGRhdGVUcmlnZ2VycyhFU3RhdGUgKmVz dGF0ZSwgRVBRU3RhdGUgKmVwcXN0YXRlLAogCQlUUklHR0VSX0VWRU5UX1JPVyB8CiAJCVRSSUdH RVJfRVZFTlRfQkVGT1JFOwogCUxvY1RyaWdnZXJEYXRhLnRnX3JlbGF0aW9uID0gcmVsaW5mby0+ cmlfUmVsYXRpb25EZXNjOworCUxvY1RyaWdnZXJEYXRhLnRnX3RlbXBvcmFsID0gcmVsaW5mby0+ cmlfZm9yUG9ydGlvbk9mOwogCXVwZGF0ZWRDb2xzID0gRXhlY0dldEFsbFVwZGF0ZWRDb2xzKHJl bGluZm8sIGVzdGF0ZSk7CiAJTG9jVHJpZ2dlckRhdGEudGdfdXBkYXRlZGNvbHMgPSB1cGRhdGVk Q29sczsKIAlmb3IgKGkgPSAwOyBpIDwgdHJpZ2Rlc2MtPm51bXRyaWdnZXJzOyBpKyspCkBAIC0z MjI2LDYgKzMyMzMsNyBAQCBFeGVjSVJVcGRhdGVUcmlnZ2VycyhFU3RhdGUgKmVzdGF0ZSwgUmVz dWx0UmVsSW5mbyAqcmVsaW5mbywKIAkJVFJJR0dFUl9FVkVOVF9ST1cgfAogCQlUUklHR0VSX0VW RU5UX0lOU1RFQUQ7CiAJTG9jVHJpZ2dlckRhdGEudGdfcmVsYXRpb24gPSByZWxpbmZvLT5yaV9S ZWxhdGlvbkRlc2M7CisJTG9jVHJpZ2dlckRhdGEudGdfdGVtcG9yYWwgPSByZWxpbmZvLT5yaV9m b3JQb3J0aW9uT2Y7CiAKIAlFeGVjRm9yY2VTdG9yZUhlYXBUdXBsZSh0cmlndHVwbGUsIG9sZHNs b3QsIGZhbHNlKTsKIApAQCAtMzY5Nyw2ICszNzA1LDcgQEAgdHlwZWRlZiBzdHJ1Y3QgQWZ0ZXJU cmlnZ2VyU2hhcmVkRGF0YQogCU9pZAkJCWF0c19yZWxpZDsJCS8qIHRoZSByZWxhdGlvbiBpdCdz IG9uICovCiAJT2lkCQkJYXRzX3JvbGlkOwkJLyogcm9sZSB0byBleGVjdXRlIHRoZSB0cmlnZ2Vy ICovCiAJQ29tbWFuZElkCWF0c19maXJpbmdfaWQ7CS8qIElEIGZvciBmaXJpbmcgY3ljbGUgKi8K KwlGb3JQb3J0aW9uT2ZTdGF0ZSAqZm9yX3BvcnRpb25fb2Y7CS8qIHRoZSBGT1IgUE9SVElPTiBP RiBjbGF1c2UgKi8KIAlzdHJ1Y3QgQWZ0ZXJUcmlnZ2Vyc1RhYmxlRGF0YSAqYXRzX3RhYmxlOwkv KiB0cmFuc2l0aW9uIHRhYmxlIGFjY2VzcyAqLwogCUJpdG1hcHNldCAgKmF0c19tb2RpZmllZGNv bHM7CS8qIG1vZGlmaWVkIGNvbHVtbnMgKi8KIH0gQWZ0ZXJUcmlnZ2VyU2hhcmVkRGF0YTsKQEAg LTM5NzAsNiArMzk3OSw3IEBAIHN0YXRpYyBTZXRDb25zdHJhaW50U3RhdGUgU2V0Q29uc3RyYWlu dFN0YXRlQ3JlYXRlKGludCBudW1hbGxvYyk7CiBzdGF0aWMgU2V0Q29uc3RyYWludFN0YXRlIFNl dENvbnN0cmFpbnRTdGF0ZUNvcHkoU2V0Q29uc3RyYWludFN0YXRlIG9yaWdzdGF0ZSk7CiBzdGF0 aWMgU2V0Q29uc3RyYWludFN0YXRlIFNldENvbnN0cmFpbnRTdGF0ZUFkZEl0ZW0oU2V0Q29uc3Ry YWludFN0YXRlIHN0YXRlLAogCQkJCQkJCQkJCQkJCU9pZCB0Z29pZCwgYm9vbCB0Z2lzZGVmZXJy ZWQpOworc3RhdGljIEZvclBvcnRpb25PZlN0YXRlICpDb3B5Rm9yUG9ydGlvbk9mU3RhdGUoRm9y UG9ydGlvbk9mU3RhdGUgKnNyYyk7CiBzdGF0aWMgdm9pZCBjYW5jZWxfcHJpb3Jfc3RtdF90cmln Z2VycyhPaWQgcmVsaWQsIENtZFR5cGUgY21kVHlwZSwgaW50IHRnZXZlbnQpOwogCiAKQEAgLTQx NzcsNiArNDE4Nyw3IEBAIGFmdGVyVHJpZ2dlckFkZEV2ZW50KEFmdGVyVHJpZ2dlckV2ZW50TGlz dCAqZXZlbnRzLAogCQkJbmV3c2hhcmVkLT5hdHNfZXZlbnQgPT0gZXZ0c2hhcmVkLT5hdHNfZXZl bnQgJiYKIAkJCW5ld3NoYXJlZC0+YXRzX2ZpcmluZ19pZCA9PSAwICYmCiAJCQluZXdzaGFyZWQt PmF0c190YWJsZSA9PSBldnRzaGFyZWQtPmF0c190YWJsZSAmJgorCQkJbmV3c2hhcmVkLT5mb3Jf cG9ydGlvbl9vZiA9PSBldnRzaGFyZWQtPmZvcl9wb3J0aW9uX29mICYmCiAJCQluZXdzaGFyZWQt PmF0c19yZWxpZCA9PSBldnRzaGFyZWQtPmF0c19yZWxpZCAmJgogCQkJbmV3c2hhcmVkLT5hdHNf cm9saWQgPT0gZXZ0c2hhcmVkLT5hdHNfcm9saWQgJiYKIAkJCWJtc19lcXVhbChuZXdzaGFyZWQt PmF0c19tb2RpZmllZGNvbHMsCkBAIC00NTUzLDYgKzQ1NjQsOSBAQCBBZnRlclRyaWdnZXJFeGVj dXRlKEVTdGF0ZSAqZXN0YXRlLAogCUxvY1RyaWdnZXJEYXRhLnRnX3JlbGF0aW9uID0gcmVsOwog CWlmIChUUklHR0VSX0ZPUl9VUERBVEUoTG9jVHJpZ2dlckRhdGEudGdfdHJpZ2dlci0+dGd0eXBl KSkKIAkJTG9jVHJpZ2dlckRhdGEudGdfdXBkYXRlZGNvbHMgPSBldnRzaGFyZWQtPmF0c19tb2Rp ZmllZGNvbHM7CisJaWYgKFRSSUdHRVJfRk9SX1VQREFURShMb2NUcmlnZ2VyRGF0YS50Z190cmln Z2VyLT50Z3R5cGUpIHx8CisJCVRSSUdHRVJfRk9SX0RFTEVURShMb2NUcmlnZ2VyRGF0YS50Z190 cmlnZ2VyLT50Z3R5cGUpKQorCQlMb2NUcmlnZ2VyRGF0YS50Z190ZW1wb3JhbCA9IGV2dHNoYXJl ZC0+Zm9yX3BvcnRpb25fb2Y7CiAKIAlNZW1vcnlDb250ZXh0UmVzZXQocGVyX3R1cGxlX2NvbnRl eHQpOwogCkBAIC02MTAyLDYgKzYxMTYsNDIgQEAgQWZ0ZXJUcmlnZ2VyUGVuZGluZ09uUmVsKE9p ZCByZWxpZCkKIAlyZXR1cm4gZmFsc2U7CiB9CiAKKy8qIC0tLS0tLS0tLS0KKyAqIEZvclBvcnRp b25PZlN0YXRlKCkKKyAqCisgKiBDb3B5cyBhIEZvclBvcnRpb25PZlN0YXRlIGludG8gdGhlIGN1 cnJlbnQgbWVtb3J5IGNvbnRleHQuCisgKi8KK3N0YXRpYyBGb3JQb3J0aW9uT2ZTdGF0ZSAqCitD b3B5Rm9yUG9ydGlvbk9mU3RhdGUoRm9yUG9ydGlvbk9mU3RhdGUgKnNyYykKK3sKKwlGb3JQb3J0 aW9uT2ZTdGF0ZSAqZHN0ID0gTlVMTDsKKworCWlmIChzcmMpCisJeworCQlNZW1vcnlDb250ZXh0 IG9sZGN0eDsKKwkJUmFuZ2VUeXBlICAqcjsKKwkJVHlwZUNhY2hlRW50cnkgKnR5cGNhY2hlOwor CisJCS8qCisJCSAqIE5lZWQgdG8gbGlmdCB0aGUgRk9SIFBPUlRJT04gT0YgZGV0YWlscyBpbnRv IGEgaGlnaGVyIG1lbW9yeQorCQkgKiBjb250ZXh0IGJlY2F1c2UgY2FzY2FkaW5nIGZvcmVpZ24g a2V5IHVwZGF0ZS9kZWxldGVzIGNhbiBjYXVzZQorCQkgKiB0cmlnZ2VycyB0byBmaXJlIHRyaWdn ZXJzLCBhbmQgdGhlIEFmdGVyVHJpZ2dlckV2ZW50cyB3aWxsIG91dGxpdmUKKwkJICogdGhlIEZQ TyBkZXRhaWxzIG9mIHRoZSBvcmlnaW5hbCBxdWVyeS4KKwkJICovCisJCW9sZGN0eCA9IE1lbW9y eUNvbnRleHRTd2l0Y2hUbyhUb3BUcmFuc2FjdGlvbkNvbnRleHQpOworCQlkc3QgPSBtYWtlTm9k ZShGb3JQb3J0aW9uT2ZTdGF0ZSk7CisJCWRzdC0+ZnBfcmFuZ2VOYW1lID0gcHN0cmR1cChzcmMt PmZwX3JhbmdlTmFtZSk7CisJCWRzdC0+ZnBfcmFuZ2VUeXBlID0gc3JjLT5mcF9yYW5nZVR5cGU7 CisJCWRzdC0+ZnBfcmFuZ2VBdHRubyA9IHNyYy0+ZnBfcmFuZ2VBdHRubzsKKworCQlyID0gRGF0 dW1HZXRSYW5nZVR5cGVQKHNyYy0+ZnBfdGFyZ2V0UmFuZ2UpOworCQl0eXBjYWNoZSA9IGxvb2t1 cF90eXBlX2NhY2hlKFJhbmdlVHlwZUdldE9pZChyKSwgVFlQRUNBQ0hFX1JBTkdFX0lORk8pOwor CQlkc3QtPmZwX3RhcmdldFJhbmdlID0gZGF0dW1Db3B5KHNyYy0+ZnBfdGFyZ2V0UmFuZ2UsIHR5 cGNhY2hlLT50eXBieXZhbCwgdHlwY2FjaGUtPnR5cGxlbik7CisJCU1lbW9yeUNvbnRleHRTd2l0 Y2hUbyhvbGRjdHgpOworCX0KKwlyZXR1cm4gZHN0OworfQorCiAvKiAtLS0tLS0tLS0tCiAgKiBB ZnRlclRyaWdnZXJTYXZlRXZlbnQoKQogICoKQEAgLTY1MTgsNiArNjU2OCw3IEBAIEFmdGVyVHJp Z2dlclNhdmVFdmVudChFU3RhdGUgKmVzdGF0ZSwgUmVzdWx0UmVsSW5mbyAqcmVsaW5mbywKIAkJ ZWxzZQogCQkJbmV3X3NoYXJlZC5hdHNfdGFibGUgPSBOVUxMOwogCQluZXdfc2hhcmVkLmF0c19t b2RpZmllZGNvbHMgPSBtb2RpZmllZENvbHM7CisJCW5ld19zaGFyZWQuZm9yX3BvcnRpb25fb2Yg PSBDb3B5Rm9yUG9ydGlvbk9mU3RhdGUocmVsaW5mby0+cmlfZm9yUG9ydGlvbk9mKTsKIAogCQlh ZnRlclRyaWdnZXJBZGRFdmVudCgmYWZ0ZXJUcmlnZ2Vycy5xdWVyeV9zdGFja1thZnRlclRyaWdn ZXJzLnF1ZXJ5X2RlcHRoXS5ldmVudHMsCiAJCQkJCQkJICZuZXdfZXZlbnQsICZuZXdfc2hhcmVk KTsKZGlmZiAtLWdpdCBhL3NyYy9pbmNsdWRlL2NvbW1hbmRzL3RyaWdnZXIuaCBiL3NyYy9pbmNs dWRlL2NvbW1hbmRzL3RyaWdnZXIuaAppbmRleCBjZmQ3ZGFhMjBlZC4uYzY3ZTEzMjQzOTEgMTAw NjQ0Ci0tLSBhL3NyYy9pbmNsdWRlL2NvbW1hbmRzL3RyaWdnZXIuaAorKysgYi9zcmMvaW5jbHVk ZS9jb21tYW5kcy90cmlnZ2VyLmgKQEAgLTQxLDYgKzQxLDcgQEAgdHlwZWRlZiBzdHJ1Y3QgVHJp Z2dlckRhdGEKIAlUdXBsZXN0b3Jlc3RhdGUgKnRnX29sZHRhYmxlOwogCVR1cGxlc3RvcmVzdGF0 ZSAqdGdfbmV3dGFibGU7CiAJY29uc3QgQml0bWFwc2V0ICp0Z191cGRhdGVkY29sczsKKwlGb3JQ b3J0aW9uT2ZTdGF0ZSAqdGdfdGVtcG9yYWw7CiB9IFRyaWdnZXJEYXRhOwogCiAvKgotLSAKMi40 Ny4zCgo= --000000000000160b4c0644846b0a Content-Type: text/x-patch; charset="US-ASCII"; name="v62-0007-Expose-FOR-PORTION-OF-to-plpgsql-triggers.patch" Content-Disposition: attachment; filename="v62-0007-Expose-FOR-PORTION-OF-to-plpgsql-triggers.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_migeesgk6 RnJvbSAwMmU5M2Y3ODg4ZTIxYjc0MGM4ZDExZTEzMDA4ZmQyNjM5NjRjMGFhIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiAiUGF1bCBBLiBKdW5nd2lydGgiIDxwakBpbGx1bWluYXRlZGNv bXB1dGluZy5jb20+CkRhdGU6IFR1ZSwgMjkgT2N0IDIwMjQgMTg6NTQ6MzcgLTA3MDAKU3ViamVj dDogW1BBVENIIHY2MiA3LzhdIEV4cG9zZSBGT1IgUE9SVElPTiBPRiB0byBwbHBnc3FsIHRyaWdn ZXJzCgpJdCBpcyBoZWxwZnVsIGZvciB0cmlnZ2VycyB0byBzZWUgd2hhdCB0aGUgRk9SIFBPUlRJ T04gT0YgY2xhdXNlCnNwZWNpZmllZDogYm90aCB0aGUgY29sdW1uL3BlcmlvZCBuYW1lIGFuZCB0 aGUgdGFyZ2V0ZWQgYm91bmRzLiBPdXIgUkkKdHJpZ2dlcnMgcmVxdWlyZSB0aGlzIGluZm9ybWF0 aW9uLCBhbmQgd2UgYXJlIHBhc3NpbmcgaXQgYXMgcGFydCBvZiB0aGUKVHJpZ2dlckRhdGEgc3Ry dWN0LiBUaGlzIGNvbW1pdCBhbGxvd3MgcGxwZ3NxbCB0cmlnZ2VyIGZ1bmN0aW9ucyB0bwphY2Nl c3MgdGhlIHNhbWUgaW5mb3JtYXRpb24sIHVzaW5nIHRoZSBuZXcgVEdfUEVSSU9EX0NPTFVNTiBh bmQKVEdfUEVSSU9EX1RBUkdFVCB2YXJpYWJsZXMuCgpBdXRob3I6IFBhdWwgQS4gSnVuZ3dpcnRo IDxwakBpbGx1bWluYXRlZGNvbXB1dGluZy5jb20+Ci0tLQogZG9jL3NyYy9zZ21sL3BscGdzcWwu c2dtbCAgICAgICAgICAgICAgICAgICAgfCAyNCArKysrKysrKysKIHNyYy9wbC9wbHBnc3FsL3Ny Yy9wbF9jb21wLmMgICAgICAgICAgICAgICAgIHwgMjYgKysrKysrKysrCiBzcmMvcGwvcGxwZ3Nx bC9zcmMvcGxfZXhlYy5jICAgICAgICAgICAgICAgICB8IDMyICsrKysrKysrKysrKwogc3JjL3Bs L3BscGdzcWwvc3JjL3BscGdzcWwuaCAgICAgICAgICAgICAgICAgfCAgMiArCiBzcmMvdGVzdC9y ZWdyZXNzL2V4cGVjdGVkL2Zvcl9wb3J0aW9uX29mLm91dCB8IDU1ICsrKysrKysrKysrLS0tLS0t LS0tCiBzcmMvdGVzdC9yZWdyZXNzL3NxbC9mb3JfcG9ydGlvbl9vZi5zcWwgICAgICB8ICA5ICsr Ky0KIDYgZmlsZXMgY2hhbmdlZCwgMTIxIGluc2VydGlvbnMoKyksIDI3IGRlbGV0aW9ucygtKQoK ZGlmZiAtLWdpdCBhL2RvYy9zcmMvc2dtbC9wbHBnc3FsLnNnbWwgYi9kb2Mvc3JjL3NnbWwvcGxw Z3NxbC5zZ21sCmluZGV4IDU2MWY2ZTUwZDYzLi44NmYzMTI0MTZhNSAxMDA2NDQKLS0tIGEvZG9j L3NyYy9zZ21sL3BscGdzcWwuc2dtbAorKysgYi9kb2Mvc3JjL3NnbWwvcGxwZ3NxbC5zZ21sCkBA IC00MjQ3LDYgKzQyNDcsMzAgQEAgQVNTRVJUIDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVy Ij5jb25kaXRpb248L3JlcGxhY2VhYmxlPiA8b3B0aW9uYWw+ICwgPHJlcGwKICAgICAgIDwvcGFy YT4KICAgICAgPC9saXN0aXRlbT4KICAgICA8L3Zhcmxpc3RlbnRyeT4KKworICAgIDx2YXJsaXN0 ZW50cnkgaWQ9InBscGdzcWwtZG1sLXRyaWdnZXItdGctdGVtcG9yYWwtY29sdW1uIj4KKyAgICAg PHRlcm0+PHZhcm5hbWU+VEdfUEVSSU9EX05BTUU8L3Zhcm5hbWU+IDx0eXBlPnRleHQ8L3R5cGU+ PC90ZXJtPgorICAgICA8bGlzdGl0ZW0+CisgICAgICA8cGFyYT4KKyAgICAgICB0aGUgY29sdW1u IG5hbWUgdXNlZCBpbiBhIDxsaXRlcmFsPkZPUiBQT1JUSU9OIE9GPC9saXRlcmFsPiBjbGF1c2Us CisgICAgICAgb3IgZWxzZSA8c3ltYm9sPk5VTEw8L3N5bWJvbD4uCisgICAgICA8L3BhcmE+Cisg ICAgIDwvbGlzdGl0ZW0+CisgICAgPC92YXJsaXN0ZW50cnk+CisKKyAgICA8dmFybGlzdGVudHJ5 IGlkPSJwbHBnc3FsLWRtbC10cmlnZ2VyLXRnLXRlbXBvcmFsLXRhcmdldCI+CisgICAgIDx0ZXJt Pjx2YXJuYW1lPlRHX1BFUklPRF9CT1VORFM8L3Zhcm5hbWU+IDx0eXBlPnRleHQ8L3R5cGU+PC90 ZXJtPgorICAgICA8bGlzdGl0ZW0+CisgICAgICA8cGFyYT4KKyAgICAgICB0aGUgcmFuZ2UvbXVs dGlyYW5nZS9ldGMuIGdpdmVuIGFzIHRoZSBib3VuZHMgb2YgYQorICAgICAgIDxsaXRlcmFsPkZP UiBQT1JUSU9OIE9GPC9saXRlcmFsPiBjbGF1c2UsIGVpdGhlciBkaXJlY3RseSAod2l0aCBwYXJl bnMgc3ludGF4KQorICAgICAgIG9yIGNvbXB1dGVkIGZyb20gdGhlIDxsaXRlcmFsPkZST008L2xp dGVyYWw+IGFuZCA8bGl0ZXJhbD5UTzwvbGl0ZXJhbD4gYm91bmRzLgorICAgICAgIDxzeW1ib2w+ TlVMTDwvc3ltYm9sPiBpZiA8bGl0ZXJhbD5GT1IgUE9SVElPTiBPRjwvbGl0ZXJhbD4gd2FzIG5v dCB1c2VkLgorICAgICAgIFRoaXMgaXMgYSB0ZXh0IHZhbHVlIGJhc2VkIG9uIHRoZSB0eXBlJ3Mg b3V0cHV0IGZ1bmN0aW9uLAorICAgICAgIHNpbmNlIHRoZSB0eXBlIGNhbid0IGJlIGtub3duIGF0 IGZ1bmN0aW9uIGNyZWF0aW9uIHRpbWUuCisgICAgICA8L3BhcmE+CisgICAgIDwvbGlzdGl0ZW0+ CisgICAgPC92YXJsaXN0ZW50cnk+CiAgICA8L3ZhcmlhYmxlbGlzdD4KICAgPC9wYXJhPgogCmRp ZmYgLS1naXQgYS9zcmMvcGwvcGxwZ3NxbC9zcmMvcGxfY29tcC5jIGIvc3JjL3BsL3BscGdzcWwv c3JjL3BsX2NvbXAuYwppbmRleCBmNjk3NjY4OWE2OS4uNzMzYjVkOThiODYgMTAwNjQ0Ci0tLSBh L3NyYy9wbC9wbHBnc3FsL3NyYy9wbF9jb21wLmMKKysrIGIvc3JjL3BsL3BscGdzcWwvc3JjL3Bs X2NvbXAuYwpAQCAtNjE3LDYgKzYxNywzMiBAQCBwbHBnc3FsX2NvbXBpbGVfY2FsbGJhY2soRnVu Y3Rpb25DYWxsSW5mbyBmY2luZm8sCiAJCQl2YXItPmR0eXBlID0gUExQR1NRTF9EVFlQRV9QUk9N SVNFOwogCQkJKChQTHBnU1FMX3ZhciAqKSB2YXIpLT5wcm9taXNlID0gUExQR1NRTF9QUk9NSVNF X1RHX0FSR1Y7CiAKKwkJCS8qIEFkZCB0aGUgdmFyaWFibGUgdGdfcGVyaW9kX25hbWUgKi8KKwkJ CXZhciA9IHBscGdzcWxfYnVpbGRfdmFyaWFibGUoInRnX3BlcmlvZF9uYW1lIiwgMCwKKwkJCQkJ CQkJCQkgcGxwZ3NxbF9idWlsZF9kYXRhdHlwZShURVhUT0lELAorCQkJCQkJCQkJCQkJCQkJCS0x LAorCQkJCQkJCQkJCQkJCQkJCWZ1bmN0aW9uLT5mbl9pbnB1dF9jb2xsYXRpb24sCisJCQkJCQkJ CQkJCQkJCQkJTlVMTCksCisJCQkJCQkJCQkJIHRydWUpOworCQkJQXNzZXJ0KHZhci0+ZHR5cGUg PT0gUExQR1NRTF9EVFlQRV9WQVIpOworCQkJdmFyLT5kdHlwZSA9IFBMUEdTUUxfRFRZUEVfUFJP TUlTRTsKKwkJCSgoUExwZ1NRTF92YXIgKikgdmFyKS0+cHJvbWlzZSA9IFBMUEdTUUxfUFJPTUlT RV9UR19QRVJJT0RfTkFNRTsKKworCQkJLyoKKwkJCSAqIEFkZCB0aGUgdmFyaWFibGUgdGdfcGVy aW9kX2JvdW5kcy4gVGhpcyBjb3VsZCBiZSBhbnkKKwkJCSAqIHJhbmdldHlwZSBvciBtdWx0aXJh bmdldHlwZSBvciB1c2VyLXN1cHBsaWVkIHR5cGUsIHNvIHRoZSBiZXN0CisJCQkgKiB3ZSBjYW4g b2ZmZXIgaXMgYSBURVhUIHZhcmlhYmxlLgorCQkJICovCisJCQl2YXIgPSBwbHBnc3FsX2J1aWxk X3ZhcmlhYmxlKCJ0Z19wZXJpb2RfYm91bmRzIiwgMCwKKwkJCQkJCQkJCQkgcGxwZ3NxbF9idWls ZF9kYXRhdHlwZShURVhUT0lELAorCQkJCQkJCQkJCQkJCQkJCS0xLAorCQkJCQkJCQkJCQkJCQkJ CWZ1bmN0aW9uLT5mbl9pbnB1dF9jb2xsYXRpb24sCisJCQkJCQkJCQkJCQkJCQkJTlVMTCksCisJ CQkJCQkJCQkJIHRydWUpOworCQkJQXNzZXJ0KHZhci0+ZHR5cGUgPT0gUExQR1NRTF9EVFlQRV9W QVIpOworCQkJdmFyLT5kdHlwZSA9IFBMUEdTUUxfRFRZUEVfUFJPTUlTRTsKKwkJCSgoUExwZ1NR TF92YXIgKikgdmFyKS0+cHJvbWlzZSA9IFBMUEdTUUxfUFJPTUlTRV9UR19QRVJJT0RfQk9VTkRT OworCiAJCQlicmVhazsKIAogCQljYXNlIFBMUEdTUUxfRVZFTlRfVFJJR0dFUjoKZGlmZiAtLWdp dCBhL3NyYy9wbC9wbHBnc3FsL3NyYy9wbF9leGVjLmMgYi9zcmMvcGwvcGxwZ3NxbC9zcmMvcGxf ZXhlYy5jCmluZGV4IGQxOTQyNWI3YTcxLi4zYzVmZTRjYjM4MCAxMDA2NDQKLS0tIGEvc3JjL3Bs L3BscGdzcWwvc3JjL3BsX2V4ZWMuYworKysgYi9zcmMvcGwvcGxwZ3NxbC9zcmMvcGxfZXhlYy5j CkBAIC0xMzg1LDYgKzEzODUsNyBAQCBwbHBnc3FsX2Z1bGZpbGxfcHJvbWlzZShQTHBnU1FMX2V4 ZWNzdGF0ZSAqZXN0YXRlLAogCQkJCQkJUExwZ1NRTF92YXIgKnZhcikKIHsKIAlNZW1vcnlDb250 ZXh0IG9sZGNvbnRleHQ7CisJRm9yUG9ydGlvbk9mU3RhdGUgKmZwbzsKIAogCWlmICh2YXItPnBy b21pc2UgPT0gUExQR1NRTF9QUk9NSVNFX05PTkUpCiAJCXJldHVybjsJCQkJCS8qIG5vdGhpbmcg dG8gZG8gKi8KQEAgLTE1MTYsNiArMTUxNywzNyBAQCBwbHBnc3FsX2Z1bGZpbGxfcHJvbWlzZShQ THBnU1FMX2V4ZWNzdGF0ZSAqZXN0YXRlLAogCQkJfQogCQkJYnJlYWs7CiAKKwkJY2FzZSBQTFBH U1FMX1BST01JU0VfVEdfUEVSSU9EX05BTUU6CisJCQlpZiAoZXN0YXRlLT50cmlnZGF0YSA9PSBO VUxMKQorCQkJCWVsb2coRVJST1IsICJ0cmlnZ2VyIHByb21pc2UgaXMgbm90IGluIGEgdHJpZ2dl ciBmdW5jdGlvbiIpOworCQkJaWYgKGVzdGF0ZS0+dHJpZ2RhdGEtPnRnX3RlbXBvcmFsKQorCQkJ CWFzc2lnbl90ZXh0X3Zhcihlc3RhdGUsIHZhciwgZXN0YXRlLT50cmlnZGF0YS0+dGdfdGVtcG9y YWwtPmZwX3JhbmdlTmFtZSk7CisJCQllbHNlCisJCQkJYXNzaWduX3NpbXBsZV92YXIoZXN0YXRl LCB2YXIsIChEYXR1bSkgMCwgdHJ1ZSwgZmFsc2UpOworCQkJYnJlYWs7CisKKwkJY2FzZSBQTFBH U1FMX1BST01JU0VfVEdfUEVSSU9EX0JPVU5EUzoKKwkJCWlmIChlc3RhdGUtPnRyaWdkYXRhID09 IE5VTEwpCisJCQkJZWxvZyhFUlJPUiwgInRyaWdnZXIgcHJvbWlzZSBpcyBub3QgaW4gYSB0cmln Z2VyIGZ1bmN0aW9uIik7CisKKwkJCWZwbyA9IGVzdGF0ZS0+dHJpZ2RhdGEtPnRnX3RlbXBvcmFs OworCQkJaWYgKGZwbykKKwkJCXsKKworCQkJCU9pZAkJCWZ1bmNpZDsKKwkJCQlib29sCQl2YXJs ZW5hOworCisJCQkJZ2V0VHlwZU91dHB1dEluZm8oZnBvLT5mcF9yYW5nZVR5cGUsICZmdW5jaWQs ICZ2YXJsZW5hKTsKKwkJCQlBc3NlcnQoT2lkSXNWYWxpZChmdW5jaWQpKTsKKworCQkJCWFzc2ln bl90ZXh0X3Zhcihlc3RhdGUsIHZhciwKKwkJCQkJCQkJT2lkT3V0cHV0RnVuY3Rpb25DYWxsKGZ1 bmNpZCwKKwkJCQkJCQkJCQkJCQkgIGZwby0+ZnBfdGFyZ2V0UmFuZ2UpKTsKKwkJCX0KKwkJCWVs c2UKKwkJCQlhc3NpZ25fc2ltcGxlX3Zhcihlc3RhdGUsIHZhciwgKERhdHVtKSAwLCB0cnVlLCBm YWxzZSk7CisJCQlicmVhazsKKwogCQljYXNlIFBMUEdTUUxfUFJPTUlTRV9UR19FVkVOVDoKIAkJ CWlmIChlc3RhdGUtPmV2dHJpZ2RhdGEgPT0gTlVMTCkKIAkJCQllbG9nKEVSUk9SLCAiZXZlbnQg dHJpZ2dlciBwcm9taXNlIGlzIG5vdCBpbiBhbiBldmVudCB0cmlnZ2VyIGZ1bmN0aW9uIik7CmRp ZmYgLS1naXQgYS9zcmMvcGwvcGxwZ3NxbC9zcmMvcGxwZ3NxbC5oIGIvc3JjL3BsL3BscGdzcWwv c3JjL3BscGdzcWwuaAppbmRleCA1ZjE5M2EzNzE4My4uODAwMDEwNGJjODkgMTAwNjQ0Ci0tLSBh L3NyYy9wbC9wbHBnc3FsL3NyYy9wbHBnc3FsLmgKKysrIGIvc3JjL3BsL3BscGdzcWwvc3JjL3Bs cGdzcWwuaApAQCAtODUsNiArODUsOCBAQCB0eXBlZGVmIGVudW0gUExwZ1NRTF9wcm9taXNlX3R5 cGUKIAlQTFBHU1FMX1BST01JU0VfVEdfQVJHViwKIAlQTFBHU1FMX1BST01JU0VfVEdfRVZFTlQs CiAJUExQR1NRTF9QUk9NSVNFX1RHX1RBRywKKwlQTFBHU1FMX1BST01JU0VfVEdfUEVSSU9EX05B TUUsCisJUExQR1NRTF9QUk9NSVNFX1RHX1BFUklPRF9CT1VORFMsCiB9IFBMcGdTUUxfcHJvbWlz ZV90eXBlOwogCiAvKgpkaWZmIC0tZ2l0IGEvc3JjL3Rlc3QvcmVncmVzcy9leHBlY3RlZC9mb3Jf cG9ydGlvbl9vZi5vdXQgYi9zcmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVkL2Zvcl9wb3J0aW9uX29m Lm91dAppbmRleCA5Mjg4YjQyMjRmNy4uNTJmYjA0NGQyZTUgMTAwNjQ0Ci0tLSBhL3NyYy90ZXN0 L3JlZ3Jlc3MvZXhwZWN0ZWQvZm9yX3BvcnRpb25fb2Yub3V0CisrKyBiL3NyYy90ZXN0L3JlZ3Jl c3MvZXhwZWN0ZWQvZm9yX3BvcnRpb25fb2Yub3V0CkBAIC02MTMsOCArNjEzLDEzIEBAIENSRUFU RSBGVU5DVElPTiBkdW1wX3RyaWdnZXIoKQogUkVUVVJOUyBUUklHR0VSIExBTkdVQUdFIHBscGdz cWwgQVMKICQkCiBCRUdJTgotICBSQUlTRSBOT1RJQ0UgJyU6ICUgJSAlOicsCi0gICAgVEdfTkFN RSwgVEdfV0hFTiwgVEdfT1AsIFRHX0xFVkVMOworICBJRiBUR19QRVJJT0RfTkFNRSBJUyBOT1Qg TlVMTCBUSEVOCisgICAgUkFJU0UgTk9USUNFICclOiAlICUgRk9SIFBPUlRJT04gT0YgJSAoJSkg JTonLAorICAgICAgVEdfTkFNRSwgVEdfV0hFTiwgVEdfT1AsIFRHX1BFUklPRF9OQU1FLCBUR19Q RVJJT0RfQk9VTkRTLCBUR19MRVZFTDsKKyAgRUxTRQorICAgIFJBSVNFIE5PVElDRSAnJTogJSAl ICU6JywKKyAgICAgIFRHX05BTUUsIFRHX1dIRU4sIFRHX09QLCBUR19MRVZFTDsKKyAgRU5EIElG OwogCiAgIElGIFRHX0FSR1ZbMF0gVEhFTgogICAgIFJBSVNFIE5PVElDRSAnICBvbGQ6ICUnLCAo U0VMRUNUIHN0cmluZ19hZ2cob2xkX3RhYmxlOjp0ZXh0LCAnXG4gICAgICAgJykgRlJPTSBvbGRf dGFibGUpOwpAQCAtNjY0LDEwICs2NjksMTAgQEAgVVBEQVRFIGZvcl9wb3J0aW9uX29mX3Rlc3QK ICAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAyMS0wMS0wMScgVE8gJzIwMjItMDEt MDEnCiAgIFNFVCBuYW1lID0gJ2ZpdmVeMycKICAgV0hFUkUgaWQgPSAnWzUsNiknOwotTk9USUNF OiAgZnBvX2JlZm9yZV9zdG10OiBCRUZPUkUgVVBEQVRFIFNUQVRFTUVOVDoKK05PVElDRTogIGZw b19iZWZvcmVfc3RtdDogQkVGT1JFIFVQREFURSBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCAoWzIw MjEtMDEtMDEsMjAyMi0wMS0wMSkpIFNUQVRFTUVOVDoKIE5PVElDRTogICAgb2xkOiA8TlVMTD4K IE5PVElDRTogICAgbmV3OiA8TlVMTD4KLU5PVElDRTogIGZwb19iZWZvcmVfcm93OiBCRUZPUkUg VVBEQVRFIFJPVzoKK05PVElDRTogIGZwb19iZWZvcmVfcm93OiBCRUZPUkUgVVBEQVRFIEZPUiBQ T1JUSU9OIE9GIHZhbGlkX2F0IChbMjAyMS0wMS0wMSwyMDIyLTAxLTAxKSkgUk9XOgogTk9USUNF OiAgICBvbGQ6IFsyMDE5LTAxLTAxLDIwMzAtMDEtMDEpCiBOT1RJQ0U6ICAgIG5ldzogWzIwMjEt MDEtMDEsMjAyMi0wMS0wMSkKIE5PVElDRTogIGZwb19iZWZvcmVfc3RtdDogQkVGT1JFIElOU0VS VCBTVEFURU1FTlQ6CkBAIC02OTQsMTkgKzY5OSwxOSBAQCBOT1RJQ0U6ICAgIG5ldzogWzIwMjIt MDEtMDEsMjAzMC0wMS0wMSkKIE5PVElDRTogIGZwb19hZnRlcl9pbnNlcnRfc3RtdDogQUZURVIg SU5TRVJUIFNUQVRFTUVOVDoKIE5PVElDRTogICAgb2xkOiA8TlVMTD4KIE5PVElDRTogICAgbmV3 OiA8TlVMTD4KLU5PVElDRTogIGZwb19hZnRlcl91cGRhdGVfcm93OiBBRlRFUiBVUERBVEUgUk9X OgorTk9USUNFOiAgZnBvX2FmdGVyX3VwZGF0ZV9yb3c6IEFGVEVSIFVQREFURSBGT1IgUE9SVElP TiBPRiB2YWxpZF9hdCAoWzIwMjEtMDEtMDEsMjAyMi0wMS0wMSkpIFJPVzoKIE5PVElDRTogICAg b2xkOiBbMjAxOS0wMS0wMSwyMDMwLTAxLTAxKQogTk9USUNFOiAgICBuZXc6IFsyMDIxLTAxLTAx LDIwMjItMDEtMDEpCi1OT1RJQ0U6ICBmcG9fYWZ0ZXJfdXBkYXRlX3N0bXQ6IEFGVEVSIFVQREFU RSBTVEFURU1FTlQ6CitOT1RJQ0U6ICBmcG9fYWZ0ZXJfdXBkYXRlX3N0bXQ6IEFGVEVSIFVQREFU RSBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCAoWzIwMjEtMDEtMDEsMjAyMi0wMS0wMSkpIFNUQVRF TUVOVDoKIE5PVElDRTogICAgb2xkOiA8TlVMTD4KIE5PVElDRTogICAgbmV3OiA8TlVMTD4KIERF TEVURSBGUk9NIGZvcl9wb3J0aW9uX29mX3Rlc3QKICAgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQg RlJPTSAnMjAyMy0wMS0wMScgVE8gJzIwMjQtMDEtMDEnCiAgIFdIRVJFIGlkID0gJ1s1LDYpJzsK LU5PVElDRTogIGZwb19iZWZvcmVfc3RtdDogQkVGT1JFIERFTEVURSBTVEFURU1FTlQ6CitOT1RJ Q0U6ICBmcG9fYmVmb3JlX3N0bXQ6IEJFRk9SRSBERUxFVEUgRk9SIFBPUlRJT04gT0YgdmFsaWRf YXQgKFsyMDIzLTAxLTAxLDIwMjQtMDEtMDEpKSBTVEFURU1FTlQ6CiBOT1RJQ0U6ICAgIG9sZDog PE5VTEw+CiBOT1RJQ0U6ICAgIG5ldzogPE5VTEw+Ci1OT1RJQ0U6ICBmcG9fYmVmb3JlX3Jvdzog QkVGT1JFIERFTEVURSBST1c6CitOT1RJQ0U6ICBmcG9fYmVmb3JlX3JvdzogQkVGT1JFIERFTEVU RSBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCAoWzIwMjMtMDEtMDEsMjAyNC0wMS0wMSkpIFJPVzoK IE5PVElDRTogICAgb2xkOiBbMjAyMi0wMS0wMSwyMDMwLTAxLTAxKQogTk9USUNFOiAgICBuZXc6 IDxOVUxMPgogTk9USUNFOiAgZnBvX2JlZm9yZV9zdG10OiBCRUZPUkUgSU5TRVJUIFNUQVRFTUVO VDoKQEAgLTczMywxMCArNzM4LDEwIEBAIE5PVElDRTogICAgbmV3OiBbMjAyNC0wMS0wMSwyMDMw LTAxLTAxKQogTk9USUNFOiAgZnBvX2FmdGVyX2luc2VydF9zdG10OiBBRlRFUiBJTlNFUlQgU1RB VEVNRU5UOgogTk9USUNFOiAgICBvbGQ6IDxOVUxMPgogTk9USUNFOiAgICBuZXc6IDxOVUxMPgot Tk9USUNFOiAgZnBvX2FmdGVyX2RlbGV0ZV9yb3c6IEFGVEVSIERFTEVURSBST1c6CitOT1RJQ0U6 ICBmcG9fYWZ0ZXJfZGVsZXRlX3JvdzogQUZURVIgREVMRVRFIEZPUiBQT1JUSU9OIE9GIHZhbGlk X2F0IChbMjAyMy0wMS0wMSwyMDI0LTAxLTAxKSkgUk9XOgogTk9USUNFOiAgICBvbGQ6IFsyMDIy LTAxLTAxLDIwMzAtMDEtMDEpCiBOT1RJQ0U6ICAgIG5ldzogPE5VTEw+Ci1OT1RJQ0U6ICBmcG9f YWZ0ZXJfZGVsZXRlX3N0bXQ6IEFGVEVSIERFTEVURSBTVEFURU1FTlQ6CitOT1RJQ0U6ICBmcG9f YWZ0ZXJfZGVsZXRlX3N0bXQ6IEFGVEVSIERFTEVURSBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCAo WzIwMjMtMDEtMDEsMjAyNC0wMS0wMSkpIFNUQVRFTUVOVDoKIE5PVElDRTogICAgb2xkOiA8TlVM TD4KIE5PVElDRTogICAgbmV3OiA8TlVMTD4KIFNFTEVDVCAqIEZST00gZm9yX3BvcnRpb25fb2Zf dGVzdCBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CkBAIC04MDIsMTAgKzgwNywxMCBAQCBCRUdJTjsK IFVQREFURSBmb3JfcG9ydGlvbl9vZl90ZXN0CiAgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZS T00gJzIwMTgtMDEtMTUnIFRPICcyMDE5LTAxLTAxJwogICBTRVQgbmFtZSA9ICcyMDE4LTAxLTE1 X3RvXzIwMTktMDEtMDEnOwotTk9USUNFOiAgZnBvX2JlZm9yZV9zdG10OiBCRUZPUkUgVVBEQVRF IFNUQVRFTUVOVDoKK05PVElDRTogIGZwb19iZWZvcmVfc3RtdDogQkVGT1JFIFVQREFURSBGT1Ig UE9SVElPTiBPRiB2YWxpZF9hdCAoWzIwMTgtMDEtMTUsMjAxOS0wMS0wMSkpIFNUQVRFTUVOVDoK IE5PVElDRTogICAgb2xkOiA8TlVMTD4KIE5PVElDRTogICAgbmV3OiA8TlVMTD4KLU5PVElDRTog IGZwb19iZWZvcmVfcm93OiBCRUZPUkUgVVBEQVRFIFJPVzoKK05PVElDRTogIGZwb19iZWZvcmVf cm93OiBCRUZPUkUgVVBEQVRFIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IChbMjAxOC0wMS0xNSwy MDE5LTAxLTAxKSkgUk9XOgogTk9USUNFOiAgICBvbGQ6IFsyMDE4LTAxLTAxLDIwMjAtMDEtMDEp CiBOT1RJQ0U6ICAgIG5ldzogWzIwMTgtMDEtMTUsMjAxOS0wMS0wMSkKIE5PVElDRTogIGZwb19i ZWZvcmVfc3RtdDogQkVGT1JFIElOU0VSVCBTVEFURU1FTlQ6CkBAIC04MzIsMjAgKzgzNywyMCBA QCBOT1RJQ0U6ICAgIG5ldzogKCJbMSwyKSIsIlsyMDE5LTAxLTAxLDIwMjAtMDEtMDEpIixvbmUp CiBOT1RJQ0U6ICBmcG9fYWZ0ZXJfaW5zZXJ0X3N0bXQ6IEFGVEVSIElOU0VSVCBTVEFURU1FTlQ6 CiBOT1RJQ0U6ICAgIG9sZDogPE5VTEw+CiBOT1RJQ0U6ICAgIG5ldzogKCJbMSwyKSIsIlsyMDE5 LTAxLTAxLDIwMjAtMDEtMDEpIixvbmUpCi1OT1RJQ0U6ICBmcG9fYWZ0ZXJfdXBkYXRlX3Jvdzog QUZURVIgVVBEQVRFIFJPVzoKK05PVElDRTogIGZwb19hZnRlcl91cGRhdGVfcm93OiBBRlRFUiBV UERBVEUgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgKFsyMDE4LTAxLTE1LDIwMTktMDEtMDEpKSBS T1c6CiBOT1RJQ0U6ICAgIG9sZDogKCJbMSwyKSIsIlsyMDE4LTAxLTAxLDIwMjAtMDEtMDEpIixv bmUpCiBOT1RJQ0U6ICAgIG5ldzogKCJbMSwyKSIsIlsyMDE4LTAxLTE1LDIwMTktMDEtMDEpIiwy MDE4LTAxLTE1X3RvXzIwMTktMDEtMDEpCi1OT1RJQ0U6ICBmcG9fYWZ0ZXJfdXBkYXRlX3N0bXQ6 IEFGVEVSIFVQREFURSBTVEFURU1FTlQ6CitOT1RJQ0U6ICBmcG9fYWZ0ZXJfdXBkYXRlX3N0bXQ6 IEFGVEVSIFVQREFURSBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCAoWzIwMTgtMDEtMTUsMjAxOS0w MS0wMSkpIFNUQVRFTUVOVDoKIE5PVElDRTogICAgb2xkOiAoIlsxLDIpIiwiWzIwMTgtMDEtMDEs MjAyMC0wMS0wMSkiLG9uZSkKIE5PVElDRTogICAgbmV3OiAoIlsxLDIpIiwiWzIwMTgtMDEtMTUs MjAxOS0wMS0wMSkiLDIwMTgtMDEtMTVfdG9fMjAxOS0wMS0wMSkKIFJPTExCQUNLOwogQkVHSU47 CiBERUxFVEUgRlJPTSBmb3JfcG9ydGlvbl9vZl90ZXN0CiAgIEZPUiBQT1JUSU9OIE9GIHZhbGlk X2F0IEZST00gTlVMTCBUTyAnMjAxOC0wMS0yMSc7Ci1OT1RJQ0U6ICBmcG9fYmVmb3JlX3N0bXQ6 IEJFRk9SRSBERUxFVEUgU1RBVEVNRU5UOgorTk9USUNFOiAgZnBvX2JlZm9yZV9zdG10OiBCRUZP UkUgREVMRVRFIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0ICgoLDIwMTgtMDEtMjEpKSBTVEFURU1F TlQ6CiBOT1RJQ0U6ICAgIG9sZDogPE5VTEw+CiBOT1RJQ0U6ICAgIG5ldzogPE5VTEw+Ci1OT1RJ Q0U6ICBmcG9fYmVmb3JlX3JvdzogQkVGT1JFIERFTEVURSBST1c6CitOT1RJQ0U6ICBmcG9fYmVm b3JlX3JvdzogQkVGT1JFIERFTEVURSBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCAoKCwyMDE4LTAx LTIxKSkgUk9XOgogTk9USUNFOiAgICBvbGQ6IFsyMDE4LTAxLTAxLDIwMjAtMDEtMDEpCiBOT1RJ Q0U6ICAgIG5ldzogPE5VTEw+CiBOT1RJQ0U6ICBmcG9fYmVmb3JlX3N0bXQ6IEJFRk9SRSBJTlNF UlQgU1RBVEVNRU5UOgpAQCAtODYwLDEwICs4NjUsMTAgQEAgTk9USUNFOiAgICBuZXc6ICgiWzEs MikiLCJbMjAxOC0wMS0yMSwyMDIwLTAxLTAxKSIsb25lKQogTk9USUNFOiAgZnBvX2FmdGVyX2lu c2VydF9zdG10OiBBRlRFUiBJTlNFUlQgU1RBVEVNRU5UOgogTk9USUNFOiAgICBvbGQ6IDxOVUxM PgogTk9USUNFOiAgICBuZXc6ICgiWzEsMikiLCJbMjAxOC0wMS0yMSwyMDIwLTAxLTAxKSIsb25l KQotTk9USUNFOiAgZnBvX2FmdGVyX2RlbGV0ZV9yb3c6IEFGVEVSIERFTEVURSBST1c6CitOT1RJ Q0U6ICBmcG9fYWZ0ZXJfZGVsZXRlX3JvdzogQUZURVIgREVMRVRFIEZPUiBQT1JUSU9OIE9GIHZh bGlkX2F0ICgoLDIwMTgtMDEtMjEpKSBST1c6CiBOT1RJQ0U6ICAgIG9sZDogKCJbMSwyKSIsIlsy MDE4LTAxLTAxLDIwMjAtMDEtMDEpIixvbmUpCiBOT1RJQ0U6ICAgIG5ldzogPE5VTEw+Ci1OT1RJ Q0U6ICBmcG9fYWZ0ZXJfZGVsZXRlX3N0bXQ6IEFGVEVSIERFTEVURSBTVEFURU1FTlQ6CitOT1RJ Q0U6ICBmcG9fYWZ0ZXJfZGVsZXRlX3N0bXQ6IEFGVEVSIERFTEVURSBGT1IgUE9SVElPTiBPRiB2 YWxpZF9hdCAoKCwyMDE4LTAxLTIxKSkgU1RBVEVNRU5UOgogTk9USUNFOiAgICBvbGQ6ICgiWzEs MikiLCJbMjAxOC0wMS0wMSwyMDIwLTAxLTAxKSIsb25lKQogTk9USUNFOiAgICBuZXc6IDxOVUxM PgogUk9MTEJBQ0s7CkBAIC04NzEsMTAgKzg3NiwxMCBAQCBCRUdJTjsKIFVQREFURSBmb3JfcG9y dGlvbl9vZl90ZXN0CiAgIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gTlVMTCBUTyAnMjAx OC0wMS0wMicKICAgU0VUIG5hbWUgPSAnTlVMTF90b18yMDE4LTAxLTAxJzsKLU5PVElDRTogIGZw b19iZWZvcmVfc3RtdDogQkVGT1JFIFVQREFURSBTVEFURU1FTlQ6CitOT1RJQ0U6ICBmcG9fYmVm b3JlX3N0bXQ6IEJFRk9SRSBVUERBVEUgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgKCgsMjAxOC0w MS0wMikpIFNUQVRFTUVOVDoKIE5PVElDRTogICAgb2xkOiA8TlVMTD4KIE5PVElDRTogICAgbmV3 OiA8TlVMTD4KLU5PVElDRTogIGZwb19iZWZvcmVfcm93OiBCRUZPUkUgVVBEQVRFIFJPVzoKK05P VElDRTogIGZwb19iZWZvcmVfcm93OiBCRUZPUkUgVVBEQVRFIEZPUiBQT1JUSU9OIE9GIHZhbGlk X2F0ICgoLDIwMTgtMDEtMDIpKSBST1c6CiBOT1RJQ0U6ICAgIG9sZDogWzIwMTgtMDEtMDEsMjAy MC0wMS0wMSkKIE5PVElDRTogICAgbmV3OiBbMjAxOC0wMS0wMSwyMDE4LTAxLTAyKQogTk9USUNF OiAgZnBvX2JlZm9yZV9zdG10OiBCRUZPUkUgSU5TRVJUIFNUQVRFTUVOVDoKQEAgLTg4OSwxMCAr ODk0LDEwIEBAIE5PVElDRTogICAgbmV3OiAoIlsxLDIpIiwiWzIwMTgtMDEtMDIsMjAyMC0wMS0w MSkiLG9uZSkKIE5PVElDRTogIGZwb19hZnRlcl9pbnNlcnRfc3RtdDogQUZURVIgSU5TRVJUIFNU QVRFTUVOVDoKIE5PVElDRTogICAgb2xkOiA8TlVMTD4KIE5PVElDRTogICAgbmV3OiAoIlsxLDIp IiwiWzIwMTgtMDEtMDIsMjAyMC0wMS0wMSkiLG9uZSkKLU5PVElDRTogIGZwb19hZnRlcl91cGRh dGVfcm93OiBBRlRFUiBVUERBVEUgUk9XOgorTk9USUNFOiAgZnBvX2FmdGVyX3VwZGF0ZV9yb3c6 IEFGVEVSIFVQREFURSBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCAoKCwyMDE4LTAxLTAyKSkgUk9X OgogTk9USUNFOiAgICBvbGQ6ICgiWzEsMikiLCJbMjAxOC0wMS0wMSwyMDIwLTAxLTAxKSIsb25l KQogTk9USUNFOiAgICBuZXc6ICgiWzEsMikiLCJbMjAxOC0wMS0wMSwyMDE4LTAxLTAyKSIsTlVM TF90b18yMDE4LTAxLTAxKQotTk9USUNFOiAgZnBvX2FmdGVyX3VwZGF0ZV9zdG10OiBBRlRFUiBV UERBVEUgU1RBVEVNRU5UOgorTk9USUNFOiAgZnBvX2FmdGVyX3VwZGF0ZV9zdG10OiBBRlRFUiBV UERBVEUgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgKCgsMjAxOC0wMS0wMikpIFNUQVRFTUVOVDoK IE5PVElDRTogICAgb2xkOiAoIlsxLDIpIiwiWzIwMTgtMDEtMDEsMjAyMC0wMS0wMSkiLG9uZSkK IE5PVElDRTogICAgbmV3OiAoIlsxLDIpIiwiWzIwMTgtMDEtMDEsMjAxOC0wMS0wMikiLE5VTExf dG9fMjAxOC0wMS0wMSkKIFJPTExCQUNLOwpAQCAtOTI5LDcgKzkzNCw3IEBAIE5PVElDRTogICAg bmV3OiBbMjAxOC0wMS0wMSwyMDE4LTAxLTE1KQogTk9USUNFOiAgZnBvX2FmdGVyX2luc2VydF9y b3c6IEFGVEVSIElOU0VSVCBST1c6CiBOT1RJQ0U6ICAgIG9sZDogPE5VTEw+CiBOT1RJQ0U6ICAg IG5ldzogWzIwMTktMDEtMDEsMjAyMC0wMS0wMSkKLU5PVElDRTogIGZwb19hZnRlcl91cGRhdGVf cm93OiBBRlRFUiBVUERBVEUgUk9XOgorTk9USUNFOiAgZnBvX2FmdGVyX3VwZGF0ZV9yb3c6IEFG VEVSIFVQREFURSBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCAoWzIwMTgtMDEtMTUsMjAxOS0wMS0w MSkpIFJPVzoKIE5PVElDRTogICAgb2xkOiBbMjAxOC0wMS0wMSwyMDIwLTAxLTAxKQogTk9USUNF OiAgICBuZXc6IFsyMDE4LTAxLTE1LDIwMTktMDEtMDEpCiBCRUdJTjsKQEAgLTkzOSwxMCArOTQ0 LDEwIEBAIENPTU1JVDsKIE5PVElDRTogIGZwb19hZnRlcl9pbnNlcnRfcm93OiBBRlRFUiBJTlNF UlQgUk9XOgogTk9USUNFOiAgICBvbGQ6IDxOVUxMPgogTk9USUNFOiAgICBuZXc6IFsyMDE4LTAx LTIxLDIwMTktMDEtMDEpCi1OT1RJQ0U6ICBmcG9fYWZ0ZXJfZGVsZXRlX3JvdzogQUZURVIgREVM RVRFIFJPVzoKK05PVElDRTogIGZwb19hZnRlcl9kZWxldGVfcm93OiBBRlRFUiBERUxFVEUgRk9S IFBPUlRJT04gT0YgdmFsaWRfYXQgKCgsMjAxOC0wMS0yMSkpIFJPVzoKIE5PVElDRTogICAgb2xk OiBbMjAxOC0wMS0xNSwyMDE5LTAxLTAxKQogTk9USUNFOiAgICBuZXc6IDxOVUxMPgotTk9USUNF OiAgZnBvX2FmdGVyX2RlbGV0ZV9yb3c6IEFGVEVSIERFTEVURSBST1c6CitOT1RJQ0U6ICBmcG9f YWZ0ZXJfZGVsZXRlX3JvdzogQUZURVIgREVMRVRFIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0ICgo LDIwMTgtMDEtMjEpKSBST1c6CiBOT1RJQ0U6ICAgIG9sZDogWzIwMTgtMDEtMDEsMjAxOC0wMS0x NSkKIE5PVElDRTogICAgbmV3OiA8TlVMTD4KIEJFR0lOOwpkaWZmIC0tZ2l0IGEvc3JjL3Rlc3Qv cmVncmVzcy9zcWwvZm9yX3BvcnRpb25fb2Yuc3FsIGIvc3JjL3Rlc3QvcmVncmVzcy9zcWwvZm9y X3BvcnRpb25fb2Yuc3FsCmluZGV4IDBlNmMyZGI1YTc1Li43NDkzY2M0YzIzMyAxMDA2NDQKLS0t IGEvc3JjL3Rlc3QvcmVncmVzcy9zcWwvZm9yX3BvcnRpb25fb2Yuc3FsCisrKyBiL3NyYy90ZXN0 L3JlZ3Jlc3Mvc3FsL2Zvcl9wb3J0aW9uX29mLnNxbApAQCAtNDg0LDggKzQ4NCwxMyBAQCBDUkVB VEUgRlVOQ1RJT04gZHVtcF90cmlnZ2VyKCkKIFJFVFVSTlMgVFJJR0dFUiBMQU5HVUFHRSBwbHBn c3FsIEFTCiAkJAogQkVHSU4KLSAgUkFJU0UgTk9USUNFICclOiAlICUgJTonLAotICAgIFRHX05B TUUsIFRHX1dIRU4sIFRHX09QLCBUR19MRVZFTDsKKyAgSUYgVEdfUEVSSU9EX05BTUUgSVMgTk9U IE5VTEwgVEhFTgorICAgIFJBSVNFIE5PVElDRSAnJTogJSAlIEZPUiBQT1JUSU9OIE9GICUgKCUp ICU6JywKKyAgICAgIFRHX05BTUUsIFRHX1dIRU4sIFRHX09QLCBUR19QRVJJT0RfTkFNRSwgVEdf UEVSSU9EX0JPVU5EUywgVEdfTEVWRUw7CisgIEVMU0UKKyAgICBSQUlTRSBOT1RJQ0UgJyU6ICUg JSAlOicsCisgICAgICBUR19OQU1FLCBUR19XSEVOLCBUR19PUCwgVEdfTEVWRUw7CisgIEVORCBJ RjsKIAogICBJRiBUR19BUkdWWzBdIFRIRU4KICAgICBSQUlTRSBOT1RJQ0UgJyAgb2xkOiAlJywg KFNFTEVDVCBzdHJpbmdfYWdnKG9sZF90YWJsZTo6dGV4dCwgJ1xuICAgICAgICcpIEZST00gb2xk X3RhYmxlKTsKLS0gCjIuNDcuMwoK --000000000000160b4c0644846b0a Content-Type: text/x-patch; charset="US-ASCII"; name="v62-0005-Look-up-additional-temporal-foreign-key-helper-p.patch" Content-Disposition: attachment; filename="v62-0005-Look-up-additional-temporal-foreign-key-helper-p.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_migeesge4 RnJvbSAzNWI1YTgzMzlmODhhYTRkY2Q4NTdhZjc1NTVlNTE0YWI1Yjg0MzhiIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiAiUGF1bCBBLiBKdW5nd2lydGgiIDxwakBpbGx1bWluYXRlZGNv bXB1dGluZy5jb20+CkRhdGU6IEZyaSwgMTMgSnVuIDIwMjUgMTY6MTE6NDcgLTA3MDAKU3ViamVj dDogW1BBVENIIHY2MiA1LzhdIExvb2sgdXAgYWRkaXRpb25hbCB0ZW1wb3JhbCBmb3JlaWduIGtl eSBoZWxwZXIgcHJvYwoKVG8gaW1wbGVtZW50IENBU0NBREUvU0VUIE5VTEwvU0VUIERFRkFVTFQg b24gdGVtcG9yYWwgZm9yZWlnbiBrZXlzLCB3ZQpuZWVkIGFuIGludGVyc2VjdCBmdW5jdGlvbi4g V2UgY2FuIGxvb2sgdGhlbSBpdCB3aGVuIHdlIGxvb2sgdXAgdGhlIG9wZXJhdG9ycwphbHJlYWR5 IG5lZWRlZCBmb3IgdGVtcG9yYWwgZm9yZWlnbiBrZXlzIChpbmNsdWRpbmcgTk8gQUNUSU9OIGNv bnN0cmFpbnRzKS4KCkF1dGhvcjogUGF1bCBBLiBKdW5nd2lydGggPHBqQGlsbHVtaW5hdGVkY29t cHV0aW5nLmNvbT4KLS0tCiBzcmMvYmFja2VuZC9jYXRhbG9nL3BnX2NvbnN0cmFpbnQuYyB8IDMy ICsrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tCiBzcmMvYmFja2VuZC9jb21tYW5kcy90YWJs ZWNtZHMuYyAgICB8ICA1ICsrKy0tCiBzcmMvYmFja2VuZC9wYXJzZXIvYW5hbHl6ZS5jICAgICAg ICB8ICAyICstCiBzcmMvYmFja2VuZC91dGlscy9hZHQvcmlfdHJpZ2dlcnMuYyB8IDEwICsrKysr LS0tLQogc3JjL2luY2x1ZGUvY2F0YWxvZy9wZ19jb25zdHJhaW50LmggfCAgOSArKysrLS0tLQog NSBmaWxlcyBjaGFuZ2VkLCA0MiBpbnNlcnRpb25zKCspLCAxNiBkZWxldGlvbnMoLSkKCmRpZmYg LS1naXQgYS9zcmMvYmFja2VuZC9jYXRhbG9nL3BnX2NvbnN0cmFpbnQuYyBiL3NyYy9iYWNrZW5k L2NhdGFsb2cvcGdfY29uc3RyYWludC5jCmluZGV4IDk5NDRlNGJkMmQxLi41NjVjOTA4NDk5NCAx MDA2NDQKLS0tIGEvc3JjL2JhY2tlbmQvY2F0YWxvZy9wZ19jb25zdHJhaW50LmMKKysrIGIvc3Jj L2JhY2tlbmQvY2F0YWxvZy9wZ19jb25zdHJhaW50LmMKQEAgLTE2MzUsNyArMTYzNSw3IEBAIERl Y29uc3RydWN0RmtDb25zdHJhaW50Um93KEhlYXBUdXBsZSB0dXBsZSwgaW50ICpudW1ma3MsCiB9 CiAKIC8qCi0gKiBGaW5kRktQZXJpb2RPcGVycyAtCisgKiBGaW5kRktQZXJpb2RPcGVyc0FuZFBy b2NzIC0KICAqCiAgKiBMb29rcyB1cCB0aGUgb3BlcmF0b3Igb2lkcyB1c2VkIGZvciB0aGUgUEVS SU9EIHBhcnQgb2YgYSB0ZW1wb3JhbCBmb3JlaWduIGtleS4KICAqIFRoZSBvcGNsYXNzIHNob3Vs ZCBiZSB0aGUgb3BjbGFzcyBvZiB0aGF0IFBFUklPRCBlbGVtZW50LgpAQCAtMTY0NiwxMiArMTY0 NiwxNSBAQCBEZWNvbnN0cnVjdEZrQ29uc3RyYWludFJvdyhIZWFwVHVwbGUgdHVwbGUsIGludCAq bnVtZmtzLAogICogVGhhdCB3YXkgZm9yZWlnbiBrZXlzIGNhbiBjb21wYXJlIGZrYXR0ciA8QCBy YW5nZV9hZ2cocGthdHRyKS4KICAqIGludGVyc2VjdG9wZXJvaWQgaXMgdXNlZCBieSBOTyBBQ1RJ T04gY29uc3RyYWludHMgdG8gdHJpbSB0aGUgcmFuZ2UgYmVpbmcgY29uc2lkZXJlZAogICogdG8g anVzdCB3aGF0IHdhcyB1cGRhdGVkL2RlbGV0ZWQuCisgKiBpbnRlcnNlY3Rwcm9jb2lkIGlzIHVz ZWQgdG8gbGltaXQgdGhlIGVmZmVjdCBvZiBDQVNDQURFL1NFVCBOVUxML1NFVCBERUZBVUxUCisg KiB3aGVuIHRoZSBQSyByZWNvcmQgaXMgY2hhbmdlZCB3aXRoIEZPUiBQT1JUSU9OIE9GLgogICov CiB2b2lkCi1GaW5kRktQZXJpb2RPcGVycyhPaWQgb3BjbGFzcywKLQkJCQkgIE9pZCAqY29udGFp bmVkYnlvcGVyb2lkLAotCQkJCSAgT2lkICphZ2dlZGNvbnRhaW5lZGJ5b3Blcm9pZCwKLQkJCQkg IE9pZCAqaW50ZXJzZWN0b3Blcm9pZCkKK0ZpbmRGS1BlcmlvZE9wZXJzQW5kUHJvY3MoT2lkIG9w Y2xhc3MsCisJCQkJCQkgIE9pZCAqY29udGFpbmVkYnlvcGVyb2lkLAorCQkJCQkJICBPaWQgKmFn Z2VkY29udGFpbmVkYnlvcGVyb2lkLAorCQkJCQkJICBPaWQgKmludGVyc2VjdG9wZXJvaWQsCisJ CQkJCQkgIE9pZCAqaW50ZXJzZWN0cHJvY29pZCkKIHsKIAlPaWQJCQlvcGZhbWlseSA9IEludmFs aWRPaWQ7CiAJT2lkCQkJb3BjaW50eXBlID0gSW52YWxpZE9pZDsKQEAgLTE2OTMsNiArMTY5Niwx NyBAQCBGaW5kRktQZXJpb2RPcGVycyhPaWQgb3BjbGFzcywKIAkJCQkJCQkgICBhZ2dlZGNvbnRh aW5lZGJ5b3Blcm9pZCwKIAkJCQkJCQkgICAmc3RyYXQpOwogCisJLyoKKwkgKiBIYXJkY29kZSBp bnRlcnNlY3Qgb3BlcmF0b3JzIGZvciByYW5nZXMgYW5kIG11bHRpcmFuZ2VzLCBiZWNhdXNlIHdl CisJICogZG9uJ3QgaGF2ZSBhIGJldHRlciB3YXkgdG8gbG9vayB1cCBvcGVyYXRvcnMgdGhhdCBh cmVuJ3QgdXNlZCBpbgorCSAqIGluZGV4ZXMuCisJICoKKwkgKiBJZiB5b3UgY2hhbmdlIHRoaXMg Y29kZSwgeW91IG11c3QgY2hhbmdlIHRoZSBjb2RlIGluCisJICogdHJhbnNmb3JtRm9yUG9ydGlv bk9mQ2xhdXNlLgorCSAqCisJICogWFhYOiBGaW5kIGEgbW9yZSBleHRlbnNpYmxlIHdheSB0byBs b29rIHVwIHRoZSBvcGVyYXRvciwgcGVybWl0dGluZworCSAqIHVzZXItZGVmaW5lZCB0eXBlcy4K KwkgKi8KIAlzd2l0Y2ggKG9wY2ludHlwZSkKIAl7CiAJCWNhc2UgQU5ZUkFOR0VPSUQ6CkBAIC0x NzA0LDYgKzE3MTgsMTQgQEAgRmluZEZLUGVyaW9kT3BlcnMoT2lkIG9wY2xhc3MsCiAJCWRlZmF1 bHQ6CiAJCQllbG9nKEVSUk9SLCAidW5leHBlY3RlZCBvcGNpbnR5cGU6ICV1Iiwgb3BjaW50eXBl KTsKIAl9CisKKwkvKgorCSAqIExvb2sgdXAgdGhlIGludGVyc2VjdCBwcm9jLiBXZSB1c2UgdGhp cyBpbiB0ZW1wb3JhbCBmb3JlaWduIGtleXMgd2l0aAorCSAqIENBU0NBREUvU0VUIE5VTEwvU0VU IERFRkFVTFQgdG8gYnVpbGQgdGhlIEZPUiBQT1JUSU9OIE9GIGJvdW5kcy4gSWYgdGhpcworCSAq IGlzIG1pc3Npbmcgd2UgZG9uJ3QgbmVlZCB0byBjb21wbGFpbiBoZXJlLCBiZWNhdXNlIEZPUiBQ T1JUSU9OIE9GIHdpbGwKKwkgKiBub3QgYmUgYWxsb3dlZC4KKwkgKi8KKwkqaW50ZXJzZWN0cHJv Y29pZCA9IGdldF9vcGNvZGUoKmludGVyc2VjdG9wZXJvaWQpOwogfQogCiAvKgpkaWZmIC0tZ2l0 IGEvc3JjL2JhY2tlbmQvY29tbWFuZHMvdGFibGVjbWRzLmMgYi9zcmMvYmFja2VuZC9jb21tYW5k cy90YWJsZWNtZHMuYwppbmRleCAyM2ViYWEzZjIzMC4uNjFlNjNiZDk5MjYgMTAwNjQ0Ci0tLSBh L3NyYy9iYWNrZW5kL2NvbW1hbmRzL3RhYmxlY21kcy5jCisrKyBiL3NyYy9iYWNrZW5kL2NvbW1h bmRzL3RhYmxlY21kcy5jCkBAIC0xMDU2NCw5ICsxMDU2NCwxMCBAQCBBVEFkZEZvcmVpZ25LZXlD b25zdHJhaW50KExpc3QgKip3cXVldWUsIEFsdGVyZWRUYWJsZUluZm8gKnRhYiwgUmVsYXRpb24g cmVsLAogCQlPaWQJCQlwZXJpb2RvcGVyb2lkOwogCQlPaWQJCQlhZ2dlZHBlcmlvZG9wZXJvaWQ7 CiAJCU9pZAkJCWludGVyc2VjdG9wZXJvaWQ7CisJCU9pZAkJCWludGVyc2VjdHByb2NvaWQ7CiAK LQkJRmluZEZLUGVyaW9kT3BlcnMob3BjbGFzc2VzW251bXBrcyAtIDFdLCAmcGVyaW9kb3Blcm9p ZCwgJmFnZ2VkcGVyaW9kb3Blcm9pZCwKLQkJCQkJCSAgJmludGVyc2VjdG9wZXJvaWQpOworCQlG aW5kRktQZXJpb2RPcGVyc0FuZFByb2NzKG9wY2xhc3Nlc1tudW1wa3MgLSAxXSwgJnBlcmlvZG9w ZXJvaWQsICZhZ2dlZHBlcmlvZG9wZXJvaWQsCisJCQkJCQkJCSAgJmludGVyc2VjdG9wZXJvaWQs ICZpbnRlcnNlY3Rwcm9jb2lkKTsKIAl9CiAKIAkvKiBGaXJzdCwgY3JlYXRlIHRoZSBjb25zdHJh aW50IGNhdGFsb2cgZW50cnkgaXRzZWxmLiAqLwpkaWZmIC0tZ2l0IGEvc3JjL2JhY2tlbmQvcGFy c2VyL2FuYWx5emUuYyBiL3NyYy9iYWNrZW5kL3BhcnNlci9hbmFseXplLmMKaW5kZXggM2VmZWRk Njc4YzAuLjMzZWMwYWJhMjhkIDEwMDY0NAotLS0gYS9zcmMvYmFja2VuZC9wYXJzZXIvYW5hbHl6 ZS5jCisrKyBiL3NyYy9iYWNrZW5kL3BhcnNlci9hbmFseXplLmMKQEAgLTE0NjEsNyArMTQ2MSw3 IEBAIHRyYW5zZm9ybUZvclBvcnRpb25PZkNsYXVzZShQYXJzZVN0YXRlICpwc3RhdGUsCiAJCS8q CiAJCSAqIFdoYXRldmVyIG9wZXJhdG9yIGlzIHVzZWQgZm9yIGludGVyc2VjdCBieSB0ZW1wb3Jh bCBmb3JlaWduIGtleXMsCiAJCSAqIHdlIGNhbiB1c2UgaXRzIGJhY2tpbmcgcHJvY2VkdXJlIGZv ciBpbnRlcnNlY3RzIGluIEZPUiBQT1JUSU9OIE9GLgotCQkgKiBYWFg6IFNoYXJlIGNvZGUgd2l0 aCBGaW5kRktQZXJpb2RPcGVycz8KKwkJICogWFhYOiBTaGFyZSBjb2RlIHdpdGggRmluZEZLUGVy aW9kT3BlcnNBbmRQcm9jcz8KIAkJICovCiAJCXN3aXRjaCAob3BjaW50eXBlKQogCQl7CmRpZmYg LS1naXQgYS9zcmMvYmFja2VuZC91dGlscy9hZHQvcmlfdHJpZ2dlcnMuYyBiL3NyYy9iYWNrZW5k L3V0aWxzL2FkdC9yaV90cmlnZ2Vycy5jCmluZGV4IGQ2YjFlYjU3YTQ4Li42OWY3ZGUyNWUyMyAx MDA2NDQKLS0tIGEvc3JjL2JhY2tlbmQvdXRpbHMvYWR0L3JpX3RyaWdnZXJzLmMKKysrIGIvc3Jj L2JhY2tlbmQvdXRpbHMvYWR0L3JpX3RyaWdnZXJzLmMKQEAgLTEyOSw2ICsxMjksNyBAQCB0eXBl ZGVmIHN0cnVjdCBSSV9Db25zdHJhaW50SW5mbwogCU9pZAkJCXBlcmlvZF9jb250YWluZWRfYnlf b3BlcjsJLyogYW55cmFuZ2UgPEAgYW55cmFuZ2UgKi8KIAlPaWQJCQlhZ2dlZF9wZXJpb2RfY29u dGFpbmVkX2J5X29wZXI7IC8qIGZrYXR0ciA8QCByYW5nZV9hZ2cocGthdHRyKSAqLwogCU9pZAkJ CXBlcmlvZF9pbnRlcnNlY3Rfb3BlcjsJLyogYW55cmFuZ2UgKiBhbnlyYW5nZSAob3IgbXVsdGly YW5nZSkgKi8KKwlPaWQJCQlwZXJpb2RfaW50ZXJzZWN0X3Byb2M7CS8qIGFueXJhbmdlICogYW55 cmFuZ2UgKG9yIG11bHRpcmFuZ2UpICovCiAJZGxpc3Rfbm9kZQl2YWxpZF9saW5rOwkJLyogTGlu ayBpbiBsaXN0IG9mIHZhbGlkIGVudHJpZXMgKi8KIH0gUklfQ29uc3RyYWludEluZm87CiAKQEAg LTIzMzcsMTAgKzIzMzgsMTEgQEAgcmlfTG9hZENvbnN0cmFpbnRJbmZvKE9pZCBjb25zdHJhaW50 T2lkKQogCXsKIAkJT2lkCQkJb3BjbGFzcyA9IGdldF9pbmRleF9jb2x1bW5fb3BjbGFzcyhjb25G b3JtLT5jb25pbmRpZCwgcmlpbmZvLT5ua2V5cyk7CiAKLQkJRmluZEZLUGVyaW9kT3BlcnMob3Bj bGFzcywKLQkJCQkJCSAgJnJpaW5mby0+cGVyaW9kX2NvbnRhaW5lZF9ieV9vcGVyLAotCQkJCQkJ ICAmcmlpbmZvLT5hZ2dlZF9wZXJpb2RfY29udGFpbmVkX2J5X29wZXIsCi0JCQkJCQkgICZyaWlu Zm8tPnBlcmlvZF9pbnRlcnNlY3Rfb3Blcik7CisJCUZpbmRGS1BlcmlvZE9wZXJzQW5kUHJvY3Mo b3BjbGFzcywKKwkJCQkJCQkJICAmcmlpbmZvLT5wZXJpb2RfY29udGFpbmVkX2J5X29wZXIsCisJ CQkJCQkJCSAgJnJpaW5mby0+YWdnZWRfcGVyaW9kX2NvbnRhaW5lZF9ieV9vcGVyLAorCQkJCQkJ CQkgICZyaWluZm8tPnBlcmlvZF9pbnRlcnNlY3Rfb3BlciwKKwkJCQkJCQkJICAmcmlpbmZvLT5w ZXJpb2RfaW50ZXJzZWN0X3Byb2MpOwogCX0KIAogCVJlbGVhc2VTeXNDYWNoZSh0dXApOwpkaWZm IC0tZ2l0IGEvc3JjL2luY2x1ZGUvY2F0YWxvZy9wZ19jb25zdHJhaW50LmggYi9zcmMvaW5jbHVk ZS9jYXRhbG9nL3BnX2NvbnN0cmFpbnQuaAppbmRleCA0YWZjZWI1YzY5Mi4uOWI1OGY2MThmOWUg MTAwNjQ0Ci0tLSBhL3NyYy9pbmNsdWRlL2NhdGFsb2cvcGdfY29uc3RyYWludC5oCisrKyBiL3Ny Yy9pbmNsdWRlL2NhdGFsb2cvcGdfY29uc3RyYWludC5oCkBAIC0yODgsMTAgKzI4OCwxMSBAQCBl eHRlcm4gdm9pZCBEZWNvbnN0cnVjdEZrQ29uc3RyYWludFJvdyhIZWFwVHVwbGUgdHVwbGUsIGlu dCAqbnVtZmtzLAogCQkJCQkJCQkJICAgQXR0ck51bWJlciAqY29ua2V5LCBBdHRyTnVtYmVyICpj b25ma2V5LAogCQkJCQkJCQkJICAgT2lkICpwZl9lcV9vcHJzLCBPaWQgKnBwX2VxX29wcnMsIE9p ZCAqZmZfZXFfb3BycywKIAkJCQkJCQkJCSAgIGludCAqbnVtX2ZrX2RlbF9zZXRfY29scywgQXR0 ck51bWJlciAqZmtfZGVsX3NldF9jb2xzKTsKLWV4dGVybiB2b2lkIEZpbmRGS1BlcmlvZE9wZXJz KE9pZCBvcGNsYXNzLAotCQkJCQkJCSAgT2lkICpjb250YWluZWRieW9wZXJvaWQsCi0JCQkJCQkJ ICBPaWQgKmFnZ2VkY29udGFpbmVkYnlvcGVyb2lkLAotCQkJCQkJCSAgT2lkICppbnRlcnNlY3Rv cGVyb2lkKTsKK2V4dGVybiB2b2lkIEZpbmRGS1BlcmlvZE9wZXJzQW5kUHJvY3MoT2lkIG9wY2xh c3MsCisJCQkJCQkJCQkgIE9pZCAqY29udGFpbmVkYnlvcGVyb2lkLAorCQkJCQkJCQkJICBPaWQg KmFnZ2VkY29udGFpbmVkYnlvcGVyb2lkLAorCQkJCQkJCQkJICBPaWQgKmludGVyc2VjdG9wZXJv aWQsCisJCQkJCQkJCQkgIE9pZCAqaW50ZXJzZWN0cHJvY29pZCk7CiAKIGV4dGVybiBib29sIGNo ZWNrX2Z1bmN0aW9uYWxfZ3JvdXBpbmcoT2lkIHJlbGlkLAogCQkJCQkJCQkJICBJbmRleCB2YXJu bywgSW5kZXggdmFybGV2ZWxzdXAsCi0tIAoyLjQ3LjMKCg== --000000000000160b4c0644846b0a Content-Type: text/x-patch; charset="US-ASCII"; name="v62-0008-Add-PERIODs.patch" Content-Disposition: attachment; filename="v62-0008-Add-PERIODs.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_migeesgm7 RnJvbSA4NmRjYjE3MWMzZDQ1MGRjOWU3ZjkyNTZiMzFiZGQ1M2I4NzY0OWJkIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiAiUGF1bCBBLiBKdW5nd2lydGgiIDxwakBpbGx1bWluYXRlZGNv bXB1dGluZy5jb20+CkRhdGU6IFR1ZSwgMTcgSnVuIDIwMjUgMjM6MjM6MjMgLTA3MDAKU3ViamVj dDogW1BBVENIIHY2MiA4LzhdIEFkZCBQRVJJT0RzCgotIEFkZGVkIHBhcnNpbmcgZm9yIFNRTDoy MDExIHN5bnRheCB0byBkZWZpbmUgYW4gYXBwbGljYXRpb24tdGltZSBQRVJJT0Qgb24gYQogIHRh YmxlIChpbiBib3RoIENSRUFURSBUQUJMRSBhbmQgQUxURVIgVEFCTEUpLiBNYWtlIHN1cmUgd2Ug Y3JlYXRlIHRoZSBQRVJJT0QKICBhZnRlciBjb2x1bW5zIGFyZSBrbm93biAoc2luY2UgUEVSSU9E cyBjYW4gcmVmZXIgdG8gdGhlbSkgYnV0IGJlZm9yZQogIGNvbnN0cmFpbnRzIGFyZSBoYW5kbGVk IChzaW5jZSBQRVJJT0RzIGNhbiBhcHBlYXIgaW4gdGhlbSkuCi0gQWRkZWQgQUxURVIgVEFCTEUg RFJPUCBzdXBwb3J0IGZvciBQRVJJT0RzLgotIENyZWF0ZWQgcG9zdGdyZXMucGdfcGVyaW9kIHRh YmxlLgotIENyZWF0ZWQgaW5mb3JtYXRpb25fc2NoZW1hLnBlcmlvZHMgdmlldy4KLSBBZGRlZCBw Z19kdW1wIHN1cHBvcnQuCi0gQWRkZWQgdGVzdHMgYW5kIGRvY3VtZW50YXRpb24uCi0gQXV0b21h dGljYWxseSBkZWZpbmUgYSBjb25zdHJhaW50IGZvciBlYWNoIFBFUklPRCByZXF1aXJpbmcgdGhl IHN0YXJ0IGNvbHVtbgogIHRvIGJlIGxlc3MgdGhhbiB0aGUgZW5kIGNvbHVtbi4KLSBXaGVuIGNy ZWF0aW5nIGEgUEVSSU9ELCBjaG9vc2UgYW4gYXBwcm9wcmlhdGUgcmFuZ2UgdHlwZSB3ZSBjYW4g dXNlIHRvCiAgaW1wbGVtZW50IFBFUklPRC1yZWxhdGVkIG9wZXJhdGlvbnMuIFlvdSBjYW4gY2hv b3NlIG9uZSBleHBsaWNpdGx5IGlmIHRoZXJlCiAgaXMgYW1iaWd1aXR5IChkdWUgdG8gbXVsdGlw bGUgcmFuZ2UgdHlwZXMgY3JlYXRlZCBvdmVyIHRoZSBzYW1lIGJhc2UgdHlwZSkuCgpBdXRob3I6 IFBhdWwgQS4gSnVuZ3dpcnRoIDxwakBpbGx1bWluYXRlZGNvbXB1dGluZy5jb20+Ci0tLQogZG9j L3NyYy9zZ21sL2NhdGFsb2dzLnNnbWwgICAgICAgICAgICAgICAgICAgIHwgIDExMiArCiBkb2Mv c3JjL3NnbWwvZGRsLnNnbWwgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDQ2ICsKIGRvYy9z cmMvc2dtbC9pbmZvcm1hdGlvbl9zY2hlbWEuc2dtbCAgICAgICAgICB8ICAgNjMgKwogZG9jL3Ny Yy9zZ21sL3BscGdzcWwuc2dtbCAgICAgICAgICAgICAgICAgICAgIHwgICAgMiArLQogZG9jL3Ny Yy9zZ21sL3JlZi9hbHRlcl90YWJsZS5zZ21sICAgICAgICAgICAgIHwgICAzMSArLQogZG9jL3Ny Yy9zZ21sL3JlZi9jb21tZW50LnNnbWwgICAgICAgICAgICAgICAgIHwgICAgMiArCiBkb2Mvc3Jj L3NnbWwvcmVmL2NyZWF0ZV90YWJsZS5zZ21sICAgICAgICAgICAgfCAgIDY1ICstCiBkb2Mvc3Jj L3NnbWwvcmVmL2RlbGV0ZS5zZ21sICAgICAgICAgICAgICAgICAgfCAgIDI0ICstCiBkb2Mvc3Jj L3NnbWwvcmVmL3VwZGF0ZS5zZ21sICAgICAgICAgICAgICAgICAgfCAgIDI0ICstCiBkb2Mvc3Jj L3NnbWwvdHJpZ2dlci5zZ21sICAgICAgICAgICAgICAgICAgICAgfCAgICA5ICstCiBzcmMvYmFj a2VuZC9jYXRhbG9nL01ha2VmaWxlICAgICAgICAgICAgICAgICAgfCAgICAxICsKIHNyYy9iYWNr ZW5kL2NhdGFsb2cvYWNsY2hrLmMgICAgICAgICAgICAgICAgICB8ICAgIDIgKwogc3JjL2JhY2tl bmQvY2F0YWxvZy9kZXBlbmRlbmN5LmMgICAgICAgICAgICAgIHwgICAxMyArCiBzcmMvYmFja2Vu ZC9jYXRhbG9nL2hlYXAuYyAgICAgICAgICAgICAgICAgICAgfCAgIDc1ICsKIHNyYy9iYWNrZW5k L2NhdGFsb2cvaW5mb3JtYXRpb25fc2NoZW1hLnNxbCAgICB8ICAgMjMgKy0KIHNyYy9iYWNrZW5k L2NhdGFsb2cvbWVzb24uYnVpbGQgICAgICAgICAgICAgICB8ICAgIDEgKwogc3JjL2JhY2tlbmQv Y2F0YWxvZy9vYmplY3RhZGRyZXNzLmMgICAgICAgICAgIHwgICA3MiArCiBzcmMvYmFja2VuZC9j YXRhbG9nL3BnX2NvbnN0cmFpbnQuYyAgICAgICAgICAgfCAgIDEwICstCiBzcmMvYmFja2VuZC9j YXRhbG9nL3BnX3BlcmlvZC5jICAgICAgICAgICAgICAgfCAgMTMyICsKIHNyYy9iYWNrZW5kL2Nh dGFsb2cvc3FsX2ZlYXR1cmVzLnR4dCAgICAgICAgICB8ICAgIDIgKy0KIHNyYy9iYWNrZW5kL2Nv bW1hbmRzL2NvbW1lbnQuYyAgICAgICAgICAgICAgICB8ICAgMTAgKwogc3JjL2JhY2tlbmQvY29t bWFuZHMvZHJvcGNtZHMuYyAgICAgICAgICAgICAgIHwgICAgMSArCiBzcmMvYmFja2VuZC9jb21t YW5kcy9ldmVudF90cmlnZ2VyLmMgICAgICAgICAgfCAgICAyICsKIHNyYy9iYWNrZW5kL2NvbW1h bmRzL3NlY2xhYmVsLmMgICAgICAgICAgICAgICB8ICAgIDEgKwogc3JjL2JhY2tlbmQvY29tbWFu ZHMvdGFibGVjbWRzLmMgICAgICAgICAgICAgIHwgIDk3OCArKystCiBzcmMvYmFja2VuZC9jb21t YW5kcy90cmlnZ2VyLmMgICAgICAgICAgICAgICAgfCAgICAyICsKIHNyYy9iYWNrZW5kL2NvbW1h bmRzL3ZpZXcuYyAgICAgICAgICAgICAgICAgICB8ICAgIDQgKy0KIHNyYy9iYWNrZW5kL2V4ZWN1 dG9yL25vZGVNb2RpZnlUYWJsZS5jICAgICAgICB8ICAgNDEgKy0KIHNyYy9iYWNrZW5kL25vZGVz L25vZGVGdW5jcy5jICAgICAgICAgICAgICAgICB8ICAgIDMgKwogc3JjL2JhY2tlbmQvcGFyc2Vy L2FuYWx5emUuYyAgICAgICAgICAgICAgICAgIHwgIDEzMCArLQogc3JjL2JhY2tlbmQvcGFyc2Vy L2dyYW0ueSAgICAgICAgICAgICAgICAgICAgIHwgICA0NSArLQogc3JjL2JhY2tlbmQvcGFyc2Vy L3BhcnNlX3JlbGF0aW9uLmMgICAgICAgICAgIHwgICAxMSArCiBzcmMvYmFja2VuZC9wYXJzZXIv cGFyc2VfdXRpbGNtZC5jICAgICAgICAgICAgfCAgMTgyICstCiBzcmMvYmFja2VuZC91dGlscy9h ZHQvTWFrZWZpbGUgICAgICAgICAgICAgICAgfCAgICAxICsKIHNyYy9iYWNrZW5kL3V0aWxzL2Fk dC9wZXJpb2QuYyAgICAgICAgICAgICAgICB8ICAgNTggKwogc3JjL2JhY2tlbmQvdXRpbHMvY2Fj aGUvbHN5c2NhY2hlLmMgICAgICAgICAgIHwgICA4OCArCiBzcmMvYmluL3BnX2R1bXAvcGdfYmFj a3VwX2FyY2hpdmVyLmMgICAgICAgICAgfCAgICAxICsKIHNyYy9iaW4vcGdfZHVtcC9wZ19kdW1w LmMgICAgICAgICAgICAgICAgICAgICB8ICAxODAgKy0KIHNyYy9iaW4vcGdfZHVtcC9wZ19kdW1w LmggICAgICAgICAgICAgICAgICAgICB8ICAgMTUgKwogc3JjL2Jpbi9wZ19kdW1wL3BnX2R1bXBf c29ydC5jICAgICAgICAgICAgICAgIHwgICAyNCArCiBzcmMvYmluL3BzcWwvZGVzY3JpYmUuYyAg ICAgICAgICAgICAgICAgICAgICAgfCAgIDM2ICsKIHNyYy9pbmNsdWRlL2NhdGFsb2cvTWFrZWZp bGUgICAgICAgICAgICAgICAgICB8ICAgIDEgKwogc3JjL2luY2x1ZGUvY2F0YWxvZy9oZWFwLmgg ICAgICAgICAgICAgICAgICAgIHwgICAgNCArCiBzcmMvaW5jbHVkZS9jYXRhbG9nL21lc29uLmJ1 aWxkICAgICAgICAgICAgICAgfCAgICAxICsKIHNyYy9pbmNsdWRlL2NhdGFsb2cvcGdfY29uc3Ry YWludC5oICAgICAgICAgICB8ICAgIDMgKy0KIHNyYy9pbmNsdWRlL2NhdGFsb2cvcGdfaW5kZXgu aCAgICAgICAgICAgICAgICB8ICAgIDEgLQogc3JjL2luY2x1ZGUvY2F0YWxvZy9wZ19wZXJpb2Qu aCAgICAgICAgICAgICAgIHwgICA1OCArCiBzcmMvaW5jbHVkZS9jYXRhbG9nL3BnX3JhbmdlLmgg ICAgICAgICAgICAgICAgfCAgICAyICsKIHNyYy9pbmNsdWRlL2NvbW1hbmRzL3RhYmxlY21kcy5o ICAgICAgICAgICAgICB8ICAgIDQgKy0KIHNyYy9pbmNsdWRlL25vZGVzL2V4ZWNub2Rlcy5oICAg ICAgICAgICAgICAgICB8ICAgIDQgKwogc3JjL2luY2x1ZGUvbm9kZXMvcGFyc2Vub2Rlcy5oICAg ICAgICAgICAgICAgIHwgICAzOSArLQogc3JjL2luY2x1ZGUvbm9kZXMvcHJpbW5vZGVzLmggICAg ICAgICAgICAgICAgIHwgICAgMiArCiBzcmMvaW5jbHVkZS9wYXJzZXIva3dsaXN0LmggICAgICAg ICAgICAgICAgICAgfCAgICAyICstCiBzcmMvaW5jbHVkZS9wYXJzZXIvcGFyc2VfdXRpbGNtZC5o ICAgICAgICAgICAgfCAgICAxICsKIHNyYy9pbmNsdWRlL3V0aWxzL2xzeXNjYWNoZS5oICAgICAg ICAgICAgICAgICB8ICAgIDMgKwogc3JjL2luY2x1ZGUvdXRpbHMvcGVyaW9kLmggICAgICAgICAg ICAgICAgICAgIHwgICAyMSArCiAuLi4vdGVzdF9kZGxfZGVwYXJzZS90ZXN0X2RkbF9kZXBhcnNl LmMgICAgICAgfCAgICA2ICsKIHNyYy90ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvZm9yX3BvcnRpb25f b2Yub3V0ICB8ICAgNTggKwogc3JjL3Rlc3QvcmVncmVzcy9leHBlY3RlZC9wZXJpb2RzLm91dCAg ICAgICAgIHwgIDMxOCArKwogc3JjL3Rlc3QvcmVncmVzcy9leHBlY3RlZC9wcml2aWxlZ2VzLm91 dCAgICAgIHwgICAyOSArCiAuLi4vcmVncmVzcy9leHBlY3RlZC93aXRob3V0X292ZXJsYXBzLm91 dCAgICAgfCA0NTAwICsrKysrKysrKysrKysrKystCiBzcmMvdGVzdC9yZWdyZXNzL3BhcmFsbGVs X3NjaGVkdWxlICAgICAgICAgICAgfCAgICAyICstCiBzcmMvdGVzdC9yZWdyZXNzL3NxbC9mb3Jf cG9ydGlvbl9vZi5zcWwgICAgICAgfCAgIDUwICsKIHNyYy90ZXN0L3JlZ3Jlc3Mvc3FsL3Blcmlv ZHMuc3FsICAgICAgICAgICAgICB8ICAxOTggKwogc3JjL3Rlc3QvcmVncmVzcy9zcWwvcHJpdmls ZWdlcy5zcWwgICAgICAgICAgIHwgICAyOCArCiBzcmMvdGVzdC9yZWdyZXNzL3NxbC93aXRob3V0 X292ZXJsYXBzLnNxbCAgICAgfCAzMDYzICsrKysrKysrKystCiBzcmMvdG9vbHMvcGdpbmRlbnQv dHlwZWRlZnMubGlzdCAgICAgICAgICAgICAgfCAgICAzICsKIDY3IGZpbGVzIGNoYW5nZWQsIDEw NzAwIGluc2VydGlvbnMoKyksIDIyMyBkZWxldGlvbnMoLSkKIGNyZWF0ZSBtb2RlIDEwMDY0NCBz cmMvYmFja2VuZC9jYXRhbG9nL3BnX3BlcmlvZC5jCiBjcmVhdGUgbW9kZSAxMDA2NDQgc3JjL2Jh Y2tlbmQvdXRpbHMvYWR0L3BlcmlvZC5jCiBjcmVhdGUgbW9kZSAxMDA2NDQgc3JjL2luY2x1ZGUv Y2F0YWxvZy9wZ19wZXJpb2QuaAogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyYy9pbmNsdWRlL3V0aWxz L3BlcmlvZC5oCiBjcmVhdGUgbW9kZSAxMDA2NDQgc3JjL3Rlc3QvcmVncmVzcy9leHBlY3RlZC9w ZXJpb2RzLm91dAogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyYy90ZXN0L3JlZ3Jlc3Mvc3FsL3Blcmlv ZHMuc3FsCgpkaWZmIC0tZ2l0IGEvZG9jL3NyYy9zZ21sL2NhdGFsb2dzLnNnbWwgYi9kb2Mvc3Jj L3NnbWwvY2F0YWxvZ3Muc2dtbAppbmRleCAyZmM2MzQ0Mjk4MC4uZGUwNTA5OGU3NTMgMTAwNjQ0 Ci0tLSBhL2RvYy9zcmMvc2dtbC9jYXRhbG9ncy5zZ21sCisrKyBiL2RvYy9zcmMvc2dtbC9jYXRh bG9ncy5zZ21sCkBAIC0yMzAsNiArMjMwLDExIEBACiAgICAgICA8ZW50cnk+aW5mb3JtYXRpb24g YWJvdXQgcGFydGl0aW9uIGtleSBvZiB0YWJsZXM8L2VudHJ5PgogICAgICA8L3Jvdz4KIAorICAg ICA8cm93PgorICAgICAgPGVudHJ5PjxsaW5rIGxpbmtlbmQ9ImNhdGFsb2ctcGctcGVyaW9kIj48 c3RydWN0bmFtZT5wZ19wZXJpb2Q8L3N0cnVjdG5hbWU+PC9saW5rPjwvZW50cnk+CisgICAgICA8 ZW50cnk+cGVyaW9kczwvZW50cnk+CisgICAgIDwvcm93PgorCiAgICAgIDxyb3c+CiAgICAgICA8 ZW50cnk+PGxpbmsgbGlua2VuZD0iY2F0YWxvZy1wZy1wb2xpY3kiPjxzdHJ1Y3RuYW1lPnBnX3Bv bGljeTwvc3RydWN0bmFtZT48L2xpbms+PC9lbnRyeT4KICAgICAgIDxlbnRyeT5yb3ctc2VjdXJp dHkgcG9saWNpZXM8L2VudHJ5PgpAQCAtNTc3Myw2ICs1Nzc4LDExMyBAQCBTQ1JBTS1TSEEtMjU2 JDxyZXBsYWNlYWJsZT4mbHQ7aXRlcmF0aW9uIGNvdW50Jmd0OzwvcmVwbGFjZWFibGU+OjxyZXBs YWNlYWJsZT4mbAogICAgICAgIGFyZSBzaW1wbGUgcmVmZXJlbmNlcy4KICAgICAgIDwvcGFyYT48 L2VudHJ5PgogICAgICA8L3Jvdz4KKworICAgIDwvdGJvZHk+CisgICA8L3Rncm91cD4KKyAgPC90 YWJsZT4KKyA8L3NlY3QxPgorCisKKyA8c2VjdDEgaWQ9ImNhdGFsb2ctcGctcGVyaW9kIj4KKyAg PHRpdGxlPjxzdHJ1Y3RuYW1lPnBnX3BlcmlvZDwvc3RydWN0bmFtZT48L3RpdGxlPgorCisgIDxp bmRleHRlcm0gem9uZT0iY2F0YWxvZy1wZy1wZXJpb2QiPgorICAgPHByaW1hcnk+cGdfcGVyaW9k PC9wcmltYXJ5PgorICA8L2luZGV4dGVybT4KKworICA8cGFyYT4KKyAgIFRoZSBjYXRhbG9nIDxz dHJ1Y3RuYW1lPnBnX3BlcmlvZDwvc3RydWN0bmFtZT4gc3RvcmVzCisgICBpbmZvcm1hdGlvbiBh Ym91dCBzeXN0ZW0gYW5kIGFwcGxpY2F0aW9uIHRpbWUgcGVyaW9kcy4KKyAgPC9wYXJhPgorCisg IDxwYXJhPgorICAgUGVyaW9kcyBhcmUgZGVzY3JpYmVkIGluIDx4cmVmIGxpbmtlbmQ9ImRkbC1w ZXJpb2RzIi8+LgorICA8L3BhcmE+CisKKyAgPHRhYmxlPgorICAgPHRpdGxlPjxzdHJ1Y3RuYW1l PnBnX3BlcmlvZDwvc3RydWN0bmFtZT4gQ29sdW1uczwvdGl0bGU+CisKKyAgIDx0Z3JvdXAgY29s cz0iMSI+CisgICAgPHRoZWFkPgorICAgICA8cm93PgorICAgICAgPGVudHJ5IHJvbGU9ImNhdGFs b2dfdGFibGVfZW50cnkiPjxwYXJhIHJvbGU9ImNvbHVtbl9kZWZpbml0aW9uIj4KKyAgICAgICBD b2x1bW4gVHlwZQorICAgICAgPC9wYXJhPgorICAgICAgPHBhcmE+CisgICAgICAgRGVzY3JpcHRp b24KKyAgICAgIDwvcGFyYT48L2VudHJ5PgorICAgICA8L3Jvdz4KKyAgICA8L3RoZWFkPgorCisg ICAgPHRib2R5PgorICAgICA8cm93PgorICAgICAgPGVudHJ5IHJvbGU9ImNhdGFsb2dfdGFibGVf ZW50cnkiPjxwYXJhIHJvbGU9ImNvbHVtbl9kZWZpbml0aW9uIj4KKyAgICAgICA8c3RydWN0Zmll bGQ+b2lkPC9zdHJ1Y3RmaWVsZD4gPHR5cGU+b2lkPC90eXBlPgorICAgICAgPC9wYXJhPgorICAg ICAgPHBhcmE+CisgICAgICAgUm93IGlkZW50aWZpZXIKKyAgICAgIDwvcGFyYT48L2VudHJ5Pgor ICAgICA8L3Jvdz4KKworICAgICA8cm93PgorICAgICAgPGVudHJ5IHJvbGU9ImNhdGFsb2dfdGFi bGVfZW50cnkiPjxwYXJhIHJvbGU9ImNvbHVtbl9kZWZpbml0aW9uIj4KKyAgICAgICA8c3RydWN0 ZmllbGQ+cGVybmFtZTwvc3RydWN0ZmllbGQ+IDx0eXBlPnRleHQ8L3R5cGU+CisgICAgICA8L3Bh cmE+CisgICAgICA8cGFyYT4KKyAgICAgICBQZXJpb2QgbmFtZQorICAgICAgPC9wYXJhPjwvZW50 cnk+CisgICAgIDwvcm93PgorCisgICAgIDxyb3c+CisgICAgICA8ZW50cnkgcm9sZT0iY2F0YWxv Z190YWJsZV9lbnRyeSI+PHBhcmEgcm9sZT0iY29sdW1uX2RlZmluaXRpb24iPgorICAgICAgIDxz dHJ1Y3RmaWVsZD5wZXJyZWxpZDwvc3RydWN0ZmllbGQ+IDx0eXBlPm9pZDwvdHlwZT4KKyAgICAg ICAocmVmZXJlbmNlcyA8bGluayBsaW5rZW5kPSJjYXRhbG9nLXBnLWNsYXNzIj48c3RydWN0bmFt ZT5wZ19jbGFzczwvc3RydWN0bmFtZT48L2xpbms+LjxzdHJ1Y3RmaWVsZD5vaWQ8L3N0cnVjdGZp ZWxkPikKKyAgICAgIDwvcGFyYT4KKyAgICAgIDxwYXJhPgorICAgICAgIFRoZSB0YWJsZSB0aGlz IHBlcmlvZCBiZWxvbmdzIHRvCisgICAgICA8L3BhcmE+PC9lbnRyeT4KKyAgICAgPC9yb3c+CisK KyAgICAgPHJvdz4KKyAgICAgIDxlbnRyeSByb2xlPSJjYXRhbG9nX3RhYmxlX2VudHJ5Ij48cGFy YSByb2xlPSJjb2x1bW5fZGVmaW5pdGlvbiI+CisgICAgICAgPHN0cnVjdGZpZWxkPnBlcnN0YXJ0 PC9zdHJ1Y3RmaWVsZD4gPHR5cGU+aW50MjwvdHlwZT4KKyAgICAgICAocmVmZXJlbmNlcyA8bGlu ayBsaW5rZW5kPSJjYXRhbG9nLXBnLWF0dHJpYnV0ZSI+PHN0cnVjdG5hbWU+cGdfYXR0cmlidXRl PC9zdHJ1Y3RuYW1lPjwvbGluaz4uPHN0cnVjdGZpZWxkPmF0dG51bTwvc3RydWN0ZmllbGQ+KQor ICAgICAgPC9wYXJhPgorICAgICAgPHBhcmE+CisgICAgICAgVGhlIG51bWJlciBvZiB0aGUgc3Rh cnQgY29sdW1uCisgICAgICA8L3BhcmE+PC9lbnRyeT4KKyAgICAgPC9yb3c+CisKKyAgICAgPHJv dz4KKyAgICAgIDxlbnRyeSByb2xlPSJjYXRhbG9nX3RhYmxlX2VudHJ5Ij48cGFyYSByb2xlPSJj b2x1bW5fZGVmaW5pdGlvbiI+CisgICAgICAgPHN0cnVjdGZpZWxkPnBlcmVuZDwvc3RydWN0Zmll bGQ+IDx0eXBlPmludDI8L3R5cGU+CisgICAgICAgKHJlZmVyZW5jZXMgPGxpbmsgbGlua2VuZD0i Y2F0YWxvZy1wZy1hdHRyaWJ1dGUiPjxzdHJ1Y3RuYW1lPnBnX2F0dHJpYnV0ZTwvc3RydWN0bmFt ZT48L2xpbms+LjxzdHJ1Y3RmaWVsZD5hdHRudW08L3N0cnVjdGZpZWxkPikKKyAgICAgIDwvcGFy YT4KKyAgICAgIDxwYXJhPgorICAgICAgIFRoZSBudW1iZXIgb2YgdGhlIGVuZCBjb2x1bW4KKyAg ICAgIDwvcGFyYT48L2VudHJ5PgorICAgICA8L3Jvdz4KKworICAgICA8cm93PgorICAgICAgPGVu dHJ5IHJvbGU9ImNhdGFsb2dfdGFibGVfZW50cnkiPjxwYXJhIHJvbGU9ImNvbHVtbl9kZWZpbml0 aW9uIj4KKyAgICAgICA8c3RydWN0ZmllbGQ+cGVycmFuZ2U8L3N0cnVjdGZpZWxkPiA8dHlwZT5p bnQyPC90eXBlPgorICAgICAgIChyZWZlcmVuY2VzIDxsaW5rIGxpbmtlbmQ9ImNhdGFsb2ctcGct YXR0cmlidXRlIj48c3RydWN0bmFtZT5wZ19hdHRyaWJ1dGU8L3N0cnVjdG5hbWU+PC9saW5rPi48 c3RydWN0ZmllbGQ+YXR0bnVtPC9zdHJ1Y3RmaWVsZD4pCisgICAgICA8L3BhcmE+CisgICAgICA8 cGFyYT4KKyAgICAgICBUaGUgbnVtYmVyIG9mIHRoZSA8bGl0ZXJhbD5HRU5FUkFURUQ8L2xpdGVy YWw+IGNvbHVtbiB0aGF0IGltcGxlbWVudHMgdGhlIDxsaXRlcmFsPlBFUklPRDwvbGl0ZXJhbD4u CisgICAgICA8L3BhcmE+PC9lbnRyeT4KKyAgICAgPC9yb3c+CisKKyAgICAgPHJvdz4KKyAgICAg IDxlbnRyeSByb2xlPSJjYXRhbG9nX3RhYmxlX2VudHJ5Ij48cGFyYSByb2xlPSJjb2x1bW5fZGVm aW5pdGlvbiI+CisgICAgICAgPHN0cnVjdGZpZWxkPnBlcmNvbnN0cmFpbnQ8L3N0cnVjdGZpZWxk PiA8dHlwZT5vaWQ8L3R5cGU+CisgICAgICAgKHJlZmVyZW5jZXMgPGxpbmsgbGlua2VuZD0iY2F0 YWxvZy1wZy1jb25zdHJhaW50Ij48c3RydWN0bmFtZT5wZ19jb25zdHJhaW50PC9zdHJ1Y3RuYW1l PjwvbGluaz4uPHN0cnVjdGZpZWxkPm9pZDwvc3RydWN0ZmllbGQ+KQorICAgICAgPC9wYXJhPgor ICAgICAgPHBhcmE+CisgICAgICAgVGhlIE9JRCBvZiB0aGUgcGVyaW9kJ3MgPGxpdGVyYWw+Q0hF Q0s8L2xpdGVyYWw+IGNvbnN0cmFpbnQKKyAgICAgIDwvcGFyYT48L2VudHJ5PgorICAgICA8L3Jv dz4KKwogICAgIDwvdGJvZHk+CiAgICA8L3Rncm91cD4KICAgPC90YWJsZT4KZGlmZiAtLWdpdCBh L2RvYy9zcmMvc2dtbC9kZGwuc2dtbCBiL2RvYy9zcmMvc2dtbC9kZGwuc2dtbAppbmRleCBhMzg3 ZTVlYWUxMy4uZjM0M2MzMjIyMGUgMTAwNjQ0Ci0tLSBhL2RvYy9zcmMvc2dtbC9kZGwuc2dtbAor KysgYi9kb2Mvc3JjL3NnbWwvZGRsLnNnbWwKQEAgLTE2MDEsNiArMTYwMSw1MiBAQCBDUkVBVEUg VEFCTEUgY2lyY2xlcyAoCiAgICB0byBleHByZXNzIGFuZCBtYW5hZ2Ugc3VjaCBoaXN0b3JpZXMg aW4gdGVtcG9yYWwgdGFibGVzLgogICA8L3BhcmE+CiAKKyAgPHNlY3QyIGlkPSJkZGwtcGVyaW9k cyI+CisgICA8dGl0bGU+UGVyaW9kczwvdGl0bGU+CisKKyAgIDxpbmRleHRlcm0gem9uZT0iZGRs LXBlcmlvZHMiPgorICAgIDxwcmltYXJ5PnBlcmlvZHM8L3ByaW1hcnk+CisgICA8L2luZGV4dGVy bT4KKworICAgPHBhcmE+CisgICAgQSA8Zmlyc3R0ZXJtPnBlcmlvZDwvZmlyc3R0ZXJtPiBpcyBt ZXRhZGF0YSBhdHRhY2hlZCB0byBhIHRhYmxlCisgICAgdW5pdGluZyB0d28gY29sdW1ucywgYSBz dGFydCB0aW1lIGFuZCBlbmQgdGltZSwgaW50byBvbmUgcmFuZ2UtbGlrZQorICAgIGNvbnN0cnVj dC4gUGVyaW9kcyBhcmUgdXNlZCB0byByZXByZXNlbnQgPGxpbmsKKyAgICBsaW5rZW5kPSJkZGwt c3lzdGVtLXRpbWUiPnN5c3RlbSB0aW1lPC9saW5rPiBhbmQgPGxpbmsKKyAgICBsaW5rZW5kPSJk ZGwtYXBwbGljYXRpb24tdGltZSI+YXBwbGljYXRpb24gdGltZTwvbGluaz4uIEEgc3lzdGVtLXRp bWUKKyAgICBwZXJpb2QgbXVzdCBiZSBuYW1lZCA8bGl0ZXJhbD5zeXN0ZW1fdGltZTwvbGl0ZXJh bD4sIGFuZCBhbgorICAgIGFwcGxpY2F0aW9uLXRpbWUgcGVyaW9kIGNhbiBiZSBuYW1lZCBhbnl0 aGluZyBlbHNlLiBUaGVpciBuYW1lcyBtdXN0CisgICAgbm90IGNvbmZsaWN0IHdpdGggY29sdW1u IG5hbWVzIGZyb20gdGhlIHNhbWUgdGFibGUuCisgICA8L3BhcmE+CisKKyAgIDxwYXJhPgorICAg IEFwcGxpY2F0aW9uLXRpbWUgcGVyaW9kcyBhcmUgcmVmZXJlbmNlZCBpbiBzZXZlcmFsIHRlbXBv cmFsIG9wZXJhdGlvbnMgZGVzY3JpYmVkIGluCisgICAgdGhpcyBjaGFwdGVyOiB0ZW1wb3JhbCBw cmltYXJ5IGtleXMsIHVuaXF1ZSBjb25zdHJhaW50cywgZm9yZWlnbiBrZXlzLAorICAgIHVwZGF0 ZSBjb21tYW5kcywgYW5kIGRlbGV0ZSBjb21tYW5kcy4KKyAgICBJbiBhbGwgY2FzZXMsIDxwcm9k dWN0bmFtZT5Qb3N0Z3JlU1FMPC9wcm9kdWN0bmFtZT4gc3VwcG9ydHMgZWl0aGVyIHBlcmlvZHMK KyAgICBvciByZWd1bGFyIGNvbHVtbnMgd2l0aCBhIDxsaW5rIGxpbmtlbmQ9InJhbmdldHlwZXMt YnVpbHRpbiI+cmFuZ2V0eXBlIG9yCisgICAgbXVsdGlyYW5nZXR5cGU8L2xpbms+LgorICAgPC9w YXJhPgorCisgICA8cGFyYT4KKyAgICBBcHBsaWNhdGlvbiBwZXJpb2RzIGFyZSBkZWZpbmVkIG9u IGEgdGFibGUgdXNpbmcgdGhlIGZvbGxvd2luZyBzeW50YXg6CisgICA8L3BhcmE+CisKKzxwcm9n cmFtbGlzdGluZz4KK0NSRUFURSBUQUJMRSBiaWxsaW5nX2FkZHJlc3NlcyAoCisgIGN1c3RvbWVy X2lkIGludGVnZXIsCisgIGFkZHJlc3NfaWQgIGludGVnZXIsCisgIHZhbGlkX2Zyb20gIGRhdGUs CisgIHZhbGlkX3RpbCAgIGRhdGUsCisgIDxlbXBoYXNpcz5QRVJJT0QgRk9SIHZhbGlkX2F0ICh2 YWxpZF9mcm9tLCB2YWxpZF90aWwpPC9lbXBoYXNpcz4KKyk7Cis8L3Byb2dyYW1saXN0aW5nPgor CisgICA8cGFyYT4KKyAgICBQZXJpb2RzIGZvciA8bGl0ZXJhbD5TWVNURU1fVElNRTwvbGl0ZXJh bD4gYXJlIGN1cnJlbnRseSBub3QgaW1wbGVtZW50ZWQuCisgICA8L3BhcmE+CisgIDwvc2VjdDI+ CisKICAgPHNlY3QyIGlkPSJkZGwtYXBwbGljYXRpb24tdGltZSI+CiAgICA8dGl0bGU+QXBwbGlj YXRpb24gVGltZTwvdGl0bGU+CiAKZGlmZiAtLWdpdCBhL2RvYy9zcmMvc2dtbC9pbmZvcm1hdGlv bl9zY2hlbWEuc2dtbCBiL2RvYy9zcmMvc2dtbC9pbmZvcm1hdGlvbl9zY2hlbWEuc2dtbAppbmRl eCA2MGI0YzRhZThjMC4uZWQ0NDgyMjMwYWEgMTAwNjQ0Ci0tLSBhL2RvYy9zcmMvc2dtbC9pbmZv cm1hdGlvbl9zY2hlbWEuc2dtbAorKysgYi9kb2Mvc3JjL3NnbWwvaW5mb3JtYXRpb25fc2NoZW1h LnNnbWwKQEAgLTQxNzEsNiArNDE3MSw2OSBAQCBPUkRFUiBCWSBjLm9yZGluYWxfcG9zaXRpb247 CiAgIDwvdGFibGU+CiAgPC9zZWN0MT4KIAorIDxzZWN0MSBpZD0iaW5mb3NjaGVtYS1wZXJpb2Rz Ij4KKyAgPHRpdGxlPjxsaXRlcmFsPnBlcmlvZHM8L2xpdGVyYWw+PC90aXRsZT4KKworICA8cGFy YT4KKyAgIFRoZSB2aWV3IDxsaXRlcmFsPnBlcmlvZHM8L2xpdGVyYWw+IGNvbnRhaW5zIGluZm9y bWF0aW9uIGFib3V0IHRoZQorICAgcGVyaW9kcyBvZiBhbGwgdGFibGVzIGluIHRoZSBjdXJyZW50 IGRhdGFiYXNlLiAgVGhlIHN0YXJ0IGFuZCBlbmQgY29sdW1uCisgICBuYW1lcyBhcmUgb25seSBz aG93biBpZiB0aGUgY3VycmVudCB1c2VyIGhhcyBhY2Nlc3MgdG8gdGhlbSAoYnkgd2F5IG9mIGJl aW5nCisgICB0aGUgb3duZXIgb3IgaGF2aW5nIHNvbWUgcHJpdmlsZWdlKS4KKyAgPC9wYXJhPgor CisgIDx0YWJsZT4KKyAgIDx0aXRsZT48bGl0ZXJhbD5wZXJpb2RzPC9saXRlcmFsPiBDb2x1bW5z PC90aXRsZT4KKworICAgPHRncm91cCBjb2xzPSIzIj4KKyAgICA8dGhlYWQ+CisgICAgIDxyb3c+ CisgICAgICA8ZW50cnk+TmFtZTwvZW50cnk+CisgICAgICA8ZW50cnk+RGF0YSBUeXBlPC9lbnRy eT4KKyAgICAgIDxlbnRyeT5EZXNjcmlwdGlvbjwvZW50cnk+CisgICAgIDwvcm93PgorICAgIDwv dGhlYWQ+CisKKyAgICA8dGJvZHk+CisgICAgIDxyb3c+CisgICAgICA8ZW50cnk+PGxpdGVyYWw+ dGFibGVfY2F0YWxvZzwvbGl0ZXJhbD48L2VudHJ5PgorICAgICAgPGVudHJ5Pjx0eXBlPnNxbF9p ZGVudGlmaWVyPC90eXBlPjwvZW50cnk+CisgICAgICA8ZW50cnk+TmFtZSBvZiB0aGUgZGF0YWJh c2UgY29udGFpbmluZyB0aGUgcGVyaW9kIChhbHdheXMgdGhlIGN1cnJlbnQgZGF0YWJhc2UpPC9l bnRyeT4KKyAgICAgPC9yb3c+CisKKyAgICAgPHJvdz4KKyAgICAgIDxlbnRyeT48bGl0ZXJhbD50 YWJsZV9zY2hlbWE8L2xpdGVyYWw+PC9lbnRyeT4KKyAgICAgIDxlbnRyeT48dHlwZT5zcWxfaWRl bnRpZmllcjwvdHlwZT48L2VudHJ5PgorICAgICAgPGVudHJ5Pk5hbWUgb2YgdGhlIHNjaGVtYSBj b250YWluaW5nIHRoZSBwZXJpb2Q8L2VudHJ5PgorICAgICA8L3Jvdz4KKworICAgICA8cm93Pgor ICAgICAgPGVudHJ5PjxsaXRlcmFsPnRhYmxlX25hbWU8L2xpdGVyYWw+PC9lbnRyeT4KKyAgICAg IDxlbnRyeT48dHlwZT5zcWxfaWRlbnRpZmllcjwvdHlwZT48L2VudHJ5PgorICAgICAgPGVudHJ5 Pk5hbWUgb2YgdGhlIHRhYmxlIGNvbnRhaW5pbmcgdGhlIHBlcmlvZDwvZW50cnk+CisgICAgIDwv cm93PgorCisgICAgIDxyb3c+CisgICAgICA8ZW50cnk+PGxpdGVyYWw+cGVyaW9kX25hbWU8L2xp dGVyYWw+PC9lbnRyeT4KKyAgICAgIDxlbnRyeT48dHlwZT5zcWxfaWRlbnRpZmllcjwvdHlwZT48 L2VudHJ5PgorICAgICAgPGVudHJ5Pk5hbWUgb2YgdGhlIHBlcmlvZDwvZW50cnk+CisgICAgIDwv cm93PgorCisgICAgIDxyb3c+CisgICAgICA8ZW50cnk+PGxpdGVyYWw+c3RhcnRfY29sdW1uX25h bWU8L2xpdGVyYWw+PC9lbnRyeT4KKyAgICAgIDxlbnRyeT48dHlwZT5zcWxfaWRlbnRpZmllcjwv dHlwZT48L2VudHJ5PgorICAgICAgPGVudHJ5Pk5hbWUgb2YgdGhlIHN0YXJ0IGNvbHVtbiBmb3Ig dGhlIHBlcmlvZDwvZW50cnk+CisgICAgIDwvcm93PgorCisgICAgIDxyb3c+CisgICAgICA8ZW50 cnk+PGxpdGVyYWw+ZW5kX2NvbHVtbl9uYW1lPC9saXRlcmFsPjwvZW50cnk+CisgICAgICA8ZW50 cnk+PHR5cGU+c3FsX2lkZW50aWZpZXI8L3R5cGU+PC9lbnRyeT4KKyAgICAgIDxlbnRyeT5OYW1l IG9mIHRoZSBlbmQgY29sdW1uIGZvciB0aGUgcGVyaW9kPC9lbnRyeT4KKyAgICAgPC9yb3c+Cisg ICAgPC90Ym9keT4KKyAgIDwvdGdyb3VwPgorICA8L3RhYmxlPgorIDwvc2VjdDE+CisKICA8c2Vj dDEgaWQ9ImluZm9zY2hlbWEtcmVmZXJlbnRpYWwtY29uc3RyYWludHMiPgogICA8dGl0bGU+PGxp dGVyYWw+cmVmZXJlbnRpYWxfY29uc3RyYWludHM8L2xpdGVyYWw+PC90aXRsZT4KIApkaWZmIC0t Z2l0IGEvZG9jL3NyYy9zZ21sL3BscGdzcWwuc2dtbCBiL2RvYy9zcmMvc2dtbC9wbHBnc3FsLnNn bWwKaW5kZXggODZmMzEyNDE2YTUuLmQ4ODI4NmZiZWZhIDEwMDY0NAotLS0gYS9kb2Mvc3JjL3Nn bWwvcGxwZ3NxbC5zZ21sCisrKyBiL2RvYy9zcmMvc2dtbC9wbHBnc3FsLnNnbWwKQEAgLTQyNTIs NyArNDI1Miw3IEBAIEFTU0VSVCA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+Y29uZGl0 aW9uPC9yZXBsYWNlYWJsZT4gPG9wdGlvbmFsPiAsIDxyZXBsCiAgICAgIDx0ZXJtPjx2YXJuYW1l PlRHX1BFUklPRF9OQU1FPC92YXJuYW1lPiA8dHlwZT50ZXh0PC90eXBlPjwvdGVybT4KICAgICAg PGxpc3RpdGVtPgogICAgICAgPHBhcmE+Ci0gICAgICAgdGhlIGNvbHVtbiBuYW1lIHVzZWQgaW4g YSA8bGl0ZXJhbD5GT1IgUE9SVElPTiBPRjwvbGl0ZXJhbD4gY2xhdXNlLAorICAgICAgIHRoZSBj b2x1bW4vcGVyaW9kIG5hbWUgdXNlZCBpbiBhIDxsaXRlcmFsPkZPUiBQT1JUSU9OIE9GPC9saXRl cmFsPiBjbGF1c2UsCiAgICAgICAgb3IgZWxzZSA8c3ltYm9sPk5VTEw8L3N5bWJvbD4uCiAgICAg ICA8L3BhcmE+CiAgICAgIDwvbGlzdGl0ZW0+CmRpZmYgLS1naXQgYS9kb2Mvc3JjL3NnbWwvcmVm L2FsdGVyX3RhYmxlLnNnbWwgYi9kb2Mvc3JjL3NnbWwvcmVmL2FsdGVyX3RhYmxlLnNnbWwKaW5k ZXggOWQyM2FkNWEwZmIuLjQ0MGVjNjE2OTdiIDEwMDY0NAotLS0gYS9kb2Mvc3JjL3NnbWwvcmVm L2FsdGVyX3RhYmxlLnNnbWwKKysrIGIvZG9jL3NyYy9zZ21sL3JlZi9hbHRlcl90YWJsZS5zZ21s CkBAIC02Miw2ICs2Miw4IEBAIEFMVEVSIFRBQkxFIFsgSUYgRVhJU1RTIF0gPHJlcGxhY2VhYmxl IGNsYXNzPSJwYXJhbWV0ZXIiPm5hbWU8L3JlcGxhY2VhYmxlPgogICAgIEFMVEVSIENPTlNUUkFJ TlQgPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPmNvbnN0cmFpbnRfbmFtZTwvcmVwbGFj ZWFibGU+IFsgSU5IRVJJVCB8IE5PIElOSEVSSVQgXQogICAgIFZBTElEQVRFIENPTlNUUkFJTlQg PHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPmNvbnN0cmFpbnRfbmFtZTwvcmVwbGFjZWFi bGU+CiAgICAgRFJPUCBDT05TVFJBSU5UIFsgSUYgRVhJU1RTIF0gIDxyZXBsYWNlYWJsZSBjbGFz cz0icGFyYW1ldGVyIj5jb25zdHJhaW50X25hbWU8L3JlcGxhY2VhYmxlPiBbIFJFU1RSSUNUIHwg Q0FTQ0FERSBdCisgICAgQUREIFBFUklPRCBGT1IgPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0 ZXIiPnBlcmlvZF9uYW1lPC9yZXBsYWNlYWJsZT4gKCA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFt ZXRlciI+c3RhcnRfY29sdW1uPC9yZXBsYWNlYWJsZT4sIDxyZXBsYWNlYWJsZSBjbGFzcz0icGFy YW1ldGVyIj5lbmRfY29sdW1uPC9yZXBsYWNlYWJsZT4gKSBbIFdJVEggKCA8cmVwbGFjZWFibGUg Y2xhc3M9InBhcmFtZXRlciI+cGVyaW9kX29wdGlvbjwvcmVwbGFjZWFibGU+ID0gPHJlcGxhY2Vh YmxlIGNsYXNzPSJwYXJhbWV0ZXIiPnZhbHVlPC9yZXBsYWNlYWJsZT4gWywgLi4uIF0gKSBdCisg ICAgRFJPUCBQRVJJT0QgRk9SIDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5wZXJpb2Rf bmFtZTwvcmVwbGFjZWFibGU+IFsgUkVTVFJJQ1QgfCBDQVNDQURFIF0KICAgICBESVNBQkxFIFRS SUdHRVIgWyA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+dHJpZ2dlcl9uYW1lPC9yZXBs YWNlYWJsZT4gfCBBTEwgfCBVU0VSIF0KICAgICBFTkFCTEUgVFJJR0dFUiBbIDxyZXBsYWNlYWJs ZSBjbGFzcz0icGFyYW1ldGVyIj50cmlnZ2VyX25hbWU8L3JlcGxhY2VhYmxlPiB8IEFMTCB8IFVT RVIgXQogICAgIEVOQUJMRSBSRVBMSUNBIFRSSUdHRVIgPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJh bWV0ZXIiPnRyaWdnZXJfbmFtZTwvcmVwbGFjZWFibGU+CkBAIC0xMTYsMTAgKzExOCwxMCBAQCBX SVRIICggTU9EVUxVUyA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+bnVtZXJpY19saXRl cmFsPC9yZXBsYWNlYWJsZT4sIFJFTQogWyBDT05TVFJBSU5UIDxyZXBsYWNlYWJsZSBjbGFzcz0i cGFyYW1ldGVyIj5jb25zdHJhaW50X25hbWU8L3JlcGxhY2VhYmxlPiBdCiB7IENIRUNLICggPHJl cGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPmV4cHJlc3Npb248L3JlcGxhY2VhYmxlPiApIFsg Tk8gSU5IRVJJVCBdIHwKICAgTk9UIE5VTEwgPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIi PmNvbHVtbl9uYW1lPC9yZXBsYWNlYWJsZT4gWyBOTyBJTkhFUklUIF0gfAotICBVTklRVUUgWyBO VUxMUyBbIE5PVCBdIERJU1RJTkNUIF0gKCA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+ Y29sdW1uX25hbWU8L3JlcGxhY2VhYmxlPiBbLCAuLi4gXSBbLCA8cmVwbGFjZWFibGUgY2xhc3M9 InBhcmFtZXRlciI+Y29sdW1uX25hbWU8L3JlcGxhY2VhYmxlPiBXSVRIT1VUIE9WRVJMQVBTIF0g KSA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+aW5kZXhfcGFyYW1ldGVyczwvcmVwbGFj ZWFibGU+IHwKLSAgUFJJTUFSWSBLRVkgKCA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+ Y29sdW1uX25hbWU8L3JlcGxhY2VhYmxlPiBbLCAuLi4gXSBbLCA8cmVwbGFjZWFibGUgY2xhc3M9 InBhcmFtZXRlciI+Y29sdW1uX25hbWU8L3JlcGxhY2VhYmxlPiBXSVRIT1VUIE9WRVJMQVBTIF0g KSA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+aW5kZXhfcGFyYW1ldGVyczwvcmVwbGFj ZWFibGU+IHwKKyAgVU5JUVVFIFsgTlVMTFMgWyBOT1QgXSBESVNUSU5DVCBdICggPHJlcGxhY2Vh YmxlIGNsYXNzPSJwYXJhbWV0ZXIiPmNvbHVtbl9uYW1lPC9yZXBsYWNlYWJsZT4gWywgLi4uIF0g WywgeyA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+Y29sdW1uX25hbWU8L3JlcGxhY2Vh YmxlPiB8IDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5wZXJpb2RfbmFtZTwvcmVwbGFj ZWFibGU+IH0gV0lUSE9VVCBPVkVSTEFQUyBdICkgPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0 ZXIiPmluZGV4X3BhcmFtZXRlcnM8L3JlcGxhY2VhYmxlPiB8CisgIFBSSU1BUlkgS0VZICggPHJl cGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPmNvbHVtbl9uYW1lPC9yZXBsYWNlYWJsZT4gWywg Li4uIF0gWywgeyA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+Y29sdW1uX25hbWU8L3Jl cGxhY2VhYmxlPiB8IDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5wZXJpb2RfbmFtZTwv cmVwbGFjZWFibGU+IH0gV0lUSE9VVCBPVkVSTEFQUyBdICkgPHJlcGxhY2VhYmxlIGNsYXNzPSJw YXJhbWV0ZXIiPmluZGV4X3BhcmFtZXRlcnM8L3JlcGxhY2VhYmxlPiB8CiAgIEVYQ0xVREUgWyBV U0lORyA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+aW5kZXhfbWV0aG9kPC9yZXBsYWNl YWJsZT4gXSAoIDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5leGNsdWRlX2VsZW1lbnQ8 L3JlcGxhY2VhYmxlPiBXSVRIIDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5vcGVyYXRv cjwvcmVwbGFjZWFibGU+IFssIC4uLiBdICkgPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIi PmluZGV4X3BhcmFtZXRlcnM8L3JlcGxhY2VhYmxlPiBbIFdIRVJFICggPHJlcGxhY2VhYmxlIGNs YXNzPSJwYXJhbWV0ZXIiPnByZWRpY2F0ZTwvcmVwbGFjZWFibGU+ICkgXSB8Ci0gIEZPUkVJR04g S0VZICggPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPmNvbHVtbl9uYW1lPC9yZXBsYWNl YWJsZT4gWywgLi4uIF0gWywgUEVSSU9EIDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5j b2x1bW5fbmFtZTwvcmVwbGFjZWFibGU+IF0gKSBSRUZFUkVOQ0VTIDxyZXBsYWNlYWJsZSBjbGFz cz0icGFyYW1ldGVyIj5yZWZ0YWJsZTwvcmVwbGFjZWFibGU+IFsgKCA8cmVwbGFjZWFibGUgY2xh c3M9InBhcmFtZXRlciI+cmVmY29sdW1uPC9yZXBsYWNlYWJsZT4gWywgLi4uIF0gIFssIFBFUklP RCA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+cmVmY29sdW1uPC9yZXBsYWNlYWJsZT4g XSApIF0KKyAgRk9SRUlHTiBLRVkgKCA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+Y29s dW1uX25hbWU8L3JlcGxhY2VhYmxlPiBbLCAuLi4gXSBbLCBQRVJJT0QgeyA8cmVwbGFjZWFibGUg Y2xhc3M9InBhcmFtZXRlciI+Y29sdW1uX25hbWU8L3JlcGxhY2VhYmxlPiB8IDxyZXBsYWNlYWJs ZSBjbGFzcz0icGFyYW1ldGVyIj5wZXJpb2RfbmFtZTwvcmVwbGFjZWFibGU+IH0gXSApIFJFRkVS RU5DRVMgPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPnJlZnRhYmxlPC9yZXBsYWNlYWJs ZT4gWyAoIDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5yZWZjb2x1bW48L3JlcGxhY2Vh YmxlPiBbLCAuLi4gXSAgWywgUEVSSU9EIHsgPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIi PnJlZmNvbHVtbjwvcmVwbGFjZWFibGU+IHwgPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIi PnBlcmlvZF9uYW1lPC9yZXBsYWNlYWJsZT4gfSBdICkgXQogICAgIFsgTUFUQ0ggRlVMTCB8IE1B VENIIFBBUlRJQUwgfCBNQVRDSCBTSU1QTEUgXSBbIE9OIERFTEVURSA8cmVwbGFjZWFibGUgY2xh c3M9InBhcmFtZXRlciI+cmVmZXJlbnRpYWxfYWN0aW9uPC9yZXBsYWNlYWJsZT4gXSBbIE9OIFVQ REFURSA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+cmVmZXJlbnRpYWxfYWN0aW9uPC9y ZXBsYWNlYWJsZT4gXSB9CiBbIERFRkVSUkFCTEUgfCBOT1QgREVGRVJSQUJMRSBdIFsgSU5JVElB TExZIERFRkVSUkVEIHwgSU5JVElBTExZIElNTUVESUFURSBdIFsgRU5GT1JDRUQgfCBOT1QgRU5G T1JDRUQgXQogCkBAIC02MjQsNiArNjI2LDI5IEBAIFdJVEggKCBNT0RVTFVTIDxyZXBsYWNlYWJs ZSBjbGFzcz0icGFyYW1ldGVyIj5udW1lcmljX2xpdGVyYWw8L3JlcGxhY2VhYmxlPiwgUkVNCiAg ICAgPC9saXN0aXRlbT4KICAgIDwvdmFybGlzdGVudHJ5PgogCisgICA8dmFybGlzdGVudHJ5IGlk PSJzcWwtYWx0ZXJ0YWJsZS1kZXNjLWFkZC1wZXJpb2QiPgorICAgIDx0ZXJtPjxsaXRlcmFsPkFE RCBQRVJJT0QgRk9SPC9saXRlcmFsPjwvdGVybT4KKyAgICA8bGlzdGl0ZW0+CisgICAgIDxwYXJh PgorICAgICAgVGhpcyBmb3JtIGFkZHMgYSBuZXcgcGVyaW9kIHRvIGEgdGFibGUgdXNpbmcgdGhl IHNhbWUgc3ludGF4IGFzCisgICAgICA8eHJlZiBsaW5rZW5kPSJzcWwtY3JlYXRldGFibGUiLz4u CisgICAgIDwvcGFyYT4KKyAgICA8L2xpc3RpdGVtPgorICAgPC92YXJsaXN0ZW50cnk+CisKKyAg IDx2YXJsaXN0ZW50cnkgaWQ9InNxbC1hbHRlcnRhYmxlLWRlc2MtZHJvcC1wZXJpb2QiPgorICAg IDx0ZXJtPjxsaXRlcmFsPkRST1AgUEVSSU9EIEZPUjwvbGl0ZXJhbD48L3Rlcm0+CisgICAgPGxp c3RpdGVtPgorICAgICA8cGFyYT4KKyAgICAgIFRoaXMgZm9ybSBkcm9wcyB0aGUgc3BlY2lmaWVk IHBlcmlvZCBvbiBhIHRhYmxlLiAgVGhlIHN0YXJ0IGFuZCBlbmQKKyAgICAgIGNvbHVtbnMgd2ls bCBub3QgYmUgZHJvcHBlZCBieSB0aGlzIGNvbW1hbmQgYnV0IHRoZQorICAgICAgPGxpdGVyYWw+ Q0hFQ0s8L2xpdGVyYWw+IGNvbnN0cmFpbnQgd2lsbCBiZS4gIFlvdSB3aWxsIG5lZWQgdG8gc2F5 CisgICAgICA8bGl0ZXJhbD5DQVNDQURFPC9saXRlcmFsPiBpZiBhbnl0aGluZyBvdXRzaWRlIHRo ZSB0YWJsZSBkZXBlbmRzIG9uIHRoZQorICAgICAgY29sdW1uLgorICAgICA8L3BhcmE+CisgICAg PC9saXN0aXRlbT4KKyAgIDwvdmFybGlzdGVudHJ5PgorCiAgICA8dmFybGlzdGVudHJ5IGlkPSJz cWwtYWx0ZXJ0YWJsZS1kZXNjLWRpc2FibGUtZW5hYmxlLXRyaWdnZXIiPgogICAgIDx0ZXJtPjxs aXRlcmFsPkRJU0FCTEU8L2xpdGVyYWw+LzxsaXRlcmFsPkVOQUJMRSBbIFJFUExJQ0EgfCBBTFdB WVMgXSBUUklHR0VSPC9saXRlcmFsPjwvdGVybT4KICAgICA8bGlzdGl0ZW0+CmRpZmYgLS1naXQg YS9kb2Mvc3JjL3NnbWwvcmVmL2NvbW1lbnQuc2dtbCBiL2RvYy9zcmMvc2dtbC9yZWYvY29tbWVu dC5zZ21sCmluZGV4IDhkODEyNDQ5MTBiLi44MmUxM2ZhZjBhNSAxMDA2NDQKLS0tIGEvZG9jL3Ny Yy9zZ21sL3JlZi9jb21tZW50LnNnbWwKKysrIGIvZG9jL3NyYy9zZ21sL3JlZi9jb21tZW50LnNn bWwKQEAgLTQ0LDYgKzQ0LDcgQEAgQ09NTUVOVCBPTgogICBPUEVSQVRPUiA8cmVwbGFjZWFibGUg Y2xhc3M9InBhcmFtZXRlciI+b3BlcmF0b3JfbmFtZTwvcmVwbGFjZWFibGU+ICg8cmVwbGFjZWFi bGUgY2xhc3M9InBhcmFtZXRlciI+bGVmdF90eXBlPC9yZXBsYWNlYWJsZT4sIDxyZXBsYWNlYWJs ZSBjbGFzcz0icGFyYW1ldGVyIj5yaWdodF90eXBlPC9yZXBsYWNlYWJsZT4pIHwKICAgT1BFUkFU T1IgQ0xBU1MgPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPm9iamVjdF9uYW1lPC9yZXBs YWNlYWJsZT4gVVNJTkcgPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPmluZGV4X21ldGhv ZDwvcmVwbGFjZWFibGU+IHwKICAgT1BFUkFUT1IgRkFNSUxZIDxyZXBsYWNlYWJsZSBjbGFzcz0i cGFyYW1ldGVyIj5vYmplY3RfbmFtZTwvcmVwbGFjZWFibGU+IFVTSU5HIDxyZXBsYWNlYWJsZSBj bGFzcz0icGFyYW1ldGVyIj5pbmRleF9tZXRob2Q8L3JlcGxhY2VhYmxlPiB8CisgIFBFUklPRCA8 cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+cmVsYXRpb25fbmFtZTwvcmVwbGFjZWFibGU+ LjxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5wZXJpb2RfbmFtZTwvcmVwbGFjZWFibGU+ IHwKICAgUE9MSUNZIDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5wb2xpY3lfbmFtZTwv cmVwbGFjZWFibGU+IE9OIDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj50YWJsZV9uYW1l PC9yZXBsYWNlYWJsZT4gfAogICBbIFBST0NFRFVSQUwgXSBMQU5HVUFHRSA8cmVwbGFjZWFibGUg Y2xhc3M9InBhcmFtZXRlciI+b2JqZWN0X25hbWU8L3JlcGxhY2VhYmxlPiB8CiAgIFBST0NFRFVS RSA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+cHJvY2VkdXJlX25hbWU8L3JlcGxhY2Vh YmxlPiBbICggWyBbIDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5hcmdtb2RlPC9yZXBs YWNlYWJsZT4gXSBbIDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5hcmduYW1lPC9yZXBs YWNlYWJsZT4gXSA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+YXJndHlwZTwvcmVwbGFj ZWFibGU+IFssIC4uLl0gXSApIF0gfApAQCAtMzQxLDYgKzM0Miw3IEBAIENPTU1FTlQgT04gT1BF UkFUT1IgXiAodGV4dCwgdGV4dCkgSVMgJ1BlcmZvcm1zIGludGVyc2VjdGlvbiBvZiB0d28gdGV4 dHMnOwogQ09NTUVOVCBPTiBPUEVSQVRPUiAtIChOT05FLCBpbnRlZ2VyKSBJUyAnVW5hcnkgbWlu dXMnOwogQ09NTUVOVCBPTiBPUEVSQVRPUiBDTEFTUyBpbnQ0b3BzIFVTSU5HIGJ0cmVlIElTICc0 IGJ5dGUgaW50ZWdlciBvcGVyYXRvcnMgZm9yIGJ0cmVlcyc7CiBDT01NRU5UIE9OIE9QRVJBVE9S IEZBTUlMWSBpbnRlZ2VyX29wcyBVU0lORyBidHJlZSBJUyAnYWxsIGludGVnZXIgb3BlcmF0b3Jz IGZvciBidHJlZXMnOworQ09NTUVOVCBPTiBQRVJJT0QgbXlfdGFibGUubXlfY29sdW1uIElTICdT YWxlcyBwcm9tb3Rpb24gdmFsaWRpdHknOwogQ09NTUVOVCBPTiBQT0xJQ1kgbXlfcG9saWN5IE9O IG15dGFibGUgSVMgJ0ZpbHRlciByb3dzIGJ5IHVzZXJzJzsKIENPTU1FTlQgT04gUFJPQ0VEVVJF IG15X3Byb2MgKGludGVnZXIsIGludGVnZXIpIElTICdSdW5zIGEgcmVwb3J0JzsKIENPTU1FTlQg T04gUFVCTElDQVRJT04gYWxsdGFibGVzIElTICdQdWJsaXNoZXMgYWxsIG9wZXJhdGlvbnMgb24g YWxsIHRhYmxlcyc7CmRpZmYgLS1naXQgYS9kb2Mvc3JjL3NnbWwvcmVmL2NyZWF0ZV90YWJsZS5z Z21sIGIvZG9jL3NyYy9zZ21sL3JlZi9jcmVhdGVfdGFibGUuc2dtbAppbmRleCBhODE3MDFhNDlm NC4uYzllY2IyOWY2MTIgMTAwNjQ0Ci0tLSBhL2RvYy9zcmMvc2dtbC9yZWYvY3JlYXRlX3RhYmxl LnNnbWwKKysrIGIvZG9jL3NyYy9zZ21sL3JlZi9jcmVhdGVfdGFibGUuc2dtbApAQCAtMjMsNiAr MjMsNyBAQCBQb3N0Z3JlU1FMIGRvY3VtZW50YXRpb24KIDxzeW5vcHNpcz4KIENSRUFURSBbIFsg R0xPQkFMIHwgTE9DQUwgXSB7IFRFTVBPUkFSWSB8IFRFTVAgfSB8IFVOTE9HR0VEIF0gVEFCTEUg WyBJRiBOT1QgRVhJU1RTIF0gPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPnRhYmxlX25h bWU8L3JlcGxhY2VhYmxlPiAoIFsKICAgeyA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+ Y29sdW1uX25hbWU8L3JlcGxhY2VhYmxlPiA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+ ZGF0YV90eXBlPC9yZXBsYWNlYWJsZT4gWyBTVE9SQUdFIHsgUExBSU4gfCBFWFRFUk5BTCB8IEVY VEVOREVEIHwgTUFJTiB8IERFRkFVTFQgfSBdIFsgQ09NUFJFU1NJT04gPHJlcGxhY2VhYmxlPmNv bXByZXNzaW9uX21ldGhvZDwvcmVwbGFjZWFibGU+IF0gWyBDT0xMQVRFIDxyZXBsYWNlYWJsZT5j b2xsYXRpb248L3JlcGxhY2VhYmxlPiBdIFsgPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIi PmNvbHVtbl9jb25zdHJhaW50PC9yZXBsYWNlYWJsZT4gWyAuLi4gXSBdCisgICAgfCA8cmVwbGFj ZWFibGU+cGVyaW9kX2RlZmluaXRpb248L3JlcGxhY2VhYmxlPgogICAgIHwgPHJlcGxhY2VhYmxl PnRhYmxlX2NvbnN0cmFpbnQ8L3JlcGxhY2VhYmxlPgogICAgIHwgTElLRSA8cmVwbGFjZWFibGU+ c291cmNlX3RhYmxlPC9yZXBsYWNlYWJsZT4gWyA8cmVwbGFjZWFibGU+bGlrZV9vcHRpb248L3Jl cGxhY2VhYmxlPiAuLi4gXSB9CiAgICAgWywgLi4uIF0KQEAgLTM3LDYgKzM4LDcgQEAgQ1JFQVRF IFsgWyBHTE9CQUwgfCBMT0NBTCBdIHsgVEVNUE9SQVJZIHwgVEVNUCB9IHwgVU5MT0dHRUQgXSBU QUJMRSBbIElGIE5PVCBFWEkKIENSRUFURSBbIFsgR0xPQkFMIHwgTE9DQUwgXSB7IFRFTVBPUkFS WSB8IFRFTVAgfSB8IFVOTE9HR0VEIF0gVEFCTEUgWyBJRiBOT1QgRVhJU1RTIF0gPHJlcGxhY2Vh YmxlIGNsYXNzPSJwYXJhbWV0ZXIiPnRhYmxlX25hbWU8L3JlcGxhY2VhYmxlPgogICAgIE9GIDxy ZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj50eXBlX25hbWU8L3JlcGxhY2VhYmxlPiBbICgK ICAgeyA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+Y29sdW1uX25hbWU8L3JlcGxhY2Vh YmxlPiBbIFdJVEggT1BUSU9OUyBdIFsgPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPmNv bHVtbl9jb25zdHJhaW50PC9yZXBsYWNlYWJsZT4gWyAuLi4gXSBdCisgICAgfCA8cmVwbGFjZWFi bGU+cGVyaW9kX2RlZmluaXRpb248L3JlcGxhY2VhYmxlPgogICAgIHwgPHJlcGxhY2VhYmxlPnRh YmxlX2NvbnN0cmFpbnQ8L3JlcGxhY2VhYmxlPiB9CiAgICAgWywgLi4uIF0KICkgXQpAQCAtNDks NiArNTEsNyBAQCBDUkVBVEUgWyBbIEdMT0JBTCB8IExPQ0FMIF0geyBURU1QT1JBUlkgfCBURU1Q IH0gfCBVTkxPR0dFRCBdIFRBQkxFIFsgSUYgTk9UIEVYSQogQ1JFQVRFIFsgWyBHTE9CQUwgfCBM T0NBTCBdIHsgVEVNUE9SQVJZIHwgVEVNUCB9IHwgVU5MT0dHRUQgXSBUQUJMRSBbIElGIE5PVCBF WElTVFMgXSA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+dGFibGVfbmFtZTwvcmVwbGFj ZWFibGU+CiAgICAgUEFSVElUSU9OIE9GIDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5w YXJlbnRfdGFibGU8L3JlcGxhY2VhYmxlPiBbICgKICAgeyA8cmVwbGFjZWFibGUgY2xhc3M9InBh cmFtZXRlciI+Y29sdW1uX25hbWU8L3JlcGxhY2VhYmxlPiBbIFdJVEggT1BUSU9OUyBdIFsgPHJl cGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPmNvbHVtbl9jb25zdHJhaW50PC9yZXBsYWNlYWJs ZT4gWyAuLi4gXSBdCisgICAgfCA8cmVwbGFjZWFibGU+cGVyaW9kX2RlZmluaXRpb248L3JlcGxh Y2VhYmxlPgogICAgIHwgPHJlcGxhY2VhYmxlPnRhYmxlX2NvbnN0cmFpbnQ8L3JlcGxhY2VhYmxl PiB9CiAgICAgWywgLi4uIF0KICkgXSB7IEZPUiBWQUxVRVMgPHJlcGxhY2VhYmxlIGNsYXNzPSJw YXJhbWV0ZXIiPnBhcnRpdGlvbl9ib3VuZF9zcGVjPC9yZXBsYWNlYWJsZT4gfCBERUZBVUxUIH0K QEAgLTczLDE1ICs3NiwyMCBAQCBDUkVBVEUgWyBbIEdMT0JBTCB8IExPQ0FMIF0geyBURU1QT1JB UlkgfCBURU1QIH0gfCBVTkxPR0dFRCBdIFRBQkxFIFsgSUYgTk9UIEVYSQogICAgIFsgT04gREVM RVRFIDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5yZWZlcmVudGlhbF9hY3Rpb248L3Jl cGxhY2VhYmxlPiBdIFsgT04gVVBEQVRFIDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5y ZWZlcmVudGlhbF9hY3Rpb248L3JlcGxhY2VhYmxlPiBdIH0KIFsgREVGRVJSQUJMRSB8IE5PVCBE RUZFUlJBQkxFIF0gWyBJTklUSUFMTFkgREVGRVJSRUQgfCBJTklUSUFMTFkgSU1NRURJQVRFIF0g WyBFTkZPUkNFRCB8IE5PVCBFTkZPUkNFRCBdCiAKKzxwaHJhc2U+YW5kIDxyZXBsYWNlYWJsZSBj bGFzcz0icGFyYW1ldGVyIj5wZXJpb2RfZGVmaW5pdGlvbjwvcmVwbGFjZWFibGU+IGlzOjwvcGhy YXNlPgorCitQRVJJT0QgRk9SIHsgPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPnBlcmlv ZF9uYW1lPC9yZXBsYWNlYWJsZT4gfCBTWVNURU1fVElNRSB9ICggPHJlcGxhY2VhYmxlIGNsYXNz PSJwYXJhbWV0ZXIiPmNvbHVtbl9uYW1lPC9yZXBsYWNlYWJsZT4sIDxyZXBsYWNlYWJsZSBjbGFz cz0icGFyYW1ldGVyIj5jb2x1bW5fbmFtZTwvcmVwbGFjZWFibGU+ICkKK1sgV0lUSCAoIDxyZXBs YWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5wZXJpb2Rfb3B0aW9uPC9yZXBsYWNlYWJsZT4gPSA8 cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+dmFsdWU8L3JlcGxhY2VhYmxlPiBbLCAuLi4g XSApIF0KKwogPHBocmFzZT5hbmQgPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPnRhYmxl X2NvbnN0cmFpbnQ8L3JlcGxhY2VhYmxlPiBpczo8L3BocmFzZT4KIAogWyBDT05TVFJBSU5UIDxy ZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5jb25zdHJhaW50X25hbWU8L3JlcGxhY2VhYmxl PiBdCiB7IENIRUNLICggPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPmV4cHJlc3Npb248 L3JlcGxhY2VhYmxlPiApIFsgTk8gSU5IRVJJVCBdIHwKICAgTk9UIE5VTEwgPHJlcGxhY2VhYmxl IGNsYXNzPSJwYXJhbWV0ZXIiPmNvbHVtbl9uYW1lPC9yZXBsYWNlYWJsZT4gWyBOTyBJTkhFUklU IF0gfAotICBVTklRVUUgWyBOVUxMUyBbIE5PVCBdIERJU1RJTkNUIF0gKCA8cmVwbGFjZWFibGUg Y2xhc3M9InBhcmFtZXRlciI+Y29sdW1uX25hbWU8L3JlcGxhY2VhYmxlPiBbLCAuLi4gXSBbLCA8 cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+Y29sdW1uX25hbWU8L3JlcGxhY2VhYmxlPiBX SVRIT1VUIE9WRVJMQVBTIF0gKSA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+aW5kZXhf cGFyYW1ldGVyczwvcmVwbGFjZWFibGU+IHwKLSAgUFJJTUFSWSBLRVkgKCA8cmVwbGFjZWFibGUg Y2xhc3M9InBhcmFtZXRlciI+Y29sdW1uX25hbWU8L3JlcGxhY2VhYmxlPiBbLCAuLi4gXSBbLCA8 cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+Y29sdW1uX25hbWU8L3JlcGxhY2VhYmxlPiBX SVRIT1VUIE9WRVJMQVBTIF0gKSA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+aW5kZXhf cGFyYW1ldGVyczwvcmVwbGFjZWFibGU+IHwKKyAgVU5JUVVFIFsgTlVMTFMgWyBOT1QgXSBESVNU SU5DVCBdICggPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPmNvbHVtbl9uYW1lPC9yZXBs YWNlYWJsZT4gWywgLi4uIF0gWywgeyA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+Y29s dW1uX25hbWU8L3JlcGxhY2VhYmxlPiB8IDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5w ZXJpb2RfbmFtZTwvcmVwbGFjZWFibGU+IH0gV0lUSE9VVCBPVkVSTEFQUyBdICkgPHJlcGxhY2Vh YmxlIGNsYXNzPSJwYXJhbWV0ZXIiPmluZGV4X3BhcmFtZXRlcnM8L3JlcGxhY2VhYmxlPiB8Cisg IFBSSU1BUlkgS0VZICggPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPmNvbHVtbl9uYW1l PC9yZXBsYWNlYWJsZT4gWywgLi4uIF0gWywgeyA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRl ciI+Y29sdW1uX25hbWU8L3JlcGxhY2VhYmxlPiB8IDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1l dGVyIj5wZXJpb2RfbmFtZTwvcmVwbGFjZWFibGU+IH0gIFdJVEhPVVQgT1ZFUkxBUFMgXSApIDxy ZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5pbmRleF9wYXJhbWV0ZXJzPC9yZXBsYWNlYWJs ZT4gfAogICBFWENMVURFIFsgVVNJTkcgPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPmlu ZGV4X21ldGhvZDwvcmVwbGFjZWFibGU+IF0gKCA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRl ciI+ZXhjbHVkZV9lbGVtZW50PC9yZXBsYWNlYWJsZT4gV0lUSCA8cmVwbGFjZWFibGUgY2xhc3M9 InBhcmFtZXRlciI+b3BlcmF0b3I8L3JlcGxhY2VhYmxlPiBbLCAuLi4gXSApIDxyZXBsYWNlYWJs ZSBjbGFzcz0icGFyYW1ldGVyIj5pbmRleF9wYXJhbWV0ZXJzPC9yZXBsYWNlYWJsZT4gWyBXSEVS RSAoIDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5wcmVkaWNhdGU8L3JlcGxhY2VhYmxl PiApIF0gfAotICBGT1JFSUdOIEtFWSAoIDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5j b2x1bW5fbmFtZTwvcmVwbGFjZWFibGU+IFssIC4uLiBdIFssIFBFUklPRCA8cmVwbGFjZWFibGUg Y2xhc3M9InBhcmFtZXRlciI+Y29sdW1uX25hbWU8L3JlcGxhY2VhYmxlPiBdICkgUkVGRVJFTkNF UyA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+cmVmdGFibGU8L3JlcGxhY2VhYmxlPiBb ICggPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPnJlZmNvbHVtbjwvcmVwbGFjZWFibGU+ IFssIC4uLiBdIFssIFBFUklPRCA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+cmVmY29s dW1uPC9yZXBsYWNlYWJsZT4gXSApIF0KKyAgRk9SRUlHTiBLRVkgKCA8cmVwbGFjZWFibGUgY2xh c3M9InBhcmFtZXRlciI+Y29sdW1uX25hbWU8L3JlcGxhY2VhYmxlPiBbLCAuLi4gXSBbLCBQRVJJ T0QgeyA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+Y29sdW1uX25hbWU8L3JlcGxhY2Vh YmxlPiB8IDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5wZXJpb2RfbmFtZTwvcmVwbGFj ZWFibGU+IH0gXSApIFJFRkVSRU5DRVMgPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPnJl ZnRhYmxlPC9yZXBsYWNlYWJsZT4gWyAoIDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5y ZWZjb2x1bW48L3JlcGxhY2VhYmxlPiBbLCAuLi4gXSBbLCBQRVJJT0QgeyA8cmVwbGFjZWFibGUg Y2xhc3M9InBhcmFtZXRlciI+cmVmY29sdW1uPC9yZXBsYWNlYWJsZT4gfCA8cmVwbGFjZWFibGUg Y2xhc3M9InBhcmFtZXRlciI+cGVyaW9kX25hbWU8L3JlcGxhY2VhYmxlPiB9IF0gKSBdCiAgICAg WyBNQVRDSCBGVUxMIHwgTUFUQ0ggUEFSVElBTCB8IE1BVENIIFNJTVBMRSBdIFsgT04gREVMRVRF IDxyZXBsYWNlYWJsZQogY2xhc3M9InBhcmFtZXRlciI+cmVmZXJlbnRpYWxfYWN0aW9uPC9yZXBs YWNlYWJsZT4gXSBbIE9OIFVQREFURSA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+cmVm ZXJlbnRpYWxfYWN0aW9uPC9yZXBsYWNlYWJsZT4gXSB9CiBbIERFRkVSUkFCTEUgfCBOT1QgREVG RVJSQUJMRSBdIFsgSU5JVElBTExZIERFRkVSUkVEIHwgSU5JVElBTExZIElNTUVESUFURSBdIFsg RU5GT1JDRUQgfCBOT1QgRU5GT1JDRUQgXQpAQCAtMTQwLDYgKzE0OCwxNCBAQCBXSVRIICggTU9E VUxVUyA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+bnVtZXJpY19saXRlcmFsPC9yZXBs YWNlYWJsZT4sIFJFTQogICAgbmFtZSBhcyBhbnkgZXhpc3RpbmcgZGF0YSB0eXBlIGluIHRoZSBz YW1lIHNjaGVtYS4KICAgPC9wYXJhPgogCisgIDxwYXJhPgorICAgUGVyaW9kcyBtYXkgYmUgZGVm aW5lZCBvbiB0YWJsZXMsIHNwZWNpZnlpbmcgdGhhdCB0d28gZXhpc3RpbmcgY29sdW1ucworICAg cmVwcmVzZW50IHN0YXJ0IGFuZCBlbmQgdmFsdWVzIGZvciB0aGUgcGVyaW9kLiAgUGVyaW9kcyBt YXkgaGF2ZSBhbnkgbmFtZQorICAgdGhhdCBkb2Vzbid0IGNvbmZsaWN0IHdpdGggYSBjb2x1bW4g bmFtZSwgYnV0IHRoZSBuYW1lCisgICA8bGl0ZXJhbD5TWVNURU1fVElNRTwvbGl0ZXJhbD4gaXMg c3BlY2lhbCwgdXNlZCBmb3IgdmVyc2lvbmluZyB0YWJsZXMuCisgICBTeXN0ZW0gcGVyaW9kcyBh cmUgbm90IHlldCBpbXBsZW1lbnRlZC4gIFNlZSA8eHJlZiBsaW5rZW5kPSJkZGwtcGVyaW9kcyIv PiBmb3IgbW9yZSBkZXRhaWxzLgorICA8L3BhcmE+CisKICAgPHBhcmE+CiAgICBUaGUgb3B0aW9u YWwgY29uc3RyYWludCBjbGF1c2VzIHNwZWNpZnkgY29uc3RyYWludHMgKHRlc3RzKSB0aGF0CiAg ICBuZXcgb3IgdXBkYXRlZCByb3dzIG11c3Qgc2F0aXNmeSBmb3IgYW4gaW5zZXJ0IG9yIHVwZGF0 ZSBvcGVyYXRpb24KQEAgLTgwMCw2ICs4MTYsMzcgQEAgV0lUSCAoIE1PRFVMVVMgPHJlcGxhY2Vh YmxlIGNsYXNzPSJwYXJhbWV0ZXIiPm51bWVyaWNfbGl0ZXJhbDwvcmVwbGFjZWFibGU+LCBSRU0K ICAgICA8L2xpc3RpdGVtPgogICAgPC92YXJsaXN0ZW50cnk+CiAKKyAgIDx2YXJsaXN0ZW50cnkg aWQ9InNxbC1jcmVhdGV0YWJsZS1wYXJtcy1wZXJpb2QiPgorICAgIDx0ZXJtPjxsaXRlcmFsPlBF UklPRCBGT1IgPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPnBlcmlvZF9uYW1lPC9yZXBs YWNlYWJsZT4gKCA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+Y29sdW1uX25hbWU8L3Jl cGxhY2VhYmxlPiwgPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPmNvbHVtbl9uYW1lPC9y ZXBsYWNlYWJsZT4gKSBbIFdJVEggKCA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+cGVy aW9kX29wdGlvbjwvcmVwbGFjZWFibGU+ID0gPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIi PnZhbHVlPC9yZXBsYWNlYWJsZT4gWywgLi4uIF0gKSBdPC9saXRlcmFsPjwvdGVybT4KKyAgICA8 bGlzdGl0ZW0+CisgICAgIDxwYXJhPgorICAgICAgQSBwZXJpb2QgZGVmaW5pdGlvbiBnaXZlcyBz ZW1hbnRpYyBtZWFuaW5nIHRvIHR3byBleGlzdGluZyBjb2x1bW5zIG9mCisgICAgICB0aGUgdGFi bGUuICBJdCBkZWZpbmVzIGEgInN0YXJ0IGNvbHVtbiIgYW5kIGFuICJlbmQgY29sdW1uIiB3aGVy ZSB0aGUKKyAgICAgIHN0YXJ0IHZhbHVlIGlzIHN0cmljdGx5IGxlc3MgdGhhbiB0aGUgZW5kIHZh bHVlLiAgQQorICAgICAgPGxpdGVyYWw+Q0hFQ0s8L2xpdGVyYWw+IGNvbnN0cmFpbnQgaXMgYXV0 b21hdGljYWxseSBjcmVhdGVkIHRvIGVuZm9yY2UKKyAgICAgIHRoaXMuICBZb3UgY2FuIHNwZWNp ZnkgdGhlIG5hbWUgb2YgdGhhdCBjb25zdHJhaW50IHdpdGggdGhlCisgICAgICA8bGl0ZXJhbD5j aGVja19jb25zdHJhaW50X25hbWU8L2xpdGVyYWw+IDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1l dGVyIj5wZXJpb2Rfb3B0aW9uPC9yZXBsYWNlYWJsZT4uCisgICAgIDwvcGFyYT4KKworICAgICA8 cGFyYT4KKyAgICAgIEJvdGggY29sdW1ucyBtdXN0IGhhdmUgZXhhY3RseSB0aGUgc2FtZSB0eXBl IGFuZCBtdXN0IGhhdmUgYSByYW5nZSB0eXBlCisgICAgICBkZWZpbmVkIGZyb20gdGhlaXIgYmFz ZSB0eXBlLiAgSWYgdGhlcmUgYXJlIHNldmVyYWwgcmFuZ2UgdHlwZXMgZm9yIHRoYXQKKyAgICAg IGJhc2UgdHlwZSwgeW91IG11c3Qgc3BlY2lmeSB3aGljaCBvbmUgeW91IHdhbnQgYnkgdXNpbmcg dGhlCisgICAgICA8bGl0ZXJhbD5yYW5nZXR5cGU8L2xpdGVyYWw+IDxyZXBsYWNlYWJsZSBjbGFz cz0icGFyYW1ldGVyIj5wZXJpb2Rfb3B0aW9uPC9yZXBsYWNlYWJsZT4uCisgICAgICBBbnkgYmFz ZSB0eXBlIGlzIGFsbG93ZWQsIGFzIGxvbmcgYXMgaXQgaGFzIGEgcmFuZ2UgdHlwZSwgYWx0aG91 Z2ggaXQgaXMKKyAgICAgIGV4cGVjdGVkIHRoYXQgbW9zdCBwZXJpb2RzIHdpbGwgdXNlIHRlbXBv cmFsIHR5cGVzIGxpa2UgPGxpdGVyYWw+dGltZXN0YW1wdHo8L2xpdGVyYWw+CisgICAgICBvciA8 bGl0ZXJhbD5kYXRlPC9saXRlcmFsPi4KKyAgICAgPC9wYXJhPgorCisgICAgIDxwYXJhPgorICAg ICAgQSBoaWRkZW4gPGxpdGVyYWw+R0VORVJBVEVEPC9saXRlcmFsPiBjb2x1bW4gaXMgdXNlZCB0 byBpbXBsZW1lbnQgdGhlIHBlcmlvZCwKKyAgICAgIHdpdGggdGhlIHNhbWUgbmFtZSBhcyB0aGUg cGVyaW9kLiAgSWYgc3VjaCBhIGNvbHVtbiBhbHJlYWR5IGV4aXN0cywgeW91CisgICAgICBjYW4g dXNlIHRoZSA8bGl0ZXJhbD5jb2xleGlzdHM8L2xpdGVyYWw+IDxyZXBsYWNlYWJsZSBjbGFzcz0i cGFyYW1ldGVyIj5wZXJpb2Rfb3B0aW9uPC9yZXBsYWNlYWJsZT4KKyAgICAgIHdpdGggdmFsdWUg PGxpdGVyYWw+dHJ1ZTwvbGl0ZXJhbD4gdG8gYXZvaWQgY3JlYXRpbmcgaXQuCisgICAgIDwvcGFy YT4KKyAgICA8L2xpc3RpdGVtPgorICAgPC92YXJsaXN0ZW50cnk+CisKICAgIDx2YXJsaXN0ZW50 cnkgaWQ9InNxbC1jcmVhdGV0YWJsZS1wYXJtcy1jb25zdHJhaW50Ij4KICAgICA8dGVybT48bGl0 ZXJhbD5DT05TVFJBSU5UIDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5jb25zdHJhaW50 X25hbWU8L3JlcGxhY2VhYmxlPjwvbGl0ZXJhbD48L3Rlcm0+CiAgICAgPGxpc3RpdGVtPgpAQCAt MTE4NCw4ICsxMjMxLDggQEAgV0lUSCAoIE1PRFVMVVMgPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJh bWV0ZXIiPm51bWVyaWNfbGl0ZXJhbDwvcmVwbGFjZWFibGU+LCBSRU0KICAgIDx2YXJsaXN0ZW50 cnkgaWQ9InNxbC1jcmVhdGV0YWJsZS1wYXJtcy1yZWZlcmVuY2VzIj4KICAgICA8dGVybT48bGl0 ZXJhbD5SRUZFUkVOQ0VTIDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5yZWZ0YWJsZTwv cmVwbGFjZWFibGU+IFsgKCA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+cmVmY29sdW1u PC9yZXBsYWNlYWJsZT4gKSBdIFsgTUFUQ0ggPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIi Pm1hdGNodHlwZTwvcmVwbGFjZWFibGU+IF0gWyBPTiBERUxFVEUgPHJlcGxhY2VhYmxlIGNsYXNz PSJwYXJhbWV0ZXIiPnJlZmVyZW50aWFsX2FjdGlvbjwvcmVwbGFjZWFibGU+IF0gWyBPTiBVUERB VEUgPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPnJlZmVyZW50aWFsX2FjdGlvbjwvcmVw bGFjZWFibGU+IF08L2xpdGVyYWw+IChjb2x1bW4gY29uc3RyYWludCk8L3Rlcm0+CiAKLSAgIDx0 ZXJtPjxsaXRlcmFsPkZPUkVJR04gS0VZICggPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIi PmNvbHVtbl9uYW1lPC9yZXBsYWNlYWJsZT4gWywgLi4uIF0gWywgUEVSSU9EIDxyZXBsYWNlYWJs ZSBjbGFzcz0icGFyYW1ldGVyIj5jb2x1bW5fbmFtZTwvcmVwbGFjZWFibGU+IF0gKQotICAgIFJF RkVSRU5DRVMgPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPnJlZnRhYmxlPC9yZXBsYWNl YWJsZT4gWyAoIDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5yZWZjb2x1bW48L3JlcGxh Y2VhYmxlPiBbLCAuLi4gXSBbLCBQRVJJT0QgPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIi PnJlZmNvbHVtbjwvcmVwbGFjZWFibGU+IF0gKSBdCisgICA8dGVybT48bGl0ZXJhbD5GT1JFSUdO IEtFWSAoIDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5jb2x1bW5fbmFtZTwvcmVwbGFj ZWFibGU+IFssIC4uLiBdIFssIFBFUklPRCB7IDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVy Ij5jb2x1bW5fbmFtZTwvcmVwbGFjZWFibGU+IHwgPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0 ZXIiPnBlcmlvZF9uYW1lPC9yZXBsYWNlYWJsZT4gfSBdICkKKyAgICBSRUZFUkVOQ0VTIDxyZXBs YWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5yZWZ0YWJsZTwvcmVwbGFjZWFibGU+IFsgKCA8cmVw bGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+cmVmY29sdW1uPC9yZXBsYWNlYWJsZT4gWywgLi4u IF0gWywgUEVSSU9EIHsgPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPnJlZmNvbHVtbjwv cmVwbGFjZWFibGU+IHwgPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPnBlcmlvZF9uYW1l PC9yZXBsYWNlYWJsZT4gfSBdICkgXQogICAgIFsgTUFUQ0ggPHJlcGxhY2VhYmxlIGNsYXNzPSJw YXJhbWV0ZXIiPm1hdGNodHlwZTwvcmVwbGFjZWFibGU+IF0KICAgICBbIE9OIERFTEVURSA8cmVw bGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+cmVmZXJlbnRpYWxfYWN0aW9uPC9yZXBsYWNlYWJs ZT4gXQogICAgIFsgT04gVVBEQVRFIDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5yZWZl cmVudGlhbF9hY3Rpb248L3JlcGxhY2VhYmxlPiBdPC9saXRlcmFsPgpAQCAtMTIwNSw3ICsxMjUy LDcgQEAgV0lUSCAoIE1PRFVMVVMgPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPm51bWVy aWNfbGl0ZXJhbDwvcmVwbGFjZWFibGU+LCBSRU0KICAgICAgPC9wYXJhPgogCiAgICAgIDxwYXJh PgotICAgICAgSWYgdGhlIGxhc3QgY29sdW1uIGlzIG1hcmtlZCB3aXRoIDxsaXRlcmFsPlBFUklP RDwvbGl0ZXJhbD4sIGl0IGlzCisgICAgICBJZiB0aGUgbGFzdCBrZXkgcGFydCBpcyBtYXJrZWQg d2l0aCA8bGl0ZXJhbD5QRVJJT0Q8L2xpdGVyYWw+LCBpdCBpcwogICAgICAgdHJlYXRlZCBpbiBh IHNwZWNpYWwgd2F5LiAgV2hpbGUgdGhlIG5vbi08bGl0ZXJhbD5QRVJJT0Q8L2xpdGVyYWw+CiAg ICAgICBjb2x1bW5zIGFyZSBjb21wYXJlZCBmb3IgZXF1YWxpdHkgKGFuZCB0aGVyZSBtdXN0IGJl IGF0IGxlYXN0IG9uZSBvZgogICAgICAgdGhlbSksIHRoZSA8bGl0ZXJhbD5QRVJJT0Q8L2xpdGVy YWw+IGNvbHVtbiBpcyBub3QuICBJbnN0ZWFkLCB0aGUKQEAgLTEyMTMsOCArMTI2MCwxMCBAQCBX SVRIICggTU9EVUxVUyA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+bnVtZXJpY19saXRl cmFsPC9yZXBsYWNlYWJsZT4sIFJFTQogICAgICAgcmVjb3JkcyAoYmFzZWQgb24gdGhlIG5vbi08 bGl0ZXJhbD5QRVJJT0Q8L2xpdGVyYWw+IHBhcnRzIG9mIHRoZSBrZXkpCiAgICAgICB3aG9zZSBj b21iaW5lZCA8bGl0ZXJhbD5QRVJJT0Q8L2xpdGVyYWw+IHZhbHVlcyBjb21wbGV0ZWx5IGNvdmVy IHRoZQogICAgICAgcmVmZXJlbmNpbmcgcmVjb3JkJ3MuICBJbiBvdGhlciB3b3JkcywgdGhlIHJl ZmVyZW5jZSBtdXN0IGhhdmUgYQotICAgICAgcmVmZXJlbnQgZm9yIGl0cyBlbnRpcmUgZHVyYXRp b24uICBUaGlzIGNvbHVtbiBtdXN0IGJlIGEgcmFuZ2Ugb3IKLSAgICAgIG11bHRpcmFuZ2UgdHlw ZS4gIEluIGFkZGl0aW9uLCB0aGUgcmVmZXJlbmNlZCB0YWJsZSBtdXN0IGhhdmUgYSBwcmltYXJ5 CisgICAgICByZWZlcmVudCBmb3IgaXRzIGVudGlyZSBkdXJhdGlvbi4gIFRoaXMgcGFydCBtdXN0 IGJlIGVpdGhlciBhCisgICAgICA8bGluayBsaW5rZW5kPSJzcWwtY3JlYXRldGFibGUtcGFybXMt cGVyaW9kIj48bGl0ZXJhbD5QRVJJT0Q8L2xpdGVyYWw+PC9saW5rPgorICAgICAgb3IgYSBjb2x1 bW4gd2l0aCBhIHJhbmdlIG9yIG11bHRpcmFuZ2UgdHlwZS4KKyAgICAgIEluIGFkZGl0aW9uLCB0 aGUgcmVmZXJlbmNlZCB0YWJsZSBtdXN0IGhhdmUgYSBwcmltYXJ5CiAgICAgICBrZXkgb3IgdW5p cXVlIGNvbnN0cmFpbnQgZGVjbGFyZWQgd2l0aCA8bGl0ZXJhbD5XSVRIT1VUCiAgICAgICBPVkVS TEFQUzwvbGl0ZXJhbD4uIEZpbmFsbHksIGlmIHRoZSBmb3JlaWduIGtleSBoYXMgYSBQRVJJT0QK ICAgICAgIDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5jb2x1bW5fbmFtZTwvcmVwbGFj ZWFibGU+IHNwZWNpZmljYXRpb24KZGlmZiAtLWdpdCBhL2RvYy9zcmMvc2dtbC9yZWYvZGVsZXRl LnNnbWwgYi9kb2Mvc3JjL3NnbWwvcmVmL2RlbGV0ZS5zZ21sCmluZGV4IDhkZDUxYWFjY2UyLi5m NTRhNzlkN2U0NiAxMDA2NDQKLS0tIGEvZG9jL3NyYy9zZ21sL3JlZi9kZWxldGUuc2dtbAorKysg Yi9kb2Mvc3JjL3NnbWwvcmVmL2RlbGV0ZS5zZ21sCkBAIC0yMyw3ICsyMyw3IEBAIFBvc3RncmVT UUwgZG9jdW1lbnRhdGlvbgogPHN5bm9wc2lzPgogWyBXSVRIIFsgUkVDVVJTSVZFIF0gPHJlcGxh Y2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPndpdGhfcXVlcnk8L3JlcGxhY2VhYmxlPiBbLCAuLi5d IF0KIERFTEVURSBGUk9NIFsgT05MWSBdIDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj50 YWJsZV9uYW1lPC9yZXBsYWNlYWJsZT4gWyAqIF0KLSAgICBbIEZPUiBQT1JUSU9OIE9GIDxyZXBs YWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5yYW5nZV9uYW1lPC9yZXBsYWNlYWJsZT4gPHJlcGxh Y2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPmZvcl9wb3J0aW9uX29mX3RhcmdldDwvcmVwbGFjZWFi bGU+IF0KKyAgICBbIEZPUiBQT1JUSU9OIE9GIDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVy Ij5yYW5nZV9vcl9wZXJpb2RfbmFtZTwvcmVwbGFjZWFibGU+IDxyZXBsYWNlYWJsZSBjbGFzcz0i cGFyYW1ldGVyIj5mb3JfcG9ydGlvbl9vZl90YXJnZXQ8L3JlcGxhY2VhYmxlPiBdCiAgICAgWyBb IEFTIF0gPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPmFsaWFzPC9yZXBsYWNlYWJsZT4g XQogICAgIFsgVVNJTkcgPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPmZyb21faXRlbTwv cmVwbGFjZWFibGU+IFssIC4uLl0gXQogICAgIFsgV0hFUkUgPHJlcGxhY2VhYmxlIGNsYXNzPSJw YXJhbWV0ZXIiPmNvbmRpdGlvbjwvcmVwbGFjZWFibGU+IHwgV0hFUkUgQ1VSUkVOVCBPRiA8cmVw bGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+Y3Vyc29yX25hbWU8L3JlcGxhY2VhYmxlPiBdCkBA IC01OCw3ICs1OCw4IEBAIERFTEVURSBGUk9NIFsgT05MWSBdIDxyZXBsYWNlYWJsZSBjbGFzcz0i cGFyYW1ldGVyIj50YWJsZV9uYW1lPC9yZXBsYWNlYWJsZT4gWyAqCiAgIDwvcGFyYT4KIAogICA8 cGFyYT4KLSAgIElmIHRoZSB0YWJsZSBoYXMgYSByYW5nZSBvciBtdWx0aXJhbmdlIGNvbHVtbiwK KyAgIElmIHRoZSB0YWJsZSBoYXMgYSByYW5nZSBvciBtdWx0aXJhbmdlIGNvbHVtbiwgb3IgYQor ICAgPGxpbmsgbGlua2VuZD0iZGRsLXBlcmlvZHMiPjxsaXRlcmFsPlBFUklPRDwvbGl0ZXJhbD48 L2xpbms+LAogICAgeW91IG1heSBzdXBwbHkgYSA8bGl0ZXJhbD5GT1IgUE9SVElPTiBPRjwvbGl0 ZXJhbD4gY2xhdXNlLCBhbmQgdGhlIGRlbGV0ZSB3aWxsCiAgICBvbmx5IGFmZmVjdCByb3dzIHRo YXQgb3ZlcmxhcCB0aGUgZ2l2ZW4gaW50ZXJ2YWwuIEZ1cnRoZXJtb3JlLCBpZiBhIHJvdydzIGhp c3RvcnkKICAgIGV4dGVuZHMgb3V0c2lkZSB0aGUgPGxpdGVyYWw+Rk9SIFBPUlRJT04gT0Y8L2xp dGVyYWw+IGJvdW5kcywgdGhlbiB0aGUgZGVsZXRlCkBAIC03Miw3ICs3Myw4IEBAIERFTEVURSBG Uk9NIFsgT05MWSBdIDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj50YWJsZV9uYW1lPC9y ZXBsYWNlYWJsZT4gWyAqCiAgICBuZXcgPGdsb3NzdGVybSBsaW5rZW5kPSJnbG9zc2FyeS10ZW1w b3JhbC1sZWZ0b3ZlcnMiPnRlbXBvcmFsIGxlZnRvdmVyczwvZ2xvc3N0ZXJtPjoKICAgIHJvd3Mg d2hvc2UgcmFuZ2Ugb3IgbXVsdGlyYW5nZSByZWNlaXZlcyB0aGUgcmVtYWluaW5nIGhpc3Rvcnkg b3V0c2lkZQogICAgdGhlIHRhcmdldGVkIDxsaXRlcmFsPkZST008L2xpdGVyYWw+LzxsaXRlcmFs PlRPPC9saXRlcmFsPiBib3VuZHMsIHdpdGggdGhlCi0gICBvcmlnaW5hbCB2YWx1ZXMgaW4gdGhl aXIgb3RoZXIgY29sdW1ucy4gRm9yIHJhbmdlIGNvbHVtbnMsIHRoZXJlIHdpbGwgYmUgemVybwor ICAgb3JpZ2luYWwgdmFsdWVzIGluIHRoZWlyIG90aGVyIGNvbHVtbnMuIEZvciByYW5nZSBjb2x1 bW5zIGFuZAorICAgPGxpdGVyYWw+UEVSSU9EPC9saXRlcmFsPnMsIHRoZXJlIHdpbGwgYmUgemVy bwogICAgdG8gdHdvIGluc2VydGVkIHJlY29yZHMsIGRlcGVuZGluZyBvbiB3aGV0aGVyIHRoZSBv cmlnaW5hbCBoaXN0b3J5IHdhcwogICAgY29tcGxldGVseSBkZWxldGVkLCBleHRlbmRlZCBiZWZv cmUvYWZ0ZXIgdGhlIGNoYW5nZSwgb3IgYm90aC4gRm9yCiAgICBpbnN0YW5jZSBnaXZlbiBhbiBv cmlnaW5hbCByYW5nZSBvZiA8bGl0ZXJhbD5bMiw2KTwvbGl0ZXJhbD4sIGEgZGVsZXRlIG9mCkBA IC0xNjIsMTAgKzE2NCwxMCBAQCBERUxFVEUgRlJPTSBbIE9OTFkgXSA8cmVwbGFjZWFibGUgY2xh c3M9InBhcmFtZXRlciI+dGFibGVfbmFtZTwvcmVwbGFjZWFibGU+IFsgKgogICAgPC92YXJsaXN0 ZW50cnk+CiAKICAgIDx2YXJsaXN0ZW50cnk+Ci0gICAgPHRlcm0+PHJlcGxhY2VhYmxlIGNsYXNz PSJwYXJhbWV0ZXIiPnJhbmdlX25hbWU8L3JlcGxhY2VhYmxlPjwvdGVybT4KKyAgICA8dGVybT48 cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+cmFuZ2Vfb3JfcGVyaW9kX25hbWU8L3JlcGxh Y2VhYmxlPjwvdGVybT4KICAgICA8bGlzdGl0ZW0+CiAgICAgIDxwYXJhPgotICAgICAgVGhlIHJh bmdlIG9yIG11bHRpcmFuZ2UgY29sdW1uIHRvIHVzZSB3aGVuIHBlcmZvcm1pbmcgYSB0ZW1wb3Jh bCBkZWxldGUuCisgICAgICBUaGUgcmFuZ2Ugb3IgbXVsdGlyYW5nZSBjb2x1bW4gb3IgcGVyaW9k IHRvIHVzZSB3aGVuIHBlcmZvcm1pbmcgYSB0ZW1wb3JhbCBkZWxldGUuCiAgICAgIDwvcGFyYT4K ICAgICA8L2xpc3RpdGVtPgogICAgPC92YXJsaXN0ZW50cnk+CkBAIC0xNzQsMTQgKzE3NiwxNCBA QCBERUxFVEUgRlJPTSBbIE9OTFkgXSA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+dGFi bGVfbmFtZTwvcmVwbGFjZWFibGU+IFsgKgogICAgIDx0ZXJtPjxyZXBsYWNlYWJsZSBjbGFzcz0i cGFyYW1ldGVyIj5mb3JfcG9ydGlvbl9vZl90YXJnZXQ8L3JlcGxhY2VhYmxlPjwvdGVybT4KICAg ICA8bGlzdGl0ZW0+CiAgICAgIDxwYXJhPgotICAgICAgVGhlIGludGVydmFsIHRvIGRlbGV0ZS4g SWYgeW91IGFyZSB0YXJnZXRpbmcgYSByYW5nZSBjb2x1bW4sCisgICAgICBUaGUgaW50ZXJ2YWwg dG8gZGVsZXRlLiBJZiB5b3UgYXJlIHRhcmdldGluZyBhIHJhbmdlIGNvbHVtbiBvciA8bGl0ZXJh bD5QRVJJT0Q8L2xpdGVyYWw+LAogICAgICAgeW91IG1heSBnaXZlIHRoaXMgaW4gdGhlIGZvcm0g PGxpdGVyYWw+RlJPTTwvbGl0ZXJhbD4KICAgICAgIDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1l dGVyIj5zdGFydF90aW1lPC9yZXBsYWNlYWJsZT4gPGxpdGVyYWw+VE88L2xpdGVyYWw+CiAgICAg ICA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+ZW5kX3RpbWU8L3JlcGxhY2VhYmxlPi4K ICAgICAgIE90aGVyd2lzZSB5b3UgbXVzdCB1c2UKICAgICAgIDxsaXRlcmFsPig8L2xpdGVyYWw+ PHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPmV4cHJlc3Npb248L3JlcGxhY2VhYmxlPjxs aXRlcmFsPik8L2xpdGVyYWw+CiAgICAgICB3aGVyZSB0aGUgZXhwcmVzc2lvbiB5aWVsZHMgYSB2 YWx1ZSBvZiB0aGUgc2FtZSB0eXBlIGFzCi0gICAgICA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFt ZXRlciI+cmFuZ2VfbmFtZTwvcmVwbGFjZWFibGU+LgorICAgICAgPHJlcGxhY2VhYmxlIGNsYXNz PSJwYXJhbWV0ZXIiPnJhbmdlX29yX3BlcmlvZF9uYW1lPC9yZXBsYWNlYWJsZT4uCiAgICAgIDwv cGFyYT4KICAgICA8L2xpc3RpdGVtPgogICAgPC92YXJsaXN0ZW50cnk+CkBAIC0xOTEsOCArMTkz LDggQEAgREVMRVRFIEZST00gWyBPTkxZIF0gPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIi PnRhYmxlX25hbWU8L3JlcGxhY2VhYmxlPiBbICoKICAgICA8bGlzdGl0ZW0+CiAgICAgIDxwYXJh PgogICAgICAgVGhlIGVhcmxpZXN0IHRpbWUgKGluY2x1c2l2ZSkgdG8gY2hhbmdlIGluIGEgdGVt cG9yYWwgZGVsZXRlLgotICAgICAgVGhpcyBtdXN0IGJlIGEgdmFsdWUgbWF0Y2hpbmcgdGhlIGJh c2UgdHlwZSBvZiB0aGUgcmFuZ2UgZnJvbQotICAgICAgPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJh bWV0ZXIiPnJhbmdlX25hbWU8L3JlcGxhY2VhYmxlPi4gQQorICAgICAgVGhpcyBtdXN0IGJlIGEg dmFsdWUgbWF0Y2hpbmcgdGhlIGJhc2UgdHlwZSBvZiB0aGUgcmFuZ2Ugb3IgcGVyaW9kIGZyb20K KyAgICAgIDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5yYW5nZV9vcl9wZXJpb2RfbmFt ZTwvcmVwbGFjZWFibGU+LiBBCiAgICAgICA8bGl0ZXJhbD5OVUxMPC9saXRlcmFsPiBoZXJlIGlu ZGljYXRlcyBhIGRlbGV0ZSB3aG9zZSBiZWdpbm5pbmcgaXMKICAgICAgIHVuYm91bmRlZCAoYXMg d2l0aCByYW5nZSB0eXBlcykuCiAgICAgIDwvcGFyYT4KQEAgLTIwNCw4ICsyMDYsOCBAQCBERUxF VEUgRlJPTSBbIE9OTFkgXSA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+dGFibGVfbmFt ZTwvcmVwbGFjZWFibGU+IFsgKgogICAgIDxsaXN0aXRlbT4KICAgICAgPHBhcmE+CiAgICAgICBU aGUgbGF0ZXN0IHRpbWUgKGV4Y2x1c2l2ZSkgdG8gY2hhbmdlIGluIGEgdGVtcG9yYWwgZGVsZXRl LgotICAgICAgVGhpcyBtdXN0IGJlIGEgdmFsdWUgbWF0Y2hpbmcgdGhlIGJhc2UgdHlwZSBvZiB0 aGUgcmFuZ2UgZnJvbQotICAgICAgPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPnJhbmdl X25hbWU8L3JlcGxhY2VhYmxlPi4gQQorICAgICAgVGhpcyBtdXN0IGJlIGEgdmFsdWUgbWF0Y2hp bmcgdGhlIGJhc2UgdHlwZSBvZiB0aGUgcmFuZ2Ugb3IgcGVyaW9kIGZyb20KKyAgICAgIDxyZXBs YWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5yYW5nZV9vcl9wZXJpb2RfbmFtZTwvcmVwbGFjZWFi bGU+LiBBCiAgICAgICA8bGl0ZXJhbD5OVUxMPC9saXRlcmFsPiBoZXJlIGluZGljYXRlcyBhIGRl bGV0ZSB3aG9zZSBlbmQgaXMgdW5ib3VuZGVkCiAgICAgICAoYXMgd2l0aCByYW5nZSB0eXBlcyku CiAgICAgIDwvcGFyYT4KZGlmZiAtLWdpdCBhL2RvYy9zcmMvc2dtbC9yZWYvdXBkYXRlLnNnbWwg Yi9kb2Mvc3JjL3NnbWwvcmVmL3VwZGF0ZS5zZ21sCmluZGV4IGExNWYyMWRmMWIyLi45MjkwN2Fh NGY2NyAxMDA2NDQKLS0tIGEvZG9jL3NyYy9zZ21sL3JlZi91cGRhdGUuc2dtbAorKysgYi9kb2Mv c3JjL3NnbWwvcmVmL3VwZGF0ZS5zZ21sCkBAIC0yMyw3ICsyMyw3IEBAIFBvc3RncmVTUUwgZG9j dW1lbnRhdGlvbgogPHN5bm9wc2lzPgogWyBXSVRIIFsgUkVDVVJTSVZFIF0gPHJlcGxhY2VhYmxl IGNsYXNzPSJwYXJhbWV0ZXIiPndpdGhfcXVlcnk8L3JlcGxhY2VhYmxlPiBbLCAuLi5dIF0KIFVQ REFURSBbIE9OTFkgXSA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+dGFibGVfbmFtZTwv cmVwbGFjZWFibGU+IFsgKiBdCi0gICAgWyBGT1IgUE9SVElPTiBPRiA8cmVwbGFjZWFibGUgY2xh c3M9InBhcmFtZXRlciI+cmFuZ2VfbmFtZTwvcmVwbGFjZWFibGU+IDxyZXBsYWNlYWJsZSBjbGFz cz0icGFyYW1ldGVyIj5mb3JfcG9ydGlvbl9vZl90YXJnZXQ8L3JlcGxhY2VhYmxlPiBdCisgICAg WyBGT1IgUE9SVElPTiBPRiA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+cmFuZ2Vfb3Jf cGVyaW9kX25hbWU8L3JlcGxhY2VhYmxlPiA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+ Zm9yX3BvcnRpb25fb2ZfdGFyZ2V0PC9yZXBsYWNlYWJsZT4gXQogICAgIFsgWyBBUyBdIDxyZXBs YWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5hbGlhczwvcmVwbGFjZWFibGU+IF0KICAgICBTRVQg eyA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+Y29sdW1uX25hbWU8L3JlcGxhY2VhYmxl PiA9IHsgPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPmV4cHJlc3Npb248L3JlcGxhY2Vh YmxlPiB8IERFRkFVTFQgfSB8CiAgICAgICAgICAgKCA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFt ZXRlciI+Y29sdW1uX25hbWU8L3JlcGxhY2VhYmxlPiBbLCAuLi5dICkgPSBbIFJPVyBdICggeyA8 cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+ZXhwcmVzc2lvbjwvcmVwbGFjZWFibGU+IHwg REVGQVVMVCB9IFssIC4uLl0gKSB8CkBAIC01NSw3ICs1NSw4IEBAIFVQREFURSBbIE9OTFkgXSA8 cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+dGFibGVfbmFtZTwvcmVwbGFjZWFibGU+IFsg KiBdCiAgIDwvcGFyYT4KIAogICA8cGFyYT4KLSAgIElmIHRoZSB0YWJsZSBoYXMgYSByYW5nZSBv ciBtdWx0aXJhbmdlIGNvbHVtbiwKKyAgIElmIHRoZSB0YWJsZSBoYXMgYSByYW5nZSBvciBtdWx0 aXJhbmdlIGNvbHVtbiwgb3IgYQorICAgPGxpbmsgbGlua2VuZD0iZGRsLXBlcmlvZHMiPjxsaXRl cmFsPlBFUklPRDwvbGl0ZXJhbD48L2xpbms+LAogICAgeW91IG1heSBzdXBwbHkgYSA8bGl0ZXJh bD5GT1IgUE9SVElPTiBPRjwvbGl0ZXJhbD4gY2xhdXNlLCBhbmQgdGhlIHVwZGF0ZSB3aWxsCiAg ICBvbmx5IGFmZmVjdCByb3dzIHRoYXQgb3ZlcmxhcCB0aGUgZ2l2ZW4gaW50ZXJ2YWwuIEZ1cnRo ZXJtb3JlLCBpZiBhIHJvdydzIGhpc3RvcnkKICAgIGV4dGVuZHMgb3V0c2lkZSB0aGUgPGxpdGVy YWw+Rk9SIFBPUlRJT04gT0Y8L2xpdGVyYWw+IGJvdW5kcywgdGhlbiB0aGUgdXBkYXRlCkBAIC03 MSw3ICs3Miw4IEBAIFVQREFURSBbIE9OTFkgXSA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRl ciI+dGFibGVfbmFtZTwvcmVwbGFjZWFibGU+IFsgKiBdCiAgICBuZXcgPGdsb3NzdGVybSBsaW5r ZW5kPSJnbG9zc2FyeS10ZW1wb3JhbC1sZWZ0b3ZlcnMiPnRlbXBvcmFsIGxlZnRvdmVyczwvZ2xv c3N0ZXJtPjoKICAgIHJvd3Mgd2hvc2UgcmFuZ2Ugb3IgbXVsdGlyYW5nZSByZWNlaXZlcyB0aGUg cmVtYWluaW5nIGhpc3Rvcnkgb3V0c2lkZQogICAgdGhlIHRhcmdldGVkIDxsaXRlcmFsPkZST008 L2xpdGVyYWw+LzxsaXRlcmFsPlRPPC9saXRlcmFsPiBib3VuZHMsIHdpdGggdGhlCi0gICBvcmln aW5hbCB2YWx1ZXMgaW4gdGhlaXIgb3RoZXIgY29sdW1ucy4gRm9yIHJhbmdlIGNvbHVtbnMsIHRo ZXJlIHdpbGwgYmUgemVybworICAgb3JpZ2luYWwgdmFsdWVzIGluIHRoZWlyIG90aGVyIGNvbHVt bnMuIEZvciByYW5nZSBjb2x1bW5zIGFuZAorICAgPGxpdGVyYWw+UEVSSU9EPC9saXRlcmFsPnMs IHRoZXJlIHdpbGwgYmUgemVybwogICAgdG8gdHdvIGluc2VydGVkIHJlY29yZHMsIGRlcGVuZGlu ZyBvbiB3aGV0aGVyIHRoZSBvcmlnaW5hbCBoaXN0b3J5IHdhcwogICAgY29tcGxldGVseSB1cGRh dGVkLCBleHRlbmRlZCBiZWZvcmUvYWZ0ZXIgdGhlIGNoYW5nZSwgb3IgYm90aC4gRm9yCiAgICBp bnN0YW5jZSBnaXZlbiBhbiBvcmlnaW5hbCByYW5nZSBvZiA8bGl0ZXJhbD5bMiw2KTwvbGl0ZXJh bD4sIGFuIHVwZGF0ZSBvZgpAQCAtMTYzLDEwICsxNjUsMTAgQEAgVVBEQVRFIFsgT05MWSBdIDxy ZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj50YWJsZV9uYW1lPC9yZXBsYWNlYWJsZT4gWyAq IF0KICAgIDwvdmFybGlzdGVudHJ5PgogCiAgICA8dmFybGlzdGVudHJ5PgotICAgIDx0ZXJtPjxy ZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5yYW5nZV9uYW1lPC9yZXBsYWNlYWJsZT48L3Rl cm0+CisgICAgPHRlcm0+PHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPnJhbmdlX29yX3Bl cmlvZF9uYW1lPC9yZXBsYWNlYWJsZT48L3Rlcm0+CiAgICAgPGxpc3RpdGVtPgogICAgICA8cGFy YT4KLSAgICAgIFRoZSByYW5nZSBvciBtdWx0aXJhbmdlIGNvbHVtbiB0byB1c2Ugd2hlbiBwZXJm b3JtaW5nIGEgdGVtcG9yYWwgdXBkYXRlLgorICAgICAgVGhlIHJhbmdlIG9yIG11bHRpcmFuZ2Ug Y29sdW1uIG9yIHBlcmlvZCB0byB1c2Ugd2hlbiBwZXJmb3JtaW5nIGEgdGVtcG9yYWwgdXBkYXRl LgogICAgICA8L3BhcmE+CiAgICAgPC9saXN0aXRlbT4KICAgIDwvdmFybGlzdGVudHJ5PgpAQCAt MTc1LDE0ICsxNzcsMTQgQEAgVVBEQVRFIFsgT05MWSBdIDxyZXBsYWNlYWJsZSBjbGFzcz0icGFy YW1ldGVyIj50YWJsZV9uYW1lPC9yZXBsYWNlYWJsZT4gWyAqIF0KICAgICA8dGVybT48cmVwbGFj ZWFibGUgY2xhc3M9InBhcmFtZXRlciI+Zm9yX3BvcnRpb25fb2ZfdGFyZ2V0PC9yZXBsYWNlYWJs ZT48L3Rlcm0+CiAgICAgPGxpc3RpdGVtPgogICAgICA8cGFyYT4KLSAgICAgIFRoZSBpbnRlcnZh bCB0byB1cGRhdGUuIElmIHlvdSBhcmUgdGFyZ2V0aW5nIGEgcmFuZ2UgY29sdW1uLAorICAgICAg VGhlIGludGVydmFsIHRvIHVwZGF0ZS4gSWYgeW91IGFyZSB0YXJnZXRpbmcgYSByYW5nZSBjb2x1 bW4gb3IgPGxpdGVyYWw+UEVSSU9EPC9saXRlcmFsPiwKICAgICAgIHlvdSBtYXkgZ2l2ZSB0aGlz IGluIHRoZSBmb3JtIDxsaXRlcmFsPkZST008L2xpdGVyYWw+CiAgICAgICA8cmVwbGFjZWFibGUg Y2xhc3M9InBhcmFtZXRlciI+c3RhcnRfdGltZTwvcmVwbGFjZWFibGU+IDxsaXRlcmFsPlRPPC9s aXRlcmFsPgogICAgICAgPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPmVuZF90aW1lPC9y ZXBsYWNlYWJsZT4uCiAgICAgICBPdGhlcndpc2UgeW91IG11c3QgdXNlCiAgICAgICA8bGl0ZXJh bD4oPC9saXRlcmFsPjxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5leHByZXNzaW9uPC9y ZXBsYWNlYWJsZT48bGl0ZXJhbD4pPC9saXRlcmFsPgogICAgICAgd2hlcmUgdGhlIGV4cHJlc3Np b24geWllbGRzIGEgdmFsdWUgb2YgdGhlIHNhbWUgdHlwZSBhcwotICAgICAgPHJlcGxhY2VhYmxl IGNsYXNzPSJwYXJhbWV0ZXIiPnJhbmdlX25hbWU8L3JlcGxhY2VhYmxlPi4KKyAgICAgIDxyZXBs YWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5yYW5nZV9vcl9wZXJpb2RfbmFtZTwvcmVwbGFjZWFi bGU+LgogICAgICA8L3BhcmE+CiAgICAgPC9saXN0aXRlbT4KICAgIDwvdmFybGlzdGVudHJ5PgpA QCAtMTkyLDggKzE5NCw4IEBAIFVQREFURSBbIE9OTFkgXSA8cmVwbGFjZWFibGUgY2xhc3M9InBh cmFtZXRlciI+dGFibGVfbmFtZTwvcmVwbGFjZWFibGU+IFsgKiBdCiAgICAgPGxpc3RpdGVtPgog ICAgICA8cGFyYT4KICAgICAgIFRoZSBlYXJsaWVzdCB0aW1lIChpbmNsdXNpdmUpIHRvIGNoYW5n ZSBpbiBhIHRlbXBvcmFsIHVwZGF0ZS4KLSAgICAgIFRoaXMgbXVzdCBiZSBhIHZhbHVlIG1hdGNo aW5nIHRoZSBiYXNlIHR5cGUgb2YgdGhlIHJhbmdlIGZyb20KLSAgICAgIDxyZXBsYWNlYWJsZSBj bGFzcz0icGFyYW1ldGVyIj5yYW5nZV9uYW1lPC9yZXBsYWNlYWJsZT4uIEEKKyAgICAgIFRoaXMg bXVzdCBiZSBhIHZhbHVlIG1hdGNoaW5nIHRoZSBiYXNlIHR5cGUgb2YgdGhlIHJhbmdlIG9yIHBl cmlvZCBmcm9tCisgICAgICA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+cmFuZ2Vfb3Jf cGVyaW9kX25hbWU8L3JlcGxhY2VhYmxlPi4gQQogICAgICAgPGxpdGVyYWw+TlVMTDwvbGl0ZXJh bD4gaGVyZSBpbmRpY2F0ZXMgYW4gdXBkYXRlIHdob3NlIGJlZ2lubmluZyBpcwogICAgICAgdW5i b3VuZGVkIChhcyB3aXRoIHJhbmdlIHR5cGVzKS4KICAgICAgPC9wYXJhPgpAQCAtMjA1LDggKzIw Nyw4IEBAIFVQREFURSBbIE9OTFkgXSA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRlciI+dGFi bGVfbmFtZTwvcmVwbGFjZWFibGU+IFsgKiBdCiAgICAgPGxpc3RpdGVtPgogICAgICA8cGFyYT4K ICAgICAgIFRoZSBsYXRlc3QgdGltZSAoZXhjbHVzaXZlKSB0byBjaGFuZ2UgaW4gYSB0ZW1wb3Jh bCB1cGRhdGUuCi0gICAgICBUaGlzIG11c3QgYmUgYSB2YWx1ZSBtYXRjaGluZyB0aGUgYmFzZSB0 eXBlIG9mIHRoZSByYW5nZSBmcm9tCi0gICAgICA8cmVwbGFjZWFibGUgY2xhc3M9InBhcmFtZXRl ciI+cmFuZ2VfbmFtZTwvcmVwbGFjZWFibGU+LiBBCisgICAgICBUaGlzIG11c3QgYmUgYSB2YWx1 ZSBtYXRjaGluZyB0aGUgYmFzZSB0eXBlIG9mIHRoZSByYW5nZSBvciBwZXJpb2QgZnJvbQorICAg ICAgPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPnJhbmdlX29yX3BlcmlvZF9uYW1lPC9y ZXBsYWNlYWJsZT4uIEEKICAgICAgIDxsaXRlcmFsPk5VTEw8L2xpdGVyYWw+IGhlcmUgaW5kaWNh dGVzIGFuIHVwZGF0ZSB3aG9zZSBlbmQgaXMgdW5ib3VuZGVkCiAgICAgICAoYXMgd2l0aCByYW5n ZSB0eXBlcykuCiAgICAgIDwvcGFyYT4KZGlmZiAtLWdpdCBhL2RvYy9zcmMvc2dtbC90cmlnZ2Vy LnNnbWwgYi9kb2Mvc3JjL3NnbWwvdHJpZ2dlci5zZ21sCmluZGV4IGNmYzA4NGIzNGM2Li43MmY3 OTE4ZGNjMSAxMDA2NDQKLS0tIGEvZG9jL3NyYy9zZ21sL3RyaWdnZXIuc2dtbAorKysgYi9kb2Mv c3JjL3NnbWwvdHJpZ2dlci5zZ21sCkBAIC04NjAsMTYgKzg2MCwyMSBAQCB0eXBlZGVmIHN0cnVj dCBGb3JQb3J0aW9uT2ZTdGF0ZQogCiAgICAgY2hhciAgICAgICAqZnBfcmFuZ2VOYW1lOyAgIC8q IHRoZSBjb2x1bW4gbmFtZWQgaW4gRk9SIFBPUlRJT04gT0YgKi8KICAgICBPaWQgICAgICAgICBm cF9yYW5nZVR5cGU7ICAgLyogdGhlIHR5cGUgb2YgdGhlIEZPUiBQT1JUSU9OIE9GIGV4cHJlc3Np b24gKi8KLSAgICBpbnQgICAgICAgICBmcF9yYW5nZUF0dG5vOyAgLyogdGhlIGF0dG5vIG9mIHRo ZSByYW5nZSBjb2x1bW4gKi8KKyAgICBpbnQgICAgICAgICBmcF9yYW5nZUF0dG5vOyAgLyogdGhl IGF0dG5vIG9mIHRoZSByYW5nZSBjb2x1bW4gKG9yIDAgZm9yIGEgUEVSSU9EKSAqLworICAgIGlu dCAgICAgICAgIGZwX3BlcmlvZFN0YXJ0QXR0bm87ICAgIC8qIHRoZSBhdHRubyBvZiB0aGUgUEVS SU9EIHN0YXJ0IGNvbHVtbiAob3IgMCBmb3IgYSByYW5nZSkgKi8KKyAgICBpbnQgICAgICAgICBm cF9wZXJpb2RFbmRBdHRubzsgICAgICAvKiB0aGUgYXR0bm8gb2YgdGhlIFBFUklPRCBlbmQgY29s dW1uIChvciAwIGZvciBhIHJhbmdlKSAqLwogICAgIERhdHVtICAgICAgIGZwX3RhcmdldFJhbmdl OyAvKiB0aGUgcmFuZ2UvbXVsdGlyYW5nZSBmcm9tIEZPUiBQT1JUSU9OIE9GICovCiAgICAgVHlw ZUNhY2hlRW50cnkgKmZwX2xlZnRvdmVyc3R5cGNhY2hlOyAgIC8qIHR5cGUgY2FjaGUgZW50cnkg b2YgdGhlIHJhbmdlICovCiB9IEZvclBvcnRpb25PZlN0YXRlOwogPC9wcm9ncmFtbGlzdGluZz4K IAotICAgICAgIHdoZXJlIDxzdHJ1Y3RmaWVsZD5mcF9yYW5nZU5hbWU8L3N0cnVjdGZpZWxkPiBp cyB0aGUgcmFuZ2UKKyAgICAgICB3aGVyZSA8c3RydWN0ZmllbGQ+ZnBfcmFuZ2VOYW1lPC9zdHJ1 Y3RmaWVsZD4gaXMgdGhlIHBlcmlvZCBvciByYW5nZQogICAgICAgIGNvbHVtbiBuYW1lZCBpbiB0 aGUgPGxpdGVyYWw+Rk9SIFBPUlRJT04gT0Y8L2xpdGVyYWw+IGNsYXVzZSwKICAgICAgICA8c3Ry dWN0ZmllbGQ+ZnBfcmFuZ2VUeXBlPC9zdHJ1Y3RmaWVsZD4gaXMgaXRzIHJhbmdlIHR5cGUsCiAg ICAgICAgPHN0cnVjdGZpZWxkPmZwX3JhbmdlQXR0bm88L3N0cnVjdGZpZWxkPiBpcyBpdHMgYXR0 cmlidXRlIG51bWJlciwKKyAgICAgICA8c3RydWN0ZmllbGQ+ZnBfcGVyaW9kU3RhcnRBdHRubzwv c3RydWN0ZmllbGQ+IGFuZAorICAgICAgIDxzdHJ1Y3RmaWVsZD5mcF9wZXJpb2RFbmRBdHRubzwv c3RydWN0ZmllbGQ+IGFyZSB0aGUgYXR0bm9zIG9mIHRoZSBwZXJpb2QncworICAgICAgIHN0YXJ0 IGFuZCBlbmQgY29sdW1ucyAob3IgPHN5bWJvbD4wPC9zeW1ib2w+IGlmIGEgcmFuZ2UgY29sdW1u IHdhcyB1c2VkKSwKICAgICAgICBhbmQgPHN0cnVjdGZpZWxkPmZwX3RhcmdldFJhbmdlPC9zdHJ1 Y3RmaWVsZD4gaXMgYSByYW5nZXR5cGUgdmFsdWUgY3JlYXRlZAogICAgICAgIGJ5IGV2YWx1YXRp bmcgdGhlIDxsaXRlcmFsPkZPUiBQT1JUSU9OIE9GPC9saXRlcmFsPiBib3VuZHMuCiAgICAgICAg PC9wYXJhPgpkaWZmIC0tZ2l0IGEvc3JjL2JhY2tlbmQvY2F0YWxvZy9NYWtlZmlsZSBiL3NyYy9i YWNrZW5kL2NhdGFsb2cvTWFrZWZpbGUKaW5kZXggOGU0MGUxYjgxODkuLjA5MmFhMDkxNzc3IDEw MDY0NAotLS0gYS9zcmMvYmFja2VuZC9jYXRhbG9nL01ha2VmaWxlCisrKyBiL3NyYy9iYWNrZW5k L2NhdGFsb2cvTWFrZWZpbGUKQEAgLTM5LDYgKzM5LDcgQEAgT0JKUyA9IFwKIAlwZ19uYW1lc3Bh Y2UubyBcCiAJcGdfb3BlcmF0b3IubyBcCiAJcGdfcGFyYW1ldGVyX2FjbC5vIFwKKwlwZ19wZXJp b2QubyBcCiAJcGdfcHJvYy5vIFwKIAlwZ19wdWJsaWNhdGlvbi5vIFwKIAlwZ19yYW5nZS5vIFwK ZGlmZiAtLWdpdCBhL3NyYy9iYWNrZW5kL2NhdGFsb2cvYWNsY2hrLmMgYi9zcmMvYmFja2VuZC9j YXRhbG9nL2FjbGNoay5jCmluZGV4IGNkMTM5YmQ2NWE2Li44ZDAwNmE4MzBkNiAxMDA2NDQKLS0t IGEvc3JjL2JhY2tlbmQvY2F0YWxvZy9hY2xjaGsuYworKysgYi9zcmMvYmFja2VuZC9jYXRhbG9n L2FjbGNoay5jCkBAIC0yNzc0LDYgKzI3NzQsNyBAQCBhY2xjaGVja19lcnJvcihBY2xSZXN1bHQg YWNsZXJyLCBPYmplY3RUeXBlIG9ianR5cGUsCiAJCQkJCWNhc2UgT0JKRUNUX0RFRkFVTFQ6CiAJ CQkJCWNhc2UgT0JKRUNUX0RFRkFDTDoKIAkJCQkJY2FzZSBPQkpFQ1RfRE9NQ09OU1RSQUlOVDoK KwkJCQkJY2FzZSBPQkpFQ1RfUEVSSU9EOgogCQkJCQljYXNlIE9CSkVDVF9QVUJMSUNBVElPTl9O QU1FU1BBQ0U6CiAJCQkJCWNhc2UgT0JKRUNUX1BVQkxJQ0FUSU9OX1JFTDoKIAkJCQkJY2FzZSBP QkpFQ1RfUk9MRToKQEAgLTI5MTUsNiArMjkxNiw3IEBAIGFjbGNoZWNrX2Vycm9yKEFjbFJlc3Vs dCBhY2xlcnIsIE9iamVjdFR5cGUgb2JqdHlwZSwKIAkJCQkJY2FzZSBPQkpFQ1RfREVGQUNMOgog CQkJCQljYXNlIE9CSkVDVF9ET01DT05TVFJBSU5UOgogCQkJCQljYXNlIE9CSkVDVF9QQVJBTUVU RVJfQUNMOgorCQkJCQljYXNlIE9CSkVDVF9QRVJJT0Q6CiAJCQkJCWNhc2UgT0JKRUNUX1BVQkxJ Q0FUSU9OX05BTUVTUEFDRToKIAkJCQkJY2FzZSBPQkpFQ1RfUFVCTElDQVRJT05fUkVMOgogCQkJ CQljYXNlIE9CSkVDVF9ST0xFOgpkaWZmIC0tZ2l0IGEvc3JjL2JhY2tlbmQvY2F0YWxvZy9kZXBl bmRlbmN5LmMgYi9zcmMvYmFja2VuZC9jYXRhbG9nL2RlcGVuZGVuY3kuYwppbmRleCA4ZTcwYTg1 YTNmNy4uYzBmYzk1YjBkNjggMTAwNjQ0Ci0tLSBhL3NyYy9iYWNrZW5kL2NhdGFsb2cvZGVwZW5k ZW5jeS5jCisrKyBiL3NyYy9iYWNrZW5kL2NhdGFsb2cvZGVwZW5kZW5jeS5jCkBAIC00OSw2ICs0 OSw3IEBACiAjaW5jbHVkZSAiY2F0YWxvZy9wZ19vcGVyYXRvci5oIgogI2luY2x1ZGUgImNhdGFs b2cvcGdfb3BmYW1pbHkuaCIKICNpbmNsdWRlICJjYXRhbG9nL3BnX3BhcmFtZXRlcl9hY2wuaCIK KyNpbmNsdWRlICJjYXRhbG9nL3BnX3BlcmlvZC5oIgogI2luY2x1ZGUgImNhdGFsb2cvcGdfcG9s aWN5LmgiCiAjaW5jbHVkZSAiY2F0YWxvZy9wZ19wcm9jLmgiCiAjaW5jbHVkZSAiY2F0YWxvZy9w Z19wdWJsaWNhdGlvbi5oIgpAQCAtNjIzLDYgKzYyNCwxNCBAQCBmaW5kRGVwZW5kZW50T2JqZWN0 cyhjb25zdCBPYmplY3RBZGRyZXNzICpvYmplY3QsCiAJCQkJCQlyZXR1cm47CiAJCQkJCX0KIAor CQkJCQkvKgorCQkJCQkgKiBJZiBhIHRhYmxlIGF0dHJpYnV0ZSBpcyBhbiBpbnRlcm5hbCBwYXJ0 IG9mIHNvbWV0aGluZworCQkJCQkgKiBlbHNlIChlLmcuIHRoZSBHRU5FUkFURUQgY29sdW1uIHVz ZWQgYnkgYSBQRVJJT0QpLCBhbmQKKwkJCQkJICogd2UgYXJlIGRlbGV0aW5nIHRoZSB3aG9sZSB0 YWJsZSwgdGhlbiBpdCdzIG9rYXkuCisJCQkJCSAqLworCQkJCQlpZiAoZm91bmREZXAtPm9ianN1 YmlkICYmICFvYmplY3QtPm9iamVjdFN1YklkKQorCQkJCQkJYnJlYWs7CisKIAkJCQkJLyoKIAkJ CQkJICogV2UgcG9zdHBvbmUgYWN0dWFsbHkgaXNzdWluZyB0aGUgZXJyb3IgbWVzc2FnZSB1bnRp bAogCQkJCQkgKiBhZnRlciB0aGlzIGxvb3AsIHNvIHRoYXQgd2UgY2FuIG1ha2UgdGhlIGJlaGF2 aW9yCkBAIC0xNDAxLDYgKzE0MTAsMTAgQEAgZG9EZWxldGlvbihjb25zdCBPYmplY3RBZGRyZXNz ICpvYmplY3QsIGludCBmbGFncykKIAkJCVJlbW92ZUF0dHJEZWZhdWx0QnlJZChvYmplY3QtPm9i amVjdElkKTsKIAkJCWJyZWFrOwogCisJCWNhc2UgUGVyaW9kUmVsYXRpb25JZDoKKwkJCVJlbW92 ZVBlcmlvZEJ5SWQob2JqZWN0LT5vYmplY3RJZCk7CisJCQlicmVhazsKKwogCQljYXNlIExhcmdl T2JqZWN0UmVsYXRpb25JZDoKIAkJCUxhcmdlT2JqZWN0RHJvcChvYmplY3QtPm9iamVjdElkKTsK IAkJCWJyZWFrOwpkaWZmIC0tZ2l0IGEvc3JjL2JhY2tlbmQvY2F0YWxvZy9oZWFwLmMgYi9zcmMv YmFja2VuZC9jYXRhbG9nL2hlYXAuYwppbmRleCBmZDY1Mzc1NjdlYS4uOTljZGE4MDlkMDIgMTAw NjQ0Ci0tLSBhL3NyYy9iYWNrZW5kL2NhdGFsb2cvaGVhcC5jCisrKyBiL3NyYy9iYWNrZW5kL2Nh dGFsb2cvaGVhcC5jCkBAIC00OSw2ICs0OSw3IEBACiAjaW5jbHVkZSAiY2F0YWxvZy9wZ19uYW1l c3BhY2UuaCIKICNpbmNsdWRlICJjYXRhbG9nL3BnX29wY2xhc3MuaCIKICNpbmNsdWRlICJjYXRh bG9nL3BnX3BhcnRpdGlvbmVkX3RhYmxlLmgiCisjaW5jbHVkZSAiY2F0YWxvZy9wZ19wZXJpb2Qu aCIKICNpbmNsdWRlICJjYXRhbG9nL3BnX3N0YXRpc3RpYy5oIgogI2luY2x1ZGUgImNhdGFsb2cv cGdfc3Vic2NyaXB0aW9uX3JlbC5oIgogI2luY2x1ZGUgImNhdGFsb2cvcGdfdGFibGVzcGFjZS5o IgpAQCAtMjEzNSw2ICsyMTM2LDgwIEBAIFNldEF0dHJNaXNzaW5nKE9pZCByZWxpZCwgY2hhciAq YXR0bmFtZSwgY2hhciAqdmFsdWUpCiAJdGFibGVfY2xvc2UodGFibGVyZWwsIEFjY2Vzc0V4Y2x1 c2l2ZUxvY2spOwogfQogCisvKgorICogU3RvcmUgYSBwZXJpb2Qgb2YgcmVsYXRpb24gcmVsLgor ICoKKyAqIFJldHVybnMgdGhlIE9JRCBvZiB0aGUgbmV3IHBnX3BlcmlvZCB0dXBsZS4KKyAqLwor T2lkCitTdG9yZVBlcmlvZChSZWxhdGlvbiByZWwsIGNvbnN0IGNoYXIgKnBlcmlvZG5hbWUsIEF0 dHJOdW1iZXIgc3RhcnRudW0sCisJCQlBdHRyTnVtYmVyIGVuZG51bSwgQXR0ck51bWJlciByYW5n ZW51bSwgT2lkIGNvbm9pZCkKK3sKKwlEYXR1bQkJdmFsdWVzW05hdHRzX3BnX3BlcmlvZF07CisJ Ym9vbAkJbnVsbHNbTmF0dHNfcGdfcGVyaW9kXTsKKwlSZWxhdGlvbglwZ19wZXJpb2Q7CisJSGVh cFR1cGxlCXR1cGxlOworCU9pZAkJCW9pZDsKKwlOYW1lRGF0YQlwZXJuYW1lOworCU9iamVjdEFk ZHJlc3MgbXlzZWxmLAorCQkJCXJlZmVyZW5jZWQ7CisKKwlBc3NlcnQocmFuZ2VudW0gIT0gSW52 YWxpZEF0dHJOdW1iZXIpOworCisJbmFtZXN0cmNweSgmcGVybmFtZSwgcGVyaW9kbmFtZSk7CisK KwlNZW1TZXQodmFsdWVzLCAwLCBzaXplb2YodmFsdWVzKSk7CisJTWVtU2V0KG51bGxzLCBmYWxz ZSwgc2l6ZW9mKG51bGxzKSk7CisKKwlwZ19wZXJpb2QgPSB0YWJsZV9vcGVuKFBlcmlvZFJlbGF0 aW9uSWQsIFJvd0V4Y2x1c2l2ZUxvY2spOworCisJb2lkID0gR2V0TmV3T2lkV2l0aEluZGV4KHBn X3BlcmlvZCwgQXR0ckRlZmF1bHRPaWRJbmRleElkLCBBbnVtX3BnX3BlcmlvZF9vaWQpOworCXZh bHVlc1tBbnVtX3BnX3BlcmlvZF9vaWQgLSAxXSA9IE9iamVjdElkR2V0RGF0dW0ob2lkKTsKKwl2 YWx1ZXNbQW51bV9wZ19wZXJpb2RfcGVybmFtZSAtIDFdID0gTmFtZUdldERhdHVtKCZwZXJuYW1l KTsKKwl2YWx1ZXNbQW51bV9wZ19wZXJpb2RfcGVycmVsaWQgLSAxXSA9IFJlbGF0aW9uR2V0UmVs aWQocmVsKTsKKwl2YWx1ZXNbQW51bV9wZ19wZXJpb2RfcGVyc3RhcnQgLSAxXSA9IHN0YXJ0bnVt OworCXZhbHVlc1tBbnVtX3BnX3BlcmlvZF9wZXJlbmQgLSAxXSA9IGVuZG51bTsKKwl2YWx1ZXNb QW51bV9wZ19wZXJpb2RfcGVycmFuZ2UgLSAxXSA9IHJhbmdlbnVtOworCXZhbHVlc1tBbnVtX3Bn X3BlcmlvZF9wZXJjb25zdHJhaW50IC0gMV0gPSBjb25vaWQ7CisKKwl0dXBsZSA9IGhlYXBfZm9y bV90dXBsZShSZWxhdGlvbkdldERlc2NyKHBnX3BlcmlvZCksIHZhbHVlcywgbnVsbHMpOworCUNh dGFsb2dUdXBsZUluc2VydChwZ19wZXJpb2QsIHR1cGxlKTsKKworCU9iamVjdEFkZHJlc3NTZXQo bXlzZWxmLCBQZXJpb2RSZWxhdGlvbklkLCBvaWQpOworCisJLyogRHJvcCB0aGUgcGVyaW9kIHdo ZW4gdGhlIHRhYmxlIGlzIGRyb3BwZWQuICovCisJT2JqZWN0QWRkcmVzc1NldChyZWZlcmVuY2Vk LCBSZWxhdGlvblJlbGF0aW9uSWQsIFJlbGF0aW9uR2V0UmVsaWQocmVsKSk7CisJcmVjb3JkRGVw ZW5kZW5jeU9uKCZteXNlbGYsICZyZWZlcmVuY2VkLCBERVBFTkRFTkNZX0FVVE8pOworCisJLyog Rm9yYmlkIGRyb3BwaW5nIHRoZSBjb2x1bW5zIG9mIHRoZSBwZXJpb2QuICovCisJT2JqZWN0QWRk cmVzc1N1YlNldChyZWZlcmVuY2VkLCBSZWxhdGlvblJlbGF0aW9uSWQsIFJlbGF0aW9uR2V0UmVs aWQocmVsKSwgc3RhcnRudW0pOworCXJlY29yZERlcGVuZGVuY3lPbigmbXlzZWxmLCAmcmVmZXJl bmNlZCwgREVQRU5ERU5DWV9OT1JNQUwpOworCU9iamVjdEFkZHJlc3NTdWJTZXQocmVmZXJlbmNl ZCwgUmVsYXRpb25SZWxhdGlvbklkLCBSZWxhdGlvbkdldFJlbGlkKHJlbCksIGVuZG51bSk7CisJ cmVjb3JkRGVwZW5kZW5jeU9uKCZteXNlbGYsICZyZWZlcmVuY2VkLCBERVBFTkRFTkNZX05PUk1B TCk7CisKKwkvKgorCSAqIFRoZSByYW5nZSBjb2x1bW4gaXMgYW4gaW1wbGVtZW50YXRpb24gZGV0 YWlsLCBidXQgd2UgY2FuJ3QgdXNlCisJICogREVQRU5ERU5DWV9JTlRFUk5BTCBiZWNhdXNlIGRy b3BwaW5nIHRoZSB0YWJsZSB3aWxsIGNoZWNrIGZvcgorCSAqIGRlcGVuZGVuY2llcyBvbiBhbGwg c3Vib2JqZWN0cyB0b28gKGluIGZpbmREZXBlbmRlbnRPYmplY3RzKS4gQnV0IGlmIHdlCisJICog bWFrZSBhbiBBVVRPIGRlcGVuZGVuY3kgb25lIHdheSB3ZSB3aWxsIGF1dG8tZHJvcCB0aGUgY29s dW1uIHdoZW4gd2UKKwkgKiBkcm9wIHRoZSBQRVJJT0QsIGFuZCBhIE5PUk1BTCBkZXBlbmRlbmN5 IHRoZSBvdGhlciB3YXkgd2Ugd2lsbCBmb3JiaWQKKwkgKiBkcm9wcGluZyB0aGUgY29sdW1uIGRp cmVjdGx5LgorCSAqLworCU9iamVjdEFkZHJlc3NTdWJTZXQocmVmZXJlbmNlZCwgUmVsYXRpb25S ZWxhdGlvbklkLCBSZWxhdGlvbkdldFJlbGlkKHJlbCksIHJhbmdlbnVtKTsKKwlyZWNvcmREZXBl bmRlbmN5T24oJnJlZmVyZW5jZWQsICZteXNlbGYsIERFUEVOREVOQ1lfSU5URVJOQUwpOworCisJ LyoKKwkgKiBUaGUgY29uc3RyYWludCBpcyBhbiBpbXBsZW1lbnRhdGlvbiBkZXRhaWwsIHNvIHdl IG1hcmsgaXQgYXMgc3VjaC4KKwkgKiAoTm90ZSB0aGF0IG15c2VsZiBhbmQgcmVmZXJlbmNlZCBh cmUgcmV2ZXJzZWQgZm9yIHRoaXMgb25lLikKKwkgKi8KKwlPYmplY3RBZGRyZXNzU2V0KHJlZmVy ZW5jZWQsIENvbnN0cmFpbnRSZWxhdGlvbklkLCBjb25vaWQpOworCXJlY29yZERlcGVuZGVuY3lP bigmcmVmZXJlbmNlZCwgJm15c2VsZiwgREVQRU5ERU5DWV9JTlRFUk5BTCk7CisKKwl0YWJsZV9j bG9zZShwZ19wZXJpb2QsIFJvd0V4Y2x1c2l2ZUxvY2spOworCisJcmV0dXJuIG9pZDsKK30KKwog LyoKICAqIFN0b3JlIGEgY2hlY2stY29uc3RyYWludCBleHByZXNzaW9uIGZvciB0aGUgZ2l2ZW4g cmVsYXRpb24uCiAgKgpkaWZmIC0tZ2l0IGEvc3JjL2JhY2tlbmQvY2F0YWxvZy9pbmZvcm1hdGlv bl9zY2hlbWEuc3FsIGIvc3JjL2JhY2tlbmQvY2F0YWxvZy9pbmZvcm1hdGlvbl9zY2hlbWEuc3Fs CmluZGV4IGE3YmZmY2E5M2QxLi4yODJlYWQ2ZWQ0YyAxMDA2NDQKLS0tIGEvc3JjL2JhY2tlbmQv Y2F0YWxvZy9pbmZvcm1hdGlvbl9zY2hlbWEuc3FsCisrKyBiL3NyYy9iYWNrZW5kL2NhdGFsb2cv aW5mb3JtYXRpb25fc2NoZW1hLnNxbApAQCAtMTIwNyw3ICsxMjA3LDI4IEBAIEdSQU5UIFNFTEVD VCBPTiBwYXJhbWV0ZXJzIFRPIFBVQkxJQzsKICAqIFBFUklPRFMgdmlldwogICovCiAKLS0tIGZl YXR1cmUgbm90IHN1cHBvcnRlZAorQ1JFQVRFIFZJRVcgcGVyaW9kcyBBUworICAgIFNFTEVDVCBj dXJyZW50X2RhdGFiYXNlKCk6OmluZm9ybWF0aW9uX3NjaGVtYS5zcWxfaWRlbnRpZmllciBBUyB0 YWJsZV9jYXRhbG9nLAorICAgICAgICAgICBuYy5uc3BuYW1lOjppbmZvcm1hdGlvbl9zY2hlbWEu c3FsX2lkZW50aWZpZXIgQVMgdGFibGVfc2NoZW1hLAorICAgICAgICAgICBjLnJlbG5hbWU6Omlu Zm9ybWF0aW9uX3NjaGVtYS5zcWxfaWRlbnRpZmllciBBUyB0YWJsZV9uYW1lLAorICAgICAgICAg ICBwLnBlcm5hbWU6OmluZm9ybWF0aW9uX3NjaGVtYS5zcWxfaWRlbnRpZmllciBBUyBwZXJpb2Rf bmFtZSwKKyAgICAgICAgICAgQ0FTRSBXSEVOIHBnX2hhc19yb2xlKGMucmVsb3duZXIsICdVU0FH RScpCisgICAgICAgICAgICAgICAgICBPUiBoYXNfY29sdW1uX3ByaXZpbGVnZShzYS5hdHRyZWxp ZCwgc2EuYXR0bnVtLCAnU0VMRUNULCBJTlNFUlQsIFVQREFURSwgUkVGRVJFTkNFUycpCisgICAg ICAgICAgICAgICAgVEhFTiBzYS5hdHRuYW1lOjppbmZvcm1hdGlvbl9zY2hlbWEuc3FsX2lkZW50 aWZpZXIKKyAgICAgICAgICAgRU5EIEFTIHN0YXJ0X2NvbHVtbl9uYW1lLAorICAgICAgICAgICBD QVNFIFdIRU4gcGdfaGFzX3JvbGUoYy5yZWxvd25lciwgJ1VTQUdFJykKKyAgICAgICAgICAgICAg ICAgIE9SIGhhc19jb2x1bW5fcHJpdmlsZWdlKGVhLmF0dHJlbGlkLCBlYS5hdHRudW0sICdTRUxF Q1QsIElOU0VSVCwgVVBEQVRFLCBSRUZFUkVOQ0VTJykKKyAgICAgICAgICAgICAgICBUSEVOIGVh LmF0dG5hbWU6OmluZm9ybWF0aW9uX3NjaGVtYS5zcWxfaWRlbnRpZmllcgorICAgICAgICAgICBF TkQgQVMgZW5kX2NvbHVtbl9uYW1lCisgICAgRlJPTSBwZ19wZXJpb2QgQVMgcAorICAgIEpPSU4g cGdfY2xhc3MgQVMgYyBPTiBjLm9pZCA9IHAucGVycmVsaWQKKyAgICBKT0lOIHBnX25hbWVzcGFj ZSBBUyBuYyBPTiBuYy5vaWQgPSBjLnJlbG5hbWVzcGFjZQorICAgIEpPSU4gcGdfYXR0cmlidXRl IEFTIHNhIE9OIChzYS5hdHRyZWxpZCwgc2EuYXR0bnVtKSA9IChwLnBlcnJlbGlkLCBwLnBlcnN0 YXJ0KQorICAgIEpPSU4gcGdfYXR0cmlidXRlIEFTIGVhIE9OIChlYS5hdHRyZWxpZCwgZWEuYXR0 bnVtKSA9IChwLnBlcnJlbGlkLCBwLnBlcmVuZCkKKyAgICBXSEVSRSBOT1QgcGdfaXNfb3RoZXJf dGVtcF9zY2hlbWEobmMub2lkKQorICAgICAgQU5EIGMucmVsa2luZCBJTiAoJ3InLCAndicpOwor CitHUkFOVCBTRUxFQ1QgT04gcGVyaW9kcyBUTyBQVUJMSUM7CiAKIAogLyoKZGlmZiAtLWdpdCBh L3NyYy9iYWNrZW5kL2NhdGFsb2cvbWVzb24uYnVpbGQgYi9zcmMvYmFja2VuZC9jYXRhbG9nL21l c29uLmJ1aWxkCmluZGV4IDU4Njc0ZmZlZWU2Li5kMDk1MzMzNjM5MCAxMDA2NDQKLS0tIGEvc3Jj L2JhY2tlbmQvY2F0YWxvZy9tZXNvbi5idWlsZAorKysgYi9zcmMvYmFja2VuZC9jYXRhbG9nL21l c29uLmJ1aWxkCkBAIC0yNiw2ICsyNiw3IEBAIGJhY2tlbmRfc291cmNlcyArPSBmaWxlcygKICAg J3BnX25hbWVzcGFjZS5jJywKICAgJ3BnX29wZXJhdG9yLmMnLAogICAncGdfcGFyYW1ldGVyX2Fj bC5jJywKKyAgJ3BnX3BlcmlvZC5jJywKICAgJ3BnX3Byb2MuYycsCiAgICdwZ19wdWJsaWNhdGlv bi5jJywKICAgJ3BnX3JhbmdlLmMnLApkaWZmIC0tZ2l0IGEvc3JjL2JhY2tlbmQvY2F0YWxvZy9v YmplY3RhZGRyZXNzLmMgYi9zcmMvYmFja2VuZC9jYXRhbG9nL29iamVjdGFkZHJlc3MuYwppbmRl eCBjNzViNzEzMWVkNy4uZTJiMDk5ZTIzNjAgMTAwNjQ0Ci0tLSBhL3NyYy9iYWNrZW5kL2NhdGFs b2cvb2JqZWN0YWRkcmVzcy5jCisrKyBiL3NyYy9iYWNrZW5kL2NhdGFsb2cvb2JqZWN0YWRkcmVz cy5jCkBAIC00NSw2ICs0NSw3IEBACiAjaW5jbHVkZSAiY2F0YWxvZy9wZ19vcGVyYXRvci5oIgog I2luY2x1ZGUgImNhdGFsb2cvcGdfb3BmYW1pbHkuaCIKICNpbmNsdWRlICJjYXRhbG9nL3BnX3Bh cmFtZXRlcl9hY2wuaCIKKyNpbmNsdWRlICJjYXRhbG9nL3BnX3BlcmlvZC5oIgogI2luY2x1ZGUg ImNhdGFsb2cvcGdfcG9saWN5LmgiCiAjaW5jbHVkZSAiY2F0YWxvZy9wZ19wcm9jLmgiCiAjaW5j bHVkZSAiY2F0YWxvZy9wZ19wdWJsaWNhdGlvbi5oIgpAQCAtNzI2LDYgKzcyNyw5IEBAIHN0YXRp YyBjb25zdCBzdHJ1Y3Qgb2JqZWN0X3R5cGVfbWFwCiAJewogCQkiZG9tYWluIGNvbnN0cmFpbnQi LCBPQkpFQ1RfRE9NQ09OU1RSQUlOVAogCX0sCisJeworCQkicGVyaW9kIiwgT0JKRUNUX1BFUklP RAorCX0sCiAJewogCQkiY29udmVyc2lvbiIsIE9CSkVDVF9DT05WRVJTSU9OCiAJfSwKQEAgLTk3 MCw2ICs5NzQsNyBAQCBnZXRfb2JqZWN0X2FkZHJlc3MoT2JqZWN0VHlwZSBvYmp0eXBlLCBOb2Rl ICpvYmplY3QsCiAJCQljYXNlIE9CSkVDVF9UUklHR0VSOgogCQkJY2FzZSBPQkpFQ1RfVEFCQ09O U1RSQUlOVDoKIAkJCWNhc2UgT0JKRUNUX1BPTElDWToKKwkJCWNhc2UgT0JKRUNUX1BFUklPRDoK IAkJCQlhZGRyZXNzID0gZ2V0X29iamVjdF9hZGRyZXNzX3JlbG9iamVjdChvYmp0eXBlLCBjYXN0 Tm9kZShMaXN0LCBvYmplY3QpLAogCQkJCQkJCQkJCQkJCSAgICZyZWxhdGlvbiwgbWlzc2luZ19v ayk7CiAJCQkJYnJlYWs7CkBAIC0xNDcyLDYgKzE0NzcsMTMgQEAgZ2V0X29iamVjdF9hZGRyZXNz X3JlbG9iamVjdChPYmplY3RUeXBlIG9ianR5cGUsIExpc3QgKm9iamVjdCwKIAkJCQlJbnZhbGlk T2lkOwogCQkJYWRkcmVzcy5vYmplY3RTdWJJZCA9IDA7CiAJCQlicmVhazsKKwkJY2FzZSBPQkpF Q1RfUEVSSU9EOgorCQkJYWRkcmVzcy5jbGFzc0lkID0gUGVyaW9kUmVsYXRpb25JZDsKKwkJCWFk ZHJlc3Mub2JqZWN0SWQgPSByZWxhdGlvbiA/CisJCQkJZ2V0X3JlbGF0aW9uX3BlcmlvZF9vaWQo cmVsb2lkLCBkZXBuYW1lLCBtaXNzaW5nX29rKSA6CisJCQkJSW52YWxpZE9pZDsKKwkJCWFkZHJl c3Mub2JqZWN0U3ViSWQgPSAwOworCQkJYnJlYWs7CiAJCWRlZmF1bHQ6CiAJCQllbG9nKEVSUk9S LCAidW5yZWNvZ25pemVkIG9iamVjdCB0eXBlOiAlZCIsIChpbnQpIG9ianR5cGUpOwogCX0KQEAg LTIyOTMsNiArMjMwNSw3IEBAIHBnX2dldF9vYmplY3RfYWRkcmVzcyhQR19GVU5DVElPTl9BUkdT KQogCQljYXNlIE9CSkVDVF9SVUxFOgogCQljYXNlIE9CSkVDVF9UUklHR0VSOgogCQljYXNlIE9C SkVDVF9UQUJDT05TVFJBSU5UOgorCQljYXNlIE9CSkVDVF9QRVJJT0Q6CiAJCWNhc2UgT0JKRUNU X09QQ0xBU1M6CiAJCWNhc2UgT0JKRUNUX09QRkFNSUxZOgogCQkJb2Jqbm9kZSA9IChOb2RlICop IG5hbWU7CkBAIC0yNDAzLDYgKzI0MTYsNyBAQCBjaGVja19vYmplY3Rfb3duZXJzaGlwKE9pZCBy b2xlaWQsIE9iamVjdFR5cGUgb2JqdHlwZSwgT2JqZWN0QWRkcmVzcyBhZGRyZXNzLAogCQljYXNl IE9CSkVDVF9UUklHR0VSOgogCQljYXNlIE9CSkVDVF9QT0xJQ1k6CiAJCWNhc2UgT0JKRUNUX1RB QkNPTlNUUkFJTlQ6CisJCWNhc2UgT0JKRUNUX1BFUklPRDoKIAkJCWlmICghb2JqZWN0X293bmVy Y2hlY2soUmVsYXRpb25SZWxhdGlvbklkLCBSZWxhdGlvbkdldFJlbGlkKHJlbGF0aW9uKSwgcm9s ZWlkKSkKIAkJCQlhY2xjaGVja19lcnJvcihBQ0xDSEVDS19OT1RfT1dORVIsIG9ianR5cGUsCiAJ CQkJCQkJICAgUmVsYXRpb25HZXRSZWxhdGlvbk5hbWUocmVsYXRpb24pKTsKQEAgLTMwNzYsNiAr MzA5MCwzOCBAQCBnZXRPYmplY3REZXNjcmlwdGlvbihjb25zdCBPYmplY3RBZGRyZXNzICpvYmpl Y3QsIGJvb2wgbWlzc2luZ19vaykKIAkJCQlicmVhazsKIAkJCX0KIAorCQljYXNlIFBlcmlvZFJl bGF0aW9uSWQ6CisJCQl7CisJCQkJSGVhcFR1cGxlCXBlclR1cDsKKwkJCQlGb3JtX3BnX3Blcmlv ZCBwZXI7CisKKwkJCQlwZXJUdXAgPSBTZWFyY2hTeXNDYWNoZTEoUEVSSU9ET0lELAorCQkJCQkJ CQkJCSBPYmplY3RJZEdldERhdHVtKG9iamVjdC0+b2JqZWN0SWQpKTsKKwkJCQlpZiAoIUhlYXBU dXBsZUlzVmFsaWQocGVyVHVwKSkKKwkJCQkJZWxvZyhFUlJPUiwgImNhY2hlIGxvb2t1cCBmYWls ZWQgZm9yIHBlcmlvZCAldSIsCisJCQkJCQkgb2JqZWN0LT5vYmplY3RJZCk7CisJCQkJcGVyID0g KEZvcm1fcGdfcGVyaW9kKSBHRVRTVFJVQ1QocGVyVHVwKTsKKworCQkJCWlmIChPaWRJc1ZhbGlk KHBlci0+cGVycmVsaWQpKQorCQkJCXsKKwkJCQkJU3RyaW5nSW5mb0RhdGEgcmVsOworCisJCQkJ CWluaXRTdHJpbmdJbmZvKCZyZWwpOworCQkJCQlnZXRSZWxhdGlvbkRlc2NyaXB0aW9uKCZyZWws IHBlci0+cGVycmVsaWQsIGZhbHNlKTsKKwkJCQkJYXBwZW5kU3RyaW5nSW5mbygmYnVmZmVyLCBf KCJwZXJpb2QgJXMgb24gJXMiKSwKKwkJCQkJCQkJCSBOYW1lU3RyKHBlci0+cGVybmFtZSksIHJl bC5kYXRhKTsKKwkJCQkJcGZyZWUocmVsLmRhdGEpOworCQkJCX0KKwkJCQllbHNlCisJCQkJewor CQkJCQlhcHBlbmRTdHJpbmdJbmZvKCZidWZmZXIsIF8oInBlcmlvZCAlcyIpLAorCQkJCQkJCQkJ IE5hbWVTdHIocGVyLT5wZXJuYW1lKSk7CisJCQkJfQorCisJCQkJUmVsZWFzZVN5c0NhY2hlKHBl clR1cCk7CisJCQkJYnJlYWs7CisJCQl9CisKIAkJY2FzZSBDb252ZXJzaW9uUmVsYXRpb25JZDoK IAkJCXsKIAkJCQlIZWFwVHVwbGUJY29uVHVwOwpAQCAtNDUyOSw2ICs0NTc1LDEwIEBAIGdldE9i amVjdFR5cGVEZXNjcmlwdGlvbihjb25zdCBPYmplY3RBZGRyZXNzICpvYmplY3QsIGJvb2wgbWlz c2luZ19vaykKIAkJCQkJCQkJCQkgbWlzc2luZ19vayk7CiAJCQlicmVhazsKIAorCQljYXNlIFBl cmlvZFJlbGF0aW9uSWQ6CisJCQlhcHBlbmRTdHJpbmdJbmZvU3RyaW5nKCZidWZmZXIsICJwZXJp b2QiKTsKKwkJCWJyZWFrOworCiAJCWNhc2UgQ29udmVyc2lvblJlbGF0aW9uSWQ6CiAJCQlhcHBl bmRTdHJpbmdJbmZvU3RyaW5nKCZidWZmZXIsICJjb252ZXJzaW9uIik7CiAJCQlicmVhazsKQEAg LTUwMzQsNiArNTA4NCwyOCBAQCBnZXRPYmplY3RJZGVudGl0eVBhcnRzKGNvbnN0IE9iamVjdEFk ZHJlc3MgKm9iamVjdCwKIAkJCQlicmVhazsKIAkJCX0KIAorCQljYXNlIFBlcmlvZFJlbGF0aW9u SWQ6CisJCQl7CisJCQkJSGVhcFR1cGxlCXBlclR1cDsKKwkJCQlGb3JtX3BnX3BlcmlvZCBwZXI7 CisKKwkJCQlwZXJUdXAgPSBTZWFyY2hTeXNDYWNoZTEoUEVSSU9ET0lELAorCQkJCQkJCQkJCSBP YmplY3RJZEdldERhdHVtKG9iamVjdC0+b2JqZWN0SWQpKTsKKwkJCQlpZiAoIUhlYXBUdXBsZUlz VmFsaWQocGVyVHVwKSkKKwkJCQkJZWxvZyhFUlJPUiwgImNhY2hlIGxvb2t1cCBmYWlsZWQgZm9y IHBlcmlvZCAldSIsCisJCQkJCQkgb2JqZWN0LT5vYmplY3RJZCk7CisJCQkJcGVyID0gKEZvcm1f cGdfcGVyaW9kKSBHRVRTVFJVQ1QocGVyVHVwKTsKKworCQkJCWFwcGVuZFN0cmluZ0luZm8oJmJ1 ZmZlciwgIiVzIG9uICIsCisJCQkJCQkJCSBxdW90ZV9pZGVudGlmaWVyKE5hbWVTdHIocGVyLT5w ZXJuYW1lKSkpOworCQkJCWdldFJlbGF0aW9uSWRlbnRpdHkoJmJ1ZmZlciwgcGVyLT5wZXJyZWxp ZCwgb2JqbmFtZSwgZmFsc2UpOworCQkJCWlmIChvYmpuYW1lKQorCQkJCQkqb2JqbmFtZSA9IGxh cHBlbmQoKm9iam5hbWUsIHBzdHJkdXAoTmFtZVN0cihwZXItPnBlcm5hbWUpKSk7CisKKwkJCQlS ZWxlYXNlU3lzQ2FjaGUocGVyVHVwKTsKKwkJCQlicmVhazsKKwkJCX0KKwogCQljYXNlIENvbnZl cnNpb25SZWxhdGlvbklkOgogCQkJewogCQkJCUhlYXBUdXBsZQljb25UdXA7CmRpZmYgLS1naXQg YS9zcmMvYmFja2VuZC9jYXRhbG9nL3BnX2NvbnN0cmFpbnQuYyBiL3NyYy9iYWNrZW5kL2NhdGFs b2cvcGdfY29uc3RyYWludC5jCmluZGV4IDU2NWM5MDg0OTk0Li41YTlkZDQzMTZhOSAxMDA2NDQK LS0tIGEvc3JjL2JhY2tlbmQvY2F0YWxvZy9wZ19jb25zdHJhaW50LmMKKysrIGIvc3JjL2JhY2tl bmQvY2F0YWxvZy9wZ19jb25zdHJhaW50LmMKQEAgLTgxMiw5ICs4MTIsMTQgQEAgQWRqdXN0Tm90 TnVsbEluaGVyaXRhbmNlKE9pZCByZWxpZCwgQXR0ck51bWJlciBhdHRudW0sCiAgKiBUaGlzIGlz IHNlbGRvbSBuZWVkZWQsIHNvIHdlIGp1c3Qgc2NhbiBwZ19jb25zdHJhaW50IGVhY2ggdGltZS4K ICAqCiAgKiAnaW5jbHVkZV9ub2luaCcgZGV0ZXJtaW5lcyB3aGV0aGVyIHRvIGluY2x1ZGUgTk8g SU5IRVJJVCBjb25zdHJhaW50cyBvciBub3QuCisgKgorICogJ2V4Y2x1ZGVzJyBjb250YWlucyBh IGxpc3Qgb2YgYXR0bm9zIHdob3NlIGNvbnN0cmFpbnRzIHdlIHNob3VsZCBleGNsdWRlLAorICog Zm9yIGV4YW1wbGUgY29uc3RyYWludHMgb24gUEVSSU9EcycgaGlkZGVuIEdFTkVSQVRFRCBjb2x1 bW5zIChzaW5jZSB0aG9zZQorICogYXJlbid0IGV4cG9zZWQgdG8gdXNlcnMpLgogICovCiBMaXN0 ICoKLVJlbGF0aW9uR2V0Tm90TnVsbENvbnN0cmFpbnRzKE9pZCByZWxpZCwgYm9vbCBjb29rZWQs IGJvb2wgaW5jbHVkZV9ub2luaCkKK1JlbGF0aW9uR2V0Tm90TnVsbENvbnN0cmFpbnRzKE9pZCBy ZWxpZCwgYm9vbCBjb29rZWQsIGJvb2wgaW5jbHVkZV9ub2luaCwKKwkJCQkJCQkgIEJpdG1hcHNl dCAqZXhjbHVkZXMpCiB7CiAJTGlzdAkgICAqbm90bnVsbHMgPSBOSUw7CiAJUmVsYXRpb24JY29u c3RyUmVsOwpAQCAtODQyLDYgKzg0Nyw5IEBAIFJlbGF0aW9uR2V0Tm90TnVsbENvbnN0cmFpbnRz KE9pZCByZWxpZCwgYm9vbCBjb29rZWQsIGJvb2wgaW5jbHVkZV9ub2luaCkKIAogCQljb2xudW0g PSBleHRyYWN0Tm90TnVsbENvbHVtbihodHVwKTsKIAorCQlpZiAoYm1zX2lzX21lbWJlcihjb2xu dW0sIGV4Y2x1ZGVzKSkKKwkJCWNvbnRpbnVlOworCiAJCWlmIChjb29rZWQpCiAJCXsKIAkJCUNv b2tlZENvbnN0cmFpbnQgKmNvb2tlZDsKZGlmZiAtLWdpdCBhL3NyYy9iYWNrZW5kL2NhdGFsb2cv cGdfcGVyaW9kLmMgYi9zcmMvYmFja2VuZC9jYXRhbG9nL3BnX3BlcmlvZC5jCm5ldyBmaWxlIG1v ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwLi4yNGIxOTM4NTMyYgotLS0gL2Rldi9udWxsCisr KyBiL3NyYy9iYWNrZW5kL2NhdGFsb2cvcGdfcGVyaW9kLmMKQEAgLTAsMCArMSwxMzIgQEAKKy8q LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLQorICoKKyAqIHBnX3BlcmlvZC5jCisgKgkgIHJvdXRpbmVzIHRvIHN1 cHBvcnQgbWFuaXB1bGF0aW9uIG9mIHRoZSBwZ19wZXJpb2QgcmVsYXRpb24KKyAqCisgKiBQb3J0 aW9ucyBDb3B5cmlnaHQgKGMpIDE5OTYtMjAyMSwgUG9zdGdyZVNRTCBHbG9iYWwgRGV2ZWxvcG1l bnQgR3JvdXAKKyAqCisgKgorICogSURFTlRJRklDQVRJT04KKyAqCSAgc3JjL2JhY2tlbmQvY2F0 YWxvZy9wZ19wZXJpb2QuYworICoKKyAqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorICovCisjaW5jbHVkZSAi cG9zdGdyZXMuaCIKKworI2luY2x1ZGUgImFjY2Vzcy9nZW5hbS5oIgorI2luY2x1ZGUgImFjY2Vz cy9oZWFwYW0uaCIKKyNpbmNsdWRlICJhY2Nlc3MvaHR1cF9kZXRhaWxzLmgiCisjaW5jbHVkZSAi Y2F0YWxvZy9pbmRleGluZy5oIgorI2luY2x1ZGUgImNhdGFsb2cvcGdfcGVyaW9kLmgiCisjaW5j bHVkZSAidXRpbHMvZm1ncm9pZHMuaCIKKyNpbmNsdWRlICJ1dGlscy9sc3lzY2FjaGUuaCIKKyNp bmNsdWRlICJ1dGlscy9yZWwuaCIKKyNpbmNsdWRlICJ1dGlscy9zeXNjYWNoZS5oIgorCisKKy8q CisgKiBEZWxldGUgYSBzaW5nbGUgcGVyaW9kIHJlY29yZC4KKyAqLwordm9pZAorUmVtb3ZlUGVy aW9kQnlJZChPaWQgcGVyaW9kSWQpCit7CisJUmVsYXRpb24JcGdfcGVyaW9kOworCUhlYXBUdXBs ZQl0dXA7CisKKwlwZ19wZXJpb2QgPSB0YWJsZV9vcGVuKFBlcmlvZFJlbGF0aW9uSWQsIFJvd0V4 Y2x1c2l2ZUxvY2spOworCisJdHVwID0gU2VhcmNoU3lzQ2FjaGUxKFBFUklPRE9JRCwgT2JqZWN0 SWRHZXREYXR1bShwZXJpb2RJZCkpOworCWlmICghSGVhcFR1cGxlSXNWYWxpZCh0dXApKSAvKiBz aG91bGQgbm90IGhhcHBlbiAqLworCQllbG9nKEVSUk9SLCAiY2FjaGUgbG9va3VwIGZhaWxlZCBm b3IgcGVyaW9kICV1IiwgcGVyaW9kSWQpOworCisJLyogRnJ5IHRoZSBwZXJpb2QgaXRzZWxmICov CisJQ2F0YWxvZ1R1cGxlRGVsZXRlKHBnX3BlcmlvZCwgJnR1cC0+dF9zZWxmKTsKKworCS8qIENs ZWFuIHVwICovCisJUmVsZWFzZVN5c0NhY2hlKHR1cCk7CisJdGFibGVfY2xvc2UocGdfcGVyaW9k LCBSb3dFeGNsdXNpdmVMb2NrKTsKK30KKworLyoKKyAqIGdldF9yZWxhdGlvbl9wZXJpb2Rfb2lk CisgKgkJRmluZCBhIHBlcmlvZCBvbiB0aGUgc3BlY2lmaWVkIHJlbGF0aW9uIHdpdGggdGhlIHNw ZWNpZmllZCBuYW1lLgorICoJCVJldHVybnMgcGVyaW9kJ3MgT0lELgorICovCitPaWQKK2dldF9y ZWxhdGlvbl9wZXJpb2Rfb2lkKE9pZCByZWxpZCwgY29uc3QgY2hhciAqcGVybmFtZSwgYm9vbCBt aXNzaW5nX29rKQoreworCVJlbGF0aW9uCXBnX3BlcmlvZDsKKwlIZWFwVHVwbGUJdHVwbGU7CisJ U3lzU2NhbkRlc2Mgc2NhbjsKKwlTY2FuS2V5RGF0YSBza2V5WzJdOworCU9pZAkJCXBlck9pZCA9 IEludmFsaWRPaWQ7CisKKwkvKiBGZXRjaCB0aGUgcGVyaW9kIHR1cGxlIGZyb20gcGdfcGVyaW9k LiAqLworCXBnX3BlcmlvZCA9IHRhYmxlX29wZW4oUGVyaW9kUmVsYXRpb25JZCwgQWNjZXNzU2hh cmVMb2NrKTsKKworCVNjYW5LZXlJbml0KCZza2V5WzBdLAorCQkJCUFudW1fcGdfcGVyaW9kX3Bl cnJlbGlkLAorCQkJCUJURXF1YWxTdHJhdGVneU51bWJlciwgRl9PSURFUSwKKwkJCQlPYmplY3RJ ZEdldERhdHVtKHJlbGlkKSk7CisJU2NhbktleUluaXQoJnNrZXlbMV0sCisJCQkJQW51bV9wZ19w ZXJpb2RfcGVybmFtZSwKKwkJCQlCVEVxdWFsU3RyYXRlZ3lOdW1iZXIsIEZfTkFNRUVRLAorCQkJ CUNTdHJpbmdHZXREYXR1bShwZXJuYW1lKSk7CisKKwlzY2FuID0gc3lzdGFibGVfYmVnaW5zY2Fu KHBnX3BlcmlvZCwgUGVyaW9kUmVsaWROYW1lSW5kZXhJZCwgdHJ1ZSwKKwkJCQkJCQkgIE5VTEws IDIsIHNrZXkpOworCisJLyogVGhlcmUgY2FuIGJlIGF0IG1vc3Qgb25lIG1hdGNoaW5nIHJvdyAq LworCWlmIChIZWFwVHVwbGVJc1ZhbGlkKHR1cGxlID0gc3lzdGFibGVfZ2V0bmV4dChzY2FuKSkp CisJCXBlck9pZCA9ICgoRm9ybV9wZ19wZXJpb2QpIEdFVFNUUlVDVCh0dXBsZSkpLT5vaWQ7CisK KwlzeXN0YWJsZV9lbmRzY2FuKHNjYW4pOworCisJLyogSWYgbm8gc3VjaCBwZXJpb2QgZXhpc3Rz LCBjb21wbGFpbiAqLworCWlmICghT2lkSXNWYWxpZChwZXJPaWQpICYmICFtaXNzaW5nX29rKQor CQllcmVwb3J0KEVSUk9SLAorCQkJCShlcnJjb2RlKEVSUkNPREVfVU5ERUZJTkVEX09CSkVDVCks CisJCQkJIGVycm1zZygicGVyaW9kIFwiJXNcIiBmb3IgdGFibGUgXCIlc1wiIGRvZXMgbm90IGV4 aXN0IiwKKwkJCQkJCXBlcm5hbWUsIGdldF9yZWxfbmFtZShyZWxpZCkpKSk7CisKKwl0YWJsZV9j bG9zZShwZ19wZXJpb2QsIEFjY2Vzc1NoYXJlTG9jayk7CisKKwlyZXR1cm4gcGVyT2lkOworfQor CisvKgorICogZ2V0X3BlcmlvZF9hdHRub3MKKyAqCQlHZXQgdGhlIGF0dG5vIG9mIHRoZSBHRU5F UkFURUQgcmFuZ2V0eXBlIGNvbHVtbgorICoJCWZvciBhbGwgUEVSSU9EcyBpbiB0aGlzIHRhYmxl LgorICovCitleHRlcm4gQml0bWFwc2V0ICoKK2dldF9wZXJpb2RfYXR0bm9zKE9pZCByZWxpZCkK K3sKKwlCaXRtYXBzZXQgICphdHRub3MgPSBOVUxMOworCVJlbGF0aW9uCXBnX3BlcmlvZDsKKwlI ZWFwVHVwbGUJdHVwbGU7CisJU3lzU2NhbkRlc2Mgc2NhbjsKKwlTY2FuS2V5RGF0YSBza2V5WzFd OworCisJcGdfcGVyaW9kID0gdGFibGVfb3BlbihQZXJpb2RSZWxhdGlvbklkLCBBY2Nlc3NTaGFy ZUxvY2spOworCisJU2NhbktleUluaXQoJnNrZXlbMF0sCisJCQkJQW51bV9wZ19wZXJpb2RfcGVy cmVsaWQsCisJCQkJQlRFcXVhbFN0cmF0ZWd5TnVtYmVyLCBGX09JREVRLAorCQkJCU9iamVjdElk R2V0RGF0dW0ocmVsaWQpKTsKKworCXNjYW4gPSBzeXN0YWJsZV9iZWdpbnNjYW4ocGdfcGVyaW9k LCBQZXJpb2RSZWxpZE5hbWVJbmRleElkLCB0cnVlLAorCQkJCQkJCSAgTlVMTCwgMSwgc2tleSk7 CisKKwl3aGlsZSAoSGVhcFR1cGxlSXNWYWxpZCh0dXBsZSA9IHN5c3RhYmxlX2dldG5leHQoc2Nh bikpKQorCXsKKwkJRm9ybV9wZ19wZXJpb2QgcGVyaW9kID0gKEZvcm1fcGdfcGVyaW9kKSBHRVRT VFJVQ1QodHVwbGUpOworCisJCWF0dG5vcyA9IGJtc19hZGRfbWVtYmVyKGF0dG5vcywgcGVyaW9k LT5wZXJyYW5nZSk7CisJfQorCisJc3lzdGFibGVfZW5kc2NhbihzY2FuKTsKKwl0YWJsZV9jbG9z ZShwZ19wZXJpb2QsIEFjY2Vzc1NoYXJlTG9jayk7CisKKwlyZXR1cm4gYXR0bm9zOworfQpkaWZm IC0tZ2l0IGEvc3JjL2JhY2tlbmQvY2F0YWxvZy9zcWxfZmVhdHVyZXMudHh0IGIvc3JjL2JhY2tl bmQvY2F0YWxvZy9zcWxfZmVhdHVyZXMudHh0CmluZGV4IDNhOGFkMjAxNjA3Li4wMTZiNjdiY2Yx YyAxMDA2NDQKLS0tIGEvc3JjL2JhY2tlbmQvY2F0YWxvZy9zcWxfZmVhdHVyZXMudHh0CisrKyBi L3NyYy9iYWNrZW5kL2NhdGFsb2cvc3FsX2ZlYXR1cmVzLnR4dApAQCAtNDQ4LDcgKzQ0OCw3IEBA IFQxNzYJU2VxdWVuY2UgZ2VuZXJhdG9yIHN1cHBvcnQJCQlOTwlzdXBwb3J0ZWQgZXhjZXB0IGZv ciBORVhUIFZBTFVFIEZPUgogVDE3NwlTZXF1ZW5jZSBnZW5lcmF0b3Igc3VwcG9ydDogc2ltcGxl IHJlc3RhcnQgb3B0aW9uCQkJWUVTCQogVDE3OAlJZGVudGl0eSBjb2x1bW5zOiBzaW1wbGUgcmVz dGFydCBvcHRpb24JCQlZRVMJCiBUMTgwCVN5c3RlbS12ZXJzaW9uZWQgdGFibGVzCQkJTk8JCi1U MTgxCUFwcGxpY2F0aW9uLXRpbWUgcGVyaW9kIHRhYmxlcwkJCU5PCQorVDE4MQlBcHBsaWNhdGlv bi10aW1lIHBlcmlvZCB0YWJsZXMJCQlZRVMJCiBUMTkxCVJlZmVyZW50aWFsIGFjdGlvbiBSRVNU UklDVAkJCVlFUwkKIFQyMDAJVHJpZ2dlciBEREwJCQlOTwlzaW1pbGFyIGJ1dCBub3QgZnVsbHkg Y29tcGF0aWJsZQogVDIwMQlDb21wYXJhYmxlIGRhdGEgdHlwZXMgZm9yIHJlZmVyZW50aWFsIGNv bnN0cmFpbnRzCQkJWUVTCQpkaWZmIC0tZ2l0IGEvc3JjL2JhY2tlbmQvY29tbWFuZHMvY29tbWVu dC5jIGIvc3JjL2JhY2tlbmQvY29tbWFuZHMvY29tbWVudC5jCmluZGV4IDVjNzgzY2M2MWYxLi4z NjMwNmM2MThiMiAxMDA2NDQKLS0tIGEvc3JjL2JhY2tlbmQvY29tbWFuZHMvY29tbWVudC5jCisr KyBiL3NyYy9iYWNrZW5kL2NvbW1hbmRzL2NvbW1lbnQuYwpAQCAtMTAyLDYgKzEwMiwxNiBAQCBD b21tZW50T2JqZWN0KENvbW1lbnRTdG10ICpzdG10KQogCQkJCQkJCQlSZWxhdGlvbkdldFJlbGF0 aW9uTmFtZShyZWxhdGlvbikpLAogCQkJCQkJIGVycmRldGFpbF9yZWxraW5kX25vdF9zdXBwb3J0 ZWQocmVsYXRpb24tPnJkX3JlbC0+cmVsa2luZCkpKTsKIAkJCWJyZWFrOworCisJCWNhc2UgT0JK RUNUX1BFUklPRDoKKwkJCS8qIFBlcmlvZHMgY2FuIG9ubHkgZ28gb24gdGFibGVzICovCisJCQlp ZiAocmVsYXRpb24tPnJkX3JlbC0+cmVsa2luZCAhPSBSRUxLSU5EX1JFTEFUSU9OKQorCQkJCWVy ZXBvcnQoRVJST1IsCisJCQkJCQkoZXJyY29kZShFUlJDT0RFX1dST05HX09CSkVDVF9UWVBFKSwK KwkJCQkJCSBlcnJtc2coIlwiJXNcIiBpcyBub3QgYSB0YWJsZSIsCisJCQkJCQkJCVJlbGF0aW9u R2V0UmVsYXRpb25OYW1lKHJlbGF0aW9uKSkpKTsKKwkJCWJyZWFrOworCiAJCWRlZmF1bHQ6CiAJ CQlicmVhazsKIAl9CmRpZmYgLS1naXQgYS9zcmMvYmFja2VuZC9jb21tYW5kcy9kcm9wY21kcy5j IGIvc3JjL2JhY2tlbmQvY29tbWFuZHMvZHJvcGNtZHMuYwppbmRleCBjZWI5YTIyOWI2My4uNTI2 YzNmZjUxNDIgMTAwNjQ0Ci0tLSBhL3NyYy9iYWNrZW5kL2NvbW1hbmRzL2Ryb3BjbWRzLmMKKysr IGIvc3JjL2JhY2tlbmQvY29tbWFuZHMvZHJvcGNtZHMuYwpAQCAtNTA0LDYgKzUwNCw3IEBAIGRv ZXNfbm90X2V4aXN0X3NraXBwaW5nKE9iamVjdFR5cGUgb2JqdHlwZSwgTm9kZSAqb2JqZWN0KQog CQljYXNlIE9CSkVDVF9ET01DT05TVFJBSU5UOgogCQljYXNlIE9CSkVDVF9MQVJHRU9CSkVDVDoK IAkJY2FzZSBPQkpFQ1RfUEFSQU1FVEVSX0FDTDoKKwkJY2FzZSBPQkpFQ1RfUEVSSU9EOgogCQlj YXNlIE9CSkVDVF9QVUJMSUNBVElPTl9OQU1FU1BBQ0U6CiAJCWNhc2UgT0JKRUNUX1BVQkxJQ0FU SU9OX1JFTDoKIAkJY2FzZSBPQkpFQ1RfVEFCQ09OU1RSQUlOVDoKZGlmZiAtLWdpdCBhL3NyYy9i YWNrZW5kL2NvbW1hbmRzL2V2ZW50X3RyaWdnZXIuYyBiL3NyYy9iYWNrZW5kL2NvbW1hbmRzL2V2 ZW50X3RyaWdnZXIuYwppbmRleCBmMzQ4NjhkYTVhYi4uNTE0ZGEwNGJlNzcgMTAwNjQ0Ci0tLSBh L3NyYy9iYWNrZW5kL2NvbW1hbmRzL2V2ZW50X3RyaWdnZXIuYworKysgYi9zcmMvYmFja2VuZC9j b21tYW5kcy9ldmVudF90cmlnZ2VyLmMKQEAgLTIzMDEsNiArMjMwMSw3IEBAIHN0cmluZ2lmeV9n cmFudF9vYmp0eXBlKE9iamVjdFR5cGUgb2JqdHlwZSkKIAkJY2FzZSBPQkpFQ1RfT1BDTEFTUzoK IAkJY2FzZSBPQkpFQ1RfT1BFUkFUT1I6CiAJCWNhc2UgT0JKRUNUX09QRkFNSUxZOgorCQljYXNl IE9CSkVDVF9QRVJJT0Q6CiAJCWNhc2UgT0JKRUNUX1BPTElDWToKIAkJY2FzZSBPQkpFQ1RfUFVC TElDQVRJT046CiAJCWNhc2UgT0JKRUNUX1BVQkxJQ0FUSU9OX05BTUVTUEFDRToKQEAgLTIzODUs NiArMjM4Niw3IEBAIHN0cmluZ2lmeV9hZGVmcHJpdnNfb2JqdHlwZShPYmplY3RUeXBlIG9ianR5 cGUpCiAJCWNhc2UgT0JKRUNUX09QRVJBVE9SOgogCQljYXNlIE9CSkVDVF9PUEZBTUlMWToKIAkJ Y2FzZSBPQkpFQ1RfUEFSQU1FVEVSX0FDTDoKKwkJY2FzZSBPQkpFQ1RfUEVSSU9EOgogCQljYXNl IE9CSkVDVF9QT0xJQ1k6CiAJCWNhc2UgT0JKRUNUX1BVQkxJQ0FUSU9OOgogCQljYXNlIE9CSkVD VF9QVUJMSUNBVElPTl9OQU1FU1BBQ0U6CmRpZmYgLS1naXQgYS9zcmMvYmFja2VuZC9jb21tYW5k cy9zZWNsYWJlbC5jIGIvc3JjL2JhY2tlbmQvY29tbWFuZHMvc2VjbGFiZWwuYwppbmRleCBjZWU1 ZDdiYmI5Yy4uZjg2NTBlYjRmZTQgMTAwNjQ0Ci0tLSBhL3NyYy9iYWNrZW5kL2NvbW1hbmRzL3Nl Y2xhYmVsLmMKKysrIGIvc3JjL2JhY2tlbmQvY29tbWFuZHMvc2VjbGFiZWwuYwpAQCAtNzksNiAr NzksNyBAQCBTZWNMYWJlbFN1cHBvcnRzT2JqZWN0VHlwZShPYmplY3RUeXBlIG9ianR5cGUpCiAJ CWNhc2UgT0JKRUNUX09QRVJBVE9SOgogCQljYXNlIE9CSkVDVF9PUEZBTUlMWToKIAkJY2FzZSBP QkpFQ1RfUEFSQU1FVEVSX0FDTDoKKwkJY2FzZSBPQkpFQ1RfUEVSSU9EOgogCQljYXNlIE9CSkVD VF9QT0xJQ1k6CiAJCWNhc2UgT0JKRUNUX1BVQkxJQ0FUSU9OX05BTUVTUEFDRToKIAkJY2FzZSBP QkpFQ1RfUFVCTElDQVRJT05fUkVMOgpkaWZmIC0tZ2l0IGEvc3JjL2JhY2tlbmQvY29tbWFuZHMv dGFibGVjbWRzLmMgYi9zcmMvYmFja2VuZC9jb21tYW5kcy90YWJsZWNtZHMuYwppbmRleCAyMzEy NjdjODhjZS4uYjMyMzY5NjdiZGIgMTAwNjQ0Ci0tLSBhL3NyYy9iYWNrZW5kL2NvbW1hbmRzL3Rh YmxlY21kcy5jCisrKyBiL3NyYy9iYWNrZW5kL2NvbW1hbmRzL3RhYmxlY21kcy5jCkBAIC00NSw2 ICs0NSw3IEBACiAjaW5jbHVkZSAiY2F0YWxvZy9wZ19sYXJnZW9iamVjdF9tZXRhZGF0YS5oIgog I2luY2x1ZGUgImNhdGFsb2cvcGdfbmFtZXNwYWNlLmgiCiAjaW5jbHVkZSAiY2F0YWxvZy9wZ19v cGNsYXNzLmgiCisjaW5jbHVkZSAiY2F0YWxvZy9wZ19wZXJpb2QuaCIKICNpbmNsdWRlICJjYXRh bG9nL3BnX3BvbGljeS5oIgogI2luY2x1ZGUgImNhdGFsb2cvcGdfcHJvYy5oIgogI2luY2x1ZGUg ImNhdGFsb2cvcGdfcHVibGljYXRpb25fcmVsLmgiCkBAIC0xNTYsNiArMTU3LDEzIEBAIHR5cGVk ZWYgZW51bSBBbHRlclRhYmxlUGFzcwogCUFUX1BBU1NfT0xEX0lOREVYLAkJCS8qIHJlLWFkZCBl eGlzdGluZyBpbmRleGVzICovCiAJQVRfUEFTU19PTERfQ09OU1RSLAkJCS8qIHJlLWFkZCBleGlz dGluZyBjb25zdHJhaW50cyAqLwogCS8qIFdlIGNvdWxkIHN1cHBvcnQgYSBSRU5BTUUgQ09MVU1O IHBhc3MgaGVyZSwgYnV0IG5vdCBjdXJyZW50bHkgdXNlZCAqLworCisJLyoKKwkgKiBXZSBtdXN0 IGFkZCBQRVJJT0RzIGFmdGVyIGNvbHVtbnMsIGluIGNhc2UgdGhleSByZWZlcmVuY2UgYSBuZXds eS1hZGRlZAorCSAqIGNvbHVtbiwgYW5kIGJlZm9yZSBjb25zdHJhaW50cywgaW4gY2FzZSBhIG5l d2x5LWFkZGVkIFBLL0ZLIHJlZmVyZW5jZXMKKwkgKiB0aGVtLgorCSAqLworCUFUX1BBU1NfQURE X1BFUklPRCwJCQkvKiBBREQgUEVSSU9EICovCiAJQVRfUEFTU19BRERfQ09OU1RSLAkJCS8qIEFE RCBjb25zdHJhaW50cyAoaW5pdGlhbCBleGFtaW5hdGlvbikgKi8KIAlBVF9QQVNTX0NPTF9BVFRS UywJCQkvKiBzZXQgY29sdW1uIGF0dHJpYnV0ZXMsIGVnIE5PVCBOVUxMICovCiAJQVRfUEFTU19B RERfSU5ERVhDT05TVFIsCS8qIEFERCBpbmRleC1iYXNlZCBjb25zdHJhaW50cyAqLwpAQCAtMzc1 LDYgKzM4Myw3IEBAIHN0YXRpYyBMaXN0ICpNZXJnZUF0dHJpYnV0ZXMoTGlzdCAqY29sdW1ucywg Y29uc3QgTGlzdCAqc3VwZXJzLCBjaGFyIHJlbHBlcnNpc3RlCiAJCQkJCQkJIGJvb2wgaXNfcGFy dGl0aW9uLCBMaXN0ICoqc3VwY29uc3RyLAogCQkJCQkJCSBMaXN0ICoqc3Vwbm90bnVsbHMpOwog c3RhdGljIExpc3QgKk1lcmdlQ2hlY2tDb25zdHJhaW50KExpc3QgKmNvbnN0cmFpbnRzLCBjb25z dCBjaGFyICpuYW1lLCBOb2RlICpleHByLCBib29sIGlzX2VuZm9yY2VkKTsKK3N0YXRpYyBMaXN0 ICpNZXJnZVBlcmlvZHMoY2hhciAqcmVsbmFtZSwgTGlzdCAqcGVyaW9kcywgTGlzdCAqdGFibGVF bHRzLCBMaXN0ICpzdXBlcnMpOwogc3RhdGljIHZvaWQgTWVyZ2VDaGlsZEF0dHJpYnV0ZShMaXN0 ICppbmhfY29sdW1ucywgaW50IGV4aXN0X2F0dG5vLCBpbnQgbmV3Y29sX2F0dG5vLCBjb25zdCBD b2x1bW5EZWYgKm5ld2RlZik7CiBzdGF0aWMgQ29sdW1uRGVmICpNZXJnZUluaGVyaXRlZEF0dHJp YnV0ZShMaXN0ICppbmhfY29sdW1ucywgaW50IGV4aXN0X2F0dG5vLCBjb25zdCBDb2x1bW5EZWYg Km5ld2RlZik7CiBzdGF0aWMgdm9pZCBNZXJnZUF0dHJpYnV0ZXNJbnRvRXhpc3RpbmcoUmVsYXRp b24gY2hpbGRfcmVsLCBSZWxhdGlvbiBwYXJlbnRfcmVsLCBib29sIGlzcGFydGl0aW9uKTsKQEAg LTQ5Nyw2ICs1MDYsOCBAQCBzdGF0aWMgT2JqZWN0QWRkcmVzcyBBVEV4ZWNBZGRDb2x1bW4oTGlz dCAqKndxdWV1ZSwgQWx0ZXJlZFRhYmxlSW5mbyAqdGFiLAogCQkJCQkJCQkJIEFsdGVyVGFibGVV dGlsaXR5Q29udGV4dCAqY29udGV4dCk7CiBzdGF0aWMgYm9vbCBjaGVja19mb3JfY29sdW1uX25h bWVfY29sbGlzaW9uKFJlbGF0aW9uIHJlbCwgY29uc3QgY2hhciAqY29sbmFtZSwKIAkJCQkJCQkJ CQkJYm9vbCBpZl9ub3RfZXhpc3RzKTsKK3N0YXRpYyBib29sIGNoZWNrX2Zvcl9wZXJpb2RfbmFt ZV9jb2xsaXNpb24oUmVsYXRpb24gcmVsLCBjb25zdCBjaGFyICpwZXJuYW1lLAorCQkJCQkJCQkJ CQlib29sIGNvbGV4aXN0cywgYm9vbCBpZl9ub3RfZXhpc3RzKTsKIHN0YXRpYyB2b2lkIGFkZF9j b2x1bW5fZGF0YXR5cGVfZGVwZW5kZW5jeShPaWQgcmVsaWQsIGludDMyIGF0dG51bSwgT2lkIHR5 cGlkKTsKIHN0YXRpYyB2b2lkIGFkZF9jb2x1bW5fY29sbGF0aW9uX2RlcGVuZGVuY3koT2lkIHJl bGlkLCBpbnQzMiBhdHRudW0sIE9pZCBjb2xsaWQpOwogc3RhdGljIE9iamVjdEFkZHJlc3MgQVRF eGVjRHJvcE5vdE51bGwoUmVsYXRpb24gcmVsLCBjb25zdCBjaGFyICpjb2xOYW1lLCBib29sIHJl Y3Vyc2UsCkBAIC01MTQsNiArNTI1LDE1IEBAIHN0YXRpYyBPYmplY3RBZGRyZXNzIEFURXhlY0Nv bHVtbkRlZmF1bHQoUmVsYXRpb24gcmVsLCBjb25zdCBjaGFyICpjb2xOYW1lLAogCQkJCQkJCQkJ CSBOb2RlICpuZXdEZWZhdWx0LCBMT0NLTU9ERSBsb2NrbW9kZSk7CiBzdGF0aWMgT2JqZWN0QWRk cmVzcyBBVEV4ZWNDb29rZWRDb2x1bW5EZWZhdWx0KFJlbGF0aW9uIHJlbCwgQXR0ck51bWJlciBh dHRudW0sCiAJCQkJCQkJCQkJCSAgIE5vZGUgKm5ld0RlZmF1bHQpOworc3RhdGljIHZvaWQgQVRQ cmVwQWRkUGVyaW9kKExpc3QgKip3cXVldWUsIFJlbGF0aW9uIHJlbCwgQWx0ZXJUYWJsZUNtZCAq Y21kLAorCQkJCQkJCUxPQ0tNT0RFIGxvY2ttb2RlLCBBbHRlclRhYmxlVXRpbGl0eUNvbnRleHQg KmNvbnRleHQpOworc3RhdGljIE9iamVjdEFkZHJlc3MgQVRFeGVjQWRkUGVyaW9kKExpc3QgKip3 cXVldWUsIEFsdGVyZWRUYWJsZUluZm8gKnRhYiwKKwkJCQkJCQkJCSBSZWxhdGlvbiByZWwsIFBl cmlvZERlZiAqcGVyaW9kLAorCQkJCQkJCQkJIExPQ0tNT0RFIGxvY2ttb2RlLCBBbHRlclRhYmxl VXRpbGl0eUNvbnRleHQgKmNvbnRleHQpOworc3RhdGljIHZvaWQgQVRFeGVjRHJvcFBlcmlvZChS ZWxhdGlvbiByZWwsIGNvbnN0IGNoYXIgKnBlcmlvZE5hbWUsCisJCQkJCQkJIERyb3BCZWhhdmlv ciBiZWhhdmlvciwKKwkJCQkJCQkgYm9vbCByZWN1cnNlLCBib29sIHJlY3Vyc2luZywKKwkJCQkJ CQkgYm9vbCBtaXNzaW5nX29rKTsKIHN0YXRpYyBPYmplY3RBZGRyZXNzIEFURXhlY0FkZElkZW50 aXR5KFJlbGF0aW9uIHJlbCwgY29uc3QgY2hhciAqY29sTmFtZSwKIAkJCQkJCQkJCSAgIE5vZGUg KmRlZiwgTE9DS01PREUgbG9ja21vZGUsIGJvb2wgcmVjdXJzZSwgYm9vbCByZWN1cnNpbmcpOwog c3RhdGljIE9iamVjdEFkZHJlc3MgQVRFeGVjU2V0SWRlbnRpdHkoUmVsYXRpb24gcmVsLCBjb25z dCBjaGFyICpjb2xOYW1lLApAQCAtNzM5LDYgKzc1OSwxMCBAQCBzdGF0aWMgTGlzdCAqR2V0UGFy ZW50ZWRGb3JlaWduS2V5UmVmcyhSZWxhdGlvbiBwYXJ0aXRpb24pOwogc3RhdGljIHZvaWQgQVRE ZXRhY2hDaGVja05vRm9yZWlnbktleVJlZnMoUmVsYXRpb24gcGFydGl0aW9uKTsKIHN0YXRpYyBj aGFyIEdldEF0dHJpYnV0ZUNvbXByZXNzaW9uKE9pZCBhdHR0eXBpZCwgY29uc3QgY2hhciAqY29t cHJlc3Npb24pOwogc3RhdGljIGNoYXIgR2V0QXR0cmlidXRlU3RvcmFnZShPaWQgYXR0dHlwaWQs IGNvbnN0IGNoYXIgKnN0b3JhZ2Vtb2RlKTsKK3N0YXRpYyB2b2lkIEFkZFJlbGF0aW9uTmV3UGVy aW9kKFJlbGF0aW9uIHJlbCwgUGVyaW9kRGVmICpwZXJpb2QpOworc3RhdGljIHZvaWQgVmFsaWRh dGVQZXJpb2QoUmVsYXRpb24gcmVsLCBQZXJpb2REZWYgKnBlcmlvZCk7CitzdGF0aWMgQ29uc3Ry YWludCAqbWFrZV9jb25zdHJhaW50X2Zvcl9wZXJpb2QoUmVsYXRpb24gcmVsLCBQZXJpb2REZWYg KnBlcmlvZCk7CitzdGF0aWMgQ29sdW1uRGVmICptYWtlX3JhbmdlX2NvbHVtbl9mb3JfcGVyaW9k KFBlcmlvZERlZiAqcGVyaW9kKTsKIAogCiAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCkBAIC05NjgsNiArOTkyLDk1IEBA IERlZmluZVJlbGF0aW9uKENyZWF0ZVN0bXQgKnN0bXQsIGNoYXIgcmVsa2luZCwgT2lkIG93bmVy SWQsCiAJCQkJCQlzdG10LT5wYXJ0Ym91bmQgIT0gTlVMTCwKIAkJCQkJCSZvbGRfY29uc3RyYWlu dHMsICZvbGRfbm90bnVsbHMpOwogCisJLyoKKwkgKiBVc2luZyB0aGUgY29sdW1uIGxpc3QgKGlu Y2x1ZGluZyBpbmhlcml0ZWQgY29sdW1ucyksIGZpbmQgdGhlIHN0YXJ0L2VuZAorCSAqIGNvbHVt bnMgZm9yIGVhY2ggcGVyaW9kLiBQRVJJT0RzIHNob3VsZCBiZSBpbmhlcml0ZWQgdG9vIChidXQg YXJlbid0CisJICogeWV0KS4KKwkgKi8KKwlzdG10LT5wZXJpb2RzID0gTWVyZ2VQZXJpb2RzKHJl bG5hbWUsIHN0bXQtPnBlcmlvZHMsIHN0bXQtPnRhYmxlRWx0cywgaW5oZXJpdE9pZHMpOworCisJ LyoKKwkgKiBGb3IgZWFjaCBQRVJJT0Qgd2UgbmVlZCBhIEdFTkVSQVRFRCBjb2x1bW4uIFVzdWFs bHkgd2UgbXVzdCBjcmVhdGUKKwkgKiB0aGlzLCBzbyB3ZSBhZGQgaXQgdG8gdGFibGVFbHRzLiBJ ZiB0aGUgdXNlciBzYXlzIHRoZSBjb2x1bW4gYWxyZWFkeQorCSAqIGV4aXN0cywgbWFrZSBzdXJl IGl0IGlzIHNlbnNpYmxlLiBUaGVzZSBjb2x1bW5zIGFyZSBub3QgaW5oZXJpdGVkLCBzbworCSAq IHdlIGRvbid0IHdvcnJ5IGFib3V0IGNvbmZsaWN0cyBpbiB0YWJsZUVsdHMuCisJICoKKwkgKiBX ZSBhbGxvdyB0aGlzIGNvbGV4aXN0cyBvcHRpb24gdG8gc3VwcG9ydCBwZ191cGdyYWRlLCBzbyB3 ZSBoYXZlIG1vcmUKKwkgKiBjb250cm9sIG92ZXIgdGhlIEdFTkVSQVRFRCBjb2x1bW4gKHdob3Nl IGF0dG51bSBtdXN0IG1hdGNoIHRoZSBvbGQKKwkgKiB2YWx1ZSkuCisJICoKKwkgKiBTaW5jZSB0 aGUgR0VORVJBVEVEIGNvbHVtbiBtdXN0IGJlIE5PVCBOVUxMLCB3ZSBhZGQgYSBjb25zdHJhaW50 IHRvCisJICogbm5jb25zdHJhaW50cy4KKwkgKi8KKwlmb3JlYWNoKGxpc3RwdHIsIHN0bXQtPnBl cmlvZHMpCisJeworCQlQZXJpb2REZWYgICpwZXJpb2QgPSAoUGVyaW9kRGVmICopIGxmaXJzdChs aXN0cHRyKTsKKworCQlpZiAocGVyaW9kLT5jb2xleGlzdHMpCisJCXsKKwkJCUxpc3RDZWxsICAg KmNlbGw7CisJCQlib29sCQlmb3VuZCA9IGZhbHNlOworCisJCQkvKiBGaW5kIHRoZSBleGlzdGlu ZyBjb2x1bW4gdG8gdXNlICovCisJCQlmb3JlYWNoKGNlbGwsIHN0bXQtPnRhYmxlRWx0cykKKwkJ CXsKKwkJCQlDb2x1bW5EZWYgICpjb2xEZWYgPSBsZmlyc3QoY2VsbCk7CisKKwkJCQlpZiAoc3Ry Y21wKHBlcmlvZC0+cGVyaW9kbmFtZSwgY29sRGVmLT5jb2xuYW1lKSA9PSAwKQorCQkJCXsKKwkJ CQkJLyoKKwkJCQkJICogTWFrZSBzdXJlIHRoZSBleGlzdGluZyBjb2x1bW4gbWF0Y2hlcyB3aGF0 IHdlIHdvdWxkIGhhdmUKKwkJCQkJICogY3JlYXRlZC4gRmlyc3QgYWxsLCBpdCBtdXN0IGJlIEdF TkVSQVRFRC4KKwkJCQkJICovCisJCQkJCWlmIChjb2xEZWYtPmdlbmVyYXRlZCA9PSAnXDAnKQor CQkJCQkJZXJlcG9ydChFUlJPUiwgKGVycm1zZygiUGVyaW9kICVzIHVzZXMgYSBub24tZ2VuZXJh dGVkIGNvbHVtbiIsCisJCQkJCQkJCQkJcGVyaW9kLT5wZXJpb2RuYW1lKSkpOworCisJCQkJCS8q IFRoZSBHRU5FUkFURUQgY29sdW1uIG11c3QgYmUgU1RPUkVELiAqLworCQkJCQlpZiAoY29sRGVm LT5nZW5lcmF0ZWQgIT0gQVRUUklCVVRFX0dFTkVSQVRFRF9TVE9SRUQpCisJCQkJCQllcmVwb3J0 KEVSUk9SLCAoZXJybXNnKCJQZXJpb2QgJXMgdXNlcyBhIGdlbmVyYXRlZCBjb2x1bW4gdGhhdCBp cyBub3QgU1RPUkVEIiwKKwkJCQkJCQkJCQlwZXJpb2QtPnBlcmlvZG5hbWUpKSk7CisKKwkJCQkJ LyogVGhlIEdFTkVSQVRFRCBjb2x1bW4gbXVzdCBub3QgYWxsb3cgbnVsbHMuICovCisJCQkJCWlm ICghY29sRGVmLT5pc19ub3RfbnVsbCAmJiAhSXNCaW5hcnlVcGdyYWRlKQorCQkJCQkJZXJlcG9y dChFUlJPUiwgKGVycm1zZygiUGVyaW9kICVzIHVzZXMgYSBnZW5lcmF0ZWQgY29sdW1uIHRoYXQg YWxsb3dzIG51bGxzIiwKKwkJCQkJCQkJCQlwZXJpb2QtPnBlcmlvZG5hbWUpKSk7CisKKwkJCQkJ LyogVGhlIEdFTkVSQVRFRCBjb2x1bW4gbXVzdCBtYXRjaCBvdXIgcmFuZ2V0eXBlLiAqLworCQkJ CQlpZiAocGVyaW9kLT5ybmd0eXBpZCAhPSB0eXBlbmFtZVR5cGVJZChOVUxMLCBjb2xEZWYtPnR5 cGVOYW1lKSkKKwkJCQkJCWVyZXBvcnQoRVJST1IsIChlcnJtc2coIlBlcmlvZCAlcyB1c2VzIGEg Z2VuZXJhdGVkIGNvbHVtbiB3aXRoIHRoZSB3cm9uZyB0eXBlIiwKKwkJCQkJCQkJCQlwZXJpb2Qt PnBlcmlvZG5hbWUpKSk7CisKKwkJCQkJLyoKKwkJCQkJICogVGhlIEdFTkVSQVRFRCBjb2x1bW4g bXVzdCBub3QgYmUgaW5oZXJpdGVkLgorCQkJCQkgKiBYWFg6IElmIHRoZSBQRVJJT0QgaXMgaW5o ZXJpdGVkLCB0aGV5IG11c3QgY29tZSBmcm9tIHRoZQorCQkJCQkgKiBzYW1lIHBhcmVudC4KKwkJ CQkJICovCisJCQkJCWlmICghY29sRGVmLT5pc19sb2NhbCkKKwkJCQkJCWVyZXBvcnQoRVJST1Is IChlcnJtc2coIlBlcmlvZCAlcyB1c2VzIGEgZ2VuZXJhdGVkIGNvbHVtbiB0aGF0IGlzIGluaGVy aXRlZCIsCisJCQkJCQkJCQkJcGVyaW9kLT5wZXJpb2RuYW1lKSkpOworCQkJCQkvKgorCQkJCQkg KiBYWFg6IFdlIHNob3VsZCBjaGVjayB0aGUgR0VORVJBVEVEIGV4cHJlc3Npb24gYWxzbywgYnV0 CisJCQkJCSAqIHRoYXQgaXMgaGFyZCB0byBkbyBiZWNhdXNlIG9uZSBpcyBjb29rZWQgYW5kIG9u ZSBpcyByYXcuCisJCQkJCSAqLworCisJCQkJCWZvdW5kID0gdHJ1ZTsKKwkJCQl9CisJCQl9CisK KwkJCWlmICghZm91bmQpCisJCQkJZXJlcG9ydChFUlJPUiwgKGVycm1zZygiTm8gY29sdW1uIGZv dW5kIHdpdGggbmFtZSAlcyIsIHBlcmlvZC0+cGVyaW9kbmFtZSkpKTsKKwkJfQorCQllbHNlCisJ CXsKKwkJCUNvbHVtbkRlZiAgKmNvbCA9IG1ha2VfcmFuZ2VfY29sdW1uX2Zvcl9wZXJpb2QocGVy aW9kKTsKKwkJCUNvbnN0cmFpbnQgKmNvbnN0ciA9IG1ha2VOb3ROdWxsQ29uc3RyYWludChtYWtl U3RyaW5nKGNvbC0+Y29sbmFtZSkpOworCisJCQlzdG10LT50YWJsZUVsdHMgPSBsYXBwZW5kKHN0 bXQtPnRhYmxlRWx0cywgY29sKTsKKwkJCXN0bXQtPm5uY29uc3RyYWludHMgPSBsYXBwZW5kKHN0 bXQtPm5uY29uc3RyYWludHMsIGNvbnN0cik7CisJCX0KKwl9CisKIAkvKgogCSAqIENyZWF0ZSBh IHR1cGxlIGRlc2NyaXB0b3IgZnJvbSB0aGUgcmVsYXRpb24gc2NoZW1hLiAgTm90ZSB0aGF0IHRo aXMKIAkgKiBkZWFscyB3aXRoIGNvbHVtbiBuYW1lcywgdHlwZXMsIGFuZCBpbi1kZXNjcmlwdG9y IE5PVCBOVUxMIGZsYWdzLCBidXQKQEAgLTEzMzYsNyArMTQ0OSw3IEBAIERlZmluZVJlbGF0aW9u KENyZWF0ZVN0bXQgKnN0bXQsIGNoYXIgcmVsa2luZCwgT2lkIG93bmVySWQsCiAJCQkJCQkJCSAg dHJ1ZSwgdHJ1ZSwgZmFsc2UsIHF1ZXJ5U3RyaW5nKTsKIAogCS8qCi0JICogRmluYWxseSwgbWVy Z2UgdGhlIG5vdC1udWxsIGNvbnN0cmFpbnRzIHRoYXQgYXJlIGRlY2xhcmVkIGRpcmVjdGx5IHdp dGgKKwkgKiBOb3cgbWVyZ2UgdGhlIG5vdC1udWxsIGNvbnN0cmFpbnRzIHRoYXQgYXJlIGRlY2xh cmVkIGRpcmVjdGx5IHdpdGgKIAkgKiB0aG9zZSB0aGF0IGNvbWUgZnJvbSBwYXJlbnQgcmVsYXRp b25zIChtYWtpbmcgc3VyZSB0byBjb3VudCBpbmhlcml0YW5jZQogCSAqIGFwcHJvcHJpYXRlbHkg Zm9yIGVhY2gpLCBjcmVhdGUgdGhlbSwgYW5kIHNldCB0aGUgYXR0bm90bnVsbCBmbGFnIG9uCiAJ ICogY29sdW1ucyB0aGF0IGRvbid0IHlldCBoYXZlIGl0LgpAQCAtMTM0Niw2ICsxNDU5LDIxIEBA IERlZmluZVJlbGF0aW9uKENyZWF0ZVN0bXQgKnN0bXQsIGNoYXIgcmVsa2luZCwgT2lkIG93bmVy SWQsCiAJZm9yZWFjaF9pbnQoYXR0cm51bSwgbm5jb2xzKQogCQlzZXRfYXR0bm90bnVsbChOVUxM LCByZWwsIGF0dHJudW0sIHRydWUsIGZhbHNlKTsKIAorCS8qCisJICogRmluYWxseSwgY3JlYXRl IHBlcmlvZHMgZm9yIHRoZSB0YWJsZS4gVGhpcyBtdXN0IGNvbWUgYWZ0ZXIgd2UgY3JlYXRlCisJ ICogY29sdW1ucyBhbmQgYmVmb3JlIHdlIGNyZWF0ZSBpbmRleCBjb25zdHJhaW50cy4gSXQgd2ls bCBhdXRvbWF0aWNhbGx5CisJICogY3JlYXRlIGEgQ0hFQ0sgY29uc3RyYWludCBmb3IgdGhlIHBl cmlvZC4KKwkgKi8KKwlmb3JlYWNoKGxpc3RwdHIsIHN0bXQtPnBlcmlvZHMpCisJeworCQlQZXJp b2REZWYgICpwZXJpb2QgPSAoUGVyaW9kRGVmICopIGxmaXJzdChsaXN0cHRyKTsKKworCQkvKiBE b24ndCB1cGRhdGUgdGhlIGNvdW50IG9mIGNoZWNrIGNvbnN0cmFpbnRzIHR3aWNlICovCisJCUNv bW1hbmRDb3VudGVySW5jcmVtZW50KCk7CisKKwkJQWRkUmVsYXRpb25OZXdQZXJpb2QocmVsLCBw ZXJpb2QpOworCX0KKwogCU9iamVjdEFkZHJlc3NTZXQoYWRkcmVzcywgUmVsYXRpb25SZWxhdGlv bklkLCByZWxhdGlvbklkKTsKIAogCS8qCkBAIC0xNDQ1LDYgKzE1NzMsMzM2IEBAIEJ1aWxkRGVz Y0ZvclJlbGF0aW9uKGNvbnN0IExpc3QgKmNvbHVtbnMpCiAJcmV0dXJuIGRlc2M7CiB9CiAKKy8q CisgKiBtYWtlX2NvbnN0cmFpbnRfZm9yX3BlcmlvZAorICoKKyAqIEJ1aWxkcyBhIENIRUNLIENv bnN0cmFpbnQgdG8gZW5zdXJlIHN0YXJ0IDwgZW5kLgorICogUmV0dXJucyB0aGUgQ0hFQ0sgQ29u c3RyYWludC4KKyAqIEFsc28gZmlsbHMgaW4gcGVyaW9kLT5jb25zdHJhaW50bmFtZSBpZiBuZWVk ZWQuCisgKgorICogSWYgZWl0aGVyIGJvdW5kIGlzIE5VTEwsIHRoZSBjb25zdHJhaW50IHBhc3Nl cworICogKHNpbmNlIHRoYXQgaW5kaWNhdGVzIGFuIHVuYm91bmRlZCByYW5nZSkuCisgKi8KK3N0 YXRpYyBDb25zdHJhaW50ICoKK21ha2VfY29uc3RyYWludF9mb3JfcGVyaW9kKFJlbGF0aW9uIHJl bCwgUGVyaW9kRGVmICpwZXJpb2QpCit7CisJQ29sdW1uUmVmICAqc2NvbCwKKwkJCSAgICplY29s OworCUNvbnN0cmFpbnQgKmNvbnN0cjsKKwlUeXBlQ2FjaGVFbnRyeSAqdHlwZTsKKworCWlmIChw ZXJpb2QtPmNvbnN0cmFpbnRuYW1lID09IE5VTEwpCisJCXBlcmlvZC0+Y29uc3RyYWludG5hbWUg PSBDaG9vc2VDb25zdHJhaW50TmFtZShSZWxhdGlvbkdldFJlbGF0aW9uTmFtZShyZWwpLAorCQkJ CQkJCQkJCQkJCSAgcGVyaW9kLT5wZXJpb2RuYW1lLAorCQkJCQkJCQkJCQkJCSAgImNoZWNrIiwK KwkJCQkJCQkJCQkJCQkgIFJlbGF0aW9uR2V0TmFtZXNwYWNlKHJlbCksCisJCQkJCQkJCQkJCQkJ ICBOSUwpOworCXNjb2wgPSBtYWtlTm9kZShDb2x1bW5SZWYpOworCXNjb2wtPmZpZWxkcyA9IGxp c3RfbWFrZTEobWFrZVN0cmluZyhwc3RyZHVwKHBlcmlvZC0+c3RhcnRjb2xuYW1lKSkpOworCXNj b2wtPmxvY2F0aW9uID0gMDsKKworCWVjb2wgPSBtYWtlTm9kZShDb2x1bW5SZWYpOworCWVjb2wt PmZpZWxkcyA9IGxpc3RfbWFrZTEobWFrZVN0cmluZyhwc3RyZHVwKHBlcmlvZC0+ZW5kY29sbmFt ZSkpKTsKKwllY29sLT5sb2NhdGlvbiA9IDA7CisKKwl0eXBlID0gbG9va3VwX3R5cGVfY2FjaGUo cGVyaW9kLT5jb2x0eXBpZCwgVFlQRUNBQ0hFX0xUX09QUik7CisJaWYgKHR5cGUtPmx0X29wciA9 PSBJbnZhbGlkT2lkKQorCQllcmVwb3J0KEVSUk9SLAorCQkJCShlcnJjb2RlKEVSUkNPREVfRkVB VFVSRV9OT1RfU1VQUE9SVEVEKSwKKwkJCQkgZXJybXNnKCJjb2x1bW4gXCIlc1wiIGNhbm5vdCBi ZSB1c2VkIGluIGEgUEVSSU9EIGJlY2F1c2UgaXRzIHR5cGUgJXMgaGFzIG5vIGxlc3MgdGhhbiBv cGVyYXRvciIsCisJCQkJCQlwZXJpb2QtPnN0YXJ0Y29sbmFtZSwgZm9ybWF0X3R5cGVfYmUocGVy aW9kLT5jb2x0eXBpZCkpKSk7CisKKwljb25zdHIgPSBtYWtlTm9kZShDb25zdHJhaW50KTsKKwlj b25zdHItPmNvbnR5cGUgPSBDT05TVFJfQ0hFQ0s7CisJY29uc3RyLT5jb25uYW1lID0gcGVyaW9k LT5jb25zdHJhaW50bmFtZTsKKwljb25zdHItPmRlZmVycmFibGUgPSBmYWxzZTsKKwljb25zdHIt PmluaXRkZWZlcnJlZCA9IGZhbHNlOworCWNvbnN0ci0+bG9jYXRpb24gPSAtMTsKKwljb25zdHIt PmlzX25vX2luaGVyaXQgPSBmYWxzZTsKKwljb25zdHItPnJhd19leHByID0gKE5vZGUgKikgbWFr ZVNpbXBsZUFfRXhwcihBRVhQUl9PUCwKKwkJCQkJCQkJCQkJCSBnZXRfb3BuYW1lKHR5cGUtPmx0 X29wciksCisJCQkJCQkJCQkJCQkgKE5vZGUgKikgc2NvbCwKKwkJCQkJCQkJCQkJCSAoTm9kZSAq KSBlY29sLAorCQkJCQkJCQkJCQkJIDApOworCWNvbnN0ci0+Y29va2VkX2V4cHIgPSBOVUxMOwor CWNvbnN0ci0+c2tpcF92YWxpZGF0aW9uID0gZmFsc2U7CisJY29uc3RyLT5pc19lbmZvcmNlZCA9 IHRydWU7CisJY29uc3RyLT5pbml0aWFsbHlfdmFsaWQgPSB0cnVlOworCisJcmV0dXJuIGNvbnN0 cjsKK30KKworLyoKKyAqIG1ha2VfcmFuZ2VfY29sdW1uX2Zvcl9wZXJpb2QKKyAqCisgKiBCdWls ZHMgYSBHRU5FUkFURUQgQUxXQVlTIHJhbmdlIGNvbHVtbiBiYXNlZCBvbiB0aGUgUEVSSU9ECisg KiBzdGFydC9lbmQgY29sdW1ucy4gUmV0dXJucyB0aGUgQ29sdW1uRGVmLgorICovCitDb2x1bW5E ZWYgKgorbWFrZV9yYW5nZV9jb2x1bW5fZm9yX3BlcmlvZChQZXJpb2REZWYgKnBlcmlvZCkKK3sK KwljaGFyCSAgICpyYW5nZV90eXBlX25hbWVzcGFjZTsKKwljaGFyCSAgICpyYW5nZV90eXBlX25h bWU7CisJQ29sdW1uRGVmICAqY29sID0gbWFrZU5vZGUoQ29sdW1uRGVmKTsKKwlDb2x1bW5SZWYg ICpzdGFydHZhciwKKwkJCSAgICplbmR2YXI7CisJRXhwcgkgICAqcmFuZ2VDb25zdHJ1Y3RvcjsK KworCWlmICghZ2V0X3R5cG5hbWVfYW5kX25hbWVzcGFjZShwZXJpb2QtPnJuZ3R5cGlkLCAmcmFu Z2VfdHlwZV9uYW1lLAorCQkJCQkJCQkgICAmcmFuZ2VfdHlwZV9uYW1lc3BhY2UpKQorCQllbG9n KEVSUk9SLCAibWlzc2luZyByYW5nZSB0eXBlICVkIiwgcGVyaW9kLT5ybmd0eXBpZCk7CisKKwlz dGFydHZhciA9IG1ha2VOb2RlKENvbHVtblJlZik7CisJc3RhcnR2YXItPmZpZWxkcyA9IGxpc3Rf bWFrZTEobWFrZVN0cmluZyhwc3RyZHVwKHBlcmlvZC0+c3RhcnRjb2xuYW1lKSkpOworCWVuZHZh ciA9IG1ha2VOb2RlKENvbHVtblJlZik7CisJZW5kdmFyLT5maWVsZHMgPSBsaXN0X21ha2UxKG1h a2VTdHJpbmcocHN0cmR1cChwZXJpb2QtPmVuZGNvbG5hbWUpKSk7CisJcmFuZ2VDb25zdHJ1Y3Rv ciA9IChFeHByICopIG1ha2VGdW5jQ2FsbCgKKwkJCQkJCQkJCQkJIGxpc3RfbWFrZTIobWFrZVN0 cmluZyhyYW5nZV90eXBlX25hbWVzcGFjZSksIG1ha2VTdHJpbmcocmFuZ2VfdHlwZV9uYW1lKSks CisJCQkJCQkJCQkJCSBsaXN0X21ha2UyKHN0YXJ0dmFyLCBlbmR2YXIpLAorCQkJCQkJCQkJCQkg Q09FUkNFX0VYUExJQ0lUX0NBTEwsCisJCQkJCQkJCQkJCSBwZXJpb2QtPmxvY2F0aW9uKTsKKwor CWNvbC0+Y29sbmFtZSA9IHBzdHJkdXAocGVyaW9kLT5wZXJpb2RuYW1lKTsKKwljb2wtPnR5cGVO YW1lID0gbWFrZVR5cGVOYW1lKHJhbmdlX3R5cGVfbmFtZSk7CisJY29sLT5jb21wcmVzc2lvbiA9 IE5VTEw7CisJY29sLT5pbmhjb3VudCA9IDA7CisJY29sLT5pc19sb2NhbCA9IHRydWU7CisJY29s LT5pc19ub3RfbnVsbCA9IHRydWU7CisJY29sLT5pc19mcm9tX3R5cGUgPSBmYWxzZTsKKwljb2wt PnN0b3JhZ2UgPSAwOworCWNvbC0+c3RvcmFnZV9uYW1lID0gTlVMTDsKKwljb2wtPnJhd19kZWZh dWx0ID0gKE5vZGUgKikgcmFuZ2VDb25zdHJ1Y3RvcjsKKwljb2wtPmNvb2tlZF9kZWZhdWx0ID0g TlVMTDsKKwljb2wtPmlkZW50aXR5ID0gMDsKKwljb2wtPmdlbmVyYXRlZCA9IEFUVFJJQlVURV9H RU5FUkFURURfU1RPUkVEOworCWNvbC0+Y29sbENsYXVzZSA9IE5VTEw7CisJY29sLT5jb2xsT2lk ID0gSW52YWxpZE9pZDsKKwljb2wtPmZkd29wdGlvbnMgPSBOSUw7CisJY29sLT5sb2NhdGlvbiA9 IHBlcmlvZC0+bG9jYXRpb247CisKKwlyZXR1cm4gY29sOworfQorCisvKgorICogVmFsaWRhdGVQ ZXJpb2QKKyAqCisgKiBMb29rIHVwIHRoZSBhdHRyaWJ1dGVzIHVzZWQgYnkgdGhlIFBFUklPRCwK KyAqIG1ha2Ugc3VyZSB0aGV5IGV4aXN0LCBhcmUgbm90IHN5c3RlbSBjb2x1bW5zLAorICogYW5k IGhhdmUgdGhlIHNhbWUgdHlwZSBhbmQgY29sbGF0aW9uLgorICoKKyAqIEFkZCBvdXIgZmluZGlu Z3MgdG8gdGhlc2UgUGVyaW9kRGVmIGZpZWxkczoKKyAqCisgKiBjb2x0eXBpZCAtIHRoZSB0eXBl IG9mIFBFUklPRCBjb2x1bW5zLgorICogc3RhcnRhdHRudW0gLSB0aGUgYXR0bnVtIG9mIHRoZSBz dGFydCBjb2x1bW4uCisgKiBlbmRhdHRudW0gLSB0aGUgYXR0bnVtIG9mIHRoZSBlbmQgY29sdW1u LgorICogcm5ndHlwaWQgLSB0aGUgcmFuZ2UgdHlwZSB0byB1c2UuCisgKiBybmdhdHRudW0gLSB0 aGUgYXR0bnVtIG9mIGEgcHJlLWV4aXN0aW5nIHJhbmdlIGNvbHVtbiwgb3IgSW52YWxpZC4KKyAq Lworc3RhdGljIHZvaWQKK1ZhbGlkYXRlUGVyaW9kKFJlbGF0aW9uIHJlbCwgUGVyaW9kRGVmICpw ZXJpb2QpCit7CisJSGVhcFR1cGxlCXN0YXJ0dHVwbGU7CisJSGVhcFR1cGxlCWVuZHR1cGxlOwor CUZvcm1fcGdfYXR0cmlidXRlIGF0dHR1cGxlOworCU9pZAkJCWF0dGNvbGxhdGlvbjsKKwlPaWQJ CQllbmR0eXBpZDsKKwlPaWQJCQllbmRjb2xsYXRpb247CisKKwkvKiBGaW5kIHRoZSBzdGFydCBj b2x1bW4gKi8KKwlzdGFydHR1cGxlID0gU2VhcmNoU3lzQ2FjaGVBdHROYW1lKFJlbGF0aW9uR2V0 UmVsaWQocmVsKSwgcGVyaW9kLT5zdGFydGNvbG5hbWUpOworCWlmICghSGVhcFR1cGxlSXNWYWxp ZChzdGFydHR1cGxlKSkKKwkJZXJlcG9ydChFUlJPUiwKKwkJCQkoZXJyY29kZShFUlJDT0RFX1VO REVGSU5FRF9DT0xVTU4pLAorCQkJCSBlcnJtc2coImNvbHVtbiBcIiVzXCIgb2YgcmVsYXRpb24g XCIlc1wiIGRvZXMgbm90IGV4aXN0IiwKKwkJCQkJCXBlcmlvZC0+c3RhcnRjb2xuYW1lLCBSZWxh dGlvbkdldFJlbGF0aW9uTmFtZShyZWwpKSkpOworCWF0dHR1cGxlID0gKEZvcm1fcGdfYXR0cmli dXRlKSBHRVRTVFJVQ1Qoc3RhcnR0dXBsZSk7CisJcGVyaW9kLT5jb2x0eXBpZCA9IGF0dHR1cGxl LT5hdHR0eXBpZDsKKwlhdHRjb2xsYXRpb24gPSBhdHR0dXBsZS0+YXR0Y29sbGF0aW9uOworCXBl cmlvZC0+c3RhcnRhdHRudW0gPSBhdHR0dXBsZS0+YXR0bnVtOworCVJlbGVhc2VTeXNDYWNoZShz dGFydHR1cGxlKTsKKworCS8qIE1ha2Ugc3VyZSBpdCdzIG5vdCBhIHN5c3RlbSBjb2x1bW4gKi8K KwlpZiAocGVyaW9kLT5zdGFydGF0dG51bSA8PSAwKQorCQllcmVwb3J0KEVSUk9SLAorCQkJCShl cnJjb2RlKEVSUkNPREVfSU5WQUxJRF9PQkpFQ1RfREVGSU5JVElPTiksCisJCQkJIGVycm1zZygi Y2Fubm90IHVzZSBzeXN0ZW0gY29sdW1uIFwiJXNcIiBpbiBwZXJpb2QiLAorCQkJCQkJcGVyaW9k LT5zdGFydGNvbG5hbWUpKSk7CisKKwkvKiBGaW5kIHRoZSBlbmQgY29sdW1uICovCisJZW5kdHVw bGUgPSBTZWFyY2hTeXNDYWNoZUF0dE5hbWUoUmVsYXRpb25HZXRSZWxpZChyZWwpLCBwZXJpb2Qt PmVuZGNvbG5hbWUpOworCWlmICghSGVhcFR1cGxlSXNWYWxpZChlbmR0dXBsZSkpCisJCWVyZXBv cnQoRVJST1IsCisJCQkJKGVycmNvZGUoRVJSQ09ERV9VTkRFRklORURfQ09MVU1OKSwKKwkJCQkg ZXJybXNnKCJjb2x1bW4gXCIlc1wiIG9mIHJlbGF0aW9uIFwiJXNcIiBkb2VzIG5vdCBleGlzdCIs CisJCQkJCQlwZXJpb2QtPmVuZGNvbG5hbWUsIFJlbGF0aW9uR2V0UmVsYXRpb25OYW1lKHJlbCkp KSk7CisJYXR0dHVwbGUgPSAoRm9ybV9wZ19hdHRyaWJ1dGUpIEdFVFNUUlVDVChlbmR0dXBsZSk7 CisJZW5kdHlwaWQgPSBhdHR0dXBsZS0+YXR0dHlwaWQ7CisJZW5kY29sbGF0aW9uID0gYXR0dHVw bGUtPmF0dGNvbGxhdGlvbjsKKwlwZXJpb2QtPmVuZGF0dG51bSA9IGF0dHR1cGxlLT5hdHRudW07 CisJUmVsZWFzZVN5c0NhY2hlKGVuZHR1cGxlKTsKKworCS8qIE1ha2Ugc3VyZSBpdCdzIG5vdCBh IHN5c3RlbSBjb2x1bW4gKi8KKwlpZiAocGVyaW9kLT5lbmRhdHRudW0gPD0gMCkKKwkJZXJlcG9y dChFUlJPUiwKKwkJCQkoZXJyY29kZShFUlJDT0RFX0lOVkFMSURfT0JKRUNUX0RFRklOSVRJT04p LAorCQkJCSBlcnJtc2coImNhbm5vdCB1c2Ugc3lzdGVtIGNvbHVtbiBcIiVzXCIgaW4gcGVyaW9k IiwKKwkJCQkJCXBlcmlvZC0+ZW5kY29sbmFtZSkpKTsKKworCS8qIEJvdGggY29sdW1ucyBtdXN0 IGJlIG9mIHNhbWUgdHlwZSAqLworCWlmIChwZXJpb2QtPmNvbHR5cGlkICE9IGVuZHR5cGlkKQor CQllcmVwb3J0KEVSUk9SLAorCQkJCShlcnJjb2RlKEVSUkNPREVfREFUQVRZUEVfTUlTTUFUQ0gp LAorCQkJCSBlcnJtc2coInN0YXJ0IGFuZCBlbmQgY29sdW1ucyBvZiBwZXJpb2QgbXVzdCBiZSBv ZiBzYW1lIHR5cGUiKSkpOworCisJLyogQm90aCBjb2x1bW5zIG11c3QgaGF2ZSB0aGUgc2FtZSBj b2xsYXRpb24gKi8KKwlpZiAoYXR0Y29sbGF0aW9uICE9IGVuZGNvbGxhdGlvbikKKwkJZXJlcG9y dChFUlJPUiwKKwkJCQkoZXJyY29kZShFUlJDT0RFX0NPTExBVElPTl9NSVNNQVRDSCksCisJCQkJ IGVycm1zZygic3RhcnQgYW5kIGVuZCBjb2x1bW5zIG9mIHBlcmlvZCBtdXN0IGhhdmUgc2FtZSBj b2xsYXRpb24iKSkpOworCisJLyogR2V0IHRoZSByYW5nZSB0eXBlIGJhc2VkIG9uIHRoZSBzdGFy dC9lbmQgY29scyBvciB0aGUgdXNlcidzIGNob2ljZSAqLworCXBlcmlvZC0+cm5ndHlwaWQgPSBj aG9vc2VfcmFuZ2V0eXBlX2Zvcl9wZXJpb2QocGVyaW9kKTsKKworCS8qCisJICogSWYgdGhlIEdF TkVSQVRFRCBjb2x1bW5zIHNob3VsZCBhbHJlYWR5IGV4aXN0LCBtYWtlIHN1cmUgaXQgaXMKKwkg KiBzZW5zaWJsZS4KKwkgKi8KKwlpZiAocGVyaW9kLT5jb2xleGlzdHMpCisJeworCQlIZWFwVHVw bGUJcm5ndHVwbGUgPSBTZWFyY2hTeXNDYWNoZUF0dE5hbWUoUmVsYXRpb25HZXRSZWxpZChyZWwp LAorCQkJCQkJCQkJCQkJCSBwZXJpb2QtPnBlcmlvZG5hbWUpOworCisJCWlmICghSGVhcFR1cGxl SXNWYWxpZChybmd0dXBsZSkpCisJCQllcmVwb3J0KEVSUk9SLAorCQkJCQkoZXJyY29kZShFUlJD T0RFX1VOREVGSU5FRF9DT0xVTU4pLAorCQkJCQkgZXJybXNnKCJjb2x1bW4gXCIlc1wiIG9mIHJl bGF0aW9uIFwiJXNcIiBkb2VzIG5vdCBleGlzdCIsCisJCQkJCQkJcGVyaW9kLT5wZXJpb2RuYW1l LCBSZWxhdGlvbkdldFJlbGF0aW9uTmFtZShyZWwpKSkpOworCQlhdHR0dXBsZSA9IChGb3JtX3Bn X2F0dHJpYnV0ZSkgR0VUU1RSVUNUKHJuZ3R1cGxlKTsKKworCQkvKgorCQkgKiBNYWtlIHN1cmUg dGhlIGV4aXN0aW5nIGNvbHVtbiBtYXRjaGVzIHdoYXQgd2Ugd291bGQgaGF2ZSBjcmVhdGVkLgor CQkgKiBGaXJzdCBvZiBhbGwsIGl0IG11c3QgYmUgR0VORVJBVEVELgorCQkgKi8KKwkJaWYgKGF0 dHR1cGxlLT5hdHRnZW5lcmF0ZWQgPT0gJ1wwJykKKwkJCWVyZXBvcnQoRVJST1IsIChlcnJtc2co IlBlcmlvZCAlcyB1c2VzIGEgbm9uLWdlbmVyYXRlZCBjb2x1bW4iLAorCQkJCQkJCXBlcmlvZC0+ cGVyaW9kbmFtZSkpKTsKKworCQkvKiBUaGUgR0VORVJBVEVEIGNvbHVtbiBtdXN0IGJlIFNUT1JF RC4gKi8KKwkJaWYgKGF0dHR1cGxlLT5hdHRnZW5lcmF0ZWQgIT0gQVRUUklCVVRFX0dFTkVSQVRF RF9TVE9SRUQpCisJCQllcmVwb3J0KEVSUk9SLCAoZXJybXNnKCJQZXJpb2QgJXMgdXNlcyBhIGdl bmVyYXRlZCBjb2x1bW4gdGhhdCBpcyBub3QgU1RPUkVEIiwKKwkJCQkJCQlwZXJpb2QtPnBlcmlv ZG5hbWUpKSk7CisKKwkJLyogVGhlIEdFTkVSQVRFRCBjb2x1bW4gbXVzdCBub3QgYWxsb3cgbnVs bHMuICovCisJCWlmICghYXR0dHVwbGUtPmF0dG5vdG51bGwgJiYgIUlzQmluYXJ5VXBncmFkZSkK KwkJCWVyZXBvcnQoRVJST1IsIChlcnJtc2coIlBlcmlvZCAlcyB1c2VzIGEgZ2VuZXJhdGVkIGNv bHVtbiB0aGF0IGFsbG93cyBudWxscyIsCisJCQkJCQkJcGVyaW9kLT5wZXJpb2RuYW1lKSkpOwor CisJCS8qIFRoZSBHRU5FUkFURUQgY29sdW1uIG11c3QgbWF0Y2ggb3VyIHJhbmdldHlwZS4gKi8K KwkJaWYgKHBlcmlvZC0+cm5ndHlwaWQgIT0gYXR0dHVwbGUtPmF0dHR5cGlkKQorCQkJZXJlcG9y dChFUlJPUiwgKGVycm1zZygiUGVyaW9kICVzIHVzZXMgYSBnZW5lcmF0ZWQgY29sdW1uIHdpdGgg dGhlIHdyb25nIHR5cGUiLAorCQkJCQkJCXBlcmlvZC0+cGVyaW9kbmFtZSkpKTsKKworCQkvKgor CQkgKiBUaGUgR0VORVJBVEVEIGNvbHVtbiBtdXN0IG5vdCBiZSBpbmhlcml0ZWQuCisJCSAqIFhY WDogSWYgdGhlIFBFUklPRCBpcyBpbmhlcml0ZWQsIHRoZXkgbXVzdCBjb21lIGZyb20gdGhlIHNh bWUgcGFyZW50LgorCQkgKi8KKwkJaWYgKCFhdHR0dXBsZS0+YXR0aXNsb2NhbCkKKwkJCWVyZXBv cnQoRVJST1IsIChlcnJtc2coIlBlcmlvZCAlcyB1c2VzIGEgZ2VuZXJhdGVkIGNvbHVtbiB0aGF0 IGlzIGluaGVyaXRlZCIsCisJCQkJCQkJcGVyaW9kLT5wZXJpb2RuYW1lKSkpOworCisJCS8qCisJ CSAqIFhYWDogV2Ugc2hvdWxkIGNoZWNrIHRoZSBHRU5FUkFURUQgZXhwcmVzc2lvbiBhbHNvLCBi dXQgdGhhdCBpcworCQkgKiBoYXJkIHRvIGRvIGJlY2F1c2Ugb25lIGlzIGNvb2tlZCBhbmQgb25l IGlzIHJhdy4KKwkJICovCisKKwkJcGVyaW9kLT5ybmdhdHRudW0gPSBhdHR0dXBsZS0+YXR0bnVt OworCisJCVJlbGVhc2VTeXNDYWNoZShybmd0dXBsZSk7CisJfQorfQorCisvKgorICogY2hvb3Nl X3JhbmdldHlwZV9mb3JfcGVyaW9kCisgKgorICogRmluZCBhIHN1aXRhYmxlIHJhbmdlIHR5cGUg Zm9yIG9wZXJhdGlvbnMgaW52b2x2aW5nIHRoaXMgcGVyaW9kLgorICogVXNlIHRoZSByYW5nZXR5 cGUgb3B0aW9uIGlmIHByb3ZpZGVkLCBvdGhlcndpc2UgdHJ5IHRvIGZpbmQgYQorICogbm9uLWFt YmlndW91cyBleGlzdGluZyB0eXBlLgorICovCitPaWQKK2Nob29zZV9yYW5nZXR5cGVfZm9yX3Bl cmlvZChQZXJpb2REZWYgKnBlcmlvZCkKK3sKKwlPaWQJCQlybmd0eXBpZDsKKworCWlmIChwZXJp b2QtPnJhbmdldHlwZW5hbWUgIT0gTlVMTCkKKwl7CisJCS8qIE1ha2Ugc3VyZSBpdCBleGlzdHMg Ki8KKwkJcm5ndHlwaWQgPSBUeXBlbmFtZUdldFR5cGlkRXh0ZW5kZWQocGVyaW9kLT5yYW5nZXR5 cGVuYW1lLCBmYWxzZSk7CisJCWlmIChybmd0eXBpZCA9PSBJbnZhbGlkT2lkKQorCQkJZXJlcG9y dChFUlJPUiwgKGVycmNvZGUoRVJSQ09ERV9VTkRFRklORURfT0JKRUNUKSwKKwkJCQkJCQllcnJt c2coIlJhbmdlIHR5cGUgJXMgbm90IGZvdW5kIiwKKwkJCQkJCQkJICAgcGVyaW9kLT5yYW5nZXR5 cGVuYW1lKSkpOworCisJCS8qIE1ha2Ugc3VyZSBpdCBpcyBhIHJhbmdlIHR5cGUgKi8KKwkJaWYg KCF0eXBlX2lzX3JhbmdlKHJuZ3R5cGlkKSkKKwkJCWVyZXBvcnQoRVJST1IsCisJCQkJCShlcnJj b2RlKEVSUkNPREVfREFUQVRZUEVfTUlTTUFUQ0gpLAorCQkJCQkgZXJybXNnKCJUeXBlICVzIGlz IG5vdCBhIHJhbmdlIHR5cGUiLAorCQkJCQkJCXBlcmlvZC0+cmFuZ2V0eXBlbmFtZSkpKTsKKwor CQkvKiBNYWtlIHN1cmUgaXQgbWF0Y2hlcyB0aGUgY29sdW1uIHR5cGUgKi8KKwkJaWYgKGdldF9y YW5nZV9zdWJ0eXBlKHJuZ3R5cGlkKSAhPSBwZXJpb2QtPmNvbHR5cGlkKQorCQkJZXJlcG9ydChF UlJPUiwKKwkJCQkJKGVycmNvZGUoRVJSQ09ERV9EQVRBVFlQRV9NSVNNQVRDSCksCisJCQkJCSBl cnJtc2coIlJhbmdlIHR5cGUgJXMgZG9lcyBub3QgbWF0Y2ggY29sdW1uIHR5cGUgJXMiLAorCQkJ CQkJCXBlcmlvZC0+cmFuZ2V0eXBlbmFtZSwKKwkJCQkJCQlmb3JtYXRfdHlwZV9iZShwZXJpb2Qt PmNvbHR5cGlkKSkpKTsKKwl9CisJZWxzZQorCXsKKwkJcm5ndHlwaWQgPSBnZXRfc3VidHlwZV9y YW5nZShwZXJpb2QtPmNvbHR5cGlkKTsKKwkJaWYgKHJuZ3R5cGlkID09IEludmFsaWRPaWQpCisJ CQllcmVwb3J0KEVSUk9SLAorCQkJCQkoZXJyY29kZShFUlJDT0RFX1VOREVGSU5FRF9PQkpFQ1Qp LAorCQkJCQkgZXJybXNnKCJubyByYW5nZSB0eXBlIGZvciAlcyBmb3VuZCBmb3IgcGVyaW9kICVz IiwKKwkJCQkJCQlmb3JtYXRfdHlwZV9iZShwZXJpb2QtPmNvbHR5cGlkKSwKKwkJCQkJCQlwZXJp b2QtPnBlcmlvZG5hbWUpLAorCQkJCQkgZXJyaGludCgiWW91IGNhbiBkZWZpbmUgYSBjdXN0b20g cmFuZ2UgdHlwZSB3aXRoIENSRUFURSBUWVBFIikpKTsKKworCX0KKworCXJldHVybiBybmd0eXBp ZDsKK30KKworc3RhdGljIHZvaWQKK0FkZFJlbGF0aW9uTmV3UGVyaW9kKFJlbGF0aW9uIHJlbCwg UGVyaW9kRGVmICpwZXJpb2QpCit7CisJUmVsYXRpb24JYXR0cmVsYXRpb247CisJT2lkCQkJY29u b2lkOworCUNvbnN0cmFpbnQgKmNvbnN0cjsKKwlMaXN0CSAgICpuZXdjb25zdHJzOworCisJYXR0 cmVsYXRpb24gPSB0YWJsZV9vcGVuKEF0dHJpYnV0ZVJlbGF0aW9uSWQsIFJvd0V4Y2x1c2l2ZUxv Y2spOworCisJLyogRmluZCB0aGUgR0VORVJBVEVEIHJhbmdlIGNvbHVtbiAqLworCisJcGVyaW9k LT5ybmdhdHRudW0gPSBnZXRfYXR0bnVtKFJlbGF0aW9uR2V0UmVsaWQocmVsKSwgcGVyaW9kLT5w ZXJpb2RuYW1lKTsKKwlpZiAocGVyaW9kLT5ybmdhdHRudW0gPT0gSW52YWxpZEF0dHJOdW1iZXIp CisJCWVsb2coRVJST1IsICJtaXNzaW5nIGF0dHJpYnV0ZSAlcyIsIHBlcmlvZC0+cGVyaW9kbmFt ZSk7CisKKwkvKiBUaGUgcGFyc2VyIGhhcyBhbHJlYWR5IGZvdW5kIHBlcmlvZC0+Y29sdHlwaWQg Ki8KKworCWNvbnN0ciA9IG1ha2VfY29uc3RyYWludF9mb3JfcGVyaW9kKHJlbCwgcGVyaW9kKTsK KwluZXdjb25zdHJzID0gQWRkUmVsYXRpb25OZXdDb25zdHJhaW50cyhyZWwsIE5JTCwgbGlzdF9t YWtlMShjb25zdHIpLCBmYWxzZSwKKwkJCQkJCQkJCQkgICB0cnVlLCB0cnVlLCBOVUxMKTsKKwlj b25vaWQgPSAoKENvb2tlZENvbnN0cmFpbnQgKikgbGluaXRpYWwobmV3Y29uc3RycykpLT5jb25v aWQ7CisKKwkvKiBTYXZlIGl0ICovCisJU3RvcmVQZXJpb2QocmVsLCBwZXJpb2QtPnBlcmlvZG5h bWUsIHBlcmlvZC0+c3RhcnRhdHRudW0sIHBlcmlvZC0+ZW5kYXR0bnVtLAorCQkJCXBlcmlvZC0+ cm5nYXR0bnVtLCBjb25vaWQpOworCisJdGFibGVfY2xvc2UoYXR0cmVsYXRpb24sIFJvd0V4Y2x1 c2l2ZUxvY2spOworfQorCiAvKgogICogRW1pdCB0aGUgcmlnaHQgZXJyb3Igb3Igd2FybmluZyBt ZXNzYWdlIGZvciBhICJEUk9QIiBjb21tYW5kIGlzc3VlZCBvbiBhCiAgKiBub24tZXhpc3RlbnQg cmVsYXRpb24KQEAgLTI3NDcsNyArMzIwNSw3IEBAIE1lcmdlQXR0cmlidXRlcyhMaXN0ICpjb2x1 bW5zLCBjb25zdCBMaXN0ICpzdXBlcnMsIGNoYXIgcmVscGVyc2lzdGVuY2UsCiAJCSAqIHRoYXQn cyBub3QgbWFya2VkIE5PIElOSEVSSVQgKGV2ZW4gaWYgbm90IHZhbGlkKS4KIAkJICovCiAJCW5u Y29uc3RycyA9IFJlbGF0aW9uR2V0Tm90TnVsbENvbnN0cmFpbnRzKFJlbGF0aW9uR2V0UmVsaWQo cmVsYXRpb24pLAotCQkJCQkJCQkJCQkJICB0cnVlLCBmYWxzZSk7CisJCQkJCQkJCQkJCQkgIHRy dWUsIGZhbHNlLCBOVUxMKTsKIAkJZm9yZWFjaF9wdHIoQ29va2VkQ29uc3RyYWludCwgY2MsIG5u Y29uc3RycykKIAkJCW5uY29scyA9IGJtc19hZGRfbWVtYmVyKG5uY29scywgY2MtPmF0dG51bSk7 CiAKQEAgLTMxNDAsNiArMzU5OCwxNzIgQEAgTWVyZ2VBdHRyaWJ1dGVzKExpc3QgKmNvbHVtbnMs IGNvbnN0IExpc3QgKnN1cGVycywgY2hhciByZWxwZXJzaXN0ZW5jZSwKIH0KIAogCisvKi0tLS0t LS0tLS0KKyAqIE1lcmdlUGVyaW9kcworICoJCVJldHVybnMgbmV3IHBlcmlvZCBsaXN0IGdpdmVu IGluaXRpYWwgcGVyaW9kcyBhbmQgc3VwZXJjbGFzc2VzLgorICoKKyAqIEZvciBub3cgd2UgZG9u J3Qgc3VwcG9ydCBpbmhlcml0ZW5jZSB3aXRoIFBFUklPRHMsCisgKiBidXQgd2UgbWlnaHQgbWFr ZSBpdCB3b3JrIGV2ZW50dWFsbHkuCisgKgorICogV2UgY2FuIG9taXQgbG90cyBvZiBjaGVja3Mg aGVyZSBhbmQgYXNzdW1lIE1lcmdlQXR0cmlidXRlcyBhbHJlYWR5IGRpZCB0aGVtLAorICogZm9y IGV4YW1wbGUgdGhhdCBjaGlsZCAmIHBhcmVudHMgYXJlIG5vdCBhIG1peCBvZiBwZXJtYW5lbnQg YW5kIHRlbXAuCisgKi8KK3N0YXRpYyBMaXN0ICoKK01lcmdlUGVyaW9kcyhjaGFyICpyZWxuYW1l LCBMaXN0ICpwZXJpb2RzLCBMaXN0ICp0YWJsZUVsdHMsIExpc3QgKnN1cGVycykKK3sKKwlMaXN0 Q2VsbCAgICplbnRyeTsKKworCS8qIElmIHdlIGhhdmUgYSBQRVJJT0QgdGhlbiBzdXBlcnMgbXVz dCBiZSBlbXB0eS4gKi8KKworCWlmIChsaXN0X2xlbmd0aChwZXJpb2RzKSA+IDAgJiYgbGlzdF9s ZW5ndGgoc3VwZXJzKSA+IDApCisJCWVyZXBvcnQoRVJST1IsCisJCQkJKGVycmNvZGUoRVJSQ09E RV9GRUFUVVJFX05PVF9TVVBQT1JURUQpLAorCQkJCSBlcnJtc2coIkluaGVyaXRpbmcgaXMgbm90 IHN1cHBvcnRlZCB3aGVuIGEgdGFibGUgaGFzIGEgUEVSSU9EIikpKTsKKworCS8qIElmIGFueSBw YXJlbnQgdGFibGUgaGFzIGEgUEVSSU9ELCB0aGVuIGZhaWwuICovCisKKwlmb3JlYWNoKGVudHJ5 LCBzdXBlcnMpCisJeworCQlPaWQJCQlwYXJlbnQgPSBsZmlyc3Rfb2lkKGVudHJ5KTsKKwkJUmVs YXRpb24JcmVsYXRpb247CisJCVJlbGF0aW9uCXBnX3BlcmlvZDsKKwkJU3lzU2NhbkRlc2Mgc2Nh bjsKKwkJU2NhbktleURhdGEgc2tleVsxXTsKKwkJSGVhcFR1cGxlCXR1cGxlOworCisJCS8qIGNh bGxlciBhbHJlYWR5IGdvdCBsb2NrICovCisJCXJlbGF0aW9uID0gdGFibGVfb3BlbihwYXJlbnQs IE5vTG9jayk7CisJCXBnX3BlcmlvZCA9IHRhYmxlX29wZW4oUGVyaW9kUmVsYXRpb25JZCwgQWNj ZXNzU2hhcmVMb2NrKTsKKworCQlTY2FuS2V5SW5pdCgmc2tleVswXSwKKwkJCQkJQW51bV9wZ19w ZXJpb2RfcGVycmVsaWQsCisJCQkJCUJURXF1YWxTdHJhdGVneU51bWJlciwgRl9PSURFUSwKKwkJ CQkJT2JqZWN0SWRHZXREYXR1bShwYXJlbnQpKTsKKworCQlzY2FuID0gc3lzdGFibGVfYmVnaW5z Y2FuKHBnX3BlcmlvZCwgUGVyaW9kUmVsaWROYW1lSW5kZXhJZCwgdHJ1ZSwKKwkJCQkJCQkJICBO VUxMLCAxLCBza2V5KTsKKworCQlpZiAoSGVhcFR1cGxlSXNWYWxpZCh0dXBsZSA9IHN5c3RhYmxl X2dldG5leHQoc2NhbikpKQorCQkJZXJlcG9ydChFUlJPUiwKKwkJCQkJKGVycmNvZGUoRVJSQ09E RV9GRUFUVVJFX05PVF9TVVBQT1JURUQpLAorCQkJCQkgZXJybXNnKCJJbmhlcml0aW5nIGZyb20g YSB0YWJsZSB3aXRoIGEgUEVSSU9EIGlzIG5vdCBzdXBwb3J0ZWQiKSkpOworCisJCXN5c3RhYmxl X2VuZHNjYW4oc2Nhbik7CisJCXRhYmxlX2Nsb3NlKHBnX3BlcmlvZCwgQWNjZXNzU2hhcmVMb2Nr KTsKKwkJdGFibGVfY2xvc2UocmVsYXRpb24sIE5vTG9jayk7CisJfQorCisJLyoKKwkgKiBGaW5k IHRoZSBzdGFydCAmIGVuZCBjb2x1bW5zIGFuZCBnZXQgdGhlaXIgYXR0bm8gYW5kIHR5cGUuIElu IHRoZSBzYW1lCisJICogcGFzcywgbWFrZSBzdXJlIHRoZSBwZXJpb2QgZG9lc24ndCBjb25mbGlj dCB3aXRoIGFueSBjb2x1bW4gbmFtZXMuIEFsc28KKwkgKiBtYWtlIHN1cmUgdGhlIHNhbWUgcGVy aW9kIG5hbWUgaXNuJ3QgdXNlZCBtb3JlIHRoYW4gb25jZS4KKwkgKi8KKwlmb3JlYWNoKGVudHJ5 LCBwZXJpb2RzKQorCXsKKwkJUGVyaW9kRGVmICAqcGVyaW9kID0gbGZpcnN0KGVudHJ5KTsKKwkJ TGlzdENlbGwgICAqZW50cnkyOworCQlpbnQJCQlpID0gMTsKKwkJT2lkCQkJc3RhcnRjb2x0eXBp ZCA9IEludmFsaWRPaWQ7CisJCU9pZAkJCWVuZGNvbHR5cGlkID0gSW52YWxpZE9pZDsKKwkJT2lk CQkJc3RhcnRjb2xjb2xsYXRpb24gPSBJbnZhbGlkT2lkOworCQlPaWQJCQllbmRjb2xjb2xsYXRp b24gPSBJbnZhbGlkT2lkOworCisJCXBlcmlvZC0+c3RhcnRhdHRudW0gPSBJbnZhbGlkQXR0ck51 bWJlcjsKKwkJcGVyaW9kLT5lbmRhdHRudW0gPSBJbnZhbGlkQXR0ck51bWJlcjsKKworCQlpZiAo U3lzdGVtQXR0cmlidXRlQnlOYW1lKHBlcmlvZC0+cGVyaW9kbmFtZSkgIT0gTlVMTCkKKwkJCWVy ZXBvcnQoRVJST1IsCisJCQkJCShlcnJjb2RlKEVSUkNPREVfRFVQTElDQVRFX0NPTFVNTiksCisJ CQkJCSBlcnJtc2coInBlcmlvZCBuYW1lIFwiJXNcIiBjb25mbGljdHMgd2l0aCBhIHN5c3RlbSBj b2x1bW4gbmFtZSIsCisJCQkJCQkJcGVyaW9kLT5wZXJpb2RuYW1lKSkpOworCisJCWZvcmVhY2go ZW50cnkyLCBwZXJpb2RzKQorCQl7CisJCQlQZXJpb2REZWYgICpwZXJpb2QyID0gbGZpcnN0KGVu dHJ5Mik7CisKKwkJCWlmIChwZXJpb2QgIT0gcGVyaW9kMiAmJiBzdHJjbXAocGVyaW9kLT5wZXJp b2RuYW1lLCBwZXJpb2QyLT5wZXJpb2RuYW1lKSA9PSAwKQorCQkJCWVyZXBvcnQoRVJST1IsCisJ CQkJCQkoZXJyY29kZShFUlJDT0RFX0RVUExJQ0FURV9PQkpFQ1QpLAorCQkJCQkJIGVycm1zZygi cGVyaW9kIG5hbWUgXCIlc1wiIHNwZWNpZmllZCBtb3JlIHRoYW4gb25jZSIsCisJCQkJCQkJCXBl cmlvZC0+cGVyaW9kbmFtZSkpKTsKKwkJfQorCisJCWZvcmVhY2goZW50cnkyLCB0YWJsZUVsdHMp CisJCXsKKwkJCUNvbHVtbkRlZiAgKmNvbCA9IGxmaXJzdChlbnRyeTIpOworCQkJaW50MzIJCWF0 dHR5cG1vZDsKKwkJCUFjbFJlc3VsdAlhY2xyZXN1bHQ7CisKKwkJCWlmICghcGVyaW9kLT5jb2xl eGlzdHMgJiYgc3RyY21wKHBlcmlvZC0+cGVyaW9kbmFtZSwgY29sLT5jb2xuYW1lKSA9PSAwKQor CQkJCWVyZXBvcnQoRVJST1IsCisJCQkJCQkoZXJyY29kZShFUlJDT0RFX0RVUExJQ0FURV9DT0xV TU4pLAorCQkJCQkJIGVycm1zZygicGVyaW9kIG5hbWUgXCIlc1wiIGNvbmZsaWN0cyB3aXRoIGEg Y29sdW1uIG5hbWUiLAorCQkJCQkJCQlwZXJpb2QtPnBlcmlvZG5hbWUpKSk7CisKKwkJCWlmIChz dHJjbXAocGVyaW9kLT5zdGFydGNvbG5hbWUsIGNvbC0+Y29sbmFtZSkgPT0gMCkKKwkJCXsKKwkJ CQlwZXJpb2QtPnN0YXJ0YXR0bnVtID0gaTsKKworCQkJCXR5cGVuYW1lVHlwZUlkQW5kTW9kKE5V TEwsIGNvbC0+dHlwZU5hbWUsICZzdGFydGNvbHR5cGlkLAorCQkJCQkJCQkJICZhdHR0eXBtb2Qp OworCisJCQkJYWNscmVzdWx0ID0gb2JqZWN0X2FjbGNoZWNrKFR5cGVSZWxhdGlvbklkLCBzdGFy dGNvbHR5cGlkLAorCQkJCQkJCQkJCQlHZXRVc2VySWQoKSwgQUNMX1VTQUdFKTsKKwkJCQlpZiAo YWNscmVzdWx0ICE9IEFDTENIRUNLX09LKQorCQkJCQlhY2xjaGVja19lcnJvcl90eXBlKGFjbHJl c3VsdCwgc3RhcnRjb2x0eXBpZCk7CisKKwkJCQlzdGFydGNvbGNvbGxhdGlvbiA9IEdldENvbHVt bkRlZkNvbGxhdGlvbihOVUxMLCBjb2wsIHN0YXJ0Y29sdHlwaWQpOworCQkJfQorCisJCQlpZiAo c3RyY21wKHBlcmlvZC0+ZW5kY29sbmFtZSwgY29sLT5jb2xuYW1lKSA9PSAwKQorCQkJeworCQkJ CXBlcmlvZC0+ZW5kYXR0bnVtID0gaTsKKworCQkJCXR5cGVuYW1lVHlwZUlkQW5kTW9kKE5VTEws IGNvbC0+dHlwZU5hbWUsICZlbmRjb2x0eXBpZCwKKwkJCQkJCQkJCSAmYXR0dHlwbW9kKTsKKwor CQkJCWFjbHJlc3VsdCA9IG9iamVjdF9hY2xjaGVjayhUeXBlUmVsYXRpb25JZCwgZW5kY29sdHlw aWQsCisJCQkJCQkJCQkJCUdldFVzZXJJZCgpLCBBQ0xfVVNBR0UpOworCQkJCWlmIChhY2xyZXN1 bHQgIT0gQUNMQ0hFQ0tfT0spCisJCQkJCWFjbGNoZWNrX2Vycm9yX3R5cGUoYWNscmVzdWx0LCBl bmRjb2x0eXBpZCk7CisKKwkJCQllbmRjb2xjb2xsYXRpb24gPSBHZXRDb2x1bW5EZWZDb2xsYXRp b24oTlVMTCwgY29sLCBlbmRjb2x0eXBpZCk7CisJCQl9CisKKwkJCWkrKzsKKwkJfQorCisJCS8q IERpZCB3ZSBmaW5kIHRoZSBjb2x1bW5zPyAqLworCQlpZiAocGVyaW9kLT5zdGFydGF0dG51bSA9 PSBJbnZhbGlkQXR0ck51bWJlcikKKwkJCWVyZXBvcnQoRVJST1IsCisJCQkJCShlcnJjb2RlKEVS UkNPREVfVU5ERUZJTkVEX0NPTFVNTiksCisJCQkJCSBlcnJtc2coImNvbHVtbiBcIiVzXCIgb2Yg cmVsYXRpb24gXCIlc1wiIGRvZXMgbm90IGV4aXN0IiwKKwkJCQkJCQlwZXJpb2QtPnN0YXJ0Y29s bmFtZSwgcmVsbmFtZSkpKTsKKwkJaWYgKHBlcmlvZC0+ZW5kYXR0bnVtID09IEludmFsaWRBdHRy TnVtYmVyKQorCQkJZXJlcG9ydChFUlJPUiwKKwkJCQkJKGVycmNvZGUoRVJSQ09ERV9VTkRFRklO RURfQ09MVU1OKSwKKwkJCQkJIGVycm1zZygiY29sdW1uIFwiJXNcIiBvZiByZWxhdGlvbiBcIiVz XCIgZG9lcyBub3QgZXhpc3QiLAorCQkJCQkJCXBlcmlvZC0+ZW5kY29sbmFtZSwgcmVsbmFtZSkp KTsKKworCQkvKiBCb3RoIGNvbHVtbnMgbXVzdCBiZSBvZiBzYW1lIHR5cGUgKi8KKwkJaWYgKHN0 YXJ0Y29sdHlwaWQgIT0gZW5kY29sdHlwaWQpCisJCQllcmVwb3J0KEVSUk9SLAorCQkJCQkoZXJy Y29kZShFUlJDT0RFX0RBVEFUWVBFX01JU01BVENIKSwKKwkJCQkJIGVycm1zZygic3RhcnQgYW5k IGVuZCBjb2x1bW5zIG9mIHBlcmlvZCBtdXN0IGJlIG9mIHNhbWUgdHlwZSIpKSk7CisKKwkJLyog Qm90aCBjb2x1bW5zIG11c3QgaGF2ZSB0aGUgc2FtZSBjb2xsYXRpb24gKi8KKwkJaWYgKHN0YXJ0 Y29sY29sbGF0aW9uICE9IGVuZGNvbGNvbGxhdGlvbikKKwkJCWVyZXBvcnQoRVJST1IsCisJCQkJ CShlcnJjb2RlKEVSUkNPREVfQ09MTEFUSU9OX01JU01BVENIKSwKKwkJCQkJIGVycm1zZygic3Rh cnQgYW5kIGVuZCBjb2x1bW5zIG9mIHBlcmlvZCBtdXN0IGhhdmUgc2FtZSBjb2xsYXRpb24iKSkp OworCisJCXBlcmlvZC0+Y29sdHlwaWQgPSBzdGFydGNvbHR5cGlkOworCQlwZXJpb2QtPnJuZ3R5 cGlkID0gY2hvb3NlX3JhbmdldHlwZV9mb3JfcGVyaW9kKHBlcmlvZCk7CisJfQorCisJcmV0dXJu IHBlcmlvZHM7Cit9CisKIC8qCiAgKiBNZXJnZUNoZWNrQ29uc3RyYWludAogICoJCVRyeSB0byBt ZXJnZSBhbiBpbmhlcml0ZWQgQ0hFQ0sgY29uc3RyYWludCB3aXRoIHByZXZpb3VzIG9uZXMKQEAg LTQ1NDcsMTIgKzUxNzEsMTIgQEAgQWx0ZXJUYWJsZShBbHRlclRhYmxlU3RtdCAqc3RtdCwgTE9D S01PREUgbG9ja21vZGUsCiAgKiBleGlzdGluZyBxdWVyeSBwbGFucy4gIE9uIHRoZSBhc3N1bXB0 aW9uIGl0J3Mgbm90IHVzZWQgZm9yIHN1Y2gsIHdlCiAgKiBkb24ndCBoYXZlIHRvIHJlamVjdCBw ZW5kaW5nIEFGVEVSIHRyaWdnZXJzLCBlaXRoZXIuCiAgKgotICogQWxzbywgc2luY2Ugd2UgZG9u J3QgaGF2ZSBhbiBBbHRlclRhYmxlVXRpbGl0eUNvbnRleHQsIHRoaXMgY2Fubm90IGJlCisgKiBB bHNvLCBpZiB5b3UgZG9uJ3QgcGFzcyBhbiBBbHRlclRhYmxlVXRpbGl0eUNvbnRleHQsIHRoaXMg Y2Fubm90IGJlCiAgKiB1c2VkIGZvciBhbnkgc3ViY29tbWFuZCB0eXBlcyB0aGF0IHJlcXVpcmUg cGFyc2UgdHJhbnNmb3JtYXRpb24gb3IKICAqIGNvdWxkIGdlbmVyYXRlIHN1YmNvbW1hbmRzIHRo YXQgaGF2ZSB0byBiZSBwYXNzZWQgdG8gUHJvY2Vzc1V0aWxpdHkuCiAgKi8KIHZvaWQKLUFsdGVy VGFibGVJbnRlcm5hbChPaWQgcmVsaWQsIExpc3QgKmNtZHMsIGJvb2wgcmVjdXJzZSkKK0FsdGVy VGFibGVJbnRlcm5hbChPaWQgcmVsaWQsIExpc3QgKmNtZHMsIGJvb2wgcmVjdXJzZSwgQWx0ZXJU YWJsZVV0aWxpdHlDb250ZXh0ICpjb250ZXh0KQogewogCVJlbGF0aW9uCXJlbDsKIAlMT0NLTU9E RQlsb2NrbW9kZSA9IEFsdGVyVGFibGVHZXRMb2NrTGV2ZWwoY21kcyk7CkBAIC00NTYxLDcgKzUx ODUsNyBAQCBBbHRlclRhYmxlSW50ZXJuYWwoT2lkIHJlbGlkLCBMaXN0ICpjbWRzLCBib29sIHJl Y3Vyc2UpCiAKIAlFdmVudFRyaWdnZXJBbHRlclRhYmxlUmVsaWQocmVsaWQpOwogCi0JQVRDb250 cm9sbGVyKE5VTEwsIHJlbCwgY21kcywgcmVjdXJzZSwgbG9ja21vZGUsIE5VTEwpOworCUFUQ29u dHJvbGxlcihOVUxMLCByZWwsIGNtZHMsIHJlY3Vyc2UsIGxvY2ttb2RlLCBjb250ZXh0KTsKIH0K IAogLyoKQEAgLTQ2NTQsNiArNTI3OCw5IEBAIEFsdGVyVGFibGVHZXRMb2NrTGV2ZWwoTGlzdCAq Y21kcykKIAkJCWNhc2UgQVRfRW5hYmxlUmVwbGljYVJ1bGU6CS8qIG1heSBjaGFuZ2UgU0VMRUNU IHJ1bGVzICovCiAJCQljYXNlIEFUX0VuYWJsZVJ1bGU6IC8qIG1heSBjaGFuZ2UgU0VMRUNUIHJ1 bGVzICovCiAJCQljYXNlIEFUX0Rpc2FibGVSdWxlOgkvKiBtYXkgY2hhbmdlIFNFTEVDVCBydWxl cyAqLworCQkJY2FzZSBBVF9BZGRQZXJpb2Q6CS8qIHNoYXJlcyBuYW1lc3BhY2Ugd2l0aCBjb2x1 bW5zLCBhZGRzCisJCQkJCQkJCSAqIGNvbnN0cmFpbnQgKi8KKwkJCWNhc2UgQVRfRHJvcFBlcmlv ZDoKIAkJCQljbWRfbG9ja21vZGUgPSBBY2Nlc3NFeGNsdXNpdmVMb2NrOwogCQkJCWJyZWFrOwog CkBAIC00OTczLDYgKzU2MDAsMTcgQEAgQVRQcmVwQ21kKExpc3QgKip3cXVldWUsIFJlbGF0aW9u IHJlbCwgQWx0ZXJUYWJsZUNtZCAqY21kLAogCQkJLyogVGhpcyBjb21tYW5kIG5ldmVyIHJlY3Vy c2VzICovCiAJCQlwYXNzID0gQVRfUEFTU19BRERfT1RIRVJDT05TVFI7CiAJCQlicmVhazsKKwkJ Y2FzZSBBVF9BZGRQZXJpb2Q6CQkvKiBBTFRFUiBUQUJMRSAuLi4gQUREIFBFUklPRCBGT1IgbmFt ZSAoc3RhcnQsCisJCQkJCQkJCSAqIGVuZCkgKi8KKwkJCUFUU2ltcGxlUGVybWlzc2lvbnMoY21k LT5zdWJ0eXBlLCByZWwsIEFUVF9UQUJMRSk7CisJCQlBVFByZXBBZGRQZXJpb2Qod3F1ZXVlLCBy ZWwsIGNtZCwgbG9ja21vZGUsIGNvbnRleHQpOworCQkJLyogTm8gcmVjdXJzaW9uOiBpbmhlcml0 YW5jZSBub3Qgc3VwcG9ydGVkIHdpdGggUEVSSU9EcyAqLworCQkJcGFzcyA9IEFUX1BBU1NfQURE X1BFUklPRDsKKwkJCWJyZWFrOworCQljYXNlIEFUX0Ryb3BQZXJpb2Q6CQkvKiBBTFRFUiBUQUJM RSAuLi4gRFJPUCBQRVJJT0QgRk9SIG5hbWUgKi8KKwkJCUFUU2ltcGxlUGVybWlzc2lvbnMoY21k LT5zdWJ0eXBlLCByZWwsIEFUVF9UQUJMRSk7CisJCQlwYXNzID0gQVRfUEFTU19EUk9QOworCQkJ YnJlYWs7CiAJCWNhc2UgQVRfQWRkSWRlbnRpdHk6CiAJCQlBVFNpbXBsZVBlcm1pc3Npb25zKGNt ZC0+c3VidHlwZSwgcmVsLAogCQkJCQkJCQlBVFRfVEFCTEUgfCBBVFRfUEFSVElUSU9ORURfVEFC TEUgfCBBVFRfVklFVyB8CkBAIC01Mzg2LDYgKzYwMjQsMTQgQEAgQVRFeGVjQ21kKExpc3QgKip3 cXVldWUsIEFsdGVyZWRUYWJsZUluZm8gKnRhYiwKIAkJY2FzZSBBVF9Db29rZWRDb2x1bW5EZWZh dWx0OgkvKiBhZGQgYSBwcmUtY29va2VkIGRlZmF1bHQgKi8KIAkJCWFkZHJlc3MgPSBBVEV4ZWND b29rZWRDb2x1bW5EZWZhdWx0KHJlbCwgY21kLT5udW0sIGNtZC0+ZGVmKTsKIAkJCWJyZWFrOwor CQljYXNlIEFUX0FkZFBlcmlvZDoKKwkJCWFkZHJlc3MgPSBBVEV4ZWNBZGRQZXJpb2Qod3F1ZXVl LCB0YWIsIHJlbCwgKFBlcmlvZERlZiAqKSBjbWQtPmRlZiwKKwkJCQkJCQkJCSAgbG9ja21vZGUs IGNvbnRleHQpOworCQkJYnJlYWs7CisJCWNhc2UgQVRfRHJvcFBlcmlvZDoKKwkJCUFURXhlY0Ry b3BQZXJpb2QocmVsLCBjbWQtPm5hbWUsIGNtZC0+YmVoYXZpb3IsIGZhbHNlLCBmYWxzZSwKKwkJ CQkJCQkgY21kLT5taXNzaW5nX29rKTsKKwkJCWJyZWFrOwogCQljYXNlIEFUX0FkZElkZW50aXR5 OgogCQkJY21kID0gQVRQYXJzZVRyYW5zZm9ybUNtZCh3cXVldWUsIHRhYiwgcmVsLCBjbWQsIGZh bHNlLCBsb2NrbW9kZSwKIAkJCQkJCQkJCSAgY3VyX3Bhc3MsIGNvbnRleHQpOwpAQCAtNjU5Miw2 ICs3MjM4LDggQEAgYWx0ZXJfdGFibGVfdHlwZV90b19zdHJpbmcoQWx0ZXJUYWJsZVR5cGUgY21k dHlwZSkKIAkJY2FzZSBBVF9BZGRDb2x1bW46CiAJCWNhc2UgQVRfQWRkQ29sdW1uVG9WaWV3Ogog CQkJcmV0dXJuICJBREQgQ09MVU1OIjsKKwkJY2FzZSBBVF9BZGRQZXJpb2Q6CisJCQlyZXR1cm4g IkFERCBQRVJJT0QiOwogCQljYXNlIEFUX0NvbHVtbkRlZmF1bHQ6CiAJCWNhc2UgQVRfQ29va2Vk Q29sdW1uRGVmYXVsdDoKIAkJCXJldHVybiAiQUxURVIgQ09MVU1OIC4uLiBTRVQgREVGQVVMVCI7 CkBAIC02NjE1LDYgKzcyNjMsOCBAQCBhbHRlcl90YWJsZV90eXBlX3RvX3N0cmluZyhBbHRlclRh YmxlVHlwZSBjbWR0eXBlKQogCQkJcmV0dXJuICJBTFRFUiBDT0xVTU4gLi4uIFNFVCBDT01QUkVT U0lPTiI7CiAJCWNhc2UgQVRfRHJvcENvbHVtbjoKIAkJCXJldHVybiAiRFJPUCBDT0xVTU4iOwor CQljYXNlIEFUX0Ryb3BQZXJpb2Q6CisJCQlyZXR1cm4gIkRST1AgUEVSSU9EIjsKIAkJY2FzZSBB VF9BZGRJbmRleDoKIAkJY2FzZSBBVF9SZUFkZEluZGV4OgogCQkJcmV0dXJuIE5VTEw7CQkvKiBu b3QgcmVhbCBncmFtbWFyICovCkBAIC03NjMzLDE0ICs4MjgzLDMwIEBAIEFURXhlY0FkZENvbHVt bihMaXN0ICoqd3F1ZXVlLCBBbHRlcmVkVGFibGVJbmZvICp0YWIsIFJlbGF0aW9uIHJlbCwKIC8q CiAgKiBJZiBhIG5ldyBvciByZW5hbWVkIGNvbHVtbiB3aWxsIGNvbGxpZGUgd2l0aCB0aGUgbmFt ZSBvZiBhbiBleGlzdGluZwogICogY29sdW1uIGFuZCBpZl9ub3RfZXhpc3RzIGlzIGZhbHNlIHRo ZW4gZXJyb3Igb3V0LCBlbHNlIGRvIG5vdGhpbmcuCisgKgorICogU2VlIGFsc28gY2hlY2tfZm9y X3BlcmlvZF9uYW1lX2NvbGxpc2lvbi4KICAqLwogc3RhdGljIGJvb2wKIGNoZWNrX2Zvcl9jb2x1 bW5fbmFtZV9jb2xsaXNpb24oUmVsYXRpb24gcmVsLCBjb25zdCBjaGFyICpjb2xuYW1lLAogCQkJ CQkJCQlib29sIGlmX25vdF9leGlzdHMpCiB7Ci0JSGVhcFR1cGxlCWF0dFR1cGxlOworCUhlYXBU dXBsZQlhdHRUdXBsZSwKKwkJCQlwZXJUdXBsZTsKIAlpbnQJCQlhdHRudW07CiAKKwkvKiBJZiB0 aGUgbmFtZSBleGlzdHMgYXMgYSBwZXJpb2QsIHdlJ3JlIGRvbmUuICovCisJcGVyVHVwbGUgPSBT ZWFyY2hTeXNDYWNoZTIoUEVSSU9ETkFNRSwKKwkJCQkJCQkgICBPYmplY3RJZEdldERhdHVtKFJl bGF0aW9uR2V0UmVsaWQocmVsKSksCisJCQkJCQkJICAgUG9pbnRlckdldERhdHVtKGNvbG5hbWUp KTsKKwlpZiAoSGVhcFR1cGxlSXNWYWxpZChwZXJUdXBsZSkpCisJeworCQlSZWxlYXNlU3lzQ2Fj aGUocGVyVHVwbGUpOworCQllcmVwb3J0KEVSUk9SLAorCQkJCShlcnJjb2RlKEVSUkNPREVfRFVQ TElDQVRFX0NPTFVNTiksCisJCQkJIGVycm1zZygiY29sdW1uIG5hbWUgXCIlc1wiIGNvbmZsaWN0 cyB3aXRoIGEgcGVyaW9kIG5hbWUiLAorCQkJCQkJY29sbmFtZSkpKTsKKwl9CisKIAkvKgogCSAq IHRoaXMgdGVzdCBpcyBkZWxpYmVyYXRlbHkgbm90IGF0dGlzZHJvcHBlZC1hd2FyZSwgc2luY2Ug aWYgb25lIHRyaWVzIHRvCiAJICogYWRkIGEgY29sdW1uIG1hdGNoaW5nIGEgZHJvcHBlZCBjb2x1 bW4gbmFtZSwgaXQncyBnb25uYSBmYWlsIGFueXdheS4KQEAgLTc2ODQsNiArODM1MCw3OCBAQCBj aGVja19mb3JfY29sdW1uX25hbWVfY29sbGlzaW9uKFJlbGF0aW9uIHJlbCwgY29uc3QgY2hhciAq Y29sbmFtZSwKIAlyZXR1cm4gdHJ1ZTsKIH0KIAorLyoKKyAqIElmIGEgbmV3IHBlcmlvZCBuYW1l IHdpbGwgY29sbGlkZSB3aXRoIHRoZSBuYW1lIG9mIGFuIGV4aXN0aW5nIGNvbHVtbiBvcgorICog cGVyaW9kIFthbmQgaWZfbm90X2V4aXN0cyBpcyBmYWxzZV0gdGhlbiBlcnJvciBvdXQsIGVsc2Ug ZG8gbm90aGluZy4KKyAqCisgKiBTZWUgYWxzbyBjaGVja19mb3JfY29sdW1uX25hbWVfY29sbGlz aW9uLgorICovCitzdGF0aWMgYm9vbAorY2hlY2tfZm9yX3BlcmlvZF9uYW1lX2NvbGxpc2lvbihS ZWxhdGlvbiByZWwsIGNvbnN0IGNoYXIgKnBlcm5hbWUsCisJCQkJCQkJCWJvb2wgY29sZXhpc3Rz LCBib29sIGlmX25vdF9leGlzdHMpCit7CisJSGVhcFR1cGxlCWF0dFR1cGxlLAorCQkJCXBlclR1 cGxlOworCWludAkJCWF0dG51bTsKKworCS8qIFhYWDogaW1wbGVtZW50IElGIFtOT1RdIEVYSVNU UyBmb3IgcGVyaW9kcyAqLworCUFzc2VydCghaWZfbm90X2V4aXN0cyk7CisKKwkvKiBJZiB0aGVy ZSBpcyBhbHJlYWR5IGEgcGVyaW9kIHdpdGggdGhpcyBuYW1lLCB0aGVuIHdlJ3JlIGRvbmUuICov CisJcGVyVHVwbGUgPSBTZWFyY2hTeXNDYWNoZTIoUEVSSU9ETkFNRSwKKwkJCQkJCQkgICBPYmpl Y3RJZEdldERhdHVtKFJlbGF0aW9uR2V0UmVsaWQocmVsKSksCisJCQkJCQkJICAgUG9pbnRlckdl dERhdHVtKHBlcm5hbWUpKTsKKwlpZiAoSGVhcFR1cGxlSXNWYWxpZChwZXJUdXBsZSkpCisJewor CQlpZiAoaWZfbm90X2V4aXN0cykKKwkJeworCQkJUmVsZWFzZVN5c0NhY2hlKHBlclR1cGxlKTsK KworCQkJZXJlcG9ydChOT1RJQ0UsCisJCQkJCShlcnJjb2RlKEVSUkNPREVfRFVQTElDQVRFX0NP TFVNTiksCisJCQkJCSBlcnJtc2coInBlcmlvZCBcIiVzXCIgb2YgcmVsYXRpb24gXCIlc1wiIGFs cmVhZHkgZXhpc3RzLCBza2lwcGluZyIsCisJCQkJCQkJcGVybmFtZSwgUmVsYXRpb25HZXRSZWxh dGlvbk5hbWUocmVsKSkpKTsKKwkJCXJldHVybiBmYWxzZTsKKwkJfQorCisJCWVyZXBvcnQoRVJS T1IsCisJCQkJKGVycmNvZGUoRVJSQ09ERV9EVVBMSUNBVEVfQ09MVU1OKSwKKwkJCQkgZXJybXNn KCJwZXJpb2QgXCIlc1wiIG9mIHJlbGF0aW9uIFwiJXNcIiBhbHJlYWR5IGV4aXN0cyIsCisJCQkJ CQlwZXJuYW1lLCBSZWxhdGlvbkdldFJlbGF0aW9uTmFtZShyZWwpKSkpOworCX0KKworCS8qCisJ ICogdGhpcyB0ZXN0IGlzIGRlbGliZXJhdGVseSBub3QgYXR0aXNkcm9wcGVkLWF3YXJlLCBzaW5j ZSBpZiBvbmUgdHJpZXMgdG8KKwkgKiBhZGQgYSBjb2x1bW4gbWF0Y2hpbmcgYSBkcm9wcGVkIGNv bHVtbiBuYW1lLCBpdCdzIGdvbm5hIGZhaWwgYW55d2F5LgorCSAqLworCWF0dFR1cGxlID0gU2Vh cmNoU3lzQ2FjaGUyKEFUVE5BTUUsCisJCQkJCQkJICAgT2JqZWN0SWRHZXREYXR1bShSZWxhdGlv bkdldFJlbGlkKHJlbCkpLAorCQkJCQkJCSAgIFBvaW50ZXJHZXREYXR1bShwZXJuYW1lKSk7CisJ aWYgKEhlYXBUdXBsZUlzVmFsaWQoYXR0VHVwbGUpKQorCXsKKwkJYXR0bnVtID0gKChGb3JtX3Bn X2F0dHJpYnV0ZSkgR0VUU1RSVUNUKGF0dFR1cGxlKSktPmF0dG51bTsKKwkJUmVsZWFzZVN5c0Nh Y2hlKGF0dFR1cGxlKTsKKworCQkvKgorCQkgKiBXZSB0aHJvdyBhIGRpZmZlcmVudCBlcnJvciBt ZXNzYWdlIGZvciBjb25mbGljdHMgd2l0aCBzeXN0ZW0gY29sdW1uCisJCSAqIG5hbWVzLCBzaW5j ZSB0aGV5IGFyZSBub3JtYWxseSBub3Qgc2hvd24gYW5kIHRoZSB1c2VyIG1pZ2h0CisJCSAqIG90 aGVyd2lzZSBiZSBjb25mdXNlZCBhYm91dCB0aGUgcmVhc29uIGZvciB0aGUgY29uZmxpY3QuCisJ CSAqLworCQlpZiAoYXR0bnVtIDw9IDApCisJCQllcmVwb3J0KEVSUk9SLAorCQkJCQkoZXJyY29k ZShFUlJDT0RFX0RVUExJQ0FURV9DT0xVTU4pLAorCQkJCQkgZXJybXNnKCJwZXJpb2QgbmFtZSBc IiVzXCIgY29uZmxpY3RzIHdpdGggYSBzeXN0ZW0gY29sdW1uIG5hbWUiLAorCQkJCQkJCXBlcm5h bWUpKSk7CisJCWlmICghY29sZXhpc3RzKQorCQkJZXJlcG9ydChFUlJPUiwKKwkJCQkJKGVycmNv ZGUoRVJSQ09ERV9EVVBMSUNBVEVfQ09MVU1OKSwKKwkJCQkJIGVycm1zZygicGVyaW9kIG5hbWUg XCIlc1wiIGNvbmZsaWN0cyB3aXRoIGEgY29sdW1uIG5hbWUiLAorCQkJCQkJCXBlcm5hbWUpKSk7 CisJfQorCisJcmV0dXJuIHRydWU7Cit9CisKIC8qCiAgKiBJbnN0YWxsIGEgY29sdW1uJ3MgZGVw ZW5kZW5jeSBvbiBpdHMgZGF0YXR5cGUuCiAgKi8KQEAgLTgyMjMsNiArODk2MSwyMDkgQEAgQVRF eGVjQ29va2VkQ29sdW1uRGVmYXVsdChSZWxhdGlvbiByZWwsIEF0dHJOdW1iZXIgYXR0bnVtLAog CXJldHVybiBhZGRyZXNzOwogfQogCisvKgorICogUHJlcGFyZSB0byBhZGQgYSBQRVJJT0QgdG8g YSB0YWJsZSwgYnkgYWRkaW5nIGFsbCBpdHMgY29uc3RpdHVlbnQgb2JqZWN0cy4KKyAqCisgKiBX ZSBuZWVkIGEgQ0hFQ0sgY29uc3RyYWludCBlbmZvcmNpbmcgd2Ugc3RhcnQgYmVmb3JlIHdlIGVu ZC4KKyAqCisgKiBVc3VhbGx5IHdlIGFsc28gY3JlYXRlIGEgR0VORVJBVEVEIGNvbHVtbiB3aXRo IGEgTk9UIE5VTEwgY29uc3RyYWludCwKKyAqIHVubGVzcyB0aGUgY29tbWFuZCBpbmRpY2F0ZXMg d2UgaGF2ZSBvbmUgYWxyZWFkeS4KKyAqCisgKiBQRVJJT0RzIGFyZSBub3Qgc3VwcG9ydGVkIGlu IGluaGVyaXRhbmNlIGhpZXJhcmNoaWVzLCBzbyB3ZSBkb24ndCBuZWVkCisgKiB0byB3b3JyeSBh Ym91dCByZWN1cnNpb24uCisgKgorICogQVRFeGVjQWRkUGVyaW9kIHdpbGwgbmVlZCB0aGUgb2lk IG9mIHRoZSBDSEVDSyBjb25zdHJhaW50IGFuZCB0aGUgYXR0bnVtCisgKiBvZiB0aGUgcmFuZ2Ug Y29sdW1uICh3aGV0aGVyIG5ldyBvciBub3QpIHRvIHJlY29yZCB0aGUgZGVwZW5kZW5jeS4KKyAq Lworc3RhdGljIHZvaWQKK0FUUHJlcEFkZFBlcmlvZChMaXN0ICoqd3F1ZXVlLCBSZWxhdGlvbiBy ZWwsIEFsdGVyVGFibGVDbWQgKmNtZCwKKwkJCQlMT0NLTU9ERSBsb2NrbW9kZSwgQWx0ZXJUYWJs ZVV0aWxpdHlDb250ZXh0ICpjb250ZXh0KQoreworCVBlcmlvZERlZiAgKnBlcmlvZCA9IChQZXJp b2REZWYgKikgY21kLT5kZWY7CisKKwkvKgorCSAqIFBFUklPRCBGT1IgU1lTVEVNX1RJTUUgaXMg bm90IHlldCBpbXBsZW1lbnRlZCwgYnV0IG1ha2Ugc3VyZSBubyBvbmUKKwkgKiB1c2VzIHRoZSBu YW1lLgorCSAqLworCWlmIChzdHJjbXAocGVyaW9kLT5wZXJpb2RuYW1lLCAic3lzdGVtX3RpbWUi KSA9PSAwKQorCQllcmVwb3J0KEVSUk9SLAorCQkJCShlcnJjb2RlKEVSUkNPREVfRkVBVFVSRV9O T1RfU1VQUE9SVEVEKSwKKwkJCQkgZXJybXNnKCJQRVJJT0QgRk9SIFNZU1RFTV9USU1FIGlzIG5v dCBzdXBwb3J0ZWQiKSkpOworCisJaWYgKHN0cmNtcChwZXJpb2QtPnN0YXJ0Y29sbmFtZSwgcGVy aW9kLT5lbmRjb2xuYW1lKSA9PSAwKQorCQllcmVwb3J0KEVSUk9SLCAoZXJybXNnKCJjb2x1bW4g XCIlc1wiIGNhbid0IGJlIHRoZSBzdGFydCBhbmQgZW5kIGNvbHVtbiBmb3IgcGVyaW9kIFwiJXNc IiIsCisJCQkJCQkJICAgcGVyaW9kLT5zdGFydGNvbG5hbWUsIHBlcmlvZC0+cGVyaW9kbmFtZSkp KTsKKworCS8qIFBhcnNlIG9wdGlvbnMgKi8KKwl0cmFuc2Zvcm1QZXJpb2RPcHRpb25zKHBlcmlv ZCk7Cit9CisKKy8qCisgKiBBTFRFUiBUQUJMRSBBREQgUEVSSU9ECisgKgorICogUmV0dXJuIHRo ZSBhZGRyZXNzIG9mIHRoZSBwZXJpb2QuCisgKi8KK3N0YXRpYyBPYmplY3RBZGRyZXNzCitBVEV4 ZWNBZGRQZXJpb2QoTGlzdCAqKndxdWV1ZSwgQWx0ZXJlZFRhYmxlSW5mbyAqdGFiLCBSZWxhdGlv biByZWwsCisJCQkJUGVyaW9kRGVmICpwZXJpb2QsIExPQ0tNT0RFIGxvY2ttb2RlLAorCQkJCUFs dGVyVGFibGVVdGlsaXR5Q29udGV4dCAqY29udGV4dCkKK3sKKwlSZWxhdGlvbglhdHRyZWxhdGlv bjsKKwlPYmplY3RBZGRyZXNzIGFkZHJlc3MgPSBJbnZhbGlkT2JqZWN0QWRkcmVzczsKKwlDb25z dHJhaW50ICpjb25zdHI7CisJQ29sdW1uRGVmICAqcmFuZ2Vjb2w7CisJT2lkCQkJY29ub2lkLAor CQkJCXBlcmlvZG9pZDsKKwlMaXN0CSAgICpjbWRzID0gTklMOworCUFsdGVyVGFibGVDbWQgKmNt ZDsKKworCS8qCisJICogVGhlIHBlcmlvZCBuYW1lIG11c3Qgbm90IGFscmVhZHkgZXhpc3QuIFdl IGNhbid0IGNoZWNrIHRoaXMgaW4KKwkgKiBBVFByZXBBZGRQZXJpb2QgYmVjYXVzZSB0aGUgc2Ft ZSBBTFRFUiBUQUJMRSBjb21tYW5kIG1pZ2h0IGRvIGEgRFJPUAorCSAqIFBFUklPRCBhcyB3ZWxs LgorCSAqLworCSh2b2lkKSBjaGVja19mb3JfcGVyaW9kX25hbWVfY29sbGlzaW9uKHJlbCwgcGVy aW9kLT5wZXJpb2RuYW1lLAorCQkJCQkJCQkJCSAgIHBlcmlvZC0+Y29sZXhpc3RzLCBmYWxzZSk7 CisKKwlhdHRyZWxhdGlvbiA9IHRhYmxlX29wZW4oQXR0cmlidXRlUmVsYXRpb25JZCwgUm93RXhj bHVzaXZlTG9jayk7CisJVmFsaWRhdGVQZXJpb2QocmVsLCBwZXJpb2QpOworCisJLyogTWFrZSB0 aGUgQ0hFQ0sgY29uc3RyYWludCAqLworCWNvbnN0ciA9IG1ha2VfY29uc3RyYWludF9mb3JfcGVy aW9kKHJlbCwgcGVyaW9kKTsKKwljbWQgPSBtYWtlTm9kZShBbHRlclRhYmxlQ21kKTsKKwljbWQt PnN1YnR5cGUgPSBBVF9BZGRDb25zdHJhaW50OworCWNtZC0+ZGVmID0gKE5vZGUgKikgY29uc3Ry OworCWNtZHMgPSBsYXBwZW5kKGNtZHMsIGNtZCk7CisJQWx0ZXJUYWJsZUludGVybmFsKFJlbGF0 aW9uR2V0UmVsaWQocmVsKSwgY21kcywgdHJ1ZSwgY29udGV4dCk7CisJY29ub2lkID0gZ2V0X3Jl bGF0aW9uX2NvbnN0cmFpbnRfb2lkKFJlbGF0aW9uR2V0UmVsaWQocmVsKSwKKwkJCQkJCQkJCQkg cGVyaW9kLT5jb25zdHJhaW50bmFtZSwgZmFsc2UpOworCisKKwlpZiAoIXBlcmlvZC0+Y29sZXhp c3RzKQorCXsKKwkJY21kcyA9IE5JTDsKKworCQkvKgorCQkgKiBNYWtlIHRoZSByYW5nZSBjb2x1 bW4uCisJCSAqCisJCSAqIFdlIGhhdmUgYWxyZWFkeSBwYXNzZWQgdGhlIGFkZC1jb2x1bW4gcGFz cywgc28gd2UgaGF2ZSB0byBjcmVhdGUgaXQKKwkJICogb3Vyc2VsZi4KKwkJICovCisJCXJhbmdl Y29sID0gbWFrZV9yYW5nZV9jb2x1bW5fZm9yX3BlcmlvZChwZXJpb2QpOworCQljbWQgPSBtYWtl Tm9kZShBbHRlclRhYmxlQ21kKTsKKwkJY21kLT5zdWJ0eXBlID0gQVRfQWRkQ29sdW1uOworCQlj bWQtPmRlZiA9IChOb2RlICopIHJhbmdlY29sOworCQljbWQtPm5hbWUgPSBwZXJpb2QtPnBlcmlv ZG5hbWU7CisJCWNtZC0+cmVjdXJzZSA9IGZhbHNlOwkvKiBObywgbGV0IHRoZSBQRVJJT0QgcmVj dXJzZSBpbnN0ZWFkLiAqLworCQlBVEV4ZWNBZGRDb2x1bW4od3F1ZXVlLCB0YWIsIHJlbCwgJmNt ZCwgZmFsc2UsIGZhbHNlLCBsb2NrbW9kZSwKKwkJCQkJCUFUX1BBU1NfQUREX1BFUklPRCwgY29u dGV4dCk7CisKKwkJLyogVGhlIHJhbmdlIGNvbHVtbiBzaG91bGQgYmUgTk9UIE5VTEwuICovCisJ CWNtZCA9IG1ha2VOb2RlKEFsdGVyVGFibGVDbWQpOworCQljbWQtPnN1YnR5cGUgPSBBVF9BZGRD b25zdHJhaW50OworCQljbWQtPmRlZiA9IChOb2RlICopIG1ha2VOb3ROdWxsQ29uc3RyYWludCht YWtlU3RyaW5nKHBlcmlvZC0+cGVyaW9kbmFtZSkpOworCQljbWQtPnJlY3Vyc2UgPSBmYWxzZTsJ LyogTm8sIGxldCB0aGUgUEVSSU9EIHJlY3Vyc2UgaW5zdGVhZC4gKi8KKwkJQVRQcmVwQ21kKHdx dWV1ZSwgcmVsLCBjbWQsIGZhbHNlLCBmYWxzZSwgbG9ja21vZGUsIGNvbnRleHQpOworCisJCS8q IExvb2sgdXAgdGhlIEdFTkVSQVRFRCBhdHRudW0gKi8KKwkJcGVyaW9kLT5ybmdhdHRudW0gPSBn ZXRfYXR0bnVtKFJlbGF0aW9uR2V0UmVsaWQocmVsKSwgcGVyaW9kLT5wZXJpb2RuYW1lKTsKKwkJ aWYgKHBlcmlvZC0+cm5nYXR0bnVtID09IEludmFsaWRBdHRyTnVtYmVyKQorCQkJZWxvZyhFUlJP UiwgIm1pc3NpbmcgYXR0cmlidXRlICVzIiwgcGVyaW9kLT5wZXJpb2RuYW1lKTsKKwl9CisKKwkv KiBTYXZlIHRoZSBQZXJpb2QgKi8KKwlwZXJpb2RvaWQgPSBTdG9yZVBlcmlvZChyZWwsIHBlcmlv ZC0+cGVyaW9kbmFtZSwgcGVyaW9kLT5zdGFydGF0dG51bSwKKwkJCQkJCQlwZXJpb2QtPmVuZGF0 dG51bSwgcGVyaW9kLT5ybmdhdHRudW0sIGNvbm9pZCk7CisKKwlPYmplY3RBZGRyZXNzU2V0KGFk ZHJlc3MsIFBlcmlvZFJlbGF0aW9uSWQsIHBlcmlvZG9pZCk7CisKKwl0YWJsZV9jbG9zZShhdHRy ZWxhdGlvbiwgUm93RXhjbHVzaXZlTG9jayk7CisKKwlyZXR1cm4gYWRkcmVzczsKK30KKworLyoK KyAqIEFMVEVSIFRBQkxFIERST1AgUEVSSU9ECisgKgorICogTGlrZSBEUk9QIENPTFVNTiwgd2Ug Y2FuJ3QgdXNlIHRoZSBub3JtYWwgQUxURVIgVEFCTEUgcmVjdXJzaW9uIG1lY2hhbmlzbS4KKyAq Lworc3RhdGljIHZvaWQKK0FURXhlY0Ryb3BQZXJpb2QoUmVsYXRpb24gcmVsLCBjb25zdCBjaGFy ICpwZXJpb2ROYW1lLAorCQkJCSBEcm9wQmVoYXZpb3IgYmVoYXZpb3IsCisJCQkJIGJvb2wgcmVj dXJzZSwgYm9vbCByZWN1cnNpbmcsCisJCQkJIGJvb2wgbWlzc2luZ19vaykKK3sKKwlSZWxhdGlv bglwZ19wZXJpb2Q7CisJRm9ybV9wZ19wZXJpb2QgcGVyaW9kOworCVN5c1NjYW5EZXNjIHNjYW47 CisJU2NhbktleURhdGEga2V5OworCUhlYXBUdXBsZQl0dXBsZTsKKwlib29sCQlmb3VuZCA9IGZh bHNlOworCisJLyogQXQgdG9wIGxldmVsLCBwZXJtaXNzaW9uIGNoZWNrIHdhcyBkb25lIGluIEFU UHJlcENtZCwgZWxzZSBkbyBpdCAqLworCWlmIChyZWN1cnNpbmcpCisJCUFUU2ltcGxlUGVybWlz c2lvbnMoQVRfRHJvcFBlcmlvZCwgcmVsLCBBVFRfVEFCTEUpOworCisJcGdfcGVyaW9kID0gdGFi bGVfb3BlbihQZXJpb2RSZWxhdGlvbklkLCBSb3dFeGNsdXNpdmVMb2NrKTsKKworCS8qCisJICog RmluZCBhbmQgZHJvcCB0aGUgdGFyZ2V0IHBlcmlvZAorCSAqLworCVNjYW5LZXlJbml0KCZrZXks CisJCQkJQW51bV9wZ19wZXJpb2RfcGVycmVsaWQsCisJCQkJQlRFcXVhbFN0cmF0ZWd5TnVtYmVy LCBGX09JREVRLAorCQkJCU9iamVjdElkR2V0RGF0dW0oUmVsYXRpb25HZXRSZWxpZChyZWwpKSk7 CisJc2NhbiA9IHN5c3RhYmxlX2JlZ2luc2NhbihwZ19wZXJpb2QsIFBlcmlvZFJlbGlkTmFtZUlu ZGV4SWQsCisJCQkJCQkJICB0cnVlLCBOVUxMLCAxLCAma2V5KTsKKworCXdoaWxlIChIZWFwVHVw bGVJc1ZhbGlkKHR1cGxlID0gc3lzdGFibGVfZ2V0bmV4dChzY2FuKSkpCisJeworCQlPYmplY3RB ZGRyZXNzIHBlcm9iajsKKworCQlwZXJpb2QgPSAoRm9ybV9wZ19wZXJpb2QpIEdFVFNUUlVDVCh0 dXBsZSk7CisKKwkJaWYgKHN0cmNtcChOYW1lU3RyKHBlcmlvZC0+cGVybmFtZSksIHBlcmlvZE5h bWUpICE9IDApCisJCQljb250aW51ZTsKKworCQkvKgorCQkgKiBQZXJmb3JtIHRoZSBhY3R1YWwg cGVyaW9kIGRlbGV0aW9uCisJCSAqLworCQlwZXJvYmouY2xhc3NJZCA9IFBlcmlvZFJlbGF0aW9u SWQ7CisJCXBlcm9iai5vYmplY3RJZCA9IHBlcmlvZC0+b2lkOworCQlwZXJvYmoub2JqZWN0U3Vi SWQgPSAwOworCisJCXBlcmZvcm1EZWxldGlvbigmcGVyb2JqLCBiZWhhdmlvciwgMCk7CisKKwkJ Zm91bmQgPSB0cnVlOworCisJCS8qIHBlcmlvZCBmb3VuZCBhbmQgZHJvcHBlZCAtLSBubyBuZWVk IHRvIGtlZXAgbG9vcGluZyAqLworCQlicmVhazsKKwl9CisKKwlzeXN0YWJsZV9lbmRzY2FuKHNj YW4pOworCisJaWYgKCFmb3VuZCkKKwl7CisJCWlmICghbWlzc2luZ19vaykKKwkJeworCQkJZXJl cG9ydChFUlJPUiwKKwkJCQkJKGVycmNvZGUoRVJSQ09ERV9VTkRFRklORURfT0JKRUNUKSwKKwkJ CQkJIGVycm1zZygicGVyaW9kIFwiJXNcIiBvbiByZWxhdGlvbiBcIiVzXCIgZG9lcyBub3QgZXhp c3QiLAorCQkJCQkJCXBlcmlvZE5hbWUsIFJlbGF0aW9uR2V0UmVsYXRpb25OYW1lKHJlbCkpKSk7 CisJCX0KKwkJZWxzZQorCQl7CisJCQllcmVwb3J0KE5PVElDRSwKKwkJCQkJKGVycm1zZygicGVy aW9kIFwiJXNcIiBvbiByZWxhdGlvbiBcIiVzXCIgZG9lcyBub3QgZXhpc3QsIHNraXBwaW5nIiwK KwkJCQkJCQlwZXJpb2ROYW1lLCBSZWxhdGlvbkdldFJlbGF0aW9uTmFtZShyZWwpKSkpOworCQkJ dGFibGVfY2xvc2UocGdfcGVyaW9kLCBSb3dFeGNsdXNpdmVMb2NrKTsKKwkJCXJldHVybjsKKwkJ fQorCX0KKworCXRhYmxlX2Nsb3NlKHBnX3BlcmlvZCwgUm93RXhjbHVzaXZlTG9jayk7Cit9CisK IC8qCiAgKiBBTFRFUiBUQUJMRSBBTFRFUiBDT0xVTU4gQUREIElERU5USVRZCiAgKgpAQCAtMTAy MzUsOCArMTExNzYsOSBAQCBBVEFkZEZvcmVpZ25LZXlDb25zdHJhaW50KExpc3QgKip3cXVldWUs IEFsdGVyZWRUYWJsZUluZm8gKnRhYiwgUmVsYXRpb24gcmVsLAogCWZvciAoaSA9IDA7IGkgPCBu dW1ma3M7IGkrKykKIAl7CiAJCWNoYXIJCWF0dGdlbmVyYXRlZCA9IFR1cGxlRGVzY0F0dHIoUmVs YXRpb25HZXREZXNjcihyZWwpLCBma2F0dG51bVtpXSAtIDEpLT5hdHRnZW5lcmF0ZWQ7CisJCUJp dG1hcHNldCAgKnBlcmlvZHMgPSBnZXRfcGVyaW9kX2F0dG5vcyhSZWxhdGlvbkdldFJlbGlkKHJl bCkpOwogCi0JCWlmIChhdHRnZW5lcmF0ZWQpCisJCWlmIChhdHRnZW5lcmF0ZWQgJiYgIWJtc19p c19tZW1iZXIoZmthdHRudW1baV0sIHBlcmlvZHMpKQogCQl7CiAJCQkvKgogCQkJICogQ2hlY2sg cmVzdHJpY3Rpb25zIG9uIFVQREFURS9ERUxFVEUgYWN0aW9ucywgcGVyIFNRTCBzdGFuZGFyZApA QCAtMTUxMzEsNiArMTYwNzMsMTYgQEAgUmVtZW1iZXJBbGxEZXBlbmRlbnRGb3JSZWJ1aWxkaW5n KEFsdGVyZWRUYWJsZUluZm8gKnRhYiwgQWx0ZXJUYWJsZVR5cGUgc3VidHlwZSwKIAkJCQlSZW1l bWJlckNvbnN0cmFpbnRGb3JSZWJ1aWxkaW5nKGZvdW5kT2JqZWN0Lm9iamVjdElkLCB0YWIpOwog CQkJCWJyZWFrOwogCisJCQljYXNlIFBlcmlvZFJlbGF0aW9uSWQ6CisJCQkJaWYgKHN1YnR5cGUg PT0gQVRfQWx0ZXJDb2x1bW5UeXBlKQorCQkJCQllcmVwb3J0KEVSUk9SLAorCQkJCQkJCShlcnJj b2RlKEVSUkNPREVfRkVBVFVSRV9OT1RfU1VQUE9SVEVEKSwKKwkJCQkJCQkgZXJybXNnKCJjYW5u b3QgYWx0ZXIgdHlwZSBvZiBhIGNvbHVtbiB1c2VkIGJ5IGEgcGVyaW9kIiksCisJCQkJCQkJIGVy cmRldGFpbCgiJXMgZGVwZW5kcyBvbiBjb2x1bW4gXCIlc1wiIiwKKwkJCQkJCQkJCSAgIGdldE9i amVjdERlc2NyaXB0aW9uKCZmb3VuZE9iamVjdCwgZmFsc2UpLAorCQkJCQkJCQkJICAgY29sTmFt ZSkpKTsKKwkJCQlicmVhazsKKwogCQkJY2FzZSBQcm9jZWR1cmVSZWxhdGlvbklkOgogCiAJCQkJ LyoKQEAgLTE1MjIwLDYgKzE2MTcyLDE2IEBAIFJlbWVtYmVyQWxsRGVwZW5kZW50Rm9yUmVidWls ZGluZyhBbHRlcmVkVGFibGVJbmZvICp0YWIsIEFsdGVyVGFibGVUeXBlIHN1YnR5cGUsCiAJCQkJ CX0KIAkJCQkJZWxzZQogCQkJCQl7CisJCQkJCQkvKgorCQkJCQkJICogSWYgdGhpcyBHRU5FUkFU RUQgY29sdW1uIGlzIGltcGxlbWVudGluZyBhIFBFUklPRCwKKwkJCQkJCSAqIGtlZXAgZ29pbmcg YW5kIHdlJ2xsIGZhaWwgZnJvbSB0aGUgUEVSSU9EIGluc3RlYWQuCisJCQkJCQkgKiBUaGlzIGdp dmVzIGEgbW9yZSBjbGVhciBlcnJvciBtZXNzYWdlLgorCQkJCQkJICovCisJCQkJCQlCaXRtYXBz ZXQgICpwZXJpb2RhdHRzID0gZ2V0X3BlcmlvZF9hdHRub3MoUmVsYXRpb25HZXRSZWxpZChyZWwp KTsKKworCQkJCQkJaWYgKGJtc19pc19tZW1iZXIoY29sLm9iamVjdFN1YklkLCBwZXJpb2RhdHRz KSkKKwkJCQkJCQlicmVhazsKKwogCQkJCQkJLyoKIAkJCQkJCSAqIFRoaXMgbXVzdCBiZSBhIHJl ZmVyZW5jZSBmcm9tIHRoZSBleHByZXNzaW9uIG9mIGEKIAkJCQkJCSAqIGdlbmVyYXRlZCBjb2x1 bW4gZWxzZXdoZXJlIGluIHRoZSBzYW1lIHRhYmxlLgpAQCAtMTcxNTYsNyArMTgxMTgsNyBAQCBB bHRlclRhYmxlTW92ZUFsbChBbHRlclRhYmxlTW92ZUFsbFN0bXQgKnN0bXQpCiAKIAkJRXZlbnRU cmlnZ2VyQWx0ZXJUYWJsZVN0YXJ0KChOb2RlICopIHN0bXQpOwogCQkvKiBPSUQgaXMgc2V0IGJ5 IEFsdGVyVGFibGVJbnRlcm5hbCAqLwotCQlBbHRlclRhYmxlSW50ZXJuYWwobGZpcnN0X29pZChs KSwgY21kcywgZmFsc2UpOworCQlBbHRlclRhYmxlSW50ZXJuYWwobGZpcnN0X29pZChsKSwgY21k cywgZmFsc2UsIE5VTEwpOwogCQlFdmVudFRyaWdnZXJBbHRlclRhYmxlRW5kKCk7CiAJfQogCmRp ZmYgLS1naXQgYS9zcmMvYmFja2VuZC9jb21tYW5kcy90cmlnZ2VyLmMgYi9zcmMvYmFja2VuZC9j b21tYW5kcy90cmlnZ2VyLmMKaW5kZXggNDNiOWQ4MmU2M2EuLjk2OGE5MWZkMzRiIDEwMDY0NAot LS0gYS9zcmMvYmFja2VuZC9jb21tYW5kcy90cmlnZ2VyLmMKKysrIGIvc3JjL2JhY2tlbmQvY29t bWFuZHMvdHJpZ2dlci5jCkBAIC02MTQzLDYgKzYxNDMsOCBAQCBDb3B5Rm9yUG9ydGlvbk9mU3Rh dGUoRm9yUG9ydGlvbk9mU3RhdGUgKnNyYykKIAkJZHN0LT5mcF9yYW5nZU5hbWUgPSBwc3RyZHVw KHNyYy0+ZnBfcmFuZ2VOYW1lKTsKIAkJZHN0LT5mcF9yYW5nZVR5cGUgPSBzcmMtPmZwX3Jhbmdl VHlwZTsKIAkJZHN0LT5mcF9yYW5nZUF0dG5vID0gc3JjLT5mcF9yYW5nZUF0dG5vOworCQlkc3Qt PmZwX3BlcmlvZFN0YXJ0QXR0bm8gPSBzcmMtPmZwX3BlcmlvZFN0YXJ0QXR0bm87CisJCWRzdC0+ ZnBfcGVyaW9kRW5kQXR0bm8gPSBzcmMtPmZwX3BlcmlvZEVuZEF0dG5vOwogCiAJCXIgPSBEYXR1 bUdldFJhbmdlVHlwZVAoc3JjLT5mcF90YXJnZXRSYW5nZSk7CiAJCXR5cGNhY2hlID0gbG9va3Vw X3R5cGVfY2FjaGUoUmFuZ2VUeXBlR2V0T2lkKHIpLCBUWVBFQ0FDSEVfUkFOR0VfSU5GTyk7CmRp ZmYgLS1naXQgYS9zcmMvYmFja2VuZC9jb21tYW5kcy92aWV3LmMgYi9zcmMvYmFja2VuZC9jb21t YW5kcy92aWV3LmMKaW5kZXggNGNjMmFmN2I1ZWMuLmUwNGVmMWNmNzMzIDEwMDY0NAotLS0gYS9z cmMvYmFja2VuZC9jb21tYW5kcy92aWV3LmMKKysrIGIvc3JjL2JhY2tlbmQvY29tbWFuZHMvdmll dy5jCkBAIC0xNjIsNyArMTYyLDcgQEAgRGVmaW5lVmlydHVhbFJlbGF0aW9uKFJhbmdlVmFyICpy ZWxhdGlvbiwgTGlzdCAqdGxpc3QsIGJvb2wgcmVwbGFjZSwKIAkJCX0KIAogCQkJLyogRXZlbnRU cmlnZ2VyQWx0ZXJUYWJsZVN0YXJ0IGNhbGxlZCBieSBQcm9jZXNzVXRpbGl0eVNsb3cgKi8KLQkJ CUFsdGVyVGFibGVJbnRlcm5hbCh2aWV3T2lkLCBhdGNtZHMsIHRydWUpOworCQkJQWx0ZXJUYWJs ZUludGVybmFsKHZpZXdPaWQsIGF0Y21kcywgdHJ1ZSwgTlVMTCk7CiAKIAkJCS8qIE1ha2UgdGhl IG5ldyB2aWV3IGNvbHVtbnMgdmlzaWJsZSAqLwogCQkJQ29tbWFuZENvdW50ZXJJbmNyZW1lbnQo KTsKQEAgLTE5NCw3ICsxOTQsNyBAQCBEZWZpbmVWaXJ0dWFsUmVsYXRpb24oUmFuZ2VWYXIgKnJl bGF0aW9uLCBMaXN0ICp0bGlzdCwgYm9vbCByZXBsYWNlLAogCQlhdGNtZHMgPSBsaXN0X21ha2Ux KGF0Y21kKTsKIAogCQkvKiBFdmVudFRyaWdnZXJBbHRlclRhYmxlU3RhcnQgY2FsbGVkIGJ5IFBy b2Nlc3NVdGlsaXR5U2xvdyAqLwotCQlBbHRlclRhYmxlSW50ZXJuYWwodmlld09pZCwgYXRjbWRz LCB0cnVlKTsKKwkJQWx0ZXJUYWJsZUludGVybmFsKHZpZXdPaWQsIGF0Y21kcywgdHJ1ZSwgTlVM TCk7CiAKIAkJLyoKIAkJICogVGhlcmUgaXMgdmVyeSBsaXR0bGUgdG8gZG8gaGVyZSB0byB1cGRh dGUgdGhlIHZpZXcncyBkZXBlbmRlbmNpZXMuCmRpZmYgLS1naXQgYS9zcmMvYmFja2VuZC9leGVj dXRvci9ub2RlTW9kaWZ5VGFibGUuYyBiL3NyYy9iYWNrZW5kL2V4ZWN1dG9yL25vZGVNb2RpZnlU YWJsZS5jCmluZGV4IGVhNjVjNjVmODA2Li42ZjRjOGM3NDY4ZCAxMDA2NDQKLS0tIGEvc3JjL2Jh Y2tlbmQvZXhlY3V0b3Ivbm9kZU1vZGlmeVRhYmxlLmMKKysrIGIvc3JjL2JhY2tlbmQvZXhlY3V0 b3Ivbm9kZU1vZGlmeVRhYmxlLmMKQEAgLTEzOTIsNiArMTM5Miw3IEBAIEV4ZWNGb3JQb3J0aW9u T2ZMZWZ0b3ZlcnMoTW9kaWZ5VGFibGVDb250ZXh0ICpjb250ZXh0LAogCVRyYW5zaXRpb25DYXB0 dXJlU3RhdGUgKm9sZFRjczsKIAlGbWdySW5mbwlmbGluZm87CiAJUmV0dXJuU2V0SW5mbyByc2k7 CisJYm9vbAkJaGFzUGVyaW9kID0gZmFsc2U7CiAJYm9vbAkJZGlkSW5pdCA9IGZhbHNlOwogCWJv b2wJCXNob3VsZEZyZWUgPSBmYWxzZTsKIApAQCAtMTUwNiw2ICsxNTA3LDggQEAgRXhlY0ZvclBv cnRpb25PZkxlZnRvdmVycyhNb2RpZnlUYWJsZUNvbnRleHQgKmNvbnRleHQsCiAJCQkJRXhlY0Zv cmNlU3RvcmVIZWFwVHVwbGUob2xkdHVwbGUsIGxlZnRvdmVyU2xvdCwgZmFsc2UpOwogCQkJfQog CisJCQloYXNQZXJpb2QgPSBmb3JQb3J0aW9uT2YtPnN0YXJ0VmFyOworCiAJCQkvKgogCQkJICog U2F2ZSBzb21lIG10c3RhdGUgdGhpbmdzIHNvIHdlIGNhbiByZXN0b3JlIHRoZW0gYmVsb3cuIFhY WDoKIAkJCSAqIFNob3VsZCB3ZSBjcmVhdGUgb3VyIG93biBNb2RpZnlUYWJsZVN0YXRlIGluc3Rl YWQ/CkBAIC0xNTE3LDggKzE1MjAsNDIgQEAgRXhlY0ZvclBvcnRpb25PZkxlZnRvdmVycyhNb2Rp ZnlUYWJsZUNvbnRleHQgKmNvbnRleHQsCiAJCQlkaWRJbml0ID0gdHJ1ZTsKIAkJfQogCi0JCWxl ZnRvdmVyU2xvdC0+dHRzX3ZhbHVlc1tmb3JQb3J0aW9uT2YtPnJhbmdlVmFyLT52YXJhdHRubyAt IDFdID0gbGVmdG92ZXI7Ci0JCWxlZnRvdmVyU2xvdC0+dHRzX2lzbnVsbFtmb3JQb3J0aW9uT2Yt PnJhbmdlVmFyLT52YXJhdHRubyAtIDFdID0gZmFsc2U7CisJCWlmIChoYXNQZXJpb2QpCisJCXsK KwkJCVJhbmdlVHlwZSAgKmxlZnRvdmVyUmFuZ2U7CisJCQlSYW5nZUJvdW5kCWxlZnRvdmVyTG93 ZXI7CisJCQlSYW5nZUJvdW5kCWxlZnRvdmVyVXBwZXI7CisJCQlib29sCQlsZWZ0b3ZlckVtcHR5 OworCQkJQXR0ck51bWJlcglzdGFydEF0dG5vOworCQkJQXR0ck51bWJlcgllbmRBdHRubzsKKwor CQkJbGVmdG92ZXJSYW5nZSA9IERhdHVtR2V0UmFuZ2VUeXBlUChsZWZ0b3Zlcik7CisJCQlyYW5n ZV9kZXNlcmlhbGl6ZSh0eXBjYWNoZSwgbGVmdG92ZXJSYW5nZSwgJmxlZnRvdmVyTG93ZXIsICZs ZWZ0b3ZlclVwcGVyLCAmbGVmdG92ZXJFbXB0eSk7CisKKwkJCXN0YXJ0QXR0bm8gPSBmb3JQb3J0 aW9uT2YtPnN0YXJ0VmFyLT52YXJhdHRubzsKKwkJCWVuZEF0dG5vID0gZm9yUG9ydGlvbk9mLT5l bmRWYXItPnZhcmF0dG5vOworCisJCQlpZiAobGVmdG92ZXJMb3dlci5pbmZpbml0ZSkKKwkJCQls ZWZ0b3ZlclNsb3QtPnR0c19pc251bGxbc3RhcnRBdHRubyAtIDFdID0gdHJ1ZTsKKwkJCWVsc2UK KwkJCXsKKwkJCQlsZWZ0b3ZlclNsb3QtPnR0c19pc251bGxbc3RhcnRBdHRubyAtIDFdID0gZmFs c2U7CisJCQkJbGVmdG92ZXJTbG90LT50dHNfdmFsdWVzW3N0YXJ0QXR0bm8gLSAxXSA9IGxlZnRv dmVyTG93ZXIudmFsOworCQkJfQorCisJCQlpZiAobGVmdG92ZXJVcHBlci5pbmZpbml0ZSkKKwkJ CQlsZWZ0b3ZlclNsb3QtPnR0c19pc251bGxbZW5kQXR0bm8gLSAxXSA9IHRydWU7CisJCQllbHNl CisJCQl7CisJCQkJbGVmdG92ZXJTbG90LT50dHNfaXNudWxsW2VuZEF0dG5vIC0gMV0gPSBmYWxz ZTsKKwkJCQlsZWZ0b3ZlclNsb3QtPnR0c192YWx1ZXNbZW5kQXR0bm8gLSAxXSA9IGxlZnRvdmVy VXBwZXIudmFsOworCQkJfQorCQl9CisJCWVsc2UKKwkJeworCQkJbGVmdG92ZXJTbG90LT50dHNf dmFsdWVzW2ZvclBvcnRpb25PZi0+cmFuZ2VWYXItPnZhcmF0dG5vIC0gMV0gPSBsZWZ0b3ZlcjsK KwkJCWxlZnRvdmVyU2xvdC0+dHRzX2lzbnVsbFtmb3JQb3J0aW9uT2YtPnJhbmdlVmFyLT52YXJh dHRubyAtIDFdID0gZmFsc2U7CisJCX0KIAkJRXhlY01hdGVyaWFsaXplU2xvdChsZWZ0b3ZlclNs b3QpOwogCiAJCS8qCmRpZmYgLS1naXQgYS9zcmMvYmFja2VuZC9ub2Rlcy9ub2RlRnVuY3MuYyBi L3NyYy9iYWNrZW5kL25vZGVzL25vZGVGdW5jcy5jCmluZGV4IDI3NjcyZTM3NTBkLi5iMmViN2Iw YjE2NyAxMDA2NDQKLS0tIGEvc3JjL2JhY2tlbmQvbm9kZXMvbm9kZUZ1bmNzLmMKKysrIGIvc3Jj L2JhY2tlbmQvbm9kZXMvbm9kZUZ1bmNzLmMKQEAgLTE3MjksNiArMTcyOSw5IEBAIGV4cHJMb2Nh dGlvbihjb25zdCBOb2RlICpleHByKQogCQljYXNlIFRfQ29uc3RyYWludDoKIAkJCWxvYyA9ICgo Y29uc3QgQ29uc3RyYWludCAqKSBleHByKS0+bG9jYXRpb247CiAJCQlicmVhazsKKwkJY2FzZSBU X1BlcmlvZERlZjoKKwkJCWxvYyA9ICgoY29uc3QgUGVyaW9kRGVmICopIGV4cHIpLT5sb2NhdGlv bjsKKwkJCWJyZWFrOwogCQljYXNlIFRfRnVuY3Rpb25QYXJhbWV0ZXI6CiAJCQlsb2MgPSAoKGNv bnN0IEZ1bmN0aW9uUGFyYW1ldGVyICopIGV4cHIpLT5sb2NhdGlvbjsKIAkJCWJyZWFrOwpkaWZm IC0tZ2l0IGEvc3JjL2JhY2tlbmQvcGFyc2VyL2FuYWx5emUuYyBiL3NyYy9iYWNrZW5kL3BhcnNl ci9hbmFseXplLmMKaW5kZXggMzNlYzBhYmEyOGQuLjdmNWUyMGNkNzljIDEwMDY0NAotLS0gYS9z cmMvYmFja2VuZC9wYXJzZXIvYW5hbHl6ZS5jCisrKyBiL3NyYy9iYWNrZW5kL3BhcnNlci9hbmFs eXplLmMKQEAgLTI0LDExICsyNCwxMyBAQAogCiAjaW5jbHVkZSAicG9zdGdyZXMuaCIKIAorI2lu Y2x1ZGUgImFjY2Vzcy9odHVwX2RldGFpbHMuaCIKICNpbmNsdWRlICJhY2Nlc3Mvc3RyYXRudW0u aCIKICNpbmNsdWRlICJhY2Nlc3Mvc3lzYXR0ci5oIgogI2luY2x1ZGUgImNhdGFsb2cvZGVwZW5k ZW5jeS5oIgogI2luY2x1ZGUgImNhdGFsb2cvcGdfYW0uaCIKICNpbmNsdWRlICJjYXRhbG9nL3Bn X29wZXJhdG9yLmgiCisjaW5jbHVkZSAiY2F0YWxvZy9wZ19wZXJpb2QuaCIKICNpbmNsdWRlICJj YXRhbG9nL3BnX3Byb2MuaCIKICNpbmNsdWRlICJjYXRhbG9nL3BnX3R5cGUuaCIKICNpbmNsdWRl ICJjb21tYW5kcy9kZWZyZW0uaCIKQEAgLTUxLDYgKzUzLDcgQEAKICNpbmNsdWRlICJwYXJzZXIv cGFyc2VfcmVsYXRpb24uaCIKICNpbmNsdWRlICJwYXJzZXIvcGFyc2VfdGFyZ2V0LmgiCiAjaW5j bHVkZSAicGFyc2VyL3BhcnNlX3R5cGUuaCIKKyNpbmNsdWRlICJwYXJzZXIvcGFyc2VyLmgiCiAj aW5jbHVkZSAicGFyc2VyL3BhcnNldHJlZS5oIgogI2luY2x1ZGUgInV0aWxzL2JhY2tlbmRfc3Rh dHVzLmgiCiAjaW5jbHVkZSAidXRpbHMvYnVpbHRpbnMuaCIKQEAgLTEzMzcsNiArMTM0MCwxMCBA QCB0cmFuc2Zvcm1Gb3JQb3J0aW9uT2ZDbGF1c2UoUGFyc2VTdGF0ZSAqcHN0YXRlLAogCWNoYXIJ ICAgKnJhbmdlX3R5cGVfbmFtZXNwYWNlID0gTlVMTDsKIAljaGFyCSAgICpyYW5nZV90eXBlX25h bWUgPSBOVUxMOwogCWludAkJCXJhbmdlX2F0dG5vID0gSW52YWxpZEF0dHJOdW1iZXI7CisJQXR0 ck51bWJlcglzdGFydF9hdHRubyA9IEludmFsaWRBdHRyTnVtYmVyOworCUF0dHJOdW1iZXIJZW5k X2F0dG5vID0gSW52YWxpZEF0dHJOdW1iZXI7CisJY2hhcgkgICAqc3RhcnRjb2xuYW1lID0gTlVM TDsKKwljaGFyCSAgICplbmRjb2xuYW1lID0gTlVMTDsKIAlGb3JtX3BnX2F0dHJpYnV0ZSBhdHRy OwogCU9pZAkJCW9wY2xhc3M7CiAJT2lkCQkJb3BmYW1pbHk7CkBAIC0xMzgwLDYgKzEzODcsNTQg QEAgdHJhbnNmb3JtRm9yUG9ydGlvbk9mQ2xhdXNlKFBhcnNlU3RhdGUgKnBzdGF0ZSwKIAlpZiAo IWdldF90eXBuYW1lX2FuZF9uYW1lc3BhY2UoYXR0ci0+YXR0dHlwaWQsICZyYW5nZV90eXBlX25h bWUsICZyYW5nZV90eXBlX25hbWVzcGFjZSkpCiAJCWVsb2coRVJST1IsICJjYWNoZSBsb29rdXAg ZmFpbGVkIGZvciB0eXBlICV1IiwgYXR0ci0+YXR0dHlwaWQpOwogCisJLyoKKwkgKiBJZiB3ZSBh cmUgdXNpbmcgYSBQRVJJT0QsIHdlIG5lZWQgdGhlIHN0YXJ0ICYgZW5kIGNvbHVtbnMuIElmIHRo ZQorCSAqIGF0dHJpYnV0ZSBpdCBub3QgYSBHRU5FUkFURUQgY29sdW1uLCB3ZSBuZWVkbid0IHF1 ZXJ5IHBnX3BlcmlvZC4KKwkgKi8KKwlpZiAoYXR0ci0+YXR0Z2VuZXJhdGVkID09IEFUVFJJQlVU RV9HRU5FUkFURURfU1RPUkVEKQorCXsKKwkJSGVhcFR1cGxlCXBlclR1cGxlID0gU2VhcmNoU3lz Q2FjaGUyKFBFUklPRE5BTUUsCisJCQkJCQkJCQkJCSAgIE9iamVjdElkR2V0RGF0dW0oUmVsYXRp b25HZXRSZWxpZCh0YXJnZXRyZWwpKSwKKwkJCQkJCQkJCQkJICAgUG9pbnRlckdldERhdHVtKHJh bmdlX25hbWUpKTsKKworCQlpZiAoSGVhcFR1cGxlSXNWYWxpZChwZXJUdXBsZSkpCisJCXsKKwkJ CUZvcm1fcGdfcGVyaW9kIHBlciA9IChGb3JtX3BnX3BlcmlvZCkgR0VUU1RSVUNUKHBlclR1cGxl KTsKKwkJCUZvcm1fcGdfYXR0cmlidXRlIHBlcmF0dHI7CisKKwkJCXN0YXJ0X2F0dG5vID0gcGVy LT5wZXJzdGFydDsKKwkJCWVuZF9hdHRubyA9IHBlci0+cGVyZW5kOworCisJCQlwZXJhdHRyID0g VHVwbGVEZXNjQXR0cih0YXJnZXRyZWwtPnJkX2F0dCwgc3RhcnRfYXR0bm8gLSAxKTsKKwkJCXN0 YXJ0Y29sbmFtZSA9IE5hbWVTdHIocGVyYXR0ci0+YXR0bmFtZSk7CisKKwkJCXJlc3VsdC0+c3Rh cnRWYXIgPSBtYWtlVmFyKAorCQkJCQkJCQkJICAgcnRpbmRleCwKKwkJCQkJCQkJCSAgIHN0YXJ0 X2F0dG5vLAorCQkJCQkJCQkJICAgcGVyYXR0ci0+YXR0dHlwaWQsCisJCQkJCQkJCQkgICBwZXJh dHRyLT5hdHR0eXBtb2QsCisJCQkJCQkJCQkgICBwZXJhdHRyLT5hdHRjb2xsYXRpb24sCisJCQkJ CQkJCQkgICAwKTsKKworCQkJcGVyYXR0ciA9IFR1cGxlRGVzY0F0dHIodGFyZ2V0cmVsLT5yZF9h dHQsIGVuZF9hdHRubyAtIDEpOworCQkJZW5kY29sbmFtZSA9IE5hbWVTdHIocGVyYXR0ci0+YXR0 bmFtZSk7CisJCQlyZXN1bHQtPmVuZFZhciA9IG1ha2VWYXIoCisJCQkJCQkJCQkgcnRpbmRleCwK KwkJCQkJCQkJCSBlbmRfYXR0bm8sCisJCQkJCQkJCQkgcGVyYXR0ci0+YXR0dHlwaWQsCisJCQkJ CQkJCQkgcGVyYXR0ci0+YXR0dHlwbW9kLAorCQkJCQkJCQkJIHBlcmF0dHItPmF0dGNvbGxhdGlv biwKKwkJCQkJCQkJCSAwKTsKKworCQkJUmVsZWFzZVN5c0NhY2hlKHBlclR1cGxlKTsKKwkJfQor CX0KKworCWlmIChzdGFydF9hdHRubyA9PSBJbnZhbGlkQXR0ck51bWJlcikKKwl7CisJCXJlc3Vs dC0+c3RhcnRWYXIgPSBOVUxMOworCQlyZXN1bHQtPmVuZFZhciA9IE5VTEw7CisJfQogCiAJaWYg KGZvclBvcnRpb25PZi0+dGFyZ2V0KQogCkBAIC0xNDUxLDcgKzE1MDYsMTAgQEAgdHJhbnNmb3Jt Rm9yUG9ydGlvbk9mQ2xhdXNlKFBhcnNlU3RhdGUgKnBzdGF0ZSwKIAl7CiAJCS8qCiAJCSAqIE5v dyBtYWtlIHN1cmUgd2UgdXBkYXRlIHRoZSBzdGFydC9lbmQgdGltZSBvZiB0aGUgcmVjb3JkLiBG b3IgYQotCQkgKiByYW5nZSBjb2wgKHIpIHRoaXMgaXMgYHIgPSByICogdGFyZ2V0UmFuZ2VgLgor CQkgKiByYW5nZSBjb2wgKHIpIHRoaXMgaXMgYHIgPSByICogdGFyZ2V0UmFuZ2VgLiBGb3IgYSBQ RVJJT0Qgd2l0aCBjb2xzCisJCSAqIChzLCBlKSB0aGlzIGlzIGBzID0gbG93ZXIodHNyYW5nZShz LCBlKSAqIHRhcmdldFJhbmdlKWAgYW5kIGBlID0KKwkJICogdXBwZXIodHNyYW5nZShzLCBlKSAq IHRhcmdldFJhbmdlYCAob2YgY291cnNlIG5vdCBuZWNlc3NhcmlseSB3aXRoCisJCSAqIHRzcmFu Z2UsIGJ1dCB3aXRoIHdoYXRldmVyIHJhbmdlIHR5cGUgaXMgdXNlZCB0aGVyZSkuCiAJCSAqLwog CQlPaWQJCQlpbnRlcnNlY3RvcGVyb2lkOwogCQlMaXN0CSAgICpmdW5jQXJncyA9IE5JTDsKQEAg LTE0ODYsMTQgKzE1NDQsNzIgQEAgdHJhbnNmb3JtRm9yUG9ydGlvbk9mQ2xhdXNlKFBhcnNlU3Rh dGUgKnBzdGF0ZSwKIAkJcmFuZ2VUTEVFeHByID0gbWFrZUZ1bmNFeHByKGZ1bmNpZCwgYXR0ci0+ YXR0dHlwaWQsIGZ1bmNBcmdzLAogCQkJCQkJCQkJSW52YWxpZE9pZCwgSW52YWxpZE9pZCwgQ09F UkNFX0VYUExJQ0lUX0NBTEwpOwogCi0JCS8qIE1ha2UgYSBUTEUgdG8gc2V0IHRoZSByYW5nZSBj b2x1bW4gKi8KKwkJLyogTWFrZSBhIFRMRSB0byBzZXQgdGhlIHJhbmdlIGNvbHVtbiBvciBzdGFy dC9lbmQgY29sdW1ucyAqLwogCQlyZXN1bHQtPnJhbmdlVGFyZ2V0TGlzdCA9IE5JTDsKLQkJdGxl ID0gbWFrZVRhcmdldEVudHJ5KChFeHByICopIHJhbmdlVExFRXhwciwgcmFuZ2VfYXR0bm8sIHJh bmdlX25hbWUsIGZhbHNlKTsKLQkJcmVzdWx0LT5yYW5nZVRhcmdldExpc3QgPSBsYXBwZW5kKHJl c3VsdC0+cmFuZ2VUYXJnZXRMaXN0LCB0bGUpOwogCi0JCS8qIE1hcmsgdGhlIHJhbmdlIGNvbHVt biBhcyByZXF1aXJpbmcgdXBkYXRlIHBlcm1pc3Npb25zICovCi0JCXRhcmdldF9wZXJtaW5mby0+ dXBkYXRlZENvbHMgPSBibXNfYWRkX21lbWJlcih0YXJnZXRfcGVybWluZm8tPnVwZGF0ZWRDb2xz LAotCQkJCQkJCQkJCQkJCSAgcmFuZ2VfYXR0bm8gLSBGaXJzdExvd0ludmFsaWRIZWFwQXR0cmli dXRlTnVtYmVyKTsKKwkJaWYgKHJlc3VsdC0+c3RhcnRWYXIpCisJCXsKKwkJCUZ1bmNFeHByICAg KmJvdW5kVExFRXhwcjsKKwkJCU9pZAkJCWFyZ190eXBlc1sxXSA9IHtBTllSQU5HRU9JRH07CisJ CQlGdW5jRGV0YWlsQ29kZSBmZHJlc3VsdDsKKwkJCWludAkJCWZnY19mbGFnczsKKwkJCU9pZAkJ CXJldHR5cGU7CisJCQlib29sCQlyZXRzZXQ7CisJCQlpbnQJCQludmFyZ3M7CisJCQlPaWQJCQl2 YXR5cGU7CisJCQlPaWQJCSAgICpkZWNsYXJlZF9hcmdfdHlwZXM7CisJCQlPaWQJCQllbGVtdHlw aWQgPSBnZXRfcmFuZ2Vfc3VidHlwZShhdHRyLT5hdHR0eXBpZCk7CisKKwkJCS8qIHNldCB0aGUg c3RhcnQgY29sdW1uICovCisJCQlmZHJlc3VsdCA9IGZ1bmNfZ2V0X2RldGFpbChTeXN0ZW1GdW5j TmFtZSgibG93ZXIiKSwgTklMLCBOSUwsIDEsCisJCQkJCQkJCQkgICBhcmdfdHlwZXMsCisJCQkJ CQkJCQkgICBmYWxzZSwgZmFsc2UsIGZhbHNlLCAmZmdjX2ZsYWdzLAorCQkJCQkJCQkJICAgJmZ1 bmNpZCwgJnJldHR5cGUsICZyZXRzZXQsCisJCQkJCQkJCQkgICAmbnZhcmdzLCAmdmF0eXBlLAor CQkJCQkJCQkJICAgJmRlY2xhcmVkX2FyZ190eXBlcywgTlVMTCk7CisJCQlpZiAoZmRyZXN1bHQg IT0gRlVOQ0RFVEFJTF9OT1JNQUwpCisJCQkJZWxvZyhFUlJPUiwgImZhaWxlZCB0byBmaW5kIGxv d2VyKGFueXJhbmdlKSBmdW5jdGlvbiIpOworCQkJYm91bmRUTEVFeHByID0gbWFrZUZ1bmNFeHBy KGZ1bmNpZCwKKwkJCQkJCQkJCQllbGVtdHlwaWQsCisJCQkJCQkJCQkJbGlzdF9tYWtlMShyYW5n ZVRMRUV4cHIpLAorCQkJCQkJCQkJCUludmFsaWRPaWQsIEludmFsaWRPaWQsIENPRVJDRV9FWFBM SUNJVF9DQUxMKTsKKwkJCXRsZSA9IG1ha2VUYXJnZXRFbnRyeSgoRXhwciAqKSBib3VuZFRMRUV4 cHIsIHN0YXJ0X2F0dG5vLCBzdGFydGNvbG5hbWUsIGZhbHNlKTsKKwkJCXJlc3VsdC0+cmFuZ2VU YXJnZXRMaXN0ID0gbGFwcGVuZChyZXN1bHQtPnJhbmdlVGFyZ2V0TGlzdCwgdGxlKTsKKworCQkJ Lyogc2V0IHRoZSBlbmQgY29sdW1uICovCisJCQlmZHJlc3VsdCA9IGZ1bmNfZ2V0X2RldGFpbChT eXN0ZW1GdW5jTmFtZSgidXBwZXIiKSwgTklMLCBOSUwsIDEsCisJCQkJCQkJCQkgICBhcmdfdHlw ZXMsCisJCQkJCQkJCQkgICBmYWxzZSwgZmFsc2UsIGZhbHNlLCAmZmdjX2ZsYWdzLAorCQkJCQkJ CQkJICAgJmZ1bmNpZCwgJnJldHR5cGUsICZyZXRzZXQsCisJCQkJCQkJCQkgICAmbnZhcmdzLCAm dmF0eXBlLAorCQkJCQkJCQkJICAgJmRlY2xhcmVkX2FyZ190eXBlcywgTlVMTCk7CisJCQlpZiAo ZmRyZXN1bHQgIT0gRlVOQ0RFVEFJTF9OT1JNQUwpCisJCQkJZWxvZyhFUlJPUiwgImZhaWxlZCB0 byBmaW5kIHVwcGVyKGFueXJhbmdlKSBmdW5jdGlvbiIpOworCQkJYm91bmRUTEVFeHByID0gbWFr ZUZ1bmNFeHByKGZ1bmNpZCwKKwkJCQkJCQkJCQllbGVtdHlwaWQsCisJCQkJCQkJCQkJbGlzdF9t YWtlMShyYW5nZVRMRUV4cHIpLAorCQkJCQkJCQkJCUludmFsaWRPaWQsIEludmFsaWRPaWQsIENP RVJDRV9FWFBMSUNJVF9DQUxMKTsKKwkJCXRsZSA9IG1ha2VUYXJnZXRFbnRyeSgoRXhwciAqKSBi b3VuZFRMRUV4cHIsIGVuZF9hdHRubywgZW5kY29sbmFtZSwgZmFsc2UpOworCQkJcmVzdWx0LT5y YW5nZVRhcmdldExpc3QgPSBsYXBwZW5kKHJlc3VsdC0+cmFuZ2VUYXJnZXRMaXN0LCB0bGUpOwor CisJCQkvKgorCQkJICogTWFyayB0aGUgc3RhcnQvZW5kIGNvbHVtbnMgYXMgcmVxdWlyaW5nIHVw ZGF0ZSBwZXJtaXNzaW9ucy4gQXMKKwkJCSAqIHVzdWFsLCB3ZSBkb24ndCBjaGVjayBwZXJtaXNz aW9ucyBmb3IgdGhlIEdFTkVSQVRFRCBjb2x1bW4uCisJCQkgKi8KKwkJCXRhcmdldF9wZXJtaW5m by0+dXBkYXRlZENvbHMgPSBibXNfYWRkX21lbWJlcih0YXJnZXRfcGVybWluZm8tPnVwZGF0ZWRD b2xzLAorCQkJCQkJCQkJCQkJCQkgIHN0YXJ0X2F0dG5vIC0gRmlyc3RMb3dJbnZhbGlkSGVhcEF0 dHJpYnV0ZU51bWJlcik7CisJCQl0YXJnZXRfcGVybWluZm8tPnVwZGF0ZWRDb2xzID0gYm1zX2Fk ZF9tZW1iZXIodGFyZ2V0X3Blcm1pbmZvLT51cGRhdGVkQ29scywKKwkJCQkJCQkJCQkJCQkJICBl bmRfYXR0bm8gLSBGaXJzdExvd0ludmFsaWRIZWFwQXR0cmlidXRlTnVtYmVyKTsKKwkJfQorCQll bHNlCisJCXsKKwkJCXRsZSA9IG1ha2VUYXJnZXRFbnRyeSgoRXhwciAqKSByYW5nZVRMRUV4cHIs IHJhbmdlX2F0dG5vLCByYW5nZV9uYW1lLCBmYWxzZSk7CisJCQlyZXN1bHQtPnJhbmdlVGFyZ2V0 TGlzdCA9IGxhcHBlbmQocmVzdWx0LT5yYW5nZVRhcmdldExpc3QsIHRsZSk7CisKKwkJCS8qIE1h cmsgdGhlIHJhbmdlIGNvbHVtbiBhcyByZXF1aXJpbmcgdXBkYXRlIHBlcm1pc3Npb25zICovCisJ CQl0YXJnZXRfcGVybWluZm8tPnVwZGF0ZWRDb2xzID0gYm1zX2FkZF9tZW1iZXIodGFyZ2V0X3Bl cm1pbmZvLT51cGRhdGVkQ29scywKKwkJCQkJCQkJCQkJCQkJICByYW5nZV9hdHRubyAtIEZpcnN0 TG93SW52YWxpZEhlYXBBdHRyaWJ1dGVOdW1iZXIpOworCQl9CiAJfQogCWVsc2UKIAkJcmVzdWx0 LT5yYW5nZVRhcmdldExpc3QgPSBOSUw7CmRpZmYgLS1naXQgYS9zcmMvYmFja2VuZC9wYXJzZXIv Z3JhbS55IGIvc3JjL2JhY2tlbmQvcGFyc2VyL2dyYW0ueQppbmRleCA3OWU1M2YxZGY2Mi4uYjkz NzlmMmZmNDEgMTAwNjQ0Ci0tLSBhL3NyYy9iYWNrZW5kL3BhcnNlci9ncmFtLnkKKysrIGIvc3Jj L2JhY2tlbmQvcGFyc2VyL2dyYW0ueQpAQCAtNjAwLDcgKzYwMCw3IEBAIHN0YXRpYyBOb2RlICpt YWtlUmVjdXJzaXZlVmlld1NlbGVjdChjaGFyICpyZWxuYW1lLCBMaXN0ICphbGlhc2VzLCBOb2Rl ICpxdWVyeSk7CiAldHlwZSA8a2V5d29yZD4gY29sX25hbWVfa2V5d29yZCByZXNlcnZlZF9rZXl3 b3JkCiAldHlwZSA8a2V5d29yZD4gYmFyZV9sYWJlbF9rZXl3b3JkCiAKLSV0eXBlIDxub2RlPglE b21haW5Db25zdHJhaW50IFRhYmxlQ29uc3RyYWludCBUYWJsZUxpa2VDbGF1c2UKKyV0eXBlIDxu b2RlPglEb21haW5Db25zdHJhaW50IFRhYmxlQ29uc3RyYWludCBUYWJsZUxpa2VDbGF1c2UgVGFi bGVQZXJpb2QKICV0eXBlIDxpdmFsPglUYWJsZUxpa2VPcHRpb25MaXN0IFRhYmxlTGlrZU9wdGlv bgogJXR5cGUgPHN0cj4JCWNvbHVtbl9jb21wcmVzc2lvbiBvcHRfY29sdW1uX2NvbXByZXNzaW9u IGNvbHVtbl9zdG9yYWdlIG9wdF9jb2x1bW5fc3RvcmFnZQogJXR5cGUgPGxpc3Q+CUNvbFF1YWxM aXN0CkBAIC0yNzEzLDYgKzI3MTMsMjQgQEAgYWx0ZXJfdGFibGVfY21kOgogCQkJCQluLT5kZWYg PSAoTm9kZSAqKSAkNDsKIAkJCQkJJCQgPSAoTm9kZSAqKSBuOwogCQkJCX0KKwkJCS8qIEFMVEVS IFRBQkxFIDxuYW1lPiBBREQgUEVSSU9EIEZPUiA8bmFtZT4gKDxuYW1lPiwgPG5hbWU+KSAqLwor CQkJfCBBRERfUCBUYWJsZVBlcmlvZAorCQkJCXsKKwkJCQkJQWx0ZXJUYWJsZUNtZCAqbiA9IG1h a2VOb2RlKEFsdGVyVGFibGVDbWQpOworCQkJCQluLT5zdWJ0eXBlID0gQVRfQWRkUGVyaW9kOwor CQkJCQluLT5kZWYgPSAkMjsKKwkJCQkJJCQgPSAoTm9kZSAqKW47CisJCQkJfQorCQkJLyogQUxU RVIgVEFCTEUgPG5hbWU+IERST1AgUEVSSU9EIEZPUiA8bmFtZT4gW1JFU1RSSUNUfENBU0NBREVd ICovCisJCQl8IERST1AgUEVSSU9EIEZPUiBuYW1lIG9wdF9kcm9wX2JlaGF2aW9yCisJCQkJewor CQkJCQlBbHRlclRhYmxlQ21kICpuID0gbWFrZU5vZGUoQWx0ZXJUYWJsZUNtZCk7CisJCQkJCW4t PnN1YnR5cGUgPSBBVF9Ecm9wUGVyaW9kOworCQkJCQluLT5uYW1lID0gJDQ7CisJCQkJCW4tPmJl aGF2aW9yID0gJDU7CisJCQkJCW4tPm1pc3Npbmdfb2sgPSBmYWxzZTsKKwkJCQkJJCQgPSAoTm9k ZSAqKW47CisJCQkJfQogCQkJLyogQUxURVIgVEFCTEUgPG5hbWU+IEFERCBDT05TVFJBSU5UIC4u LiAqLwogCQkJfCBBRERfUCBUYWJsZUNvbnN0cmFpbnQKIAkJCQl7CkBAIC0zODc1LDggKzM4OTMs MTAgQEAgVGFibGVFbGVtZW50OgogCQkJY29sdW1uRGVmCQkJCQkJCXsgJCQgPSAkMTsgfQogCQkJ fCBUYWJsZUxpa2VDbGF1c2UJCQkJCXsgJCQgPSAkMTsgfQogCQkJfCBUYWJsZUNvbnN0cmFpbnQJ CQkJCXsgJCQgPSAkMTsgfQorCQkJfCBUYWJsZVBlcmlvZAkJCQkJCXsgJCQgPSAkMTsgfQogCQk7 CiAKKwogVHlwZWRUYWJsZUVsZW1lbnQ6CiAJCQljb2x1bW5PcHRpb25zCQkJCQkJeyAkJCA9ICQx OyB9CiAJCQl8IFRhYmxlQ29uc3RyYWludAkJCQkJeyAkJCA9ICQxOyB9CkBAIC00MjU0LDYgKzQy NzQsMTkgQEAgVGFibGVMaWtlT3B0aW9uOgogCQk7CiAKIAorVGFibGVQZXJpb2Q6CisJCQlQRVJJ T0QgRk9SIG5hbWUgJygnIG5hbWUgJywnIG5hbWUgJyknIG9wdF9kZWZpbml0aW9uCisJCQkJewor CQkJCQlQZXJpb2REZWYgKm4gPSBtYWtlTm9kZShQZXJpb2REZWYpOworCQkJCQluLT5wZXJpb2Ru YW1lID0gJDM7CisJCQkJCW4tPnN0YXJ0Y29sbmFtZSA9ICQ1OworCQkJCQluLT5lbmRjb2xuYW1l ID0gJDc7CisJCQkJCW4tPm9wdGlvbnMgPSAkOTsKKwkJCQkJbi0+bG9jYXRpb24gPSBAMTsKKwkJ CQkJJCQgPSAoTm9kZSAqKSBuOworCQkJCX0KKwkJOworCiAvKiBDb25zdHJhaW50RWxlbSBzcGVj aWZpZXMgY29uc3RyYWludCBzeW50YXggd2hpY2ggaXMgbm90IGVtYmVkZGVkIGludG8KICAqCWEg Y29sdW1uIGRlZmluaXRpb24uIENvbENvbnN0cmFpbnRFbGVtIHNwZWNpZmllcyB0aGUgZW1iZWRk ZWQgZm9ybS4KICAqIC0gdGhvbWFzIDE5OTctMTItMDMKQEAgLTczODgsNiArNzQyMSwxNCBAQCBD b21tZW50U3RtdDoKIAkJCQkJbi0+Y29tbWVudCA9ICQ5OwogCQkJCQkkJCA9IChOb2RlICopIG47 CiAJCQkJfQorCQkJfCBDT01NRU5UIE9OIFBFUklPRCBhbnlfbmFtZSBJUyBjb21tZW50X3RleHQK KwkJCQl7CisJCQkJCUNvbW1lbnRTdG10ICpuID0gbWFrZU5vZGUoQ29tbWVudFN0bXQpOworCQkJ CQluLT5vYmp0eXBlID0gT0JKRUNUX1BFUklPRDsKKwkJCQkJbi0+b2JqZWN0ID0gKE5vZGUgKikg JDQ7CisJCQkJCW4tPmNvbW1lbnQgPSAkNjsKKwkJCQkJJCQgPSAoTm9kZSAqKSBuOworCQkJCX0K IAkJCXwgQ09NTUVOVCBPTiBMQVJHRV9QIE9CSkVDVF9QIE51bWVyaWNPbmx5IElTIGNvbW1lbnRf dGV4dAogCQkJCXsKIAkJCQkJQ29tbWVudFN0bXQgKm4gPSBtYWtlTm9kZShDb21tZW50U3RtdCk7 CkBAIC0xODEyNyw3ICsxODE2OCw2IEBAIHVucmVzZXJ2ZWRfa2V5d29yZDoKIAkJCXwgUEFTU0lO RwogCQkJfCBQQVNTV09SRAogCQkJfCBQQVRICi0JCQl8IFBFUklPRAogCQkJfCBQTEFOCiAJCQl8 IFBMQU5TCiAJCQl8IFBPTElDWQpAQCAtMTg0MzQsNiArMTg0NzQsNyBAQCByZXNlcnZlZF9rZXl3 b3JkOgogCQkJfCBPTkxZCiAJCQl8IE9SCiAJCQl8IE9SREVSCisJCQl8IFBFUklPRAogCQkJfCBQ TEFDSU5HCiAJCQl8IFBSSU1BUlkKIAkJCXwgUkVGRVJFTkNFUwpkaWZmIC0tZ2l0IGEvc3JjL2Jh Y2tlbmQvcGFyc2VyL3BhcnNlX3JlbGF0aW9uLmMgYi9zcmMvYmFja2VuZC9wYXJzZXIvcGFyc2Vf cmVsYXRpb24uYwppbmRleCBkNTQ0YTY5ZmM4MC4uMDg4OTM0Y2Y5MDIgMTAwNjQ0Ci0tLSBhL3Ny Yy9iYWNrZW5kL3BhcnNlci9wYXJzZV9yZWxhdGlvbi5jCisrKyBiL3NyYy9iYWNrZW5kL3BhcnNl ci9wYXJzZV9yZWxhdGlvbi5jCkBAIC0yMSw2ICsyMSw4IEBACiAjaW5jbHVkZSAiYWNjZXNzL3Rh YmxlLmgiCiAjaW5jbHVkZSAiY2F0YWxvZy9oZWFwLmgiCiAjaW5jbHVkZSAiY2F0YWxvZy9uYW1l c3BhY2UuaCIKKyNpbmNsdWRlICJjYXRhbG9nL3BnX3BlcmlvZC5oIgorI2luY2x1ZGUgImNhdGFs b2cvcGdfdHlwZS5oIgogI2luY2x1ZGUgImZ1bmNhcGkuaCIKICNpbmNsdWRlICJub2Rlcy9tYWtl ZnVuY3MuaCIKICNpbmNsdWRlICJub2Rlcy9ub2RlRnVuY3MuaCIKQEAgLTMyODksNiArMzI5MSw3 IEBAIGV4cGFuZE5TSXRlbUF0dHJzKFBhcnNlU3RhdGUgKnBzdGF0ZSwgUGFyc2VOYW1lc3BhY2VJ dGVtICpuc2l0ZW0sCiAJCQkJICBpbnQgc3VibGV2ZWxzX3VwLCBib29sIHJlcXVpcmVfY29sX3By aXZzLCBpbnQgbG9jYXRpb24pCiB7CiAJUmFuZ2VUYmxFbnRyeSAqcnRlID0gbnNpdGVtLT5wX3J0 ZTsKKwlCaXRtYXBzZXQgICpwZXJpb2RhdHRzID0gTlVMTDsKIAlSVEVQZXJtaXNzaW9uSW5mbyAq cGVybWluZm8gPSBuc2l0ZW0tPnBfcGVybWluZm87CiAJTGlzdAkgICAqbmFtZXMsCiAJCQkgICAq dmFyczsKQEAgLTMzMTIsMTIgKzMzMTUsMjAgQEAgZXhwYW5kTlNJdGVtQXR0cnMoUGFyc2VTdGF0 ZSAqcHN0YXRlLCBQYXJzZU5hbWVzcGFjZUl0ZW0gKm5zaXRlbSwKIAkJcGVybWluZm8tPnJlcXVp cmVkUGVybXMgfD0gQUNMX1NFTEVDVDsKIAl9CiAKKwkvKiBHZXQgUEVSSU9EIGNvbHVtbnMgdG8g ZXhjbHVkZSAqLworCWlmIChydGUtPnJ0ZWtpbmQgPT0gUlRFX1JFTEFUSU9OKQorCQlwZXJpb2Rh dHRzID0gZ2V0X3BlcmlvZF9hdHRub3MocnRlLT5yZWxpZCk7CisKIAlmb3Jib3RoKG5hbWUsIG5h bWVzLCB2YXIsIHZhcnMpCiAJewogCQljaGFyCSAgICpsYWJlbCA9IHN0clZhbChsZmlyc3QobmFt ZSkpOwogCQlWYXIJCSAgICp2YXJub2RlID0gKFZhciAqKSBsZmlyc3QodmFyKTsKIAkJVGFyZ2V0 RW50cnkgKnRlOwogCisJCS8qIElmIHRoaXMgY29sdW1uIGlzIGZyb20gYSBQRVJJT0QsIHNraXAg aXQgKi8KKwkJaWYgKGJtc19pc19tZW1iZXIodmFybm9kZS0+dmFyYXR0bm8sIHBlcmlvZGF0dHMp KQorCQkJY29udGludWU7CisKIAkJdGUgPSBtYWtlVGFyZ2V0RW50cnkoKEV4cHIgKikgdmFybm9k ZSwKIAkJCQkJCQkgKEF0dHJOdW1iZXIpIHBzdGF0ZS0+cF9uZXh0X3Jlc25vKyssCiAJCQkJCQkJ IGxhYmVsLApkaWZmIC0tZ2l0IGEvc3JjL2JhY2tlbmQvcGFyc2VyL3BhcnNlX3V0aWxjbWQuYyBi L3NyYy9iYWNrZW5kL3BhcnNlci9wYXJzZV91dGlsY21kLmMKaW5kZXggZTk2YjM4YTU5ZDUuLjY3 ZTM2YWMxMzgzIDEwMDY0NAotLS0gYS9zcmMvYmFja2VuZC9wYXJzZXIvcGFyc2VfdXRpbGNtZC5j CisrKyBiL3NyYy9iYWNrZW5kL3BhcnNlci9wYXJzZV91dGlsY21kLmMKQEAgLTM3LDYgKzM3LDcg QEAKICNpbmNsdWRlICJjYXRhbG9nL3BnX2NvbnN0cmFpbnQuaCIKICNpbmNsdWRlICJjYXRhbG9n L3BnX29wY2xhc3MuaCIKICNpbmNsdWRlICJjYXRhbG9nL3BnX29wZXJhdG9yLmgiCisjaW5jbHVk ZSAiY2F0YWxvZy9wZ19wZXJpb2QuaCIKICNpbmNsdWRlICJjYXRhbG9nL3BnX3N0YXRpc3RpY19l eHQuaCIKICNpbmNsdWRlICJjYXRhbG9nL3BnX3R5cGUuaCIKICNpbmNsdWRlICJjb21tYW5kcy9j b21tZW50LmgiCkBAIC04MCw2ICs4MSw3IEBAIHR5cGVkZWYgc3RydWN0CiAJYm9vbAkJaXNmb3Jl aWduOwkJLyogdHJ1ZSBpZiBDUkVBVEUvQUxURVIgRk9SRUlHTiBUQUJMRSAqLwogCWJvb2wJCWlz YWx0ZXI7CQkvKiB0cnVlIGlmIGFsdGVyaW5nIGV4aXN0aW5nIHRhYmxlICovCiAJTGlzdAkgICAq Y29sdW1uczsJCS8qIENvbHVtbkRlZiBpdGVtcyAqLworCUxpc3QJICAgKnBlcmlvZHM7CQkvKiBQ ZXJpb2REZWYgaXRlbXMgKi8KIAlMaXN0CSAgICpja2NvbnN0cmFpbnRzOwkvKiBDSEVDSyBjb25z dHJhaW50cyAqLwogCUxpc3QJICAgKm5uY29uc3RyYWludHM7CS8qIE5PVCBOVUxMIGNvbnN0cmFp bnRzICovCiAJTGlzdAkgICAqZmtjb25zdHJhaW50czsJLyogRk9SRUlHTiBLRVkgY29uc3RyYWlu dHMgKi8KQEAgLTExMCw2ICsxMTIsOCBAQCB0eXBlZGVmIHN0cnVjdAogCiBzdGF0aWMgdm9pZCB0 cmFuc2Zvcm1Db2x1bW5EZWZpbml0aW9uKENyZWF0ZVN0bXRDb250ZXh0ICpjeHQsCiAJCQkJCQkJ CQkgIENvbHVtbkRlZiAqY29sdW1uKTsKK3N0YXRpYyB2b2lkIHRyYW5zZm9ybVRhYmxlUGVyaW9k KENyZWF0ZVN0bXRDb250ZXh0ICpjeHQsCisJCQkJCQkJCSBQZXJpb2REZWYgKnBlcmlvZCk7CiBz dGF0aWMgdm9pZCB0cmFuc2Zvcm1UYWJsZUNvbnN0cmFpbnQoQ3JlYXRlU3RtdENvbnRleHQgKmN4 dCwKIAkJCQkJCQkJCSBDb25zdHJhaW50ICpjb25zdHJhaW50KTsKIHN0YXRpYyB2b2lkIHRyYW5z Zm9ybVRhYmxlTGlrZUNsYXVzZShDcmVhdGVTdG10Q29udGV4dCAqY3h0LApAQCAtMjQwLDYgKzI0 NCw3IEBAIHRyYW5zZm9ybUNyZWF0ZVN0bXQoQ3JlYXRlU3RtdCAqc3RtdCwgY29uc3QgY2hhciAq cXVlcnlTdHJpbmcpCiAJY3h0LmluaFJlbGF0aW9ucyA9IHN0bXQtPmluaFJlbGF0aW9uczsKIAlj eHQuaXNhbHRlciA9IGZhbHNlOwogCWN4dC5jb2x1bW5zID0gTklMOworCWN4dC5wZXJpb2RzID0g TklMOwogCWN4dC5ja2NvbnN0cmFpbnRzID0gTklMOwogCWN4dC5ubmNvbnN0cmFpbnRzID0gTklM OwogCWN4dC5ma2NvbnN0cmFpbnRzID0gTklMOwpAQCAtMjc5LDYgKzI4NCwxMCBAQCB0cmFuc2Zv cm1DcmVhdGVTdG10KENyZWF0ZVN0bXQgKnN0bXQsIGNvbnN0IGNoYXIgKnF1ZXJ5U3RyaW5nKQog CQkJCXRyYW5zZm9ybUNvbHVtbkRlZmluaXRpb24oJmN4dCwgKENvbHVtbkRlZiAqKSBlbGVtZW50 KTsKIAkJCQlicmVhazsKIAorCQkJY2FzZSBUX1BlcmlvZERlZjoKKwkJCQl0cmFuc2Zvcm1UYWJs ZVBlcmlvZCgmY3h0LCAoUGVyaW9kRGVmICopIGVsZW1lbnQpOworCQkJCWJyZWFrOworCiAJCQlj YXNlIFRfQ29uc3RyYWludDoKIAkJCQl0cmFuc2Zvcm1UYWJsZUNvbnN0cmFpbnQoJmN4dCwgKENv bnN0cmFpbnQgKikgZWxlbWVudCk7CiAJCQkJYnJlYWs7CkBAIC0zNjcsNiArMzc2LDcgQEAgdHJh bnNmb3JtQ3JlYXRlU3RtdChDcmVhdGVTdG10ICpzdG10LCBjb25zdCBjaGFyICpxdWVyeVN0cmlu ZykKIAkgKiBPdXRwdXQgcmVzdWx0cy4KIAkgKi8KIAlzdG10LT50YWJsZUVsdHMgPSBjeHQuY29s dW1uczsKKwlzdG10LT5wZXJpb2RzID0gY3h0LnBlcmlvZHM7CiAJc3RtdC0+Y29uc3RyYWludHMg PSBjeHQuY2tjb25zdHJhaW50czsKIAlzdG10LT5ubmNvbnN0cmFpbnRzID0gY3h0Lm5uY29uc3Ry YWludHM7CiAKQEAgLTEwMjcsNiArMTAzNyw5MiBAQCB0cmFuc2Zvcm1Db2x1bW5EZWZpbml0aW9u KENyZWF0ZVN0bXRDb250ZXh0ICpjeHQsIENvbHVtbkRlZiAqY29sdW1uKQogCX0KIH0KIAordm9p ZAordHJhbnNmb3JtUGVyaW9kT3B0aW9ucyhQZXJpb2REZWYgKnBlcmlvZCkKK3sKKwlMaXN0Q2Vs bCAgICpvcHRpb247CisJRGVmRWxlbSAgICAqZGNvbnN0cmFpbnRuYW1lID0gTlVMTDsKKwlEZWZF bGVtICAgICpkcmFuZ2V0eXBlbmFtZSA9IE5VTEw7CisJRGVmRWxlbSAgICAqZGNvbGV4aXN0cyA9 IE5VTEw7CisKKwlmb3JlYWNoKG9wdGlvbiwgcGVyaW9kLT5vcHRpb25zKQorCXsKKwkJRGVmRWxl bSAgICAqZGVmZWwgPSAoRGVmRWxlbSAqKSBsZmlyc3Qob3B0aW9uKTsKKworCQlpZiAoc3RyY21w KGRlZmVsLT5kZWZuYW1lLCAiY2hlY2tfY29uc3RyYWludF9uYW1lIikgPT0gMCkKKwkJeworCQkJ aWYgKGRjb25zdHJhaW50bmFtZSkKKwkJCQllcmVwb3J0KEVSUk9SLAorCQkJCQkJKGVycmNvZGUo RVJSQ09ERV9TWU5UQVhfRVJST1IpLAorCQkJCQkJIGVycm1zZygiY29uZmxpY3Rpbmcgb3IgcmVk dW5kYW50IG9wdGlvbnMiKSkpOworCQkJZGNvbnN0cmFpbnRuYW1lID0gZGVmZWw7CisJCX0KKwkJ ZWxzZSBpZiAoc3RyY21wKGRlZmVsLT5kZWZuYW1lLCAicmFuZ2V0eXBlIikgPT0gMCkKKwkJewor CQkJaWYgKGRyYW5nZXR5cGVuYW1lKQorCQkJCWVyZXBvcnQoRVJST1IsCisJCQkJCQkoZXJyY29k ZShFUlJDT0RFX1NZTlRBWF9FUlJPUiksCisJCQkJCQkgZXJybXNnKCJjb25mbGljdGluZyBvciBy ZWR1bmRhbnQgb3B0aW9ucyIpKSk7CisJCQlkcmFuZ2V0eXBlbmFtZSA9IGRlZmVsOworCQl9CisJ CWVsc2UgaWYgKHN0cmNtcChkZWZlbC0+ZGVmbmFtZSwgImNvbGV4aXN0cyIpID09IDApCisJCXsK KwkJCWlmIChkY29sZXhpc3RzKQorCQkJCWVyZXBvcnQoRVJST1IsCisJCQkJCQkoZXJyY29kZShF UlJDT0RFX1NZTlRBWF9FUlJPUiksCisJCQkJCQkgZXJybXNnKCJjb25mbGljdGluZyBvciByZWR1 bmRhbnQgb3B0aW9ucyIpKSk7CisJCQlkY29sZXhpc3RzID0gZGVmZWw7CisJCX0KKwkJZWxzZQor CQkJZXJlcG9ydChFUlJPUiwKKwkJCQkJKGVycmNvZGUoRVJSQ09ERV9TWU5UQVhfRVJST1IpLAor CQkJCQkgZXJybXNnKCJvcHRpb24gXCIlc1wiIG5vdCByZWNvZ25pemVkIiwgZGVmZWwtPmRlZm5h bWUpKSk7CisJfQorCisJaWYgKGRjb25zdHJhaW50bmFtZSAhPSBOVUxMKQorCQlwZXJpb2QtPmNv bnN0cmFpbnRuYW1lID0gZGVmR2V0U3RyaW5nKGRjb25zdHJhaW50bmFtZSk7CisJZWxzZQorCQlw ZXJpb2QtPmNvbnN0cmFpbnRuYW1lID0gTlVMTDsKKworCWlmIChkcmFuZ2V0eXBlbmFtZSAhPSBO VUxMKQorCQlwZXJpb2QtPnJhbmdldHlwZW5hbWUgPSBkZWZHZXRTdHJpbmcoZHJhbmdldHlwZW5h bWUpOworCWVsc2UKKwkJcGVyaW9kLT5yYW5nZXR5cGVuYW1lID0gTlVMTDsKKworCWlmIChkY29s ZXhpc3RzICE9IE5VTEwpCisJCXBlcmlvZC0+Y29sZXhpc3RzID0gZGVmR2V0Qm9vbGVhbihkY29s ZXhpc3RzKTsKKwllbHNlCisJCXBlcmlvZC0+Y29sZXhpc3RzID0gZmFsc2U7Cit9CisKKy8qCisg KiB0cmFuc2Zvcm1UYWJsZVBlcmlvZAorICoJCXRyYW5zZm9ybSBhIFBlcmlvZERlZiBub2RlIHdp dGhpbiBDUkVBVEUgVEFCTEUKKyAqLworc3RhdGljIHZvaWQKK3RyYW5zZm9ybVRhYmxlUGVyaW9k KENyZWF0ZVN0bXRDb250ZXh0ICpjeHQsIFBlcmlvZERlZiAqcGVyaW9kKQoreworCWlmIChzdHJj bXAocGVyaW9kLT5wZXJpb2RuYW1lLCAic3lzdGVtX3RpbWUiKSA9PSAwKQorCQllcmVwb3J0KEVS Uk9SLAorCQkJCShlcnJjb2RlKEVSUkNPREVfRkVBVFVSRV9OT1RfU1VQUE9SVEVEKSwKKwkJCQkg ZXJybXNnKCJQRVJJT0QgRk9SIFNZU1RFTV9USU1FIGlzIG5vdCBzdXBwb3J0ZWQiKSwKKwkJCQkg cGFyc2VyX2VycnBvc2l0aW9uKGN4dC0+cHN0YXRlLAorCQkJCQkJCQkJcGVyaW9kLT5sb2NhdGlv bikpKTsKKworCWlmIChzdHJjbXAocGVyaW9kLT5zdGFydGNvbG5hbWUsIHBlcmlvZC0+ZW5kY29s bmFtZSkgPT0gMCkKKwkJZXJlcG9ydChFUlJPUiwgKGVycm1zZygiY29sdW1uIFwiJXNcIiBjYW4n dCBiZSB0aGUgc3RhcnQgYW5kIGVuZCBjb2x1bW4gZm9yIHBlcmlvZCBcIiVzXCIiLAorCQkJCQkJ CSAgIHBlcmlvZC0+c3RhcnRjb2xuYW1lLCBwZXJpb2QtPnBlcmlvZG5hbWUpKSk7CisKKwkvKgor CSAqIERldGVybWluZSB0aGUgY29sdW1uIGluZm8gYW5kIHJhbmdlIHR5cGUgc28gdGhhdAorCSAq IHRyYW5zZm9ybUluZGV4Q29uc3RyYWludHMga25vd3MgaG93IHRvIGNyZWF0ZSBQUklNQVJZIEtF WS9VTklRVUUKKwkgKiBjb25zdHJhaW50cyB1c2luZyB0aGlzIFBFUklPRC4KKwkgKi8KKwl0cmFu c2Zvcm1QZXJpb2RPcHRpb25zKHBlcmlvZCk7CisKKwljeHQtPnBlcmlvZHMgPSBsYXBwZW5kKGN4 dC0+cGVyaW9kcywgcGVyaW9kKTsKK30KKwogLyoKICAqIHRyYW5zZm9ybVRhYmxlQ29uc3RyYWlu dAogICoJCXRyYW5zZm9ybSBhIENvbnN0cmFpbnQgbm9kZSB3aXRoaW4gQ1JFQVRFIFRBQkxFIG9y IEFMVEVSIFRBQkxFCkBAIC0xMTI4LDYgKzEyMjQsNyBAQCB0cmFuc2Zvcm1UYWJsZUxpa2VDbGF1 c2UoQ3JlYXRlU3RtdENvbnRleHQgKmN4dCwgVGFibGVMaWtlQ2xhdXNlICp0YWJsZV9saWtlX2Ns YQogCUF0dHJOdW1iZXIJcGFyZW50X2F0dG5vOwogCVJlbGF0aW9uCXJlbGF0aW9uOwogCVR1cGxl RGVzYwl0dXBsZURlc2M7CisJQml0bWFwc2V0ICAqcGVyaW9kYXR0czsKIAlBY2xSZXN1bHQJYWNs cmVzdWx0OwogCWNoYXIJICAgKmNvbW1lbnQ7CiAJUGFyc2VDYWxsYmFja1N0YXRlIHBjYnN0YXRl OwpAQCAtMTE3Myw2ICsxMjcwLDcgQEAgdHJhbnNmb3JtVGFibGVMaWtlQ2xhdXNlKENyZWF0ZVN0 bXRDb250ZXh0ICpjeHQsIFRhYmxlTGlrZUNsYXVzZSAqdGFibGVfbGlrZV9jbGEKIAl9CiAKIAl0 dXBsZURlc2MgPSBSZWxhdGlvbkdldERlc2NyKHJlbGF0aW9uKTsKKwlwZXJpb2RhdHRzID0gZ2V0 X3BlcmlvZF9hdHRub3MoUmVsYXRpb25HZXRSZWxpZChyZWxhdGlvbikpOwogCiAJLyoKIAkgKiBJ bnNlcnQgdGhlIGNvcGllZCBhdHRyaWJ1dGVzIGludG8gdGhlIGN4dCBmb3IgdGhlIG5ldyB0YWJs ZSBkZWZpbml0aW9uLgpAQCAtMTE4MiwxMCArMTI4MCwxOCBAQCB0cmFuc2Zvcm1UYWJsZUxpa2VD bGF1c2UoQ3JlYXRlU3RtdENvbnRleHQgKmN4dCwgVGFibGVMaWtlQ2xhdXNlICp0YWJsZV9saWtl X2NsYQogCWZvciAocGFyZW50X2F0dG5vID0gMTsgcGFyZW50X2F0dG5vIDw9IHR1cGxlRGVzYy0+ bmF0dHM7CiAJCSBwYXJlbnRfYXR0bm8rKykKIAl7Ci0JCUZvcm1fcGdfYXR0cmlidXRlIGF0dHJp YnV0ZSA9IFR1cGxlRGVzY0F0dHIodHVwbGVEZXNjLAotCQkJCQkJCQkJCQkJCXBhcmVudF9hdHRu byAtIDEpOworCQlGb3JtX3BnX2F0dHJpYnV0ZSBhdHRyaWJ1dGU7CiAJCUNvbHVtbkRlZiAgKmRl ZjsKIAorCQkvKgorCQkgKiBJZiB0aGlzIGNvbHVtbiBpcyBmcm9tIGEgUEVSSU9ELCBza2lwIGl0 IChzaW5jZSBMSUtFIG5ldmVyIGNvcGllcworCQkgKiBQRVJJT0RzKS4KKwkJICovCisJCWlmIChi bXNfaXNfbWVtYmVyKHBhcmVudF9hdHRubywgcGVyaW9kYXR0cykpCisJCQljb250aW51ZTsKKwor CQlhdHRyaWJ1dGUgPSBUdXBsZURlc2NBdHRyKHR1cGxlRGVzYywgcGFyZW50X2F0dG5vIC0gMSk7 CisKIAkJLyoKIAkJICogSWdub3JlIGRyb3BwZWQgY29sdW1ucyBpbiB0aGUgcGFyZW50LgogCQkg Ki8KQEAgLTEyNzEsMTMgKzEzNzcsMTYgQEAgdHJhbnNmb3JtVGFibGVMaWtlQ2xhdXNlKENyZWF0 ZVN0bXRDb250ZXh0ICpjeHQsIFRhYmxlTGlrZUNsYXVzZSAqdGFibGVfbGlrZV9jbGEKIAkvKgog CSAqIFJlcHJvZHVjZSBub3QtbnVsbCBjb25zdHJhaW50cywgaWYgYW55LCBieSBjb3B5aW5nIHRo ZW0uICBXZSBkbyB0aGlzCiAJICogcmVnYXJkbGVzcyBvZiBvcHRpb25zIGdpdmVuLgorCSAqCisJ ICogU2luY2Ugd2Ugc2tpcHBlZCBQRVJJT0RzJyBHRU5FUkFURUQgY29sdW1ucyBhYm92ZSwgd2Ug bXVzdCBza2lwIHRoZWlyCisJICogbm90LW51bGwgY29uc3RyYWludHMgaGVyZS4KIAkgKi8KIAlp ZiAodHVwbGVEZXNjLT5jb25zdHIgJiYgdHVwbGVEZXNjLT5jb25zdHItPmhhc19ub3RfbnVsbCkK IAl7CiAJCUxpc3QJICAgKmxzdDsKIAogCQlsc3QgPSBSZWxhdGlvbkdldE5vdE51bGxDb25zdHJh aW50cyhSZWxhdGlvbkdldFJlbGlkKHJlbGF0aW9uKSwgZmFsc2UsCi0JCQkJCQkJCQkJCXRydWUp OworCQkJCQkJCQkJCQl0cnVlLCBwZXJpb2RhdHRzKTsKIAkJY3h0LT5ubmNvbnN0cmFpbnRzID0g bGlzdF9jb25jYXQoY3h0LT5ubmNvbnN0cmFpbnRzLCBsc3QpOwogCiAJCS8qIENvcHkgY29tbWVu dHMgb24gbm90LW51bGwgY29uc3RyYWludHMgKi8KQEAgLTI2MDksNiArMjcxOCw3IEBAIHRyYW5z Zm9ybUluZGV4Q29uc3RyYWludChDb25zdHJhaW50ICpjb25zdHJhaW50LCBDcmVhdGVTdG10Q29u dGV4dCAqY3h0KQogCQl7CiAJCQljaGFyCSAgICprZXkgPSBzdHJWYWwobGZpcnN0KGxjKSk7CiAJ CQlib29sCQlmb3VuZCA9IGZhbHNlOworCQkJYm9vbAkJaGFzcGVyaW9kID0gZmFsc2U7CiAJCQlD b2x1bW5EZWYgICpjb2x1bW4gPSBOVUxMOwogCQkJTGlzdENlbGwgICAqY29sdW1uczsKIAkJCUlu ZGV4RWxlbSAgKmlwYXJhbTsKQEAgLTI2MjcsNiArMjczNywyNCBAQCB0cmFuc2Zvcm1JbmRleENv bnN0cmFpbnQoQ29uc3RyYWludCAqY29uc3RyYWludCwgQ3JlYXRlU3RtdENvbnRleHQgKmN4dCkK IAkJCWlmICghZm91bmQpCiAJCQkJY29sdW1uID0gTlVMTDsKIAorCQkJLyogSWYgdGhlIGtleSBp cyBXSVRIT1VUIE9WRVJMQVBTLCBhIFBFUklPRCB3aWxsIHdvcmsgdG9vLiAqLworCQkJaWYgKCFm b3VuZCAmJiBjb25zdHJhaW50LT53aXRob3V0X292ZXJsYXBzICYmCisJCQkJbGMgPT0gbGlzdF9s YXN0X2NlbGwoY29uc3RyYWludC0+a2V5cykpCisJCQl7CisJCQkJUGVyaW9kRGVmICAqcGVyaW9k ID0gTlVMTDsKKworCQkJCWZvcmVhY2goY29sdW1ucywgY3h0LT5wZXJpb2RzKQorCQkJCXsKKwkJ CQkJcGVyaW9kID0gbGZpcnN0X25vZGUoUGVyaW9kRGVmLCBjb2x1bW5zKTsKKwkJCQkJaWYgKHN0 cmNtcChwZXJpb2QtPnBlcmlvZG5hbWUsIGtleSkgPT0gMCkKKwkJCQkJeworCQkJCQkJZm91bmQg PSB0cnVlOworCQkJCQkJaGFzcGVyaW9kID0gdHJ1ZTsKKwkJCQkJCWJyZWFrOworCQkJCQl9CisJ CQkJfQorCQkJfQorCiAJCQlpZiAoZm91bmQpCiAJCQl7CiAJCQkJLyoKQEAgLTI2NDMsMjQgKzI3 NzEsMzcgQEAgdHJhbnNmb3JtSW5kZXhDb25zdHJhaW50KENvbnN0cmFpbnQgKmNvbnN0cmFpbnQs IENyZWF0ZVN0bXRDb250ZXh0ICpjeHQpCiAJCQkJaWYgKGNvbnN0cmFpbnQtPmNvbnR5cGUgPT0g Q09OU1RSX1BSSU1BUlkgJiYKIAkJCQkJIWN4dC0+aXNhbHRlcikKIAkJCQl7Ci0JCQkJCWlmIChj b2x1bW4tPmlzX25vdF9udWxsKQorCQkJCQlpZiAoY29sdW1uKQogCQkJCQl7Ci0JCQkJCQlmb3Jl YWNoX25vZGUoQ29uc3RyYWludCwgbm4sIGN4dC0+bm5jb25zdHJhaW50cykKKwkJCQkJCWlmIChj b2x1bW4tPmlzX25vdF9udWxsKQogCQkJCQkJewotCQkJCQkJCWlmIChzdHJjbXAoc3RyVmFsKGxp bml0aWFsKG5uLT5rZXlzKSksIGtleSkgPT0gMCkKKwkJCQkJCQlmb3JlYWNoX25vZGUoQ29uc3Ry YWludCwgbm4sIGN4dC0+bm5jb25zdHJhaW50cykKIAkJCQkJCQl7Ci0JCQkJCQkJCWlmIChubi0+ aXNfbm9faW5oZXJpdCkKLQkJCQkJCQkJCWVyZXBvcnQoRVJST1IsCi0JCQkJCQkJCQkJCWVycmNv ZGUoRVJSQ09ERV9TWU5UQVhfRVJST1IpLAotCQkJCQkJCQkJCQllcnJtc2coImNvbmZsaWN0aW5n IE5PIElOSEVSSVQgZGVjbGFyYXRpb24gZm9yIG5vdC1udWxsIGNvbnN0cmFpbnQgb24gY29sdW1u IFwiJXNcIiIsCi0JCQkJCQkJCQkJCQkgICBrZXkpKTsKLQkJCQkJCQkJYnJlYWs7CisJCQkJCQkJ CWlmIChzdHJjbXAoc3RyVmFsKGxpbml0aWFsKG5uLT5rZXlzKSksIGtleSkgPT0gMCkKKwkJCQkJ CQkJeworCQkJCQkJCQkJaWYgKG5uLT5pc19ub19pbmhlcml0KQorCQkJCQkJCQkJCWVyZXBvcnQo RVJST1IsCisJCQkJCQkJCQkJCQllcnJjb2RlKEVSUkNPREVfU1lOVEFYX0VSUk9SKSwKKwkJCQkJ CQkJCQkJCWVycm1zZygiY29uZmxpY3RpbmcgTk8gSU5IRVJJVCBkZWNsYXJhdGlvbiBmb3Igbm90 LW51bGwgY29uc3RyYWludCBvbiBjb2x1bW4gXCIlc1wiIiwKKwkJCQkJCQkJCQkJCQkgICBrZXkp KTsKKwkJCQkJCQkJCWJyZWFrOworCQkJCQkJCQl9CiAJCQkJCQkJfQogCQkJCQkJfQorCQkJCQkJ ZWxzZQorCQkJCQkJeworCQkJCQkJCWNvbHVtbi0+aXNfbm90X251bGwgPSB0cnVlOworCQkJCQkJ CWN4dC0+bm5jb25zdHJhaW50cyA9CisJCQkJCQkJCWxhcHBlbmQoY3h0LT5ubmNvbnN0cmFpbnRz LAorCQkJCQkJCQkJCW1ha2VOb3ROdWxsQ29uc3RyYWludChtYWtlU3RyaW5nKGtleSkpKTsKKwkJ CQkJCX0KIAkJCQkJfQotCQkJCQllbHNlCisJCQkJCWVsc2UgaWYgKGhhc3BlcmlvZCkKIAkJCQkJ ewotCQkJCQkJY29sdW1uLT5pc19ub3RfbnVsbCA9IHRydWU7CisJCQkJCQkvKgorCQkJCQkJICog SWYgd2UncmUgdXNpbmcgYSBQRVJJT0QsIHdlIGJldHRlciBtYWtlIHN1cmUgaXQgaXMKKwkJCQkJ CSAqIE5PVCBOVUxMCisJCQkJCQkgKi8KIAkJCQkJCWN4dC0+bm5jb25zdHJhaW50cyA9CiAJCQkJ CQkJbGFwcGVuZChjeHQtPm5uY29uc3RyYWludHMsCiAJCQkJCQkJCQltYWtlTm90TnVsbENvbnN0 cmFpbnQobWFrZVN0cmluZyhrZXkpKSk7CkBAIC0yNzg3LDcgKzI5MjgsMTMgQEAgdHJhbnNmb3Jt SW5kZXhDb25zdHJhaW50KENvbnN0cmFpbnQgKmNvbnN0cmFpbnQsIENyZWF0ZVN0bXRDb250ZXh0 ICpjeHQpCiAJCQkJCQl9CiAJCQkJCX0KIAkJCQl9Ci0JCQkJaWYgKGZvdW5kKQorCisJCQkJLyoK KwkJCQkgKiBJbiBDUkVBVEUgVEFCTEUgd2UgZG9uJ3Qga25vdyBQRVJJT0RzJyByYW5nZXR5cGUg eWV0LCBidXQKKwkJCQkgKiB3ZSBrbm93IGl0IHdpbGwgYmUgYSByYW5nZS9tdWx0aXJhbmdlLiBT byBpZiB3ZSBoYXZlIGEKKwkJCQkgKiBQRVJJT0QgdGhlbiB3ZSdyZSBzYWZlLgorCQkJCSAqLwor CQkJCWlmIChmb3VuZCAmJiAhaGFzcGVyaW9kKQogCQkJCXsKIAkJCQkJaWYgKCFPaWRJc1ZhbGlk KHR5cGlkKSAmJiBjb2x1bW4pCiAJCQkJCQl0eXBpZCA9IHR5cGVuYW1lVHlwZUlkKE5VTEwsIGNv bHVtbi0+dHlwZU5hbWUpOwpAQCAtMzExMyw2ICszMjYwLDEwIEBAIHRyYW5zZm9ybUluZGV4U3Rt dChPaWQgcmVsaWQsIEluZGV4U3RtdCAqc3RtdCwgY29uc3QgY2hhciAqcXVlcnlTdHJpbmcpCiAJ CX0KIAl9CiAKKwkvKiB0YWtlIGNhcmUgb2YgdGhlIHBlcmlvZCAqLworCWlmIChzdG10LT5wZXJp b2QpCisJCXN0bXQtPnBlcmlvZC0+b2lkID0gZ2V0X3BlcmlvZF9vaWQocmVsaWQsIHN0bXQtPnBl cmlvZC0+cGVyaW9kbmFtZSwgZmFsc2UpOworCiAJLyoKIAkgKiBDaGVjayB0aGF0IG9ubHkgdGhl IGJhc2UgcmVsIGlzIG1lbnRpb25lZC4gIChUaGlzIHNob3VsZCBiZSBkZWFkIGNvZGUKIAkgKiBu b3cgdGhhdCBhZGRfbWlzc2luZ19mcm9tIGlzIGhpc3RvcnkuKQpAQCAtMzU3MCw2ICszNzIxLDcg QEAgdHJhbnNmb3JtQWx0ZXJUYWJsZVN0bXQoT2lkIHJlbGlkLCBBbHRlclRhYmxlU3RtdCAqc3Rt dCwKIAljeHQuaW5oUmVsYXRpb25zID0gTklMOwogCWN4dC5pc2FsdGVyID0gdHJ1ZTsKIAljeHQu Y29sdW1ucyA9IE5JTDsKKwljeHQucGVyaW9kcyA9IE5JTDsKIAljeHQuY2tjb25zdHJhaW50cyA9 IE5JTDsKIAljeHQubm5jb25zdHJhaW50cyA9IE5JTDsKIAljeHQuZmtjb25zdHJhaW50cyA9IE5J TDsKZGlmZiAtLWdpdCBhL3NyYy9iYWNrZW5kL3V0aWxzL2FkdC9NYWtlZmlsZSBiL3NyYy9iYWNr ZW5kL3V0aWxzL2FkdC9NYWtlZmlsZQppbmRleCBiYTQwYWRhMTFjYS4uYmY2YWJjNTQ2ZWUgMTAw NjQ0Ci0tLSBhL3NyYy9iYWNrZW5kL3V0aWxzL2FkdC9NYWtlZmlsZQorKysgYi9zcmMvYmFja2Vu ZC91dGlscy9hZHQvTWFrZWZpbGUKQEAgLTgwLDYgKzgwLDcgQEAgT0JKUyA9IFwKIAlvcmFjbGVf Y29tcGF0Lm8gXAogCW9yZGVyZWRzZXRhZ2dzLm8gXAogCXBhcnRpdGlvbmZ1bmNzLm8gXAorCXBl cmlvZC5vIFwKIAlwZ19kZXBlbmRlbmNpZXMubyBcCiAJcGdfbG9jYWxlLm8gXAogCXBnX2xvY2Fs ZV9idWlsdGluLm8gXApkaWZmIC0tZ2l0IGEvc3JjL2JhY2tlbmQvdXRpbHMvYWR0L3BlcmlvZC5j IGIvc3JjL2JhY2tlbmQvdXRpbHMvYWR0L3BlcmlvZC5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu ZGV4IDAwMDAwMDAwMDAwLi42Zjg5OTA2OGQwMwotLS0gL2Rldi9udWxsCisrKyBiL3NyYy9iYWNr ZW5kL3V0aWxzL2FkdC9wZXJpb2QuYwpAQCAtMCwwICsxLDU4IEBACisvKi0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0KKyAqCisgKiBwZXJpb2QuYworICoJICBGdW5jdGlvbnMgdG8gc3VwcG9ydCBwZXJpb2RzLgor ICoKKyAqCisgKiBQb3J0aW9ucyBDb3B5cmlnaHQgKGMpIDE5OTYtMjAyMiwgUG9zdGdyZVNRTCBH bG9iYWwgRGV2ZWxvcG1lbnQgR3JvdXAKKyAqIFBvcnRpb25zIENvcHlyaWdodCAoYykgMTk5NCwg UmVnZW50cyBvZiB0aGUgVW5pdmVyc2l0eSBvZiBDYWxpZm9ybmlhCisgKgorICoKKyAqIElERU5U SUZJQ0FUSU9OCisgKgkgIHNyYy9iYWNrZW5kL3V0aWxzL2FkdC9wZXJpb2QuYworICoKKyAqLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLQorICovCisjaW5jbHVkZSAicG9zdGdyZXMuaCIKKworI2luY2x1ZGUgImV4 ZWN1dG9yL3R1cHRhYmxlLmgiCisjaW5jbHVkZSAiZm1nci5oIgorI2luY2x1ZGUgIm5vZGVzL3By aW1ub2Rlcy5oIgorI2luY2x1ZGUgInV0aWxzL2ZtZ3Jwcm90b3MuaCIKKyNpbmNsdWRlICJ1dGls cy9wZXJpb2QuaCIKKyNpbmNsdWRlICJ1dGlscy9yYW5nZXR5cGVzLmgiCisKK0RhdHVtCitwZXJp b2RfdG9fcmFuZ2UoVHVwbGVUYWJsZVNsb3QgKnNsb3QsIGludCBzdGFydGF0dG5vLCBpbnQgZW5k YXR0bm8sIE9pZCByYW5nZXR5cGUpCit7CisJRGF0dW0JCXN0YXJ0dmFsdWU7CisJRGF0dW0JCWVu ZHZhbHVlOworCURhdHVtCQlyZXN1bHQ7CisJYm9vbAkJc3RhcnRpc251bGw7CisJYm9vbAkJZW5k aXNudWxsOworCisJTE9DQUxfRkNJTkZPKGZjaW5mbywgMik7CisJRm1nckluZm8JZmxpbmZvOwor CUZ1bmNFeHByICAgKmY7CisKKwlJbml0RnVuY3Rpb25DYWxsSW5mb0RhdGEoKmZjaW5mbywgJmZs aW5mbywgMiwgSW52YWxpZE9pZCwgTlVMTCwgTlVMTCk7CisJZiA9IG1ha2VOb2RlKEZ1bmNFeHBy KTsKKwlmLT5mdW5jcmVzdWx0dHlwZSA9IHJhbmdldHlwZTsKKwlmbGluZm8uZm5fZXhwciA9IChO b2RlICopIGY7CisJZmxpbmZvLmZuX2V4dHJhID0gTlVMTDsKKworCS8qIGNvbXB1dGUgb2xkdmFs dWUgKi8KKwlzdGFydHZhbHVlID0gc2xvdF9nZXRhdHRyKHNsb3QsIHN0YXJ0YXR0bm8sICZzdGFy dGlzbnVsbCk7CisJZW5kdmFsdWUgPSBzbG90X2dldGF0dHIoc2xvdCwgZW5kYXR0bm8sICZlbmRp c251bGwpOworCisJZmNpbmZvLT5hcmdzWzBdLnZhbHVlID0gc3RhcnR2YWx1ZTsKKwlmY2luZm8t PmFyZ3NbMF0uaXNudWxsID0gc3RhcnRpc251bGw7CisJZmNpbmZvLT5hcmdzWzFdLnZhbHVlID0g ZW5kdmFsdWU7CisJZmNpbmZvLT5hcmdzWzFdLmlzbnVsbCA9IGVuZGlzbnVsbDsKKworCXJlc3Vs dCA9IHJhbmdlX2NvbnN0cnVjdG9yMihmY2luZm8pOworCWlmIChmY2luZm8tPmlzbnVsbCkKKwkJ ZWxvZyhFUlJPUiwgImZ1bmN0aW9uICV1IHJldHVybmVkIE5VTEwiLCBmbGluZm8uZm5fb2lkKTsK KworCXJldHVybiByZXN1bHQ7Cit9CmRpZmYgLS1naXQgYS9zcmMvYmFja2VuZC91dGlscy9jYWNo ZS9sc3lzY2FjaGUuYyBiL3NyYy9iYWNrZW5kL3V0aWxzL2NhY2hlL2xzeXNjYWNoZS5jCmluZGV4 IDQzMTU4YWZhYzE1Li4zNGM5ODE4OGIwZCAxMDA2NDQKLS0tIGEvc3JjL2JhY2tlbmQvdXRpbHMv Y2FjaGUvbHN5c2NhY2hlLmMKKysrIGIvc3JjL2JhY2tlbmQvdXRpbHMvY2FjaGUvbHN5c2NhY2hl LmMKQEAgLTMzLDYgKzMzLDcgQEAKICNpbmNsdWRlICJjYXRhbG9nL3BnX29wY2xhc3MuaCIKICNp bmNsdWRlICJjYXRhbG9nL3BnX29wZmFtaWx5LmgiCiAjaW5jbHVkZSAiY2F0YWxvZy9wZ19vcGVy YXRvci5oIgorI2luY2x1ZGUgImNhdGFsb2cvcGdfcGVyaW9kLmgiCiAjaW5jbHVkZSAiY2F0YWxv Zy9wZ19wcm9jLmgiCiAjaW5jbHVkZSAiY2F0YWxvZy9wZ19wdWJsaWNhdGlvbi5oIgogI2luY2x1 ZGUgImNhdGFsb2cvcGdfcmFuZ2UuaCIKQEAgLTEwODgsNiArMTA4OSw2OCBAQCBnZXRfYXR0b3B0 aW9ucyhPaWQgcmVsaWQsIGludDE2IGF0dG51bSkKIAlyZXR1cm4gcmVzdWx0OwogfQogCisvKgkJ CQktLS0tLS0tLS0tIFBHX1BFUklPRCBDQUNIRSAtLS0tLS0tLS0tCQkJCSAqLworCisvKgorICog Z2V0X3BlcmlvZG5hbWUgLSBnaXZlbiBpdHMgT0lELCBsb29rIHVwIGEgcGVyaW9kCisgKgorICog SWYgbWlzc2luZ19vayBpcyBmYWxzZSwgdGhyb3cgYW4gZXJyb3IgaWYgdGhlIHBlcmlvZCBpcyBu b3QgZm91bmQuCisgKiBJZiB0cnVlLCBqdXN0IHJldHVybiBJbnZhbGlkT2lkLgorICovCitjaGFy ICoKK2dldF9wZXJpb2RuYW1lKE9pZCBwZXJpb2RpZCwgYm9vbCBtaXNzaW5nX29rKQoreworCUhl YXBUdXBsZQl0cDsKKworCXRwID0gU2VhcmNoU3lzQ2FjaGUxKFBFUklPRE9JRCwKKwkJCQkJCSBP YmplY3RJZEdldERhdHVtKHBlcmlvZGlkKSk7CisJaWYgKEhlYXBUdXBsZUlzVmFsaWQodHApKQor CXsKKwkJRm9ybV9wZ19wZXJpb2QgcGVyaW9kX3R1cCA9IChGb3JtX3BnX3BlcmlvZCkgR0VUU1RS VUNUKHRwKTsKKwkJY2hhcgkgICAqcmVzdWx0OworCisJCXJlc3VsdCA9IHBzdHJkdXAoTmFtZVN0 cihwZXJpb2RfdHVwLT5wZXJuYW1lKSk7CisJCVJlbGVhc2VTeXNDYWNoZSh0cCk7CisJCXJldHVy biByZXN1bHQ7CisJfQorCisJaWYgKCFtaXNzaW5nX29rKQorCQllbG9nKEVSUk9SLCAiY2FjaGUg bG9va3VwIGZhaWxlZCBmb3IgcGVyaW9kICVkIiwKKwkJCSBwZXJpb2RpZCk7CisJcmV0dXJuIE5V TEw7Cit9CisKKy8qCisgKiBnZXRfcGVyaW9kX29pZCAtIGdldHMgaXRzIHJlbGF0aW9uIGFuZCBu YW1lLCBsb29rIHVwIGEgcGVyaW9kCisgKgorICogSWYgbWlzc2luZ19vayBpcyBmYWxzZSwgdGhy b3cgYW4gZXJyb3IgaWYgdGhlIGNhc3QgaXMgbm90IGZvdW5kLiAgSWYKKyAqIHRydWUsIGp1c3Qg cmV0dXJuIEludmFsaWRPaWQuCisgKi8KK09pZAorZ2V0X3BlcmlvZF9vaWQoT2lkIHJlbGlkLCBj b25zdCBjaGFyICpwZXJpb2RuYW1lLCBib29sIG1pc3Npbmdfb2spCit7CisJSGVhcFR1cGxlCXRw OworCisJdHAgPSBTZWFyY2hTeXNDYWNoZTIoUEVSSU9ETkFNRSwKKwkJCQkJCSBPYmplY3RJZEdl dERhdHVtKHJlbGlkKSwKKwkJCQkJCSBQb2ludGVyR2V0RGF0dW0ocGVyaW9kbmFtZSkpOworCisJ aWYgKEhlYXBUdXBsZUlzVmFsaWQodHApKQorCXsKKwkJRm9ybV9wZ19wZXJpb2QgcGVyaW9kX3R1 cCA9IChGb3JtX3BnX3BlcmlvZCkgR0VUU1RSVUNUKHRwKTsKKwkJT2lkCQkJcmVzdWx0OworCisJ CXJlc3VsdCA9IHBlcmlvZF90dXAtPm9pZDsKKwkJUmVsZWFzZVN5c0NhY2hlKHRwKTsKKwkJcmV0 dXJuIHJlc3VsdDsKKwl9CisKKwlpZiAoIW1pc3Npbmdfb2spCisJCWVsb2coRVJST1IsICJjYWNo ZSBsb29rdXAgZmFpbGVkIGZvciBwZXJpb2QgJXMiLAorCQkJIHBlcmlvZG5hbWUpOworCXJldHVy biBJbnZhbGlkT2lkOworfQorCiAvKgkJCQktLS0tLS0tLS0tIFBHX0NBU1QgQ0FDSEUgLS0tLS0t LS0tLQkJCQkJICovCiAKIC8qCkBAIC0zNjkyLDYgKzM3NTUsMzEgQEAgZ2V0X211bHRpcmFuZ2Vf cmFuZ2UoT2lkIG11bHRpcmFuZ2VPaWQpCiAJCXJldHVybiBJbnZhbGlkT2lkOwogfQogCitPaWQK K2dldF9zdWJ0eXBlX3JhbmdlKE9pZCBzdWJ0eXBlT2lkKQoreworCUNhdENMaXN0ICAgKmNhdGxp c3Q7CisJT2lkCQkJcmVzdWx0ID0gSW52YWxpZE9pZDsKKworCWNhdGxpc3QgPSBTZWFyY2hTeXND YWNoZUxpc3QxKFJBTkdFU1VCVFlQRSwgT2JqZWN0SWRHZXREYXR1bShzdWJ0eXBlT2lkKSk7CisK KwlpZiAoY2F0bGlzdC0+bl9tZW1iZXJzID09IDEpCisJeworCQlIZWFwVHVwbGUJdHVwbGUgPSAm Y2F0bGlzdC0+bWVtYmVyc1swXS0+dHVwbGU7CisJCUZvcm1fcGdfcmFuZ2Ugcm5ndHVwID0gKEZv cm1fcGdfcmFuZ2UpIEdFVFNUUlVDVCh0dXBsZSk7CisKKwkJcmVzdWx0ID0gcm5ndHVwLT5ybmd0 eXBpZDsKKwkJUmVsZWFzZUNhdENhY2hlTGlzdChjYXRsaXN0KTsKKwl9CisJZWxzZSBpZiAoY2F0 bGlzdC0+bl9tZW1iZXJzID4gMSkKKwkJZXJlcG9ydChFUlJPUiwKKwkJCQkoZXJyY29kZShFUlJD T0RFX0lOREVURVJNSU5BVEVfREFUQVRZUEUpLAorCQkJCSBlcnJtc2coImFtYmlndW91cyByYW5n ZSBmb3IgdHlwZSAlcyIsCisJCQkJCQlmb3JtYXRfdHlwZV9iZShzdWJ0eXBlT2lkKSkpKTsKKwor CXJldHVybiByZXN1bHQ7Cit9CisKIC8qCQkJCS0tLS0tLS0tLS0gUEdfSU5ERVggQ0FDSEUgLS0t LS0tLS0tLQkJCQkgKi8KIAogLyoKZGlmZiAtLWdpdCBhL3NyYy9iaW4vcGdfZHVtcC9wZ19iYWNr dXBfYXJjaGl2ZXIuYyBiL3NyYy9iaW4vcGdfZHVtcC9wZ19iYWNrdXBfYXJjaGl2ZXIuYwppbmRl eCBjODRiMDE3ZjIxYi4uMjJlYWI1YTY3MGQgMTAwNjQ0Ci0tLSBhL3NyYy9iaW4vcGdfZHVtcC9w Z19iYWNrdXBfYXJjaGl2ZXIuYworKysgYi9zcmMvYmluL3BnX2R1bXAvcGdfYmFja3VwX2FyY2hp dmVyLmMKQEAgLTM4NzMsNiArMzg3Myw3IEBAIF9nZXRPYmplY3REZXNjcmlwdGlvbihQUUV4cEJ1 ZmZlciBidWYsIGNvbnN0IFRvY0VudHJ5ICp0ZSkKIAkJCSBzdHJjbXAodHlwZSwgIkRBVEFCQVNF IFBST1BFUlRJRVMiKSA9PSAwIHx8CiAJCQkgc3RyY21wKHR5cGUsICJERUZBVUxUIikgPT0gMCB8 fAogCQkJIHN0cmNtcCh0eXBlLCAiRksgQ09OU1RSQUlOVCIpID09IDAgfHwKKwkJCSBzdHJjbXAo dHlwZSwgIlBFUklPRCIpID09IDAgfHwKIAkJCSBzdHJjbXAodHlwZSwgIklOREVYIikgPT0gMCB8 fAogCQkJIHN0cmNtcCh0eXBlLCAiUlVMRSIpID09IDAgfHwKIAkJCSBzdHJjbXAodHlwZSwgIlRS SUdHRVIiKSA9PSAwIHx8CmRpZmYgLS1naXQgYS9zcmMvYmluL3BnX2R1bXAvcGdfZHVtcC5jIGIv c3JjL2Jpbi9wZ19kdW1wL3BnX2R1bXAuYwppbmRleCBhMDA5MThiYWNiNC4uZjhlYjBmMDA5ZGYg MTAwNjQ0Ci0tLSBhL3NyYy9iaW4vcGdfZHVtcC9wZ19kdW1wLmMKKysrIGIvc3JjL2Jpbi9wZ19k dW1wL3BnX2R1bXAuYwpAQCAtNzE4NCw2ICs3MTg0LDcgQEAgZ2V0VGFibGVzKEFyY2hpdmUgKmZv dXQsIGludCAqbnVtVGFibGVzKQogCWludAkJCWlfcmVsdHlwZTsKIAlpbnQJCQlpX3JlbG93bmVy OwogCWludAkJCWlfcmVsY2hlY2tzOworCWludAkJCWlfbnBlcmlvZDsKIAlpbnQJCQlpX3JlbGhh c2luZGV4OwogCWludAkJCWlfcmVsaGFzcnVsZXM7CiAJaW50CQkJaV9yZWxwYWdlczsKQEAgLTcy NzEsNiArNzI3MiwxNCBAQCBnZXRUYWJsZXMoQXJjaGl2ZSAqZm91dCwgaW50ICpudW1UYWJsZXMp CiAJCWFwcGVuZFBRRXhwQnVmZmVyU3RyKHF1ZXJ5LAogCQkJCQkJCSAiYy5yZWxoYXNvaWRzLCAi KTsKIAorCS8qIEluIFBHMTkgdXB3YXJkcyB3ZSBoYXZlIFBFUklPRHMuICovCisJaWYgKGZvdXQt PnJlbW90ZVZlcnNpb24gPj0gMTkwMDAwKQorCQlhcHBlbmRQUUV4cEJ1ZmZlclN0cihxdWVyeSwK KwkJCQkJCQkgIihTRUxFQ1QgY291bnQoKikgRlJPTSBwZ19wZXJpb2QgV0hFUkUgcGVycmVsaWQg PSBjLm9pZCkgQVMgbnBlcmlvZHMsICIpOworCWVsc2UKKwkJYXBwZW5kUFFFeHBCdWZmZXJTdHIo cXVlcnksCisJCQkJCQkJICIwIEFTIG5wZXJpb2RzLCAiKTsKKwogCWlmIChmb3V0LT5yZW1vdGVW ZXJzaW9uID49IDkwMzAwKQogCQlhcHBlbmRQUUV4cEJ1ZmZlclN0cihxdWVyeSwKIAkJCQkJCQkg ImMucmVsaXNwb3B1bGF0ZWQsICIpOwpAQCAtNzQwOCw2ICs3NDE3LDcgQEAgZ2V0VGFibGVzKEFy Y2hpdmUgKmZvdXQsIGludCAqbnVtVGFibGVzKQogCWlfcmVsdHlwZSA9IFBRZm51bWJlcihyZXMs ICJyZWx0eXBlIik7CiAJaV9yZWxvd25lciA9IFBRZm51bWJlcihyZXMsICJyZWxvd25lciIpOwog CWlfcmVsY2hlY2tzID0gUFFmbnVtYmVyKHJlcywgInJlbGNoZWNrcyIpOworCWlfbnBlcmlvZCA9 IFBRZm51bWJlcihyZXMsICJucGVyaW9kcyIpOwogCWlfcmVsaGFzaW5kZXggPSBQUWZudW1iZXIo cmVzLCAicmVsaGFzaW5kZXgiKTsKIAlpX3JlbGhhc3J1bGVzID0gUFFmbnVtYmVyKHJlcywgInJl bGhhc3J1bGVzIik7CiAJaV9yZWxwYWdlcyA9IFBRZm51bWJlcihyZXMsICJyZWxwYWdlcyIpOwpA QCAtNzQ5Nyw2ICs3NTA3LDcgQEAgZ2V0VGFibGVzKEFyY2hpdmUgKmZvdXQsIGludCAqbnVtVGFi bGVzKQogCQl9CiAJCXRibGluZm9baV0ucmVsdGFibGVzcGFjZSA9IHBnX3N0cmR1cChQUWdldHZh bHVlKHJlcywgaSwgaV9yZWx0YWJsZXNwYWNlKSk7CiAJCXRibGluZm9baV0uaGFzb2lkcyA9IChz dHJjbXAoUFFnZXR2YWx1ZShyZXMsIGksIGlfcmVsaGFzb2lkcyksICJ0IikgPT0gMCk7CisJCXRi bGluZm9baV0ubnBlcmlvZCA9IGF0b2koUFFnZXR2YWx1ZShyZXMsIGksIGlfbnBlcmlvZCkpOwog CQl0YmxpbmZvW2ldLmhhc3RyaWdnZXJzID0gKHN0cmNtcChQUWdldHZhbHVlKHJlcywgaSwgaV9y ZWxoYXN0cmlnZ2VycyksICJ0IikgPT0gMCk7CiAJCXRibGluZm9baV0ucmVscGVyc2lzdGVuY2Ug PSAqKFBRZ2V0dmFsdWUocmVzLCBpLCBpX3JlbHBlcnNpc3RlbmNlKSk7CiAJCXRibGluZm9baV0u cmVsaXNwb3B1bGF0ZWQgPSAoc3RyY21wKFBRZ2V0dmFsdWUocmVzLCBpLCBpX3JlbGlzcG9wdWxh dGVkKSwgInQiKSA9PSAwKTsKQEAgLTc5NTUsNyArNzk2Niw3IEBAIGdldEluZGV4ZXMoQXJjaGl2 ZSAqZm91dCwgVGFibGVJbmZvIHRibGluZm9bXSwgaW50IG51bVRhYmxlcykKIAkJYXBwZW5kUFFF eHBCdWZmZXJTdHIocXVlcnksCiAJCQkJCQkJICJmYWxzZSBBUyBpbmRudWxsc25vdGRpc3RpbmN0 LCAiKTsKIAotCWlmIChmb3V0LT5yZW1vdGVWZXJzaW9uID49IDE4MDAwMCkKKwlpZiAoZm91dC0+ cmVtb3RlVmVyc2lvbiA+PSAxOTAwMDApCiAJCWFwcGVuZFBRRXhwQnVmZmVyU3RyKHF1ZXJ5LAog CQkJCQkJCSAiYy5jb25wZXJpb2QgIik7CiAJZWxzZQpAQCAtOTIxMiw3ICs5MjIzLDcgQEAgZ2V0 VHJhbnNmb3JtcyhBcmNoaXZlICpmb3V0KQogLyoKICAqIGdldFRhYmxlQXR0cnMgLQogICoJICBm b3IgZWFjaCBpbnRlcmVzdGluZyB0YWJsZSwgcmVhZCBpbmZvIGFib3V0IGl0cyBhdHRyaWJ1dGVz Ci0gKgkgIChuYW1lcywgdHlwZXMsIGRlZmF1bHQgdmFsdWVzLCBDSEVDSyBjb25zdHJhaW50cywg ZXRjKQorICoJICAobmFtZXMsIHR5cGVzLCBkZWZhdWx0IHZhbHVlcywgQ0hFQ0sgY29uc3RyYWlu dHMsIFBFUklPRHMsIGV0YykKICAqCiAgKgltb2RpZmllcyB0YmxpbmZvCiAgKi8KQEAgLTkyNjcs NiArOTI3OCw4IEBAIGdldFRhYmxlQXR0cnMoQXJjaGl2ZSAqZm91dCwgVGFibGVJbmZvICp0Ymxp bmZvLCBpbnQgbnVtVGFibGVzKQogCWZvciAoaW50IGkgPSAwOyBpIDwgbnVtVGFibGVzOyBpKysp CiAJewogCQlUYWJsZUluZm8gICp0YmluZm8gPSAmdGJsaW5mb1tpXTsKKwkJaW50CQkJbmR1bXBh YmxlY2hlY2tzOwkvKiBudW1iZXIgb2YgQ0hFQ0sgY29uc3RyYWludHMgdGhhdCBkbworCQkJCQkJ CQkJCSAqIG5vdCBiZWxvbmcgdG8gYSBwZXJpb2QgKi8KIAogCQkvKiBEb24ndCBib3RoZXIgdG8g Y29sbGVjdCBpbmZvIGZvciBzZXF1ZW5jZXMgKi8KIAkJaWYgKHRiaW5mby0+cmVsa2luZCA9PSBS RUxLSU5EX1NFUVVFTkNFKQpAQCAtOTI5Myw3ICs5MzA2LDggQEAgZ2V0VGFibGVBdHRycyhBcmNo aXZlICpmb3V0LCBUYWJsZUluZm8gKnRibGluZm8sIGludCBudW1UYWJsZXMpCiAJCQlhcHBlbmRQ UUV4cEJ1ZmZlckNoYXIodGJsb2lkcywgJywnKTsKIAkJYXBwZW5kUFFFeHBCdWZmZXIodGJsb2lk cywgIiV1IiwgdGJpbmZvLT5kb2JqLmNhdElkLm9pZCk7CiAKLQkJaWYgKHRiaW5mby0+bmNoZWNr ID4gMCkKKwkJbmR1bXBhYmxlY2hlY2tzID0gdGJpbmZvLT5uY2hlY2sgLSB0YmluZm8tPm5wZXJp b2Q7CisJCWlmIChuZHVtcGFibGVjaGVja3MgPiAwKQogCQl7CiAJCQkvKiBBbHNvIG1ha2UgYSBs aXN0IG9mIHRoZSBvbmVzIHdpdGggY2hlY2sgY29uc3RyYWludHMgKi8KIAkJCWlmIChjaGVja29p ZHMtPmxlbiA+IDEpIC8qIGRvIHdlIGhhdmUgbW9yZSB0aGFuIHRoZSAneyc/ICovCkBAIC05ODI4 LDE1ICs5ODQyLDM2IEBAIGdldFRhYmxlQXR0cnMoQXJjaGl2ZSAqZm91dCwgVGFibGVJbmZvICp0 YmxpbmZvLCBpbnQgbnVtVGFibGVzKQogCQlwZ19sb2dfaW5mbygiZmluZGluZyB0YWJsZSBjaGVj ayBjb25zdHJhaW50cyIpOwogCiAJCXJlc2V0UFFFeHBCdWZmZXIocSk7Ci0JCWFwcGVuZFBRRXhw QnVmZmVyKHEsCi0JCQkJCQkgICJTRUxFQ1QgYy50YWJsZW9pZCwgYy5vaWQsIGNvbnJlbGlkLCBj b25uYW1lLCAiCi0JCQkJCQkgICJwZ19jYXRhbG9nLnBnX2dldF9jb25zdHJhaW50ZGVmKGMub2lk KSBBUyBjb25zcmMsICIKLQkJCQkJCSAgImNvbmlzbG9jYWwsIGNvbnZhbGlkYXRlZCAiCi0JCQkJ CQkgICJGUk9NIHVubmVzdCgnJXMnOjpwZ19jYXRhbG9nLm9pZFtdKSBBUyBzcmModGJsb2lkKVxu IgotCQkJCQkJICAiSk9JTiBwZ19jYXRhbG9nLnBnX2NvbnN0cmFpbnQgYyBPTiAoc3JjLnRibG9p ZCA9IGMuY29ucmVsaWQpXG4iCi0JCQkJCQkgICJXSEVSRSBjb250eXBlID0gJ2MnICIKLQkJCQkJ CSAgIk9SREVSIEJZIGMuY29ucmVsaWQsIGMuY29ubmFtZSIsCi0JCQkJCQkgIGNoZWNrb2lkcy0+ ZGF0YSk7CisJCWlmIChmb3V0LT5yZW1vdGVWZXJzaW9uID49IDE5MDAwMCkKKwkJeworCQkJLyoK KwkJCSAqIFBFUklPRHMgd2VyZSBhZGRlZCBpbiB2MTkgYW5kIHdlIGRvbid0IGR1bXAgQ0hFQ0sg Y29uc3RyYWludHMKKwkJCSAqIGZvciB0aGVtLgorCQkJICovCisJCQlhcHBlbmRQUUV4cEJ1ZmZl cihxLAorCQkJCQkJCSAgIlNFTEVDVCBjLnRhYmxlb2lkLCBjLm9pZCwgY29ucmVsaWQsIGNvbm5h bWUsICIKKwkJCQkJCQkgICJwZ19jYXRhbG9nLnBnX2dldF9jb25zdHJhaW50ZGVmKGMub2lkKSBB UyBjb25zcmMsICIKKwkJCQkJCQkgICJjb25pc2xvY2FsLCBjb252YWxpZGF0ZWQgIgorCQkJCQkJ CSAgIkZST00gdW5uZXN0KCclcyc6OnBnX2NhdGFsb2cub2lkW10pIEFTIHNyYyh0YmxvaWQpXG4i CisJCQkJCQkJICAiSk9JTiBwZ19jYXRhbG9nLnBnX2NvbnN0cmFpbnQgYyBPTiAoc3JjLnRibG9p ZCA9IGMuY29ucmVsaWQpXG4iCisJCQkJCQkJICAiV0hFUkUgY29udHlwZSA9ICdjJyAiCisJCQkJ CQkJICAiICAgQU5EIE5PVCBFWElTVFMgKFNFTEVDVCBGUk9NIHBnX3BlcmlvZCAiCisJCQkJCQkJ ICAiICAgICAgICAgICAgICAgICAgIFdIRVJFIChwZXJyZWxpZCwgcGVyY29uc3RyYWludCkgPSAo Y29ucmVsaWQsIGMub2lkKSkgIgorCQkJCQkJCSAgIk9SREVSIEJZIGMuY29ucmVsaWQsIGMuY29u bmFtZSIsCisJCQkJCQkJICBjaGVja29pZHMtPmRhdGEpOworCQl9CisJCWVsc2UKKwkJeworCQkJ YXBwZW5kUFFFeHBCdWZmZXIocSwKKwkJCQkJCQkgICJTRUxFQ1QgYy50YWJsZW9pZCwgYy5vaWQs IGNvbnJlbGlkLCBjb25uYW1lLCAiCisJCQkJCQkJICAicGdfY2F0YWxvZy5wZ19nZXRfY29uc3Ry YWludGRlZihjLm9pZCkgQVMgY29uc3JjLCAiCisJCQkJCQkJICAiY29uaXNsb2NhbCwgY29udmFs aWRhdGVkICIKKwkJCQkJCQkgICJGUk9NIHVubmVzdCgnJXMnOjpwZ19jYXRhbG9nLm9pZFtdKSBB UyBzcmModGJsb2lkKVxuIgorCQkJCQkJCSAgIkpPSU4gcGdfY2F0YWxvZy5wZ19jb25zdHJhaW50 IGMgT04gKHNyYy50YmxvaWQgPSBjLmNvbnJlbGlkKVxuIgorCQkJCQkJCSAgIldIRVJFIGNvbnR5 cGUgPSAnYycgIgorCQkJCQkJCSAgIk9SREVSIEJZIGMuY29ucmVsaWQsIGMuY29ubmFtZSIsCisJ CQkJCQkJICBjaGVja29pZHMtPmRhdGEpOworCQl9CiAKIAkJcmVzID0gRXhlY3V0ZVNxbFF1ZXJ5 KGZvdXQsIHEtPmRhdGEsIFBHUkVTX1RVUExFU19PSyk7CiAKQEAgLTk4NTgsNiArOTg5Myw3IEBA IGdldFRhYmxlQXR0cnMoQXJjaGl2ZSAqZm91dCwgVGFibGVJbmZvICp0YmxpbmZvLCBpbnQgbnVt VGFibGVzKQogCQkJT2lkCQkJY29ucmVsaWQgPSBhdG9vaWQoUFFnZXR2YWx1ZShyZXMsIGosIGlf Y29ucmVsaWQpKTsKIAkJCVRhYmxlSW5mbyAgKnRiaW5mbyA9IE5VTEw7CiAJCQlpbnQJCQludW1j b25zOworCQkJaW50CQkJbmR1bXBhYmxlY2hlY2tzOwogCiAJCQkvKiBDb3VudCByb3dzIGZvciB0 aGlzIHRhYmxlICovCiAJCQlmb3IgKG51bWNvbnMgPSAxOyBudW1jb25zIDwgbnVtQ29uc3RycyAt IGo7IG51bWNvbnMrKykKQEAgLTk4NzcsMTIgKzk5MTMsMTMgQEAgZ2V0VGFibGVBdHRycyhBcmNo aXZlICpmb3V0LCBUYWJsZUluZm8gKnRibGluZm8sIGludCBudW1UYWJsZXMpCiAJCQlpZiAoY3Vy dGJsaW5keCA+PSBudW1UYWJsZXMpCiAJCQkJcGdfZmF0YWwoInVucmVjb2duaXplZCB0YWJsZSBP SUQgJXUiLCBjb25yZWxpZCk7CiAKLQkJCWlmIChudW1jb25zICE9IHRiaW5mby0+bmNoZWNrKQor CQkJbmR1bXBhYmxlY2hlY2tzID0gdGJpbmZvLT5uY2hlY2sgLSB0YmluZm8tPm5wZXJpb2Q7CisJ CQlpZiAobnVtY29ucyAhPSBuZHVtcGFibGVjaGVja3MpCiAJCQl7CiAJCQkJcGdfbG9nX2Vycm9y KG5nZXR0ZXh0KCJleHBlY3RlZCAlZCBjaGVjayBjb25zdHJhaW50IG9uIHRhYmxlIFwiJXNcIiBi dXQgZm91bmQgJWQiLAogCQkJCQkJCQkJICAiZXhwZWN0ZWQgJWQgY2hlY2sgY29uc3RyYWludHMg b24gdGFibGUgXCIlc1wiIGJ1dCBmb3VuZCAlZCIsCi0JCQkJCQkJCQkgIHRiaW5mby0+bmNoZWNr KSwKLQkJCQkJCQkgdGJpbmZvLT5uY2hlY2ssIHRiaW5mby0+ZG9iai5uYW1lLCBudW1jb25zKTsK KwkJCQkJCQkJCSAgbmR1bXBhYmxlY2hlY2tzKSwKKwkJCQkJCQkgbmR1bXBhYmxlY2hlY2tzLCB0 YmluZm8tPmRvYmoubmFtZSwgbnVtY29ucyk7CiAJCQkJcGdfbG9nX2Vycm9yX2hpbnQoIlRoZSBz eXN0ZW0gY2F0YWxvZ3MgbWlnaHQgYmUgY29ycnVwdGVkLiIpOwogCQkJCWV4aXRfbmljZWx5KDEp OwogCQkJfQpAQCAtOTk0MSw2ICs5OTc4LDgwIEBAIGdldFRhYmxlQXR0cnMoQXJjaGl2ZSAqZm91 dCwgVGFibGVJbmZvICp0YmxpbmZvLCBpbnQgbnVtVGFibGVzKQogCQlQUWNsZWFyKHJlcyk7CiAJ fQogCisJZm9yIChpbnQgaSA9IDA7IGkgPCBudW1UYWJsZXM7IGkrKykKKwl7CisJCVRhYmxlSW5m byAgKnRiaW5mbyA9ICZ0YmxpbmZvW2ldOworCisJCS8qCisJCSAqIEdldCBpbmZvIGFib3V0IFBF UklPRCBkZWZpbml0aW9ucworCQkgKi8KKwkJaWYgKHRiaW5mby0+bnBlcmlvZCA+IDApCisJCXsK KwkJCVBlcmlvZEluZm8gKnBlcmlvZHM7CisJCQlpbnQJCQludW1QZXJpb2RzOworCQkJaW50CQkJ ajsKKworCQkJLyogV2Ugc2hvdWxkbid0IGhhdmUgYW55IHBlcmlvZHMgYmVmb3JlIHYxOSAqLwor CQkJQXNzZXJ0KGZvdXQtPnJlbW90ZVZlcnNpb24gPj0gMTkwMDAwKTsKKworCQkJcGdfbG9nX2lu Zm8oImZpbmRpbmcgcGVyaW9kcyBmb3IgdGFibGUgXCIlcy4lc1wiIiwKKwkJCQkJCXRiaW5mby0+ ZG9iai5uYW1lc3BhY2UtPmRvYmoubmFtZSwKKwkJCQkJCXRiaW5mby0+ZG9iai5uYW1lKTsKKwor CQkJcmVzZXRQUUV4cEJ1ZmZlcihxKTsKKwkJCWFwcGVuZFBRRXhwQnVmZmVyKHEsCisJCQkJCQkJ ICAiU0VMRUNUIHAudGFibGVvaWQsIHAub2lkLCBwLnBlcm5hbWUsICIKKwkJCQkJCQkgICIgICAg ICAgc2EuYXR0bmFtZSBBUyBwZXJzdGFydCwgZWEuYXR0bmFtZSBBUyBwZXJlbmQsICIKKwkJCQkJ CQkgICIgICAgICAgci50eXBuYW1lIEFTIHJuZ3R5cGUsICIKKwkJCQkJCQkgICIgICAgICAgYy5j b25uYW1lIEFTIGNvbm5hbWUgIgorCQkJCQkJCSAgIkZST00gcGdfY2F0YWxvZy5wZ19wZXJpb2Qg QVMgcCAiCisJCQkJCQkJICAiSk9JTiBwZ19jYXRhbG9nLnBnX2F0dHJpYnV0ZSBBUyBzYSBPTiAo c2EuYXR0cmVsaWQsIHNhLmF0dG51bSkgPSAocC5wZXJyZWxpZCwgcC5wZXJzdGFydCkgIgorCQkJ CQkJCSAgIkpPSU4gcGdfY2F0YWxvZy5wZ19hdHRyaWJ1dGUgQVMgZWEgT04gKGVhLmF0dHJlbGlk LCBlYS5hdHRudW0pID0gKHAucGVycmVsaWQsIHAucGVyZW5kKSAiCisJCQkJCQkJICAiSk9JTiBw Z19jYXRhbG9nLnBnX2F0dHJpYnV0ZSBBUyByYSBPTiAocmEuYXR0cmVsaWQsIHJhLmF0dG51bSkg PSAocC5wZXJyZWxpZCwgcC5wZXJyYW5nZSkgIgorCQkJCQkJCSAgIkpPSU4gcGdfY2F0YWxvZy5w Z190eXBlIEFTIHIgT04gci5vaWQgPSByYS5hdHR0eXBpZCAiCisJCQkJCQkJICAiSk9JTiBwZ19j YXRhbG9nLnBnX2NvbnN0cmFpbnQgQVMgYyBPTiBjLm9pZCA9IHAucGVyY29uc3RyYWludCAiCisJ CQkJCQkJICAiV0hFUkUgcC5wZXJyZWxpZCA9ICcldSc6OnBnX2NhdGFsb2cub2lkICIKKwkJCQkJ CQkgICJPUkRFUiBCWSBwLnBlcm5hbWUiLAorCQkJCQkJCSAgdGJpbmZvLT5kb2JqLmNhdElkLm9p ZCk7CisKKwkJCXJlcyA9IEV4ZWN1dGVTcWxRdWVyeShmb3V0LCBxLT5kYXRhLCBQR1JFU19UVVBM RVNfT0spOworCisJCQkvKgorCQkJICogSWYgd2UgZGlkbid0IGdldCB0aGUgbnVtYmVyIG9mIHJv d3Mgd2UgdGhvdWdodCB3ZSB3ZXJlIGdvaW5nCisJCQkgKiB0bywgdGhlbiB0aG9zZSBKT0lOcyBk aWRuJ3Qgd29yay4KKwkJCSAqLworCQkJbnVtUGVyaW9kcyA9IFBRbnR1cGxlcyhyZXMpOworCQkJ aWYgKG51bVBlcmlvZHMgIT0gdGJpbmZvLT5ucGVyaW9kKQorCQkJeworCQkJCXBnX2xvZ19pbmZv KG5nZXR0ZXh0KCJleHBlY3RlZCAlZCBwZXJpb2Qgb24gdGFibGUgXCIlc1wiIGJ1dCBmb3VuZCAl ZCIsCisJCQkJCQkJCQkgImV4cGVjdGVkICVkIHBlcmlvZHMgb24gdGFibGUgXCIlc1wiIGJ1dCBm b3VuZCAlZCIsCisJCQkJCQkJCQkgdGJpbmZvLT5ucGVyaW9kKSwKKwkJCQkJCQl0YmluZm8tPm5w ZXJpb2QsIHRiaW5mby0+ZG9iai5uYW1lLCBudW1QZXJpb2RzKTsKKwkJCQlwZ19sb2dfaW5mbygi KFRoZSBzeXN0ZW0gY2F0YWxvZ3MgbWlnaHQgYmUgY29ycnVwdGVkLikiKTsKKwkJCQlleGl0X25p Y2VseSgxKTsKKwkJCX0KKworCQkJcGVyaW9kcyA9IChQZXJpb2RJbmZvICopIHBnX21hbGxvYyhu dW1QZXJpb2RzICogc2l6ZW9mKFBlcmlvZEluZm8pKTsKKwkJCXRiaW5mby0+cGVyaW9kcyA9IHBl cmlvZHM7CisKKwkJCWZvciAoaiA9IDA7IGogPCBudW1QZXJpb2RzOyBqKyspCisJCQl7CisJCQkJ cGVyaW9kc1tqXS5kb2JqLm9ialR5cGUgPSBET19QRVJJT0Q7CisJCQkJcGVyaW9kc1tqXS5kb2Jq LmNhdElkLnRhYmxlb2lkID0gYXRvb2lkKFBRZ2V0dmFsdWUocmVzLCBqLCAwKSk7CisJCQkJcGVy aW9kc1tqXS5kb2JqLmNhdElkLm9pZCA9IGF0b29pZChQUWdldHZhbHVlKHJlcywgaiwgMSkpOwor CQkJCUFzc2lnbkR1bXBJZCgmcGVyaW9kc1tqXS5kb2JqKTsKKwkJCQlwZXJpb2RzW2pdLmRvYmou bmFtZSA9IHBnX3N0cmR1cChQUWdldHZhbHVlKHJlcywgaiwgMikpOworCQkJCXBlcmlvZHNbal0u ZG9iai5uYW1lc3BhY2UgPSB0YmluZm8tPmRvYmoubmFtZXNwYWNlOworCQkJCXBlcmlvZHNbal0u cGVydGFibGUgPSB0YmluZm87CisJCQkJcGVyaW9kc1tqXS5wZXJzdGFydCA9IHBnX3N0cmR1cChQ UWdldHZhbHVlKHJlcywgaiwgMykpOworCQkJCXBlcmlvZHNbal0ucGVyZW5kID0gcGdfc3RyZHVw KFBRZ2V0dmFsdWUocmVzLCBqLCA0KSk7CisJCQkJcGVyaW9kc1tqXS5ybmd0eXBlID0gcGdfc3Ry ZHVwKFBRZ2V0dmFsdWUocmVzLCBqLCA1KSk7CisJCQkJcGVyaW9kc1tqXS5jb25uYW1lID0gcGdf c3RyZHVwKFBRZ2V0dmFsdWUocmVzLCBqLCA2KSk7CisJCQl9CisJCQlQUWNsZWFyKHJlcyk7CisJ CX0KKwl9CisKIAlkZXN0cm95UFFFeHBCdWZmZXIocSk7CiAJZGVzdHJveVBRRXhwQnVmZmVyKHRi bG9pZHMpOwogCWRlc3Ryb3lQUUV4cEJ1ZmZlcihjaGVja29pZHMpOwpAQCAtMTE3MzEsNiArMTE4 NDIsOCBAQCBkdW1wRHVtcGFibGVPYmplY3QoQXJjaGl2ZSAqZm91dCwgRHVtcGFibGVPYmplY3Qg KmRvYmopCiAJCWNhc2UgRE9fRktfQ09OU1RSQUlOVDoKIAkJCWR1bXBDb25zdHJhaW50KGZvdXQs IChjb25zdCBDb25zdHJhaW50SW5mbyAqKSBkb2JqKTsKIAkJCWJyZWFrOworCQljYXNlIERPX1BF UklPRDoKKwkJCWJyZWFrOwogCQljYXNlIERPX1BST0NMQU5HOgogCQkJZHVtcFByb2NMYW5nKGZv dXQsIChjb25zdCBQcm9jTGFuZ0luZm8gKikgZG9iaik7CiAJCQlicmVhazsKQEAgLTE3MzkyLDYg KzE3NTA1LDM2IEBAIGR1bXBUYWJsZVNjaGVtYShBcmNoaXZlICpmb3V0LCBjb25zdCBUYWJsZUlu Zm8gKnRiaW5mbykKIAkJCQl9CiAJCQl9CiAKKwkJCS8qCisJCQkgKiBBZGQgbm9uLWluaGVyaXRl ZCBQRVJJT0QgZGVmaW5pdGlvbnMsIGlmIGFueS4KKwkJCSAqLworCQkJZm9yIChqID0gMDsgaiA8 IHRiaW5mby0+bnBlcmlvZDsgaisrKQorCQkJeworCQkJCVBlcmlvZEluZm8gKnBlcmlvZCA9ICYo dGJpbmZvLT5wZXJpb2RzW2pdKTsKKworCQkJCWNoYXIJICAgKm5hbWUgPSBwZ19zdHJkdXAoZm10 SWQocGVyaW9kLT5kb2JqLm5hbWUpKTsKKwkJCQljaGFyCSAgICpzdGFydCA9IHBnX3N0cmR1cChm bXRJZChwZXJpb2QtPnBlcnN0YXJ0KSk7CisJCQkJY2hhcgkgICAqZW5kID0gcGdfc3RyZHVwKGZt dElkKHBlcmlvZC0+cGVyZW5kKSk7CisJCQkJY2hhcgkgICAqcm5ndHlwZSA9IHBnX3N0cmR1cChm bXRJZChwZXJpb2QtPnJuZ3R5cGUpKTsKKwkJCQljaGFyCSAgICpjb25uYW1lID0gcGdfc3RyZHVw KGZtdElkKHBlcmlvZC0+Y29ubmFtZSkpOworCisJCQkJaWYgKGFjdHVhbF9hdHRzID09IDApCisJ CQkJCWFwcGVuZFBRRXhwQnVmZmVyU3RyKHEsICIgKFxuICAgICIpOworCQkJCWVsc2UKKwkJCQkJ YXBwZW5kUFFFeHBCdWZmZXJTdHIocSwgIixcbiAgICAiKTsKKworCQkJCS8qCisJCQkJICogQWx3 YXlzIHNheSBjb2xleGlzdHMgc28gd2UgY2FuIGp1c3QgcHJpbnQgdGhlIEdFTkVSQVRFRAorCQkJ CSAqIGNvbHVtbgorCQkJCSAqLworCQkJCWFwcGVuZFBRRXhwQnVmZmVyKHEsICJQRVJJT0QgRk9S ICVzICglcywgJXMpICIKKwkJCQkJCQkJICAiV0lUSCAocmFuZ2V0eXBlID0gJXMsIGNoZWNrX2Nv bnN0cmFpbnRfbmFtZSA9ICVzLCBjb2xleGlzdHMgPSB0cnVlKSIsCisJCQkJCQkJCSAgbmFtZSwg c3RhcnQsIGVuZCwKKwkJCQkJCQkJICBybmd0eXBlLCBjb25uYW1lKTsKKworCQkJCWFjdHVhbF9h dHRzKys7CisJCQl9CisKIAkJCS8qCiAJCQkgKiBBZGQgbm9uLWluaGVyaXRlZCBDSEVDSyBjb25z dHJhaW50cywgaWYgYW55LgogCQkJICoKQEAgLTE3NDAwLDcgKzE3NTQzLDcgQEAgZHVtcFRhYmxl U2NoZW1hKEFyY2hpdmUgKmZvdXQsIGNvbnN0IFRhYmxlSW5mbyAqdGJpbmZvKQogCQkJICogUEFS VElUSU9OIHRoYXQgd2UnbGwgZW1pdCBsYXRlciBleHBlY3RzIHRoZSBjb25zdHJhaW50IHRvIGJl CiAJCQkgKiB0aGVyZS4gIChObyBuZWVkIHRvIGZpeCBjb25pc2xvY2FsOiBBVFRBQ0ggUEFSVElU SU9OIGRvZXMgdGhhdCkKIAkJCSAqLwotCQkJZm9yIChqID0gMDsgaiA8IHRiaW5mby0+bmNoZWNr OyBqKyspCisJCQlmb3IgKGogPSAwOyBqIDwgdGJpbmZvLT5uY2hlY2sgLSB0YmluZm8tPm5wZXJp b2Q7IGorKykKIAkJCXsKIAkJCQlDb25zdHJhaW50SW5mbyAqY29uc3RyID0gJih0YmluZm8tPmNo ZWNrZXhwcnNbal0pOwogCkBAIC0xNzcxMiw3ICsxNzg1NSw3IEBAIGR1bXBUYWJsZVNjaGVtYShB cmNoaXZlICpmb3V0LCBjb25zdCBUYWJsZUluZm8gKnRiaW5mbykKIAkJCSAqLwogCQkJcmVzZXRQ UUV4cEJ1ZmZlcihleHRyYSk7CiAJCQlmaXJzdGl0ZW0gPSB0cnVlOwotCQkJZm9yIChrID0gMDsg ayA8IHRiaW5mby0+bmNoZWNrOyBrKyspCisJCQlmb3IgKGsgPSAwOyBrIDwgdGJpbmZvLT5uY2hl Y2sgLSB0YmluZm8tPm5wZXJpb2Q7IGsrKykKIAkJCXsKIAkJCQlDb25zdHJhaW50SW5mbyAqY29u c3RyID0gJih0YmluZm8tPmNoZWNrZXhwcnNba10pOwogCkBAIC0xODA1Niw3ICsxODE5OSw3IEBA IGR1bXBUYWJsZVNjaGVtYShBcmNoaXZlICpmb3V0LCBjb25zdCBUYWJsZUluZm8gKnRiaW5mbykK IAl9CiAKIAkvKiBEdW1wIGNvbW1lbnRzIG9uIGlubGluZWQgdGFibGUgY29uc3RyYWludHMgKi8K LQlmb3IgKGogPSAwOyBqIDwgdGJpbmZvLT5uY2hlY2s7IGorKykKKwlmb3IgKGogPSAwOyBqIDwg dGJpbmZvLT5uY2hlY2sgLSB0YmluZm8tPm5wZXJpb2Q7IGorKykKIAl7CiAJCUNvbnN0cmFpbnRJ bmZvICpjb25zdHIgPSAmKHRiaW5mby0+Y2hlY2tleHByc1tqXSk7CiAKQEAgLTIwMTgwLDYgKzIw MzIzLDcgQEAgYWRkQm91bmRhcnlEZXBlbmRlbmNpZXMoRHVtcGFibGVPYmplY3QgKipkb2Jqcywg aW50IG51bU9ianMsCiAJCQljYXNlIERPX1RSSUdHRVI6CiAJCQljYXNlIERPX0VWRU5UX1RSSUdH RVI6CiAJCQljYXNlIERPX0RFRkFVTFRfQUNMOgorCQkJY2FzZSBET19QRVJJT0Q6CiAJCQljYXNl IERPX1BPTElDWToKIAkJCWNhc2UgRE9fUFVCTElDQVRJT046CiAJCQljYXNlIERPX1BVQkxJQ0FU SU9OX1JFTDoKZGlmZiAtLWdpdCBhL3NyYy9iaW4vcGdfZHVtcC9wZ19kdW1wLmggYi9zcmMvYmlu L3BnX2R1bXAvcGdfZHVtcC5oCmluZGV4IDcyYTAwZTFiYzIwLi5kMzc2Yzg3Y2QwNyAxMDA2NDQK LS0tIGEvc3JjL2Jpbi9wZ19kdW1wL3BnX2R1bXAuaAorKysgYi9zcmMvYmluL3BnX2R1bXAvcGdf ZHVtcC5oCkBAIC02MCw2ICs2MCw3IEBAIHR5cGVkZWYgZW51bQogCURPX1RSSUdHRVIsCiAJRE9f Q09OU1RSQUlOVCwKIAlET19GS19DT05TVFJBSU5ULAkJCS8qIHNlZSBub3RlIGZvciBDb25zdHJh aW50SW5mbyAqLworCURPX1BFUklPRCwKIAlET19QUk9DTEFORywKIAlET19DQVNULAogCURPX1RB QkxFX0RBVEEsCkBAIC0zMjIsMTIgKzMyMywxNCBAQCB0eXBlZGVmIHN0cnVjdCBfdGFibGVJbmZv CiAJYm9vbAkJcm93c2VjOwkJCS8qIGlzIHJvdyBzZWN1cml0eSBlbmFibGVkPyAqLwogCWJvb2wJ CWZvcmNlcm93c2VjOwkvKiBpcyByb3cgc2VjdXJpdHkgZm9yY2VkPyAqLwogCWJvb2wJCWhhc29p ZHM7CQkvKiBkb2VzIGl0IGhhdmUgT0lEcz8gKi8KKwlib29sCQloYXNwZXJpb2RzOwkJLyogZG9l cyBpdCBoYXZlIGFueSBwZXJpb2RzPyAqLwogCXVpbnQzMgkJZnJvemVueGlkOwkJLyogdGFibGUn cyByZWxmcm96ZW54aWQgKi8KIAl1aW50MzIJCW1pbm14aWQ7CQkvKiB0YWJsZSdzIHJlbG1pbm14 aWQgKi8KIAlPaWQJCQl0b2FzdF9vaWQ7CQkvKiB0b2FzdCB0YWJsZSdzIE9JRCwgb3IgMCBpZiBu b25lICovCiAJdWludDMyCQl0b2FzdF9mcm96ZW54aWQ7CS8qIHRvYXN0IHRhYmxlJ3MgcmVsZnJv emVueGlkLCBpZiBhbnkgKi8KIAl1aW50MzIJCXRvYXN0X21pbm14aWQ7CS8qIHRvYXN0IHRhYmxl J3MgcmVsbWlubXhpZCAqLwogCWludAkJCW5jaGVjazsJCQkvKiAjIG9mIENIRUNLIGV4cHJlc3Np b25zICovCisJaW50CQkJbnBlcmlvZDsJCS8qICMgb2YgUEVSSU9EIGRlZmluaXRpb25zICovCiAJ T2lkCQkJcmVsdHlwZTsJCS8qIE9JRCBvZiB0YWJsZSdzIGNvbXBvc2l0ZSB0eXBlLCBpZiBhbnkg Ki8KIAlPaWQJCQlyZWxvZnR5cGU7CQkvKiB1bmRlcmx5aW5nIHR5cGUgZm9yIHR5cGVkIHRhYmxl ICovCiAJT2lkCQkJZm9yZWlnbl9zZXJ2ZXI7IC8qIGZvcmVpZ24gc2VydmVyIG9pZCwgaWYgYXBw bGljYWJsZSAqLwpAQCAtMzU4LDYgKzM2MSw3IEBAIHR5cGVkZWYgc3RydWN0IF90YWJsZUluZm8K IAljaGFyCSAgICphdHRzdG9yYWdlOwkJLyogYXR0cmlidXRlIHN0b3JhZ2Ugc2NoZW1lICovCiAJ Y2hhcgkgICAqdHlwc3RvcmFnZTsJCS8qIHR5cGUgc3RvcmFnZSBzY2hlbWUgKi8KIAlib29sCSAg ICphdHRpc2Ryb3BwZWQ7CS8qIHRydWUgaWYgYXR0ciBpcyBkcm9wcGVkOyBkb24ndCBkdW1wIGl0 ICovCisJYm9vbAkgICAqYXR0aXNwZXJpb2Q7CS8qIHRydWUgaWYgYXR0ciBpcyBhIFBFUklPRDsg ZG9uJ3QgZHVtcCBpdCAqLwogCWNoYXIJICAgKmF0dGlkZW50aXR5OwogCWNoYXIJICAgKmF0dGdl bmVyYXRlZDsKIAlpbnQJCSAgICphdHRsZW47CQkJLyogYXR0cmlidXRlIGxlbmd0aCwgdXNlZCBi eSBiaW5hcnlfdXBncmFkZSAqLwpAQCAtMzc5LDYgKzM4Myw3IEBAIHR5cGVkZWYgc3RydWN0IF90 YWJsZUluZm8KIAlzdHJ1Y3QgX2F0dHJEZWZJbmZvICoqYXR0cmRlZnM7IC8qIERFRkFVTFQgZXhw cmVzc2lvbnMgKi8KIAlzdHJ1Y3QgX2NvbnN0cmFpbnRJbmZvICpjaGVja2V4cHJzOyAvKiBDSEVD SyBjb25zdHJhaW50cyAqLwogCXN0cnVjdCBfcmVsU3RhdHNJbmZvICpzdGF0czsJLyogb25seSBz ZXQgZm9yIG1hdHZpZXdzICovCisJc3RydWN0IF9wZXJpb2RJbmZvICpwZXJpb2RzOwkvKiBQRVJJ T0QgZGVmaW5pdGlvbnMgKi8KIAlib29sCQluZWVkc19vdmVycmlkZTsgLyogaGFzIEdFTkVSQVRF RCBBTFdBWVMgQVMgSURFTlRJVFkgKi8KIAljaGFyCSAgICphbW5hbWU7CQkJLyogcmVsYXRpb24g YWNjZXNzIG1ldGhvZCAqLwogCkBAIC01MjgsNiArNTMzLDE2IEBAIHR5cGVkZWYgc3RydWN0IF9j b25zdHJhaW50SW5mbwogCWJvb2wJCXNlcGFyYXRlOwkJLyogdHJ1ZSBpZiBtdXN0IGR1bXAgYXMg c2VwYXJhdGUgaXRlbSAqLwogfSBDb25zdHJhaW50SW5mbzsKIAordHlwZWRlZiBzdHJ1Y3QgX3Bl cmlvZEluZm8KK3sKKwlEdW1wYWJsZU9iamVjdCBkb2JqOworCVRhYmxlSW5mbyAgKnBlcnRhYmxl OworCWNoYXIJICAgKnBlcnN0YXJ0OwkJLyogdGhlIG5hbWUgb2YgdGhlIHN0YXJ0IGNvbHVtbiAq LworCWNoYXIJICAgKnBlcmVuZDsJCQkvKiB0aGUgbmFtZSBvZiB0aGUgZW5kIGNvbHVtbiAqLwor CWNoYXIJICAgKnJuZ3R5cGU7CQkvKiB0aGUgbmFtZSBvZiB0aGUgcmFuZ2UgdHlwZSAqLworCWNo YXIJICAgKmNvbm5hbWU7CQkvKiB0aGUgbmFtZSBvZiB0aGUgQ0hFQ0sgY29uc3RyYWludCAqLwor fSBQZXJpb2RJbmZvOworCiB0eXBlZGVmIHN0cnVjdCBfcHJvY0xhbmdJbmZvCiB7CiAJRHVtcGFi bGVPYmplY3QgZG9iajsKZGlmZiAtLWdpdCBhL3NyYy9iaW4vcGdfZHVtcC9wZ19kdW1wX3NvcnQu YyBiL3NyYy9iaW4vcGdfZHVtcC9wZ19kdW1wX3NvcnQuYwppbmRleCAxNjRjNzZlMDg2NC4uZWJj MjBhMjI2YzcgMTAwNjQ0Ci0tLSBhL3NyYy9iaW4vcGdfZHVtcC9wZ19kdW1wX3NvcnQuYworKysg Yi9zcmMvYmluL3BnX2R1bXAvcGdfZHVtcF9zb3J0LmMKQEAgLTg2LDYgKzg2LDcgQEAgZW51bSBk Yk9iamVjdFR5cGVQcmlvcml0aWVzCiAJUFJJT19DT05TVFJBSU5ULAogCVBSSU9fSU5ERVgsCiAJ UFJJT19JTkRFWF9BVFRBQ0gsCisJUFJJT19QRVJJT0QsCiAJUFJJT19TVEFUU0VYVCwKIAlQUklP X1JVTEUsCiAJUFJJT19UUklHR0VSLApAQCAtMTIxLDYgKzEyMiw3IEBAIHN0YXRpYyBjb25zdCBp bnQgZGJPYmplY3RUeXBlUHJpb3JpdHlbXSA9CiAJW0RPX0FUVFJERUZdID0gUFJJT19BVFRSREVG LAogCVtET19JTkRFWF0gPSBQUklPX0lOREVYLAogCVtET19JTkRFWF9BVFRBQ0hdID0gUFJJT19J TkRFWF9BVFRBQ0gsCisJW0RPX1BFUklPRF0gPSBQUklPX1BFUklPRCwKIAlbRE9fU1RBVFNFWFRd ID0gUFJJT19TVEFUU0VYVCwKIAlbRE9fUlVMRV0gPSBQUklPX1JVTEUsCiAJW0RPX1RSSUdHRVJd ID0gUFJJT19UUklHR0VSLApAQCAtNDU0LDYgKzQ1NiwyMyBAQCBET1R5cGVOYW1lQ29tcGFyZShj b25zdCB2b2lkICpwMSwgY29uc3Qgdm9pZCAqcDIpCiAJCWlmIChjbXB2YWwgIT0gMCkKIAkJCXJl dHVybiBjbXB2YWw7CiAJfQorCWVsc2UgaWYgKG9iajEtPm9ialR5cGUgPT0gRE9fUEVSSU9EKQor CXsKKwkJUGVyaW9kSW5mbyAqcG9iajEgPSAqKFBlcmlvZEluZm8gKmNvbnN0ICopIHAxOworCQlQ ZXJpb2RJbmZvICpwb2JqMiA9ICooUGVyaW9kSW5mbyAqY29uc3QgKikgcDI7CisKKwkJLyogU29y dCBieSB0YWJsZSBuYW1lc3BhY2UgLiAuIC4gKi8KKwkJY21wdmFsID0gc3RyY21wKHBvYmoxLT5w ZXJ0YWJsZS0+ZG9iai5uYW1lc3BhY2UtPmRvYmoubmFtZSwKKwkJCQkJCXBvYmoyLT5wZXJ0YWJs ZS0+ZG9iai5uYW1lc3BhY2UtPmRvYmoubmFtZSk7CisJCWlmIChjbXB2YWwgIT0gMCkKKwkJCXJl dHVybiBjbXB2YWw7CisKKwkJLyogLiAuIC4gYW5kIHRhYmxlIG5hbWUgKi8KKwkJY21wdmFsID0g c3RyY21wKHBvYmoxLT5wZXJ0YWJsZS0+ZG9iai5uYW1lLAorCQkJCQkJcG9iajItPnBlcnRhYmxl LT5kb2JqLm5hbWUpOworCQlpZiAoY21wdmFsICE9IDApCisJCQlyZXR1cm4gY21wdmFsOworCX0K IAogCS8qCiAJICogU2hvdWxkbid0IGdldCBoZXJlIGV4Y2VwdCBhZnRlciBjYXRhbG9nIGNvcnJ1 cHRpb24sIGJ1dCBpZiB3ZSBkbywgc29ydApAQCAtMTYyNiw2ICsxNjQ1LDExIEBAIGRlc2NyaWJl RHVtcGFibGVPYmplY3QoRHVtcGFibGVPYmplY3QgKm9iaiwgY2hhciAqYnVmLCBpbnQgYnVmc2l6 ZSkKIAkJCQkJICJGSyBDT05TVFJBSU5UICVzICAoSUQgJWQgT0lEICV1KSIsCiAJCQkJCSBvYmot Pm5hbWUsIG9iai0+ZHVtcElkLCBvYmotPmNhdElkLm9pZCk7CiAJCQlyZXR1cm47CisJCWNhc2Ug RE9fUEVSSU9EOgorCQkJc25wcmludGYoYnVmLCBidWZzaXplLAorCQkJCQkgIlBFUklPRCAlcyAg KElEICVkIE9JRCAldSkiLAorCQkJCQkgb2JqLT5uYW1lLCBvYmotPmR1bXBJZCwgb2JqLT5jYXRJ ZC5vaWQpOworCQkJcmV0dXJuOwogCQljYXNlIERPX1BST0NMQU5HOgogCQkJc25wcmludGYoYnVm LCBidWZzaXplLAogCQkJCQkgIlBST0NFRFVSQUwgTEFOR1VBR0UgJXMgIChJRCAlZCBPSUQgJXUp IiwKZGlmZiAtLWdpdCBhL3NyYy9iaW4vcHNxbC9kZXNjcmliZS5jIGIvc3JjL2Jpbi9wc3FsL2Rl c2NyaWJlLmMKaW5kZXggMzZmMjQ1MDI4NDIuLmYzNWIwYTllMzY3IDEwMDY0NAotLS0gYS9zcmMv YmluL3BzcWwvZGVzY3JpYmUuYworKysgYi9zcmMvYmluL3BzcWwvZGVzY3JpYmUuYwpAQCAtMjAy NCw2ICsyMDI0LDggQEAgZGVzY3JpYmVPbmVUYWJsZURldGFpbHMoY29uc3QgY2hhciAqc2NoZW1h bmFtZSwKIAogCWFwcGVuZFBRRXhwQnVmZmVyU3RyKCZidWYsICJcbkZST00gcGdfY2F0YWxvZy5w Z19hdHRyaWJ1dGUgYSIpOwogCWFwcGVuZFBRRXhwQnVmZmVyKCZidWYsICJcbldIRVJFIGEuYXR0 cmVsaWQgPSAnJXMnIEFORCBhLmF0dG51bSA+IDAgQU5EIE5PVCBhLmF0dGlzZHJvcHBlZCIsIG9p ZCk7CisJaWYgKHBzZXQuc3ZlcnNpb24gPj0gMTgwMDAwKQorCQlhcHBlbmRQUUV4cEJ1ZmZlcigm YnVmLCAiXG5BTkQgTk9UIEVYSVNUUyAoU0VMRUNUIDEgRlJPTSBwZ19jYXRhbG9nLnBnX3Blcmlv ZCBwIFdIRVJFIHAucGVycmVsaWQgPSBhLmF0dHJlbGlkIEFORCBwLnBlcnJhbmdlID0gYS5hdHRu dW0pIik7CiAJYXBwZW5kUFFFeHBCdWZmZXJTdHIoJmJ1ZiwgIlxuT1JERVIgQlkgYS5hdHRudW07 Iik7CiAKIAlyZXMgPSBQU1FMZXhlYyhidWYuZGF0YSk7CkBAIC0yNDUyLDYgKzI0NTQsNDAgQEAg ZGVzY3JpYmVPbmVUYWJsZURldGFpbHMoY29uc3QgY2hhciAqc2NoZW1hbmFtZSwKIAkJUEdyZXN1 bHQgICAqcmVzdWx0ID0gTlVMTDsKIAkJaW50CQkJdHVwbGVzID0gMDsKIAorCQkvKiBwcmludCBw ZXJpb2RzICovCisJCWlmIChwc2V0LnN2ZXJzaW9uID49IDE4MDAwMCkKKwkJeworCQkJcHJpbnRm UFFFeHBCdWZmZXIoJmJ1ZiwKKwkJCQkJCQkgICJTRUxFQ1QgcXVvdGVfaWRlbnQocC5wZXJuYW1l KSwgcXVvdGVfaWRlbnQocy5hdHRuYW1lKSBBUyBzdGFydGF0dCwgcXVvdGVfaWRlbnQoZS5hdHRu YW1lKSBBUyBlbmRhdHRcbiIKKwkJCQkJCQkgICJGUk9NIHBnX3BlcmlvZCBBUyBwXG4iCisJCQkJ CQkJICAiSk9JTiBwZ19hdHRyaWJ1dGUgQVMgcyBPTiAocy5hdHRyZWxpZCwgcy5hdHRudW0pID0g KHAucGVycmVsaWQsIHAucGVyc3RhcnQpXG4iCisJCQkJCQkJICAiSk9JTiBwZ19hdHRyaWJ1dGUg QVMgZSBPTiAoZS5hdHRyZWxpZCwgZS5hdHRudW0pID0gKHAucGVycmVsaWQsIHAucGVyZW5kKVxu IgorCQkJCQkJCSAgIldIRVJFIHAucGVycmVsaWQgPSAnJXMnXG4iCisJCQkJCQkJICAiT1JERVIg QlkgMTsiLAorCQkJCQkJCSAgb2lkKTsKKwkJCXJlc3VsdCA9IFBTUUxleGVjKGJ1Zi5kYXRhKTsK KwkJCWlmICghcmVzdWx0KQorCQkJCWdvdG8gZXJyb3JfcmV0dXJuOworCQkJZWxzZQorCQkJCXR1 cGxlcyA9IFBRbnR1cGxlcyhyZXN1bHQpOworCisJCQlpZiAodHVwbGVzID4gMCkKKwkJCXsKKwkJ CQlwcmludFRhYmxlQWRkRm9vdGVyKCZjb250LCBfKCJQZXJpb2RzOiIpKTsKKwkJCQlmb3IgKGkg PSAwOyBpIDwgdHVwbGVzOyBpKyspCisJCQkJeworCQkJCQkvKiB1bnRyYW5zbGF0ZWQgY29uc3Ry YWludCBuYW1lIGFuZCBkZWYgKi8KKwkJCQkJcHJpbnRmUFFFeHBCdWZmZXIoJmJ1ZiwgIiAgICAl cyAoJXMsICVzKSIsCisJCQkJCQkJCQkgIFBRZ2V0dmFsdWUocmVzdWx0LCBpLCAwKSwKKwkJCQkJ CQkJCSAgUFFnZXR2YWx1ZShyZXN1bHQsIGksIDEpLAorCQkJCQkJCQkJICBQUWdldHZhbHVlKHJl c3VsdCwgaSwgMikpOworCisJCQkJCXByaW50VGFibGVBZGRGb290ZXIoJmNvbnQsIGJ1Zi5kYXRh KTsKKwkJCQl9CisJCQl9CisJCQlQUWNsZWFyKHJlc3VsdCk7CisJCX0KKwogCQkvKiBwcmludCBp bmRleGVzICovCiAJCWlmICh0YWJsZWluZm8uaGFzaW5kZXgpCiAJCXsKZGlmZiAtLWdpdCBhL3Ny Yy9pbmNsdWRlL2NhdGFsb2cvTWFrZWZpbGUgYi9zcmMvaW5jbHVkZS9jYXRhbG9nL01ha2VmaWxl CmluZGV4IDJiYmM3ODA1ZmUzLi5iOWFlZTJjYTQ5ZSAxMDA2NDQKLS0tIGEvc3JjL2luY2x1ZGUv Y2F0YWxvZy9NYWtlZmlsZQorKysgYi9zcmMvaW5jbHVkZS9jYXRhbG9nL01ha2VmaWxlCkBAIC02 NSw2ICs2NSw3IEBAIENBVEFMT0dfSEVBREVSUyA6PSBcCiAJcGdfZm9yZWlnbl9zZXJ2ZXIuaCBc CiAJcGdfdXNlcl9tYXBwaW5nLmggXAogCXBnX2ZvcmVpZ25fdGFibGUuaCBcCisJcGdfcGVyaW9k LmggXAogCXBnX3BvbGljeS5oIFwKIAlwZ19yZXBsaWNhdGlvbl9vcmlnaW4uaCBcCiAJcGdfZGVm YXVsdF9hY2wuaCBcCmRpZmYgLS1naXQgYS9zcmMvaW5jbHVkZS9jYXRhbG9nL2hlYXAuaCBiL3Ny Yy9pbmNsdWRlL2NhdGFsb2cvaGVhcC5oCmluZGV4IGRiZDMzOWU5ZGY0Li4zZWM1YTU4M2Q3OCAx MDA2NDQKLS0tIGEvc3JjL2luY2x1ZGUvY2F0YWxvZy9oZWFwLmgKKysrIGIvc3JjL2luY2x1ZGUv Y2F0YWxvZy9oZWFwLmgKQEAgLTEyNSw2ICsxMjUsMTAgQEAgZXh0ZXJuIHZvaWQgU3RvcmVBdHRy TWlzc2luZ1ZhbChSZWxhdGlvbiByZWwsIEF0dHJOdW1iZXIgYXR0bnVtLAogCQkJCQkJCQlEYXR1 bSBtaXNzaW5ndmFsKTsKIGV4dGVybiB2b2lkIFNldEF0dHJNaXNzaW5nKE9pZCByZWxpZCwgY2hh ciAqYXR0bmFtZSwgY2hhciAqdmFsdWUpOwogCitleHRlcm4gT2lkCVN0b3JlUGVyaW9kKFJlbGF0 aW9uIHJlbCwgY29uc3QgY2hhciAqcGVyaW9kLAorCQkJCQkJQXR0ck51bWJlciBzdGFydG51bSwg QXR0ck51bWJlciBlbmRudW0sCisJCQkJCQlBdHRyTnVtYmVyIHJhbmdlbnVtLCBPaWQgY29ub2lk KTsKKwogZXh0ZXJuIE5vZGUgKmNvb2tEZWZhdWx0KFBhcnNlU3RhdGUgKnBzdGF0ZSwKIAkJCQkJ CSBOb2RlICpyYXdfZGVmYXVsdCwKIAkJCQkJCSBPaWQgYXR0dHlwaWQsCmRpZmYgLS1naXQgYS9z cmMvaW5jbHVkZS9jYXRhbG9nL21lc29uLmJ1aWxkIGIvc3JjL2luY2x1ZGUvY2F0YWxvZy9tZXNv bi5idWlsZAppbmRleCBlYzFjZjQ2N2Y2Zi4uODdjYjRjZTMzMDAgMTAwNjQ0Ci0tLSBhL3NyYy9p bmNsdWRlL2NhdGFsb2cvbWVzb24uYnVpbGQKKysrIGIvc3JjL2luY2x1ZGUvY2F0YWxvZy9tZXNv bi5idWlsZApAQCAtNjEsNiArNjEsNyBAQCBjYXRhbG9nX2hlYWRlcnMgPSBbCiAgICdwZ19jb2xs YXRpb24uaCcsCiAgICdwZ19wYXJhbWV0ZXJfYWNsLmgnLAogICAncGdfcGFydGl0aW9uZWRfdGFi bGUuaCcsCisgICdwZ19wZXJpb2QuaCcsCiAgICdwZ19yYW5nZS5oJywKICAgJ3BnX3RyYW5zZm9y bS5oJywKICAgJ3BnX3NlcXVlbmNlLmgnLApkaWZmIC0tZ2l0IGEvc3JjL2luY2x1ZGUvY2F0YWxv Zy9wZ19jb25zdHJhaW50LmggYi9zcmMvaW5jbHVkZS9jYXRhbG9nL3BnX2NvbnN0cmFpbnQuaApp bmRleCA5YjU4ZjYxOGY5ZS4uMzJjMDk4MjQ2ZjAgMTAwNjQ0Ci0tLSBhL3NyYy9pbmNsdWRlL2Nh dGFsb2cvcGdfY29uc3RyYWludC5oCisrKyBiL3NyYy9pbmNsdWRlL2NhdGFsb2cvcGdfY29uc3Ry YWludC5oCkBAIC0yNjYsNyArMjY2LDggQEAgZXh0ZXJuIEF0dHJOdW1iZXIgZXh0cmFjdE5vdE51 bGxDb2x1bW4oSGVhcFR1cGxlIGNvbnN0clR1cCk7CiBleHRlcm4gYm9vbCBBZGp1c3ROb3ROdWxs SW5oZXJpdGFuY2UoT2lkIHJlbGlkLCBBdHRyTnVtYmVyIGF0dG51bSwKIAkJCQkJCQkJCSBib29s IGlzX2xvY2FsLCBib29sIGlzX25vX2luaGVyaXQsIGJvb2wgaXNfbm90dmFsaWQpOwogZXh0ZXJu IExpc3QgKlJlbGF0aW9uR2V0Tm90TnVsbENvbnN0cmFpbnRzKE9pZCByZWxpZCwgYm9vbCBjb29r ZWQsCi0JCQkJCQkJCQkJICAgYm9vbCBpbmNsdWRlX25vaW5oKTsKKwkJCQkJCQkJCQkgICBib29s IGluY2x1ZGVfbm9pbmgsCisJCQkJCQkJCQkJICAgQml0bWFwc2V0ICpleGNsdWRlcyk7CiAKIGV4 dGVybiB2b2lkIFJlbW92ZUNvbnN0cmFpbnRCeUlkKE9pZCBjb25JZCk7CiBleHRlcm4gdm9pZCBS ZW5hbWVDb25zdHJhaW50QnlJZChPaWQgY29uSWQsIGNvbnN0IGNoYXIgKm5ld25hbWUpOwpkaWZm IC0tZ2l0IGEvc3JjL2luY2x1ZGUvY2F0YWxvZy9wZ19pbmRleC5oIGIvc3JjL2luY2x1ZGUvY2F0 YWxvZy9wZ19pbmRleC5oCmluZGV4IDczMWQzOTM4MTY5Li44OTBmZjU1MTE3NiAxMDA2NDQKLS0t IGEvc3JjL2luY2x1ZGUvY2F0YWxvZy9wZ19pbmRleC5oCisrKyBiL3NyYy9pbmNsdWRlL2NhdGFs b2cvcGdfaW5kZXguaApAQCAtNDgsNyArNDgsNiBAQCBDQVRBTE9HKHBnX2luZGV4LDI2MTAsSW5k ZXhSZWxhdGlvbklkKSBCS0lfU0NIRU1BX01BQ1JPCiAJLyogdmFyaWFibGUtbGVuZ3RoIGZpZWxk cyBzdGFydCBoZXJlLCBidXQgd2UgYWxsb3cgZGlyZWN0IGFjY2VzcyB0byBpbmRrZXkgKi8KIAlp bnQydmVjdG9yCWluZGtleSBCS0lfRk9SQ0VfTk9UX05VTEw7CS8qIGNvbHVtbiBudW1iZXJzIG9m IGluZGV4ZWQgY29scywKIAkJCQkJCQkJCQkJICogb3IgMCAqLwotCiAjaWZkZWYgQ0FUQUxPR19W QVJMRU4KIAlvaWR2ZWN0b3IJaW5kY29sbGF0aW9uIEJLSV9MT09LVVBfT1BUKHBnX2NvbGxhdGlv bikgQktJX0ZPUkNFX05PVF9OVUxMOwkvKiBjb2xsYXRpb24gaWRlbnRpZmllcnMgKi8KIAlvaWR2 ZWN0b3IJaW5kY2xhc3MgQktJX0xPT0tVUChwZ19vcGNsYXNzKSBCS0lfRk9SQ0VfTk9UX05VTEw7 IC8qIG9wY2xhc3MgaWRlbnRpZmllcnMgKi8KZGlmZiAtLWdpdCBhL3NyYy9pbmNsdWRlL2NhdGFs b2cvcGdfcGVyaW9kLmggYi9zcmMvaW5jbHVkZS9jYXRhbG9nL3BnX3BlcmlvZC5oCm5ldyBmaWxl IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwLi42NWE3NGRmYTE4YgotLS0gL2Rldi9udWxs CisrKyBiL3NyYy9pbmNsdWRlL2NhdGFsb2cvcGdfcGVyaW9kLmgKQEAgLTAsMCArMSw1OCBAQAor LyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tCisgKgorICogcGdfcGVyaW9kLmgKKyAqCSAgZGVmaW5pdGlvbiBv ZiB0aGUgInBlcmlvZCIgc3lzdGVtIGNhdGFsb2cgKHBnX3BlcmlvZCkKKyAqCisgKgorICogUG9y dGlvbnMgQ29weXJpZ2h0IChjKSAxOTk2LTIwMjEsIFBvc3RncmVTUUwgR2xvYmFsIERldmVsb3Bt ZW50IEdyb3VwCisgKgorICogc3JjL2luY2x1ZGUvY2F0YWxvZy9wZ19wZXJpb2QuaAorICoKKyAq IE5PVEVTCisgKgkgIFRoZSBDYXRhbG9nLnBtIG1vZHVsZSByZWFkcyB0aGlzIGZpbGUgYW5kIGRl cml2ZXMgc2NoZW1hCisgKgkgIGluZm9ybWF0aW9uLgorICoKKyAqLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQor ICovCisjaWZuZGVmIFBHX1BFUklPRF9ICisjZGVmaW5lIFBHX1BFUklPRF9ICisKKyNpbmNsdWRl ICJjYXRhbG9nL2dlbmJraS5oIgorI2luY2x1ZGUgImNhdGFsb2cvcGdfcGVyaW9kX2QuaCIKKyNp bmNsdWRlICJub2Rlcy9iaXRtYXBzZXQuaCIKKworLyogLS0tLS0tLS0tLS0tLS0tLQorICoJCXBn X3BlcmlvZCBkZWZpbml0aW9uLiAgY3BwIHR1cm5zIHRoaXMgaW50bworICoJCXR5cGVkZWYgc3Ry dWN0IEZvcm1EYXRhX3BnX3BlcmlvZAorICogLS0tLS0tLS0tLS0tLS0tLQorICovCitDQVRBTE9H KHBnX3BlcmlvZCw4MDAwLFBlcmlvZFJlbGF0aW9uSWQpCit7CisJT2lkCQkJb2lkOwkJCS8qIE9J RCBvZiB0aGUgcGVyaW9kICovCisJTmFtZURhdGEJcGVybmFtZTsJCS8qIG5hbWUgb2YgcGVyaW9k ICovCisJT2lkCQkJcGVycmVsaWQ7CQkvKiBPSUQgb2YgcmVsYXRpb24gY29udGFpbmluZyB0aGlz IHBlcmlvZCAqLworCWludDE2CQlwZXJzdGFydDsJCS8qIGNvbHVtbiBmb3Igc3RhcnQgdmFsdWUg Ki8KKwlpbnQxNgkJcGVyZW5kOwkJCS8qIGNvbHVtbiBmb3IgZW5kIHZhbHVlICovCisJaW50MTYJ CXBlcnJhbmdlOwkJLyogY29sdW1uIGZvciByYW5nZSB2YWx1ZSAqLworCU9pZAkJCXBlcmNvbnN0 cmFpbnQ7CS8qIE9JRCBvZiAoc3RhcnQgPCBlbmQpIGNvbnN0cmFpbnQgKi8KK30gRm9ybURhdGFf cGdfcGVyaW9kOworCisvKiAtLS0tLS0tLS0tLS0tLS0tCisgKgkJRm9ybV9wZ19wZXJpb2QgY29y cmVzcG9uZHMgdG8gYSBwb2ludGVyIHRvIGEgdHVwbGUgd2l0aAorICoJCXRoZSBmb3JtYXQgb2Yg cGdfcGVyaW9kIHJlbGF0aW9uLgorICogLS0tLS0tLS0tLS0tLS0tLQorICovCit0eXBlZGVmIEZv cm1EYXRhX3BnX3BlcmlvZCAqRm9ybV9wZ19wZXJpb2Q7CisKK0RFQ0xBUkVfVU5JUVVFX0lOREVY X1BLRVkocGdfcGVyaW9kX29pZF9pbmRleCwgODAwMSwgUGVyaW9kT2JqZWN0SW5kZXhJZCwgcGdf cGVyaW9kLCBidHJlZShvaWQgb2lkX29wcykpOworREVDTEFSRV9VTklRVUVfSU5ERVgocGdfcGVy aW9kX3BlcnJlbGlkX3Blcm5hbWVfaW5kZXgsIDgwMDIsIFBlcmlvZFJlbGlkTmFtZUluZGV4SWQs IHBnX3BlcmlvZCwgYnRyZWUocGVycmVsaWQgb2lkX29wcywgcGVybmFtZSBuYW1lX29wcykpOwor CitNQUtFX1NZU0NBQ0hFKFBFUklPRE9JRCwgcGdfcGVyaW9kX29pZF9pbmRleCwgMzIpOworTUFL RV9TWVNDQUNIRShQRVJJT0ROQU1FLCBwZ19wZXJpb2RfcGVycmVsaWRfcGVybmFtZV9pbmRleCwg MzIpOworCitleHRlcm4gdm9pZCBSZW1vdmVQZXJpb2RCeUlkKE9pZCBwZXJpb2RJZCk7CisKK2V4 dGVybiBPaWQJZ2V0X3JlbGF0aW9uX3BlcmlvZF9vaWQoT2lkIHJlbGlkLCBjb25zdCBjaGFyICpw ZXJuYW1lLCBib29sIG1pc3Npbmdfb2spOworZXh0ZXJuIEJpdG1hcHNldCAqZ2V0X3BlcmlvZF9h dHRub3MoT2lkIHJlbGlkKTsKKworI2VuZGlmCQkJCQkJCS8qIFBHX1BFUklPRF9IICovCmRpZmYg LS1naXQgYS9zcmMvaW5jbHVkZS9jYXRhbG9nL3BnX3JhbmdlLmggYi9zcmMvaW5jbHVkZS9jYXRh bG9nL3BnX3JhbmdlLmgKaW5kZXggM2JiYTYxNjI3ODIuLjg5ZTYwZDZjYmYxIDEwMDY0NAotLS0g YS9zcmMvaW5jbHVkZS9jYXRhbG9nL3BnX3JhbmdlLmgKKysrIGIvc3JjL2luY2x1ZGUvY2F0YWxv Zy9wZ19yYW5nZS5oCkBAIC01OSw4ICs1OSwxMCBAQCB0eXBlZGVmIEZvcm1EYXRhX3BnX3Jhbmdl ICpGb3JtX3BnX3JhbmdlOwogCiBERUNMQVJFX1VOSVFVRV9JTkRFWF9QS0VZKHBnX3JhbmdlX3Ju Z3R5cGlkX2luZGV4LCAzNTQyLCBSYW5nZVR5cGlkSW5kZXhJZCwgcGdfcmFuZ2UsIGJ0cmVlKHJu Z3R5cGlkIG9pZF9vcHMpKTsKIERFQ0xBUkVfVU5JUVVFX0lOREVYKHBnX3JhbmdlX3JuZ211bHRp dHlwaWRfaW5kZXgsIDIyMjgsIFJhbmdlTXVsdGlyYW5nZVR5cGlkSW5kZXhJZCwgcGdfcmFuZ2Us IGJ0cmVlKHJuZ211bHRpdHlwaWQgb2lkX29wcykpOworREVDTEFSRV9VTklRVUVfSU5ERVgocGdf cmFuZ2Vfcm5nc3VidHlwZV9ybmd0eXBpZF9pbmRleCwgODAwMywgUmFuZ2VTdWJUeXBpZFR5cGlk SW5kZXhJZCwgcGdfcmFuZ2UsIGJ0cmVlKHJuZ3N1YnR5cGUgb2lkX29wcywgcm5ndHlwaWQgb2lk X29wcykpOwogCiBNQUtFX1NZU0NBQ0hFKFJBTkdFVFlQRSwgcGdfcmFuZ2Vfcm5ndHlwaWRfaW5k ZXgsIDQpOworTUFLRV9TWVNDQUNIRShSQU5HRVNVQlRZUEUsIHBnX3JhbmdlX3JuZ3N1YnR5cGVf cm5ndHlwaWRfaW5kZXgsIDQpOwogTUFLRV9TWVNDQUNIRShSQU5HRU1VTFRJUkFOR0UsIHBnX3Jh bmdlX3JuZ211bHRpdHlwaWRfaW5kZXgsIDQpOwogCiAvKgpkaWZmIC0tZ2l0IGEvc3JjL2luY2x1 ZGUvY29tbWFuZHMvdGFibGVjbWRzLmggYi9zcmMvaW5jbHVkZS9jb21tYW5kcy90YWJsZWNtZHMu aAppbmRleCBlOWIwZmFiMDc2Ny4uYmY4ZDZlMzMxODMgMTAwNjQ0Ci0tLSBhL3NyYy9pbmNsdWRl L2NvbW1hbmRzL3RhYmxlY21kcy5oCisrKyBiL3NyYy9pbmNsdWRlL2NvbW1hbmRzL3RhYmxlY21k cy5oCkBAIC00MSw3ICs0MSw4IEBAIGV4dGVybiBMT0NLTU9ERSBBbHRlclRhYmxlR2V0TG9ja0xl dmVsKExpc3QgKmNtZHMpOwogCiBleHRlcm4gdm9pZCBBVEV4ZWNDaGFuZ2VPd25lcihPaWQgcmVs YXRpb25PaWQsIE9pZCBuZXdPd25lcklkLCBib29sIHJlY3Vyc2luZywgTE9DS01PREUgbG9ja21v ZGUpOwogCi1leHRlcm4gdm9pZCBBbHRlclRhYmxlSW50ZXJuYWwoT2lkIHJlbGlkLCBMaXN0ICpj bWRzLCBib29sIHJlY3Vyc2UpOworZXh0ZXJuIHZvaWQgQWx0ZXJUYWJsZUludGVybmFsKE9pZCBy ZWxpZCwgTGlzdCAqY21kcywgYm9vbCByZWN1cnNlLAorCQkJCQkJCSAgIHN0cnVjdCBBbHRlclRh YmxlVXRpbGl0eUNvbnRleHQgKmNvbnRleHQpOwogCiBleHRlcm4gT2lkCUFsdGVyVGFibGVNb3Zl QWxsKEFsdGVyVGFibGVNb3ZlQWxsU3RtdCAqc3RtdCk7CiAKQEAgLTEwNyw1ICsxMDgsNiBAQCBl eHRlcm4gdm9pZCBSYW5nZVZhckNhbGxiYWNrT3duc1JlbGF0aW9uKGNvbnN0IFJhbmdlVmFyICpy ZWxhdGlvbiwKIAkJCQkJCQkJCQkgT2lkIHJlbElkLCBPaWQgb2xkUmVsSWQsIHZvaWQgKmFyZyk7 CiBleHRlcm4gYm9vbCBQYXJ0Q29uc3RyYWludEltcGxpZWRCeVJlbENvbnN0cmFpbnQoUmVsYXRp b24gc2NhbnJlbCwKIAkJCQkJCQkJCQkJCSBMaXN0ICpwYXJ0Q29uc3RyYWludCk7CitleHRlcm4g T2lkCWNob29zZV9yYW5nZXR5cGVfZm9yX3BlcmlvZChQZXJpb2REZWYgKnBlcmlvZCk7CiAKICNl bmRpZgkJCQkJCQkvKiBUQUJMRUNNRFNfSCAqLwpkaWZmIC0tZ2l0IGEvc3JjL2luY2x1ZGUvbm9k ZXMvZXhlY25vZGVzLmggYi9zcmMvaW5jbHVkZS9ub2Rlcy9leGVjbm9kZXMuaAppbmRleCBhY2Iz ZDU0NThhMi4uZDNhNTk4ZmJjZTMgMTAwNjQ0Ci0tLSBhL3NyYy9pbmNsdWRlL25vZGVzL2V4ZWNu b2Rlcy5oCisrKyBiL3NyYy9pbmNsdWRlL25vZGVzL2V4ZWNub2Rlcy5oCkBAIC00NjUsNiArNDY1 LDEwIEBAIHR5cGVkZWYgc3RydWN0IEZvclBvcnRpb25PZlN0YXRlCiAJY2hhcgkgICAqZnBfcmFu Z2VOYW1lOwkvKiB0aGUgY29sdW1uIG5hbWVkIGluIEZPUiBQT1JUSU9OIE9GICovCiAJT2lkCQkJ ZnBfcmFuZ2VUeXBlOwkvKiB0aGUgdHlwZSBvZiB0aGUgRk9SIFBPUlRJT04gT0YgZXhwcmVzc2lv biAqLwogCWludAkJCWZwX3JhbmdlQXR0bm87CS8qIHRoZSBhdHRubyBvZiB0aGUgcmFuZ2UgY29s dW1uICovCisJaW50CQkJZnBfcGVyaW9kU3RhcnRBdHRubzsJLyogdGhlIGF0dG5vIG9mIHRoZSBQ RVJJT0Qgc3RhcnQKKwkJCQkJCQkJCQkgKiBjb2x1bW4gKG9yIDAgZm9yIGEgcmFuZ2UpICovCisJ aW50CQkJZnBfcGVyaW9kRW5kQXR0bm87CS8qIHRoZSBhdHRubyBvZiB0aGUgUEVSSU9EIGVuZCBj b2x1bW4gKG9yCisJCQkJCQkJCQkgKiAwIGZvciBhIHJhbmdlKSAqLwogCURhdHVtCQlmcF90YXJn ZXRSYW5nZTsgLyogdGhlIHJhbmdlL211bHRpcmFuZ2UgZnJvbSBGT1IgUE9SVElPTiBPRiAqLwog CVR5cGVDYWNoZUVudHJ5ICpmcF9sZWZ0b3ZlcnN0eXBjYWNoZTsJLyogdHlwZSBjYWNoZSBlbnRy eSBvZiB0aGUgcmFuZ2UgKi8KIAlUdXBsZVRhYmxlU2xvdCAqZnBfRXhpc3Rpbmc7CS8qIHNsb3Qg dG8gc3RvcmUgb2xkIHR1cGxlICovCmRpZmYgLS1naXQgYS9zcmMvaW5jbHVkZS9ub2Rlcy9wYXJz ZW5vZGVzLmggYi9zcmMvaW5jbHVkZS9ub2Rlcy9wYXJzZW5vZGVzLmgKaW5kZXggOGFhYzRjNDE3 ZTkuLmZkZDA3YjhjYjRiIDEwMDY0NAotLS0gYS9zcmMvaW5jbHVkZS9ub2Rlcy9wYXJzZW5vZGVz LmgKKysrIGIvc3JjL2luY2x1ZGUvbm9kZXMvcGFyc2Vub2Rlcy5oCkBAIC0yMzcwLDYgKzIzNzAs NyBAQCB0eXBlZGVmIGVudW0gT2JqZWN0VHlwZQogCU9CSkVDVF9PUEVSQVRPUiwKIAlPQkpFQ1Rf T1BGQU1JTFksCiAJT0JKRUNUX1BBUkFNRVRFUl9BQ0wsCisJT0JKRUNUX1BFUklPRCwKIAlPQkpF Q1RfUE9MSUNZLAogCU9CSkVDVF9QUk9DRURVUkUsCiAJT0JKRUNUX1BVQkxJQ0FUSU9OLApAQCAt MjQ1Nyw2ICsyNDU4LDggQEAgdHlwZWRlZiBlbnVtIEFsdGVyVGFibGVUeXBlCiAJQVRfVmFsaWRh dGVDb25zdHJhaW50LAkJLyogdmFsaWRhdGUgY29uc3RyYWludCAqLwogCUFUX0FkZEluZGV4Q29u c3RyYWludCwJCS8qIGFkZCBjb25zdHJhaW50IHVzaW5nIGV4aXN0aW5nIGluZGV4ICovCiAJQVRf RHJvcENvbnN0cmFpbnQsCQkJLyogZHJvcCBjb25zdHJhaW50ICovCisJQVRfQWRkUGVyaW9kLAkJ CQkvKiBBREQgUEVSSU9EICovCisJQVRfRHJvcFBlcmlvZCwJCQkJLyogRFJPUCBQRVJJT0QgKi8K IAlBVF9SZUFkZENvbW1lbnQsCQkJLyogaW50ZXJuYWwgdG8gY29tbWFuZHMvdGFibGVjbWRzLmMg Ki8KIAlBVF9BbHRlckNvbHVtblR5cGUsCQkJLyogYWx0ZXIgY29sdW1uIHR5cGUgKi8KIAlBVF9B bHRlckNvbHVtbkdlbmVyaWNPcHRpb25zLAkvKiBhbHRlciBjb2x1bW4gT1BUSU9OUyAoLi4uKSAq LwpAQCAtMjc1NiwxMSArMjc1OSwxMiBAQCB0eXBlZGVmIHN0cnVjdCBWYXJpYWJsZVNob3dTdG10 CiAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAgKgkJQ3JlYXRlIFRhYmxlIFN0YXRlbWVudAog ICoKLSAqIE5PVEU6IGluIHRoZSByYXcgZ3JhbS55IG91dHB1dCwgQ29sdW1uRGVmIGFuZCBDb25z dHJhaW50IG5vZGVzIGFyZQotICogaW50ZXJtaXhlZCBpbiB0YWJsZUVsdHMsIGFuZCBjb25zdHJh aW50cyBhbmQgbm5jb25zdHJhaW50cyBhcmUgTklMLiAgQWZ0ZXIKKyAqIE5PVEU6IGluIHRoZSBy YXcgZ3JhbS55IG91dHB1dCwgQ29sdW1uRGVmLCBQZXJpb2REZWYsIGFuZCBDb25zdHJhaW50IG5v ZGVzIGFyZQorICogaW50ZXJtaXhlZCBpbiB0YWJsZUVsdHM7IGNvbnN0cmFpbnRzLCBubmNvbnN0 cmFpbnRzLCBhbmQgcGVyaW9kcyBhcmUgTklMLiAgQWZ0ZXIKICAqIHBhcnNlIGFuYWx5c2lzLCB0 YWJsZUVsdHMgY29udGFpbnMganVzdCBDb2x1bW5EZWZzLCBubmNvbnN0cmFpbnRzIGNvbnRhaW5z Ci0gKiBDb25zdHJhaW50IG5vZGVzIG9mIENPTlNUUl9OT1ROVUxMIHR5cGUgZnJvbSB2YXJpb3Vz IHNvdXJjZXMsIGFuZAotICogY29uc3RyYWludHMgY29udGFpbnMganVzdCBDT05TVFJfQ0hFQ0sg Q29uc3RyYWludCBub2Rlcy4KKyAqIENvbnN0cmFpbnQgbm9kZXMgb2YgQ09OU1RSX05PVE5VTEwg dHlwZSBmcm9tIHZhcmlvdXMgc291cmNlcywgY29uc3RyYWludHMKKyAqIGNvbnRhaW5zIGp1c3Qg Q09OU1RSX0NIRUNLIENvbnN0cmFpbnQgbm9kZXMsIGFuZCBwZXJpb2RzIGNvbnRhaW5zIGp1c3QK KyAqIFBlcmlvZERlZnMuCiAgKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAgKi8KIApAQCAtMjc2 OSw2ICsyNzczLDcgQEAgdHlwZWRlZiBzdHJ1Y3QgQ3JlYXRlU3RtdAogCU5vZGVUYWcJCXR5cGU7 CiAJUmFuZ2VWYXIgICAqcmVsYXRpb247CQkvKiByZWxhdGlvbiB0byBjcmVhdGUgKi8KIAlMaXN0 CSAgICp0YWJsZUVsdHM7CQkvKiBjb2x1bW4gZGVmaW5pdGlvbnMgKGxpc3Qgb2YgQ29sdW1uRGVm KSAqLworCUxpc3QJICAgKnBlcmlvZHM7CQkvKiBwZXJpb2RzIChsaXN0IG9mIFBlcmlvZERlZiBu b2RlcykgKi8KIAlMaXN0CSAgICppbmhSZWxhdGlvbnM7CS8qIHJlbGF0aW9ucyB0byBpbmhlcml0 IGZyb20gKGxpc3Qgb2YKIAkJCQkJCQkJICogUmFuZ2VWYXIpICovCiAJUGFydGl0aW9uQm91bmRT cGVjICpwYXJ0Ym91bmQ7CS8qIEZPUiBWQUxVRVMgY2xhdXNlICovCkBAIC0yNzgzLDYgKzI3ODgs MzEgQEAgdHlwZWRlZiBzdHJ1Y3QgQ3JlYXRlU3RtdAogCWJvb2wJCWlmX25vdF9leGlzdHM7CS8q IGp1c3QgZG8gbm90aGluZyBpZiBpdCBhbHJlYWR5IGV4aXN0cz8gKi8KIH0gQ3JlYXRlU3RtdDsK IAorCisvKiAtLS0tLS0tLS0tCisgKiBEZWZpbml0aW9ucyBmb3IgcGVyaW9kcyBpbiBDcmVhdGVT dG10CisgKiAtLS0tLS0tLS0tCisgKi8KKwordHlwZWRlZiBzdHJ1Y3QgUGVyaW9kRGVmCit7CisJ Tm9kZVRhZwkJdHlwZTsKKwlPaWQJCQlvaWQ7CQkJLyogcGVyaW9kIG9pZCwgb25jZSBpdCdzIHRy YW5zZm9ybWVkICovCisJY2hhcgkgICAqcGVyaW9kbmFtZTsJCS8qIHBlcmlvZCBuYW1lICovCisJ Y2hhcgkgICAqc3RhcnRjb2xuYW1lOwkvKiBuYW1lIG9mIHN0YXJ0IGNvbHVtbiAqLworCWNoYXIJ ICAgKmVuZGNvbG5hbWU7CQkvKiBuYW1lIG9mIGVuZCBjb2x1bW4gKi8KKwlBdHRyTnVtYmVyCXN0 YXJ0YXR0bnVtOwkvKiBhdHRudW0gb2YgdGhlIHN0YXJ0IGNvbHVtbiAqLworCUF0dHJOdW1iZXIJ ZW5kYXR0bnVtOwkJLyogYXR0bnVtIG9mIHRoZSBlbmQgY29sdW1uICovCisJQXR0ck51bWJlcgly bmdhdHRudW07CQkvKiBhdHRudW0gb2YgdGhlIEdFTkVSQVRFRCByYW5nZSBjb2x1bW4gKi8KKwlM aXN0CSAgICpvcHRpb25zOwkJLyogb3B0aW9ucyBmcm9tIFdJVEggY2xhdXNlICovCisJY2hhcgkg ICAqY29uc3RyYWludG5hbWU7IC8qIG5hbWUgb2YgdGhlIENIRUNLIGNvbnN0cmFpbnQgKi8KKwlj aGFyCSAgICpyYW5nZXR5cGVuYW1lOwkvKiBuYW1lIG9mIHRoZSByYW5nZSB0eXBlICovCisJT2lk CQkJY29sdHlwaWQ7CQkvKiB0aGUgc3RhcnQvZW5kIGNvbCB0eXBlICovCisJT2lkCQkJcm5ndHlw aWQ7CQkvKiB0aGUgcmFuZ2UgdHlwZSB0byB1c2UgKi8KKwlib29sCQljb2xleGlzdHM7CQkvKiB1 c2UgYW4gZXhpc3RpbmcgR0VORVJBVEVEIGNvbHVtbiAqLworCWludAkJCWxvY2F0aW9uOwkJLyog dG9rZW4gbG9jYXRpb24sIG9yIC0xIGlmIHVua25vd24gKi8KK30gUGVyaW9kRGVmOworCiAvKiAt LS0tLS0tLS0tCiAgKiBEZWZpbml0aW9ucyBmb3IgY29uc3RyYWludHMgaW4gQ3JlYXRlU3RtdAog ICoKQEAgLTM1MDksNiArMzUzOSw3IEBAIHR5cGVkZWYgc3RydWN0IEluZGV4U3RtdAogCUxpc3QJ ICAgKmluZGV4UGFyYW1zOwkvKiBjb2x1bW5zIHRvIGluZGV4OiBhIGxpc3Qgb2YgSW5kZXhFbGVt ICovCiAJTGlzdAkgICAqaW5kZXhJbmNsdWRpbmdQYXJhbXM7CS8qIGFkZGl0aW9uYWwgY29sdW1u cyB0byBpbmRleDogYSBsaXN0CiAJCQkJCQkJCQkJICogb2YgSW5kZXhFbGVtICovCisJUGVyaW9k RGVmICAqcGVyaW9kOwkJCS8qIFRoZSBwZXJpb2QgaW5jbHVkZWQgaW4gdGhlIGluZGV4ICovCiAJ TGlzdAkgICAqb3B0aW9uczsJCS8qIFdJVEggY2xhdXNlIG9wdGlvbnM6IGEgbGlzdCBvZiBEZWZF bGVtICovCiAJTm9kZQkgICAqd2hlcmVDbGF1c2U7CS8qIHF1YWxpZmljYXRpb24gKHBhcnRpYWwt aW5kZXggcHJlZGljYXRlKSAqLwogCUxpc3QJICAgKmV4Y2x1ZGVPcE5hbWVzOyAvKiBleGNsdXNp b24gb3BlcmF0b3IgbmFtZXMsIG9yIE5JTCBpZiBub25lICovCmRpZmYgLS1naXQgYS9zcmMvaW5j bHVkZS9ub2Rlcy9wcmltbm9kZXMuaCBiL3NyYy9pbmNsdWRlL25vZGVzL3ByaW1ub2Rlcy5oCmlu ZGV4IGZiYmNkNzdkZDg0Li45M2QwNmVmZTBjZSAxMDA2NDQKLS0tIGEvc3JjL2luY2x1ZGUvbm9k ZXMvcHJpbW5vZGVzLmgKKysrIGIvc3JjL2luY2x1ZGUvbm9kZXMvcHJpbW5vZGVzLmgKQEAgLTI0 MDMsNiArMjQwMyw4IEBAIHR5cGVkZWYgc3RydWN0IEZvclBvcnRpb25PZkV4cHIKIHsKIAlOb2Rl VGFnCQl0eXBlOwogCVZhcgkJICAgKnJhbmdlVmFyOwkJLyogUmFuZ2UgY29sdW1uICovCisJVmFy CQkgICAqc3RhcnRWYXI7CQkvKiBTdGFydCBjb2x1bW4gaWYgUEVSSU9EICovCisJVmFyCQkgICAq ZW5kVmFyOwkJCS8qIEVuZCBjb2x1bW4gaWYgUEVSSU9EICovCiAJY2hhcgkgICAqcmFuZ2VfbmFt ZTsJCS8qIFJhbmdlIG5hbWUgKi8KIAlOb2RlCSAgICp0YXJnZXRSYW5nZTsJLyogRk9SIFBPUlRJ T04gT0YgYm91bmRzIGFzIGEgcmFuZ2UgKi8KIAlPaWQJCQlyYW5nZVR5cGU7CQkvKiB0eXBlIG9m IHRhcmdldFJhbmdlICovCmRpZmYgLS1naXQgYS9zcmMvaW5jbHVkZS9wYXJzZXIva3dsaXN0Lmgg Yi9zcmMvaW5jbHVkZS9wYXJzZXIva3dsaXN0LmgKaW5kZXggYjlmMDMzNjU3NTMuLmUzZWExMDEx ZTI0IDEwMDY0NAotLS0gYS9zcmMvaW5jbHVkZS9wYXJzZXIva3dsaXN0LmgKKysrIGIvc3JjL2lu Y2x1ZGUvcGFyc2VyL2t3bGlzdC5oCkBAIC0zNDIsNyArMzQyLDcgQEAgUEdfS0VZV09SRCgicGFy dGl0aW9uIiwgUEFSVElUSU9OLCBVTlJFU0VSVkVEX0tFWVdPUkQsIEJBUkVfTEFCRUwpCiBQR19L RVlXT1JEKCJwYXNzaW5nIiwgUEFTU0lORywgVU5SRVNFUlZFRF9LRVlXT1JELCBCQVJFX0xBQkVM KQogUEdfS0VZV09SRCgicGFzc3dvcmQiLCBQQVNTV09SRCwgVU5SRVNFUlZFRF9LRVlXT1JELCBC QVJFX0xBQkVMKQogUEdfS0VZV09SRCgicGF0aCIsIFBBVEgsIFVOUkVTRVJWRURfS0VZV09SRCwg QkFSRV9MQUJFTCkKLVBHX0tFWVdPUkQoInBlcmlvZCIsIFBFUklPRCwgVU5SRVNFUlZFRF9LRVlX T1JELCBCQVJFX0xBQkVMKQorUEdfS0VZV09SRCgicGVyaW9kIiwgUEVSSU9ELCBSRVNFUlZFRF9L RVlXT1JELCBCQVJFX0xBQkVMKQogUEdfS0VZV09SRCgicGxhY2luZyIsIFBMQUNJTkcsIFJFU0VS VkVEX0tFWVdPUkQsIEJBUkVfTEFCRUwpCiBQR19LRVlXT1JEKCJwbGFuIiwgUExBTiwgVU5SRVNF UlZFRF9LRVlXT1JELCBCQVJFX0xBQkVMKQogUEdfS0VZV09SRCgicGxhbnMiLCBQTEFOUywgVU5S RVNFUlZFRF9LRVlXT1JELCBCQVJFX0xBQkVMKQpkaWZmIC0tZ2l0IGEvc3JjL2luY2x1ZGUvcGFy c2VyL3BhcnNlX3V0aWxjbWQuaCBiL3NyYy9pbmNsdWRlL3BhcnNlci9wYXJzZV91dGlsY21kLmgK aW5kZXggNDk2NWZhYzQ0OTUuLmQwZDIzYWYzZDQxIDEwMDY0NAotLS0gYS9zcmMvaW5jbHVkZS9w YXJzZXIvcGFyc2VfdXRpbGNtZC5oCisrKyBiL3NyYy9pbmNsdWRlL3BhcnNlci9wYXJzZV91dGls Y21kLmgKQEAgLTQwLDUgKzQwLDYgQEAgZXh0ZXJuIEluZGV4U3RtdCAqZ2VuZXJhdGVDbG9uZWRJ bmRleFN0bXQoUmFuZ2VWYXIgKmhlYXBSZWwsCiAJCQkJCQkJCQkJICBSZWxhdGlvbiBzb3VyY2Vf aWR4LAogCQkJCQkJCQkJCSAgY29uc3QgQXR0ck1hcCAqYXR0bWFwLAogCQkJCQkJCQkJCSAgT2lk ICpjb25zdHJhaW50T2lkKTsKK2V4dGVybiB2b2lkIHRyYW5zZm9ybVBlcmlvZE9wdGlvbnMoUGVy aW9kRGVmICpwZXJpb2QpOwogCiAjZW5kaWYJCQkJCQkJLyogUEFSU0VfVVRJTENNRF9IICovCmRp ZmYgLS1naXQgYS9zcmMvaW5jbHVkZS91dGlscy9sc3lzY2FjaGUuaCBiL3NyYy9pbmNsdWRlL3V0 aWxzL2xzeXNjYWNoZS5oCmluZGV4IDViNTBlZjIzMGFiLi5lZGRjYTk5N2VmYiAxMDA2NDQKLS0t IGEvc3JjL2luY2x1ZGUvdXRpbHMvbHN5c2NhY2hlLmgKKysrIGIvc3JjL2luY2x1ZGUvdXRpbHMv bHN5c2NhY2hlLmgKQEAgLTk4LDYgKzk4LDggQEAgZXh0ZXJuIE9pZAlnZXRfYXR0dHlwZShPaWQg cmVsaWQsIEF0dHJOdW1iZXIgYXR0bnVtKTsKIGV4dGVybiB2b2lkIGdldF9hdHR0eXBldHlwbW9k Y29sbChPaWQgcmVsaWQsIEF0dHJOdW1iZXIgYXR0bnVtLAogCQkJCQkJCQkgIE9pZCAqdHlwaWQs IGludDMyICp0eXBtb2QsIE9pZCAqY29sbGlkKTsKIGV4dGVybiBEYXR1bSBnZXRfYXR0b3B0aW9u cyhPaWQgcmVsaWQsIGludDE2IGF0dG51bSk7CitleHRlcm4gY2hhciAqZ2V0X3BlcmlvZG5hbWUo T2lkIHBlcmlvZGlkLCBib29sIG1pc3Npbmdfb2spOworZXh0ZXJuIE9pZAlnZXRfcGVyaW9kX29p ZChPaWQgcmVsaWQsIGNvbnN0IGNoYXIgKnBlcmlvZG5hbWUsIGJvb2wgbWlzc2luZ19vayk7CiBl eHRlcm4gT2lkCWdldF9jYXN0X29pZChPaWQgc291cmNldHlwZWlkLCBPaWQgdGFyZ2V0dHlwZWlk LCBib29sIG1pc3Npbmdfb2spOwogZXh0ZXJuIGNoYXIgKmdldF9jb2xsYXRpb25fbmFtZShPaWQg Y29sbG9pZCk7CiBleHRlcm4gYm9vbCBnZXRfY29sbGF0aW9uX2lzZGV0ZXJtaW5pc3RpYyhPaWQg Y29sbG9pZCk7CkBAIC0yMDMsNiArMjA1LDcgQEAgZXh0ZXJuIE9pZAlnZXRfcmFuZ2Vfc3VidHlw ZShPaWQgcmFuZ2VPaWQpOwogZXh0ZXJuIE9pZAlnZXRfcmFuZ2VfY29sbGF0aW9uKE9pZCByYW5n ZU9pZCk7CiBleHRlcm4gT2lkCWdldF9yYW5nZV9tdWx0aXJhbmdlKE9pZCByYW5nZU9pZCk7CiBl eHRlcm4gT2lkCWdldF9tdWx0aXJhbmdlX3JhbmdlKE9pZCBtdWx0aXJhbmdlT2lkKTsKK2V4dGVy biBPaWQJZ2V0X3N1YnR5cGVfcmFuZ2UoT2lkIHN1YnR5cGVPaWQpOwogZXh0ZXJuIE9pZAlnZXRf aW5kZXhfY29sdW1uX29wY2xhc3MoT2lkIGluZGV4X29pZCwgaW50IGF0dG5vKTsKIGV4dGVybiBi b29sIGdldF9pbmRleF9pc3JlcGxpZGVudChPaWQgaW5kZXhfb2lkKTsKIGV4dGVybiBib29sIGdl dF9pbmRleF9pc3ZhbGlkKE9pZCBpbmRleF9vaWQpOwpkaWZmIC0tZ2l0IGEvc3JjL2luY2x1ZGUv dXRpbHMvcGVyaW9kLmggYi9zcmMvaW5jbHVkZS91dGlscy9wZXJpb2QuaApuZXcgZmlsZSBtb2Rl IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMC4uZDAyYzE3MDM2ZmQKLS0tIC9kZXYvbnVsbAorKysg Yi9zcmMvaW5jbHVkZS91dGlscy9wZXJpb2QuaApAQCAtMCwwICsxLDIxIEBACisvKi0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0KKyAqCisgKiBwZXJpb2QuaAorICoJICBzdXBwb3J0IGZvciBQb3N0Z3JlcyBwZXJp b2RzLgorICoKKyAqCisgKiBQb3J0aW9ucyBDb3B5cmlnaHQgKGMpIDE5OTYtMjAyMiwgUG9zdGdy ZVNRTCBHbG9iYWwgRGV2ZWxvcG1lbnQgR3JvdXAKKyAqIFBvcnRpb25zIENvcHlyaWdodCAoYykg MTk5NCwgUmVnZW50cyBvZiB0aGUgVW5pdmVyc2l0eSBvZiBDYWxpZm9ybmlhCisgKgorICogc3Jj L2luY2x1ZGUvdXRpbHMvcGVyaW9kLmgKKyAqCisgKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAqLworI2lm bmRlZiBQRVJJT0RfSAorI2RlZmluZSBQRVJJT0RfSAorCisjaW5jbHVkZSAiZXhlY3V0b3IvdHVw dGFibGUuaCIKKworZXh0ZXJuIERhdHVtIHBlcmlvZF90b19yYW5nZShUdXBsZVRhYmxlU2xvdCAq c2xvdCwgaW50IHN0YXJ0YXR0bm8sIGludCBlbmRhdHRubywgT2lkIHJhbmdldHlwZSk7CisKKyNl bmRpZgkJCQkJCQkvKiBQRVJJT0RfSCAqLwpkaWZmIC0tZ2l0IGEvc3JjL3Rlc3QvbW9kdWxlcy90 ZXN0X2RkbF9kZXBhcnNlL3Rlc3RfZGRsX2RlcGFyc2UuYyBiL3NyYy90ZXN0L21vZHVsZXMvdGVz dF9kZGxfZGVwYXJzZS90ZXN0X2RkbF9kZXBhcnNlLmMKaW5kZXggMTkzNjY5ZjJiYzEuLjllZDQy OWZkYWRkIDEwMDY0NAotLS0gYS9zcmMvdGVzdC9tb2R1bGVzL3Rlc3RfZGRsX2RlcGFyc2UvdGVz dF9kZGxfZGVwYXJzZS5jCisrKyBiL3NyYy90ZXN0L21vZHVsZXMvdGVzdF9kZGxfZGVwYXJzZS90 ZXN0X2RkbF9kZXBhcnNlLmMKQEAgLTE3OSw2ICsxNzksMTIgQEAgZ2V0X2FsdGVydGFibGVfc3Vi Y21kaW5mbyhQR19GVU5DVElPTl9BUkdTKQogCQkJY2FzZSBBVF9Ecm9wQ29uc3RyYWludDoKIAkJ CQlzdHJ0eXBlID0gIkRST1AgQ09OU1RSQUlOVCI7CiAJCQkJYnJlYWs7CisJCQljYXNlIEFUX0Fk ZFBlcmlvZDoKKwkJCQlzdHJ0eXBlID0gIkFERCBQRVJJT0QiOworCQkJCWJyZWFrOworCQkJY2Fz ZSBBVF9Ecm9wUGVyaW9kOgorCQkJCXN0cnR5cGUgPSAiRFJPUCBQRVJJT0QiOworCQkJCWJyZWFr OwogCQkJY2FzZSBBVF9SZUFkZENvbW1lbnQ6CiAJCQkJc3RydHlwZSA9ICIocmUpIEFERCBDT01N RU5UIjsKIAkJCQlicmVhazsKZGlmZiAtLWdpdCBhL3NyYy90ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQv Zm9yX3BvcnRpb25fb2Yub3V0IGIvc3JjL3Rlc3QvcmVncmVzcy9leHBlY3RlZC9mb3JfcG9ydGlv bl9vZi5vdXQKaW5kZXggNTJmYjA0NGQyZTUuLmMwZDBkZTdlODEwIDEwMDY0NAotLS0gYS9zcmMv dGVzdC9yZWdyZXNzL2V4cGVjdGVkL2Zvcl9wb3J0aW9uX29mLm91dAorKysgYi9zcmMvdGVzdC9y ZWdyZXNzL2V4cGVjdGVkL2Zvcl9wb3J0aW9uX29mLm91dApAQCAtMTEwMCw2ICsxMTAwLDY0IEBA IFNFTEVDVCAqIEZST00gZm9yX3BvcnRpb25fb2ZfdGVzdDIgT1JERVIgQlkgaWQsIHZhbGlkX2F0 OwogIFszLDQpIHwge1syMDE4LTAxLTAxLCl9ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IHRocmVlCiAoNiByb3dzKQogCitEUk9QIFRB QkxFIGZvcl9wb3J0aW9uX29mX3Rlc3QyOworLS0gVGVzdCB3aXRoIFBFUklPRHMKK0NSRUFURSBU QUJMRSBmb3JfcG9ydGlvbl9vZl90ZXN0MiAoCisgIGlkIGludDRyYW5nZSBOT1QgTlVMTCwKKyAg dmFsaWRfZnJvbSBkYXRlLAorICB2YWxpZF90aWwgZGF0ZSwKKyAgbmFtZSB0ZXh0IE5PVCBOVUxM LAorICBQRVJJT0QgRk9SIHZhbGlkX2F0ICh2YWxpZF9mcm9tLCB2YWxpZF90aWwpLAorICBDT05T VFJBSU5UIGZvcl9wb3J0aW9uX29mX3Rlc3QyX3BrIFBSSU1BUlkgS0VZIChpZCwgdmFsaWRfYXQg V0lUSE9VVCBPVkVSTEFQUykKKyk7CitJTlNFUlQgSU5UTyBmb3JfcG9ydGlvbl9vZl90ZXN0Mgor VkFMVUVTCisoJ1sxLDIpJywgJzIwMTgtMDEtMDInLCAnMjAxOC0wMi0wMycsICdvbmUnKSwKKygn WzEsMiknLCAnMjAxOC0wMi0wNCcsICcyMDE4LTAzLTAzJywgJ29uZScpLAorKCdbMSwyKScsICcy MDE4LTAzLTAzJywgJzIwMTgtMDQtMDQnLCAnb25lJyksCisoJ1syLDMpJywgJzIwMTgtMDEtMDEn LCAnMjAxOC0wNS0wMScsICd0d28nKSwKKygnWzMsNCknLCAnMjAxOC0wMS0wMScsIG51bGwsICd0 aHJlZScpOworOworVVBEQVRFIGZvcl9wb3J0aW9uX29mX3Rlc3QyCitGT1IgUE9SVElPTiBPRiB2 YWxpZF9hdCBGUk9NICcyMDE4LTAxLTEwJyBUTyAnMjAxOC0wMi0xMCcKK1NFVCBuYW1lID0gJ29u ZV4xJworV0hFUkUgaWQgPSAnWzEsMiknOworREVMRVRFIEZST00gZm9yX3BvcnRpb25fb2ZfdGVz dDIKK0ZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMTgtMDEtMTUnIFRPICcyMDE4LTAy LTE1JworV0hFUkUgaWQgPSAnWzIsMyknOworLS0gU2V0dGluZyB0aGUgc3RhcnQgY29sdW1uIGZh aWxzOgorVVBEQVRFIGZvcl9wb3J0aW9uX29mX3Rlc3QyCitGT1IgUE9SVElPTiBPRiB2YWxpZF9h dCBGUk9NICcyMDE4LTAxLTEwJyBUTyAnMjAxOC0wMi0xMCcKK1NFVCB2YWxpZF9mcm9tID0gJzIw MTgtMDItMDEnCitXSEVSRSBpZCA9ICdbMSwyKSc7CitFUlJPUjogIG11bHRpcGxlIGFzc2lnbm1l bnRzIHRvIHNhbWUgY29sdW1uICJ2YWxpZF9mcm9tIgorLS0gU2V0dGluZyB0aGUgZW5kIGNvbHVt biBmYWlsczoKK1VQREFURSBmb3JfcG9ydGlvbl9vZl90ZXN0MgorRk9SIFBPUlRJT04gT0YgdmFs aWRfYXQgRlJPTSAnMjAxOC0wMS0xMCcgVE8gJzIwMTgtMDItMTAnCitTRVQgdmFsaWRfdGlsID0g JzIwMTgtMDItMDEnCitXSEVSRSBpZCA9ICdbMSwyKSc7CitFUlJPUjogIG11bHRpcGxlIGFzc2ln bm1lbnRzIHRvIHNhbWUgY29sdW1uICJ2YWxpZF90aWwiCistLSBTZXR0aW5nIHRoZSBnZW5lcmF0 ZWQgY29sdW1uIGZhaWxzOgorVVBEQVRFIGZvcl9wb3J0aW9uX29mX3Rlc3QyCitGT1IgUE9SVElP TiBPRiB2YWxpZF9hdCBGUk9NICcyMDE4LTAxLTEwJyBUTyAnMjAxOC0wMi0xMCcKK1NFVCB2YWxp ZF9hdCA9ICdbMjAxOC0wMi0wMSwyMDE4LTAyLTAzKScKK1dIRVJFIGlkID0gJ1sxLDIpJzsKK0VS Uk9SOiAgY2FuJ3QgZGlyZWN0bHkgYXNzaWduIHRvICJ2YWxpZF9hdCIgaW4gYSBGT1IgUE9SVElP TiBPRiB1cGRhdGUKK0xJTkUgMzogU0VUIHZhbGlkX2F0ID0gJ1syMDE4LTAyLTAxLDIwMTgtMDIt MDMpJworICAgICAgICAgICAgXgorU0VMRUNUICogRlJPTSBmb3JfcG9ydGlvbl9vZl90ZXN0MiBP UkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisgIGlkICAgfCB2YWxpZF9mcm9tIHwgdmFsaWRfdGlsICB8 IG5hbWUgIAorLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0KKyBbMSwy KSB8IDIwMTgtMDEtMDIgfCAyMDE4LTAxLTEwIHwgb25lCisgWzEsMikgfCAyMDE4LTAxLTEwIHwg MjAxOC0wMi0wMyB8IG9uZV4xCisgWzEsMikgfCAyMDE4LTAyLTA0IHwgMjAxOC0wMi0xMCB8IG9u ZV4xCisgWzEsMikgfCAyMDE4LTAyLTEwIHwgMjAxOC0wMy0wMyB8IG9uZQorIFsxLDIpIHwgMjAx OC0wMy0wMyB8IDIwMTgtMDQtMDQgfCBvbmUKKyBbMiwzKSB8IDIwMTgtMDEtMDEgfCAyMDE4LTAx LTE1IHwgdHdvCisgWzIsMykgfCAyMDE4LTAyLTE1IHwgMjAxOC0wNS0wMSB8IHR3bworIFszLDQp IHwgMjAxOC0wMS0wMSB8ICAgICAgICAgICAgfCB0aHJlZQorKDggcm93cykKKwogRFJPUCBUQUJM RSBmb3JfcG9ydGlvbl9vZl90ZXN0MjsKIC0tIFRlc3Qgd2l0aCBhIGN1c3RvbSByYW5nZSB0eXBl CiBDUkVBVEUgVFlQRSBteWRhdGVyYW5nZSBBUyByYW5nZShzdWJ0eXBlPWRhdGUpOwpkaWZmIC0t Z2l0IGEvc3JjL3Rlc3QvcmVncmVzcy9leHBlY3RlZC9wZXJpb2RzLm91dCBiL3NyYy90ZXN0L3Jl Z3Jlc3MvZXhwZWN0ZWQvcGVyaW9kcy5vdXQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw MDAwMDAwMDAuLmQ0MjkwOTc2MDBhCi0tLSAvZGV2L251bGwKKysrIGIvc3JjL3Rlc3QvcmVncmVz cy9leHBlY3RlZC9wZXJpb2RzLm91dApAQCAtMCwwICsxLDMxOCBAQAorLyogU3lzdGVtIHBlcmlv ZHMgYXJlIG5vdCBpbXBsZW1lbnRlZCAqLworY3JlYXRlIHRhYmxlIHB0IChpZCBpbnRlZ2VyLCBk cyBkYXRlLCBkZSBkYXRlLCBwZXJpb2QgZm9yIHN5c3RlbV90aW1lIChkcywgZGUpKTsKK0VSUk9S OiAgUEVSSU9EIEZPUiBTWVNURU1fVElNRSBpcyBub3Qgc3VwcG9ydGVkCitMSU5FIDI6IGNyZWF0 ZSB0YWJsZSBwdCAoaWQgaW50ZWdlciwgZHMgZGF0ZSwgZGUgZGF0ZSwgcGVyaW9kIGZvciBzeS4u LgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IF4KKy8qIFBlcmlvZHMgbXVzdCBzcGVjaWZ5IGFjdHVhbCBjb2x1bW5zICovCitjcmVhdGUgdGFi bGUgcHQgKGlkIGludGVnZXIsIGRzIGRhdGUsIGRlIGRhdGUsIHBlcmlvZCBmb3IgcCAoYm9ndXMs IGRlKSk7CitFUlJPUjogIGNvbHVtbiAiYm9ndXMiIG9mIHJlbGF0aW9uICJwdCIgZG9lcyBub3Qg ZXhpc3QKK2NyZWF0ZSB0YWJsZSBwdCAoaWQgaW50ZWdlciwgZHMgZGF0ZSwgZGUgZGF0ZSwgcGVy aW9kIGZvciBwIChkcywgYm9ndXMpKTsKK0VSUk9SOiAgY29sdW1uICJib2d1cyIgb2YgcmVsYXRp b24gInB0IiBkb2VzIG5vdCBleGlzdAorLyogRGF0YSB0eXBlcyBtdXN0IG1hdGNoIGV4YWN0bHkg Ki8KK2NyZWF0ZSB0YWJsZSBwdCAoaWQgaW50ZWdlciwgZHMgZGF0ZSwgZGUgdGltZXN0YW1wLCBw ZXJpb2QgZm9yIHAgKGRzLCBkZSkpOworRVJST1I6ICBzdGFydCBhbmQgZW5kIGNvbHVtbnMgb2Yg cGVyaW9kIG11c3QgYmUgb2Ygc2FtZSB0eXBlCitjcmVhdGUgdGFibGUgcHQgKGlkIGludGVnZXIs IGRzIHRleHQgY29sbGF0ZSAiQyIsIGRlIHRleHQgY29sbGF0ZSAiUE9TSVgiLCBwZXJpb2QgZm9y IHAgKGRzLCBkZSkpOworRVJST1I6ICBzdGFydCBhbmQgZW5kIGNvbHVtbnMgb2YgcGVyaW9kIG11 c3QgaGF2ZSBzYW1lIGNvbGxhdGlvbgorLyogUGVyaW9kcyBtdXN0IGhhdmUgYSBkZWZhdWx0IEJU cmVlIG9wZXJhdG9yIGNsYXNzICovCitjcmVhdGUgdGFibGUgcHQgKGlkIGludGVnZXIsIGRzIHht bCwgZGUgeG1sLCBwZXJpb2QgZm9yIHAgKGRzLCBkZSkpOworRVJST1I6ICBubyByYW5nZSB0eXBl IGZvciB4bWwgZm91bmQgZm9yIHBlcmlvZCBwCitISU5UOiAgWW91IGNhbiBkZWZpbmUgYSBjdXN0 b20gcmFuZ2UgdHlwZSB3aXRoIENSRUFURSBUWVBFCisvKiBQZXJpb2QgYW5kIGNvbHVtbiBuYW1l cyBhcmUgaW4gdGhlIHNhbWUgbmFtZXNwYWNlICovCitjcmVhdGUgdGFibGUgcHQgKGlkIGludGVn ZXIsIGRzIGRhdGUsIGRlIGRhdGUsIHBlcmlvZCBmb3IgY3RpZCAoZHMsIGRlKSk7CitFUlJPUjog IHBlcmlvZCBuYW1lICJjdGlkIiBjb25mbGljdHMgd2l0aCBhIHN5c3RlbSBjb2x1bW4gbmFtZQor Y3JlYXRlIHRhYmxlIHB0IChpZCBpbnRlZ2VyLCBkcyBkYXRlLCBkZSBkYXRlLCBwZXJpb2QgZm9y IGlkIChkcywgZGUpKTsKK0VSUk9SOiAgcGVyaW9kIG5hbWUgImlkIiBjb25mbGljdHMgd2l0aCBh IGNvbHVtbiBuYW1lCisvKiBQZXJpb2QgbmFtZSBjYW4ndCBiZSBnaXZlbiBtb3JlIHRoYW4gb25j ZSAqLworY3JlYXRlIHRhYmxlIHB0IChpZCBpbnRlZ2VyLCBkcyBkYXRlLCBkZSBkYXRlLCBwZXJp b2QgZm9yIHAgKGRzLCBkZSksIHBlcmlvZCBmb3IgcCAoZHMsIGRlKSk7CitFUlJPUjogIHBlcmlv ZCBuYW1lICJwIiBzcGVjaWZpZWQgbW9yZSB0aGFuIG9uY2UKKy8qIFBlcmlvZCBjYW4ndCB1c2Ug dGhlIHNhbWUgY29sdW0gZm9yIHN0YXJ0IGFuZCBlbmQqLworY3JlYXRlIHRhYmxlIHB0IChpZCBp bnRlZ2VyLCBkcyBkYXRlLCBkZSBkYXRlLCBwZXJpb2QgZm9yIHAgKGRzLCBkcykpOworRVJST1I6 ICBjb2x1bW4gImRzIiBjYW4ndCBiZSB0aGUgc3RhcnQgYW5kIGVuZCBjb2x1bW4gZm9yIHBlcmlv ZCAicCIKKy8qIE5vdyBtYWtlIG9uZSB0aGF0IHdvcmtzICovCitjcmVhdGUgdGFibGUgcHQgKGlk IGludGVnZXIsIGRzIGRhdGUsIGRlIGRhdGUsIHBlcmlvZCBmb3IgcCAoZHMsIGRlKSk7CisvKiBJ dHMgZ2VuZXJhdGVkIGNvbHVtbiBsb29rcyBnb29kICovCitzZWxlY3QgYXR0bmFtZSwgYXR0dHlw aWQ6OnJlZ3R5cGUsIGF0dG5vdG51bGwsIGF0dGdlbmVyYXRlZCBmcm9tIHBnX2F0dHJpYnV0ZSB3 aGVyZSBhdHRyZWxpZCA9ICdwdCc6OnJlZ2NsYXNzIGFuZCBhdHRuYW1lID0gJ3AnOworIGF0dG5h bWUgfCBhdHR0eXBpZCAgfCBhdHRub3RudWxsIHwgYXR0Z2VuZXJhdGVkIAorLS0tLS0tLS0tKy0t LS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLQorIHAgICAgICAgfCBkYXRlcmFu Z2UgfCB0ICAgICAgICAgIHwgcworKDEgcm93KQorCitzZWxlY3QgY29ubmFtZSwgY29udHlwZSBm cm9tIHBnX2NvbnN0cmFpbnQgd2hlcmUgY29ucmVsaWQgPSAncHQnOjpyZWdjbGFzcyBvcmRlciBi eSBjb25uYW1lOworICAgIGNvbm5hbWUgICAgfCBjb250eXBlIAorLS0tLS0tLS0tLS0tLS0tKy0t LS0tLS0tLQorIHB0X3BfY2hlY2sgICAgfCBjCisgcHRfcF9ub3RfbnVsbCB8IG4KKygyIHJvd3Mp CisKKy8qIEl0IGFwcGVhcnMgaW4gdGhlIGluZm9ybWF0aW9uX3NjaGVtYSAqLworc2VsZWN0ICog ZnJvbSBpbmZvcm1hdGlvbl9zY2hlbWEucGVyaW9kczsKKyB0YWJsZV9jYXRhbG9nIHwgdGFibGVf c2NoZW1hIHwgdGFibGVfbmFtZSB8IHBlcmlvZF9uYW1lIHwgc3RhcnRfY29sdW1uX25hbWUgfCBl bmRfY29sdW1uX25hbWUgCistLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0t LS0tKy0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLQor IHJlZ3Jlc3Npb24gICAgfCBwdWJsaWMgICAgICAgfCBwdCAgICAgICAgIHwgcCAgICAgICAgICAg fCBkcyAgICAgICAgICAgICAgICB8IGRlCisoMSByb3cpCisKKy8qIFNFTEVDVCAqIGV4Y2x1ZGVz IHRoZSBQRVJJT0QgKi8KK2luc2VydCBpbnRvIHB0IHZhbHVlcyAoMSwgJzIwMDAtMDEtMDEnLCAn MjAwMS0wMS0wMScpOworc2VsZWN0ICogZnJvbSBwdDsKKyBpZCB8ICAgICBkcyAgICAgfCAgICAg ZGUgICAgIAorLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tCisgIDEgfCAwMS0wMS0yMDAw IHwgMDEtMDEtMjAwMQorKDEgcm93KQorCisvKiBZb3UgY2FuIGdldCBpdCBpZiB5b3Ugd2FudCAq Lworc2VsZWN0ICosIHAgZnJvbSBwdDsKKyBpZCB8ICAgICBkcyAgICAgfCAgICAgZGUgICAgIHwg ICAgICAgICAgICBwICAgICAgICAgICAgCistLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0r LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorICAxIHwgMDEtMDEtMjAwMCB8IDAxLTAxLTIwMDEg fCBbMDEtMDEtMjAwMCwwMS0wMS0yMDAxKQorKDEgcm93KQorCisvKiBZb3UgY2FuIGNvbW1lbnQg b24gaXQgKi8KK2NvbW1lbnQgb24gcGVyaW9kIHB0LnAgaXMgJ3Rlc3QgY29tbWVudCc7CitzZWxl Y3Qgb2JqX2Rlc2NyaXB0aW9uKChzZWxlY3Qgb2lkIGZyb20gcGdfcGVyaW9kIHdoZXJlIHBlcnJl bGlkID0gJ3B0Jzo6cmVnY2xhc3MgYW5kIHBlcm5hbWUgPSAncCcpLCAncGdfcGVyaW9kJyk7Cisg b2JqX2Rlc2NyaXB0aW9uIAorLS0tLS0tLS0tLS0tLS0tLS0KKyB0ZXN0IGNvbW1lbnQKKygxIHJv dykKKworLyogVHdvIGFyZSBva2F5ICovCitjcmVhdGUgdGFibGUgcHQyIChpZCBpbnRlZ2VyLCBk cyBkYXRlLCBkZSBkYXRlLCBwZXJpb2QgZm9yIHAxIChkcywgZGUpLCBwZXJpb2QgZm9yIHAyIChk cywgZGUpKTsKK2Ryb3AgdGFibGUgcHQyOworLyogU2tpcCBjcmVhdGluZyBHRU5FUkFURUQgY29s dW1uOiB3b3JrcyAqLworY3JlYXRlIHRhYmxlIHB0MiAoaWQgaW50ZWdlciwgZHMgZGF0ZSwgZGUg ZGF0ZSwgcCBkYXRlcmFuZ2Ugbm90IG51bGwgZ2VuZXJhdGVkIGFsd2F5cyBhcyAoZGF0ZXJhbmdl KGRzLCBkZSkpIHN0b3JlZCwgcGVyaW9kIGZvciBwIChkcywgZGUpIHdpdGggKGNvbGV4aXN0cyA9 IHRydWUpKTsKK1xkIHB0MgorICAgICAgICAgICAgICAgIFRhYmxlICJwdWJsaWMucHQyIgorIENv bHVtbiB8ICBUeXBlICAgfCBDb2xsYXRpb24gfCBOdWxsYWJsZSB8IERlZmF1bHQgCistLS0tLS0t LSstLS0tLS0tLS0rLS0tLS0tLS0tLS0rLS0tLS0tLS0tLSstLS0tLS0tLS0KKyBpZCAgICAgfCBp bnRlZ2VyIHwgICAgICAgICAgIHwgICAgICAgICAgfCAKKyBkcyAgICAgfCBkYXRlICAgIHwgICAg ICAgICAgIHwgICAgICAgICAgfCAKKyBkZSAgICAgfCBkYXRlICAgIHwgICAgICAgICAgIHwgICAg ICAgICAgfCAKK1BlcmlvZHM6CisgICAgcCAoZHMsIGRlKQorQ2hlY2sgY29uc3RyYWludHM6Cisg ICAgInB0Ml9wX2NoZWNrIiBDSEVDSyAoZHMgPCBkZSkKKworZHJvcCB0YWJsZSBwdDI7CisvKiBT a2lwIGNyZWF0aW5nIEdFTkVSQVRFRCBjb2x1bW46IGZhaWxzIGJlY2F1c2UgdGhlIGNvbCBpc24n dCB0aGVyZSAqLworY3JlYXRlIHRhYmxlIHB0MiAoaWQgaW50ZWdlciwgZHMgZGF0ZSwgZGUgZGF0 ZSwgcGVyaW9kIGZvciBwIChkcywgZGUpIHdpdGggKGNvbGV4aXN0cyA9IHRydWUpKTsKK0VSUk9S OiAgTm8gY29sdW1uIGZvdW5kIHdpdGggbmFtZSBwCisvKiBTa2lwIGNyZWF0aW5nIEdFTkVSQVRF RCBjb2x1bW46IGZhaWxzIGJlY2F1c2UgdGhlIG9wdGlvbiBoYXMgYW4gaW52YWxpZCB2YWx1ZSAq LworY3JlYXRlIHRhYmxlIHB0MiAoaWQgaW50ZWdlciwgZHMgZGF0ZSwgZGUgZGF0ZSwgcGVyaW9k IGZvciBwIChkcywgZGUpIHdpdGggKGNvbGV4aXN0cyA9ICd3aGF0ZXZlcicpKTsKK0VSUk9SOiAg Y29sZXhpc3RzIHJlcXVpcmVzIGEgQm9vbGVhbiB2YWx1ZQorLyogU2tpcCBjcmVhdGluZyBHRU5F UkFURUQgY29sdW1uOiBmYWlscyBiZWNhdXNlIHRoZSBjb2x1bW4gaXMgbm90IE5PVCBOVUxMICov CitjcmVhdGUgdGFibGUgcHQyIChpZCBpbnRlZ2VyLCBkcyBkYXRlLCBkZSBkYXRlLCBwIGRhdGVy YW5nZSBnZW5lcmF0ZWQgYWx3YXlzIGFzIChkYXRlcmFuZ2UoZHMsIGRlKSkgc3RvcmVkLCBwZXJp b2QgZm9yIHAgKGRzLCBkZSkgd2l0aCAoY29sZXhpc3RzID0gdHJ1ZSkpOworRVJST1I6ICBQZXJp b2QgcCB1c2VzIGEgZ2VuZXJhdGVkIGNvbHVtbiB0aGF0IGFsbG93cyBudWxscworLyogU2tpcCBj cmVhdGluZyBHRU5FUkFURUQgY29sdW1uOiBmYWlscyBiZWNhdXNlIHRoZSBjb2x1bW4gaXMgbm90 IEdFTkVSQVRFRCAqLworY3JlYXRlIHRhYmxlIHB0MiAoaWQgaW50ZWdlciwgZHMgZGF0ZSwgZGUg ZGF0ZSwgcCBkYXRlcmFuZ2Ugbm90IG51bGwsIHBlcmlvZCBmb3IgcCAoZHMsIGRlKSB3aXRoIChj b2xleGlzdHMgPSB0cnVlKSk7CitFUlJPUjogIFBlcmlvZCBwIHVzZXMgYSBub24tZ2VuZXJhdGVk IGNvbHVtbgorLyogU2tpcCBjcmVhdGluZyBHRU5FUkFURUQgY29sdW1uOiBmYWlscyBiZWNhdXNl IHRoZSBjb2x1bW4gaXMgR0VORVJBVEVEIGJ1dCB3aXRoIHRoZSB3cm9uZyBleHByZXNzaW9uICov CistLSBUT0RPOgorLS0gY3JlYXRlIHRhYmxlIHB0MiAoaWQgaW50ZWdlciwgZHMgZGF0ZSwgZGUg ZGF0ZSwgcCBkYXRlcmFuZ2Ugbm90IG51bGwgZ2VuZXJhdGVkIGFsd2F5cyBhcyAoZGF0ZXJhbmdl KGRlLCBkcykpIHN0b3JlZCwgcGVyaW9kIGZvciBwIChkcywgZGUpIHdpdGggKGNvbGV4aXN0cyA9 IHRydWUpKTsKKy8qIFNraXAgY3JlYXRpbmcgR0VORVJBVEVEIGNvbHVtbjogZmFpbHMgYmVjYXVz ZSB0aGUgY29sdW1uIGlzIHRoZSB3cm9uZyB0eXBlICovCitjcmVhdGUgdGFibGUgcHQyIChpZCBp bnRlZ2VyLCBkcyBkYXRlLCBkZSBkYXRlLCBwIHRzcmFuZ2Ugbm90IG51bGwgZ2VuZXJhdGVkIGFs d2F5cyBhcyAodHNyYW5nZShkcywgZGUpKSBzdG9yZWQsIHBlcmlvZCBmb3IgcCAoZHMsIGRlKSB3 aXRoIChjb2xleGlzdHMgPSB0cnVlKSk7CitFUlJPUjogIFBlcmlvZCBwIHVzZXMgYSBnZW5lcmF0 ZWQgY29sdW1uIHdpdGggdGhlIHdyb25nIHR5cGUKKy8qIFNraXAgY3JlYXRpbmcgR0VORVJBVEVE IGNvbHVtbjogZmFpbHMgYmVjYXVzZSB0aGUgY29sdW1uIGlzIGluaGVyaXRlZCAqLworY3JlYXRl IHRhYmxlIHB0MnBhcmVudCAoaWQgaW50ZWdlciwgZHMgZGF0ZSwgZGUgZGF0ZSwgcCBkYXRlcmFu Z2Ugbm90IG51bGwgZ2VuZXJhdGVkIGFsd2F5cyBhcyAoZGF0ZXJhbmdlKGRzLCBkZSkpIHN0b3Jl ZCk7CitjcmVhdGUgdGFibGUgcHQyIChwZXJpb2QgZm9yIHAgKGRzLCBkZSkgd2l0aCAoY29sZXhp c3RzID0gdHJ1ZSkpIGluaGVyaXRzIChwdDJwYXJlbnQpOworRVJST1I6ICBJbmhlcml0aW5nIGlz IG5vdCBzdXBwb3J0ZWQgd2hlbiBhIHRhYmxlIGhhcyBhIFBFUklPRAorZHJvcCB0YWJsZSBwdDJw YXJlbnQ7CisvKgorICogQUxURVIgVEFCTEUgdGVzdHMKKyAqLworYWx0ZXIgdGFibGUgcHQgZHJv cCBwZXJpb2QgZm9yIHA7CithbHRlciB0YWJsZSBwdCBhZGQgcGVyaW9kIGZvciBzeXN0ZW1fdGlt ZSAoZHMsIGRlKTsKK0VSUk9SOiAgUEVSSU9EIEZPUiBTWVNURU1fVElNRSBpcyBub3Qgc3VwcG9y dGVkCithbHRlciB0YWJsZSBwdCBhZGQgcGVyaW9kIGZvciBwIChkcywgZGUpOworLyogSXRzIGdl bmVyYXRlZCBjb2x1bW4gbG9va3MgZ29vZCAqLworc2VsZWN0IGF0dG5hbWUsIGF0dHR5cGlkOjpy ZWd0eXBlLCBhdHRub3RudWxsLCBhdHRnZW5lcmF0ZWQgZnJvbSBwZ19hdHRyaWJ1dGUgd2hlcmUg YXR0cmVsaWQgPSAncHQnOjpyZWdjbGFzcyBhbmQgYXR0bmFtZSA9ICdwJzsKKyBhdHRuYW1lIHwg YXR0dHlwaWQgIHwgYXR0bm90bnVsbCB8IGF0dGdlbmVyYXRlZCAKKy0tLS0tLS0tLSstLS0tLS0t LS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0KKyBwICAgICAgIHwgZGF0ZXJhbmdlIHwg dCAgICAgICAgICB8IHMKKygxIHJvdykKKworc2VsZWN0IGNvbm5hbWUsIGNvbnR5cGUgZnJvbSBw Z19jb25zdHJhaW50IHdoZXJlIGNvbnJlbGlkID0gJ3B0Jzo6cmVnY2xhc3Mgb3JkZXIgYnkgY29u bmFtZTsKKyAgICBjb25uYW1lICAgIHwgY29udHlwZSAKKy0tLS0tLS0tLS0tLS0tLSstLS0tLS0t LS0KKyBwdF9wX2NoZWNrICAgIHwgYworIHB0X3Bfbm90X251bGwgfCBuCisoMiByb3dzKQorCisv KiBBZGRpbmcgYSBzZWNvbmQgb25lICovCitjcmVhdGUgdGFibGUgcHQyIChpZCBpbnRlZ2VyLCBk cyBkYXRlLCBkZSBkYXRlLCBwZXJpb2QgZm9yIHAxIChkcywgZGUpKTsKK2FsdGVyIHRhYmxlIHB0 MiBhZGQgcGVyaW9kIGZvciBwMiAoZHMsIGRlKTsKK2Ryb3AgdGFibGUgcHQyOworLyogQ2FuJ3Qg ZHJvcCBpdHMgY29sdW1ucyAqLworYWx0ZXIgdGFibGUgcHQgZHJvcCBjb2x1bW4gZHM7CitFUlJP UjogIGNhbm5vdCBkcm9wIGNvbHVtbiBkcyBvZiB0YWJsZSBwdCBiZWNhdXNlIG90aGVyIG9iamVj dHMgZGVwZW5kIG9uIGl0CitERVRBSUw6ICBwZXJpb2QgcCBvbiB0YWJsZSBwdCBkZXBlbmRzIG9u IGNvbHVtbiBkcyBvZiB0YWJsZSBwdAorSElOVDogIFVzZSBEUk9QIC4uLiBDQVNDQURFIHRvIGRy b3AgdGhlIGRlcGVuZGVudCBvYmplY3RzIHRvby4KK2FsdGVyIHRhYmxlIHB0IGRyb3AgY29sdW1u IGRlOworRVJST1I6ICBjYW5ub3QgZHJvcCBjb2x1bW4gZGUgb2YgdGFibGUgcHQgYmVjYXVzZSBv dGhlciBvYmplY3RzIGRlcGVuZCBvbiBpdAorREVUQUlMOiAgcGVyaW9kIHAgb24gdGFibGUgcHQg ZGVwZW5kcyBvbiBjb2x1bW4gZGUgb2YgdGFibGUgcHQKK0hJTlQ6ICBVc2UgRFJPUCAuLi4gQ0FT Q0FERSB0byBkcm9wIHRoZSBkZXBlbmRlbnQgb2JqZWN0cyB0b28uCisvKiBDYW4ndCBjaGFuZ2Ug dGhlIGRhdGEgdHlwZXMgKi8KK2FsdGVyIHRhYmxlIHB0IGFsdGVyIGNvbHVtbiBkcyB0eXBlIHRp bWVzdGFtcDsKK0VSUk9SOiAgY2Fubm90IGFsdGVyIHR5cGUgb2YgYSBjb2x1bW4gdXNlZCBieSBh IHBlcmlvZAorREVUQUlMOiAgcGVyaW9kIHAgb24gdGFibGUgcHQgZGVwZW5kcyBvbiBjb2x1bW4g ImRzIgorYWx0ZXIgdGFibGUgcHQgYWx0ZXIgY29sdW1uIGRzIHR5cGUgdGltZXN0YW1wOworRVJS T1I6ICBjYW5ub3QgYWx0ZXIgdHlwZSBvZiBhIGNvbHVtbiB1c2VkIGJ5IGEgcGVyaW9kCitERVRB SUw6ICBwZXJpb2QgcCBvbiB0YWJsZSBwdCBkZXBlbmRzIG9uIGNvbHVtbiAiZHMiCisvKiBjb2x1 bW4vcGVyaW9kIG5hbWVzcGFjZSBjb25mbGljdHMgKi8KK2FsdGVyIHRhYmxlIHB0IGFkZCBjb2x1 bW4gcCBpbnRlZ2VyOworRVJST1I6ICBjb2x1bW4gbmFtZSAicCIgY29uZmxpY3RzIHdpdGggYSBw ZXJpb2QgbmFtZQorYWx0ZXIgdGFibGUgcHQgcmVuYW1lIGNvbHVtbiBpZCB0byBwOworRVJST1I6 ICBjb2x1bW4gbmFtZSAicCIgY29uZmxpY3RzIHdpdGggYSBwZXJpb2QgbmFtZQorYWx0ZXIgdGFi bGUgcHQgYWRkIHBlcmlvZCBmb3IgdGFibGVvaWQgKGRzLCBkZSk7CitFUlJPUjogIHBlcmlvZCBu YW1lICJ0YWJsZW9pZCIgY29uZmxpY3RzIHdpdGggYSBzeXN0ZW0gY29sdW1uIG5hbWUKK2FsdGVy IHRhYmxlIHB0IGFkZCBwZXJpb2QgZm9yICIuLi4uLi4uLnBnLmRyb3BwZWQuNC4uLi4uLi4uIiAo ZHMsIGRlKTsKK0VSUk9SOiAgcGVyaW9kIG5hbWUgIi4uLi4uLi4ucGcuZHJvcHBlZC40Li4uLi4u Li4iIGNvbmZsaWN0cyB3aXRoIGEgY29sdW1uIG5hbWUKKy8qIGFkZGluZyBjb2x1bW5zIGFuZCB0 aGUgcGVyaW9kIGF0IHRoZSBzYW1lIHRpbWUgKi8KK2NyZWF0ZSB0YWJsZSBwdDIgKGlkIGludGVn ZXIpOworYWx0ZXIgdGFibGUgcHQyIGFkZCBjb2x1bW4gZHMgZGF0ZSwgYWRkIGNvbHVtbiBkZSBk YXRlLCBhZGQgcGVyaW9kIGZvciBwIChkcywgZGUpOworZHJvcCB0YWJsZSBwdDI7CisvKiBBbWJp Z3VvdXMgcmFuZ2UgdHlwZXMgcmFpc2UgYW4gZXJyb3IgKi8KK2NyZWF0ZSB0eXBlIG15ZGF0ZXJh bmdlIGFzIHJhbmdlKHN1YnR5cGU9ZGF0ZSk7CitjcmVhdGUgdGFibGUgcHQyIChpZCBpbnQsIGRz IGRhdGUsIGRlIGRhdGUsIHBlcmlvZCBmb3IgcCAoZHMsIGRlKSk7CitFUlJPUjogIGFtYmlndW91 cyByYW5nZSBmb3IgdHlwZSBkYXRlCisvKiBZb3UgY2FuIGdpdmUgYW4gZXhwbGljaXQgcmFuZ2Ug dHlwZSAqLworY3JlYXRlIHRhYmxlIHB0MiAoaWQgaW50LCBkcyBkYXRlLCBkZSBkYXRlLCBwZXJp b2QgZm9yIHAgKGRzLCBkZSkgd2l0aCAocmFuZ2V0eXBlID0gJ215ZGF0ZXJhbmdlJykpOworZHJv cCB0eXBlIG15ZGF0ZXJhbmdlOworRVJST1I6ICBjYW5ub3QgZHJvcCB0eXBlIG15ZGF0ZXJhbmdl IGJlY2F1c2Ugb3RoZXIgb2JqZWN0cyBkZXBlbmQgb24gaXQKK0RFVEFJTDogIHBlcmlvZCBwIG9u IHRhYmxlIHB0MiBkZXBlbmRzIG9uIHR5cGUgbXlkYXRlcmFuZ2UKK0hJTlQ6ICBVc2UgRFJPUCAu Li4gQ0FTQ0FERSB0byBkcm9wIHRoZSBkZXBlbmRlbnQgb2JqZWN0cyB0b28uCitkcm9wIHR5cGUg bXlkYXRlcmFuZ2UgY2FzY2FkZTsKK05PVElDRTogIGRyb3AgY2FzY2FkZXMgdG8gcGVyaW9kIHAg b24gdGFibGUgcHQyCitkcm9wIHRhYmxlIHB0MjsKK2NyZWF0ZSB0YWJsZSBwdDIgKGlkIGludCwg ZHMgZGF0ZSwgZGUgZGF0ZSwgcGVyaW9kIGZvciBwIChkcywgZGUpIHdpdGggKHJhbmdldHlwZSA9 ICdkYXRlcmFuZ2UnKSk7CisvKiBSYW5nZSB0eXBlIGlzIG5vdCBmb3VuZCAqLworY3JlYXRlIHRh YmxlIHB0MyAoaWQgaW50LCBkcyBkYXRlLCBkZSBkYXRlLCBwZXJpb2QgZm9yIHAgKGRzLCBkZSkg d2l0aCAocmFuZ2V0eXBlID0gJ25vdGFyYW5nZScpKTsKK0VSUk9SOiAgUmFuZ2UgdHlwZSBub3Rh cmFuZ2Ugbm90IGZvdW5kCisvKiBSYW5nZSB0eXBlIGlzIHRoZSB3cm9uZyB0eXBlICovCitjcmVh dGUgdGFibGUgcHQzIChpZCBpbnQsIGRzIGRhdGUsIGRlIGRhdGUsIHBlcmlvZCBmb3IgcCAoZHMs IGRlKSB3aXRoIChyYW5nZXR5cGUgPSAndHN0enJhbmdlJykpOworRVJST1I6ICBSYW5nZSB0eXBl IHRzdHpyYW5nZSBkb2VzIG5vdCBtYXRjaCBjb2x1bW4gdHlwZSBkYXRlCitkcm9wIHRhYmxlIHB0 MjsKKy8qIFBlcmlvZCBjYW4ndCB1c2UgdGhlIHNhbWUgY29sdW0gZm9yIHN0YXJ0IGFuZCBlbmQq LworY3JlYXRlIHRhYmxlIHB0MiAoaWQgaW50ZWdlciwgZHMgZGF0ZSwgZGUgZGF0ZSk7CithbHRl ciB0YWJsZSBwdDIgYWRkIHBlcmlvZCBmb3IgcCAoZHMsIGRzKTsKK0VSUk9SOiAgY29sdW1uICJk cyIgY2FuJ3QgYmUgdGhlIHN0YXJ0IGFuZCBlbmQgY29sdW1uIGZvciBwZXJpb2QgInAiCitkcm9w IHRhYmxlIHB0MjsKKy8qIFNraXAgY3JlYXRpbmcgR0VORVJBVEVEIGNvbHVtbjogd29ya3MgKi8K K2NyZWF0ZSB0YWJsZSBwdDIgKGlkIGludGVnZXIsIGRzIGRhdGUsIGRlIGRhdGUsIHAgZGF0ZXJh bmdlIG5vdCBudWxsIGdlbmVyYXRlZCBhbHdheXMgYXMgKGRhdGVyYW5nZShkcywgZGUpKSBzdG9y ZWQpOworYWx0ZXIgdGFibGUgcHQyIGFkZCBwZXJpb2QgZm9yIHAgKGRzLCBkZSkgd2l0aCAoY29s ZXhpc3RzID0gdHJ1ZSk7CitcZCBwdDIKKyAgICAgICAgICAgICAgICBUYWJsZSAicHVibGljLnB0 MiIKKyBDb2x1bW4gfCAgVHlwZSAgIHwgQ29sbGF0aW9uIHwgTnVsbGFibGUgfCBEZWZhdWx0IAor LS0tLS0tLS0rLS0tLS0tLS0tKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rLS0tLS0tLS0tCisgaWQg ICAgIHwgaW50ZWdlciB8ICAgICAgICAgICB8ICAgICAgICAgIHwgCisgZHMgICAgIHwgZGF0ZSAg ICB8ICAgICAgICAgICB8ICAgICAgICAgIHwgCisgZGUgICAgIHwgZGF0ZSAgICB8ICAgICAgICAg ICB8ICAgICAgICAgIHwgCitQZXJpb2RzOgorICAgIHAgKGRzLCBkZSkKK0NoZWNrIGNvbnN0cmFp bnRzOgorICAgICJwdDJfcF9jaGVjayIgQ0hFQ0sgKGRzIDwgZGUpCisKK2Ryb3AgdGFibGUgcHQy OworLyogU2tpcCBjcmVhdGluZyBHRU5FUkFURUQgY29sdW1uOiBmYWlscyBiZWNhdXNlIHRoZSBj b2wgaXNuJ3QgdGhlcmUgKi8KK2NyZWF0ZSB0YWJsZSBwdDIgKGlkIGludGVnZXIsIGRzIGRhdGUs IGRlIGRhdGUpOworYWx0ZXIgdGFibGUgcHQyIGFkZCBwZXJpb2QgZm9yIHAgKGRzLCBkZSkgd2l0 aCAoY29sZXhpc3RzID0gdHJ1ZSk7CitFUlJPUjogIGNvbHVtbiAicCIgb2YgcmVsYXRpb24gInB0 MiIgZG9lcyBub3QgZXhpc3QKK2Ryb3AgdGFibGUgcHQyOworLyogU2tpcCBjcmVhdGluZyBHRU5F UkFURUQgY29sdW1uOiBmYWlscyBiZWNhdXNlIHRoZSBvcHRpb24gaGFzIGFuIGludmFsaWQgdmFs dWUgKi8KK2NyZWF0ZSB0YWJsZSBwdDIgKGlkIGludGVnZXIsIGRzIGRhdGUsIGRlIGRhdGUsIHAg ZGF0ZXJhbmdlIG5vdCBudWxsIGdlbmVyYXRlZCBhbHdheXMgYXMgKGRhdGVyYW5nZShkcywgZGUp KSBzdG9yZWQpOworYWx0ZXIgdGFibGUgcHQyIGFkZCBwZXJpb2QgZm9yIHAgKGRzLCBkZSkgd2l0 aCAoY29sZXhpc3RzID0gJ3doYXRldmVyJyk7CitFUlJPUjogIGNvbGV4aXN0cyByZXF1aXJlcyBh IEJvb2xlYW4gdmFsdWUKK2Ryb3AgdGFibGUgcHQyOworLyogU2tpcCBjcmVhdGluZyBHRU5FUkFU RUQgY29sdW1uOiBmYWlscyBiZWNhdXNlIHRoZSBjb2x1bW4gaXMgbm90IE5PVCBOVUxMICovCitj cmVhdGUgdGFibGUgcHQyIChpZCBpbnRlZ2VyLCBkcyBkYXRlLCBkZSBkYXRlLCBwIGRhdGVyYW5n ZSBnZW5lcmF0ZWQgYWx3YXlzIGFzIChkYXRlcmFuZ2UoZHMsIGRlKSkgc3RvcmVkKTsKK2FsdGVy IHRhYmxlIHB0MiBhZGQgcGVyaW9kIGZvciBwIChkcywgZGUpIHdpdGggKGNvbGV4aXN0cyA9IHRy dWUpOworRVJST1I6ICBQZXJpb2QgcCB1c2VzIGEgZ2VuZXJhdGVkIGNvbHVtbiB0aGF0IGFsbG93 cyBudWxscworZHJvcCB0YWJsZSBwdDI7CisvKiBTa2lwIGNyZWF0aW5nIEdFTkVSQVRFRCBjb2x1 bW46IGZhaWxzIGJlY2F1c2UgdGhlIGNvbHVtbiBpcyBub3QgR0VORVJBVEVEICovCitjcmVhdGUg dGFibGUgcHQyIChpZCBpbnRlZ2VyLCBkcyBkYXRlLCBkZSBkYXRlLCBwIGRhdGVyYW5nZSBub3Qg bnVsbCk7CithbHRlciB0YWJsZSBwdDIgYWRkIHBlcmlvZCBmb3IgcCAoZHMsIGRlKSB3aXRoIChj b2xleGlzdHMgPSB0cnVlKTsKK0VSUk9SOiAgUGVyaW9kIHAgdXNlcyBhIG5vbi1nZW5lcmF0ZWQg Y29sdW1uCitkcm9wIHRhYmxlIHB0MjsKKy8qIFNraXAgY3JlYXRpbmcgR0VORVJBVEVEIGNvbHVt bjogZmFpbHMgYmVjYXVzZSB0aGUgY29sdW1uIGlzIEdFTkVSQVRFRCBidXQgd2l0aCB0aGUgd3Jv bmcgZXhwcmVzc2lvbiAqLworLS0gVE9ETzoKKy0tIGNyZWF0ZSB0YWJsZSBwdDIgKGlkIGludGVn ZXIsIGRzIGRhdGUsIGRlIGRhdGUsIHAgZGF0ZXJhbmdlIG5vdCBudWxsIGdlbmVyYXRlZCBhbHdh eXMgYXMgKGRhdGVyYW5nZShkZSwgZHMpKSBzdG9yZWQpOworLS0gYWx0ZXIgdGFibGUgcHQyIGFk ZCBwZXJpb2QgZm9yIHAgKGRzLCBkZSkgd2l0aCAoY29sZXhpc3RzID0gdHJ1ZSk7CisvKiBTa2lw IGNyZWF0aW5nIEdFTkVSQVRFRCBjb2x1bW46IGZhaWxzIGJlY2F1c2UgdGhlIGNvbHVtbiBpcyB0 aGUgd3JvbmcgdHlwZSAqLworY3JlYXRlIHRhYmxlIHB0MiAoaWQgaW50ZWdlciwgZHMgZGF0ZSwg ZGUgZGF0ZSwgcCB0c3JhbmdlIG5vdCBudWxsIGdlbmVyYXRlZCBhbHdheXMgYXMgKHRzcmFuZ2Uo ZHMsIGRlKSkgc3RvcmVkKTsKK2FsdGVyIHRhYmxlIHB0MiBhZGQgcGVyaW9kIGZvciBwIChkcywg ZGUpIHdpdGggKGNvbGV4aXN0cyA9IHRydWUpOworRVJST1I6ICBQZXJpb2QgcCB1c2VzIGEgZ2Vu ZXJhdGVkIGNvbHVtbiB3aXRoIHRoZSB3cm9uZyB0eXBlCitkcm9wIHRhYmxlIHB0MjsKKy8qIFNr aXAgY3JlYXRpbmcgR0VORVJBVEVEIGNvbHVtbjogZmFpbHMgYmVjYXVzZSB0aGUgY29sdW1uIGlz IGluaGVyaXRlZCAqLworY3JlYXRlIHRhYmxlIHB0MnBhcmVudCAoaWQgaW50ZWdlciwgZHMgZGF0 ZSwgZGUgZGF0ZSwgcCBkYXRlcmFuZ2Ugbm90IG51bGwgZ2VuZXJhdGVkIGFsd2F5cyBhcyAoZGF0 ZXJhbmdlKGRzLCBkZSkpIHN0b3JlZCk7CitjcmVhdGUgdGFibGUgcHQyICgpIGluaGVyaXRzIChw dDJwYXJlbnQpOworYWx0ZXIgdGFibGUgcHQyIGFkZCBwZXJpb2QgZm9yIHAgKGRzLCBkZSkgd2l0 aCAoY29sZXhpc3RzID0gdHJ1ZSk7CitFUlJPUjogIFBlcmlvZCBwIHVzZXMgYSBnZW5lcmF0ZWQg Y29sdW1uIHRoYXQgaXMgaW5oZXJpdGVkCitkcm9wIHRhYmxlIHB0MjsKK2Ryb3AgdGFibGUgcHQy cGFyZW50OworLyogQ1JFQVRFIFRBQkxFIChMSUtFIC4uLikgKi8KKy8qIFBlcmlvZHMgYXJlIG5v dCBjb3BpZWQgYnkgTElLRSwgc28gdGhlaXIgY29sdW1ucyBhcmVuJ3QgZWl0aGVyICovCitjcmVh dGUgdGFibGUgcHQyIChsaWtlIHB0KTsKK1xkIHB0MgorICAgICAgICAgICAgICAgIFRhYmxlICJw dWJsaWMucHQyIgorIENvbHVtbiB8ICBUeXBlICAgfCBDb2xsYXRpb24gfCBOdWxsYWJsZSB8IERl ZmF1bHQgCistLS0tLS0tLSstLS0tLS0tLS0rLS0tLS0tLS0tLS0rLS0tLS0tLS0tLSstLS0tLS0t LS0KKyBpZCAgICAgfCBpbnRlZ2VyIHwgICAgICAgICAgIHwgICAgICAgICAgfCAKKyBkcyAgICAg fCBkYXRlICAgIHwgICAgICAgICAgIHwgICAgICAgICAgfCAKKyBkZSAgICAgfCBkYXRlICAgIHwg ICAgICAgICAgIHwgICAgICAgICAgfCAKKworZHJvcCB0YWJsZSBwdDI7CisvKiBDYW4gYWRkIGEg cGVyaW9kIHJlZmVycmluZyB0byBMSUtFJ2QgY29sdW1ucyAqLworY3JlYXRlIHRhYmxlIG5vdF9w IChpZCBpbnRlZ2VyLCBkcyBkYXRlLCBkZSBkYXRlKTsKK2NyZWF0ZSB0YWJsZSBwdDIgKGxpa2Ug bm90X3AsIHBlcmlvZCBmb3IgcCAoZHMsIGRlKSk7CitcZCBwdDIKKyAgICAgICAgICAgICAgICBU YWJsZSAicHVibGljLnB0MiIKKyBDb2x1bW4gfCAgVHlwZSAgIHwgQ29sbGF0aW9uIHwgTnVsbGFi bGUgfCBEZWZhdWx0IAorLS0tLS0tLS0rLS0tLS0tLS0tKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0r LS0tLS0tLS0tCisgaWQgICAgIHwgaW50ZWdlciB8ICAgICAgICAgICB8ICAgICAgICAgIHwgCisg ZHMgICAgIHwgZGF0ZSAgICB8ICAgICAgICAgICB8ICAgICAgICAgIHwgCisgZGUgICAgIHwgZGF0 ZSAgICB8ICAgICAgICAgICB8ICAgICAgICAgIHwgCitQZXJpb2RzOgorICAgIHAgKGRzLCBkZSkK K0NoZWNrIGNvbnN0cmFpbnRzOgorICAgICJwdDJfcF9jaGVjayIgQ0hFQ0sgKGRzIDwgZGUpCisK K2Ryb3AgdGFibGUgcHQyOworLyogQ2FuIGFkZCBhIHBlcmlvZCB3aXRoIHRoZSBzYW1lIG5hbWUg Ki8KK2NyZWF0ZSB0YWJsZSBwdDIgKGxpa2UgcHQsIHBlcmlvZCBmb3IgcCAoZHMsIGRlKSk7Citc ZCBwdDIKKyAgICAgICAgICAgICAgICBUYWJsZSAicHVibGljLnB0MiIKKyBDb2x1bW4gfCAgVHlw ZSAgIHwgQ29sbGF0aW9uIHwgTnVsbGFibGUgfCBEZWZhdWx0IAorLS0tLS0tLS0rLS0tLS0tLS0t Ky0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rLS0tLS0tLS0tCisgaWQgICAgIHwgaW50ZWdlciB8ICAg ICAgICAgICB8ICAgICAgICAgIHwgCisgZHMgICAgIHwgZGF0ZSAgICB8ICAgICAgICAgICB8ICAg ICAgICAgIHwgCisgZGUgICAgIHwgZGF0ZSAgICB8ICAgICAgICAgICB8ICAgICAgICAgIHwgCitQ ZXJpb2RzOgorICAgIHAgKGRzLCBkZSkKK0NoZWNrIGNvbnN0cmFpbnRzOgorICAgICJwdDJfcF9j aGVjayIgQ0hFQ0sgKGRzIDwgZGUpCisKK2Ryb3AgdGFibGUgcHQyOworLyogQ2FuIGFkZCBhIHBl cmlvZCB3aXRoIGEgZGlmZmVyZW50IG5hbWUgKi8KK2NyZWF0ZSB0YWJsZSBwdDIgKGxpa2UgcHQs IHBlcmlvZCBmb3IgcDIgKGRzLCBkZSkpOworXGQgcHQyCisgICAgICAgICAgICAgICAgVGFibGUg InB1YmxpYy5wdDIiCisgQ29sdW1uIHwgIFR5cGUgICB8IENvbGxhdGlvbiB8IE51bGxhYmxlIHwg RGVmYXVsdCAKKy0tLS0tLS0tKy0tLS0tLS0tLSstLS0tLS0tLS0tLSstLS0tLS0tLS0tKy0tLS0t LS0tLQorIGlkICAgICB8IGludGVnZXIgfCAgICAgICAgICAgfCAgICAgICAgICB8IAorIGRzICAg ICB8IGRhdGUgICAgfCAgICAgICAgICAgfCAgICAgICAgICB8IAorIGRlICAgICB8IGRhdGUgICAg fCAgICAgICAgICAgfCAgICAgICAgICB8IAorUGVyaW9kczoKKyAgICBwMiAoZHMsIGRlKQorQ2hl Y2sgY29uc3RyYWludHM6CisgICAgInB0Ml9wMl9jaGVjayIgQ0hFQ0sgKGRzIDwgZGUpCisKK2Ry b3AgdGFibGUgcHQyOworLyogQ2FuJ3QgYWRkIGEgcGVyaW9kIHdob3NlIG5hbWUgY29uZmxpY3Rz IHdpdGggYSBMSUtFJ2QgY29sdW1uICovCitjcmVhdGUgdGFibGUgcHQyIChsaWtlIHB0LCBwZXJp b2QgZm9yIGlkIChkcywgZGUpKTsKK0VSUk9SOiAgcGVyaW9kIG5hbWUgImlkIiBjb25mbGljdHMg d2l0aCBhIGNvbHVtbiBuYW1lCisvKiBDUkVBVEUgVEFMQkUgSU5IRVJJVFMgKi8KKy8qIENhbid0 IGluaGVyaXQgZnJvbSBhIHRhYmxlIHdpdGggYSBwZXJpb2QgKi8KK2NyZWF0ZSB0YWJsZSBwdDIg KG5hbWUgdGV4dCkgaW5oZXJpdHMgKHB0KTsKK0VSUk9SOiAgSW5oZXJpdGluZyBmcm9tIGEgdGFi bGUgd2l0aCBhIFBFUklPRCBpcyBub3Qgc3VwcG9ydGVkCisvKiBDYW4ndCBpbmhlcml0IHdpdGgg YSBwZXJpb2QgKi8KK2NyZWF0ZSB0YWJsZSBwdDIgKGQycyBkYXRlLCBkMmUgZGF0ZSwgcGVyaW9k IGZvciBwIChkMnMsIGQyZSkpIGluaGVyaXRzIChub3RfcCk7CitFUlJPUjogIEluaGVyaXRpbmcg aXMgbm90IHN1cHBvcnRlZCB3aGVuIGEgdGFibGUgaGFzIGEgUEVSSU9ECitkcm9wIHRhYmxlIG5v dF9wOwpkaWZmIC0tZ2l0IGEvc3JjL3Rlc3QvcmVncmVzcy9leHBlY3RlZC9wcml2aWxlZ2VzLm91 dCBiL3NyYy90ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvcHJpdmlsZWdlcy5vdXQKaW5kZXggOWZmOGU3 ZmIzNjMuLjRmNTc3MjE4Y2RmIDEwMDY0NAotLS0gYS9zcmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVk L3ByaXZpbGVnZXMub3V0CisrKyBiL3NyYy90ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvcHJpdmlsZWdl cy5vdXQKQEAgLTExMzcsNiArMTEzNywzNSBAQCBTRVQgU0VTU0lPTiBBVVRIT1JJWkFUSU9OIHJl Z3Jlc3NfcHJpdl91c2VyMzsKIFVQREFURSB0MSBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9N ICcyMDAwLTAxLTAxJyBUTyAnMjAwMS0wMS0wMScgU0VUIGMxID0gJ1syLDMpJzsKIFNFVCBTRVNT SU9OIEFVVEhPUklaQVRJT04gcmVncmVzc19wcml2X3VzZXIxOwogRFJPUCBUQUJMRSB0MTsKKy0t IHRlc3QgY29sdW1uLWxldmVsIHByaXZpbGVnZXMgb24gdGhlIFBFUklPRCB1c2VkIGluIEZPUiBQ T1JUSU9OIE9GCitTRVQgU0VTU0lPTiBBVVRIT1JJWkFUSU9OIHJlZ3Jlc3NfcHJpdl91c2VyMTsK K0NSRUFURSBUQUJMRSB0MSAoCisgIGMxIGludDRyYW5nZSwKKyAgdmFsaWRfZnJvbSB0aW1lc3Rh bXAsCisgIHZhbGlkX3RpbCB0aW1lc3RhbXAsCisgIFBFUklPRCBGT1IgdmFsaWRfYXQgKHZhbGlk X2Zyb20sIHZhbGlkX3RpbCksCisJQ09OU1RSQUlOVCB0MXBrIFBSSU1BUlkgS0VZIChjMSwgdmFs aWRfYXQgV0lUSE9VVCBPVkVSTEFQUykKKyk7CitHUkFOVCBTRUxFQ1QgT04gdDEgVE8gcmVncmVz c19wcml2X3VzZXIyOworR1JBTlQgU0VMRUNUIE9OIHQxIFRPIHJlZ3Jlc3NfcHJpdl91c2VyMzsK K0dSQU5UIFNFTEVDVCBPTiB0MSBUTyByZWdyZXNzX3ByaXZfdXNlcjQ7CitHUkFOVCBTRUxFQ1Qg T04gdDEgVE8gcmVncmVzc19wcml2X3VzZXI1OworR1JBTlQgVVBEQVRFIChjMSkgT04gdDEgVE8g cmVncmVzc19wcml2X3VzZXIyOworR1JBTlQgVVBEQVRFIChjMSwgdmFsaWRfYXQpIE9OIHQxIFRP IHJlZ3Jlc3NfcHJpdl91c2VyMzsKK0dSQU5UIFVQREFURSAoYzEsIHZhbGlkX2Zyb20sIHZhbGlk X3RpbCkgT04gdDEgVE8gcmVncmVzc19wcml2X3VzZXI0OworR1JBTlQgVVBEQVRFIChjMSwgdmFs aWRfZnJvbSwgdmFsaWRfdGlsLCB2YWxpZF9hdCkgT04gdDEgVE8gcmVncmVzc19wcml2X3VzZXI1 OworU0VUIFNFU1NJT04gQVVUSE9SSVpBVElPTiByZWdyZXNzX3ByaXZfdXNlcjI7CitVUERBVEUg dDEgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAwMC0wMS0wMScgVE8gJzIwMDEtMDEt MDEnIFNFVCBjMSA9ICdbMiwzKSc7CitFUlJPUjogIHBlcm1pc3Npb24gZGVuaWVkIGZvciB0YWJs ZSB0MQorU0VUIFNFU1NJT04gQVVUSE9SSVpBVElPTiByZWdyZXNzX3ByaXZfdXNlcjM7CitVUERB VEUgdDEgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAwMC0wMS0wMScgVE8gJzIwMDEt MDEtMDEnIFNFVCBjMSA9ICdbMiwzKSc7CitFUlJPUjogIHBlcm1pc3Npb24gZGVuaWVkIGZvciB0 YWJsZSB0MQorU0VUIFNFU1NJT04gQVVUSE9SSVpBVElPTiByZWdyZXNzX3ByaXZfdXNlcjQ7CitV UERBVEUgdDEgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAwMC0wMS0wMScgVE8gJzIw MDEtMDEtMDEnIFNFVCBjMSA9ICdbMiwzKSc7CitTRVQgU0VTU0lPTiBBVVRIT1JJWkFUSU9OIHJl Z3Jlc3NfcHJpdl91c2VyNTsKK1VQREFURSB0MSBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9N ICcyMDAwLTAxLTAxJyBUTyAnMjAwMS0wMS0wMScgU0VUIGMxID0gJ1syLDMpJzsKK1NFVCBTRVNT SU9OIEFVVEhPUklaQVRJT04gcmVncmVzc19wcml2X3VzZXIxOworRFJPUCBUQUJMRSB0MTsKIC0t IHRlc3QgY29sdW1uLWxldmVsIHByaXZpbGVnZXMgd2hlbiBpbnZvbHZlZCB3aXRoIERFTEVURQog U0VUIFNFU1NJT04gQVVUSE9SSVpBVElPTiByZWdyZXNzX3ByaXZfdXNlcjE7CiBBTFRFUiBUQUJM RSBhdGVzdDYgQUREIENPTFVNTiB0aHJlZSBpbnRlZ2VyOwpkaWZmIC0tZ2l0IGEvc3JjL3Rlc3Qv cmVncmVzcy9leHBlY3RlZC93aXRob3V0X292ZXJsYXBzLm91dCBiL3NyYy90ZXN0L3JlZ3Jlc3Mv ZXhwZWN0ZWQvd2l0aG91dF9vdmVybGFwcy5vdXQKaW5kZXggNGQ5ZjI1YWM0MDUuLmU1NDVkMGUz M2Q0IDEwMDY0NAotLS0gYS9zcmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVkL3dpdGhvdXRfb3Zlcmxh cHMub3V0CisrKyBiL3NyYy90ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvd2l0aG91dF9vdmVybGFwcy5v dXQKQEAgLTE1Myw2ICsxNTMsNzYgQEAgU0VMRUNUIHBnX2dldF9pbmRleGRlZihjb25pbmRpZCwg MCwgdHJ1ZSkgRlJPTSBwZ19jb25zdHJhaW50IFdIRVJFIGNvbm5hbWUgPSAndGUKICBDUkVBVEUg VU5JUVVFIElOREVYIHRlbXBvcmFsX3JuZzJfcGsgT04gdGVtcG9yYWxfcm5nMiBVU0lORyBnaXN0 IChpZDEsIGlkMiwgdmFsaWRfYXQpCiAoMSByb3cpCiAKKy0tIFBLIHdpdGggb25lIGNvbHVtbiBw bHVzIGEgUEVSSU9EOgorQ1JFQVRFIFRBQkxFIHRlbXBvcmFsX3BlciAoCisgIGlkIGludDRyYW5n ZSwKKyAgdmFsaWRfZnJvbSBkYXRlLAorICB2YWxpZF90aWwgZGF0ZSwKKyAgUEVSSU9EIEZPUiB2 YWxpZF9hdCAodmFsaWRfZnJvbSwgdmFsaWRfdGlsKSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9w ZXJfcGsgUFJJTUFSWSBLRVkgKGlkLCB2YWxpZF9hdCBXSVRIT1VUIE9WRVJMQVBTKQorKTsKK1xk IHRlbXBvcmFsX3BlcgorICAgICAgICAgICAgICAgVGFibGUgInB1YmxpYy50ZW1wb3JhbF9wZXIi CisgICBDb2x1bW4gICB8ICAgVHlwZSAgICB8IENvbGxhdGlvbiB8IE51bGxhYmxlIHwgRGVmYXVs dCAKKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLSstLS0tLS0tLS0tLSstLS0tLS0tLS0tKy0tLS0t LS0tLQorIGlkICAgICAgICAgfCBpbnQ0cmFuZ2UgfCAgICAgICAgICAgfCBub3QgbnVsbCB8IAor IHZhbGlkX2Zyb20gfCBkYXRlICAgICAgfCAgICAgICAgICAgfCAgICAgICAgICB8IAorIHZhbGlk X3RpbCAgfCBkYXRlICAgICAgfCAgICAgICAgICAgfCAgICAgICAgICB8IAorUGVyaW9kczoKKyAg ICB2YWxpZF9hdCAodmFsaWRfZnJvbSwgdmFsaWRfdGlsKQorSW5kZXhlczoKKyAgICAidGVtcG9y YWxfcGVyX3BrIiBQUklNQVJZIEtFWSAoaWQsIHZhbGlkX2F0IFdJVEhPVVQgT1ZFUkxBUFMpCitD aGVjayBjb25zdHJhaW50czoKKyAgICAidGVtcG9yYWxfcGVyX3ZhbGlkX2F0X2NoZWNrIiBDSEVD SyAodmFsaWRfZnJvbSA8IHZhbGlkX3RpbCkKKworU0VMRUNUIHBnX2dldF9jb25zdHJhaW50ZGVm KG9pZCkgRlJPTSBwZ19jb25zdHJhaW50IFdIRVJFIGNvbm5hbWUgPSAndGVtcG9yYWxfcGVyX3Br JzsKKyAgICAgICAgICAgIHBnX2dldF9jb25zdHJhaW50ZGVmICAgICAgICAgICAgIAorLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgUFJJTUFSWSBLRVkgKGlk LCB2YWxpZF9hdCBXSVRIT1VUIE9WRVJMQVBTKQorKDEgcm93KQorCitTRUxFQ1QgcGdfZ2V0X2lu ZGV4ZGVmKGNvbmluZGlkLCAwLCB0cnVlKSBGUk9NIHBnX2NvbnN0cmFpbnQgV0hFUkUgY29ubmFt ZSA9ICd0ZW1wb3JhbF9wZXJfcGsnOworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBw Z19nZXRfaW5kZXhkZWYgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLQorIENSRUFURSBVTklRVUUgSU5ERVggdGVtcG9yYWxfcGVyX3BrIE9OIHRl bXBvcmFsX3BlciBVU0lORyBnaXN0IChpZCwgdmFsaWRfYXQpCisoMSByb3cpCisKKy0tIFBLIHdp dGggdHdvIGNvbHVtbnMgcGx1cyBhIFBFUklPRDoKK0NSRUFURSBUQUJMRSB0ZW1wb3JhbF9wZXIy ICgKKyAgaWQxIGludDRyYW5nZSwKKyAgaWQyIGludDRyYW5nZSwKKyAgdmFsaWRfZnJvbSBkYXRl LAorICB2YWxpZF90aWwgZGF0ZSwKKyAgUEVSSU9EIEZPUiB2YWxpZF9hdCAodmFsaWRfZnJvbSwg dmFsaWRfdGlsKSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9wZXIyX3BrIFBSSU1BUlkgS0VZIChp ZDEsIGlkMiwgdmFsaWRfYXQgV0lUSE9VVCBPVkVSTEFQUykKKyk7CitcZCB0ZW1wb3JhbF9wZXIy CisgICAgICAgICAgICAgIFRhYmxlICJwdWJsaWMudGVtcG9yYWxfcGVyMiIKKyAgIENvbHVtbiAg IHwgICBUeXBlICAgIHwgQ29sbGF0aW9uIHwgTnVsbGFibGUgfCBEZWZhdWx0IAorLS0tLS0tLS0t LS0tKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rLS0tLS0tLS0tCisgaWQxICAg ICAgICB8IGludDRyYW5nZSB8ICAgICAgICAgICB8IG5vdCBudWxsIHwgCisgaWQyICAgICAgICB8 IGludDRyYW5nZSB8ICAgICAgICAgICB8IG5vdCBudWxsIHwgCisgdmFsaWRfZnJvbSB8IGRhdGUg ICAgICB8ICAgICAgICAgICB8ICAgICAgICAgIHwgCisgdmFsaWRfdGlsICB8IGRhdGUgICAgICB8 ICAgICAgICAgICB8ICAgICAgICAgIHwgCitQZXJpb2RzOgorICAgIHZhbGlkX2F0ICh2YWxpZF9m cm9tLCB2YWxpZF90aWwpCitJbmRleGVzOgorICAgICJ0ZW1wb3JhbF9wZXIyX3BrIiBQUklNQVJZ IEtFWSAoaWQxLCBpZDIsIHZhbGlkX2F0IFdJVEhPVVQgT1ZFUkxBUFMpCitDaGVjayBjb25zdHJh aW50czoKKyAgICAidGVtcG9yYWxfcGVyMl92YWxpZF9hdF9jaGVjayIgQ0hFQ0sgKHZhbGlkX2Zy b20gPCB2YWxpZF90aWwpCisKK1NFTEVDVCBwZ19nZXRfY29uc3RyYWludGRlZihvaWQpIEZST00g cGdfY29uc3RyYWludCBXSEVSRSBjb25uYW1lID0gJ3RlbXBvcmFsX3BlcjJfcGsnOworICAgICAg ICAgICAgICAgcGdfZ2V0X2NvbnN0cmFpbnRkZWYgICAgICAgICAgICAgICAgCistLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBQUklNQVJZIEtFWSAo aWQxLCBpZDIsIHZhbGlkX2F0IFdJVEhPVVQgT1ZFUkxBUFMpCisoMSByb3cpCisKK1NFTEVDVCBw Z19nZXRfaW5kZXhkZWYoY29uaW5kaWQsIDAsIHRydWUpIEZST00gcGdfY29uc3RyYWludCBXSEVS RSBjb25uYW1lID0gJ3RlbXBvcmFsX3BlcjJfcGsnOworICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgcGdfZ2V0X2luZGV4ZGVmICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgCistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBDUkVBVEUgVU5JUVVFIElO REVYIHRlbXBvcmFsX3BlcjJfcGsgT04gdGVtcG9yYWxfcGVyMiBVU0lORyBnaXN0IChpZDEsIGlk MiwgdmFsaWRfYXQpCisoMSByb3cpCisKIC0tIFBLIHdpdGggYSBjdXN0b20gcmFuZ2UgdHlwZToK IENSRUFURSBUWVBFIHRleHRyYW5nZTIgQVMgcmFuZ2UgKHN1YnR5cGU9dGV4dCwgY29sbGF0aW9u PSJDIik7CiBDUkVBVEUgVEFCTEUgdGVtcG9yYWxfcm5nMyAoCkBAIC0zMDAsNiArMzcwLDc4IEBA IFNFTEVDVCBwZ19nZXRfaW5kZXhkZWYoY29uaW5kaWQsIDAsIHRydWUpIEZST00gcGdfY29uc3Ry YWludCBXSEVSRSBjb25uYW1lID0gJ3RlCiAoMSByb3cpCiAKIERST1AgVEFCTEUgdGVtcG9yYWxf cm5nMzsKKy0tIFVOSVFVRSB3aXRoIG9uZSBjb2x1bW4gcGx1cyBhIFBFUklPRDoKK0NSRUFURSBU QUJMRSB0ZW1wb3JhbF9wZXIzICgKKyAgaWQgaW50NHJhbmdlLAorICB2YWxpZF9mcm9tIGRhdGUs CisgIHZhbGlkX3RpbCBkYXRlLAorICBQRVJJT0QgRk9SIHZhbGlkX2F0ICh2YWxpZF9mcm9tLCB2 YWxpZF90aWwpLAorICBDT05TVFJBSU5UIHRlbXBvcmFsX3BlcjNfdXEgVU5JUVVFIChpZCwgdmFs aWRfYXQgV0lUSE9VVCBPVkVSTEFQUykKKyk7CitcZCB0ZW1wb3JhbF9wZXIzCisgICAgICAgICAg ICAgIFRhYmxlICJwdWJsaWMudGVtcG9yYWxfcGVyMyIKKyAgIENvbHVtbiAgIHwgICBUeXBlICAg IHwgQ29sbGF0aW9uIHwgTnVsbGFibGUgfCBEZWZhdWx0IAorLS0tLS0tLS0tLS0tKy0tLS0tLS0t LS0tKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rLS0tLS0tLS0tCisgaWQgICAgICAgICB8IGludDRy YW5nZSB8ICAgICAgICAgICB8ICAgICAgICAgIHwgCisgdmFsaWRfZnJvbSB8IGRhdGUgICAgICB8 ICAgICAgICAgICB8ICAgICAgICAgIHwgCisgdmFsaWRfdGlsICB8IGRhdGUgICAgICB8ICAgICAg ICAgICB8ICAgICAgICAgIHwgCitQZXJpb2RzOgorICAgIHZhbGlkX2F0ICh2YWxpZF9mcm9tLCB2 YWxpZF90aWwpCitJbmRleGVzOgorICAgICJ0ZW1wb3JhbF9wZXIzX3VxIiBVTklRVUUgKGlkLCB2 YWxpZF9hdCBXSVRIT1VUIE9WRVJMQVBTKQorQ2hlY2sgY29uc3RyYWludHM6CisgICAgInRlbXBv cmFsX3BlcjNfdmFsaWRfYXRfY2hlY2siIENIRUNLICh2YWxpZF9mcm9tIDwgdmFsaWRfdGlsKQor CitTRUxFQ1QgcGdfZ2V0X2NvbnN0cmFpbnRkZWYob2lkKSBGUk9NIHBnX2NvbnN0cmFpbnQgV0hF UkUgY29ubmFtZSA9ICd0ZW1wb3JhbF9wZXIzX3VxJzsKKyAgICAgICAgICBwZ19nZXRfY29uc3Ry YWludGRlZiAgICAgICAgICAKKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0KKyBVTklRVUUgKGlkLCB2YWxpZF9hdCBXSVRIT1VUIE9WRVJMQVBTKQorKDEgcm93KQorCitT RUxFQ1QgcGdfZ2V0X2luZGV4ZGVmKGNvbmluZGlkLCAwLCB0cnVlKSBGUk9NIHBnX2NvbnN0cmFp bnQgV0hFUkUgY29ubmFtZSA9ICd0ZW1wb3JhbF9wZXIzX3VxJzsKKyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIHBnX2dldF9pbmRleGRlZiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIAorLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgQ1JFQVRFIFVOSVFVRSBJTkRFWCB0 ZW1wb3JhbF9wZXIzX3VxIE9OIHRlbXBvcmFsX3BlcjMgVVNJTkcgZ2lzdCAoaWQsIHZhbGlkX2F0 KQorKDEgcm93KQorCitEUk9QIFRBQkxFIHRlbXBvcmFsX3BlcjM7CistLSBVTklRVUUgd2l0aCB0 d28gY29sdW1ucyBwbHVzIGEgUEVSSU9EOgorQ1JFQVRFIFRBQkxFIHRlbXBvcmFsX3BlcjMgKAor ICBpZDEgaW50NHJhbmdlLAorICBpZDIgaW50NHJhbmdlLAorICB2YWxpZF9mcm9tIGRhdGUsCisg IHZhbGlkX3RpbCBkYXRlLAorICBQRVJJT0QgRk9SIHZhbGlkX2F0ICh2YWxpZF9mcm9tLCB2YWxp ZF90aWwpLAorICBDT05TVFJBSU5UIHRlbXBvcmFsX3BlcjNfdXEgVU5JUVVFIChpZDEsIGlkMiwg dmFsaWRfYXQgV0lUSE9VVCBPVkVSTEFQUykKKyk7CitcZCB0ZW1wb3JhbF9wZXIzCisgICAgICAg ICAgICAgIFRhYmxlICJwdWJsaWMudGVtcG9yYWxfcGVyMyIKKyAgIENvbHVtbiAgIHwgICBUeXBl ICAgIHwgQ29sbGF0aW9uIHwgTnVsbGFibGUgfCBEZWZhdWx0IAorLS0tLS0tLS0tLS0tKy0tLS0t LS0tLS0tKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rLS0tLS0tLS0tCisgaWQxICAgICAgICB8IGlu dDRyYW5nZSB8ICAgICAgICAgICB8ICAgICAgICAgIHwgCisgaWQyICAgICAgICB8IGludDRyYW5n ZSB8ICAgICAgICAgICB8ICAgICAgICAgIHwgCisgdmFsaWRfZnJvbSB8IGRhdGUgICAgICB8ICAg ICAgICAgICB8ICAgICAgICAgIHwgCisgdmFsaWRfdGlsICB8IGRhdGUgICAgICB8ICAgICAgICAg ICB8ICAgICAgICAgIHwgCitQZXJpb2RzOgorICAgIHZhbGlkX2F0ICh2YWxpZF9mcm9tLCB2YWxp ZF90aWwpCitJbmRleGVzOgorICAgICJ0ZW1wb3JhbF9wZXIzX3VxIiBVTklRVUUgKGlkMSwgaWQy LCB2YWxpZF9hdCBXSVRIT1VUIE9WRVJMQVBTKQorQ2hlY2sgY29uc3RyYWludHM6CisgICAgInRl bXBvcmFsX3BlcjNfdmFsaWRfYXRfY2hlY2siIENIRUNLICh2YWxpZF9mcm9tIDwgdmFsaWRfdGls KQorCitTRUxFQ1QgcGdfZ2V0X2NvbnN0cmFpbnRkZWYob2lkKSBGUk9NIHBnX2NvbnN0cmFpbnQg V0hFUkUgY29ubmFtZSA9ICd0ZW1wb3JhbF9wZXIzX3VxJzsKKyAgICAgICAgICAgICBwZ19nZXRf Y29uc3RyYWludGRlZiAgICAgICAgICAgICAKKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0KKyBVTklRVUUgKGlkMSwgaWQyLCB2YWxpZF9hdCBXSVRIT1VUIE9W RVJMQVBTKQorKDEgcm93KQorCitTRUxFQ1QgcGdfZ2V0X2luZGV4ZGVmKGNvbmluZGlkLCAwLCB0 cnVlKSBGUk9NIHBnX2NvbnN0cmFpbnQgV0hFUkUgY29ubmFtZSA9ICd0ZW1wb3JhbF9wZXIzX3Vx JzsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBnX2dldF9pbmRleGRlZiAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tCisgQ1JFQVRFIFVOSVFVRSBJTkRFWCB0ZW1wb3JhbF9wZXIzX3VxIE9OIHRlbXBv cmFsX3BlcjMgVVNJTkcgZ2lzdCAoaWQxLCBpZDIsIHZhbGlkX2F0KQorKDEgcm93KQorCitEUk9Q IFRBQkxFIHRlbXBvcmFsX3BlcjM7CiAtLSBVTklRVUUgd2l0aCBhIGN1c3RvbSByYW5nZSB0eXBl OgogQ1JFQVRFIFRZUEUgdGV4dHJhbmdlMiBBUyByYW5nZSAoc3VidHlwZT10ZXh0LCBjb2xsYXRp b249IkMiKTsKIENSRUFURSBUQUJMRSB0ZW1wb3JhbF9ybmczICgKQEAgLTM3Nyw2ICs1MTksMTA2 IEBAIEFMVEVSIFRBQkxFIHRlbXBvcmFsMwogICBBREQgQ09OU1RSQUlOVCB0ZW1wb3JhbDNfdXEK ICAgVU5JUVVFIChpZCwgdmFsaWRfYXQgV0lUSE9VVCBPVkVSTEFQUyk7CiBEUk9QIFRBQkxFIHRl bXBvcmFsMzsKKy0tIFBSSU1BUlkgS0VZIHdpdGggUEVSSU9EIGFscmVhZHkgdGhlcmUKK0NSRUFU RSBUQUJMRSB0ZW1wb3JhbDMgKAorICBpZCBpbnQ0cmFuZ2UsCisgIHZhbGlkX2Zyb20gZGF0ZSwK KyAgdmFsaWRfdGlsIGRhdGUsCisgIFBFUklPRCBGT1IgdmFsaWRfYXQgKHZhbGlkX2Zyb20sIHZh bGlkX3RpbCkKKyk7CitBTFRFUiBUQUJMRSB0ZW1wb3JhbDMKKyAgQUREIENPTlNUUkFJTlQgdGVt cG9yYWwzX3BrCisgIFBSSU1BUlkgS0VZIChpZCwgdmFsaWRfYXQgV0lUSE9VVCBPVkVSTEFQUyk7 CitcZCB0ZW1wb3JhbDMKKyAgICAgICAgICAgICAgICBUYWJsZSAicHVibGljLnRlbXBvcmFsMyIK KyAgIENvbHVtbiAgIHwgICBUeXBlICAgIHwgQ29sbGF0aW9uIHwgTnVsbGFibGUgfCBEZWZhdWx0 IAorLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rLS0tLS0t LS0tCisgaWQgICAgICAgICB8IGludDRyYW5nZSB8ICAgICAgICAgICB8IG5vdCBudWxsIHwgCisg dmFsaWRfZnJvbSB8IGRhdGUgICAgICB8ICAgICAgICAgICB8ICAgICAgICAgIHwgCisgdmFsaWRf dGlsICB8IGRhdGUgICAgICB8ICAgICAgICAgICB8ICAgICAgICAgIHwgCitQZXJpb2RzOgorICAg IHZhbGlkX2F0ICh2YWxpZF9mcm9tLCB2YWxpZF90aWwpCitJbmRleGVzOgorICAgICJ0ZW1wb3Jh bDNfcGsiIFBSSU1BUlkgS0VZIChpZCwgdmFsaWRfYXQgV0lUSE9VVCBPVkVSTEFQUykKK0NoZWNr IGNvbnN0cmFpbnRzOgorICAgICJ0ZW1wb3JhbDNfdmFsaWRfYXRfY2hlY2siIENIRUNLICh2YWxp ZF9mcm9tIDwgdmFsaWRfdGlsKQorCitEUk9QIFRBQkxFIHRlbXBvcmFsMzsKKy0tIFBSSU1BUlkg S0VZIHdpdGggUEVSSU9EIHRvbworQ1JFQVRFIFRBQkxFIHRlbXBvcmFsMyAoCisgIGlkIGludDRy YW5nZSwKKyAgdmFsaWRfZnJvbSBkYXRlLAorICB2YWxpZF90aWwgZGF0ZQorKTsKK0FMVEVSIFRB QkxFIHRlbXBvcmFsMworICBBREQgUEVSSU9EIEZPUiB2YWxpZF9hdCAodmFsaWRfZnJvbSwgdmFs aWRfdGlsKSwKKyAgQUREIENPTlNUUkFJTlQgdGVtcG9yYWwzX3BrCisgIFBSSU1BUlkgS0VZIChp ZCwgdmFsaWRfYXQgV0lUSE9VVCBPVkVSTEFQUyk7CitcZCB0ZW1wb3JhbDMKKyAgICAgICAgICAg ICAgICBUYWJsZSAicHVibGljLnRlbXBvcmFsMyIKKyAgIENvbHVtbiAgIHwgICBUeXBlICAgIHwg Q29sbGF0aW9uIHwgTnVsbGFibGUgfCBEZWZhdWx0IAorLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0t Ky0tLS0tLS0tLS0tKy0tLS0tLS0tLS0rLS0tLS0tLS0tCisgaWQgICAgICAgICB8IGludDRyYW5n ZSB8ICAgICAgICAgICB8IG5vdCBudWxsIHwgCisgdmFsaWRfZnJvbSB8IGRhdGUgICAgICB8ICAg ICAgICAgICB8ICAgICAgICAgIHwgCisgdmFsaWRfdGlsICB8IGRhdGUgICAgICB8ICAgICAgICAg ICB8ICAgICAgICAgIHwgCitQZXJpb2RzOgorICAgIHZhbGlkX2F0ICh2YWxpZF9mcm9tLCB2YWxp ZF90aWwpCitJbmRleGVzOgorICAgICJ0ZW1wb3JhbDNfcGsiIFBSSU1BUlkgS0VZIChpZCwgdmFs aWRfYXQgV0lUSE9VVCBPVkVSTEFQUykKK0NoZWNrIGNvbnN0cmFpbnRzOgorICAgICJ0ZW1wb3Jh bDNfdmFsaWRfYXRfY2hlY2siIENIRUNLICh2YWxpZF9mcm9tIDwgdmFsaWRfdGlsKQorCitEUk9Q IFRBQkxFIHRlbXBvcmFsMzsKKy0tIFVOSVFVRSB3aXRoIFBFUklPRCBhbHJlYWR5IHRoZXJlCitD UkVBVEUgVEFCTEUgdGVtcG9yYWwzICgKKyAgaWQgaW50NHJhbmdlLAorICB2YWxpZF9mcm9tIGRh dGUsCisgIHZhbGlkX3RpbCBkYXRlLAorICBQRVJJT0QgRk9SIHZhbGlkX2F0ICh2YWxpZF9mcm9t LCB2YWxpZF90aWwpCispOworQUxURVIgVEFCTEUgdGVtcG9yYWwzCisgIEFERCBDT05TVFJBSU5U IHRlbXBvcmFsM191cQorICBVTklRVUUgKGlkLCB2YWxpZF9hdCBXSVRIT1VUIE9WRVJMQVBTKTsK K1xkIHRlbXBvcmFsMworICAgICAgICAgICAgICAgIFRhYmxlICJwdWJsaWMudGVtcG9yYWwzIgor ICAgQ29sdW1uICAgfCAgIFR5cGUgICAgfCBDb2xsYXRpb24gfCBOdWxsYWJsZSB8IERlZmF1bHQg CistLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0rLS0tLS0tLS0tLSstLS0tLS0t LS0KKyBpZCAgICAgICAgIHwgaW50NHJhbmdlIHwgICAgICAgICAgIHwgICAgICAgICAgfCAKKyB2 YWxpZF9mcm9tIHwgZGF0ZSAgICAgIHwgICAgICAgICAgIHwgICAgICAgICAgfCAKKyB2YWxpZF90 aWwgIHwgZGF0ZSAgICAgIHwgICAgICAgICAgIHwgICAgICAgICAgfCAKK1BlcmlvZHM6CisgICAg dmFsaWRfYXQgKHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkKK0luZGV4ZXM6CisgICAgInRlbXBvcmFs M191cSIgVU5JUVVFIChpZCwgdmFsaWRfYXQgV0lUSE9VVCBPVkVSTEFQUykKK0NoZWNrIGNvbnN0 cmFpbnRzOgorICAgICJ0ZW1wb3JhbDNfdmFsaWRfYXRfY2hlY2siIENIRUNLICh2YWxpZF9mcm9t IDwgdmFsaWRfdGlsKQorCitEUk9QIFRBQkxFIHRlbXBvcmFsMzsKKy0tIFVOSVFVRSB3aXRoIFBF UklPRCB0b28KK0NSRUFURSBUQUJMRSB0ZW1wb3JhbDMgKAorICBpZCBpbnQ0cmFuZ2UsCisgIHZh bGlkX2Zyb20gZGF0ZSwKKyAgdmFsaWRfdGlsIGRhdGUKKyk7CitBTFRFUiBUQUJMRSB0ZW1wb3Jh bDMKKyAgQUREIFBFUklPRCBGT1IgdmFsaWRfYXQgKHZhbGlkX2Zyb20sIHZhbGlkX3RpbCksCisg IEFERCBDT05TVFJBSU5UIHRlbXBvcmFsM191cQorICBVTklRVUUgKGlkLCB2YWxpZF9hdCBXSVRI T1VUIE9WRVJMQVBTKTsKK1xkIHRlbXBvcmFsMworICAgICAgICAgICAgICAgIFRhYmxlICJwdWJs aWMudGVtcG9yYWwzIgorICAgQ29sdW1uICAgfCAgIFR5cGUgICAgfCBDb2xsYXRpb24gfCBOdWxs YWJsZSB8IERlZmF1bHQgCistLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0rLS0t LS0tLS0tLSstLS0tLS0tLS0KKyBpZCAgICAgICAgIHwgaW50NHJhbmdlIHwgICAgICAgICAgIHwg ICAgICAgICAgfCAKKyB2YWxpZF9mcm9tIHwgZGF0ZSAgICAgIHwgICAgICAgICAgIHwgICAgICAg ICAgfCAKKyB2YWxpZF90aWwgIHwgZGF0ZSAgICAgIHwgICAgICAgICAgIHwgICAgICAgICAgfCAK K1BlcmlvZHM6CisgICAgdmFsaWRfYXQgKHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkKK0luZGV4ZXM6 CisgICAgInRlbXBvcmFsM191cSIgVU5JUVVFIChpZCwgdmFsaWRfYXQgV0lUSE9VVCBPVkVSTEFQ UykKK0NoZWNrIGNvbnN0cmFpbnRzOgorICAgICJ0ZW1wb3JhbDNfdmFsaWRfYXRfY2hlY2siIENI RUNLICh2YWxpZF9mcm9tIDwgdmFsaWRfdGlsKQorCitEUk9QIFRBQkxFIHRlbXBvcmFsMzsKIC0t CiAtLSByYW5nZSBQSzogdGVzdCB3aXRoIGV4aXN0aW5nIHJvd3MKIC0tCkBAIC04NzQsNiArMTEx NiwyODQgQEAgU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9tbHRybmczIE9SREVSIEJZIGlkLCB2YWxp ZF9hdDsKIAogRFJPUCBUQUJMRSB0ZW1wb3JhbF9tbHRybmczOwogLS0KKy0tIFBFUklPRCBQSzog dGVzdCB3aXRoIGV4aXN0aW5nIHJvd3MKKy0tCitBTFRFUiBUQUJMRSB0ZW1wb3JhbF9wZXIgRFJP UCBDT05TVFJBSU5UIHRlbXBvcmFsX3Blcl9wazsKKy0tIG9rYXk6CitJTlNFUlQgSU5UTyB0ZW1w b3JhbF9wZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1sxLDIpJywgJzIw MTgtMDEtMDInLCAnMjAxOC0wMi0wMycpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyIChpZCwg dmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbMSwyKScsICcyMDE4LTAzLTAzJywgJzIw MTgtMDQtMDQnKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlciAoaWQsIHZhbGlkX2Zyb20sIHZh bGlkX3RpbCkgVkFMVUVTICgnWzIsMyknLCAnMjAxOC0wMS0wMScsICcyMDE4LTAxLTA1Jyk7CitJ TlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVF UyAoJ1szLDQpJywgJzIwMTgtMDEtMDEnLCBOVUxMKTsKK0FMVEVSIFRBQkxFIHRlbXBvcmFsX3Bl ciBBREQgQ09OU1RSQUlOVCB0ZW1wb3JhbF9wZXJfcGsgUFJJTUFSWSBLRVkgKGlkLCB2YWxpZF9h dCBXSVRIT1VUIE9WRVJMQVBTKTsKK0FMVEVSIFRBQkxFIHRlbXBvcmFsX3BlciBEUk9QIENPTlNU UkFJTlQgdGVtcG9yYWxfcGVyX3BrOworLS0gc2hvdWxkIGZhaWw6CitCRUdJTjsKKyAgSU5TRVJU IElOVE8gdGVtcG9yYWxfcGVyIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdb MSwyKScsICcyMDE4LTAxLTAxJywgJzIwMTgtMDEtMDUnKTsKKyAgQUxURVIgVEFCTEUgdGVtcG9y YWxfcGVyIEFERCBDT05TVFJBSU5UIHRlbXBvcmFsX3Blcl9wayBQUklNQVJZIEtFWSAoaWQsIHZh bGlkX2F0IFdJVEhPVVQgT1ZFUkxBUFMpOworRVJST1I6ICBjb3VsZCBub3QgY3JlYXRlIGV4Y2x1 c2lvbiBjb25zdHJhaW50ICJ0ZW1wb3JhbF9wZXJfcGsiCitERVRBSUw6ICBLZXkgKGlkLCB2YWxp ZF9hdCk9KFsxLDIpLCBbMjAxOC0wMS0wMiwyMDE4LTAyLTAzKSkgY29uZmxpY3RzIHdpdGgga2V5 IChpZCwgdmFsaWRfYXQpPShbMSwyKSwgWzIwMTgtMDEtMDEsMjAxOC0wMS0wNSkpLgorUk9MTEJB Q0s7CistLSByZWplY3RzIGVtcHR5OgorQkVHSU47CisgIEFMVEVSIFRBQkxFIHRlbXBvcmFsX3Bl ciBEUk9QIFBFUklPRCBGT1IgdmFsaWRfYXQ7CisgIElOU0VSVCBJTlRPIHRlbXBvcmFsX3BlciAo aWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzMsNCknLCAnMjAyMC0wMS0wMScs ICcyMDIwLTAxLTAxJyk7CisgIEFMVEVSIFRBQkxFIHRlbXBvcmFsX3BlciBBREQgUEVSSU9EIEZP UiB2YWxpZF9hdCAodmFsaWRfZnJvbSwgdmFsaWRfdGlsKTsKK0VSUk9SOiAgY2hlY2sgY29uc3Ry YWludCAidGVtcG9yYWxfcGVyX3ZhbGlkX2F0X2NoZWNrIiBvZiByZWxhdGlvbiAidGVtcG9yYWxf cGVyIiBpcyB2aW9sYXRlZCBieSBzb21lIHJvdworUk9MTEJBQ0s7CitBTFRFUiBUQUJMRSB0ZW1w b3JhbF9wZXIgQUREIENPTlNUUkFJTlQgdGVtcG9yYWxfcGVyX3BrIFBSSU1BUlkgS0VZIChpZCwg dmFsaWRfYXQgV0lUSE9VVCBPVkVSTEFQUyk7CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9wZXI7Cist LQorLS0gUEVSSU9EIFBLOiB0ZXN0IGluc2VydHMKKy0tCistLSBva2F5OgorSU5TRVJUIElOVE8g dGVtcG9yYWxfcGVyIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbMSwyKScs ICcyMDE4LTAxLTAyJywgJzIwMTgtMDItMDMnKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlciAo aWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzEsMiknLCAnMjAxOC0wMy0wMycs ICcyMDE4LTA0LTA0Jyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIgKGlkLCB2YWxpZF9mcm9t LCB2YWxpZF90aWwpIFZBTFVFUyAoJ1syLDMpJywgJzIwMTgtMDEtMDEnLCAnMjAxOC0wMS0wNScp OworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBW QUxVRVMgKCdbMyw0KScsICcyMDE4LTAxLTAxJywgTlVMTCk7CistLSBzaG91bGQgZmFpbDoKK0lO U0VSVCBJTlRPIHRlbXBvcmFsX3BlciAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVT ICgnWzEsMiknLCAnMjAxOC0wMS0wMScsICcyMDE4LTAxLTA1Jyk7CitFUlJPUjogIGNvbmZsaWN0 aW5nIGtleSB2YWx1ZSB2aW9sYXRlcyBleGNsdXNpb24gY29uc3RyYWludCAidGVtcG9yYWxfcGVy X3BrIgorREVUQUlMOiAgS2V5IChpZCwgdmFsaWRfYXQpPShbMSwyKSwgWzIwMTgtMDEtMDEsMjAx OC0wMS0wNSkpIGNvbmZsaWN0cyB3aXRoIGV4aXN0aW5nIGtleSAoaWQsIHZhbGlkX2F0KT0oWzEs MiksIFsyMDE4LTAxLTAyLDIwMTgtMDItMDMpKS4KK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlciAo aWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTIChOVUxMLCAnMjAxOC0wMS0wMScsICcy MDE4LTAxLTA1Jyk7CitFUlJPUjogIG51bGwgdmFsdWUgaW4gY29sdW1uICJpZCIgb2YgcmVsYXRp b24gInRlbXBvcmFsX3BlciIgdmlvbGF0ZXMgbm90LW51bGwgY29uc3RyYWludAorREVUQUlMOiAg RmFpbGluZyByb3cgY29udGFpbnMgKG51bGwsIDIwMTgtMDEtMDEsIDIwMTgtMDEtMDUsIFsyMDE4 LTAxLTAxLDIwMTgtMDEtMDUpKS4KKy0tIHJlamVjdHMgZW1wdHk6CitJTlNFUlQgSU5UTyB0ZW1w b3JhbF9wZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1szLDQpJywgJzIw MjAtMDEtMDEnLCAnMjAyMC0wMS0wMScpOworRVJST1I6ICBuZXcgcm93IGZvciByZWxhdGlvbiAi dGVtcG9yYWxfcGVyIiB2aW9sYXRlcyBjaGVjayBjb25zdHJhaW50ICJ0ZW1wb3JhbF9wZXJfdmFs aWRfYXRfY2hlY2siCitERVRBSUw6ICBGYWlsaW5nIHJvdyBjb250YWlucyAoWzMsNCksIDIwMjAt MDEtMDEsIDIwMjAtMDEtMDEsIGVtcHR5KS4KK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfcGVyIE9S REVSIEJZIGlkLCB2YWxpZF9hdDsKKyAgaWQgICB8IHZhbGlkX2Zyb20gfCB2YWxpZF90aWwgIAor LS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tCisgWzEsMikgfCAyMDE4LTAxLTAyIHwg MjAxOC0wMi0wMworIFsxLDIpIHwgMjAxOC0wMy0wMyB8IDIwMTgtMDQtMDQKKyBbMiwzKSB8IDIw MTgtMDEtMDEgfCAyMDE4LTAxLTA1CisgWzMsNCkgfCAyMDE4LTAxLTAxIHwgCisoNCByb3dzKQor CistLQorLS0gUEVSSU9EIFBLOiB0ZXN0IHVwZGF0ZXMKKy0tCistLSB1cGRhdGUgdGhlIHNjYWxh ciBwYXJ0CitVUERBVEUgIHRlbXBvcmFsX3BlcgorU0VUICAgICBpZCA9ICdbMTEsMTIpJworV0hF UkUgICBpZCA9ICdbMSwyKScKK0FORCAgICAgdmFsaWRfYXQgQD4gJzIwMTgtMDEtMTUnOjpkYXRl OworLS0gdXBkYXRlIHRoZSBQRVJJT0QgYm91bmRzCitVUERBVEUgIHRlbXBvcmFsX3BlcgorU0VU ICAgICB2YWxpZF9mcm9tID0gJzIwMjAtMDEtMDEnLAorICAgICAgICB2YWxpZF90aWwgPSAnMjAy MS0wMS0wMScKK1dIRVJFICAgaWQgPSAnWzExLDEyKScKK0FORCAgICAgdmFsaWRfYXQgQD4gJzIw MTgtMDEtMTUnOjpkYXRlOworLS0gdXBkYXRlIGJvdGggYXQgb25jZQorVVBEQVRFICB0ZW1wb3Jh bF9wZXIKK1NFVCAgICAgaWQgPSAnWzIxLDIyKScsCisgICAgICAgIHZhbGlkX2Zyb20gPSAnMjAx OC0wMS0wMicsCisgICAgICAgIHZhbGlkX3RpbCA9ICcyMDE4LTAyLTAzJworV0hFUkUgICBpZCA9 ICdbMTEsMTIpJworQU5EICAgICB2YWxpZF9hdCBAPiAnMjAyMC0wMS0xNSc6OmRhdGU7CitTRUxF Q1QgKiBGUk9NIHRlbXBvcmFsX3BlciBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisgICBpZCAgICB8 IHZhbGlkX2Zyb20gfCB2YWxpZF90aWwgIAorLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0t LS0tLS0KKyBbMSwyKSAgIHwgMjAxOC0wMy0wMyB8IDIwMTgtMDQtMDQKKyBbMiwzKSAgIHwgMjAx OC0wMS0wMSB8IDIwMTgtMDEtMDUKKyBbMyw0KSAgIHwgMjAxOC0wMS0wMSB8IAorIFsyMSwyMikg fCAyMDE4LTAxLTAyIHwgMjAxOC0wMi0wMworKDQgcm93cykKKworLS0gc2hvdWxkIGZhaWw6CitV UERBVEUgIHRlbXBvcmFsX3BlcgorU0VUICAgICBpZCA9ICdbMSwyKScsCisgICAgICAgIHZhbGlk X2Zyb20gPSAnMjAxOC0wMy0wNScsCisgICAgICAgIHZhbGlkX3RpbCA9ICcyMDE4LTA1LTA1Jwor V0hFUkUgICBpZCA9ICdbMjEsMjIpJzsKK0VSUk9SOiAgY29uZmxpY3Rpbmcga2V5IHZhbHVlIHZp b2xhdGVzIGV4Y2x1c2lvbiBjb25zdHJhaW50ICJ0ZW1wb3JhbF9wZXJfcGsiCitERVRBSUw6ICBL ZXkgKGlkLCB2YWxpZF9hdCk9KFsxLDIpLCBbMjAxOC0wMy0wNSwyMDE4LTA1LTA1KSkgY29uZmxp Y3RzIHdpdGggZXhpc3Rpbmcga2V5IChpZCwgdmFsaWRfYXQpPShbMSwyKSwgWzIwMTgtMDMtMDMs MjAxOC0wNC0wNCkpLgorLS0gc2V0IHRoZSBzY2FsYXIgcGFydCB0byBOVUxMCitVUERBVEUgIHRl bXBvcmFsX3BlcgorU0VUICAgICBpZCA9IE5VTEwsCisgICAgICAgIHZhbGlkX2Zyb20gPSAnMjAx OC0wMy0wNScsCisgICAgICAgIHZhbGlkX3RpbCA9ICcyMDE4LTA1LTA1JworV0hFUkUgICBpZCA9 ICdbMjEsMjIpJzsKK0VSUk9SOiAgbnVsbCB2YWx1ZSBpbiBjb2x1bW4gImlkIiBvZiByZWxhdGlv biAidGVtcG9yYWxfcGVyIiB2aW9sYXRlcyBub3QtbnVsbCBjb25zdHJhaW50CitERVRBSUw6ICBG YWlsaW5nIHJvdyBjb250YWlucyAobnVsbCwgMjAxOC0wMy0wNSwgMjAxOC0wNS0wNSwgWzIwMTgt MDMtMDUsMjAxOC0wNS0wNSkpLgorLS0gc2V0IGEgUEVSSU9EIGJvdW5kIHRvIE5VTEwgKG9rYXkp CitVUERBVEUgIHRlbXBvcmFsX3BlcgorU0VUICAgICBpZCA9ICdbMSwyKScsCisgICAgICAgIHZh bGlkX2Zyb20gPSAnMjAxOC0wNC0wNCcsCisgICAgICAgIHZhbGlkX3RpbCA9IE5VTEwKK1dIRVJF ICAgaWQgPSAnWzIxLDIyKSc7CistLSByZWplY3RzIGVtcHR5OgorVVBEQVRFICB0ZW1wb3JhbF9w ZXIKK1NFVCAgICAgaWQgPSAnWzIxLDIyKScsCisgICAgICAgIHZhbGlkX2Zyb20gPSAnMjAyMC0w MS0wMScsCisgICAgICAgIHZhbGlkX3RpbCA9ICcyMDIwLTAxLTAxJworV0hFUkUgICBpZCA9ICdb MSwyKSc7CitFUlJPUjogIG5ldyByb3cgZm9yIHJlbGF0aW9uICJ0ZW1wb3JhbF9wZXIiIHZpb2xh dGVzIGNoZWNrIGNvbnN0cmFpbnQgInRlbXBvcmFsX3Blcl92YWxpZF9hdF9jaGVjayIKK0RFVEFJ TDogIEZhaWxpbmcgcm93IGNvbnRhaW5zIChbMjEsMjIpLCAyMDIwLTAxLTAxLCAyMDIwLTAxLTAx LCBlbXB0eSkuCitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX3BlciBPUkRFUiBCWSBpZCwgdmFsaWRf YXQ7CisgIGlkICAgfCB2YWxpZF9mcm9tIHwgdmFsaWRfdGlsICAKKy0tLS0tLS0rLS0tLS0tLS0t LS0tKy0tLS0tLS0tLS0tLQorIFsxLDIpIHwgMjAxOC0wMy0wMyB8IDIwMTgtMDQtMDQKKyBbMSwy KSB8IDIwMTgtMDQtMDQgfCAKKyBbMiwzKSB8IDIwMTgtMDEtMDEgfCAyMDE4LTAxLTA1CisgWzMs NCkgfCAyMDE4LTAxLTAxIHwgCisoNCByb3dzKQorCistLQorLS0gUEVSSU9EIFVROiB0ZXN0IHdp dGggZXhpc3Rpbmcgcm93cworLS0KK0NSRUFURSBUQUJMRSB0ZW1wb3JhbF9wZXIzICgKKyAgaWQg aW50NHJhbmdlLAorICB2YWxpZF9mcm9tIGRhdGUsCisgIHZhbGlkX3RpbCBkYXRlLAorICBQRVJJ T0QgRk9SIHZhbGlkX2F0ICh2YWxpZF9mcm9tLCB2YWxpZF90aWwpCispOworLS0gb2theToKK0lO U0VSVCBJTlRPIHRlbXBvcmFsX3BlcjMgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVF UyAoJ1sxLDIpJywgJzIwMTgtMDEtMDInLCAnMjAxOC0wMi0wMycpOworSU5TRVJUIElOVE8gdGVt cG9yYWxfcGVyMyAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzEsMiknLCAn MjAxOC0wMy0wMycsICcyMDE4LTA0LTA0Jyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIzIChp ZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbMiwzKScsICcyMDE4LTAxLTAxJywg JzIwMTgtMDEtMDUnKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlcjMgKGlkLCB2YWxpZF9mcm9t LCB2YWxpZF90aWwpIFZBTFVFUyAoJ1szLDQpJywgJzIwMTgtMDEtMDEnLCBOVUxMKTsKK0lOU0VS VCBJTlRPIHRlbXBvcmFsX3BlcjMgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAo TlVMTCwgJzIwMTgtMDEtMDEnLCAnMjAxOC0wMS0wNScpOworQUxURVIgVEFCTEUgdGVtcG9yYWxf cGVyMyBBREQgQ09OU1RSQUlOVCB0ZW1wb3JhbF9wZXIzX3VxIFVOSVFVRSAoaWQsIHZhbGlkX2F0 IFdJVEhPVVQgT1ZFUkxBUFMpOworQUxURVIgVEFCTEUgdGVtcG9yYWxfcGVyMyBEUk9QIENPTlNU UkFJTlQgdGVtcG9yYWxfcGVyM191cTsKKy0tIHNob3VsZCBmYWlsOgorQkVHSU47CisgIElOU0VS VCBJTlRPIHRlbXBvcmFsX3BlcjMgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAo J1sxLDIpJywgJzIwMTgtMDEtMDEnLCAnMjAxOC0wMS0wNScpOworICBBTFRFUiBUQUJMRSB0ZW1w b3JhbF9wZXIzIEFERCBDT05TVFJBSU5UIHRlbXBvcmFsX3BlcjNfdXEgVU5JUVVFIChpZCwgdmFs aWRfYXQgV0lUSE9VVCBPVkVSTEFQUyk7CitFUlJPUjogIGNvdWxkIG5vdCBjcmVhdGUgZXhjbHVz aW9uIGNvbnN0cmFpbnQgInRlbXBvcmFsX3BlcjNfdXEiCitERVRBSUw6ICBLZXkgKGlkLCB2YWxp ZF9hdCk9KFsxLDIpLCBbMjAxOC0wMS0wMiwyMDE4LTAyLTAzKSkgY29uZmxpY3RzIHdpdGgga2V5 IChpZCwgdmFsaWRfYXQpPShbMSwyKSwgWzIwMTgtMDEtMDEsMjAxOC0wMS0wNSkpLgorUk9MTEJB Q0s7CistLSByZWplY3RzIGVtcHR5OgorQkVHSU47CisgIEFMVEVSIFRBQkxFIHRlbXBvcmFsX3Bl cjMgRFJPUCBQRVJJT0QgRk9SIHZhbGlkX2F0OworICBJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIz IChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbMyw0KScsICcyMDIwLTAxLTAx JywgJzIwMjAtMDEtMDEnKTsKKyAgQUxURVIgVEFCTEUgdGVtcG9yYWxfcGVyMyBBREQgUEVSSU9E IEZPUiB2YWxpZF9hdCAodmFsaWRfZnJvbSwgdmFsaWRfdGlsKTsKK0VSUk9SOiAgY2hlY2sgY29u c3RyYWludCAidGVtcG9yYWxfcGVyM192YWxpZF9hdF9jaGVjayIgb2YgcmVsYXRpb24gInRlbXBv cmFsX3BlcjMiIGlzIHZpb2xhdGVkIGJ5IHNvbWUgcm93CitST0xMQkFDSzsKK0FMVEVSIFRBQkxF IHRlbXBvcmFsX3BlcjMgQUREIENPTlNUUkFJTlQgdGVtcG9yYWxfcGVyM191cSBVTklRVUUgKGlk LCB2YWxpZF9hdCBXSVRIT1VUIE9WRVJMQVBTKTsKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3BlcjM7 CistLQorLS0gUEVSSU9EIFVROiB0ZXN0IGluc2VydHMKKy0tCistLSBva2F5OgorSU5TRVJUIElO VE8gdGVtcG9yYWxfcGVyMyAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzEs MiknLCAnMjAxOC0wMS0wMicsICcyMDE4LTAyLTAzJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9w ZXIzIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbMSwyKScsICcyMDE4LTAz LTAzJywgJzIwMTgtMDQtMDQnKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlcjMgKGlkLCB2YWxp ZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1syLDMpJywgJzIwMTgtMDEtMDEnLCAnMjAxOC0w MS0wNScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyMyAoaWQsIHZhbGlkX2Zyb20sIHZhbGlk X3RpbCkgVkFMVUVTICgnWzMsNCknLCAnMjAxOC0wMS0wMScsIE5VTEwpOworSU5TRVJUIElOVE8g dGVtcG9yYWxfcGVyMyAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTIChOVUxMLCAn MjAxOC0wMS0wMScsICcyMDE4LTAxLTA1Jyk7CistLSBzaG91bGQgZmFpbDoKK0lOU0VSVCBJTlRP IHRlbXBvcmFsX3BlcjMgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1sxLDIp JywgJzIwMTgtMDEtMDEnLCAnMjAxOC0wMS0wNScpOworRVJST1I6ICBjb25mbGljdGluZyBrZXkg dmFsdWUgdmlvbGF0ZXMgZXhjbHVzaW9uIGNvbnN0cmFpbnQgInRlbXBvcmFsX3BlcjNfdXEiCitE RVRBSUw6ICBLZXkgKGlkLCB2YWxpZF9hdCk9KFsxLDIpLCBbMjAxOC0wMS0wMSwyMDE4LTAxLTA1 KSkgY29uZmxpY3RzIHdpdGggZXhpc3Rpbmcga2V5IChpZCwgdmFsaWRfYXQpPShbMSwyKSwgWzIw MTgtMDEtMDIsMjAxOC0wMi0wMykpLgorLS0gcmVqZWN0cyBlbXB0eToKK0lOU0VSVCBJTlRPIHRl bXBvcmFsX3BlcjMgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1szLDQpJywg JzIwMjAtMDEtMDEnLCAnMjAyMC0wMS0wMScpOworRVJST1I6ICBuZXcgcm93IGZvciByZWxhdGlv biAidGVtcG9yYWxfcGVyMyIgdmlvbGF0ZXMgY2hlY2sgY29uc3RyYWludCAidGVtcG9yYWxfcGVy M192YWxpZF9hdF9jaGVjayIKK0RFVEFJTDogIEZhaWxpbmcgcm93IGNvbnRhaW5zIChbMyw0KSwg MjAyMC0wMS0wMSwgMjAyMC0wMS0wMSwgZW1wdHkpLgorU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9w ZXIzIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKyAgaWQgICB8IHZhbGlkX2Zyb20gfCB2YWxpZF90 aWwgIAorLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tCisgWzEsMikgfCAyMDE4LTAx LTAyIHwgMjAxOC0wMi0wMworIFsxLDIpIHwgMjAxOC0wMy0wMyB8IDIwMTgtMDQtMDQKKyBbMiwz KSB8IDIwMTgtMDEtMDEgfCAyMDE4LTAxLTA1CisgWzMsNCkgfCAyMDE4LTAxLTAxIHwgCisgICAg ICAgfCAyMDE4LTAxLTAxIHwgMjAxOC0wMS0wNQorKDUgcm93cykKKworLS0KKy0tIFBFUklPRCBV UTogdGVzdCB1cGRhdGVzCistLQorLS0gdXBkYXRlIHRoZSBzY2FsYXIgcGFydAorVVBEQVRFICB0 ZW1wb3JhbF9wZXIzCitTRVQgICAgIGlkID0gJ1sxMSwxMiknCitXSEVSRSAgIGlkID0gJ1sxLDIp JworQU5EICAgICB2YWxpZF9hdCBAPiAnMjAxOC0wMS0xNSc6OmRhdGU7CistLSB1cGRhdGUgdGhl IFBFUklPRCBib3VuZHMKK1VQREFURSAgdGVtcG9yYWxfcGVyMworU0VUICAgICB2YWxpZF9mcm9t ID0gJzIwMjAtMDEtMDEnLAorICAgICAgICB2YWxpZF90aWwgPSAnMjAyMS0wMS0wMScKK1dIRVJF ICAgaWQgPSAnWzExLDEyKScKK0FORCAgICAgdmFsaWRfYXQgQD4gJzIwMTgtMDEtMTUnOjpkYXRl OworLS0gdXBkYXRlIGJvdGggYXQgb25jZQorVVBEQVRFICB0ZW1wb3JhbF9wZXIzCitTRVQgICAg IGlkID0gJ1syMSwyMiknLAorICAgICAgICB2YWxpZF9mcm9tID0gJzIwMTgtMDEtMDInLAorICAg ICAgICB2YWxpZF90aWwgPSAnMjAxOC0wMi0wMycKK1dIRVJFICAgaWQgPSAnWzExLDEyKScKK0FO RCAgICAgdmFsaWRfYXQgQD4gJzIwMjAtMDEtMTUnOjpkYXRlOworU0VMRUNUICogRlJPTSB0ZW1w b3JhbF9wZXIzIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKyAgIGlkICAgIHwgdmFsaWRfZnJvbSB8 IHZhbGlkX3RpbCAgCistLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLQorIFsxLDIp ICAgfCAyMDE4LTAzLTAzIHwgMjAxOC0wNC0wNAorIFsyLDMpICAgfCAyMDE4LTAxLTAxIHwgMjAx OC0wMS0wNQorIFszLDQpICAgfCAyMDE4LTAxLTAxIHwgCisgWzIxLDIyKSB8IDIwMTgtMDEtMDIg fCAyMDE4LTAyLTAzCisgICAgICAgICB8IDIwMTgtMDEtMDEgfCAyMDE4LTAxLTA1CisoNSByb3dz KQorCistLSBzaG91bGQgZmFpbDoKK1VQREFURSAgdGVtcG9yYWxfcGVyMworU0VUICAgICBpZCA9 ICdbMSwyKScsCisgICAgICAgIHZhbGlkX2Zyb20gPSAnMjAxOC0wMy0wNScsCisgICAgICAgIHZh bGlkX3RpbCA9ICcyMDE4LTA1LTA1JworV0hFUkUgICBpZCA9ICdbMjEsMjIpJzsKK0VSUk9SOiAg Y29uZmxpY3Rpbmcga2V5IHZhbHVlIHZpb2xhdGVzIGV4Y2x1c2lvbiBjb25zdHJhaW50ICJ0ZW1w b3JhbF9wZXIzX3VxIgorREVUQUlMOiAgS2V5IChpZCwgdmFsaWRfYXQpPShbMSwyKSwgWzIwMTgt MDMtMDUsMjAxOC0wNS0wNSkpIGNvbmZsaWN0cyB3aXRoIGV4aXN0aW5nIGtleSAoaWQsIHZhbGlk X2F0KT0oWzEsMiksIFsyMDE4LTAzLTAzLDIwMTgtMDQtMDQpKS4KKy0tIHNldCB0aGUgc2NhbGFy IHBhcnQgdG8gTlVMTCAob2theSkKK1VQREFURSAgdGVtcG9yYWxfcGVyMworU0VUICAgICBpZCA9 IE5VTEwsCisgICAgICAgIHZhbGlkX2Zyb20gPSAnMjAyMC0wMS0wMScsCisgICAgICAgIHZhbGlk X3RpbCA9ICcyMDIxLTAxLTAxJworV0hFUkUgICBpZCA9ICdbMjEsMjIpJzsKKy0tIHNldCBhIFBF UklPRCBib3VuZCB0byBOVUxMIChva2F5KQorVVBEQVRFICB0ZW1wb3JhbF9wZXIzCitTRVQgICAg IGlkID0gJ1sxLDIpJywKKyAgICAgICAgdmFsaWRfZnJvbSA9ICcyMDE4LTA0LTA0JywKKyAgICAg ICAgdmFsaWRfdGlsID0gTlVMTAorV0hFUkUgICBpZCBJUyBOVUxMIEFORCB2YWxpZF9hdCBAPiAn MjAyMC0wNi0wMSc6OmRhdGU7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX3BlcjMgT1JERVIgQlkg aWQsIHZhbGlkX2F0OworICBpZCAgIHwgdmFsaWRfZnJvbSB8IHZhbGlkX3RpbCAgCistLS0tLS0t Ky0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0KKyBbMSwyKSB8IDIwMTgtMDMtMDMgfCAyMDE4LTA0 LTA0CisgWzEsMikgfCAyMDE4LTA0LTA0IHwgCisgWzIsMykgfCAyMDE4LTAxLTAxIHwgMjAxOC0w MS0wNQorIFszLDQpIHwgMjAxOC0wMS0wMSB8IAorICAgICAgIHwgMjAxOC0wMS0wMSB8IDIwMTgt MDEtMDUKKyg1IHJvd3MpCisKKy0tIHNob3VsZCBmYWlsOgorVVBEQVRFICB0ZW1wb3JhbF9wZXIz CitTRVQgICAgIHZhbGlkX2Zyb20gPSAnMjAxOC0wMy0wMScsCisgICAgICAgIHZhbGlkX3RpbCA9 ICcyMDE4LTA1LTA1JworV0hFUkUgICBpZCA9ICdbMSwyKScgQU5EIHZhbGlkX3RpbCBJUyBOVUxM OworRVJST1I6ICBjb25mbGljdGluZyBrZXkgdmFsdWUgdmlvbGF0ZXMgZXhjbHVzaW9uIGNvbnN0 cmFpbnQgInRlbXBvcmFsX3BlcjNfdXEiCitERVRBSUw6ICBLZXkgKGlkLCB2YWxpZF9hdCk9KFsx LDIpLCBbMjAxOC0wMy0wMSwyMDE4LTA1LTA1KSkgY29uZmxpY3RzIHdpdGggZXhpc3Rpbmcga2V5 IChpZCwgdmFsaWRfYXQpPShbMSwyKSwgWzIwMTgtMDMtMDMsMjAxOC0wNC0wNCkpLgorLS0gcmVq ZWN0cyBlbXB0eToKK1VQREFURSAgdGVtcG9yYWxfcGVyMworU0VUICAgICB2YWxpZF9mcm9tID0g JzIwMjAtMDEtMDEnLAorICAgICAgICB2YWxpZF90aWwgPSAnMjAyMC0wMS0wMScKK1dIRVJFICAg aWQgPSAnWzEsMiknIEFORCB2YWxpZF90aWwgSVMgTlVMTDsKK0VSUk9SOiAgbmV3IHJvdyBmb3Ig cmVsYXRpb24gInRlbXBvcmFsX3BlcjMiIHZpb2xhdGVzIGNoZWNrIGNvbnN0cmFpbnQgInRlbXBv cmFsX3BlcjNfdmFsaWRfYXRfY2hlY2siCitERVRBSUw6ICBGYWlsaW5nIHJvdyBjb250YWlucyAo WzEsMiksIDIwMjAtMDEtMDEsIDIwMjAtMDEtMDEsIGVtcHR5KS4KKy0tIHN0aWxsIHJlamVjdHMg ZW1wdHkgd2hlbiBzY2FsYXIgcGFydCBpcyBOVUxMOgorVVBEQVRFICB0ZW1wb3JhbF9wZXIzCitT RVQgICAgIGlkID0gTlVMTCwKKyAgICAgICAgdmFsaWRfZnJvbSA9ICcyMDIwLTAxLTAxJywKKyAg ICAgICAgdmFsaWRfdGlsID0gJzIwMjAtMDEtMDEnCitXSEVSRSAgIGlkID0gJ1sxLDIpJyBBTkQg dmFsaWRfdGlsIElTIE5VTEw7CitFUlJPUjogIG5ldyByb3cgZm9yIHJlbGF0aW9uICJ0ZW1wb3Jh bF9wZXIzIiB2aW9sYXRlcyBjaGVjayBjb25zdHJhaW50ICJ0ZW1wb3JhbF9wZXIzX3ZhbGlkX2F0 X2NoZWNrIgorREVUQUlMOiAgRmFpbGluZyByb3cgY29udGFpbnMgKG51bGwsIDIwMjAtMDEtMDEs IDIwMjAtMDEtMDEsIGVtcHR5KS4KK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfcGVyMyBPUkRFUiBC WSBpZCwgdmFsaWRfYXQ7CisgIGlkICAgfCB2YWxpZF9mcm9tIHwgdmFsaWRfdGlsICAKKy0tLS0t LS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLQorIFsxLDIpIHwgMjAxOC0wMy0wMyB8IDIwMTgt MDQtMDQKKyBbMSwyKSB8IDIwMTgtMDQtMDQgfCAKKyBbMiwzKSB8IDIwMTgtMDEtMDEgfCAyMDE4 LTAxLTA1CisgWzMsNCkgfCAyMDE4LTAxLTAxIHwgCisgICAgICAgfCAyMDE4LTAxLTAxIHwgMjAx OC0wMS0wNQorKDUgcm93cykKKworRFJPUCBUQUJMRSB0ZW1wb3JhbF9wZXIzOworLS0KIC0tIHRl c3QgYSByYW5nZSB3aXRoIGJvdGggYSBQSyBhbmQgYSBVTklRVUUgY29uc3RyYWludAogLS0KIENS RUFURSBUQUJMRSB0ZW1wb3JhbDMgKApAQCAtOTMzLDYgKzE0NTMsOTEgQEAgRVJST1I6ICBjb2x1 bW4gInZhbGlkX2F0IiBpcyBpbiBhIHByaW1hcnkga2V5CiBBTFRFUiBUQUJMRSB0ZW1wb3JhbDMg QUxURVIgQ09MVU1OIHZhbGlkX2F0IFRZUEUgdHN0enJhbmdlIFVTSU5HIHRzdHpyYW5nZShsb3dl cih2YWxpZF9hdCksIHVwcGVyKHZhbGlkX2F0KSk7CiBBTFRFUiBUQUJMRSB0ZW1wb3JhbDMgUkVO QU1FIENPTFVNTiB2YWxpZF9hdCBUTyB2YWxpZF90aHJ1OwogQUxURVIgVEFCTEUgdGVtcG9yYWwz IERST1AgQ09MVU1OIHZhbGlkX3RocnU7CitcZCB0ZW1wb3JhbDMKKyAgICAgICAgICAgICAgVGFi bGUgInB1YmxpYy50ZW1wb3JhbDMiCisgQ29sdW1uIHwgICBUeXBlICAgIHwgQ29sbGF0aW9uIHwg TnVsbGFibGUgfCBEZWZhdWx0IAorLS0tLS0tLS0rLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0rLS0t LS0tLS0tLSstLS0tLS0tLS0KKyBpZCAgICAgfCBpbnQ0cmFuZ2UgfCAgICAgICAgICAgfCBub3Qg bnVsbCB8IAorCitEUk9QIFRBQkxFIHRlbXBvcmFsMzsKK0NSRUFURSBUQUJMRSB0ZW1wb3JhbDMg KAorICBpZCBpbnQ0cmFuZ2UsCisgIHZhbGlkX2Zyb20gZGF0ZSwKKyAgdmFsaWRfdGlsIGRhdGUs CisgIFBFUklPRCBGT1IgdmFsaWRfYXQgKHZhbGlkX2Zyb20sIHZhbGlkX3RpbCksCisgIENPTlNU UkFJTlQgdGVtcG9yYWwzX3BrIFBSSU1BUlkgS0VZIChpZCwgdmFsaWRfYXQgV0lUSE9VVCBPVkVS TEFQUykKKyk7CitcZCB0ZW1wb3JhbDMKKyAgICAgICAgICAgICAgICBUYWJsZSAicHVibGljLnRl bXBvcmFsMyIKKyAgIENvbHVtbiAgIHwgICBUeXBlICAgIHwgQ29sbGF0aW9uIHwgTnVsbGFibGUg fCBEZWZhdWx0IAorLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tKy0tLS0tLS0t LS0rLS0tLS0tLS0tCisgaWQgICAgICAgICB8IGludDRyYW5nZSB8ICAgICAgICAgICB8IG5vdCBu dWxsIHwgCisgdmFsaWRfZnJvbSB8IGRhdGUgICAgICB8ICAgICAgICAgICB8ICAgICAgICAgIHwg CisgdmFsaWRfdGlsICB8IGRhdGUgICAgICB8ICAgICAgICAgICB8ICAgICAgICAgIHwgCitQZXJp b2RzOgorICAgIHZhbGlkX2F0ICh2YWxpZF9mcm9tLCB2YWxpZF90aWwpCitJbmRleGVzOgorICAg ICJ0ZW1wb3JhbDNfcGsiIFBSSU1BUlkgS0VZIChpZCwgdmFsaWRfYXQgV0lUSE9VVCBPVkVSTEFQ UykKK0NoZWNrIGNvbnN0cmFpbnRzOgorICAgICJ0ZW1wb3JhbDNfdmFsaWRfYXRfY2hlY2siIENI RUNLICh2YWxpZF9mcm9tIDwgdmFsaWRfdGlsKQorCitTRUxFQ1QgYXR0bm90bnVsbCBGUk9NIHBn X2F0dHJpYnV0ZSBXSEVSRSBhdHRyZWxpZCA9ICd0ZW1wb3JhbDMnOjpyZWdjbGFzcyBBTkQgYXR0 bmFtZSA9ICd2YWxpZF9hdCc7CisgYXR0bm90bnVsbCAKKy0tLS0tLS0tLS0tLQorIHQKKygxIHJv dykKKworQUxURVIgVEFCTEUgdGVtcG9yYWwzIEFMVEVSIENPTFVNTiB2YWxpZF9hdCBEUk9QIE5P VCBOVUxMOworRVJST1I6ICBjb2x1bW4gInZhbGlkX2F0IiBpcyBpbiBhIHByaW1hcnkga2V5CitB TFRFUiBUQUJMRSB0ZW1wb3JhbDMgQUxURVIgQ09MVU1OIHZhbGlkX2F0IFRZUEUgdHN0enJhbmdl IFVTSU5HIHRzdHpyYW5nZShsb3dlcih2YWxpZF9hdCksIHVwcGVyKHZhbGlkX2F0KSk7CitFUlJP UjogIGNhbm5vdCBzcGVjaWZ5IFVTSU5HIHdoZW4gYWx0ZXJpbmcgdHlwZSBvZiBnZW5lcmF0ZWQg Y29sdW1uCitMSU5FIDE6IEFMVEVSIFRBQkxFIHRlbXBvcmFsMyBBTFRFUiBDT0xVTU4gdmFsaWRf YXQgVFlQRSB0c3R6cmFuZ2UgVS4uLgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIF4KK0RFVEFJTDogIENvbHVtbiAidmFsaWRfYXQiIGlzIGEgZ2VuZXJhdGVkIGNv bHVtbi4KK0FMVEVSIFRBQkxFIHRlbXBvcmFsMyBEUk9QIENPTFVNTiB2YWxpZF9hdDsKK0VSUk9S OiAgY2Fubm90IGRyb3AgY29sdW1uIHZhbGlkX2F0IG9mIHRhYmxlIHRlbXBvcmFsMyBiZWNhdXNl IHBlcmlvZCB2YWxpZF9hdCBvbiB0YWJsZSB0ZW1wb3JhbDMgcmVxdWlyZXMgaXQKK0hJTlQ6ICBZ b3UgY2FuIGRyb3AgcGVyaW9kIHZhbGlkX2F0IG9uIHRhYmxlIHRlbXBvcmFsMyBpbnN0ZWFkLgor QUxURVIgVEFCTEUgdGVtcG9yYWwzIERST1AgUEVSSU9EIEZPUiB2YWxpZF9hdDsKK1xkIHRlbXBv cmFsMworICAgICAgICAgICAgICAgIFRhYmxlICJwdWJsaWMudGVtcG9yYWwzIgorICAgQ29sdW1u ICAgfCAgIFR5cGUgICAgfCBDb2xsYXRpb24gfCBOdWxsYWJsZSB8IERlZmF1bHQgCistLS0tLS0t LS0tLS0rLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0rLS0tLS0tLS0tLSstLS0tLS0tLS0KKyBpZCAg ICAgICAgIHwgaW50NHJhbmdlIHwgICAgICAgICAgIHwgbm90IG51bGwgfCAKKyB2YWxpZF9mcm9t IHwgZGF0ZSAgICAgIHwgICAgICAgICAgIHwgICAgICAgICAgfCAKKyB2YWxpZF90aWwgIHwgZGF0 ZSAgICAgIHwgICAgICAgICAgIHwgICAgICAgICAgfCAKKworRFJPUCBUQUJMRSB0ZW1wb3JhbDM7 CistLSBTYW1lIHJlc3VsdHMgaWYgd2UgYWRkIHRoZSBQRVJJT0QgYW5kIFBLIGZyb20gQUxURVIg VEFCTEU6CitDUkVBVEUgVEFCTEUgdGVtcG9yYWwzICgKKyAgaWQgaW50NHJhbmdlLAorICB2YWxp ZF9mcm9tIGRhdGUsCisgIHZhbGlkX3RpbCBkYXRlCispOworQUxURVIgVEFCTEUgdGVtcG9yYWwz CisgIEFERCBQRVJJT0QgRk9SIHZhbGlkX2F0ICh2YWxpZF9mcm9tLCB2YWxpZF90aWwpLAorICBB REQgQ09OU1RSQUlOVCB0ZW1wb3JhbDNfcGsgUFJJTUFSWSBLRVkgKGlkLCB2YWxpZF9hdCBXSVRI T1VUIE9WRVJMQVBTKTsKK1xkIHRlbXBvcmFsMworICAgICAgICAgICAgICAgIFRhYmxlICJwdWJs aWMudGVtcG9yYWwzIgorICAgQ29sdW1uICAgfCAgIFR5cGUgICAgfCBDb2xsYXRpb24gfCBOdWxs YWJsZSB8IERlZmF1bHQgCistLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0rLS0t LS0tLS0tLSstLS0tLS0tLS0KKyBpZCAgICAgICAgIHwgaW50NHJhbmdlIHwgICAgICAgICAgIHwg bm90IG51bGwgfCAKKyB2YWxpZF9mcm9tIHwgZGF0ZSAgICAgIHwgICAgICAgICAgIHwgICAgICAg ICAgfCAKKyB2YWxpZF90aWwgIHwgZGF0ZSAgICAgIHwgICAgICAgICAgIHwgICAgICAgICAgfCAK K1BlcmlvZHM6CisgICAgdmFsaWRfYXQgKHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkKK0luZGV4ZXM6 CisgICAgInRlbXBvcmFsM19wayIgUFJJTUFSWSBLRVkgKGlkLCB2YWxpZF9hdCBXSVRIT1VUIE9W RVJMQVBTKQorQ2hlY2sgY29uc3RyYWludHM6CisgICAgInRlbXBvcmFsM192YWxpZF9hdF9jaGVj ayIgQ0hFQ0sgKHZhbGlkX2Zyb20gPCB2YWxpZF90aWwpCisKK1NFTEVDVCBhdHRub3RudWxsIEZS T00gcGdfYXR0cmlidXRlIFdIRVJFIGF0dHJlbGlkID0gJ3RlbXBvcmFsMyc6OnJlZ2NsYXNzIEFO RCBhdHRuYW1lID0gJ3ZhbGlkX2F0JzsKKyBhdHRub3RudWxsIAorLS0tLS0tLS0tLS0tCisgdAor KDEgcm93KQorCitBTFRFUiBUQUJMRSB0ZW1wb3JhbDMgQUxURVIgQ09MVU1OIHZhbGlkX2F0IERS T1AgTk9UIE5VTEw7CitFUlJPUjogIGNvbHVtbiAidmFsaWRfYXQiIGlzIGluIGEgcHJpbWFyeSBr ZXkKIERST1AgVEFCTEUgdGVtcG9yYWwzOwogLS0KIC0tIHRlc3QgUEFSVElUSU9OIEJZIGZvciBy YW5nZXMKQEAgLTE0MTQsMzIgKzIwMTksMjM2IEBAIFNFTEVDVCAqIEZST00gdGVtcG9yYWxfbWx0 cm5nMyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CiAKIERST1AgVEFCTEUgdGVtcG9yYWxfbWx0cm5n MzsKIC0tCi0tLSB0ZXN0IEZLIGRlcGVuZGVuY2llcwotLS0KLS0tIGNhbid0IGRyb3AgYSByYW5n ZSByZWZlcmVuY2VkIGJ5IGFuIEZLLCB1bmxlc3Mgd2l0aCBDQVNDQURFCi1DUkVBVEUgVEFCTEUg dGVtcG9yYWwzICgKLSAgaWQgaW50NHJhbmdlLAotICB2YWxpZF9hdCBkYXRlcmFuZ2UsCi0gIENP TlNUUkFJTlQgdGVtcG9yYWwzX3BrIFBSSU1BUlkgS0VZIChpZCwgdmFsaWRfYXQgV0lUSE9VVCBP VkVSTEFQUykKLSk7Ci1DUkVBVEUgVEFCTEUgdGVtcG9yYWxfZmtfcm5nMnJuZyAoCi0gIGlkIGlu dDRyYW5nZSwKLSAgdmFsaWRfYXQgZGF0ZXJhbmdlLAotICBwYXJlbnRfaWQgaW50NHJhbmdlLAot ICBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3JuZzJybmdfcGsgUFJJTUFSWSBLRVkgKGlkLCB2YWxp ZF9hdCBXSVRIT1VUIE9WRVJMQVBTKSwKLSAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19ybmcycm5n X2ZrIEZPUkVJR04gS0VZIChwYXJlbnRfaWQsIFBFUklPRCB2YWxpZF9hdCkKLSAgICBSRUZFUkVO Q0VTIHRlbXBvcmFsMyAoaWQsIFBFUklPRCB2YWxpZF9hdCkKLSk7Ci1BTFRFUiBUQUJMRSB0ZW1w b3JhbDMgRFJPUCBDT0xVTU4gdmFsaWRfYXQ7Ci1FUlJPUjogIGNhbm5vdCBkcm9wIGNvbHVtbiB2 YWxpZF9hdCBvZiB0YWJsZSB0ZW1wb3JhbDMgYmVjYXVzZSBvdGhlciBvYmplY3RzIGRlcGVuZCBv biBpdAotREVUQUlMOiAgY29uc3RyYWludCB0ZW1wb3JhbF9ma19ybmcycm5nX2ZrIG9uIHRhYmxl IHRlbXBvcmFsX2ZrX3JuZzJybmcgZGVwZW5kcyBvbiBjb2x1bW4gdmFsaWRfYXQgb2YgdGFibGUg dGVtcG9yYWwzCi1ISU5UOiAgVXNlIERST1AgLi4uIENBU0NBREUgdG8gZHJvcCB0aGUgZGVwZW5k ZW50IG9iamVjdHMgdG9vLgotQUxURVIgVEFCTEUgdGVtcG9yYWwzIERST1AgQ09MVU1OIHZhbGlk X2F0IENBU0NBREU7Ci1OT1RJQ0U6ICBkcm9wIGNhc2NhZGVzIHRvIGNvbnN0cmFpbnQgdGVtcG9y YWxfZmtfcm5nMnJuZ19mayBvbiB0YWJsZSB0ZW1wb3JhbF9ma19ybmcycm5nCi1EUk9QIFRBQkxF IHRlbXBvcmFsX2ZrX3JuZzJybmc7Ci1EUk9QIFRBQkxFIHRlbXBvcmFsMzsKKy0tIE9OIENPTkZM SUNUOiBQRVJJT0RzCiAtLQotLS0gdGVzdCBGT1JFSUdOIEtFWSwgcmFuZ2UgcmVmZXJlbmNlcyBy YW5nZQorVFJVTkNBVEUgdGVtcG9yYWxfcGVyOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyIChp ZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbMSwyKScsICcyMDAwLTAxLTAxJywg JzIwMTAtMDEtMDEnKTsKKy0tIHdpdGggYSBjb25mbGljdAorSU5TRVJUIElOVE8gdGVtcG9yYWxf cGVyIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbMSwyKScsICcyMDA1LTAx LTAxJywgJzIwMDYtMDEtMDEnKSBPTiBDT05GTElDVCBETyBOT1RISU5HOworLS0gaWQgbWF0Y2hl cyBidXQgbm8gY29uZmxpY3QKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlciAoaWQsIHZhbGlkX2Zy b20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzEsMiknLCAnMjAxMC0wMS0wMScsICcyMDIwLTAxLTAx JykgT04gQ09ORkxJQ1QgRE8gTk9USElORzsKKy0tIGRhdGUgbWF0Y2hlcyBidXQgbm8gY29uZmxp Y3QKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlciAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkg VkFMVUVTICgnWzIsMyknLCAnMjAwNS0wMS0wMScsICcyMDA2LTAxLTAxJykgT04gQ09ORkxJQ1Qg RE8gTk9USElORzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfcGVyIE9SREVSIEJZIGlkLCB2YWxp ZF9mcm9tLCB2YWxpZF90aWw7CisgIGlkICAgfCB2YWxpZF9mcm9tIHwgdmFsaWRfdGlsICAKKy0t LS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLQorIFsxLDIpIHwgMjAwMC0wMS0wMSB8IDIw MTAtMDEtMDEKKyBbMSwyKSB8IDIwMTAtMDEtMDEgfCAyMDIwLTAxLTAxCisgWzIsMykgfCAyMDA1 LTAxLTAxIHwgMjAwNi0wMS0wMQorKDMgcm93cykKKworVFJVTkNBVEUgdGVtcG9yYWxfcGVyOwor SU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxV RVMgKCdbMSwyKScsICcyMDAwLTAxLTAxJywgJzIwMTAtMDEtMDEnKTsKKy0tIHdpdGggYSBjb25m bGljdAorSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGls KSBWQUxVRVMgKCdbMSwyKScsICcyMDA1LTAxLTAxJywgJzIwMDYtMDEtMDEnKSBPTiBDT05GTElD VCAoaWQsIHZhbGlkX2F0KSBETyBOT1RISU5HOworRVJST1I6ICB0aGVyZSBpcyBubyB1bmlxdWUg b3IgZXhjbHVzaW9uIGNvbnN0cmFpbnQgbWF0Y2hpbmcgdGhlIE9OIENPTkZMSUNUIHNwZWNpZmlj YXRpb24KKy0tIGlkIG1hdGNoZXMgYnV0IG5vIGNvbmZsaWN0CitJTlNFUlQgSU5UTyB0ZW1wb3Jh bF9wZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1sxLDIpJywgJzIwMTAt MDEtMDEnLCAnMjAyMC0wMS0wMScpIE9OIENPTkZMSUNUIChpZCwgdmFsaWRfYXQpIERPIE5PVEhJ Tkc7CitFUlJPUjogIHRoZXJlIGlzIG5vIHVuaXF1ZSBvciBleGNsdXNpb24gY29uc3RyYWludCBt YXRjaGluZyB0aGUgT04gQ09ORkxJQ1Qgc3BlY2lmaWNhdGlvbgorLS0gZGF0ZSBtYXRjaGVzIGJ1 dCBubyBjb25mbGljdAorSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyIChpZCwgdmFsaWRfZnJvbSwg dmFsaWRfdGlsKSBWQUxVRVMgKCdbMiwzKScsICcyMDA1LTAxLTAxJywgJzIwMDYtMDEtMDEnKSBP TiBDT05GTElDVCAoaWQsIHZhbGlkX2F0KSBETyBOT1RISU5HOworRVJST1I6ICB0aGVyZSBpcyBu byB1bmlxdWUgb3IgZXhjbHVzaW9uIGNvbnN0cmFpbnQgbWF0Y2hpbmcgdGhlIE9OIENPTkZMSUNU IHNwZWNpZmljYXRpb24KK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfcGVyIE9SREVSIEJZIGlkLCB2 YWxpZF9mcm9tLCB2YWxpZF90aWw7CisgIGlkICAgfCB2YWxpZF9mcm9tIHwgdmFsaWRfdGlsICAK Ky0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLQorIFsxLDIpIHwgMjAwMC0wMS0wMSB8 IDIwMTAtMDEtMDEKKygxIHJvdykKKworVFJVTkNBVEUgdGVtcG9yYWxfcGVyOworSU5TRVJUIElO VE8gdGVtcG9yYWxfcGVyIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbMSwy KScsICcyMDAwLTAxLTAxJywgJzIwMTAtMDEtMDEnKTsKKy0tIHdpdGggYSBjb25mbGljdAorSU5T RVJUIElOVE8gdGVtcG9yYWxfcGVyIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMg KCdbMSwyKScsICcyMDA1LTAxLTAxJywgJzIwMDYtMDEtMDEnKSBPTiBDT05GTElDVCBPTiBDT05T VFJBSU5UIHRlbXBvcmFsX3Blcl9wayBETyBOT1RISU5HOworLS0gaWQgbWF0Y2hlcyBidXQgbm8g Y29uZmxpY3QKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlciAoaWQsIHZhbGlkX2Zyb20sIHZhbGlk X3RpbCkgVkFMVUVTICgnWzEsMiknLCAnMjAxMC0wMS0wMScsICcyMDIwLTAxLTAxJykgT04gQ09O RkxJQ1QgT04gQ09OU1RSQUlOVCB0ZW1wb3JhbF9wZXJfcGsgRE8gTk9USElORzsKKy0tIGRhdGUg bWF0Y2hlcyBidXQgbm8gY29uZmxpY3QKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlciAoaWQsIHZh bGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzIsMyknLCAnMjAwNS0wMS0wMScsICcyMDA2 LTAxLTAxJykgT04gQ09ORkxJQ1QgT04gQ09OU1RSQUlOVCB0ZW1wb3JhbF9wZXJfcGsgRE8gTk9U SElORzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfcGVyIE9SREVSIEJZIGlkLCB2YWxpZF9mcm9t LCB2YWxpZF90aWw7CisgIGlkICAgfCB2YWxpZF9mcm9tIHwgdmFsaWRfdGlsICAKKy0tLS0tLS0r LS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLQorIFsxLDIpIHwgMjAwMC0wMS0wMSB8IDIwMTAtMDEt MDEKKyBbMSwyKSB8IDIwMTAtMDEtMDEgfCAyMDIwLTAxLTAxCisgWzIsMykgfCAyMDA1LTAxLTAx IHwgMjAwNi0wMS0wMQorKDMgcm93cykKKworVFJVTkNBVEUgdGVtcG9yYWxfcGVyOworSU5TRVJU IElOVE8gdGVtcG9yYWxfcGVyIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdb MSwyKScsICcyMDAwLTAxLTAxJywgJzIwMTAtMDEtMDEnKTsKKy0tIHdpdGggYSBjb25mbGljdAor SU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxV RVMgKCdbMSwyKScsICcyMDA1LTAxLTAxJywgJzIwMDYtMDEtMDEnKSBPTiBDT05GTElDVCAoaWQs IHZhbGlkX2F0KSBETyBVUERBVEUgU0VUIGlkID0gRVhDTFVERUQuaWQgKyAnWzIsMyknOworRVJS T1I6ICB0aGVyZSBpcyBubyB1bmlxdWUgb3IgZXhjbHVzaW9uIGNvbnN0cmFpbnQgbWF0Y2hpbmcg dGhlIE9OIENPTkZMSUNUIHNwZWNpZmljYXRpb24KKy0tIGlkIG1hdGNoZXMgYnV0IG5vIGNvbmZs aWN0CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwp IFZBTFVFUyAoJ1sxLDIpJywgJzIwMTAtMDEtMDEnLCAnMjAyMC0wMS0wMScpIE9OIENPTkZMSUNU IChpZCwgdmFsaWRfYXQpIERPIFVQREFURSBTRVQgaWQgPSBFWENMVURFRC5pZCArICdbMyw0KSc7 CitFUlJPUjogIHRoZXJlIGlzIG5vIHVuaXF1ZSBvciBleGNsdXNpb24gY29uc3RyYWludCBtYXRj aGluZyB0aGUgT04gQ09ORkxJQ1Qgc3BlY2lmaWNhdGlvbgorLS0gZGF0ZSBtYXRjaGVzIGJ1dCBu byBjb25mbGljdAorSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyIChpZCwgdmFsaWRfZnJvbSwgdmFs aWRfdGlsKSBWQUxVRVMgKCdbMiwzKScsICcyMDA1LTAxLTAxJywgJzIwMDYtMDEtMDEnKSBPTiBD T05GTElDVCAoaWQsIHZhbGlkX2F0KSBETyBVUERBVEUgU0VUIGlkID0gRVhDTFVERUQuaWQgKyAn WzQsNSknOworRVJST1I6ICB0aGVyZSBpcyBubyB1bmlxdWUgb3IgZXhjbHVzaW9uIGNvbnN0cmFp bnQgbWF0Y2hpbmcgdGhlIE9OIENPTkZMSUNUIHNwZWNpZmljYXRpb24KK1NFTEVDVCAqIEZST00g dGVtcG9yYWxfcGVyIE9SREVSIEJZIGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWw7CisgIGlkICAg fCB2YWxpZF9mcm9tIHwgdmFsaWRfdGlsICAKKy0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0t LS0tLQorIFsxLDIpIHwgMjAwMC0wMS0wMSB8IDIwMTAtMDEtMDEKKygxIHJvdykKKworVFJVTkNB VEUgdGVtcG9yYWxfcGVyOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyIChpZCwgdmFsaWRfZnJv bSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbMSwyKScsICcyMDAwLTAxLTAxJywgJzIwMTAtMDEtMDEn KTsKKy0tIHdpdGggYSBjb25mbGljdAorSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyIChpZCwgdmFs aWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbMSwyKScsICcyMDA1LTAxLTAxJywgJzIwMDYt MDEtMDEnKSBPTiBDT05GTElDVCBPTiBDT05TVFJBSU5UIHRlbXBvcmFsX3Blcl9wayBETyBVUERB VEUgU0VUIGlkID0gRVhDTFVERUQuaWQgKyAnWzIsMyknOworRVJST1I6ICBPTiBDT05GTElDVCBE TyBVUERBVEUgbm90IHN1cHBvcnRlZCB3aXRoIGV4Y2x1c2lvbiBjb25zdHJhaW50cworLS0gaWQg bWF0Y2hlcyBidXQgbm8gY29uZmxpY3QKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlciAoaWQsIHZh bGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzEsMiknLCAnMjAxMC0wMS0wMScsICcyMDIw LTAxLTAxJykgT04gQ09ORkxJQ1QgT04gQ09OU1RSQUlOVCB0ZW1wb3JhbF9wZXJfcGsgRE8gVVBE QVRFIFNFVCBpZCA9IEVYQ0xVREVELmlkICsgJ1szLDQpJzsKK0VSUk9SOiAgT04gQ09ORkxJQ1Qg RE8gVVBEQVRFIG5vdCBzdXBwb3J0ZWQgd2l0aCBleGNsdXNpb24gY29uc3RyYWludHMKKy0tIGRh dGUgbWF0Y2hlcyBidXQgbm8gY29uZmxpY3QKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlciAoaWQs IHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzIsMyknLCAnMjAwNS0wMS0wMScsICcy MDA2LTAxLTAxJykgT04gQ09ORkxJQ1QgT04gQ09OU1RSQUlOVCB0ZW1wb3JhbF9wZXJfcGsgRE8g VVBEQVRFIFNFVCBpZCA9IEVYQ0xVREVELmlkICsgJ1s0LDUpJzsKK0VSUk9SOiAgT04gQ09ORkxJ Q1QgRE8gVVBEQVRFIG5vdCBzdXBwb3J0ZWQgd2l0aCBleGNsdXNpb24gY29uc3RyYWludHMKK1NF TEVDVCAqIEZST00gdGVtcG9yYWxfcGVyIE9SREVSIEJZIGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90 aWw7CisgIGlkICAgfCB2YWxpZF9mcm9tIHwgdmFsaWRfdGlsICAKKy0tLS0tLS0rLS0tLS0tLS0t LS0tKy0tLS0tLS0tLS0tLQorIFsxLDIpIHwgMjAwMC0wMS0wMSB8IDIwMTAtMDEtMDEKKygxIHJv dykKKworLS0gd2l0aCBhIFVOSVFVRSBjb25zdHJhaW50OgorQ1JFQVRFIFRBQkxFIHRlbXBvcmFs X3BlcjMgKAorICBpZCBpbnQ0cmFuZ2UsCisgIHZhbGlkX2Zyb20gZGF0ZSwKKyAgdmFsaWRfdGls IGRhdGUsCisgIFBFUklPRCBGT1IgdmFsaWRfYXQgKHZhbGlkX2Zyb20sIHZhbGlkX3RpbCksCisg IENPTlNUUkFJTlQgdGVtcG9yYWxfcGVyM191cSBVTklRVUUgKGlkLCB2YWxpZF9hdCBXSVRIT1VU IE9WRVJMQVBTKQorKTsKK1RSVU5DQVRFIHRlbXBvcmFsX3BlcjM7CitJTlNFUlQgSU5UTyB0ZW1w b3JhbF9wZXIzIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbMSwyKScsICcy MDAwLTAxLTAxJywgJzIwMTAtMDEtMDEnKTsKKy0tIHdpdGggYSBjb25mbGljdAorSU5TRVJUIElO VE8gdGVtcG9yYWxfcGVyMyAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzEs MiknLCAnMjAwNS0wMS0wMScsICcyMDA2LTAxLTAxJykgT04gQ09ORkxJQ1QgRE8gTk9USElORzsK Ky0tIGlkIG1hdGNoZXMgYnV0IG5vIGNvbmZsaWN0CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIz IChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbMSwyKScsICcyMDEwLTAxLTAx JywgJzIwMjAtMDEtMDEnKSBPTiBDT05GTElDVCBETyBOT1RISU5HOworLS0gZGF0ZSBtYXRjaGVz IGJ1dCBubyBjb25mbGljdAorSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyMyAoaWQsIHZhbGlkX2Zy b20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzIsMyknLCAnMjAwNS0wMS0wMScsICcyMDA2LTAxLTAx JykgT04gQ09ORkxJQ1QgRE8gTk9USElORzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfcGVyMyBP UkRFUiBCWSBpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsOworICBpZCAgIHwgdmFsaWRfZnJvbSB8 IHZhbGlkX3RpbCAgCistLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0KKyBbMSwyKSB8 IDIwMDAtMDEtMDEgfCAyMDEwLTAxLTAxCisgWzEsMikgfCAyMDEwLTAxLTAxIHwgMjAyMC0wMS0w MQorIFsyLDMpIHwgMjAwNS0wMS0wMSB8IDIwMDYtMDEtMDEKKygzIHJvd3MpCisKK1RSVU5DQVRF IHRlbXBvcmFsX3BlcjM7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIzIChpZCwgdmFsaWRfZnJv bSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbMSwyKScsICcyMDAwLTAxLTAxJywgJzIwMTAtMDEtMDEn KTsKKy0tIHdpdGggYSBjb25mbGljdAorSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyMyAoaWQsIHZh bGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzEsMiknLCAnMjAwNS0wMS0wMScsICcyMDA2 LTAxLTAxJykgT04gQ09ORkxJQ1QgKGlkLCB2YWxpZF9hdCkgRE8gTk9USElORzsKK0VSUk9SOiAg dGhlcmUgaXMgbm8gdW5pcXVlIG9yIGV4Y2x1c2lvbiBjb25zdHJhaW50IG1hdGNoaW5nIHRoZSBP TiBDT05GTElDVCBzcGVjaWZpY2F0aW9uCistLSBpZCBtYXRjaGVzIGJ1dCBubyBjb25mbGljdAor SU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyMyAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFM VUVTICgnWzEsMiknLCAnMjAxMC0wMS0wMScsICcyMDIwLTAxLTAxJykgT04gQ09ORkxJQ1QgKGlk LCB2YWxpZF9hdCkgRE8gTk9USElORzsKK0VSUk9SOiAgdGhlcmUgaXMgbm8gdW5pcXVlIG9yIGV4 Y2x1c2lvbiBjb25zdHJhaW50IG1hdGNoaW5nIHRoZSBPTiBDT05GTElDVCBzcGVjaWZpY2F0aW9u CistLSBkYXRlIG1hdGNoZXMgYnV0IG5vIGNvbmZsaWN0CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9w ZXIzIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbMiwzKScsICcyMDA1LTAx LTAxJywgJzIwMDYtMDEtMDEnKSBPTiBDT05GTElDVCAoaWQsIHZhbGlkX2F0KSBETyBOT1RISU5H OworRVJST1I6ICB0aGVyZSBpcyBubyB1bmlxdWUgb3IgZXhjbHVzaW9uIGNvbnN0cmFpbnQgbWF0 Y2hpbmcgdGhlIE9OIENPTkZMSUNUIHNwZWNpZmljYXRpb24KK1NFTEVDVCAqIEZST00gdGVtcG9y YWxfcGVyMyBPUkRFUiBCWSBpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsOworICBpZCAgIHwgdmFs aWRfZnJvbSB8IHZhbGlkX3RpbCAgCistLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0K KyBbMSwyKSB8IDIwMDAtMDEtMDEgfCAyMDEwLTAxLTAxCisoMSByb3cpCisKK1RSVU5DQVRFIHRl bXBvcmFsX3BlcjM7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIzIChpZCwgdmFsaWRfZnJvbSwg dmFsaWRfdGlsKSBWQUxVRVMgKCdbMSwyKScsICcyMDAwLTAxLTAxJywgJzIwMTAtMDEtMDEnKTsK Ky0tIHdpdGggYSBjb25mbGljdAorSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyMyAoaWQsIHZhbGlk X2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzEsMiknLCAnMjAwNS0wMS0wMScsICcyMDA2LTAx LTAxJykgT04gQ09ORkxJQ1QgT04gQ09OU1RSQUlOVCB0ZW1wb3JhbF9wZXIzX3VxIERPIE5PVEhJ Tkc7CistLSBpZCBtYXRjaGVzIGJ1dCBubyBjb25mbGljdAorSU5TRVJUIElOVE8gdGVtcG9yYWxf cGVyMyAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzEsMiknLCAnMjAxMC0w MS0wMScsICcyMDIwLTAxLTAxJykgT04gQ09ORkxJQ1QgT04gQ09OU1RSQUlOVCB0ZW1wb3JhbF9w ZXIzX3VxIERPIE5PVEhJTkc7CistLSBkYXRlIG1hdGNoZXMgYnV0IG5vIGNvbmZsaWN0CitJTlNF UlQgSU5UTyB0ZW1wb3JhbF9wZXIzIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMg KCdbMiwzKScsICcyMDA1LTAxLTAxJywgJzIwMDYtMDEtMDEnKSBPTiBDT05GTElDVCBPTiBDT05T VFJBSU5UIHRlbXBvcmFsX3BlcjNfdXEgRE8gTk9USElORzsKK1NFTEVDVCAqIEZST00gdGVtcG9y YWxfcGVyMyBPUkRFUiBCWSBpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsOworICBpZCAgIHwgdmFs aWRfZnJvbSB8IHZhbGlkX3RpbCAgCistLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0K KyBbMSwyKSB8IDIwMDAtMDEtMDEgfCAyMDEwLTAxLTAxCisgWzEsMikgfCAyMDEwLTAxLTAxIHwg MjAyMC0wMS0wMQorIFsyLDMpIHwgMjAwNS0wMS0wMSB8IDIwMDYtMDEtMDEKKygzIHJvd3MpCisK K1RSVU5DQVRFIHRlbXBvcmFsX3BlcjM7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIzIChpZCwg dmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbMSwyKScsICcyMDAwLTAxLTAxJywgJzIw MTAtMDEtMDEnKTsKKy0tIHdpdGggYSBjb25mbGljdAorSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVy MyAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzEsMiknLCAnMjAwNS0wMS0w MScsICcyMDA2LTAxLTAxJykgT04gQ09ORkxJQ1QgKGlkLCB2YWxpZF9hdCkgRE8gVVBEQVRFIFNF VCBpZCA9IEVYQ0xVREVELmlkICsgJ1syLDMpJzsKK0VSUk9SOiAgdGhlcmUgaXMgbm8gdW5pcXVl IG9yIGV4Y2x1c2lvbiBjb25zdHJhaW50IG1hdGNoaW5nIHRoZSBPTiBDT05GTElDVCBzcGVjaWZp Y2F0aW9uCistLSBpZCBtYXRjaGVzIGJ1dCBubyBjb25mbGljdAorSU5TRVJUIElOVE8gdGVtcG9y YWxfcGVyMyAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzEsMiknLCAnMjAx MC0wMS0wMScsICcyMDIwLTAxLTAxJykgT04gQ09ORkxJQ1QgKGlkLCB2YWxpZF9hdCkgRE8gVVBE QVRFIFNFVCBpZCA9IEVYQ0xVREVELmlkICsgJ1szLDQpJzsKK0VSUk9SOiAgdGhlcmUgaXMgbm8g dW5pcXVlIG9yIGV4Y2x1c2lvbiBjb25zdHJhaW50IG1hdGNoaW5nIHRoZSBPTiBDT05GTElDVCBz cGVjaWZpY2F0aW9uCistLSBkYXRlIG1hdGNoZXMgYnV0IG5vIGNvbmZsaWN0CitJTlNFUlQgSU5U TyB0ZW1wb3JhbF9wZXIzIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbMiwz KScsICcyMDA1LTAxLTAxJywgJzIwMDYtMDEtMDEnKSBPTiBDT05GTElDVCAoaWQsIHZhbGlkX2F0 KSBETyBVUERBVEUgU0VUIGlkID0gRVhDTFVERUQuaWQgKyAnWzQsNSknOworRVJST1I6ICB0aGVy ZSBpcyBubyB1bmlxdWUgb3IgZXhjbHVzaW9uIGNvbnN0cmFpbnQgbWF0Y2hpbmcgdGhlIE9OIENP TkZMSUNUIHNwZWNpZmljYXRpb24KK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfcGVyMyBPUkRFUiBC WSBpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsOworICBpZCAgIHwgdmFsaWRfZnJvbSB8IHZhbGlk X3RpbCAgCistLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0KKyBbMSwyKSB8IDIwMDAt MDEtMDEgfCAyMDEwLTAxLTAxCisoMSByb3cpCisKK1RSVU5DQVRFIHRlbXBvcmFsX3BlcjM7CitJ TlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIzIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxV RVMgKCdbMSwyKScsICcyMDAwLTAxLTAxJywgJzIwMTAtMDEtMDEnKTsKKy0tIHdpdGggYSBjb25m bGljdAorSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyMyAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3Rp bCkgVkFMVUVTICgnWzEsMiknLCAnMjAwNS0wMS0wMScsICcyMDA2LTAxLTAxJykgT04gQ09ORkxJ Q1QgT04gQ09OU1RSQUlOVCB0ZW1wb3JhbF9wZXIzX3VxIERPIFVQREFURSBTRVQgaWQgPSBFWENM VURFRC5pZCArICdbMiwzKSc7CitFUlJPUjogIE9OIENPTkZMSUNUIERPIFVQREFURSBub3Qgc3Vw cG9ydGVkIHdpdGggZXhjbHVzaW9uIGNvbnN0cmFpbnRzCistLSBpZCBtYXRjaGVzIGJ1dCBubyBj b25mbGljdAorSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyMyAoaWQsIHZhbGlkX2Zyb20sIHZhbGlk X3RpbCkgVkFMVUVTICgnWzEsMiknLCAnMjAxMC0wMS0wMScsICcyMDIwLTAxLTAxJykgT04gQ09O RkxJQ1QgT04gQ09OU1RSQUlOVCB0ZW1wb3JhbF9wZXIzX3VxIERPIFVQREFURSBTRVQgaWQgPSBF WENMVURFRC5pZCArICdbMyw0KSc7CitFUlJPUjogIE9OIENPTkZMSUNUIERPIFVQREFURSBub3Qg c3VwcG9ydGVkIHdpdGggZXhjbHVzaW9uIGNvbnN0cmFpbnRzCistLSBkYXRlIG1hdGNoZXMgYnV0 IG5vIGNvbmZsaWN0CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIzIChpZCwgdmFsaWRfZnJvbSwg dmFsaWRfdGlsKSBWQUxVRVMgKCdbMiwzKScsICcyMDA1LTAxLTAxJywgJzIwMDYtMDEtMDEnKSBP TiBDT05GTElDVCBPTiBDT05TVFJBSU5UIHRlbXBvcmFsX3BlcjNfdXEgRE8gVVBEQVRFIFNFVCBp ZCA9IEVYQ0xVREVELmlkICsgJ1s0LDUpJzsKK0VSUk9SOiAgT04gQ09ORkxJQ1QgRE8gVVBEQVRF IG5vdCBzdXBwb3J0ZWQgd2l0aCBleGNsdXNpb24gY29uc3RyYWludHMKK1NFTEVDVCAqIEZST00g dGVtcG9yYWxfcGVyMyBPUkRFUiBCWSBpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsOworICBpZCAg IHwgdmFsaWRfZnJvbSB8IHZhbGlkX3RpbCAgCistLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0t LS0tLS0KKyBbMSwyKSB8IDIwMDAtMDEtMDEgfCAyMDEwLTAxLTAxCisoMSByb3cpCisKK0RST1Ag VEFCTEUgdGVtcG9yYWxfcGVyMzsKKy0tCistLSB0ZXN0IEZLIGRlcGVuZGVuY2llcworLS0KKy0t IGNhbid0IGRyb3AgYSByYW5nZSByZWZlcmVuY2VkIGJ5IGFuIEZLLCB1bmxlc3Mgd2l0aCBDQVND QURFCitDUkVBVEUgVEFCTEUgdGVtcG9yYWwzICgKKyAgaWQgaW50NHJhbmdlLAorICB2YWxpZF9h dCBkYXRlcmFuZ2UsCisgIENPTlNUUkFJTlQgdGVtcG9yYWwzX3BrIFBSSU1BUlkgS0VZIChpZCwg dmFsaWRfYXQgV0lUSE9VVCBPVkVSTEFQUykKKyk7CitDUkVBVEUgVEFCTEUgdGVtcG9yYWxfZmtf cm5nMnJuZyAoCisgIGlkIGludDRyYW5nZSwKKyAgdmFsaWRfYXQgZGF0ZXJhbmdlLAorICBwYXJl bnRfaWQgaW50NHJhbmdlLAorICBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3JuZzJybmdfcGsgUFJJ TUFSWSBLRVkgKGlkLCB2YWxpZF9hdCBXSVRIT1VUIE9WRVJMQVBTKSwKKyAgQ09OU1RSQUlOVCB0 ZW1wb3JhbF9ma19ybmcycm5nX2ZrIEZPUkVJR04gS0VZIChwYXJlbnRfaWQsIFBFUklPRCB2YWxp ZF9hdCkKKyAgICBSRUZFUkVOQ0VTIHRlbXBvcmFsMyAoaWQsIFBFUklPRCB2YWxpZF9hdCkKKyk7 CitBTFRFUiBUQUJMRSB0ZW1wb3JhbDMgRFJPUCBDT0xVTU4gdmFsaWRfYXQ7CitFUlJPUjogIGNh bm5vdCBkcm9wIGNvbHVtbiB2YWxpZF9hdCBvZiB0YWJsZSB0ZW1wb3JhbDMgYmVjYXVzZSBvdGhl ciBvYmplY3RzIGRlcGVuZCBvbiBpdAorREVUQUlMOiAgY29uc3RyYWludCB0ZW1wb3JhbF9ma19y bmcycm5nX2ZrIG9uIHRhYmxlIHRlbXBvcmFsX2ZrX3JuZzJybmcgZGVwZW5kcyBvbiBjb2x1bW4g dmFsaWRfYXQgb2YgdGFibGUgdGVtcG9yYWwzCitISU5UOiAgVXNlIERST1AgLi4uIENBU0NBREUg dG8gZHJvcCB0aGUgZGVwZW5kZW50IG9iamVjdHMgdG9vLgorQUxURVIgVEFCTEUgdGVtcG9yYWwz IERST1AgQ09MVU1OIHZhbGlkX2F0IENBU0NBREU7CitOT1RJQ0U6ICBkcm9wIGNhc2NhZGVzIHRv IGNvbnN0cmFpbnQgdGVtcG9yYWxfZmtfcm5nMnJuZ19mayBvbiB0YWJsZSB0ZW1wb3JhbF9ma19y bmcycm5nCitEUk9QIFRBQkxFIHRlbXBvcmFsX2ZrX3JuZzJybmc7CitEUk9QIFRBQkxFIHRlbXBv cmFsMzsKKy0tIGNhbid0IGRyb3AgYSBQRVJJT0QgcmVmZXJlbmNlZCBieSBhbiBGSywgdW5sZXNz IHdpdGggQ0FTQ0FERQorQ1JFQVRFIFRBQkxFIHRlbXBvcmFsMyAoCisgIGlkIGludDRyYW5nZSwK KyAgdmFsaWRfZnJvbSBkYXRlLAorICB2YWxpZF90aWwgZGF0ZSwKKyAgUEVSSU9EIEZPUiB2YWxp ZF9hdCAodmFsaWRfZnJvbSwgdmFsaWRfdGlsKSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3JhbDNfcGsg UFJJTUFSWSBLRVkgKGlkLCB2YWxpZF9hdCBXSVRIT1VUIE9WRVJMQVBTKQorKTsKK0NSRUFURSBU QUJMRSB0ZW1wb3JhbF9ma19wZXIycGVyICgKKyAgaWQgaW50NHJhbmdlLAorICB2YWxpZF9mcm9t IGRhdGUsCisgIHZhbGlkX3RpbCBkYXRlLAorICBwYXJlbnRfaWQgaW50NHJhbmdlLAorICBQRVJJ T0QgRk9SIHZhbGlkX2F0ICh2YWxpZF9mcm9tLCB2YWxpZF90aWwpLAorICBDT05TVFJBSU5UIHRl bXBvcmFsX2ZrX3BlcjJwZXJfcGsgUFJJTUFSWSBLRVkgKGlkLCB2YWxpZF9hdCBXSVRIT1VUIE9W RVJMQVBTKSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19wZXIycGVyX2ZrIEZPUkVJR04gS0VZ IChwYXJlbnRfaWQsIFBFUklPRCB2YWxpZF9hdCkKKyAgICBSRUZFUkVOQ0VTIHRlbXBvcmFsMyAo aWQsIFBFUklPRCB2YWxpZF9hdCkKKyk7CitBTFRFUiBUQUJMRSB0ZW1wb3JhbDMgRFJPUCBQRVJJ T0QgRk9SIHZhbGlkX2F0OworRVJST1I6ICBjYW5ub3QgZHJvcCBwZXJpb2QgdmFsaWRfYXQgb24g dGFibGUgdGVtcG9yYWwzIGJlY2F1c2Ugb3RoZXIgb2JqZWN0cyBkZXBlbmQgb24gaXQKK0RFVEFJ TDogIGNvbnN0cmFpbnQgdGVtcG9yYWxfZmtfcGVyMnBlcl9mayBvbiB0YWJsZSB0ZW1wb3JhbF9m a19wZXIycGVyIGRlcGVuZHMgb24gY29sdW1uIHZhbGlkX2F0IG9mIHRhYmxlIHRlbXBvcmFsMwor SElOVDogIFVzZSBEUk9QIC4uLiBDQVNDQURFIHRvIGRyb3AgdGhlIGRlcGVuZGVudCBvYmplY3Rz IHRvby4KK0FMVEVSIFRBQkxFIHRlbXBvcmFsMyBEUk9QIFBFUklPRCBGT1IgdmFsaWRfYXQgQ0FT Q0FERTsKK05PVElDRTogIGRyb3AgY2FzY2FkZXMgdG8gY29uc3RyYWludCB0ZW1wb3JhbF9ma19w ZXIycGVyX2ZrIG9uIHRhYmxlIHRlbXBvcmFsX2ZrX3BlcjJwZXIKK0RST1AgVEFCTEUgdGVtcG9y YWxfZmtfcGVyMnBlcjsKK0RST1AgVEFCTEUgdGVtcG9yYWwzOworLS0KKy0tIHRlc3QgRk9SRUlH TiBLRVksIHJhbmdlIHJlZmVyZW5jZXMgcmFuZ2UKIC0tCiAtLSB0ZXN0IHRhYmxlIHNldHVwCiBE Uk9QIFRBQkxFIHRlbXBvcmFsX3JuZzsKQEAgLTE0NjcsNiArMjI3NiwxOCBAQCBDUkVBVEUgVEFC TEUgdGVtcG9yYWxfZmtfcm5nMnJuZyAoCiAgIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcm5nMnJu Z19mayBGT1JFSUdOIEtFWSAocGFyZW50X2lkLCBQRVJJT0QgdmFsaWRfYXQpCiAgICAgUkVGRVJF TkNFUyB0ZW1wb3JhbF9ybmcgKGlkLCBQRVJJT0QgdmFsaWRfYXQpCiApOworXGQgdGVtcG9yYWxf Zmtfcm5nMnJuZworICAgICAgICAgICBUYWJsZSAicHVibGljLnRlbXBvcmFsX2ZrX3JuZzJybmci CisgIENvbHVtbiAgIHwgICBUeXBlICAgIHwgQ29sbGF0aW9uIHwgTnVsbGFibGUgfCBEZWZhdWx0 IAorLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0rLS0tLS0tLS0tLSstLS0tLS0t LS0KKyBpZCAgICAgICAgfCBpbnQ0cmFuZ2UgfCAgICAgICAgICAgfCBub3QgbnVsbCB8IAorIHZh bGlkX2F0ICB8IGRhdGVyYW5nZSB8ICAgICAgICAgICB8IG5vdCBudWxsIHwgCisgcGFyZW50X2lk IHwgaW50NHJhbmdlIHwgICAgICAgICAgIHwgICAgICAgICAgfCAKK0luZGV4ZXM6CisgICAgInRl bXBvcmFsX2ZrX3JuZzJybmdfcGsiIFBSSU1BUlkgS0VZIChpZCwgdmFsaWRfYXQgV0lUSE9VVCBP VkVSTEFQUykKK0ZvcmVpZ24ta2V5IGNvbnN0cmFpbnRzOgorICAgICJ0ZW1wb3JhbF9ma19ybmcy cm5nX2ZrIiBGT1JFSUdOIEtFWSAocGFyZW50X2lkLCBQRVJJT0QgdmFsaWRfYXQpIFJFRkVSRU5D RVMgdGVtcG9yYWxfcm5nKGlkLCBQRVJJT0QgdmFsaWRfYXQpCisKIERST1AgVEFCTEUgdGVtcG9y YWxfZmtfcm5nMnJuZzsKIC0tIHdpdGggbWlzbWF0Y2hlZCBQRVJJT0QgY29sdW1uczoKIC0tIChw YXJlbnRfaWQsIFBFUklPRCB2YWxpZF9hdCkgUkVGRVJFTkNFUyAoaWQsIHZhbGlkX2F0KQpAQCAt MzU4NSw4MyArNDQwNiwzNTY2IEBAIFNFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX21sdHJuZzJt bHRybmcgV0hFUkUgaWQgPSAnWzIwMCwyMDEpJyBPUkRFUiBCWSBpZCwgdmFsCiAgWzIwMCwyMDEp IHwge1syMDIwLTAxLTAxLDIwMjEtMDEtMDEpfSB8IFs4LDkpICAgICAgfCBbOCw5KQogKDIgcm93 cykKIAotLS0gRksgd2l0aCBhIGN1c3RvbSByYW5nZSB0eXBlCi1DUkVBVEUgVFlQRSBteWRhdGVy YW5nZSBBUyByYW5nZShzdWJ0eXBlPWRhdGUpOwotQ1JFQVRFIFRBQkxFIHRlbXBvcmFsX3JuZzMg KAorLS0KKy0tIHRlc3QgRk9SRUlHTiBLRVksIFBFUklPRCByZWZlcmVuY2VzIFBFUklPRAorLS0K Ky0tIHRlc3QgdGFibGUgc2V0dXAKK0RST1AgVEFCTEUgdGVtcG9yYWxfcGVyOworQ1JFQVRFIFRB QkxFIHRlbXBvcmFsX3BlciAoCiAgIGlkIGludDRyYW5nZSwKLSAgdmFsaWRfYXQgbXlkYXRlcmFu Z2UsCi0gIENPTlNUUkFJTlQgdGVtcG9yYWxfcm5nM19wayBQUklNQVJZIEtFWSAoaWQsIHZhbGlk X2F0IFdJVEhPVVQgT1ZFUkxBUFMpCisgIHZhbGlkX2Zyb20gZGF0ZSwKKyAgdmFsaWRfdGlsIGRh dGUsCisgIFBFUklPRCBGT1IgdmFsaWRfYXQgKHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkKICk7Ci1D UkVBVEUgVEFCTEUgdGVtcG9yYWxfZmszX3JuZzJybmcgKAorQUxURVIgVEFCTEUgdGVtcG9yYWxf cGVyCisgIEFERCBDT05TVFJBSU5UIHRlbXBvcmFsX3Blcl9waworICBQUklNQVJZIEtFWSAoaWQs IHZhbGlkX2F0IFdJVEhPVVQgT1ZFUkxBUFMpOworLS0gQ2FuJ3QgY3JlYXRlIGEgRksgd2l0aCBh IG1pc21hdGNoZWQgcmFuZ2UgdHlwZQorQ1JFQVRFIFRBQkxFIHRlbXBvcmFsX2ZrX3BlcjJwZXIg KAogICBpZCBpbnQ0cmFuZ2UsCi0gIHZhbGlkX2F0IG15ZGF0ZXJhbmdlLAorICB2YWxpZF9mcm9t IGludCwKKyAgdmFsaWRfdGlsIGludCwKICAgcGFyZW50X2lkIGludDRyYW5nZSwKLSAgQ09OU1RS QUlOVCB0ZW1wb3JhbF9mazNfcm5nMnJuZ19wayBQUklNQVJZIEtFWSAoaWQsIHZhbGlkX2F0IFdJ VEhPVVQgT1ZFUkxBUFMpLAotICBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrM19ybmcycm5nX2ZrIEZP UkVJR04gS0VZIChwYXJlbnRfaWQsIFBFUklPRCB2YWxpZF9hdCkKLSAgICBSRUZFUkVOQ0VTIHRl bXBvcmFsX3JuZzMgKGlkLCBQRVJJT0QgdmFsaWRfYXQpIE9OIERFTEVURSBDQVNDQURFCisgIFBF UklPRCBGT1IgdmFsaWRfYXQgKHZhbGlkX2Zyb20sIHZhbGlkX3RpbCksCisgIENPTlNUUkFJTlQg dGVtcG9yYWxfZmtfcGVyMnBlcl9wayBQUklNQVJZIEtFWSAoaWQsIHZhbGlkX2F0IFdJVEhPVVQg T1ZFUkxBUFMpLAorICBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3BlcjJwZXJfZmsgRk9SRUlHTiBL RVkgKHBhcmVudF9pZCwgUEVSSU9EIHZhbGlkX2F0KQorICAgIFJFRkVSRU5DRVMgdGVtcG9yYWxf cGVyIChpZCwgUEVSSU9EIHZhbGlkX2F0KQogKTsKLUlOU0VSVCBJTlRPIHRlbXBvcmFsX3JuZzMg KGlkLCB2YWxpZF9hdCkgVkFMVUVTICgnWzgsOSknLCBteWRhdGVyYW5nZSgnMjAxOC0wMS0wMScs ICcyMDIxLTAxLTAxJykpOwotSU5TRVJUIElOVE8gdGVtcG9yYWxfZmszX3JuZzJybmcgKGlkLCB2 YWxpZF9hdCwgcGFyZW50X2lkKSBWQUxVRVMgKCdbNSw2KScsIG15ZGF0ZXJhbmdlKCcyMDE4LTAx LTAxJywgJzIwMjEtMDEtMDEnKSwgJ1s4LDkpJyk7Ci1ERUxFVEUgRlJPTSB0ZW1wb3JhbF9ybmcz IEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMTktMDEtMDEnIFRPICcyMDIwLTAxLTAx JyBXSEVSRSBpZCA9ICdbOCw5KSc7Ci1TRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrM19ybmcycm5n IFdIRVJFIGlkID0gJ1s1LDYpJzsKLSAgaWQgICB8ICAgICAgICB2YWxpZF9hdCAgICAgICAgIHwg cGFyZW50X2lkIAotLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0t Ci0gWzUsNikgfCBbMjAxOC0wMS0wMSwyMDE5LTAxLTAxKSB8IFs4LDkpCi0gWzUsNikgfCBbMjAy MC0wMS0wMSwyMDIxLTAxLTAxKSB8IFs4LDkpCi0oMiByb3dzKQorRVJST1I6ICBmb3JlaWduIGtl eSBjb25zdHJhaW50ICJ0ZW1wb3JhbF9ma19wZXIycGVyX2ZrIiBjYW5ub3QgYmUgaW1wbGVtZW50 ZWQKK0RFVEFJTDogIEtleSBjb2x1bW5zICJ2YWxpZF9hdCIgb2YgdGhlIHJlZmVyZW5jaW5nIHRh YmxlIGFuZCAidmFsaWRfYXQiIG9mIHRoZSByZWZlcmVuY2VkIHRhYmxlIGFyZSBvZiBpbmNvbXBh dGlibGUgdHlwZXM6IGludDRyYW5nZSBhbmQgZGF0ZXJhbmdlLgorLS0gd29ya3M6IFBFUklPRCBm b3IgYm90aCByZWZlcmVuY2VkIGFuZCByZWZlcmVuY2luZworQ1JFQVRFIFRBQkxFIHRlbXBvcmFs X2ZrX3BlcjJwZXIgKAorICBpZCBpbnQ0cmFuZ2UsCisgIHZhbGlkX2Zyb20gZGF0ZSwKKyAgdmFs aWRfdGlsIGRhdGUsCisgIHBhcmVudF9pZCBpbnQ0cmFuZ2UsCisgIFBFUklPRCBGT1IgdmFsaWRf YXQgKHZhbGlkX2Zyb20sIHZhbGlkX3RpbCksCisgIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcGVy MnBlcl9wayBQUklNQVJZIEtFWSAoaWQsIHZhbGlkX2F0IFdJVEhPVVQgT1ZFUkxBUFMpLAorICBD T05TVFJBSU5UIHRlbXBvcmFsX2ZrX3BlcjJwZXJfZmsgRk9SRUlHTiBLRVkgKHBhcmVudF9pZCwg UEVSSU9EIHZhbGlkX2F0KQorICAgIFJFRkVSRU5DRVMgdGVtcG9yYWxfcGVyIChpZCwgUEVSSU9E IHZhbGlkX2F0KQorKTsKK1xkIHRlbXBvcmFsX2ZrX3BlcjJwZXIKKyAgICAgICAgICAgVGFibGUg InB1YmxpYy50ZW1wb3JhbF9ma19wZXIycGVyIgorICAgQ29sdW1uICAgfCAgIFR5cGUgICAgfCBD b2xsYXRpb24gfCBOdWxsYWJsZSB8IERlZmF1bHQgCistLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0r LS0tLS0tLS0tLS0rLS0tLS0tLS0tLSstLS0tLS0tLS0KKyBpZCAgICAgICAgIHwgaW50NHJhbmdl IHwgICAgICAgICAgIHwgbm90IG51bGwgfCAKKyB2YWxpZF9mcm9tIHwgZGF0ZSAgICAgIHwgICAg ICAgICAgIHwgICAgICAgICAgfCAKKyB2YWxpZF90aWwgIHwgZGF0ZSAgICAgIHwgICAgICAgICAg IHwgICAgICAgICAgfCAKKyBwYXJlbnRfaWQgIHwgaW50NHJhbmdlIHwgICAgICAgICAgIHwgICAg ICAgICAgfCAKK1BlcmlvZHM6CisgICAgdmFsaWRfYXQgKHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkK K0luZGV4ZXM6CisgICAgInRlbXBvcmFsX2ZrX3BlcjJwZXJfcGsiIFBSSU1BUlkgS0VZIChpZCwg dmFsaWRfYXQgV0lUSE9VVCBPVkVSTEFQUykKK0NoZWNrIGNvbnN0cmFpbnRzOgorICAgICJ0ZW1w b3JhbF9ma19wZXIycGVyX3ZhbGlkX2F0X2NoZWNrIiBDSEVDSyAodmFsaWRfZnJvbSA8IHZhbGlk X3RpbCkKK0ZvcmVpZ24ta2V5IGNvbnN0cmFpbnRzOgorICAgICJ0ZW1wb3JhbF9ma19wZXIycGVy X2ZrIiBGT1JFSUdOIEtFWSAocGFyZW50X2lkLCBQRVJJT0QgdmFsaWRfYXQpIFJFRkVSRU5DRVMg dGVtcG9yYWxfcGVyKGlkLCBQRVJJT0QgdmFsaWRfYXQpCiAKLURST1AgVEFCTEUgdGVtcG9yYWxf ZmszX3JuZzJybmc7Ci1EUk9QIFRBQkxFIHRlbXBvcmFsX3JuZzM7Ci1EUk9QIFRZUEUgbXlkYXRl cmFuZ2U7Ci0tLQotLS0gRksgYmV0d2VlbiBwYXJ0aXRpb25lZCB0YWJsZXM6IHJhbmdlcwotLS0K LUNSRUFURSBUQUJMRSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ybmcgKAorRFJPUCBUQUJMRSB0ZW1w b3JhbF9ma19wZXIycGVyOworLS0gd2l0aCBtaXNtYXRjaGVkIFBFUklPRCBjb2x1bW5zOgorLS0g KHBhcmVudF9pZCwgUEVSSU9EIHZhbGlkX2F0KSBSRUZFUkVOQ0VTIChpZCwgdmFsaWRfYXQpCist LSBSRUZFUkVOQ0VTIHBhcnQgc2hvdWxkIHNwZWNpZnkgUEVSSU9ECitDUkVBVEUgVEFCTEUgdGVt cG9yYWxfZmtfcGVyMnBlciAoCiAgIGlkIGludDRyYW5nZSwKLSAgdmFsaWRfYXQgZGF0ZXJhbmdl LAotICBuYW1lIHRleHQsCi0gIENPTlNUUkFJTlQgdGVtcG9yYWxfcGFyaXRpb25lZF9ybmdfcGsg UFJJTUFSWSBLRVkgKGlkLCB2YWxpZF9hdCBXSVRIT1VUIE9WRVJMQVBTKQotKSBQQVJUSVRJT04g QlkgTElTVCAoaWQpOwotQ1JFQVRFIFRBQkxFIHRwMSBQQVJUSVRJT04gT0YgdGVtcG9yYWxfcGFy dGl0aW9uZWRfcm5nIEZPUiBWQUxVRVMgSU4gKCdbMSwyKScsICdbMyw0KScsICdbNSw2KScsICdb Nyw4KScsICdbOSwxMCknLCAnWzExLDEyKScsICdbMTMsMTQpJywgJ1sxNSwxNiknLCAnWzE3LDE4 KScsICdbMTksMjApJywgJ1syMSwyMiknLCAnWzIzLDI0KScpOwotQ1JFQVRFIFRBQkxFIHRwMiBQ QVJUSVRJT04gT0YgdGVtcG9yYWxfcGFydGl0aW9uZWRfcm5nIEZPUiBWQUxVRVMgSU4gKCdbMCwx KScsICdbMiwzKScsICdbNCw1KScsICdbNiw3KScsICdbOCw5KScsICdbMTAsMTEpJywgJ1sxMiwx MyknLCAnWzE0LDE1KScsICdbMTYsMTcpJywgJ1sxOCwxOSknLCAnWzIwLDIxKScsICdbMjIsMjMp JywgJ1syNCwyNSknKTsKLUlOU0VSVCBJTlRPIHRlbXBvcmFsX3BhcnRpdGlvbmVkX3JuZyAoaWQs IHZhbGlkX2F0LCBuYW1lKSBWQUxVRVMKLSAgKCdbMSwyKScsIGRhdGVyYW5nZSgnMjAwMC0wMS0w MScsICcyMDAwLTAyLTAxJyksICdvbmUnKSwKLSAgKCdbMSwyKScsIGRhdGVyYW5nZSgnMjAwMC0w Mi0wMScsICcyMDAwLTAzLTAxJyksICdvbmUnKSwKLSAgKCdbMiwzKScsIGRhdGVyYW5nZSgnMjAw MC0wMS0wMScsICcyMDEwLTAxLTAxJyksICd0d28nKTsKLUNSRUFURSBUQUJMRSB0ZW1wb3JhbF9w YXJ0aXRpb25lZF9ma19ybmcycm5nICgKKyAgdmFsaWRfZnJvbSBkYXRlLAorICB2YWxpZF90aWwg ZGF0ZSwKKyAgcGFyZW50X2lkIGludDRyYW5nZSwKKyAgUEVSSU9EIEZPUiB2YWxpZF9hdCAodmFs aWRfZnJvbSwgdmFsaWRfdGlsKSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19wZXIycGVyX3Br IFBSSU1BUlkgS0VZIChpZCwgdmFsaWRfYXQgV0lUSE9VVCBPVkVSTEFQUyksCisgIENPTlNUUkFJ TlQgdGVtcG9yYWxfZmtfcGVyMnBlcl9mayBGT1JFSUdOIEtFWSAocGFyZW50X2lkLCBQRVJJT0Qg dmFsaWRfYXQpCisgICAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9wZXIgKGlkLCB2YWxpZF9hdCkKKyk7 CitFUlJPUjogIGZvcmVpZ24ga2V5IHVzZXMgUEVSSU9EIG9uIHRoZSByZWZlcmVuY2luZyB0YWJs ZSBidXQgbm90IHRoZSByZWZlcmVuY2VkIHRhYmxlCistLSAocGFyZW50X2lkLCB2YWxpZF9hdCkg UkVGRVJFTkNFUyAoaWQsIHZhbGlkX2F0KQorLS0gYm90aCBzaG91bGQgc3BlY2lmeSBQRVJJT0Q6 CitDUkVBVEUgVEFCTEUgdGVtcG9yYWxfZmtfcGVyMnBlciAoCiAgIGlkIGludDRyYW5nZSwKLSAg dmFsaWRfYXQgZGF0ZXJhbmdlLAorICB2YWxpZF9mcm9tIGRhdGUsCisgIHZhbGlkX3RpbCBkYXRl LAogICBwYXJlbnRfaWQgaW50NHJhbmdlLAotICBDT05TVFJBSU5UIHRlbXBvcmFsX3BhcnRpdGlv bmVkX2ZrX3JuZzJybmdfcGsgUFJJTUFSWSBLRVkgKGlkLCB2YWxpZF9hdCBXSVRIT1VUIE9WRVJM QVBTKSwKLSAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ma19ybmcycm5nX2ZrIEZP UkVJR04gS0VZIChwYXJlbnRfaWQsIFBFUklPRCB2YWxpZF9hdCkKLSAgICBSRUZFUkVOQ0VTIHRl bXBvcmFsX3BhcnRpdGlvbmVkX3JuZyAoaWQsIFBFUklPRCB2YWxpZF9hdCkKLSkgUEFSVElUSU9O IEJZIExJU1QgKGlkKTsKLUNSRUFURSBUQUJMRSB0ZmtwMSBQQVJUSVRJT04gT0YgdGVtcG9yYWxf cGFydGl0aW9uZWRfZmtfcm5nMnJuZyBGT1IgVkFMVUVTIElOICgnWzEsMiknLCAnWzMsNCknLCAn WzUsNiknLCAnWzcsOCknLCAnWzksMTApJywgJ1sxMSwxMiknLCAnWzEzLDE0KScsICdbMTUsMTYp JywgJ1sxNywxOCknLCAnWzE5LDIwKScsICdbMjEsMjIpJywgJ1syMywyNCknKTsKLUNSRUFURSBU QUJMRSB0ZmtwMiBQQVJUSVRJT04gT0YgdGVtcG9yYWxfcGFydGl0aW9uZWRfZmtfcm5nMnJuZyBG T1IgVkFMVUVTIElOICgnWzAsMSknLCAnWzIsMyknLCAnWzQsNSknLCAnWzYsNyknLCAnWzgsOSkn LCAnWzEwLDExKScsICdbMTIsMTMpJywgJ1sxNCwxNSknLCAnWzE2LDE3KScsICdbMTgsMTkpJywg J1syMCwyMSknLCAnWzIyLDIzKScsICdbMjQsMjUpJyk7Ci0tLQotLS0gcGFydGl0aW9uZWQgRksg cmVmZXJlbmNpbmcgaW5zZXJ0cwotLS0KLUlOU0VSVCBJTlRPIHRlbXBvcmFsX3BhcnRpdGlvbmVk X2ZrX3JuZzJybmcgKGlkLCB2YWxpZF9hdCwgcGFyZW50X2lkKSBWQUxVRVMKLSAgKCdbMSwyKScs IGRhdGVyYW5nZSgnMjAwMC0wMS0wMScsICcyMDAwLTAyLTE1JyksICdbMSwyKScpLAotICAoJ1sx LDIpJywgZGF0ZXJhbmdlKCcyMDAxLTAxLTAxJywgJzIwMDItMDEtMDEnKSwgJ1syLDMpJyksCi0g ICgnWzIsMyknLCBkYXRlcmFuZ2UoJzIwMDAtMDEtMDEnLCAnMjAwMC0wMi0xNScpLCAnWzEsMikn KTsKLS0tIHNob3VsZCBmYWlsOgotSU5TRVJUIElOVE8gdGVtcG9yYWxfcGFydGl0aW9uZWRfZmtf cm5nMnJuZyAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQpIFZBTFVFUwotICAoJ1szLDQpJywgZGF0 ZXJhbmdlKCcyMDEwLTAxLTAxJywgJzIwMTAtMDItMTUnKSwgJ1sxLDIpJyk7Ci1FUlJPUjogIGlu c2VydCBvciB1cGRhdGUgb24gdGFibGUgInRma3AxIiB2aW9sYXRlcyBmb3JlaWduIGtleSBjb25z dHJhaW50ICJ0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ma19ybmcycm5nX2ZrIgotREVUQUlMOiAgS2V5 IChwYXJlbnRfaWQsIHZhbGlkX2F0KT0oWzEsMiksIFsyMDEwLTAxLTAxLDIwMTAtMDItMTUpKSBp cyBub3QgcHJlc2VudCBpbiB0YWJsZSAidGVtcG9yYWxfcGFydGl0aW9uZWRfcm5nIi4KLUlOU0VS VCBJTlRPIHRlbXBvcmFsX3BhcnRpdGlvbmVkX2ZrX3JuZzJybmcgKGlkLCB2YWxpZF9hdCwgcGFy ZW50X2lkKSBWQUxVRVMKLSAgKCdbMyw0KScsIGRhdGVyYW5nZSgnMjAwMC0wMS0wMScsICcyMDAw LTAyLTE1JyksICdbMyw0KScpOwotRVJST1I6ICBpbnNlcnQgb3IgdXBkYXRlIG9uIHRhYmxlICJ0 ZmtwMSIgdmlvbGF0ZXMgZm9yZWlnbiBrZXkgY29uc3RyYWludCAidGVtcG9yYWxfcGFydGl0aW9u ZWRfZmtfcm5nMnJuZ19mayIKLURFVEFJTDogIEtleSAocGFyZW50X2lkLCB2YWxpZF9hdCk9KFsz LDQpLCBbMjAwMC0wMS0wMSwyMDAwLTAyLTE1KSkgaXMgbm90IHByZXNlbnQgaW4gdGFibGUgInRl bXBvcmFsX3BhcnRpdGlvbmVkX3JuZyIuCisgIFBFUklPRCBGT1IgdmFsaWRfYXQgKHZhbGlkX2Zy b20sIHZhbGlkX3RpbCksCisgIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcGVyMnBlcl9wayBQUklN QVJZIEtFWSAoaWQsIHZhbGlkX2F0IFdJVEhPVVQgT1ZFUkxBUFMpLAorICBDT05TVFJBSU5UIHRl bXBvcmFsX2ZrX3BlcjJwZXJfZmsgRk9SRUlHTiBLRVkgKHBhcmVudF9pZCwgdmFsaWRfYXQpCisg ICAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9wZXIgKGlkLCB2YWxpZF9hdCkKKyk7CitFUlJPUjogIGZv cmVpZ24ga2V5IG11c3QgdXNlIFBFUklPRCB3aGVuIHJlZmVyZW5jaW5nIGEgcHJpbWFyeSBrZXkg dXNpbmcgV0lUSE9VVCBPVkVSTEFQUworLS0gKHBhcmVudF9pZCwgdmFsaWRfYXQpIFJFRkVSRU5D RVMgKGlkLCBQRVJJT0QgdmFsaWRfYXQpCistLSBGT1JFSUdOIEtFWSBwYXJ0IHNob3VsZCBzcGVj aWZ5IFBFUklPRAorQ1JFQVRFIFRBQkxFIHRlbXBvcmFsX2ZrX3BlcjJwZXIgKAorICBpZCBpbnQ0 cmFuZ2UsCisgIHZhbGlkX2Zyb20gZGF0ZSwKKyAgdmFsaWRfdGlsIGRhdGUsCisgIHBhcmVudF9p ZCBpbnQ0cmFuZ2UsCisgIFBFUklPRCBGT1IgdmFsaWRfYXQgKHZhbGlkX2Zyb20sIHZhbGlkX3Rp bCksCisgIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcGVyMnBlcl9wayBQUklNQVJZIEtFWSAoaWQs IHZhbGlkX2F0IFdJVEhPVVQgT1ZFUkxBUFMpLAorICBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3Bl cjJwZXJfZmsgRk9SRUlHTiBLRVkgKHBhcmVudF9pZCwgdmFsaWRfYXQpCisgICAgUkVGRVJFTkNF UyB0ZW1wb3JhbF9wZXIgKGlkLCBQRVJJT0QgdmFsaWRfYXQpCispOworRVJST1I6ICBmb3JlaWdu IGtleSB1c2VzIFBFUklPRCBvbiB0aGUgcmVmZXJlbmNlZCB0YWJsZSBidXQgbm90IHRoZSByZWZl cmVuY2luZyB0YWJsZQorLS0gKHBhcmVudF9pZCwgdmFsaWRfYXQpIFJFRkVSRU5DRVMgW2ltcGxp Y2l0XQorLS0gRk9SRUlHTiBLRVkgcGFydCBzaG91bGQgc3BlY2lmeSBQRVJJT0QKK0NSRUFURSBU QUJMRSB0ZW1wb3JhbF9ma19wZXIycGVyICgKKyAgaWQgaW50NHJhbmdlLAorICB2YWxpZF9mcm9t IGRhdGUsCisgIHZhbGlkX3RpbCBkYXRlLAorICBwYXJlbnRfaWQgaW50NHJhbmdlLAorICBQRVJJ T0QgRk9SIHZhbGlkX2F0ICh2YWxpZF9mcm9tLCB2YWxpZF90aWwpLAorICBDT05TVFJBSU5UIHRl bXBvcmFsX2ZrX3BlcjJwZXJfcGsgUFJJTUFSWSBLRVkgKGlkLCB2YWxpZF9hdCBXSVRIT1VUIE9W RVJMQVBTKSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19wZXIycGVyX2ZrIEZPUkVJR04gS0VZ IChwYXJlbnRfaWQsIHZhbGlkX2F0KQorICAgIFJFRkVSRU5DRVMgdGVtcG9yYWxfcGVyCispOwor RVJST1I6ICBmb3JlaWduIGtleSB1c2VzIFBFUklPRCBvbiB0aGUgcmVmZXJlbmNlZCB0YWJsZSBi dXQgbm90IHRoZSByZWZlcmVuY2luZyB0YWJsZQorLS0gKHBhcmVudF9pZCwgUEVSSU9EIHZhbGlk X2F0KSBSRUZFUkVOQ0VTIChpZCkKK0NSRUFURSBUQUJMRSB0ZW1wb3JhbF9ma19wZXIycGVyICgK KyAgaWQgaW50NHJhbmdlLAorICB2YWxpZF9mcm9tIGRhdGUsCisgIHZhbGlkX3RpbCBkYXRlLAor ICBwYXJlbnRfaWQgaW50NHJhbmdlLAorICBQRVJJT0QgRk9SIHZhbGlkX2F0ICh2YWxpZF9mcm9t LCB2YWxpZF90aWwpLAorICBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3BlcjJwZXJfcGsgUFJJTUFS WSBLRVkgKGlkLCB2YWxpZF9hdCBXSVRIT1VUIE9WRVJMQVBTKSwKKyAgQ09OU1RSQUlOVCB0ZW1w b3JhbF9ma19wZXIycGVyX2ZrIEZPUkVJR04gS0VZIChwYXJlbnRfaWQsIFBFUklPRCB2YWxpZF9h dCkKKyAgICBSRUZFUkVOQ0VTIHRlbXBvcmFsX3BlciAoaWQpCispOworRVJST1I6ICBmb3JlaWdu IGtleSB1c2VzIFBFUklPRCBvbiB0aGUgcmVmZXJlbmNpbmcgdGFibGUgYnV0IG5vdCB0aGUgcmVm ZXJlbmNlZCB0YWJsZQorLS0gKHBhcmVudF9pZCkgUkVGRVJFTkNFUyAoaWQsIFBFUklPRCB2YWxp ZF9hdCkKK0NSRUFURSBUQUJMRSB0ZW1wb3JhbF9ma19wZXIycGVyICgKKyAgaWQgaW50NHJhbmdl LAorICB2YWxpZF9mcm9tIGRhdGUsCisgIHZhbGlkX3RpbCBkYXRlLAorICBwYXJlbnRfaWQgaW50 NHJhbmdlLAorICBQRVJJT0QgRk9SIHZhbGlkX2F0ICh2YWxpZF9mcm9tLCB2YWxpZF90aWwpLAor ICBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3BlcjJwZXJfcGsgUFJJTUFSWSBLRVkgKGlkLCB2YWxp ZF9hdCBXSVRIT1VUIE9WRVJMQVBTKSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19wZXIycGVy X2ZrIEZPUkVJR04gS0VZIChwYXJlbnRfaWQpCisgICAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9wZXIg KGlkLCBQRVJJT0QgdmFsaWRfYXQpCispOworRVJST1I6ICBmb3JlaWduIGtleSB1c2VzIFBFUklP RCBvbiB0aGUgcmVmZXJlbmNlZCB0YWJsZSBidXQgbm90IHRoZSByZWZlcmVuY2luZyB0YWJsZQor LS0gd2l0aCBpbmZlcnJlZCBQSyBvbiB0aGUgcmVmZXJlbmNlZCB0YWJsZToKKy0tIChwYXJlbnRf aWQsIFBFUklPRCB2YWxpZF9hdCkgUkVGRVJFTkNFUyBbaW1wbGljaXRdCitDUkVBVEUgVEFCTEUg dGVtcG9yYWxfZmtfcGVyMnBlciAoCisgIGlkIGludDRyYW5nZSwKKyAgdmFsaWRfZnJvbSBkYXRl LAorICB2YWxpZF90aWwgZGF0ZSwKKyAgcGFyZW50X2lkIGludDRyYW5nZSwKKyAgUEVSSU9EIEZP UiB2YWxpZF9hdCAodmFsaWRfZnJvbSwgdmFsaWRfdGlsKSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3Jh bF9ma19wZXIycGVyX3BrIFBSSU1BUlkgS0VZIChpZCwgdmFsaWRfYXQgV0lUSE9VVCBPVkVSTEFQ UyksCisgIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcGVyMnBlcl9mayBGT1JFSUdOIEtFWSAocGFy ZW50X2lkLCBQRVJJT0QgdmFsaWRfYXQpCisgICAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9wZXIKKyk7 CitEUk9QIFRBQkxFIHRlbXBvcmFsX2ZrX3BlcjJwZXI7CistLSAocGFyZW50X2lkKSBSRUZFUkVO Q0VTIFtpbXBsaWNpdF0KK0NSRUFURSBUQUJMRSB0ZW1wb3JhbF9ma19wZXIycGVyICgKKyAgaWQg aW50NHJhbmdlLAorICB2YWxpZF9mcm9tIGRhdGUsCisgIHZhbGlkX3RpbCBkYXRlLAorICBwYXJl bnRfaWQgaW50NHJhbmdlLAorICBQRVJJT0QgRk9SIHZhbGlkX2F0ICh2YWxpZF9mcm9tLCB2YWxp ZF90aWwpLAorICBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3BlcjJwZXJfcGsgUFJJTUFSWSBLRVkg KGlkLCB2YWxpZF9hdCBXSVRIT1VUIE9WRVJMQVBTKSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9m a19wZXIycGVyX2ZrIEZPUkVJR04gS0VZIChwYXJlbnRfaWQpCisgICAgUkVGRVJFTkNFUyB0ZW1w b3JhbF9wZXIKKyk7CitFUlJPUjogIGZvcmVpZ24ga2V5IHVzZXMgUEVSSU9EIG9uIHRoZSByZWZl cmVuY2VkIHRhYmxlIGJ1dCBub3QgdGhlIHJlZmVyZW5jaW5nIHRhYmxlCistLSBzaG91bGQgZmFp bCBiZWNhdXNlIG9mIGR1cGxpY2F0ZSByZWZlcmVuY2VkIGNvbHVtbnM6CitDUkVBVEUgVEFCTEUg dGVtcG9yYWxfZmtfcGVyMnBlciAoCisgIGlkIGludDRyYW5nZSwKKyAgdmFsaWRfZnJvbSBkYXRl LAorICB2YWxpZF90aWwgZGF0ZSwKKyAgcGFyZW50X2lkIGludDRyYW5nZSwKKyAgUEVSSU9EIEZP UiB2YWxpZF9hdCAodmFsaWRfZnJvbSwgdmFsaWRfdGlsKSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3Jh bF9ma19wZXIycGVyX3BrIFBSSU1BUlkgS0VZIChpZCwgdmFsaWRfYXQgV0lUSE9VVCBPVkVSTEFQ UyksCisgIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcGVyMnBlcl9mayBGT1JFSUdOIEtFWSAocGFy ZW50X2lkLCBQRVJJT0QgcGFyZW50X2lkKQorICAgIFJFRkVSRU5DRVMgdGVtcG9yYWxfcGVyIChp ZCwgUEVSSU9EIGlkKQorKTsKK0VSUk9SOiAgZm9yZWlnbiBrZXkgcmVmZXJlbmNlZC1jb2x1bW5z IGxpc3QgbXVzdCBub3QgY29udGFpbiBkdXBsaWNhdGVzCistLSBUd28gc2NhbGFyIGNvbHVtbnMK K0RST1AgVEFCTEUgdGVtcG9yYWxfcGVyMjsKK0NSRUFURSBUQUJMRSB0ZW1wb3JhbF9wZXIyICgK KyAgaWQxIGludDRyYW5nZSwKKyAgaWQyIGludDRyYW5nZSwKKyAgdmFsaWRfZnJvbSBkYXRlLAor ICB2YWxpZF90aWwgZGF0ZSwKKyAgUEVSSU9EIEZPUiB2YWxpZF9hdCAodmFsaWRfZnJvbSwgdmFs aWRfdGlsKSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9wZXIyX3BrIFBSSU1BUlkgS0VZIChpZDEs IGlkMiwgdmFsaWRfYXQgV0lUSE9VVCBPVkVSTEFQUykKKyk7CitDUkVBVEUgVEFCTEUgdGVtcG9y YWxfZmsyX3BlcjJwZXIgKAorICBpZCBpbnQ0cmFuZ2UsCisgIHZhbGlkX2Zyb20gZGF0ZSwKKyAg dmFsaWRfdGlsIGRhdGUsCisgIHBhcmVudF9pZDEgaW50NHJhbmdlLAorICBwYXJlbnRfaWQyIGlu dDRyYW5nZSwKKyAgUEVSSU9EIEZPUiB2YWxpZF9hdCAodmFsaWRfZnJvbSwgdmFsaWRfdGlsKSwK KyAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9mazJfcGVyMnBlcl9wayBQUklNQVJZIEtFWSAoaWQsIHZh bGlkX2F0IFdJVEhPVVQgT1ZFUkxBUFMpLAorICBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrMl9wZXIy cGVyX2ZrIEZPUkVJR04gS0VZIChwYXJlbnRfaWQxLCBwYXJlbnRfaWQyLCBQRVJJT0QgdmFsaWRf YXQpCisgICAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9wZXIyIChpZDEsIGlkMiwgUEVSSU9EIHZhbGlk X2F0KQorKTsKK1xkIHRlbXBvcmFsX2ZrMl9wZXIycGVyCisgICAgICAgICAgIFRhYmxlICJwdWJs aWMudGVtcG9yYWxfZmsyX3BlcjJwZXIiCisgICBDb2x1bW4gICB8ICAgVHlwZSAgICB8IENvbGxh dGlvbiB8IE51bGxhYmxlIHwgRGVmYXVsdCAKKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLSstLS0t LS0tLS0tLSstLS0tLS0tLS0tKy0tLS0tLS0tLQorIGlkICAgICAgICAgfCBpbnQ0cmFuZ2UgfCAg ICAgICAgICAgfCBub3QgbnVsbCB8IAorIHZhbGlkX2Zyb20gfCBkYXRlICAgICAgfCAgICAgICAg ICAgfCAgICAgICAgICB8IAorIHZhbGlkX3RpbCAgfCBkYXRlICAgICAgfCAgICAgICAgICAgfCAg ICAgICAgICB8IAorIHBhcmVudF9pZDEgfCBpbnQ0cmFuZ2UgfCAgICAgICAgICAgfCAgICAgICAg ICB8IAorIHBhcmVudF9pZDIgfCBpbnQ0cmFuZ2UgfCAgICAgICAgICAgfCAgICAgICAgICB8IAor UGVyaW9kczoKKyAgICB2YWxpZF9hdCAodmFsaWRfZnJvbSwgdmFsaWRfdGlsKQorSW5kZXhlczoK KyAgICAidGVtcG9yYWxfZmsyX3BlcjJwZXJfcGsiIFBSSU1BUlkgS0VZIChpZCwgdmFsaWRfYXQg V0lUSE9VVCBPVkVSTEFQUykKK0NoZWNrIGNvbnN0cmFpbnRzOgorICAgICJ0ZW1wb3JhbF9mazJf cGVyMnBlcl92YWxpZF9hdF9jaGVjayIgQ0hFQ0sgKHZhbGlkX2Zyb20gPCB2YWxpZF90aWwpCitG b3JlaWduLWtleSBjb25zdHJhaW50czoKKyAgICAidGVtcG9yYWxfZmsyX3BlcjJwZXJfZmsiIEZP UkVJR04gS0VZIChwYXJlbnRfaWQxLCBwYXJlbnRfaWQyLCBQRVJJT0QgdmFsaWRfYXQpIFJFRkVS RU5DRVMgdGVtcG9yYWxfcGVyMihpZDEsIGlkMiwgUEVSSU9EIHZhbGlkX2F0KQorCitEUk9QIFRB QkxFIHRlbXBvcmFsX2ZrMl9wZXIycGVyOwogLS0KLS0tIHBhcnRpdGlvbmVkIEZLIHJlZmVyZW5j aW5nIHVwZGF0ZXMKKy0tIHRlc3QgQUxURVIgVEFCTEUgQUREIENPTlNUUkFJTlQKIC0tCi1VUERB VEUgdGVtcG9yYWxfcGFydGl0aW9uZWRfZmtfcm5nMnJuZyBTRVQgdmFsaWRfYXQgPSBkYXRlcmFu Z2UoJzIwMDAtMDEtMDEnLCAnMjAwMC0wMi0xMycpIFdIRVJFIGlkID0gJ1syLDMpJzsKLS0tIG1v dmUgYSByb3cgZnJvbSB0aGUgZmlyc3QgcGFydGl0aW9uIHRvIHRoZSBzZWNvbmQKLVVQREFURSB0 ZW1wb3JhbF9wYXJ0aXRpb25lZF9ma19ybmcycm5nIFNFVCBpZCA9ICdbNCw1KScgV0hFUkUgaWQg PSAnWzEsMiknOwotLS0gbW92ZSBhIHJvdyBmcm9tIHRoZSBzZWNvbmQgcGFydGl0aW9uIHRvIHRo ZSBmaXJzdAotVVBEQVRFIHRlbXBvcmFsX3BhcnRpdGlvbmVkX2ZrX3JuZzJybmcgU0VUIGlkID0g J1sxLDIpJyBXSEVSRSBpZCA9ICdbNCw1KSc7CitDUkVBVEUgVEFCTEUgdGVtcG9yYWxfZmtfcGVy MnBlciAoCisgIGlkIGludDRyYW5nZSwKKyAgdmFsaWRfZnJvbSBkYXRlLAorICB2YWxpZF90aWwg ZGF0ZSwKKyAgcGFyZW50X2lkIGludDRyYW5nZSwKKyAgUEVSSU9EIEZPUiB2YWxpZF9hdCAodmFs aWRfZnJvbSwgdmFsaWRfdGlsKSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19wZXIycGVyX3Br IFBSSU1BUlkgS0VZIChpZCwgdmFsaWRfYXQgV0lUSE9VVCBPVkVSTEFQUykKKyk7CitBTFRFUiBU QUJMRSB0ZW1wb3JhbF9ma19wZXIycGVyCisgIEFERCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3Bl cjJwZXJfZmsKKyAgRk9SRUlHTiBLRVkgKHBhcmVudF9pZCwgUEVSSU9EIHZhbGlkX2F0KQorICBS RUZFUkVOQ0VTIHRlbXBvcmFsX3BlciAoaWQsIFBFUklPRCB2YWxpZF9hdCk7CistLSBUd28gc2Nh bGFyIGNvbHVtbnM6CitDUkVBVEUgVEFCTEUgdGVtcG9yYWxfZmsyX3BlcjJwZXIgKAorICBpZCBp bnQ0cmFuZ2UsCisgIHZhbGlkX2Zyb20gZGF0ZSwKKyAgdmFsaWRfdGlsIGRhdGUsCisgIHBhcmVu dF9pZDEgaW50NHJhbmdlLAorICBwYXJlbnRfaWQyIGludDRyYW5nZSwKKyAgUEVSSU9EIEZPUiB2 YWxpZF9hdCAodmFsaWRfZnJvbSwgdmFsaWRfdGlsKSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9m azJfcGVyMnBlcl9wayBQUklNQVJZIEtFWSAoaWQsIHZhbGlkX2F0IFdJVEhPVVQgT1ZFUkxBUFMp CispOworQUxURVIgVEFCTEUgdGVtcG9yYWxfZmsyX3BlcjJwZXIKKyAgQUREIENPTlNUUkFJTlQg dGVtcG9yYWxfZmsyX3BlcjJwZXJfZmsKKyAgRk9SRUlHTiBLRVkgKHBhcmVudF9pZDEsIHBhcmVu dF9pZDIsIFBFUklPRCB2YWxpZF9hdCkKKyAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9wZXIyIChpZDEs IGlkMiwgUEVSSU9EIHZhbGlkX2F0KTsKK1xkIHRlbXBvcmFsX2ZrMl9wZXIycGVyCisgICAgICAg ICAgIFRhYmxlICJwdWJsaWMudGVtcG9yYWxfZmsyX3BlcjJwZXIiCisgICBDb2x1bW4gICB8ICAg VHlwZSAgICB8IENvbGxhdGlvbiB8IE51bGxhYmxlIHwgRGVmYXVsdCAKKy0tLS0tLS0tLS0tLSst LS0tLS0tLS0tLSstLS0tLS0tLS0tLSstLS0tLS0tLS0tKy0tLS0tLS0tLQorIGlkICAgICAgICAg fCBpbnQ0cmFuZ2UgfCAgICAgICAgICAgfCBub3QgbnVsbCB8IAorIHZhbGlkX2Zyb20gfCBkYXRl ICAgICAgfCAgICAgICAgICAgfCAgICAgICAgICB8IAorIHZhbGlkX3RpbCAgfCBkYXRlICAgICAg fCAgICAgICAgICAgfCAgICAgICAgICB8IAorIHBhcmVudF9pZDEgfCBpbnQ0cmFuZ2UgfCAgICAg ICAgICAgfCAgICAgICAgICB8IAorIHBhcmVudF9pZDIgfCBpbnQ0cmFuZ2UgfCAgICAgICAgICAg fCAgICAgICAgICB8IAorUGVyaW9kczoKKyAgICB2YWxpZF9hdCAodmFsaWRfZnJvbSwgdmFsaWRf dGlsKQorSW5kZXhlczoKKyAgICAidGVtcG9yYWxfZmsyX3BlcjJwZXJfcGsiIFBSSU1BUlkgS0VZ IChpZCwgdmFsaWRfYXQgV0lUSE9VVCBPVkVSTEFQUykKK0NoZWNrIGNvbnN0cmFpbnRzOgorICAg ICJ0ZW1wb3JhbF9mazJfcGVyMnBlcl92YWxpZF9hdF9jaGVjayIgQ0hFQ0sgKHZhbGlkX2Zyb20g PCB2YWxpZF90aWwpCitGb3JlaWduLWtleSBjb25zdHJhaW50czoKKyAgICAidGVtcG9yYWxfZmsy X3BlcjJwZXJfZmsiIEZPUkVJR04gS0VZIChwYXJlbnRfaWQxLCBwYXJlbnRfaWQyLCBQRVJJT0Qg dmFsaWRfYXQpIFJFRkVSRU5DRVMgdGVtcG9yYWxfcGVyMihpZDEsIGlkMiwgUEVSSU9EIHZhbGlk X2F0KQorCistLSB3aXRoIGluZmVycmVkIFBLIG9uIHRoZSByZWZlcmVuY2VkIHRhYmxlLCBhbmQg d3JvbmcgY29sdW1uIHR5cGU6CitBTFRFUiBUQUJMRSB0ZW1wb3JhbF9ma19wZXIycGVyCisgIERS T1AgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19wZXIycGVyX2ZrLAorICBEUk9QIFBFUklPRCBGT1Ig dmFsaWRfYXQsCisgIEFMVEVSIENPTFVNTiB2YWxpZF9mcm9tIFRZUEUgdGltZXN0YW1wLAorICBB TFRFUiBDT0xVTU4gdmFsaWRfdGlsIFRZUEUgdGltZXN0YW1wLAorICBBREQgUEVSSU9EIEZPUiB2 YWxpZF9hdCAodmFsaWRfZnJvbSwgdmFsaWRfdGlsKTsKK0FMVEVSIFRBQkxFIHRlbXBvcmFsX2Zr X3BlcjJwZXIKKyAgQUREIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcGVyMnBlcl9maworICBGT1JF SUdOIEtFWSAocGFyZW50X2lkLCBQRVJJT0QgdmFsaWRfYXQpCisgIFJFRkVSRU5DRVMgdGVtcG9y YWxfcGVyOworRVJST1I6ICBmb3JlaWduIGtleSBjb25zdHJhaW50ICJ0ZW1wb3JhbF9ma19wZXIy cGVyX2ZrIiBjYW5ub3QgYmUgaW1wbGVtZW50ZWQKK0RFVEFJTDogIEtleSBjb2x1bW5zICJ2YWxp ZF9hdCIgb2YgdGhlIHJlZmVyZW5jaW5nIHRhYmxlIGFuZCAidmFsaWRfYXQiIG9mIHRoZSByZWZl cmVuY2VkIHRhYmxlIGFyZSBvZiBpbmNvbXBhdGlibGUgdHlwZXM6IHRzcmFuZ2UgYW5kIGRhdGVy YW5nZS4KK0FMVEVSIFRBQkxFIHRlbXBvcmFsX2ZrX3BlcjJwZXIKKyAgRFJPUCBQRVJJT0QgRk9S IHZhbGlkX2F0LAorICBBTFRFUiBDT0xVTU4gdmFsaWRfZnJvbSBUWVBFIGRhdGUsCisgIEFMVEVS IENPTFVNTiB2YWxpZF90aWwgVFlQRSBkYXRlLAorICBBREQgUEVSSU9EIEZPUiB2YWxpZF9hdCAo dmFsaWRfZnJvbSwgdmFsaWRfdGlsKTsKKy0tIHdpdGggaW5mZXJyZWQgUEsgb24gdGhlIHJlZmVy ZW5jZWQgdGFibGU6CitBTFRFUiBUQUJMRSB0ZW1wb3JhbF9ma19wZXIycGVyCisgIEFERCBDT05T VFJBSU5UIHRlbXBvcmFsX2ZrX3BlcjJwZXJfZmsKKyAgRk9SRUlHTiBLRVkgKHBhcmVudF9pZCwg UEVSSU9EIHZhbGlkX2F0KQorICBSRUZFUkVOQ0VTIHRlbXBvcmFsX3BlcjsKKy0tIHNob3VsZCBm YWlsIGJlY2F1c2Ugb2YgZHVwbGljYXRlIHJlZmVyZW5jZWQgY29sdW1uczoKK0FMVEVSIFRBQkxF IHRlbXBvcmFsX2ZrX3BlcjJwZXIKKyAgQUREIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcGVyMnBl cl9mazIKKyAgRk9SRUlHTiBLRVkgKHBhcmVudF9pZCwgUEVSSU9EIHBhcmVudF9pZCkKKyAgUkVG RVJFTkNFUyB0ZW1wb3JhbF9wZXIgKGlkLCBQRVJJT0QgaWQpOworRVJST1I6ICBmb3JlaWduIGtl eSByZWZlcmVuY2VkLWNvbHVtbnMgbGlzdCBtdXN0IG5vdCBjb250YWluIGR1cGxpY2F0ZXMKKy0t CistLSB0ZXN0IHdpdGggcm93cyBhbHJlYWR5CistLQorREVMRVRFIEZST00gdGVtcG9yYWxfZmtf cGVyMnBlcjsKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3BlcjsKK0lOU0VSVCBJTlRPIHRlbXBvcmFs X3BlciAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTCisgICgnWzEsMiknLCAnMjAx OC0wMS0wMicsICcyMDE4LTAyLTAzJyksCisgICgnWzEsMiknLCAnMjAxOC0wMy0wMycsICcyMDE4 LTA0LTA0JyksCisgICgnWzIsMyknLCAnMjAxOC0wMS0wMScsICcyMDE4LTAxLTA1JyksCisgICgn WzMsNCknLCAnMjAxOC0wMS0wMScsIE5VTEwpOworQUxURVIgVEFCTEUgdGVtcG9yYWxfZmtfcGVy MnBlcgorICBEUk9QIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcGVyMnBlcl9mazsKK0lOU0VSVCBJ TlRPIHRlbXBvcmFsX2ZrX3BlcjJwZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwsIHBhcmVu dF9pZCkgVkFMVUVTICgnWzEsMiknLCAnMjAxOC0wMS0wMicsICcyMDE4LTAyLTAxJywgJ1sxLDIp Jyk7CitBTFRFUiBUQUJMRSB0ZW1wb3JhbF9ma19wZXIycGVyCisgIEFERCBDT05TVFJBSU5UIHRl bXBvcmFsX2ZrX3BlcjJwZXJfZmsKKyAgRk9SRUlHTiBLRVkgKHBhcmVudF9pZCwgUEVSSU9EIHZh bGlkX2F0KQorICBSRUZFUkVOQ0VTIHRlbXBvcmFsX3BlcjsKK0FMVEVSIFRBQkxFIHRlbXBvcmFs X2ZrX3BlcjJwZXIKKyAgRFJPUCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3BlcjJwZXJfZms7CitJ TlNFUlQgSU5UTyB0ZW1wb3JhbF9ma19wZXIycGVyIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGls LCBwYXJlbnRfaWQpIFZBTFVFUyAoJ1syLDMpJywgJzIwMTgtMDEtMDInLCAnMjAxOC0wNC0wMScs ICdbMSwyKScpOworLS0gc2hvdWxkIGZhaWw6CitBTFRFUiBUQUJMRSB0ZW1wb3JhbF9ma19wZXIy cGVyCisgIEFERCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3BlcjJwZXJfZmsKKyAgRk9SRUlHTiBL RVkgKHBhcmVudF9pZCwgUEVSSU9EIHZhbGlkX2F0KQorICBSRUZFUkVOQ0VTIHRlbXBvcmFsX3Bl cjsKK0VSUk9SOiAgaW5zZXJ0IG9yIHVwZGF0ZSBvbiB0YWJsZSAidGVtcG9yYWxfZmtfcGVyMnBl ciIgdmlvbGF0ZXMgZm9yZWlnbiBrZXkgY29uc3RyYWludCAidGVtcG9yYWxfZmtfcGVyMnBlcl9m ayIKK0RFVEFJTDogIEtleSAocGFyZW50X2lkLCB2YWxpZF9hdCk9KFsxLDIpLCBbMjAxOC0wMS0w MiwyMDE4LTA0LTAxKSkgaXMgbm90IHByZXNlbnQgaW4gdGFibGUgInRlbXBvcmFsX3BlciIuCist LSBva2F5IGFnYWluOgorREVMRVRFIEZST00gdGVtcG9yYWxfZmtfcGVyMnBlcjsKK0FMVEVSIFRB QkxFIHRlbXBvcmFsX2ZrX3BlcjJwZXIKKyAgQUREIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcGVy MnBlcl9maworICBGT1JFSUdOIEtFWSAocGFyZW50X2lkLCBQRVJJT0QgdmFsaWRfYXQpCisgIFJF RkVSRU5DRVMgdGVtcG9yYWxfcGVyOworLS0KKy0tIHRlc3QgcGdfZ2V0X2NvbnN0cmFpbnRkZWYK Ky0tCitTRUxFQ1QgcGdfZ2V0X2NvbnN0cmFpbnRkZWYob2lkKSBGUk9NIHBnX2NvbnN0cmFpbnQg V0hFUkUgY29ubmFtZSA9ICd0ZW1wb3JhbF9ma19wZXIycGVyX2ZrJzsKKyAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIHBnX2dldF9jb25zdHJhaW50ZGVmICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIAorLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgRk9SRUlH TiBLRVkgKHBhcmVudF9pZCwgUEVSSU9EIHZhbGlkX2F0KSBSRUZFUkVOQ0VTIHRlbXBvcmFsX3Bl cihpZCwgUEVSSU9EIHZhbGlkX2F0KQorKDEgcm93KQorCistLQorLS0gdGVzdCBGSyByZWZlcmVu Y2luZyBpbnNlcnRzCistLQorSU5TRVJUIElOVE8gdGVtcG9yYWxfZmtfcGVyMnBlciAoaWQsIHZh bGlkX2Zyb20sIHZhbGlkX3RpbCwgcGFyZW50X2lkKSBWQUxVRVMgKCdbMSwyKScsICcyMDE4LTAx LTAyJywgJzIwMTgtMDItMDEnLCAnWzEsMiknKTsKKy0tIHNob3VsZCBmYWlsOgorSU5TRVJUIElO VE8gdGVtcG9yYWxfZmtfcGVyMnBlciAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCwgcGFyZW50 X2lkKSBWQUxVRVMgKCdbMiwzKScsICcyMDE4LTAxLTAyJywgJzIwMTgtMDQtMDEnLCAnWzEsMikn KTsKK0VSUk9SOiAgaW5zZXJ0IG9yIHVwZGF0ZSBvbiB0YWJsZSAidGVtcG9yYWxfZmtfcGVyMnBl ciIgdmlvbGF0ZXMgZm9yZWlnbiBrZXkgY29uc3RyYWludCAidGVtcG9yYWxfZmtfcGVyMnBlcl9m ayIKK0RFVEFJTDogIEtleSAocGFyZW50X2lkLCB2YWxpZF9hdCk9KFsxLDIpLCBbMjAxOC0wMS0w MiwyMDE4LTA0LTAxKSkgaXMgbm90IHByZXNlbnQgaW4gdGFibGUgInRlbXBvcmFsX3BlciIuCist LSBub3cgaXQgc2hvdWxkIHdvcms6CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIgKGlkLCB2YWxp ZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1sxLDIpJywgJzIwMTgtMDItMDMnLCAnMjAxOC0w My0wMycpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmtfcGVyMnBlciAoaWQsIHZhbGlkX2Zyb20s IHZhbGlkX3RpbCwgcGFyZW50X2lkKSBWQUxVRVMgKCdbMiwzKScsICcyMDE4LTAxLTAyJywgJzIw MTgtMDQtMDEnLCAnWzEsMiknKTsKKy0tCistLSB0ZXN0IEZLIHJlZmVyZW5jaW5nIHVwZGF0ZXMK Ky0tCistLSBzbGlkZSB0aGUgZWRnZSBhY3Jvc3MgYSByZWZlcmVuY2VkIHRyYW5zaXRpb246CitV UERBVEUgdGVtcG9yYWxfZmtfcGVyMnBlciBTRVQgdmFsaWRfZnJvbSA9ICcyMDE4LTAxLTAyJywg dmFsaWRfdGlsID0gJzIwMTgtMDItMjAnIFdIRVJFIGlkID0gJ1sxLDIpJzsKKy0tIHNob3VsZCBm YWlsOgorVVBEQVRFIHRlbXBvcmFsX2ZrX3BlcjJwZXIgU0VUIHZhbGlkX2Zyb20gPSAnMjAxOC0w MS0wMicsIHZhbGlkX3RpbCA9ICcyMDE4LTA1LTAxJyBXSEVSRSBpZCA9ICdbMSwyKSc7CitFUlJP UjogIGluc2VydCBvciB1cGRhdGUgb24gdGFibGUgInRlbXBvcmFsX2ZrX3BlcjJwZXIiIHZpb2xh dGVzIGZvcmVpZ24ga2V5IGNvbnN0cmFpbnQgInRlbXBvcmFsX2ZrX3BlcjJwZXJfZmsiCitERVRB SUw6ICBLZXkgKHBhcmVudF9pZCwgdmFsaWRfYXQpPShbMSwyKSwgWzIwMTgtMDEtMDIsMjAxOC0w NS0wMSkpIGlzIG5vdCBwcmVzZW50IGluIHRhYmxlICJ0ZW1wb3JhbF9wZXIiLgorVVBEQVRFIHRl bXBvcmFsX2ZrX3BlcjJwZXIgU0VUIHBhcmVudF9pZCA9ICdbOCw5KScgV0hFUkUgaWQgPSAnWzEs MiknOworRVJST1I6ICBpbnNlcnQgb3IgdXBkYXRlIG9uIHRhYmxlICJ0ZW1wb3JhbF9ma19wZXIy cGVyIiB2aW9sYXRlcyBmb3JlaWduIGtleSBjb25zdHJhaW50ICJ0ZW1wb3JhbF9ma19wZXIycGVy X2ZrIgorREVUQUlMOiAgS2V5IChwYXJlbnRfaWQsIHZhbGlkX2F0KT0oWzgsOSksIFsyMDE4LTAx LTAyLDIwMTgtMDItMjApKSBpcyBub3QgcHJlc2VudCBpbiB0YWJsZSAidGVtcG9yYWxfcGVyIi4K Ky0tIEFMVEVSIEZLIERFRkVSUkFCTEUKK0JFR0lOOworICBJTlNFUlQgSU5UTyB0ZW1wb3JhbF9w ZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUworICAgICgnWzUsNiknLCAnMjAx OC0wMS0wMScsICcyMDE4LTAyLTAxJyksCisgICAgKCdbNSw2KScsICcyMDE4LTAyLTAxJywgJzIw MTgtMDMtMDEnKTsKKyAgSU5TRVJUIElOVE8gdGVtcG9yYWxfZmtfcGVyMnBlciAoaWQsIHZhbGlk X2Zyb20sIHZhbGlkX3RpbCwgcGFyZW50X2lkKSBWQUxVRVMKKyAgICAoJ1szLDQpJywgJzIwMTgt MDEtMDUnLCAnMjAxOC0wMS0xMCcsICdbNSw2KScpOworICBBTFRFUiBUQUJMRSB0ZW1wb3JhbF9m a19wZXIycGVyCisgICAgQUxURVIgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19wZXIycGVyX2ZrCisg ICAgREVGRVJSQUJMRSBJTklUSUFMTFkgREVGRVJSRUQ7CisgIERFTEVURSBGUk9NIHRlbXBvcmFs X3BlciBXSEVSRSBpZCA9ICdbNSw2KSc7IC0tc2hvdWxkIG5vdCBmYWlsIHlldC4KK0NPTU1JVDsg LS0gc2hvdWxkIGZhaWwgaGVyZS4KK0VSUk9SOiAgdXBkYXRlIG9yIGRlbGV0ZSBvbiB0YWJsZSAi dGVtcG9yYWxfcGVyIiB2aW9sYXRlcyBmb3JlaWduIGtleSBjb25zdHJhaW50ICJ0ZW1wb3JhbF9m a19wZXIycGVyX2ZrIiBvbiB0YWJsZSAidGVtcG9yYWxfZmtfcGVyMnBlciIKK0RFVEFJTDogIEtl eSAoaWQsIHZhbGlkX2F0KT0oWzUsNiksIFsyMDE4LTAxLTAxLDIwMTgtMDItMDEpKSBpcyBzdGls bCByZWZlcmVuY2VkIGZyb20gdGFibGUgInRlbXBvcmFsX2ZrX3BlcjJwZXIiLgorLS0KKy0tIHRl c3QgRksgcmVmZXJlbmNlZCB1cGRhdGVzIE5PIEFDVElPTgorLS0KK1RSVU5DQVRFIHRlbXBvcmFs X3BlciwgdGVtcG9yYWxfZmtfcGVyMnBlcjsKK0FMVEVSIFRBQkxFIHRlbXBvcmFsX2ZrX3BlcjJw ZXIKKyAgRFJPUCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3BlcjJwZXJfZms7CitBTFRFUiBUQUJM RSB0ZW1wb3JhbF9ma19wZXIycGVyCisgIEFERCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3BlcjJw ZXJfZmsKKyAgRk9SRUlHTiBLRVkgKHBhcmVudF9pZCwgUEVSSU9EIHZhbGlkX2F0KQorICBSRUZF UkVOQ0VTIHRlbXBvcmFsX3BlcgorICBPTiBVUERBVEUgTk8gQUNUSU9OOworLS0gYSBQSyB1cGRh dGUgdGhhdCBzdWNjZWVkcyBiZWNhdXNlIHRoZSBudW1lcmljIGlkIGlzbid0IHJlZmVyZW5jZWQ6 CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZB TFVFUyAoJ1s1LDYpJywgJzIwMTgtMDEtMDEnLCAnMjAxOC0wMi0wMScpOworVVBEQVRFIHRlbXBv cmFsX3BlciBTRVQgdmFsaWRfZnJvbSA9ICcyMDE2LTAxLTAxJywgdmFsaWRfdGlsID0gJzIwMTYt MDItMDEnIFdIRVJFIGlkID0gJ1s1LDYpJzsKKy0tIGEgUEsgdXBkYXRlIHRoYXQgc3VjY2VlZHMg ZXZlbiB0aG91Z2ggdGhlIG51bWVyaWMgaWQgaXMgcmVmZXJlbmNlZCBiZWNhdXNlIHRoZSByYW5n ZSBpc24ndDoKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3BlciBXSEVSRSBpZCA9ICdbNSw2KSc7CitJ TlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVF UworICAoJ1s1LDYpJywgJzIwMTgtMDEtMDEnLCAnMjAxOC0wMi0wMScpLAorICAoJ1s1LDYpJywg JzIwMTgtMDItMDEnLCAnMjAxOC0wMy0wMScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmtfcGVy MnBlciAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCwgcGFyZW50X2lkKSBWQUxVRVMKKyAgKCdb Myw0KScsICcyMDE4LTAxLTA1JywgJzIwMTgtMDEtMTAnLCAnWzUsNiknKTsKK1VQREFURSB0ZW1w b3JhbF9wZXIgU0VUIHZhbGlkX2Zyb20gPSAnMjAxNi0wMi0wMScsIHZhbGlkX3RpbCA9ICcyMDE2 LTAzLTAxJworV0hFUkUgaWQgPSAnWzUsNiknIEFORCB2YWxpZF9mcm9tID0gJzIwMTgtMDItMDEn IEFORCB2YWxpZF90aWwgPSAnMjAxOC0wMy0wMSc7CistLSBBIFBLIHVwZGF0ZSBzbGlkaW5nIHRo ZSBlZGdlIGJldHdlZW4gdHdvIHJlZmVyZW5jZWQgcm93czoKK0lOU0VSVCBJTlRPIHRlbXBvcmFs X3BlciAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTCisgICgnWzYsNyknLCAnMjAx OC0wMS0wMScsICcyMDE4LTAyLTAxJyksCisgICgnWzYsNyknLCAnMjAxOC0wMi0wMScsICcyMDE4 LTAzLTAxJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ma19wZXIycGVyIChpZCwgdmFsaWRfZnJv bSwgdmFsaWRfdGlsLCBwYXJlbnRfaWQpIFZBTFVFUworICAoJ1s0LDUpJywgJzIwMTgtMDEtMTUn LCAnMjAxOC0wMi0xNScsICdbNiw3KScpOworVVBEQVRFIHRlbXBvcmFsX3BlcgorU0VUIHZhbGlk X2Zyb20gPSBDQVNFIFdIRU4gdmFsaWRfZnJvbSA9ICcyMDE4LTAxLTAxJyBUSEVOICcyMDE4LTAx LTAxJworICAgICAgICAgICAgICAgICAgICAgIFdIRU4gdmFsaWRfZnJvbSA9ICcyMDE4LTAyLTAx JyBUSEVOICcyMDE4LTAxLTA1JyBFTkQ6OmRhdGUsCisgICAgdmFsaWRfdGlsID0gIENBU0UgV0hF TiB2YWxpZF9mcm9tID0gJzIwMTgtMDEtMDEnIFRIRU4gJzIwMTgtMDEtMDUnCisgICAgICAgICAg ICAgICAgICAgICAgV0hFTiB2YWxpZF9mcm9tID0gJzIwMTgtMDItMDEnIFRIRU4gJzIwMTgtMDMt MDEnIEVORDo6ZGF0ZQorV0hFUkUgaWQgPSAnWzYsNyknOworLS0gYSBQSyB1cGRhdGUgc2hyaW5r aW5nIHRoZSByZWZlcmVuY2VkIHJhbmdlIGJ1dCBzdGlsbCB2YWxpZDoKKy0tIFRoZXJlIGFyZSB0 d28gcmVmZXJlbmNlczogb25lIGZ1bGZpbGxlZCBieSB0aGUgZmlyc3QgcGsgcm93LAorLS0gdGhl IG90aGVyIGZ1bGZpbGxlZCBieSBib3RoIHBrIHJvd3MgY29tYmluZWQuCitJTlNFUlQgSU5UTyB0 ZW1wb3JhbF9wZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUworICAoJ1sxLDIp JywgJzIwMTgtMDEtMDEnLCAnMjAxOC0wMy0wMScpLAorICAoJ1sxLDIpJywgJzIwMTgtMDMtMDEn LCAnMjAxOC0wNi0wMScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmtfcGVyMnBlciAoaWQsIHZh bGlkX2Zyb20sIHZhbGlkX3RpbCwgcGFyZW50X2lkKSBWQUxVRVMKKyAgKCdbMSwyKScsICcyMDE4 LTAxLTE1JywgJzIwMTgtMDItMDEnLCAnWzEsMiknKSwKKyAgKCdbMiwzKScsICcyMDE4LTAxLTE1 JywgJzIwMTgtMDUtMDEnLCAnWzEsMiknKTsKK1VQREFURSB0ZW1wb3JhbF9wZXIgU0VUIHZhbGlk X2Zyb20gPSAnMjAxOC0wMS0xNScsIHZhbGlkX3RpbCA9ICcyMDE4LTAzLTAxJworV0hFUkUgaWQg PSAnWzEsMiknIEFORCB2YWxpZF9hdCBAPiAnMjAxOC0wMS0xNSc6OmRhdGU7CistLSBhIFBLIHVw ZGF0ZSBncm93aW5nIHRoZSByZWZlcmVuY2VkIHJhbmdlIGlzIGZpbmU6CitVUERBVEUgdGVtcG9y YWxfcGVyIFNFVCB2YWxpZF9mcm9tID0gJzIwMTgtMDEtMDEnLCB2YWxpZF90aWwgPSAnMjAxOC0w My0wMScKK1dIRVJFIGlkID0gJ1sxLDIpJyBBTkQgdmFsaWRfYXQgQD4gJzIwMTgtMDEtMjUnOjpk YXRlOworLS0gYSBQSyB1cGRhdGUgc2hyaW5raW5nIHRoZSByZWZlcmVuY2VkIHJhbmdlIGFuZCBj aGFuZ2luZyB0aGUgaWQgaW52YWxpZGF0ZXMgdGhlIHdob2xlIHJhbmdlOgorVVBEQVRFIHRlbXBv cmFsX3BlciBTRVQgaWQgPSAnWzIsMyknLCB2YWxpZF9mcm9tID0gJzIwMTgtMDEtMTUnLCB2YWxp ZF90aWwgPSAnMjAxOC0wMy0wMScKK1dIRVJFIGlkID0gJ1sxLDIpJyBBTkQgdmFsaWRfYXQgQD4g JzIwMTgtMDEtMTUnOjpkYXRlOworRVJST1I6ICB1cGRhdGUgb3IgZGVsZXRlIG9uIHRhYmxlICJ0 ZW1wb3JhbF9wZXIiIHZpb2xhdGVzIGZvcmVpZ24ga2V5IGNvbnN0cmFpbnQgInRlbXBvcmFsX2Zr X3BlcjJwZXJfZmsiIG9uIHRhYmxlICJ0ZW1wb3JhbF9ma19wZXIycGVyIgorREVUQUlMOiAgS2V5 IChpZCwgdmFsaWRfYXQpPShbMSwyKSwgWzIwMTgtMDEtMDEsMjAxOC0wMy0wMSkpIGlzIHN0aWxs IHJlZmVyZW5jZWQgZnJvbSB0YWJsZSAidGVtcG9yYWxfZmtfcGVyMnBlciIuCistLSBhIFBLIHVw ZGF0ZSBjaGFuZ2luZyBvbmx5IHRoZSBpZCBpbnZhbGlkYXRlcyB0aGUgd2hvbGUgcmFuZ2U6CitV UERBVEUgdGVtcG9yYWxfcGVyIFNFVCBpZCA9ICdbMiwzKScKK1dIRVJFIGlkID0gJ1sxLDIpJyBB TkQgdmFsaWRfYXQgQD4gJzIwMTgtMDEtMTUnOjpkYXRlOworRVJST1I6ICB1cGRhdGUgb3IgZGVs ZXRlIG9uIHRhYmxlICJ0ZW1wb3JhbF9wZXIiIHZpb2xhdGVzIGZvcmVpZ24ga2V5IGNvbnN0cmFp bnQgInRlbXBvcmFsX2ZrX3BlcjJwZXJfZmsiIG9uIHRhYmxlICJ0ZW1wb3JhbF9ma19wZXIycGVy IgorREVUQUlMOiAgS2V5IChpZCwgdmFsaWRfYXQpPShbMSwyKSwgWzIwMTgtMDEtMDEsMjAxOC0w My0wMSkpIGlzIHN0aWxsIHJlZmVyZW5jZWQgZnJvbSB0YWJsZSAidGVtcG9yYWxfZmtfcGVyMnBl ciIuCistLSBhIFBLIHVwZGF0ZSB0aGF0IGxvc2VzIHRpbWUgZnJvbSBib3RoIGVuZHMsIGJ1dCBp cyBzdGlsbCB2YWxpZDoKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlciAoaWQsIHZhbGlkX2Zyb20s IHZhbGlkX3RpbCkgVkFMVUVTCisgICgnWzIsMyknLCAnMjAxOC0wMS0wMScsICcyMDE4LTAzLTAx Jyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ma19wZXIycGVyIChpZCwgdmFsaWRfZnJvbSwgdmFs aWRfdGlsLCBwYXJlbnRfaWQpIFZBTFVFUworICAoJ1s1LDYpJywgJzIwMTgtMDEtMTUnLCAnMjAx OC0wMi0wMScsICdbMiwzKScpOworVVBEQVRFIHRlbXBvcmFsX3BlciBTRVQgdmFsaWRfZnJvbSA9 ICcyMDE4LTAxLTE1JywgdmFsaWRfdGlsID0gJzIwMTgtMDItMTUnCitXSEVSRSBpZCA9ICdbMiwz KSc7CistLSBhIFBLIHVwZGF0ZSB0aGF0IGZhaWxzIGJlY2F1c2UgYm90aCBhcmUgcmVmZXJlbmNl ZDoKK1VQREFURSB0ZW1wb3JhbF9wZXIgU0VUIHZhbGlkX2Zyb20gPSAnMjAxNi0wMS0wMScsIHZh bGlkX3RpbCA9ICcyMDE2LTAyLTAxJworV0hFUkUgaWQgPSAnWzUsNiknIEFORCB2YWxpZF9mcm9t ID0gJzIwMTgtMDEtMDEnIEFORCB2YWxpZF90aWwgPSAnMjAxOC0wMi0wMSc7CitFUlJPUjogIHVw ZGF0ZSBvciBkZWxldGUgb24gdGFibGUgInRlbXBvcmFsX3BlciIgdmlvbGF0ZXMgZm9yZWlnbiBr ZXkgY29uc3RyYWludCAidGVtcG9yYWxfZmtfcGVyMnBlcl9mayIgb24gdGFibGUgInRlbXBvcmFs X2ZrX3BlcjJwZXIiCitERVRBSUw6ICBLZXkgKGlkLCB2YWxpZF9hdCk9KFs1LDYpLCBbMjAxOC0w MS0wMSwyMDE4LTAyLTAxKSkgaXMgc3RpbGwgcmVmZXJlbmNlZCBmcm9tIHRhYmxlICJ0ZW1wb3Jh bF9ma19wZXIycGVyIi4KKy0tIGEgUEsgdXBkYXRlIHRoYXQgZmFpbHMgYmVjYXVzZSBib3RoIGFy ZSByZWZlcmVuY2VkLCBidXQgbm90ICd0aWwgY29tbWl0OgorQkVHSU47CisgIEFMVEVSIFRBQkxF IHRlbXBvcmFsX2ZrX3BlcjJwZXIKKyAgICBBTFRFUiBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3Bl cjJwZXJfZmsKKyAgICBERUZFUlJBQkxFIElOSVRJQUxMWSBERUZFUlJFRDsKKyAgVVBEQVRFIHRl bXBvcmFsX3BlciBTRVQgdmFsaWRfZnJvbSA9ICcyMDE2LTAxLTAxJywgdmFsaWRfdGlsID0gJzIw MTYtMDItMDEnCisgIFdIRVJFIGlkID0gJ1s1LDYpJyBBTkQgdmFsaWRfYXQgPSBkYXRlcmFuZ2Uo JzIwMTgtMDEtMDEnLCAnMjAxOC0wMi0wMScpOworQ09NTUlUOworRVJST1I6ICB1cGRhdGUgb3Ig ZGVsZXRlIG9uIHRhYmxlICJ0ZW1wb3JhbF9wZXIiIHZpb2xhdGVzIGZvcmVpZ24ga2V5IGNvbnN0 cmFpbnQgInRlbXBvcmFsX2ZrX3BlcjJwZXJfZmsiIG9uIHRhYmxlICJ0ZW1wb3JhbF9ma19wZXIy cGVyIgorREVUQUlMOiAgS2V5IChpZCwgdmFsaWRfYXQpPShbNSw2KSwgWzIwMTgtMDEtMDEsMjAx OC0wMi0wMSkpIGlzIHN0aWxsIHJlZmVyZW5jZWQgZnJvbSB0YWJsZSAidGVtcG9yYWxfZmtfcGVy MnBlciIuCistLSBjaGFuZ2luZyB0aGUgc2NhbGFyIHBhcnQgZmFpbHM6CitVUERBVEUgdGVtcG9y YWxfcGVyIFNFVCBpZCA9ICdbNyw4KScKK1dIRVJFIGlkID0gJ1s1LDYpJyBBTkQgdmFsaWRfZnJv bSA9ICcyMDE4LTAxLTAxJyBBTkQgdmFsaWRfdGlsID0gJzIwMTgtMDItMDEnOworRVJST1I6ICB1 cGRhdGUgb3IgZGVsZXRlIG9uIHRhYmxlICJ0ZW1wb3JhbF9wZXIiIHZpb2xhdGVzIGZvcmVpZ24g a2V5IGNvbnN0cmFpbnQgInRlbXBvcmFsX2ZrX3BlcjJwZXJfZmsiIG9uIHRhYmxlICJ0ZW1wb3Jh bF9ma19wZXIycGVyIgorREVUQUlMOiAgS2V5IChpZCwgdmFsaWRfYXQpPShbNSw2KSwgWzIwMTgt MDEtMDEsMjAxOC0wMi0wMSkpIGlzIHN0aWxsIHJlZmVyZW5jZWQgZnJvbSB0YWJsZSAidGVtcG9y YWxfZmtfcGVyMnBlciIuCistLSBjaGFuZ2luZyBhbiB1bnJlZmVyZW5jZWQgcGFydCBpcyBva2F5 OgorVVBEQVRFIHRlbXBvcmFsX3BlcgorRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAx OC0wMS0wMicgVE8gJzIwMTgtMDEtMDMnCitTRVQgaWQgPSAnWzcsOCknCitXSEVSRSBpZCA9ICdb NSw2KSc7CistLSBjaGFuZ2luZyBqdXN0IGEgcGFydCBmYWlsczoKK1VQREFURSB0ZW1wb3JhbF9w ZXIKK0ZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMTgtMDEtMDUnIFRPICcyMDE4LTAx LTEwJworU0VUIGlkID0gJ1s3LDgpJworV0hFUkUgaWQgPSAnWzUsNiknOworRVJST1I6ICB1cGRh dGUgb3IgZGVsZXRlIG9uIHRhYmxlICJ0ZW1wb3JhbF9wZXIiIHZpb2xhdGVzIGZvcmVpZ24ga2V5 IGNvbnN0cmFpbnQgInRlbXBvcmFsX2ZrX3BlcjJwZXJfZmsiIG9uIHRhYmxlICJ0ZW1wb3JhbF9m a19wZXIycGVyIgorREVUQUlMOiAgS2V5IChpZCwgdmFsaWRfYXQpPShbNSw2KSwgWzIwMTgtMDEt MDMsMjAxOC0wMi0wMSkpIGlzIHN0aWxsIHJlZmVyZW5jZWQgZnJvbSB0YWJsZSAidGVtcG9yYWxf ZmtfcGVyMnBlciIuCitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX3BlciBXSEVSRSBpZCBpbiAoJ1s1 LDYpJywgJ1s3LDgpJykgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworICBpZCAgIHwgdmFsaWRfZnJv bSB8IHZhbGlkX3RpbCAgCistLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0KKyBbNSw2 KSB8IDIwMTYtMDItMDEgfCAyMDE2LTAzLTAxCisgWzUsNikgfCAyMDE4LTAxLTAxIHwgMjAxOC0w MS0wMgorIFs1LDYpIHwgMjAxOC0wMS0wMyB8IDIwMTgtMDItMDEKKyBbNyw4KSB8IDIwMTgtMDEt MDIgfCAyMDE4LTAxLTAzCisoNCByb3dzKQorCitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrX3Bl cjJwZXIgV0hFUkUgaWQgaW4gKCdbMyw0KScpIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKyAgaWQg ICB8IHZhbGlkX2Zyb20gfCB2YWxpZF90aWwgIHwgcGFyZW50X2lkIAorLS0tLS0tLSstLS0tLS0t LS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tCisgWzMsNCkgfCAyMDE4LTAxLTA1IHwgMjAx OC0wMS0xMCB8IFs1LDYpCisoMSByb3cpCisKKy0tIHRoZW4gZGVsZXRlIHRoZSBvYmplY3Rpbmcg RksgcmVjb3JkIGFuZCB0aGUgc2FtZSBQSyB1cGRhdGUgc3VjY2VlZHM6CitERUxFVEUgRlJPTSB0 ZW1wb3JhbF9ma19wZXIycGVyIFdIRVJFIGlkID0gJ1szLDQpJzsKK1VQREFURSB0ZW1wb3JhbF9w ZXIgU0VUIHZhbGlkX2Zyb20gPSAnMjAxNi0wMS0wMScsIHZhbGlkX3RpbCA9ICcyMDE2LTAyLTAx JworV0hFUkUgaWQgPSAnWzUsNiknIEFORCB2YWxpZF9mcm9tID0gJzIwMTgtMDEtMDEnIEFORCB2 YWxpZF90aWwgPSAnMjAxOC0wMi0wMSc7CistLQorLS0gdGVzdCBGSyByZWZlcmVuY2VkIHVwZGF0 ZXMgUkVTVFJJQ1QKKy0tCitUUlVOQ0FURSB0ZW1wb3JhbF9wZXIsIHRlbXBvcmFsX2ZrX3BlcjJw ZXI7CitBTFRFUiBUQUJMRSB0ZW1wb3JhbF9ma19wZXIycGVyCisgIERST1AgQ09OU1RSQUlOVCB0 ZW1wb3JhbF9ma19wZXIycGVyX2ZrOworQUxURVIgVEFCTEUgdGVtcG9yYWxfZmtfcGVyMnBlcgor ICBBREQgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19wZXIycGVyX2ZrCisgIEZPUkVJR04gS0VZIChw YXJlbnRfaWQsIFBFUklPRCB2YWxpZF9hdCkKKyAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9wZXIKKyAg T04gVVBEQVRFIFJFU1RSSUNUOworRVJST1I6ICB1bnN1cHBvcnRlZCBPTiBVUERBVEUgYWN0aW9u IGZvciBmb3JlaWduIGtleSBjb25zdHJhaW50IHVzaW5nIFBFUklPRAorLS0KKy0tIHRlc3QgRksg cmVmZXJlbmNlZCBkZWxldGVzIE5PIEFDVElPTgorLS0KK1RSVU5DQVRFIHRlbXBvcmFsX3Blciwg dGVtcG9yYWxfZmtfcGVyMnBlcjsKK0FMVEVSIFRBQkxFIHRlbXBvcmFsX2ZrX3BlcjJwZXIKKyAg QUREIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcGVyMnBlcl9maworICBGT1JFSUdOIEtFWSAocGFy ZW50X2lkLCBQRVJJT0QgdmFsaWRfYXQpCisgIFJFRkVSRU5DRVMgdGVtcG9yYWxfcGVyOworLS0g YSBQSyBkZWxldGUgdGhhdCBzdWNjZWVkcyBiZWNhdXNlIHRoZSBudW1lcmljIGlkIGlzbid0IHJl ZmVyZW5jZWQ6CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxp ZF90aWwpIFZBTFVFUyAoJ1s1LDYpJywgJzIwMTgtMDEtMDEnLCAnMjAxOC0wMi0wMScpOworREVM RVRFIEZST00gdGVtcG9yYWxfcGVyIFdIRVJFIGlkID0gJ1s1LDYpJzsKKy0tIGEgUEsgZGVsZXRl IHRoYXQgc3VjY2VlZHMgZXZlbiB0aG91Z2ggdGhlIG51bWVyaWMgaWQgaXMgcmVmZXJlbmNlZCBi ZWNhdXNlIHRoZSByYW5nZSBpc24ndDoKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlciAoaWQsIHZh bGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTCisgICgnWzUsNiknLCAnMjAxOC0wMS0wMScsICcy MDE4LTAyLTAxJyksCisgICgnWzUsNiknLCAnMjAxOC0wMi0wMScsICcyMDE4LTAzLTAxJyk7CitJ TlNFUlQgSU5UTyB0ZW1wb3JhbF9ma19wZXIycGVyIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGls LCBwYXJlbnRfaWQpIFZBTFVFUyAoJ1szLDQpJywgJzIwMTgtMDEtMDUnLCAnMjAxOC0wMS0xMCcs ICdbNSw2KScpOworREVMRVRFIEZST00gdGVtcG9yYWxfcGVyIFdIRVJFIGlkID0gJ1s1LDYpJyBB TkQgdmFsaWRfZnJvbSA9ICcyMDE4LTAyLTAxJyBBTkQgdmFsaWRfdGlsID0gJzIwMTgtMDMtMDEn OworLS0gYSBQSyBkZWxldGUgdGhhdCBmYWlscyBiZWNhdXNlIGJvdGggYXJlIHJlZmVyZW5jZWQ6 CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9wZXIgV0hFUkUgaWQgPSAnWzUsNiknIEFORCB2YWxpZF9m cm9tID0gJzIwMTgtMDEtMDEnIEFORCB2YWxpZF90aWwgPSAnMjAxOC0wMi0wMSc7CitFUlJPUjog IHVwZGF0ZSBvciBkZWxldGUgb24gdGFibGUgInRlbXBvcmFsX3BlciIgdmlvbGF0ZXMgZm9yZWln biBrZXkgY29uc3RyYWludCAidGVtcG9yYWxfZmtfcGVyMnBlcl9mayIgb24gdGFibGUgInRlbXBv cmFsX2ZrX3BlcjJwZXIiCitERVRBSUw6ICBLZXkgKGlkLCB2YWxpZF9hdCk9KFs1LDYpLCBbMjAx OC0wMS0wMSwyMDE4LTAyLTAxKSkgaXMgc3RpbGwgcmVmZXJlbmNlZCBmcm9tIHRhYmxlICJ0ZW1w b3JhbF9ma19wZXIycGVyIi4KKy0tIGEgUEsgZGVsZXRlIHRoYXQgZmFpbHMgYmVjYXVzZSBib3Ro IGFyZSByZWZlcmVuY2VkLCBidXQgbm90ICd0aWwgY29tbWl0OgorQkVHSU47CisgIEFMVEVSIFRB QkxFIHRlbXBvcmFsX2ZrX3BlcjJwZXIKKyAgICBBTFRFUiBDT05TVFJBSU5UIHRlbXBvcmFsX2Zr X3BlcjJwZXJfZmsKKyAgICBERUZFUlJBQkxFIElOSVRJQUxMWSBERUZFUlJFRDsKKyAgREVMRVRF IEZST00gdGVtcG9yYWxfcGVyIFdIRVJFIGlkID0gJ1s1LDYpJyBBTkQgdmFsaWRfYXQgPSBkYXRl cmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAxOC0wMi0wMScpOworQ09NTUlUOworRVJST1I6ICB1cGRh dGUgb3IgZGVsZXRlIG9uIHRhYmxlICJ0ZW1wb3JhbF9wZXIiIHZpb2xhdGVzIGZvcmVpZ24ga2V5 IGNvbnN0cmFpbnQgInRlbXBvcmFsX2ZrX3BlcjJwZXJfZmsiIG9uIHRhYmxlICJ0ZW1wb3JhbF9m a19wZXIycGVyIgorREVUQUlMOiAgS2V5IChpZCwgdmFsaWRfYXQpPShbNSw2KSwgWzIwMTgtMDEt MDEsMjAxOC0wMi0wMSkpIGlzIHN0aWxsIHJlZmVyZW5jZWQgZnJvbSB0YWJsZSAidGVtcG9yYWxf ZmtfcGVyMnBlciIuCistLSBkZWxldGluZyBhbiB1bnJlZmVyZW5jZWQgcGFydCBpcyBva2F5Ogor REVMRVRFIEZST00gdGVtcG9yYWxfcGVyCitGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcy MDE4LTAxLTAyJyBUTyAnMjAxOC0wMS0wMycKK1dIRVJFIGlkID0gJ1s1LDYpJzsKKy0tIGRlbGV0 aW5nIGp1c3QgYSBwYXJ0IGZhaWxzOgorREVMRVRFIEZST00gdGVtcG9yYWxfcGVyCitGT1IgUE9S VElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDE4LTAxLTA1JyBUTyAnMjAxOC0wMS0xMCcKK1dIRVJF IGlkID0gJ1s1LDYpJzsKK0VSUk9SOiAgdXBkYXRlIG9yIGRlbGV0ZSBvbiB0YWJsZSAidGVtcG9y YWxfcGVyIiB2aW9sYXRlcyBmb3JlaWduIGtleSBjb25zdHJhaW50ICJ0ZW1wb3JhbF9ma19wZXIy cGVyX2ZrIiBvbiB0YWJsZSAidGVtcG9yYWxfZmtfcGVyMnBlciIKK0RFVEFJTDogIEtleSAoaWQs IHZhbGlkX2F0KT0oWzUsNiksIFsyMDE4LTAxLTAzLDIwMTgtMDItMDEpKSBpcyBzdGlsbCByZWZl cmVuY2VkIGZyb20gdGFibGUgInRlbXBvcmFsX2ZrX3BlcjJwZXIiLgorU0VMRUNUICogRlJPTSB0 ZW1wb3JhbF9wZXIgV0hFUkUgaWQgaW4gKCdbNSw2KScsICdbNyw4KScpIE9SREVSIEJZIGlkLCB2 YWxpZF9hdDsKKyAgaWQgICB8IHZhbGlkX2Zyb20gfCB2YWxpZF90aWwgIAorLS0tLS0tLSstLS0t LS0tLS0tLS0rLS0tLS0tLS0tLS0tCisgWzUsNikgfCAyMDE4LTAxLTAxIHwgMjAxOC0wMS0wMgor IFs1LDYpIHwgMjAxOC0wMS0wMyB8IDIwMTgtMDItMDEKKygyIHJvd3MpCisKK1NFTEVDVCAqIEZS T00gdGVtcG9yYWxfZmtfcGVyMnBlciBXSEVSRSBpZCBpbiAoJ1szLDQpJykgT1JERVIgQlkgaWQs IHZhbGlkX2F0OworICBpZCAgIHwgdmFsaWRfZnJvbSB8IHZhbGlkX3RpbCAgfCBwYXJlbnRfaWQg CistLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0KKyBbMyw0KSB8 IDIwMTgtMDEtMDUgfCAyMDE4LTAxLTEwIHwgWzUsNikKKygxIHJvdykKKworLS0gdGhlbiBkZWxl dGUgdGhlIG9iamVjdGluZyBGSyByZWNvcmQgYW5kIHRoZSBzYW1lIFBLIGRlbGV0ZSBzdWNjZWVk czoKK0RFTEVURSBGUk9NIHRlbXBvcmFsX2ZrX3BlcjJwZXIgV0hFUkUgaWQgPSAnWzMsNCknOwor REVMRVRFIEZST00gdGVtcG9yYWxfcGVyIFdIRVJFIGlkID0gJ1s1LDYpJyBBTkQgdmFsaWRfZnJv bSA9ICcyMDE4LTAxLTAxJyBBTkQgdmFsaWRfdGlsID0gJzIwMTgtMDItMDEnOworLS0KKy0tIHRl c3QgRksgcmVmZXJlbmNlZCBkZWxldGVzIFJFU1RSSUNUCistLQorVFJVTkNBVEUgdGVtcG9yYWxf cGVyLCB0ZW1wb3JhbF9ma19wZXIycGVyOworQUxURVIgVEFCTEUgdGVtcG9yYWxfZmtfcGVyMnBl cgorICBEUk9QIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcGVyMnBlcl9mazsKK0FMVEVSIFRBQkxF IHRlbXBvcmFsX2ZrX3BlcjJwZXIKKyAgQUREIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcGVyMnBl cl9maworICBGT1JFSUdOIEtFWSAocGFyZW50X2lkLCBQRVJJT0QgdmFsaWRfYXQpCisgIFJFRkVS RU5DRVMgdGVtcG9yYWxfcGVyCisgIE9OIERFTEVURSBSRVNUUklDVDsKK0VSUk9SOiAgdW5zdXBw b3J0ZWQgT04gREVMRVRFIGFjdGlvbiBmb3IgZm9yZWlnbiBrZXkgY29uc3RyYWludCB1c2luZyBQ RVJJT0QKKy0tCistLSBwZXIycGVyIHRlc3QgT04gVVBEQVRFL0RFTEVURSBvcHRpb25zCistLQor LS0gVE9DOgorLS0gcmVmZXJlbmNlZCB1cGRhdGVzIENBU0NBREUKKy0tIHJlZmVyZW5jZWQgZGVs ZXRlcyBDQVNDQURFCistLSByZWZlcmVuY2VkIHVwZGF0ZXMgU0VUIE5VTEwKKy0tIHJlZmVyZW5j ZWQgZGVsZXRlcyBTRVQgTlVMTAorLS0gcmVmZXJlbmNlZCB1cGRhdGVzIFNFVCBERUZBVUxUCist LSByZWZlcmVuY2VkIGRlbGV0ZXMgU0VUIERFRkFVTFQKKy0tIHJlZmVyZW5jZWQgdXBkYXRlcyBD QVNDQURFICh0d28gc2NhbGFyIGNvbHMpCistLSByZWZlcmVuY2VkIGRlbGV0ZXMgQ0FTQ0FERSAo dHdvIHNjYWxhciBjb2xzKQorLS0gcmVmZXJlbmNlZCB1cGRhdGVzIFNFVCBOVUxMICh0d28gc2Nh bGFyIGNvbHMpCistLSByZWZlcmVuY2VkIGRlbGV0ZXMgU0VUIE5VTEwgKHR3byBzY2FsYXIgY29s cykKKy0tIHJlZmVyZW5jZWQgZGVsZXRlcyBTRVQgTlVMTCAodHdvIHNjYWxhciBjb2xzLCBTRVQg TlVMTCBzdWJzZXQpCistLSByZWZlcmVuY2VkIHVwZGF0ZXMgU0VUIERFRkFVTFQgKHR3byBzY2Fs YXIgY29scykKKy0tIHJlZmVyZW5jZWQgZGVsZXRlcyBTRVQgREVGQVVMVCAodHdvIHNjYWxhciBj b2xzKQorLS0gcmVmZXJlbmNlZCBkZWxldGVzIFNFVCBERUZBVUxUICh0d28gc2NhbGFyIGNvbHMs IFNFVCBERUZBVUxUIHN1YnNldCkKKy0tCistLSB0ZXN0IEZLIHJlZmVyZW5jZWQgdXBkYXRlcyBD QVNDQURFCistLQorVFJVTkNBVEUgdGVtcG9yYWxfcGVyLCB0ZW1wb3JhbF9ma19wZXIycGVyOwor SU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxV RVMgKCdbNiw3KScsICcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKTsKK0lOU0VSVCBJTlRPIHRl bXBvcmFsX2ZrX3BlcjJwZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwsIHBhcmVudF9pZCkg VkFMVUVTICgnWzEwMCwxMDBdJywgJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScsICdbNiw3KScp OworQUxURVIgVEFCTEUgdGVtcG9yYWxfZmtfcGVyMnBlcgorICBBREQgQ09OU1RSQUlOVCB0ZW1w b3JhbF9ma19wZXIycGVyX2ZrCisgICAgRk9SRUlHTiBLRVkgKHBhcmVudF9pZCwgUEVSSU9EIHZh bGlkX2F0KQorICAgIFJFRkVSRU5DRVMgdGVtcG9yYWxfcGVyCisgICAgT04gREVMRVRFIENBU0NB REUgT04gVVBEQVRFIENBU0NBREU7CistLSBsZWZ0b3ZlcnMgb24gYm90aCBzaWRlczoKK1VQREFU RSB0ZW1wb3JhbF9wZXIgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAxOS0wMS0wMScg VE8gJzIwMjAtMDEtMDEnIFNFVCBpZCA9ICdbNyw4KScgV0hFUkUgaWQgPSAnWzYsNyknOworU0VM RUNUICogRlJPTSB0ZW1wb3JhbF9ma19wZXIycGVyIFdIRVJFIGlkID0gJ1sxMDAsMTAwXScgT1JE RVIgQlkgaWQsIHZhbGlkX2F0OworICAgIGlkICAgICB8IHZhbGlkX2Zyb20gfCB2YWxpZF90aWwg IHwgcGFyZW50X2lkIAorLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0t LS0tLS0tLQorIFsxMDAsMTAxKSB8IDIwMTgtMDEtMDEgfCAyMDE5LTAxLTAxIHwgWzYsNykKKyBb MTAwLDEwMSkgfCAyMDE5LTAxLTAxIHwgMjAyMC0wMS0wMSB8IFs3LDgpCisgWzEwMCwxMDEpIHwg MjAyMC0wMS0wMSB8IDIwMjEtMDEtMDEgfCBbNiw3KQorKDMgcm93cykKKworLS0gbm9uLUZQTyB1 cGRhdGU6CitVUERBVEUgdGVtcG9yYWxfcGVyIFNFVCBpZCA9ICdbNyw4KScgV0hFUkUgaWQgPSAn WzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9ma19wZXIycGVyIFdIRVJFIGlkID0gJ1sx MDAsMTAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworICAgIGlkICAgICB8IHZhbGlkX2Zyb20g fCB2YWxpZF90aWwgIHwgcGFyZW50X2lkIAorLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0t LS0tLS0tLSstLS0tLS0tLS0tLQorIFsxMDAsMTAxKSB8IDIwMTgtMDEtMDEgfCAyMDE5LTAxLTAx IHwgWzcsOCkKKyBbMTAwLDEwMSkgfCAyMDE5LTAxLTAxIHwgMjAyMC0wMS0wMSB8IFs3LDgpCisg WzEwMCwxMDEpIHwgMjAyMC0wMS0wMSB8IDIwMjEtMDEtMDEgfCBbNyw4KQorKDMgcm93cykKKwor LS0gRksgYWNyb3NzIHR3byByZWZlcmVuY2VkIHJvd3M6CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9w ZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1s4LDkpJywgJzIwMTgtMDEt MDEnLCAnMjAyMC0wMS0wMScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyIChpZCwgdmFsaWRf ZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbOCw5KScsICcyMDIwLTAxLTAxJywgJzIwMjEtMDEt MDEnKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrX3BlcjJwZXIgKGlkLCB2YWxpZF9mcm9tLCB2 YWxpZF90aWwsIHBhcmVudF9pZCkgVkFMVUVTICgnWzIwMCwyMDBdJywgJzIwMTgtMDEtMDEnLCAn MjAyMS0wMS0wMScsICdbOCw5KScpOworVVBEQVRFIHRlbXBvcmFsX3BlciBTRVQgaWQgPSAnWzks MTApJyBXSEVSRSBpZCA9ICdbOCw5KScgQU5EIHZhbGlkX2F0IEA+ICcyMDE5LTAxLTAxJzo6ZGF0 ZTsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmtfcGVyMnBlciBXSEVSRSBpZCA9ICdbMjAwLDIw MF0nIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKyAgICBpZCAgICAgfCB2YWxpZF9mcm9tIHwgdmFs aWRfdGlsICB8IHBhcmVudF9pZCAKKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0t LS0rLS0tLS0tLS0tLS0KKyBbMjAwLDIwMSkgfCAyMDE4LTAxLTAxIHwgMjAyMC0wMS0wMSB8IFs5 LDEwKQorIFsyMDAsMjAxKSB8IDIwMjAtMDEtMDEgfCAyMDIxLTAxLTAxIHwgWzgsOSkKKygyIHJv d3MpCisKKy0tCistLSB0ZXN0IEZLIHJlZmVyZW5jZWQgZGVsZXRlcyBDQVNDQURFCistLQorVFJV TkNBVEUgdGVtcG9yYWxfcGVyLCB0ZW1wb3JhbF9ma19wZXIycGVyOworSU5TRVJUIElOVE8gdGVt cG9yYWxfcGVyIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbNiw3KScsICcy MDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrX3BlcjJw ZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwsIHBhcmVudF9pZCkgVkFMVUVTICgnWzEwMCwx MDBdJywgJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScsICdbNiw3KScpOworLS0gbGVmdG92ZXJz IG9uIGJvdGggc2lkZXM6CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9wZXIgRk9SIFBPUlRJT04gT0Yg dmFsaWRfYXQgRlJPTSAnMjAxOS0wMS0wMScgVE8gJzIwMjAtMDEtMDEnIFdIRVJFIGlkID0gJ1s2 LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmtfcGVyMnBlciBXSEVSRSBpZCA9ICdbMTAw LDEwMF0nIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKyAgICBpZCAgICAgfCB2YWxpZF9mcm9tIHwg dmFsaWRfdGlsICB8IHBhcmVudF9pZCAKKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0t LS0tLS0rLS0tLS0tLS0tLS0KKyBbMTAwLDEwMSkgfCAyMDE4LTAxLTAxIHwgMjAxOS0wMS0wMSB8 IFs2LDcpCisgWzEwMCwxMDEpIHwgMjAyMC0wMS0wMSB8IDIwMjEtMDEtMDEgfCBbNiw3KQorKDIg cm93cykKKworLS0gbm9uLUZQTyBkZWxldGU6CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9wZXIgV0hF UkUgaWQgPSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9ma19wZXIycGVyIFdIRVJF IGlkID0gJ1sxMDAsMTAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworIGlkIHwgdmFsaWRfZnJv bSB8IHZhbGlkX3RpbCB8IHBhcmVudF9pZCAKKy0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0t Ky0tLS0tLS0tLS0tCisoMCByb3dzKQorCistLSBGSyBhY3Jvc3MgdHdvIHJlZmVyZW5jZWQgcm93 czoKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlciAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkg VkFMVUVTICgnWzgsOSknLCAnMjAxOC0wMS0wMScsICcyMDIwLTAxLTAxJyk7CitJTlNFUlQgSU5U TyB0ZW1wb3JhbF9wZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1s4LDkp JywgJzIwMjAtMDEtMDEnLCAnMjAyMS0wMS0wMScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmtf cGVyMnBlciAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCwgcGFyZW50X2lkKSBWQUxVRVMgKCdb MjAwLDIwMF0nLCAnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJywgJ1s4LDkpJyk7CitERUxFVEUg RlJPTSB0ZW1wb3JhbF9wZXIgV0hFUkUgaWQgPSAnWzgsOSknIEFORCB2YWxpZF9hdCBAPiAnMjAx OS0wMS0wMSc6OmRhdGU7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrX3BlcjJwZXIgV0hFUkUg aWQgPSAnWzIwMCwyMDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisgICAgaWQgICAgIHwgdmFs aWRfZnJvbSB8IHZhbGlkX3RpbCAgfCBwYXJlbnRfaWQgCistLS0tLS0tLS0tLSstLS0tLS0tLS0t LS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tCisgWzIwMCwyMDEpIHwgMjAyMC0wMS0wMSB8IDIw MjEtMDEtMDEgfCBbOCw5KQorKDEgcm93KQorCistLQorLS0gdGVzdCBGSyByZWZlcmVuY2VkIHVw ZGF0ZXMgU0VUIE5VTEwKKy0tCitUUlVOQ0FURSB0ZW1wb3JhbF9wZXIsIHRlbXBvcmFsX2ZrX3Bl cjJwZXI7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90 aWwpIFZBTFVFUyAoJ1s2LDcpJywgJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpOworSU5TRVJU IElOVE8gdGVtcG9yYWxfZmtfcGVyMnBlciAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCwgcGFy ZW50X2lkKSBWQUxVRVMgKCdbMTAwLDEwMF0nLCAnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJywg J1s2LDcpJyk7CitBTFRFUiBUQUJMRSB0ZW1wb3JhbF9ma19wZXIycGVyCisgIERST1AgQ09OU1RS QUlOVCB0ZW1wb3JhbF9ma19wZXIycGVyX2ZrLAorICBBREQgQ09OU1RSQUlOVCB0ZW1wb3JhbF9m a19wZXIycGVyX2ZrCisgICAgRk9SRUlHTiBLRVkgKHBhcmVudF9pZCwgUEVSSU9EIHZhbGlkX2F0 KQorICAgIFJFRkVSRU5DRVMgdGVtcG9yYWxfcGVyCisgICAgT04gREVMRVRFIFNFVCBOVUxMIE9O IFVQREFURSBTRVQgTlVMTDsKKy0tIGxlZnRvdmVycyBvbiBib3RoIHNpZGVzOgorVVBEQVRFIHRl bXBvcmFsX3BlciBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDE5LTAxLTAxJyBUTyAn MjAyMC0wMS0wMScgU0VUIGlkID0gJ1s3LDgpJyBXSEVSRSBpZCA9ICdbNiw3KSc7CitTRUxFQ1Qg KiBGUk9NIHRlbXBvcmFsX2ZrX3BlcjJwZXIgV0hFUkUgaWQgPSAnWzEwMCwxMDBdJyBPUkRFUiBC WSBpZCwgdmFsaWRfYXQ7CisgICAgaWQgICAgIHwgdmFsaWRfZnJvbSB8IHZhbGlkX3RpbCAgfCBw YXJlbnRfaWQgCistLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0t LS0tCisgWzEwMCwxMDEpIHwgMjAxOC0wMS0wMSB8IDIwMTktMDEtMDEgfCBbNiw3KQorIFsxMDAs MTAxKSB8IDIwMTktMDEtMDEgfCAyMDIwLTAxLTAxIHwgCisgWzEwMCwxMDEpIHwgMjAyMC0wMS0w MSB8IDIwMjEtMDEtMDEgfCBbNiw3KQorKDMgcm93cykKKworLS0gbm9uLUZQTyB1cGRhdGU6CitV UERBVEUgdGVtcG9yYWxfcGVyIFNFVCBpZCA9ICdbNyw4KScgV0hFUkUgaWQgPSAnWzYsNyknOwor U0VMRUNUICogRlJPTSB0ZW1wb3JhbF9ma19wZXIycGVyIFdIRVJFIGlkID0gJ1sxMDAsMTAwXScg T1JERVIgQlkgaWQsIHZhbGlkX2F0OworICAgIGlkICAgICB8IHZhbGlkX2Zyb20gfCB2YWxpZF90 aWwgIHwgcGFyZW50X2lkIAorLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSst LS0tLS0tLS0tLQorIFsxMDAsMTAxKSB8IDIwMTgtMDEtMDEgfCAyMDE5LTAxLTAxIHwgCisgWzEw MCwxMDEpIHwgMjAxOS0wMS0wMSB8IDIwMjAtMDEtMDEgfCAKKyBbMTAwLDEwMSkgfCAyMDIwLTAx LTAxIHwgMjAyMS0wMS0wMSB8IAorKDMgcm93cykKKworLS0gRksgYWNyb3NzIHR3byByZWZlcmVu Y2VkIHJvd3M6CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxp ZF90aWwpIFZBTFVFUyAoJ1s4LDkpJywgJzIwMTgtMDEtMDEnLCAnMjAyMC0wMS0wMScpOworSU5T RVJUIElOVE8gdGVtcG9yYWxfcGVyIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMg KCdbOCw5KScsICcyMDIwLTAxLTAxJywgJzIwMjEtMDEtMDEnKTsKK0lOU0VSVCBJTlRPIHRlbXBv cmFsX2ZrX3BlcjJwZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwsIHBhcmVudF9pZCkgVkFM VUVTICgnWzIwMCwyMDBdJywgJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScsICdbOCw5KScpOwor VVBEQVRFIHRlbXBvcmFsX3BlciBTRVQgaWQgPSAnWzksMTApJyBXSEVSRSBpZCA9ICdbOCw5KScg QU5EIHZhbGlkX2F0IEA+ICcyMDE5LTAxLTAxJzo6ZGF0ZTsKK1NFTEVDVCAqIEZST00gdGVtcG9y YWxfZmtfcGVyMnBlciBXSEVSRSBpZCA9ICdbMjAwLDIwMF0nIE9SREVSIEJZIGlkLCB2YWxpZF9h dDsKKyAgICBpZCAgICAgfCB2YWxpZF9mcm9tIHwgdmFsaWRfdGlsICB8IHBhcmVudF9pZCAKKy0t LS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0KKyBbMjAwLDIw MSkgfCAyMDE4LTAxLTAxIHwgMjAyMC0wMS0wMSB8IAorIFsyMDAsMjAxKSB8IDIwMjAtMDEtMDEg fCAyMDIxLTAxLTAxIHwgWzgsOSkKKygyIHJvd3MpCisKKy0tCistLSB0ZXN0IEZLIHJlZmVyZW5j ZWQgZGVsZXRlcyBTRVQgTlVMTAorLS0KK1RSVU5DQVRFIHRlbXBvcmFsX3BlciwgdGVtcG9yYWxf ZmtfcGVyMnBlcjsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlciAoaWQsIHZhbGlkX2Zyb20sIHZh bGlkX3RpbCkgVkFMVUVTICgnWzYsNyknLCAnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJyk7CitJ TlNFUlQgSU5UTyB0ZW1wb3JhbF9ma19wZXIycGVyIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGls LCBwYXJlbnRfaWQpIFZBTFVFUyAoJ1sxMDAsMTAwXScsICcyMDE4LTAxLTAxJywgJzIwMjEtMDEt MDEnLCAnWzYsNyknKTsKKy0tIGxlZnRvdmVycyBvbiBib3RoIHNpZGVzOgorREVMRVRFIEZST00g dGVtcG9yYWxfcGVyIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMTktMDEtMDEnIFRP ICcyMDIwLTAxLTAxJyBXSEVSRSBpZCA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFs X2ZrX3BlcjJwZXIgV0hFUkUgaWQgPSAnWzEwMCwxMDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7 CisgICAgaWQgICAgIHwgdmFsaWRfZnJvbSB8IHZhbGlkX3RpbCAgfCBwYXJlbnRfaWQgCistLS0t LS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tCisgWzEwMCwxMDEp IHwgMjAxOC0wMS0wMSB8IDIwMTktMDEtMDEgfCBbNiw3KQorIFsxMDAsMTAxKSB8IDIwMTktMDEt MDEgfCAyMDIwLTAxLTAxIHwgCisgWzEwMCwxMDEpIHwgMjAyMC0wMS0wMSB8IDIwMjEtMDEtMDEg fCBbNiw3KQorKDMgcm93cykKKworLS0gbm9uLUZQTyBkZWxldGU6CitERUxFVEUgRlJPTSB0ZW1w b3JhbF9wZXIgV0hFUkUgaWQgPSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9ma19w ZXIycGVyIFdIRVJFIGlkID0gJ1sxMDAsMTAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworICAg IGlkICAgICB8IHZhbGlkX2Zyb20gfCB2YWxpZF90aWwgIHwgcGFyZW50X2lkIAorLS0tLS0tLS0t LS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLQorIFsxMDAsMTAxKSB8IDIw MTgtMDEtMDEgfCAyMDE5LTAxLTAxIHwgCisgWzEwMCwxMDEpIHwgMjAxOS0wMS0wMSB8IDIwMjAt MDEtMDEgfCAKKyBbMTAwLDEwMSkgfCAyMDIwLTAxLTAxIHwgMjAyMS0wMS0wMSB8IAorKDMgcm93 cykKKworLS0gRksgYWNyb3NzIHR3byByZWZlcmVuY2VkIHJvd3M6CitJTlNFUlQgSU5UTyB0ZW1w b3JhbF9wZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1s4LDkpJywgJzIw MTgtMDEtMDEnLCAnMjAyMC0wMS0wMScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyIChpZCwg dmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbOCw5KScsICcyMDIwLTAxLTAxJywgJzIw MjEtMDEtMDEnKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrX3BlcjJwZXIgKGlkLCB2YWxpZF9m cm9tLCB2YWxpZF90aWwsIHBhcmVudF9pZCkgVkFMVUVTICgnWzIwMCwyMDBdJywgJzIwMTgtMDEt MDEnLCAnMjAyMS0wMS0wMScsICdbOCw5KScpOworREVMRVRFIEZST00gdGVtcG9yYWxfcGVyIFdI RVJFIGlkID0gJ1s4LDkpJyBBTkQgdmFsaWRfYXQgQD4gJzIwMTktMDEtMDEnOjpkYXRlOworU0VM RUNUICogRlJPTSB0ZW1wb3JhbF9ma19wZXIycGVyIFdIRVJFIGlkID0gJ1syMDAsMjAwXScgT1JE RVIgQlkgaWQsIHZhbGlkX2F0OworICAgIGlkICAgICB8IHZhbGlkX2Zyb20gfCB2YWxpZF90aWwg IHwgcGFyZW50X2lkIAorLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0t LS0tLS0tLQorIFsyMDAsMjAxKSB8IDIwMTgtMDEtMDEgfCAyMDIwLTAxLTAxIHwgCisgWzIwMCwy MDEpIHwgMjAyMC0wMS0wMSB8IDIwMjEtMDEtMDEgfCBbOCw5KQorKDIgcm93cykKKworLS0KKy0t IHRlc3QgRksgcmVmZXJlbmNlZCB1cGRhdGVzIFNFVCBERUZBVUxUCistLQorVFJVTkNBVEUgdGVt cG9yYWxfcGVyLCB0ZW1wb3JhbF9ma19wZXIycGVyOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVy IChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbLTEsLTFdJywgbnVsbCwgbnVs bCk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwp IFZBTFVFUyAoJ1s2LDcpJywgJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpOworSU5TRVJUIElO VE8gdGVtcG9yYWxfZmtfcGVyMnBlciAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCwgcGFyZW50 X2lkKSBWQUxVRVMgKCdbMTAwLDEwMF0nLCAnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJywgJ1s2 LDcpJyk7CitBTFRFUiBUQUJMRSB0ZW1wb3JhbF9ma19wZXIycGVyCisgIEFMVEVSIENPTFVNTiBw YXJlbnRfaWQgU0VUIERFRkFVTFQgJ1stMSwtMV0nLAorICBEUk9QIENPTlNUUkFJTlQgdGVtcG9y YWxfZmtfcGVyMnBlcl9maywKKyAgQUREIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcGVyMnBlcl9m aworICAgIEZPUkVJR04gS0VZIChwYXJlbnRfaWQsIFBFUklPRCB2YWxpZF9hdCkKKyAgICBSRUZF UkVOQ0VTIHRlbXBvcmFsX3BlcgorICAgIE9OIERFTEVURSBTRVQgREVGQVVMVCBPTiBVUERBVEUg U0VUIERFRkFVTFQ7CistLSBsZWZ0b3ZlcnMgb24gYm90aCBzaWRlczoKK1VQREFURSB0ZW1wb3Jh bF9wZXIgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAxOS0wMS0wMScgVE8gJzIwMjAt MDEtMDEnIFNFVCBpZCA9ICdbNyw4KScgV0hFUkUgaWQgPSAnWzYsNyknOworU0VMRUNUICogRlJP TSB0ZW1wb3JhbF9ma19wZXIycGVyIFdIRVJFIGlkID0gJ1sxMDAsMTAwXScgT1JERVIgQlkgaWQs IHZhbGlkX2F0OworICAgIGlkICAgICB8IHZhbGlkX2Zyb20gfCB2YWxpZF90aWwgIHwgcGFyZW50 X2lkIAorLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLQor IFsxMDAsMTAxKSB8IDIwMTgtMDEtMDEgfCAyMDE5LTAxLTAxIHwgWzYsNykKKyBbMTAwLDEwMSkg fCAyMDE5LTAxLTAxIHwgMjAyMC0wMS0wMSB8IFstMSwwKQorIFsxMDAsMTAxKSB8IDIwMjAtMDEt MDEgfCAyMDIxLTAxLTAxIHwgWzYsNykKKygzIHJvd3MpCisKKy0tIG5vbi1GUE8gdXBkYXRlOgor VVBEQVRFIHRlbXBvcmFsX3BlciBTRVQgaWQgPSAnWzcsOCknIFdIRVJFIGlkID0gJ1s2LDcpJzsK K1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmtfcGVyMnBlciBXSEVSRSBpZCA9ICdbMTAwLDEwMF0n IE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKyAgICBpZCAgICAgfCB2YWxpZF9mcm9tIHwgdmFsaWRf dGlsICB8IHBhcmVudF9pZCAKKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0r LS0tLS0tLS0tLS0KKyBbMTAwLDEwMSkgfCAyMDE4LTAxLTAxIHwgMjAxOS0wMS0wMSB8IFstMSww KQorIFsxMDAsMTAxKSB8IDIwMTktMDEtMDEgfCAyMDIwLTAxLTAxIHwgWy0xLDApCisgWzEwMCwx MDEpIHwgMjAyMC0wMS0wMSB8IDIwMjEtMDEtMDEgfCBbLTEsMCkKKygzIHJvd3MpCisKKy0tIEZL IGFjcm9zcyB0d28gcmVmZXJlbmNlZCByb3dzOgorSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyIChp ZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbOCw5KScsICcyMDE4LTAxLTAxJywg JzIwMjAtMDEtMDEnKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlciAoaWQsIHZhbGlkX2Zyb20s IHZhbGlkX3RpbCkgVkFMVUVTICgnWzgsOSknLCAnMjAyMC0wMS0wMScsICcyMDIxLTAxLTAxJyk7 CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ma19wZXIycGVyIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRf dGlsLCBwYXJlbnRfaWQpIFZBTFVFUyAoJ1syMDAsMjAwXScsICcyMDE4LTAxLTAxJywgJzIwMjEt MDEtMDEnLCAnWzgsOSknKTsKK1VQREFURSB0ZW1wb3JhbF9wZXIgU0VUIGlkID0gJ1s5LDEwKScg V0hFUkUgaWQgPSAnWzgsOSknIEFORCB2YWxpZF9hdCBAPiAnMjAxOS0wMS0wMSc6OmRhdGU7CitT RUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrX3BlcjJwZXIgV0hFUkUgaWQgPSAnWzIwMCwyMDBdJyBP UkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisgICAgaWQgICAgIHwgdmFsaWRfZnJvbSB8IHZhbGlkX3Rp bCAgfCBwYXJlbnRfaWQgCistLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0t LS0tLS0tLS0tCisgWzIwMCwyMDEpIHwgMjAxOC0wMS0wMSB8IDIwMjAtMDEtMDEgfCBbLTEsMCkK KyBbMjAwLDIwMSkgfCAyMDIwLTAxLTAxIHwgMjAyMS0wMS0wMSB8IFs4LDkpCisoMiByb3dzKQor CistLQorLS0gdGVzdCBGSyByZWZlcmVuY2VkIGRlbGV0ZXMgU0VUIERFRkFVTFQKKy0tCitUUlVO Q0FURSB0ZW1wb3JhbF9wZXIsIHRlbXBvcmFsX2ZrX3BlcjJwZXI7CitJTlNFUlQgSU5UTyB0ZW1w b3JhbF9wZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1stMSwtMV0nLCBu dWxsLCBudWxsKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlciAoaWQsIHZhbGlkX2Zyb20sIHZh bGlkX3RpbCkgVkFMVUVTICgnWzYsNyknLCAnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJyk7CitJ TlNFUlQgSU5UTyB0ZW1wb3JhbF9ma19wZXIycGVyIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGls LCBwYXJlbnRfaWQpIFZBTFVFUyAoJ1sxMDAsMTAwXScsICcyMDE4LTAxLTAxJywgJzIwMjEtMDEt MDEnLCAnWzYsNyknKTsKKy0tIGxlZnRvdmVycyBvbiBib3RoIHNpZGVzOgorREVMRVRFIEZST00g dGVtcG9yYWxfcGVyIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMTktMDEtMDEnIFRP ICcyMDIwLTAxLTAxJyBXSEVSRSBpZCA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFs X2ZrX3BlcjJwZXIgV0hFUkUgaWQgPSAnWzEwMCwxMDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7 CisgICAgaWQgICAgIHwgdmFsaWRfZnJvbSB8IHZhbGlkX3RpbCAgfCBwYXJlbnRfaWQgCistLS0t LS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tCisgWzEwMCwxMDEp IHwgMjAxOC0wMS0wMSB8IDIwMTktMDEtMDEgfCBbNiw3KQorIFsxMDAsMTAxKSB8IDIwMTktMDEt MDEgfCAyMDIwLTAxLTAxIHwgWy0xLDApCisgWzEwMCwxMDEpIHwgMjAyMC0wMS0wMSB8IDIwMjEt MDEtMDEgfCBbNiw3KQorKDMgcm93cykKKworLS0gbm9uLUZQTyB1cGRhdGU6CitERUxFVEUgRlJP TSB0ZW1wb3JhbF9wZXIgV0hFUkUgaWQgPSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1wb3Jh bF9ma19wZXIycGVyIFdIRVJFIGlkID0gJ1sxMDAsMTAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0 OworICAgIGlkICAgICB8IHZhbGlkX2Zyb20gfCB2YWxpZF90aWwgIHwgcGFyZW50X2lkIAorLS0t LS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLQorIFsxMDAsMTAx KSB8IDIwMTgtMDEtMDEgfCAyMDE5LTAxLTAxIHwgWy0xLDApCisgWzEwMCwxMDEpIHwgMjAxOS0w MS0wMSB8IDIwMjAtMDEtMDEgfCBbLTEsMCkKKyBbMTAwLDEwMSkgfCAyMDIwLTAxLTAxIHwgMjAy MS0wMS0wMSB8IFstMSwwKQorKDMgcm93cykKKworLS0gRksgYWNyb3NzIHR3byByZWZlcmVuY2Vk IHJvd3M6CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90 aWwpIFZBTFVFUyAoJ1s4LDkpJywgJzIwMTgtMDEtMDEnLCAnMjAyMC0wMS0wMScpOworSU5TRVJU IElOVE8gdGVtcG9yYWxfcGVyIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdb OCw5KScsICcyMDIwLTAxLTAxJywgJzIwMjEtMDEtMDEnKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFs X2ZrX3BlcjJwZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwsIHBhcmVudF9pZCkgVkFMVUVT ICgnWzIwMCwyMDBdJywgJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScsICdbOCw5KScpOworREVM RVRFIEZST00gdGVtcG9yYWxfcGVyIFdIRVJFIGlkID0gJ1s4LDkpJyBBTkQgdmFsaWRfYXQgQD4g JzIwMTktMDEtMDEnOjpkYXRlOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9ma19wZXIycGVyIFdI RVJFIGlkID0gJ1syMDAsMjAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworICAgIGlkICAgICB8 IHZhbGlkX2Zyb20gfCB2YWxpZF90aWwgIHwgcGFyZW50X2lkIAorLS0tLS0tLS0tLS0rLS0tLS0t LS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLQorIFsyMDAsMjAxKSB8IDIwMTgtMDEtMDEg fCAyMDIwLTAxLTAxIHwgWy0xLDApCisgWzIwMCwyMDEpIHwgMjAyMC0wMS0wMSB8IDIwMjEtMDEt MDEgfCBbOCw5KQorKDIgcm93cykKKworLS0KKy0tIHRlc3QgRksgcmVmZXJlbmNlZCB1cGRhdGVz IENBU0NBREUgKHR3byBzY2FsYXIgY29scykKKy0tCitUUlVOQ0FURSB0ZW1wb3JhbF9wZXIyLCB0 ZW1wb3JhbF9mazJfcGVyMnBlcjsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlcjIgKGlkMSwgaWQy LCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1s2LDcpJywgJ1s2LDcpJywgJzIwMTgt MDEtMDEnLCAnMjAyMS0wMS0wMScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmsyX3BlcjJwZXIg KGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwsIHBhcmVudF9pZDEsIHBhcmVudF9pZDIpIFZBTFVF UyAoJ1sxMDAsMTAwXScsICcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnLCAnWzYsNyknLCAnWzYs NyknKTsKK0FMVEVSIFRBQkxFIHRlbXBvcmFsX2ZrMl9wZXIycGVyCisgIERST1AgQ09OU1RSQUlO VCB0ZW1wb3JhbF9mazJfcGVyMnBlcl9maywKKyAgQUREIENPTlNUUkFJTlQgdGVtcG9yYWxfZmsy X3BlcjJwZXJfZmsKKyAgICBGT1JFSUdOIEtFWSAocGFyZW50X2lkMSwgcGFyZW50X2lkMiwgUEVS SU9EIHZhbGlkX2F0KQorICAgIFJFRkVSRU5DRVMgdGVtcG9yYWxfcGVyMgorICAgIE9OIERFTEVU RSBDQVNDQURFIE9OIFVQREFURSBDQVNDQURFOworLS0gbGVmdG92ZXJzIG9uIGJvdGggc2lkZXM6 CitVUERBVEUgdGVtcG9yYWxfcGVyMiBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDE5 LTAxLTAxJyBUTyAnMjAyMC0wMS0wMScgU0VUIGlkMSA9ICdbNyw4KScgV0hFUkUgaWQxID0gJ1s2 LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX3BlcjJwZXIgV0hFUkUgaWQgPSAnWzEw MCwxMDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisgICAgaWQgICAgIHwgdmFsaWRfZnJvbSB8 IHZhbGlkX3RpbCAgfCBwYXJlbnRfaWQxIHwgcGFyZW50X2lkMiAKKy0tLS0tLS0tLS0tKy0tLS0t LS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLQorIFsxMDAsMTAx KSB8IDIwMTgtMDEtMDEgfCAyMDE5LTAxLTAxIHwgWzYsNykgICAgICB8IFs2LDcpCisgWzEwMCwx MDEpIHwgMjAxOS0wMS0wMSB8IDIwMjAtMDEtMDEgfCBbNyw4KSAgICAgIHwgWzYsNykKKyBbMTAw LDEwMSkgfCAyMDIwLTAxLTAxIHwgMjAyMS0wMS0wMSB8IFs2LDcpICAgICAgfCBbNiw3KQorKDMg cm93cykKKworLS0gbm9uLUZQTyB1cGRhdGU6CitVUERBVEUgdGVtcG9yYWxfcGVyMiBTRVQgaWQx ID0gJ1s3LDgpJyBXSEVSRSBpZDEgPSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9m azJfcGVyMnBlciBXSEVSRSBpZCA9ICdbMTAwLDEwMF0nIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsK KyAgICBpZCAgICAgfCB2YWxpZF9mcm9tIHwgdmFsaWRfdGlsICB8IHBhcmVudF9pZDEgfCBwYXJl bnRfaWQyIAorLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0t LS0rLS0tLS0tLS0tLS0tCisgWzEwMCwxMDEpIHwgMjAxOC0wMS0wMSB8IDIwMTktMDEtMDEgfCBb Nyw4KSAgICAgIHwgWzYsNykKKyBbMTAwLDEwMSkgfCAyMDE5LTAxLTAxIHwgMjAyMC0wMS0wMSB8 IFs3LDgpICAgICAgfCBbNiw3KQorIFsxMDAsMTAxKSB8IDIwMjAtMDEtMDEgfCAyMDIxLTAxLTAx IHwgWzcsOCkgICAgICB8IFs2LDcpCisoMyByb3dzKQorCistLSBGSyBhY3Jvc3MgdHdvIHJlZmVy ZW5jZWQgcm93czoKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlcjIgKGlkMSwgaWQyLCB2YWxpZF9m cm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1s4LDkpJywgJ1s4LDkpJywgJzIwMTgtMDEtMDEnLCAn MjAyMC0wMS0wMScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyMiAoaWQxLCBpZDIsIHZhbGlk X2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzgsOSknLCAnWzgsOSknLCAnMjAyMC0wMS0wMScs ICcyMDIxLTAxLTAxJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9mazJfcGVyMnBlciAoaWQsIHZh bGlkX2Zyb20sIHZhbGlkX3RpbCwgcGFyZW50X2lkMSwgcGFyZW50X2lkMikgVkFMVUVTICgnWzIw MCwyMDBdJywgJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScsICdbOCw5KScsICdbOCw5KScpOwor VVBEQVRFIHRlbXBvcmFsX3BlcjIgU0VUIGlkMSA9ICdbOSwxMCknIFdIRVJFIGlkMSA9ICdbOCw5 KScgQU5EIHZhbGlkX2F0IEA+ICcyMDE5LTAxLTAxJzo6ZGF0ZTsKK1NFTEVDVCAqIEZST00gdGVt cG9yYWxfZmsyX3BlcjJwZXIgV0hFUkUgaWQgPSAnWzIwMCwyMDBdJyBPUkRFUiBCWSBpZCwgdmFs aWRfYXQ7CisgICAgaWQgICAgIHwgdmFsaWRfZnJvbSB8IHZhbGlkX3RpbCAgfCBwYXJlbnRfaWQx IHwgcGFyZW50X2lkMiAKKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0t LS0tLS0tLS0tKy0tLS0tLS0tLS0tLQorIFsyMDAsMjAxKSB8IDIwMTgtMDEtMDEgfCAyMDIwLTAx LTAxIHwgWzksMTApICAgICB8IFs4LDkpCisgWzIwMCwyMDEpIHwgMjAyMC0wMS0wMSB8IDIwMjEt MDEtMDEgfCBbOCw5KSAgICAgIHwgWzgsOSkKKygyIHJvd3MpCisKKy0tCistLSB0ZXN0IEZLIHJl ZmVyZW5jZWQgZGVsZXRlcyBDQVNDQURFICh0d28gc2NhbGFyIGNvbHMpCistLQorVFJVTkNBVEUg dGVtcG9yYWxfcGVyMiwgdGVtcG9yYWxfZmsyX3BlcjJwZXI7CitJTlNFUlQgSU5UTyB0ZW1wb3Jh bF9wZXIyIChpZDEsIGlkMiwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbNiw3KScs ICdbNiw3KScsICcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKTsKK0lOU0VSVCBJTlRPIHRlbXBv cmFsX2ZrMl9wZXIycGVyIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsLCBwYXJlbnRfaWQxLCBw YXJlbnRfaWQyKSBWQUxVRVMgKCdbMTAwLDEwMF0nLCAnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAx JywgJ1s2LDcpJywgJ1s2LDcpJyk7CistLSBsZWZ0b3ZlcnMgb24gYm90aCBzaWRlczoKK0RFTEVU RSBGUk9NIHRlbXBvcmFsX3BlcjIgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAxOS0w MS0wMScgVE8gJzIwMjAtMDEtMDEnIFdIRVJFIGlkMSA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9N IHRlbXBvcmFsX2ZrMl9wZXIycGVyIFdIRVJFIGlkID0gJ1sxMDAsMTAwXScgT1JERVIgQlkgaWQs IHZhbGlkX2F0OworICAgIGlkICAgICB8IHZhbGlkX2Zyb20gfCB2YWxpZF90aWwgIHwgcGFyZW50 X2lkMSB8IHBhcmVudF9pZDIgCistLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0t Ky0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0KKyBbMTAwLDEwMSkgfCAyMDE4LTAxLTAxIHwgMjAx OS0wMS0wMSB8IFs2LDcpICAgICAgfCBbNiw3KQorIFsxMDAsMTAxKSB8IDIwMjAtMDEtMDEgfCAy MDIxLTAxLTAxIHwgWzYsNykgICAgICB8IFs2LDcpCisoMiByb3dzKQorCistLSBub24tRlBPIGRl bGV0ZToKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3BlcjIgV0hFUkUgaWQxID0gJ1s2LDcpJzsKK1NF TEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX3BlcjJwZXIgV0hFUkUgaWQgPSAnWzEwMCwxMDBdJyBP UkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisgaWQgfCB2YWxpZF9mcm9tIHwgdmFsaWRfdGlsIHwgcGFy ZW50X2lkMSB8IHBhcmVudF9pZDIgCistLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLSstLS0t LS0tLS0tLS0rLS0tLS0tLS0tLS0tCisoMCByb3dzKQorCistLSBGSyBhY3Jvc3MgdHdvIHJlZmVy ZW5jZWQgcm93czoKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlcjIgKGlkMSwgaWQyLCB2YWxpZF9m cm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1s4LDkpJywgJ1s4LDkpJywgJzIwMTgtMDEtMDEnLCAn MjAyMC0wMS0wMScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyMiAoaWQxLCBpZDIsIHZhbGlk X2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzgsOSknLCAnWzgsOSknLCAnMjAyMC0wMS0wMScs ICcyMDIxLTAxLTAxJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9mazJfcGVyMnBlciAoaWQsIHZh bGlkX2Zyb20sIHZhbGlkX3RpbCwgcGFyZW50X2lkMSwgcGFyZW50X2lkMikgVkFMVUVTICgnWzIw MCwyMDBdJywgJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScsICdbOCw5KScsICdbOCw5KScpOwor REVMRVRFIEZST00gdGVtcG9yYWxfcGVyMiBXSEVSRSBpZDEgPSAnWzgsOSknIEFORCB2YWxpZF9h dCBAPiAnMjAxOS0wMS0wMSc6OmRhdGU7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9wZXIy cGVyIFdIRVJFIGlkID0gJ1syMDAsMjAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworICAgIGlk ICAgICB8IHZhbGlkX2Zyb20gfCB2YWxpZF90aWwgIHwgcGFyZW50X2lkMSB8IHBhcmVudF9pZDIg CistLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0t LS0tLS0tLS0KKyBbMjAwLDIwMSkgfCAyMDIwLTAxLTAxIHwgMjAyMS0wMS0wMSB8IFs4LDkpICAg ICAgfCBbOCw5KQorKDEgcm93KQorCistLQorLS0gdGVzdCBGSyByZWZlcmVuY2VkIHVwZGF0ZXMg U0VUIE5VTEwgKHR3byBzY2FsYXIgY29scykKKy0tCitUUlVOQ0FURSB0ZW1wb3JhbF9wZXIyLCB0 ZW1wb3JhbF9mazJfcGVyMnBlcjsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlcjIgKGlkMSwgaWQy LCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1s2LDcpJywgJ1s2LDcpJywgJzIwMTgt MDEtMDEnLCAnMjAyMS0wMS0wMScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmsyX3BlcjJwZXIg KGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwsIHBhcmVudF9pZDEsIHBhcmVudF9pZDIpIFZBTFVF UyAoJ1sxMDAsMTAwXScsICcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnLCAnWzYsNyknLCAnWzYs NyknKTsKK0FMVEVSIFRBQkxFIHRlbXBvcmFsX2ZrMl9wZXIycGVyCisgIERST1AgQ09OU1RSQUlO VCB0ZW1wb3JhbF9mazJfcGVyMnBlcl9maywKKyAgQUREIENPTlNUUkFJTlQgdGVtcG9yYWxfZmsy X3BlcjJwZXJfZmsKKyAgICBGT1JFSUdOIEtFWSAocGFyZW50X2lkMSwgcGFyZW50X2lkMiwgUEVS SU9EIHZhbGlkX2F0KQorICAgIFJFRkVSRU5DRVMgdGVtcG9yYWxfcGVyMgorICAgIE9OIERFTEVU RSBTRVQgTlVMTCBPTiBVUERBVEUgU0VUIE5VTEw7CistLSBsZWZ0b3ZlcnMgb24gYm90aCBzaWRl czoKK1VQREFURSB0ZW1wb3JhbF9wZXIyIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIw MTktMDEtMDEnIFRPICcyMDIwLTAxLTAxJyBTRVQgaWQxID0gJ1s3LDgpJyBXSEVSRSBpZDEgPSAn WzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9mazJfcGVyMnBlciBXSEVSRSBpZCA9ICdb MTAwLDEwMF0nIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKyAgICBpZCAgICAgfCB2YWxpZF9mcm9t IHwgdmFsaWRfdGlsICB8IHBhcmVudF9pZDEgfCBwYXJlbnRfaWQyIAorLS0tLS0tLS0tLS0rLS0t LS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tCisgWzEwMCwx MDEpIHwgMjAxOC0wMS0wMSB8IDIwMTktMDEtMDEgfCBbNiw3KSAgICAgIHwgWzYsNykKKyBbMTAw LDEwMSkgfCAyMDE5LTAxLTAxIHwgMjAyMC0wMS0wMSB8ICAgICAgICAgICAgfCAKKyBbMTAwLDEw MSkgfCAyMDIwLTAxLTAxIHwgMjAyMS0wMS0wMSB8IFs2LDcpICAgICAgfCBbNiw3KQorKDMgcm93 cykKKworLS0gbm9uLUZQTyB1cGRhdGU6CitVUERBVEUgdGVtcG9yYWxfcGVyMiBTRVQgaWQxID0g J1s3LDgpJyBXSEVSRSBpZDEgPSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9mazJf cGVyMnBlciBXSEVSRSBpZCA9ICdbMTAwLDEwMF0nIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKyAg ICBpZCAgICAgfCB2YWxpZF9mcm9tIHwgdmFsaWRfdGlsICB8IHBhcmVudF9pZDEgfCBwYXJlbnRf aWQyIAorLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0r LS0tLS0tLS0tLS0tCisgWzEwMCwxMDEpIHwgMjAxOC0wMS0wMSB8IDIwMTktMDEtMDEgfCAgICAg ICAgICAgIHwgCisgWzEwMCwxMDEpIHwgMjAxOS0wMS0wMSB8IDIwMjAtMDEtMDEgfCAgICAgICAg ICAgIHwgCisgWzEwMCwxMDEpIHwgMjAyMC0wMS0wMSB8IDIwMjEtMDEtMDEgfCAgICAgICAgICAg IHwgCisoMyByb3dzKQorCistLSBGSyBhY3Jvc3MgdHdvIHJlZmVyZW5jZWQgcm93czoKK0lOU0VS VCBJTlRPIHRlbXBvcmFsX3BlcjIgKGlkMSwgaWQyLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZB TFVFUyAoJ1s4LDkpJywgJ1s4LDkpJywgJzIwMTgtMDEtMDEnLCAnMjAyMC0wMS0wMScpOworSU5T RVJUIElOVE8gdGVtcG9yYWxfcGVyMiAoaWQxLCBpZDIsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkg VkFMVUVTICgnWzgsOSknLCAnWzgsOSknLCAnMjAyMC0wMS0wMScsICcyMDIxLTAxLTAxJyk7CitJ TlNFUlQgSU5UTyB0ZW1wb3JhbF9mazJfcGVyMnBlciAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3Rp bCwgcGFyZW50X2lkMSwgcGFyZW50X2lkMikgVkFMVUVTICgnWzIwMCwyMDBdJywgJzIwMTgtMDEt MDEnLCAnMjAyMS0wMS0wMScsICdbOCw5KScsICdbOCw5KScpOworVVBEQVRFIHRlbXBvcmFsX3Bl cjIgU0VUIGlkMSA9ICdbOSwxMCknIFdIRVJFIGlkMSA9ICdbOCw5KScgQU5EIHZhbGlkX2F0IEA+ ICcyMDE5LTAxLTAxJzo6ZGF0ZTsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX3BlcjJwZXIg V0hFUkUgaWQgPSAnWzIwMCwyMDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisgICAgaWQgICAg IHwgdmFsaWRfZnJvbSB8IHZhbGlkX3RpbCAgfCBwYXJlbnRfaWQxIHwgcGFyZW50X2lkMiAKKy0t LS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0t LS0tLQorIFsyMDAsMjAxKSB8IDIwMTgtMDEtMDEgfCAyMDIwLTAxLTAxIHwgICAgICAgICAgICB8 IAorIFsyMDAsMjAxKSB8IDIwMjAtMDEtMDEgfCAyMDIxLTAxLTAxIHwgWzgsOSkgICAgICB8IFs4 LDkpCisoMiByb3dzKQorCistLQorLS0gdGVzdCBGSyByZWZlcmVuY2VkIGRlbGV0ZXMgU0VUIE5V TEwgKHR3byBzY2FsYXIgY29scykKKy0tCitUUlVOQ0FURSB0ZW1wb3JhbF9wZXIyLCB0ZW1wb3Jh bF9mazJfcGVyMnBlcjsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlcjIgKGlkMSwgaWQyLCB2YWxp ZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1s2LDcpJywgJ1s2LDcpJywgJzIwMTgtMDEtMDEn LCAnMjAyMS0wMS0wMScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmsyX3BlcjJwZXIgKGlkLCB2 YWxpZF9mcm9tLCB2YWxpZF90aWwsIHBhcmVudF9pZDEsIHBhcmVudF9pZDIpIFZBTFVFUyAoJ1sx MDAsMTAwXScsICcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnLCAnWzYsNyknLCAnWzYsNyknKTsK Ky0tIGxlZnRvdmVycyBvbiBib3RoIHNpZGVzOgorREVMRVRFIEZST00gdGVtcG9yYWxfcGVyMiBG T1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDE5LTAxLTAxJyBUTyAnMjAyMC0wMS0wMScg V0hFUkUgaWQxID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX3BlcjJwZXIg V0hFUkUgaWQgPSAnWzEwMCwxMDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisgICAgaWQgICAg IHwgdmFsaWRfZnJvbSB8IHZhbGlkX3RpbCAgfCBwYXJlbnRfaWQxIHwgcGFyZW50X2lkMiAKKy0t LS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0t LS0tLQorIFsxMDAsMTAxKSB8IDIwMTgtMDEtMDEgfCAyMDE5LTAxLTAxIHwgWzYsNykgICAgICB8 IFs2LDcpCisgWzEwMCwxMDEpIHwgMjAxOS0wMS0wMSB8IDIwMjAtMDEtMDEgfCAgICAgICAgICAg IHwgCisgWzEwMCwxMDEpIHwgMjAyMC0wMS0wMSB8IDIwMjEtMDEtMDEgfCBbNiw3KSAgICAgIHwg WzYsNykKKygzIHJvd3MpCisKKy0tIG5vbi1GUE8gZGVsZXRlOgorREVMRVRFIEZST00gdGVtcG9y YWxfcGVyMiBXSEVSRSBpZDEgPSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9mazJf cGVyMnBlciBXSEVSRSBpZCA9ICdbMTAwLDEwMF0nIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKyAg ICBpZCAgICAgfCB2YWxpZF9mcm9tIHwgdmFsaWRfdGlsICB8IHBhcmVudF9pZDEgfCBwYXJlbnRf aWQyIAorLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0r LS0tLS0tLS0tLS0tCisgWzEwMCwxMDEpIHwgMjAxOC0wMS0wMSB8IDIwMTktMDEtMDEgfCAgICAg ICAgICAgIHwgCisgWzEwMCwxMDEpIHwgMjAxOS0wMS0wMSB8IDIwMjAtMDEtMDEgfCAgICAgICAg ICAgIHwgCisgWzEwMCwxMDEpIHwgMjAyMC0wMS0wMSB8IDIwMjEtMDEtMDEgfCAgICAgICAgICAg IHwgCisoMyByb3dzKQorCistLSBGSyBhY3Jvc3MgdHdvIHJlZmVyZW5jZWQgcm93czoKK0lOU0VS VCBJTlRPIHRlbXBvcmFsX3BlcjIgKGlkMSwgaWQyLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZB TFVFUyAoJ1s4LDkpJywgJ1s4LDkpJywgJzIwMTgtMDEtMDEnLCAnMjAyMC0wMS0wMScpOworSU5T RVJUIElOVE8gdGVtcG9yYWxfcGVyMiAoaWQxLCBpZDIsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkg VkFMVUVTICgnWzgsOSknLCAnWzgsOSknLCAnMjAyMC0wMS0wMScsICcyMDIxLTAxLTAxJyk7CitJ TlNFUlQgSU5UTyB0ZW1wb3JhbF9mazJfcGVyMnBlciAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3Rp bCwgcGFyZW50X2lkMSwgcGFyZW50X2lkMikgVkFMVUVTICgnWzIwMCwyMDBdJywgJzIwMTgtMDEt MDEnLCAnMjAyMS0wMS0wMScsICdbOCw5KScsICdbOCw5KScpOworREVMRVRFIEZST00gdGVtcG9y YWxfcGVyMiBXSEVSRSBpZDEgPSAnWzgsOSknIEFORCB2YWxpZF9hdCBAPiAnMjAxOS0wMS0wMSc6 OmRhdGU7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9wZXIycGVyIFdIRVJFIGlkID0gJ1sy MDAsMjAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworICAgIGlkICAgICB8IHZhbGlkX2Zyb20g fCB2YWxpZF90aWwgIHwgcGFyZW50X2lkMSB8IHBhcmVudF9pZDIgCistLS0tLS0tLS0tLSstLS0t LS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0KKyBbMjAwLDIw MSkgfCAyMDE4LTAxLTAxIHwgMjAyMC0wMS0wMSB8ICAgICAgICAgICAgfCAKKyBbMjAwLDIwMSkg fCAyMDIwLTAxLTAxIHwgMjAyMS0wMS0wMSB8IFs4LDkpICAgICAgfCBbOCw5KQorKDIgcm93cykK KworLS0KKy0tIHRlc3QgRksgcmVmZXJlbmNlZCBkZWxldGVzIFNFVCBOVUxMICh0d28gc2NhbGFy IGNvbHMsIFNFVCBOVUxMIHN1YnNldCkKKy0tCitUUlVOQ0FURSB0ZW1wb3JhbF9wZXIyLCB0ZW1w b3JhbF9mazJfcGVyMnBlcjsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlcjIgKGlkMSwgaWQyLCB2 YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1s2LDcpJywgJ1s2LDcpJywgJzIwMTgtMDEt MDEnLCAnMjAyMS0wMS0wMScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmsyX3BlcjJwZXIgKGlk LCB2YWxpZF9mcm9tLCB2YWxpZF90aWwsIHBhcmVudF9pZDEsIHBhcmVudF9pZDIpIFZBTFVFUyAo J1sxMDAsMTAwXScsICcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnLCAnWzYsNyknLCAnWzYsNykn KTsKKy0tIGZhaWxzIGJlY2F1c2UgeW91IGNhbid0IHNldCB0aGUgUEVSSU9EIGNvbHVtbjoKK0FM VEVSIFRBQkxFIHRlbXBvcmFsX2ZrMl9wZXIycGVyCisgIERST1AgQ09OU1RSQUlOVCB0ZW1wb3Jh bF9mazJfcGVyMnBlcl9maywKKyAgQUREIENPTlNUUkFJTlQgdGVtcG9yYWxfZmsyX3BlcjJwZXJf ZmsKKyAgICBGT1JFSUdOIEtFWSAocGFyZW50X2lkMSwgcGFyZW50X2lkMiwgUEVSSU9EIHZhbGlk X2F0KQorICAgIFJFRkVSRU5DRVMgdGVtcG9yYWxfcGVyMgorICAgIE9OIERFTEVURSBTRVQgTlVM TCAodmFsaWRfYXQpIE9OIFVQREFURSBTRVQgTlVMTDsKK0VSUk9SOiAgY29sdW1uICJ2YWxpZF9h dCIgcmVmZXJlbmNlZCBpbiBPTiBERUxFVEUgU0VUIGFjdGlvbiBjYW5ub3QgYmUgUEVSSU9ECist LSBvazoKK0FMVEVSIFRBQkxFIHRlbXBvcmFsX2ZrMl9wZXIycGVyCisgIERST1AgQ09OU1RSQUlO VCB0ZW1wb3JhbF9mazJfcGVyMnBlcl9maywKKyAgQUREIENPTlNUUkFJTlQgdGVtcG9yYWxfZmsy X3BlcjJwZXJfZmsKKyAgICBGT1JFSUdOIEtFWSAocGFyZW50X2lkMSwgcGFyZW50X2lkMiwgUEVS SU9EIHZhbGlkX2F0KQorICAgIFJFRkVSRU5DRVMgdGVtcG9yYWxfcGVyMgorICAgIE9OIERFTEVU RSBTRVQgTlVMTCAocGFyZW50X2lkMSkgT04gVVBEQVRFIFNFVCBOVUxMOworLS0gbGVmdG92ZXJz IG9uIGJvdGggc2lkZXM6CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9wZXIyIEZPUiBQT1JUSU9OIE9G IHZhbGlkX2F0IEZST00gJzIwMTktMDEtMDEnIFRPICcyMDIwLTAxLTAxJyBXSEVSRSBpZDEgPSAn WzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9mazJfcGVyMnBlciBXSEVSRSBpZCA9ICdb MTAwLDEwMF0nIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKyAgICBpZCAgICAgfCB2YWxpZF9mcm9t IHwgdmFsaWRfdGlsICB8IHBhcmVudF9pZDEgfCBwYXJlbnRfaWQyIAorLS0tLS0tLS0tLS0rLS0t LS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tCisgWzEwMCwx MDEpIHwgMjAxOC0wMS0wMSB8IDIwMTktMDEtMDEgfCBbNiw3KSAgICAgIHwgWzYsNykKKyBbMTAw LDEwMSkgfCAyMDE5LTAxLTAxIHwgMjAyMC0wMS0wMSB8ICAgICAgICAgICAgfCBbNiw3KQorIFsx MDAsMTAxKSB8IDIwMjAtMDEtMDEgfCAyMDIxLTAxLTAxIHwgWzYsNykgICAgICB8IFs2LDcpCiso MyByb3dzKQorCistLSBub24tRlBPIGRlbGV0ZToKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3BlcjIg V0hFUkUgaWQxID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX3BlcjJwZXIg V0hFUkUgaWQgPSAnWzEwMCwxMDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisgICAgaWQgICAg IHwgdmFsaWRfZnJvbSB8IHZhbGlkX3RpbCAgfCBwYXJlbnRfaWQxIHwgcGFyZW50X2lkMiAKKy0t LS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0t LS0tLQorIFsxMDAsMTAxKSB8IDIwMTgtMDEtMDEgfCAyMDE5LTAxLTAxIHwgICAgICAgICAgICB8 IFs2LDcpCisgWzEwMCwxMDEpIHwgMjAxOS0wMS0wMSB8IDIwMjAtMDEtMDEgfCAgICAgICAgICAg IHwgWzYsNykKKyBbMTAwLDEwMSkgfCAyMDIwLTAxLTAxIHwgMjAyMS0wMS0wMSB8ICAgICAgICAg ICAgfCBbNiw3KQorKDMgcm93cykKKworLS0gRksgYWNyb3NzIHR3byByZWZlcmVuY2VkIHJvd3M6 CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIyIChpZDEsIGlkMiwgdmFsaWRfZnJvbSwgdmFsaWRf dGlsKSBWQUxVRVMgKCdbOCw5KScsICdbOCw5KScsICcyMDE4LTAxLTAxJywgJzIwMjAtMDEtMDEn KTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlcjIgKGlkMSwgaWQyLCB2YWxpZF9mcm9tLCB2YWxp ZF90aWwpIFZBTFVFUyAoJ1s4LDkpJywgJ1s4LDkpJywgJzIwMjAtMDEtMDEnLCAnMjAyMS0wMS0w MScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmsyX3BlcjJwZXIgKGlkLCB2YWxpZF9mcm9tLCB2 YWxpZF90aWwsIHBhcmVudF9pZDEsIHBhcmVudF9pZDIpIFZBTFVFUyAoJ1syMDAsMjAwXScsICcy MDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnLCAnWzgsOSknLCAnWzgsOSknKTsKK0RFTEVURSBGUk9N IHRlbXBvcmFsX3BlcjIgV0hFUkUgaWQxID0gJ1s4LDkpJyBBTkQgdmFsaWRfYXQgQD4gJzIwMTkt MDEtMDEnOjpkYXRlOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9mazJfcGVyMnBlciBXSEVSRSBp ZCA9ICdbMjAwLDIwMF0nIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKyAgICBpZCAgICAgfCB2YWxp ZF9mcm9tIHwgdmFsaWRfdGlsICB8IHBhcmVudF9pZDEgfCBwYXJlbnRfaWQyIAorLS0tLS0tLS0t LS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tCisg WzIwMCwyMDEpIHwgMjAxOC0wMS0wMSB8IDIwMjAtMDEtMDEgfCAgICAgICAgICAgIHwgWzgsOSkK KyBbMjAwLDIwMSkgfCAyMDIwLTAxLTAxIHwgMjAyMS0wMS0wMSB8IFs4LDkpICAgICAgfCBbOCw5 KQorKDIgcm93cykKKworLS0KKy0tIHRlc3QgRksgcmVmZXJlbmNlZCB1cGRhdGVzIFNFVCBERUZB VUxUICh0d28gc2NhbGFyIGNvbHMpCistLQorVFJVTkNBVEUgdGVtcG9yYWxfcGVyMiwgdGVtcG9y YWxfZmsyX3BlcjJwZXI7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIyIChpZDEsIGlkMiwgdmFs aWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbLTEsLTFdJywgJ1stMSwtMV0nLCBudWxsLCBu dWxsKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlcjIgKGlkMSwgaWQyLCB2YWxpZF9mcm9tLCB2 YWxpZF90aWwpIFZBTFVFUyAoJ1s2LDcpJywgJ1s2LDcpJywgJzIwMTgtMDEtMDEnLCAnMjAyMS0w MS0wMScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmsyX3BlcjJwZXIgKGlkLCB2YWxpZF9mcm9t LCB2YWxpZF90aWwsIHBhcmVudF9pZDEsIHBhcmVudF9pZDIpIFZBTFVFUyAoJ1sxMDAsMTAwXScs ICcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnLCAnWzYsNyknLCAnWzYsNyknKTsKK0FMVEVSIFRB QkxFIHRlbXBvcmFsX2ZrMl9wZXIycGVyCisgIEFMVEVSIENPTFVNTiBwYXJlbnRfaWQxIFNFVCBE RUZBVUxUICdbLTEsLTFdJywKKyAgQUxURVIgQ09MVU1OIHBhcmVudF9pZDIgU0VUIERFRkFVTFQg J1stMSwtMV0nLAorICBEUk9QIENPTlNUUkFJTlQgdGVtcG9yYWxfZmsyX3BlcjJwZXJfZmssCisg IEFERCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrMl9wZXIycGVyX2ZrCisgICAgRk9SRUlHTiBLRVkg KHBhcmVudF9pZDEsIHBhcmVudF9pZDIsIFBFUklPRCB2YWxpZF9hdCkKKyAgICBSRUZFUkVOQ0VT IHRlbXBvcmFsX3BlcjIKKyAgICBPTiBERUxFVEUgU0VUIERFRkFVTFQgT04gVVBEQVRFIFNFVCBE RUZBVUxUOworLS0gbGVmdG92ZXJzIG9uIGJvdGggc2lkZXM6CitVUERBVEUgdGVtcG9yYWxfcGVy MiBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDE5LTAxLTAxJyBUTyAnMjAyMC0wMS0w MScgU0VUIGlkMSA9ICdbNyw4KScsIGlkMiA9ICdbNyw4KScgV0hFUkUgaWQxID0gJ1s2LDcpJzsK K1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX3BlcjJwZXIgV0hFUkUgaWQgPSAnWzEwMCwxMDBd JyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisgICAgaWQgICAgIHwgdmFsaWRfZnJvbSB8IHZhbGlk X3RpbCAgfCBwYXJlbnRfaWQxIHwgcGFyZW50X2lkMiAKKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0t LSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLQorIFsxMDAsMTAxKSB8IDIw MTgtMDEtMDEgfCAyMDE5LTAxLTAxIHwgWzYsNykgICAgICB8IFs2LDcpCisgWzEwMCwxMDEpIHwg MjAxOS0wMS0wMSB8IDIwMjAtMDEtMDEgfCBbLTEsMCkgICAgIHwgWy0xLDApCisgWzEwMCwxMDEp IHwgMjAyMC0wMS0wMSB8IDIwMjEtMDEtMDEgfCBbNiw3KSAgICAgIHwgWzYsNykKKygzIHJvd3Mp CisKKy0tIG5vbi1GUE8gdXBkYXRlOgorVVBEQVRFIHRlbXBvcmFsX3BlcjIgU0VUIGlkMSA9ICdb Nyw4KScsIGlkMiA9ICdbNyw4KScgV0hFUkUgaWQxID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00g dGVtcG9yYWxfZmsyX3BlcjJwZXIgV0hFUkUgaWQgPSAnWzEwMCwxMDBdJyBPUkRFUiBCWSBpZCwg dmFsaWRfYXQ7CisgICAgaWQgICAgIHwgdmFsaWRfZnJvbSB8IHZhbGlkX3RpbCAgfCBwYXJlbnRf aWQxIHwgcGFyZW50X2lkMiAKKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0r LS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLQorIFsxMDAsMTAxKSB8IDIwMTgtMDEtMDEgfCAyMDE5 LTAxLTAxIHwgWy0xLDApICAgICB8IFstMSwwKQorIFsxMDAsMTAxKSB8IDIwMTktMDEtMDEgfCAy MDIwLTAxLTAxIHwgWy0xLDApICAgICB8IFstMSwwKQorIFsxMDAsMTAxKSB8IDIwMjAtMDEtMDEg fCAyMDIxLTAxLTAxIHwgWy0xLDApICAgICB8IFstMSwwKQorKDMgcm93cykKKworLS0gRksgYWNy b3NzIHR3byByZWZlcmVuY2VkIHJvd3M6CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIyIChpZDEs IGlkMiwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbOCw5KScsICdbOCw5KScsICcy MDE4LTAxLTAxJywgJzIwMjAtMDEtMDEnKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlcjIgKGlk MSwgaWQyLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1s4LDkpJywgJ1s4LDkpJywg JzIwMjAtMDEtMDEnLCAnMjAyMS0wMS0wMScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmsyX3Bl cjJwZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwsIHBhcmVudF9pZDEsIHBhcmVudF9pZDIp IFZBTFVFUyAoJ1syMDAsMjAwXScsICcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnLCAnWzgsOSkn LCAnWzgsOSknKTsKK1VQREFURSB0ZW1wb3JhbF9wZXIyIFNFVCBpZDEgPSAnWzksMTApJywgaWQy ID0gJ1s5LDEwKScgV0hFUkUgaWQxID0gJ1s4LDkpJyBBTkQgdmFsaWRfYXQgQD4gJzIwMTktMDEt MDEnOjpkYXRlOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9mazJfcGVyMnBlciBXSEVSRSBpZCA9 ICdbMjAwLDIwMF0nIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKyAgICBpZCAgICAgfCB2YWxpZF9m cm9tIHwgdmFsaWRfdGlsICB8IHBhcmVudF9pZDEgfCBwYXJlbnRfaWQyIAorLS0tLS0tLS0tLS0r LS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tCisgWzIw MCwyMDEpIHwgMjAxOC0wMS0wMSB8IDIwMjAtMDEtMDEgfCBbLTEsMCkgICAgIHwgWy0xLDApCisg WzIwMCwyMDEpIHwgMjAyMC0wMS0wMSB8IDIwMjEtMDEtMDEgfCBbOCw5KSAgICAgIHwgWzgsOSkK KygyIHJvd3MpCisKKy0tCistLSB0ZXN0IEZLIHJlZmVyZW5jZWQgZGVsZXRlcyBTRVQgREVGQVVM VCAodHdvIHNjYWxhciBjb2xzKQorLS0KK1RSVU5DQVRFIHRlbXBvcmFsX3BlcjIsIHRlbXBvcmFs X2ZrMl9wZXIycGVyOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyMiAoaWQxLCBpZDIsIHZhbGlk X2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWy0xLC0xXScsICdbLTEsLTFdJywgbnVsbCwgbnVs bCk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIyIChpZDEsIGlkMiwgdmFsaWRfZnJvbSwgdmFs aWRfdGlsKSBWQUxVRVMgKCdbNiw3KScsICdbNiw3KScsICcyMDE4LTAxLTAxJywgJzIwMjEtMDEt MDEnKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrMl9wZXIycGVyIChpZCwgdmFsaWRfZnJvbSwg dmFsaWRfdGlsLCBwYXJlbnRfaWQxLCBwYXJlbnRfaWQyKSBWQUxVRVMgKCdbMTAwLDEwMF0nLCAn MjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJywgJ1s2LDcpJywgJ1s2LDcpJyk7CistLSBsZWZ0b3Zl cnMgb24gYm90aCBzaWRlczoKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3BlcjIgRk9SIFBPUlRJT04g T0YgdmFsaWRfYXQgRlJPTSAnMjAxOS0wMS0wMScgVE8gJzIwMjAtMDEtMDEnIFdIRVJFIGlkMSA9 ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9wZXIycGVyIFdIRVJFIGlkID0g J1sxMDAsMTAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworICAgIGlkICAgICB8IHZhbGlkX2Zy b20gfCB2YWxpZF90aWwgIHwgcGFyZW50X2lkMSB8IHBhcmVudF9pZDIgCistLS0tLS0tLS0tLSst LS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0KKyBbMTAw LDEwMSkgfCAyMDE4LTAxLTAxIHwgMjAxOS0wMS0wMSB8IFs2LDcpICAgICAgfCBbNiw3KQorIFsx MDAsMTAxKSB8IDIwMTktMDEtMDEgfCAyMDIwLTAxLTAxIHwgWy0xLDApICAgICB8IFstMSwwKQor IFsxMDAsMTAxKSB8IDIwMjAtMDEtMDEgfCAyMDIxLTAxLTAxIHwgWzYsNykgICAgICB8IFs2LDcp CisoMyByb3dzKQorCistLSBub24tRlBPIHVwZGF0ZToKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3Bl cjIgV0hFUkUgaWQxID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX3BlcjJw ZXIgV0hFUkUgaWQgPSAnWzEwMCwxMDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisgICAgaWQg ICAgIHwgdmFsaWRfZnJvbSB8IHZhbGlkX3RpbCAgfCBwYXJlbnRfaWQxIHwgcGFyZW50X2lkMiAK Ky0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0t LS0tLS0tLQorIFsxMDAsMTAxKSB8IDIwMTgtMDEtMDEgfCAyMDE5LTAxLTAxIHwgWy0xLDApICAg ICB8IFstMSwwKQorIFsxMDAsMTAxKSB8IDIwMTktMDEtMDEgfCAyMDIwLTAxLTAxIHwgWy0xLDAp ICAgICB8IFstMSwwKQorIFsxMDAsMTAxKSB8IDIwMjAtMDEtMDEgfCAyMDIxLTAxLTAxIHwgWy0x LDApICAgICB8IFstMSwwKQorKDMgcm93cykKKworLS0gRksgYWNyb3NzIHR3byByZWZlcmVuY2Vk IHJvd3M6CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIyIChpZDEsIGlkMiwgdmFsaWRfZnJvbSwg dmFsaWRfdGlsKSBWQUxVRVMgKCdbOCw5KScsICdbOCw5KScsICcyMDE4LTAxLTAxJywgJzIwMjAt MDEtMDEnKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlcjIgKGlkMSwgaWQyLCB2YWxpZF9mcm9t LCB2YWxpZF90aWwpIFZBTFVFUyAoJ1s4LDkpJywgJ1s4LDkpJywgJzIwMjAtMDEtMDEnLCAnMjAy MS0wMS0wMScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmsyX3BlcjJwZXIgKGlkLCB2YWxpZF9m cm9tLCB2YWxpZF90aWwsIHBhcmVudF9pZDEsIHBhcmVudF9pZDIpIFZBTFVFUyAoJ1syMDAsMjAw XScsICcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnLCAnWzgsOSknLCAnWzgsOSknKTsKK0RFTEVU RSBGUk9NIHRlbXBvcmFsX3BlcjIgV0hFUkUgaWQxID0gJ1s4LDkpJyBBTkQgdmFsaWRfYXQgQD4g JzIwMTktMDEtMDEnOjpkYXRlOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9mazJfcGVyMnBlciBX SEVSRSBpZCA9ICdbMjAwLDIwMF0nIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKyAgICBpZCAgICAg fCB2YWxpZF9mcm9tIHwgdmFsaWRfdGlsICB8IHBhcmVudF9pZDEgfCBwYXJlbnRfaWQyIAorLS0t LS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0t LS0tCisgWzIwMCwyMDEpIHwgMjAxOC0wMS0wMSB8IDIwMjAtMDEtMDEgfCBbLTEsMCkgICAgIHwg Wy0xLDApCisgWzIwMCwyMDEpIHwgMjAyMC0wMS0wMSB8IDIwMjEtMDEtMDEgfCBbOCw5KSAgICAg IHwgWzgsOSkKKygyIHJvd3MpCisKKy0tCistLSB0ZXN0IEZLIHJlZmVyZW5jZWQgZGVsZXRlcyBT RVQgREVGQVVMVCAodHdvIHNjYWxhciBjb2xzLCBTRVQgREVGQVVMVCBzdWJzZXQpCistLQorVFJV TkNBVEUgdGVtcG9yYWxfcGVyMiwgdGVtcG9yYWxfZmsyX3BlcjJwZXI7CitJTlNFUlQgSU5UTyB0 ZW1wb3JhbF9wZXIyIChpZDEsIGlkMiwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdb LTEsLTFdJywgJ1s2LDcpJywgbnVsbCwgbnVsbCk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIy IChpZDEsIGlkMiwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbNiw3KScsICdbNiw3 KScsICcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2Zr Ml9wZXIycGVyIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsLCBwYXJlbnRfaWQxLCBwYXJlbnRf aWQyKSBWQUxVRVMgKCdbMTAwLDEwMF0nLCAnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJywgJ1s2 LDcpJywgJ1s2LDcpJyk7CistLSBmYWlscyBiZWNhdXNlIHlvdSBjYW4ndCBzZXQgdGhlIFBFUklP RCBjb2x1bW46CitBTFRFUiBUQUJMRSB0ZW1wb3JhbF9mazJfcGVyMnBlcgorICBBTFRFUiBDT0xV TU4gcGFyZW50X2lkMSBTRVQgREVGQVVMVCAnWy0xLC0xXScsCisgIERST1AgQ09OU1RSQUlOVCB0 ZW1wb3JhbF9mazJfcGVyMnBlcl9maywKKyAgQUREIENPTlNUUkFJTlQgdGVtcG9yYWxfZmsyX3Bl cjJwZXJfZmsKKyAgICBGT1JFSUdOIEtFWSAocGFyZW50X2lkMSwgcGFyZW50X2lkMiwgUEVSSU9E IHZhbGlkX2F0KQorICAgIFJFRkVSRU5DRVMgdGVtcG9yYWxfcGVyMgorICAgIE9OIERFTEVURSBT RVQgREVGQVVMVCAodmFsaWRfYXQpIE9OIFVQREFURSBTRVQgREVGQVVMVDsKK0VSUk9SOiAgY29s dW1uICJ2YWxpZF9hdCIgcmVmZXJlbmNlZCBpbiBPTiBERUxFVEUgU0VUIGFjdGlvbiBjYW5ub3Qg YmUgUEVSSU9ECistLSBvazoKK0FMVEVSIFRBQkxFIHRlbXBvcmFsX2ZrMl9wZXIycGVyCisgIEFM VEVSIENPTFVNTiBwYXJlbnRfaWQxIFNFVCBERUZBVUxUICdbLTEsLTFdJywKKyAgRFJPUCBDT05T VFJBSU5UIHRlbXBvcmFsX2ZrMl9wZXIycGVyX2ZrLAorICBBREQgQ09OU1RSQUlOVCB0ZW1wb3Jh bF9mazJfcGVyMnBlcl9maworICAgIEZPUkVJR04gS0VZIChwYXJlbnRfaWQxLCBwYXJlbnRfaWQy LCBQRVJJT0QgdmFsaWRfYXQpCisgICAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9wZXIyCisgICAgT04g REVMRVRFIFNFVCBERUZBVUxUIChwYXJlbnRfaWQxKSBPTiBVUERBVEUgU0VUIERFRkFVTFQ7Cist LSBsZWZ0b3ZlcnMgb24gYm90aCBzaWRlczoKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3BlcjIgRk9S IFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAxOS0wMS0wMScgVE8gJzIwMjAtMDEtMDEnIFdI RVJFIGlkMSA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9wZXIycGVyIFdI RVJFIGlkID0gJ1sxMDAsMTAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworICAgIGlkICAgICB8 IHZhbGlkX2Zyb20gfCB2YWxpZF90aWwgIHwgcGFyZW50X2lkMSB8IHBhcmVudF9pZDIgCistLS0t LS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0t LS0KKyBbMTAwLDEwMSkgfCAyMDE4LTAxLTAxIHwgMjAxOS0wMS0wMSB8IFs2LDcpICAgICAgfCBb Niw3KQorIFsxMDAsMTAxKSB8IDIwMTktMDEtMDEgfCAyMDIwLTAxLTAxIHwgWy0xLDApICAgICB8 IFs2LDcpCisgWzEwMCwxMDEpIHwgMjAyMC0wMS0wMSB8IDIwMjEtMDEtMDEgfCBbNiw3KSAgICAg IHwgWzYsNykKKygzIHJvd3MpCisKKy0tIG5vbi1GUE8gdXBkYXRlOgorREVMRVRFIEZST00gdGVt cG9yYWxfcGVyMiBXSEVSRSBpZDEgPSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9m azJfcGVyMnBlciBXSEVSRSBpZCA9ICdbMTAwLDEwMF0nIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsK KyAgICBpZCAgICAgfCB2YWxpZF9mcm9tIHwgdmFsaWRfdGlsICB8IHBhcmVudF9pZDEgfCBwYXJl bnRfaWQyIAorLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0t LS0rLS0tLS0tLS0tLS0tCisgWzEwMCwxMDEpIHwgMjAxOC0wMS0wMSB8IDIwMTktMDEtMDEgfCBb LTEsMCkgICAgIHwgWzYsNykKKyBbMTAwLDEwMSkgfCAyMDE5LTAxLTAxIHwgMjAyMC0wMS0wMSB8 IFstMSwwKSAgICAgfCBbNiw3KQorIFsxMDAsMTAxKSB8IDIwMjAtMDEtMDEgfCAyMDIxLTAxLTAx IHwgWy0xLDApICAgICB8IFs2LDcpCisoMyByb3dzKQorCistLSBGSyBhY3Jvc3MgdHdvIHJlZmVy ZW5jZWQgcm93czoKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlcjIgKGlkMSwgaWQyLCB2YWxpZF9m cm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1s4LDkpJywgJ1s4LDkpJywgJzIwMTgtMDEtMDEnLCAn MjAyMC0wMS0wMScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyMiAoaWQxLCBpZDIsIHZhbGlk X2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzgsOSknLCAnWzgsOSknLCAnMjAyMC0wMS0wMScs ICcyMDIxLTAxLTAxJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIyIChpZDEsIGlkMiwgdmFs aWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbLTEsLTFdJywgJ1s4LDkpJywgbnVsbCwgbnVs bCk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9mazJfcGVyMnBlciAoaWQsIHZhbGlkX2Zyb20sIHZh bGlkX3RpbCwgcGFyZW50X2lkMSwgcGFyZW50X2lkMikgVkFMVUVTICgnWzIwMCwyMDBdJywgJzIw MTgtMDEtMDEnLCAnMjAyMS0wMS0wMScsICdbOCw5KScsICdbOCw5KScpOworREVMRVRFIEZST00g dGVtcG9yYWxfcGVyMiBXSEVSRSBpZDEgPSAnWzgsOSknIEFORCB2YWxpZF9hdCBAPiAnMjAxOS0w MS0wMSc6OmRhdGU7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9wZXIycGVyIFdIRVJFIGlk ID0gJ1syMDAsMjAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworICAgIGlkICAgICB8IHZhbGlk X2Zyb20gfCB2YWxpZF90aWwgIHwgcGFyZW50X2lkMSB8IHBhcmVudF9pZDIgCistLS0tLS0tLS0t LSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0KKyBb MjAwLDIwMSkgfCAyMDE4LTAxLTAxIHwgMjAyMC0wMS0wMSB8IFstMSwwKSAgICAgfCBbOCw5KQor IFsyMDAsMjAxKSB8IDIwMjAtMDEtMDEgfCAyMDIxLTAxLTAxIHwgWzgsOSkgICAgICB8IFs4LDkp CisoMiByb3dzKQorCistLQorLS0gdGVzdCBGT1JFSUdOIEtFWSwgcmFuZ2UgcmVmZXJlbmNlcyBQ RVJJT0QKKy0tCistLSB0ZXN0IHRhYmxlIHNldHVwCitEUk9QIFRBQkxFIHRlbXBvcmFsX3BlciBD QVNDQURFOworTk9USUNFOiAgZHJvcCBjYXNjYWRlcyB0byBjb25zdHJhaW50IHRlbXBvcmFsX2Zr X3BlcjJwZXJfZmsgb24gdGFibGUgdGVtcG9yYWxfZmtfcGVyMnBlcgorQ1JFQVRFIFRBQkxFIHRl bXBvcmFsX3BlciAoCisgIGlkIGludDRyYW5nZSwKKyAgdmFsaWRfZnJvbSBkYXRlLAorICB2YWxp ZF90aWwgZGF0ZSwKKyAgUEVSSU9EIEZPUiB2YWxpZF9hdCAodmFsaWRfZnJvbSwgdmFsaWRfdGls KQorKTsKK0FMVEVSIFRBQkxFIHRlbXBvcmFsX3BlcgorICBBREQgQ09OU1RSQUlOVCB0ZW1wb3Jh bF9wZXJfcGsKKyAgUFJJTUFSWSBLRVkgKGlkLCB2YWxpZF9hdCBXSVRIT1VUIE9WRVJMQVBTKTsK Ky0tIENhbid0IGNyZWF0ZSBhIEZLIHdpdGggYSBtaXNtYXRjaGVkIHJhbmdlIHR5cGUKK0NSRUFU RSBUQUJMRSB0ZW1wb3JhbF9ma19ybmcycGVyICgKKyAgaWQgaW50NHJhbmdlLAorICB2YWxpZF9h dCBpbnQ0cmFuZ2UsCisgIHBhcmVudF9pZCBpbnQ0cmFuZ2UsCisgIENPTlNUUkFJTlQgdGVtcG9y YWxfZmtfcm5nMnBlcl9wayBQUklNQVJZIEtFWSAoaWQsIHZhbGlkX2F0IFdJVEhPVVQgT1ZFUkxB UFMpLAorICBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3JuZzJwZXJfZmsgRk9SRUlHTiBLRVkgKHBh cmVudF9pZCwgUEVSSU9EIHZhbGlkX2F0KQorICAgIFJFRkVSRU5DRVMgdGVtcG9yYWxfcGVyIChp ZCwgUEVSSU9EIHZhbGlkX2F0KQorKTsKK0VSUk9SOiAgZm9yZWlnbiBrZXkgY29uc3RyYWludCAi dGVtcG9yYWxfZmtfcm5nMnBlcl9mayIgY2Fubm90IGJlIGltcGxlbWVudGVkCitERVRBSUw6ICBL ZXkgY29sdW1ucyAidmFsaWRfYXQiIG9mIHRoZSByZWZlcmVuY2luZyB0YWJsZSBhbmQgInZhbGlk X2F0IiBvZiB0aGUgcmVmZXJlbmNlZCB0YWJsZSBhcmUgb2YgaW5jb21wYXRpYmxlIHR5cGVzOiBp bnQ0cmFuZ2UgYW5kIGRhdGVyYW5nZS4KKy0tIHdvcmtzOiBQRVJJT0QgZm9yIHJlZmVyZW5jZWQs IHJhbmdlIGZvciByZWZlcmVuY2luZworQ1JFQVRFIFRBQkxFIHRlbXBvcmFsX2ZrX3JuZzJwZXIg KAorICBpZCBpbnQ0cmFuZ2UsCisgIHZhbGlkX2F0IGRhdGVyYW5nZSwKKyAgcGFyZW50X2lkIGlu dDRyYW5nZSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19ybmcycGVyX3BrIFBSSU1BUlkgS0VZ IChpZCwgdmFsaWRfYXQgV0lUSE9VVCBPVkVSTEFQUyksCisgIENPTlNUUkFJTlQgdGVtcG9yYWxf Zmtfcm5nMnBlcl9mayBGT1JFSUdOIEtFWSAocGFyZW50X2lkLCBQRVJJT0QgdmFsaWRfYXQpCisg ICAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9wZXIgKGlkLCBQRVJJT0QgdmFsaWRfYXQpCispOworXGQg dGVtcG9yYWxfZmtfcm5nMnBlcgorICAgICAgICAgICBUYWJsZSAicHVibGljLnRlbXBvcmFsX2Zr X3JuZzJwZXIiCisgIENvbHVtbiAgIHwgICBUeXBlICAgIHwgQ29sbGF0aW9uIHwgTnVsbGFibGUg fCBEZWZhdWx0IAorLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0rLS0tLS0tLS0t LSstLS0tLS0tLS0KKyBpZCAgICAgICAgfCBpbnQ0cmFuZ2UgfCAgICAgICAgICAgfCBub3QgbnVs bCB8IAorIHZhbGlkX2F0ICB8IGRhdGVyYW5nZSB8ICAgICAgICAgICB8IG5vdCBudWxsIHwgCisg cGFyZW50X2lkIHwgaW50NHJhbmdlIHwgICAgICAgICAgIHwgICAgICAgICAgfCAKK0luZGV4ZXM6 CisgICAgInRlbXBvcmFsX2ZrX3JuZzJwZXJfcGsiIFBSSU1BUlkgS0VZIChpZCwgdmFsaWRfYXQg V0lUSE9VVCBPVkVSTEFQUykKK0ZvcmVpZ24ta2V5IGNvbnN0cmFpbnRzOgorICAgICJ0ZW1wb3Jh bF9ma19ybmcycGVyX2ZrIiBGT1JFSUdOIEtFWSAocGFyZW50X2lkLCBQRVJJT0QgdmFsaWRfYXQp IFJFRkVSRU5DRVMgdGVtcG9yYWxfcGVyKGlkLCBQRVJJT0QgdmFsaWRfYXQpCisKK0RST1AgVEFC TEUgdGVtcG9yYWxfZmtfcm5nMnBlcjsKKy0tIHdpdGggbWlzbWF0Y2hlZCBQRVJJT0QgY29sdW1u czoKKy0tIChwYXJlbnRfaWQsIFBFUklPRCB2YWxpZF9hdCkgUkVGRVJFTkNFUyAoaWQsIHZhbGlk X2F0KQorLS0gUkVGRVJFTkNFUyBwYXJ0IHNob3VsZCBzcGVjaWZ5IFBFUklPRAorQ1JFQVRFIFRB QkxFIHRlbXBvcmFsX2ZrX3JuZzJwZXIgKAorICBpZCBpbnQ0cmFuZ2UsCisgIHZhbGlkX2F0IGRh dGVyYW5nZSwKKyAgcGFyZW50X2lkIGludDRyYW5nZSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9m a19ybmcycGVyX3BrIFBSSU1BUlkgS0VZIChpZCwgdmFsaWRfYXQgV0lUSE9VVCBPVkVSTEFQUyks CisgIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcm5nMnBlcl9mayBGT1JFSUdOIEtFWSAocGFyZW50 X2lkLCBQRVJJT0QgdmFsaWRfYXQpCisgICAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9wZXIgKGlkLCB2 YWxpZF9hdCkKKyk7CitFUlJPUjogIGZvcmVpZ24ga2V5IHVzZXMgUEVSSU9EIG9uIHRoZSByZWZl cmVuY2luZyB0YWJsZSBidXQgbm90IHRoZSByZWZlcmVuY2VkIHRhYmxlCistLSAocGFyZW50X2lk LCB2YWxpZF9hdCkgUkVGRVJFTkNFUyAoaWQsIHZhbGlkX2F0KQorLS0gYm90aCBzaG91bGQgc3Bl Y2lmeSBQRVJJT0Q6CitDUkVBVEUgVEFCTEUgdGVtcG9yYWxfZmtfcm5nMnBlciAoCisgIGlkIGlu dDRyYW5nZSwKKyAgdmFsaWRfYXQgZGF0ZXJhbmdlLAorICBwYXJlbnRfaWQgaW50NHJhbmdlLAor ICBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3JuZzJwZXJfcGsgUFJJTUFSWSBLRVkgKGlkLCB2YWxp ZF9hdCBXSVRIT1VUIE9WRVJMQVBTKSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19ybmcycGVy X2ZrIEZPUkVJR04gS0VZIChwYXJlbnRfaWQsIHZhbGlkX2F0KQorICAgIFJFRkVSRU5DRVMgdGVt cG9yYWxfcGVyIChpZCwgdmFsaWRfYXQpCispOworRVJST1I6ICBmb3JlaWduIGtleSBtdXN0IHVz ZSBQRVJJT0Qgd2hlbiByZWZlcmVuY2luZyBhIHByaW1hcnkga2V5IHVzaW5nIFdJVEhPVVQgT1ZF UkxBUFMKKy0tIChwYXJlbnRfaWQsIHZhbGlkX2F0KSBSRUZFUkVOQ0VTIChpZCwgUEVSSU9EIHZh bGlkX2F0KQorLS0gRk9SRUlHTiBLRVkgcGFydCBzaG91bGQgc3BlY2lmeSBQRVJJT0QKK0NSRUFU RSBUQUJMRSB0ZW1wb3JhbF9ma19ybmcycGVyICgKKyAgaWQgaW50NHJhbmdlLAorICB2YWxpZF9h dCBkYXRlcmFuZ2UsCisgIHBhcmVudF9pZCBpbnQ0cmFuZ2UsCisgIENPTlNUUkFJTlQgdGVtcG9y YWxfZmtfcm5nMnBlcl9wayBQUklNQVJZIEtFWSAoaWQsIHZhbGlkX2F0IFdJVEhPVVQgT1ZFUkxB UFMpLAorICBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3JuZzJwZXJfZmsgRk9SRUlHTiBLRVkgKHBh cmVudF9pZCwgdmFsaWRfYXQpCisgICAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9wZXIgKGlkLCBQRVJJ T0QgdmFsaWRfYXQpCispOworRVJST1I6ICBmb3JlaWduIGtleSB1c2VzIFBFUklPRCBvbiB0aGUg cmVmZXJlbmNlZCB0YWJsZSBidXQgbm90IHRoZSByZWZlcmVuY2luZyB0YWJsZQorLS0gKHBhcmVu dF9pZCwgdmFsaWRfYXQpIFJFRkVSRU5DRVMgW2ltcGxpY2l0XQorLS0gRk9SRUlHTiBLRVkgcGFy dCBzaG91bGQgc3BlY2lmeSBQRVJJT0QKK0NSRUFURSBUQUJMRSB0ZW1wb3JhbF9ma19ybmcycGVy ICgKKyAgaWQgaW50NHJhbmdlLAorICB2YWxpZF9hdCBkYXRlcmFuZ2UsCisgIHBhcmVudF9pZCBp bnQ0cmFuZ2UsCisgIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcm5nMnBlcl9wayBQUklNQVJZIEtF WSAoaWQsIHZhbGlkX2F0IFdJVEhPVVQgT1ZFUkxBUFMpLAorICBDT05TVFJBSU5UIHRlbXBvcmFs X2ZrX3JuZzJwZXJfZmsgRk9SRUlHTiBLRVkgKHBhcmVudF9pZCwgdmFsaWRfYXQpCisgICAgUkVG RVJFTkNFUyB0ZW1wb3JhbF9wZXIKKyk7CitFUlJPUjogIGZvcmVpZ24ga2V5IHVzZXMgUEVSSU9E IG9uIHRoZSByZWZlcmVuY2VkIHRhYmxlIGJ1dCBub3QgdGhlIHJlZmVyZW5jaW5nIHRhYmxlCist LSAocGFyZW50X2lkLCBQRVJJT0QgdmFsaWRfYXQpIFJFRkVSRU5DRVMgKGlkKQorQ1JFQVRFIFRB QkxFIHRlbXBvcmFsX2ZrX3JuZzJwZXIgKAorICBpZCBpbnQ0cmFuZ2UsCisgIHZhbGlkX2F0IGRh dGVyYW5nZSwKKyAgcGFyZW50X2lkIGludDRyYW5nZSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9m a19ybmcycGVyX3BrIFBSSU1BUlkgS0VZIChpZCwgdmFsaWRfYXQgV0lUSE9VVCBPVkVSTEFQUyks CisgIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcm5nMnBlcl9mayBGT1JFSUdOIEtFWSAocGFyZW50 X2lkLCBQRVJJT0QgdmFsaWRfYXQpCisgICAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9wZXIgKGlkKQor KTsKK0VSUk9SOiAgZm9yZWlnbiBrZXkgdXNlcyBQRVJJT0Qgb24gdGhlIHJlZmVyZW5jaW5nIHRh YmxlIGJ1dCBub3QgdGhlIHJlZmVyZW5jZWQgdGFibGUKKy0tIChwYXJlbnRfaWQpIFJFRkVSRU5D RVMgKGlkLCBQRVJJT0QgdmFsaWRfYXQpCitDUkVBVEUgVEFCTEUgdGVtcG9yYWxfZmtfcm5nMnBl ciAoCisgIGlkIGludDRyYW5nZSwKKyAgdmFsaWRfYXQgZGF0ZXJhbmdlLAorICBwYXJlbnRfaWQg aW50NHJhbmdlLAorICBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3JuZzJwZXJfcGsgUFJJTUFSWSBL RVkgKGlkLCB2YWxpZF9hdCBXSVRIT1VUIE9WRVJMQVBTKSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3Jh bF9ma19ybmcycGVyX2ZrIEZPUkVJR04gS0VZIChwYXJlbnRfaWQpCisgICAgUkVGRVJFTkNFUyB0 ZW1wb3JhbF9wZXIgKGlkLCBQRVJJT0QgdmFsaWRfYXQpCispOworRVJST1I6ICBmb3JlaWduIGtl eSB1c2VzIFBFUklPRCBvbiB0aGUgcmVmZXJlbmNlZCB0YWJsZSBidXQgbm90IHRoZSByZWZlcmVu Y2luZyB0YWJsZQorLS0gd2l0aCBpbmZlcnJlZCBQSyBvbiB0aGUgcmVmZXJlbmNlZCB0YWJsZToK Ky0tIChwYXJlbnRfaWQsIFBFUklPRCB2YWxpZF9hdCkgUkVGRVJFTkNFUyBbaW1wbGljaXRdCitD UkVBVEUgVEFCTEUgdGVtcG9yYWxfZmtfcm5nMnBlciAoCisgIGlkIGludDRyYW5nZSwKKyAgdmFs aWRfYXQgZGF0ZXJhbmdlLAorICBwYXJlbnRfaWQgaW50NHJhbmdlLAorICBDT05TVFJBSU5UIHRl bXBvcmFsX2ZrX3JuZzJwZXJfcGsgUFJJTUFSWSBLRVkgKGlkLCB2YWxpZF9hdCBXSVRIT1VUIE9W RVJMQVBTKSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19ybmcycGVyX2ZrIEZPUkVJR04gS0VZ IChwYXJlbnRfaWQsIFBFUklPRCB2YWxpZF9hdCkKKyAgICBSRUZFUkVOQ0VTIHRlbXBvcmFsX3Bl cgorKTsKK0RST1AgVEFCTEUgdGVtcG9yYWxfZmtfcm5nMnBlcjsKKy0tIChwYXJlbnRfaWQpIFJF RkVSRU5DRVMgW2ltcGxpY2l0XQorQ1JFQVRFIFRBQkxFIHRlbXBvcmFsX2ZrX3JuZzJwZXIgKAor ICBpZCBpbnQ0cmFuZ2UsCisgIHZhbGlkX2F0IGRhdGVyYW5nZSwKKyAgcGFyZW50X2lkIGludDRy YW5nZSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19ybmcycGVyX3BrIFBSSU1BUlkgS0VZIChp ZCwgdmFsaWRfYXQgV0lUSE9VVCBPVkVSTEFQUyksCisgIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtf cm5nMnBlcl9mayBGT1JFSUdOIEtFWSAocGFyZW50X2lkKQorICAgIFJFRkVSRU5DRVMgdGVtcG9y YWxfcGVyCispOworRVJST1I6ICBmb3JlaWduIGtleSB1c2VzIFBFUklPRCBvbiB0aGUgcmVmZXJl bmNlZCB0YWJsZSBidXQgbm90IHRoZSByZWZlcmVuY2luZyB0YWJsZQorLS0gc2hvdWxkIGZhaWwg YmVjYXVzZSBvZiBkdXBsaWNhdGUgcmVmZXJlbmNlZCBjb2x1bW5zOgorQ1JFQVRFIFRBQkxFIHRl bXBvcmFsX2ZrX3JuZzJwZXIgKAorICBpZCBpbnQ0cmFuZ2UsCisgIHZhbGlkX2F0IGRhdGVyYW5n ZSwKKyAgcGFyZW50X2lkIGludDRyYW5nZSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19ybmcy cGVyX3BrIFBSSU1BUlkgS0VZIChpZCwgdmFsaWRfYXQgV0lUSE9VVCBPVkVSTEFQUyksCisgIENP TlNUUkFJTlQgdGVtcG9yYWxfZmtfcm5nMnBlcl9mayBGT1JFSUdOIEtFWSAocGFyZW50X2lkLCBQ RVJJT0QgcGFyZW50X2lkKQorICAgIFJFRkVSRU5DRVMgdGVtcG9yYWxfcGVyIChpZCwgUEVSSU9E IGlkKQorKTsKK0VSUk9SOiAgZm9yZWlnbiBrZXkgcmVmZXJlbmNlZC1jb2x1bW5zIGxpc3QgbXVz dCBub3QgY29udGFpbiBkdXBsaWNhdGVzCistLSBUd28gc2NhbGFyIGNvbHVtbnMKK0RST1AgVEFC TEUgdGVtcG9yYWxfcGVyMiBDQVNDQURFOworTk9USUNFOiAgZHJvcCBjYXNjYWRlcyB0byBjb25z dHJhaW50IHRlbXBvcmFsX2ZrMl9wZXIycGVyX2ZrIG9uIHRhYmxlIHRlbXBvcmFsX2ZrMl9wZXIy cGVyCitDUkVBVEUgVEFCTEUgdGVtcG9yYWxfcGVyMiAoCisgIGlkMSBpbnQ0cmFuZ2UsCisgIGlk MiBpbnQ0cmFuZ2UsCisgIHZhbGlkX2Zyb20gZGF0ZSwKKyAgdmFsaWRfdGlsIGRhdGUsCisgIFBF UklPRCBGT1IgdmFsaWRfYXQgKHZhbGlkX2Zyb20sIHZhbGlkX3RpbCksCisgIENPTlNUUkFJTlQg dGVtcG9yYWxfcGVyMl9wayBQUklNQVJZIEtFWSAoaWQxLCBpZDIsIHZhbGlkX2F0IFdJVEhPVVQg T1ZFUkxBUFMpCispOworQ1JFQVRFIFRBQkxFIHRlbXBvcmFsX2ZrMl9ybmcycGVyICgKKyAgaWQg aW50NHJhbmdlLAorICB2YWxpZF9hdCBkYXRlcmFuZ2UsCisgIHBhcmVudF9pZDEgaW50NHJhbmdl LAorICBwYXJlbnRfaWQyIGludDRyYW5nZSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9mazJfcm5n MnBlcl9wayBQUklNQVJZIEtFWSAoaWQsIHZhbGlkX2F0IFdJVEhPVVQgT1ZFUkxBUFMpLAorICBD T05TVFJBSU5UIHRlbXBvcmFsX2ZrMl9ybmcycGVyX2ZrIEZPUkVJR04gS0VZIChwYXJlbnRfaWQx LCBwYXJlbnRfaWQyLCBQRVJJT0QgdmFsaWRfYXQpCisgICAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9w ZXIyIChpZDEsIGlkMiwgUEVSSU9EIHZhbGlkX2F0KQorKTsKK1xkIHRlbXBvcmFsX2ZrMl9ybmcy cGVyCisgICAgICAgICAgIFRhYmxlICJwdWJsaWMudGVtcG9yYWxfZmsyX3JuZzJwZXIiCisgICBD b2x1bW4gICB8ICAgVHlwZSAgICB8IENvbGxhdGlvbiB8IE51bGxhYmxlIHwgRGVmYXVsdCAKKy0t LS0tLS0tLS0tLSstLS0tLS0tLS0tLSstLS0tLS0tLS0tLSstLS0tLS0tLS0tKy0tLS0tLS0tLQor IGlkICAgICAgICAgfCBpbnQ0cmFuZ2UgfCAgICAgICAgICAgfCBub3QgbnVsbCB8IAorIHZhbGlk X2F0ICAgfCBkYXRlcmFuZ2UgfCAgICAgICAgICAgfCBub3QgbnVsbCB8IAorIHBhcmVudF9pZDEg fCBpbnQ0cmFuZ2UgfCAgICAgICAgICAgfCAgICAgICAgICB8IAorIHBhcmVudF9pZDIgfCBpbnQ0 cmFuZ2UgfCAgICAgICAgICAgfCAgICAgICAgICB8IAorSW5kZXhlczoKKyAgICAidGVtcG9yYWxf ZmsyX3JuZzJwZXJfcGsiIFBSSU1BUlkgS0VZIChpZCwgdmFsaWRfYXQgV0lUSE9VVCBPVkVSTEFQ UykKK0ZvcmVpZ24ta2V5IGNvbnN0cmFpbnRzOgorICAgICJ0ZW1wb3JhbF9mazJfcm5nMnBlcl9m ayIgRk9SRUlHTiBLRVkgKHBhcmVudF9pZDEsIHBhcmVudF9pZDIsIFBFUklPRCB2YWxpZF9hdCkg UkVGRVJFTkNFUyB0ZW1wb3JhbF9wZXIyKGlkMSwgaWQyLCBQRVJJT0QgdmFsaWRfYXQpCisKK0RS T1AgVEFCTEUgdGVtcG9yYWxfZmsyX3JuZzJwZXI7CistLQorLS0gdGVzdCBBTFRFUiBUQUJMRSBB REQgQ09OU1RSQUlOVAorLS0KK0NSRUFURSBUQUJMRSB0ZW1wb3JhbF9ma19ybmcycGVyICgKKyAg aWQgaW50NHJhbmdlLAorICB2YWxpZF9hdCBkYXRlcmFuZ2UsCisgIHBhcmVudF9pZCBpbnQ0cmFu Z2UsCisgIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcm5nMnBlcl9wayBQUklNQVJZIEtFWSAoaWQs IHZhbGlkX2F0IFdJVEhPVVQgT1ZFUkxBUFMpCispOworQUxURVIgVEFCTEUgdGVtcG9yYWxfZmtf cm5nMnBlcgorICBBREQgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19ybmcycGVyX2ZrCisgIEZPUkVJ R04gS0VZIChwYXJlbnRfaWQsIFBFUklPRCB2YWxpZF9hdCkKKyAgUkVGRVJFTkNFUyB0ZW1wb3Jh bF9wZXIgKGlkLCBQRVJJT0QgdmFsaWRfYXQpOworLS0gVHdvIHNjYWxhciBjb2x1bW5zOgorQ1JF QVRFIFRBQkxFIHRlbXBvcmFsX2ZrMl9ybmcycGVyICgKKyAgaWQgaW50NHJhbmdlLAorICB2YWxp ZF9hdCBkYXRlcmFuZ2UsCisgIHBhcmVudF9pZDEgaW50NHJhbmdlLAorICBwYXJlbnRfaWQyIGlu dDRyYW5nZSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9mazJfcm5nMnBlcl9wayBQUklNQVJZIEtF WSAoaWQsIHZhbGlkX2F0IFdJVEhPVVQgT1ZFUkxBUFMpCispOworQUxURVIgVEFCTEUgdGVtcG9y YWxfZmsyX3JuZzJwZXIKKyAgQUREIENPTlNUUkFJTlQgdGVtcG9yYWxfZmsyX3JuZzJwZXJfZmsK KyAgRk9SRUlHTiBLRVkgKHBhcmVudF9pZDEsIHBhcmVudF9pZDIsIFBFUklPRCB2YWxpZF9hdCkK KyAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9wZXIyIChpZDEsIGlkMiwgUEVSSU9EIHZhbGlkX2F0KTsK K1xkIHRlbXBvcmFsX2ZrMl9ybmcycGVyCisgICAgICAgICAgIFRhYmxlICJwdWJsaWMudGVtcG9y YWxfZmsyX3JuZzJwZXIiCisgICBDb2x1bW4gICB8ICAgVHlwZSAgICB8IENvbGxhdGlvbiB8IE51 bGxhYmxlIHwgRGVmYXVsdCAKKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLSstLS0tLS0tLS0tLSst LS0tLS0tLS0tKy0tLS0tLS0tLQorIGlkICAgICAgICAgfCBpbnQ0cmFuZ2UgfCAgICAgICAgICAg fCBub3QgbnVsbCB8IAorIHZhbGlkX2F0ICAgfCBkYXRlcmFuZ2UgfCAgICAgICAgICAgfCBub3Qg bnVsbCB8IAorIHBhcmVudF9pZDEgfCBpbnQ0cmFuZ2UgfCAgICAgICAgICAgfCAgICAgICAgICB8 IAorIHBhcmVudF9pZDIgfCBpbnQ0cmFuZ2UgfCAgICAgICAgICAgfCAgICAgICAgICB8IAorSW5k ZXhlczoKKyAgICAidGVtcG9yYWxfZmsyX3JuZzJwZXJfcGsiIFBSSU1BUlkgS0VZIChpZCwgdmFs aWRfYXQgV0lUSE9VVCBPVkVSTEFQUykKK0ZvcmVpZ24ta2V5IGNvbnN0cmFpbnRzOgorICAgICJ0 ZW1wb3JhbF9mazJfcm5nMnBlcl9mayIgRk9SRUlHTiBLRVkgKHBhcmVudF9pZDEsIHBhcmVudF9p ZDIsIFBFUklPRCB2YWxpZF9hdCkgUkVGRVJFTkNFUyB0ZW1wb3JhbF9wZXIyKGlkMSwgaWQyLCBQ RVJJT0QgdmFsaWRfYXQpCisKKy0tIHdpdGggaW5mZXJyZWQgUEsgb24gdGhlIHJlZmVyZW5jZWQg dGFibGUsIGFuZCB3cm9uZyBjb2x1bW4gdHlwZToKK0FMVEVSIFRBQkxFIHRlbXBvcmFsX2ZrX3Ju ZzJwZXIKKyAgRFJPUCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3JuZzJwZXJfZmssCisgIEFMVEVS IENPTFVNTiB2YWxpZF9hdCBUWVBFIHRzcmFuZ2UgVVNJTkcgdHNyYW5nZShsb3dlcih2YWxpZF9h dCksIHVwcGVyKHZhbGlkX2F0KSk7CitBTFRFUiBUQUJMRSB0ZW1wb3JhbF9ma19ybmcycGVyCisg IEFERCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3JuZzJwZXJfZmsKKyAgRk9SRUlHTiBLRVkgKHBh cmVudF9pZCwgUEVSSU9EIHZhbGlkX2F0KQorICBSRUZFUkVOQ0VTIHRlbXBvcmFsX3BlcjsKK0VS Uk9SOiAgZm9yZWlnbiBrZXkgY29uc3RyYWludCAidGVtcG9yYWxfZmtfcm5nMnBlcl9mayIgY2Fu bm90IGJlIGltcGxlbWVudGVkCitERVRBSUw6ICBLZXkgY29sdW1ucyAidmFsaWRfYXQiIG9mIHRo ZSByZWZlcmVuY2luZyB0YWJsZSBhbmQgInZhbGlkX2F0IiBvZiB0aGUgcmVmZXJlbmNlZCB0YWJs ZSBhcmUgb2YgaW5jb21wYXRpYmxlIHR5cGVzOiB0c3JhbmdlIGFuZCBkYXRlcmFuZ2UuCitBTFRF UiBUQUJMRSB0ZW1wb3JhbF9ma19ybmcycGVyCisgIEFMVEVSIENPTFVNTiB2YWxpZF9hdCBUWVBF IGRhdGVyYW5nZSBVU0lORyBkYXRlcmFuZ2UobG93ZXIodmFsaWRfYXQpOjpkYXRlLCB1cHBlcih2 YWxpZF9hdCk6OmRhdGUpOworLS0gd2l0aCBpbmZlcnJlZCBQSyBvbiB0aGUgcmVmZXJlbmNlZCB0 YWJsZToKK0FMVEVSIFRBQkxFIHRlbXBvcmFsX2ZrX3JuZzJwZXIKKyAgQUREIENPTlNUUkFJTlQg dGVtcG9yYWxfZmtfcm5nMnBlcl9maworICBGT1JFSUdOIEtFWSAocGFyZW50X2lkLCBQRVJJT0Qg dmFsaWRfYXQpCisgIFJFRkVSRU5DRVMgdGVtcG9yYWxfcGVyOworLS0gc2hvdWxkIGZhaWwgYmVj YXVzZSBvZiBkdXBsaWNhdGUgcmVmZXJlbmNlZCBjb2x1bW5zOgorQUxURVIgVEFCTEUgdGVtcG9y YWxfZmtfcm5nMnBlcgorICBBREQgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19ybmcycGVyX2ZrMgor ICBGT1JFSUdOIEtFWSAocGFyZW50X2lkLCBQRVJJT0QgcGFyZW50X2lkKQorICBSRUZFUkVOQ0VT IHRlbXBvcmFsX3BlciAoaWQsIFBFUklPRCBpZCk7CitFUlJPUjogIGZvcmVpZ24ga2V5IHJlZmVy ZW5jZWQtY29sdW1ucyBsaXN0IG11c3Qgbm90IGNvbnRhaW4gZHVwbGljYXRlcworLS0KKy0tIHRl c3Qgd2l0aCByb3dzIGFscmVhZHkKKy0tCitERUxFVEUgRlJPTSB0ZW1wb3JhbF9ma19ybmcycGVy OworREVMRVRFIEZST00gdGVtcG9yYWxfcGVyOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyIChp ZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMKKyAgKCdbMSwyKScsICcyMDE4LTAxLTAy JywgJzIwMTgtMDItMDMnKSwKKyAgKCdbMSwyKScsICcyMDE4LTAzLTAzJywgJzIwMTgtMDQtMDQn KSwKKyAgKCdbMiwzKScsICcyMDE4LTAxLTAxJywgJzIwMTgtMDEtMDUnKSwKKyAgKCdbMyw0KScs ICcyMDE4LTAxLTAxJywgTlVMTCk7CitBTFRFUiBUQUJMRSB0ZW1wb3JhbF9ma19ybmcycGVyCisg IERST1AgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19ybmcycGVyX2ZrOworSU5TRVJUIElOVE8gdGVt cG9yYWxfZmtfcm5nMnBlciAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQpIFZBTFVFUyAoJ1sxLDIp JywgJ1syMDE4LTAxLTAyLDIwMTgtMDItMDEpJywgJ1sxLDIpJyk7CitBTFRFUiBUQUJMRSB0ZW1w b3JhbF9ma19ybmcycGVyCisgIEFERCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3JuZzJwZXJfZmsK KyAgRk9SRUlHTiBLRVkgKHBhcmVudF9pZCwgUEVSSU9EIHZhbGlkX2F0KQorICBSRUZFUkVOQ0VT IHRlbXBvcmFsX3BlcjsKK0FMVEVSIFRBQkxFIHRlbXBvcmFsX2ZrX3JuZzJwZXIKKyAgRFJPUCBD T05TVFJBSU5UIHRlbXBvcmFsX2ZrX3JuZzJwZXJfZms7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9m a19ybmcycGVyIChpZCwgdmFsaWRfYXQsIHBhcmVudF9pZCkgVkFMVUVTICgnWzIsMyknLCAnWzIw MTgtMDEtMDIsMjAxOC0wNC0wMSknLCAnWzEsMiknKTsKKy0tIHNob3VsZCBmYWlsOgorQUxURVIg VEFCTEUgdGVtcG9yYWxfZmtfcm5nMnBlcgorICBBREQgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19y bmcycGVyX2ZrCisgIEZPUkVJR04gS0VZIChwYXJlbnRfaWQsIFBFUklPRCB2YWxpZF9hdCkKKyAg UkVGRVJFTkNFUyB0ZW1wb3JhbF9wZXI7CitFUlJPUjogIGluc2VydCBvciB1cGRhdGUgb24gdGFi bGUgInRlbXBvcmFsX2ZrX3JuZzJwZXIiIHZpb2xhdGVzIGZvcmVpZ24ga2V5IGNvbnN0cmFpbnQg InRlbXBvcmFsX2ZrX3JuZzJwZXJfZmsiCitERVRBSUw6ICBLZXkgKHBhcmVudF9pZCwgdmFsaWRf YXQpPShbMSwyKSwgWzIwMTgtMDEtMDIsMjAxOC0wNC0wMSkpIGlzIG5vdCBwcmVzZW50IGluIHRh YmxlICJ0ZW1wb3JhbF9wZXIiLgorLS0gb2theSBhZ2FpbjoKK0RFTEVURSBGUk9NIHRlbXBvcmFs X2ZrX3JuZzJwZXI7CitBTFRFUiBUQUJMRSB0ZW1wb3JhbF9ma19ybmcycGVyCisgIEFERCBDT05T VFJBSU5UIHRlbXBvcmFsX2ZrX3JuZzJwZXJfZmsKKyAgRk9SRUlHTiBLRVkgKHBhcmVudF9pZCwg UEVSSU9EIHZhbGlkX2F0KQorICBSRUZFUkVOQ0VTIHRlbXBvcmFsX3BlcjsKKy0tCistLSB0ZXN0 IHBnX2dldF9jb25zdHJhaW50ZGVmCistLQorU0VMRUNUIHBnX2dldF9jb25zdHJhaW50ZGVmKG9p ZCkgRlJPTSBwZ19jb25zdHJhaW50IFdIRVJFIGNvbm5hbWUgPSAndGVtcG9yYWxfZmtfcm5nMnBl cl9mayc7CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwZ19nZXRfY29uc3RyYWlu dGRlZiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKy0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLQorIEZPUkVJR04gS0VZIChwYXJlbnRfaWQsIFBFUklPRCB2YWxpZF9hdCkg UkVGRVJFTkNFUyB0ZW1wb3JhbF9wZXIoaWQsIFBFUklPRCB2YWxpZF9hdCkKKygxIHJvdykKKwor LS0KKy0tIHRlc3QgRksgcmVmZXJlbmNpbmcgaW5zZXJ0cworLS0KK0lOU0VSVCBJTlRPIHRlbXBv cmFsX2ZrX3JuZzJwZXIgKGlkLCB2YWxpZF9hdCwgcGFyZW50X2lkKSBWQUxVRVMgKCdbMSwyKScs ICdbMjAxOC0wMS0wMiwyMDE4LTAyLTAxKScsICdbMSwyKScpOworLS0gc2hvdWxkIGZhaWw6CitJ TlNFUlQgSU5UTyB0ZW1wb3JhbF9ma19ybmcycGVyIChpZCwgdmFsaWRfYXQsIHBhcmVudF9pZCkg VkFMVUVTICgnWzIsMyknLCAnWzIwMTgtMDEtMDIsMjAxOC0wNC0wMSknLCAnWzEsMiknKTsKK0VS Uk9SOiAgaW5zZXJ0IG9yIHVwZGF0ZSBvbiB0YWJsZSAidGVtcG9yYWxfZmtfcm5nMnBlciIgdmlv bGF0ZXMgZm9yZWlnbiBrZXkgY29uc3RyYWludCAidGVtcG9yYWxfZmtfcm5nMnBlcl9mayIKK0RF VEFJTDogIEtleSAocGFyZW50X2lkLCB2YWxpZF9hdCk9KFsxLDIpLCBbMjAxOC0wMS0wMiwyMDE4 LTA0LTAxKSkgaXMgbm90IHByZXNlbnQgaW4gdGFibGUgInRlbXBvcmFsX3BlciIuCistLSBub3cg aXQgc2hvdWxkIHdvcms6CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIgKGlkLCB2YWxpZF9mcm9t LCB2YWxpZF90aWwpIFZBTFVFUyAoJ1sxLDIpJywgJzIwMTgtMDItMDMnLCAnMjAxOC0wMy0wMycp OworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmtfcm5nMnBlciAoaWQsIHZhbGlkX2F0LCBwYXJlbnRf aWQpIFZBTFVFUyAoJ1syLDMpJywgJ1syMDE4LTAxLTAyLDIwMTgtMDQtMDEpJywgJ1sxLDIpJyk7 CistLQorLS0gdGVzdCBGSyByZWZlcmVuY2luZyB1cGRhdGVzCistLQorLS0gc2xpZGUgdGhlIGVk Z2UgYWNyb3NzIGEgcmVmZXJlbmNlZCB0cmFuc2l0aW9uOgorVVBEQVRFIHRlbXBvcmFsX2ZrX3Ju ZzJwZXIgU0VUIHZhbGlkX2F0ID0gJ1syMDE4LTAxLTAyLDIwMTgtMDItMjApJyBXSEVSRSBpZCA9 ICdbMSwyKSc7CistLSBzaG91bGQgZmFpbDoKK1VQREFURSB0ZW1wb3JhbF9ma19ybmcycGVyIFNF VCB2YWxpZF9hdCA9ICdbMjAxOC0wMS0wMiwyMDE4LTA1LTAxKScgV0hFUkUgaWQgPSAnWzEsMikn OworRVJST1I6ICBpbnNlcnQgb3IgdXBkYXRlIG9uIHRhYmxlICJ0ZW1wb3JhbF9ma19ybmcycGVy IiB2aW9sYXRlcyBmb3JlaWduIGtleSBjb25zdHJhaW50ICJ0ZW1wb3JhbF9ma19ybmcycGVyX2Zr IgorREVUQUlMOiAgS2V5IChwYXJlbnRfaWQsIHZhbGlkX2F0KT0oWzEsMiksIFsyMDE4LTAxLTAy LDIwMTgtMDUtMDEpKSBpcyBub3QgcHJlc2VudCBpbiB0YWJsZSAidGVtcG9yYWxfcGVyIi4KK1VQ REFURSB0ZW1wb3JhbF9ma19ybmcycGVyIFNFVCBwYXJlbnRfaWQgPSAnWzgsOSknIFdIRVJFIGlk ID0gJ1sxLDIpJzsKK0VSUk9SOiAgaW5zZXJ0IG9yIHVwZGF0ZSBvbiB0YWJsZSAidGVtcG9yYWxf Zmtfcm5nMnBlciIgdmlvbGF0ZXMgZm9yZWlnbiBrZXkgY29uc3RyYWludCAidGVtcG9yYWxfZmtf cm5nMnBlcl9mayIKK0RFVEFJTDogIEtleSAocGFyZW50X2lkLCB2YWxpZF9hdCk9KFs4LDkpLCBb MjAxOC0wMS0wMiwyMDE4LTAyLTIwKSkgaXMgbm90IHByZXNlbnQgaW4gdGFibGUgInRlbXBvcmFs X3BlciIuCistLSBBTFRFUiBGSyBERUZFUlJBQkxFCitCRUdJTjsKKyAgSU5TRVJUIElOVE8gdGVt cG9yYWxfcGVyIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMKKyAgICAoJ1s1LDYp JywgJzIwMTgtMDEtMDEnLCAnMjAxOC0wMi0wMScpLAorICAgICgnWzUsNiknLCAnMjAxOC0wMi0w MScsICcyMDE4LTAzLTAxJyk7CisgIElOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrX3JuZzJwZXIgKGlk LCB2YWxpZF9hdCwgcGFyZW50X2lkKSBWQUxVRVMKKyAgICAoJ1szLDQpJywgJ1syMDE4LTAxLTA1 LDIwMTgtMDEtMTApJywgJ1s1LDYpJyk7CisgIEFMVEVSIFRBQkxFIHRlbXBvcmFsX2ZrX3JuZzJw ZXIKKyAgICBBTFRFUiBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3JuZzJwZXJfZmsKKyAgICBERUZF UlJBQkxFIElOSVRJQUxMWSBERUZFUlJFRDsKKyAgREVMRVRFIEZST00gdGVtcG9yYWxfcGVyIFdI RVJFIGlkID0gJ1s1LDYpJzsgLS1zaG91bGQgbm90IGZhaWwgeWV0LgorQ09NTUlUOyAtLSBzaG91 bGQgZmFpbCBoZXJlLgorRVJST1I6ICB1cGRhdGUgb3IgZGVsZXRlIG9uIHRhYmxlICJ0ZW1wb3Jh bF9wZXIiIHZpb2xhdGVzIGZvcmVpZ24ga2V5IGNvbnN0cmFpbnQgInRlbXBvcmFsX2ZrX3JuZzJw ZXJfZmsiIG9uIHRhYmxlICJ0ZW1wb3JhbF9ma19ybmcycGVyIgorREVUQUlMOiAgS2V5IChpZCwg dmFsaWRfYXQpPShbNSw2KSwgWzIwMTgtMDEtMDEsMjAxOC0wMi0wMSkpIGlzIHN0aWxsIHJlZmVy ZW5jZWQgZnJvbSB0YWJsZSAidGVtcG9yYWxfZmtfcm5nMnBlciIuCistLQorLS0gdGVzdCBGSyBy ZWZlcmVuY2VkIHVwZGF0ZXMgTk8gQUNUSU9OCistLQorVFJVTkNBVEUgdGVtcG9yYWxfcGVyLCB0 ZW1wb3JhbF9ma19ybmcycGVyOworQUxURVIgVEFCTEUgdGVtcG9yYWxfZmtfcm5nMnBlcgorICBE Uk9QIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcm5nMnBlcl9mazsKK0FMVEVSIFRBQkxFIHRlbXBv cmFsX2ZrX3JuZzJwZXIKKyAgQUREIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcm5nMnBlcl9mawor ICBGT1JFSUdOIEtFWSAocGFyZW50X2lkLCBQRVJJT0QgdmFsaWRfYXQpCisgIFJFRkVSRU5DRVMg dGVtcG9yYWxfcGVyCisgIE9OIFVQREFURSBOTyBBQ1RJT047CistLSBhIFBLIHVwZGF0ZSB0aGF0 IHN1Y2NlZWRzIGJlY2F1c2UgdGhlIG51bWVyaWMgaWQgaXNuJ3QgcmVmZXJlbmNlZDoKK0lOU0VS VCBJTlRPIHRlbXBvcmFsX3BlciAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgn WzUsNiknLCAnMjAxOC0wMS0wMScsICcyMDE4LTAyLTAxJyk7CitVUERBVEUgdGVtcG9yYWxfcGVy IFNFVCB2YWxpZF9mcm9tID0gJzIwMTYtMDEtMDEnLCB2YWxpZF90aWwgPSAnMjAxNi0wMi0wMScg V0hFUkUgaWQgPSAnWzUsNiknOworLS0gYSBQSyB1cGRhdGUgdGhhdCBzdWNjZWVkcyBldmVuIHRo b3VnaCB0aGUgbnVtZXJpYyBpZCBpcyByZWZlcmVuY2VkIGJlY2F1c2UgdGhlIHJhbmdlIGlzbid0 OgorREVMRVRFIEZST00gdGVtcG9yYWxfcGVyIFdIRVJFIGlkID0gJ1s1LDYpJzsKK0lOU0VSVCBJ TlRPIHRlbXBvcmFsX3BlciAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTCisgICgn WzUsNiknLCAnMjAxOC0wMS0wMScsICcyMDE4LTAyLTAxJyksCisgICgnWzUsNiknLCAnMjAxOC0w Mi0wMScsICcyMDE4LTAzLTAxJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ma19ybmcycGVyIChp ZCwgdmFsaWRfYXQsIHBhcmVudF9pZCkgVkFMVUVTCisgICgnWzMsNCknLCAnWzIwMTgtMDEtMDUs MjAxOC0wMS0xMCknLCAnWzUsNiknKTsKK1VQREFURSB0ZW1wb3JhbF9wZXIgU0VUIHZhbGlkX2Zy b20gPSAnMjAxNi0wMi0wMScsIHZhbGlkX3RpbCA9ICcyMDE2LTAzLTAxJworV0hFUkUgaWQgPSAn WzUsNiknIEFORCB2YWxpZF9mcm9tID0gJzIwMTgtMDItMDEnIEFORCB2YWxpZF90aWwgPSAnMjAx OC0wMy0wMSc7CistLSBBIFBLIHVwZGF0ZSBzbGlkaW5nIHRoZSBlZGdlIGJldHdlZW4gdHdvIHJl ZmVyZW5jZWQgcm93czoKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlciAoaWQsIHZhbGlkX2Zyb20s IHZhbGlkX3RpbCkgVkFMVUVTCisgICgnWzYsNyknLCAnMjAxOC0wMS0wMScsICcyMDE4LTAyLTAx JyksCisgICgnWzYsNyknLCAnMjAxOC0wMi0wMScsICcyMDE4LTAzLTAxJyk7CitJTlNFUlQgSU5U TyB0ZW1wb3JhbF9ma19ybmcycGVyIChpZCwgdmFsaWRfYXQsIHBhcmVudF9pZCkgVkFMVUVTCisg ICgnWzQsNSknLCAnWzIwMTgtMDEtMTUsMjAxOC0wMi0xNSknLCAnWzYsNyknKTsKK1VQREFURSB0 ZW1wb3JhbF9wZXIKK1NFVCB2YWxpZF9mcm9tID0gQ0FTRSBXSEVOIHZhbGlkX2Zyb20gPSAnMjAx OC0wMS0wMScgVEhFTiAnMjAxOC0wMS0wMScKKyAgICAgICAgICAgICAgICAgICAgICBXSEVOIHZh bGlkX2Zyb20gPSAnMjAxOC0wMi0wMScgVEhFTiAnMjAxOC0wMS0wNScgRU5EOjpkYXRlLAorICAg IHZhbGlkX3RpbCA9ICBDQVNFIFdIRU4gdmFsaWRfZnJvbSA9ICcyMDE4LTAxLTAxJyBUSEVOICcy MDE4LTAxLTA1JworICAgICAgICAgICAgICAgICAgICAgIFdIRU4gdmFsaWRfZnJvbSA9ICcyMDE4 LTAyLTAxJyBUSEVOICcyMDE4LTAzLTAxJyBFTkQ6OmRhdGUKK1dIRVJFIGlkID0gJ1s2LDcpJzsK Ky0tIGEgUEsgdXBkYXRlIHNocmlua2luZyB0aGUgcmVmZXJlbmNlZCByYW5nZSBidXQgc3RpbGwg dmFsaWQ6CistLSBUaGVyZSBhcmUgdHdvIHJlZmVyZW5jZXM6IG9uZSBmdWxmaWxsZWQgYnkgdGhl IGZpcnN0IHBrIHJvdywKKy0tIHRoZSBvdGhlciBmdWxmaWxsZWQgYnkgYm90aCBwayByb3dzIGNv bWJpbmVkLgorSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRf dGlsKSBWQUxVRVMKKyAgKCdbMSwyKScsICcyMDE4LTAxLTAxJywgJzIwMTgtMDMtMDEnKSwKKyAg KCdbMSwyKScsICcyMDE4LTAzLTAxJywgJzIwMTgtMDYtMDEnKTsKK0lOU0VSVCBJTlRPIHRlbXBv cmFsX2ZrX3JuZzJwZXIgKGlkLCB2YWxpZF9hdCwgcGFyZW50X2lkKSBWQUxVRVMKKyAgKCdbMSwy KScsICdbMjAxOC0wMS0xNSwyMDE4LTAyLTAxKScsICdbMSwyKScpLAorICAoJ1syLDMpJywgJ1sy MDE4LTAxLTE1LDIwMTgtMDUtMDEpJywgJ1sxLDIpJyk7CitVUERBVEUgdGVtcG9yYWxfcGVyIFNF VCB2YWxpZF9mcm9tID0gJzIwMTgtMDEtMTUnLCB2YWxpZF90aWwgPSAnMjAxOC0wMy0wMScKK1dI RVJFIGlkID0gJ1sxLDIpJyBBTkQgdmFsaWRfYXQgQD4gJzIwMTgtMDEtMTUnOjpkYXRlOworLS0g YSBQSyB1cGRhdGUgZ3Jvd2luZyB0aGUgcmVmZXJlbmNlZCByYW5nZSBpcyBmaW5lOgorVVBEQVRF IHRlbXBvcmFsX3BlciBTRVQgdmFsaWRfZnJvbSA9ICcyMDE4LTAxLTAxJywgdmFsaWRfdGlsID0g JzIwMTgtMDMtMDEnCitXSEVSRSBpZCA9ICdbMSwyKScgQU5EIHZhbGlkX2F0IEA+ICcyMDE4LTAx LTI1Jzo6ZGF0ZTsKKy0tIGEgUEsgdXBkYXRlIHNocmlua2luZyB0aGUgcmVmZXJlbmNlZCByYW5n ZSBhbmQgY2hhbmdpbmcgdGhlIGlkIGludmFsaWRhdGVzIHRoZSB3aG9sZSByYW5nZToKK1VQREFU RSB0ZW1wb3JhbF9wZXIgU0VUIGlkID0gJ1syLDMpJywgdmFsaWRfZnJvbSA9ICcyMDE4LTAxLTE1 JywgdmFsaWRfdGlsID0gJzIwMTgtMDMtMDEnCitXSEVSRSBpZCA9ICdbMSwyKScgQU5EIHZhbGlk X2F0IEA+ICcyMDE4LTAxLTE1Jzo6ZGF0ZTsKK0VSUk9SOiAgdXBkYXRlIG9yIGRlbGV0ZSBvbiB0 YWJsZSAidGVtcG9yYWxfcGVyIiB2aW9sYXRlcyBmb3JlaWduIGtleSBjb25zdHJhaW50ICJ0ZW1w b3JhbF9ma19ybmcycGVyX2ZrIiBvbiB0YWJsZSAidGVtcG9yYWxfZmtfcm5nMnBlciIKK0RFVEFJ TDogIEtleSAoaWQsIHZhbGlkX2F0KT0oWzEsMiksIFsyMDE4LTAxLTAxLDIwMTgtMDMtMDEpKSBp cyBzdGlsbCByZWZlcmVuY2VkIGZyb20gdGFibGUgInRlbXBvcmFsX2ZrX3JuZzJwZXIiLgorLS0g YSBQSyB1cGRhdGUgY2hhbmdpbmcgb25seSB0aGUgaWQgaW52YWxpZGF0ZXMgdGhlIHdob2xlIHJh bmdlOgorVVBEQVRFIHRlbXBvcmFsX3BlciBTRVQgaWQgPSAnWzIsMyknCitXSEVSRSBpZCA9ICdb MSwyKScgQU5EIHZhbGlkX2F0IEA+ICcyMDE4LTAxLTE1Jzo6ZGF0ZTsKK0VSUk9SOiAgdXBkYXRl IG9yIGRlbGV0ZSBvbiB0YWJsZSAidGVtcG9yYWxfcGVyIiB2aW9sYXRlcyBmb3JlaWduIGtleSBj b25zdHJhaW50ICJ0ZW1wb3JhbF9ma19ybmcycGVyX2ZrIiBvbiB0YWJsZSAidGVtcG9yYWxfZmtf cm5nMnBlciIKK0RFVEFJTDogIEtleSAoaWQsIHZhbGlkX2F0KT0oWzEsMiksIFsyMDE4LTAxLTAx LDIwMTgtMDMtMDEpKSBpcyBzdGlsbCByZWZlcmVuY2VkIGZyb20gdGFibGUgInRlbXBvcmFsX2Zr X3JuZzJwZXIiLgorLS0gYSBQSyB1cGRhdGUgdGhhdCBsb3NlcyB0aW1lIGZyb20gYm90aCBlbmRz LCBidXQgaXMgc3RpbGwgdmFsaWQ6CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIgKGlkLCB2YWxp ZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUworICAoJ1syLDMpJywgJzIwMTgtMDEtMDEnLCAnMjAx OC0wMy0wMScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmtfcm5nMnBlciAoaWQsIHZhbGlkX2F0 LCBwYXJlbnRfaWQpIFZBTFVFUworICAoJ1s1LDYpJywgJ1syMDE4LTAxLTE1LDIwMTgtMDItMDEp JywgJ1syLDMpJyk7CitVUERBVEUgdGVtcG9yYWxfcGVyIFNFVCB2YWxpZF9mcm9tID0gJzIwMTgt MDEtMTUnLCB2YWxpZF90aWwgPSAnMjAxOC0wMi0xNScKK1dIRVJFIGlkID0gJ1syLDMpJzsKKy0t IGEgUEsgdXBkYXRlIHRoYXQgZmFpbHMgYmVjYXVzZSBib3RoIGFyZSByZWZlcmVuY2VkOgorVVBE QVRFIHRlbXBvcmFsX3BlciBTRVQgdmFsaWRfZnJvbSA9ICcyMDE2LTAxLTAxJywgdmFsaWRfdGls ID0gJzIwMTYtMDItMDEnCitXSEVSRSBpZCA9ICdbNSw2KScgQU5EIHZhbGlkX2Zyb20gPSAnMjAx OC0wMS0wMScgQU5EIHZhbGlkX3RpbCA9ICcyMDE4LTAyLTAxJzsKK0VSUk9SOiAgdXBkYXRlIG9y IGRlbGV0ZSBvbiB0YWJsZSAidGVtcG9yYWxfcGVyIiB2aW9sYXRlcyBmb3JlaWduIGtleSBjb25z dHJhaW50ICJ0ZW1wb3JhbF9ma19ybmcycGVyX2ZrIiBvbiB0YWJsZSAidGVtcG9yYWxfZmtfcm5n MnBlciIKK0RFVEFJTDogIEtleSAoaWQsIHZhbGlkX2F0KT0oWzUsNiksIFsyMDE4LTAxLTAxLDIw MTgtMDItMDEpKSBpcyBzdGlsbCByZWZlcmVuY2VkIGZyb20gdGFibGUgInRlbXBvcmFsX2ZrX3Ju ZzJwZXIiLgorLS0gYSBQSyB1cGRhdGUgdGhhdCBmYWlscyBiZWNhdXNlIGJvdGggYXJlIHJlZmVy ZW5jZWQsIGJ1dCBub3QgJ3RpbCBjb21taXQ6CitCRUdJTjsKKyAgQUxURVIgVEFCTEUgdGVtcG9y YWxfZmtfcm5nMnBlcgorICAgIEFMVEVSIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcm5nMnBlcl9m aworICAgIERFRkVSUkFCTEUgSU5JVElBTExZIERFRkVSUkVEOworICBVUERBVEUgdGVtcG9yYWxf cGVyIFNFVCB2YWxpZF9mcm9tID0gJzIwMTYtMDEtMDEnLCB2YWxpZF90aWwgPSAnMjAxNi0wMi0w MScKKyAgV0hFUkUgaWQgPSAnWzUsNiknIEFORCB2YWxpZF9hdCA9IGRhdGVyYW5nZSgnMjAxOC0w MS0wMScsICcyMDE4LTAyLTAxJyk7CitDT01NSVQ7CitFUlJPUjogIHVwZGF0ZSBvciBkZWxldGUg b24gdGFibGUgInRlbXBvcmFsX3BlciIgdmlvbGF0ZXMgZm9yZWlnbiBrZXkgY29uc3RyYWludCAi dGVtcG9yYWxfZmtfcm5nMnBlcl9mayIgb24gdGFibGUgInRlbXBvcmFsX2ZrX3JuZzJwZXIiCitE RVRBSUw6ICBLZXkgKGlkLCB2YWxpZF9hdCk9KFs1LDYpLCBbMjAxOC0wMS0wMSwyMDE4LTAyLTAx KSkgaXMgc3RpbGwgcmVmZXJlbmNlZCBmcm9tIHRhYmxlICJ0ZW1wb3JhbF9ma19ybmcycGVyIi4K Ky0tIGNoYW5naW5nIHRoZSBzY2FsYXIgcGFydCBmYWlsczoKK1VQREFURSB0ZW1wb3JhbF9wZXIg U0VUIGlkID0gJ1s3LDgpJworV0hFUkUgaWQgPSAnWzUsNiknIEFORCB2YWxpZF9mcm9tID0gJzIw MTgtMDEtMDEnIEFORCB2YWxpZF90aWwgPSAnMjAxOC0wMi0wMSc7CitFUlJPUjogIHVwZGF0ZSBv ciBkZWxldGUgb24gdGFibGUgInRlbXBvcmFsX3BlciIgdmlvbGF0ZXMgZm9yZWlnbiBrZXkgY29u c3RyYWludCAidGVtcG9yYWxfZmtfcm5nMnBlcl9mayIgb24gdGFibGUgInRlbXBvcmFsX2ZrX3Ju ZzJwZXIiCitERVRBSUw6ICBLZXkgKGlkLCB2YWxpZF9hdCk9KFs1LDYpLCBbMjAxOC0wMS0wMSwy MDE4LTAyLTAxKSkgaXMgc3RpbGwgcmVmZXJlbmNlZCBmcm9tIHRhYmxlICJ0ZW1wb3JhbF9ma19y bmcycGVyIi4KKy0tIGNoYW5naW5nIGFuIHVucmVmZXJlbmNlZCBwYXJ0IGlzIG9rYXk6CitVUERB VEUgdGVtcG9yYWxfcGVyCitGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDE4LTAxLTAy JyBUTyAnMjAxOC0wMS0wMycKK1NFVCBpZCA9ICdbNyw4KScKK1dIRVJFIGlkID0gJ1s1LDYpJzsK Ky0tIGNoYW5naW5nIGp1c3QgYSBwYXJ0IGZhaWxzOgorVVBEQVRFIHRlbXBvcmFsX3BlcgorRk9S IFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAxOC0wMS0wNScgVE8gJzIwMTgtMDEtMTAnCitT RVQgaWQgPSAnWzcsOCknCitXSEVSRSBpZCA9ICdbNSw2KSc7CitFUlJPUjogIHVwZGF0ZSBvciBk ZWxldGUgb24gdGFibGUgInRlbXBvcmFsX3BlciIgdmlvbGF0ZXMgZm9yZWlnbiBrZXkgY29uc3Ry YWludCAidGVtcG9yYWxfZmtfcm5nMnBlcl9mayIgb24gdGFibGUgInRlbXBvcmFsX2ZrX3JuZzJw ZXIiCitERVRBSUw6ICBLZXkgKGlkLCB2YWxpZF9hdCk9KFs1LDYpLCBbMjAxOC0wMS0wMywyMDE4 LTAyLTAxKSkgaXMgc3RpbGwgcmVmZXJlbmNlZCBmcm9tIHRhYmxlICJ0ZW1wb3JhbF9ma19ybmcy cGVyIi4KK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfcGVyIFdIRVJFIGlkIGluICgnWzUsNiknLCAn WzcsOCknKSBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisgIGlkICAgfCB2YWxpZF9mcm9tIHwgdmFs aWRfdGlsICAKKy0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLQorIFs1LDYpIHwgMjAx Ni0wMi0wMSB8IDIwMTYtMDMtMDEKKyBbNSw2KSB8IDIwMTgtMDEtMDEgfCAyMDE4LTAxLTAyCisg WzUsNikgfCAyMDE4LTAxLTAzIHwgMjAxOC0wMi0wMQorIFs3LDgpIHwgMjAxOC0wMS0wMiB8IDIw MTgtMDEtMDMKKyg0IHJvd3MpCisKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmtfcm5nMnBlciBX SEVSRSBpZCBpbiAoJ1szLDQpJykgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworICBpZCAgIHwgICAg ICAgIHZhbGlkX2F0ICAgICAgICAgfCBwYXJlbnRfaWQgCistLS0tLS0tKy0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0KKyBbMyw0KSB8IFsyMDE4LTAxLTA1LDIwMTgtMDEtMTAp IHwgWzUsNikKKygxIHJvdykKKworLS0gdGhlbiBkZWxldGUgdGhlIG9iamVjdGluZyBGSyByZWNv cmQgYW5kIHRoZSBzYW1lIFBLIHVwZGF0ZSBzdWNjZWVkczoKK0RFTEVURSBGUk9NIHRlbXBvcmFs X2ZrX3JuZzJwZXIgV0hFUkUgaWQgPSAnWzMsNCknOworVVBEQVRFIHRlbXBvcmFsX3BlciBTRVQg dmFsaWRfZnJvbSA9ICcyMDE2LTAxLTAxJywgdmFsaWRfdGlsID0gJzIwMTYtMDItMDEnCitXSEVS RSBpZCA9ICdbNSw2KScgQU5EIHZhbGlkX2F0ID0gJ1syMDE4LTAxLTAxLDIwMTgtMDItMDEpJzsK Ky0tCistLSB0ZXN0IEZLIHJlZmVyZW5jZWQgdXBkYXRlcyBSRVNUUklDVAorLS0KK1RSVU5DQVRF IHRlbXBvcmFsX3BlciwgdGVtcG9yYWxfZmtfcm5nMnBlcjsKK0FMVEVSIFRBQkxFIHRlbXBvcmFs X2ZrX3JuZzJwZXIKKyAgRFJPUCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3JuZzJwZXJfZms7CitB TFRFUiBUQUJMRSB0ZW1wb3JhbF9ma19ybmcycGVyCisgIEFERCBDT05TVFJBSU5UIHRlbXBvcmFs X2ZrX3JuZzJwZXJfZmsKKyAgRk9SRUlHTiBLRVkgKHBhcmVudF9pZCwgUEVSSU9EIHZhbGlkX2F0 KQorICBSRUZFUkVOQ0VTIHRlbXBvcmFsX3BlcgorICBPTiBVUERBVEUgUkVTVFJJQ1Q7CitFUlJP UjogIHVuc3VwcG9ydGVkIE9OIFVQREFURSBhY3Rpb24gZm9yIGZvcmVpZ24ga2V5IGNvbnN0cmFp bnQgdXNpbmcgUEVSSU9ECistLQorLS0gdGVzdCBGSyByZWZlcmVuY2VkIGRlbGV0ZXMgTk8gQUNU SU9OCistLQorVFJVTkNBVEUgdGVtcG9yYWxfcGVyLCB0ZW1wb3JhbF9ma19ybmcycGVyOworQUxU RVIgVEFCTEUgdGVtcG9yYWxfZmtfcm5nMnBlcgorICBBREQgQ09OU1RSQUlOVCB0ZW1wb3JhbF9m a19ybmcycGVyX2ZrCisgIEZPUkVJR04gS0VZIChwYXJlbnRfaWQsIFBFUklPRCB2YWxpZF9hdCkK KyAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9wZXI7CistLSBhIFBLIGRlbGV0ZSB0aGF0IHN1Y2NlZWRz IGJlY2F1c2UgdGhlIG51bWVyaWMgaWQgaXNuJ3QgcmVmZXJlbmNlZDoKK0lOU0VSVCBJTlRPIHRl bXBvcmFsX3BlciAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzUsNiknLCAn MjAxOC0wMS0wMScsICcyMDE4LTAyLTAxJyk7CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9wZXIgV0hF UkUgaWQgPSAnWzUsNiknOworLS0gYSBQSyBkZWxldGUgdGhhdCBzdWNjZWVkcyBldmVuIHRob3Vn aCB0aGUgbnVtZXJpYyBpZCBpcyByZWZlcmVuY2VkIGJlY2F1c2UgdGhlIHJhbmdlIGlzbid0Ogor SU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxV RVMKKyAgKCdbNSw2KScsICcyMDE4LTAxLTAxJywgJzIwMTgtMDItMDEnKSwKKyAgKCdbNSw2KScs ICcyMDE4LTAyLTAxJywgJzIwMTgtMDMtMDEnKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrX3Ju ZzJwZXIgKGlkLCB2YWxpZF9hdCwgcGFyZW50X2lkKSBWQUxVRVMgKCdbMyw0KScsICdbMjAxOC0w MS0wNSwyMDE4LTAxLTEwKScsICdbNSw2KScpOworREVMRVRFIEZST00gdGVtcG9yYWxfcGVyIFdI RVJFIGlkID0gJ1s1LDYpJyBBTkQgdmFsaWRfZnJvbSA9ICcyMDE4LTAyLTAxJyBBTkQgdmFsaWRf dGlsID0gJzIwMTgtMDMtMDEnOworLS0gYSBQSyBkZWxldGUgdGhhdCBmYWlscyBiZWNhdXNlIGJv dGggYXJlIHJlZmVyZW5jZWQ6CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9wZXIgV0hFUkUgaWQgPSAn WzUsNiknIEFORCB2YWxpZF9mcm9tID0gJzIwMTgtMDEtMDEnIEFORCB2YWxpZF90aWwgPSAnMjAx OC0wMi0wMSc7CitFUlJPUjogIHVwZGF0ZSBvciBkZWxldGUgb24gdGFibGUgInRlbXBvcmFsX3Bl ciIgdmlvbGF0ZXMgZm9yZWlnbiBrZXkgY29uc3RyYWludCAidGVtcG9yYWxfZmtfcm5nMnBlcl9m ayIgb24gdGFibGUgInRlbXBvcmFsX2ZrX3JuZzJwZXIiCitERVRBSUw6ICBLZXkgKGlkLCB2YWxp ZF9hdCk9KFs1LDYpLCBbMjAxOC0wMS0wMSwyMDE4LTAyLTAxKSkgaXMgc3RpbGwgcmVmZXJlbmNl ZCBmcm9tIHRhYmxlICJ0ZW1wb3JhbF9ma19ybmcycGVyIi4KKy0tIGEgUEsgZGVsZXRlIHRoYXQg ZmFpbHMgYmVjYXVzZSBib3RoIGFyZSByZWZlcmVuY2VkLCBidXQgbm90ICd0aWwgY29tbWl0Ogor QkVHSU47CisgIEFMVEVSIFRBQkxFIHRlbXBvcmFsX2ZrX3JuZzJwZXIKKyAgICBBTFRFUiBDT05T VFJBSU5UIHRlbXBvcmFsX2ZrX3JuZzJwZXJfZmsKKyAgICBERUZFUlJBQkxFIElOSVRJQUxMWSBE RUZFUlJFRDsKKyAgREVMRVRFIEZST00gdGVtcG9yYWxfcGVyIFdIRVJFIGlkID0gJ1s1LDYpJyBB TkQgdmFsaWRfYXQgPSBkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAxOC0wMi0wMScpOworQ09N TUlUOworRVJST1I6ICB1cGRhdGUgb3IgZGVsZXRlIG9uIHRhYmxlICJ0ZW1wb3JhbF9wZXIiIHZp b2xhdGVzIGZvcmVpZ24ga2V5IGNvbnN0cmFpbnQgInRlbXBvcmFsX2ZrX3JuZzJwZXJfZmsiIG9u IHRhYmxlICJ0ZW1wb3JhbF9ma19ybmcycGVyIgorREVUQUlMOiAgS2V5IChpZCwgdmFsaWRfYXQp PShbNSw2KSwgWzIwMTgtMDEtMDEsMjAxOC0wMi0wMSkpIGlzIHN0aWxsIHJlZmVyZW5jZWQgZnJv bSB0YWJsZSAidGVtcG9yYWxfZmtfcm5nMnBlciIuCistLSBkZWxldGluZyBhbiB1bnJlZmVyZW5j ZWQgcGFydCBpcyBva2F5OgorREVMRVRFIEZST00gdGVtcG9yYWxfcGVyCitGT1IgUE9SVElPTiBP RiB2YWxpZF9hdCBGUk9NICcyMDE4LTAxLTAyJyBUTyAnMjAxOC0wMS0wMycKK1dIRVJFIGlkID0g J1s1LDYpJzsKKy0tIGRlbGV0aW5nIGp1c3QgYSBwYXJ0IGZhaWxzOgorREVMRVRFIEZST00gdGVt cG9yYWxfcGVyCitGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDE4LTAxLTA1JyBUTyAn MjAxOC0wMS0xMCcKK1dIRVJFIGlkID0gJ1s1LDYpJzsKK0VSUk9SOiAgdXBkYXRlIG9yIGRlbGV0 ZSBvbiB0YWJsZSAidGVtcG9yYWxfcGVyIiB2aW9sYXRlcyBmb3JlaWduIGtleSBjb25zdHJhaW50 ICJ0ZW1wb3JhbF9ma19ybmcycGVyX2ZrIiBvbiB0YWJsZSAidGVtcG9yYWxfZmtfcm5nMnBlciIK K0RFVEFJTDogIEtleSAoaWQsIHZhbGlkX2F0KT0oWzUsNiksIFsyMDE4LTAxLTAzLDIwMTgtMDIt MDEpKSBpcyBzdGlsbCByZWZlcmVuY2VkIGZyb20gdGFibGUgInRlbXBvcmFsX2ZrX3JuZzJwZXIi LgorU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9wZXIgV0hFUkUgaWQgaW4gKCdbNSw2KScsICdbNyw4 KScpIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKyAgaWQgICB8IHZhbGlkX2Zyb20gfCB2YWxpZF90 aWwgIAorLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tCisgWzUsNikgfCAyMDE4LTAx LTAxIHwgMjAxOC0wMS0wMgorIFs1LDYpIHwgMjAxOC0wMS0wMyB8IDIwMTgtMDItMDEKKygyIHJv d3MpCisKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmtfcm5nMnBlciBXSEVSRSBpZCBpbiAoJ1sz LDQpJykgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworICBpZCAgIHwgICAgICAgIHZhbGlkX2F0ICAg ICAgICAgfCBwYXJlbnRfaWQgCistLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0t LS0tLS0tLS0KKyBbMyw0KSB8IFsyMDE4LTAxLTA1LDIwMTgtMDEtMTApIHwgWzUsNikKKygxIHJv dykKKworLS0gdGhlbiBkZWxldGUgdGhlIG9iamVjdGluZyBGSyByZWNvcmQgYW5kIHRoZSBzYW1l IFBLIGRlbGV0ZSBzdWNjZWVkczoKK0RFTEVURSBGUk9NIHRlbXBvcmFsX2ZrX3JuZzJwZXIgV0hF UkUgaWQgPSAnWzMsNCknOworREVMRVRFIEZST00gdGVtcG9yYWxfcGVyIFdIRVJFIGlkID0gJ1s1 LDYpJyBBTkQgdmFsaWRfZnJvbSA9ICcyMDE4LTAxLTAxJyBBTkQgdmFsaWRfdGlsID0gJzIwMTgt MDItMDEnOworLS0KKy0tIHRlc3QgRksgcmVmZXJlbmNlZCBkZWxldGVzIFJFU1RSSUNUCistLQor VFJVTkNBVEUgdGVtcG9yYWxfcGVyLCB0ZW1wb3JhbF9ma19ybmcycGVyOworQUxURVIgVEFCTEUg dGVtcG9yYWxfZmtfcm5nMnBlcgorICBEUk9QIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcm5nMnBl cl9mazsKK0FMVEVSIFRBQkxFIHRlbXBvcmFsX2ZrX3JuZzJwZXIKKyAgQUREIENPTlNUUkFJTlQg dGVtcG9yYWxfZmtfcm5nMnBlcl9maworICBGT1JFSUdOIEtFWSAocGFyZW50X2lkLCBQRVJJT0Qg dmFsaWRfYXQpCisgIFJFRkVSRU5DRVMgdGVtcG9yYWxfcGVyCisgIE9OIERFTEVURSBSRVNUUklD VDsKK0VSUk9SOiAgdW5zdXBwb3J0ZWQgT04gREVMRVRFIGFjdGlvbiBmb3IgZm9yZWlnbiBrZXkg Y29uc3RyYWludCB1c2luZyBQRVJJT0QKKy0tCistLSBybmcycGVyIHRlc3QgT04gVVBEQVRFL0RF TEVURSBvcHRpb25zCistLQorLS0gVE9DOgorLS0gcmVmZXJlbmNlZCB1cGRhdGVzIENBU0NBREUK Ky0tIHJlZmVyZW5jZWQgZGVsZXRlcyBDQVNDQURFCistLSByZWZlcmVuY2VkIHVwZGF0ZXMgU0VU IE5VTEwKKy0tIHJlZmVyZW5jZWQgZGVsZXRlcyBTRVQgTlVMTAorLS0gcmVmZXJlbmNlZCB1cGRh dGVzIFNFVCBERUZBVUxUCistLSByZWZlcmVuY2VkIGRlbGV0ZXMgU0VUIERFRkFVTFQKKy0tIHJl ZmVyZW5jZWQgdXBkYXRlcyBDQVNDQURFICh0d28gc2NhbGFyIGNvbHMpCistLSByZWZlcmVuY2Vk IGRlbGV0ZXMgQ0FTQ0FERSAodHdvIHNjYWxhciBjb2xzKQorLS0gcmVmZXJlbmNlZCB1cGRhdGVz IFNFVCBOVUxMICh0d28gc2NhbGFyIGNvbHMpCistLSByZWZlcmVuY2VkIGRlbGV0ZXMgU0VUIE5V TEwgKHR3byBzY2FsYXIgY29scykKKy0tIHJlZmVyZW5jZWQgZGVsZXRlcyBTRVQgTlVMTCAodHdv IHNjYWxhciBjb2xzLCBTRVQgTlVMTCBzdWJzZXQpCistLSByZWZlcmVuY2VkIHVwZGF0ZXMgU0VU IERFRkFVTFQgKHR3byBzY2FsYXIgY29scykKKy0tIHJlZmVyZW5jZWQgZGVsZXRlcyBTRVQgREVG QVVMVCAodHdvIHNjYWxhciBjb2xzKQorLS0gcmVmZXJlbmNlZCBkZWxldGVzIFNFVCBERUZBVUxU ICh0d28gc2NhbGFyIGNvbHMsIFNFVCBERUZBVUxUIHN1YnNldCkKKy0tCistLSB0ZXN0IEZLIHJl ZmVyZW5jZWQgdXBkYXRlcyBDQVNDQURFCistLQorVFJVTkNBVEUgdGVtcG9yYWxfcGVyLCB0ZW1w b3JhbF9ma19ybmcycGVyOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyIChpZCwgdmFsaWRfZnJv bSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbNiw3KScsICcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEn KTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrX3JuZzJwZXIgKGlkLCB2YWxpZF9hdCwgcGFyZW50 X2lkKSBWQUxVRVMgKCdbMTAwLDEwMF0nLCAnWzIwMTgtMDEtMDEsMjAyMS0wMS0wMSknLCAnWzYs NyknKTsKK0FMVEVSIFRBQkxFIHRlbXBvcmFsX2ZrX3JuZzJwZXIKKyAgQUREIENPTlNUUkFJTlQg dGVtcG9yYWxfZmtfcm5nMnBlcl9maworICAgIEZPUkVJR04gS0VZIChwYXJlbnRfaWQsIFBFUklP RCB2YWxpZF9hdCkKKyAgICBSRUZFUkVOQ0VTIHRlbXBvcmFsX3BlcgorICAgIE9OIERFTEVURSBD QVNDQURFIE9OIFVQREFURSBDQVNDQURFOworLS0gbGVmdG92ZXJzIG9uIGJvdGggc2lkZXM6CitV UERBVEUgdGVtcG9yYWxfcGVyIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMTktMDEt MDEnIFRPICcyMDIwLTAxLTAxJyBTRVQgaWQgPSAnWzcsOCknIFdIRVJFIGlkID0gJ1s2LDcpJzsK K1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmtfcm5nMnBlciBXSEVSRSBpZCA9ICdbMTAwLDEwMF0n IE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKyAgICBpZCAgICAgfCAgICAgICAgdmFsaWRfYXQgICAg ICAgICB8IHBhcmVudF9pZCAKKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0r LS0tLS0tLS0tLS0KKyBbMTAwLDEwMSkgfCBbMjAxOC0wMS0wMSwyMDE5LTAxLTAxKSB8IFs2LDcp CisgWzEwMCwxMDEpIHwgWzIwMTktMDEtMDEsMjAyMC0wMS0wMSkgfCBbNyw4KQorIFsxMDAsMTAx KSB8IFsyMDIwLTAxLTAxLDIwMjEtMDEtMDEpIHwgWzYsNykKKygzIHJvd3MpCisKKy0tIG5vbi1G UE8gdXBkYXRlOgorVVBEQVRFIHRlbXBvcmFsX3BlciBTRVQgaWQgPSAnWzcsOCknIFdIRVJFIGlk ID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmtfcm5nMnBlciBXSEVSRSBpZCA9 ICdbMTAwLDEwMF0nIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKyAgICBpZCAgICAgfCAgICAgICAg dmFsaWRfYXQgICAgICAgICB8IHBhcmVudF9pZCAKKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0KKyBbMTAwLDEwMSkgfCBbMjAxOC0wMS0wMSwyMDE5LTAx LTAxKSB8IFs3LDgpCisgWzEwMCwxMDEpIHwgWzIwMTktMDEtMDEsMjAyMC0wMS0wMSkgfCBbNyw4 KQorIFsxMDAsMTAxKSB8IFsyMDIwLTAxLTAxLDIwMjEtMDEtMDEpIHwgWzcsOCkKKygzIHJvd3Mp CisKKy0tIEZLIGFjcm9zcyB0d28gcmVmZXJlbmNlZCByb3dzOgorSU5TRVJUIElOVE8gdGVtcG9y YWxfcGVyIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbOCw5KScsICcyMDE4 LTAxLTAxJywgJzIwMjAtMDEtMDEnKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlciAoaWQsIHZh bGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzgsOSknLCAnMjAyMC0wMS0wMScsICcyMDIx LTAxLTAxJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ma19ybmcycGVyIChpZCwgdmFsaWRfYXQs IHBhcmVudF9pZCkgVkFMVUVTICgnWzIwMCwyMDBdJywgJ1syMDE4LTAxLTAxLDIwMjEtMDEtMDEp JywgJ1s4LDkpJyk7CitVUERBVEUgdGVtcG9yYWxfcGVyIFNFVCBpZCA9ICdbOSwxMCknIFdIRVJF IGlkID0gJ1s4LDkpJyBBTkQgdmFsaWRfYXQgQD4gJzIwMTktMDEtMDEnOjpkYXRlOworU0VMRUNU ICogRlJPTSB0ZW1wb3JhbF9ma19ybmcycGVyIFdIRVJFIGlkID0gJ1syMDAsMjAwXScgT1JERVIg QlkgaWQsIHZhbGlkX2F0OworICAgIGlkICAgICB8ICAgICAgICB2YWxpZF9hdCAgICAgICAgIHwg cGFyZW50X2lkIAorLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0t LS0tLQorIFsyMDAsMjAxKSB8IFsyMDE4LTAxLTAxLDIwMjAtMDEtMDEpIHwgWzksMTApCisgWzIw MCwyMDEpIHwgWzIwMjAtMDEtMDEsMjAyMS0wMS0wMSkgfCBbOCw5KQorKDIgcm93cykKKworLS0K Ky0tIHRlc3QgRksgcmVmZXJlbmNlZCBkZWxldGVzIENBU0NBREUKKy0tCitUUlVOQ0FURSB0ZW1w b3JhbF9wZXIsIHRlbXBvcmFsX2ZrX3JuZzJwZXI7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIg KGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1s2LDcpJywgJzIwMTgtMDEtMDEn LCAnMjAyMS0wMS0wMScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmtfcm5nMnBlciAoaWQsIHZh bGlkX2F0LCBwYXJlbnRfaWQpIFZBTFVFUyAoJ1sxMDAsMTAwXScsICdbMjAxOC0wMS0wMSwyMDIx LTAxLTAxKScsICdbNiw3KScpOworLS0gbGVmdG92ZXJzIG9uIGJvdGggc2lkZXM6CitERUxFVEUg RlJPTSB0ZW1wb3JhbF9wZXIgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAxOS0wMS0w MScgVE8gJzIwMjAtMDEtMDEnIFdIRVJFIGlkID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVt cG9yYWxfZmtfcm5nMnBlciBXSEVSRSBpZCA9ICdbMTAwLDEwMF0nIE9SREVSIEJZIGlkLCB2YWxp ZF9hdDsKKyAgICBpZCAgICAgfCAgICAgICAgdmFsaWRfYXQgICAgICAgICB8IHBhcmVudF9pZCAK Ky0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0KKyBbMTAw LDEwMSkgfCBbMjAxOC0wMS0wMSwyMDE5LTAxLTAxKSB8IFs2LDcpCisgWzEwMCwxMDEpIHwgWzIw MjAtMDEtMDEsMjAyMS0wMS0wMSkgfCBbNiw3KQorKDIgcm93cykKKworLS0gbm9uLUZQTyBkZWxl dGU6CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9wZXIgV0hFUkUgaWQgPSAnWzYsNyknOworU0VMRUNU ICogRlJPTSB0ZW1wb3JhbF9ma19ybmcycGVyIFdIRVJFIGlkID0gJ1sxMDAsMTAwXScgT1JERVIg QlkgaWQsIHZhbGlkX2F0OworIGlkIHwgdmFsaWRfYXQgfCBwYXJlbnRfaWQgCistLS0tKy0tLS0t LS0tLS0rLS0tLS0tLS0tLS0KKygwIHJvd3MpCisKKy0tIEZLIGFjcm9zcyB0d28gcmVmZXJlbmNl ZCByb3dzOgorSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRf dGlsKSBWQUxVRVMgKCdbOCw5KScsICcyMDE4LTAxLTAxJywgJzIwMjAtMDEtMDEnKTsKK0lOU0VS VCBJTlRPIHRlbXBvcmFsX3BlciAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgn WzgsOSknLCAnMjAyMC0wMS0wMScsICcyMDIxLTAxLTAxJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3Jh bF9ma19ybmcycGVyIChpZCwgdmFsaWRfYXQsIHBhcmVudF9pZCkgVkFMVUVTICgnWzIwMCwyMDBd JywgJ1syMDE4LTAxLTAxLDIwMjEtMDEtMDEpJywgJ1s4LDkpJyk7CitERUxFVEUgRlJPTSB0ZW1w b3JhbF9wZXIgV0hFUkUgaWQgPSAnWzgsOSknIEFORCB2YWxpZF9hdCBAPiAnMjAxOS0wMS0wMSc6 OmRhdGU7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrX3JuZzJwZXIgV0hFUkUgaWQgPSAnWzIw MCwyMDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisgICAgaWQgICAgIHwgICAgICAgIHZhbGlk X2F0ICAgICAgICAgfCBwYXJlbnRfaWQgCistLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tKy0tLS0tLS0tLS0tCisgWzIwMCwyMDEpIHwgWzIwMjAtMDEtMDEsMjAyMS0wMS0wMSkg fCBbOCw5KQorKDEgcm93KQorCistLQorLS0gdGVzdCBGSyByZWZlcmVuY2VkIHVwZGF0ZXMgU0VU IE5VTEwKKy0tCitUUlVOQ0FURSB0ZW1wb3JhbF9wZXIsIHRlbXBvcmFsX2ZrX3JuZzJwZXI7CitJ TlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVF UyAoJ1s2LDcpJywgJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpOworSU5TRVJUIElOVE8gdGVt cG9yYWxfZmtfcm5nMnBlciAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQpIFZBTFVFUyAoJ1sxMDAs MTAwXScsICdbMjAxOC0wMS0wMSwyMDIxLTAxLTAxKScsICdbNiw3KScpOworQUxURVIgVEFCTEUg dGVtcG9yYWxfZmtfcm5nMnBlcgorICBEUk9QIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcm5nMnBl cl9maywKKyAgQUREIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcm5nMnBlcl9maworICAgIEZPUkVJ R04gS0VZIChwYXJlbnRfaWQsIFBFUklPRCB2YWxpZF9hdCkKKyAgICBSRUZFUkVOQ0VTIHRlbXBv cmFsX3BlcgorICAgIE9OIERFTEVURSBTRVQgTlVMTCBPTiBVUERBVEUgU0VUIE5VTEw7CistLSBs ZWZ0b3ZlcnMgb24gYm90aCBzaWRlczoKK1VQREFURSB0ZW1wb3JhbF9wZXIgRk9SIFBPUlRJT04g T0YgdmFsaWRfYXQgRlJPTSAnMjAxOS0wMS0wMScgVE8gJzIwMjAtMDEtMDEnIFNFVCBpZCA9ICdb Nyw4KScgV0hFUkUgaWQgPSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9ma19ybmcy cGVyIFdIRVJFIGlkID0gJ1sxMDAsMTAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworICAgIGlk ICAgICB8ICAgICAgICB2YWxpZF9hdCAgICAgICAgIHwgcGFyZW50X2lkIAorLS0tLS0tLS0tLS0r LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLQorIFsxMDAsMTAxKSB8IFsyMDE4 LTAxLTAxLDIwMTktMDEtMDEpIHwgWzYsNykKKyBbMTAwLDEwMSkgfCBbMjAxOS0wMS0wMSwyMDIw LTAxLTAxKSB8IAorIFsxMDAsMTAxKSB8IFsyMDIwLTAxLTAxLDIwMjEtMDEtMDEpIHwgWzYsNykK KygzIHJvd3MpCisKKy0tIG5vbi1GUE8gdXBkYXRlOgorVVBEQVRFIHRlbXBvcmFsX3BlciBTRVQg aWQgPSAnWzcsOCknIFdIRVJFIGlkID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxf Zmtfcm5nMnBlciBXSEVSRSBpZCA9ICdbMTAwLDEwMF0nIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsK KyAgICBpZCAgICAgfCAgICAgICAgdmFsaWRfYXQgICAgICAgICB8IHBhcmVudF9pZCAKKy0tLS0t LS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0KKyBbMTAwLDEwMSkg fCBbMjAxOC0wMS0wMSwyMDE5LTAxLTAxKSB8IAorIFsxMDAsMTAxKSB8IFsyMDE5LTAxLTAxLDIw MjAtMDEtMDEpIHwgCisgWzEwMCwxMDEpIHwgWzIwMjAtMDEtMDEsMjAyMS0wMS0wMSkgfCAKKygz IHJvd3MpCisKKy0tIEZLIGFjcm9zcyB0d28gcmVmZXJlbmNlZCByb3dzOgorSU5TRVJUIElOVE8g dGVtcG9yYWxfcGVyIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbOCw5KScs ICcyMDE4LTAxLTAxJywgJzIwMjAtMDEtMDEnKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlciAo aWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzgsOSknLCAnMjAyMC0wMS0wMScs ICcyMDIxLTAxLTAxJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ma19ybmcycGVyIChpZCwgdmFs aWRfYXQsIHBhcmVudF9pZCkgVkFMVUVTICgnWzIwMCwyMDBdJywgJ1syMDE4LTAxLTAxLDIwMjEt MDEtMDEpJywgJ1s4LDkpJyk7CitVUERBVEUgdGVtcG9yYWxfcGVyIFNFVCBpZCA9ICdbOSwxMCkn IFdIRVJFIGlkID0gJ1s4LDkpJyBBTkQgdmFsaWRfYXQgQD4gJzIwMTktMDEtMDEnOjpkYXRlOwor U0VMRUNUICogRlJPTSB0ZW1wb3JhbF9ma19ybmcycGVyIFdIRVJFIGlkID0gJ1syMDAsMjAwXScg T1JERVIgQlkgaWQsIHZhbGlkX2F0OworICAgIGlkICAgICB8ICAgICAgICB2YWxpZF9hdCAgICAg ICAgIHwgcGFyZW50X2lkIAorLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSst LS0tLS0tLS0tLQorIFsyMDAsMjAxKSB8IFsyMDE4LTAxLTAxLDIwMjAtMDEtMDEpIHwgCisgWzIw MCwyMDEpIHwgWzIwMjAtMDEtMDEsMjAyMS0wMS0wMSkgfCBbOCw5KQorKDIgcm93cykKKworLS0K Ky0tIHRlc3QgRksgcmVmZXJlbmNlZCBkZWxldGVzIFNFVCBOVUxMCistLQorVFJVTkNBVEUgdGVt cG9yYWxfcGVyLCB0ZW1wb3JhbF9ma19ybmcycGVyOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVy IChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbNiw3KScsICcyMDE4LTAxLTAx JywgJzIwMjEtMDEtMDEnKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrX3JuZzJwZXIgKGlkLCB2 YWxpZF9hdCwgcGFyZW50X2lkKSBWQUxVRVMgKCdbMTAwLDEwMF0nLCAnWzIwMTgtMDEtMDEsMjAy MS0wMS0wMSknLCAnWzYsNyknKTsKKy0tIGxlZnRvdmVycyBvbiBib3RoIHNpZGVzOgorREVMRVRF IEZST00gdGVtcG9yYWxfcGVyIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMTktMDEt MDEnIFRPICcyMDIwLTAxLTAxJyBXSEVSRSBpZCA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRl bXBvcmFsX2ZrX3JuZzJwZXIgV0hFUkUgaWQgPSAnWzEwMCwxMDBdJyBPUkRFUiBCWSBpZCwgdmFs aWRfYXQ7CisgICAgaWQgICAgIHwgICAgICAgIHZhbGlkX2F0ICAgICAgICAgfCBwYXJlbnRfaWQg CistLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tCisgWzEw MCwxMDEpIHwgWzIwMTgtMDEtMDEsMjAxOS0wMS0wMSkgfCBbNiw3KQorIFsxMDAsMTAxKSB8IFsy MDE5LTAxLTAxLDIwMjAtMDEtMDEpIHwgCisgWzEwMCwxMDEpIHwgWzIwMjAtMDEtMDEsMjAyMS0w MS0wMSkgfCBbNiw3KQorKDMgcm93cykKKworLS0gbm9uLUZQTyBkZWxldGU6CitERUxFVEUgRlJP TSB0ZW1wb3JhbF9wZXIgV0hFUkUgaWQgPSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1wb3Jh bF9ma19ybmcycGVyIFdIRVJFIGlkID0gJ1sxMDAsMTAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0 OworICAgIGlkICAgICB8ICAgICAgICB2YWxpZF9hdCAgICAgICAgIHwgcGFyZW50X2lkIAorLS0t LS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLQorIFsxMDAsMTAx KSB8IFsyMDE4LTAxLTAxLDIwMTktMDEtMDEpIHwgCisgWzEwMCwxMDEpIHwgWzIwMTktMDEtMDEs MjAyMC0wMS0wMSkgfCAKKyBbMTAwLDEwMSkgfCBbMjAyMC0wMS0wMSwyMDIxLTAxLTAxKSB8IAor KDMgcm93cykKKworLS0gRksgYWNyb3NzIHR3byByZWZlcmVuY2VkIHJvd3M6CitJTlNFUlQgSU5U TyB0ZW1wb3JhbF9wZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1s4LDkp JywgJzIwMTgtMDEtMDEnLCAnMjAyMC0wMS0wMScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVy IChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbOCw5KScsICcyMDIwLTAxLTAx JywgJzIwMjEtMDEtMDEnKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrX3JuZzJwZXIgKGlkLCB2 YWxpZF9hdCwgcGFyZW50X2lkKSBWQUxVRVMgKCdbMjAwLDIwMF0nLCAnWzIwMTgtMDEtMDEsMjAy MS0wMS0wMSknLCAnWzgsOSknKTsKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3BlciBXSEVSRSBpZCA9 ICdbOCw5KScgQU5EIHZhbGlkX2F0IEA+ICcyMDE5LTAxLTAxJzo6ZGF0ZTsKK1NFTEVDVCAqIEZS T00gdGVtcG9yYWxfZmtfcm5nMnBlciBXSEVSRSBpZCA9ICdbMjAwLDIwMF0nIE9SREVSIEJZIGlk LCB2YWxpZF9hdDsKKyAgICBpZCAgICAgfCAgICAgICAgdmFsaWRfYXQgICAgICAgICB8IHBhcmVu dF9pZCAKKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0K KyBbMjAwLDIwMSkgfCBbMjAxOC0wMS0wMSwyMDIwLTAxLTAxKSB8IAorIFsyMDAsMjAxKSB8IFsy MDIwLTAxLTAxLDIwMjEtMDEtMDEpIHwgWzgsOSkKKygyIHJvd3MpCisKKy0tCistLSB0ZXN0IEZL IHJlZmVyZW5jZWQgdXBkYXRlcyBTRVQgREVGQVVMVAorLS0KK1RSVU5DQVRFIHRlbXBvcmFsX3Bl ciwgdGVtcG9yYWxfZmtfcm5nMnBlcjsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlciAoaWQsIHZh bGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWy0xLC0xXScsIG51bGwsIG51bGwpOworSU5T RVJUIElOVE8gdGVtcG9yYWxfcGVyIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMg KCdbNiw3KScsICcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKTsKK0lOU0VSVCBJTlRPIHRlbXBv cmFsX2ZrX3JuZzJwZXIgKGlkLCB2YWxpZF9hdCwgcGFyZW50X2lkKSBWQUxVRVMgKCdbMTAwLDEw MF0nLCAnWzIwMTgtMDEtMDEsMjAyMS0wMS0wMSknLCAnWzYsNyknKTsKK0FMVEVSIFRBQkxFIHRl bXBvcmFsX2ZrX3JuZzJwZXIKKyAgQUxURVIgQ09MVU1OIHBhcmVudF9pZCBTRVQgREVGQVVMVCAn Wy0xLC0xXScsCisgIERST1AgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19ybmcycGVyX2ZrLAorICBB REQgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19ybmcycGVyX2ZrCisgICAgRk9SRUlHTiBLRVkgKHBh cmVudF9pZCwgUEVSSU9EIHZhbGlkX2F0KQorICAgIFJFRkVSRU5DRVMgdGVtcG9yYWxfcGVyCisg ICAgT04gREVMRVRFIFNFVCBERUZBVUxUIE9OIFVQREFURSBTRVQgREVGQVVMVDsKKy0tIGxlZnRv dmVycyBvbiBib3RoIHNpZGVzOgorVVBEQVRFIHRlbXBvcmFsX3BlciBGT1IgUE9SVElPTiBPRiB2 YWxpZF9hdCBGUk9NICcyMDE5LTAxLTAxJyBUTyAnMjAyMC0wMS0wMScgU0VUIGlkID0gJ1s3LDgp JyBXSEVSRSBpZCA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrX3JuZzJwZXIg V0hFUkUgaWQgPSAnWzEwMCwxMDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisgICAgaWQgICAg IHwgICAgICAgIHZhbGlkX2F0ICAgICAgICAgfCBwYXJlbnRfaWQgCistLS0tLS0tLS0tLSstLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tCisgWzEwMCwxMDEpIHwgWzIwMTgtMDEt MDEsMjAxOS0wMS0wMSkgfCBbNiw3KQorIFsxMDAsMTAxKSB8IFsyMDE5LTAxLTAxLDIwMjAtMDEt MDEpIHwgWy0xLDApCisgWzEwMCwxMDEpIHwgWzIwMjAtMDEtMDEsMjAyMS0wMS0wMSkgfCBbNiw3 KQorKDMgcm93cykKKworLS0gbm9uLUZQTyB1cGRhdGU6CitVUERBVEUgdGVtcG9yYWxfcGVyIFNF VCBpZCA9ICdbNyw4KScgV0hFUkUgaWQgPSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1wb3Jh bF9ma19ybmcycGVyIFdIRVJFIGlkID0gJ1sxMDAsMTAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0 OworICAgIGlkICAgICB8ICAgICAgICB2YWxpZF9hdCAgICAgICAgIHwgcGFyZW50X2lkIAorLS0t LS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLQorIFsxMDAsMTAx KSB8IFsyMDE4LTAxLTAxLDIwMTktMDEtMDEpIHwgWy0xLDApCisgWzEwMCwxMDEpIHwgWzIwMTkt MDEtMDEsMjAyMC0wMS0wMSkgfCBbLTEsMCkKKyBbMTAwLDEwMSkgfCBbMjAyMC0wMS0wMSwyMDIx LTAxLTAxKSB8IFstMSwwKQorKDMgcm93cykKKworLS0gRksgYWNyb3NzIHR3byByZWZlcmVuY2Vk IHJvd3M6CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90 aWwpIFZBTFVFUyAoJ1s4LDkpJywgJzIwMTgtMDEtMDEnLCAnMjAyMC0wMS0wMScpOworSU5TRVJU IElOVE8gdGVtcG9yYWxfcGVyIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdb OCw5KScsICcyMDIwLTAxLTAxJywgJzIwMjEtMDEtMDEnKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFs X2ZrX3JuZzJwZXIgKGlkLCB2YWxpZF9hdCwgcGFyZW50X2lkKSBWQUxVRVMgKCdbMjAwLDIwMF0n LCAnWzIwMTgtMDEtMDEsMjAyMS0wMS0wMSknLCAnWzgsOSknKTsKK1VQREFURSB0ZW1wb3JhbF9w ZXIgU0VUIGlkID0gJ1s5LDEwKScgV0hFUkUgaWQgPSAnWzgsOSknIEFORCB2YWxpZF9hdCBAPiAn MjAxOS0wMS0wMSc6OmRhdGU7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrX3JuZzJwZXIgV0hF UkUgaWQgPSAnWzIwMCwyMDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisgICAgaWQgICAgIHwg ICAgICAgIHZhbGlkX2F0ICAgICAgICAgfCBwYXJlbnRfaWQgCistLS0tLS0tLS0tLSstLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tCisgWzIwMCwyMDEpIHwgWzIwMTgtMDEtMDEs MjAyMC0wMS0wMSkgfCBbLTEsMCkKKyBbMjAwLDIwMSkgfCBbMjAyMC0wMS0wMSwyMDIxLTAxLTAx KSB8IFs4LDkpCisoMiByb3dzKQorCistLQorLS0gdGVzdCBGSyByZWZlcmVuY2VkIGRlbGV0ZXMg U0VUIERFRkFVTFQKKy0tCitUUlVOQ0FURSB0ZW1wb3JhbF9wZXIsIHRlbXBvcmFsX2ZrX3JuZzJw ZXI7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwp IFZBTFVFUyAoJ1stMSwtMV0nLCBudWxsLCBudWxsKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3Bl ciAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzYsNyknLCAnMjAxOC0wMS0w MScsICcyMDIxLTAxLTAxJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ma19ybmcycGVyIChpZCwg dmFsaWRfYXQsIHBhcmVudF9pZCkgVkFMVUVTICgnWzEwMCwxMDBdJywgJ1syMDE4LTAxLTAxLDIw MjEtMDEtMDEpJywgJ1s2LDcpJyk7CistLSBsZWZ0b3ZlcnMgb24gYm90aCBzaWRlczoKK0RFTEVU RSBGUk9NIHRlbXBvcmFsX3BlciBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDE5LTAx LTAxJyBUTyAnMjAyMC0wMS0wMScgV0hFUkUgaWQgPSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0 ZW1wb3JhbF9ma19ybmcycGVyIFdIRVJFIGlkID0gJ1sxMDAsMTAwXScgT1JERVIgQlkgaWQsIHZh bGlkX2F0OworICAgIGlkICAgICB8ICAgICAgICB2YWxpZF9hdCAgICAgICAgIHwgcGFyZW50X2lk IAorLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLQorIFsx MDAsMTAxKSB8IFsyMDE4LTAxLTAxLDIwMTktMDEtMDEpIHwgWzYsNykKKyBbMTAwLDEwMSkgfCBb MjAxOS0wMS0wMSwyMDIwLTAxLTAxKSB8IFstMSwwKQorIFsxMDAsMTAxKSB8IFsyMDIwLTAxLTAx LDIwMjEtMDEtMDEpIHwgWzYsNykKKygzIHJvd3MpCisKKy0tIG5vbi1GUE8gdXBkYXRlOgorREVM RVRFIEZST00gdGVtcG9yYWxfcGVyIFdIRVJFIGlkID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00g dGVtcG9yYWxfZmtfcm5nMnBlciBXSEVSRSBpZCA9ICdbMTAwLDEwMF0nIE9SREVSIEJZIGlkLCB2 YWxpZF9hdDsKKyAgICBpZCAgICAgfCAgICAgICAgdmFsaWRfYXQgICAgICAgICB8IHBhcmVudF9p ZCAKKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0KKyBb MTAwLDEwMSkgfCBbMjAxOC0wMS0wMSwyMDE5LTAxLTAxKSB8IFstMSwwKQorIFsxMDAsMTAxKSB8 IFsyMDE5LTAxLTAxLDIwMjAtMDEtMDEpIHwgWy0xLDApCisgWzEwMCwxMDEpIHwgWzIwMjAtMDEt MDEsMjAyMS0wMS0wMSkgfCBbLTEsMCkKKygzIHJvd3MpCisKKy0tIEZLIGFjcm9zcyB0d28gcmVm ZXJlbmNlZCByb3dzOgorSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyIChpZCwgdmFsaWRfZnJvbSwg dmFsaWRfdGlsKSBWQUxVRVMgKCdbOCw5KScsICcyMDE4LTAxLTAxJywgJzIwMjAtMDEtMDEnKTsK K0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlciAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFM VUVTICgnWzgsOSknLCAnMjAyMC0wMS0wMScsICcyMDIxLTAxLTAxJyk7CitJTlNFUlQgSU5UTyB0 ZW1wb3JhbF9ma19ybmcycGVyIChpZCwgdmFsaWRfYXQsIHBhcmVudF9pZCkgVkFMVUVTICgnWzIw MCwyMDBdJywgJ1syMDE4LTAxLTAxLDIwMjEtMDEtMDEpJywgJ1s4LDkpJyk7CitERUxFVEUgRlJP TSB0ZW1wb3JhbF9wZXIgV0hFUkUgaWQgPSAnWzgsOSknIEFORCB2YWxpZF9hdCBAPiAnMjAxOS0w MS0wMSc6OmRhdGU7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrX3JuZzJwZXIgV0hFUkUgaWQg PSAnWzIwMCwyMDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisgICAgaWQgICAgIHwgICAgICAg IHZhbGlkX2F0ICAgICAgICAgfCBwYXJlbnRfaWQgCistLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tCisgWzIwMCwyMDEpIHwgWzIwMTgtMDEtMDEsMjAyMC0w MS0wMSkgfCBbLTEsMCkKKyBbMjAwLDIwMSkgfCBbMjAyMC0wMS0wMSwyMDIxLTAxLTAxKSB8IFs4 LDkpCisoMiByb3dzKQorCistLQorLS0gdGVzdCBGSyByZWZlcmVuY2VkIHVwZGF0ZXMgQ0FTQ0FE RSAodHdvIHNjYWxhciBjb2xzKQorLS0KK1RSVU5DQVRFIHRlbXBvcmFsX3BlcjIsIHRlbXBvcmFs X2ZrMl9ybmcycGVyOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyMiAoaWQxLCBpZDIsIHZhbGlk X2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzYsNyknLCAnWzYsNyknLCAnMjAxOC0wMS0wMScs ICcyMDIxLTAxLTAxJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9mazJfcm5nMnBlciAoaWQsIHZh bGlkX2F0LCBwYXJlbnRfaWQxLCBwYXJlbnRfaWQyKSBWQUxVRVMgKCdbMTAwLDEwMF0nLCAnWzIw MTgtMDEtMDEsMjAyMS0wMS0wMSknLCAnWzYsNyknLCAnWzYsNyknKTsKK0FMVEVSIFRBQkxFIHRl bXBvcmFsX2ZrMl9ybmcycGVyCisgIERST1AgQ09OU1RSQUlOVCB0ZW1wb3JhbF9mazJfcm5nMnBl cl9maywKKyAgQUREIENPTlNUUkFJTlQgdGVtcG9yYWxfZmsyX3JuZzJwZXJfZmsKKyAgICBGT1JF SUdOIEtFWSAocGFyZW50X2lkMSwgcGFyZW50X2lkMiwgUEVSSU9EIHZhbGlkX2F0KQorICAgIFJF RkVSRU5DRVMgdGVtcG9yYWxfcGVyMgorICAgIE9OIERFTEVURSBDQVNDQURFIE9OIFVQREFURSBD QVNDQURFOworLS0gbGVmdG92ZXJzIG9uIGJvdGggc2lkZXM6CitVUERBVEUgdGVtcG9yYWxfcGVy MiBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDE5LTAxLTAxJyBUTyAnMjAyMC0wMS0w MScgU0VUIGlkMSA9ICdbNyw4KScgV0hFUkUgaWQxID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00g dGVtcG9yYWxfZmsyX3JuZzJwZXIgV0hFUkUgaWQgPSAnWzEwMCwxMDBdJyBPUkRFUiBCWSBpZCwg dmFsaWRfYXQ7CisgICAgaWQgICAgIHwgICAgICAgIHZhbGlkX2F0ICAgICAgICAgfCBwYXJlbnRf aWQxIHwgcGFyZW50X2lkMiAKKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0r LS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLQorIFsxMDAsMTAxKSB8IFsyMDE4LTAxLTAxLDIwMTkt MDEtMDEpIHwgWzYsNykgICAgICB8IFs2LDcpCisgWzEwMCwxMDEpIHwgWzIwMTktMDEtMDEsMjAy MC0wMS0wMSkgfCBbNyw4KSAgICAgIHwgWzYsNykKKyBbMTAwLDEwMSkgfCBbMjAyMC0wMS0wMSwy MDIxLTAxLTAxKSB8IFs2LDcpICAgICAgfCBbNiw3KQorKDMgcm93cykKKworLS0gbm9uLUZQTyB1 cGRhdGU6CitVUERBVEUgdGVtcG9yYWxfcGVyMiBTRVQgaWQxID0gJ1s3LDgpJyBXSEVSRSBpZDEg PSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9mazJfcm5nMnBlciBXSEVSRSBpZCA9 ICdbMTAwLDEwMF0nIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKyAgICBpZCAgICAgfCAgICAgICAg dmFsaWRfYXQgICAgICAgICB8IHBhcmVudF9pZDEgfCBwYXJlbnRfaWQyIAorLS0tLS0tLS0tLS0r LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tCisgWzEw MCwxMDEpIHwgWzIwMTgtMDEtMDEsMjAxOS0wMS0wMSkgfCBbNyw4KSAgICAgIHwgWzYsNykKKyBb MTAwLDEwMSkgfCBbMjAxOS0wMS0wMSwyMDIwLTAxLTAxKSB8IFs3LDgpICAgICAgfCBbNiw3KQor IFsxMDAsMTAxKSB8IFsyMDIwLTAxLTAxLDIwMjEtMDEtMDEpIHwgWzcsOCkgICAgICB8IFs2LDcp CisoMyByb3dzKQorCistLSBGSyBhY3Jvc3MgdHdvIHJlZmVyZW5jZWQgcm93czoKK0lOU0VSVCBJ TlRPIHRlbXBvcmFsX3BlcjIgKGlkMSwgaWQyLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVF UyAoJ1s4LDkpJywgJ1s4LDkpJywgJzIwMTgtMDEtMDEnLCAnMjAyMC0wMS0wMScpOworSU5TRVJU IElOVE8gdGVtcG9yYWxfcGVyMiAoaWQxLCBpZDIsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFM VUVTICgnWzgsOSknLCAnWzgsOSknLCAnMjAyMC0wMS0wMScsICcyMDIxLTAxLTAxJyk7CitJTlNF UlQgSU5UTyB0ZW1wb3JhbF9mazJfcm5nMnBlciAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQxLCBw YXJlbnRfaWQyKSBWQUxVRVMgKCdbMjAwLDIwMF0nLCAnWzIwMTgtMDEtMDEsMjAyMS0wMS0wMSkn LCAnWzgsOSknLCAnWzgsOSknKTsKK1VQREFURSB0ZW1wb3JhbF9wZXIyIFNFVCBpZDEgPSAnWzks MTApJyBXSEVSRSBpZDEgPSAnWzgsOSknIEFORCB2YWxpZF9hdCBAPiAnMjAxOS0wMS0wMSc6OmRh dGU7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9ybmcycGVyIFdIRVJFIGlkID0gJ1syMDAs MjAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworICAgIGlkICAgICB8ICAgICAgICB2YWxpZF9h dCAgICAgICAgIHwgcGFyZW50X2lkMSB8IHBhcmVudF9pZDIgCistLS0tLS0tLS0tLSstLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0KKyBbMjAwLDIwMSkg fCBbMjAxOC0wMS0wMSwyMDIwLTAxLTAxKSB8IFs5LDEwKSAgICAgfCBbOCw5KQorIFsyMDAsMjAx KSB8IFsyMDIwLTAxLTAxLDIwMjEtMDEtMDEpIHwgWzgsOSkgICAgICB8IFs4LDkpCisoMiByb3dz KQorCistLQorLS0gdGVzdCBGSyByZWZlcmVuY2VkIGRlbGV0ZXMgQ0FTQ0FERSAodHdvIHNjYWxh ciBjb2xzKQorLS0KK1RSVU5DQVRFIHRlbXBvcmFsX3BlcjIsIHRlbXBvcmFsX2ZrMl9ybmcycGVy OworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyMiAoaWQxLCBpZDIsIHZhbGlkX2Zyb20sIHZhbGlk X3RpbCkgVkFMVUVTICgnWzYsNyknLCAnWzYsNyknLCAnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAx Jyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9mazJfcm5nMnBlciAoaWQsIHZhbGlkX2F0LCBwYXJl bnRfaWQxLCBwYXJlbnRfaWQyKSBWQUxVRVMgKCdbMTAwLDEwMF0nLCAnWzIwMTgtMDEtMDEsMjAy MS0wMS0wMSknLCAnWzYsNyknLCAnWzYsNyknKTsKKy0tIGxlZnRvdmVycyBvbiBib3RoIHNpZGVz OgorREVMRVRFIEZST00gdGVtcG9yYWxfcGVyMiBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9N ICcyMDE5LTAxLTAxJyBUTyAnMjAyMC0wMS0wMScgV0hFUkUgaWQxID0gJ1s2LDcpJzsKK1NFTEVD VCAqIEZST00gdGVtcG9yYWxfZmsyX3JuZzJwZXIgV0hFUkUgaWQgPSAnWzEwMCwxMDBdJyBPUkRF UiBCWSBpZCwgdmFsaWRfYXQ7CisgICAgaWQgICAgIHwgICAgICAgIHZhbGlkX2F0ICAgICAgICAg fCBwYXJlbnRfaWQxIHwgcGFyZW50X2lkMiAKKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLQorIFsxMDAsMTAxKSB8IFsyMDE4LTAx LTAxLDIwMTktMDEtMDEpIHwgWzYsNykgICAgICB8IFs2LDcpCisgWzEwMCwxMDEpIHwgWzIwMjAt MDEtMDEsMjAyMS0wMS0wMSkgfCBbNiw3KSAgICAgIHwgWzYsNykKKygyIHJvd3MpCisKKy0tIG5v bi1GUE8gZGVsZXRlOgorREVMRVRFIEZST00gdGVtcG9yYWxfcGVyMiBXSEVSRSBpZDEgPSAnWzYs NyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9mazJfcm5nMnBlciBXSEVSRSBpZCA9ICdbMTAw LDEwMF0nIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKyBpZCB8IHZhbGlkX2F0IHwgcGFyZW50X2lk MSB8IHBhcmVudF9pZDIgCistLS0tKy0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0t LQorKDAgcm93cykKKworLS0gRksgYWNyb3NzIHR3byByZWZlcmVuY2VkIHJvd3M6CitJTlNFUlQg SU5UTyB0ZW1wb3JhbF9wZXIyIChpZDEsIGlkMiwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxV RVMgKCdbOCw5KScsICdbOCw5KScsICcyMDE4LTAxLTAxJywgJzIwMjAtMDEtMDEnKTsKK0lOU0VS VCBJTlRPIHRlbXBvcmFsX3BlcjIgKGlkMSwgaWQyLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZB TFVFUyAoJ1s4LDkpJywgJ1s4LDkpJywgJzIwMjAtMDEtMDEnLCAnMjAyMS0wMS0wMScpOworSU5T RVJUIElOVE8gdGVtcG9yYWxfZmsyX3JuZzJwZXIgKGlkLCB2YWxpZF9hdCwgcGFyZW50X2lkMSwg cGFyZW50X2lkMikgVkFMVUVTICgnWzIwMCwyMDBdJywgJ1syMDE4LTAxLTAxLDIwMjEtMDEtMDEp JywgJ1s4LDkpJywgJ1s4LDkpJyk7CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9wZXIyIFdIRVJFIGlk MSA9ICdbOCw5KScgQU5EIHZhbGlkX2F0IEA+ICcyMDE5LTAxLTAxJzo6ZGF0ZTsKK1NFTEVDVCAq IEZST00gdGVtcG9yYWxfZmsyX3JuZzJwZXIgV0hFUkUgaWQgPSAnWzIwMCwyMDBdJyBPUkRFUiBC WSBpZCwgdmFsaWRfYXQ7CisgICAgaWQgICAgIHwgICAgICAgIHZhbGlkX2F0ICAgICAgICAgfCBw YXJlbnRfaWQxIHwgcGFyZW50X2lkMiAKKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLQorIFsyMDAsMjAxKSB8IFsyMDIwLTAxLTAx LDIwMjEtMDEtMDEpIHwgWzgsOSkgICAgICB8IFs4LDkpCisoMSByb3cpCisKKy0tCistLSB0ZXN0 IEZLIHJlZmVyZW5jZWQgdXBkYXRlcyBTRVQgTlVMTCAodHdvIHNjYWxhciBjb2xzKQorLS0KK1RS VU5DQVRFIHRlbXBvcmFsX3BlcjIsIHRlbXBvcmFsX2ZrMl9ybmcycGVyOworSU5TRVJUIElOVE8g dGVtcG9yYWxfcGVyMiAoaWQxLCBpZDIsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgn WzYsNyknLCAnWzYsNyknLCAnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJyk7CitJTlNFUlQgSU5U TyB0ZW1wb3JhbF9mazJfcm5nMnBlciAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQxLCBwYXJlbnRf aWQyKSBWQUxVRVMgKCdbMTAwLDEwMF0nLCAnWzIwMTgtMDEtMDEsMjAyMS0wMS0wMSknLCAnWzYs NyknLCAnWzYsNyknKTsKK0FMVEVSIFRBQkxFIHRlbXBvcmFsX2ZrMl9ybmcycGVyCisgIERST1Ag Q09OU1RSQUlOVCB0ZW1wb3JhbF9mazJfcm5nMnBlcl9maywKKyAgQUREIENPTlNUUkFJTlQgdGVt cG9yYWxfZmsyX3JuZzJwZXJfZmsKKyAgICBGT1JFSUdOIEtFWSAocGFyZW50X2lkMSwgcGFyZW50 X2lkMiwgUEVSSU9EIHZhbGlkX2F0KQorICAgIFJFRkVSRU5DRVMgdGVtcG9yYWxfcGVyMgorICAg IE9OIERFTEVURSBTRVQgTlVMTCBPTiBVUERBVEUgU0VUIE5VTEw7CistLSBsZWZ0b3ZlcnMgb24g Ym90aCBzaWRlczoKK1VQREFURSB0ZW1wb3JhbF9wZXIyIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0 IEZST00gJzIwMTktMDEtMDEnIFRPICcyMDIwLTAxLTAxJyBTRVQgaWQxID0gJ1s3LDgpJyBXSEVS RSBpZDEgPSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9mazJfcm5nMnBlciBXSEVS RSBpZCA9ICdbMTAwLDEwMF0nIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKyAgICBpZCAgICAgfCAg ICAgICAgdmFsaWRfYXQgICAgICAgICB8IHBhcmVudF9pZDEgfCBwYXJlbnRfaWQyIAorLS0tLS0t LS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0t CisgWzEwMCwxMDEpIHwgWzIwMTgtMDEtMDEsMjAxOS0wMS0wMSkgfCBbNiw3KSAgICAgIHwgWzYs NykKKyBbMTAwLDEwMSkgfCBbMjAxOS0wMS0wMSwyMDIwLTAxLTAxKSB8ICAgICAgICAgICAgfCAK KyBbMTAwLDEwMSkgfCBbMjAyMC0wMS0wMSwyMDIxLTAxLTAxKSB8IFs2LDcpICAgICAgfCBbNiw3 KQorKDMgcm93cykKKworLS0gbm9uLUZQTyB1cGRhdGU6CitVUERBVEUgdGVtcG9yYWxfcGVyMiBT RVQgaWQxID0gJ1s3LDgpJyBXSEVSRSBpZDEgPSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1w b3JhbF9mazJfcm5nMnBlciBXSEVSRSBpZCA9ICdbMTAwLDEwMF0nIE9SREVSIEJZIGlkLCB2YWxp ZF9hdDsKKyAgICBpZCAgICAgfCAgICAgICAgdmFsaWRfYXQgICAgICAgICB8IHBhcmVudF9pZDEg fCBwYXJlbnRfaWQyIAorLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0t LS0tLS0tLS0rLS0tLS0tLS0tLS0tCisgWzEwMCwxMDEpIHwgWzIwMTgtMDEtMDEsMjAxOS0wMS0w MSkgfCAgICAgICAgICAgIHwgCisgWzEwMCwxMDEpIHwgWzIwMTktMDEtMDEsMjAyMC0wMS0wMSkg fCAgICAgICAgICAgIHwgCisgWzEwMCwxMDEpIHwgWzIwMjAtMDEtMDEsMjAyMS0wMS0wMSkgfCAg ICAgICAgICAgIHwgCisoMyByb3dzKQorCistLSBGSyBhY3Jvc3MgdHdvIHJlZmVyZW5jZWQgcm93 czoKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlcjIgKGlkMSwgaWQyLCB2YWxpZF9mcm9tLCB2YWxp ZF90aWwpIFZBTFVFUyAoJ1s4LDkpJywgJ1s4LDkpJywgJzIwMTgtMDEtMDEnLCAnMjAyMC0wMS0w MScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyMiAoaWQxLCBpZDIsIHZhbGlkX2Zyb20sIHZh bGlkX3RpbCkgVkFMVUVTICgnWzgsOSknLCAnWzgsOSknLCAnMjAyMC0wMS0wMScsICcyMDIxLTAx LTAxJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9mazJfcm5nMnBlciAoaWQsIHZhbGlkX2F0LCBw YXJlbnRfaWQxLCBwYXJlbnRfaWQyKSBWQUxVRVMgKCdbMjAwLDIwMF0nLCAnWzIwMTgtMDEtMDEs MjAyMS0wMS0wMSknLCAnWzgsOSknLCAnWzgsOSknKTsKK1VQREFURSB0ZW1wb3JhbF9wZXIyIFNF VCBpZDEgPSAnWzksMTApJyBXSEVSRSBpZDEgPSAnWzgsOSknIEFORCB2YWxpZF9hdCBAPiAnMjAx OS0wMS0wMSc6OmRhdGU7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9ybmcycGVyIFdIRVJF IGlkID0gJ1syMDAsMjAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworICAgIGlkICAgICB8ICAg ICAgICB2YWxpZF9hdCAgICAgICAgIHwgcGFyZW50X2lkMSB8IHBhcmVudF9pZDIgCistLS0tLS0t LS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0K KyBbMjAwLDIwMSkgfCBbMjAxOC0wMS0wMSwyMDIwLTAxLTAxKSB8ICAgICAgICAgICAgfCAKKyBb MjAwLDIwMSkgfCBbMjAyMC0wMS0wMSwyMDIxLTAxLTAxKSB8IFs4LDkpICAgICAgfCBbOCw5KQor KDIgcm93cykKKworLS0KKy0tIHRlc3QgRksgcmVmZXJlbmNlZCBkZWxldGVzIFNFVCBOVUxMICh0 d28gc2NhbGFyIGNvbHMpCistLQorVFJVTkNBVEUgdGVtcG9yYWxfcGVyMiwgdGVtcG9yYWxfZmsy X3JuZzJwZXI7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIyIChpZDEsIGlkMiwgdmFsaWRfZnJv bSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbNiw3KScsICdbNiw3KScsICcyMDE4LTAxLTAxJywgJzIw MjEtMDEtMDEnKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrMl9ybmcycGVyIChpZCwgdmFsaWRf YXQsIHBhcmVudF9pZDEsIHBhcmVudF9pZDIpIFZBTFVFUyAoJ1sxMDAsMTAwXScsICdbMjAxOC0w MS0wMSwyMDIxLTAxLTAxKScsICdbNiw3KScsICdbNiw3KScpOworLS0gbGVmdG92ZXJzIG9uIGJv dGggc2lkZXM6CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9wZXIyIEZPUiBQT1JUSU9OIE9GIHZhbGlk X2F0IEZST00gJzIwMTktMDEtMDEnIFRPICcyMDIwLTAxLTAxJyBXSEVSRSBpZDEgPSAnWzYsNykn OworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9mazJfcm5nMnBlciBXSEVSRSBpZCA9ICdbMTAwLDEw MF0nIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKyAgICBpZCAgICAgfCAgICAgICAgdmFsaWRfYXQg ICAgICAgICB8IHBhcmVudF9pZDEgfCBwYXJlbnRfaWQyIAorLS0tLS0tLS0tLS0rLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tCisgWzEwMCwxMDEpIHwg WzIwMTgtMDEtMDEsMjAxOS0wMS0wMSkgfCBbNiw3KSAgICAgIHwgWzYsNykKKyBbMTAwLDEwMSkg fCBbMjAxOS0wMS0wMSwyMDIwLTAxLTAxKSB8ICAgICAgICAgICAgfCAKKyBbMTAwLDEwMSkgfCBb MjAyMC0wMS0wMSwyMDIxLTAxLTAxKSB8IFs2LDcpICAgICAgfCBbNiw3KQorKDMgcm93cykKKwor LS0gbm9uLUZQTyBkZWxldGU6CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9wZXIyIFdIRVJFIGlkMSA9 ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9ybmcycGVyIFdIRVJFIGlkID0g J1sxMDAsMTAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworICAgIGlkICAgICB8ICAgICAgICB2 YWxpZF9hdCAgICAgICAgIHwgcGFyZW50X2lkMSB8IHBhcmVudF9pZDIgCistLS0tLS0tLS0tLSst LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0KKyBbMTAw LDEwMSkgfCBbMjAxOC0wMS0wMSwyMDE5LTAxLTAxKSB8ICAgICAgICAgICAgfCAKKyBbMTAwLDEw MSkgfCBbMjAxOS0wMS0wMSwyMDIwLTAxLTAxKSB8ICAgICAgICAgICAgfCAKKyBbMTAwLDEwMSkg fCBbMjAyMC0wMS0wMSwyMDIxLTAxLTAxKSB8ICAgICAgICAgICAgfCAKKygzIHJvd3MpCisKKy0t IEZLIGFjcm9zcyB0d28gcmVmZXJlbmNlZCByb3dzOgorSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVy MiAoaWQxLCBpZDIsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzgsOSknLCAnWzgs OSknLCAnMjAxOC0wMS0wMScsICcyMDIwLTAxLTAxJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9w ZXIyIChpZDEsIGlkMiwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbOCw5KScsICdb OCw5KScsICcyMDIwLTAxLTAxJywgJzIwMjEtMDEtMDEnKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFs X2ZrMl9ybmcycGVyIChpZCwgdmFsaWRfYXQsIHBhcmVudF9pZDEsIHBhcmVudF9pZDIpIFZBTFVF UyAoJ1syMDAsMjAwXScsICdbMjAxOC0wMS0wMSwyMDIxLTAxLTAxKScsICdbOCw5KScsICdbOCw5 KScpOworREVMRVRFIEZST00gdGVtcG9yYWxfcGVyMiBXSEVSRSBpZDEgPSAnWzgsOSknIEFORCB2 YWxpZF9hdCBAPiAnMjAxOS0wMS0wMSc6OmRhdGU7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2Zr Ml9ybmcycGVyIFdIRVJFIGlkID0gJ1syMDAsMjAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0Owor ICAgIGlkICAgICB8ICAgICAgICB2YWxpZF9hdCAgICAgICAgIHwgcGFyZW50X2lkMSB8IHBhcmVu dF9pZDIgCistLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0t LSstLS0tLS0tLS0tLS0KKyBbMjAwLDIwMSkgfCBbMjAxOC0wMS0wMSwyMDIwLTAxLTAxKSB8ICAg ICAgICAgICAgfCAKKyBbMjAwLDIwMSkgfCBbMjAyMC0wMS0wMSwyMDIxLTAxLTAxKSB8IFs4LDkp ICAgICAgfCBbOCw5KQorKDIgcm93cykKKworLS0KKy0tIHRlc3QgRksgcmVmZXJlbmNlZCBkZWxl dGVzIFNFVCBOVUxMICh0d28gc2NhbGFyIGNvbHMsIFNFVCBOVUxMIHN1YnNldCkKKy0tCitUUlVO Q0FURSB0ZW1wb3JhbF9wZXIyLCB0ZW1wb3JhbF9mazJfcm5nMnBlcjsKK0lOU0VSVCBJTlRPIHRl bXBvcmFsX3BlcjIgKGlkMSwgaWQyLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1s2 LDcpJywgJ1s2LDcpJywgJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpOworSU5TRVJUIElOVE8g dGVtcG9yYWxfZmsyX3JuZzJwZXIgKGlkLCB2YWxpZF9hdCwgcGFyZW50X2lkMSwgcGFyZW50X2lk MikgVkFMVUVTICgnWzEwMCwxMDBdJywgJ1syMDE4LTAxLTAxLDIwMjEtMDEtMDEpJywgJ1s2LDcp JywgJ1s2LDcpJyk7CistLSBmYWlscyBiZWNhdXNlIHlvdSBjYW4ndCBzZXQgdGhlIFBFUklPRCBj b2x1bW46CitBTFRFUiBUQUJMRSB0ZW1wb3JhbF9mazJfcm5nMnBlcgorICBEUk9QIENPTlNUUkFJ TlQgdGVtcG9yYWxfZmsyX3JuZzJwZXJfZmssCisgIEFERCBDT05TVFJBSU5UIHRlbXBvcmFsX2Zr Ml9ybmcycGVyX2ZrCisgICAgRk9SRUlHTiBLRVkgKHBhcmVudF9pZDEsIHBhcmVudF9pZDIsIFBF UklPRCB2YWxpZF9hdCkKKyAgICBSRUZFUkVOQ0VTIHRlbXBvcmFsX3BlcjIKKyAgICBPTiBERUxF VEUgU0VUIE5VTEwgKHZhbGlkX2F0KSBPTiBVUERBVEUgU0VUIE5VTEw7CitFUlJPUjogIGNvbHVt biAidmFsaWRfYXQiIHJlZmVyZW5jZWQgaW4gT04gREVMRVRFIFNFVCBhY3Rpb24gY2Fubm90IGJl IFBFUklPRAorLS0gb2s6CitBTFRFUiBUQUJMRSB0ZW1wb3JhbF9mazJfcm5nMnBlcgorICBEUk9Q IENPTlNUUkFJTlQgdGVtcG9yYWxfZmsyX3JuZzJwZXJfZmssCisgIEFERCBDT05TVFJBSU5UIHRl bXBvcmFsX2ZrMl9ybmcycGVyX2ZrCisgICAgRk9SRUlHTiBLRVkgKHBhcmVudF9pZDEsIHBhcmVu dF9pZDIsIFBFUklPRCB2YWxpZF9hdCkKKyAgICBSRUZFUkVOQ0VTIHRlbXBvcmFsX3BlcjIKKyAg ICBPTiBERUxFVEUgU0VUIE5VTEwgKHBhcmVudF9pZDEpIE9OIFVQREFURSBTRVQgTlVMTDsKKy0t IGxlZnRvdmVycyBvbiBib3RoIHNpZGVzOgorREVMRVRFIEZST00gdGVtcG9yYWxfcGVyMiBGT1Ig UE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDE5LTAxLTAxJyBUTyAnMjAyMC0wMS0wMScgV0hF UkUgaWQxID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX3JuZzJwZXIgV0hF UkUgaWQgPSAnWzEwMCwxMDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisgICAgaWQgICAgIHwg ICAgICAgIHZhbGlkX2F0ICAgICAgICAgfCBwYXJlbnRfaWQxIHwgcGFyZW50X2lkMiAKKy0tLS0t LS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0t LQorIFsxMDAsMTAxKSB8IFsyMDE4LTAxLTAxLDIwMTktMDEtMDEpIHwgWzYsNykgICAgICB8IFs2 LDcpCisgWzEwMCwxMDEpIHwgWzIwMTktMDEtMDEsMjAyMC0wMS0wMSkgfCAgICAgICAgICAgIHwg WzYsNykKKyBbMTAwLDEwMSkgfCBbMjAyMC0wMS0wMSwyMDIxLTAxLTAxKSB8IFs2LDcpICAgICAg fCBbNiw3KQorKDMgcm93cykKKworLS0gbm9uLUZQTyBkZWxldGU6CitERUxFVEUgRlJPTSB0ZW1w b3JhbF9wZXIyIFdIRVJFIGlkMSA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2Zr Ml9ybmcycGVyIFdIRVJFIGlkID0gJ1sxMDAsMTAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0Owor ICAgIGlkICAgICB8ICAgICAgICB2YWxpZF9hdCAgICAgICAgIHwgcGFyZW50X2lkMSB8IHBhcmVu dF9pZDIgCistLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0t LSstLS0tLS0tLS0tLS0KKyBbMTAwLDEwMSkgfCBbMjAxOC0wMS0wMSwyMDE5LTAxLTAxKSB8ICAg ICAgICAgICAgfCBbNiw3KQorIFsxMDAsMTAxKSB8IFsyMDE5LTAxLTAxLDIwMjAtMDEtMDEpIHwg ICAgICAgICAgICB8IFs2LDcpCisgWzEwMCwxMDEpIHwgWzIwMjAtMDEtMDEsMjAyMS0wMS0wMSkg fCAgICAgICAgICAgIHwgWzYsNykKKygzIHJvd3MpCisKKy0tIEZLIGFjcm9zcyB0d28gcmVmZXJl bmNlZCByb3dzOgorSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyMiAoaWQxLCBpZDIsIHZhbGlkX2Zy b20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzgsOSknLCAnWzgsOSknLCAnMjAxOC0wMS0wMScsICcy MDIwLTAxLTAxJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIyIChpZDEsIGlkMiwgdmFsaWRf ZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbOCw5KScsICdbOCw5KScsICcyMDIwLTAxLTAxJywg JzIwMjEtMDEtMDEnKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrMl9ybmcycGVyIChpZCwgdmFs aWRfYXQsIHBhcmVudF9pZDEsIHBhcmVudF9pZDIpIFZBTFVFUyAoJ1syMDAsMjAwXScsICdbMjAx OC0wMS0wMSwyMDIxLTAxLTAxKScsICdbOCw5KScsICdbOCw5KScpOworREVMRVRFIEZST00gdGVt cG9yYWxfcGVyMiBXSEVSRSBpZDEgPSAnWzgsOSknIEFORCB2YWxpZF9hdCBAPiAnMjAxOS0wMS0w MSc6OmRhdGU7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9ybmcycGVyIFdIRVJFIGlkID0g J1syMDAsMjAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworICAgIGlkICAgICB8ICAgICAgICB2 YWxpZF9hdCAgICAgICAgIHwgcGFyZW50X2lkMSB8IHBhcmVudF9pZDIgCistLS0tLS0tLS0tLSst LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0KKyBbMjAw LDIwMSkgfCBbMjAxOC0wMS0wMSwyMDIwLTAxLTAxKSB8ICAgICAgICAgICAgfCBbOCw5KQorIFsy MDAsMjAxKSB8IFsyMDIwLTAxLTAxLDIwMjEtMDEtMDEpIHwgWzgsOSkgICAgICB8IFs4LDkpCiso MiByb3dzKQorCistLQorLS0gdGVzdCBGSyByZWZlcmVuY2VkIHVwZGF0ZXMgU0VUIERFRkFVTFQg KHR3byBzY2FsYXIgY29scykKKy0tCitUUlVOQ0FURSB0ZW1wb3JhbF9wZXIyLCB0ZW1wb3JhbF9m azJfcm5nMnBlcjsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlcjIgKGlkMSwgaWQyLCB2YWxpZF9m cm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1stMSwtMV0nLCAnWy0xLC0xXScsIG51bGwsIG51bGwp OworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyMiAoaWQxLCBpZDIsIHZhbGlkX2Zyb20sIHZhbGlk X3RpbCkgVkFMVUVTICgnWzYsNyknLCAnWzYsNyknLCAnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAx Jyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9mazJfcm5nMnBlciAoaWQsIHZhbGlkX2F0LCBwYXJl bnRfaWQxLCBwYXJlbnRfaWQyKSBWQUxVRVMgKCdbMTAwLDEwMF0nLCAnWzIwMTgtMDEtMDEsMjAy MS0wMS0wMSknLCAnWzYsNyknLCAnWzYsNyknKTsKK0FMVEVSIFRBQkxFIHRlbXBvcmFsX2ZrMl9y bmcycGVyCisgIEFMVEVSIENPTFVNTiBwYXJlbnRfaWQxIFNFVCBERUZBVUxUICdbLTEsLTFdJywK KyAgQUxURVIgQ09MVU1OIHBhcmVudF9pZDIgU0VUIERFRkFVTFQgJ1stMSwtMV0nLAorICBEUk9Q IENPTlNUUkFJTlQgdGVtcG9yYWxfZmsyX3JuZzJwZXJfZmssCisgIEFERCBDT05TVFJBSU5UIHRl bXBvcmFsX2ZrMl9ybmcycGVyX2ZrCisgICAgRk9SRUlHTiBLRVkgKHBhcmVudF9pZDEsIHBhcmVu dF9pZDIsIFBFUklPRCB2YWxpZF9hdCkKKyAgICBSRUZFUkVOQ0VTIHRlbXBvcmFsX3BlcjIKKyAg ICBPTiBERUxFVEUgU0VUIERFRkFVTFQgT04gVVBEQVRFIFNFVCBERUZBVUxUOworLS0gbGVmdG92 ZXJzIG9uIGJvdGggc2lkZXM6CitVUERBVEUgdGVtcG9yYWxfcGVyMiBGT1IgUE9SVElPTiBPRiB2 YWxpZF9hdCBGUk9NICcyMDE5LTAxLTAxJyBUTyAnMjAyMC0wMS0wMScgU0VUIGlkMSA9ICdbNyw4 KScsIGlkMiA9ICdbNyw4KScgV0hFUkUgaWQxID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVt cG9yYWxfZmsyX3JuZzJwZXIgV0hFUkUgaWQgPSAnWzEwMCwxMDBdJyBPUkRFUiBCWSBpZCwgdmFs aWRfYXQ7CisgICAgaWQgICAgIHwgICAgICAgIHZhbGlkX2F0ICAgICAgICAgfCBwYXJlbnRfaWQx IHwgcGFyZW50X2lkMiAKKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0t LS0tLS0tLS0tKy0tLS0tLS0tLS0tLQorIFsxMDAsMTAxKSB8IFsyMDE4LTAxLTAxLDIwMTktMDEt MDEpIHwgWzYsNykgICAgICB8IFs2LDcpCisgWzEwMCwxMDEpIHwgWzIwMTktMDEtMDEsMjAyMC0w MS0wMSkgfCBbLTEsMCkgICAgIHwgWy0xLDApCisgWzEwMCwxMDEpIHwgWzIwMjAtMDEtMDEsMjAy MS0wMS0wMSkgfCBbNiw3KSAgICAgIHwgWzYsNykKKygzIHJvd3MpCisKKy0tIG5vbi1GUE8gdXBk YXRlOgorVVBEQVRFIHRlbXBvcmFsX3BlcjIgU0VUIGlkMSA9ICdbNyw4KScsIGlkMiA9ICdbNyw4 KScgV0hFUkUgaWQxID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX3JuZzJw ZXIgV0hFUkUgaWQgPSAnWzEwMCwxMDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisgICAgaWQg ICAgIHwgICAgICAgIHZhbGlkX2F0ICAgICAgICAgfCBwYXJlbnRfaWQxIHwgcGFyZW50X2lkMiAK Ky0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0t LS0tLS0tLQorIFsxMDAsMTAxKSB8IFsyMDE4LTAxLTAxLDIwMTktMDEtMDEpIHwgWy0xLDApICAg ICB8IFstMSwwKQorIFsxMDAsMTAxKSB8IFsyMDE5LTAxLTAxLDIwMjAtMDEtMDEpIHwgWy0xLDAp ICAgICB8IFstMSwwKQorIFsxMDAsMTAxKSB8IFsyMDIwLTAxLTAxLDIwMjEtMDEtMDEpIHwgWy0x LDApICAgICB8IFstMSwwKQorKDMgcm93cykKKworLS0gRksgYWNyb3NzIHR3byByZWZlcmVuY2Vk IHJvd3M6CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIyIChpZDEsIGlkMiwgdmFsaWRfZnJvbSwg dmFsaWRfdGlsKSBWQUxVRVMgKCdbOCw5KScsICdbOCw5KScsICcyMDE4LTAxLTAxJywgJzIwMjAt MDEtMDEnKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlcjIgKGlkMSwgaWQyLCB2YWxpZF9mcm9t LCB2YWxpZF90aWwpIFZBTFVFUyAoJ1s4LDkpJywgJ1s4LDkpJywgJzIwMjAtMDEtMDEnLCAnMjAy MS0wMS0wMScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmsyX3JuZzJwZXIgKGlkLCB2YWxpZF9h dCwgcGFyZW50X2lkMSwgcGFyZW50X2lkMikgVkFMVUVTICgnWzIwMCwyMDBdJywgJ1syMDE4LTAx LTAxLDIwMjEtMDEtMDEpJywgJ1s4LDkpJywgJ1s4LDkpJyk7CitVUERBVEUgdGVtcG9yYWxfcGVy MiBTRVQgaWQxID0gJ1s5LDEwKScsIGlkMiA9ICdbOSwxMCknIFdIRVJFIGlkMSA9ICdbOCw5KScg QU5EIHZhbGlkX2F0IEA+ICcyMDE5LTAxLTAxJzo6ZGF0ZTsKK1NFTEVDVCAqIEZST00gdGVtcG9y YWxfZmsyX3JuZzJwZXIgV0hFUkUgaWQgPSAnWzIwMCwyMDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRf YXQ7CisgICAgaWQgICAgIHwgICAgICAgIHZhbGlkX2F0ICAgICAgICAgfCBwYXJlbnRfaWQxIHwg cGFyZW50X2lkMiAKKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0t LS0tLS0tKy0tLS0tLS0tLS0tLQorIFsyMDAsMjAxKSB8IFsyMDE4LTAxLTAxLDIwMjAtMDEtMDEp IHwgWy0xLDApICAgICB8IFstMSwwKQorIFsyMDAsMjAxKSB8IFsyMDIwLTAxLTAxLDIwMjEtMDEt MDEpIHwgWzgsOSkgICAgICB8IFs4LDkpCisoMiByb3dzKQorCistLQorLS0gdGVzdCBGSyByZWZl cmVuY2VkIGRlbGV0ZXMgU0VUIERFRkFVTFQgKHR3byBzY2FsYXIgY29scykKKy0tCitUUlVOQ0FU RSB0ZW1wb3JhbF9wZXIyLCB0ZW1wb3JhbF9mazJfcm5nMnBlcjsKK0lOU0VSVCBJTlRPIHRlbXBv cmFsX3BlcjIgKGlkMSwgaWQyLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1stMSwt MV0nLCAnWy0xLC0xXScsIG51bGwsIG51bGwpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyMiAo aWQxLCBpZDIsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzYsNyknLCAnWzYsNykn LCAnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9mazJf cm5nMnBlciAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQxLCBwYXJlbnRfaWQyKSBWQUxVRVMgKCdb MTAwLDEwMF0nLCAnWzIwMTgtMDEtMDEsMjAyMS0wMS0wMSknLCAnWzYsNyknLCAnWzYsNyknKTsK Ky0tIGxlZnRvdmVycyBvbiBib3RoIHNpZGVzOgorREVMRVRFIEZST00gdGVtcG9yYWxfcGVyMiBG T1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDE5LTAxLTAxJyBUTyAnMjAyMC0wMS0wMScg V0hFUkUgaWQxID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX3JuZzJwZXIg V0hFUkUgaWQgPSAnWzEwMCwxMDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisgICAgaWQgICAg IHwgICAgICAgIHZhbGlkX2F0ICAgICAgICAgfCBwYXJlbnRfaWQxIHwgcGFyZW50X2lkMiAKKy0t LS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0t LS0tLQorIFsxMDAsMTAxKSB8IFsyMDE4LTAxLTAxLDIwMTktMDEtMDEpIHwgWzYsNykgICAgICB8 IFs2LDcpCisgWzEwMCwxMDEpIHwgWzIwMTktMDEtMDEsMjAyMC0wMS0wMSkgfCBbLTEsMCkgICAg IHwgWy0xLDApCisgWzEwMCwxMDEpIHwgWzIwMjAtMDEtMDEsMjAyMS0wMS0wMSkgfCBbNiw3KSAg ICAgIHwgWzYsNykKKygzIHJvd3MpCisKKy0tIG5vbi1GUE8gdXBkYXRlOgorREVMRVRFIEZST00g dGVtcG9yYWxfcGVyMiBXSEVSRSBpZDEgPSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1wb3Jh bF9mazJfcm5nMnBlciBXSEVSRSBpZCA9ICdbMTAwLDEwMF0nIE9SREVSIEJZIGlkLCB2YWxpZF9h dDsKKyAgICBpZCAgICAgfCAgICAgICAgdmFsaWRfYXQgICAgICAgICB8IHBhcmVudF9pZDEgfCBw YXJlbnRfaWQyIAorLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0t LS0tLS0rLS0tLS0tLS0tLS0tCisgWzEwMCwxMDEpIHwgWzIwMTgtMDEtMDEsMjAxOS0wMS0wMSkg fCBbLTEsMCkgICAgIHwgWy0xLDApCisgWzEwMCwxMDEpIHwgWzIwMTktMDEtMDEsMjAyMC0wMS0w MSkgfCBbLTEsMCkgICAgIHwgWy0xLDApCisgWzEwMCwxMDEpIHwgWzIwMjAtMDEtMDEsMjAyMS0w MS0wMSkgfCBbLTEsMCkgICAgIHwgWy0xLDApCisoMyByb3dzKQorCistLSBGSyBhY3Jvc3MgdHdv IHJlZmVyZW5jZWQgcm93czoKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlcjIgKGlkMSwgaWQyLCB2 YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1s4LDkpJywgJ1s4LDkpJywgJzIwMTgtMDEt MDEnLCAnMjAyMC0wMS0wMScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyMiAoaWQxLCBpZDIs IHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzgsOSknLCAnWzgsOSknLCAnMjAyMC0w MS0wMScsICcyMDIxLTAxLTAxJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9mazJfcm5nMnBlciAo aWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQxLCBwYXJlbnRfaWQyKSBWQUxVRVMgKCdbMjAwLDIwMF0n LCAnWzIwMTgtMDEtMDEsMjAyMS0wMS0wMSknLCAnWzgsOSknLCAnWzgsOSknKTsKK0RFTEVURSBG Uk9NIHRlbXBvcmFsX3BlcjIgV0hFUkUgaWQxID0gJ1s4LDkpJyBBTkQgdmFsaWRfYXQgQD4gJzIw MTktMDEtMDEnOjpkYXRlOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9mazJfcm5nMnBlciBXSEVS RSBpZCA9ICdbMjAwLDIwMF0nIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKyAgICBpZCAgICAgfCAg ICAgICAgdmFsaWRfYXQgICAgICAgICB8IHBhcmVudF9pZDEgfCBwYXJlbnRfaWQyIAorLS0tLS0t LS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0t CisgWzIwMCwyMDEpIHwgWzIwMTgtMDEtMDEsMjAyMC0wMS0wMSkgfCBbLTEsMCkgICAgIHwgWy0x LDApCisgWzIwMCwyMDEpIHwgWzIwMjAtMDEtMDEsMjAyMS0wMS0wMSkgfCBbOCw5KSAgICAgIHwg WzgsOSkKKygyIHJvd3MpCisKKy0tCistLSB0ZXN0IEZLIHJlZmVyZW5jZWQgZGVsZXRlcyBTRVQg REVGQVVMVCAodHdvIHNjYWxhciBjb2xzLCBTRVQgREVGQVVMVCBzdWJzZXQpCistLQorVFJVTkNB VEUgdGVtcG9yYWxfcGVyMiwgdGVtcG9yYWxfZmsyX3JuZzJwZXI7CitJTlNFUlQgSU5UTyB0ZW1w b3JhbF9wZXIyIChpZDEsIGlkMiwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbLTEs LTFdJywgJ1s2LDcpJywgbnVsbCwgbnVsbCk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIyIChp ZDEsIGlkMiwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbNiw3KScsICdbNiw3KScs ICcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrMl9y bmcycGVyIChpZCwgdmFsaWRfYXQsIHBhcmVudF9pZDEsIHBhcmVudF9pZDIpIFZBTFVFUyAoJ1sx MDAsMTAwXScsICdbMjAxOC0wMS0wMSwyMDIxLTAxLTAxKScsICdbNiw3KScsICdbNiw3KScpOwor LS0gZmFpbHMgYmVjYXVzZSB5b3UgY2FuJ3Qgc2V0IHRoZSBQRVJJT0QgY29sdW1uOgorQUxURVIg VEFCTEUgdGVtcG9yYWxfZmsyX3JuZzJwZXIKKyAgQUxURVIgQ09MVU1OIHBhcmVudF9pZDEgU0VU IERFRkFVTFQgJ1stMSwtMV0nLAorICBEUk9QIENPTlNUUkFJTlQgdGVtcG9yYWxfZmsyX3JuZzJw ZXJfZmssCisgIEFERCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrMl9ybmcycGVyX2ZrCisgICAgRk9S RUlHTiBLRVkgKHBhcmVudF9pZDEsIHBhcmVudF9pZDIsIFBFUklPRCB2YWxpZF9hdCkKKyAgICBS RUZFUkVOQ0VTIHRlbXBvcmFsX3BlcjIKKyAgICBPTiBERUxFVEUgU0VUIERFRkFVTFQgKHZhbGlk X2F0KSBPTiBVUERBVEUgU0VUIERFRkFVTFQ7CitFUlJPUjogIGNvbHVtbiAidmFsaWRfYXQiIHJl ZmVyZW5jZWQgaW4gT04gREVMRVRFIFNFVCBhY3Rpb24gY2Fubm90IGJlIFBFUklPRAorLS0gb2s6 CitBTFRFUiBUQUJMRSB0ZW1wb3JhbF9mazJfcm5nMnBlcgorICBBTFRFUiBDT0xVTU4gcGFyZW50 X2lkMSBTRVQgREVGQVVMVCAnWy0xLC0xXScsCisgIERST1AgQ09OU1RSQUlOVCB0ZW1wb3JhbF9m azJfcm5nMnBlcl9maywKKyAgQUREIENPTlNUUkFJTlQgdGVtcG9yYWxfZmsyX3JuZzJwZXJfZmsK KyAgICBGT1JFSUdOIEtFWSAocGFyZW50X2lkMSwgcGFyZW50X2lkMiwgUEVSSU9EIHZhbGlkX2F0 KQorICAgIFJFRkVSRU5DRVMgdGVtcG9yYWxfcGVyMgorICAgIE9OIERFTEVURSBTRVQgREVGQVVM VCAocGFyZW50X2lkMSkgT04gVVBEQVRFIFNFVCBERUZBVUxUOworLS0gbGVmdG92ZXJzIG9uIGJv dGggc2lkZXM6CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9wZXIyIEZPUiBQT1JUSU9OIE9GIHZhbGlk X2F0IEZST00gJzIwMTktMDEtMDEnIFRPICcyMDIwLTAxLTAxJyBXSEVSRSBpZDEgPSAnWzYsNykn OworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9mazJfcm5nMnBlciBXSEVSRSBpZCA9ICdbMTAwLDEw MF0nIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKyAgICBpZCAgICAgfCAgICAgICAgdmFsaWRfYXQg ICAgICAgICB8IHBhcmVudF9pZDEgfCBwYXJlbnRfaWQyIAorLS0tLS0tLS0tLS0rLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tCisgWzEwMCwxMDEpIHwg WzIwMTgtMDEtMDEsMjAxOS0wMS0wMSkgfCBbNiw3KSAgICAgIHwgWzYsNykKKyBbMTAwLDEwMSkg fCBbMjAxOS0wMS0wMSwyMDIwLTAxLTAxKSB8IFstMSwwKSAgICAgfCBbNiw3KQorIFsxMDAsMTAx KSB8IFsyMDIwLTAxLTAxLDIwMjEtMDEtMDEpIHwgWzYsNykgICAgICB8IFs2LDcpCisoMyByb3dz KQorCistLSBub24tRlBPIHVwZGF0ZToKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3BlcjIgV0hFUkUg aWQxID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX3JuZzJwZXIgV0hFUkUg aWQgPSAnWzEwMCwxMDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisgICAgaWQgICAgIHwgICAg ICAgIHZhbGlkX2F0ICAgICAgICAgfCBwYXJlbnRfaWQxIHwgcGFyZW50X2lkMiAKKy0tLS0tLS0t LS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLQor IFsxMDAsMTAxKSB8IFsyMDE4LTAxLTAxLDIwMTktMDEtMDEpIHwgWy0xLDApICAgICB8IFs2LDcp CisgWzEwMCwxMDEpIHwgWzIwMTktMDEtMDEsMjAyMC0wMS0wMSkgfCBbLTEsMCkgICAgIHwgWzYs NykKKyBbMTAwLDEwMSkgfCBbMjAyMC0wMS0wMSwyMDIxLTAxLTAxKSB8IFstMSwwKSAgICAgfCBb Niw3KQorKDMgcm93cykKKworLS0gRksgYWNyb3NzIHR3byByZWZlcmVuY2VkIHJvd3M6CitJTlNF UlQgSU5UTyB0ZW1wb3JhbF9wZXIyIChpZDEsIGlkMiwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBW QUxVRVMgKCdbOCw5KScsICdbOCw5KScsICcyMDE4LTAxLTAxJywgJzIwMjAtMDEtMDEnKTsKK0lO U0VSVCBJTlRPIHRlbXBvcmFsX3BlcjIgKGlkMSwgaWQyLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwp IFZBTFVFUyAoJ1s4LDkpJywgJ1s4LDkpJywgJzIwMjAtMDEtMDEnLCAnMjAyMS0wMS0wMScpOwor SU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyMiAoaWQxLCBpZDIsIHZhbGlkX2Zyb20sIHZhbGlkX3Rp bCkgVkFMVUVTICgnWy0xLC0xXScsICdbOCw5KScsIG51bGwsIG51bGwpOworSU5TRVJUIElOVE8g dGVtcG9yYWxfZmsyX3JuZzJwZXIgKGlkLCB2YWxpZF9hdCwgcGFyZW50X2lkMSwgcGFyZW50X2lk MikgVkFMVUVTICgnWzIwMCwyMDBdJywgJ1syMDE4LTAxLTAxLDIwMjEtMDEtMDEpJywgJ1s4LDkp JywgJ1s4LDkpJyk7CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9wZXIyIFdIRVJFIGlkMSA9ICdbOCw5 KScgQU5EIHZhbGlkX2F0IEA+ICcyMDE5LTAxLTAxJzo6ZGF0ZTsKK1NFTEVDVCAqIEZST00gdGVt cG9yYWxfZmsyX3JuZzJwZXIgV0hFUkUgaWQgPSAnWzIwMCwyMDBdJyBPUkRFUiBCWSBpZCwgdmFs aWRfYXQ7CisgICAgaWQgICAgIHwgICAgICAgIHZhbGlkX2F0ICAgICAgICAgfCBwYXJlbnRfaWQx IHwgcGFyZW50X2lkMiAKKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0t LS0tLS0tLS0tKy0tLS0tLS0tLS0tLQorIFsyMDAsMjAxKSB8IFsyMDE4LTAxLTAxLDIwMjAtMDEt MDEpIHwgWy0xLDApICAgICB8IFs4LDkpCisgWzIwMCwyMDEpIHwgWzIwMjAtMDEtMDEsMjAyMS0w MS0wMSkgfCBbOCw5KSAgICAgIHwgWzgsOSkKKygyIHJvd3MpCisKKy0tCistLSB0ZXN0IEZPUkVJ R04gS0VZLCBQRVJJT0QgcmVmZXJlbmNlcyByYW5nZQorLS0KKy0tIHRlc3QgdGFibGUgc2V0dXAK K0RST1AgVEFCTEUgdGVtcG9yYWxfcm5nIENBU0NBREU7CitOT1RJQ0U6ICBkcm9wIGNhc2NhZGVz IHRvIGNvbnN0cmFpbnQgdGVtcG9yYWxfZmtfcm5nMnJuZ19mayBvbiB0YWJsZSB0ZW1wb3JhbF9m a19ybmcycm5nCitDUkVBVEUgVEFCTEUgdGVtcG9yYWxfcm5nICgKKyAgaWQgaW50NHJhbmdlLAor ICB2YWxpZF9hdCBkYXRlcmFuZ2UKKyk7CitBTFRFUiBUQUJMRSB0ZW1wb3JhbF9ybmcKKyAgQURE IENPTlNUUkFJTlQgdGVtcG9yYWxfcm5nX3BrCisgIFBSSU1BUlkgS0VZIChpZCwgdmFsaWRfYXQg V0lUSE9VVCBPVkVSTEFQUyk7CistLSBDYW4ndCBjcmVhdGUgYSBGSyB3aXRoIGEgbWlzbWF0Y2hl ZCByYW5nZSB0eXBlCitDUkVBVEUgVEFCTEUgdGVtcG9yYWxfZmtfcGVyMnJuZyAoCisgIGlkIGlu dDRyYW5nZSwKKyAgdmFsaWRfZnJvbSBpbnQsCisgIHZhbGlkX3RpbCBpbnQsCisgIHBhcmVudF9p ZCBpbnQ0cmFuZ2UsCisgIFBFUklPRCBGT1IgdmFsaWRfYXQgKHZhbGlkX2Zyb20sIHZhbGlkX3Rp bCksCisgIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcGVyMnJuZ19wayBQUklNQVJZIEtFWSAoaWQs IHZhbGlkX2F0IFdJVEhPVVQgT1ZFUkxBUFMpLAorICBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3Bl cjJybmdfZmsgRk9SRUlHTiBLRVkgKHBhcmVudF9pZCwgUEVSSU9EIHZhbGlkX2F0KQorICAgIFJF RkVSRU5DRVMgdGVtcG9yYWxfcm5nIChpZCwgUEVSSU9EIHZhbGlkX2F0KQorKTsKK0VSUk9SOiAg Zm9yZWlnbiBrZXkgY29uc3RyYWludCAidGVtcG9yYWxfZmtfcGVyMnJuZ19mayIgY2Fubm90IGJl IGltcGxlbWVudGVkCitERVRBSUw6ICBLZXkgY29sdW1ucyAidmFsaWRfYXQiIG9mIHRoZSByZWZl cmVuY2luZyB0YWJsZSBhbmQgInZhbGlkX2F0IiBvZiB0aGUgcmVmZXJlbmNlZCB0YWJsZSBhcmUg b2YgaW5jb21wYXRpYmxlIHR5cGVzOiBpbnQ0cmFuZ2UgYW5kIGRhdGVyYW5nZS4KKy0tIHdvcmtz OiByYW5nZSBmb3IgcmVmZXJlbmNlZCwgUEVSSU9EIGZvciByZWZlcmVuY2luZworQ1JFQVRFIFRB QkxFIHRlbXBvcmFsX2ZrX3BlcjJybmcgKAorICBpZCBpbnQ0cmFuZ2UsCisgIHZhbGlkX2Zyb20g ZGF0ZSwKKyAgdmFsaWRfdGlsIGRhdGUsCisgIHBhcmVudF9pZCBpbnQ0cmFuZ2UsCisgIFBFUklP RCBGT1IgdmFsaWRfYXQgKHZhbGlkX2Zyb20sIHZhbGlkX3RpbCksCisgIENPTlNUUkFJTlQgdGVt cG9yYWxfZmtfcGVyMnJuZ19wayBQUklNQVJZIEtFWSAoaWQsIHZhbGlkX2F0IFdJVEhPVVQgT1ZF UkxBUFMpLAorICBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3BlcjJybmdfZmsgRk9SRUlHTiBLRVkg KHBhcmVudF9pZCwgUEVSSU9EIHZhbGlkX2F0KQorICAgIFJFRkVSRU5DRVMgdGVtcG9yYWxfcm5n IChpZCwgUEVSSU9EIHZhbGlkX2F0KQorKTsKK1xkIHRlbXBvcmFsX2ZrX3BlcjJybmcKKyAgICAg ICAgICAgVGFibGUgInB1YmxpYy50ZW1wb3JhbF9ma19wZXIycm5nIgorICAgQ29sdW1uICAgfCAg IFR5cGUgICAgfCBDb2xsYXRpb24gfCBOdWxsYWJsZSB8IERlZmF1bHQgCistLS0tLS0tLS0tLS0r LS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0rLS0tLS0tLS0tLSstLS0tLS0tLS0KKyBpZCAgICAgICAg IHwgaW50NHJhbmdlIHwgICAgICAgICAgIHwgbm90IG51bGwgfCAKKyB2YWxpZF9mcm9tIHwgZGF0 ZSAgICAgIHwgICAgICAgICAgIHwgICAgICAgICAgfCAKKyB2YWxpZF90aWwgIHwgZGF0ZSAgICAg IHwgICAgICAgICAgIHwgICAgICAgICAgfCAKKyBwYXJlbnRfaWQgIHwgaW50NHJhbmdlIHwgICAg ICAgICAgIHwgICAgICAgICAgfCAKK1BlcmlvZHM6CisgICAgdmFsaWRfYXQgKHZhbGlkX2Zyb20s IHZhbGlkX3RpbCkKK0luZGV4ZXM6CisgICAgInRlbXBvcmFsX2ZrX3BlcjJybmdfcGsiIFBSSU1B UlkgS0VZIChpZCwgdmFsaWRfYXQgV0lUSE9VVCBPVkVSTEFQUykKK0NoZWNrIGNvbnN0cmFpbnRz OgorICAgICJ0ZW1wb3JhbF9ma19wZXIycm5nX3ZhbGlkX2F0X2NoZWNrIiBDSEVDSyAodmFsaWRf ZnJvbSA8IHZhbGlkX3RpbCkKK0ZvcmVpZ24ta2V5IGNvbnN0cmFpbnRzOgorICAgICJ0ZW1wb3Jh bF9ma19wZXIycm5nX2ZrIiBGT1JFSUdOIEtFWSAocGFyZW50X2lkLCBQRVJJT0QgdmFsaWRfYXQp IFJFRkVSRU5DRVMgdGVtcG9yYWxfcm5nKGlkLCBQRVJJT0QgdmFsaWRfYXQpCisKK0RST1AgVEFC TEUgdGVtcG9yYWxfZmtfcGVyMnJuZzsKKy0tIHdpdGggbWlzbWF0Y2hlZCBQRVJJT0QgY29sdW1u czoKKy0tIChwYXJlbnRfaWQsIFBFUklPRCB2YWxpZF9hdCkgUkVGRVJFTkNFUyAoaWQsIHZhbGlk X2F0KQorLS0gUkVGRVJFTkNFUyBwYXJ0IHNob3VsZCBzcGVjaWZ5IFBFUklPRAorQ1JFQVRFIFRB QkxFIHRlbXBvcmFsX2ZrX3BlcjJybmcgKAorICBpZCBpbnQ0cmFuZ2UsCisgIHZhbGlkX2Zyb20g ZGF0ZSwKKyAgdmFsaWRfdGlsIGRhdGUsCisgIHBhcmVudF9pZCBpbnQ0cmFuZ2UsCisgIFBFUklP RCBGT1IgdmFsaWRfYXQgKHZhbGlkX2Zyb20sIHZhbGlkX3RpbCksCisgIENPTlNUUkFJTlQgdGVt cG9yYWxfZmtfcGVyMnJuZ19wayBQUklNQVJZIEtFWSAoaWQsIHZhbGlkX2F0IFdJVEhPVVQgT1ZF UkxBUFMpLAorICBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3BlcjJybmdfZmsgRk9SRUlHTiBLRVkg KHBhcmVudF9pZCwgUEVSSU9EIHZhbGlkX2F0KQorICAgIFJFRkVSRU5DRVMgdGVtcG9yYWxfcm5n IChpZCwgdmFsaWRfYXQpCispOworRVJST1I6ICBmb3JlaWduIGtleSB1c2VzIFBFUklPRCBvbiB0 aGUgcmVmZXJlbmNpbmcgdGFibGUgYnV0IG5vdCB0aGUgcmVmZXJlbmNlZCB0YWJsZQorLS0gKHBh cmVudF9pZCwgdmFsaWRfYXQpIFJFRkVSRU5DRVMgKGlkLCB2YWxpZF9hdCkKKy0tIGJvdGggc2hv dWxkIHNwZWNpZnkgUEVSSU9EOgorQ1JFQVRFIFRBQkxFIHRlbXBvcmFsX2ZrX3BlcjJybmcgKAor ICBpZCBpbnQ0cmFuZ2UsCisgIHZhbGlkX2Zyb20gZGF0ZSwKKyAgdmFsaWRfdGlsIGRhdGUsCisg IHBhcmVudF9pZCBpbnQ0cmFuZ2UsCisgIFBFUklPRCBGT1IgdmFsaWRfYXQgKHZhbGlkX2Zyb20s IHZhbGlkX3RpbCksCisgIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcGVyMnJuZ19wayBQUklNQVJZ IEtFWSAoaWQsIHZhbGlkX2F0IFdJVEhPVVQgT1ZFUkxBUFMpLAorICBDT05TVFJBSU5UIHRlbXBv cmFsX2ZrX3BlcjJybmdfZmsgRk9SRUlHTiBLRVkgKHBhcmVudF9pZCwgdmFsaWRfYXQpCisgICAg UkVGRVJFTkNFUyB0ZW1wb3JhbF9ybmcgKGlkLCB2YWxpZF9hdCkKKyk7CitFUlJPUjogIGZvcmVp Z24ga2V5IG11c3QgdXNlIFBFUklPRCB3aGVuIHJlZmVyZW5jaW5nIGEgcHJpbWFyeSBrZXkgdXNp bmcgV0lUSE9VVCBPVkVSTEFQUworLS0gKHBhcmVudF9pZCwgdmFsaWRfYXQpIFJFRkVSRU5DRVMg KGlkLCBQRVJJT0QgdmFsaWRfYXQpCistLSBGT1JFSUdOIEtFWSBwYXJ0IHNob3VsZCBzcGVjaWZ5 IFBFUklPRAorQ1JFQVRFIFRBQkxFIHRlbXBvcmFsX2ZrX3BlcjJybmcgKAorICBpZCBpbnQ0cmFu Z2UsCisgIHZhbGlkX2Zyb20gZGF0ZSwKKyAgdmFsaWRfdGlsIGRhdGUsCisgIHBhcmVudF9pZCBp bnQ0cmFuZ2UsCisgIFBFUklPRCBGT1IgdmFsaWRfYXQgKHZhbGlkX2Zyb20sIHZhbGlkX3RpbCks CisgIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcGVyMnJuZ19wayBQUklNQVJZIEtFWSAoaWQsIHZh bGlkX2F0IFdJVEhPVVQgT1ZFUkxBUFMpLAorICBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3BlcjJy bmdfZmsgRk9SRUlHTiBLRVkgKHBhcmVudF9pZCwgdmFsaWRfYXQpCisgICAgUkVGRVJFTkNFUyB0 ZW1wb3JhbF9ybmcgKGlkLCBQRVJJT0QgdmFsaWRfYXQpCispOworRVJST1I6ICBmb3JlaWduIGtl eSB1c2VzIFBFUklPRCBvbiB0aGUgcmVmZXJlbmNlZCB0YWJsZSBidXQgbm90IHRoZSByZWZlcmVu Y2luZyB0YWJsZQorLS0gKHBhcmVudF9pZCwgdmFsaWRfYXQpIFJFRkVSRU5DRVMgW2ltcGxpY2l0 XQorLS0gRk9SRUlHTiBLRVkgcGFydCBzaG91bGQgc3BlY2lmeSBQRVJJT0QKK0NSRUFURSBUQUJM RSB0ZW1wb3JhbF9ma19wZXIycm5nICgKKyAgaWQgaW50NHJhbmdlLAorICB2YWxpZF9mcm9tIGRh dGUsCisgIHZhbGlkX3RpbCBkYXRlLAorICBwYXJlbnRfaWQgaW50NHJhbmdlLAorICBQRVJJT0Qg Rk9SIHZhbGlkX2F0ICh2YWxpZF9mcm9tLCB2YWxpZF90aWwpLAorICBDT05TVFJBSU5UIHRlbXBv cmFsX2ZrX3BlcjJybmdfcGsgUFJJTUFSWSBLRVkgKGlkLCB2YWxpZF9hdCBXSVRIT1VUIE9WRVJM QVBTKSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19wZXIycm5nX2ZrIEZPUkVJR04gS0VZIChw YXJlbnRfaWQsIHZhbGlkX2F0KQorICAgIFJFRkVSRU5DRVMgdGVtcG9yYWxfcm5nCispOworRVJS T1I6ICBmb3JlaWduIGtleSB1c2VzIFBFUklPRCBvbiB0aGUgcmVmZXJlbmNlZCB0YWJsZSBidXQg bm90IHRoZSByZWZlcmVuY2luZyB0YWJsZQorLS0gKHBhcmVudF9pZCwgUEVSSU9EIHZhbGlkX2F0 KSBSRUZFUkVOQ0VTIChpZCkKK0NSRUFURSBUQUJMRSB0ZW1wb3JhbF9ma19wZXIycm5nICgKKyAg aWQgaW50NHJhbmdlLAorICB2YWxpZF9mcm9tIGRhdGUsCisgIHZhbGlkX3RpbCBkYXRlLAorICBw YXJlbnRfaWQgaW50NHJhbmdlLAorICBQRVJJT0QgRk9SIHZhbGlkX2F0ICh2YWxpZF9mcm9tLCB2 YWxpZF90aWwpLAorICBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3BlcjJybmdfcGsgUFJJTUFSWSBL RVkgKGlkLCB2YWxpZF9hdCBXSVRIT1VUIE9WRVJMQVBTKSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3Jh bF9ma19wZXIycm5nX2ZrIEZPUkVJR04gS0VZIChwYXJlbnRfaWQsIFBFUklPRCB2YWxpZF9hdCkK KyAgICBSRUZFUkVOQ0VTIHRlbXBvcmFsX3JuZyAoaWQpCispOworRVJST1I6ICBmb3JlaWduIGtl eSB1c2VzIFBFUklPRCBvbiB0aGUgcmVmZXJlbmNpbmcgdGFibGUgYnV0IG5vdCB0aGUgcmVmZXJl bmNlZCB0YWJsZQorLS0gKHBhcmVudF9pZCkgUkVGRVJFTkNFUyAoaWQsIFBFUklPRCB2YWxpZF9h dCkKK0NSRUFURSBUQUJMRSB0ZW1wb3JhbF9ma19wZXIycm5nICgKKyAgaWQgaW50NHJhbmdlLAor ICB2YWxpZF9mcm9tIGRhdGUsCisgIHZhbGlkX3RpbCBkYXRlLAorICBwYXJlbnRfaWQgaW50NHJh bmdlLAorICBQRVJJT0QgRk9SIHZhbGlkX2F0ICh2YWxpZF9mcm9tLCB2YWxpZF90aWwpLAorICBD T05TVFJBSU5UIHRlbXBvcmFsX2ZrX3BlcjJybmdfcGsgUFJJTUFSWSBLRVkgKGlkLCB2YWxpZF9h dCBXSVRIT1VUIE9WRVJMQVBTKSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19wZXIycm5nX2Zr IEZPUkVJR04gS0VZIChwYXJlbnRfaWQpCisgICAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9ybmcgKGlk LCBQRVJJT0QgdmFsaWRfYXQpCispOworRVJST1I6ICBmb3JlaWduIGtleSB1c2VzIFBFUklPRCBv biB0aGUgcmVmZXJlbmNlZCB0YWJsZSBidXQgbm90IHRoZSByZWZlcmVuY2luZyB0YWJsZQorLS0g d2l0aCBpbmZlcnJlZCBQSyBvbiB0aGUgcmVmZXJlbmNlZCB0YWJsZToKKy0tIChwYXJlbnRfaWQs IFBFUklPRCB2YWxpZF9hdCkgUkVGRVJFTkNFUyBbaW1wbGljaXRdCitDUkVBVEUgVEFCTEUgdGVt cG9yYWxfZmtfcGVyMnJuZyAoCisgIGlkIGludDRyYW5nZSwKKyAgdmFsaWRfZnJvbSBkYXRlLAor ICB2YWxpZF90aWwgZGF0ZSwKKyAgcGFyZW50X2lkIGludDRyYW5nZSwKKyAgUEVSSU9EIEZPUiB2 YWxpZF9hdCAodmFsaWRfZnJvbSwgdmFsaWRfdGlsKSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9m a19wZXIycm5nX3BrIFBSSU1BUlkgS0VZIChpZCwgdmFsaWRfYXQgV0lUSE9VVCBPVkVSTEFQUyks CisgIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcGVyMnJuZ19mayBGT1JFSUdOIEtFWSAocGFyZW50 X2lkLCBQRVJJT0QgdmFsaWRfYXQpCisgICAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9ybmcKKyk7CitE Uk9QIFRBQkxFIHRlbXBvcmFsX2ZrX3BlcjJybmc7CistLSAocGFyZW50X2lkKSBSRUZFUkVOQ0VT IFtpbXBsaWNpdF0KK0NSRUFURSBUQUJMRSB0ZW1wb3JhbF9ma19wZXIycm5nICgKKyAgaWQgaW50 NHJhbmdlLAorICB2YWxpZF9mcm9tIGRhdGUsCisgIHZhbGlkX3RpbCBkYXRlLAorICBwYXJlbnRf aWQgaW50NHJhbmdlLAorICBQRVJJT0QgRk9SIHZhbGlkX2F0ICh2YWxpZF9mcm9tLCB2YWxpZF90 aWwpLAorICBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3BlcjJybmdfcGsgUFJJTUFSWSBLRVkgKGlk LCB2YWxpZF9hdCBXSVRIT1VUIE9WRVJMQVBTKSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19w ZXIycm5nX2ZrIEZPUkVJR04gS0VZIChwYXJlbnRfaWQpCisgICAgUkVGRVJFTkNFUyB0ZW1wb3Jh bF9ybmcKKyk7CitFUlJPUjogIGZvcmVpZ24ga2V5IHVzZXMgUEVSSU9EIG9uIHRoZSByZWZlcmVu Y2VkIHRhYmxlIGJ1dCBub3QgdGhlIHJlZmVyZW5jaW5nIHRhYmxlCistLSBzaG91bGQgZmFpbCBi ZWNhdXNlIG9mIGR1cGxpY2F0ZSByZWZlcmVuY2VkIGNvbHVtbnM6CitDUkVBVEUgVEFCTEUgdGVt cG9yYWxfZmtfcGVyMnJuZyAoCisgIGlkIGludDRyYW5nZSwKKyAgdmFsaWRfZnJvbSBkYXRlLAor ICB2YWxpZF90aWwgZGF0ZSwKKyAgcGFyZW50X2lkIGludDRyYW5nZSwKKyAgUEVSSU9EIEZPUiB2 YWxpZF9hdCAodmFsaWRfZnJvbSwgdmFsaWRfdGlsKSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9m a19wZXIycm5nX3BrIFBSSU1BUlkgS0VZIChpZCwgdmFsaWRfYXQgV0lUSE9VVCBPVkVSTEFQUyks CisgIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcGVyMnJuZ19mayBGT1JFSUdOIEtFWSAocGFyZW50 X2lkLCBQRVJJT0QgcGFyZW50X2lkKQorICAgIFJFRkVSRU5DRVMgdGVtcG9yYWxfcm5nIChpZCwg UEVSSU9EIGlkKQorKTsKK0VSUk9SOiAgZm9yZWlnbiBrZXkgcmVmZXJlbmNlZC1jb2x1bW5zIGxp c3QgbXVzdCBub3QgY29udGFpbiBkdXBsaWNhdGVzCistLSBUd28gc2NhbGFyIGNvbHVtbnMKK0RS T1AgVEFCTEUgdGVtcG9yYWxfcm5nMiBDQVNDQURFOworTk9USUNFOiAgZHJvcCBjYXNjYWRlcyB0 byBjb25zdHJhaW50IHRlbXBvcmFsX2ZrMl9ybmcycm5nX2ZrIG9uIHRhYmxlIHRlbXBvcmFsX2Zr Ml9ybmcycm5nCitDUkVBVEUgVEFCTEUgdGVtcG9yYWxfcm5nMiAoCisgIGlkMSBpbnQ0cmFuZ2Us CisgIGlkMiBpbnQ0cmFuZ2UsCisgIHZhbGlkX2F0IGRhdGVyYW5nZSwKKyAgQ09OU1RSQUlOVCB0 ZW1wb3JhbF9ybmcyX3BrIFBSSU1BUlkgS0VZIChpZDEsIGlkMiwgdmFsaWRfYXQgV0lUSE9VVCBP VkVSTEFQUykKKyk7CitDUkVBVEUgVEFCTEUgdGVtcG9yYWxfZmsyX3BlcjJybmcgKAorICBpZCBp bnQ0cmFuZ2UsCisgIHZhbGlkX2Zyb20gZGF0ZSwKKyAgdmFsaWRfdGlsIGRhdGUsCisgIHBhcmVu dF9pZDEgaW50NHJhbmdlLAorICBwYXJlbnRfaWQyIGludDRyYW5nZSwKKyAgUEVSSU9EIEZPUiB2 YWxpZF9hdCAodmFsaWRfZnJvbSwgdmFsaWRfdGlsKSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9m azJfcGVyMnJuZ19wayBQUklNQVJZIEtFWSAoaWQsIHZhbGlkX2F0IFdJVEhPVVQgT1ZFUkxBUFMp LAorICBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrMl9wZXIycm5nX2ZrIEZPUkVJR04gS0VZIChwYXJl bnRfaWQxLCBwYXJlbnRfaWQyLCBQRVJJT0QgdmFsaWRfYXQpCisgICAgUkVGRVJFTkNFUyB0ZW1w b3JhbF9ybmcyIChpZDEsIGlkMiwgUEVSSU9EIHZhbGlkX2F0KQorKTsKK1xkIHRlbXBvcmFsX2Zr Ml9wZXIycm5nCisgICAgICAgICAgIFRhYmxlICJwdWJsaWMudGVtcG9yYWxfZmsyX3BlcjJybmci CisgICBDb2x1bW4gICB8ICAgVHlwZSAgICB8IENvbGxhdGlvbiB8IE51bGxhYmxlIHwgRGVmYXVs dCAKKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLSstLS0tLS0tLS0tLSstLS0tLS0tLS0tKy0tLS0t LS0tLQorIGlkICAgICAgICAgfCBpbnQ0cmFuZ2UgfCAgICAgICAgICAgfCBub3QgbnVsbCB8IAor IHZhbGlkX2Zyb20gfCBkYXRlICAgICAgfCAgICAgICAgICAgfCAgICAgICAgICB8IAorIHZhbGlk X3RpbCAgfCBkYXRlICAgICAgfCAgICAgICAgICAgfCAgICAgICAgICB8IAorIHBhcmVudF9pZDEg fCBpbnQ0cmFuZ2UgfCAgICAgICAgICAgfCAgICAgICAgICB8IAorIHBhcmVudF9pZDIgfCBpbnQ0 cmFuZ2UgfCAgICAgICAgICAgfCAgICAgICAgICB8IAorUGVyaW9kczoKKyAgICB2YWxpZF9hdCAo dmFsaWRfZnJvbSwgdmFsaWRfdGlsKQorSW5kZXhlczoKKyAgICAidGVtcG9yYWxfZmsyX3BlcjJy bmdfcGsiIFBSSU1BUlkgS0VZIChpZCwgdmFsaWRfYXQgV0lUSE9VVCBPVkVSTEFQUykKK0NoZWNr IGNvbnN0cmFpbnRzOgorICAgICJ0ZW1wb3JhbF9mazJfcGVyMnJuZ192YWxpZF9hdF9jaGVjayIg Q0hFQ0sgKHZhbGlkX2Zyb20gPCB2YWxpZF90aWwpCitGb3JlaWduLWtleSBjb25zdHJhaW50czoK KyAgICAidGVtcG9yYWxfZmsyX3BlcjJybmdfZmsiIEZPUkVJR04gS0VZIChwYXJlbnRfaWQxLCBw YXJlbnRfaWQyLCBQRVJJT0QgdmFsaWRfYXQpIFJFRkVSRU5DRVMgdGVtcG9yYWxfcm5nMihpZDEs IGlkMiwgUEVSSU9EIHZhbGlkX2F0KQorCitEUk9QIFRBQkxFIHRlbXBvcmFsX2ZrMl9wZXIycm5n OworLS0KKy0tIHRlc3QgQUxURVIgVEFCTEUgQUREIENPTlNUUkFJTlQKKy0tCitDUkVBVEUgVEFC TEUgdGVtcG9yYWxfZmtfcGVyMnJuZyAoCisgIGlkIGludDRyYW5nZSwKKyAgdmFsaWRfZnJvbSBk YXRlLAorICB2YWxpZF90aWwgZGF0ZSwKKyAgcGFyZW50X2lkIGludDRyYW5nZSwKKyAgUEVSSU9E IEZPUiB2YWxpZF9hdCAodmFsaWRfZnJvbSwgdmFsaWRfdGlsKSwKKyAgQ09OU1RSQUlOVCB0ZW1w b3JhbF9ma19wZXIycm5nX3BrIFBSSU1BUlkgS0VZIChpZCwgdmFsaWRfYXQgV0lUSE9VVCBPVkVS TEFQUykKKyk7CitBTFRFUiBUQUJMRSB0ZW1wb3JhbF9ma19wZXIycm5nCisgIEFERCBDT05TVFJB SU5UIHRlbXBvcmFsX2ZrX3BlcjJybmdfZmsKKyAgRk9SRUlHTiBLRVkgKHBhcmVudF9pZCwgUEVS SU9EIHZhbGlkX2F0KQorICBSRUZFUkVOQ0VTIHRlbXBvcmFsX3JuZyAoaWQsIFBFUklPRCB2YWxp ZF9hdCk7CistLSBUd28gc2NhbGFyIGNvbHVtbnM6CitDUkVBVEUgVEFCTEUgdGVtcG9yYWxfZmsy X3BlcjJybmcgKAorICBpZCBpbnQ0cmFuZ2UsCisgIHZhbGlkX2Zyb20gZGF0ZSwKKyAgdmFsaWRf dGlsIGRhdGUsCisgIHBhcmVudF9pZDEgaW50NHJhbmdlLAorICBwYXJlbnRfaWQyIGludDRyYW5n ZSwKKyAgUEVSSU9EIEZPUiB2YWxpZF9hdCAodmFsaWRfZnJvbSwgdmFsaWRfdGlsKSwKKyAgQ09O U1RSQUlOVCB0ZW1wb3JhbF9mazJfcGVyMnJuZ19wayBQUklNQVJZIEtFWSAoaWQsIHZhbGlkX2F0 IFdJVEhPVVQgT1ZFUkxBUFMpCispOworQUxURVIgVEFCTEUgdGVtcG9yYWxfZmsyX3BlcjJybmcK KyAgQUREIENPTlNUUkFJTlQgdGVtcG9yYWxfZmsyX3BlcjJybmdfZmsKKyAgRk9SRUlHTiBLRVkg KHBhcmVudF9pZDEsIHBhcmVudF9pZDIsIFBFUklPRCB2YWxpZF9hdCkKKyAgUkVGRVJFTkNFUyB0 ZW1wb3JhbF9ybmcyIChpZDEsIGlkMiwgUEVSSU9EIHZhbGlkX2F0KTsKK1xkIHRlbXBvcmFsX2Zr Ml9wZXIycm5nCisgICAgICAgICAgIFRhYmxlICJwdWJsaWMudGVtcG9yYWxfZmsyX3BlcjJybmci CisgICBDb2x1bW4gICB8ICAgVHlwZSAgICB8IENvbGxhdGlvbiB8IE51bGxhYmxlIHwgRGVmYXVs dCAKKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLSstLS0tLS0tLS0tLSstLS0tLS0tLS0tKy0tLS0t LS0tLQorIGlkICAgICAgICAgfCBpbnQ0cmFuZ2UgfCAgICAgICAgICAgfCBub3QgbnVsbCB8IAor IHZhbGlkX2Zyb20gfCBkYXRlICAgICAgfCAgICAgICAgICAgfCAgICAgICAgICB8IAorIHZhbGlk X3RpbCAgfCBkYXRlICAgICAgfCAgICAgICAgICAgfCAgICAgICAgICB8IAorIHBhcmVudF9pZDEg fCBpbnQ0cmFuZ2UgfCAgICAgICAgICAgfCAgICAgICAgICB8IAorIHBhcmVudF9pZDIgfCBpbnQ0 cmFuZ2UgfCAgICAgICAgICAgfCAgICAgICAgICB8IAorUGVyaW9kczoKKyAgICB2YWxpZF9hdCAo dmFsaWRfZnJvbSwgdmFsaWRfdGlsKQorSW5kZXhlczoKKyAgICAidGVtcG9yYWxfZmsyX3BlcjJy bmdfcGsiIFBSSU1BUlkgS0VZIChpZCwgdmFsaWRfYXQgV0lUSE9VVCBPVkVSTEFQUykKK0NoZWNr IGNvbnN0cmFpbnRzOgorICAgICJ0ZW1wb3JhbF9mazJfcGVyMnJuZ192YWxpZF9hdF9jaGVjayIg Q0hFQ0sgKHZhbGlkX2Zyb20gPCB2YWxpZF90aWwpCitGb3JlaWduLWtleSBjb25zdHJhaW50czoK KyAgICAidGVtcG9yYWxfZmsyX3BlcjJybmdfZmsiIEZPUkVJR04gS0VZIChwYXJlbnRfaWQxLCBw YXJlbnRfaWQyLCBQRVJJT0QgdmFsaWRfYXQpIFJFRkVSRU5DRVMgdGVtcG9yYWxfcm5nMihpZDEs IGlkMiwgUEVSSU9EIHZhbGlkX2F0KQorCistLSB3aXRoIGluZmVycmVkIFBLIG9uIHRoZSByZWZl cmVuY2VkIHRhYmxlLCBhbmQgd3JvbmcgY29sdW1uIHR5cGU6CitBTFRFUiBUQUJMRSB0ZW1wb3Jh bF9ma19wZXIycm5nCisgIERST1AgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19wZXIycm5nX2ZrLAor ICBEUk9QIFBFUklPRCBGT1IgdmFsaWRfYXQsCisgIEFMVEVSIENPTFVNTiB2YWxpZF9mcm9tIFRZ UEUgdGltZXN0YW1wLAorICBBTFRFUiBDT0xVTU4gdmFsaWRfdGlsIFRZUEUgdGltZXN0YW1wLAor ICBBREQgUEVSSU9EIEZPUiB2YWxpZF9hdCAodmFsaWRfZnJvbSwgdmFsaWRfdGlsKTsKK0FMVEVS IFRBQkxFIHRlbXBvcmFsX2ZrX3BlcjJybmcKKyAgQUREIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtf cGVyMnJuZ19maworICBGT1JFSUdOIEtFWSAocGFyZW50X2lkLCBQRVJJT0QgdmFsaWRfYXQpCisg IFJFRkVSRU5DRVMgdGVtcG9yYWxfcm5nOworRVJST1I6ICBmb3JlaWduIGtleSBjb25zdHJhaW50 ICJ0ZW1wb3JhbF9ma19wZXIycm5nX2ZrIiBjYW5ub3QgYmUgaW1wbGVtZW50ZWQKK0RFVEFJTDog IEtleSBjb2x1bW5zICJ2YWxpZF9hdCIgb2YgdGhlIHJlZmVyZW5jaW5nIHRhYmxlIGFuZCAidmFs aWRfYXQiIG9mIHRoZSByZWZlcmVuY2VkIHRhYmxlIGFyZSBvZiBpbmNvbXBhdGlibGUgdHlwZXM6 IHRzcmFuZ2UgYW5kIGRhdGVyYW5nZS4KK0FMVEVSIFRBQkxFIHRlbXBvcmFsX2ZrX3BlcjJybmcK KyAgRFJPUCBQRVJJT0QgRk9SIHZhbGlkX2F0LAorICBBTFRFUiBDT0xVTU4gdmFsaWRfZnJvbSBU WVBFIGRhdGUsCisgIEFMVEVSIENPTFVNTiB2YWxpZF90aWwgVFlQRSBkYXRlLAorICBBREQgUEVS SU9EIEZPUiB2YWxpZF9hdCAodmFsaWRfZnJvbSwgdmFsaWRfdGlsKTsKKy0tIHdpdGggaW5mZXJy ZWQgUEsgb24gdGhlIHJlZmVyZW5jZWQgdGFibGU6CitBTFRFUiBUQUJMRSB0ZW1wb3JhbF9ma19w ZXIycm5nCisgIEFERCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3BlcjJybmdfZmsKKyAgRk9SRUlH TiBLRVkgKHBhcmVudF9pZCwgUEVSSU9EIHZhbGlkX2F0KQorICBSRUZFUkVOQ0VTIHRlbXBvcmFs X3JuZzsKKy0tIHNob3VsZCBmYWlsIGJlY2F1c2Ugb2YgZHVwbGljYXRlIHJlZmVyZW5jZWQgY29s dW1uczoKK0FMVEVSIFRBQkxFIHRlbXBvcmFsX2ZrX3BlcjJybmcKKyAgQUREIENPTlNUUkFJTlQg dGVtcG9yYWxfZmtfcGVyMnJuZ19mazIKKyAgRk9SRUlHTiBLRVkgKHBhcmVudF9pZCwgUEVSSU9E IHBhcmVudF9pZCkKKyAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9ybmcgKGlkLCBQRVJJT0QgaWQpOwor RVJST1I6ICBmb3JlaWduIGtleSByZWZlcmVuY2VkLWNvbHVtbnMgbGlzdCBtdXN0IG5vdCBjb250 YWluIGR1cGxpY2F0ZXMKKy0tCistLSB0ZXN0IHdpdGggcm93cyBhbHJlYWR5CistLQorREVMRVRF IEZST00gdGVtcG9yYWxfZmtfcGVyMnJuZzsKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3JuZzsKK0lO U0VSVCBJTlRPIHRlbXBvcmFsX3JuZyAoaWQsIHZhbGlkX2F0KSBWQUxVRVMKKyAgKCdbMSwyKScs ICdbMjAxOC0wMS0wMiwyMDE4LTAyLTAzKScpLAorICAoJ1sxLDIpJywgJ1syMDE4LTAzLTAzLDIw MTgtMDQtMDQpJyksCisgICgnWzIsMyknLCAnWzIwMTgtMDEtMDEsMjAxOC0wMS0wNSknKSwKKyAg KCdbMyw0KScsICdbMjAxOC0wMS0wMSwpJyk7CitBTFRFUiBUQUJMRSB0ZW1wb3JhbF9ma19wZXIy cm5nCisgIERST1AgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19wZXIycm5nX2ZrOworSU5TRVJUIElO VE8gdGVtcG9yYWxfZmtfcGVyMnJuZyAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCwgcGFyZW50 X2lkKSBWQUxVRVMgKCdbMSwyKScsICcyMDE4LTAxLTAyJywgJzIwMTgtMDItMDEnLCAnWzEsMikn KTsKK0FMVEVSIFRBQkxFIHRlbXBvcmFsX2ZrX3BlcjJybmcKKyAgQUREIENPTlNUUkFJTlQgdGVt cG9yYWxfZmtfcGVyMnJuZ19maworICBGT1JFSUdOIEtFWSAocGFyZW50X2lkLCBQRVJJT0QgdmFs aWRfYXQpCisgIFJFRkVSRU5DRVMgdGVtcG9yYWxfcm5nOworQUxURVIgVEFCTEUgdGVtcG9yYWxf ZmtfcGVyMnJuZworICBEUk9QIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcGVyMnJuZ19mazsKK0lO U0VSVCBJTlRPIHRlbXBvcmFsX2ZrX3BlcjJybmcgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWws IHBhcmVudF9pZCkgVkFMVUVTICgnWzIsMyknLCAnMjAxOC0wMS0wMicsICcyMDE4LTA0LTAxJywg J1sxLDIpJyk7CistLSBzaG91bGQgZmFpbDoKK0FMVEVSIFRBQkxFIHRlbXBvcmFsX2ZrX3BlcjJy bmcKKyAgQUREIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcGVyMnJuZ19maworICBGT1JFSUdOIEtF WSAocGFyZW50X2lkLCBQRVJJT0QgdmFsaWRfYXQpCisgIFJFRkVSRU5DRVMgdGVtcG9yYWxfcm5n OworRVJST1I6ICBpbnNlcnQgb3IgdXBkYXRlIG9uIHRhYmxlICJ0ZW1wb3JhbF9ma19wZXIycm5n IiB2aW9sYXRlcyBmb3JlaWduIGtleSBjb25zdHJhaW50ICJ0ZW1wb3JhbF9ma19wZXIycm5nX2Zr IgorREVUQUlMOiAgS2V5IChwYXJlbnRfaWQsIHZhbGlkX2F0KT0oWzEsMiksIFsyMDE4LTAxLTAy LDIwMTgtMDQtMDEpKSBpcyBub3QgcHJlc2VudCBpbiB0YWJsZSAidGVtcG9yYWxfcm5nIi4KKy0t IG9rYXkgYWdhaW46CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9ma19wZXIycm5nOworQUxURVIgVEFC TEUgdGVtcG9yYWxfZmtfcGVyMnJuZworICBBREQgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19wZXIy cm5nX2ZrCisgIEZPUkVJR04gS0VZIChwYXJlbnRfaWQsIFBFUklPRCB2YWxpZF9hdCkKKyAgUkVG RVJFTkNFUyB0ZW1wb3JhbF9ybmc7CistLQorLS0gdGVzdCBwZ19nZXRfY29uc3RyYWludGRlZgor LS0KK1NFTEVDVCBwZ19nZXRfY29uc3RyYWludGRlZihvaWQpIEZST00gcGdfY29uc3RyYWludCBX SEVSRSBjb25uYW1lID0gJ3RlbXBvcmFsX2ZrX3BlcjJybmdfZmsnOworICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgcGdfZ2V0X2NvbnN0cmFpbnRkZWYgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgCistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyBGT1JFSUdO IEtFWSAocGFyZW50X2lkLCBQRVJJT0QgdmFsaWRfYXQpIFJFRkVSRU5DRVMgdGVtcG9yYWxfcm5n KGlkLCBQRVJJT0QgdmFsaWRfYXQpCisoMSByb3cpCisKKy0tCistLSB0ZXN0IEZLIHJlZmVyZW5j aW5nIGluc2VydHMKKy0tCitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ma19wZXIycm5nIChpZCwgdmFs aWRfZnJvbSwgdmFsaWRfdGlsLCBwYXJlbnRfaWQpIFZBTFVFUyAoJ1sxLDIpJywgJzIwMTgtMDEt MDInLCAnMjAxOC0wMi0wMScsICdbMSwyKScpOworLS0gc2hvdWxkIGZhaWw6CitJTlNFUlQgSU5U TyB0ZW1wb3JhbF9ma19wZXIycm5nIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsLCBwYXJlbnRf aWQpIFZBTFVFUyAoJ1syLDMpJywgJzIwMTgtMDEtMDInLCAnMjAxOC0wNC0wMScsICdbMSwyKScp OworRVJST1I6ICBpbnNlcnQgb3IgdXBkYXRlIG9uIHRhYmxlICJ0ZW1wb3JhbF9ma19wZXIycm5n IiB2aW9sYXRlcyBmb3JlaWduIGtleSBjb25zdHJhaW50ICJ0ZW1wb3JhbF9ma19wZXIycm5nX2Zr IgorREVUQUlMOiAgS2V5IChwYXJlbnRfaWQsIHZhbGlkX2F0KT0oWzEsMiksIFsyMDE4LTAxLTAy LDIwMTgtMDQtMDEpKSBpcyBub3QgcHJlc2VudCBpbiB0YWJsZSAidGVtcG9yYWxfcm5nIi4KKy0t IG5vdyBpdCBzaG91bGQgd29yazoKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3JuZyAoaWQsIHZhbGlk X2F0KSBWQUxVRVMgKCdbMSwyKScsICdbMjAxOC0wMi0wMywyMDE4LTAzLTAzKScpOworSU5TRVJU IElOVE8gdGVtcG9yYWxfZmtfcGVyMnJuZyAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCwgcGFy ZW50X2lkKSBWQUxVRVMgKCdbMiwzKScsICcyMDE4LTAxLTAyJywgJzIwMTgtMDQtMDEnLCAnWzEs MiknKTsKKy0tCistLSB0ZXN0IEZLIHJlZmVyZW5jaW5nIHVwZGF0ZXMKKy0tCistLSBzbGlkZSB0 aGUgZWRnZSBhY3Jvc3MgYSByZWZlcmVuY2VkIHRyYW5zaXRpb246CitVUERBVEUgdGVtcG9yYWxf ZmtfcGVyMnJuZyBTRVQgdmFsaWRfZnJvbSA9ICcyMDE4LTAxLTAyJywgdmFsaWRfdGlsID0gJzIw MTgtMDItMjAnIFdIRVJFIGlkID0gJ1sxLDIpJzsKKy0tIHNob3VsZCBmYWlsOgorVVBEQVRFIHRl bXBvcmFsX2ZrX3BlcjJybmcgU0VUIHZhbGlkX2Zyb20gPSAnMjAxOC0wMS0wMicsIHZhbGlkX3Rp bCA9ICcyMDE4LTA1LTAxJyBXSEVSRSBpZCA9ICdbMSwyKSc7CitFUlJPUjogIGluc2VydCBvciB1 cGRhdGUgb24gdGFibGUgInRlbXBvcmFsX2ZrX3BlcjJybmciIHZpb2xhdGVzIGZvcmVpZ24ga2V5 IGNvbnN0cmFpbnQgInRlbXBvcmFsX2ZrX3BlcjJybmdfZmsiCitERVRBSUw6ICBLZXkgKHBhcmVu dF9pZCwgdmFsaWRfYXQpPShbMSwyKSwgWzIwMTgtMDEtMDIsMjAxOC0wNS0wMSkpIGlzIG5vdCBw cmVzZW50IGluIHRhYmxlICJ0ZW1wb3JhbF9ybmciLgorVVBEQVRFIHRlbXBvcmFsX2ZrX3BlcjJy bmcgU0VUIHBhcmVudF9pZCA9ICdbOCw5KScgV0hFUkUgaWQgPSAnWzEsMiknOworRVJST1I6ICBp bnNlcnQgb3IgdXBkYXRlIG9uIHRhYmxlICJ0ZW1wb3JhbF9ma19wZXIycm5nIiB2aW9sYXRlcyBm b3JlaWduIGtleSBjb25zdHJhaW50ICJ0ZW1wb3JhbF9ma19wZXIycm5nX2ZrIgorREVUQUlMOiAg S2V5IChwYXJlbnRfaWQsIHZhbGlkX2F0KT0oWzgsOSksIFsyMDE4LTAxLTAyLDIwMTgtMDItMjAp KSBpcyBub3QgcHJlc2VudCBpbiB0YWJsZSAidGVtcG9yYWxfcm5nIi4KKy0tIEFMVEVSIEZLIERF RkVSUkFCTEUKK0JFR0lOOworICBJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ybmcgKGlkLCB2YWxpZF9h dCkgVkFMVUVTCisgICAgKCdbNSw2KScsICdbMjAxOC0wMS0wMSwyMDE4LTAyLTAxKScpLAorICAg ICgnWzUsNiknLCAnWzIwMTgtMDItMDEsMjAxOC0wMy0wMSknKTsKKyAgSU5TRVJUIElOVE8gdGVt cG9yYWxfZmtfcGVyMnJuZyAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCwgcGFyZW50X2lkKSBW QUxVRVMKKyAgICAoJ1szLDQpJywgJzIwMTgtMDEtMDUnLCAnMjAxOC0wMS0xMCcsICdbNSw2KScp OworICBBTFRFUiBUQUJMRSB0ZW1wb3JhbF9ma19wZXIycm5nCisgICAgQUxURVIgQ09OU1RSQUlO VCB0ZW1wb3JhbF9ma19wZXIycm5nX2ZrCisgICAgREVGRVJSQUJMRSBJTklUSUFMTFkgREVGRVJS RUQ7CisgIERFTEVURSBGUk9NIHRlbXBvcmFsX3JuZyBXSEVSRSBpZCA9ICdbNSw2KSc7IC0tc2hv dWxkIG5vdCBmYWlsIHlldC4KK0NPTU1JVDsgLS0gc2hvdWxkIGZhaWwgaGVyZS4KK0VSUk9SOiAg dXBkYXRlIG9yIGRlbGV0ZSBvbiB0YWJsZSAidGVtcG9yYWxfcm5nIiB2aW9sYXRlcyBmb3JlaWdu IGtleSBjb25zdHJhaW50ICJ0ZW1wb3JhbF9ma19wZXIycm5nX2ZrIiBvbiB0YWJsZSAidGVtcG9y YWxfZmtfcGVyMnJuZyIKK0RFVEFJTDogIEtleSAoaWQsIHZhbGlkX2F0KT0oWzUsNiksIFsyMDE4 LTAxLTAxLDIwMTgtMDItMDEpKSBpcyBzdGlsbCByZWZlcmVuY2VkIGZyb20gdGFibGUgInRlbXBv cmFsX2ZrX3BlcjJybmciLgorLS0KKy0tIHRlc3QgRksgcmVmZXJlbmNlZCB1cGRhdGVzIE5PIEFD VElPTgorLS0KK1RSVU5DQVRFIHRlbXBvcmFsX3JuZywgdGVtcG9yYWxfZmtfcGVyMnJuZzsKK0FM VEVSIFRBQkxFIHRlbXBvcmFsX2ZrX3BlcjJybmcKKyAgRFJPUCBDT05TVFJBSU5UIHRlbXBvcmFs X2ZrX3BlcjJybmdfZms7CitBTFRFUiBUQUJMRSB0ZW1wb3JhbF9ma19wZXIycm5nCisgIEFERCBD T05TVFJBSU5UIHRlbXBvcmFsX2ZrX3BlcjJybmdfZmsKKyAgRk9SRUlHTiBLRVkgKHBhcmVudF9p ZCwgUEVSSU9EIHZhbGlkX2F0KQorICBSRUZFUkVOQ0VTIHRlbXBvcmFsX3JuZworICBPTiBVUERB VEUgTk8gQUNUSU9OOworLS0gYSBQSyB1cGRhdGUgdGhhdCBzdWNjZWVkcyBiZWNhdXNlIHRoZSBu dW1lcmljIGlkIGlzbid0IHJlZmVyZW5jZWQ6CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ybmcgKGlk LCB2YWxpZF9hdCkgVkFMVUVTICgnWzUsNiknLCAnWzIwMTgtMDEtMDEsMjAxOC0wMi0wMSknKTsK K1VQREFURSB0ZW1wb3JhbF9ybmcgU0VUIHZhbGlkX2F0ID0gJ1syMDE2LTAxLTAxLDIwMTYtMDIt MDEpJyBXSEVSRSBpZCA9ICdbNSw2KSc7CistLSBhIFBLIHVwZGF0ZSB0aGF0IHN1Y2NlZWRzIGV2 ZW4gdGhvdWdoIHRoZSBudW1lcmljIGlkIGlzIHJlZmVyZW5jZWQgYmVjYXVzZSB0aGUgcmFuZ2Ug aXNuJ3Q6CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9ybmcgV0hFUkUgaWQgPSAnWzUsNiknOworSU5T RVJUIElOVE8gdGVtcG9yYWxfcm5nIChpZCwgdmFsaWRfYXQpIFZBTFVFUworICAoJ1s1LDYpJywg J1syMDE4LTAxLTAxLDIwMTgtMDItMDEpJyksCisgICgnWzUsNiknLCAnWzIwMTgtMDItMDEsMjAx OC0wMy0wMSknKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrX3BlcjJybmcgKGlkLCB2YWxpZF9m cm9tLCB2YWxpZF90aWwsIHBhcmVudF9pZCkgVkFMVUVTCisgICgnWzMsNCknLCAnMjAxOC0wMS0w NScsICcyMDE4LTAxLTEwJywgJ1s1LDYpJyk7CitVUERBVEUgdGVtcG9yYWxfcm5nIFNFVCB2YWxp ZF9hdCA9ICdbMjAxNi0wMi0wMSwyMDE2LTAzLTAxKScKK1dIRVJFIGlkID0gJ1s1LDYpJyBBTkQg dmFsaWRfYXQgPSAnWzIwMTgtMDItMDEsMjAxOC0wMy0wMSknOworLS0gQSBQSyB1cGRhdGUgc2xp ZGluZyB0aGUgZWRnZSBiZXR3ZWVuIHR3byByZWZlcmVuY2VkIHJvd3M6CitJTlNFUlQgSU5UTyB0 ZW1wb3JhbF9ybmcgKGlkLCB2YWxpZF9hdCkgVkFMVUVTCisgICgnWzYsNyknLCAnWzIwMTgtMDEt MDEsMjAxOC0wMi0wMSknKSwKKyAgKCdbNiw3KScsICdbMjAxOC0wMi0wMSwyMDE4LTAzLTAxKScp OworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmtfcGVyMnJuZyAoaWQsIHZhbGlkX2Zyb20sIHZhbGlk X3RpbCwgcGFyZW50X2lkKSBWQUxVRVMKKyAgKCdbNCw1KScsICcyMDE4LTAxLTE1JywgJzIwMTgt MDItMTUnLCAnWzYsNyknKTsKK1VQREFURSB0ZW1wb3JhbF9ybmcKK1NFVCB2YWxpZF9hdCA9IENB U0UgV0hFTiBsb3dlcih2YWxpZF9hdCkgPSAnMjAxOC0wMS0wMScgVEhFTiBkYXRlcmFuZ2UoJzIw MTgtMDEtMDEnLCAnMjAxOC0wMS0wNScpCisgICAgICAgICAgICAgICAgICAgIFdIRU4gbG93ZXIo dmFsaWRfYXQpID0gJzIwMTgtMDItMDEnIFRIRU4gZGF0ZXJhbmdlKCcyMDE4LTAxLTA1JywgJzIw MTgtMDMtMDEnKSBFTkQKK1dIRVJFIGlkID0gJ1s2LDcpJzsKKy0tIGEgUEsgdXBkYXRlIHNocmlu a2luZyB0aGUgcmVmZXJlbmNlZCByYW5nZSBidXQgc3RpbGwgdmFsaWQ6CistLSBUaGVyZSBhcmUg dHdvIHJlZmVyZW5jZXM6IG9uZSBmdWxmaWxsZWQgYnkgdGhlIGZpcnN0IHBrIHJvdywKKy0tIHRo ZSBvdGhlciBmdWxmaWxsZWQgYnkgYm90aCBwayByb3dzIGNvbWJpbmVkLgorSU5TRVJUIElOVE8g dGVtcG9yYWxfcm5nIChpZCwgdmFsaWRfYXQpIFZBTFVFUworICAoJ1sxLDIpJywgJ1syMDE4LTAx LTAxLDIwMTgtMDMtMDEpJyksCisgICgnWzEsMiknLCAnWzIwMTgtMDMtMDEsMjAxOC0wNi0wMSkn KTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrX3BlcjJybmcgKGlkLCB2YWxpZF9mcm9tLCB2YWxp ZF90aWwsIHBhcmVudF9pZCkgVkFMVUVTCisgICgnWzEsMiknLCAnMjAxOC0wMS0xNScsICcyMDE4 LTAyLTAxJywgJ1sxLDIpJyksCisgICgnWzIsMyknLCAnMjAxOC0wMS0xNScsICcyMDE4LTA1LTAx JywgJ1sxLDIpJyk7CitVUERBVEUgdGVtcG9yYWxfcm5nIFNFVCB2YWxpZF9hdCA9ICdbMjAxOC0w MS0xNSwyMDE4LTAzLTAxKScKK1dIRVJFIGlkID0gJ1sxLDIpJyBBTkQgdmFsaWRfYXQgQD4gJzIw MTgtMDEtMTUnOjpkYXRlOworLS0gYSBQSyB1cGRhdGUgZ3Jvd2luZyB0aGUgcmVmZXJlbmNlZCBy YW5nZSBpcyBmaW5lOgorVVBEQVRFIHRlbXBvcmFsX3JuZyBTRVQgdmFsaWRfYXQgPSAnWzIwMTgt MDEtMDEsMjAxOC0wMy0wMSknCitXSEVSRSBpZCA9ICdbMSwyKScgQU5EIHZhbGlkX2F0IEA+ICcy MDE4LTAxLTI1Jzo6ZGF0ZTsKKy0tIGEgUEsgdXBkYXRlIHNocmlua2luZyB0aGUgcmVmZXJlbmNl ZCByYW5nZSBhbmQgY2hhbmdpbmcgdGhlIGlkIGludmFsaWRhdGVzIHRoZSB3aG9sZSByYW5nZToK K1VQREFURSB0ZW1wb3JhbF9ybmcgU0VUIGlkID0gJ1syLDMpJywgdmFsaWRfYXQgPSAnWzIwMTgt MDEtMTUsMjAxOC0wMy0wMSknCitXSEVSRSBpZCA9ICdbMSwyKScgQU5EIHZhbGlkX2F0IEA+ICcy MDE4LTAxLTE1Jzo6ZGF0ZTsKK0VSUk9SOiAgdXBkYXRlIG9yIGRlbGV0ZSBvbiB0YWJsZSAidGVt cG9yYWxfcm5nIiB2aW9sYXRlcyBmb3JlaWduIGtleSBjb25zdHJhaW50ICJ0ZW1wb3JhbF9ma19w ZXIycm5nX2ZrIiBvbiB0YWJsZSAidGVtcG9yYWxfZmtfcGVyMnJuZyIKK0RFVEFJTDogIEtleSAo aWQsIHZhbGlkX2F0KT0oWzEsMiksIFsyMDE4LTAxLTAxLDIwMTgtMDMtMDEpKSBpcyBzdGlsbCBy ZWZlcmVuY2VkIGZyb20gdGFibGUgInRlbXBvcmFsX2ZrX3BlcjJybmciLgorLS0gYSBQSyB1cGRh dGUgY2hhbmdpbmcgb25seSB0aGUgaWQgaW52YWxpZGF0ZXMgdGhlIHdob2xlIHJhbmdlOgorVVBE QVRFIHRlbXBvcmFsX3JuZyBTRVQgaWQgPSAnWzIsMyknCitXSEVSRSBpZCA9ICdbMSwyKScgQU5E IHZhbGlkX2F0IEA+ICcyMDE4LTAxLTE1Jzo6ZGF0ZTsKK0VSUk9SOiAgdXBkYXRlIG9yIGRlbGV0 ZSBvbiB0YWJsZSAidGVtcG9yYWxfcm5nIiB2aW9sYXRlcyBmb3JlaWduIGtleSBjb25zdHJhaW50 ICJ0ZW1wb3JhbF9ma19wZXIycm5nX2ZrIiBvbiB0YWJsZSAidGVtcG9yYWxfZmtfcGVyMnJuZyIK K0RFVEFJTDogIEtleSAoaWQsIHZhbGlkX2F0KT0oWzEsMiksIFsyMDE4LTAxLTAxLDIwMTgtMDMt MDEpKSBpcyBzdGlsbCByZWZlcmVuY2VkIGZyb20gdGFibGUgInRlbXBvcmFsX2ZrX3BlcjJybmci LgorLS0gYSBQSyB1cGRhdGUgdGhhdCBsb3NlcyB0aW1lIGZyb20gYm90aCBlbmRzLCBidXQgaXMg c3RpbGwgdmFsaWQ6CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ybmcgKGlkLCB2YWxpZF9hdCkgVkFM VUVTCisgICgnWzIsMyknLCAnWzIwMTgtMDEtMDEsMjAxOC0wMy0wMSknKTsKK0lOU0VSVCBJTlRP IHRlbXBvcmFsX2ZrX3BlcjJybmcgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwsIHBhcmVudF9p ZCkgVkFMVUVTCisgICgnWzUsNiknLCAnMjAxOC0wMS0xNScsICcyMDE4LTAyLTAxJywgJ1syLDMp Jyk7CitVUERBVEUgdGVtcG9yYWxfcm5nIFNFVCB2YWxpZF9hdCA9ICdbMjAxOC0wMS0xNSwyMDE4 LTAyLTE1KScKK1dIRVJFIGlkID0gJ1syLDMpJzsKKy0tIGEgUEsgdXBkYXRlIHRoYXQgZmFpbHMg YmVjYXVzZSBib3RoIGFyZSByZWZlcmVuY2VkOgorVVBEQVRFIHRlbXBvcmFsX3JuZyBTRVQgdmFs aWRfYXQgPSAnWzIwMTYtMDEtMDEsMjAxNi0wMi0wMSknCitXSEVSRSBpZCA9ICdbNSw2KScgQU5E IHZhbGlkX2F0ID0gJ1syMDE4LTAxLTAxLDIwMTgtMDItMDEpJzsKK0VSUk9SOiAgdXBkYXRlIG9y IGRlbGV0ZSBvbiB0YWJsZSAidGVtcG9yYWxfcm5nIiB2aW9sYXRlcyBmb3JlaWduIGtleSBjb25z dHJhaW50ICJ0ZW1wb3JhbF9ma19wZXIycm5nX2ZrIiBvbiB0YWJsZSAidGVtcG9yYWxfZmtfcGVy MnJuZyIKK0RFVEFJTDogIEtleSAoaWQsIHZhbGlkX2F0KT0oWzUsNiksIFsyMDE4LTAxLTAxLDIw MTgtMDItMDEpKSBpcyBzdGlsbCByZWZlcmVuY2VkIGZyb20gdGFibGUgInRlbXBvcmFsX2ZrX3Bl cjJybmciLgorLS0gYSBQSyB1cGRhdGUgdGhhdCBmYWlscyBiZWNhdXNlIGJvdGggYXJlIHJlZmVy ZW5jZWQsIGJ1dCBub3QgJ3RpbCBjb21taXQ6CitCRUdJTjsKKyAgQUxURVIgVEFCTEUgdGVtcG9y YWxfZmtfcGVyMnJuZworICAgIEFMVEVSIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcGVyMnJuZ19m aworICAgIERFRkVSUkFCTEUgSU5JVElBTExZIERFRkVSUkVEOworICBVUERBVEUgdGVtcG9yYWxf cm5nIFNFVCB2YWxpZF9hdCA9ICdbMjAxNi0wMS0wMSwyMDE2LTAyLTAxKScKKyAgV0hFUkUgaWQg PSAnWzUsNiknIEFORCB2YWxpZF9hdCA9IGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDE4LTAy LTAxJyk7CitDT01NSVQ7CitFUlJPUjogIHVwZGF0ZSBvciBkZWxldGUgb24gdGFibGUgInRlbXBv cmFsX3JuZyIgdmlvbGF0ZXMgZm9yZWlnbiBrZXkgY29uc3RyYWludCAidGVtcG9yYWxfZmtfcGVy MnJuZ19mayIgb24gdGFibGUgInRlbXBvcmFsX2ZrX3BlcjJybmciCitERVRBSUw6ICBLZXkgKGlk LCB2YWxpZF9hdCk9KFs1LDYpLCBbMjAxOC0wMS0wMSwyMDE4LTAyLTAxKSkgaXMgc3RpbGwgcmVm ZXJlbmNlZCBmcm9tIHRhYmxlICJ0ZW1wb3JhbF9ma19wZXIycm5nIi4KKy0tIGNoYW5naW5nIHRo ZSBzY2FsYXIgcGFydCBmYWlsczoKK1VQREFURSB0ZW1wb3JhbF9ybmcgU0VUIGlkID0gJ1s3LDgp JworV0hFUkUgaWQgPSAnWzUsNiknIEFORCB2YWxpZF9hdCA9ICdbMjAxOC0wMS0wMSwyMDE4LTAy LTAxKSc7CitFUlJPUjogIHVwZGF0ZSBvciBkZWxldGUgb24gdGFibGUgInRlbXBvcmFsX3JuZyIg dmlvbGF0ZXMgZm9yZWlnbiBrZXkgY29uc3RyYWludCAidGVtcG9yYWxfZmtfcGVyMnJuZ19mayIg b24gdGFibGUgInRlbXBvcmFsX2ZrX3BlcjJybmciCitERVRBSUw6ICBLZXkgKGlkLCB2YWxpZF9h dCk9KFs1LDYpLCBbMjAxOC0wMS0wMSwyMDE4LTAyLTAxKSkgaXMgc3RpbGwgcmVmZXJlbmNlZCBm cm9tIHRhYmxlICJ0ZW1wb3JhbF9ma19wZXIycm5nIi4KKy0tIGNoYW5naW5nIGFuIHVucmVmZXJl bmNlZCBwYXJ0IGlzIG9rYXk6CitVUERBVEUgdGVtcG9yYWxfcm5nCitGT1IgUE9SVElPTiBPRiB2 YWxpZF9hdCBGUk9NICcyMDE4LTAxLTAyJyBUTyAnMjAxOC0wMS0wMycKK1NFVCBpZCA9ICdbNyw4 KScKK1dIRVJFIGlkID0gJ1s1LDYpJzsKKy0tIGNoYW5naW5nIGp1c3QgYSBwYXJ0IGZhaWxzOgor VVBEQVRFIHRlbXBvcmFsX3JuZworRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAxOC0w MS0wNScgVE8gJzIwMTgtMDEtMTAnCitTRVQgaWQgPSAnWzcsOCknCitXSEVSRSBpZCA9ICdbNSw2 KSc7CitFUlJPUjogIHVwZGF0ZSBvciBkZWxldGUgb24gdGFibGUgInRlbXBvcmFsX3JuZyIgdmlv bGF0ZXMgZm9yZWlnbiBrZXkgY29uc3RyYWludCAidGVtcG9yYWxfZmtfcGVyMnJuZ19mayIgb24g dGFibGUgInRlbXBvcmFsX2ZrX3BlcjJybmciCitERVRBSUw6ICBLZXkgKGlkLCB2YWxpZF9hdCk9 KFs1LDYpLCBbMjAxOC0wMS0wMywyMDE4LTAyLTAxKSkgaXMgc3RpbGwgcmVmZXJlbmNlZCBmcm9t IHRhYmxlICJ0ZW1wb3JhbF9ma19wZXIycm5nIi4KK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfcm5n IFdIRVJFIGlkIGluICgnWzUsNiknLCAnWzcsOCknKSBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7Cisg IGlkICAgfCAgICAgICAgdmFsaWRfYXQgICAgICAgICAKKy0tLS0tLS0rLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLQorIFs1LDYpIHwgWzIwMTYtMDItMDEsMjAxNi0wMy0wMSkKKyBbNSw2KSB8IFsy MDE4LTAxLTAxLDIwMTgtMDEtMDIpCisgWzUsNikgfCBbMjAxOC0wMS0wMywyMDE4LTAyLTAxKQor IFs3LDgpIHwgWzIwMTgtMDEtMDIsMjAxOC0wMS0wMykKKyg0IHJvd3MpCisKK1NFTEVDVCAqIEZS T00gdGVtcG9yYWxfZmtfcGVyMnJuZyBXSEVSRSBpZCBpbiAoJ1szLDQpJykgT1JERVIgQlkgaWQs IHZhbGlkX2F0OworICBpZCAgIHwgdmFsaWRfZnJvbSB8IHZhbGlkX3RpbCAgfCBwYXJlbnRfaWQg CistLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0KKyBbMyw0KSB8 IDIwMTgtMDEtMDUgfCAyMDE4LTAxLTEwIHwgWzUsNikKKygxIHJvdykKKworLS0gdGhlbiBkZWxl dGUgdGhlIG9iamVjdGluZyBGSyByZWNvcmQgYW5kIHRoZSBzYW1lIFBLIHVwZGF0ZSBzdWNjZWVk czoKK0RFTEVURSBGUk9NIHRlbXBvcmFsX2ZrX3BlcjJybmcgV0hFUkUgaWQgPSAnWzMsNCknOwor VVBEQVRFIHRlbXBvcmFsX3JuZyBTRVQgdmFsaWRfYXQgPSAnWzIwMTYtMDEtMDEsMjAxNi0wMi0w MSknCitXSEVSRSBpZCA9ICdbNSw2KScgQU5EIHZhbGlkX2F0ID0gJ1syMDE4LTAxLTAxLDIwMTgt MDItMDEpJzsKKy0tCistLSB0ZXN0IEZLIHJlZmVyZW5jZWQgdXBkYXRlcyBSRVNUUklDVAorLS0K K1RSVU5DQVRFIHRlbXBvcmFsX3JuZywgdGVtcG9yYWxfZmtfcGVyMnJuZzsKK0FMVEVSIFRBQkxF IHRlbXBvcmFsX2ZrX3BlcjJybmcKKyAgRFJPUCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3BlcjJy bmdfZms7CitBTFRFUiBUQUJMRSB0ZW1wb3JhbF9ma19wZXIycm5nCisgIEFERCBDT05TVFJBSU5U IHRlbXBvcmFsX2ZrX3BlcjJybmdfZmsKKyAgRk9SRUlHTiBLRVkgKHBhcmVudF9pZCwgUEVSSU9E IHZhbGlkX2F0KQorICBSRUZFUkVOQ0VTIHRlbXBvcmFsX3JuZworICBPTiBVUERBVEUgUkVTVFJJ Q1Q7CitFUlJPUjogIHVuc3VwcG9ydGVkIE9OIFVQREFURSBhY3Rpb24gZm9yIGZvcmVpZ24ga2V5 IGNvbnN0cmFpbnQgdXNpbmcgUEVSSU9ECistLQorLS0gdGVzdCBGSyByZWZlcmVuY2VkIGRlbGV0 ZXMgTk8gQUNUSU9OCistLQorVFJVTkNBVEUgdGVtcG9yYWxfcm5nLCB0ZW1wb3JhbF9ma19wZXIy cm5nOworQUxURVIgVEFCTEUgdGVtcG9yYWxfZmtfcGVyMnJuZworICBBREQgQ09OU1RSQUlOVCB0 ZW1wb3JhbF9ma19wZXIycm5nX2ZrCisgIEZPUkVJR04gS0VZIChwYXJlbnRfaWQsIFBFUklPRCB2 YWxpZF9hdCkKKyAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9ybmc7CistLSBhIFBLIGRlbGV0ZSB0aGF0 IHN1Y2NlZWRzIGJlY2F1c2UgdGhlIG51bWVyaWMgaWQgaXNuJ3QgcmVmZXJlbmNlZDoKK0lOU0VS VCBJTlRPIHRlbXBvcmFsX3JuZyAoaWQsIHZhbGlkX2F0KSBWQUxVRVMgKCdbNSw2KScsICdbMjAx OC0wMS0wMSwyMDE4LTAyLTAxKScpOworREVMRVRFIEZST00gdGVtcG9yYWxfcm5nIFdIRVJFIGlk ID0gJ1s1LDYpJzsKKy0tIGEgUEsgZGVsZXRlIHRoYXQgc3VjY2VlZHMgZXZlbiB0aG91Z2ggdGhl IG51bWVyaWMgaWQgaXMgcmVmZXJlbmNlZCBiZWNhdXNlIHRoZSByYW5nZSBpc24ndDoKK0lOU0VS VCBJTlRPIHRlbXBvcmFsX3JuZyAoaWQsIHZhbGlkX2F0KSBWQUxVRVMKKyAgKCdbNSw2KScsICdb MjAxOC0wMS0wMSwyMDE4LTAyLTAxKScpLAorICAoJ1s1LDYpJywgJ1syMDE4LTAyLTAxLDIwMTgt MDMtMDEpJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ma19wZXIycm5nIChpZCwgdmFsaWRfZnJv bSwgdmFsaWRfdGlsLCBwYXJlbnRfaWQpIFZBTFVFUyAoJ1szLDQpJywgJzIwMTgtMDEtMDUnLCAn MjAxOC0wMS0xMCcsICdbNSw2KScpOworREVMRVRFIEZST00gdGVtcG9yYWxfcm5nIFdIRVJFIGlk ID0gJ1s1LDYpJyBBTkQgdmFsaWRfYXQgPSAnWzIwMTgtMDItMDEsMjAxOC0wMy0wMSknOworLS0g YSBQSyBkZWxldGUgdGhhdCBmYWlscyBiZWNhdXNlIGJvdGggYXJlIHJlZmVyZW5jZWQ6CitERUxF VEUgRlJPTSB0ZW1wb3JhbF9ybmcgV0hFUkUgaWQgPSAnWzUsNiknIEFORCB2YWxpZF9hdCA9ICdb MjAxOC0wMS0wMSwyMDE4LTAyLTAxKSc7CitFUlJPUjogIHVwZGF0ZSBvciBkZWxldGUgb24gdGFi bGUgInRlbXBvcmFsX3JuZyIgdmlvbGF0ZXMgZm9yZWlnbiBrZXkgY29uc3RyYWludCAidGVtcG9y YWxfZmtfcGVyMnJuZ19mayIgb24gdGFibGUgInRlbXBvcmFsX2ZrX3BlcjJybmciCitERVRBSUw6 ICBLZXkgKGlkLCB2YWxpZF9hdCk9KFs1LDYpLCBbMjAxOC0wMS0wMSwyMDE4LTAyLTAxKSkgaXMg c3RpbGwgcmVmZXJlbmNlZCBmcm9tIHRhYmxlICJ0ZW1wb3JhbF9ma19wZXIycm5nIi4KKy0tIGEg UEsgZGVsZXRlIHRoYXQgZmFpbHMgYmVjYXVzZSBib3RoIGFyZSByZWZlcmVuY2VkLCBidXQgbm90 ICd0aWwgY29tbWl0OgorQkVHSU47CisgIEFMVEVSIFRBQkxFIHRlbXBvcmFsX2ZrX3BlcjJybmcK KyAgICBBTFRFUiBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3BlcjJybmdfZmsKKyAgICBERUZFUlJB QkxFIElOSVRJQUxMWSBERUZFUlJFRDsKKyAgREVMRVRFIEZST00gdGVtcG9yYWxfcm5nIFdIRVJF IGlkID0gJ1s1LDYpJyBBTkQgdmFsaWRfYXQgPSBkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAx OC0wMi0wMScpOworQ09NTUlUOworRVJST1I6ICB1cGRhdGUgb3IgZGVsZXRlIG9uIHRhYmxlICJ0 ZW1wb3JhbF9ybmciIHZpb2xhdGVzIGZvcmVpZ24ga2V5IGNvbnN0cmFpbnQgInRlbXBvcmFsX2Zr X3BlcjJybmdfZmsiIG9uIHRhYmxlICJ0ZW1wb3JhbF9ma19wZXIycm5nIgorREVUQUlMOiAgS2V5 IChpZCwgdmFsaWRfYXQpPShbNSw2KSwgWzIwMTgtMDEtMDEsMjAxOC0wMi0wMSkpIGlzIHN0aWxs IHJlZmVyZW5jZWQgZnJvbSB0YWJsZSAidGVtcG9yYWxfZmtfcGVyMnJuZyIuCistLSBkZWxldGlu ZyBhbiB1bnJlZmVyZW5jZWQgcGFydCBpcyBva2F5OgorREVMRVRFIEZST00gdGVtcG9yYWxfcm5n CitGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDE4LTAxLTAyJyBUTyAnMjAxOC0wMS0w MycKK1dIRVJFIGlkID0gJ1s1LDYpJzsKKy0tIGRlbGV0aW5nIGp1c3QgYSBwYXJ0IGZhaWxzOgor REVMRVRFIEZST00gdGVtcG9yYWxfcm5nCitGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcy MDE4LTAxLTA1JyBUTyAnMjAxOC0wMS0xMCcKK1dIRVJFIGlkID0gJ1s1LDYpJzsKK0VSUk9SOiAg dXBkYXRlIG9yIGRlbGV0ZSBvbiB0YWJsZSAidGVtcG9yYWxfcm5nIiB2aW9sYXRlcyBmb3JlaWdu IGtleSBjb25zdHJhaW50ICJ0ZW1wb3JhbF9ma19wZXIycm5nX2ZrIiBvbiB0YWJsZSAidGVtcG9y YWxfZmtfcGVyMnJuZyIKK0RFVEFJTDogIEtleSAoaWQsIHZhbGlkX2F0KT0oWzUsNiksIFsyMDE4 LTAxLTAzLDIwMTgtMDItMDEpKSBpcyBzdGlsbCByZWZlcmVuY2VkIGZyb20gdGFibGUgInRlbXBv cmFsX2ZrX3BlcjJybmciLgorU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9ybmcgV0hFUkUgaWQgaW4g KCdbNSw2KScsICdbNyw4KScpIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKyAgaWQgICB8ICAgICAg ICB2YWxpZF9hdCAgICAgICAgIAorLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisg WzUsNikgfCBbMjAxOC0wMS0wMSwyMDE4LTAxLTAyKQorIFs1LDYpIHwgWzIwMTgtMDEtMDMsMjAx OC0wMi0wMSkKKygyIHJvd3MpCisKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmtfcGVyMnJuZyBX SEVSRSBpZCBpbiAoJ1szLDQpJykgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworICBpZCAgIHwgdmFs aWRfZnJvbSB8IHZhbGlkX3RpbCAgfCBwYXJlbnRfaWQgCistLS0tLS0tKy0tLS0tLS0tLS0tLSst LS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0KKyBbMyw0KSB8IDIwMTgtMDEtMDUgfCAyMDE4LTAxLTEw IHwgWzUsNikKKygxIHJvdykKKworLS0gdGhlbiBkZWxldGUgdGhlIG9iamVjdGluZyBGSyByZWNv cmQgYW5kIHRoZSBzYW1lIFBLIGRlbGV0ZSBzdWNjZWVkczoKK0RFTEVURSBGUk9NIHRlbXBvcmFs X2ZrX3BlcjJybmcgV0hFUkUgaWQgPSAnWzMsNCknOworREVMRVRFIEZST00gdGVtcG9yYWxfcm5n IFdIRVJFIGlkID0gJ1s1LDYpJyBBTkQgdmFsaWRfYXQgPSAnWzIwMTgtMDEtMDEsMjAxOC0wMi0w MSknOworLS0KKy0tIHRlc3QgRksgcmVmZXJlbmNlZCBkZWxldGVzIFJFU1RSSUNUCistLQorVFJV TkNBVEUgdGVtcG9yYWxfcm5nLCB0ZW1wb3JhbF9ma19wZXIycm5nOworQUxURVIgVEFCTEUgdGVt cG9yYWxfZmtfcGVyMnJuZworICBEUk9QIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcGVyMnJuZ19m azsKK0FMVEVSIFRBQkxFIHRlbXBvcmFsX2ZrX3BlcjJybmcKKyAgQUREIENPTlNUUkFJTlQgdGVt cG9yYWxfZmtfcGVyMnJuZ19maworICBGT1JFSUdOIEtFWSAocGFyZW50X2lkLCBQRVJJT0QgdmFs aWRfYXQpCisgIFJFRkVSRU5DRVMgdGVtcG9yYWxfcm5nCisgIE9OIERFTEVURSBSRVNUUklDVDsK K0VSUk9SOiAgdW5zdXBwb3J0ZWQgT04gREVMRVRFIGFjdGlvbiBmb3IgZm9yZWlnbiBrZXkgY29u c3RyYWludCB1c2luZyBQRVJJT0QKKy0tCistLSBwZXIycm5nIHRlc3QgT04gVVBEQVRFL0RFTEVU RSBvcHRpb25zCistLQorLS0gVE9DOgorLS0gcmVmZXJlbmNlZCB1cGRhdGVzIENBU0NBREUKKy0t IHJlZmVyZW5jZWQgZGVsZXRlcyBDQVNDQURFCistLSByZWZlcmVuY2VkIHVwZGF0ZXMgU0VUIE5V TEwKKy0tIHJlZmVyZW5jZWQgZGVsZXRlcyBTRVQgTlVMTAorLS0gcmVmZXJlbmNlZCB1cGRhdGVz IFNFVCBERUZBVUxUCistLSByZWZlcmVuY2VkIGRlbGV0ZXMgU0VUIERFRkFVTFQKKy0tIHJlZmVy ZW5jZWQgdXBkYXRlcyBDQVNDQURFICh0d28gc2NhbGFyIGNvbHMpCistLSByZWZlcmVuY2VkIGRl bGV0ZXMgQ0FTQ0FERSAodHdvIHNjYWxhciBjb2xzKQorLS0gcmVmZXJlbmNlZCB1cGRhdGVzIFNF VCBOVUxMICh0d28gc2NhbGFyIGNvbHMpCistLSByZWZlcmVuY2VkIGRlbGV0ZXMgU0VUIE5VTEwg KHR3byBzY2FsYXIgY29scykKKy0tIHJlZmVyZW5jZWQgZGVsZXRlcyBTRVQgTlVMTCAodHdvIHNj YWxhciBjb2xzLCBTRVQgTlVMTCBzdWJzZXQpCistLSByZWZlcmVuY2VkIHVwZGF0ZXMgU0VUIERF RkFVTFQgKHR3byBzY2FsYXIgY29scykKKy0tIHJlZmVyZW5jZWQgZGVsZXRlcyBTRVQgREVGQVVM VCAodHdvIHNjYWxhciBjb2xzKQorLS0gcmVmZXJlbmNlZCBkZWxldGVzIFNFVCBERUZBVUxUICh0 d28gc2NhbGFyIGNvbHMsIFNFVCBERUZBVUxUIHN1YnNldCkKKy0tCistLSB0ZXN0IEZLIHJlZmVy ZW5jZWQgdXBkYXRlcyBDQVNDQURFCistLQorVFJVTkNBVEUgdGVtcG9yYWxfcm5nLCB0ZW1wb3Jh bF9ma19wZXIycm5nOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcm5nIChpZCwgdmFsaWRfYXQpIFZB TFVFUyAoJ1s2LDcpJywgJ1syMDE4LTAxLTAxLDIwMjEtMDEtMDEpJyk7CitJTlNFUlQgSU5UTyB0 ZW1wb3JhbF9ma19wZXIycm5nIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsLCBwYXJlbnRfaWQp IFZBTFVFUyAoJ1sxMDAsMTAwXScsICcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnLCAnWzYsNykn KTsKK0FMVEVSIFRBQkxFIHRlbXBvcmFsX2ZrX3BlcjJybmcKKyAgQUREIENPTlNUUkFJTlQgdGVt cG9yYWxfZmtfcGVyMnJuZ19maworICAgIEZPUkVJR04gS0VZIChwYXJlbnRfaWQsIFBFUklPRCB2 YWxpZF9hdCkKKyAgICBSRUZFUkVOQ0VTIHRlbXBvcmFsX3JuZworICAgIE9OIERFTEVURSBDQVND QURFIE9OIFVQREFURSBDQVNDQURFOworLS0gbGVmdG92ZXJzIG9uIGJvdGggc2lkZXM6CitVUERB VEUgdGVtcG9yYWxfcm5nIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMTktMDEtMDEn IFRPICcyMDIwLTAxLTAxJyBTRVQgaWQgPSAnWzcsOCknIFdIRVJFIGlkID0gJ1s2LDcpJzsKK1NF TEVDVCAqIEZST00gdGVtcG9yYWxfZmtfcGVyMnJuZyBXSEVSRSBpZCA9ICdbMTAwLDEwMF0nIE9S REVSIEJZIGlkLCB2YWxpZF9hdDsKKyAgICBpZCAgICAgfCB2YWxpZF9mcm9tIHwgdmFsaWRfdGls ICB8IHBhcmVudF9pZCAKKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0t LS0tLS0tLS0KKyBbMTAwLDEwMSkgfCAyMDE4LTAxLTAxIHwgMjAxOS0wMS0wMSB8IFs2LDcpCisg WzEwMCwxMDEpIHwgMjAxOS0wMS0wMSB8IDIwMjAtMDEtMDEgfCBbNyw4KQorIFsxMDAsMTAxKSB8 IDIwMjAtMDEtMDEgfCAyMDIxLTAxLTAxIHwgWzYsNykKKygzIHJvd3MpCisKKy0tIG5vbi1GUE8g dXBkYXRlOgorVVBEQVRFIHRlbXBvcmFsX3JuZyBTRVQgaWQgPSAnWzcsOCknIFdIRVJFIGlkID0g J1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmtfcGVyMnJuZyBXSEVSRSBpZCA9ICdb MTAwLDEwMF0nIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKyAgICBpZCAgICAgfCB2YWxpZF9mcm9t IHwgdmFsaWRfdGlsICB8IHBhcmVudF9pZCAKKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0t LS0tLS0tLS0rLS0tLS0tLS0tLS0KKyBbMTAwLDEwMSkgfCAyMDE4LTAxLTAxIHwgMjAxOS0wMS0w MSB8IFs3LDgpCisgWzEwMCwxMDEpIHwgMjAxOS0wMS0wMSB8IDIwMjAtMDEtMDEgfCBbNyw4KQor IFsxMDAsMTAxKSB8IDIwMjAtMDEtMDEgfCAyMDIxLTAxLTAxIHwgWzcsOCkKKygzIHJvd3MpCisK Ky0tIEZLIGFjcm9zcyB0d28gcmVmZXJlbmNlZCByb3dzOgorSU5TRVJUIElOVE8gdGVtcG9yYWxf cm5nIChpZCwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s4LDkpJywgJ1syMDE4LTAxLTAxLDIwMjAtMDEt MDEpJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ybmcgKGlkLCB2YWxpZF9hdCkgVkFMVUVTICgn WzgsOSknLCAnWzIwMjAtMDEtMDEsMjAyMS0wMS0wMSknKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFs X2ZrX3BlcjJybmcgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwsIHBhcmVudF9pZCkgVkFMVUVT ICgnWzIwMCwyMDBdJywgJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScsICdbOCw5KScpOworVVBE QVRFIHRlbXBvcmFsX3JuZyBTRVQgaWQgPSAnWzksMTApJyBXSEVSRSBpZCA9ICdbOCw5KScgQU5E IHZhbGlkX2F0IEA+ICcyMDE5LTAxLTAxJzo6ZGF0ZTsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxf ZmtfcGVyMnJuZyBXSEVSRSBpZCA9ICdbMjAwLDIwMF0nIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsK KyAgICBpZCAgICAgfCB2YWxpZF9mcm9tIHwgdmFsaWRfdGlsICB8IHBhcmVudF9pZCAKKy0tLS0t LS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0KKyBbMjAwLDIwMSkg fCAyMDE4LTAxLTAxIHwgMjAyMC0wMS0wMSB8IFs5LDEwKQorIFsyMDAsMjAxKSB8IDIwMjAtMDEt MDEgfCAyMDIxLTAxLTAxIHwgWzgsOSkKKygyIHJvd3MpCisKKy0tCistLSB0ZXN0IEZLIHJlZmVy ZW5jZWQgZGVsZXRlcyBDQVNDQURFCistLQorVFJVTkNBVEUgdGVtcG9yYWxfcm5nLCB0ZW1wb3Jh bF9ma19wZXIycm5nOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcm5nIChpZCwgdmFsaWRfYXQpIFZB TFVFUyAoJ1s2LDcpJywgJ1syMDE4LTAxLTAxLDIwMjEtMDEtMDEpJyk7CitJTlNFUlQgSU5UTyB0 ZW1wb3JhbF9ma19wZXIycm5nIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsLCBwYXJlbnRfaWQp IFZBTFVFUyAoJ1sxMDAsMTAwXScsICcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnLCAnWzYsNykn KTsKKy0tIGxlZnRvdmVycyBvbiBib3RoIHNpZGVzOgorREVMRVRFIEZST00gdGVtcG9yYWxfcm5n IEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMTktMDEtMDEnIFRPICcyMDIwLTAxLTAx JyBXSEVSRSBpZCA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrX3BlcjJybmcg V0hFUkUgaWQgPSAnWzEwMCwxMDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisgICAgaWQgICAg IHwgdmFsaWRfZnJvbSB8IHZhbGlkX3RpbCAgfCBwYXJlbnRfaWQgCistLS0tLS0tLS0tLSstLS0t LS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tCisgWzEwMCwxMDEpIHwgMjAxOC0wMS0w MSB8IDIwMTktMDEtMDEgfCBbNiw3KQorIFsxMDAsMTAxKSB8IDIwMjAtMDEtMDEgfCAyMDIxLTAx LTAxIHwgWzYsNykKKygyIHJvd3MpCisKKy0tIG5vbi1GUE8gZGVsZXRlOgorREVMRVRFIEZST00g dGVtcG9yYWxfcm5nIFdIRVJFIGlkID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxf ZmtfcGVyMnJuZyBXSEVSRSBpZCA9ICdbMTAwLDEwMF0nIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsK KyBpZCB8IHZhbGlkX2Zyb20gfCB2YWxpZF90aWwgfCBwYXJlbnRfaWQgCistLS0tKy0tLS0tLS0t LS0tLSstLS0tLS0tLS0tLSstLS0tLS0tLS0tLQorKDAgcm93cykKKworLS0gRksgYWNyb3NzIHR3 byByZWZlcmVuY2VkIHJvd3M6CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ybmcgKGlkLCB2YWxpZF9h dCkgVkFMVUVTICgnWzgsOSknLCAnWzIwMTgtMDEtMDEsMjAyMC0wMS0wMSknKTsKK0lOU0VSVCBJ TlRPIHRlbXBvcmFsX3JuZyAoaWQsIHZhbGlkX2F0KSBWQUxVRVMgKCdbOCw5KScsICdbMjAyMC0w MS0wMSwyMDIxLTAxLTAxKScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmtfcGVyMnJuZyAoaWQs IHZhbGlkX2Zyb20sIHZhbGlkX3RpbCwgcGFyZW50X2lkKSBWQUxVRVMgKCdbMjAwLDIwMF0nLCAn MjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJywgJ1s4LDkpJyk7CitERUxFVEUgRlJPTSB0ZW1wb3Jh bF9ybmcgV0hFUkUgaWQgPSAnWzgsOSknIEFORCB2YWxpZF9hdCBAPiAnMjAxOS0wMS0wMSc6OmRh dGU7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrX3BlcjJybmcgV0hFUkUgaWQgPSAnWzIwMCwy MDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisgICAgaWQgICAgIHwgdmFsaWRfZnJvbSB8IHZh bGlkX3RpbCAgfCBwYXJlbnRfaWQgCistLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0t LS0tKy0tLS0tLS0tLS0tCisgWzIwMCwyMDEpIHwgMjAyMC0wMS0wMSB8IDIwMjEtMDEtMDEgfCBb OCw5KQorKDEgcm93KQorCistLQorLS0gdGVzdCBGSyByZWZlcmVuY2VkIHVwZGF0ZXMgU0VUIE5V TEwKKy0tCitUUlVOQ0FURSB0ZW1wb3JhbF9ybmcsIHRlbXBvcmFsX2ZrX3BlcjJybmc7CitJTlNF UlQgSU5UTyB0ZW1wb3JhbF9ybmcgKGlkLCB2YWxpZF9hdCkgVkFMVUVTICgnWzYsNyknLCAnWzIw MTgtMDEtMDEsMjAyMS0wMS0wMSknKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrX3BlcjJybmcg KGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwsIHBhcmVudF9pZCkgVkFMVUVTICgnWzEwMCwxMDBd JywgJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScsICdbNiw3KScpOworQUxURVIgVEFCTEUgdGVt cG9yYWxfZmtfcGVyMnJuZworICBEUk9QIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcGVyMnJuZ19m aywKKyAgQUREIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcGVyMnJuZ19maworICAgIEZPUkVJR04g S0VZIChwYXJlbnRfaWQsIFBFUklPRCB2YWxpZF9hdCkKKyAgICBSRUZFUkVOQ0VTIHRlbXBvcmFs X3JuZworICAgIE9OIERFTEVURSBTRVQgTlVMTCBPTiBVUERBVEUgU0VUIE5VTEw7CistLSBsZWZ0 b3ZlcnMgb24gYm90aCBzaWRlczoKK1VQREFURSB0ZW1wb3JhbF9ybmcgRk9SIFBPUlRJT04gT0Yg dmFsaWRfYXQgRlJPTSAnMjAxOS0wMS0wMScgVE8gJzIwMjAtMDEtMDEnIFNFVCBpZCA9ICdbNyw4 KScgV0hFUkUgaWQgPSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9ma19wZXIycm5n IFdIRVJFIGlkID0gJ1sxMDAsMTAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworICAgIGlkICAg ICB8IHZhbGlkX2Zyb20gfCB2YWxpZF90aWwgIHwgcGFyZW50X2lkIAorLS0tLS0tLS0tLS0rLS0t LS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLQorIFsxMDAsMTAxKSB8IDIwMTgtMDEt MDEgfCAyMDE5LTAxLTAxIHwgWzYsNykKKyBbMTAwLDEwMSkgfCAyMDE5LTAxLTAxIHwgMjAyMC0w MS0wMSB8IAorIFsxMDAsMTAxKSB8IDIwMjAtMDEtMDEgfCAyMDIxLTAxLTAxIHwgWzYsNykKKygz IHJvd3MpCisKKy0tIG5vbi1GUE8gdXBkYXRlOgorVVBEQVRFIHRlbXBvcmFsX3JuZyBTRVQgaWQg PSAnWzcsOCknIFdIRVJFIGlkID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmtf cGVyMnJuZyBXSEVSRSBpZCA9ICdbMTAwLDEwMF0nIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKyAg ICBpZCAgICAgfCB2YWxpZF9mcm9tIHwgdmFsaWRfdGlsICB8IHBhcmVudF9pZCAKKy0tLS0tLS0t LS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0KKyBbMTAwLDEwMSkgfCAy MDE4LTAxLTAxIHwgMjAxOS0wMS0wMSB8IAorIFsxMDAsMTAxKSB8IDIwMTktMDEtMDEgfCAyMDIw LTAxLTAxIHwgCisgWzEwMCwxMDEpIHwgMjAyMC0wMS0wMSB8IDIwMjEtMDEtMDEgfCAKKygzIHJv d3MpCisKKy0tIEZLIGFjcm9zcyB0d28gcmVmZXJlbmNlZCByb3dzOgorSU5TRVJUIElOVE8gdGVt cG9yYWxfcm5nIChpZCwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s4LDkpJywgJ1syMDE4LTAxLTAxLDIw MjAtMDEtMDEpJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ybmcgKGlkLCB2YWxpZF9hdCkgVkFM VUVTICgnWzgsOSknLCAnWzIwMjAtMDEtMDEsMjAyMS0wMS0wMSknKTsKK0lOU0VSVCBJTlRPIHRl bXBvcmFsX2ZrX3BlcjJybmcgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwsIHBhcmVudF9pZCkg VkFMVUVTICgnWzIwMCwyMDBdJywgJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScsICdbOCw5KScp OworVVBEQVRFIHRlbXBvcmFsX3JuZyBTRVQgaWQgPSAnWzksMTApJyBXSEVSRSBpZCA9ICdbOCw5 KScgQU5EIHZhbGlkX2F0IEA+ICcyMDE5LTAxLTAxJzo6ZGF0ZTsKK1NFTEVDVCAqIEZST00gdGVt cG9yYWxfZmtfcGVyMnJuZyBXSEVSRSBpZCA9ICdbMjAwLDIwMF0nIE9SREVSIEJZIGlkLCB2YWxp ZF9hdDsKKyAgICBpZCAgICAgfCB2YWxpZF9mcm9tIHwgdmFsaWRfdGlsICB8IHBhcmVudF9pZCAK Ky0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0KKyBbMjAw LDIwMSkgfCAyMDE4LTAxLTAxIHwgMjAyMC0wMS0wMSB8IAorIFsyMDAsMjAxKSB8IDIwMjAtMDEt MDEgfCAyMDIxLTAxLTAxIHwgWzgsOSkKKygyIHJvd3MpCisKKy0tCistLSB0ZXN0IEZLIHJlZmVy ZW5jZWQgZGVsZXRlcyBTRVQgTlVMTAorLS0KK1RSVU5DQVRFIHRlbXBvcmFsX3JuZywgdGVtcG9y YWxfZmtfcGVyMnJuZzsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3JuZyAoaWQsIHZhbGlkX2F0KSBW QUxVRVMgKCdbNiw3KScsICdbMjAxOC0wMS0wMSwyMDIxLTAxLTAxKScpOworSU5TRVJUIElOVE8g dGVtcG9yYWxfZmtfcGVyMnJuZyAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCwgcGFyZW50X2lk KSBWQUxVRVMgKCdbMTAwLDEwMF0nLCAnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJywgJ1s2LDcp Jyk7CistLSBsZWZ0b3ZlcnMgb24gYm90aCBzaWRlczoKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3Ju ZyBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDE5LTAxLTAxJyBUTyAnMjAyMC0wMS0w MScgV0hFUkUgaWQgPSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9ma19wZXIycm5n IFdIRVJFIGlkID0gJ1sxMDAsMTAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworICAgIGlkICAg ICB8IHZhbGlkX2Zyb20gfCB2YWxpZF90aWwgIHwgcGFyZW50X2lkIAorLS0tLS0tLS0tLS0rLS0t LS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLQorIFsxMDAsMTAxKSB8IDIwMTgtMDEt MDEgfCAyMDE5LTAxLTAxIHwgWzYsNykKKyBbMTAwLDEwMSkgfCAyMDE5LTAxLTAxIHwgMjAyMC0w MS0wMSB8IAorIFsxMDAsMTAxKSB8IDIwMjAtMDEtMDEgfCAyMDIxLTAxLTAxIHwgWzYsNykKKygz IHJvd3MpCisKKy0tIG5vbi1GUE8gZGVsZXRlOgorREVMRVRFIEZST00gdGVtcG9yYWxfcm5nIFdI RVJFIGlkID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmtfcGVyMnJuZyBXSEVS RSBpZCA9ICdbMTAwLDEwMF0nIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKyAgICBpZCAgICAgfCB2 YWxpZF9mcm9tIHwgdmFsaWRfdGlsICB8IHBhcmVudF9pZCAKKy0tLS0tLS0tLS0tKy0tLS0tLS0t LS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0KKyBbMTAwLDEwMSkgfCAyMDE4LTAxLTAxIHwg MjAxOS0wMS0wMSB8IAorIFsxMDAsMTAxKSB8IDIwMTktMDEtMDEgfCAyMDIwLTAxLTAxIHwgCisg WzEwMCwxMDEpIHwgMjAyMC0wMS0wMSB8IDIwMjEtMDEtMDEgfCAKKygzIHJvd3MpCisKKy0tIEZL IGFjcm9zcyB0d28gcmVmZXJlbmNlZCByb3dzOgorSU5TRVJUIElOVE8gdGVtcG9yYWxfcm5nIChp ZCwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s4LDkpJywgJ1syMDE4LTAxLTAxLDIwMjAtMDEtMDEpJyk7 CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ybmcgKGlkLCB2YWxpZF9hdCkgVkFMVUVTICgnWzgsOSkn LCAnWzIwMjAtMDEtMDEsMjAyMS0wMS0wMSknKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrX3Bl cjJybmcgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwsIHBhcmVudF9pZCkgVkFMVUVTICgnWzIw MCwyMDBdJywgJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScsICdbOCw5KScpOworREVMRVRFIEZS T00gdGVtcG9yYWxfcm5nIFdIRVJFIGlkID0gJ1s4LDkpJyBBTkQgdmFsaWRfYXQgQD4gJzIwMTkt MDEtMDEnOjpkYXRlOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9ma19wZXIycm5nIFdIRVJFIGlk ID0gJ1syMDAsMjAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworICAgIGlkICAgICB8IHZhbGlk X2Zyb20gfCB2YWxpZF90aWwgIHwgcGFyZW50X2lkIAorLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0t Ky0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLQorIFsyMDAsMjAxKSB8IDIwMTgtMDEtMDEgfCAyMDIw LTAxLTAxIHwgCisgWzIwMCwyMDEpIHwgMjAyMC0wMS0wMSB8IDIwMjEtMDEtMDEgfCBbOCw5KQor KDIgcm93cykKKworLS0KKy0tIHRlc3QgRksgcmVmZXJlbmNlZCB1cGRhdGVzIFNFVCBERUZBVUxU CistLQorVFJVTkNBVEUgdGVtcG9yYWxfcm5nLCB0ZW1wb3JhbF9ma19wZXIycm5nOworSU5TRVJU IElOVE8gdGVtcG9yYWxfcm5nIChpZCwgdmFsaWRfYXQpIFZBTFVFUyAoJ1stMSwtMV0nLCAnKCwp Jyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ybmcgKGlkLCB2YWxpZF9hdCkgVkFMVUVTICgnWzYs NyknLCAnWzIwMTgtMDEtMDEsMjAyMS0wMS0wMSknKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2Zr X3BlcjJybmcgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwsIHBhcmVudF9pZCkgVkFMVUVTICgn WzEwMCwxMDBdJywgJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScsICdbNiw3KScpOworQUxURVIg VEFCTEUgdGVtcG9yYWxfZmtfcGVyMnJuZworICBBTFRFUiBDT0xVTU4gcGFyZW50X2lkIFNFVCBE RUZBVUxUICdbLTEsLTFdJywKKyAgRFJPUCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3BlcjJybmdf ZmssCisgIEFERCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3BlcjJybmdfZmsKKyAgICBGT1JFSUdO IEtFWSAocGFyZW50X2lkLCBQRVJJT0QgdmFsaWRfYXQpCisgICAgUkVGRVJFTkNFUyB0ZW1wb3Jh bF9ybmcKKyAgICBPTiBERUxFVEUgU0VUIERFRkFVTFQgT04gVVBEQVRFIFNFVCBERUZBVUxUOwor LS0gbGVmdG92ZXJzIG9uIGJvdGggc2lkZXM6CitVUERBVEUgdGVtcG9yYWxfcm5nIEZPUiBQT1JU SU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMTktMDEtMDEnIFRPICcyMDIwLTAxLTAxJyBTRVQgaWQg PSAnWzcsOCknIFdIRVJFIGlkID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmtf cGVyMnJuZyBXSEVSRSBpZCA9ICdbMTAwLDEwMF0nIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKyAg ICBpZCAgICAgfCB2YWxpZF9mcm9tIHwgdmFsaWRfdGlsICB8IHBhcmVudF9pZCAKKy0tLS0tLS0t LS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0KKyBbMTAwLDEwMSkgfCAy MDE4LTAxLTAxIHwgMjAxOS0wMS0wMSB8IFs2LDcpCisgWzEwMCwxMDEpIHwgMjAxOS0wMS0wMSB8 IDIwMjAtMDEtMDEgfCBbLTEsMCkKKyBbMTAwLDEwMSkgfCAyMDIwLTAxLTAxIHwgMjAyMS0wMS0w MSB8IFs2LDcpCisoMyByb3dzKQorCistLSBub24tRlBPIHVwZGF0ZToKK1VQREFURSB0ZW1wb3Jh bF9ybmcgU0VUIGlkID0gJ1s3LDgpJyBXSEVSRSBpZCA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9N IHRlbXBvcmFsX2ZrX3BlcjJybmcgV0hFUkUgaWQgPSAnWzEwMCwxMDBdJyBPUkRFUiBCWSBpZCwg dmFsaWRfYXQ7CisgICAgaWQgICAgIHwgdmFsaWRfZnJvbSB8IHZhbGlkX3RpbCAgfCBwYXJlbnRf aWQgCistLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tCisg WzEwMCwxMDEpIHwgMjAxOC0wMS0wMSB8IDIwMTktMDEtMDEgfCBbLTEsMCkKKyBbMTAwLDEwMSkg fCAyMDE5LTAxLTAxIHwgMjAyMC0wMS0wMSB8IFstMSwwKQorIFsxMDAsMTAxKSB8IDIwMjAtMDEt MDEgfCAyMDIxLTAxLTAxIHwgWy0xLDApCisoMyByb3dzKQorCistLSBGSyBhY3Jvc3MgdHdvIHJl ZmVyZW5jZWQgcm93czoKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3JuZyAoaWQsIHZhbGlkX2F0KSBW QUxVRVMgKCdbOCw5KScsICdbMjAxOC0wMS0wMSwyMDIwLTAxLTAxKScpOworSU5TRVJUIElOVE8g dGVtcG9yYWxfcm5nIChpZCwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s4LDkpJywgJ1syMDIwLTAxLTAx LDIwMjEtMDEtMDEpJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ma19wZXIycm5nIChpZCwgdmFs aWRfZnJvbSwgdmFsaWRfdGlsLCBwYXJlbnRfaWQpIFZBTFVFUyAoJ1syMDAsMjAwXScsICcyMDE4 LTAxLTAxJywgJzIwMjEtMDEtMDEnLCAnWzgsOSknKTsKK1VQREFURSB0ZW1wb3JhbF9ybmcgU0VU IGlkID0gJ1s5LDEwKScgV0hFUkUgaWQgPSAnWzgsOSknIEFORCB2YWxpZF9hdCBAPiAnMjAxOS0w MS0wMSc6OmRhdGU7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrX3BlcjJybmcgV0hFUkUgaWQg PSAnWzIwMCwyMDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisgICAgaWQgICAgIHwgdmFsaWRf ZnJvbSB8IHZhbGlkX3RpbCAgfCBwYXJlbnRfaWQgCistLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0r LS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tCisgWzIwMCwyMDEpIHwgMjAxOC0wMS0wMSB8IDIwMjAt MDEtMDEgfCBbLTEsMCkKKyBbMjAwLDIwMSkgfCAyMDIwLTAxLTAxIHwgMjAyMS0wMS0wMSB8IFs4 LDkpCisoMiByb3dzKQorCistLQorLS0gdGVzdCBGSyByZWZlcmVuY2VkIGRlbGV0ZXMgU0VUIERF RkFVTFQKKy0tCitUUlVOQ0FURSB0ZW1wb3JhbF9ybmcsIHRlbXBvcmFsX2ZrX3BlcjJybmc7CitJ TlNFUlQgSU5UTyB0ZW1wb3JhbF9ybmcgKGlkLCB2YWxpZF9hdCkgVkFMVUVTICgnWy0xLC0xXScs ICcoLCknKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3JuZyAoaWQsIHZhbGlkX2F0KSBWQUxVRVMg KCdbNiw3KScsICdbMjAxOC0wMS0wMSwyMDIxLTAxLTAxKScpOworSU5TRVJUIElOVE8gdGVtcG9y YWxfZmtfcGVyMnJuZyAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCwgcGFyZW50X2lkKSBWQUxV RVMgKCdbMTAwLDEwMF0nLCAnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJywgJ1s2LDcpJyk7Cist LSBsZWZ0b3ZlcnMgb24gYm90aCBzaWRlczoKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3JuZyBGT1Ig UE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDE5LTAxLTAxJyBUTyAnMjAyMC0wMS0wMScgV0hF UkUgaWQgPSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9ma19wZXIycm5nIFdIRVJF IGlkID0gJ1sxMDAsMTAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworICAgIGlkICAgICB8IHZh bGlkX2Zyb20gfCB2YWxpZF90aWwgIHwgcGFyZW50X2lkIAorLS0tLS0tLS0tLS0rLS0tLS0tLS0t LS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLQorIFsxMDAsMTAxKSB8IDIwMTgtMDEtMDEgfCAy MDE5LTAxLTAxIHwgWzYsNykKKyBbMTAwLDEwMSkgfCAyMDE5LTAxLTAxIHwgMjAyMC0wMS0wMSB8 IFstMSwwKQorIFsxMDAsMTAxKSB8IDIwMjAtMDEtMDEgfCAyMDIxLTAxLTAxIHwgWzYsNykKKygz IHJvd3MpCisKKy0tIG5vbi1GUE8gdXBkYXRlOgorREVMRVRFIEZST00gdGVtcG9yYWxfcm5nIFdI RVJFIGlkID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmtfcGVyMnJuZyBXSEVS RSBpZCA9ICdbMTAwLDEwMF0nIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKyAgICBpZCAgICAgfCB2 YWxpZF9mcm9tIHwgdmFsaWRfdGlsICB8IHBhcmVudF9pZCAKKy0tLS0tLS0tLS0tKy0tLS0tLS0t LS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0KKyBbMTAwLDEwMSkgfCAyMDE4LTAxLTAxIHwg MjAxOS0wMS0wMSB8IFstMSwwKQorIFsxMDAsMTAxKSB8IDIwMTktMDEtMDEgfCAyMDIwLTAxLTAx IHwgWy0xLDApCisgWzEwMCwxMDEpIHwgMjAyMC0wMS0wMSB8IDIwMjEtMDEtMDEgfCBbLTEsMCkK KygzIHJvd3MpCisKKy0tIEZLIGFjcm9zcyB0d28gcmVmZXJlbmNlZCByb3dzOgorSU5TRVJUIElO VE8gdGVtcG9yYWxfcm5nIChpZCwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s4LDkpJywgJ1syMDE4LTAx LTAxLDIwMjAtMDEtMDEpJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ybmcgKGlkLCB2YWxpZF9h dCkgVkFMVUVTICgnWzgsOSknLCAnWzIwMjAtMDEtMDEsMjAyMS0wMS0wMSknKTsKK0lOU0VSVCBJ TlRPIHRlbXBvcmFsX2ZrX3BlcjJybmcgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwsIHBhcmVu dF9pZCkgVkFMVUVTICgnWzIwMCwyMDBdJywgJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScsICdb OCw5KScpOworREVMRVRFIEZST00gdGVtcG9yYWxfcm5nIFdIRVJFIGlkID0gJ1s4LDkpJyBBTkQg dmFsaWRfYXQgQD4gJzIwMTktMDEtMDEnOjpkYXRlOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9m a19wZXIycm5nIFdIRVJFIGlkID0gJ1syMDAsMjAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0Owor ICAgIGlkICAgICB8IHZhbGlkX2Zyb20gfCB2YWxpZF90aWwgIHwgcGFyZW50X2lkIAorLS0tLS0t LS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLQorIFsyMDAsMjAxKSB8 IDIwMTgtMDEtMDEgfCAyMDIwLTAxLTAxIHwgWy0xLDApCisgWzIwMCwyMDEpIHwgMjAyMC0wMS0w MSB8IDIwMjEtMDEtMDEgfCBbOCw5KQorKDIgcm93cykKKworLS0KKy0tIHRlc3QgRksgcmVmZXJl bmNlZCB1cGRhdGVzIENBU0NBREUgKHR3byBzY2FsYXIgY29scykKKy0tCitUUlVOQ0FURSB0ZW1w b3JhbF9ybmcyLCB0ZW1wb3JhbF9mazJfcGVyMnJuZzsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3Ju ZzIgKGlkMSwgaWQyLCB2YWxpZF9hdCkgVkFMVUVTICgnWzYsNyknLCAnWzYsNyknLCAnWzIwMTgt MDEtMDEsMjAyMS0wMS0wMSknKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrMl9wZXIycm5nIChp ZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsLCBwYXJlbnRfaWQxLCBwYXJlbnRfaWQyKSBWQUxVRVMg KCdbMTAwLDEwMF0nLCAnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJywgJ1s2LDcpJywgJ1s2LDcp Jyk7CitBTFRFUiBUQUJMRSB0ZW1wb3JhbF9mazJfcGVyMnJuZworICBEUk9QIENPTlNUUkFJTlQg dGVtcG9yYWxfZmsyX3BlcjJybmdfZmssCisgIEFERCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrMl9w ZXIycm5nX2ZrCisgICAgRk9SRUlHTiBLRVkgKHBhcmVudF9pZDEsIHBhcmVudF9pZDIsIFBFUklP RCB2YWxpZF9hdCkKKyAgICBSRUZFUkVOQ0VTIHRlbXBvcmFsX3JuZzIKKyAgICBPTiBERUxFVEUg Q0FTQ0FERSBPTiBVUERBVEUgQ0FTQ0FERTsKKy0tIGxlZnRvdmVycyBvbiBib3RoIHNpZGVzOgor VVBEQVRFIHRlbXBvcmFsX3JuZzIgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAxOS0w MS0wMScgVE8gJzIwMjAtMDEtMDEnIFNFVCBpZDEgPSAnWzcsOCknIFdIRVJFIGlkMSA9ICdbNiw3 KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9wZXIycm5nIFdIRVJFIGlkID0gJ1sxMDAs MTAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworICAgIGlkICAgICB8IHZhbGlkX2Zyb20gfCB2 YWxpZF90aWwgIHwgcGFyZW50X2lkMSB8IHBhcmVudF9pZDIgCistLS0tLS0tLS0tLSstLS0tLS0t LS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0KKyBbMTAwLDEwMSkg fCAyMDE4LTAxLTAxIHwgMjAxOS0wMS0wMSB8IFs2LDcpICAgICAgfCBbNiw3KQorIFsxMDAsMTAx KSB8IDIwMTktMDEtMDEgfCAyMDIwLTAxLTAxIHwgWzcsOCkgICAgICB8IFs2LDcpCisgWzEwMCwx MDEpIHwgMjAyMC0wMS0wMSB8IDIwMjEtMDEtMDEgfCBbNiw3KSAgICAgIHwgWzYsNykKKygzIHJv d3MpCisKKy0tIG5vbi1GUE8gdXBkYXRlOgorVVBEQVRFIHRlbXBvcmFsX3JuZzIgU0VUIGlkMSA9 ICdbNyw4KScgV0hFUkUgaWQxID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsy X3BlcjJybmcgV0hFUkUgaWQgPSAnWzEwMCwxMDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7Cisg ICAgaWQgICAgIHwgdmFsaWRfZnJvbSB8IHZhbGlkX3RpbCAgfCBwYXJlbnRfaWQxIHwgcGFyZW50 X2lkMiAKKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0t Ky0tLS0tLS0tLS0tLQorIFsxMDAsMTAxKSB8IDIwMTgtMDEtMDEgfCAyMDE5LTAxLTAxIHwgWzcs OCkgICAgICB8IFs2LDcpCisgWzEwMCwxMDEpIHwgMjAxOS0wMS0wMSB8IDIwMjAtMDEtMDEgfCBb Nyw4KSAgICAgIHwgWzYsNykKKyBbMTAwLDEwMSkgfCAyMDIwLTAxLTAxIHwgMjAyMS0wMS0wMSB8 IFs3LDgpICAgICAgfCBbNiw3KQorKDMgcm93cykKKworLS0gRksgYWNyb3NzIHR3byByZWZlcmVu Y2VkIHJvd3M6CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ybmcyIChpZDEsIGlkMiwgdmFsaWRfYXQp IFZBTFVFUyAoJ1s4LDkpJywgJ1s4LDkpJywgJ1syMDE4LTAxLTAxLDIwMjAtMDEtMDEpJyk7CitJ TlNFUlQgSU5UTyB0ZW1wb3JhbF9ybmcyIChpZDEsIGlkMiwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s4 LDkpJywgJ1s4LDkpJywgJ1syMDIwLTAxLTAxLDIwMjEtMDEtMDEpJyk7CitJTlNFUlQgSU5UTyB0 ZW1wb3JhbF9mazJfcGVyMnJuZyAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCwgcGFyZW50X2lk MSwgcGFyZW50X2lkMikgVkFMVUVTICgnWzIwMCwyMDBdJywgJzIwMTgtMDEtMDEnLCAnMjAyMS0w MS0wMScsICdbOCw5KScsICdbOCw5KScpOworVVBEQVRFIHRlbXBvcmFsX3JuZzIgU0VUIGlkMSA9 ICdbOSwxMCknIFdIRVJFIGlkMSA9ICdbOCw5KScgQU5EIHZhbGlkX2F0IEA+ICcyMDE5LTAxLTAx Jzo6ZGF0ZTsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX3BlcjJybmcgV0hFUkUgaWQgPSAn WzIwMCwyMDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisgICAgaWQgICAgIHwgdmFsaWRfZnJv bSB8IHZhbGlkX3RpbCAgfCBwYXJlbnRfaWQxIHwgcGFyZW50X2lkMiAKKy0tLS0tLS0tLS0tKy0t LS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLQorIFsyMDAs MjAxKSB8IDIwMTgtMDEtMDEgfCAyMDIwLTAxLTAxIHwgWzksMTApICAgICB8IFs4LDkpCisgWzIw MCwyMDEpIHwgMjAyMC0wMS0wMSB8IDIwMjEtMDEtMDEgfCBbOCw5KSAgICAgIHwgWzgsOSkKKygy IHJvd3MpCisKKy0tCistLSB0ZXN0IEZLIHJlZmVyZW5jZWQgZGVsZXRlcyBDQVNDQURFICh0d28g c2NhbGFyIGNvbHMpCistLQorVFJVTkNBVEUgdGVtcG9yYWxfcm5nMiwgdGVtcG9yYWxfZmsyX3Bl cjJybmc7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ybmcyIChpZDEsIGlkMiwgdmFsaWRfYXQpIFZB TFVFUyAoJ1s2LDcpJywgJ1s2LDcpJywgJ1syMDE4LTAxLTAxLDIwMjEtMDEtMDEpJyk7CitJTlNF UlQgSU5UTyB0ZW1wb3JhbF9mazJfcGVyMnJuZyAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCwg cGFyZW50X2lkMSwgcGFyZW50X2lkMikgVkFMVUVTICgnWzEwMCwxMDBdJywgJzIwMTgtMDEtMDEn LCAnMjAyMS0wMS0wMScsICdbNiw3KScsICdbNiw3KScpOworLS0gbGVmdG92ZXJzIG9uIGJvdGgg c2lkZXM6CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9ybmcyIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0 IEZST00gJzIwMTktMDEtMDEnIFRPICcyMDIwLTAxLTAxJyBXSEVSRSBpZDEgPSAnWzYsNyknOwor U0VMRUNUICogRlJPTSB0ZW1wb3JhbF9mazJfcGVyMnJuZyBXSEVSRSBpZCA9ICdbMTAwLDEwMF0n IE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKyAgICBpZCAgICAgfCB2YWxpZF9mcm9tIHwgdmFsaWRf dGlsICB8IHBhcmVudF9pZDEgfCBwYXJlbnRfaWQyIAorLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0t Ky0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tCisgWzEwMCwxMDEpIHwgMjAx OC0wMS0wMSB8IDIwMTktMDEtMDEgfCBbNiw3KSAgICAgIHwgWzYsNykKKyBbMTAwLDEwMSkgfCAy MDIwLTAxLTAxIHwgMjAyMS0wMS0wMSB8IFs2LDcpICAgICAgfCBbNiw3KQorKDIgcm93cykKKwor LS0gbm9uLUZQTyBkZWxldGU6CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9ybmcyIFdIRVJFIGlkMSA9 ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9wZXIycm5nIFdIRVJFIGlkID0g J1sxMDAsMTAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworIGlkIHwgdmFsaWRfZnJvbSB8IHZh bGlkX3RpbCB8IHBhcmVudF9pZDEgfCBwYXJlbnRfaWQyIAorLS0tLSstLS0tLS0tLS0tLS0rLS0t LS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLQorKDAgcm93cykKKworLS0gRksgYWNy b3NzIHR3byByZWZlcmVuY2VkIHJvd3M6CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ybmcyIChpZDEs IGlkMiwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s4LDkpJywgJ1s4LDkpJywgJ1syMDE4LTAxLTAxLDIw MjAtMDEtMDEpJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ybmcyIChpZDEsIGlkMiwgdmFsaWRf YXQpIFZBTFVFUyAoJ1s4LDkpJywgJ1s4LDkpJywgJ1syMDIwLTAxLTAxLDIwMjEtMDEtMDEpJyk7 CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9mazJfcGVyMnJuZyAoaWQsIHZhbGlkX2Zyb20sIHZhbGlk X3RpbCwgcGFyZW50X2lkMSwgcGFyZW50X2lkMikgVkFMVUVTICgnWzIwMCwyMDBdJywgJzIwMTgt MDEtMDEnLCAnMjAyMS0wMS0wMScsICdbOCw5KScsICdbOCw5KScpOworREVMRVRFIEZST00gdGVt cG9yYWxfcm5nMiBXSEVSRSBpZDEgPSAnWzgsOSknIEFORCB2YWxpZF9hdCBAPiAnMjAxOS0wMS0w MSc6OmRhdGU7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9wZXIycm5nIFdIRVJFIGlkID0g J1syMDAsMjAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworICAgIGlkICAgICB8IHZhbGlkX2Zy b20gfCB2YWxpZF90aWwgIHwgcGFyZW50X2lkMSB8IHBhcmVudF9pZDIgCistLS0tLS0tLS0tLSst LS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0KKyBbMjAw LDIwMSkgfCAyMDIwLTAxLTAxIHwgMjAyMS0wMS0wMSB8IFs4LDkpICAgICAgfCBbOCw5KQorKDEg cm93KQorCistLQorLS0gdGVzdCBGSyByZWZlcmVuY2VkIHVwZGF0ZXMgU0VUIE5VTEwgKHR3byBz Y2FsYXIgY29scykKKy0tCitUUlVOQ0FURSB0ZW1wb3JhbF9ybmcyLCB0ZW1wb3JhbF9mazJfcGVy MnJuZzsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3JuZzIgKGlkMSwgaWQyLCB2YWxpZF9hdCkgVkFM VUVTICgnWzYsNyknLCAnWzYsNyknLCAnWzIwMTgtMDEtMDEsMjAyMS0wMS0wMSknKTsKK0lOU0VS VCBJTlRPIHRlbXBvcmFsX2ZrMl9wZXIycm5nIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsLCBw YXJlbnRfaWQxLCBwYXJlbnRfaWQyKSBWQUxVRVMgKCdbMTAwLDEwMF0nLCAnMjAxOC0wMS0wMScs ICcyMDIxLTAxLTAxJywgJ1s2LDcpJywgJ1s2LDcpJyk7CitBTFRFUiBUQUJMRSB0ZW1wb3JhbF9m azJfcGVyMnJuZworICBEUk9QIENPTlNUUkFJTlQgdGVtcG9yYWxfZmsyX3BlcjJybmdfZmssCisg IEFERCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrMl9wZXIycm5nX2ZrCisgICAgRk9SRUlHTiBLRVkg KHBhcmVudF9pZDEsIHBhcmVudF9pZDIsIFBFUklPRCB2YWxpZF9hdCkKKyAgICBSRUZFUkVOQ0VT IHRlbXBvcmFsX3JuZzIKKyAgICBPTiBERUxFVEUgU0VUIE5VTEwgT04gVVBEQVRFIFNFVCBOVUxM OworLS0gbGVmdG92ZXJzIG9uIGJvdGggc2lkZXM6CitVUERBVEUgdGVtcG9yYWxfcm5nMiBGT1Ig UE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDE5LTAxLTAxJyBUTyAnMjAyMC0wMS0wMScgU0VU IGlkMSA9ICdbNyw4KScgV0hFUkUgaWQxID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9y YWxfZmsyX3BlcjJybmcgV0hFUkUgaWQgPSAnWzEwMCwxMDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRf YXQ7CisgICAgaWQgICAgIHwgdmFsaWRfZnJvbSB8IHZhbGlkX3RpbCAgfCBwYXJlbnRfaWQxIHwg cGFyZW50X2lkMiAKKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0t LS0tLS0tKy0tLS0tLS0tLS0tLQorIFsxMDAsMTAxKSB8IDIwMTgtMDEtMDEgfCAyMDE5LTAxLTAx IHwgWzYsNykgICAgICB8IFs2LDcpCisgWzEwMCwxMDEpIHwgMjAxOS0wMS0wMSB8IDIwMjAtMDEt MDEgfCAgICAgICAgICAgIHwgCisgWzEwMCwxMDEpIHwgMjAyMC0wMS0wMSB8IDIwMjEtMDEtMDEg fCBbNiw3KSAgICAgIHwgWzYsNykKKygzIHJvd3MpCisKKy0tIG5vbi1GUE8gdXBkYXRlOgorVVBE QVRFIHRlbXBvcmFsX3JuZzIgU0VUIGlkMSA9ICdbNyw4KScgV0hFUkUgaWQxID0gJ1s2LDcpJzsK K1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX3BlcjJybmcgV0hFUkUgaWQgPSAnWzEwMCwxMDBd JyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisgICAgaWQgICAgIHwgdmFsaWRfZnJvbSB8IHZhbGlk X3RpbCAgfCBwYXJlbnRfaWQxIHwgcGFyZW50X2lkMiAKKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0t LSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLQorIFsxMDAsMTAxKSB8IDIw MTgtMDEtMDEgfCAyMDE5LTAxLTAxIHwgICAgICAgICAgICB8IAorIFsxMDAsMTAxKSB8IDIwMTkt MDEtMDEgfCAyMDIwLTAxLTAxIHwgICAgICAgICAgICB8IAorIFsxMDAsMTAxKSB8IDIwMjAtMDEt MDEgfCAyMDIxLTAxLTAxIHwgICAgICAgICAgICB8IAorKDMgcm93cykKKworLS0gRksgYWNyb3Nz IHR3byByZWZlcmVuY2VkIHJvd3M6CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ybmcyIChpZDEsIGlk MiwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s4LDkpJywgJ1s4LDkpJywgJ1syMDE4LTAxLTAxLDIwMjAt MDEtMDEpJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ybmcyIChpZDEsIGlkMiwgdmFsaWRfYXQp IFZBTFVFUyAoJ1s4LDkpJywgJ1s4LDkpJywgJ1syMDIwLTAxLTAxLDIwMjEtMDEtMDEpJyk7CitJ TlNFUlQgSU5UTyB0ZW1wb3JhbF9mazJfcGVyMnJuZyAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3Rp bCwgcGFyZW50X2lkMSwgcGFyZW50X2lkMikgVkFMVUVTICgnWzIwMCwyMDBdJywgJzIwMTgtMDEt MDEnLCAnMjAyMS0wMS0wMScsICdbOCw5KScsICdbOCw5KScpOworVVBEQVRFIHRlbXBvcmFsX3Ju ZzIgU0VUIGlkMSA9ICdbOSwxMCknIFdIRVJFIGlkMSA9ICdbOCw5KScgQU5EIHZhbGlkX2F0IEA+ ICcyMDE5LTAxLTAxJzo6ZGF0ZTsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX3BlcjJybmcg V0hFUkUgaWQgPSAnWzIwMCwyMDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisgICAgaWQgICAg IHwgdmFsaWRfZnJvbSB8IHZhbGlkX3RpbCAgfCBwYXJlbnRfaWQxIHwgcGFyZW50X2lkMiAKKy0t LS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0t LS0tLQorIFsyMDAsMjAxKSB8IDIwMTgtMDEtMDEgfCAyMDIwLTAxLTAxIHwgICAgICAgICAgICB8 IAorIFsyMDAsMjAxKSB8IDIwMjAtMDEtMDEgfCAyMDIxLTAxLTAxIHwgWzgsOSkgICAgICB8IFs4 LDkpCisoMiByb3dzKQorCistLQorLS0gdGVzdCBGSyByZWZlcmVuY2VkIGRlbGV0ZXMgU0VUIE5V TEwgKHR3byBzY2FsYXIgY29scykKKy0tCitUUlVOQ0FURSB0ZW1wb3JhbF9ybmcyLCB0ZW1wb3Jh bF9mazJfcGVyMnJuZzsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3JuZzIgKGlkMSwgaWQyLCB2YWxp ZF9hdCkgVkFMVUVTICgnWzYsNyknLCAnWzYsNyknLCAnWzIwMTgtMDEtMDEsMjAyMS0wMS0wMSkn KTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrMl9wZXIycm5nIChpZCwgdmFsaWRfZnJvbSwgdmFs aWRfdGlsLCBwYXJlbnRfaWQxLCBwYXJlbnRfaWQyKSBWQUxVRVMgKCdbMTAwLDEwMF0nLCAnMjAx OC0wMS0wMScsICcyMDIxLTAxLTAxJywgJ1s2LDcpJywgJ1s2LDcpJyk7CistLSBsZWZ0b3ZlcnMg b24gYm90aCBzaWRlczoKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3JuZzIgRk9SIFBPUlRJT04gT0Yg dmFsaWRfYXQgRlJPTSAnMjAxOS0wMS0wMScgVE8gJzIwMjAtMDEtMDEnIFdIRVJFIGlkMSA9ICdb Niw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9wZXIycm5nIFdIRVJFIGlkID0gJ1sx MDAsMTAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworICAgIGlkICAgICB8IHZhbGlkX2Zyb20g fCB2YWxpZF90aWwgIHwgcGFyZW50X2lkMSB8IHBhcmVudF9pZDIgCistLS0tLS0tLS0tLSstLS0t LS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0KKyBbMTAwLDEw MSkgfCAyMDE4LTAxLTAxIHwgMjAxOS0wMS0wMSB8IFs2LDcpICAgICAgfCBbNiw3KQorIFsxMDAs MTAxKSB8IDIwMTktMDEtMDEgfCAyMDIwLTAxLTAxIHwgICAgICAgICAgICB8IAorIFsxMDAsMTAx KSB8IDIwMjAtMDEtMDEgfCAyMDIxLTAxLTAxIHwgWzYsNykgICAgICB8IFs2LDcpCisoMyByb3dz KQorCistLSBub24tRlBPIGRlbGV0ZToKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3JuZzIgV0hFUkUg aWQxID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX3BlcjJybmcgV0hFUkUg aWQgPSAnWzEwMCwxMDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisgICAgaWQgICAgIHwgdmFs aWRfZnJvbSB8IHZhbGlkX3RpbCAgfCBwYXJlbnRfaWQxIHwgcGFyZW50X2lkMiAKKy0tLS0tLS0t LS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLQor IFsxMDAsMTAxKSB8IDIwMTgtMDEtMDEgfCAyMDE5LTAxLTAxIHwgICAgICAgICAgICB8IAorIFsx MDAsMTAxKSB8IDIwMTktMDEtMDEgfCAyMDIwLTAxLTAxIHwgICAgICAgICAgICB8IAorIFsxMDAs MTAxKSB8IDIwMjAtMDEtMDEgfCAyMDIxLTAxLTAxIHwgICAgICAgICAgICB8IAorKDMgcm93cykK KworLS0gRksgYWNyb3NzIHR3byByZWZlcmVuY2VkIHJvd3M6CitJTlNFUlQgSU5UTyB0ZW1wb3Jh bF9ybmcyIChpZDEsIGlkMiwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s4LDkpJywgJ1s4LDkpJywgJ1sy MDE4LTAxLTAxLDIwMjAtMDEtMDEpJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ybmcyIChpZDEs IGlkMiwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s4LDkpJywgJ1s4LDkpJywgJ1syMDIwLTAxLTAxLDIw MjEtMDEtMDEpJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9mazJfcGVyMnJuZyAoaWQsIHZhbGlk X2Zyb20sIHZhbGlkX3RpbCwgcGFyZW50X2lkMSwgcGFyZW50X2lkMikgVkFMVUVTICgnWzIwMCwy MDBdJywgJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScsICdbOCw5KScsICdbOCw5KScpOworREVM RVRFIEZST00gdGVtcG9yYWxfcm5nMiBXSEVSRSBpZDEgPSAnWzgsOSknIEFORCB2YWxpZF9hdCBA PiAnMjAxOS0wMS0wMSc6OmRhdGU7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9wZXIycm5n IFdIRVJFIGlkID0gJ1syMDAsMjAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworICAgIGlkICAg ICB8IHZhbGlkX2Zyb20gfCB2YWxpZF90aWwgIHwgcGFyZW50X2lkMSB8IHBhcmVudF9pZDIgCist LS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0t LS0tLS0KKyBbMjAwLDIwMSkgfCAyMDE4LTAxLTAxIHwgMjAyMC0wMS0wMSB8ICAgICAgICAgICAg fCAKKyBbMjAwLDIwMSkgfCAyMDIwLTAxLTAxIHwgMjAyMS0wMS0wMSB8IFs4LDkpICAgICAgfCBb OCw5KQorKDIgcm93cykKKworLS0KKy0tIHRlc3QgRksgcmVmZXJlbmNlZCBkZWxldGVzIFNFVCBO VUxMICh0d28gc2NhbGFyIGNvbHMsIFNFVCBOVUxMIHN1YnNldCkKKy0tCitUUlVOQ0FURSB0ZW1w b3JhbF9ybmcyLCB0ZW1wb3JhbF9mazJfcGVyMnJuZzsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3Ju ZzIgKGlkMSwgaWQyLCB2YWxpZF9hdCkgVkFMVUVTICgnWzYsNyknLCAnWzYsNyknLCAnWzIwMTgt MDEtMDEsMjAyMS0wMS0wMSknKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrMl9wZXIycm5nIChp ZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsLCBwYXJlbnRfaWQxLCBwYXJlbnRfaWQyKSBWQUxVRVMg KCdbMTAwLDEwMF0nLCAnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJywgJ1s2LDcpJywgJ1s2LDcp Jyk7CistLSBmYWlscyBiZWNhdXNlIHlvdSBjYW4ndCBzZXQgdGhlIFBFUklPRCBjb2x1bW46CitB TFRFUiBUQUJMRSB0ZW1wb3JhbF9mazJfcGVyMnJuZworICBEUk9QIENPTlNUUkFJTlQgdGVtcG9y YWxfZmsyX3BlcjJybmdfZmssCisgIEFERCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrMl9wZXIycm5n X2ZrCisgICAgRk9SRUlHTiBLRVkgKHBhcmVudF9pZDEsIHBhcmVudF9pZDIsIFBFUklPRCB2YWxp ZF9hdCkKKyAgICBSRUZFUkVOQ0VTIHRlbXBvcmFsX3JuZzIKKyAgICBPTiBERUxFVEUgU0VUIE5V TEwgKHZhbGlkX2F0KSBPTiBVUERBVEUgU0VUIE5VTEw7CitFUlJPUjogIGNvbHVtbiAidmFsaWRf YXQiIHJlZmVyZW5jZWQgaW4gT04gREVMRVRFIFNFVCBhY3Rpb24gY2Fubm90IGJlIFBFUklPRAor LS0gb2s6CitBTFRFUiBUQUJMRSB0ZW1wb3JhbF9mazJfcGVyMnJuZworICBEUk9QIENPTlNUUkFJ TlQgdGVtcG9yYWxfZmsyX3BlcjJybmdfZmssCisgIEFERCBDT05TVFJBSU5UIHRlbXBvcmFsX2Zr Ml9wZXIycm5nX2ZrCisgICAgRk9SRUlHTiBLRVkgKHBhcmVudF9pZDEsIHBhcmVudF9pZDIsIFBF UklPRCB2YWxpZF9hdCkKKyAgICBSRUZFUkVOQ0VTIHRlbXBvcmFsX3JuZzIKKyAgICBPTiBERUxF VEUgU0VUIE5VTEwgKHBhcmVudF9pZDEpIE9OIFVQREFURSBTRVQgTlVMTDsKKy0tIGxlZnRvdmVy cyBvbiBib3RoIHNpZGVzOgorREVMRVRFIEZST00gdGVtcG9yYWxfcm5nMiBGT1IgUE9SVElPTiBP RiB2YWxpZF9hdCBGUk9NICcyMDE5LTAxLTAxJyBUTyAnMjAyMC0wMS0wMScgV0hFUkUgaWQxID0g J1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX3BlcjJybmcgV0hFUkUgaWQgPSAn WzEwMCwxMDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisgICAgaWQgICAgIHwgdmFsaWRfZnJv bSB8IHZhbGlkX3RpbCAgfCBwYXJlbnRfaWQxIHwgcGFyZW50X2lkMiAKKy0tLS0tLS0tLS0tKy0t LS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLQorIFsxMDAs MTAxKSB8IDIwMTgtMDEtMDEgfCAyMDE5LTAxLTAxIHwgWzYsNykgICAgICB8IFs2LDcpCisgWzEw MCwxMDEpIHwgMjAxOS0wMS0wMSB8IDIwMjAtMDEtMDEgfCAgICAgICAgICAgIHwgWzYsNykKKyBb MTAwLDEwMSkgfCAyMDIwLTAxLTAxIHwgMjAyMS0wMS0wMSB8IFs2LDcpICAgICAgfCBbNiw3KQor KDMgcm93cykKKworLS0gbm9uLUZQTyBkZWxldGU6CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9ybmcy IFdIRVJFIGlkMSA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9wZXIycm5n IFdIRVJFIGlkID0gJ1sxMDAsMTAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworICAgIGlkICAg ICB8IHZhbGlkX2Zyb20gfCB2YWxpZF90aWwgIHwgcGFyZW50X2lkMSB8IHBhcmVudF9pZDIgCist LS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0t LS0tLS0KKyBbMTAwLDEwMSkgfCAyMDE4LTAxLTAxIHwgMjAxOS0wMS0wMSB8ICAgICAgICAgICAg fCBbNiw3KQorIFsxMDAsMTAxKSB8IDIwMTktMDEtMDEgfCAyMDIwLTAxLTAxIHwgICAgICAgICAg ICB8IFs2LDcpCisgWzEwMCwxMDEpIHwgMjAyMC0wMS0wMSB8IDIwMjEtMDEtMDEgfCAgICAgICAg ICAgIHwgWzYsNykKKygzIHJvd3MpCisKKy0tIEZLIGFjcm9zcyB0d28gcmVmZXJlbmNlZCByb3dz OgorSU5TRVJUIElOVE8gdGVtcG9yYWxfcm5nMiAoaWQxLCBpZDIsIHZhbGlkX2F0KSBWQUxVRVMg KCdbOCw5KScsICdbOCw5KScsICdbMjAxOC0wMS0wMSwyMDIwLTAxLTAxKScpOworSU5TRVJUIElO VE8gdGVtcG9yYWxfcm5nMiAoaWQxLCBpZDIsIHZhbGlkX2F0KSBWQUxVRVMgKCdbOCw5KScsICdb OCw5KScsICdbMjAyMC0wMS0wMSwyMDIxLTAxLTAxKScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxf ZmsyX3BlcjJybmcgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwsIHBhcmVudF9pZDEsIHBhcmVu dF9pZDIpIFZBTFVFUyAoJ1syMDAsMjAwXScsICcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnLCAn WzgsOSknLCAnWzgsOSknKTsKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3JuZzIgV0hFUkUgaWQxID0g J1s4LDkpJyBBTkQgdmFsaWRfYXQgQD4gJzIwMTktMDEtMDEnOjpkYXRlOworU0VMRUNUICogRlJP TSB0ZW1wb3JhbF9mazJfcGVyMnJuZyBXSEVSRSBpZCA9ICdbMjAwLDIwMF0nIE9SREVSIEJZIGlk LCB2YWxpZF9hdDsKKyAgICBpZCAgICAgfCB2YWxpZF9mcm9tIHwgdmFsaWRfdGlsICB8IHBhcmVu dF9pZDEgfCBwYXJlbnRfaWQyIAorLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0t LSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tCisgWzIwMCwyMDEpIHwgMjAxOC0wMS0wMSB8IDIw MjAtMDEtMDEgfCAgICAgICAgICAgIHwgWzgsOSkKKyBbMjAwLDIwMSkgfCAyMDIwLTAxLTAxIHwg MjAyMS0wMS0wMSB8IFs4LDkpICAgICAgfCBbOCw5KQorKDIgcm93cykKKworLS0KKy0tIHRlc3Qg RksgcmVmZXJlbmNlZCB1cGRhdGVzIFNFVCBERUZBVUxUICh0d28gc2NhbGFyIGNvbHMpCistLQor VFJVTkNBVEUgdGVtcG9yYWxfcm5nMiwgdGVtcG9yYWxfZmsyX3BlcjJybmc7CitJTlNFUlQgSU5U TyB0ZW1wb3JhbF9ybmcyIChpZDEsIGlkMiwgdmFsaWRfYXQpIFZBTFVFUyAoJ1stMSwtMV0nLCAn Wy0xLC0xXScsICcoLCknKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3JuZzIgKGlkMSwgaWQyLCB2 YWxpZF9hdCkgVkFMVUVTICgnWzYsNyknLCAnWzYsNyknLCAnWzIwMTgtMDEtMDEsMjAyMS0wMS0w MSknKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrMl9wZXIycm5nIChpZCwgdmFsaWRfZnJvbSwg dmFsaWRfdGlsLCBwYXJlbnRfaWQxLCBwYXJlbnRfaWQyKSBWQUxVRVMgKCdbMTAwLDEwMF0nLCAn MjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJywgJ1s2LDcpJywgJ1s2LDcpJyk7CitBTFRFUiBUQUJM RSB0ZW1wb3JhbF9mazJfcGVyMnJuZworICBBTFRFUiBDT0xVTU4gcGFyZW50X2lkMSBTRVQgREVG QVVMVCAnWy0xLC0xXScsCisgIEFMVEVSIENPTFVNTiBwYXJlbnRfaWQyIFNFVCBERUZBVUxUICdb LTEsLTFdJywKKyAgRFJPUCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrMl9wZXIycm5nX2ZrLAorICBB REQgQ09OU1RSQUlOVCB0ZW1wb3JhbF9mazJfcGVyMnJuZ19maworICAgIEZPUkVJR04gS0VZIChw YXJlbnRfaWQxLCBwYXJlbnRfaWQyLCBQRVJJT0QgdmFsaWRfYXQpCisgICAgUkVGRVJFTkNFUyB0 ZW1wb3JhbF9ybmcyCisgICAgT04gREVMRVRFIFNFVCBERUZBVUxUIE9OIFVQREFURSBTRVQgREVG QVVMVDsKKy0tIGxlZnRvdmVycyBvbiBib3RoIHNpZGVzOgorVVBEQVRFIHRlbXBvcmFsX3JuZzIg Rk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAxOS0wMS0wMScgVE8gJzIwMjAtMDEtMDEn IFNFVCBpZDEgPSAnWzcsOCknLCBpZDIgPSAnWzcsOCknIFdIRVJFIGlkMSA9ICdbNiw3KSc7CitT RUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9wZXIycm5nIFdIRVJFIGlkID0gJ1sxMDAsMTAwXScg T1JERVIgQlkgaWQsIHZhbGlkX2F0OworICAgIGlkICAgICB8IHZhbGlkX2Zyb20gfCB2YWxpZF90 aWwgIHwgcGFyZW50X2lkMSB8IHBhcmVudF9pZDIgCistLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0r LS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0KKyBbMTAwLDEwMSkgfCAyMDE4 LTAxLTAxIHwgMjAxOS0wMS0wMSB8IFs2LDcpICAgICAgfCBbNiw3KQorIFsxMDAsMTAxKSB8IDIw MTktMDEtMDEgfCAyMDIwLTAxLTAxIHwgWy0xLDApICAgICB8IFstMSwwKQorIFsxMDAsMTAxKSB8 IDIwMjAtMDEtMDEgfCAyMDIxLTAxLTAxIHwgWzYsNykgICAgICB8IFs2LDcpCisoMyByb3dzKQor CistLSBub24tRlBPIHVwZGF0ZToKK1VQREFURSB0ZW1wb3JhbF9ybmcyIFNFVCBpZDEgPSAnWzcs OCknLCBpZDIgPSAnWzcsOCknIFdIRVJFIGlkMSA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRl bXBvcmFsX2ZrMl9wZXIycm5nIFdIRVJFIGlkID0gJ1sxMDAsMTAwXScgT1JERVIgQlkgaWQsIHZh bGlkX2F0OworICAgIGlkICAgICB8IHZhbGlkX2Zyb20gfCB2YWxpZF90aWwgIHwgcGFyZW50X2lk MSB8IHBhcmVudF9pZDIgCistLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0t LS0tLS0tLS0tLSstLS0tLS0tLS0tLS0KKyBbMTAwLDEwMSkgfCAyMDE4LTAxLTAxIHwgMjAxOS0w MS0wMSB8IFstMSwwKSAgICAgfCBbLTEsMCkKKyBbMTAwLDEwMSkgfCAyMDE5LTAxLTAxIHwgMjAy MC0wMS0wMSB8IFstMSwwKSAgICAgfCBbLTEsMCkKKyBbMTAwLDEwMSkgfCAyMDIwLTAxLTAxIHwg MjAyMS0wMS0wMSB8IFstMSwwKSAgICAgfCBbLTEsMCkKKygzIHJvd3MpCisKKy0tIEZLIGFjcm9z cyB0d28gcmVmZXJlbmNlZCByb3dzOgorSU5TRVJUIElOVE8gdGVtcG9yYWxfcm5nMiAoaWQxLCBp ZDIsIHZhbGlkX2F0KSBWQUxVRVMgKCdbOCw5KScsICdbOCw5KScsICdbMjAxOC0wMS0wMSwyMDIw LTAxLTAxKScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcm5nMiAoaWQxLCBpZDIsIHZhbGlkX2F0 KSBWQUxVRVMgKCdbOCw5KScsICdbOCw5KScsICdbMjAyMC0wMS0wMSwyMDIxLTAxLTAxKScpOwor SU5TRVJUIElOVE8gdGVtcG9yYWxfZmsyX3BlcjJybmcgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90 aWwsIHBhcmVudF9pZDEsIHBhcmVudF9pZDIpIFZBTFVFUyAoJ1syMDAsMjAwXScsICcyMDE4LTAx LTAxJywgJzIwMjEtMDEtMDEnLCAnWzgsOSknLCAnWzgsOSknKTsKK1VQREFURSB0ZW1wb3JhbF9y bmcyIFNFVCBpZDEgPSAnWzksMTApJywgaWQyID0gJ1s5LDEwKScgV0hFUkUgaWQxID0gJ1s4LDkp JyBBTkQgdmFsaWRfYXQgQD4gJzIwMTktMDEtMDEnOjpkYXRlOworU0VMRUNUICogRlJPTSB0ZW1w b3JhbF9mazJfcGVyMnJuZyBXSEVSRSBpZCA9ICdbMjAwLDIwMF0nIE9SREVSIEJZIGlkLCB2YWxp ZF9hdDsKKyAgICBpZCAgICAgfCB2YWxpZF9mcm9tIHwgdmFsaWRfdGlsICB8IHBhcmVudF9pZDEg fCBwYXJlbnRfaWQyIAorLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0t LS0tLS0tLS0rLS0tLS0tLS0tLS0tCisgWzIwMCwyMDEpIHwgMjAxOC0wMS0wMSB8IDIwMjAtMDEt MDEgfCBbLTEsMCkgICAgIHwgWy0xLDApCisgWzIwMCwyMDEpIHwgMjAyMC0wMS0wMSB8IDIwMjEt MDEtMDEgfCBbOCw5KSAgICAgIHwgWzgsOSkKKygyIHJvd3MpCisKKy0tCistLSB0ZXN0IEZLIHJl ZmVyZW5jZWQgZGVsZXRlcyBTRVQgREVGQVVMVCAodHdvIHNjYWxhciBjb2xzKQorLS0KK1RSVU5D QVRFIHRlbXBvcmFsX3JuZzIsIHRlbXBvcmFsX2ZrMl9wZXIycm5nOworSU5TRVJUIElOVE8gdGVt cG9yYWxfcm5nMiAoaWQxLCBpZDIsIHZhbGlkX2F0KSBWQUxVRVMgKCdbLTEsLTFdJywgJ1stMSwt MV0nLCAnKCwpJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ybmcyIChpZDEsIGlkMiwgdmFsaWRf YXQpIFZBTFVFUyAoJ1s2LDcpJywgJ1s2LDcpJywgJ1syMDE4LTAxLTAxLDIwMjEtMDEtMDEpJyk7 CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9mazJfcGVyMnJuZyAoaWQsIHZhbGlkX2Zyb20sIHZhbGlk X3RpbCwgcGFyZW50X2lkMSwgcGFyZW50X2lkMikgVkFMVUVTICgnWzEwMCwxMDBdJywgJzIwMTgt MDEtMDEnLCAnMjAyMS0wMS0wMScsICdbNiw3KScsICdbNiw3KScpOworLS0gbGVmdG92ZXJzIG9u IGJvdGggc2lkZXM6CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9ybmcyIEZPUiBQT1JUSU9OIE9GIHZh bGlkX2F0IEZST00gJzIwMTktMDEtMDEnIFRPICcyMDIwLTAxLTAxJyBXSEVSRSBpZDEgPSAnWzYs NyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9mazJfcGVyMnJuZyBXSEVSRSBpZCA9ICdbMTAw LDEwMF0nIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKyAgICBpZCAgICAgfCB2YWxpZF9mcm9tIHwg dmFsaWRfdGlsICB8IHBhcmVudF9pZDEgfCBwYXJlbnRfaWQyIAorLS0tLS0tLS0tLS0rLS0tLS0t LS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tCisgWzEwMCwxMDEp IHwgMjAxOC0wMS0wMSB8IDIwMTktMDEtMDEgfCBbNiw3KSAgICAgIHwgWzYsNykKKyBbMTAwLDEw MSkgfCAyMDE5LTAxLTAxIHwgMjAyMC0wMS0wMSB8IFstMSwwKSAgICAgfCBbLTEsMCkKKyBbMTAw LDEwMSkgfCAyMDIwLTAxLTAxIHwgMjAyMS0wMS0wMSB8IFs2LDcpICAgICAgfCBbNiw3KQorKDMg cm93cykKKworLS0gbm9uLUZQTyB1cGRhdGU6CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9ybmcyIFdI RVJFIGlkMSA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9wZXIycm5nIFdI RVJFIGlkID0gJ1sxMDAsMTAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworICAgIGlkICAgICB8 IHZhbGlkX2Zyb20gfCB2YWxpZF90aWwgIHwgcGFyZW50X2lkMSB8IHBhcmVudF9pZDIgCistLS0t LS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0t LS0KKyBbMTAwLDEwMSkgfCAyMDE4LTAxLTAxIHwgMjAxOS0wMS0wMSB8IFstMSwwKSAgICAgfCBb LTEsMCkKKyBbMTAwLDEwMSkgfCAyMDE5LTAxLTAxIHwgMjAyMC0wMS0wMSB8IFstMSwwKSAgICAg fCBbLTEsMCkKKyBbMTAwLDEwMSkgfCAyMDIwLTAxLTAxIHwgMjAyMS0wMS0wMSB8IFstMSwwKSAg ICAgfCBbLTEsMCkKKygzIHJvd3MpCisKKy0tIEZLIGFjcm9zcyB0d28gcmVmZXJlbmNlZCByb3dz OgorSU5TRVJUIElOVE8gdGVtcG9yYWxfcm5nMiAoaWQxLCBpZDIsIHZhbGlkX2F0KSBWQUxVRVMg KCdbOCw5KScsICdbOCw5KScsICdbMjAxOC0wMS0wMSwyMDIwLTAxLTAxKScpOworSU5TRVJUIElO VE8gdGVtcG9yYWxfcm5nMiAoaWQxLCBpZDIsIHZhbGlkX2F0KSBWQUxVRVMgKCdbOCw5KScsICdb OCw5KScsICdbMjAyMC0wMS0wMSwyMDIxLTAxLTAxKScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxf ZmsyX3BlcjJybmcgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwsIHBhcmVudF9pZDEsIHBhcmVu dF9pZDIpIFZBTFVFUyAoJ1syMDAsMjAwXScsICcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnLCAn WzgsOSknLCAnWzgsOSknKTsKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3JuZzIgV0hFUkUgaWQxID0g J1s4LDkpJyBBTkQgdmFsaWRfYXQgQD4gJzIwMTktMDEtMDEnOjpkYXRlOworU0VMRUNUICogRlJP TSB0ZW1wb3JhbF9mazJfcGVyMnJuZyBXSEVSRSBpZCA9ICdbMjAwLDIwMF0nIE9SREVSIEJZIGlk LCB2YWxpZF9hdDsKKyAgICBpZCAgICAgfCB2YWxpZF9mcm9tIHwgdmFsaWRfdGlsICB8IHBhcmVu dF9pZDEgfCBwYXJlbnRfaWQyIAorLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0t LSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tCisgWzIwMCwyMDEpIHwgMjAxOC0wMS0wMSB8IDIw MjAtMDEtMDEgfCBbLTEsMCkgICAgIHwgWy0xLDApCisgWzIwMCwyMDEpIHwgMjAyMC0wMS0wMSB8 IDIwMjEtMDEtMDEgfCBbOCw5KSAgICAgIHwgWzgsOSkKKygyIHJvd3MpCisKKy0tCistLSB0ZXN0 IEZLIHJlZmVyZW5jZWQgZGVsZXRlcyBTRVQgREVGQVVMVCAodHdvIHNjYWxhciBjb2xzLCBTRVQg REVGQVVMVCBzdWJzZXQpCistLQorVFJVTkNBVEUgdGVtcG9yYWxfcm5nMiwgdGVtcG9yYWxfZmsy X3BlcjJybmc7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ybmcyIChpZDEsIGlkMiwgdmFsaWRfYXQp IFZBTFVFUyAoJ1stMSwtMV0nLCAnWzYsNyknLCAnKCwpJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3Jh bF9ybmcyIChpZDEsIGlkMiwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s2LDcpJywgJ1s2LDcpJywgJ1sy MDE4LTAxLTAxLDIwMjEtMDEtMDEpJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9mazJfcGVyMnJu ZyAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCwgcGFyZW50X2lkMSwgcGFyZW50X2lkMikgVkFM VUVTICgnWzEwMCwxMDBdJywgJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScsICdbNiw3KScsICdb Niw3KScpOworLS0gZmFpbHMgYmVjYXVzZSB5b3UgY2FuJ3Qgc2V0IHRoZSBQRVJJT0QgY29sdW1u OgorQUxURVIgVEFCTEUgdGVtcG9yYWxfZmsyX3BlcjJybmcKKyAgQUxURVIgQ09MVU1OIHBhcmVu dF9pZDEgU0VUIERFRkFVTFQgJ1stMSwtMV0nLAorICBEUk9QIENPTlNUUkFJTlQgdGVtcG9yYWxf ZmsyX3BlcjJybmdfZmssCisgIEFERCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrMl9wZXIycm5nX2Zr CisgICAgRk9SRUlHTiBLRVkgKHBhcmVudF9pZDEsIHBhcmVudF9pZDIsIFBFUklPRCB2YWxpZF9h dCkKKyAgICBSRUZFUkVOQ0VTIHRlbXBvcmFsX3JuZzIKKyAgICBPTiBERUxFVEUgU0VUIERFRkFV TFQgKHZhbGlkX2F0KSBPTiBVUERBVEUgU0VUIERFRkFVTFQ7CitFUlJPUjogIGNvbHVtbiAidmFs aWRfYXQiIHJlZmVyZW5jZWQgaW4gT04gREVMRVRFIFNFVCBhY3Rpb24gY2Fubm90IGJlIFBFUklP RAorLS0gb2s6CitBTFRFUiBUQUJMRSB0ZW1wb3JhbF9mazJfcGVyMnJuZworICBBTFRFUiBDT0xV TU4gcGFyZW50X2lkMSBTRVQgREVGQVVMVCAnWy0xLC0xXScsCisgIERST1AgQ09OU1RSQUlOVCB0 ZW1wb3JhbF9mazJfcGVyMnJuZ19maywKKyAgQUREIENPTlNUUkFJTlQgdGVtcG9yYWxfZmsyX3Bl cjJybmdfZmsKKyAgICBGT1JFSUdOIEtFWSAocGFyZW50X2lkMSwgcGFyZW50X2lkMiwgUEVSSU9E IHZhbGlkX2F0KQorICAgIFJFRkVSRU5DRVMgdGVtcG9yYWxfcm5nMgorICAgIE9OIERFTEVURSBT RVQgREVGQVVMVCAocGFyZW50X2lkMSkgT04gVVBEQVRFIFNFVCBERUZBVUxUOworLS0gbGVmdG92 ZXJzIG9uIGJvdGggc2lkZXM6CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9ybmcyIEZPUiBQT1JUSU9O IE9GIHZhbGlkX2F0IEZST00gJzIwMTktMDEtMDEnIFRPICcyMDIwLTAxLTAxJyBXSEVSRSBpZDEg PSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9mazJfcGVyMnJuZyBXSEVSRSBpZCA9 ICdbMTAwLDEwMF0nIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKyAgICBpZCAgICAgfCB2YWxpZF9m cm9tIHwgdmFsaWRfdGlsICB8IHBhcmVudF9pZDEgfCBwYXJlbnRfaWQyIAorLS0tLS0tLS0tLS0r LS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tCisgWzEw MCwxMDEpIHwgMjAxOC0wMS0wMSB8IDIwMTktMDEtMDEgfCBbNiw3KSAgICAgIHwgWzYsNykKKyBb MTAwLDEwMSkgfCAyMDE5LTAxLTAxIHwgMjAyMC0wMS0wMSB8IFstMSwwKSAgICAgfCBbNiw3KQor IFsxMDAsMTAxKSB8IDIwMjAtMDEtMDEgfCAyMDIxLTAxLTAxIHwgWzYsNykgICAgICB8IFs2LDcp CisoMyByb3dzKQorCistLSBub24tRlBPIHVwZGF0ZToKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3Ju ZzIgV0hFUkUgaWQxID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX3BlcjJy bmcgV0hFUkUgaWQgPSAnWzEwMCwxMDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisgICAgaWQg ICAgIHwgdmFsaWRfZnJvbSB8IHZhbGlkX3RpbCAgfCBwYXJlbnRfaWQxIHwgcGFyZW50X2lkMiAK Ky0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0t LS0tLS0tLQorIFsxMDAsMTAxKSB8IDIwMTgtMDEtMDEgfCAyMDE5LTAxLTAxIHwgWy0xLDApICAg ICB8IFs2LDcpCisgWzEwMCwxMDEpIHwgMjAxOS0wMS0wMSB8IDIwMjAtMDEtMDEgfCBbLTEsMCkg ICAgIHwgWzYsNykKKyBbMTAwLDEwMSkgfCAyMDIwLTAxLTAxIHwgMjAyMS0wMS0wMSB8IFstMSww KSAgICAgfCBbNiw3KQorKDMgcm93cykKKworLS0gRksgYWNyb3NzIHR3byByZWZlcmVuY2VkIHJv d3M6CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ybmcyIChpZDEsIGlkMiwgdmFsaWRfYXQpIFZBTFVF UyAoJ1s4LDkpJywgJ1s4LDkpJywgJ1syMDE4LTAxLTAxLDIwMjAtMDEtMDEpJyk7CitJTlNFUlQg SU5UTyB0ZW1wb3JhbF9ybmcyIChpZDEsIGlkMiwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s4LDkpJywg J1s4LDkpJywgJ1syMDIwLTAxLTAxLDIwMjEtMDEtMDEpJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3Jh bF9ybmcyIChpZDEsIGlkMiwgdmFsaWRfYXQpIFZBTFVFUyAoJ1stMSwtMV0nLCAnWzgsOSknLCAn KCwpJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9mazJfcGVyMnJuZyAoaWQsIHZhbGlkX2Zyb20s IHZhbGlkX3RpbCwgcGFyZW50X2lkMSwgcGFyZW50X2lkMikgVkFMVUVTICgnWzIwMCwyMDBdJywg JzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScsICdbOCw5KScsICdbOCw5KScpOworREVMRVRFIEZS T00gdGVtcG9yYWxfcm5nMiBXSEVSRSBpZDEgPSAnWzgsOSknIEFORCB2YWxpZF9hdCBAPiAnMjAx OS0wMS0wMSc6OmRhdGU7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9wZXIycm5nIFdIRVJF IGlkID0gJ1syMDAsMjAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworICAgIGlkICAgICB8IHZh bGlkX2Zyb20gfCB2YWxpZF90aWwgIHwgcGFyZW50X2lkMSB8IHBhcmVudF9pZDIgCistLS0tLS0t LS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0K KyBbMjAwLDIwMSkgfCAyMDE4LTAxLTAxIHwgMjAyMC0wMS0wMSB8IFstMSwwKSAgICAgfCBbOCw5 KQorIFsyMDAsMjAxKSB8IDIwMjAtMDEtMDEgfCAyMDIxLTAxLTAxIHwgWzgsOSkgICAgICB8IFs4 LDkpCisoMiByb3dzKQorCistLSBGSyB3aXRoIGEgY3VzdG9tIHJhbmdlIHR5cGUKK0NSRUFURSBU WVBFIG15ZGF0ZXJhbmdlIEFTIHJhbmdlKHN1YnR5cGU9ZGF0ZSk7CitDUkVBVEUgVEFCTEUgdGVt cG9yYWxfcm5nMyAoCisgIGlkIGludDRyYW5nZSwKKyAgdmFsaWRfYXQgbXlkYXRlcmFuZ2UsCisg IENPTlNUUkFJTlQgdGVtcG9yYWxfcm5nM19wayBQUklNQVJZIEtFWSAoaWQsIHZhbGlkX2F0IFdJ VEhPVVQgT1ZFUkxBUFMpCispOworQ1JFQVRFIFRBQkxFIHRlbXBvcmFsX2ZrM19ybmcycm5nICgK KyAgaWQgaW50NHJhbmdlLAorICB2YWxpZF9hdCBteWRhdGVyYW5nZSwKKyAgcGFyZW50X2lkIGlu dDRyYW5nZSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9mazNfcm5nMnJuZ19wayBQUklNQVJZIEtF WSAoaWQsIHZhbGlkX2F0IFdJVEhPVVQgT1ZFUkxBUFMpLAorICBDT05TVFJBSU5UIHRlbXBvcmFs X2ZrM19ybmcycm5nX2ZrIEZPUkVJR04gS0VZIChwYXJlbnRfaWQsIFBFUklPRCB2YWxpZF9hdCkK KyAgICBSRUZFUkVOQ0VTIHRlbXBvcmFsX3JuZzMgKGlkLCBQRVJJT0QgdmFsaWRfYXQpIE9OIERF TEVURSBDQVNDQURFCispOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcm5nMyAoaWQsIHZhbGlkX2F0 KSBWQUxVRVMgKCdbOCw5KScsIG15ZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEn KSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9mazNfcm5nMnJuZyAoaWQsIHZhbGlkX2F0LCBwYXJl bnRfaWQpIFZBTFVFUyAoJ1s1LDYpJywgbXlkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0w MS0wMScpLCAnWzgsOSknKTsKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3JuZzMgRk9SIFBPUlRJT04g T0YgdmFsaWRfYXQgRlJPTSAnMjAxOS0wMS0wMScgVE8gJzIwMjAtMDEtMDEnIFdIRVJFIGlkID0g J1s4LDkpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmszX3JuZzJybmcgV0hFUkUgaWQgPSAn WzUsNiknOworICBpZCAgIHwgICAgICAgIHZhbGlkX2F0ICAgICAgICAgfCBwYXJlbnRfaWQgCist LS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0KKyBbNSw2KSB8IFsy MDE4LTAxLTAxLDIwMTktMDEtMDEpIHwgWzgsOSkKKyBbNSw2KSB8IFsyMDIwLTAxLTAxLDIwMjEt MDEtMDEpIHwgWzgsOSkKKygyIHJvd3MpCisKK0RST1AgVEFCTEUgdGVtcG9yYWxfZmszX3JuZzJy bmc7CitEUk9QIFRBQkxFIHRlbXBvcmFsX3JuZzM7CitEUk9QIFRZUEUgbXlkYXRlcmFuZ2U7Cist LQorLS0gRksgYmV0d2VlbiBwYXJ0aXRpb25lZCB0YWJsZXM6IHJhbmdlcworLS0KK0NSRUFURSBU QUJMRSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ybmcgKAorICBpZCBpbnQ0cmFuZ2UsCisgIHZhbGlk X2F0IGRhdGVyYW5nZSwKKyAgbmFtZSB0ZXh0LAorICBDT05TVFJBSU5UIHRlbXBvcmFsX3Bhcml0 aW9uZWRfcm5nX3BrIFBSSU1BUlkgS0VZIChpZCwgdmFsaWRfYXQgV0lUSE9VVCBPVkVSTEFQUykK KykgUEFSVElUSU9OIEJZIExJU1QgKGlkKTsKK0NSRUFURSBUQUJMRSB0cDEgUEFSVElUSU9OIE9G IHRlbXBvcmFsX3BhcnRpdGlvbmVkX3JuZyBGT1IgVkFMVUVTIElOICgnWzEsMiknLCAnWzMsNCkn LCAnWzUsNiknLCAnWzcsOCknLCAnWzksMTApJywgJ1sxMSwxMiknLCAnWzEzLDE0KScsICdbMTUs MTYpJywgJ1sxNywxOCknLCAnWzE5LDIwKScsICdbMjEsMjIpJywgJ1syMywyNCknKTsKK0NSRUFU RSBUQUJMRSB0cDIgUEFSVElUSU9OIE9GIHRlbXBvcmFsX3BhcnRpdGlvbmVkX3JuZyBGT1IgVkFM VUVTIElOICgnWzAsMSknLCAnWzIsMyknLCAnWzQsNSknLCAnWzYsNyknLCAnWzgsOSknLCAnWzEw LDExKScsICdbMTIsMTMpJywgJ1sxNCwxNSknLCAnWzE2LDE3KScsICdbMTgsMTkpJywgJ1syMCwy MSknLCAnWzIyLDIzKScsICdbMjQsMjUpJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wYXJ0aXRp b25lZF9ybmcgKGlkLCB2YWxpZF9hdCwgbmFtZSkgVkFMVUVTCisgICgnWzEsMiknLCBkYXRlcmFu Z2UoJzIwMDAtMDEtMDEnLCAnMjAwMC0wMi0wMScpLCAnb25lJyksCisgICgnWzEsMiknLCBkYXRl cmFuZ2UoJzIwMDAtMDItMDEnLCAnMjAwMC0wMy0wMScpLCAnb25lJyksCisgICgnWzIsMyknLCBk YXRlcmFuZ2UoJzIwMDAtMDEtMDEnLCAnMjAxMC0wMS0wMScpLCAndHdvJyk7CitDUkVBVEUgVEFC TEUgdGVtcG9yYWxfcGFydGl0aW9uZWRfZmtfcm5nMnJuZyAoCisgIGlkIGludDRyYW5nZSwKKyAg dmFsaWRfYXQgZGF0ZXJhbmdlLAorICBwYXJlbnRfaWQgaW50NHJhbmdlLAorICBDT05TVFJBSU5U IHRlbXBvcmFsX3BhcnRpdGlvbmVkX2ZrX3JuZzJybmdfcGsgUFJJTUFSWSBLRVkgKGlkLCB2YWxp ZF9hdCBXSVRIT1VUIE9WRVJMQVBTKSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9wYXJ0aXRpb25l ZF9ma19ybmcycm5nX2ZrIEZPUkVJR04gS0VZIChwYXJlbnRfaWQsIFBFUklPRCB2YWxpZF9hdCkK KyAgICBSRUZFUkVOQ0VTIHRlbXBvcmFsX3BhcnRpdGlvbmVkX3JuZyAoaWQsIFBFUklPRCB2YWxp ZF9hdCkKKykgUEFSVElUSU9OIEJZIExJU1QgKGlkKTsKK0NSRUFURSBUQUJMRSB0ZmtwMSBQQVJU SVRJT04gT0YgdGVtcG9yYWxfcGFydGl0aW9uZWRfZmtfcm5nMnJuZyBGT1IgVkFMVUVTIElOICgn WzEsMiknLCAnWzMsNCknLCAnWzUsNiknLCAnWzcsOCknLCAnWzksMTApJywgJ1sxMSwxMiknLCAn WzEzLDE0KScsICdbMTUsMTYpJywgJ1sxNywxOCknLCAnWzE5LDIwKScsICdbMjEsMjIpJywgJ1sy MywyNCknKTsKK0NSRUFURSBUQUJMRSB0ZmtwMiBQQVJUSVRJT04gT0YgdGVtcG9yYWxfcGFydGl0 aW9uZWRfZmtfcm5nMnJuZyBGT1IgVkFMVUVTIElOICgnWzAsMSknLCAnWzIsMyknLCAnWzQsNSkn LCAnWzYsNyknLCAnWzgsOSknLCAnWzEwLDExKScsICdbMTIsMTMpJywgJ1sxNCwxNSknLCAnWzE2 LDE3KScsICdbMTgsMTkpJywgJ1syMCwyMSknLCAnWzIyLDIzKScsICdbMjQsMjUpJyk7CistLQor LS0gcGFydGl0aW9uZWQgRksgcmVmZXJlbmNpbmcgaW5zZXJ0cworLS0KK0lOU0VSVCBJTlRPIHRl bXBvcmFsX3BhcnRpdGlvbmVkX2ZrX3JuZzJybmcgKGlkLCB2YWxpZF9hdCwgcGFyZW50X2lkKSBW QUxVRVMKKyAgKCdbMSwyKScsIGRhdGVyYW5nZSgnMjAwMC0wMS0wMScsICcyMDAwLTAyLTE1Jyks ICdbMSwyKScpLAorICAoJ1sxLDIpJywgZGF0ZXJhbmdlKCcyMDAxLTAxLTAxJywgJzIwMDItMDEt MDEnKSwgJ1syLDMpJyksCisgICgnWzIsMyknLCBkYXRlcmFuZ2UoJzIwMDAtMDEtMDEnLCAnMjAw MC0wMi0xNScpLCAnWzEsMiknKTsKKy0tIHNob3VsZCBmYWlsOgorSU5TRVJUIElOVE8gdGVtcG9y YWxfcGFydGl0aW9uZWRfZmtfcm5nMnJuZyAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQpIFZBTFVF UworICAoJ1szLDQpJywgZGF0ZXJhbmdlKCcyMDEwLTAxLTAxJywgJzIwMTAtMDItMTUnKSwgJ1sx LDIpJyk7CitFUlJPUjogIGluc2VydCBvciB1cGRhdGUgb24gdGFibGUgInRma3AxIiB2aW9sYXRl cyBmb3JlaWduIGtleSBjb25zdHJhaW50ICJ0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ma19ybmcycm5n X2ZrIgorREVUQUlMOiAgS2V5IChwYXJlbnRfaWQsIHZhbGlkX2F0KT0oWzEsMiksIFsyMDEwLTAx LTAxLDIwMTAtMDItMTUpKSBpcyBub3QgcHJlc2VudCBpbiB0YWJsZSAidGVtcG9yYWxfcGFydGl0 aW9uZWRfcm5nIi4KK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BhcnRpdGlvbmVkX2ZrX3JuZzJybmcg KGlkLCB2YWxpZF9hdCwgcGFyZW50X2lkKSBWQUxVRVMKKyAgKCdbMyw0KScsIGRhdGVyYW5nZSgn MjAwMC0wMS0wMScsICcyMDAwLTAyLTE1JyksICdbMyw0KScpOworRVJST1I6ICBpbnNlcnQgb3Ig dXBkYXRlIG9uIHRhYmxlICJ0ZmtwMSIgdmlvbGF0ZXMgZm9yZWlnbiBrZXkgY29uc3RyYWludCAi dGVtcG9yYWxfcGFydGl0aW9uZWRfZmtfcm5nMnJuZ19mayIKK0RFVEFJTDogIEtleSAocGFyZW50 X2lkLCB2YWxpZF9hdCk9KFszLDQpLCBbMjAwMC0wMS0wMSwyMDAwLTAyLTE1KSkgaXMgbm90IHBy ZXNlbnQgaW4gdGFibGUgInRlbXBvcmFsX3BhcnRpdGlvbmVkX3JuZyIuCistLQorLS0gcGFydGl0 aW9uZWQgRksgcmVmZXJlbmNpbmcgdXBkYXRlcworLS0KK1VQREFURSB0ZW1wb3JhbF9wYXJ0aXRp b25lZF9ma19ybmcycm5nIFNFVCB2YWxpZF9hdCA9IGRhdGVyYW5nZSgnMjAwMC0wMS0wMScsICcy MDAwLTAyLTEzJykgV0hFUkUgaWQgPSAnWzIsMyknOworLS0gbW92ZSBhIHJvdyBmcm9tIHRoZSBm aXJzdCBwYXJ0aXRpb24gdG8gdGhlIHNlY29uZAorVVBEQVRFIHRlbXBvcmFsX3BhcnRpdGlvbmVk X2ZrX3JuZzJybmcgU0VUIGlkID0gJ1s0LDUpJyBXSEVSRSBpZCA9ICdbMSwyKSc7CistLSBtb3Zl IGEgcm93IGZyb20gdGhlIHNlY29uZCBwYXJ0aXRpb24gdG8gdGhlIGZpcnN0CitVUERBVEUgdGVt cG9yYWxfcGFydGl0aW9uZWRfZmtfcm5nMnJuZyBTRVQgaWQgPSAnWzEsMiknIFdIRVJFIGlkID0g J1s0LDUpJzsKIC0tIHNob3VsZCBmYWlsOgogVVBEQVRFIHRlbXBvcmFsX3BhcnRpdGlvbmVkX2Zr X3JuZzJybmcgU0VUIHZhbGlkX2F0ID0gZGF0ZXJhbmdlKCcyMDAwLTAxLTAxJywgJzIwMDAtMDQt MDEnKSBXSEVSRSBpZCA9ICdbMSwyKSc7CiBFUlJPUjogIGNvbmZsaWN0aW5nIGtleSB2YWx1ZSB2 aW9sYXRlcyBleGNsdXNpb24gY29uc3RyYWludCAidGZrcDFfcGtleSIKQEAgLTQyMjAsNCArODUy NCwxOCBAQCBTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX3BhcnRpdGlvbmVkX2ZrX21sdHJuZzJtbHRy bmcgV0hFUkUgaWQgPSAnWzE1LDE2KSc7CiAKIERST1AgVEFCTEUgdGVtcG9yYWxfcGFydGl0aW9u ZWRfZmtfbWx0cm5nMm1sdHJuZzsKIERST1AgVEFCTEUgdGVtcG9yYWxfcGFydGl0aW9uZWRfbWx0 cm5nOworLS0KKy0tIEZLIGJldHdlZW4gcGFydGl0aW9uZWQgdGFibGVzOiBQRVJJT0RzCistLQor Q1JFQVRFIFRBQkxFIHRlbXBvcmFsX3BhcnRpdGlvbmVkX3BlciAoCisgIGlkIGludDRyYW5nZSwK KyAgdmFsaWRfZnJvbSBkYXRlLAorICB2YWxpZF90aWwgZGF0ZSwKKyAgbmFtZSB0ZXh0LAorICBQ RVJJT0QgRk9SIHZhbGlkX2F0ICh2YWxpZF9mcm9tLCB2YWxpZF90aWwpLAorICBDT05TVFJBSU5U IHRlbXBvcmFsX3Bhcml0aW9uZWRfcm5nX3BrIFBSSU1BUlkgS0VZIChpZCwgdmFsaWRfYXQgV0lU SE9VVCBPVkVSTEFQUykKKykgUEFSVElUSU9OIEJZIExJU1QgKGlkKTsKK0NSRUFURSBUQUJMRSB0 cDEgUEFSVElUSU9OIE9GIHRlbXBvcmFsX3BhcnRpdGlvbmVkX3BlciBGT1IgVkFMVUVTIElOICgn WzEsMiknLCAnWzMsNCknLCAnWzUsNiknLCAnWzcsOCknLCAnWzksMTApJywgJ1sxMSwxMiknLCAn WzEzLDE0KScsICdbMTUsMTYpJywgJ1sxNywxOCknLCAnWzE5LDIwKScsICdbMjEsMjIpJywgJ1sy MywyNCknKTsKK0VSUk9SOiAgSW5oZXJpdGluZyBmcm9tIGEgdGFibGUgd2l0aCBhIFBFUklPRCBp cyBub3Qgc3VwcG9ydGVkCitEUk9QIFRBQkxFIHRlbXBvcmFsX3BhcnRpdGlvbmVkX3BlcjsKIFJF U0VUIGRhdGVzdHlsZTsKZGlmZiAtLWdpdCBhL3NyYy90ZXN0L3JlZ3Jlc3MvcGFyYWxsZWxfc2No ZWR1bGUgYi9zcmMvdGVzdC9yZWdyZXNzL3BhcmFsbGVsX3NjaGVkdWxlCmluZGV4IDNkNDgwNWU0 MzAxLi5lZjlhNzIzM2I4NCAxMDA2NDQKLS0tIGEvc3JjL3Rlc3QvcmVncmVzcy9wYXJhbGxlbF9z Y2hlZHVsZQorKysgYi9zcmMvdGVzdC9yZWdyZXNzL3BhcmFsbGVsX3NjaGVkdWxlCkBAIC00Myw3 ICs0Myw3IEBAIHRlc3Q6IGNvcHkgY29weXNlbGVjdCBjb3B5ZG1sIGNvcHllbmNvZGluZyBpbnNl cnQgaW5zZXJ0X2NvbmZsaWN0CiAjIE5vdGU6IG1hbnkgb2YgdGhlIHRlc3RzIGluIGxhdGVyIGdy b3VwcyBkZXBlbmQgb24gY3JlYXRlX2luZGV4CiAjIC0tLS0tLS0tLS0KIHRlc3Q6IGNyZWF0ZV9m dW5jdGlvbl9jIGNyZWF0ZV9taXNjIGNyZWF0ZV9vcGVyYXRvciBjcmVhdGVfcHJvY2VkdXJlIGNy ZWF0ZV90YWJsZSBjcmVhdGVfdHlwZSBjcmVhdGVfc2NoZW1hCi10ZXN0OiBjcmVhdGVfaW5kZXgg Y3JlYXRlX2luZGV4X3NwZ2lzdCBjcmVhdGVfdmlldyBpbmRleF9pbmNsdWRpbmcgaW5kZXhfaW5j bHVkaW5nX2dpc3QKK3Rlc3Q6IGNyZWF0ZV9pbmRleCBjcmVhdGVfaW5kZXhfc3BnaXN0IGNyZWF0 ZV92aWV3IGluZGV4X2luY2x1ZGluZyBpbmRleF9pbmNsdWRpbmdfZ2lzdCBwZXJpb2RzCiAKICMg LS0tLS0tLS0tLQogIyBBbm90aGVyIGdyb3VwIG9mIHBhcmFsbGVsIHRlc3RzCmRpZmYgLS1naXQg YS9zcmMvdGVzdC9yZWdyZXNzL3NxbC9mb3JfcG9ydGlvbl9vZi5zcWwgYi9zcmMvdGVzdC9yZWdy ZXNzL3NxbC9mb3JfcG9ydGlvbl9vZi5zcWwKaW5kZXggNzQ5M2NjNGMyMzMuLjBiMzM2MWExNDIw IDEwMDY0NAotLS0gYS9zcmMvdGVzdC9yZWdyZXNzL3NxbC9mb3JfcG9ydGlvbl9vZi5zcWwKKysr IGIvc3JjL3Rlc3QvcmVncmVzcy9zcWwvZm9yX3BvcnRpb25fb2Yuc3FsCkBAIC04MDEsNiArODAx LDU2IEBAIFNFTEVDVCAqIEZST00gZm9yX3BvcnRpb25fb2ZfdGVzdDIgT1JERVIgQlkgaWQsIHZh bGlkX2F0OwogCiBEUk9QIFRBQkxFIGZvcl9wb3J0aW9uX29mX3Rlc3QyOwogCistLSBUZXN0IHdp dGggUEVSSU9EcworCitDUkVBVEUgVEFCTEUgZm9yX3BvcnRpb25fb2ZfdGVzdDIgKAorICBpZCBp bnQ0cmFuZ2UgTk9UIE5VTEwsCisgIHZhbGlkX2Zyb20gZGF0ZSwKKyAgdmFsaWRfdGlsIGRhdGUs CisgIG5hbWUgdGV4dCBOT1QgTlVMTCwKKyAgUEVSSU9EIEZPUiB2YWxpZF9hdCAodmFsaWRfZnJv bSwgdmFsaWRfdGlsKSwKKyAgQ09OU1RSQUlOVCBmb3JfcG9ydGlvbl9vZl90ZXN0Ml9wayBQUklN QVJZIEtFWSAoaWQsIHZhbGlkX2F0IFdJVEhPVVQgT1ZFUkxBUFMpCispOworSU5TRVJUIElOVE8g Zm9yX3BvcnRpb25fb2ZfdGVzdDIKK1ZBTFVFUworKCdbMSwyKScsICcyMDE4LTAxLTAyJywgJzIw MTgtMDItMDMnLCAnb25lJyksCisoJ1sxLDIpJywgJzIwMTgtMDItMDQnLCAnMjAxOC0wMy0wMycs ICdvbmUnKSwKKygnWzEsMiknLCAnMjAxOC0wMy0wMycsICcyMDE4LTA0LTA0JywgJ29uZScpLAor KCdbMiwzKScsICcyMDE4LTAxLTAxJywgJzIwMTgtMDUtMDEnLCAndHdvJyksCisoJ1szLDQpJywg JzIwMTgtMDEtMDEnLCBudWxsLCAndGhyZWUnKTsKKzsKKworVVBEQVRFIGZvcl9wb3J0aW9uX29m X3Rlc3QyCitGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDE4LTAxLTEwJyBUTyAnMjAx OC0wMi0xMCcKK1NFVCBuYW1lID0gJ29uZV4xJworV0hFUkUgaWQgPSAnWzEsMiknOworCitERUxF VEUgRlJPTSBmb3JfcG9ydGlvbl9vZl90ZXN0MgorRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJP TSAnMjAxOC0wMS0xNScgVE8gJzIwMTgtMDItMTUnCitXSEVSRSBpZCA9ICdbMiwzKSc7CisKKy0t IFNldHRpbmcgdGhlIHN0YXJ0IGNvbHVtbiBmYWlsczoKK1VQREFURSBmb3JfcG9ydGlvbl9vZl90 ZXN0MgorRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAxOC0wMS0xMCcgVE8gJzIwMTgt MDItMTAnCitTRVQgdmFsaWRfZnJvbSA9ICcyMDE4LTAyLTAxJworV0hFUkUgaWQgPSAnWzEsMikn OworCistLSBTZXR0aW5nIHRoZSBlbmQgY29sdW1uIGZhaWxzOgorVVBEQVRFIGZvcl9wb3J0aW9u X29mX3Rlc3QyCitGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDE4LTAxLTEwJyBUTyAn MjAxOC0wMi0xMCcKK1NFVCB2YWxpZF90aWwgPSAnMjAxOC0wMi0wMScKK1dIRVJFIGlkID0gJ1sx LDIpJzsKKworLS0gU2V0dGluZyB0aGUgZ2VuZXJhdGVkIGNvbHVtbiBmYWlsczoKK1VQREFURSBm b3JfcG9ydGlvbl9vZl90ZXN0MgorRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAxOC0w MS0xMCcgVE8gJzIwMTgtMDItMTAnCitTRVQgdmFsaWRfYXQgPSAnWzIwMTgtMDItMDEsMjAxOC0w Mi0wMyknCitXSEVSRSBpZCA9ICdbMSwyKSc7CisKK1NFTEVDVCAqIEZST00gZm9yX3BvcnRpb25f b2ZfdGVzdDIgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworCitEUk9QIFRBQkxFIGZvcl9wb3J0aW9u X29mX3Rlc3QyOworCiAtLSBUZXN0IHdpdGggYSBjdXN0b20gcmFuZ2UgdHlwZQogCiBDUkVBVEUg VFlQRSBteWRhdGVyYW5nZSBBUyByYW5nZShzdWJ0eXBlPWRhdGUpOwpkaWZmIC0tZ2l0IGEvc3Jj L3Rlc3QvcmVncmVzcy9zcWwvcGVyaW9kcy5zcWwgYi9zcmMvdGVzdC9yZWdyZXNzL3NxbC9wZXJp b2RzLnNxbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMC4uMDRhMzAxMTBk ZWMKLS0tIC9kZXYvbnVsbAorKysgYi9zcmMvdGVzdC9yZWdyZXNzL3NxbC9wZXJpb2RzLnNxbApA QCAtMCwwICsxLDE5OCBAQAorLyogU3lzdGVtIHBlcmlvZHMgYXJlIG5vdCBpbXBsZW1lbnRlZCAq LworY3JlYXRlIHRhYmxlIHB0IChpZCBpbnRlZ2VyLCBkcyBkYXRlLCBkZSBkYXRlLCBwZXJpb2Qg Zm9yIHN5c3RlbV90aW1lIChkcywgZGUpKTsKKworLyogUGVyaW9kcyBtdXN0IHNwZWNpZnkgYWN0 dWFsIGNvbHVtbnMgKi8KK2NyZWF0ZSB0YWJsZSBwdCAoaWQgaW50ZWdlciwgZHMgZGF0ZSwgZGUg ZGF0ZSwgcGVyaW9kIGZvciBwIChib2d1cywgZGUpKTsKK2NyZWF0ZSB0YWJsZSBwdCAoaWQgaW50 ZWdlciwgZHMgZGF0ZSwgZGUgZGF0ZSwgcGVyaW9kIGZvciBwIChkcywgYm9ndXMpKTsKKworLyog RGF0YSB0eXBlcyBtdXN0IG1hdGNoIGV4YWN0bHkgKi8KK2NyZWF0ZSB0YWJsZSBwdCAoaWQgaW50 ZWdlciwgZHMgZGF0ZSwgZGUgdGltZXN0YW1wLCBwZXJpb2QgZm9yIHAgKGRzLCBkZSkpOworY3Jl YXRlIHRhYmxlIHB0IChpZCBpbnRlZ2VyLCBkcyB0ZXh0IGNvbGxhdGUgIkMiLCBkZSB0ZXh0IGNv bGxhdGUgIlBPU0lYIiwgcGVyaW9kIGZvciBwIChkcywgZGUpKTsKKworLyogUGVyaW9kcyBtdXN0 IGhhdmUgYSBkZWZhdWx0IEJUcmVlIG9wZXJhdG9yIGNsYXNzICovCitjcmVhdGUgdGFibGUgcHQg KGlkIGludGVnZXIsIGRzIHhtbCwgZGUgeG1sLCBwZXJpb2QgZm9yIHAgKGRzLCBkZSkpOworCisv KiBQZXJpb2QgYW5kIGNvbHVtbiBuYW1lcyBhcmUgaW4gdGhlIHNhbWUgbmFtZXNwYWNlICovCitj cmVhdGUgdGFibGUgcHQgKGlkIGludGVnZXIsIGRzIGRhdGUsIGRlIGRhdGUsIHBlcmlvZCBmb3Ig Y3RpZCAoZHMsIGRlKSk7CitjcmVhdGUgdGFibGUgcHQgKGlkIGludGVnZXIsIGRzIGRhdGUsIGRl IGRhdGUsIHBlcmlvZCBmb3IgaWQgKGRzLCBkZSkpOworCisvKiBQZXJpb2QgbmFtZSBjYW4ndCBi ZSBnaXZlbiBtb3JlIHRoYW4gb25jZSAqLworY3JlYXRlIHRhYmxlIHB0IChpZCBpbnRlZ2VyLCBk cyBkYXRlLCBkZSBkYXRlLCBwZXJpb2QgZm9yIHAgKGRzLCBkZSksIHBlcmlvZCBmb3IgcCAoZHMs IGRlKSk7CisKKy8qIFBlcmlvZCBjYW4ndCB1c2UgdGhlIHNhbWUgY29sdW0gZm9yIHN0YXJ0IGFu ZCBlbmQqLworY3JlYXRlIHRhYmxlIHB0IChpZCBpbnRlZ2VyLCBkcyBkYXRlLCBkZSBkYXRlLCBw ZXJpb2QgZm9yIHAgKGRzLCBkcykpOworCisvKiBOb3cgbWFrZSBvbmUgdGhhdCB3b3JrcyAqLwor Y3JlYXRlIHRhYmxlIHB0IChpZCBpbnRlZ2VyLCBkcyBkYXRlLCBkZSBkYXRlLCBwZXJpb2QgZm9y IHAgKGRzLCBkZSkpOworLyogSXRzIGdlbmVyYXRlZCBjb2x1bW4gbG9va3MgZ29vZCAqLworc2Vs ZWN0IGF0dG5hbWUsIGF0dHR5cGlkOjpyZWd0eXBlLCBhdHRub3RudWxsLCBhdHRnZW5lcmF0ZWQg ZnJvbSBwZ19hdHRyaWJ1dGUgd2hlcmUgYXR0cmVsaWQgPSAncHQnOjpyZWdjbGFzcyBhbmQgYXR0 bmFtZSA9ICdwJzsKK3NlbGVjdCBjb25uYW1lLCBjb250eXBlIGZyb20gcGdfY29uc3RyYWludCB3 aGVyZSBjb25yZWxpZCA9ICdwdCc6OnJlZ2NsYXNzIG9yZGVyIGJ5IGNvbm5hbWU7CisvKiBJdCBh cHBlYXJzIGluIHRoZSBpbmZvcm1hdGlvbl9zY2hlbWEgKi8KK3NlbGVjdCAqIGZyb20gaW5mb3Jt YXRpb25fc2NoZW1hLnBlcmlvZHM7CisKKy8qIFNFTEVDVCAqIGV4Y2x1ZGVzIHRoZSBQRVJJT0Qg Ki8KK2luc2VydCBpbnRvIHB0IHZhbHVlcyAoMSwgJzIwMDAtMDEtMDEnLCAnMjAwMS0wMS0wMScp Oworc2VsZWN0ICogZnJvbSBwdDsKKworLyogWW91IGNhbiBnZXQgaXQgaWYgeW91IHdhbnQgKi8K K3NlbGVjdCAqLCBwIGZyb20gcHQ7CisKKy8qIFlvdSBjYW4gY29tbWVudCBvbiBpdCAqLworY29t bWVudCBvbiBwZXJpb2QgcHQucCBpcyAndGVzdCBjb21tZW50JzsKK3NlbGVjdCBvYmpfZGVzY3Jp cHRpb24oKHNlbGVjdCBvaWQgZnJvbSBwZ19wZXJpb2Qgd2hlcmUgcGVycmVsaWQgPSAncHQnOjpy ZWdjbGFzcyBhbmQgcGVybmFtZSA9ICdwJyksICdwZ19wZXJpb2QnKTsKKworLyogVHdvIGFyZSBv a2F5ICovCitjcmVhdGUgdGFibGUgcHQyIChpZCBpbnRlZ2VyLCBkcyBkYXRlLCBkZSBkYXRlLCBw ZXJpb2QgZm9yIHAxIChkcywgZGUpLCBwZXJpb2QgZm9yIHAyIChkcywgZGUpKTsKK2Ryb3AgdGFi bGUgcHQyOworCisvKiBTa2lwIGNyZWF0aW5nIEdFTkVSQVRFRCBjb2x1bW46IHdvcmtzICovCitj cmVhdGUgdGFibGUgcHQyIChpZCBpbnRlZ2VyLCBkcyBkYXRlLCBkZSBkYXRlLCBwIGRhdGVyYW5n ZSBub3QgbnVsbCBnZW5lcmF0ZWQgYWx3YXlzIGFzIChkYXRlcmFuZ2UoZHMsIGRlKSkgc3RvcmVk LCBwZXJpb2QgZm9yIHAgKGRzLCBkZSkgd2l0aCAoY29sZXhpc3RzID0gdHJ1ZSkpOworXGQgcHQy Citkcm9wIHRhYmxlIHB0MjsKKy8qIFNraXAgY3JlYXRpbmcgR0VORVJBVEVEIGNvbHVtbjogZmFp bHMgYmVjYXVzZSB0aGUgY29sIGlzbid0IHRoZXJlICovCitjcmVhdGUgdGFibGUgcHQyIChpZCBp bnRlZ2VyLCBkcyBkYXRlLCBkZSBkYXRlLCBwZXJpb2QgZm9yIHAgKGRzLCBkZSkgd2l0aCAoY29s ZXhpc3RzID0gdHJ1ZSkpOworLyogU2tpcCBjcmVhdGluZyBHRU5FUkFURUQgY29sdW1uOiBmYWls cyBiZWNhdXNlIHRoZSBvcHRpb24gaGFzIGFuIGludmFsaWQgdmFsdWUgKi8KK2NyZWF0ZSB0YWJs ZSBwdDIgKGlkIGludGVnZXIsIGRzIGRhdGUsIGRlIGRhdGUsIHBlcmlvZCBmb3IgcCAoZHMsIGRl KSB3aXRoIChjb2xleGlzdHMgPSAnd2hhdGV2ZXInKSk7CisvKiBTa2lwIGNyZWF0aW5nIEdFTkVS QVRFRCBjb2x1bW46IGZhaWxzIGJlY2F1c2UgdGhlIGNvbHVtbiBpcyBub3QgTk9UIE5VTEwgKi8K K2NyZWF0ZSB0YWJsZSBwdDIgKGlkIGludGVnZXIsIGRzIGRhdGUsIGRlIGRhdGUsIHAgZGF0ZXJh bmdlIGdlbmVyYXRlZCBhbHdheXMgYXMgKGRhdGVyYW5nZShkcywgZGUpKSBzdG9yZWQsIHBlcmlv ZCBmb3IgcCAoZHMsIGRlKSB3aXRoIChjb2xleGlzdHMgPSB0cnVlKSk7CisvKiBTa2lwIGNyZWF0 aW5nIEdFTkVSQVRFRCBjb2x1bW46IGZhaWxzIGJlY2F1c2UgdGhlIGNvbHVtbiBpcyBub3QgR0VO RVJBVEVEICovCitjcmVhdGUgdGFibGUgcHQyIChpZCBpbnRlZ2VyLCBkcyBkYXRlLCBkZSBkYXRl LCBwIGRhdGVyYW5nZSBub3QgbnVsbCwgcGVyaW9kIGZvciBwIChkcywgZGUpIHdpdGggKGNvbGV4 aXN0cyA9IHRydWUpKTsKKy8qIFNraXAgY3JlYXRpbmcgR0VORVJBVEVEIGNvbHVtbjogZmFpbHMg YmVjYXVzZSB0aGUgY29sdW1uIGlzIEdFTkVSQVRFRCBidXQgd2l0aCB0aGUgd3JvbmcgZXhwcmVz c2lvbiAqLworLS0gVE9ETzoKKy0tIGNyZWF0ZSB0YWJsZSBwdDIgKGlkIGludGVnZXIsIGRzIGRh dGUsIGRlIGRhdGUsIHAgZGF0ZXJhbmdlIG5vdCBudWxsIGdlbmVyYXRlZCBhbHdheXMgYXMgKGRh dGVyYW5nZShkZSwgZHMpKSBzdG9yZWQsIHBlcmlvZCBmb3IgcCAoZHMsIGRlKSB3aXRoIChjb2xl eGlzdHMgPSB0cnVlKSk7CisvKiBTa2lwIGNyZWF0aW5nIEdFTkVSQVRFRCBjb2x1bW46IGZhaWxz IGJlY2F1c2UgdGhlIGNvbHVtbiBpcyB0aGUgd3JvbmcgdHlwZSAqLworY3JlYXRlIHRhYmxlIHB0 MiAoaWQgaW50ZWdlciwgZHMgZGF0ZSwgZGUgZGF0ZSwgcCB0c3JhbmdlIG5vdCBudWxsIGdlbmVy YXRlZCBhbHdheXMgYXMgKHRzcmFuZ2UoZHMsIGRlKSkgc3RvcmVkLCBwZXJpb2QgZm9yIHAgKGRz LCBkZSkgd2l0aCAoY29sZXhpc3RzID0gdHJ1ZSkpOworLyogU2tpcCBjcmVhdGluZyBHRU5FUkFU RUQgY29sdW1uOiBmYWlscyBiZWNhdXNlIHRoZSBjb2x1bW4gaXMgaW5oZXJpdGVkICovCitjcmVh dGUgdGFibGUgcHQycGFyZW50IChpZCBpbnRlZ2VyLCBkcyBkYXRlLCBkZSBkYXRlLCBwIGRhdGVy YW5nZSBub3QgbnVsbCBnZW5lcmF0ZWQgYWx3YXlzIGFzIChkYXRlcmFuZ2UoZHMsIGRlKSkgc3Rv cmVkKTsKK2NyZWF0ZSB0YWJsZSBwdDIgKHBlcmlvZCBmb3IgcCAoZHMsIGRlKSB3aXRoIChjb2xl eGlzdHMgPSB0cnVlKSkgaW5oZXJpdHMgKHB0MnBhcmVudCk7Citkcm9wIHRhYmxlIHB0MnBhcmVu dDsKKworCisvKgorICogQUxURVIgVEFCTEUgdGVzdHMKKyAqLworYWx0ZXIgdGFibGUgcHQgZHJv cCBwZXJpb2QgZm9yIHA7CithbHRlciB0YWJsZSBwdCBhZGQgcGVyaW9kIGZvciBzeXN0ZW1fdGlt ZSAoZHMsIGRlKTsKK2FsdGVyIHRhYmxlIHB0IGFkZCBwZXJpb2QgZm9yIHAgKGRzLCBkZSk7Cisv KiBJdHMgZ2VuZXJhdGVkIGNvbHVtbiBsb29rcyBnb29kICovCitzZWxlY3QgYXR0bmFtZSwgYXR0 dHlwaWQ6OnJlZ3R5cGUsIGF0dG5vdG51bGwsIGF0dGdlbmVyYXRlZCBmcm9tIHBnX2F0dHJpYnV0 ZSB3aGVyZSBhdHRyZWxpZCA9ICdwdCc6OnJlZ2NsYXNzIGFuZCBhdHRuYW1lID0gJ3AnOworc2Vs ZWN0IGNvbm5hbWUsIGNvbnR5cGUgZnJvbSBwZ19jb25zdHJhaW50IHdoZXJlIGNvbnJlbGlkID0g J3B0Jzo6cmVnY2xhc3Mgb3JkZXIgYnkgY29ubmFtZTsKKworLyogQWRkaW5nIGEgc2Vjb25kIG9u ZSAqLworY3JlYXRlIHRhYmxlIHB0MiAoaWQgaW50ZWdlciwgZHMgZGF0ZSwgZGUgZGF0ZSwgcGVy aW9kIGZvciBwMSAoZHMsIGRlKSk7CithbHRlciB0YWJsZSBwdDIgYWRkIHBlcmlvZCBmb3IgcDIg KGRzLCBkZSk7Citkcm9wIHRhYmxlIHB0MjsKKworLyogQ2FuJ3QgZHJvcCBpdHMgY29sdW1ucyAq LworYWx0ZXIgdGFibGUgcHQgZHJvcCBjb2x1bW4gZHM7CithbHRlciB0YWJsZSBwdCBkcm9wIGNv bHVtbiBkZTsKKworLyogQ2FuJ3QgY2hhbmdlIHRoZSBkYXRhIHR5cGVzICovCithbHRlciB0YWJs ZSBwdCBhbHRlciBjb2x1bW4gZHMgdHlwZSB0aW1lc3RhbXA7CithbHRlciB0YWJsZSBwdCBhbHRl ciBjb2x1bW4gZHMgdHlwZSB0aW1lc3RhbXA7CisKKy8qIGNvbHVtbi9wZXJpb2QgbmFtZXNwYWNl IGNvbmZsaWN0cyAqLworYWx0ZXIgdGFibGUgcHQgYWRkIGNvbHVtbiBwIGludGVnZXI7CithbHRl ciB0YWJsZSBwdCByZW5hbWUgY29sdW1uIGlkIHRvIHA7CithbHRlciB0YWJsZSBwdCBhZGQgcGVy aW9kIGZvciB0YWJsZW9pZCAoZHMsIGRlKTsKK2FsdGVyIHRhYmxlIHB0IGFkZCBwZXJpb2QgZm9y ICIuLi4uLi4uLnBnLmRyb3BwZWQuNC4uLi4uLi4uIiAoZHMsIGRlKTsKKworLyogYWRkaW5nIGNv bHVtbnMgYW5kIHRoZSBwZXJpb2QgYXQgdGhlIHNhbWUgdGltZSAqLworY3JlYXRlIHRhYmxlIHB0 MiAoaWQgaW50ZWdlcik7CithbHRlciB0YWJsZSBwdDIgYWRkIGNvbHVtbiBkcyBkYXRlLCBhZGQg Y29sdW1uIGRlIGRhdGUsIGFkZCBwZXJpb2QgZm9yIHAgKGRzLCBkZSk7Citkcm9wIHRhYmxlIHB0 MjsKKworLyogQW1iaWd1b3VzIHJhbmdlIHR5cGVzIHJhaXNlIGFuIGVycm9yICovCitjcmVhdGUg dHlwZSBteWRhdGVyYW5nZSBhcyByYW5nZShzdWJ0eXBlPWRhdGUpOworY3JlYXRlIHRhYmxlIHB0 MiAoaWQgaW50LCBkcyBkYXRlLCBkZSBkYXRlLCBwZXJpb2QgZm9yIHAgKGRzLCBkZSkpOworCisv KiBZb3UgY2FuIGdpdmUgYW4gZXhwbGljaXQgcmFuZ2UgdHlwZSAqLworY3JlYXRlIHRhYmxlIHB0 MiAoaWQgaW50LCBkcyBkYXRlLCBkZSBkYXRlLCBwZXJpb2QgZm9yIHAgKGRzLCBkZSkgd2l0aCAo cmFuZ2V0eXBlID0gJ215ZGF0ZXJhbmdlJykpOworZHJvcCB0eXBlIG15ZGF0ZXJhbmdlOworZHJv cCB0eXBlIG15ZGF0ZXJhbmdlIGNhc2NhZGU7Citkcm9wIHRhYmxlIHB0MjsKK2NyZWF0ZSB0YWJs ZSBwdDIgKGlkIGludCwgZHMgZGF0ZSwgZGUgZGF0ZSwgcGVyaW9kIGZvciBwIChkcywgZGUpIHdp dGggKHJhbmdldHlwZSA9ICdkYXRlcmFuZ2UnKSk7CisKKy8qIFJhbmdlIHR5cGUgaXMgbm90IGZv dW5kICovCitjcmVhdGUgdGFibGUgcHQzIChpZCBpbnQsIGRzIGRhdGUsIGRlIGRhdGUsIHBlcmlv ZCBmb3IgcCAoZHMsIGRlKSB3aXRoIChyYW5nZXR5cGUgPSAnbm90YXJhbmdlJykpOworCisvKiBS YW5nZSB0eXBlIGlzIHRoZSB3cm9uZyB0eXBlICovCitjcmVhdGUgdGFibGUgcHQzIChpZCBpbnQs IGRzIGRhdGUsIGRlIGRhdGUsIHBlcmlvZCBmb3IgcCAoZHMsIGRlKSB3aXRoIChyYW5nZXR5cGUg PSAndHN0enJhbmdlJykpOworZHJvcCB0YWJsZSBwdDI7CisKKy8qIFBlcmlvZCBjYW4ndCB1c2Ug dGhlIHNhbWUgY29sdW0gZm9yIHN0YXJ0IGFuZCBlbmQqLworY3JlYXRlIHRhYmxlIHB0MiAoaWQg aW50ZWdlciwgZHMgZGF0ZSwgZGUgZGF0ZSk7CithbHRlciB0YWJsZSBwdDIgYWRkIHBlcmlvZCBm b3IgcCAoZHMsIGRzKTsKK2Ryb3AgdGFibGUgcHQyOworCisvKiBTa2lwIGNyZWF0aW5nIEdFTkVS QVRFRCBjb2x1bW46IHdvcmtzICovCitjcmVhdGUgdGFibGUgcHQyIChpZCBpbnRlZ2VyLCBkcyBk YXRlLCBkZSBkYXRlLCBwIGRhdGVyYW5nZSBub3QgbnVsbCBnZW5lcmF0ZWQgYWx3YXlzIGFzIChk YXRlcmFuZ2UoZHMsIGRlKSkgc3RvcmVkKTsKK2FsdGVyIHRhYmxlIHB0MiBhZGQgcGVyaW9kIGZv ciBwIChkcywgZGUpIHdpdGggKGNvbGV4aXN0cyA9IHRydWUpOworXGQgcHQyCitkcm9wIHRhYmxl IHB0MjsKKy8qIFNraXAgY3JlYXRpbmcgR0VORVJBVEVEIGNvbHVtbjogZmFpbHMgYmVjYXVzZSB0 aGUgY29sIGlzbid0IHRoZXJlICovCitjcmVhdGUgdGFibGUgcHQyIChpZCBpbnRlZ2VyLCBkcyBk YXRlLCBkZSBkYXRlKTsKK2FsdGVyIHRhYmxlIHB0MiBhZGQgcGVyaW9kIGZvciBwIChkcywgZGUp IHdpdGggKGNvbGV4aXN0cyA9IHRydWUpOworZHJvcCB0YWJsZSBwdDI7CisvKiBTa2lwIGNyZWF0 aW5nIEdFTkVSQVRFRCBjb2x1bW46IGZhaWxzIGJlY2F1c2UgdGhlIG9wdGlvbiBoYXMgYW4gaW52 YWxpZCB2YWx1ZSAqLworY3JlYXRlIHRhYmxlIHB0MiAoaWQgaW50ZWdlciwgZHMgZGF0ZSwgZGUg ZGF0ZSwgcCBkYXRlcmFuZ2Ugbm90IG51bGwgZ2VuZXJhdGVkIGFsd2F5cyBhcyAoZGF0ZXJhbmdl KGRzLCBkZSkpIHN0b3JlZCk7CithbHRlciB0YWJsZSBwdDIgYWRkIHBlcmlvZCBmb3IgcCAoZHMs IGRlKSB3aXRoIChjb2xleGlzdHMgPSAnd2hhdGV2ZXInKTsKK2Ryb3AgdGFibGUgcHQyOworLyog U2tpcCBjcmVhdGluZyBHRU5FUkFURUQgY29sdW1uOiBmYWlscyBiZWNhdXNlIHRoZSBjb2x1bW4g aXMgbm90IE5PVCBOVUxMICovCitjcmVhdGUgdGFibGUgcHQyIChpZCBpbnRlZ2VyLCBkcyBkYXRl LCBkZSBkYXRlLCBwIGRhdGVyYW5nZSBnZW5lcmF0ZWQgYWx3YXlzIGFzIChkYXRlcmFuZ2UoZHMs IGRlKSkgc3RvcmVkKTsKK2FsdGVyIHRhYmxlIHB0MiBhZGQgcGVyaW9kIGZvciBwIChkcywgZGUp IHdpdGggKGNvbGV4aXN0cyA9IHRydWUpOworZHJvcCB0YWJsZSBwdDI7CisvKiBTa2lwIGNyZWF0 aW5nIEdFTkVSQVRFRCBjb2x1bW46IGZhaWxzIGJlY2F1c2UgdGhlIGNvbHVtbiBpcyBub3QgR0VO RVJBVEVEICovCitjcmVhdGUgdGFibGUgcHQyIChpZCBpbnRlZ2VyLCBkcyBkYXRlLCBkZSBkYXRl LCBwIGRhdGVyYW5nZSBub3QgbnVsbCk7CithbHRlciB0YWJsZSBwdDIgYWRkIHBlcmlvZCBmb3Ig cCAoZHMsIGRlKSB3aXRoIChjb2xleGlzdHMgPSB0cnVlKTsKK2Ryb3AgdGFibGUgcHQyOworLyog U2tpcCBjcmVhdGluZyBHRU5FUkFURUQgY29sdW1uOiBmYWlscyBiZWNhdXNlIHRoZSBjb2x1bW4g aXMgR0VORVJBVEVEIGJ1dCB3aXRoIHRoZSB3cm9uZyBleHByZXNzaW9uICovCistLSBUT0RPOgor LS0gY3JlYXRlIHRhYmxlIHB0MiAoaWQgaW50ZWdlciwgZHMgZGF0ZSwgZGUgZGF0ZSwgcCBkYXRl cmFuZ2Ugbm90IG51bGwgZ2VuZXJhdGVkIGFsd2F5cyBhcyAoZGF0ZXJhbmdlKGRlLCBkcykpIHN0 b3JlZCk7CistLSBhbHRlciB0YWJsZSBwdDIgYWRkIHBlcmlvZCBmb3IgcCAoZHMsIGRlKSB3aXRo IChjb2xleGlzdHMgPSB0cnVlKTsKKy8qIFNraXAgY3JlYXRpbmcgR0VORVJBVEVEIGNvbHVtbjog ZmFpbHMgYmVjYXVzZSB0aGUgY29sdW1uIGlzIHRoZSB3cm9uZyB0eXBlICovCitjcmVhdGUgdGFi bGUgcHQyIChpZCBpbnRlZ2VyLCBkcyBkYXRlLCBkZSBkYXRlLCBwIHRzcmFuZ2Ugbm90IG51bGwg Z2VuZXJhdGVkIGFsd2F5cyBhcyAodHNyYW5nZShkcywgZGUpKSBzdG9yZWQpOworYWx0ZXIgdGFi bGUgcHQyIGFkZCBwZXJpb2QgZm9yIHAgKGRzLCBkZSkgd2l0aCAoY29sZXhpc3RzID0gdHJ1ZSk7 Citkcm9wIHRhYmxlIHB0MjsKKy8qIFNraXAgY3JlYXRpbmcgR0VORVJBVEVEIGNvbHVtbjogZmFp bHMgYmVjYXVzZSB0aGUgY29sdW1uIGlzIGluaGVyaXRlZCAqLworY3JlYXRlIHRhYmxlIHB0MnBh cmVudCAoaWQgaW50ZWdlciwgZHMgZGF0ZSwgZGUgZGF0ZSwgcCBkYXRlcmFuZ2Ugbm90IG51bGwg Z2VuZXJhdGVkIGFsd2F5cyBhcyAoZGF0ZXJhbmdlKGRzLCBkZSkpIHN0b3JlZCk7CitjcmVhdGUg dGFibGUgcHQyICgpIGluaGVyaXRzIChwdDJwYXJlbnQpOworYWx0ZXIgdGFibGUgcHQyIGFkZCBw ZXJpb2QgZm9yIHAgKGRzLCBkZSkgd2l0aCAoY29sZXhpc3RzID0gdHJ1ZSk7Citkcm9wIHRhYmxl IHB0MjsKK2Ryb3AgdGFibGUgcHQycGFyZW50OworCisvKiBDUkVBVEUgVEFCTEUgKExJS0UgLi4u KSAqLworCisvKiBQZXJpb2RzIGFyZSBub3QgY29waWVkIGJ5IExJS0UsIHNvIHRoZWlyIGNvbHVt bnMgYXJlbid0IGVpdGhlciAqLworY3JlYXRlIHRhYmxlIHB0MiAobGlrZSBwdCk7CitcZCBwdDIK K2Ryb3AgdGFibGUgcHQyOworCisvKiBDYW4gYWRkIGEgcGVyaW9kIHJlZmVycmluZyB0byBMSUtF J2QgY29sdW1ucyAqLworY3JlYXRlIHRhYmxlIG5vdF9wIChpZCBpbnRlZ2VyLCBkcyBkYXRlLCBk ZSBkYXRlKTsKK2NyZWF0ZSB0YWJsZSBwdDIgKGxpa2Ugbm90X3AsIHBlcmlvZCBmb3IgcCAoZHMs IGRlKSk7CitcZCBwdDIKK2Ryb3AgdGFibGUgcHQyOworCisvKiBDYW4gYWRkIGEgcGVyaW9kIHdp dGggdGhlIHNhbWUgbmFtZSAqLworY3JlYXRlIHRhYmxlIHB0MiAobGlrZSBwdCwgcGVyaW9kIGZv ciBwIChkcywgZGUpKTsKK1xkIHB0MgorZHJvcCB0YWJsZSBwdDI7CisKKy8qIENhbiBhZGQgYSBw ZXJpb2Qgd2l0aCBhIGRpZmZlcmVudCBuYW1lICovCitjcmVhdGUgdGFibGUgcHQyIChsaWtlIHB0 LCBwZXJpb2QgZm9yIHAyIChkcywgZGUpKTsKK1xkIHB0MgorZHJvcCB0YWJsZSBwdDI7CisKKy8q IENhbid0IGFkZCBhIHBlcmlvZCB3aG9zZSBuYW1lIGNvbmZsaWN0cyB3aXRoIGEgTElLRSdkIGNv bHVtbiAqLworY3JlYXRlIHRhYmxlIHB0MiAobGlrZSBwdCwgcGVyaW9kIGZvciBpZCAoZHMsIGRl KSk7CisKKy8qIENSRUFURSBUQUxCRSBJTkhFUklUUyAqLworCisvKiBDYW4ndCBpbmhlcml0IGZy b20gYSB0YWJsZSB3aXRoIGEgcGVyaW9kICovCitjcmVhdGUgdGFibGUgcHQyIChuYW1lIHRleHQp IGluaGVyaXRzIChwdCk7CisKKy8qIENhbid0IGluaGVyaXQgd2l0aCBhIHBlcmlvZCAqLworY3Jl YXRlIHRhYmxlIHB0MiAoZDJzIGRhdGUsIGQyZSBkYXRlLCBwZXJpb2QgZm9yIHAgKGQycywgZDJl KSkgaW5oZXJpdHMgKG5vdF9wKTsKKworZHJvcCB0YWJsZSBub3RfcDsKZGlmZiAtLWdpdCBhL3Ny Yy90ZXN0L3JlZ3Jlc3Mvc3FsL3ByaXZpbGVnZXMuc3FsIGIvc3JjL3Rlc3QvcmVncmVzcy9zcWwv cHJpdmlsZWdlcy5zcWwKaW5kZXggYWU1N2YyMzMzMTQuLmMzNmIxZDM0YWY1IDEwMDY0NAotLS0g YS9zcmMvdGVzdC9yZWdyZXNzL3NxbC9wcml2aWxlZ2VzLnNxbAorKysgYi9zcmMvdGVzdC9yZWdy ZXNzL3NxbC9wcml2aWxlZ2VzLnNxbApAQCAtNzgzLDYgKzc4MywzNCBAQCBVUERBVEUgdDEgRk9S IFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAwMC0wMS0wMScgVE8gJzIwMDEtMDEtMDEnIFNF VCBjMSA9ICdbMgogU0VUIFNFU1NJT04gQVVUSE9SSVpBVElPTiByZWdyZXNzX3ByaXZfdXNlcjE7 CiBEUk9QIFRBQkxFIHQxOwogCistLSB0ZXN0IGNvbHVtbi1sZXZlbCBwcml2aWxlZ2VzIG9uIHRo ZSBQRVJJT0QgdXNlZCBpbiBGT1IgUE9SVElPTiBPRgorU0VUIFNFU1NJT04gQVVUSE9SSVpBVElP TiByZWdyZXNzX3ByaXZfdXNlcjE7CitDUkVBVEUgVEFCTEUgdDEgKAorICBjMSBpbnQ0cmFuZ2Us CisgIHZhbGlkX2Zyb20gdGltZXN0YW1wLAorICB2YWxpZF90aWwgdGltZXN0YW1wLAorICBQRVJJ T0QgRk9SIHZhbGlkX2F0ICh2YWxpZF9mcm9tLCB2YWxpZF90aWwpLAorCUNPTlNUUkFJTlQgdDFw ayBQUklNQVJZIEtFWSAoYzEsIHZhbGlkX2F0IFdJVEhPVVQgT1ZFUkxBUFMpCispOworR1JBTlQg U0VMRUNUIE9OIHQxIFRPIHJlZ3Jlc3NfcHJpdl91c2VyMjsKK0dSQU5UIFNFTEVDVCBPTiB0MSBU TyByZWdyZXNzX3ByaXZfdXNlcjM7CitHUkFOVCBTRUxFQ1QgT04gdDEgVE8gcmVncmVzc19wcml2 X3VzZXI0OworR1JBTlQgU0VMRUNUIE9OIHQxIFRPIHJlZ3Jlc3NfcHJpdl91c2VyNTsKK0dSQU5U IFVQREFURSAoYzEpIE9OIHQxIFRPIHJlZ3Jlc3NfcHJpdl91c2VyMjsKK0dSQU5UIFVQREFURSAo YzEsIHZhbGlkX2F0KSBPTiB0MSBUTyByZWdyZXNzX3ByaXZfdXNlcjM7CitHUkFOVCBVUERBVEUg KGMxLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIE9OIHQxIFRPIHJlZ3Jlc3NfcHJpdl91c2VyNDsK K0dSQU5UIFVQREFURSAoYzEsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCwgdmFsaWRfYXQpIE9OIHQx IFRPIHJlZ3Jlc3NfcHJpdl91c2VyNTsKK1NFVCBTRVNTSU9OIEFVVEhPUklaQVRJT04gcmVncmVz c19wcml2X3VzZXIyOworVVBEQVRFIHQxIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIw MDAtMDEtMDEnIFRPICcyMDAxLTAxLTAxJyBTRVQgYzEgPSAnWzIsMyknOworU0VUIFNFU1NJT04g QVVUSE9SSVpBVElPTiByZWdyZXNzX3ByaXZfdXNlcjM7CitVUERBVEUgdDEgRk9SIFBPUlRJT04g T0YgdmFsaWRfYXQgRlJPTSAnMjAwMC0wMS0wMScgVE8gJzIwMDEtMDEtMDEnIFNFVCBjMSA9ICdb MiwzKSc7CitTRVQgU0VTU0lPTiBBVVRIT1JJWkFUSU9OIHJlZ3Jlc3NfcHJpdl91c2VyNDsKK1VQ REFURSB0MSBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDAwLTAxLTAxJyBUTyAnMjAw MS0wMS0wMScgU0VUIGMxID0gJ1syLDMpJzsKK1NFVCBTRVNTSU9OIEFVVEhPUklaQVRJT04gcmVn cmVzc19wcml2X3VzZXI1OworVVBEQVRFIHQxIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00g JzIwMDAtMDEtMDEnIFRPICcyMDAxLTAxLTAxJyBTRVQgYzEgPSAnWzIsMyknOworU0VUIFNFU1NJ T04gQVVUSE9SSVpBVElPTiByZWdyZXNzX3ByaXZfdXNlcjE7CitEUk9QIFRBQkxFIHQxOworCiAt LSB0ZXN0IGNvbHVtbi1sZXZlbCBwcml2aWxlZ2VzIHdoZW4gaW52b2x2ZWQgd2l0aCBERUxFVEUK IFNFVCBTRVNTSU9OIEFVVEhPUklaQVRJT04gcmVncmVzc19wcml2X3VzZXIxOwogQUxURVIgVEFC TEUgYXRlc3Q2IEFERCBDT0xVTU4gdGhyZWUgaW50ZWdlcjsKZGlmZiAtLWdpdCBhL3NyYy90ZXN0 L3JlZ3Jlc3Mvc3FsL3dpdGhvdXRfb3ZlcmxhcHMuc3FsIGIvc3JjL3Rlc3QvcmVncmVzcy9zcWwv d2l0aG91dF9vdmVybGFwcy5zcWwKaW5kZXggMjI0ZGRlZjg0MzAuLjE4ODA0MWUxZDA3IDEwMDY0 NAotLS0gYS9zcmMvdGVzdC9yZWdyZXNzL3NxbC93aXRob3V0X292ZXJsYXBzLnNxbAorKysgYi9z cmMvdGVzdC9yZWdyZXNzL3NxbC93aXRob3V0X292ZXJsYXBzLnNxbApAQCAtOTEsNiArOTEsMzEg QEAgQ1JFQVRFIFRBQkxFIHRlbXBvcmFsX3JuZzIgKAogU0VMRUNUIHBnX2dldF9jb25zdHJhaW50 ZGVmKG9pZCkgRlJPTSBwZ19jb25zdHJhaW50IFdIRVJFIGNvbm5hbWUgPSAndGVtcG9yYWxfcm5n Ml9wayc7CiBTRUxFQ1QgcGdfZ2V0X2luZGV4ZGVmKGNvbmluZGlkLCAwLCB0cnVlKSBGUk9NIHBn X2NvbnN0cmFpbnQgV0hFUkUgY29ubmFtZSA9ICd0ZW1wb3JhbF9ybmcyX3BrJzsKIAorLS0gUEsg d2l0aCBvbmUgY29sdW1uIHBsdXMgYSBQRVJJT0Q6CitDUkVBVEUgVEFCTEUgdGVtcG9yYWxfcGVy ICgKKyAgaWQgaW50NHJhbmdlLAorICB2YWxpZF9mcm9tIGRhdGUsCisgIHZhbGlkX3RpbCBkYXRl LAorICBQRVJJT0QgRk9SIHZhbGlkX2F0ICh2YWxpZF9mcm9tLCB2YWxpZF90aWwpLAorICBDT05T VFJBSU5UIHRlbXBvcmFsX3Blcl9wayBQUklNQVJZIEtFWSAoaWQsIHZhbGlkX2F0IFdJVEhPVVQg T1ZFUkxBUFMpCispOworXGQgdGVtcG9yYWxfcGVyCitTRUxFQ1QgcGdfZ2V0X2NvbnN0cmFpbnRk ZWYob2lkKSBGUk9NIHBnX2NvbnN0cmFpbnQgV0hFUkUgY29ubmFtZSA9ICd0ZW1wb3JhbF9wZXJf cGsnOworU0VMRUNUIHBnX2dldF9pbmRleGRlZihjb25pbmRpZCwgMCwgdHJ1ZSkgRlJPTSBwZ19j b25zdHJhaW50IFdIRVJFIGNvbm5hbWUgPSAndGVtcG9yYWxfcGVyX3BrJzsKKworLS0gUEsgd2l0 aCB0d28gY29sdW1ucyBwbHVzIGEgUEVSSU9EOgorQ1JFQVRFIFRBQkxFIHRlbXBvcmFsX3BlcjIg KAorICBpZDEgaW50NHJhbmdlLAorICBpZDIgaW50NHJhbmdlLAorICB2YWxpZF9mcm9tIGRhdGUs CisgIHZhbGlkX3RpbCBkYXRlLAorICBQRVJJT0QgRk9SIHZhbGlkX2F0ICh2YWxpZF9mcm9tLCB2 YWxpZF90aWwpLAorICBDT05TVFJBSU5UIHRlbXBvcmFsX3BlcjJfcGsgUFJJTUFSWSBLRVkgKGlk MSwgaWQyLCB2YWxpZF9hdCBXSVRIT1VUIE9WRVJMQVBTKQorKTsKK1xkIHRlbXBvcmFsX3BlcjIK K1NFTEVDVCBwZ19nZXRfY29uc3RyYWludGRlZihvaWQpIEZST00gcGdfY29uc3RyYWludCBXSEVS RSBjb25uYW1lID0gJ3RlbXBvcmFsX3BlcjJfcGsnOworU0VMRUNUIHBnX2dldF9pbmRleGRlZihj b25pbmRpZCwgMCwgdHJ1ZSkgRlJPTSBwZ19jb25zdHJhaW50IFdIRVJFIGNvbm5hbWUgPSAndGVt cG9yYWxfcGVyMl9wayc7CisKIC0tIFBLIHdpdGggYSBjdXN0b20gcmFuZ2UgdHlwZToKIENSRUFU RSBUWVBFIHRleHRyYW5nZTIgQVMgcmFuZ2UgKHN1YnR5cGU9dGV4dCwgY29sbGF0aW9uPSJDIik7 CiBDUkVBVEUgVEFCTEUgdGVtcG9yYWxfcm5nMyAoCkBAIC0xNjksNiArMTk0LDMzIEBAIFNFTEVD VCBwZ19nZXRfY29uc3RyYWludGRlZihvaWQpIEZST00gcGdfY29uc3RyYWludCBXSEVSRSBjb25u YW1lID0gJ3RlbXBvcmFsX3JuCiBTRUxFQ1QgcGdfZ2V0X2luZGV4ZGVmKGNvbmluZGlkLCAwLCB0 cnVlKSBGUk9NIHBnX2NvbnN0cmFpbnQgV0hFUkUgY29ubmFtZSA9ICd0ZW1wb3JhbF9ybmczX3Vx JzsKIERST1AgVEFCTEUgdGVtcG9yYWxfcm5nMzsKIAorLS0gVU5JUVVFIHdpdGggb25lIGNvbHVt biBwbHVzIGEgUEVSSU9EOgorQ1JFQVRFIFRBQkxFIHRlbXBvcmFsX3BlcjMgKAorICBpZCBpbnQ0 cmFuZ2UsCisgIHZhbGlkX2Zyb20gZGF0ZSwKKyAgdmFsaWRfdGlsIGRhdGUsCisgIFBFUklPRCBG T1IgdmFsaWRfYXQgKHZhbGlkX2Zyb20sIHZhbGlkX3RpbCksCisgIENPTlNUUkFJTlQgdGVtcG9y YWxfcGVyM191cSBVTklRVUUgKGlkLCB2YWxpZF9hdCBXSVRIT1VUIE9WRVJMQVBTKQorKTsKK1xk IHRlbXBvcmFsX3BlcjMKK1NFTEVDVCBwZ19nZXRfY29uc3RyYWludGRlZihvaWQpIEZST00gcGdf Y29uc3RyYWludCBXSEVSRSBjb25uYW1lID0gJ3RlbXBvcmFsX3BlcjNfdXEnOworU0VMRUNUIHBn X2dldF9pbmRleGRlZihjb25pbmRpZCwgMCwgdHJ1ZSkgRlJPTSBwZ19jb25zdHJhaW50IFdIRVJF IGNvbm5hbWUgPSAndGVtcG9yYWxfcGVyM191cSc7CitEUk9QIFRBQkxFIHRlbXBvcmFsX3BlcjM7 CisKKy0tIFVOSVFVRSB3aXRoIHR3byBjb2x1bW5zIHBsdXMgYSBQRVJJT0Q6CitDUkVBVEUgVEFC TEUgdGVtcG9yYWxfcGVyMyAoCisgIGlkMSBpbnQ0cmFuZ2UsCisgIGlkMiBpbnQ0cmFuZ2UsCisg IHZhbGlkX2Zyb20gZGF0ZSwKKyAgdmFsaWRfdGlsIGRhdGUsCisgIFBFUklPRCBGT1IgdmFsaWRf YXQgKHZhbGlkX2Zyb20sIHZhbGlkX3RpbCksCisgIENPTlNUUkFJTlQgdGVtcG9yYWxfcGVyM191 cSBVTklRVUUgKGlkMSwgaWQyLCB2YWxpZF9hdCBXSVRIT1VUIE9WRVJMQVBTKQorKTsKK1xkIHRl bXBvcmFsX3BlcjMKK1NFTEVDVCBwZ19nZXRfY29uc3RyYWludGRlZihvaWQpIEZST00gcGdfY29u c3RyYWludCBXSEVSRSBjb25uYW1lID0gJ3RlbXBvcmFsX3BlcjNfdXEnOworU0VMRUNUIHBnX2dl dF9pbmRleGRlZihjb25pbmRpZCwgMCwgdHJ1ZSkgRlJPTSBwZ19jb25zdHJhaW50IFdIRVJFIGNv bm5hbWUgPSAndGVtcG9yYWxfcGVyM191cSc7CitEUk9QIFRBQkxFIHRlbXBvcmFsX3BlcjM7CisK IC0tIFVOSVFVRSB3aXRoIGEgY3VzdG9tIHJhbmdlIHR5cGU6CiBDUkVBVEUgVFlQRSB0ZXh0cmFu Z2UyIEFTIHJhbmdlIChzdWJ0eXBlPXRleHQsIGNvbGxhdGlvbj0iQyIpOwogQ1JFQVRFIFRBQkxF IHRlbXBvcmFsX3JuZzMgKApAQCAtMjQ1LDYgKzI5Nyw1OCBAQCBBTFRFUiBUQUJMRSB0ZW1wb3Jh bDMKICAgVU5JUVVFIChpZCwgdmFsaWRfYXQgV0lUSE9VVCBPVkVSTEFQUyk7CiBEUk9QIFRBQkxF IHRlbXBvcmFsMzsKIAorLS0gUFJJTUFSWSBLRVkgd2l0aCBQRVJJT0QgYWxyZWFkeSB0aGVyZQor Q1JFQVRFIFRBQkxFIHRlbXBvcmFsMyAoCisgIGlkIGludDRyYW5nZSwKKyAgdmFsaWRfZnJvbSBk YXRlLAorICB2YWxpZF90aWwgZGF0ZSwKKyAgUEVSSU9EIEZPUiB2YWxpZF9hdCAodmFsaWRfZnJv bSwgdmFsaWRfdGlsKQorKTsKK0FMVEVSIFRBQkxFIHRlbXBvcmFsMworICBBREQgQ09OU1RSQUlO VCB0ZW1wb3JhbDNfcGsKKyAgUFJJTUFSWSBLRVkgKGlkLCB2YWxpZF9hdCBXSVRIT1VUIE9WRVJM QVBTKTsKK1xkIHRlbXBvcmFsMworRFJPUCBUQUJMRSB0ZW1wb3JhbDM7CisKKy0tIFBSSU1BUlkg S0VZIHdpdGggUEVSSU9EIHRvbworQ1JFQVRFIFRBQkxFIHRlbXBvcmFsMyAoCisgIGlkIGludDRy YW5nZSwKKyAgdmFsaWRfZnJvbSBkYXRlLAorICB2YWxpZF90aWwgZGF0ZQorKTsKK0FMVEVSIFRB QkxFIHRlbXBvcmFsMworICBBREQgUEVSSU9EIEZPUiB2YWxpZF9hdCAodmFsaWRfZnJvbSwgdmFs aWRfdGlsKSwKKyAgQUREIENPTlNUUkFJTlQgdGVtcG9yYWwzX3BrCisgIFBSSU1BUlkgS0VZIChp ZCwgdmFsaWRfYXQgV0lUSE9VVCBPVkVSTEFQUyk7CitcZCB0ZW1wb3JhbDMKK0RST1AgVEFCTEUg dGVtcG9yYWwzOworCistLSBVTklRVUUgd2l0aCBQRVJJT0QgYWxyZWFkeSB0aGVyZQorQ1JFQVRF IFRBQkxFIHRlbXBvcmFsMyAoCisgIGlkIGludDRyYW5nZSwKKyAgdmFsaWRfZnJvbSBkYXRlLAor ICB2YWxpZF90aWwgZGF0ZSwKKyAgUEVSSU9EIEZPUiB2YWxpZF9hdCAodmFsaWRfZnJvbSwgdmFs aWRfdGlsKQorKTsKK0FMVEVSIFRBQkxFIHRlbXBvcmFsMworICBBREQgQ09OU1RSQUlOVCB0ZW1w b3JhbDNfdXEKKyAgVU5JUVVFIChpZCwgdmFsaWRfYXQgV0lUSE9VVCBPVkVSTEFQUyk7CitcZCB0 ZW1wb3JhbDMKK0RST1AgVEFCTEUgdGVtcG9yYWwzOworCistLSBVTklRVUUgd2l0aCBQRVJJT0Qg dG9vCitDUkVBVEUgVEFCTEUgdGVtcG9yYWwzICgKKyAgaWQgaW50NHJhbmdlLAorICB2YWxpZF9m cm9tIGRhdGUsCisgIHZhbGlkX3RpbCBkYXRlCispOworQUxURVIgVEFCTEUgdGVtcG9yYWwzCisg IEFERCBQRVJJT0QgRk9SIHZhbGlkX2F0ICh2YWxpZF9mcm9tLCB2YWxpZF90aWwpLAorICBBREQg Q09OU1RSQUlOVCB0ZW1wb3JhbDNfdXEKKyAgVU5JUVVFIChpZCwgdmFsaWRfYXQgV0lUSE9VVCBP VkVSTEFQUyk7CitcZCB0ZW1wb3JhbDMKK0RST1AgVEFCTEUgdGVtcG9yYWwzOworCiAtLQogLS0g cmFuZ2UgUEs6IHRlc3Qgd2l0aCBleGlzdGluZyByb3dzCiAtLQpAQCAtNjE1LDYgKzcxOSwyMTIg QEAgV0hFUkUgICBpZCA9ICdbMSwyKScgQU5EIHZhbGlkX2F0IElTIE5VTEw7CiBTRUxFQ1QgKiBG Uk9NIHRlbXBvcmFsX21sdHJuZzMgT1JERVIgQlkgaWQsIHZhbGlkX2F0OwogRFJPUCBUQUJMRSB0 ZW1wb3JhbF9tbHRybmczOwogCistLQorLS0gUEVSSU9EIFBLOiB0ZXN0IHdpdGggZXhpc3Rpbmcg cm93cworLS0KKworQUxURVIgVEFCTEUgdGVtcG9yYWxfcGVyIERST1AgQ09OU1RSQUlOVCB0ZW1w b3JhbF9wZXJfcGs7CisKKy0tIG9rYXk6CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIgKGlkLCB2 YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1sxLDIpJywgJzIwMTgtMDEtMDInLCAnMjAx OC0wMi0wMycpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyIChpZCwgdmFsaWRfZnJvbSwgdmFs aWRfdGlsKSBWQUxVRVMgKCdbMSwyKScsICcyMDE4LTAzLTAzJywgJzIwMTgtMDQtMDQnKTsKK0lO U0VSVCBJTlRPIHRlbXBvcmFsX3BlciAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVT ICgnWzIsMyknLCAnMjAxOC0wMS0wMScsICcyMDE4LTAxLTA1Jyk7CitJTlNFUlQgSU5UTyB0ZW1w b3JhbF9wZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1szLDQpJywgJzIw MTgtMDEtMDEnLCBOVUxMKTsKK0FMVEVSIFRBQkxFIHRlbXBvcmFsX3BlciBBREQgQ09OU1RSQUlO VCB0ZW1wb3JhbF9wZXJfcGsgUFJJTUFSWSBLRVkgKGlkLCB2YWxpZF9hdCBXSVRIT1VUIE9WRVJM QVBTKTsKK0FMVEVSIFRBQkxFIHRlbXBvcmFsX3BlciBEUk9QIENPTlNUUkFJTlQgdGVtcG9yYWxf cGVyX3BrOworCistLSBzaG91bGQgZmFpbDoKK0JFR0lOOworICBJTlNFUlQgSU5UTyB0ZW1wb3Jh bF9wZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1sxLDIpJywgJzIwMTgt MDEtMDEnLCAnMjAxOC0wMS0wNScpOworICBBTFRFUiBUQUJMRSB0ZW1wb3JhbF9wZXIgQUREIENP TlNUUkFJTlQgdGVtcG9yYWxfcGVyX3BrIFBSSU1BUlkgS0VZIChpZCwgdmFsaWRfYXQgV0lUSE9V VCBPVkVSTEFQUyk7CitST0xMQkFDSzsKKy0tIHJlamVjdHMgZW1wdHk6CitCRUdJTjsKKyAgQUxU RVIgVEFCTEUgdGVtcG9yYWxfcGVyIERST1AgUEVSSU9EIEZPUiB2YWxpZF9hdDsKKyAgSU5TRVJU IElOVE8gdGVtcG9yYWxfcGVyIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdb Myw0KScsICcyMDIwLTAxLTAxJywgJzIwMjAtMDEtMDEnKTsKKyAgQUxURVIgVEFCTEUgdGVtcG9y YWxfcGVyIEFERCBQRVJJT0QgRk9SIHZhbGlkX2F0ICh2YWxpZF9mcm9tLCB2YWxpZF90aWwpOwor Uk9MTEJBQ0s7CitBTFRFUiBUQUJMRSB0ZW1wb3JhbF9wZXIgQUREIENPTlNUUkFJTlQgdGVtcG9y YWxfcGVyX3BrIFBSSU1BUlkgS0VZIChpZCwgdmFsaWRfYXQgV0lUSE9VVCBPVkVSTEFQUyk7CitE RUxFVEUgRlJPTSB0ZW1wb3JhbF9wZXI7CisKKy0tCistLSBQRVJJT0QgUEs6IHRlc3QgaW5zZXJ0 cworLS0KKworLS0gb2theToKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlciAoaWQsIHZhbGlkX2Zy b20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzEsMiknLCAnMjAxOC0wMS0wMicsICcyMDE4LTAyLTAz Jyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwp IFZBTFVFUyAoJ1sxLDIpJywgJzIwMTgtMDMtMDMnLCAnMjAxOC0wNC0wNCcpOworSU5TRVJUIElO VE8gdGVtcG9yYWxfcGVyIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbMiwz KScsICcyMDE4LTAxLTAxJywgJzIwMTgtMDEtMDUnKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3Bl ciAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzMsNCknLCAnMjAxOC0wMS0w MScsIE5VTEwpOworCistLSBzaG91bGQgZmFpbDoKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlciAo aWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzEsMiknLCAnMjAxOC0wMS0wMScs ICcyMDE4LTAxLTA1Jyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIgKGlkLCB2YWxpZF9mcm9t LCB2YWxpZF90aWwpIFZBTFVFUyAoTlVMTCwgJzIwMTgtMDEtMDEnLCAnMjAxOC0wMS0wNScpOwor LS0gcmVqZWN0cyBlbXB0eToKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlciAoaWQsIHZhbGlkX2Zy b20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzMsNCknLCAnMjAyMC0wMS0wMScsICcyMDIwLTAxLTAx Jyk7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX3BlciBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisK Ky0tCistLSBQRVJJT0QgUEs6IHRlc3QgdXBkYXRlcworLS0KKworLS0gdXBkYXRlIHRoZSBzY2Fs YXIgcGFydAorVVBEQVRFICB0ZW1wb3JhbF9wZXIKK1NFVCAgICAgaWQgPSAnWzExLDEyKScKK1dI RVJFICAgaWQgPSAnWzEsMiknCitBTkQgICAgIHZhbGlkX2F0IEA+ICcyMDE4LTAxLTE1Jzo6ZGF0 ZTsKKy0tIHVwZGF0ZSB0aGUgUEVSSU9EIGJvdW5kcworVVBEQVRFICB0ZW1wb3JhbF9wZXIKK1NF VCAgICAgdmFsaWRfZnJvbSA9ICcyMDIwLTAxLTAxJywKKyAgICAgICAgdmFsaWRfdGlsID0gJzIw MjEtMDEtMDEnCitXSEVSRSAgIGlkID0gJ1sxMSwxMiknCitBTkQgICAgIHZhbGlkX2F0IEA+ICcy MDE4LTAxLTE1Jzo6ZGF0ZTsKKy0tIHVwZGF0ZSBib3RoIGF0IG9uY2UKK1VQREFURSAgdGVtcG9y YWxfcGVyCitTRVQgICAgIGlkID0gJ1syMSwyMiknLAorICAgICAgICB2YWxpZF9mcm9tID0gJzIw MTgtMDEtMDInLAorICAgICAgICB2YWxpZF90aWwgPSAnMjAxOC0wMi0wMycKK1dIRVJFICAgaWQg PSAnWzExLDEyKScKK0FORCAgICAgdmFsaWRfYXQgQD4gJzIwMjAtMDEtMTUnOjpkYXRlOworU0VM RUNUICogRlJPTSB0ZW1wb3JhbF9wZXIgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworLS0gc2hvdWxk IGZhaWw6CitVUERBVEUgIHRlbXBvcmFsX3BlcgorU0VUICAgICBpZCA9ICdbMSwyKScsCisgICAg ICAgIHZhbGlkX2Zyb20gPSAnMjAxOC0wMy0wNScsCisgICAgICAgIHZhbGlkX3RpbCA9ICcyMDE4 LTA1LTA1JworV0hFUkUgICBpZCA9ICdbMjEsMjIpJzsKKy0tIHNldCB0aGUgc2NhbGFyIHBhcnQg dG8gTlVMTAorVVBEQVRFICB0ZW1wb3JhbF9wZXIKK1NFVCAgICAgaWQgPSBOVUxMLAorICAgICAg ICB2YWxpZF9mcm9tID0gJzIwMTgtMDMtMDUnLAorICAgICAgICB2YWxpZF90aWwgPSAnMjAxOC0w NS0wNScKK1dIRVJFICAgaWQgPSAnWzIxLDIyKSc7CistLSBzZXQgYSBQRVJJT0QgYm91bmQgdG8g TlVMTCAob2theSkKK1VQREFURSAgdGVtcG9yYWxfcGVyCitTRVQgICAgIGlkID0gJ1sxLDIpJywK KyAgICAgICAgdmFsaWRfZnJvbSA9ICcyMDE4LTA0LTA0JywKKyAgICAgICAgdmFsaWRfdGlsID0g TlVMTAorV0hFUkUgICBpZCA9ICdbMjEsMjIpJzsKKy0tIHJlamVjdHMgZW1wdHk6CitVUERBVEUg IHRlbXBvcmFsX3BlcgorU0VUICAgICBpZCA9ICdbMjEsMjIpJywKKyAgICAgICAgdmFsaWRfZnJv bSA9ICcyMDIwLTAxLTAxJywKKyAgICAgICAgdmFsaWRfdGlsID0gJzIwMjAtMDEtMDEnCitXSEVS RSAgIGlkID0gJ1sxLDIpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfcGVyIE9SREVSIEJZIGlk LCB2YWxpZF9hdDsKKworLS0KKy0tIFBFUklPRCBVUTogdGVzdCB3aXRoIGV4aXN0aW5nIHJvd3MK Ky0tCisKK0NSRUFURSBUQUJMRSB0ZW1wb3JhbF9wZXIzICgKKyAgaWQgaW50NHJhbmdlLAorICB2 YWxpZF9mcm9tIGRhdGUsCisgIHZhbGlkX3RpbCBkYXRlLAorICBQRVJJT0QgRk9SIHZhbGlkX2F0 ICh2YWxpZF9mcm9tLCB2YWxpZF90aWwpCispOworCistLSBva2F5OgorSU5TRVJUIElOVE8gdGVt cG9yYWxfcGVyMyAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzEsMiknLCAn MjAxOC0wMS0wMicsICcyMDE4LTAyLTAzJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIzIChp ZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbMSwyKScsICcyMDE4LTAzLTAzJywg JzIwMTgtMDQtMDQnKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlcjMgKGlkLCB2YWxpZF9mcm9t LCB2YWxpZF90aWwpIFZBTFVFUyAoJ1syLDMpJywgJzIwMTgtMDEtMDEnLCAnMjAxOC0wMS0wNScp OworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyMyAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkg VkFMVUVTICgnWzMsNCknLCAnMjAxOC0wMS0wMScsIE5VTEwpOworSU5TRVJUIElOVE8gdGVtcG9y YWxfcGVyMyAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTIChOVUxMLCAnMjAxOC0w MS0wMScsICcyMDE4LTAxLTA1Jyk7CitBTFRFUiBUQUJMRSB0ZW1wb3JhbF9wZXIzIEFERCBDT05T VFJBSU5UIHRlbXBvcmFsX3BlcjNfdXEgVU5JUVVFIChpZCwgdmFsaWRfYXQgV0lUSE9VVCBPVkVS TEFQUyk7CitBTFRFUiBUQUJMRSB0ZW1wb3JhbF9wZXIzIERST1AgQ09OU1RSQUlOVCB0ZW1wb3Jh bF9wZXIzX3VxOworCistLSBzaG91bGQgZmFpbDoKK0JFR0lOOworICBJTlNFUlQgSU5UTyB0ZW1w b3JhbF9wZXIzIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbMSwyKScsICcy MDE4LTAxLTAxJywgJzIwMTgtMDEtMDUnKTsKKyAgQUxURVIgVEFCTEUgdGVtcG9yYWxfcGVyMyBB REQgQ09OU1RSQUlOVCB0ZW1wb3JhbF9wZXIzX3VxIFVOSVFVRSAoaWQsIHZhbGlkX2F0IFdJVEhP VVQgT1ZFUkxBUFMpOworUk9MTEJBQ0s7CistLSByZWplY3RzIGVtcHR5OgorQkVHSU47CisgIEFM VEVSIFRBQkxFIHRlbXBvcmFsX3BlcjMgRFJPUCBQRVJJT0QgRk9SIHZhbGlkX2F0OworICBJTlNF UlQgSU5UTyB0ZW1wb3JhbF9wZXIzIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMg KCdbMyw0KScsICcyMDIwLTAxLTAxJywgJzIwMjAtMDEtMDEnKTsKKyAgQUxURVIgVEFCTEUgdGVt cG9yYWxfcGVyMyBBREQgUEVSSU9EIEZPUiB2YWxpZF9hdCAodmFsaWRfZnJvbSwgdmFsaWRfdGls KTsKK1JPTExCQUNLOworQUxURVIgVEFCTEUgdGVtcG9yYWxfcGVyMyBBREQgQ09OU1RSQUlOVCB0 ZW1wb3JhbF9wZXIzX3VxIFVOSVFVRSAoaWQsIHZhbGlkX2F0IFdJVEhPVVQgT1ZFUkxBUFMpOwor REVMRVRFIEZST00gdGVtcG9yYWxfcGVyMzsKKworLS0KKy0tIFBFUklPRCBVUTogdGVzdCBpbnNl cnRzCistLQorCistLSBva2F5OgorSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyMyAoaWQsIHZhbGlk X2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzEsMiknLCAnMjAxOC0wMS0wMicsICcyMDE4LTAy LTAzJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIzIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRf dGlsKSBWQUxVRVMgKCdbMSwyKScsICcyMDE4LTAzLTAzJywgJzIwMTgtMDQtMDQnKTsKK0lOU0VS VCBJTlRPIHRlbXBvcmFsX3BlcjMgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAo J1syLDMpJywgJzIwMTgtMDEtMDEnLCAnMjAxOC0wMS0wNScpOworSU5TRVJUIElOVE8gdGVtcG9y YWxfcGVyMyAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzMsNCknLCAnMjAx OC0wMS0wMScsIE5VTEwpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyMyAoaWQsIHZhbGlkX2Zy b20sIHZhbGlkX3RpbCkgVkFMVUVTIChOVUxMLCAnMjAxOC0wMS0wMScsICcyMDE4LTAxLTA1Jyk7 CisKKy0tIHNob3VsZCBmYWlsOgorSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyMyAoaWQsIHZhbGlk X2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzEsMiknLCAnMjAxOC0wMS0wMScsICcyMDE4LTAx LTA1Jyk7CistLSByZWplY3RzIGVtcHR5OgorSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyMyAoaWQs IHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzMsNCknLCAnMjAyMC0wMS0wMScsICcy MDIwLTAxLTAxJyk7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX3BlcjMgT1JERVIgQlkgaWQsIHZh bGlkX2F0OworCistLQorLS0gUEVSSU9EIFVROiB0ZXN0IHVwZGF0ZXMKKy0tCisKKy0tIHVwZGF0 ZSB0aGUgc2NhbGFyIHBhcnQKK1VQREFURSAgdGVtcG9yYWxfcGVyMworU0VUICAgICBpZCA9ICdb MTEsMTIpJworV0hFUkUgICBpZCA9ICdbMSwyKScKK0FORCAgICAgdmFsaWRfYXQgQD4gJzIwMTgt MDEtMTUnOjpkYXRlOworLS0gdXBkYXRlIHRoZSBQRVJJT0QgYm91bmRzCitVUERBVEUgIHRlbXBv cmFsX3BlcjMKK1NFVCAgICAgdmFsaWRfZnJvbSA9ICcyMDIwLTAxLTAxJywKKyAgICAgICAgdmFs aWRfdGlsID0gJzIwMjEtMDEtMDEnCitXSEVSRSAgIGlkID0gJ1sxMSwxMiknCitBTkQgICAgIHZh bGlkX2F0IEA+ICcyMDE4LTAxLTE1Jzo6ZGF0ZTsKKy0tIHVwZGF0ZSBib3RoIGF0IG9uY2UKK1VQ REFURSAgdGVtcG9yYWxfcGVyMworU0VUICAgICBpZCA9ICdbMjEsMjIpJywKKyAgICAgICAgdmFs aWRfZnJvbSA9ICcyMDE4LTAxLTAyJywKKyAgICAgICAgdmFsaWRfdGlsID0gJzIwMTgtMDItMDMn CitXSEVSRSAgIGlkID0gJ1sxMSwxMiknCitBTkQgICAgIHZhbGlkX2F0IEA+ICcyMDIwLTAxLTE1 Jzo6ZGF0ZTsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfcGVyMyBPUkRFUiBCWSBpZCwgdmFsaWRf YXQ7CistLSBzaG91bGQgZmFpbDoKK1VQREFURSAgdGVtcG9yYWxfcGVyMworU0VUICAgICBpZCA9 ICdbMSwyKScsCisgICAgICAgIHZhbGlkX2Zyb20gPSAnMjAxOC0wMy0wNScsCisgICAgICAgIHZh bGlkX3RpbCA9ICcyMDE4LTA1LTA1JworV0hFUkUgICBpZCA9ICdbMjEsMjIpJzsKKy0tIHNldCB0 aGUgc2NhbGFyIHBhcnQgdG8gTlVMTCAob2theSkKK1VQREFURSAgdGVtcG9yYWxfcGVyMworU0VU ICAgICBpZCA9IE5VTEwsCisgICAgICAgIHZhbGlkX2Zyb20gPSAnMjAyMC0wMS0wMScsCisgICAg ICAgIHZhbGlkX3RpbCA9ICcyMDIxLTAxLTAxJworV0hFUkUgICBpZCA9ICdbMjEsMjIpJzsKKy0t IHNldCBhIFBFUklPRCBib3VuZCB0byBOVUxMIChva2F5KQorVVBEQVRFICB0ZW1wb3JhbF9wZXIz CitTRVQgICAgIGlkID0gJ1sxLDIpJywKKyAgICAgICAgdmFsaWRfZnJvbSA9ICcyMDE4LTA0LTA0 JywKKyAgICAgICAgdmFsaWRfdGlsID0gTlVMTAorV0hFUkUgICBpZCBJUyBOVUxMIEFORCB2YWxp ZF9hdCBAPiAnMjAyMC0wNi0wMSc6OmRhdGU7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX3BlcjMg T1JERVIgQlkgaWQsIHZhbGlkX2F0OworLS0gc2hvdWxkIGZhaWw6CitVUERBVEUgIHRlbXBvcmFs X3BlcjMKK1NFVCAgICAgdmFsaWRfZnJvbSA9ICcyMDE4LTAzLTAxJywKKyAgICAgICAgdmFsaWRf dGlsID0gJzIwMTgtMDUtMDUnCitXSEVSRSAgIGlkID0gJ1sxLDIpJyBBTkQgdmFsaWRfdGlsIElT IE5VTEw7CistLSByZWplY3RzIGVtcHR5OgorVVBEQVRFICB0ZW1wb3JhbF9wZXIzCitTRVQgICAg IHZhbGlkX2Zyb20gPSAnMjAyMC0wMS0wMScsCisgICAgICAgIHZhbGlkX3RpbCA9ICcyMDIwLTAx LTAxJworV0hFUkUgICBpZCA9ICdbMSwyKScgQU5EIHZhbGlkX3RpbCBJUyBOVUxMOworLS0gc3Rp bGwgcmVqZWN0cyBlbXB0eSB3aGVuIHNjYWxhciBwYXJ0IGlzIE5VTEw6CitVUERBVEUgIHRlbXBv cmFsX3BlcjMKK1NFVCAgICAgaWQgPSBOVUxMLAorICAgICAgICB2YWxpZF9mcm9tID0gJzIwMjAt MDEtMDEnLAorICAgICAgICB2YWxpZF90aWwgPSAnMjAyMC0wMS0wMScKK1dIRVJFICAgaWQgPSAn WzEsMiknIEFORCB2YWxpZF90aWwgSVMgTlVMTDsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfcGVy MyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CitEUk9QIFRBQkxFIHRlbXBvcmFsX3BlcjM7CisKIC0t CiAtLSB0ZXN0IGEgcmFuZ2Ugd2l0aCBib3RoIGEgUEsgYW5kIGEgVU5JUVVFIGNvbnN0cmFpbnQK IC0tCkBAIC02NjIsNiArOTcyLDM3IEBAIEFMVEVSIFRBQkxFIHRlbXBvcmFsMyBBTFRFUiBDT0xV TU4gdmFsaWRfYXQgRFJPUCBOT1QgTlVMTDsKIEFMVEVSIFRBQkxFIHRlbXBvcmFsMyBBTFRFUiBD T0xVTU4gdmFsaWRfYXQgVFlQRSB0c3R6cmFuZ2UgVVNJTkcgdHN0enJhbmdlKGxvd2VyKHZhbGlk X2F0KSwgdXBwZXIodmFsaWRfYXQpKTsKIEFMVEVSIFRBQkxFIHRlbXBvcmFsMyBSRU5BTUUgQ09M VU1OIHZhbGlkX2F0IFRPIHZhbGlkX3RocnU7CiBBTFRFUiBUQUJMRSB0ZW1wb3JhbDMgRFJPUCBD T0xVTU4gdmFsaWRfdGhydTsKK1xkIHRlbXBvcmFsMworRFJPUCBUQUJMRSB0ZW1wb3JhbDM7CisK K0NSRUFURSBUQUJMRSB0ZW1wb3JhbDMgKAorICBpZCBpbnQ0cmFuZ2UsCisgIHZhbGlkX2Zyb20g ZGF0ZSwKKyAgdmFsaWRfdGlsIGRhdGUsCisgIFBFUklPRCBGT1IgdmFsaWRfYXQgKHZhbGlkX2Zy b20sIHZhbGlkX3RpbCksCisgIENPTlNUUkFJTlQgdGVtcG9yYWwzX3BrIFBSSU1BUlkgS0VZIChp ZCwgdmFsaWRfYXQgV0lUSE9VVCBPVkVSTEFQUykKKyk7CitcZCB0ZW1wb3JhbDMKK1NFTEVDVCBh dHRub3RudWxsIEZST00gcGdfYXR0cmlidXRlIFdIRVJFIGF0dHJlbGlkID0gJ3RlbXBvcmFsMyc6 OnJlZ2NsYXNzIEFORCBhdHRuYW1lID0gJ3ZhbGlkX2F0JzsKK0FMVEVSIFRBQkxFIHRlbXBvcmFs MyBBTFRFUiBDT0xVTU4gdmFsaWRfYXQgRFJPUCBOT1QgTlVMTDsKK0FMVEVSIFRBQkxFIHRlbXBv cmFsMyBBTFRFUiBDT0xVTU4gdmFsaWRfYXQgVFlQRSB0c3R6cmFuZ2UgVVNJTkcgdHN0enJhbmdl KGxvd2VyKHZhbGlkX2F0KSwgdXBwZXIodmFsaWRfYXQpKTsKK0FMVEVSIFRBQkxFIHRlbXBvcmFs MyBEUk9QIENPTFVNTiB2YWxpZF9hdDsKK0FMVEVSIFRBQkxFIHRlbXBvcmFsMyBEUk9QIFBFUklP RCBGT1IgdmFsaWRfYXQ7CitcZCB0ZW1wb3JhbDMKK0RST1AgVEFCTEUgdGVtcG9yYWwzOworCist LSBTYW1lIHJlc3VsdHMgaWYgd2UgYWRkIHRoZSBQRVJJT0QgYW5kIFBLIGZyb20gQUxURVIgVEFC TEU6CitDUkVBVEUgVEFCTEUgdGVtcG9yYWwzICgKKyAgaWQgaW50NHJhbmdlLAorICB2YWxpZF9m cm9tIGRhdGUsCisgIHZhbGlkX3RpbCBkYXRlCispOworQUxURVIgVEFCTEUgdGVtcG9yYWwzCisg IEFERCBQRVJJT0QgRk9SIHZhbGlkX2F0ICh2YWxpZF9mcm9tLCB2YWxpZF90aWwpLAorICBBREQg Q09OU1RSQUlOVCB0ZW1wb3JhbDNfcGsgUFJJTUFSWSBLRVkgKGlkLCB2YWxpZF9hdCBXSVRIT1VU IE9WRVJMQVBTKTsKK1xkIHRlbXBvcmFsMworU0VMRUNUIGF0dG5vdG51bGwgRlJPTSBwZ19hdHRy aWJ1dGUgV0hFUkUgYXR0cmVsaWQgPSAndGVtcG9yYWwzJzo6cmVnY2xhc3MgQU5EIGF0dG5hbWUg PSAndmFsaWRfYXQnOworQUxURVIgVEFCTEUgdGVtcG9yYWwzIEFMVEVSIENPTFVNTiB2YWxpZF9h dCBEUk9QIE5PVCBOVUxMOwogRFJPUCBUQUJMRSB0ZW1wb3JhbDM7CiAKIC0tCkBAIC05NjMsNiAr MTMwNCwxMjEgQEAgU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9tbHRybmczIE9SREVSIEJZIGlkLCB2 YWxpZF9hdDsKIAogRFJPUCBUQUJMRSB0ZW1wb3JhbF9tbHRybmczOwogCistLQorLS0gT04gQ09O RkxJQ1Q6IFBFUklPRHMKKy0tCisKK1RSVU5DQVRFIHRlbXBvcmFsX3BlcjsKK0lOU0VSVCBJTlRP IHRlbXBvcmFsX3BlciAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzEsMikn LCAnMjAwMC0wMS0wMScsICcyMDEwLTAxLTAxJyk7CistLSB3aXRoIGEgY29uZmxpY3QKK0lOU0VS VCBJTlRPIHRlbXBvcmFsX3BlciAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgn WzEsMiknLCAnMjAwNS0wMS0wMScsICcyMDA2LTAxLTAxJykgT04gQ09ORkxJQ1QgRE8gTk9USElO RzsKKy0tIGlkIG1hdGNoZXMgYnV0IG5vIGNvbmZsaWN0CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9w ZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1sxLDIpJywgJzIwMTAtMDEt MDEnLCAnMjAyMC0wMS0wMScpIE9OIENPTkZMSUNUIERPIE5PVEhJTkc7CistLSBkYXRlIG1hdGNo ZXMgYnV0IG5vIGNvbmZsaWN0CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIgKGlkLCB2YWxpZF9m cm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1syLDMpJywgJzIwMDUtMDEtMDEnLCAnMjAwNi0wMS0w MScpIE9OIENPTkZMSUNUIERPIE5PVEhJTkc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX3BlciBP UkRFUiBCWSBpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsOworCitUUlVOQ0FURSB0ZW1wb3JhbF9w ZXI7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwp IFZBTFVFUyAoJ1sxLDIpJywgJzIwMDAtMDEtMDEnLCAnMjAxMC0wMS0wMScpOworLS0gd2l0aCBh IGNvbmZsaWN0CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxp ZF90aWwpIFZBTFVFUyAoJ1sxLDIpJywgJzIwMDUtMDEtMDEnLCAnMjAwNi0wMS0wMScpIE9OIENP TkZMSUNUIChpZCwgdmFsaWRfYXQpIERPIE5PVEhJTkc7CistLSBpZCBtYXRjaGVzIGJ1dCBubyBj b25mbGljdAorSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRf dGlsKSBWQUxVRVMgKCdbMSwyKScsICcyMDEwLTAxLTAxJywgJzIwMjAtMDEtMDEnKSBPTiBDT05G TElDVCAoaWQsIHZhbGlkX2F0KSBETyBOT1RISU5HOworLS0gZGF0ZSBtYXRjaGVzIGJ1dCBubyBj b25mbGljdAorSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRf dGlsKSBWQUxVRVMgKCdbMiwzKScsICcyMDA1LTAxLTAxJywgJzIwMDYtMDEtMDEnKSBPTiBDT05G TElDVCAoaWQsIHZhbGlkX2F0KSBETyBOT1RISU5HOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9w ZXIgT1JERVIgQlkgaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbDsKKworVFJVTkNBVEUgdGVtcG9y YWxfcGVyOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRf dGlsKSBWQUxVRVMgKCdbMSwyKScsICcyMDAwLTAxLTAxJywgJzIwMTAtMDEtMDEnKTsKKy0tIHdp dGggYSBjb25mbGljdAorSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyIChpZCwgdmFsaWRfZnJvbSwg dmFsaWRfdGlsKSBWQUxVRVMgKCdbMSwyKScsICcyMDA1LTAxLTAxJywgJzIwMDYtMDEtMDEnKSBP TiBDT05GTElDVCBPTiBDT05TVFJBSU5UIHRlbXBvcmFsX3Blcl9wayBETyBOT1RISU5HOworLS0g aWQgbWF0Y2hlcyBidXQgbm8gY29uZmxpY3QKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlciAoaWQs IHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzEsMiknLCAnMjAxMC0wMS0wMScsICcy MDIwLTAxLTAxJykgT04gQ09ORkxJQ1QgT04gQ09OU1RSQUlOVCB0ZW1wb3JhbF9wZXJfcGsgRE8g Tk9USElORzsKKy0tIGRhdGUgbWF0Y2hlcyBidXQgbm8gY29uZmxpY3QKK0lOU0VSVCBJTlRPIHRl bXBvcmFsX3BlciAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzIsMyknLCAn MjAwNS0wMS0wMScsICcyMDA2LTAxLTAxJykgT04gQ09ORkxJQ1QgT04gQ09OU1RSQUlOVCB0ZW1w b3JhbF9wZXJfcGsgRE8gTk9USElORzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfcGVyIE9SREVS IEJZIGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWw7CisKK1RSVU5DQVRFIHRlbXBvcmFsX3BlcjsK K0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlciAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFM VUVTICgnWzEsMiknLCAnMjAwMC0wMS0wMScsICcyMDEwLTAxLTAxJyk7CistLSB3aXRoIGEgY29u ZmxpY3QKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlciAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3Rp bCkgVkFMVUVTICgnWzEsMiknLCAnMjAwNS0wMS0wMScsICcyMDA2LTAxLTAxJykgT04gQ09ORkxJ Q1QgKGlkLCB2YWxpZF9hdCkgRE8gVVBEQVRFIFNFVCBpZCA9IEVYQ0xVREVELmlkICsgJ1syLDMp JzsKKy0tIGlkIG1hdGNoZXMgYnV0IG5vIGNvbmZsaWN0CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9w ZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1sxLDIpJywgJzIwMTAtMDEt MDEnLCAnMjAyMC0wMS0wMScpIE9OIENPTkZMSUNUIChpZCwgdmFsaWRfYXQpIERPIFVQREFURSBT RVQgaWQgPSBFWENMVURFRC5pZCArICdbMyw0KSc7CistLSBkYXRlIG1hdGNoZXMgYnV0IG5vIGNv bmZsaWN0CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90 aWwpIFZBTFVFUyAoJ1syLDMpJywgJzIwMDUtMDEtMDEnLCAnMjAwNi0wMS0wMScpIE9OIENPTkZM SUNUIChpZCwgdmFsaWRfYXQpIERPIFVQREFURSBTRVQgaWQgPSBFWENMVURFRC5pZCArICdbNCw1 KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX3BlciBPUkRFUiBCWSBpZCwgdmFsaWRfZnJvbSwg dmFsaWRfdGlsOworCitUUlVOQ0FURSB0ZW1wb3JhbF9wZXI7CitJTlNFUlQgSU5UTyB0ZW1wb3Jh bF9wZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1sxLDIpJywgJzIwMDAt MDEtMDEnLCAnMjAxMC0wMS0wMScpOworLS0gd2l0aCBhIGNvbmZsaWN0CitJTlNFUlQgSU5UTyB0 ZW1wb3JhbF9wZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1sxLDIpJywg JzIwMDUtMDEtMDEnLCAnMjAwNi0wMS0wMScpIE9OIENPTkZMSUNUIE9OIENPTlNUUkFJTlQgdGVt cG9yYWxfcGVyX3BrIERPIFVQREFURSBTRVQgaWQgPSBFWENMVURFRC5pZCArICdbMiwzKSc7Cist LSBpZCBtYXRjaGVzIGJ1dCBubyBjb25mbGljdAorSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyIChp ZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbMSwyKScsICcyMDEwLTAxLTAxJywg JzIwMjAtMDEtMDEnKSBPTiBDT05GTElDVCBPTiBDT05TVFJBSU5UIHRlbXBvcmFsX3Blcl9wayBE TyBVUERBVEUgU0VUIGlkID0gRVhDTFVERUQuaWQgKyAnWzMsNCknOworLS0gZGF0ZSBtYXRjaGVz IGJ1dCBubyBjb25mbGljdAorSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyIChpZCwgdmFsaWRfZnJv bSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbMiwzKScsICcyMDA1LTAxLTAxJywgJzIwMDYtMDEtMDEn KSBPTiBDT05GTElDVCBPTiBDT05TVFJBSU5UIHRlbXBvcmFsX3Blcl9wayBETyBVUERBVEUgU0VU IGlkID0gRVhDTFVERUQuaWQgKyAnWzQsNSknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9wZXIg T1JERVIgQlkgaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbDsKKworLS0gd2l0aCBhIFVOSVFVRSBj b25zdHJhaW50OgorCitDUkVBVEUgVEFCTEUgdGVtcG9yYWxfcGVyMyAoCisgIGlkIGludDRyYW5n ZSwKKyAgdmFsaWRfZnJvbSBkYXRlLAorICB2YWxpZF90aWwgZGF0ZSwKKyAgUEVSSU9EIEZPUiB2 YWxpZF9hdCAodmFsaWRfZnJvbSwgdmFsaWRfdGlsKSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9w ZXIzX3VxIFVOSVFVRSAoaWQsIHZhbGlkX2F0IFdJVEhPVVQgT1ZFUkxBUFMpCispOworVFJVTkNB VEUgdGVtcG9yYWxfcGVyMzsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlcjMgKGlkLCB2YWxpZF9m cm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1sxLDIpJywgJzIwMDAtMDEtMDEnLCAnMjAxMC0wMS0w MScpOworLS0gd2l0aCBhIGNvbmZsaWN0CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIzIChpZCwg dmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbMSwyKScsICcyMDA1LTAxLTAxJywgJzIw MDYtMDEtMDEnKSBPTiBDT05GTElDVCBETyBOT1RISU5HOworLS0gaWQgbWF0Y2hlcyBidXQgbm8g Y29uZmxpY3QKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlcjMgKGlkLCB2YWxpZF9mcm9tLCB2YWxp ZF90aWwpIFZBTFVFUyAoJ1sxLDIpJywgJzIwMTAtMDEtMDEnLCAnMjAyMC0wMS0wMScpIE9OIENP TkZMSUNUIERPIE5PVEhJTkc7CistLSBkYXRlIG1hdGNoZXMgYnV0IG5vIGNvbmZsaWN0CitJTlNF UlQgSU5UTyB0ZW1wb3JhbF9wZXIzIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMg KCdbMiwzKScsICcyMDA1LTAxLTAxJywgJzIwMDYtMDEtMDEnKSBPTiBDT05GTElDVCBETyBOT1RI SU5HOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9wZXIzIE9SREVSIEJZIGlkLCB2YWxpZF9mcm9t LCB2YWxpZF90aWw7CisKK1RSVU5DQVRFIHRlbXBvcmFsX3BlcjM7CitJTlNFUlQgSU5UTyB0ZW1w b3JhbF9wZXIzIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbMSwyKScsICcy MDAwLTAxLTAxJywgJzIwMTAtMDEtMDEnKTsKKy0tIHdpdGggYSBjb25mbGljdAorSU5TRVJUIElO VE8gdGVtcG9yYWxfcGVyMyAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzEs MiknLCAnMjAwNS0wMS0wMScsICcyMDA2LTAxLTAxJykgT04gQ09ORkxJQ1QgKGlkLCB2YWxpZF9h dCkgRE8gTk9USElORzsKKy0tIGlkIG1hdGNoZXMgYnV0IG5vIGNvbmZsaWN0CitJTlNFUlQgSU5U TyB0ZW1wb3JhbF9wZXIzIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbMSwy KScsICcyMDEwLTAxLTAxJywgJzIwMjAtMDEtMDEnKSBPTiBDT05GTElDVCAoaWQsIHZhbGlkX2F0 KSBETyBOT1RISU5HOworLS0gZGF0ZSBtYXRjaGVzIGJ1dCBubyBjb25mbGljdAorSU5TRVJUIElO VE8gdGVtcG9yYWxfcGVyMyAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzIs MyknLCAnMjAwNS0wMS0wMScsICcyMDA2LTAxLTAxJykgT04gQ09ORkxJQ1QgKGlkLCB2YWxpZF9h dCkgRE8gTk9USElORzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfcGVyMyBPUkRFUiBCWSBpZCwg dmFsaWRfZnJvbSwgdmFsaWRfdGlsOworCitUUlVOQ0FURSB0ZW1wb3JhbF9wZXIzOworSU5TRVJU IElOVE8gdGVtcG9yYWxfcGVyMyAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgn WzEsMiknLCAnMjAwMC0wMS0wMScsICcyMDEwLTAxLTAxJyk7CistLSB3aXRoIGEgY29uZmxpY3QK K0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlcjMgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZB TFVFUyAoJ1sxLDIpJywgJzIwMDUtMDEtMDEnLCAnMjAwNi0wMS0wMScpIE9OIENPTkZMSUNUIE9O IENPTlNUUkFJTlQgdGVtcG9yYWxfcGVyM191cSBETyBOT1RISU5HOworLS0gaWQgbWF0Y2hlcyBi dXQgbm8gY29uZmxpY3QKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlcjMgKGlkLCB2YWxpZF9mcm9t LCB2YWxpZF90aWwpIFZBTFVFUyAoJ1sxLDIpJywgJzIwMTAtMDEtMDEnLCAnMjAyMC0wMS0wMScp IE9OIENPTkZMSUNUIE9OIENPTlNUUkFJTlQgdGVtcG9yYWxfcGVyM191cSBETyBOT1RISU5HOwor LS0gZGF0ZSBtYXRjaGVzIGJ1dCBubyBjb25mbGljdAorSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVy MyAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzIsMyknLCAnMjAwNS0wMS0w MScsICcyMDA2LTAxLTAxJykgT04gQ09ORkxJQ1QgT04gQ09OU1RSQUlOVCB0ZW1wb3JhbF9wZXIz X3VxIERPIE5PVEhJTkc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX3BlcjMgT1JERVIgQlkgaWQs IHZhbGlkX2Zyb20sIHZhbGlkX3RpbDsKKworVFJVTkNBVEUgdGVtcG9yYWxfcGVyMzsKK0lOU0VS VCBJTlRPIHRlbXBvcmFsX3BlcjMgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAo J1sxLDIpJywgJzIwMDAtMDEtMDEnLCAnMjAxMC0wMS0wMScpOworLS0gd2l0aCBhIGNvbmZsaWN0 CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIzIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBW QUxVRVMgKCdbMSwyKScsICcyMDA1LTAxLTAxJywgJzIwMDYtMDEtMDEnKSBPTiBDT05GTElDVCAo aWQsIHZhbGlkX2F0KSBETyBVUERBVEUgU0VUIGlkID0gRVhDTFVERUQuaWQgKyAnWzIsMyknOwor LS0gaWQgbWF0Y2hlcyBidXQgbm8gY29uZmxpY3QKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlcjMg KGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1sxLDIpJywgJzIwMTAtMDEtMDEn LCAnMjAyMC0wMS0wMScpIE9OIENPTkZMSUNUIChpZCwgdmFsaWRfYXQpIERPIFVQREFURSBTRVQg aWQgPSBFWENMVURFRC5pZCArICdbMyw0KSc7CistLSBkYXRlIG1hdGNoZXMgYnV0IG5vIGNvbmZs aWN0CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIzIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGls KSBWQUxVRVMgKCdbMiwzKScsICcyMDA1LTAxLTAxJywgJzIwMDYtMDEtMDEnKSBPTiBDT05GTElD VCAoaWQsIHZhbGlkX2F0KSBETyBVUERBVEUgU0VUIGlkID0gRVhDTFVERUQuaWQgKyAnWzQsNSkn OworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9wZXIzIE9SREVSIEJZIGlkLCB2YWxpZF9mcm9tLCB2 YWxpZF90aWw7CisKK1RSVU5DQVRFIHRlbXBvcmFsX3BlcjM7CitJTlNFUlQgSU5UTyB0ZW1wb3Jh bF9wZXIzIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbMSwyKScsICcyMDAw LTAxLTAxJywgJzIwMTAtMDEtMDEnKTsKKy0tIHdpdGggYSBjb25mbGljdAorSU5TRVJUIElOVE8g dGVtcG9yYWxfcGVyMyAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzEsMikn LCAnMjAwNS0wMS0wMScsICcyMDA2LTAxLTAxJykgT04gQ09ORkxJQ1QgT04gQ09OU1RSQUlOVCB0 ZW1wb3JhbF9wZXIzX3VxIERPIFVQREFURSBTRVQgaWQgPSBFWENMVURFRC5pZCArICdbMiwzKSc7 CistLSBpZCBtYXRjaGVzIGJ1dCBubyBjb25mbGljdAorSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVy MyAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzEsMiknLCAnMjAxMC0wMS0w MScsICcyMDIwLTAxLTAxJykgT04gQ09ORkxJQ1QgT04gQ09OU1RSQUlOVCB0ZW1wb3JhbF9wZXIz X3VxIERPIFVQREFURSBTRVQgaWQgPSBFWENMVURFRC5pZCArICdbMyw0KSc7CistLSBkYXRlIG1h dGNoZXMgYnV0IG5vIGNvbmZsaWN0CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIzIChpZCwgdmFs aWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbMiwzKScsICcyMDA1LTAxLTAxJywgJzIwMDYt MDEtMDEnKSBPTiBDT05GTElDVCBPTiBDT05TVFJBSU5UIHRlbXBvcmFsX3BlcjNfdXEgRE8gVVBE QVRFIFNFVCBpZCA9IEVYQ0xVREVELmlkICsgJ1s0LDUpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9y YWxfcGVyMyBPUkRFUiBCWSBpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsOworCitEUk9QIFRBQkxF IHRlbXBvcmFsX3BlcjM7CisKIC0tCiAtLSB0ZXN0IEZLIGRlcGVuZGVuY2llcwogLS0KQEAgLTk4 Niw2ICsxNDQyLDI5IEBAIEFMVEVSIFRBQkxFIHRlbXBvcmFsMyBEUk9QIENPTFVNTiB2YWxpZF9h dCBDQVNDQURFOwogRFJPUCBUQUJMRSB0ZW1wb3JhbF9ma19ybmcycm5nOwogRFJPUCBUQUJMRSB0 ZW1wb3JhbDM7CiAKKy0tIGNhbid0IGRyb3AgYSBQRVJJT0QgcmVmZXJlbmNlZCBieSBhbiBGSywg dW5sZXNzIHdpdGggQ0FTQ0FERQorQ1JFQVRFIFRBQkxFIHRlbXBvcmFsMyAoCisgIGlkIGludDRy YW5nZSwKKyAgdmFsaWRfZnJvbSBkYXRlLAorICB2YWxpZF90aWwgZGF0ZSwKKyAgUEVSSU9EIEZP UiB2YWxpZF9hdCAodmFsaWRfZnJvbSwgdmFsaWRfdGlsKSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3Jh bDNfcGsgUFJJTUFSWSBLRVkgKGlkLCB2YWxpZF9hdCBXSVRIT1VUIE9WRVJMQVBTKQorKTsKK0NS RUFURSBUQUJMRSB0ZW1wb3JhbF9ma19wZXIycGVyICgKKyAgaWQgaW50NHJhbmdlLAorICB2YWxp ZF9mcm9tIGRhdGUsCisgIHZhbGlkX3RpbCBkYXRlLAorICBwYXJlbnRfaWQgaW50NHJhbmdlLAor ICBQRVJJT0QgRk9SIHZhbGlkX2F0ICh2YWxpZF9mcm9tLCB2YWxpZF90aWwpLAorICBDT05TVFJB SU5UIHRlbXBvcmFsX2ZrX3BlcjJwZXJfcGsgUFJJTUFSWSBLRVkgKGlkLCB2YWxpZF9hdCBXSVRI T1VUIE9WRVJMQVBTKSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19wZXIycGVyX2ZrIEZPUkVJ R04gS0VZIChwYXJlbnRfaWQsIFBFUklPRCB2YWxpZF9hdCkKKyAgICBSRUZFUkVOQ0VTIHRlbXBv cmFsMyAoaWQsIFBFUklPRCB2YWxpZF9hdCkKKyk7CitBTFRFUiBUQUJMRSB0ZW1wb3JhbDMgRFJP UCBQRVJJT0QgRk9SIHZhbGlkX2F0OworQUxURVIgVEFCTEUgdGVtcG9yYWwzIERST1AgUEVSSU9E IEZPUiB2YWxpZF9hdCBDQVNDQURFOworRFJPUCBUQUJMRSB0ZW1wb3JhbF9ma19wZXIycGVyOwor RFJPUCBUQUJMRSB0ZW1wb3JhbDM7CisKIC0tCiAtLSB0ZXN0IEZPUkVJR04gS0VZLCByYW5nZSBy ZWZlcmVuY2VzIHJhbmdlCiAtLQpAQCAtMTAxNiw2ICsxNDk1LDcgQEAgQ1JFQVRFIFRBQkxFIHRl bXBvcmFsX2ZrX3JuZzJybmcgKAogICBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3JuZzJybmdfZmsg Rk9SRUlHTiBLRVkgKHBhcmVudF9pZCwgUEVSSU9EIHZhbGlkX2F0KQogICAgIFJFRkVSRU5DRVMg dGVtcG9yYWxfcm5nIChpZCwgUEVSSU9EIHZhbGlkX2F0KQogKTsKK1xkIHRlbXBvcmFsX2ZrX3Ju ZzJybmcKIERST1AgVEFCTEUgdGVtcG9yYWxfZmtfcm5nMnJuZzsKIAogLS0gd2l0aCBtaXNtYXRj aGVkIFBFUklPRCBjb2x1bW5zOgpAQCAtMjU2Nyw0NyArMzA0NywyNTU1IEBAIElOU0VSVCBJTlRP IHRlbXBvcmFsX2ZrMl9tbHRybmcybWx0cm5nIChpZCwgdmFsaWRfYXQsIHBhcmVudF9pZDEsIHBh cmVudF9pZDIpIFZBCiBERUxFVEUgRlJPTSB0ZW1wb3JhbF9tbHRybmcyIFdIRVJFIGlkMSA9ICdb OCw5KScgQU5EIHZhbGlkX2F0IEA+ICcyMDE5LTAxLTAxJzo6ZGF0ZTsKIFNFTEVDVCAqIEZST00g dGVtcG9yYWxfZmsyX21sdHJuZzJtbHRybmcgV0hFUkUgaWQgPSAnWzIwMCwyMDEpJyBPUkRFUiBC WSBpZCwgdmFsaWRfYXQ7CiAKLS0tIEZLIHdpdGggYSBjdXN0b20gcmFuZ2UgdHlwZQorLS0KKy0t IHRlc3QgRk9SRUlHTiBLRVksIFBFUklPRCByZWZlcmVuY2VzIFBFUklPRAorLS0KIAotQ1JFQVRF IFRZUEUgbXlkYXRlcmFuZ2UgQVMgcmFuZ2Uoc3VidHlwZT1kYXRlKTsKKy0tIHRlc3QgdGFibGUg c2V0dXAKK0RST1AgVEFCTEUgdGVtcG9yYWxfcGVyOworQ1JFQVRFIFRBQkxFIHRlbXBvcmFsX3Bl ciAoCisgIGlkIGludDRyYW5nZSwKKyAgdmFsaWRfZnJvbSBkYXRlLAorICB2YWxpZF90aWwgZGF0 ZSwKKyAgUEVSSU9EIEZPUiB2YWxpZF9hdCAodmFsaWRfZnJvbSwgdmFsaWRfdGlsKQorKTsKK0FM VEVSIFRBQkxFIHRlbXBvcmFsX3BlcgorICBBREQgQ09OU1RSQUlOVCB0ZW1wb3JhbF9wZXJfcGsK KyAgUFJJTUFSWSBLRVkgKGlkLCB2YWxpZF9hdCBXSVRIT1VUIE9WRVJMQVBTKTsKIAotQ1JFQVRF IFRBQkxFIHRlbXBvcmFsX3JuZzMgKAorLS0gQ2FuJ3QgY3JlYXRlIGEgRksgd2l0aCBhIG1pc21h dGNoZWQgcmFuZ2UgdHlwZQorQ1JFQVRFIFRBQkxFIHRlbXBvcmFsX2ZrX3BlcjJwZXIgKAogICBp ZCBpbnQ0cmFuZ2UsCi0gIHZhbGlkX2F0IG15ZGF0ZXJhbmdlLAotICBDT05TVFJBSU5UIHRlbXBv cmFsX3JuZzNfcGsgUFJJTUFSWSBLRVkgKGlkLCB2YWxpZF9hdCBXSVRIT1VUIE9WRVJMQVBTKQor ICB2YWxpZF9mcm9tIGludCwKKyAgdmFsaWRfdGlsIGludCwKKyAgcGFyZW50X2lkIGludDRyYW5n ZSwKKyAgUEVSSU9EIEZPUiB2YWxpZF9hdCAodmFsaWRfZnJvbSwgdmFsaWRfdGlsKSwKKyAgQ09O U1RSQUlOVCB0ZW1wb3JhbF9ma19wZXIycGVyX3BrIFBSSU1BUlkgS0VZIChpZCwgdmFsaWRfYXQg V0lUSE9VVCBPVkVSTEFQUyksCisgIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcGVyMnBlcl9mayBG T1JFSUdOIEtFWSAocGFyZW50X2lkLCBQRVJJT0QgdmFsaWRfYXQpCisgICAgUkVGRVJFTkNFUyB0 ZW1wb3JhbF9wZXIgKGlkLCBQRVJJT0QgdmFsaWRfYXQpCiApOwotQ1JFQVRFIFRBQkxFIHRlbXBv cmFsX2ZrM19ybmcycm5nICgKKworLS0gd29ya3M6IFBFUklPRCBmb3IgYm90aCByZWZlcmVuY2Vk IGFuZCByZWZlcmVuY2luZworQ1JFQVRFIFRBQkxFIHRlbXBvcmFsX2ZrX3BlcjJwZXIgKAogICBp ZCBpbnQ0cmFuZ2UsCi0gIHZhbGlkX2F0IG15ZGF0ZXJhbmdlLAorICB2YWxpZF9mcm9tIGRhdGUs CisgIHZhbGlkX3RpbCBkYXRlLAogICBwYXJlbnRfaWQgaW50NHJhbmdlLAotICBDT05TVFJBSU5U IHRlbXBvcmFsX2ZrM19ybmcycm5nX3BrIFBSSU1BUlkgS0VZIChpZCwgdmFsaWRfYXQgV0lUSE9V VCBPVkVSTEFQUyksCi0gIENPTlNUUkFJTlQgdGVtcG9yYWxfZmszX3JuZzJybmdfZmsgRk9SRUlH TiBLRVkgKHBhcmVudF9pZCwgUEVSSU9EIHZhbGlkX2F0KQotICAgIFJFRkVSRU5DRVMgdGVtcG9y YWxfcm5nMyAoaWQsIFBFUklPRCB2YWxpZF9hdCkgT04gREVMRVRFIENBU0NBREUKKyAgUEVSSU9E IEZPUiB2YWxpZF9hdCAodmFsaWRfZnJvbSwgdmFsaWRfdGlsKSwKKyAgQ09OU1RSQUlOVCB0ZW1w b3JhbF9ma19wZXIycGVyX3BrIFBSSU1BUlkgS0VZIChpZCwgdmFsaWRfYXQgV0lUSE9VVCBPVkVS TEFQUyksCisgIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcGVyMnBlcl9mayBGT1JFSUdOIEtFWSAo cGFyZW50X2lkLCBQRVJJT0QgdmFsaWRfYXQpCisgICAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9wZXIg KGlkLCBQRVJJT0QgdmFsaWRfYXQpCiApOwotSU5TRVJUIElOVE8gdGVtcG9yYWxfcm5nMyAoaWQs IHZhbGlkX2F0KSBWQUxVRVMgKCdbOCw5KScsIG15ZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIw MjEtMDEtMDEnKSk7Ci1JTlNFUlQgSU5UTyB0ZW1wb3JhbF9mazNfcm5nMnJuZyAoaWQsIHZhbGlk X2F0LCBwYXJlbnRfaWQpIFZBTFVFUyAoJ1s1LDYpJywgbXlkYXRlcmFuZ2UoJzIwMTgtMDEtMDEn LCAnMjAyMS0wMS0wMScpLCAnWzgsOSknKTsKLURFTEVURSBGUk9NIHRlbXBvcmFsX3JuZzMgRk9S IFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAxOS0wMS0wMScgVE8gJzIwMjAtMDEtMDEnIFdI RVJFIGlkID0gJ1s4LDkpJzsKLVNFTEVDVCAqIEZST00gdGVtcG9yYWxfZmszX3JuZzJybmcgV0hF UkUgaWQgPSAnWzUsNiknOworXGQgdGVtcG9yYWxfZmtfcGVyMnBlcgogCi1EUk9QIFRBQkxFIHRl bXBvcmFsX2ZrM19ybmcycm5nOwotRFJPUCBUQUJMRSB0ZW1wb3JhbF9ybmczOwotRFJPUCBUWVBF IG15ZGF0ZXJhbmdlOworRFJPUCBUQUJMRSB0ZW1wb3JhbF9ma19wZXIycGVyOwogCi0tLQotLS0g RksgYmV0d2VlbiBwYXJ0aXRpb25lZCB0YWJsZXM6IHJhbmdlcwotLS0KKy0tIHdpdGggbWlzbWF0 Y2hlZCBQRVJJT0QgY29sdW1uczoKIAotQ1JFQVRFIFRBQkxFIHRlbXBvcmFsX3BhcnRpdGlvbmVk X3JuZyAoCistLSAocGFyZW50X2lkLCBQRVJJT0QgdmFsaWRfYXQpIFJFRkVSRU5DRVMgKGlkLCB2 YWxpZF9hdCkKKy0tIFJFRkVSRU5DRVMgcGFydCBzaG91bGQgc3BlY2lmeSBQRVJJT0QKK0NSRUFU RSBUQUJMRSB0ZW1wb3JhbF9ma19wZXIycGVyICgKICAgaWQgaW50NHJhbmdlLAotICB2YWxpZF9h dCBkYXRlcmFuZ2UsCi0gIG5hbWUgdGV4dCwKLSAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9wYXJpdGlv bmVkX3JuZ19wayBQUklNQVJZIEtFWSAoaWQsIHZhbGlkX2F0IFdJVEhPVVQgT1ZFUkxBUFMpCi0p IFBBUlRJVElPTiBCWSBMSVNUIChpZCk7Ci1DUkVBVEUgVEFCTEUgdHAxIFBBUlRJVElPTiBPRiB0 ZW1wb3JhbF9wYXJ0aXRpb25lZF9ybmcgRk9SIFZBTFVFUyBJTiAoJ1sxLDIpJywgJ1szLDQpJywg J1s1LDYpJywgJ1s3LDgpJywgJ1s5LDEwKScsICdbMTEsMTIpJywgJ1sxMywxNCknLCAnWzE1LDE2 KScsICdbMTcsMTgpJywgJ1sxOSwyMCknLCAnWzIxLDIyKScsICdbMjMsMjQpJyk7Ci1DUkVBVEUg VEFCTEUgdHAyIFBBUlRJVElPTiBPRiB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ybmcgRk9SIFZBTFVF UyBJTiAoJ1swLDEpJywgJ1syLDMpJywgJ1s0LDUpJywgJ1s2LDcpJywgJ1s4LDkpJywgJ1sxMCwx MSknLCAnWzEyLDEzKScsICdbMTQsMTUpJywgJ1sxNiwxNyknLCAnWzE4LDE5KScsICdbMjAsMjEp JywgJ1syMiwyMyknLCAnWzI0LDI1KScpOwotSU5TRVJUIElOVE8gdGVtcG9yYWxfcGFydGl0aW9u ZWRfcm5nIChpZCwgdmFsaWRfYXQsIG5hbWUpIFZBTFVFUwotICAoJ1sxLDIpJywgZGF0ZXJhbmdl KCcyMDAwLTAxLTAxJywgJzIwMDAtMDItMDEnKSwgJ29uZScpLAotICAoJ1sxLDIpJywgZGF0ZXJh bmdlKCcyMDAwLTAyLTAxJywgJzIwMDAtMDMtMDEnKSwgJ29uZScpLAorICB2YWxpZF9mcm9tIGRh dGUsCisgIHZhbGlkX3RpbCBkYXRlLAorICBwYXJlbnRfaWQgaW50NHJhbmdlLAorICBQRVJJT0Qg Rk9SIHZhbGlkX2F0ICh2YWxpZF9mcm9tLCB2YWxpZF90aWwpLAorICBDT05TVFJBSU5UIHRlbXBv cmFsX2ZrX3BlcjJwZXJfcGsgUFJJTUFSWSBLRVkgKGlkLCB2YWxpZF9hdCBXSVRIT1VUIE9WRVJM QVBTKSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19wZXIycGVyX2ZrIEZPUkVJR04gS0VZIChw YXJlbnRfaWQsIFBFUklPRCB2YWxpZF9hdCkKKyAgICBSRUZFUkVOQ0VTIHRlbXBvcmFsX3BlciAo aWQsIHZhbGlkX2F0KQorKTsKKy0tIChwYXJlbnRfaWQsIHZhbGlkX2F0KSBSRUZFUkVOQ0VTIChp ZCwgdmFsaWRfYXQpCistLSBib3RoIHNob3VsZCBzcGVjaWZ5IFBFUklPRDoKK0NSRUFURSBUQUJM RSB0ZW1wb3JhbF9ma19wZXIycGVyICgKKyAgaWQgaW50NHJhbmdlLAorICB2YWxpZF9mcm9tIGRh dGUsCisgIHZhbGlkX3RpbCBkYXRlLAorICBwYXJlbnRfaWQgaW50NHJhbmdlLAorICBQRVJJT0Qg Rk9SIHZhbGlkX2F0ICh2YWxpZF9mcm9tLCB2YWxpZF90aWwpLAorICBDT05TVFJBSU5UIHRlbXBv cmFsX2ZrX3BlcjJwZXJfcGsgUFJJTUFSWSBLRVkgKGlkLCB2YWxpZF9hdCBXSVRIT1VUIE9WRVJM QVBTKSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19wZXIycGVyX2ZrIEZPUkVJR04gS0VZIChw YXJlbnRfaWQsIHZhbGlkX2F0KQorICAgIFJFRkVSRU5DRVMgdGVtcG9yYWxfcGVyIChpZCwgdmFs aWRfYXQpCispOworLS0gKHBhcmVudF9pZCwgdmFsaWRfYXQpIFJFRkVSRU5DRVMgKGlkLCBQRVJJ T0QgdmFsaWRfYXQpCistLSBGT1JFSUdOIEtFWSBwYXJ0IHNob3VsZCBzcGVjaWZ5IFBFUklPRAor Q1JFQVRFIFRBQkxFIHRlbXBvcmFsX2ZrX3BlcjJwZXIgKAorICBpZCBpbnQ0cmFuZ2UsCisgIHZh bGlkX2Zyb20gZGF0ZSwKKyAgdmFsaWRfdGlsIGRhdGUsCisgIHBhcmVudF9pZCBpbnQ0cmFuZ2Us CisgIFBFUklPRCBGT1IgdmFsaWRfYXQgKHZhbGlkX2Zyb20sIHZhbGlkX3RpbCksCisgIENPTlNU UkFJTlQgdGVtcG9yYWxfZmtfcGVyMnBlcl9wayBQUklNQVJZIEtFWSAoaWQsIHZhbGlkX2F0IFdJ VEhPVVQgT1ZFUkxBUFMpLAorICBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3BlcjJwZXJfZmsgRk9S RUlHTiBLRVkgKHBhcmVudF9pZCwgdmFsaWRfYXQpCisgICAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9w ZXIgKGlkLCBQRVJJT0QgdmFsaWRfYXQpCispOworLS0gKHBhcmVudF9pZCwgdmFsaWRfYXQpIFJF RkVSRU5DRVMgW2ltcGxpY2l0XQorLS0gRk9SRUlHTiBLRVkgcGFydCBzaG91bGQgc3BlY2lmeSBQ RVJJT0QKK0NSRUFURSBUQUJMRSB0ZW1wb3JhbF9ma19wZXIycGVyICgKKyAgaWQgaW50NHJhbmdl LAorICB2YWxpZF9mcm9tIGRhdGUsCisgIHZhbGlkX3RpbCBkYXRlLAorICBwYXJlbnRfaWQgaW50 NHJhbmdlLAorICBQRVJJT0QgRk9SIHZhbGlkX2F0ICh2YWxpZF9mcm9tLCB2YWxpZF90aWwpLAor ICBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3BlcjJwZXJfcGsgUFJJTUFSWSBLRVkgKGlkLCB2YWxp ZF9hdCBXSVRIT1VUIE9WRVJMQVBTKSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19wZXIycGVy X2ZrIEZPUkVJR04gS0VZIChwYXJlbnRfaWQsIHZhbGlkX2F0KQorICAgIFJFRkVSRU5DRVMgdGVt cG9yYWxfcGVyCispOworLS0gKHBhcmVudF9pZCwgUEVSSU9EIHZhbGlkX2F0KSBSRUZFUkVOQ0VT IChpZCkKK0NSRUFURSBUQUJMRSB0ZW1wb3JhbF9ma19wZXIycGVyICgKKyAgaWQgaW50NHJhbmdl LAorICB2YWxpZF9mcm9tIGRhdGUsCisgIHZhbGlkX3RpbCBkYXRlLAorICBwYXJlbnRfaWQgaW50 NHJhbmdlLAorICBQRVJJT0QgRk9SIHZhbGlkX2F0ICh2YWxpZF9mcm9tLCB2YWxpZF90aWwpLAor ICBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3BlcjJwZXJfcGsgUFJJTUFSWSBLRVkgKGlkLCB2YWxp ZF9hdCBXSVRIT1VUIE9WRVJMQVBTKSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19wZXIycGVy X2ZrIEZPUkVJR04gS0VZIChwYXJlbnRfaWQsIFBFUklPRCB2YWxpZF9hdCkKKyAgICBSRUZFUkVO Q0VTIHRlbXBvcmFsX3BlciAoaWQpCispOworLS0gKHBhcmVudF9pZCkgUkVGRVJFTkNFUyAoaWQs IFBFUklPRCB2YWxpZF9hdCkKK0NSRUFURSBUQUJMRSB0ZW1wb3JhbF9ma19wZXIycGVyICgKKyAg aWQgaW50NHJhbmdlLAorICB2YWxpZF9mcm9tIGRhdGUsCisgIHZhbGlkX3RpbCBkYXRlLAorICBw YXJlbnRfaWQgaW50NHJhbmdlLAorICBQRVJJT0QgRk9SIHZhbGlkX2F0ICh2YWxpZF9mcm9tLCB2 YWxpZF90aWwpLAorICBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3BlcjJwZXJfcGsgUFJJTUFSWSBL RVkgKGlkLCB2YWxpZF9hdCBXSVRIT1VUIE9WRVJMQVBTKSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3Jh bF9ma19wZXIycGVyX2ZrIEZPUkVJR04gS0VZIChwYXJlbnRfaWQpCisgICAgUkVGRVJFTkNFUyB0 ZW1wb3JhbF9wZXIgKGlkLCBQRVJJT0QgdmFsaWRfYXQpCispOworLS0gd2l0aCBpbmZlcnJlZCBQ SyBvbiB0aGUgcmVmZXJlbmNlZCB0YWJsZToKKy0tIChwYXJlbnRfaWQsIFBFUklPRCB2YWxpZF9h dCkgUkVGRVJFTkNFUyBbaW1wbGljaXRdCitDUkVBVEUgVEFCTEUgdGVtcG9yYWxfZmtfcGVyMnBl ciAoCisgIGlkIGludDRyYW5nZSwKKyAgdmFsaWRfZnJvbSBkYXRlLAorICB2YWxpZF90aWwgZGF0 ZSwKKyAgcGFyZW50X2lkIGludDRyYW5nZSwKKyAgUEVSSU9EIEZPUiB2YWxpZF9hdCAodmFsaWRf ZnJvbSwgdmFsaWRfdGlsKSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19wZXIycGVyX3BrIFBS SU1BUlkgS0VZIChpZCwgdmFsaWRfYXQgV0lUSE9VVCBPVkVSTEFQUyksCisgIENPTlNUUkFJTlQg dGVtcG9yYWxfZmtfcGVyMnBlcl9mayBGT1JFSUdOIEtFWSAocGFyZW50X2lkLCBQRVJJT0QgdmFs aWRfYXQpCisgICAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9wZXIKKyk7CitEUk9QIFRBQkxFIHRlbXBv cmFsX2ZrX3BlcjJwZXI7CistLSAocGFyZW50X2lkKSBSRUZFUkVOQ0VTIFtpbXBsaWNpdF0KK0NS RUFURSBUQUJMRSB0ZW1wb3JhbF9ma19wZXIycGVyICgKKyAgaWQgaW50NHJhbmdlLAorICB2YWxp ZF9mcm9tIGRhdGUsCisgIHZhbGlkX3RpbCBkYXRlLAorICBwYXJlbnRfaWQgaW50NHJhbmdlLAor ICBQRVJJT0QgRk9SIHZhbGlkX2F0ICh2YWxpZF9mcm9tLCB2YWxpZF90aWwpLAorICBDT05TVFJB SU5UIHRlbXBvcmFsX2ZrX3BlcjJwZXJfcGsgUFJJTUFSWSBLRVkgKGlkLCB2YWxpZF9hdCBXSVRI T1VUIE9WRVJMQVBTKSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19wZXIycGVyX2ZrIEZPUkVJ R04gS0VZIChwYXJlbnRfaWQpCisgICAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9wZXIKKyk7CisKKy0t IHNob3VsZCBmYWlsIGJlY2F1c2Ugb2YgZHVwbGljYXRlIHJlZmVyZW5jZWQgY29sdW1uczoKK0NS RUFURSBUQUJMRSB0ZW1wb3JhbF9ma19wZXIycGVyICgKKyAgaWQgaW50NHJhbmdlLAorICB2YWxp ZF9mcm9tIGRhdGUsCisgIHZhbGlkX3RpbCBkYXRlLAorICBwYXJlbnRfaWQgaW50NHJhbmdlLAor ICBQRVJJT0QgRk9SIHZhbGlkX2F0ICh2YWxpZF9mcm9tLCB2YWxpZF90aWwpLAorICBDT05TVFJB SU5UIHRlbXBvcmFsX2ZrX3BlcjJwZXJfcGsgUFJJTUFSWSBLRVkgKGlkLCB2YWxpZF9hdCBXSVRI T1VUIE9WRVJMQVBTKSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19wZXIycGVyX2ZrIEZPUkVJ R04gS0VZIChwYXJlbnRfaWQsIFBFUklPRCBwYXJlbnRfaWQpCisgICAgUkVGRVJFTkNFUyB0ZW1w b3JhbF9wZXIgKGlkLCBQRVJJT0QgaWQpCispOworCistLSBUd28gc2NhbGFyIGNvbHVtbnMKK0RS T1AgVEFCTEUgdGVtcG9yYWxfcGVyMjsKK0NSRUFURSBUQUJMRSB0ZW1wb3JhbF9wZXIyICgKKyAg aWQxIGludDRyYW5nZSwKKyAgaWQyIGludDRyYW5nZSwKKyAgdmFsaWRfZnJvbSBkYXRlLAorICB2 YWxpZF90aWwgZGF0ZSwKKyAgUEVSSU9EIEZPUiB2YWxpZF9hdCAodmFsaWRfZnJvbSwgdmFsaWRf dGlsKSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9wZXIyX3BrIFBSSU1BUlkgS0VZIChpZDEsIGlk MiwgdmFsaWRfYXQgV0lUSE9VVCBPVkVSTEFQUykKKyk7CisKK0NSRUFURSBUQUJMRSB0ZW1wb3Jh bF9mazJfcGVyMnBlciAoCisgIGlkIGludDRyYW5nZSwKKyAgdmFsaWRfZnJvbSBkYXRlLAorICB2 YWxpZF90aWwgZGF0ZSwKKyAgcGFyZW50X2lkMSBpbnQ0cmFuZ2UsCisgIHBhcmVudF9pZDIgaW50 NHJhbmdlLAorICBQRVJJT0QgRk9SIHZhbGlkX2F0ICh2YWxpZF9mcm9tLCB2YWxpZF90aWwpLAor ICBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrMl9wZXIycGVyX3BrIFBSSU1BUlkgS0VZIChpZCwgdmFs aWRfYXQgV0lUSE9VVCBPVkVSTEFQUyksCisgIENPTlNUUkFJTlQgdGVtcG9yYWxfZmsyX3BlcjJw ZXJfZmsgRk9SRUlHTiBLRVkgKHBhcmVudF9pZDEsIHBhcmVudF9pZDIsIFBFUklPRCB2YWxpZF9h dCkKKyAgICBSRUZFUkVOQ0VTIHRlbXBvcmFsX3BlcjIgKGlkMSwgaWQyLCBQRVJJT0QgdmFsaWRf YXQpCispOworXGQgdGVtcG9yYWxfZmsyX3BlcjJwZXIKK0RST1AgVEFCTEUgdGVtcG9yYWxfZmsy X3BlcjJwZXI7CisKKy0tCistLSB0ZXN0IEFMVEVSIFRBQkxFIEFERCBDT05TVFJBSU5UCistLQor CitDUkVBVEUgVEFCTEUgdGVtcG9yYWxfZmtfcGVyMnBlciAoCisgIGlkIGludDRyYW5nZSwKKyAg dmFsaWRfZnJvbSBkYXRlLAorICB2YWxpZF90aWwgZGF0ZSwKKyAgcGFyZW50X2lkIGludDRyYW5n ZSwKKyAgUEVSSU9EIEZPUiB2YWxpZF9hdCAodmFsaWRfZnJvbSwgdmFsaWRfdGlsKSwKKyAgQ09O U1RSQUlOVCB0ZW1wb3JhbF9ma19wZXIycGVyX3BrIFBSSU1BUlkgS0VZIChpZCwgdmFsaWRfYXQg V0lUSE9VVCBPVkVSTEFQUykKKyk7CitBTFRFUiBUQUJMRSB0ZW1wb3JhbF9ma19wZXIycGVyCisg IEFERCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3BlcjJwZXJfZmsKKyAgRk9SRUlHTiBLRVkgKHBh cmVudF9pZCwgUEVSSU9EIHZhbGlkX2F0KQorICBSRUZFUkVOQ0VTIHRlbXBvcmFsX3BlciAoaWQs IFBFUklPRCB2YWxpZF9hdCk7CistLSBUd28gc2NhbGFyIGNvbHVtbnM6CitDUkVBVEUgVEFCTEUg dGVtcG9yYWxfZmsyX3BlcjJwZXIgKAorICBpZCBpbnQ0cmFuZ2UsCisgIHZhbGlkX2Zyb20gZGF0 ZSwKKyAgdmFsaWRfdGlsIGRhdGUsCisgIHBhcmVudF9pZDEgaW50NHJhbmdlLAorICBwYXJlbnRf aWQyIGludDRyYW5nZSwKKyAgUEVSSU9EIEZPUiB2YWxpZF9hdCAodmFsaWRfZnJvbSwgdmFsaWRf dGlsKSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9mazJfcGVyMnBlcl9wayBQUklNQVJZIEtFWSAo aWQsIHZhbGlkX2F0IFdJVEhPVVQgT1ZFUkxBUFMpCispOworQUxURVIgVEFCTEUgdGVtcG9yYWxf ZmsyX3BlcjJwZXIKKyAgQUREIENPTlNUUkFJTlQgdGVtcG9yYWxfZmsyX3BlcjJwZXJfZmsKKyAg Rk9SRUlHTiBLRVkgKHBhcmVudF9pZDEsIHBhcmVudF9pZDIsIFBFUklPRCB2YWxpZF9hdCkKKyAg UkVGRVJFTkNFUyB0ZW1wb3JhbF9wZXIyIChpZDEsIGlkMiwgUEVSSU9EIHZhbGlkX2F0KTsKK1xk IHRlbXBvcmFsX2ZrMl9wZXIycGVyCisKKy0tIHdpdGggaW5mZXJyZWQgUEsgb24gdGhlIHJlZmVy ZW5jZWQgdGFibGUsIGFuZCB3cm9uZyBjb2x1bW4gdHlwZToKK0FMVEVSIFRBQkxFIHRlbXBvcmFs X2ZrX3BlcjJwZXIKKyAgRFJPUCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3BlcjJwZXJfZmssCisg IERST1AgUEVSSU9EIEZPUiB2YWxpZF9hdCwKKyAgQUxURVIgQ09MVU1OIHZhbGlkX2Zyb20gVFlQ RSB0aW1lc3RhbXAsCisgIEFMVEVSIENPTFVNTiB2YWxpZF90aWwgVFlQRSB0aW1lc3RhbXAsCisg IEFERCBQRVJJT0QgRk9SIHZhbGlkX2F0ICh2YWxpZF9mcm9tLCB2YWxpZF90aWwpOworQUxURVIg VEFCTEUgdGVtcG9yYWxfZmtfcGVyMnBlcgorICBBREQgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19w ZXIycGVyX2ZrCisgIEZPUkVJR04gS0VZIChwYXJlbnRfaWQsIFBFUklPRCB2YWxpZF9hdCkKKyAg UkVGRVJFTkNFUyB0ZW1wb3JhbF9wZXI7CitBTFRFUiBUQUJMRSB0ZW1wb3JhbF9ma19wZXIycGVy CisgIERST1AgUEVSSU9EIEZPUiB2YWxpZF9hdCwKKyAgQUxURVIgQ09MVU1OIHZhbGlkX2Zyb20g VFlQRSBkYXRlLAorICBBTFRFUiBDT0xVTU4gdmFsaWRfdGlsIFRZUEUgZGF0ZSwKKyAgQUREIFBF UklPRCBGT1IgdmFsaWRfYXQgKHZhbGlkX2Zyb20sIHZhbGlkX3RpbCk7CisKKy0tIHdpdGggaW5m ZXJyZWQgUEsgb24gdGhlIHJlZmVyZW5jZWQgdGFibGU6CitBTFRFUiBUQUJMRSB0ZW1wb3JhbF9m a19wZXIycGVyCisgIEFERCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3BlcjJwZXJfZmsKKyAgRk9S RUlHTiBLRVkgKHBhcmVudF9pZCwgUEVSSU9EIHZhbGlkX2F0KQorICBSRUZFUkVOQ0VTIHRlbXBv cmFsX3BlcjsKKworLS0gc2hvdWxkIGZhaWwgYmVjYXVzZSBvZiBkdXBsaWNhdGUgcmVmZXJlbmNl ZCBjb2x1bW5zOgorQUxURVIgVEFCTEUgdGVtcG9yYWxfZmtfcGVyMnBlcgorICBBREQgQ09OU1RS QUlOVCB0ZW1wb3JhbF9ma19wZXIycGVyX2ZrMgorICBGT1JFSUdOIEtFWSAocGFyZW50X2lkLCBQ RVJJT0QgcGFyZW50X2lkKQorICBSRUZFUkVOQ0VTIHRlbXBvcmFsX3BlciAoaWQsIFBFUklPRCBp ZCk7CisKKy0tCistLSB0ZXN0IHdpdGggcm93cyBhbHJlYWR5CistLQorCitERUxFVEUgRlJPTSB0 ZW1wb3JhbF9ma19wZXIycGVyOworREVMRVRFIEZST00gdGVtcG9yYWxfcGVyOworSU5TRVJUIElO VE8gdGVtcG9yYWxfcGVyIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMKKyAgKCdb MSwyKScsICcyMDE4LTAxLTAyJywgJzIwMTgtMDItMDMnKSwKKyAgKCdbMSwyKScsICcyMDE4LTAz LTAzJywgJzIwMTgtMDQtMDQnKSwKKyAgKCdbMiwzKScsICcyMDE4LTAxLTAxJywgJzIwMTgtMDEt MDUnKSwKKyAgKCdbMyw0KScsICcyMDE4LTAxLTAxJywgTlVMTCk7CisKK0FMVEVSIFRBQkxFIHRl bXBvcmFsX2ZrX3BlcjJwZXIKKyAgRFJPUCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3BlcjJwZXJf Zms7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ma19wZXIycGVyIChpZCwgdmFsaWRfZnJvbSwgdmFs aWRfdGlsLCBwYXJlbnRfaWQpIFZBTFVFUyAoJ1sxLDIpJywgJzIwMTgtMDEtMDInLCAnMjAxOC0w Mi0wMScsICdbMSwyKScpOworQUxURVIgVEFCTEUgdGVtcG9yYWxfZmtfcGVyMnBlcgorICBBREQg Q09OU1RSQUlOVCB0ZW1wb3JhbF9ma19wZXIycGVyX2ZrCisgIEZPUkVJR04gS0VZIChwYXJlbnRf aWQsIFBFUklPRCB2YWxpZF9hdCkKKyAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9wZXI7CitBTFRFUiBU QUJMRSB0ZW1wb3JhbF9ma19wZXIycGVyCisgIERST1AgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19w ZXIycGVyX2ZrOworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmtfcGVyMnBlciAoaWQsIHZhbGlkX2Zy b20sIHZhbGlkX3RpbCwgcGFyZW50X2lkKSBWQUxVRVMgKCdbMiwzKScsICcyMDE4LTAxLTAyJywg JzIwMTgtMDQtMDEnLCAnWzEsMiknKTsKKy0tIHNob3VsZCBmYWlsOgorQUxURVIgVEFCTEUgdGVt cG9yYWxfZmtfcGVyMnBlcgorICBBREQgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19wZXIycGVyX2Zr CisgIEZPUkVJR04gS0VZIChwYXJlbnRfaWQsIFBFUklPRCB2YWxpZF9hdCkKKyAgUkVGRVJFTkNF UyB0ZW1wb3JhbF9wZXI7CistLSBva2F5IGFnYWluOgorREVMRVRFIEZST00gdGVtcG9yYWxfZmtf cGVyMnBlcjsKK0FMVEVSIFRBQkxFIHRlbXBvcmFsX2ZrX3BlcjJwZXIKKyAgQUREIENPTlNUUkFJ TlQgdGVtcG9yYWxfZmtfcGVyMnBlcl9maworICBGT1JFSUdOIEtFWSAocGFyZW50X2lkLCBQRVJJ T0QgdmFsaWRfYXQpCisgIFJFRkVSRU5DRVMgdGVtcG9yYWxfcGVyOworCistLQorLS0gdGVzdCBw Z19nZXRfY29uc3RyYWludGRlZgorLS0KKworU0VMRUNUIHBnX2dldF9jb25zdHJhaW50ZGVmKG9p ZCkgRlJPTSBwZ19jb25zdHJhaW50IFdIRVJFIGNvbm5hbWUgPSAndGVtcG9yYWxfZmtfcGVyMnBl cl9mayc7CisKKy0tCistLSB0ZXN0IEZLIHJlZmVyZW5jaW5nIGluc2VydHMKKy0tCisKK0lOU0VS VCBJTlRPIHRlbXBvcmFsX2ZrX3BlcjJwZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwsIHBh cmVudF9pZCkgVkFMVUVTICgnWzEsMiknLCAnMjAxOC0wMS0wMicsICcyMDE4LTAyLTAxJywgJ1sx LDIpJyk7CistLSBzaG91bGQgZmFpbDoKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrX3BlcjJwZXIg KGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwsIHBhcmVudF9pZCkgVkFMVUVTICgnWzIsMyknLCAn MjAxOC0wMS0wMicsICcyMDE4LTA0LTAxJywgJ1sxLDIpJyk7CistLSBub3cgaXQgc2hvdWxkIHdv cms6CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwp IFZBTFVFUyAoJ1sxLDIpJywgJzIwMTgtMDItMDMnLCAnMjAxOC0wMy0wMycpOworSU5TRVJUIElO VE8gdGVtcG9yYWxfZmtfcGVyMnBlciAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCwgcGFyZW50 X2lkKSBWQUxVRVMgKCdbMiwzKScsICcyMDE4LTAxLTAyJywgJzIwMTgtMDQtMDEnLCAnWzEsMikn KTsKKworLS0KKy0tIHRlc3QgRksgcmVmZXJlbmNpbmcgdXBkYXRlcworLS0KKworLS0gc2xpZGUg dGhlIGVkZ2UgYWNyb3NzIGEgcmVmZXJlbmNlZCB0cmFuc2l0aW9uOgorVVBEQVRFIHRlbXBvcmFs X2ZrX3BlcjJwZXIgU0VUIHZhbGlkX2Zyb20gPSAnMjAxOC0wMS0wMicsIHZhbGlkX3RpbCA9ICcy MDE4LTAyLTIwJyBXSEVSRSBpZCA9ICdbMSwyKSc7CistLSBzaG91bGQgZmFpbDoKK1VQREFURSB0 ZW1wb3JhbF9ma19wZXIycGVyIFNFVCB2YWxpZF9mcm9tID0gJzIwMTgtMDEtMDInLCB2YWxpZF90 aWwgPSAnMjAxOC0wNS0wMScgV0hFUkUgaWQgPSAnWzEsMiknOworVVBEQVRFIHRlbXBvcmFsX2Zr X3BlcjJwZXIgU0VUIHBhcmVudF9pZCA9ICdbOCw5KScgV0hFUkUgaWQgPSAnWzEsMiknOworCist LSBBTFRFUiBGSyBERUZFUlJBQkxFCisKK0JFR0lOOworICBJTlNFUlQgSU5UTyB0ZW1wb3JhbF9w ZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUworICAgICgnWzUsNiknLCAnMjAx OC0wMS0wMScsICcyMDE4LTAyLTAxJyksCisgICAgKCdbNSw2KScsICcyMDE4LTAyLTAxJywgJzIw MTgtMDMtMDEnKTsKKyAgSU5TRVJUIElOVE8gdGVtcG9yYWxfZmtfcGVyMnBlciAoaWQsIHZhbGlk X2Zyb20sIHZhbGlkX3RpbCwgcGFyZW50X2lkKSBWQUxVRVMKKyAgICAoJ1szLDQpJywgJzIwMTgt MDEtMDUnLCAnMjAxOC0wMS0xMCcsICdbNSw2KScpOworICBBTFRFUiBUQUJMRSB0ZW1wb3JhbF9m a19wZXIycGVyCisgICAgQUxURVIgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19wZXIycGVyX2ZrCisg ICAgREVGRVJSQUJMRSBJTklUSUFMTFkgREVGRVJSRUQ7CisKKyAgREVMRVRFIEZST00gdGVtcG9y YWxfcGVyIFdIRVJFIGlkID0gJ1s1LDYpJzsgLS1zaG91bGQgbm90IGZhaWwgeWV0LgorQ09NTUlU OyAtLSBzaG91bGQgZmFpbCBoZXJlLgorCistLQorLS0gdGVzdCBGSyByZWZlcmVuY2VkIHVwZGF0 ZXMgTk8gQUNUSU9OCistLQorCitUUlVOQ0FURSB0ZW1wb3JhbF9wZXIsIHRlbXBvcmFsX2ZrX3Bl cjJwZXI7CitBTFRFUiBUQUJMRSB0ZW1wb3JhbF9ma19wZXIycGVyCisgIERST1AgQ09OU1RSQUlO VCB0ZW1wb3JhbF9ma19wZXIycGVyX2ZrOworQUxURVIgVEFCTEUgdGVtcG9yYWxfZmtfcGVyMnBl cgorICBBREQgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19wZXIycGVyX2ZrCisgIEZPUkVJR04gS0VZ IChwYXJlbnRfaWQsIFBFUklPRCB2YWxpZF9hdCkKKyAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9wZXIK KyAgT04gVVBEQVRFIE5PIEFDVElPTjsKKy0tIGEgUEsgdXBkYXRlIHRoYXQgc3VjY2VlZHMgYmVj YXVzZSB0aGUgbnVtZXJpYyBpZCBpc24ndCByZWZlcmVuY2VkOgorSU5TRVJUIElOVE8gdGVtcG9y YWxfcGVyIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbNSw2KScsICcyMDE4 LTAxLTAxJywgJzIwMTgtMDItMDEnKTsKK1VQREFURSB0ZW1wb3JhbF9wZXIgU0VUIHZhbGlkX2Zy b20gPSAnMjAxNi0wMS0wMScsIHZhbGlkX3RpbCA9ICcyMDE2LTAyLTAxJyBXSEVSRSBpZCA9ICdb NSw2KSc7CistLSBhIFBLIHVwZGF0ZSB0aGF0IHN1Y2NlZWRzIGV2ZW4gdGhvdWdoIHRoZSBudW1l cmljIGlkIGlzIHJlZmVyZW5jZWQgYmVjYXVzZSB0aGUgcmFuZ2UgaXNuJ3Q6CitERUxFVEUgRlJP TSB0ZW1wb3JhbF9wZXIgV0hFUkUgaWQgPSAnWzUsNiknOworSU5TRVJUIElOVE8gdGVtcG9yYWxf cGVyIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMKKyAgKCdbNSw2KScsICcyMDE4 LTAxLTAxJywgJzIwMTgtMDItMDEnKSwKKyAgKCdbNSw2KScsICcyMDE4LTAyLTAxJywgJzIwMTgt MDMtMDEnKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrX3BlcjJwZXIgKGlkLCB2YWxpZF9mcm9t LCB2YWxpZF90aWwsIHBhcmVudF9pZCkgVkFMVUVTCisgICgnWzMsNCknLCAnMjAxOC0wMS0wNScs ICcyMDE4LTAxLTEwJywgJ1s1LDYpJyk7CitVUERBVEUgdGVtcG9yYWxfcGVyIFNFVCB2YWxpZF9m cm9tID0gJzIwMTYtMDItMDEnLCB2YWxpZF90aWwgPSAnMjAxNi0wMy0wMScKK1dIRVJFIGlkID0g J1s1LDYpJyBBTkQgdmFsaWRfZnJvbSA9ICcyMDE4LTAyLTAxJyBBTkQgdmFsaWRfdGlsID0gJzIw MTgtMDMtMDEnOworLS0gQSBQSyB1cGRhdGUgc2xpZGluZyB0aGUgZWRnZSBiZXR3ZWVuIHR3byBy ZWZlcmVuY2VkIHJvd3M6CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIgKGlkLCB2YWxpZF9mcm9t LCB2YWxpZF90aWwpIFZBTFVFUworICAoJ1s2LDcpJywgJzIwMTgtMDEtMDEnLCAnMjAxOC0wMi0w MScpLAorICAoJ1s2LDcpJywgJzIwMTgtMDItMDEnLCAnMjAxOC0wMy0wMScpOworSU5TRVJUIElO VE8gdGVtcG9yYWxfZmtfcGVyMnBlciAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCwgcGFyZW50 X2lkKSBWQUxVRVMKKyAgKCdbNCw1KScsICcyMDE4LTAxLTE1JywgJzIwMTgtMDItMTUnLCAnWzYs NyknKTsKK1VQREFURSB0ZW1wb3JhbF9wZXIKK1NFVCB2YWxpZF9mcm9tID0gQ0FTRSBXSEVOIHZh bGlkX2Zyb20gPSAnMjAxOC0wMS0wMScgVEhFTiAnMjAxOC0wMS0wMScKKyAgICAgICAgICAgICAg ICAgICAgICBXSEVOIHZhbGlkX2Zyb20gPSAnMjAxOC0wMi0wMScgVEhFTiAnMjAxOC0wMS0wNScg RU5EOjpkYXRlLAorICAgIHZhbGlkX3RpbCA9ICBDQVNFIFdIRU4gdmFsaWRfZnJvbSA9ICcyMDE4 LTAxLTAxJyBUSEVOICcyMDE4LTAxLTA1JworICAgICAgICAgICAgICAgICAgICAgIFdIRU4gdmFs aWRfZnJvbSA9ICcyMDE4LTAyLTAxJyBUSEVOICcyMDE4LTAzLTAxJyBFTkQ6OmRhdGUKK1dIRVJF IGlkID0gJ1s2LDcpJzsKKy0tIGEgUEsgdXBkYXRlIHNocmlua2luZyB0aGUgcmVmZXJlbmNlZCBy YW5nZSBidXQgc3RpbGwgdmFsaWQ6CistLSBUaGVyZSBhcmUgdHdvIHJlZmVyZW5jZXM6IG9uZSBm dWxmaWxsZWQgYnkgdGhlIGZpcnN0IHBrIHJvdywKKy0tIHRoZSBvdGhlciBmdWxmaWxsZWQgYnkg Ym90aCBwayByb3dzIGNvbWJpbmVkLgorSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyIChpZCwgdmFs aWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMKKyAgKCdbMSwyKScsICcyMDE4LTAxLTAxJywgJzIw MTgtMDMtMDEnKSwKKyAgKCdbMSwyKScsICcyMDE4LTAzLTAxJywgJzIwMTgtMDYtMDEnKTsKK0lO U0VSVCBJTlRPIHRlbXBvcmFsX2ZrX3BlcjJwZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWws IHBhcmVudF9pZCkgVkFMVUVTCisgICgnWzEsMiknLCAnMjAxOC0wMS0xNScsICcyMDE4LTAyLTAx JywgJ1sxLDIpJyksCisgICgnWzIsMyknLCAnMjAxOC0wMS0xNScsICcyMDE4LTA1LTAxJywgJ1sx LDIpJyk7CitVUERBVEUgdGVtcG9yYWxfcGVyIFNFVCB2YWxpZF9mcm9tID0gJzIwMTgtMDEtMTUn LCB2YWxpZF90aWwgPSAnMjAxOC0wMy0wMScKK1dIRVJFIGlkID0gJ1sxLDIpJyBBTkQgdmFsaWRf YXQgQD4gJzIwMTgtMDEtMTUnOjpkYXRlOworLS0gYSBQSyB1cGRhdGUgZ3Jvd2luZyB0aGUgcmVm ZXJlbmNlZCByYW5nZSBpcyBmaW5lOgorVVBEQVRFIHRlbXBvcmFsX3BlciBTRVQgdmFsaWRfZnJv bSA9ICcyMDE4LTAxLTAxJywgdmFsaWRfdGlsID0gJzIwMTgtMDMtMDEnCitXSEVSRSBpZCA9ICdb MSwyKScgQU5EIHZhbGlkX2F0IEA+ICcyMDE4LTAxLTI1Jzo6ZGF0ZTsKKy0tIGEgUEsgdXBkYXRl IHNocmlua2luZyB0aGUgcmVmZXJlbmNlZCByYW5nZSBhbmQgY2hhbmdpbmcgdGhlIGlkIGludmFs aWRhdGVzIHRoZSB3aG9sZSByYW5nZToKK1VQREFURSB0ZW1wb3JhbF9wZXIgU0VUIGlkID0gJ1sy LDMpJywgdmFsaWRfZnJvbSA9ICcyMDE4LTAxLTE1JywgdmFsaWRfdGlsID0gJzIwMTgtMDMtMDEn CitXSEVSRSBpZCA9ICdbMSwyKScgQU5EIHZhbGlkX2F0IEA+ICcyMDE4LTAxLTE1Jzo6ZGF0ZTsK Ky0tIGEgUEsgdXBkYXRlIGNoYW5naW5nIG9ubHkgdGhlIGlkIGludmFsaWRhdGVzIHRoZSB3aG9s ZSByYW5nZToKK1VQREFURSB0ZW1wb3JhbF9wZXIgU0VUIGlkID0gJ1syLDMpJworV0hFUkUgaWQg PSAnWzEsMiknIEFORCB2YWxpZF9hdCBAPiAnMjAxOC0wMS0xNSc6OmRhdGU7CistLSBhIFBLIHVw ZGF0ZSB0aGF0IGxvc2VzIHRpbWUgZnJvbSBib3RoIGVuZHMsIGJ1dCBpcyBzdGlsbCB2YWxpZDoK K0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlciAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFM VUVTCisgICgnWzIsMyknLCAnMjAxOC0wMS0wMScsICcyMDE4LTAzLTAxJyk7CitJTlNFUlQgSU5U TyB0ZW1wb3JhbF9ma19wZXIycGVyIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsLCBwYXJlbnRf aWQpIFZBTFVFUworICAoJ1s1LDYpJywgJzIwMTgtMDEtMTUnLCAnMjAxOC0wMi0wMScsICdbMiwz KScpOworVVBEQVRFIHRlbXBvcmFsX3BlciBTRVQgdmFsaWRfZnJvbSA9ICcyMDE4LTAxLTE1Jywg dmFsaWRfdGlsID0gJzIwMTgtMDItMTUnCitXSEVSRSBpZCA9ICdbMiwzKSc7CistLSBhIFBLIHVw ZGF0ZSB0aGF0IGZhaWxzIGJlY2F1c2UgYm90aCBhcmUgcmVmZXJlbmNlZDoKK1VQREFURSB0ZW1w b3JhbF9wZXIgU0VUIHZhbGlkX2Zyb20gPSAnMjAxNi0wMS0wMScsIHZhbGlkX3RpbCA9ICcyMDE2 LTAyLTAxJworV0hFUkUgaWQgPSAnWzUsNiknIEFORCB2YWxpZF9mcm9tID0gJzIwMTgtMDEtMDEn IEFORCB2YWxpZF90aWwgPSAnMjAxOC0wMi0wMSc7CistLSBhIFBLIHVwZGF0ZSB0aGF0IGZhaWxz IGJlY2F1c2UgYm90aCBhcmUgcmVmZXJlbmNlZCwgYnV0IG5vdCAndGlsIGNvbW1pdDoKK0JFR0lO OworICBBTFRFUiBUQUJMRSB0ZW1wb3JhbF9ma19wZXIycGVyCisgICAgQUxURVIgQ09OU1RSQUlO VCB0ZW1wb3JhbF9ma19wZXIycGVyX2ZrCisgICAgREVGRVJSQUJMRSBJTklUSUFMTFkgREVGRVJS RUQ7CisKKyAgVVBEQVRFIHRlbXBvcmFsX3BlciBTRVQgdmFsaWRfZnJvbSA9ICcyMDE2LTAxLTAx JywgdmFsaWRfdGlsID0gJzIwMTYtMDItMDEnCisgIFdIRVJFIGlkID0gJ1s1LDYpJyBBTkQgdmFs aWRfYXQgPSBkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAxOC0wMi0wMScpOworQ09NTUlUOwor LS0gY2hhbmdpbmcgdGhlIHNjYWxhciBwYXJ0IGZhaWxzOgorVVBEQVRFIHRlbXBvcmFsX3BlciBT RVQgaWQgPSAnWzcsOCknCitXSEVSRSBpZCA9ICdbNSw2KScgQU5EIHZhbGlkX2Zyb20gPSAnMjAx OC0wMS0wMScgQU5EIHZhbGlkX3RpbCA9ICcyMDE4LTAyLTAxJzsKKy0tIGNoYW5naW5nIGFuIHVu cmVmZXJlbmNlZCBwYXJ0IGlzIG9rYXk6CitVUERBVEUgdGVtcG9yYWxfcGVyCitGT1IgUE9SVElP TiBPRiB2YWxpZF9hdCBGUk9NICcyMDE4LTAxLTAyJyBUTyAnMjAxOC0wMS0wMycKK1NFVCBpZCA9 ICdbNyw4KScKK1dIRVJFIGlkID0gJ1s1LDYpJzsKKy0tIGNoYW5naW5nIGp1c3QgYSBwYXJ0IGZh aWxzOgorVVBEQVRFIHRlbXBvcmFsX3BlcgorRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAn MjAxOC0wMS0wNScgVE8gJzIwMTgtMDEtMTAnCitTRVQgaWQgPSAnWzcsOCknCitXSEVSRSBpZCA9 ICdbNSw2KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX3BlciBXSEVSRSBpZCBpbiAoJ1s1LDYp JywgJ1s3LDgpJykgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworU0VMRUNUICogRlJPTSB0ZW1wb3Jh bF9ma19wZXIycGVyIFdIRVJFIGlkIGluICgnWzMsNCknKSBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7 CistLSB0aGVuIGRlbGV0ZSB0aGUgb2JqZWN0aW5nIEZLIHJlY29yZCBhbmQgdGhlIHNhbWUgUEsg dXBkYXRlIHN1Y2NlZWRzOgorREVMRVRFIEZST00gdGVtcG9yYWxfZmtfcGVyMnBlciBXSEVSRSBp ZCA9ICdbMyw0KSc7CitVUERBVEUgdGVtcG9yYWxfcGVyIFNFVCB2YWxpZF9mcm9tID0gJzIwMTYt MDEtMDEnLCB2YWxpZF90aWwgPSAnMjAxNi0wMi0wMScKK1dIRVJFIGlkID0gJ1s1LDYpJyBBTkQg dmFsaWRfZnJvbSA9ICcyMDE4LTAxLTAxJyBBTkQgdmFsaWRfdGlsID0gJzIwMTgtMDItMDEnOwor CistLQorLS0gdGVzdCBGSyByZWZlcmVuY2VkIHVwZGF0ZXMgUkVTVFJJQ1QKKy0tCisKK1RSVU5D QVRFIHRlbXBvcmFsX3BlciwgdGVtcG9yYWxfZmtfcGVyMnBlcjsKK0FMVEVSIFRBQkxFIHRlbXBv cmFsX2ZrX3BlcjJwZXIKKyAgRFJPUCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3BlcjJwZXJfZms7 CitBTFRFUiBUQUJMRSB0ZW1wb3JhbF9ma19wZXIycGVyCisgIEFERCBDT05TVFJBSU5UIHRlbXBv cmFsX2ZrX3BlcjJwZXJfZmsKKyAgRk9SRUlHTiBLRVkgKHBhcmVudF9pZCwgUEVSSU9EIHZhbGlk X2F0KQorICBSRUZFUkVOQ0VTIHRlbXBvcmFsX3BlcgorICBPTiBVUERBVEUgUkVTVFJJQ1Q7CisK Ky0tCistLSB0ZXN0IEZLIHJlZmVyZW5jZWQgZGVsZXRlcyBOTyBBQ1RJT04KKy0tCisKK1RSVU5D QVRFIHRlbXBvcmFsX3BlciwgdGVtcG9yYWxfZmtfcGVyMnBlcjsKK0FMVEVSIFRBQkxFIHRlbXBv cmFsX2ZrX3BlcjJwZXIKKyAgQUREIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcGVyMnBlcl9mawor ICBGT1JFSUdOIEtFWSAocGFyZW50X2lkLCBQRVJJT0QgdmFsaWRfYXQpCisgIFJFRkVSRU5DRVMg dGVtcG9yYWxfcGVyOworLS0gYSBQSyBkZWxldGUgdGhhdCBzdWNjZWVkcyBiZWNhdXNlIHRoZSBu dW1lcmljIGlkIGlzbid0IHJlZmVyZW5jZWQ6CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIgKGlk LCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1s1LDYpJywgJzIwMTgtMDEtMDEnLCAn MjAxOC0wMi0wMScpOworREVMRVRFIEZST00gdGVtcG9yYWxfcGVyIFdIRVJFIGlkID0gJ1s1LDYp JzsKKy0tIGEgUEsgZGVsZXRlIHRoYXQgc3VjY2VlZHMgZXZlbiB0aG91Z2ggdGhlIG51bWVyaWMg aWQgaXMgcmVmZXJlbmNlZCBiZWNhdXNlIHRoZSByYW5nZSBpc24ndDoKK0lOU0VSVCBJTlRPIHRl bXBvcmFsX3BlciAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTCisgICgnWzUsNikn LCAnMjAxOC0wMS0wMScsICcyMDE4LTAyLTAxJyksCisgICgnWzUsNiknLCAnMjAxOC0wMi0wMScs ICcyMDE4LTAzLTAxJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ma19wZXIycGVyIChpZCwgdmFs aWRfZnJvbSwgdmFsaWRfdGlsLCBwYXJlbnRfaWQpIFZBTFVFUyAoJ1szLDQpJywgJzIwMTgtMDEt MDUnLCAnMjAxOC0wMS0xMCcsICdbNSw2KScpOworREVMRVRFIEZST00gdGVtcG9yYWxfcGVyIFdI RVJFIGlkID0gJ1s1LDYpJyBBTkQgdmFsaWRfZnJvbSA9ICcyMDE4LTAyLTAxJyBBTkQgdmFsaWRf dGlsID0gJzIwMTgtMDMtMDEnOworLS0gYSBQSyBkZWxldGUgdGhhdCBmYWlscyBiZWNhdXNlIGJv dGggYXJlIHJlZmVyZW5jZWQ6CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9wZXIgV0hFUkUgaWQgPSAn WzUsNiknIEFORCB2YWxpZF9mcm9tID0gJzIwMTgtMDEtMDEnIEFORCB2YWxpZF90aWwgPSAnMjAx OC0wMi0wMSc7CistLSBhIFBLIGRlbGV0ZSB0aGF0IGZhaWxzIGJlY2F1c2UgYm90aCBhcmUgcmVm ZXJlbmNlZCwgYnV0IG5vdCAndGlsIGNvbW1pdDoKK0JFR0lOOworICBBTFRFUiBUQUJMRSB0ZW1w b3JhbF9ma19wZXIycGVyCisgICAgQUxURVIgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19wZXIycGVy X2ZrCisgICAgREVGRVJSQUJMRSBJTklUSUFMTFkgREVGRVJSRUQ7CisKKyAgREVMRVRFIEZST00g dGVtcG9yYWxfcGVyIFdIRVJFIGlkID0gJ1s1LDYpJyBBTkQgdmFsaWRfYXQgPSBkYXRlcmFuZ2Uo JzIwMTgtMDEtMDEnLCAnMjAxOC0wMi0wMScpOworQ09NTUlUOworLS0gZGVsZXRpbmcgYW4gdW5y ZWZlcmVuY2VkIHBhcnQgaXMgb2theToKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3BlcgorRk9SIFBP UlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAxOC0wMS0wMicgVE8gJzIwMTgtMDEtMDMnCitXSEVS RSBpZCA9ICdbNSw2KSc7CistLSBkZWxldGluZyBqdXN0IGEgcGFydCBmYWlsczoKK0RFTEVURSBG Uk9NIHRlbXBvcmFsX3BlcgorRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAxOC0wMS0w NScgVE8gJzIwMTgtMDEtMTAnCitXSEVSRSBpZCA9ICdbNSw2KSc7CitTRUxFQ1QgKiBGUk9NIHRl bXBvcmFsX3BlciBXSEVSRSBpZCBpbiAoJ1s1LDYpJywgJ1s3LDgpJykgT1JERVIgQlkgaWQsIHZh bGlkX2F0OworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9ma19wZXIycGVyIFdIRVJFIGlkIGluICgn WzMsNCknKSBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CistLSB0aGVuIGRlbGV0ZSB0aGUgb2JqZWN0 aW5nIEZLIHJlY29yZCBhbmQgdGhlIHNhbWUgUEsgZGVsZXRlIHN1Y2NlZWRzOgorREVMRVRFIEZS T00gdGVtcG9yYWxfZmtfcGVyMnBlciBXSEVSRSBpZCA9ICdbMyw0KSc7CitERUxFVEUgRlJPTSB0 ZW1wb3JhbF9wZXIgV0hFUkUgaWQgPSAnWzUsNiknIEFORCB2YWxpZF9mcm9tID0gJzIwMTgtMDEt MDEnIEFORCB2YWxpZF90aWwgPSAnMjAxOC0wMi0wMSc7CisKKy0tCistLSB0ZXN0IEZLIHJlZmVy ZW5jZWQgZGVsZXRlcyBSRVNUUklDVAorLS0KKworVFJVTkNBVEUgdGVtcG9yYWxfcGVyLCB0ZW1w b3JhbF9ma19wZXIycGVyOworQUxURVIgVEFCTEUgdGVtcG9yYWxfZmtfcGVyMnBlcgorICBEUk9Q IENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcGVyMnBlcl9mazsKK0FMVEVSIFRBQkxFIHRlbXBvcmFs X2ZrX3BlcjJwZXIKKyAgQUREIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcGVyMnBlcl9maworICBG T1JFSUdOIEtFWSAocGFyZW50X2lkLCBQRVJJT0QgdmFsaWRfYXQpCisgIFJFRkVSRU5DRVMgdGVt cG9yYWxfcGVyCisgIE9OIERFTEVURSBSRVNUUklDVDsKKworLS0KKy0tIHBlcjJwZXIgdGVzdCBP TiBVUERBVEUvREVMRVRFIG9wdGlvbnMKKy0tCistLSBUT0M6CistLSByZWZlcmVuY2VkIHVwZGF0 ZXMgQ0FTQ0FERQorLS0gcmVmZXJlbmNlZCBkZWxldGVzIENBU0NBREUKKy0tIHJlZmVyZW5jZWQg dXBkYXRlcyBTRVQgTlVMTAorLS0gcmVmZXJlbmNlZCBkZWxldGVzIFNFVCBOVUxMCistLSByZWZl cmVuY2VkIHVwZGF0ZXMgU0VUIERFRkFVTFQKKy0tIHJlZmVyZW5jZWQgZGVsZXRlcyBTRVQgREVG QVVMVAorLS0gcmVmZXJlbmNlZCB1cGRhdGVzIENBU0NBREUgKHR3byBzY2FsYXIgY29scykKKy0t IHJlZmVyZW5jZWQgZGVsZXRlcyBDQVNDQURFICh0d28gc2NhbGFyIGNvbHMpCistLSByZWZlcmVu Y2VkIHVwZGF0ZXMgU0VUIE5VTEwgKHR3byBzY2FsYXIgY29scykKKy0tIHJlZmVyZW5jZWQgZGVs ZXRlcyBTRVQgTlVMTCAodHdvIHNjYWxhciBjb2xzKQorLS0gcmVmZXJlbmNlZCBkZWxldGVzIFNF VCBOVUxMICh0d28gc2NhbGFyIGNvbHMsIFNFVCBOVUxMIHN1YnNldCkKKy0tIHJlZmVyZW5jZWQg dXBkYXRlcyBTRVQgREVGQVVMVCAodHdvIHNjYWxhciBjb2xzKQorLS0gcmVmZXJlbmNlZCBkZWxl dGVzIFNFVCBERUZBVUxUICh0d28gc2NhbGFyIGNvbHMpCistLSByZWZlcmVuY2VkIGRlbGV0ZXMg U0VUIERFRkFVTFQgKHR3byBzY2FsYXIgY29scywgU0VUIERFRkFVTFQgc3Vic2V0KQorCistLQor LS0gdGVzdCBGSyByZWZlcmVuY2VkIHVwZGF0ZXMgQ0FTQ0FERQorLS0KKworVFJVTkNBVEUgdGVt cG9yYWxfcGVyLCB0ZW1wb3JhbF9ma19wZXIycGVyOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVy IChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbNiw3KScsICcyMDE4LTAxLTAx JywgJzIwMjEtMDEtMDEnKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrX3BlcjJwZXIgKGlkLCB2 YWxpZF9mcm9tLCB2YWxpZF90aWwsIHBhcmVudF9pZCkgVkFMVUVTICgnWzEwMCwxMDBdJywgJzIw MTgtMDEtMDEnLCAnMjAyMS0wMS0wMScsICdbNiw3KScpOworQUxURVIgVEFCTEUgdGVtcG9yYWxf ZmtfcGVyMnBlcgorICBBREQgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19wZXIycGVyX2ZrCisgICAg Rk9SRUlHTiBLRVkgKHBhcmVudF9pZCwgUEVSSU9EIHZhbGlkX2F0KQorICAgIFJFRkVSRU5DRVMg dGVtcG9yYWxfcGVyCisgICAgT04gREVMRVRFIENBU0NBREUgT04gVVBEQVRFIENBU0NBREU7Cist LSBsZWZ0b3ZlcnMgb24gYm90aCBzaWRlczoKK1VQREFURSB0ZW1wb3JhbF9wZXIgRk9SIFBPUlRJ T04gT0YgdmFsaWRfYXQgRlJPTSAnMjAxOS0wMS0wMScgVE8gJzIwMjAtMDEtMDEnIFNFVCBpZCA9 ICdbNyw4KScgV0hFUkUgaWQgPSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9ma19w ZXIycGVyIFdIRVJFIGlkID0gJ1sxMDAsMTAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworLS0g bm9uLUZQTyB1cGRhdGU6CitVUERBVEUgdGVtcG9yYWxfcGVyIFNFVCBpZCA9ICdbNyw4KScgV0hF UkUgaWQgPSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9ma19wZXIycGVyIFdIRVJF IGlkID0gJ1sxMDAsMTAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworLS0gRksgYWNyb3NzIHR3 byByZWZlcmVuY2VkIHJvd3M6CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIgKGlkLCB2YWxpZF9m cm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1s4LDkpJywgJzIwMTgtMDEtMDEnLCAnMjAyMC0wMS0w MScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGls KSBWQUxVRVMgKCdbOCw5KScsICcyMDIwLTAxLTAxJywgJzIwMjEtMDEtMDEnKTsKK0lOU0VSVCBJ TlRPIHRlbXBvcmFsX2ZrX3BlcjJwZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwsIHBhcmVu dF9pZCkgVkFMVUVTICgnWzIwMCwyMDBdJywgJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScsICdb OCw5KScpOworVVBEQVRFIHRlbXBvcmFsX3BlciBTRVQgaWQgPSAnWzksMTApJyBXSEVSRSBpZCA9 ICdbOCw5KScgQU5EIHZhbGlkX2F0IEA+ICcyMDE5LTAxLTAxJzo6ZGF0ZTsKK1NFTEVDVCAqIEZS T00gdGVtcG9yYWxfZmtfcGVyMnBlciBXSEVSRSBpZCA9ICdbMjAwLDIwMF0nIE9SREVSIEJZIGlk LCB2YWxpZF9hdDsKKworLS0KKy0tIHRlc3QgRksgcmVmZXJlbmNlZCBkZWxldGVzIENBU0NBREUK Ky0tCisKK1RSVU5DQVRFIHRlbXBvcmFsX3BlciwgdGVtcG9yYWxfZmtfcGVyMnBlcjsKK0lOU0VS VCBJTlRPIHRlbXBvcmFsX3BlciAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgn WzYsNyknLCAnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3Jh bF9ma19wZXIycGVyIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsLCBwYXJlbnRfaWQpIFZBTFVF UyAoJ1sxMDAsMTAwXScsICcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnLCAnWzYsNyknKTsKKy0t IGxlZnRvdmVycyBvbiBib3RoIHNpZGVzOgorREVMRVRFIEZST00gdGVtcG9yYWxfcGVyIEZPUiBQ T1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMTktMDEtMDEnIFRPICcyMDIwLTAxLTAxJyBXSEVS RSBpZCA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrX3BlcjJwZXIgV0hFUkUg aWQgPSAnWzEwMCwxMDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CistLSBub24tRlBPIGRlbGV0 ZToKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3BlciBXSEVSRSBpZCA9ICdbNiw3KSc7CitTRUxFQ1Qg KiBGUk9NIHRlbXBvcmFsX2ZrX3BlcjJwZXIgV0hFUkUgaWQgPSAnWzEwMCwxMDBdJyBPUkRFUiBC WSBpZCwgdmFsaWRfYXQ7CistLSBGSyBhY3Jvc3MgdHdvIHJlZmVyZW5jZWQgcm93czoKK0lOU0VS VCBJTlRPIHRlbXBvcmFsX3BlciAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgn WzgsOSknLCAnMjAxOC0wMS0wMScsICcyMDIwLTAxLTAxJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3Jh bF9wZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1s4LDkpJywgJzIwMjAt MDEtMDEnLCAnMjAyMS0wMS0wMScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmtfcGVyMnBlciAo aWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCwgcGFyZW50X2lkKSBWQUxVRVMgKCdbMjAwLDIwMF0n LCAnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJywgJ1s4LDkpJyk7CitERUxFVEUgRlJPTSB0ZW1w b3JhbF9wZXIgV0hFUkUgaWQgPSAnWzgsOSknIEFORCB2YWxpZF9hdCBAPiAnMjAxOS0wMS0wMSc6 OmRhdGU7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrX3BlcjJwZXIgV0hFUkUgaWQgPSAnWzIw MCwyMDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisKKy0tCistLSB0ZXN0IEZLIHJlZmVyZW5j ZWQgdXBkYXRlcyBTRVQgTlVMTAorLS0KKworVFJVTkNBVEUgdGVtcG9yYWxfcGVyLCB0ZW1wb3Jh bF9ma19wZXIycGVyOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyIChpZCwgdmFsaWRfZnJvbSwg dmFsaWRfdGlsKSBWQUxVRVMgKCdbNiw3KScsICcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKTsK K0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrX3BlcjJwZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90 aWwsIHBhcmVudF9pZCkgVkFMVUVTICgnWzEwMCwxMDBdJywgJzIwMTgtMDEtMDEnLCAnMjAyMS0w MS0wMScsICdbNiw3KScpOworQUxURVIgVEFCTEUgdGVtcG9yYWxfZmtfcGVyMnBlcgorICBEUk9Q IENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcGVyMnBlcl9maywKKyAgQUREIENPTlNUUkFJTlQgdGVt cG9yYWxfZmtfcGVyMnBlcl9maworICAgIEZPUkVJR04gS0VZIChwYXJlbnRfaWQsIFBFUklPRCB2 YWxpZF9hdCkKKyAgICBSRUZFUkVOQ0VTIHRlbXBvcmFsX3BlcgorICAgIE9OIERFTEVURSBTRVQg TlVMTCBPTiBVUERBVEUgU0VUIE5VTEw7CistLSBsZWZ0b3ZlcnMgb24gYm90aCBzaWRlczoKK1VQ REFURSB0ZW1wb3JhbF9wZXIgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAxOS0wMS0w MScgVE8gJzIwMjAtMDEtMDEnIFNFVCBpZCA9ICdbNyw4KScgV0hFUkUgaWQgPSAnWzYsNyknOwor U0VMRUNUICogRlJPTSB0ZW1wb3JhbF9ma19wZXIycGVyIFdIRVJFIGlkID0gJ1sxMDAsMTAwXScg T1JERVIgQlkgaWQsIHZhbGlkX2F0OworLS0gbm9uLUZQTyB1cGRhdGU6CitVUERBVEUgdGVtcG9y YWxfcGVyIFNFVCBpZCA9ICdbNyw4KScgV0hFUkUgaWQgPSAnWzYsNyknOworU0VMRUNUICogRlJP TSB0ZW1wb3JhbF9ma19wZXIycGVyIFdIRVJFIGlkID0gJ1sxMDAsMTAwXScgT1JERVIgQlkgaWQs IHZhbGlkX2F0OworLS0gRksgYWNyb3NzIHR3byByZWZlcmVuY2VkIHJvd3M6CitJTlNFUlQgSU5U TyB0ZW1wb3JhbF9wZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1s4LDkp JywgJzIwMTgtMDEtMDEnLCAnMjAyMC0wMS0wMScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVy IChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbOCw5KScsICcyMDIwLTAxLTAx JywgJzIwMjEtMDEtMDEnKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrX3BlcjJwZXIgKGlkLCB2 YWxpZF9mcm9tLCB2YWxpZF90aWwsIHBhcmVudF9pZCkgVkFMVUVTICgnWzIwMCwyMDBdJywgJzIw MTgtMDEtMDEnLCAnMjAyMS0wMS0wMScsICdbOCw5KScpOworVVBEQVRFIHRlbXBvcmFsX3BlciBT RVQgaWQgPSAnWzksMTApJyBXSEVSRSBpZCA9ICdbOCw5KScgQU5EIHZhbGlkX2F0IEA+ICcyMDE5 LTAxLTAxJzo6ZGF0ZTsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmtfcGVyMnBlciBXSEVSRSBp ZCA9ICdbMjAwLDIwMF0nIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKworLS0KKy0tIHRlc3QgRksg cmVmZXJlbmNlZCBkZWxldGVzIFNFVCBOVUxMCistLQorCitUUlVOQ0FURSB0ZW1wb3JhbF9wZXIs IHRlbXBvcmFsX2ZrX3BlcjJwZXI7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIgKGlkLCB2YWxp ZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1s2LDcpJywgJzIwMTgtMDEtMDEnLCAnMjAyMS0w MS0wMScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmtfcGVyMnBlciAoaWQsIHZhbGlkX2Zyb20s IHZhbGlkX3RpbCwgcGFyZW50X2lkKSBWQUxVRVMgKCdbMTAwLDEwMF0nLCAnMjAxOC0wMS0wMScs ICcyMDIxLTAxLTAxJywgJ1s2LDcpJyk7CistLSBsZWZ0b3ZlcnMgb24gYm90aCBzaWRlczoKK0RF TEVURSBGUk9NIHRlbXBvcmFsX3BlciBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDE5 LTAxLTAxJyBUTyAnMjAyMC0wMS0wMScgV0hFUkUgaWQgPSAnWzYsNyknOworU0VMRUNUICogRlJP TSB0ZW1wb3JhbF9ma19wZXIycGVyIFdIRVJFIGlkID0gJ1sxMDAsMTAwXScgT1JERVIgQlkgaWQs IHZhbGlkX2F0OworLS0gbm9uLUZQTyBkZWxldGU6CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9wZXIg V0hFUkUgaWQgPSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9ma19wZXIycGVyIFdI RVJFIGlkID0gJ1sxMDAsMTAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworLS0gRksgYWNyb3Nz IHR3byByZWZlcmVuY2VkIHJvd3M6CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIgKGlkLCB2YWxp ZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1s4LDkpJywgJzIwMTgtMDEtMDEnLCAnMjAyMC0w MS0wMScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRf dGlsKSBWQUxVRVMgKCdbOCw5KScsICcyMDIwLTAxLTAxJywgJzIwMjEtMDEtMDEnKTsKK0lOU0VS VCBJTlRPIHRlbXBvcmFsX2ZrX3BlcjJwZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwsIHBh cmVudF9pZCkgVkFMVUVTICgnWzIwMCwyMDBdJywgJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScs ICdbOCw5KScpOworREVMRVRFIEZST00gdGVtcG9yYWxfcGVyIFdIRVJFIGlkID0gJ1s4LDkpJyBB TkQgdmFsaWRfYXQgQD4gJzIwMTktMDEtMDEnOjpkYXRlOworU0VMRUNUICogRlJPTSB0ZW1wb3Jh bF9ma19wZXIycGVyIFdIRVJFIGlkID0gJ1syMDAsMjAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0 OworCistLQorLS0gdGVzdCBGSyByZWZlcmVuY2VkIHVwZGF0ZXMgU0VUIERFRkFVTFQKKy0tCisK K1RSVU5DQVRFIHRlbXBvcmFsX3BlciwgdGVtcG9yYWxfZmtfcGVyMnBlcjsKK0lOU0VSVCBJTlRP IHRlbXBvcmFsX3BlciAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWy0xLC0x XScsIG51bGwsIG51bGwpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyIChpZCwgdmFsaWRfZnJv bSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbNiw3KScsICcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEn KTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrX3BlcjJwZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxp ZF90aWwsIHBhcmVudF9pZCkgVkFMVUVTICgnWzEwMCwxMDBdJywgJzIwMTgtMDEtMDEnLCAnMjAy MS0wMS0wMScsICdbNiw3KScpOworQUxURVIgVEFCTEUgdGVtcG9yYWxfZmtfcGVyMnBlcgorICBB TFRFUiBDT0xVTU4gcGFyZW50X2lkIFNFVCBERUZBVUxUICdbLTEsLTFdJywKKyAgRFJPUCBDT05T VFJBSU5UIHRlbXBvcmFsX2ZrX3BlcjJwZXJfZmssCisgIEFERCBDT05TVFJBSU5UIHRlbXBvcmFs X2ZrX3BlcjJwZXJfZmsKKyAgICBGT1JFSUdOIEtFWSAocGFyZW50X2lkLCBQRVJJT0QgdmFsaWRf YXQpCisgICAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9wZXIKKyAgICBPTiBERUxFVEUgU0VUIERFRkFV TFQgT04gVVBEQVRFIFNFVCBERUZBVUxUOworLS0gbGVmdG92ZXJzIG9uIGJvdGggc2lkZXM6CitV UERBVEUgdGVtcG9yYWxfcGVyIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMTktMDEt MDEnIFRPICcyMDIwLTAxLTAxJyBTRVQgaWQgPSAnWzcsOCknIFdIRVJFIGlkID0gJ1s2LDcpJzsK K1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmtfcGVyMnBlciBXSEVSRSBpZCA9ICdbMTAwLDEwMF0n IE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKy0tIG5vbi1GUE8gdXBkYXRlOgorVVBEQVRFIHRlbXBv cmFsX3BlciBTRVQgaWQgPSAnWzcsOCknIFdIRVJFIGlkID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZS T00gdGVtcG9yYWxfZmtfcGVyMnBlciBXSEVSRSBpZCA9ICdbMTAwLDEwMF0nIE9SREVSIEJZIGlk LCB2YWxpZF9hdDsKKy0tIEZLIGFjcm9zcyB0d28gcmVmZXJlbmNlZCByb3dzOgorSU5TRVJUIElO VE8gdGVtcG9yYWxfcGVyIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbOCw5 KScsICcyMDE4LTAxLTAxJywgJzIwMjAtMDEtMDEnKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3Bl ciAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzgsOSknLCAnMjAyMC0wMS0w MScsICcyMDIxLTAxLTAxJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ma19wZXIycGVyIChpZCwg dmFsaWRfZnJvbSwgdmFsaWRfdGlsLCBwYXJlbnRfaWQpIFZBTFVFUyAoJ1syMDAsMjAwXScsICcy MDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnLCAnWzgsOSknKTsKK1VQREFURSB0ZW1wb3JhbF9wZXIg U0VUIGlkID0gJ1s5LDEwKScgV0hFUkUgaWQgPSAnWzgsOSknIEFORCB2YWxpZF9hdCBAPiAnMjAx OS0wMS0wMSc6OmRhdGU7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrX3BlcjJwZXIgV0hFUkUg aWQgPSAnWzIwMCwyMDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisKKy0tCistLSB0ZXN0IEZL IHJlZmVyZW5jZWQgZGVsZXRlcyBTRVQgREVGQVVMVAorLS0KKworVFJVTkNBVEUgdGVtcG9yYWxf cGVyLCB0ZW1wb3JhbF9ma19wZXIycGVyOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyIChpZCwg dmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbLTEsLTFdJywgbnVsbCwgbnVsbCk7CitJ TlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVF UyAoJ1s2LDcpJywgJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpOworSU5TRVJUIElOVE8gdGVt cG9yYWxfZmtfcGVyMnBlciAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCwgcGFyZW50X2lkKSBW QUxVRVMgKCdbMTAwLDEwMF0nLCAnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJywgJ1s2LDcpJyk7 CistLSBsZWZ0b3ZlcnMgb24gYm90aCBzaWRlczoKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3BlciBG T1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDE5LTAxLTAxJyBUTyAnMjAyMC0wMS0wMScg V0hFUkUgaWQgPSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9ma19wZXIycGVyIFdI RVJFIGlkID0gJ1sxMDAsMTAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworLS0gbm9uLUZQTyB1 cGRhdGU6CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9wZXIgV0hFUkUgaWQgPSAnWzYsNyknOworU0VM RUNUICogRlJPTSB0ZW1wb3JhbF9ma19wZXIycGVyIFdIRVJFIGlkID0gJ1sxMDAsMTAwXScgT1JE RVIgQlkgaWQsIHZhbGlkX2F0OworLS0gRksgYWNyb3NzIHR3byByZWZlcmVuY2VkIHJvd3M6CitJ TlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVF UyAoJ1s4LDkpJywgJzIwMTgtMDEtMDEnLCAnMjAyMC0wMS0wMScpOworSU5TRVJUIElOVE8gdGVt cG9yYWxfcGVyIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbOCw5KScsICcy MDIwLTAxLTAxJywgJzIwMjEtMDEtMDEnKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrX3BlcjJw ZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwsIHBhcmVudF9pZCkgVkFMVUVTICgnWzIwMCwy MDBdJywgJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScsICdbOCw5KScpOworREVMRVRFIEZST00g dGVtcG9yYWxfcGVyIFdIRVJFIGlkID0gJ1s4LDkpJyBBTkQgdmFsaWRfYXQgQD4gJzIwMTktMDEt MDEnOjpkYXRlOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9ma19wZXIycGVyIFdIRVJFIGlkID0g J1syMDAsMjAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworCistLQorLS0gdGVzdCBGSyByZWZl cmVuY2VkIHVwZGF0ZXMgQ0FTQ0FERSAodHdvIHNjYWxhciBjb2xzKQorLS0KKworVFJVTkNBVEUg dGVtcG9yYWxfcGVyMiwgdGVtcG9yYWxfZmsyX3BlcjJwZXI7CitJTlNFUlQgSU5UTyB0ZW1wb3Jh bF9wZXIyIChpZDEsIGlkMiwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbNiw3KScs ICdbNiw3KScsICcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKTsKK0lOU0VSVCBJTlRPIHRlbXBv cmFsX2ZrMl9wZXIycGVyIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsLCBwYXJlbnRfaWQxLCBw YXJlbnRfaWQyKSBWQUxVRVMgKCdbMTAwLDEwMF0nLCAnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAx JywgJ1s2LDcpJywgJ1s2LDcpJyk7CitBTFRFUiBUQUJMRSB0ZW1wb3JhbF9mazJfcGVyMnBlcgor ICBEUk9QIENPTlNUUkFJTlQgdGVtcG9yYWxfZmsyX3BlcjJwZXJfZmssCisgIEFERCBDT05TVFJB SU5UIHRlbXBvcmFsX2ZrMl9wZXIycGVyX2ZrCisgICAgRk9SRUlHTiBLRVkgKHBhcmVudF9pZDEs IHBhcmVudF9pZDIsIFBFUklPRCB2YWxpZF9hdCkKKyAgICBSRUZFUkVOQ0VTIHRlbXBvcmFsX3Bl cjIKKyAgICBPTiBERUxFVEUgQ0FTQ0FERSBPTiBVUERBVEUgQ0FTQ0FERTsKKy0tIGxlZnRvdmVy cyBvbiBib3RoIHNpZGVzOgorVVBEQVRFIHRlbXBvcmFsX3BlcjIgRk9SIFBPUlRJT04gT0YgdmFs aWRfYXQgRlJPTSAnMjAxOS0wMS0wMScgVE8gJzIwMjAtMDEtMDEnIFNFVCBpZDEgPSAnWzcsOCkn IFdIRVJFIGlkMSA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9wZXIycGVy IFdIRVJFIGlkID0gJ1sxMDAsMTAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworLS0gbm9uLUZQ TyB1cGRhdGU6CitVUERBVEUgdGVtcG9yYWxfcGVyMiBTRVQgaWQxID0gJ1s3LDgpJyBXSEVSRSBp ZDEgPSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9mazJfcGVyMnBlciBXSEVSRSBp ZCA9ICdbMTAwLDEwMF0nIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKy0tIEZLIGFjcm9zcyB0d28g cmVmZXJlbmNlZCByb3dzOgorSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyMiAoaWQxLCBpZDIsIHZh bGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzgsOSknLCAnWzgsOSknLCAnMjAxOC0wMS0w MScsICcyMDIwLTAxLTAxJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIyIChpZDEsIGlkMiwg dmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbOCw5KScsICdbOCw5KScsICcyMDIwLTAx LTAxJywgJzIwMjEtMDEtMDEnKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrMl9wZXIycGVyIChp ZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsLCBwYXJlbnRfaWQxLCBwYXJlbnRfaWQyKSBWQUxVRVMg KCdbMjAwLDIwMF0nLCAnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJywgJ1s4LDkpJywgJ1s4LDkp Jyk7CitVUERBVEUgdGVtcG9yYWxfcGVyMiBTRVQgaWQxID0gJ1s5LDEwKScgV0hFUkUgaWQxID0g J1s4LDkpJyBBTkQgdmFsaWRfYXQgQD4gJzIwMTktMDEtMDEnOjpkYXRlOworU0VMRUNUICogRlJP TSB0ZW1wb3JhbF9mazJfcGVyMnBlciBXSEVSRSBpZCA9ICdbMjAwLDIwMF0nIE9SREVSIEJZIGlk LCB2YWxpZF9hdDsKKworLS0KKy0tIHRlc3QgRksgcmVmZXJlbmNlZCBkZWxldGVzIENBU0NBREUg KHR3byBzY2FsYXIgY29scykKKy0tCisKK1RSVU5DQVRFIHRlbXBvcmFsX3BlcjIsIHRlbXBvcmFs X2ZrMl9wZXIycGVyOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyMiAoaWQxLCBpZDIsIHZhbGlk X2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzYsNyknLCAnWzYsNyknLCAnMjAxOC0wMS0wMScs ICcyMDIxLTAxLTAxJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9mazJfcGVyMnBlciAoaWQsIHZh bGlkX2Zyb20sIHZhbGlkX3RpbCwgcGFyZW50X2lkMSwgcGFyZW50X2lkMikgVkFMVUVTICgnWzEw MCwxMDBdJywgJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScsICdbNiw3KScsICdbNiw3KScpOwor LS0gbGVmdG92ZXJzIG9uIGJvdGggc2lkZXM6CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9wZXIyIEZP UiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMTktMDEtMDEnIFRPICcyMDIwLTAxLTAxJyBX SEVSRSBpZDEgPSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9mazJfcGVyMnBlciBX SEVSRSBpZCA9ICdbMTAwLDEwMF0nIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKy0tIG5vbi1GUE8g ZGVsZXRlOgorREVMRVRFIEZST00gdGVtcG9yYWxfcGVyMiBXSEVSRSBpZDEgPSAnWzYsNyknOwor U0VMRUNUICogRlJPTSB0ZW1wb3JhbF9mazJfcGVyMnBlciBXSEVSRSBpZCA9ICdbMTAwLDEwMF0n IE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKy0tIEZLIGFjcm9zcyB0d28gcmVmZXJlbmNlZCByb3dz OgorSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyMiAoaWQxLCBpZDIsIHZhbGlkX2Zyb20sIHZhbGlk X3RpbCkgVkFMVUVTICgnWzgsOSknLCAnWzgsOSknLCAnMjAxOC0wMS0wMScsICcyMDIwLTAxLTAx Jyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIyIChpZDEsIGlkMiwgdmFsaWRfZnJvbSwgdmFs aWRfdGlsKSBWQUxVRVMgKCdbOCw5KScsICdbOCw5KScsICcyMDIwLTAxLTAxJywgJzIwMjEtMDEt MDEnKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrMl9wZXIycGVyIChpZCwgdmFsaWRfZnJvbSwg dmFsaWRfdGlsLCBwYXJlbnRfaWQxLCBwYXJlbnRfaWQyKSBWQUxVRVMgKCdbMjAwLDIwMF0nLCAn MjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJywgJ1s4LDkpJywgJ1s4LDkpJyk7CitERUxFVEUgRlJP TSB0ZW1wb3JhbF9wZXIyIFdIRVJFIGlkMSA9ICdbOCw5KScgQU5EIHZhbGlkX2F0IEA+ICcyMDE5 LTAxLTAxJzo6ZGF0ZTsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX3BlcjJwZXIgV0hFUkUg aWQgPSAnWzIwMCwyMDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisKKy0tCistLSB0ZXN0IEZL IHJlZmVyZW5jZWQgdXBkYXRlcyBTRVQgTlVMTCAodHdvIHNjYWxhciBjb2xzKQorLS0KKworVFJV TkNBVEUgdGVtcG9yYWxfcGVyMiwgdGVtcG9yYWxfZmsyX3BlcjJwZXI7CitJTlNFUlQgSU5UTyB0 ZW1wb3JhbF9wZXIyIChpZDEsIGlkMiwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdb Niw3KScsICdbNiw3KScsICcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKTsKK0lOU0VSVCBJTlRP IHRlbXBvcmFsX2ZrMl9wZXIycGVyIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsLCBwYXJlbnRf aWQxLCBwYXJlbnRfaWQyKSBWQUxVRVMgKCdbMTAwLDEwMF0nLCAnMjAxOC0wMS0wMScsICcyMDIx LTAxLTAxJywgJ1s2LDcpJywgJ1s2LDcpJyk7CitBTFRFUiBUQUJMRSB0ZW1wb3JhbF9mazJfcGVy MnBlcgorICBEUk9QIENPTlNUUkFJTlQgdGVtcG9yYWxfZmsyX3BlcjJwZXJfZmssCisgIEFERCBD T05TVFJBSU5UIHRlbXBvcmFsX2ZrMl9wZXIycGVyX2ZrCisgICAgRk9SRUlHTiBLRVkgKHBhcmVu dF9pZDEsIHBhcmVudF9pZDIsIFBFUklPRCB2YWxpZF9hdCkKKyAgICBSRUZFUkVOQ0VTIHRlbXBv cmFsX3BlcjIKKyAgICBPTiBERUxFVEUgU0VUIE5VTEwgT04gVVBEQVRFIFNFVCBOVUxMOworLS0g bGVmdG92ZXJzIG9uIGJvdGggc2lkZXM6CitVUERBVEUgdGVtcG9yYWxfcGVyMiBGT1IgUE9SVElP TiBPRiB2YWxpZF9hdCBGUk9NICcyMDE5LTAxLTAxJyBUTyAnMjAyMC0wMS0wMScgU0VUIGlkMSA9 ICdbNyw4KScgV0hFUkUgaWQxID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsy X3BlcjJwZXIgV0hFUkUgaWQgPSAnWzEwMCwxMDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7Cist LSBub24tRlBPIHVwZGF0ZToKK1VQREFURSB0ZW1wb3JhbF9wZXIyIFNFVCBpZDEgPSAnWzcsOCkn IFdIRVJFIGlkMSA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9wZXIycGVy IFdIRVJFIGlkID0gJ1sxMDAsMTAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworLS0gRksgYWNy b3NzIHR3byByZWZlcmVuY2VkIHJvd3M6CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIyIChpZDEs IGlkMiwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbOCw5KScsICdbOCw5KScsICcy MDE4LTAxLTAxJywgJzIwMjAtMDEtMDEnKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlcjIgKGlk MSwgaWQyLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1s4LDkpJywgJ1s4LDkpJywg JzIwMjAtMDEtMDEnLCAnMjAyMS0wMS0wMScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmsyX3Bl cjJwZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwsIHBhcmVudF9pZDEsIHBhcmVudF9pZDIp IFZBTFVFUyAoJ1syMDAsMjAwXScsICcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnLCAnWzgsOSkn LCAnWzgsOSknKTsKK1VQREFURSB0ZW1wb3JhbF9wZXIyIFNFVCBpZDEgPSAnWzksMTApJyBXSEVS RSBpZDEgPSAnWzgsOSknIEFORCB2YWxpZF9hdCBAPiAnMjAxOS0wMS0wMSc6OmRhdGU7CitTRUxF Q1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9wZXIycGVyIFdIRVJFIGlkID0gJ1syMDAsMjAwXScgT1JE RVIgQlkgaWQsIHZhbGlkX2F0OworCistLQorLS0gdGVzdCBGSyByZWZlcmVuY2VkIGRlbGV0ZXMg U0VUIE5VTEwgKHR3byBzY2FsYXIgY29scykKKy0tCisKK1RSVU5DQVRFIHRlbXBvcmFsX3BlcjIs IHRlbXBvcmFsX2ZrMl9wZXIycGVyOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyMiAoaWQxLCBp ZDIsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzYsNyknLCAnWzYsNyknLCAnMjAx OC0wMS0wMScsICcyMDIxLTAxLTAxJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9mazJfcGVyMnBl ciAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCwgcGFyZW50X2lkMSwgcGFyZW50X2lkMikgVkFM VUVTICgnWzEwMCwxMDBdJywgJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScsICdbNiw3KScsICdb Niw3KScpOworLS0gbGVmdG92ZXJzIG9uIGJvdGggc2lkZXM6CitERUxFVEUgRlJPTSB0ZW1wb3Jh bF9wZXIyIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMTktMDEtMDEnIFRPICcyMDIw LTAxLTAxJyBXSEVSRSBpZDEgPSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9mazJf cGVyMnBlciBXSEVSRSBpZCA9ICdbMTAwLDEwMF0nIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKy0t IG5vbi1GUE8gZGVsZXRlOgorREVMRVRFIEZST00gdGVtcG9yYWxfcGVyMiBXSEVSRSBpZDEgPSAn WzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9mazJfcGVyMnBlciBXSEVSRSBpZCA9ICdb MTAwLDEwMF0nIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKy0tIEZLIGFjcm9zcyB0d28gcmVmZXJl bmNlZCByb3dzOgorSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyMiAoaWQxLCBpZDIsIHZhbGlkX2Zy b20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzgsOSknLCAnWzgsOSknLCAnMjAxOC0wMS0wMScsICcy MDIwLTAxLTAxJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIyIChpZDEsIGlkMiwgdmFsaWRf ZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbOCw5KScsICdbOCw5KScsICcyMDIwLTAxLTAxJywg JzIwMjEtMDEtMDEnKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrMl9wZXIycGVyIChpZCwgdmFs aWRfZnJvbSwgdmFsaWRfdGlsLCBwYXJlbnRfaWQxLCBwYXJlbnRfaWQyKSBWQUxVRVMgKCdbMjAw LDIwMF0nLCAnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJywgJ1s4LDkpJywgJ1s4LDkpJyk7CitE RUxFVEUgRlJPTSB0ZW1wb3JhbF9wZXIyIFdIRVJFIGlkMSA9ICdbOCw5KScgQU5EIHZhbGlkX2F0 IEA+ICcyMDE5LTAxLTAxJzo6ZGF0ZTsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX3BlcjJw ZXIgV0hFUkUgaWQgPSAnWzIwMCwyMDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisKKy0tCist LSB0ZXN0IEZLIHJlZmVyZW5jZWQgZGVsZXRlcyBTRVQgTlVMTCAodHdvIHNjYWxhciBjb2xzLCBT RVQgTlVMTCBzdWJzZXQpCistLQorCitUUlVOQ0FURSB0ZW1wb3JhbF9wZXIyLCB0ZW1wb3JhbF9m azJfcGVyMnBlcjsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlcjIgKGlkMSwgaWQyLCB2YWxpZF9m cm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1s2LDcpJywgJ1s2LDcpJywgJzIwMTgtMDEtMDEnLCAn MjAyMS0wMS0wMScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmsyX3BlcjJwZXIgKGlkLCB2YWxp ZF9mcm9tLCB2YWxpZF90aWwsIHBhcmVudF9pZDEsIHBhcmVudF9pZDIpIFZBTFVFUyAoJ1sxMDAs MTAwXScsICcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnLCAnWzYsNyknLCAnWzYsNyknKTsKKy0t IGZhaWxzIGJlY2F1c2UgeW91IGNhbid0IHNldCB0aGUgUEVSSU9EIGNvbHVtbjoKK0FMVEVSIFRB QkxFIHRlbXBvcmFsX2ZrMl9wZXIycGVyCisgIERST1AgQ09OU1RSQUlOVCB0ZW1wb3JhbF9mazJf cGVyMnBlcl9maywKKyAgQUREIENPTlNUUkFJTlQgdGVtcG9yYWxfZmsyX3BlcjJwZXJfZmsKKyAg ICBGT1JFSUdOIEtFWSAocGFyZW50X2lkMSwgcGFyZW50X2lkMiwgUEVSSU9EIHZhbGlkX2F0KQor ICAgIFJFRkVSRU5DRVMgdGVtcG9yYWxfcGVyMgorICAgIE9OIERFTEVURSBTRVQgTlVMTCAodmFs aWRfYXQpIE9OIFVQREFURSBTRVQgTlVMTDsKKy0tIG9rOgorQUxURVIgVEFCTEUgdGVtcG9yYWxf ZmsyX3BlcjJwZXIKKyAgRFJPUCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrMl9wZXIycGVyX2ZrLAor ICBBREQgQ09OU1RSQUlOVCB0ZW1wb3JhbF9mazJfcGVyMnBlcl9maworICAgIEZPUkVJR04gS0VZ IChwYXJlbnRfaWQxLCBwYXJlbnRfaWQyLCBQRVJJT0QgdmFsaWRfYXQpCisgICAgUkVGRVJFTkNF UyB0ZW1wb3JhbF9wZXIyCisgICAgT04gREVMRVRFIFNFVCBOVUxMIChwYXJlbnRfaWQxKSBPTiBV UERBVEUgU0VUIE5VTEw7CistLSBsZWZ0b3ZlcnMgb24gYm90aCBzaWRlczoKK0RFTEVURSBGUk9N IHRlbXBvcmFsX3BlcjIgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAxOS0wMS0wMScg VE8gJzIwMjAtMDEtMDEnIFdIRVJFIGlkMSA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBv cmFsX2ZrMl9wZXIycGVyIFdIRVJFIGlkID0gJ1sxMDAsMTAwXScgT1JERVIgQlkgaWQsIHZhbGlk X2F0OworLS0gbm9uLUZQTyBkZWxldGU6CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9wZXIyIFdIRVJF IGlkMSA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9wZXIycGVyIFdIRVJF IGlkID0gJ1sxMDAsMTAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworLS0gRksgYWNyb3NzIHR3 byByZWZlcmVuY2VkIHJvd3M6CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIyIChpZDEsIGlkMiwg dmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbOCw5KScsICdbOCw5KScsICcyMDE4LTAx LTAxJywgJzIwMjAtMDEtMDEnKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlcjIgKGlkMSwgaWQy LCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1s4LDkpJywgJ1s4LDkpJywgJzIwMjAt MDEtMDEnLCAnMjAyMS0wMS0wMScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmsyX3BlcjJwZXIg KGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwsIHBhcmVudF9pZDEsIHBhcmVudF9pZDIpIFZBTFVF UyAoJ1syMDAsMjAwXScsICcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnLCAnWzgsOSknLCAnWzgs OSknKTsKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3BlcjIgV0hFUkUgaWQxID0gJ1s4LDkpJyBBTkQg dmFsaWRfYXQgQD4gJzIwMTktMDEtMDEnOjpkYXRlOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9m azJfcGVyMnBlciBXSEVSRSBpZCA9ICdbMjAwLDIwMF0nIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsK KworLS0KKy0tIHRlc3QgRksgcmVmZXJlbmNlZCB1cGRhdGVzIFNFVCBERUZBVUxUICh0d28gc2Nh bGFyIGNvbHMpCistLQorCitUUlVOQ0FURSB0ZW1wb3JhbF9wZXIyLCB0ZW1wb3JhbF9mazJfcGVy MnBlcjsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlcjIgKGlkMSwgaWQyLCB2YWxpZF9mcm9tLCB2 YWxpZF90aWwpIFZBTFVFUyAoJ1stMSwtMV0nLCAnWy0xLC0xXScsIG51bGwsIG51bGwpOworSU5T RVJUIElOVE8gdGVtcG9yYWxfcGVyMiAoaWQxLCBpZDIsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkg VkFMVUVTICgnWzYsNyknLCAnWzYsNyknLCAnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJyk7CitJ TlNFUlQgSU5UTyB0ZW1wb3JhbF9mazJfcGVyMnBlciAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3Rp bCwgcGFyZW50X2lkMSwgcGFyZW50X2lkMikgVkFMVUVTICgnWzEwMCwxMDBdJywgJzIwMTgtMDEt MDEnLCAnMjAyMS0wMS0wMScsICdbNiw3KScsICdbNiw3KScpOworQUxURVIgVEFCTEUgdGVtcG9y YWxfZmsyX3BlcjJwZXIKKyAgQUxURVIgQ09MVU1OIHBhcmVudF9pZDEgU0VUIERFRkFVTFQgJ1st MSwtMV0nLAorICBBTFRFUiBDT0xVTU4gcGFyZW50X2lkMiBTRVQgREVGQVVMVCAnWy0xLC0xXScs CisgIERST1AgQ09OU1RSQUlOVCB0ZW1wb3JhbF9mazJfcGVyMnBlcl9maywKKyAgQUREIENPTlNU UkFJTlQgdGVtcG9yYWxfZmsyX3BlcjJwZXJfZmsKKyAgICBGT1JFSUdOIEtFWSAocGFyZW50X2lk MSwgcGFyZW50X2lkMiwgUEVSSU9EIHZhbGlkX2F0KQorICAgIFJFRkVSRU5DRVMgdGVtcG9yYWxf cGVyMgorICAgIE9OIERFTEVURSBTRVQgREVGQVVMVCBPTiBVUERBVEUgU0VUIERFRkFVTFQ7Cist LSBsZWZ0b3ZlcnMgb24gYm90aCBzaWRlczoKK1VQREFURSB0ZW1wb3JhbF9wZXIyIEZPUiBQT1JU SU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMTktMDEtMDEnIFRPICcyMDIwLTAxLTAxJyBTRVQgaWQx ID0gJ1s3LDgpJywgaWQyID0gJ1s3LDgpJyBXSEVSRSBpZDEgPSAnWzYsNyknOworU0VMRUNUICog RlJPTSB0ZW1wb3JhbF9mazJfcGVyMnBlciBXSEVSRSBpZCA9ICdbMTAwLDEwMF0nIE9SREVSIEJZ IGlkLCB2YWxpZF9hdDsKKy0tIG5vbi1GUE8gdXBkYXRlOgorVVBEQVRFIHRlbXBvcmFsX3BlcjIg U0VUIGlkMSA9ICdbNyw4KScsIGlkMiA9ICdbNyw4KScgV0hFUkUgaWQxID0gJ1s2LDcpJzsKK1NF TEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX3BlcjJwZXIgV0hFUkUgaWQgPSAnWzEwMCwxMDBdJyBP UkRFUiBCWSBpZCwgdmFsaWRfYXQ7CistLSBGSyBhY3Jvc3MgdHdvIHJlZmVyZW5jZWQgcm93czoK K0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlcjIgKGlkMSwgaWQyLCB2YWxpZF9mcm9tLCB2YWxpZF90 aWwpIFZBTFVFUyAoJ1s4LDkpJywgJ1s4LDkpJywgJzIwMTgtMDEtMDEnLCAnMjAyMC0wMS0wMScp OworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyMiAoaWQxLCBpZDIsIHZhbGlkX2Zyb20sIHZhbGlk X3RpbCkgVkFMVUVTICgnWzgsOSknLCAnWzgsOSknLCAnMjAyMC0wMS0wMScsICcyMDIxLTAxLTAx Jyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9mazJfcGVyMnBlciAoaWQsIHZhbGlkX2Zyb20sIHZh bGlkX3RpbCwgcGFyZW50X2lkMSwgcGFyZW50X2lkMikgVkFMVUVTICgnWzIwMCwyMDBdJywgJzIw MTgtMDEtMDEnLCAnMjAyMS0wMS0wMScsICdbOCw5KScsICdbOCw5KScpOworVVBEQVRFIHRlbXBv cmFsX3BlcjIgU0VUIGlkMSA9ICdbOSwxMCknLCBpZDIgPSAnWzksMTApJyBXSEVSRSBpZDEgPSAn WzgsOSknIEFORCB2YWxpZF9hdCBAPiAnMjAxOS0wMS0wMSc6OmRhdGU7CitTRUxFQ1QgKiBGUk9N IHRlbXBvcmFsX2ZrMl9wZXIycGVyIFdIRVJFIGlkID0gJ1syMDAsMjAwXScgT1JERVIgQlkgaWQs IHZhbGlkX2F0OworCistLQorLS0gdGVzdCBGSyByZWZlcmVuY2VkIGRlbGV0ZXMgU0VUIERFRkFV TFQgKHR3byBzY2FsYXIgY29scykKKy0tCisKK1RSVU5DQVRFIHRlbXBvcmFsX3BlcjIsIHRlbXBv cmFsX2ZrMl9wZXIycGVyOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyMiAoaWQxLCBpZDIsIHZh bGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWy0xLC0xXScsICdbLTEsLTFdJywgbnVsbCwg bnVsbCk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIyIChpZDEsIGlkMiwgdmFsaWRfZnJvbSwg dmFsaWRfdGlsKSBWQUxVRVMgKCdbNiw3KScsICdbNiw3KScsICcyMDE4LTAxLTAxJywgJzIwMjEt MDEtMDEnKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrMl9wZXIycGVyIChpZCwgdmFsaWRfZnJv bSwgdmFsaWRfdGlsLCBwYXJlbnRfaWQxLCBwYXJlbnRfaWQyKSBWQUxVRVMgKCdbMTAwLDEwMF0n LCAnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJywgJ1s2LDcpJywgJ1s2LDcpJyk7CistLSBsZWZ0 b3ZlcnMgb24gYm90aCBzaWRlczoKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3BlcjIgRk9SIFBPUlRJ T04gT0YgdmFsaWRfYXQgRlJPTSAnMjAxOS0wMS0wMScgVE8gJzIwMjAtMDEtMDEnIFdIRVJFIGlk MSA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9wZXIycGVyIFdIRVJFIGlk ID0gJ1sxMDAsMTAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworLS0gbm9uLUZQTyB1cGRhdGU6 CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9wZXIyIFdIRVJFIGlkMSA9ICdbNiw3KSc7CitTRUxFQ1Qg KiBGUk9NIHRlbXBvcmFsX2ZrMl9wZXIycGVyIFdIRVJFIGlkID0gJ1sxMDAsMTAwXScgT1JERVIg QlkgaWQsIHZhbGlkX2F0OworLS0gRksgYWNyb3NzIHR3byByZWZlcmVuY2VkIHJvd3M6CitJTlNF UlQgSU5UTyB0ZW1wb3JhbF9wZXIyIChpZDEsIGlkMiwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBW QUxVRVMgKCdbOCw5KScsICdbOCw5KScsICcyMDE4LTAxLTAxJywgJzIwMjAtMDEtMDEnKTsKK0lO U0VSVCBJTlRPIHRlbXBvcmFsX3BlcjIgKGlkMSwgaWQyLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwp IFZBTFVFUyAoJ1s4LDkpJywgJ1s4LDkpJywgJzIwMjAtMDEtMDEnLCAnMjAyMS0wMS0wMScpOwor SU5TRVJUIElOVE8gdGVtcG9yYWxfZmsyX3BlcjJwZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90 aWwsIHBhcmVudF9pZDEsIHBhcmVudF9pZDIpIFZBTFVFUyAoJ1syMDAsMjAwXScsICcyMDE4LTAx LTAxJywgJzIwMjEtMDEtMDEnLCAnWzgsOSknLCAnWzgsOSknKTsKK0RFTEVURSBGUk9NIHRlbXBv cmFsX3BlcjIgV0hFUkUgaWQxID0gJ1s4LDkpJyBBTkQgdmFsaWRfYXQgQD4gJzIwMTktMDEtMDEn OjpkYXRlOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9mazJfcGVyMnBlciBXSEVSRSBpZCA9ICdb MjAwLDIwMF0nIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKworLS0KKy0tIHRlc3QgRksgcmVmZXJl bmNlZCBkZWxldGVzIFNFVCBERUZBVUxUICh0d28gc2NhbGFyIGNvbHMsIFNFVCBERUZBVUxUIHN1 YnNldCkKKy0tCisKK1RSVU5DQVRFIHRlbXBvcmFsX3BlcjIsIHRlbXBvcmFsX2ZrMl9wZXIycGVy OworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyMiAoaWQxLCBpZDIsIHZhbGlkX2Zyb20sIHZhbGlk X3RpbCkgVkFMVUVTICgnWy0xLC0xXScsICdbNiw3KScsIG51bGwsIG51bGwpOworSU5TRVJUIElO VE8gdGVtcG9yYWxfcGVyMiAoaWQxLCBpZDIsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVT ICgnWzYsNyknLCAnWzYsNyknLCAnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJyk7CitJTlNFUlQg SU5UTyB0ZW1wb3JhbF9mazJfcGVyMnBlciAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCwgcGFy ZW50X2lkMSwgcGFyZW50X2lkMikgVkFMVUVTICgnWzEwMCwxMDBdJywgJzIwMTgtMDEtMDEnLCAn MjAyMS0wMS0wMScsICdbNiw3KScsICdbNiw3KScpOworLS0gZmFpbHMgYmVjYXVzZSB5b3UgY2Fu J3Qgc2V0IHRoZSBQRVJJT0QgY29sdW1uOgorQUxURVIgVEFCTEUgdGVtcG9yYWxfZmsyX3BlcjJw ZXIKKyAgQUxURVIgQ09MVU1OIHBhcmVudF9pZDEgU0VUIERFRkFVTFQgJ1stMSwtMV0nLAorICBE Uk9QIENPTlNUUkFJTlQgdGVtcG9yYWxfZmsyX3BlcjJwZXJfZmssCisgIEFERCBDT05TVFJBSU5U IHRlbXBvcmFsX2ZrMl9wZXIycGVyX2ZrCisgICAgRk9SRUlHTiBLRVkgKHBhcmVudF9pZDEsIHBh cmVudF9pZDIsIFBFUklPRCB2YWxpZF9hdCkKKyAgICBSRUZFUkVOQ0VTIHRlbXBvcmFsX3BlcjIK KyAgICBPTiBERUxFVEUgU0VUIERFRkFVTFQgKHZhbGlkX2F0KSBPTiBVUERBVEUgU0VUIERFRkFV TFQ7CistLSBvazoKK0FMVEVSIFRBQkxFIHRlbXBvcmFsX2ZrMl9wZXIycGVyCisgIEFMVEVSIENP TFVNTiBwYXJlbnRfaWQxIFNFVCBERUZBVUxUICdbLTEsLTFdJywKKyAgRFJPUCBDT05TVFJBSU5U IHRlbXBvcmFsX2ZrMl9wZXIycGVyX2ZrLAorICBBREQgQ09OU1RSQUlOVCB0ZW1wb3JhbF9mazJf cGVyMnBlcl9maworICAgIEZPUkVJR04gS0VZIChwYXJlbnRfaWQxLCBwYXJlbnRfaWQyLCBQRVJJ T0QgdmFsaWRfYXQpCisgICAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9wZXIyCisgICAgT04gREVMRVRF IFNFVCBERUZBVUxUIChwYXJlbnRfaWQxKSBPTiBVUERBVEUgU0VUIERFRkFVTFQ7CistLSBsZWZ0 b3ZlcnMgb24gYm90aCBzaWRlczoKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3BlcjIgRk9SIFBPUlRJ T04gT0YgdmFsaWRfYXQgRlJPTSAnMjAxOS0wMS0wMScgVE8gJzIwMjAtMDEtMDEnIFdIRVJFIGlk MSA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9wZXIycGVyIFdIRVJFIGlk ID0gJ1sxMDAsMTAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworLS0gbm9uLUZQTyB1cGRhdGU6 CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9wZXIyIFdIRVJFIGlkMSA9ICdbNiw3KSc7CitTRUxFQ1Qg KiBGUk9NIHRlbXBvcmFsX2ZrMl9wZXIycGVyIFdIRVJFIGlkID0gJ1sxMDAsMTAwXScgT1JERVIg QlkgaWQsIHZhbGlkX2F0OworLS0gRksgYWNyb3NzIHR3byByZWZlcmVuY2VkIHJvd3M6CitJTlNF UlQgSU5UTyB0ZW1wb3JhbF9wZXIyIChpZDEsIGlkMiwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBW QUxVRVMgKCdbOCw5KScsICdbOCw5KScsICcyMDE4LTAxLTAxJywgJzIwMjAtMDEtMDEnKTsKK0lO U0VSVCBJTlRPIHRlbXBvcmFsX3BlcjIgKGlkMSwgaWQyLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwp IFZBTFVFUyAoJ1s4LDkpJywgJ1s4LDkpJywgJzIwMjAtMDEtMDEnLCAnMjAyMS0wMS0wMScpOwor SU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyMiAoaWQxLCBpZDIsIHZhbGlkX2Zyb20sIHZhbGlkX3Rp bCkgVkFMVUVTICgnWy0xLC0xXScsICdbOCw5KScsIG51bGwsIG51bGwpOworSU5TRVJUIElOVE8g dGVtcG9yYWxfZmsyX3BlcjJwZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwsIHBhcmVudF9p ZDEsIHBhcmVudF9pZDIpIFZBTFVFUyAoJ1syMDAsMjAwXScsICcyMDE4LTAxLTAxJywgJzIwMjEt MDEtMDEnLCAnWzgsOSknLCAnWzgsOSknKTsKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3BlcjIgV0hF UkUgaWQxID0gJ1s4LDkpJyBBTkQgdmFsaWRfYXQgQD4gJzIwMTktMDEtMDEnOjpkYXRlOworU0VM RUNUICogRlJPTSB0ZW1wb3JhbF9mazJfcGVyMnBlciBXSEVSRSBpZCA9ICdbMjAwLDIwMF0nIE9S REVSIEJZIGlkLCB2YWxpZF9hdDsKKworLS0KKy0tIHRlc3QgRk9SRUlHTiBLRVksIHJhbmdlIHJl ZmVyZW5jZXMgUEVSSU9ECistLQorCistLSB0ZXN0IHRhYmxlIHNldHVwCitEUk9QIFRBQkxFIHRl bXBvcmFsX3BlciBDQVNDQURFOworQ1JFQVRFIFRBQkxFIHRlbXBvcmFsX3BlciAoCisgIGlkIGlu dDRyYW5nZSwKKyAgdmFsaWRfZnJvbSBkYXRlLAorICB2YWxpZF90aWwgZGF0ZSwKKyAgUEVSSU9E IEZPUiB2YWxpZF9hdCAodmFsaWRfZnJvbSwgdmFsaWRfdGlsKQorKTsKK0FMVEVSIFRBQkxFIHRl bXBvcmFsX3BlcgorICBBREQgQ09OU1RSQUlOVCB0ZW1wb3JhbF9wZXJfcGsKKyAgUFJJTUFSWSBL RVkgKGlkLCB2YWxpZF9hdCBXSVRIT1VUIE9WRVJMQVBTKTsKKworLS0gQ2FuJ3QgY3JlYXRlIGEg Rksgd2l0aCBhIG1pc21hdGNoZWQgcmFuZ2UgdHlwZQorQ1JFQVRFIFRBQkxFIHRlbXBvcmFsX2Zr X3JuZzJwZXIgKAorICBpZCBpbnQ0cmFuZ2UsCisgIHZhbGlkX2F0IGludDRyYW5nZSwKKyAgcGFy ZW50X2lkIGludDRyYW5nZSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19ybmcycGVyX3BrIFBS SU1BUlkgS0VZIChpZCwgdmFsaWRfYXQgV0lUSE9VVCBPVkVSTEFQUyksCisgIENPTlNUUkFJTlQg dGVtcG9yYWxfZmtfcm5nMnBlcl9mayBGT1JFSUdOIEtFWSAocGFyZW50X2lkLCBQRVJJT0QgdmFs aWRfYXQpCisgICAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9wZXIgKGlkLCBQRVJJT0QgdmFsaWRfYXQp CispOworCistLSB3b3JrczogUEVSSU9EIGZvciByZWZlcmVuY2VkLCByYW5nZSBmb3IgcmVmZXJl bmNpbmcKK0NSRUFURSBUQUJMRSB0ZW1wb3JhbF9ma19ybmcycGVyICgKKyAgaWQgaW50NHJhbmdl LAorICB2YWxpZF9hdCBkYXRlcmFuZ2UsCisgIHBhcmVudF9pZCBpbnQ0cmFuZ2UsCisgIENPTlNU UkFJTlQgdGVtcG9yYWxfZmtfcm5nMnBlcl9wayBQUklNQVJZIEtFWSAoaWQsIHZhbGlkX2F0IFdJ VEhPVVQgT1ZFUkxBUFMpLAorICBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3JuZzJwZXJfZmsgRk9S RUlHTiBLRVkgKHBhcmVudF9pZCwgUEVSSU9EIHZhbGlkX2F0KQorICAgIFJFRkVSRU5DRVMgdGVt cG9yYWxfcGVyIChpZCwgUEVSSU9EIHZhbGlkX2F0KQorKTsKK1xkIHRlbXBvcmFsX2ZrX3JuZzJw ZXIKK0RST1AgVEFCTEUgdGVtcG9yYWxfZmtfcm5nMnBlcjsKKworLS0gd2l0aCBtaXNtYXRjaGVk IFBFUklPRCBjb2x1bW5zOgorCistLSAocGFyZW50X2lkLCBQRVJJT0QgdmFsaWRfYXQpIFJFRkVS RU5DRVMgKGlkLCB2YWxpZF9hdCkKKy0tIFJFRkVSRU5DRVMgcGFydCBzaG91bGQgc3BlY2lmeSBQ RVJJT0QKK0NSRUFURSBUQUJMRSB0ZW1wb3JhbF9ma19ybmcycGVyICgKKyAgaWQgaW50NHJhbmdl LAorICB2YWxpZF9hdCBkYXRlcmFuZ2UsCisgIHBhcmVudF9pZCBpbnQ0cmFuZ2UsCisgIENPTlNU UkFJTlQgdGVtcG9yYWxfZmtfcm5nMnBlcl9wayBQUklNQVJZIEtFWSAoaWQsIHZhbGlkX2F0IFdJ VEhPVVQgT1ZFUkxBUFMpLAorICBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3JuZzJwZXJfZmsgRk9S RUlHTiBLRVkgKHBhcmVudF9pZCwgUEVSSU9EIHZhbGlkX2F0KQorICAgIFJFRkVSRU5DRVMgdGVt cG9yYWxfcGVyIChpZCwgdmFsaWRfYXQpCispOworLS0gKHBhcmVudF9pZCwgdmFsaWRfYXQpIFJF RkVSRU5DRVMgKGlkLCB2YWxpZF9hdCkKKy0tIGJvdGggc2hvdWxkIHNwZWNpZnkgUEVSSU9EOgor Q1JFQVRFIFRBQkxFIHRlbXBvcmFsX2ZrX3JuZzJwZXIgKAorICBpZCBpbnQ0cmFuZ2UsCisgIHZh bGlkX2F0IGRhdGVyYW5nZSwKKyAgcGFyZW50X2lkIGludDRyYW5nZSwKKyAgQ09OU1RSQUlOVCB0 ZW1wb3JhbF9ma19ybmcycGVyX3BrIFBSSU1BUlkgS0VZIChpZCwgdmFsaWRfYXQgV0lUSE9VVCBP VkVSTEFQUyksCisgIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcm5nMnBlcl9mayBGT1JFSUdOIEtF WSAocGFyZW50X2lkLCB2YWxpZF9hdCkKKyAgICBSRUZFUkVOQ0VTIHRlbXBvcmFsX3BlciAoaWQs IHZhbGlkX2F0KQorKTsKKy0tIChwYXJlbnRfaWQsIHZhbGlkX2F0KSBSRUZFUkVOQ0VTIChpZCwg UEVSSU9EIHZhbGlkX2F0KQorLS0gRk9SRUlHTiBLRVkgcGFydCBzaG91bGQgc3BlY2lmeSBQRVJJ T0QKK0NSRUFURSBUQUJMRSB0ZW1wb3JhbF9ma19ybmcycGVyICgKKyAgaWQgaW50NHJhbmdlLAor ICB2YWxpZF9hdCBkYXRlcmFuZ2UsCisgIHBhcmVudF9pZCBpbnQ0cmFuZ2UsCisgIENPTlNUUkFJ TlQgdGVtcG9yYWxfZmtfcm5nMnBlcl9wayBQUklNQVJZIEtFWSAoaWQsIHZhbGlkX2F0IFdJVEhP VVQgT1ZFUkxBUFMpLAorICBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3JuZzJwZXJfZmsgRk9SRUlH TiBLRVkgKHBhcmVudF9pZCwgdmFsaWRfYXQpCisgICAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9wZXIg KGlkLCBQRVJJT0QgdmFsaWRfYXQpCispOworLS0gKHBhcmVudF9pZCwgdmFsaWRfYXQpIFJFRkVS RU5DRVMgW2ltcGxpY2l0XQorLS0gRk9SRUlHTiBLRVkgcGFydCBzaG91bGQgc3BlY2lmeSBQRVJJ T0QKK0NSRUFURSBUQUJMRSB0ZW1wb3JhbF9ma19ybmcycGVyICgKKyAgaWQgaW50NHJhbmdlLAor ICB2YWxpZF9hdCBkYXRlcmFuZ2UsCisgIHBhcmVudF9pZCBpbnQ0cmFuZ2UsCisgIENPTlNUUkFJ TlQgdGVtcG9yYWxfZmtfcm5nMnBlcl9wayBQUklNQVJZIEtFWSAoaWQsIHZhbGlkX2F0IFdJVEhP VVQgT1ZFUkxBUFMpLAorICBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3JuZzJwZXJfZmsgRk9SRUlH TiBLRVkgKHBhcmVudF9pZCwgdmFsaWRfYXQpCisgICAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9wZXIK Kyk7CistLSAocGFyZW50X2lkLCBQRVJJT0QgdmFsaWRfYXQpIFJFRkVSRU5DRVMgKGlkKQorQ1JF QVRFIFRBQkxFIHRlbXBvcmFsX2ZrX3JuZzJwZXIgKAorICBpZCBpbnQ0cmFuZ2UsCisgIHZhbGlk X2F0IGRhdGVyYW5nZSwKKyAgcGFyZW50X2lkIGludDRyYW5nZSwKKyAgQ09OU1RSQUlOVCB0ZW1w b3JhbF9ma19ybmcycGVyX3BrIFBSSU1BUlkgS0VZIChpZCwgdmFsaWRfYXQgV0lUSE9VVCBPVkVS TEFQUyksCisgIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcm5nMnBlcl9mayBGT1JFSUdOIEtFWSAo cGFyZW50X2lkLCBQRVJJT0QgdmFsaWRfYXQpCisgICAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9wZXIg KGlkKQorKTsKKy0tIChwYXJlbnRfaWQpIFJFRkVSRU5DRVMgKGlkLCBQRVJJT0QgdmFsaWRfYXQp CitDUkVBVEUgVEFCTEUgdGVtcG9yYWxfZmtfcm5nMnBlciAoCisgIGlkIGludDRyYW5nZSwKKyAg dmFsaWRfYXQgZGF0ZXJhbmdlLAorICBwYXJlbnRfaWQgaW50NHJhbmdlLAorICBDT05TVFJBSU5U IHRlbXBvcmFsX2ZrX3JuZzJwZXJfcGsgUFJJTUFSWSBLRVkgKGlkLCB2YWxpZF9hdCBXSVRIT1VU IE9WRVJMQVBTKSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19ybmcycGVyX2ZrIEZPUkVJR04g S0VZIChwYXJlbnRfaWQpCisgICAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9wZXIgKGlkLCBQRVJJT0Qg dmFsaWRfYXQpCispOworLS0gd2l0aCBpbmZlcnJlZCBQSyBvbiB0aGUgcmVmZXJlbmNlZCB0YWJs ZToKKy0tIChwYXJlbnRfaWQsIFBFUklPRCB2YWxpZF9hdCkgUkVGRVJFTkNFUyBbaW1wbGljaXRd CitDUkVBVEUgVEFCTEUgdGVtcG9yYWxfZmtfcm5nMnBlciAoCisgIGlkIGludDRyYW5nZSwKKyAg dmFsaWRfYXQgZGF0ZXJhbmdlLAorICBwYXJlbnRfaWQgaW50NHJhbmdlLAorICBDT05TVFJBSU5U IHRlbXBvcmFsX2ZrX3JuZzJwZXJfcGsgUFJJTUFSWSBLRVkgKGlkLCB2YWxpZF9hdCBXSVRIT1VU IE9WRVJMQVBTKSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19ybmcycGVyX2ZrIEZPUkVJR04g S0VZIChwYXJlbnRfaWQsIFBFUklPRCB2YWxpZF9hdCkKKyAgICBSRUZFUkVOQ0VTIHRlbXBvcmFs X3BlcgorKTsKK0RST1AgVEFCTEUgdGVtcG9yYWxfZmtfcm5nMnBlcjsKKy0tIChwYXJlbnRfaWQp IFJFRkVSRU5DRVMgW2ltcGxpY2l0XQorQ1JFQVRFIFRBQkxFIHRlbXBvcmFsX2ZrX3JuZzJwZXIg KAorICBpZCBpbnQ0cmFuZ2UsCisgIHZhbGlkX2F0IGRhdGVyYW5nZSwKKyAgcGFyZW50X2lkIGlu dDRyYW5nZSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19ybmcycGVyX3BrIFBSSU1BUlkgS0VZ IChpZCwgdmFsaWRfYXQgV0lUSE9VVCBPVkVSTEFQUyksCisgIENPTlNUUkFJTlQgdGVtcG9yYWxf Zmtfcm5nMnBlcl9mayBGT1JFSUdOIEtFWSAocGFyZW50X2lkKQorICAgIFJFRkVSRU5DRVMgdGVt cG9yYWxfcGVyCispOworCistLSBzaG91bGQgZmFpbCBiZWNhdXNlIG9mIGR1cGxpY2F0ZSByZWZl cmVuY2VkIGNvbHVtbnM6CitDUkVBVEUgVEFCTEUgdGVtcG9yYWxfZmtfcm5nMnBlciAoCisgIGlk IGludDRyYW5nZSwKKyAgdmFsaWRfYXQgZGF0ZXJhbmdlLAorICBwYXJlbnRfaWQgaW50NHJhbmdl LAorICBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3JuZzJwZXJfcGsgUFJJTUFSWSBLRVkgKGlkLCB2 YWxpZF9hdCBXSVRIT1VUIE9WRVJMQVBTKSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19ybmcy cGVyX2ZrIEZPUkVJR04gS0VZIChwYXJlbnRfaWQsIFBFUklPRCBwYXJlbnRfaWQpCisgICAgUkVG RVJFTkNFUyB0ZW1wb3JhbF9wZXIgKGlkLCBQRVJJT0QgaWQpCispOworCistLSBUd28gc2NhbGFy IGNvbHVtbnMKK0RST1AgVEFCTEUgdGVtcG9yYWxfcGVyMiBDQVNDQURFOworQ1JFQVRFIFRBQkxF IHRlbXBvcmFsX3BlcjIgKAorICBpZDEgaW50NHJhbmdlLAorICBpZDIgaW50NHJhbmdlLAorICB2 YWxpZF9mcm9tIGRhdGUsCisgIHZhbGlkX3RpbCBkYXRlLAorICBQRVJJT0QgRk9SIHZhbGlkX2F0 ICh2YWxpZF9mcm9tLCB2YWxpZF90aWwpLAorICBDT05TVFJBSU5UIHRlbXBvcmFsX3BlcjJfcGsg UFJJTUFSWSBLRVkgKGlkMSwgaWQyLCB2YWxpZF9hdCBXSVRIT1VUIE9WRVJMQVBTKQorKTsKKwor Q1JFQVRFIFRBQkxFIHRlbXBvcmFsX2ZrMl9ybmcycGVyICgKKyAgaWQgaW50NHJhbmdlLAorICB2 YWxpZF9hdCBkYXRlcmFuZ2UsCisgIHBhcmVudF9pZDEgaW50NHJhbmdlLAorICBwYXJlbnRfaWQy IGludDRyYW5nZSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9mazJfcm5nMnBlcl9wayBQUklNQVJZ IEtFWSAoaWQsIHZhbGlkX2F0IFdJVEhPVVQgT1ZFUkxBUFMpLAorICBDT05TVFJBSU5UIHRlbXBv cmFsX2ZrMl9ybmcycGVyX2ZrIEZPUkVJR04gS0VZIChwYXJlbnRfaWQxLCBwYXJlbnRfaWQyLCBQ RVJJT0QgdmFsaWRfYXQpCisgICAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9wZXIyIChpZDEsIGlkMiwg UEVSSU9EIHZhbGlkX2F0KQorKTsKK1xkIHRlbXBvcmFsX2ZrMl9ybmcycGVyCitEUk9QIFRBQkxF IHRlbXBvcmFsX2ZrMl9ybmcycGVyOworCistLQorLS0gdGVzdCBBTFRFUiBUQUJMRSBBREQgQ09O U1RSQUlOVAorLS0KKworQ1JFQVRFIFRBQkxFIHRlbXBvcmFsX2ZrX3JuZzJwZXIgKAorICBpZCBp bnQ0cmFuZ2UsCisgIHZhbGlkX2F0IGRhdGVyYW5nZSwKKyAgcGFyZW50X2lkIGludDRyYW5nZSwK KyAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19ybmcycGVyX3BrIFBSSU1BUlkgS0VZIChpZCwgdmFs aWRfYXQgV0lUSE9VVCBPVkVSTEFQUykKKyk7CitBTFRFUiBUQUJMRSB0ZW1wb3JhbF9ma19ybmcy cGVyCisgIEFERCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3JuZzJwZXJfZmsKKyAgRk9SRUlHTiBL RVkgKHBhcmVudF9pZCwgUEVSSU9EIHZhbGlkX2F0KQorICBSRUZFUkVOQ0VTIHRlbXBvcmFsX3Bl ciAoaWQsIFBFUklPRCB2YWxpZF9hdCk7CistLSBUd28gc2NhbGFyIGNvbHVtbnM6CitDUkVBVEUg VEFCTEUgdGVtcG9yYWxfZmsyX3JuZzJwZXIgKAorICBpZCBpbnQ0cmFuZ2UsCisgIHZhbGlkX2F0 IGRhdGVyYW5nZSwKKyAgcGFyZW50X2lkMSBpbnQ0cmFuZ2UsCisgIHBhcmVudF9pZDIgaW50NHJh bmdlLAorICBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrMl9ybmcycGVyX3BrIFBSSU1BUlkgS0VZIChp ZCwgdmFsaWRfYXQgV0lUSE9VVCBPVkVSTEFQUykKKyk7CitBTFRFUiBUQUJMRSB0ZW1wb3JhbF9m azJfcm5nMnBlcgorICBBREQgQ09OU1RSQUlOVCB0ZW1wb3JhbF9mazJfcm5nMnBlcl9maworICBG T1JFSUdOIEtFWSAocGFyZW50X2lkMSwgcGFyZW50X2lkMiwgUEVSSU9EIHZhbGlkX2F0KQorICBS RUZFUkVOQ0VTIHRlbXBvcmFsX3BlcjIgKGlkMSwgaWQyLCBQRVJJT0QgdmFsaWRfYXQpOworXGQg dGVtcG9yYWxfZmsyX3JuZzJwZXIKKworLS0gd2l0aCBpbmZlcnJlZCBQSyBvbiB0aGUgcmVmZXJl bmNlZCB0YWJsZSwgYW5kIHdyb25nIGNvbHVtbiB0eXBlOgorQUxURVIgVEFCTEUgdGVtcG9yYWxf Zmtfcm5nMnBlcgorICBEUk9QIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcm5nMnBlcl9maywKKyAg QUxURVIgQ09MVU1OIHZhbGlkX2F0IFRZUEUgdHNyYW5nZSBVU0lORyB0c3JhbmdlKGxvd2VyKHZh bGlkX2F0KSwgdXBwZXIodmFsaWRfYXQpKTsKK0FMVEVSIFRBQkxFIHRlbXBvcmFsX2ZrX3JuZzJw ZXIKKyAgQUREIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcm5nMnBlcl9maworICBGT1JFSUdOIEtF WSAocGFyZW50X2lkLCBQRVJJT0QgdmFsaWRfYXQpCisgIFJFRkVSRU5DRVMgdGVtcG9yYWxfcGVy OworQUxURVIgVEFCTEUgdGVtcG9yYWxfZmtfcm5nMnBlcgorICBBTFRFUiBDT0xVTU4gdmFsaWRf YXQgVFlQRSBkYXRlcmFuZ2UgVVNJTkcgZGF0ZXJhbmdlKGxvd2VyKHZhbGlkX2F0KTo6ZGF0ZSwg dXBwZXIodmFsaWRfYXQpOjpkYXRlKTsKKworLS0gd2l0aCBpbmZlcnJlZCBQSyBvbiB0aGUgcmVm ZXJlbmNlZCB0YWJsZToKK0FMVEVSIFRBQkxFIHRlbXBvcmFsX2ZrX3JuZzJwZXIKKyAgQUREIENP TlNUUkFJTlQgdGVtcG9yYWxfZmtfcm5nMnBlcl9maworICBGT1JFSUdOIEtFWSAocGFyZW50X2lk LCBQRVJJT0QgdmFsaWRfYXQpCisgIFJFRkVSRU5DRVMgdGVtcG9yYWxfcGVyOworCistLSBzaG91 bGQgZmFpbCBiZWNhdXNlIG9mIGR1cGxpY2F0ZSByZWZlcmVuY2VkIGNvbHVtbnM6CitBTFRFUiBU QUJMRSB0ZW1wb3JhbF9ma19ybmcycGVyCisgIEFERCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3Ju ZzJwZXJfZmsyCisgIEZPUkVJR04gS0VZIChwYXJlbnRfaWQsIFBFUklPRCBwYXJlbnRfaWQpCisg IFJFRkVSRU5DRVMgdGVtcG9yYWxfcGVyIChpZCwgUEVSSU9EIGlkKTsKKworLS0KKy0tIHRlc3Qg d2l0aCByb3dzIGFscmVhZHkKKy0tCisKK0RFTEVURSBGUk9NIHRlbXBvcmFsX2ZrX3JuZzJwZXI7 CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9wZXI7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIgKGlk LCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUworICAoJ1sxLDIpJywgJzIwMTgtMDEtMDIn LCAnMjAxOC0wMi0wMycpLAorICAoJ1sxLDIpJywgJzIwMTgtMDMtMDMnLCAnMjAxOC0wNC0wNCcp LAorICAoJ1syLDMpJywgJzIwMTgtMDEtMDEnLCAnMjAxOC0wMS0wNScpLAorICAoJ1szLDQpJywg JzIwMTgtMDEtMDEnLCBOVUxMKTsKKworQUxURVIgVEFCTEUgdGVtcG9yYWxfZmtfcm5nMnBlcgor ICBEUk9QIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcm5nMnBlcl9mazsKK0lOU0VSVCBJTlRPIHRl bXBvcmFsX2ZrX3JuZzJwZXIgKGlkLCB2YWxpZF9hdCwgcGFyZW50X2lkKSBWQUxVRVMgKCdbMSwy KScsICdbMjAxOC0wMS0wMiwyMDE4LTAyLTAxKScsICdbMSwyKScpOworQUxURVIgVEFCTEUgdGVt cG9yYWxfZmtfcm5nMnBlcgorICBBREQgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19ybmcycGVyX2Zr CisgIEZPUkVJR04gS0VZIChwYXJlbnRfaWQsIFBFUklPRCB2YWxpZF9hdCkKKyAgUkVGRVJFTkNF UyB0ZW1wb3JhbF9wZXI7CitBTFRFUiBUQUJMRSB0ZW1wb3JhbF9ma19ybmcycGVyCisgIERST1Ag Q09OU1RSQUlOVCB0ZW1wb3JhbF9ma19ybmcycGVyX2ZrOworSU5TRVJUIElOVE8gdGVtcG9yYWxf Zmtfcm5nMnBlciAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQpIFZBTFVFUyAoJ1syLDMpJywgJ1sy MDE4LTAxLTAyLDIwMTgtMDQtMDEpJywgJ1sxLDIpJyk7CistLSBzaG91bGQgZmFpbDoKK0FMVEVS IFRBQkxFIHRlbXBvcmFsX2ZrX3JuZzJwZXIKKyAgQUREIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtf cm5nMnBlcl9maworICBGT1JFSUdOIEtFWSAocGFyZW50X2lkLCBQRVJJT0QgdmFsaWRfYXQpCisg IFJFRkVSRU5DRVMgdGVtcG9yYWxfcGVyOworLS0gb2theSBhZ2FpbjoKK0RFTEVURSBGUk9NIHRl bXBvcmFsX2ZrX3JuZzJwZXI7CitBTFRFUiBUQUJMRSB0ZW1wb3JhbF9ma19ybmcycGVyCisgIEFE RCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3JuZzJwZXJfZmsKKyAgRk9SRUlHTiBLRVkgKHBhcmVu dF9pZCwgUEVSSU9EIHZhbGlkX2F0KQorICBSRUZFUkVOQ0VTIHRlbXBvcmFsX3BlcjsKKworLS0K Ky0tIHRlc3QgcGdfZ2V0X2NvbnN0cmFpbnRkZWYKKy0tCisKK1NFTEVDVCBwZ19nZXRfY29uc3Ry YWludGRlZihvaWQpIEZST00gcGdfY29uc3RyYWludCBXSEVSRSBjb25uYW1lID0gJ3RlbXBvcmFs X2ZrX3JuZzJwZXJfZmsnOworCistLQorLS0gdGVzdCBGSyByZWZlcmVuY2luZyBpbnNlcnRzCist LQorCitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ma19ybmcycGVyIChpZCwgdmFsaWRfYXQsIHBhcmVu dF9pZCkgVkFMVUVTICgnWzEsMiknLCAnWzIwMTgtMDEtMDIsMjAxOC0wMi0wMSknLCAnWzEsMikn KTsKKy0tIHNob3VsZCBmYWlsOgorSU5TRVJUIElOVE8gdGVtcG9yYWxfZmtfcm5nMnBlciAoaWQs IHZhbGlkX2F0LCBwYXJlbnRfaWQpIFZBTFVFUyAoJ1syLDMpJywgJ1syMDE4LTAxLTAyLDIwMTgt MDQtMDEpJywgJ1sxLDIpJyk7CistLSBub3cgaXQgc2hvdWxkIHdvcms6CitJTlNFUlQgSU5UTyB0 ZW1wb3JhbF9wZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1sxLDIpJywg JzIwMTgtMDItMDMnLCAnMjAxOC0wMy0wMycpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmtfcm5n MnBlciAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQpIFZBTFVFUyAoJ1syLDMpJywgJ1syMDE4LTAx LTAyLDIwMTgtMDQtMDEpJywgJ1sxLDIpJyk7CisKKy0tCistLSB0ZXN0IEZLIHJlZmVyZW5jaW5n IHVwZGF0ZXMKKy0tCisKKy0tIHNsaWRlIHRoZSBlZGdlIGFjcm9zcyBhIHJlZmVyZW5jZWQgdHJh bnNpdGlvbjoKK1VQREFURSB0ZW1wb3JhbF9ma19ybmcycGVyIFNFVCB2YWxpZF9hdCA9ICdbMjAx OC0wMS0wMiwyMDE4LTAyLTIwKScgV0hFUkUgaWQgPSAnWzEsMiknOworLS0gc2hvdWxkIGZhaWw6 CitVUERBVEUgdGVtcG9yYWxfZmtfcm5nMnBlciBTRVQgdmFsaWRfYXQgPSAnWzIwMTgtMDEtMDIs MjAxOC0wNS0wMSknIFdIRVJFIGlkID0gJ1sxLDIpJzsKK1VQREFURSB0ZW1wb3JhbF9ma19ybmcy cGVyIFNFVCBwYXJlbnRfaWQgPSAnWzgsOSknIFdIRVJFIGlkID0gJ1sxLDIpJzsKKworLS0gQUxU RVIgRksgREVGRVJSQUJMRQorCitCRUdJTjsKKyAgSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyIChp ZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMKKyAgICAoJ1s1LDYpJywgJzIwMTgtMDEt MDEnLCAnMjAxOC0wMi0wMScpLAorICAgICgnWzUsNiknLCAnMjAxOC0wMi0wMScsICcyMDE4LTAz LTAxJyk7CisgIElOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrX3JuZzJwZXIgKGlkLCB2YWxpZF9hdCwg cGFyZW50X2lkKSBWQUxVRVMKKyAgICAoJ1szLDQpJywgJ1syMDE4LTAxLTA1LDIwMTgtMDEtMTAp JywgJ1s1LDYpJyk7CisgIEFMVEVSIFRBQkxFIHRlbXBvcmFsX2ZrX3JuZzJwZXIKKyAgICBBTFRF UiBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3JuZzJwZXJfZmsKKyAgICBERUZFUlJBQkxFIElOSVRJ QUxMWSBERUZFUlJFRDsKKworICBERUxFVEUgRlJPTSB0ZW1wb3JhbF9wZXIgV0hFUkUgaWQgPSAn WzUsNiknOyAtLXNob3VsZCBub3QgZmFpbCB5ZXQuCitDT01NSVQ7IC0tIHNob3VsZCBmYWlsIGhl cmUuCisKKy0tCistLSB0ZXN0IEZLIHJlZmVyZW5jZWQgdXBkYXRlcyBOTyBBQ1RJT04KKy0tCisK K1RSVU5DQVRFIHRlbXBvcmFsX3BlciwgdGVtcG9yYWxfZmtfcm5nMnBlcjsKK0FMVEVSIFRBQkxF IHRlbXBvcmFsX2ZrX3JuZzJwZXIKKyAgRFJPUCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3JuZzJw ZXJfZms7CitBTFRFUiBUQUJMRSB0ZW1wb3JhbF9ma19ybmcycGVyCisgIEFERCBDT05TVFJBSU5U IHRlbXBvcmFsX2ZrX3JuZzJwZXJfZmsKKyAgRk9SRUlHTiBLRVkgKHBhcmVudF9pZCwgUEVSSU9E IHZhbGlkX2F0KQorICBSRUZFUkVOQ0VTIHRlbXBvcmFsX3BlcgorICBPTiBVUERBVEUgTk8gQUNU SU9OOworLS0gYSBQSyB1cGRhdGUgdGhhdCBzdWNjZWVkcyBiZWNhdXNlIHRoZSBudW1lcmljIGlk IGlzbid0IHJlZmVyZW5jZWQ6CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIgKGlkLCB2YWxpZF9m cm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1s1LDYpJywgJzIwMTgtMDEtMDEnLCAnMjAxOC0wMi0w MScpOworVVBEQVRFIHRlbXBvcmFsX3BlciBTRVQgdmFsaWRfZnJvbSA9ICcyMDE2LTAxLTAxJywg dmFsaWRfdGlsID0gJzIwMTYtMDItMDEnIFdIRVJFIGlkID0gJ1s1LDYpJzsKKy0tIGEgUEsgdXBk YXRlIHRoYXQgc3VjY2VlZHMgZXZlbiB0aG91Z2ggdGhlIG51bWVyaWMgaWQgaXMgcmVmZXJlbmNl ZCBiZWNhdXNlIHRoZSByYW5nZSBpc24ndDoKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3BlciBXSEVS RSBpZCA9ICdbNSw2KSc7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIgKGlkLCB2YWxpZF9mcm9t LCB2YWxpZF90aWwpIFZBTFVFUworICAoJ1s1LDYpJywgJzIwMTgtMDEtMDEnLCAnMjAxOC0wMi0w MScpLAorICAoJ1s1LDYpJywgJzIwMTgtMDItMDEnLCAnMjAxOC0wMy0wMScpOworSU5TRVJUIElO VE8gdGVtcG9yYWxfZmtfcm5nMnBlciAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQpIFZBTFVFUwor ICAoJ1szLDQpJywgJ1syMDE4LTAxLTA1LDIwMTgtMDEtMTApJywgJ1s1LDYpJyk7CitVUERBVEUg dGVtcG9yYWxfcGVyIFNFVCB2YWxpZF9mcm9tID0gJzIwMTYtMDItMDEnLCB2YWxpZF90aWwgPSAn MjAxNi0wMy0wMScKK1dIRVJFIGlkID0gJ1s1LDYpJyBBTkQgdmFsaWRfZnJvbSA9ICcyMDE4LTAy LTAxJyBBTkQgdmFsaWRfdGlsID0gJzIwMTgtMDMtMDEnOworLS0gQSBQSyB1cGRhdGUgc2xpZGlu ZyB0aGUgZWRnZSBiZXR3ZWVuIHR3byByZWZlcmVuY2VkIHJvd3M6CitJTlNFUlQgSU5UTyB0ZW1w b3JhbF9wZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUworICAoJ1s2LDcpJywg JzIwMTgtMDEtMDEnLCAnMjAxOC0wMi0wMScpLAorICAoJ1s2LDcpJywgJzIwMTgtMDItMDEnLCAn MjAxOC0wMy0wMScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmtfcm5nMnBlciAoaWQsIHZhbGlk X2F0LCBwYXJlbnRfaWQpIFZBTFVFUworICAoJ1s0LDUpJywgJ1syMDE4LTAxLTE1LDIwMTgtMDIt MTUpJywgJ1s2LDcpJyk7CitVUERBVEUgdGVtcG9yYWxfcGVyCitTRVQgdmFsaWRfZnJvbSA9IENB U0UgV0hFTiB2YWxpZF9mcm9tID0gJzIwMTgtMDEtMDEnIFRIRU4gJzIwMTgtMDEtMDEnCisgICAg ICAgICAgICAgICAgICAgICAgV0hFTiB2YWxpZF9mcm9tID0gJzIwMTgtMDItMDEnIFRIRU4gJzIw MTgtMDEtMDUnIEVORDo6ZGF0ZSwKKyAgICB2YWxpZF90aWwgPSAgQ0FTRSBXSEVOIHZhbGlkX2Zy b20gPSAnMjAxOC0wMS0wMScgVEhFTiAnMjAxOC0wMS0wNScKKyAgICAgICAgICAgICAgICAgICAg ICBXSEVOIHZhbGlkX2Zyb20gPSAnMjAxOC0wMi0wMScgVEhFTiAnMjAxOC0wMy0wMScgRU5EOjpk YXRlCitXSEVSRSBpZCA9ICdbNiw3KSc7CistLSBhIFBLIHVwZGF0ZSBzaHJpbmtpbmcgdGhlIHJl ZmVyZW5jZWQgcmFuZ2UgYnV0IHN0aWxsIHZhbGlkOgorLS0gVGhlcmUgYXJlIHR3byByZWZlcmVu Y2VzOiBvbmUgZnVsZmlsbGVkIGJ5IHRoZSBmaXJzdCBwayByb3csCistLSB0aGUgb3RoZXIgZnVs ZmlsbGVkIGJ5IGJvdGggcGsgcm93cyBjb21iaW5lZC4KK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3Bl ciAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTCisgICgnWzEsMiknLCAnMjAxOC0w MS0wMScsICcyMDE4LTAzLTAxJyksCisgICgnWzEsMiknLCAnMjAxOC0wMy0wMScsICcyMDE4LTA2 LTAxJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ma19ybmcycGVyIChpZCwgdmFsaWRfYXQsIHBh cmVudF9pZCkgVkFMVUVTCisgICgnWzEsMiknLCAnWzIwMTgtMDEtMTUsMjAxOC0wMi0wMSknLCAn WzEsMiknKSwKKyAgKCdbMiwzKScsICdbMjAxOC0wMS0xNSwyMDE4LTA1LTAxKScsICdbMSwyKScp OworVVBEQVRFIHRlbXBvcmFsX3BlciBTRVQgdmFsaWRfZnJvbSA9ICcyMDE4LTAxLTE1JywgdmFs aWRfdGlsID0gJzIwMTgtMDMtMDEnCitXSEVSRSBpZCA9ICdbMSwyKScgQU5EIHZhbGlkX2F0IEA+ ICcyMDE4LTAxLTE1Jzo6ZGF0ZTsKKy0tIGEgUEsgdXBkYXRlIGdyb3dpbmcgdGhlIHJlZmVyZW5j ZWQgcmFuZ2UgaXMgZmluZToKK1VQREFURSB0ZW1wb3JhbF9wZXIgU0VUIHZhbGlkX2Zyb20gPSAn MjAxOC0wMS0wMScsIHZhbGlkX3RpbCA9ICcyMDE4LTAzLTAxJworV0hFUkUgaWQgPSAnWzEsMikn IEFORCB2YWxpZF9hdCBAPiAnMjAxOC0wMS0yNSc6OmRhdGU7CistLSBhIFBLIHVwZGF0ZSBzaHJp bmtpbmcgdGhlIHJlZmVyZW5jZWQgcmFuZ2UgYW5kIGNoYW5naW5nIHRoZSBpZCBpbnZhbGlkYXRl cyB0aGUgd2hvbGUgcmFuZ2U6CitVUERBVEUgdGVtcG9yYWxfcGVyIFNFVCBpZCA9ICdbMiwzKScs IHZhbGlkX2Zyb20gPSAnMjAxOC0wMS0xNScsIHZhbGlkX3RpbCA9ICcyMDE4LTAzLTAxJworV0hF UkUgaWQgPSAnWzEsMiknIEFORCB2YWxpZF9hdCBAPiAnMjAxOC0wMS0xNSc6OmRhdGU7CistLSBh IFBLIHVwZGF0ZSBjaGFuZ2luZyBvbmx5IHRoZSBpZCBpbnZhbGlkYXRlcyB0aGUgd2hvbGUgcmFu Z2U6CitVUERBVEUgdGVtcG9yYWxfcGVyIFNFVCBpZCA9ICdbMiwzKScKK1dIRVJFIGlkID0gJ1sx LDIpJyBBTkQgdmFsaWRfYXQgQD4gJzIwMTgtMDEtMTUnOjpkYXRlOworLS0gYSBQSyB1cGRhdGUg dGhhdCBsb3NlcyB0aW1lIGZyb20gYm90aCBlbmRzLCBidXQgaXMgc3RpbGwgdmFsaWQ6CitJTlNF UlQgSU5UTyB0ZW1wb3JhbF9wZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUwor ICAoJ1syLDMpJywgJzIwMTgtMDEtMDEnLCAnMjAxOC0wMy0wMScpOworSU5TRVJUIElOVE8gdGVt cG9yYWxfZmtfcm5nMnBlciAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQpIFZBTFVFUworICAoJ1s1 LDYpJywgJ1syMDE4LTAxLTE1LDIwMTgtMDItMDEpJywgJ1syLDMpJyk7CitVUERBVEUgdGVtcG9y YWxfcGVyIFNFVCB2YWxpZF9mcm9tID0gJzIwMTgtMDEtMTUnLCB2YWxpZF90aWwgPSAnMjAxOC0w Mi0xNScKK1dIRVJFIGlkID0gJ1syLDMpJzsKKy0tIGEgUEsgdXBkYXRlIHRoYXQgZmFpbHMgYmVj YXVzZSBib3RoIGFyZSByZWZlcmVuY2VkOgorVVBEQVRFIHRlbXBvcmFsX3BlciBTRVQgdmFsaWRf ZnJvbSA9ICcyMDE2LTAxLTAxJywgdmFsaWRfdGlsID0gJzIwMTYtMDItMDEnCitXSEVSRSBpZCA9 ICdbNSw2KScgQU5EIHZhbGlkX2Zyb20gPSAnMjAxOC0wMS0wMScgQU5EIHZhbGlkX3RpbCA9ICcy MDE4LTAyLTAxJzsKKy0tIGEgUEsgdXBkYXRlIHRoYXQgZmFpbHMgYmVjYXVzZSBib3RoIGFyZSBy ZWZlcmVuY2VkLCBidXQgbm90ICd0aWwgY29tbWl0OgorQkVHSU47CisgIEFMVEVSIFRBQkxFIHRl bXBvcmFsX2ZrX3JuZzJwZXIKKyAgICBBTFRFUiBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3JuZzJw ZXJfZmsKKyAgICBERUZFUlJBQkxFIElOSVRJQUxMWSBERUZFUlJFRDsKKworICBVUERBVEUgdGVt cG9yYWxfcGVyIFNFVCB2YWxpZF9mcm9tID0gJzIwMTYtMDEtMDEnLCB2YWxpZF90aWwgPSAnMjAx Ni0wMi0wMScKKyAgV0hFUkUgaWQgPSAnWzUsNiknIEFORCB2YWxpZF9hdCA9IGRhdGVyYW5nZSgn MjAxOC0wMS0wMScsICcyMDE4LTAyLTAxJyk7CitDT01NSVQ7CistLSBjaGFuZ2luZyB0aGUgc2Nh bGFyIHBhcnQgZmFpbHM6CitVUERBVEUgdGVtcG9yYWxfcGVyIFNFVCBpZCA9ICdbNyw4KScKK1dI RVJFIGlkID0gJ1s1LDYpJyBBTkQgdmFsaWRfZnJvbSA9ICcyMDE4LTAxLTAxJyBBTkQgdmFsaWRf dGlsID0gJzIwMTgtMDItMDEnOworLS0gY2hhbmdpbmcgYW4gdW5yZWZlcmVuY2VkIHBhcnQgaXMg b2theToKK1VQREFURSB0ZW1wb3JhbF9wZXIKK0ZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00g JzIwMTgtMDEtMDInIFRPICcyMDE4LTAxLTAzJworU0VUIGlkID0gJ1s3LDgpJworV0hFUkUgaWQg PSAnWzUsNiknOworLS0gY2hhbmdpbmcganVzdCBhIHBhcnQgZmFpbHM6CitVUERBVEUgdGVtcG9y YWxfcGVyCitGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDE4LTAxLTA1JyBUTyAnMjAx OC0wMS0xMCcKK1NFVCBpZCA9ICdbNyw4KScKK1dIRVJFIGlkID0gJ1s1LDYpJzsKK1NFTEVDVCAq IEZST00gdGVtcG9yYWxfcGVyIFdIRVJFIGlkIGluICgnWzUsNiknLCAnWzcsOCknKSBPUkRFUiBC WSBpZCwgdmFsaWRfYXQ7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrX3JuZzJwZXIgV0hFUkUg aWQgaW4gKCdbMyw0KScpIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKy0tIHRoZW4gZGVsZXRlIHRo ZSBvYmplY3RpbmcgRksgcmVjb3JkIGFuZCB0aGUgc2FtZSBQSyB1cGRhdGUgc3VjY2VlZHM6CitE RUxFVEUgRlJPTSB0ZW1wb3JhbF9ma19ybmcycGVyIFdIRVJFIGlkID0gJ1szLDQpJzsKK1VQREFU RSB0ZW1wb3JhbF9wZXIgU0VUIHZhbGlkX2Zyb20gPSAnMjAxNi0wMS0wMScsIHZhbGlkX3RpbCA9 ICcyMDE2LTAyLTAxJworV0hFUkUgaWQgPSAnWzUsNiknIEFORCB2YWxpZF9hdCA9ICdbMjAxOC0w MS0wMSwyMDE4LTAyLTAxKSc7CisKKy0tCistLSB0ZXN0IEZLIHJlZmVyZW5jZWQgdXBkYXRlcyBS RVNUUklDVAorLS0KKworVFJVTkNBVEUgdGVtcG9yYWxfcGVyLCB0ZW1wb3JhbF9ma19ybmcycGVy OworQUxURVIgVEFCTEUgdGVtcG9yYWxfZmtfcm5nMnBlcgorICBEUk9QIENPTlNUUkFJTlQgdGVt cG9yYWxfZmtfcm5nMnBlcl9mazsKK0FMVEVSIFRBQkxFIHRlbXBvcmFsX2ZrX3JuZzJwZXIKKyAg QUREIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcm5nMnBlcl9maworICBGT1JFSUdOIEtFWSAocGFy ZW50X2lkLCBQRVJJT0QgdmFsaWRfYXQpCisgIFJFRkVSRU5DRVMgdGVtcG9yYWxfcGVyCisgIE9O IFVQREFURSBSRVNUUklDVDsKKworLS0KKy0tIHRlc3QgRksgcmVmZXJlbmNlZCBkZWxldGVzIE5P IEFDVElPTgorLS0KKworVFJVTkNBVEUgdGVtcG9yYWxfcGVyLCB0ZW1wb3JhbF9ma19ybmcycGVy OworQUxURVIgVEFCTEUgdGVtcG9yYWxfZmtfcm5nMnBlcgorICBBREQgQ09OU1RSQUlOVCB0ZW1w b3JhbF9ma19ybmcycGVyX2ZrCisgIEZPUkVJR04gS0VZIChwYXJlbnRfaWQsIFBFUklPRCB2YWxp ZF9hdCkKKyAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9wZXI7CistLSBhIFBLIGRlbGV0ZSB0aGF0IHN1 Y2NlZWRzIGJlY2F1c2UgdGhlIG51bWVyaWMgaWQgaXNuJ3QgcmVmZXJlbmNlZDoKK0lOU0VSVCBJ TlRPIHRlbXBvcmFsX3BlciAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzUs NiknLCAnMjAxOC0wMS0wMScsICcyMDE4LTAyLTAxJyk7CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9w ZXIgV0hFUkUgaWQgPSAnWzUsNiknOworLS0gYSBQSyBkZWxldGUgdGhhdCBzdWNjZWVkcyBldmVu IHRob3VnaCB0aGUgbnVtZXJpYyBpZCBpcyByZWZlcmVuY2VkIGJlY2F1c2UgdGhlIHJhbmdlIGlz bid0OgorSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGls KSBWQUxVRVMKKyAgKCdbNSw2KScsICcyMDE4LTAxLTAxJywgJzIwMTgtMDItMDEnKSwKKyAgKCdb NSw2KScsICcyMDE4LTAyLTAxJywgJzIwMTgtMDMtMDEnKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFs X2ZrX3JuZzJwZXIgKGlkLCB2YWxpZF9hdCwgcGFyZW50X2lkKSBWQUxVRVMgKCdbMyw0KScsICdb MjAxOC0wMS0wNSwyMDE4LTAxLTEwKScsICdbNSw2KScpOworREVMRVRFIEZST00gdGVtcG9yYWxf cGVyIFdIRVJFIGlkID0gJ1s1LDYpJyBBTkQgdmFsaWRfZnJvbSA9ICcyMDE4LTAyLTAxJyBBTkQg dmFsaWRfdGlsID0gJzIwMTgtMDMtMDEnOworLS0gYSBQSyBkZWxldGUgdGhhdCBmYWlscyBiZWNh dXNlIGJvdGggYXJlIHJlZmVyZW5jZWQ6CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9wZXIgV0hFUkUg aWQgPSAnWzUsNiknIEFORCB2YWxpZF9mcm9tID0gJzIwMTgtMDEtMDEnIEFORCB2YWxpZF90aWwg PSAnMjAxOC0wMi0wMSc7CistLSBhIFBLIGRlbGV0ZSB0aGF0IGZhaWxzIGJlY2F1c2UgYm90aCBh cmUgcmVmZXJlbmNlZCwgYnV0IG5vdCAndGlsIGNvbW1pdDoKK0JFR0lOOworICBBTFRFUiBUQUJM RSB0ZW1wb3JhbF9ma19ybmcycGVyCisgICAgQUxURVIgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19y bmcycGVyX2ZrCisgICAgREVGRVJSQUJMRSBJTklUSUFMTFkgREVGRVJSRUQ7CisKKyAgREVMRVRF IEZST00gdGVtcG9yYWxfcGVyIFdIRVJFIGlkID0gJ1s1LDYpJyBBTkQgdmFsaWRfYXQgPSBkYXRl cmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAxOC0wMi0wMScpOworQ09NTUlUOworLS0gZGVsZXRpbmcg YW4gdW5yZWZlcmVuY2VkIHBhcnQgaXMgb2theToKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3Blcgor Rk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAxOC0wMS0wMicgVE8gJzIwMTgtMDEtMDMn CitXSEVSRSBpZCA9ICdbNSw2KSc7CistLSBkZWxldGluZyBqdXN0IGEgcGFydCBmYWlsczoKK0RF TEVURSBGUk9NIHRlbXBvcmFsX3BlcgorRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAx OC0wMS0wNScgVE8gJzIwMTgtMDEtMTAnCitXSEVSRSBpZCA9ICdbNSw2KSc7CitTRUxFQ1QgKiBG Uk9NIHRlbXBvcmFsX3BlciBXSEVSRSBpZCBpbiAoJ1s1LDYpJywgJ1s3LDgpJykgT1JERVIgQlkg aWQsIHZhbGlkX2F0OworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9ma19ybmcycGVyIFdIRVJFIGlk IGluICgnWzMsNCknKSBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CistLSB0aGVuIGRlbGV0ZSB0aGUg b2JqZWN0aW5nIEZLIHJlY29yZCBhbmQgdGhlIHNhbWUgUEsgZGVsZXRlIHN1Y2NlZWRzOgorREVM RVRFIEZST00gdGVtcG9yYWxfZmtfcm5nMnBlciBXSEVSRSBpZCA9ICdbMyw0KSc7CitERUxFVEUg RlJPTSB0ZW1wb3JhbF9wZXIgV0hFUkUgaWQgPSAnWzUsNiknIEFORCB2YWxpZF9mcm9tID0gJzIw MTgtMDEtMDEnIEFORCB2YWxpZF90aWwgPSAnMjAxOC0wMi0wMSc7CisKKy0tCistLSB0ZXN0IEZL IHJlZmVyZW5jZWQgZGVsZXRlcyBSRVNUUklDVAorLS0KKworVFJVTkNBVEUgdGVtcG9yYWxfcGVy LCB0ZW1wb3JhbF9ma19ybmcycGVyOworQUxURVIgVEFCTEUgdGVtcG9yYWxfZmtfcm5nMnBlcgor ICBEUk9QIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcm5nMnBlcl9mazsKK0FMVEVSIFRBQkxFIHRl bXBvcmFsX2ZrX3JuZzJwZXIKKyAgQUREIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcm5nMnBlcl9m aworICBGT1JFSUdOIEtFWSAocGFyZW50X2lkLCBQRVJJT0QgdmFsaWRfYXQpCisgIFJFRkVSRU5D RVMgdGVtcG9yYWxfcGVyCisgIE9OIERFTEVURSBSRVNUUklDVDsKKworLS0KKy0tIHJuZzJwZXIg dGVzdCBPTiBVUERBVEUvREVMRVRFIG9wdGlvbnMKKy0tCistLSBUT0M6CistLSByZWZlcmVuY2Vk IHVwZGF0ZXMgQ0FTQ0FERQorLS0gcmVmZXJlbmNlZCBkZWxldGVzIENBU0NBREUKKy0tIHJlZmVy ZW5jZWQgdXBkYXRlcyBTRVQgTlVMTAorLS0gcmVmZXJlbmNlZCBkZWxldGVzIFNFVCBOVUxMCist LSByZWZlcmVuY2VkIHVwZGF0ZXMgU0VUIERFRkFVTFQKKy0tIHJlZmVyZW5jZWQgZGVsZXRlcyBT RVQgREVGQVVMVAorLS0gcmVmZXJlbmNlZCB1cGRhdGVzIENBU0NBREUgKHR3byBzY2FsYXIgY29s cykKKy0tIHJlZmVyZW5jZWQgZGVsZXRlcyBDQVNDQURFICh0d28gc2NhbGFyIGNvbHMpCistLSBy ZWZlcmVuY2VkIHVwZGF0ZXMgU0VUIE5VTEwgKHR3byBzY2FsYXIgY29scykKKy0tIHJlZmVyZW5j ZWQgZGVsZXRlcyBTRVQgTlVMTCAodHdvIHNjYWxhciBjb2xzKQorLS0gcmVmZXJlbmNlZCBkZWxl dGVzIFNFVCBOVUxMICh0d28gc2NhbGFyIGNvbHMsIFNFVCBOVUxMIHN1YnNldCkKKy0tIHJlZmVy ZW5jZWQgdXBkYXRlcyBTRVQgREVGQVVMVCAodHdvIHNjYWxhciBjb2xzKQorLS0gcmVmZXJlbmNl ZCBkZWxldGVzIFNFVCBERUZBVUxUICh0d28gc2NhbGFyIGNvbHMpCistLSByZWZlcmVuY2VkIGRl bGV0ZXMgU0VUIERFRkFVTFQgKHR3byBzY2FsYXIgY29scywgU0VUIERFRkFVTFQgc3Vic2V0KQor CistLQorLS0gdGVzdCBGSyByZWZlcmVuY2VkIHVwZGF0ZXMgQ0FTQ0FERQorLS0KKworVFJVTkNB VEUgdGVtcG9yYWxfcGVyLCB0ZW1wb3JhbF9ma19ybmcycGVyOworSU5TRVJUIElOVE8gdGVtcG9y YWxfcGVyIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbNiw3KScsICcyMDE4 LTAxLTAxJywgJzIwMjEtMDEtMDEnKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrX3JuZzJwZXIg KGlkLCB2YWxpZF9hdCwgcGFyZW50X2lkKSBWQUxVRVMgKCdbMTAwLDEwMF0nLCAnWzIwMTgtMDEt MDEsMjAyMS0wMS0wMSknLCAnWzYsNyknKTsKK0FMVEVSIFRBQkxFIHRlbXBvcmFsX2ZrX3JuZzJw ZXIKKyAgQUREIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcm5nMnBlcl9maworICAgIEZPUkVJR04g S0VZIChwYXJlbnRfaWQsIFBFUklPRCB2YWxpZF9hdCkKKyAgICBSRUZFUkVOQ0VTIHRlbXBvcmFs X3BlcgorICAgIE9OIERFTEVURSBDQVNDQURFIE9OIFVQREFURSBDQVNDQURFOworLS0gbGVmdG92 ZXJzIG9uIGJvdGggc2lkZXM6CitVUERBVEUgdGVtcG9yYWxfcGVyIEZPUiBQT1JUSU9OIE9GIHZh bGlkX2F0IEZST00gJzIwMTktMDEtMDEnIFRPICcyMDIwLTAxLTAxJyBTRVQgaWQgPSAnWzcsOCkn IFdIRVJFIGlkID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmtfcm5nMnBlciBX SEVSRSBpZCA9ICdbMTAwLDEwMF0nIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKy0tIG5vbi1GUE8g dXBkYXRlOgorVVBEQVRFIHRlbXBvcmFsX3BlciBTRVQgaWQgPSAnWzcsOCknIFdIRVJFIGlkID0g J1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmtfcm5nMnBlciBXSEVSRSBpZCA9ICdb MTAwLDEwMF0nIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKy0tIEZLIGFjcm9zcyB0d28gcmVmZXJl bmNlZCByb3dzOgorSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyIChpZCwgdmFsaWRfZnJvbSwgdmFs aWRfdGlsKSBWQUxVRVMgKCdbOCw5KScsICcyMDE4LTAxLTAxJywgJzIwMjAtMDEtMDEnKTsKK0lO U0VSVCBJTlRPIHRlbXBvcmFsX3BlciAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVT ICgnWzgsOSknLCAnMjAyMC0wMS0wMScsICcyMDIxLTAxLTAxJyk7CitJTlNFUlQgSU5UTyB0ZW1w b3JhbF9ma19ybmcycGVyIChpZCwgdmFsaWRfYXQsIHBhcmVudF9pZCkgVkFMVUVTICgnWzIwMCwy MDBdJywgJ1syMDE4LTAxLTAxLDIwMjEtMDEtMDEpJywgJ1s4LDkpJyk7CitVUERBVEUgdGVtcG9y YWxfcGVyIFNFVCBpZCA9ICdbOSwxMCknIFdIRVJFIGlkID0gJ1s4LDkpJyBBTkQgdmFsaWRfYXQg QD4gJzIwMTktMDEtMDEnOjpkYXRlOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9ma19ybmcycGVy IFdIRVJFIGlkID0gJ1syMDAsMjAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworCistLQorLS0g dGVzdCBGSyByZWZlcmVuY2VkIGRlbGV0ZXMgQ0FTQ0FERQorLS0KKworVFJVTkNBVEUgdGVtcG9y YWxfcGVyLCB0ZW1wb3JhbF9ma19ybmcycGVyOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyIChp ZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbNiw3KScsICcyMDE4LTAxLTAxJywg JzIwMjEtMDEtMDEnKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrX3JuZzJwZXIgKGlkLCB2YWxp ZF9hdCwgcGFyZW50X2lkKSBWQUxVRVMgKCdbMTAwLDEwMF0nLCAnWzIwMTgtMDEtMDEsMjAyMS0w MS0wMSknLCAnWzYsNyknKTsKKy0tIGxlZnRvdmVycyBvbiBib3RoIHNpZGVzOgorREVMRVRFIEZS T00gdGVtcG9yYWxfcGVyIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMTktMDEtMDEn IFRPICcyMDIwLTAxLTAxJyBXSEVSRSBpZCA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBv cmFsX2ZrX3JuZzJwZXIgV0hFUkUgaWQgPSAnWzEwMCwxMDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRf YXQ7CistLSBub24tRlBPIGRlbGV0ZToKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3BlciBXSEVSRSBp ZCA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrX3JuZzJwZXIgV0hFUkUgaWQg PSAnWzEwMCwxMDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CistLSBGSyBhY3Jvc3MgdHdvIHJl ZmVyZW5jZWQgcm93czoKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlciAoaWQsIHZhbGlkX2Zyb20s IHZhbGlkX3RpbCkgVkFMVUVTICgnWzgsOSknLCAnMjAxOC0wMS0wMScsICcyMDIwLTAxLTAxJyk7 CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZB TFVFUyAoJ1s4LDkpJywgJzIwMjAtMDEtMDEnLCAnMjAyMS0wMS0wMScpOworSU5TRVJUIElOVE8g dGVtcG9yYWxfZmtfcm5nMnBlciAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQpIFZBTFVFUyAoJ1sy MDAsMjAwXScsICdbMjAxOC0wMS0wMSwyMDIxLTAxLTAxKScsICdbOCw5KScpOworREVMRVRFIEZS T00gdGVtcG9yYWxfcGVyIFdIRVJFIGlkID0gJ1s4LDkpJyBBTkQgdmFsaWRfYXQgQD4gJzIwMTkt MDEtMDEnOjpkYXRlOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9ma19ybmcycGVyIFdIRVJFIGlk ID0gJ1syMDAsMjAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworCistLQorLS0gdGVzdCBGSyBy ZWZlcmVuY2VkIHVwZGF0ZXMgU0VUIE5VTEwKKy0tCisKK1RSVU5DQVRFIHRlbXBvcmFsX3Blciwg dGVtcG9yYWxfZmtfcm5nMnBlcjsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlciAoaWQsIHZhbGlk X2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzYsNyknLCAnMjAxOC0wMS0wMScsICcyMDIxLTAx LTAxJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ma19ybmcycGVyIChpZCwgdmFsaWRfYXQsIHBh cmVudF9pZCkgVkFMVUVTICgnWzEwMCwxMDBdJywgJ1syMDE4LTAxLTAxLDIwMjEtMDEtMDEpJywg J1s2LDcpJyk7CitBTFRFUiBUQUJMRSB0ZW1wb3JhbF9ma19ybmcycGVyCisgIERST1AgQ09OU1RS QUlOVCB0ZW1wb3JhbF9ma19ybmcycGVyX2ZrLAorICBBREQgQ09OU1RSQUlOVCB0ZW1wb3JhbF9m a19ybmcycGVyX2ZrCisgICAgRk9SRUlHTiBLRVkgKHBhcmVudF9pZCwgUEVSSU9EIHZhbGlkX2F0 KQorICAgIFJFRkVSRU5DRVMgdGVtcG9yYWxfcGVyCisgICAgT04gREVMRVRFIFNFVCBOVUxMIE9O IFVQREFURSBTRVQgTlVMTDsKKy0tIGxlZnRvdmVycyBvbiBib3RoIHNpZGVzOgorVVBEQVRFIHRl bXBvcmFsX3BlciBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDE5LTAxLTAxJyBUTyAn MjAyMC0wMS0wMScgU0VUIGlkID0gJ1s3LDgpJyBXSEVSRSBpZCA9ICdbNiw3KSc7CitTRUxFQ1Qg KiBGUk9NIHRlbXBvcmFsX2ZrX3JuZzJwZXIgV0hFUkUgaWQgPSAnWzEwMCwxMDBdJyBPUkRFUiBC WSBpZCwgdmFsaWRfYXQ7CistLSBub24tRlBPIHVwZGF0ZToKK1VQREFURSB0ZW1wb3JhbF9wZXIg U0VUIGlkID0gJ1s3LDgpJyBXSEVSRSBpZCA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBv cmFsX2ZrX3JuZzJwZXIgV0hFUkUgaWQgPSAnWzEwMCwxMDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRf YXQ7CistLSBGSyBhY3Jvc3MgdHdvIHJlZmVyZW5jZWQgcm93czoKK0lOU0VSVCBJTlRPIHRlbXBv cmFsX3BlciAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzgsOSknLCAnMjAx OC0wMS0wMScsICcyMDIwLTAxLTAxJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIgKGlkLCB2 YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1s4LDkpJywgJzIwMjAtMDEtMDEnLCAnMjAy MS0wMS0wMScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmtfcm5nMnBlciAoaWQsIHZhbGlkX2F0 LCBwYXJlbnRfaWQpIFZBTFVFUyAoJ1syMDAsMjAwXScsICdbMjAxOC0wMS0wMSwyMDIxLTAxLTAx KScsICdbOCw5KScpOworVVBEQVRFIHRlbXBvcmFsX3BlciBTRVQgaWQgPSAnWzksMTApJyBXSEVS RSBpZCA9ICdbOCw5KScgQU5EIHZhbGlkX2F0IEA+ICcyMDE5LTAxLTAxJzo6ZGF0ZTsKK1NFTEVD VCAqIEZST00gdGVtcG9yYWxfZmtfcm5nMnBlciBXSEVSRSBpZCA9ICdbMjAwLDIwMF0nIE9SREVS IEJZIGlkLCB2YWxpZF9hdDsKKworLS0KKy0tIHRlc3QgRksgcmVmZXJlbmNlZCBkZWxldGVzIFNF VCBOVUxMCistLQorCitUUlVOQ0FURSB0ZW1wb3JhbF9wZXIsIHRlbXBvcmFsX2ZrX3JuZzJwZXI7 CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZB TFVFUyAoJ1s2LDcpJywgJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpOworSU5TRVJUIElOVE8g dGVtcG9yYWxfZmtfcm5nMnBlciAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQpIFZBTFVFUyAoJ1sx MDAsMTAwXScsICdbMjAxOC0wMS0wMSwyMDIxLTAxLTAxKScsICdbNiw3KScpOworLS0gbGVmdG92 ZXJzIG9uIGJvdGggc2lkZXM6CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9wZXIgRk9SIFBPUlRJT04g T0YgdmFsaWRfYXQgRlJPTSAnMjAxOS0wMS0wMScgVE8gJzIwMjAtMDEtMDEnIFdIRVJFIGlkID0g J1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmtfcm5nMnBlciBXSEVSRSBpZCA9ICdb MTAwLDEwMF0nIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKy0tIG5vbi1GUE8gZGVsZXRlOgorREVM RVRFIEZST00gdGVtcG9yYWxfcGVyIFdIRVJFIGlkID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00g dGVtcG9yYWxfZmtfcm5nMnBlciBXSEVSRSBpZCA9ICdbMTAwLDEwMF0nIE9SREVSIEJZIGlkLCB2 YWxpZF9hdDsKKy0tIEZLIGFjcm9zcyB0d28gcmVmZXJlbmNlZCByb3dzOgorSU5TRVJUIElOVE8g dGVtcG9yYWxfcGVyIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbOCw5KScs ICcyMDE4LTAxLTAxJywgJzIwMjAtMDEtMDEnKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlciAo aWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzgsOSknLCAnMjAyMC0wMS0wMScs ICcyMDIxLTAxLTAxJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ma19ybmcycGVyIChpZCwgdmFs aWRfYXQsIHBhcmVudF9pZCkgVkFMVUVTICgnWzIwMCwyMDBdJywgJ1syMDE4LTAxLTAxLDIwMjEt MDEtMDEpJywgJ1s4LDkpJyk7CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9wZXIgV0hFUkUgaWQgPSAn WzgsOSknIEFORCB2YWxpZF9hdCBAPiAnMjAxOS0wMS0wMSc6OmRhdGU7CitTRUxFQ1QgKiBGUk9N IHRlbXBvcmFsX2ZrX3JuZzJwZXIgV0hFUkUgaWQgPSAnWzIwMCwyMDBdJyBPUkRFUiBCWSBpZCwg dmFsaWRfYXQ7CisKKy0tCistLSB0ZXN0IEZLIHJlZmVyZW5jZWQgdXBkYXRlcyBTRVQgREVGQVVM VAorLS0KKworVFJVTkNBVEUgdGVtcG9yYWxfcGVyLCB0ZW1wb3JhbF9ma19ybmcycGVyOworSU5T RVJUIElOVE8gdGVtcG9yYWxfcGVyIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMg KCdbLTEsLTFdJywgbnVsbCwgbnVsbCk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIgKGlkLCB2 YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1s2LDcpJywgJzIwMTgtMDEtMDEnLCAnMjAy MS0wMS0wMScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmtfcm5nMnBlciAoaWQsIHZhbGlkX2F0 LCBwYXJlbnRfaWQpIFZBTFVFUyAoJ1sxMDAsMTAwXScsICdbMjAxOC0wMS0wMSwyMDIxLTAxLTAx KScsICdbNiw3KScpOworQUxURVIgVEFCTEUgdGVtcG9yYWxfZmtfcm5nMnBlcgorICBBTFRFUiBD T0xVTU4gcGFyZW50X2lkIFNFVCBERUZBVUxUICdbLTEsLTFdJywKKyAgRFJPUCBDT05TVFJBSU5U IHRlbXBvcmFsX2ZrX3JuZzJwZXJfZmssCisgIEFERCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3Ju ZzJwZXJfZmsKKyAgICBGT1JFSUdOIEtFWSAocGFyZW50X2lkLCBQRVJJT0QgdmFsaWRfYXQpCisg ICAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9wZXIKKyAgICBPTiBERUxFVEUgU0VUIERFRkFVTFQgT04g VVBEQVRFIFNFVCBERUZBVUxUOworLS0gbGVmdG92ZXJzIG9uIGJvdGggc2lkZXM6CitVUERBVEUg dGVtcG9yYWxfcGVyIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMTktMDEtMDEnIFRP ICcyMDIwLTAxLTAxJyBTRVQgaWQgPSAnWzcsOCknIFdIRVJFIGlkID0gJ1s2LDcpJzsKK1NFTEVD VCAqIEZST00gdGVtcG9yYWxfZmtfcm5nMnBlciBXSEVSRSBpZCA9ICdbMTAwLDEwMF0nIE9SREVS IEJZIGlkLCB2YWxpZF9hdDsKKy0tIG5vbi1GUE8gdXBkYXRlOgorVVBEQVRFIHRlbXBvcmFsX3Bl ciBTRVQgaWQgPSAnWzcsOCknIFdIRVJFIGlkID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVt cG9yYWxfZmtfcm5nMnBlciBXSEVSRSBpZCA9ICdbMTAwLDEwMF0nIE9SREVSIEJZIGlkLCB2YWxp ZF9hdDsKKy0tIEZLIGFjcm9zcyB0d28gcmVmZXJlbmNlZCByb3dzOgorSU5TRVJUIElOVE8gdGVt cG9yYWxfcGVyIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbOCw5KScsICcy MDE4LTAxLTAxJywgJzIwMjAtMDEtMDEnKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlciAoaWQs IHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzgsOSknLCAnMjAyMC0wMS0wMScsICcy MDIxLTAxLTAxJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ma19ybmcycGVyIChpZCwgdmFsaWRf YXQsIHBhcmVudF9pZCkgVkFMVUVTICgnWzIwMCwyMDBdJywgJ1syMDE4LTAxLTAxLDIwMjEtMDEt MDEpJywgJ1s4LDkpJyk7CitVUERBVEUgdGVtcG9yYWxfcGVyIFNFVCBpZCA9ICdbOSwxMCknIFdI RVJFIGlkID0gJ1s4LDkpJyBBTkQgdmFsaWRfYXQgQD4gJzIwMTktMDEtMDEnOjpkYXRlOworU0VM RUNUICogRlJPTSB0ZW1wb3JhbF9ma19ybmcycGVyIFdIRVJFIGlkID0gJ1syMDAsMjAwXScgT1JE RVIgQlkgaWQsIHZhbGlkX2F0OworCistLQorLS0gdGVzdCBGSyByZWZlcmVuY2VkIGRlbGV0ZXMg U0VUIERFRkFVTFQKKy0tCisKK1RSVU5DQVRFIHRlbXBvcmFsX3BlciwgdGVtcG9yYWxfZmtfcm5n MnBlcjsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlciAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3Rp bCkgVkFMVUVTICgnWy0xLC0xXScsIG51bGwsIG51bGwpOworSU5TRVJUIElOVE8gdGVtcG9yYWxf cGVyIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbNiw3KScsICcyMDE4LTAx LTAxJywgJzIwMjEtMDEtMDEnKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrX3JuZzJwZXIgKGlk LCB2YWxpZF9hdCwgcGFyZW50X2lkKSBWQUxVRVMgKCdbMTAwLDEwMF0nLCAnWzIwMTgtMDEtMDEs MjAyMS0wMS0wMSknLCAnWzYsNyknKTsKKy0tIGxlZnRvdmVycyBvbiBib3RoIHNpZGVzOgorREVM RVRFIEZST00gdGVtcG9yYWxfcGVyIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMTkt MDEtMDEnIFRPICcyMDIwLTAxLTAxJyBXSEVSRSBpZCA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9N IHRlbXBvcmFsX2ZrX3JuZzJwZXIgV0hFUkUgaWQgPSAnWzEwMCwxMDBdJyBPUkRFUiBCWSBpZCwg dmFsaWRfYXQ7CistLSBub24tRlBPIHVwZGF0ZToKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3BlciBX SEVSRSBpZCA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrX3JuZzJwZXIgV0hF UkUgaWQgPSAnWzEwMCwxMDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CistLSBGSyBhY3Jvc3Mg dHdvIHJlZmVyZW5jZWQgcm93czoKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlciAoaWQsIHZhbGlk X2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzgsOSknLCAnMjAxOC0wMS0wMScsICcyMDIwLTAx LTAxJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90 aWwpIFZBTFVFUyAoJ1s4LDkpJywgJzIwMjAtMDEtMDEnLCAnMjAyMS0wMS0wMScpOworSU5TRVJU IElOVE8gdGVtcG9yYWxfZmtfcm5nMnBlciAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQpIFZBTFVF UyAoJ1syMDAsMjAwXScsICdbMjAxOC0wMS0wMSwyMDIxLTAxLTAxKScsICdbOCw5KScpOworREVM RVRFIEZST00gdGVtcG9yYWxfcGVyIFdIRVJFIGlkID0gJ1s4LDkpJyBBTkQgdmFsaWRfYXQgQD4g JzIwMTktMDEtMDEnOjpkYXRlOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9ma19ybmcycGVyIFdI RVJFIGlkID0gJ1syMDAsMjAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworCistLQorLS0gdGVz dCBGSyByZWZlcmVuY2VkIHVwZGF0ZXMgQ0FTQ0FERSAodHdvIHNjYWxhciBjb2xzKQorLS0KKwor VFJVTkNBVEUgdGVtcG9yYWxfcGVyMiwgdGVtcG9yYWxfZmsyX3JuZzJwZXI7CitJTlNFUlQgSU5U TyB0ZW1wb3JhbF9wZXIyIChpZDEsIGlkMiwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMg KCdbNiw3KScsICdbNiw3KScsICcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKTsKK0lOU0VSVCBJ TlRPIHRlbXBvcmFsX2ZrMl9ybmcycGVyIChpZCwgdmFsaWRfYXQsIHBhcmVudF9pZDEsIHBhcmVu dF9pZDIpIFZBTFVFUyAoJ1sxMDAsMTAwXScsICdbMjAxOC0wMS0wMSwyMDIxLTAxLTAxKScsICdb Niw3KScsICdbNiw3KScpOworQUxURVIgVEFCTEUgdGVtcG9yYWxfZmsyX3JuZzJwZXIKKyAgRFJP UCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrMl9ybmcycGVyX2ZrLAorICBBREQgQ09OU1RSQUlOVCB0 ZW1wb3JhbF9mazJfcm5nMnBlcl9maworICAgIEZPUkVJR04gS0VZIChwYXJlbnRfaWQxLCBwYXJl bnRfaWQyLCBQRVJJT0QgdmFsaWRfYXQpCisgICAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9wZXIyCisg ICAgT04gREVMRVRFIENBU0NBREUgT04gVVBEQVRFIENBU0NBREU7CistLSBsZWZ0b3ZlcnMgb24g Ym90aCBzaWRlczoKK1VQREFURSB0ZW1wb3JhbF9wZXIyIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0 IEZST00gJzIwMTktMDEtMDEnIFRPICcyMDIwLTAxLTAxJyBTRVQgaWQxID0gJ1s3LDgpJyBXSEVS RSBpZDEgPSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9mazJfcm5nMnBlciBXSEVS RSBpZCA9ICdbMTAwLDEwMF0nIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKy0tIG5vbi1GUE8gdXBk YXRlOgorVVBEQVRFIHRlbXBvcmFsX3BlcjIgU0VUIGlkMSA9ICdbNyw4KScgV0hFUkUgaWQxID0g J1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX3JuZzJwZXIgV0hFUkUgaWQgPSAn WzEwMCwxMDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CistLSBGSyBhY3Jvc3MgdHdvIHJlZmVy ZW5jZWQgcm93czoKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlcjIgKGlkMSwgaWQyLCB2YWxpZF9m cm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1s4LDkpJywgJ1s4LDkpJywgJzIwMTgtMDEtMDEnLCAn MjAyMC0wMS0wMScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyMiAoaWQxLCBpZDIsIHZhbGlk X2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzgsOSknLCAnWzgsOSknLCAnMjAyMC0wMS0wMScs ICcyMDIxLTAxLTAxJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9mazJfcm5nMnBlciAoaWQsIHZh bGlkX2F0LCBwYXJlbnRfaWQxLCBwYXJlbnRfaWQyKSBWQUxVRVMgKCdbMjAwLDIwMF0nLCAnWzIw MTgtMDEtMDEsMjAyMS0wMS0wMSknLCAnWzgsOSknLCAnWzgsOSknKTsKK1VQREFURSB0ZW1wb3Jh bF9wZXIyIFNFVCBpZDEgPSAnWzksMTApJyBXSEVSRSBpZDEgPSAnWzgsOSknIEFORCB2YWxpZF9h dCBAPiAnMjAxOS0wMS0wMSc6OmRhdGU7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9ybmcy cGVyIFdIRVJFIGlkID0gJ1syMDAsMjAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworCistLQor LS0gdGVzdCBGSyByZWZlcmVuY2VkIGRlbGV0ZXMgQ0FTQ0FERSAodHdvIHNjYWxhciBjb2xzKQor LS0KKworVFJVTkNBVEUgdGVtcG9yYWxfcGVyMiwgdGVtcG9yYWxfZmsyX3JuZzJwZXI7CitJTlNF UlQgSU5UTyB0ZW1wb3JhbF9wZXIyIChpZDEsIGlkMiwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBW QUxVRVMgKCdbNiw3KScsICdbNiw3KScsICcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKTsKK0lO U0VSVCBJTlRPIHRlbXBvcmFsX2ZrMl9ybmcycGVyIChpZCwgdmFsaWRfYXQsIHBhcmVudF9pZDEs IHBhcmVudF9pZDIpIFZBTFVFUyAoJ1sxMDAsMTAwXScsICdbMjAxOC0wMS0wMSwyMDIxLTAxLTAx KScsICdbNiw3KScsICdbNiw3KScpOworLS0gbGVmdG92ZXJzIG9uIGJvdGggc2lkZXM6CitERUxF VEUgRlJPTSB0ZW1wb3JhbF9wZXIyIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMTkt MDEtMDEnIFRPICcyMDIwLTAxLTAxJyBXSEVSRSBpZDEgPSAnWzYsNyknOworU0VMRUNUICogRlJP TSB0ZW1wb3JhbF9mazJfcm5nMnBlciBXSEVSRSBpZCA9ICdbMTAwLDEwMF0nIE9SREVSIEJZIGlk LCB2YWxpZF9hdDsKKy0tIG5vbi1GUE8gZGVsZXRlOgorREVMRVRFIEZST00gdGVtcG9yYWxfcGVy MiBXSEVSRSBpZDEgPSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9mazJfcm5nMnBl ciBXSEVSRSBpZCA9ICdbMTAwLDEwMF0nIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKy0tIEZLIGFj cm9zcyB0d28gcmVmZXJlbmNlZCByb3dzOgorSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyMiAoaWQx LCBpZDIsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzgsOSknLCAnWzgsOSknLCAn MjAxOC0wMS0wMScsICcyMDIwLTAxLTAxJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIyIChp ZDEsIGlkMiwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbOCw5KScsICdbOCw5KScs ICcyMDIwLTAxLTAxJywgJzIwMjEtMDEtMDEnKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrMl9y bmcycGVyIChpZCwgdmFsaWRfYXQsIHBhcmVudF9pZDEsIHBhcmVudF9pZDIpIFZBTFVFUyAoJ1sy MDAsMjAwXScsICdbMjAxOC0wMS0wMSwyMDIxLTAxLTAxKScsICdbOCw5KScsICdbOCw5KScpOwor REVMRVRFIEZST00gdGVtcG9yYWxfcGVyMiBXSEVSRSBpZDEgPSAnWzgsOSknIEFORCB2YWxpZF9h dCBAPiAnMjAxOS0wMS0wMSc6OmRhdGU7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9ybmcy cGVyIFdIRVJFIGlkID0gJ1syMDAsMjAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworCistLQor LS0gdGVzdCBGSyByZWZlcmVuY2VkIHVwZGF0ZXMgU0VUIE5VTEwgKHR3byBzY2FsYXIgY29scykK Ky0tCisKK1RSVU5DQVRFIHRlbXBvcmFsX3BlcjIsIHRlbXBvcmFsX2ZrMl9ybmcycGVyOworSU5T RVJUIElOVE8gdGVtcG9yYWxfcGVyMiAoaWQxLCBpZDIsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkg VkFMVUVTICgnWzYsNyknLCAnWzYsNyknLCAnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJyk7CitJ TlNFUlQgSU5UTyB0ZW1wb3JhbF9mazJfcm5nMnBlciAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQx LCBwYXJlbnRfaWQyKSBWQUxVRVMgKCdbMTAwLDEwMF0nLCAnWzIwMTgtMDEtMDEsMjAyMS0wMS0w MSknLCAnWzYsNyknLCAnWzYsNyknKTsKK0FMVEVSIFRBQkxFIHRlbXBvcmFsX2ZrMl9ybmcycGVy CisgIERST1AgQ09OU1RSQUlOVCB0ZW1wb3JhbF9mazJfcm5nMnBlcl9maywKKyAgQUREIENPTlNU UkFJTlQgdGVtcG9yYWxfZmsyX3JuZzJwZXJfZmsKKyAgICBGT1JFSUdOIEtFWSAocGFyZW50X2lk MSwgcGFyZW50X2lkMiwgUEVSSU9EIHZhbGlkX2F0KQorICAgIFJFRkVSRU5DRVMgdGVtcG9yYWxf cGVyMgorICAgIE9OIERFTEVURSBTRVQgTlVMTCBPTiBVUERBVEUgU0VUIE5VTEw7CistLSBsZWZ0 b3ZlcnMgb24gYm90aCBzaWRlczoKK1VQREFURSB0ZW1wb3JhbF9wZXIyIEZPUiBQT1JUSU9OIE9G IHZhbGlkX2F0IEZST00gJzIwMTktMDEtMDEnIFRPICcyMDIwLTAxLTAxJyBTRVQgaWQxID0gJ1s3 LDgpJyBXSEVSRSBpZDEgPSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9mazJfcm5n MnBlciBXSEVSRSBpZCA9ICdbMTAwLDEwMF0nIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKy0tIG5v bi1GUE8gdXBkYXRlOgorVVBEQVRFIHRlbXBvcmFsX3BlcjIgU0VUIGlkMSA9ICdbNyw4KScgV0hF UkUgaWQxID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX3JuZzJwZXIgV0hF UkUgaWQgPSAnWzEwMCwxMDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CistLSBGSyBhY3Jvc3Mg dHdvIHJlZmVyZW5jZWQgcm93czoKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlcjIgKGlkMSwgaWQy LCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1s4LDkpJywgJ1s4LDkpJywgJzIwMTgt MDEtMDEnLCAnMjAyMC0wMS0wMScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyMiAoaWQxLCBp ZDIsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzgsOSknLCAnWzgsOSknLCAnMjAy MC0wMS0wMScsICcyMDIxLTAxLTAxJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9mazJfcm5nMnBl ciAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQxLCBwYXJlbnRfaWQyKSBWQUxVRVMgKCdbMjAwLDIw MF0nLCAnWzIwMTgtMDEtMDEsMjAyMS0wMS0wMSknLCAnWzgsOSknLCAnWzgsOSknKTsKK1VQREFU RSB0ZW1wb3JhbF9wZXIyIFNFVCBpZDEgPSAnWzksMTApJyBXSEVSRSBpZDEgPSAnWzgsOSknIEFO RCB2YWxpZF9hdCBAPiAnMjAxOS0wMS0wMSc6OmRhdGU7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFs X2ZrMl9ybmcycGVyIFdIRVJFIGlkID0gJ1syMDAsMjAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0 OworCistLQorLS0gdGVzdCBGSyByZWZlcmVuY2VkIGRlbGV0ZXMgU0VUIE5VTEwgKHR3byBzY2Fs YXIgY29scykKKy0tCisKK1RSVU5DQVRFIHRlbXBvcmFsX3BlcjIsIHRlbXBvcmFsX2ZrMl9ybmcy cGVyOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyMiAoaWQxLCBpZDIsIHZhbGlkX2Zyb20sIHZh bGlkX3RpbCkgVkFMVUVTICgnWzYsNyknLCAnWzYsNyknLCAnMjAxOC0wMS0wMScsICcyMDIxLTAx LTAxJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9mazJfcm5nMnBlciAoaWQsIHZhbGlkX2F0LCBw YXJlbnRfaWQxLCBwYXJlbnRfaWQyKSBWQUxVRVMgKCdbMTAwLDEwMF0nLCAnWzIwMTgtMDEtMDEs MjAyMS0wMS0wMSknLCAnWzYsNyknLCAnWzYsNyknKTsKKy0tIGxlZnRvdmVycyBvbiBib3RoIHNp ZGVzOgorREVMRVRFIEZST00gdGVtcG9yYWxfcGVyMiBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBG Uk9NICcyMDE5LTAxLTAxJyBUTyAnMjAyMC0wMS0wMScgV0hFUkUgaWQxID0gJ1s2LDcpJzsKK1NF TEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX3JuZzJwZXIgV0hFUkUgaWQgPSAnWzEwMCwxMDBdJyBP UkRFUiBCWSBpZCwgdmFsaWRfYXQ7CistLSBub24tRlBPIGRlbGV0ZToKK0RFTEVURSBGUk9NIHRl bXBvcmFsX3BlcjIgV0hFUkUgaWQxID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxf ZmsyX3JuZzJwZXIgV0hFUkUgaWQgPSAnWzEwMCwxMDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7 CistLSBGSyBhY3Jvc3MgdHdvIHJlZmVyZW5jZWQgcm93czoKK0lOU0VSVCBJTlRPIHRlbXBvcmFs X3BlcjIgKGlkMSwgaWQyLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1s4LDkpJywg J1s4LDkpJywgJzIwMTgtMDEtMDEnLCAnMjAyMC0wMS0wMScpOworSU5TRVJUIElOVE8gdGVtcG9y YWxfcGVyMiAoaWQxLCBpZDIsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzgsOSkn LCAnWzgsOSknLCAnMjAyMC0wMS0wMScsICcyMDIxLTAxLTAxJyk7CitJTlNFUlQgSU5UTyB0ZW1w b3JhbF9mazJfcm5nMnBlciAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQxLCBwYXJlbnRfaWQyKSBW QUxVRVMgKCdbMjAwLDIwMF0nLCAnWzIwMTgtMDEtMDEsMjAyMS0wMS0wMSknLCAnWzgsOSknLCAn WzgsOSknKTsKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3BlcjIgV0hFUkUgaWQxID0gJ1s4LDkpJyBB TkQgdmFsaWRfYXQgQD4gJzIwMTktMDEtMDEnOjpkYXRlOworU0VMRUNUICogRlJPTSB0ZW1wb3Jh bF9mazJfcm5nMnBlciBXSEVSRSBpZCA9ICdbMjAwLDIwMF0nIE9SREVSIEJZIGlkLCB2YWxpZF9h dDsKKworLS0KKy0tIHRlc3QgRksgcmVmZXJlbmNlZCBkZWxldGVzIFNFVCBOVUxMICh0d28gc2Nh bGFyIGNvbHMsIFNFVCBOVUxMIHN1YnNldCkKKy0tCisKK1RSVU5DQVRFIHRlbXBvcmFsX3BlcjIs IHRlbXBvcmFsX2ZrMl9ybmcycGVyOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyMiAoaWQxLCBp ZDIsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzYsNyknLCAnWzYsNyknLCAnMjAx OC0wMS0wMScsICcyMDIxLTAxLTAxJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9mazJfcm5nMnBl ciAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQxLCBwYXJlbnRfaWQyKSBWQUxVRVMgKCdbMTAwLDEw MF0nLCAnWzIwMTgtMDEtMDEsMjAyMS0wMS0wMSknLCAnWzYsNyknLCAnWzYsNyknKTsKKy0tIGZh aWxzIGJlY2F1c2UgeW91IGNhbid0IHNldCB0aGUgUEVSSU9EIGNvbHVtbjoKK0FMVEVSIFRBQkxF IHRlbXBvcmFsX2ZrMl9ybmcycGVyCisgIERST1AgQ09OU1RSQUlOVCB0ZW1wb3JhbF9mazJfcm5n MnBlcl9maywKKyAgQUREIENPTlNUUkFJTlQgdGVtcG9yYWxfZmsyX3JuZzJwZXJfZmsKKyAgICBG T1JFSUdOIEtFWSAocGFyZW50X2lkMSwgcGFyZW50X2lkMiwgUEVSSU9EIHZhbGlkX2F0KQorICAg IFJFRkVSRU5DRVMgdGVtcG9yYWxfcGVyMgorICAgIE9OIERFTEVURSBTRVQgTlVMTCAodmFsaWRf YXQpIE9OIFVQREFURSBTRVQgTlVMTDsKKy0tIG9rOgorQUxURVIgVEFCTEUgdGVtcG9yYWxfZmsy X3JuZzJwZXIKKyAgRFJPUCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrMl9ybmcycGVyX2ZrLAorICBB REQgQ09OU1RSQUlOVCB0ZW1wb3JhbF9mazJfcm5nMnBlcl9maworICAgIEZPUkVJR04gS0VZIChw YXJlbnRfaWQxLCBwYXJlbnRfaWQyLCBQRVJJT0QgdmFsaWRfYXQpCisgICAgUkVGRVJFTkNFUyB0 ZW1wb3JhbF9wZXIyCisgICAgT04gREVMRVRFIFNFVCBOVUxMIChwYXJlbnRfaWQxKSBPTiBVUERB VEUgU0VUIE5VTEw7CistLSBsZWZ0b3ZlcnMgb24gYm90aCBzaWRlczoKK0RFTEVURSBGUk9NIHRl bXBvcmFsX3BlcjIgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAxOS0wMS0wMScgVE8g JzIwMjAtMDEtMDEnIFdIRVJFIGlkMSA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFs X2ZrMl9ybmcycGVyIFdIRVJFIGlkID0gJ1sxMDAsMTAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0 OworLS0gbm9uLUZQTyBkZWxldGU6CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9wZXIyIFdIRVJFIGlk MSA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9ybmcycGVyIFdIRVJFIGlk ID0gJ1sxMDAsMTAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworLS0gRksgYWNyb3NzIHR3byBy ZWZlcmVuY2VkIHJvd3M6CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIyIChpZDEsIGlkMiwgdmFs aWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbOCw5KScsICdbOCw5KScsICcyMDE4LTAxLTAx JywgJzIwMjAtMDEtMDEnKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlcjIgKGlkMSwgaWQyLCB2 YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1s4LDkpJywgJ1s4LDkpJywgJzIwMjAtMDEt MDEnLCAnMjAyMS0wMS0wMScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmsyX3JuZzJwZXIgKGlk LCB2YWxpZF9hdCwgcGFyZW50X2lkMSwgcGFyZW50X2lkMikgVkFMVUVTICgnWzIwMCwyMDBdJywg J1syMDE4LTAxLTAxLDIwMjEtMDEtMDEpJywgJ1s4LDkpJywgJ1s4LDkpJyk7CitERUxFVEUgRlJP TSB0ZW1wb3JhbF9wZXIyIFdIRVJFIGlkMSA9ICdbOCw5KScgQU5EIHZhbGlkX2F0IEA+ICcyMDE5 LTAxLTAxJzo6ZGF0ZTsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX3JuZzJwZXIgV0hFUkUg aWQgPSAnWzIwMCwyMDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisKKy0tCistLSB0ZXN0IEZL IHJlZmVyZW5jZWQgdXBkYXRlcyBTRVQgREVGQVVMVCAodHdvIHNjYWxhciBjb2xzKQorLS0KKwor VFJVTkNBVEUgdGVtcG9yYWxfcGVyMiwgdGVtcG9yYWxfZmsyX3JuZzJwZXI7CitJTlNFUlQgSU5U TyB0ZW1wb3JhbF9wZXIyIChpZDEsIGlkMiwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMg KCdbLTEsLTFdJywgJ1stMSwtMV0nLCBudWxsLCBudWxsKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFs X3BlcjIgKGlkMSwgaWQyLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1s2LDcpJywg J1s2LDcpJywgJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpOworSU5TRVJUIElOVE8gdGVtcG9y YWxfZmsyX3JuZzJwZXIgKGlkLCB2YWxpZF9hdCwgcGFyZW50X2lkMSwgcGFyZW50X2lkMikgVkFM VUVTICgnWzEwMCwxMDBdJywgJ1syMDE4LTAxLTAxLDIwMjEtMDEtMDEpJywgJ1s2LDcpJywgJ1s2 LDcpJyk7CitBTFRFUiBUQUJMRSB0ZW1wb3JhbF9mazJfcm5nMnBlcgorICBBTFRFUiBDT0xVTU4g cGFyZW50X2lkMSBTRVQgREVGQVVMVCAnWy0xLC0xXScsCisgIEFMVEVSIENPTFVNTiBwYXJlbnRf aWQyIFNFVCBERUZBVUxUICdbLTEsLTFdJywKKyAgRFJPUCBDT05TVFJBSU5UIHRlbXBvcmFsX2Zr Ml9ybmcycGVyX2ZrLAorICBBREQgQ09OU1RSQUlOVCB0ZW1wb3JhbF9mazJfcm5nMnBlcl9mawor ICAgIEZPUkVJR04gS0VZIChwYXJlbnRfaWQxLCBwYXJlbnRfaWQyLCBQRVJJT0QgdmFsaWRfYXQp CisgICAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9wZXIyCisgICAgT04gREVMRVRFIFNFVCBERUZBVUxU IE9OIFVQREFURSBTRVQgREVGQVVMVDsKKy0tIGxlZnRvdmVycyBvbiBib3RoIHNpZGVzOgorVVBE QVRFIHRlbXBvcmFsX3BlcjIgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAxOS0wMS0w MScgVE8gJzIwMjAtMDEtMDEnIFNFVCBpZDEgPSAnWzcsOCknLCBpZDIgPSAnWzcsOCknIFdIRVJF IGlkMSA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9ybmcycGVyIFdIRVJF IGlkID0gJ1sxMDAsMTAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworLS0gbm9uLUZQTyB1cGRh dGU6CitVUERBVEUgdGVtcG9yYWxfcGVyMiBTRVQgaWQxID0gJ1s3LDgpJywgaWQyID0gJ1s3LDgp JyBXSEVSRSBpZDEgPSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9mazJfcm5nMnBl ciBXSEVSRSBpZCA9ICdbMTAwLDEwMF0nIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKy0tIEZLIGFj cm9zcyB0d28gcmVmZXJlbmNlZCByb3dzOgorSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyMiAoaWQx LCBpZDIsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWzgsOSknLCAnWzgsOSknLCAn MjAxOC0wMS0wMScsICcyMDIwLTAxLTAxJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIyIChp ZDEsIGlkMiwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbOCw5KScsICdbOCw5KScs ICcyMDIwLTAxLTAxJywgJzIwMjEtMDEtMDEnKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrMl9y bmcycGVyIChpZCwgdmFsaWRfYXQsIHBhcmVudF9pZDEsIHBhcmVudF9pZDIpIFZBTFVFUyAoJ1sy MDAsMjAwXScsICdbMjAxOC0wMS0wMSwyMDIxLTAxLTAxKScsICdbOCw5KScsICdbOCw5KScpOwor VVBEQVRFIHRlbXBvcmFsX3BlcjIgU0VUIGlkMSA9ICdbOSwxMCknLCBpZDIgPSAnWzksMTApJyBX SEVSRSBpZDEgPSAnWzgsOSknIEFORCB2YWxpZF9hdCBAPiAnMjAxOS0wMS0wMSc6OmRhdGU7CitT RUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9ybmcycGVyIFdIRVJFIGlkID0gJ1syMDAsMjAwXScg T1JERVIgQlkgaWQsIHZhbGlkX2F0OworCistLQorLS0gdGVzdCBGSyByZWZlcmVuY2VkIGRlbGV0 ZXMgU0VUIERFRkFVTFQgKHR3byBzY2FsYXIgY29scykKKy0tCisKK1RSVU5DQVRFIHRlbXBvcmFs X3BlcjIsIHRlbXBvcmFsX2ZrMl9ybmcycGVyOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyMiAo aWQxLCBpZDIsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWy0xLC0xXScsICdbLTEs LTFdJywgbnVsbCwgbnVsbCk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIyIChpZDEsIGlkMiwg dmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbNiw3KScsICdbNiw3KScsICcyMDE4LTAx LTAxJywgJzIwMjEtMDEtMDEnKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrMl9ybmcycGVyIChp ZCwgdmFsaWRfYXQsIHBhcmVudF9pZDEsIHBhcmVudF9pZDIpIFZBTFVFUyAoJ1sxMDAsMTAwXScs ICdbMjAxOC0wMS0wMSwyMDIxLTAxLTAxKScsICdbNiw3KScsICdbNiw3KScpOworLS0gbGVmdG92 ZXJzIG9uIGJvdGggc2lkZXM6CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9wZXIyIEZPUiBQT1JUSU9O IE9GIHZhbGlkX2F0IEZST00gJzIwMTktMDEtMDEnIFRPICcyMDIwLTAxLTAxJyBXSEVSRSBpZDEg PSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9mazJfcm5nMnBlciBXSEVSRSBpZCA9 ICdbMTAwLDEwMF0nIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKy0tIG5vbi1GUE8gdXBkYXRlOgor REVMRVRFIEZST00gdGVtcG9yYWxfcGVyMiBXSEVSRSBpZDEgPSAnWzYsNyknOworU0VMRUNUICog RlJPTSB0ZW1wb3JhbF9mazJfcm5nMnBlciBXSEVSRSBpZCA9ICdbMTAwLDEwMF0nIE9SREVSIEJZ IGlkLCB2YWxpZF9hdDsKKy0tIEZLIGFjcm9zcyB0d28gcmVmZXJlbmNlZCByb3dzOgorSU5TRVJU IElOVE8gdGVtcG9yYWxfcGVyMiAoaWQxLCBpZDIsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFM VUVTICgnWzgsOSknLCAnWzgsOSknLCAnMjAxOC0wMS0wMScsICcyMDIwLTAxLTAxJyk7CitJTlNF UlQgSU5UTyB0ZW1wb3JhbF9wZXIyIChpZDEsIGlkMiwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBW QUxVRVMgKCdbOCw5KScsICdbOCw5KScsICcyMDIwLTAxLTAxJywgJzIwMjEtMDEtMDEnKTsKK0lO U0VSVCBJTlRPIHRlbXBvcmFsX2ZrMl9ybmcycGVyIChpZCwgdmFsaWRfYXQsIHBhcmVudF9pZDEs IHBhcmVudF9pZDIpIFZBTFVFUyAoJ1syMDAsMjAwXScsICdbMjAxOC0wMS0wMSwyMDIxLTAxLTAx KScsICdbOCw5KScsICdbOCw5KScpOworREVMRVRFIEZST00gdGVtcG9yYWxfcGVyMiBXSEVSRSBp ZDEgPSAnWzgsOSknIEFORCB2YWxpZF9hdCBAPiAnMjAxOS0wMS0wMSc6OmRhdGU7CitTRUxFQ1Qg KiBGUk9NIHRlbXBvcmFsX2ZrMl9ybmcycGVyIFdIRVJFIGlkID0gJ1syMDAsMjAwXScgT1JERVIg QlkgaWQsIHZhbGlkX2F0OworCistLQorLS0gdGVzdCBGSyByZWZlcmVuY2VkIGRlbGV0ZXMgU0VU IERFRkFVTFQgKHR3byBzY2FsYXIgY29scywgU0VUIERFRkFVTFQgc3Vic2V0KQorLS0KKworVFJV TkNBVEUgdGVtcG9yYWxfcGVyMiwgdGVtcG9yYWxfZmsyX3JuZzJwZXI7CitJTlNFUlQgSU5UTyB0 ZW1wb3JhbF9wZXIyIChpZDEsIGlkMiwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdb LTEsLTFdJywgJ1s2LDcpJywgbnVsbCwgbnVsbCk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIy IChpZDEsIGlkMiwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbNiw3KScsICdbNiw3 KScsICcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2Zr Ml9ybmcycGVyIChpZCwgdmFsaWRfYXQsIHBhcmVudF9pZDEsIHBhcmVudF9pZDIpIFZBTFVFUyAo J1sxMDAsMTAwXScsICdbMjAxOC0wMS0wMSwyMDIxLTAxLTAxKScsICdbNiw3KScsICdbNiw3KScp OworLS0gZmFpbHMgYmVjYXVzZSB5b3UgY2FuJ3Qgc2V0IHRoZSBQRVJJT0QgY29sdW1uOgorQUxU RVIgVEFCTEUgdGVtcG9yYWxfZmsyX3JuZzJwZXIKKyAgQUxURVIgQ09MVU1OIHBhcmVudF9pZDEg U0VUIERFRkFVTFQgJ1stMSwtMV0nLAorICBEUk9QIENPTlNUUkFJTlQgdGVtcG9yYWxfZmsyX3Ju ZzJwZXJfZmssCisgIEFERCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrMl9ybmcycGVyX2ZrCisgICAg Rk9SRUlHTiBLRVkgKHBhcmVudF9pZDEsIHBhcmVudF9pZDIsIFBFUklPRCB2YWxpZF9hdCkKKyAg ICBSRUZFUkVOQ0VTIHRlbXBvcmFsX3BlcjIKKyAgICBPTiBERUxFVEUgU0VUIERFRkFVTFQgKHZh bGlkX2F0KSBPTiBVUERBVEUgU0VUIERFRkFVTFQ7CistLSBvazoKK0FMVEVSIFRBQkxFIHRlbXBv cmFsX2ZrMl9ybmcycGVyCisgIEFMVEVSIENPTFVNTiBwYXJlbnRfaWQxIFNFVCBERUZBVUxUICdb LTEsLTFdJywKKyAgRFJPUCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrMl9ybmcycGVyX2ZrLAorICBB REQgQ09OU1RSQUlOVCB0ZW1wb3JhbF9mazJfcm5nMnBlcl9maworICAgIEZPUkVJR04gS0VZIChw YXJlbnRfaWQxLCBwYXJlbnRfaWQyLCBQRVJJT0QgdmFsaWRfYXQpCisgICAgUkVGRVJFTkNFUyB0 ZW1wb3JhbF9wZXIyCisgICAgT04gREVMRVRFIFNFVCBERUZBVUxUIChwYXJlbnRfaWQxKSBPTiBV UERBVEUgU0VUIERFRkFVTFQ7CistLSBsZWZ0b3ZlcnMgb24gYm90aCBzaWRlczoKK0RFTEVURSBG Uk9NIHRlbXBvcmFsX3BlcjIgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAxOS0wMS0w MScgVE8gJzIwMjAtMDEtMDEnIFdIRVJFIGlkMSA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRl bXBvcmFsX2ZrMl9ybmcycGVyIFdIRVJFIGlkID0gJ1sxMDAsMTAwXScgT1JERVIgQlkgaWQsIHZh bGlkX2F0OworLS0gbm9uLUZQTyB1cGRhdGU6CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9wZXIyIFdI RVJFIGlkMSA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9ybmcycGVyIFdI RVJFIGlkID0gJ1sxMDAsMTAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworLS0gRksgYWNyb3Nz IHR3byByZWZlcmVuY2VkIHJvd3M6CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wZXIyIChpZDEsIGlk MiwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsKSBWQUxVRVMgKCdbOCw5KScsICdbOCw5KScsICcyMDE4 LTAxLTAxJywgJzIwMjAtMDEtMDEnKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BlcjIgKGlkMSwg aWQyLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwpIFZBTFVFUyAoJ1s4LDkpJywgJ1s4LDkpJywgJzIw MjAtMDEtMDEnLCAnMjAyMS0wMS0wMScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGVyMiAoaWQx LCBpZDIsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCkgVkFMVUVTICgnWy0xLC0xXScsICdbOCw5KScs IG51bGwsIG51bGwpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmsyX3JuZzJwZXIgKGlkLCB2YWxp ZF9hdCwgcGFyZW50X2lkMSwgcGFyZW50X2lkMikgVkFMVUVTICgnWzIwMCwyMDBdJywgJ1syMDE4 LTAxLTAxLDIwMjEtMDEtMDEpJywgJ1s4LDkpJywgJ1s4LDkpJyk7CitERUxFVEUgRlJPTSB0ZW1w b3JhbF9wZXIyIFdIRVJFIGlkMSA9ICdbOCw5KScgQU5EIHZhbGlkX2F0IEA+ICcyMDE5LTAxLTAx Jzo6ZGF0ZTsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX3JuZzJwZXIgV0hFUkUgaWQgPSAn WzIwMCwyMDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisKKy0tCistLSB0ZXN0IEZPUkVJR04g S0VZLCBQRVJJT0QgcmVmZXJlbmNlcyByYW5nZQorLS0KKworLS0gdGVzdCB0YWJsZSBzZXR1cAor RFJPUCBUQUJMRSB0ZW1wb3JhbF9ybmcgQ0FTQ0FERTsKK0NSRUFURSBUQUJMRSB0ZW1wb3JhbF9y bmcgKAorICBpZCBpbnQ0cmFuZ2UsCisgIHZhbGlkX2F0IGRhdGVyYW5nZQorKTsKK0FMVEVSIFRB QkxFIHRlbXBvcmFsX3JuZworICBBREQgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ybmdfcGsKKyAgUFJJ TUFSWSBLRVkgKGlkLCB2YWxpZF9hdCBXSVRIT1VUIE9WRVJMQVBTKTsKKworLS0gQ2FuJ3QgY3Jl YXRlIGEgRksgd2l0aCBhIG1pc21hdGNoZWQgcmFuZ2UgdHlwZQorQ1JFQVRFIFRBQkxFIHRlbXBv cmFsX2ZrX3BlcjJybmcgKAorICBpZCBpbnQ0cmFuZ2UsCisgIHZhbGlkX2Zyb20gaW50LAorICB2 YWxpZF90aWwgaW50LAorICBwYXJlbnRfaWQgaW50NHJhbmdlLAorICBQRVJJT0QgRk9SIHZhbGlk X2F0ICh2YWxpZF9mcm9tLCB2YWxpZF90aWwpLAorICBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3Bl cjJybmdfcGsgUFJJTUFSWSBLRVkgKGlkLCB2YWxpZF9hdCBXSVRIT1VUIE9WRVJMQVBTKSwKKyAg Q09OU1RSQUlOVCB0ZW1wb3JhbF9ma19wZXIycm5nX2ZrIEZPUkVJR04gS0VZIChwYXJlbnRfaWQs IFBFUklPRCB2YWxpZF9hdCkKKyAgICBSRUZFUkVOQ0VTIHRlbXBvcmFsX3JuZyAoaWQsIFBFUklP RCB2YWxpZF9hdCkKKyk7CisKKy0tIHdvcmtzOiByYW5nZSBmb3IgcmVmZXJlbmNlZCwgUEVSSU9E IGZvciByZWZlcmVuY2luZworQ1JFQVRFIFRBQkxFIHRlbXBvcmFsX2ZrX3BlcjJybmcgKAorICBp ZCBpbnQ0cmFuZ2UsCisgIHZhbGlkX2Zyb20gZGF0ZSwKKyAgdmFsaWRfdGlsIGRhdGUsCisgIHBh cmVudF9pZCBpbnQ0cmFuZ2UsCisgIFBFUklPRCBGT1IgdmFsaWRfYXQgKHZhbGlkX2Zyb20sIHZh bGlkX3RpbCksCisgIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcGVyMnJuZ19wayBQUklNQVJZIEtF WSAoaWQsIHZhbGlkX2F0IFdJVEhPVVQgT1ZFUkxBUFMpLAorICBDT05TVFJBSU5UIHRlbXBvcmFs X2ZrX3BlcjJybmdfZmsgRk9SRUlHTiBLRVkgKHBhcmVudF9pZCwgUEVSSU9EIHZhbGlkX2F0KQor ICAgIFJFRkVSRU5DRVMgdGVtcG9yYWxfcm5nIChpZCwgUEVSSU9EIHZhbGlkX2F0KQorKTsKK1xk IHRlbXBvcmFsX2ZrX3BlcjJybmcKK0RST1AgVEFCTEUgdGVtcG9yYWxfZmtfcGVyMnJuZzsKKwor LS0gd2l0aCBtaXNtYXRjaGVkIFBFUklPRCBjb2x1bW5zOgorCistLSAocGFyZW50X2lkLCBQRVJJ T0QgdmFsaWRfYXQpIFJFRkVSRU5DRVMgKGlkLCB2YWxpZF9hdCkKKy0tIFJFRkVSRU5DRVMgcGFy dCBzaG91bGQgc3BlY2lmeSBQRVJJT0QKK0NSRUFURSBUQUJMRSB0ZW1wb3JhbF9ma19wZXIycm5n ICgKKyAgaWQgaW50NHJhbmdlLAorICB2YWxpZF9mcm9tIGRhdGUsCisgIHZhbGlkX3RpbCBkYXRl LAorICBwYXJlbnRfaWQgaW50NHJhbmdlLAorICBQRVJJT0QgRk9SIHZhbGlkX2F0ICh2YWxpZF9m cm9tLCB2YWxpZF90aWwpLAorICBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3BlcjJybmdfcGsgUFJJ TUFSWSBLRVkgKGlkLCB2YWxpZF9hdCBXSVRIT1VUIE9WRVJMQVBTKSwKKyAgQ09OU1RSQUlOVCB0 ZW1wb3JhbF9ma19wZXIycm5nX2ZrIEZPUkVJR04gS0VZIChwYXJlbnRfaWQsIFBFUklPRCB2YWxp ZF9hdCkKKyAgICBSRUZFUkVOQ0VTIHRlbXBvcmFsX3JuZyAoaWQsIHZhbGlkX2F0KQorKTsKKy0t IChwYXJlbnRfaWQsIHZhbGlkX2F0KSBSRUZFUkVOQ0VTIChpZCwgdmFsaWRfYXQpCistLSBib3Ro IHNob3VsZCBzcGVjaWZ5IFBFUklPRDoKK0NSRUFURSBUQUJMRSB0ZW1wb3JhbF9ma19wZXIycm5n ICgKKyAgaWQgaW50NHJhbmdlLAorICB2YWxpZF9mcm9tIGRhdGUsCisgIHZhbGlkX3RpbCBkYXRl LAorICBwYXJlbnRfaWQgaW50NHJhbmdlLAorICBQRVJJT0QgRk9SIHZhbGlkX2F0ICh2YWxpZF9m cm9tLCB2YWxpZF90aWwpLAorICBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3BlcjJybmdfcGsgUFJJ TUFSWSBLRVkgKGlkLCB2YWxpZF9hdCBXSVRIT1VUIE9WRVJMQVBTKSwKKyAgQ09OU1RSQUlOVCB0 ZW1wb3JhbF9ma19wZXIycm5nX2ZrIEZPUkVJR04gS0VZIChwYXJlbnRfaWQsIHZhbGlkX2F0KQor ICAgIFJFRkVSRU5DRVMgdGVtcG9yYWxfcm5nIChpZCwgdmFsaWRfYXQpCispOworLS0gKHBhcmVu dF9pZCwgdmFsaWRfYXQpIFJFRkVSRU5DRVMgKGlkLCBQRVJJT0QgdmFsaWRfYXQpCistLSBGT1JF SUdOIEtFWSBwYXJ0IHNob3VsZCBzcGVjaWZ5IFBFUklPRAorQ1JFQVRFIFRBQkxFIHRlbXBvcmFs X2ZrX3BlcjJybmcgKAorICBpZCBpbnQ0cmFuZ2UsCisgIHZhbGlkX2Zyb20gZGF0ZSwKKyAgdmFs aWRfdGlsIGRhdGUsCisgIHBhcmVudF9pZCBpbnQ0cmFuZ2UsCisgIFBFUklPRCBGT1IgdmFsaWRf YXQgKHZhbGlkX2Zyb20sIHZhbGlkX3RpbCksCisgIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcGVy MnJuZ19wayBQUklNQVJZIEtFWSAoaWQsIHZhbGlkX2F0IFdJVEhPVVQgT1ZFUkxBUFMpLAorICBD T05TVFJBSU5UIHRlbXBvcmFsX2ZrX3BlcjJybmdfZmsgRk9SRUlHTiBLRVkgKHBhcmVudF9pZCwg dmFsaWRfYXQpCisgICAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9ybmcgKGlkLCBQRVJJT0QgdmFsaWRf YXQpCispOworLS0gKHBhcmVudF9pZCwgdmFsaWRfYXQpIFJFRkVSRU5DRVMgW2ltcGxpY2l0XQor LS0gRk9SRUlHTiBLRVkgcGFydCBzaG91bGQgc3BlY2lmeSBQRVJJT0QKK0NSRUFURSBUQUJMRSB0 ZW1wb3JhbF9ma19wZXIycm5nICgKKyAgaWQgaW50NHJhbmdlLAorICB2YWxpZF9mcm9tIGRhdGUs CisgIHZhbGlkX3RpbCBkYXRlLAorICBwYXJlbnRfaWQgaW50NHJhbmdlLAorICBQRVJJT0QgRk9S IHZhbGlkX2F0ICh2YWxpZF9mcm9tLCB2YWxpZF90aWwpLAorICBDT05TVFJBSU5UIHRlbXBvcmFs X2ZrX3BlcjJybmdfcGsgUFJJTUFSWSBLRVkgKGlkLCB2YWxpZF9hdCBXSVRIT1VUIE9WRVJMQVBT KSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19wZXIycm5nX2ZrIEZPUkVJR04gS0VZIChwYXJl bnRfaWQsIHZhbGlkX2F0KQorICAgIFJFRkVSRU5DRVMgdGVtcG9yYWxfcm5nCispOworLS0gKHBh cmVudF9pZCwgUEVSSU9EIHZhbGlkX2F0KSBSRUZFUkVOQ0VTIChpZCkKK0NSRUFURSBUQUJMRSB0 ZW1wb3JhbF9ma19wZXIycm5nICgKKyAgaWQgaW50NHJhbmdlLAorICB2YWxpZF9mcm9tIGRhdGUs CisgIHZhbGlkX3RpbCBkYXRlLAorICBwYXJlbnRfaWQgaW50NHJhbmdlLAorICBQRVJJT0QgRk9S IHZhbGlkX2F0ICh2YWxpZF9mcm9tLCB2YWxpZF90aWwpLAorICBDT05TVFJBSU5UIHRlbXBvcmFs X2ZrX3BlcjJybmdfcGsgUFJJTUFSWSBLRVkgKGlkLCB2YWxpZF9hdCBXSVRIT1VUIE9WRVJMQVBT KSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19wZXIycm5nX2ZrIEZPUkVJR04gS0VZIChwYXJl bnRfaWQsIFBFUklPRCB2YWxpZF9hdCkKKyAgICBSRUZFUkVOQ0VTIHRlbXBvcmFsX3JuZyAoaWQp CispOworLS0gKHBhcmVudF9pZCkgUkVGRVJFTkNFUyAoaWQsIFBFUklPRCB2YWxpZF9hdCkKK0NS RUFURSBUQUJMRSB0ZW1wb3JhbF9ma19wZXIycm5nICgKKyAgaWQgaW50NHJhbmdlLAorICB2YWxp ZF9mcm9tIGRhdGUsCisgIHZhbGlkX3RpbCBkYXRlLAorICBwYXJlbnRfaWQgaW50NHJhbmdlLAor ICBQRVJJT0QgRk9SIHZhbGlkX2F0ICh2YWxpZF9mcm9tLCB2YWxpZF90aWwpLAorICBDT05TVFJB SU5UIHRlbXBvcmFsX2ZrX3BlcjJybmdfcGsgUFJJTUFSWSBLRVkgKGlkLCB2YWxpZF9hdCBXSVRI T1VUIE9WRVJMQVBTKSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19wZXIycm5nX2ZrIEZPUkVJ R04gS0VZIChwYXJlbnRfaWQpCisgICAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9ybmcgKGlkLCBQRVJJ T0QgdmFsaWRfYXQpCispOworLS0gd2l0aCBpbmZlcnJlZCBQSyBvbiB0aGUgcmVmZXJlbmNlZCB0 YWJsZToKKy0tIChwYXJlbnRfaWQsIFBFUklPRCB2YWxpZF9hdCkgUkVGRVJFTkNFUyBbaW1wbGlj aXRdCitDUkVBVEUgVEFCTEUgdGVtcG9yYWxfZmtfcGVyMnJuZyAoCisgIGlkIGludDRyYW5nZSwK KyAgdmFsaWRfZnJvbSBkYXRlLAorICB2YWxpZF90aWwgZGF0ZSwKKyAgcGFyZW50X2lkIGludDRy YW5nZSwKKyAgUEVSSU9EIEZPUiB2YWxpZF9hdCAodmFsaWRfZnJvbSwgdmFsaWRfdGlsKSwKKyAg Q09OU1RSQUlOVCB0ZW1wb3JhbF9ma19wZXIycm5nX3BrIFBSSU1BUlkgS0VZIChpZCwgdmFsaWRf YXQgV0lUSE9VVCBPVkVSTEFQUyksCisgIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcGVyMnJuZ19m ayBGT1JFSUdOIEtFWSAocGFyZW50X2lkLCBQRVJJT0QgdmFsaWRfYXQpCisgICAgUkVGRVJFTkNF UyB0ZW1wb3JhbF9ybmcKKyk7CitEUk9QIFRBQkxFIHRlbXBvcmFsX2ZrX3BlcjJybmc7CistLSAo cGFyZW50X2lkKSBSRUZFUkVOQ0VTIFtpbXBsaWNpdF0KK0NSRUFURSBUQUJMRSB0ZW1wb3JhbF9m a19wZXIycm5nICgKKyAgaWQgaW50NHJhbmdlLAorICB2YWxpZF9mcm9tIGRhdGUsCisgIHZhbGlk X3RpbCBkYXRlLAorICBwYXJlbnRfaWQgaW50NHJhbmdlLAorICBQRVJJT0QgRk9SIHZhbGlkX2F0 ICh2YWxpZF9mcm9tLCB2YWxpZF90aWwpLAorICBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3BlcjJy bmdfcGsgUFJJTUFSWSBLRVkgKGlkLCB2YWxpZF9hdCBXSVRIT1VUIE9WRVJMQVBTKSwKKyAgQ09O U1RSQUlOVCB0ZW1wb3JhbF9ma19wZXIycm5nX2ZrIEZPUkVJR04gS0VZIChwYXJlbnRfaWQpCisg ICAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9ybmcKKyk7CisKKy0tIHNob3VsZCBmYWlsIGJlY2F1c2Ug b2YgZHVwbGljYXRlIHJlZmVyZW5jZWQgY29sdW1uczoKK0NSRUFURSBUQUJMRSB0ZW1wb3JhbF9m a19wZXIycm5nICgKKyAgaWQgaW50NHJhbmdlLAorICB2YWxpZF9mcm9tIGRhdGUsCisgIHZhbGlk X3RpbCBkYXRlLAorICBwYXJlbnRfaWQgaW50NHJhbmdlLAorICBQRVJJT0QgRk9SIHZhbGlkX2F0 ICh2YWxpZF9mcm9tLCB2YWxpZF90aWwpLAorICBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3BlcjJy bmdfcGsgUFJJTUFSWSBLRVkgKGlkLCB2YWxpZF9hdCBXSVRIT1VUIE9WRVJMQVBTKSwKKyAgQ09O U1RSQUlOVCB0ZW1wb3JhbF9ma19wZXIycm5nX2ZrIEZPUkVJR04gS0VZIChwYXJlbnRfaWQsIFBF UklPRCBwYXJlbnRfaWQpCisgICAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9ybmcgKGlkLCBQRVJJT0Qg aWQpCispOworCistLSBUd28gc2NhbGFyIGNvbHVtbnMKK0RST1AgVEFCTEUgdGVtcG9yYWxfcm5n MiBDQVNDQURFOworQ1JFQVRFIFRBQkxFIHRlbXBvcmFsX3JuZzIgKAorICBpZDEgaW50NHJhbmdl LAorICBpZDIgaW50NHJhbmdlLAorICB2YWxpZF9hdCBkYXRlcmFuZ2UsCisgIENPTlNUUkFJTlQg dGVtcG9yYWxfcm5nMl9wayBQUklNQVJZIEtFWSAoaWQxLCBpZDIsIHZhbGlkX2F0IFdJVEhPVVQg T1ZFUkxBUFMpCispOworCitDUkVBVEUgVEFCTEUgdGVtcG9yYWxfZmsyX3BlcjJybmcgKAorICBp ZCBpbnQ0cmFuZ2UsCisgIHZhbGlkX2Zyb20gZGF0ZSwKKyAgdmFsaWRfdGlsIGRhdGUsCisgIHBh cmVudF9pZDEgaW50NHJhbmdlLAorICBwYXJlbnRfaWQyIGludDRyYW5nZSwKKyAgUEVSSU9EIEZP UiB2YWxpZF9hdCAodmFsaWRfZnJvbSwgdmFsaWRfdGlsKSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3Jh bF9mazJfcGVyMnJuZ19wayBQUklNQVJZIEtFWSAoaWQsIHZhbGlkX2F0IFdJVEhPVVQgT1ZFUkxB UFMpLAorICBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrMl9wZXIycm5nX2ZrIEZPUkVJR04gS0VZIChw YXJlbnRfaWQxLCBwYXJlbnRfaWQyLCBQRVJJT0QgdmFsaWRfYXQpCisgICAgUkVGRVJFTkNFUyB0 ZW1wb3JhbF9ybmcyIChpZDEsIGlkMiwgUEVSSU9EIHZhbGlkX2F0KQorKTsKK1xkIHRlbXBvcmFs X2ZrMl9wZXIycm5nCitEUk9QIFRBQkxFIHRlbXBvcmFsX2ZrMl9wZXIycm5nOworCistLQorLS0g dGVzdCBBTFRFUiBUQUJMRSBBREQgQ09OU1RSQUlOVAorLS0KKworQ1JFQVRFIFRBQkxFIHRlbXBv cmFsX2ZrX3BlcjJybmcgKAorICBpZCBpbnQ0cmFuZ2UsCisgIHZhbGlkX2Zyb20gZGF0ZSwKKyAg dmFsaWRfdGlsIGRhdGUsCisgIHBhcmVudF9pZCBpbnQ0cmFuZ2UsCisgIFBFUklPRCBGT1IgdmFs aWRfYXQgKHZhbGlkX2Zyb20sIHZhbGlkX3RpbCksCisgIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtf cGVyMnJuZ19wayBQUklNQVJZIEtFWSAoaWQsIHZhbGlkX2F0IFdJVEhPVVQgT1ZFUkxBUFMpCisp OworQUxURVIgVEFCTEUgdGVtcG9yYWxfZmtfcGVyMnJuZworICBBREQgQ09OU1RSQUlOVCB0ZW1w b3JhbF9ma19wZXIycm5nX2ZrCisgIEZPUkVJR04gS0VZIChwYXJlbnRfaWQsIFBFUklPRCB2YWxp ZF9hdCkKKyAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9ybmcgKGlkLCBQRVJJT0QgdmFsaWRfYXQpOwor LS0gVHdvIHNjYWxhciBjb2x1bW5zOgorQ1JFQVRFIFRBQkxFIHRlbXBvcmFsX2ZrMl9wZXIycm5n ICgKKyAgaWQgaW50NHJhbmdlLAorICB2YWxpZF9mcm9tIGRhdGUsCisgIHZhbGlkX3RpbCBkYXRl LAorICBwYXJlbnRfaWQxIGludDRyYW5nZSwKKyAgcGFyZW50X2lkMiBpbnQ0cmFuZ2UsCisgIFBF UklPRCBGT1IgdmFsaWRfYXQgKHZhbGlkX2Zyb20sIHZhbGlkX3RpbCksCisgIENPTlNUUkFJTlQg dGVtcG9yYWxfZmsyX3BlcjJybmdfcGsgUFJJTUFSWSBLRVkgKGlkLCB2YWxpZF9hdCBXSVRIT1VU IE9WRVJMQVBTKQorKTsKK0FMVEVSIFRBQkxFIHRlbXBvcmFsX2ZrMl9wZXIycm5nCisgIEFERCBD T05TVFJBSU5UIHRlbXBvcmFsX2ZrMl9wZXIycm5nX2ZrCisgIEZPUkVJR04gS0VZIChwYXJlbnRf aWQxLCBwYXJlbnRfaWQyLCBQRVJJT0QgdmFsaWRfYXQpCisgIFJFRkVSRU5DRVMgdGVtcG9yYWxf cm5nMiAoaWQxLCBpZDIsIFBFUklPRCB2YWxpZF9hdCk7CitcZCB0ZW1wb3JhbF9mazJfcGVyMnJu ZworCistLSB3aXRoIGluZmVycmVkIFBLIG9uIHRoZSByZWZlcmVuY2VkIHRhYmxlLCBhbmQgd3Jv bmcgY29sdW1uIHR5cGU6CitBTFRFUiBUQUJMRSB0ZW1wb3JhbF9ma19wZXIycm5nCisgIERST1Ag Q09OU1RSQUlOVCB0ZW1wb3JhbF9ma19wZXIycm5nX2ZrLAorICBEUk9QIFBFUklPRCBGT1IgdmFs aWRfYXQsCisgIEFMVEVSIENPTFVNTiB2YWxpZF9mcm9tIFRZUEUgdGltZXN0YW1wLAorICBBTFRF UiBDT0xVTU4gdmFsaWRfdGlsIFRZUEUgdGltZXN0YW1wLAorICBBREQgUEVSSU9EIEZPUiB2YWxp ZF9hdCAodmFsaWRfZnJvbSwgdmFsaWRfdGlsKTsKK0FMVEVSIFRBQkxFIHRlbXBvcmFsX2ZrX3Bl cjJybmcKKyAgQUREIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcGVyMnJuZ19maworICBGT1JFSUdO IEtFWSAocGFyZW50X2lkLCBQRVJJT0QgdmFsaWRfYXQpCisgIFJFRkVSRU5DRVMgdGVtcG9yYWxf cm5nOworQUxURVIgVEFCTEUgdGVtcG9yYWxfZmtfcGVyMnJuZworICBEUk9QIFBFUklPRCBGT1Ig dmFsaWRfYXQsCisgIEFMVEVSIENPTFVNTiB2YWxpZF9mcm9tIFRZUEUgZGF0ZSwKKyAgQUxURVIg Q09MVU1OIHZhbGlkX3RpbCBUWVBFIGRhdGUsCisgIEFERCBQRVJJT0QgRk9SIHZhbGlkX2F0ICh2 YWxpZF9mcm9tLCB2YWxpZF90aWwpOworCistLSB3aXRoIGluZmVycmVkIFBLIG9uIHRoZSByZWZl cmVuY2VkIHRhYmxlOgorQUxURVIgVEFCTEUgdGVtcG9yYWxfZmtfcGVyMnJuZworICBBREQgQ09O U1RSQUlOVCB0ZW1wb3JhbF9ma19wZXIycm5nX2ZrCisgIEZPUkVJR04gS0VZIChwYXJlbnRfaWQs IFBFUklPRCB2YWxpZF9hdCkKKyAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9ybmc7CisKKy0tIHNob3Vs ZCBmYWlsIGJlY2F1c2Ugb2YgZHVwbGljYXRlIHJlZmVyZW5jZWQgY29sdW1uczoKK0FMVEVSIFRB QkxFIHRlbXBvcmFsX2ZrX3BlcjJybmcKKyAgQUREIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcGVy MnJuZ19mazIKKyAgRk9SRUlHTiBLRVkgKHBhcmVudF9pZCwgUEVSSU9EIHBhcmVudF9pZCkKKyAg UkVGRVJFTkNFUyB0ZW1wb3JhbF9ybmcgKGlkLCBQRVJJT0QgaWQpOworCistLQorLS0gdGVzdCB3 aXRoIHJvd3MgYWxyZWFkeQorLS0KKworREVMRVRFIEZST00gdGVtcG9yYWxfZmtfcGVyMnJuZzsK K0RFTEVURSBGUk9NIHRlbXBvcmFsX3JuZzsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3JuZyAoaWQs IHZhbGlkX2F0KSBWQUxVRVMKKyAgKCdbMSwyKScsICdbMjAxOC0wMS0wMiwyMDE4LTAyLTAzKScp LAorICAoJ1sxLDIpJywgJ1syMDE4LTAzLTAzLDIwMTgtMDQtMDQpJyksCisgICgnWzIsMyknLCAn WzIwMTgtMDEtMDEsMjAxOC0wMS0wNSknKSwKKyAgKCdbMyw0KScsICdbMjAxOC0wMS0wMSwpJyk7 CisKK0FMVEVSIFRBQkxFIHRlbXBvcmFsX2ZrX3BlcjJybmcKKyAgRFJPUCBDT05TVFJBSU5UIHRl bXBvcmFsX2ZrX3BlcjJybmdfZms7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ma19wZXIycm5nIChp ZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsLCBwYXJlbnRfaWQpIFZBTFVFUyAoJ1sxLDIpJywgJzIw MTgtMDEtMDInLCAnMjAxOC0wMi0wMScsICdbMSwyKScpOworQUxURVIgVEFCTEUgdGVtcG9yYWxf ZmtfcGVyMnJuZworICBBREQgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19wZXIycm5nX2ZrCisgIEZP UkVJR04gS0VZIChwYXJlbnRfaWQsIFBFUklPRCB2YWxpZF9hdCkKKyAgUkVGRVJFTkNFUyB0ZW1w b3JhbF9ybmc7CitBTFRFUiBUQUJMRSB0ZW1wb3JhbF9ma19wZXIycm5nCisgIERST1AgQ09OU1RS QUlOVCB0ZW1wb3JhbF9ma19wZXIycm5nX2ZrOworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmtfcGVy MnJuZyAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCwgcGFyZW50X2lkKSBWQUxVRVMgKCdbMiwz KScsICcyMDE4LTAxLTAyJywgJzIwMTgtMDQtMDEnLCAnWzEsMiknKTsKKy0tIHNob3VsZCBmYWls OgorQUxURVIgVEFCTEUgdGVtcG9yYWxfZmtfcGVyMnJuZworICBBREQgQ09OU1RSQUlOVCB0ZW1w b3JhbF9ma19wZXIycm5nX2ZrCisgIEZPUkVJR04gS0VZIChwYXJlbnRfaWQsIFBFUklPRCB2YWxp ZF9hdCkKKyAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9ybmc7CistLSBva2F5IGFnYWluOgorREVMRVRF IEZST00gdGVtcG9yYWxfZmtfcGVyMnJuZzsKK0FMVEVSIFRBQkxFIHRlbXBvcmFsX2ZrX3BlcjJy bmcKKyAgQUREIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcGVyMnJuZ19maworICBGT1JFSUdOIEtF WSAocGFyZW50X2lkLCBQRVJJT0QgdmFsaWRfYXQpCisgIFJFRkVSRU5DRVMgdGVtcG9yYWxfcm5n OworCistLQorLS0gdGVzdCBwZ19nZXRfY29uc3RyYWludGRlZgorLS0KKworU0VMRUNUIHBnX2dl dF9jb25zdHJhaW50ZGVmKG9pZCkgRlJPTSBwZ19jb25zdHJhaW50IFdIRVJFIGNvbm5hbWUgPSAn dGVtcG9yYWxfZmtfcGVyMnJuZ19mayc7CisKKy0tCistLSB0ZXN0IEZLIHJlZmVyZW5jaW5nIGlu c2VydHMKKy0tCisKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrX3BlcjJybmcgKGlkLCB2YWxpZF9m cm9tLCB2YWxpZF90aWwsIHBhcmVudF9pZCkgVkFMVUVTICgnWzEsMiknLCAnMjAxOC0wMS0wMics ICcyMDE4LTAyLTAxJywgJ1sxLDIpJyk7CistLSBzaG91bGQgZmFpbDoKK0lOU0VSVCBJTlRPIHRl bXBvcmFsX2ZrX3BlcjJybmcgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwsIHBhcmVudF9pZCkg VkFMVUVTICgnWzIsMyknLCAnMjAxOC0wMS0wMicsICcyMDE4LTA0LTAxJywgJ1sxLDIpJyk7Cist LSBub3cgaXQgc2hvdWxkIHdvcms6CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ybmcgKGlkLCB2YWxp ZF9hdCkgVkFMVUVTICgnWzEsMiknLCAnWzIwMTgtMDItMDMsMjAxOC0wMy0wMyknKTsKK0lOU0VS VCBJTlRPIHRlbXBvcmFsX2ZrX3BlcjJybmcgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwsIHBh cmVudF9pZCkgVkFMVUVTICgnWzIsMyknLCAnMjAxOC0wMS0wMicsICcyMDE4LTA0LTAxJywgJ1sx LDIpJyk7CisKKy0tCistLSB0ZXN0IEZLIHJlZmVyZW5jaW5nIHVwZGF0ZXMKKy0tCisKKy0tIHNs aWRlIHRoZSBlZGdlIGFjcm9zcyBhIHJlZmVyZW5jZWQgdHJhbnNpdGlvbjoKK1VQREFURSB0ZW1w b3JhbF9ma19wZXIycm5nIFNFVCB2YWxpZF9mcm9tID0gJzIwMTgtMDEtMDInLCB2YWxpZF90aWwg PSAnMjAxOC0wMi0yMCcgV0hFUkUgaWQgPSAnWzEsMiknOworLS0gc2hvdWxkIGZhaWw6CitVUERB VEUgdGVtcG9yYWxfZmtfcGVyMnJuZyBTRVQgdmFsaWRfZnJvbSA9ICcyMDE4LTAxLTAyJywgdmFs aWRfdGlsID0gJzIwMTgtMDUtMDEnIFdIRVJFIGlkID0gJ1sxLDIpJzsKK1VQREFURSB0ZW1wb3Jh bF9ma19wZXIycm5nIFNFVCBwYXJlbnRfaWQgPSAnWzgsOSknIFdIRVJFIGlkID0gJ1sxLDIpJzsK KworLS0gQUxURVIgRksgREVGRVJSQUJMRQorCitCRUdJTjsKKyAgSU5TRVJUIElOVE8gdGVtcG9y YWxfcm5nIChpZCwgdmFsaWRfYXQpIFZBTFVFUworICAgICgnWzUsNiknLCAnWzIwMTgtMDEtMDEs MjAxOC0wMi0wMSknKSwKKyAgICAoJ1s1LDYpJywgJ1syMDE4LTAyLTAxLDIwMTgtMDMtMDEpJyk7 CisgIElOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrX3BlcjJybmcgKGlkLCB2YWxpZF9mcm9tLCB2YWxp ZF90aWwsIHBhcmVudF9pZCkgVkFMVUVTCisgICAgKCdbMyw0KScsICcyMDE4LTAxLTA1JywgJzIw MTgtMDEtMTAnLCAnWzUsNiknKTsKKyAgQUxURVIgVEFCTEUgdGVtcG9yYWxfZmtfcGVyMnJuZwor ICAgIEFMVEVSIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcGVyMnJuZ19maworICAgIERFRkVSUkFC TEUgSU5JVElBTExZIERFRkVSUkVEOworCisgIERFTEVURSBGUk9NIHRlbXBvcmFsX3JuZyBXSEVS RSBpZCA9ICdbNSw2KSc7IC0tc2hvdWxkIG5vdCBmYWlsIHlldC4KK0NPTU1JVDsgLS0gc2hvdWxk IGZhaWwgaGVyZS4KKworLS0KKy0tIHRlc3QgRksgcmVmZXJlbmNlZCB1cGRhdGVzIE5PIEFDVElP TgorLS0KKworVFJVTkNBVEUgdGVtcG9yYWxfcm5nLCB0ZW1wb3JhbF9ma19wZXIycm5nOworQUxU RVIgVEFCTEUgdGVtcG9yYWxfZmtfcGVyMnJuZworICBEUk9QIENPTlNUUkFJTlQgdGVtcG9yYWxf ZmtfcGVyMnJuZ19mazsKK0FMVEVSIFRBQkxFIHRlbXBvcmFsX2ZrX3BlcjJybmcKKyAgQUREIENP TlNUUkFJTlQgdGVtcG9yYWxfZmtfcGVyMnJuZ19maworICBGT1JFSUdOIEtFWSAocGFyZW50X2lk LCBQRVJJT0QgdmFsaWRfYXQpCisgIFJFRkVSRU5DRVMgdGVtcG9yYWxfcm5nCisgIE9OIFVQREFU RSBOTyBBQ1RJT047CistLSBhIFBLIHVwZGF0ZSB0aGF0IHN1Y2NlZWRzIGJlY2F1c2UgdGhlIG51 bWVyaWMgaWQgaXNuJ3QgcmVmZXJlbmNlZDoKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3JuZyAoaWQs IHZhbGlkX2F0KSBWQUxVRVMgKCdbNSw2KScsICdbMjAxOC0wMS0wMSwyMDE4LTAyLTAxKScpOwor VVBEQVRFIHRlbXBvcmFsX3JuZyBTRVQgdmFsaWRfYXQgPSAnWzIwMTYtMDEtMDEsMjAxNi0wMi0w MSknIFdIRVJFIGlkID0gJ1s1LDYpJzsKKy0tIGEgUEsgdXBkYXRlIHRoYXQgc3VjY2VlZHMgZXZl biB0aG91Z2ggdGhlIG51bWVyaWMgaWQgaXMgcmVmZXJlbmNlZCBiZWNhdXNlIHRoZSByYW5nZSBp c24ndDoKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3JuZyBXSEVSRSBpZCA9ICdbNSw2KSc7CitJTlNF UlQgSU5UTyB0ZW1wb3JhbF9ybmcgKGlkLCB2YWxpZF9hdCkgVkFMVUVTCisgICgnWzUsNiknLCAn WzIwMTgtMDEtMDEsMjAxOC0wMi0wMSknKSwKKyAgKCdbNSw2KScsICdbMjAxOC0wMi0wMSwyMDE4 LTAzLTAxKScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmtfcGVyMnJuZyAoaWQsIHZhbGlkX2Zy b20sIHZhbGlkX3RpbCwgcGFyZW50X2lkKSBWQUxVRVMKKyAgKCdbMyw0KScsICcyMDE4LTAxLTA1 JywgJzIwMTgtMDEtMTAnLCAnWzUsNiknKTsKK1VQREFURSB0ZW1wb3JhbF9ybmcgU0VUIHZhbGlk X2F0ID0gJ1syMDE2LTAyLTAxLDIwMTYtMDMtMDEpJworV0hFUkUgaWQgPSAnWzUsNiknIEFORCB2 YWxpZF9hdCA9ICdbMjAxOC0wMi0wMSwyMDE4LTAzLTAxKSc7CistLSBBIFBLIHVwZGF0ZSBzbGlk aW5nIHRoZSBlZGdlIGJldHdlZW4gdHdvIHJlZmVyZW5jZWQgcm93czoKK0lOU0VSVCBJTlRPIHRl bXBvcmFsX3JuZyAoaWQsIHZhbGlkX2F0KSBWQUxVRVMKKyAgKCdbNiw3KScsICdbMjAxOC0wMS0w MSwyMDE4LTAyLTAxKScpLAorICAoJ1s2LDcpJywgJ1syMDE4LTAyLTAxLDIwMTgtMDMtMDEpJyk7 CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ma19wZXIycm5nIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRf dGlsLCBwYXJlbnRfaWQpIFZBTFVFUworICAoJ1s0LDUpJywgJzIwMTgtMDEtMTUnLCAnMjAxOC0w Mi0xNScsICdbNiw3KScpOworVVBEQVRFIHRlbXBvcmFsX3JuZworU0VUIHZhbGlkX2F0ID0gQ0FT RSBXSEVOIGxvd2VyKHZhbGlkX2F0KSA9ICcyMDE4LTAxLTAxJyBUSEVOIGRhdGVyYW5nZSgnMjAx OC0wMS0wMScsICcyMDE4LTAxLTA1JykKKyAgICAgICAgICAgICAgICAgICAgV0hFTiBsb3dlcih2 YWxpZF9hdCkgPSAnMjAxOC0wMi0wMScgVEhFTiBkYXRlcmFuZ2UoJzIwMTgtMDEtMDUnLCAnMjAx OC0wMy0wMScpIEVORAorV0hFUkUgaWQgPSAnWzYsNyknOworLS0gYSBQSyB1cGRhdGUgc2hyaW5r aW5nIHRoZSByZWZlcmVuY2VkIHJhbmdlIGJ1dCBzdGlsbCB2YWxpZDoKKy0tIFRoZXJlIGFyZSB0 d28gcmVmZXJlbmNlczogb25lIGZ1bGZpbGxlZCBieSB0aGUgZmlyc3QgcGsgcm93LAorLS0gdGhl IG90aGVyIGZ1bGZpbGxlZCBieSBib3RoIHBrIHJvd3MgY29tYmluZWQuCitJTlNFUlQgSU5UTyB0 ZW1wb3JhbF9ybmcgKGlkLCB2YWxpZF9hdCkgVkFMVUVTCisgICgnWzEsMiknLCAnWzIwMTgtMDEt MDEsMjAxOC0wMy0wMSknKSwKKyAgKCdbMSwyKScsICdbMjAxOC0wMy0wMSwyMDE4LTA2LTAxKScp OworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmtfcGVyMnJuZyAoaWQsIHZhbGlkX2Zyb20sIHZhbGlk X3RpbCwgcGFyZW50X2lkKSBWQUxVRVMKKyAgKCdbMSwyKScsICcyMDE4LTAxLTE1JywgJzIwMTgt MDItMDEnLCAnWzEsMiknKSwKKyAgKCdbMiwzKScsICcyMDE4LTAxLTE1JywgJzIwMTgtMDUtMDEn LCAnWzEsMiknKTsKK1VQREFURSB0ZW1wb3JhbF9ybmcgU0VUIHZhbGlkX2F0ID0gJ1syMDE4LTAx LTE1LDIwMTgtMDMtMDEpJworV0hFUkUgaWQgPSAnWzEsMiknIEFORCB2YWxpZF9hdCBAPiAnMjAx OC0wMS0xNSc6OmRhdGU7CistLSBhIFBLIHVwZGF0ZSBncm93aW5nIHRoZSByZWZlcmVuY2VkIHJh bmdlIGlzIGZpbmU6CitVUERBVEUgdGVtcG9yYWxfcm5nIFNFVCB2YWxpZF9hdCA9ICdbMjAxOC0w MS0wMSwyMDE4LTAzLTAxKScKK1dIRVJFIGlkID0gJ1sxLDIpJyBBTkQgdmFsaWRfYXQgQD4gJzIw MTgtMDEtMjUnOjpkYXRlOworLS0gYSBQSyB1cGRhdGUgc2hyaW5raW5nIHRoZSByZWZlcmVuY2Vk IHJhbmdlIGFuZCBjaGFuZ2luZyB0aGUgaWQgaW52YWxpZGF0ZXMgdGhlIHdob2xlIHJhbmdlOgor VVBEQVRFIHRlbXBvcmFsX3JuZyBTRVQgaWQgPSAnWzIsMyknLCB2YWxpZF9hdCA9ICdbMjAxOC0w MS0xNSwyMDE4LTAzLTAxKScKK1dIRVJFIGlkID0gJ1sxLDIpJyBBTkQgdmFsaWRfYXQgQD4gJzIw MTgtMDEtMTUnOjpkYXRlOworLS0gYSBQSyB1cGRhdGUgY2hhbmdpbmcgb25seSB0aGUgaWQgaW52 YWxpZGF0ZXMgdGhlIHdob2xlIHJhbmdlOgorVVBEQVRFIHRlbXBvcmFsX3JuZyBTRVQgaWQgPSAn WzIsMyknCitXSEVSRSBpZCA9ICdbMSwyKScgQU5EIHZhbGlkX2F0IEA+ICcyMDE4LTAxLTE1Jzo6 ZGF0ZTsKKy0tIGEgUEsgdXBkYXRlIHRoYXQgbG9zZXMgdGltZSBmcm9tIGJvdGggZW5kcywgYnV0 IGlzIHN0aWxsIHZhbGlkOgorSU5TRVJUIElOVE8gdGVtcG9yYWxfcm5nIChpZCwgdmFsaWRfYXQp IFZBTFVFUworICAoJ1syLDMpJywgJ1syMDE4LTAxLTAxLDIwMTgtMDMtMDEpJyk7CitJTlNFUlQg SU5UTyB0ZW1wb3JhbF9ma19wZXIycm5nIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsLCBwYXJl bnRfaWQpIFZBTFVFUworICAoJ1s1LDYpJywgJzIwMTgtMDEtMTUnLCAnMjAxOC0wMi0wMScsICdb MiwzKScpOworVVBEQVRFIHRlbXBvcmFsX3JuZyBTRVQgdmFsaWRfYXQgPSAnWzIwMTgtMDEtMTUs MjAxOC0wMi0xNSknCitXSEVSRSBpZCA9ICdbMiwzKSc7CistLSBhIFBLIHVwZGF0ZSB0aGF0IGZh aWxzIGJlY2F1c2UgYm90aCBhcmUgcmVmZXJlbmNlZDoKK1VQREFURSB0ZW1wb3JhbF9ybmcgU0VU IHZhbGlkX2F0ID0gJ1syMDE2LTAxLTAxLDIwMTYtMDItMDEpJworV0hFUkUgaWQgPSAnWzUsNikn IEFORCB2YWxpZF9hdCA9ICdbMjAxOC0wMS0wMSwyMDE4LTAyLTAxKSc7CistLSBhIFBLIHVwZGF0 ZSB0aGF0IGZhaWxzIGJlY2F1c2UgYm90aCBhcmUgcmVmZXJlbmNlZCwgYnV0IG5vdCAndGlsIGNv bW1pdDoKK0JFR0lOOworICBBTFRFUiBUQUJMRSB0ZW1wb3JhbF9ma19wZXIycm5nCisgICAgQUxU RVIgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19wZXIycm5nX2ZrCisgICAgREVGRVJSQUJMRSBJTklU SUFMTFkgREVGRVJSRUQ7CisKKyAgVVBEQVRFIHRlbXBvcmFsX3JuZyBTRVQgdmFsaWRfYXQgPSAn WzIwMTYtMDEtMDEsMjAxNi0wMi0wMSknCisgIFdIRVJFIGlkID0gJ1s1LDYpJyBBTkQgdmFsaWRf YXQgPSBkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAxOC0wMi0wMScpOworQ09NTUlUOworLS0g Y2hhbmdpbmcgdGhlIHNjYWxhciBwYXJ0IGZhaWxzOgorVVBEQVRFIHRlbXBvcmFsX3JuZyBTRVQg aWQgPSAnWzcsOCknCitXSEVSRSBpZCA9ICdbNSw2KScgQU5EIHZhbGlkX2F0ID0gJ1syMDE4LTAx LTAxLDIwMTgtMDItMDEpJzsKKy0tIGNoYW5naW5nIGFuIHVucmVmZXJlbmNlZCBwYXJ0IGlzIG9r YXk6CitVUERBVEUgdGVtcG9yYWxfcm5nCitGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcy MDE4LTAxLTAyJyBUTyAnMjAxOC0wMS0wMycKK1NFVCBpZCA9ICdbNyw4KScKK1dIRVJFIGlkID0g J1s1LDYpJzsKKy0tIGNoYW5naW5nIGp1c3QgYSBwYXJ0IGZhaWxzOgorVVBEQVRFIHRlbXBvcmFs X3JuZworRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAxOC0wMS0wNScgVE8gJzIwMTgt MDEtMTAnCitTRVQgaWQgPSAnWzcsOCknCitXSEVSRSBpZCA9ICdbNSw2KSc7CitTRUxFQ1QgKiBG Uk9NIHRlbXBvcmFsX3JuZyBXSEVSRSBpZCBpbiAoJ1s1LDYpJywgJ1s3LDgpJykgT1JERVIgQlkg aWQsIHZhbGlkX2F0OworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9ma19wZXIycm5nIFdIRVJFIGlk IGluICgnWzMsNCknKSBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CistLSB0aGVuIGRlbGV0ZSB0aGUg b2JqZWN0aW5nIEZLIHJlY29yZCBhbmQgdGhlIHNhbWUgUEsgdXBkYXRlIHN1Y2NlZWRzOgorREVM RVRFIEZST00gdGVtcG9yYWxfZmtfcGVyMnJuZyBXSEVSRSBpZCA9ICdbMyw0KSc7CitVUERBVEUg dGVtcG9yYWxfcm5nIFNFVCB2YWxpZF9hdCA9ICdbMjAxNi0wMS0wMSwyMDE2LTAyLTAxKScKK1dI RVJFIGlkID0gJ1s1LDYpJyBBTkQgdmFsaWRfYXQgPSAnWzIwMTgtMDEtMDEsMjAxOC0wMi0wMSkn OworCistLQorLS0gdGVzdCBGSyByZWZlcmVuY2VkIHVwZGF0ZXMgUkVTVFJJQ1QKKy0tCisKK1RS VU5DQVRFIHRlbXBvcmFsX3JuZywgdGVtcG9yYWxfZmtfcGVyMnJuZzsKK0FMVEVSIFRBQkxFIHRl bXBvcmFsX2ZrX3BlcjJybmcKKyAgRFJPUCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX3BlcjJybmdf Zms7CitBTFRFUiBUQUJMRSB0ZW1wb3JhbF9ma19wZXIycm5nCisgIEFERCBDT05TVFJBSU5UIHRl bXBvcmFsX2ZrX3BlcjJybmdfZmsKKyAgRk9SRUlHTiBLRVkgKHBhcmVudF9pZCwgUEVSSU9EIHZh bGlkX2F0KQorICBSRUZFUkVOQ0VTIHRlbXBvcmFsX3JuZworICBPTiBVUERBVEUgUkVTVFJJQ1Q7 CisKKy0tCistLSB0ZXN0IEZLIHJlZmVyZW5jZWQgZGVsZXRlcyBOTyBBQ1RJT04KKy0tCisKK1RS VU5DQVRFIHRlbXBvcmFsX3JuZywgdGVtcG9yYWxfZmtfcGVyMnJuZzsKK0FMVEVSIFRBQkxFIHRl bXBvcmFsX2ZrX3BlcjJybmcKKyAgQUREIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcGVyMnJuZ19m aworICBGT1JFSUdOIEtFWSAocGFyZW50X2lkLCBQRVJJT0QgdmFsaWRfYXQpCisgIFJFRkVSRU5D RVMgdGVtcG9yYWxfcm5nOworLS0gYSBQSyBkZWxldGUgdGhhdCBzdWNjZWVkcyBiZWNhdXNlIHRo ZSBudW1lcmljIGlkIGlzbid0IHJlZmVyZW5jZWQ6CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ybmcg KGlkLCB2YWxpZF9hdCkgVkFMVUVTICgnWzUsNiknLCAnWzIwMTgtMDEtMDEsMjAxOC0wMi0wMSkn KTsKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3JuZyBXSEVSRSBpZCA9ICdbNSw2KSc7CistLSBhIFBL IGRlbGV0ZSB0aGF0IHN1Y2NlZWRzIGV2ZW4gdGhvdWdoIHRoZSBudW1lcmljIGlkIGlzIHJlZmVy ZW5jZWQgYmVjYXVzZSB0aGUgcmFuZ2UgaXNuJ3Q6CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ybmcg KGlkLCB2YWxpZF9hdCkgVkFMVUVTCisgICgnWzUsNiknLCAnWzIwMTgtMDEtMDEsMjAxOC0wMi0w MSknKSwKKyAgKCdbNSw2KScsICdbMjAxOC0wMi0wMSwyMDE4LTAzLTAxKScpOworSU5TRVJUIElO VE8gdGVtcG9yYWxfZmtfcGVyMnJuZyAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCwgcGFyZW50 X2lkKSBWQUxVRVMgKCdbMyw0KScsICcyMDE4LTAxLTA1JywgJzIwMTgtMDEtMTAnLCAnWzUsNikn KTsKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3JuZyBXSEVSRSBpZCA9ICdbNSw2KScgQU5EIHZhbGlk X2F0ID0gJ1syMDE4LTAyLTAxLDIwMTgtMDMtMDEpJzsKKy0tIGEgUEsgZGVsZXRlIHRoYXQgZmFp bHMgYmVjYXVzZSBib3RoIGFyZSByZWZlcmVuY2VkOgorREVMRVRFIEZST00gdGVtcG9yYWxfcm5n IFdIRVJFIGlkID0gJ1s1LDYpJyBBTkQgdmFsaWRfYXQgPSAnWzIwMTgtMDEtMDEsMjAxOC0wMi0w MSknOworLS0gYSBQSyBkZWxldGUgdGhhdCBmYWlscyBiZWNhdXNlIGJvdGggYXJlIHJlZmVyZW5j ZWQsIGJ1dCBub3QgJ3RpbCBjb21taXQ6CitCRUdJTjsKKyAgQUxURVIgVEFCTEUgdGVtcG9yYWxf ZmtfcGVyMnJuZworICAgIEFMVEVSIENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcGVyMnJuZ19mawor ICAgIERFRkVSUkFCTEUgSU5JVElBTExZIERFRkVSUkVEOworCisgIERFTEVURSBGUk9NIHRlbXBv cmFsX3JuZyBXSEVSRSBpZCA9ICdbNSw2KScgQU5EIHZhbGlkX2F0ID0gZGF0ZXJhbmdlKCcyMDE4 LTAxLTAxJywgJzIwMTgtMDItMDEnKTsKK0NPTU1JVDsKKy0tIGRlbGV0aW5nIGFuIHVucmVmZXJl bmNlZCBwYXJ0IGlzIG9rYXk6CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9ybmcKK0ZPUiBQT1JUSU9O IE9GIHZhbGlkX2F0IEZST00gJzIwMTgtMDEtMDInIFRPICcyMDE4LTAxLTAzJworV0hFUkUgaWQg PSAnWzUsNiknOworLS0gZGVsZXRpbmcganVzdCBhIHBhcnQgZmFpbHM6CitERUxFVEUgRlJPTSB0 ZW1wb3JhbF9ybmcKK0ZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMTgtMDEtMDUnIFRP ICcyMDE4LTAxLTEwJworV0hFUkUgaWQgPSAnWzUsNiknOworU0VMRUNUICogRlJPTSB0ZW1wb3Jh bF9ybmcgV0hFUkUgaWQgaW4gKCdbNSw2KScsICdbNyw4KScpIE9SREVSIEJZIGlkLCB2YWxpZF9h dDsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmtfcGVyMnJuZyBXSEVSRSBpZCBpbiAoJ1szLDQp JykgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworLS0gdGhlbiBkZWxldGUgdGhlIG9iamVjdGluZyBG SyByZWNvcmQgYW5kIHRoZSBzYW1lIFBLIGRlbGV0ZSBzdWNjZWVkczoKK0RFTEVURSBGUk9NIHRl bXBvcmFsX2ZrX3BlcjJybmcgV0hFUkUgaWQgPSAnWzMsNCknOworREVMRVRFIEZST00gdGVtcG9y YWxfcm5nIFdIRVJFIGlkID0gJ1s1LDYpJyBBTkQgdmFsaWRfYXQgPSAnWzIwMTgtMDEtMDEsMjAx OC0wMi0wMSknOworCistLQorLS0gdGVzdCBGSyByZWZlcmVuY2VkIGRlbGV0ZXMgUkVTVFJJQ1QK Ky0tCisKK1RSVU5DQVRFIHRlbXBvcmFsX3JuZywgdGVtcG9yYWxfZmtfcGVyMnJuZzsKK0FMVEVS IFRBQkxFIHRlbXBvcmFsX2ZrX3BlcjJybmcKKyAgRFJPUCBDT05TVFJBSU5UIHRlbXBvcmFsX2Zr X3BlcjJybmdfZms7CitBTFRFUiBUQUJMRSB0ZW1wb3JhbF9ma19wZXIycm5nCisgIEFERCBDT05T VFJBSU5UIHRlbXBvcmFsX2ZrX3BlcjJybmdfZmsKKyAgRk9SRUlHTiBLRVkgKHBhcmVudF9pZCwg UEVSSU9EIHZhbGlkX2F0KQorICBSRUZFUkVOQ0VTIHRlbXBvcmFsX3JuZworICBPTiBERUxFVEUg UkVTVFJJQ1Q7CisKKy0tCistLSBwZXIycm5nIHRlc3QgT04gVVBEQVRFL0RFTEVURSBvcHRpb25z CistLQorLS0gVE9DOgorLS0gcmVmZXJlbmNlZCB1cGRhdGVzIENBU0NBREUKKy0tIHJlZmVyZW5j ZWQgZGVsZXRlcyBDQVNDQURFCistLSByZWZlcmVuY2VkIHVwZGF0ZXMgU0VUIE5VTEwKKy0tIHJl ZmVyZW5jZWQgZGVsZXRlcyBTRVQgTlVMTAorLS0gcmVmZXJlbmNlZCB1cGRhdGVzIFNFVCBERUZB VUxUCistLSByZWZlcmVuY2VkIGRlbGV0ZXMgU0VUIERFRkFVTFQKKy0tIHJlZmVyZW5jZWQgdXBk YXRlcyBDQVNDQURFICh0d28gc2NhbGFyIGNvbHMpCistLSByZWZlcmVuY2VkIGRlbGV0ZXMgQ0FT Q0FERSAodHdvIHNjYWxhciBjb2xzKQorLS0gcmVmZXJlbmNlZCB1cGRhdGVzIFNFVCBOVUxMICh0 d28gc2NhbGFyIGNvbHMpCistLSByZWZlcmVuY2VkIGRlbGV0ZXMgU0VUIE5VTEwgKHR3byBzY2Fs YXIgY29scykKKy0tIHJlZmVyZW5jZWQgZGVsZXRlcyBTRVQgTlVMTCAodHdvIHNjYWxhciBjb2xz LCBTRVQgTlVMTCBzdWJzZXQpCistLSByZWZlcmVuY2VkIHVwZGF0ZXMgU0VUIERFRkFVTFQgKHR3 byBzY2FsYXIgY29scykKKy0tIHJlZmVyZW5jZWQgZGVsZXRlcyBTRVQgREVGQVVMVCAodHdvIHNj YWxhciBjb2xzKQorLS0gcmVmZXJlbmNlZCBkZWxldGVzIFNFVCBERUZBVUxUICh0d28gc2NhbGFy IGNvbHMsIFNFVCBERUZBVUxUIHN1YnNldCkKKworLS0KKy0tIHRlc3QgRksgcmVmZXJlbmNlZCB1 cGRhdGVzIENBU0NBREUKKy0tCisKK1RSVU5DQVRFIHRlbXBvcmFsX3JuZywgdGVtcG9yYWxfZmtf cGVyMnJuZzsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3JuZyAoaWQsIHZhbGlkX2F0KSBWQUxVRVMg KCdbNiw3KScsICdbMjAxOC0wMS0wMSwyMDIxLTAxLTAxKScpOworSU5TRVJUIElOVE8gdGVtcG9y YWxfZmtfcGVyMnJuZyAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCwgcGFyZW50X2lkKSBWQUxV RVMgKCdbMTAwLDEwMF0nLCAnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJywgJ1s2LDcpJyk7CitB TFRFUiBUQUJMRSB0ZW1wb3JhbF9ma19wZXIycm5nCisgIEFERCBDT05TVFJBSU5UIHRlbXBvcmFs X2ZrX3BlcjJybmdfZmsKKyAgICBGT1JFSUdOIEtFWSAocGFyZW50X2lkLCBQRVJJT0QgdmFsaWRf YXQpCisgICAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9ybmcKKyAgICBPTiBERUxFVEUgQ0FTQ0FERSBP TiBVUERBVEUgQ0FTQ0FERTsKKy0tIGxlZnRvdmVycyBvbiBib3RoIHNpZGVzOgorVVBEQVRFIHRl bXBvcmFsX3JuZyBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDE5LTAxLTAxJyBUTyAn MjAyMC0wMS0wMScgU0VUIGlkID0gJ1s3LDgpJyBXSEVSRSBpZCA9ICdbNiw3KSc7CitTRUxFQ1Qg KiBGUk9NIHRlbXBvcmFsX2ZrX3BlcjJybmcgV0hFUkUgaWQgPSAnWzEwMCwxMDBdJyBPUkRFUiBC WSBpZCwgdmFsaWRfYXQ7CistLSBub24tRlBPIHVwZGF0ZToKK1VQREFURSB0ZW1wb3JhbF9ybmcg U0VUIGlkID0gJ1s3LDgpJyBXSEVSRSBpZCA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBv cmFsX2ZrX3BlcjJybmcgV0hFUkUgaWQgPSAnWzEwMCwxMDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRf YXQ7CistLSBGSyBhY3Jvc3MgdHdvIHJlZmVyZW5jZWQgcm93czoKK0lOU0VSVCBJTlRPIHRlbXBv cmFsX3JuZyAoaWQsIHZhbGlkX2F0KSBWQUxVRVMgKCdbOCw5KScsICdbMjAxOC0wMS0wMSwyMDIw LTAxLTAxKScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcm5nIChpZCwgdmFsaWRfYXQpIFZBTFVF UyAoJ1s4LDkpJywgJ1syMDIwLTAxLTAxLDIwMjEtMDEtMDEpJyk7CitJTlNFUlQgSU5UTyB0ZW1w b3JhbF9ma19wZXIycm5nIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsLCBwYXJlbnRfaWQpIFZB TFVFUyAoJ1syMDAsMjAwXScsICcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnLCAnWzgsOSknKTsK K1VQREFURSB0ZW1wb3JhbF9ybmcgU0VUIGlkID0gJ1s5LDEwKScgV0hFUkUgaWQgPSAnWzgsOSkn IEFORCB2YWxpZF9hdCBAPiAnMjAxOS0wMS0wMSc6OmRhdGU7CitTRUxFQ1QgKiBGUk9NIHRlbXBv cmFsX2ZrX3BlcjJybmcgV0hFUkUgaWQgPSAnWzIwMCwyMDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRf YXQ7CisKKy0tCistLSB0ZXN0IEZLIHJlZmVyZW5jZWQgZGVsZXRlcyBDQVNDQURFCistLQorCitU UlVOQ0FURSB0ZW1wb3JhbF9ybmcsIHRlbXBvcmFsX2ZrX3BlcjJybmc7CitJTlNFUlQgSU5UTyB0 ZW1wb3JhbF9ybmcgKGlkLCB2YWxpZF9hdCkgVkFMVUVTICgnWzYsNyknLCAnWzIwMTgtMDEtMDEs MjAyMS0wMS0wMSknKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrX3BlcjJybmcgKGlkLCB2YWxp ZF9mcm9tLCB2YWxpZF90aWwsIHBhcmVudF9pZCkgVkFMVUVTICgnWzEwMCwxMDBdJywgJzIwMTgt MDEtMDEnLCAnMjAyMS0wMS0wMScsICdbNiw3KScpOworLS0gbGVmdG92ZXJzIG9uIGJvdGggc2lk ZXM6CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9ybmcgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJP TSAnMjAxOS0wMS0wMScgVE8gJzIwMjAtMDEtMDEnIFdIRVJFIGlkID0gJ1s2LDcpJzsKK1NFTEVD VCAqIEZST00gdGVtcG9yYWxfZmtfcGVyMnJuZyBXSEVSRSBpZCA9ICdbMTAwLDEwMF0nIE9SREVS IEJZIGlkLCB2YWxpZF9hdDsKKy0tIG5vbi1GUE8gZGVsZXRlOgorREVMRVRFIEZST00gdGVtcG9y YWxfcm5nIFdIRVJFIGlkID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmtfcGVy MnJuZyBXSEVSRSBpZCA9ICdbMTAwLDEwMF0nIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKy0tIEZL IGFjcm9zcyB0d28gcmVmZXJlbmNlZCByb3dzOgorSU5TRVJUIElOVE8gdGVtcG9yYWxfcm5nIChp ZCwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s4LDkpJywgJ1syMDE4LTAxLTAxLDIwMjAtMDEtMDEpJyk7 CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ybmcgKGlkLCB2YWxpZF9hdCkgVkFMVUVTICgnWzgsOSkn LCAnWzIwMjAtMDEtMDEsMjAyMS0wMS0wMSknKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrX3Bl cjJybmcgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwsIHBhcmVudF9pZCkgVkFMVUVTICgnWzIw MCwyMDBdJywgJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScsICdbOCw5KScpOworREVMRVRFIEZS T00gdGVtcG9yYWxfcm5nIFdIRVJFIGlkID0gJ1s4LDkpJyBBTkQgdmFsaWRfYXQgQD4gJzIwMTkt MDEtMDEnOjpkYXRlOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9ma19wZXIycm5nIFdIRVJFIGlk ID0gJ1syMDAsMjAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworCistLQorLS0gdGVzdCBGSyBy ZWZlcmVuY2VkIHVwZGF0ZXMgU0VUIE5VTEwKKy0tCisKK1RSVU5DQVRFIHRlbXBvcmFsX3JuZywg dGVtcG9yYWxfZmtfcGVyMnJuZzsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3JuZyAoaWQsIHZhbGlk X2F0KSBWQUxVRVMgKCdbNiw3KScsICdbMjAxOC0wMS0wMSwyMDIxLTAxLTAxKScpOworSU5TRVJU IElOVE8gdGVtcG9yYWxfZmtfcGVyMnJuZyAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCwgcGFy ZW50X2lkKSBWQUxVRVMgKCdbMTAwLDEwMF0nLCAnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJywg J1s2LDcpJyk7CitBTFRFUiBUQUJMRSB0ZW1wb3JhbF9ma19wZXIycm5nCisgIERST1AgQ09OU1RS QUlOVCB0ZW1wb3JhbF9ma19wZXIycm5nX2ZrLAorICBBREQgQ09OU1RSQUlOVCB0ZW1wb3JhbF9m a19wZXIycm5nX2ZrCisgICAgRk9SRUlHTiBLRVkgKHBhcmVudF9pZCwgUEVSSU9EIHZhbGlkX2F0 KQorICAgIFJFRkVSRU5DRVMgdGVtcG9yYWxfcm5nCisgICAgT04gREVMRVRFIFNFVCBOVUxMIE9O IFVQREFURSBTRVQgTlVMTDsKKy0tIGxlZnRvdmVycyBvbiBib3RoIHNpZGVzOgorVVBEQVRFIHRl bXBvcmFsX3JuZyBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDE5LTAxLTAxJyBUTyAn MjAyMC0wMS0wMScgU0VUIGlkID0gJ1s3LDgpJyBXSEVSRSBpZCA9ICdbNiw3KSc7CitTRUxFQ1Qg KiBGUk9NIHRlbXBvcmFsX2ZrX3BlcjJybmcgV0hFUkUgaWQgPSAnWzEwMCwxMDBdJyBPUkRFUiBC WSBpZCwgdmFsaWRfYXQ7CistLSBub24tRlBPIHVwZGF0ZToKK1VQREFURSB0ZW1wb3JhbF9ybmcg U0VUIGlkID0gJ1s3LDgpJyBXSEVSRSBpZCA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBv cmFsX2ZrX3BlcjJybmcgV0hFUkUgaWQgPSAnWzEwMCwxMDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRf YXQ7CistLSBGSyBhY3Jvc3MgdHdvIHJlZmVyZW5jZWQgcm93czoKK0lOU0VSVCBJTlRPIHRlbXBv cmFsX3JuZyAoaWQsIHZhbGlkX2F0KSBWQUxVRVMgKCdbOCw5KScsICdbMjAxOC0wMS0wMSwyMDIw LTAxLTAxKScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcm5nIChpZCwgdmFsaWRfYXQpIFZBTFVF UyAoJ1s4LDkpJywgJ1syMDIwLTAxLTAxLDIwMjEtMDEtMDEpJyk7CitJTlNFUlQgSU5UTyB0ZW1w b3JhbF9ma19wZXIycm5nIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsLCBwYXJlbnRfaWQpIFZB TFVFUyAoJ1syMDAsMjAwXScsICcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnLCAnWzgsOSknKTsK K1VQREFURSB0ZW1wb3JhbF9ybmcgU0VUIGlkID0gJ1s5LDEwKScgV0hFUkUgaWQgPSAnWzgsOSkn IEFORCB2YWxpZF9hdCBAPiAnMjAxOS0wMS0wMSc6OmRhdGU7CitTRUxFQ1QgKiBGUk9NIHRlbXBv cmFsX2ZrX3BlcjJybmcgV0hFUkUgaWQgPSAnWzIwMCwyMDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRf YXQ7CisKKy0tCistLSB0ZXN0IEZLIHJlZmVyZW5jZWQgZGVsZXRlcyBTRVQgTlVMTAorLS0KKwor VFJVTkNBVEUgdGVtcG9yYWxfcm5nLCB0ZW1wb3JhbF9ma19wZXIycm5nOworSU5TRVJUIElOVE8g dGVtcG9yYWxfcm5nIChpZCwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s2LDcpJywgJ1syMDE4LTAxLTAx LDIwMjEtMDEtMDEpJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ma19wZXIycm5nIChpZCwgdmFs aWRfZnJvbSwgdmFsaWRfdGlsLCBwYXJlbnRfaWQpIFZBTFVFUyAoJ1sxMDAsMTAwXScsICcyMDE4 LTAxLTAxJywgJzIwMjEtMDEtMDEnLCAnWzYsNyknKTsKKy0tIGxlZnRvdmVycyBvbiBib3RoIHNp ZGVzOgorREVMRVRFIEZST00gdGVtcG9yYWxfcm5nIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZS T00gJzIwMTktMDEtMDEnIFRPICcyMDIwLTAxLTAxJyBXSEVSRSBpZCA9ICdbNiw3KSc7CitTRUxF Q1QgKiBGUk9NIHRlbXBvcmFsX2ZrX3BlcjJybmcgV0hFUkUgaWQgPSAnWzEwMCwxMDBdJyBPUkRF UiBCWSBpZCwgdmFsaWRfYXQ7CistLSBub24tRlBPIGRlbGV0ZToKK0RFTEVURSBGUk9NIHRlbXBv cmFsX3JuZyBXSEVSRSBpZCA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrX3Bl cjJybmcgV0hFUkUgaWQgPSAnWzEwMCwxMDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CistLSBG SyBhY3Jvc3MgdHdvIHJlZmVyZW5jZWQgcm93czoKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3JuZyAo aWQsIHZhbGlkX2F0KSBWQUxVRVMgKCdbOCw5KScsICdbMjAxOC0wMS0wMSwyMDIwLTAxLTAxKScp OworSU5TRVJUIElOVE8gdGVtcG9yYWxfcm5nIChpZCwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s4LDkp JywgJ1syMDIwLTAxLTAxLDIwMjEtMDEtMDEpJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ma19w ZXIycm5nIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsLCBwYXJlbnRfaWQpIFZBTFVFUyAoJ1sy MDAsMjAwXScsICcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnLCAnWzgsOSknKTsKK0RFTEVURSBG Uk9NIHRlbXBvcmFsX3JuZyBXSEVSRSBpZCA9ICdbOCw5KScgQU5EIHZhbGlkX2F0IEA+ICcyMDE5 LTAxLTAxJzo6ZGF0ZTsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmtfcGVyMnJuZyBXSEVSRSBp ZCA9ICdbMjAwLDIwMF0nIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKworLS0KKy0tIHRlc3QgRksg cmVmZXJlbmNlZCB1cGRhdGVzIFNFVCBERUZBVUxUCistLQorCitUUlVOQ0FURSB0ZW1wb3JhbF9y bmcsIHRlbXBvcmFsX2ZrX3BlcjJybmc7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ybmcgKGlkLCB2 YWxpZF9hdCkgVkFMVUVTICgnWy0xLC0xXScsICcoLCknKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFs X3JuZyAoaWQsIHZhbGlkX2F0KSBWQUxVRVMgKCdbNiw3KScsICdbMjAxOC0wMS0wMSwyMDIxLTAx LTAxKScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmtfcGVyMnJuZyAoaWQsIHZhbGlkX2Zyb20s IHZhbGlkX3RpbCwgcGFyZW50X2lkKSBWQUxVRVMgKCdbMTAwLDEwMF0nLCAnMjAxOC0wMS0wMScs ICcyMDIxLTAxLTAxJywgJ1s2LDcpJyk7CitBTFRFUiBUQUJMRSB0ZW1wb3JhbF9ma19wZXIycm5n CisgIEFMVEVSIENPTFVNTiBwYXJlbnRfaWQgU0VUIERFRkFVTFQgJ1stMSwtMV0nLAorICBEUk9Q IENPTlNUUkFJTlQgdGVtcG9yYWxfZmtfcGVyMnJuZ19maywKKyAgQUREIENPTlNUUkFJTlQgdGVt cG9yYWxfZmtfcGVyMnJuZ19maworICAgIEZPUkVJR04gS0VZIChwYXJlbnRfaWQsIFBFUklPRCB2 YWxpZF9hdCkKKyAgICBSRUZFUkVOQ0VTIHRlbXBvcmFsX3JuZworICAgIE9OIERFTEVURSBTRVQg REVGQVVMVCBPTiBVUERBVEUgU0VUIERFRkFVTFQ7CistLSBsZWZ0b3ZlcnMgb24gYm90aCBzaWRl czoKK1VQREFURSB0ZW1wb3JhbF9ybmcgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAx OS0wMS0wMScgVE8gJzIwMjAtMDEtMDEnIFNFVCBpZCA9ICdbNyw4KScgV0hFUkUgaWQgPSAnWzYs NyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9ma19wZXIycm5nIFdIRVJFIGlkID0gJ1sxMDAs MTAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworLS0gbm9uLUZQTyB1cGRhdGU6CitVUERBVEUg dGVtcG9yYWxfcm5nIFNFVCBpZCA9ICdbNyw4KScgV0hFUkUgaWQgPSAnWzYsNyknOworU0VMRUNU ICogRlJPTSB0ZW1wb3JhbF9ma19wZXIycm5nIFdIRVJFIGlkID0gJ1sxMDAsMTAwXScgT1JERVIg QlkgaWQsIHZhbGlkX2F0OworLS0gRksgYWNyb3NzIHR3byByZWZlcmVuY2VkIHJvd3M6CitJTlNF UlQgSU5UTyB0ZW1wb3JhbF9ybmcgKGlkLCB2YWxpZF9hdCkgVkFMVUVTICgnWzgsOSknLCAnWzIw MTgtMDEtMDEsMjAyMC0wMS0wMSknKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3JuZyAoaWQsIHZh bGlkX2F0KSBWQUxVRVMgKCdbOCw5KScsICdbMjAyMC0wMS0wMSwyMDIxLTAxLTAxKScpOworSU5T RVJUIElOVE8gdGVtcG9yYWxfZmtfcGVyMnJuZyAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCwg cGFyZW50X2lkKSBWQUxVRVMgKCdbMjAwLDIwMF0nLCAnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAx JywgJ1s4LDkpJyk7CitVUERBVEUgdGVtcG9yYWxfcm5nIFNFVCBpZCA9ICdbOSwxMCknIFdIRVJF IGlkID0gJ1s4LDkpJyBBTkQgdmFsaWRfYXQgQD4gJzIwMTktMDEtMDEnOjpkYXRlOworU0VMRUNU ICogRlJPTSB0ZW1wb3JhbF9ma19wZXIycm5nIFdIRVJFIGlkID0gJ1syMDAsMjAwXScgT1JERVIg QlkgaWQsIHZhbGlkX2F0OworCistLQorLS0gdGVzdCBGSyByZWZlcmVuY2VkIGRlbGV0ZXMgU0VU IERFRkFVTFQKKy0tCisKK1RSVU5DQVRFIHRlbXBvcmFsX3JuZywgdGVtcG9yYWxfZmtfcGVyMnJu ZzsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3JuZyAoaWQsIHZhbGlkX2F0KSBWQUxVRVMgKCdbLTEs LTFdJywgJygsKScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcm5nIChpZCwgdmFsaWRfYXQpIFZB TFVFUyAoJ1s2LDcpJywgJ1syMDE4LTAxLTAxLDIwMjEtMDEtMDEpJyk7CitJTlNFUlQgSU5UTyB0 ZW1wb3JhbF9ma19wZXIycm5nIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsLCBwYXJlbnRfaWQp IFZBTFVFUyAoJ1sxMDAsMTAwXScsICcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnLCAnWzYsNykn KTsKKy0tIGxlZnRvdmVycyBvbiBib3RoIHNpZGVzOgorREVMRVRFIEZST00gdGVtcG9yYWxfcm5n IEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMTktMDEtMDEnIFRPICcyMDIwLTAxLTAx JyBXSEVSRSBpZCA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrX3BlcjJybmcg V0hFUkUgaWQgPSAnWzEwMCwxMDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CistLSBub24tRlBP IHVwZGF0ZToKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3JuZyBXSEVSRSBpZCA9ICdbNiw3KSc7CitT RUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrX3BlcjJybmcgV0hFUkUgaWQgPSAnWzEwMCwxMDBdJyBP UkRFUiBCWSBpZCwgdmFsaWRfYXQ7CistLSBGSyBhY3Jvc3MgdHdvIHJlZmVyZW5jZWQgcm93czoK K0lOU0VSVCBJTlRPIHRlbXBvcmFsX3JuZyAoaWQsIHZhbGlkX2F0KSBWQUxVRVMgKCdbOCw5KScs ICdbMjAxOC0wMS0wMSwyMDIwLTAxLTAxKScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcm5nIChp ZCwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s4LDkpJywgJ1syMDIwLTAxLTAxLDIwMjEtMDEtMDEpJyk7 CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ma19wZXIycm5nIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRf dGlsLCBwYXJlbnRfaWQpIFZBTFVFUyAoJ1syMDAsMjAwXScsICcyMDE4LTAxLTAxJywgJzIwMjEt MDEtMDEnLCAnWzgsOSknKTsKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3JuZyBXSEVSRSBpZCA9ICdb OCw5KScgQU5EIHZhbGlkX2F0IEA+ICcyMDE5LTAxLTAxJzo6ZGF0ZTsKK1NFTEVDVCAqIEZST00g dGVtcG9yYWxfZmtfcGVyMnJuZyBXSEVSRSBpZCA9ICdbMjAwLDIwMF0nIE9SREVSIEJZIGlkLCB2 YWxpZF9hdDsKKworLS0KKy0tIHRlc3QgRksgcmVmZXJlbmNlZCB1cGRhdGVzIENBU0NBREUgKHR3 byBzY2FsYXIgY29scykKKy0tCisKK1RSVU5DQVRFIHRlbXBvcmFsX3JuZzIsIHRlbXBvcmFsX2Zr Ml9wZXIycm5nOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcm5nMiAoaWQxLCBpZDIsIHZhbGlkX2F0 KSBWQUxVRVMgKCdbNiw3KScsICdbNiw3KScsICdbMjAxOC0wMS0wMSwyMDIxLTAxLTAxKScpOwor SU5TRVJUIElOVE8gdGVtcG9yYWxfZmsyX3BlcjJybmcgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90 aWwsIHBhcmVudF9pZDEsIHBhcmVudF9pZDIpIFZBTFVFUyAoJ1sxMDAsMTAwXScsICcyMDE4LTAx LTAxJywgJzIwMjEtMDEtMDEnLCAnWzYsNyknLCAnWzYsNyknKTsKK0FMVEVSIFRBQkxFIHRlbXBv cmFsX2ZrMl9wZXIycm5nCisgIERST1AgQ09OU1RSQUlOVCB0ZW1wb3JhbF9mazJfcGVyMnJuZ19m aywKKyAgQUREIENPTlNUUkFJTlQgdGVtcG9yYWxfZmsyX3BlcjJybmdfZmsKKyAgICBGT1JFSUdO IEtFWSAocGFyZW50X2lkMSwgcGFyZW50X2lkMiwgUEVSSU9EIHZhbGlkX2F0KQorICAgIFJFRkVS RU5DRVMgdGVtcG9yYWxfcm5nMgorICAgIE9OIERFTEVURSBDQVNDQURFIE9OIFVQREFURSBDQVND QURFOworLS0gbGVmdG92ZXJzIG9uIGJvdGggc2lkZXM6CitVUERBVEUgdGVtcG9yYWxfcm5nMiBG T1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDE5LTAxLTAxJyBUTyAnMjAyMC0wMS0wMScg U0VUIGlkMSA9ICdbNyw4KScgV0hFUkUgaWQxID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVt cG9yYWxfZmsyX3BlcjJybmcgV0hFUkUgaWQgPSAnWzEwMCwxMDBdJyBPUkRFUiBCWSBpZCwgdmFs aWRfYXQ7CistLSBub24tRlBPIHVwZGF0ZToKK1VQREFURSB0ZW1wb3JhbF9ybmcyIFNFVCBpZDEg PSAnWzcsOCknIFdIRVJFIGlkMSA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2Zr Ml9wZXIycm5nIFdIRVJFIGlkID0gJ1sxMDAsMTAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0Owor LS0gRksgYWNyb3NzIHR3byByZWZlcmVuY2VkIHJvd3M6CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9y bmcyIChpZDEsIGlkMiwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s4LDkpJywgJ1s4LDkpJywgJ1syMDE4 LTAxLTAxLDIwMjAtMDEtMDEpJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ybmcyIChpZDEsIGlk MiwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s4LDkpJywgJ1s4LDkpJywgJ1syMDIwLTAxLTAxLDIwMjEt MDEtMDEpJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9mazJfcGVyMnJuZyAoaWQsIHZhbGlkX2Zy b20sIHZhbGlkX3RpbCwgcGFyZW50X2lkMSwgcGFyZW50X2lkMikgVkFMVUVTICgnWzIwMCwyMDBd JywgJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScsICdbOCw5KScsICdbOCw5KScpOworVVBEQVRF IHRlbXBvcmFsX3JuZzIgU0VUIGlkMSA9ICdbOSwxMCknIFdIRVJFIGlkMSA9ICdbOCw5KScgQU5E IHZhbGlkX2F0IEA+ICcyMDE5LTAxLTAxJzo6ZGF0ZTsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxf ZmsyX3BlcjJybmcgV0hFUkUgaWQgPSAnWzIwMCwyMDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7 CisKKy0tCistLSB0ZXN0IEZLIHJlZmVyZW5jZWQgZGVsZXRlcyBDQVNDQURFICh0d28gc2NhbGFy IGNvbHMpCistLQorCitUUlVOQ0FURSB0ZW1wb3JhbF9ybmcyLCB0ZW1wb3JhbF9mazJfcGVyMnJu ZzsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3JuZzIgKGlkMSwgaWQyLCB2YWxpZF9hdCkgVkFMVUVT ICgnWzYsNyknLCAnWzYsNyknLCAnWzIwMTgtMDEtMDEsMjAyMS0wMS0wMSknKTsKK0lOU0VSVCBJ TlRPIHRlbXBvcmFsX2ZrMl9wZXIycm5nIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsLCBwYXJl bnRfaWQxLCBwYXJlbnRfaWQyKSBWQUxVRVMgKCdbMTAwLDEwMF0nLCAnMjAxOC0wMS0wMScsICcy MDIxLTAxLTAxJywgJ1s2LDcpJywgJ1s2LDcpJyk7CistLSBsZWZ0b3ZlcnMgb24gYm90aCBzaWRl czoKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3JuZzIgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJP TSAnMjAxOS0wMS0wMScgVE8gJzIwMjAtMDEtMDEnIFdIRVJFIGlkMSA9ICdbNiw3KSc7CitTRUxF Q1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9wZXIycm5nIFdIRVJFIGlkID0gJ1sxMDAsMTAwXScgT1JE RVIgQlkgaWQsIHZhbGlkX2F0OworLS0gbm9uLUZQTyBkZWxldGU6CitERUxFVEUgRlJPTSB0ZW1w b3JhbF9ybmcyIFdIRVJFIGlkMSA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2Zr Ml9wZXIycm5nIFdIRVJFIGlkID0gJ1sxMDAsMTAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0Owor LS0gRksgYWNyb3NzIHR3byByZWZlcmVuY2VkIHJvd3M6CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9y bmcyIChpZDEsIGlkMiwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s4LDkpJywgJ1s4LDkpJywgJ1syMDE4 LTAxLTAxLDIwMjAtMDEtMDEpJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ybmcyIChpZDEsIGlk MiwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s4LDkpJywgJ1s4LDkpJywgJ1syMDIwLTAxLTAxLDIwMjEt MDEtMDEpJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9mazJfcGVyMnJuZyAoaWQsIHZhbGlkX2Zy b20sIHZhbGlkX3RpbCwgcGFyZW50X2lkMSwgcGFyZW50X2lkMikgVkFMVUVTICgnWzIwMCwyMDBd JywgJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScsICdbOCw5KScsICdbOCw5KScpOworREVMRVRF IEZST00gdGVtcG9yYWxfcm5nMiBXSEVSRSBpZDEgPSAnWzgsOSknIEFORCB2YWxpZF9hdCBAPiAn MjAxOS0wMS0wMSc6OmRhdGU7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9wZXIycm5nIFdI RVJFIGlkID0gJ1syMDAsMjAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworCistLQorLS0gdGVz dCBGSyByZWZlcmVuY2VkIHVwZGF0ZXMgU0VUIE5VTEwgKHR3byBzY2FsYXIgY29scykKKy0tCisK K1RSVU5DQVRFIHRlbXBvcmFsX3JuZzIsIHRlbXBvcmFsX2ZrMl9wZXIycm5nOworSU5TRVJUIElO VE8gdGVtcG9yYWxfcm5nMiAoaWQxLCBpZDIsIHZhbGlkX2F0KSBWQUxVRVMgKCdbNiw3KScsICdb Niw3KScsICdbMjAxOC0wMS0wMSwyMDIxLTAxLTAxKScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxf ZmsyX3BlcjJybmcgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwsIHBhcmVudF9pZDEsIHBhcmVu dF9pZDIpIFZBTFVFUyAoJ1sxMDAsMTAwXScsICcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnLCAn WzYsNyknLCAnWzYsNyknKTsKK0FMVEVSIFRBQkxFIHRlbXBvcmFsX2ZrMl9wZXIycm5nCisgIERS T1AgQ09OU1RSQUlOVCB0ZW1wb3JhbF9mazJfcGVyMnJuZ19maywKKyAgQUREIENPTlNUUkFJTlQg dGVtcG9yYWxfZmsyX3BlcjJybmdfZmsKKyAgICBGT1JFSUdOIEtFWSAocGFyZW50X2lkMSwgcGFy ZW50X2lkMiwgUEVSSU9EIHZhbGlkX2F0KQorICAgIFJFRkVSRU5DRVMgdGVtcG9yYWxfcm5nMgor ICAgIE9OIERFTEVURSBTRVQgTlVMTCBPTiBVUERBVEUgU0VUIE5VTEw7CistLSBsZWZ0b3ZlcnMg b24gYm90aCBzaWRlczoKK1VQREFURSB0ZW1wb3JhbF9ybmcyIEZPUiBQT1JUSU9OIE9GIHZhbGlk X2F0IEZST00gJzIwMTktMDEtMDEnIFRPICcyMDIwLTAxLTAxJyBTRVQgaWQxID0gJ1s3LDgpJyBX SEVSRSBpZDEgPSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9mazJfcGVyMnJuZyBX SEVSRSBpZCA9ICdbMTAwLDEwMF0nIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKy0tIG5vbi1GUE8g dXBkYXRlOgorVVBEQVRFIHRlbXBvcmFsX3JuZzIgU0VUIGlkMSA9ICdbNyw4KScgV0hFUkUgaWQx ID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX3BlcjJybmcgV0hFUkUgaWQg PSAnWzEwMCwxMDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CistLSBGSyBhY3Jvc3MgdHdvIHJl ZmVyZW5jZWQgcm93czoKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3JuZzIgKGlkMSwgaWQyLCB2YWxp ZF9hdCkgVkFMVUVTICgnWzgsOSknLCAnWzgsOSknLCAnWzIwMTgtMDEtMDEsMjAyMC0wMS0wMSkn KTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3JuZzIgKGlkMSwgaWQyLCB2YWxpZF9hdCkgVkFMVUVT ICgnWzgsOSknLCAnWzgsOSknLCAnWzIwMjAtMDEtMDEsMjAyMS0wMS0wMSknKTsKK0lOU0VSVCBJ TlRPIHRlbXBvcmFsX2ZrMl9wZXIycm5nIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsLCBwYXJl bnRfaWQxLCBwYXJlbnRfaWQyKSBWQUxVRVMgKCdbMjAwLDIwMF0nLCAnMjAxOC0wMS0wMScsICcy MDIxLTAxLTAxJywgJ1s4LDkpJywgJ1s4LDkpJyk7CitVUERBVEUgdGVtcG9yYWxfcm5nMiBTRVQg aWQxID0gJ1s5LDEwKScgV0hFUkUgaWQxID0gJ1s4LDkpJyBBTkQgdmFsaWRfYXQgQD4gJzIwMTkt MDEtMDEnOjpkYXRlOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9mazJfcGVyMnJuZyBXSEVSRSBp ZCA9ICdbMjAwLDIwMF0nIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKworLS0KKy0tIHRlc3QgRksg cmVmZXJlbmNlZCBkZWxldGVzIFNFVCBOVUxMICh0d28gc2NhbGFyIGNvbHMpCistLQorCitUUlVO Q0FURSB0ZW1wb3JhbF9ybmcyLCB0ZW1wb3JhbF9mazJfcGVyMnJuZzsKK0lOU0VSVCBJTlRPIHRl bXBvcmFsX3JuZzIgKGlkMSwgaWQyLCB2YWxpZF9hdCkgVkFMVUVTICgnWzYsNyknLCAnWzYsNykn LCAnWzIwMTgtMDEtMDEsMjAyMS0wMS0wMSknKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrMl9w ZXIycm5nIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsLCBwYXJlbnRfaWQxLCBwYXJlbnRfaWQy KSBWQUxVRVMgKCdbMTAwLDEwMF0nLCAnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJywgJ1s2LDcp JywgJ1s2LDcpJyk7CistLSBsZWZ0b3ZlcnMgb24gYm90aCBzaWRlczoKK0RFTEVURSBGUk9NIHRl bXBvcmFsX3JuZzIgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAxOS0wMS0wMScgVE8g JzIwMjAtMDEtMDEnIFdIRVJFIGlkMSA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFs X2ZrMl9wZXIycm5nIFdIRVJFIGlkID0gJ1sxMDAsMTAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0 OworLS0gbm9uLUZQTyBkZWxldGU6CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9ybmcyIFdIRVJFIGlk MSA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9wZXIycm5nIFdIRVJFIGlk ID0gJ1sxMDAsMTAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworLS0gRksgYWNyb3NzIHR3byBy ZWZlcmVuY2VkIHJvd3M6CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ybmcyIChpZDEsIGlkMiwgdmFs aWRfYXQpIFZBTFVFUyAoJ1s4LDkpJywgJ1s4LDkpJywgJ1syMDE4LTAxLTAxLDIwMjAtMDEtMDEp Jyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ybmcyIChpZDEsIGlkMiwgdmFsaWRfYXQpIFZBTFVF UyAoJ1s4LDkpJywgJ1s4LDkpJywgJ1syMDIwLTAxLTAxLDIwMjEtMDEtMDEpJyk7CitJTlNFUlQg SU5UTyB0ZW1wb3JhbF9mazJfcGVyMnJuZyAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCwgcGFy ZW50X2lkMSwgcGFyZW50X2lkMikgVkFMVUVTICgnWzIwMCwyMDBdJywgJzIwMTgtMDEtMDEnLCAn MjAyMS0wMS0wMScsICdbOCw5KScsICdbOCw5KScpOworREVMRVRFIEZST00gdGVtcG9yYWxfcm5n MiBXSEVSRSBpZDEgPSAnWzgsOSknIEFORCB2YWxpZF9hdCBAPiAnMjAxOS0wMS0wMSc6OmRhdGU7 CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9wZXIycm5nIFdIRVJFIGlkID0gJ1syMDAsMjAw XScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworCistLQorLS0gdGVzdCBGSyByZWZlcmVuY2VkIGRl bGV0ZXMgU0VUIE5VTEwgKHR3byBzY2FsYXIgY29scywgU0VUIE5VTEwgc3Vic2V0KQorLS0KKwor VFJVTkNBVEUgdGVtcG9yYWxfcm5nMiwgdGVtcG9yYWxfZmsyX3BlcjJybmc7CitJTlNFUlQgSU5U TyB0ZW1wb3JhbF9ybmcyIChpZDEsIGlkMiwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s2LDcpJywgJ1s2 LDcpJywgJ1syMDE4LTAxLTAxLDIwMjEtMDEtMDEpJyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9m azJfcGVyMnJuZyAoaWQsIHZhbGlkX2Zyb20sIHZhbGlkX3RpbCwgcGFyZW50X2lkMSwgcGFyZW50 X2lkMikgVkFMVUVTICgnWzEwMCwxMDBdJywgJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScsICdb Niw3KScsICdbNiw3KScpOworLS0gZmFpbHMgYmVjYXVzZSB5b3UgY2FuJ3Qgc2V0IHRoZSBQRVJJ T0QgY29sdW1uOgorQUxURVIgVEFCTEUgdGVtcG9yYWxfZmsyX3BlcjJybmcKKyAgRFJPUCBDT05T VFJBSU5UIHRlbXBvcmFsX2ZrMl9wZXIycm5nX2ZrLAorICBBREQgQ09OU1RSQUlOVCB0ZW1wb3Jh bF9mazJfcGVyMnJuZ19maworICAgIEZPUkVJR04gS0VZIChwYXJlbnRfaWQxLCBwYXJlbnRfaWQy LCBQRVJJT0QgdmFsaWRfYXQpCisgICAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9ybmcyCisgICAgT04g REVMRVRFIFNFVCBOVUxMICh2YWxpZF9hdCkgT04gVVBEQVRFIFNFVCBOVUxMOworLS0gb2s6CitB TFRFUiBUQUJMRSB0ZW1wb3JhbF9mazJfcGVyMnJuZworICBEUk9QIENPTlNUUkFJTlQgdGVtcG9y YWxfZmsyX3BlcjJybmdfZmssCisgIEFERCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrMl9wZXIycm5n X2ZrCisgICAgRk9SRUlHTiBLRVkgKHBhcmVudF9pZDEsIHBhcmVudF9pZDIsIFBFUklPRCB2YWxp ZF9hdCkKKyAgICBSRUZFUkVOQ0VTIHRlbXBvcmFsX3JuZzIKKyAgICBPTiBERUxFVEUgU0VUIE5V TEwgKHBhcmVudF9pZDEpIE9OIFVQREFURSBTRVQgTlVMTDsKKy0tIGxlZnRvdmVycyBvbiBib3Ro IHNpZGVzOgorREVMRVRFIEZST00gdGVtcG9yYWxfcm5nMiBGT1IgUE9SVElPTiBPRiB2YWxpZF9h dCBGUk9NICcyMDE5LTAxLTAxJyBUTyAnMjAyMC0wMS0wMScgV0hFUkUgaWQxID0gJ1s2LDcpJzsK K1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX3BlcjJybmcgV0hFUkUgaWQgPSAnWzEwMCwxMDBd JyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CistLSBub24tRlBPIGRlbGV0ZToKK0RFTEVURSBGUk9N IHRlbXBvcmFsX3JuZzIgV0hFUkUgaWQxID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9y YWxfZmsyX3BlcjJybmcgV0hFUkUgaWQgPSAnWzEwMCwxMDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRf YXQ7CistLSBGSyBhY3Jvc3MgdHdvIHJlZmVyZW5jZWQgcm93czoKK0lOU0VSVCBJTlRPIHRlbXBv cmFsX3JuZzIgKGlkMSwgaWQyLCB2YWxpZF9hdCkgVkFMVUVTICgnWzgsOSknLCAnWzgsOSknLCAn WzIwMTgtMDEtMDEsMjAyMC0wMS0wMSknKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3JuZzIgKGlk MSwgaWQyLCB2YWxpZF9hdCkgVkFMVUVTICgnWzgsOSknLCAnWzgsOSknLCAnWzIwMjAtMDEtMDEs MjAyMS0wMS0wMSknKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrMl9wZXIycm5nIChpZCwgdmFs aWRfZnJvbSwgdmFsaWRfdGlsLCBwYXJlbnRfaWQxLCBwYXJlbnRfaWQyKSBWQUxVRVMgKCdbMjAw LDIwMF0nLCAnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJywgJ1s4LDkpJywgJ1s4LDkpJyk7CitE RUxFVEUgRlJPTSB0ZW1wb3JhbF9ybmcyIFdIRVJFIGlkMSA9ICdbOCw5KScgQU5EIHZhbGlkX2F0 IEA+ICcyMDE5LTAxLTAxJzo6ZGF0ZTsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX3BlcjJy bmcgV0hFUkUgaWQgPSAnWzIwMCwyMDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisKKy0tCist LSB0ZXN0IEZLIHJlZmVyZW5jZWQgdXBkYXRlcyBTRVQgREVGQVVMVCAodHdvIHNjYWxhciBjb2xz KQorLS0KKworVFJVTkNBVEUgdGVtcG9yYWxfcm5nMiwgdGVtcG9yYWxfZmsyX3BlcjJybmc7CitJ TlNFUlQgSU5UTyB0ZW1wb3JhbF9ybmcyIChpZDEsIGlkMiwgdmFsaWRfYXQpIFZBTFVFUyAoJ1st MSwtMV0nLCAnWy0xLC0xXScsICcoLCknKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3JuZzIgKGlk MSwgaWQyLCB2YWxpZF9hdCkgVkFMVUVTICgnWzYsNyknLCAnWzYsNyknLCAnWzIwMTgtMDEtMDEs MjAyMS0wMS0wMSknKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrMl9wZXIycm5nIChpZCwgdmFs aWRfZnJvbSwgdmFsaWRfdGlsLCBwYXJlbnRfaWQxLCBwYXJlbnRfaWQyKSBWQUxVRVMgKCdbMTAw LDEwMF0nLCAnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJywgJ1s2LDcpJywgJ1s2LDcpJyk7CitB TFRFUiBUQUJMRSB0ZW1wb3JhbF9mazJfcGVyMnJuZworICBBTFRFUiBDT0xVTU4gcGFyZW50X2lk MSBTRVQgREVGQVVMVCAnWy0xLC0xXScsCisgIEFMVEVSIENPTFVNTiBwYXJlbnRfaWQyIFNFVCBE RUZBVUxUICdbLTEsLTFdJywKKyAgRFJPUCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrMl9wZXIycm5n X2ZrLAorICBBREQgQ09OU1RSQUlOVCB0ZW1wb3JhbF9mazJfcGVyMnJuZ19maworICAgIEZPUkVJ R04gS0VZIChwYXJlbnRfaWQxLCBwYXJlbnRfaWQyLCBQRVJJT0QgdmFsaWRfYXQpCisgICAgUkVG RVJFTkNFUyB0ZW1wb3JhbF9ybmcyCisgICAgT04gREVMRVRFIFNFVCBERUZBVUxUIE9OIFVQREFU RSBTRVQgREVGQVVMVDsKKy0tIGxlZnRvdmVycyBvbiBib3RoIHNpZGVzOgorVVBEQVRFIHRlbXBv cmFsX3JuZzIgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAxOS0wMS0wMScgVE8gJzIw MjAtMDEtMDEnIFNFVCBpZDEgPSAnWzcsOCknLCBpZDIgPSAnWzcsOCknIFdIRVJFIGlkMSA9ICdb Niw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9wZXIycm5nIFdIRVJFIGlkID0gJ1sx MDAsMTAwXScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworLS0gbm9uLUZQTyB1cGRhdGU6CitVUERB VEUgdGVtcG9yYWxfcm5nMiBTRVQgaWQxID0gJ1s3LDgpJywgaWQyID0gJ1s3LDgpJyBXSEVSRSBp ZDEgPSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9mazJfcGVyMnJuZyBXSEVSRSBp ZCA9ICdbMTAwLDEwMF0nIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKy0tIEZLIGFjcm9zcyB0d28g cmVmZXJlbmNlZCByb3dzOgorSU5TRVJUIElOVE8gdGVtcG9yYWxfcm5nMiAoaWQxLCBpZDIsIHZh bGlkX2F0KSBWQUxVRVMgKCdbOCw5KScsICdbOCw5KScsICdbMjAxOC0wMS0wMSwyMDIwLTAxLTAx KScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcm5nMiAoaWQxLCBpZDIsIHZhbGlkX2F0KSBWQUxV RVMgKCdbOCw5KScsICdbOCw5KScsICdbMjAyMC0wMS0wMSwyMDIxLTAxLTAxKScpOworSU5TRVJU IElOVE8gdGVtcG9yYWxfZmsyX3BlcjJybmcgKGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwsIHBh cmVudF9pZDEsIHBhcmVudF9pZDIpIFZBTFVFUyAoJ1syMDAsMjAwXScsICcyMDE4LTAxLTAxJywg JzIwMjEtMDEtMDEnLCAnWzgsOSknLCAnWzgsOSknKTsKK1VQREFURSB0ZW1wb3JhbF9ybmcyIFNF VCBpZDEgPSAnWzksMTApJywgaWQyID0gJ1s5LDEwKScgV0hFUkUgaWQxID0gJ1s4LDkpJyBBTkQg dmFsaWRfYXQgQD4gJzIwMTktMDEtMDEnOjpkYXRlOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9m azJfcGVyMnJuZyBXSEVSRSBpZCA9ICdbMjAwLDIwMF0nIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsK KworLS0KKy0tIHRlc3QgRksgcmVmZXJlbmNlZCBkZWxldGVzIFNFVCBERUZBVUxUICh0d28gc2Nh bGFyIGNvbHMpCistLQorCitUUlVOQ0FURSB0ZW1wb3JhbF9ybmcyLCB0ZW1wb3JhbF9mazJfcGVy MnJuZzsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3JuZzIgKGlkMSwgaWQyLCB2YWxpZF9hdCkgVkFM VUVTICgnWy0xLC0xXScsICdbLTEsLTFdJywgJygsKScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxf cm5nMiAoaWQxLCBpZDIsIHZhbGlkX2F0KSBWQUxVRVMgKCdbNiw3KScsICdbNiw3KScsICdbMjAx OC0wMS0wMSwyMDIxLTAxLTAxKScpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmsyX3BlcjJybmcg KGlkLCB2YWxpZF9mcm9tLCB2YWxpZF90aWwsIHBhcmVudF9pZDEsIHBhcmVudF9pZDIpIFZBTFVF UyAoJ1sxMDAsMTAwXScsICcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnLCAnWzYsNyknLCAnWzYs NyknKTsKKy0tIGxlZnRvdmVycyBvbiBib3RoIHNpZGVzOgorREVMRVRFIEZST00gdGVtcG9yYWxf cm5nMiBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDE5LTAxLTAxJyBUTyAnMjAyMC0w MS0wMScgV0hFUkUgaWQxID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX3Bl cjJybmcgV0hFUkUgaWQgPSAnWzEwMCwxMDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CistLSBu b24tRlBPIHVwZGF0ZToKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3JuZzIgV0hFUkUgaWQxID0gJ1s2 LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX3BlcjJybmcgV0hFUkUgaWQgPSAnWzEw MCwxMDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CistLSBGSyBhY3Jvc3MgdHdvIHJlZmVyZW5j ZWQgcm93czoKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3JuZzIgKGlkMSwgaWQyLCB2YWxpZF9hdCkg VkFMVUVTICgnWzgsOSknLCAnWzgsOSknLCAnWzIwMTgtMDEtMDEsMjAyMC0wMS0wMSknKTsKK0lO U0VSVCBJTlRPIHRlbXBvcmFsX3JuZzIgKGlkMSwgaWQyLCB2YWxpZF9hdCkgVkFMVUVTICgnWzgs OSknLCAnWzgsOSknLCAnWzIwMjAtMDEtMDEsMjAyMS0wMS0wMSknKTsKK0lOU0VSVCBJTlRPIHRl bXBvcmFsX2ZrMl9wZXIycm5nIChpZCwgdmFsaWRfZnJvbSwgdmFsaWRfdGlsLCBwYXJlbnRfaWQx LCBwYXJlbnRfaWQyKSBWQUxVRVMgKCdbMjAwLDIwMF0nLCAnMjAxOC0wMS0wMScsICcyMDIxLTAx LTAxJywgJ1s4LDkpJywgJ1s4LDkpJyk7CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9ybmcyIFdIRVJF IGlkMSA9ICdbOCw5KScgQU5EIHZhbGlkX2F0IEA+ICcyMDE5LTAxLTAxJzo6ZGF0ZTsKK1NFTEVD VCAqIEZST00gdGVtcG9yYWxfZmsyX3BlcjJybmcgV0hFUkUgaWQgPSAnWzIwMCwyMDBdJyBPUkRF UiBCWSBpZCwgdmFsaWRfYXQ7CisKKy0tCistLSB0ZXN0IEZLIHJlZmVyZW5jZWQgZGVsZXRlcyBT RVQgREVGQVVMVCAodHdvIHNjYWxhciBjb2xzLCBTRVQgREVGQVVMVCBzdWJzZXQpCistLQorCitU UlVOQ0FURSB0ZW1wb3JhbF9ybmcyLCB0ZW1wb3JhbF9mazJfcGVyMnJuZzsKK0lOU0VSVCBJTlRP IHRlbXBvcmFsX3JuZzIgKGlkMSwgaWQyLCB2YWxpZF9hdCkgVkFMVUVTICgnWy0xLC0xXScsICdb Niw3KScsICcoLCknKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3JuZzIgKGlkMSwgaWQyLCB2YWxp ZF9hdCkgVkFMVUVTICgnWzYsNyknLCAnWzYsNyknLCAnWzIwMTgtMDEtMDEsMjAyMS0wMS0wMSkn KTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrMl9wZXIycm5nIChpZCwgdmFsaWRfZnJvbSwgdmFs aWRfdGlsLCBwYXJlbnRfaWQxLCBwYXJlbnRfaWQyKSBWQUxVRVMgKCdbMTAwLDEwMF0nLCAnMjAx OC0wMS0wMScsICcyMDIxLTAxLTAxJywgJ1s2LDcpJywgJ1s2LDcpJyk7CistLSBmYWlscyBiZWNh dXNlIHlvdSBjYW4ndCBzZXQgdGhlIFBFUklPRCBjb2x1bW46CitBTFRFUiBUQUJMRSB0ZW1wb3Jh bF9mazJfcGVyMnJuZworICBBTFRFUiBDT0xVTU4gcGFyZW50X2lkMSBTRVQgREVGQVVMVCAnWy0x LC0xXScsCisgIERST1AgQ09OU1RSQUlOVCB0ZW1wb3JhbF9mazJfcGVyMnJuZ19maywKKyAgQURE IENPTlNUUkFJTlQgdGVtcG9yYWxfZmsyX3BlcjJybmdfZmsKKyAgICBGT1JFSUdOIEtFWSAocGFy ZW50X2lkMSwgcGFyZW50X2lkMiwgUEVSSU9EIHZhbGlkX2F0KQorICAgIFJFRkVSRU5DRVMgdGVt cG9yYWxfcm5nMgorICAgIE9OIERFTEVURSBTRVQgREVGQVVMVCAodmFsaWRfYXQpIE9OIFVQREFU RSBTRVQgREVGQVVMVDsKKy0tIG9rOgorQUxURVIgVEFCTEUgdGVtcG9yYWxfZmsyX3BlcjJybmcK KyAgQUxURVIgQ09MVU1OIHBhcmVudF9pZDEgU0VUIERFRkFVTFQgJ1stMSwtMV0nLAorICBEUk9Q IENPTlNUUkFJTlQgdGVtcG9yYWxfZmsyX3BlcjJybmdfZmssCisgIEFERCBDT05TVFJBSU5UIHRl bXBvcmFsX2ZrMl9wZXIycm5nX2ZrCisgICAgRk9SRUlHTiBLRVkgKHBhcmVudF9pZDEsIHBhcmVu dF9pZDIsIFBFUklPRCB2YWxpZF9hdCkKKyAgICBSRUZFUkVOQ0VTIHRlbXBvcmFsX3JuZzIKKyAg ICBPTiBERUxFVEUgU0VUIERFRkFVTFQgKHBhcmVudF9pZDEpIE9OIFVQREFURSBTRVQgREVGQVVM VDsKKy0tIGxlZnRvdmVycyBvbiBib3RoIHNpZGVzOgorREVMRVRFIEZST00gdGVtcG9yYWxfcm5n MiBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDE5LTAxLTAxJyBUTyAnMjAyMC0wMS0w MScgV0hFUkUgaWQxID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX3BlcjJy bmcgV0hFUkUgaWQgPSAnWzEwMCwxMDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CistLSBub24t RlBPIHVwZGF0ZToKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3JuZzIgV0hFUkUgaWQxID0gJ1s2LDcp JzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX3BlcjJybmcgV0hFUkUgaWQgPSAnWzEwMCwx MDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CistLSBGSyBhY3Jvc3MgdHdvIHJlZmVyZW5jZWQg cm93czoKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3JuZzIgKGlkMSwgaWQyLCB2YWxpZF9hdCkgVkFM VUVTICgnWzgsOSknLCAnWzgsOSknLCAnWzIwMTgtMDEtMDEsMjAyMC0wMS0wMSknKTsKK0lOU0VS VCBJTlRPIHRlbXBvcmFsX3JuZzIgKGlkMSwgaWQyLCB2YWxpZF9hdCkgVkFMVUVTICgnWzgsOSkn LCAnWzgsOSknLCAnWzIwMjAtMDEtMDEsMjAyMS0wMS0wMSknKTsKK0lOU0VSVCBJTlRPIHRlbXBv cmFsX3JuZzIgKGlkMSwgaWQyLCB2YWxpZF9hdCkgVkFMVUVTICgnWy0xLC0xXScsICdbOCw5KScs ICcoLCknKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrMl9wZXIycm5nIChpZCwgdmFsaWRfZnJv bSwgdmFsaWRfdGlsLCBwYXJlbnRfaWQxLCBwYXJlbnRfaWQyKSBWQUxVRVMgKCdbMjAwLDIwMF0n LCAnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJywgJ1s4LDkpJywgJ1s4LDkpJyk7CitERUxFVEUg RlJPTSB0ZW1wb3JhbF9ybmcyIFdIRVJFIGlkMSA9ICdbOCw5KScgQU5EIHZhbGlkX2F0IEA+ICcy MDE5LTAxLTAxJzo6ZGF0ZTsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX3BlcjJybmcgV0hF UkUgaWQgPSAnWzIwMCwyMDBdJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisKKy0tIEZLIHdpdGgg YSBjdXN0b20gcmFuZ2UgdHlwZQorCitDUkVBVEUgVFlQRSBteWRhdGVyYW5nZSBBUyByYW5nZShz dWJ0eXBlPWRhdGUpOworCitDUkVBVEUgVEFCTEUgdGVtcG9yYWxfcm5nMyAoCisgIGlkIGludDRy YW5nZSwKKyAgdmFsaWRfYXQgbXlkYXRlcmFuZ2UsCisgIENPTlNUUkFJTlQgdGVtcG9yYWxfcm5n M19wayBQUklNQVJZIEtFWSAoaWQsIHZhbGlkX2F0IFdJVEhPVVQgT1ZFUkxBUFMpCispOworQ1JF QVRFIFRBQkxFIHRlbXBvcmFsX2ZrM19ybmcycm5nICgKKyAgaWQgaW50NHJhbmdlLAorICB2YWxp ZF9hdCBteWRhdGVyYW5nZSwKKyAgcGFyZW50X2lkIGludDRyYW5nZSwKKyAgQ09OU1RSQUlOVCB0 ZW1wb3JhbF9mazNfcm5nMnJuZ19wayBQUklNQVJZIEtFWSAoaWQsIHZhbGlkX2F0IFdJVEhPVVQg T1ZFUkxBUFMpLAorICBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrM19ybmcycm5nX2ZrIEZPUkVJR04g S0VZIChwYXJlbnRfaWQsIFBFUklPRCB2YWxpZF9hdCkKKyAgICBSRUZFUkVOQ0VTIHRlbXBvcmFs X3JuZzMgKGlkLCBQRVJJT0QgdmFsaWRfYXQpIE9OIERFTEVURSBDQVNDQURFCispOworSU5TRVJU IElOVE8gdGVtcG9yYWxfcm5nMyAoaWQsIHZhbGlkX2F0KSBWQUxVRVMgKCdbOCw5KScsIG15ZGF0 ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3Jh bF9mazNfcm5nMnJuZyAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQpIFZBTFVFUyAoJ1s1LDYpJywg bXlkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpLCAnWzgsOSknKTsKK0RFTEVU RSBGUk9NIHRlbXBvcmFsX3JuZzMgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAxOS0w MS0wMScgVE8gJzIwMjAtMDEtMDEnIFdIRVJFIGlkID0gJ1s4LDkpJzsKK1NFTEVDVCAqIEZST00g dGVtcG9yYWxfZmszX3JuZzJybmcgV0hFUkUgaWQgPSAnWzUsNiknOworCitEUk9QIFRBQkxFIHRl bXBvcmFsX2ZrM19ybmcycm5nOworRFJPUCBUQUJMRSB0ZW1wb3JhbF9ybmczOworRFJPUCBUWVBF IG15ZGF0ZXJhbmdlOworCistLQorLS0gRksgYmV0d2VlbiBwYXJ0aXRpb25lZCB0YWJsZXM6IHJh bmdlcworLS0KKworQ1JFQVRFIFRBQkxFIHRlbXBvcmFsX3BhcnRpdGlvbmVkX3JuZyAoCisgIGlk IGludDRyYW5nZSwKKyAgdmFsaWRfYXQgZGF0ZXJhbmdlLAorICBuYW1lIHRleHQsCisgIENPTlNU UkFJTlQgdGVtcG9yYWxfcGFyaXRpb25lZF9ybmdfcGsgUFJJTUFSWSBLRVkgKGlkLCB2YWxpZF9h dCBXSVRIT1VUIE9WRVJMQVBTKQorKSBQQVJUSVRJT04gQlkgTElTVCAoaWQpOworQ1JFQVRFIFRB QkxFIHRwMSBQQVJUSVRJT04gT0YgdGVtcG9yYWxfcGFydGl0aW9uZWRfcm5nIEZPUiBWQUxVRVMg SU4gKCdbMSwyKScsICdbMyw0KScsICdbNSw2KScsICdbNyw4KScsICdbOSwxMCknLCAnWzExLDEy KScsICdbMTMsMTQpJywgJ1sxNSwxNiknLCAnWzE3LDE4KScsICdbMTksMjApJywgJ1syMSwyMikn LCAnWzIzLDI0KScpOworQ1JFQVRFIFRBQkxFIHRwMiBQQVJUSVRJT04gT0YgdGVtcG9yYWxfcGFy dGl0aW9uZWRfcm5nIEZPUiBWQUxVRVMgSU4gKCdbMCwxKScsICdbMiwzKScsICdbNCw1KScsICdb Niw3KScsICdbOCw5KScsICdbMTAsMTEpJywgJ1sxMiwxMyknLCAnWzE0LDE1KScsICdbMTYsMTcp JywgJ1sxOCwxOSknLCAnWzIwLDIxKScsICdbMjIsMjMpJywgJ1syNCwyNSknKTsKK0lOU0VSVCBJ TlRPIHRlbXBvcmFsX3BhcnRpdGlvbmVkX3JuZyAoaWQsIHZhbGlkX2F0LCBuYW1lKSBWQUxVRVMK KyAgKCdbMSwyKScsIGRhdGVyYW5nZSgnMjAwMC0wMS0wMScsICcyMDAwLTAyLTAxJyksICdvbmUn KSwKKyAgKCdbMSwyKScsIGRhdGVyYW5nZSgnMjAwMC0wMi0wMScsICcyMDAwLTAzLTAxJyksICdv bmUnKSwKICAgKCdbMiwzKScsIGRhdGVyYW5nZSgnMjAwMC0wMS0wMScsICcyMDEwLTAxLTAxJyks ICd0d28nKTsKIAogQ1JFQVRFIFRBQkxFIHRlbXBvcmFsX3BhcnRpdGlvbmVkX2ZrX3JuZzJybmcg KApAQCAtMzAwNyw0ICs1OTk1LDE5IEBAIFNFTEVDVCAqIEZST00gdGVtcG9yYWxfcGFydGl0aW9u ZWRfZmtfbWx0cm5nMm1sdHJuZyBXSEVSRSBpZCA9ICdbMTUsMTYpJzsKIERST1AgVEFCTEUgdGVt cG9yYWxfcGFydGl0aW9uZWRfZmtfbWx0cm5nMm1sdHJuZzsKIERST1AgVEFCTEUgdGVtcG9yYWxf cGFydGl0aW9uZWRfbWx0cm5nOwogCistLQorLS0gRksgYmV0d2VlbiBwYXJ0aXRpb25lZCB0YWJs ZXM6IFBFUklPRHMKKy0tCisKK0NSRUFURSBUQUJMRSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9wZXIg KAorICBpZCBpbnQ0cmFuZ2UsCisgIHZhbGlkX2Zyb20gZGF0ZSwKKyAgdmFsaWRfdGlsIGRhdGUs CisgIG5hbWUgdGV4dCwKKyAgUEVSSU9EIEZPUiB2YWxpZF9hdCAodmFsaWRfZnJvbSwgdmFsaWRf dGlsKSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9wYXJpdGlvbmVkX3JuZ19wayBQUklNQVJZIEtF WSAoaWQsIHZhbGlkX2F0IFdJVEhPVVQgT1ZFUkxBUFMpCispIFBBUlRJVElPTiBCWSBMSVNUIChp ZCk7CitDUkVBVEUgVEFCTEUgdHAxIFBBUlRJVElPTiBPRiB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9w ZXIgRk9SIFZBTFVFUyBJTiAoJ1sxLDIpJywgJ1szLDQpJywgJ1s1LDYpJywgJ1s3LDgpJywgJ1s5 LDEwKScsICdbMTEsMTIpJywgJ1sxMywxNCknLCAnWzE1LDE2KScsICdbMTcsMTgpJywgJ1sxOSwy MCknLCAnWzIxLDIyKScsICdbMjMsMjQpJyk7CitEUk9QIFRBQkxFIHRlbXBvcmFsX3BhcnRpdGlv bmVkX3BlcjsKKwogUkVTRVQgZGF0ZXN0eWxlOwpkaWZmIC0tZ2l0IGEvc3JjL3Rvb2xzL3BnaW5k ZW50L3R5cGVkZWZzLmxpc3QgYi9zcmMvdG9vbHMvcGdpbmRlbnQvdHlwZWRlZnMubGlzdAppbmRl eCAzYjRkMjg3NTA5NC4uMDdjMzI3OTc5ZDUgMTAwNjQ0Ci0tLSBhL3NyYy90b29scy9wZ2luZGVu dC90eXBlZGVmcy5saXN0CisrKyBiL3NyYy90b29scy9wZ2luZGVudC90eXBlZGVmcy5saXN0CkBA IC04OTAsNiArODkwLDcgQEAgRm9ybURhdGFfcGdfb3BjbGFzcwogRm9ybURhdGFfcGdfb3BlcmF0 b3IKIEZvcm1EYXRhX3BnX29wZmFtaWx5CiBGb3JtRGF0YV9wZ19wYXJ0aXRpb25lZF90YWJsZQor Rm9ybURhdGFfcGdfcGVyaW9kCiBGb3JtRGF0YV9wZ19wb2xpY3kKIEZvcm1EYXRhX3BnX3Byb2MK IEZvcm1EYXRhX3BnX3B1YmxpY2F0aW9uCkBAIC0yMTcxLDYgKzIxNzIsOCBAQCBQZW5kaW5nVW5s aW5rRW50cnkKIFBlbmRpbmdXcml0ZQogUGVuZGluZ1dyaXRlYmFjawogUGVyTG9ja1RhZ0VudHJ5 CitQZXJpb2REZWYKK1BlcmlvZEluZm8KIFBlcmxJbnRlcnByZXRlcgogUGVybF9wcGFkZHJfdAog UGVybXV0YXRpb24KLS0gCjIuNDcuMwoK --000000000000160b4c0644846b0a Content-Type: text/x-patch; charset="US-ASCII"; name="v62-0006-Add-CASCADE-SET-NULL-SET-DEFAULT-for-temporal-fo.patch" Content-Disposition: attachment; filename="v62-0006-Add-CASCADE-SET-NULL-SET-DEFAULT-for-temporal-fo.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_migeesgh5 RnJvbSBiMjdkMTQwOWU1OGMzOTI0YzhlNWFkYmZkYzY5NTBjNTAzYmI2MzU4IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiAiUGF1bCBBLiBKdW5nd2lydGgiIDxwakBpbGx1bWluYXRlZGNv bXB1dGluZy5jb20+CkRhdGU6IFNhdCwgMyBKdW4gMjAyMyAyMTo0MToxMSAtMDQwMApTdWJqZWN0 OiBbUEFUQ0ggdjYyIDYvOF0gQWRkIENBU0NBREUvU0VUIE5VTEwvU0VUIERFRkFVTFQgZm9yIHRl bXBvcmFsIGZvcmVpZ24KIGtleXMKClByZXZpb3VzbHkgd2UgcmFpc2VkIGFuIGVycm9yIGZvciB0 aGVzZSBvcHRpb25zLCBiZWNhdXNlIHRoZWlyCmltcGxlbWVudGF0aW9ucyByZXF1aXJlIEZPUiBQ T1JUSU9OIE9GLiBOb3cgdGhhdCB3ZSBoYXZlIHRlbXBvcmFsClVQREFURS9ERUxFVEUsIHdlIGNh biBpbXBsZW1lbnQgZm9yZWlnbiBrZXlzIHRoYXQgdXNlIGl0LgoKQXV0aG9yOiBQYXVsIEEuIEp1 bmd3aXJ0aCA8cGpAaWxsdW1pbmF0ZWRjb21wdXRpbmcuY29tPgotLS0KIGRvYy9zcmMvc2dtbC9k ZGwuc2dtbCAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDYgKy0KIGRvYy9zcmMvc2dtbC9y ZWYvY3JlYXRlX3RhYmxlLnNnbWwgICAgICAgICAgICB8ICAgMTQgKy0KIHNyYy9iYWNrZW5kL2Nv bW1hbmRzL3RhYmxlY21kcy5jICAgICAgICAgICAgICB8ICAgNjUgKy0KIHNyYy9iYWNrZW5kL3V0 aWxzL2FkdC9yaV90cmlnZ2Vycy5jICAgICAgICAgICB8ICA2MTcgKysrKysrLQogc3JjL2luY2x1 ZGUvY2F0YWxvZy9wZ19wcm9jLmRhdCAgICAgICAgICAgICAgIHwgICAyMiArCiBzcmMvdGVzdC9y ZWdyZXNzL2V4cGVjdGVkL2J0cmVlX2luZGV4Lm91dCAgICAgfCAgIDE4ICstCiAuLi4vcmVncmVz cy9leHBlY3RlZC93aXRob3V0X292ZXJsYXBzLm91dCAgICAgfCAxNTk0ICsrKysrKysrKysrKysr KystCiBzcmMvdGVzdC9yZWdyZXNzL3NxbC93aXRob3V0X292ZXJsYXBzLnNxbCAgICAgfCAgOTAw ICsrKysrKysrKy0KIDggZmlsZXMgY2hhbmdlZCwgMzE4NCBpbnNlcnRpb25zKCspLCA1MiBkZWxl dGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kb2Mvc3JjL3NnbWwvZGRsLnNnbWwgYi9kb2Mvc3JjL3Nn bWwvZGRsLnNnbWwKaW5kZXggMDlhZDg0MDBmZDAuLmEzODdlNWVhZTEzIDEwMDY0NAotLS0gYS9k b2Mvc3JjL3NnbWwvZGRsLnNnbWwKKysrIGIvZG9jL3NyYy9zZ21sL2RkbC5zZ21sCkBAIC0xODQ4 LDkgKzE4NDgsOSBAQCBDUkVBVEUgVEFCTEUgdmFyaWFudHMgKAogCiAgICAgPHBhcmE+CiAgICAg IDxwcm9kdWN0bmFtZT5Qb3N0Z3JlU1FMPC9wcm9kdWN0bmFtZT4gc3VwcG9ydHMgdGVtcG9yYWwg Zm9yZWlnbiBrZXlzIHdpdGgKLSAgICAgYWN0aW9uIDxsaXRlcmFsPk5PIEFDVElPTjwvbGl0ZXJh bD4sIGJ1dCBub3QgPGxpdGVyYWw+UkVTVFJJQ1Q8L2xpdGVyYWw+LAotICAgICA8bGl0ZXJhbD5D QVNDQURFPC9saXRlcmFsPiwgPGxpdGVyYWw+U0VUIE5VTEw8L2xpdGVyYWw+LCBvciA8bGl0ZXJh bD5TRVQKLSAgICAgREVGQVVMVDwvbGl0ZXJhbD4uCisgICAgIGFjdGlvbiA8bGl0ZXJhbD5OTyBB Q1RJT048L2xpdGVyYWw+LCA8bGl0ZXJhbD5DQVNDQURFPC9saXRlcmFsPiwKKyAgICAgPGxpdGVy YWw+U0VUIE5VTEw8L2xpdGVyYWw+LCBhbmQgPGxpdGVyYWw+U0VUIERFRkFVTFQ8L2xpdGVyYWw+ LCBidXQgbm90CisgICAgIDxsaXRlcmFsPlJFU1RSSUNUPC9saXRlcmFsPi4KICAgICA8L3BhcmE+ CiAgICA8L3NlY3QzPgogICA8L3NlY3QyPgpkaWZmIC0tZ2l0IGEvZG9jL3NyYy9zZ21sL3JlZi9j cmVhdGVfdGFibGUuc2dtbCBiL2RvYy9zcmMvc2dtbC9yZWYvY3JlYXRlX3RhYmxlLnNnbWwKaW5k ZXggNjU1N2M1Y2ZmZDguLmE4MTcwMWE0OWY0IDEwMDY0NAotLS0gYS9kb2Mvc3JjL3NnbWwvcmVm L2NyZWF0ZV90YWJsZS5zZ21sCisrKyBiL2RvYy9zcmMvc2dtbC9yZWYvY3JlYXRlX3RhYmxlLnNn bWwKQEAgLTEzMTUsNyArMTMxNSw5IEBAIFdJVEggKCBNT0RVTFVTIDxyZXBsYWNlYWJsZSBjbGFz cz0icGFyYW1ldGVyIj5udW1lcmljX2xpdGVyYWw8L3JlcGxhY2VhYmxlPiwgUkVNCiAgICAgICAg ICA8L3BhcmE+CiAKICAgICAgICAgIDxwYXJhPgotICAgICAgICAgIEluIGEgdGVtcG9yYWwgZm9y ZWlnbiBrZXksIHRoaXMgb3B0aW9uIGlzIG5vdCBzdXBwb3J0ZWQuCisgICAgICAgICAgSW4gYSB0 ZW1wb3JhbCBmb3JlaWduIGtleSwgdGhlIGRlbGV0ZS91cGRhdGUgd2lsbCB1c2UKKyAgICAgICAg ICA8bGl0ZXJhbD5GT1IgUE9SVElPTiBPRjwvbGl0ZXJhbD4gc2VtYW50aWNzIHRvIGNvbnN0cmFp biB0aGUKKyAgICAgICAgICBlZmZlY3QgdG8gdGhlIGJvdW5kcyBiZWluZyBkZWxldGVkL3VwZGF0 ZWQgaW4gdGhlIHJlZmVyZW5jZWQgcm93LgogICAgICAgICAgPC9wYXJhPgogICAgICAgICA8L2xp c3RpdGVtPgogICAgICAgIDwvdmFybGlzdGVudHJ5PgpAQCAtMTMzMCw3ICsxMzMyLDEwIEBAIFdJ VEggKCBNT0RVTFVTIDxyZXBsYWNlYWJsZSBjbGFzcz0icGFyYW1ldGVyIj5udW1lcmljX2xpdGVy YWw8L3JlcGxhY2VhYmxlPiwgUkVNCiAgICAgICAgICA8L3BhcmE+CiAKICAgICAgICAgIDxwYXJh PgotICAgICAgICAgIEluIGEgdGVtcG9yYWwgZm9yZWlnbiBrZXksIHRoaXMgb3B0aW9uIGlzIG5v dCBzdXBwb3J0ZWQuCisgICAgICAgICAgSW4gYSB0ZW1wb3JhbCBmb3JlaWduIGtleSwgdGhlIGNo YW5nZSB3aWxsIHVzZSA8bGl0ZXJhbD5GT1IgUE9SVElPTgorICAgICAgICAgIE9GPC9saXRlcmFs PiBzZW1hbnRpY3MgdG8gY29uc3RyYWluIHRoZSBlZmZlY3QgdG8gdGhlIGJvdW5kcyBiZWluZwor ICAgICAgICAgIGRlbGV0ZWQvdXBkYXRlZCBpbiB0aGUgcmVmZXJlbmNlZCByb3cuIFRoZSBjb2x1 bW4gbWFrZWQgd2l0aAorICAgICAgICAgIDxsaXRlcmFsPlBFUklPRDwvbGl0ZXJhbD4gd2lsbCBu b3QgYmUgc2V0IHRvIG51bGwuCiAgICAgICAgICA8L3BhcmE+CiAgICAgICAgIDwvbGlzdGl0ZW0+ CiAgICAgICAgPC92YXJsaXN0ZW50cnk+CkBAIC0xMzQ3LDcgKzEzNTIsMTAgQEAgV0lUSCAoIE1P RFVMVVMgPHJlcGxhY2VhYmxlIGNsYXNzPSJwYXJhbWV0ZXIiPm51bWVyaWNfbGl0ZXJhbDwvcmVw bGFjZWFibGU+LCBSRU0KICAgICAgICAgIDwvcGFyYT4KIAogICAgICAgICAgPHBhcmE+Ci0gICAg ICAgICAgSW4gYSB0ZW1wb3JhbCBmb3JlaWduIGtleSwgdGhpcyBvcHRpb24gaXMgbm90IHN1cHBv cnRlZC4KKyAgICAgICAgICBJbiBhIHRlbXBvcmFsIGZvcmVpZ24ga2V5LCB0aGUgY2hhbmdlIHdp bGwgdXNlIDxsaXRlcmFsPkZPUiBQT1JUSU9OCisgICAgICAgICAgT0Y8L2xpdGVyYWw+IHNlbWFu dGljcyB0byBjb25zdHJhaW4gdGhlIGVmZmVjdCB0byB0aGUgYm91bmRzIGJlaW5nCisgICAgICAg ICAgZGVsZXRlZC91cGRhdGVkIGluIHRoZSByZWZlcmVuY2VkIHJvdy4gVGhlIGNvbHVtbiBtYXJr ZWQgd2l0aAorICAgICAgICAgIDxsaXRlcmFsPlBFUklPRDwvbGl0ZXJhbD4gd2l0aCBub3QgYmUg c2V0IHRvIGEgZGVmYXVsdCB2YWx1ZS4KICAgICAgICAgIDwvcGFyYT4KICAgICAgICAgPC9saXN0 aXRlbT4KICAgICAgICA8L3Zhcmxpc3RlbnRyeT4KZGlmZiAtLWdpdCBhL3NyYy9iYWNrZW5kL2Nv bW1hbmRzL3RhYmxlY21kcy5jIGIvc3JjL2JhY2tlbmQvY29tbWFuZHMvdGFibGVjbWRzLmMKaW5k ZXggNjFlNjNiZDk5MjYuLjIzMTI2N2M4OGNlIDEwMDY0NAotLS0gYS9zcmMvYmFja2VuZC9jb21t YW5kcy90YWJsZWNtZHMuYworKysgYi9zcmMvYmFja2VuZC9jb21tYW5kcy90YWJsZWNtZHMuYwpA QCAtNTYyLDcgKzU2Miw3IEBAIHN0YXRpYyBPYmplY3RBZGRyZXNzIEFUQWRkRm9yZWlnbktleUNv bnN0cmFpbnQoTGlzdCAqKndxdWV1ZSwgQWx0ZXJlZFRhYmxlSW5mbyAqCiAJCQkJCQkJCQkJCSAg IFJlbGF0aW9uIHJlbCwgQ29uc3RyYWludCAqZmtjb25zdHJhaW50LAogCQkJCQkJCQkJCQkgICBi b29sIHJlY3Vyc2UsIGJvb2wgcmVjdXJzaW5nLAogCQkJCQkJCQkJCQkgICBMT0NLTU9ERSBsb2Nr bW9kZSk7Ci1zdGF0aWMgaW50CXZhbGlkYXRlRmtPbkRlbGV0ZVNldENvbHVtbnMoaW50IG51bWZr cywgY29uc3QgaW50MTYgKmZrYXR0bnVtcywKK3N0YXRpYyBpbnQJdmFsaWRhdGVGa09uRGVsZXRl U2V0Q29sdW1ucyhpbnQgbnVtZmtzLCBjb25zdCBpbnQxNiAqZmthdHRudW1zLCBjb25zdCBpbnQx NiBma3BlcmlvZGF0dG51bSwKIAkJCQkJCQkJCQkgaW50IG51bWZrc2V0Y29scywgaW50MTYgKmZr c2V0Y29sc2F0dG51bXMsCiAJCQkJCQkJCQkJIExpc3QgKmZrc2V0Y29scyk7CiBzdGF0aWMgT2Jq ZWN0QWRkcmVzcyBhZGRGa0NvbnN0cmFpbnQoYWRkRmtDb25zdHJhaW50U2lkZXMgZmtzaWRlLApA QCAtMTAwNzQsNiArMTAwNzQsNyBAQCBBVEFkZEZvcmVpZ25LZXlDb25zdHJhaW50KExpc3QgKip3 cXVldWUsIEFsdGVyZWRUYWJsZUluZm8gKnRhYiwgUmVsYXRpb24gcmVsLAogCWludDE2CQlma2Rl bHNldGNvbHNbSU5ERVhfTUFYX0tFWVNdID0gezB9OwogCWJvb2wJCXdpdGhfcGVyaW9kOwogCWJv b2wJCXBrX2hhc193aXRob3V0X292ZXJsYXBzOworCWludDE2CQlma3BlcmlvZGF0dG51bSA9IElu dmFsaWRBdHRyTnVtYmVyOwogCWludAkJCWk7CiAJaW50CQkJbnVtZmtzLAogCQkJCW51bXBrcywK QEAgLTEwMTU5LDE1ICsxMDE2MCwyMCBAQCBBVEFkZEZvcmVpZ25LZXlDb25zdHJhaW50KExpc3Qg Kip3cXVldWUsIEFsdGVyZWRUYWJsZUluZm8gKnRhYiwgUmVsYXRpb24gcmVsLAogCQkJCQkJCQkJ IGZrY29uc3RyYWludC0+ZmtfYXR0cnMsCiAJCQkJCQkJCQkgZmthdHRudW0sIGZrdHlwb2lkLCBm a2NvbGxvaWQpOwogCXdpdGhfcGVyaW9kID0gZmtjb25zdHJhaW50LT5ma193aXRoX3BlcmlvZCB8 fCBma2NvbnN0cmFpbnQtPnBrX3dpdGhfcGVyaW9kOwotCWlmICh3aXRoX3BlcmlvZCAmJiAhZmtj b25zdHJhaW50LT5ma193aXRoX3BlcmlvZCkKLQkJZXJlcG9ydChFUlJPUiwKLQkJCQllcnJjb2Rl KEVSUkNPREVfSU5WQUxJRF9GT1JFSUdOX0tFWSksCi0JCQkJZXJybXNnKCJmb3JlaWduIGtleSB1 c2VzIFBFUklPRCBvbiB0aGUgcmVmZXJlbmNlZCB0YWJsZSBidXQgbm90IHRoZSByZWZlcmVuY2lu ZyB0YWJsZSIpKTsKKwlpZiAod2l0aF9wZXJpb2QpCisJeworCQlpZiAoIWZrY29uc3RyYWludC0+ Zmtfd2l0aF9wZXJpb2QpCisJCQllcmVwb3J0KEVSUk9SLAorCQkJCQkoZXJyY29kZShFUlJDT0RF X0lOVkFMSURfRk9SRUlHTl9LRVkpLAorCQkJCQkgZXJybXNnKCJmb3JlaWduIGtleSB1c2VzIFBF UklPRCBvbiB0aGUgcmVmZXJlbmNlZCB0YWJsZSBidXQgbm90IHRoZSByZWZlcmVuY2luZyB0YWJs ZSIpKSk7CisJCWZrcGVyaW9kYXR0bnVtID0gZmthdHRudW1bbnVtZmtzIC0gMV07CisJfQogCiAJ bnVtZmtkZWxzZXRjb2xzID0gdHJhbnNmb3JtQ29sdW1uTmFtZUxpc3QoUmVsYXRpb25HZXRSZWxp ZChyZWwpLAogCQkJCQkJCQkJCQkgIGZrY29uc3RyYWludC0+ZmtfZGVsX3NldF9jb2xzLAogCQkJ CQkJCQkJCQkgIGZrZGVsc2V0Y29scywgTlVMTCwgTlVMTCk7CiAJbnVtZmtkZWxzZXRjb2xzID0g dmFsaWRhdGVGa09uRGVsZXRlU2V0Q29sdW1ucyhudW1ma3MsIGZrYXR0bnVtLAorCQkJCQkJCQkJ CQkJICAgZmtwZXJpb2RhdHRudW0sCiAJCQkJCQkJCQkJCQkgICBudW1ma2RlbHNldGNvbHMsCiAJ CQkJCQkJCQkJCQkgICBma2RlbHNldGNvbHMsCiAJCQkJCQkJCQkJCQkgICBma2NvbnN0cmFpbnQt PmZrX2RlbF9zZXRfY29scyk7CkBAIC0xMDI2OSwxOSArMTAyNzUsMTMgQEAgQVRBZGRGb3JlaWdu S2V5Q29uc3RyYWludChMaXN0ICoqd3F1ZXVlLCBBbHRlcmVkVGFibGVJbmZvICp0YWIsIFJlbGF0 aW9uIHJlbCwKIAkgKi8KIAlpZiAoZmtjb25zdHJhaW50LT5ma193aXRoX3BlcmlvZCkKIAl7Ci0J CWlmIChma2NvbnN0cmFpbnQtPmZrX3VwZF9hY3Rpb24gPT0gRktDT05TVFJfQUNUSU9OX1JFU1RS SUNUIHx8Ci0JCQlma2NvbnN0cmFpbnQtPmZrX3VwZF9hY3Rpb24gPT0gRktDT05TVFJfQUNUSU9O X0NBU0NBREUgfHwKLQkJCWZrY29uc3RyYWludC0+ZmtfdXBkX2FjdGlvbiA9PSBGS0NPTlNUUl9B Q1RJT05fU0VUTlVMTCB8fAotCQkJZmtjb25zdHJhaW50LT5ma191cGRfYWN0aW9uID09IEZLQ09O U1RSX0FDVElPTl9TRVRERUZBVUxUKQorCQlpZiAoZmtjb25zdHJhaW50LT5ma191cGRfYWN0aW9u ID09IEZLQ09OU1RSX0FDVElPTl9SRVNUUklDVCkKIAkJCWVyZXBvcnQoRVJST1IsCiAJCQkJCWVy cmNvZGUoRVJSQ09ERV9GRUFUVVJFX05PVF9TVVBQT1JURUQpLAogCQkJCQllcnJtc2coInVuc3Vw cG9ydGVkICVzIGFjdGlvbiBmb3IgZm9yZWlnbiBrZXkgY29uc3RyYWludCB1c2luZyBQRVJJT0Qi LAogCQkJCQkJICAgIk9OIFVQREFURSIpKTsKIAotCQlpZiAoZmtjb25zdHJhaW50LT5ma19kZWxf YWN0aW9uID09IEZLQ09OU1RSX0FDVElPTl9SRVNUUklDVCB8fAotCQkJZmtjb25zdHJhaW50LT5m a19kZWxfYWN0aW9uID09IEZLQ09OU1RSX0FDVElPTl9DQVNDQURFIHx8Ci0JCQlma2NvbnN0cmFp bnQtPmZrX2RlbF9hY3Rpb24gPT0gRktDT05TVFJfQUNUSU9OX1NFVE5VTEwgfHwKLQkJCWZrY29u c3RyYWludC0+ZmtfZGVsX2FjdGlvbiA9PSBGS0NPTlNUUl9BQ1RJT05fU0VUREVGQVVMVCkKKwkJ aWYgKGZrY29uc3RyYWludC0+ZmtfZGVsX2FjdGlvbiA9PSBGS0NPTlNUUl9BQ1RJT05fUkVTVFJJ Q1QpCiAJCQllcmVwb3J0KEVSUk9SLAogCQkJCQllcnJjb2RlKEVSUkNPREVfRkVBVFVSRV9OT1Rf U1VQUE9SVEVEKSwKIAkJCQkJZXJybXNnKCJ1bnN1cHBvcnRlZCAlcyBhY3Rpb24gZm9yIGZvcmVp Z24ga2V5IGNvbnN0cmFpbnQgdXNpbmcgUEVSSU9EIiwKQEAgLTEwNjM3LDYgKzEwNjM3LDcgQEAg QVRBZGRGb3JlaWduS2V5Q29uc3RyYWludChMaXN0ICoqd3F1ZXVlLCBBbHRlcmVkVGFibGVJbmZv ICp0YWIsIFJlbGF0aW9uIHJlbCwKICAqLwogc3RhdGljIGludAogdmFsaWRhdGVGa09uRGVsZXRl U2V0Q29sdW1ucyhpbnQgbnVtZmtzLCBjb25zdCBpbnQxNiAqZmthdHRudW1zLAorCQkJCQkJCSBj b25zdCBpbnQxNiBma3BlcmlvZGF0dG51bSwKIAkJCQkJCQkgaW50IG51bWZrc2V0Y29scywgaW50 MTYgKmZrc2V0Y29sc2F0dG51bXMsCiAJCQkJCQkJIExpc3QgKmZrc2V0Y29scykKIHsKQEAgLTEw NjUwLDYgKzEwNjUxLDE0IEBAIHZhbGlkYXRlRmtPbkRlbGV0ZVNldENvbHVtbnMoaW50IG51bWZr cywgY29uc3QgaW50MTYgKmZrYXR0bnVtcywKIAkJLyogTWFrZSBzdXJlIGl0J3MgaW4gZmthdHRu dW1zW10gKi8KIAkJZm9yIChpbnQgaiA9IDA7IGogPCBudW1ma3M7IGorKykKIAkJeworCQkJaWYg KGZrcGVyaW9kYXR0bnVtID09IHNldGNvbF9hdHRudW0pCisJCQl7CisJCQkJY2hhcgkgICAqY29s ID0gc3RyVmFsKGxpc3RfbnRoKGZrc2V0Y29scywgaSkpOworCisJCQkJZXJlcG9ydChFUlJPUiwK KwkJCQkJCShlcnJjb2RlKEVSUkNPREVfSU5WQUxJRF9DT0xVTU5fUkVGRVJFTkNFKSwKKwkJCQkJ CSBlcnJtc2coImNvbHVtbiBcIiVzXCIgcmVmZXJlbmNlZCBpbiBPTiBERUxFVEUgU0VUIGFjdGlv biBjYW5ub3QgYmUgUEVSSU9EIiwgY29sKSkpOworCQkJfQogCQkJaWYgKGZrYXR0bnVtc1tqXSA9 PSBzZXRjb2xfYXR0bnVtKQogCQkJewogCQkJCXNlZW4gPSB0cnVlOwpAQCAtMTM4ODgsMTcgKzEz ODk3LDI2IEBAIGNyZWF0ZUZvcmVpZ25LZXlBY3Rpb25UcmlnZ2VycyhPaWQgbXlSZWxPaWQsIE9p ZCByZWZSZWxPaWQsIENvbnN0cmFpbnQgKmZrY29uc3RyCiAJCWNhc2UgRktDT05TVFJfQUNUSU9O X0NBU0NBREU6CiAJCQlma190cmlnZ2VyLT5kZWZlcnJhYmxlID0gZmFsc2U7CiAJCQlma190cmln Z2VyLT5pbml0ZGVmZXJyZWQgPSBmYWxzZTsKLQkJCWZrX3RyaWdnZXItPmZ1bmNuYW1lID0gU3lz dGVtRnVuY05hbWUoIlJJX0ZLZXlfY2FzY2FkZV9kZWwiKTsKKwkJCWlmIChma2NvbnN0cmFpbnQt PmZrX3dpdGhfcGVyaW9kKQorCQkJCWZrX3RyaWdnZXItPmZ1bmNuYW1lID0gU3lzdGVtRnVuY05h bWUoIlJJX0ZLZXlfcGVyaW9kX2Nhc2NhZGVfZGVsIik7CisJCQllbHNlCisJCQkJZmtfdHJpZ2dl ci0+ZnVuY25hbWUgPSBTeXN0ZW1GdW5jTmFtZSgiUklfRktleV9jYXNjYWRlX2RlbCIpOwogCQkJ YnJlYWs7CiAJCWNhc2UgRktDT05TVFJfQUNUSU9OX1NFVE5VTEw6CiAJCQlma190cmlnZ2VyLT5k ZWZlcnJhYmxlID0gZmFsc2U7CiAJCQlma190cmlnZ2VyLT5pbml0ZGVmZXJyZWQgPSBmYWxzZTsK LQkJCWZrX3RyaWdnZXItPmZ1bmNuYW1lID0gU3lzdGVtRnVuY05hbWUoIlJJX0ZLZXlfc2V0bnVs bF9kZWwiKTsKKwkJCWlmIChma2NvbnN0cmFpbnQtPmZrX3dpdGhfcGVyaW9kKQorCQkJCWZrX3Ry aWdnZXItPmZ1bmNuYW1lID0gU3lzdGVtRnVuY05hbWUoIlJJX0ZLZXlfcGVyaW9kX3NldG51bGxf ZGVsIik7CisJCQllbHNlCisJCQkJZmtfdHJpZ2dlci0+ZnVuY25hbWUgPSBTeXN0ZW1GdW5jTmFt ZSgiUklfRktleV9zZXRudWxsX2RlbCIpOwogCQkJYnJlYWs7CiAJCWNhc2UgRktDT05TVFJfQUNU SU9OX1NFVERFRkFVTFQ6CiAJCQlma190cmlnZ2VyLT5kZWZlcnJhYmxlID0gZmFsc2U7CiAJCQlm a190cmlnZ2VyLT5pbml0ZGVmZXJyZWQgPSBmYWxzZTsKLQkJCWZrX3RyaWdnZXItPmZ1bmNuYW1l ID0gU3lzdGVtRnVuY05hbWUoIlJJX0ZLZXlfc2V0ZGVmYXVsdF9kZWwiKTsKKwkJCWlmIChma2Nv bnN0cmFpbnQtPmZrX3dpdGhfcGVyaW9kKQorCQkJCWZrX3RyaWdnZXItPmZ1bmNuYW1lID0gU3lz dGVtRnVuY05hbWUoIlJJX0ZLZXlfcGVyaW9kX3NldGRlZmF1bHRfZGVsIik7CisJCQllbHNlCisJ CQkJZmtfdHJpZ2dlci0+ZnVuY25hbWUgPSBTeXN0ZW1GdW5jTmFtZSgiUklfRktleV9zZXRkZWZh dWx0X2RlbCIpOwogCQkJYnJlYWs7CiAJCWRlZmF1bHQ6CiAJCQllbG9nKEVSUk9SLCAidW5yZWNv Z25pemVkIEZLIGFjdGlvbiB0eXBlOiAlZCIsCkBAIC0xMzk0OCwxNyArMTM5NjYsMjYgQEAgY3Jl YXRlRm9yZWlnbktleUFjdGlvblRyaWdnZXJzKE9pZCBteVJlbE9pZCwgT2lkIHJlZlJlbE9pZCwg Q29uc3RyYWludCAqZmtjb25zdHIKIAkJY2FzZSBGS0NPTlNUUl9BQ1RJT05fQ0FTQ0FERToKIAkJ CWZrX3RyaWdnZXItPmRlZmVycmFibGUgPSBmYWxzZTsKIAkJCWZrX3RyaWdnZXItPmluaXRkZWZl cnJlZCA9IGZhbHNlOwotCQkJZmtfdHJpZ2dlci0+ZnVuY25hbWUgPSBTeXN0ZW1GdW5jTmFtZSgi UklfRktleV9jYXNjYWRlX3VwZCIpOworCQkJaWYgKGZrY29uc3RyYWludC0+Zmtfd2l0aF9wZXJp b2QpCisJCQkJZmtfdHJpZ2dlci0+ZnVuY25hbWUgPSBTeXN0ZW1GdW5jTmFtZSgiUklfRktleV9w ZXJpb2RfY2FzY2FkZV91cGQiKTsKKwkJCWVsc2UKKwkJCQlma190cmlnZ2VyLT5mdW5jbmFtZSA9 IFN5c3RlbUZ1bmNOYW1lKCJSSV9GS2V5X2Nhc2NhZGVfdXBkIik7CiAJCQlicmVhazsKIAkJY2Fz ZSBGS0NPTlNUUl9BQ1RJT05fU0VUTlVMTDoKIAkJCWZrX3RyaWdnZXItPmRlZmVycmFibGUgPSBm YWxzZTsKIAkJCWZrX3RyaWdnZXItPmluaXRkZWZlcnJlZCA9IGZhbHNlOwotCQkJZmtfdHJpZ2dl ci0+ZnVuY25hbWUgPSBTeXN0ZW1GdW5jTmFtZSgiUklfRktleV9zZXRudWxsX3VwZCIpOworCQkJ aWYgKGZrY29uc3RyYWludC0+Zmtfd2l0aF9wZXJpb2QpCisJCQkJZmtfdHJpZ2dlci0+ZnVuY25h bWUgPSBTeXN0ZW1GdW5jTmFtZSgiUklfRktleV9wZXJpb2Rfc2V0bnVsbF91cGQiKTsKKwkJCWVs c2UKKwkJCQlma190cmlnZ2VyLT5mdW5jbmFtZSA9IFN5c3RlbUZ1bmNOYW1lKCJSSV9GS2V5X3Nl dG51bGxfdXBkIik7CiAJCQlicmVhazsKIAkJY2FzZSBGS0NPTlNUUl9BQ1RJT05fU0VUREVGQVVM VDoKIAkJCWZrX3RyaWdnZXItPmRlZmVycmFibGUgPSBmYWxzZTsKIAkJCWZrX3RyaWdnZXItPmlu aXRkZWZlcnJlZCA9IGZhbHNlOwotCQkJZmtfdHJpZ2dlci0+ZnVuY25hbWUgPSBTeXN0ZW1GdW5j TmFtZSgiUklfRktleV9zZXRkZWZhdWx0X3VwZCIpOworCQkJaWYgKGZrY29uc3RyYWludC0+Zmtf d2l0aF9wZXJpb2QpCisJCQkJZmtfdHJpZ2dlci0+ZnVuY25hbWUgPSBTeXN0ZW1GdW5jTmFtZSgi UklfRktleV9wZXJpb2Rfc2V0ZGVmYXVsdF91cGQiKTsKKwkJCWVsc2UKKwkJCQlma190cmlnZ2Vy LT5mdW5jbmFtZSA9IFN5c3RlbUZ1bmNOYW1lKCJSSV9GS2V5X3NldGRlZmF1bHRfdXBkIik7CiAJ CQlicmVhazsKIAkJZGVmYXVsdDoKIAkJCWVsb2coRVJST1IsICJ1bnJlY29nbml6ZWQgRksgYWN0 aW9uIHR5cGU6ICVkIiwKZGlmZiAtLWdpdCBhL3NyYy9iYWNrZW5kL3V0aWxzL2FkdC9yaV90cmln Z2Vycy5jIGIvc3JjL2JhY2tlbmQvdXRpbHMvYWR0L3JpX3RyaWdnZXJzLmMKaW5kZXggNjlmN2Rl MjVlMjMuLmU3NDQ1NzkzZGNlIDEwMDY0NAotLS0gYS9zcmMvYmFja2VuZC91dGlscy9hZHQvcmlf dHJpZ2dlcnMuYworKysgYi9zcmMvYmFja2VuZC91dGlscy9hZHQvcmlfdHJpZ2dlcnMuYwpAQCAt NzksNiArNzksMTIgQEAKICNkZWZpbmUgUklfUExBTl9TRVROVUxMX09OVVBEQVRFCQk4CiAjZGVm aW5lIFJJX1BMQU5fU0VUREVGQVVMVF9PTkRFTEVURQkJOQogI2RlZmluZSBSSV9QTEFOX1NFVERF RkFVTFRfT05VUERBVEUJCTEwCisjZGVmaW5lIFJJX1BMQU5fUEVSSU9EX0NBU0NBREVfT05ERUxF VEUJCTExCisjZGVmaW5lIFJJX1BMQU5fUEVSSU9EX0NBU0NBREVfT05VUERBVEUJCTEyCisjZGVm aW5lIFJJX1BMQU5fUEVSSU9EX1NFVE5VTExfT05VUERBVEUJCTEzCisjZGVmaW5lIFJJX1BMQU5f UEVSSU9EX1NFVE5VTExfT05ERUxFVEUJCTE0CisjZGVmaW5lIFJJX1BMQU5fUEVSSU9EX1NFVERF RkFVTFRfT05VUERBVEUJMTUKKyNkZWZpbmUgUklfUExBTl9QRVJJT0RfU0VUREVGQVVMVF9PTkRF TEVURQkxNgogCiAjZGVmaW5lIE1BWF9RVU9URURfTkFNRV9MRU4gIChOQU1FREFUQUxFTioyKzMp CiAjZGVmaW5lIE1BWF9RVU9URURfUkVMX05BTUVfTEVOICAoTUFYX1FVT1RFRF9OQU1FX0xFTioy KQpAQCAtMTkzLDYgKzE5OSw3IEBAIHN0YXRpYyBib29sIHJpX0NoZWNrX1BrX01hdGNoKFJlbGF0 aW9uIHBrX3JlbCwgUmVsYXRpb24gZmtfcmVsLAogCQkJCQkJCSAgY29uc3QgUklfQ29uc3RyYWlu dEluZm8gKnJpaW5mbyk7CiBzdGF0aWMgRGF0dW0gcmlfcmVzdHJpY3QoVHJpZ2dlckRhdGEgKnRy aWdkYXRhLCBib29sIGlzX25vX2FjdGlvbik7CiBzdGF0aWMgRGF0dW0gcmlfc2V0KFRyaWdnZXJE YXRhICp0cmlnZGF0YSwgYm9vbCBpc19zZXRfbnVsbCwgaW50IHRna2luZCk7CitzdGF0aWMgRGF0 dW0gdHJpX3NldChUcmlnZ2VyRGF0YSAqdHJpZ2RhdGEsIGJvb2wgaXNfc2V0X251bGwsIGludCB0 Z2tpbmQpOwogc3RhdGljIHZvaWQgcXVvdGVPbmVOYW1lKGNoYXIgKmJ1ZmZlciwgY29uc3QgY2hh ciAqbmFtZSk7CiBzdGF0aWMgdm9pZCBxdW90ZVJlbGF0aW9uTmFtZShjaGFyICpidWZmZXIsIFJl bGF0aW9uIHJlbCk7CiBzdGF0aWMgdm9pZCByaV9HZW5lcmF0ZVF1YWwoU3RyaW5nSW5mbyBidWYs CkBAIC0yMjksNiArMjM2LDcgQEAgc3RhdGljIGJvb2wgcmlfUGVyZm9ybUNoZWNrKGNvbnN0IFJJ X0NvbnN0cmFpbnRJbmZvICpyaWluZm8sCiAJCQkJCQkJUklfUXVlcnlLZXkgKnFrZXksIFNQSVBs YW5QdHIgcXBsYW4sCiAJCQkJCQkJUmVsYXRpb24gZmtfcmVsLCBSZWxhdGlvbiBwa19yZWwsCiAJ CQkJCQkJVHVwbGVUYWJsZVNsb3QgKm9sZHNsb3QsIFR1cGxlVGFibGVTbG90ICpuZXdzbG90LAor CQkJCQkJCWludCBwZXJpb2RQYXJhbSwgRGF0dW0gcGVyaW9kLAogCQkJCQkJCWJvb2wgaXNfcmVz dHJpY3QsCiAJCQkJCQkJYm9vbCBkZXRlY3ROZXdSb3dzLCBpbnQgZXhwZWN0X09LKTsKIHN0YXRp YyB2b2lkIHJpX0V4dHJhY3RWYWx1ZXMoUmVsYXRpb24gcmVsLCBUdXBsZVRhYmxlU2xvdCAqc2xv dCwKQEAgLTIzOCw2ICsyNDYsMTEgQEAgcGdfbm9yZXR1cm4gc3RhdGljIHZvaWQgcmlfUmVwb3J0 VmlvbGF0aW9uKGNvbnN0IFJJX0NvbnN0cmFpbnRJbmZvICpyaWluZm8sCiAJCQkJCQkJCQkJICAg UmVsYXRpb24gcGtfcmVsLCBSZWxhdGlvbiBma19yZWwsCiAJCQkJCQkJCQkJICAgVHVwbGVUYWJs ZVNsb3QgKnZpb2xhdG9yc2xvdCwgVHVwbGVEZXNjIHR1cGRlc2MsCiAJCQkJCQkJCQkJICAgaW50 IHF1ZXJ5bm8sIGJvb2wgaXNfcmVzdHJpY3QsIGJvb2wgcGFydGdvbmUpOworc3RhdGljIGJvb2wg ZnBvX3RhcmdldHNfcGtfcmFuZ2UoY29uc3QgRm9yUG9ydGlvbk9mU3RhdGUgKnRnX3RlbXBvcmFs LAorCQkJCQkJCQkgY29uc3QgUklfQ29uc3RyYWludEluZm8gKnJpaW5mbyk7CitzdGF0aWMgRGF0 dW0gcmVzdHJpY3RfZW5mb3JjZWRfcmFuZ2UoY29uc3QgRm9yUG9ydGlvbk9mU3RhdGUgKnRnX3Rl bXBvcmFsLAorCQkJCQkJCQkJIGNvbnN0IFJJX0NvbnN0cmFpbnRJbmZvICpyaWluZm8sCisJCQkJ CQkJCQkgVHVwbGVUYWJsZVNsb3QgKm9sZHNsb3QpOwogCiAKIC8qCkBAIC00NTEsNiArNDY0LDcg QEAgUklfRktleV9jaGVjayhUcmlnZ2VyRGF0YSAqdHJpZ2RhdGEpCiAJcmlfUGVyZm9ybUNoZWNr KHJpaW5mbywgJnFrZXksIHFwbGFuLAogCQkJCQlma19yZWwsIHBrX3JlbCwKIAkJCQkJTlVMTCwg bmV3c2xvdCwKKwkJCQkJLTEsIChEYXR1bSkgMCwKIAkJCQkJZmFsc2UsCiAJCQkJCXBrX3JlbC0+ cmRfcmVsLT5yZWxraW5kID09IFJFTEtJTkRfUEFSVElUSU9ORURfVEFCTEUsCiAJCQkJCVNQSV9P S19TRUxFQ1QpOwpAQCAtNjE2LDYgKzYzMCw3IEBAIHJpX0NoZWNrX1BrX01hdGNoKFJlbGF0aW9u IHBrX3JlbCwgUmVsYXRpb24gZmtfcmVsLAogCXJlc3VsdCA9IHJpX1BlcmZvcm1DaGVjayhyaWlu Zm8sICZxa2V5LCBxcGxhbiwKIAkJCQkJCQkgZmtfcmVsLCBwa19yZWwsCiAJCQkJCQkJIG9sZHNs b3QsIE5VTEwsCisJCQkJCQkJIC0xLCAoRGF0dW0pIDAsCiAJCQkJCQkJIGZhbHNlLAogCQkJCQkJ CSB0cnVlLAkvKiB0cmVhdCBsaWtlIHVwZGF0ZSAqLwogCQkJCQkJCSBTUElfT0tfU0VMRUNUKTsK QEAgLTg5Miw2ICs5MDcsNyBAQCByaV9yZXN0cmljdChUcmlnZ2VyRGF0YSAqdHJpZ2RhdGEsIGJv b2wgaXNfbm9fYWN0aW9uKQogCXJpX1BlcmZvcm1DaGVjayhyaWluZm8sICZxa2V5LCBxcGxhbiwK IAkJCQkJZmtfcmVsLCBwa19yZWwsCiAJCQkJCW9sZHNsb3QsIE5VTEwsCisJCQkJCS0xLCAoRGF0 dW0pIDAsCiAJCQkJCSFpc19ub19hY3Rpb24sCiAJCQkJCXRydWUsCQkvKiBtdXN0IGRldGVjdCBu ZXcgcm93cyAqLwogCQkJCQlTUElfT0tfU0VMRUNUKTsKQEAgLTk5NCw2ICsxMDEwLDcgQEAgUklf RktleV9jYXNjYWRlX2RlbChQR19GVU5DVElPTl9BUkdTKQogCXJpX1BlcmZvcm1DaGVjayhyaWlu Zm8sICZxa2V5LCBxcGxhbiwKIAkJCQkJZmtfcmVsLCBwa19yZWwsCiAJCQkJCW9sZHNsb3QsIE5V TEwsCisJCQkJCS0xLCAoRGF0dW0pIDAsCiAJCQkJCWZhbHNlLAogCQkJCQl0cnVlLAkJLyogbXVz dCBkZXRlY3QgbmV3IHJvd3MgKi8KIAkJCQkJU1BJX09LX0RFTEVURSk7CkBAIC0xMTExLDYgKzEx MjgsNyBAQCBSSV9GS2V5X2Nhc2NhZGVfdXBkKFBHX0ZVTkNUSU9OX0FSR1MpCiAJcmlfUGVyZm9y bUNoZWNrKHJpaW5mbywgJnFrZXksIHFwbGFuLAogCQkJCQlma19yZWwsIHBrX3JlbCwKIAkJCQkJ b2xkc2xvdCwgbmV3c2xvdCwKKwkJCQkJLTEsIChEYXR1bSkgMCwKIAkJCQkJZmFsc2UsCiAJCQkJ CXRydWUsCQkvKiBtdXN0IGRldGVjdCBuZXcgcm93cyAqLwogCQkJCQlTUElfT0tfVVBEQVRFKTsK QEAgLTEzMzksNiArMTM1Nyw3IEBAIHJpX3NldChUcmlnZ2VyRGF0YSAqdHJpZ2RhdGEsIGJvb2wg aXNfc2V0X251bGwsIGludCB0Z2tpbmQpCiAJcmlfUGVyZm9ybUNoZWNrKHJpaW5mbywgJnFrZXks IHFwbGFuLAogCQkJCQlma19yZWwsIHBrX3JlbCwKIAkJCQkJb2xkc2xvdCwgTlVMTCwKKwkJCQkJ LTEsIChEYXR1bSkgMCwKIAkJCQkJZmFsc2UsCiAJCQkJCXRydWUsCQkvKiBtdXN0IGRldGVjdCBu ZXcgcm93cyAqLwogCQkJCQlTUElfT0tfVVBEQVRFKTsKQEAgLTEzNzAsNiArMTM4OSw1NDAgQEAg cmlfc2V0KFRyaWdnZXJEYXRhICp0cmlnZGF0YSwgYm9vbCBpc19zZXRfbnVsbCwgaW50IHRna2lu ZCkKIH0KIAogCisvKgorICogUklfRktleV9wZXJpb2RfY2FzY2FkZV9kZWwgLQorICoKKyAqIENh c2NhZGVkIGRlbGV0ZSBmb3JlaWduIGtleSByZWZlcmVuY2VzIGF0IGRlbGV0ZSBldmVudCBvbiB0 ZW1wb3JhbCBQSyB0YWJsZS4KKyAqLworRGF0dW0KK1JJX0ZLZXlfcGVyaW9kX2Nhc2NhZGVfZGVs KFBHX0ZVTkNUSU9OX0FSR1MpCit7CisJVHJpZ2dlckRhdGEgKnRyaWdkYXRhID0gKFRyaWdnZXJE YXRhICopIGZjaW5mby0+Y29udGV4dDsKKwljb25zdCBSSV9Db25zdHJhaW50SW5mbyAqcmlpbmZv OworCVJlbGF0aW9uCWZrX3JlbDsKKwlSZWxhdGlvbglwa19yZWw7CisJVHVwbGVUYWJsZVNsb3Qg Km9sZHNsb3Q7CisJUklfUXVlcnlLZXkgcWtleTsKKwlTUElQbGFuUHRyCXFwbGFuOworCURhdHVt CQl0YXJnZXRSYW5nZTsKKworCS8qIENoZWNrIHRoYXQgdGhpcyBpcyBhIHZhbGlkIHRyaWdnZXIg Y2FsbCBvbiB0aGUgcmlnaHQgdGltZSBhbmQgZXZlbnQuICovCisJcmlfQ2hlY2tUcmlnZ2VyKGZj aW5mbywgIlJJX0ZLZXlfcGVyaW9kX2Nhc2NhZGVfZGVsIiwgUklfVFJJR1RZUEVfREVMRVRFKTsK KworCXJpaW5mbyA9IHJpX0ZldGNoQ29uc3RyYWludEluZm8odHJpZ2RhdGEtPnRnX3RyaWdnZXIs CisJCQkJCQkJCQl0cmlnZGF0YS0+dGdfcmVsYXRpb24sIHRydWUpOworCisJLyoKKwkgKiBHZXQg dGhlIHJlbGF0aW9uIGRlc2NyaXB0b3JzIG9mIHRoZSBGSyBhbmQgUEsgdGFibGVzIGFuZCB0aGUg b2xkIHR1cGxlLgorCSAqCisJICogZmtfcmVsIGlzIG9wZW5lZCBpbiBSb3dFeGNsdXNpdmVMb2Nr IG1vZGUgc2luY2UgdGhhdCdzIHdoYXQgb3VyCisJICogZXZlbnR1YWwgREVMRVRFIHdpbGwgZ2V0 IG9uIGl0LgorCSAqLworCWZrX3JlbCA9IHRhYmxlX29wZW4ocmlpbmZvLT5ma19yZWxpZCwgUm93 RXhjbHVzaXZlTG9jayk7CisJcGtfcmVsID0gdHJpZ2RhdGEtPnRnX3JlbGF0aW9uOworCW9sZHNs b3QgPSB0cmlnZGF0YS0+dGdfdHJpZ3Nsb3Q7CisKKwkvKgorCSAqIERvbid0IGRlbGV0ZSB0aGFu IG1vcmUgdGhhbiB0aGUgUEsncyBkdXJhdGlvbiwgdHJpbW1lZCBieSBhbiBvcmlnaW5hbAorCSAq IEZPUiBQT1JUSU9OIE9GIGlmIG5lY2Vzc2FyeS4KKwkgKi8KKwl0YXJnZXRSYW5nZSA9IHJlc3Ry aWN0X2VuZm9yY2VkX3JhbmdlKHRyaWdkYXRhLT50Z190ZW1wb3JhbCwgcmlpbmZvLCBvbGRzbG90 KTsKKworCWlmIChTUElfY29ubmVjdCgpICE9IFNQSV9PS19DT05ORUNUKQorCQllbG9nKEVSUk9S LCAiU1BJX2Nvbm5lY3QgZmFpbGVkIik7CisKKwkvKiBGZXRjaCBvciBwcmVwYXJlIGEgc2F2ZWQg cGxhbiBmb3IgdGhlIGNhc2NhZGVkIGRlbGV0ZSAqLworCXJpX0J1aWxkUXVlcnlLZXkoJnFrZXks IHJpaW5mbywgUklfUExBTl9QRVJJT0RfQ0FTQ0FERV9PTkRFTEVURSk7CisKKwlpZiAoKHFwbGFu ID0gcmlfRmV0Y2hQcmVwYXJlZFBsYW4oJnFrZXkpKSA9PSBOVUxMKQorCXsKKwkJU3RyaW5nSW5m b0RhdGEgcXVlcnlidWY7CisJCWNoYXIJCWZrcmVsbmFtZVtNQVhfUVVPVEVEX1JFTF9OQU1FX0xF Tl07CisJCWNoYXIJCWF0dG5hbWVbTUFYX1FVT1RFRF9OQU1FX0xFTl07CisJCWNoYXIJCXBhcmFt bmFtZVsxNl07CisJCWNvbnN0IGNoYXIgKnF1ZXJ5c2VwOworCQlPaWQJCQlxdWVyeW9pZHNbUklf TUFYX05VTUtFWVMgKyAxXTsKKwkJY29uc3QgY2hhciAqZmtfb25seTsKKworCQkvKiAtLS0tLS0t LS0tCisJCSAqIFRoZSBxdWVyeSBzdHJpbmcgYnVpbHQgaXMKKwkJICogIERFTEVURSBGUk9NIFtP TkxZXSA8Zmt0YWJsZT4KKwkJICogIEZPUiBQT1JUSU9OIE9GICRma2F0dCAoJHtuKzF9KQorCQkg KiAgV0hFUkUgJDEgPSBma2F0dDEgW0FORCAuLi5dCisJCSAqIFRoZSB0eXBlIGlkJ3MgZm9yIHRo ZSAkIHBhcmFtZXRlcnMgYXJlIHRob3NlIG9mIHRoZQorCQkgKiBjb3JyZXNwb25kaW5nIFBLIGF0 dHJpYnV0ZXMuCisJCSAqIC0tLS0tLS0tLS0KKwkJICovCisJCWluaXRTdHJpbmdJbmZvKCZxdWVy eWJ1Zik7CisJCWZrX29ubHkgPSBma19yZWwtPnJkX3JlbC0+cmVsa2luZCA9PSBSRUxLSU5EX1BB UlRJVElPTkVEX1RBQkxFID8KKwkJCSIiIDogIk9OTFkgIjsKKwkJcXVvdGVSZWxhdGlvbk5hbWUo ZmtyZWxuYW1lLCBma19yZWwpOworCQlxdW90ZU9uZU5hbWUoYXR0bmFtZSwgUklBdHROYW1lKGZr X3JlbCwgcmlpbmZvLT5ma19hdHRudW1zW3JpaW5mby0+bmtleXMgLSAxXSkpOworCisJCWFwcGVu ZFN0cmluZ0luZm8oJnF1ZXJ5YnVmLCAiREVMRVRFIEZST00gJXMlcyBGT1IgUE9SVElPTiBPRiAl cyAoJCVkKSIsCisJCQkJCQkgZmtfb25seSwgZmtyZWxuYW1lLCBhdHRuYW1lLCByaWluZm8tPm5r ZXlzICsgMSk7CisJCXF1ZXJ5c2VwID0gIldIRVJFIjsKKwkJZm9yIChpbnQgaSA9IDA7IGkgPCBy aWluZm8tPm5rZXlzOyBpKyspCisJCXsKKwkJCU9pZAkJCXBrX3R5cGUgPSBSSUF0dFR5cGUocGtf cmVsLCByaWluZm8tPnBrX2F0dG51bXNbaV0pOworCQkJT2lkCQkJcGtfY29sbCA9IFJJQXR0Q29s bGF0aW9uKHBrX3JlbCwgcmlpbmZvLT5wa19hdHRudW1zW2ldKTsKKwkJCU9pZAkJCWZrX3R5cGUg PSBSSUF0dFR5cGUoZmtfcmVsLCByaWluZm8tPmZrX2F0dG51bXNbaV0pOworCQkJT2lkCQkJZmtf Y29sbCA9IFJJQXR0Q29sbGF0aW9uKGZrX3JlbCwgcmlpbmZvLT5ma19hdHRudW1zW2ldKTsKKwor CQkJcXVvdGVPbmVOYW1lKGF0dG5hbWUsCisJCQkJCQkgUklBdHROYW1lKGZrX3JlbCwgcmlpbmZv LT5ma19hdHRudW1zW2ldKSk7CisJCQlzcHJpbnRmKHBhcmFtbmFtZSwgIiQlZCIsIGkgKyAxKTsK KwkJCXJpX0dlbmVyYXRlUXVhbCgmcXVlcnlidWYsIHF1ZXJ5c2VwLAorCQkJCQkJCXBhcmFtbmFt ZSwgcGtfdHlwZSwKKwkJCQkJCQlyaWluZm8tPnBmX2VxX29wcnNbaV0sCisJCQkJCQkJYXR0bmFt ZSwgZmtfdHlwZSk7CisJCQlpZiAocGtfY29sbCAhPSBma19jb2xsICYmICFnZXRfY29sbGF0aW9u X2lzZGV0ZXJtaW5pc3RpYyhwa19jb2xsKSkKKwkJCQlyaV9HZW5lcmF0ZVF1YWxDb2xsYXRpb24o JnF1ZXJ5YnVmLCBwa19jb2xsKTsKKwkJCXF1ZXJ5c2VwID0gIkFORCI7CisJCQlxdWVyeW9pZHNb aV0gPSBwa190eXBlOworCQl9CisKKwkJLyogU2V0IGEgcGFyYW0gZm9yIEZPUiBQT1JUSU9OIE9G IFRPL0ZST00gKi8KKwkJcXVlcnlvaWRzW3JpaW5mby0+bmtleXNdID0gUklBdHRUeXBlKHBrX3Jl bCwgcmlpbmZvLT5wa19hdHRudW1zW3JpaW5mby0+bmtleXMgLSAxXSk7CisKKwkJLyogUHJlcGFy ZSBhbmQgc2F2ZSB0aGUgcGxhbiAqLworCQlxcGxhbiA9IHJpX1BsYW5DaGVjayhxdWVyeWJ1Zi5k YXRhLCByaWluZm8tPm5rZXlzICsgMSwgcXVlcnlvaWRzLAorCQkJCQkJCSAmcWtleSwgZmtfcmVs LCBwa19yZWwpOworCX0KKworCS8qCisJICogV2UgaGF2ZSBhIHBsYW4gbm93LiBCdWlsZCB1cCB0 aGUgYXJndW1lbnRzIGZyb20gdGhlIGtleSB2YWx1ZXMgaW4gdGhlCisJICogZGVsZXRlZCBQSyB0 dXBsZSBhbmQgZGVsZXRlIHRoZSByZWZlcmVuY2luZyByb3dzCisJICovCisJcmlfUGVyZm9ybUNo ZWNrKHJpaW5mbywgJnFrZXksIHFwbGFuLAorCQkJCQlma19yZWwsIHBrX3JlbCwKKwkJCQkJb2xk c2xvdCwgTlVMTCwKKwkJCQkJcmlpbmZvLT5ua2V5cyArIDEsIHRhcmdldFJhbmdlLAorCQkJCQlm YWxzZSwKKwkJCQkJdHJ1ZSwJCS8qIG11c3QgZGV0ZWN0IG5ldyByb3dzICovCisJCQkJCVNQSV9P S19ERUxFVEUpOworCisJaWYgKFNQSV9maW5pc2goKSAhPSBTUElfT0tfRklOSVNIKQorCQllbG9n KEVSUk9SLCAiU1BJX2ZpbmlzaCBmYWlsZWQiKTsKKworCXRhYmxlX2Nsb3NlKGZrX3JlbCwgUm93 RXhjbHVzaXZlTG9jayk7CisKKwlyZXR1cm4gUG9pbnRlckdldERhdHVtKE5VTEwpOworfQorCisv KgorICogUklfRktleV9wZXJpb2RfY2FzY2FkZV91cGQgLQorICoKKyAqIENhc2NhZGVkIHVwZGF0 ZSBmb3JlaWduIGtleSByZWZlcmVuY2VzIGF0IHVwZGF0ZSBldmVudCBvbiB0ZW1wb3JhbCBQSyB0 YWJsZS4KKyAqLworRGF0dW0KK1JJX0ZLZXlfcGVyaW9kX2Nhc2NhZGVfdXBkKFBHX0ZVTkNUSU9O X0FSR1MpCit7CisJVHJpZ2dlckRhdGEgKnRyaWdkYXRhID0gKFRyaWdnZXJEYXRhICopIGZjaW5m by0+Y29udGV4dDsKKwljb25zdCBSSV9Db25zdHJhaW50SW5mbyAqcmlpbmZvOworCVJlbGF0aW9u CWZrX3JlbDsKKwlSZWxhdGlvbglwa19yZWw7CisJVHVwbGVUYWJsZVNsb3QgKm9sZHNsb3Q7CisJ VHVwbGVUYWJsZVNsb3QgKm5ld3Nsb3Q7CisJUklfUXVlcnlLZXkgcWtleTsKKwlTUElQbGFuUHRy CXFwbGFuOworCURhdHVtCQl0YXJnZXRSYW5nZTsKKworCS8qIENoZWNrIHRoYXQgdGhpcyBpcyBh IHZhbGlkIHRyaWdnZXIgY2FsbCBvbiB0aGUgcmlnaHQgdGltZSBhbmQgZXZlbnQuICovCisJcmlf Q2hlY2tUcmlnZ2VyKGZjaW5mbywgIlJJX0ZLZXlfcGVyaW9kX2Nhc2NhZGVfdXBkIiwgUklfVFJJ R1RZUEVfVVBEQVRFKTsKKworCXJpaW5mbyA9IHJpX0ZldGNoQ29uc3RyYWludEluZm8odHJpZ2Rh dGEtPnRnX3RyaWdnZXIsCisJCQkJCQkJCQl0cmlnZGF0YS0+dGdfcmVsYXRpb24sIHRydWUpOwor CisJLyoKKwkgKiBHZXQgdGhlIHJlbGF0aW9uIGRlc2NyaXB0b3JzIG9mIHRoZSBGSyBhbmQgUEsg dGFibGVzIGFuZCB0aGUgbmV3IGFuZAorCSAqIG9sZCB0dXBsZS4KKwkgKgorCSAqIGZrX3JlbCBp cyBvcGVuZWQgaW4gUm93RXhjbHVzaXZlTG9jayBtb2RlIHNpbmNlIHRoYXQncyB3aGF0IG91cgor CSAqIGV2ZW50dWFsIFVQREFURSB3aWxsIGdldCBvbiBpdC4KKwkgKi8KKwlma19yZWwgPSB0YWJs ZV9vcGVuKHJpaW5mby0+ZmtfcmVsaWQsIFJvd0V4Y2x1c2l2ZUxvY2spOworCXBrX3JlbCA9IHRy aWdkYXRhLT50Z19yZWxhdGlvbjsKKwluZXdzbG90ID0gdHJpZ2RhdGEtPnRnX25ld3Nsb3Q7CisJ b2xkc2xvdCA9IHRyaWdkYXRhLT50Z190cmlnc2xvdDsKKworCS8qCisJICogRG9uJ3QgZGVsZXRl IHRoYW4gbW9yZSB0aGFuIHRoZSBQSydzIGR1cmF0aW9uLCB0cmltbWVkIGJ5IGFuIG9yaWdpbmFs CisJICogRk9SIFBPUlRJT04gT0YgaWYgbmVjZXNzYXJ5LgorCSAqLworCXRhcmdldFJhbmdlID0g cmVzdHJpY3RfZW5mb3JjZWRfcmFuZ2UodHJpZ2RhdGEtPnRnX3RlbXBvcmFsLCByaWluZm8sIG9s ZHNsb3QpOworCisJaWYgKFNQSV9jb25uZWN0KCkgIT0gU1BJX09LX0NPTk5FQ1QpCisJCWVsb2co RVJST1IsICJTUElfY29ubmVjdCBmYWlsZWQiKTsKKworCS8qIEZldGNoIG9yIHByZXBhcmUgYSBz YXZlZCBwbGFuIGZvciB0aGUgY2FzY2FkZWQgdXBkYXRlICovCisJcmlfQnVpbGRRdWVyeUtleSgm cWtleSwgcmlpbmZvLCBSSV9QTEFOX1BFUklPRF9DQVNDQURFX09OVVBEQVRFKTsKKworCWlmICgo cXBsYW4gPSByaV9GZXRjaFByZXBhcmVkUGxhbigmcWtleSkpID09IE5VTEwpCisJeworCQlTdHJp bmdJbmZvRGF0YSBxdWVyeWJ1ZjsKKwkJU3RyaW5nSW5mb0RhdGEgcXVhbGJ1ZjsKKwkJY2hhcgkJ ZmtyZWxuYW1lW01BWF9RVU9URURfUkVMX05BTUVfTEVOXTsKKwkJY2hhcgkJYXR0bmFtZVtNQVhf UVVPVEVEX05BTUVfTEVOXTsKKwkJY2hhcgkJcGFyYW1uYW1lWzE2XTsKKwkJY29uc3QgY2hhciAq cXVlcnlzZXA7CisJCWNvbnN0IGNoYXIgKnF1YWxzZXA7CisJCU9pZAkJCXF1ZXJ5b2lkc1syICog UklfTUFYX05VTUtFWVMgKyAxXTsKKwkJY29uc3QgY2hhciAqZmtfb25seTsKKworCQkvKiAtLS0t LS0tLS0tCisJCSAqIFRoZSBxdWVyeSBzdHJpbmcgYnVpbHQgaXMKKwkJICogIFVQREFURSBbT05M WV0gPGZrdGFibGU+CisJCSAqCQkgIEZPUiBQT1JUSU9OIE9GICRma2F0dCAoJHsybisxfSkKKwkJ ICoJCSAgU0VUIGZrYXR0MSA9ICQxLCBbLCAuLi5dCisJCSAqCQkgIFdIRVJFICRuID0gZmthdHQx IFtBTkQgLi4uXQorCQkgKiBUaGUgdHlwZSBpZCdzIGZvciB0aGUgJCBwYXJhbWV0ZXJzIGFyZSB0 aG9zZSBvZiB0aGUKKwkJICogY29ycmVzcG9uZGluZyBQSyBhdHRyaWJ1dGVzLiAgTm90ZSB0aGF0 IHdlIGFyZSBhc3N1bWluZworCQkgKiB0aGVyZSBpcyBhbiBhc3NpZ25tZW50IGNhc3QgZnJvbSB0 aGUgUEsgdG8gdGhlIEZLIHR5cGU7CisJCSAqIGVsc2UgdGhlIHBhcnNlciB3aWxsIGZhaWwuCisJ CSAqIC0tLS0tLS0tLS0KKwkJICovCisJCWluaXRTdHJpbmdJbmZvKCZxdWVyeWJ1Zik7CisJCWlu aXRTdHJpbmdJbmZvKCZxdWFsYnVmKTsKKwkJZmtfb25seSA9IGZrX3JlbC0+cmRfcmVsLT5yZWxr aW5kID09IFJFTEtJTkRfUEFSVElUSU9ORURfVEFCTEUgPworCQkJIiIgOiAiT05MWSAiOworCQlx dW90ZVJlbGF0aW9uTmFtZShma3JlbG5hbWUsIGZrX3JlbCk7CisJCXF1b3RlT25lTmFtZShhdHRu YW1lLCBSSUF0dE5hbWUoZmtfcmVsLCByaWluZm8tPmZrX2F0dG51bXNbcmlpbmZvLT5ua2V5cyAt IDFdKSk7CisKKwkJYXBwZW5kU3RyaW5nSW5mbygmcXVlcnlidWYsICJVUERBVEUgJXMlcyBGT1Ig UE9SVElPTiBPRiAlcyAoJCVkKSBTRVQiLAorCQkJCQkJIGZrX29ubHksIGZrcmVsbmFtZSwgYXR0 bmFtZSwgMiAqIHJpaW5mby0+bmtleXMgKyAxKTsKKworCQlxdWVyeXNlcCA9ICIiOworCQlxdWFs c2VwID0gIldIRVJFIjsKKwkJZm9yIChpbnQgaSA9IDAsIGogPSByaWluZm8tPm5rZXlzOyBpIDwg cmlpbmZvLT5ua2V5czsgaSsrLCBqKyspCisJCXsKKwkJCU9pZAkJCXBrX3R5cGUgPSBSSUF0dFR5 cGUocGtfcmVsLCByaWluZm8tPnBrX2F0dG51bXNbaV0pOworCQkJT2lkCQkJcGtfY29sbCA9IFJJ QXR0Q29sbGF0aW9uKHBrX3JlbCwgcmlpbmZvLT5wa19hdHRudW1zW2ldKTsKKwkJCU9pZAkJCWZr X3R5cGUgPSBSSUF0dFR5cGUoZmtfcmVsLCByaWluZm8tPmZrX2F0dG51bXNbaV0pOworCQkJT2lk CQkJZmtfY29sbCA9IFJJQXR0Q29sbGF0aW9uKGZrX3JlbCwgcmlpbmZvLT5ma19hdHRudW1zW2ld KTsKKworCQkJcXVvdGVPbmVOYW1lKGF0dG5hbWUsCisJCQkJCQkgUklBdHROYW1lKGZrX3JlbCwg cmlpbmZvLT5ma19hdHRudW1zW2ldKSk7CisKKwkJCS8qCisJCQkgKiBEb24ndCBzZXQgdGhlIHRl bXBvcmFsIGNvbHVtbihzKS4gRk9SIFBPUlRJT04gT0Ygd2lsbCB0YWtlIGNhcmUKKwkJCSAqIG9m IHRoYXQuCisJCQkgKi8KKwkJCWlmIChpIDwgcmlpbmZvLT5ua2V5cyAtIDEpCisJCQkJYXBwZW5k U3RyaW5nSW5mbygmcXVlcnlidWYsCisJCQkJCQkJCSAiJXMgJXMgPSAkJWQiLAorCQkJCQkJCQkg cXVlcnlzZXAsIGF0dG5hbWUsIGkgKyAxKTsKKworCQkJc3ByaW50ZihwYXJhbW5hbWUsICIkJWQi LCBqICsgMSk7CisJCQlyaV9HZW5lcmF0ZVF1YWwoJnF1YWxidWYsIHF1YWxzZXAsCisJCQkJCQkJ cGFyYW1uYW1lLCBwa190eXBlLAorCQkJCQkJCXJpaW5mby0+cGZfZXFfb3Byc1tpXSwKKwkJCQkJ CQlhdHRuYW1lLCBma190eXBlKTsKKwkJCWlmIChwa19jb2xsICE9IGZrX2NvbGwgJiYgIWdldF9j b2xsYXRpb25faXNkZXRlcm1pbmlzdGljKHBrX2NvbGwpKQorCQkJCXJpX0dlbmVyYXRlUXVhbENv bGxhdGlvbigmcXVlcnlidWYsIHBrX2NvbGwpOworCQkJcXVlcnlzZXAgPSAiLCI7CisJCQlxdWFs c2VwID0gIkFORCI7CisJCQlxdWVyeW9pZHNbaV0gPSBwa190eXBlOworCQkJcXVlcnlvaWRzW2pd ID0gcGtfdHlwZTsKKwkJfQorCQlhcHBlbmRCaW5hcnlTdHJpbmdJbmZvKCZxdWVyeWJ1ZiwgcXVh bGJ1Zi5kYXRhLCBxdWFsYnVmLmxlbik7CisKKwkJLyogU2V0IGEgcGFyYW0gZm9yIEZPUiBQT1JU SU9OIE9GIFRPL0ZST00gKi8KKwkJcXVlcnlvaWRzWzIgKiByaWluZm8tPm5rZXlzXSA9IFJJQXR0 VHlwZShwa19yZWwsIHJpaW5mby0+cGtfYXR0bnVtc1tyaWluZm8tPm5rZXlzIC0gMV0pOworCisJ CS8qIFByZXBhcmUgYW5kIHNhdmUgdGhlIHBsYW4gKi8KKwkJcXBsYW4gPSByaV9QbGFuQ2hlY2so cXVlcnlidWYuZGF0YSwgMiAqIHJpaW5mby0+bmtleXMgKyAxLCBxdWVyeW9pZHMsCisJCQkJCQkJ ICZxa2V5LCBma19yZWwsIHBrX3JlbCk7CisJfQorCisJLyoKKwkgKiBXZSBoYXZlIGEgcGxhbiBu b3cuIFJ1biBpdCB0byB1cGRhdGUgdGhlIGV4aXN0aW5nIHJlZmVyZW5jZXMuCisJICovCisJcmlf UGVyZm9ybUNoZWNrKHJpaW5mbywgJnFrZXksIHFwbGFuLAorCQkJCQlma19yZWwsIHBrX3JlbCwK KwkJCQkJb2xkc2xvdCwgbmV3c2xvdCwKKwkJCQkJcmlpbmZvLT5ua2V5cyAqIDIgKyAxLCB0YXJn ZXRSYW5nZSwKKwkJCQkJZmFsc2UsCisJCQkJCXRydWUsCQkvKiBtdXN0IGRldGVjdCBuZXcgcm93 cyAqLworCQkJCQlTUElfT0tfVVBEQVRFKTsKKworCWlmIChTUElfZmluaXNoKCkgIT0gU1BJX09L X0ZJTklTSCkKKwkJZWxvZyhFUlJPUiwgIlNQSV9maW5pc2ggZmFpbGVkIik7CisKKwl0YWJsZV9j bG9zZShma19yZWwsIFJvd0V4Y2x1c2l2ZUxvY2spOworCisJcmV0dXJuIFBvaW50ZXJHZXREYXR1 bShOVUxMKTsKK30KKworLyoKKyAqIFJJX0ZLZXlfcGVyaW9kX3NldG51bGxfZGVsIC0KKyAqCisg KiBTZXQgZm9yZWlnbiBrZXkgcmVmZXJlbmNlcyB0byBOVUxMIHZhbHVlcyBhdCBkZWxldGUgZXZl bnQgb24gUEsgdGFibGUuCisgKi8KK0RhdHVtCitSSV9GS2V5X3BlcmlvZF9zZXRudWxsX2RlbChQ R19GVU5DVElPTl9BUkdTKQoreworCS8qIENoZWNrIHRoYXQgdGhpcyBpcyBhIHZhbGlkIHRyaWdn ZXIgY2FsbCBvbiB0aGUgcmlnaHQgdGltZSBhbmQgZXZlbnQuICovCisJcmlfQ2hlY2tUcmlnZ2Vy KGZjaW5mbywgIlJJX0ZLZXlfcGVyaW9kX3NldG51bGxfZGVsIiwgUklfVFJJR1RZUEVfREVMRVRF KTsKKworCS8qIFNoYXJlIGNvZGUgd2l0aCBVUERBVEUgY2FzZSAqLworCXJldHVybiB0cmlfc2V0 KChUcmlnZ2VyRGF0YSAqKSBmY2luZm8tPmNvbnRleHQsIHRydWUsIFJJX1RSSUdUWVBFX0RFTEVU RSk7Cit9CisKKy8qCisgKiBSSV9GS2V5X3BlcmlvZF9zZXRudWxsX3VwZCAtCisgKgorICogU2V0 IGZvcmVpZ24ga2V5IHJlZmVyZW5jZXMgdG8gTlVMTCBhdCB1cGRhdGUgZXZlbnQgb24gUEsgdGFi bGUuCisgKi8KK0RhdHVtCitSSV9GS2V5X3BlcmlvZF9zZXRudWxsX3VwZChQR19GVU5DVElPTl9B UkdTKQoreworCS8qIENoZWNrIHRoYXQgdGhpcyBpcyBhIHZhbGlkIHRyaWdnZXIgY2FsbCBvbiB0 aGUgcmlnaHQgdGltZSBhbmQgZXZlbnQuICovCisJcmlfQ2hlY2tUcmlnZ2VyKGZjaW5mbywgIlJJ X0ZLZXlfcGVyaW9kX3NldG51bGxfdXBkIiwgUklfVFJJR1RZUEVfVVBEQVRFKTsKKworCS8qIFNo YXJlIGNvZGUgd2l0aCBERUxFVEUgY2FzZSAqLworCXJldHVybiB0cmlfc2V0KChUcmlnZ2VyRGF0 YSAqKSBmY2luZm8tPmNvbnRleHQsIHRydWUsIFJJX1RSSUdUWVBFX1VQREFURSk7Cit9CisKKy8q CisgKiBSSV9GS2V5X3BlcmlvZF9zZXRkZWZhdWx0X2RlbCAtCisgKgorICogU2V0IGZvcmVpZ24g a2V5IHJlZmVyZW5jZXMgdG8gZGVmYXVsdHMgYXQgZGVsZXRlIGV2ZW50IG9uIFBLIHRhYmxlLgor ICovCitEYXR1bQorUklfRktleV9wZXJpb2Rfc2V0ZGVmYXVsdF9kZWwoUEdfRlVOQ1RJT05fQVJH UykKK3sKKwkvKiBDaGVjayB0aGF0IHRoaXMgaXMgYSB2YWxpZCB0cmlnZ2VyIGNhbGwgb24gdGhl IHJpZ2h0IHRpbWUgYW5kIGV2ZW50LiAqLworCXJpX0NoZWNrVHJpZ2dlcihmY2luZm8sICJSSV9G S2V5X3BlcmlvZF9zZXRkZWZhdWx0X2RlbCIsIFJJX1RSSUdUWVBFX0RFTEVURSk7CisKKwkvKiBT aGFyZSBjb2RlIHdpdGggVVBEQVRFIGNhc2UgKi8KKwlyZXR1cm4gdHJpX3NldCgoVHJpZ2dlckRh dGEgKikgZmNpbmZvLT5jb250ZXh0LCBmYWxzZSwgUklfVFJJR1RZUEVfREVMRVRFKTsKK30KKwor LyoKKyAqIFJJX0ZLZXlfcGVyaW9kX3NldGRlZmF1bHRfdXBkIC0KKyAqCisgKiBTZXQgZm9yZWln biBrZXkgcmVmZXJlbmNlcyB0byBkZWZhdWx0cyBhdCB1cGRhdGUgZXZlbnQgb24gUEsgdGFibGUu CisgKi8KK0RhdHVtCitSSV9GS2V5X3BlcmlvZF9zZXRkZWZhdWx0X3VwZChQR19GVU5DVElPTl9B UkdTKQoreworCS8qIENoZWNrIHRoYXQgdGhpcyBpcyBhIHZhbGlkIHRyaWdnZXIgY2FsbCBvbiB0 aGUgcmlnaHQgdGltZSBhbmQgZXZlbnQuICovCisJcmlfQ2hlY2tUcmlnZ2VyKGZjaW5mbywgIlJJ X0ZLZXlfcGVyaW9kX3NldGRlZmF1bHRfdXBkIiwgUklfVFJJR1RZUEVfVVBEQVRFKTsKKworCS8q IFNoYXJlIGNvZGUgd2l0aCBERUxFVEUgY2FzZSAqLworCXJldHVybiB0cmlfc2V0KChUcmlnZ2Vy RGF0YSAqKSBmY2luZm8tPmNvbnRleHQsIGZhbHNlLCBSSV9UUklHVFlQRV9VUERBVEUpOworfQor CisvKgorICogdHJpX3NldCAtCisgKgorICogQ29tbW9uIGNvZGUgZm9yIHRlbXBvcmFsIE9OIERF TEVURSBTRVQgTlVMTCwgT04gREVMRVRFIFNFVCBERUZBVUxULCBPTgorICogVVBEQVRFIFNFVCBO VUxMLCBhbmQgT04gVVBEQVRFIFNFVCBERUZBVUxULgorICovCitzdGF0aWMgRGF0dW0KK3RyaV9z ZXQoVHJpZ2dlckRhdGEgKnRyaWdkYXRhLCBib29sIGlzX3NldF9udWxsLCBpbnQgdGdraW5kKQor eworCWNvbnN0IFJJX0NvbnN0cmFpbnRJbmZvICpyaWluZm87CisJUmVsYXRpb24JZmtfcmVsOwor CVJlbGF0aW9uCXBrX3JlbDsKKwlUdXBsZVRhYmxlU2xvdCAqb2xkc2xvdDsKKwlSSV9RdWVyeUtl eSBxa2V5OworCVNQSVBsYW5QdHIJcXBsYW47CisJRGF0dW0JCXRhcmdldFJhbmdlOworCWludDMy CQlxdWVyeW5vOworCisJcmlpbmZvID0gcmlfRmV0Y2hDb25zdHJhaW50SW5mbyh0cmlnZGF0YS0+ dGdfdHJpZ2dlciwKKwkJCQkJCQkJCXRyaWdkYXRhLT50Z19yZWxhdGlvbiwgdHJ1ZSk7CisKKwkv KgorCSAqIEdldCB0aGUgcmVsYXRpb24gZGVzY3JpcHRvcnMgb2YgdGhlIEZLIGFuZCBQSyB0YWJs ZXMgYW5kIHRoZSBvbGQgdHVwbGUuCisJICoKKwkgKiBma19yZWwgaXMgb3BlbmVkIGluIFJvd0V4 Y2x1c2l2ZUxvY2sgbW9kZSBzaW5jZSB0aGF0J3Mgd2hhdCBvdXIKKwkgKiBldmVudHVhbCBVUERB VEUgd2lsbCBnZXQgb24gaXQuCisJICovCisJZmtfcmVsID0gdGFibGVfb3BlbihyaWluZm8tPmZr X3JlbGlkLCBSb3dFeGNsdXNpdmVMb2NrKTsKKwlwa19yZWwgPSB0cmlnZGF0YS0+dGdfcmVsYXRp b247CisJb2xkc2xvdCA9IHRyaWdkYXRhLT50Z190cmlnc2xvdDsKKworCS8qCisJICogRG9uJ3Qg U0VUIE5VTEwvREVGQVVMVCBtb3JlIHRoYW4gdGhlIFBLJ3MgZHVyYXRpb24sIHRyaW1tZWQgYnkg YW4KKwkgKiBvcmlnaW5hbCBGT1IgUE9SVElPTiBPRiBpZiBuZWNlc3NhcnkuCisJICovCisJdGFy Z2V0UmFuZ2UgPSByZXN0cmljdF9lbmZvcmNlZF9yYW5nZSh0cmlnZGF0YS0+dGdfdGVtcG9yYWws IHJpaW5mbywgb2xkc2xvdCk7CisKKwlpZiAoU1BJX2Nvbm5lY3QoKSAhPSBTUElfT0tfQ09OTkVD VCkKKwkJZWxvZyhFUlJPUiwgIlNQSV9jb25uZWN0IGZhaWxlZCIpOworCisJLyoKKwkgKiBGZXRj aCBvciBwcmVwYXJlIGEgc2F2ZWQgcGxhbiBmb3IgdGhlIHRyaWdnZXIuCisJICovCisJc3dpdGNo ICh0Z2tpbmQpCisJeworCQljYXNlIFJJX1RSSUdUWVBFX1VQREFURToKKwkJCXF1ZXJ5bm8gPSBp c19zZXRfbnVsbAorCQkJCT8gUklfUExBTl9QRVJJT0RfU0VUTlVMTF9PTlVQREFURQorCQkJCTog UklfUExBTl9QRVJJT0RfU0VUREVGQVVMVF9PTlVQREFURTsKKwkJCWJyZWFrOworCQljYXNlIFJJ X1RSSUdUWVBFX0RFTEVURToKKwkJCXF1ZXJ5bm8gPSBpc19zZXRfbnVsbAorCQkJCT8gUklfUExB Tl9QRVJJT0RfU0VUTlVMTF9PTkRFTEVURQorCQkJCTogUklfUExBTl9QRVJJT0RfU0VUREVGQVVM VF9PTkRFTEVURTsKKwkJCWJyZWFrOworCQlkZWZhdWx0OgorCQkJZWxvZyhFUlJPUiwgImludmFs aWQgdGdraW5kIHBhc3NlZCB0byByaV9zZXQiKTsKKwl9CisKKwlyaV9CdWlsZFF1ZXJ5S2V5KCZx a2V5LCByaWluZm8sIHF1ZXJ5bm8pOworCisJaWYgKChxcGxhbiA9IHJpX0ZldGNoUHJlcGFyZWRQ bGFuKCZxa2V5KSkgPT0gTlVMTCkKKwl7CisJCVN0cmluZ0luZm9EYXRhIHF1ZXJ5YnVmOworCQlT dHJpbmdJbmZvRGF0YSBxdWFsYnVmOworCQljaGFyCQlma3JlbG5hbWVbTUFYX1FVT1RFRF9SRUxf TkFNRV9MRU5dOworCQljaGFyCQlhdHRuYW1lW01BWF9RVU9URURfTkFNRV9MRU5dOworCQljaGFy CQlwYXJhbW5hbWVbMTZdOworCQljb25zdCBjaGFyICpxdWVyeXNlcDsKKwkJY29uc3QgY2hhciAq cXVhbHNlcDsKKwkJT2lkCQkJcXVlcnlvaWRzW1JJX01BWF9OVU1LRVlTICsgMV07CS8qICsxIGZv ciBGT1IgUE9SVElPTiBPRiAqLworCQljb25zdCBjaGFyICpma19vbmx5OworCQlpbnQJCQludW1f Y29sc190b19zZXQ7CisJCWNvbnN0IGludDE2ICpzZXRfY29sczsKKworCQlzd2l0Y2ggKHRna2lu ZCkKKwkJeworCQkJY2FzZSBSSV9UUklHVFlQRV9VUERBVEU6CisJCQkJLyogLTEgc28gd2UgbGV0 IEZPUiBQT1JUSU9OIE9GIHNldCB0aGUgcmFuZ2UuICovCisJCQkJbnVtX2NvbHNfdG9fc2V0ID0g cmlpbmZvLT5ua2V5cyAtIDE7CisJCQkJc2V0X2NvbHMgPSByaWluZm8tPmZrX2F0dG51bXM7CisJ CQkJYnJlYWs7CisJCQljYXNlIFJJX1RSSUdUWVBFX0RFTEVURToKKworCQkJCS8qCisJCQkJICog SWYgY29uZmRlbHNldGNvbHMgYXJlIHByZXNlbnQsIHRoZW4gd2Ugb25seSB1cGRhdGUgdGhlCisJ CQkJICogY29sdW1ucyBzcGVjaWZpZWQgaW4gdGhhdCBhcnJheSwgb3RoZXJ3aXNlIHdlIHVwZGF0 ZSBhbGwKKwkJCQkgKiB0aGUgcmVmZXJlbmNpbmcgY29sdW1ucy4KKwkJCQkgKi8KKwkJCQlpZiAo cmlpbmZvLT5uZGVsc2V0Y29scyAhPSAwKQorCQkJCXsKKwkJCQkJbnVtX2NvbHNfdG9fc2V0ID0g cmlpbmZvLT5uZGVsc2V0Y29sczsKKwkJCQkJc2V0X2NvbHMgPSByaWluZm8tPmNvbmZkZWxzZXRj b2xzOworCQkJCX0KKwkJCQllbHNlCisJCQkJeworCQkJCQkvKiAtMSBzbyB3ZSBsZXQgRk9SIFBP UlRJT04gT0Ygc2V0IHRoZSByYW5nZS4gKi8KKwkJCQkJbnVtX2NvbHNfdG9fc2V0ID0gcmlpbmZv LT5ua2V5cyAtIDE7CisJCQkJCXNldF9jb2xzID0gcmlpbmZvLT5ma19hdHRudW1zOworCQkJCX0K KwkJCQlicmVhazsKKwkJCWRlZmF1bHQ6CisJCQkJZWxvZyhFUlJPUiwgImludmFsaWQgdGdraW5k IHBhc3NlZCB0byByaV9zZXQiKTsKKwkJfQorCisJCS8qIC0tLS0tLS0tLS0KKwkJICogVGhlIHF1 ZXJ5IHN0cmluZyBidWlsdCBpcworCQkgKglVUERBVEUgW09OTFldIDxma3RhYmxlPgorCQkgKgkJ CUZPUiBQT1JUSU9OIE9GICRma2F0dCAoJHtuKzF9KQorCQkgKgkJCVNFVCBma2F0dDEgPSB7TlVM THxERUZBVUxUfSBbLCAuLi5dCisJCSAqCQkJV0hFUkUgJDEgPSBma2F0dDEgW0FORCAuLi5dCisJ CSAqIFRoZSB0eXBlIGlkJ3MgZm9yIHRoZSAkIHBhcmFtZXRlcnMgYXJlIHRob3NlIG9mIHRoZQor CQkgKiBjb3JyZXNwb25kaW5nIFBLIGF0dHJpYnV0ZXMuCisJCSAqIC0tLS0tLS0tLS0KKwkJICov CisJCWluaXRTdHJpbmdJbmZvKCZxdWVyeWJ1Zik7CisJCWluaXRTdHJpbmdJbmZvKCZxdWFsYnVm KTsKKwkJZmtfb25seSA9IGZrX3JlbC0+cmRfcmVsLT5yZWxraW5kID09IFJFTEtJTkRfUEFSVElU SU9ORURfVEFCTEUgPworCQkJIiIgOiAiT05MWSAiOworCQlxdW90ZVJlbGF0aW9uTmFtZShma3Jl bG5hbWUsIGZrX3JlbCk7CisJCXF1b3RlT25lTmFtZShhdHRuYW1lLCBSSUF0dE5hbWUoZmtfcmVs LCByaWluZm8tPmZrX2F0dG51bXNbcmlpbmZvLT5ua2V5cyAtIDFdKSk7CisKKwkJYXBwZW5kU3Ry aW5nSW5mbygmcXVlcnlidWYsICJVUERBVEUgJXMlcyBGT1IgUE9SVElPTiBPRiAlcyAoJCVkKSBT RVQiLAorCQkJCQkJIGZrX29ubHksIGZrcmVsbmFtZSwgYXR0bmFtZSwgcmlpbmZvLT5ua2V5cyAr IDEpOworCisJCS8qCisJCSAqIEFkZCBhc3NpZ25tZW50IGNsYXVzZXMKKwkJICovCisJCXF1ZXJ5 c2VwID0gIiI7CisJCWZvciAoaW50IGkgPSAwOyBpIDwgbnVtX2NvbHNfdG9fc2V0OyBpKyspCisJ CXsKKwkJCXF1b3RlT25lTmFtZShhdHRuYW1lLCBSSUF0dE5hbWUoZmtfcmVsLCBzZXRfY29sc1tp XSkpOworCQkJYXBwZW5kU3RyaW5nSW5mbygmcXVlcnlidWYsCisJCQkJCQkJICIlcyAlcyA9ICVz IiwKKwkJCQkJCQkgcXVlcnlzZXAsIGF0dG5hbWUsCisJCQkJCQkJIGlzX3NldF9udWxsID8gIk5V TEwiIDogIkRFRkFVTFQiKTsKKwkJCXF1ZXJ5c2VwID0gIiwiOworCQl9CisKKwkJLyoKKwkJICog QWRkIFdIRVJFIGNsYXVzZQorCQkgKi8KKwkJcXVhbHNlcCA9ICJXSEVSRSI7CisJCWZvciAoaW50 IGkgPSAwOyBpIDwgcmlpbmZvLT5ua2V5czsgaSsrKQorCQl7CisJCQlPaWQJCQlwa190eXBlID0g UklBdHRUeXBlKHBrX3JlbCwgcmlpbmZvLT5wa19hdHRudW1zW2ldKTsKKwkJCU9pZAkJCWZrX3R5 cGUgPSBSSUF0dFR5cGUoZmtfcmVsLCByaWluZm8tPmZrX2F0dG51bXNbaV0pOworCQkJT2lkCQkJ cGtfY29sbCA9IFJJQXR0Q29sbGF0aW9uKHBrX3JlbCwgcmlpbmZvLT5wa19hdHRudW1zW2ldKTsK KwkJCU9pZAkJCWZrX2NvbGwgPSBSSUF0dENvbGxhdGlvbihma19yZWwsIHJpaW5mby0+ZmtfYXR0 bnVtc1tpXSk7CisKKwkJCXF1b3RlT25lTmFtZShhdHRuYW1lLAorCQkJCQkJIFJJQXR0TmFtZShm a19yZWwsIHJpaW5mby0+ZmtfYXR0bnVtc1tpXSkpOworCisJCQlzcHJpbnRmKHBhcmFtbmFtZSwg IiQlZCIsIGkgKyAxKTsKKwkJCXJpX0dlbmVyYXRlUXVhbCgmcXVlcnlidWYsIHF1YWxzZXAsCisJ CQkJCQkJcGFyYW1uYW1lLCBwa190eXBlLAorCQkJCQkJCXJpaW5mby0+cGZfZXFfb3Byc1tpXSwK KwkJCQkJCQlhdHRuYW1lLCBma190eXBlKTsKKwkJCWlmIChwa19jb2xsICE9IGZrX2NvbGwgJiYg IWdldF9jb2xsYXRpb25faXNkZXRlcm1pbmlzdGljKHBrX2NvbGwpKQorCQkJCXJpX0dlbmVyYXRl UXVhbENvbGxhdGlvbigmcXVlcnlidWYsIHBrX2NvbGwpOworCQkJcXVhbHNlcCA9ICJBTkQiOwor CQkJcXVlcnlvaWRzW2ldID0gcGtfdHlwZTsKKwkJfQorCisJCS8qIFNldCBhIHBhcmFtIGZvciBG T1IgUE9SVElPTiBPRiBUTy9GUk9NICovCisJCXF1ZXJ5b2lkc1tyaWluZm8tPm5rZXlzXSA9IFJJ QXR0VHlwZShwa19yZWwsIHJpaW5mby0+cGtfYXR0bnVtc1tyaWluZm8tPm5rZXlzIC0gMV0pOwor CisJCS8qIFByZXBhcmUgYW5kIHNhdmUgdGhlIHBsYW4gKi8KKwkJcXBsYW4gPSByaV9QbGFuQ2hl Y2socXVlcnlidWYuZGF0YSwgcmlpbmZvLT5ua2V5cyArIDEsIHF1ZXJ5b2lkcywKKwkJCQkJCQkg JnFrZXksIGZrX3JlbCwgcGtfcmVsKTsKKwl9CisKKwkvKgorCSAqIFdlIGhhdmUgYSBwbGFuIG5v dy4gUnVuIGl0IHRvIHVwZGF0ZSB0aGUgZXhpc3RpbmcgcmVmZXJlbmNlcy4KKwkgKi8KKwlyaV9Q ZXJmb3JtQ2hlY2socmlpbmZvLCAmcWtleSwgcXBsYW4sCisJCQkJCWZrX3JlbCwgcGtfcmVsLAor CQkJCQlvbGRzbG90LCBOVUxMLAorCQkJCQlyaWluZm8tPm5rZXlzICsgMSwgdGFyZ2V0UmFuZ2Us CisJCQkJCWZhbHNlLAorCQkJCQl0cnVlLAkJLyogbXVzdCBkZXRlY3QgbmV3IHJvd3MgKi8KKwkJ CQkJU1BJX09LX1VQREFURSk7CisKKwlpZiAoU1BJX2ZpbmlzaCgpICE9IFNQSV9PS19GSU5JU0gp CisJCWVsb2coRVJST1IsICJTUElfZmluaXNoIGZhaWxlZCIpOworCisJdGFibGVfY2xvc2UoZmtf cmVsLCBSb3dFeGNsdXNpdmVMb2NrKTsKKworCWlmIChpc19zZXRfbnVsbCkKKwkJcmV0dXJuIFBv aW50ZXJHZXREYXR1bShOVUxMKTsKKwllbHNlCisJeworCQkvKgorCQkgKiBJZiB3ZSBqdXN0IGRl bGV0ZWQgb3IgdXBkYXRlZCB0aGUgUEsgcm93IHdob3NlIGtleSB3YXMgZXF1YWwgdG8gdGhlCisJ CSAqIEZLIGNvbHVtbnMnIGRlZmF1bHQgdmFsdWVzLCBhbmQgYSByZWZlcmVuY2luZyByb3cgZXhp c3RzIGluIHRoZSBGSworCQkgKiB0YWJsZSwgd2Ugd291bGQgaGF2ZSB1cGRhdGVkIHRoYXQgcm93 IHRvIHRoZSBzYW1lIHZhbHVlcyBpdCBhbHJlYWR5CisJCSAqIGhhZCAtLS0gYW5kIFJJX0ZLZXlf ZmtfdXBkX2NoZWNrX3JlcXVpcmVkIHdvdWxkIGhlbmNlIGJlbGlldmUgbm8KKwkJICogY2hlY2sg aXMgbmVjZXNzYXJ5LiAgU28gd2UgbmVlZCB0byBkbyBhbm90aGVyIGxvb2t1cCBub3cgYW5kIGlu CisJCSAqIGNhc2UgYSByZWZlcmVuY2Ugc3RpbGwgZXhpc3RzLCBhYm9ydCB0aGUgb3BlcmF0aW9u LiAgVGhhdCBpcworCQkgKiBhbHJlYWR5IGltcGxlbWVudGVkIGluIHRoZSBOTyBBQ1RJT04gdHJp Z2dlciwgc28ganVzdCBydW4gaXQuIChUaGlzCisJCSAqIHJlY2hlY2sgaXMgb25seSBuZWVkZWQg aW4gdGhlIFNFVCBERUZBVUxUIGNhc2UsIHNpbmNlIENBU0NBREUgd291bGQKKwkJICogcmVtb3Zl IHN1Y2ggcm93cyBpbiBjYXNlIG9mIGEgREVMRVRFIG9wZXJhdGlvbiBvciB3b3VsZCBjaGFuZ2Ug dGhlCisJCSAqIEZLIGtleSB2YWx1ZXMgaW4gY2FzZSBvZiBhbiBVUERBVEUsIHdoaWxlIFNFVCBO VUxMIGlzIGNlcnRhaW4gdG8KKwkJICogcmVzdWx0IGluIHJvd3MgdGhhdCBzYXRpc2Z5IHRoZSBG SyBjb25zdHJhaW50LikKKwkJICovCisJCXJldHVybiByaV9yZXN0cmljdCh0cmlnZGF0YSwgdHJ1 ZSk7CisJfQorfQorCiAvKgogICogUklfRktleV9wa191cGRfY2hlY2tfcmVxdWlyZWQgLQogICoK QEAgLTI0ODUsNiArMzAzOCw3IEBAIHJpX1BlcmZvcm1DaGVjayhjb25zdCBSSV9Db25zdHJhaW50 SW5mbyAqcmlpbmZvLAogCQkJCVJJX1F1ZXJ5S2V5ICpxa2V5LCBTUElQbGFuUHRyIHFwbGFuLAog CQkJCVJlbGF0aW9uIGZrX3JlbCwgUmVsYXRpb24gcGtfcmVsLAogCQkJCVR1cGxlVGFibGVTbG90 ICpvbGRzbG90LCBUdXBsZVRhYmxlU2xvdCAqbmV3c2xvdCwKKwkJCQlpbnQgcGVyaW9kUGFyYW0s IERhdHVtIHBlcmlvZCwKIAkJCQlib29sIGlzX3Jlc3RyaWN0LAogCQkJCWJvb2wgZGV0ZWN0TmV3 Um93cywgaW50IGV4cGVjdF9PSykKIHsKQEAgLTI0OTcsOCArMzA1MSw4IEBAIHJpX1BlcmZvcm1D aGVjayhjb25zdCBSSV9Db25zdHJhaW50SW5mbyAqcmlpbmZvLAogCWludAkJCXNwaV9yZXN1bHQ7 CiAJT2lkCQkJc2F2ZV91c2VyaWQ7CiAJaW50CQkJc2F2ZV9zZWNfY29udGV4dDsKLQlEYXR1bQkJ dmFsc1tSSV9NQVhfTlVNS0VZUyAqIDJdOwotCWNoYXIJCW51bGxzW1JJX01BWF9OVU1LRVlTICog Ml07CisJRGF0dW0JCXZhbHNbUklfTUFYX05VTUtFWVMgKiAyICsgMV07CisJY2hhcgkJbnVsbHNb UklfTUFYX05VTUtFWVMgKiAyICsgMV07CiAKIAkvKgogCSAqIFVzZSB0aGUgcXVlcnkgdHlwZSBj b2RlIHRvIGRldGVybWluZSB3aGV0aGVyIHRoZSBxdWVyeSBpcyBydW4gYWdhaW5zdApAQCAtMjU0 MSw2ICszMDk1LDEyIEBAIHJpX1BlcmZvcm1DaGVjayhjb25zdCBSSV9Db25zdHJhaW50SW5mbyAq cmlpbmZvLAogCQlyaV9FeHRyYWN0VmFsdWVzKHNvdXJjZV9yZWwsIG9sZHNsb3QsIHJpaW5mbywg c291cmNlX2lzX3BrLAogCQkJCQkJIHZhbHMsIG51bGxzKTsKIAl9CisJLyogQWRkL3JlcGxhY2Ug YSBxdWVyeSBwYXJhbSBmb3IgdGhlIFBFUklPRCBpZiBuZWVkZWQgKi8KKwlpZiAocGVyaW9kKQor CXsKKwkJdmFsc1twZXJpb2RQYXJhbSAtIDFdID0gcGVyaW9kOworCQludWxsc1twZXJpb2RQYXJh bSAtIDFdID0gJyAnOworCX0KIAogCS8qCiAJICogSW4gUkVBRCBDT01NSVRURUQgbW9kZSwgd2Ug anVzdCBuZWVkIHRvIHVzZSBhbiB1cC10by1kYXRlIHJlZ3VsYXIKQEAgLTMyMjEsNiArMzc4MSwx MiBAQCBSSV9GS2V5X3RyaWdnZXJfdHlwZShPaWQgdGdmb2lkKQogCQljYXNlIEZfUklfRktFWV9T RVRERUZBVUxUX1VQRDoKIAkJY2FzZSBGX1JJX0ZLRVlfTk9BQ1RJT05fREVMOgogCQljYXNlIEZf UklfRktFWV9OT0FDVElPTl9VUEQ6CisJCWNhc2UgRl9SSV9GS0VZX1BFUklPRF9DQVNDQURFX0RF TDoKKwkJY2FzZSBGX1JJX0ZLRVlfUEVSSU9EX0NBU0NBREVfVVBEOgorCQljYXNlIEZfUklfRktF WV9QRVJJT0RfU0VUTlVMTF9ERUw6CisJCWNhc2UgRl9SSV9GS0VZX1BFUklPRF9TRVROVUxMX1VQ RDoKKwkJY2FzZSBGX1JJX0ZLRVlfUEVSSU9EX1NFVERFRkFVTFRfREVMOgorCQljYXNlIEZfUklf RktFWV9QRVJJT0RfU0VUREVGQVVMVF9VUEQ6CiAJCQlyZXR1cm4gUklfVFJJR0dFUl9QSzsKIAog CQljYXNlIEZfUklfRktFWV9DSEVDS19JTlM6CkBAIC0zMjMwLDMgKzM3OTYsNTAgQEAgUklfRktl eV90cmlnZ2VyX3R5cGUoT2lkIHRnZm9pZCkKIAogCXJldHVybiBSSV9UUklHR0VSX05PTkU7CiB9 CisKKy8qCisgKiBmcG9fdGFyZ2V0c19wa19yYW5nZQorICoKKyAqIFJldHVybnMgdHJ1ZSBpZmYg dGhlIHByaW1hcnkga2V5IHJlZmVyZW5jZWQgYnkgcmlpbmZvIGluY2x1ZGVzIHRoZSByYW5nZQor ICogY29sdW1uIHRhcmdldGVkIGJ5IHRoZSBGT1IgUE9SVElPTiBPRiBjbGF1c2UgKGFjY29yZGlu ZyB0byB0Z190ZW1wb3JhbCkuCisgKi8KK3N0YXRpYyBib29sCitmcG9fdGFyZ2V0c19wa19yYW5n ZShjb25zdCBGb3JQb3J0aW9uT2ZTdGF0ZSAqdGdfdGVtcG9yYWwsIGNvbnN0IFJJX0NvbnN0cmFp bnRJbmZvICpyaWluZm8pCit7CisJaWYgKHRnX3RlbXBvcmFsID09IE5VTEwpCisJCXJldHVybiBm YWxzZTsKKworCXJldHVybiByaWluZm8tPnBrX2F0dG51bXNbcmlpbmZvLT5ua2V5cyAtIDFdID09 IHRnX3RlbXBvcmFsLT5mcF9yYW5nZUF0dG5vOworfQorCisvKgorICogcmVzdHJpY3RfZW5mb3Jj ZWRfcmFuZ2UgLQorICoKKyAqIFJldHVybnMgYSBEYXR1bSBvZiBSYW5nZVR5cGVQIGhvbGRpbmcg dGhlIGFwcHJvcHJpYXRlIHRpbWVzcGFuCisgKiB0byB0YXJnZXQgY2hpbGQgcmVjb3JkcyB3aGVu IHdlIFJFU1RSSUNUL0NBU0NBREUvU0VUIE5VTEwvU0VUIERFRkFVTFQuCisgKgorICogSW4gYSBu b3JtYWwgVVBEQVRFL0RFTEVURSB0aGlzIHNob3VsZCBiZSB0aGUgcmVmZXJlbmNlZCByb3cncyBv d24gdmFsaWQgdGltZSwKKyAqIGJ1dCBpZiB0aGVyZSB3YXMgYSBGT1IgUE9SVElPTiBPRiBjbGF1 c2UsIHRoZW4gd2Ugc2hvdWxkIHVzZSB0aGF0IHRvCisgKiB0cmltIGRvd24gdGhlIHNwYW4gZnVy dGhlci4KKyAqLworc3RhdGljIERhdHVtCityZXN0cmljdF9lbmZvcmNlZF9yYW5nZShjb25zdCBG b3JQb3J0aW9uT2ZTdGF0ZSAqdGdfdGVtcG9yYWwsIGNvbnN0IFJJX0NvbnN0cmFpbnRJbmZvICpy aWluZm8sIFR1cGxlVGFibGVTbG90ICpvbGRzbG90KQoreworCURhdHVtCQlwa1JlY29yZFJhbmdl OworCWJvb2wJCWlzbnVsbDsKKwlBdHRyTnVtYmVyCWF0dG5vID0gcmlpbmZvLT5wa19hdHRudW1z W3JpaW5mby0+bmtleXMgLSAxXTsKKworCXBrUmVjb3JkUmFuZ2UgPSBzbG90X2dldGF0dHIob2xk c2xvdCwgYXR0bm8sICZpc251bGwpOworCWlmIChpc251bGwpCisJCWVsb2coRVJST1IsICJhcHBs aWNhdGlvbiB0aW1lIHNob3VsZCBub3QgYmUgbnVsbCIpOworCisJaWYgKGZwb190YXJnZXRzX3Br X3JhbmdlKHRnX3RlbXBvcmFsLCByaWluZm8pKQorCXsKKwkJaWYgKCFPaWRJc1ZhbGlkKHJpaW5m by0+cGVyaW9kX2ludGVyc2VjdF9wcm9jKSkKKwkJCWVsb2coRVJST1IsICJpbnZhbGlkIGludGVy c2VjdCBzdXBwb3J0IGZ1bmN0aW9uIik7CisKKwkJcmV0dXJuIE9pZEZ1bmN0aW9uQ2FsbDIocmlp bmZvLT5wZXJpb2RfaW50ZXJzZWN0X3Byb2MsIHBrUmVjb3JkUmFuZ2UsIHRnX3RlbXBvcmFsLT5m cF90YXJnZXRSYW5nZSk7CisJfQorCWVsc2UKKwkJcmV0dXJuIHBrUmVjb3JkUmFuZ2U7Cit9CmRp ZmYgLS1naXQgYS9zcmMvaW5jbHVkZS9jYXRhbG9nL3BnX3Byb2MuZGF0IGIvc3JjL2luY2x1ZGUv Y2F0YWxvZy9wZ19wcm9jLmRhdAppbmRleCA2NjQzMTk0MDcwMC4uYjA4NWQ3OTg1ZTcgMTAwNjQ0 Ci0tLSBhL3NyYy9pbmNsdWRlL2NhdGFsb2cvcGdfcHJvYy5kYXQKKysrIGIvc3JjL2luY2x1ZGUv Y2F0YWxvZy9wZ19wcm9jLmRhdApAQCAtNDEyMCw2ICs0MTIwLDI4IEBACiAgIHByb3JldHR5cGUg PT4gJ3RyaWdnZXInLCBwcm9hcmd0eXBlcyA9PiAnJywKICAgcHJvc3JjID0+ICdSSV9GS2V5X25v YWN0aW9uX3VwZCcgfSwKIAorIyBUZW1wb3JhbCByZWZlcmVudGlhbCBpbnRlZ3JpdHkgY29uc3Ry YWludCB0cmlnZ2VycworeyBvaWQgPT4gJzYxMjQnLCBkZXNjciA9PiAndGVtcG9yYWwgcmVmZXJl bnRpYWwgaW50ZWdyaXR5IE9OIERFTEVURSBDQVNDQURFJywKKyAgcHJvbmFtZSA9PiAnUklfRktl eV9wZXJpb2RfY2FzY2FkZV9kZWwnLCBwcm92b2xhdGlsZSA9PiAndicsIHByb3JldHR5cGUgPT4g J3RyaWdnZXInLAorICBwcm9hcmd0eXBlcyA9PiAnJywgcHJvc3JjID0+ICdSSV9GS2V5X3Blcmlv ZF9jYXNjYWRlX2RlbCcgfSwKK3sgb2lkID0+ICc2MTI1JywgZGVzY3IgPT4gJ3RlbXBvcmFsIHJl ZmVyZW50aWFsIGludGVncml0eSBPTiBVUERBVEUgQ0FTQ0FERScsCisgIHByb25hbWUgPT4gJ1JJ X0ZLZXlfcGVyaW9kX2Nhc2NhZGVfdXBkJywgcHJvdm9sYXRpbGUgPT4gJ3YnLCBwcm9yZXR0eXBl ID0+ICd0cmlnZ2VyJywKKyAgcHJvYXJndHlwZXMgPT4gJycsIHByb3NyYyA9PiAnUklfRktleV9w ZXJpb2RfY2FzY2FkZV91cGQnIH0sCit7IG9pZCA9PiAnNjEyOCcsIGRlc2NyID0+ICd0ZW1wb3Jh bCByZWZlcmVudGlhbCBpbnRlZ3JpdHkgT04gREVMRVRFIFNFVCBOVUxMJywKKyAgcHJvbmFtZSA9 PiAnUklfRktleV9wZXJpb2Rfc2V0bnVsbF9kZWwnLCBwcm92b2xhdGlsZSA9PiAndicsIHByb3Jl dHR5cGUgPT4gJ3RyaWdnZXInLAorICBwcm9hcmd0eXBlcyA9PiAnJywgcHJvc3JjID0+ICdSSV9G S2V5X3BlcmlvZF9zZXRudWxsX2RlbCcgfSwKK3sgb2lkID0+ICc2MTI5JywgZGVzY3IgPT4gJ3Rl bXBvcmFsIHJlZmVyZW50aWFsIGludGVncml0eSBPTiBVUERBVEUgU0VUIE5VTEwnLAorICBwcm9u YW1lID0+ICdSSV9GS2V5X3BlcmlvZF9zZXRudWxsX3VwZCcsIHByb3ZvbGF0aWxlID0+ICd2Jywg cHJvcmV0dHlwZSA9PiAndHJpZ2dlcicsCisgIHByb2FyZ3R5cGVzID0+ICcnLCBwcm9zcmMgPT4g J1JJX0ZLZXlfcGVyaW9kX3NldG51bGxfdXBkJyB9LAoreyBvaWQgPT4gJzYxMzAnLCBkZXNjciA9 PiAndGVtcG9yYWwgcmVmZXJlbnRpYWwgaW50ZWdyaXR5IE9OIERFTEVURSBTRVQgREVGQVVMVCcs CisgIHByb25hbWUgPT4gJ1JJX0ZLZXlfcGVyaW9kX3NldGRlZmF1bHRfZGVsJywgcHJvdm9sYXRp bGUgPT4gJ3YnLAorICBwcm9yZXR0eXBlID0+ICd0cmlnZ2VyJywgcHJvYXJndHlwZXMgPT4gJycs CisgIHByb3NyYyA9PiAnUklfRktleV9wZXJpb2Rfc2V0ZGVmYXVsdF9kZWwnIH0sCit7IG9pZCA9 PiAnNjEzMScsIGRlc2NyID0+ICd0ZW1wb3JhbCByZWZlcmVudGlhbCBpbnRlZ3JpdHkgT04gVVBE QVRFIFNFVCBERUZBVUxUJywKKyAgcHJvbmFtZSA9PiAnUklfRktleV9wZXJpb2Rfc2V0ZGVmYXVs dF91cGQnLCBwcm92b2xhdGlsZSA9PiAndicsCisgIHByb3JldHR5cGUgPT4gJ3RyaWdnZXInLCBw cm9hcmd0eXBlcyA9PiAnJywKKyAgcHJvc3JjID0+ICdSSV9GS2V5X3BlcmlvZF9zZXRkZWZhdWx0 X3VwZCcgfSwKKwogeyBvaWQgPT4gJzE2NjYnLAogICBwcm9uYW1lID0+ICd2YXJiaXRlcScsIHBy b2xlYWtwcm9vZiA9PiAndCcsIHByb3JldHR5cGUgPT4gJ2Jvb2wnLAogICBwcm9hcmd0eXBlcyA9 PiAndmFyYml0IHZhcmJpdCcsIHByb3NyYyA9PiAnYml0ZXEnIH0sCmRpZmYgLS1naXQgYS9zcmMv dGVzdC9yZWdyZXNzL2V4cGVjdGVkL2J0cmVlX2luZGV4Lm91dCBiL3NyYy90ZXN0L3JlZ3Jlc3Mv ZXhwZWN0ZWQvYnRyZWVfaW5kZXgub3V0CmluZGV4IDIxZGM5YjU3ODNhLi5jM2JmOTQ3OTdlNyAx MDA2NDQKLS0tIGEvc3JjL3Rlc3QvcmVncmVzcy9leHBlY3RlZC9idHJlZV9pbmRleC5vdXQKKysr IGIvc3JjL3Rlc3QvcmVncmVzcy9leHBlY3RlZC9idHJlZV9pbmRleC5vdXQKQEAgLTQ1NCwxNCAr NDU0LDE3IEBAIHNlbGVjdCBwcm9uYW1lIGZyb20gcGdfcHJvYyB3aGVyZSBwcm9uYW1lIGxpa2Ug RSdSSVxcX0ZLZXklZGVsJyBvcmRlciBieSAxOwogKDMgcm93cykKIAogc2VsZWN0IHByb25hbWUg ZnJvbSBwZ19wcm9jIHdoZXJlIHByb25hbWUgbGlrZSBFJ1JJXFxfRktleSVkZWwnIG9yZGVyIGJ5 IDE7Ci0gICAgICAgIHByb25hbWUgICAgICAgICAKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQor ICAgICAgICAgICAgcHJvbmFtZSAgICAgICAgICAgIAorLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLQogIFJJX0ZLZXlfY2FzY2FkZV9kZWwKICBSSV9GS2V5X25vYWN0aW9uX2RlbAorIFJJ X0ZLZXlfcGVyaW9kX2Nhc2NhZGVfZGVsCisgUklfRktleV9wZXJpb2Rfc2V0ZGVmYXVsdF9kZWwK KyBSSV9GS2V5X3BlcmlvZF9zZXRudWxsX2RlbAogIFJJX0ZLZXlfcmVzdHJpY3RfZGVsCiAgUklf RktleV9zZXRkZWZhdWx0X2RlbAogIFJJX0ZLZXlfc2V0bnVsbF9kZWwKLSg1IHJvd3MpCisoOCBy b3dzKQogCiBleHBsYWluIChjb3N0cyBvZmYpCiBzZWxlY3QgcHJvbmFtZSBmcm9tIHBnX3Byb2Mg d2hlcmUgcHJvbmFtZSBpbGlrZSAnMDAlZm9vJyBvcmRlciBieSAxOwpAQCAtNTAwLDE0ICs1MDMs MTcgQEAgc2VsZWN0IHByb25hbWUgZnJvbSBwZ19wcm9jIHdoZXJlIHByb25hbWUgbGlrZSBFJ1JJ XFxfRktleSVkZWwnIG9yZGVyIGJ5IDE7CiAoNiByb3dzKQogCiBzZWxlY3QgcHJvbmFtZSBmcm9t IHBnX3Byb2Mgd2hlcmUgcHJvbmFtZSBsaWtlIEUnUklcXF9GS2V5JWRlbCcgb3JkZXIgYnkgMTsK LSAgICAgICAgcHJvbmFtZSAgICAgICAgIAotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgICAg ICAgICAgICBwcm9uYW1lICAgICAgICAgICAgCistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tCiAgUklfRktleV9jYXNjYWRlX2RlbAogIFJJX0ZLZXlfbm9hY3Rpb25fZGVsCisgUklfRktl eV9wZXJpb2RfY2FzY2FkZV9kZWwKKyBSSV9GS2V5X3BlcmlvZF9zZXRkZWZhdWx0X2RlbAorIFJJ X0ZLZXlfcGVyaW9kX3NldG51bGxfZGVsCiAgUklfRktleV9yZXN0cmljdF9kZWwKICBSSV9GS2V5 X3NldGRlZmF1bHRfZGVsCiAgUklfRktleV9zZXRudWxsX2RlbAotKDUgcm93cykKKyg4IHJvd3Mp CiAKIGV4cGxhaW4gKGNvc3RzIG9mZikKIHNlbGVjdCBwcm9uYW1lIGZyb20gcGdfcHJvYyB3aGVy ZSBwcm9uYW1lIGlsaWtlICcwMCVmb28nIG9yZGVyIGJ5IDE7CmRpZmYgLS1naXQgYS9zcmMvdGVz dC9yZWdyZXNzL2V4cGVjdGVkL3dpdGhvdXRfb3ZlcmxhcHMub3V0IGIvc3JjL3Rlc3QvcmVncmVz cy9leHBlY3RlZC93aXRob3V0X292ZXJsYXBzLm91dAppbmRleCA0MDE1NTBiNTQ4Mi4uNGQ5ZjI1 YWM0MDUgMTAwNjQ0Ci0tLSBhL3NyYy90ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvd2l0aG91dF9vdmVy bGFwcy5vdXQKKysrIGIvc3JjL3Rlc3QvcmVncmVzcy9leHBlY3RlZC93aXRob3V0X292ZXJsYXBz Lm91dApAQCAtMTk0Nyw3ICsxOTQ3LDI0IEBAIEVSUk9SOiAgdW5zdXBwb3J0ZWQgT04gREVMRVRF IGFjdGlvbiBmb3IgZm9yZWlnbiBrZXkgY29uc3RyYWludCB1c2luZyBQRVJJT0QKIC0tCiAtLSBy bmcycm5nIHRlc3QgT04gVVBEQVRFL0RFTEVURSBvcHRpb25zCiAtLQorLS0gVE9DOgorLS0gcmVm ZXJlbmNlZCB1cGRhdGVzIENBU0NBREUKKy0tIHJlZmVyZW5jZWQgZGVsZXRlcyBDQVNDQURFCist LSByZWZlcmVuY2VkIHVwZGF0ZXMgU0VUIE5VTEwKKy0tIHJlZmVyZW5jZWQgZGVsZXRlcyBTRVQg TlVMTAorLS0gcmVmZXJlbmNlZCB1cGRhdGVzIFNFVCBERUZBVUxUCistLSByZWZlcmVuY2VkIGRl bGV0ZXMgU0VUIERFRkFVTFQKKy0tIHJlZmVyZW5jZWQgdXBkYXRlcyBDQVNDQURFICh0d28gc2Nh bGFyIGNvbHMpCistLSByZWZlcmVuY2VkIGRlbGV0ZXMgQ0FTQ0FERSAodHdvIHNjYWxhciBjb2xz KQorLS0gcmVmZXJlbmNlZCB1cGRhdGVzIFNFVCBOVUxMICh0d28gc2NhbGFyIGNvbHMpCistLSBy ZWZlcmVuY2VkIGRlbGV0ZXMgU0VUIE5VTEwgKHR3byBzY2FsYXIgY29scykKKy0tIHJlZmVyZW5j ZWQgZGVsZXRlcyBTRVQgTlVMTCAodHdvIHNjYWxhciBjb2xzLCBTRVQgTlVMTCBzdWJzZXQpCist LSByZWZlcmVuY2VkIHVwZGF0ZXMgU0VUIERFRkFVTFQgKHR3byBzY2FsYXIgY29scykKKy0tIHJl ZmVyZW5jZWQgZGVsZXRlcyBTRVQgREVGQVVMVCAodHdvIHNjYWxhciBjb2xzKQorLS0gcmVmZXJl bmNlZCBkZWxldGVzIFNFVCBERUZBVUxUICh0d28gc2NhbGFyIGNvbHMsIFNFVCBERUZBVUxUIHN1 YnNldCkKKy0tCiAtLSB0ZXN0IEZLIHJlZmVyZW5jZWQgdXBkYXRlcyBDQVNDQURFCistLQogVFJV TkNBVEUgdGVtcG9yYWxfcm5nLCB0ZW1wb3JhbF9ma19ybmcycm5nOwogSU5TRVJUIElOVE8gdGVt cG9yYWxfcm5nIChpZCwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s2LDcpJywgZGF0ZXJhbmdlKCcyMDE4 LTAxLTAxJywgJzIwMjEtMDEtMDEnKSk7CiBJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ma19ybmcycm5n IChpZCwgdmFsaWRfYXQsIHBhcmVudF9pZCkgVkFMVUVTICgnWzEwMCwxMDEpJywgZGF0ZXJhbmdl KCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSwgJ1s2LDcpJyk7CkBAIC0xOTU2LDI5ICsxOTcz LDU5MyBAQCBBTFRFUiBUQUJMRSB0ZW1wb3JhbF9ma19ybmcycm5nCiAgICAgRk9SRUlHTiBLRVkg KHBhcmVudF9pZCwgUEVSSU9EIHZhbGlkX2F0KQogICAgIFJFRkVSRU5DRVMgdGVtcG9yYWxfcm5n CiAgICAgT04gREVMRVRFIENBU0NBREUgT04gVVBEQVRFIENBU0NBREU7Ci1FUlJPUjogIHVuc3Vw cG9ydGVkIE9OIFVQREFURSBhY3Rpb24gZm9yIGZvcmVpZ24ga2V5IGNvbnN0cmFpbnQgdXNpbmcg UEVSSU9ECistLSBsZWZ0b3ZlcnMgb24gYm90aCBzaWRlczoKK1VQREFURSB0ZW1wb3JhbF9ybmcg Rk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAxOS0wMS0wMScgVE8gJzIwMjAtMDEtMDEn IFNFVCBpZCA9ICdbNyw4KScgV0hFUkUgaWQgPSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1w b3JhbF9ma19ybmcycm5nIFdIRVJFIGlkID0gJ1sxMDAsMTAxKScgT1JERVIgQlkgaWQsIHZhbGlk X2F0OworICAgIGlkICAgICB8ICAgICAgICB2YWxpZF9hdCAgICAgICAgIHwgcGFyZW50X2lkIAor LS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLQorIFsxMDAs MTAxKSB8IFsyMDE4LTAxLTAxLDIwMTktMDEtMDEpIHwgWzYsNykKKyBbMTAwLDEwMSkgfCBbMjAx OS0wMS0wMSwyMDIwLTAxLTAxKSB8IFs3LDgpCisgWzEwMCwxMDEpIHwgWzIwMjAtMDEtMDEsMjAy MS0wMS0wMSkgfCBbNiw3KQorKDMgcm93cykKKworLS0gbm9uLUZQTyB1cGRhdGU6CitVUERBVEUg dGVtcG9yYWxfcm5nIFNFVCBpZCA9ICdbNyw4KScgV0hFUkUgaWQgPSAnWzYsNyknOworU0VMRUNU ICogRlJPTSB0ZW1wb3JhbF9ma19ybmcycm5nIFdIRVJFIGlkID0gJ1sxMDAsMTAxKScgT1JERVIg QlkgaWQsIHZhbGlkX2F0OworICAgIGlkICAgICB8ICAgICAgICB2YWxpZF9hdCAgICAgICAgIHwg cGFyZW50X2lkIAorLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0t LS0tLQorIFsxMDAsMTAxKSB8IFsyMDE4LTAxLTAxLDIwMTktMDEtMDEpIHwgWzcsOCkKKyBbMTAw LDEwMSkgfCBbMjAxOS0wMS0wMSwyMDIwLTAxLTAxKSB8IFs3LDgpCisgWzEwMCwxMDEpIHwgWzIw MjAtMDEtMDEsMjAyMS0wMS0wMSkgfCBbNyw4KQorKDMgcm93cykKKworLS0gRksgYWNyb3NzIHR3 byByZWZlcmVuY2VkIHJvd3M6CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ybmcgKGlkLCB2YWxpZF9h dCkgVkFMVUVTICgnWzgsOSknLCBkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMC0wMS0wMScp KTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3JuZyAoaWQsIHZhbGlkX2F0KSBWQUxVRVMgKCdbOCw5 KScsIGRhdGVyYW5nZSgnMjAyMC0wMS0wMScsICcyMDIxLTAxLTAxJykpOworSU5TRVJUIElOVE8g dGVtcG9yYWxfZmtfcm5nMnJuZyAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQpIFZBTFVFUyAoJ1sy MDAsMjAxKScsIGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJyksICdbOCw5KScp OworVVBEQVRFIHRlbXBvcmFsX3JuZyBTRVQgaWQgPSAnWzksMTApJyBXSEVSRSBpZCA9ICdbOCw5 KScgQU5EIHZhbGlkX2F0IEA+ICcyMDE5LTAxLTAxJzo6ZGF0ZTsKK1NFTEVDVCAqIEZST00gdGVt cG9yYWxfZmtfcm5nMnJuZyBXSEVSRSBpZCA9ICdbMjAwLDIwMSknIE9SREVSIEJZIGlkLCB2YWxp ZF9hdDsKKyAgICBpZCAgICAgfCAgICAgICAgdmFsaWRfYXQgICAgICAgICB8IHBhcmVudF9pZCAK Ky0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0KKyBbMjAw LDIwMSkgfCBbMjAxOC0wMS0wMSwyMDIwLTAxLTAxKSB8IFs5LDEwKQorIFsyMDAsMjAxKSB8IFsy MDIwLTAxLTAxLDIwMjEtMDEtMDEpIHwgWzgsOSkKKygyIHJvd3MpCisKKy0tCistLSB0ZXN0IEZL IHJlZmVyZW5jZWQgZGVsZXRlcyBDQVNDQURFCistLQorVFJVTkNBVEUgdGVtcG9yYWxfcm5nLCB0 ZW1wb3JhbF9ma19ybmcycm5nOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcm5nIChpZCwgdmFsaWRf YXQpIFZBTFVFUyAoJ1s2LDcpJywgZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEn KSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ma19ybmcycm5nIChpZCwgdmFsaWRfYXQsIHBhcmVu dF9pZCkgVkFMVUVTICgnWzEwMCwxMDEpJywgZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEt MDEtMDEnKSwgJ1s2LDcpJyk7CistLSBsZWZ0b3ZlcnMgb24gYm90aCBzaWRlczoKK0RFTEVURSBG Uk9NIHRlbXBvcmFsX3JuZyBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDE5LTAxLTAx JyBUTyAnMjAyMC0wMS0wMScgV0hFUkUgaWQgPSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1w b3JhbF9ma19ybmcycm5nIFdIRVJFIGlkID0gJ1sxMDAsMTAxKScgT1JERVIgQlkgaWQsIHZhbGlk X2F0OworICAgIGlkICAgICB8ICAgICAgICB2YWxpZF9hdCAgICAgICAgIHwgcGFyZW50X2lkIAor LS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLQorIFsxMDAs MTAxKSB8IFsyMDE4LTAxLTAxLDIwMTktMDEtMDEpIHwgWzYsNykKKyBbMTAwLDEwMSkgfCBbMjAy MC0wMS0wMSwyMDIxLTAxLTAxKSB8IFs2LDcpCisoMiByb3dzKQorCistLSBub24tRlBPIGRlbGV0 ZToKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3JuZyBXSEVSRSBpZCA9ICdbNiw3KSc7CitTRUxFQ1Qg KiBGUk9NIHRlbXBvcmFsX2ZrX3JuZzJybmcgV0hFUkUgaWQgPSAnWzEwMCwxMDEpJyBPUkRFUiBC WSBpZCwgdmFsaWRfYXQ7CisgaWQgfCB2YWxpZF9hdCB8IHBhcmVudF9pZCAKKy0tLS0rLS0tLS0t LS0tLSstLS0tLS0tLS0tLQorKDAgcm93cykKKworLS0gRksgYWNyb3NzIHR3byByZWZlcmVuY2Vk IHJvd3M6CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ybmcgKGlkLCB2YWxpZF9hdCkgVkFMVUVTICgn WzgsOSknLCBkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMC0wMS0wMScpKTsKK0lOU0VSVCBJ TlRPIHRlbXBvcmFsX3JuZyAoaWQsIHZhbGlkX2F0KSBWQUxVRVMgKCdbOCw5KScsIGRhdGVyYW5n ZSgnMjAyMC0wMS0wMScsICcyMDIxLTAxLTAxJykpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmtf cm5nMnJuZyAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQpIFZBTFVFUyAoJ1syMDAsMjAxKScsIGRh dGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJyksICdbOCw5KScpOworREVMRVRFIEZS T00gdGVtcG9yYWxfcm5nIFdIRVJFIGlkID0gJ1s4LDkpJyBBTkQgdmFsaWRfYXQgQD4gJzIwMTkt MDEtMDEnOjpkYXRlOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9ma19ybmcycm5nIFdIRVJFIGlk ID0gJ1syMDAsMjAxKScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworICAgIGlkICAgICB8ICAgICAg ICB2YWxpZF9hdCAgICAgICAgIHwgcGFyZW50X2lkIAorLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLQorIFsyMDAsMjAxKSB8IFsyMDIwLTAxLTAxLDIwMjEt MDEtMDEpIHwgWzgsOSkKKygxIHJvdykKKworLS0KIC0tIHRlc3QgRksgcmVmZXJlbmNlZCB1cGRh dGVzIFNFVCBOVUxMCistLQogVFJVTkNBVEUgdGVtcG9yYWxfcm5nLCB0ZW1wb3JhbF9ma19ybmcy cm5nOwogSU5TRVJUIElOVE8gdGVtcG9yYWxfcm5nIChpZCwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s2 LDcpJywgZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSk7CiBJTlNFUlQgSU5U TyB0ZW1wb3JhbF9ma19ybmcycm5nIChpZCwgdmFsaWRfYXQsIHBhcmVudF9pZCkgVkFMVUVTICgn WzEwMCwxMDEpJywgZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSwgJ1s2LDcp Jyk7CiBBTFRFUiBUQUJMRSB0ZW1wb3JhbF9ma19ybmcycm5nCisgIERST1AgQ09OU1RSQUlOVCB0 ZW1wb3JhbF9ma19ybmcycm5nX2ZrLAogICBBREQgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19ybmcy cm5nX2ZrCiAgICAgRk9SRUlHTiBLRVkgKHBhcmVudF9pZCwgUEVSSU9EIHZhbGlkX2F0KQogICAg IFJFRkVSRU5DRVMgdGVtcG9yYWxfcm5nCiAgICAgT04gREVMRVRFIFNFVCBOVUxMIE9OIFVQREFU RSBTRVQgTlVMTDsKLUVSUk9SOiAgdW5zdXBwb3J0ZWQgT04gVVBEQVRFIGFjdGlvbiBmb3IgZm9y ZWlnbiBrZXkgY29uc3RyYWludCB1c2luZyBQRVJJT0QKKy0tIGxlZnRvdmVycyBvbiBib3RoIHNp ZGVzOgorVVBEQVRFIHRlbXBvcmFsX3JuZyBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcy MDE5LTAxLTAxJyBUTyAnMjAyMC0wMS0wMScgU0VUIGlkID0gJ1s3LDgpJyBXSEVSRSBpZCA9ICdb Niw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrX3JuZzJybmcgV0hFUkUgaWQgPSAnWzEw MCwxMDEpJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisgICAgaWQgICAgIHwgICAgICAgIHZhbGlk X2F0ICAgICAgICAgfCBwYXJlbnRfaWQgCistLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tKy0tLS0tLS0tLS0tCisgWzEwMCwxMDEpIHwgWzIwMTgtMDEtMDEsMjAxOS0wMS0wMSkg fCBbNiw3KQorIFsxMDAsMTAxKSB8IFsyMDE5LTAxLTAxLDIwMjAtMDEtMDEpIHwgCisgWzEwMCwx MDEpIHwgWzIwMjAtMDEtMDEsMjAyMS0wMS0wMSkgfCBbNiw3KQorKDMgcm93cykKKworLS0gbm9u LUZQTyB1cGRhdGU6CitVUERBVEUgdGVtcG9yYWxfcm5nIFNFVCBpZCA9ICdbNyw4KScgV0hFUkUg aWQgPSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9ma19ybmcycm5nIFdIRVJFIGlk ID0gJ1sxMDAsMTAxKScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworICAgIGlkICAgICB8ICAgICAg ICB2YWxpZF9hdCAgICAgICAgIHwgcGFyZW50X2lkIAorLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLQorIFsxMDAsMTAxKSB8IFsyMDE4LTAxLTAxLDIwMTkt MDEtMDEpIHwgCisgWzEwMCwxMDEpIHwgWzIwMTktMDEtMDEsMjAyMC0wMS0wMSkgfCAKKyBbMTAw LDEwMSkgfCBbMjAyMC0wMS0wMSwyMDIxLTAxLTAxKSB8IAorKDMgcm93cykKKworLS0gRksgYWNy b3NzIHR3byByZWZlcmVuY2VkIHJvd3M6CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ybmcgKGlkLCB2 YWxpZF9hdCkgVkFMVUVTICgnWzgsOSknLCBkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMC0w MS0wMScpKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3JuZyAoaWQsIHZhbGlkX2F0KSBWQUxVRVMg KCdbOCw5KScsIGRhdGVyYW5nZSgnMjAyMC0wMS0wMScsICcyMDIxLTAxLTAxJykpOworSU5TRVJU IElOVE8gdGVtcG9yYWxfZmtfcm5nMnJuZyAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQpIFZBTFVF UyAoJ1syMDAsMjAxKScsIGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJyksICdb OCw5KScpOworVVBEQVRFIHRlbXBvcmFsX3JuZyBTRVQgaWQgPSAnWzksMTApJyBXSEVSRSBpZCA9 ICdbOCw5KScgQU5EIHZhbGlkX2F0IEA+ICcyMDE5LTAxLTAxJzo6ZGF0ZTsKK1NFTEVDVCAqIEZS T00gdGVtcG9yYWxfZmtfcm5nMnJuZyBXSEVSRSBpZCA9ICdbMjAwLDIwMSknIE9SREVSIEJZIGlk LCB2YWxpZF9hdDsKKyAgICBpZCAgICAgfCAgICAgICAgdmFsaWRfYXQgICAgICAgICB8IHBhcmVu dF9pZCAKKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0K KyBbMjAwLDIwMSkgfCBbMjAxOC0wMS0wMSwyMDIwLTAxLTAxKSB8IAorIFsyMDAsMjAxKSB8IFsy MDIwLTAxLTAxLDIwMjEtMDEtMDEpIHwgWzgsOSkKKygyIHJvd3MpCisKKy0tCistLSB0ZXN0IEZL IHJlZmVyZW5jZWQgZGVsZXRlcyBTRVQgTlVMTAorLS0KK1RSVU5DQVRFIHRlbXBvcmFsX3JuZywg dGVtcG9yYWxfZmtfcm5nMnJuZzsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3JuZyAoaWQsIHZhbGlk X2F0KSBWQUxVRVMgKCdbNiw3KScsIGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAx JykpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmtfcm5nMnJuZyAoaWQsIHZhbGlkX2F0LCBwYXJl bnRfaWQpIFZBTFVFUyAoJ1sxMDAsMTAxKScsIGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIx LTAxLTAxJyksICdbNiw3KScpOworLS0gbGVmdG92ZXJzIG9uIGJvdGggc2lkZXM6CitERUxFVEUg RlJPTSB0ZW1wb3JhbF9ybmcgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAxOS0wMS0w MScgVE8gJzIwMjAtMDEtMDEnIFdIRVJFIGlkID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVt cG9yYWxfZmtfcm5nMnJuZyBXSEVSRSBpZCA9ICdbMTAwLDEwMSknIE9SREVSIEJZIGlkLCB2YWxp ZF9hdDsKKyAgICBpZCAgICAgfCAgICAgICAgdmFsaWRfYXQgICAgICAgICB8IHBhcmVudF9pZCAK Ky0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0KKyBbMTAw LDEwMSkgfCBbMjAxOC0wMS0wMSwyMDE5LTAxLTAxKSB8IFs2LDcpCisgWzEwMCwxMDEpIHwgWzIw MTktMDEtMDEsMjAyMC0wMS0wMSkgfCAKKyBbMTAwLDEwMSkgfCBbMjAyMC0wMS0wMSwyMDIxLTAx LTAxKSB8IFs2LDcpCisoMyByb3dzKQorCistLSBub24tRlBPIGRlbGV0ZToKK0RFTEVURSBGUk9N IHRlbXBvcmFsX3JuZyBXSEVSRSBpZCA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFs X2ZrX3JuZzJybmcgV0hFUkUgaWQgPSAnWzEwMCwxMDEpJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7 CisgICAgaWQgICAgIHwgICAgICAgIHZhbGlkX2F0ICAgICAgICAgfCBwYXJlbnRfaWQgCistLS0t LS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tCisgWzEwMCwxMDEp IHwgWzIwMTgtMDEtMDEsMjAxOS0wMS0wMSkgfCAKKyBbMTAwLDEwMSkgfCBbMjAxOS0wMS0wMSwy MDIwLTAxLTAxKSB8IAorIFsxMDAsMTAxKSB8IFsyMDIwLTAxLTAxLDIwMjEtMDEtMDEpIHwgCiso MyByb3dzKQorCistLSBGSyBhY3Jvc3MgdHdvIHJlZmVyZW5jZWQgcm93czoKK0lOU0VSVCBJTlRP IHRlbXBvcmFsX3JuZyAoaWQsIHZhbGlkX2F0KSBWQUxVRVMgKCdbOCw5KScsIGRhdGVyYW5nZSgn MjAxOC0wMS0wMScsICcyMDIwLTAxLTAxJykpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcm5nIChp ZCwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s4LDkpJywgZGF0ZXJhbmdlKCcyMDIwLTAxLTAxJywgJzIw MjEtMDEtMDEnKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ma19ybmcycm5nIChpZCwgdmFsaWRf YXQsIHBhcmVudF9pZCkgVkFMVUVTICgnWzIwMCwyMDEpJywgZGF0ZXJhbmdlKCcyMDE4LTAxLTAx JywgJzIwMjEtMDEtMDEnKSwgJ1s4LDkpJyk7CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9ybmcgV0hF UkUgaWQgPSAnWzgsOSknIEFORCB2YWxpZF9hdCBAPiAnMjAxOS0wMS0wMSc6OmRhdGU7CitTRUxF Q1QgKiBGUk9NIHRlbXBvcmFsX2ZrX3JuZzJybmcgV0hFUkUgaWQgPSAnWzIwMCwyMDEpJyBPUkRF UiBCWSBpZCwgdmFsaWRfYXQ7CisgICAgaWQgICAgIHwgICAgICAgIHZhbGlkX2F0ICAgICAgICAg fCBwYXJlbnRfaWQgCistLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0t LS0tLS0tCisgWzIwMCwyMDEpIHwgWzIwMTgtMDEtMDEsMjAyMC0wMS0wMSkgfCAKKyBbMjAwLDIw MSkgfCBbMjAyMC0wMS0wMSwyMDIxLTAxLTAxKSB8IFs4LDkpCisoMiByb3dzKQorCistLQogLS0g dGVzdCBGSyByZWZlcmVuY2VkIHVwZGF0ZXMgU0VUIERFRkFVTFQKKy0tCiBUUlVOQ0FURSB0ZW1w b3JhbF9ybmcsIHRlbXBvcmFsX2ZrX3JuZzJybmc7CiBJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ybmcg KGlkLCB2YWxpZF9hdCkgVkFMVUVTICgnWy0xLC0xXScsIGRhdGVyYW5nZShudWxsLCBudWxsKSk7 CiBJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ybmcgKGlkLCB2YWxpZF9hdCkgVkFMVUVTICgnWzYsNykn LCBkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpKTsKIElOU0VSVCBJTlRPIHRl bXBvcmFsX2ZrX3JuZzJybmcgKGlkLCB2YWxpZF9hdCwgcGFyZW50X2lkKSBWQUxVRVMgKCdbMTAw LDEwMSknLCBkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpLCAnWzYsNyknKTsK IEFMVEVSIFRBQkxFIHRlbXBvcmFsX2ZrX3JuZzJybmcKICAgQUxURVIgQ09MVU1OIHBhcmVudF9p ZCBTRVQgREVGQVVMVCAnWy0xLC0xXScsCisgIERST1AgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19y bmcycm5nX2ZrLAogICBBREQgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19ybmcycm5nX2ZrCiAgICAg Rk9SRUlHTiBLRVkgKHBhcmVudF9pZCwgUEVSSU9EIHZhbGlkX2F0KQogICAgIFJFRkVSRU5DRVMg dGVtcG9yYWxfcm5nCiAgICAgT04gREVMRVRFIFNFVCBERUZBVUxUIE9OIFVQREFURSBTRVQgREVG QVVMVDsKLUVSUk9SOiAgdW5zdXBwb3J0ZWQgT04gVVBEQVRFIGFjdGlvbiBmb3IgZm9yZWlnbiBr ZXkgY29uc3RyYWludCB1c2luZyBQRVJJT0QKKy0tIGxlZnRvdmVycyBvbiBib3RoIHNpZGVzOgor VVBEQVRFIHRlbXBvcmFsX3JuZyBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDE5LTAx LTAxJyBUTyAnMjAyMC0wMS0wMScgU0VUIGlkID0gJ1s3LDgpJyBXSEVSRSBpZCA9ICdbNiw3KSc7 CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrX3JuZzJybmcgV0hFUkUgaWQgPSAnWzEwMCwxMDEp JyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisgICAgaWQgICAgIHwgICAgICAgIHZhbGlkX2F0ICAg ICAgICAgfCBwYXJlbnRfaWQgCistLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t Ky0tLS0tLS0tLS0tCisgWzEwMCwxMDEpIHwgWzIwMTgtMDEtMDEsMjAxOS0wMS0wMSkgfCBbNiw3 KQorIFsxMDAsMTAxKSB8IFsyMDE5LTAxLTAxLDIwMjAtMDEtMDEpIHwgWy0xLDApCisgWzEwMCwx MDEpIHwgWzIwMjAtMDEtMDEsMjAyMS0wMS0wMSkgfCBbNiw3KQorKDMgcm93cykKKworLS0gbm9u LUZQTyB1cGRhdGU6CitVUERBVEUgdGVtcG9yYWxfcm5nIFNFVCBpZCA9ICdbNyw4KScgV0hFUkUg aWQgPSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9ma19ybmcycm5nIFdIRVJFIGlk ID0gJ1sxMDAsMTAxKScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworICAgIGlkICAgICB8ICAgICAg ICB2YWxpZF9hdCAgICAgICAgIHwgcGFyZW50X2lkIAorLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLQorIFsxMDAsMTAxKSB8IFsyMDE4LTAxLTAxLDIwMTkt MDEtMDEpIHwgWy0xLDApCisgWzEwMCwxMDEpIHwgWzIwMTktMDEtMDEsMjAyMC0wMS0wMSkgfCBb LTEsMCkKKyBbMTAwLDEwMSkgfCBbMjAyMC0wMS0wMSwyMDIxLTAxLTAxKSB8IFstMSwwKQorKDMg cm93cykKKworLS0gRksgYWNyb3NzIHR3byByZWZlcmVuY2VkIHJvd3M6CitJTlNFUlQgSU5UTyB0 ZW1wb3JhbF9ybmcgKGlkLCB2YWxpZF9hdCkgVkFMVUVTICgnWzgsOSknLCBkYXRlcmFuZ2UoJzIw MTgtMDEtMDEnLCAnMjAyMC0wMS0wMScpKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3JuZyAoaWQs IHZhbGlkX2F0KSBWQUxVRVMgKCdbOCw5KScsIGRhdGVyYW5nZSgnMjAyMC0wMS0wMScsICcyMDIx LTAxLTAxJykpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmtfcm5nMnJuZyAoaWQsIHZhbGlkX2F0 LCBwYXJlbnRfaWQpIFZBTFVFUyAoJ1syMDAsMjAxKScsIGRhdGVyYW5nZSgnMjAxOC0wMS0wMScs ICcyMDIxLTAxLTAxJyksICdbOCw5KScpOworVVBEQVRFIHRlbXBvcmFsX3JuZyBTRVQgaWQgPSAn WzksMTApJyBXSEVSRSBpZCA9ICdbOCw5KScgQU5EIHZhbGlkX2F0IEA+ICcyMDE5LTAxLTAxJzo6 ZGF0ZTsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmtfcm5nMnJuZyBXSEVSRSBpZCA9ICdbMjAw LDIwMSknIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKyAgICBpZCAgICAgfCAgICAgICAgdmFsaWRf YXQgICAgICAgICB8IHBhcmVudF9pZCAKKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0rLS0tLS0tLS0tLS0KKyBbMjAwLDIwMSkgfCBbMjAxOC0wMS0wMSwyMDIwLTAxLTAxKSB8 IFstMSwwKQorIFsyMDAsMjAxKSB8IFsyMDIwLTAxLTAxLDIwMjEtMDEtMDEpIHwgWzgsOSkKKygy IHJvd3MpCisKKy0tCistLSB0ZXN0IEZLIHJlZmVyZW5jZWQgZGVsZXRlcyBTRVQgREVGQVVMVAor LS0KK1RSVU5DQVRFIHRlbXBvcmFsX3JuZywgdGVtcG9yYWxfZmtfcm5nMnJuZzsKK0lOU0VSVCBJ TlRPIHRlbXBvcmFsX3JuZyAoaWQsIHZhbGlkX2F0KSBWQUxVRVMgKCdbLTEsLTFdJywgZGF0ZXJh bmdlKG51bGwsIG51bGwpKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3JuZyAoaWQsIHZhbGlkX2F0 KSBWQUxVRVMgKCdbNiw3KScsIGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJykp OworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmtfcm5nMnJuZyAoaWQsIHZhbGlkX2F0LCBwYXJlbnRf aWQpIFZBTFVFUyAoJ1sxMDAsMTAxKScsIGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIxLTAx LTAxJyksICdbNiw3KScpOworLS0gbGVmdG92ZXJzIG9uIGJvdGggc2lkZXM6CitERUxFVEUgRlJP TSB0ZW1wb3JhbF9ybmcgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAxOS0wMS0wMScg VE8gJzIwMjAtMDEtMDEnIFdIRVJFIGlkID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9y YWxfZmtfcm5nMnJuZyBXSEVSRSBpZCA9ICdbMTAwLDEwMSknIE9SREVSIEJZIGlkLCB2YWxpZF9h dDsKKyAgICBpZCAgICAgfCAgICAgICAgdmFsaWRfYXQgICAgICAgICB8IHBhcmVudF9pZCAKKy0t LS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0KKyBbMTAwLDEw MSkgfCBbMjAxOC0wMS0wMSwyMDE5LTAxLTAxKSB8IFs2LDcpCisgWzEwMCwxMDEpIHwgWzIwMTkt MDEtMDEsMjAyMC0wMS0wMSkgfCBbLTEsMCkKKyBbMTAwLDEwMSkgfCBbMjAyMC0wMS0wMSwyMDIx LTAxLTAxKSB8IFs2LDcpCisoMyByb3dzKQorCistLSBub24tRlBPIHVwZGF0ZToKK0RFTEVURSBG Uk9NIHRlbXBvcmFsX3JuZyBXSEVSRSBpZCA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBv cmFsX2ZrX3JuZzJybmcgV0hFUkUgaWQgPSAnWzEwMCwxMDEpJyBPUkRFUiBCWSBpZCwgdmFsaWRf YXQ7CisgICAgaWQgICAgIHwgICAgICAgIHZhbGlkX2F0ICAgICAgICAgfCBwYXJlbnRfaWQgCist LS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tCisgWzEwMCwx MDEpIHwgWzIwMTgtMDEtMDEsMjAxOS0wMS0wMSkgfCBbLTEsMCkKKyBbMTAwLDEwMSkgfCBbMjAx OS0wMS0wMSwyMDIwLTAxLTAxKSB8IFstMSwwKQorIFsxMDAsMTAxKSB8IFsyMDIwLTAxLTAxLDIw MjEtMDEtMDEpIHwgWy0xLDApCisoMyByb3dzKQorCistLSBGSyBhY3Jvc3MgdHdvIHJlZmVyZW5j ZWQgcm93czoKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3JuZyAoaWQsIHZhbGlkX2F0KSBWQUxVRVMg KCdbOCw5KScsIGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIwLTAxLTAxJykpOworSU5TRVJU IElOVE8gdGVtcG9yYWxfcm5nIChpZCwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s4LDkpJywgZGF0ZXJh bmdlKCcyMDIwLTAxLTAxJywgJzIwMjEtMDEtMDEnKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9m a19ybmcycm5nIChpZCwgdmFsaWRfYXQsIHBhcmVudF9pZCkgVkFMVUVTICgnWzIwMCwyMDEpJywg ZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSwgJ1s4LDkpJyk7CitERUxFVEUg RlJPTSB0ZW1wb3JhbF9ybmcgV0hFUkUgaWQgPSAnWzgsOSknIEFORCB2YWxpZF9hdCBAPiAnMjAx OS0wMS0wMSc6OmRhdGU7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrX3JuZzJybmcgV0hFUkUg aWQgPSAnWzIwMCwyMDEpJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisgICAgaWQgICAgIHwgICAg ICAgIHZhbGlkX2F0ICAgICAgICAgfCBwYXJlbnRfaWQgCistLS0tLS0tLS0tLSstLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tCisgWzIwMCwyMDEpIHwgWzIwMTgtMDEtMDEsMjAy MC0wMS0wMSkgfCBbLTEsMCkKKyBbMjAwLDIwMSkgfCBbMjAyMC0wMS0wMSwyMDIxLTAxLTAxKSB8 IFs4LDkpCisoMiByb3dzKQorCistLQorLS0gdGVzdCBGSyByZWZlcmVuY2VkIHVwZGF0ZXMgQ0FT Q0FERSAodHdvIHNjYWxhciBjb2xzKQorLS0KK1RSVU5DQVRFIHRlbXBvcmFsX3JuZzIsIHRlbXBv cmFsX2ZrMl9ybmcycm5nOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcm5nMiAoaWQxLCBpZDIsIHZh bGlkX2F0KSBWQUxVRVMgKCdbNiw3KScsICdbNiw3KScsIGRhdGVyYW5nZSgnMjAxOC0wMS0wMScs ICcyMDIxLTAxLTAxJykpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmsyX3JuZzJybmcgKGlkLCB2 YWxpZF9hdCwgcGFyZW50X2lkMSwgcGFyZW50X2lkMikgVkFMVUVTICgnWzEwMCwxMDEpJywgZGF0 ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSwgJ1s2LDcpJywgJ1s2LDcpJyk7CitB TFRFUiBUQUJMRSB0ZW1wb3JhbF9mazJfcm5nMnJuZworICBEUk9QIENPTlNUUkFJTlQgdGVtcG9y YWxfZmsyX3JuZzJybmdfZmssCisgIEFERCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrMl9ybmcycm5n X2ZrCisgICAgRk9SRUlHTiBLRVkgKHBhcmVudF9pZDEsIHBhcmVudF9pZDIsIFBFUklPRCB2YWxp ZF9hdCkKKyAgICBSRUZFUkVOQ0VTIHRlbXBvcmFsX3JuZzIKKyAgICBPTiBERUxFVEUgQ0FTQ0FE RSBPTiBVUERBVEUgQ0FTQ0FERTsKKy0tIGxlZnRvdmVycyBvbiBib3RoIHNpZGVzOgorVVBEQVRF IHRlbXBvcmFsX3JuZzIgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAxOS0wMS0wMScg VE8gJzIwMjAtMDEtMDEnIFNFVCBpZDEgPSAnWzcsOCknIFdIRVJFIGlkMSA9ICdbNiw3KSc7CitT RUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9ybmcycm5nIFdIRVJFIGlkID0gJ1sxMDAsMTAxKScg T1JERVIgQlkgaWQsIHZhbGlkX2F0OworICAgIGlkICAgICB8ICAgICAgICB2YWxpZF9hdCAgICAg ICAgIHwgcGFyZW50X2lkMSB8IHBhcmVudF9pZDIgCistLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0KKyBbMTAwLDEwMSkgfCBbMjAx OC0wMS0wMSwyMDE5LTAxLTAxKSB8IFs2LDcpICAgICAgfCBbNiw3KQorIFsxMDAsMTAxKSB8IFsy MDE5LTAxLTAxLDIwMjAtMDEtMDEpIHwgWzcsOCkgICAgICB8IFs2LDcpCisgWzEwMCwxMDEpIHwg WzIwMjAtMDEtMDEsMjAyMS0wMS0wMSkgfCBbNiw3KSAgICAgIHwgWzYsNykKKygzIHJvd3MpCisK Ky0tIG5vbi1GUE8gdXBkYXRlOgorVVBEQVRFIHRlbXBvcmFsX3JuZzIgU0VUIGlkMSA9ICdbNyw4 KScgV0hFUkUgaWQxID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX3JuZzJy bmcgV0hFUkUgaWQgPSAnWzEwMCwxMDEpJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisgICAgaWQg ICAgIHwgICAgICAgIHZhbGlkX2F0ICAgICAgICAgfCBwYXJlbnRfaWQxIHwgcGFyZW50X2lkMiAK Ky0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0t LS0tLS0tLQorIFsxMDAsMTAxKSB8IFsyMDE4LTAxLTAxLDIwMTktMDEtMDEpIHwgWzcsOCkgICAg ICB8IFs2LDcpCisgWzEwMCwxMDEpIHwgWzIwMTktMDEtMDEsMjAyMC0wMS0wMSkgfCBbNyw4KSAg ICAgIHwgWzYsNykKKyBbMTAwLDEwMSkgfCBbMjAyMC0wMS0wMSwyMDIxLTAxLTAxKSB8IFs3LDgp ICAgICAgfCBbNiw3KQorKDMgcm93cykKKworLS0gRksgYWNyb3NzIHR3byByZWZlcmVuY2VkIHJv d3M6CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ybmcyIChpZDEsIGlkMiwgdmFsaWRfYXQpIFZBTFVF UyAoJ1s4LDkpJywgJ1s4LDkpJywgZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjAtMDEtMDEn KSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ybmcyIChpZDEsIGlkMiwgdmFsaWRfYXQpIFZBTFVF UyAoJ1s4LDkpJywgJ1s4LDkpJywgZGF0ZXJhbmdlKCcyMDIwLTAxLTAxJywgJzIwMjEtMDEtMDEn KSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9mazJfcm5nMnJuZyAoaWQsIHZhbGlkX2F0LCBwYXJl bnRfaWQxLCBwYXJlbnRfaWQyKSBWQUxVRVMgKCdbMjAwLDIwMSknLCBkYXRlcmFuZ2UoJzIwMTgt MDEtMDEnLCAnMjAyMS0wMS0wMScpLCAnWzgsOSknLCAnWzgsOSknKTsKK1VQREFURSB0ZW1wb3Jh bF9ybmcyIFNFVCBpZDEgPSAnWzksMTApJyBXSEVSRSBpZDEgPSAnWzgsOSknIEFORCB2YWxpZF9h dCBAPiAnMjAxOS0wMS0wMSc6OmRhdGU7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9ybmcy cm5nIFdIRVJFIGlkID0gJ1syMDAsMjAxKScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworICAgIGlk ICAgICB8ICAgICAgICB2YWxpZF9hdCAgICAgICAgIHwgcGFyZW50X2lkMSB8IHBhcmVudF9pZDIg CistLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0t LS0tLS0tLS0KKyBbMjAwLDIwMSkgfCBbMjAxOC0wMS0wMSwyMDIwLTAxLTAxKSB8IFs5LDEwKSAg ICAgfCBbOCw5KQorIFsyMDAsMjAxKSB8IFsyMDIwLTAxLTAxLDIwMjEtMDEtMDEpIHwgWzgsOSkg ICAgICB8IFs4LDkpCisoMiByb3dzKQorCistLQorLS0gdGVzdCBGSyByZWZlcmVuY2VkIGRlbGV0 ZXMgQ0FTQ0FERSAodHdvIHNjYWxhciBjb2xzKQorLS0KK1RSVU5DQVRFIHRlbXBvcmFsX3JuZzIs IHRlbXBvcmFsX2ZrMl9ybmcycm5nOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcm5nMiAoaWQxLCBp ZDIsIHZhbGlkX2F0KSBWQUxVRVMgKCdbNiw3KScsICdbNiw3KScsIGRhdGVyYW5nZSgnMjAxOC0w MS0wMScsICcyMDIxLTAxLTAxJykpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmsyX3JuZzJybmcg KGlkLCB2YWxpZF9hdCwgcGFyZW50X2lkMSwgcGFyZW50X2lkMikgVkFMVUVTICgnWzEwMCwxMDEp JywgZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSwgJ1s2LDcpJywgJ1s2LDcp Jyk7CistLSBsZWZ0b3ZlcnMgb24gYm90aCBzaWRlczoKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3Ju ZzIgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAxOS0wMS0wMScgVE8gJzIwMjAtMDEt MDEnIFdIRVJFIGlkMSA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9ybmcy cm5nIFdIRVJFIGlkID0gJ1sxMDAsMTAxKScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworICAgIGlk ICAgICB8ICAgICAgICB2YWxpZF9hdCAgICAgICAgIHwgcGFyZW50X2lkMSB8IHBhcmVudF9pZDIg CistLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0t LS0tLS0tLS0KKyBbMTAwLDEwMSkgfCBbMjAxOC0wMS0wMSwyMDE5LTAxLTAxKSB8IFs2LDcpICAg ICAgfCBbNiw3KQorIFsxMDAsMTAxKSB8IFsyMDIwLTAxLTAxLDIwMjEtMDEtMDEpIHwgWzYsNykg ICAgICB8IFs2LDcpCisoMiByb3dzKQorCistLSBub24tRlBPIGRlbGV0ZToKK0RFTEVURSBGUk9N IHRlbXBvcmFsX3JuZzIgV0hFUkUgaWQxID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9y YWxfZmsyX3JuZzJybmcgV0hFUkUgaWQgPSAnWzEwMCwxMDEpJyBPUkRFUiBCWSBpZCwgdmFsaWRf YXQ7CisgaWQgfCB2YWxpZF9hdCB8IHBhcmVudF9pZDEgfCBwYXJlbnRfaWQyIAorLS0tLSstLS0t LS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0KKygwIHJvd3MpCisKKy0tIEZLIGFjcm9z cyB0d28gcmVmZXJlbmNlZCByb3dzOgorSU5TRVJUIElOVE8gdGVtcG9yYWxfcm5nMiAoaWQxLCBp ZDIsIHZhbGlkX2F0KSBWQUxVRVMgKCdbOCw5KScsICdbOCw5KScsIGRhdGVyYW5nZSgnMjAxOC0w MS0wMScsICcyMDIwLTAxLTAxJykpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcm5nMiAoaWQxLCBp ZDIsIHZhbGlkX2F0KSBWQUxVRVMgKCdbOCw5KScsICdbOCw5KScsIGRhdGVyYW5nZSgnMjAyMC0w MS0wMScsICcyMDIxLTAxLTAxJykpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmsyX3JuZzJybmcg KGlkLCB2YWxpZF9hdCwgcGFyZW50X2lkMSwgcGFyZW50X2lkMikgVkFMVUVTICgnWzIwMCwyMDEp JywgZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSwgJ1s4LDkpJywgJ1s4LDkp Jyk7CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9ybmcyIFdIRVJFIGlkMSA9ICdbOCw5KScgQU5EIHZh bGlkX2F0IEA+ICcyMDE5LTAxLTAxJzo6ZGF0ZTsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsy X3JuZzJybmcgV0hFUkUgaWQgPSAnWzIwMCwyMDEpJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7Cisg ICAgaWQgICAgIHwgICAgICAgIHZhbGlkX2F0ICAgICAgICAgfCBwYXJlbnRfaWQxIHwgcGFyZW50 X2lkMiAKKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0t Ky0tLS0tLS0tLS0tLQorIFsyMDAsMjAxKSB8IFsyMDIwLTAxLTAxLDIwMjEtMDEtMDEpIHwgWzgs OSkgICAgICB8IFs4LDkpCisoMSByb3cpCisKKy0tCistLSB0ZXN0IEZLIHJlZmVyZW5jZWQgdXBk YXRlcyBTRVQgTlVMTCAodHdvIHNjYWxhciBjb2xzKQorLS0KK1RSVU5DQVRFIHRlbXBvcmFsX3Ju ZzIsIHRlbXBvcmFsX2ZrMl9ybmcycm5nOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcm5nMiAoaWQx LCBpZDIsIHZhbGlkX2F0KSBWQUxVRVMgKCdbNiw3KScsICdbNiw3KScsIGRhdGVyYW5nZSgnMjAx OC0wMS0wMScsICcyMDIxLTAxLTAxJykpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmsyX3JuZzJy bmcgKGlkLCB2YWxpZF9hdCwgcGFyZW50X2lkMSwgcGFyZW50X2lkMikgVkFMVUVTICgnWzEwMCwx MDEpJywgZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSwgJ1s2LDcpJywgJ1s2 LDcpJyk7CitBTFRFUiBUQUJMRSB0ZW1wb3JhbF9mazJfcm5nMnJuZworICBEUk9QIENPTlNUUkFJ TlQgdGVtcG9yYWxfZmsyX3JuZzJybmdfZmssCisgIEFERCBDT05TVFJBSU5UIHRlbXBvcmFsX2Zr Ml9ybmcycm5nX2ZrCisgICAgRk9SRUlHTiBLRVkgKHBhcmVudF9pZDEsIHBhcmVudF9pZDIsIFBF UklPRCB2YWxpZF9hdCkKKyAgICBSRUZFUkVOQ0VTIHRlbXBvcmFsX3JuZzIKKyAgICBPTiBERUxF VEUgU0VUIE5VTEwgT04gVVBEQVRFIFNFVCBOVUxMOworLS0gbGVmdG92ZXJzIG9uIGJvdGggc2lk ZXM6CitVUERBVEUgdGVtcG9yYWxfcm5nMiBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcy MDE5LTAxLTAxJyBUTyAnMjAyMC0wMS0wMScgU0VUIGlkMSA9ICdbNyw4KScgV0hFUkUgaWQxID0g J1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX3JuZzJybmcgV0hFUkUgaWQgPSAn WzEwMCwxMDEpJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisgICAgaWQgICAgIHwgICAgICAgIHZh bGlkX2F0ICAgICAgICAgfCBwYXJlbnRfaWQxIHwgcGFyZW50X2lkMiAKKy0tLS0tLS0tLS0tKy0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLQorIFsxMDAs MTAxKSB8IFsyMDE4LTAxLTAxLDIwMTktMDEtMDEpIHwgWzYsNykgICAgICB8IFs2LDcpCisgWzEw MCwxMDEpIHwgWzIwMTktMDEtMDEsMjAyMC0wMS0wMSkgfCAgICAgICAgICAgIHwgCisgWzEwMCwx MDEpIHwgWzIwMjAtMDEtMDEsMjAyMS0wMS0wMSkgfCBbNiw3KSAgICAgIHwgWzYsNykKKygzIHJv d3MpCisKKy0tIG5vbi1GUE8gdXBkYXRlOgorVVBEQVRFIHRlbXBvcmFsX3JuZzIgU0VUIGlkMSA9 ICdbNyw4KScgV0hFUkUgaWQxID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsy X3JuZzJybmcgV0hFUkUgaWQgPSAnWzEwMCwxMDEpJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7Cisg ICAgaWQgICAgIHwgICAgICAgIHZhbGlkX2F0ICAgICAgICAgfCBwYXJlbnRfaWQxIHwgcGFyZW50 X2lkMiAKKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0t Ky0tLS0tLS0tLS0tLQorIFsxMDAsMTAxKSB8IFsyMDE4LTAxLTAxLDIwMTktMDEtMDEpIHwgICAg ICAgICAgICB8IAorIFsxMDAsMTAxKSB8IFsyMDE5LTAxLTAxLDIwMjAtMDEtMDEpIHwgICAgICAg ICAgICB8IAorIFsxMDAsMTAxKSB8IFsyMDIwLTAxLTAxLDIwMjEtMDEtMDEpIHwgICAgICAgICAg ICB8IAorKDMgcm93cykKKworLS0gRksgYWNyb3NzIHR3byByZWZlcmVuY2VkIHJvd3M6CitJTlNF UlQgSU5UTyB0ZW1wb3JhbF9ybmcyIChpZDEsIGlkMiwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s4LDkp JywgJ1s4LDkpJywgZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjAtMDEtMDEnKSk7CitJTlNF UlQgSU5UTyB0ZW1wb3JhbF9ybmcyIChpZDEsIGlkMiwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s4LDkp JywgJ1s4LDkpJywgZGF0ZXJhbmdlKCcyMDIwLTAxLTAxJywgJzIwMjEtMDEtMDEnKSk7CitJTlNF UlQgSU5UTyB0ZW1wb3JhbF9mazJfcm5nMnJuZyAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQxLCBw YXJlbnRfaWQyKSBWQUxVRVMgKCdbMjAwLDIwMSknLCBkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAn MjAyMS0wMS0wMScpLCAnWzgsOSknLCAnWzgsOSknKTsKK1VQREFURSB0ZW1wb3JhbF9ybmcyIFNF VCBpZDEgPSAnWzksMTApJyBXSEVSRSBpZDEgPSAnWzgsOSknIEFORCB2YWxpZF9hdCBAPiAnMjAx OS0wMS0wMSc6OmRhdGU7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9ybmcycm5nIFdIRVJF IGlkID0gJ1syMDAsMjAxKScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworICAgIGlkICAgICB8ICAg ICAgICB2YWxpZF9hdCAgICAgICAgIHwgcGFyZW50X2lkMSB8IHBhcmVudF9pZDIgCistLS0tLS0t LS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0K KyBbMjAwLDIwMSkgfCBbMjAxOC0wMS0wMSwyMDIwLTAxLTAxKSB8ICAgICAgICAgICAgfCAKKyBb MjAwLDIwMSkgfCBbMjAyMC0wMS0wMSwyMDIxLTAxLTAxKSB8IFs4LDkpICAgICAgfCBbOCw5KQor KDIgcm93cykKKworLS0KKy0tIHRlc3QgRksgcmVmZXJlbmNlZCBkZWxldGVzIFNFVCBOVUxMICh0 d28gc2NhbGFyIGNvbHMpCistLQorVFJVTkNBVEUgdGVtcG9yYWxfcm5nMiwgdGVtcG9yYWxfZmsy X3JuZzJybmc7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ybmcyIChpZDEsIGlkMiwgdmFsaWRfYXQp IFZBTFVFUyAoJ1s2LDcpJywgJ1s2LDcpJywgZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEt MDEtMDEnKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9mazJfcm5nMnJuZyAoaWQsIHZhbGlkX2F0 LCBwYXJlbnRfaWQxLCBwYXJlbnRfaWQyKSBWQUxVRVMgKCdbMTAwLDEwMSknLCBkYXRlcmFuZ2Uo JzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpLCAnWzYsNyknLCAnWzYsNyknKTsKKy0tIGxlZnRv dmVycyBvbiBib3RoIHNpZGVzOgorREVMRVRFIEZST00gdGVtcG9yYWxfcm5nMiBGT1IgUE9SVElP TiBPRiB2YWxpZF9hdCBGUk9NICcyMDE5LTAxLTAxJyBUTyAnMjAyMC0wMS0wMScgV0hFUkUgaWQx ID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX3JuZzJybmcgV0hFUkUgaWQg PSAnWzEwMCwxMDEpJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisgICAgaWQgICAgIHwgICAgICAg IHZhbGlkX2F0ICAgICAgICAgfCBwYXJlbnRfaWQxIHwgcGFyZW50X2lkMiAKKy0tLS0tLS0tLS0t Ky0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLQorIFsx MDAsMTAxKSB8IFsyMDE4LTAxLTAxLDIwMTktMDEtMDEpIHwgWzYsNykgICAgICB8IFs2LDcpCisg WzEwMCwxMDEpIHwgWzIwMTktMDEtMDEsMjAyMC0wMS0wMSkgfCAgICAgICAgICAgIHwgCisgWzEw MCwxMDEpIHwgWzIwMjAtMDEtMDEsMjAyMS0wMS0wMSkgfCBbNiw3KSAgICAgIHwgWzYsNykKKygz IHJvd3MpCisKKy0tIG5vbi1GUE8gZGVsZXRlOgorREVMRVRFIEZST00gdGVtcG9yYWxfcm5nMiBX SEVSRSBpZDEgPSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9mazJfcm5nMnJuZyBX SEVSRSBpZCA9ICdbMTAwLDEwMSknIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKyAgICBpZCAgICAg fCAgICAgICAgdmFsaWRfYXQgICAgICAgICB8IHBhcmVudF9pZDEgfCBwYXJlbnRfaWQyIAorLS0t LS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0t LS0tCisgWzEwMCwxMDEpIHwgWzIwMTgtMDEtMDEsMjAxOS0wMS0wMSkgfCAgICAgICAgICAgIHwg CisgWzEwMCwxMDEpIHwgWzIwMTktMDEtMDEsMjAyMC0wMS0wMSkgfCAgICAgICAgICAgIHwgCisg WzEwMCwxMDEpIHwgWzIwMjAtMDEtMDEsMjAyMS0wMS0wMSkgfCAgICAgICAgICAgIHwgCisoMyBy b3dzKQorCistLSBGSyBhY3Jvc3MgdHdvIHJlZmVyZW5jZWQgcm93czoKK0lOU0VSVCBJTlRPIHRl bXBvcmFsX3JuZzIgKGlkMSwgaWQyLCB2YWxpZF9hdCkgVkFMVUVTICgnWzgsOSknLCAnWzgsOSkn LCBkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMC0wMS0wMScpKTsKK0lOU0VSVCBJTlRPIHRl bXBvcmFsX3JuZzIgKGlkMSwgaWQyLCB2YWxpZF9hdCkgVkFMVUVTICgnWzgsOSknLCAnWzgsOSkn LCBkYXRlcmFuZ2UoJzIwMjAtMDEtMDEnLCAnMjAyMS0wMS0wMScpKTsKK0lOU0VSVCBJTlRPIHRl bXBvcmFsX2ZrMl9ybmcycm5nIChpZCwgdmFsaWRfYXQsIHBhcmVudF9pZDEsIHBhcmVudF9pZDIp IFZBTFVFUyAoJ1syMDAsMjAxKScsIGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAx JyksICdbOCw5KScsICdbOCw5KScpOworREVMRVRFIEZST00gdGVtcG9yYWxfcm5nMiBXSEVSRSBp ZDEgPSAnWzgsOSknIEFORCB2YWxpZF9hdCBAPiAnMjAxOS0wMS0wMSc6OmRhdGU7CitTRUxFQ1Qg KiBGUk9NIHRlbXBvcmFsX2ZrMl9ybmcycm5nIFdIRVJFIGlkID0gJ1syMDAsMjAxKScgT1JERVIg QlkgaWQsIHZhbGlkX2F0OworICAgIGlkICAgICB8ICAgICAgICB2YWxpZF9hdCAgICAgICAgIHwg cGFyZW50X2lkMSB8IHBhcmVudF9pZDIgCistLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0KKyBbMjAwLDIwMSkgfCBbMjAxOC0wMS0w MSwyMDIwLTAxLTAxKSB8ICAgICAgICAgICAgfCAKKyBbMjAwLDIwMSkgfCBbMjAyMC0wMS0wMSwy MDIxLTAxLTAxKSB8IFs4LDkpICAgICAgfCBbOCw5KQorKDIgcm93cykKKworLS0KKy0tIHRlc3Qg RksgcmVmZXJlbmNlZCBkZWxldGVzIFNFVCBOVUxMICh0d28gc2NhbGFyIGNvbHMsIFNFVCBOVUxM IHN1YnNldCkKKy0tCitUUlVOQ0FURSB0ZW1wb3JhbF9ybmcyLCB0ZW1wb3JhbF9mazJfcm5nMnJu ZzsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3JuZzIgKGlkMSwgaWQyLCB2YWxpZF9hdCkgVkFMVUVT ICgnWzYsNyknLCAnWzYsNyknLCBkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScp KTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrMl9ybmcycm5nIChpZCwgdmFsaWRfYXQsIHBhcmVu dF9pZDEsIHBhcmVudF9pZDIpIFZBTFVFUyAoJ1sxMDAsMTAxKScsIGRhdGVyYW5nZSgnMjAxOC0w MS0wMScsICcyMDIxLTAxLTAxJyksICdbNiw3KScsICdbNiw3KScpOworLS0gZmFpbHMgYmVjYXVz ZSB5b3UgY2FuJ3Qgc2V0IHRoZSBQRVJJT0QgY29sdW1uOgorQUxURVIgVEFCTEUgdGVtcG9yYWxf ZmsyX3JuZzJybmcKKyAgRFJPUCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrMl9ybmcycm5nX2ZrLAor ICBBREQgQ09OU1RSQUlOVCB0ZW1wb3JhbF9mazJfcm5nMnJuZ19maworICAgIEZPUkVJR04gS0VZ IChwYXJlbnRfaWQxLCBwYXJlbnRfaWQyLCBQRVJJT0QgdmFsaWRfYXQpCisgICAgUkVGRVJFTkNF UyB0ZW1wb3JhbF9ybmcyCisgICAgT04gREVMRVRFIFNFVCBOVUxMICh2YWxpZF9hdCkgT04gVVBE QVRFIFNFVCBOVUxMOworRVJST1I6ICBjb2x1bW4gInZhbGlkX2F0IiByZWZlcmVuY2VkIGluIE9O IERFTEVURSBTRVQgYWN0aW9uIGNhbm5vdCBiZSBQRVJJT0QKKy0tIG9rOgorQUxURVIgVEFCTEUg dGVtcG9yYWxfZmsyX3JuZzJybmcKKyAgRFJPUCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrMl9ybmcy cm5nX2ZrLAorICBBREQgQ09OU1RSQUlOVCB0ZW1wb3JhbF9mazJfcm5nMnJuZ19maworICAgIEZP UkVJR04gS0VZIChwYXJlbnRfaWQxLCBwYXJlbnRfaWQyLCBQRVJJT0QgdmFsaWRfYXQpCisgICAg UkVGRVJFTkNFUyB0ZW1wb3JhbF9ybmcyCisgICAgT04gREVMRVRFIFNFVCBOVUxMIChwYXJlbnRf aWQxKSBPTiBVUERBVEUgU0VUIE5VTEw7CistLSBsZWZ0b3ZlcnMgb24gYm90aCBzaWRlczoKK0RF TEVURSBGUk9NIHRlbXBvcmFsX3JuZzIgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAx OS0wMS0wMScgVE8gJzIwMjAtMDEtMDEnIFdIRVJFIGlkMSA9ICdbNiw3KSc7CitTRUxFQ1QgKiBG Uk9NIHRlbXBvcmFsX2ZrMl9ybmcycm5nIFdIRVJFIGlkID0gJ1sxMDAsMTAxKScgT1JERVIgQlkg aWQsIHZhbGlkX2F0OworICAgIGlkICAgICB8ICAgICAgICB2YWxpZF9hdCAgICAgICAgIHwgcGFy ZW50X2lkMSB8IHBhcmVudF9pZDIgCistLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0KKyBbMTAwLDEwMSkgfCBbMjAxOC0wMS0wMSwy MDE5LTAxLTAxKSB8IFs2LDcpICAgICAgfCBbNiw3KQorIFsxMDAsMTAxKSB8IFsyMDE5LTAxLTAx LDIwMjAtMDEtMDEpIHwgICAgICAgICAgICB8IFs2LDcpCisgWzEwMCwxMDEpIHwgWzIwMjAtMDEt MDEsMjAyMS0wMS0wMSkgfCBbNiw3KSAgICAgIHwgWzYsNykKKygzIHJvd3MpCisKKy0tIG5vbi1G UE8gZGVsZXRlOgorREVMRVRFIEZST00gdGVtcG9yYWxfcm5nMiBXSEVSRSBpZDEgPSAnWzYsNykn OworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9mazJfcm5nMnJuZyBXSEVSRSBpZCA9ICdbMTAwLDEw MSknIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKyAgICBpZCAgICAgfCAgICAgICAgdmFsaWRfYXQg ICAgICAgICB8IHBhcmVudF9pZDEgfCBwYXJlbnRfaWQyIAorLS0tLS0tLS0tLS0rLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tCisgWzEwMCwxMDEpIHwg WzIwMTgtMDEtMDEsMjAxOS0wMS0wMSkgfCAgICAgICAgICAgIHwgWzYsNykKKyBbMTAwLDEwMSkg fCBbMjAxOS0wMS0wMSwyMDIwLTAxLTAxKSB8ICAgICAgICAgICAgfCBbNiw3KQorIFsxMDAsMTAx KSB8IFsyMDIwLTAxLTAxLDIwMjEtMDEtMDEpIHwgICAgICAgICAgICB8IFs2LDcpCisoMyByb3dz KQorCistLSBGSyBhY3Jvc3MgdHdvIHJlZmVyZW5jZWQgcm93czoKK0lOU0VSVCBJTlRPIHRlbXBv cmFsX3JuZzIgKGlkMSwgaWQyLCB2YWxpZF9hdCkgVkFMVUVTICgnWzgsOSknLCAnWzgsOSknLCBk YXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMC0wMS0wMScpKTsKK0lOU0VSVCBJTlRPIHRlbXBv cmFsX3JuZzIgKGlkMSwgaWQyLCB2YWxpZF9hdCkgVkFMVUVTICgnWzgsOSknLCAnWzgsOSknLCBk YXRlcmFuZ2UoJzIwMjAtMDEtMDEnLCAnMjAyMS0wMS0wMScpKTsKK0lOU0VSVCBJTlRPIHRlbXBv cmFsX2ZrMl9ybmcycm5nIChpZCwgdmFsaWRfYXQsIHBhcmVudF9pZDEsIHBhcmVudF9pZDIpIFZB TFVFUyAoJ1syMDAsMjAxKScsIGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJyks ICdbOCw5KScsICdbOCw5KScpOworREVMRVRFIEZST00gdGVtcG9yYWxfcm5nMiBXSEVSRSBpZDEg PSAnWzgsOSknIEFORCB2YWxpZF9hdCBAPiAnMjAxOS0wMS0wMSc6OmRhdGU7CitTRUxFQ1QgKiBG Uk9NIHRlbXBvcmFsX2ZrMl9ybmcycm5nIFdIRVJFIGlkID0gJ1syMDAsMjAxKScgT1JERVIgQlkg aWQsIHZhbGlkX2F0OworICAgIGlkICAgICB8ICAgICAgICB2YWxpZF9hdCAgICAgICAgIHwgcGFy ZW50X2lkMSB8IHBhcmVudF9pZDIgCistLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0KKyBbMjAwLDIwMSkgfCBbMjAxOC0wMS0wMSwy MDIwLTAxLTAxKSB8ICAgICAgICAgICAgfCBbOCw5KQorIFsyMDAsMjAxKSB8IFsyMDIwLTAxLTAx LDIwMjEtMDEtMDEpIHwgWzgsOSkgICAgICB8IFs4LDkpCisoMiByb3dzKQorCistLQorLS0gdGVz dCBGSyByZWZlcmVuY2VkIHVwZGF0ZXMgU0VUIERFRkFVTFQgKHR3byBzY2FsYXIgY29scykKKy0t CitUUlVOQ0FURSB0ZW1wb3JhbF9ybmcyLCB0ZW1wb3JhbF9mazJfcm5nMnJuZzsKK0lOU0VSVCBJ TlRPIHRlbXBvcmFsX3JuZzIgKGlkMSwgaWQyLCB2YWxpZF9hdCkgVkFMVUVTICgnWy0xLC0xXScs ICdbLTEsLTFdJywgZGF0ZXJhbmdlKG51bGwsIG51bGwpKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFs X3JuZzIgKGlkMSwgaWQyLCB2YWxpZF9hdCkgVkFMVUVTICgnWzYsNyknLCAnWzYsNyknLCBkYXRl cmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFs X2ZrMl9ybmcycm5nIChpZCwgdmFsaWRfYXQsIHBhcmVudF9pZDEsIHBhcmVudF9pZDIpIFZBTFVF UyAoJ1sxMDAsMTAxKScsIGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJyksICdb Niw3KScsICdbNiw3KScpOworQUxURVIgVEFCTEUgdGVtcG9yYWxfZmsyX3JuZzJybmcKKyAgQUxU RVIgQ09MVU1OIHBhcmVudF9pZDEgU0VUIERFRkFVTFQgJ1stMSwtMV0nLAorICBBTFRFUiBDT0xV TU4gcGFyZW50X2lkMiBTRVQgREVGQVVMVCAnWy0xLC0xXScsCisgIERST1AgQ09OU1RSQUlOVCB0 ZW1wb3JhbF9mazJfcm5nMnJuZ19maywKKyAgQUREIENPTlNUUkFJTlQgdGVtcG9yYWxfZmsyX3Ju ZzJybmdfZmsKKyAgICBGT1JFSUdOIEtFWSAocGFyZW50X2lkMSwgcGFyZW50X2lkMiwgUEVSSU9E IHZhbGlkX2F0KQorICAgIFJFRkVSRU5DRVMgdGVtcG9yYWxfcm5nMgorICAgIE9OIERFTEVURSBT RVQgREVGQVVMVCBPTiBVUERBVEUgU0VUIERFRkFVTFQ7CistLSBsZWZ0b3ZlcnMgb24gYm90aCBz aWRlczoKK1VQREFURSB0ZW1wb3JhbF9ybmcyIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00g JzIwMTktMDEtMDEnIFRPICcyMDIwLTAxLTAxJyBTRVQgaWQxID0gJ1s3LDgpJywgaWQyID0gJ1s3 LDgpJyBXSEVSRSBpZDEgPSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9mazJfcm5n MnJuZyBXSEVSRSBpZCA9ICdbMTAwLDEwMSknIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKyAgICBp ZCAgICAgfCAgICAgICAgdmFsaWRfYXQgICAgICAgICB8IHBhcmVudF9pZDEgfCBwYXJlbnRfaWQy IAorLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0t LS0tLS0tLS0tCisgWzEwMCwxMDEpIHwgWzIwMTgtMDEtMDEsMjAxOS0wMS0wMSkgfCBbNiw3KSAg ICAgIHwgWzYsNykKKyBbMTAwLDEwMSkgfCBbMjAxOS0wMS0wMSwyMDIwLTAxLTAxKSB8IFstMSww KSAgICAgfCBbLTEsMCkKKyBbMTAwLDEwMSkgfCBbMjAyMC0wMS0wMSwyMDIxLTAxLTAxKSB8IFs2 LDcpICAgICAgfCBbNiw3KQorKDMgcm93cykKKworLS0gbm9uLUZQTyB1cGRhdGU6CitVUERBVEUg dGVtcG9yYWxfcm5nMiBTRVQgaWQxID0gJ1s3LDgpJywgaWQyID0gJ1s3LDgpJyBXSEVSRSBpZDEg PSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9mazJfcm5nMnJuZyBXSEVSRSBpZCA9 ICdbMTAwLDEwMSknIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKyAgICBpZCAgICAgfCAgICAgICAg dmFsaWRfYXQgICAgICAgICB8IHBhcmVudF9pZDEgfCBwYXJlbnRfaWQyIAorLS0tLS0tLS0tLS0r LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tCisgWzEw MCwxMDEpIHwgWzIwMTgtMDEtMDEsMjAxOS0wMS0wMSkgfCBbLTEsMCkgICAgIHwgWy0xLDApCisg WzEwMCwxMDEpIHwgWzIwMTktMDEtMDEsMjAyMC0wMS0wMSkgfCBbLTEsMCkgICAgIHwgWy0xLDAp CisgWzEwMCwxMDEpIHwgWzIwMjAtMDEtMDEsMjAyMS0wMS0wMSkgfCBbLTEsMCkgICAgIHwgWy0x LDApCisoMyByb3dzKQorCistLSBGSyBhY3Jvc3MgdHdvIHJlZmVyZW5jZWQgcm93czoKK0lOU0VS VCBJTlRPIHRlbXBvcmFsX3JuZzIgKGlkMSwgaWQyLCB2YWxpZF9hdCkgVkFMVUVTICgnWzgsOSkn LCAnWzgsOSknLCBkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMC0wMS0wMScpKTsKK0lOU0VS VCBJTlRPIHRlbXBvcmFsX3JuZzIgKGlkMSwgaWQyLCB2YWxpZF9hdCkgVkFMVUVTICgnWzgsOSkn LCAnWzgsOSknLCBkYXRlcmFuZ2UoJzIwMjAtMDEtMDEnLCAnMjAyMS0wMS0wMScpKTsKK0lOU0VS VCBJTlRPIHRlbXBvcmFsX2ZrMl9ybmcycm5nIChpZCwgdmFsaWRfYXQsIHBhcmVudF9pZDEsIHBh cmVudF9pZDIpIFZBTFVFUyAoJ1syMDAsMjAxKScsIGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcy MDIxLTAxLTAxJyksICdbOCw5KScsICdbOCw5KScpOworVVBEQVRFIHRlbXBvcmFsX3JuZzIgU0VU IGlkMSA9ICdbOSwxMCknLCBpZDIgPSAnWzksMTApJyBXSEVSRSBpZDEgPSAnWzgsOSknIEFORCB2 YWxpZF9hdCBAPiAnMjAxOS0wMS0wMSc6OmRhdGU7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2Zr Ml9ybmcycm5nIFdIRVJFIGlkID0gJ1syMDAsMjAxKScgT1JERVIgQlkgaWQsIHZhbGlkX2F0Owor ICAgIGlkICAgICB8ICAgICAgICB2YWxpZF9hdCAgICAgICAgIHwgcGFyZW50X2lkMSB8IHBhcmVu dF9pZDIgCistLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0t LSstLS0tLS0tLS0tLS0KKyBbMjAwLDIwMSkgfCBbMjAxOC0wMS0wMSwyMDIwLTAxLTAxKSB8IFst MSwwKSAgICAgfCBbLTEsMCkKKyBbMjAwLDIwMSkgfCBbMjAyMC0wMS0wMSwyMDIxLTAxLTAxKSB8 IFs4LDkpICAgICAgfCBbOCw5KQorKDIgcm93cykKKworLS0KKy0tIHRlc3QgRksgcmVmZXJlbmNl ZCBkZWxldGVzIFNFVCBERUZBVUxUICh0d28gc2NhbGFyIGNvbHMpCistLQorVFJVTkNBVEUgdGVt cG9yYWxfcm5nMiwgdGVtcG9yYWxfZmsyX3JuZzJybmc7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9y bmcyIChpZDEsIGlkMiwgdmFsaWRfYXQpIFZBTFVFUyAoJ1stMSwtMV0nLCAnWy0xLC0xXScsIGRh dGVyYW5nZShudWxsLCBudWxsKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ybmcyIChpZDEsIGlk MiwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s2LDcpJywgJ1s2LDcpJywgZGF0ZXJhbmdlKCcyMDE4LTAx LTAxJywgJzIwMjEtMDEtMDEnKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9mazJfcm5nMnJuZyAo aWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQxLCBwYXJlbnRfaWQyKSBWQUxVRVMgKCdbMTAwLDEwMSkn LCBkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpLCAnWzYsNyknLCAnWzYsNykn KTsKKy0tIGxlZnRvdmVycyBvbiBib3RoIHNpZGVzOgorREVMRVRFIEZST00gdGVtcG9yYWxfcm5n MiBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDE5LTAxLTAxJyBUTyAnMjAyMC0wMS0w MScgV0hFUkUgaWQxID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX3JuZzJy bmcgV0hFUkUgaWQgPSAnWzEwMCwxMDEpJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisgICAgaWQg ICAgIHwgICAgICAgIHZhbGlkX2F0ICAgICAgICAgfCBwYXJlbnRfaWQxIHwgcGFyZW50X2lkMiAK Ky0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0t LS0tLS0tLQorIFsxMDAsMTAxKSB8IFsyMDE4LTAxLTAxLDIwMTktMDEtMDEpIHwgWzYsNykgICAg ICB8IFs2LDcpCisgWzEwMCwxMDEpIHwgWzIwMTktMDEtMDEsMjAyMC0wMS0wMSkgfCBbLTEsMCkg ICAgIHwgWy0xLDApCisgWzEwMCwxMDEpIHwgWzIwMjAtMDEtMDEsMjAyMS0wMS0wMSkgfCBbNiw3 KSAgICAgIHwgWzYsNykKKygzIHJvd3MpCisKKy0tIG5vbi1GUE8gdXBkYXRlOgorREVMRVRFIEZS T00gdGVtcG9yYWxfcm5nMiBXSEVSRSBpZDEgPSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1w b3JhbF9mazJfcm5nMnJuZyBXSEVSRSBpZCA9ICdbMTAwLDEwMSknIE9SREVSIEJZIGlkLCB2YWxp ZF9hdDsKKyAgICBpZCAgICAgfCAgICAgICAgdmFsaWRfYXQgICAgICAgICB8IHBhcmVudF9pZDEg fCBwYXJlbnRfaWQyIAorLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0t LS0tLS0tLS0rLS0tLS0tLS0tLS0tCisgWzEwMCwxMDEpIHwgWzIwMTgtMDEtMDEsMjAxOS0wMS0w MSkgfCBbLTEsMCkgICAgIHwgWy0xLDApCisgWzEwMCwxMDEpIHwgWzIwMTktMDEtMDEsMjAyMC0w MS0wMSkgfCBbLTEsMCkgICAgIHwgWy0xLDApCisgWzEwMCwxMDEpIHwgWzIwMjAtMDEtMDEsMjAy MS0wMS0wMSkgfCBbLTEsMCkgICAgIHwgWy0xLDApCisoMyByb3dzKQorCistLSBGSyBhY3Jvc3Mg dHdvIHJlZmVyZW5jZWQgcm93czoKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3JuZzIgKGlkMSwgaWQy LCB2YWxpZF9hdCkgVkFMVUVTICgnWzgsOSknLCAnWzgsOSknLCBkYXRlcmFuZ2UoJzIwMTgtMDEt MDEnLCAnMjAyMC0wMS0wMScpKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3JuZzIgKGlkMSwgaWQy LCB2YWxpZF9hdCkgVkFMVUVTICgnWzgsOSknLCAnWzgsOSknLCBkYXRlcmFuZ2UoJzIwMjAtMDEt MDEnLCAnMjAyMS0wMS0wMScpKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrMl9ybmcycm5nIChp ZCwgdmFsaWRfYXQsIHBhcmVudF9pZDEsIHBhcmVudF9pZDIpIFZBTFVFUyAoJ1syMDAsMjAxKScs IGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJyksICdbOCw5KScsICdbOCw5KScp OworREVMRVRFIEZST00gdGVtcG9yYWxfcm5nMiBXSEVSRSBpZDEgPSAnWzgsOSknIEFORCB2YWxp ZF9hdCBAPiAnMjAxOS0wMS0wMSc6OmRhdGU7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9y bmcycm5nIFdIRVJFIGlkID0gJ1syMDAsMjAxKScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworICAg IGlkICAgICB8ICAgICAgICB2YWxpZF9hdCAgICAgICAgIHwgcGFyZW50X2lkMSB8IHBhcmVudF9p ZDIgCistLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSst LS0tLS0tLS0tLS0KKyBbMjAwLDIwMSkgfCBbMjAxOC0wMS0wMSwyMDIwLTAxLTAxKSB8IFstMSww KSAgICAgfCBbLTEsMCkKKyBbMjAwLDIwMSkgfCBbMjAyMC0wMS0wMSwyMDIxLTAxLTAxKSB8IFs4 LDkpICAgICAgfCBbOCw5KQorKDIgcm93cykKKworLS0KKy0tIHRlc3QgRksgcmVmZXJlbmNlZCBk ZWxldGVzIFNFVCBERUZBVUxUICh0d28gc2NhbGFyIGNvbHMsIFNFVCBERUZBVUxUIHN1YnNldCkK Ky0tCitUUlVOQ0FURSB0ZW1wb3JhbF9ybmcyLCB0ZW1wb3JhbF9mazJfcm5nMnJuZzsKK0lOU0VS VCBJTlRPIHRlbXBvcmFsX3JuZzIgKGlkMSwgaWQyLCB2YWxpZF9hdCkgVkFMVUVTICgnWy0xLC0x XScsICdbNiw3KScsIGRhdGVyYW5nZShudWxsLCBudWxsKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3Jh bF9ybmcyIChpZDEsIGlkMiwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s2LDcpJywgJ1s2LDcpJywgZGF0 ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3Jh bF9mazJfcm5nMnJuZyAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQxLCBwYXJlbnRfaWQyKSBWQUxV RVMgKCdbMTAwLDEwMSknLCBkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpLCAn WzYsNyknLCAnWzYsNyknKTsKKy0tIGZhaWxzIGJlY2F1c2UgeW91IGNhbid0IHNldCB0aGUgUEVS SU9EIGNvbHVtbjoKK0FMVEVSIFRBQkxFIHRlbXBvcmFsX2ZrMl9ybmcycm5nCisgIEFMVEVSIENP TFVNTiBwYXJlbnRfaWQxIFNFVCBERUZBVUxUICdbLTEsLTFdJywKKyAgRFJPUCBDT05TVFJBSU5U IHRlbXBvcmFsX2ZrMl9ybmcycm5nX2ZrLAorICBBREQgQ09OU1RSQUlOVCB0ZW1wb3JhbF9mazJf cm5nMnJuZ19maworICAgIEZPUkVJR04gS0VZIChwYXJlbnRfaWQxLCBwYXJlbnRfaWQyLCBQRVJJ T0QgdmFsaWRfYXQpCisgICAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9ybmcyCisgICAgT04gREVMRVRF IFNFVCBERUZBVUxUICh2YWxpZF9hdCkgT04gVVBEQVRFIFNFVCBERUZBVUxUOworRVJST1I6ICBj b2x1bW4gInZhbGlkX2F0IiByZWZlcmVuY2VkIGluIE9OIERFTEVURSBTRVQgYWN0aW9uIGNhbm5v dCBiZSBQRVJJT0QKKy0tIG9rOgorQUxURVIgVEFCTEUgdGVtcG9yYWxfZmsyX3JuZzJybmcKKyAg QUxURVIgQ09MVU1OIHBhcmVudF9pZDEgU0VUIERFRkFVTFQgJ1stMSwtMV0nLAorICBEUk9QIENP TlNUUkFJTlQgdGVtcG9yYWxfZmsyX3JuZzJybmdfZmssCisgIEFERCBDT05TVFJBSU5UIHRlbXBv cmFsX2ZrMl9ybmcycm5nX2ZrCisgICAgRk9SRUlHTiBLRVkgKHBhcmVudF9pZDEsIHBhcmVudF9p ZDIsIFBFUklPRCB2YWxpZF9hdCkKKyAgICBSRUZFUkVOQ0VTIHRlbXBvcmFsX3JuZzIKKyAgICBP TiBERUxFVEUgU0VUIERFRkFVTFQgKHBhcmVudF9pZDEpIE9OIFVQREFURSBTRVQgREVGQVVMVDsK Ky0tIGxlZnRvdmVycyBvbiBib3RoIHNpZGVzOgorREVMRVRFIEZST00gdGVtcG9yYWxfcm5nMiBG T1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDE5LTAxLTAxJyBUTyAnMjAyMC0wMS0wMScg V0hFUkUgaWQxID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX3JuZzJybmcg V0hFUkUgaWQgPSAnWzEwMCwxMDEpJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisgICAgaWQgICAg IHwgICAgICAgIHZhbGlkX2F0ICAgICAgICAgfCBwYXJlbnRfaWQxIHwgcGFyZW50X2lkMiAKKy0t LS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0t LS0tLQorIFsxMDAsMTAxKSB8IFsyMDE4LTAxLTAxLDIwMTktMDEtMDEpIHwgWzYsNykgICAgICB8 IFs2LDcpCisgWzEwMCwxMDEpIHwgWzIwMTktMDEtMDEsMjAyMC0wMS0wMSkgfCBbLTEsMCkgICAg IHwgWzYsNykKKyBbMTAwLDEwMSkgfCBbMjAyMC0wMS0wMSwyMDIxLTAxLTAxKSB8IFs2LDcpICAg ICAgfCBbNiw3KQorKDMgcm93cykKKworLS0gbm9uLUZQTyB1cGRhdGU6CitERUxFVEUgRlJPTSB0 ZW1wb3JhbF9ybmcyIFdIRVJFIGlkMSA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFs X2ZrMl9ybmcycm5nIFdIRVJFIGlkID0gJ1sxMDAsMTAxKScgT1JERVIgQlkgaWQsIHZhbGlkX2F0 OworICAgIGlkICAgICB8ICAgICAgICB2YWxpZF9hdCAgICAgICAgIHwgcGFyZW50X2lkMSB8IHBh cmVudF9pZDIgCistLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0t LS0tLSstLS0tLS0tLS0tLS0KKyBbMTAwLDEwMSkgfCBbMjAxOC0wMS0wMSwyMDE5LTAxLTAxKSB8 IFstMSwwKSAgICAgfCBbNiw3KQorIFsxMDAsMTAxKSB8IFsyMDE5LTAxLTAxLDIwMjAtMDEtMDEp IHwgWy0xLDApICAgICB8IFs2LDcpCisgWzEwMCwxMDEpIHwgWzIwMjAtMDEtMDEsMjAyMS0wMS0w MSkgfCBbLTEsMCkgICAgIHwgWzYsNykKKygzIHJvd3MpCisKKy0tIEZLIGFjcm9zcyB0d28gcmVm ZXJlbmNlZCByb3dzOgorSU5TRVJUIElOVE8gdGVtcG9yYWxfcm5nMiAoaWQxLCBpZDIsIHZhbGlk X2F0KSBWQUxVRVMgKCdbOCw5KScsICdbOCw5KScsIGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcy MDIwLTAxLTAxJykpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcm5nMiAoaWQxLCBpZDIsIHZhbGlk X2F0KSBWQUxVRVMgKCdbOCw5KScsICdbOCw5KScsIGRhdGVyYW5nZSgnMjAyMC0wMS0wMScsICcy MDIxLTAxLTAxJykpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcm5nMiAoaWQxLCBpZDIsIHZhbGlk X2F0KSBWQUxVRVMgKCdbLTEsLTFdJywgJ1s4LDkpJywgZGF0ZXJhbmdlKG51bGwsIG51bGwpKTsK K0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrMl9ybmcycm5nIChpZCwgdmFsaWRfYXQsIHBhcmVudF9p ZDEsIHBhcmVudF9pZDIpIFZBTFVFUyAoJ1syMDAsMjAxKScsIGRhdGVyYW5nZSgnMjAxOC0wMS0w MScsICcyMDIxLTAxLTAxJyksICdbOCw5KScsICdbOCw5KScpOworREVMRVRFIEZST00gdGVtcG9y YWxfcm5nMiBXSEVSRSBpZDEgPSAnWzgsOSknIEFORCB2YWxpZF9hdCBAPiAnMjAxOS0wMS0wMSc6 OmRhdGU7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9ybmcycm5nIFdIRVJFIGlkID0gJ1sy MDAsMjAxKScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworICAgIGlkICAgICB8ICAgICAgICB2YWxp ZF9hdCAgICAgICAgIHwgcGFyZW50X2lkMSB8IHBhcmVudF9pZDIgCistLS0tLS0tLS0tLSstLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0KKyBbMjAwLDIw MSkgfCBbMjAxOC0wMS0wMSwyMDIwLTAxLTAxKSB8IFstMSwwKSAgICAgfCBbOCw5KQorIFsyMDAs MjAxKSB8IFsyMDIwLTAxLTAxLDIwMjEtMDEtMDEpIHwgWzgsOSkgICAgICB8IFs4LDkpCisoMiBy b3dzKQorCiAtLQogLS0gdGVzdCBGT1JFSUdOIEtFWSwgbXVsdGlyYW5nZSByZWZlcmVuY2VzIG11 bHRpcmFuZ2UKIC0tCkBAIC0yNDEzLDYgKzI5OTQsNjI2IEBAIERFVEFJTDogIEtleSAoaWQsIHZh bGlkX2F0KT0oWzUsNiksIHtbMjAxOC0wMS0wMSwyMDE4LTAxLTAyKSxbMjAxOC0wMS0wMywyMDE4 LTAyCiBERUxFVEUgRlJPTSB0ZW1wb3JhbF9ma19tbHRybmcybWx0cm5nIFdIRVJFIGlkID0gJ1sz LDQpJzsKIERFTEVURSBGUk9NIHRlbXBvcmFsX21sdHJuZyBXSEVSRSBpZCA9ICdbNSw2KScgQU5E IHZhbGlkX2F0ID0gZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMTgt MDItMDEnKSk7CiAtLQorLS0KKy0tIG1sdHJuZzJtbHRybmcgdGVzdCBPTiBVUERBVEUvREVMRVRF IG9wdGlvbnMKKy0tCistLSBUT0M6CistLSByZWZlcmVuY2VkIHVwZGF0ZXMgQ0FTQ0FERQorLS0g cmVmZXJlbmNlZCBkZWxldGVzIENBU0NBREUKKy0tIHJlZmVyZW5jZWQgdXBkYXRlcyBTRVQgTlVM TAorLS0gcmVmZXJlbmNlZCBkZWxldGVzIFNFVCBOVUxMCistLSByZWZlcmVuY2VkIHVwZGF0ZXMg U0VUIERFRkFVTFQKKy0tIHJlZmVyZW5jZWQgZGVsZXRlcyBTRVQgREVGQVVMVAorLS0gcmVmZXJl bmNlZCB1cGRhdGVzIENBU0NBREUgKHR3byBzY2FsYXIgY29scykKKy0tIHJlZmVyZW5jZWQgZGVs ZXRlcyBDQVNDQURFICh0d28gc2NhbGFyIGNvbHMpCistLSByZWZlcmVuY2VkIHVwZGF0ZXMgU0VU IE5VTEwgKHR3byBzY2FsYXIgY29scykKKy0tIHJlZmVyZW5jZWQgZGVsZXRlcyBTRVQgTlVMTCAo dHdvIHNjYWxhciBjb2xzKQorLS0gcmVmZXJlbmNlZCBkZWxldGVzIFNFVCBOVUxMICh0d28gc2Nh bGFyIGNvbHMsIFNFVCBOVUxMIHN1YnNldCkKKy0tIHJlZmVyZW5jZWQgdXBkYXRlcyBTRVQgREVG QVVMVCAodHdvIHNjYWxhciBjb2xzKQorLS0gcmVmZXJlbmNlZCBkZWxldGVzIFNFVCBERUZBVUxU ICh0d28gc2NhbGFyIGNvbHMpCistLSByZWZlcmVuY2VkIGRlbGV0ZXMgU0VUIERFRkFVTFQgKHR3 byBzY2FsYXIgY29scywgU0VUIERFRkFVTFQgc3Vic2V0KQorLS0KKy0tIHRlc3QgRksgcmVmZXJl bmNlZCB1cGRhdGVzIENBU0NBREUKKy0tCitUUlVOQ0FURSB0ZW1wb3JhbF9tbHRybmcsIHRlbXBv cmFsX2ZrX21sdHJuZzJtbHRybmc7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9tbHRybmcgKGlkLCB2 YWxpZF9hdCkgVkFMVUVTICgnWzYsNyknLCBkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIwMTgt MDEtMDEnLCAnMjAyMS0wMS0wMScpKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ma19tbHRybmcy bWx0cm5nIChpZCwgdmFsaWRfYXQsIHBhcmVudF9pZCkgVkFMVUVTICgnWzEwMCwxMDEpJywgZGF0 ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSksICdbNiw3 KScpOworQUxURVIgVEFCTEUgdGVtcG9yYWxfZmtfbWx0cm5nMm1sdHJuZworICBEUk9QIENPTlNU UkFJTlQgdGVtcG9yYWxfZmtfbWx0cm5nMm1sdHJuZ19maywKKyAgQUREIENPTlNUUkFJTlQgdGVt cG9yYWxfZmtfbWx0cm5nMm1sdHJuZ19maworICAgIEZPUkVJR04gS0VZIChwYXJlbnRfaWQsIFBF UklPRCB2YWxpZF9hdCkKKyAgICBSRUZFUkVOQ0VTIHRlbXBvcmFsX21sdHJuZworICAgIE9OIERF TEVURSBDQVNDQURFIE9OIFVQREFURSBDQVNDQURFOworLS0gbGVmdG92ZXJzIG9uIGJvdGggc2lk ZXM6CitVUERBVEUgdGVtcG9yYWxfbWx0cm5nIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IChkYXRl bXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIwMTktMDEtMDEnLCAnMjAyMC0wMS0wMScpKSkgU0VUIGlk ID0gJ1s3LDgpJyBXSEVSRSBpZCA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2Zr X21sdHJuZzJtbHRybmcgV0hFUkUgaWQgPSAnWzEwMCwxMDEpJyBPUkRFUiBCWSBpZCwgdmFsaWRf YXQ7CisgICAgaWQgICAgIHwgICAgICAgICAgICAgICAgICAgICB2YWxpZF9hdCAgICAgICAgICAg ICAgICAgICAgICB8IHBhcmVudF9pZCAKKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLQorIFsxMDAsMTAxKSB8 IHtbMjAxOC0wMS0wMSwyMDE5LTAxLTAxKSxbMjAyMC0wMS0wMSwyMDIxLTAxLTAxKX0gfCBbNiw3 KQorIFsxMDAsMTAxKSB8IHtbMjAxOS0wMS0wMSwyMDIwLTAxLTAxKX0gICAgICAgICAgICAgICAg ICAgICAgICAgfCBbNyw4KQorKDIgcm93cykKKworLS0gbm9uLUZQTyB1cGRhdGU6CitVUERBVEUg dGVtcG9yYWxfbWx0cm5nIFNFVCBpZCA9ICdbNyw4KScgV0hFUkUgaWQgPSAnWzYsNyknOworU0VM RUNUICogRlJPTSB0ZW1wb3JhbF9ma19tbHRybmcybWx0cm5nIFdIRVJFIGlkID0gJ1sxMDAsMTAx KScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworICAgIGlkICAgICB8ICAgICAgICAgICAgICAgICAg ICAgdmFsaWRfYXQgICAgICAgICAgICAgICAgICAgICAgfCBwYXJlbnRfaWQgCistLS0tLS0tLS0t LSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0t LS0tLS0tLS0KKyBbMTAwLDEwMSkgfCB7WzIwMTgtMDEtMDEsMjAxOS0wMS0wMSksWzIwMjAtMDEt MDEsMjAyMS0wMS0wMSl9IHwgWzcsOCkKKyBbMTAwLDEwMSkgfCB7WzIwMTktMDEtMDEsMjAyMC0w MS0wMSl9ICAgICAgICAgICAgICAgICAgICAgICAgIHwgWzcsOCkKKygyIHJvd3MpCisKKy0tIEZL IGFjcm9zcyB0d28gcmVmZXJlbmNlZCByb3dzOgorSU5TRVJUIElOVE8gdGVtcG9yYWxfbWx0cm5n IChpZCwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s4LDkpJywgZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdl KCcyMDE4LTAxLTAxJywgJzIwMjAtMDEtMDEnKSkpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfbWx0 cm5nIChpZCwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s4LDkpJywgZGF0ZW11bHRpcmFuZ2UoZGF0ZXJh bmdlKCcyMDIwLTAxLTAxJywgJzIwMjEtMDEtMDEnKSkpOworSU5TRVJUIElOVE8gdGVtcG9yYWxf ZmtfbWx0cm5nMm1sdHJuZyAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQpIFZBTFVFUyAoJ1syMDAs MjAxKScsIGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAx JykpLCAnWzgsOSknKTsKK1VQREFURSB0ZW1wb3JhbF9tbHRybmcgU0VUIGlkID0gJ1s5LDEwKScg V0hFUkUgaWQgPSAnWzgsOSknIEFORCB2YWxpZF9hdCBAPiAnMjAxOS0wMS0wMSc6OmRhdGU7CitT RUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrX21sdHJuZzJtbHRybmcgV0hFUkUgaWQgPSAnWzIwMCwy MDEpJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisgICAgaWQgICAgIHwgICAgICAgICB2YWxpZF9h dCAgICAgICAgICB8IHBhcmVudF9pZCAKKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLSstLS0tLS0tLS0tLQorIFsyMDAsMjAxKSB8IHtbMjAxOC0wMS0wMSwyMDIwLTAxLTAx KX0gfCBbOSwxMCkKKyBbMjAwLDIwMSkgfCB7WzIwMjAtMDEtMDEsMjAyMS0wMS0wMSl9IHwgWzgs OSkKKygyIHJvd3MpCisKKy0tCistLSB0ZXN0IEZLIHJlZmVyZW5jZWQgZGVsZXRlcyBDQVNDQURF CistLQorVFJVTkNBVEUgdGVtcG9yYWxfbWx0cm5nLCB0ZW1wb3JhbF9ma19tbHRybmcybWx0cm5n OworSU5TRVJUIElOVE8gdGVtcG9yYWxfbWx0cm5nIChpZCwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s2 LDcpJywgZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEn KSkpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmtfbWx0cm5nMm1sdHJuZyAoaWQsIHZhbGlkX2F0 LCBwYXJlbnRfaWQpIFZBTFVFUyAoJ1sxMDAsMTAxKScsIGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5n ZSgnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJykpLCAnWzYsNyknKTsKKy0tIGxlZnRvdmVycyBv biBib3RoIHNpZGVzOgorREVMRVRFIEZST00gdGVtcG9yYWxfbWx0cm5nIEZPUiBQT1JUSU9OIE9G IHZhbGlkX2F0IChkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIwMTktMDEtMDEnLCAnMjAyMC0w MS0wMScpKSkgV0hFUkUgaWQgPSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9ma19t bHRybmcybWx0cm5nIFdIRVJFIGlkID0gJ1sxMDAsMTAxKScgT1JERVIgQlkgaWQsIHZhbGlkX2F0 OworICAgIGlkICAgICB8ICAgICAgICAgICAgICAgICAgICAgdmFsaWRfYXQgICAgICAgICAgICAg ICAgICAgICAgfCBwYXJlbnRfaWQgCistLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0KKyBbMTAwLDEwMSkgfCB7 WzIwMTgtMDEtMDEsMjAxOS0wMS0wMSksWzIwMjAtMDEtMDEsMjAyMS0wMS0wMSl9IHwgWzYsNykK KygxIHJvdykKKworLS0gbm9uLUZQTyBkZWxldGU6CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9tbHRy bmcgV0hFUkUgaWQgPSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9ma19tbHRybmcy bWx0cm5nIFdIRVJFIGlkID0gJ1sxMDAsMTAxKScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworIGlk IHwgdmFsaWRfYXQgfCBwYXJlbnRfaWQgCistLS0tKy0tLS0tLS0tLS0rLS0tLS0tLS0tLS0KKygw IHJvd3MpCisKKy0tIEZLIGFjcm9zcyB0d28gcmVmZXJlbmNlZCByb3dzOgorSU5TRVJUIElOVE8g dGVtcG9yYWxfbWx0cm5nIChpZCwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s4LDkpJywgZGF0ZW11bHRp cmFuZ2UoZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjAtMDEtMDEnKSkpOworSU5TRVJUIElO VE8gdGVtcG9yYWxfbWx0cm5nIChpZCwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s4LDkpJywgZGF0ZW11 bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDIwLTAxLTAxJywgJzIwMjEtMDEtMDEnKSkpOworSU5TRVJU IElOVE8gdGVtcG9yYWxfZmtfbWx0cm5nMm1sdHJuZyAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQp IFZBTFVFUyAoJ1syMDAsMjAxKScsIGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAxOC0wMS0w MScsICcyMDIxLTAxLTAxJykpLCAnWzgsOSknKTsKK0RFTEVURSBGUk9NIHRlbXBvcmFsX21sdHJu ZyBXSEVSRSBpZCA9ICdbOCw5KScgQU5EIHZhbGlkX2F0IEA+ICcyMDE5LTAxLTAxJzo6ZGF0ZTsK K1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmtfbWx0cm5nMm1sdHJuZyBXSEVSRSBpZCA9ICdbMjAw LDIwMSknIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKyAgICBpZCAgICAgfCAgICAgICAgIHZhbGlk X2F0ICAgICAgICAgIHwgcGFyZW50X2lkIAorLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tKy0tLS0tLS0tLS0tCisgWzIwMCwyMDEpIHwge1syMDIwLTAxLTAxLDIwMjEtMDEt MDEpfSB8IFs4LDkpCisoMSByb3cpCisKKy0tCistLSB0ZXN0IEZLIHJlZmVyZW5jZWQgdXBkYXRl cyBTRVQgTlVMTAorLS0KK1RSVU5DQVRFIHRlbXBvcmFsX21sdHJuZywgdGVtcG9yYWxfZmtfbWx0 cm5nMm1sdHJuZzsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX21sdHJuZyAoaWQsIHZhbGlkX2F0KSBW QUxVRVMgKCdbNiw3KScsIGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcy MDIxLTAxLTAxJykpKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrX21sdHJuZzJtbHRybmcgKGlk LCB2YWxpZF9hdCwgcGFyZW50X2lkKSBWQUxVRVMgKCdbMTAwLDEwMSknLCBkYXRlbXVsdGlyYW5n ZShkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpKSwgJ1s2LDcpJyk7CitBTFRF UiBUQUJMRSB0ZW1wb3JhbF9ma19tbHRybmcybWx0cm5nCisgIERST1AgQ09OU1RSQUlOVCB0ZW1w b3JhbF9ma19tbHRybmcybWx0cm5nX2ZrLAorICBBREQgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19t bHRybmcybWx0cm5nX2ZrCisgICAgRk9SRUlHTiBLRVkgKHBhcmVudF9pZCwgUEVSSU9EIHZhbGlk X2F0KQorICAgIFJFRkVSRU5DRVMgdGVtcG9yYWxfbWx0cm5nCisgICAgT04gREVMRVRFIFNFVCBO VUxMIE9OIFVQREFURSBTRVQgTlVMTDsKKy0tIGxlZnRvdmVycyBvbiBib3RoIHNpZGVzOgorVVBE QVRFIHRlbXBvcmFsX21sdHJuZyBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCAoZGF0ZW11bHRpcmFu Z2UoZGF0ZXJhbmdlKCcyMDE5LTAxLTAxJywgJzIwMjAtMDEtMDEnKSkpIFNFVCBpZCA9ICdbNyw4 KScgV0hFUkUgaWQgPSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9ma19tbHRybmcy bWx0cm5nIFdIRVJFIGlkID0gJ1sxMDAsMTAxKScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworICAg IGlkICAgICB8ICAgICAgICAgICAgICAgICAgICAgdmFsaWRfYXQgICAgICAgICAgICAgICAgICAg ICAgfCBwYXJlbnRfaWQgCistLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0KKyBbMTAwLDEwMSkgfCB7WzIwMTgt MDEtMDEsMjAxOS0wMS0wMSksWzIwMjAtMDEtMDEsMjAyMS0wMS0wMSl9IHwgWzYsNykKKyBbMTAw LDEwMSkgfCB7WzIwMTktMDEtMDEsMjAyMC0wMS0wMSl9ICAgICAgICAgICAgICAgICAgICAgICAg IHwgCisoMiByb3dzKQorCistLSBub24tRlBPIHVwZGF0ZToKK1VQREFURSB0ZW1wb3JhbF9tbHRy bmcgU0VUIGlkID0gJ1s3LDgpJyBXSEVSRSBpZCA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRl bXBvcmFsX2ZrX21sdHJuZzJtbHRybmcgV0hFUkUgaWQgPSAnWzEwMCwxMDEpJyBPUkRFUiBCWSBp ZCwgdmFsaWRfYXQ7CisgICAgaWQgICAgIHwgICAgICAgICAgICAgICAgICAgICB2YWxpZF9hdCAg ICAgICAgICAgICAgICAgICAgICB8IHBhcmVudF9pZCAKKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLQorIFsx MDAsMTAxKSB8IHtbMjAxOC0wMS0wMSwyMDE5LTAxLTAxKSxbMjAyMC0wMS0wMSwyMDIxLTAxLTAx KX0gfCAKKyBbMTAwLDEwMSkgfCB7WzIwMTktMDEtMDEsMjAyMC0wMS0wMSl9ICAgICAgICAgICAg ICAgICAgICAgICAgIHwgCisoMiByb3dzKQorCistLSBGSyBhY3Jvc3MgdHdvIHJlZmVyZW5jZWQg cm93czoKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX21sdHJuZyAoaWQsIHZhbGlkX2F0KSBWQUxVRVMg KCdbOCw5KScsIGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIwLTAx LTAxJykpKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX21sdHJuZyAoaWQsIHZhbGlkX2F0KSBWQUxV RVMgKCdbOCw5KScsIGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAyMC0wMS0wMScsICcyMDIx LTAxLTAxJykpKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrX21sdHJuZzJtbHRybmcgKGlkLCB2 YWxpZF9hdCwgcGFyZW50X2lkKSBWQUxVRVMgKCdbMjAwLDIwMSknLCBkYXRlbXVsdGlyYW5nZShk YXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpKSwgJ1s4LDkpJyk7CitVUERBVEUg dGVtcG9yYWxfbWx0cm5nIFNFVCBpZCA9ICdbOSwxMCknIFdIRVJFIGlkID0gJ1s4LDkpJyBBTkQg dmFsaWRfYXQgQD4gJzIwMTktMDEtMDEnOjpkYXRlOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9m a19tbHRybmcybWx0cm5nIFdIRVJFIGlkID0gJ1syMDAsMjAxKScgT1JERVIgQlkgaWQsIHZhbGlk X2F0OworICAgIGlkICAgICB8ICAgICAgICAgdmFsaWRfYXQgICAgICAgICAgfCBwYXJlbnRfaWQg CistLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0KKyBb MjAwLDIwMSkgfCB7WzIwMTgtMDEtMDEsMjAyMC0wMS0wMSl9IHwgCisgWzIwMCwyMDEpIHwge1sy MDIwLTAxLTAxLDIwMjEtMDEtMDEpfSB8IFs4LDkpCisoMiByb3dzKQorCistLQorLS0gdGVzdCBG SyByZWZlcmVuY2VkIGRlbGV0ZXMgU0VUIE5VTEwKKy0tCitUUlVOQ0FURSB0ZW1wb3JhbF9tbHRy bmcsIHRlbXBvcmFsX2ZrX21sdHJuZzJtbHRybmc7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9tbHRy bmcgKGlkLCB2YWxpZF9hdCkgVkFMVUVTICgnWzYsNyknLCBkYXRlbXVsdGlyYW5nZShkYXRlcmFu Z2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9m a19tbHRybmcybWx0cm5nIChpZCwgdmFsaWRfYXQsIHBhcmVudF9pZCkgVkFMVUVTICgnWzEwMCwx MDEpJywgZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEn KSksICdbNiw3KScpOworLS0gbGVmdG92ZXJzIG9uIGJvdGggc2lkZXM6CitERUxFVEUgRlJPTSB0 ZW1wb3JhbF9tbHRybmcgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgKGRhdGVtdWx0aXJhbmdlKGRh dGVyYW5nZSgnMjAxOS0wMS0wMScsICcyMDIwLTAxLTAxJykpKSBXSEVSRSBpZCA9ICdbNiw3KSc7 CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrX21sdHJuZzJtbHRybmcgV0hFUkUgaWQgPSAnWzEw MCwxMDEpJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisgICAgaWQgICAgIHwgICAgICAgICAgICAg ICAgICAgICB2YWxpZF9hdCAgICAgICAgICAgICAgICAgICAgICB8IHBhcmVudF9pZCAKKy0tLS0t LS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LSstLS0tLS0tLS0tLQorIFsxMDAsMTAxKSB8IHtbMjAxOC0wMS0wMSwyMDE5LTAxLTAxKSxbMjAy MC0wMS0wMSwyMDIxLTAxLTAxKX0gfCBbNiw3KQorIFsxMDAsMTAxKSB8IHtbMjAxOS0wMS0wMSwy MDIwLTAxLTAxKX0gICAgICAgICAgICAgICAgICAgICAgICAgfCAKKygyIHJvd3MpCisKKy0tIG5v bi1GUE8gZGVsZXRlOgorREVMRVRFIEZST00gdGVtcG9yYWxfbWx0cm5nIFdIRVJFIGlkID0gJ1s2 LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmtfbWx0cm5nMm1sdHJuZyBXSEVSRSBpZCA9 ICdbMTAwLDEwMSknIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKyAgICBpZCAgICAgfCAgICAgICAg ICAgICAgICAgICAgIHZhbGlkX2F0ICAgICAgICAgICAgICAgICAgICAgIHwgcGFyZW50X2lkIAor LS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tKy0tLS0tLS0tLS0tCisgWzEwMCwxMDEpIHwge1syMDE4LTAxLTAxLDIwMTktMDEtMDEp LFsyMDIwLTAxLTAxLDIwMjEtMDEtMDEpfSB8IAorIFsxMDAsMTAxKSB8IHtbMjAxOS0wMS0wMSwy MDIwLTAxLTAxKX0gICAgICAgICAgICAgICAgICAgICAgICAgfCAKKygyIHJvd3MpCisKKy0tIEZL IGFjcm9zcyB0d28gcmVmZXJlbmNlZCByb3dzOgorSU5TRVJUIElOVE8gdGVtcG9yYWxfbWx0cm5n IChpZCwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s4LDkpJywgZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdl KCcyMDE4LTAxLTAxJywgJzIwMjAtMDEtMDEnKSkpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfbWx0 cm5nIChpZCwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s4LDkpJywgZGF0ZW11bHRpcmFuZ2UoZGF0ZXJh bmdlKCcyMDIwLTAxLTAxJywgJzIwMjEtMDEtMDEnKSkpOworSU5TRVJUIElOVE8gdGVtcG9yYWxf ZmtfbWx0cm5nMm1sdHJuZyAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQpIFZBTFVFUyAoJ1syMDAs MjAxKScsIGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAx JykpLCAnWzgsOSknKTsKK0RFTEVURSBGUk9NIHRlbXBvcmFsX21sdHJuZyBXSEVSRSBpZCA9ICdb OCw5KScgQU5EIHZhbGlkX2F0IEA+ICcyMDE5LTAxLTAxJzo6ZGF0ZTsKK1NFTEVDVCAqIEZST00g dGVtcG9yYWxfZmtfbWx0cm5nMm1sdHJuZyBXSEVSRSBpZCA9ICdbMjAwLDIwMSknIE9SREVSIEJZ IGlkLCB2YWxpZF9hdDsKKyAgICBpZCAgICAgfCAgICAgICAgIHZhbGlkX2F0ICAgICAgICAgIHwg cGFyZW50X2lkIAorLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0t LS0tLS0tCisgWzIwMCwyMDEpIHwge1syMDE4LTAxLTAxLDIwMjAtMDEtMDEpfSB8IAorIFsyMDAs MjAxKSB8IHtbMjAyMC0wMS0wMSwyMDIxLTAxLTAxKX0gfCBbOCw5KQorKDIgcm93cykKKworLS0K Ky0tIHRlc3QgRksgcmVmZXJlbmNlZCB1cGRhdGVzIFNFVCBERUZBVUxUCistLQorVFJVTkNBVEUg dGVtcG9yYWxfbWx0cm5nLCB0ZW1wb3JhbF9ma19tbHRybmcybWx0cm5nOworSU5TRVJUIElOVE8g dGVtcG9yYWxfbWx0cm5nIChpZCwgdmFsaWRfYXQpIFZBTFVFUyAoJ1stMSwtMV0nLCBkYXRlbXVs dGlyYW5nZShkYXRlcmFuZ2UobnVsbCwgbnVsbCkpKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX21s dHJuZyAoaWQsIHZhbGlkX2F0KSBWQUxVRVMgKCdbNiw3KScsIGRhdGVtdWx0aXJhbmdlKGRhdGVy YW5nZSgnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJykpKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFs X2ZrX21sdHJuZzJtbHRybmcgKGlkLCB2YWxpZF9hdCwgcGFyZW50X2lkKSBWQUxVRVMgKCdbMTAw LDEwMSknLCBkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0w MScpKSwgJ1s2LDcpJyk7CitBTFRFUiBUQUJMRSB0ZW1wb3JhbF9ma19tbHRybmcybWx0cm5nCisg IEFMVEVSIENPTFVNTiBwYXJlbnRfaWQgU0VUIERFRkFVTFQgJ1stMSwtMV0nLAorICBEUk9QIENP TlNUUkFJTlQgdGVtcG9yYWxfZmtfbWx0cm5nMm1sdHJuZ19maywKKyAgQUREIENPTlNUUkFJTlQg dGVtcG9yYWxfZmtfbWx0cm5nMm1sdHJuZ19maworICAgIEZPUkVJR04gS0VZIChwYXJlbnRfaWQs IFBFUklPRCB2YWxpZF9hdCkKKyAgICBSRUZFUkVOQ0VTIHRlbXBvcmFsX21sdHJuZworICAgIE9O IERFTEVURSBTRVQgREVGQVVMVCBPTiBVUERBVEUgU0VUIERFRkFVTFQ7CistLSBsZWZ0b3ZlcnMg b24gYm90aCBzaWRlczoKK1VQREFURSB0ZW1wb3JhbF9tbHRybmcgRk9SIFBPUlRJT04gT0YgdmFs aWRfYXQgKGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAxOS0wMS0wMScsICcyMDIwLTAxLTAx JykpKSBTRVQgaWQgPSAnWzcsOCknIFdIRVJFIGlkID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00g dGVtcG9yYWxfZmtfbWx0cm5nMm1sdHJuZyBXSEVSRSBpZCA9ICdbMTAwLDEwMSknIE9SREVSIEJZ IGlkLCB2YWxpZF9hdDsKKyAgICBpZCAgICAgfCAgICAgICAgICAgICAgICAgICAgIHZhbGlkX2F0 ICAgICAgICAgICAgICAgICAgICAgIHwgcGFyZW50X2lkIAorLS0tLS0tLS0tLS0rLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tCisg WzEwMCwxMDEpIHwge1syMDE4LTAxLTAxLDIwMTktMDEtMDEpLFsyMDIwLTAxLTAxLDIwMjEtMDEt MDEpfSB8IFs2LDcpCisgWzEwMCwxMDEpIHwge1syMDE5LTAxLTAxLDIwMjAtMDEtMDEpfSAgICAg ICAgICAgICAgICAgICAgICAgICB8IFstMSwwKQorKDIgcm93cykKKworLS0gbm9uLUZQTyB1cGRh dGU6CitVUERBVEUgdGVtcG9yYWxfbWx0cm5nIFNFVCBpZCA9ICdbNyw4KScgV0hFUkUgaWQgPSAn WzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9ma19tbHRybmcybWx0cm5nIFdIRVJFIGlk ID0gJ1sxMDAsMTAxKScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworICAgIGlkICAgICB8ICAgICAg ICAgICAgICAgICAgICAgdmFsaWRfYXQgICAgICAgICAgICAgICAgICAgICAgfCBwYXJlbnRfaWQg CistLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0rLS0tLS0tLS0tLS0KKyBbMTAwLDEwMSkgfCB7WzIwMTgtMDEtMDEsMjAxOS0wMS0w MSksWzIwMjAtMDEtMDEsMjAyMS0wMS0wMSl9IHwgWy0xLDApCisgWzEwMCwxMDEpIHwge1syMDE5 LTAxLTAxLDIwMjAtMDEtMDEpfSAgICAgICAgICAgICAgICAgICAgICAgICB8IFstMSwwKQorKDIg cm93cykKKworLS0gRksgYWNyb3NzIHR3byByZWZlcmVuY2VkIHJvd3M6CitJTlNFUlQgSU5UTyB0 ZW1wb3JhbF9tbHRybmcgKGlkLCB2YWxpZF9hdCkgVkFMVUVTICgnWzgsOSknLCBkYXRlbXVsdGly YW5nZShkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMC0wMS0wMScpKSk7CitJTlNFUlQgSU5U TyB0ZW1wb3JhbF9tbHRybmcgKGlkLCB2YWxpZF9hdCkgVkFMVUVTICgnWzgsOSknLCBkYXRlbXVs dGlyYW5nZShkYXRlcmFuZ2UoJzIwMjAtMDEtMDEnLCAnMjAyMS0wMS0wMScpKSk7CitJTlNFUlQg SU5UTyB0ZW1wb3JhbF9ma19tbHRybmcybWx0cm5nIChpZCwgdmFsaWRfYXQsIHBhcmVudF9pZCkg VkFMVUVTICgnWzIwMCwyMDEpJywgZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDE4LTAxLTAx JywgJzIwMjEtMDEtMDEnKSksICdbOCw5KScpOworVVBEQVRFIHRlbXBvcmFsX21sdHJuZyBTRVQg aWQgPSAnWzksMTApJyBXSEVSRSBpZCA9ICdbOCw5KScgQU5EIHZhbGlkX2F0IEA+ICcyMDE5LTAx LTAxJzo6ZGF0ZTsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmtfbWx0cm5nMm1sdHJuZyBXSEVS RSBpZCA9ICdbMjAwLDIwMSknIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKyAgICBpZCAgICAgfCAg ICAgICAgIHZhbGlkX2F0ICAgICAgICAgIHwgcGFyZW50X2lkIAorLS0tLS0tLS0tLS0rLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tCisgWzIwMCwyMDEpIHwge1syMDE4LTAx LTAxLDIwMjAtMDEtMDEpfSB8IFstMSwwKQorIFsyMDAsMjAxKSB8IHtbMjAyMC0wMS0wMSwyMDIx LTAxLTAxKX0gfCBbOCw5KQorKDIgcm93cykKKworLS0KKy0tIHRlc3QgRksgcmVmZXJlbmNlZCBk ZWxldGVzIFNFVCBERUZBVUxUCistLQorVFJVTkNBVEUgdGVtcG9yYWxfbWx0cm5nLCB0ZW1wb3Jh bF9ma19tbHRybmcybWx0cm5nOworSU5TRVJUIElOVE8gdGVtcG9yYWxfbWx0cm5nIChpZCwgdmFs aWRfYXQpIFZBTFVFUyAoJ1stMSwtMV0nLCBkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UobnVsbCwg bnVsbCkpKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX21sdHJuZyAoaWQsIHZhbGlkX2F0KSBWQUxV RVMgKCdbNiw3KScsIGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIx LTAxLTAxJykpKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrX21sdHJuZzJtbHRybmcgKGlkLCB2 YWxpZF9hdCwgcGFyZW50X2lkKSBWQUxVRVMgKCdbMTAwLDEwMSknLCBkYXRlbXVsdGlyYW5nZShk YXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpKSwgJ1s2LDcpJyk7CistLSBsZWZ0 b3ZlcnMgb24gYm90aCBzaWRlczoKK0RFTEVURSBGUk9NIHRlbXBvcmFsX21sdHJuZyBGT1IgUE9S VElPTiBPRiB2YWxpZF9hdCAoZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDE5LTAxLTAxJywg JzIwMjAtMDEtMDEnKSkpIFdIRVJFIGlkID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9y YWxfZmtfbWx0cm5nMm1sdHJuZyBXSEVSRSBpZCA9ICdbMTAwLDEwMSknIE9SREVSIEJZIGlkLCB2 YWxpZF9hdDsKKyAgICBpZCAgICAgfCAgICAgICAgICAgICAgICAgICAgIHZhbGlkX2F0ICAgICAg ICAgICAgICAgICAgICAgIHwgcGFyZW50X2lkIAorLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tCisgWzEwMCwx MDEpIHwge1syMDE4LTAxLTAxLDIwMTktMDEtMDEpLFsyMDIwLTAxLTAxLDIwMjEtMDEtMDEpfSB8 IFs2LDcpCisgWzEwMCwxMDEpIHwge1syMDE5LTAxLTAxLDIwMjAtMDEtMDEpfSAgICAgICAgICAg ICAgICAgICAgICAgICB8IFstMSwwKQorKDIgcm93cykKKworLS0gbm9uLUZQTyB1cGRhdGU6CitE RUxFVEUgRlJPTSB0ZW1wb3JhbF9tbHRybmcgV0hFUkUgaWQgPSAnWzYsNyknOworU0VMRUNUICog RlJPTSB0ZW1wb3JhbF9ma19tbHRybmcybWx0cm5nIFdIRVJFIGlkID0gJ1sxMDAsMTAxKScgT1JE RVIgQlkgaWQsIHZhbGlkX2F0OworICAgIGlkICAgICB8ICAgICAgICAgICAgICAgICAgICAgdmFs aWRfYXQgICAgICAgICAgICAgICAgICAgICAgfCBwYXJlbnRfaWQgCistLS0tLS0tLS0tLSstLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0t LS0KKyBbMTAwLDEwMSkgfCB7WzIwMTgtMDEtMDEsMjAxOS0wMS0wMSksWzIwMjAtMDEtMDEsMjAy MS0wMS0wMSl9IHwgWy0xLDApCisgWzEwMCwxMDEpIHwge1syMDE5LTAxLTAxLDIwMjAtMDEtMDEp fSAgICAgICAgICAgICAgICAgICAgICAgICB8IFstMSwwKQorKDIgcm93cykKKworLS0gRksgYWNy b3NzIHR3byByZWZlcmVuY2VkIHJvd3M6CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9tbHRybmcgKGlk LCB2YWxpZF9hdCkgVkFMVUVTICgnWzgsOSknLCBkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIw MTgtMDEtMDEnLCAnMjAyMC0wMS0wMScpKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9tbHRybmcg KGlkLCB2YWxpZF9hdCkgVkFMVUVTICgnWzgsOSknLCBkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2Uo JzIwMjAtMDEtMDEnLCAnMjAyMS0wMS0wMScpKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ma19t bHRybmcybWx0cm5nIChpZCwgdmFsaWRfYXQsIHBhcmVudF9pZCkgVkFMVUVTICgnWzIwMCwyMDEp JywgZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSks ICdbOCw5KScpOworREVMRVRFIEZST00gdGVtcG9yYWxfbWx0cm5nIFdIRVJFIGlkID0gJ1s4LDkp JyBBTkQgdmFsaWRfYXQgQD4gJzIwMTktMDEtMDEnOjpkYXRlOworU0VMRUNUICogRlJPTSB0ZW1w b3JhbF9ma19tbHRybmcybWx0cm5nIFdIRVJFIGlkID0gJ1syMDAsMjAxKScgT1JERVIgQlkgaWQs IHZhbGlkX2F0OworICAgIGlkICAgICB8ICAgICAgICAgdmFsaWRfYXQgICAgICAgICAgfCBwYXJl bnRfaWQgCistLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0t LS0KKyBbMjAwLDIwMSkgfCB7WzIwMTgtMDEtMDEsMjAyMC0wMS0wMSl9IHwgWy0xLDApCisgWzIw MCwyMDEpIHwge1syMDIwLTAxLTAxLDIwMjEtMDEtMDEpfSB8IFs4LDkpCisoMiByb3dzKQorCist LQorLS0gdGVzdCBGSyByZWZlcmVuY2VkIHVwZGF0ZXMgQ0FTQ0FERSAodHdvIHNjYWxhciBjb2xz KQorLS0KK1RSVU5DQVRFIHRlbXBvcmFsX21sdHJuZzIsIHRlbXBvcmFsX2ZrMl9tbHRybmcybWx0 cm5nOworSU5TRVJUIElOVE8gdGVtcG9yYWxfbWx0cm5nMiAoaWQxLCBpZDIsIHZhbGlkX2F0KSBW QUxVRVMgKCdbNiw3KScsICdbNiw3KScsIGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAxOC0w MS0wMScsICcyMDIxLTAxLTAxJykpKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrMl9tbHRybmcy bWx0cm5nIChpZCwgdmFsaWRfYXQsIHBhcmVudF9pZDEsIHBhcmVudF9pZDIpIFZBTFVFUyAoJ1sx MDAsMTAxKScsIGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIxLTAx LTAxJykpLCAnWzYsNyknLCAnWzYsNyknKTsKK0FMVEVSIFRBQkxFIHRlbXBvcmFsX2ZrMl9tbHRy bmcybWx0cm5nCisgIERST1AgQ09OU1RSQUlOVCB0ZW1wb3JhbF9mazJfbWx0cm5nMm1sdHJuZ19m aywKKyAgQUREIENPTlNUUkFJTlQgdGVtcG9yYWxfZmsyX21sdHJuZzJtbHRybmdfZmsKKyAgICBG T1JFSUdOIEtFWSAocGFyZW50X2lkMSwgcGFyZW50X2lkMiwgUEVSSU9EIHZhbGlkX2F0KQorICAg IFJFRkVSRU5DRVMgdGVtcG9yYWxfbWx0cm5nMgorICAgIE9OIERFTEVURSBDQVNDQURFIE9OIFVQ REFURSBDQVNDQURFOworLS0gbGVmdG92ZXJzIG9uIGJvdGggc2lkZXM6CitVUERBVEUgdGVtcG9y YWxfbWx0cm5nMiBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCAoZGF0ZW11bHRpcmFuZ2UoZGF0ZXJh bmdlKCcyMDE5LTAxLTAxJywgJzIwMjAtMDEtMDEnKSkpIFNFVCBpZDEgPSAnWzcsOCknIFdIRVJF IGlkMSA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9tbHRybmcybWx0cm5n IFdIRVJFIGlkID0gJ1sxMDAsMTAxKScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworICAgIGlkICAg ICB8ICAgICAgICAgICAgICAgICAgICAgdmFsaWRfYXQgICAgICAgICAgICAgICAgICAgICAgfCBw YXJlbnRfaWQxIHwgcGFyZW50X2lkMiAKKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0t CisgWzEwMCwxMDEpIHwge1syMDE4LTAxLTAxLDIwMTktMDEtMDEpLFsyMDIwLTAxLTAxLDIwMjEt MDEtMDEpfSB8IFs2LDcpICAgICAgfCBbNiw3KQorIFsxMDAsMTAxKSB8IHtbMjAxOS0wMS0wMSwy MDIwLTAxLTAxKX0gICAgICAgICAgICAgICAgICAgICAgICAgfCBbNyw4KSAgICAgIHwgWzYsNykK KygyIHJvd3MpCisKKy0tIG5vbi1GUE8gdXBkYXRlOgorVVBEQVRFIHRlbXBvcmFsX21sdHJuZzIg U0VUIGlkMSA9ICdbNyw4KScgV0hFUkUgaWQxID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVt cG9yYWxfZmsyX21sdHJuZzJtbHRybmcgV0hFUkUgaWQgPSAnWzEwMCwxMDEpJyBPUkRFUiBCWSBp ZCwgdmFsaWRfYXQ7CisgICAgaWQgICAgIHwgICAgICAgICAgICAgICAgICAgICB2YWxpZF9hdCAg ICAgICAgICAgICAgICAgICAgICB8IHBhcmVudF9pZDEgfCBwYXJlbnRfaWQyIAorLS0tLS0tLS0t LS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0t LS0tLS0tLS0tLSstLS0tLS0tLS0tLS0KKyBbMTAwLDEwMSkgfCB7WzIwMTgtMDEtMDEsMjAxOS0w MS0wMSksWzIwMjAtMDEtMDEsMjAyMS0wMS0wMSl9IHwgWzcsOCkgICAgICB8IFs2LDcpCisgWzEw MCwxMDEpIHwge1syMDE5LTAxLTAxLDIwMjAtMDEtMDEpfSAgICAgICAgICAgICAgICAgICAgICAg ICB8IFs3LDgpICAgICAgfCBbNiw3KQorKDIgcm93cykKKworLS0gRksgYWNyb3NzIHR3byByZWZl cmVuY2VkIHJvd3M6CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9tbHRybmcyIChpZDEsIGlkMiwgdmFs aWRfYXQpIFZBTFVFUyAoJ1s4LDkpJywgJ1s4LDkpJywgZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdl KCcyMDE4LTAxLTAxJywgJzIwMjAtMDEtMDEnKSkpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfbWx0 cm5nMiAoaWQxLCBpZDIsIHZhbGlkX2F0KSBWQUxVRVMgKCdbOCw5KScsICdbOCw5KScsIGRhdGVt dWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAyMC0wMS0wMScsICcyMDIxLTAxLTAxJykpKTsKK0lOU0VS VCBJTlRPIHRlbXBvcmFsX2ZrMl9tbHRybmcybWx0cm5nIChpZCwgdmFsaWRfYXQsIHBhcmVudF9p ZDEsIHBhcmVudF9pZDIpIFZBTFVFUyAoJ1syMDAsMjAxKScsIGRhdGVtdWx0aXJhbmdlKGRhdGVy YW5nZSgnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJykpLCAnWzgsOSknLCAnWzgsOSknKTsKK1VQ REFURSB0ZW1wb3JhbF9tbHRybmcyIFNFVCBpZDEgPSAnWzksMTApJyBXSEVSRSBpZDEgPSAnWzgs OSknIEFORCB2YWxpZF9hdCBAPiAnMjAxOS0wMS0wMSc6OmRhdGU7CitTRUxFQ1QgKiBGUk9NIHRl bXBvcmFsX2ZrMl9tbHRybmcybWx0cm5nIFdIRVJFIGlkID0gJ1syMDAsMjAxKScgT1JERVIgQlkg aWQsIHZhbGlkX2F0OworICAgIGlkICAgICB8ICAgICAgICAgdmFsaWRfYXQgICAgICAgICAgfCBw YXJlbnRfaWQxIHwgcGFyZW50X2lkMiAKKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tCisgWzIwMCwyMDEpIHwge1syMDE4LTAx LTAxLDIwMjAtMDEtMDEpfSB8IFs5LDEwKSAgICAgfCBbOCw5KQorIFsyMDAsMjAxKSB8IHtbMjAy MC0wMS0wMSwyMDIxLTAxLTAxKX0gfCBbOCw5KSAgICAgIHwgWzgsOSkKKygyIHJvd3MpCisKKy0t CistLSB0ZXN0IEZLIHJlZmVyZW5jZWQgZGVsZXRlcyBDQVNDQURFICh0d28gc2NhbGFyIGNvbHMp CistLQorVFJVTkNBVEUgdGVtcG9yYWxfbWx0cm5nMiwgdGVtcG9yYWxfZmsyX21sdHJuZzJtbHRy bmc7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9tbHRybmcyIChpZDEsIGlkMiwgdmFsaWRfYXQpIFZB TFVFUyAoJ1s2LDcpJywgJ1s2LDcpJywgZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDE4LTAx LTAxJywgJzIwMjEtMDEtMDEnKSkpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmsyX21sdHJuZzJt bHRybmcgKGlkLCB2YWxpZF9hdCwgcGFyZW50X2lkMSwgcGFyZW50X2lkMikgVkFMVUVTICgnWzEw MCwxMDEpJywgZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEt MDEnKSksICdbNiw3KScsICdbNiw3KScpOworLS0gbGVmdG92ZXJzIG9uIGJvdGggc2lkZXM6CitE RUxFVEUgRlJPTSB0ZW1wb3JhbF9tbHRybmcyIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IChkYXRl bXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIwMTktMDEtMDEnLCAnMjAyMC0wMS0wMScpKSkgV0hFUkUg aWQxID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX21sdHJuZzJtbHRybmcg V0hFUkUgaWQgPSAnWzEwMCwxMDEpJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisgICAgaWQgICAg IHwgICAgICAgICAgICAgICAgICAgICB2YWxpZF9hdCAgICAgICAgICAgICAgICAgICAgICB8IHBh cmVudF9pZDEgfCBwYXJlbnRfaWQyIAorLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0K KyBbMTAwLDEwMSkgfCB7WzIwMTgtMDEtMDEsMjAxOS0wMS0wMSksWzIwMjAtMDEtMDEsMjAyMS0w MS0wMSl9IHwgWzYsNykgICAgICB8IFs2LDcpCisoMSByb3cpCisKKy0tIG5vbi1GUE8gZGVsZXRl OgorREVMRVRFIEZST00gdGVtcG9yYWxfbWx0cm5nMiBXSEVSRSBpZDEgPSAnWzYsNyknOworU0VM RUNUICogRlJPTSB0ZW1wb3JhbF9mazJfbWx0cm5nMm1sdHJuZyBXSEVSRSBpZCA9ICdbMTAwLDEw MSknIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKyBpZCB8IHZhbGlkX2F0IHwgcGFyZW50X2lkMSB8 IHBhcmVudF9pZDIgCistLS0tKy0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLQor KDAgcm93cykKKworLS0gRksgYWNyb3NzIHR3byByZWZlcmVuY2VkIHJvd3M6CitJTlNFUlQgSU5U TyB0ZW1wb3JhbF9tbHRybmcyIChpZDEsIGlkMiwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s4LDkpJywg J1s4LDkpJywgZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjAtMDEt MDEnKSkpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfbWx0cm5nMiAoaWQxLCBpZDIsIHZhbGlkX2F0 KSBWQUxVRVMgKCdbOCw5KScsICdbOCw5KScsIGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAy MC0wMS0wMScsICcyMDIxLTAxLTAxJykpKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrMl9tbHRy bmcybWx0cm5nIChpZCwgdmFsaWRfYXQsIHBhcmVudF9pZDEsIHBhcmVudF9pZDIpIFZBTFVFUyAo J1syMDAsMjAxKScsIGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIx LTAxLTAxJykpLCAnWzgsOSknLCAnWzgsOSknKTsKK0RFTEVURSBGUk9NIHRlbXBvcmFsX21sdHJu ZzIgV0hFUkUgaWQxID0gJ1s4LDkpJyBBTkQgdmFsaWRfYXQgQD4gJzIwMTktMDEtMDEnOjpkYXRl OworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9mazJfbWx0cm5nMm1sdHJuZyBXSEVSRSBpZCA9ICdb MjAwLDIwMSknIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKyAgICBpZCAgICAgfCAgICAgICAgIHZh bGlkX2F0ICAgICAgICAgIHwgcGFyZW50X2lkMSB8IHBhcmVudF9pZDIgCistLS0tLS0tLS0tLSst LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLQorIFsy MDAsMjAxKSB8IHtbMjAyMC0wMS0wMSwyMDIxLTAxLTAxKX0gfCBbOCw5KSAgICAgIHwgWzgsOSkK KygxIHJvdykKKworLS0KKy0tIHRlc3QgRksgcmVmZXJlbmNlZCB1cGRhdGVzIFNFVCBOVUxMICh0 d28gc2NhbGFyIGNvbHMpCistLQorVFJVTkNBVEUgdGVtcG9yYWxfbWx0cm5nMiwgdGVtcG9yYWxf ZmsyX21sdHJuZzJtbHRybmc7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9tbHRybmcyIChpZDEsIGlk MiwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s2LDcpJywgJ1s2LDcpJywgZGF0ZW11bHRpcmFuZ2UoZGF0 ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSkpOworSU5TRVJUIElOVE8gdGVtcG9y YWxfZmsyX21sdHJuZzJtbHRybmcgKGlkLCB2YWxpZF9hdCwgcGFyZW50X2lkMSwgcGFyZW50X2lk MikgVkFMVUVTICgnWzEwMCwxMDEpJywgZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDE4LTAx LTAxJywgJzIwMjEtMDEtMDEnKSksICdbNiw3KScsICdbNiw3KScpOworQUxURVIgVEFCTEUgdGVt cG9yYWxfZmsyX21sdHJuZzJtbHRybmcKKyAgRFJPUCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrMl9t bHRybmcybWx0cm5nX2ZrLAorICBBREQgQ09OU1RSQUlOVCB0ZW1wb3JhbF9mazJfbWx0cm5nMm1s dHJuZ19maworICAgIEZPUkVJR04gS0VZIChwYXJlbnRfaWQxLCBwYXJlbnRfaWQyLCBQRVJJT0Qg dmFsaWRfYXQpCisgICAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9tbHRybmcyCisgICAgT04gREVMRVRF IFNFVCBOVUxMIE9OIFVQREFURSBTRVQgTlVMTDsKKy0tIGxlZnRvdmVycyBvbiBib3RoIHNpZGVz OgorVVBEQVRFIHRlbXBvcmFsX21sdHJuZzIgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgKGRhdGVt dWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAxOS0wMS0wMScsICcyMDIwLTAxLTAxJykpKSBTRVQgaWQx ID0gJ1s3LDgpJyBXSEVSRSBpZDEgPSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9m azJfbWx0cm5nMm1sdHJuZyBXSEVSRSBpZCA9ICdbMTAwLDEwMSknIE9SREVSIEJZIGlkLCB2YWxp ZF9hdDsKKyAgICBpZCAgICAgfCAgICAgICAgICAgICAgICAgICAgIHZhbGlkX2F0ICAgICAgICAg ICAgICAgICAgICAgIHwgcGFyZW50X2lkMSB8IHBhcmVudF9pZDIgCistLS0tLS0tLS0tLSstLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0t LS0tKy0tLS0tLS0tLS0tLQorIFsxMDAsMTAxKSB8IHtbMjAxOC0wMS0wMSwyMDE5LTAxLTAxKSxb MjAyMC0wMS0wMSwyMDIxLTAxLTAxKX0gfCBbNiw3KSAgICAgIHwgWzYsNykKKyBbMTAwLDEwMSkg fCB7WzIwMTktMDEtMDEsMjAyMC0wMS0wMSl9ICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAg ICAgICAgICB8IAorKDIgcm93cykKKworLS0gbm9uLUZQTyB1cGRhdGU6CitVUERBVEUgdGVtcG9y YWxfbWx0cm5nMiBTRVQgaWQxID0gJ1s3LDgpJyBXSEVSRSBpZDEgPSAnWzYsNyknOworU0VMRUNU ICogRlJPTSB0ZW1wb3JhbF9mazJfbWx0cm5nMm1sdHJuZyBXSEVSRSBpZCA9ICdbMTAwLDEwMSkn IE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKyAgICBpZCAgICAgfCAgICAgICAgICAgICAgICAgICAg IHZhbGlkX2F0ICAgICAgICAgICAgICAgICAgICAgIHwgcGFyZW50X2lkMSB8IHBhcmVudF9pZDIg CistLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLQorIFsxMDAsMTAxKSB8IHtbMjAxOC0w MS0wMSwyMDE5LTAxLTAxKSxbMjAyMC0wMS0wMSwyMDIxLTAxLTAxKX0gfCAgICAgICAgICAgIHwg CisgWzEwMCwxMDEpIHwge1syMDE5LTAxLTAxLDIwMjAtMDEtMDEpfSAgICAgICAgICAgICAgICAg ICAgICAgICB8ICAgICAgICAgICAgfCAKKygyIHJvd3MpCisKKy0tIEZLIGFjcm9zcyB0d28gcmVm ZXJlbmNlZCByb3dzOgorSU5TRVJUIElOVE8gdGVtcG9yYWxfbWx0cm5nMiAoaWQxLCBpZDIsIHZh bGlkX2F0KSBWQUxVRVMgKCdbOCw5KScsICdbOCw5KScsIGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5n ZSgnMjAxOC0wMS0wMScsICcyMDIwLTAxLTAxJykpKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX21s dHJuZzIgKGlkMSwgaWQyLCB2YWxpZF9hdCkgVkFMVUVTICgnWzgsOSknLCAnWzgsOSknLCBkYXRl bXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIwMjAtMDEtMDEnLCAnMjAyMS0wMS0wMScpKSk7CitJTlNF UlQgSU5UTyB0ZW1wb3JhbF9mazJfbWx0cm5nMm1sdHJuZyAoaWQsIHZhbGlkX2F0LCBwYXJlbnRf aWQxLCBwYXJlbnRfaWQyKSBWQUxVRVMgKCdbMjAwLDIwMSknLCBkYXRlbXVsdGlyYW5nZShkYXRl cmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpKSwgJ1s4LDkpJywgJ1s4LDkpJyk7CitV UERBVEUgdGVtcG9yYWxfbWx0cm5nMiBTRVQgaWQxID0gJ1s5LDEwKScgV0hFUkUgaWQxID0gJ1s4 LDkpJyBBTkQgdmFsaWRfYXQgQD4gJzIwMTktMDEtMDEnOjpkYXRlOworU0VMRUNUICogRlJPTSB0 ZW1wb3JhbF9mazJfbWx0cm5nMm1sdHJuZyBXSEVSRSBpZCA9ICdbMjAwLDIwMSknIE9SREVSIEJZ IGlkLCB2YWxpZF9hdDsKKyAgICBpZCAgICAgfCAgICAgICAgIHZhbGlkX2F0ICAgICAgICAgIHwg cGFyZW50X2lkMSB8IHBhcmVudF9pZDIgCistLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLQorIFsyMDAsMjAxKSB8IHtbMjAxOC0w MS0wMSwyMDIwLTAxLTAxKX0gfCAgICAgICAgICAgIHwgCisgWzIwMCwyMDEpIHwge1syMDIwLTAx LTAxLDIwMjEtMDEtMDEpfSB8IFs4LDkpICAgICAgfCBbOCw5KQorKDIgcm93cykKKworLS0KKy0t IHRlc3QgRksgcmVmZXJlbmNlZCBkZWxldGVzIFNFVCBOVUxMICh0d28gc2NhbGFyIGNvbHMpCist LQorVFJVTkNBVEUgdGVtcG9yYWxfbWx0cm5nMiwgdGVtcG9yYWxfZmsyX21sdHJuZzJtbHRybmc7 CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9tbHRybmcyIChpZDEsIGlkMiwgdmFsaWRfYXQpIFZBTFVF UyAoJ1s2LDcpJywgJ1s2LDcpJywgZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDE4LTAxLTAx JywgJzIwMjEtMDEtMDEnKSkpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmsyX21sdHJuZzJtbHRy bmcgKGlkLCB2YWxpZF9hdCwgcGFyZW50X2lkMSwgcGFyZW50X2lkMikgVkFMVUVTICgnWzEwMCwx MDEpJywgZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEn KSksICdbNiw3KScsICdbNiw3KScpOworLS0gbGVmdG92ZXJzIG9uIGJvdGggc2lkZXM6CitERUxF VEUgRlJPTSB0ZW1wb3JhbF9tbHRybmcyIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IChkYXRlbXVs dGlyYW5nZShkYXRlcmFuZ2UoJzIwMTktMDEtMDEnLCAnMjAyMC0wMS0wMScpKSkgV0hFUkUgaWQx ID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX21sdHJuZzJtbHRybmcgV0hF UkUgaWQgPSAnWzEwMCwxMDEpJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisgICAgaWQgICAgIHwg ICAgICAgICAgICAgICAgICAgICB2YWxpZF9hdCAgICAgICAgICAgICAgICAgICAgICB8IHBhcmVu dF9pZDEgfCBwYXJlbnRfaWQyIAorLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0KKyBb MTAwLDEwMSkgfCB7WzIwMTgtMDEtMDEsMjAxOS0wMS0wMSksWzIwMjAtMDEtMDEsMjAyMS0wMS0w MSl9IHwgWzYsNykgICAgICB8IFs2LDcpCisgWzEwMCwxMDEpIHwge1syMDE5LTAxLTAxLDIwMjAt MDEtMDEpfSAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgfCAKKygyIHJvd3Mp CisKKy0tIG5vbi1GUE8gZGVsZXRlOgorREVMRVRFIEZST00gdGVtcG9yYWxfbWx0cm5nMiBXSEVS RSBpZDEgPSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9mazJfbWx0cm5nMm1sdHJu ZyBXSEVSRSBpZCA9ICdbMTAwLDEwMSknIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKyAgICBpZCAg ICAgfCAgICAgICAgICAgICAgICAgICAgIHZhbGlkX2F0ICAgICAgICAgICAgICAgICAgICAgIHwg cGFyZW50X2lkMSB8IHBhcmVudF9pZDIgCistLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0t LQorIFsxMDAsMTAxKSB8IHtbMjAxOC0wMS0wMSwyMDE5LTAxLTAxKSxbMjAyMC0wMS0wMSwyMDIx LTAxLTAxKX0gfCAgICAgICAgICAgIHwgCisgWzEwMCwxMDEpIHwge1syMDE5LTAxLTAxLDIwMjAt MDEtMDEpfSAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgfCAKKygyIHJvd3Mp CisKKy0tIEZLIGFjcm9zcyB0d28gcmVmZXJlbmNlZCByb3dzOgorSU5TRVJUIElOVE8gdGVtcG9y YWxfbWx0cm5nMiAoaWQxLCBpZDIsIHZhbGlkX2F0KSBWQUxVRVMgKCdbOCw5KScsICdbOCw5KScs IGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIwLTAxLTAxJykpKTsK K0lOU0VSVCBJTlRPIHRlbXBvcmFsX21sdHJuZzIgKGlkMSwgaWQyLCB2YWxpZF9hdCkgVkFMVUVT ICgnWzgsOSknLCAnWzgsOSknLCBkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIwMjAtMDEtMDEn LCAnMjAyMS0wMS0wMScpKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9mazJfbWx0cm5nMm1sdHJu ZyAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQxLCBwYXJlbnRfaWQyKSBWQUxVRVMgKCdbMjAwLDIw MSknLCBkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScp KSwgJ1s4LDkpJywgJ1s4LDkpJyk7CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9tbHRybmcyIFdIRVJF IGlkMSA9ICdbOCw5KScgQU5EIHZhbGlkX2F0IEA+ICcyMDE5LTAxLTAxJzo6ZGF0ZTsKK1NFTEVD VCAqIEZST00gdGVtcG9yYWxfZmsyX21sdHJuZzJtbHRybmcgV0hFUkUgaWQgPSAnWzIwMCwyMDEp JyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisgICAgaWQgICAgIHwgICAgICAgICB2YWxpZF9hdCAg ICAgICAgICB8IHBhcmVudF9pZDEgfCBwYXJlbnRfaWQyIAorLS0tLS0tLS0tLS0rLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0KKyBbMjAwLDIwMSkg fCB7WzIwMTgtMDEtMDEsMjAyMC0wMS0wMSl9IHwgICAgICAgICAgICB8IAorIFsyMDAsMjAxKSB8 IHtbMjAyMC0wMS0wMSwyMDIxLTAxLTAxKX0gfCBbOCw5KSAgICAgIHwgWzgsOSkKKygyIHJvd3Mp CisKKy0tCistLSB0ZXN0IEZLIHJlZmVyZW5jZWQgZGVsZXRlcyBTRVQgTlVMTCAodHdvIHNjYWxh ciBjb2xzLCBTRVQgTlVMTCBzdWJzZXQpCistLQorVFJVTkNBVEUgdGVtcG9yYWxfbWx0cm5nMiwg dGVtcG9yYWxfZmsyX21sdHJuZzJtbHRybmc7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9tbHRybmcy IChpZDEsIGlkMiwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s2LDcpJywgJ1s2LDcpJywgZGF0ZW11bHRp cmFuZ2UoZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSkpOworSU5TRVJUIElO VE8gdGVtcG9yYWxfZmsyX21sdHJuZzJtbHRybmcgKGlkLCB2YWxpZF9hdCwgcGFyZW50X2lkMSwg cGFyZW50X2lkMikgVkFMVUVTICgnWzEwMCwxMDEpJywgZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdl KCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSksICdbNiw3KScsICdbNiw3KScpOworLS0gZmFp bHMgYmVjYXVzZSB5b3UgY2FuJ3Qgc2V0IHRoZSBQRVJJT0QgY29sdW1uOgorQUxURVIgVEFCTEUg dGVtcG9yYWxfZmsyX21sdHJuZzJtbHRybmcKKyAgRFJPUCBDT05TVFJBSU5UIHRlbXBvcmFsX2Zr Ml9tbHRybmcybWx0cm5nX2ZrLAorICBBREQgQ09OU1RSQUlOVCB0ZW1wb3JhbF9mazJfbWx0cm5n Mm1sdHJuZ19maworICAgIEZPUkVJR04gS0VZIChwYXJlbnRfaWQxLCBwYXJlbnRfaWQyLCBQRVJJ T0QgdmFsaWRfYXQpCisgICAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9tbHRybmcyCisgICAgT04gREVM RVRFIFNFVCBOVUxMICh2YWxpZF9hdCkgT04gVVBEQVRFIFNFVCBOVUxMOworRVJST1I6ICBjb2x1 bW4gInZhbGlkX2F0IiByZWZlcmVuY2VkIGluIE9OIERFTEVURSBTRVQgYWN0aW9uIGNhbm5vdCBi ZSBQRVJJT0QKKy0tIG9rOgorQUxURVIgVEFCTEUgdGVtcG9yYWxfZmsyX21sdHJuZzJtbHRybmcK KyAgRFJPUCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrMl9tbHRybmcybWx0cm5nX2ZrLAorICBBREQg Q09OU1RSQUlOVCB0ZW1wb3JhbF9mazJfbWx0cm5nMm1sdHJuZ19maworICAgIEZPUkVJR04gS0VZ IChwYXJlbnRfaWQxLCBwYXJlbnRfaWQyLCBQRVJJT0QgdmFsaWRfYXQpCisgICAgUkVGRVJFTkNF UyB0ZW1wb3JhbF9tbHRybmcyCisgICAgT04gREVMRVRFIFNFVCBOVUxMIChwYXJlbnRfaWQxKSBP TiBVUERBVEUgU0VUIE5VTEw7CistLSBsZWZ0b3ZlcnMgb24gYm90aCBzaWRlczoKK0RFTEVURSBG Uk9NIHRlbXBvcmFsX21sdHJuZzIgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgKGRhdGVtdWx0aXJh bmdlKGRhdGVyYW5nZSgnMjAxOS0wMS0wMScsICcyMDIwLTAxLTAxJykpKSBXSEVSRSBpZDEgPSAn WzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9mazJfbWx0cm5nMm1sdHJuZyBXSEVSRSBp ZCA9ICdbMTAwLDEwMSknIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKyAgICBpZCAgICAgfCAgICAg ICAgICAgICAgICAgICAgIHZhbGlkX2F0ICAgICAgICAgICAgICAgICAgICAgIHwgcGFyZW50X2lk MSB8IHBhcmVudF9pZDIgCistLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLQorIFsxMDAs MTAxKSB8IHtbMjAxOC0wMS0wMSwyMDE5LTAxLTAxKSxbMjAyMC0wMS0wMSwyMDIxLTAxLTAxKX0g fCBbNiw3KSAgICAgIHwgWzYsNykKKyBbMTAwLDEwMSkgfCB7WzIwMTktMDEtMDEsMjAyMC0wMS0w MSl9ICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgICAgICAgICB8IFs2LDcpCisoMiByb3dz KQorCistLSBub24tRlBPIGRlbGV0ZToKK0RFTEVURSBGUk9NIHRlbXBvcmFsX21sdHJuZzIgV0hF UkUgaWQxID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX21sdHJuZzJtbHRy bmcgV0hFUkUgaWQgPSAnWzEwMCwxMDEpJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisgICAgaWQg ICAgIHwgICAgICAgICAgICAgICAgICAgICB2YWxpZF9hdCAgICAgICAgICAgICAgICAgICAgICB8 IHBhcmVudF9pZDEgfCBwYXJlbnRfaWQyIAorLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0t LS0KKyBbMTAwLDEwMSkgfCB7WzIwMTgtMDEtMDEsMjAxOS0wMS0wMSksWzIwMjAtMDEtMDEsMjAy MS0wMS0wMSl9IHwgICAgICAgICAgICB8IFs2LDcpCisgWzEwMCwxMDEpIHwge1syMDE5LTAxLTAx LDIwMjAtMDEtMDEpfSAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgICAgICAgICAgfCBbNiw3 KQorKDIgcm93cykKKworLS0gRksgYWNyb3NzIHR3byByZWZlcmVuY2VkIHJvd3M6CitJTlNFUlQg SU5UTyB0ZW1wb3JhbF9tbHRybmcyIChpZDEsIGlkMiwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s4LDkp JywgJ1s4LDkpJywgZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjAt MDEtMDEnKSkpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfbWx0cm5nMiAoaWQxLCBpZDIsIHZhbGlk X2F0KSBWQUxVRVMgKCdbOCw5KScsICdbOCw5KScsIGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgn MjAyMC0wMS0wMScsICcyMDIxLTAxLTAxJykpKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrMl9t bHRybmcybWx0cm5nIChpZCwgdmFsaWRfYXQsIHBhcmVudF9pZDEsIHBhcmVudF9pZDIpIFZBTFVF UyAoJ1syMDAsMjAxKScsIGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcy MDIxLTAxLTAxJykpLCAnWzgsOSknLCAnWzgsOSknKTsKK0RFTEVURSBGUk9NIHRlbXBvcmFsX21s dHJuZzIgV0hFUkUgaWQxID0gJ1s4LDkpJyBBTkQgdmFsaWRfYXQgQD4gJzIwMTktMDEtMDEnOjpk YXRlOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9mazJfbWx0cm5nMm1sdHJuZyBXSEVSRSBpZCA9 ICdbMjAwLDIwMSknIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKyAgICBpZCAgICAgfCAgICAgICAg IHZhbGlkX2F0ICAgICAgICAgIHwgcGFyZW50X2lkMSB8IHBhcmVudF9pZDIgCistLS0tLS0tLS0t LSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLQor IFsyMDAsMjAxKSB8IHtbMjAxOC0wMS0wMSwyMDIwLTAxLTAxKX0gfCAgICAgICAgICAgIHwgWzgs OSkKKyBbMjAwLDIwMSkgfCB7WzIwMjAtMDEtMDEsMjAyMS0wMS0wMSl9IHwgWzgsOSkgICAgICB8 IFs4LDkpCisoMiByb3dzKQorCistLQorLS0gdGVzdCBGSyByZWZlcmVuY2VkIHVwZGF0ZXMgU0VU IERFRkFVTFQgKHR3byBzY2FsYXIgY29scykKKy0tCitUUlVOQ0FURSB0ZW1wb3JhbF9tbHRybmcy LCB0ZW1wb3JhbF9mazJfbWx0cm5nMm1sdHJuZzsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX21sdHJu ZzIgKGlkMSwgaWQyLCB2YWxpZF9hdCkgVkFMVUVTICgnWy0xLC0xXScsICdbLTEsLTFdJywgZGF0 ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKG51bGwsIG51bGwpKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3Jh bF9tbHRybmcyIChpZDEsIGlkMiwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s2LDcpJywgJ1s2LDcpJywg ZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSkpOwor SU5TRVJUIElOVE8gdGVtcG9yYWxfZmsyX21sdHJuZzJtbHRybmcgKGlkLCB2YWxpZF9hdCwgcGFy ZW50X2lkMSwgcGFyZW50X2lkMikgVkFMVUVTICgnWzEwMCwxMDEpJywgZGF0ZW11bHRpcmFuZ2Uo ZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSksICdbNiw3KScsICdbNiw3KScp OworQUxURVIgVEFCTEUgdGVtcG9yYWxfZmsyX21sdHJuZzJtbHRybmcKKyAgQUxURVIgQ09MVU1O IHBhcmVudF9pZDEgU0VUIERFRkFVTFQgJ1stMSwtMV0nLAorICBBTFRFUiBDT0xVTU4gcGFyZW50 X2lkMiBTRVQgREVGQVVMVCAnWy0xLC0xXScsCisgIERST1AgQ09OU1RSQUlOVCB0ZW1wb3JhbF9m azJfbWx0cm5nMm1sdHJuZ19maywKKyAgQUREIENPTlNUUkFJTlQgdGVtcG9yYWxfZmsyX21sdHJu ZzJtbHRybmdfZmsKKyAgICBGT1JFSUdOIEtFWSAocGFyZW50X2lkMSwgcGFyZW50X2lkMiwgUEVS SU9EIHZhbGlkX2F0KQorICAgIFJFRkVSRU5DRVMgdGVtcG9yYWxfbWx0cm5nMgorICAgIE9OIERF TEVURSBTRVQgREVGQVVMVCBPTiBVUERBVEUgU0VUIERFRkFVTFQ7CistLSBsZWZ0b3ZlcnMgb24g Ym90aCBzaWRlczoKK1VQREFURSB0ZW1wb3JhbF9tbHRybmcyIEZPUiBQT1JUSU9OIE9GIHZhbGlk X2F0IChkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIwMTktMDEtMDEnLCAnMjAyMC0wMS0wMScp KSkgU0VUIGlkMSA9ICdbNyw4KScsIGlkMiA9ICdbNyw4KScgV0hFUkUgaWQxID0gJ1s2LDcpJzsK K1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX21sdHJuZzJtbHRybmcgV0hFUkUgaWQgPSAnWzEw MCwxMDEpJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisgICAgaWQgICAgIHwgICAgICAgICAgICAg ICAgICAgICB2YWxpZF9hdCAgICAgICAgICAgICAgICAgICAgICB8IHBhcmVudF9pZDEgfCBwYXJl bnRfaWQyIAorLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0KKyBbMTAwLDEwMSkgfCB7 WzIwMTgtMDEtMDEsMjAxOS0wMS0wMSksWzIwMjAtMDEtMDEsMjAyMS0wMS0wMSl9IHwgWzYsNykg ICAgICB8IFs2LDcpCisgWzEwMCwxMDEpIHwge1syMDE5LTAxLTAxLDIwMjAtMDEtMDEpfSAgICAg ICAgICAgICAgICAgICAgICAgICB8IFstMSwwKSAgICAgfCBbLTEsMCkKKygyIHJvd3MpCisKKy0t IG5vbi1GUE8gdXBkYXRlOgorVVBEQVRFIHRlbXBvcmFsX21sdHJuZzIgU0VUIGlkMSA9ICdbNyw4 KScsIGlkMiA9ICdbNyw4KScgV0hFUkUgaWQxID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVt cG9yYWxfZmsyX21sdHJuZzJtbHRybmcgV0hFUkUgaWQgPSAnWzEwMCwxMDEpJyBPUkRFUiBCWSBp ZCwgdmFsaWRfYXQ7CisgICAgaWQgICAgIHwgICAgICAgICAgICAgICAgICAgICB2YWxpZF9hdCAg ICAgICAgICAgICAgICAgICAgICB8IHBhcmVudF9pZDEgfCBwYXJlbnRfaWQyIAorLS0tLS0tLS0t LS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0t LS0tLS0tLS0tLSstLS0tLS0tLS0tLS0KKyBbMTAwLDEwMSkgfCB7WzIwMTgtMDEtMDEsMjAxOS0w MS0wMSksWzIwMjAtMDEtMDEsMjAyMS0wMS0wMSl9IHwgWy0xLDApICAgICB8IFstMSwwKQorIFsx MDAsMTAxKSB8IHtbMjAxOS0wMS0wMSwyMDIwLTAxLTAxKX0gICAgICAgICAgICAgICAgICAgICAg ICAgfCBbLTEsMCkgICAgIHwgWy0xLDApCisoMiByb3dzKQorCistLSBGSyBhY3Jvc3MgdHdvIHJl ZmVyZW5jZWQgcm93czoKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX21sdHJuZzIgKGlkMSwgaWQyLCB2 YWxpZF9hdCkgVkFMVUVTICgnWzgsOSknLCAnWzgsOSknLCBkYXRlbXVsdGlyYW5nZShkYXRlcmFu Z2UoJzIwMTgtMDEtMDEnLCAnMjAyMC0wMS0wMScpKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9t bHRybmcyIChpZDEsIGlkMiwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s4LDkpJywgJ1s4LDkpJywgZGF0 ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDIwLTAxLTAxJywgJzIwMjEtMDEtMDEnKSkpOworSU5T RVJUIElOVE8gdGVtcG9yYWxfZmsyX21sdHJuZzJtbHRybmcgKGlkLCB2YWxpZF9hdCwgcGFyZW50 X2lkMSwgcGFyZW50X2lkMikgVkFMVUVTICgnWzIwMCwyMDEpJywgZGF0ZW11bHRpcmFuZ2UoZGF0 ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSksICdbOCw5KScsICdbOCw5KScpOwor VVBEQVRFIHRlbXBvcmFsX21sdHJuZzIgU0VUIGlkMSA9ICdbOSwxMCknLCBpZDIgPSAnWzksMTAp JyBXSEVSRSBpZDEgPSAnWzgsOSknIEFORCB2YWxpZF9hdCBAPiAnMjAxOS0wMS0wMSc6OmRhdGU7 CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9tbHRybmcybWx0cm5nIFdIRVJFIGlkID0gJ1sy MDAsMjAxKScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworICAgIGlkICAgICB8ICAgICAgICAgdmFs aWRfYXQgICAgICAgICAgfCBwYXJlbnRfaWQxIHwgcGFyZW50X2lkMiAKKy0tLS0tLS0tLS0tKy0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tCisgWzIw MCwyMDEpIHwge1syMDE4LTAxLTAxLDIwMjAtMDEtMDEpfSB8IFstMSwwKSAgICAgfCBbLTEsMCkK KyBbMjAwLDIwMSkgfCB7WzIwMjAtMDEtMDEsMjAyMS0wMS0wMSl9IHwgWzgsOSkgICAgICB8IFs4 LDkpCisoMiByb3dzKQorCistLQorLS0gdGVzdCBGSyByZWZlcmVuY2VkIGRlbGV0ZXMgU0VUIERF RkFVTFQgKHR3byBzY2FsYXIgY29scykKKy0tCitUUlVOQ0FURSB0ZW1wb3JhbF9tbHRybmcyLCB0 ZW1wb3JhbF9mazJfbWx0cm5nMm1sdHJuZzsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX21sdHJuZzIg KGlkMSwgaWQyLCB2YWxpZF9hdCkgVkFMVUVTICgnWy0xLC0xXScsICdbLTEsLTFdJywgZGF0ZW11 bHRpcmFuZ2UoZGF0ZXJhbmdlKG51bGwsIG51bGwpKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9t bHRybmcyIChpZDEsIGlkMiwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s2LDcpJywgJ1s2LDcpJywgZGF0 ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSkpOworSU5T RVJUIElOVE8gdGVtcG9yYWxfZmsyX21sdHJuZzJtbHRybmcgKGlkLCB2YWxpZF9hdCwgcGFyZW50 X2lkMSwgcGFyZW50X2lkMikgVkFMVUVTICgnWzEwMCwxMDEpJywgZGF0ZW11bHRpcmFuZ2UoZGF0 ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSksICdbNiw3KScsICdbNiw3KScpOwor LS0gbGVmdG92ZXJzIG9uIGJvdGggc2lkZXM6CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9tbHRybmcy IEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IChkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIwMTkt MDEtMDEnLCAnMjAyMC0wMS0wMScpKSkgV0hFUkUgaWQxID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZS T00gdGVtcG9yYWxfZmsyX21sdHJuZzJtbHRybmcgV0hFUkUgaWQgPSAnWzEwMCwxMDEpJyBPUkRF UiBCWSBpZCwgdmFsaWRfYXQ7CisgICAgaWQgICAgIHwgICAgICAgICAgICAgICAgICAgICB2YWxp ZF9hdCAgICAgICAgICAgICAgICAgICAgICB8IHBhcmVudF9pZDEgfCBwYXJlbnRfaWQyIAorLS0t LS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0KKyBbMTAwLDEwMSkgfCB7WzIwMTgtMDEtMDEs MjAxOS0wMS0wMSksWzIwMjAtMDEtMDEsMjAyMS0wMS0wMSl9IHwgWzYsNykgICAgICB8IFs2LDcp CisgWzEwMCwxMDEpIHwge1syMDE5LTAxLTAxLDIwMjAtMDEtMDEpfSAgICAgICAgICAgICAgICAg ICAgICAgICB8IFstMSwwKSAgICAgfCBbLTEsMCkKKygyIHJvd3MpCisKKy0tIG5vbi1GUE8gdXBk YXRlOgorREVMRVRFIEZST00gdGVtcG9yYWxfbWx0cm5nMiBXSEVSRSBpZDEgPSAnWzYsNyknOwor U0VMRUNUICogRlJPTSB0ZW1wb3JhbF9mazJfbWx0cm5nMm1sdHJuZyBXSEVSRSBpZCA9ICdbMTAw LDEwMSknIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKyAgICBpZCAgICAgfCAgICAgICAgICAgICAg ICAgICAgIHZhbGlkX2F0ICAgICAgICAgICAgICAgICAgICAgIHwgcGFyZW50X2lkMSB8IHBhcmVu dF9pZDIgCistLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLQorIFsxMDAsMTAxKSB8IHtb MjAxOC0wMS0wMSwyMDE5LTAxLTAxKSxbMjAyMC0wMS0wMSwyMDIxLTAxLTAxKX0gfCBbLTEsMCkg ICAgIHwgWy0xLDApCisgWzEwMCwxMDEpIHwge1syMDE5LTAxLTAxLDIwMjAtMDEtMDEpfSAgICAg ICAgICAgICAgICAgICAgICAgICB8IFstMSwwKSAgICAgfCBbLTEsMCkKKygyIHJvd3MpCisKKy0t IEZLIGFjcm9zcyB0d28gcmVmZXJlbmNlZCByb3dzOgorSU5TRVJUIElOVE8gdGVtcG9yYWxfbWx0 cm5nMiAoaWQxLCBpZDIsIHZhbGlkX2F0KSBWQUxVRVMgKCdbOCw5KScsICdbOCw5KScsIGRhdGVt dWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIwLTAxLTAxJykpKTsKK0lOU0VS VCBJTlRPIHRlbXBvcmFsX21sdHJuZzIgKGlkMSwgaWQyLCB2YWxpZF9hdCkgVkFMVUVTICgnWzgs OSknLCAnWzgsOSknLCBkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIwMjAtMDEtMDEnLCAnMjAy MS0wMS0wMScpKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9mazJfbWx0cm5nMm1sdHJuZyAoaWQs IHZhbGlkX2F0LCBwYXJlbnRfaWQxLCBwYXJlbnRfaWQyKSBWQUxVRVMgKCdbMjAwLDIwMSknLCBk YXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpKSwgJ1s4 LDkpJywgJ1s4LDkpJyk7CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9tbHRybmcyIFdIRVJFIGlkMSA9 ICdbOCw5KScgQU5EIHZhbGlkX2F0IEA+ICcyMDE5LTAxLTAxJzo6ZGF0ZTsKK1NFTEVDVCAqIEZS T00gdGVtcG9yYWxfZmsyX21sdHJuZzJtbHRybmcgV0hFUkUgaWQgPSAnWzIwMCwyMDEpJyBPUkRF UiBCWSBpZCwgdmFsaWRfYXQ7CisgICAgaWQgICAgIHwgICAgICAgICB2YWxpZF9hdCAgICAgICAg ICB8IHBhcmVudF9pZDEgfCBwYXJlbnRfaWQyIAorLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0KKyBbMjAwLDIwMSkgfCB7WzIw MTgtMDEtMDEsMjAyMC0wMS0wMSl9IHwgWy0xLDApICAgICB8IFstMSwwKQorIFsyMDAsMjAxKSB8 IHtbMjAyMC0wMS0wMSwyMDIxLTAxLTAxKX0gfCBbOCw5KSAgICAgIHwgWzgsOSkKKygyIHJvd3Mp CisKKy0tCistLSB0ZXN0IEZLIHJlZmVyZW5jZWQgZGVsZXRlcyBTRVQgREVGQVVMVCAodHdvIHNj YWxhciBjb2xzLCBTRVQgREVGQVVMVCBzdWJzZXQpCistLQorVFJVTkNBVEUgdGVtcG9yYWxfbWx0 cm5nMiwgdGVtcG9yYWxfZmsyX21sdHJuZzJtbHRybmc7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9t bHRybmcyIChpZDEsIGlkMiwgdmFsaWRfYXQpIFZBTFVFUyAoJ1stMSwtMV0nLCAnWzYsNyknLCBk YXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UobnVsbCwgbnVsbCkpKTsKK0lOU0VSVCBJTlRPIHRlbXBv cmFsX21sdHJuZzIgKGlkMSwgaWQyLCB2YWxpZF9hdCkgVkFMVUVTICgnWzYsNyknLCAnWzYsNykn LCBkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpKSk7 CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9mazJfbWx0cm5nMm1sdHJuZyAoaWQsIHZhbGlkX2F0LCBw YXJlbnRfaWQxLCBwYXJlbnRfaWQyKSBWQUxVRVMgKCdbMTAwLDEwMSknLCBkYXRlbXVsdGlyYW5n ZShkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpKSwgJ1s2LDcpJywgJ1s2LDcp Jyk7CistLSBmYWlscyBiZWNhdXNlIHlvdSBjYW4ndCBzZXQgdGhlIFBFUklPRCBjb2x1bW46CitB TFRFUiBUQUJMRSB0ZW1wb3JhbF9mazJfbWx0cm5nMm1sdHJuZworICBBTFRFUiBDT0xVTU4gcGFy ZW50X2lkMSBTRVQgREVGQVVMVCAnWy0xLC0xXScsCisgIERST1AgQ09OU1RSQUlOVCB0ZW1wb3Jh bF9mazJfbWx0cm5nMm1sdHJuZ19maywKKyAgQUREIENPTlNUUkFJTlQgdGVtcG9yYWxfZmsyX21s dHJuZzJtbHRybmdfZmsKKyAgICBGT1JFSUdOIEtFWSAocGFyZW50X2lkMSwgcGFyZW50X2lkMiwg UEVSSU9EIHZhbGlkX2F0KQorICAgIFJFRkVSRU5DRVMgdGVtcG9yYWxfbWx0cm5nMgorICAgIE9O IERFTEVURSBTRVQgREVGQVVMVCAodmFsaWRfYXQpIE9OIFVQREFURSBTRVQgREVGQVVMVDsKK0VS Uk9SOiAgY29sdW1uICJ2YWxpZF9hdCIgcmVmZXJlbmNlZCBpbiBPTiBERUxFVEUgU0VUIGFjdGlv biBjYW5ub3QgYmUgUEVSSU9ECistLSBvazoKK0FMVEVSIFRBQkxFIHRlbXBvcmFsX2ZrMl9tbHRy bmcybWx0cm5nCisgIEFMVEVSIENPTFVNTiBwYXJlbnRfaWQxIFNFVCBERUZBVUxUICdbLTEsLTFd JywKKyAgRFJPUCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrMl9tbHRybmcybWx0cm5nX2ZrLAorICBB REQgQ09OU1RSQUlOVCB0ZW1wb3JhbF9mazJfbWx0cm5nMm1sdHJuZ19maworICAgIEZPUkVJR04g S0VZIChwYXJlbnRfaWQxLCBwYXJlbnRfaWQyLCBQRVJJT0QgdmFsaWRfYXQpCisgICAgUkVGRVJF TkNFUyB0ZW1wb3JhbF9tbHRybmcyCisgICAgT04gREVMRVRFIFNFVCBERUZBVUxUIChwYXJlbnRf aWQxKSBPTiBVUERBVEUgU0VUIERFRkFVTFQ7CistLSBsZWZ0b3ZlcnMgb24gYm90aCBzaWRlczoK K0RFTEVURSBGUk9NIHRlbXBvcmFsX21sdHJuZzIgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgKGRh dGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAxOS0wMS0wMScsICcyMDIwLTAxLTAxJykpKSBXSEVS RSBpZDEgPSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9mazJfbWx0cm5nMm1sdHJu ZyBXSEVSRSBpZCA9ICdbMTAwLDEwMSknIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKyAgICBpZCAg ICAgfCAgICAgICAgICAgICAgICAgICAgIHZhbGlkX2F0ICAgICAgICAgICAgICAgICAgICAgIHwg cGFyZW50X2lkMSB8IHBhcmVudF9pZDIgCistLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0t LQorIFsxMDAsMTAxKSB8IHtbMjAxOC0wMS0wMSwyMDE5LTAxLTAxKSxbMjAyMC0wMS0wMSwyMDIx LTAxLTAxKX0gfCBbNiw3KSAgICAgIHwgWzYsNykKKyBbMTAwLDEwMSkgfCB7WzIwMTktMDEtMDEs MjAyMC0wMS0wMSl9ICAgICAgICAgICAgICAgICAgICAgICAgIHwgWy0xLDApICAgICB8IFs2LDcp CisoMiByb3dzKQorCistLSBub24tRlBPIHVwZGF0ZToKK0RFTEVURSBGUk9NIHRlbXBvcmFsX21s dHJuZzIgV0hFUkUgaWQxID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX21s dHJuZzJtbHRybmcgV0hFUkUgaWQgPSAnWzEwMCwxMDEpJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7 CisgICAgaWQgICAgIHwgICAgICAgICAgICAgICAgICAgICB2YWxpZF9hdCAgICAgICAgICAgICAg ICAgICAgICB8IHBhcmVudF9pZDEgfCBwYXJlbnRfaWQyIAorLS0tLS0tLS0tLS0rLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLSst LS0tLS0tLS0tLS0KKyBbMTAwLDEwMSkgfCB7WzIwMTgtMDEtMDEsMjAxOS0wMS0wMSksWzIwMjAt MDEtMDEsMjAyMS0wMS0wMSl9IHwgWy0xLDApICAgICB8IFs2LDcpCisgWzEwMCwxMDEpIHwge1sy MDE5LTAxLTAxLDIwMjAtMDEtMDEpfSAgICAgICAgICAgICAgICAgICAgICAgICB8IFstMSwwKSAg ICAgfCBbNiw3KQorKDIgcm93cykKKworLS0gRksgYWNyb3NzIHR3byByZWZlcmVuY2VkIHJvd3M6 CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9tbHRybmcyIChpZDEsIGlkMiwgdmFsaWRfYXQpIFZBTFVF UyAoJ1s4LDkpJywgJ1s4LDkpJywgZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDE4LTAxLTAx JywgJzIwMjAtMDEtMDEnKSkpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfbWx0cm5nMiAoaWQxLCBp ZDIsIHZhbGlkX2F0KSBWQUxVRVMgKCdbOCw5KScsICdbOCw5KScsIGRhdGVtdWx0aXJhbmdlKGRh dGVyYW5nZSgnMjAyMC0wMS0wMScsICcyMDIxLTAxLTAxJykpKTsKK0lOU0VSVCBJTlRPIHRlbXBv cmFsX21sdHJuZzIgKGlkMSwgaWQyLCB2YWxpZF9hdCkgVkFMVUVTICgnWy0xLC0xXScsICdbOCw5 KScsIGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZShudWxsLCBudWxsKSkpOworSU5TRVJUIElOVE8g dGVtcG9yYWxfZmsyX21sdHJuZzJtbHRybmcgKGlkLCB2YWxpZF9hdCwgcGFyZW50X2lkMSwgcGFy ZW50X2lkMikgVkFMVUVTICgnWzIwMCwyMDEpJywgZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcy MDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSksICdbOCw5KScsICdbOCw5KScpOworREVMRVRFIEZS T00gdGVtcG9yYWxfbWx0cm5nMiBXSEVSRSBpZDEgPSAnWzgsOSknIEFORCB2YWxpZF9hdCBAPiAn MjAxOS0wMS0wMSc6OmRhdGU7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9tbHRybmcybWx0 cm5nIFdIRVJFIGlkID0gJ1syMDAsMjAxKScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworICAgIGlk ICAgICB8ICAgICAgICAgdmFsaWRfYXQgICAgICAgICAgfCBwYXJlbnRfaWQxIHwgcGFyZW50X2lk MiAKKy0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0r LS0tLS0tLS0tLS0tCisgWzIwMCwyMDEpIHwge1syMDE4LTAxLTAxLDIwMjAtMDEtMDEpfSB8IFst MSwwKSAgICAgfCBbOCw5KQorIFsyMDAsMjAxKSB8IHtbMjAyMC0wMS0wMSwyMDIxLTAxLTAxKX0g fCBbOCw5KSAgICAgIHwgWzgsOSkKKygyIHJvd3MpCisKKy0tIEZLIHdpdGggYSBjdXN0b20gcmFu Z2UgdHlwZQorQ1JFQVRFIFRZUEUgbXlkYXRlcmFuZ2UgQVMgcmFuZ2Uoc3VidHlwZT1kYXRlKTsK K0NSRUFURSBUQUJMRSB0ZW1wb3JhbF9ybmczICgKKyAgaWQgaW50NHJhbmdlLAorICB2YWxpZF9h dCBteWRhdGVyYW5nZSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ybmczX3BrIFBSSU1BUlkgS0VZ IChpZCwgdmFsaWRfYXQgV0lUSE9VVCBPVkVSTEFQUykKKyk7CitDUkVBVEUgVEFCTEUgdGVtcG9y YWxfZmszX3JuZzJybmcgKAorICBpZCBpbnQ0cmFuZ2UsCisgIHZhbGlkX2F0IG15ZGF0ZXJhbmdl LAorICBwYXJlbnRfaWQgaW50NHJhbmdlLAorICBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrM19ybmcy cm5nX3BrIFBSSU1BUlkgS0VZIChpZCwgdmFsaWRfYXQgV0lUSE9VVCBPVkVSTEFQUyksCisgIENP TlNUUkFJTlQgdGVtcG9yYWxfZmszX3JuZzJybmdfZmsgRk9SRUlHTiBLRVkgKHBhcmVudF9pZCwg UEVSSU9EIHZhbGlkX2F0KQorICAgIFJFRkVSRU5DRVMgdGVtcG9yYWxfcm5nMyAoaWQsIFBFUklP RCB2YWxpZF9hdCkgT04gREVMRVRFIENBU0NBREUKKyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9y bmczIChpZCwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s4LDkpJywgbXlkYXRlcmFuZ2UoJzIwMTgtMDEt MDEnLCAnMjAyMS0wMS0wMScpKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrM19ybmcycm5nIChp ZCwgdmFsaWRfYXQsIHBhcmVudF9pZCkgVkFMVUVTICgnWzUsNiknLCBteWRhdGVyYW5nZSgnMjAx OC0wMS0wMScsICcyMDIxLTAxLTAxJyksICdbOCw5KScpOworREVMRVRFIEZST00gdGVtcG9yYWxf cm5nMyBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDE5LTAxLTAxJyBUTyAnMjAyMC0w MS0wMScgV0hFUkUgaWQgPSAnWzgsOSknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9mazNfcm5n MnJuZyBXSEVSRSBpZCA9ICdbNSw2KSc7CisgIGlkICAgfCAgICAgICAgdmFsaWRfYXQgICAgICAg ICB8IHBhcmVudF9pZCAKKy0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0t LS0tLQorIFs1LDYpIHwgWzIwMTgtMDEtMDEsMjAxOS0wMS0wMSkgfCBbOCw5KQorIFs1LDYpIHwg WzIwMjAtMDEtMDEsMjAyMS0wMS0wMSkgfCBbOCw5KQorKDIgcm93cykKKworRFJPUCBUQUJMRSB0 ZW1wb3JhbF9mazNfcm5nMnJuZzsKK0RST1AgVEFCTEUgdGVtcG9yYWxfcm5nMzsKK0RST1AgVFlQ RSBteWRhdGVyYW5nZTsKKy0tCiAtLSBGSyBiZXR3ZWVuIHBhcnRpdGlvbmVkIHRhYmxlczogcmFu Z2VzCiAtLQogQ1JFQVRFIFRBQkxFIHRlbXBvcmFsX3BhcnRpdGlvbmVkX3JuZyAoCkBAIC0yNDIx LDggKzM2MjIsOCBAQCBDUkVBVEUgVEFCTEUgdGVtcG9yYWxfcGFydGl0aW9uZWRfcm5nICgKICAg bmFtZSB0ZXh0LAogICBDT05TVFJBSU5UIHRlbXBvcmFsX3Bhcml0aW9uZWRfcm5nX3BrIFBSSU1B UlkgS0VZIChpZCwgdmFsaWRfYXQgV0lUSE9VVCBPVkVSTEFQUykKICkgUEFSVElUSU9OIEJZIExJ U1QgKGlkKTsKLUNSRUFURSBUQUJMRSB0cDEgcGFydGl0aW9uIE9GIHRlbXBvcmFsX3BhcnRpdGlv bmVkX3JuZyBGT1IgVkFMVUVTIElOICgnWzEsMiknLCAnWzMsNCknLCAnWzUsNiknLCAnWzcsOCkn LCAnWzksMTApJywgJ1sxMSwxMiknKTsKLUNSRUFURSBUQUJMRSB0cDIgcGFydGl0aW9uIE9GIHRl bXBvcmFsX3BhcnRpdGlvbmVkX3JuZyBGT1IgVkFMVUVTIElOICgnWzIsMyknLCAnWzQsNSknLCAn WzYsNyknLCAnWzgsOSknLCAnWzEwLDExKScsICdbMTIsMTMpJyk7CitDUkVBVEUgVEFCTEUgdHAx IFBBUlRJVElPTiBPRiB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ybmcgRk9SIFZBTFVFUyBJTiAoJ1sx LDIpJywgJ1szLDQpJywgJ1s1LDYpJywgJ1s3LDgpJywgJ1s5LDEwKScsICdbMTEsMTIpJywgJ1sx MywxNCknLCAnWzE1LDE2KScsICdbMTcsMTgpJywgJ1sxOSwyMCknLCAnWzIxLDIyKScsICdbMjMs MjQpJyk7CitDUkVBVEUgVEFCTEUgdHAyIFBBUlRJVElPTiBPRiB0ZW1wb3JhbF9wYXJ0aXRpb25l ZF9ybmcgRk9SIFZBTFVFUyBJTiAoJ1swLDEpJywgJ1syLDMpJywgJ1s0LDUpJywgJ1s2LDcpJywg J1s4LDkpJywgJ1sxMCwxMSknLCAnWzEyLDEzKScsICdbMTQsMTUpJywgJ1sxNiwxNyknLCAnWzE4 LDE5KScsICdbMjAsMjEpJywgJ1syMiwyMyknLCAnWzI0LDI1KScpOwogSU5TRVJUIElOVE8gdGVt cG9yYWxfcGFydGl0aW9uZWRfcm5nIChpZCwgdmFsaWRfYXQsIG5hbWUpIFZBTFVFUwogICAoJ1sx LDIpJywgZGF0ZXJhbmdlKCcyMDAwLTAxLTAxJywgJzIwMDAtMDItMDEnKSwgJ29uZScpLAogICAo J1sxLDIpJywgZGF0ZXJhbmdlKCcyMDAwLTAyLTAxJywgJzIwMDAtMDMtMDEnKSwgJ29uZScpLApA QCAtMjQzNSw4ICszNjM2LDggQEAgQ1JFQVRFIFRBQkxFIHRlbXBvcmFsX3BhcnRpdGlvbmVkX2Zr X3JuZzJybmcgKAogICBDT05TVFJBSU5UIHRlbXBvcmFsX3BhcnRpdGlvbmVkX2ZrX3JuZzJybmdf ZmsgRk9SRUlHTiBLRVkgKHBhcmVudF9pZCwgUEVSSU9EIHZhbGlkX2F0KQogICAgIFJFRkVSRU5D RVMgdGVtcG9yYWxfcGFydGl0aW9uZWRfcm5nIChpZCwgUEVSSU9EIHZhbGlkX2F0KQogKSBQQVJU SVRJT04gQlkgTElTVCAoaWQpOwotQ1JFQVRFIFRBQkxFIHRma3AxIHBhcnRpdGlvbiBPRiB0ZW1w b3JhbF9wYXJ0aXRpb25lZF9ma19ybmcycm5nIEZPUiBWQUxVRVMgSU4gKCdbMSwyKScsICdbMyw0 KScsICdbNSw2KScsICdbNyw4KScsICdbOSwxMCknLCAnWzExLDEyKScpOwotQ1JFQVRFIFRBQkxF IHRma3AyIHBhcnRpdGlvbiBPRiB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ma19ybmcycm5nIEZPUiBW QUxVRVMgSU4gKCdbMiwzKScsICdbNCw1KScsICdbNiw3KScsICdbOCw5KScsICdbMTAsMTEpJywg J1sxMiwxMyknKTsKK0NSRUFURSBUQUJMRSB0ZmtwMSBQQVJUSVRJT04gT0YgdGVtcG9yYWxfcGFy dGl0aW9uZWRfZmtfcm5nMnJuZyBGT1IgVkFMVUVTIElOICgnWzEsMiknLCAnWzMsNCknLCAnWzUs NiknLCAnWzcsOCknLCAnWzksMTApJywgJ1sxMSwxMiknLCAnWzEzLDE0KScsICdbMTUsMTYpJywg J1sxNywxOCknLCAnWzE5LDIwKScsICdbMjEsMjIpJywgJ1syMywyNCknKTsKK0NSRUFURSBUQUJM RSB0ZmtwMiBQQVJUSVRJT04gT0YgdGVtcG9yYWxfcGFydGl0aW9uZWRfZmtfcm5nMnJuZyBGT1Ig VkFMVUVTIElOICgnWzAsMSknLCAnWzIsMyknLCAnWzQsNSknLCAnWzYsNyknLCAnWzgsOSknLCAn WzEwLDExKScsICdbMTIsMTMpJywgJ1sxNCwxNSknLCAnWzE2LDE3KScsICdbMTgsMTkpJywgJ1sy MCwyMSknLCAnWzIyLDIzKScsICdbMjQsMjUpJyk7CiAtLQogLS0gcGFydGl0aW9uZWQgRksgcmVm ZXJlbmNpbmcgaW5zZXJ0cwogLS0KQEAgLTI0NzgsNyArMzY3OSw3IEBAIFVQREFURSB0ZW1wb3Jh bF9wYXJ0aXRpb25lZF9ybmcgU0VUIHZhbGlkX2F0ID0gZGF0ZXJhbmdlKCcyMDE2LTAyLTAxJywg JzIwMTYtMDMtCiAtLSBzaG91bGQgZmFpbDoKIFVQREFURSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9y bmcgU0VUIHZhbGlkX2F0ID0gZGF0ZXJhbmdlKCcyMDE2LTAxLTAxJywgJzIwMTYtMDItMDEnKQog ICBXSEVSRSBpZCA9ICdbNSw2KScgQU5EIHZhbGlkX2F0ID0gZGF0ZXJhbmdlKCcyMDE4LTAxLTAx JywgJzIwMTgtMDItMDEnKTsKLUVSUk9SOiAgdXBkYXRlIG9yIGRlbGV0ZSBvbiB0YWJsZSAidHAx IiB2aW9sYXRlcyBmb3JlaWduIGtleSBjb25zdHJhaW50ICJ0ZW1wb3JhbF9wYXJ0aXRpb25lZF9m a19ybmcycm5nX2ZrXzEiIG9uIHRhYmxlICJ0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ma19ybmcycm5n IgorRVJST1I6ICB1cGRhdGUgb3IgZGVsZXRlIG9uIHRhYmxlICJ0cDEiIHZpb2xhdGVzIGZvcmVp Z24ga2V5IGNvbnN0cmFpbnQgInRlbXBvcmFsX3BhcnRpdGlvbmVkX2ZrX3JuZzJybmdfZmtfMiIg b24gdGFibGUgInRlbXBvcmFsX3BhcnRpdGlvbmVkX2ZrX3JuZzJybmciCiBERVRBSUw6ICBLZXkg KGlkLCB2YWxpZF9hdCk9KFs1LDYpLCBbMjAxOC0wMS0wMSwyMDE4LTAyLTAxKSkgaXMgc3RpbGwg cmVmZXJlbmNlZCBmcm9tIHRhYmxlICJ0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ma19ybmcycm5nIi4K IC0tCiAtLSBwYXJ0aXRpb25lZCBGSyByZWZlcmVuY2VkIGRlbGV0ZXMgTk8gQUNUSU9OCkBAIC0y NDkwLDM3ICszNjkxLDE2MiBAQCBJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ma19y bmcycm5nIChpZCwgdmFsaWRfYXQsIHBhcmVudF9pZCkgVkFMVUVTICgnWwogREVMRVRFIEZST00g dGVtcG9yYWxfcGFydGl0aW9uZWRfcm5nIFdIRVJFIGlkID0gJ1s1LDYpJyBBTkQgdmFsaWRfYXQg PSBkYXRlcmFuZ2UoJzIwMTgtMDItMDEnLCAnMjAxOC0wMy0wMScpOwogLS0gc2hvdWxkIGZhaWw6 CiBERUxFVEUgRlJPTSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ybmcgV0hFUkUgaWQgPSAnWzUsNikn IEFORCB2YWxpZF9hdCA9IGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDE4LTAyLTAxJyk7Ci1F UlJPUjogIHVwZGF0ZSBvciBkZWxldGUgb24gdGFibGUgInRwMSIgdmlvbGF0ZXMgZm9yZWlnbiBr ZXkgY29uc3RyYWludCAidGVtcG9yYWxfcGFydGl0aW9uZWRfZmtfcm5nMnJuZ19ma18xIiBvbiB0 YWJsZSAidGVtcG9yYWxfcGFydGl0aW9uZWRfZmtfcm5nMnJuZyIKK0VSUk9SOiAgdXBkYXRlIG9y IGRlbGV0ZSBvbiB0YWJsZSAidHAxIiB2aW9sYXRlcyBmb3JlaWduIGtleSBjb25zdHJhaW50ICJ0 ZW1wb3JhbF9wYXJ0aXRpb25lZF9ma19ybmcycm5nX2ZrXzIiIG9uIHRhYmxlICJ0ZW1wb3JhbF9w YXJ0aXRpb25lZF9ma19ybmcycm5nIgogREVUQUlMOiAgS2V5IChpZCwgdmFsaWRfYXQpPShbNSw2 KSwgWzIwMTgtMDEtMDEsMjAxOC0wMi0wMSkpIGlzIHN0aWxsIHJlZmVyZW5jZWQgZnJvbSB0YWJs ZSAidGVtcG9yYWxfcGFydGl0aW9uZWRfZmtfcm5nMnJuZyIuCiAtLQogLS0gcGFydGl0aW9uZWQg RksgcmVmZXJlbmNlZCB1cGRhdGVzIENBU0NBREUKIC0tCitUUlVOQ0FURSB0ZW1wb3JhbF9wYXJ0 aXRpb25lZF9ybmcsIHRlbXBvcmFsX3BhcnRpdGlvbmVkX2ZrX3JuZzJybmc7CitJTlNFUlQgSU5U TyB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ybmcgKGlkLCB2YWxpZF9hdCkgVkFMVUVTICgnWzYsNykn LCBkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpKTsKK0lOU0VSVCBJTlRPIHRl bXBvcmFsX3BhcnRpdGlvbmVkX2ZrX3JuZzJybmcgKGlkLCB2YWxpZF9hdCwgcGFyZW50X2lkKSBW QUxVRVMgKCdbNCw1KScsIGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJyksICdb Niw3KScpOwogQUxURVIgVEFCTEUgdGVtcG9yYWxfcGFydGl0aW9uZWRfZmtfcm5nMnJuZwogICBE Uk9QIENPTlNUUkFJTlQgdGVtcG9yYWxfcGFydGl0aW9uZWRfZmtfcm5nMnJuZ19maywKICAgQURE IENPTlNUUkFJTlQgdGVtcG9yYWxfcGFydGl0aW9uZWRfZmtfcm5nMnJuZ19mawogICAgIEZPUkVJ R04gS0VZIChwYXJlbnRfaWQsIFBFUklPRCB2YWxpZF9hdCkKICAgICBSRUZFUkVOQ0VTIHRlbXBv cmFsX3BhcnRpdGlvbmVkX3JuZwogICAgIE9OIERFTEVURSBDQVNDQURFIE9OIFVQREFURSBDQVND QURFOwotRVJST1I6ICB1bnN1cHBvcnRlZCBPTiBVUERBVEUgYWN0aW9uIGZvciBmb3JlaWduIGtl eSBjb25zdHJhaW50IHVzaW5nIFBFUklPRAorVVBEQVRFIHRlbXBvcmFsX3BhcnRpdGlvbmVkX3Ju ZyBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDE5LTAxLTAxJyBUTyAnMjAyMC0wMS0w MScgU0VUIGlkID0gJ1s3LDgpJyBXSEVSRSBpZCA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRl bXBvcmFsX3BhcnRpdGlvbmVkX2ZrX3JuZzJybmcgV0hFUkUgaWQgPSAnWzQsNSknOworICBpZCAg IHwgICAgICAgIHZhbGlkX2F0ICAgICAgICAgfCBwYXJlbnRfaWQgCistLS0tLS0tKy0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0KKyBbNCw1KSB8IFsyMDE5LTAxLTAxLDIwMjAt MDEtMDEpIHwgWzcsOCkKKyBbNCw1KSB8IFsyMDE4LTAxLTAxLDIwMTktMDEtMDEpIHwgWzYsNykK KyBbNCw1KSB8IFsyMDIwLTAxLTAxLDIwMjEtMDEtMDEpIHwgWzYsNykKKygzIHJvd3MpCisKK1VQ REFURSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ybmcgU0VUIGlkID0gJ1s3LDgpJyBXSEVSRSBpZCA9 ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX3BhcnRpdGlvbmVkX2ZrX3JuZzJybmcg V0hFUkUgaWQgPSAnWzQsNSknOworICBpZCAgIHwgICAgICAgIHZhbGlkX2F0ICAgICAgICAgfCBw YXJlbnRfaWQgCistLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0K KyBbNCw1KSB8IFsyMDE5LTAxLTAxLDIwMjAtMDEtMDEpIHwgWzcsOCkKKyBbNCw1KSB8IFsyMDE4 LTAxLTAxLDIwMTktMDEtMDEpIHwgWzcsOCkKKyBbNCw1KSB8IFsyMDIwLTAxLTAxLDIwMjEtMDEt MDEpIHwgWzcsOCkKKygzIHJvd3MpCisKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BhcnRpdGlvbmVk X3JuZyAoaWQsIHZhbGlkX2F0KSBWQUxVRVMgKCdbMTUsMTYpJywgZGF0ZXJhbmdlKCcyMDE4LTAx LTAxJywgJzIwMjAtMDEtMDEnKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9y bmcgKGlkLCB2YWxpZF9hdCkgVkFMVUVTICgnWzE1LDE2KScsIGRhdGVyYW5nZSgnMjAyMC0wMS0w MScsICcyMDIxLTAxLTAxJykpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGFydGl0aW9uZWRfZmtf cm5nMnJuZyAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQpIFZBTFVFUyAoJ1sxMCwxMSknLCBkYXRl cmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpLCAnWzE1LDE2KScpOworVVBEQVRFIHRl bXBvcmFsX3BhcnRpdGlvbmVkX3JuZyBTRVQgaWQgPSAnWzE2LDE3KScgV0hFUkUgaWQgPSAnWzE1 LDE2KScgQU5EIHZhbGlkX2F0IEA+ICcyMDE5LTAxLTAxJzo6ZGF0ZTsKK1NFTEVDVCAqIEZST00g dGVtcG9yYWxfcGFydGl0aW9uZWRfZmtfcm5nMnJuZyBXSEVSRSBpZCA9ICdbMTAsMTEpJzsKKyAg IGlkICAgIHwgICAgICAgIHZhbGlkX2F0ICAgICAgICAgfCBwYXJlbnRfaWQgCistLS0tLS0tLS0r LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLQorIFsxMCwxMSkgfCBbMjAxOC0w MS0wMSwyMDIwLTAxLTAxKSB8IFsxNiwxNykKKyBbMTAsMTEpIHwgWzIwMjAtMDEtMDEsMjAyMS0w MS0wMSkgfCBbMTUsMTYpCisoMiByb3dzKQorCiAtLQogLS0gcGFydGl0aW9uZWQgRksgcmVmZXJl bmNlZCBkZWxldGVzIENBU0NBREUKIC0tCitUUlVOQ0FURSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9y bmcsIHRlbXBvcmFsX3BhcnRpdGlvbmVkX2ZrX3JuZzJybmc7CitJTlNFUlQgSU5UTyB0ZW1wb3Jh bF9wYXJ0aXRpb25lZF9ybmcgKGlkLCB2YWxpZF9hdCkgVkFMVUVTICgnWzgsOSknLCBkYXRlcmFu Z2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3Bh cnRpdGlvbmVkX2ZrX3JuZzJybmcgKGlkLCB2YWxpZF9hdCwgcGFyZW50X2lkKSBWQUxVRVMgKCdb NSw2KScsIGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJyksICdbOCw5KScpOwor REVMRVRFIEZST00gdGVtcG9yYWxfcGFydGl0aW9uZWRfcm5nIEZPUiBQT1JUSU9OIE9GIHZhbGlk X2F0IEZST00gJzIwMTktMDEtMDEnIFRPICcyMDIwLTAxLTAxJyBXSEVSRSBpZCA9ICdbOCw5KSc7 CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX3BhcnRpdGlvbmVkX2ZrX3JuZzJybmcgV0hFUkUgaWQg PSAnWzUsNiknOworICBpZCAgIHwgICAgICAgIHZhbGlkX2F0ICAgICAgICAgfCBwYXJlbnRfaWQg CistLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0KKyBbNSw2KSB8 IFsyMDE4LTAxLTAxLDIwMTktMDEtMDEpIHwgWzgsOSkKKyBbNSw2KSB8IFsyMDIwLTAxLTAxLDIw MjEtMDEtMDEpIHwgWzgsOSkKKygyIHJvd3MpCisKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3BhcnRp dGlvbmVkX3JuZyBXSEVSRSBpZCA9ICdbOCw5KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX3Bh cnRpdGlvbmVkX2ZrX3JuZzJybmcgV0hFUkUgaWQgPSAnWzUsNiknOworIGlkIHwgdmFsaWRfYXQg fCBwYXJlbnRfaWQgCistLS0tKy0tLS0tLS0tLS0rLS0tLS0tLS0tLS0KKygwIHJvd3MpCisKK0lO U0VSVCBJTlRPIHRlbXBvcmFsX3BhcnRpdGlvbmVkX3JuZyAoaWQsIHZhbGlkX2F0KSBWQUxVRVMg KCdbMTcsMTgpJywgZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjAtMDEtMDEnKSk7CitJTlNF UlQgSU5UTyB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ybmcgKGlkLCB2YWxpZF9hdCkgVkFMVUVTICgn WzE3LDE4KScsIGRhdGVyYW5nZSgnMjAyMC0wMS0wMScsICcyMDIxLTAxLTAxJykpOworSU5TRVJU IElOVE8gdGVtcG9yYWxfcGFydGl0aW9uZWRfZmtfcm5nMnJuZyAoaWQsIHZhbGlkX2F0LCBwYXJl bnRfaWQpIFZBTFVFUyAoJ1sxMSwxMiknLCBkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0w MS0wMScpLCAnWzE3LDE4KScpOworREVMRVRFIEZST00gdGVtcG9yYWxfcGFydGl0aW9uZWRfcm5n IFdIRVJFIGlkID0gJ1sxNywxOCknIEFORCB2YWxpZF9hdCBAPiAnMjAxOS0wMS0wMSc6OmRhdGU7 CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX3BhcnRpdGlvbmVkX2ZrX3JuZzJybmcgV0hFUkUgaWQg PSAnWzExLDEyKSc7CisgICBpZCAgICB8ICAgICAgICB2YWxpZF9hdCAgICAgICAgIHwgcGFyZW50 X2lkIAorLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0KKyBb MTEsMTIpIHwgWzIwMjAtMDEtMDEsMjAyMS0wMS0wMSkgfCBbMTcsMTgpCisoMSByb3cpCisKIC0t CiAtLSBwYXJ0aXRpb25lZCBGSyByZWZlcmVuY2VkIHVwZGF0ZXMgU0VUIE5VTEwKIC0tCitUUlVO Q0FURSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ybmcsIHRlbXBvcmFsX3BhcnRpdGlvbmVkX2ZrX3Ju ZzJybmc7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ybmcgKGlkLCB2YWxpZF9h dCkgVkFMVUVTICgnWzksMTApJywgZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEn KSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ma19ybmcycm5nIChpZCwgdmFs aWRfYXQsIHBhcmVudF9pZCkgVkFMVUVTICgnWzYsNyknLCBkYXRlcmFuZ2UoJzIwMTgtMDEtMDEn LCAnMjAyMS0wMS0wMScpLCAnWzksMTApJyk7CiBBTFRFUiBUQUJMRSB0ZW1wb3JhbF9wYXJ0aXRp b25lZF9ma19ybmcycm5nCiAgIERST1AgQ09OU1RSQUlOVCB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9m a19ybmcycm5nX2ZrLAogICBBREQgQ09OU1RSQUlOVCB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ma19y bmcycm5nX2ZrCiAgICAgRk9SRUlHTiBLRVkgKHBhcmVudF9pZCwgUEVSSU9EIHZhbGlkX2F0KQog ICAgIFJFRkVSRU5DRVMgdGVtcG9yYWxfcGFydGl0aW9uZWRfcm5nCiAgICAgT04gREVMRVRFIFNF VCBOVUxMIE9OIFVQREFURSBTRVQgTlVMTDsKLUVSUk9SOiAgdW5zdXBwb3J0ZWQgT04gVVBEQVRF IGFjdGlvbiBmb3IgZm9yZWlnbiBrZXkgY29uc3RyYWludCB1c2luZyBQRVJJT0QKK1VQREFURSB0 ZW1wb3JhbF9wYXJ0aXRpb25lZF9ybmcgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAx OS0wMS0wMScgVE8gJzIwMjAtMDEtMDEnIFNFVCBpZCA9ICdbMTAsMTEpJyBXSEVSRSBpZCA9ICdb OSwxMCknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ma19ybmcycm5nIFdI RVJFIGlkID0gJ1s2LDcpJzsKKyAgaWQgICB8ICAgICAgICB2YWxpZF9hdCAgICAgICAgIHwgcGFy ZW50X2lkIAorLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tCisg WzYsNykgfCBbMjAxOS0wMS0wMSwyMDIwLTAxLTAxKSB8IAorIFs2LDcpIHwgWzIwMTgtMDEtMDEs MjAxOS0wMS0wMSkgfCBbOSwxMCkKKyBbNiw3KSB8IFsyMDIwLTAxLTAxLDIwMjEtMDEtMDEpIHwg WzksMTApCisoMyByb3dzKQorCitVUERBVEUgdGVtcG9yYWxfcGFydGl0aW9uZWRfcm5nIFNFVCBp ZCA9ICdbMTAsMTEpJyBXSEVSRSBpZCA9ICdbOSwxMCknOworU0VMRUNUICogRlJPTSB0ZW1wb3Jh bF9wYXJ0aXRpb25lZF9ma19ybmcycm5nIFdIRVJFIGlkID0gJ1s2LDcpJzsKKyAgaWQgICB8ICAg ICAgICB2YWxpZF9hdCAgICAgICAgIHwgcGFyZW50X2lkIAorLS0tLS0tLSstLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tCisgWzYsNykgfCBbMjAxOS0wMS0wMSwyMDIwLTAxLTAx KSB8IAorIFs2LDcpIHwgWzIwMTgtMDEtMDEsMjAxOS0wMS0wMSkgfCAKKyBbNiw3KSB8IFsyMDIw LTAxLTAxLDIwMjEtMDEtMDEpIHwgCisoMyByb3dzKQorCitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9w YXJ0aXRpb25lZF9ybmcgKGlkLCB2YWxpZF9hdCkgVkFMVUVTICgnWzE4LDE5KScsIGRhdGVyYW5n ZSgnMjAxOC0wMS0wMScsICcyMDIwLTAxLTAxJykpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGFy dGl0aW9uZWRfcm5nIChpZCwgdmFsaWRfYXQpIFZBTFVFUyAoJ1sxOCwxOSknLCBkYXRlcmFuZ2Uo JzIwMjAtMDEtMDEnLCAnMjAyMS0wMS0wMScpKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BhcnRp dGlvbmVkX2ZrX3JuZzJybmcgKGlkLCB2YWxpZF9hdCwgcGFyZW50X2lkKSBWQUxVRVMgKCdbMTIs MTMpJywgZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSwgJ1sxOCwxOSknKTsK K1VQREFURSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ybmcgU0VUIGlkID0gJ1sxOSwyMCknIFdIRVJF IGlkID0gJ1sxOCwxOSknIEFORCB2YWxpZF9hdCBAPiAnMjAxOS0wMS0wMSc6OmRhdGU7CitTRUxF Q1QgKiBGUk9NIHRlbXBvcmFsX3BhcnRpdGlvbmVkX2ZrX3JuZzJybmcgV0hFUkUgaWQgPSAnWzEy LDEzKSc7CisgICBpZCAgICB8ICAgICAgICB2YWxpZF9hdCAgICAgICAgIHwgcGFyZW50X2lkIAor LS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0KKyBbMTIsMTMp IHwgWzIwMTgtMDEtMDEsMjAyMC0wMS0wMSkgfCAKKyBbMTIsMTMpIHwgWzIwMjAtMDEtMDEsMjAy MS0wMS0wMSkgfCBbMTgsMTkpCisoMiByb3dzKQorCiAtLQogLS0gcGFydGl0aW9uZWQgRksgcmVm ZXJlbmNlZCBkZWxldGVzIFNFVCBOVUxMCiAtLQorVFJVTkNBVEUgdGVtcG9yYWxfcGFydGl0aW9u ZWRfcm5nLCB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ma19ybmcycm5nOworSU5TRVJUIElOVE8gdGVt cG9yYWxfcGFydGl0aW9uZWRfcm5nIChpZCwgdmFsaWRfYXQpIFZBTFVFUyAoJ1sxMSwxMiknLCBk YXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpKTsKK0lOU0VSVCBJTlRPIHRlbXBv cmFsX3BhcnRpdGlvbmVkX2ZrX3JuZzJybmcgKGlkLCB2YWxpZF9hdCwgcGFyZW50X2lkKSBWQUxV RVMgKCdbNyw4KScsIGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJyksICdbMTEs MTIpJyk7CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ybmcgRk9SIFBPUlRJT04g T0YgdmFsaWRfYXQgRlJPTSAnMjAxOS0wMS0wMScgVE8gJzIwMjAtMDEtMDEnIFdIRVJFIGlkID0g J1sxMSwxMiknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ma19ybmcycm5n IFdIRVJFIGlkID0gJ1s3LDgpJzsKKyAgaWQgICB8ICAgICAgICB2YWxpZF9hdCAgICAgICAgIHwg cGFyZW50X2lkIAorLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0t CisgWzcsOCkgfCBbMjAxOS0wMS0wMSwyMDIwLTAxLTAxKSB8IAorIFs3LDgpIHwgWzIwMTgtMDEt MDEsMjAxOS0wMS0wMSkgfCBbMTEsMTIpCisgWzcsOCkgfCBbMjAyMC0wMS0wMSwyMDIxLTAxLTAx KSB8IFsxMSwxMikKKygzIHJvd3MpCisKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3BhcnRpdGlvbmVk X3JuZyBXSEVSRSBpZCA9ICdbMTEsMTIpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfcGFydGl0 aW9uZWRfZmtfcm5nMnJuZyBXSEVSRSBpZCA9ICdbNyw4KSc7CisgIGlkICAgfCAgICAgICAgdmFs aWRfYXQgICAgICAgICB8IHBhcmVudF9pZCAKKy0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLSstLS0tLS0tLS0tLQorIFs3LDgpIHwgWzIwMTktMDEtMDEsMjAyMC0wMS0wMSkgfCAKKyBb Nyw4KSB8IFsyMDE4LTAxLTAxLDIwMTktMDEtMDEpIHwgCisgWzcsOCkgfCBbMjAyMC0wMS0wMSwy MDIxLTAxLTAxKSB8IAorKDMgcm93cykKKworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGFydGl0aW9u ZWRfcm5nIChpZCwgdmFsaWRfYXQpIFZBTFVFUyAoJ1syMCwyMSknLCBkYXRlcmFuZ2UoJzIwMTgt MDEtMDEnLCAnMjAyMC0wMS0wMScpKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BhcnRpdGlvbmVk X3JuZyAoaWQsIHZhbGlkX2F0KSBWQUxVRVMgKCdbMjAsMjEpJywgZGF0ZXJhbmdlKCcyMDIwLTAx LTAxJywgJzIwMjEtMDEtMDEnKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9m a19ybmcycm5nIChpZCwgdmFsaWRfYXQsIHBhcmVudF9pZCkgVkFMVUVTICgnWzEzLDE0KScsIGRh dGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJyksICdbMjAsMjEpJyk7CitERUxFVEUg RlJPTSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ybmcgV0hFUkUgaWQgPSAnWzIwLDIxKScgQU5EIHZh bGlkX2F0IEA+ICcyMDE5LTAxLTAxJzo6ZGF0ZTsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfcGFy dGl0aW9uZWRfZmtfcm5nMnJuZyBXSEVSRSBpZCA9ICdbMTMsMTQpJzsKKyAgIGlkICAgIHwgICAg ICAgIHZhbGlkX2F0ICAgICAgICAgfCBwYXJlbnRfaWQgCistLS0tLS0tLS0rLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLQorIFsxMywxNCkgfCBbMjAxOC0wMS0wMSwyMDIwLTAx LTAxKSB8IAorIFsxMywxNCkgfCBbMjAyMC0wMS0wMSwyMDIxLTAxLTAxKSB8IFsyMCwyMSkKKygy IHJvd3MpCisKIC0tCiAtLSBwYXJ0aXRpb25lZCBGSyByZWZlcmVuY2VkIHVwZGF0ZXMgU0VUIERF RkFVTFQKIC0tCitUUlVOQ0FURSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ybmcsIHRlbXBvcmFsX3Bh cnRpdGlvbmVkX2ZrX3JuZzJybmc7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9y bmcgKGlkLCB2YWxpZF9hdCkgVkFMVUVTICgnWzAsMSknLCBkYXRlcmFuZ2UobnVsbCwgbnVsbCkp OworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGFydGl0aW9uZWRfcm5nIChpZCwgdmFsaWRfYXQpIFZB TFVFUyAoJ1sxMiwxMyknLCBkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpKTsK K0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BhcnRpdGlvbmVkX2ZrX3JuZzJybmcgKGlkLCB2YWxpZF9h dCwgcGFyZW50X2lkKSBWQUxVRVMgKCdbOCw5KScsIGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcy MDIxLTAxLTAxJyksICdbMTIsMTMpJyk7CiBBTFRFUiBUQUJMRSB0ZW1wb3JhbF9wYXJ0aXRpb25l ZF9ma19ybmcycm5nCiAgIEFMVEVSIENPTFVNTiBwYXJlbnRfaWQgU0VUIERFRkFVTFQgJ1stMSwt MV0nLAogICBEUk9QIENPTlNUUkFJTlQgdGVtcG9yYWxfcGFydGl0aW9uZWRfZmtfcm5nMnJuZ19m aywKQEAgLTI1MjgsMTAgKzM4NTQsNzMgQEAgQUxURVIgVEFCTEUgdGVtcG9yYWxfcGFydGl0aW9u ZWRfZmtfcm5nMnJuZwogICAgIEZPUkVJR04gS0VZIChwYXJlbnRfaWQsIFBFUklPRCB2YWxpZF9h dCkKICAgICBSRUZFUkVOQ0VTIHRlbXBvcmFsX3BhcnRpdGlvbmVkX3JuZwogICAgIE9OIERFTEVU RSBTRVQgREVGQVVMVCBPTiBVUERBVEUgU0VUIERFRkFVTFQ7Ci1FUlJPUjogIHVuc3VwcG9ydGVk IE9OIFVQREFURSBhY3Rpb24gZm9yIGZvcmVpZ24ga2V5IGNvbnN0cmFpbnQgdXNpbmcgUEVSSU9E CitVUERBVEUgdGVtcG9yYWxfcGFydGl0aW9uZWRfcm5nIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0 IEZST00gJzIwMTktMDEtMDEnIFRPICcyMDIwLTAxLTAxJyBTRVQgaWQgPSAnWzEzLDE0KScgV0hF UkUgaWQgPSAnWzEyLDEzKSc7CitFUlJPUjogIGluc2VydCBvciB1cGRhdGUgb24gdGFibGUgInRm a3AyIiB2aW9sYXRlcyBmb3JlaWduIGtleSBjb25zdHJhaW50ICJ0ZW1wb3JhbF9wYXJ0aXRpb25l ZF9ma19ybmcycm5nX2ZrIgorREVUQUlMOiAgS2V5IChwYXJlbnRfaWQsIHZhbGlkX2F0KT0oWy0x LDApLCBbMjAxOS0wMS0wMSwyMDIwLTAxLTAxKSkgaXMgbm90IHByZXNlbnQgaW4gdGFibGUgInRl bXBvcmFsX3BhcnRpdGlvbmVkX3JuZyIuCitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX3BhcnRpdGlv bmVkX2ZrX3JuZzJybmcgV0hFUkUgaWQgPSAnWzgsOSknOworICBpZCAgIHwgICAgICAgIHZhbGlk X2F0ICAgICAgICAgfCBwYXJlbnRfaWQgCistLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0rLS0tLS0tLS0tLS0KKyBbOCw5KSB8IFsyMDE4LTAxLTAxLDIwMjEtMDEtMDEpIHwgWzEyLDEz KQorKDEgcm93KQorCitVUERBVEUgdGVtcG9yYWxfcGFydGl0aW9uZWRfcm5nIFNFVCBpZCA9ICdb MTMsMTQpJyBXSEVSRSBpZCA9ICdbMTIsMTMpJzsKK0VSUk9SOiAgaW5zZXJ0IG9yIHVwZGF0ZSBv biB0YWJsZSAidGZrcDIiIHZpb2xhdGVzIGZvcmVpZ24ga2V5IGNvbnN0cmFpbnQgInRlbXBvcmFs X3BhcnRpdGlvbmVkX2ZrX3JuZzJybmdfZmsiCitERVRBSUw6ICBLZXkgKHBhcmVudF9pZCwgdmFs aWRfYXQpPShbLTEsMCksIFsyMDE4LTAxLTAxLDIwMjEtMDEtMDEpKSBpcyBub3QgcHJlc2VudCBp biB0YWJsZSAidGVtcG9yYWxfcGFydGl0aW9uZWRfcm5nIi4KK1NFTEVDVCAqIEZST00gdGVtcG9y YWxfcGFydGl0aW9uZWRfZmtfcm5nMnJuZyBXSEVSRSBpZCA9ICdbOCw5KSc7CisgIGlkICAgfCAg ICAgICAgdmFsaWRfYXQgICAgICAgICB8IHBhcmVudF9pZCAKKy0tLS0tLS0rLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLQorIFs4LDkpIHwgWzIwMTgtMDEtMDEsMjAyMS0wMS0w MSkgfCBbMTIsMTMpCisoMSByb3cpCisKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BhcnRpdGlvbmVk X3JuZyAoaWQsIHZhbGlkX2F0KSBWQUxVRVMgKCdbMjIsMjMpJywgZGF0ZXJhbmdlKCcyMDE4LTAx LTAxJywgJzIwMjAtMDEtMDEnKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9y bmcgKGlkLCB2YWxpZF9hdCkgVkFMVUVTICgnWzIyLDIzKScsIGRhdGVyYW5nZSgnMjAyMC0wMS0w MScsICcyMDIxLTAxLTAxJykpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGFydGl0aW9uZWRfZmtf cm5nMnJuZyAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQpIFZBTFVFUyAoJ1sxNCwxNSknLCBkYXRl cmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpLCAnWzIyLDIzKScpOworVVBEQVRFIHRl bXBvcmFsX3BhcnRpdGlvbmVkX3JuZyBTRVQgaWQgPSAnWzIzLDI0KScgV0hFUkUgaWQgPSAnWzIy LDIzKScgQU5EIHZhbGlkX2F0IEA+ICcyMDE5LTAxLTAxJzo6ZGF0ZTsKK0VSUk9SOiAgaW5zZXJ0 IG9yIHVwZGF0ZSBvbiB0YWJsZSAidGZrcDIiIHZpb2xhdGVzIGZvcmVpZ24ga2V5IGNvbnN0cmFp bnQgInRlbXBvcmFsX3BhcnRpdGlvbmVkX2ZrX3JuZzJybmdfZmsiCitERVRBSUw6ICBLZXkgKHBh cmVudF9pZCwgdmFsaWRfYXQpPShbLTEsMCksIFsyMDE4LTAxLTAxLDIwMjAtMDEtMDEpKSBpcyBu b3QgcHJlc2VudCBpbiB0YWJsZSAidGVtcG9yYWxfcGFydGl0aW9uZWRfcm5nIi4KK1NFTEVDVCAq IEZST00gdGVtcG9yYWxfcGFydGl0aW9uZWRfZmtfcm5nMnJuZyBXSEVSRSBpZCA9ICdbMTQsMTUp JzsKKyAgIGlkICAgIHwgICAgICAgIHZhbGlkX2F0ICAgICAgICAgfCBwYXJlbnRfaWQgCistLS0t LS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLQorIFsxNCwxNSkgfCBb MjAxOC0wMS0wMSwyMDIxLTAxLTAxKSB8IFsyMiwyMykKKygxIHJvdykKKwogLS0KIC0tIHBhcnRp dGlvbmVkIEZLIHJlZmVyZW5jZWQgZGVsZXRlcyBTRVQgREVGQVVMVAogLS0KK1RSVU5DQVRFIHRl bXBvcmFsX3BhcnRpdGlvbmVkX3JuZywgdGVtcG9yYWxfcGFydGl0aW9uZWRfZmtfcm5nMnJuZzsK K0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BhcnRpdGlvbmVkX3JuZyAoaWQsIHZhbGlkX2F0KSBWQUxV RVMgKCdbMCwxKScsIGRhdGVyYW5nZShudWxsLCBudWxsKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3Jh bF9wYXJ0aXRpb25lZF9ybmcgKGlkLCB2YWxpZF9hdCkgVkFMVUVTICgnWzE0LDE1KScsIGRhdGVy YW5nZSgnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJykpOworSU5TRVJUIElOVE8gdGVtcG9yYWxf cGFydGl0aW9uZWRfZmtfcm5nMnJuZyAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQpIFZBTFVFUyAo J1s5LDEwKScsIGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJyksICdbMTQsMTUp Jyk7CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ybmcgRk9SIFBPUlRJT04gT0Yg dmFsaWRfYXQgRlJPTSAnMjAxOS0wMS0wMScgVE8gJzIwMjAtMDEtMDEnIFdIRVJFIGlkID0gJ1sx NCwxNSknOworRVJST1I6ICBpbnNlcnQgb3IgdXBkYXRlIG9uIHRhYmxlICJ0ZmtwMSIgdmlvbGF0 ZXMgZm9yZWlnbiBrZXkgY29uc3RyYWludCAidGVtcG9yYWxfcGFydGl0aW9uZWRfZmtfcm5nMnJu Z19mayIKK0RFVEFJTDogIEtleSAocGFyZW50X2lkLCB2YWxpZF9hdCk9KFstMSwwKSwgWzIwMTkt MDEtMDEsMjAyMC0wMS0wMSkpIGlzIG5vdCBwcmVzZW50IGluIHRhYmxlICJ0ZW1wb3JhbF9wYXJ0 aXRpb25lZF9ybmciLgorU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ma19ybmcy cm5nIFdIRVJFIGlkID0gJ1s5LDEwKSc7CisgICBpZCAgIHwgICAgICAgIHZhbGlkX2F0ICAgICAg ICAgfCBwYXJlbnRfaWQgCistLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0t LS0tLS0tCisgWzksMTApIHwgWzIwMTgtMDEtMDEsMjAyMS0wMS0wMSkgfCBbMTQsMTUpCisoMSBy b3cpCisKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3BhcnRpdGlvbmVkX3JuZyBXSEVSRSBpZCA9ICdb MTQsMTUpJzsKK0VSUk9SOiAgaW5zZXJ0IG9yIHVwZGF0ZSBvbiB0YWJsZSAidGZrcDEiIHZpb2xh dGVzIGZvcmVpZ24ga2V5IGNvbnN0cmFpbnQgInRlbXBvcmFsX3BhcnRpdGlvbmVkX2ZrX3JuZzJy bmdfZmsiCitERVRBSUw6ICBLZXkgKHBhcmVudF9pZCwgdmFsaWRfYXQpPShbLTEsMCksIFsyMDE4 LTAxLTAxLDIwMjEtMDEtMDEpKSBpcyBub3QgcHJlc2VudCBpbiB0YWJsZSAidGVtcG9yYWxfcGFy dGl0aW9uZWRfcm5nIi4KK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfcGFydGl0aW9uZWRfZmtfcm5n MnJuZyBXSEVSRSBpZCA9ICdbOSwxMCknOworICAgaWQgICB8ICAgICAgICB2YWxpZF9hdCAgICAg ICAgIHwgcGFyZW50X2lkIAorLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0t LS0tLS0tLQorIFs5LDEwKSB8IFsyMDE4LTAxLTAxLDIwMjEtMDEtMDEpIHwgWzE0LDE1KQorKDEg cm93KQorCitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ybmcgKGlkLCB2YWxpZF9h dCkgVkFMVUVTICgnWzI0LDI1KScsIGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIwLTAxLTAx JykpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGFydGl0aW9uZWRfcm5nIChpZCwgdmFsaWRfYXQp IFZBTFVFUyAoJ1syNCwyNSknLCBkYXRlcmFuZ2UoJzIwMjAtMDEtMDEnLCAnMjAyMS0wMS0wMScp KTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BhcnRpdGlvbmVkX2ZrX3JuZzJybmcgKGlkLCB2YWxp ZF9hdCwgcGFyZW50X2lkKSBWQUxVRVMgKCdbMTUsMTYpJywgZGF0ZXJhbmdlKCcyMDE4LTAxLTAx JywgJzIwMjEtMDEtMDEnKSwgJ1syNCwyNSknKTsKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3BhcnRp dGlvbmVkX3JuZyBXSEVSRSBpZCA9ICdbMjQsMjUpJyBBTkQgdmFsaWRfYXQgQD4gJzIwMTktMDEt MDEnOjpkYXRlOworRVJST1I6ICBpbnNlcnQgb3IgdXBkYXRlIG9uIHRhYmxlICJ0ZmtwMSIgdmlv bGF0ZXMgZm9yZWlnbiBrZXkgY29uc3RyYWludCAidGVtcG9yYWxfcGFydGl0aW9uZWRfZmtfcm5n MnJuZ19mayIKK0RFVEFJTDogIEtleSAocGFyZW50X2lkLCB2YWxpZF9hdCk9KFstMSwwKSwgWzIw MTgtMDEtMDEsMjAyMC0wMS0wMSkpIGlzIG5vdCBwcmVzZW50IGluIHRhYmxlICJ0ZW1wb3JhbF9w YXJ0aXRpb25lZF9ybmciLgorU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ma19y bmcycm5nIFdIRVJFIGlkID0gJ1sxNSwxNiknOworICAgaWQgICAgfCAgICAgICAgdmFsaWRfYXQg ICAgICAgICB8IHBhcmVudF9pZCAKKy0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t Ky0tLS0tLS0tLS0tCisgWzE1LDE2KSB8IFsyMDE4LTAxLTAxLDIwMjEtMDEtMDEpIHwgWzI0LDI1 KQorKDEgcm93KQorCiBEUk9QIFRBQkxFIHRlbXBvcmFsX3BhcnRpdGlvbmVkX2ZrX3JuZzJybmc7 CiBEUk9QIFRBQkxFIHRlbXBvcmFsX3BhcnRpdGlvbmVkX3JuZzsKIC0tCkBAIC0yNjE3LDMyICs0 MDA2LDE1MCBAQCBERVRBSUw6ICBLZXkgKGlkLCB2YWxpZF9hdCk9KFs1LDYpLCB7WzIwMTgtMDEt MDEsMjAxOC0wMi0wMSl9KSBpcyBzdGlsbCByZWZlcmVuYwogLS0KIC0tIHBhcnRpdGlvbmVkIEZL IHJlZmVyZW5jZWQgdXBkYXRlcyBDQVNDQURFCiAtLQorVFJVTkNBVEUgdGVtcG9yYWxfcGFydGl0 aW9uZWRfbWx0cm5nLCB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ma19tbHRybmcybWx0cm5nOworSU5T RVJUIElOVE8gdGVtcG9yYWxfcGFydGl0aW9uZWRfbWx0cm5nIChpZCwgdmFsaWRfYXQpIFZBTFVF UyAoJ1s2LDcpJywgZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEt MDEtMDEnKSkpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGFydGl0aW9uZWRfZmtfbWx0cm5nMm1s dHJuZyAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQpIFZBTFVFUyAoJ1s0LDUpJywgZGF0ZW11bHRp cmFuZ2UoZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSksICdbNiw3KScpOwog QUxURVIgVEFCTEUgdGVtcG9yYWxfcGFydGl0aW9uZWRfZmtfbWx0cm5nMm1sdHJuZwogICBEUk9Q IENPTlNUUkFJTlQgdGVtcG9yYWxfcGFydGl0aW9uZWRfZmtfbWx0cm5nMm1sdHJuZ19maywKICAg QUREIENPTlNUUkFJTlQgdGVtcG9yYWxfcGFydGl0aW9uZWRfZmtfbWx0cm5nMm1sdHJuZ19mawog ICAgIEZPUkVJR04gS0VZIChwYXJlbnRfaWQsIFBFUklPRCB2YWxpZF9hdCkKICAgICBSRUZFUkVO Q0VTIHRlbXBvcmFsX3BhcnRpdGlvbmVkX21sdHJuZwogICAgIE9OIERFTEVURSBDQVNDQURFIE9O IFVQREFURSBDQVNDQURFOwotRVJST1I6ICB1bnN1cHBvcnRlZCBPTiBVUERBVEUgYWN0aW9uIGZv ciBmb3JlaWduIGtleSBjb25zdHJhaW50IHVzaW5nIFBFUklPRAorVVBEQVRFIHRlbXBvcmFsX3Bh cnRpdGlvbmVkX21sdHJuZyBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCAoZGF0ZW11bHRpcmFuZ2Uo ZGF0ZXJhbmdlKCcyMDE5LTAxLTAxJywgJzIwMjAtMDEtMDEnKSkpIFNFVCBpZCA9ICdbNyw4KScg V0hFUkUgaWQgPSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9m a19tbHRybmcybWx0cm5nIFdIRVJFIGlkID0gJ1s0LDUpJzsKKyAgaWQgICB8ICAgICAgICAgICAg ICAgICAgICAgdmFsaWRfYXQgICAgICAgICAgICAgICAgICAgICAgfCBwYXJlbnRfaWQgCistLS0t LS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSst LS0tLS0tLS0tLQorIFs0LDUpIHwge1syMDE5LTAxLTAxLDIwMjAtMDEtMDEpfSAgICAgICAgICAg ICAgICAgICAgICAgICB8IFs3LDgpCisgWzQsNSkgfCB7WzIwMTgtMDEtMDEsMjAxOS0wMS0wMSks WzIwMjAtMDEtMDEsMjAyMS0wMS0wMSl9IHwgWzYsNykKKygyIHJvd3MpCisKK1VQREFURSB0ZW1w b3JhbF9wYXJ0aXRpb25lZF9tbHRybmcgU0VUIGlkID0gJ1s3LDgpJyBXSEVSRSBpZCA9ICdbNiw3 KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX3BhcnRpdGlvbmVkX2ZrX21sdHJuZzJtbHRybmcg V0hFUkUgaWQgPSAnWzQsNSknOworICBpZCAgIHwgICAgICAgICAgICAgICAgICAgICB2YWxpZF9h dCAgICAgICAgICAgICAgICAgICAgICB8IHBhcmVudF9pZCAKKy0tLS0tLS0rLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tCisgWzQs NSkgfCB7WzIwMTktMDEtMDEsMjAyMC0wMS0wMSl9ICAgICAgICAgICAgICAgICAgICAgICAgIHwg WzcsOCkKKyBbNCw1KSB8IHtbMjAxOC0wMS0wMSwyMDE5LTAxLTAxKSxbMjAyMC0wMS0wMSwyMDIx LTAxLTAxKX0gfCBbNyw4KQorKDIgcm93cykKKworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGFydGl0 aW9uZWRfbWx0cm5nIChpZCwgdmFsaWRfYXQpIFZBTFVFUyAoJ1sxNSwxNiknLCBkYXRlbXVsdGly YW5nZShkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMC0wMS0wMScpKSk7CitJTlNFUlQgSU5U TyB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9tbHRybmcgKGlkLCB2YWxpZF9hdCkgVkFMVUVTICgnWzE1 LDE2KScsIGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAyMC0wMS0wMScsICcyMDIxLTAxLTAx JykpKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BhcnRpdGlvbmVkX2ZrX21sdHJuZzJtbHRybmcg KGlkLCB2YWxpZF9hdCwgcGFyZW50X2lkKSBWQUxVRVMgKCdbMTAsMTEpJywgZGF0ZW11bHRpcmFu Z2UoZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSksICdbMTUsMTYpJyk7CitV UERBVEUgdGVtcG9yYWxfcGFydGl0aW9uZWRfbWx0cm5nIFNFVCBpZCA9ICdbMTYsMTcpJyBXSEVS RSBpZCA9ICdbMTUsMTYpJyBBTkQgdmFsaWRfYXQgQD4gJzIwMTktMDEtMDEnOjpkYXRlOworU0VM RUNUICogRlJPTSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ma19tbHRybmcybWx0cm5nIFdIRVJFIGlk ID0gJ1sxMCwxMSknOworICAgaWQgICAgfCAgICAgICAgIHZhbGlkX2F0ICAgICAgICAgIHwgcGFy ZW50X2lkIAorLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0t LQorIFsxMCwxMSkgfCB7WzIwMTgtMDEtMDEsMjAyMC0wMS0wMSl9IHwgWzE2LDE3KQorIFsxMCwx MSkgfCB7WzIwMjAtMDEtMDEsMjAyMS0wMS0wMSl9IHwgWzE1LDE2KQorKDIgcm93cykKKwogLS0K IC0tIHBhcnRpdGlvbmVkIEZLIHJlZmVyZW5jZWQgZGVsZXRlcyBDQVNDQURFCiAtLQorVFJVTkNB VEUgdGVtcG9yYWxfcGFydGl0aW9uZWRfbWx0cm5nLCB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ma19t bHRybmcybWx0cm5nOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGFydGl0aW9uZWRfbWx0cm5nIChp ZCwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s4LDkpJywgZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcy MDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSkpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGFydGl0 aW9uZWRfZmtfbWx0cm5nMm1sdHJuZyAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQpIFZBTFVFUyAo J1s1LDYpJywgZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEt MDEnKSksICdbOCw5KScpOworREVMRVRFIEZST00gdGVtcG9yYWxfcGFydGl0aW9uZWRfbWx0cm5n IEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IChkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIwMTkt MDEtMDEnLCAnMjAyMC0wMS0wMScpKSkgV0hFUkUgaWQgPSAnWzgsOSknOworU0VMRUNUICogRlJP TSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ma19tbHRybmcybWx0cm5nIFdIRVJFIGlkID0gJ1s1LDYp JzsKKyAgaWQgICB8ICAgICAgICAgICAgICAgICAgICAgdmFsaWRfYXQgICAgICAgICAgICAgICAg ICAgICAgfCBwYXJlbnRfaWQgCistLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLQorIFs1LDYpIHwge1syMDE4LTAxLTAx LDIwMTktMDEtMDEpLFsyMDIwLTAxLTAxLDIwMjEtMDEtMDEpfSB8IFs4LDkpCisoMSByb3cpCisK K0RFTEVURSBGUk9NIHRlbXBvcmFsX3BhcnRpdGlvbmVkX21sdHJuZyBXSEVSRSBpZCA9ICdbOCw5 KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX3BhcnRpdGlvbmVkX2ZrX21sdHJuZzJtbHRybmcg V0hFUkUgaWQgPSAnWzUsNiknOworIGlkIHwgdmFsaWRfYXQgfCBwYXJlbnRfaWQgCistLS0tKy0t LS0tLS0tLS0rLS0tLS0tLS0tLS0KKygwIHJvd3MpCisKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3Bh cnRpdGlvbmVkX21sdHJuZyAoaWQsIHZhbGlkX2F0KSBWQUxVRVMgKCdbMTcsMTgpJywgZGF0ZW11 bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjAtMDEtMDEnKSkpOworSU5TRVJU IElOVE8gdGVtcG9yYWxfcGFydGl0aW9uZWRfbWx0cm5nIChpZCwgdmFsaWRfYXQpIFZBTFVFUyAo J1sxNywxOCknLCBkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIwMjAtMDEtMDEnLCAnMjAyMS0w MS0wMScpKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ma19tbHRybmcybWx0 cm5nIChpZCwgdmFsaWRfYXQsIHBhcmVudF9pZCkgVkFMVUVTICgnWzExLDEyKScsIGRhdGVtdWx0 aXJhbmdlKGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJykpLCAnWzE3LDE4KScp OworREVMRVRFIEZST00gdGVtcG9yYWxfcGFydGl0aW9uZWRfbWx0cm5nIFdIRVJFIGlkID0gJ1sx NywxOCknIEFORCB2YWxpZF9hdCBAPiAnMjAxOS0wMS0wMSc6OmRhdGU7CitTRUxFQ1QgKiBGUk9N IHRlbXBvcmFsX3BhcnRpdGlvbmVkX2ZrX21sdHJuZzJtbHRybmcgV0hFUkUgaWQgPSAnWzExLDEy KSc7CisgICBpZCAgICB8ICAgICAgICAgdmFsaWRfYXQgICAgICAgICAgfCBwYXJlbnRfaWQgCist LS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tCisgWzExLDEy KSB8IHtbMjAyMC0wMS0wMSwyMDIxLTAxLTAxKX0gfCBbMTcsMTgpCisoMSByb3cpCisKIC0tCiAt LSBwYXJ0aXRpb25lZCBGSyByZWZlcmVuY2VkIHVwZGF0ZXMgU0VUIE5VTEwKIC0tCitUUlVOQ0FU RSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9tbHRybmcsIHRlbXBvcmFsX3BhcnRpdGlvbmVkX2ZrX21s dHJuZzJtbHRybmc7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9tbHRybmcgKGlk LCB2YWxpZF9hdCkgVkFMVUVTICgnWzksMTApJywgZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcy MDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSkpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGFydGl0 aW9uZWRfZmtfbWx0cm5nMm1sdHJuZyAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQpIFZBTFVFUyAo J1s2LDcpJywgZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEt MDEnKSksICdbOSwxMCknKTsKIEFMVEVSIFRBQkxFIHRlbXBvcmFsX3BhcnRpdGlvbmVkX2ZrX21s dHJuZzJtbHRybmcKICAgRFJPUCBDT05TVFJBSU5UIHRlbXBvcmFsX3BhcnRpdGlvbmVkX2ZrX21s dHJuZzJtbHRybmdfZmssCiAgIEFERCBDT05TVFJBSU5UIHRlbXBvcmFsX3BhcnRpdGlvbmVkX2Zr X21sdHJuZzJtbHRybmdfZmsKICAgICBGT1JFSUdOIEtFWSAocGFyZW50X2lkLCBQRVJJT0QgdmFs aWRfYXQpCiAgICAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9tbHRybmcKICAgICBP TiBERUxFVEUgU0VUIE5VTEwgT04gVVBEQVRFIFNFVCBOVUxMOwotRVJST1I6ICB1bnN1cHBvcnRl ZCBPTiBVUERBVEUgYWN0aW9uIGZvciBmb3JlaWduIGtleSBjb25zdHJhaW50IHVzaW5nIFBFUklP RAorVVBEQVRFIHRlbXBvcmFsX3BhcnRpdGlvbmVkX21sdHJuZyBGT1IgUE9SVElPTiBPRiB2YWxp ZF9hdCAoZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDE5LTAxLTAxJywgJzIwMjAtMDEtMDEn KSkpIFNFVCBpZCA9ICdbMTAsMTEpJyBXSEVSRSBpZCA9ICdbOSwxMCknOworU0VMRUNUICogRlJP TSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ma19tbHRybmcybWx0cm5nIFdIRVJFIGlkID0gJ1s2LDcp JzsKKyAgaWQgICB8ICAgICAgICAgICAgICAgICAgICAgdmFsaWRfYXQgICAgICAgICAgICAgICAg ICAgICAgfCBwYXJlbnRfaWQgCistLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLQorIFs2LDcpIHwge1syMDE5LTAxLTAx LDIwMjAtMDEtMDEpfSAgICAgICAgICAgICAgICAgICAgICAgICB8IAorIFs2LDcpIHwge1syMDE4 LTAxLTAxLDIwMTktMDEtMDEpLFsyMDIwLTAxLTAxLDIwMjEtMDEtMDEpfSB8IFs5LDEwKQorKDIg cm93cykKKworVVBEQVRFIHRlbXBvcmFsX3BhcnRpdGlvbmVkX21sdHJuZyBTRVQgaWQgPSAnWzEw LDExKScgV0hFUkUgaWQgPSAnWzksMTApJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfcGFydGl0 aW9uZWRfZmtfbWx0cm5nMm1sdHJuZyBXSEVSRSBpZCA9ICdbNiw3KSc7CisgIGlkICAgfCAgICAg ICAgICAgICAgICAgICAgIHZhbGlkX2F0ICAgICAgICAgICAgICAgICAgICAgIHwgcGFyZW50X2lk IAorLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0rLS0tLS0tLS0tLS0KKyBbNiw3KSB8IHtbMjAxOS0wMS0wMSwyMDIwLTAxLTAxKX0gICAg ICAgICAgICAgICAgICAgICAgICAgfCAKKyBbNiw3KSB8IHtbMjAxOC0wMS0wMSwyMDE5LTAxLTAx KSxbMjAyMC0wMS0wMSwyMDIxLTAxLTAxKX0gfCAKKygyIHJvd3MpCisKK0lOU0VSVCBJTlRPIHRl bXBvcmFsX3BhcnRpdGlvbmVkX21sdHJuZyAoaWQsIHZhbGlkX2F0KSBWQUxVRVMgKCdbMTgsMTkp JywgZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjAtMDEtMDEnKSkp OworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGFydGl0aW9uZWRfbWx0cm5nIChpZCwgdmFsaWRfYXQp IFZBTFVFUyAoJ1sxOCwxOSknLCBkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIwMjAtMDEtMDEn LCAnMjAyMS0wMS0wMScpKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ma19t bHRybmcybWx0cm5nIChpZCwgdmFsaWRfYXQsIHBhcmVudF9pZCkgVkFMVUVTICgnWzEyLDEzKScs IGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJykpLCAn WzE4LDE5KScpOworVVBEQVRFIHRlbXBvcmFsX3BhcnRpdGlvbmVkX21sdHJuZyBTRVQgaWQgPSAn WzE5LDIwKScgV0hFUkUgaWQgPSAnWzE4LDE5KScgQU5EIHZhbGlkX2F0IEA+ICcyMDE5LTAxLTAx Jzo6ZGF0ZTsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfcGFydGl0aW9uZWRfZmtfbWx0cm5nMm1s dHJuZyBXSEVSRSBpZCA9ICdbMTIsMTMpJzsKKyAgIGlkICAgIHwgICAgICAgICB2YWxpZF9hdCAg ICAgICAgICB8IHBhcmVudF9pZCAKKy0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0rLS0tLS0tLS0tLS0KKyBbMTIsMTMpIHwge1syMDE4LTAxLTAxLDIwMjAtMDEtMDEpfSB8IAor IFsxMiwxMykgfCB7WzIwMjAtMDEtMDEsMjAyMS0wMS0wMSl9IHwgWzE4LDE5KQorKDIgcm93cykK KwogLS0KIC0tIHBhcnRpdGlvbmVkIEZLIHJlZmVyZW5jZWQgZGVsZXRlcyBTRVQgTlVMTAogLS0K K1RSVU5DQVRFIHRlbXBvcmFsX3BhcnRpdGlvbmVkX21sdHJuZywgdGVtcG9yYWxfcGFydGl0aW9u ZWRfZmtfbWx0cm5nMm1sdHJuZzsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BhcnRpdGlvbmVkX21s dHJuZyAoaWQsIHZhbGlkX2F0KSBWQUxVRVMgKCdbMTEsMTIpJywgZGF0ZW11bHRpcmFuZ2UoZGF0 ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSkpOworSU5TRVJUIElOVE8gdGVtcG9y YWxfcGFydGl0aW9uZWRfZmtfbWx0cm5nMm1sdHJuZyAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQp IFZBTFVFUyAoJ1s3LDgpJywgZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywg JzIwMjEtMDEtMDEnKSksICdbMTEsMTIpJyk7CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9wYXJ0aXRp b25lZF9tbHRybmcgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgKGRhdGVtdWx0aXJhbmdlKGRhdGVy YW5nZSgnMjAxOS0wMS0wMScsICcyMDIwLTAxLTAxJykpKSBXSEVSRSBpZCA9ICdbMTEsMTIpJzsK K1NFTEVDVCAqIEZST00gdGVtcG9yYWxfcGFydGl0aW9uZWRfZmtfbWx0cm5nMm1sdHJuZyBXSEVS RSBpZCA9ICdbNyw4KSc7CisgIGlkICAgfCAgICAgICAgICAgICAgICAgICAgIHZhbGlkX2F0ICAg ICAgICAgICAgICAgICAgICAgIHwgcGFyZW50X2lkIAorLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0KKyBbNyw4KSB8 IHtbMjAxOS0wMS0wMSwyMDIwLTAxLTAxKX0gICAgICAgICAgICAgICAgICAgICAgICAgfCAKKyBb Nyw4KSB8IHtbMjAxOC0wMS0wMSwyMDE5LTAxLTAxKSxbMjAyMC0wMS0wMSwyMDIxLTAxLTAxKX0g fCBbMTEsMTIpCisoMiByb3dzKQorCitERUxFVEUgRlJPTSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9t bHRybmcgV0hFUkUgaWQgPSAnWzExLDEyKSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX3BhcnRp dGlvbmVkX2ZrX21sdHJuZzJtbHRybmcgV0hFUkUgaWQgPSAnWzcsOCknOworICBpZCAgIHwgICAg ICAgICAgICAgICAgICAgICB2YWxpZF9hdCAgICAgICAgICAgICAgICAgICAgICB8IHBhcmVudF9p ZCAKKy0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tKy0tLS0tLS0tLS0tCisgWzcsOCkgfCB7WzIwMTktMDEtMDEsMjAyMC0wMS0wMSl9ICAg ICAgICAgICAgICAgICAgICAgICAgIHwgCisgWzcsOCkgfCB7WzIwMTgtMDEtMDEsMjAxOS0wMS0w MSksWzIwMjAtMDEtMDEsMjAyMS0wMS0wMSl9IHwgCisoMiByb3dzKQorCitJTlNFUlQgSU5UTyB0 ZW1wb3JhbF9wYXJ0aXRpb25lZF9tbHRybmcgKGlkLCB2YWxpZF9hdCkgVkFMVUVTICgnWzIwLDIx KScsIGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIwLTAxLTAxJykp KTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BhcnRpdGlvbmVkX21sdHJuZyAoaWQsIHZhbGlkX2F0 KSBWQUxVRVMgKCdbMjAsMjEpJywgZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDIwLTAxLTAx JywgJzIwMjEtMDEtMDEnKSkpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGFydGl0aW9uZWRfZmtf bWx0cm5nMm1sdHJuZyAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQpIFZBTFVFUyAoJ1sxMywxNCkn LCBkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpKSwg J1syMCwyMSknKTsKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3BhcnRpdGlvbmVkX21sdHJuZyBXSEVS RSBpZCA9ICdbMjAsMjEpJyBBTkQgdmFsaWRfYXQgQD4gJzIwMTktMDEtMDEnOjpkYXRlOworU0VM RUNUICogRlJPTSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ma19tbHRybmcybWx0cm5nIFdIRVJFIGlk ID0gJ1sxMywxNCknOworICAgaWQgICAgfCAgICAgICAgIHZhbGlkX2F0ICAgICAgICAgIHwgcGFy ZW50X2lkIAorLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0t LQorIFsxMywxNCkgfCB7WzIwMTgtMDEtMDEsMjAyMC0wMS0wMSl9IHwgCisgWzEzLDE0KSB8IHtb MjAyMC0wMS0wMSwyMDIxLTAxLTAxKX0gfCBbMjAsMjEpCisoMiByb3dzKQorCiAtLQogLS0gcGFy dGl0aW9uZWQgRksgcmVmZXJlbmNlZCB1cGRhdGVzIFNFVCBERUZBVUxUCiAtLQorVFJVTkNBVEUg dGVtcG9yYWxfcGFydGl0aW9uZWRfbWx0cm5nLCB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ma19tbHRy bmcybWx0cm5nOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGFydGl0aW9uZWRfbWx0cm5nIChpZCwg dmFsaWRfYXQpIFZBTFVFUyAoJ1swLDEpJywgZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKG51bGws IG51bGwpKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9tbHRybmcgKGlkLCB2 YWxpZF9hdCkgVkFMVUVTICgnWzEyLDEzKScsIGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAx OC0wMS0wMScsICcyMDIxLTAxLTAxJykpKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BhcnRpdGlv bmVkX2ZrX21sdHJuZzJtbHRybmcgKGlkLCB2YWxpZF9hdCwgcGFyZW50X2lkKSBWQUxVRVMgKCdb OCw5KScsIGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAx JykpLCAnWzEyLDEzKScpOwogQUxURVIgVEFCTEUgdGVtcG9yYWxfcGFydGl0aW9uZWRfZmtfbWx0 cm5nMm1sdHJuZwogICBBTFRFUiBDT0xVTU4gcGFyZW50X2lkIFNFVCBERUZBVUxUICdbMCwxKScs CiAgIERST1AgQ09OU1RSQUlOVCB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ma19tbHRybmcybWx0cm5n X2ZrLApAQCAtMjY1MCwxMCArNDE1Nyw2NyBAQCBBTFRFUiBUQUJMRSB0ZW1wb3JhbF9wYXJ0aXRp b25lZF9ma19tbHRybmcybWx0cm5nCiAgICAgRk9SRUlHTiBLRVkgKHBhcmVudF9pZCwgUEVSSU9E IHZhbGlkX2F0KQogICAgIFJFRkVSRU5DRVMgdGVtcG9yYWxfcGFydGl0aW9uZWRfbWx0cm5nCiAg ICAgT04gREVMRVRFIFNFVCBERUZBVUxUIE9OIFVQREFURSBTRVQgREVGQVVMVDsKLUVSUk9SOiAg dW5zdXBwb3J0ZWQgT04gVVBEQVRFIGFjdGlvbiBmb3IgZm9yZWlnbiBrZXkgY29uc3RyYWludCB1 c2luZyBQRVJJT0QKK1VQREFURSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9tbHRybmcgRk9SIFBPUlRJ T04gT0YgdmFsaWRfYXQgKGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAxOS0wMS0wMScsICcy MDIwLTAxLTAxJykpKSBTRVQgaWQgPSAnWzEzLDE0KScgV0hFUkUgaWQgPSAnWzEyLDEzKSc7CitT RUxFQ1QgKiBGUk9NIHRlbXBvcmFsX3BhcnRpdGlvbmVkX2ZrX21sdHJuZzJtbHRybmcgV0hFUkUg aWQgPSAnWzgsOSknOworICBpZCAgIHwgICAgICAgICAgICAgICAgICAgICB2YWxpZF9hdCAgICAg ICAgICAgICAgICAgICAgICB8IHBhcmVudF9pZCAKKy0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tCisgWzgsOSkgfCB7 WzIwMTktMDEtMDEsMjAyMC0wMS0wMSl9ICAgICAgICAgICAgICAgICAgICAgICAgIHwgWzAsMSkK KyBbOCw5KSB8IHtbMjAxOC0wMS0wMSwyMDE5LTAxLTAxKSxbMjAyMC0wMS0wMSwyMDIxLTAxLTAx KX0gfCBbMTIsMTMpCisoMiByb3dzKQorCitVUERBVEUgdGVtcG9yYWxfcGFydGl0aW9uZWRfbWx0 cm5nIFNFVCBpZCA9ICdbMTMsMTQpJyBXSEVSRSBpZCA9ICdbMTIsMTMpJzsKK1NFTEVDVCAqIEZS T00gdGVtcG9yYWxfcGFydGl0aW9uZWRfZmtfbWx0cm5nMm1sdHJuZyBXSEVSRSBpZCA9ICdbOCw5 KSc7CisgIGlkICAgfCAgICAgICAgICAgICAgICAgICAgIHZhbGlkX2F0ICAgICAgICAgICAgICAg ICAgICAgIHwgcGFyZW50X2lkIAorLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0KKyBbOCw5KSB8IHtbMjAxOS0wMS0w MSwyMDIwLTAxLTAxKX0gICAgICAgICAgICAgICAgICAgICAgICAgfCBbMCwxKQorIFs4LDkpIHwg e1syMDE4LTAxLTAxLDIwMTktMDEtMDEpLFsyMDIwLTAxLTAxLDIwMjEtMDEtMDEpfSB8IFswLDEp CisoMiByb3dzKQorCitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9tbHRybmcgKGlk LCB2YWxpZF9hdCkgVkFMVUVTICgnWzIyLDIzKScsIGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgn MjAxOC0wMS0wMScsICcyMDIwLTAxLTAxJykpKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BhcnRp dGlvbmVkX21sdHJuZyAoaWQsIHZhbGlkX2F0KSBWQUxVRVMgKCdbMjIsMjMpJywgZGF0ZW11bHRp cmFuZ2UoZGF0ZXJhbmdlKCcyMDIwLTAxLTAxJywgJzIwMjEtMDEtMDEnKSkpOworSU5TRVJUIElO VE8gdGVtcG9yYWxfcGFydGl0aW9uZWRfZmtfbWx0cm5nMm1sdHJuZyAoaWQsIHZhbGlkX2F0LCBw YXJlbnRfaWQpIFZBTFVFUyAoJ1sxNCwxNSknLCBkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIw MTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpKSwgJ1syMiwyMyknKTsKK1VQREFURSB0ZW1wb3JhbF9w YXJ0aXRpb25lZF9tbHRybmcgU0VUIGlkID0gJ1syMywyNCknIFdIRVJFIGlkID0gJ1syMiwyMykn IEFORCB2YWxpZF9hdCBAPiAnMjAxOS0wMS0wMSc6OmRhdGU7CitTRUxFQ1QgKiBGUk9NIHRlbXBv cmFsX3BhcnRpdGlvbmVkX2ZrX21sdHJuZzJtbHRybmcgV0hFUkUgaWQgPSAnWzE0LDE1KSc7Cisg ICBpZCAgICB8ICAgICAgICAgdmFsaWRfYXQgICAgICAgICAgfCBwYXJlbnRfaWQgCistLS0tLS0t LS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tCisgWzE0LDE1KSB8IHtb MjAxOC0wMS0wMSwyMDIwLTAxLTAxKX0gfCBbMCwxKQorIFsxNCwxNSkgfCB7WzIwMjAtMDEtMDEs MjAyMS0wMS0wMSl9IHwgWzIyLDIzKQorKDIgcm93cykKKwogLS0KIC0tIHBhcnRpdGlvbmVkIEZL IHJlZmVyZW5jZWQgZGVsZXRlcyBTRVQgREVGQVVMVAogLS0KK1RSVU5DQVRFIHRlbXBvcmFsX3Bh cnRpdGlvbmVkX21sdHJuZywgdGVtcG9yYWxfcGFydGl0aW9uZWRfZmtfbWx0cm5nMm1sdHJuZzsK K0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BhcnRpdGlvbmVkX21sdHJuZyAoaWQsIHZhbGlkX2F0KSBW QUxVRVMgKCdbMCwxKScsIGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZShudWxsLCBudWxsKSkpOwor SU5TRVJUIElOVE8gdGVtcG9yYWxfcGFydGl0aW9uZWRfbWx0cm5nIChpZCwgdmFsaWRfYXQpIFZB TFVFUyAoJ1sxNCwxNSknLCBkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAn MjAyMS0wMS0wMScpKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ma19tbHRy bmcybWx0cm5nIChpZCwgdmFsaWRfYXQsIHBhcmVudF9pZCkgVkFMVUVTICgnWzksMTApJywgZGF0 ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSksICdbMTQs MTUpJyk7CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9tbHRybmcgRk9SIFBPUlRJ T04gT0YgdmFsaWRfYXQgKGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAxOS0wMS0wMScsICcy MDIwLTAxLTAxJykpKSBXSEVSRSBpZCA9ICdbMTQsMTUpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9y YWxfcGFydGl0aW9uZWRfZmtfbWx0cm5nMm1sdHJuZyBXSEVSRSBpZCA9ICdbOSwxMCknOworICAg aWQgICB8ICAgICAgICAgICAgICAgICAgICAgdmFsaWRfYXQgICAgICAgICAgICAgICAgICAgICAg fCBwYXJlbnRfaWQgCistLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0KKyBbOSwxMCkgfCB7WzIwMTktMDEtMDEsMjAy MC0wMS0wMSl9ICAgICAgICAgICAgICAgICAgICAgICAgIHwgWzAsMSkKKyBbOSwxMCkgfCB7WzIw MTgtMDEtMDEsMjAxOS0wMS0wMSksWzIwMjAtMDEtMDEsMjAyMS0wMS0wMSl9IHwgWzE0LDE1KQor KDIgcm93cykKKworREVMRVRFIEZST00gdGVtcG9yYWxfcGFydGl0aW9uZWRfbWx0cm5nIFdIRVJF IGlkID0gJ1sxNCwxNSknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ma19t bHRybmcybWx0cm5nIFdIRVJFIGlkID0gJ1s5LDEwKSc7CisgICBpZCAgIHwgICAgICAgICAgICAg ICAgICAgICB2YWxpZF9hdCAgICAgICAgICAgICAgICAgICAgICB8IHBhcmVudF9pZCAKKy0tLS0t LS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSst LS0tLS0tLS0tLQorIFs5LDEwKSB8IHtbMjAxOS0wMS0wMSwyMDIwLTAxLTAxKX0gICAgICAgICAg ICAgICAgICAgICAgICAgfCBbMCwxKQorIFs5LDEwKSB8IHtbMjAxOC0wMS0wMSwyMDE5LTAxLTAx KSxbMjAyMC0wMS0wMSwyMDIxLTAxLTAxKX0gfCBbMCwxKQorKDIgcm93cykKKworSU5TRVJUIElO VE8gdGVtcG9yYWxfcGFydGl0aW9uZWRfbWx0cm5nIChpZCwgdmFsaWRfYXQpIFZBTFVFUyAoJ1sy NCwyNSknLCBkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMC0wMS0w MScpKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9tbHRybmcgKGlkLCB2YWxp ZF9hdCkgVkFMVUVTICgnWzI0LDI1KScsIGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAyMC0w MS0wMScsICcyMDIxLTAxLTAxJykpKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BhcnRpdGlvbmVk X2ZrX21sdHJuZzJtbHRybmcgKGlkLCB2YWxpZF9hdCwgcGFyZW50X2lkKSBWQUxVRVMgKCdbMTUs MTYpJywgZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEn KSksICdbMjQsMjUpJyk7CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9tbHRybmcg V0hFUkUgaWQgPSAnWzI0LDI1KScgQU5EIHZhbGlkX2F0IEA+ICcyMDE5LTAxLTAxJzo6ZGF0ZTsK K1NFTEVDVCAqIEZST00gdGVtcG9yYWxfcGFydGl0aW9uZWRfZmtfbWx0cm5nMm1sdHJuZyBXSEVS RSBpZCA9ICdbMTUsMTYpJzsKKyAgIGlkICAgIHwgICAgICAgICB2YWxpZF9hdCAgICAgICAgICB8 IHBhcmVudF9pZCAKKy0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0t LS0tLS0KKyBbMTUsMTYpIHwge1syMDE4LTAxLTAxLDIwMjAtMDEtMDEpfSB8IFswLDEpCisgWzE1 LDE2KSB8IHtbMjAyMC0wMS0wMSwyMDIxLTAxLTAxKX0gfCBbMjQsMjUpCisoMiByb3dzKQorCiBE Uk9QIFRBQkxFIHRlbXBvcmFsX3BhcnRpdGlvbmVkX2ZrX21sdHJuZzJtbHRybmc7CiBEUk9QIFRB QkxFIHRlbXBvcmFsX3BhcnRpdGlvbmVkX21sdHJuZzsKIFJFU0VUIGRhdGVzdHlsZTsKZGlmZiAt LWdpdCBhL3NyYy90ZXN0L3JlZ3Jlc3Mvc3FsL3dpdGhvdXRfb3ZlcmxhcHMuc3FsIGIvc3JjL3Rl c3QvcmVncmVzcy9zcWwvd2l0aG91dF9vdmVybGFwcy5zcWwKaW5kZXggYzVjODlmZTQwYWIuLjIy NGRkZWY4NDMwIDEwMDY0NAotLS0gYS9zcmMvdGVzdC9yZWdyZXNzL3NxbC93aXRob3V0X292ZXJs YXBzLnNxbAorKysgYi9zcmMvdGVzdC9yZWdyZXNzL3NxbC93aXRob3V0X292ZXJsYXBzLnNxbApA QCAtMTQyNCw4ICsxNDI0LDI2IEBAIEFMVEVSIFRBQkxFIHRlbXBvcmFsX2ZrX3JuZzJybmcKIC0t CiAtLSBybmcycm5nIHRlc3QgT04gVVBEQVRFL0RFTEVURSBvcHRpb25zCiAtLQorLS0gVE9DOgor LS0gcmVmZXJlbmNlZCB1cGRhdGVzIENBU0NBREUKKy0tIHJlZmVyZW5jZWQgZGVsZXRlcyBDQVND QURFCistLSByZWZlcmVuY2VkIHVwZGF0ZXMgU0VUIE5VTEwKKy0tIHJlZmVyZW5jZWQgZGVsZXRl cyBTRVQgTlVMTAorLS0gcmVmZXJlbmNlZCB1cGRhdGVzIFNFVCBERUZBVUxUCistLSByZWZlcmVu Y2VkIGRlbGV0ZXMgU0VUIERFRkFVTFQKKy0tIHJlZmVyZW5jZWQgdXBkYXRlcyBDQVNDQURFICh0 d28gc2NhbGFyIGNvbHMpCistLSByZWZlcmVuY2VkIGRlbGV0ZXMgQ0FTQ0FERSAodHdvIHNjYWxh ciBjb2xzKQorLS0gcmVmZXJlbmNlZCB1cGRhdGVzIFNFVCBOVUxMICh0d28gc2NhbGFyIGNvbHMp CistLSByZWZlcmVuY2VkIGRlbGV0ZXMgU0VUIE5VTEwgKHR3byBzY2FsYXIgY29scykKKy0tIHJl ZmVyZW5jZWQgZGVsZXRlcyBTRVQgTlVMTCAodHdvIHNjYWxhciBjb2xzLCBTRVQgTlVMTCBzdWJz ZXQpCistLSByZWZlcmVuY2VkIHVwZGF0ZXMgU0VUIERFRkFVTFQgKHR3byBzY2FsYXIgY29scykK Ky0tIHJlZmVyZW5jZWQgZGVsZXRlcyBTRVQgREVGQVVMVCAodHdvIHNjYWxhciBjb2xzKQorLS0g cmVmZXJlbmNlZCBkZWxldGVzIFNFVCBERUZBVUxUICh0d28gc2NhbGFyIGNvbHMsIFNFVCBERUZB VUxUIHN1YnNldCkKIAorLS0KIC0tIHRlc3QgRksgcmVmZXJlbmNlZCB1cGRhdGVzIENBU0NBREUK Ky0tCisKIFRSVU5DQVRFIHRlbXBvcmFsX3JuZywgdGVtcG9yYWxfZmtfcm5nMnJuZzsKIElOU0VS VCBJTlRPIHRlbXBvcmFsX3JuZyAoaWQsIHZhbGlkX2F0KSBWQUxVRVMgKCdbNiw3KScsIGRhdGVy YW5nZSgnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJykpOwogSU5TRVJUIElOVE8gdGVtcG9yYWxf Zmtfcm5nMnJuZyAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQpIFZBTFVFUyAoJ1sxMDAsMTAxKScs IGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJyksICdbNiw3KScpOwpAQCAtMTQz NCwyOCArMTQ1MiwzNDYgQEAgQUxURVIgVEFCTEUgdGVtcG9yYWxfZmtfcm5nMnJuZwogICAgIEZP UkVJR04gS0VZIChwYXJlbnRfaWQsIFBFUklPRCB2YWxpZF9hdCkKICAgICBSRUZFUkVOQ0VTIHRl bXBvcmFsX3JuZwogICAgIE9OIERFTEVURSBDQVNDQURFIE9OIFVQREFURSBDQVNDQURFOworLS0g bGVmdG92ZXJzIG9uIGJvdGggc2lkZXM6CitVUERBVEUgdGVtcG9yYWxfcm5nIEZPUiBQT1JUSU9O IE9GIHZhbGlkX2F0IEZST00gJzIwMTktMDEtMDEnIFRPICcyMDIwLTAxLTAxJyBTRVQgaWQgPSAn WzcsOCknIFdIRVJFIGlkID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmtfcm5n MnJuZyBXSEVSRSBpZCA9ICdbMTAwLDEwMSknIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKy0tIG5v bi1GUE8gdXBkYXRlOgorVVBEQVRFIHRlbXBvcmFsX3JuZyBTRVQgaWQgPSAnWzcsOCknIFdIRVJF IGlkID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmtfcm5nMnJuZyBXSEVSRSBp ZCA9ICdbMTAwLDEwMSknIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKy0tIEZLIGFjcm9zcyB0d28g cmVmZXJlbmNlZCByb3dzOgorSU5TRVJUIElOVE8gdGVtcG9yYWxfcm5nIChpZCwgdmFsaWRfYXQp IFZBTFVFUyAoJ1s4LDkpJywgZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjAtMDEtMDEnKSk7 CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ybmcgKGlkLCB2YWxpZF9hdCkgVkFMVUVTICgnWzgsOSkn LCBkYXRlcmFuZ2UoJzIwMjAtMDEtMDEnLCAnMjAyMS0wMS0wMScpKTsKK0lOU0VSVCBJTlRPIHRl bXBvcmFsX2ZrX3JuZzJybmcgKGlkLCB2YWxpZF9hdCwgcGFyZW50X2lkKSBWQUxVRVMgKCdbMjAw LDIwMSknLCBkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpLCAnWzgsOSknKTsK K1VQREFURSB0ZW1wb3JhbF9ybmcgU0VUIGlkID0gJ1s5LDEwKScgV0hFUkUgaWQgPSAnWzgsOSkn IEFORCB2YWxpZF9hdCBAPiAnMjAxOS0wMS0wMSc6OmRhdGU7CitTRUxFQ1QgKiBGUk9NIHRlbXBv cmFsX2ZrX3JuZzJybmcgV0hFUkUgaWQgPSAnWzIwMCwyMDEpJyBPUkRFUiBCWSBpZCwgdmFsaWRf YXQ7CisKKy0tCistLSB0ZXN0IEZLIHJlZmVyZW5jZWQgZGVsZXRlcyBDQVNDQURFCistLQorCitU UlVOQ0FURSB0ZW1wb3JhbF9ybmcsIHRlbXBvcmFsX2ZrX3JuZzJybmc7CitJTlNFUlQgSU5UTyB0 ZW1wb3JhbF9ybmcgKGlkLCB2YWxpZF9hdCkgVkFMVUVTICgnWzYsNyknLCBkYXRlcmFuZ2UoJzIw MTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrX3JuZzJy bmcgKGlkLCB2YWxpZF9hdCwgcGFyZW50X2lkKSBWQUxVRVMgKCdbMTAwLDEwMSknLCBkYXRlcmFu Z2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpLCAnWzYsNyknKTsKKy0tIGxlZnRvdmVycyBv biBib3RoIHNpZGVzOgorREVMRVRFIEZST00gdGVtcG9yYWxfcm5nIEZPUiBQT1JUSU9OIE9GIHZh bGlkX2F0IEZST00gJzIwMTktMDEtMDEnIFRPICcyMDIwLTAxLTAxJyBXSEVSRSBpZCA9ICdbNiw3 KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrX3JuZzJybmcgV0hFUkUgaWQgPSAnWzEwMCwx MDEpJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CistLSBub24tRlBPIGRlbGV0ZToKK0RFTEVURSBG Uk9NIHRlbXBvcmFsX3JuZyBXSEVSRSBpZCA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBv cmFsX2ZrX3JuZzJybmcgV0hFUkUgaWQgPSAnWzEwMCwxMDEpJyBPUkRFUiBCWSBpZCwgdmFsaWRf YXQ7CistLSBGSyBhY3Jvc3MgdHdvIHJlZmVyZW5jZWQgcm93czoKK0lOU0VSVCBJTlRPIHRlbXBv cmFsX3JuZyAoaWQsIHZhbGlkX2F0KSBWQUxVRVMgKCdbOCw5KScsIGRhdGVyYW5nZSgnMjAxOC0w MS0wMScsICcyMDIwLTAxLTAxJykpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcm5nIChpZCwgdmFs aWRfYXQpIFZBTFVFUyAoJ1s4LDkpJywgZGF0ZXJhbmdlKCcyMDIwLTAxLTAxJywgJzIwMjEtMDEt MDEnKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ma19ybmcycm5nIChpZCwgdmFsaWRfYXQsIHBh cmVudF9pZCkgVkFMVUVTICgnWzIwMCwyMDEpJywgZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIw MjEtMDEtMDEnKSwgJ1s4LDkpJyk7CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9ybmcgV0hFUkUgaWQg PSAnWzgsOSknIEFORCB2YWxpZF9hdCBAPiAnMjAxOS0wMS0wMSc6OmRhdGU7CitTRUxFQ1QgKiBG Uk9NIHRlbXBvcmFsX2ZrX3JuZzJybmcgV0hFUkUgaWQgPSAnWzIwMCwyMDEpJyBPUkRFUiBCWSBp ZCwgdmFsaWRfYXQ7CiAKKy0tCiAtLSB0ZXN0IEZLIHJlZmVyZW5jZWQgdXBkYXRlcyBTRVQgTlVM TAorLS0KKwogVFJVTkNBVEUgdGVtcG9yYWxfcm5nLCB0ZW1wb3JhbF9ma19ybmcycm5nOwogSU5T RVJUIElOVE8gdGVtcG9yYWxfcm5nIChpZCwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s2LDcpJywgZGF0 ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSk7CiBJTlNFUlQgSU5UTyB0ZW1wb3Jh bF9ma19ybmcycm5nIChpZCwgdmFsaWRfYXQsIHBhcmVudF9pZCkgVkFMVUVTICgnWzEwMCwxMDEp JywgZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSwgJ1s2LDcpJyk7CiBBTFRF UiBUQUJMRSB0ZW1wb3JhbF9ma19ybmcycm5nCisgIERST1AgQ09OU1RSQUlOVCB0ZW1wb3JhbF9m a19ybmcycm5nX2ZrLAogICBBREQgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19ybmcycm5nX2ZrCiAg ICAgRk9SRUlHTiBLRVkgKHBhcmVudF9pZCwgUEVSSU9EIHZhbGlkX2F0KQogICAgIFJFRkVSRU5D RVMgdGVtcG9yYWxfcm5nCiAgICAgT04gREVMRVRFIFNFVCBOVUxMIE9OIFVQREFURSBTRVQgTlVM TDsKKy0tIGxlZnRvdmVycyBvbiBib3RoIHNpZGVzOgorVVBEQVRFIHRlbXBvcmFsX3JuZyBGT1Ig UE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDE5LTAxLTAxJyBUTyAnMjAyMC0wMS0wMScgU0VU IGlkID0gJ1s3LDgpJyBXSEVSRSBpZCA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFs X2ZrX3JuZzJybmcgV0hFUkUgaWQgPSAnWzEwMCwxMDEpJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7 CistLSBub24tRlBPIHVwZGF0ZToKK1VQREFURSB0ZW1wb3JhbF9ybmcgU0VUIGlkID0gJ1s3LDgp JyBXSEVSRSBpZCA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrX3JuZzJybmcg V0hFUkUgaWQgPSAnWzEwMCwxMDEpJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CistLSBGSyBhY3Jv c3MgdHdvIHJlZmVyZW5jZWQgcm93czoKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3JuZyAoaWQsIHZh bGlkX2F0KSBWQUxVRVMgKCdbOCw5KScsIGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIwLTAx LTAxJykpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcm5nIChpZCwgdmFsaWRfYXQpIFZBTFVFUyAo J1s4LDkpJywgZGF0ZXJhbmdlKCcyMDIwLTAxLTAxJywgJzIwMjEtMDEtMDEnKSk7CitJTlNFUlQg SU5UTyB0ZW1wb3JhbF9ma19ybmcycm5nIChpZCwgdmFsaWRfYXQsIHBhcmVudF9pZCkgVkFMVUVT ICgnWzIwMCwyMDEpJywgZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSwgJ1s4 LDkpJyk7CitVUERBVEUgdGVtcG9yYWxfcm5nIFNFVCBpZCA9ICdbOSwxMCknIFdIRVJFIGlkID0g J1s4LDkpJyBBTkQgdmFsaWRfYXQgQD4gJzIwMTktMDEtMDEnOjpkYXRlOworU0VMRUNUICogRlJP TSB0ZW1wb3JhbF9ma19ybmcycm5nIFdIRVJFIGlkID0gJ1syMDAsMjAxKScgT1JERVIgQlkgaWQs IHZhbGlkX2F0OworCistLQorLS0gdGVzdCBGSyByZWZlcmVuY2VkIGRlbGV0ZXMgU0VUIE5VTEwK Ky0tCisKK1RSVU5DQVRFIHRlbXBvcmFsX3JuZywgdGVtcG9yYWxfZmtfcm5nMnJuZzsKK0lOU0VS VCBJTlRPIHRlbXBvcmFsX3JuZyAoaWQsIHZhbGlkX2F0KSBWQUxVRVMgKCdbNiw3KScsIGRhdGVy YW5nZSgnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJykpOworSU5TRVJUIElOVE8gdGVtcG9yYWxf Zmtfcm5nMnJuZyAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQpIFZBTFVFUyAoJ1sxMDAsMTAxKScs IGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJyksICdbNiw3KScpOworLS0gbGVm dG92ZXJzIG9uIGJvdGggc2lkZXM6CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9ybmcgRk9SIFBPUlRJ T04gT0YgdmFsaWRfYXQgRlJPTSAnMjAxOS0wMS0wMScgVE8gJzIwMjAtMDEtMDEnIFdIRVJFIGlk ID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmtfcm5nMnJuZyBXSEVSRSBpZCA9 ICdbMTAwLDEwMSknIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKy0tIG5vbi1GUE8gZGVsZXRlOgor REVMRVRFIEZST00gdGVtcG9yYWxfcm5nIFdIRVJFIGlkID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZS T00gdGVtcG9yYWxfZmtfcm5nMnJuZyBXSEVSRSBpZCA9ICdbMTAwLDEwMSknIE9SREVSIEJZIGlk LCB2YWxpZF9hdDsKKy0tIEZLIGFjcm9zcyB0d28gcmVmZXJlbmNlZCByb3dzOgorSU5TRVJUIElO VE8gdGVtcG9yYWxfcm5nIChpZCwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s4LDkpJywgZGF0ZXJhbmdl KCcyMDE4LTAxLTAxJywgJzIwMjAtMDEtMDEnKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ybmcg KGlkLCB2YWxpZF9hdCkgVkFMVUVTICgnWzgsOSknLCBkYXRlcmFuZ2UoJzIwMjAtMDEtMDEnLCAn MjAyMS0wMS0wMScpKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrX3JuZzJybmcgKGlkLCB2YWxp ZF9hdCwgcGFyZW50X2lkKSBWQUxVRVMgKCdbMjAwLDIwMSknLCBkYXRlcmFuZ2UoJzIwMTgtMDEt MDEnLCAnMjAyMS0wMS0wMScpLCAnWzgsOSknKTsKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3JuZyBX SEVSRSBpZCA9ICdbOCw5KScgQU5EIHZhbGlkX2F0IEA+ICcyMDE5LTAxLTAxJzo6ZGF0ZTsKK1NF TEVDVCAqIEZST00gdGVtcG9yYWxfZmtfcm5nMnJuZyBXSEVSRSBpZCA9ICdbMjAwLDIwMSknIE9S REVSIEJZIGlkLCB2YWxpZF9hdDsKIAorLS0KIC0tIHRlc3QgRksgcmVmZXJlbmNlZCB1cGRhdGVz IFNFVCBERUZBVUxUCistLQorCiBUUlVOQ0FURSB0ZW1wb3JhbF9ybmcsIHRlbXBvcmFsX2ZrX3Ju ZzJybmc7CiBJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ybmcgKGlkLCB2YWxpZF9hdCkgVkFMVUVTICgn Wy0xLC0xXScsIGRhdGVyYW5nZShudWxsLCBudWxsKSk7CiBJTlNFUlQgSU5UTyB0ZW1wb3JhbF9y bmcgKGlkLCB2YWxpZF9hdCkgVkFMVUVTICgnWzYsNyknLCBkYXRlcmFuZ2UoJzIwMTgtMDEtMDEn LCAnMjAyMS0wMS0wMScpKTsKIElOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrX3JuZzJybmcgKGlkLCB2 YWxpZF9hdCwgcGFyZW50X2lkKSBWQUxVRVMgKCdbMTAwLDEwMSknLCBkYXRlcmFuZ2UoJzIwMTgt MDEtMDEnLCAnMjAyMS0wMS0wMScpLCAnWzYsNyknKTsKIEFMVEVSIFRBQkxFIHRlbXBvcmFsX2Zr X3JuZzJybmcKICAgQUxURVIgQ09MVU1OIHBhcmVudF9pZCBTRVQgREVGQVVMVCAnWy0xLC0xXScs CisgIERST1AgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19ybmcycm5nX2ZrLAogICBBREQgQ09OU1RS QUlOVCB0ZW1wb3JhbF9ma19ybmcycm5nX2ZrCiAgICAgRk9SRUlHTiBLRVkgKHBhcmVudF9pZCwg UEVSSU9EIHZhbGlkX2F0KQogICAgIFJFRkVSRU5DRVMgdGVtcG9yYWxfcm5nCiAgICAgT04gREVM RVRFIFNFVCBERUZBVUxUIE9OIFVQREFURSBTRVQgREVGQVVMVDsKKy0tIGxlZnRvdmVycyBvbiBi b3RoIHNpZGVzOgorVVBEQVRFIHRlbXBvcmFsX3JuZyBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBG Uk9NICcyMDE5LTAxLTAxJyBUTyAnMjAyMC0wMS0wMScgU0VUIGlkID0gJ1s3LDgpJyBXSEVSRSBp ZCA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrX3JuZzJybmcgV0hFUkUgaWQg PSAnWzEwMCwxMDEpJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CistLSBub24tRlBPIHVwZGF0ZToK K1VQREFURSB0ZW1wb3JhbF9ybmcgU0VUIGlkID0gJ1s3LDgpJyBXSEVSRSBpZCA9ICdbNiw3KSc7 CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrX3JuZzJybmcgV0hFUkUgaWQgPSAnWzEwMCwxMDEp JyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CistLSBGSyBhY3Jvc3MgdHdvIHJlZmVyZW5jZWQgcm93 czoKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3JuZyAoaWQsIHZhbGlkX2F0KSBWQUxVRVMgKCdbOCw5 KScsIGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIwLTAxLTAxJykpOworSU5TRVJUIElOVE8g dGVtcG9yYWxfcm5nIChpZCwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s4LDkpJywgZGF0ZXJhbmdlKCcy MDIwLTAxLTAxJywgJzIwMjEtMDEtMDEnKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ma19ybmcy cm5nIChpZCwgdmFsaWRfYXQsIHBhcmVudF9pZCkgVkFMVUVTICgnWzIwMCwyMDEpJywgZGF0ZXJh bmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSwgJ1s4LDkpJyk7CitVUERBVEUgdGVtcG9y YWxfcm5nIFNFVCBpZCA9ICdbOSwxMCknIFdIRVJFIGlkID0gJ1s4LDkpJyBBTkQgdmFsaWRfYXQg QD4gJzIwMTktMDEtMDEnOjpkYXRlOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9ma19ybmcycm5n IFdIRVJFIGlkID0gJ1syMDAsMjAxKScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworCistLQorLS0g dGVzdCBGSyByZWZlcmVuY2VkIGRlbGV0ZXMgU0VUIERFRkFVTFQKKy0tCisKK1RSVU5DQVRFIHRl bXBvcmFsX3JuZywgdGVtcG9yYWxfZmtfcm5nMnJuZzsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3Ju ZyAoaWQsIHZhbGlkX2F0KSBWQUxVRVMgKCdbLTEsLTFdJywgZGF0ZXJhbmdlKG51bGwsIG51bGwp KTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3JuZyAoaWQsIHZhbGlkX2F0KSBWQUxVRVMgKCdbNiw3 KScsIGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJykpOworSU5TRVJUIElOVE8g dGVtcG9yYWxfZmtfcm5nMnJuZyAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQpIFZBTFVFUyAoJ1sx MDAsMTAxKScsIGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJyksICdbNiw3KScp OworLS0gbGVmdG92ZXJzIG9uIGJvdGggc2lkZXM6CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9ybmcg Rk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAxOS0wMS0wMScgVE8gJzIwMjAtMDEtMDEn IFdIRVJFIGlkID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmtfcm5nMnJuZyBX SEVSRSBpZCA9ICdbMTAwLDEwMSknIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKy0tIG5vbi1GUE8g dXBkYXRlOgorREVMRVRFIEZST00gdGVtcG9yYWxfcm5nIFdIRVJFIGlkID0gJ1s2LDcpJzsKK1NF TEVDVCAqIEZST00gdGVtcG9yYWxfZmtfcm5nMnJuZyBXSEVSRSBpZCA9ICdbMTAwLDEwMSknIE9S REVSIEJZIGlkLCB2YWxpZF9hdDsKKy0tIEZLIGFjcm9zcyB0d28gcmVmZXJlbmNlZCByb3dzOgor SU5TRVJUIElOVE8gdGVtcG9yYWxfcm5nIChpZCwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s4LDkpJywg ZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjAtMDEtMDEnKSk7CitJTlNFUlQgSU5UTyB0ZW1w b3JhbF9ybmcgKGlkLCB2YWxpZF9hdCkgVkFMVUVTICgnWzgsOSknLCBkYXRlcmFuZ2UoJzIwMjAt MDEtMDEnLCAnMjAyMS0wMS0wMScpKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrX3JuZzJybmcg KGlkLCB2YWxpZF9hdCwgcGFyZW50X2lkKSBWQUxVRVMgKCdbMjAwLDIwMSknLCBkYXRlcmFuZ2Uo JzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpLCAnWzgsOSknKTsKK0RFTEVURSBGUk9NIHRlbXBv cmFsX3JuZyBXSEVSRSBpZCA9ICdbOCw5KScgQU5EIHZhbGlkX2F0IEA+ICcyMDE5LTAxLTAxJzo6 ZGF0ZTsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmtfcm5nMnJuZyBXSEVSRSBpZCA9ICdbMjAw LDIwMSknIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKworLS0KKy0tIHRlc3QgRksgcmVmZXJlbmNl ZCB1cGRhdGVzIENBU0NBREUgKHR3byBzY2FsYXIgY29scykKKy0tCisKK1RSVU5DQVRFIHRlbXBv cmFsX3JuZzIsIHRlbXBvcmFsX2ZrMl9ybmcycm5nOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcm5n MiAoaWQxLCBpZDIsIHZhbGlkX2F0KSBWQUxVRVMgKCdbNiw3KScsICdbNiw3KScsIGRhdGVyYW5n ZSgnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJykpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmsy X3JuZzJybmcgKGlkLCB2YWxpZF9hdCwgcGFyZW50X2lkMSwgcGFyZW50X2lkMikgVkFMVUVTICgn WzEwMCwxMDEpJywgZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSwgJ1s2LDcp JywgJ1s2LDcpJyk7CitBTFRFUiBUQUJMRSB0ZW1wb3JhbF9mazJfcm5nMnJuZworICBEUk9QIENP TlNUUkFJTlQgdGVtcG9yYWxfZmsyX3JuZzJybmdfZmssCisgIEFERCBDT05TVFJBSU5UIHRlbXBv cmFsX2ZrMl9ybmcycm5nX2ZrCisgICAgRk9SRUlHTiBLRVkgKHBhcmVudF9pZDEsIHBhcmVudF9p ZDIsIFBFUklPRCB2YWxpZF9hdCkKKyAgICBSRUZFUkVOQ0VTIHRlbXBvcmFsX3JuZzIKKyAgICBP TiBERUxFVEUgQ0FTQ0FERSBPTiBVUERBVEUgQ0FTQ0FERTsKKy0tIGxlZnRvdmVycyBvbiBib3Ro IHNpZGVzOgorVVBEQVRFIHRlbXBvcmFsX3JuZzIgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJP TSAnMjAxOS0wMS0wMScgVE8gJzIwMjAtMDEtMDEnIFNFVCBpZDEgPSAnWzcsOCknIFdIRVJFIGlk MSA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9ybmcycm5nIFdIRVJFIGlk ID0gJ1sxMDAsMTAxKScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworLS0gbm9uLUZQTyB1cGRhdGU6 CitVUERBVEUgdGVtcG9yYWxfcm5nMiBTRVQgaWQxID0gJ1s3LDgpJyBXSEVSRSBpZDEgPSAnWzYs NyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9mazJfcm5nMnJuZyBXSEVSRSBpZCA9ICdbMTAw LDEwMSknIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKy0tIEZLIGFjcm9zcyB0d28gcmVmZXJlbmNl ZCByb3dzOgorSU5TRVJUIElOVE8gdGVtcG9yYWxfcm5nMiAoaWQxLCBpZDIsIHZhbGlkX2F0KSBW QUxVRVMgKCdbOCw5KScsICdbOCw5KScsIGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIwLTAx LTAxJykpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcm5nMiAoaWQxLCBpZDIsIHZhbGlkX2F0KSBW QUxVRVMgKCdbOCw5KScsICdbOCw5KScsIGRhdGVyYW5nZSgnMjAyMC0wMS0wMScsICcyMDIxLTAx LTAxJykpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmsyX3JuZzJybmcgKGlkLCB2YWxpZF9hdCwg cGFyZW50X2lkMSwgcGFyZW50X2lkMikgVkFMVUVTICgnWzIwMCwyMDEpJywgZGF0ZXJhbmdlKCcy MDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSwgJ1s4LDkpJywgJ1s4LDkpJyk7CitVUERBVEUgdGVt cG9yYWxfcm5nMiBTRVQgaWQxID0gJ1s5LDEwKScgV0hFUkUgaWQxID0gJ1s4LDkpJyBBTkQgdmFs aWRfYXQgQD4gJzIwMTktMDEtMDEnOjpkYXRlOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9mazJf cm5nMnJuZyBXSEVSRSBpZCA9ICdbMjAwLDIwMSknIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKwor LS0KKy0tIHRlc3QgRksgcmVmZXJlbmNlZCBkZWxldGVzIENBU0NBREUgKHR3byBzY2FsYXIgY29s cykKKy0tCisKK1RSVU5DQVRFIHRlbXBvcmFsX3JuZzIsIHRlbXBvcmFsX2ZrMl9ybmcycm5nOwor SU5TRVJUIElOVE8gdGVtcG9yYWxfcm5nMiAoaWQxLCBpZDIsIHZhbGlkX2F0KSBWQUxVRVMgKCdb Niw3KScsICdbNiw3KScsIGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJykpOwor SU5TRVJUIElOVE8gdGVtcG9yYWxfZmsyX3JuZzJybmcgKGlkLCB2YWxpZF9hdCwgcGFyZW50X2lk MSwgcGFyZW50X2lkMikgVkFMVUVTICgnWzEwMCwxMDEpJywgZGF0ZXJhbmdlKCcyMDE4LTAxLTAx JywgJzIwMjEtMDEtMDEnKSwgJ1s2LDcpJywgJ1s2LDcpJyk7CistLSBsZWZ0b3ZlcnMgb24gYm90 aCBzaWRlczoKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3JuZzIgRk9SIFBPUlRJT04gT0YgdmFsaWRf YXQgRlJPTSAnMjAxOS0wMS0wMScgVE8gJzIwMjAtMDEtMDEnIFdIRVJFIGlkMSA9ICdbNiw3KSc7 CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9ybmcycm5nIFdIRVJFIGlkID0gJ1sxMDAsMTAx KScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworLS0gbm9uLUZQTyBkZWxldGU6CitERUxFVEUgRlJP TSB0ZW1wb3JhbF9ybmcyIFdIRVJFIGlkMSA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBv cmFsX2ZrMl9ybmcycm5nIFdIRVJFIGlkID0gJ1sxMDAsMTAxKScgT1JERVIgQlkgaWQsIHZhbGlk X2F0OworLS0gRksgYWNyb3NzIHR3byByZWZlcmVuY2VkIHJvd3M6CitJTlNFUlQgSU5UTyB0ZW1w b3JhbF9ybmcyIChpZDEsIGlkMiwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s4LDkpJywgJ1s4LDkpJywg ZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjAtMDEtMDEnKSk7CitJTlNFUlQgSU5UTyB0ZW1w b3JhbF9ybmcyIChpZDEsIGlkMiwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s4LDkpJywgJ1s4LDkpJywg ZGF0ZXJhbmdlKCcyMDIwLTAxLTAxJywgJzIwMjEtMDEtMDEnKSk7CitJTlNFUlQgSU5UTyB0ZW1w b3JhbF9mazJfcm5nMnJuZyAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQxLCBwYXJlbnRfaWQyKSBW QUxVRVMgKCdbMjAwLDIwMSknLCBkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScp LCAnWzgsOSknLCAnWzgsOSknKTsKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3JuZzIgV0hFUkUgaWQx ID0gJ1s4LDkpJyBBTkQgdmFsaWRfYXQgQD4gJzIwMTktMDEtMDEnOjpkYXRlOworU0VMRUNUICog RlJPTSB0ZW1wb3JhbF9mazJfcm5nMnJuZyBXSEVSRSBpZCA9ICdbMjAwLDIwMSknIE9SREVSIEJZ IGlkLCB2YWxpZF9hdDsKKworLS0KKy0tIHRlc3QgRksgcmVmZXJlbmNlZCB1cGRhdGVzIFNFVCBO VUxMICh0d28gc2NhbGFyIGNvbHMpCistLQorVFJVTkNBVEUgdGVtcG9yYWxfcm5nMiwgdGVtcG9y YWxfZmsyX3JuZzJybmc7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ybmcyIChpZDEsIGlkMiwgdmFs aWRfYXQpIFZBTFVFUyAoJ1s2LDcpJywgJ1s2LDcpJywgZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywg JzIwMjEtMDEtMDEnKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9mazJfcm5nMnJuZyAoaWQsIHZh bGlkX2F0LCBwYXJlbnRfaWQxLCBwYXJlbnRfaWQyKSBWQUxVRVMgKCdbMTAwLDEwMSknLCBkYXRl cmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpLCAnWzYsNyknLCAnWzYsNyknKTsKK0FM VEVSIFRBQkxFIHRlbXBvcmFsX2ZrMl9ybmcycm5nCisgIERST1AgQ09OU1RSQUlOVCB0ZW1wb3Jh bF9mazJfcm5nMnJuZ19maywKKyAgQUREIENPTlNUUkFJTlQgdGVtcG9yYWxfZmsyX3JuZzJybmdf ZmsKKyAgICBGT1JFSUdOIEtFWSAocGFyZW50X2lkMSwgcGFyZW50X2lkMiwgUEVSSU9EIHZhbGlk X2F0KQorICAgIFJFRkVSRU5DRVMgdGVtcG9yYWxfcm5nMgorICAgIE9OIERFTEVURSBTRVQgTlVM TCBPTiBVUERBVEUgU0VUIE5VTEw7CistLSBsZWZ0b3ZlcnMgb24gYm90aCBzaWRlczoKK1VQREFU RSB0ZW1wb3JhbF9ybmcyIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMTktMDEtMDEn IFRPICcyMDIwLTAxLTAxJyBTRVQgaWQxID0gJ1s3LDgpJyBXSEVSRSBpZDEgPSAnWzYsNyknOwor U0VMRUNUICogRlJPTSB0ZW1wb3JhbF9mazJfcm5nMnJuZyBXSEVSRSBpZCA9ICdbMTAwLDEwMSkn IE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKy0tIG5vbi1GUE8gdXBkYXRlOgorVVBEQVRFIHRlbXBv cmFsX3JuZzIgU0VUIGlkMSA9ICdbNyw4KScgV0hFUkUgaWQxID0gJ1s2LDcpJzsKK1NFTEVDVCAq IEZST00gdGVtcG9yYWxfZmsyX3JuZzJybmcgV0hFUkUgaWQgPSAnWzEwMCwxMDEpJyBPUkRFUiBC WSBpZCwgdmFsaWRfYXQ7CistLSBGSyBhY3Jvc3MgdHdvIHJlZmVyZW5jZWQgcm93czoKK0lOU0VS VCBJTlRPIHRlbXBvcmFsX3JuZzIgKGlkMSwgaWQyLCB2YWxpZF9hdCkgVkFMVUVTICgnWzgsOSkn LCAnWzgsOSknLCBkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMC0wMS0wMScpKTsKK0lOU0VS VCBJTlRPIHRlbXBvcmFsX3JuZzIgKGlkMSwgaWQyLCB2YWxpZF9hdCkgVkFMVUVTICgnWzgsOSkn LCAnWzgsOSknLCBkYXRlcmFuZ2UoJzIwMjAtMDEtMDEnLCAnMjAyMS0wMS0wMScpKTsKK0lOU0VS VCBJTlRPIHRlbXBvcmFsX2ZrMl9ybmcycm5nIChpZCwgdmFsaWRfYXQsIHBhcmVudF9pZDEsIHBh cmVudF9pZDIpIFZBTFVFUyAoJ1syMDAsMjAxKScsIGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcy MDIxLTAxLTAxJyksICdbOCw5KScsICdbOCw5KScpOworVVBEQVRFIHRlbXBvcmFsX3JuZzIgU0VU IGlkMSA9ICdbOSwxMCknIFdIRVJFIGlkMSA9ICdbOCw5KScgQU5EIHZhbGlkX2F0IEA+ICcyMDE5 LTAxLTAxJzo6ZGF0ZTsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX3JuZzJybmcgV0hFUkUg aWQgPSAnWzIwMCwyMDEpJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisKKy0tCistLSB0ZXN0IEZL IHJlZmVyZW5jZWQgZGVsZXRlcyBTRVQgTlVMTCAodHdvIHNjYWxhciBjb2xzKQorLS0KKworVFJV TkNBVEUgdGVtcG9yYWxfcm5nMiwgdGVtcG9yYWxfZmsyX3JuZzJybmc7CitJTlNFUlQgSU5UTyB0 ZW1wb3JhbF9ybmcyIChpZDEsIGlkMiwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s2LDcpJywgJ1s2LDcp JywgZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSk7CitJTlNFUlQgSU5UTyB0 ZW1wb3JhbF9mazJfcm5nMnJuZyAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQxLCBwYXJlbnRfaWQy KSBWQUxVRVMgKCdbMTAwLDEwMSknLCBkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0w MScpLCAnWzYsNyknLCAnWzYsNyknKTsKKy0tIGxlZnRvdmVycyBvbiBib3RoIHNpZGVzOgorREVM RVRFIEZST00gdGVtcG9yYWxfcm5nMiBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDE5 LTAxLTAxJyBUTyAnMjAyMC0wMS0wMScgV0hFUkUgaWQxID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZS T00gdGVtcG9yYWxfZmsyX3JuZzJybmcgV0hFUkUgaWQgPSAnWzEwMCwxMDEpJyBPUkRFUiBCWSBp ZCwgdmFsaWRfYXQ7CistLSBub24tRlBPIGRlbGV0ZToKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3Ju ZzIgV0hFUkUgaWQxID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX3JuZzJy bmcgV0hFUkUgaWQgPSAnWzEwMCwxMDEpJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CistLSBGSyBh Y3Jvc3MgdHdvIHJlZmVyZW5jZWQgcm93czoKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3JuZzIgKGlk MSwgaWQyLCB2YWxpZF9hdCkgVkFMVUVTICgnWzgsOSknLCAnWzgsOSknLCBkYXRlcmFuZ2UoJzIw MTgtMDEtMDEnLCAnMjAyMC0wMS0wMScpKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3JuZzIgKGlk MSwgaWQyLCB2YWxpZF9hdCkgVkFMVUVTICgnWzgsOSknLCAnWzgsOSknLCBkYXRlcmFuZ2UoJzIw MjAtMDEtMDEnLCAnMjAyMS0wMS0wMScpKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrMl9ybmcy cm5nIChpZCwgdmFsaWRfYXQsIHBhcmVudF9pZDEsIHBhcmVudF9pZDIpIFZBTFVFUyAoJ1syMDAs MjAxKScsIGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJyksICdbOCw5KScsICdb OCw5KScpOworREVMRVRFIEZST00gdGVtcG9yYWxfcm5nMiBXSEVSRSBpZDEgPSAnWzgsOSknIEFO RCB2YWxpZF9hdCBAPiAnMjAxOS0wMS0wMSc6OmRhdGU7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFs X2ZrMl9ybmcycm5nIFdIRVJFIGlkID0gJ1syMDAsMjAxKScgT1JERVIgQlkgaWQsIHZhbGlkX2F0 OworCistLQorLS0gdGVzdCBGSyByZWZlcmVuY2VkIGRlbGV0ZXMgU0VUIE5VTEwgKHR3byBzY2Fs YXIgY29scywgU0VUIE5VTEwgc3Vic2V0KQorLS0KKworVFJVTkNBVEUgdGVtcG9yYWxfcm5nMiwg dGVtcG9yYWxfZmsyX3JuZzJybmc7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ybmcyIChpZDEsIGlk MiwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s2LDcpJywgJ1s2LDcpJywgZGF0ZXJhbmdlKCcyMDE4LTAx LTAxJywgJzIwMjEtMDEtMDEnKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9mazJfcm5nMnJuZyAo aWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQxLCBwYXJlbnRfaWQyKSBWQUxVRVMgKCdbMTAwLDEwMSkn LCBkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpLCAnWzYsNyknLCAnWzYsNykn KTsKKy0tIGZhaWxzIGJlY2F1c2UgeW91IGNhbid0IHNldCB0aGUgUEVSSU9EIGNvbHVtbjoKK0FM VEVSIFRBQkxFIHRlbXBvcmFsX2ZrMl9ybmcycm5nCisgIERST1AgQ09OU1RSQUlOVCB0ZW1wb3Jh bF9mazJfcm5nMnJuZ19maywKKyAgQUREIENPTlNUUkFJTlQgdGVtcG9yYWxfZmsyX3JuZzJybmdf ZmsKKyAgICBGT1JFSUdOIEtFWSAocGFyZW50X2lkMSwgcGFyZW50X2lkMiwgUEVSSU9EIHZhbGlk X2F0KQorICAgIFJFRkVSRU5DRVMgdGVtcG9yYWxfcm5nMgorICAgIE9OIERFTEVURSBTRVQgTlVM TCAodmFsaWRfYXQpIE9OIFVQREFURSBTRVQgTlVMTDsKKy0tIG9rOgorQUxURVIgVEFCTEUgdGVt cG9yYWxfZmsyX3JuZzJybmcKKyAgRFJPUCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrMl9ybmcycm5n X2ZrLAorICBBREQgQ09OU1RSQUlOVCB0ZW1wb3JhbF9mazJfcm5nMnJuZ19maworICAgIEZPUkVJ R04gS0VZIChwYXJlbnRfaWQxLCBwYXJlbnRfaWQyLCBQRVJJT0QgdmFsaWRfYXQpCisgICAgUkVG RVJFTkNFUyB0ZW1wb3JhbF9ybmcyCisgICAgT04gREVMRVRFIFNFVCBOVUxMIChwYXJlbnRfaWQx KSBPTiBVUERBVEUgU0VUIE5VTEw7CistLSBsZWZ0b3ZlcnMgb24gYm90aCBzaWRlczoKK0RFTEVU RSBGUk9NIHRlbXBvcmFsX3JuZzIgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAxOS0w MS0wMScgVE8gJzIwMjAtMDEtMDEnIFdIRVJFIGlkMSA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9N IHRlbXBvcmFsX2ZrMl9ybmcycm5nIFdIRVJFIGlkID0gJ1sxMDAsMTAxKScgT1JERVIgQlkgaWQs IHZhbGlkX2F0OworLS0gbm9uLUZQTyBkZWxldGU6CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9ybmcy IFdIRVJFIGlkMSA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9ybmcycm5n IFdIRVJFIGlkID0gJ1sxMDAsMTAxKScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworLS0gRksgYWNy b3NzIHR3byByZWZlcmVuY2VkIHJvd3M6CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ybmcyIChpZDEs IGlkMiwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s4LDkpJywgJ1s4LDkpJywgZGF0ZXJhbmdlKCcyMDE4 LTAxLTAxJywgJzIwMjAtMDEtMDEnKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ybmcyIChpZDEs IGlkMiwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s4LDkpJywgJ1s4LDkpJywgZGF0ZXJhbmdlKCcyMDIw LTAxLTAxJywgJzIwMjEtMDEtMDEnKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9mazJfcm5nMnJu ZyAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQxLCBwYXJlbnRfaWQyKSBWQUxVRVMgKCdbMjAwLDIw MSknLCBkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpLCAnWzgsOSknLCAnWzgs OSknKTsKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3JuZzIgV0hFUkUgaWQxID0gJ1s4LDkpJyBBTkQg dmFsaWRfYXQgQD4gJzIwMTktMDEtMDEnOjpkYXRlOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9m azJfcm5nMnJuZyBXSEVSRSBpZCA9ICdbMjAwLDIwMSknIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsK KworLS0KKy0tIHRlc3QgRksgcmVmZXJlbmNlZCB1cGRhdGVzIFNFVCBERUZBVUxUICh0d28gc2Nh bGFyIGNvbHMpCistLQorCitUUlVOQ0FURSB0ZW1wb3JhbF9ybmcyLCB0ZW1wb3JhbF9mazJfcm5n MnJuZzsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3JuZzIgKGlkMSwgaWQyLCB2YWxpZF9hdCkgVkFM VUVTICgnWy0xLC0xXScsICdbLTEsLTFdJywgZGF0ZXJhbmdlKG51bGwsIG51bGwpKTsKK0lOU0VS VCBJTlRPIHRlbXBvcmFsX3JuZzIgKGlkMSwgaWQyLCB2YWxpZF9hdCkgVkFMVUVTICgnWzYsNykn LCAnWzYsNyknLCBkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpKTsKK0lOU0VS VCBJTlRPIHRlbXBvcmFsX2ZrMl9ybmcycm5nIChpZCwgdmFsaWRfYXQsIHBhcmVudF9pZDEsIHBh cmVudF9pZDIpIFZBTFVFUyAoJ1sxMDAsMTAxKScsIGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcy MDIxLTAxLTAxJyksICdbNiw3KScsICdbNiw3KScpOworQUxURVIgVEFCTEUgdGVtcG9yYWxfZmsy X3JuZzJybmcKKyAgQUxURVIgQ09MVU1OIHBhcmVudF9pZDEgU0VUIERFRkFVTFQgJ1stMSwtMV0n LAorICBBTFRFUiBDT0xVTU4gcGFyZW50X2lkMiBTRVQgREVGQVVMVCAnWy0xLC0xXScsCisgIERS T1AgQ09OU1RSQUlOVCB0ZW1wb3JhbF9mazJfcm5nMnJuZ19maywKKyAgQUREIENPTlNUUkFJTlQg dGVtcG9yYWxfZmsyX3JuZzJybmdfZmsKKyAgICBGT1JFSUdOIEtFWSAocGFyZW50X2lkMSwgcGFy ZW50X2lkMiwgUEVSSU9EIHZhbGlkX2F0KQorICAgIFJFRkVSRU5DRVMgdGVtcG9yYWxfcm5nMgor ICAgIE9OIERFTEVURSBTRVQgREVGQVVMVCBPTiBVUERBVEUgU0VUIERFRkFVTFQ7CistLSBsZWZ0 b3ZlcnMgb24gYm90aCBzaWRlczoKK1VQREFURSB0ZW1wb3JhbF9ybmcyIEZPUiBQT1JUSU9OIE9G IHZhbGlkX2F0IEZST00gJzIwMTktMDEtMDEnIFRPICcyMDIwLTAxLTAxJyBTRVQgaWQxID0gJ1s3 LDgpJywgaWQyID0gJ1s3LDgpJyBXSEVSRSBpZDEgPSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0 ZW1wb3JhbF9mazJfcm5nMnJuZyBXSEVSRSBpZCA9ICdbMTAwLDEwMSknIE9SREVSIEJZIGlkLCB2 YWxpZF9hdDsKKy0tIG5vbi1GUE8gdXBkYXRlOgorVVBEQVRFIHRlbXBvcmFsX3JuZzIgU0VUIGlk MSA9ICdbNyw4KScsIGlkMiA9ICdbNyw4KScgV0hFUkUgaWQxID0gJ1s2LDcpJzsKK1NFTEVDVCAq IEZST00gdGVtcG9yYWxfZmsyX3JuZzJybmcgV0hFUkUgaWQgPSAnWzEwMCwxMDEpJyBPUkRFUiBC WSBpZCwgdmFsaWRfYXQ7CistLSBGSyBhY3Jvc3MgdHdvIHJlZmVyZW5jZWQgcm93czoKK0lOU0VS VCBJTlRPIHRlbXBvcmFsX3JuZzIgKGlkMSwgaWQyLCB2YWxpZF9hdCkgVkFMVUVTICgnWzgsOSkn LCAnWzgsOSknLCBkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMC0wMS0wMScpKTsKK0lOU0VS VCBJTlRPIHRlbXBvcmFsX3JuZzIgKGlkMSwgaWQyLCB2YWxpZF9hdCkgVkFMVUVTICgnWzgsOSkn LCAnWzgsOSknLCBkYXRlcmFuZ2UoJzIwMjAtMDEtMDEnLCAnMjAyMS0wMS0wMScpKTsKK0lOU0VS VCBJTlRPIHRlbXBvcmFsX2ZrMl9ybmcycm5nIChpZCwgdmFsaWRfYXQsIHBhcmVudF9pZDEsIHBh cmVudF9pZDIpIFZBTFVFUyAoJ1syMDAsMjAxKScsIGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcy MDIxLTAxLTAxJyksICdbOCw5KScsICdbOCw5KScpOworVVBEQVRFIHRlbXBvcmFsX3JuZzIgU0VU IGlkMSA9ICdbOSwxMCknLCBpZDIgPSAnWzksMTApJyBXSEVSRSBpZDEgPSAnWzgsOSknIEFORCB2 YWxpZF9hdCBAPiAnMjAxOS0wMS0wMSc6OmRhdGU7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2Zr Ml9ybmcycm5nIFdIRVJFIGlkID0gJ1syMDAsMjAxKScgT1JERVIgQlkgaWQsIHZhbGlkX2F0Owor CistLQorLS0gdGVzdCBGSyByZWZlcmVuY2VkIGRlbGV0ZXMgU0VUIERFRkFVTFQgKHR3byBzY2Fs YXIgY29scykKKy0tCisKK1RSVU5DQVRFIHRlbXBvcmFsX3JuZzIsIHRlbXBvcmFsX2ZrMl9ybmcy cm5nOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcm5nMiAoaWQxLCBpZDIsIHZhbGlkX2F0KSBWQUxV RVMgKCdbLTEsLTFdJywgJ1stMSwtMV0nLCBkYXRlcmFuZ2UobnVsbCwgbnVsbCkpOworSU5TRVJU IElOVE8gdGVtcG9yYWxfcm5nMiAoaWQxLCBpZDIsIHZhbGlkX2F0KSBWQUxVRVMgKCdbNiw3KScs ICdbNiw3KScsIGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJykpOworSU5TRVJU IElOVE8gdGVtcG9yYWxfZmsyX3JuZzJybmcgKGlkLCB2YWxpZF9hdCwgcGFyZW50X2lkMSwgcGFy ZW50X2lkMikgVkFMVUVTICgnWzEwMCwxMDEpJywgZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIw MjEtMDEtMDEnKSwgJ1s2LDcpJywgJ1s2LDcpJyk7CistLSBsZWZ0b3ZlcnMgb24gYm90aCBzaWRl czoKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3JuZzIgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJP TSAnMjAxOS0wMS0wMScgVE8gJzIwMjAtMDEtMDEnIFdIRVJFIGlkMSA9ICdbNiw3KSc7CitTRUxF Q1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9ybmcycm5nIFdIRVJFIGlkID0gJ1sxMDAsMTAxKScgT1JE RVIgQlkgaWQsIHZhbGlkX2F0OworLS0gbm9uLUZQTyB1cGRhdGU6CitERUxFVEUgRlJPTSB0ZW1w b3JhbF9ybmcyIFdIRVJFIGlkMSA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2Zr Ml9ybmcycm5nIFdIRVJFIGlkID0gJ1sxMDAsMTAxKScgT1JERVIgQlkgaWQsIHZhbGlkX2F0Owor LS0gRksgYWNyb3NzIHR3byByZWZlcmVuY2VkIHJvd3M6CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9y bmcyIChpZDEsIGlkMiwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s4LDkpJywgJ1s4LDkpJywgZGF0ZXJh bmdlKCcyMDE4LTAxLTAxJywgJzIwMjAtMDEtMDEnKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9y bmcyIChpZDEsIGlkMiwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s4LDkpJywgJ1s4LDkpJywgZGF0ZXJh bmdlKCcyMDIwLTAxLTAxJywgJzIwMjEtMDEtMDEnKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9m azJfcm5nMnJuZyAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQxLCBwYXJlbnRfaWQyKSBWQUxVRVMg KCdbMjAwLDIwMSknLCBkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpLCAnWzgs OSknLCAnWzgsOSknKTsKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3JuZzIgV0hFUkUgaWQxID0gJ1s4 LDkpJyBBTkQgdmFsaWRfYXQgQD4gJzIwMTktMDEtMDEnOjpkYXRlOworU0VMRUNUICogRlJPTSB0 ZW1wb3JhbF9mazJfcm5nMnJuZyBXSEVSRSBpZCA9ICdbMjAwLDIwMSknIE9SREVSIEJZIGlkLCB2 YWxpZF9hdDsKKworLS0KKy0tIHRlc3QgRksgcmVmZXJlbmNlZCBkZWxldGVzIFNFVCBERUZBVUxU ICh0d28gc2NhbGFyIGNvbHMsIFNFVCBERUZBVUxUIHN1YnNldCkKKy0tCisKK1RSVU5DQVRFIHRl bXBvcmFsX3JuZzIsIHRlbXBvcmFsX2ZrMl9ybmcycm5nOworSU5TRVJUIElOVE8gdGVtcG9yYWxf cm5nMiAoaWQxLCBpZDIsIHZhbGlkX2F0KSBWQUxVRVMgKCdbLTEsLTFdJywgJ1s2LDcpJywgZGF0 ZXJhbmdlKG51bGwsIG51bGwpKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3JuZzIgKGlkMSwgaWQy LCB2YWxpZF9hdCkgVkFMVUVTICgnWzYsNyknLCAnWzYsNyknLCBkYXRlcmFuZ2UoJzIwMTgtMDEt MDEnLCAnMjAyMS0wMS0wMScpKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrMl9ybmcycm5nIChp ZCwgdmFsaWRfYXQsIHBhcmVudF9pZDEsIHBhcmVudF9pZDIpIFZBTFVFUyAoJ1sxMDAsMTAxKScs IGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJyksICdbNiw3KScsICdbNiw3KScp OworLS0gZmFpbHMgYmVjYXVzZSB5b3UgY2FuJ3Qgc2V0IHRoZSBQRVJJT0QgY29sdW1uOgorQUxU RVIgVEFCTEUgdGVtcG9yYWxfZmsyX3JuZzJybmcKKyAgQUxURVIgQ09MVU1OIHBhcmVudF9pZDEg U0VUIERFRkFVTFQgJ1stMSwtMV0nLAorICBEUk9QIENPTlNUUkFJTlQgdGVtcG9yYWxfZmsyX3Ju ZzJybmdfZmssCisgIEFERCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrMl9ybmcycm5nX2ZrCisgICAg Rk9SRUlHTiBLRVkgKHBhcmVudF9pZDEsIHBhcmVudF9pZDIsIFBFUklPRCB2YWxpZF9hdCkKKyAg ICBSRUZFUkVOQ0VTIHRlbXBvcmFsX3JuZzIKKyAgICBPTiBERUxFVEUgU0VUIERFRkFVTFQgKHZh bGlkX2F0KSBPTiBVUERBVEUgU0VUIERFRkFVTFQ7CistLSBvazoKK0FMVEVSIFRBQkxFIHRlbXBv cmFsX2ZrMl9ybmcycm5nCisgIEFMVEVSIENPTFVNTiBwYXJlbnRfaWQxIFNFVCBERUZBVUxUICdb LTEsLTFdJywKKyAgRFJPUCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrMl9ybmcycm5nX2ZrLAorICBB REQgQ09OU1RSQUlOVCB0ZW1wb3JhbF9mazJfcm5nMnJuZ19maworICAgIEZPUkVJR04gS0VZIChw YXJlbnRfaWQxLCBwYXJlbnRfaWQyLCBQRVJJT0QgdmFsaWRfYXQpCisgICAgUkVGRVJFTkNFUyB0 ZW1wb3JhbF9ybmcyCisgICAgT04gREVMRVRFIFNFVCBERUZBVUxUIChwYXJlbnRfaWQxKSBPTiBV UERBVEUgU0VUIERFRkFVTFQ7CistLSBsZWZ0b3ZlcnMgb24gYm90aCBzaWRlczoKK0RFTEVURSBG Uk9NIHRlbXBvcmFsX3JuZzIgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAxOS0wMS0w MScgVE8gJzIwMjAtMDEtMDEnIFdIRVJFIGlkMSA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRl bXBvcmFsX2ZrMl9ybmcycm5nIFdIRVJFIGlkID0gJ1sxMDAsMTAxKScgT1JERVIgQlkgaWQsIHZh bGlkX2F0OworLS0gbm9uLUZQTyB1cGRhdGU6CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9ybmcyIFdI RVJFIGlkMSA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9ybmcycm5nIFdI RVJFIGlkID0gJ1sxMDAsMTAxKScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworLS0gRksgYWNyb3Nz IHR3byByZWZlcmVuY2VkIHJvd3M6CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ybmcyIChpZDEsIGlk MiwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s4LDkpJywgJ1s4LDkpJywgZGF0ZXJhbmdlKCcyMDE4LTAx LTAxJywgJzIwMjAtMDEtMDEnKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ybmcyIChpZDEsIGlk MiwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s4LDkpJywgJ1s4LDkpJywgZGF0ZXJhbmdlKCcyMDIwLTAx LTAxJywgJzIwMjEtMDEtMDEnKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ybmcyIChpZDEsIGlk MiwgdmFsaWRfYXQpIFZBTFVFUyAoJ1stMSwtMV0nLCAnWzgsOSknLCBkYXRlcmFuZ2UobnVsbCwg bnVsbCkpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmsyX3JuZzJybmcgKGlkLCB2YWxpZF9hdCwg cGFyZW50X2lkMSwgcGFyZW50X2lkMikgVkFMVUVTICgnWzIwMCwyMDEpJywgZGF0ZXJhbmdlKCcy MDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSwgJ1s4LDkpJywgJ1s4LDkpJyk7CitERUxFVEUgRlJP TSB0ZW1wb3JhbF9ybmcyIFdIRVJFIGlkMSA9ICdbOCw5KScgQU5EIHZhbGlkX2F0IEA+ICcyMDE5 LTAxLTAxJzo6ZGF0ZTsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX3JuZzJybmcgV0hFUkUg aWQgPSAnWzIwMCwyMDEpJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CiAKIC0tCiAtLSB0ZXN0IEZP UkVJR04gS0VZLCBtdWx0aXJhbmdlIHJlZmVyZW5jZXMgbXVsdGlyYW5nZQpAQCAtMTg1NSw2ICsy MTkxLDQwOCBAQCBXSEVSRSBpZCA9ICdbNSw2KSc7CiBERUxFVEUgRlJPTSB0ZW1wb3JhbF9ma19t bHRybmcybWx0cm5nIFdIRVJFIGlkID0gJ1szLDQpJzsKIERFTEVURSBGUk9NIHRlbXBvcmFsX21s dHJuZyBXSEVSRSBpZCA9ICdbNSw2KScgQU5EIHZhbGlkX2F0ID0gZGF0ZW11bHRpcmFuZ2UoZGF0 ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMTgtMDItMDEnKSk7CiAKKy0tCisKKy0tCistLSBtbHRy bmcybWx0cm5nIHRlc3QgT04gVVBEQVRFL0RFTEVURSBvcHRpb25zCistLQorLS0gVE9DOgorLS0g cmVmZXJlbmNlZCB1cGRhdGVzIENBU0NBREUKKy0tIHJlZmVyZW5jZWQgZGVsZXRlcyBDQVNDQURF CistLSByZWZlcmVuY2VkIHVwZGF0ZXMgU0VUIE5VTEwKKy0tIHJlZmVyZW5jZWQgZGVsZXRlcyBT RVQgTlVMTAorLS0gcmVmZXJlbmNlZCB1cGRhdGVzIFNFVCBERUZBVUxUCistLSByZWZlcmVuY2Vk IGRlbGV0ZXMgU0VUIERFRkFVTFQKKy0tIHJlZmVyZW5jZWQgdXBkYXRlcyBDQVNDQURFICh0d28g c2NhbGFyIGNvbHMpCistLSByZWZlcmVuY2VkIGRlbGV0ZXMgQ0FTQ0FERSAodHdvIHNjYWxhciBj b2xzKQorLS0gcmVmZXJlbmNlZCB1cGRhdGVzIFNFVCBOVUxMICh0d28gc2NhbGFyIGNvbHMpCist LSByZWZlcmVuY2VkIGRlbGV0ZXMgU0VUIE5VTEwgKHR3byBzY2FsYXIgY29scykKKy0tIHJlZmVy ZW5jZWQgZGVsZXRlcyBTRVQgTlVMTCAodHdvIHNjYWxhciBjb2xzLCBTRVQgTlVMTCBzdWJzZXQp CistLSByZWZlcmVuY2VkIHVwZGF0ZXMgU0VUIERFRkFVTFQgKHR3byBzY2FsYXIgY29scykKKy0t IHJlZmVyZW5jZWQgZGVsZXRlcyBTRVQgREVGQVVMVCAodHdvIHNjYWxhciBjb2xzKQorLS0gcmVm ZXJlbmNlZCBkZWxldGVzIFNFVCBERUZBVUxUICh0d28gc2NhbGFyIGNvbHMsIFNFVCBERUZBVUxU IHN1YnNldCkKKworLS0KKy0tIHRlc3QgRksgcmVmZXJlbmNlZCB1cGRhdGVzIENBU0NBREUKKy0t CisKK1RSVU5DQVRFIHRlbXBvcmFsX21sdHJuZywgdGVtcG9yYWxfZmtfbWx0cm5nMm1sdHJuZzsK K0lOU0VSVCBJTlRPIHRlbXBvcmFsX21sdHJuZyAoaWQsIHZhbGlkX2F0KSBWQUxVRVMgKCdbNiw3 KScsIGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJykp KTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrX21sdHJuZzJtbHRybmcgKGlkLCB2YWxpZF9hdCwg cGFyZW50X2lkKSBWQUxVRVMgKCdbMTAwLDEwMSknLCBkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2Uo JzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpKSwgJ1s2LDcpJyk7CitBTFRFUiBUQUJMRSB0ZW1w b3JhbF9ma19tbHRybmcybWx0cm5nCisgIERST1AgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19tbHRy bmcybWx0cm5nX2ZrLAorICBBREQgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19tbHRybmcybWx0cm5n X2ZrCisgICAgRk9SRUlHTiBLRVkgKHBhcmVudF9pZCwgUEVSSU9EIHZhbGlkX2F0KQorICAgIFJF RkVSRU5DRVMgdGVtcG9yYWxfbWx0cm5nCisgICAgT04gREVMRVRFIENBU0NBREUgT04gVVBEQVRF IENBU0NBREU7CistLSBsZWZ0b3ZlcnMgb24gYm90aCBzaWRlczoKK1VQREFURSB0ZW1wb3JhbF9t bHRybmcgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgKGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgn MjAxOS0wMS0wMScsICcyMDIwLTAxLTAxJykpKSBTRVQgaWQgPSAnWzcsOCknIFdIRVJFIGlkID0g J1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmtfbWx0cm5nMm1sdHJuZyBXSEVSRSBp ZCA9ICdbMTAwLDEwMSknIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKy0tIG5vbi1GUE8gdXBkYXRl OgorVVBEQVRFIHRlbXBvcmFsX21sdHJuZyBTRVQgaWQgPSAnWzcsOCknIFdIRVJFIGlkID0gJ1s2 LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmtfbWx0cm5nMm1sdHJuZyBXSEVSRSBpZCA9 ICdbMTAwLDEwMSknIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKy0tIEZLIGFjcm9zcyB0d28gcmVm ZXJlbmNlZCByb3dzOgorSU5TRVJUIElOVE8gdGVtcG9yYWxfbWx0cm5nIChpZCwgdmFsaWRfYXQp IFZBTFVFUyAoJ1s4LDkpJywgZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywg JzIwMjAtMDEtMDEnKSkpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfbWx0cm5nIChpZCwgdmFsaWRf YXQpIFZBTFVFUyAoJ1s4LDkpJywgZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDIwLTAxLTAx JywgJzIwMjEtMDEtMDEnKSkpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmtfbWx0cm5nMm1sdHJu ZyAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQpIFZBTFVFUyAoJ1syMDAsMjAxKScsIGRhdGVtdWx0 aXJhbmdlKGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJykpLCAnWzgsOSknKTsK K1VQREFURSB0ZW1wb3JhbF9tbHRybmcgU0VUIGlkID0gJ1s5LDEwKScgV0hFUkUgaWQgPSAnWzgs OSknIEFORCB2YWxpZF9hdCBAPiAnMjAxOS0wMS0wMSc6OmRhdGU7CitTRUxFQ1QgKiBGUk9NIHRl bXBvcmFsX2ZrX21sdHJuZzJtbHRybmcgV0hFUkUgaWQgPSAnWzIwMCwyMDEpJyBPUkRFUiBCWSBp ZCwgdmFsaWRfYXQ7CisKKy0tCistLSB0ZXN0IEZLIHJlZmVyZW5jZWQgZGVsZXRlcyBDQVNDQURF CistLQorCitUUlVOQ0FURSB0ZW1wb3JhbF9tbHRybmcsIHRlbXBvcmFsX2ZrX21sdHJuZzJtbHRy bmc7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9tbHRybmcgKGlkLCB2YWxpZF9hdCkgVkFMVUVTICgn WzYsNyknLCBkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0w MScpKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ma19tbHRybmcybWx0cm5nIChpZCwgdmFsaWRf YXQsIHBhcmVudF9pZCkgVkFMVUVTICgnWzEwMCwxMDEpJywgZGF0ZW11bHRpcmFuZ2UoZGF0ZXJh bmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSksICdbNiw3KScpOworLS0gbGVmdG92ZXJz IG9uIGJvdGggc2lkZXM6CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9tbHRybmcgRk9SIFBPUlRJT04g T0YgdmFsaWRfYXQgKGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAxOS0wMS0wMScsICcyMDIw LTAxLTAxJykpKSBXSEVSRSBpZCA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2Zr X21sdHJuZzJtbHRybmcgV0hFUkUgaWQgPSAnWzEwMCwxMDEpJyBPUkRFUiBCWSBpZCwgdmFsaWRf YXQ7CistLSBub24tRlBPIGRlbGV0ZToKK0RFTEVURSBGUk9NIHRlbXBvcmFsX21sdHJuZyBXSEVS RSBpZCA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrX21sdHJuZzJtbHRybmcg V0hFUkUgaWQgPSAnWzEwMCwxMDEpJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CistLSBGSyBhY3Jv c3MgdHdvIHJlZmVyZW5jZWQgcm93czoKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX21sdHJuZyAoaWQs IHZhbGlkX2F0KSBWQUxVRVMgKCdbOCw5KScsIGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAx OC0wMS0wMScsICcyMDIwLTAxLTAxJykpKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX21sdHJuZyAo aWQsIHZhbGlkX2F0KSBWQUxVRVMgKCdbOCw5KScsIGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgn MjAyMC0wMS0wMScsICcyMDIxLTAxLTAxJykpKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrX21s dHJuZzJtbHRybmcgKGlkLCB2YWxpZF9hdCwgcGFyZW50X2lkKSBWQUxVRVMgKCdbMjAwLDIwMSkn LCBkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpKSwg J1s4LDkpJyk7CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9tbHRybmcgV0hFUkUgaWQgPSAnWzgsOSkn IEFORCB2YWxpZF9hdCBAPiAnMjAxOS0wMS0wMSc6OmRhdGU7CitTRUxFQ1QgKiBGUk9NIHRlbXBv cmFsX2ZrX21sdHJuZzJtbHRybmcgV0hFUkUgaWQgPSAnWzIwMCwyMDEpJyBPUkRFUiBCWSBpZCwg dmFsaWRfYXQ7CisKKy0tCistLSB0ZXN0IEZLIHJlZmVyZW5jZWQgdXBkYXRlcyBTRVQgTlVMTAor LS0KKworVFJVTkNBVEUgdGVtcG9yYWxfbWx0cm5nLCB0ZW1wb3JhbF9ma19tbHRybmcybWx0cm5n OworSU5TRVJUIElOVE8gdGVtcG9yYWxfbWx0cm5nIChpZCwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s2 LDcpJywgZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEn KSkpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmtfbWx0cm5nMm1sdHJuZyAoaWQsIHZhbGlkX2F0 LCBwYXJlbnRfaWQpIFZBTFVFUyAoJ1sxMDAsMTAxKScsIGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5n ZSgnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJykpLCAnWzYsNyknKTsKK0FMVEVSIFRBQkxFIHRl bXBvcmFsX2ZrX21sdHJuZzJtbHRybmcKKyAgRFJPUCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX21s dHJuZzJtbHRybmdfZmssCisgIEFERCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrX21sdHJuZzJtbHRy bmdfZmsKKyAgICBGT1JFSUdOIEtFWSAocGFyZW50X2lkLCBQRVJJT0QgdmFsaWRfYXQpCisgICAg UkVGRVJFTkNFUyB0ZW1wb3JhbF9tbHRybmcKKyAgICBPTiBERUxFVEUgU0VUIE5VTEwgT04gVVBE QVRFIFNFVCBOVUxMOworLS0gbGVmdG92ZXJzIG9uIGJvdGggc2lkZXM6CitVUERBVEUgdGVtcG9y YWxfbWx0cm5nIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IChkYXRlbXVsdGlyYW5nZShkYXRlcmFu Z2UoJzIwMTktMDEtMDEnLCAnMjAyMC0wMS0wMScpKSkgU0VUIGlkID0gJ1s3LDgpJyBXSEVSRSBp ZCA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrX21sdHJuZzJtbHRybmcgV0hF UkUgaWQgPSAnWzEwMCwxMDEpJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CistLSBub24tRlBPIHVw ZGF0ZToKK1VQREFURSB0ZW1wb3JhbF9tbHRybmcgU0VUIGlkID0gJ1s3LDgpJyBXSEVSRSBpZCA9 ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrX21sdHJuZzJtbHRybmcgV0hFUkUg aWQgPSAnWzEwMCwxMDEpJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CistLSBGSyBhY3Jvc3MgdHdv IHJlZmVyZW5jZWQgcm93czoKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX21sdHJuZyAoaWQsIHZhbGlk X2F0KSBWQUxVRVMgKCdbOCw5KScsIGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAxOC0wMS0w MScsICcyMDIwLTAxLTAxJykpKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX21sdHJuZyAoaWQsIHZh bGlkX2F0KSBWQUxVRVMgKCdbOCw5KScsIGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAyMC0w MS0wMScsICcyMDIxLTAxLTAxJykpKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrX21sdHJuZzJt bHRybmcgKGlkLCB2YWxpZF9hdCwgcGFyZW50X2lkKSBWQUxVRVMgKCdbMjAwLDIwMSknLCBkYXRl bXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpKSwgJ1s4LDkp Jyk7CitVUERBVEUgdGVtcG9yYWxfbWx0cm5nIFNFVCBpZCA9ICdbOSwxMCknIFdIRVJFIGlkID0g J1s4LDkpJyBBTkQgdmFsaWRfYXQgQD4gJzIwMTktMDEtMDEnOjpkYXRlOworU0VMRUNUICogRlJP TSB0ZW1wb3JhbF9ma19tbHRybmcybWx0cm5nIFdIRVJFIGlkID0gJ1syMDAsMjAxKScgT1JERVIg QlkgaWQsIHZhbGlkX2F0OworCistLQorLS0gdGVzdCBGSyByZWZlcmVuY2VkIGRlbGV0ZXMgU0VU IE5VTEwKKy0tCisKK1RSVU5DQVRFIHRlbXBvcmFsX21sdHJuZywgdGVtcG9yYWxfZmtfbWx0cm5n Mm1sdHJuZzsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX21sdHJuZyAoaWQsIHZhbGlkX2F0KSBWQUxV RVMgKCdbNiw3KScsIGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIx LTAxLTAxJykpKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrX21sdHJuZzJtbHRybmcgKGlkLCB2 YWxpZF9hdCwgcGFyZW50X2lkKSBWQUxVRVMgKCdbMTAwLDEwMSknLCBkYXRlbXVsdGlyYW5nZShk YXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpKSwgJ1s2LDcpJyk7CistLSBsZWZ0 b3ZlcnMgb24gYm90aCBzaWRlczoKK0RFTEVURSBGUk9NIHRlbXBvcmFsX21sdHJuZyBGT1IgUE9S VElPTiBPRiB2YWxpZF9hdCAoZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDE5LTAxLTAxJywg JzIwMjAtMDEtMDEnKSkpIFdIRVJFIGlkID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9y YWxfZmtfbWx0cm5nMm1sdHJuZyBXSEVSRSBpZCA9ICdbMTAwLDEwMSknIE9SREVSIEJZIGlkLCB2 YWxpZF9hdDsKKy0tIG5vbi1GUE8gZGVsZXRlOgorREVMRVRFIEZST00gdGVtcG9yYWxfbWx0cm5n IFdIRVJFIGlkID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmtfbWx0cm5nMm1s dHJuZyBXSEVSRSBpZCA9ICdbMTAwLDEwMSknIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKy0tIEZL IGFjcm9zcyB0d28gcmVmZXJlbmNlZCByb3dzOgorSU5TRVJUIElOVE8gdGVtcG9yYWxfbWx0cm5n IChpZCwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s4LDkpJywgZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdl KCcyMDE4LTAxLTAxJywgJzIwMjAtMDEtMDEnKSkpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfbWx0 cm5nIChpZCwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s4LDkpJywgZGF0ZW11bHRpcmFuZ2UoZGF0ZXJh bmdlKCcyMDIwLTAxLTAxJywgJzIwMjEtMDEtMDEnKSkpOworSU5TRVJUIElOVE8gdGVtcG9yYWxf ZmtfbWx0cm5nMm1sdHJuZyAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQpIFZBTFVFUyAoJ1syMDAs MjAxKScsIGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAx JykpLCAnWzgsOSknKTsKK0RFTEVURSBGUk9NIHRlbXBvcmFsX21sdHJuZyBXSEVSRSBpZCA9ICdb OCw5KScgQU5EIHZhbGlkX2F0IEA+ICcyMDE5LTAxLTAxJzo6ZGF0ZTsKK1NFTEVDVCAqIEZST00g dGVtcG9yYWxfZmtfbWx0cm5nMm1sdHJuZyBXSEVSRSBpZCA9ICdbMjAwLDIwMSknIE9SREVSIEJZ IGlkLCB2YWxpZF9hdDsKKworLS0KKy0tIHRlc3QgRksgcmVmZXJlbmNlZCB1cGRhdGVzIFNFVCBE RUZBVUxUCistLQorCitUUlVOQ0FURSB0ZW1wb3JhbF9tbHRybmcsIHRlbXBvcmFsX2ZrX21sdHJu ZzJtbHRybmc7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9tbHRybmcgKGlkLCB2YWxpZF9hdCkgVkFM VUVTICgnWy0xLC0xXScsIGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZShudWxsLCBudWxsKSkpOwor SU5TRVJUIElOVE8gdGVtcG9yYWxfbWx0cm5nIChpZCwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s2LDcp JywgZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSkp OworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmtfbWx0cm5nMm1sdHJuZyAoaWQsIHZhbGlkX2F0LCBw YXJlbnRfaWQpIFZBTFVFUyAoJ1sxMDAsMTAxKScsIGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgn MjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJykpLCAnWzYsNyknKTsKK0FMVEVSIFRBQkxFIHRlbXBv cmFsX2ZrX21sdHJuZzJtbHRybmcKKyAgQUxURVIgQ09MVU1OIHBhcmVudF9pZCBTRVQgREVGQVVM VCAnWy0xLC0xXScsCisgIERST1AgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19tbHRybmcybWx0cm5n X2ZrLAorICBBREQgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ma19tbHRybmcybWx0cm5nX2ZrCisgICAg Rk9SRUlHTiBLRVkgKHBhcmVudF9pZCwgUEVSSU9EIHZhbGlkX2F0KQorICAgIFJFRkVSRU5DRVMg dGVtcG9yYWxfbWx0cm5nCisgICAgT04gREVMRVRFIFNFVCBERUZBVUxUIE9OIFVQREFURSBTRVQg REVGQVVMVDsKKy0tIGxlZnRvdmVycyBvbiBib3RoIHNpZGVzOgorVVBEQVRFIHRlbXBvcmFsX21s dHJuZyBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCAoZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcy MDE5LTAxLTAxJywgJzIwMjAtMDEtMDEnKSkpIFNFVCBpZCA9ICdbNyw4KScgV0hFUkUgaWQgPSAn WzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9ma19tbHRybmcybWx0cm5nIFdIRVJFIGlk ID0gJ1sxMDAsMTAxKScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworLS0gbm9uLUZQTyB1cGRhdGU6 CitVUERBVEUgdGVtcG9yYWxfbWx0cm5nIFNFVCBpZCA9ICdbNyw4KScgV0hFUkUgaWQgPSAnWzYs NyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9ma19tbHRybmcybWx0cm5nIFdIRVJFIGlkID0g J1sxMDAsMTAxKScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworLS0gRksgYWNyb3NzIHR3byByZWZl cmVuY2VkIHJvd3M6CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9tbHRybmcgKGlkLCB2YWxpZF9hdCkg VkFMVUVTICgnWzgsOSknLCBkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAn MjAyMC0wMS0wMScpKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9tbHRybmcgKGlkLCB2YWxpZF9h dCkgVkFMVUVTICgnWzgsOSknLCBkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIwMjAtMDEtMDEn LCAnMjAyMS0wMS0wMScpKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ma19tbHRybmcybWx0cm5n IChpZCwgdmFsaWRfYXQsIHBhcmVudF9pZCkgVkFMVUVTICgnWzIwMCwyMDEpJywgZGF0ZW11bHRp cmFuZ2UoZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSksICdbOCw5KScpOwor VVBEQVRFIHRlbXBvcmFsX21sdHJuZyBTRVQgaWQgPSAnWzksMTApJyBXSEVSRSBpZCA9ICdbOCw5 KScgQU5EIHZhbGlkX2F0IEA+ICcyMDE5LTAxLTAxJzo6ZGF0ZTsKK1NFTEVDVCAqIEZST00gdGVt cG9yYWxfZmtfbWx0cm5nMm1sdHJuZyBXSEVSRSBpZCA9ICdbMjAwLDIwMSknIE9SREVSIEJZIGlk LCB2YWxpZF9hdDsKKworLS0KKy0tIHRlc3QgRksgcmVmZXJlbmNlZCBkZWxldGVzIFNFVCBERUZB VUxUCistLQorCitUUlVOQ0FURSB0ZW1wb3JhbF9tbHRybmcsIHRlbXBvcmFsX2ZrX21sdHJuZzJt bHRybmc7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9tbHRybmcgKGlkLCB2YWxpZF9hdCkgVkFMVUVT ICgnWy0xLC0xXScsIGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZShudWxsLCBudWxsKSkpOworSU5T RVJUIElOVE8gdGVtcG9yYWxfbWx0cm5nIChpZCwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s2LDcpJywg ZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSkpOwor SU5TRVJUIElOVE8gdGVtcG9yYWxfZmtfbWx0cm5nMm1sdHJuZyAoaWQsIHZhbGlkX2F0LCBwYXJl bnRfaWQpIFZBTFVFUyAoJ1sxMDAsMTAxKScsIGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAx OC0wMS0wMScsICcyMDIxLTAxLTAxJykpLCAnWzYsNyknKTsKKy0tIGxlZnRvdmVycyBvbiBib3Ro IHNpZGVzOgorREVMRVRFIEZST00gdGVtcG9yYWxfbWx0cm5nIEZPUiBQT1JUSU9OIE9GIHZhbGlk X2F0IChkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIwMTktMDEtMDEnLCAnMjAyMC0wMS0wMScp KSkgV0hFUkUgaWQgPSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9ma19tbHRybmcy bWx0cm5nIFdIRVJFIGlkID0gJ1sxMDAsMTAxKScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworLS0g bm9uLUZQTyB1cGRhdGU6CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9tbHRybmcgV0hFUkUgaWQgPSAn WzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9ma19tbHRybmcybWx0cm5nIFdIRVJFIGlk ID0gJ1sxMDAsMTAxKScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworLS0gRksgYWNyb3NzIHR3byBy ZWZlcmVuY2VkIHJvd3M6CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9tbHRybmcgKGlkLCB2YWxpZF9h dCkgVkFMVUVTICgnWzgsOSknLCBkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIwMTgtMDEtMDEn LCAnMjAyMC0wMS0wMScpKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9tbHRybmcgKGlkLCB2YWxp ZF9hdCkgVkFMVUVTICgnWzgsOSknLCBkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIwMjAtMDEt MDEnLCAnMjAyMS0wMS0wMScpKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9ma19tbHRybmcybWx0 cm5nIChpZCwgdmFsaWRfYXQsIHBhcmVudF9pZCkgVkFMVUVTICgnWzIwMCwyMDEpJywgZGF0ZW11 bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSksICdbOCw5KScp OworREVMRVRFIEZST00gdGVtcG9yYWxfbWx0cm5nIFdIRVJFIGlkID0gJ1s4LDkpJyBBTkQgdmFs aWRfYXQgQD4gJzIwMTktMDEtMDEnOjpkYXRlOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9ma19t bHRybmcybWx0cm5nIFdIRVJFIGlkID0gJ1syMDAsMjAxKScgT1JERVIgQlkgaWQsIHZhbGlkX2F0 OworCistLQorLS0gdGVzdCBGSyByZWZlcmVuY2VkIHVwZGF0ZXMgQ0FTQ0FERSAodHdvIHNjYWxh ciBjb2xzKQorLS0KKworVFJVTkNBVEUgdGVtcG9yYWxfbWx0cm5nMiwgdGVtcG9yYWxfZmsyX21s dHJuZzJtbHRybmc7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9tbHRybmcyIChpZDEsIGlkMiwgdmFs aWRfYXQpIFZBTFVFUyAoJ1s2LDcpJywgJ1s2LDcpJywgZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdl KCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSkpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmsy X21sdHJuZzJtbHRybmcgKGlkLCB2YWxpZF9hdCwgcGFyZW50X2lkMSwgcGFyZW50X2lkMikgVkFM VUVTICgnWzEwMCwxMDEpJywgZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywg JzIwMjEtMDEtMDEnKSksICdbNiw3KScsICdbNiw3KScpOworQUxURVIgVEFCTEUgdGVtcG9yYWxf ZmsyX21sdHJuZzJtbHRybmcKKyAgRFJPUCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrMl9tbHRybmcy bWx0cm5nX2ZrLAorICBBREQgQ09OU1RSQUlOVCB0ZW1wb3JhbF9mazJfbWx0cm5nMm1sdHJuZ19m aworICAgIEZPUkVJR04gS0VZIChwYXJlbnRfaWQxLCBwYXJlbnRfaWQyLCBQRVJJT0QgdmFsaWRf YXQpCisgICAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9tbHRybmcyCisgICAgT04gREVMRVRFIENBU0NB REUgT04gVVBEQVRFIENBU0NBREU7CistLSBsZWZ0b3ZlcnMgb24gYm90aCBzaWRlczoKK1VQREFU RSB0ZW1wb3JhbF9tbHRybmcyIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IChkYXRlbXVsdGlyYW5n ZShkYXRlcmFuZ2UoJzIwMTktMDEtMDEnLCAnMjAyMC0wMS0wMScpKSkgU0VUIGlkMSA9ICdbNyw4 KScgV0hFUkUgaWQxID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX21sdHJu ZzJtbHRybmcgV0hFUkUgaWQgPSAnWzEwMCwxMDEpJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7Cist LSBub24tRlBPIHVwZGF0ZToKK1VQREFURSB0ZW1wb3JhbF9tbHRybmcyIFNFVCBpZDEgPSAnWzcs OCknIFdIRVJFIGlkMSA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9tbHRy bmcybWx0cm5nIFdIRVJFIGlkID0gJ1sxMDAsMTAxKScgT1JERVIgQlkgaWQsIHZhbGlkX2F0Owor LS0gRksgYWNyb3NzIHR3byByZWZlcmVuY2VkIHJvd3M6CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9t bHRybmcyIChpZDEsIGlkMiwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s4LDkpJywgJ1s4LDkpJywgZGF0 ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjAtMDEtMDEnKSkpOworSU5T RVJUIElOVE8gdGVtcG9yYWxfbWx0cm5nMiAoaWQxLCBpZDIsIHZhbGlkX2F0KSBWQUxVRVMgKCdb OCw5KScsICdbOCw5KScsIGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAyMC0wMS0wMScsICcy MDIxLTAxLTAxJykpKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrMl9tbHRybmcybWx0cm5nIChp ZCwgdmFsaWRfYXQsIHBhcmVudF9pZDEsIHBhcmVudF9pZDIpIFZBTFVFUyAoJ1syMDAsMjAxKScs IGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJykpLCAn WzgsOSknLCAnWzgsOSknKTsKK1VQREFURSB0ZW1wb3JhbF9tbHRybmcyIFNFVCBpZDEgPSAnWzks MTApJyBXSEVSRSBpZDEgPSAnWzgsOSknIEFORCB2YWxpZF9hdCBAPiAnMjAxOS0wMS0wMSc6OmRh dGU7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9tbHRybmcybWx0cm5nIFdIRVJFIGlkID0g J1syMDAsMjAxKScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworCistLQorLS0gdGVzdCBGSyByZWZl cmVuY2VkIGRlbGV0ZXMgQ0FTQ0FERSAodHdvIHNjYWxhciBjb2xzKQorLS0KKworVFJVTkNBVEUg dGVtcG9yYWxfbWx0cm5nMiwgdGVtcG9yYWxfZmsyX21sdHJuZzJtbHRybmc7CitJTlNFUlQgSU5U TyB0ZW1wb3JhbF9tbHRybmcyIChpZDEsIGlkMiwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s2LDcpJywg J1s2LDcpJywgZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEt MDEnKSkpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfZmsyX21sdHJuZzJtbHRybmcgKGlkLCB2YWxp ZF9hdCwgcGFyZW50X2lkMSwgcGFyZW50X2lkMikgVkFMVUVTICgnWzEwMCwxMDEpJywgZGF0ZW11 bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSksICdbNiw3KScs ICdbNiw3KScpOworLS0gbGVmdG92ZXJzIG9uIGJvdGggc2lkZXM6CitERUxFVEUgRlJPTSB0ZW1w b3JhbF9tbHRybmcyIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IChkYXRlbXVsdGlyYW5nZShkYXRl cmFuZ2UoJzIwMTktMDEtMDEnLCAnMjAyMC0wMS0wMScpKSkgV0hFUkUgaWQxID0gJ1s2LDcpJzsK K1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX21sdHJuZzJtbHRybmcgV0hFUkUgaWQgPSAnWzEw MCwxMDEpJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CistLSBub24tRlBPIGRlbGV0ZToKK0RFTEVU RSBGUk9NIHRlbXBvcmFsX21sdHJuZzIgV0hFUkUgaWQxID0gJ1s2LDcpJzsKK1NFTEVDVCAqIEZS T00gdGVtcG9yYWxfZmsyX21sdHJuZzJtbHRybmcgV0hFUkUgaWQgPSAnWzEwMCwxMDEpJyBPUkRF UiBCWSBpZCwgdmFsaWRfYXQ7CistLSBGSyBhY3Jvc3MgdHdvIHJlZmVyZW5jZWQgcm93czoKK0lO U0VSVCBJTlRPIHRlbXBvcmFsX21sdHJuZzIgKGlkMSwgaWQyLCB2YWxpZF9hdCkgVkFMVUVTICgn WzgsOSknLCAnWzgsOSknLCBkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAn MjAyMC0wMS0wMScpKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9tbHRybmcyIChpZDEsIGlkMiwg dmFsaWRfYXQpIFZBTFVFUyAoJ1s4LDkpJywgJ1s4LDkpJywgZGF0ZW11bHRpcmFuZ2UoZGF0ZXJh bmdlKCcyMDIwLTAxLTAxJywgJzIwMjEtMDEtMDEnKSkpOworSU5TRVJUIElOVE8gdGVtcG9yYWxf ZmsyX21sdHJuZzJtbHRybmcgKGlkLCB2YWxpZF9hdCwgcGFyZW50X2lkMSwgcGFyZW50X2lkMikg VkFMVUVTICgnWzIwMCwyMDEpJywgZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDE4LTAxLTAx JywgJzIwMjEtMDEtMDEnKSksICdbOCw5KScsICdbOCw5KScpOworREVMRVRFIEZST00gdGVtcG9y YWxfbWx0cm5nMiBXSEVSRSBpZDEgPSAnWzgsOSknIEFORCB2YWxpZF9hdCBAPiAnMjAxOS0wMS0w MSc6OmRhdGU7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9tbHRybmcybWx0cm5nIFdIRVJF IGlkID0gJ1syMDAsMjAxKScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworCistLQorLS0gdGVzdCBG SyByZWZlcmVuY2VkIHVwZGF0ZXMgU0VUIE5VTEwgKHR3byBzY2FsYXIgY29scykKKy0tCisKK1RS VU5DQVRFIHRlbXBvcmFsX21sdHJuZzIsIHRlbXBvcmFsX2ZrMl9tbHRybmcybWx0cm5nOworSU5T RVJUIElOVE8gdGVtcG9yYWxfbWx0cm5nMiAoaWQxLCBpZDIsIHZhbGlkX2F0KSBWQUxVRVMgKCdb Niw3KScsICdbNiw3KScsIGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcy MDIxLTAxLTAxJykpKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrMl9tbHRybmcybWx0cm5nIChp ZCwgdmFsaWRfYXQsIHBhcmVudF9pZDEsIHBhcmVudF9pZDIpIFZBTFVFUyAoJ1sxMDAsMTAxKScs IGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJykpLCAn WzYsNyknLCAnWzYsNyknKTsKK0FMVEVSIFRBQkxFIHRlbXBvcmFsX2ZrMl9tbHRybmcybWx0cm5n CisgIERST1AgQ09OU1RSQUlOVCB0ZW1wb3JhbF9mazJfbWx0cm5nMm1sdHJuZ19maywKKyAgQURE IENPTlNUUkFJTlQgdGVtcG9yYWxfZmsyX21sdHJuZzJtbHRybmdfZmsKKyAgICBGT1JFSUdOIEtF WSAocGFyZW50X2lkMSwgcGFyZW50X2lkMiwgUEVSSU9EIHZhbGlkX2F0KQorICAgIFJFRkVSRU5D RVMgdGVtcG9yYWxfbWx0cm5nMgorICAgIE9OIERFTEVURSBTRVQgTlVMTCBPTiBVUERBVEUgU0VU IE5VTEw7CistLSBsZWZ0b3ZlcnMgb24gYm90aCBzaWRlczoKK1VQREFURSB0ZW1wb3JhbF9tbHRy bmcyIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IChkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIw MTktMDEtMDEnLCAnMjAyMC0wMS0wMScpKSkgU0VUIGlkMSA9ICdbNyw4KScgV0hFUkUgaWQxID0g J1s2LDcpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX21sdHJuZzJtbHRybmcgV0hFUkUg aWQgPSAnWzEwMCwxMDEpJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CistLSBub24tRlBPIHVwZGF0 ZToKK1VQREFURSB0ZW1wb3JhbF9tbHRybmcyIFNFVCBpZDEgPSAnWzcsOCknIFdIRVJFIGlkMSA9 ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9tbHRybmcybWx0cm5nIFdIRVJF IGlkID0gJ1sxMDAsMTAxKScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworLS0gRksgYWNyb3NzIHR3 byByZWZlcmVuY2VkIHJvd3M6CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9tbHRybmcyIChpZDEsIGlk MiwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s4LDkpJywgJ1s4LDkpJywgZGF0ZW11bHRpcmFuZ2UoZGF0 ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjAtMDEtMDEnKSkpOworSU5TRVJUIElOVE8gdGVtcG9y YWxfbWx0cm5nMiAoaWQxLCBpZDIsIHZhbGlkX2F0KSBWQUxVRVMgKCdbOCw5KScsICdbOCw5KScs IGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAyMC0wMS0wMScsICcyMDIxLTAxLTAxJykpKTsK K0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrMl9tbHRybmcybWx0cm5nIChpZCwgdmFsaWRfYXQsIHBh cmVudF9pZDEsIHBhcmVudF9pZDIpIFZBTFVFUyAoJ1syMDAsMjAxKScsIGRhdGVtdWx0aXJhbmdl KGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJykpLCAnWzgsOSknLCAnWzgsOSkn KTsKK1VQREFURSB0ZW1wb3JhbF9tbHRybmcyIFNFVCBpZDEgPSAnWzksMTApJyBXSEVSRSBpZDEg PSAnWzgsOSknIEFORCB2YWxpZF9hdCBAPiAnMjAxOS0wMS0wMSc6OmRhdGU7CitTRUxFQ1QgKiBG Uk9NIHRlbXBvcmFsX2ZrMl9tbHRybmcybWx0cm5nIFdIRVJFIGlkID0gJ1syMDAsMjAxKScgT1JE RVIgQlkgaWQsIHZhbGlkX2F0OworCistLQorLS0gdGVzdCBGSyByZWZlcmVuY2VkIGRlbGV0ZXMg U0VUIE5VTEwgKHR3byBzY2FsYXIgY29scykKKy0tCisKK1RSVU5DQVRFIHRlbXBvcmFsX21sdHJu ZzIsIHRlbXBvcmFsX2ZrMl9tbHRybmcybWx0cm5nOworSU5TRVJUIElOVE8gdGVtcG9yYWxfbWx0 cm5nMiAoaWQxLCBpZDIsIHZhbGlkX2F0KSBWQUxVRVMgKCdbNiw3KScsICdbNiw3KScsIGRhdGVt dWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJykpKTsKK0lOU0VS VCBJTlRPIHRlbXBvcmFsX2ZrMl9tbHRybmcybWx0cm5nIChpZCwgdmFsaWRfYXQsIHBhcmVudF9p ZDEsIHBhcmVudF9pZDIpIFZBTFVFUyAoJ1sxMDAsMTAxKScsIGRhdGVtdWx0aXJhbmdlKGRhdGVy YW5nZSgnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJykpLCAnWzYsNyknLCAnWzYsNyknKTsKKy0t IGxlZnRvdmVycyBvbiBib3RoIHNpZGVzOgorREVMRVRFIEZST00gdGVtcG9yYWxfbWx0cm5nMiBG T1IgUE9SVElPTiBPRiB2YWxpZF9hdCAoZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDE5LTAx LTAxJywgJzIwMjAtMDEtMDEnKSkpIFdIRVJFIGlkMSA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9N IHRlbXBvcmFsX2ZrMl9tbHRybmcybWx0cm5nIFdIRVJFIGlkID0gJ1sxMDAsMTAxKScgT1JERVIg QlkgaWQsIHZhbGlkX2F0OworLS0gbm9uLUZQTyBkZWxldGU6CitERUxFVEUgRlJPTSB0ZW1wb3Jh bF9tbHRybmcyIFdIRVJFIGlkMSA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2Zr Ml9tbHRybmcybWx0cm5nIFdIRVJFIGlkID0gJ1sxMDAsMTAxKScgT1JERVIgQlkgaWQsIHZhbGlk X2F0OworLS0gRksgYWNyb3NzIHR3byByZWZlcmVuY2VkIHJvd3M6CitJTlNFUlQgSU5UTyB0ZW1w b3JhbF9tbHRybmcyIChpZDEsIGlkMiwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s4LDkpJywgJ1s4LDkp JywgZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjAtMDEtMDEnKSkp OworSU5TRVJUIElOVE8gdGVtcG9yYWxfbWx0cm5nMiAoaWQxLCBpZDIsIHZhbGlkX2F0KSBWQUxV RVMgKCdbOCw5KScsICdbOCw5KScsIGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAyMC0wMS0w MScsICcyMDIxLTAxLTAxJykpKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrMl9tbHRybmcybWx0 cm5nIChpZCwgdmFsaWRfYXQsIHBhcmVudF9pZDEsIHBhcmVudF9pZDIpIFZBTFVFUyAoJ1syMDAs MjAxKScsIGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAx JykpLCAnWzgsOSknLCAnWzgsOSknKTsKK0RFTEVURSBGUk9NIHRlbXBvcmFsX21sdHJuZzIgV0hF UkUgaWQxID0gJ1s4LDkpJyBBTkQgdmFsaWRfYXQgQD4gJzIwMTktMDEtMDEnOjpkYXRlOworU0VM RUNUICogRlJPTSB0ZW1wb3JhbF9mazJfbWx0cm5nMm1sdHJuZyBXSEVSRSBpZCA9ICdbMjAwLDIw MSknIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKworLS0KKy0tIHRlc3QgRksgcmVmZXJlbmNlZCBk ZWxldGVzIFNFVCBOVUxMICh0d28gc2NhbGFyIGNvbHMsIFNFVCBOVUxMIHN1YnNldCkKKy0tCisK K1RSVU5DQVRFIHRlbXBvcmFsX21sdHJuZzIsIHRlbXBvcmFsX2ZrMl9tbHRybmcybWx0cm5nOwor SU5TRVJUIElOVE8gdGVtcG9yYWxfbWx0cm5nMiAoaWQxLCBpZDIsIHZhbGlkX2F0KSBWQUxVRVMg KCdbNiw3KScsICdbNiw3KScsIGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAxOC0wMS0wMScs ICcyMDIxLTAxLTAxJykpKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrMl9tbHRybmcybWx0cm5n IChpZCwgdmFsaWRfYXQsIHBhcmVudF9pZDEsIHBhcmVudF9pZDIpIFZBTFVFUyAoJ1sxMDAsMTAx KScsIGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJykp LCAnWzYsNyknLCAnWzYsNyknKTsKKy0tIGZhaWxzIGJlY2F1c2UgeW91IGNhbid0IHNldCB0aGUg UEVSSU9EIGNvbHVtbjoKK0FMVEVSIFRBQkxFIHRlbXBvcmFsX2ZrMl9tbHRybmcybWx0cm5nCisg IERST1AgQ09OU1RSQUlOVCB0ZW1wb3JhbF9mazJfbWx0cm5nMm1sdHJuZ19maywKKyAgQUREIENP TlNUUkFJTlQgdGVtcG9yYWxfZmsyX21sdHJuZzJtbHRybmdfZmsKKyAgICBGT1JFSUdOIEtFWSAo cGFyZW50X2lkMSwgcGFyZW50X2lkMiwgUEVSSU9EIHZhbGlkX2F0KQorICAgIFJFRkVSRU5DRVMg dGVtcG9yYWxfbWx0cm5nMgorICAgIE9OIERFTEVURSBTRVQgTlVMTCAodmFsaWRfYXQpIE9OIFVQ REFURSBTRVQgTlVMTDsKKy0tIG9rOgorQUxURVIgVEFCTEUgdGVtcG9yYWxfZmsyX21sdHJuZzJt bHRybmcKKyAgRFJPUCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrMl9tbHRybmcybWx0cm5nX2ZrLAor ICBBREQgQ09OU1RSQUlOVCB0ZW1wb3JhbF9mazJfbWx0cm5nMm1sdHJuZ19maworICAgIEZPUkVJ R04gS0VZIChwYXJlbnRfaWQxLCBwYXJlbnRfaWQyLCBQRVJJT0QgdmFsaWRfYXQpCisgICAgUkVG RVJFTkNFUyB0ZW1wb3JhbF9tbHRybmcyCisgICAgT04gREVMRVRFIFNFVCBOVUxMIChwYXJlbnRf aWQxKSBPTiBVUERBVEUgU0VUIE5VTEw7CistLSBsZWZ0b3ZlcnMgb24gYm90aCBzaWRlczoKK0RF TEVURSBGUk9NIHRlbXBvcmFsX21sdHJuZzIgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgKGRhdGVt dWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAxOS0wMS0wMScsICcyMDIwLTAxLTAxJykpKSBXSEVSRSBp ZDEgPSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9mazJfbWx0cm5nMm1sdHJuZyBX SEVSRSBpZCA9ICdbMTAwLDEwMSknIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKy0tIG5vbi1GUE8g ZGVsZXRlOgorREVMRVRFIEZST00gdGVtcG9yYWxfbWx0cm5nMiBXSEVSRSBpZDEgPSAnWzYsNykn OworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9mazJfbWx0cm5nMm1sdHJuZyBXSEVSRSBpZCA9ICdb MTAwLDEwMSknIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKy0tIEZLIGFjcm9zcyB0d28gcmVmZXJl bmNlZCByb3dzOgorSU5TRVJUIElOVE8gdGVtcG9yYWxfbWx0cm5nMiAoaWQxLCBpZDIsIHZhbGlk X2F0KSBWQUxVRVMgKCdbOCw5KScsICdbOCw5KScsIGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgn MjAxOC0wMS0wMScsICcyMDIwLTAxLTAxJykpKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX21sdHJu ZzIgKGlkMSwgaWQyLCB2YWxpZF9hdCkgVkFMVUVTICgnWzgsOSknLCAnWzgsOSknLCBkYXRlbXVs dGlyYW5nZShkYXRlcmFuZ2UoJzIwMjAtMDEtMDEnLCAnMjAyMS0wMS0wMScpKSk7CitJTlNFUlQg SU5UTyB0ZW1wb3JhbF9mazJfbWx0cm5nMm1sdHJuZyAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQx LCBwYXJlbnRfaWQyKSBWQUxVRVMgKCdbMjAwLDIwMSknLCBkYXRlbXVsdGlyYW5nZShkYXRlcmFu Z2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpKSwgJ1s4LDkpJywgJ1s4LDkpJyk7CitERUxF VEUgRlJPTSB0ZW1wb3JhbF9tbHRybmcyIFdIRVJFIGlkMSA9ICdbOCw5KScgQU5EIHZhbGlkX2F0 IEA+ICcyMDE5LTAxLTAxJzo6ZGF0ZTsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfZmsyX21sdHJu ZzJtbHRybmcgV0hFUkUgaWQgPSAnWzIwMCwyMDEpJyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisK Ky0tCistLSB0ZXN0IEZLIHJlZmVyZW5jZWQgdXBkYXRlcyBTRVQgREVGQVVMVCAodHdvIHNjYWxh ciBjb2xzKQorLS0KKworVFJVTkNBVEUgdGVtcG9yYWxfbWx0cm5nMiwgdGVtcG9yYWxfZmsyX21s dHJuZzJtbHRybmc7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9tbHRybmcyIChpZDEsIGlkMiwgdmFs aWRfYXQpIFZBTFVFUyAoJ1stMSwtMV0nLCAnWy0xLC0xXScsIGRhdGVtdWx0aXJhbmdlKGRhdGVy YW5nZShudWxsLCBudWxsKSkpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfbWx0cm5nMiAoaWQxLCBp ZDIsIHZhbGlkX2F0KSBWQUxVRVMgKCdbNiw3KScsICdbNiw3KScsIGRhdGVtdWx0aXJhbmdlKGRh dGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJykpKTsKK0lOU0VSVCBJTlRPIHRlbXBv cmFsX2ZrMl9tbHRybmcybWx0cm5nIChpZCwgdmFsaWRfYXQsIHBhcmVudF9pZDEsIHBhcmVudF9p ZDIpIFZBTFVFUyAoJ1sxMDAsMTAxKScsIGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAxOC0w MS0wMScsICcyMDIxLTAxLTAxJykpLCAnWzYsNyknLCAnWzYsNyknKTsKK0FMVEVSIFRBQkxFIHRl bXBvcmFsX2ZrMl9tbHRybmcybWx0cm5nCisgIEFMVEVSIENPTFVNTiBwYXJlbnRfaWQxIFNFVCBE RUZBVUxUICdbLTEsLTFdJywKKyAgQUxURVIgQ09MVU1OIHBhcmVudF9pZDIgU0VUIERFRkFVTFQg J1stMSwtMV0nLAorICBEUk9QIENPTlNUUkFJTlQgdGVtcG9yYWxfZmsyX21sdHJuZzJtbHRybmdf ZmssCisgIEFERCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrMl9tbHRybmcybWx0cm5nX2ZrCisgICAg Rk9SRUlHTiBLRVkgKHBhcmVudF9pZDEsIHBhcmVudF9pZDIsIFBFUklPRCB2YWxpZF9hdCkKKyAg ICBSRUZFUkVOQ0VTIHRlbXBvcmFsX21sdHJuZzIKKyAgICBPTiBERUxFVEUgU0VUIERFRkFVTFQg T04gVVBEQVRFIFNFVCBERUZBVUxUOworLS0gbGVmdG92ZXJzIG9uIGJvdGggc2lkZXM6CitVUERB VEUgdGVtcG9yYWxfbWx0cm5nMiBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCAoZGF0ZW11bHRpcmFu Z2UoZGF0ZXJhbmdlKCcyMDE5LTAxLTAxJywgJzIwMjAtMDEtMDEnKSkpIFNFVCBpZDEgPSAnWzcs OCknLCBpZDIgPSAnWzcsOCknIFdIRVJFIGlkMSA9ICdbNiw3KSc7CitTRUxFQ1QgKiBGUk9NIHRl bXBvcmFsX2ZrMl9tbHRybmcybWx0cm5nIFdIRVJFIGlkID0gJ1sxMDAsMTAxKScgT1JERVIgQlkg aWQsIHZhbGlkX2F0OworLS0gbm9uLUZQTyB1cGRhdGU6CitVUERBVEUgdGVtcG9yYWxfbWx0cm5n MiBTRVQgaWQxID0gJ1s3LDgpJywgaWQyID0gJ1s3LDgpJyBXSEVSRSBpZDEgPSAnWzYsNyknOwor U0VMRUNUICogRlJPTSB0ZW1wb3JhbF9mazJfbWx0cm5nMm1sdHJuZyBXSEVSRSBpZCA9ICdbMTAw LDEwMSknIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKy0tIEZLIGFjcm9zcyB0d28gcmVmZXJlbmNl ZCByb3dzOgorSU5TRVJUIElOVE8gdGVtcG9yYWxfbWx0cm5nMiAoaWQxLCBpZDIsIHZhbGlkX2F0 KSBWQUxVRVMgKCdbOCw5KScsICdbOCw5KScsIGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAx OC0wMS0wMScsICcyMDIwLTAxLTAxJykpKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX21sdHJuZzIg KGlkMSwgaWQyLCB2YWxpZF9hdCkgVkFMVUVTICgnWzgsOSknLCAnWzgsOSknLCBkYXRlbXVsdGly YW5nZShkYXRlcmFuZ2UoJzIwMjAtMDEtMDEnLCAnMjAyMS0wMS0wMScpKSk7CitJTlNFUlQgSU5U TyB0ZW1wb3JhbF9mazJfbWx0cm5nMm1sdHJuZyAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQxLCBw YXJlbnRfaWQyKSBWQUxVRVMgKCdbMjAwLDIwMSknLCBkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2Uo JzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpKSwgJ1s4LDkpJywgJ1s4LDkpJyk7CitVUERBVEUg dGVtcG9yYWxfbWx0cm5nMiBTRVQgaWQxID0gJ1s5LDEwKScsIGlkMiA9ICdbOSwxMCknIFdIRVJF IGlkMSA9ICdbOCw5KScgQU5EIHZhbGlkX2F0IEA+ICcyMDE5LTAxLTAxJzo6ZGF0ZTsKK1NFTEVD VCAqIEZST00gdGVtcG9yYWxfZmsyX21sdHJuZzJtbHRybmcgV0hFUkUgaWQgPSAnWzIwMCwyMDEp JyBPUkRFUiBCWSBpZCwgdmFsaWRfYXQ7CisKKy0tCistLSB0ZXN0IEZLIHJlZmVyZW5jZWQgZGVs ZXRlcyBTRVQgREVGQVVMVCAodHdvIHNjYWxhciBjb2xzKQorLS0KKworVFJVTkNBVEUgdGVtcG9y YWxfbWx0cm5nMiwgdGVtcG9yYWxfZmsyX21sdHJuZzJtbHRybmc7CitJTlNFUlQgSU5UTyB0ZW1w b3JhbF9tbHRybmcyIChpZDEsIGlkMiwgdmFsaWRfYXQpIFZBTFVFUyAoJ1stMSwtMV0nLCAnWy0x LC0xXScsIGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZShudWxsLCBudWxsKSkpOworSU5TRVJUIElO VE8gdGVtcG9yYWxfbWx0cm5nMiAoaWQxLCBpZDIsIHZhbGlkX2F0KSBWQUxVRVMgKCdbNiw3KScs ICdbNiw3KScsIGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIxLTAx LTAxJykpKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrMl9tbHRybmcybWx0cm5nIChpZCwgdmFs aWRfYXQsIHBhcmVudF9pZDEsIHBhcmVudF9pZDIpIFZBTFVFUyAoJ1sxMDAsMTAxKScsIGRhdGVt dWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJykpLCAnWzYsNykn LCAnWzYsNyknKTsKKy0tIGxlZnRvdmVycyBvbiBib3RoIHNpZGVzOgorREVMRVRFIEZST00gdGVt cG9yYWxfbWx0cm5nMiBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCAoZGF0ZW11bHRpcmFuZ2UoZGF0 ZXJhbmdlKCcyMDE5LTAxLTAxJywgJzIwMjAtMDEtMDEnKSkpIFdIRVJFIGlkMSA9ICdbNiw3KSc7 CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX2ZrMl9tbHRybmcybWx0cm5nIFdIRVJFIGlkID0gJ1sx MDAsMTAxKScgT1JERVIgQlkgaWQsIHZhbGlkX2F0OworLS0gbm9uLUZQTyB1cGRhdGU6CitERUxF VEUgRlJPTSB0ZW1wb3JhbF9tbHRybmcyIFdIRVJFIGlkMSA9ICdbNiw3KSc7CitTRUxFQ1QgKiBG Uk9NIHRlbXBvcmFsX2ZrMl9tbHRybmcybWx0cm5nIFdIRVJFIGlkID0gJ1sxMDAsMTAxKScgT1JE RVIgQlkgaWQsIHZhbGlkX2F0OworLS0gRksgYWNyb3NzIHR3byByZWZlcmVuY2VkIHJvd3M6CitJ TlNFUlQgSU5UTyB0ZW1wb3JhbF9tbHRybmcyIChpZDEsIGlkMiwgdmFsaWRfYXQpIFZBTFVFUyAo J1s4LDkpJywgJ1s4LDkpJywgZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywg JzIwMjAtMDEtMDEnKSkpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfbWx0cm5nMiAoaWQxLCBpZDIs IHZhbGlkX2F0KSBWQUxVRVMgKCdbOCw5KScsICdbOCw5KScsIGRhdGVtdWx0aXJhbmdlKGRhdGVy YW5nZSgnMjAyMC0wMS0wMScsICcyMDIxLTAxLTAxJykpKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFs X2ZrMl9tbHRybmcybWx0cm5nIChpZCwgdmFsaWRfYXQsIHBhcmVudF9pZDEsIHBhcmVudF9pZDIp IFZBTFVFUyAoJ1syMDAsMjAxKScsIGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAxOC0wMS0w MScsICcyMDIxLTAxLTAxJykpLCAnWzgsOSknLCAnWzgsOSknKTsKK0RFTEVURSBGUk9NIHRlbXBv cmFsX21sdHJuZzIgV0hFUkUgaWQxID0gJ1s4LDkpJyBBTkQgdmFsaWRfYXQgQD4gJzIwMTktMDEt MDEnOjpkYXRlOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9mazJfbWx0cm5nMm1sdHJuZyBXSEVS RSBpZCA9ICdbMjAwLDIwMSknIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKworLS0KKy0tIHRlc3Qg RksgcmVmZXJlbmNlZCBkZWxldGVzIFNFVCBERUZBVUxUICh0d28gc2NhbGFyIGNvbHMsIFNFVCBE RUZBVUxUIHN1YnNldCkKKy0tCisKK1RSVU5DQVRFIHRlbXBvcmFsX21sdHJuZzIsIHRlbXBvcmFs X2ZrMl9tbHRybmcybWx0cm5nOworSU5TRVJUIElOVE8gdGVtcG9yYWxfbWx0cm5nMiAoaWQxLCBp ZDIsIHZhbGlkX2F0KSBWQUxVRVMgKCdbLTEsLTFdJywgJ1s2LDcpJywgZGF0ZW11bHRpcmFuZ2Uo ZGF0ZXJhbmdlKG51bGwsIG51bGwpKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9tbHRybmcyIChp ZDEsIGlkMiwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s2LDcpJywgJ1s2LDcpJywgZGF0ZW11bHRpcmFu Z2UoZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSkpOworSU5TRVJUIElOVE8g dGVtcG9yYWxfZmsyX21sdHJuZzJtbHRybmcgKGlkLCB2YWxpZF9hdCwgcGFyZW50X2lkMSwgcGFy ZW50X2lkMikgVkFMVUVTICgnWzEwMCwxMDEpJywgZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcy MDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSksICdbNiw3KScsICdbNiw3KScpOworLS0gZmFpbHMg YmVjYXVzZSB5b3UgY2FuJ3Qgc2V0IHRoZSBQRVJJT0QgY29sdW1uOgorQUxURVIgVEFCTEUgdGVt cG9yYWxfZmsyX21sdHJuZzJtbHRybmcKKyAgQUxURVIgQ09MVU1OIHBhcmVudF9pZDEgU0VUIERF RkFVTFQgJ1stMSwtMV0nLAorICBEUk9QIENPTlNUUkFJTlQgdGVtcG9yYWxfZmsyX21sdHJuZzJt bHRybmdfZmssCisgIEFERCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrMl9tbHRybmcybWx0cm5nX2Zr CisgICAgRk9SRUlHTiBLRVkgKHBhcmVudF9pZDEsIHBhcmVudF9pZDIsIFBFUklPRCB2YWxpZF9h dCkKKyAgICBSRUZFUkVOQ0VTIHRlbXBvcmFsX21sdHJuZzIKKyAgICBPTiBERUxFVEUgU0VUIERF RkFVTFQgKHZhbGlkX2F0KSBPTiBVUERBVEUgU0VUIERFRkFVTFQ7CistLSBvazoKK0FMVEVSIFRB QkxFIHRlbXBvcmFsX2ZrMl9tbHRybmcybWx0cm5nCisgIEFMVEVSIENPTFVNTiBwYXJlbnRfaWQx IFNFVCBERUZBVUxUICdbLTEsLTFdJywKKyAgRFJPUCBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrMl9t bHRybmcybWx0cm5nX2ZrLAorICBBREQgQ09OU1RSQUlOVCB0ZW1wb3JhbF9mazJfbWx0cm5nMm1s dHJuZ19maworICAgIEZPUkVJR04gS0VZIChwYXJlbnRfaWQxLCBwYXJlbnRfaWQyLCBQRVJJT0Qg dmFsaWRfYXQpCisgICAgUkVGRVJFTkNFUyB0ZW1wb3JhbF9tbHRybmcyCisgICAgT04gREVMRVRF IFNFVCBERUZBVUxUIChwYXJlbnRfaWQxKSBPTiBVUERBVEUgU0VUIERFRkFVTFQ7CistLSBsZWZ0 b3ZlcnMgb24gYm90aCBzaWRlczoKK0RFTEVURSBGUk9NIHRlbXBvcmFsX21sdHJuZzIgRk9SIFBP UlRJT04gT0YgdmFsaWRfYXQgKGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAxOS0wMS0wMScs ICcyMDIwLTAxLTAxJykpKSBXSEVSRSBpZDEgPSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1w b3JhbF9mazJfbWx0cm5nMm1sdHJuZyBXSEVSRSBpZCA9ICdbMTAwLDEwMSknIE9SREVSIEJZIGlk LCB2YWxpZF9hdDsKKy0tIG5vbi1GUE8gdXBkYXRlOgorREVMRVRFIEZST00gdGVtcG9yYWxfbWx0 cm5nMiBXSEVSRSBpZDEgPSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9mazJfbWx0 cm5nMm1sdHJuZyBXSEVSRSBpZCA9ICdbMTAwLDEwMSknIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsK Ky0tIEZLIGFjcm9zcyB0d28gcmVmZXJlbmNlZCByb3dzOgorSU5TRVJUIElOVE8gdGVtcG9yYWxf bWx0cm5nMiAoaWQxLCBpZDIsIHZhbGlkX2F0KSBWQUxVRVMgKCdbOCw5KScsICdbOCw5KScsIGRh dGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIwLTAxLTAxJykpKTsKK0lO U0VSVCBJTlRPIHRlbXBvcmFsX21sdHJuZzIgKGlkMSwgaWQyLCB2YWxpZF9hdCkgVkFMVUVTICgn WzgsOSknLCAnWzgsOSknLCBkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIwMjAtMDEtMDEnLCAn MjAyMS0wMS0wMScpKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9tbHRybmcyIChpZDEsIGlkMiwg dmFsaWRfYXQpIFZBTFVFUyAoJ1stMSwtMV0nLCAnWzgsOSknLCBkYXRlbXVsdGlyYW5nZShkYXRl cmFuZ2UobnVsbCwgbnVsbCkpKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrMl9tbHRybmcybWx0 cm5nIChpZCwgdmFsaWRfYXQsIHBhcmVudF9pZDEsIHBhcmVudF9pZDIpIFZBTFVFUyAoJ1syMDAs MjAxKScsIGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAx JykpLCAnWzgsOSknLCAnWzgsOSknKTsKK0RFTEVURSBGUk9NIHRlbXBvcmFsX21sdHJuZzIgV0hF UkUgaWQxID0gJ1s4LDkpJyBBTkQgdmFsaWRfYXQgQD4gJzIwMTktMDEtMDEnOjpkYXRlOworU0VM RUNUICogRlJPTSB0ZW1wb3JhbF9mazJfbWx0cm5nMm1sdHJuZyBXSEVSRSBpZCA9ICdbMjAwLDIw MSknIE9SREVSIEJZIGlkLCB2YWxpZF9hdDsKKworLS0gRksgd2l0aCBhIGN1c3RvbSByYW5nZSB0 eXBlCisKK0NSRUFURSBUWVBFIG15ZGF0ZXJhbmdlIEFTIHJhbmdlKHN1YnR5cGU9ZGF0ZSk7CisK K0NSRUFURSBUQUJMRSB0ZW1wb3JhbF9ybmczICgKKyAgaWQgaW50NHJhbmdlLAorICB2YWxpZF9h dCBteWRhdGVyYW5nZSwKKyAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9ybmczX3BrIFBSSU1BUlkgS0VZ IChpZCwgdmFsaWRfYXQgV0lUSE9VVCBPVkVSTEFQUykKKyk7CitDUkVBVEUgVEFCTEUgdGVtcG9y YWxfZmszX3JuZzJybmcgKAorICBpZCBpbnQ0cmFuZ2UsCisgIHZhbGlkX2F0IG15ZGF0ZXJhbmdl LAorICBwYXJlbnRfaWQgaW50NHJhbmdlLAorICBDT05TVFJBSU5UIHRlbXBvcmFsX2ZrM19ybmcy cm5nX3BrIFBSSU1BUlkgS0VZIChpZCwgdmFsaWRfYXQgV0lUSE9VVCBPVkVSTEFQUyksCisgIENP TlNUUkFJTlQgdGVtcG9yYWxfZmszX3JuZzJybmdfZmsgRk9SRUlHTiBLRVkgKHBhcmVudF9pZCwg UEVSSU9EIHZhbGlkX2F0KQorICAgIFJFRkVSRU5DRVMgdGVtcG9yYWxfcm5nMyAoaWQsIFBFUklP RCB2YWxpZF9hdCkgT04gREVMRVRFIENBU0NBREUKKyk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9y bmczIChpZCwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s4LDkpJywgbXlkYXRlcmFuZ2UoJzIwMTgtMDEt MDEnLCAnMjAyMS0wMS0wMScpKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX2ZrM19ybmcycm5nIChp ZCwgdmFsaWRfYXQsIHBhcmVudF9pZCkgVkFMVUVTICgnWzUsNiknLCBteWRhdGVyYW5nZSgnMjAx OC0wMS0wMScsICcyMDIxLTAxLTAxJyksICdbOCw5KScpOworREVMRVRFIEZST00gdGVtcG9yYWxf cm5nMyBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBGUk9NICcyMDE5LTAxLTAxJyBUTyAnMjAyMC0w MS0wMScgV0hFUkUgaWQgPSAnWzgsOSknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9mazNfcm5n MnJuZyBXSEVSRSBpZCA9ICdbNSw2KSc7CisKK0RST1AgVEFCTEUgdGVtcG9yYWxfZmszX3JuZzJy bmc7CitEUk9QIFRBQkxFIHRlbXBvcmFsX3JuZzM7CitEUk9QIFRZUEUgbXlkYXRlcmFuZ2U7CisK IC0tCiAtLSBGSyBiZXR3ZWVuIHBhcnRpdGlvbmVkIHRhYmxlczogcmFuZ2VzCiAtLQpAQCAtMTg2 NSw4ICsyNjAzLDggQEAgQ1JFQVRFIFRBQkxFIHRlbXBvcmFsX3BhcnRpdGlvbmVkX3JuZyAoCiAg IG5hbWUgdGV4dCwKICAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9wYXJpdGlvbmVkX3JuZ19wayBQUklN QVJZIEtFWSAoaWQsIHZhbGlkX2F0IFdJVEhPVVQgT1ZFUkxBUFMpCiApIFBBUlRJVElPTiBCWSBM SVNUIChpZCk7Ci1DUkVBVEUgVEFCTEUgdHAxIHBhcnRpdGlvbiBPRiB0ZW1wb3JhbF9wYXJ0aXRp b25lZF9ybmcgRk9SIFZBTFVFUyBJTiAoJ1sxLDIpJywgJ1szLDQpJywgJ1s1LDYpJywgJ1s3LDgp JywgJ1s5LDEwKScsICdbMTEsMTIpJyk7Ci1DUkVBVEUgVEFCTEUgdHAyIHBhcnRpdGlvbiBPRiB0 ZW1wb3JhbF9wYXJ0aXRpb25lZF9ybmcgRk9SIFZBTFVFUyBJTiAoJ1syLDMpJywgJ1s0LDUpJywg J1s2LDcpJywgJ1s4LDkpJywgJ1sxMCwxMSknLCAnWzEyLDEzKScpOworQ1JFQVRFIFRBQkxFIHRw MSBQQVJUSVRJT04gT0YgdGVtcG9yYWxfcGFydGl0aW9uZWRfcm5nIEZPUiBWQUxVRVMgSU4gKCdb MSwyKScsICdbMyw0KScsICdbNSw2KScsICdbNyw4KScsICdbOSwxMCknLCAnWzExLDEyKScsICdb MTMsMTQpJywgJ1sxNSwxNiknLCAnWzE3LDE4KScsICdbMTksMjApJywgJ1syMSwyMiknLCAnWzIz LDI0KScpOworQ1JFQVRFIFRBQkxFIHRwMiBQQVJUSVRJT04gT0YgdGVtcG9yYWxfcGFydGl0aW9u ZWRfcm5nIEZPUiBWQUxVRVMgSU4gKCdbMCwxKScsICdbMiwzKScsICdbNCw1KScsICdbNiw3KScs ICdbOCw5KScsICdbMTAsMTEpJywgJ1sxMiwxMyknLCAnWzE0LDE1KScsICdbMTYsMTcpJywgJ1sx OCwxOSknLCAnWzIwLDIxKScsICdbMjIsMjMpJywgJ1syNCwyNSknKTsKIElOU0VSVCBJTlRPIHRl bXBvcmFsX3BhcnRpdGlvbmVkX3JuZyAoaWQsIHZhbGlkX2F0LCBuYW1lKSBWQUxVRVMKICAgKCdb MSwyKScsIGRhdGVyYW5nZSgnMjAwMC0wMS0wMScsICcyMDAwLTAyLTAxJyksICdvbmUnKSwKICAg KCdbMSwyKScsIGRhdGVyYW5nZSgnMjAwMC0wMi0wMScsICcyMDAwLTAzLTAxJyksICdvbmUnKSwK QEAgLTE4ODAsOCArMjYxOCw4IEBAIENSRUFURSBUQUJMRSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9m a19ybmcycm5nICgKICAgQ09OU1RSQUlOVCB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ma19ybmcycm5n X2ZrIEZPUkVJR04gS0VZIChwYXJlbnRfaWQsIFBFUklPRCB2YWxpZF9hdCkKICAgICBSRUZFUkVO Q0VTIHRlbXBvcmFsX3BhcnRpdGlvbmVkX3JuZyAoaWQsIFBFUklPRCB2YWxpZF9hdCkKICkgUEFS VElUSU9OIEJZIExJU1QgKGlkKTsKLUNSRUFURSBUQUJMRSB0ZmtwMSBwYXJ0aXRpb24gT0YgdGVt cG9yYWxfcGFydGl0aW9uZWRfZmtfcm5nMnJuZyBGT1IgVkFMVUVTIElOICgnWzEsMiknLCAnWzMs NCknLCAnWzUsNiknLCAnWzcsOCknLCAnWzksMTApJywgJ1sxMSwxMiknKTsKLUNSRUFURSBUQUJM RSB0ZmtwMiBwYXJ0aXRpb24gT0YgdGVtcG9yYWxfcGFydGl0aW9uZWRfZmtfcm5nMnJuZyBGT1Ig VkFMVUVTIElOICgnWzIsMyknLCAnWzQsNSknLCAnWzYsNyknLCAnWzgsOSknLCAnWzEwLDExKScs ICdbMTIsMTMpJyk7CitDUkVBVEUgVEFCTEUgdGZrcDEgUEFSVElUSU9OIE9GIHRlbXBvcmFsX3Bh cnRpdGlvbmVkX2ZrX3JuZzJybmcgRk9SIFZBTFVFUyBJTiAoJ1sxLDIpJywgJ1szLDQpJywgJ1s1 LDYpJywgJ1s3LDgpJywgJ1s5LDEwKScsICdbMTEsMTIpJywgJ1sxMywxNCknLCAnWzE1LDE2KScs ICdbMTcsMTgpJywgJ1sxOSwyMCknLCAnWzIxLDIyKScsICdbMjMsMjQpJyk7CitDUkVBVEUgVEFC TEUgdGZrcDIgUEFSVElUSU9OIE9GIHRlbXBvcmFsX3BhcnRpdGlvbmVkX2ZrX3JuZzJybmcgRk9S IFZBTFVFUyBJTiAoJ1swLDEpJywgJ1syLDMpJywgJ1s0LDUpJywgJ1s2LDcpJywgJ1s4LDkpJywg J1sxMCwxMSknLCAnWzEyLDEzKScsICdbMTQsMTUpJywgJ1sxNiwxNyknLCAnWzE4LDE5KScsICdb MjAsMjEpJywgJ1syMiwyMyknLCAnWzI0LDI1KScpOwogCiAtLQogLS0gcGFydGl0aW9uZWQgRksg cmVmZXJlbmNpbmcgaW5zZXJ0cwpAQCAtMTk0MCwzNiArMjY3OCw5MCBAQCBERUxFVEUgRlJPTSB0 ZW1wb3JhbF9wYXJ0aXRpb25lZF9ybmcgV0hFUkUgaWQgPSAnWzUsNiknIEFORCB2YWxpZF9hdCA9 IGRhdGVyYW5nZQogLS0gcGFydGl0aW9uZWQgRksgcmVmZXJlbmNlZCB1cGRhdGVzIENBU0NBREUK IC0tCiAKK1RSVU5DQVRFIHRlbXBvcmFsX3BhcnRpdGlvbmVkX3JuZywgdGVtcG9yYWxfcGFydGl0 aW9uZWRfZmtfcm5nMnJuZzsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BhcnRpdGlvbmVkX3JuZyAo aWQsIHZhbGlkX2F0KSBWQUxVRVMgKCdbNiw3KScsIGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcy MDIxLTAxLTAxJykpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGFydGl0aW9uZWRfZmtfcm5nMnJu ZyAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQpIFZBTFVFUyAoJ1s0LDUpJywgZGF0ZXJhbmdlKCcy MDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSwgJ1s2LDcpJyk7CiBBTFRFUiBUQUJMRSB0ZW1wb3Jh bF9wYXJ0aXRpb25lZF9ma19ybmcycm5nCiAgIERST1AgQ09OU1RSQUlOVCB0ZW1wb3JhbF9wYXJ0 aXRpb25lZF9ma19ybmcycm5nX2ZrLAogICBBREQgQ09OU1RSQUlOVCB0ZW1wb3JhbF9wYXJ0aXRp b25lZF9ma19ybmcycm5nX2ZrCiAgICAgRk9SRUlHTiBLRVkgKHBhcmVudF9pZCwgUEVSSU9EIHZh bGlkX2F0KQogICAgIFJFRkVSRU5DRVMgdGVtcG9yYWxfcGFydGl0aW9uZWRfcm5nCiAgICAgT04g REVMRVRFIENBU0NBREUgT04gVVBEQVRFIENBU0NBREU7CitVUERBVEUgdGVtcG9yYWxfcGFydGl0 aW9uZWRfcm5nIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMTktMDEtMDEnIFRPICcy MDIwLTAxLTAxJyBTRVQgaWQgPSAnWzcsOCknIFdIRVJFIGlkID0gJ1s2LDcpJzsKK1NFTEVDVCAq IEZST00gdGVtcG9yYWxfcGFydGl0aW9uZWRfZmtfcm5nMnJuZyBXSEVSRSBpZCA9ICdbNCw1KSc7 CitVUERBVEUgdGVtcG9yYWxfcGFydGl0aW9uZWRfcm5nIFNFVCBpZCA9ICdbNyw4KScgV0hFUkUg aWQgPSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ma19ybmcy cm5nIFdIRVJFIGlkID0gJ1s0LDUpJzsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BhcnRpdGlvbmVk X3JuZyAoaWQsIHZhbGlkX2F0KSBWQUxVRVMgKCdbMTUsMTYpJywgZGF0ZXJhbmdlKCcyMDE4LTAx LTAxJywgJzIwMjAtMDEtMDEnKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9y bmcgKGlkLCB2YWxpZF9hdCkgVkFMVUVTICgnWzE1LDE2KScsIGRhdGVyYW5nZSgnMjAyMC0wMS0w MScsICcyMDIxLTAxLTAxJykpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGFydGl0aW9uZWRfZmtf cm5nMnJuZyAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQpIFZBTFVFUyAoJ1sxMCwxMSknLCBkYXRl cmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpLCAnWzE1LDE2KScpOworVVBEQVRFIHRl bXBvcmFsX3BhcnRpdGlvbmVkX3JuZyBTRVQgaWQgPSAnWzE2LDE3KScgV0hFUkUgaWQgPSAnWzE1 LDE2KScgQU5EIHZhbGlkX2F0IEA+ICcyMDE5LTAxLTAxJzo6ZGF0ZTsKK1NFTEVDVCAqIEZST00g dGVtcG9yYWxfcGFydGl0aW9uZWRfZmtfcm5nMnJuZyBXSEVSRSBpZCA9ICdbMTAsMTEpJzsKIAog LS0KIC0tIHBhcnRpdGlvbmVkIEZLIHJlZmVyZW5jZWQgZGVsZXRlcyBDQVNDQURFCiAtLQogCitU UlVOQ0FURSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ybmcsIHRlbXBvcmFsX3BhcnRpdGlvbmVkX2Zr X3JuZzJybmc7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ybmcgKGlkLCB2YWxp ZF9hdCkgVkFMVUVTICgnWzgsOSknLCBkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0w MScpKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BhcnRpdGlvbmVkX2ZrX3JuZzJybmcgKGlkLCB2 YWxpZF9hdCwgcGFyZW50X2lkKSBWQUxVRVMgKCdbNSw2KScsIGRhdGVyYW5nZSgnMjAxOC0wMS0w MScsICcyMDIxLTAxLTAxJyksICdbOCw5KScpOworREVMRVRFIEZST00gdGVtcG9yYWxfcGFydGl0 aW9uZWRfcm5nIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IEZST00gJzIwMTktMDEtMDEnIFRPICcy MDIwLTAxLTAxJyBXSEVSRSBpZCA9ICdbOCw5KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX3Bh cnRpdGlvbmVkX2ZrX3JuZzJybmcgV0hFUkUgaWQgPSAnWzUsNiknOworREVMRVRFIEZST00gdGVt cG9yYWxfcGFydGl0aW9uZWRfcm5nIFdIRVJFIGlkID0gJ1s4LDkpJzsKK1NFTEVDVCAqIEZST00g dGVtcG9yYWxfcGFydGl0aW9uZWRfZmtfcm5nMnJuZyBXSEVSRSBpZCA9ICdbNSw2KSc7CitJTlNF UlQgSU5UTyB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ybmcgKGlkLCB2YWxpZF9hdCkgVkFMVUVTICgn WzE3LDE4KScsIGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIwLTAxLTAxJykpOworSU5TRVJU IElOVE8gdGVtcG9yYWxfcGFydGl0aW9uZWRfcm5nIChpZCwgdmFsaWRfYXQpIFZBTFVFUyAoJ1sx NywxOCknLCBkYXRlcmFuZ2UoJzIwMjAtMDEtMDEnLCAnMjAyMS0wMS0wMScpKTsKK0lOU0VSVCBJ TlRPIHRlbXBvcmFsX3BhcnRpdGlvbmVkX2ZrX3JuZzJybmcgKGlkLCB2YWxpZF9hdCwgcGFyZW50 X2lkKSBWQUxVRVMgKCdbMTEsMTIpJywgZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEt MDEnKSwgJ1sxNywxOCknKTsKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3BhcnRpdGlvbmVkX3JuZyBX SEVSRSBpZCA9ICdbMTcsMTgpJyBBTkQgdmFsaWRfYXQgQD4gJzIwMTktMDEtMDEnOjpkYXRlOwor U0VMRUNUICogRlJPTSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ma19ybmcycm5nIFdIRVJFIGlkID0g J1sxMSwxMiknOworCiAtLQogLS0gcGFydGl0aW9uZWQgRksgcmVmZXJlbmNlZCB1cGRhdGVzIFNF VCBOVUxMCiAtLQogCitUUlVOQ0FURSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ybmcsIHRlbXBvcmFs X3BhcnRpdGlvbmVkX2ZrX3JuZzJybmc7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wYXJ0aXRpb25l ZF9ybmcgKGlkLCB2YWxpZF9hdCkgVkFMVUVTICgnWzksMTApJywgZGF0ZXJhbmdlKCcyMDE4LTAx LTAxJywgJzIwMjEtMDEtMDEnKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9m a19ybmcycm5nIChpZCwgdmFsaWRfYXQsIHBhcmVudF9pZCkgVkFMVUVTICgnWzYsNyknLCBkYXRl cmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpLCAnWzksMTApJyk7CiBBTFRFUiBUQUJM RSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ma19ybmcycm5nCiAgIERST1AgQ09OU1RSQUlOVCB0ZW1w b3JhbF9wYXJ0aXRpb25lZF9ma19ybmcycm5nX2ZrLAogICBBREQgQ09OU1RSQUlOVCB0ZW1wb3Jh bF9wYXJ0aXRpb25lZF9ma19ybmcycm5nX2ZrCiAgICAgRk9SRUlHTiBLRVkgKHBhcmVudF9pZCwg UEVSSU9EIHZhbGlkX2F0KQogICAgIFJFRkVSRU5DRVMgdGVtcG9yYWxfcGFydGl0aW9uZWRfcm5n CiAgICAgT04gREVMRVRFIFNFVCBOVUxMIE9OIFVQREFURSBTRVQgTlVMTDsKK1VQREFURSB0ZW1w b3JhbF9wYXJ0aXRpb25lZF9ybmcgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgRlJPTSAnMjAxOS0w MS0wMScgVE8gJzIwMjAtMDEtMDEnIFNFVCBpZCA9ICdbMTAsMTEpJyBXSEVSRSBpZCA9ICdbOSwx MCknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ma19ybmcycm5nIFdIRVJF IGlkID0gJ1s2LDcpJzsKK1VQREFURSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ybmcgU0VUIGlkID0g J1sxMCwxMSknIFdIRVJFIGlkID0gJ1s5LDEwKSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX3Bh cnRpdGlvbmVkX2ZrX3JuZzJybmcgV0hFUkUgaWQgPSAnWzYsNyknOworSU5TRVJUIElOVE8gdGVt cG9yYWxfcGFydGl0aW9uZWRfcm5nIChpZCwgdmFsaWRfYXQpIFZBTFVFUyAoJ1sxOCwxOSknLCBk YXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMC0wMS0wMScpKTsKK0lOU0VSVCBJTlRPIHRlbXBv cmFsX3BhcnRpdGlvbmVkX3JuZyAoaWQsIHZhbGlkX2F0KSBWQUxVRVMgKCdbMTgsMTkpJywgZGF0 ZXJhbmdlKCcyMDIwLTAxLTAxJywgJzIwMjEtMDEtMDEnKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3Jh bF9wYXJ0aXRpb25lZF9ma19ybmcycm5nIChpZCwgdmFsaWRfYXQsIHBhcmVudF9pZCkgVkFMVUVT ICgnWzEyLDEzKScsIGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJyksICdbMTgs MTkpJyk7CitVUERBVEUgdGVtcG9yYWxfcGFydGl0aW9uZWRfcm5nIFNFVCBpZCA9ICdbMTksMjAp JyBXSEVSRSBpZCA9ICdbMTgsMTkpJyBBTkQgdmFsaWRfYXQgQD4gJzIwMTktMDEtMDEnOjpkYXRl OworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ma19ybmcycm5nIFdIRVJFIGlk ID0gJ1sxMiwxMyknOwogCiAtLQogLS0gcGFydGl0aW9uZWQgRksgcmVmZXJlbmNlZCBkZWxldGVz IFNFVCBOVUxMCiAtLQogCitUUlVOQ0FURSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ybmcsIHRlbXBv cmFsX3BhcnRpdGlvbmVkX2ZrX3JuZzJybmc7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wYXJ0aXRp b25lZF9ybmcgKGlkLCB2YWxpZF9hdCkgVkFMVUVTICgnWzExLDEyKScsIGRhdGVyYW5nZSgnMjAx OC0wMS0wMScsICcyMDIxLTAxLTAxJykpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGFydGl0aW9u ZWRfZmtfcm5nMnJuZyAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQpIFZBTFVFUyAoJ1s3LDgpJywg ZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSwgJ1sxMSwxMiknKTsKK0RFTEVU RSBGUk9NIHRlbXBvcmFsX3BhcnRpdGlvbmVkX3JuZyBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCBG Uk9NICcyMDE5LTAxLTAxJyBUTyAnMjAyMC0wMS0wMScgV0hFUkUgaWQgPSAnWzExLDEyKSc7CitT RUxFQ1QgKiBGUk9NIHRlbXBvcmFsX3BhcnRpdGlvbmVkX2ZrX3JuZzJybmcgV0hFUkUgaWQgPSAn WzcsOCknOworREVMRVRFIEZST00gdGVtcG9yYWxfcGFydGl0aW9uZWRfcm5nIFdIRVJFIGlkID0g J1sxMSwxMiknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ma19ybmcycm5n IFdIRVJFIGlkID0gJ1s3LDgpJzsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BhcnRpdGlvbmVkX3Ju ZyAoaWQsIHZhbGlkX2F0KSBWQUxVRVMgKCdbMjAsMjEpJywgZGF0ZXJhbmdlKCcyMDE4LTAxLTAx JywgJzIwMjAtMDEtMDEnKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ybmcg KGlkLCB2YWxpZF9hdCkgVkFMVUVTICgnWzIwLDIxKScsIGRhdGVyYW5nZSgnMjAyMC0wMS0wMScs ICcyMDIxLTAxLTAxJykpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGFydGl0aW9uZWRfZmtfcm5n MnJuZyAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQpIFZBTFVFUyAoJ1sxMywxNCknLCBkYXRlcmFu Z2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpLCAnWzIwLDIxKScpOworREVMRVRFIEZST00g dGVtcG9yYWxfcGFydGl0aW9uZWRfcm5nIFdIRVJFIGlkID0gJ1syMCwyMSknIEFORCB2YWxpZF9h dCBAPiAnMjAxOS0wMS0wMSc6OmRhdGU7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX3BhcnRpdGlv bmVkX2ZrX3JuZzJybmcgV0hFUkUgaWQgPSAnWzEzLDE0KSc7CisKIC0tCiAtLSBwYXJ0aXRpb25l ZCBGSyByZWZlcmVuY2VkIHVwZGF0ZXMgU0VUIERFRkFVTFQKIC0tCiAKK1RSVU5DQVRFIHRlbXBv cmFsX3BhcnRpdGlvbmVkX3JuZywgdGVtcG9yYWxfcGFydGl0aW9uZWRfZmtfcm5nMnJuZzsKK0lO U0VSVCBJTlRPIHRlbXBvcmFsX3BhcnRpdGlvbmVkX3JuZyAoaWQsIHZhbGlkX2F0KSBWQUxVRVMg KCdbMCwxKScsIGRhdGVyYW5nZShudWxsLCBudWxsKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9w YXJ0aXRpb25lZF9ybmcgKGlkLCB2YWxpZF9hdCkgVkFMVUVTICgnWzEyLDEzKScsIGRhdGVyYW5n ZSgnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJykpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGFy dGl0aW9uZWRfZmtfcm5nMnJuZyAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQpIFZBTFVFUyAoJ1s4 LDkpJywgZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSwgJ1sxMiwxMyknKTsK IEFMVEVSIFRBQkxFIHRlbXBvcmFsX3BhcnRpdGlvbmVkX2ZrX3JuZzJybmcKICAgQUxURVIgQ09M VU1OIHBhcmVudF9pZCBTRVQgREVGQVVMVCAnWy0xLC0xXScsCiAgIERST1AgQ09OU1RSQUlOVCB0 ZW1wb3JhbF9wYXJ0aXRpb25lZF9ma19ybmcycm5nX2ZrLApAQCAtMTk3NywxMSArMjc2OSwzNCBA QCBBTFRFUiBUQUJMRSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ma19ybmcycm5nCiAgICAgRk9SRUlH TiBLRVkgKHBhcmVudF9pZCwgUEVSSU9EIHZhbGlkX2F0KQogICAgIFJFRkVSRU5DRVMgdGVtcG9y YWxfcGFydGl0aW9uZWRfcm5nCiAgICAgT04gREVMRVRFIFNFVCBERUZBVUxUIE9OIFVQREFURSBT RVQgREVGQVVMVDsKK1VQREFURSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ybmcgRk9SIFBPUlRJT04g T0YgdmFsaWRfYXQgRlJPTSAnMjAxOS0wMS0wMScgVE8gJzIwMjAtMDEtMDEnIFNFVCBpZCA9ICdb MTMsMTQpJyBXSEVSRSBpZCA9ICdbMTIsMTMpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfcGFy dGl0aW9uZWRfZmtfcm5nMnJuZyBXSEVSRSBpZCA9ICdbOCw5KSc7CitVUERBVEUgdGVtcG9yYWxf cGFydGl0aW9uZWRfcm5nIFNFVCBpZCA9ICdbMTMsMTQpJyBXSEVSRSBpZCA9ICdbMTIsMTMpJzsK K1NFTEVDVCAqIEZST00gdGVtcG9yYWxfcGFydGl0aW9uZWRfZmtfcm5nMnJuZyBXSEVSRSBpZCA9 ICdbOCw5KSc7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ybmcgKGlkLCB2YWxp ZF9hdCkgVkFMVUVTICgnWzIyLDIzKScsIGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIwLTAx LTAxJykpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGFydGl0aW9uZWRfcm5nIChpZCwgdmFsaWRf YXQpIFZBTFVFUyAoJ1syMiwyMyknLCBkYXRlcmFuZ2UoJzIwMjAtMDEtMDEnLCAnMjAyMS0wMS0w MScpKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BhcnRpdGlvbmVkX2ZrX3JuZzJybmcgKGlkLCB2 YWxpZF9hdCwgcGFyZW50X2lkKSBWQUxVRVMgKCdbMTQsMTUpJywgZGF0ZXJhbmdlKCcyMDE4LTAx LTAxJywgJzIwMjEtMDEtMDEnKSwgJ1syMiwyMyknKTsKK1VQREFURSB0ZW1wb3JhbF9wYXJ0aXRp b25lZF9ybmcgU0VUIGlkID0gJ1syMywyNCknIFdIRVJFIGlkID0gJ1syMiwyMyknIEFORCB2YWxp ZF9hdCBAPiAnMjAxOS0wMS0wMSc6OmRhdGU7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX3BhcnRp dGlvbmVkX2ZrX3JuZzJybmcgV0hFUkUgaWQgPSAnWzE0LDE1KSc7CiAKIC0tCiAtLSBwYXJ0aXRp b25lZCBGSyByZWZlcmVuY2VkIGRlbGV0ZXMgU0VUIERFRkFVTFQKIC0tCiAKK1RSVU5DQVRFIHRl bXBvcmFsX3BhcnRpdGlvbmVkX3JuZywgdGVtcG9yYWxfcGFydGl0aW9uZWRfZmtfcm5nMnJuZzsK K0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BhcnRpdGlvbmVkX3JuZyAoaWQsIHZhbGlkX2F0KSBWQUxV RVMgKCdbMCwxKScsIGRhdGVyYW5nZShudWxsLCBudWxsKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3Jh bF9wYXJ0aXRpb25lZF9ybmcgKGlkLCB2YWxpZF9hdCkgVkFMVUVTICgnWzE0LDE1KScsIGRhdGVy YW5nZSgnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJykpOworSU5TRVJUIElOVE8gdGVtcG9yYWxf cGFydGl0aW9uZWRfZmtfcm5nMnJuZyAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQpIFZBTFVFUyAo J1s5LDEwKScsIGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJyksICdbMTQsMTUp Jyk7CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ybmcgRk9SIFBPUlRJT04gT0Yg dmFsaWRfYXQgRlJPTSAnMjAxOS0wMS0wMScgVE8gJzIwMjAtMDEtMDEnIFdIRVJFIGlkID0gJ1sx NCwxNSknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ma19ybmcycm5nIFdI RVJFIGlkID0gJ1s5LDEwKSc7CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ybmcg V0hFUkUgaWQgPSAnWzE0LDE1KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX3BhcnRpdGlvbmVk X2ZrX3JuZzJybmcgV0hFUkUgaWQgPSAnWzksMTApJzsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3Bh cnRpdGlvbmVkX3JuZyAoaWQsIHZhbGlkX2F0KSBWQUxVRVMgKCdbMjQsMjUpJywgZGF0ZXJhbmdl KCcyMDE4LTAxLTAxJywgJzIwMjAtMDEtMDEnKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wYXJ0 aXRpb25lZF9ybmcgKGlkLCB2YWxpZF9hdCkgVkFMVUVTICgnWzI0LDI1KScsIGRhdGVyYW5nZSgn MjAyMC0wMS0wMScsICcyMDIxLTAxLTAxJykpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGFydGl0 aW9uZWRfZmtfcm5nMnJuZyAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQpIFZBTFVFUyAoJ1sxNSwx NiknLCBkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpLCAnWzI0LDI1KScpOwor REVMRVRFIEZST00gdGVtcG9yYWxfcGFydGl0aW9uZWRfcm5nIFdIRVJFIGlkID0gJ1syNCwyNSkn IEFORCB2YWxpZF9hdCBAPiAnMjAxOS0wMS0wMSc6OmRhdGU7CitTRUxFQ1QgKiBGUk9NIHRlbXBv cmFsX3BhcnRpdGlvbmVkX2ZrX3JuZzJybmcgV0hFUkUgaWQgPSAnWzE1LDE2KSc7CisKIERST1Ag VEFCTEUgdGVtcG9yYWxfcGFydGl0aW9uZWRfZmtfcm5nMnJuZzsKIERST1AgVEFCTEUgdGVtcG9y YWxfcGFydGl0aW9uZWRfcm5nOwogCkBAIC0yMDcwLDM2ICsyODg1LDkwIEBAIERFTEVURSBGUk9N IHRlbXBvcmFsX3BhcnRpdGlvbmVkX21sdHJuZyBXSEVSRSBpZCA9ICdbNSw2KScgQU5EIHZhbGlk X2F0ID0gZGF0ZW11CiAtLSBwYXJ0aXRpb25lZCBGSyByZWZlcmVuY2VkIHVwZGF0ZXMgQ0FTQ0FE RQogLS0KIAorVFJVTkNBVEUgdGVtcG9yYWxfcGFydGl0aW9uZWRfbWx0cm5nLCB0ZW1wb3JhbF9w YXJ0aXRpb25lZF9ma19tbHRybmcybWx0cm5nOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGFydGl0 aW9uZWRfbWx0cm5nIChpZCwgdmFsaWRfYXQpIFZBTFVFUyAoJ1s2LDcpJywgZGF0ZW11bHRpcmFu Z2UoZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSkpOworSU5TRVJUIElOVE8g dGVtcG9yYWxfcGFydGl0aW9uZWRfZmtfbWx0cm5nMm1sdHJuZyAoaWQsIHZhbGlkX2F0LCBwYXJl bnRfaWQpIFZBTFVFUyAoJ1s0LDUpJywgZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDE4LTAx LTAxJywgJzIwMjEtMDEtMDEnKSksICdbNiw3KScpOwogQUxURVIgVEFCTEUgdGVtcG9yYWxfcGFy dGl0aW9uZWRfZmtfbWx0cm5nMm1sdHJuZwogICBEUk9QIENPTlNUUkFJTlQgdGVtcG9yYWxfcGFy dGl0aW9uZWRfZmtfbWx0cm5nMm1sdHJuZ19maywKICAgQUREIENPTlNUUkFJTlQgdGVtcG9yYWxf cGFydGl0aW9uZWRfZmtfbWx0cm5nMm1sdHJuZ19mawogICAgIEZPUkVJR04gS0VZIChwYXJlbnRf aWQsIFBFUklPRCB2YWxpZF9hdCkKICAgICBSRUZFUkVOQ0VTIHRlbXBvcmFsX3BhcnRpdGlvbmVk X21sdHJuZwogICAgIE9OIERFTEVURSBDQVNDQURFIE9OIFVQREFURSBDQVNDQURFOworVVBEQVRF IHRlbXBvcmFsX3BhcnRpdGlvbmVkX21sdHJuZyBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCAoZGF0 ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDE5LTAxLTAxJywgJzIwMjAtMDEtMDEnKSkpIFNFVCBp ZCA9ICdbNyw4KScgV0hFUkUgaWQgPSAnWzYsNyknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9w YXJ0aXRpb25lZF9ma19tbHRybmcybWx0cm5nIFdIRVJFIGlkID0gJ1s0LDUpJzsKK1VQREFURSB0 ZW1wb3JhbF9wYXJ0aXRpb25lZF9tbHRybmcgU0VUIGlkID0gJ1s3LDgpJyBXSEVSRSBpZCA9ICdb Niw3KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX3BhcnRpdGlvbmVkX2ZrX21sdHJuZzJtbHRy bmcgV0hFUkUgaWQgPSAnWzQsNSknOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGFydGl0aW9uZWRf bWx0cm5nIChpZCwgdmFsaWRfYXQpIFZBTFVFUyAoJ1sxNSwxNiknLCBkYXRlbXVsdGlyYW5nZShk YXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMC0wMS0wMScpKSk7CitJTlNFUlQgSU5UTyB0ZW1w b3JhbF9wYXJ0aXRpb25lZF9tbHRybmcgKGlkLCB2YWxpZF9hdCkgVkFMVUVTICgnWzE1LDE2KScs IGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAyMC0wMS0wMScsICcyMDIxLTAxLTAxJykpKTsK K0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BhcnRpdGlvbmVkX2ZrX21sdHJuZzJtbHRybmcgKGlkLCB2 YWxpZF9hdCwgcGFyZW50X2lkKSBWQUxVRVMgKCdbMTAsMTEpJywgZGF0ZW11bHRpcmFuZ2UoZGF0 ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSksICdbMTUsMTYpJyk7CitVUERBVEUg dGVtcG9yYWxfcGFydGl0aW9uZWRfbWx0cm5nIFNFVCBpZCA9ICdbMTYsMTcpJyBXSEVSRSBpZCA9 ICdbMTUsMTYpJyBBTkQgdmFsaWRfYXQgQD4gJzIwMTktMDEtMDEnOjpkYXRlOworU0VMRUNUICog RlJPTSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ma19tbHRybmcybWx0cm5nIFdIRVJFIGlkID0gJ1sx MCwxMSknOwogCiAtLQogLS0gcGFydGl0aW9uZWQgRksgcmVmZXJlbmNlZCBkZWxldGVzIENBU0NB REUKIC0tCiAKK1RSVU5DQVRFIHRlbXBvcmFsX3BhcnRpdGlvbmVkX21sdHJuZywgdGVtcG9yYWxf cGFydGl0aW9uZWRfZmtfbWx0cm5nMm1sdHJuZzsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BhcnRp dGlvbmVkX21sdHJuZyAoaWQsIHZhbGlkX2F0KSBWQUxVRVMgKCdbOCw5KScsIGRhdGVtdWx0aXJh bmdlKGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJykpKTsKK0lOU0VSVCBJTlRP IHRlbXBvcmFsX3BhcnRpdGlvbmVkX2ZrX21sdHJuZzJtbHRybmcgKGlkLCB2YWxpZF9hdCwgcGFy ZW50X2lkKSBWQUxVRVMgKCdbNSw2KScsIGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAxOC0w MS0wMScsICcyMDIxLTAxLTAxJykpLCAnWzgsOSknKTsKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3Bh cnRpdGlvbmVkX21sdHJuZyBGT1IgUE9SVElPTiBPRiB2YWxpZF9hdCAoZGF0ZW11bHRpcmFuZ2Uo ZGF0ZXJhbmdlKCcyMDE5LTAxLTAxJywgJzIwMjAtMDEtMDEnKSkpIFdIRVJFIGlkID0gJ1s4LDkp JzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfcGFydGl0aW9uZWRfZmtfbWx0cm5nMm1sdHJuZyBX SEVSRSBpZCA9ICdbNSw2KSc7CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9tbHRy bmcgV0hFUkUgaWQgPSAnWzgsOSknOworU0VMRUNUICogRlJPTSB0ZW1wb3JhbF9wYXJ0aXRpb25l ZF9ma19tbHRybmcybWx0cm5nIFdIRVJFIGlkID0gJ1s1LDYpJzsKK0lOU0VSVCBJTlRPIHRlbXBv cmFsX3BhcnRpdGlvbmVkX21sdHJuZyAoaWQsIHZhbGlkX2F0KSBWQUxVRVMgKCdbMTcsMTgpJywg ZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjAtMDEtMDEnKSkpOwor SU5TRVJUIElOVE8gdGVtcG9yYWxfcGFydGl0aW9uZWRfbWx0cm5nIChpZCwgdmFsaWRfYXQpIFZB TFVFUyAoJ1sxNywxOCknLCBkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIwMjAtMDEtMDEnLCAn MjAyMS0wMS0wMScpKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ma19tbHRy bmcybWx0cm5nIChpZCwgdmFsaWRfYXQsIHBhcmVudF9pZCkgVkFMVUVTICgnWzExLDEyKScsIGRh dGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJykpLCAnWzE3 LDE4KScpOworREVMRVRFIEZST00gdGVtcG9yYWxfcGFydGl0aW9uZWRfbWx0cm5nIFdIRVJFIGlk ID0gJ1sxNywxOCknIEFORCB2YWxpZF9hdCBAPiAnMjAxOS0wMS0wMSc6OmRhdGU7CitTRUxFQ1Qg KiBGUk9NIHRlbXBvcmFsX3BhcnRpdGlvbmVkX2ZrX21sdHJuZzJtbHRybmcgV0hFUkUgaWQgPSAn WzExLDEyKSc7CisKIC0tCiAtLSBwYXJ0aXRpb25lZCBGSyByZWZlcmVuY2VkIHVwZGF0ZXMgU0VU IE5VTEwKIC0tCiAKK1RSVU5DQVRFIHRlbXBvcmFsX3BhcnRpdGlvbmVkX21sdHJuZywgdGVtcG9y YWxfcGFydGl0aW9uZWRfZmtfbWx0cm5nMm1sdHJuZzsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3Bh cnRpdGlvbmVkX21sdHJuZyAoaWQsIHZhbGlkX2F0KSBWQUxVRVMgKCdbOSwxMCknLCBkYXRlbXVs dGlyYW5nZShkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpKSk7CitJTlNFUlQg SU5UTyB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ma19tbHRybmcybWx0cm5nIChpZCwgdmFsaWRfYXQs IHBhcmVudF9pZCkgVkFMVUVTICgnWzYsNyknLCBkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIw MTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpKSwgJ1s5LDEwKScpOwogQUxURVIgVEFCTEUgdGVtcG9y YWxfcGFydGl0aW9uZWRfZmtfbWx0cm5nMm1sdHJuZwogICBEUk9QIENPTlNUUkFJTlQgdGVtcG9y YWxfcGFydGl0aW9uZWRfZmtfbWx0cm5nMm1sdHJuZ19maywKICAgQUREIENPTlNUUkFJTlQgdGVt cG9yYWxfcGFydGl0aW9uZWRfZmtfbWx0cm5nMm1sdHJuZ19mawogICAgIEZPUkVJR04gS0VZIChw YXJlbnRfaWQsIFBFUklPRCB2YWxpZF9hdCkKICAgICBSRUZFUkVOQ0VTIHRlbXBvcmFsX3BhcnRp dGlvbmVkX21sdHJuZwogICAgIE9OIERFTEVURSBTRVQgTlVMTCBPTiBVUERBVEUgU0VUIE5VTEw7 CitVUERBVEUgdGVtcG9yYWxfcGFydGl0aW9uZWRfbWx0cm5nIEZPUiBQT1JUSU9OIE9GIHZhbGlk X2F0IChkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIwMTktMDEtMDEnLCAnMjAyMC0wMS0wMScp KSkgU0VUIGlkID0gJ1sxMCwxMSknIFdIRVJFIGlkID0gJ1s5LDEwKSc7CitTRUxFQ1QgKiBGUk9N IHRlbXBvcmFsX3BhcnRpdGlvbmVkX2ZrX21sdHJuZzJtbHRybmcgV0hFUkUgaWQgPSAnWzYsNykn OworVVBEQVRFIHRlbXBvcmFsX3BhcnRpdGlvbmVkX21sdHJuZyBTRVQgaWQgPSAnWzEwLDExKScg V0hFUkUgaWQgPSAnWzksMTApJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfcGFydGl0aW9uZWRf ZmtfbWx0cm5nMm1sdHJuZyBXSEVSRSBpZCA9ICdbNiw3KSc7CitJTlNFUlQgSU5UTyB0ZW1wb3Jh bF9wYXJ0aXRpb25lZF9tbHRybmcgKGlkLCB2YWxpZF9hdCkgVkFMVUVTICgnWzE4LDE5KScsIGRh dGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIwLTAxLTAxJykpKTsKK0lO U0VSVCBJTlRPIHRlbXBvcmFsX3BhcnRpdGlvbmVkX21sdHJuZyAoaWQsIHZhbGlkX2F0KSBWQUxV RVMgKCdbMTgsMTkpJywgZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDIwLTAxLTAxJywgJzIw MjEtMDEtMDEnKSkpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGFydGl0aW9uZWRfZmtfbWx0cm5n Mm1sdHJuZyAoaWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQpIFZBTFVFUyAoJ1sxMiwxMyknLCBkYXRl bXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMS0wMS0wMScpKSwgJ1sxOCwx OSknKTsKK1VQREFURSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9tbHRybmcgU0VUIGlkID0gJ1sxOSwy MCknIFdIRVJFIGlkID0gJ1sxOCwxOSknIEFORCB2YWxpZF9hdCBAPiAnMjAxOS0wMS0wMSc6OmRh dGU7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX3BhcnRpdGlvbmVkX2ZrX21sdHJuZzJtbHRybmcg V0hFUkUgaWQgPSAnWzEyLDEzKSc7CiAKIC0tCiAtLSBwYXJ0aXRpb25lZCBGSyByZWZlcmVuY2Vk IGRlbGV0ZXMgU0VUIE5VTEwKIC0tCiAKK1RSVU5DQVRFIHRlbXBvcmFsX3BhcnRpdGlvbmVkX21s dHJuZywgdGVtcG9yYWxfcGFydGl0aW9uZWRfZmtfbWx0cm5nMm1sdHJuZzsKK0lOU0VSVCBJTlRP IHRlbXBvcmFsX3BhcnRpdGlvbmVkX21sdHJuZyAoaWQsIHZhbGlkX2F0KSBWQUxVRVMgKCdbMTEs MTIpJywgZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEn KSkpOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGFydGl0aW9uZWRfZmtfbWx0cm5nMm1sdHJuZyAo aWQsIHZhbGlkX2F0LCBwYXJlbnRfaWQpIFZBTFVFUyAoJ1s3LDgpJywgZGF0ZW11bHRpcmFuZ2Uo ZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSksICdbMTEsMTIpJyk7CitERUxF VEUgRlJPTSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9tbHRybmcgRk9SIFBPUlRJT04gT0YgdmFsaWRf YXQgKGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAxOS0wMS0wMScsICcyMDIwLTAxLTAxJykp KSBXSEVSRSBpZCA9ICdbMTEsMTIpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfcGFydGl0aW9u ZWRfZmtfbWx0cm5nMm1sdHJuZyBXSEVSRSBpZCA9ICdbNyw4KSc7CitERUxFVEUgRlJPTSB0ZW1w b3JhbF9wYXJ0aXRpb25lZF9tbHRybmcgV0hFUkUgaWQgPSAnWzExLDEyKSc7CitTRUxFQ1QgKiBG Uk9NIHRlbXBvcmFsX3BhcnRpdGlvbmVkX2ZrX21sdHJuZzJtbHRybmcgV0hFUkUgaWQgPSAnWzcs OCknOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGFydGl0aW9uZWRfbWx0cm5nIChpZCwgdmFsaWRf YXQpIFZBTFVFUyAoJ1syMCwyMSknLCBkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIwMTgtMDEt MDEnLCAnMjAyMC0wMS0wMScpKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9t bHRybmcgKGlkLCB2YWxpZF9hdCkgVkFMVUVTICgnWzIwLDIxKScsIGRhdGVtdWx0aXJhbmdlKGRh dGVyYW5nZSgnMjAyMC0wMS0wMScsICcyMDIxLTAxLTAxJykpKTsKK0lOU0VSVCBJTlRPIHRlbXBv cmFsX3BhcnRpdGlvbmVkX2ZrX21sdHJuZzJtbHRybmcgKGlkLCB2YWxpZF9hdCwgcGFyZW50X2lk KSBWQUxVRVMgKCdbMTMsMTQpJywgZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDE4LTAxLTAx JywgJzIwMjEtMDEtMDEnKSksICdbMjAsMjEpJyk7CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9wYXJ0 aXRpb25lZF9tbHRybmcgV0hFUkUgaWQgPSAnWzIwLDIxKScgQU5EIHZhbGlkX2F0IEA+ICcyMDE5 LTAxLTAxJzo6ZGF0ZTsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfcGFydGl0aW9uZWRfZmtfbWx0 cm5nMm1sdHJuZyBXSEVSRSBpZCA9ICdbMTMsMTQpJzsKKwogLS0KIC0tIHBhcnRpdGlvbmVkIEZL IHJlZmVyZW5jZWQgdXBkYXRlcyBTRVQgREVGQVVMVAogLS0KIAorVFJVTkNBVEUgdGVtcG9yYWxf cGFydGl0aW9uZWRfbWx0cm5nLCB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ma19tbHRybmcybWx0cm5n OworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGFydGl0aW9uZWRfbWx0cm5nIChpZCwgdmFsaWRfYXQp IFZBTFVFUyAoJ1swLDEpJywgZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKG51bGwsIG51bGwpKSk7 CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9tbHRybmcgKGlkLCB2YWxpZF9hdCkg VkFMVUVTICgnWzEyLDEzKScsIGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAxOC0wMS0wMScs ICcyMDIxLTAxLTAxJykpKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BhcnRpdGlvbmVkX2ZrX21s dHJuZzJtbHRybmcgKGlkLCB2YWxpZF9hdCwgcGFyZW50X2lkKSBWQUxVRVMgKCdbOCw5KScsIGRh dGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAxOC0wMS0wMScsICcyMDIxLTAxLTAxJykpLCAnWzEy LDEzKScpOwogQUxURVIgVEFCTEUgdGVtcG9yYWxfcGFydGl0aW9uZWRfZmtfbWx0cm5nMm1sdHJu ZwogICBBTFRFUiBDT0xVTU4gcGFyZW50X2lkIFNFVCBERUZBVUxUICdbMCwxKScsCiAgIERST1Ag Q09OU1RSQUlOVCB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ma19tbHRybmcybWx0cm5nX2ZrLApAQCAt MjEwNywxMSArMjk3NiwzNCBAQCBBTFRFUiBUQUJMRSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ma19t bHRybmcybWx0cm5nCiAgICAgRk9SRUlHTiBLRVkgKHBhcmVudF9pZCwgUEVSSU9EIHZhbGlkX2F0 KQogICAgIFJFRkVSRU5DRVMgdGVtcG9yYWxfcGFydGl0aW9uZWRfbWx0cm5nCiAgICAgT04gREVM RVRFIFNFVCBERUZBVUxUIE9OIFVQREFURSBTRVQgREVGQVVMVDsKK1VQREFURSB0ZW1wb3JhbF9w YXJ0aXRpb25lZF9tbHRybmcgRk9SIFBPUlRJT04gT0YgdmFsaWRfYXQgKGRhdGVtdWx0aXJhbmdl KGRhdGVyYW5nZSgnMjAxOS0wMS0wMScsICcyMDIwLTAxLTAxJykpKSBTRVQgaWQgPSAnWzEzLDE0 KScgV0hFUkUgaWQgPSAnWzEyLDEzKSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX3BhcnRpdGlv bmVkX2ZrX21sdHJuZzJtbHRybmcgV0hFUkUgaWQgPSAnWzgsOSknOworVVBEQVRFIHRlbXBvcmFs X3BhcnRpdGlvbmVkX21sdHJuZyBTRVQgaWQgPSAnWzEzLDE0KScgV0hFUkUgaWQgPSAnWzEyLDEz KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX3BhcnRpdGlvbmVkX2ZrX21sdHJuZzJtbHRybmcg V0hFUkUgaWQgPSAnWzgsOSknOworSU5TRVJUIElOVE8gdGVtcG9yYWxfcGFydGl0aW9uZWRfbWx0 cm5nIChpZCwgdmFsaWRfYXQpIFZBTFVFUyAoJ1syMiwyMyknLCBkYXRlbXVsdGlyYW5nZShkYXRl cmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMC0wMS0wMScpKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3Jh bF9wYXJ0aXRpb25lZF9tbHRybmcgKGlkLCB2YWxpZF9hdCkgVkFMVUVTICgnWzIyLDIzKScsIGRh dGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAyMC0wMS0wMScsICcyMDIxLTAxLTAxJykpKTsKK0lO U0VSVCBJTlRPIHRlbXBvcmFsX3BhcnRpdGlvbmVkX2ZrX21sdHJuZzJtbHRybmcgKGlkLCB2YWxp ZF9hdCwgcGFyZW50X2lkKSBWQUxVRVMgKCdbMTQsMTUpJywgZGF0ZW11bHRpcmFuZ2UoZGF0ZXJh bmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSksICdbMjIsMjMpJyk7CitVUERBVEUgdGVt cG9yYWxfcGFydGl0aW9uZWRfbWx0cm5nIFNFVCBpZCA9ICdbMjMsMjQpJyBXSEVSRSBpZCA9ICdb MjIsMjMpJyBBTkQgdmFsaWRfYXQgQD4gJzIwMTktMDEtMDEnOjpkYXRlOworU0VMRUNUICogRlJP TSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9ma19tbHRybmcybWx0cm5nIFdIRVJFIGlkID0gJ1sxNCwx NSknOwogCiAtLQogLS0gcGFydGl0aW9uZWQgRksgcmVmZXJlbmNlZCBkZWxldGVzIFNFVCBERUZB VUxUCiAtLQogCitUUlVOQ0FURSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9tbHRybmcsIHRlbXBvcmFs X3BhcnRpdGlvbmVkX2ZrX21sdHJuZzJtbHRybmc7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wYXJ0 aXRpb25lZF9tbHRybmcgKGlkLCB2YWxpZF9hdCkgVkFMVUVTICgnWzAsMSknLCBkYXRlbXVsdGly YW5nZShkYXRlcmFuZ2UobnVsbCwgbnVsbCkpKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BhcnRp dGlvbmVkX21sdHJuZyAoaWQsIHZhbGlkX2F0KSBWQUxVRVMgKCdbMTQsMTUpJywgZGF0ZW11bHRp cmFuZ2UoZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEtMDEnKSkpOworSU5TRVJUIElO VE8gdGVtcG9yYWxfcGFydGl0aW9uZWRfZmtfbWx0cm5nMm1sdHJuZyAoaWQsIHZhbGlkX2F0LCBw YXJlbnRfaWQpIFZBTFVFUyAoJ1s5LDEwKScsIGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAx OC0wMS0wMScsICcyMDIxLTAxLTAxJykpLCAnWzE0LDE1KScpOworREVMRVRFIEZST00gdGVtcG9y YWxfcGFydGl0aW9uZWRfbWx0cm5nIEZPUiBQT1JUSU9OIE9GIHZhbGlkX2F0IChkYXRlbXVsdGly YW5nZShkYXRlcmFuZ2UoJzIwMTktMDEtMDEnLCAnMjAyMC0wMS0wMScpKSkgV0hFUkUgaWQgPSAn WzE0LDE1KSc7CitTRUxFQ1QgKiBGUk9NIHRlbXBvcmFsX3BhcnRpdGlvbmVkX2ZrX21sdHJuZzJt bHRybmcgV0hFUkUgaWQgPSAnWzksMTApJzsKK0RFTEVURSBGUk9NIHRlbXBvcmFsX3BhcnRpdGlv bmVkX21sdHJuZyBXSEVSRSBpZCA9ICdbMTQsMTUpJzsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxf cGFydGl0aW9uZWRfZmtfbWx0cm5nMm1sdHJuZyBXSEVSRSBpZCA9ICdbOSwxMCknOworSU5TRVJU IElOVE8gdGVtcG9yYWxfcGFydGl0aW9uZWRfbWx0cm5nIChpZCwgdmFsaWRfYXQpIFZBTFVFUyAo J1syNCwyNSknLCBkYXRlbXVsdGlyYW5nZShkYXRlcmFuZ2UoJzIwMTgtMDEtMDEnLCAnMjAyMC0w MS0wMScpKSk7CitJTlNFUlQgSU5UTyB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9tbHRybmcgKGlkLCB2 YWxpZF9hdCkgVkFMVUVTICgnWzI0LDI1KScsIGRhdGVtdWx0aXJhbmdlKGRhdGVyYW5nZSgnMjAy MC0wMS0wMScsICcyMDIxLTAxLTAxJykpKTsKK0lOU0VSVCBJTlRPIHRlbXBvcmFsX3BhcnRpdGlv bmVkX2ZrX21sdHJuZzJtbHRybmcgKGlkLCB2YWxpZF9hdCwgcGFyZW50X2lkKSBWQUxVRVMgKCdb MTUsMTYpJywgZGF0ZW11bHRpcmFuZ2UoZGF0ZXJhbmdlKCcyMDE4LTAxLTAxJywgJzIwMjEtMDEt MDEnKSksICdbMjQsMjUpJyk7CitERUxFVEUgRlJPTSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9tbHRy bmcgV0hFUkUgaWQgPSAnWzI0LDI1KScgQU5EIHZhbGlkX2F0IEA+ICcyMDE5LTAxLTAxJzo6ZGF0 ZTsKK1NFTEVDVCAqIEZST00gdGVtcG9yYWxfcGFydGl0aW9uZWRfZmtfbWx0cm5nMm1sdHJuZyBX SEVSRSBpZCA9ICdbMTUsMTYpJzsKKwogRFJPUCBUQUJMRSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9m a19tbHRybmcybWx0cm5nOwogRFJPUCBUQUJMRSB0ZW1wb3JhbF9wYXJ0aXRpb25lZF9tbHRybmc7 CiAKLS0gCjIuNDcuMwoK --000000000000160b4c0644846b0a--