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.94.2) (envelope-from ) id 1qMUeE-002Wqw-6p for pgsql-general@arkaria.postgresql.org; Thu, 20 Jul 2023 14:28:54 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.94.2) (envelope-from ) id 1qMUeC-008vin-5W for pgsql-general@arkaria.postgresql.org; Thu, 20 Jul 2023 14:28:52 +0000 Received: from makus.postgresql.org ([2001:4800:3e1:1::229]) by malur.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1qMUeB-008vhz-Ba for pgsql-general@lists.postgresql.org; Thu, 20 Jul 2023 14:28:51 +0000 Received: from mail-lj1-x231.google.com ([2a00:1450:4864:20::231]) by makus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.94.2) (envelope-from ) id 1qMUe7-000W4p-PR for pgsql-general@lists.postgresql.org; Thu, 20 Jul 2023 14:28:49 +0000 Received: by mail-lj1-x231.google.com with SMTP id 38308e7fff4ca-2b96789d574so9028081fa.2 for ; Thu, 20 Jul 2023 07:28:47 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1689863325; x=1690468125; h=to:subject:message-id:date:from:in-reply-to:references:mime-version :from:to:cc:subject:date:message-id:reply-to; bh=+F0qwbH/V0rUz6p9j23tTWEfxKqY8r93A95X7UvvUho=; b=omvZEC3Sl4uANaT/lHnm6pg4UPl4wnGZ3qF/bUnM2zdHSbRz5ag8cmFE3vMoA1hSx+ gVbGqsNLfNkjS+HrpQTojqW2iB3bjrmLmhxNNhmJ9TBiGSmtuiE+DQFDVBmO3DXsbyON Aoyk7HoykSboZAiHPuwDaodyeaK/UwsZahlA2oaTVdUX/B0S0u6oC7h/HL2GT+9CAr1y cNS6sG0nUK6As0cIOqDJf/zqb/0khwVfNZvhEogswoD/QPC24re6tqfxdB+714TRWc+t YEpBXzxUk3jeqPH9ohaxSc+qSoUKnq9JxXeKAmPUw4phD/qRdaZLGA0la2PS7xrhX4UU BhYA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1689863325; x=1690468125; h=to:subject:message-id:date:from:in-reply-to:references:mime-version :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=+F0qwbH/V0rUz6p9j23tTWEfxKqY8r93A95X7UvvUho=; b=T42dkdDKrBzZrMM83A6Vmu2WiYiasDjBe1282ZGPy8/cljCD2T0t3JVq5qok9iyBoO W46RgIZqyPI0Wc4LIPhYfBVSJpf+T8N721H2WkSUDulQu0UDsvmMvXetBaCTps4OCHav nnfB9tbGhiF19yb4vAbUNrmGPMM/ZHVfVGF6bedRPC7ZRSsPTiBiryXVtv6qrtbJ36RU P2yD40hA+t0hh4foCnSs3XZmI0p4ljqbq6S6IcktEsMWaGw8dxJpiu8Xv+uBRL9SVv3P 1Lpkq6RACqh+CRx5D8r2eL7eIh+A492RLBVXwSRRcq9hIEsj+3+2dqohxrupyApd9UKi +BUg== X-Gm-Message-State: ABy/qLa3RlYJnXYmSc8/9QiCzMp8rNn0aZoQ8BHRWTo3+YX+nNd72wR5 VbkP7GSYMubW8EA2X450xao82bhu/Y3jaFRHlzwLnFV4bN4= X-Google-Smtp-Source: APBJJlGPHBAjaQzhj5XpWc8vn2fKsLTND35Q7YxoQ4z4/Rw7j6eJLMiq/GfFnuMZ5crdo4qjxtpyCBwV+pTHYXtCWyw= X-Received: by 2002:a2e:86d1:0:b0:2b7:3633:2035 with SMTP id n17-20020a2e86d1000000b002b736332035mr2512591ljj.32.1689863325231; Thu, 20 Jul 2023 07:28:45 -0700 (PDT) MIME-Version: 1.0 References: In-Reply-To: From: Anthony Apollis Date: Thu, 20 Jul 2023 16:28:33 +0200 Message-ID: Subject: Fwd: TSQL To Postgres - Unpivot/Union All To: pgsql-general@lists.postgresql.org Content-Type: multipart/mixed; boundary="0000000000003848f60600ebf7b4" List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk --0000000000003848f60600ebf7b4 Content-Type: multipart/alternative; boundary="0000000000003848f40600ebf7b2" --0000000000003848f40600ebf7b2 Content-Type: text/plain; charset="UTF-8" ---------- Forwarded message --------- From: Anthony Apollis Date: Thu, 20 Jul 2023 at 16:07 Subject: Re: TSQL To Postgres - Unpivot/Union All To: Geoff Winkless , David G. Johnston < david.g.johnston@gmail.com> I am attaching my TSQL and Postgres SQL: On Thu, 20 Jul 2023 at 15:58, Geoff Winkless wrote: > On Thu, 20 Jul 2023 at 13:17, Anthony Apollis > wrote: > >> The Postgres i used: INSERT INTO temp_FieldFlowsFact >> SELECT "Account", "Calendar day", "Financial year", "Period", >> >> [snip] > > At the very least, include a column list in your INSERT statement. We have > no way of checking where any of your results are going. > > Geoff > --0000000000003848f40600ebf7b2 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable


---------- Forwarded message ---------
From: Anthony Apollis <anthony.apollis@gmai= l.com>
Date: Thu, 20 Jul 2023 at 16:07
Subject: Re: TSQ= L To Postgres - Unpivot/Union All
To: Geoff Winkless <pgsqladmin@geoff.dj>, David G. Johnston <= david.g.johnston@gmail.com>


I am attaching my TSQL and Postgres= SQL:

On Thu, 20 Jul 2023 at 15:58, Geoff Winkless <pgsqladmin@geoff.dj> wrote:
<= /div>
On Thu, 20 Jul 2023= at 13:17, Anthony Apollis <anthony.apollis@gmail.com> wrote:
The Postgres i used: INSERT INTO temp_FieldFlowsFact
SELECT "Ac= count", "Calendar day", "Financial year", "Pe= riod",

[snip]

At the very least, include a column list i= n your INSERT statement. We have no way of checking where any of your resul= ts are going.

Geoff
--0000000000003848f40600ebf7b2-- --0000000000003848f60600ebf7b4 Content-Type: text/plain; charset="US-ASCII"; name="posgresto.txt" Content-Disposition: attachment; filename="posgresto.txt" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_lkb88sof0 DQotLSBDUkVBVElORyBBIFRFTVBPUkFMIFRBQkxFIFdIRVJFIFdFIEFQUExZIFRIRSBHTE9CTFkg TUVUSE9ET0xPR1kgT0YgUkVNT1ZJTkcgSU5URVJOQUwgVFJBTlNGRVJTDQpDUkVBVEUgVEFCTEUg dGVtcC50ZW1wX0Zsb3dzICgNCiAgICAiRmlzY2FsIHllYXIgcGVyaW9kIiB2YXJjaGFyKDIwKSwN CiAgICAiQ29tcGFueSBDb2RlIiB2YXJjaGFyKDUpLA0KICAgICJBY2NvdW50IiB2YXJjaGFyKDIw KSwNCiAgICAiR2VuZXJpYyBNYXRlcmlhbCIgdmFyY2hhcig4KSwNCiAgICAiSXNzdWUiIGZsb2F0 LA0KICAgICJUcmFuc2ZlcnMgSW4iIGZsb2F0LA0KICAgICJUcmFuc2ZlcnMgT3V0IiBmbG9hdCwN CiAgICAiUmV0dXJuIiBmbG9hdA0KKTsNCldpdGhvdXQgbGVhZGluZyB6ZXJv4oCZcw0K4oCcLS0g SW5zZXJ0IGludG8gdGVtcF9GbG93cw0KSU5TRVJUIElOVE8gdGVtcC50ZW1wX0Zsb3dzDQpTRUxF Q1QgRElTVElOQ1QNCiAgICBUT19DSEFSKFRPX0RBVEUoIkZpc2NhbCB5ZWFyIHBlcmlvZCIsICdN TS5ZWVlZJyksICdGTW1tLllZWVknKSBBUyAiRmlzY2FsIHllYXIgcGVyaW9kIiwNCiAgICAiQ29t cGFueSBDb2RlIiwNCiAgICAiQWNjb3VudCIsDQogICAgIkdlbmVyaWMgTWF0ZXJpYWwiLA0KICAg IENPQUxFU0NFKFNVTShDQVNFIFdIRU4gIk1ldHJpYyIgSU4gKCdzIChpbiknKSBUSEVOICJNZXRy aWMgVmFsdWUiIEVORCkgT1ZFUiAoUEFSVElUSU9OIEJZICJBY2NvdW50IiwgIkNvbXBhbnkgQ29k ZSIsICJHZW5lcmljIE1hdGVyaWFsIiwgIkZpc2NhbCB5ZWFyIHBlcmlvZCIsICJNZXRyaWMiKSwg MCkgQVMgIklzc3VlIiwNCiAgICBDT0FMRVNDRShTVU0oQ0FTRSBXSEVOICJNZXRyaWMiIElOICgn dEREIChpbiknLCAndERFIChpbiknLCAndEVEIChpbiknLCAndEVFIChpbiknKSBUSEVOICJNZXRy aWMgVmFsdWUiIEVORCkgT1ZFUiAoUEFSVElUSU9OIEJZICJBY2NvdW50IiwgIkNvbXBhbnkgQ29k ZSIsICJHZW5lcmljIE1hdGVyaWFsIiwgIkZpc2NhbCB5ZWFyIHBlcmlvZCIsICJNZXRyaWMiKSwg MCkgQVMgIlRyYW5zZmVycyBJbiIsDQogICAgQ09BTEVTQ0UoU1VNKENBU0UgV0hFTiAiTWV0cmlj IiBJTiAoJ3RERCAoT3V0KScsICd0REUgKE91dCknLCAndEVEIChPdXQpJywgJ3RFRSAoT3V0KScp IFRIRU4gIk1ldHJpYyBWYWx1ZSIgRU5EKSBPVkVSIChQQVJUSVRJT04gQlkgIkFjY291bnQiLCAi Q29tcGFueSBDb2RlIiwgIkdlbmVyaWMgTWF0ZXJpYWwiLCAiRmlzY2FsIHllYXIgcGVyaW9kIiwg Ik1ldHJpYyIpLCAwKSBBUyAiVHJhbnNmZXJzIE91dCIsDQogICAgQ09BTEVTQ0UoU1VNKENBU0Ug V0hFTiAiTWV0cmljIiBJTiAoJ3IgKG91dCknKSBUSEVOICJNZXRyaWMgVmFsdWUiIEVORCkgT1ZF UiAoUEFSVElUSU9OIEJZICJBY2NvdW50IiwgIkNvbXBhbnkgQ29kZSIsICJHZW5lcmljIE1hdGVy aWFsIiwgIkZpc2NhbCB5ZWFyIHBlcmlvZCIsICJNZXRyaWMiKSwgMCkgQVMgIlJldHVybiINCkZS T00gKA0KICAgIFNFTEVDVA0KICAgICAgICAiRmlzY2FsIHllYXIgcGVyaW9kIiwNCiAgICAgICAg IkNvbXBhbnkgQ29kZSIsDQogICAgICAgICJDb250cmEgQWNjb3VudCIsDQogICAgICAgICJBY2Nv dW50IiwNCiAgICAgICAgIkdlbmVyaWMgTWF0ZXJpYWwiLA0KICAgICAgICAiTWV0cmljIiwNCiAg ICAgICAgQ09BTEVTQ0UoIk1ldHJpYyBWYWx1ZSIsIDApIEFTICJNZXRyaWMgVmFsdWUiDQogICAg RlJPTSBtb2RlbC4iSU1FVEFfR2xvYmFsX0ZpZWxkX0Zsb3dzX0Z1bGxfZGF0YXNldF8oQ2xpZW50 KV9UQV9CVyINCiAgICAtLSBBcHBseWluZyB0aGUgR2xvYmFsIE1ldGhvZG9sb2d5IGZvciBUcmFu c2ZlcnMNCiAgICBXSEVSRSAiQWNjb3VudCIgPD4gIkNvbnRyYSBBY2NvdW50Ig0KICAgICAgICBB TkQgIk1ldHJpYyIgSU4gKCd0REQgKE91dCknLCAndERFIChPdXQpJywgJ3RFRSAoT3V0KScsICd0 RUQgKE91dCknLCAndEREIChpbiknLCAndERFIChpbiknLCAndEVFIChpbiknLCAndEVEIChpbikn KQ0KICAgIC0tIEJyaW5naW5nIGluIG90aGVyIGRhdGEgZXhjbHVkaW5nIHRoZSBmaWx0ZXJpbmcg b2YgaW50YSBhbmQgY29udHJhIG1vdmVtZW50cy9pbnRlcm5hbCBmbG93cw0KICAgIFVOSU9OIEFM TA0KICAgIFNFTEVDVA0KICAgICAgICAiRmlzY2FsIHllYXIgcGVyaW9kIiwNCiAgICAgICAgIkNv bXBhbnkgQ29kZSIsDQogICAgICAgICJDb250cmEgQWNjb3VudCIsDQogICAgICAgICJBY2NvdW50 IiwNCiAgICAgICAgIkdlbmVyaWMgTWF0ZXJpYWwiLA0KICAgICAgICAiTWV0cmljIiwNCiAgICAg ICAgQ09BTEVTQ0UoIk1ldHJpYyBWYWx1ZSIsIDApIEFTICJNZXRyaWMgVmFsdWUiDQogICAgRlJP TSBtb2RlbC4iSU1FVEFfR2xvYmFsX0ZpZWxkX0Zsb3dzX0Z1bGxfZGF0YXNldF8oQ2xpZW50KV9U QV9CVyINCiAgICBXSEVSRSAiTWV0cmljIiBJTiAoJ3IgKG91dCknLCAncyAoaW4pJywgJ3IgKHN0 YXIpIChpbiknLCAnckRQIChpbiknLCAnckVQIChpbiknLCAnc1BFIChvdXQpJywgJ3NQRCAob3V0 KScsICdpIChzdGFyKSBvdXQgKHErZERFIChzdGFyKS1vdXQpJywgJ3kgKEJhc2VkIG9uIFAuT3Jk LiknLCAneCcsICd6JywgJ3EgKGluKSAtIChzIChpbikpJykNCikgQVMgVGFibGVfMQ0KV0hFUkUg IkNvbXBhbnkgQ29kZSIgSU4gKCdBRTEwJywgJ0FFMjAnLCAnU0ExMCcpO+KAnQ0KDQoNCi0tIElu c2VydCBpbnRvIHRlbXBfRmxvd3MNCklOU0VSVCBJTlRPIHRlbXAudGVtcF9GbG93cw0KU0VMRUNU IERJU1RJTkNUDQoiRmlzY2FsIHllYXIgcGVyaW9kIiwNCiJDb21wYW55IENvZGUiLA0KIkFjY291 bnQiLA0KIkdlbmVyaWMgTWF0ZXJpYWwiLA0KQ09BTEVTQ0UoU1VNKENBU0UgV0hFTiAiTWV0cmlj IiBJTiAoJ3MgKGluKScpIFRIRU4gIk1ldHJpYyBWYWx1ZSIgRU5EKSBPVkVSIChQQVJUSVRJT04g QlkgIkFjY291bnQiLCAiQ29tcGFueSBDb2RlIiwgIkdlbmVyaWMgTWF0ZXJpYWwiLCAiRmlzY2Fs IHllYXIgcGVyaW9kIiwgIk1ldHJpYyIpLCAwKSBBUyAiSXNzdWUiLA0KQ09BTEVTQ0UoU1VNKENB U0UgV0hFTiAiTWV0cmljIiBJTiAoJ3RERCAoaW4pJywgJ3RERSAoaW4pJywgJ3RFRCAoaW4pJywg J3RFRSAoaW4pJykgVEhFTiAiTWV0cmljIFZhbHVlIiBFTkQpIE9WRVIgKFBBUlRJVElPTiBCWSAi QWNjb3VudCIsICJDb21wYW55IENvZGUiLCAiR2VuZXJpYyBNYXRlcmlhbCIsICJGaXNjYWwgeWVh ciBwZXJpb2QiLCAiTWV0cmljIiksIDApIEFTICJUcmFuc2ZlcnMgSW4iLA0KQ09BTEVTQ0UoU1VN KENBU0UgV0hFTiAiTWV0cmljIiBJTiAoJ3RERCAoT3V0KScsICd0REUgKE91dCknLCAndEVEIChP dXQpJywgJ3RFRSAoT3V0KScpIFRIRU4gIk1ldHJpYyBWYWx1ZSIgRU5EKSBPVkVSIChQQVJUSVRJ T04gQlkgIkFjY291bnQiLCAiQ29tcGFueSBDb2RlIiwgIkdlbmVyaWMgTWF0ZXJpYWwiLCAiRmlz Y2FsIHllYXIgcGVyaW9kIiwgIk1ldHJpYyIpLCAwKSBBUyAiVHJhbnNmZXJzIE91dCIsDQpDT0FM RVNDRShTVU0oQ0FTRSBXSEVOICJNZXRyaWMiIElOICgnciAob3V0KScpIFRIRU4gIk1ldHJpYyBW YWx1ZSIgRU5EKSBPVkVSIChQQVJUSVRJT04gQlkgIkFjY291bnQiLCAiQ29tcGFueSBDb2RlIiwg IkdlbmVyaWMgTWF0ZXJpYWwiLCAiRmlzY2FsIHllYXIgcGVyaW9kIiwgIk1ldHJpYyIpLCAwKSBB UyAiUmV0dXJuIg0KRlJPTSAoDQpTRUxFQ1QNCiJGaXNjYWwgeWVhciBwZXJpb2QiLA0KIkNvbXBh bnkgQ29kZSIsDQoiQ29udHJhIEFjY291bnQiLA0KIkFjY291bnQiLA0KIkdlbmVyaWMgTWF0ZXJp YWwiLA0KIk1ldHJpYyIsDQpDT0FMRVNDRSgiTWV0cmljIFZhbHVlIiwgMCkgQVMgIk1ldHJpYyBW YWx1ZSINCkZST00gbW9kZWwuIklNRVRBX0dsb2JhbF9GaWVsZF9GbG93c19GdWxsX2RhdGFzZXRf KENsaWVudClfVEFfQlciDQotLSBBcHBseWluZyB0aGUgR2xvYmFsIE1ldGhvZG9sb2d5IGZvciBU cmFuc2ZlcnMNCldIRVJFICJBY2NvdW50IiA8PiAiQ29udHJhIEFjY291bnQiDQpBTkQgIk1ldHJp YyIgSU4gKCd0REQgKE91dCknLCAndERFIChPdXQpJywgJ3RFRSAoT3V0KScsICd0RUQgKE91dCkn LCAndEREIChpbiknLCAndERFIChpbiknLCAndEVFIChpbiknLCAndEVEIChpbiknKQ0KLS0gQnJp bmdpbmcgaW4gb3RoZXIgZGF0YSBleGNsdWRpbmcgdGhlIGZpbHRlcmluZyBvZiBpbnRhIGFuZCBj b250cmEgbW92ZW1lbnRzL2ludGVybmFsIGZsb3dzDQpVTklPTiBBTEwNClNFTEVDVA0KIkZpc2Nh bCB5ZWFyIHBlcmlvZCIsDQoiQ29tcGFueSBDb2RlIiwNCiJDb250cmEgQWNjb3VudCIsDQoiQWNj b3VudCIsDQoiR2VuZXJpYyBNYXRlcmlhbCIsDQoiTWV0cmljIiwNCkNPQUxFU0NFKCJNZXRyaWMg VmFsdWUiLCAwKSBBUyAiTWV0cmljIFZhbHVlIg0KRlJPTSBtb2RlbC4iSU1FVEFfR2xvYmFsX0Zp ZWxkX0Zsb3dzX0Z1bGxfZGF0YXNldF8oQ2xpZW50KV9UQV9CVyINCldIRVJFICJNZXRyaWMiIElO ICgnciAob3V0KScsICdzIChpbiknLCAnciAoc3RhcikgKGluKScsICdyRFAgKGluKScsICdyRVAg KGluKScsICdzUEUgKG91dCknLA0KJ3NQRCAob3V0KScsICdpIChzdGFyKSBvdXQgKHErZERFIChz dGFyKS1vdXQpJywgJ3kgKEJhc2VkIG9uIFAuT3JkLiknLCAneCcsICd6JywgJ3EgKGluKSAtIChz IChpbikpJykNCikgQVMgVGFibGVfMQ0KV0hFUkUgIkNvbXBhbnkgQ29kZSIgSU4gKCdBRTEwJywg J0FFMjAnLCAnU0ExMCcpOw0KDQotLS0tLS0tDQoNCg0KLS1DUkVBVEUgIFRBQkxFICJ0ZW1wLnRl bXBfRmxvd3NGYWN0IiAoDQogICAgIkZpc2NhbF95ZWFyX3BlcmlvZCIgdmFyY2hhcigyMCksDQog ICAgIkNhbGVuZGFyX2RheSIgREFURSwNCiAgICAiRmluYW5jaWFsX3llYXIiIHZhcmNoYXIoNSks DQogICAgIlBlcmlvZCIgdmFyY2hhcig4KSwNCiAgICAiQWNjb3VudCIgdmFyY2hhcigyMCksDQog ICAgLS0iR2VuZXJpY19NYXRlcmlhbCIgdmFyY2hhcig4KSwNCiAgICAiSXNzdWUiIGZsb2F0LA0K ICAgICJUcmFuc2ZlcnNfSW4iIGZsb2F0LA0KICAgICJUcmFuc2ZlcnNfT3V0IiBmbG9hdCwNCiAg ICAiUmV0dXJuIiBmbG9hdA0KKTsNCg0KLS0gVGFibGU6IHRlbXAudGVtcF9mbG93c2ZhY3QNCg0K LS0gRFJPUCBUQUJMRSBJRiBFWElTVFMgdGVtcC50ZW1wX2Zsb3dzZmFjdDsNCg0KQ1JFQVRFIFRB QkxFIElGIE5PVCBFWElTVFMgdGVtcC50ZW1wX2Zsb3dzZmFjdA0KKA0KICAgICJGaXNjYWwgeWVh ciBwZXJpb2QiIGNoYXJhY3RlciB2YXJ5aW5nKDIwKSBDT0xMQVRFIHBnX2NhdGFsb2cuImRlZmF1 bHQiLA0KICAgICJDYWxlbmRhcl9kYXkiIGRhdGUsDQogICAgIkZpbmFuY2lhbCB5ZWFyIiBjaGFy YWN0ZXIgdmFyeWluZyg1KSBDT0xMQVRFIHBnX2NhdGFsb2cuImRlZmF1bHQiLA0KICAgICJQZXJp b2QiIGNoYXJhY3RlciB2YXJ5aW5nKDgpIENPTExBVEUgcGdfY2F0YWxvZy4iZGVmYXVsdCIsDQog ICAgIkFjY291bnQiIGNoYXJhY3RlciB2YXJ5aW5nKDIwKSBDT0xMQVRFIHBnX2NhdGFsb2cuImRl ZmF1bHQiLA0KICAgICJJc3N1ZSIgZG91YmxlIHByZWNpc2lvbiwNCiAgICAiVHJhbnNmZXJzIElu IiBkb3VibGUgcHJlY2lzaW9uLA0KICAgICJUcmFuc2ZlcnMgT3V0IiBkb3VibGUgcHJlY2lzaW9u LA0KICAgICJSZXR1cm4iIGRvdWJsZSBwcmVjaXNpb24NCik7DQpJTlNFUlQgSU5UTyB0ZW1wLnRl bXBfZmxvd3NmYWN0DQpTRUxFQ1QgKiBGUk9NICgNCiAgICBTRUxFQ1QgRElTVElOQ1QNCiAgICAg ICAgRkxPV1MuIkZpc2NhbCB5ZWFyIHBlcmlvZCIsDQogICAgICAgIENhbGVuZGFyX1RhYmxlLiJs YXN0IGRheSBvZiBwZXJpb2QiLA0KICAgICAgICBDYWxlbmRhcl9UYWJsZS4iZmluYW5jaWFsIHll YXIiLA0KICAgICAgICBDYWxlbmRhcl9UYWJsZS4icGVyaW9kIiwNCiAgICAgICAgRkxPV1MuIkFj Y291bnQiLA0KICAgICAgICBJU1NVRS5pc3N1ZXMsDQogICAgICAgIFRSQU5TX0lOLiJUcmFuc2Zl cnMgSW4iLA0KICAgICAgICBUUkFOU19PVVQuIlRyYW5zZmVycyBPdXQiLA0KICAgICAgICBSRVRV Uk5TLiJyZXR1cm4iDQogICAgRlJPTQ0KICAgICAgICB0ZW1wLnRlbXBfZmxvd3MgQVMgRkxPV1MN CiAgICAtLSBCcmluZ2luZyBpbiBJc3N1ZSBmYWN0DQogICAgTEVGVCBPVVRFUiBKT0lOICgNCiAg ICAgICAgU0VMRUNUICJBY2NvdW50IiwgIkZpc2NhbCB5ZWFyIHBlcmlvZCIsIENPQUxFU0NFKFNV TSgiSXNzdWUiKSwgMCkgQVMgaXNzdWVzDQogICAgICAgIEZST00gdGVtcC50ZW1wX2Zsb3dzIEFT ICJpc3N1ZXMiDQogICAgICAgIEdST1VQIEJZICJGaXNjYWwgeWVhciBwZXJpb2QiLCAiQWNjb3Vu dCINCiAgICApIEFTIElTU1VFIE9OIEZMT1dTLiJBY2NvdW50IiA9IElTU1VFLiJBY2NvdW50IiBB TkQgRkxPV1MuIkZpc2NhbCB5ZWFyIHBlcmlvZCIgPSBJU1NVRS4iRmlzY2FsIHllYXIgcGVyaW9k Ig0KICAgIC0tIEJyaW5naW5nIGluIFRyYW5zZmVycyBJbiBmYWN0DQogICAgTEVGVCBPVVRFUiBK T0lOICgNCiAgICAgICAgU0VMRUNUICJBY2NvdW50IiwgIkZpc2NhbCB5ZWFyIHBlcmlvZCIsIENP QUxFU0NFKFNVTSgiVHJhbnNmZXJzIEluIiksIDApIEFTICJUcmFuc2ZlcnMgSW4iDQogICAgICAg IEZST00gdGVtcC50ZW1wX2Zsb3dzIEFTICJ0cmFuc19pbiINCiAgICAgICAgR1JPVVAgQlkgIkZp c2NhbCB5ZWFyIHBlcmlvZCIsICJBY2NvdW50Ig0KICAgICkgQVMgVFJBTlNfSU4gT04gRkxPV1Mu IkFjY291bnQiID0gVFJBTlNfSU4uIkFjY291bnQiIEFORCBGTE9XUy4iRmlzY2FsIHllYXIgcGVy aW9kIiA9IFRSQU5TX0lOLiJGaXNjYWwgeWVhciBwZXJpb2QiDQogICAgLS0gQnJpbmdpbmcgaW4g VHJhbnNmZXJzIG91dCBmYWN0DQogICAgTEVGVCBPVVRFUiBKT0lOICgNCiAgICAgICAgU0VMRUNU ICJBY2NvdW50IiwgIkZpc2NhbCB5ZWFyIHBlcmlvZCIsIENPQUxFU0NFKFNVTSgiVHJhbnNmZXJz IE91dCIpLCAwKSBBUyAiVHJhbnNmZXJzIE91dCINCiAgICAgICAgRlJPTSB0ZW1wLnRlbXBfZmxv d3MgQVMgInRyYW5zX291dCINCiAgICAgICAgR1JPVVAgQlkgIkZpc2NhbCB5ZWFyIHBlcmlvZCIs ICJBY2NvdW50Ig0KICAgICkgQVMgVFJBTlNfT1VUIE9OIEZMT1dTLiJBY2NvdW50IiA9IFRSQU5T X09VVC4iQWNjb3VudCIgQU5EIEZMT1dTLiJGaXNjYWwgeWVhciBwZXJpb2QiID0gVFJBTlNfT1VU LiJGaXNjYWwgeWVhciBwZXJpb2QiDQogICAgLS0gQnJpbmdpbmcgaW4gcmV0dXJuIGZhY3QNCiAg ICBMRUZUIE9VVEVSIEpPSU4gKA0KICAgICAgICBTRUxFQ1QgIkFjY291bnQiLCAiRmlzY2FsIHll YXIgcGVyaW9kIiwgQ09BTEVTQ0UoU1VNKCJSZXR1cm4iKSwgMCkgQVMgInJldHVybiINCiAgICAg ICAgRlJPTSB0ZW1wLnRlbXBfZmxvd3MgQVMgInJldHVybnMiDQogICAgICAgIEdST1VQIEJZICJG aXNjYWwgeWVhciBwZXJpb2QiLCAiQWNjb3VudCINCiAgICApIEFTIFJFVFVSTlMgT04gRkxPV1Mu IkFjY291bnQiID0gUkVUVVJOUy4iQWNjb3VudCIgQU5EIEZMT1dTLiJGaXNjYWwgeWVhciBwZXJp b2QiID0gUkVUVVJOUy4iRmlzY2FsIHllYXIgcGVyaW9kIg0KICAgIC0tIEJyaW5naW5nIGluIGxh c3QgZGF5IG9mIHJlcG9ydGluZyBEYXRlIGZvciBlYXNlIG9mIHJlcG9ydGluZyBhbmQgY2FsY3Vs YXRpb25zIG9mIHJvbGxpbmcgbnVtYmVycw0KICAgIExFRlQgT1VURVIgSk9JTiAoDQogICAgICAg IFNFTEVDVCANCiAgICAgICAgICAgIENBU1QoImRhdGUiIEFTIERBVEUpIEFTICJkYXRlIiwNCiAg ICAgICAgICAgIENPTkNBVCgnMjAnLCBTVUJTVFJJTkcoImZ5IiwgMywgMikpIEFTICJmaW5hbmNp YWwgeWVhciIsDQogICAgICAgICAgICAicGVyaW9kIiwNCiAgICAgICAgICAgIEZJUlNUX1ZBTFVF KCJkYXRlIikgT1ZFUiAoUEFSVElUSU9OIEJZICJmeSIsICJwZXJpb2QiIE9SREVSIEJZICJkYXRl IikgQVMgImZpcnN0IGRheSBvZiBwZXJpb2QiLA0KICAgICAgICAgICAgRklSU1RfVkFMVUUoImRh dGUiKSBPVkVSIChQQVJUSVRJT04gQlkgImZ5IiwgInBlcmlvZCIgT1JERVIgQlkgImRhdGUiIERF U0MpIEFTICJsYXN0IGRheSBvZiBwZXJpb2QiLA0KICAgICAgICAgICAgKERBVEVfUEFSVCgnZGF5 JywgRklSU1RfVkFMVUUoImRhdGUiKSBPVkVSIChQQVJUSVRJT04gQlkgImZ5IiwgInBlcmlvZCIg T1JERVIgQlkgImRhdGUiIERFU0MpKSAtIERBVEVfUEFSVCgnZGF5JywgRklSU1RfVkFMVUUoImRh dGUiKSBPVkVSIChQQVJUSVRJT04gQlkgImZ5IiwgInBlcmlvZCIgT1JERVIgQlkgImRhdGUiKSkp ICsgMSBBUyAibnVtYmVyIG9mIGRheXMiDQogICAgICAgIEZST00gDQogICAgICAgICAgICBwcm9k LiJJTUVUQSAtIENhbGVuZGFyIERheXMgRGF0YV9WaWV3X090aGVyIg0KICAgICkgQVMgQ2FsZW5k YXJfVGFibGUgT04gTEVGVChGTE9XUy4iRmlzY2FsIHllYXIgcGVyaW9kIiwgMykgPSBDT05DQVQo JzAnLCBSRVBMQUNFKENhbGVuZGFyX1RhYmxlLiJwZXJpb2QiLCAnUCcsICcnKSkgQU5EIFJJR0hU KEZMT1dTLiJGaXNjYWwgeWVhciBwZXJpb2QiLCA0KSA9IENhbGVuZGFyX1RhYmxlLiJmaW5hbmNp YWwgeWVhciINCikgQVMgRmxvd3NGYWN0Ow0KDQpJTlNFUlQgSU5UTyB0ZW1wLnRlbXBfRmllbGRG bG93c0ZhY3QNClNFTEVDVA0KICAgICJBY2NvdW50IiwNCiAgICAiQ2FsZW5kYXJfZGF5IiwNCiAg ICAiRmluYW5jaWFsX3llYXIiLA0KICAgICJQZXJpb2QiLA0KICAgIENBU0UNCiAgICAgICAgV0hF TiAiTWV0cmljIiBsaWtlICclUjEyTSUnIFRIRU4gJ1IxMk0nDQogICAgICAgIFdIRU4gIk1ldHJp YyIgbGlrZSAnJVI2TSUnIFRIRU4gJ1I2TScNCiAgICAgICAgV0hFTiAiTWV0cmljIiBsaWtlICcl UjNNJScgVEhFTiAnUjNNJw0KICAgICAgICBFTFNFICdQZXJpb2RpYycNCiAgICBFTkQgQVMgIlBl cmlvZCB0eXBlIiwNCiAgICAiTWV0cmljIiwNCiAgICAiRlRSJSIgQVMgIk1ldHJpYyBWYWx1ZSIN CkZST00NCigNCiAgICAtLSBDYWxjdWxhdGluZyBSb2xsaW5nIEZUUnMNCiAgICBTRUxFQ1QNCiAg ICAgICAgIkFjY291bnQiLA0KICAgICAgICAiQ2FsZW5kYXJfZGF5IiwNCiAgICAgICAgIkZpbmFu Y2lhbF95ZWFyIiwNCiAgICAgICAgIlBlcmlvZCIsDQogICAgICAgICJJc3N1ZSIsDQogICAgICAg IFNVTSgiSXNzdWUiKSBPVkVSIChQQVJUSVRJT04gQlkgIkFjY291bnQiIE9SREVSIEJZICJDYWxl bmRhcl9kYXkiIFJPV1MgQkVUV0VFTiAxMSBQUkVDRURJTkcgQU5EIENVUlJFTlQgUk9XKSBBUyAi UjEyTSBJc3N1ZXMiLA0KICAgICAgICBTVU0oIklzc3VlIikgT1ZFUiAoUEFSVElUSU9OIEJZICJB Y2NvdW50IiBPUkRFUiBCWSAiQ2FsZW5kYXJfZGF5IiBST1dTIEJFVFdFRU4gNSBQUkVDRURJTkcg QU5EIENVUlJFTlQgUk9XKSBBUyAiUjZNIElzc3VlcyIsDQogICAgICAgIFNVTSgiSXNzdWUiKSBP VkVSIChQQVJUSVRJT04gQlkgIkFjY291bnQiIE9SREVSIEJZICJDYWxlbmRhcl9kYXkiIFJPV1Mg QkVUV0VFTiAyIFBSRUNFRElORyBBTkQgQ1VSUkVOVCBST1cpIEFTICJSM00gSXNzdWVzIiwNCiAg ICAgICAgIlRyYW5zZmVyc19JbiIsDQogICAgICAgIFNVTSgiVHJhbnNmZXJzX0luIikgT1ZFUiAo UEFSVElUSU9OIEJZICJBY2NvdW50IiBPUkRFUiBCWSAiQ2FsZW5kYXJfZGF5IiBST1dTIEJFVFdF RU4gMTEgUFJFQ0VESU5HIEFORCBDVVJSRU5UIFJPVykgQVMgIlIxMk0gVHJhbnNmZXJzIEluIiwN CiAgICAgICAgU1VNKCJUcmFuc2ZlcnNfSW4iKSBPVkVSIChQQVJUSVRJT04gQlkgIkFjY291bnQi IE9SREVSIEJZICJDYWxlbmRhcl9kYXkiIFJPV1MgQkVUV0VFTiA1IFBSRUNFRElORyBBTkQgQ1VS UkVOVCBST1cpIEFTICJSNk0gVHJhbnNmZXJzIEluIiwNCiAgICAgICAgU1VNKCJUcmFuc2ZlcnNf SW4iKSBPVkVSIChQQVJUSVRJT04gQlkgIkFjY291bnQiIE9SREVSIEJZICJDYWxlbmRhcl9kYXki IFJPV1MgQkVUV0VFTiAyIFBSRUNFRElORyBBTkQgQ1VSUkVOVCBST1cpIEFTICJSM00gVHJhbnNm ZXJzIEluIiwNCiAgICAgICAgIlRyYW5zZmVyc19PdXQiLA0KICAgICAgICBTVU0oIlRyYW5zZmVy c19PdXQiKSBPVkVSIChQQVJUSVRJT04gQlkgIkFjY291bnQiIE9SREVSIEJZICJDYWxlbmRhcl9k YXkiIFJPV1MgQkVUV0VFTiAxMSBQUkVDRURJTkcgQU5EIENVUlJFTlQgUk9XKSBBUyAiUjEyTSBU cmFuc2ZlcnMgT3V0IiwNCiAgICAgICAgU1VNKCJUcmFuc2ZlcnNfT3V0IikgT1ZFUiAoUEFSVElU SU9OIEJZICJBY2NvdW50IiBPUkRFUiBCWSAiQ2FsZW5kYXJfZGF5IiBST1dTIEJFVFdFRU4gNSBQ UkVDRURJTkcgQU5EIENVUlJFTlQgUk9XKSBBUyAiUjZNIFRyYW5zZmVycyBPdXQiLA0KICAgICAg ICBTVU0oIlRyYW5zZmVyc19PdXQiKSBPVkVSIChQQVJUSVRJT04gQlkgIkFjY291bnQiIE9SREVS IEJZICJDYWxlbmRhcl9kYXkiIFJPV1MgQkVUV0VFTiAyIFBSRUNFRElORyBBTkQgQ1VSUkVOVCBS T1cpIEFTICJSM00gVHJhbnNmZXJzIE91dCIsDQogICAgICAgICJSZXR1cm4iLA0KICAgICAgICBT VU0oIlJldHVybiIpIE9WRVIgKFBBUlRJVElPTiBCWSAiQWNjb3VudCIgT1JERVIgQlkgIkNhbGVu ZGFyX2RheSIgUk9XUyBCRVRXRUVOIDExIFBSRUNFRElORyBBTkQgQ1VSUkVOVCBST1cpIEFTICJS MTJNIFJldHVybiIsDQogICAgICAgIFNVTSgiUmV0dXJuIikgT1ZFUiAoUEFSVElUSU9OIEJZICJB Y2NvdW50IiBPUkRFUiBCWSAiQ2FsZW5kYXJfZGF5IiBST1dTIEJFVFdFRU4gNSBQUkVDRURJTkcg QU5EIENVUlJFTlQgUk9XKSBBUyAiUjZNIFJldHVybiIsDQogICAgICAgIFNVTSgiUmV0dXJuIikg T1ZFUiAoUEFSVElUSU9OIEJZICJBY2NvdW50IiBPUkRFUiBCWSAiQ2FsZW5kYXJfZGF5IiBST1dT IEJFVFdFRU4gMiBQUkVDRURJTkcgQU5EIENVUlJFTlQgUk9XKSBBUyAiUjNNIFJldHVybiIsDQog ICAgICAgIC0tIFByZXZlbnQgZGl2aXNpb24gYnkgemVybw0KICAgICAgICBDQVNFDQogICAgICAg ICAgICBXSEVOICgiSXNzdWUiICsgIlRyYW5zZmVyc19JbiIpID0gMCBUSEVOIDANCiAgICAgICAg ICAgIEVMU0UgUk9VTkQoKCgiVHJhbnNmZXJzX091dCIgKyAiUmV0dXJuIikgLyAoIklzc3VlIiAr ICJUcmFuc2ZlcnNfSW4iKTo6TlVNRVJJQykgKiAxMDApOjpOVU1FUklDKDEwLDIpDQogICAgICAg IEVORCBBUyAiRlRSJSIsDQogICAgICAgIE5VTEwgQVMgIk1ldHJpYyIgLS0gUmVwbGFjZSBOVUxM IHdpdGggdGhlIGFwcHJvcHJpYXRlIGNhbGN1bGF0aW9uIG9yIGNvbHVtbiByZWZlcmVuY2UNCiAg ICBGUk9NIHRlbXAudGVtcF9mbG93c2ZhY3QNCikgQVMgRkFDVDsNCklOU0VSVCBJTlRPIHRlbXAu dGVtcF9GaWVsZEZsb3dzRmFjdF93aXRoX0NoYW5uZWxzDQpTRUxFQ1QgDQogICAgIkFjY291bnQi LCANCiAgICAiRmluYW5jaWFsIHllYXIiLCANCiAgICAiUGVyaW9kIiwNCiAgICBDQVNFIA0KICAg ICAgICBXSEVOICJNZXRyaWMiIExJS0UgJyVSMTJNJScgVEhFTiAnUjEyTScNCiAgICAgICAgV0hF TiAiTWV0cmljIiBMSUtFICclUjZNJScgVEhFTiAnUjZNJw0KICAgICAgICBXSEVOICJNZXRyaWMi IExJS0UgJyVSM00lJyBUSEVOICdSM00nDQogICAgICAgIEVMU0UgJ1BlcmlvZGljJw0KICAgIEVO RCBBUyAiUGVyaW9kIHR5cGUiLA0KICAgIENBU0UgDQogICAgICAgIFdIRU4gIk1ldHJpYyIgTElL RSAnJUZUUiUnIEFORCBST1VORCgiTWV0cmljIFZhbHVlIjo6bnVtZXJpYywgMCkgQkVUV0VFTiA5 OCBBTkQgMTAwIFRIRU4gJzk4IC0gMTAwJw0KICAgICAgICBXSEVOICJNZXRyaWMiIExJS0UgJyVG VFIlJyBBTkQgUk9VTkQoIk1ldHJpYyBWYWx1ZSI6Om51bWVyaWMsIDApIEJFVFdFRU4gOTAgQU5E IDk3IFRIRU4gJzkwIC0gOTcnDQogICAgICAgIFdIRU4gIk1ldHJpYyIgTElLRSAnJUZUUiUnIEFO RCBST1VORCgiTWV0cmljIFZhbHVlIjo6bnVtZXJpYywgMCkgQkVUV0VFTiA3MCBBTkQgODkgVEhF TiAnNzAgLSA4OScNCiAgICAgICAgV0hFTiAiTWV0cmljIiBMSUtFICclRlRSJScgQU5EIFJPVU5E KCJNZXRyaWMgVmFsdWUiOjpudW1lcmljLCAwKSBCRVRXRUVOIDUxIEFORCA2OSBUSEVOICc1MSAt IDY5Jw0KICAgICAgICBXSEVOICJNZXRyaWMiIExJS0UgJyVGVFIlJyBBTkQgUk9VTkQoIk1ldHJp YyBWYWx1ZSI6Om51bWVyaWMsIDApIEJFVFdFRU4gMCBBTkQgNTAgVEhFTiAnQmVsb3cgNTAnDQog ICAgICAgIFdIRU4gIk1ldHJpYyIgTElLRSAnJUZUUiUnIEFORCBST1VORCgiTWV0cmljIFZhbHVl Ijo6bnVtZXJpYywgMCkgPiAxMDAgVEhFTiAnQWJvdmUgMTAwJw0KICAgICAgICBXSEVOICJNZXRy aWMiIElTIE5VTEwgVEhFTiAnVW5jYXRlZ29yaXNlZCcgIC0tIEluY2x1ZGUgbnVsbCB2YWx1ZXMg aW4gdGhlICJNZXRyaWMiIGNvbHVtbg0KICAgICAgICBFTFNFICdVbmNhdGVnb3Jpc2VkJw0KICAg IEVORCBBUyAiUHJpY2luZyBjaGFubmVsIiwNCiAgICBDQVNFIA0KICAgICAgICBXSEVOIFJPVU5E KCJNZXRyaWMgVmFsdWUiOjpudW1lcmljLCAwKSBCRVRXRUVOIDk4IEFORCAxMDAgVEhFTiAnRScN CiAgICAgICAgV0hFTiBST1VORCgiTWV0cmljIFZhbHVlIjo6bnVtZXJpYywgMCkgQkVUV0VFTiA5 MCBBTkQgOTcgVEhFTiAnRCcNCiAgICAgICAgV0hFTiBST1VORCgiTWV0cmljIFZhbHVlIjo6bnVt ZXJpYywgMCkgQkVUV0VFTiA3MCBBTkQgODkgVEhFTiAnQycNCiAgICAgICAgV0hFTiBST1VORCgi TWV0cmljIFZhbHVlIjo6bnVtZXJpYywgMCkgQkVUV0VFTiA1MSBBTkQgNjkgVEhFTiAnQicNCiAg ICAgICAgV0hFTiBST1VORCgiTWV0cmljIFZhbHVlIjo6bnVtZXJpYywgMCkgQkVUV0VFTiAwIEFO RCA1MCBUSEVOICdBJw0KICAgICAgICBXSEVOIFJPVU5EKCJNZXRyaWMgVmFsdWUiOjpudW1lcmlj LCAwKSA+IDEwMCBUSEVOICdGJw0KICAgICAgICBXSEVOICJNZXRyaWMiIElTIE5VTEwgVEhFTiAn VW5jYXRlZ29yaXNlZCcgIC0tIEluY2x1ZGUgbnVsbCB2YWx1ZXMgaW4gdGhlICJNZXRyaWMiIGNv bHVtbg0KICAgICAgICBFTFNFICdVbmNhdGVnb3Jpc2VkJw0KICAgIEVORCBBUyAiUHJpY2luZyBD YXRlZ29yeSINCkZST00gdGVtcC50ZW1wX2ZpZWxkZmxvd3NmYWN0DQpXSEVSRSAiTWV0cmljIiBM SUtFICclRlRSJScgT1IgIk1ldHJpYyIgSVMgTlVMTCAgLS0gSW5jbHVkZSByb3dzIHdpdGggbnVs bCB2YWx1ZXMgaW4gdGhlICJNZXRyaWMiIGNvbHVtbg0KT1JERVIgQlkgIkNhbGVuZGFyIGRheSI7 DQpJTlNFUlQgSU5UTyB0ZW1wLnRlbXBfRmluYWxUYWJsZQ0KU0VMRUNUIERJU1RJTkNUDQogICAg Rmxvd3NGYWN0LiJBY2NvdW50IiwNCiAgICBDdXN0b21lci4iQWNjb3VudCBOYW1lIiwNCiAgICBD dXN0b21lci4iTGV2ZWwgNCBOYW1lIiBBUyAiUmVwb3J0aW5nIFBhcmVudCIsDQogICAgQ3VzdG9t ZXIuIkxldmVsIDMgTmFtZSIgQVMgIkNSTSBQYXJlbnQiLA0KICAgIEZsb3dzRmFjdC4iRmluYW5j aWFsIHllYXIiLA0KICAgIEZsb3dzRmFjdC4iUGVyaW9kIiwNCiAgICBGbG93c0ZhY3QuIlBlcmlv ZCB0eXBlIiwNCiAgICBGbG93c0ZhY3QuIk1ldHJpYyIsDQogICAgRmxvd3NGYWN0LiJNZXRyaWMg VmFsdWUiLA0KICAgIENIQU5ORUwuIlByaWNpbmcgY2hhbm5lbCIsDQogICAgQ0hBTk5FTC4iUHJp Y2luZyBDYXRlZ29yeSIsDQogICAgQ0FTRQ0KICAgICAgICBXSEVOIENIQU5ORUwuIlByaWNpbmcg Q2F0ZWdvcnkiID0gJ0UnIEFORCBGbG93c0ZhY3QuIk1ldHJpYyIgPSAnUjEyTSBGVFIlJyBUSEVO ICctJw0KICAgICAgICBXSEVOIENIQU5ORUwuIlByaWNpbmcgQ2F0ZWdvcnkiID0gJ0QnIEFORCBG bG93c0ZhY3QuIk1ldHJpYyIgPSAnUjEyTSBGVFIlJyBUSEVOICcxLjg3Jw0KICAgICAgICBXSEVO IENIQU5ORUwuIlByaWNpbmcgQ2F0ZWdvcnkiID0gJ0MnIEFORCBGbG93c0ZhY3QuIk1ldHJpYyIg PSAnUjEyTSBGVFIlJyBUSEVOICc1LjEzJw0KICAgICAgICBXSEVOIENIQU5ORUwuIlByaWNpbmcg Q2F0ZWdvcnkiID0gJ0InIEFORCBGbG93c0ZhY3QuIk1ldHJpYyIgPSAnUjEyTSBGVFIlJyBUSEVO ICcxMC40Jw0KICAgICAgICBXSEVOIENIQU5ORUwuIlByaWNpbmcgQ2F0ZWdvcnkiID0gJ0EnIEFO RCBGbG93c0ZhY3QuIk1ldHJpYyIgPSAnUjEyTSBGVFIlJyBUSEVOICcyMS43OScNCiAgICAgICAg RUxTRSAnJyAtLSBUaGlzIG1heSBjaGFuZ2UgZGVwZW5kaW5nIG9uIGZ1dHVyZSByZXBvcnRpbmcg cmVxdWlyZW1lbnRzDQogICAgRU5EIEFTICJXZWlnaHRlZCBBdmcgUmF0ZSINCkZST00NCiAgICB0 ZW1wLnRlbXBfZmllbGRmbG93c2ZhY3QgQVMgRmxvd3NGYWN0DQogICAgSU5ORVIgSk9JTiAoDQog ICAgICAgIFNFTEVDVA0KICAgICAgICAgICAgYWNjb3VudCwNCiAgICAgICAgICAgICJBY2NvdW50 IE5hbWUiLA0KICAgICAgICAgICAgIkxldmVsIDQgTmFtZSIsDQogICAgICAgICAgICAiTGV2ZWwg MyBOYW1lIg0KICAgICAgICBGUk9NDQogICAgICAgICAgICBwcm9kLiJpbWV0YSAtIGN1c3RvbWVy IGRhaWx5IGlzc3VlcyBhbmQgcmV0dXJucyBhbmFseXNpc19tb2RlbF9zYXAgYnciDQogICAgICAg IFdIRVJFDQogICAgICAgICAgICAiQ29tcGFueSBDb2RlIiBJTiAoJ0FFMTAnLCAnQUUyMCcsICdT QTEwJykNCiAgICApIEFTIEN1c3RvbWVyIE9OIEZsb3dzRmFjdC4iQWNjb3VudCIgPSBDdXN0b21l ci5hY2NvdW50DQogICAgSU5ORVIgSk9JTiB0ZW1wLnRlbXBfZmllbGRmbG93c2ZhY3Rfd2l0aF9j aGFubmVscyBBUyBDSEFOTkVMIE9OIENIQU5ORUwuIkFjY291bnQiID0gRmxvd3NGYWN0LiJBY2Nv dW50Ig0KICAgICAgICBBTkQgQ0hBTk5FTC4iRmluYW5jaWFsIHllYXIiID0gRmxvd3NGYWN0LiJG aW5hbmNpYWwgeWVhciINCiAgICAgICAgQU5EIENIQU5ORUwuIlBlcmlvZCIgPSBGbG93c0ZhY3Qu IlBlcmlvZCINCiAgICAgICAgQU5EIENIQU5ORUwuIlBlcmlvZCB0eXBlIiA9IEZsb3dzRmFjdC4i UGVyaW9kIHR5cGUiDQpXSEVSRQ0KICAgIEZsb3dzRmFjdC4iRmluYW5jaWFsIHllYXIiID0gJzIw MjQnOyAtLSBSZW1vdmUgZmlsdGVyDQoNCg0KIA0KDQo= --0000000000003848f60600ebf7b4 Content-Type: application/sql; name="Channel FTR.sql" Content-Disposition: attachment; filename="Channel FTR.sql" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_lkb88spa1 DQoNCg0KDQotLVNFTEVDVCAqIEZST00gQQ0KDQpBTFRFUiBQUk9DRURVUkUgIFtQcm9kXS5bIC0g UHJpbmNpbmdfQ2hhbm5lbF9Nb2RlbF0NCkFTDQpCRUdJTg0KDQoNCg0KDQoNCiAgICBEcm9wIHRh YmxlIGlmIGV4aXN0cyAjdGVtcF9GbG93cw0KICAgLS1DUkVBVElORyBBIFRFTVBPUkFMIFRBQkxF IFdIRVJFIFdFIEFQUExZIFRIRSBHTE9CTFkgTUVUSE9ET0xPR1kgT0YgUkVNT1ZJTkcgSU5URVJO QUwgVFJBTlNGRVJTDQoNCiAgICBDcmVhdGUgVGFibGUgI3RlbXBfRmxvd3MgKA0KICAgIFtGaXNj YWwgeWVhciBwZXJpb2RdIHZhcmNoYXIoMjApLA0KICAgIFtDb21wYW55IENvZGVdIFZhcmNoYXIo NSksDQogICAgW0FjY291bnRdIHZhcmNoYXIoMjApLA0KICAgIFtHZW5lcmljIE1hdGVyaWFsXSBW YXJjaGFyKDgpLA0KICAgIFtJc3N1ZV0gZmxvYXQsDQogICAgW1RyYW5zZmVycyBJbl0gZmxvYXQs DQogICAgW1RyYW5zZmVycyBPdXRdIGZsb2F0LA0KICAgIFtSZXR1cm5dIGZsb2F0DQogICAgKQ0K DQoNCiAgICBJbnNlcnQgaW50byAjdGVtcF9GbG93cw0KDQogICAgU0VMRUNUIERJU1RJTkNUIFtG aXNjYWwgeWVhciBwZXJpb2RdLFtDb21wYW55IENvZGVdLFtBY2NvdW50XSxbR2VuZXJpYyBNYXRl cmlhbF0sDQogICAgU1VNKENBU0UgV0hFTiBbTWV0cmljXSBJTiAoJ3MgKGluKScpIFRIRU4gY29h bGVzY2UoW01ldHJpYyBWYWx1ZV0sMCkgRU5EKSBPVkVSIChQQVJUSVRJT04gQlkgW0FjY291bnRd LCAgIFtDb21wYW55IENvZGVdLFtHZW5lcmljIE1hdGVyaWFsXSxbRmlzY2FsIHllYXIgcGVyaW9k XSxbTWV0cmljXSkgQVMgW0lzc3VlXQ0KICAgICxTVU0oQ0FTRSBXSEVOIFtNZXRyaWNdIElOICgg J3RERCAoaW4pJywndERFIChpbiknLCd0RUQgKGluKScsJ3RFRSAoaW4pJykgVEhFTiBjb2FsZXNj ZShbTWV0cmljIFZhbHVlXSwwKSBFTkQpIE9WRVIgKFBBUlRJVElPTiBCWSAgW0FjY291bnRdLFtD b21wYW55IENvZGVdLFtHZW5lcmljIE1hdGVyaWFsXSAsW0Zpc2NhbCB5ZWFyIHBlcmlvZF0sW01l dHJpY10pIEFTIFtUcmFuc2ZlcnMgSW5dDQogICAgLFNVTShDQVNFIFdIRU4gW01ldHJpY10gSU4g KCd0REQgKE91dCknLCd0REUgKE91dCknLCd0RUQgKE91dCknLCd0RUUgKE91dCknKSBUSEVOIGNv YWxlc2NlKFtNZXRyaWMgVmFsdWVdLDApIEVORCkgT1ZFUiAoUEFSVElUSU9OIEJZIFtBY2NvdW50 XSxbQ29tcGFueSBDb2RlXSxbR2VuZXJpYyBNYXRlcmlhbF0gLFtGaXNjYWwgeWVhciBwZXJpb2Rd LFtNZXRyaWNdKSBBUyBbVHJhbnNmZXJzIE91dF0NCiAgICAsU1VNKENBU0UgV0hFTiBbTWV0cmlj XSBJTiAoICdyIChvdXQpJykgVEhFTiAoW01ldHJpYyBWYWx1ZV0pIEVORCkgT1ZFUiAoUEFSVElU SU9OIEJZIFtBY2NvdW50XSxbQ29tcGFueSBDb2RlXSxbR2VuZXJpYyBNYXRlcmlhbF0sW0Zpc2Nh bCB5ZWFyIHBlcmlvZF0sW01ldHJpY10pIEFTIFtSZXR1cm5dDQoNCiAgICBGUk9NDQogICAgKA0K ICAgIFNFTEVDVCBbRmlzY2FsIHllYXIgcGVyaW9kXSxbQ29tcGFueSBDb2RlXSxbQ29udHJhIEFj Y291bnRdDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAsW0FjY291bnRdLFtH ZW5lcmljIE1hdGVyaWFsXSxbTWV0cmljXSxbTWV0cmljIFZhbHVlXSANCg0KICAgIEZST00gWw0K XS5bUHJvZF0uWyAtIEdsb2JhbCBGaWVsZCBGbG93cyAoU19HTF9LUElfUFJTRl8wMDIpIEZ1bGwg ZGF0YXNldCAoQ2xpZW50KV9UYWJsZV9TQVAgQlddDQogICAgLS0tLS0tLS0tLS0tLUFwcGx5aW5n IHRoZSBHbG9iYWwgTWV0aG9kb2xvZ3kgZm9yIFRyYW5zZmVycw0KICAgIFdIRVJFIFtBY2NvdW50 XSAhPSBbQ29udHJhIEFjY291bnRdDQogICAgQU5EIFtNZXRyaWNdIElOICggJ3RERCAoT3V0KScs J3RERSAoT3V0KScsJ3RFRSAoT3V0KScsJ3RFRCAoT3V0KScgLCd0REQgKGluKScsJ3RERSAoaW4p JywndEVFIChpbiknLCd0RUQgKGluKScpDQoNCg0KICAgIC0tLS0tQnJpbmdpbmcgaW4gb3RoZXIg ZGF0YSBleGNsdWRpbmcgdGhlIGZpbHRlcmluZyBvZiBpbnRhIGFuZCBjb250cmEgbW92ZW1lbnRz L2ludGVybmFsIGZsb3dzDQogICAgVU5JT04gQUxMDQoNCiAgICBTRUxFQ1QgIFtGaXNjYWwgeWVh ciBwZXJpb2RdLFtDb21wYW55IENvZGVdLFtDb250cmEgQWNjb3VudF0NCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICxbQWNjb3VudF0sW0dlbmVyaWMgTWF0ZXJpYWxdLFtNZXRy aWNdLFtNZXRyaWMgVmFsdWVdIA0KDQogICAgRlJPTSBbXS5bUHJvZF0uWyAtIEdsb2JhbCBGaWVs ZCBGbG93cyAoU19HTF9LUElfUFJTRl8wMDIpIEZ1bGwgZGF0YXNldCAoQ2xpZW50KV9UYWJsZV9T QVAgQlddDQogICAgV0hFUkUgW01ldHJpY10gSU4gKCdyIChvdXQpJywncyAoaW4pJywnciAoc3Rh cikgKGluKScsJ3JEUCAoaW4pJywnckVQIChpbiknLCdzUEUgKG91dCknLCdzUEQgKG91dCknDQog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAsJ2kgKHN0YXIpIG91dCAocStkREUgKHN0YXIpLW91 dCknLCd5IChCYXNlZCBvbiBQLk9yZC4pJywneCcsJ3onLCdxIChpbikgLSAocyAoaW4pKScNCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApDQoNCiAgICApIFRhYmxl XzENCg0KICAgIFdIRVJFIFtDb21wYW55IENvZGVdIElOICgnQUUxMCcsJ0FFMjAnLCdTQTEwJykN Cg0KDQoNCg0KDQoNCi0tLS0tV2UgaW5zdGVydCB0aGUgbW9kZWxsZWQgZGF0ZSB3aGljaCBleGNs dWRlZCBpbnRlcm5hbCB0cmFuc2ZlcnMgaW50byBGbG93c0ZhY3QgdGVtcCB0YWJsZSBGbG93cw0K RHJvcCB0YWJsZSBpZiBleGlzdHMgI3RlbXBfRmxvd3NGYWN0DQoNCkNyZWF0ZSBUYWJsZSAjdGVt cF9GbG93c0ZhY3QgKA0KW0Zpc2NhbCB5ZWFyIHBlcmlvZF0gdmFyY2hhcigyMCksDQpbQ2FsZW5k YXIgZGF5XSBEQVRFLA0KW0ZpbmFuY2lhbCB5ZWFyXSBWYXJjaGFyICg1KSwNCltQZXJpb2RdIFZh cmNoYXIoOCksDQpbQWNjb3VudF0gdmFyY2hhcigyMCksDQotLVtHZW5lcmljIE1hdGVyaWFsXSBW YXJjaGFyKDgpLA0KW0lzc3VlXSBmbG9hdCwNCltUcmFuc2ZlcnMgSW5dIGZsb2F0LA0KW1RyYW5z ZmVycyBPdXRdIGZsb2F0LA0KW1JldHVybl0gZmxvYXQNCikNCg0KSU5TRVJUIElOVE8gI3RlbXBf Rmxvd3NGYWN0DQoNCg0KU0VMRUNUICogRlJPTQ0KKA0KU0VMRUNUIERJU1RJTkNUICBGTE9XUy5b RmlzY2FsIHllYXIgcGVyaW9kXSxDYWxlbmRhcl9UYWJsZS5bTGFzdCBEYXkgb2YgcGVyaW9kXSxD YWxlbmRhcl9UYWJsZS5bRmluYW5jaWFsIFllYXJdLENhbGVuZGFyX1RhYmxlLltQZXJpb2RdDQos RkxPV1MuW0FjY291bnRdLElTU1VFLklzc3VlcyxUUkFOU19JTi5bVHJhbnNmZXJzIEluXSxUUkFO U19PVVQuW1RyYW5zZmVycyBPdXRdLFJFVFVSTlMuW1JldHVybl0gDQogDQogRlJPTSAgI3RlbXBf Rmxvd3MgQVMgRkxPV1MgDQoNCi0tLS0tQnJpbmdpbmcgaW4gSXNzdWUgZmFjdA0KTEVGVCBPVVRF UiBKT0lOIChTRUxFQ1QgW0FjY291bnRdLCBbRmlzY2FsIHllYXIgcGVyaW9kXSwgQ09BTEVTQ0Uo U1VNKFtJc3N1ZV0pICwwKSBBUyBbSXNzdWVzXSBGUk9NICN0ZW1wX0Zsb3dzIEFTIElzc3VlcyAg DQpHUk9VUCBCWSBbRmlzY2FsIHllYXIgcGVyaW9kXSxbQWNjb3VudF0gKSBBUyBJU1NVRSANCk9O IEZMT1dTLkFjY291bnQ9SVNTVUUuQWNjb3VudCBBTkQgRkxPV1MuW0Zpc2NhbCB5ZWFyIHBlcmlv ZF0gPUlTU1VFLltGaXNjYWwgeWVhciBwZXJpb2RdIC0tQU5EIEZMT1dTLltHZW5lcmljIE1hdGVy aWFsXT1JU1NVRS5bR2VuZXJpYyBNYXRlcmlhbF0NCg0KLS0tLS1CcmluZ2luZyBpbiBUcmFuc2Zl cnMgSW4gZmFjdA0KDQpMRUZUIE9VVEVSIEpPSU4gKFNFTEVDVCBbQWNjb3VudF0sIFtGaXNjYWwg eWVhciBwZXJpb2RdLCBDT0FMRVNDRShTVU0oW1RyYW5zZmVycyBJbl0pICwwKSBBUyBbVHJhbnNm ZXJzIEluXSBGUk9NICN0ZW1wX0Zsb3dzIEFTIFRSQU5TX0lOICAgDQpHUk9VUCBCWSBbRmlzY2Fs IHllYXIgcGVyaW9kXSxbQWNjb3VudF0gKSBBUyBUUkFOU19JTiANCk9OIEZMT1dTLkFjY291bnQ9 VFJBTlNfSU4uQWNjb3VudCBBTkQgRkxPV1MuW0Zpc2NhbCB5ZWFyIHBlcmlvZF0gPVRSQU5TX0lO LltGaXNjYWwgeWVhciBwZXJpb2RdIC0tQU5EIEZMT1dTLltHZW5lcmljIE1hdGVyaWFsXT1UUkFO U19JTi5bR2VuZXJpYyBNYXRlcmlhbF0NCg0KLS0tLS1CcmluZ2luZyBpbiBUcmFuc2ZlcnMgb3V0 IGZhY3QNCg0KTEVGVCBPVVRFUiBKT0lOIChTRUxFQ1QgW0FjY291bnRdLCBbRmlzY2FsIHllYXIg cGVyaW9kXSwgQ09BTEVTQ0UoU1VNKFtUcmFuc2ZlcnMgT3V0XSkgLDApIEFTIFtUcmFuc2ZlcnMg T3V0XSBGUk9NICN0ZW1wX0Zsb3dzIEFTIFRSQU5TX09VVCAgIA0KR1JPVVAgQlkgW0Zpc2NhbCB5 ZWFyIHBlcmlvZF0sW0FjY291bnRdICkgQVMgVFJBTlNfT1VUIA0KT04gRkxPV1MuQWNjb3VudD1U UkFOU19PVVQuQWNjb3VudCBBTkQgRkxPV1MuW0Zpc2NhbCB5ZWFyIHBlcmlvZF0gPVRSQU5TX09V VC5bRmlzY2FsIHllYXIgcGVyaW9kXSAtLUFORCBGTE9XUy5bR2VuZXJpYyBNYXRlcmlhbF09VFJB TlNfT1VULltHZW5lcmljIE1hdGVyaWFsXQ0KDQotLS0tLUJyaW5naW5nIGluIHJldHVybiBmYWN0 DQoNCkxFRlQgT1VURVIgSk9JTiAoU0VMRUNUIFtBY2NvdW50XSwgW0Zpc2NhbCB5ZWFyIHBlcmlv ZF0sIENPQUxFU0NFKFNVTShbUmV0dXJuXSkgLDApIEFTIFtSZXR1cm5dIEZST00gI3RlbXBfRmxv d3MgQVMgUkVUVVJOUyAgDQpHUk9VUCBCWSBbRmlzY2FsIHllYXIgcGVyaW9kXSxbQWNjb3VudF0g KSBBUyBSRVRVUk5TICANCk9OIEZMT1dTLkFjY291bnQ9UkVUVVJOUy5BY2NvdW50IEFORCBGTE9X Uy5bRmlzY2FsIHllYXIgcGVyaW9kXSA9UkVUVVJOUy5bRmlzY2FsIHllYXIgcGVyaW9kXSAtLUFO RCBGTE9XUy5bR2VuZXJpYyBNYXRlcmlhbF09UkVUVVJOUy5bR2VuZXJpYyBNYXRlcmlhbF0NCg0K DQotLS0tQnJpbmdpbmcgaW4gbGFzdCBkYXkgb2YgcmVwb3J0aW5nIERhdGUgZm9yIGVhc2Ugb2Yg cmVwb3J0aW5nIGFuZCBjYWxjdWxhdGlvbnMgb2Ygcm9sbGluZyBudW1iZXJzDQoNCg0KTEVGVCBP VVRFUiBKT0lOICgNClNlbGVjdCANCiAgICBDQVNUKFtEYXRlXSBBUyBEQVRFKSBBUyBbRGF0ZV0N CiAgICAsQ09OQ0FUKCcyMCcsU1VCU1RSSU5HKFtGWV0sMywyKSkgQVMgW0ZpbmFuY2lhbCBZZWFy XQ0KICAgICxbUGVyaW9kXQ0KICAgICxGSVJTVF9WQUxVRShbRGF0ZV0pIE9WRVIgKFBBUlRJVElP TiBCWSBGWSxbUGVyaW9kXSBPUkRFUiBCWSBbRGF0ZV0pIEFTIFtGaXJzdCBEYXkgb2YgcGVyaW9k XQ0KICAgICxGSVJTVF9WQUxVRShbRGF0ZV0pIE9WRVIgKFBBUlRJVElPTiBCWSBGWSxbUGVyaW9k XSBPUkRFUiBCWSBbRGF0ZV0gREVTQykgQVMgW0xhc3QgRGF5IG9mIHBlcmlvZF0NCiAgICAsREFU RURJRkYoREFZLChGSVJTVF9WQUxVRShbRGF0ZV0pIE9WRVIgKFBBUlRJVElPTiBCWSBGWSxbUGVy aW9kXSBPUkRFUiBCWSBbRGF0ZV0pKSwoRklSU1RfVkFMVUUoW0RhdGVdKSBPVkVSIChQQVJUSVRJ T04gQlkgRlksW1BlcmlvZF0gT1JERVIgQlkgW0RhdGVdIERFU0MpKSkgKzEgQVMgW051bWJlciBv ZiBkYXlzXQ0KRnJvbSBbXS5bUHJvZF0uWyAtIENhbGVuZGFyIERheXMgRGF0YV9WaWV3X090aGVy XSBBUyBDREYNCldoZXJlDQogICAgW0ZZXSBJUyBOT1QgTlVMTA0KDQopDQpBUyBDYWxlbmRhcl9U YWJsZSBPTiBMRUZUKEZMT1dTLltGaXNjYWwgeWVhciBwZXJpb2RdLDMpID1DT05DQVQoJzAnLFJF UExBQ0UoIENhbGVuZGFyX1RhYmxlLltQZXJpb2RdLCdQJywnJykpIEFORCBSSUdIVChGTE9XUy5b RmlzY2FsIHllYXIgcGVyaW9kXSw0KT0gQ2FsZW5kYXJfVGFibGUuW0ZpbmFuY2lhbCBZZWFyXQ0K DQoNCg0KKSBGbG93c0ZhY3QgOw0KDQoNCg0KLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t IENyZWF0aW5nIHRlbXAgdGFibGUgZm9yIFVucGl2b3RlZCAgcmVzdWx0cyBhcyB3ZWxsIGFzIHRo ZSBjYWxjdWxhdGlvbiBmb3IgRlRScw0KRFJPUCBUQUJMRSBJRiBFWElTVFMgI3RlbXBfRmllbGRG bG93c0ZhY3QNCkNyZWF0ZSBUYWJsZSAjdGVtcF9GaWVsZEZsb3dzRmFjdCAoDQpbQWNjb3VudF0g dmFyY2hhcigyMCksDQpbQ2FsZW5kYXIgZGF5XSBEQVRFLA0KW0ZpbmFuY2lhbCB5ZWFyXSBWYXJj aGFyICg1KSwNCltQZXJpb2RdIFZhcmNoYXIoOCksDQpbUGVyaW9kIHR5cGVdIFZhcmNoYXIoMTAp LA0KLS1bR2VuZXJpYyBNYXRlcmlhbF0gVmFyY2hhcig4KSwNCltNZXRyaWNdIFZhcmNoYXIoNTAp LA0KW01ldHJpYyBWYWx1ZV0gZmxvYXQNCikNCg0KSU5TRVJUIElOVE8gI3RlbXBfRmllbGRGbG93 c0ZhY3QNCg0KDQoNClNFTEVDVCBbQWNjb3VudF0sW0NhbGVuZGFyIGRheV0sW0ZpbmFuY2lhbCB5 ZWFyXSxbUGVyaW9kXQ0KCQkJCSxDQVNFIA0KCQkJCVdIRU4gW01ldHJpY10gbGlrZSAnJVIxMk0l JyBUSEVOICdSMTJNJw0KCQkJCVdIRU4gW01ldHJpY10gbGlrZSAnJVI2TSUnIFRIRU4gJ1I2TScN CgkJCQlXSEVOIFtNZXRyaWNdIGxpa2UgJyVSM00lJyBUSEVOICdSM00nDQoJCQkJRUxTRSAnUGVy aW9kaWMnDQoJCQkJRU5EIEFTIFtQZXJpb2QgdHlwZV0NCixbTWV0cmljXSxbTWV0cmljIFZhbHVl XSANCg0KRlJPTQ0KKA0KLS0tLUNhbGN1bGF0aW5nIFJvbGxpbmcgRlRScw0KU0VMRUNUICBbQWNj b3VudF0sIFtDYWxlbmRhciBkYXldICxbRmluYW5jaWFsIHllYXJdLFtQZXJpb2RdDQoNCg0KLFtJ c3N1ZV0NCixTVU0oW0lzc3VlXSkgT1ZFUiAoUEFSVElUSU9OIEJZIFtBY2NvdW50XSBPUkRFUiBC WSBbQ2FsZW5kYXIgZGF5XSBST1dTIDExIFBSRUNFRElORykgQVMgW1IxMk0gSXNzdWVzXQ0KLFNV TShbSXNzdWVdKSBPVkVSIChQQVJUSVRJT04gQlkgW0FjY291bnRdICBPUkRFUiBCWSBbQ2FsZW5k YXIgZGF5XSBST1dTIDUgUFJFQ0VESU5HKSBBUyBbUjZNIElzc3Vlc10NCixTVU0oW0lzc3VlXSkg T1ZFUiAoUEFSVElUSU9OIEJZIFtBY2NvdW50XSAgT1JERVIgQlkgW0NhbGVuZGFyIGRheV0gUk9X UyAyIFBSRUNFRElORykgQVMgW1IzTSBJc3N1ZXNdDQoNCixbVHJhbnNmZXJzIEluXSANCixTVU0o W1RyYW5zZmVycyBJbl0pIE9WRVIgKFBBUlRJVElPTiBCWSBbQWNjb3VudF0gIE9SREVSIEJZIFtD YWxlbmRhciBkYXldIFJPV1MgMTEgUFJFQ0VESU5HKSBBUyBbUjEyTSBUcmFuc2ZlcnMgSW5dDQos U1VNKFtUcmFuc2ZlcnMgSW5dKSBPVkVSIChQQVJUSVRJT04gQlkgW0FjY291bnRdICBPUkRFUiBC WSBbQ2FsZW5kYXIgZGF5XSBST1dTIDUgUFJFQ0VESU5HKSBBUyBbUjZNIFRyYW5zZmVycyBJbl0N CixTVU0oW1RyYW5zZmVycyBJbl0pIE9WRVIgKFBBUlRJVElPTiBCWSBbQWNjb3VudF0gIE9SREVS IEJZIFtDYWxlbmRhciBkYXldIFJPV1MgMiBQUkVDRURJTkcpIEFTIFtSM00gVHJhbnNmZXJzIElu XQ0KDQosW1RyYW5zZmVycyBPdXRdDQosU1VNKFtUcmFuc2ZlcnMgT3V0XSkgT1ZFUiAoUEFSVElU SU9OIEJZIFtBY2NvdW50XSAgT1JERVIgQlkgW0NhbGVuZGFyIGRheV0gUk9XUyAxMSBQUkVDRURJ TkcpIEFTIFtSMTJNIFRyYW5zZmVycyBPdXRdDQosU1VNKFtUcmFuc2ZlcnMgT3V0XSkgT1ZFUiAo UEFSVElUSU9OIEJZIFtBY2NvdW50XSBPUkRFUiBCWSBbQ2FsZW5kYXIgZGF5XSBST1dTIDUgUFJF Q0VESU5HKSBBUyBbUjZNIFRyYW5zZmVycyBPdXRdDQosU1VNKFtUcmFuc2ZlcnMgT3V0XSkgT1ZF UiAoUEFSVElUSU9OIEJZIFtBY2NvdW50XSAgT1JERVIgQlkgW0NhbGVuZGFyIGRheV0gUk9XUyAy IFBSRUNFRElORykgQVMgW1IzTSBUcmFuc2ZlcnMgT3V0XQ0KDQosW1JldHVybl0gDQosU1VNKFtS ZXR1cm5dKSBPVkVSIChQQVJUSVRJT04gQlkgW0FjY291bnRdICBPUkRFUiBCWSBbQ2FsZW5kYXIg ZGF5XSBST1dTIDExIFBSRUNFRElORykgQVMgW1IxMk0gUmV0dXJuXQ0KLFNVTShbUmV0dXJuXSkg T1ZFUiAoUEFSVElUSU9OIEJZIFtBY2NvdW50XSBPUkRFUiBCWSBbQ2FsZW5kYXIgZGF5XSBST1dT IDUgUFJFQ0VESU5HKSBBUyBbUjZNIFJldHVybl0NCixTVU0oW1JldHVybl0pIE9WRVIgKFBBUlRJ VElPTiBCWSBbQWNjb3VudF0gT1JERVIgQlkgW0NhbGVuZGFyIGRheV0gUk9XUyAyIFBSRUNFRElO RykgQVMgW1IzTSBSZXR1cm5dDQoNCg0KLFJPVU5EKElTTlVMTCgoW1RyYW5zZmVycyBPdXRdK1tS ZXR1cm5dKS9OVUxMSUYoKFtJc3N1ZV0rW1RyYW5zZmVycyBJbl0pLDApLDApKjEwMCwyKSBBUyBb RlRSJV0gIC0tQ2FsY3VsYXRpbmcgRlRSJQ0KDQoNCg0KDQoNCg0KLFJPVU5EKElTTlVMTCgoICAg U1VNKFtUcmFuc2ZlcnMgT3V0XSkgT1ZFUiAoUEFSVElUSU9OIEJZIFtBY2NvdW50XSBPUkRFUiBC WSBbQ2FsZW5kYXIgZGF5XSBST1dTIDExIFBSRUNFRElORykgIA0KKw0KU1VNKFtSZXR1cm5dKSBP VkVSIChQQVJUSVRJT04gQlkgW0FjY291bnRdIE9SREVSIEJZIFtDYWxlbmRhciBkYXldIFJPV1Mg MTEgUFJFQ0VESU5HKQ0KKQ0KDQovTlVMTElGKCggDQpTVU0oW0lzc3VlXSkgT1ZFUiAoUEFSVElU SU9OIEJZIFtBY2NvdW50XSBPUkRFUiBCWSBbQ2FsZW5kYXIgZGF5XSBST1dTIDExIFBSRUNFRElO RykNCisNClNVTShbVHJhbnNmZXJzIEluXSkgT1ZFUiAoUEFSVElUSU9OIEJZIFtBY2NvdW50XSBP UkRFUiBCWSBbQ2FsZW5kYXIgZGF5XSBST1dTIDExIFBSRUNFRElORykNCg0KKSwwKSwwKSoxMDAs MikgQVMgW1IxMk0gRlRSJV0gIC0tQ2FsY3VsYXRpbmcgUjEyTSBGVFIlDQoNCg0KDQosUk9VTkQo SVNOVUxMKCggICBTVU0oW1RyYW5zZmVycyBPdXRdKSBPVkVSIChQQVJUSVRJT04gQlkgW0FjY291 bnRdIE9SREVSIEJZIFtDYWxlbmRhciBkYXldIFJPV1MgMTEgUFJFQ0VESU5HKSAgDQorDQpTVU0o W1JldHVybl0pIE9WRVIgKFBBUlRJVElPTiBCWSBbQWNjb3VudF0gT1JERVIgQlkgW0NhbGVuZGFy IGRheV0gUk9XUyA1IFBSRUNFRElORykNCikNCg0KL05VTExJRigoIA0KU1VNKFtJc3N1ZV0pIE9W RVIgKFBBUlRJVElPTiBCWSBbQWNjb3VudF0gIE9SREVSIEJZIFtDYWxlbmRhciBkYXldIFJPV1Mg NSBQUkVDRURJTkcpDQorDQpTVU0oW1RyYW5zZmVycyBJbl0pIE9WRVIgKFBBUlRJVElPTiBCWSBb QWNjb3VudF0gIE9SREVSIEJZIFtDYWxlbmRhciBkYXldIFJPV1MgNSBQUkVDRURJTkcpDQoNCiks MCksMCkqMTAwLDIpIEFTIFtSNk0gRlRSJV0gIC0tQ2FsY3VsYXRpbmcgUjZNIEZUUiUNCg0KDQoN CixST1VORChJU05VTEwoKCAgIFNVTShbVHJhbnNmZXJzIE91dF0pIE9WRVIgKFBBUlRJVElPTiBC WSBbQWNjb3VudF0gIE9SREVSIEJZIFtDYWxlbmRhciBkYXldIFJPV1MgMiBQUkVDRURJTkcpICAN CisNClNVTShbUmV0dXJuXSkgT1ZFUiAoUEFSVElUSU9OIEJZIFtBY2NvdW50XSAgT1JERVIgQlkg W0NhbGVuZGFyIGRheV0gUk9XUyAyIFBSRUNFRElORykNCikNCg0KL05VTExJRigoIA0KU1VNKFtJ c3N1ZV0pIE9WRVIgKFBBUlRJVElPTiBCWSBbQWNjb3VudF0gIE9SREVSIEJZIFtDYWxlbmRhciBk YXldIFJPV1MgMiBQUkVDRURJTkcpDQorDQpTVU0oW1RyYW5zZmVycyBJbl0pIE9WRVIgKFBBUlRJ VElPTiBCWSBbQWNjb3VudF0gIE9SREVSIEJZIFtDYWxlbmRhciBkYXldIFJPV1MgMiBQUkVDRURJ TkcpDQoNCiksMCksMCkqMTAwLDIpIEFTIFtSM00gRlRSJV0gIC0tLUNhbGN1bGF0aW5nIFIzTSBG VFIlDQoNCg0KRlJPTSAjdGVtcF9GbG93c0ZhY3QpIEFTIEZBQ1QNCg0KLS1XSEVSRSBbQWNjb3Vu dF09J1NBMTEnDQpVTlBJVk9UICANCiggICAgICAgICAgICAgIFtNZXRyaWMgVmFsdWVdIEZPUiBb TWV0cmljXSBJTiAoIA0KIFtJc3N1ZV0sW1IxMk0gSXNzdWVzXSxbUjZNIElzc3Vlc10sW1IzTSBJ c3N1ZXNdLFtUcmFuc2ZlcnMgSW5dLFtSMTJNIFRyYW5zZmVycyBJbl0NCixbUjZNIFRyYW5zZmVy cyBJbl0sW1IzTSBUcmFuc2ZlcnMgSW5dLFtUcmFuc2ZlcnMgT3V0XSxbUjEyTSBUcmFuc2ZlcnMg T3V0XSxbUjZNIFRyYW5zZmVycyBPdXRdDQosW1IzTSBUcmFuc2ZlcnMgT3V0XSxbUmV0dXJuXSxb UjEyTSBSZXR1cm5dLFtSNk0gUmV0dXJuXSxbUjNNIFJldHVybl0sW0ZUUiVdLFtSMTJNIEZUUiVd LFtSNk0gRlRSJV0sW1IzTSBGVFIlXQ0KKQ0KKUFTIHVucHZ0DQotLVdIRVJFIFtBY2NvdW50XSA9 J0FFMjUnIEFORCBbTWV0cmljXSBsaWtlICclRlRSJScNCk9SREVSIEJZIFtDYWxlbmRhciBkYXld DQoNCg0KDQoNCi0tQ3JlYXRpbmcgcHJpY2luZyBCdWNrZXRzDQoNCkRST1AgVEFCTEUgSUYgRVhJ U1RTICN0ZW1wX0ZpZWxkRmxvd3NGYWN0X3dpdGhfQ2hhbm5lbHMNCkNyZWF0ZSBUYWJsZSAjdGVt cF9GaWVsZEZsb3dzRmFjdF93aXRoX0NoYW5uZWxzICgNCltBY2NvdW50XSB2YXJjaGFyKDIwKSwN CltGaW5hbmNpYWwgeWVhcl0gVmFyY2hhciAoNSksDQpbUGVyaW9kXSBWYXJjaGFyKDgpLA0KW1Bl cmlvZCB0eXBlXSBWYXJjaGFyKDEwKSwNCltQcmljaW5nIGNoYW5uZWxdIFZhcmNoYXIoMjApLA0K W1ByaWNpbmcgQ2F0ZWdvcnldIFZhcmNoYXIoMjApLA0KDQoNCikNCg0KSU5TRVJUIElOVE8gICN0 ZW1wX0ZpZWxkRmxvd3NGYWN0X3dpdGhfQ2hhbm5lbHMNCg0KU0VMRUNUIFtBY2NvdW50XSxbRmlu YW5jaWFsIHllYXJdLFtQZXJpb2RdLA0KDQpDQVNFIA0KV0hFTiBbTWV0cmljXSBsaWtlICclUjEy TSUnIFRIRU4gJ1IxMk0nDQpXSEVOIFtNZXRyaWNdIGxpa2UgJyVSNk0lJyBUSEVOICdSNk0nDQpX SEVOIFtNZXRyaWNdIGxpa2UgJyVSM00lJyBUSEVOICdSM00nDQpFTFNFICdQZXJpb2RpYycNCkVO RCBBUyBbUGVyaW9kIHR5cGVdDQoNCg0KLENBU0UgDQoNCldIRU4gW01ldHJpY10gTElLRSAnJUZU UiUnIEFORCBST1VORChbTWV0cmljIFZhbHVlXSwwKSAgQkVUV0VFTiA5OCBBTkQgMTAwIFRIRU4g Jzk4IC0gMTAwJw0KV0hFTiBbTWV0cmljXSBMSUtFICclRlRSJScgQU5EIFJPVU5EKFtNZXRyaWMg VmFsdWVdLDApICAgQkVUV0VFTiA5MCBBTkQgOTcgVEhFTiAnOTAgLSA5NycNCldIRU4gW01ldHJp Y10gTElLRSAnJUZUUiUnIEFORCBST1VORChbTWV0cmljIFZhbHVlXSwwKSAgIEJFVFdFRU4gNzAg QU5EIDg5IFRIRU4gJzcwIC0gODknDQpXSEVOIFtNZXRyaWNdIExJS0UgJyVGVFIlJyBBTkQgUk9V TkQoW01ldHJpYyBWYWx1ZV0sMCkgICBCRVRXRUVOIDUxIEFORCA2OSBUSEVOICc1MSAtIDY5Jw0K V0hFTiBbTWV0cmljXSBMSUtFICclRlRSJScgQU5EIFJPVU5EKFtNZXRyaWMgVmFsdWVdLDApICAg QkVUV0VFTiAwIEFORCA1MCBUSEVOICdCZWxvdyA1MCcNCldIRU4gW01ldHJpY10gTElLRSAnJUZU UiUnIEFORCAgUk9VTkQoW01ldHJpYyBWYWx1ZV0sMCkgID4xMDAgIFRIRU4gJ0Fib3ZlIDEwMCcN CkVMU0UgJ1VuY2F0ZWdvcmlzZWQnDQoNCkVORCBBUyBbUHJpY2luZyBjaGFubmVsXQ0KDQosQ0FT RSANCg0KV0hFTiBST1VORChbTWV0cmljIFZhbHVlXSwwKSAgIEJFVFdFRU4gOTggQU5EIDEwMCBU SEVOICdFJw0KV0hFTiBST1VORChbTWV0cmljIFZhbHVlXSwwKSAgIEJFVFdFRU4gOTAgQU5EIDk3 IFRIRU4gJ0QnDQpXSEVOIFJPVU5EKFtNZXRyaWMgVmFsdWVdLDApICAgQkVUV0VFTiA3MCBBTkQg ODkgVEhFTiAnQycNCldIRU4gUk9VTkQoW01ldHJpYyBWYWx1ZV0sMCkgICBCRVRXRUVOIDUxIEFO RCA2OSBUSEVOICdCJw0KV0hFTiBST1VORChbTWV0cmljIFZhbHVlXSwwKSAgIEJFVFdFRU4gMCBB TkQgNTAgVEhFTiAnQScNCldIRU4gUk9VTkQoW01ldHJpYyBWYWx1ZV0sMCkgID4xMDAgIFRIRU4g J0YnDQpFTFNFICdVbmNhdGVnb3Jpc2VkJw0KDQpFTkQgQVMgW1ByaWNpbmcgQ2F0ZWdvcnldDQoN Cg0KRlJPTSAgI3RlbXBfRmllbGRGbG93c0ZhY3QgDQoNCg0KV0hFUkUgW01ldHJpY10gbGlrZSAn JUZUUiUlJyAgDQpPUkRFUiBCWSBbQ2FsZW5kYXIgZGF5XQ0KDQoNCg0KDQotLS0tLS0tLS0tRmlu YWwgVGFibGUNCg0KLS1Ob3RlIHRoYXQgVGhlIHByaWNpbmcgY2hhbm5lbCBpcyBiYXNlZCBvbiB0 aGUgUjZNIFJvbGxpbmcgRlRSDQoNCkRST1AgVEFCTEUgSUYgRVhJU1RTICN0ZW1wX0ZpbmFsVGFi bGUNCkNyZWF0ZSBUYWJsZSAjdGVtcF9GaW5hbFRhYmxlICgNCltBY2NvdW50XSB2YXJjaGFyKDIw KSwNCltBY2NvdW50IE5hbWVdIHZhcmNoYXIoMTAwKSwNCltSZXBvcnRpbmcgUGFyZW50XSBWYXJj aGFyICgxMDApLA0KW0NSTSBQYXJlbnRdIFZBUkNIQVIgKDEwMCksDQpbRmluYW5jaWFsIHllYXJd IFZhcmNoYXIoOCksDQpbUGVyaW9kXSBWYXJjaGFyKDgpLA0KW1BlcmlvZCB0eXBlXSBWYXJjaGFy KDEwKSwNCltNZXRyaWNdIFZhcmNoYXIgKDUwKSwNCltNZXRyaWMgVmFsdWVdIGZsb2F0LA0KW1By aWNpbmcgY2hhbm5lbF0gVmFyY2hhcigyMCksDQpbUHJpY2luZyBDYXRlZ29yeV0gVmFyY2hhcigy MCksDQpbV2VpZ2h0ZWQgQXZnIFJhdGVdIE52YXJjaGFyKDIwKQ0KDQopDQoNCklOU0VSVCBJTlRP ICAjdGVtcF9GaW5hbFRhYmxlDQoNClNFTEVDVCBESVNUSU5DVCAgRmxvd3NGYWN0LltBY2NvdW50 XSxDdXN0b21lci5bQWNjb3VudCBOYW1lXSxDdXN0b21lci5bUmVwb3J0aW5nIFBhcmVudF0sQ3Vz dG9tZXIuW0NSTSBQYXJlbnRdLCBGbG93c0ZhY3QuW0ZpbmFuY2lhbCB5ZWFyXSwgRmxvd3NGYWN0 LltQZXJpb2RdLEZsb3dzRmFjdC5bUGVyaW9kIHR5cGVdLEZsb3dzRmFjdC5bTWV0cmljXSwgDQpG bG93c0ZhY3QuW01ldHJpYyBWYWx1ZV0sQ0hBTk5FTC5bUHJpY2luZyBjaGFubmVsXSxDSEFOTkVM LltQcmljaW5nIENhdGVnb3J5XSwNCg0KQ0FTRSANCg0KDQpXSEVOIENIQU5ORUwuW1ByaWNpbmcg Q2F0ZWdvcnldPSdFJyBBTkQgRmxvd3NGYWN0LltNZXRyaWNdPSdSMTJNIEZUUiUnIFRIRU4gJy0n DQpXSEVOIENIQU5ORUwuW1ByaWNpbmcgQ2F0ZWdvcnldPSdEJyBBTkQgRmxvd3NGYWN0LltNZXRy aWNdPSdSMTJNIEZUUiUnIFRIRU4gJzEuODcnDQpXSEVOIENIQU5ORUwuW1ByaWNpbmcgQ2F0ZWdv cnldPSdDJyBBTkQgRmxvd3NGYWN0LltNZXRyaWNdPSdSMTJNIEZUUiUnIFRIRU4gJzUuMTMnDQpX SEVOIENIQU5ORUwuW1ByaWNpbmcgQ2F0ZWdvcnldPSdCJyBBTkQgRmxvd3NGYWN0LltNZXRyaWNd PSdSMTJNIEZUUiUnIFRIRU4gJzEwLjQnDQpXSEVOIENIQU5ORUwuW1ByaWNpbmcgQ2F0ZWdvcnld PSdBJyBBTkQgRmxvd3NGYWN0LltNZXRyaWNdPSdSMTJNIEZUUiUnIFRIRU4gJzIxLjc5Jw0KRUxT RSAnJyAtLS0tLS1UaGlzIG1heSBjaGFuZ2UgZGVwZW5kaW5nIG9uIGZ1cnR1cmUgcmVwb3J0aW5n IHJlcXVpcmVtbnRzDQpFTkQgQVMgW1dlaWdodGVkIEF2ZyBSYXRlXQ0KRlJPTSAgICN0ZW1wX0Zp ZWxkRmxvd3NGYWN0IEFTIEZsb3dzRmFjdA0KDQpJTk5FUiBKT0lOIA0KDQooU0VMRUNUICogRlJP TSAjdGVtcF9GaWVsZEZsb3dzRmFjdF93aXRoX0NoYW5uZWxzICkgQVMgQ0hBTk5FTCBPTiBDSEFO TkVMLltBY2NvdW50XT1GbG93c0ZhY3QuW0FjY291bnRdIA0KQU5EIENIQU5ORUwuW0ZpbmFuY2lh bCB5ZWFyXT1GbG93c0ZhY3QuW0ZpbmFuY2lhbCB5ZWFyXSBBTkQgQ0hBTk5FTC5bUGVyaW9kXT1G bG93c0ZhY3QuW1BlcmlvZF0gQU5EIEZsb3dzRmFjdC5bUGVyaW9kIHR5cGVdPUNIQU5ORUwuW1Bl cmlvZCB0eXBlXQ0KDQpJTk5FUiBKT0lOICgNClNFTEVDVCBbQWNjb3VudF0sW0NSTSBQYXJlbnRd LFtSZXBvcnRpbmcgUGFyZW50XSxbQWNjb3VudCBOYW1lXQ0KRlJPTSBbU3RhZ10uW0lNRVRBIC0g Q3VzdG9tZXIgTWFzdGVyIERhdGEgKFpaX0dMX0NPQkpfQU1SKV9UYWJsZV9TQVAgQlddICANCldI RVJFIFtDb21wYW55IENvZGVdIElOICgnQUUxMCcsJ0FFMjAnLCdTQTEwJykgIA0KKSBBUyBDdXN0 b21lciBPTiAgIEZsb3dzRmFjdC5BY2NvdW50PUN1c3RvbWVyLkFjY291bnQNCldIRVJFICBGbG93 c0ZhY3QuW0ZpbmFuY2lhbCB5ZWFyXT0nMjAyNCcgIC0tLVJlbW92ZSBmaWx0ZXJzIGZvciBjb21w bGV0ZSBkYXRhcyBldA0KDQoNCi0tLS0tLS0tLS0tLS1Xcml0aW5nIERhdGEgaW50byB0aGUgbmV3 IFByb2QgVGFibGUNCg0KRFJPUCBUQUJMRSBJRiBFWElTVFMgW1Byb2RdLltJTUVUQV9QcmljaW5n X0NoYW5uZWxfTW9kZWxfU0FQX0JXXQ0KDQpDUkVBVEUgVEFCTEUgW1Byb2RdLltJTUVUQV9Qcmlj aW5nX0NoYW5uZWxfTW9kZWxfU0FQX0JXXQ0KKA0KW0FjY291bnRdIHZhcmNoYXIoMjApLA0KW0Fj Y291bnQgTmFtZV0gdmFyY2hhcigxMDApLA0KW0NSTSBQYXJlbnRdIFZhcmNoYXIoMTAwKSwNCltS ZXBvcnRpbmcgUGFyZW50XSBWYXJjaGFyICgxMDApLA0KW0ZpbmFuY2lhbCB5ZWFyXSBWYXJjaGFy KDgpLA0KW1BlcmlvZF0gVmFyY2hhcig4KSwNCltQZXJpb2QgdHlwZV0gVmFyY2hhcigxMCksDQpb TWV0cmljXSBWYXJjaGFyICg1MCksDQpbTWV0cmljIFZhbHVlXSBmbG9hdCwNCltQcmljaW5nIGNo YW5uZWxdIFZhcmNoYXIoMjApLA0KW1ByaWNpbmcgQ2F0ZWdvcnldIFZhcmNoYXIoMjApLA0KW1dl aWdodGVkIEF2ZyBSYXRlXSBOdmFyY2hhcigyMCkNCikNCg0KDQpJTlNFUlQgSU5UTyBbUHJvZF0u W0lNRVRBX1ByaWNpbmdfQ2hhbm5lbF9Nb2RlbF9TQVBfQlddDQpTRUxFQ1QgW0FjY291bnRdDQog ICAgICAsW0FjY291bnQgTmFtZV0NCgkgICxbQ1JNIFBhcmVudF0NCiAgICAgICxbUmVwb3J0aW5n IFBhcmVudF0NCiAgICAgICxbRmluYW5jaWFsIHllYXJdDQogICAgICAsW1BlcmlvZF0NCiAgICAg ICxbUGVyaW9kIHR5cGVdDQogICAgICAsW01ldHJpY10NCiAgICAgICxbTWV0cmljIFZhbHVlXQ0K ICAgICAgLFtQcmljaW5nIGNoYW5uZWxdDQogICAgICAsW1ByaWNpbmcgQ2F0ZWdvcnldIA0KCSAg LFtXZWlnaHRlZCBBdmcgUmF0ZV0gDQpGUk9NICN0ZW1wX0ZpbmFsVGFibGUgDQoNCg0KDQotLVNF TEVDVCAqIEZST00gW1Byb2RdLltJTUVUQV9QcmljaW5nX0NoYW5uZWxfTW9kZWxfU0FQX0JXXSBX SEVSRSAgW1BlcmlvZF09J1AxMicNCg0KLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLQ0KRU5EDQoNCg0KDQoNCg== --0000000000003848f60600ebf7b4--