From owner-sc22wg5+sc22wg5-dom8=www.open-std.org@open-std.org Fri Dec 4 04:48:48 2015 Return-Path: X-Original-To: sc22wg5-dom8 Delivered-To: sc22wg5-dom8@www.open-std.org Received: by www.open-std.org (Postfix, from userid 521) id E16503588DE; Fri, 4 Dec 2015 04:48:47 +0100 (CET) Delivered-To: sc22wg5@open-std.org Received: from mga11.intel.com (mga11.intel.com [192.55.52.93]) by www.open-std.org (Postfix) with ESMTP id 72EF7357060 for ; Fri, 4 Dec 2015 04:48:43 +0100 (CET) Received: from fmsmga002.fm.intel.com ([10.253.24.26]) by fmsmga102.fm.intel.com with ESMTP; 03 Dec 2015 19:48:41 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.20,378,1444719600"; d="txt'?scan'208,217";a="866357170" Received: from orsmsx103.amr.corp.intel.com ([10.22.225.130]) by fmsmga002.fm.intel.com with ESMTP; 03 Dec 2015 19:48:41 -0800 Received: from orsmsx155.amr.corp.intel.com (10.22.240.21) by ORSMSX103.amr.corp.intel.com (10.22.225.130) with Microsoft SMTP Server (TLS) id 14.3.248.2; Thu, 3 Dec 2015 19:48:41 -0800 Received: from orsmsx103.amr.corp.intel.com ([169.254.5.90]) by ORSMSX155.amr.corp.intel.com ([169.254.7.84]) with mapi id 14.03.0248.002; Thu, 3 Dec 2015 19:48:40 -0800 From: "Whitlock, Stan" To: WG5 Subject: J3/16-103 Thread-Topic: J3/16-103 Thread-Index: AdEuRjNIoqolpPjRTeOWD9SEEPgTlQ== Date: Fri, 4 Dec 2015 03:48:40 +0000 Message-ID: <4AA982B1265F43408480F737BE12F4D36FBE070E@ORSMSX103.amr.corp.intel.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: yes X-MS-TNEF-Correlator: x-originating-ip: [10.22.254.139] Content-Type: multipart/mixed; boundary="_004_4AA982B1265F43408480F737BE12F4D36FBE070EORSMSX103amrcor_" MIME-Version: 1.0 Sender: owner-sc22wg5@open-std.org Precedence: bulk --_004_4AA982B1265F43408480F737BE12F4D36FBE070EORSMSX103amrcor_ Content-Type: multipart/alternative; boundary="_000_4AA982B1265F43408480F737BE12F4D36FBE070EORSMSX103amrcor_" --_000_4AA982B1265F43408480F737BE12F4D36FBE070EORSMSX103amrcor_ Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable = J3/16-103 To: J3 Members From: Stan Whitlock Subject: Results of the J3 Fortran interp letter ballot #34 Date: 2015 Dec 03 SW> Stan's comments below are marked with "SW>" MJC Malcolm's replies are marked with MJC. Here are the results of J3 letter ballot #34 on Fortran interpretations that officially closed 20-Nov-2015. The ballot is in J3 paper 16-101 for meeting #209. If I have transcribed a vote or a comment incorrectly, please let me know. J3 rep F03 F08 F08 F08 F08 / interp 042 109 145 147 148 result of LB #34 Y A Y A A Daniel Chen Y Y Y Y Y Tom Clune Y Y Y Y Y Malcolm Cohen C Robert Corbett C Y Y C Y Mark Leair Y Y Y Y Y Bill Long Y Y Y Y Y Toon Moene Y Y Y Y Y Dan Nagle Y Y Y Y Y John Reid Y C Y Y C Van Snyder Y Y Y Y Y Stan Whitlock Y Y Y Y Y where Y means "yes" C "yes with comment" N "no with comment" The comments for each interp are attached below in the same order as the table above. The interps marked "Y" pass with no change. The interps marked "A" pass with some minor fixes, as noted below. The interps marked "N" fail. The edited interps in their final form are attached and will appear in the next version 006. /Stan [...] --_000_4AA982B1265F43408480F737BE12F4D36FBE070EORSMSX103amrcor_ Content-Type: text/html; charset="us-ascii" Content-Transfer-Encoding: quoted-printable

        &nbs= p;             =             &nb= sp;            =             &nb= sp;            =             &nb= sp;       J3/16-103

To:        J3 Mem= bers

From:      Stan Whitlock

Subject:   Results of the J3 Fortran inter= p letter ballot #34

Date: 2015 Dec 03

 

SW> Stan's comments below are marked with "S= W>"

MJC Malcolm's replies are marked with MJC.

 

Here are the results of J3 letter ballot #34 on Fort= ran

interpretations that officially closed 20-Nov-2015.&= nbsp; The ballot is

in J3 paper 16-101 for meeting #209.  If I have= transcribed a vote

or a comment incorrectly, please let me know.

 

J3 rep       &nbs= p;          F03 F08 F08 F08 F0= 8

      / interp   =       042 109 145 147 148

 

result of LB #34     Y  &nb= sp;  A     Y      A =      A

 

Daniel Chen       &nbs= p;   Y      Y    &nb= sp;Y      Y      Y

Tom Clune       &= nbsp;      Y      Y  = ;   Y      Y    &nbs= p; Y

Malcolm Cohen      &nb= sp;             = ;        C    <= /o:p>

Robert Corbett      C =     Y      Y    &nbs= p;C      Y

Mark Leair        = ;      Y      Y &nbs= p;   Y      Y    &nb= sp; Y

Bill Long       &= nbsp;          Y   &= nbsp;  Y     Y      = Y      Y

Toon Moene        = ; Y      Y     Y  &n= bsp;   Y      Y

Dan Nagle       &= nbsp;      Y      Y =    Y      Y    &nbs= p; Y

John Reid        =        Y      C=     Y      Y   &nbs= p;  C

Van Snyder        = ;    Y      Y   &nbs= p; Y      Y      Y

Stan Whitlock       Y&= nbsp;     Y     Y    = ;  Y      Y

 

where  Y means "yes"

       C  &n= bsp;    "yes with comment"

       N  &n= bsp;    "no with comment"

 

The comments for each interp are attached below in t= he same order as

the table above.

 

The interps marked "Y" pass with no change= .  The interps marked "A"

pass with some minor fixes, as noted below.  Th= e interps marked "N"

fail.

 

The edited interps in their final form are attached = and will appear

in the next version 006.

 

/Stan

 <= /p>

 

[…]

--_000_4AA982B1265F43408480F737BE12F4D36FBE070EORSMSX103amrcor_-- --_004_4AA982B1265F43408480F737BE12F4D36FBE070EORSMSX103amrcor_ Content-Type: text/plain; name="16-103 Stan - Results of the J3 Fortran interp letter ballot #34 in 16-1....txt" Content-Description: 16-103 Stan - Results of the J3 Fortran interp letter ballot #34 in 16-1....txt Content-Disposition: attachment; filename="16-103 Stan - Results of the J3 Fortran interp letter ballot #34 in 16-1....txt"; size=34492; creation-date="Fri, 04 Dec 2015 03:45:12 GMT"; modification-date="Fri, 04 Dec 2015 03:45:12 GMT" Content-Transfer-Encoding: base64 ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEozLzE2 LTEwMw0KVG86ICAgICAgICBKMyBNZW1iZXJzDQpGcm9tOiAgICAgIFN0YW4gV2hpdGxvY2sNClN1 YmplY3Q6ICAgUmVzdWx0cyBvZiB0aGUgSjMgRm9ydHJhbiBpbnRlcnAgbGV0dGVyIGJhbGxvdCAj MzQNCkRhdGU6IDIwMTUgRGVjIDAzDQoNClNXPiBTdGFuJ3MgY29tbWVudHMgYmVsb3cgYXJlIG1h cmtlZCB3aXRoICJTVz4iDQpNSkMgTWFsY29sbSdzIHJlcGxpZXMgYXJlIG1hcmtlZCB3aXRoIE1K Qy4NCg0KSGVyZSBhcmUgdGhlIHJlc3VsdHMgb2YgSjMgbGV0dGVyIGJhbGxvdCAjMzQgb24gRm9y dHJhbg0KaW50ZXJwcmV0YXRpb25zIHRoYXQgb2ZmaWNpYWxseSBjbG9zZWQgMjAtTm92LTIwMTUu ICBUaGUgYmFsbG90IGlzDQppbiBKMyBwYXBlciAxNi0xMDEgZm9yIG1lZXRpbmcgIzIwOS4gIElm IEkgaGF2ZSB0cmFuc2NyaWJlZCBhIHZvdGUNCm9yIGEgY29tbWVudCBpbmNvcnJlY3RseSwgcGxl YXNlIGxldCBtZSBrbm93Lg0KDQpKMyByZXAgICAgICAgICAgICAgRjAzIEYwOCBGMDggRjA4IEYw OA0KICAgICAgLyBpbnRlcnAgICAgIDA0MiAxMDkgMTQ1IDE0NyAxNDgNCg0KcmVzdWx0IG9mIExC ICMzNCAgICAgWSAgIEEgICBZICAgQSAgIEENCg0KRGFuaWVsIENoZW4gICAgICAgICAgWSAgIFkg ICBZICAgWSAgIFkNClRvbSBDbHVuZSAgICAgICAgICAgIFkgICBZICAgWSAgIFkgICBZDQpNYWxj b2xtIENvaGVuICAgICAgICAgICAgICAgICAgICBDICAgIA0KUm9iZXJ0IENvcmJldHQgICAgICAg QyAgIFkgICBZICAgQyAgIFkNCk1hcmsgTGVhaXIgICAgICAgICAgIFkgICBZICAgWSAgIFkgICBZ DQpCaWxsIExvbmcgICAgICAgICAgICBZICAgWSAgIFkgICBZICAgWQ0KVG9vbiBNb2VuZSAgICAg ICAgICAgWSAgIFkgICBZICAgWSAgIFkNCkRhbiBOYWdsZSAgICAgICAgICAgIFkgICBZICAgWSAg IFkgICBZDQpKb2huIFJlaWQgICAgICAgICAgICBZICAgQyAgIFkgICBZICAgQw0KVmFuIFNueWRl ciAgICAgICAgICAgWSAgIFkgICBZICAgWSAgIFkNClN0YW4gV2hpdGxvY2sgICAgICAgIFkgICBZ ICAgWSAgIFkgICBZDQoNCndoZXJlICBZIG1lYW5zICJ5ZXMiDQogICAgICAgQyAgICAgICAieWVz IHdpdGggY29tbWVudCINCiAgICAgICBOICAgICAgICJubyB3aXRoIGNvbW1lbnQiDQoNClRoZSBj b21tZW50cyBmb3IgZWFjaCBpbnRlcnAgYXJlIGF0dGFjaGVkIGJlbG93IGluIHRoZSBzYW1lIG9y ZGVyIGFzDQp0aGUgdGFibGUgYWJvdmUuDQoNClRoZSBpbnRlcnBzIG1hcmtlZCAiWSIgcGFzcyB3 aXRoIG5vIGNoYW5nZS4gIFRoZSBpbnRlcnBzIG1hcmtlZCAiQSINCnBhc3Mgd2l0aCBzb21lIG1p bm9yIGZpeGVzLCBhcyBub3RlZCBiZWxvdy4gIFRoZSBpbnRlcnBzIG1hcmtlZCAiTiINCmZhaWwu DQoNClRoZSBlZGl0ZWQgaW50ZXJwcyBpbiB0aGVpciBmaW5hbCBmb3JtIGFyZSBhdHRhY2hlZCBh bmQgd2lsbCBhcHBlYXINCmluIHRoZSBuZXh0IHZlcnNpb24gMDA2Lg0KDQovU3Rhbg0KDQoqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioNCg0KRjAzLzAwNDIgIElFRUUgZnVubnkgdmFsdWVzIGFuZCBTdGFuZGFyZCBy ZWFsIGdlbmVyaWMgaW50cmluc2ljIHByb2NlZHVyZXMNCg0KICBSb2JlcnQgQ29yYmV0dCdzIHll cyB2b3RlIGNvbW1lbnQgb24gRjAzLzAwNDI6DQoNCiAgICBJIGFncmVlIHRoYXQgdGhlIGxhbmd1 YWdlIG9mIHRoZSBzdGFuZGFyZCBubyBsb25nZXIgcmVxdWlyZXMgcHJvY2Vzc29ycw0KICAgIHRo YXQgaW1wbGVtZW50IElFRUUgZmxvYXRpbmctcG9pbnQgYXJpdGhtZXRpYyB0byBzaWduYWwgZXhj ZXB0aW9ucyBpbg0KICAgIGNhc2VzIHdoZXJlIHRoZXkgc2hvdWxkIG5vdC4NCg0KICAgIEkgZmlu ZCBzb21lIG9mIEZyZWQgVHlkZW1hbidzIHN1Z2dlc3Rpb25zIGJldHRlciB0aGFuIHdoYXQgdGhl IHN0YW5kYXJkDQogICAgc3BlY2lmaWVzLiAgRm9yIGV4YW1wbGUsIEkgdGhpbmsgaGUgaXMgY29y cmVjdCB0aGF0IFNQQUNJTkcgc2hvdWxkDQogICAgcmV0dXJuICtpbmZpbml0eSBpZiB0aGUgYXJn dW1lbnQgaXMgYW4gaW5maW5pdHkuDQoNCiAgUmVzdWx0IGZvciBGMDMvMDA0MjoNCg0KICAgIC9p bnRlcnAgZG9lcyBub3QgYWNjZXB0IHRoZSBzdWdnZXN0aW9uIHRoYXQgc3BhY2luZyAoK2luZmlu aXR5KSBzaG91bGQNCiAgICBiZSBpbmZpbml0eS4gIFNQQUNJTkcgaXMgdGhlIHNwYWNpbmcgYmV0 d2VlbiBtb2RlbCBudW1iZXJzIG5lYXIgdGhlDQogICAgYXJndW1lbnQuICBUaGVyZSBhcmUgbm8g bW9kZWwgbnVtYmVycyBuZWFyIGluZmluaXR5IGFuZCB0aGUgc3BhY2luZw0KICAgIG9mIG1vZGVs IG51bWJlcnMgaXMgbmV2ZXIgYW55d2hlcmUgbmVhciBpbmZpbml0eS4gIFJldHVybmluZyBOYU4g aXMNCiAgICB0aGVyZWZvcmUgdmVyeSByZWFzb25hYmxlLiAgSW4gZmFjdCwgYWxsIG1vZGVsIG51 bWJlcnMgYXJlIGVxdWFsbHkNCiAgICAiY2xvc2UiIHRvIGluZmluaXR5IC0gdGhleSBhcmUgYW4g aW5maW5pdGUgZGlzdGFuY2UgYXdheSAtIGFuZCB0aGUNCiAgICBzcGFjaW5nIG9mIHRoZSBsYXJn ZXN0IG1vZGVsIG51bWJlciwgSFVHRSh4KSwgaXMgbm90aGluZyBsaWtlDQogICAgaW5maW5pdHku ICBJZiBTUEFDSU5HIHdlcmUgdGhlIHNwYWNpbmcgb2YgbWFjaGluZSBudW1iZXJzLCB0aGVuIHdl DQogICAgd291bGQgYWdyZWUgd2l0aCBSb2JlcnQsIGJ1dCBpdCBpcyBub3QuDQoNCiAgICBGMDMv MDA0MiBwYXNzZWQgYnkgSjMgbGV0dGVyIGJhbGxvdCB3aXRoIG5vIGNoYW5nZXMuDQoNCkYwOC8w MTA5ICBMT0NLX1RZUEUgYW5kIHVubGltaXRlZCBwb2x5bW9ycGhpYw0KDQogIEpvaG4gUmVpZCdz IHllcyB2b3RlIGNvbW1lbnQgb24gRjA4LzAxMDk6DQoNCiAgICAxLiBFZGl0IGZvciBbNjo3K10u DQogICAgICAgQXBhcnQgZnJvbSB0aGUgcmVmZXJlbmNlIHRvIDQuNS4xLCB0aGlzIGVkaXQgaGFz IGFscmVhZHkgYmVlbg0KICAgICAgIGFkb3B0ZWQgaW4gRjA4LzEyNCBhbmQgaXMgc2NoZWR1bGVk IGZvciBpbmNsdXNpb24gaW4gQ29yciA0LiBJDQogICAgICAgdGhpbmsgaXQgaXMgYmV0dGVyIG5v dCB0byBoYXZlIHRoZSByZWZlcmVuY2UgYmVjYXVzZSBubyBlZGl0IGlzDQogICAgICAgcHJvcG9z ZWQgZm9yIDQuNS4xLiBJIHRoZXJlZm9yZSBzdWdnZXN0IGRlbGV0aW9uIG9mIHRoaXMgZWRpdA0K ICAgICAgIGZyb20gdGhpcyBpbnRlcnAuDQoNCiAgICAyLiBFZGl0IGZvciBbMTI3OjE4LTE5XS4N CiAgICAgICBUaGlzIHBhcmFncmFwaCB3YXMgcmVwbGFjZWQgaW4gQ29yciAyIChGMDgvMDQyKS4g VGhlIGVkaXQgaGVyZQ0KICAgICAgIG1lZXRzIHRoZSBvYmplY3RpdmUgb2YgdGhlIGVkaXQgaW4g RjA4LzA0Miwgc28gY2FuIGJlIGENCiAgICAgICByZXBsYWNlbWVudC4gSSB0aGluayBhIHNsaWdo dGx5IGJpZ2dlciBlZGl0IGlzIG5lZWQgZm9yDQogICAgICAgZ3JhbW1hdGljYWwgcmVhc29ucy4g SSBzdWdnZXN0Og0KDQogICAgICAgICBbMTI3OjE4LTE5XSA2LjcuMS4xLCBwNCwNCiAgICAgICAg ICAgSW5zdGVhZCBvZiB0aGUgZWRpdCBpbiBDb3JyLiAyLCBtYWtlIHRoaXMgY2hhbmdlIHRvIHRo ZQ0KICAgICAgICAgICBvcmlnaW5hbCB0ZXh0Og0KICAgICAgICAgICAgIENoYW5nZSAiSWYgPGFs bG9jYXRlLW9iamVjdD4gaXMiIC0+ICJJZiBhbiBBTExPQ0FURSBzdGF0ZW1lbnQNCiAgICAgICAg ICAgICBoYXMgYSBTT1VSQ0U9IHNwZWNpZmllciBhbmQgYW4gPGFsbG9jYXRlLW9iamVjdD4gdGhh dCBpcyIuDQoNCiAgUmVzdWx0IGZvciBGMDgvMDEwOToNCg0KICAgIC9pbnRlcnAgYWNjZXB0cyB0 aGUgc3VnZ2VzdGlvbiB0byByZW1vdmUgdGhlIFs2OjcrXSBlZGl0IGZyb20gdGhpcw0KICAgIGlu dGVycCBiZWNhdXNlIGl0IGlzIGluIGludGVycCBGMDgvMDEyNCBwbGFubmVkIGZvciBDb3JyaWdl bmR1bSA0Lg0KDQogICAgWzEyN10gNi43LjEuMSwgcDQsIHdpdGhvdXQgY2hhbmdlLCByZWFkczoN Cg0KICAgICAgIklmIDxhbGxvY2F0ZS1vYmplY3Q+IGlzIGEgY29hcnJheSwgPHNvdXJjZS1leHBy PiBzaGFsbCBub3QgaGF2ZSBhDQogICAgICAgZHluYW1pYyB0eXBlIG9mIENfUFRSLCBDX0ZVTlBU Uiwgb3IgTE9DS19UWVBFLCBvciBoYXZlIGENCiAgICAgICBzdWJjb21wb25lbnQgd2hvc2UgZHlu YW1pYyB0eXBlIGlzIExPQ0tfVFlQRS4iDQoNCiAgICBUaGUgc3VnZ2VzdGVkIGVkaXQgaW4gdGhp cyBpbnRlcnAgaXM6DQoNCiAgICAgIFsxMjc6MTgtMTldIDYuNy4xLjEsIHA0LA0KICAgICAgICAi SWYiIC0+ICJJZiBhbiBBTExPQ0FURSBzdGF0ZW1lbnQgaGFzIGEgU09VUkNFPSBzcGVjaWZpZXIg YW5kIGFuIiwNCg0KICAgIHNvIHA0IHJlYWRzOg0KICAgICAgIklmIGFuIEFMTE9DQVRFIHN0YXRl bWVudCBoYXMgYSBTT1VSQ0U9IHNwZWNpZmllciBhbmQgYW4NCiAgICAgICA8YWxsb2NhdGUtb2Jq ZWN0PiBpcyBhIGNvYXJyYXksIDxzb3VyY2UtZXhwcj4gc2hhbGwgbm90IGhhdmUgYQ0KICAgICAg IGR5bmFtaWMgdHlwZSBvZiBDX1BUUiwgQ19GVU5QVFIsIG9yIExPQ0tfVFlQRSwgb3IgaGF2ZSBh DQogICAgICAgc3ViY29tcG9uZW50IHdob3NlIGR5bmFtaWMgdHlwZSBpcyBMT0NLX1RZUEUuIg0K DQogICAgSm9obidzIHN1Z2dlc3RlZCByZXBsYWNlbWVudCBlZGl0IGlzIFsxMjc6MTgtMTldIDYu Ny4xLjEsIHA0Og0KDQogICAgICBJbnN0ZWFkIG9mIHRoZSBlZGl0IGluIENvcnIuIDIsIG1ha2Ug dGhpcyBjaGFuZ2UgdG8gdGhlIG9yaWdpbmFsDQogICAgICB0ZXh0Og0KDQogICAgICAgIENoYW5n ZSAiSWYgPGFsbG9jYXRlLW9iamVjdD4gaXMiIC0+ICJJZiBhbiBBTExPQ0FURSBzdGF0ZW1lbnQN CiAgICAgICAgaGFzIGEgU09VUkNFPSBzcGVjaWZpZXIgYW5kIGFuIDxhbGxvY2F0ZS1vYmplY3Q+ IHRoYXQgaXMiLg0KDQogICAgc28gcDQgcmVhZHM6DQoNCiAgICAgICJJZiBhbiBBTExPQ0FURSBz dGF0ZW1lbnQgaGFzIGEgU09VUkNFPSBzcGVjaWZpZXIgYW5kIGFuDQogICAgICAgPGFsbG9jYXRl LW9iamVjdD4gdGhhdCBpcyBhIGNvYXJyYXksIDxzb3VyY2UtZXhwcj4gc2hhbGwgbm90IGhhdmUg YQ0KICAgICAgIGR5bmFtaWMgdHlwZSBvZiBDX1BUUiwgQ19GVU5QVFIsIG9yIExPQ0tfVFlQRSwg b3IgaGF2ZSBhDQogICAgICAgc3ViY29tcG9uZW50IHdob3NlIGR5bmFtaWMgdHlwZSBpcyBMT0NL X1RZUEUuIg0KDQogICAgL2ludGVycCBhY2NlcHRzIEpvaG4ncyBjaGFuZ2UuDQoNCiAgICBGMDgv MDEwOSBwYXNzZWQgYXMgYW1lbmRlZCBieSBKMyBsZXR0ZXIgYmFsbG90Lg0KDQpGMDgvMDE0NSAg Q2FuIGluaXRpYWwtZGF0YS10YXJnZXQgYmUgY29pbmRleGVkPw0KDQogIFJlc3VsdCBmb3IgRjA4 LzAxNDU6DQoNCiAgICBBbGwgWWVzIHZvdGVzLCBubyBDb21tZW50cywgYW5kIG5vIE5vIHZvdGVz Lg0KDQogICAgRjA4LzAxNDUgcGFzc2VkIGJ5IEozIGxldHRlciBiYWxsb3Qgd2l0aCBubyBjaGFu Z2VzLg0KDQpGMDgvMDE0NyAgSXMgZ2VuZXJpYyByZXNvbHV0aW9uIG9mIGVsZW1lbnRhbCBhc3Np Z25tZW50IGRvbmUgYXQgcnVudGltZT8NCg0KICBFLW1haWwgZGlzY3Vzc2lvbiBvZiBGMDgvMDE0 NyBieSBCaWxsIExvbmcgYW5kIE1hbGNvbG0gQ29oZW46DQoNCiAgICBGcm9tOiBCaWxsIExvbmcN CiAgICBTZW50OiBXZWRuZXNkYXksIE5vdmVtYmVyIDQsIDIwMTUgNzowOCBBTQ0KICAgIFRvOiBm b3J0cmFuIHN0YW5kYXJkcyBlbWFpbCBsaXN0IGZvciBKMw0KICAgIFN1YmplY3Q6IChqMy4yMDA2 KSBDbGFyaWZ5IEYwOC8wMTQ3ID8NCg0KICAgIEluIHdvcmtpbmcgdGhyb3VnaCB0aGUgdGVzdCBj YXNlIGluIEludGVycCBGMDgvMDE0NywgSSB0aGluayBJIA0KICAgIHVuZGVyc3RhbmQgdGhlIGNo YW5nZSwgYnV0IHRoZSB3b3JkcyBJIHdhcyBsb29raW5nIGZvciBhcmUgbm90IHBhcnQgb2YgDQog ICAgdGhlIGFuc3dlci4gIFRoZSB0ZXN0IGNhc2UgaXM6DQoNCiAgICBNb2R1bGUgZGFfbW9kdWxl DQogICAgICBUeXBlIHQNCiAgICAgICAgUmVhbCBjDQogICAgICBFbmQgVHlwZQ0KICAgICAgSW50 ZXJmYWNlIEFzc2lnbm1lbnQoPSkNCiAgICAgICAgTW9kdWxlIFByb2NlZHVyZSBlZGFzZ24NCiAg ICAgIEVuZCBJbnRlcmZhY2UNCiAgICAgIENvbnRhaW5zDQogICAgICAgIEVsZW1lbnRhbCBTdWJy b3V0aW5lIGVkYXNnbihhLGIpDQogICAgICAgICAgQ2xhc3ModCksSW50ZW50KE91dCkgOjogYQ0K ICAgICAgICAgIENsYXNzKHQpLEludGVudChJbikgOjogYg0KICAgICAgICAgIGElYyA9IC1iJWMN CiAgICAgICAgRW5kIFN1YnJvdXRpbmUNCiAgICBFbmQgTW9kdWxlDQogICAgUHJvZ3JhbSBlZGF0 ZXN0DQogICAgICBDYWxsIHRlc3QoMTAsMTAsMTMpDQogICAgQ29udGFpbnMNCiAgICAgIFN1YnJv dXRpbmUgdGVzdChuLG4yLG0pDQogICAgICAgIFVzZSBkYV9tb2R1bGUNCiAgICAgICAgVHlwZSh0 KSA6OiB4KG4pLHoobSkNCiAgICAgICAgVHlwZSh0KSxBbGxvY2F0YWJsZSA6OiB5KDopDQogICAg ICAgIHglYyA9IFsgKGksaT0xLG4pIF0NCiAgICAgICAgeiVjID0gWyAoaSxpPTEsbSkgXQ0KICAg ICAgICBBbGxvY2F0ZSh5KG4yKSxTb3VyY2U9dCgwKSkNCiAgICAgICAgeSA9IHggICAgICAgICAg ICAgICAgICAgICAgICAhIEENCiAgICAgICAgUHJpbnQgMSx5DQogICAgICAxIEZvcm1hdCgqKDFY LEYwLjEsOikpDQogICAgICAgIHkgPSB6ICAgICAgICAgICAgICAgICAgICAgICAgISBCDQogICAg ICAgIFByaW50IDEseQ0KICAgICAgRW5kIFN1YnJvdXRpbmUNCiAgICBFbmQgUHJvZ3JhbQ0KDQog ICAgV2l0aCB0aGUgY2hhbmdlIG1hZGUgYnkgdGhlIGVkaXRzLCBpdCBhcHBlYXJzIHRoYXQNCg0K ICAgIDEpIFRoZSBhc3NpZ25tZW50IEEgaXMgZGVmaW5lZCBhc3NpZ25tZW50IGFuZCBpcyBjb25m b3JtaW5nIChmcm9tIA0KICAgICAgIGZpcnN0IGVkaXQpLg0KDQogICAgMikgVGhlIGFzc2lnbm1l bnQgQiBpcyBub3Qgc3RhbmRhcmQgY29uZm9ybWluZywgc2luY2UgdGhlIHNoYXBlcyBhcmUgDQog ICAgICAgbm90IHRoZSBzYW1lIChmcm9tIHNlY29uZCBlZGl0KS4NCiANCiAgICAzKSBFZmZlY3Rp dmVseSwgYXV0by1yZWFsbGNhdGlvbiBvbiBhc3NpZ25tZW50IHdpbGwgbm90IG9jY3VyIGlmIHRo ZSANCiAgICAgICBhc3NpZ25tZW50IGlzIGRlZmluZWQgYXNzaWdubWVudCBhbmQgdGhlIHN1YnJv dXRpbmUgaXMgZWxlbWVudGFsIA0KICAgICAgIChzaW5jZSB0aGUgc2hhcGVzIGFscmVhZHkgYWdy ZWUpLg0KDQogICAgQWxsIG9mIHdoaWNoIGlzIGZpbmUgd2l0aCBtZS4NCg0KICAgID09PT0NCg0K ICAgIEZyb206IGozLWJvdW5jZXNAbWFpbG1hbi5qMy1mb3J0cmFuLm9yZyBPbiBCZWhhbGYgT2Yg QmlsbCBMb25nDQogICAgU2VudDogVGh1cnNkYXksIE5vdmVtYmVyIDEyLCAyMDE1IDg6MjQgQU0N CiAgICBUbzogZm9ydHJhbiBzdGFuZGFyZHMgZW1haWwgbGlzdCBmb3IgSjMNCiAgICBTdWJqZWN0 OiBSZTogKGozLjIwMDYpIENsYXJpZnkgRjA4LzAxNDcgPw0KDQogICAgT24gTm92IDEyLCAyMDE1 LCBhdCAyOjE3IEFNLCBDb2hlbiBNYWxjb2xtIDxtYWxjb2xtQG5hZy1qLmNvLmpwPiB3cm90ZToN Cg0KICAgID4gSGkgQmlsbCwNCiAgICA+IA0KICAgID4gWW91ciB1bmRlcnN0YW5kaW5nICgxKSBh bmQgKDIpIGlzIHRoZSBzYW1lIGFzIG1pbmUuIEZvciAoMyksIEkgd291bGQNCiAgICA+IHdvcmQg aXQgYXMgICJGb3IgYSBkZWZpbmVkIGFzc2lnbm1lbnQgc3RhdGVtZW50LCBhdXRvLXJlYWxsb2Nh dGlvbiBvZg0KICAgID4gYWxsb2NhdGFibGVzIGRvZXMgbm90IG9jY3VyLCBhcyB0aGF0IGlzIG9u bHkgZG9uZSBieSBhbiBpbnRyaW5zaWMgDQogICAgPiBhc3NpZ25tZW50IHN0YXRlbWVudC4iDQoN CiAgICBUaGlzIG9jY3VycmVkIHRvIG1lIGFzIHdlbGwgYWZ0ZXIgc2VuZGluZyB0aGUgaW5pdGlh bCBlbWFpbC4gSSBhZ3JlZQ0KICAgIHRoaXMgaXMgY2xlYXJlciBhbmQgbW9yZSBkaXJlY3QuDQog DQogICAgPiBIb3cgYWJvdXQgYWRkaW5nIHRoZSBmb2xsb3dpbmcgZXh0cmEgcGFyYWdyYXBoIHRv IHRoZSBhbnN3ZXI/DQogICAgPiANCiAgICA+ICAiV2l0aCB0aGVzZSBlZGl0cywgYm90aCBvZiB0 aGUgc3RhdGVtZW50cyBBIGFuZCBCIGFyZSBkZWZpbmVkIA0KICAgID4gYXNzaWdubWVudCBzdGF0 ZW1lbnRzLiAgQXV0by1yZWFsbG9jYXRpb24gb2YgYWxsb2NhdGFibGUgdmFyaWFibGVzIA0KICAg ID4gb25seSBvY2N1cnMgYXMgcGFydCBvZiBhbiBpbnRyaW5zaWMgYXNzaWdubWVudCBzdGF0ZW1l bnQsIHNvIHdoaWxlIA0KICAgID4gc3RhdGVtZW50IEEgaXMgY29uZm9ybWluZyAoYmVjYXVzZSB0 aGUgc2hhcGVzIGFyZSB0aGUgc2FtZSksDQogICAgPiBzdGF0ZW1lbnQgQiBpcyBub3QgY29uZm9y bWluZyAoYmVjYXVzZSB0aGUgc2hhcGVzIGRpZmZlcikuIg0KDQogICAgWWVzLCBJIHRoaW5rIHRo aXMgd291bGQgYmUgaGVscGZ1bC4gIEFuIGV4dHJhIHNlbnRlbmNlIG9mIGV4cGxhbmF0aW9uDQog ICAgY2FuIGJlIHZhbHVhYmxlIHRvIHNvbWVvbmUgd2hvIGdvZXMgYmFjayB0byBsb29rIGF0IHRo ZSBpbnRlcnAgbXVjaA0KICAgIGxhdGVyLCBhbmQgaGFzIGZvcmdvdHRlbiB0aGUgZGlzY3Vzc2lv bi4NCg0KICBSZXN1bHQgZm9yIEYwOC8wMTQ3Og0KDQogICAgL2ludGVycCBhY2NlcHRzIEJpbGwg YW5kIE1hbGNvbG0ncyBzdWdnZXN0aW9uIGFuZCBhZGRzIHRoaXMgdG8gdGhlDQogICAgYW5zd2Vy IG9mIHRoZSBpbnRlcnAge25vIGVkaXRzIGFyZSBjaGFuZ2VkfToNCg0KICAgICJBZnRlciB0aGUg ZWRpdHM6DQogICAgICAxKSBUaGUgYXNzaWdubWVudCBBIGlzIGRlZmluZWQgYXNzaWdubWVudCBh bmQgaXMgY29uZm9ybWluZyAoZnJvbSANCiAgICAgICAgIGZpcnN0IGVkaXQpLg0KDQogICAgICAy KSBUaGUgYXNzaWdubWVudCBCIGlzIGRlZmluZWQgYXNzaWdubWVudCBidXQgaXMgbm90IHN0YW5k YXJkDQogICAgICAgICBjb25mb3JtaW5nLCBzaW5jZSB0aGUgc2hhcGVzIGRpZmZlciAoZnJvbSBz ZWNvbmQgZWRpdCkuDQogDQogICAgICAzKSBGb3IgYSBkZWZpbmVkIGFzc2lnbm1lbnQgc3RhdGVt ZW50LCBhdXRvLXJlYWxsb2NhdGlvbiBvZiANCiAgICAgICAgIGFsbG9jYXRhYmxlcyBkb2VzIG5v dCBvY2N1ciwgYXMgdGhhdCBpcyBvbmx5IGRvbmUgYnkgYW4gaW50cmluc2ljIA0KICAgICAgICAg YXNzaWdubWVudCBzdGF0ZW1lbnQuIg0KDQogICAgRjA4LzAxNDcgcGFzc2VkIGFzIGFtZW5kZWQg YnkgSjMgbGV0dGVyIGJhbGxvdC4NCg0KRjA4LzAxNDggIFBvaW50ZXIgc3Vib2JqZWN0IGluIHN0 cnVjdHVyZSBjb25zdHJ1Y3RvciBpbiBwdXJlIHByb2NlZHVyZQ0KDQogIEpvaG4gUmVpZCdzIHll cyB2b3RlIGNvbW1lbnQgb24gRjA4LzAxNDg6DQoNCiAgICBUaGUgZWRpdCBtYWtlcyB0aGUgbGlz dCBpdGVtIGJlDQoNCiAgICAgICIoMykgYXMgdGhlIDxleHByPiBjb3JyZXNwb25kaW5nIHRvIGEg Y29tcG9uZW50LCBvciB0aGF0IGhhcyBhDQogICAgICAgICAgIHBvaW50ZXIgY29tcG9uZW50IGF0 IGFueSBsZXZlbCBvZiBjb21wb25lbnQgc2VsZWN0aW9uLCB3aXRoDQogICAgICAgICAgIHRoZSBQ T0lOVEVSIGF0dHJpYnV0ZSBpbiBhIDxzdHJ1Y3R1cmUtY29uc3RydWN0b3I+Ig0KDQogICAgSSB0 aGluayB0aGlzIGlzIGdyYW1tYXRpY2FsbHkgaW5jb3JyZWN0LiBJdCBpcyBjZXJ0YWlubHkgdmVy eSBoYXJkDQogICAgdG8gdW5kZXJzdGFuZC4gSSBzdWdnZXN0IHRoaXMgZWRpdCBpbnN0ZWFkDQoN CiAgICAgIFszMTI6MzUgMTIuN3AyIEMxMjgzKDMpXSBSZXBsYWNlIHRoaXMgbGlzdCBpdGVtIGJ5 DQogICAgICAgICIoMykgYXMgdGhlIDxleHByPiBjb3JyZXNwb25kaW5nIHRvIGEgY29tcG9uZW50 IGluIGENCiAgICAgICAgICAgICA8c3RydWN0dXJlLWNvbnN0cnVjdG9yPiBpZiB0aGUgY29tcG9u ZW50IGhhcyB0aGUgUE9JTlRFUg0KICAgICAgICAgICAgIGF0dHJpYnV0ZSBvciBoYXMgYSBwb2lu dGVyIGNvbXBvbmVudCBhdCBhbnkgbGV2ZWwgb2YNCiAgICAgICAgICAgICBjb21wb25lbnQgc2Vs ZWN0aW9uLCINCg0KDQogIFJlc3VsdCBmb3IgRjA4LzAxNDg6DQoNCiAgICBbMzEyOjM1IDEyLjdw MiBDMTI4MygzKV0sIHdpdGhvdXQgY2hhbmdlLCBjdXJyZW50bHkgcmVhZHM6DQoNCiAgICAgICgz KSBhcyB0aGUgPGV4cHI+IGNvcnJlc3BvbmRpbmcgdG8gYSBjb21wb25lbnQgd2l0aCB0aGUgUE9J TlRFUg0KICAgICAgICAgIGF0dHJpYnV0ZSBpbiBhIDxzdHJ1Y3R1cmUtY29uc3RydWN0b3I+LA0K DQogICAgVGhlIGVkaXQgaW4gaW50ZXJwIEYwOC8wMTQ4IGlzOg0KDQogICAgICBbMzEyOjM1IDEy LjdwMiBDMTI4MygzKV0gQWZ0ZXIgImNvbXBvbmVudCIgaW5zZXJ0ICIsIG9yIHRoYXQgaGFzIGEN CiAgICAgIHBvaW50ZXIgY29tcG9uZW50IGF0IGFueSBsZXZlbCBvZiBjb21wb25lbnQgc2VsZWN0 aW9uLCIuDQoNCiAgICBtYWtpbmcgdGhlIGJ1bGxldCByZWFkOg0KDQogICAgICAiKDMpIGFzIHRo ZSA8ZXhwcj4gY29ycmVzcG9uZGluZyB0byBhIGNvbXBvbmVudCwgb3IgdGhhdCBoYXMgYQ0KICAg ICAgICAgICBwb2ludGVyIGNvbXBvbmVudCBhdCBhbnkgbGV2ZWwgb2YgY29tcG9uZW50IHNlbGVj dGlvbiwgd2l0aA0KICAgICAgICAgICB0aGUgUE9JTlRFUiBhdHRyaWJ1dGUgaW4gYSA8c3RydWN0 dXJlLWNvbnN0cnVjdG9yPiINCg0KICAgIEpvaG4gc3VnZ2VzdHMgcmVwbGFjaW5nIHRoZSBidWxs ZXQgd2l0aDoNCg0KICAgICAgIigzKSBhcyB0aGUgPGV4cHI+IGNvcnJlc3BvbmRpbmcgdG8gYSBj b21wb25lbnQgaW4gYQ0KICAgICAgICAgICA8c3RydWN0dXJlLWNvbnN0cnVjdG9yPiBpZiB0aGUg Y29tcG9uZW50IGhhcyB0aGUgUE9JTlRFUg0KICAgICAgICAgICBhdHRyaWJ1dGUgb3IgaGFzIGEg cG9pbnRlciBjb21wb25lbnQgYXQgYW55IGxldmVsIG9mDQogICAgICAgICAgIGNvbXBvbmVudCBz ZWxlY3Rpb24sIg0KDQogICAgRjAzLzAxNDggcGFzc2VkIGFzIGFtZW5kZWQgYnkgSjMgbGV0dGVy IGJhbGxvdC4NCg0KLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KDQpOVU1CRVI6IEYwMy8wMDQyDQpUSVRMRTogIElF RUUgZnVubnkgdmFsdWVzIGFuZCBTdGFuZGFyZCByZWFsIGdlbmVyaWMgaW50cmluc2ljDQogICAg ICAgIHByb2NlZHVyZXMNCktFWVdPUkRTOiBJRUVFLTc1NCwgcmVhbCBtYXRoIGxpYnJhcnkNCkRF RkVDVCBUWVBFOiBJbnRlcnByZXRhdGlvbg0KU1RBVFVTOiBQYXNzZWQgYnkgSjMgbGV0dGVyIGJh bGxvdA0KDQpRVUVTVElPTjoNCg0KSXMgYW4gaW5maW5pdGUgcmVzdWx0IGZyb20gYW4gaW5maW5p dGUgYXJndW1lbnQgdG8gYSByZWFsIG1hdGgNCmZ1bmN0aW9uIGV4Y2VwdGlvbmFsIChyYWlzZXMg YW4gZXhjZXB0aW9uKT8NCg0KSXMgYSBOYU4gcmVzdWx0IGZyb20gYSBOYU4gYXJndW1lbnQgdG8g YSByZWFsIG1hdGggZnVuY3Rpb24NCmV4Y2VwdGlvbmFsIChyYWlzZXMgYW4gZXhjZXB0aW9uKT8N Cg0KV2hhdCBhcmUgdGhlIHJlc3VsdHMgKHZhbHVlIGFuZCBleGNlcHRpb25zKSBmb3IgdGhlIGZv bGxvd2luZw0KKHNlY3Rpb24gMTMuNy4qKSByZWFsIG1hdGggbGlicmFyeSBmdW5jdGlvbnMgW3N1 Z2dlc3RlZCByZXN1bHRzDQpmb3IgbW9zdCBhcmUgaW5jbHVkZWQ7IG5vIGV4Y2VwdGlvbiBoYXBw ZW5zIHVubGVzcyBzcGVjaWZpZWRdOg0KDQogQUJTKC0wLjApIHJldHVybnMgKzAuMA0KIEFCUygr Ly1pbmZpbml0eSkgcmV0dXJucyAraW5maW5pdHkNCiBBQlMoTmFOKSByZXR1cm5zIGEgTmFODQoN CiBBQ09TKHgpLCB3aGVyZSB8eHw+MSwgcmV0dXJucyBhIE5hTiBhbmQgcmFpc2VzIGludmFsaWQN CiBBQ09TKE5hTikgcmV0dXJucyBhIE5hTg0KDQogQUlOVCgtMC4wKSByZXR1cm5zIC0wLjANCiBB SU5UKE5hTikgcmV0dXJucyBhIE5hTg0KIEFJTlQoK2luZmluaXR5KSByZXR1cm5zICtpbmZpbml0 eQ0KIEFJTlQoLWluZmluaXR5KSByZXR1cm5zIC1pbmZpbml0eQ0KDQogQU5JTlQoLTAuMCkgcmV0 dXJucyAtMC4wDQogQU5JTlQoTmFOKSByZXR1cm5zIGEgTmFODQogQU5JTlQoK2luZmluaXR5KSBy ZXR1cm5zICtpbmZpbml0eQ0KIEFOSU5UKC1pbmZpbml0eSkgcmV0dXJucyAtaW5maW5pdHkNCg0K IEFTSU4oeCksIHdoZXJlIHx4fD4xLCByZXR1cm5zIGEgTmFOIGFuZCByYWlzZXMgaW52YWxpZA0K IEFTSU4oTmFOKSByZXR1cm5zIGEgTmFODQoNCiBBVEFOKC0wLjApIHJldHVybnMgLTAuMA0KIEFU QU4oK2luZmluaXR5KSByZXR1cm5zICtwaS8yDQogQVRBTigtaW5maW5pdHkpIHJldHVybnMgLXBp LzINCiBBVEFOKE5hTikgcmV0dXJucyBhIE5hTg0KIEFUQU4yKE5hTix4KSByZXR1cm5zIGEgTmFO DQogQVRBTjIoeSxOYU4pIHJldHVybnMgYSBOYU4NCiBBVEFOMigrLy0wLjAsIC0wLjApIHJldHVy bnMgKy8tcGkgKGFuZCBub3QgcmFpc2UgaW52YWxpZCkNCiBBVEFOMigrLy0wLjAsICswLjApIHJl dHVybnMgKy8tMC4wIChhbmQgbm90IHJhaXNlIGludmFsaWQpDQogQVRBTjIoKy8tMC4wLCB4KSBy ZXR1cm5zICsvLXBpIGZvciB4IDwgMC4wDQogQVRBTjIoKy8tMC4wLCB4KSByZXR1cm5zICsvLTAu MCBmb3IgeCA+IDAuMA0KIEFUQU4yKHksICsvLTAuMCkgcmV0dXJucyAtcGkvMiBmb3IgeSA8IDAu MA0KICAgICAgKGFuZCBub3QgcmFpc2UgZGl2aWRlIGJ5IHplcm8pDQogQVRBTjIoeSwgKy8tMC4w KSByZXR1cm5zICtwaS8yIGZvciB5ID4gMC4wDQogICAgICAoYW5kIG5vdCByYWlzZSBkaXZpZGUg YnkgemVybykNCiBBVEFOMigrLy15LCAtaW5maW5pdHkpIHJldHVybnMgKy8tcGkgZm9yIGZpbml0 ZSB5ID4gMC4wDQogQVRBTjIoKy8teSwgK2luZmluaXR5KSByZXR1cm5zICsvLTAuMCBmb3IgZmlu aXRlIHkgPCAwLjANCiBBVEFOMigrLy1pbmZpbml0eSwgeCkgcmV0dXJucyArLy1waS8yIGZvciBm aW5pdGUgeA0KIEFUQU4yKCsvLWluZmluaXR5LCAtaW5maW5pdHkpIHJldHVybnMgKy8tM3BpLzQN CiAgICAgIChhbmQgbm90IHJhaXNlIGludmFsaWQpDQogQVRBTjIoKy8taW5maW5pdHksICtpbmZp bml0eSkgcmV0dXJucyArLy1waS80DQogICAgICAoYW5kIG5vdCByYWlzZSBpbnZhbGlkKQ0KDQog Q0VJTElORygrLy1pbmZpbml0eSkgcmV0dXJucyArLy1pbmZpbml0eQ0KIENFSUxJTkcoLTAuMCkg cmV0dXJucyAtMC4wDQogQ0VJTElORyhOYU4pIHJldHVybnMgYSBOYU4NCg0KIENPUygrLy0wLjAp IHJldHVybnMgMQ0KIENPUyhOYU4pIHJldHVybnMgYSBOYU4NCiBDT1MoKy8taW5maW5pdHkpIHJl dHVybnMgYSBOYU4gYW5kIHJhaXNlcyBpbnZhbGlkDQoNCiBDT1NIKCsvLTAuMCkgcmV0dXJucyAx DQogQ09TSChOYU4pIHJldHVybnMgYSBOYU4NCiBDT1NIKCsvLWluZmluaXR5KSByZXR1cm5zIGEg K2luZmluaXR5IERJTShOYU4seSkgcmV0dXJucyBhIE5hTg0KDQogRElNKHgsTmFOKSByZXR1cm5z IGEgTmFODQogRElNKCsvLTAuMCwgKy8tMC4wKSByZXR1cm5zIGEgKzAuMA0KIERJTSgraW5maW5p dHksIC1pbmZpbml0eSkgcmV0dXJucyBhIE5hTiBhbmQgcmFpc2VzIGludmFsaWQNCiBESU0oK2lu ZmluaXR5LCAraW5maW5pdHkpIHJldHVybnMgKzAuMA0KIERJTSgtaW5maW5pdHksIC1pbmZpbml0 eSkgcmV0dXJucyArMC4wDQogRElNKC1pbmZpbml0eSwgK2luZmluaXR5KSByZXR1cm5zICswLjAN Cg0KIERQUk9EKE5hTix5KSByZXR1cm5zIGEgTmFODQogRFBST0QoeCxOYU4pIHJldHVybnMgYSBO YU4NCiBEUFJPRCgrLy0wLjAsICsvLWluZmluaXR5KSByZXR1cm5zIGEgTmFOIGFuZCByYWlzZXMg aW52YWxpZA0KIERQUk9EKCsvLWluZmluaXR5LCArLy0wLjApIHJldHVybnMgYSBOYU4gYW5kIHJh aXNlcyBpbnZhbGlkDQogRFBST0QoKy8taW5maW5pdHksICsvLWluZmluaXR5KSByZXR1cm5zIGFu IGluZmluaXR5IHdpdGggaXRzIHNpZ24NCiBiZWluZyB0aGUgWE9SIG9mIHRoZSBhcmd1bWVudHMs IGFuZCByYWlzZXMgbm8gZXhjZXB0aW9ucy4NCiBEUFJPRCgrLy0wLjAsICsvLTAuMCkgcmV0dXJu cyBhIHplcm8gd2l0aCBpdHMgc2lnbg0KIGJlaW5nIHRoZSBYT1Igb2YgdGhlIGFyZ3VtZW50cywg YW5kIHJhaXNlcyBubyBleGNlcHRpb25zLg0KDQogRVhQKE5hTikgcmV0dXJucyBhIE5hTg0KIEVY UCgrLy0wLjApIHJldHVybnMgMQ0KIEVYUCgtaW5maW5pdHkpIHJldHVybnMgKzAuMA0KIEVYUCgr aW5maW5pdHkpIHJldHVybnMgK2luZmluaXR5DQoNCiBFWFBPTkVOVCgrLy0wLjApIHJldHVybnMg MCBbc2hvdWxkIGJlIC1IVUdFKDApXSBhbmQgcmFpc2VzIGludmFsaWQNCiBFWFBPTkVOVChOYU4p IHJldHVybnMgSFVHRSgwKSBhbmQgcmFpc2VzIGludmFsaWQNCiBFWFBPTkVOVCgrLy1JTkYpIHJl dHVybnMgSFVHRSgwKSBhbmQgcmFpc2VzIGludmFsaWQNCiBFWFBPTkVOVChkZW5vcm1hbCkgcmV0 dXJucyB0aGUgdmFsdWUgYXMgaWYgdGhlIG51bWJlciB3ZXJlDQogICAgICAgICBub3JtYWxpemVk IGFuZCB0aGUgZXhwb25lbnQgcmFuZ2Ugd2VyZSB1bmJvdW5kZWQNCiBJZiAvZS8gaXMgbm90IHJl cHJlc2VudGFibGUgYXMgYSBkZWZhdWx0IGludGVnZXIsIGludmFsaWQgaXMgcmFpc2VkDQogICBh bmQgc2lnbigvZS8pKkhVR0UoMCkgc2hvdWxkIGJlIHJldHVybmVkLg0KDQogRkxPT1IoTmFOKSBy ZXR1cm5zIGEgTmFODQogRkxPT1IoLTAuMCkgcmV0dXJucyAtMC4wDQogRkxPT1IoKy8taW5maW5p dHkpIHJldHVybnMgKy8tIGluZmluaXR5DQoNCiBGUkFDVElPTigtMC4wKSByZXR1cm5zIC0wLjAN CiBGUkFDVElPTihOYU4pIHJldHVybnMgYSBOYU4NCiBGUkFDVElPTihkZW5vcm1hbCkgcmV0dXJu cyB0aGUgdmFsdWUgYXMgaWYgdGhlIG51bWJlciB3ZXJlDQogICAgICAgICBub3JtYWxpemVkIGFu ZCB0aGUgZXhwb25lbnQgcmFuZ2Ugd2VyZSB1bmJvdW5kZWQNCiBGUkFDVElPTigrLy1pbmZpbml0 eSkgcmV0dXJucyArLy0gaW5maW5pdHkNCg0KIElOVChOYU4pIHJldHVybnMgYW4gdW5zcGVjaWZp ZWQgdmFsdWUgYW5kIHJhaXNlcyBpbnZhbGlkDQogSU5UKCsvLWluZmluaXR5KSByZXR1cm5zIGFu IHVuc3BlY2lmaWVkIHZhbHVlIGFuZCByYWlzZXMNCiAgICBpbnZhbGlkDQogSU5UKCsvLWxhcmdl KSwgd2hlcmUgbGFyZ2UgY2Fubm90IGJlIHJlcHJlc2VudGVkIGFzIGFuIGludGVnZXIsDQogICAg cmV0dXJucyBhbiB1bnNwZWNpZmllZCB2YWx1ZSBhbmQgcmFpc2VzIGludmFsaWQNCg0KIExPRygr Ly0wLjApIHJldHVybnMgLWluZmluaXR5IGFuZCByYWlzZXMgZGl2aWRlLWJ5LXplcm8NCiBMT0co TmFOKSByZXR1cm5zIGEgTmFODQogTE9HKDEuMCkgcmV0dXJucyArMC4wDQogTE9HKHgpLCBmb3Ig eCA8IDAsIHJldHVybnMgYSBOYU4gYW5kIHJhaXNlcyBpbnZhbGlkDQogTE9CKCtpbmZpbml0eSkg cmV0dXJucyAraW5maW5pdHkNCg0KIExPRzEwKCsvLTAuMCkgcmV0dXJucyAtaW5maW5pdHkgYW5k IHJhaXNlcyBkaXZpZGUtYnktemVybw0KIExPRzEwKE5hTikgcmV0dXJucyBhIE5hTg0KIExPRzEw KDEuMCkgcmV0dXJucyArMC4wDQogTE9HMTAoeCksIGZvciB4IDwgMCwgcmV0dXJucyBhIE5hTiBh bmQgcmFpc2VzIGludmFsaWQNCiBMT0cxMCgraW5maW5pdHkpIHJldHVybnMgK2luZmluaXR5DQoN CiBNQVgoTmFOLE5hTikgcmV0dXJucyBhIE5hTg0KIE1BWChOYU4seSkgcmV0dXJucyB5IFtzb21l IHNheSBpdCBzaG91bGQgYmUgTmFOXQ0KIE1BWCh4LE5hTikgcmV0dXJucyB4IFtzb21lIHNheSBp dCBzaG91bGQgYmUgTmFOXQ0KIE1BWCgtMC4wLCswLjApIHJldHVybnMgKzAuMA0KIE1BWCgtMC4w LC0wLjApIHJldHVybnMgLTAuMA0KIE1BWCgraW5maW5pdHkseSkgcmV0dXJucyAraW5maW5pdHkN CiBNQVgoLWluZmluaXR5LHkpIHJldHVybnMgeQ0KDQogTUlOKE5hTixOYU4pIHJldHVybnMgYSBO YU4NCiBNSU4oTmFOLHkpIHJldHVybnMgeSBbc29tZSBzYXkgaXQgc2hvdWxkIGJlIE5hTl0NCiBN SU4oeCxOYU4pIHJldHVybnMgeCBbc29tZSBzYXkgaXQgc2hvdWxkIGJlIE5hTl0NCiBNSU4oLTAu MCwrMC4wKSByZXR1cm5zIC0wLjANCiBNSU4oLTAuMCwtMC4wKSByZXR1cm5zIC0wLjANCiBNSU4o LWluZmluaXR5LHkpIHJldHVybnMgLWluZmluaXR5DQogTUlOKCtpbmZpbml0eSx5KSByZXR1cm5z IHkNCg0KIE1PRChOYU4seSkgcmV0dXJucyBhIE5hTg0KIE1PRCh4LE5hTikgcmV0dXJucyBhIE5h Tg0KIE1PRCgrLy1pbmZpbml0eSx5KSByZXR1cm5zIGEgTmFOIGFuZCByYWlzZXMgaW52YWxpZA0K IE1PRCgrLy1pbmZpbml0eSwrLy1pbmZpbml0eSkgcmV0dXJucyBhIE5hTiBhbmQgcmFpc2VzIGlu dmFsaWQNCiBNT0QoeCwrLy0wLjApIHJldHVybnMgYSBOYU4gYW5kIHJhaXNlcyBpbnZhbGlkDQog TU9EKCsvLTAuMCwrLy0wLjApIHJldHVybnMgYSBOYU4gYW5kIHJhaXNlcyBpbnZhbGlkDQoNCiBN T0RVTE8oTmFOLHkpIHJldHVybnMgYSBOYU4NCiBNT0RVTE8oeCxOYU4pIHJldHVybnMgYSBOYU4N CiBNT0RVTE8oKy8taW5maW5pdHkseSkgcmV0dXJucyBhIE5hTiBhbmQgcmFpc2VzIGludmFsaWQN CiBNT0RVTE8oKy8taW5maW5pdHksKy8taW5maW5pdHkpIHJldHVybnMgYSBOYU4gYW5kIHJhaXNl cyBpbnZhbGlkDQogTU9EVUxPKHgsKy8tMC4wKSByZXR1cm5zIGEgTmFOIGFuZCByYWlzZXMgaW52 YWxpZA0KIE1PRFVMTygrLy0wLjAsKy8tMC4wKSByZXR1cm5zIGEgTmFOIGFuZCByYWlzZXMgaW52 YWxpZA0KDQogTkVBUkVTVChOYU4seSkgcmV0dXJucyBhIE5hTg0KIE5FQVJFU1QoeCxOYU4pIHJl dHVybnMgYSBOYU4NCiBORUFSRVNUKHgsKy8tMC4wKSByZXR1cm5zIGEgTmFOIGFuZCByYWlzZXMg aW52YWxpZCAgW3doeT8/P10NCiBORUFSRVNUKCtpbmZpbml0eSwrbnVtKSByZXR1cm5zICtpbmZp bml0eSA/Pz8NCiBORUFSRVNUKCtpbmZpbml0eSwtbnVtKSByZXR1cm5zICttYXhpbXVtIGZpbml0 ZSBudW1iZXINCiBORUFSRVNUKC1pbmZpbml0eSwrbnVtKSByZXR1cm5zIC1tYXhpbXVtIGZpbml0 ZSBudW1iZXINCiBORUFSRVNUKC1pbmZpbml0eSwtbnVtKSByZXR1cm5zIC1pbmZpbml0eSA/Pz8N Cg0KIE5JTlQoTmFOKSByZXR1cm5zIGFuIHVuc3BlY2lmaWVkIHZhbHVlIGFuZCByYWlzZXMgaW52 YWxpZA0KIE5JTlQoKy8taW5maW5pdHkpIHJldHVybnMgYW4gdW5zcGVjaWZpZWQgdmFsdWUgYW5k IHJhaXNlcw0KICAgICBpbnZhbGlkDQogTklOVCgrLy1sYXJnZSksIHdoZXJlIGxhcmdlIGNhbm5v dCBiZSByZXByZXNlbnRlZCBhcyBhbg0KICAgICBpbnRlZ2VyLCByZXR1cm5zIGFuIHVuc3BlY2lm aWVkIHZhbHVlIGFuZCByYWlzZXMgaW52YWxpZA0KDQogUlJTUEFDSU5HKE5hTikgcmV0dXJucyBh IE5hTg0KIFJSU1BBQ0lORygrLy1pbmZpbml0eSkgcmV0dXJucyArLy1pbmZpbml0eQ0KICAgICAg ICAgIFtkaWZmZXJzIGZyb20gY3VycmVudCBGMjAwM10NCiBSUlNQQUNJTkcoKy8tMC4wKSByZXR1 cm5zICswLjANCiBSUlNQQUNJTkcoKy8tZGVub3JtYWwpIHJldHVybnMgPz8/DQoNCiBTQ0FMRShO YU4seSkgcmV0dXJucyBhIE5hTg0KIFNDQUxFKCsvLWluZmluaXR5LHkpIHJldHVybnMgKy8taW5m aW5pdHkNCiBTQ0FMRSgtMC4wLHkpIHJldHVybnMgLTAuMA0KDQogU0VUX0VYUE9ORU5UKE5hTix5 KSByZXR1cm5zIGEgTmFODQogU0VUX0VYUE9ORU5UKCsvLWluZmluaXR5LHkpIHJldHVybnMgKy8t aW5maW5pdHkNCiBTRVRfRVhQT05FTlQoLTAuMCx5KSByZXR1cm5zIC0wLjANCiBTRVRfRVhQT05F TlQoZGVub3JtYWwseSkgcmV0dXJucyA/Pz8NCg0KIFNJR04oTmFOLHkpLCB3aGVyZSAwIDwgeSwg cmV0dXJucyB0aGUgc2FtZSBOYU4sDQogICAgICBidXQgd2l0aCB0aGUgc2lnbiBiaXQgY2xlYXJl ZC4NCiBTSUdOKE5hTix5KSwgd2hlcmUgeSA8IDAsIHJldHVybnMgdGhlIHNhbWUgTmFOLA0KICAg ICAgYnV0IHdpdGggdGhlIHNpZ24gYml0IHNldC4NCg0KIFNJTihOYU4pIHJldHVybnMgYSBOYU4N CiBTSU4oKy8taW5maW5pdHkpIHJldHVybnMgYSBOYU4gYW5kIHJhaXNlcyBpbnZhbGlkDQogU0lO KC0wLjApIHJldHVybnMgLTAuMA0KDQogU0lOSChOYU4pIHJldHVybnMgYSBOYU4NCiBTSU5IKCsv LWluZmluaXR5KSByZXR1cm5zICsvLSBpbmZpbml0eQ0KIFNJTkgoLTAuMCkgcmV0dXJucyAtMC4w DQoNCiBTUEFDSU5HKE5hTikgcmV0dXJucyBhIE5hTg0KIFNQQUNJTkcoKy8taW5maW5pdHkpIHJl dHVybnMgK2luZmluaXR5DQogU1BBQ0lORygtMC4wKSByZXR1cm5zIFRJTlkoKzAuMCkNCiBTUEFD SU5HKGRlbm9ybWFsKSByZXR1cm5zIFRJTlkoKzAuMCkgPz8/DQoNCiBTUVJUKE5hTikgcmV0dXJu cyBhIE5hTg0KIFNRUlQoK2luZmluaXR5KSByZXR1cm5zICtpbmZpbml0eQ0KIFNRUlQoLTAuMCkg cmV0dXJucyAtMC4wDQogU1FSVCh4KSwgd2hlcmUgeCA8IDAuMCwgcmV0dXJucyBhIE5hTiBhbmQg cmFpc2VzIGludmFsaWQNCg0KIFRBTihOYU4pIHJldHVybnMgYSBOYU4NCiBUQU4oKy8taW5maW5p dHkpIHJldHVybnMgYSBOYU4gYW5kIHJhaXNlcyBpbnZhbGlkDQogVEFOKC0wLjApIHJldHVybnMg LTAuMA0KDQogVEFOSChOYU4pIHJldHVybnMgYSBOYU4NCiBUQU5IKCsvLWluZmluaXR5KSByZXR1 cm5zICsvLTEuMA0KIFRBTkgoLTAuMCkgcmV0dXJucyAtMC4wDQoNCg0KMTMuNyBbMzAwOjEzLTE1 XSBpbmNvcnJlY3RseSByZXF1aXJlcyBhbiBpbmZpbml0ZSByZXN1bHQgb3IgYQ0KTmFOIHJlc3Vs dCB0byBhbHdheXMgc2lnbmFsIHNvbWUgSUVFRSBleGNlcHRpb24uDQoNCkNvbnNpZGVyIGNoYW5n aW5nIFszMDA6MTNdICJpbmZpbml0ZSByZXN1bHQiIHRvICJpbmZpbml0ZSByZXN1bHQNCihmcm9t IGZpbml0ZSBhcmd1bWVudHMpIi4gIFJlYXNvbjogSUVFRS03NTQgbWF0aGVtYXRpY2FsDQpvcGVy YXRpb25zIG9uIGluZmluaXR5IHRoYXQgcHJvZHVjZSBhbiBpbmZpbml0eSBhcmUNCnVuZXhjZXB0 aW9uYWwuDQoNCkNvbnNpZGVyIGNoYW5naW5nIFszMDA6MTRdICJOYU4gcmVzdWx0IiB0byAiTmFO IHJlc3VsdCAoZnJvbQ0Kbm9uLU5hTiBhcmd1bWVudHMpIi4gIFJlYXNvbjogSUVFRS03NTQgbWF0 aGVtYXRpY2FsIG9wZXJhdGlvbnMNCm9uIHF1aWV0IE5hTiBvcGVyYW5kcyB0aGF0IHByb2R1Y2Ug YSBxdWlldCBOYU4gcmVzdWx0IGFyZQ0KdW5leGNlcHRpb25hbC4NCg0KQ29uc2lkZXIgYWRkaW5n IHRvIDEzLjcgWzMwMDoxNStdIHNvbWV0aGluZyBhbG9uZyB0aGUgbGluZXMgb2Y6DQoiVW5sZXNz IHNwZWNpZmllZCBvdGhlcndpc2UsIGEgbWF0aCBmdW5jdGlvbiB3aXRoIE5hTg0KYXJndW1lbnQo cykgc2hhbGwgcmV0dXJuIGEgTmFOLCB3aGljaCBzaG91bGQgYmUgb25lIG9mIHRoZSBOYU4NCmFy Z3VtZW50cy4iICBUaGlzIGFsbG93cyBub3QgaGF2aW5nIHRvIHNwZWNpZnkgdGhlIHJlc3VsdHMg Zm9yDQplYWNoIHNwZWNpZmljIG1hdGggZnVuY3Rpb24uDQoNCkNvbnNpZGVyIGFkZGluZyB0aGUg YWJvdmUgc3VnZ2VzdGVkIGNhc2VzIHRvIGVhY2ggb2YgdGhlIDEzLjcuKg0KZnVuY3Rpb25zLCBw ZXJoYXBzLCB3aXRoIGEgYm9sZCBmYWNlIElFRUUgc3ViLWhlYWRpbmcuDQoNCkFOU1dFUjoNCg0K VGhlIGVycm9uZW91cyB0ZXh0IHF1b3RlZCBmcm9tIDEzLjcgaW4gRm9ydHJhbiAyMDAzIGhhcyBi ZWVuIHJldmlzZWQNCmluIEZvcnRyYW4gMjAwOCwgYW5kIGFnYWluIGJ5IENvcnJpZ2VuZHVtIDIg Zm9yIEZvcnRyYW4gMjAwOCwgYW5kIG5vdw0Kbm8gbG9uZ2VyIGNvbmZsaWN0cyB3aXRoIHRoZSBJ RUVFLTc1NCBzdGFuZGFyZC4NCg0KVG8gc3BlY2lmeSB0aGUgcmVzdWx0cyBvZiBhbGwgdGhlIGlu dHJpbnNpY3MgZm9yIG5vbi1ub3JtYWwgdmFsdWVzIGlzDQpiZXlvbmQgdGhlIHNjb3BlIG9mIGFu IGludGVycHJldGF0aW9uLiAgVGhpcyBjb3VsZCBiZSBjb25zaWRlcmVkIGZvciBhDQpmdXR1cmUg cmV2aXNpb24uDQoNCkVESVQ6DQoNCk5vbmUuDQoNClNVQk1JVFRFRCBCWTogRnJlZCBUeWRlbWFu DQoNCkhJU1RPUlk6IDA1LTEyMXIxICBtMTcxICBGMDMvMDA0MiBzdWJtaXR0ZWQNCiAgICAgICAg IDE1LTI0OCAgICBtMjA4ICBSZXZpc2VkIGFuc3dlciBhbmQgZWRpdHMgLSBwYXNzZWQgYnkgSjMg bWVldGluZw0KICAgICAgICAgMTYtMTAzICAgIG0yMDkgIFBhc3NlZCBieSBKMyBsZXR0ZXIgYmFs bG90IDE2LTEwMQ0KDQotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQoNCk5VTUJFUjogRjA4LzAxMDkNClRJVExFOiBM T0NLX1RZUEUgYW5kIHVubGltaXRlZCBwb2x5bW9ycGhpYw0KS0VZV09SRDogTE9DS19UWVBFLCB1 bmxpbWl0ZWQgcG9seW1vcnBoaWMNCkRFRkVDVCBUWVBFOiBFcnJhdHVtDQpTVEFUVVM6IFBhc3Nl ZCBieSBKMyBsZXR0ZXIgYmFsbG90DQoNClFVRVNUSU9OOg0KDQpBc3N1bWUgdHlwZSBMT0NLX1RZ UEUgZnJvbSB0aGUgaW50cmluc2ljIG1vZHVsZSBJU09fRm9ydHJhbl9FbnYgaXMNCmF2YWlsYWJs ZS4NCg0KUTEuIElzIGFsbG9jYXRpb24gb2YgWCVDIHBlcm1pdHRlZD8NCg0KICBUWVBFIHQNCiAg ICBUWVBFKExPQ0tfVFlQRSksQUxMT0NBVEFCTEUgOjogYw0KICBFTkQgVFlQRQ0KICBUWVBFKHQp IDo6IHhbKl0seVsqXQ0KICBBTExPQ0FURSh5JWMpDQogIEFMTE9DQVRFKHglYyxTT1VSQ0U9eSVj KQ0KDQpRMi4gSXMgYWxsb2NhdGlvbiBvZiBDIHBlcm1pdHRlZD8NCg0KICBjbGFzcygqKSwgcG9p bnRlciA6OiBDDQogIHR5cGUobG9ja190eXBlKSwgaW50ZW50KGluKSA6OiBMWypdDQoNCiAgYWxs b2NhdGUgKCBDLCBzb3VyY2U9TCApDQoNClEzLiBJcyBhbGxvY2F0aW9uIG9mIEMgcGVybWl0dGVk Pw0KDQogIGNsYXNzKCopLCBwb2ludGVyIDo6IEMNCg0KICBhbGxvY2F0ZSAoIExPQ0tfVFlQRSA6 OiBDICkNCg0KUTQuIElzIHBvaW50ZXIgYXNzaWdubWVudCB0byBDIHBlcm1pdHRlZD8NCg0KICBj bGFzcygqKSwgcG9pbnRlciA6OiBDDQogIHR5cGUobG9ja190eXBlKSwgaW50ZW50KGluKSwgdGFy Z2V0IDo6IExbKl0NCg0KICBjID0+IEwNCg0KUTUuIElzIHRoaXMgQUxMT0NBVEUgc3RhdGVtZW50 IGNvbmZvcm1pbmc/DQoNCiAgQ0xBU1MoKiksQUxMT0NBVEFCTEUsIFNBVkUgOjogQ1s6XQ0KICBU WVBFKExPQ0tfVFlQRSksICAgICAgU0FWRSA6OiBYWypdDQogIEFMTE9DQVRFKEMsTU9MRD1YKQ0K DQpBTlNXRVI6DQoNCkExLiBBbGxvY2F0aW9uIG9mIFglQyBpcyBub3QgaW50ZW5kZWQgdG8gYmUg YWxsb3dlZC4gIEFuIGVkaXQgaXMNCiAgICBzdXBwbGllZCB0byBjb3JyZWN0IHRoZSByZXF1aXJl bWVudHMgb24gYWxsb2NhdGlvbiBvZiBMT0NLX1RZUEUuDQoNCkEyLiBBbGxvY2F0aW9uIG9mIEMg aXMgbm90IGludGVuZGVkIHRvIGJlIGFsbG93ZWQuICBBbiBlZGl0IGlzDQogICAgc3VwcGxpZWQg dG8gY29ycmVjdCB0aGUgcmVxdWlyZW1lbnRzIG9uIGFsbG9jYXRpb24gb2YgTE9DS19UWVBFLg0K DQpBMy4gVGhpcyBhbGxvY2F0aW9uIG9mIEMgaXMgcGVybWl0dGVkLiAgSXQgY2Fubm90IHZpb2xh dGUgQzEzMDIgYmVjYXVzZQ0KICAgIHRoYXQgaXMgYSBzeW50YXggY29uc3RyYWludC4gIE9ubHkg dGhpbmdzIHRoYXQgYXJlIHN0YXRpY2FsbHkNCiAgICBkZXRlY3RhYmxlIHN0YXRpYyBwcm9wZXJ0 aWVzIG9mIHRoZSBwcm9ncmFtIHNvdXJjZSB0ZXh0IGNhbiBiZQ0KICAgIHN5bnRheCBjb25zdHJh aW50cy4gIFRoYXQgbWVhbnMgdGhhdCAidHlwZSIgaW4gQzEzMDIgY2FuIG9ubHkgbWVhbg0KICAg ICJkZWNsYXJlZCB0eXBlIi4NCg0KICAgIEMgaXMgQ0xBU1MoKikgc28gaGFzIG5vIGRlY2xhcmVk IHR5cGUgYW5kIHRoZXJlZm9yZSBjYW5ub3QNCiAgICB2aW9sYXRlIEMxMzAyLg0KDQogICAgRWRp dHMgYXJlIGdpdmVuIHRvIGZpeCBDMTMwMiB0byBzYXkgImRlY2xhcmVkIHR5cGUiIGV4cGxpY2l0 bHkgdG8NCiAgICBhdm9pZCB0aGlzIGNvbmZ1c2lvbi4NCg0KICAgIE5vdGUgdGhhdCBpdCBpcyBp bXBvc3NpYmxlIHRvIGFjdHVhbGx5IHVzZSB0aGUgYWxsb2NhdGVkIHRhcmdldCBvZg0KICAgIEMg aW4gYW55IHVzZWZ1bCBmYXNoaW9uOyBTRUxFQ1QgVFlQRSBjYW5ub3QgYWNjZXNzIGl0IGJlY2F1 c2UgdGhlDQogICAgYXNzb2NpYXRlLW5hbWUgd291bGQgYmUgYSBuYW1lZCBsb2NrIHZhcmlhYmxl LCBidXQgaXQgaXMgbm90IGENCiAgICBjb2FycmF5IHNvIHRoYXQgd291bGQgbm90IGJlIGFsbG93 ZWQuDQoNCiAgICBTbyB0aGlzIGlzIHBlcm1pdHRlZCwgYnV0IHVzZWxlc3MsIGFuZCBiZWNhdXNl IGl0IGlzIHVzZWxlc3MgaXQgaXMNCiAgICBhbHNvIGhhcm1sZXNzLiAgQSBmdXR1cmUgcmV2aXNp b24gY291bGQgZGlzYWxsb3cgdGhpcyB3aXRob3V0IHRoZQ0KICAgIGNvbmNvbWl0YW50IGluY29t cGF0aWJpbGl0eSBpbmNvbnZlbmllbmNpbmcgYW55IHByb2dyYW1zLg0KDQpBNC4gUG9pbnRlciBh c3NpZ25tZW50IHRvIEMgaXMgcGVybWl0dGVkLg0KDQogICAgQXMgaW4gQTMsIHRoaXMgaXMgdXNl bGVzcyBidXQgaGFybWxlc3MuICBBIGZ1dHVyZSByZXZpc2lvbiBjb3VsZA0KICAgIGRpc2FsbG93 IHRoaXMgd2l0aG91dCB0aGUgY29uY29taXRhbnQgaW5jb21wYXRpYmlsaXR5DQogICAgaW5jb252 ZW5pZW5jaW5nIGFueSBwcm9ncmFtcy4NCg0KQTUuIFRoaXMgc3RhdGVtZW50IHdhcyBpbnRlbmRl ZCB0byBiZSBwZXJtaXR0ZWQuICBBbiBlZGl0IGlzIHN1cHBsaWVkDQogICAgdG8gY29ycmVjdCB0 aGUgcmVxdWlyZW1lbnRzLg0KDQpOb3RlIHRoYXQgdGhlIHRlcm0gInBvdGVudGlhbCBzdWJvYmpl Y3QgY29tcG9uZW50IiBpcyBkZWZpbmVkIGluIGludGVycA0KRjA4LzAxMjQgYW5kIHdpbGwgYmUg aW4gQ29ycmlnZW5kdW0gNDoNCg0KICBbNjo3K10gQWZ0ZXIgZGVmaW5pdGlvbiAxLjMuMzMuMiBw YXJlbnQgY29tcG9uZW50LCBpbnNlcnQgbmV3IHRlcm0NCiAgICAiMS4zLjMzLjJhDQogICAgIHBv dGVudGlhbCBzdWJvYmplY3QgY29tcG9uZW50DQogICAgIG5vbnBvaW50ZXIgY29tcG9uZW50LCBv ciBwb3RlbnRpYWwgc3Vib2JqZWN0IGNvbXBvbmVudCBvZiBhDQogICAgIG5vbnBvaW50ZXIgY29t cG9uZW50Ii4NCg0KRURJVFM6DQoNClsxMjc6OC05XSA2LjcuMS4xIFN5bnRheCwgQzY0MiwNCiAg ICAgICAgICBDaGFuZ2UgIkNfUFRSLCIgdG8gIkNfUFRSIG9yIg0KICAgICAgICAgIERlbGV0ZSAi LCBMT0NLX1RZUEUgLi4uIExPQ0tfVFlQRSIuDQoNClsxMjc6OStdIEluc2VydCBuZXcgY29uc3Ry YWludA0KICAiQzY0M2EgKFI2MjcpIElmIFNPVVJDRT0gYXBwZWFycywgdGhlIGRlY2xhcmVkIHR5 cGUgb2YgPHNvdXJjZS1leHByPg0KICAgICAgICAgc2hhbGwgbm90IGJlIExPQ0tfVFlQRSBvciBo YXZlIGEgcG90ZW50aWFsIHN1Ym9iamVjdA0KICAgICAgICAgY29tcG9uZW50IG9mIHR5cGUgTE9D S19UWVBFLiINCg0KWzEyNzoxOC0xOV0gNi43LjEuMSwgcDQsDQogIEluc3RlYWQgb2YgdGhlIGVk aXQgaW4gQ29yci4gMiwgbWFrZSB0aGlzIGNoYW5nZSB0byB0aGUgMTAtMDA3cjEgdGV4dDoNCg0K ICAgIENoYW5nZSAiSWYgPGFsbG9jYXRlLW9iamVjdD4gaXMiIC0+ICJJZiBhbiBBTExPQ0FURSBz dGF0ZW1lbnQNCiAgICAgICAgICAgIGhhcyBhIFNPVVJDRT0gc3BlY2lmaWVyIGFuZCBhbiA8YWxs b2NhdGUtb2JqZWN0PiB0aGF0IGlzIi4NCiAgICB7VGhlcmUgaXMgbm8gcHJvYmxlbSB3aXRoIE1P TEQ9LiAgInN1YmNvbXBvbmVudCIgd29ya3Mgb2sgaGVyZQ0KICAgICBiZWNhdXNlIHdlIGhhdmUg YW4gb2JqZWN0IG5vdCBhIHR5cGUufQ0KDQogIHNvIHA0IHJlYWRzOg0KDQogICAgIklmIGFuIEFM TE9DQVRFIHN0YXRlbWVudCBoYXMgYSBTT1VSQ0U9IHNwZWNpZmllciBhbmQgYW4NCiAgICAgPGFs bG9jYXRlLW9iamVjdD4gdGhhdCBpcyBhIGNvYXJyYXksIDxzb3VyY2UtZXhwcj4gc2hhbGwgbm90 IGhhdmUgYQ0KICAgICBkeW5hbWljIHR5cGUgb2YgQ19QVFIsIENfRlVOUFRSLCBvciBMT0NLX1RZ UEUsIG9yIGhhdmUgYQ0KICAgICBzdWJjb21wb25lbnQgd2hvc2UgZHluYW1pYyB0eXBlIGlzIExP Q0tfVFlQRS4iDQoNClszOTk6MTddIDEzLjguMi4xNiBMT0NLX1RZUEUsIEMxMzAyDQogICAgICJ2 YXJpYWJsZSBvZiB0eXBlIExPQ0sgVFlQRSINCiAgLT4gInZhcmlhYmxlIHdpdGggZGVjbGFyZWQg dHlwZSBMT0NLX1RZUEUiLg0KDQpTVUJNSVRURUQgQlk6IFZhbiBTbnlkZXINCg0KSElTVE9SWTog MTQtMTY0ICAgIG0yMDQgIEYwOC8wMTA5IHN1Ym1pdHRlZA0KICAgICAgICAgMTQtMTY0cjMgIG0y MDQgIEFzIGFtZW5kZWQsIHBhc3NlZCBieSBKMyBtZWV0aW5nDQogICAgICAgICAxNC0yNTggICAg bTIwNSAgRmFpbGVkIHRoZSBKMyBsZXR0ZXIgYmFsbG90ICMzMSAxNC0yMzNyMQ0KICAgICAgICAg MTUtMjUzICAgIG0yMDggIFJldmlzZWQgLSBwYXNzZWQgYnkgSjMgbWVldGluZw0KICAgICAgICAg MTYtMTAzICAgIG0yMDkgIFBhc3NlZCBhcyBhbWVuZGVkIGJ5IEozIGxldHRlciBiYWxsb3QgMTYt MTAxDQoNCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0NCg0KTlVNQkVSOiBGMDgvMDE0NQ0KVElUTEU6IENhbiBpbml0 aWFsLWRhdGEtdGFyZ2V0IGJlIGNvaW5kZXhlZD8NCktFWVdPUkRTOiBpbml0aWFsaXphdGlvbiwg cG9pbnRlcnMsIGNvYXJyYXlzDQpERUZFQ1QgVFlQRTogRXJyYXR1bQ0KU1RBVFVTOiBQYXNzZWQg YnkgSjMgbGV0dGVyIGJhbGxvdA0KDQpRVUVTVElPTjoNCg0KSW4gcG9pbnRlciBhc3NpZ25tZW50 LCB0aGUgc3RhbmRhcmQgaXMgcXVpdGUgY2xlYXIgdGhhdCBkYXRhLXRhcmdldA0KY2Fubm90IGJl IGNvaW5kZXhlZDoNCg0KQzcyNSAoUjczNykgQSBkYXRhLXRhcmdldCBzaGFsbCBub3QgYmUgYSBj b2luZGV4ZWQgb2JqZWN0Lg0KDQpBbmQgdGhlcmUgYXJlIGEgY291cGxlIG9mIG5vdGVzIHJlbGF0 ZWQgdG8gdGhpczoNCg0KTk9URSA3LjQ1DQpBIGRhdGEgcG9pbnRlciBhbmQgaXRzIHRhcmdldCBh cmUgYWx3YXlzIG9uIHRoZSBzYW1lIGltYWdlLiBBIGNvYXJyYXkNCm1heSBiZSBvZiBhIGRlcml2 ZWQgdHlwZSB3aXRoIHBvaW50ZXIgb3IgYWxsb2NhdGFibGUgc3ViY29tcG9uZW50cy4gRm9yDQpl eGFtcGxlLCBpZiBQVFIgaXMgYSBwb2ludGVyIGNvbXBvbmVudCwgWltQXSVQVFIgaXMgYSByZWZl cmVuY2UgdG8gdGhlDQp0YXJnZXQgb2YgY29tcG9uZW50IFBUUiBvZiBaIG9uIGltYWdlIFAuIFRo aXMgdGFyZ2V0IGlzIG9uIGltYWdlIFAgYW5kDQppdHMgYXNzb2NpYXRpb24gd2l0aCBaW1BdJVBU UiBtdXN0IGhhdmUgYmVlbiBlc3RhYmxpc2hlZCBieSB0aGUNCmV4ZWN1dGlvbiBvZiBhbiBBTExP Q0FURSBzdGF0ZW1lbnQgb3IgYSBwb2ludGVyIGFzc2lnbm1lbnQgb24gaW1hZ2UgUC4NCg0KTk9U RSA3LjQ2DQpBIHBvaW50ZXIgYXNzaWdubWVudCBzdGF0ZW1lbnQgaXMgbm90IHBlcm1pdHRlZCB0 byBpbnZvbHZlIGEgY29pbmRleGVkDQpwb2ludGVyIG9yIHRhcmdldCwgc2VlIEM3MjMgYW5kIEM3 MjUuIFRoaXMgcHJldmVudHMgYSBwb2ludGVyDQphc3NpZ25tZW50IHN0YXRlbWVudCBmcm9tIGFz c29jaWF0aW5nIGEgcG9pbnRlciB3aXRoIGEgdGFyZ2V0IG9uDQphbm90aGVyIGltYWdlLiBJZiBz dWNoIGFuIGFzc29jaWF0aW9uIHdvdWxkIG90aGVyd2lzZSBiZSBpbXBsaWVkLCB0aGUNCmFzc29j aWF0aW9uIHN0YXR1cyBvZiB0aGUgcG9pbnRlciBiZWNvbWVzIHVuZGVmaW5lZC4gRm9yIGV4YW1w bGUsIGENCmRlcml2ZWQtdHlwZSBpbnRyaW5zaWMgYXNzaWdubWVudCB3aGVyZSB0aGUgdmFyaWFi bGUgYW5kIGV4cHIgYXJlIG9uDQpkaWZmZXJlbnQgaW1hZ2VzIGFuZCB0aGUgdmFyaWFibGUgaGFz IGFuIHVsdGltYXRlIHBvaW50ZXIgY29tcG9uZW50Lg0KDQpGb3J0cmFuIDIwMDggYWRkZWQgdGhl IGFiaWxpdHkgdG8gc3BlY2lmeSBhbiBpbml0aWFsLWRhdGEtdGFyZ2V0IGluDQpwb2ludGVyIGlu aXRpYWxpemF0aW9uOg0KDQpSNTA1IGluaXRpYWxpemF0aW9uIGlzID0gY29uc3RhbnQtZXhwcg0K ICAgICAgICAgICAgICAgICAgICBvciA9PiBudWxsLWluaXQNCiAgICAgICAgICAgICAgICAgICAg b3IgPT4gaW5pdGlhbC1kYXRhLXRhcmdldA0KUjUwNiBudWxsLWluaXQgICAgICBpcyBmdW5jdGlv bi1yZWZlcmVuY2UNCg0KQzUxMCAoUjUwMykgSWYgPT4gYXBwZWFycyBpbiBpbml0aWFsaXphdGlv biwgdGhlIGVudGl0eSBzaGFsbCBoYXZlIHRoZQ0KUE9JTlRFUiBhdHRyaWJ1dGUuIElmID0gYXBw ZWFycyBpbiBpbml0aWFsaXphdGlvbiwgdGhlIGVudGl0eSBzaGFsbCBub3QNCmhhdmUgdGhlIFBP SU5URVIgYXR0cmlidXRlLg0KDQpDNTExIChSNTAzKSBJZiBpbml0aWFsLWRhdGEtdGFyZ2V0IGFw cGVhcnMsIG9iamVjdC1uYW1lIHNoYWxsIGJlDQpkYXRhLXBvaW50ZXItaW5pdGlhbGl6YXRpb24g Y29tcGF0aWJsZSB3aXRoIGl0ICg0LjUuNC42KS4NCg0KSW5pdGlhbC1kYXRhLXRhcmdldCBpcyBk ZWZpbmVkIGluIDQuNS40LjYgYW5kIHRoZSBvbmx5IHJlbGV2YW50DQpjb25zdHJhaW50IGZvciBp dCBpczoNCg0KQzQ2MSAoUjQ0MykgVGhlIGRlc2lnbmF0b3Igc2hhbGwgZGVzaWduYXRlIGEgbm9u YWxsb2NhdGFibGUgdmFyaWFibGUNCnRoYXQgaGFzIHRoZSBUQVJHRVQgYW5kIFNBVkUgYXR0cmli dXRlcyBhbmQgZG9lcyBub3QgaGF2ZSBhIHZlY3Rvcg0Kc3Vic2NyaXB0LiBFdmVyeSBzdWJzY3Jp cHQsIHNlY3Rpb24gc3Vic2NyaXB0LCBzdWJzdHJpbmcgc3RhcnRpbmcNCnBvaW50LCBhbmQgc3Vi c3RyaW5nIGVuZGluZyBwb2ludCBpbiBkZXNpZ25hdG9yIHNoYWxsIGJlIGEgY29uc3RhbnQNCmV4 cHJlc3Npb24uDQoNClRoZSBkZWZpbml0aW9uIG9mICJkYXRhLXBvaW50ZXItaW5pdGlhbGl6YXRp b24gY29tcGF0aWJsZSIgaXM6DQoNCiJBIHBvaW50ZXIgdmFyaWFibGUgb3IgY29tcG9uZW50IGlz IGRhdGEtcG9pbnRlci1pbml0aWFsaXphdGlvbg0KY29tcGF0aWJsZSB3aXRoIGEgdGFyZ2V0IGlm IHRoZSBwb2ludGVyIGlzIHR5cGUgY29tcGF0aWJsZSB3aXRoIHRoZQ0KdGFyZ2V0LCB0aGV5IGhh dmUgdGhlIHNhbWUgcmFuaywgYWxsIG5vbmRlZmVycmVkIHR5cGUgcGFyYW1ldGVycyBvZiB0aGUN CnBvaW50ZXIgaGF2ZSB0aGUgc2FtZSB2YWx1ZXMgYXMgdGhlIGNvcnJlc3BvbmRpbmcgdHlwZSBw YXJhbWV0ZXJzIG9mDQp0aGUgdGFyZ2V0LCBhbmQgdGhlIHRhcmdldCBpcyBjb250aWd1b3VzIGlm IHRoZSBwb2ludGVyIGhhcyB0aGUNCkNPTlRJR1VPVVMgYXR0cmlidXRlLiINCg0KR2l2ZW4gdGhp cywgaXMgaW5pdGlhbGl6aW5nIGEgcG9pbnRlciB0byBhIGNvaW5kZXhlZCBvYmplY3QgcGVybWl0 dGVkPw0KDQpGb3IgZXhhbXBsZToNCg0KcHJvZ3JhbSB0ZXN0DQppbnRlZ2VyLCBzYXZlLCB0YXJn ZXQgOjogQ1sqXQ0KaW50ZWdlciwgcG9pbnRlciA6OiBQID0+IENbM10gISBQZXJtaXR0ZWQ/DQpl bmQNCg0KV2hpbGUgb3JkaW5hcnkgcG9pbnRlciBhc3NpZ25tZW50IHRvIGEgY29pbmRleGVkIG9i amVjdCBpcyBwcm9oaWJpdGVkDQpieSBDNzI1LCB0aGVyZSBpcyBubyBjb3JyZXNwb25kaW5nIGNv bnN0cmFpbnQgcHJvaGliaXRpbmcgc3VjaA0KYXNzb2NpYXRpb24gYnkgd2F5IG9mIGRhdGEgcG9p bnRlciBpbml0aWFsaXphdGlvbi4NCg0KTm90ZSB0aGF0IDE2LjUuMi41cDEoMikgc2F5cyB0aGF0 IHBvaW50ZXItYXNzaWduaW5nIHRvIGEgdGFyZ2V0IG9uIGENCmRpZmZlcmVudCBpbWFnZSBjYXVz ZXMgdGhlIHBvaW50ZXIgdG8gYmVjb21lIHVuZGVmaW5lZC4gU2luY2UgdGhlDQppbml0aWFsaXph dGlvbiBvY2N1cnMgb24gYWxsIGltYWdlcywgYW5kIGl0J3Mgbm90IHBvc3NpYmxlIHRvIHJlc3Ry aWN0DQp0aGUgdGFyZ2V0IHRvIG9ubHkgdGhlIHNhbWUgaW1hZ2UsIHRoZSBlZmZlY3Qgd291bGQg YmUgdG8gbWFrZSBhDQpwcm9ncmFtIHRoYXQgZG9lcyB0aGlzIG5vbmNvbmZvcm1pbmcuDQoNCkFO U1dFUjoNCg0KTm8sIHRoaXMgd2FzIG5vdCBpbnRlbmRlZCB0byBiZSBwZXJtaXR0ZWQuIEEgY2xh cmlmeWluZyBlZGl0IGlzDQpwcm92aWRlZC4NCg0KRURJVFMgdG8gMTAtMDA3cjE6DQoNCls3MDoz XSA0LjUuNC42DQoNCkluIHRoZSBmaXJzdCBzZW50ZW5jZSBvZiBDNDYxLCBpbnNlcnQgIiwgbm9u Y29pbmRleGVkIiBhZnRlcg0KIm5vbmFsbG9jYXRhYmxlIiBzbyB0aGF0IHRoZSBzZW50ZW5jZSBy ZWFkczoNCg0KQzQ2MSAoUjQ0MykgVGhlIGRlc2lnbmF0b3Igc2hhbGwgZGVzaWduYXRlIGEgbm9u YWxsb2NhdGFibGUsDQpub25jb2luZGV4ZWQgdmFyaWFibGUgdGhhdCBoYXMgdGhlIFRBUkdFVCBh bmQgU0FWRSBhdHRyaWJ1dGVzIGFuZA0KZG9lcyBub3QgaGF2ZSBhIHZlY3RvciBzdWJzY3JpcHQu DQoNClNVQk1JVFRFRCBCWTogU3RldmUgTGlvbmVsDQoNCkhJU1RPUlk6IDE1LTIxNiAgICBtMjA4 ICBGMDgvMDE0NSBzdWJtaXR0ZWQgLSBwYXNzZWQgYnkgSjMgbWVldGluZw0KICAgICAgICAgMTYt MTAzICAgIG0yMDkgIFBhc3NlZCBieSBKMyBsZXR0ZXIgYmFsbG90IDE2LTEwMQ0KDQotLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tDQoNCk5VTUJFUjogRjA4LzAxNDcNClRJVExFOiBJcyBnZW5lcmljIHJlc29sdXRpb24g b2YgZWxlbWVudGFsIGFzc2lnbm1lbnQgZG9uZSBhdCBydW50aW1lPw0KS0VZV09SRFM6IFR5cGUt Ym91bmQgZGVmaW5lZCBhc3NpZ25tZW50LCBBbGxvY2F0YWJsZQ0KREVGRUNUIFRZUEU6IEVycmF0 dW0NClNUQVRVUzogUGFzc2VkIGJ5IEozIGxldHRlciBiYWxsb3QNCg0KUVVFU1RJT046DQoNCkNv bnNpZGVyDQoNCiAgTW9kdWxlIGRhX21vZHVsZQ0KICAgIFR5cGUgdA0KICAgICAgUmVhbCBjDQog ICAgRW5kIFR5cGUNCiAgICBJbnRlcmZhY2UgQXNzaWdubWVudCg9KQ0KICAgICAgTW9kdWxlIFBy b2NlZHVyZSBlZGFzZ24NCiAgICBFbmQgSW50ZXJmYWNlDQogIENvbnRhaW5zDQogICAgRWxlbWVu dGFsIFN1YnJvdXRpbmUgZWRhc2duKGEsYikNCiAgICAgIENsYXNzKHQpLEludGVudChPdXQpIDo6 IGENCiAgICAgIENsYXNzKHQpLEludGVudChJbikgOjogYg0KICAgICAgYSVjID0gLWIlYw0KICAg IEVuZCBTdWJyb3V0aW5lDQogIEVuZCBNb2R1bGUNCiAgUHJvZ3JhbSBlZGF0ZXN0DQogICAgQ2Fs bCB0ZXN0KDEwLDEwLDEzKQ0KICBDb250YWlucw0KICAgIFN1YnJvdXRpbmUgdGVzdChuLG4yLG0p DQogICAgICBVc2UgZGFfbW9kdWxlDQogICAgICBUeXBlKHQpIDo6IHgobikseihtKQ0KICAgICAg VHlwZSh0KSxBbGxvY2F0YWJsZSA6OiB5KDopDQogICAgICB4JWMgPSBbIChpLGk9MSxuKSBdDQog ICAgICB6JWMgPSBbIChpLGk9MSxtKSBdDQogICAgICBBbGxvY2F0ZSh5KG4yKSxTb3VyY2U9dCgw KSkNCiAgICAgIHkgPSB4ICAgICAgICAgICAgICAgICAgICAgICAgISBBDQogICAgICBQcmludCAx LHkNCiAgICAxIEZvcm1hdCgqKDFYLEYwLjEsOikpDQogICAgICB5ID0geiAgICAgICAgICAgICAg ICAgICAgICAgICEgQg0KICAgICAgUHJpbnQgMSx5DQogICAgRW5kIFN1YnJvdXRpbmUNCiAgRW5k IFByb2dyYW0NCg0KQWNjb3JkaW5nIHRvIDcuMi4xLjIgSW50cmluc2ljIGFzc2lnbm1lbnQgc3Rh dGVtZW50LCBhbiBhc3NpZ25tZW50DQpzdGF0ZW1lbnQgaXMgYW4gaW50cmluc2ljIGFzc2lnbm1l bnQgc3RhdGVtZW50IGlmIChhbmQgb25seSBpZikgaXQNCmlzIG5vdCBhIGRlZmluZWQgYXNzaWdu bWVudCBzdGF0ZW1lbnQuICBBY2NvcmRpbmcgdG8gNy4yLjEuNCBEZWZpbmVkDQphc3NpZ25tZW50 IHN0YXRlbWVudCwgYSBkZWZpbmVkIGFzc2lnbm1lbnQgc3RhdGVtZW50IG5lZWRzIHRvIGhhdmUg YQ0Kc3Vicm91dGluZSB0aGF0IGRlZmluZXMgdGhlIGFzc2lnbm1lbnQgIngxID0geDIiLiAgRm9y IGVsZW1lbnRhbA0Kc3Vicm91dGluZXMgKGl0ZW0gKDUpKGIpKSwgdGhhdCBpcyB0cnVlIG9ubHkg aWYNCiAgIngxIGFuZCB4MiBhcmUgY29uZm9ybWFibGUiDQp3aGljaCB3aGVuIHgxIGFuZCB4MiBh cmUgYm90aCBhcnJheXMsIG1lYW5zICJoYXMgdGhlIHNhbWUgc2hhcGUiLg0KRm9yIHRoZSBleGFt cGxlIGFib3ZlLCBpbiB0aGUgYXNzaWdubWVudCBtYXJrZWQgKEEpLCB4IGFuZCB5IHdpbGwgYmUN CmNvbmZvcm1hYmxlIChhcyBib3RoIG4gYW5kIG4yIGFyZSBlcXVhbCB0byAxMCksIG1ha2luZyB0 aGF0IGEgZGVmaW5lZA0KYXNzaWdubWVudCwgdGh1cyB0aGUgUFJJTlQgc3RhdGVtZW50IGFmdGVy IGl0IHdvdWxkIHByaW50DQogLTEuMCAtMi4wIC0zLjAgLTQuMCAtNS4wIC02LjAgLTcuMCAtOC4w IC05LjAgLTEwLjANCndoaWxlIGluIHRoZSBhc3NpZ25tZW50IHN0YXRlbWVudCBtYXJrZWQgKEIp LCB5IGFuZCB6IHdpbGwgbm90IGJlDQpjb25mb3JtYWJsZSAobjIgYmVpbmcgMTAgYW5kIG0gYmVp bmcgMTMpLCBtYWtpbmcgaXQgYW4gaW50cmluc2ljDQphc3NpZ25tZW50LiAgSW4gdGhpcyBjYXNl LCBiZWNhdXNlIFkgaXMgYWxsb2NhdGFibGUgaXQgd2lsbCBiZQ0KcmVhbGxvY2F0ZWQsIGFuZCBz byB0aGUgb3V0cHV0IGZyb20gdGhlIHNlY29uZCBQUklOVCBzdGF0ZW1lbnQgd291bGQNCmJlDQog MS4wIDIuMCAzLjAgNC4wIDUuMCA2LjAgNy4wIDguMCA5LjAgMTAuMCAxMS4wIDEyLjAgMTMuMA0K DQpIb3dldmVyLCB0aGlzIHdvdWxkIHNlZW0gdG8gdmlvbGF0ZSB0aGUgZnVuZGFtZW50YWwgcHJp bmNpcGxlIHRoYXQNCmdlbmVyaWMgcmVmZXJlbmNlcyBhcmUgcmVzb2x2YWJsZSBhdCBjb21waWxl IHRpbWUuICBJdCB3b3VsZCBhbHNvDQpzZWVtIHRvIGJlIG5lYXJseSB1c2VsZXNzIHNpbmNlIGlm IHRoZSB2YXJpYWJsZSBpcyBub3QgYWxsb2NhdGFibGUNCnRoZSBzaGFwZXMgYXJlIHJlcXVpcmVk IHRvIGNvbmZvcm0gYW55d2F5Lg0KDQpJcyB0aGlzIGZlYXR1cmUgaW50ZW5kZWQgdG8gd29yayBs aWtlIHRoaXM/DQoNCkFOU1dFUjoNCg0KTm8sIHRoaXMgd2FzIGEgbWlzdGFrZS4gIEVkaXRzIGFy ZSBwcm92aWRlZCB0byByZW1vdmUgdGhlIHJ1bnRpbWUNCmdlbmVyaWMgcmVzb2x1dGlvbi4NCg0K QWZ0ZXIgdGhlIGVkaXRzOg0KICAxKSBUaGUgYXNzaWdubWVudCBBIGlzIGRlZmluZWQgYXNzaWdu bWVudCBhbmQgaXMgY29uZm9ybWluZyAoZnJvbSANCiAgICAgZmlyc3QgZWRpdCkuDQoNCiAgMikg VGhlIGFzc2lnbm1lbnQgQiBpcyBkZWZpbmVkIGFzc2lnbm1lbnQgYnV0IGlzIG5vdCBzdGFuZGFy ZCBjb25mb3JtaW5nLA0KICAgICBzaW5jZSB0aGUgc2hhcGVzIGRpZmZlciAoZnJvbSBzZWNvbmQg ZWRpdCkuDQogDQogIDMpIEZvciBhIGRlZmluZWQgYXNzaWdubWVudCBzdGF0ZW1lbnQsIGF1dG8t cmVhbGxvY2F0aW9uIG9mIA0KICAgICBhbGxvY2F0YWJsZXMgZG9lcyBub3Qgb2NjdXIsIGFzIHRo YXQgaXMgb25seSBkb25lIGJ5IGFuIGludHJpbnNpYyANCiAgICAgYXNzaWdubWVudCBzdGF0ZW1l bnQuDQoNCkVESVRTOg0KDQpbMjQ6MTErXSAxLjYuMiBGb3J0cmFuIDIwMDMgY29tcGF0aWJpbGl0 eSwgaW5zZXJ0IG5ldyBpbmNvbXBhdGliaWxpdHkNCiAgIkZvcnRyYW4gMjAwMyBpbnRlcnByZXRl ZCBhc3NpZ25tZW50IHRvIGFuIGFsbG9jYXRhYmxlIHZhcmlhYmxlDQogICBmcm9tIGEgbm9uY29u Zm9ybWFibGUgYXJyYXkgYXMgaW50cmluc2ljIGFzc2lnbm1lbnQsIGV2ZW4gd2hlbiBhbg0KICAg ZWxlbWVudGFsIGRlZmluZWQgYXNzaWdubWVudCB3YXMgaW4gc2NvcGU7IHRoaXMgcGFydCBvZiBJ U08vSUVDDQogICAxNTM5IGRvZXMgbm90IHBlcm1pdCBhc3NpZ25tZW50IGZyb20gYSBub25jb25m b3JtYWJsZSBhcnJheSBpbg0KICAgdGhpcyBjb250ZXh0LiIuDQp7VGhlIHVuaW50ZW5kZWQgZXh0 ZW5zaW9uIGlzIHdlaXJkIGFuZCB2aW9sYXRlcyBvdXIgb3duIHByaW5jaXBsZXMsDQogYnV0IGlz IG5vdCBpbiBpdHNlbGYgY29udHJhZGljdG9yeSBvciBhbWJpZ3VvdXMgc28gdGhpcyBpcyBhbg0K IGluY29tcGF0aWJpbGl0eS59DQoNClsxNTc6MTRdIDcuMi4xLjQgRGVmaW5lZCBhc3NpZ25tZW50 IHN0YXRlbWVudCwgcDIsIGl0ZW0gKDUpKGIpLA0KICAgICAgICAgQ2hhbmdlICIkeF8xJCBhbmQg JHhfMiQgYXJlIGNvbmZvcm1hYmxlIg0KICAgICAgICAgdG8gIiR4XzIkIGlzIHNjYWxhciBvciBo YXMgdGhlIHNhbWUgcmFuayBhcyAkeF8xJCIuDQp7JHhfMSQgaXMgVGVYIGZvciBpdGFsaWNzIHgg c3Vic2NyaXB0IDEufQ0KDQpbMTU3OjE2XSBTYW1lIHN1YmNsYXVzZSwgcDMsIGFwcGVuZCBuZXcg c2VudGVuY2UNCiAgIklmIHRoZSBzdWJyb3V0aW5lIGlzIGVsZW1lbnRhbCwgJHhfMiQgc2hhbGwg aGF2ZSB0aGUgc2FtZSBzaGFwZSBhcw0KICAgJHhfMSQuIg0Ke1JldGFpbiBjb25mb3JtYWJpbGl0 eSBhcyBhIG5vcm1hbCByZXF1aXJlbWVudCBpbnN0ZWFkIG9mIGFzIGENCiBjb25kaXRpb24ufQ0K DQpTVUJNSVRURUQgQlk6IE1hbGNvbG0gQ29oZW4NCg0KSElTVE9SWTogMTUtMjE5ICAgIG0yMDgg IEYwOC8wMTQ3IHN1Ym1pdHRlZCAtIHBhc3NlZCBieSBKMyBtZWV0aW5nDQogICAgICAgICAxNi0x MDMgICAgbTIwOSAgUGFzc2VkIGFzIGFtZW5kZWQgYnkgSjMgbGV0dGVyIGJhbGxvdCAxNi0xMDEN Cg0KLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLQ0KDQpOVU1CRVI6IEYwOC8wMTQ4DQpUSVRMRTogUG9pbnRlciBzdWJv YmplY3QgaW4gc3RydWN0dXJlIGNvbnN0cnVjdG9yIGluIHB1cmUgcHJvY2VkdXJlDQpLRVlXT1JE UzogcG9pbnRlciBzdWJvYmplY3QsIHN0cnVjdHVyZSBjb25zdHJ1Y3RvciwgcHVyZSBwcm9jZWR1 cmUNCkRFRkVDVCBUWVBFOiBFcnJhdHVtDQpTVEFUVVM6IFBhc3NlZCBieSBKMyBsZXR0ZXIgYmFs bG90DQoNClFVRVNUSU9OOg0KDQpDb25zaWRlciB0aGUgbW9kdWxlDQoNCnByb2dyYW0gUA0KDQog IHR5cGUgOjogVDENCiAgICBpbnRlZ2VyLCBwb2ludGVyIDo6IFAxDQogIGVuZCB0eXBlIFQxDQoN CiAgdHlwZSA6OiBUMg0KICAgIHR5cGUodDEpIDo6IFAyDQogIGVuZCB0eXBlIFQyDQoNCiAgdHlw ZSh0MSksIHRhcmdldCA6OiBWMQ0KDQogIGFsbG9jYXRlICggVjElcDEsIHNvdXJjZSA9IDQyICkN Cg0KY29udGFpbnMNCg0KICBwdXJlIHN1YnJvdXRpbmUgUyAoICkNCiAgICB0eXBlKHQyKSA6OiBB DQogIDEgYSA9IHQyKHYxKQ0KICAgIGElcDIlcDEgPSBhJXAyJXAxICsgMQ0KICBlbmQgc3Vicm91 dGluZSBTDQoNCmVuZCBwcm9ncmFtIFANCg0KSXRlbSAoMykgaW4gdGhlIGxpc3QgaW4gY29uc3Ry YWludCBDMTI4MyBpbiBzdWJjbGF1c2UgMTIuNyBwcm9oaWJpdHMNCmFuIG9iamVjdCB0aGF0IGlz IGFjY2Vzc2VkIGJ5IGhvc3Qgb3IgdXNlIGFzc29jaWF0aW9uIChhbmQgb3RoZXINCmNhdGVnb3Jp ZXMpIHRvIGJlIHRoZSA8ZXhwcj4gaW4gYSBzdHJ1Y3R1cmUgY29uc3RydWN0b3IgdGhhdA0KY29y cmVzcG9uZHMgdG8gYSBjb21wb25lbnQgdGhhdCBoYXMgdGhlIFBPSU5URVIgYXR0cmlidXRlLiAg SXQgaXMNCnNpbGVudCBjb25jZXJuaW5nIHR5cGUgY29uc3RydWN0b3JzIGZvciB0eXBlcyB0aGF0 IGhhdmUgcG90ZW50aWFsDQpzdWJvYmplY3QgY29tcG9uZW50cyB3aXRoIHRoZSBQT0lOVEVSIGF0 dHJpYnV0ZS4NCg0KSXMgdGhlIHN0YXRlbWVudCBsYWJlbGVkIDEgcGVybWl0dGVkPyAgSWYgc28s IHdhcyB0aGF0IGludGVuZGVkPw0KDQpBTlNXRVI6DQoNClRoZSBzdGF0ZW1lbnQgbGFiZWxlZCAx IHdhcyBpbmFkdmVydGVudGx5IGFsbG93ZWQgYmVjYXVzZSBWMQ0KY29ycmVzcG9uZHMgdG8gYSBj b21wb25lbnQgb2YgdGhlIHN0cnVjdHVyZSBjb25zdHJ1Y3RvciBmb3IgdHlwZSBUMg0KdGhhdCBk b2VzIG5vdCBoYXZlIHRoZSBQT0lOVEVSIGF0dHJpYnV0ZS4NCg0KQW4gZWRpdCBpcyBwcm92aWRl ZCB0byBjb3JyZWN0IHRoaXMgbWlzdGFrZS4NCg0KRURJVDoNCg0KWzMxMjozNSAxMi43cDIgQzEy ODMoMyldIFJlcGxhY2UgdGhpcyBsaXN0IGl0ZW0gYnkNCiAgIigzKSBhcyB0aGUgPGV4cHI+IGNv cnJlc3BvbmRpbmcgdG8gYSBjb21wb25lbnQgaW4gYQ0KICAgICAgIDxzdHJ1Y3R1cmUtY29uc3Ry dWN0b3I+IGlmIHRoZSBjb21wb25lbnQgaGFzIHRoZSBQT0lOVEVSDQogICAgICAgYXR0cmlidXRl IG9yIGhhcyBhIHBvaW50ZXIgY29tcG9uZW50IGF0IGFueSBsZXZlbCBvZg0KICAgICAgIGNvbXBv bmVudCBzZWxlY3Rpb24sIg0KDQpTVUJNSVRURUQgQlk6IFZhbiBTbnlkZXINCg0KSElTVE9SWTog MTUtMjQ5ICAgIG0yMDggIEYwOC8wMTQ4IHN1Ym1pdHRlZA0KICAgICAgICAgMTUtMjQ5cjEgIG0y MDggIGZpeCB0eXBvcyAtIHBhc3NlZCBKMyBtZWV0aW5nDQogICAgICAgICAxNi0xMDMgICAgbTIw OSAgUGFzc2VkIGFzIGFtZW5kZWQgYnkgSjMgbGV0dGVyIGJhbGxvdCAxNi0xMDENCg0KLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLQ== --_004_4AA982B1265F43408480F737BE12F4D36FBE070EORSMSX103amrcor_--