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 7BBCAA046 for ; Wed, 27 Apr 2022 15:04:45 +0200 (CEST) Received: from firstgate.proxmox.com (localhost [127.0.0.1]) by firstgate.proxmox.com (Proxmox) with ESMTP id 6F78926900 for ; Wed, 27 Apr 2022 15:04:45 +0200 (CEST) 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 id 741FD268F4 for ; Wed, 27 Apr 2022 15:04:43 +0200 (CEST) Received: from CYLNEXC01.cyllene.corp (unknown [10.0.250.28]) by mail02.cetsi.fr (Postfix) with ESMTP id 5474140502AB; Wed, 27 Apr 2022 15:04:41 +0200 (CEST) DKIM-Filter: OpenDKIM Filter v2.11.0 mail02.cetsi.fr 5474140502AB DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=groupe-cyllene.com; s=dkim; t=1651064681; bh=UtZ48b4zQpkUuDcFWG6+XjGxl/Ogc8jqwfL+VMBBzVs=; h=From:To:CC:Subject:Date:References:In-Reply-To:From; b=SetaquXXxXFe2Dgb4iqU06Y8FUczMCH9yRdaSXw/R5d4eZQ9vLRRE3Q1AUHefqDRD 0aK0rWP4mEa+9+K3XjnI1c0R0JAtr4c00DpSt/98X2cvDTLpijrv8oZxr4DTY2uuDY OJNmoK+siaRV4J+GYttrh6E9SUK+Qc7FTNgER2OM= 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.2375.24; Wed, 27 Apr 2022 15:04:42 +0200 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.2375.24 via Frontend Transport; Wed, 27 Apr 2022 15:04:42 +0200 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=SCkK8oZ/bgQRckfVFd3/ylbCCnFYBwjobTocmZ4pvbpLPyzsnGy2AfU1NLaJFXdCGnjXDeFr+HS56PWA04JztJNPHBQ0pVYBXx3AOfrwOPcKrWBSKwu7doNiZOM5kSMvxITZ8KyROoNxVOk+cI4sxt+ZCvZxwbO77K+8r9nNmm+BdSzLyvHRORLtbNKLDwsYZhL6lDbCvZSXwev3YRxeJjdkXU5P/LCM84ZsliXhORMy6AykJN5I5BnyE4+fAvuTNMNmLAns5bVCIoioMMDcjy9cAFrhgzyVXnPKjAfeB1lQTKIGB680WAC+m9y9zlDV+8f84sBuJ4M4gVX8VPo/XA== 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=UtZ48b4zQpkUuDcFWG6+XjGxl/Ogc8jqwfL+VMBBzVs=; b=Ukfs9XcU3G9njxuMGE51FCq6uZecWpG1IS1+G4BjRmVaQVpBfrk3QEQzOna2aS4W+XPjTy9JdGgqyIj8fIE8yz08DrxqQiMn0N+UFyhfhHqA4EGTcHXRaggHP+xUO5OGQa9jq1z4OfPZdJUa4Q5892BOU3DwL5krKoG8tmWoveJRsPqWyxjYSdw2If0gfNWt2hTEdLYS7RIY36UoGLyQUpK4ftlDQe1WE4iQiCZPEmvXznuyzbfg7rweDKYmRCL6MM+lPiN97BPhi9I9eBVwfNFZRAvchNrZQSDsCd/DLHvfWgdm8HgYS/EBMXgNBh4vFDcthY60qUstEZosLboClw== 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=UtZ48b4zQpkUuDcFWG6+XjGxl/Ogc8jqwfL+VMBBzVs=; b=RzxUudRJ7FVHwQDjoEfasmp5Wau8H155Uq5L57vhL+ngbPg5h7kQxOpFBNtgsiPjWo0tUN7NRx3SfcYSiMxH5ZFSBvJ8uSayAn65dzpWJXaLtWSZshbuCgGWyNjFq3P0Wu0nCQKoXglTPvrbYQqzl3ZjXCR4JBSTGUjgZc0HDp0= Received: from MR1P264MB2481.FRAP264.PROD.OUTLOOK.COM (2603:10a6:501:32::17) by MR1P264MB2932.FRAP264.PROD.OUTLOOK.COM (2603:10a6:501:3b::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5186.14; Wed, 27 Apr 2022 13:04:41 +0000 Received: from MR1P264MB2481.FRAP264.PROD.OUTLOOK.COM ([fe80::d51e:bb34:30c5:7f59]) by MR1P264MB2481.FRAP264.PROD.OUTLOOK.COM ([fe80::d51e:bb34:30c5:7f59%5]) with mapi id 15.20.5186.021; Wed, 27 Apr 2022 13:04:41 +0000 From: "DERUMIER, Alexandre" To: "pve-devel@lists.proxmox.com" , "f.gruenbichler@proxmox.com" Thread-Topic: [PATCH manager] api2: network: anybridge: re-add regular bridges Thread-Index: AQHYWir9g7gAyh7C2Ui92qUsrbZ9mq0DsX6AgAADdICAAAVtAA== Date: Wed, 27 Apr 2022 13:04:41 +0000 Message-ID: References: <20220427113600.166803-1-f.gruenbichler@proxmox.com> <27858f5825dd14d370504c67bf877dc6d53a4bfc.camel@groupe-cyllene.com> <1651063060.qfgje4ssa0.astroid@nora.none> In-Reply-To: <1651063060.qfgje4ssa0.astroid@nora.none> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: user-agent: Evolution 3.44.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-office365-filtering-correlation-id: 87fdd890-e13b-45a3-015b-08da284e7dfe x-ms-traffictypediagnostic: MR1P264MB2932:EE_ x-microsoft-antispam-prvs: x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: RVE2EAQIGRGq6zrfEKlO6xOow9I/Rky4SOEL5RbYfsX0QzoVSdCiKAj4kd9bK/q8q+e0BV8DMPaC6DwSBDbfz8InKge8TC52iYU7pAvPgoRDVrXlvMOGqH+nqL922RGL1p9g+ef/7jCMryJ2bJQIjI92pI/Xglbx9JAp+j2PoZBxK5ziDgM/M9/cEYMFklDGQr/Xd+Hp3U3pqmyX7Pb5R8lNn0IxPsZVfMDKU6knEYuiiCnqX+RX/EMCS2dBedbGW770z7a1XI/KKvuCT5aLjySiFZ/i6AsJcZMi+hGuI5EgGZc6a5BvIfXEdj/UxVfAJ2B39M3DZSnvZqFAY5965SD/zHICY2IHevrn21Jed2Zm/MI3k2swwDuzQlmve20EUbZ5EuorotdbWoKFxfHs/Hg+wzvfwzQc6d2huqgy9MDtc6V1NdnlefnYPzFlJ98IOcqTqllfQ3Uo4pETRFL/M6NNvkME6icjw4UuduGRx8rGsFxEvHJ1HEdna/wEeFFYh5jtOOJcjIBVRxE4NU3uYPC+TE2xqlQPquexRIHJTcVYy6TkGf1Yy2cWQOPw5pQfkB8+FXjW1SvTwEKdUfTs38CSNNhUWbNfp8c0rJpC7ZneTCdTE/5Xz0d/pY6wLMR8QzMskIqm64Nq4i2kuK3M4hhQ8pZI/yg5i0VzCWy1X1GuywYslCFircm26WGK9tPrhUs55MA97ZtaAu1hAiVwW5GjopnPqA8tnTkaJqd8jIG2kJkGC2zKDoDbn8hyBB2gegUJbElibbFo3yY26XVhbFx+xXnoO91MRMzOsXFROuU= 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:(13230001)(4636009)(346002)(39840400004)(396003)(136003)(366004)(376002)(5660300002)(316002)(6512007)(26005)(83380400001)(86362001)(64756008)(966005)(110136005)(8936002)(66574015)(6506007)(186003)(2616005)(36756003)(122000001)(508600001)(38100700002)(2906002)(38070700005)(6486002)(71200400001)(4326008)(8676002)(76116006)(66946007)(66476007)(66556008)(91956017)(66446008); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 2 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?NDJ3L2ZuNmhhczJjRE9VQ29Ea3ZJc3hZMGkySThzT2dEZU1ROHJBSlVkQm1O?= =?utf-8?B?enlaRjB2dS9yL05lSFBQd3pqR0JlZVZ6VDVTaEZmZ0dGdkVzZTAvcE9Dbi9D?= =?utf-8?B?SUsySWdFbnp3Zi9GSGhzSStBNnNGQUdVTW5WVWx4VXIzSTFLTjU3RWREOWlZ?= =?utf-8?B?VlQ0WVpHaGpDam5zWW5wVkdKWjh3aEV6eFdHY21tK1lLM3RXUUJrdVcvc1BG?= =?utf-8?B?WnE0RGVRY1VWQVZQdHZ4R0Z4dksvbllqMjZNTTQwN1E0cUZPUTFHcTk4ZldV?= =?utf-8?B?TmZpMEdYQmdGQlkzWktlOHRDckUzZHBrNDVRSkV0blVxY0NMd2MyZmRxUyt6?= =?utf-8?B?TGZBWFNZWHI5ZVZaNDMzK2t5bkhVZGtCY1JjeE00Q29ZNU5QbWJCRVBZRElX?= =?utf-8?B?eExCYVc2eUk5M0NVK3ZRa1FiaFp3MGpNakNTVHIvYlhKNUxrbm83OG5QN1Zk?= =?utf-8?B?WDlScE53MHN0MlhoYkxXYk5raERnQmhhMlRJOUxsSFNsamJFcm5JZmlJT01B?= =?utf-8?B?TFY0cnZjTWkwSVFuZWp4QjdWN2NGNFQ3a3pvQ3dJNUFrWGE2MWpPVmRNSjQ1?= =?utf-8?B?RHgya2tHdklzcE9qcE8yK3B6ZEgxWTdsUFlsVUZkQzZXU20wTWRoUlp5dDR5?= =?utf-8?B?VzNkNUFycjNLdzhMaE1WaEtZWDVPZGtSRjAyUnFjcUE3QjFBd3VzN0NvalZC?= =?utf-8?B?RWJ0UUFKYllDN1VWbmtJd2dxRE1tMVZtcEpvbVBrQTdQU2svaFNnQTR5ZTJW?= =?utf-8?B?a3c3aXFmNno1bnFONXlDNkhrYkRJZEF0OWJkN0VJbnErVkwxK0lSNUV6dkFj?= =?utf-8?B?cmxMaUJxTG9RQmxMVEx0a1FtUUxGZUpCNmZtRW5JbWVCVThEYzA4cmE5aThG?= =?utf-8?B?OGpjb3JWV0p0MnNzSXRTZzJwR1dtdGFOM3pyL0sxU0k5cEN4N1NHRy9yeXRy?= =?utf-8?B?c0ZxOC9sWlhKOHg2bk8yUGFZbG9SOU5kdHNkbnhBU0FYblFIc3ptOWcxSkdI?= =?utf-8?B?VHBBT3VhTi9MVjcrakpQaFhvYlkyOEY1SFJLSlE5RS8vNEZWWWcxVnYxM05N?= =?utf-8?B?VGNHMjdoaHBZbVIzMDdhQlB0QVkxTU5RelRTa0MyUWFrQnllWENLeDh3WGpE?= =?utf-8?B?emN4TThZQlhwSXQvd2FZU3BiUVBYNXdBYWlDOTFLaW9HWGx3TFVyYW5qKzRy?= =?utf-8?B?d09UdEpERUdmNTdHUGpuQ0NIdDlzVUJkajZDNUZFQUNzSHYrbE1VU1NsZSt0?= =?utf-8?B?aTR5SXQ3eXB5NjkrQjZBcVNQRE1RK1g1UDRnem9sUm44VFBvTm0wKzBlblox?= =?utf-8?B?RnU4MG81Um5EUUdQcXVEenp2REZoa0xnZmNMT1Q1SU54TUF6S2FNWSsxOVZi?= =?utf-8?B?Unc5WXlLMnRyWU9qdlRBajV5d09yditGZ05kdW9vR1RNbzhnYzM2ZmRpcVYw?= =?utf-8?B?ampRLytaMWc4WmRtaGhjV0c0MU9FV0ZvY0RKOVZJU2xJT3BLVStERDFWMGtx?= =?utf-8?B?ZlpzWHJ6aVlmRkIxN1QrS2Y0L3Z5ZWl1Vm1BZ2tGYWJtZ2VtZm1lOXNBeTRN?= =?utf-8?B?NFN2V0ZXMm9HSTlhQUE2UVBMcjdvQjhoeTlhdytrN2hnaWVyQkN4dmc4dHAx?= =?utf-8?B?c1dWMm1VdVpjTEV2aEdraVd4OW5hc2dQemtma2dtUmo0R0J1akVTNGw0bDRn?= =?utf-8?B?MFg5dkRHUW4xZVdnc2NjTkNFdlFSTDJpaHVick9wS2ZPbVY0ZDJPRTVUTWla?= =?utf-8?B?aEhIcW0wQ3NxRTRKRHZ0QktiZEJEUzh0d3pzRTc5VEZPa3JkeU9Ea1dpZHNZ?= =?utf-8?B?N3ZXR0o0Wi9EdDdSR0ltQzNwRDdpeVNoQXUzWjFRTFdJbm9HOFlQbldoeFV4?= =?utf-8?B?SHNaelhCT1lHMnNTRXZYM2IzQjdkU1c1V3haM0Y1ZmVXUGhEWnVaTDNGVHpX?= =?utf-8?B?SlBuRXZoSG9MV1M2UG03bjNYTXJxWGN3UG44TFprSjQxM0tqUmxZUThHdEl6?= =?utf-8?B?OVpUZ1NVL0dBVjhIN0pnZnJSeWFLTUlHUHpjd3hDMjdxV2pHMW5PNWs3YWhm?= =?utf-8?B?cXQvV3ovWHREQnc0VEVLUmxSK0c2Nk5EQjg2YUZZeEprSnlCMXp5d2lWek1X?= =?utf-8?B?Q0M1akdoL2FKeklobHZRM2VCYTJnU25JeDJicFlOMUFaL0FpWTlacjdzZy9t?= =?utf-8?B?Tk03OWxsa1dwbUpKMzR5aDVQVnNHRjdQbFY3dmVBdlhGVGZTelhQbkVOZkZ4?= =?utf-8?B?THNaOTBiSWhweWpFMGtMbnNWUVNYYmQzQUxqOTJ4aGZ4enErdnl4NFlPWTNi?= =?utf-8?B?TkdIWUpFb3h2U3Q4RFNPM051RUJMTHhCVTlQYjE2VXpIZldBQStFNkJ0ZWFW?= =?utf-8?Q?DiS9wQQwNoXMdl2BZzfz7A0YCGzun2jLXJkwuTLwqjv6W?= x-ms-exchange-antispam-messagedata-1: rt0QDb87e34L/g== Content-Type: text/plain; charset="utf-8" Content-ID: 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: 87fdd890-e13b-45a3-015b-08da284e7dfe X-MS-Exchange-CrossTenant-originalarrivaltime: 27 Apr 2022 13:04:41.2548 (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: QiAOL6WwOC9chNjRwgV5q33YrAv/Dsqg+rY/naFqPO+EDtHToQ1iW7HjkDnQamZzCrNWxST9R56hxbG0cawrvQActGCRYHSXOUiqIP0iZY9Y8fLozg2McTV5Cs7/Jwn2 X-MS-Exchange-Transport-CrossTenantHeadersStamped: MR1P264MB2932 X-OriginatorOrg: groupe-cyllene.com X-SPAM-LEVEL: Spam detection results: 0 AWL -0.144 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 POISEN_SPAM_PILL 0.1 Meta: its spam POISEN_SPAM_PILL_1 0.1 random spam to be learned in bayes POISEN_SPAM_PILL_3 0.1 random spam to be learned in bayes 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] api2: network: anybridge: re-add regular bridges 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, 27 Apr 2022 13:04:45 -0000 DQoNCg0KDQo+IGdpdmVuIHRoYXQNCj4gLSB3ZSBjYW4ndCByZXF1aXJlIHNvbWUgbmV3IEFDTCBw YXRoL3ByaXYgZm9yIHJlZ3VsYXIgYnJpZGdlcyB1bnRpbA0KPiB0aGUgDQo+ICAgbmV4dCBtYWpv ciByZWxlYXNlIChhcyB0aGF0IHdvdWxkIGJlIHF1aXRlIHRoZSBicmVha2luZyBjaGFuZ2UgOykp DQo+IC0gcmVtb3ZpbmcgYWNjZXNzIHRvIHRoZSBsYXN0IFZORVQgd291bGQgc3VkZGVubHkgbWFr ZSBhbGwgcmVndWxhciANCj4gICBicmlkZ2VzIGF2YWlsYWJsZSAoYWdhaW4pIHdpdGggeW91ciBv cmlnaW5hbCBwYXRjaCwgd2hpY2ggaXMNCj4gc3RyYW5nZSANCj4gICBiZWhhdmlvdXIgZm9yIGFu IEFDTCAocmVtb3ZpbmcgYSBwb3NpdGl2ZSBBQ0wgc2hvdWxkbid0IGdpdmUgbWUNCj4gbW9yZSAN Cj4gICBhY2Nlc3MgOykpDQo+IC0gd2l0aCB0aGUgb3JpZ2luYWwgcGF0Y2ggaXQncyBpbXBvc3Np YmxlIHRvIHNheSAidXNlciBGT08gY2FuIHBsYXkgDQo+ICAgYXJvdW5kIHdpdGggU0ROIGJ1dCBh bHNvIHVzZSByZWd1bGFyIGJyaWRnZXMiIHdpdGhvdXQgJ2Zha2luZycgQUNMcw0KPiAgIGZvciB2 bmV0cyB0aGF0IGFyZW4ndCBhY3R1YWxseSB2bmV0cywgYnV0IHJlZ3VsYXIgYnJpZGdlcw0KPiAN Cg0KeWVzLCBJIGtub3duIGl0J3MgYSBiaWcgc3RyYW5nZS91Z2x5Lg0KDQpJIGhhdmUgdHJpZWQg dG8gZmluZCBhIHdheSB0byBoaWRlIHZtYnJYIGJlY2F1c2UgbXVsdGlwbGVzIHVzZXJzIGhhdmUN CnJlcXVlc3RlZCBpdC4NCmh0dHBzOi8vZm9ydW0ucHJveG1veC5jb20vdGhyZWFkcy9zZG4tZ3Jv dXAtcG9vbC1wZXJtaXNzaW9ucy45Mzg3Mi8NCg0KQnV0IGl0J3Mgc3RpbGwgYmV0YSwgc28sIHdl IGNhbiB3YWl0IGZvciBuZXh0IG1ham9yIHJlbGVhc2UgdG8gaGF2ZSBhDQpjbGVhbiBpbXBsZW1l bnRhdGlvbi4NCg0KPkkgdGhpbmsgdGhlIGN1cnJlbnQgdmFyaWFudCBpcyB3aGF0IHdlIGNhbiBo YXZlIGZvciB0aGUgdGltZSBiZWluZyAtDQo+IGFuZCANCj4gdGhlbiB3aXRoIDguMCBlaXRoZXIg c2F5DQo+IC0gJ3JlZ3VsYXIgYnJpZGdlcyBhbHNvIHJlcXVpcmUgRk9PIG9uIC9zZG4vdm5ldHMv dm1iclgnIChpZGVudGljYWwNCj4gdG8gDQo+ICAgdm5ldHMsIGJ1dCBhIGJpdCB1Z2x5IGFzIHRo ZSBBQ0wgcGF0aCBpcyB0ZWNobmljYWxseSAnd3JvbmcnKQ0KPiAtICdyZWd1bGFyIGJyaWRnZXMg cmVxdWlyZSBGT08gb24gL25ldHdvcmsvYnJpZGdlL3ZtYnJYJyAobGlrZSB2bmV0cywNCj4gICBi dXQgZGlmZmVyZW50IEFDTCBwYXRoL25hbWVzcGFjZSwgcHJvYmFibHkgd2l0aCBzb21lIGhlbHBl ciB0aGF0DQo+ICdkb2VzIA0KPiAgIHRoZSByaWdodCB0aGluZycgaW4gcGxhY2VzIHdoZXJlIHdl IGRvbid0IGNhcmUgd2hhdCBraW5kIGl0IGlzKQ0KPiBhbmQgdGhlbiBmaWx0ZXIgaGVyZSBhbmQg aW4gb3RoZXIgcGxhY2VzIGFjY29yZGluZ2x5Pw0KPiANCg0KWWVzLCB0aGF0J3Mgc2VlbSBmaW5l Lg0KSSBjb3VsZCBiZSBncmVhdCB0byBoYXZlIGEgdHJ1ZSBhY2wgbWFuYWdlbWVudCB0byB2bWJy WCA6KQ0KDQoNCkxlIG1lcmNyZWRpIDI3IGF2cmlsIDIwMjIgw6AgMTQ6NDUgKzAyMDAsIEZhYmlh biBHcsO8bmJpY2hsZXIgYSDDqWNyaXTCoDoNCj4gT24gQXByaWwgMjcsIDIwMjIgMjozMiBwbSwg REVSVU1JRVIsIEFsZXhhbmRyZSB3cm90ZToNCj4gPiBIaSBGYWJpYW4NCj4gPiBMZSBtZXJjcmVk aSAyNyBhdnJpbCAyMDIyIMOgIDEzOjM2ICswMjAwLCBGYWJpYW4gR3LDvG5iaWNobGVyIGENCj4g PiDDqWNyaXTCoDoNCj4gPiA+IGNvbW1pdCAwNTJmYmIyYTRkMWJkZWI0OTBiMmUzYjY3Y2Q3NTU1 ZTQ2MGViZTkzIGludHJvZHVjZWQNCj4gPiA+IHBlcm1pc3Npb24NCj4gPiA+ID4gY2hlY2tzIGhl cmUgdGhhdCBjYXVzZWQgYWxsIHJlZ3VsYXIgYnJpZGdlcyB0byBiZSByZW1vdmVkIGZyb20NCj4g PiA+ID4gdGhlDQo+ID4gPiA+IHJldHVybmVkIGxpc3QgYXMgc29vbiBhcyB0aGUgU0ROIHBhY2th Z2UgaXMgaW5zdGFsbGVkLCB1bmxlc3MNCj4gPiA+ID4gdGhlDQo+ID4gPiA+IHVzZXINCj4gPiA+ ID4gaXMgcm9vdEBwYW0gb3IgdGhlcmUgZXhpc3RzIGEgVk5FVCB3aXRoIHRoZSBzYW1lIElELg0K PiA+ID4gPiANCj4gPiBtbW0sIHRoaXMgaXMgdW5leHBlY3RlZC4NCj4gPiB3aXRoIG15IG9yaWdp bmFsIHBhdGNoIDoNCj4gPiANCj4gPiBpZiB1c2VyIGRvbid0IGhhdmUgYW55IHBlcm1pc3Npb25z IG9uIHZuZXRzOg0KPiA+IMKgIC0gYWxsIHZtYnJYIGJyaWRnZXMgYXJlIGRpc3BsYXllZA0KPiA+ IMKgIC0gbm8gdm5ldHMgaXMgZGlzcGxheWVkDQo+ID4gDQo+ID4gaWYgdXNlciBoYXZlIGEgcGVy bWlzc2lvbiBvbiBhdCBsZWFzdCAxdm5ldDoNCj4gPiDCoCAtIHZtYnJYIGJyaWRnZSBhcmUgbm8g bW9yZSBkaXNwbGF5ZWTCoCAodW50aWUgeW91IGFkZCBhIHNwZWNpZmljDQo+ID4gcGVybWlzc2lv bnMgd2l0aCAvc2RuL3ZuZXRzL3ZtYnJYKQ0KPiA+IMKgIC0gb25seSB2bmV0IHdpdGggcGVybWlz c2lvbnMgYXJlIGRpc3BsYXllZA0KPiA+IA0KPiA+IA0KPiA+IEkgZGlkbicgc2VlLCBidXQgVGhv bWFzIGhhdmUgcmV3b3JrZWQgaXQ6DQo+ID4gaHR0cHM6Ly9hbnRpcGhpc2hpbmcuY2V0c2kuZnIv cHJveHkvdjM/aT1TSFYwWTFKWlFqTnlja0pGYTNkVVFpYmxoRjVZY1VxdGlXQ2FLX3JpMGtrJnI9 VDBobk1sVXlWRWd3Tm1sbWRIYzFOUXFlVFExcExRVk5uNFVQTEpuMlc2ZTlIaDUwZXBIeGN4SkFH Q3JJSHZLQjFzb3VoWlhCMjY1YlNreWRFZk51UWcmZj1WM3AwZUZsUU9VWjRjemgyZW5wSlM3MjlC OU13RVY4SnhIZWVOUEh5ekVNSDdmQmtCM0VVRHowUFVLU3NyZzRQJnU9aHR0cHMlM0EvL2dpdC5w cm94bW94LmNvbS8lM0ZwJTNEcHZlLW1hbmFnZXIuZ2l0JTNCYSUzRGNvbW1pdCUzQmglM0Q2NDBj MGIyNjg5MWM0MDhkMDQ1NmMzNTViMzcyNGMxYmUxOGNjNzVmJms9WlZkMA0KPiA+IA0KPiA+IGFu ZCB0aGUgYmVoYXZpb3VyIHNlZW0gdG8gYmUgZGlmZmVyZW50Og0KPiA+IA0KPiA+IGlmIHVzZXIg ZG9uJ3QgaGF2ZSBhbnkgcGVybWlzc2lvbnMgb24gdm5ldHM6DQo+ID4gwqAgLSBubyB2bWJyWCBk aXNwbGF5ZWTCoMKgIC0tLS0+IGRpZmZlcmVudCBiZWhhdmlvdXINCj4gPiDCoCAtIG5vIHZuZXRz IGlzIGRpc3BsYXllZA0KPiA+IA0KPiA+IGlmIHVzZXIgaGF2ZSBhIHBlcm1pc3Npb24gb24gYXQg bGVhc3QgMXZuZXQ6DQo+ID4gwqAgLSB2bWJyWCBicmlkZ2UgYXJlIG5vIG1vcmUgZGlzcGxheWVk wqAgKHVudGlsZSB5b3UgYWRkIGEgc3BlY2lmaWMNCj4gPiBwZXJtaXNzaW9ucyB3aXRoIC9zZG4v dm5ldHMvdm1iclgpDQo+ID4gwqAgLSBvbmx5IHZuZXQgd2l0aCBwZXJtaXNzaW9ucyBhcmUgZGlz cGxheWVkDQo+ID4gDQo+ID4gDQo+ID4gd2l0aCB5b3VyIHBhdGNoLCBpdCBzZWVtIHRvIGJlIGRp ZmZlcmVudCB0b286DQo+ID4gDQo+ID4gaWYgdXNlciBkb24ndCBoYXZlIGFueSBwZXJtaXNzaW9u cyBvbiB2bmV0czoNCj4gPiDCoCAtIHZtYnJYIGRpc3BsYXllZMKgIA0KPiA+IMKgIC0gbm8gdm5l dHMgaXMgZGlzcGxheWVkDQo+ID4gDQo+ID4gaWYgdXNlciBoYXZlIGEgcGVybWlzc2lvbiBvbiBh dCBsZWFzdCAxdm5ldDoNCj4gPiDCoCAtIHZtYnJYIGJyaWdlIGFyZSBzdGlsbCBkaXNwbGF5ZWQg LS0tLT4gZGlmZmVyZW50IGJlaGF2aW91cg0KPiA+IMKgIC0gb25seSB2bmV0IHdpdGggcGVybWlz c2lvbnMgYXJlIGRpc3BsYXllZA0KPiANCj4geWVhaCB0aGF0J3MgdHJ1ZS4gSSBtaXNzZWQgd2hp Y2ggY29tbWl0IHdhcyB0aGUgY3VscHJpdCAocmVseWluZyBvbg0KPiB0aGUgDQo+IGNvbW1pdCBt ZXNzYWdlcykNCj4gDQo+IGdpdmVuIHRoYXQNCj4gLSB3ZSBjYW4ndCByZXF1aXJlIHNvbWUgbmV3 IEFDTCBwYXRoL3ByaXYgZm9yIHJlZ3VsYXIgYnJpZGdlcyB1bnRpbA0KPiB0aGUgDQo+IMKgIG5l eHQgbWFqb3IgcmVsZWFzZSAoYXMgdGhhdCB3b3VsZCBiZSBxdWl0ZSB0aGUgYnJlYWtpbmcgY2hh bmdlIDspKQ0KPiAtIHJlbW92aW5nIGFjY2VzcyB0byB0aGUgbGFzdCBWTkVUIHdvdWxkIHN1ZGRl bmx5IG1ha2UgYWxsIHJlZ3VsYXIgDQo+IMKgIGJyaWRnZXMgYXZhaWxhYmxlIChhZ2Fpbikgd2l0 aCB5b3VyIG9yaWdpbmFsIHBhdGNoLCB3aGljaCBpcw0KPiBzdHJhbmdlIA0KPiDCoCBiZWhhdmlv dXIgZm9yIGFuIEFDTCAocmVtb3ZpbmcgYSBwb3NpdGl2ZSBBQ0wgc2hvdWxkbid0IGdpdmUgbWUN Cj4gbW9yZSANCj4gwqAgYWNjZXNzIDspKQ0KPiAtIHdpdGggdGhlIG9yaWdpbmFsIHBhdGNoIGl0 J3MgaW1wb3NzaWJsZSB0byBzYXkgInVzZXIgRk9PIGNhbiBwbGF5IA0KPiDCoCBhcm91bmQgd2l0 aCBTRE4gYnV0IGFsc28gdXNlIHJlZ3VsYXIgYnJpZGdlcyIgd2l0aG91dCAnZmFraW5nJyBBQ0xz DQo+IMKgIGZvciB2bmV0cyB0aGF0IGFyZW4ndCBhY3R1YWxseSB2bmV0cywgYnV0IHJlZ3VsYXIg YnJpZGdlcw0KPiANCj4gSSB0aGluayB0aGUgY3VycmVudCB2YXJpYW50IGlzIHdoYXQgd2UgY2Fu IGhhdmUgZm9yIHRoZSB0aW1lIGJlaW5nIC0NCj4gYW5kIA0KPiB0aGVuIHdpdGggOC4wIGVpdGhl ciBzYXkNCj4gLSAncmVndWxhciBicmlkZ2VzIGFsc28gcmVxdWlyZSBGT08gb24gL3Nkbi92bmV0 cy92bWJyWCcgKGlkZW50aWNhbA0KPiB0byANCj4gwqAgdm5ldHMsIGJ1dCBhIGJpdCB1Z2x5IGFz IHRoZSBBQ0wgcGF0aCBpcyB0ZWNobmljYWxseSAnd3JvbmcnKQ0KPiAtICdyZWd1bGFyIGJyaWRn ZXMgcmVxdWlyZSBGT08gb24gL25ldHdvcmsvYnJpZGdlL3ZtYnJYJyAobGlrZSB2bmV0cywNCj4g wqAgYnV0IGRpZmZlcmVudCBBQ0wgcGF0aC9uYW1lc3BhY2UsIHByb2JhYmx5IHdpdGggc29tZSBo ZWxwZXIgdGhhdA0KPiAnZG9lcyANCj4gwqAgdGhlIHJpZ2h0IHRoaW5nJyBpbiBwbGFjZXMgd2hl cmUgd2UgZG9uJ3QgY2FyZSB3aGF0IGtpbmQgaXQgaXMpDQo+IGFuZCB0aGVuIGZpbHRlciBoZXJl IGFuZCBpbiBvdGhlciBwbGFjZXMgYWNjb3JkaW5nbHk/DQo+IA0KDQo=