From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from simark.ca by simark.ca with LMTP id IHBHDwKh6mI/8R8AWB0awg (envelope-from ) for ; Wed, 03 Aug 2022 12:23:30 -0400 Received: by simark.ca (Postfix, from userid 112) id 3AED61EA05; Wed, 3 Aug 2022 12:23:30 -0400 (EDT) Authentication-Results: simark.ca; dkim=pass (1024-bit key; secure) header.d=sourceware.org header.i=@sourceware.org header.a=rsa-sha256 header.s=default header.b=FN32/hbZ; dkim-atps=neutral X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on simark.ca X-Spam-Level: X-Spam-Status: No, score=-3.0 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,MAILING_LIST_MULTI,URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.6 Received: from sourceware.org (server2.sourceware.org [8.43.85.97]) (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 simark.ca (Postfix) with ESMTPS id 42B651E9ED for ; Wed, 3 Aug 2022 12:23:29 -0400 (EDT) Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id A73393858010 for ; Wed, 3 Aug 2022 16:23:28 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org A73393858010 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sourceware.org; s=default; t=1659543808; bh=dDIqMFTK+UcHg8p/d8flrxnoi6xYcNUmqTzV271uCo4=; h=To:Subject:Date:References:In-Reply-To:List-Id:List-Unsubscribe: List-Archive:List-Post:List-Help:List-Subscribe:From:Reply-To: From; b=FN32/hbZB331k9JrwLmpu+wTQRQSfDfT6pCFhvBD/y5PhyJ0s6i0itqCroC0g05LD 3FiK43An738Le9qCgNboZ24vCK24h0FLgyp1PkV9EwrH5kI7xrstKfK/gfngx3IoTV hK0BY8Of7+51Il7k+GGfyHvOr0FgT6rdRg/XZg9I= Received: from mx0a-001b2d01.pphosted.com (mx0b-001b2d01.pphosted.com [148.163.158.5]) by sourceware.org (Postfix) with ESMTPS id DE4173858C2D for ; Wed, 3 Aug 2022 16:23:06 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org DE4173858C2D Received: from pps.filterd (m0098420.ppops.net [127.0.0.1]) by mx0b-001b2d01.pphosted.com (8.17.1.5/8.17.1.5) with ESMTP id 273GGwqP004213; Wed, 3 Aug 2022 16:23:00 GMT Received: from nam10-mw2-obe.outbound.protection.outlook.com (mail-mw2nam10lp2106.outbound.protection.outlook.com [104.47.55.106]) by mx0b-001b2d01.pphosted.com (PPS) with ESMTPS id 3hqvd6gg2m-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 03 Aug 2022 16:22:59 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=kfTzRveple296fHTpZK7LCqI3EdadLF7xDttfbzRoxA6XtvdPNwV/SnJUTs3/HASBGVbZZrj8ID0jaTw0tFXFCyn2Mj5NzDzg+hhn2xf2zEcHXLLEug+yVvLjOD48VWS5mhZWx+X6P02Seqii1f6G36c031NCuLCwfBO1C4W4CmlwEBj7C5XWYttUU47Z/r2ZYSdZJJQKPx8pyxjjjHSXHxqx5llGsvwpTFyqKirjWsZQVdGfzJkvHN0uPtpyqIEBiW6FPYuA1/8V5/6ndYVsFxNctHYr4KZq6A3ROCZYruefcj6hkmFfeCw5ozOjw7JOH/S617N+wvEWEHqKpuXig== 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=A2FcZb1ptQqHrz5FbfjUeji6+wtCXmzqMKgx4bW8ERo=; b=KeNM0zex34NqFOBSxO2QdSWoiXfOhBqeafS6UWTdgCRWuJo8MF3h/2OMeYjgDG7ozxt03VJmThv1pNRAX0rx60nYzzegXs+OkHpot8u+vuV7Qi94HnudjSsnh/EOZHEJHuw6lbaW5VqKuhbFeFhsSTusQKlIb8XZgdvZZ+5RZTMnmsPE8olfDXz1NLqfRXCtYMqEsCPtjyslQbrhFoVQ3iMbxR8jC5o6DqQfdhTIgFo94uBZAMqFAiEqVpSP2+BALsIGtwRuyob9vH1WMfjWmWwpcZdrlJTT11OeJzUb+aZaXJEvV+xDQyzx6EBr+a3VUaCDfBZYwqtN6nHxcIURBg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=de.ibm.com; dmarc=pass action=none header.from=de.ibm.com; dkim=pass header.d=de.ibm.com; arc=none Received: from MN2PR15MB3149.namprd15.prod.outlook.com (2603:10b6:208:ea::29) by MW4PR15MB4700.namprd15.prod.outlook.com (2603:10b6:303:10d::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5504.14; Wed, 3 Aug 2022 16:22:55 +0000 Received: from MN2PR15MB3149.namprd15.prod.outlook.com ([fe80::dd9f:b4f3:8704:6847]) by MN2PR15MB3149.namprd15.prod.outlook.com ([fe80::dd9f:b4f3:8704:6847%4]) with mapi id 15.20.5482.016; Wed, 3 Aug 2022 16:22:55 +0000 To: "simark@simark.ca" , Aditya Kamath1 , "simon.marchi@efficios.com" , Sangamesh Mallayya , "gdb-patches@sourceware.org" Subject: Re: [PATCH] Fix-for-multiple-thread-detection-in-AIX.patch Thread-Topic: [PATCH] Fix-for-multiple-thread-detection-in-AIX.patch Thread-Index: AQHYp1VJm2xkJDJXgkKZoEU6MGceoA== Date: Wed, 3 Aug 2022 16:22:54 +0000 Message-ID: <0ce0b76afc5dc40c6837d3ee8332c0630fb397a4.camel@de.ibm.com> References: <49119016e80e58fafea0248887148aca3d1aef8c.camel@de.ibm.com> <841f0915-13a8-bbb3-07e6-54b5ff4293f1@simark.ca> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 61508524-4645-4db3-b507-08da756c6bba x-ms-traffictypediagnostic: MW4PR15MB4700:EE_ x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: DZvI+NOtUewUPooEPgKLBGqKPTHl3Kz9KFfLGX7JQ0dXSUEwD2iEpl0Yzo8ohDDetVJBHrKfNbGXDVDmvU0FtChnv4k5nji5ZFVf7iKoupDFnbkL3KDXXZ9tJsp+//UBW2Q6HY6vmgJCEt36WicKxEcwyLpzdOK/khweQMVGvNMxpC7c+IYAANViwaKo1kRpsEbHcRmXWGVy6JxIJZOuPLLab0bUoN7RqSrpsmQchnA7rz/cCL+PnDPMq4Qslle+u2MD/pVmPYjGnWFRhjJSsItGXsASsuFZQkhXohhriF4ANbG/1OTwZNeNdLPd/Xfh+0bcV12WlZ64OifEA0ecqQOgDGgsWbwTCiALEti6BsFmQHBgF4wO/TljTE3P+Cc/fziQaJFxcDYbL0SraW9j2x6NOQ7s+z8yZ0y615VrpOZoUsFtAUyI8cSzE4ADlbumeKZCUemOMjlgpEg42sfGlCnDMuYluj8AnfjJTPhLrOS52kmFWdh9HAL+w4JtjQOZT6k7/nzp22tAyk9EU7r8/s+MXdn/qxDrvOXGzFT/M65DRpUt6rGaMMocvvytj9XGzx4w/4qrm4UbU05vsgSHIcIWkIwra1Gr2meWHj7ZHCiUK45ejVeJXEfXOTHIGZ3aVHrqB6K8KKvFAUP/Of6AkEF5dQhJWWToqGD57+jqCgdtbpXguFjo15dIpn/0oM17B2uuA3OW+fEQMhWK6Lp3/Uycbp6Z0nVVzDEmazuWoAS+pinEkX2Gr4TbKwXFFCbUPN0eJAhOQr4sB0A9gLXJrJozveNbogQVe4bqbbuxX7M7xwD5qOKg1etgtJ1ECv/G x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:MN2PR15MB3149.namprd15.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230016)(376002)(346002)(396003)(136003)(39860400002)(366004)(478600001)(71200400001)(91956017)(8676002)(110136005)(66476007)(76116006)(66556008)(66446008)(64756008)(5660300002)(6486002)(19627405001)(316002)(8936002)(66946007)(53546011)(2616005)(6506007)(2906002)(6512007)(66574015)(186003)(41300700001)(83380400001)(122000001)(38070700005)(86362001)(38100700002); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?MjNEUWVabys1ZnhNdkoyOTVLWDlJOXIzRFdpZjk0U0JEK3AxVlYrYlYrbXdT?= =?utf-8?B?YkJLd1dFMU81akxlUFRoRFZtR0U4cDdVV0lNRFVzcWJxN0grRC9SYlJFTHlr?= =?utf-8?B?U0tITzlScmFnUFZmVlp5UlNDYXVBeUE3WWlmaTZsSUNqaGtlbHlldVFwRDg0?= =?utf-8?B?TGdNTCtaa0NaczZrby9nYUJPeUVuOHoyWEUzNHJCcEJkRGFpS0NQTElGbmFX?= =?utf-8?B?ZHY1clg4NWhVZG83dDJKQ0RWWUtkcHIrMHdEMklKb0FsQ3lWQ0tmY1V4R3dt?= =?utf-8?B?NUlqbEQ2akVVZnBjOUZMUjFmOWk2cC9Nd0dJQXB6R0lQR0RadkEwV0UxVkZK?= =?utf-8?B?ZEViUEdGZ0dPVHUrdDNXeUFTUGhCaXdEQXBiZ3BLYkp3ZHdWU0drSkhlMElO?= =?utf-8?B?azNEWUpIMVZUYWFNNVhKdjdqcTRaY1BsYi93N0lSdFFBcWFkOTU4WTlMeE5u?= =?utf-8?B?WkJESmM4YSt1bFg5TnhWTDhIM1Z4TWx3MDdhMncydFFCQ2p5THZOVGZSYjEy?= =?utf-8?B?OWtnbHBNVnZ6Nml5bUV5NHpqU3dld2cwNWZIZDRnMElTVWRMOGJVaVpzVXlH?= =?utf-8?B?S1V3L1QvbDhJOGRRbm9MbTVuR1V6NEYrZjRGUndQZUdaK3EvVnhNS3gvcHl1?= =?utf-8?B?WXVXdUJFVjdiWTdWRGtYS3AzbGZucEVtWGYvbkVDdGZBRVB0R2ZyUFRmR2hU?= =?utf-8?B?ajFGT3B3SmJaRlVjeC8yVWNwb1RYQlJhRlpvZTg4ZVJvajNQOHpnQ2tMeGFn?= =?utf-8?B?c1hBMkJmWTZWM3luN0VPenRPWTVOOWxDOUVvMWlPS2Q0akE4dkNQUnZabkxR?= =?utf-8?B?MTZmN0NLb1FQRzQxNENBczhBZDA0L1l2NU1vS1BsTC9BY3l3bFdwdCtHWVQ2?= =?utf-8?B?YXpJaXd0K3owcHZQeDJnbjRvcmkrNXNEL2s1SEFmR0k4cmw1dTkvaklXZkw1?= =?utf-8?B?VjBTRDl4dW9NREJFRjlRamFINjR3OG55TGJSa01CMzUwUnVvbnh5NVorOXBJ?= =?utf-8?B?QXJORmowZExldFExRXBXUkYyR3Z3NCtwZjZEcm15NS9xSUJLcHdyTEVJSHRy?= =?utf-8?B?TEo0VGo1VFhIeDJ1NkxqMjZ2QzNkeHJZMFl2Y0l3VVMzejBLRnVMOEp2ZDlE?= =?utf-8?B?QU1WWitjdDM2Y25uektWWjFZSURSNS80Z2QrZ0MxVTYrTStSZnZtVmdOS2NY?= =?utf-8?B?azc5R0Z3bDFWZ0IrWnNwUll2QXkycTNMYUh6UmRobkZiMXBnYUdZVzdJRFNV?= =?utf-8?B?aEsyM3ZPM3F0ZnRvNURzQUFDTDVjK0RjdWxVaVJEREt6SHJhblh6STNKd2Vq?= =?utf-8?B?SmZ2NE1sZzFUbTgyaEpUdmlWeitNMEduMUlxdHpvbGtUN2hhaW8vb1lhZ0w5?= =?utf-8?B?OTJ1RTZXV3p1TEVDcjdUeHdNMEVOTlVwa0FWcmVqcDBEL2R6Sm5iREtQRHRw?= =?utf-8?B?bHpOZUNsOVFEZUVrU21wak9YSmtLdDc0QmNUUjRaeGttQjkyZDYzTERSMzMr?= =?utf-8?B?bUZVMUtwekovL3k4V0N4alRyU0xKNGk3M1BrUGczNTZ4REorVDE3REVvKytM?= =?utf-8?B?VXZ2dWNQYnp0eTQ0T241NVNPZERmMllRb2dKSHZza0VMYWJDNEZaZDFRVnpq?= =?utf-8?B?OHZ0bGpWWWZWWDFNQ0RJaWtadUhjVWc2M2Rjbmo0N2FHd29zaGw1TTF1RVM0?= =?utf-8?B?TFZ4bWlxU2cyY3VXUUF0QmZvWnBXVVQxWmJmN2JYcEVQdWF0a3RBQ2NERmhq?= =?utf-8?B?cFFRYStLMHh3VjdTWGF0S1ZwZkxJZ000TEJWNkhIYjJlOFZJclZQTW4ySU4x?= =?utf-8?B?bDgwMXVLbTFFa28zSkswSzZKQ2w5UHRuV09EcXRyeDNvb1g0VElQU2pRY2RJ?= =?utf-8?B?d3d4STJzUSs1SmtZc2pFL3Y4K0lvaDNGdk5teEZ3b242L001cmR2ZjI1eDFT?= =?utf-8?B?ZThJWllVUDVUcGxmU1NiSGZFcVpwOVdxbWQ2SkNpU0c4K1YvWHdLQWJoMHJz?= =?utf-8?B?L2cyWGRCUjZ6cUpjZjVJSzhsRDJWMThra28rOTdKaWM4M3Y1ME5wTm9hWmVT?= =?utf-8?B?NWZGMytwd0c2d0REQ1RwSXNrSVdWNzB1RDNVYzVwYzZUWWF0ZWN1UDRzK0U0?= =?utf-8?B?bCtsOXRHT2k5cGpPeWpCYy9QUTd3bTg1SWpGcVM0a2RuZzF6cmZUYzdYZVFY?= =?utf-8?B?cFJqaGpRclNSZzE1c1E4M3FwTnpnNjBuZStPV3pOSzdUV3FLdDRYUklrQ3Nx?= =?utf-8?B?OGVTandFWlpHQ1JhSldJQ0ZIWERnPT0=?= X-OriginatorOrg: de.ibm.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: MN2PR15MB3149.namprd15.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 61508524-4645-4db3-b507-08da756c6bba X-MS-Exchange-CrossTenant-originalarrivaltime: 03 Aug 2022 16:22:55.0037 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: fcf67057-50c9-4ad4-98f3-ffca64add9e9 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: WOsYqBV5p6vtAoxuR44La4mIPQHcsHqwvr7BdAeVbIAuqzdGmBu1IhDHipMKQQkIQvYlJAisf+GP2FpFw8gHpea2OFCJr3V9kXG028wk/OE= X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW4PR15MB4700 X-Proofpoint-ORIG-GUID: _UZD7gVGTL9zU5aMLJrcDIp3iqV7y2h0 X-Proofpoint-GUID: _UZD7gVGTL9zU5aMLJrcDIp3iqV7y2h0 X-Proofpoint-UnRewURL: 0 URL was un-rewritten MIME-Version: 1.0 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.205,Aquarius:18.0.883,Hydra:6.0.517,FMLib:17.11.122.1 definitions=2022-08-03_04,2022-08-02_01,2022-06-22_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 adultscore=0 impostorscore=0 suspectscore=0 bulkscore=0 phishscore=0 spamscore=0 lowpriorityscore=0 mlxscore=0 clxscore=1015 mlxlogscore=999 malwarescore=0 priorityscore=1501 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2206140000 definitions=main-2208030071 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 X-Content-Filtered-By: Mailman/MimeDel 2.1.29 X-BeenThere: gdb-patches@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gdb-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , From: Ulrich Weigand via Gdb-patches Reply-To: Ulrich Weigand Errors-To: gdb-patches-bounces+public-inbox=simark.ca@sourceware.org Sender: "Gdb-patches" SGkgQWRpdHlhLA0KDQp0aGFua3MgZm9yIHRoZSB1cGRhdGUuIEknZCBsaWtlIHRvIHN0aWxsIHVu ZGVyc3RhbmQgYSBiaXQgYmV0dGVyIGV4YWN0bHkgd2hlcmUgdGhlIGN1cnJlbnQgdGhyZWFkIGlz IHJlcXVpcmVkIHRvIGJlIHNldCwgc28gd2UgY2FuIGtlZXAgdGhvc2Ugc2NvcGVzIGFzIHNtYWxs IGFzIHBvc3NpYmxlLiBJcyBpcyByZWFsbHkgYWxsIG9mIHN5bmNfdGhyZWFkbGlzdHMsIG9yIGlz IGl0IG9ubHkgdGhlIGZpcnN0IHBhcnQsIHdoZXJlIHRoZSBwdGhkYl8gY2FsbHMgYXJlIG1hZGU/ IElmIHNvLCB3ZSBzaG91bGQgbW92ZSB0aGUgc2NvcGUgdG8gY292ZXIgb25seSB0aGF0IHBhcnQu DQoNCg0KTm90ZSB0aGF0IGFub3RoZXIsIGV2ZW4gYmV0dGVyIGFwcHJvYWNoIHdvdWxkIGJlIHRv IG1vdmUgdGhvc2Ugc2NvcGVzICppbnRvIHRoZSBjYWxsYmFjayByb3V0aW5lcyogdGhhdCBhY3R1 YWxseSBuZWVkIGl0LiBUaGF0IHdvdWxkIHJlcXVpcmUgYSBtZWFucyB0byBwYXNzIGluZm9ybWF0 aW9uIGludG8gdGhvc2UgY2FsbGJhY2tzIC0gbWF5YmUgd2UgY2FuIHVzZSBwdGhkYl91c2VyX3Qg Zm9yIHRoaXMgcHVycG9zZSwgZS5nLiBieSBwYXNzaW5nIHRoZSBQSUQgdGhlcmUgaW5zdGVhZCBv ZiBhbHdheXMganVzdCBhIGNvbnN0YW50IFBEX1VTRVI/IFRoaXMgd291bGQgYmUgZXF1aXZhbGVu dCB0byB3aGF0J3MgZG9uZSBvbiBMaW51eCAtIHlvdSBjYW4gY2hlY2sgdGhlIGNhbGxiYWNrcyB1 c2VkIGZvciB0aGUgTGludXggdGhyZWFkIGxpYnJhcnkgaW4gcHJvYy1zZXJ2aWNlLmMuIE5vdGUg dGhhdCBvbmx5IHBzX3hmZXJfbWVtb3J5IGFuZCBwc19wZ2xvYmFsX2xvb2t1cCBzZXQgdXAgc2Nv cGVzIHRoZXJlLg0KDQoNCk1pdCBmcmV1bmRsaWNoZW4gR3J1ZXNzZW4gLyBCZXN0IFJlZ2FyZHMN Cg0KVWxyaWNoIFdlaWdhbmQNCg0KLS0NCiAgRHIuIFVscmljaCBXZWlnYW5kIHwgUGhvbmU6ICs0 OS03MDMxLzE2LTM3MjcNCiAgRGlzdGluZ3Vpc2hlZCBFbmdpbmVlciwgT3BlbiBzb3VyY2UgY29t cGlsZXJzIGFuZCB0b29sY2hhaW4NCiAgSUJNIERldXRzY2hsYW5kIFJlc2VhcmNoICYgRGV2ZWxv cG1lbnQgR21iSA0KICBWb3JzLiBkZXMgQXVmc2ljaHRzcmF0czogR3JlZ29yIFBpbGxlbiB8IEdl c2Now6RmdHNmw7xocnVuZzogRGF2aWQgRmFsbGVyDQogIFNpdHogZC4gR2VzLjogQsO2Ymxpbmdl biB8IFJlZ2lzdGVyZ2VyaWNodDogQW10c2dlcmljaHQgU3R1dHRnYXJ0LCBIUkIgMjQzMjk0DQoN Ci0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQpGcm9tOiBBZGl0eWEgS2FtYXRoMSA8QWRpdHlh LkthbWF0aDFAaWJtLmNvbTxtYWlsdG86QWRpdHlhJTIwS2FtYXRoMSUyMCUzY0FkaXR5YS5LYW1h dGgxQGlibS5jb20lM2U+Pg0KVG86IFNpbW9uIE1hcmNoaSA8c2ltYXJrQHNpbWFyay5jYTxtYWls dG86U2ltb24lMjBNYXJjaGklMjAlM2NzaW1hcmtAc2ltYXJrLmNhJTNlPj4sIFVscmljaCBXZWln YW5kIDxVbHJpY2guV2VpZ2FuZEBkZS5pYm0uY29tPG1haWx0bzpVbHJpY2glMjBXZWlnYW5kJTIw JTNjVWxyaWNoLldlaWdhbmRAZGUuaWJtLmNvbSUzZT4+LCBTYW5nYW1lc2ggTWFsbGF5eWEgPHNh bmdhbWVzaC5zd2FteUBpbi5pYm0uY29tPG1haWx0bzpTYW5nYW1lc2glMjBNYWxsYXl5YSUyMCUz Y3NhbmdhbWVzaC5zd2FteUBpbi5pYm0uY29tJTNlPj4sIHNpbW9uLm1hcmNoaUBlZmZpY2lvcy5j b20gPHNpbW9uLm1hcmNoaUBlZmZpY2lvcy5jb208bWFpbHRvOiUyMnNpbW9uLm1hcmNoaUBlZmZp Y2lvcy5jb20lMjIlMjAlM2NzaW1vbi5tYXJjaGlAZWZmaWNpb3MuY29tJTNlPj4sIGdkYi1wYXRj aGVzQHNvdXJjZXdhcmUub3JnIDxnZGItcGF0Y2hlc0Bzb3VyY2V3YXJlLm9yZzxtYWlsdG86JTIy Z2RiLXBhdGNoZXNAc291cmNld2FyZS5vcmclMjIlMjAlM2NnZGItcGF0Y2hlc0Bzb3VyY2V3YXJl Lm9yZyUzZT4+DQpTdWJqZWN0OiBSZTogW0VYVEVSTkFMXSBSZTogW1BBVENIXSBGaXgtZm9yLW11 bHRpcGxlLXRocmVhZC1kZXRlY3Rpb24taW4tQUlYLnBhdGNoDQpEYXRlOiBGcmksIDI5IEp1bCAy MDIyIDA5OjIzOjU1ICswMDAwDQoNCkhpIGFsbCwNCg0KSSB0aGFuayB5b3UgZm9yIHRoZSBmZWVk YmFjayB0aGF0IHdhcyBnaXZlbi4gSXQgd2FzIGEgbmljZSBpbnNpZ2h0Lg0KDQpQbGVhc2UgZmlu ZCBhdHRhY2hlZCB0aGUgbmV3IHBhdGNoLiBbU2VlIEZpeC1mb3ItbXVsdGlwbGUtdGhyZWFkLWRl dGVjdGlvbi1pbi1BSVgucGF0Y2ggXQ0KDQpIb3dldmVyLCB0aGVyZSBhcmUgYSBmZXcgdGhpbmdz IHRoYXQgd2UgaGFkIHRvIGxvb2sgaW4gZnVydGhlciB0byB3aGF0IHdhcyBzdWdnZXN0ZWQuDQoN CkhlcmUgYXJlIG15IGV4cGxhbmF0aW9ucyB0byB3aGF0IHdhcyBzdWdnZXN0ZWQuDQoNCj4gSSBz dGlsbCB0aGluayB0aGUgcHJvcG9zZWQgZml4IGlzbid0IHJlYWxseSBpZGVhbC4gIENhbiB5b3Ug aW5zdGVhZA0KPiB0cnkgdG8gKnRlbXBvcmFyaWx5KiAoaS5lLiB1c2luZyBhIHNjb3BlZF9yZXN0 b3JlKSBzZXQgdXAgaW5mZXJpb3JfcHRpZA0KPiBpbiBwZF9hY3RpdmF0ZSgpIGJlZm9yZSBjYWxs aW5nIHB0aGRiX3Nlc3Npb25faW5pdCgpLCB3aXRoIGEgY29tbWVudA0KPiBleHBsYWluaW5nIHRo YXQgdGhpcyBpcyBuZWVkZWQgZm9yIHRoZSBjYWxsYmFja3M/DQoNClRoaXMgaXMgYSBuaWNlIGlk ZWEgVWxyaWNoIGFuZCBTaW1vbi4gSG93ZXZlciwgbGV0IG1lIHRha2UgYSBjYXNlIG9mIGEgcHJv Z3JhbSBjcmVhdGluZyAyIHRocmVhZHMgcGx1cyBPZkNvdXJzZSBoYXZpbmcgYSBtYWluIHRocmVh ZC4gTGV0J3Mgc2F5IHRoZSBwcm9ncmFtIGNyZWF0ZXMgdGhlIGZpcnN0IHRocmVhZC4gVGhpcyBz b2x1dGlvbiB3b3JrcyBmYW50YXN0aWMuDQoNClNvLCB3aGF0IGlzIHRoZSBwcm9ibGVtIHdpdGgg aXQ/PyAgV2UgaGF2ZSBvdXIgcGRfYWN0aXZlIHNldCB0byAxIGluIHBkX2FjdGl2YXRlKCkuIFNv LCB0aGUgbmV4dCB0aW1lIHdlIGdldCBpbnRvIHRoZSB3YWl0KCkgb2YgYWl4LXRocmVhZC5jIG9u IGFuIGV2ZW50IG9mIGEgbmV3IHRocmVhZCwgd2hhdCBoYXBwZW5zIGlzIHNpbmNlIHB0aHJlYWQg ZGVidWcgbGlicmFyeSBpcyBpbml0aWFsaXNlZCB3ZSBuZWVkIG5vdCBnZXQgaW50byBwZF9hY3Rp dmF0ZSgpIGFnYWluIHRvIGluaXRpYWxpc2UuIFRoZXJlZm9yZSwgdGhpcyBjb25kaXRpb24gOg0K DQoNCmlmICghcGRfYWN0aXZlICYmIHN0YXR1cy0+a2luZCAoKSA9PSBUQVJHRVRfV0FJVEtJTkRf U1RPUFBFRA0KDQogICAgICAmJiBzdGF0dXMtPnNpZyAoKSA9PSBHREJfU0lHTkFMX1RSQVApDQoN CndhcyBtYWRlLi4uIFdlIGRpcmVjdGx5IGdvIHRvIHRoZSBwZF91cGRhdGUoKS4uIFNpbmNlIHRo ZSBzeW5jX3RocmVhZGxpc3RzKCkgYWxzbyBoYXZlIHB0aHJlYWQgZGVidWcgbGlicmFyeSBmdW5j dGlvbnMgYW5kIG91ciBjdXJyZW50IHRocmVhZCBpcyBhbHNvIG51bGwsICB3ZSBlbmQgdXAgc3lu Y2luZyB0aHJlYWRsaXN0cyB3aXRoIG51bGwgdGhyZWFkIHdoaWNoIG1lYW5zIG91ciBkZWJ1Z2dl ciB3aWxsIG5vdCByZWZsZWN0IHRoZSBuZXcgdGhyZWFkcyBhdCBhbGwgb3IgaWYgaXQgZG9lcyB3 ZSB3aWxsIGdldCBhbiBhc3NlcnRpb24gc2F5aW5nICJBc3NlcnRpb24gYGVjcy0+ZXZlbnRfdGhy ZWFkLT5jb250cm9sLnRyYXBfZXhwZWN0ZWQnIGZhaWxlZCIgc2ltcGx5IGJlY2F1c2Ugb25seSB0 aGUgdGhyZWFkIHdoaWNoIGlzIGFsbG93ZWQgdG8gc3RlcCBzaG91bGQgY3JlYXRlIGEgdHJhcCBh bmQgd2Ugb24gYSBjcmVhdGlvbiBvZiBuZXcgdGhyZWFkIHNhaWQgdG8gdGhlIGdkYiBjb3JlIHRo YXQgbnVsbCB0aHJlYWQgaXMgdGhlIG9uZSB3aG8gcmFpc2VkIHRoZSBldmVudCBvZiBuZXcgdGhy ZWFkIGNyZWF0aW9uIGFuZCBoZW5jZSB0aGUgdHJhcC4uDQoNClNvLCB3aGF0IGNhbiBiZSB0aGUg c29sdXRpb24/PyBJdCBpcyBncmVhdCBpZiB3ZSBjcmVhdGUgYSBzY29wZSBhbmQgdGVtcG9yYXJp bHkgc3dpdGNoIG91ciB0aHJlYWQganVzdCBiZWZvcmUgeW91IHB0aGRiX3Nlc3Npb24gaW5pdCgp IGluIHBkX2FjdGl2YXRlKCkgd2hpY2ogdGFrZXMgY2FyZSBvZiBzZXNzaW9uIGluaXRpYWxpc2F0 aW9uIGFuZCBqdXN0IGJlZm9yZSB0aGUgc3luY190aHJlYWRsaXN0cygpIGluIHBkX2FjdGl2YXRl KCkgcG9zdCB3aGljaCBzeW5jIHRocmVhZGxpc3RzKCkgY2FuIGdpdmUgdXMgdGhlIHJpZ2h0IHRo cmVhZCB3aG8gY2F1c2VkIGFuIGV2ZW50IHRvIHRoZSBnZGIgY29yZSAuLg0KDQpLaW5kbHkgc2Vl IHRoZSBwYXRjaCBmb3IgdGhlIHNhbWUgd2l0aCBjb21tZW50cyBhbmQgaW5mZXJpb3JfcHRpZC5w aWQgKCkgc3BhY2UgY29ycmVjdGlvbiBpcyBhbHNvIG1hZGUgd2hpY2ggSSBuZWVkZWQgdG8gYXMg cGVyIFNpbW9uLg0KDQpMZXQgbWUga25vdyB3aGF0IHlvdSB0aGluaywgaWYgbm90IGxldCdzIHB1 c2ggdGhpcyBzbyB0aGF0IEFJWCBmb2xrcyBjYW4gZGVidWcgd2l0aCBtdWx0aXBsZSB0aHJlYWRz Lg0KLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KDQo+PlRvIGF2b2lkIHRo aXMga2luZCBvZiBwcm9ibGVtcywgeW91IGNhbiB0ZW1wb3JhcmlseQ0KPj5zd2l0Y2ggdGhyZWFk ICh1c2luZyBzY29wZWRfcmVzdG9yZV9jdXJyZW50X3RocmVhZCArIHN3aXRjaF90b190aHJlYWQp LA0KPj53aGljaCB3aWxsIHNldCBhbGwgdGhlIGN1cnJlbnQgc3R1ZmYgbWVudGlvbmVkIGFib3Zl LiAgQnV0IHNvbWV0aW1lcw0KPj50aGlzIGlzbid0IHBvc3NpYmxlLCBlc3BlY2lhbGx5IGluIHRo dyB3YWl0IG1ldGhvZCwgYmVjYXVzZSB0aGVyZSBpc24ndA0KPj5hbHdheXMgYSB0aHJlYWRfaW5m byBmb3IgdGhlIHB0aWQgeW91IGFyZSBoYW5kbGluZyB5ZXQsIHNvIHlvdSBjYW4ndA0KPj5zd2l0 Y2ggdG8gaXQuDQoNClNpbmNlIHlvdSBhbGwgYXJlIG1vcmUgZXhwZXJpZW5jZWQgdGhhbiBtZSwg SSBhbSBzdXJlIHRoZSBmdXR1cmUgaXNzdWVzIGFuZCBzb2x1dGlvbnMgd2lsbCBiZSBicmlnaHRs eSBtb3JlIHZpc2libGUgdG8gYWxsIG9mIHlvdSB0aGFuIG1lIGFuZCBJIHdvdWxkIGxvdmUgdG8g bGVhcm4gdGhhdC4uIEhhdmluZyBzYWlkIHRoYXQgbGV0IG1lIGFzc3VtZSB5b3UgbWlnaHQgYmUg dGhpbmtpbmcgb2YgYSBmb3JrKCkgZXZlbnQgd2hlcmUgaW4gY2FzZSB3ZSByZXR1cm4gdGhlIGNo aWxkIHByb2Nlc3MgSUQgYW5kIHdlIHN3aXRjaF90b190aHJlYWQoY3VycmVudF90YXJnZXQsIGNo aWxkX3B0aWQpIHdlIG1pZ2h0IGdldCBhbiBhc3NlcnRpb24gc2F5aW5nIGluZi0+dGhyZWFkIGRv ZXMgbm90IGV4aXN0IGFuZCByaWdodGx5IHNvLi4gVGhhdCBpcyB3aGVyZSB0aGUgQVBJcyBvciBm dW5jdGlvbnMgbGlrZSBvdXJzdGF0dXMtPnNldF9mb3JrZWQoY2hpbGRfcHRpZCkgY29tZSBpbiBw aWN0dXJlIHdoZXJlIHdlIGNhbiBwYXNzIGEgbmV3IHByb2Nlc3MgaW5mbyBhbmQgdGhlbiByZXR1 cm4gYSBwYXJlbnQgcHJvY2VzcyBwdGlkIHdobyBoYXMgYSB0aHJlYWQgZnJvbSBiZW5lYXRoLT53 YWl0IHRvIGFpeF90aHJlYWQ6d2FpdCgpIGFuZCB0aGF0IHdheSB3ZSB3b24ndCBmYWNlIHRoaXMg aXNzdWUgb2YgaGF2aW5nIGFuIGluZmVyaW9yIHdpdGggbm8gdGhyZWFkIHdoZW4gd2UgdXNlIHN3 aXRjaF90b190aHJlYWQoY3VycmVudF90YXJnZXQscHRpZCkgIGluIEFJWCBmb3IgdGhlIHRpbWUg YmVpbmcgYXQgbGVhc3QuLg0KDQpIb3BlZnVsbHkgd2UgYXJlIHRoaW5raW5nIGluIHRoZSBzYW1l IHRlcm1zIGFuZCB0aGUgc29sdXRpb24gZm9yIG11bHRpcGxlIHRocmVhZHMgaXMgZmFpci4NCg0K SGF2ZSBhIG5pY2UgZGF5IGFoZWFkLg0KDQpUaGFuayB5b3UsDQoNClJlZ2FyZHMsDQpBZGl0eWEu DQoNCg0KDQoNCg0KDQoNCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fDQpGcm9tOiBT aW1vbiBNYXJjaGkgPHNpbWFya0BzaW1hcmsuY2E+DQpTZW50OiAyNSBKdWx5IDIwMjIgMjE6MDAN ClRvOiBVbHJpY2ggV2VpZ2FuZCA8VWxyaWNoLldlaWdhbmRAZGUuaWJtLmNvbT47IFNhbmdhbWVz aCBNYWxsYXl5YSA8c2FuZ2FtZXNoLnN3YW15QGluLmlibS5jb20+OyBBZGl0eWEgS2FtYXRoMSA8 QWRpdHlhLkthbWF0aDFAaWJtLmNvbT47IHNpbW9uLm1hcmNoaUBlZmZpY2lvcy5jb20gPHNpbW9u Lm1hcmNoaUBlZmZpY2lvcy5jb20+OyBnZGItcGF0Y2hlc0Bzb3VyY2V3YXJlLm9yZyA8Z2RiLXBh dGNoZXNAc291cmNld2FyZS5vcmc+DQpTdWJqZWN0OiBbRVhURVJOQUxdIFJlOiBbUEFUQ0hdIEZp eC1mb3ItbXVsdGlwbGUtdGhyZWFkLWRldGVjdGlvbi1pbi1BSVgucGF0Y2gNCg0KDQoNCk9uIDIw MjItMDctMjUgMDg6MjEsIFVscmljaCBXZWlnYW5kIHdyb3RlOg0KPg0KPiBBZGl0eWEgS2FtYXRo MSA8QWRpdHlhLkthbWF0aDFAaWJtLmNvbT4gd3JvdGU6DQo+DQo+PiBUaGUgY2F1c2Ugb2YgdGhl IGJ1ZyA6LSBTaW5jZSwgZm9yIHRoZSBHREIgY29yZSB3ZSBhcmUNCj4+IHN3aXRjaF90b19ub190 aHJlYWQoKSBpLmUuIHdlIGRvIG5vdCBoYXZlIGEgdGhyZWFkIHRpbGwgd2UgcmV0dXJuIHRoZQ0K Pj4gcGlkIGZyb20gdGhlIHdhaXQoKSB0aGVyZSBpcyBubyB0aHJlYWQuIFNvLCB3aGVuIGEgY2Fs bCBpcyBtYWRlIGZyb20NCj4+IHBkX2FjdGl2YXRlKCkgaW4gd2FpdCgpIG9mIGFpeC10aHJlYWQu YywgdG8gcHRoZGJfc2Vzc2lvbl9pbml0KCkgd2UgYXJlDQo+PiBnb2luZyB0byByZWNpZXZlIFBU SERCX05PVF9USFJFQURFRC4NCj4NCj4gVGhhbmtzIGZvciB0aGUgZXhwbGFuYXRpb24uICBJIHdh c24ndCBhd2FyZSB0aGUgdXNlIG9mDQo+IGluZmVyaW9yX3B0aWQgaGFwcGVucyBpbiBzb21lIG9m IGNhbGxiYWNrIHJvdXRpbmVzIHVzZWQNCj4gYnkgdGhlIHB0aGRiX3Nlc3Npb25faW5pdCgpIGxp YnJhcnkgcm91dGluZS4NCg0KVGhhbmtzLCBtZSBuZWl0aGVyLCBidXQgaXQgbWFrZXMgc2Vuc2Uu DQoNCj4gSSBzdGlsbCB0aGluayB0aGUgcHJvcG9zZWQgZml4IGlzbid0IHJlYWxseSBpZGVhbC4g IENhbiB5b3UgaW5zdGVhZA0KPiB0cnkgdG8gKnRlbXBvcmFyaWx5KiAoaS5lLiB1c2luZyBhIHNj b3BlZF9yZXN0b3JlKSBzZXQgdXAgaW5mZXJpb3JfcHRpZA0KPiBpbiBwZF9hY3RpdmF0ZSgpIGJl Zm9yZSBjYWxsaW5nIHB0aGRiX3Nlc3Npb25faW5pdCgpLCB3aXRoIGEgY29tbWVudA0KPiBleHBs YWluaW5nIHRoYXQgdGhpcyBpcyBuZWVkZWQgZm9yIHRoZSBjYWxsYmFja3M/DQoNClRoYXQgc291 bmRzIGxpa2UgYSBnb29kIGlkZWEsIHRoaXMgd2F5LCBmcm9tIHRoZSBwb2ludCBvZiB2aWV3IG9m IHRoZQ0KY2FsbGVyIG9mIHBkX2FjdGl2YXRlLCBwZF9hY3RpdmF0ZSBkb2VzIG5vdCBjYXJlIGFi b3V0IGdsb2JhbCBzdGF0ZS4NClRoYXQncyBob3cgd2UgY2FuIGRvIGJhYnkgc3RlcHMgdG93YXJk cyByZWx5aW5nIGxlc3Mgb24gZ2xvYmFsIHN0YXRlDQppbXBsaWNpdGx5LiAgVGhlIG5leHQgc3Rl cCBjb3VsZCBiZSB0byB0cnkgdG8gbWFrZSBlYWNoIGluZGl2aWR1YWwNCmNhbGxiYWNrIHN3aXRj aCB0byB0aGUgcmlnaHQgZ2xvYmFsIGNvbnRleHQsIGJhc2VkIG9uIHdoYXQgdGhleSBuZWVkLg0K DQpZb3UganVzdCBuZWVkIHRvIGJlIGNhcmVmdWwsIHNvbWUgcGFydHMgb2YgR0RCIGV4cGVjdCBp bmZlcmlvcl9wdGlkLCB0aGUNCmN1cnJlbnQgdGhyZWFkLCB0aGUgY3VycmVudCBpbmZlcmlvciBh bmQgdGhlIGN1cnJlbnQgcHJvZ3JhbSBzcGFjZSB0byBiZQ0Kc3luYydlZC4gIElmIHlvdSBqdXN0 IHNldCBpbmZlcmlvcl9wdGlkLCAgeW91IG5lZWQgdG8gbWFrZSBzdXJlIHRvIG9ubHkNCmNhbGwg ZnVuY3Rpb25zIHRoYXQgdXNlIGluZmVyaW9yX3B0aWQsIG5vdCB0aGUgb3RoZXIgY3VycmVudCBz dHVmZi4NClRoZXJlIGlzIG5vdCBwcmFjdGljYWwgd2F5IHRvIGtub3cgdGhpcywgeW91IGhhdmUg dG8gY2FyZWZ1bGx5IGluc3BlY3QNCndoYXQgaXMgY2FsbGVkLiAgVG8gYXZvaWQgdGhpcyBraW5k IG9mIHByb2JsZW1zLCB5b3UgY2FuIHRlbXBvcmFyaWx5DQpzd2l0Y2ggdGhyZWFkICh1c2luZyBz Y29wZWRfcmVzdG9yZV9jdXJyZW50X3RocmVhZCArIHN3aXRjaF90b190aHJlYWQpLA0Kd2hpY2gg d2lsbCBzZXQgYWxsIHRoZSBjdXJyZW50IHN0dWZmIG1lbnRpb25lZCBhYm92ZS4gIEJ1dCBzb21l dGltZXMNCnRoaXMgaXNuJ3QgcG9zc2libGUsIGVzcGVjaWFsbHkgaW4gdGh3IHdhaXQgbWV0aG9k LCBiZWNhdXNlIHRoZXJlIGlzbid0DQphbHdheXMgYSB0aHJlYWRfaW5mbyBmb3IgdGhlIHB0aWQg eW91IGFyZSBoYW5kbGluZyB5ZXQsIHNvIHlvdSBjYW4ndA0Kc3dpdGNoIHRvIGl0Lg0KDQpHaXZl biB0aGUgQUlYIHRhcmdldCBvbmx5IHN1cHBvcnRzIG9uZSBpbmZlcmlvciBmb3Igbm93LCB0aGUg Y3VycmVudA0KaW5mZXJpb3IgYW5kIHByb2dyYW0gc3BhY2Ugc2hvdWxkIGJlIGNvcnJlY3QuICBC dXQgdG8gc3VwcG9ydA0KbXVsdGktaW5mZXJpb3IsIGl0IHdpbGwgYmUgaW1wb3J0YW50IHRvIGtl ZXAgdGhhdCBpbiBtaW5kLiAgWW91IG1pZ2h0DQpoYXZlIHRvIHN3aXRjaCB0byB0aGUgcmlnaHQg aW5mZXJpb3IgaW4gYWRkaXRpb24gdG8gc2V0dGluZw0KaW5mZXJpb3JfcHRpZCBpbiBwZF9hY3Rp Y2F0ZS4NCg0KVGhpcyBodW5rIGluIHRoZSBwYXRjaDoNCg0KZGlmZiAtLWdpdCBhL2dkYi9haXgt dGhyZWFkLmMgYi9nZGIvYWl4LXRocmVhZC5jDQppbmRleCA0YzkxOTVhN2YxMi4uOTE0NjZhMTc2 NDcgMTAwNjQ0DQotLS0gYS9nZGIvYWl4LXRocmVhZC5jDQorKysgYi9nZGIvYWl4LXRocmVhZC5j DQpAQCAtOTc2LDcgKzk3Niw3IEBAIHBkX2VuYWJsZSAodm9pZCkNCiAgIC8qIElmIHdlJ3JlIGRl YnVnZ2luZyBhIGNvcmUgZmlsZSBvciBhbiBhdHRhY2hlZCBpbmZlcmlvciwgdGhlDQogICAgICBw dGhyZWFkIGxpYnJhcnkgbWF5IGFscmVhZHkgaGF2ZSBiZWVuIGluaXRpYWxpemVkLCBzbyB0cnkg dG8NCiAgICAgIGFjdGl2YXRlIHRocmVhZCBkZWJ1Z2dpbmcuICAqLw0KLSAgcGRfYWN0aXZhdGUg KDEpOw0KKyAgcGRfYWN0aXZhdGUgKGluZmVyaW9yX3B0aWQucGlkKCkpOw0KIH0NCg0KbG9va3Mg cmlnaHQgdG8gbWUgKGV4Y2VwdCB0aGUgbWlzc2luZyBzcGFjZSBiZWZvcmUgdGhlIHBhcmVudGhl c2lzKS4gIEl0DQpsb29rcyBsaWtlIGFuIG92ZXJzaWdodCBpbiBteSAiZ2RiOiBmaXgNCntyczYw MDBfbmF0X3RhcmdldCxhaXhfdGhyZWFkX3RhcmdldH06OndhaXQgdG8gbm90IHVzZSBpbmZlcmlv cl9wdGlkIg0KcGF0Y2gsIEkgZm9yZ290IHRvIHVwZGF0ZSB0aGF0IGNhbGwgdG8gcGRfYWN0aXZh dGUuICBOb3RlIHRoYXQgdGhlIG9sZA0KcGFyYW1ldGVyIHRvIHBkX2FjdGl2YXRlIHdhcyBTRVRf SU5GUElELCBhbmQgaWYgc2V0LCBwZF91cGRhdGUgd291bGQNCmNoYW5nZSB0aGUgY3VycmVudCB0 aHJlYWQgdG8gcmVmbGVjdCB0aGUgdGhyZWFkIHB0aWQsIGlmIHRocmVhZA0KZGVidWdnaW5nIHdh cyBlbmFibGVkLiAgVGhlIGN1cnJlbnQgY29kZSBubyBsb25nZXIgZG9lcyB0aGF0LiAgSWYgdGhh dA0Kd2FzIGltcG9ydGFudCwgd2UgY2FuIHJlLWludHJvZHVjZSBpdCBoZXJlOiBtYWtlIHBkX2Vu YWJsZSBzd2l0Y2ggdG8gdGhlDQp0aHJlYWQgd2l0aCB0aGUgcHRpZCByZXR1cm5lZCBieSBwZF9h Y3RpdmF0ZS4NCg0KU2ltb24NCg==