From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mx0a-00069f02.pphosted.com (mx0a-00069f02.pphosted.com [205.220.165.32]) by sourceware.org (Postfix) with ESMTPS id 2135E383D80F for ; Wed, 11 Aug 2021 13:54:36 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 2135E383D80F Received: from pps.filterd (m0246629.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.16.0.43/8.16.0.43) with SMTP id 17BDkbtm000865; Wed, 11 Aug 2021 13:54:33 GMT Received: from aserp3020.oracle.com (aserp3020.oracle.com [141.146.126.70]) by mx0b-00069f02.pphosted.com with ESMTP id 3abt44arb8-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Wed, 11 Aug 2021 13:54:33 +0000 Received: from pps.filterd (aserp3020.oracle.com [127.0.0.1]) by aserp3020.oracle.com (8.16.0.42/8.16.0.42) with SMTP id 17BDkRD5180199; Wed, 11 Aug 2021 13:54:32 GMT Received: from nam12-dm6-obe.outbound.protection.outlook.com (mail-dm6nam12lp2175.outbound.protection.outlook.com [104.47.59.175]) by aserp3020.oracle.com with ESMTP id 3accra2aau-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Wed, 11 Aug 2021 13:54:32 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=QbTyqmovmLmvKDQLrS4uV2GTvJJekLu4xcC+kn4SRjBl/exv234BEwmwrzZEv2zfpdMHdwdZ9mpJRBG8U0itkeitZyQHTNfg5K9WrrGDOqgkif4P1UzFsGm9r3OJ/XLQhDqNia/d6K26S48DUPyKyL1LKi1mMvF/zJkOSXBCx2f9WPMsgZQRv8qMlZH37E0d5Utetk8hSE9deyMCZ5XQOkAbQjENbOqSdhs59YAFdu/hzHdhDMi4Kqdwu7D/B4zSeWr90v9y22Nc2A4ZJYW33wHaop8zjN2oG2Cp7PfEGpeGCbEp484fWHjtoHZinj52IgnFJR/oqyrM0zxh9SefVA== 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-SenderADCheck; bh=UkKqp9bAMleivt+bIbvMrNz3ZrchhtNZoT8/DRYvDxo=; b=OGJCMSmfTS3YcH3CTYAgbkzJHfKrMr+MQyGpsgN6OQHLKvbwXy95nK+5ZO9N5xpZ/ubIs9lrmbffIH3Fgt8lAIbHFiBrevwI2MeZfo6Kc4y3vb05MEwvRUgcg7pXHF5rAGAPLQ4UtOLe46+smGXBrbEEDFol18lqzbeUWaJFlVl+ZDW1aHdE6fV9EyfsI9iuiq4JxjARAwgyU3IxnMO3TUpXtyAvKjAxU5q5AoYcaQqoIgDPm+AJvbe0unPIIdNezaXlo/+6XhmKjDA1xHgx31hzjExsIvVDkrBL2GiKtKfRY5dQLkBEOA4WyKTmvT3hsiBcGFZsqsAZhCKv1ojPdg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oracle.com; dmarc=pass action=none header.from=oracle.com; dkim=pass header.d=oracle.com; arc=none Received: from CH2PR10MB4344.namprd10.prod.outlook.com (2603:10b6:610:af::19) by CH0PR10MB5020.namprd10.prod.outlook.com (2603:10b6:610:c0::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4394.18; Wed, 11 Aug 2021 13:54:30 +0000 Received: from CH2PR10MB4344.namprd10.prod.outlook.com ([fe80::f463:6b71:2491:d547]) by CH2PR10MB4344.namprd10.prod.outlook.com ([fe80::f463:6b71:2491:d547%9]) with mapi id 15.20.4415.014; Wed, 11 Aug 2021 13:54:30 +0000 From: Qing Zhao To: Richard Biener CC: Jakub Jelinek , Nick Alcock via Gcc-patches , Kees Cook Subject: Re: [patch][version 6] add -ftrivial-auto-var-init and variable attribute "uninitialized" to gcc Thread-Topic: [patch][version 6] add -ftrivial-auto-var-init and variable attribute "uninitialized" to gcc Thread-Index: AQHXgpcfj6SO0Rka1UmU0GU91mFncqtrSzIAgAApjACAAPr8gIAAZYMAgAAKVgCAAAy9gIAABZoAgABR/YCAACR6AIAAkCQAgABtVACAAAEPAIAABLkA Date: Wed, 11 Aug 2021 13:54:30 +0000 Message-ID: References: <52E29277-1403-4755-901A-528116C43FB8@oracle.com> <58ADBC0C-9D44-485B-BB5A-B072664B9C4F@oracle.com> <6FD42B95-F73D-4B75-B83A-BAC4925B1714@oracle.com> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-mailer: Apple Mail (2.3608.120.23.2.7) x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 8b8c00a8-c5b0-4bf8-3b26-08d95ccf8adc x-ms-traffictypediagnostic: CH0PR10MB5020: x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:10000; x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: GLPa+hdtaGKO2mgxvTwZmF1TtajRorRX7tu0rMVcjDluAg+ZjSfT5ZdS7sEgIqxFnLN9lD++GX2V2r0PUcWvvn1FRAKoJB7YCJzZ0APA5E28U7cEON7AGYqkPuL2cQkdM/cUmYlby3CrPwvjpF4TvMCCCdvGCPtbgKMF/BhlArUK1y8N/lyUsPxaIf67TwFhQjroc2URqo0bh7FmStwUiyWUhYpxfBbU4Z/oBEzHIWepfuZXKoy+EXnn23lC8U7LxXSRfzls1wuTsNjx72Clip94YI5vpagSlXA5PMmlwXg6CtvMgDa7dBbQ5HKxcT7H1qavpWByxu9h94wCWKZarSZgLIx6hBux4vBPkTg0bKmFvAye+LBoH//nTpATKLaCyb6eEsPJVj61YUI7QBQiEbS0Lq5WtMSCBYGICaSxENR0T4LqgW5NpQSey4lAqc0jX+sezuCz2TimzSm1+DxHKgU10Tzb3f5Leg/miSj5f5Um4c2QvxlH4J99Edj9uo8UTdlvbUNHT609OaX73u7IyCNbaW78SaXKBqCVoaaEaNpUUfKE8lw+Dz8s7soqi5TjyVZhvM9rFHxGAmHvaa0uQ4Ao2uNqlNC7Q5b68npr+lJvoblHAh8Mbli8prCCAiEvwQMy0QnjYS/0ZVcBEZGFuu9nHBRQD9PXH7ttnY+M++8ptXQM8Fc5ouiz4GxPnvZRKyuG/A+LQ1DUE/gYWeUHbD7gAabEp3o8gklPSbVzqDeuXhOFd/2vQ66UuxaO4BH0JjF70AIL8cI4jbTNiiThAA== x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:CH2PR10MB4344.namprd10.prod.outlook.com; PTR:; CAT:NONE; SFS:(136003)(366004)(346002)(396003)(376002)(39860400002)(186003)(5660300002)(316002)(71200400001)(54906003)(6486002)(6916009)(33656002)(36756003)(8936002)(4326008)(122000001)(38100700002)(2906002)(6512007)(478600001)(91956017)(76116006)(66946007)(66556008)(66574015)(66476007)(64756008)(66446008)(53546011)(6506007)(8676002)(83380400001)(38070700005)(86362001)(2616005)(26005)(44832011)(45980500001)(266184004); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?UTNqWTgxTkZKbnUxK0NFSEZGY1h5cUpCdHdscDZKM3RHMStOcmRpbHhZZHZE?= =?utf-8?B?NVZiU29sNEc4NWpWTVJHWXJNeCtuZktwQ0ptaTg2cXZmRnRTUG5TcDVMNmZI?= =?utf-8?B?OGRHemxhZThCN1RhRFI3aWh6a1QrV3hvOFVNT2dJTVZWSGFxMWhZSWpyK2NN?= =?utf-8?B?aTJuUHlPRlJBbi9IeForb3Axbm9aSUtpaVJ5aHg2c2NJK25TVWY2OC9pU3Bl?= =?utf-8?B?TmZGZSt6Yk9UR2FSWGlUMEU0UTlVVEtnY204OHBQNE54em5DMGpBTkFRN0pV?= =?utf-8?B?YWRSOFIvckUvVkZTbDZLSk85YlI2MXdmRTNTOXJ0cURoYmdpVXdLZTVMNTh6?= =?utf-8?B?bm9sb2NSTG1LVFIvTlZGb21QVVlZSGlLTk1LK21rUzJPNCtvWWtmV2hjeE5y?= =?utf-8?B?V2VNdnZWNHFONDFsVGJpaVNzR1dMVVFFS29lcjZmdVROWWM3WlQzRTlUTTZK?= =?utf-8?B?N0tWNmdQUzJaRkUxclFnQlpjMUlRb3ZPZThOS09wd2VTeE1mMDB5b2UyZ1BY?= =?utf-8?B?Zm5Pc2RNb1ZPV1pkRThQbmxWQzRDeWVtNTk4N1h0MkttNzJ6bVJHVElDUEVF?= =?utf-8?B?cCttKzFoRDVMKzRYVTFEWGE3NjFqdU8xUGVVYzNPakVRMitPYzRibEFjV0s1?= =?utf-8?B?WEQ3a21XbUhvOFJzU0RQZTNkZUNoaUViWW5VKzI2M1gxZFlEU1RheFhZeDhU?= =?utf-8?B?RWR0em01M1RVVDNER2FldGpYdVROZmh6dWgwMjN3L0lzK1FkYkhGTEk3NkJN?= =?utf-8?B?T1E5RTlXd2xFYjJ4bHlxRjhFL1pxZXdmTlRweXJqTWhTZERSdWhuMEtZVzFO?= =?utf-8?B?NVEvVkN0Wi9RVkxZdUgyWUZQUjBPYXB5bzlSa2tmRTVHUjd6aGd1S3krc2Jp?= =?utf-8?B?cWkySDVtelhrc2dxakV3QjE0VUZRZVBWTGxVYnNWd0kwOGVzaEk3OGszUE13?= =?utf-8?B?WkxpbFhGVFlLU25hcy8ybUtDUFIveWtOdkhxSVpqeGM0ODBOVEYzZTFSYUNm?= =?utf-8?B?OGpNdlZ6Q3l0c0Z6YnFjdk8wWERSRTAxS2h3UkM2aVc1WHVBZ294djlVT09D?= =?utf-8?B?MEs0Q2JNeEgzS2tPdzV0T0o1MDlRYk1TbTB5TW1rK25rVzMzS0lPa3VOdStV?= =?utf-8?B?Q2NEQlZkSDIwUWN6TUROelIwNXBXaUZpNit0Nncwa214SzBydW5sVTlibFFp?= =?utf-8?B?TCtMZmh4aHhLcjVFRnVTL0pqWjBBRWE1VzdUTnVFL2lQOWJmRC9yUTFDRWFQ?= =?utf-8?B?MzYzdmVDVEtCbkNQQ2RrSWVpRDNXM2kvUnlMVHlsWEVIYkVZL0FrdlRPamd6?= =?utf-8?B?SmhFVFdSbDVNYnhlY205dzhBTy9FbHJPYUZpZCtWQmFTbWNkdmlhSlZXZk5X?= =?utf-8?B?Z1pzMzJBaE9qb0RsemZCeHRicHhpS01COEIzWWZRb3o4N2tFdnNlRmhIc3F4?= =?utf-8?B?RGR5V1FqclpVUHFnQy9iZ3I3VFlOZGk0ZzZUVnhwWHk3UHBQZnlURmMxYjgv?= =?utf-8?B?WU5PVHJLMU9wUkhYUGpRVG5DWlZnUzl3OWdxN3BRdlVaR2lOV1dnODBQUnE2?= =?utf-8?B?VEhiRzV4V0hPczJNQU1HeUZZelZvR0tWUEx6ZUR1N1ZBR0NqdW1reG54RTdw?= =?utf-8?B?TEZlT0Zsb0NXWVZYVWtRRDNHVGd2OW1YWTlQZjR4eGJ5SGhQSStYTThzcnlY?= =?utf-8?B?cE14Ykdta2xmc1dza0V0R0NEc1pOZ2ZvWU40dE1YU3FqZVdHbE14MUxSOHdB?= =?utf-8?Q?1SHZHmL+bFa582YcprQ9loV1WIv5rhBVQVd3w4K?= x-ms-exchange-transport-forked: True Content-Type: text/plain; charset="utf-8" Content-ID: <6A9BE4293D5A4F4A8F3A425143F48FC3@namprd10.prod.outlook.com> Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: CH2PR10MB4344.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 8b8c00a8-c5b0-4bf8-3b26-08d95ccf8adc X-MS-Exchange-CrossTenant-originalarrivaltime: 11 Aug 2021 13:54:30.6563 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 4e2c6054-71cb-48f1-bd6c-3a9705aca71b X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: ra93Zidxjr9T9MxMJtG2lytCkBJjJk8XCnG//hdC34u/ZlfpOibvANLC++MtZNJ+JyGH0lJlonrCjKjX/A/WMQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH0PR10MB5020 X-Proofpoint-Virus-Version: vendor=nai engine=6200 definitions=10072 signatures=668682 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 suspectscore=0 mlxlogscore=999 malwarescore=0 adultscore=0 spamscore=0 bulkscore=0 mlxscore=0 phishscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2107140000 definitions=main-2108110093 X-Proofpoint-ORIG-GUID: jUHNAjG0JnSl8X2_LMtXvtioM6lr10Yo X-Proofpoint-GUID: jUHNAjG0JnSl8X2_LMtXvtioM6lr10Yo X-Spam-Status: No, score=-10.5 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, GIT_PATCH_0, RCVD_IN_DNSWL_LOW, RCVD_IN_MSPIKE_BL, RCVD_IN_MSPIKE_L3, SPF_HELO_NONE, SPF_NONE, TXREP autolearn=ham autolearn_force=no version=3.4.4 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on server2.sourceware.org X-BeenThere: gcc-patches@gcc.gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gcc-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 11 Aug 2021 13:54:47 -0000 DQoNCj4gT24gQXVnIDExLCAyMDIxLCBhdCA4OjM3IEFNLCBSaWNoYXJkIEJpZW5lciA8cmd1ZW50 aGVyQHN1c2UuZGU+IHdyb3RlOg0KPiANCj4gT24gV2VkLCAxMSBBdWcgMjAyMSwgUWluZyBaaGFv IHdyb3RlOg0KPiANCj4+IA0KPj4gDQo+Pj4gT24gQXVnIDExLCAyMDIxLCBhdCAyOjAyIEFNLCBS aWNoYXJkIEJpZW5lciA8cmd1ZW50aGVyQHN1c2UuZGU+IHdyb3RlOg0KPj4+IA0KPj4+IE9uIFR1 ZSwgMTAgQXVnIDIwMjEsIFFpbmcgWmhhbyB3cm90ZToNCj4+PiANCj4+Pj4gDQo+Pj4+IA0KPj4+ Pj4gT24gQXVnIDEwLCAyMDIxLCBhdCAzOjE2IFBNLCBRaW5nIFpoYW8gdmlhIEdjYy1wYXRjaGVz IDxnY2MtcGF0Y2hlc0BnY2MuZ251Lm9yZz4gd3JvdGU6DQo+Pj4+PiANCj4+Pj4+IEhpLCBSaWNo YXJkLA0KPj4+Pj4gDQo+Pj4+Pj4gT24gQXVnIDEwLCAyMDIxLCBhdCAxMDoyMiBBTSwgUmljaGFy ZCBCaWVuZXIgPHJndWVudGhlckBzdXNlLmRlPiB3cm90ZToNCj4+Pj4+Pj4+IA0KPj4+Pj4+Pj4g RXNwZWNpYWxseSBpbiB0aGUgVkxBIGNhc2UgYnV0IGxpa2VseSBhbHNvIGluIGdlbmVyYWwgKHRo b3VnaCB1bmxpa2VseQ0KPj4+Pj4+Pj4gc2luY2UgdXN1YWxseSB0aGUgcmVjZWl2ZXIgb2YgaW5p dGlhbGl6YXRpb25zIGFyZSBzaW1wbGUgZW5vdWdoKS4gIEknZA0KPj4+Pj4+Pj4gZXhwZWN0IHRo ZSBWTEEgY2FzZSBlbmQgdXAgYXMNCj4+Pj4+Pj4+IA0KPj4+Pj4+Pj4gKnB0cl90b19kZWNsID0g LkRFRkVSUkVEX0lOSVQgKC4uLik7DQo+Pj4+Pj4+PiANCj4+Pj4+Pj4+IHdoZXJlICpwdHJfdG9f ZGVjbCBpcyB0aGUgREVDTF9WQUxVRV9FWFBSIG9mIHRoZSBkZWNsLg0KPj4+Pj4+PiANCj4+Pj4+ Pj4gU28sIGZvciB0aGUgZm9sbG93aW5nIHNtYWxsIHRlc3RpbmcgY2FzZToNCj4+Pj4+Pj4gDQo+ Pj4+Pj4+ID09PT0NCj4+Pj4+Pj4gZXh0ZXJuIHZvaWQgYmFyIChpbnQpOw0KPj4+Pj4+PiANCj4+ Pj4+Pj4gdm9pZCBmb28oaW50IG4pDQo+Pj4+Pj4+IHsNCj4+Pj4+Pj4gaW50IGFycltuXTsNCj4+ Pj4+Pj4gYmFyIChhcnJbMl0pOw0KPj4+Pj4+PiByZXR1cm47DQo+Pj4+Pj4+IH0NCj4+Pj4+Pj4g PT09PT0NCj4+Pj4+Pj4gDQo+Pj4+Pj4+IElmIEkgY29tcGlsZSBpdCB3aXRoIC1mdHJpdmlhbC1h dXRvLXZhci1pbml0PXplcm8gLWZkdW1wLXRyZWUtZ2ltcGxlIC1TIC1vIGF1dG8taW5pdC0xMS5z IC1mZHVtcC1ydGwtZXhwYW5kLCB0aGUgKi5naW1wbGUgZHVtcCBpczoNCj4+Pj4+Pj4gDQo+Pj4+ Pj4+ID09PT09DQo+Pj4+Pj4+IHZvaWQgZm9vIChpbnQgbikNCj4+Pj4+Pj4gew0KPj4+Pj4+PiBp bnQgbi4wOw0KPj4+Pj4+PiBzaXpldHlwZSBELjE5NTA7DQo+Pj4+Pj4+IGJpdHNpemV0eXBlIEQu MTk1MTsNCj4+Pj4+Pj4gc2l6ZXR5cGUgRC4xOTUyOw0KPj4+Pj4+PiBiaXRzaXpldHlwZSBELjE5 NTM7DQo+Pj4+Pj4+IHNpemV0eXBlIEQuMTk1NDsNCj4+Pj4+Pj4gaW50WzA6RC4xOTUwXSAqIGFy ci4xOw0KPj4+Pj4+PiB2b2lkICogc2F2ZWRfc3RhY2suMjsNCj4+Pj4+Pj4gaW50IGFyclswOkQu MTk1MF0gW3ZhbHVlLWV4cHI6ICphcnIuMV07DQo+Pj4+Pj4+IA0KPj4+Pj4+PiBzYXZlZF9zdGFj ay4yID0gX19idWlsdGluX3N0YWNrX3NhdmUgKCk7DQo+Pj4+Pj4+IHRyeQ0KPj4+Pj4+PiB7DQo+ Pj4+Pj4+ICAgbi4wID0gbjsNCj4+Pj4+Pj4gICBfMSA9IChsb25nIGludCkgbi4wOw0KPj4+Pj4+ PiAgIF8yID0gXzEgKyAtMTsNCj4+Pj4+Pj4gICBfMyA9IChzaXpldHlwZSkgXzI7DQo+Pj4+Pj4+ ICAgRC4xOTUwID0gXzM7DQo+Pj4+Pj4+ICAgXzQgPSAoc2l6ZXR5cGUpIG4uMDsNCj4+Pj4+Pj4g ICBfNSA9IChiaXRzaXpldHlwZSkgXzQ7DQo+Pj4+Pj4+ICAgXzYgPSBfNSAqIDMyOw0KPj4+Pj4+ PiAgIEQuMTk1MSA9IF82Ow0KPj4+Pj4+PiAgIF83ID0gKHNpemV0eXBlKSBuLjA7DQo+Pj4+Pj4+ ICAgXzggPSBfNyAqIDQ7DQo+Pj4+Pj4+ICAgRC4xOTUyID0gXzg7DQo+Pj4+Pj4+ICAgXzkgPSAo c2l6ZXR5cGUpIG4uMDsNCj4+Pj4+Pj4gICBfMTAgPSAoYml0c2l6ZXR5cGUpIF85Ow0KPj4+Pj4+ PiAgIF8xMSA9IF8xMCAqIDMyOw0KPj4+Pj4+PiAgIEQuMTk1MyA9IF8xMTsNCj4+Pj4+Pj4gICBf MTIgPSAoc2l6ZXR5cGUpIG4uMDsNCj4+Pj4+Pj4gICBfMTMgPSBfMTIgKiA0Ow0KPj4+Pj4+PiAg IEQuMTk1NCA9IF8xMzsNCj4+Pj4+Pj4gICBhcnIuMSA9IF9fYnVpbHRpbl9hbGxvY2Ffd2l0aF9h bGlnbiAoRC4xOTU0LCAzMik7DQo+Pj4+Pj4+ICAgYXJyID0gLkRFRkVSUkVEX0lOSVQgKEQuMTk1 MiwgMiwgMSk7DQo+Pj4+Pj4+ICAgXzE0ID0gKCphcnIuMSlbMl07DQo+Pj4+Pj4+ICAgYmFyIChf MTQpOw0KPj4+Pj4+PiAgIHJldHVybjsNCj4+Pj4+Pj4gfQ0KPj4+Pj4+PiBmaW5hbGx5DQo+Pj4+ Pj4+IHsNCj4+Pj4+Pj4gICBfX2J1aWx0aW5fc3RhY2tfcmVzdG9yZSAoc2F2ZWRfc3RhY2suMik7 DQo+Pj4+Pj4+IH0NCj4+Pj4+Pj4gfQ0KPj4+Pj4+PiANCj4+Pj4+Pj4gPT09PQ0KPj4+Pj4+PiAN Cj4+Pj4+Pj4gWW91IHRoaW5rIHRoYXQgdGhlIGFib3ZlIC5ERUZFRVJFRF9JTklUIGlzIG5vdCBj b3JyZWN0Pw0KPj4+Pj4+PiBJdCBzaG91bGQgYmU6DQo+Pj4+Pj4+IA0KPj4+Pj4+PiAqYXJyLjEg PSAuREVGRVJSRURfSU5JVCAoRC4xOTUyLiAyLCAxKTsNCj4+Pj4+Pj4gDQo+Pj4+Pj4+ID8NCj4+ Pj4+PiANCj4+Pj4+PiBZZXMuDQo+Pj4+Pj4gDQo+Pj4+PiANCj4+Pj4+IEkgdXBkYXRlZCBnaW1w bGlmeS5jIGZvciBWTEEgYW5kIG5vdyBpdCBlbWl0cyB0aGUgY2FsbCB0byAuREVGRVJSRURfSU5J VCBhczoNCj4+Pj4+IA0KPj4+Pj4gICAgYXJyLjEgPSBfX2J1aWx0aW5fYWxsb2NhX3dpdGhfYWxp Z24gKEQuMTk1NCwgMzIpOw0KPj4+Pj4gICAgKmFyci4xID0gLkRFRkVSUkVEX0lOSVQgKEQuMTk1 MiwgMiwgMSk7DQo+Pj4+PiANCj4+Pj4+IEhvd2V2ZXIsIHRoaXMgY2FsbCB0cmlnZ2VyZWQgdGhl IGFzc2VydGlvbiBmYWlsdXJlIGluIHZlcmlmeV9naW1wbGVfY2FsbCBvZiB0cmVlLWNmZy5jIGJl Y2F1c2UgdGhlIExIUyBpcyBub3QgYSB2YWxpZCBMSFMuIA0KPj4+Pj4gVGhlbiBJIG1vZGlmeSB0 cmVlLWNmZy5jIGFzOg0KPj4+Pj4gDQo+Pj4+PiBkaWZmIC0tZ2l0IGEvZ2NjL3RyZWUtY2ZnLmMg Yi9nY2MvdHJlZS1jZmcuYw0KPj4+Pj4gaW5kZXggMzMwZWI3ZGQ4OWJmLi4xODBkNGYxZjllMzIg MTAwNjQ0DQo+Pj4+PiAtLS0gYS9nY2MvdHJlZS1jZmcuYw0KPj4+Pj4gKysrIGIvZ2NjL3RyZWUt Y2ZnLmMNCj4+Pj4+IEBAIC0zMzc1LDcgKzMzNzUsMTEgQEAgdmVyaWZ5X2dpbXBsZV9jYWxsIChn Y2FsbCAqc3RtdCkNCj4+Pj4+ICAgIH0NCj4+Pj4+IA0KPj4+Pj4gdHJlZSBsaHMgPSBnaW1wbGVf Y2FsbF9saHMgKHN0bXQpOw0KPj4+Pj4gKyAgLyogRm9yIC5ERUZFUlJFRF9JTklUIGNhbGwsIHRo ZSBMSFMgbWlnaHQgYmUgYW4gaW5kaXJlY3Rpb24gb2YNCj4+Pj4+ICsgICAgIGEgcG9pbnRlciBm b3IgdGhlIFZMQSB2YXJpYWJsZSwgd2hpY2ggaXMgbm90IGEgdmFsaWQgTEhTIG9mDQo+Pj4+PiAr ICAgICBhIGdpbXBsZSBjYWxsLCB3ZSBpZ25vcmUgdGhlIGFzc3NlcnRpb24gb24gdGhpcy4gICov IA0KPj4+Pj4gaWYgKGxocw0KPj4+Pj4gKyAgICAgICYmICghZ2ltcGxlX2NhbGxfaW50ZXJuYWxf cCAoc3RtdCwgSUZOX0RFRkVSUkVEX0lOSVQpKQ0KPj4+Pj4gICAgICYmICghaXNfZ2ltcGxlX3Jl ZyAobGhzKQ0KPj4+Pj4gICAgICAgICYmICghaXNfZ2ltcGxlX2x2YWx1ZSAobGhzKQ0KPj4+Pj4g ICAgICAgICAgICB8fCB2ZXJpZnlfdHlwZXNfaW5fZ2ltcGxlX3JlZmVyZW5jZQ0KPj4+Pj4gDQo+ Pj4+PiBUaGUgYXNzZXJ0aW9uIGZhaWx1cmUgaW4gdHJlZS1jZmcuYyBnb3QgcmVzb2x2ZWQsIGJ1 dCBJIGdvdCBhbm90aGVyIGFzc2VydGlvbiBmYWlsdXJlIGluIG9wZXJhbmRzX3NjYW5uZXI6Omdl dF9leHByX29wZXJhbmRzICh0cmVlICpleHByX3AsIGludCBmbGFncyksIGxpbmUgOTQ1Og0KPj4+ Pj4gDQo+Pj4+PiA5MzkgICAvKiBJZiB3ZSBnZXQgaGVyZSwgc29tZXRoaW5nIGhhcyBnb25lIHdy b25nLiAgKi8NCj4+Pj4+IDk0MCAgIGlmIChmbGFnX2NoZWNraW5nKQ0KPj4+Pj4gOTQxICAgICB7 DQo+Pj4+PiA5NDIgICAgICAgZnByaW50ZiAoc3RkZXJyLCAidW5oYW5kbGVkIGV4cHJlc3Npb24g aW4gZ2V0X2V4cHJfb3BlcmFuZHMoKTpcbiIpOw0KPj4+Pj4gOTQzICAgICAgIGRlYnVnX3RyZWUg KGV4cHIpOw0KPj4+Pj4gOTQ0ICAgICAgIGZwdXRzICgiXG4iLCBzdGRlcnIpOw0KPj4+Pj4gOTQ1 ICAgICAgIGdjY191bnJlYWNoYWJsZSAoKTsNCj4+Pj4+IDk0NiAgICAgfQ0KPj4+Pj4gDQo+Pj4+ PiBMb29rcyBsaWtlIHRoYXQgIHRoZSBnaW1wbGUgc3RhdGVtZW50Og0KPj4+Pj4gICphcnIuMSA9 IC5ERUZFUlJFRF9JTklUIChELjE5NTIsIDIsIDEpOw0KPj4+Pj4gDQo+Pj4+PiBJcyBub3QgdmFs aWQuICBpLmUsIHRoZSBMSFMgc2hvdWxkIG5vdCBiZSBhbiBpbmRpcmVjdGlvbiB0byBhIHBvaW50 ZXIuIA0KPj4+Pj4gDQo+Pj4+PiBIb3cgdG8gcmVzb2x2ZSB0aGlzIGlzc3VlPw0KPj4+IA0KPj4+ IEl0IHNvdW5kcyBsaWtlIHRoZSBMSFMgaXMgYW4gSU5ESVJFQ1RfUkVGIG1heWJlPyAgVGhhdCBt ZWFucyBpdCdzDQo+Pj4gc3RpbGwgbm90IHByb3Blcmx5IGdpbXBsaWZpZWQgYmVjYXVzZSBpdCBz aG91bGQgZW5kIHVwIGFzIGEgTUVNX1JFRg0KPj4+IGluc3RlYWQuDQo+Pj4gDQo+Pj4gQnV0IEkn bSBqdXN0IGd1ZXNzaW5nIGhlcmUgLi4uIGlmIHlvdSBhcmUgaW4gYSBkZWJ1Z2dlciB0aGVuIHlv dSBjYW4NCj4+PiBpbnZva2UgZGVidWdfdHJlZSAobGhzKSBpbiB0aGUgaW5mZXJpb3IgdG8gc2Vl IHdoYXQgaXQgZXhhY3RseSBpcw0KPj4+IGF0IHRoZSBwb2ludCBvZiB0aGUgZmFpbHVyZS4NCj4+ IA0KPj4gWWVzLCBpdOKAmXMgYW4gSU5ESVJFQ1RfUkVGIGF0IHRoZSBwb2ludCBvZiB0aGUgZmFp bHVyZSBldmVuIHRob3VnaCBJIGFkZGVkIGEgDQo+PiANCj4+IGdpbXBsaWZ5X3Zhcl9vcl9wYXJt X2RlY2wgIChsaHMpIA0KPiANCj4gSSB0aGluayB0aGUgZWFzaWVzdCBpcyB0byBidWlsZCB0aGUg LkRFRkVSUkVEX0lOSVQgYXMgR0VORVJJQw0KPiBhbmQgdXNlIGdpbXBsaWZ5X2Fzc2lnbiAoKSB0 byBnaW1wbGlmeSBhbmQgYWRkIHRoZSByZXN1bHQNCj4gdG8gdGhlIHNlcXVlbmNlLiAgVGh1cywg YnVpbGQgYSBHRU5FUklDIENBTExfRVhQUiBhbmQgdGhlbg0KPiBnaW1wbGlmeV9hc3NpZ24gKGxo cywgY2FsbF9leHByLCBzZXEpOw0KDQpXaGljaCB1dGlsaXR5IHJvdXRpbmUgaXMgdXNlZCB0byBi dWlsZCBhbiBJbnRlcm5hbCBnZW5lcmljIGNhbGw/DQpDdXJyZW50bHksIEkgdXNlZCDigJxnaW1w bGVfYnVpbGRfY2FsbF9pbnRlcm5hbOKAnSB0byBidWlsZCB0aGlzIGludGVybmFsIGdpbXBsZSBj YWxsLg0KDQpGb3IgdGhlIGdlbmVyaWMgY2FsbCwgc2hhbGwgSSB1c2Ug4oCcYnVpbGRfY2FsbF9l eHByX2xvY+KAnSA/IA0KUWluZw0KDQo+IA0KPiBSaWNoYXJkLg0KPiANCj4+IFFpbmcNCj4+IA0K Pj4+IA0KPj4+PiBJIGNhbWUgdXAgd2l0aCB0aGUgZm9sbG93aW5nIHNvbHV0aW9uOg0KPj4+PiAN Cj4+Pj4gRGVmaW5lIHRoZSBJRk5fREVGRVJSRURfSU5JVCBmdW5jdGlvbiBhczoNCj4+Pj4gDQo+ Pj4+ICBMSFMgPSBERUZFUlJFRF9JTklUIChTSVpFIG9mIHRoZSBERUNMLCBJTklUX1RZUEUsIElT X1ZMQSk7DQo+Pj4+IA0KPj4+PiAgaWYgSVNfVkxBIGlzIGZhbHNlLCB0aGUgTEhTIGlzIHRoZSBE RUNMIGl0c2VsZiwNCj4+Pj4gIGlmIElTX1ZMQSBpcyB0cnVlLCB0aGUgTEhTIGlzIHRoZSBwb2lu dGVyIHRvIHRoaXMgREVDTCB0aGF0IGNyZWF0ZWQgYnkNCj4+Pj4gIGdpbXBsaWZ5X3ZsYV9kZWNs Lg0KPj4+PiANCj4+Pj4gDQo+Pj4+IFRoZSBiZW5lZml0IG9mIHRoaXMgc29sdXRpb24gYXJlOg0K Pj4+PiANCj4+Pj4gMS4gUmVzb2x2ZWQgdGhlIGludmFsaWQgSVIgaXNzdWU7DQo+Pj4+IDIuIFRo ZSBjYWxsIHN0bXQgY2FycmllcyB0aGUgYWRkcmVzcyBvZiB0aGUgVkxBIG5hdHVhbGx5Ow0KPj4+ PiANCj4+Pj4gVGhlIGlzc3VlIHdpdGggdGhpcyBzb2x1dGlvbiBpczoNCj4+Pj4gDQo+Pj4+IEZv ciBWTEEgYW5kIG5vbi1WTEEsIHRoZSBMSFMgd2lsbCBiZSBkaWZmZXJlbnQsIA0KPj4+PiANCj4+ Pj4gRG8geW91IHNlZSBhbnkgb3RoZXIgcG90ZW50aWFsIGlzc3VlcyB3aXRoIHRoaXMgc29sdXRp b24/DQo+Pj4+IA0KPj4+PiB0aGFua3MuDQo+Pj4+IA0KPj4+PiBRaW5nDQo+Pj4+IA0KPj4+PiAN Cj4+Pj4gDQo+Pj4+IA0KPj4+PiANCj4+PiANCj4+PiAtLSANCj4+PiBSaWNoYXJkIEJpZW5lciA8 cmd1ZW50aGVyQHN1c2UuZGU+DQo+Pj4gU1VTRSBTb2Z0d2FyZSBTb2x1dGlvbnMgR2VybWFueSBH bWJILCBNYXhmZWxkc3RyYXNzZSA1LCA5MDQwOSBOdWVybmJlcmcsDQo+Pj4gR2VybWFueTsgR0Y6 IEZlbGl4IEltZW5kw7ZyZmZlcjsgSFJCIDM2ODA5IChBRyBOdWVybmJlcmcpDQo+PiANCj4+IA0K PiANCj4gLS0gDQo+IFJpY2hhcmQgQmllbmVyIDxyZ3VlbnRoZXJAc3VzZS5kZT4NCj4gU1VTRSBT b2Z0d2FyZSBTb2x1dGlvbnMgR2VybWFueSBHbWJILCBNYXhmZWxkc3RyYXNzZSA1LCA5MDQwOSBO dWVybmJlcmcsDQo+IEdlcm1hbnk7IEdGOiBGZWxpeCBJbWVuZMO2cmZmZXI7IEhSQiAzNjgwOSAo QUcgTnVlcm5iZXJnKQ0KDQo=