From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: <pve-devel-bounces@lists.proxmox.com> Received: from firstgate.proxmox.com (firstgate.proxmox.com [212.224.123.68]) by lore.proxmox.com (Postfix) with ESMTPS id 291CF1FF17C for <inbox@lore.proxmox.com>; Wed, 2 Apr 2025 12:36:25 +0200 (CEST) Received: from firstgate.proxmox.com (localhost [127.0.0.1]) by firstgate.proxmox.com (Proxmox) with ESMTP id 052F0F1FE; Wed, 2 Apr 2025 12:36:12 +0200 (CEST) Message-ID: <e5e109c6-0703-4b52-9958-f0037cf4ddfc@proxmox.com> Date: Wed, 2 Apr 2025 12:36:07 +0200 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird To: pve-devel@lists.proxmox.com References: <20250304115803.194820-1-m.frank@proxmox.com> <20250304115803.194820-13-m.frank@proxmox.com> Content-Language: en-US From: =?UTF-8?Q?Lauren=C8=9Biu_Leahu-Vl=C4=83ducu?= <l.leahu-vladucu@proxmox.com> In-Reply-To: <20250304115803.194820-13-m.frank@proxmox.com> X-SPAM-LEVEL: Spam detection results: 0 AWL 0.112 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 Subject: Re: [pve-devel] [PATCH manager v14 12/12] ui: add options to add virtio-fs to qemu config 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> Reply-To: Proxmox VE development discussion <pve-devel@lists.proxmox.com> Content-Transfer-Encoding: base64 Content-Type: text/plain; charset="utf-8"; Format="flowed" Errors-To: pve-devel-bounces@lists.proxmox.com Sender: "pve-devel" <pve-devel-bounces@lists.proxmox.com> U29tZSBjb21tZW50cyBpbmxpbmUKCgpPdGhlcndpc2UsIHBsZWFzZSBjb25zaWRlcjoKClJldmll d2VkLWJ5OiBMYXVyZW7Im2l1IExlYWh1LVZsxINkdWN1IDxsLmxlYWh1LXZsYWR1Y3VAcHJveG1v eC5jb20+ClRlc3RlZC1ieTogTGF1cmVuyJtpdSBMZWFodS1WbMSDZHVjdSA8bC5sZWFodS12bGFk dWN1QHByb3htb3guY29tPgoKCk9uIDA0LjAzLjI1IDEyOjU4LCBNYXJrdXMgRnJhbmsgd3JvdGU6 Cj4gU2lnbmVkLW9mZi1ieTogTWFya3VzIEZyYW5rIDxtLmZyYW5rQHByb3htb3guY29tPgo+IC0t LQo+IHYxNDoKPiAqIGRpc2FibGUgZXhwb3NlLXhhdHRyIHdoZW4gZXhwb3NlLWFjbCBpcyBzZXQK PiAqIGFkZGVkIG1pc3Npbmcgd3JpdGViYWNrIGNhY2hlIG9wdGlvbgo+IAo+ICAgd3d3L21hbmFn ZXI2L01ha2VmaWxlICAgICAgICAgICAgIHwgICAxICsKPiAgIHd3dy9tYW5hZ2VyNi9VdGlscy5q cyAgICAgICAgICAgICB8ICAgMSArCj4gICB3d3cvbWFuYWdlcjYvcWVtdS9IYXJkd2FyZVZpZXcu anMgfCAgMTkgKysrKysKPiAgIHd3dy9tYW5hZ2VyNi9xZW11L1ZpcnRpb2ZzRWRpdC5qcyB8IDEz NyArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysKPiAgIDQgZmlsZXMgY2hhbmdlZCwgMTU4 IGluc2VydGlvbnMoKykKPiAgIGNyZWF0ZSBtb2RlIDEwMDY0NCB3d3cvbWFuYWdlcjYvcWVtdS9W aXJ0aW9mc0VkaXQuanMKPiAKPiBkaWZmIC0tZ2l0IGEvd3d3L21hbmFnZXI2L01ha2VmaWxlIGIv d3d3L21hbmFnZXI2L01ha2VmaWxlCj4gaW5kZXggZmFiYmRkMjQuLmZkZjBlODE2IDEwMDY0NAo+ IC0tLSBhL3d3dy9tYW5hZ2VyNi9NYWtlZmlsZQo+ICsrKyBiL3d3dy9tYW5hZ2VyNi9NYWtlZmls ZQo+IEBAIC0yNzEsNiArMjcxLDcgQEAgSlNTUkM9IAkJCQkJCQlcCj4gICAJcWVtdS9TbWJpb3Mx RWRpdC5qcwkJCQlcCj4gICAJcWVtdS9TeXN0ZW1FZGl0LmpzCQkJCVwKPiAgIAlxZW11L1VTQkVk aXQuanMJCQkJCVwKPiArCXFlbXUvVmlydGlvZnNFZGl0LmpzCQkJCVwKPiAgIAlzZG4vQnJvd3Nl ci5qcwkJCQkJXAo+ICAgCXNkbi9Db250cm9sbGVyVmlldy5qcwkJCQlcCj4gICAJc2RuL1N0YXR1 cy5qcwkJCQkJXAo+IGRpZmYgLS1naXQgYS93d3cvbWFuYWdlcjYvVXRpbHMuanMgYi93d3cvbWFu YWdlcjYvVXRpbHMuanMKPiBpbmRleCA5MDAxMWE4Zi4uMGYyNDJhZTEgMTAwNjQ0Cj4gLS0tIGEv d3d3L21hbmFnZXI2L1V0aWxzLmpzCj4gKysrIGIvd3d3L21hbmFnZXI2L1V0aWxzLmpzCj4gQEAg LTE2NDUsNiArMTY0NSw3IEBAIEV4dC5kZWZpbmUoJ1BWRS5VdGlscycsIHsKPiAgIAlzZXJpYWw6 IDQsCj4gICAJcm5nOiAxLAo+ICAgCXRwbXN0YXRlOiAxLAo+ICsJdmlydGlvZnM6IDEwLAo+ICAg ICAgIH0sCj4gICAKPiAgICAgICAvLyB3ZSBjYW4gaGF2ZSB1c2I2IGFuZCB1cCBvbmx5IGZvciBz cGVjaWZpYyBtYWNoaW5lL29zdHlwZXMKPiBkaWZmIC0tZ2l0IGEvd3d3L21hbmFnZXI2L3FlbXUv SGFyZHdhcmVWaWV3LmpzIGIvd3d3L21hbmFnZXI2L3FlbXUvSGFyZHdhcmVWaWV3LmpzCj4gaW5k ZXggYzZkMTkzZmMuLjM0YWViNTFlIDEwMDY0NAo+IC0tLSBhL3d3dy9tYW5hZ2VyNi9xZW11L0hh cmR3YXJlVmlldy5qcwo+ICsrKyBiL3d3dy9tYW5hZ2VyNi9xZW11L0hhcmR3YXJlVmlldy5qcwo+ IEBAIC0zMTksNiArMzE5LDE2IEBAIEV4dC5kZWZpbmUoJ1BWRS5xZW11LkhhcmR3YXJlVmlldycs IHsKPiAgIAkgICAgbmV2ZXJfZGVsZXRlOiAhY2Fwcy5ub2Rlc1snU3lzLkNvbnNvbGUnXSwKPiAg IAkgICAgaGVhZGVyOiBnZXR0ZXh0KCJWaXJ0SU8gUk5HIiksCj4gICAJfTsKPiArCWZvciAobGV0 IGkgPSAwOyBpIDwgUFZFLlV0aWxzLmhhcmR3YXJlX2NvdW50cy52aXJ0aW9mczsgaSsrKSB7Cj4g KwkgICAgbGV0IGNvbmZpZCA9ICJ2aXJ0aW9mcyIgKyBpLnRvU3RyaW5nKCk7Cj4gKwkgICAgcm93 c1tjb25maWRdID0gewo+ICsJCWdyb3VwOiA1MCwKPiArCQlvcmRlcjogaSwKPiArCQlpY29uQ2xz OiAnZm9sZGVyJywKPiArCQllZGl0b3I6ICdQVkUucWVtdS5WaXJ0aW9mc0VkaXQnLAo+ICsJCWhl YWRlcjogZ2V0dGV4dCgnVmlydGlvZnMnKSArICcgKCcgKyBjb25maWQgKycpJywKPiArCSAgICB9 Owo+ICsJfQo+ICAgCj4gICAJdmFyIHNvcnRlckZuID0gZnVuY3Rpb24ocmVjMSwgcmVjMikgewo+ ICAgCSAgICB2YXIgdjEgPSByZWMxLmRhdGEua2V5Owo+IEBAIC01OTUsNiArNjA1LDcgQEAgRXh0 LmRlZmluZSgnUFZFLnFlbXUuSGFyZHdhcmVWaWV3Jywgewo+ICAgCSAgICBjb25zdCBub1ZNQ29u ZmlnRGlza1Blcm0gPSAhY2Fwcy52bXNbJ1ZNLkNvbmZpZy5EaXNrJ107Cj4gICAJICAgIGNvbnN0 IG5vVk1Db25maWdDRFJPTVBlcm0gPSAhY2Fwcy52bXNbJ1ZNLkNvbmZpZy5DRFJPTSddOwo+ICAg CSAgICBjb25zdCBub1ZNQ29uZmlnQ2xvdWRpbml0UGVybSA9ICFjYXBzLnZtc1snVk0uQ29uZmln LkNsb3VkaW5pdCddOwo+ICsJICAgIGNvbnN0IG5vVk1Db25maWdPcHRpb25zUGVybSA9ICFjYXBz LnZtc1snVk0uQ29uZmlnLk9wdGlvbnMnXTsKPiAgIAo+ICAgCSAgICBtZS5kb3duKCcjYWRkVXNi Jykuc2V0RGlzYWJsZWQobm9IV1Blcm0gfHwgaXNBdFVzYkxpbWl0KCkpOwo+ICAgCSAgICBtZS5k b3duKCcjYWRkUGNpJykuc2V0RGlzYWJsZWQobm9IV1Blcm0gfHwgaXNBdExpbWl0KCdob3N0cGNp JykpOwo+IEBAIC02MDQsNiArNjE1LDcgQEAgRXh0LmRlZmluZSgnUFZFLnFlbXUuSGFyZHdhcmVW aWV3Jywgewo+ICAgCSAgICBtZS5kb3duKCcjYWRkUm5nJykuc2V0RGlzYWJsZWQobm9TeXNDb25z b2xlUGVybSB8fCBpc0F0TGltaXQoJ3JuZycpKTsKPiAgIAkgICAgZWZpZGlza19tZW51aXRlbS5z ZXREaXNhYmxlZChub1ZNQ29uZmlnRGlza1Blcm0gfHwgaXNBdExpbWl0KCdlZmlkaXNrJykpOwo+ ICAgCSAgICBtZS5kb3duKCcjYWRkVHBtU3RhdGUnKS5zZXREaXNhYmxlZChub1ZNQ29uZmlnRGlz a1Blcm0gfHwgaXNBdExpbWl0KCd0cG1zdGF0ZScpKTsKPiArCSAgICBtZS5kb3duKCcjYWRkVmly dGlvZnMnKS5zZXREaXNhYmxlZChub1ZNQ29uZmlnT3B0aW9uc1Blcm0gfHwgaXNBdExpbWl0KCd2 aXJ0aW9mcycpKTsKPiAgIAkgICAgbWUuZG93bignI2FkZENsb3VkaW5pdERyaXZlJykuc2V0RGlz YWJsZWQobm9WTUNvbmZpZ0NEUk9NUGVybSB8fCBub1ZNQ29uZmlnQ2xvdWRpbml0UGVybSB8fCBo YXNDbG91ZEluaXQpOwo+ICAgCj4gICAJICAgIGlmICghcmVjKSB7Cj4gQEAgLTc0OCw2ICs3NjAs MTMgQEAgRXh0LmRlZmluZSgnUFZFLnFlbXUuSGFyZHdhcmVWaWV3Jywgewo+ICAgCQkJCWRpc2Fi bGVkOiAhY2Fwcy5ub2Rlc1snU3lzLkNvbnNvbGUnXSwKPiAgIAkJCQloYW5kbGVyOiBlZGl0b3JG YWN0b3J5KCdSTkdFZGl0JyksCj4gICAJCQkgICAgfSwKPiArCQkJICAgIHsKPiArCQkJCXRleHQ6 IGdldHRleHQoIlZpcnRpb2ZzIiksCj4gKwkJCQlpdGVtSWQ6ICdhZGRWaXJ0aW9mcycsCj4gKwkJ CQlpY29uQ2xzOiAnZmEgZmEtZm9sZGVyJywKPiArCQkJCWRpc2FibGVkOiAhY2Fwcy5ub2Rlc1sn U3lzLkNvbnNvbGUnXSwKPiArCQkJCWhhbmRsZXI6IGVkaXRvckZhY3RvcnkoJ1ZpcnRpb2ZzRWRp dCcpLAo+ICsJCQkgICAgfSwKPiAgIAkJCV0sCj4gICAJCSAgICB9KSwKPiAgIAkJfSwKPiBkaWZm IC0tZ2l0IGEvd3d3L21hbmFnZXI2L3FlbXUvVmlydGlvZnNFZGl0LmpzIGIvd3d3L21hbmFnZXI2 L3FlbXUvVmlydGlvZnNFZGl0LmpzCj4gbmV3IGZpbGUgbW9kZSAxMDA2NDQKPiBpbmRleCAwMDAw MDAwMC4uMGJiYjUyMTMKPiAtLS0gL2Rldi9udWxsCj4gKysrIGIvd3d3L21hbmFnZXI2L3FlbXUv VmlydGlvZnNFZGl0LmpzCj4gQEAgLTAsMCArMSwxMzcgQEAKPiArRXh0LmRlZmluZSgnUFZFLnFl bXUuVmlydGlvZnNJbnB1dFBhbmVsJywgewo+ICsgICAgZXh0ZW5kOiAnUHJveG1veC5wYW5lbC5J bnB1dFBhbmVsJywKPiArICAgIHh0eXBlOiAncHZlVmlydGlvZnNJbnB1dFBhbmVsJywKPiArICAg IG9ubGluZUhlbHA6ICdxbV92aXJ0aW9mcycsCj4gKwo+ICsgICAgaW5zaWRlV2l6YXJkOiBmYWxz ZSwKPiArCj4gKyAgICBvbkdldFZhbHVlczogZnVuY3Rpb24odmFsdWVzKSB7Cj4gKwl2YXIgbWUg PSB0aGlzOwo+ICsJdmFyIGNvbmZpZCA9IG1lLmNvbmZpZDsKPiArCXZhciBwYXJhbXMgPSB7fTsK PiArCWRlbGV0ZSB2YWx1ZXMuZGVsZXRlOwo+ICsJcGFyYW1zW2NvbmZpZF0gPSBQVkUuUGFyc2Vy LnByaW50UHJvcGVydHlTdHJpbmcodmFsdWVzLCAnZGlyaWQnKTsKPiArCXJldHVybiBwYXJhbXM7 Cj4gKyAgICB9LAo+ICsKPiArICAgIHNldFNoYXJlZGZpbGVzOiBmdW5jdGlvbihjb25maWQsIGRh dGEpIHsKPiArCXZhciBtZSA9IHRoaXM7Cj4gKwltZS5jb25maWQgPSBjb25maWQ7Cj4gKwltZS52 aXJ0aW9mcyA9IGRhdGE7Cj4gKwltZS5zZXRWYWx1ZXMobWUudmlydGlvZnMpOwo+ICsgICAgfSwK PiArICAgIGluaXRDb21wb25lbnQ6IGZ1bmN0aW9uKCkgewo+ICsJbGV0IG1lID0gdGhpczsKPiAr Cj4gKwltZS5ub2RlbmFtZSA9IG1lLnB2ZVNlbE5vZGUuZGF0YS5ub2RlOwo+ICsJaWYgKCFtZS5u b2RlbmFtZSkgewo+ICsJICAgIHRocm93ICJubyBub2RlIG5hbWUgc3BlY2lmaWVkIjsKPiArCX0K PiArCW1lLml0ZW1zID0gWwo+ICsJICAgIHsKPiArCQl4dHlwZTogJ3B2ZURpck1hcFNlbGVjdG9y JywKPiArCQllbXB0eVRleHQ6ICdkaXJpZCcsCj4gKwkJbm9kZW5hbWU6IG1lLm5vZGVuYW1lLAo+ ICsJCWZpZWxkTGFiZWw6IGdldHRleHQoJ0RpcmVjdG9yeSBJRCcpLAo+ICsJCW5hbWU6ICdkaXJp ZCcsCj4gKwkJYWxsb3dCbGFuazogZmFsc2UsCj4gKwkgICAgfSwKPiArCSAgICB7Cj4gKwkJeHR5 cGU6ICdwcm94bW94S1ZDb21ib0JveCcsCj4gKwkJZmllbGRMYWJlbDogZ2V0dGV4dCgnQ2FjaGUn KSwKPiArCQluYW1lOiAnY2FjaGUnLAo+ICsJCXZhbHVlOiAnX19kZWZhdWx0X18nLAo+ICsJCWRl bGV0ZURlZmF1bHRWYWx1ZTogZmFsc2UsCj4gKwkJY29tYm9JdGVtczogWwo+ICsJCSAgICBbJ19f ZGVmYXVsdF9fJywgUHJveG1veC5VdGlscy5kZWZhdWx0VGV4dCArICcgKGF1dG8pJ10sCj4gKwkJ ICAgIFsnYXV0bycsICdhdXRvJ10sCj4gKwkJICAgIFsnYWx3YXlzJywgJ2Fsd2F5cyddLAo+ICsJ CSAgICBbJ25ldmVyJywgJ25ldmVyJ10sCj4gKwkJXSwKCklzIGl0IGEgZ29vZCBpZGVhIHRvIHVz ZSBjYWNoZT1hdXRvIGJ5IGRlZmF1bHQ/IEkga25vdyB0aGF0ICJjYWNoZT1hdXRvIiAKaXMgdGhl IHVwc3RyZWFtIGRlZmF1bHQsIGJ1dCBJIHdhcyB3b25kZXJpbmcgd2hldGhlciBpdCdzIG5vdCBz YWZlciB0byAKdXNlICJuZXZlciIgYnkgZGVmYXVsdCBpbiBQVkUgdG8gbWluaW1pemUgdGhlIGFt b3VudCBvZiBwb3RlbnRpYWwgCmlzc3Vlcy4gRmVlbCBmcmVlIHRvIGNvbnRyYWRpY3QgbWUsIHRo b3VnaCA7KQoKQnkgc2VhcmNoaW5nIHRoZSBpbnRlcm5ldCBJIGZvdW5kIHNvbWUgcmVwb3J0cyBy ZWdhcmRpbmcgY2FjaGU9YXV0bywgCmUuZy4gCmh0dHBzOi8vZGlzY3Vzcy5saW51eGNvbnRhaW5l cnMub3JnL3QvY3VycmVudC1zdGF0ZS1vZi12aXJ0aW9mcy11bmRlci12aXJ0dWFsLW1hY2hpbmVz LzE5MTY2Cgo+ICsJICAgIH0sCj4gKwkgICAgewo+ICsJCXh0eXBlOiAncHJveG1veGNoZWNrYm94 JywKPiArCQlmaWVsZExhYmVsOiBnZXR0ZXh0KCdXcml0ZWJhY2sgY2FjaGUnKSwKPiArCQluYW1l OiAnd3JpdGViYWNrJywKPiArCSAgICB9LAo+ICsJICAgIHsKPiArCQl4dHlwZTogJ3Byb3htb3hj aGVja2JveCcsCj4gKwkJZmllbGRMYWJlbDogZ2V0dGV4dCgnZXhwb3NlLXhhdHRyJyksCj4gKwkJ bmFtZTogJ2V4cG9zZS14YXR0cicsCj4gKwkgICAgfSwKPiArCSAgICB7Cj4gKwkJeHR5cGU6ICdw cm94bW94Y2hlY2tib3gnLAo+ICsJCWZpZWxkTGFiZWw6IGdldHRleHQoJ2V4cG9zZS1hY2wgKGlt cGxpZXMgZXhwb3NlLXhhdHRyKScpLAo+ICsJCW5hbWU6ICdleHBvc2UtYWNsJywKPiArCQlsaXN0 ZW5lcnM6IHsKPiArCQkgICAgY2hhbmdlOiBmdW5jdGlvbihmLCB2YWx1ZSkgewo+ICsJCQlsZXQg eGF0dHIgPSBtZS5kb3duKCdmaWVsZFtuYW1lPWV4cG9zZS14YXR0cl0nKTsKPiArCQkJeGF0dHIu c2V0RGlzYWJsZWQodmFsdWUpOwo+ICsJCQlpZiAodmFsdWUpIHsKPiArCQkJICAgIHhhdHRyLnNl dFZhbHVlKDApOwo+ICsJCQl9Cj4gKwkJICAgIH0sCj4gKwkJfSwKPiArCSAgICB9LAo+ICsJICAg IHsKPiArCQl4dHlwZTogJ3Byb3htb3hjaGVja2JveCcsCj4gKwkJZmllbGRMYWJlbDogZ2V0dGV4 dCgnRGlyZWN0IElPJyksCj4gKwkJbmFtZTogJ2RpcmVjdC1pbycsCj4gKwkgICAgfSwKPiArCV07 CgpJIHRoaW5rIHNvbWUgb2YgdGhlc2Ugb3B0aW9ucyBzaG91bGQgYmUgbWFya2VkIGFzIGFkdmFu Y2VkLCBhcyB0aGV5IAp3b24ndCBiZSBuZWVkZWQgaW4gbW9zdCBjYXNlcyAoZmVlbCBmcmVlIHRv IGNvbnRyYWRpY3QgbWUsIHRob3VnaCkuCgpXaGlsZSBpdCdzIG5vdCBhbHdheXMgaW1tZWRpYXRl bHkgY2xlYXIgd2hhdCBzb21lIG9mIHRoZXNlIG9wdGlvbnMgZG8sIEkgCnRoaW5rIGl0J3MgaGFy ZCB0byBzdW1tYXJpemUgdGhlIGZ1bmN0aW9uYWxpdHkgaW4gYSBzaG9ydCB0b29sdGlwLCBzbyAK bGlua2luZyB0byB0aGUgZG9jcyAoYXMgeW91IGFscmVhZHkgZG8pIGlzIGZpbmUgdG8gbWUuCgpX aGF0IGlzIHN0aWxsIHVuY2xlYXIgdG8gbWUgaXMgd2hhdCBzb21lIGNhY2hpbmcgY29tYmluYXRp b25zIGRvLCBlLmcuIAp0aGUgdXNlciBjYW4gc2V0IENhY2hlIHRvIE5ldmVyLCBidXQgY2FuIGFs c28gZW5hYmxlICJXcml0ZWJhY2sgY2FjaGUiLiAKSSBrbm93IHRoaXMgaGFzIHRvIGRvIHdpdGgg UUVNVSBhbmQgeW91IHNpbXBseSBleHBvc2VkIHRoZSBHVUkgZm9yIApzZXR0aW5nIHRoZSBhZHZh bmNlZCBvcHRpb25zLCBidXQgSSB3YXMganVzdCB3b25kZXJpbmcgd2hldGhlciBpdCAKd291bGRu J3QgYmUgcG9zc2libGUgdG8gZXhwb3NlIHRoZXNlIG9wdGlvbnMgdG8gb3VyIHVzZXJzIGluIGEg d2F5IHRoYXQgCnRoZSBkaWZmZXJlbmNlIGJldHdlZW4gdGhlIG1vZGVzIGlzIGNsZWFyZXIsIGUu Zy4gIlJlYWQgY2FjaGUiIGFuZCAKIldyaXRlYmFjayBjYWNoZSIuIEZlZWwgZnJlZSB0byB1c2Ug c29tZSBlbnRpcmVseSBkaWZmZXJlbnQgbmFtaW5nLCAKdGhvdWdoIDspCgo+ICsKPiArCW1lLnZp cnRpb2ZzID0ge307Cj4gKwltZS5jb25maWQgPSAndmlydGlvZnMwJzsKPiArCW1lLmNhbGxQYXJl bnQoKTsKPiArICAgIH0sCj4gK30pOwo+ICsKPiArRXh0LmRlZmluZSgnUFZFLnFlbXUuVmlydGlv ZnNFZGl0Jywgewo+ICsgICAgZXh0ZW5kOiAnUHJveG1veC53aW5kb3cuRWRpdCcsCj4gKwo+ICsg ICAgc3ViamVjdDogZ2V0dGV4dCgnRmlsZXN5c3RlbSBQYXNzdGhyb3VnaCcpLAo+ICsKPiArICAg IGluaXRDb21wb25lbnQ6IGZ1bmN0aW9uKCkgewo+ICsJdmFyIG1lID0gdGhpczsKPiArCj4gKwlt ZS5pc0NyZWF0ZSA9ICFtZS5jb25maWQ7Cj4gKwo+ICsJdmFyIGlwYW5lbCA9IEV4dC5jcmVhdGUo J1BWRS5xZW11LlZpcnRpb2ZzSW5wdXRQYW5lbCcsIHsKPiArCSAgICBjb25maWQ6IG1lLmNvbmZp ZCwKPiArCSAgICBwdmVTZWxOb2RlOiBtZS5wdmVTZWxOb2RlLAo+ICsJICAgIGlzQ3JlYXRlOiBt ZS5pc0NyZWF0ZSwKPiArCX0pOwo+ICsKPiArCUV4dC5hcHBseUlmKG1lLCB7Cj4gKwkgICAgaXRl bXM6IGlwYW5lbCwKPiArCX0pOwo+ICsKPiArCW1lLmNhbGxQYXJlbnQoKTsKPiArCj4gKwltZS5s b2FkKHsKPiArCSAgICBzdWNjZXNzOiBmdW5jdGlvbihyZXNwb25zZSkgewo+ICsJCW1lLmNvbmYg PSByZXNwb25zZS5yZXN1bHQuZGF0YTsKPiArCQl2YXIgaSwgY29uZmlkOwo+ICsJCWlmICghbWUu aXNDcmVhdGUpIHsKPiArCQkgICAgdmFyIHZhbHVlID0gbWUuY29uZlttZS5jb25maWRdOwo+ICsJ CSAgICB2YXIgdmlydGlvZnMgPSBQVkUuUGFyc2VyLnBhcnNlUHJvcGVydHlTdHJpbmcodmFsdWUs ICJkaXJpZCIpOwo+ICsJCSAgICBpZiAoIXZpcnRpb2ZzKSB7Cj4gKwkJCUV4dC5Nc2cuYWxlcnQo Z2V0dGV4dCgnRXJyb3InKSwgJ1VuYWJsZSB0byBwYXJzZSB2aXJ0aW9mcyBvcHRpb25zJyk7Cj4g KwkJCW1lLmNsb3NlKCk7Cj4gKwkJCXJldHVybjsKPiArCQkgICAgfQo+ICsJCSAgICBpcGFuZWwu c2V0U2hhcmVkZmlsZXMobWUuY29uZmlkLCB2aXJ0aW9mcyk7Cj4gKwkJfSBlbHNlIHsKPiArCQkg ICAgZm9yIChpID0gMDsgaSA8IFBWRS5VdGlscy5oYXJkd2FyZV9jb3VudHMudmlydGlvZnM7IGkr Kykgewo+ICsJCQljb25maWQgPSAndmlydGlvZnMnICsgaS50b1N0cmluZygpOwo+ICsJCQlpZiAo IUV4dC5pc0RlZmluZWQobWUuY29uZltjb25maWRdKSkgewo+ICsJCQkgICAgbWUuY29uZmlkID0g Y29uZmlkOwo+ICsJCQkgICAgYnJlYWs7Cj4gKwkJCX0KPiArCQkgICAgfQo+ICsJCSAgICBpcGFu ZWwuc2V0U2hhcmVkZmlsZXMobWUuY29uZmlkLCB7fSk7Cj4gKwkJfQo+ICsJICAgIH0sCj4gKwl9 KTsKPiArICAgIH0sCj4gK30pOwoKCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fXwpwdmUtZGV2ZWwgbWFpbGluZyBsaXN0CnB2ZS1kZXZlbEBsaXN0cy5wcm94 bW94LmNvbQpodHRwczovL2xpc3RzLnByb3htb3guY29tL2NnaS1iaW4vbWFpbG1hbi9saXN0aW5m by9wdmUtZGV2ZWwK