From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <Alexandre.DERUMIER@groupe-cyllene.com>
Received: from firstgate.proxmox.com (firstgate.proxmox.com [212.224.123.68])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256)
 (No client certificate requested)
 by lists.proxmox.com (Postfix) with ESMTPS id 1AC1198685
 for <pve-devel@lists.proxmox.com>; Wed, 15 Nov 2023 13:10:02 +0100 (CET)
Received: from firstgate.proxmox.com (localhost [127.0.0.1])
 by firstgate.proxmox.com (Proxmox) with ESMTP id F11074F68
 for <pve-devel@lists.proxmox.com>; Wed, 15 Nov 2023 13:09:31 +0100 (CET)
Received: from mail02.cetsi.fr (mail02.cetsi.fr [91.151.64.22])
 (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits))
 (No client certificate requested)
 by firstgate.proxmox.com (Proxmox) with ESMTPS
 for <pve-devel@lists.proxmox.com>; Wed, 15 Nov 2023 13:09:30 +0100 (CET)
Received: from CYLNEXC01.cyllene.corp (unknown [10.0.250.28])
 by mail02.cetsi.fr (Postfix) with ESMTP id 2B37B40502B0
 for <pve-devel@lists.proxmox.com>; Wed, 15 Nov 2023 13:09:26 +0100 (CET)
DKIM-Filter: OpenDKIM Filter v2.11.0 mail02.cetsi.fr 2B37B40502B0
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=groupe-cyllene.com;
 s=dkim; t=1700050166;
 bh=LglepTwMsxshxsxJejxeagz0R99UTKfD84VgT7ugJLM=;
 h=From:To:Subject:Date:References:In-Reply-To:From;
 b=W0SRZEloWxYL2ko0EttGdnUTCtyixo2T8PcU8dcXKbUQGx8GMlM8Bq3sePYWT23HP
 aQ/ekYHpwy1FNMA5fglHEgCL2tk8fTrWaj8KzcLDFt3kYvl7Hwyhk8XA4B1xnD+AWb
 Xd2ucHA3PVUKGXZP0i86odyq0Ei2FzyT2FgPFBfo=
Received: from CYLNEXC01.cyllene.corp (10.0.250.28) by CYLNEXC01.cyllene.corp
 (10.0.250.28) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2507.34; Wed, 15 Nov
 2023 13:09:26 +0100
Received: from FRA01-MR2-obe.outbound.protection.outlook.com (10.0.250.254) by
 CYLNEXC01.cyllene.corp (10.0.250.28) with Microsoft SMTP Server
 (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.1.2507.34 via Frontend Transport; Wed, 15 Nov 2023 13:09:26 +0100
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=had+DXuYit+u3zpLFZO2Qj0YLK9A0BRcp/B5bhbBFlieZEnuD1e8yF7VoLJAXPcMtGKLBGPDzS+GEOytLMK6N8C6bZAX5W+nzTB3QumTxOSKdMhtfvXSET1Zt1TDIpazjmNAEeoCl0IctBLjKDtBdCljLEvolVDMXabKmquBfV+MjhVeUOFGZXMYQbTBEzajYCTFoPxhl6gRAzuoV6skbI9pDb+gsObcTM2ERDBF1yoPoCkMSIhbHbHSWCrTXbEw8p/m9XKcJ2OK9LxJQ0NunYbD6O+f5UXURxfBCY5p/omIrsbumXA1uUucf+WI6pUTwNBXMl5fTFQuyv0dSgn9MA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; 
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;
 bh=LglepTwMsxshxsxJejxeagz0R99UTKfD84VgT7ugJLM=;
 b=i4+IgTUhy72bAUJBxTJHi/4reTo1rXJbIwYKATUSNCkeSZ7fs6A3906240mqDSs5HBAxAY/U2Xo/bDgVGt6HG2nK0Bh1ZZfX9QCTVv6SA3mcG7LlK9wBmFoGfSJyex5bv79FUt8BlZcXfvATUH00xnv58GbuV/fL1ul0ltEDahhtJSmA2zT5/VEl1Xo5/AV1JSG1s0So/h+EJeOw6YimqNXUWxMB/2bt7bJjbUep32f5AgMjQJwk8hEVbgjP6d/gi7e+tXDD7AaZhphHtXfZnbCVaBSLPQBAI0DbVl38ReKjgLvIDlpsHXCUZI3PWMn3U6J1SYKP+p8CLovC+xlx3Q==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=groupe-cyllene.com; dmarc=pass action=none
 header.from=groupe-cyllene.com; dkim=pass header.d=groupe-cyllene.com;
 arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=groupecyllene.onmicrosoft.com; s=selector2-groupecyllene-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=LglepTwMsxshxsxJejxeagz0R99UTKfD84VgT7ugJLM=;
 b=1OXJTLOzBk+N5zfHEuXVokI7+pvyulYH1sTt7dLVZ6SqME8qHWLKV9RmOCHUesgYimCLRwIDJMBF+vr3+S7mWvd6jdeOsS4ZHFBNHy51z2+FbMEu6sXZxs+L5jy7FVTfa14J5qKkcwk6USC+rj3LiApp2klF28qYvTE0EAJ0xkQ=
Received: from MR1P264MB2481.FRAP264.PROD.OUTLOOK.COM (2603:10a6:501:32::17)
 by PAZP264MB2335.FRAP264.PROD.OUTLOOK.COM (2603:10a6:102:1f1::16) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7002.19; Wed, 15 Nov
 2023 12:09:25 +0000
Received: from MR1P264MB2481.FRAP264.PROD.OUTLOOK.COM
 ([fe80::ea83:662a:77c9:2b2e]) by MR1P264MB2481.FRAP264.PROD.OUTLOOK.COM
 ([fe80::ea83:662a:77c9:2b2e%4]) with mapi id 15.20.7002.019; Wed, 15 Nov 2023
 12:09:25 +0000
From: "DERUMIER, Alexandre" <alexandre.derumier@groupe-cyllene.com>
To: "pve-devel@lists.proxmox.com" <pve-devel@lists.proxmox.com>
Thread-Topic: [pve-devel] [WIP v3 pve-manager 18/22] sdn: dhcp: add view for
 DHCP mappings
Thread-Index: AQHaFyV1CON7BkVba0Gwkox+y6XEILB7StiA
Date: Wed, 15 Nov 2023 12:09:24 +0000
Message-ID: <a1666fc47d2d37e6412cff4050c7b9f3573a82a0.camel@groupe-cyllene.com>
References: <20231114180620.2635449-1-s.hanreich@proxmox.com>
 <20231114180620.2635449-19-s.hanreich@proxmox.com>
In-Reply-To: <20231114180620.2635449-19-s.hanreich@proxmox.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
user-agent: Evolution 3.50.0-1 
authentication-results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=groupe-cyllene.com;
x-ms-publictraffictype: Email
x-ms-traffictypediagnostic: MR1P264MB2481:EE_|PAZP264MB2335:EE_
x-ms-office365-filtering-correlation-id: 5ebba7e3-a112-487c-213f-08dbe5d3b589
x-ms-exchange-senderadcheck: 1
x-ms-exchange-antispam-relay: 0
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: GpGm3KgtCTXJ/Bc7PoJWrkJv+PMNcyG9o6+809ZCDvFZ+1wTmXOmMHgcuIqGQHYy4BWwT8xnYOYqvMzVgXMrOpNrsEvcibrMcbRne1YwYcOH3UxMrIBE09tXFdZ9vut/t5Ww8fq7ftnnk2f01PCVQPb3axSY0WOUwQjdmeJd77bBvYHbbBqhyZne7wyVU7yDyDRLQw5LrPyZbMIdDHFvQs6XLfuhbuogGnar5yejzhQbVZ7G9JuOKOXf7eD1BfY7nW9KIeYTwwK+J6nu7lTsU+nVvXp/ihlCIRqj+iXXEY57Epi25/8RVm5ZV3oaxFyaRKhRLF7UIWxELsGBYzy3jx1xAvFLsTH/KM3o1f9m/800sATyof4LXDSsoCtmpaU6VGdobdTpErniYDvc9OxDtDDep7Xjxh/KZyp1ZUoDl/zk5WH1fkE8VEPXbLDjNO4VJdXAM1WAA3tC4lhZguBXiJ+MHN8//cnsh0aiTruZxf7qf3OeiSjbH2RCx36qarbnlwsWCEwa5MIK9GSprDQqjh65Q/54oBwf84Lg8Bhlsy4qyMYI7q8bUOi5HDFeiOJ6fpqIi/oBv+A/BKyZLOVPcb6SO9IAxwQhDImTFgL6XwEjqYy4H2wPwU853sps/SVmiFcSYq47E11ikm9OMjXcUNWb5MDx5UG8VnBbdvIbhVw=
x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:;
 IPV:NLI; SFV:NSPM; H:MR1P264MB2481.FRAP264.PROD.OUTLOOK.COM; PTR:; CAT:NONE;
 SFS:(13230031)(396003)(39850400004)(376002)(346002)(366004)(136003)(230173577357003)(230922051799003)(230273577357003)(1800799009)(64100799003)(186009)(451199024)(38070700009)(41300700001)(6916009)(316002)(66476007)(66556008)(66946007)(64756008)(66446008)(36756003)(83380400001)(66574015)(38100700002)(122000001)(6512007)(2616005)(5660300002)(478600001)(6486002)(2906002)(19627235002)(76116006)(91956017)(71200400001)(86362001)(6506007)(8936002)(8676002);
 DIR:OUT; SFP:1101; 
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0: =?utf-8?B?MEprdGRlT09IYWEwU2ZiaEdrQ0RMMXc5Smd4WmJQMGRmSUVJYi9rM2hMdUdu?=
 =?utf-8?B?R1gwSmtmbjhlYlRRZkJXV2w0aXJheWpnb2NmU1lrb1VTN1ZZeVQ5aFNCTytU?=
 =?utf-8?B?aUZUc3FYVGRkaGY4akpkUjl2b2VnSWJ0WUNRT2tYRkN0Sk9KMlBRWFFiWHd2?=
 =?utf-8?B?R1ZNdU9VM3lLOTM2YnpJaVFzeEJUdlExU25PYitYZUdqWDJrKzV2dk1WTkl0?=
 =?utf-8?B?WTBrL2JSb0RucjZBdFlMamNKZFFsRjMzaDJoNVdSSVYzVnVESi9WUTJaUmps?=
 =?utf-8?B?T3J1MTU3M09jNEZVbXRtQzRYMnUyd04xekpVUEJjWXU2MWlWM1hLQWZMR3Vj?=
 =?utf-8?B?N0djM2Vhb0hMZ0xnTGJUNDNPcWRrMG15T3VPaDFPQUYyWkJEWmRwdU1zdi82?=
 =?utf-8?B?SGs2Mm5pYjlWMWtoWjhkOTJvOWZZWk9oT1FpR3h3Wm9BK3JhcnZ4RzBxSDFR?=
 =?utf-8?B?Uy93MUdsZVVnOFF2bkQyQ05taGp4SmtFWU5mb3JOQkU1WFpBSXhtbVk5OWZS?=
 =?utf-8?B?RnFGOWZWQjlITWp3VENiU0pzeUF5TjdmemdHOVZQeTVsOEg2eTFhODVZd1ZT?=
 =?utf-8?B?TXcyUCtSS0k4aGlOQWVncFJKZWN2b04zYysrTW9VeG0wNlZtL2d1N0RtNFNT?=
 =?utf-8?B?YUNxZDBzSXlOeUhQejBBUVFoS0EydWwzV0ZRZkh0T3NWTkFMaTFqTUViQ1Uv?=
 =?utf-8?B?VmFHbXFFcld2Y25NdTY3NXhzS1VldkpNUlVrbWdoTjV2ZldvRkczVnhOY2Rs?=
 =?utf-8?B?d05zYlVjQlF4aXdXMTlydU5KYm9wclF6RkNnRkJtNzlsSHVvenV0RXdYamZz?=
 =?utf-8?B?TnM2ZGtBRDA5cnpnbnFQNXh5S1dSTXhidFg1L0pYS3dVREdMRW9TWDlSM2Ew?=
 =?utf-8?B?YXRFT1hmcjBEQXhRcTArMkJMT1JJTzZaanM5U1RzNWNjb1dIZEdnaWFrSXJ0?=
 =?utf-8?B?QWtEVXNXU1daT01iNnVBNlNZLzNsVk9aN0FSNmVaYWtzN2tnL0dMcEl1QzR0?=
 =?utf-8?B?ZEdnNFdvRjNtTy9yN202NXRDNHJIelZSZjRCNWFOLy9mY0ZGazI0bGNabGZM?=
 =?utf-8?B?RkpQWDBZNWZidHc5V3dzczVxWXJhdmhYVlFiRTh4WndTNWo1ZWpjVkV1cVdp?=
 =?utf-8?B?cWRnY3pYVGhTemVvTUtEeXRuMlhXdkl4cGg0L3BmZk1XZDBHMFZzdzd0NStL?=
 =?utf-8?B?MFJpNjZiTm5kdDkyM0UrdTR6QXI2cU9RV2IvMU5mdnNXaFgraFRKRnNQL1Bv?=
 =?utf-8?B?a2Z6bWZvU1RsVlgwK29DODIrdnhqaTlqZVhvYlhObGFScmFrNk5BOElmbG1z?=
 =?utf-8?B?TmJPK0lrR21mN29iL3RlR21SSmtCOEVVcXNFOVphK3d0ZUhXaFNMNWVEV2dG?=
 =?utf-8?B?cnhnQ0xjTVlieGt4SElsMVZENUJweGtVc1BWUHM5cFpnQXlrSnRpVVU0VzJu?=
 =?utf-8?B?RkYvS1Z3MHg1NTF0NkRiTzZUOThYZ0JpVnJHTi84WkU4TjFFZ01Oc2N6bXRn?=
 =?utf-8?B?bnJZMFFtcUZCaTFpbzJZUWM3L0Z1YndsenlVaytQb0thQ1RRTUt1VEpHdTk5?=
 =?utf-8?B?ellHZkJOK2k4OWtQVk5PelN3UmdnMnF3dkx0QittYkE1aUV6ZCtXZklPZGl4?=
 =?utf-8?B?SWZSOVRIMFVKb2F0WmpKcVRsYlBlM3NxSkVGMHFiRXBWcEdkcGdBTTRUWjlH?=
 =?utf-8?B?b21qNDZaTlR2R01OeFY2NFlhUnNoam5RQjY1NFJvMFJPa0NMNFdtSmFZQmkr?=
 =?utf-8?B?VStpVFdaTm5CTldFM0NFRUdLZmJvOWlQMTRlV0RsTFp6d2VtRU9GOXg1c2lw?=
 =?utf-8?B?V3Y5eFRqdW4xQVl6TFI4UEVYK3dzQ0FYK3h4SmtyUnBJNXBqOWI2YWo0Y2ZU?=
 =?utf-8?B?K3J2VUlVcjkyY1hzNVZMM3lEdGkySC9hMzZiSHd1OWdYcU1USlNHVXN2N3ZZ?=
 =?utf-8?B?Y2oyTzNScGNkMGQrV0ozOWJWSU5QNFVQa1FmcDAzakVhUm1JUURDRWdOVWl0?=
 =?utf-8?B?T1REQlZydmRDb2xLbnVra3UwVk9GczMyQnNydVR2QmZhcjZWOHBWN2h2THpX?=
 =?utf-8?B?Z0RIbG5wMzFtVXVHZXBzbTBSQ2FMWXVNbzVjdnVTckRoSTI3R2ZOSWtWdDh5?=
 =?utf-8?B?ai9UUlZHeW9XSHYrMFpmaU92MFZHak1LbnVrR2RTdXRoMVRLOTlQTVZsK29O?=
 =?utf-8?Q?/oLj7nNwDcAvhg6IvcEdzs533utE6t3qep5EMeeKouSM?=
Content-Type: text/plain; charset="utf-8"
Content-ID: <F6FBCAD23998394F9498B0314A478700@FRAP264.PROD.OUTLOOK.COM>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-AuthSource: MR1P264MB2481.FRAP264.PROD.OUTLOOK.COM
X-MS-Exchange-CrossTenant-Network-Message-Id: 5ebba7e3-a112-487c-213f-08dbe5d3b589
X-MS-Exchange-CrossTenant-originalarrivaltime: 15 Nov 2023 12:09:24.9317 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: ee11ccf7-112c-4284-848b-f229745e715b
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-CrossTenant-userprincipalname: 4VJy4b8ffkvbm8rDeVc66V4cQgQfDRbfBlXYLIjmgGxbhbr8ilN1OCzyWJXcY6Jc5FMnBzw9HggFI4nc7qfdsLooOMqV4ZNcyM7cN8SLNAWi/FYNGIQ2oN88piHIrnmK
X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAZP264MB2335
X-OriginatorOrg: groupe-cyllene.com
X-SPAM-LEVEL: Spam detection results:  0
 ARC_SIGNED              0.001 Message has a ARC signature
 ARC_VALID               0.001 Message has a valid ARC signature
 AWL -0.050 Adjusted score from AWL reputation of From: address
 BAYES_00                 -1.9 Bayes spam probability is 0 to 1%
 DKIM_SIGNED               0.1 Message has a DKIM or DK signature,
 not necessarily valid
 DKIM_VALID -0.1 Message has at least one valid DKIM or DK signature
 DKIM_VALID_AU -0.1 Message has a valid DKIM or DK signature from author's
 domain
 DKIM_VALID_EF -0.1 Message has a valid DKIM or DK signature from envelope-from
 domain DMARC_MISSING             0.1 Missing DMARC policy
 PROLO_LEO1                0.1 Meta Catches all Leo drug variations so far
 SPF_HELO_NONE           0.001 SPF: HELO does not publish an SPF Record
 SPF_PASS               -0.001 SPF: sender matches SPF record
 T_SCC_BODY_TEXT_LINE    -0.01 -
 URIBL_BLOCKED 0.001 ADMINISTRATOR NOTICE: The query to URIBL was blocked. See
 http://wiki.apache.org/spamassassin/DnsBlocklists#dnsbl-block for more
 information. [groupecyllene.onmicrosoft.com, groupe-cyllene.com, element.zone]
Subject: Re: [pve-devel] [WIP v3 pve-manager 18/22] sdn: dhcp: add view for
 DHCP mappings
X-BeenThere: pve-devel@lists.proxmox.com
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: Proxmox VE development discussion <pve-devel.lists.proxmox.com>
List-Unsubscribe: <https://lists.proxmox.com/cgi-bin/mailman/options/pve-devel>, 
 <mailto:pve-devel-request@lists.proxmox.com?subject=unsubscribe>
List-Archive: <http://lists.proxmox.com/pipermail/pve-devel/>
List-Post: <mailto:pve-devel@lists.proxmox.com>
List-Help: <mailto:pve-devel-request@lists.proxmox.com?subject=help>
List-Subscribe: <https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel>, 
 <mailto:pve-devel-request@lists.proxmox.com?subject=subscribe>
X-List-Received-Date: Wed, 15 Nov 2023 12:10:02 -0000

SSB0aGluayB0aGF0IHRoaXMgcGFuZWwgY291bGQgYmUgbmFtZWQgIklwYW0iIGluc3RlYWQgICJE
aGNwIE1hcHBpbmdzIg0KDQpBcyBpdCdzIGRvbid0IG1hbmFnZSBkaGNwIG1hcHBpbmcgb2YgZGhj
cCBzZXJ2ZXIsIGJ1dCBpcHMgaW4gaXBhbQ0KZGF0YWJhc2UNCg0KDQotLS0tLS0tLSBNZXNzYWdl
IGluaXRpYWwgLS0tLS0tLS0NCkRlOiBTdGVmYW4gSGFucmVpY2ggPHMuaGFucmVpY2hAcHJveG1v
eC5jb20+DQpSw6lwb25kcmUgw6A6IFByb3htb3ggVkUgZGV2ZWxvcG1lbnQgZGlzY3Vzc2lvbiA8
cHZlLQ0KZGV2ZWxAbGlzdHMucHJveG1veC5jb20+DQrDgDogcHZlLWRldmVsQGxpc3RzLnByb3ht
b3guY29tDQpPYmpldDogW3B2ZS1kZXZlbF0gW1dJUCB2MyBwdmUtbWFuYWdlciAxOC8yMl0gc2Ru
OiBkaGNwOiBhZGQgdmlldyBmb3INCkRIQ1AgbWFwcGluZ3MNCkRhdGU6IDE0LzExLzIwMjMgMTk6
MDY6MTYNCg0KU2lnbmVkLW9mZi1ieTogU3RlZmFuIEhhbnJlaWNoIDxzLmhhbnJlaWNoQHByb3ht
b3guY29tPg0KLS0tDQrCoHd3dy9jc3MvZXh0Ni1wdmUuY3NzwqDCoMKgwqDCoMKgwqDCoMKgwqDC
oCB8wqAgMTAgKy0NCsKgd3d3L21hbmFnZXI2L01ha2VmaWxlwqDCoMKgwqDCoMKgwqDCoMKgwqAg
fMKgwqAgMiArDQrCoHd3dy9tYW5hZ2VyNi9kYy9Db25maWcuanPCoMKgwqDCoMKgwqAgfMKgIDEy
ICstDQrCoHd3dy9tYW5hZ2VyNi9zZG4vTWFwcGluZ0VkaXQuanMgfMKgIDY1ICsrKysrKysrKysN
CsKgd3d3L21hbmFnZXI2L3RyZWUvRGhjcFRyZWUuanPCoMKgIHwgMjE1ICsrKysrKysrKysrKysr
KysrKysrKysrKysrKysrKysrDQrCoDUgZmlsZXMgY2hhbmdlZCwgMjk2IGluc2VydGlvbnMoKyks
IDggZGVsZXRpb25zKC0pDQrCoGNyZWF0ZSBtb2RlIDEwMDY0NCB3d3cvbWFuYWdlcjYvc2RuL01h
cHBpbmdFZGl0LmpzDQrCoGNyZWF0ZSBtb2RlIDEwMDY0NCB3d3cvbWFuYWdlcjYvdHJlZS9EaGNw
VHJlZS5qcw0KDQpkaWZmIC0tZ2l0IGEvd3d3L2Nzcy9leHQ2LXB2ZS5jc3MgYi93d3cvY3NzL2V4
dDYtcHZlLmNzcw0KaW5kZXggZTE4YjE3M2Y1Li5lNWU2MTY4MzIgMTAwNjQ0DQotLS0gYS93d3cv
Y3NzL2V4dDYtcHZlLmNzcw0KKysrIGIvd3d3L2Nzcy9leHQ2LXB2ZS5jc3MNCkBAIC01MTAsMjMg
KzUxMCwyMSBAQCBkaXYucmlnaHQtYWxpZ25lZCB7DQrCoMKgwqDCoCBjb250ZW50OiAnICc7DQrC
oH0NCsKgDQotLmZhLXNkbjpiZWZvcmUgew0KKy54LWZhLXNkbi10cmVlbGlzdDpiZWZvcmUgew0K
wqDCoMKgwqAgd2lkdGg6IDE0cHg7DQrCoMKgwqDCoCBoZWlnaHQ6IDE0cHg7DQrCoMKgwqDCoCBw
b3NpdGlvbjogYWJzb2x1dGU7DQrCoMKgwqDCoCBsZWZ0OiAxcHg7DQrCoMKgwqDCoCB0b3A6IDRw
eDsNCit9DQorDQorLmZhLXNkbjpiZWZvcmUgew0KwqDCoMKgwqAgYmFja2dyb3VuZC1pbWFnZTp1
cmwoLi4vaW1hZ2VzL2ljb24tc2RuLnN2Zyk7DQrCoMKgwqDCoCBiYWNrZ3JvdW5kLXNpemU6IDE0
cHggMTRweDsNCsKgwqDCoMKgIGNvbnRlbnQ6ICcgJzsNCsKgfQ0KwqANCsKgLmZhLW5ldHdvcmst
d2lyZWQ6YmVmb3JlIHsNCi3CoMKgwqAgd2lkdGg6IDE0cHg7DQotwqDCoMKgIGhlaWdodDogMTRw
eDsNCi3CoMKgwqAgcG9zaXRpb246IGFic29sdXRlOw0KLcKgwqDCoCBsZWZ0OiAxcHg7DQotwqDC
oMKgIHRvcDogNHB4Ow0KwqDCoMKgwqAgYmFja2dyb3VuZC1pbWFnZTp1cmwoLi4vaW1hZ2VzL2lj
b24tZmEtbmV0d29yay13aXJlZC5zdmcpOw0KwqDCoMKgwqAgYmFja2dyb3VuZC1zaXplOiAxNHB4
IDE0cHg7DQrCoMKgwqDCoCBjb250ZW50OiAnICc7DQpkaWZmIC0tZ2l0IGEvd3d3L21hbmFnZXI2
L01ha2VmaWxlIGIvd3d3L21hbmFnZXI2L01ha2VmaWxlDQppbmRleCBkY2NkMmJhMWMuLmQyMjZj
OGZhYSAxMDA2NDQNCi0tLSBhL3d3dy9tYW5hZ2VyNi9NYWtlZmlsZQ0KKysrIGIvd3d3L21hbmFn
ZXI2L01ha2VmaWxlDQpAQCAtMTA4LDYgKzEwOCw3IEBADQpKU1NSQz3CoAkJCQkJCQlcDQrCoAl0
cmVlL1Jlc291cmNlVHJlZS5qcwkJCQlcDQrCoAl0cmVlL1NuYXBzaG90VHJlZS5qcwkJCQlcDQrC
oAl0cmVlL1Jlc291cmNlTWFwVHJlZS5qcwkJCQlcDQorCXRyZWUvRGhjcFRyZWUuanMJCQkJXA0K
wqAJd2luZG93L0JhY2t1cC5qcwkJCQlcDQrCoAl3aW5kb3cvQmFja3VwQ29uZmlnLmpzCQkJCVwN
CsKgCXdpbmRvdy9CdWxrQWN0aW9uLmpzCQkJCVwNCkBAIC0yNzQsNiArMjc1LDcgQEANCkpTU1JD
PcKgCQkJCQkJCVwNCsKgCXNkbi9ab25lQ29udGVudFZpZXcuanMJCQkJXA0KwqAJc2RuL1pvbmVD
b250ZW50UGFuZWwuanMJCQkJXA0KwqAJc2RuL1pvbmVWaWV3LmpzCQkJCQlcDQorCXNkbi9NYXBw
aW5nRWRpdC5qcwkJCQlcDQrCoAlzZG4vT3B0aW9uc1BhbmVsLmpzCQkJCVwNCsKgCXNkbi9jb250
cm9sbGVycy9CYXNlLmpzCQkJCVwNCsKgCXNkbi9jb250cm9sbGVycy9FdnBuRWRpdC5qcwkJCVwN
CmRpZmYgLS1naXQgYS93d3cvbWFuYWdlcjYvZGMvQ29uZmlnLmpzIGIvd3d3L21hbmFnZXI2L2Rj
L0NvbmZpZy5qcw0KaW5kZXggN2QwMWRhNWZiLi4wZTM5NDhlZjQgMTAwNjQ0DQotLS0gYS93d3cv
bWFuYWdlcjYvZGMvQ29uZmlnLmpzDQorKysgYi93d3cvbWFuYWdlcjYvZGMvQ29uZmlnLmpzDQpA
QCAtMTk1LDcgKzE5NSw3IEBAIEV4dC5kZWZpbmUoJ1BWRS5kYy5Db25maWcnLCB7DQrCoAkJwqDC
oMKgIGdyb3VwczogWydzZG4nXSwNCsKgCQnCoMKgwqAgdGl0bGU6IGdldHRleHQoJ1pvbmVzJyks
DQrCoAkJwqDCoMKgIGhpZGRlbjogdHJ1ZSwNCi0JCcKgwqDCoCBpY29uQ2xzOiAnZmEgZmEtdGgn
LA0KKwkJwqDCoMKgIGljb25DbHM6ICdmYSBmYS10aCB4LWZhLXNkbi10cmVlbGlzdCcsDQrCoAkJ
wqDCoMKgIGl0ZW1JZDogJ3NkbnpvbmUnLA0KwqAJCX0sDQrCoAkJew0KQEAgLTIwMyw3ICsyMDMs
NyBAQCBFeHQuZGVmaW5lKCdQVkUuZGMuQ29uZmlnJywgew0KwqAJCcKgwqDCoCBncm91cHM6IFsn
c2RuJ10sDQrCoAkJwqDCoMKgIHRpdGxlOiAnVk5ldHMnLA0KwqAJCcKgwqDCoCBoaWRkZW46IHRy
dWUsDQotCQnCoMKgwqAgaWNvbkNsczogJ2ZhIGZhLW5ldHdvcmstd2lyZWQnLA0KKwkJwqDCoMKg
IGljb25DbHM6ICdmYSBmYS1uZXR3b3JrLXdpcmVkIHgtZmEtc2RuLXRyZWVsaXN0JywNCsKgCQnC
oMKgwqAgaXRlbUlkOiAnc2Rudm5ldCcsDQrCoAkJfSwNCsKgCQl7DQpAQCAtMjEzLDYgKzIxMywx
NCBAQCBFeHQuZGVmaW5lKCdQVkUuZGMuQ29uZmlnJywgew0KwqAJCcKgwqDCoCBoaWRkZW46IHRy
dWUsDQrCoAkJwqDCoMKgIGljb25DbHM6ICdmYSBmYS1nZWFyJywNCsKgCQnCoMKgwqAgaXRlbUlk
OiAnc2Rub3B0aW9ucycsDQorCQl9LA0KKwkJew0KKwkJwqDCoMKgIHh0eXBlOiAncHZlRGhjcFRy
ZWUnLA0KKwkJwqDCoMKgIGdyb3VwczogWydzZG4nXSwNCisJCcKgwqDCoCB0aXRsZTogJ0RoY3Ag
TWFwcGluZ3MnLA0KKwkJwqDCoMKgIGhpZGRlbjogdHJ1ZSwNCisJCcKgwqDCoCBpY29uQ2xzOiAn
ZmEgZmEtZ2VhcicsDQorCQnCoMKgwqAgaXRlbUlkOiAnc2RubWFwcGluZ3MnLA0KwqAJCX0pOw0K
wqAJwqDCoMKgIH0NCsKgDQpkaWZmIC0tZ2l0IGEvd3d3L21hbmFnZXI2L3Nkbi9NYXBwaW5nRWRp
dC5qcw0KYi93d3cvbWFuYWdlcjYvc2RuL01hcHBpbmdFZGl0LmpzDQpuZXcgZmlsZSBtb2RlIDEw
MDY0NA0KaW5kZXggMDAwMDAwMDAwLi41MzNmYzYyNDkNCi0tLSAvZGV2L251bGwNCisrKyBiL3d3
dy9tYW5hZ2VyNi9zZG4vTWFwcGluZ0VkaXQuanMNCkBAIC0wLDAgKzEsNjUgQEANCitFeHQuZGVm
aW5lKCdQVkUuc2RuLkRoY3BNYXBwaW5nSW5wdXRQYW5lbCcsIHsNCivCoMKgwqAgZXh0ZW5kOiAn
UHJveG1veC5wYW5lbC5JbnB1dFBhbmVsJywNCivCoMKgwqAgbWl4aW5zOiBbJ1Byb3htb3guTWl4
aW4uQ0JpbmQnXSwNCisNCivCoMKgwqAgaXNDcmVhdGU6IGZhbHNlLA0KKw0KK8KgwqDCoCBpdGVt
czogWw0KKwl7DQorCcKgwqDCoCB4dHlwZTogJ3BteERpc3BsYXlFZGl0RmllbGQnLA0KKwnCoMKg
wqAgbmFtZTogJ3ZtaWQnLA0KKwnCoMKgwqAgZmllbGRMYWJlbDogZ2V0dGV4dCgnVk1JRCcpLA0K
KwnCoMKgwqAgYWxsb3dCbGFuazogZmFsc2UsDQorCcKgwqDCoCBlZGl0YWJsZTogZmFsc2UsDQor
CX0sDQorCXsNCisJwqDCoMKgIHh0eXBlOiAncG14RGlzcGxheUVkaXRGaWVsZCcsDQorCcKgwqDC
oCBuYW1lOiAnbWFjJywNCisJwqDCoMKgIGZpZWxkTGFiZWw6IGdldHRleHQoJ01BQycpLA0KKwnC
oMKgwqAgYWxsb3dCbGFuazogZmFsc2UsDQorCcKgwqDCoCBjYmluZDogew0KKwkJZWRpdGFibGU6
ICd7aXNDcmVhdGV9JywNCisJwqDCoMKgIH0sDQorCX0sDQorCXsNCisJwqDCoMKgIHh0eXBlOiAn
cHJveG1veHRleHRmaWVsZCcsDQorCcKgwqDCoCBuYW1lOiAnaXAnLA0KKwnCoMKgwqAgZmllbGRM
YWJlbDogZ2V0dGV4dCgnSVAnKSwNCisJwqDCoMKgIGFsbG93Qmxhbms6IGZhbHNlLA0KKwl9LA0K
K8KgwqDCoCBdLA0KK30pOw0KKw0KK0V4dC5kZWZpbmUoJ1BWRS5zZG4uTWFwcGluZ0VkaXQnLCB7
DQorwqDCoMKgIGV4dGVuZDogJ1Byb3htb3gud2luZG93LkVkaXQnLA0KKw0KK8KgwqDCoCBzdWJq
ZWN0OiBnZXR0ZXh0KCdESENQIE1hcHBpbmcnKSwNCivCoMKgwqAgd2lkdGg6IDM1MCwNCisNCivC
oMKgwqAgaXNDcmVhdGU6IGZhbHNlLA0KK8KgwqDCoCBtYXBwaW5nOiB7fSwNCisNCivCoMKgwqAg
c3VibWl0VXJsOiBmdW5jdGlvbih1cmwsIHZhbHVlcykgew0KKwlyZXR1cm4gYCR7dXJsfS8ke3Zh
bHVlcy52bmV0fS8ke3ZhbHVlcy5tYWN9YDsNCivCoMKgwqAgfSwNCisNCivCoMKgwqAgaW5pdENv
bXBvbmVudDogZnVuY3Rpb24oKSB7DQorCXZhciBtZSA9IHRoaXM7DQorDQorCW1lLm1ldGhvZCA9
IG1lLmlzQ3JlYXRlID8gJ1BPU1QnIDogJ1BVVCc7DQorDQorCWxldCBpcGFuZWwgPSBFeHQuY3Jl
YXRlKCdQVkUuc2RuLkRoY3BNYXBwaW5nSW5wdXRQYW5lbCcsIHsNCisJwqDCoMKgIGlzQ3JlYXRl
OiBtZS5pc0NyZWF0ZSwNCisJfSk7DQorDQorCUV4dC5hcHBseShtZSwgew0KKwnCoMKgwqAgaXRl
bXM6IFsNCisJCWlwYW5lbCwNCisJwqDCoMKgIF0sDQorCX0pOw0KKw0KKwltZS5jYWxsUGFyZW50
KCk7DQorDQorCWlwYW5lbC5zZXRWYWx1ZXMobWUubWFwcGluZyk7DQorwqDCoMKgIH0sDQorfSk7
DQpkaWZmIC0tZ2l0IGEvd3d3L21hbmFnZXI2L3RyZWUvRGhjcFRyZWUuanMNCmIvd3d3L21hbmFn
ZXI2L3RyZWUvRGhjcFRyZWUuanMNCm5ldyBmaWxlIG1vZGUgMTAwNjQ0DQppbmRleCAwMDAwMDAw
MDAuLmM3MTRmMGZmMA0KLS0tIC9kZXYvbnVsbA0KKysrIGIvd3d3L21hbmFnZXI2L3RyZWUvRGhj
cFRyZWUuanMNCkBAIC0wLDAgKzEsMjE1IEBADQorRXh0LmRlZmluZSgnUFZFLnNkbi5EaGNwVHJl
ZScsIHsNCivCoMKgwqAgZXh0ZW5kOiAnRXh0LnRyZWUuUGFuZWwnLA0KK8KgwqDCoCB4dHlwZTog
J3B2ZURoY3BUcmVlJywNCisNCivCoMKgwqAgbGF5b3V0OiAnZml0JywNCivCoMKgwqAgcm9vdFZp
c2libGU6IGZhbHNlLA0KK8KgwqDCoCBhbmltYXRlOiBmYWxzZSwNCisNCivCoMKgwqAgc3RvcmU6
IHsNCisJc29ydGVyczogWydpcCcsICduYW1lJ10sDQorwqDCoMKgIH0sDQorDQorwqDCoMKgIGNv
bnRyb2xsZXI6IHsNCisJeGNsYXNzOiAnRXh0LmFwcC5WaWV3Q29udHJvbGxlcicsDQorCXJlbG9h
ZDogZnVuY3Rpb24oKSB7DQorCcKgwqDCoCBsZXQgbWUgPSB0aGlzOw0KKw0KKwnCoMKgwqAgUHJv
eG1veC5VdGlscy5BUEkyUmVxdWVzdCh7DQorCQl1cmw6IGAvY2x1c3Rlci9zZG4vaXBhbWAsDQor
CQltZXRob2Q6ICdHRVQnLA0KKwkJc3VjY2VzczogZnVuY3Rpb24ocmVzcG9uc2UsIG9wdHMpIHsN
CisJCcKgwqDCoCBsZXQgcm9vdCA9IHsNCisJCQluYW1lOiAnX19yb290JywNCisJCQlleHBhbmRl
ZDogdHJ1ZSwNCisJCQljaGlsZHJlbjogW10sDQorCQnCoMKgwqAgfTsNCisNCisJCcKgwqDCoCBs
ZXQgem9uZXMgPSB7fTsNCisJCcKgwqDCoCBsZXQgdm5ldHMgPSB7fTsNCisJCcKgwqDCoCBsZXQg
c3VibmV0cyA9IHt9Ow0KKw0KKwkJwqDCoMKgIHJlc3BvbnNlLnJlc3VsdC5kYXRhLmZvckVhY2go
KGVsZW1lbnQpID0+IHsNCisJCQllbGVtZW50LmxlYWYgPSB0cnVlOw0KKw0KKwkJCWlmICghKGVs
ZW1lbnQuem9uZSBpbiB6b25lcykpIHsNCisJCQnCoMKgwqAgbGV0IHpvbmUgPSB7DQorCQkJCW5h
bWU6IGVsZW1lbnQuem9uZSwNCisJCQkJdHlwZTogJ3pvbmUnLA0KKwkJCQlpY29uQ2xzOiAnZmEg
ZmEtdGgnLA0KKwkJCQlleHBhbmRlZDogdHJ1ZSwNCisJCQkJY2hpbGRyZW46IFtdLA0KKwkJCcKg
wqDCoCB9Ow0KKw0KKwkJCcKgwqDCoCB6b25lc1tlbGVtZW50LnpvbmVdID0gem9uZTsNCisJCQnC
oMKgwqAgcm9vdC5jaGlsZHJlbi5wdXNoKHpvbmUpOw0KKwkJCX0NCisNCisJCQlpZiAoIShlbGVt
ZW50LnZuZXQgaW4gdm5ldHMpKSB7DQorCQkJwqDCoMKgIGxldCB2bmV0ID0gew0KKwkJCQluYW1l
OiBlbGVtZW50LnZuZXQsDQorCQkJCXR5cGU6ICd2bmV0JywNCisJCQkJaWNvbkNsczogJ2ZhIGZh
LW5ldHdvcmstd2lyZWQnLA0KKwkJCQlleHBhbmRlZDogdHJ1ZSwNCisJCQkJY2hpbGRyZW46IFtd
LA0KKwkJCcKgwqDCoCB9Ow0KKw0KKwkJCcKgwqDCoCB2bmV0c1tlbGVtZW50LnZuZXRdID0gdm5l
dDsNCisJCQnCoMKgwqAgem9uZXNbZWxlbWVudC56b25lXS5jaGlsZHJlbi5wdXNoKHZuZXQpOw0K
KwkJCX0NCisNCisJCQlpZiAoIShlbGVtZW50LnN1Ym5ldCBpbiBzdWJuZXRzKSkgew0KKwkJCcKg
wqDCoCBsZXQgc3VibmV0ID0gew0KKwkJCQluYW1lOiBlbGVtZW50LnN1Ym5ldCwNCisJCQkJdHlw
ZTogJ3N1Ym5ldCcsDQorCQkJCWV4cGFuZGVkOiB0cnVlLA0KKwkJCQljaGlsZHJlbjogW10sDQor
CQkJwqDCoMKgIH07DQorDQorCQkJwqDCoMKgIHN1Ym5ldHNbZWxlbWVudC5zdWJuZXRdID0gc3Vi
bmV0Ow0KKwkJCcKgwqDCoCB2bmV0c1tlbGVtZW50LnZuZXRdLmNoaWxkcmVuLnB1c2goc3VibmV0
KTsNCisJCQl9DQorDQorCQkJZWxlbWVudC50eXBlID0gJ21hcHBpbmcnOw0KKwkJCXN1Ym5ldHNb
ZWxlbWVudC5zdWJuZXRdLmNoaWxkcmVuLnB1c2goZWxlbWVudCkNCjsNCisJCcKgwqDCoCB9KTsN
CisNCisJCcKgwqDCoCBtZS5nZXRWaWV3KCkuc2V0Um9vdE5vZGUocm9vdCk7DQorCQl9LA0KKwnC
oMKgwqAgfSk7DQorCX0sDQorCWluaXQ6IGZ1bmN0aW9uKHZpZXcpIHsNCisJwqDCoMKgIGxldCBt
ZSA9IHRoaXM7DQorCcKgwqDCoCBtZS5yZWxvYWQoKTsNCisJfSwNCisJb25EZWxldGU6IGZ1bmN0
aW9uKHRhYmxlLCBySSwgY0ksIGl0ZW0sIGUsIHsgZGF0YSB9KSB7DQorCcKgwqDCoCBsZXQgbWUg
PSB0aGlzOw0KKwnCoMKgwqAgbGV0IHZpZXcgPSBtZS5nZXRWaWV3KCk7DQorDQorCcKgwqDCoCBF
eHQuTXNnLnNob3coew0KKwkJdGl0bGU6IGdldHRleHQoJ0NvbmZpcm0nKSwNCisJCWljb246IEV4
dC5Nc2cuV0FSTklORywNCisJCW1lc3NhZ2U6IGdldHRleHQoJ0FyZSB5b3Ugc3VyZSB5b3Ugd2Fu
dCB0byByZW1vdmUgREhDUA0KbWFwcGluZyB7MH0nKSwNCisJCWJ1dHRvbnM6IEV4dC5Nc2cuWUVT
Tk8sDQorCQlkZWZhdWx0Rm9jdXM6ICdubycsDQorCQljYWxsYmFjazogZnVuY3Rpb24oYnRuKSB7
DQorCQnCoMKgwqAgaWYgKGJ0biAhPT0gJ3llcycpIHsNCisJCcKgwqDCoMKgwqDCoMKgIHJldHVy
bjsNCisJCcKgwqDCoCB9DQorDQorCQnCoMKgwqAgUHJveG1veC5VdGlscy5BUEkyUmVxdWVzdCh7
DQorCQkJdXJsOg0KYC9jbHVzdGVyL3Nkbi9pcGFtLyR7ZGF0YS52bmV0fS8ke2RhdGEubWFjfWAs
DQorCQkJbWV0aG9kOiAnREVMRVRFJywNCisJCQl3YWl0TXNnVGFyZ2V0OiB2aWV3LA0KKwkJCWZh
aWx1cmU6IGZ1bmN0aW9uKHJlc3BvbnNlLCBvcHRzKSB7DQorCQkJwqDCoMKgIEV4dC5Nc2cuYWxl
cnQoZ2V0dGV4dCgnRXJyb3InKSwNCnJlc3BvbnNlLmh0bWxTdGF0dXMpOw0KKwkJCX0sDQorCQkJ
Y2FsbGJhY2s6IG1lLnJlbG9hZC5iaW5kKG1lKSwNCisJCcKgwqDCoCB9KTsNCisJCX0sDQorCcKg
wqDCoCB9KTsNCisJfSwNCivCoMKgwqAgfSwNCisNCivCoMKgwqAgY29sdW1uczogWw0KKwl7DQor
CcKgwqDCoCB4dHlwZTogJ3RyZWVjb2x1bW4nLA0KKwnCoMKgwqAgdGV4dDogJ05hbWUgLyBWTUlE
JywNCisJwqDCoMKgIGRhdGFJbmRleDogJ25hbWUnLA0KKwnCoMKgwqAgd2lkdGg6IDIwMCwNCisJ
wqDCoMKgIHJlbmRlcmVyOiBmdW5jdGlvbih2YWx1ZSwgbWV0YSwgcmVjb3JkKSB7DQorCQlpZiAo
cmVjb3JkLmdldCgnZ2F0ZXdheScpKSB7DQorCQnCoMKgwqAgcmV0dXJuICdHYXRld2F5JzsNCisJ
CX0NCisNCisJCXJldHVybiByZWNvcmQuZ2V0KCduYW1lJykgPz8gcmVjb3JkLmdldCgndm1pZCcp
ID8/ICcnOw0KKwnCoMKgwqAgfSwNCisJfSwNCisJew0KKwnCoMKgwqAgdGV4dDogJ0lQJywNCisJ
wqDCoMKgIGRhdGFJbmRleDogJ2lwJywNCisJwqDCoMKgIHdpZHRoOiAyMDAsDQorCX0sDQorCXsN
CisJwqDCoMKgIHRleHQ6ICdNQUMnLA0KKwnCoMKgwqAgZGF0YUluZGV4OiAnbWFjJywNCisJwqDC
oMKgIHdpZHRoOiAyMDAsDQorCX0sDQorCXsNCisJwqDCoMKgIHRleHQ6ICdHYXRld2F5JywNCisJ
wqDCoMKgIGRhdGFJbmRleDogJ2dhdGV3YXknLA0KKwnCoMKgwqAgd2lkdGg6IDIwMCwNCisJfSwN
CisJew0KKwnCoMKgwqAgaGVhZGVyOiBnZXR0ZXh0KCdBY3Rpb25zJyksDQorCcKgwqDCoCB4dHlw
ZTogJ2FjdGlvbmNvbHVtbicsDQorCcKgwqDCoCBkYXRhSW5kZXg6ICd0ZXh0JywNCisJwqDCoMKg
IHdpZHRoOiAxNTAsDQorCcKgwqDCoCBpdGVtczogWw0KKwkJew0KKwkJwqDCoMKgIGhhbmRsZXI6
IGZ1bmN0aW9uKHRhYmxlLCBySSwgY0ksIGl0ZW0sIGUsIHsgZGF0YQ0KfSkgew0KKwkJCWxldCBt
ZSA9IHRoaXM7DQorDQorCQkJbGV0IHdpbiA9IEV4dC5jcmVhdGUoJ1BWRS5zZG4uTWFwcGluZ0Vk
aXQnLCB7DQorCQkJwqDCoMKgIGF1dG9TaG93OiB0cnVlLA0KKwkJCcKgwqDCoCBtYXBwaW5nOiB7
fSwNCisJCQnCoMKgwqAgdXJsOiBgL2NsdXN0ZXIvc2RuL2lwYW1gLA0KKwkJCcKgwqDCoCBtZXRo
b2Q6ICdQT1NUJywNCisJCQnCoMKgwqAgaXNDcmVhdGU6IHRydWUsDQorCQkJwqDCoMKgIGV4dHJh
UmVxdWVzdFBhcmFtczogew0KKwkJCQl2bmV0OiBkYXRhLm5hbWUsDQorCQkJwqDCoMKgIH0sDQor
CQkJfSk7DQorDQorCQkJd2luLm9uKCdkZXN0cm95JywgbWUucmVsb2FkKTsNCisJCcKgwqDCoCB9
LA0KKwkJwqDCoMKgIGdldFRpcDogKHYsIG0sIHJlYykgPT4gZ2V0dGV4dCgnQWRkJyksDQorCQnC
oMKgwqAgZ2V0Q2xhc3M6ICh2LCBtLCB7IGRhdGEgfSkgPT4gew0KKwkJCWlmIChkYXRhLnR5cGUg
PT09ICd2bmV0Jykgew0KKwkJCcKgwqDCoCByZXR1cm4gJ2ZhIGZhLXBsdXMtc3F1YXJlJzsNCisJ
CQl9DQorDQorCQkJcmV0dXJuICdwbXgtaGlkZGVuJzsNCisJCcKgwqDCoCB9LA0KK8KgwqDCoMKg
wqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB9LA0KKwkJew0KKwkJwqDCoMKgIGhhbmRsZXI6IGZ1bmN0
aW9uKHRhYmxlLCBySSwgY0ksIGl0ZW0sIGUsIHsgZGF0YQ0KfSkgew0KKwkJCWxldCBtZSA9IHRo
aXM7DQorDQorCQkJbGV0IHdpbiA9IEV4dC5jcmVhdGUoJ1BWRS5zZG4uTWFwcGluZ0VkaXQnLCB7
DQorCQkJwqDCoMKgIGF1dG9TaG93OiB0cnVlLA0KKwkJCcKgwqDCoCBtYXBwaW5nOiBkYXRhLA0K
KwkJCcKgwqDCoCB1cmw6IGAvY2x1c3Rlci9zZG4vaXBhbWAsDQorCQkJwqDCoMKgIG1ldGhvZDog
J1BVVCcsDQorCQkJwqDCoMKgIGV4dHJhUmVxdWVzdFBhcmFtczogew0KKwkJCQl2bWlkOiBkYXRh
LnZtaWQsDQorCQkJCXZuZXQ6IGRhdGEudm5ldCwNCisJCQnCoMKgwqAgfSwNCisJCQl9KTsNCisN
CisJCQl3aW4ub24oJ2Rlc3Ryb3knLCBtZS5yZWxvYWQpOw0KKwkJwqDCoMKgIH0sDQorCQnCoMKg
wqAgZ2V0VGlwOiAodiwgbSwgcmVjKSA9PiAnRWRpdCcsDQorCQnCoMKgwqAgZ2V0Q2xhc3M6ICh2
LCBtLCB7IGRhdGEgfSkgPT4gew0KKwkJCWlmIChkYXRhLnR5cGUgPT09ICdtYXBwaW5nJyAmJiAh
ZGF0YS5nYXRld2F5KQ0Kew0KKwkJCcKgwqDCoCByZXR1cm4gJ2ZhIGZhLXBlbmNpbCBmYS1mdyc7
DQorCQkJfQ0KKw0KKwkJCXJldHVybiAncG14LWhpZGRlbic7DQorCQnCoMKgwqAgfSwNCivCoMKg
wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgfSwNCisJCXsNCisJCcKgwqDCoCBoYW5kbGVyOiAn
b25EZWxldGUnLA0KKwkJwqDCoMKgIGdldFRpcDogKHYsIG0sIHJlYykgPT4gJ0RlbGV0ZScsDQor
CQnCoMKgwqAgZ2V0Q2xhc3M6ICh2LCBtLCB7IGRhdGEgfSkgPT4gew0KKwkJCWlmIChkYXRhLnR5
cGUgPT09ICdtYXBwaW5nJyAmJiAhZGF0YS5nYXRld2F5KQ0Kew0KKwkJCcKgwqDCoCByZXR1cm4g
J2ZhIGNyaXRpY2FsIGZhLXRyYXNoLW8nOw0KKwkJCX0NCisNCisJCQlyZXR1cm4gJ3BteC1oaWRk
ZW4nOw0KKwkJwqDCoMKgIH0sDQorwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIH0sDQor
CcKgwqDCoCBdLA0KKwl9LA0KK8KgwqDCoCBdLA0KK30pOw0KDQo=