From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on starla X-Spam-Level: X-Spam-Status: No, score=-1.1 required=3.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,MAILING_LIST_MULTI,SPF_HELO_PASS,SPF_PASS autolearn=ham autolearn_force=no version=3.4.6 Received: from nue.mailmanlists.eu (nue.mailmanlists.eu [94.130.110.93]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by dcvr.yhbt.net (Postfix) with ESMTPS id 907B91F4C4 for ; Sat, 2 Nov 2024 19:59:38 +0000 (UTC) Authentication-Results: dcvr.yhbt.net; dkim=pass (1024-bit key; unprotected) header.d=ml.ruby-lang.org header.i=@ml.ruby-lang.org header.a=rsa-sha256 header.s=mail header.b=D5deISm5; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=ruby-lang.org header.i=@ruby-lang.org header.a=rsa-sha256 header.s=s1 header.b=JbsJY9RX; dkim-atps=neutral DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ml.ruby-lang.org; s=mail; t=1730577546; bh=bILhijQIvYokTHRiadFu4AZ9fknc2WWoPyuKoSreIqU=; h=Date:References:To:Reply-To:Subject:List-Id:List-Archive: List-Help:List-Owner:List-Post:List-Subscribe:List-Unsubscribe: From:Cc:From; b=D5deISm5pqXaEOj54qez2tIQxEVmJn1+oW8B5cyk8+umiFetbTCdqT4B+7R8j32L7 TW62RbXoSOEga9zT5P5ElYQ5lX9OuLchrTEDsZmEZBDeTcv+r0gR8uG0TwGkw2sN+q L2j/xdBPQsl4yZic6r+b58JXDbj7O9NpDh+r2u8o= Received: from nue.mailmanlists.eu (localhost [IPv6:::1]) by nue.mailmanlists.eu (Postfix) with ESMTP id 428D544B2A for ; Sat, 2 Nov 2024 19:59:06 +0000 (UTC) Authentication-Results: nue.mailmanlists.eu; dkim=pass (2048-bit key; unprotected) header.d=ruby-lang.org header.i=@ruby-lang.org header.a=rsa-sha256 header.s=s1 header.b=JbsJY9RX; dkim-atps=neutral Received: from s.wrqvwxzv.outbound-mail.sendgrid.net (s.wrqvwxzv.outbound-mail.sendgrid.net [149.72.154.232]) by nue.mailmanlists.eu (Postfix) with ESMTPS id 4068944AF0 for ; Sat, 2 Nov 2024 19:58:54 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ruby-lang.org; h=from:references:subject:mime-version:content-type: content-transfer-encoding:list-id:to:cc:content-type:from:subject:to; s=s1; bh=bYZmuDsdSauNYhJ0uV6vVP5LQwx8BIbD9otCe+NL8yY=; b=JbsJY9RXboN459D6uSEntOQtgjrRVThmmDay/ijUAQ4NXPTqXq5IIMEtDEhXpVj9EdMw YVj7AYlWx/LsK/zF5dcs988NOvxIkgQP/erf56ie58vKqiRDddFAcjQkFXXgavpoUegoX/ 1BdpeigINNPsBpD9z7iFOGjxpj5JAnDj0IifTsrzfqwl7EQ3h2poeowZgtfqKk4ySxQB3F bFVIHLT1wECFOkNPOzhSaxQ/OlrGJjibAa1chK0bF0Y/tv6fGA9mikJ7rzICDd3A0eHXc5 +sgYWdohMcl87bypJjmuzmb2ra0o+dEkeiRetofYJ4UwGhafYp20XY32SBgr0Mvg== Received: by recvd-55fc7fd858-wkmvc with SMTP id recvd-55fc7fd858-wkmvc-1-6726847C-21 2024-11-02 19:58:52.851302331 +0000 UTC m=+4413616.054366520 Received: from herokuapp.com (unknown) by geopod-ismtpd-19 (SG) with ESMTP id oJ1W4m95QLKzDuSx2t2w_Q for ; Sat, 02 Nov 2024 19:58:52.790 +0000 (UTC) Date: Sat, 02 Nov 2024 19:58:52 +0000 (UTC) Message-ID: References: Mime-Version: 1.0 X-Redmine-Project: ruby-master X-Redmine-Issue-Tracker: Feature X-Redmine-Issue-Id: 20861 X-Redmine-Issue-Author: tenderlovemaking X-Redmine-Issue-Priority: Normal X-Redmine-Sender: tenderlovemaking X-Mailer: Redmine X-Redmine-Host: bugs.ruby-lang.org X-Redmine-Site: Ruby Issue Tracking System X-Auto-Response-Suppress: All Auto-Submitted: auto-generated X-Redmine-MailingListIntegration-Message-Ids: 96354 X-SG-EID: =?us-ascii?Q?u001=2ElWMe69GVkz6xHw8adpMU6eTKSGZqJ7+E1FrjckpA7cvWAPDyDX2cAv9Do?= =?us-ascii?Q?wZtGRg2vsYQLU1U4jx+ljWd9jTs=2FpZn02mllaZG?= =?us-ascii?Q?4g2CkB4nYTCAyzJHFsoDmhnGpU3pr01i2ZOAK4w?= =?us-ascii?Q?qjXJDBG6hINMPKbHXadS4s4LIAF=2FPjR1ryPTxdJ?= =?us-ascii?Q?B=2FaGHsQhCO5t+NgLgv=2FdJOrOgyNgMTuLtavNplO?= =?us-ascii?Q?9XclP=2FrwBPKfJFkHkb6BwJ0TvUOCPigRnel+9rN?= =?us-ascii?Q?p+jjbuFWqG4Pj5739EwQzp0zLg=3D=3D?= To: ruby-core@ml.ruby-lang.org X-Entity-ID: u001.I8uzylDtAfgbeCOeLBYDww== Message-ID-Hash: UOYJGLSE5JTEVUSTSFCXHU3RRVR75BUY X-Message-ID-Hash: UOYJGLSE5JTEVUSTSFCXHU3RRVR75BUY X-MailFrom: bounces+313651-b711-ruby-core=ml.ruby-lang.org@em5188.ruby-lang.org X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; emergency; loop; banned-address; member-moderation; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header X-Mailman-Version: 3.3.9 Precedence: list Reply-To: Ruby developers Subject: [ruby-core:119689] [Ruby master Feature#20861] Add an environment variable for tuning the default thread quantum List-Id: Ruby developers Archived-At: List-Archive: List-Help: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: From: "tenderlovemaking (Aaron Patterson) via ruby-core" Cc: "tenderlovemaking (Aaron Patterson)" Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 SXNzdWUgIzIwODYxIGhhcyBiZWVuIHVwZGF0ZWQgYnkgdGVuZGVybG92ZW1ha2luZyAoQWFyb24g UGF0dGVyc29uKS4NCg0KDQppb3F1YXRpeCAoU2FtdWVsIFdpbGxpYW1zKSB3cm90ZSBpbiAjbm90 ZS0yOg0KPiBUaGlzIGNhbiBiZSB1c2VmdWwsIHNvIEkgYWdyZWUgd2l0aCBhZGRpbmcgaXQuDQo+ IA0KPiBGb3IgdGhlIHNha2Ugb2YgcHJvdmlkaW5nIGZlZWRiYWNrLCBzb21lIHRob3VnaHRzOg0K PiANCj4gMS4gRG9lcyB0aGUgZGVmYXVsdCB2YWx1ZSBvZiAxMDBtcyBtYWtlIHNlbnNlPyBTaG91 bGQgd2UgdXBkYXRlIHRoZSBkZWZhdWx0IHRvbz8NCj4gMi4gU2hvdWxkIHdlIG1hcmsgdGhpcyBh cyBleHBlcmltZW50YWwgaW4gdGhlIGZpcnN0IHBhc3MsIGUuZy4gZW1pdCBhIHdhcm5pbmcgaWYg aXQgaXMgc2V0PyBNYXliZSB3ZSBjYW4gZXhwZXJpbWVudCB3aXRoIGl0IGluIDMuNCBhbmQgY29t bWl0IGluIDMuNSBpZiBpdCBsb29rcyBnb29kPyAoSSdtIGFsc28gb2theSB3aXRoIHlvdXIgcHJv cG9zYWwgYXMgaXMgLSBqdXN0IGZvb2QgZm9yIHRob3VnaHQpLg0KPiAzLiBJcyB0aGVyZSBhIHdh eSB3ZSBjb3VsZCBhdXRvbWF0aWNhbGx5IHR1bmUgdGhpcyBudW1iZXIgYWNjb3JkaW5nIHRvIHRo ZSB3b3JrbG9hZD8gRm9yIGV4YW1wbGUsIGNvdWxkIHdlIG1lYXN1cmUgdGhlIHVuZmFpcm5lc3Mg b2YgdGhlIHNjaGVkdWxlciBhbmQgYWRqdXN0IGFjY29yZGluZ2x5Pw0KPiANCj4gUmVnYXJkaW5n ICgzKSwgSSB0aGluayBpdOKAmXMgZmFudGFzdGljIHRvIGhpZ2hsaWdodCB0aGlzIGlzc3VlIGFu ZCBwcm92aWRlIGEgd2F5IHRvIGFkZHJlc3MgaXQuIEhvd2V2ZXIsIElNSE8sIG1vc3QgdXNlcnMg bWF5IG5vdCBiZSBmYW1pbGlhciB3aXRoIHR1bmluZyB0aGlzIHNldHRpbmcgZWZmZWN0aXZlbHku IEEgZml4ZWQgdmFsdWUgbWlnaHQgcGVyZm9ybSB3ZWxsIGluIHNvbWUgc2NlbmFyaW9zIGJ1dCBt YXkgbm90IGhvbGQgdXAgaW4gb3RoZXJzLiBJZGVhbGx5LCBSdWJ5IGNvdWxkIGFkYXB0aXZlbHkg ZGV0ZXJtaW5lIHRoZSBvcHRpbWFsIHZhbHVlIGZvciB0aGUgYmVzdCBwZXJmb3JtYW5jZSwgc3Bh cmluZyB1c2VycyB0aGUgbmVlZCB0byB0d2VhayBpdCB0aGVtc2VsdmVzLiBJbiBvdGhlciB3b3Jk cywgaWYgaXQgd2VyZSBwb3NzaWJsZSB0byBkZXRlcm1pbmUgdGhpcyB2YWx1ZSBhdXRvbWF0aWNh bGx5LCB0aGlzIHByb3Bvc2FsIG1pZ2h0IGJlIGxlc3MgYmVuZWZpY2lhbOKAlG9yIGV2ZW4gZGV0 cmltZW50YWwgaWYgYSBmaXhlZCB2YWx1ZSB3ZXJlIHdvcnNlIHRoYW4gYW4gYXV0b21hdGljIGFk anVzdG1lbnQgc3lzdGVtLg0KDQpUaGFuayB5b3UgZm9yIHRoZSBmZWVkYmFjaywgYnV0IEkgdGhp bmsgdGhlc2UgcG9pbnRzIHNob3VsZCBiZSBhZGRyZXNzZWQgYXMgYSBkaWZmZXJlbnQgZmVhdHVy ZS4gIEkgZG8gdGhpbmsgdGhlIGRlZmF1bHQgcXVhbnR1bSBzaG91bGQgYmUgbG93ZXJlZCwgYnV0 IGl0J3MgaGFyZCB0byBleHBlcmltZW50IHdpdGggb3RoZXIgdmFsdWVzIHdoaWxlIHRoaXMgb25l IGlzIGhhcmQgY29kZWQuICBJZiBwZW9wbGUgYXJlIGFsbG93ZWQgdG8gZXhwZXJpbWVudCB3aXRo IG90aGVyIHZhbHVlcywgSSB0aGluayB3ZSBjYW4gbWFrZSBhIG1vcmUgaW5mb3JtZWQgZGVjaXNp b24gYWJvdXQgYSAiZ29vZCIgZGVmYXVsdC4NCg0Kbm9idSAoTm9idXlvc2hpIE5ha2FkYSkgd3Jv dGUgaW4gI25vdGUtMzoNCj4gWW91ciBwYXRjaCBtaXNzZXMgcHRocmVhZF93aW4zMi5jLCBhbmQg aWYgd2UgYWRkIGEgbmV3IGVudmlyb25tZW50IHZhcmlhYmxlLCBtYW4vcnVieS4xIG11c3QgYmUg dXBkYXRlZCBhcyB3ZWxsLg0KDQpUaGFua3MuICBJIF90aGlua18gSSd2ZSBmaXhlZCBpdC4NCg0K Ynlyb290IChKZWFuIEJvdXNzaWVyKSB3cm90ZSBpbiAjbm90ZS00Og0KPiBUaGlzIHdhcyBkaXNj dXNzZWQgYSBmZXcgdGltZXMgYXQgS2FpZ2ksIGFuZCBJTU8gYSBxdWFudHVtIHZhbHVlIG9uIGEg cGVyIHRocmVhZCBiYXNpcyB3b3VsZCBtYWtlIG1vcmUgc2Vuc2UuDQoNClllcywgSSB0aGluayBp dCdzIGdvb2QgdG8gY29udHJvbCB0aGUgcXVhbnR1bSBvbiBhIHBlciB0aHJlYWQgYmFzaXMuICBX ZSBjYW4gYWxyZWFkeSBkbyB0aGF0IHdpdGggYFRocmVhZCNwcmlvcml0eWAgKGFzIHlvdSBrbm93 KS4gIEFyZSB5b3UgdGhpbmtpbmcgc29tZXRoaW5nIGRpZmZlcmVudCAobGlrZSBzcGVjaWZ5IHF1 YW50dW0gaW4gdGltZSByYXRoZXIgdGhhbiBwcmlvcml0eT8pDQoNCk1vc3QgdGhyZWFkZWQgYXBw cyBfZG9uJ3RfIHNldCB0aHJlYWQgcHJpb3JpdHkuICBQdW1hLCBTaWRla2lxLCBhbmQgZXZlbiB0 aGUgdGhyZWFkIHBvb2xzIGluIGNvbmN1cnJlbnQtcnVieSBkb24ndCBvZmZlciBhIHNldHRpbmcg dG8gY2hhbmdlIHRoZSBxdWFudHVtL3ByaW9yaXR5LiAgSSB0aGluayB0aGF0IHRoZXkgX3Nob3Vs ZF8gb2ZmZXIgdGhpcyBzZXR0aW5nLCBidXQgcHJpb3JpdHkgaXMgcmVsYXRpdmUgdG8gdGhlIGRl ZmF1bHQgcXVhbnR1bSwgYW5kIHRoZXJlIGlzIG5vIHdheSB0byBleHBlcmltZW50IHdpdGggdGhl IGRlZmF1bHQgcXVhbnR1bS4NCg0KSSB0aGluayBiZWluZyBhYmxlIHRvIGFkanVzdCB0aGUgZGVm YXVsdCBxdWFudHVtIHZpYSBlbnYgdmFyIGlzIGEgZ29vZCBmZWF0dXJlIGJlY2F1c2UgcGVvcGxl IGNhbiBleHBlcmltZW50IF93aXRob3V0XyBjaGFuZ2luZyBhbnkgYXBwbGljYXRpb24gY29kZSwg YW5kIHdvdWxkIGJlIGEgZ29vZCB3YXkgZm9yIHVzIHRvIGZpbmQgYSBiZXR0ZXIgZGVmYXVsdC4N Cg0KLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KRmVhdHVyZSAjMjA4 NjE6IEFkZCBhbiBlbnZpcm9ubWVudCB2YXJpYWJsZSBmb3IgdHVuaW5nIHRoZSBkZWZhdWx0IHRo cmVhZCBxdWFudHVtDQpodHRwczovL2J1Z3MucnVieS1sYW5nLm9yZy9pc3N1ZXMvMjA4NjEjY2hh bmdlLTExMDM0OQ0KDQoqIEF1dGhvcjogdGVuZGVybG92ZW1ha2luZyAoQWFyb24gUGF0dGVyc29u KQ0KKiBTdGF0dXM6IE9wZW4NCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0NClRoZSBkZWZhdWx0IHRocmVhZCBxdWFudHVtIGlzIGN1cnJlbnRseSBbaGFyZCBjb2RlZCBh dCAxMDBtc10oaHR0cHM6Ly9naXRodWIuY29tL3J1YnkvcnVieS9ibG9iL2M3NzA4ZDIyYzMzMDQw YTc0ZWE3YWM2ODNiZjc0MDdkMzc1OWVkZmUvdGhyZWFkX3B0aHJlYWQuYyNMMzIzKS4gIFRoaXMg Y2FuIGltcGFjdCBtdWx0aXRocmVhZGVkIHN5c3RlbXMgdGhhdCBhcmUgdHJ5aW5nIHRvIHByb2Nl c3MgUnVieSBsZXZlbCBDUFUgYm91bmQgd29yayBhdCB0aGUgc2FtZSB0aW1lIGFzIElPIHdvcmsu DQoNCkkgd291bGQgbGlrZSB0byBhZGQgYW4gZW52aXJvbm1lbnQgdmFyaWFibGUgYFJVQllfVEhS RUFEX0RFRkFVTFRfUVVBTlRVTV9NU2AgdGhhdCBhbGxvd3MgdXNlcnMgdG8gc3BlY2lmeSB0aGUg ZGVmYXVsdCB0aHJlYWQgcXVhbnR1bSAoaW4gbWlsbGlzZWNvbmRzKSB2aWEgYW4gZW52aXJvbm1l bnQgdmFyaWFibGUuICBJdCBkZWZhdWx0cyB0byBvdXIgY3VycmVudCBkZWZhdWx0IG9mIDEwMG1z LiAgSSd2ZSBzdWJtaXR0ZWQgdGhlIHBhdGNoIFtoZXJlXShodHRwczovL2dpdGh1Yi5jb20vcnVi eS9ydWJ5L3B1bGwvMTE5ODEpLg0KDQpIZXJlIGlzIGEgUnVieSBwcm9ncmFtIHRvIGRlbW9uc3Ry YXRlIHRoZSBwcm9ibGVtOg0KDQpgYGBydWJ5DQpkZWYgbWVhc3VyZQ0KICB4ID0gUHJvY2Vzcy5j bG9ja19nZXR0aW1lKFByb2Nlc3M6OkNMT0NLX01PTk9UT05JQykNCiAgeWllbGQNCiAgUHJvY2Vz cy5jbG9ja19nZXR0aW1lKFByb2Nlc3M6OkNMT0NLX01PTk9UT05JQykgLSB4DQplbmQNCg0KZGVm IGZpYihuKQ0KICBpZiBuIDwgMg0KICAgIG4NCiAgZWxzZQ0KICAgIGZpYihuLTIpICsgZmliKG4t MSkNCiAgZW5kDQplbmQNCg0KIyBmaW5kIGZpYiB0aGF0IHRha2VzIH41MDBtcw0KZmliX2kgPSA1 MC50aW1lcy5maW5kIHsgfGl8IG1lYXN1cmUgeyBmaWIoaSkgfSA+PSAwLjA1IH0NCnNsZWVwX2kg PSBtZWFzdXJlIHsgZmliKGZpYl9pKSB9DQoNCnRocmVhZHMgPSBbDQogIFRocmVhZC5uZXcgew0K ICAgIDEwMC50aW1lcyB7DQogICAgICBzbGVlcChzbGVlcF9pKQ0KICAgICAgIyBzb21ldGltZXMg c3RhbGxlZCB3YWl0aW5nIGZvciBmaWIncyBxdWFudHVtIHRvIGZpbmlzaA0KICAgIH0NCiAgICBw dXRzICJkb25lIDEiDQogIH0sDQogIFRocmVhZC5uZXcgeyAxMDAudGltZXMgeyBmaWIoZmliX2kp IH07IHB1dHMgImRvbmUgMiIgfSwNCl0NCg0KIyBXZSBleHBlY3QgdGhlIHRvdGFsIHRpbWUgdG8g YmUgYWJvdXQgMTAwICogc2xlZXBfaSAofjUgc2Vjb25kcykgYmVjYXVzZQ0KIyB0aGVvcmV0aWNh bGx5IHRoZSBzbGVlcCB0aHJlYWQgY291bGQgYmUgZG9uZSBuZWFybHkgY29tcGxldGVseSBpbiBw YXJhbGxlbCB0bw0KIyB0aGUgZmliIHRocmVhZC4NCiMNCiMgQnV0IGJlY2F1c2UgdGhlIGBzbGVl cGAgdGhyZWFkIGlzIGl0ZXJhdGluZyBvdmVyIHRoZSBzbGVlcCBjYWxsLCBpdCBtdXN0IHdhaXQN CiMgZm9yIHRoZSBgZmliYCB0aHJlYWQgdG8gY29tcGxldGUgaXRzIHF1YW50dW0sIGJlZm9yZSBp dCBjYW4gc3RhcnQgdGhlIG5leHQgaXRlcmF0aW9uLg0KIw0KIyBUaGlzIG1lYW5zIGVhY2ggc2xl ZXAgaXRlcmF0aW9uIGNvdWxkIHRha2UgdXAgdG8gYHNsZWVwX2kgKyAxMDBtc2ANCiMNCiMgV2Un cmUgY2FsbGluZyB0aGF0IHN0YWxsZWQgdGltZSAid2FzdGUiDQp0b3RhbCA9IG1lYXN1cmUgeyB0 aHJlYWRzLmVhY2goJjpqb2luKSB9DQp3YXN0ZSA9IHRvdGFsIC0gKHNsZWVwX2kgKiAxMDApDQpw IFRPVEFMOiB0b3RhbCwgV0FTVEU6IHdhc3RlDQpgYGANCg0KVGhlIHByb2dyYW0gaGFzIHR3byB0 aHJlYWRzLiAgT25lIHRocmVhZCBpcyB1c2luZyBDUFUgdGltZSBieSBjb21wdXRpbmcgYGZpYmAg aW4gYSBsb29wLiAgVGhlIG90aGVyIHRocmVhZCBpcyBzaW11bGF0aW5nIElPIHRpbWUgYnkgY2Fs bGluZyBgc2xlZXBgIGluIGEgbG9vcC4gIFdoZW4gdGhlIGBzbGVlcGAgY2FsbCBjb21wbGV0ZXMs IGl0IGNhbiBzdGFsbCwgd2FpdGluZyBmb3IgdGhlIHF1YW50dW0gaW4gdGhlIGZpYiB0aHJlYWQg dG8gZXhwaXJlLiAgVGhhdCBtZWFucyB0aGF0IGVhY2ggaXRlcmF0aW9uIG9uIHNsZWVwIGNhbiBh Y3R1YWxseSB0YWtlIGBzbGVlcCB0aW1lICsgdGhyZWFkIHF1YW50dW1gLCBvciBpbiB0aGlzIGNh c2UgfjYwMG1zIHdoZW4gd2UgZXhwZWN0ZWQgaXQgdG8gb25seSB0YWtlIH41MDBtcy4NCg0KSWRl YWxseSwgdGhlIGFib3ZlIHByb2dyYW0gd291bGQgdGFrZSBgNTAwbXMgKiAxMDBgIHNpbmNlIGFs bCBgc2xlZXBgIGNhbGxzIHNob3VsZCBiZSBhYmxlIHRvIGV4ZWN1dGUgaW4gcGFyYWxsZWwgd2l0 aCB0aGUgYGZpYmAgY2FsbHMuICBPZiBjb3Vyc2UgdGhpcyBpc24ndCB0cnVlIGJlY2F1c2UgdGhl IHNsZWVwIHRocmVhZCBtdXN0IGFjcXVpcmUgdGhlIEdWTCBiZWZvcmUgaXQgY2FuIGNvbnRpbnVl IHRoZSBuZXh0IGl0ZXJhdGlvbiwgc28gdGhlcmUgd2lsbCBhbHdheXMgYmUgX3NvbWVfIG92ZXJo ZWFkLiAgVGhpcyBmZWF0dXJlIGlzIGZvciBhbGxvd2luZyBwZW9wbGUgdG8gdHVuZSB0aGF0IG92 ZXJoZWFkLg0KDQpJZiB3ZSBydW4gdGhpcyBwcm9ncmFtIHdpdGggdGhlIGRlZmF1bHQgcXVhbnR1 bSB0aGUgb3V0cHV0IGxvb2tzIGxpa2UgdGhpczoNCg0KYGBgDQokIC4vbWluaXJ1YnkgLXYgZmli dGVzdC5yYg0KcnVieSAzLjQuMGRldiAoMjAyNC0xMS0wMVQxNDo0OTo1MFogcXVhbnR1bS1jb21w dXRpbmcgYzc3MDhkMjJjMykgK1BSSVNNIFthcm02NC1kYXJ3aW4yNF0NCmRvbmUgMg0KZG9uZSAx DQp7VE9UQUw6IDEyLjY3MjgyMTk5OTk5MzE3NSwgV0FTVEU6IDQuOTYwNzIxOTk2MTQ3MTg2fQ0K YGBgDQoNClRoZSBvdXRwdXQgc2hvd3MgdGhhdCBvdXIgcHJvZ3JhbSBzcGVudCBhYm91dCA1IHNl Y29uZHMgc3RhbGxlZCwgd2FpdGluZyB0byBhY3F1aXJlIHRoZSBHVkwuDQoNCldpdGggdGhpcyBw YXRjaCB3ZSBjYW4gbG93ZXIgdGhlIGRlZmF1bHQgcXVhbnR1bSwgYW5kIHRoZSBvdXRwdXQgaXMg bGlrZSB0aGlzOg0KDQpgYGANCiQgUlVCWV9USFJFQURfREVGQVVMVF9RVUFOVFVNX01TPTEwIC4v bWluaXJ1YnkgLXYgZmlidGVzdC5yYg0KcnVieSAzLjQuMGRldiAoMjAyNC0xMS0wMVQyMjowNjoz NVogcXVhbnR1bS1jb21wdXRpbmcgMDg3NTAwNjQzZCkgK1BSSVNNIFthcm02NC1kYXJ3aW4yNF0N CmRvbmUgMg0KZG9uZSAxDQp7VE9UQUw6IDguODk4NTI2MDAwMDkxODA2LCBXQVNURTogMS40MTY4 MjYwMDQzOTUyNjE0fQ0KYGBgDQoNClNwZWNpZnlpbmcgdGhlIEVOViB0byBjaGFuZ2UgdGhlIHF1 YW50dW0gdG8gMTBtcyBsb3dlcmVkIG91ciB3YXN0ZSBpbiB0aGUgcHJvZ3JhbSB0byB+MS40IHNl Y29uZHMuDQoNCkl0J3MgY29tbW9uIGZvciB3ZWIgYXBwbGljYXRpb25zIHRvIGRvIG1peGVkIENQ VSBhbmQgSU8gYm91bmQgdGFza3MgaW4gdGhyZWFkcyAoc2VlIHRoZSBQdW1hIHdlYnNlcnZlciks IHNvIGl0IHdvdWxkIGJlIGdyZWF0IGlmIHRoZXJlIHdhcyBhIHdheSB0byBjdXN0b21pemUgdGhl IHRocmVhZCBxdWFudHVtIGRlcGVuZGluZyBvbiB5b3VyIGFwcGxpY2F0aW9uJ3Mgd29ya2xvYWQu DQoNCg0KDQotLSANCmh0dHBzOi8vYnVncy5ydWJ5LWxhbmcub3JnLw0KIF9fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KIHJ1YnktY29yZSBtYWlsaW5nIGxpc3Qg LS0gcnVieS1jb3JlQG1sLnJ1YnktbGFuZy5vcmcKIFRvIHVuc3Vic2NyaWJlIHNlbmQgYW4gZW1h aWwgdG8gcnVieS1jb3JlLWxlYXZlQG1sLnJ1YnktbGFuZy5vcmcKIHJ1YnktY29yZSBpbmZvIC0t IGh0dHBzOi8vbWwucnVieS1sYW5nLm9yZy9tYWlsbWFuMy9saXN0cy9ydWJ5LWNvcmUubWwucnVi eS1sYW5nLm9yZy8=