Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:107758 Return-Path: Delivered-To: mailing list internals@lists.php.net Received: (qmail 98968 invoked from network); 5 Nov 2019 11:57:23 -0000 Received: from unknown (HELO php-smtp3.php.net) (208.43.231.12) by pb1.pair.com with SMTP; 5 Nov 2019 11:57:23 -0000 Received: from php-smtp3.php.net (localhost [127.0.0.1]) by php-smtp3.php.net (Postfix) with ESMTP id 427CA2C052D for ; Tue, 5 Nov 2019 01:46:45 -0800 (PST) X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on php-smtp3.php.net X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,RCVD_IN_DNSWL_NONE, SPF_HELO_PASS autolearn=no autolearn_force=no version=3.4.2 X-Spam-ASN: AS14061 192.241.160.0/19 X-Spam-Virus: Error (Cannot connect to unix socket '/var/run/clamav/clamd.ctl': connect: Connection refused) Received: from outbound.cloudiway.bcisoft.eu (outbound.cloudiway.bcisoft.eu [192.241.166.120]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by php-smtp3.php.net (Postfix) with ESMTPS for ; Tue, 5 Nov 2019 01:46:44 -0800 (PST) Received: from NAM04-SN1-obe.outbound.protection.outlook.com (mail-sn1nam04lp2056.outbound.protection.outlook.com [104.47.44.56]) by outbound.cloudiway.bcisoft.eu (Postfix) with ESMTPS id EAD15600CE; Tue, 5 Nov 2019 04:52:14 -0500 (EST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=KxFXG3SNnk1l5BJn7sV5u95xXh7YNwYVdzaarkVFnABzBOPpZTPv2lOK7RK7fPWJQyeSlcmFl8oOA1bnNR+/noHJvuqIyTUiijnNtIB9pYb13iN+W3qReU0FJrPrHdYIhtnNdx9+BaOp8Cqe382QqamKUsQoS+c0n23AsGLQwoeeXSVM/q0YerlPD3ZqaTm22iRd5ZbptRZfelpK+pcYo5sb6dmyozETMGofokimcJG0XmZGJeTgEKy3QEMJXa7u27jvQfBUwZAZoF1tNaWn3+fsPGARBxa+6YbOj0fLivkuNDXlT6wwOZ6iEa7o1xm/ZiN0D964htR4ymiqrNwlvA== 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=XsHo9PAvcSK01Jx3ZlCDx0s4bRZ075A1vy3XxyQFsCQ=; b=lI+uxcfBC9EhdESR4aWzKQikMoIfyjULa7gJuIX0MjmxiP8oyd7TsDa6AOY9tjdhSTMlGW52oSsOeG/3jEMiR/i0dhm2ZkLyolYE5ip8qNWzJoB4mpp9a+eZ9wWmpf07gd6thSJW6WAEeOx91w5mtTIXI9e0pg4MpDyteD0pZq1m2qRIl4KfPwSPzzvMmhG2XHrNNfefnN30vsei0KqjaJ/k0pcpHINNFnloLf7uaKKFKg8CdAsVTmACBItmj5AKKSIrboQpurkzL0WcGn1uA0oMw9eJsUfUtR9DBMZYcU8GR2Msnjn+2yZXW4KnJh88biwamFVwq76v8NVRL+fv+A== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=zend.com; dmarc=pass action=none header.from=zend.com; dkim=pass header.d=zend.com; arc=none Received: from BYAPR02MB5766.namprd02.prod.outlook.com (20.179.88.204) by BYAPR02MB5336.namprd02.prod.outlook.com (20.177.124.93) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2408.24; Tue, 5 Nov 2019 09:46:40 +0000 Received: from BYAPR02MB5766.namprd02.prod.outlook.com ([fe80::a816:dd9c:82fb:a8e0]) by BYAPR02MB5766.namprd02.prod.outlook.com ([fe80::a816:dd9c:82fb:a8e0%7]) with mapi id 15.20.2408.024; Tue, 5 Nov 2019 09:46:40 +0000 To: Dik Takken , Nikita Popov CC: PHP internals Thread-Topic: [PHP-DEV] Re: [RFC] Union Types v2 Thread-Index: AQHViLwyaEvmMSOYQkSvsPkH2vQSl6dmmFE8gAGgjCKAAvHLAIANUT6AgAPucYA= Date: Tue, 5 Nov 2019 09:46:39 +0000 Message-ID: References: <36bfc10b-1adb-f67c-894e-8b6fc270e5fd@xs4all.nl> In-Reply-To: <36bfc10b-1adb-f67c-894e-8b6fc270e5fd@xs4all.nl> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-clientproxiedby: HE1P195CA0018.EURP195.PROD.OUTLOOK.COM (2603:10a6:3:fd::28) To BYAPR02MB5766.namprd02.prod.outlook.com (2603:10b6:a03:125::12) authentication-results: spf=none (sender IP is ) smtp.mailfrom=dmitry@zend.com; x-ms-exchange-messagesentrepresentingtype: 1 x-originating-ip: [212.232.72.197] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: aa4a74a7-83d9-40f2-6191-08d761d50e96 x-ms-traffictypediagnostic: BYAPR02MB5336: x-ms-exchange-purlcount: 1 x-microsoft-antispam-prvs: cloudiway500: noi$yRiver10 x-ms-oob-tlc-oobclassifiers: OLM:9508; x-forefront-prvs: 0212BDE3BE x-forefront-antispam-report: SFV:NSPM;SFS:(10019020)(366004)(346002)(396003)(39840400004)(136003)(376002)(199004)(189003)(52314003)(36756003)(305945005)(81156014)(81166006)(8936002)(8676002)(478600001)(66946007)(66556008)(64756008)(66476007)(66446008)(7736002)(25786009)(316002)(110136005)(26005)(966005)(16799955002)(86362001)(31696002)(52116002)(6116002)(31686004)(6436002)(53546011)(6506007)(3846002)(386003)(102836004)(14454004)(99286004)(2906002)(6246003)(71200400001)(76176011)(71190400001)(11346002)(6512007)(446003)(6306002)(256004)(4326008)(14444005)(5024004)(2616005)(476003)(186003)(486006)(229853002)(6486002)(5660300002)(66066001);DIR:OUT;SFP:1102;SCL:1;SRVR:BYAPR02MB5336;H:BYAPR02MB5766.namprd02.prod.outlook.com;FPR:;SPF:None;LANG:en;PTR:InfoNoRecords;A:1;MX:1; received-spf: None (protection.outlook.com: zend.com does not designate permitted sender hosts) x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: POtiKOxxjZwUKvScBoItmEsRXHnsGpKJeOE+RvE2tfZmODFU5NTH1gSlGmUx951cFzXXhFl5b2zynmpH4ZhrkAV5SElSzcQcNKyyTS2m+zOoFQf33VMd0iPOwuBglN1/Kvw25XIb/Pgg/1WQFccrlD4wmuAM3ujy5CzK4jrWah69XbmpSOp7Juvmy4N5LQpM5AfSP3Ew89mXPa7xY7UjmCQrskezkfnfI0hT8PEzMcE7ufP2TDJ1gOLWfC0sgt2JpGTjYTAP04emkJ5D3+e4lZ1btIRI9I8ZIk4dYrVOfKlGOnr33o5hxEYHvwXko67oQUQhm+zJHhSexIs8J2sfeSgvuazXLJfJ9j0ET5/AZ6twRHx5mMQF0CIxsKjMImzg3Tc66VzsTcTd/Y5O147c1mFeFXkTABynbIO39Unjx8u2Rv0dfejZJ9NlB3n00NyYqvl4pKS08sQgnFZYQWjrED/G7cw4jMgGb5sW4xbGSts= x-ms-exchange-transport-forked: True Content-Type: text/plain; charset="utf-8" Content-ID: <00EF087EF009664E99BC5A45153FA51B@namprd02.prod.outlook.com> Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-OriginatorOrg: zend.com X-MS-Exchange-CrossTenant-Network-Message-Id: aa4a74a7-83d9-40f2-6191-08d761d50e96 X-MS-Exchange-CrossTenant-originalarrivaltime: 05 Nov 2019 09:46:40.6044 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 32210298-c08b-4829-8097-6b12c025a892 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: KU4Bs60Dii6lIyYavWaVsrKothIuFAuAeN4Mag+PypiGLo06PDodAY3tCYMOrXBYJ5jaUaaV7SBlntO7jq1vBqVFd5toKY9aIOqkpwPrbGY= X-MS-Exchange-Transport-CrossTenantHeadersStamped: BYAPR02MB5336 X-Envelope-From: Subject: Re: [PHP-DEV] Re: [RFC] Union Types v2 From: dmitry@zend.com (Dmitry Stogov) SGkgRGlrLA0KDQpPbiAxMS8zLzE5IDEyOjQ0IEFNLCBEaWsgVGFra2VuIHdyb3RlOg0KPiBPbiAy NS0xMC0xOSAxMjoyMiwgTmlraXRhIFBvcG92IHdyb3RlOg0KPj4gRm9yIHJlZmVyZW5jZSwgaGVy ZSBhcmUgdGhlIHJlc3VsdHMgSSBnZXQgd2l0aC93aXRob3V0IEpJVDoNCj4+IGh0dHBzOi8vZ2lz dC5naXRodWIuY29tL25pa2ljLzJhMmQzNjNmZmZhYTNhZWIyNTFkYTk3NmYwZWRiYzMzDQo+IA0K PiBJIHRveWVkIGEgYml0IHdpdGggdGhlIGJlbmNobWFyayBzY3JpcHQgKHVuaW9uX2JlbmNoLnBo cCkgYXMgd2VsbCBhbmQNCj4gd2FudGVkIHRvIHNoYXJlIHNvbWUgb2JzZXJ2YXRpb25zLiBGaXJz dCBvZiBhbGwgSSBub3RpY2VkIHRoZSBiZW5jaG1hcmsNCj4gc2NyaXB0IGhhcyBhIHR5cG8gb24g bGluZSA5MCB3aGVyZSBpdCBpcyBjYWxsaW5nIHRoZSB3cm9uZyBmdW5jdGlvbi4gSXQNCj4gc2hv dWxkIHJlYWQ6DQo+IA0KPiAgICBmdW5jNigxLCAyLCAzLCA0LCA1KTsNCj4gDQo+IFdoZW4gcnVu bmluZyB0aGUgY29ycmVjdGVkIHNjcmlwdCBJIHNlZSB0aGF0IGFkZGluZyA1IGFyZ3VtZW50IHR5 cGUNCj4gY2hlY2tzIGFuZCBhIHJldHVybiB0eXBlIGNoZWNrIGNhdXNlIGFsbW9zdCA0eCBzbG93 ZG93bi4gTXkgcmVzdWx0cw0KPiAod2l0aCBvcGNhY2hlIC8gaml0KToNCj4gDQo+IGZ1bmMoJGEs JGIsJGMsJGQsJGUpICAgICAgICAgICAgICAgMC42ODAgICAgMC41ODMNCj4gZnVuYyhpbnQgJGEs JGIsJGMsJGQsJGUpOiBpbnQgICAgICAyLjEwNiAgICAyLjAwOQ0KDQpUaGFua3MgZm9yIGNhdGNo aW5nIHRoaXMuIEF0IGxlYXN0LCBub3cgSSBzZWUgMiB0aW1lcyBzbG93ZG93biB3aXRob3V0IA0K SklULCB0aGF0IEkgZXhwZWN0ZWQsIGJ1dCBkaWRuJ3Qgc2VlLg0KDQpmdW5jKCRhLCRiLCRjLCRk LCRlKSAgICAgICAgICAgICAgIDEuNzQ2ICAgIDEuNTU1DQpmdW5jKGludCAkYSwkYiwkYywkZCwk ZSk6IGludCAgICAgIDMuNjQ3ICAgIDMuNDU1DQoNCkpJVCB3aWxsIGFibGUgdG8gZWxpbWluYXRl IHR5cGUgY2hlY2tzIG9ubHkgaWYgaXQgZXhhY3RseSBrbm93cyB0aGUgDQpjYWxsZWQgZnVuY3Rp b24gYXQgY2FsbGVyIHNpdGUuIFVuZm9ydHVuYXRlbHksIHRoaXMgaXMgcXVpdGUgcmFyZSBjYXNl LCANCmJlY2F1c2UgdGhlIGZ1bmN0aW9ucyBtYXkgYmUgZGVjbGFyZWQgaW4gZGlmZmVyZW50IGZp bGVzLCBPT1AsIHR5cGUgDQp2YXJpYW5jZSwgZXRjLg0KDQo+IA0KPiBIb3dldmVyLCB0aGlzIGFw cGVhcnMgdG8gYmUgZW50aXJlbHkgZHVlIHRvIHRoZSByZXR1cm4gdHlwZSBjaGVjaw0KPiBsYWNr aW5nIGEgSklUIGltcGxlbWVudGF0aW9uLCBhcyBwb2ludGVkIG91dCBieSBOaWtpdGEuIEFkZGlu ZyBvbmUgbW9yZQ0KPiB0ZXN0IHRvIHRoZSBiZW5jaG1hcmsgc2hvd3MgdGhpcyBuaWNlbHk6DQo+ IA0KPiBmdW5jKCRhLCRiLCRjLCRkLCRlKSAgICAgICAgICAgICAgIDAuNjc1ICAgIDAuNTc1DQo+ IGZ1bmMoaW50ICRhLCRiLCRjLCRkLCRlKSAgICAgICAgICAgMC41NzQgICAgMC40NzUNCj4gZnVu YyhpbnQgJGEsJGIsJGMsJGQsJGUpOiBpbnQgICAgICAyLjEwNiAgICAyLjAwOQ0KPiANCj4gTm93 IHdlIGNhbiBzZWUgdGhhdCB0aGUgYXJndW1lbnQgdHlwZSBoaW50IGFjdHVhbGx5IGltcHJvdmVz DQo+IHBlcmZvcm1hbmNlLCBJIGd1ZXNzIGR1ZSB0byBpdCBuYXJyb3dpbmcgZG93biB0aGUgbnVt YmVyIG9mIHBvc3NpYmxlDQo+IHR5cGVzIHRoYXQgbmVlZCB0byBiZSBjb25zaWRlcmVkIGZvciB0 aGUgZnVuY3Rpb24gYXJndW1lbnRzLg0KPiANCj4gVW5pb24gdHlwZXMgYWxsb3cgZm9yIG1vcmUg YWNjdXJhdGUgdHlwZSBoaW50aW5nIGFzIHdlbGwgYXMgdHlwZSBoaW50aW5nDQo+IGluIHBsYWNl cyB3aGVyZSB0aGlzIGlzIGN1cnJlbnRseSBub3QgcG9zc2libGUuIEFzIGEgcmVzdWx0IHVuaW9u IHR5cGVzDQo+IGNhbiBiZSB1c2VkIHRvIG9idGFpbiBwZXJmb3JtYW5jZSBnYWlucy4gQXMgYW4g ZXhhbXBsZSwgY29uc2lkZXIgdGhlDQo+IGNhc2Ugd2hlcmUgdGhlIHJldHVybiB0eXBlIGhpbnQg bWF0Y2hlcyB0aGUgdHlwZSBpbmZvcm1hdGlvbiB0aGF0DQo+IG9wY2FjaGUgaGFzIGluZmVycmVk IGFib3V0IHRoZSB2YXJpYWJsZSB0aGF0IGlzIHJldHVybmVkLiBJbiB0aGF0IGNhc2UsDQo+IHRo ZSByZXR1cm4gdHlwZSBjaGVjayBpcyBvcHRpbWl6ZWQgYXdheS4gTGV0IHVzIHRyeSBhbmQgbGV2 ZXJhZ2UgdW5pb24NCj4gdHlwZXMgdG8gbWFrZSB0aGlzIGhhcHBlbi4gRnJvbSB0aGUgYmVuY2ht YXJrIHNjcmlwdCB3ZSB0YWtlIGZ1bmM2Og0KPiANCj4gICAgZnVuY3Rpb24gZnVuYzYoaW50ICRh LCBpbnQgJGIsIGludCAkYywgaW50ICRkLCBpbnQgJGUpIDogaW50IHsNCj4gICAgICAgIHJldHVy biAkYSArICRiICsgJGMgKyAkZCArICRlOw0KPiAgICB9DQo+IA0KPiBhbmQgYWRqdXN0IGl0IHRv IHJlYWQ6DQo+IA0KPiAgICBmdW5jdGlvbiBmdW5jNihpbnQgJGEsIGludCAkYiwgaW50ICRjLCBp bnQgJGQsIGludCAkZSkgOiBpbnR8ZmxvYXQgew0KPiAgICAgICAgcmV0dXJuICRhICsgJGIgKyAk YyArICRkICsgJGU7DQo+ICAgIH0NCj4gDQo+IE5vdyB0aGUgcmV0dXJuIHR5cGUgaGludCBtYXRj aGVzIHdoYXQgb3BjYWNoZSBpbmZlcnMgdGhlIHJlc3VsdCBvZiB0aGUNCj4gZXhwcmVzc2lvbiB3 aWxsIGJlIGFuZCB0aGUgY29zdCBvZiByZXR1cm4gdHlwZSBjaGVja2luZyBkaXNhcHBlYXJzDQo+ IGNvbXBsZXRlbHk6DQo+IA0KPiBmdW5jKCRhLCRiLCRjLCRkLCRlKSAgICAgICAgICAgICAgICAg MC42NjMgICAgMC41NjgNCj4gZnVuYyhpbnQgJGEsJGIsJGMsJGQsJGUpICAgICAgICAgICAgIDAu NTc0ICAgIDAuNDc1DQo+IGZ1bmMoaW50ICRhLCRiLCRjLCRkLCRlKTogaW50fGZsb2F0ICAwLjU2 MSAgICAwLjQ2Ng0KPiANCj4gVGhlbiwgb24gdG8gYW5vdGhlciBvYnNlcnZhdGlvbi4gVGhlIFNT QSBmb3JtcyBjdXJyZW50bHkgcHJvZHVjZWQgYnkNCj4gb3BjYWNoZSBzaG93IHVuaW9uIHR5cGVz IGxpa2Ugc3RyaW5nfGludC4gVGhpcyBzdWdnZXN0cyB0aGF0IG9wY2FjaGUNCj4gc3VwcG9ydHMg dW5pb24gdHlwZXMgZm9yIHR5cGUgaW5mZXJlbmNlIGFscmVhZHkuIEl0IGV4cGxhaW5zIHdoeSBv cGNhY2hlDQo+IGNhbiBuaWNlbHkgb3B0aW1pemUgdHlwZSBjaGVja3MgYXdheSBldmVuIHdoZW4g dW5pb24gdHlwZXMgYXJlIHVzZWQuDQo+IA0KPiBUaGlzIGlzIG5vdCB0cnVlIGZvciB1bmlvbnMg b2YgY2xhc3NlcyB0aG91Z2guIEEgdW5pb24gdHlwZSBsaWtlIGludHxGb28NCj4gY29waWVzIGlu dG8gdGhlIFNTQSBmb3JtIGp1c3QgZmluZSB3aGlsZSBGb298QmFyIGJlY29tZXMgJ29iamVjdCcu IENvZGUNCj4gbGlrZSB0aGlzOg0KPiANCj4gICAgY2xhc3MgRm9vIHt9DQo+ICAgIGNsYXNzIEJh ciB7fQ0KPiANCj4gICAgZnVuY3Rpb24gZnVuYygpOiBGb298QmFyIHsNCj4gICAgICAgIHJldHVy biBuZXcgRm9vKCk7DQo+ICAgIH0NCj4gDQo+ICAgIGZ1bmMoKTsNCj4gDQo+IHByb2R1Y2VzIHRo ZSBmb2xsb3dpbmcgU1NBIGZvcm06DQo+IA0KPiAgICBmdW5jOiA7IChsaW5lcz00LCBhcmdzPTAs IHZhcnM9MCwgdG1wcz0xLCBzc2FfdmFycz0yLCBub19sb29wcykNCj4gICAgICAgIDsgKGJlZm9y ZSBkZmEgcGFzcykNCj4gICAgICAgIDsgL3BocC1zcmMvc2FwaS9jbGkvdGVzdC5waHA6Ni04DQo+ ICAgICAgICA7IHJldHVybiAgW29iamVjdF0NCj4gICAgQkIwOiBzdGFydCBleGl0IGxpbmVzPVsw LTNdDQo+ICAgICAgICA7IGxldmVsPTANCj4gICAgICAgICAgICAgICAgIzAuVjAgW29iamVjdCAo Rm9vKV0gPSBORVcgMCBzdHJpbmcoIkZvbyIpDQo+ICAgICAgICAgICAgICAgIERPX0ZDQUxMDQo+ ICAgICAgICAgICAgICAgIFZFUklGWV9SRVRVUk5fVFlQRSAjMC5WMCBbb2JqZWN0IChGb28pXSAt PiAjMS5WMCBbb2JqZWN0XQ0KPiAgICAgICAgICAgICAgICBSRVRVUk4gIzEuVjAgW29iamVjdF0N Cj4gDQo+IHdoaWNoIHdpbGwgc3RpbGwgcGVyZm9ybSBhIHJldHVybiB0eXBlIGNoZWNrIGV2ZW4g dGhvdWdoIHRoZSByZXR1cm4gdHlwZQ0KPiBoaW50IG1hdGNoZXMgdGhlIGFjdHVhbCB0eXBlIG9m IHRoZSB2YXJpYWJsZS4gQXBwYXJlbnRseSB0aGUgdW5pb24gdHlwZQ0KPiBzdXBwb3J0IGluIG9w Y2FjaGUgaXMgcHJlc2VudCBidXQgaW5jb21wbGV0ZS4NCj4gU28sIHdoaWxlIHVuaW9uIHR5cGVz IGNhbiBpbmN1ciBoaWdoZXIgdHlwZSBjaGVja2luZyBjb3N0IHRoZXkgYWxzbw0KPiBwcm92aWRl IG1vcmUgcG93ZXJmdWwgbWVhbnMgdG8gaGVscCB0eXBlIGluZmVyZW5jZSBhbmQgaW1wcm92ZQ0K PiBwZXJmb3JtYW5jZS4gQXMgb3BjYWNoZSBpbXByb3ZlcyBvdmVyIHRpbWUgSSB0aGluayB3ZSBj YW4gZXhwZWN0IHRoZQ0KPiBjb3N0IHRvIGRlY3JlYXNlIHdoaWxlIHRoZSBnYWluIGluY3JlYXNl cy4gT3IgYW0gSSB0b28gb3B0aW1pc3RpYyBoZXJlPw0KDQpJbiBteSBleHBlcmllbmNlLCBzdGF0 aWMgb3B0aW1pemF0aW9ucyBhcmUgbm90IGFibGUgdG8gZWxpbWluYXRlIG1vc3QgDQp0eXBlIGNo ZWNrcyBpbiBQSFAuIFByb2JhYmx5LCBpZiB3ZSBkZXZlbG9wZWQgbW9yZSBjb21wbGV0ZSB0eXBl LXN5c3RlbSANCmFuZCB1c2VkIHR5cGUgZGVjbGFyYXRpb24gZXZlcnl3aGVyZSB3ZSBjb3VsZCBh Y2hpZXZlIGJldHRlciByZXN1bHRzLg0KSW50cm9kdWNpbmcgbW9yZSB0eXBlIGNoZWNrcyBhbmQg bW9yZSBjb21wbGV4IHJ1bGVzIHdpbGwgaW5jcmVhc2UgDQpydW4tdGltZSBvdmVyaGVhZC4NCg0K SSdtIGN1cnJlbnRseSB3b3JraW5nIG9uIGF0dGVtcHQgb2Ygc3BlY3VsYXRpdmUgb3B0aW1pemF0 aW9ucyBiYXNlZCBvbiANCnJ1bi10aW1lIGZlZWRiYWNrLCBhbmQgdGhlIHJlc3VsdHMgbWlnaHQg Y2hhbmdlIHRoZSB3aG9sZSBwaWN0dXJlIGEgYml0Lg0KDQpBbnl3YXksIEknbSBlc3BlY2lhbGx5 IGFnYWluc3Qgb2YgbWl4aW5nIG11bHRpcGxlIGNsYXNzZXMgaW4gdW5pb25zLCBub3QgDQpiZWNh dXNlIG9mIHBlcmZvcm1hbmNlLCBidXQgYmVjYXVzZSBvZiBjb21wbGV4IHJ1bGVzIG9mIG1ldGhv ZCANCmluaGVyaXRhbmNlIGNvbXBhdGliaWxpdHkgY2hlY2tzIGluIGNvbmp1bmN0aW9uIHdpdGgg dHlwZSB2YXJpYW5jZS4NCg0KVGhhbmtzLiBEbWl0cnkuDQoNCj4gDQo+IFJlZ2FyZHMsDQo+IERp ayBUYWtrZW4NCj4gDQo+IA0KPiBDQVVUSU9OOiBUaGlzIGVtYWlsIG9yaWdpbmF0ZWQgZnJvbSBv dXRzaWRlIG9mIHRoZSBvcmdhbml6YXRpb24uIERvIG5vdCBjbGljayBvbiBsaW5rcyBvciBvcGVu IGF0dGFjaG1lbnRzIHVubGVzcyB5b3UgcmVjb2duaXplIHRoZSBzZW5kZXIgYW5kIGtub3cgdGhl IGNvbnRlbnQgaXMgc2FmZS4NCj4gDQo=