Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1wcg87-003XOr-23 for pgsql-hackers@arkaria.postgresql.org; Thu, 25 Jun 2026 09:12:16 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.96) (envelope-from ) id 1wcg84-004bNr-37 for pgsql-hackers@arkaria.postgresql.org; Thu, 25 Jun 2026 09:12:12 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1wcg84-004bNj-03 for pgsql-hackers@lists.postgresql.org; Thu, 25 Jun 2026 09:12:12 +0000 Received: from mail-japaneastazon11010030.outbound.protection.outlook.com ([52.101.229.30] helo=TY3P286CU002.outbound.protection.outlook.com) by magus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.98.2) (envelope-from ) id 1wcg80-00000000Asj-1ffX for pgsql-hackers@lists.postgresql.org; Thu, 25 Jun 2026 09:12:11 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=s75B/uNYY20Hx37W3N1jSaVD2yuxPJjPd4xuoaDm9CtyMcNtHWUKs2W1RVGV1CAbTmyvMVKrmmT1YU9A/D5vlCm6qcBYTaahZ9BbTAQt2rxnfe21Dcx94qEt5lMnVbcwnHKhkgrZsrgD83TlfAKYGPPhtCf/+1HHuAOxnBh4n0F2QDpqf4VGF5RVnFYr6T5RTFWMVNXWj/WGDFpF6v8Dsoz1DuUhAILMbHD7ok1ec0LmB73hXzkXn9n2FE0y1OsIDvPXBng8IfvqEOrAjL66C7oiQKhCbkpsTLlj//SM2BwD1QjNHy3mArk1TDYMRHuEoMAeYanPYs2Cr6d8pI+jaA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; 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=tNIsvnfTg+8KYLawSrbTa+OxV4pPt2A750XDBxZui4U=; b=Lec2jIOxFdSRS1DWTjxKAXK9t6vUTuMj1wMUVqWXhZloy4xnobD5NN+AxUmB6E8/WjFMOONE4i7DitL+DTGOiJMfi8ocYP9pYPkksa+Jx0LmIfPHSLNhvQxdCmtPAjhnDrKqWFNJCihcfRawG3GqCKbsjFp5WdXWgO68pN9JdvlVBZVCTisSaToRyCi6fpLm0o4D+U32MXbIhb6r/DZIiZUxCafdznd7uLHalDt8GQOYd+RSR4u8s3p/aWPt4JruL1fuoLtS9JDYWFZK95/G99BJJecSK/dAoyigqzlygt6i+PM0wi/yvHfvD+1DjGpWHyZ12kztm/byF0qk+GQhqg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=ntt.com; dmarc=pass action=none header.from=ntt.com; dkim=pass header.d=ntt.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ntt.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=tNIsvnfTg+8KYLawSrbTa+OxV4pPt2A750XDBxZui4U=; b=BYWbYPf6wkgVFyw8S5ImolV4Z2GDYx7T3LdDxHmGlWBLG0kmJ+ObQJvUN5TGoT+SBiqTXfc1Z6S+/tyEWHIKG4nL0IIMeC6Tv+y/V+/A4bE7RWU9JmwePW/AAzZ7AbCeTzRoZ91645aek3h+73FaX46jUcTb4DEMxgi0zMyUDwajMRXLQQWZHlxt2+HIOwPQ0BBBMy8MDcpuxqsBsSrfo1hhlTs4OH8A7Ic1DPlsZ62q3+0czKqVkF082DXOkus9WtcsXM8VBjUIBq30zP6rDzWWZsEDaye+BpRrdfqOA38Fpxztmx5R01EFAGo8Am9iCN5zJNfdf2O7632Jr6nCjg== Received: from TY4P301MB1299.JPNP301.PROD.OUTLOOK.COM (2603:1096:405:2f4::12) by TY3P301MB0619.JPNP301.PROD.OUTLOOK.COM (2603:1096:400:3ce::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.21.159.16; Thu, 25 Jun 2026 09:12:00 +0000 Received: from TY4P301MB1299.JPNP301.PROD.OUTLOOK.COM ([fe80::b808:e442:a218:f6eb]) by TY4P301MB1299.JPNP301.PROD.OUTLOOK.COM ([fe80::b808:e442:a218:f6eb%5]) with mapi id 15.21.0159.015; Thu, 25 Jun 2026 09:12:00 +0000 From: Tatsuro Yamada To: Richard Guo , Tatsuro Yamada CC: David Rowley , Ashutosh Bapat , "pgsql-hackers@lists.postgresql.org" Subject: RE: Add enable_groupagg GUC parameter to control GroupAggregate usage Thread-Topic: Add enable_groupagg GUC parameter to control GroupAggregate usage Thread-Index: AQHb1rj0Bus22so71kKo5U5qUnYfBLP6qzuAgAKjUwCAAFv8AIAHerSAgAbLKgCCRL4LAIAAHwBw Date: Thu, 25 Jun 2026 09:11:59 +0000 Message-ID: References: In-Reply-To: Accept-Language: ja-JP, en-US Content-Language: ja-JP X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=ntt.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: TY4P301MB1299:EE_|TY3P301MB0619:EE_ x-ms-office365-filtering-correlation-id: 2e1f1d51-4f99-4e09-ed16-08ded299d04e x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0;ARA:13230040|366016|1800799024|23010399003|376014|19092799006|22082099003|18002099003|38070700021|4143699003|11063799006|6133799003|56012099006; x-microsoft-antispam-message-info: G9w9T04jYjdSxYm2m0MlI/XO6GlohvP81Jg6+1Mo2xvK99Gj/vkKNTBoFAVD1TaoOyFrydLQ8fSOI2tSybdS0KW18hjzPgr9hmVjo+9Dz+AeQG7XCRU0j4ItwT1wDtzlMe8vyJ0Aco7bVpEXRuu3aCbixZnf8uAQFMf/Ty/vA1pSXsg+F938UH4DR6tiE14hsMjfNBMI+KBPYeS0636x0vONPQ/ltl9AgYIgMRaUyMOetsHnxFpzOoYlMedk5r7ZyzQvbfw4INbN0DiHoFtFh4D85DxfzE3/nWhltT1qRB72ccFQrhXf+3fuSeKn69/ltph84qXUiZx4FcsN+B/7y3/TyniQQfHXFf3at+gWTit9JGUkclVkyR9CX84TjUAGIRmCbcxecGdUFeGRFb4JSyXUcz8mP2x2NtTsornnAYJx1G3ugqcAGOYYuNg+ASYpRA71mhKgSUnuuB+nBAxTWJ3F1gDjKFM+MDNR0O6CDCJHf7y55JPPLbYTY9A4z8JuAqqZzMZom5qjgM71Dg15rGeHAPPuZOW0c0AEIowYqnlTVhzUjzXHpH/fVL/Bb6WhGrRgLwkdXC4bZtB2T9lMk6/OBG/1gLE2F/l98YlHbiYBJkX2zrVPpJK83BOMR22WZiVW9/F7LdDE9b2Xvnw6Y58In6W5VBtPqk3Wj34K0Wgd7m6RU7e7tgoM+D0dcmx9Ko+vD7gdHUKchGZ8E2o3sg== x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:ja;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:TY4P301MB1299.JPNP301.PROD.OUTLOOK.COM;PTR:;CAT:NONE;SFS:(13230040)(366016)(1800799024)(23010399003)(376014)(19092799006)(22082099003)(18002099003)(38070700021)(4143699003)(11063799006)(6133799003)(56012099006);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?VFpOK0ZRSkU5cnQweUJMK0lEVXZtcTZybC85c2M4QXJBZm9RaXJSK0l1MGF0?= =?utf-8?B?Qit1RnFNMVdYYjFvTnVyVjhiSDg1VC9PRGRKRCtJU0tHQk5HcWl2WjcrNGp2?= =?utf-8?B?WUJ3M2pNUllaMDYvV01ORFRZcjEvb2ZEY000RkNlYm9OY3Bjdy9Yb3hWSklT?= =?utf-8?B?TGM0UjF6akVVemFmSE1JdVVxZURmWHhlekMrSE1DNUpubThNUGJ3aVJEOWU1?= =?utf-8?B?VVBtMW1raUluRzdKYVlVWnZKS0QyOVIvYmpWTGR3UVVYUFZGUWYwNUJVemxW?= =?utf-8?B?WUVVdk03REtxaWZ5ZmNRYU5ZLzFKSDRjc1dQT1o1YkNyamdyaWFaT1Ywc2Ju?= =?utf-8?B?Tko0cEhxalBxUVgzdU9oa25xSEhIeUx1ZFpxT3pJOE9aeWxGY0FlZVA2cTdz?= =?utf-8?B?aUtVVWtHTjY4dHpjTzMvQk1mZy8yMDhXRmhMV3g0MVJYQ0RjaXdHaUdma1c5?= =?utf-8?B?WFNnQ1ZiaTIxN2c0alJGa3JZY01OTkYrdFdyZjJXaGNFMEdJaVFkYWU5ckM2?= =?utf-8?B?QzJrOWp6V3NyakFhbDExWHZ0ODAzckNaNXk2cUM0SHpseG5qTmZTWHFHTzRY?= =?utf-8?B?eURqTGdwZUV1M2xpQUpGNUNPRlRKdEtjZ0pQQUFxU1pNUnN0TkpOcnQ3VWor?= =?utf-8?B?emlySkVKTS9KaUlTdlc5UGhRVXUreUg3Q3ltVHBhZHNSdys0ZWdmMnhUN3pl?= =?utf-8?B?VWdYRjJVU1gzS0Rac3kvVmdKRXZyR2libTYwMU5ndEYyVnNTbkpzQlJ3Q0o1?= =?utf-8?B?V0IvZWFsNDFRbXlaRWpCZy9SbERYUkJUUXlxVExyTitDSXRyaFo0M0d0QTdM?= =?utf-8?B?eGpVbDNzaVlONWlSVkFTRHpjWGtCSFJsT1BkWDZuUWhHOXhMbTBRaWJZQzhm?= =?utf-8?B?NzBJc1NqM1Z6b3A3bUlaMExuWGVDeXFNZFU0QnZXb3lFd24wNkM2TGN5VWR3?= =?utf-8?B?V0Zzb0xKY0d3M2dZRnd2dDdDNkE0WkNmVHd1QlluTVJxbWtFNERPallKbEFj?= =?utf-8?B?eVZ4RHp2S2pMZTk0M3VaVFdYWFg2S3BEN0E5Zm1kZFkrNzZaMHR4bnFkdWZI?= =?utf-8?B?b0tzRXN5WTdMbE5kVDlqM29VdlYyZjdVbkI5dk5ESXRRaitrSldtUktkcUJj?= =?utf-8?B?RGthbWpSeTRKcmoydFNZMjNyNVRHaXoyTFgzbFV0QXZkdkpzUFJsUUFySXph?= =?utf-8?B?UkgxS3dJeHlGWEtOdGduMWdlS0xaWnovNlBDaXZoRU5yS0NWbFNVbkZJM0NJ?= =?utf-8?B?MmtZd2xVTGdLSDVqZ0xxUkROaHQvb1RxMFhVdnFYSnRmcFp1bFprTTdDU2Vv?= =?utf-8?B?bUVDR2ZCbEJYOUI2UTZqbFdLTCtwbEJVS0kxekhrT0IvazR0ckU1UU9nbGxs?= =?utf-8?B?d2tPYm5KUSt1dlVFZXB5UVIydVQ4cUhJVExYU1RTOUJoa3B4M3NqOXI4WEVo?= =?utf-8?B?dVg4Ulo4VnpRVnl3a0p2RFlFTzEwL0ZVanVJMkxhOWJlN3hlMEtJSVZqaHFQ?= =?utf-8?B?MkE1MVRpb2JMOTh0ckRZR1NWTGZhK0d0MWdnc0lJQmc1Sk4zZ2grM2I0Vkdm?= =?utf-8?B?YWp2RnpIWmZKSzhYSU9vTmJxeUEwV1BhR3RyeVhFTUJaU0dNTmw3UXBoOVc0?= =?utf-8?B?cFVZN3ZzQjREQW1sc0xXVDA5YnJGb1M1RTIyTHhVTE92YVhlVEdYUUJ0eUVS?= =?utf-8?B?bGFHNlBxWG0vTTVQdFdjcVJDUS9obUVNei9mMFYxeFMvVVZYUXNBYzlmWjRh?= =?utf-8?B?bndIVEcybklZWFNKTXVoNExpWm9LdTJETGtvL2h5M0NSMEhwL1FSU1VZc2FR?= =?utf-8?B?bS9heGJBMVZ2cGhsK1Qzb3JMRnM3NHp1RVBMMk5OL3B1cUgxdy8rQ2NxcWJI?= =?utf-8?B?QnQ0YjRFQWFmY1RCaDJLU2VQNGR3R3psVGs3NU42dnRmYUxnM1RDM2tVZ1lK?= =?utf-8?B?T3Y1eENZaTNtWWpjNEdRM0NSRDQ2ZFIvUVMvRWt4ejBiSHpJUnBUcnVsUk5C?= =?utf-8?B?WG9jVXIxK040SHI3YU9KRUpHRmxxczdSakhNOGZ3V2VEUGRrdFNNZ2pyTVdx?= =?utf-8?B?UVB5a2ZxZVN0blMrRjFQTU16VnJhY2pBZlNpRXMyNXpmdHJmQ09CWjBlZGc2?= =?utf-8?B?TFhvcWRmdEpFUUJ6Ujd0RUI3MXNNVU5pL0xwZXZ2c1Eyb3VIdFdwbUU2bFJy?= =?utf-8?B?eWJtak81UUFMN0x6Q2VmOE1BeW5sYjNzbFNsUnpDNnFubXJOWk9USG8ySkNI?= =?utf-8?B?cmlJQ1BhL0E1bmxScW1JQi9KWWh0NTNhZTFISEhFT092bk1PeU1rUVd2MGdB?= =?utf-8?B?Yk1DbWd6U2FQT0UrNndpS1N5bm9rdjM0Yk9xT0FtUm80RXQxY3IvZz09?= Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-OriginatorOrg: ntt.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: TY4P301MB1299.JPNP301.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-Network-Message-Id: 2e1f1d51-4f99-4e09-ed16-08ded299d04e X-MS-Exchange-CrossTenant-originalarrivaltime: 25 Jun 2026 09:11:59.9654 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: a629ef32-67ba-47a6-8eb3-ec43935644fc X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: IKzCK3pHGlBLvk9BoMtzMOXxH08NENkD01ktHF+OnMFtOZ9hnPNM1+E6DMB/b2FY7PUR/NSpHb9gP4vMBbcz+A== X-MS-Exchange-Transport-CrossTenantHeadersStamped: TY3P301MB0619 List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk SGkgUmljaGFyZCENCg0KPiA+IFdoYXQgZG8gb3RoZXJzIGludm9sdmVkIGluIHBsYW5uZXIgYW5k IHBsYW4tdHVuaW5nIHRoaW5rPw0KPiANCj4gSSB0aGluayB0aGlzIGlzIGEgbmljZSBpZGVhLiAg SXQgaXMgdHJ1ZSB0aGF0IHdlIGNhbiBzb21ldGltZXMgdXNlDQo+IGVuYWJsZV9zb3J0IHRvIHB1 c2ggdGhlIHBsYW5uZXIgb2ZmIGEgc29ydGVkIGdyb3VwaW5nIHBsYW4sIGJ1dCBpdCBpcw0KPiBh IG11Y2ggYmlnZ2VyIGhhbW1lciwgYXMgaXQgZGlzY291cmFnZXMgZXZlcnkgU29ydCBpbiB0aGUg cXVlcnksIG5vdA0KPiBqdXN0IHRoZSBvbmUgdW5kZXIgdGhlIGdyb3VwaW5nLCBzbyBpdCBjYW4g bW92ZSBvdGhlciBwYXJ0cyBvZiB0aGUNCj4gcGxhbiBhcm91bmQgYW5kIGRvZXNuJ3QgcmVhbGx5 IGlzb2xhdGUgdGhlIGdyb3VwaW5nIGNob2ljZS4gIEFuZCBpdA0KPiBkb2Vzbid0IGFsd2F5cyB3 b3JrIGFueXdheS4gIElmIHRoZSBncm91cGluZyBpbnB1dCBoYXBwZW5zIHRvIGJlDQo+IGNoZWFw bHkgc29ydGVkIHRoZXJlJ3Mgbm8gU29ydCB0byBwZW5hbGl6ZSwgc28gdGhlIHNvcnRlZCBwbGFu DQo+IHN1cnZpdmVzLiAgSSByYW4gaW50byBleGFjdGx5IHRoYXQgaW4gdW5pb24uc3FsLCB3aGVy ZSBlbmFibGVfc29ydD1vZmYNCj4gaXNuJ3QgcmVhbGx5IHByb2R1Y2luZyB0aGUgaGFzaGVkIElO VEVSU0VDVCBpdCBsb29rcyBsaWtlIGl0IGlzDQo+IHRlc3RpbmcuICBMb29rIGF0IHRoaXMgcGxh biBmcm9tIHVuaW9uLm91dDoNCj4gDQo+IC0tIGNoZWNrIGhhc2hlZCBpbXBsZW1lbnRhdGlvbg0K PiBzZXQgZW5hYmxlX2hhc2hhZ2cgPSB0cnVlOw0KPiBzZXQgZW5hYmxlX3NvcnQgPSBmYWxzZTsN Cj4gDQo+IGV4cGxhaW4gKGNvc3RzIG9mZikNCj4gc2VsZWN0IGZyb20gZ2VuZXJhdGVfc2VyaWVz KDEsNSkgaW50ZXJzZWN0IHNlbGVjdCBmcm9tIGdlbmVyYXRlX3NlcmllcygxLDMpOw0KPiAgICAg ICAgICAgICAgICAgICAgICAgICBRVUVSWSBQTEFODQo+IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCj4gIFNldE9wIEludGVyc2VjdA0K PiAgICAtPiAgRnVuY3Rpb24gU2NhbiBvbiBnZW5lcmF0ZV9zZXJpZXMNCj4gICAgLT4gIEZ1bmN0 aW9uIFNjYW4gb24gZ2VuZXJhdGVfc2VyaWVzIGdlbmVyYXRlX3Nlcmllc18xDQo+ICgzIHJvd3Mp DQo+IA0KPiBBbHNvLCB3aXRob3V0IHN1Y2ggYSBHVUMsIHRoZXJlIGFyZSBzb21lIHBhdGhzIHRo YXQgd2UgaGF2ZSBubyB3YXkgdG8NCj4gZ2VuZXJhdGUuICBMb29rIGF0IHRoaXMgY29tbWVudCBp biB1bmlvbi5zcWw6DQo+IA0KPiAtLSBXZSd2ZSBubyB3YXkgdG8gY2hlY2sgaGFzaGVkIFVOSU9O IGFzIHRoZSBlbXB0eSBwYXRoa2V5cyBpbiB0aGUNCj4gQXBwZW5kIGFyZQ0KPiAtLSBmaW5lIHRv IG1ha2UgdXNlIG9mIFVuaXF1ZSwgd2hpY2ggaXMgY2hlYXBlciB0aGFuIEhhc2hBZ2dyZWdhdGUg YW5kDQo+IHdlJ3ZlDQo+IC0tIG5vIG1lYW5zIHRvIGRpc2FibGUgVW5pcXVlLg0KDQpUaGFuayB5 b3UgZm9yIHlvdXIgY29tbWVudHMhIA0KSSdtIGdsYWQgdGhhdCB5b3UgYXBwcmVjaWF0ZSB0aGUg dmFsdWUgb2YgdGhlIHBhdGNoLiANCg0KUmVnYXJkaW5nIHRoZSBjb21tZW50cywNCkkgaGFkbid0 IHJlYWxpemVkIHRoYXQgdGhlcmUgd2VyZSBvdGhlciBwbGFuIG5vZGVzIGJlc2lkZXMgR3JvdXBB Z2cgdGhhdCANCndvdWxkIGFsc28gYmVuZWZpdCBmcm9tIHRoaXMgR1VDLiBJIGJlbGlldmUgdGhp cyBmZWF0dXJlIHdvdWxkIGJlIHVzZWZ1bCB0byANCm1hbnkgdXNlcnMuIEkgYWxzbyB0aGluayBp dCBjb3VsZCBiZSB2YWx1YWJsZSBmb3IgdGVzdGluZyBhbmQgdHVuaW5nIHRvb2xzIA0Kc3VjaCBh cyBwZ19wbGFuX2FkdmljZSwgZGV2ZWxvcGVkIGJ5IFJvYmVydC4gRm9yIHRoYXQgcmVhc29uLCBJ J2QgbGlrZSB0byANCmNvbnRpbnVlIGltcHJvdmluZyB0aGUgcGF0Y2ggd2l0aCB0aGUgZ29hbCBv ZiBnZXR0aW5nIGl0IGNvbW1pdHRlZCBmb3IgUEcyMC4NCg0KPiBSZWdhcmRpbmcgdGhlIHBhdGNo LCBjdXJyZW50bHkgdGhlIG5ldyBHVUMgb25seSBjb3ZlcnMgR3JvdXBBZ2dyZWdhdGUuDQo+IEkg dGhpbmsgd2Ugc2hvdWxkIG1ha2UgaXQgdG8gY292ZXIgYWxsIHNvcnQtYmFzZWQgZXF1aXZhbGVu dHMgb2YNCj4gZW5hYmxlX2hhc2hhZ2csIHN1Y2ggYXMgdGhlIHNvcnRlZCBtb2RlIG9mIFNldE9w IChhcyBEYXZpZCBzdWdnZXN0ZWQpLA0KPiBzb3J0LWJhc2VkIFVuaXF1ZSBzdGVwIHVzZWQgZm9y IERJU1RJTkNUIGFuZCBzZW1pam9pbg0KPiB1bmlxdWUtaWZpY2F0aW9uLCBhbmQgbWF5YmUgYWxz byBHcm91cCBub2Rlcy4NCg0KSXQgc291bmRzIGxpa2UgdGhlcmUgYXJlIHNldmVyYWwgcGxhbiBu b2RlcyB0aGF0IGNvdWxkIGJlIGNvdmVyZWQgYnkgdGhpcyBHVUMgDQooc3VjaCBhcyBTZXRPcCwg c29ydC1iYXNlZCBVbmlxdWUgZm9yIERJU1RJTkNULCBzZW1pam9pbiB1bmlxdWVpZmljYXRpb24s IA0KYW5kIEdyb3VwIG5vZGVzKS4gRG8geW91IHRoaW5rIHdlIHNob3VsZCBjb3ZlciBhbGwgb2Yg dGhlbSBiZWZvcmUgdGhlIHBhdGNoIA0Kd291bGQgYmUgY29uc2lkZXJlZCBjb21wbGV0ZSBlbm91 Z2ggZm9yIGNvbW1pdD8NCg0KSSBwbGFuIHRvIHdvcmsgdGhyb3VnaCB0aGVtIG9uZSBieSBvbmUs IGJ1dCBpZiBvdGhlcnMgYXJlIGludGVyZXN0ZWQgaW4gDQpjb250cmlidXRpbmcsIEkgd291bGQg Y2VydGFpbmx5IHdlbGNvbWUgdGhlIGNvbGxhYm9yYXRpb24uIFRoYXQgd291bGQgaGVscCANCm1v dmUgdGhlIHBhdGNoIGZvcndhcmQgbW9yZSBxdWlja2x5IGFuZCBhbGxvdyB1cyB0byBnYXRoZXIg ZmVlZGJhY2sgb24gDQpkaWZmZXJlbnQgcGFydHMgb2YgdGhlIGRlc2lnbiBpbiBwYXJhbGxlbC4N Cg0KQXMgYSBwcmFjdGljYWwgbWF0dGVyLCBvbmx5IHBhcnQgb2YgbXkgdGltZSBjYW4gYmUgZGV2 b3RlZCB0byBjb21tdW5pdHkgDQpkZXZlbG9wbWVudCB3b3JrLiBJZiBJIGVuZCB1cCBoYW5kbGlu ZyBldmVyeXRoaW5nIG15c2VsZiwgcHJvZ3Jlc3MgbWF5IGJlIA0Kc2xvd2VyLCBhbmQgSSdkIGxp a2UgdG8gYXZvaWQgdGhlIHBhdGNoIGxvc2luZyBtb21lbnR1bS4NCkEgcmVsYXRlZCBjaGFsbGVu Z2UgaXMgdGhhdCBleHRlbmRpbmcgdGhlIHBhdGNoIHRvIGNvdmVyIG1vcmUgcGxhbiBub2RlcyB3 aWxsIA0KbGlrZWx5IGluY3JlYXNlIHRoZSBzY29wZSBvZiB0aGUgcmVncmVzc2lvbiB0ZXN0IGNo YW5nZXMuIFBlcmhhcHMgaXQgd291bGQgDQptYWtlIHNlbnNlIHRvIHNwbGl0IHRoZSB3b3JrIGlu dG8gc21hbGxlciBwYXRjaGVzLCBhbGxvd2luZyBlYWNoIHNldCBvZiANCnJlZ3Jlc3Npb24gdGVz dCBjaGFuZ2VzIHRvIGJlIHJldmlld2VkIGluZGVwZW5kZW50bHkuDQoNCkknZCBiZSBpbnRlcmVz dGVkIHRvIGhlYXIgeW91ciB0aG91Z2h0cyBvbiBob3cgYmVzdCB0byBwcm9jZWVkLCBhbmQgd2hl dGhlciANCmRpdmlkaW5nIHRoZSB3b3JrIGludG8gc21hbGxlciBwaWVjZXMgd291bGQgbWFrZSBz ZW5zZS4NCg0KUmVnYXJkcywNClRhdHN1cm8gWWFtYWRhDQoNCg0KPiAtIFJpY2hhcmQNCg==