From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: 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)) (No client certificate requested) by lists.proxmox.com (Postfix) with ESMTPS id BC23197669 for ; Wed, 17 Apr 2024 10:20:31 +0200 (CEST) Received: from firstgate.proxmox.com (localhost [127.0.0.1]) by firstgate.proxmox.com (Proxmox) with ESMTP id 97A343D3 for ; Wed, 17 Apr 2024 10:20:01 +0200 (CEST) Received: from proxmox-new.maurer-it.com (proxmox-new.maurer-it.com [94.136.29.106]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by firstgate.proxmox.com (Proxmox) with ESMTPS for ; Wed, 17 Apr 2024 10:20:00 +0200 (CEST) Received: from proxmox-new.maurer-it.com (localhost.localdomain [127.0.0.1]) by proxmox-new.maurer-it.com (Proxmox) with ESMTP id 93995418CD for ; Wed, 17 Apr 2024 10:20:00 +0200 (CEST) Message-ID: <044ddf67407c9e2ef69e527b4d28c6685be96f6b.camel@proxmox.com> From: Folke Gleumes To: Proxmox VE development discussion Date: Wed, 17 Apr 2024 10:19:59 +0200 In-Reply-To: <20240417064546.271430-1-d.csapak@proxmox.com> References: <20240417064546.271430-1-d.csapak@proxmox.com> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: base64 User-Agent: Evolution 3.46.4-2 MIME-Version: 1.0 X-SPAM-LEVEL: Spam detection results: 0 AWL 0.013 Adjusted score from AWL reputation of From: address BAYES_00 -1.9 Bayes spam probability is 0 to 1% DMARC_MISSING 0.1 Missing DMARC policy KAM_DMARC_STATUS 0.01 Test Rule for DKIM or SPF Failure with Strict Alignment SPF_HELO_NONE 0.001 SPF: HELO does not publish an SPF Record SPF_PASS -0.001 SPF: sender matches SPF record URIBL_BLOCKED 0.001 ADMINISTRATOR NOTICE: The query to URIBL was blocked. See http://wiki.apache.org/spamassassin/DnsBlocklists#dnsbl-block for more information. [material.io] Subject: Re: [pve-devel] [PATCH pve-flutter-frontend v2] node overview: add power settings menu X-BeenThere: pve-devel@lists.proxmox.com X-Mailman-Version: 2.1.29 Precedence: list List-Id: Proxmox VE development discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 17 Apr 2024 08:20:31 -0000 T24gV2VkLCAyMDI0LTA0LTE3IGF0IDA4OjQ1ICswMjAwLCBEb21pbmlrIENzYXBhayB3cm90ZToK PiBzaW1pbGFyIHRvIGhvdyBpdCB3b3JrcyBmb3IgcWVtdSwgYnV0IGFkZCBhIGNvbmZpcm1hdGlv biBkaWFsb2cKPiBzbyBvbmUgZG9lcyBub3QgYWNjaWRlbnRhbGx5IHNodXRkb3duIG9yIHJlYm9v dCBhIG5vZGUuCj4gCj4gU2lnbmVkLW9mZi1ieTogRG9taW5payBDc2FwYWsgPGQuY3NhcGFrQHBy b3htb3guY29tPgo+IC0tLQo+IGNoYW5nZXMgZnJvbSB2MToKPiAqIGFkZCBhbiBBbGVydERpYWxv ZyBhcyBjb25maXJtYXRpb24gYmVmb3JlIGV4ZWN1dGluZyB0aGUgYWN0aW9uCj4gCj4gwqBsaWIv YmxvYy9wdmVfbm9kZV9vdmVydmlld19ibG9jLmRhcnTCoMKgwqDCoMKgwqDCoMKgwqAgfCAxMSAr KysKPiDCoGxpYi93aWRnZXRzL3B2ZV9ub2RlX292ZXJ2aWV3LmRhcnTCoMKgwqDCoMKgwqDCoMKg wqDCoMKgIHwgMjQgKysrKysrCj4gwqAuLi4vcHZlX25vZGVfcG93ZXJfc2V0dGluZ3Nfd2lkZ2V0 LmRhcnTCoMKgwqDCoMKgwqAgfCA4NAo+ICsrKysrKysrKysrKysrKysrKysKPiDCoDMgZmlsZXMg Y2hhbmdlZCwgMTE5IGluc2VydGlvbnMoKykKPiDCoGNyZWF0ZSBtb2RlIDEwMDY0NCBsaWIvd2lk Z2V0cy9wdmVfbm9kZV9wb3dlcl9zZXR0aW5nc193aWRnZXQuZGFydAo+IAo+IGRpZmYgLS1naXQg YS9saWIvYmxvYy9wdmVfbm9kZV9vdmVydmlld19ibG9jLmRhcnQKPiBiL2xpYi9ibG9jL3B2ZV9u b2RlX292ZXJ2aWV3X2Jsb2MuZGFydAo+IGluZGV4IGQxNGZmNzkuLjE5ZDY1NjMgMTAwNjQ0Cj4g LS0tIGEvbGliL2Jsb2MvcHZlX25vZGVfb3ZlcnZpZXdfYmxvYy5kYXJ0Cj4gKysrIGIvbGliL2Js b2MvcHZlX25vZGVfb3ZlcnZpZXdfYmxvYy5kYXJ0Cj4gQEAgLTU3LDkgKzU3LDIwIEBAIGNsYXNz IFB2ZU5vZGVPdmVydmlld0Jsb2MKPiDCoMKgwqDCoMKgwqAgZmluYWwgZGlza3MgPSBhd2FpdCBh cGlDbGllbnQuZ2V0Tm9kZURpc2tzTGlzdChub2RlSUQpOwo+IMKgwqDCoMKgwqDCoCB5aWVsZCBs YXRlc3RTdGF0ZS5yZWJ1aWxkKChiKSA9PiBiLi5kaXNrcy5yZXBsYWNlKGRpc2tzKSk7Cj4gwqDC oMKgwqAgfQo+ICvCoMKgwqAgaWYgKGV2ZW50IGlzIFBlcmZvcm1Ob2RlQWN0aW9uKSB7Cj4gK8Kg wqDCoMKgwqAgYXdhaXQgYXBpQ2xpZW50LmRvUmVzb3VyY2VBY3Rpb24obm9kZUlELCAnJywgJ25v ZGUnLAo+IGV2ZW50LmFjdGlvbiwKPiArwqDCoMKgwqDCoMKgwqDCoMKgIHBhcmFtZXRlcnM6IDxT dHJpbmcsIFN0cmluZz57fSk7Cj4gK8KgwqDCoMKgwqAgeWllbGQgbGF0ZXN0U3RhdGU7Cj4gK8Kg wqDCoCB9Cj4gwqDCoCB9Cj4gwqB9Cj4gwqAKPiDCoGFic3RyYWN0IGNsYXNzIFB2ZU5vZGVPdmVy dmlld0V2ZW50IHt9Cj4gwqAKPiDCoGNsYXNzIFVwZGF0ZU5vZGVTdGF0dXMgZXh0ZW5kcyBQdmVO b2RlT3ZlcnZpZXdFdmVudCB7fQo+ICsKPiArY2xhc3MgUGVyZm9ybU5vZGVBY3Rpb24gZXh0ZW5k cyBQdmVOb2RlT3ZlcnZpZXdFdmVudCB7Cj4gK8KgIGZpbmFsIFB2ZUNsdXN0ZXJSZXNvdXJjZUFj dGlvbiBhY3Rpb247Cj4gKwo+ICvCoCBQZXJmb3JtTm9kZUFjdGlvbih0aGlzLmFjdGlvbik7Cj4g K30KPiBkaWZmIC0tZ2l0IGEvbGliL3dpZGdldHMvcHZlX25vZGVfb3ZlcnZpZXcuZGFydAo+IGIv bGliL3dpZGdldHMvcHZlX25vZGVfb3ZlcnZpZXcuZGFydAo+IGluZGV4IDdiNjVjMGUuLmFkOWEz YjIgMTAwNjQ0Cj4gLS0tIGEvbGliL3dpZGdldHMvcHZlX25vZGVfb3ZlcnZpZXcuZGFydAo+ICsr KyBiL2xpYi93aWRnZXRzL3B2ZV9ub2RlX292ZXJ2aWV3LmRhcnQKPiBAQCAtOCw2ICs4LDcgQEAg aW1wb3J0Cj4gJ3BhY2thZ2U6cHZlX2ZsdXR0ZXJfZnJvbnRlbmQvc3RhdGVzL3B2ZV9ub2RlX292 ZXJ2aWV3X3N0YXRlLmRhcnQnOwo+IMKgaW1wb3J0Cj4gJ3BhY2thZ2U6cHZlX2ZsdXR0ZXJfZnJv bnRlbmQvc3RhdGVzL3B2ZV90YXNrX2xvZ19zdGF0ZS5kYXJ0JzsKPiDCoGltcG9ydCAncGFja2Fn ZTpwdmVfZmx1dHRlcl9mcm9udGVuZC91dGlscy9yZW5kZXJlcnMuZGFydCc7Cj4gwqBpbXBvcnQg J3BhY2thZ2U6cHZlX2ZsdXR0ZXJfZnJvbnRlbmQvdXRpbHMvdXRpbHMuZGFydCc7Cj4gK2ltcG9y dAo+ICdwYWNrYWdlOnB2ZV9mbHV0dGVyX2Zyb250ZW5kL3dpZGdldHMvcHZlX25vZGVfcG93ZXJf c2V0dGluZ3Nfd2lkZ2V0Lgo+IGRhcnQnOwo+IMKgaW1wb3J0Cj4gJ3BhY2thZ2U6cHZlX2ZsdXR0 ZXJfZnJvbnRlbmQvd2lkZ2V0cy9wcm94bW94X2NhcGFjaXR5X2luZGljYXRvci5kYXJ0Cj4gJzsK PiDCoGltcG9ydAo+ICdwYWNrYWdlOnB2ZV9mbHV0dGVyX2Zyb250ZW5kL3dpZGdldHMvcHJveG1v eF9zdHJlYW1fYnVpbGRlcl93aWRnZXQuZAo+IGFydCc7Cj4gwqBpbXBvcnQKPiAncGFja2FnZTpw dmVfZmx1dHRlcl9mcm9udGVuZC93aWRnZXRzL3B2ZV9hY3Rpb25fY2FyZF93aWRnZXQuZGFydCc7 Cj4gQEAgLTE4OSw2ICsxOTAsMTYgQEAgY2xhc3MgUHZlTm9kZU92ZXJ2aWV3IGV4dGVuZHMgU3Rh dGVsZXNzV2lkZ2V0IHsKPiDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoCBjaGlsZDogUm93KAo+IMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoCBtYWluQXhpc0FsaWdubWVudDoKPiBNYWluQXhpc0FsaWdubWVudC5zcGFjZUV2 ZW5seSwKPiDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAg Y2hpbGRyZW46IDxXaWRnZXQ+Wwo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoCBBY3Rpb25DYXJkKAo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgaWNvbjogY29uc3QgSWNvbigKPiArwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBJY29u cy5wb3dlcl9zZXR0aW5nc19uZXcsCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgc2l6ZTogNTUsCj4gK8KgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgY29sb3I6IENvbG9ycy53 aGl0ZTI0LAo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqAgKSwKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgIHRpdGxlOiAnUG93ZXIgU2V0dGluZ3MnLAo+ICvCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgb25UYXA6ICgpID0+Cj4gK8Kg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgIHNob3dQb3dlck1lbnVCb3R0b21TaGVldChjb250ZXh0LAo+IG5CbG9jKSwKPiArwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKSwKPiDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIEFjdGlvbkNhcmQo Cj4gwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqAgaWNvbjogY29uc3QgSWNvbigKPiDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgSWNvbnMucXVldWVfcGxheV9uZXh0LAo+IEBAIC00 NDMsNCArNDU0LDE3IEBAIGNsYXNzIFB2ZU5vZGVPdmVydmlldyBleHRlbmRzIFN0YXRlbGVzc1dp ZGdldCB7Cj4gwqDCoMKgwqDCoMKgIH0sCj4gwqDCoMKgwqAgKTsKPiDCoMKgIH0KPiArCj4gK8Kg IEZ1dHVyZTxUPz4gc2hvd1Bvd2VyTWVudUJvdHRvbVNoZWV0PFQ+KAo+ICvCoMKgwqDCoMKgIEJ1 aWxkQ29udGV4dCBjb250ZXh0LCBQdmVOb2RlT3ZlcnZpZXdCbG9jIG5vZGVCbG9jKSBhc3luYyB7 Cj4gK8KgwqDCoCByZXR1cm4gc2hvd01vZGFsQm90dG9tU2hlZXQoCj4gK8KgwqDCoMKgwqAgc2hh cGU6IGNvbnN0IFJvdW5kZWRSZWN0YW5nbGVCb3JkZXIoCj4gK8KgwqDCoMKgwqDCoMKgwqDCoCBi b3JkZXJSYWRpdXM6IEJvcmRlclJhZGl1cy52ZXJ0aWNhbCh0b3A6Cj4gUmFkaXVzLmNpcmN1bGFy KDEwKSkpLAo+ICvCoMKgwqDCoMKgIGNvbnRleHQ6IGNvbnRleHQsCj4gK8KgwqDCoMKgwqAgYnVp bGRlcjogKGNvbnRleHQpID0+IFByb3ZpZGVyLnZhbHVlKAo+ICvCoMKgwqDCoMKgwqDCoCB2YWx1 ZTogbm9kZUJsb2MsCj4gK8KgwqDCoMKgwqDCoMKgIGNoaWxkOiBjb25zdCBQdmVOb2RlUG93ZXJT ZXR0aW5ncygpLAo+ICvCoMKgwqDCoMKgICksCj4gK8KgwqDCoCApOwo+ICvCoCB9Cj4gwqB9Cj4g ZGlmZiAtLWdpdCBhL2xpYi93aWRnZXRzL3B2ZV9ub2RlX3Bvd2VyX3NldHRpbmdzX3dpZGdldC5k YXJ0Cj4gYi9saWIvd2lkZ2V0cy9wdmVfbm9kZV9wb3dlcl9zZXR0aW5nc193aWRnZXQuZGFydAo+ IG5ldyBmaWxlIG1vZGUgMTAwNjQ0Cj4gaW5kZXggMDAwMDAwMC4uNjIxYWM2OAo+IC0tLSAvZGV2 L251bGwKPiArKysgYi9saWIvd2lkZ2V0cy9wdmVfbm9kZV9wb3dlcl9zZXR0aW5nc193aWRnZXQu ZGFydAo+IEBAIC0wLDAgKzEsODQgQEAKPiAraW1wb3J0ICdwYWNrYWdlOmZsdXR0ZXIvbWF0ZXJp YWwuZGFydCc7Cj4gK2ltcG9ydCAncGFja2FnZTpwcm92aWRlci9wcm92aWRlci5kYXJ0JzsKPiAr aW1wb3J0Cj4gJ3BhY2thZ2U6cHJveG1veF9kYXJ0X2FwaV9jbGllbnQvcHJveG1veF9kYXJ0X2Fw aV9jbGllbnQuZGFydCc7Cj4gK2ltcG9ydAo+ICdwYWNrYWdlOnB2ZV9mbHV0dGVyX2Zyb250ZW5k L2Jsb2MvcHZlX25vZGVfb3ZlcnZpZXdfYmxvYy5kYXJ0JzsKPiAraW1wb3J0Cj4gJ3BhY2thZ2U6 cHZlX2ZsdXR0ZXJfZnJvbnRlbmQvc3RhdGVzL3B2ZV9ub2RlX292ZXJ2aWV3X3N0YXRlLmRhcnQn Owo+ICtpbXBvcnQKPiAncGFja2FnZTpwdmVfZmx1dHRlcl9mcm9udGVuZC93aWRnZXRzL3Byb3ht b3hfc3RyZWFtX2J1aWxkZXJfd2lkZ2V0LmQKPiBhcnQnOwo+ICsKPiArY2xhc3MgUHZlTm9kZVBv d2VyU2V0dGluZ3MgZXh0ZW5kcyBTdGF0ZWxlc3NXaWRnZXQgewo+ICvCoCBjb25zdCBQdmVOb2Rl UG93ZXJTZXR0aW5ncyh7Cj4gK8KgwqDCoCBzdXBlci5rZXksCj4gK8KgIH0pOwo+ICvCoCBAb3Zl cnJpZGUKPiArwqAgV2lkZ2V0IGJ1aWxkKEJ1aWxkQ29udGV4dCBjb250ZXh0KSB7Cj4gK8KgwqDC oCBmaW5hbCBibG9jID0gUHJvdmlkZXIub2Y8UHZlTm9kZU92ZXJ2aWV3QmxvYz4oY29udGV4dCk7 Cj4gK8KgwqDCoCByZXR1cm4gUHJveG1veFN0cmVhbUJ1aWxkZXI8UHZlTm9kZU92ZXJ2aWV3Qmxv YywKPiBQdmVOb2RlT3ZlcnZpZXdTdGF0ZT4oCj4gK8KgwqDCoMKgwqDCoMKgIGJsb2M6IGJsb2Ms Cj4gK8KgwqDCoMKgwqDCoMKgIGJ1aWxkZXI6IChjb250ZXh0LCBzdGF0ZSkgewo+ICvCoMKgwqDC oMKgwqDCoMKgwqAgcmV0dXJuIFNhZmVBcmVhKAo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIGNo aWxkOiBTaW5nbGVDaGlsZFNjcm9sbFZpZXcoCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg IGNoaWxkOiBDb250YWluZXIoCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBjb25z dHJhaW50czogQm94Q29uc3RyYWludHMoCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgIG1pbkhlaWdodDogTWVkaWFRdWVyeS5vZihjb250ZXh0KS5zaXplLmhlaWdodCAv Cj4gMyksCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBjaGlsZDogQ29sdW1uKAo+ ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIG1haW5BeGlzU2l6ZTogTWFpbkF4 aXNTaXplLm1pbiwKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBjaGlsZHJl bjogPFdpZGdldD5bCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIExp c3RUaWxlKAo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgbGVh ZGluZzogY29uc3QgSWNvbihJY29ucy5hdXRvcmVuZXcpLAo+ICvCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgdGl0bGU6IGNvbnN0IFRleHQoCj4gK8KgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgIlJlYm9vdCIsCj4gK8KgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgc3R5bGU6IFRleHRTdHlsZShm b250V2VpZ2h0Ogo+IEZvbnRXZWlnaHQuYm9sZCksCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoCApLAo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqAgc3VidGl0bGU6IGNvbnN0IFRleHQoIlJlYm9vdCBOb2RlIiksCj4gK8KgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBvblRhcDogKCkgPT4gYWN0aW9u KGNvbnRleHQsCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgIFB2ZUNsdXN0ZXJSZXNvdXJjZUFjdGlvbi5yZWJvb3QsIGJsb2MsCj4gInJlYm9vdCIp LAo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCApLAo+ICvCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBMaXN0VGlsZSgKPiArwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIGxlYWRpbmc6IGNvbnN0IEljb24oSWNvbnMu cG93ZXJfc2V0dGluZ3NfbmV3KSwKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgIHRpdGxlOiBjb25zdCBUZXh0KAo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgICJTaHV0ZG93biIsCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgc3R5bGU6IFRleHRTdHlsZShmb250V2VpZ2h0Ogo+ IEZvbnRXZWlnaHQuYm9sZCksCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoCApLAo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAg c3VidGl0bGU6IGNvbnN0IFRleHQoIlNodXRkb3duIE5vZGUiKSwKPiArwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIG9uVGFwOiAoKSA9PiBhY3Rpb24oY29udGV4dCwK PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgUHZl Q2x1c3RlclJlc291cmNlQWN0aW9uLnNodXRkb3duLCBibG9jLAo+ICJzaHV0ZG93biIpLAo+ICvC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCApLAo+ICvCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgIF0sCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oCApLAo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCApLAo+ICvCoMKgwqDCoMKgwqDCoMKg wqDCoMKgICksCj4gK8KgwqDCoMKgwqDCoMKgwqDCoCApOwo+ICvCoMKgwqDCoMKgwqDCoCB9KTsK PiArwqAgfQo+ICsKPiArwqAgdm9pZCBhY3Rpb24oQnVpbGRDb250ZXh0IGNvbnRleHQsIFB2ZUNs dXN0ZXJSZXNvdXJjZUFjdGlvbiBhY3Rpb24sCj4gK8KgwqDCoMKgwqAgUHZlTm9kZU92ZXJ2aWV3 QmxvYyBibG9jLCBTdHJpbmcgYWN0aW9uVGV4dCkgYXN5bmMgewo+ICvCoMKgwqAgaWYgKGF3YWl0 IHNob3dEaWFsb2coCj4gK8KgwqDCoMKgwqDCoMKgIGNvbnRleHQ6IGNvbnRleHQsCj4gK8KgwqDC oMKgwqDCoMKgIGJ1aWxkZXI6IChjb250ZXh0KSB7Cj4gK8KgwqDCoMKgwqDCoMKgwqDCoCByZXR1 cm4gQWxlcnREaWFsb2coCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqAgY29udGVudFBhZGRpbmc6 IGNvbnN0IEVkZ2VJbnNldHMuZnJvbUxUUkIoMjQuMCwgMTIuMCwKPiAyNC4wLCAxNi4wKSwKPiAr wqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB0aXRsZTogY29uc3QgUm93KAo+ICvCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoCBtYWluQXhpc0FsaWdubWVudDogTWFpbkF4aXNBbGlnbm1lbnQuc3BhY2VC ZXR3ZWVuLAo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBjaGlsZHJlbjogPFdpZGdldD5b Cj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBUZXh0KCdDb25maXJtJyksCj4gK8Kg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBJY29uKEljb25zLndhcm5pbmcpLAo+ICvCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBdLAo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICksCj4g K8KgwqDCoMKgwqDCoMKgwqDCoMKgwqAgY29udGVudDogVGV4dCgKPiArwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgICJBcmUgeW91IHN1cmUgeW91IHdhbnQgdG8gJGFjdGlvblRleHQgbm9k ZQo+ICcke2Jsb2Mubm9kZUlEfSc/IiksCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqAgYWN0aW9u czogWwo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBUZXh0QnV0dG9uKAo+ICvCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIG9uUHJlc3NlZDogKCkgPT4gTmF2aWdhdG9yLm9m KGNvbnRleHQpLnBvcCh0cnVlKSwKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oCBjaGlsZDogY29uc3QgVGV4dCgiWWVzIikpLAo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oCBUZXh0QnV0dG9uKAo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIG9uUHJl c3NlZDogKCkgPT4gTmF2aWdhdG9yLm9mKGNvbnRleHQpLnBvcChmYWxzZSksCj4gK8KgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgY2hpbGQ6IGNvbnN0IFRleHQoIk5vIikpCj4gK8Kg wqDCoMKgwqDCoMKgwqDCoMKgwqAgXSwKClRoZSBvcmRlciBvZiBidXR0b25zIHByb2JhYmx5IHNo b3VsZCBiZSByZXZlcnNlZC4gQWNjb3JkaW5nIHRvIG1hdGVyaWFsCmd1aWRlbGluZXMgYSBkaXNt aXNzaXZlIGFjdGlvbiBoYXMgdG8gYmUgcGxhY2VkIHRvIHRoZSBsZWZ0IG9mCmNvbmZpcm1pbmcg YWN0aW9ucyBbMF0uIEluIHByYWN0aWNlLCBJIGFjY2lkZW50YWxseSBzaHV0IGRvd24gbXkgdGVz dApWTSBiZWNhdXNlIEkgaW50dWl0aXZlbHkgd2VudCBmb3IgdGhlIGxlZnRtb3N0IGJ1dHRvbiB0 byBhYm9ydC4gVG8gbWFrZQp0aGUgYWN0aW9ucyBldmVuIG1vcmUgb2J2aW91cywgdGhleSBjb3Vs ZCBiZSBwaHJhc2VkIGFzIENhbmNlbCBhbmQKU2h1dGRvd24vUmVib290LgoKPiArwqDCoMKgwqDC oMKgwqDCoMKgICk7Cj4gK8KgwqDCoMKgwqDCoMKgIH0pKSB7Cj4gK8KgwqDCoMKgwqAgYmxvYy5l dmVudHMuYWRkKFBlcmZvcm1Ob2RlQWN0aW9uKGFjdGlvbikpOwo+ICvCoMKgwqDCoMKgIGlmIChj b250ZXh0Lm1vdW50ZWQpIE5hdmlnYXRvci5vZihjb250ZXh0KS5wb3AoKTsKPiArwqDCoMKgIH0K PiArwqAgfQo+ICt9CgpCZXNpZGVzIHRoZSBidXR0b24gb3JkZXJpbmcsIGV2ZXJ5dGhpbmcgd29y a2VkIHdlbGwsIHNvIGlmIHRob3NlIGFyZQpjaGFuZ2VkLCBjb25zaWRlciB0aGlzOgoKVGVzdGVk LWJ5OiBGb2xrZSBHbGV1bWVzIDxmLmdsZXVtZXNAcHJveG1veC5jb20+CgpbMF0gaHR0cHM6Ly9t Mi5tYXRlcmlhbC5pby9jb21wb25lbnRzL2RpYWxvZ3MjYWN0aW9ucwo=