From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 34897 invoked by alias); 1 Jul 2016 13:08:05 -0000 Mailing-List: contact gdb-patches-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sourceware.org Received: (qmail 34883 invoked by uid 89); 1 Jul 2016 13:08:04 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-1.4 required=5.0 tests=AWL,BAYES_00,RP_MATCHES_RCVD,SPF_PASS autolearn=ham version=3.3.2 spammy=sk:christo, HX-Envelope-From:sk:christo, HX-MS-Has-Attach:yes, H*c:HHH X-HELO: mga11.intel.com Received: from mga11.intel.com (HELO mga11.intel.com) (192.55.52.93) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Fri, 01 Jul 2016 13:07:54 +0000 Received: from orsmga002.jf.intel.com ([10.7.209.21]) by fmsmga102.fm.intel.com with ESMTP; 01 Jul 2016 06:07:52 -0700 X-ExtLoop1: 1 Received: from irsmsx101.ger.corp.intel.com ([163.33.3.153]) by orsmga002.jf.intel.com with ESMTP; 01 Jul 2016 06:07:49 -0700 Received: from irsmsx102.ger.corp.intel.com ([169.254.2.10]) by IRSMSX101.ger.corp.intel.com ([169.254.1.155]) with mapi id 14.03.0248.002; Fri, 1 Jul 2016 14:07:47 +0100 From: "Weinmann, Christoph T" To: Jan Kratochvil CC: "gdb-patches@sourceware.org" Subject: RE: [ping] [PATCH v2 0/6] fortran: multi-dimensional subarrays with strides Date: Fri, 01 Jul 2016 13:08:00 -0000 Message-ID: <1E04C56C2A492B449743D653DD4A15BC3BC4C94C@IRSMSX102.ger.corp.intel.com> References: <1E04C56C2A492B449743D653DD4A15BC3BC1AEB0@IRSMSX102.ger.corp.intel.com> <20160630214736.GA6476@host1.jankratochvil.net> In-Reply-To: <20160630214736.GA6476@host1.jankratochvil.net> Content-Type: multipart/mixed; boundary="_007_1E04C56C2A492B449743D653DD4A15BC3BC4C94CIRSMSX102gercor_" MIME-Version: 1.0 X-IsSubscribed: yes X-SW-Source: 2016-07/txt/msg00009.txt.bz2 --_007_1E04C56C2A492B449743D653DD4A15BC3BC4C94CIRSMSX102gercor_ Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-length: 1252 Hi Jan, Thanks for picking this up! I was currently working on adapting the patch a= ccording to consider the Rust integration in GDB. The attached files should be fine for this. Thanks, Christoph > -----Original Message----- > From: Jan Kratochvil [mailto:jan.kratochvil@redhat.com] > Sent: Thursday, June 30, 2016 11:48 PM > To: Weinmann, Christoph T > Cc: gdb-patches@sourceware.org > Subject: Re: [ping] [PATCH v2 0/6] fortran: multi-dimensional subarrays w= ith > strides >=20 > Hello Christoph, >=20 > On Fri, 08 Apr 2016 09:58:11 +0200, Weinmann, Christoph T wrote: > > Ping for the patch series > > https://sourceware.org/ml/gdb-patches/2016-02/msg00846.html >=20 > I am porting now this patch series to trunk, if you have something up-to-= date > it would be great to post some draft update (at least for me). >=20 > Otherwise I can post it after I finish the port. >=20 >=20 > Thanks, > Jan Intel Deutschland GmbH Registered Address: Am Campeon 10-12, 85579 Neubiberg, Germany Tel: +49 89 99 8853-0, www.intel.de Managing Directors: Christin Eisenschmid, Christian Lamprechter Chairperson of the Supervisory Board: Nicole Lau Registered Office: Munich Commercial Register: Amtsgericht Muenchen HRB 186928 --_007_1E04C56C2A492B449743D653DD4A15BC3BC4C94CIRSMSX102gercor_ Content-Type: application/octet-stream; name="0001-fortran-allow-multi-dimensional-subarrays.patch" Content-Description: 0001-fortran-allow-multi-dimensional-subarrays.patch Content-Disposition: attachment; filename="0001-fortran-allow-multi-dimensional-subarrays.patch"; size=22332; creation-date="Fri, 01 Jul 2016 12:59:57 GMT"; modification-date="Fri, 01 Jul 2016 12:55:48 GMT" Content-Transfer-Encoding: base64 Content-length: 30273 RnJvbSA5OTM4MzQ0NjlmMWU2NGU1NDYxZTFlMWJlZjkxN2ZkMzg4ZmU0Mjhl IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBDaHJpc3RvcGggV2Vp bm1hbm4gPGNocmlzdG9waC50LndlaW5tYW5uQGludGVsLmNvbT4KRGF0ZTog VGh1LCAxMiBOb3YgMjAxNSAxNTo0NTo1MiArMDEwMApTdWJqZWN0OiBbUEFU Q0ggMS82XSBmb3J0cmFuOiBhbGxvdyBtdWx0aS1kaW1lbnNpb25hbCBzdWJh cnJheXMKCkFkZCBhbiBhcmd1bWVudCBjb3VudCBmb3Igc3VicmFuZ2UgZXhw cmVzc2lvbnMgaW4gRm9ydHJhbi4KQmFzZWQgb24gdGhlIGNvdW50ZWQgdmFs dWUgY2FsY3VsYXRlIGEgbmV3IGFycmF5IHdpdGggdGhlCmVsZW1lbnRzIHNw ZWNpZmllZCBieSB0aGUgdXNlci4gIEZpcnN0IHBhcnNlIHRoZSB1c2VyIGlu cHV0LApzZWNvbmRseSBjb3B5IHRoZSBkZXNpcmVkIGFycmF5IHZhbHVlcyBp bnRvIHRoZSByZXR1cm4KYXJyYXksIHRoaXJkbHkgcmUtY3JlYXRlIHRoZSBu ZWNlc3NhcnkgcmFuZ2VzIGFuZCBib3VuZHMuCgoxfCAgcHJvZ3JhbSBwcm9n CjJ8ICAgIGludGVnZXIgOjogYXJ5KDEwLDUpID0gKC8gKGksaT0xLDEwKSAo aiwgaj0xLDUpIC8pCjN8ICBlbmQgcHJvZ3JhbSBwcm9nCgooZ2RiKSBwcmlu dCBhcnkoMjo0LDE6MykKb2xkPiBTeW50YXggZXJyb3IgaW4gZXhwcmVzc2lv biBuZWFyICc6MycKbmV3PiAkMyA9ICggKCAyMSwgMzEsIDQxKSAoIDIyLCAz MiwgNDIpICggMjMsIDMzLCA0MykgKQoKMjAxMy0xMS0yNSAgQ2hyaXN0b3Bo IFdlaW5tYW5uICA8Y2hyaXN0b3BoLnQud2Vpbm1hbm5AaW50ZWwuY29tPgoK CSogZXZhbC5jIChtdWx0aV9mNzdfc3Vic2NyaXB0KTogUmVtb3ZlIGZ1bmN0 aW9uLgoJKiBldmFsLmMgKGV2YWx1YXRlX3N1YnJhbmdlX2V4cHIpOiBXaGVu IGV2YWx1YXRpbmcKCWFuIGFycmF5IG9yIHN0cmluZyBleHByZXNzaW9uLCBj YWxsCgl2YWx1ZV9mOTBfc3ViYXJyYXkuCgkqIGV2YWwuYyAodmFsdWVfZjkw X3N1YmFycmF5KTogQWRkIGFyZ3VtZW50IHBhcnNpbmcKCWFuZCBjb21wdXRl IHJlc3VsdCBhcnJheSBiYXNlZCBvbiB1c2VyIGlucHV0LgoJKiBmLWV4cC55 OiBJbmNyZW1lbnQgYXJndW1lbnQgY291bnRlciBmb3IgZXZlcnkgc3VicmFu Z2UKCWV4cHJlc3Npb24gZW50ZXJlZCBieSB0aGUgdXNlci4KCSogdmFsb3Bz LmMgKHZhbHVlX3NsaWNlKTogQ2FsbCB2YWx1ZV9zbGljZV8xIHdpdGgKCWFk ZGl0aW9uYWwgZGVmYXVsdCBhcmd1bWVudC4KCSogdmFsb3BzLmMgKHZhbHVl X3NsaWNlXzEpOiBBZGQgZnVuY3Rpb25hbGl0eSB0bwoJY29weSBhbmQgcmV0 dXJuIHJlc3VsdCB2YWx1ZXMgYmFzZWQgb24gaW5wdXQuCgkqIHZhbHVlLmg6 IEFkZCBmdW5jdGlvbiBkZWZpbml0aW9uLgoKClNpZ25lZC1vZmYtYnk6IENo cmlzdG9waCBXZWlubWFubiA8Y2hyaXN0b3BoLnQud2Vpbm1hbm5AaW50ZWwu Y29tPgotLS0KIGdkYi9ldmFsLmMgICB8IDMxNCArKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLQog Z2RiL2YtZXhwLnkgIHwgICAyICsKIGdkYi92YWxvcHMuYyB8IDE1OSArKysr KysrKysrKysrKysrKysrKysrKystLS0tLS0KIGdkYi92YWx1ZS5oICB8ICAg MiArCiA0IGZpbGVzIGNoYW5nZWQsIDM4MCBpbnNlcnRpb25zKCspLCA5NyBk ZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9nZGIvZXZhbC5jIGIvZ2RiL2V2 YWwuYwppbmRleCBkZTFjNjYzLi4zNTgxNWE0IDEwMDY0NAotLS0gYS9nZGIv ZXZhbC5jCisrKyBiL2dkYi9ldmFsLmMKQEAgLTM5OSwyOSArMzk5LDI1NCBA QCBpbml0X2FycmF5X2VsZW1lbnQgKHN0cnVjdCB2YWx1ZSAqYXJyYXksIHN0 cnVjdCB2YWx1ZSAqZWxlbWVudCwKICAgcmV0dXJuIGluZGV4OwogfQogCisv KiBFdmFsdWF0ZXMgYW55IG9wZXJhdGlvbiBvbiBGb3J0cmFuIGFycmF5cyBv ciBzdHJpbmdzIHdpdGggYXQgbGVhc3QKKyAgIG9uZSB1c2VyIHByb3ZpZGVk IHBhcmFtZXRlci4gIEV4cGVjdHMgdGhlIGlucHV0IEFSUkFZIHRvIGJlIGVp dGhlcgorICAgYW4gYXJyYXksIG9yIGEgc3RyaW5nLiAgRXZhbHVhdGVzIEVY UCBieSBpbmNyZW1lbnRpbmcgUE9TLCBhbmQKKyAgIHdyaXRlcyB0aGUgY29u dGVudCBmcm9tIHRoZSBlbHQgc3RhY2sgaW50byBhIGxvY2FsIHN0cnVjdC4g IE5BUkdTCisgICBzcGVjaWZpZXMgbnVtYmVyIG9mIGxpdGVyYWwgb3IgcmFu Z2UgYXJndW1lbnRzIHRoZSB1c2VyIHByb3ZpZGVkLgorICAgTkFSR1MgbXVz dCBiZSB0aGUgc2FtZSBudW1iZXIgYXMgQVJSQVkgaGFzIGRpbWVuc2lvbnMu ICAqLworCiBzdGF0aWMgc3RydWN0IHZhbHVlICoKLXZhbHVlX2Y5MF9zdWJh cnJheSAoc3RydWN0IHZhbHVlICphcnJheSwKLQkJICAgIHN0cnVjdCBleHBy ZXNzaW9uICpleHAsIGludCAqcG9zLCBlbnVtIG5vc2lkZSBub3NpZGUpCit2 YWx1ZV9mOTBfc3ViYXJyYXkgKHN0cnVjdCB2YWx1ZSAqYXJyYXksIHN0cnVj dCBleHByZXNzaW9uICpleHAsCisJCSAgICBpbnQgKnBvcywgaW50IG5hcmdz LCBlbnVtIG5vc2lkZSBub3NpZGUpCiB7Ci0gIGludCBwYyA9ICgqcG9zKSAr IDE7CisgIGludCBpLCBkaW1fY291bnQgPSAwOwogICBMT05HRVNUIGxvd19i b3VuZCwgaGlnaF9ib3VuZDsKLSAgc3RydWN0IHR5cGUgKnJhbmdlID0gY2hl Y2tfdHlwZWRlZiAoVFlQRV9JTkRFWF9UWVBFICh2YWx1ZV90eXBlIChhcnJh eSkpKTsKLSAgZW51bSByYW5nZV90eXBlIHJhbmdlX3R5cGUKLSAgICA9IChl bnVtIHJhbmdlX3R5cGUpIGxvbmdlc3RfdG9faW50IChleHAtPmVsdHNbcGNd Lmxvbmdjb25zdCk7Ci0gCi0gICpwb3MgKz0gMzsKLQotICBpZiAocmFuZ2Vf dHlwZSA9PSBMT1dfQk9VTkRfREVGQVVMVCB8fCByYW5nZV90eXBlID09IEJP VEhfQk9VTkRfREVGQVVMVCkKLSAgICBsb3dfYm91bmQgPSBUWVBFX0xPV19C T1VORCAocmFuZ2UpOwotICBlbHNlCi0gICAgbG93X2JvdW5kID0gdmFsdWVf YXNfbG9uZyAoZXZhbHVhdGVfc3ViZXhwIChOVUxMX1RZUEUsIGV4cCwgcG9z LCBub3NpZGUpKTsKKyAgc3RydWN0IHZhbHVlICpuZXdfYXJyYXkgPSBhcnJh eTsKKyAgc3RydWN0IHR5cGUgKmFycmF5X3R5cGUgPSBjaGVja190eXBlZGVm ICh2YWx1ZV90eXBlIChuZXdfYXJyYXkpKTsKKyAgc3RydWN0IHR5cGUgKmVs dF90eXBlOworCisgIHR5cGVkZWYgc3RydWN0IHN1YnNjcmlwdF9yYW5nZQor ICB7CisgICAgZW51bSByYW5nZV90eXBlIGY5MF9yYW5nZV90eXBlOworICAg IExPTkdFU1QgbG93LCBoaWdoOworICB9IHN1YnNjcmlwdF9yYW5nZTsKKwor ICB0eXBlZGVmIGVudW0gc3Vic2NyaXB0X2tpbmQKKyAgeworICAgIFNVQlND UklQVF9SQU5HRSwgICAgLyogZS5nLiAiKGxvd2JvdW5kOmhpZ2hib3VuZCki ICAqLworICAgIFNVQlNDUklQVF9JTkRFWCAgICAvKiBlLmcuICIobGl0ZXJh bCkiICAqLworICB9IGtpbmQ7CisKKyAgLyogTG9jYWwgc3RydWN0IHRvIGhv bGQgdXNlciBkYXRhIGZvciBGb3J0cmFuIHN1YmFycmF5IGRpbWVuc2lvbnMu ICAqLworICBzdHJ1Y3Qgc3Vic2NyaXB0X3N0b3JlCisgIHsKKyAgICAvKiBG b3IgZXZlcnkgZGltZW5zaW9uLCB3ZSBhcmUgZWl0aGVyIHdvcmtpbmcgb24g YSByYW5nZSBvciBhbiBpbmRleAorICAgICAgIGV4cHJlc3Npb24sIHNvIHdl IHN0b3JlIHRoaXMgaW5mbyBzZXBhcmF0ZWx5IGZvciBsYXRlci4gICovCisg ICAgZW51bSBzdWJzY3JpcHRfa2luZCBraW5kOworCisgICAgLyogV2UgYWxz byBzdG9yZSBlaXRoZXIgdGhlIGxvd2VyIGFuZCB1cHBlciBib3VuZCBpbmZv LCBvciB0aGUgaW5kZXgKKyAgICAgICBudW1iZXIuICBCZWZvcmUgZXZhbHVh dGlvbiBvZiB0aGUgaW5wdXQgdmFsdWVzLCB3ZSBkbyBub3Qga25vdyBpZiB3 ZSBhcmUKKyAgICAgICBhY3R1YWxseSB3b3JraW5nIG9uIGEgcmFuZ2Ugb2Yg cmFuZ2VzLCBvciBhbiBpbmRleCBpbiBhIHJhbmdlLiAgU28gYXMgYQorICAg ICAgIGZpcnN0IHN0ZXAgd2Ugc3RvcmUgYWxsIGlucHV0IGluIGEgdW5pb24u ICBUaGUgYXJyYXkgY2FsY3VsYXRpb24gaXRzZWxmCisgICAgICAgZGVhbHMg d2l0aCB0aGlzIGxhdGVyIG9uLiAgKi8KKyAgICB1bmlvbiBlbGVtZW50X3Jh bmdlCisgICAgeworICAgICAgc3Vic2NyaXB0X3JhbmdlIHJhbmdlOworICAg ICAgTE9OR0VTVCBudW1iZXI7CisgICAgfSBVOworICB9ICpzdWJzY3JpcHRf YXJyYXk7CisKKyAgLyogQ2hlY2sgaWYgdGhlIG51bWJlciBvZiBhcmd1bWVu dHMgcHJvdmlkZWQgYnkgdGhlIHVzZXIgbWF0Y2hlcworICAgICB0aGUgbnVt YmVyIG9mIGRpbWVuc2lvbiBvZiB0aGUgYXJyYXkuICBBIHN0cmluZyBoYXMg b25seSBvbmUKKyAgICAgZGltZW5zaW9uLiAgKi8KKyAgaWYgKG5hcmdzICE9 IGNhbGNfZjc3X2FycmF5X2RpbXMgKHZhbHVlX3R5cGUgKG5ld19hcnJheSkp KQorICAgIGVycm9yIChfKCJXcm9uZyBudW1iZXIgb2Ygc3Vic2NyaXB0cyIp KTsKKworICBzdWJzY3JpcHRfYXJyYXkgPSAoc3RydWN0IHN1YnNjcmlwdF9z dG9yZSopIGFsbG9jYSAoc2l6ZW9mICgqc3Vic2NyaXB0X2FycmF5KSAqIG5h cmdzKTsKKworICAvKiBQYXJzZSB0aGUgdXNlciBpbnB1dCBpbnRvIHRoZSBT VUJTQ1JJUFRfQVJSQVkgdG8gc3RvcmUgaXQuICBXZSBuZWVkCisgICAgIHRv IGV2YWx1YXRlIGl0IGZpcnN0LCBhcyB0aGUgaW5wdXQgaXMgZnJvbSBsZWZ0 LXRvLXJpZ2h0LiAgVGhlCisgICAgIGFycmF5IGlzIHN0b3JlZCBmcm9tIHJp Z2h0LXRvLWxlZnQuICBTbyB3ZSBoYXZlIHRvIHVzZSB0aGUgdXNlcgorICAg ICBpbnB1dCBpbiByZXZlcnNlIG9yZGVyLiAgTGF0ZXIgb24sIHdlIG5lZWQg dGhlIGlucHV0IGluZm9ybWF0aW9uIHRvCisgICAgIHJlLWNhbGN1bGF0ZSB0 aGUgb3V0cHV0IGFycmF5LiAgRm9yIG11bHRpLWRpbWVuc2lvbmFsIGFycmF5 cywgd2UKKyAgICAgY2FuIGJlIGRlYWxpbmcgd2l0aCBhbnkgcG9zc2libGUg Y29tYmluYXRpb24gb2YgcmFuZ2VzIGFuZCBpbmRpY2VzCisgICAgIGZvciBl dmVyeSBkaW1lbnNpb24uICAqLworICBmb3IgKGkgPSAwOyBpIDwgbmFyZ3M7 IGkrKykKKyAgICB7CisgICAgICBzdHJ1Y3Qgc3Vic2NyaXB0X3N0b3JlICpp bmRleCA9ICZzdWJzY3JpcHRfYXJyYXlbaV07CiAKLSAgaWYgKHJhbmdlX3R5 cGUgPT0gSElHSF9CT1VORF9ERUZBVUxUIHx8IHJhbmdlX3R5cGUgPT0gQk9U SF9CT1VORF9ERUZBVUxUKQotICAgIGhpZ2hfYm91bmQgPSBUWVBFX0hJR0hf Qk9VTkQgKHJhbmdlKTsKLSAgZWxzZQotICAgIGhpZ2hfYm91bmQgPSB2YWx1 ZV9hc19sb25nIChldmFsdWF0ZV9zdWJleHAgKE5VTExfVFlQRSwgZXhwLCBw b3MsIG5vc2lkZSkpOworICAgICAgLyogVGhlIHVzZXIgaW5wdXQgaXMgYSBy YW5nZSwgd2l0aCBvciB3aXRob3V0IGxvd2VyIGFuZCB1cHBlciBib3VuZC4K KwkgRS5nLjogInAgYXJyeSgyOjUpIiwgInAgYXJyeSggOjUpIiwgInAgYXJy eSggOiApIiwgZXRjLiAgKi8KKyAgICAgIGlmIChleHAtPmVsdHNbKnBvc10u b3Bjb2RlID09IE9QX1JBTkdFKQorCXsKKwkgIGludCBwYyA9ICgqcG9zKSAr IDE7CisJICBzdWJzY3JpcHRfcmFuZ2UgKnJhbmdlOworCisJICBpbmRleC0+ a2luZCA9IFNVQlNDUklQVF9SQU5HRTsKKwkgIHJhbmdlID0gJmluZGV4LT5V LnJhbmdlOworCisJICAqcG9zICs9IDM7CisJICByYW5nZS0+ZjkwX3Jhbmdl X3R5cGUgPSAoZW51bSByYW5nZV90eXBlKSBsb25nZXN0X3RvX2ludCAoZXhw LT5lbHRzW3BjXS5sb25nY29uc3QpOworCisJICAvKiBJZiBhIGxvd2VyIGJv dW5kIHdhcyBwcm92aWRlZCBieSB0aGUgdXNlciwgdGhlIGJpdCBoYXMgYmVl bgorCSAgICAgc2V0IGFuZCB3ZSBjYW4gYXNzaWduIHRoZSB2YWx1ZSBmcm9t IHRoZSBlbHQgc3RhY2suICBTYW1lIGZvcgorCSAgICAgdXBwZXIgYm91bmQu ICAqLworCSAgaWYgKChyYW5nZS0+ZjkwX3JhbmdlX3R5cGUgPT0gSElHSF9C T1VORF9ERUZBVUxUKQorCSAgICAgIHx8IHJhbmdlLT5mOTBfcmFuZ2VfdHlw ZSA9PSBOT05FX0JPVU5EX0RFRkFVTFQpCisJICAgIHJhbmdlLT5sb3cgPSB2 YWx1ZV9hc19sb25nIChldmFsdWF0ZV9zdWJleHAgKE5VTExfVFlQRSwgZXhw LAorCQkJCQkJCSBwb3MsIG5vc2lkZSkpOworCSAgaWYgKChyYW5nZS0+Zjkw X3JhbmdlX3R5cGUgPT0gTE9XX0JPVU5EX0RFRkFVTFQpCisJICAgICAgfHwg cmFuZ2UtPmY5MF9yYW5nZV90eXBlID09IE5PTkVfQk9VTkRfREVGQVVMVCkK KwkgICAgcmFuZ2UtPmhpZ2ggPSB2YWx1ZV9hc19sb25nIChldmFsdWF0ZV9z dWJleHAgKE5VTExfVFlQRSwgZXhwLAorCQkJCQkJCSAgcG9zLCBub3NpZGUp KTsKKwl9CisgICAgICAvKiBVc2VyIGlucHV0IGlzIGFuIGluZGV4LiAgRS5n LjogInAgYXJyeSg1KSIuICAqLworICAgICAgZWxzZQorCXsKKwkgIHN0cnVj dCB2YWx1ZSAqdmFsOworCisJICBpbmRleC0+a2luZCA9IFNVQlNDUklQVF9J TkRFWDsKKworCSAgLyogRXZhbHVhdGUgZWFjaCBzdWJzY3JpcHQ7IGl0IG11 c3QgYmUgYSBsZWdhbCBpbnRlZ2VyIGluIEY3Ny4gIFRoaXMKKwkgICAgIGVu c3VyZXMgdGhlIHZhbGlkaXR5IG9mIHRoZSBwcm92aWRlZCBpbmRleC4gICov CisJICB2YWwgPSBldmFsdWF0ZV9zdWJleHBfd2l0aF9jb2VyY2lvbiAoZXhw LCBwb3MsIG5vc2lkZSk7CisJICBpbmRleC0+VS5udW1iZXIgPSB2YWx1ZV9h c19sb25nICh2YWwpOworCX0KKworICAgIH0KKworICAvKiBUcmF2ZXJzZSB0 aGUgYXJyYXkgZnJvbSByaWdodCB0byBsZWZ0IGFuZCBldmFsdWF0ZSBlYWNo IGNvcnJlc3BvbmRpbmcKKyAgICAgdXNlciBpbnB1dC4gIFZBTFVFX1NVQlND UklQVCBpcyBjYWxsZWQgZm9yIGV2ZXJ5IGluZGV4LCB1bnRpbCBhIHJhbmdl CisgICAgIGV4cHJlc3Npb24gaXMgZXZhbHVhdGVkLiAgQWZ0ZXIgYSByYW5n ZSBleHByZXNzaW9uIGhhcyBiZWVuIGV2YWx1YXRlZCwKKyAgICAgZXZlcnkg c3Vic2VxdWVudCBleHByZXNzaW9uIGlzIGFsc28gdHJlYXRlZCBhcyBhIHJh bmdlLiAgKi8KKyAgZm9yIChpID0gbmFyZ3MgLSAxOyBpID49IDA7IGktLSkK KyAgICB7CisgICAgICBzdHJ1Y3Qgc3Vic2NyaXB0X3N0b3JlICppbmRleCA9 ICZzdWJzY3JpcHRfYXJyYXlbaV07CisgICAgICBzdHJ1Y3QgdHlwZSAqaW5k ZXhfdHlwZSA9IFRZUEVfSU5ERVhfVFlQRSAoYXJyYXlfdHlwZSk7CisKKyAg ICAgIHN3aXRjaCAoaW5kZXgtPmtpbmQpCisJeworCWNhc2UgU1VCU0NSSVBU X1JBTkdFOgorCSAgeworCisJICAgIC8qIFdoZW4gd2UgaGl0IHRoZSBmaXJz dCByYW5nZSBzcGVjaWZpZWQgYnkgdGhlIHVzZXIsIHdlIG11c3QKKwkgICAg ICAgdHJlYXQgYW55IHN1YnNlcXVlbnQgdXNlciBlbnRyeSBhcyBhIHJhbmdl LiAgV2Ugc2ltcGx5CisJICAgICAgIGluY3JlbWVudCBESU1fQ09VTlQgd2hp Y2ggdGVsbHMgdXMgaG93IG1hbnkgdGltZXMgd2UgYXJlCisJICAgICAgIGNh bGxpbmcgVkFMVUVfU0xJQ0VfMS4gICovCisJICAgIHN1YnNjcmlwdF9yYW5n ZSAqcmFuZ2UgPSAmaW5kZXgtPlUucmFuZ2U7CisKKwkgICAgLyogSWYgbm8g bG93ZXIgYm91bmQgd2FzIHByb3ZpZGVkIGJ5IHRoZSB1c2VyLCB3ZSB0YWtl IHRoZQorCSAgICAgICBkZWZhdWx0IGJvdW5kYXJ5LiAgU2FtZSBmb3IgdGhl IGhpZ2ggYm91bmQuICAqLworCSAgICBpZiAoKHJhbmdlLT5mOTBfcmFuZ2Vf dHlwZSA9PSBMT1dfQk9VTkRfREVGQVVMVCkKKwkJfHwgKHJhbmdlLT5mOTBf cmFuZ2VfdHlwZSA9PSBCT1RIX0JPVU5EX0RFRkFVTFQpKQorCSAgICAgIHJh bmdlLT5sb3cgPSBUWVBFX0xPV19CT1VORCAoaW5kZXhfdHlwZSk7CisKKwkg ICAgaWYgKChyYW5nZS0+ZjkwX3JhbmdlX3R5cGUgPT0gSElHSF9CT1VORF9E RUZBVUxUKQorCQl8fCAocmFuZ2UtPmY5MF9yYW5nZV90eXBlID09IEJPVEhf Qk9VTkRfREVGQVVMVCkpCisJICAgICAgcmFuZ2UtPmhpZ2ggPSBUWVBFX0hJ R0hfQk9VTkQgKGluZGV4X3R5cGUpOworCisJICAgIC8qIEJvdGggdXNlciBw cm92aWRlZCBsb3cgYW5kIGhpZ2ggYm91bmQgaGF2ZSB0byBiZSBpbnNpZGUg dGhlCisJICAgICAgIGFycmF5IGJvdW5kcy4gIFRocm93IGFuIGVycm9yIGlm IG5vdC4gICovCisJICAgIGlmIChyYW5nZS0+bG93IDwgVFlQRV9MT1dfQk9V TkQgKGluZGV4X3R5cGUpCisJCXx8IHJhbmdlLT5sb3cgPiBUWVBFX0hJR0hf Qk9VTkQgKGluZGV4X3R5cGUpCisJCXx8IHJhbmdlLT5oaWdoIDwgVFlQRV9M T1dfQk9VTkQgKGluZGV4X3R5cGUpCisJCXx8IHJhbmdlLT5oaWdoID4gVFlQ RV9ISUdIX0JPVU5EIChpbmRleF90eXBlKSkKKwkgICAgICBlcnJvciAoXygi cHJvdmlkZWQgYm91bmQocykgb3V0c2lkZSBhcnJheSBib3VuZChzKSIpKTsK KworCSAgICAvKiBESU1fQ09VTlQgY291bnRzIGV2ZXJ5IHVzZXIgYXJndW1l bnQgdGhhdCBpcyB0cmVhdGVkIGFzIGEgcmFuZ2UuCisJICAgICAgIFRoaXMg aXMgbmVjZXNzYXJ5IGZvciBleHByZXNzaW9ucyBsaWtlICdwcmludCBhcnJh eSg3LCA4OjkpLgorCSAgICAgICBIZXJlIHRoZSBmaXJzdCBhcmd1bWVudCBp cyBhIGxpdGVyYWwsIGJ1dCBtdXN0IGJlIHRyZWF0ZWQgYXMgYQorCSAgICAg ICByYW5nZSBhcmd1bWVudCB0byBhbGxvdyB0aGUgY29ycmVjdCBvdXRwdXQg cmVwcmVzZW50YXRpb24uICAqLworCSAgICBkaW1fY291bnQrKzsKKworCSAg ICBuZXdfYXJyYXkKKwkgICAgICA9IHZhbHVlX3NsaWNlXzEgKG5ld19hcnJh eSwKKwkJCSAgICAgICBsb25nZXN0X3RvX2ludCAocmFuZ2UtPmxvdyksCisJ CQkgICAgICAgbG9uZ2VzdF90b19pbnQgKHJhbmdlLT5oaWdoIC0gcmFuZ2Ut PmxvdyArIDEpLAorCQkJICAgICAgIGRpbV9jb3VudCk7CisJICB9CisJICBi cmVhazsKKworCWNhc2UgU1VCU0NSSVBUX0lOREVYOgorCSAgeworCSAgICAv KiBESU1fQ09VTlQgb25seSBzdGF5cyAnMCcgd2hlbiBubyByYW5nZSBhcmd1 bWVudCB3YXMgcHJvY2Vzc2VkCisJICAgICAgIGJlZm9yZSwgc3RhcnRpbmcg ZnJvbSB0aGUgbGFzdCBkaW1lbnNpb24uICBUaGlzIHdheSB3ZSBjYW4KKwkg ICAgICAgcmVkdWNlIHRoZSBudW1iZXIgb2YgZGltZW5zaW9ucyBmcm9tIHRo ZSByZXN1bHQgYXJyYXkuCisJICAgICAgIEhvd2V2ZXIsIGlmIGEgcmFuZ2Ug aGFzIGJlZW4gcHJvY2Vzc2VkIGJlZm9yZSBhbiBpbmRleCwgd2UKKwkgICAg ICAgdHJlYXQgdGhlIGluZGV4IGxpa2UgYSByYW5nZSB3aXRoIGVxdWFsIGxv dy0gYW5kIGhpZ2ggYm91bmRzCisJICAgICAgIHRvIGdldCB0aGUgdmFsdWUg b2Zmc2V0IHJpZ2h0LiAgKi8KKwkgICAgaWYgKGRpbV9jb3VudCA9PSAwKQor CSAgICAgIG5ld19hcnJheQorCSAgICAgICAgPSB2YWx1ZV9zdWJzY3JpcHRl ZF9ydmFsdWUgKG5ld19hcnJheSwgaW5kZXgtPlUubnVtYmVyLAorCQkJCQkg ICAgZjc3X2dldF9sb3dlcmJvdW5kICh2YWx1ZV90eXBlCisJCQkJCQkJCSAg KG5ld19hcnJheSkpKTsKKwkgICAgZWxzZQorCSAgICAgIHsKKwkJLyogQ2hl Y2sgZm9yIHZhbGlkIGluZGV4IGlucHV0LiAgKi8KKwkJaWYgKGluZGV4LT5V Lm51bWJlciA8IFRZUEVfTE9XX0JPVU5EIChpbmRleF90eXBlKQorCQkgICAg fHwgaW5kZXgtPlUubnVtYmVyID4gVFlQRV9ISUdIX0JPVU5EIChpbmRleF90 eXBlKSkKKwkJICBlcnJvciAoXygiZXJyb3Igbm8gc3VjaCB2ZWN0b3IgZWxl bWVudCIpKTsKKworCQlkaW1fY291bnQrKzsKKwkJbmV3X2FycmF5ID0gdmFs dWVfc2xpY2VfMSAobmV3X2FycmF5LAorCQkJCQkgICBsb25nZXN0X3RvX2lu dCAoaW5kZXgtPlUubnVtYmVyKSwKKwkJCQkJICAgMSwgLyogbGVuZ3RoIGlz ICcxJyBlbGVtZW50ICAqLworCQkJCQkgICBkaW1fY291bnQpOworCSAgICAg IH0KKworCSAgfQorCSAgYnJlYWs7CisJfQorICAgIH0KKworICAvKiBXaXRo IERJTV9DT1VOVCA+IDEgd2UgY3VycmVudGx5IGhhdmUgYSBvbmUgZGltZW5z aW9uYWwgYXJyYXksIGJ1dCBleHBlY3QKKyAgICAgYW4gYXJyYXkgb2YgYXJy YXlzLCBkZXBlbmRpbmcgb24gaG93IG1hbnkgcmFuZ2VzIGhhdmUgYmVlbiBw cm92aWRlZCBieQorICAgICB0aGUgdXNlci4gIFNvIHdlIG5lZWQgdG8gcmVi dWlsZCB0aGUgYXJyYXkgZGltZW5zaW9ucyBmb3IgcHJpbnRpbmcgaXQKKyAg ICAgY29ycmVjdGx5LgorICAgICBTdGFydGluZyBmcm9tIHJpZ2h0IHRvIGxl ZnQgaW4gdGhlIHVzZXIgaW5wdXQsIGFmdGVyIHdlIGhpdCB0aGUgZmlyc3QK KyAgICAgcmFuZ2UgYXJndW1lbnQgZXZlcnkgc3Vic2VxdWVudCBhcmd1bWVu dCBpcyBhbHNvIHRyZWF0ZWQgYXMgYSByYW5nZS4KKyAgICAgRS5nLjoKKyAg ICAgInAgYXJ5KDMsIDcsIDI6MTUpIiBpbiBGb3J0cmFuIGhhcyBvbmx5IDEg ZGltZW5zaW9uLCBidXQgd2UgY2FsY3VsYXRlZCAzCisgICAgIHJhbmdlcy4K KyAgICAgInAgYXJ5KDMsIDc6MTIsIDQpIiBpbiBGb3J0cmFuIGhhcyBvbmx5 IDEgZGltZW5zaW9uLCBidXQgd2UgY2FsY3VsYXRlZCAyCisgICAgIHJhbmdl cy4KKyAgICAgInAgYXJ5KDI6NCwgNSwgNykiIGluIEZvcnRyYW4gaGFzIG9u bHkgMSBkaW1lbnNpb24sIGFuZCB3ZSBjYWxjdWxhdGVkIDEKKyAgICAgcmFu Z2UuICAqLworICBpZiAoZGltX2NvdW50ID4gMSkKKyAgICB7CisgICAgICBz dHJ1Y3QgdmFsdWUgKnYgPSBOVUxMOworCisgICAgICBlbHRfdHlwZSA9IFRZ UEVfVEFSR0VUX1RZUEUgKHZhbHVlX3R5cGUgKG5ld19hcnJheSkpOwogCi0g IHJldHVybiB2YWx1ZV9zbGljZSAoYXJyYXksIGxvd19ib3VuZCwgaGlnaF9i b3VuZCAtIGxvd19ib3VuZCArIDEpOworICAgICAgLyogRXZlcnkgU1VCU0NS SVBUX1JBTkdFIGluIHRoZSB1c2VyIGlucHV0IHNpZ25pZmllcyBhbiBhY3R1 YWwgcmFuZ2UgaW4KKwkgdGhlIG91dHB1dCBhcnJheS4gIFNvIHdlIHRyYXZl cnNlIHRoZSBTVUJTQ1JJUFRfQVJSQVkgYWdhaW4sIGxvb2tpbmcKKwkgZm9y IGEgcmFuZ2UgZW50cnkuICBXaGVuIHdlIGZpbmQgb25lLCB3ZSB1c2UgdGhl IHJhbmdlIGluZm8gdG8gY3JlYXRlCisJIGFuIGFkZGl0aW9uYWwgcmFuZ2Vf dHlwZSB0byBzZXQgdGhlIGNvcnJlY3QgYm91bmRzIGFuZCBkaW1lbnNpb25z IGZvcgorCSB0aGUgb3V0cHV0IGFycmF5LiAgKi8KKyAgICAgIGZvciAoaSA9 IDA7IGkgPCBuYXJnczsgaSsrKQorCXsKKwkgIHN0cnVjdCBzdWJzY3JpcHRf c3RvcmUgKmluZGV4ID0gJnN1YnNjcmlwdF9hcnJheVtpXTsKKworCSAgaWYg KGluZGV4LT5raW5kID09IFNVQlNDUklQVF9SQU5HRSkKKwkgICAgeworCSAg ICAgIHN0cnVjdCB0eXBlICpyYW5nZV90eXBlLCAqaW50ZXJpbV9hcnJheV90 eXBlOworCisJICAgICAgcmFuZ2VfdHlwZQorCQk9IGNyZWF0ZV9zdGF0aWNf cmFuZ2VfdHlwZSAoTlVMTCwKKwkJCQkJICAgIGVsdF90eXBlLAorCQkJCQkg ICAgMSwKKwkJCQkJICAgIGluZGV4LT5VLnJhbmdlLmhpZ2gKKwkJCQkJICAg ICAgLSBpbmRleC0+VS5yYW5nZS5sb3cgKyAxKTsKKworCSAgICAgIGludGVy aW1fYXJyYXlfdHlwZSA9IGNyZWF0ZV9hcnJheV90eXBlIChOVUxMLAorCQkJ CQkJICAgICAgZWx0X3R5cGUsCisJCQkJCQkgICAgICByYW5nZV90eXBlKTsK KworCSAgICAgIFRZUEVfQ09ERSAoaW50ZXJpbV9hcnJheV90eXBlKQorCQk9 IFRZUEVfQ09ERSAodmFsdWVfdHlwZSAobmV3X2FycmF5KSk7CisKKwkgICAg ICB2ID0gYWxsb2NhdGVfdmFsdWUgKGludGVyaW1fYXJyYXlfdHlwZSk7CisK KwkgICAgICBlbHRfdHlwZSA9IHZhbHVlX3R5cGUgKHYpOworCSAgICB9CisK Kwl9CisgICAgICB2YWx1ZV9jb250ZW50c19jb3B5ICh2LCAwLCBuZXdfYXJy YXksIDAsIFRZUEVfTEVOR1RIIChlbHRfdHlwZSkpOworICAgICAgcmV0dXJu IHY7CisgICAgfQorCisgIHJldHVybiBuZXdfYXJyYXk7CiB9CiAKIApAQCAt MTgxMCwxNCArMjAzNSwxMSBAQCBldmFsdWF0ZV9zdWJleHBfc3RhbmRhcmQg KHN0cnVjdCB0eXBlICpleHBlY3RfdHlwZSwKICAgICAgIHN3aXRjaCAoY29k ZSkKIAl7CiAJY2FzZSBUWVBFX0NPREVfQVJSQVk6Ci0JICBpZiAoZXhwLT5l bHRzWypwb3NdLm9wY29kZSA9PSBPUF9SQU5HRSkKLQkgICAgcmV0dXJuIHZh bHVlX2Y5MF9zdWJhcnJheSAoYXJnMSwgZXhwLCBwb3MsIG5vc2lkZSk7Ci0J ICBlbHNlCi0JICAgIGdvdG8gbXVsdGlfZjc3X3N1YnNjcmlwdDsKKwkgIHJl dHVybiB2YWx1ZV9mOTBfc3ViYXJyYXkgKGFyZzEsIGV4cCwgcG9zLCBuYXJn cywgbm9zaWRlKTsKIAogCWNhc2UgVFlQRV9DT0RFX1NUUklORzoKIAkgIGlm IChleHAtPmVsdHNbKnBvc10ub3Bjb2RlID09IE9QX1JBTkdFKQotCSAgICBy ZXR1cm4gdmFsdWVfZjkwX3N1YmFycmF5IChhcmcxLCBleHAsIHBvcywgbm9z aWRlKTsKKwkgICAgcmV0dXJuIHZhbHVlX2Y5MF9zdWJhcnJheSAoYXJnMSwg ZXhwLCBwb3MsIDEsIG5vc2lkZSk7CiAJICBlbHNlCiAJICAgIHsKIAkgICAg ICBhcmcyID0gZXZhbHVhdGVfc3ViZXhwX3dpdGhfY29lcmNpb24gKGV4cCwg cG9zLCBub3NpZGUpOwpAQCAtMjIyMiw0OSArMjQ0NCw2IEBAIGV2YWx1YXRl X3N1YmV4cF9zdGFuZGFyZCAoc3RydWN0IHR5cGUgKmV4cGVjdF90eXBlLAog CX0KICAgICAgIHJldHVybiAoYXJnMSk7CiAKLSAgICBtdWx0aV9mNzdfc3Vi c2NyaXB0OgotICAgICAgewotCUxPTkdFU1Qgc3Vic2NyaXB0X2FycmF5W01B WF9GT1JUUkFOX0RJTVNdOwotCWludCBuZGltZW5zaW9ucyA9IDEsIGk7Ci0J c3RydWN0IHZhbHVlICphcnJheSA9IGFyZzE7Ci0KLQlpZiAobmFyZ3MgPiBN QVhfRk9SVFJBTl9ESU1TKQotCSAgZXJyb3IgKF8oIlRvbyBtYW55IHN1YnNj cmlwdHMgZm9yIEY3NyAoJWQgTWF4KSIpLCBNQVhfRk9SVFJBTl9ESU1TKTsK LQotCW5kaW1lbnNpb25zID0gY2FsY19mNzdfYXJyYXlfZGltcyAodHlwZSk7 Ci0KLQlpZiAobmFyZ3MgIT0gbmRpbWVuc2lvbnMpCi0JICBlcnJvciAoXygi V3JvbmcgbnVtYmVyIG9mIHN1YnNjcmlwdHMiKSk7Ci0KLQlnZGJfYXNzZXJ0 IChuYXJncyA+IDApOwotCi0JLyogTm93IHRoYXQgd2Uga25vdyB3ZSBoYXZl IGEgbGVnYWwgYXJyYXkgc3Vic2NyaXB0IGV4cHJlc3Npb24gCi0JICAgbGV0 IHVzIGFjdHVhbGx5IGZpbmQgb3V0IHdoZXJlIHRoaXMgZWxlbWVudCBleGlz dHMgaW4gdGhlIGFycmF5LiAgKi8KLQotCS8qIFRha2UgYXJyYXkgaW5kaWNl cyBsZWZ0IHRvIHJpZ2h0LiAgKi8KLQlmb3IgKGkgPSAwOyBpIDwgbmFyZ3M7 IGkrKykKLQkgIHsKLQkgICAgLyogRXZhbHVhdGUgZWFjaCBzdWJzY3JpcHQ7 IGl0IG11c3QgYmUgYSBsZWdhbCBpbnRlZ2VyIGluIEY3Ny4gICovCi0JICAg IGFyZzIgPSBldmFsdWF0ZV9zdWJleHBfd2l0aF9jb2VyY2lvbiAoZXhwLCBw b3MsIG5vc2lkZSk7Ci0KLQkgICAgLyogRmlsbCBpbiB0aGUgc3Vic2NyaXB0 IGFycmF5LiAgKi8KLQotCSAgICBzdWJzY3JpcHRfYXJyYXlbaV0gPSB2YWx1 ZV9hc19sb25nIChhcmcyKTsKLQkgIH0KLQotCS8qIEludGVybmFsIHR5cGUg b2YgYXJyYXkgaXMgYXJyYW5nZWQgcmlnaHQgdG8gbGVmdC4gICovCi0JZm9y IChpID0gbmFyZ3M7IGkgPiAwOyBpLS0pCi0JICB7Ci0JICAgIHN0cnVjdCB0 eXBlICphcnJheV90eXBlID0gY2hlY2tfdHlwZWRlZiAodmFsdWVfdHlwZSAo YXJyYXkpKTsKLQkgICAgTE9OR0VTVCBpbmRleCA9IHN1YnNjcmlwdF9hcnJh eVtpIC0gMV07Ci0KLQkgICAgYXJyYXkgPSB2YWx1ZV9zdWJzY3JpcHRlZF9y dmFsdWUgKGFycmF5LCBpbmRleCwKLQkJCQkJICAgICAgZjc3X2dldF9sb3dl cmJvdW5kIChhcnJheV90eXBlKSk7Ci0JICB9Ci0KLQlyZXR1cm4gYXJyYXk7 Ci0gICAgICB9Ci0KICAgICBjYXNlIEJJTk9QX0xPR0lDQUxfQU5EOgogICAg ICAgYXJnMSA9IGV2YWx1YXRlX3N1YmV4cCAoTlVMTF9UWVBFLCBleHAsIHBv cywgbm9zaWRlKTsKICAgICAgIGlmIChub3NpZGUgPT0gRVZBTF9TS0lQKQpA QCAtMzEyMiw2ICszMzAxLDkgQEAgY2FsY19mNzdfYXJyYXlfZGltcyAoc3Ry dWN0IHR5cGUgKmFycmF5X3R5cGUpCiAgIGludCBuZGltZW4gPSAxOwogICBz dHJ1Y3QgdHlwZSAqdG1wX3R5cGU7CiAKKyAgaWYgKFRZUEVfQ09ERSAoYXJy YXlfdHlwZSkgPT0gVFlQRV9DT0RFX1NUUklORykKKyAgICByZXR1cm4gMTsK KwogICBpZiAoKFRZUEVfQ09ERSAoYXJyYXlfdHlwZSkgIT0gVFlQRV9DT0RF X0FSUkFZKSkKICAgICBlcnJvciAoXygiQ2FuJ3QgZ2V0IGRpbWVuc2lvbnMg Zm9yIGEgbm9uLWFycmF5IHR5cGUiKSk7CiAKZGlmZiAtLWdpdCBhL2dkYi9m LWV4cC55IGIvZ2RiL2YtZXhwLnkKaW5kZXggZTMxNDhhMy4uZGMxMzFjMSAx MDA2NDQKLS0tIGEvZ2RiL2YtZXhwLnkKKysrIGIvZ2RiL2YtZXhwLnkKQEAg LTI1Myw2ICsyNTMsOCBAQCBhcmdsaXN0IDoJc3VicmFuZ2UKICAgIAogYXJn bGlzdAk6CWFyZ2xpc3QgJywnIGV4cCAgICVwcmVjIEFCT1ZFX0NPTU1BCiAJ CQl7IGFyZ2xpc3RfbGVuKys7IH0KKwl8CWFyZ2xpc3QgJywnIHN1YnJhbmdl CSVwcmVjIEFCT1ZFX0NPTU1BCisJCQl7IGFyZ2xpc3RfbGVuKys7IH0KIAk7 CiAKIC8qIFRoZXJlIGFyZSBmb3VyIHNvcnRzIG9mIHN1YnJhbmdlIHR5cGVz IGluIEY5MC4gICovCmRpZmYgLS1naXQgYS9nZGIvdmFsb3BzLmMgYi9nZGIv dmFsb3BzLmMKaW5kZXggNzFmYjFiMy4uODE3YTRjZiAxMDA2NDQKLS0tIGEv Z2RiL3ZhbG9wcy5jCisrKyBiL2dkYi92YWxvcHMuYwpAQCAtMzc2Niw1NiAr Mzc2NiwxNTMgQEAgdmFsdWVfb2ZfdGhpc19zaWxlbnQgKGNvbnN0IHN0cnVj dCBsYW5ndWFnZV9kZWZuICpsYW5nKQogc3RydWN0IHZhbHVlICoKIHZhbHVl X3NsaWNlIChzdHJ1Y3QgdmFsdWUgKmFycmF5LCBpbnQgbG93Ym91bmQsIGlu dCBsZW5ndGgpCiB7CisgIC8qIFBhc3MgdW5hbHRlcmVkIGFyZ3VtZW50cyB0 byBWQUxVRV9TTElDRV8xLCBwbHVzIGEgQ0FMTF9DT1VOVCBvZiAnMScgYXMg d2UKKyAgICAgYXJlIG9ubHkgY29uc2lkZXJpbmcgdGhlIGhpZ2hlc3QgZGlt ZW5zaW9uLCBvciB3ZSBhcmUgd29ya2luZyBvbiBhIG9uZQorICAgICBkaW1l bnNpb25hbCBhcnJheS4gIFNvIHdlIGNhbGwgVkFMVUVfU0xJQ0VfMSBleGFj dGx5IG9uY2UuICAqLworICByZXR1cm4gdmFsdWVfc2xpY2VfMSAoYXJyYXks IGxvd2JvdW5kLCBsZW5ndGgsIDEpOworfQorCisvKiBWQUxVRV9TTElDRV8x IGlzIGNhbGxlZCBmb3IgZWFjaCBhcnJheSBkaW1lbnNpb24gdG8gY2FsY3Vs YXRlIHRoZSBudW1iZXIKKyAgIG9mIGVsZW1lbnRzIGFzIGRlZmluZWQgYnkg dGhlIHN1YnNjcmlwdCBleHByZXNzaW9uLgorICAgQ0FMTF9DT1VOVCBpcyB1 c2VkIHRvIGRldGVybWluZSBpZiB3ZSBhcmUgY2FsbGluZyB0aGUgZnVuY3Rp b24gb25jZSwgZS5nLgorICAgd2UgYXJlIHdvcmtpbmcgb24gdGhlIGN1cnJl bnQgZGltZW5zaW9uIG9mIEFSUkFZLCBvciBpZiB3ZSBhcmUgY2FsbGluZwor ICAgdGhlIGZ1bmN0aW9uIHJlcGVhdGVkbHkuICBJbiB0aGUgbGF0ZXIgY2Fz ZSB3ZSBuZWVkIHRvIHRha2UgZWxlbWVudHMKKyAgIGZyb20gdGhlIFRBUkdF VF9UWVBFIG9mIEFSUkFZLgorICAgV2l0aCBhIENBTExfQ09VTlQgZ3JlYXRl ciB0aGFuIDEgd2UgY2FsY3VsYXRlIHRoZSBvZmZzZXRzIGZvciBldmVyeSBl bGVtZW50CisgICB0aGF0IHNob3VsZCBiZSBpbiB0aGUgcmVzdWx0IGFycmF5 LiAgVGhlbiB3ZSBmZXRjaCB0aGUgY29udGVudHMgYW5kIHRoZW4KKyAgIGNv cHkgdGhlbSBpbnRvIHRoZSByZXN1bHQgYXJyYXkuICBUaGUgcmVzdWx0IGFy cmF5IHdpbGwgaGF2ZSBvbmUgZGltZW5zaW9uCisgICBsZXNzIHRoYW4gdGhl IGlucHV0IGFycmF5LCBzbyBsYXRlciBvbiB3ZSBuZWVkIHRvIHJlY3JlYXRl IHRoZSBpbmRpY2VzIGFuZAorICAgcmFuZ2VzIGluIHRoZSBjYWxsaW5nIGZ1 bmN0aW9uLiAgKi8KKworc3RydWN0IHZhbHVlICoKK3ZhbHVlX3NsaWNlXzEg KHN0cnVjdCB2YWx1ZSAqYXJyYXksIGludCBsb3dib3VuZCwgaW50IGxlbmd0 aCwgaW50IGNhbGxfY291bnQpCit7CiAgIHN0cnVjdCB0eXBlICpzbGljZV9y YW5nZV90eXBlLCAqc2xpY2VfdHlwZSwgKnJhbmdlX3R5cGU7Ci0gIExPTkdF U1QgbG93ZXJib3VuZCwgdXBwZXJib3VuZDsKLSAgc3RydWN0IHZhbHVlICpz bGljZTsKLSAgc3RydWN0IHR5cGUgKmFycmF5X3R5cGU7CisgIHN0cnVjdCB0 eXBlICphcnJheV90eXBlID0gY2hlY2tfdHlwZWRlZiAodmFsdWVfdHlwZSAo YXJyYXkpKTsKKyAgc3RydWN0IHR5cGUgKmVsdF90eXBlID0gY2hlY2tfdHlw ZWRlZiAoVFlQRV9UQVJHRVRfVFlQRSAoYXJyYXlfdHlwZSkpOworICB1bnNp Z25lZCBpbnQgZWx0X3NpemUsIGVsdF9vZmZzOworICBMT05HRVNUIGVsdF9z dHJpZGUsIGFyeV9oaWdoX2JvdW5kLCBhcnlfbG93X2JvdW5kOworICBzdHJ1 Y3QgdmFsdWUgKnY7CisgIGludCBzbGljZV9yYW5nZV9zaXplLCBpID0gMCwg cm93X2NvdW50ID0gMSwgZWxlbV9jb3VudCA9IDE7CiAKLSAgYXJyYXlfdHlw ZSA9IGNoZWNrX3R5cGVkZWYgKHZhbHVlX3R5cGUgKGFycmF5KSk7CisgIC8q IENoZWNrIGZvciBsZWdhY3kgY29kZSBpZiB3ZSBhcmUgYWN0dWFsbHkgZGVh bGluZyB3aXRoIGFuIGFycmF5IG9yCisgICAgIHN0cmluZy4gICovCiAgIGlm IChUWVBFX0NPREUgKGFycmF5X3R5cGUpICE9IFRZUEVfQ09ERV9BUlJBWQog ICAgICAgJiYgVFlQRV9DT0RFIChhcnJheV90eXBlKSAhPSBUWVBFX0NPREVf U1RSSU5HKQogICAgIGVycm9yIChfKCJjYW5ub3QgdGFrZSBzbGljZSBvZiBu b24tYXJyYXkiKSk7CiAKLSAgcmFuZ2VfdHlwZSA9IFRZUEVfSU5ERVhfVFlQ RSAoYXJyYXlfdHlwZSk7Ci0gIGlmIChnZXRfZGlzY3JldGVfYm91bmRzIChy YW5nZV90eXBlLCAmbG93ZXJib3VuZCwgJnVwcGVyYm91bmQpIDwgMCkKLSAg ICBlcnJvciAoXygic2xpY2UgZnJvbSBiYWQgYXJyYXkgb3IgYml0c3RyaW5n IikpOworICBhcnlfbG93X2JvdW5kID0gVFlQRV9MT1dfQk9VTkQgKFRZUEVf SU5ERVhfVFlQRSAoYXJyYXlfdHlwZSkpOworICBhcnlfaGlnaF9ib3VuZCA9 IFRZUEVfSElHSF9CT1VORCAoVFlQRV9JTkRFWF9UWVBFIChhcnJheV90eXBl KSk7CisKKyAgLyogV2hlbiB3ZSBhcmUgd29ya2luZyBvbiBhIG11bHRpLWRp bWVuc2lvbmFsIGFycmF5LCB3ZSBuZWVkIHRvIGdldCB0aGUKKyAgICAgYXR0 cmlidXRlcyBvZiB0aGUgdW5kZXJseWluZyB0eXBlLiAgKi8KKyAgaWYgKGNh bGxfY291bnQgPiAxKQorICAgIHsKKyAgICAgIGVsdF90eXBlID0gY2hlY2tf dHlwZWRlZiAoVFlQRV9UQVJHRVRfVFlQRSAoZWx0X3R5cGUpKTsKKyAgICAg IHJvd19jb3VudCA9IFRZUEVfTEVOR1RIIChhcnJheV90eXBlKQorCQkgICAg LyBUWVBFX0xFTkdUSCAoVFlQRV9UQVJHRVRfVFlQRSAoYXJyYXlfdHlwZSkp OworICAgIH0KKworICBlbGVtX2NvdW50ID0gbGVuZ3RoOworICBlbHRfc2l6 ZSA9IFRZUEVfTEVOR1RIIChlbHRfdHlwZSk7CisgIGVsdF9vZmZzID0gbG9u Z2VzdF90b19pbnQgKGxvd2JvdW5kIC0gYXJ5X2xvd19ib3VuZCk7CisgIGVs dF9zdHJpZGUgPSBUWVBFX0xFTkdUSCAoVFlQRV9JTkRFWF9UWVBFIChhcnJh eV90eXBlKSk7CisKKyAgZWx0X29mZnMgKj0gZWx0X3NpemU7CisKKyAgLyog Q2hlY2sgZm9yIHZhbGlkIHVzZXIgaW5wdXQuICBJbiBjYXNlIG9mIEZvcnRy YW4gdGhpcyB3YXMgYWxyZWFkeSBkb25lCisgICAgIGluIHRoZSBjYWxsaW5n IGZ1bmN0aW9uLiAgKi8KKyAgaWYgKGNhbGxfY291bnQgPT0gMQorCSYmICgh VFlQRV9BUlJBWV9VUFBFUl9CT1VORF9JU19VTkRFRklORUQgKGFycmF5X3R5 cGUpCisJICAgICAgJiYgZWx0X29mZnMgPj0gVFlQRV9MRU5HVEggKGFycmF5 X3R5cGUpKSkKKyAgICBlcnJvciAoXygibm8gc3VjaCB2ZWN0b3IgZWxlbWVu dCIpKTsKIAotICBpZiAobG93Ym91bmQgPCBsb3dlcmJvdW5kIHx8IGxlbmd0 aCA8IDAKLSAgICAgIHx8IGxvd2JvdW5kICsgbGVuZ3RoIC0gMSA+IHVwcGVy Ym91bmQpCi0gICAgZXJyb3IgKF8oInNsaWNlIG91dCBvZiByYW5nZSIpKTsK KyAgLyogQ0FMTF9DT1VOVCBpcyAxIHdoZW4gd2UgYXJlIGRlYWxpbmcgZWl0 aGVyIHdpdGggdGhlIGhpZ2hlc3QgZGltZW5zaW9uCisgICAgIG9mIHRoZSBh cnJheSwgb3IgYSBvbmUgZGltZW5zaW9uYWwgYXJyYXkuICBTZXQgUkFOR0Vf VFlQRSBhY2NvcmRpbmdseS4KKyAgICAgSW4gYm90aCBjYXNlcyB3ZSBjYWxj dWxhdGUgaG93IG1hbnkgcm93cy9lbGVtZW50cyB3aWxsIGJlIGluIHRoZSBv dXRwdXQKKyAgICAgYXJyYXkgYnkgc2V0dGluZyBzbGljZV9yYW5nZV9zaXpl LiAgKi8KKyAgaWYgKGNhbGxfY291bnQgPT0gMSkKKyAgICB7CisgICAgICBy YW5nZV90eXBlID0gVFlQRV9JTkRFWF9UWVBFIChhcnJheV90eXBlKTsKKyAg ICAgIHNsaWNlX3JhbmdlX3NpemUgPSBlbGVtX2NvdW50OworCisgICAgICAv KiBDaGVjayBpZiB0aGUgYXJyYXkgYm91bmRzIGFyZSB2YWxpZC4gICovCisg ICAgICBpZiAoZ2V0X2Rpc2NyZXRlX2JvdW5kcyAocmFuZ2VfdHlwZSwgJmFy eV9sb3dfYm91bmQsICZhcnlfaGlnaF9ib3VuZCkgPCAwKQorCWVycm9yIChf KCJzbGljZSBmcm9tIGJhZCBhcnJheSBvciBiaXRzdHJpbmciKSk7CisgICAg fQorICAvKiBXaGVuIENBTExfQ09VTlQgaXMgZ3JlYXRlciB0aGFuIDEsIHdl IGFyZSBkZWFsaW5nIHdpdGggYW4gYXJyYXkgb2YgYXJyYXlzLgorICAgICBT byB3ZSBuZWVkIHRvIGdldCB0aGUgdHlwZSBiZWxvdyB0aGUgY3VycmVudCBv bmUgYW5kIHNldCB0aGUgUkFOR0VfVFlQRQorICAgICBhY2NvcmRpbmdseS4g ICovCisgIGVsc2UKKyAgICB7CisgICAgICByYW5nZV90eXBlID0gVFlQRV9J TkRFWF9UWVBFIChUWVBFX1RBUkdFVF9UWVBFIChhcnJheV90eXBlKSk7Cisg ICAgICBzbGljZV9yYW5nZV9zaXplID0gKGFyeV9sb3dfYm91bmQgKyByb3df Y291bnQgLSAxKSAqIChlbGVtX2NvdW50KTsKKyAgICAgIGFyeV9sb3dfYm91 bmQgPSBUWVBFX0xPV19CT1VORCAocmFuZ2VfdHlwZSk7CisgICAgfQogCiAg IC8qIEZJWE1FLXR5cGUtYWxsb2NhdGlvbjogbmVlZCBhIHdheSB0byBmcmVl IHRoaXMgdHlwZSB3aGVuIHdlIGFyZQotICAgICBkb25lIHdpdGggaXQuICAq LwotICBzbGljZV9yYW5nZV90eXBlID0gY3JlYXRlX3N0YXRpY19yYW5nZV90 eXBlICgoc3RydWN0IHR5cGUgKikgTlVMTCwKLQkJCQkJICAgICAgIFRZUEVf VEFSR0VUX1RZUEUgKHJhbmdlX3R5cGUpLAotCQkJCQkgICAgICAgbG93Ym91 bmQsCi0JCQkJCSAgICAgICBsb3dib3VuZCArIGxlbmd0aCAtIDEpOworICAg ICAgZG9uZSB3aXRoIGl0LiAgKi8KIAorICBzbGljZV9yYW5nZV90eXBlID0g Y3JlYXRlX3N0YXRpY19yYW5nZV90eXBlIChOVUxMLCBUWVBFX1RBUkdFVF9U WVBFIChyYW5nZV90eXBlKSwKKwkJCQkJICAgICAgIGFyeV9sb3dfYm91bmQs IHNsaWNlX3JhbmdlX3NpemUpOwogICB7Ci0gICAgc3RydWN0IHR5cGUgKmVs ZW1lbnRfdHlwZSA9IFRZUEVfVEFSR0VUX1RZUEUgKGFycmF5X3R5cGUpOwot ICAgIExPTkdFU1Qgb2Zmc2V0Ci0gICAgICA9IChsb3dib3VuZCAtIGxvd2Vy Ym91bmQpICogVFlQRV9MRU5HVEggKGNoZWNrX3R5cGVkZWYgKGVsZW1lbnRf dHlwZSkpOworICAgIHN0cnVjdCB0eXBlICplbGVtZW50X3R5cGU7CisKKyAg ICAvKiBXaGVuIENBTExfQ09VTlQgZXF1YWxzIDEgd2UgY2FuIHVzZSB0aGUg bGVnYWN5IGNvZGUgZm9yIHN1YmFycmF5cy4gICovCisgICAgaWYgKGNhbGxf Y291bnQgPT0gMSkKKyAgICAgIHsKKwllbGVtZW50X3R5cGUgPSBUWVBFX1RB UkdFVF9UWVBFIChhcnJheV90eXBlKTsKIAotICAgIHNsaWNlX3R5cGUgPSBj cmVhdGVfYXJyYXlfdHlwZSAoKHN0cnVjdCB0eXBlICopIE5VTEwsCi0JCQkJ ICAgIGVsZW1lbnRfdHlwZSwKLQkJCQkgICAgc2xpY2VfcmFuZ2VfdHlwZSk7 Ci0gICAgVFlQRV9DT0RFIChzbGljZV90eXBlKSA9IFRZUEVfQ09ERSAoYXJy YXlfdHlwZSk7CisJc2xpY2VfdHlwZSA9IGNyZWF0ZV9hcnJheV90eXBlIChO VUxMLCBlbGVtZW50X3R5cGUsIHNsaWNlX3JhbmdlX3R5cGUpOworCisJVFlQ RV9DT0RFIChzbGljZV90eXBlKSA9IFRZUEVfQ09ERSAoYXJyYXlfdHlwZSk7 CisKKwlpZiAoVkFMVUVfTFZBTCAoYXJyYXkpID09IGx2YWxfbWVtb3J5ICYm IHZhbHVlX2xhenkgKGFycmF5KSkKKwkgIHYgPSBhbGxvY2F0ZV92YWx1ZV9s YXp5IChzbGljZV90eXBlKTsKKwllbHNlCisJICB7CisJICAgIHYgPSBhbGxv Y2F0ZV92YWx1ZSAoc2xpY2VfdHlwZSk7CisJICAgIHZhbHVlX2NvbnRlbnRz X2NvcHkgKHYsCisJCQkJIHZhbHVlX2VtYmVkZGVkX29mZnNldCAodiksCisJ CQkJIGFycmF5LAorCQkJCSB2YWx1ZV9lbWJlZGRlZF9vZmZzZXQgKGFycmF5 KSArIGVsdF9vZmZzLAorCQkJCSBlbHRfc2l6ZSAqIGxvbmdlc3RfdG9faW50 IChsZW5ndGgpKTsKKwkgIH0KIAotICAgIGlmIChWQUxVRV9MVkFMIChhcnJh eSkgPT0gbHZhbF9tZW1vcnkgJiYgdmFsdWVfbGF6eSAoYXJyYXkpKQotICAg ICAgc2xpY2UgPSBhbGxvY2F0ZV92YWx1ZV9sYXp5IChzbGljZV90eXBlKTsK KyAgICAgIH0KKyAgICAvKiBXaGVuIENBTExfQ09VTlQgaXMgbGFyZ2VyIHRo YW4gMSB3ZSBhcmUgd29ya2luZyBvbiBhIHJhbmdlIG9mIHJhbmdlcy4KKyAg ICAgICBTbyB3ZSBjb3B5IHRoZSByZWxldmFudCBlbGVtZW50cyBpbnRvIHRo ZSBuZXcgYXJyYXkgd2UgcmV0dXJuLiAgKi8KICAgICBlbHNlCiAgICAgICB7 Ci0Jc2xpY2UgPSBhbGxvY2F0ZV92YWx1ZSAoc2xpY2VfdHlwZSk7Ci0JdmFs dWVfY29udGVudHNfY29weSAoc2xpY2UsIDAsIGFycmF5LCBvZmZzZXQsCi0J CQkgICAgIHR5cGVfbGVuZ3RoX3VuaXRzIChzbGljZV90eXBlKSk7CisJTE9O R0VTVCBkc3Rfb2Zmc2V0ID0gMDsKKwlMT05HRVNUIHNyY19yb3dfbGVuZ3Ro ID0gVFlQRV9MRU5HVEggKFRZUEVfVEFSR0VUX1RZUEUgKGFycmF5X3R5cGUp KTsKKworCWVsZW1lbnRfdHlwZSA9IFRZUEVfVEFSR0VUX1RZUEUgKFRZUEVf VEFSR0VUX1RZUEUgKGFycmF5X3R5cGUpKTsKKwlzbGljZV90eXBlID0gY3Jl YXRlX2FycmF5X3R5cGUgKE5VTEwsIGVsZW1lbnRfdHlwZSwgc2xpY2VfcmFu Z2VfdHlwZSk7CisKKwlUWVBFX0NPREUgKHNsaWNlX3R5cGUpID0gVFlQRV9D T0RFIChUWVBFX1RBUkdFVF9UWVBFIChhcnJheV90eXBlKSk7CisKKwl2ID0g YWxsb2NhdGVfdmFsdWUgKHNsaWNlX3R5cGUpOworCWZvciAoaSA9IDA7IGkg PCBsb25nZXN0X3RvX2ludCAocm93X2NvdW50KTsgaSsrKQorCSAgeworCSAg ICAvKiBGZXRjaGVzIHRoZSBjb250ZW50cyBvZiBBUlJBWSBhbmQgY29waWVz IHRoZW0gaW50byBWLiAgKi8KKwkgICAgdmFsdWVfY29udGVudHNfY29weSAo diwKKwkJCQkgZHN0X29mZnNldCwKKwkJCQkgYXJyYXksCisJCQkJIGVsdF9v ZmZzLAorCQkJCSBlbHRfc2l6ZSAqIGVsZW1fY291bnQpOworCSAgICBlbHRf b2ZmcyArPSBzcmNfcm93X2xlbmd0aDsKKwkgICAgZHN0X29mZnNldCArPSBl bHRfc2l6ZSAqIGVsZW1fY291bnQ7CisJICB9CiAgICAgICB9CiAKLSAgICBz ZXRfdmFsdWVfY29tcG9uZW50X2xvY2F0aW9uIChzbGljZSwgYXJyYXkpOwot ICAgIFZBTFVFX0ZSQU1FX0lEIChzbGljZSkgPSBWQUxVRV9GUkFNRV9JRCAo YXJyYXkpOwotICAgIHNldF92YWx1ZV9vZmZzZXQgKHNsaWNlLCB2YWx1ZV9v ZmZzZXQgKGFycmF5KSArIG9mZnNldCk7CisgICAgc2V0X3ZhbHVlX2NvbXBv bmVudF9sb2NhdGlvbiAodiwgYXJyYXkpOworICAgIFZBTFVFX1JFR05VTSAo dikgPSBWQUxVRV9SRUdOVU0gKGFycmF5KTsKKyAgICBWQUxVRV9GUkFNRV9J RCAodikgPSBWQUxVRV9GUkFNRV9JRCAoYXJyYXkpOworICAgIHNldF92YWx1 ZV9vZmZzZXQgKHYsIHZhbHVlX29mZnNldCAoYXJyYXkpICsgZWx0X29mZnMp OwogICB9CiAKLSAgcmV0dXJuIHNsaWNlOworICByZXR1cm4gdjsKIH0KIAog LyogQ3JlYXRlIGEgdmFsdWUgZm9yIGEgRk9SVFJBTiBjb21wbGV4IG51bWJl ci4gIEN1cnJlbnRseSBtb3N0IG9mIHRoZQpkaWZmIC0tZ2l0IGEvZ2RiL3Zh bHVlLmggYi9nZGIvdmFsdWUuaAppbmRleCBmOGVjODU0Li45NTU4OGFmIDEw MDY0NAotLS0gYS9nZGIvdmFsdWUuaAorKysgYi9nZGIvdmFsdWUuaApAQCAt MTA1Niw2ICsxMDU2LDggQEAgZXh0ZXJuIHN0cnVjdCB2YWx1ZSAqdmFyeWlu Z190b19zbGljZSAoc3RydWN0IHZhbHVlICopOwogCiBleHRlcm4gc3RydWN0 IHZhbHVlICp2YWx1ZV9zbGljZSAoc3RydWN0IHZhbHVlICosIGludCwgaW50 KTsKIAorZXh0ZXJuIHN0cnVjdCB2YWx1ZSAqdmFsdWVfc2xpY2VfMSAoc3Ry dWN0IHZhbHVlICosIGludCwgaW50LCBpbnQpOworCiBleHRlcm4gc3RydWN0 IHZhbHVlICp2YWx1ZV9saXRlcmFsX2NvbXBsZXggKHN0cnVjdCB2YWx1ZSAq LCBzdHJ1Y3QgdmFsdWUgKiwKIAkJCQkJICAgIHN0cnVjdCB0eXBlICopOwog Ci0tIAoyLjUuNQoK --_007_1E04C56C2A492B449743D653DD4A15BC3BC4C94CIRSMSX102gercor_ Content-Type: application/octet-stream; name="0002-fortran-combine-subarray-and-string-computation.patch" Content-Description: 0002-fortran-combine-subarray-and-string-computation.patch Content-Disposition: attachment; filename="0002-fortran-combine-subarray-and-string-computation.patch"; size=1387; creation-date="Fri, 01 Jul 2016 12:59:57 GMT"; modification-date="Fri, 01 Jul 2016 12:55:48 GMT" Content-Transfer-Encoding: base64 Content-length: 1883 RnJvbSA3MzNiM2I2MGJlNWM4ZDIzZmE3ZTQ3NDk4ZDM1ZTQ3MDE1MjhmM2Fl IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBDaHJpc3RvcGggV2Vp bm1hbm4gPGNocmlzdG9waC50LndlaW5tYW5uQGludGVsLmNvbT4KRGF0ZTog RnJpLCAxMyBOb3YgMjAxNSAwOTowMDozMyArMDEwMApTdWJqZWN0OiBbUEFU Q0ggMi82XSBmb3J0cmFuOiBjb21iaW5lIHN1YmFycmF5IGFuZCBzdHJpbmcg Y29tcHV0YXRpb24KClN0cmluZ3MgdHlwZXMgYXJlIGhhbmRsZWQgbGlrZSBh cnJheSB0eXBlcyB3aXRoIG9ubHkgb25lIGRpbWVuc2lvbi4KVGhlcmVmb3Jl IHRoZSBzYW1lIGFsZ29yaXRobSB0byBjYWxjdWxhdGUgc3Vic2V0cyBpcyB1 c2VkLgoKMjAxMy0xMS0yNiAgQ2hyaXN0b3BoIFdlaW5tYW5uICA8Y2hyaXN0 b3BoLnQud2Vpbm1hbm5AaW50ZWwuY29tPgoKCSogZXZhbC5jIChldmFsdWF0 ZV9zdWJleHBfc3RhbmRhcmQpOiBDYWxsCgl2YWx1ZV9mOTBfc3ViYXJyYXkg Zm9yIHByaW50IGV4cHJlc3Npb25zIG9uIGFycmF5IGFuZAoJc3RyaW5nIHR5 cGVzLgoKClNpZ25lZC1vZmYtYnk6IENocmlzdG9waCBXZWlubWFubiA8Y2hy aXN0b3BoLnQud2Vpbm1hbm5AaW50ZWwuY29tPgotLS0KIGdkYi9ldmFsLmMg fCAxMCArLS0tLS0tLS0tCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24o KyksIDkgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZ2RiL2V2YWwuYyBi L2dkYi9ldmFsLmMKaW5kZXggMzU4MTVhNC4uNWMyMGZlZSAxMDA2NDQKLS0t IGEvZ2RiL2V2YWwuYworKysgYi9nZGIvZXZhbC5jCkBAIC0yMDM1LDE2ICsy MDM1LDggQEAgZXZhbHVhdGVfc3ViZXhwX3N0YW5kYXJkIChzdHJ1Y3QgdHlw ZSAqZXhwZWN0X3R5cGUsCiAgICAgICBzd2l0Y2ggKGNvZGUpCiAJewogCWNh c2UgVFlQRV9DT0RFX0FSUkFZOgotCSAgcmV0dXJuIHZhbHVlX2Y5MF9zdWJh cnJheSAoYXJnMSwgZXhwLCBwb3MsIG5hcmdzLCBub3NpZGUpOwotCiAJY2Fz ZSBUWVBFX0NPREVfU1RSSU5HOgotCSAgaWYgKGV4cC0+ZWx0c1sqcG9zXS5v cGNvZGUgPT0gT1BfUkFOR0UpCi0JICAgIHJldHVybiB2YWx1ZV9mOTBfc3Vi YXJyYXkgKGFyZzEsIGV4cCwgcG9zLCAxLCBub3NpZGUpOwotCSAgZWxzZQot CSAgICB7Ci0JICAgICAgYXJnMiA9IGV2YWx1YXRlX3N1YmV4cF93aXRoX2Nv ZXJjaW9uIChleHAsIHBvcywgbm9zaWRlKTsKLQkgICAgICByZXR1cm4gdmFs dWVfc3Vic2NyaXB0IChhcmcxLCB2YWx1ZV9hc19sb25nIChhcmcyKSk7Ci0J ICAgIH0KKwkgIHJldHVybiB2YWx1ZV9mOTBfc3ViYXJyYXkgKGFyZzEsIGV4 cCwgcG9zLCBuYXJncywgbm9zaWRlKTsKIAogCWNhc2UgVFlQRV9DT0RFX1BU UjoKIAljYXNlIFRZUEVfQ09ERV9GVU5DOgotLSAKMi41LjUKCg== --_007_1E04C56C2A492B449743D653DD4A15BC3BC4C94CIRSMSX102gercor_ Content-Type: application/octet-stream; name="0003-fortran-change-subrange-enum-to-bit-field.patch" Content-Description: 0003-fortran-change-subrange-enum-to-bit-field.patch Content-Disposition: attachment; filename="0003-fortran-change-subrange-enum-to-bit-field.patch"; size=12129; creation-date="Fri, 01 Jul 2016 12:59:57 GMT"; modification-date="Fri, 01 Jul 2016 12:55:48 GMT" Content-Transfer-Encoding: base64 Content-length: 16442 RnJvbSAwNThlZDllNTVkYjcyMjQ0ZmUxYzUzNDZhMTFmYTY3ZWZmNjFkMzE4 IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBDaHJpc3RvcGggV2Vp bm1hbm4gPGNocmlzdG9waC50LndlaW5tYW5uQGludGVsLmNvbT4KRGF0ZTog TW9uLCAyMyBOb3YgMjAxNSAxMDozMTo0NCArMDEwMApTdWJqZWN0OiBbUEFU Q0ggMy82XSBmb3J0cmFuOiBjaGFuZ2Ugc3VicmFuZ2UgZW51bSB0byBiaXQg ZmllbGQKCkNoYW5nZSBGb3J0cmFuIHN1YnJhbmdlIGVudW0gZm9yIHN1YnJh bmdlIGV4cHJlc3Npb25zIHRvCnJlcHJlc2VudCBhIGJpdGZpZWxkIGZvciBl YXNpZXIgbWFuaXB1bGF0aW9uLiAgQ29uc2VxdWVudGx5CmFsc28gY2hhbmdl IG9jY3VyZW5jZXMgYW5kIGV2YWx1YXRpb24gb2Ygc2FpZCBlbnVtLiAgVGhl CmJlaGF2aW91ciBvZiBHREIgaXMgdW5jaGFuZ2VkLgoKMjAxMy0xMS0yNyAg Q2hyaXN0b3BoIFdlaW5tYW5uICA8Y2hyaXN0b3BoLnQud2Vpbm1hbm5AaW50 ZWwuY29tPgoKCSogZXZhbC5jICh2YWx1ZV9mOTBfc3ViYXJyYXkpOiBDaGFu Z2UgZXZhbHVhdGlvbiBvZiB0aGUKCXN1YmFycmF5IGJvdW5kYXJpZXMuICBT ZXQgYm91bmRhcmllcyB0byBiZSBlaXRoZXIgdXNlcgoJcHJvdmlkZWQgKGJp dCBpbiByYW5nZV90eXBlIHdhcyBzZXQpLCBvciB0YWtlIHRoZSBkZWZhdWx0 Cgl2YWx1ZSBpZiB0aGUgYm91bmRhcnkgd2FzIG5vdCBwcm92aWRlZCBieSB0 aGUgdXNlci4KCSogZXhwcHJpbnQuYyAocHJpbnRfc3ViZXhwX3N0YW5kYXJk KTogQWx0ZXIgYm91bmRhcnkgY29tLQoJcHV0YXRpb25zIHRvIHVzZSB1cGRh dGVkIHJhbmdlX3R5cGUgZW51bS4KCSogZXhwcHJpbnQuaCAoZHVtcF9zdWJl eHBfYm9keV9zdGFuZGFyZCk6IERpdG8uCgkqIGV4cHJlc3Npb24uaCAocmFu Z2VfdHlwZSk6IENoYW5nZSB0aGUgZW51bSB0byB1c2UgYml0Cgl2YWx1ZXMg Zm9yIGVhY2ggYm91bmRhcnksIGlmIHNldCBieSB0aGUgdXNlci4KCSogZi1l eHAueSAoc3VicmFuZ2UpOiBDaGFuZ2UgcnVsZXMgZm9yIHN1YnJhbmdlIGV4 cHJlc3Npb25zCgl0byB3cml0ZSB0aGUgcmVsZXZhbnQgYml0IHNlcXVlbmNl IG9udG8gdGhlIGVsdCBzdGFjay4KCSogcGFyc2UuYyAob3BlcmF0b3JfbGVu Z3RoX3N0YW5kYXJkKTogSW4gY2FzZSBvZiBPUF9SQU5HRQoJY2hhbmdlIHRo ZSBjYWxjdWxhdGlvbiBvZiB0aGUgbnVtYmVyIG9mCWFyZ3VtZW50cyBvbiB0 aGUKCWVsdCBzdGFjaywgZGVwZW5kaW5nIG9uIHRoZSBudW1iZXIgb2YgYm91 bmRhcmllcyBwcm92aWRlZAoJYnkgdGhlIHVzZXIuCgkqIHJ1c3QtZXhwLnkg KGNvbnZlcnRfYXN0X3RvX2V4cHJlc3Npb24pOiBNb2RpZnkgY2FsY3VsYS0K CXRpb24gb2Ygc3Vic2NyaXB0IGVsZW1lbnRzIHRvIHVzZSBhbHRlcmVkIHJh bmdlX3R5cGUuCgkqIHJ1c3QtbGFuZy5jIChydXN0X3JhbmdlKTogRGl0by4K CSogcnVzdC1sYW5nLmMgKHJ1c3Rfc3Vic2NyaXB0KTogRGl0by4KCgpTaWdu ZWQtb2ZmLWJ5OiBDaHJpc3RvcGggV2Vpbm1hbm4gPGNocmlzdG9waC50Lndl aW5tYW5uQGludGVsLmNvbT4KLS0tCiBnZGIvZXZhbC5jICAgICAgIHwgMTQg KysrKysrLS0tLS0tLS0KIGdkYi9leHBwcmludC5jICAgfCAyMCArKysrKysr Ky0tLS0tLS0tLS0tLQogZ2RiL2V4cHJlc3Npb24uaCB8IDE1ICsrKysrKy0t LS0tLS0tLQogZ2RiL2YtZXhwLnkgICAgICB8IDExICsrKysrKy0tLS0tCiBn ZGIvcGFyc2UuYyAgICAgIHwgMjEgKysrKysrKystLS0tLS0tLS0tLS0tCiBn ZGIvcnVzdC1leHAueSAgIHwgMTIgKysrLS0tLS0tLS0tCiBnZGIvcnVzdC1s YW5nLmMgIHwgMTcgKysrKysrKystLS0tLS0tLS0KIDcgZmlsZXMgY2hhbmdl ZCwgNDUgaW5zZXJ0aW9ucygrKSwgNjUgZGVsZXRpb25zKC0pCgpkaWZmIC0t Z2l0IGEvZ2RiL2V2YWwuYyBiL2dkYi9ldmFsLmMKaW5kZXggNWMyMGZlZS4u NDRlODYwMCAxMDA2NDQKLS0tIGEvZ2RiL2V2YWwuYworKysgYi9nZGIvZXZh bC5jCkBAIC00ODIsMTIgKzQ4MiwxMiBAQCB2YWx1ZV9mOTBfc3ViYXJyYXkg KHN0cnVjdCB2YWx1ZSAqYXJyYXksIHN0cnVjdCBleHByZXNzaW9uICpleHAs CiAJICAvKiBJZiBhIGxvd2VyIGJvdW5kIHdhcyBwcm92aWRlZCBieSB0aGUg dXNlciwgdGhlIGJpdCBoYXMgYmVlbgogCSAgICAgc2V0IGFuZCB3ZSBjYW4g YXNzaWduIHRoZSB2YWx1ZSBmcm9tIHRoZSBlbHQgc3RhY2suICBTYW1lIGZv cgogCSAgICAgdXBwZXIgYm91bmQuICAqLwotCSAgaWYgKChyYW5nZS0+Zjkw X3JhbmdlX3R5cGUgPT0gSElHSF9CT1VORF9ERUZBVUxUKQotCSAgICAgIHx8 IHJhbmdlLT5mOTBfcmFuZ2VfdHlwZSA9PSBOT05FX0JPVU5EX0RFRkFVTFQp CisJICBpZiAoKHJhbmdlLT5mOTBfcmFuZ2VfdHlwZSAmIFNVQkFSUkFZX0xP V19CT1VORCkKKwkgICAgICA9PSBTVUJBUlJBWV9MT1dfQk9VTkQpCiAJICAg IHJhbmdlLT5sb3cgPSB2YWx1ZV9hc19sb25nIChldmFsdWF0ZV9zdWJleHAg KE5VTExfVFlQRSwgZXhwLAogCQkJCQkJCSBwb3MsIG5vc2lkZSkpOwotCSAg aWYgKChyYW5nZS0+ZjkwX3JhbmdlX3R5cGUgPT0gTE9XX0JPVU5EX0RFRkFV TFQpCi0JICAgICAgfHwgcmFuZ2UtPmY5MF9yYW5nZV90eXBlID09IE5PTkVf Qk9VTkRfREVGQVVMVCkKKwkgIGlmICgocmFuZ2UtPmY5MF9yYW5nZV90eXBl ICYgU1VCQVJSQVlfSElHSF9CT1VORCkKKwkgICAgICA9PSBTVUJBUlJBWV9I SUdIX0JPVU5EKQogCSAgICByYW5nZS0+aGlnaCA9IHZhbHVlX2FzX2xvbmcg KGV2YWx1YXRlX3N1YmV4cCAoTlVMTF9UWVBFLCBleHAsCiAJCQkJCQkJICBw b3MsIG5vc2lkZSkpOwogCX0KQEAgLTUyOCwxMiArNTI4LDEwIEBAIHZhbHVl X2Y5MF9zdWJhcnJheSAoc3RydWN0IHZhbHVlICphcnJheSwgc3RydWN0IGV4 cHJlc3Npb24gKmV4cCwKIAogCSAgICAvKiBJZiBubyBsb3dlciBib3VuZCB3 YXMgcHJvdmlkZWQgYnkgdGhlIHVzZXIsIHdlIHRha2UgdGhlCiAJICAgICAg IGRlZmF1bHQgYm91bmRhcnkuICBTYW1lIGZvciB0aGUgaGlnaCBib3VuZC4g ICovCi0JICAgIGlmICgocmFuZ2UtPmY5MF9yYW5nZV90eXBlID09IExPV19C T1VORF9ERUZBVUxUKQotCQl8fCAocmFuZ2UtPmY5MF9yYW5nZV90eXBlID09 IEJPVEhfQk9VTkRfREVGQVVMVCkpCisJICAgIGlmICgocmFuZ2UtPmY5MF9y YW5nZV90eXBlICYgU1VCQVJSQVlfTE9XX0JPVU5EKSA9PSAwKQogCSAgICAg IHJhbmdlLT5sb3cgPSBUWVBFX0xPV19CT1VORCAoaW5kZXhfdHlwZSk7CiAK LQkgICAgaWYgKChyYW5nZS0+ZjkwX3JhbmdlX3R5cGUgPT0gSElHSF9CT1VO RF9ERUZBVUxUKQotCQl8fCAocmFuZ2UtPmY5MF9yYW5nZV90eXBlID09IEJP VEhfQk9VTkRfREVGQVVMVCkpCisJICAgIGlmICgocmFuZ2UtPmY5MF9yYW5n ZV90eXBlICYgU1VCQVJSQVlfSElHSF9CT1VORCkgPT0gMCkKIAkgICAgICBy YW5nZS0+aGlnaCA9IFRZUEVfSElHSF9CT1VORCAoaW5kZXhfdHlwZSk7CiAK IAkgICAgLyogQm90aCB1c2VyIHByb3ZpZGVkIGxvdyBhbmQgaGlnaCBib3Vu ZCBoYXZlIHRvIGJlIGluc2lkZSB0aGUKZGlmZiAtLWdpdCBhL2dkYi9leHBw cmludC5jIGIvZ2RiL2V4cHByaW50LmMKaW5kZXggYzM3ZWNiMC4uMjE0ZDU4 ZSAxMDA2NDQKLS0tIGEvZ2RiL2V4cHByaW50LmMKKysrIGIvZ2RiL2V4cHBy aW50LmMKQEAgLTU2OCwxMiArNTY4LDEwIEBAIHByaW50X3N1YmV4cF9zdGFu ZGFyZCAoc3RydWN0IGV4cHJlc3Npb24gKmV4cCwgaW50ICpwb3MsCiAJKnBv cyArPSAyOwogCiAJZnB1dHNfZmlsdGVyZWQgKCJSQU5HRSgiLCBzdHJlYW0p OwotCWlmIChyYW5nZV90eXBlID09IEhJR0hfQk9VTkRfREVGQVVMVAotCSAg ICB8fCByYW5nZV90eXBlID09IE5PTkVfQk9VTkRfREVGQVVMVCkKKwlpZiAo KHJhbmdlX3R5cGUgJiBTVUJBUlJBWV9MT1dfQk9VTkQpID09IFNVQkFSUkFZ X0xPV19CT1VORCkKIAkgIHByaW50X3N1YmV4cCAoZXhwLCBwb3MsIHN0cmVh bSwgUFJFQ19BQk9WRV9DT01NQSk7CiAJZnB1dHNfZmlsdGVyZWQgKCIuLiIs IHN0cmVhbSk7Ci0JaWYgKHJhbmdlX3R5cGUgPT0gTE9XX0JPVU5EX0RFRkFV TFQKLQkgICAgfHwgcmFuZ2VfdHlwZSA9PSBOT05FX0JPVU5EX0RFRkFVTFQp CisJaWYgKChyYW5nZV90eXBlICYgU1VCQVJSQVlfSElHSF9CT1VORCkgPT0g U1VCQVJSQVlfSElHSF9CT1VORCkKIAkgIHByaW50X3N1YmV4cCAoZXhwLCBw b3MsIHN0cmVhbSwgUFJFQ19BQk9WRV9DT01NQSk7CiAJZnB1dHNfZmlsdGVy ZWQgKCIpIiwgc3RyZWFtKTsKIAlyZXR1cm47CkBAIC0xMDU1LDE2ICsxMDUz LDE2IEBAIGR1bXBfc3ViZXhwX2JvZHlfc3RhbmRhcmQgKHN0cnVjdCBleHBy ZXNzaW9uICpleHAsCiAKIAlzd2l0Y2ggKHJhbmdlX3R5cGUpCiAJICB7Ci0J ICBjYXNlIEJPVEhfQk9VTkRfREVGQVVMVDoKKwkgIGNhc2UgU1VCQVJSQVlf Tk9ORV9CT1VORDoKIAkgICAgZnB1dHNfZmlsdGVyZWQgKCJSYW5nZSAnLi4n Iiwgc3RyZWFtKTsKIAkgICAgYnJlYWs7Ci0JICBjYXNlIExPV19CT1VORF9E RUZBVUxUOgorCSAgY2FzZSBTVUJBUlJBWV9ISUdIX0JPVU5EOgogCSAgICBm cHV0c19maWx0ZXJlZCAoIlJhbmdlICcuLkVYUCciLCBzdHJlYW0pOwogCSAg ICBicmVhazsKLQkgIGNhc2UgSElHSF9CT1VORF9ERUZBVUxUOgorCSAgY2Fz ZSBTVUJBUlJBWV9MT1dfQk9VTkQ6CiAJICAgIGZwdXRzX2ZpbHRlcmVkICgi UmFuZ2UgJ0VYUC4uJyIsIHN0cmVhbSk7CiAJICAgIGJyZWFrOwotCSAgY2Fz ZSBOT05FX0JPVU5EX0RFRkFVTFQ6CisJICBjYXNlIChTVUJBUlJBWV9MT1df Qk9VTkQgfCBTVUJBUlJBWV9ISUdIX0JPVU5EKToKIAkgICAgZnB1dHNfZmls dGVyZWQgKCJSYW5nZSAnRVhQLi5FWFAnIiwgc3RyZWFtKTsKIAkgICAgYnJl YWs7CiAJICBkZWZhdWx0OgpAQCAtMTA3MiwxMSArMTA3MCw5IEBAIGR1bXBf c3ViZXhwX2JvZHlfc3RhbmRhcmQgKHN0cnVjdCBleHByZXNzaW9uICpleHAs CiAJICAgIGJyZWFrOwogCSAgfQogCi0JaWYgKHJhbmdlX3R5cGUgPT0gSElH SF9CT1VORF9ERUZBVUxUCi0JICAgIHx8IHJhbmdlX3R5cGUgPT0gTk9ORV9C T1VORF9ERUZBVUxUKQorCWlmICgocmFuZ2VfdHlwZSAmIFNVQkFSUkFZX0xP V19CT1VORCkgPT0gU1VCQVJSQVlfTE9XX0JPVU5EKQogCSAgZWx0ID0gZHVt cF9zdWJleHAgKGV4cCwgc3RyZWFtLCBlbHQpOwotCWlmIChyYW5nZV90eXBl ID09IExPV19CT1VORF9ERUZBVUxUCi0JICAgIHx8IHJhbmdlX3R5cGUgPT0g Tk9ORV9CT1VORF9ERUZBVUxUKQorCWlmICgocmFuZ2VfdHlwZSAmIFNVQkFS UkFZX0hJR0hfQk9VTkQpID09IFNVQkFSUkFZX0hJR0hfQk9VTkQpCiAJICBl bHQgPSBkdW1wX3N1YmV4cCAoZXhwLCBzdHJlYW0sIGVsdCk7CiAgICAgICB9 CiAgICAgICBicmVhazsKZGlmZiAtLWdpdCBhL2dkYi9leHByZXNzaW9uLmgg Yi9nZGIvZXhwcmVzc2lvbi5oCmluZGV4IDQ5NTJkODQuLjVhNmI3MjAgMTAw NjQ0Ci0tLSBhL2dkYi9leHByZXNzaW9uLmgKKysrIGIvZ2RiL2V4cHJlc3Np b24uaApAQCAtMTUyLDE3ICsxNTIsMTQgQEAgZXh0ZXJuIHZvaWQgZHVtcF9y YXdfZXhwcmVzc2lvbiAoc3RydWN0IGV4cHJlc3Npb24gKiwKIAkJCQkgc3Ry dWN0IHVpX2ZpbGUgKiwgY2hhciAqKTsKIGV4dGVybiB2b2lkIGR1bXBfcHJl Zml4X2V4cHJlc3Npb24gKHN0cnVjdCBleHByZXNzaW9uICosIHN0cnVjdCB1 aV9maWxlICopOwogCi0vKiBJbiBhbiBPUF9SQU5HRSBleHByZXNzaW9uLCBl aXRoZXIgYm91bmQgY291bGQgYmUgZW1wdHksIGluZGljYXRpbmcKLSAgIHRo YXQgaXRzIHZhbHVlIGlzIGJ5IGRlZmF1bHQgdGhhdCBvZiB0aGUgY29ycmVz cG9uZGluZyBib3VuZCBvZiB0aGUKLSAgIGFycmF5IG9yIHN0cmluZy4gIFNv IHdlIGhhdmUgZm91ciBzb3J0cyBvZiBzdWJyYW5nZS4gIFRoaXMKLSAgIGVu dW1lcmF0aW9uIHR5cGUgaXMgdG8gaWRlbnRpZnkgdGhpcy4gICovCi0gICAK Ky8qIEluIGFuIE9QX1JBTkdFIGV4cHJlc3Npb24sIGVpdGhlciBib3VuZCBj YW4gYmUgcHJvdmlkZWQgYnkgdGhlIHVzZXIsIG9yIG5vdC4KKyAgIFRoaXMg ZW51bWVyYXRpb24gdHlwZSBpcyB0byBpZGVudGlmeSB0aGlzLiAgKi8KKwog ZW51bSByYW5nZV90eXBlCiAgIHsKLSAgICBCT1RIX0JPVU5EX0RFRkFVTFQs CQkvKiAiKDopIiAgKi8KLSAgICBMT1dfQk9VTkRfREVGQVVMVCwJCS8qICIo OmhpZ2gpIiAgKi8KLSAgICBISUdIX0JPVU5EX0RFRkFVTFQsCQkvKiAiKGxv dzopIiAgKi8KLSAgICBOT05FX0JPVU5EX0RFRkFVTFQJCS8qICIobG93Omhp Z2gpIiAgKi8KKyAgICBTVUJBUlJBWV9OT05FX0JPVU5EID0gMHgwLAkJLyog IiggOiApIiAgKi8KKyAgICBTVUJBUlJBWV9MT1dfQk9VTkQgPSAweDEsCQkv KiAiKGxvdzopIiAgKi8KKyAgICBTVUJBUlJBWV9ISUdIX0JPVU5EID0gMHgy CQkvKiAiKDpoaWdoKSIgICovCiAgIH07CiAKICNlbmRpZiAvKiAhZGVmaW5l ZCAoRVhQUkVTU0lPTl9IKSAqLwpkaWZmIC0tZ2l0IGEvZ2RiL2YtZXhwLnkg Yi9nZGIvZi1leHAueQppbmRleCBkYzEzMWMxLi5lMmM1NGI2IDEwMDY0NAot LS0gYS9nZGIvZi1leHAueQorKysgYi9nZGIvZi1leHAueQpAQCAtMjYwLDI2 ICsyNjAsMjcgQEAgYXJnbGlzdAk6CWFyZ2xpc3QgJywnIGV4cCAgICVwcmVj IEFCT1ZFX0NPTU1BCiAvKiBUaGVyZSBhcmUgZm91ciBzb3J0cyBvZiBzdWJy YW5nZSB0eXBlcyBpbiBGOTAuICAqLwogCiBzdWJyYW5nZToJZXhwICc6JyBl eHAJJXByZWMgQUJPVkVfQ09NTUEKLQkJCXsgd3JpdGVfZXhwX2VsdF9vcGNv ZGUgKHBzdGF0ZSwgT1BfUkFOR0UpOyAKLQkJCSAgd3JpdGVfZXhwX2VsdF9s b25nY3N0IChwc3RhdGUsIE5PTkVfQk9VTkRfREVGQVVMVCk7CisJCQl7IHdy aXRlX2V4cF9lbHRfb3Bjb2RlIChwc3RhdGUsIE9QX1JBTkdFKTsKKwkJCSAg d3JpdGVfZXhwX2VsdF9sb25nY3N0IChwc3RhdGUsCisJCQkJCQkgU1VCQVJS QVlfTE9XX0JPVU5EIHwgU1VCQVJSQVlfSElHSF9CT1VORCk7CiAJCQkgIHdy aXRlX2V4cF9lbHRfb3Bjb2RlIChwc3RhdGUsIE9QX1JBTkdFKTsgfQogCTsK IAogc3VicmFuZ2U6CWV4cCAnOicJJXByZWMgQUJPVkVfQ09NTUEKIAkJCXsg d3JpdGVfZXhwX2VsdF9vcGNvZGUgKHBzdGF0ZSwgT1BfUkFOR0UpOwotCQkJ ICB3cml0ZV9leHBfZWx0X2xvbmdjc3QgKHBzdGF0ZSwgSElHSF9CT1VORF9E RUZBVUxUKTsKKwkJCSAgd3JpdGVfZXhwX2VsdF9sb25nY3N0IChwc3RhdGUs IFNVQkFSUkFZX0xPV19CT1VORCk7CiAJCQkgIHdyaXRlX2V4cF9lbHRfb3Bj b2RlIChwc3RhdGUsIE9QX1JBTkdFKTsgfQogCTsKIAogc3VicmFuZ2U6CSc6 JyBleHAJJXByZWMgQUJPVkVfQ09NTUEKIAkJCXsgd3JpdGVfZXhwX2VsdF9v cGNvZGUgKHBzdGF0ZSwgT1BfUkFOR0UpOwotCQkJICB3cml0ZV9leHBfZWx0 X2xvbmdjc3QgKHBzdGF0ZSwgTE9XX0JPVU5EX0RFRkFVTFQpOworCQkJICB3 cml0ZV9leHBfZWx0X2xvbmdjc3QgKHBzdGF0ZSwgU1VCQVJSQVlfSElHSF9C T1VORCk7CiAJCQkgIHdyaXRlX2V4cF9lbHRfb3Bjb2RlIChwc3RhdGUsIE9Q X1JBTkdFKTsgfQogCTsKIAogc3VicmFuZ2U6CSc6JwklcHJlYyBBQk9WRV9D T01NQQogCQkJeyB3cml0ZV9leHBfZWx0X29wY29kZSAocHN0YXRlLCBPUF9S QU5HRSk7Ci0JCQkgIHdyaXRlX2V4cF9lbHRfbG9uZ2NzdCAocHN0YXRlLCBC T1RIX0JPVU5EX0RFRkFVTFQpOworCQkJICB3cml0ZV9leHBfZWx0X2xvbmdj c3QgKHBzdGF0ZSwgMCk7CiAJCQkgIHdyaXRlX2V4cF9lbHRfb3Bjb2RlIChw c3RhdGUsIE9QX1JBTkdFKTsgfQogCTsKIApkaWZmIC0tZ2l0IGEvZ2RiL3Bh cnNlLmMgYi9nZGIvcGFyc2UuYwppbmRleCAyYjAwNzA4Li42ZDU0YTc3IDEw MDY0NAotLS0gYS9nZGIvcGFyc2UuYworKysgYi9nZGIvcGFyc2UuYwpAQCAt MTAwNiwyMiArMTAwNiwxNyBAQCBvcGVyYXRvcl9sZW5ndGhfc3RhbmRhcmQg KGNvbnN0IHN0cnVjdCBleHByZXNzaW9uICpleHByLCBpbnQgZW5kcG9zLAog CiAgICAgY2FzZSBPUF9SQU5HRToKICAgICAgIG9wbGVuID0gMzsKKyAgICAg IGFyZ3MgPSAwOwogICAgICAgcmFuZ2VfdHlwZSA9IChlbnVtIHJhbmdlX3R5 cGUpCiAJbG9uZ2VzdF90b19pbnQgKGV4cHItPmVsdHNbZW5kcG9zIC0gMl0u bG9uZ2NvbnN0KTsKIAotICAgICAgc3dpdGNoIChyYW5nZV90eXBlKQotCXsK LQljYXNlIExPV19CT1VORF9ERUZBVUxUOgotCWNhc2UgSElHSF9CT1VORF9E RUZBVUxUOgotCSAgYXJncyA9IDE7Ci0JICBicmVhazsKLQljYXNlIEJPVEhf Qk9VTkRfREVGQVVMVDoKLQkgIGFyZ3MgPSAwOwotCSAgYnJlYWs7Ci0JY2Fz ZSBOT05FX0JPVU5EX0RFRkFVTFQ6Ci0JICBhcmdzID0gMjsKLQkgIGJyZWFr OwotCX0KKyAgICAgIC8qIEluY3JlbWVudCB0aGUgYXJndW1lbnQgY291bnRl ciBmb3IgZWFjaCBhcmd1bWVudAorCSBwcm92aWRlZCBieSB0aGUgdXNlci4g ICovCisgICAgICBpZiAoKHJhbmdlX3R5cGUgJiBTVUJBUlJBWV9MT1dfQk9V TkQpID09IFNVQkFSUkFZX0xPV19CT1VORCkKKwlhcmdzKys7CisKKyAgICAg IGlmICgocmFuZ2VfdHlwZSAmIFNVQkFSUkFZX0hJR0hfQk9VTkQpID09IFNV QkFSUkFZX0hJR0hfQk9VTkQpCisJYXJncysrOwogCiAgICAgICBicmVhazsK IApkaWZmIC0tZ2l0IGEvZ2RiL3J1c3QtZXhwLnkgYi9nZGIvcnVzdC1leHAu eQppbmRleCBjMWE4NjNjLi43NjA5MjliNSAxMDA2NDQKLS0tIGEvZ2RiL3J1 c3QtZXhwLnkKKysrIGIvZ2RiL3J1c3QtZXhwLnkKQEAgLTI0MTgsMjMgKzI0 MTgsMTcgQEAgY29udmVydF9hc3RfdG9fZXhwcmVzc2lvbiAoc3RydWN0IHBh cnNlcl9zdGF0ZSAqc3RhdGUsCiAKICAgICBjYXNlIE9QX1JBTkdFOgogICAg ICAgewotCWVudW0gcmFuZ2VfdHlwZSBraW5kID0gQk9USF9CT1VORF9ERUZB VUxUOworCWVudW0gcmFuZ2VfdHlwZSBraW5kID0gU1VCQVJSQVlfTk9ORV9C T1VORDsKIAogCWlmIChvcGVyYXRpb24tPmxlZnQub3AgIT0gTlVMTCkKIAkg IHsKIAkgICAgY29udmVydF9hc3RfdG9fZXhwcmVzc2lvbiAoc3RhdGUsIG9w ZXJhdGlvbi0+bGVmdC5vcCwgdG9wKTsKLQkgICAga2luZCA9IEhJR0hfQk9V TkRfREVGQVVMVDsKKwkgICAga2luZCA9IFNVQkFSUkFZX0xPV19CT1VORDsK IAkgIH0KIAlpZiAob3BlcmF0aW9uLT5yaWdodC5vcCAhPSBOVUxMKQogCSAg ewogCSAgICBjb252ZXJ0X2FzdF90b19leHByZXNzaW9uIChzdGF0ZSwgb3Bl cmF0aW9uLT5yaWdodC5vcCwgdG9wKTsKLQkgICAgaWYgKGtpbmQgPT0gQk9U SF9CT1VORF9ERUZBVUxUKQotCSAgICAgIGtpbmQgPSBMT1dfQk9VTkRfREVG QVVMVDsKLQkgICAgZWxzZQotCSAgICAgIHsKLQkJZ2RiX2Fzc2VydCAoa2lu ZCA9PSBISUdIX0JPVU5EX0RFRkFVTFQpOwotCQlraW5kID0gTk9ORV9CT1VO RF9ERUZBVUxUOwotCSAgICAgIH0KKwkgICAga2luZCA9IChyYW5nZV90eXBl KSAoa2luZCB8IFNVQkFSUkFZX0hJR0hfQk9VTkQpOwogCSAgfQogCXdyaXRl X2V4cF9lbHRfb3Bjb2RlIChzdGF0ZSwgT1BfUkFOR0UpOwogCXdyaXRlX2V4 cF9lbHRfbG9uZ2NzdCAoc3RhdGUsIGtpbmQpOwpkaWZmIC0tZ2l0IGEvZ2Ri L3J1c3QtbGFuZy5jIGIvZ2RiL3J1c3QtbGFuZy5jCmluZGV4IDVkZjk5Y2Uu LjhkNTNlMzEgMTAwNjQ0Ci0tLSBhL2dkYi9ydXN0LWxhbmcuYworKysgYi9n ZGIvcnVzdC1sYW5nLmMKQEAgLTExODgsOSArMTE4OCw5IEBAIHJ1c3RfcmFu Z2UgKHN0cnVjdCBleHByZXNzaW9uICpleHAsIGludCAqcG9zLCBlbnVtIG5v c2lkZSBub3NpZGUpCiAgIGtpbmQgPSAoZW51bSByYW5nZV90eXBlKSBsb25n ZXN0X3RvX2ludCAoZXhwLT5lbHRzWypwb3MgKyAxXS5sb25nY29uc3QpOwog ICAqcG9zICs9IDM7CiAKLSAgaWYgKGtpbmQgPT0gSElHSF9CT1VORF9ERUZB VUxUIHx8IGtpbmQgPT0gTk9ORV9CT1VORF9ERUZBVUxUKQorICBpZiAoKGtp bmQgJiBTVUJBUlJBWV9MT1dfQk9VTkQpID09IFNVQkFSUkFZX0xPV19CT1VO RCkKICAgICBsb3cgPSBldmFsdWF0ZV9zdWJleHAgKE5VTExfVFlQRSwgZXhw LCBwb3MsIG5vc2lkZSk7Ci0gIGlmIChraW5kID09IExPV19CT1VORF9ERUZB VUxUIHx8IGtpbmQgPT0gTk9ORV9CT1VORF9ERUZBVUxUKQorICBpZiAoKGtp bmQgJiBTVUJBUlJBWV9ISUdIX0JPVU5EKSA9PSBTVUJBUlJBWV9ISUdIX0JP VU5EKQogICAgIGhpZ2ggPSBldmFsdWF0ZV9zdWJleHAgKE5VTExfVFlQRSwg ZXhwLCBwb3MsIG5vc2lkZSk7CiAKICAgaWYgKG5vc2lkZSA9PSBFVkFMX1NL SVApCkBAIC0xMjc5LDcgKzEyNzksNyBAQCBydXN0X2NvbXB1dGVfcmFuZ2Ug KHN0cnVjdCB0eXBlICp0eXBlLCBzdHJ1Y3QgdmFsdWUgKnJhbmdlLAogCiAg ICpsb3cgPSAwOwogICAqaGlnaCA9IDA7Ci0gICpraW5kID0gQk9USF9CT1VO RF9ERUZBVUxUOworICAqa2luZCA9IFNVQkFSUkFZX05PTkVfQk9VTkQ7CiAK ICAgaWYgKFRZUEVfTkZJRUxEUyAodHlwZSkgPT0gMCkKICAgICByZXR1cm47 CkBAIC0xMjg3LDE1ICsxMjg3LDE0IEBAIHJ1c3RfY29tcHV0ZV9yYW5nZSAo c3RydWN0IHR5cGUgKnR5cGUsIHN0cnVjdCB2YWx1ZSAqcmFuZ2UsCiAgIGkg PSAwOwogICBpZiAoc3RyY21wIChUWVBFX0ZJRUxEX05BTUUgKHR5cGUsIDAp LCAic3RhcnQiKSA9PSAwKQogICAgIHsKLSAgICAgICpraW5kID0gSElHSF9C T1VORF9ERUZBVUxUOworICAgICAgKmtpbmQgPSBTVUJBUlJBWV9MT1dfQk9V TkQ7CiAgICAgICAqbG93ID0gdmFsdWVfYXNfbG9uZyAodmFsdWVfZmllbGQg KHJhbmdlLCAwKSk7CiAgICAgICArK2k7CiAgICAgfQogICBpZiAoVFlQRV9O RklFTERTICh0eXBlKSA+IGkKICAgICAgICYmIHN0cmNtcCAoVFlQRV9GSUVM RF9OQU1FICh0eXBlLCBpKSwgImVuZCIpID09IDApCiAgICAgewotICAgICAg KmtpbmQgPSAoKmtpbmQgPT0gQk9USF9CT1VORF9ERUZBVUxUCi0JICAgICAg ID8gTE9XX0JPVU5EX0RFRkFVTFQgOiBOT05FX0JPVU5EX0RFRkFVTFQpOwor ICAgICAgKmtpbmQgPSAocmFuZ2VfdHlwZSkgKCpraW5kIHwgU1VCQVJSQVlf SElHSF9CT1VORCk7CiAgICAgICAqaGlnaCA9IHZhbHVlX2FzX2xvbmcgKHZh bHVlX2ZpZWxkIChyYW5nZSwgaSkpOwogICAgIH0KIH0KQEAgLTEzMTAsNyAr MTMwOSw3IEBAIHJ1c3Rfc3Vic2NyaXB0IChzdHJ1Y3QgZXhwcmVzc2lvbiAq ZXhwLCBpbnQgKnBvcywgZW51bSBub3NpZGUgbm9zaWRlLAogICBzdHJ1Y3Qg dHlwZSAqcmhzdHlwZTsKICAgTE9OR0VTVCBsb3csIGhpZ2hfYm91bmQ7CiAg IC8qIEluaXRpYWxpemVkIHRvIGFwcGVhc2UgdGhlIGNvbXBpbGVyLiAgKi8K LSAgZW51bSByYW5nZV90eXBlIGtpbmQgPSBCT1RIX0JPVU5EX0RFRkFVTFQ7 CisgIGVudW0gcmFuZ2VfdHlwZSBraW5kID0gU1VCQVJSQVlfTk9ORV9CT1VO RDsKICAgTE9OR0VTVCBoaWdoID0gMDsKICAgaW50IHdhbnRfc2xpY2UgPSAw OwogCkBAIC0xMzY2LDcgKzEzNjUsNyBAQCBydXN0X3N1YnNjcmlwdCAoc3Ry dWN0IGV4cHJlc3Npb24gKmV4cCwgaW50ICpwb3MsIGVudW0gbm9zaWRlIG5v c2lkZSwKIAllcnJvciAoXygiQ2Fubm90IHN1YnNjcmlwdCBub24tYXJyYXkg dHlwZSIpKTsKIAogICAgICAgaWYgKHdhbnRfc2xpY2UKLQkgICYmIChraW5k ID09IEJPVEhfQk9VTkRfREVGQVVMVCB8fCBraW5kID09IExPV19CT1VORF9E RUZBVUxUKSkKKwkgICYmICgoa2luZCAmIFNVQkFSUkFZX0xPV19CT1VORCkg IT0gU1VCQVJSQVlfTE9XX0JPVU5EKSkKIAlsb3cgPSBsb3dfYm91bmQ7CiAg ICAgICBpZiAobG93IDwgMCkKIAllcnJvciAoXygiSW5kZXggbGVzcyB0aGFu IHplcm8iKSk7CkBAIC0xMzg0LDcgKzEzODMsNyBAQCBydXN0X3N1YnNjcmlw dCAoc3RydWN0IGV4cHJlc3Npb24gKmV4cCwgaW50ICpwb3MsIGVudW0gbm9z aWRlIG5vc2lkZSwKIAkgIENPUkVfQUREUiBhZGRyOwogCSAgc3RydWN0IHZh bHVlICphZGRydmFsLCAqdGVtOwogCi0JICBpZiAoa2luZCA9PSBCT1RIX0JP VU5EX0RFRkFVTFQgfHwga2luZCA9PSBISUdIX0JPVU5EX0RFRkFVTFQpCisJ ICBpZiAoKGtpbmQgJiBTVUJBUlJBWV9ISUdIX0JPVU5EKSAhPSBTVUJBUlJB WV9ISUdIX0JPVU5EKQogCSAgICBoaWdoID0gaGlnaF9ib3VuZDsKIAkgIGlm IChoaWdoIDwgMCkKIAkgICAgZXJyb3IgKF8oIkhpZ2ggaW5kZXggbGVzcyB0 aGFuIHplcm8iKSk7Ci0tIAoyLjUuNQoK --_007_1E04C56C2A492B449743D653DD4A15BC3BC4C94CIRSMSX102gercor_ Content-Type: application/octet-stream; name="0004-fortran-enable-parsing-of-stride-parameter-for-subra.patch" Content-Description: 0004-fortran-enable-parsing-of-stride-parameter-for-subra.patch Content-Disposition: attachment; filename="0004-fortran-enable-parsing-of-stride-parameter-for-subra.patch"; size=5760; creation-date="Fri, 01 Jul 2016 12:59:57 GMT"; modification-date="Fri, 01 Jul 2016 12:55:48 GMT" Content-Transfer-Encoding: base64 Content-length: 7808 RnJvbSAzMzhlNGM4NjBhZDIwNTg5NmI0YTk1Yzc5ZjU0NDcwYzc5ZWViMzQ4 IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBDaHJpc3RvcGggV2Vp bm1hbm4gPGNocmlzdG9waC50LndlaW5tYW5uQGludGVsLmNvbT4KRGF0ZTog V2VkLCAxIEp1biAyMDE2IDE1OjExOjI0ICswMjAwClN1YmplY3Q6IFtQQVRD SCA0LzZdIGZvcnRyYW46IGVuYWJsZSBwYXJzaW5nIG9mIHN0cmlkZSBwYXJh bWV0ZXIgZm9yIHN1YnJhbmdlcwoKQWxsb3cgdGhlIHVzZXIgdG8gcHJvdmlk ZSBhIHN0cmlkZSBwYXJhbWV0ZXIgZm9yIEZvcnRyYW4Kc3ViYXJyYXlzLiAg VGhlIHN0cmlkZSBwYXJhbWV0ZXIgY2FuIGJlIGFueSBpbnRlZ2VyIGV4Y2Vw dAonMCcuICBUaGUgZGVmYXVsdCBzdHJpZGUgdmFsdWUgaXMgJzEnLgoKMjAx My0xMS0yNyAgQ2hyaXN0b3BoIFdlaW5tYW5uICA8Y2hyaXN0b3BoLnQud2Vp bm1hbm5AaW50ZWwuY29tPgoKCSogZXZhbC5jICh2YWx1ZV9mOTBfc3ViYXJy YXkpOiBBZGQgZXhwcmVzc2lvbiBldmFsdWF0aW9uCglmb3IgYSBzdHJpZGUg cGFyYW1ldGVyIGluIGEgRm9ydHJhbiByYW5nZSBleHByZXNzaW9uLgoJKiBl eHByZXNzaW9uLmggKHJhbmdlX3R5cGUpOiBBZGQgZmllbGQgdG8gZW51bSB0 byBzaG93IHdoZW4KCWEgc3RyaWRlIHZhbHVlIHdhcyBwcm92aWRlZCBieSB0 aGUgdXNlci4KCSogZi1leHAueTogQWRkIHlhY2MgcnVsZXMgZm9yIHdyaXRp bmcgaW5mbyBvbiB0aGUgZWx0IHN0YWNrCgl3aGVuIHRoZSB1c2VyIHByb3Zp ZGVkIGEgc3RyaWRlIGFyZ3VtZW50LgoJKiBwYXJzZS5jIChvcGVyYXRvcl9s ZW5ndGhfc3RhbmRhcmQpOiBDaGVjayBpZiBhIHN0cmlkZQoJdmFsdWUgd2Fz IHByb3ZpZGVkLCBhbmQgaW5jcmVtZW50IGFyZ3VtZW50IGNvdW50ZXIKCWFj Y29yZGluZ2x5LgoKClNpZ25lZC1vZmYtYnk6IENocmlzdG9waCBXZWlubWFu biA8Y2hyaXN0b3BoLnQud2Vpbm1hbm5AaW50ZWwuY29tPgotLS0KIGdkYi9l dmFsLmMgICAgICAgfCAxMSArKysrKysrKysrLQogZ2RiL2V4cHJlc3Npb24u aCB8ICA3ICsrKysrLS0KIGdkYi9mLWV4cC55ICAgICAgfCAzMSArKysrKysr KysrKysrKysrKysrKysrKysrKysrKystCiBnZGIvcGFyc2UuYyAgICAgIHwg IDMgKysrCiBnZGIvdmFsb3BzLmMgICAgIHwgIDQgKystLQogNSBmaWxlcyBj aGFuZ2VkLCA1MCBpbnNlcnRpb25zKCspLCA2IGRlbGV0aW9ucygtKQoKZGlm ZiAtLWdpdCBhL2dkYi9ldmFsLmMgYi9nZGIvZXZhbC5jCmluZGV4IDQ0ZTg2 MDAuLmI1YWFmMWMgMTAwNjQ0Ci0tLSBhL2dkYi9ldmFsLmMKKysrIGIvZ2Ri L2V2YWwuYwpAQCAtNDE5LDcgKzQxOSw3IEBAIHZhbHVlX2Y5MF9zdWJhcnJh eSAoc3RydWN0IHZhbHVlICphcnJheSwgc3RydWN0IGV4cHJlc3Npb24gKmV4 cCwKICAgdHlwZWRlZiBzdHJ1Y3Qgc3Vic2NyaXB0X3JhbmdlCiAgIHsKICAg ICBlbnVtIHJhbmdlX3R5cGUgZjkwX3JhbmdlX3R5cGU7Ci0gICAgTE9OR0VT VCBsb3csIGhpZ2g7CisgICAgTE9OR0VTVCBsb3csIGhpZ2gsIHN0cmlkZTsK ICAgfSBzdWJzY3JpcHRfcmFuZ2U7CiAKICAgdHlwZWRlZiBlbnVtIHN1YnNj cmlwdF9raW5kCkBAIC00OTAsNiArNDkwLDE1IEBAIHZhbHVlX2Y5MF9zdWJh cnJheSAoc3RydWN0IHZhbHVlICphcnJheSwgc3RydWN0IGV4cHJlc3Npb24g KmV4cCwKIAkgICAgICA9PSBTVUJBUlJBWV9ISUdIX0JPVU5EKQogCSAgICBy YW5nZS0+aGlnaCA9IHZhbHVlX2FzX2xvbmcgKGV2YWx1YXRlX3N1YmV4cCAo TlVMTF9UWVBFLCBleHAsCiAJCQkJCQkJICBwb3MsIG5vc2lkZSkpOworCisJ ICAvKiBBc3NpZ24gdGhlIHVzZXIncyBzdHJpZGUgdmFsdWUgaWYgcHJvdmlk ZWQuICAqLworCSAgaWYgKChyYW5nZS0+ZjkwX3JhbmdlX3R5cGUgJiBTVUJB UlJBWV9TVFJJREUpID09IFNVQkFSUkFZX1NUUklERSkKKwkgICAgcmFuZ2Ut PnN0cmlkZSA9IHZhbHVlX2FzX2xvbmcgKGV2YWx1YXRlX3N1YmV4cCAoTlVM TF9UWVBFLCBleHAsCisJCQkJCQkJICAgICBwb3MsIG5vc2lkZSkpOworCisJ ICAvKiBBc3NpZ24gdGhlIGRlZmF1bHQgc3RyaWRlIHZhbHVlICcxJy4gICov CisJICBlbHNlCisJICAgIHJhbmdlLT5zdHJpZGUgPSAxOwogCX0KICAgICAg IC8qIFVzZXIgaW5wdXQgaXMgYW4gaW5kZXguICBFLmcuOiAicCBhcnJ5KDUp Ii4gICovCiAgICAgICBlbHNlCmRpZmYgLS1naXQgYS9nZGIvZXhwcmVzc2lv bi5oIGIvZ2RiL2V4cHJlc3Npb24uaAppbmRleCA1YTZiNzIwLi4zNGNhNTRi IDEwMDY0NAotLS0gYS9nZGIvZXhwcmVzc2lvbi5oCisrKyBiL2dkYi9leHBy ZXNzaW9uLmgKQEAgLTE1MywxMyArMTUzLDE2IEBAIGV4dGVybiB2b2lkIGR1 bXBfcmF3X2V4cHJlc3Npb24gKHN0cnVjdCBleHByZXNzaW9uICosCiBleHRl cm4gdm9pZCBkdW1wX3ByZWZpeF9leHByZXNzaW9uIChzdHJ1Y3QgZXhwcmVz c2lvbiAqLCBzdHJ1Y3QgdWlfZmlsZSAqKTsKIAogLyogSW4gYW4gT1BfUkFO R0UgZXhwcmVzc2lvbiwgZWl0aGVyIGJvdW5kIGNhbiBiZSBwcm92aWRlZCBi eSB0aGUgdXNlciwgb3Igbm90LgotICAgVGhpcyBlbnVtZXJhdGlvbiB0eXBl IGlzIHRvIGlkZW50aWZ5IHRoaXMuICAqLworICAgSW4gYWRkaXRpb24gdG8g dGhpcywgdGhlIHVzZXIgY2FuIGFsc28gc3BlY2lmeSBhIHN0cmlkZSB2YWx1 ZSB0byBpbmRpY2F0ZWQKKyAgIG9ubHkgY2VydGFpbiBlbGVtZW50cyBvZiB0 aGUgYXJyYXkuICBUaGlzIGVudW1lcmF0aW9uIHR5cGUgaXMgdG8gaWRlbnRp ZnkKKyAgIHRoaXMuICAqLwogCiBlbnVtIHJhbmdlX3R5cGUKICAgewogICAg IFNVQkFSUkFZX05PTkVfQk9VTkQgPSAweDAsCQkvKiAiKCA6ICkiICAqLwog ICAgIFNVQkFSUkFZX0xPV19CT1VORCA9IDB4MSwJCS8qICIobG93OikiICAq LwotICAgIFNVQkFSUkFZX0hJR0hfQk9VTkQgPSAweDIJCS8qICIoOmhpZ2gp IiAgKi8KKyAgICBTVUJBUlJBWV9ISUdIX0JPVU5EID0gMHgyLAkJLyogIig6 aGlnaCkiICAqLworICAgIFNVQkFSUkFZX1NUUklERSA9IDB4NAkJLyogIig6 OnN0cmlkZSkiICAqLwogICB9OwogCiAjZW5kaWYgLyogIWRlZmluZWQgKEVY UFJFU1NJT05fSCkgKi8KZGlmZiAtLWdpdCBhL2dkYi9mLWV4cC55IGIvZ2Ri L2YtZXhwLnkKaW5kZXggZTJjNTRiNi4uNzFmMTgyMyAxMDA2NDQKLS0tIGEv Z2RiL2YtZXhwLnkKKysrIGIvZ2RiL2YtZXhwLnkKQEAgLTI4MCw3ICsyODAs MzYgQEAgc3VicmFuZ2U6CSc6JyBleHAJJXByZWMgQUJPVkVfQ09NTUEKIAog c3VicmFuZ2U6CSc6JwklcHJlYyBBQk9WRV9DT01NQQogCQkJeyB3cml0ZV9l eHBfZWx0X29wY29kZSAocHN0YXRlLCBPUF9SQU5HRSk7Ci0JCQkgIHdyaXRl X2V4cF9lbHRfbG9uZ2NzdCAocHN0YXRlLCAwKTsKKwkJCSAgd3JpdGVfZXhw X2VsdF9sb25nY3N0IChwc3RhdGUsIFNVQkFSUkFZX05PTkVfQk9VTkQpOwor CQkJICB3cml0ZV9leHBfZWx0X29wY29kZSAocHN0YXRlLCBPUF9SQU5HRSk7 IH0KKwk7CisKKy8qIEVhY2ggc3VicmFuZ2UgdHlwZSBjYW4gaGF2ZSBhIHN0 cmlkZSBhcmd1bWVudC4gICovCitzdWJyYW5nZToJZXhwICc6JyBleHAgJzon IGV4cCAlcHJlYyBBQk9WRV9DT01NQQorCQkJeyB3cml0ZV9leHBfZWx0X29w Y29kZSAocHN0YXRlLCBPUF9SQU5HRSk7CisJCQkgIHdyaXRlX2V4cF9lbHRf bG9uZ2NzdCAocHN0YXRlLCBTVUJBUlJBWV9MT1dfQk9VTkQKKwkJCQkJCSB8 IFNVQkFSUkFZX0hJR0hfQk9VTkQKKwkJCQkJCSB8IFNVQkFSUkFZX1NUUklE RSk7CisJCQkgIHdyaXRlX2V4cF9lbHRfb3Bjb2RlIChwc3RhdGUsIE9QX1JB TkdFKTsgfQorCTsKKworc3VicmFuZ2U6CWV4cCAnOicgJzonIGV4cCAlcHJl YyBBQk9WRV9DT01NQQorCQkJeyB3cml0ZV9leHBfZWx0X29wY29kZSAocHN0 YXRlLCBPUF9SQU5HRSk7CisJCQkgIHdyaXRlX2V4cF9lbHRfbG9uZ2NzdCAo cHN0YXRlLCBTVUJBUlJBWV9MT1dfQk9VTkQKKwkJCQkJCSB8IFNVQkFSUkFZ X1NUUklERSk7CisJCQkgIHdyaXRlX2V4cF9lbHRfb3Bjb2RlIChwc3RhdGUs IE9QX1JBTkdFKTsgfQorCTsKKworc3VicmFuZ2U6CSc6JyBleHAgJzonIGV4 cCAlcHJlYyBBQk9WRV9DT01NQQorCQkJeyB3cml0ZV9leHBfZWx0X29wY29k ZSAocHN0YXRlLCBPUF9SQU5HRSk7CisJCQkgIHdyaXRlX2V4cF9lbHRfbG9u Z2NzdCAocHN0YXRlLCBTVUJBUlJBWV9ISUdIX0JPVU5ECisJCQkJCQkgfCBT VUJBUlJBWV9TVFJJREUpOworCQkJICB3cml0ZV9leHBfZWx0X29wY29kZSAo cHN0YXRlLCBPUF9SQU5HRSk7IH0KKwk7CisKK3N1YnJhbmdlOgknOicgJzon IGV4cCAlcHJlYyBBQk9WRV9DT01NQQorCQkJeyB3cml0ZV9leHBfZWx0X29w Y29kZSAocHN0YXRlLCBPUF9SQU5HRSk7CisJCQkgIHdyaXRlX2V4cF9lbHRf bG9uZ2NzdCAocHN0YXRlLCBTVUJBUlJBWV9TVFJJREUpOwogCQkJICB3cml0 ZV9leHBfZWx0X29wY29kZSAocHN0YXRlLCBPUF9SQU5HRSk7IH0KIAk7CiAK ZGlmZiAtLWdpdCBhL2dkYi9wYXJzZS5jIGIvZ2RiL3BhcnNlLmMKaW5kZXgg NmQ1NGE3Ny4uOTkyYWY4NyAxMDA2NDQKLS0tIGEvZ2RiL3BhcnNlLmMKKysr IGIvZ2RiL3BhcnNlLmMKQEAgLTEwMTgsNiArMTAxOCw5IEBAIG9wZXJhdG9y X2xlbmd0aF9zdGFuZGFyZCAoY29uc3Qgc3RydWN0IGV4cHJlc3Npb24gKmV4 cHIsIGludCBlbmRwb3MsCiAgICAgICBpZiAoKHJhbmdlX3R5cGUgJiBTVUJB UlJBWV9ISUdIX0JPVU5EKSA9PSBTVUJBUlJBWV9ISUdIX0JPVU5EKQogCWFy Z3MrKzsKIAorICAgICAgaWYgKChyYW5nZV90eXBlICYgU1VCQVJSQVlfU1RS SURFKSA9PSBTVUJBUlJBWV9TVFJJREUpCisJYXJncysrOworCiAgICAgICBi cmVhazsKIAogICAgIGRlZmF1bHQ6CmRpZmYgLS1naXQgYS9nZGIvdmFsb3Bz LmMgYi9nZGIvdmFsb3BzLmMKaW5kZXggODE3YTRjZi4uZmJjN2RjYiAxMDA2 NDQKLS0tIGEvZ2RiL3ZhbG9wcy5jCisrKyBiL2dkYi92YWxvcHMuYwpAQCAt MzgzNCw3ICszODM0LDcgQEAgdmFsdWVfc2xpY2VfMSAoc3RydWN0IHZhbHVl ICphcnJheSwgaW50IGxvd2JvdW5kLCBpbnQgbGVuZ3RoLCBpbnQgY2FsbF9j b3VudCkKICAgaWYgKGNhbGxfY291bnQgPT0gMSkKICAgICB7CiAgICAgICBy YW5nZV90eXBlID0gVFlQRV9JTkRFWF9UWVBFIChhcnJheV90eXBlKTsKLSAg ICAgIHNsaWNlX3JhbmdlX3NpemUgPSBlbGVtX2NvdW50OworICAgICAgc2xp Y2VfcmFuZ2Vfc2l6ZSA9IGFyeV9sb3dfYm91bmQgKyBlbGVtX2NvdW50IC0g MTsKIAogICAgICAgLyogQ2hlY2sgaWYgdGhlIGFycmF5IGJvdW5kcyBhcmUg dmFsaWQuICAqLwogICAgICAgaWYgKGdldF9kaXNjcmV0ZV9ib3VuZHMgKHJh bmdlX3R5cGUsICZhcnlfbG93X2JvdW5kLCAmYXJ5X2hpZ2hfYm91bmQpIDwg MCkKQEAgLTM4NDYsNyArMzg0Niw3IEBAIHZhbHVlX3NsaWNlXzEgKHN0cnVj dCB2YWx1ZSAqYXJyYXksIGludCBsb3dib3VuZCwgaW50IGxlbmd0aCwgaW50 IGNhbGxfY291bnQpCiAgIGVsc2UKICAgICB7CiAgICAgICByYW5nZV90eXBl ID0gVFlQRV9JTkRFWF9UWVBFIChUWVBFX1RBUkdFVF9UWVBFIChhcnJheV90 eXBlKSk7Ci0gICAgICBzbGljZV9yYW5nZV9zaXplID0gKGFyeV9sb3dfYm91 bmQgKyByb3dfY291bnQgLSAxKSAqIChlbGVtX2NvdW50KTsKKyAgICAgIHNs aWNlX3JhbmdlX3NpemUgPSBhcnlfbG93X2JvdW5kICsgKHJvd19jb3VudCAq IGVsZW1fY291bnQpIC0gMTsKICAgICAgIGFyeV9sb3dfYm91bmQgPSBUWVBF X0xPV19CT1VORCAocmFuZ2VfdHlwZSk7CiAgICAgfQogCi0tIAoyLjUuNQoK --_007_1E04C56C2A492B449743D653DD4A15BC3BC4C94CIRSMSX102gercor_ Content-Type: application/octet-stream; name="0005-fortran-calculate-elements-of-a-subarray-using-a-pro.patch" Content-Description: 0005-fortran-calculate-elements-of-a-subarray-using-a-pro.patch Content-Disposition: attachment; filename="0005-fortran-calculate-elements-of-a-subarray-using-a-pro.patch"; size=13915; creation-date="Fri, 01 Jul 2016 12:59:57 GMT"; modification-date="Fri, 01 Jul 2016 12:55:48 GMT" Content-Transfer-Encoding: base64 Content-length: 18866 RnJvbSAxMTg5MDk4YzNjYWNjMmVlNjkwMjFkZTFhODNhZDMzMjg4MjFkNzU1 IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBDaHJpc3RvcGggV2Vp bm1hbm4gPGNocmlzdG9waC50LndlaW5tYW5uQGludGVsLmNvbT4KRGF0ZTog V2VkLCAxIEp1biAyMDE2IDE1OjA0OjAxICswMjAwClN1YmplY3Q6IFtQQVRD SCA1LzZdIGZvcnRyYW46IGNhbGN1bGF0ZSBlbGVtZW50cyBvZiBhIHN1YmFy cmF5IHVzaW5nIGEKIHByb3ZpZGVkIHN0cmlkZSB2YWx1ZQoKVGhlIHN0cmlk ZSB2YWx1ZSBjYW4gYmUgYSBwb3NpdGl2ZSBvciBuZWdhdGl2ZSBpbnRlZ2Vy LCBidXQgbWF5Cm5vdCBiZSB6ZXJvLiAgSWYgbm8gc3RyaWRlIGlzIHByb3Zp ZGVkLCB1c2UgdGhlIGRlZmF1bHQgdmFsdWUKMSB0byBwcmludCBhbGwgZWxl bWVudHMgaW5zaWRlIHRoZSByYW5nZS4KCjF8IHByb2dyYW0gcHJvZwoyfCAg IGludGVnZXIgOjogYXJ5KDEwKSA9ICgvIChpLCBpPTEsIDEwKSAvKQozfCBl bmQgcHJvZ3JhbSBwcm9nCgooZ2RiKSBwcmludCBhcnkoMToxMDoyKQokMyA9 ICgxLCAzLCA1LCA3LCA5KQoKMjAxMy0xMS0yNyAgQ2hyaXN0b3BoIFdlaW5t YW5uICA8Y2hyaXN0b3BoLnQud2Vpbm1hbm4+CgoJKiBldmFsLmMgKHZhbHVl X2Y5MF9zdWJhcnJheSk6IEFkZCByYW5nZSBzaXplIGNhbGN1bGF0aW9uCglm b3Igc3RyaWRlIGJhc2VkIHJhbmdlcywgYW5kIGV2YWx1YXRpb24gb2YgdXNl ciBzdHJpZGUKCXBhcmFtZXRlcnMuICBBZGQgY2hlY2sgZm9yIG1hdGNoaW5n IHVzZXIgaW5wdXQgdG8gYXJyYXkKCWJvdW5kcy4KCSogdmFsb3BzLmMgKHZh bHVlX3NsaWNlKTogQWRkIGNhbGwgcGFyYW1ldGVyIHdpdGggZGVmYXVsdAoJ c3RyaWRlIHZhbHVlIGZvciBjYWxsaW5nIHZhbHVlX3NsaWNlXzEuCgkqIHZh bG9wcy5jICh2YWx1ZV9zbGljZV8xKTogQWRkIGZ1bmN0aW9uIHBhcmFtZXRl ciBmb3IKCXN0cmlkZSBsZW5ndGggaW4gdGhlIHJldHVybiBzdWJhcnJheS4g IENhbGN1bGF0ZSBhcnJheQoJZWxlbWVudHMgYmFzZWQgb24gc3RyaWRlIHZh bHVlLgoJKiB2YWx1ZS5oOiBBZGQgc3RyaWRlIHBhcmFtZXRlciB0byBkZWNs YXJhdGlvbiBvZgoJdmFsdWVfc2xpY2VfMS4KCgpTaWduZWQtb2ZmLWJ5OiBD aHJpc3RvcGggV2Vpbm1hbm4gPGNocmlzdG9waC50LndlaW5tYW5uQGludGVs LmNvbT4KLS0tCiBnZGIvZXZhbC5jICAgfCAxMDIgKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0K IGdkYi92YWxvcHMuYyB8ICA4MyArKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrKy0tLS0tLS0tLS0tLS0KIGdkYi92YWx1ZS5oICB8ICAgMiAr LQogMyBmaWxlcyBjaGFuZ2VkLCAxNDUgaW5zZXJ0aW9ucygrKSwgNDIgZGVs ZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZ2RiL2V2YWwuYyBiL2dkYi9ldmFs LmMKaW5kZXggYjVhYWYxYy4uMWYyN2I2ZiAxMDA2NDQKLS0tIGEvZ2RiL2V2 YWwuYworKysgYi9nZGIvZXZhbC5jCkBAIC00NzcsNyArNDc3LDcgQEAgdmFs dWVfZjkwX3N1YmFycmF5IChzdHJ1Y3QgdmFsdWUgKmFycmF5LCBzdHJ1Y3Qg ZXhwcmVzc2lvbiAqZXhwLAogCSAgcmFuZ2UgPSAmaW5kZXgtPlUucmFuZ2U7 CiAKIAkgICpwb3MgKz0gMzsKLQkgIHJhbmdlLT5mOTBfcmFuZ2VfdHlwZSA9 IChlbnVtIHJhbmdlX3R5cGUpIGxvbmdlc3RfdG9faW50IChleHAtPmVsdHNb cGNdLmxvbmdjb25zdCk7CisJICByYW5nZS0+ZjkwX3JhbmdlX3R5cGUgPSAo ZW51bSByYW5nZV90eXBlKSBleHAtPmVsdHNbcGNdLmxvbmdjb25zdDsKIAog CSAgLyogSWYgYSBsb3dlciBib3VuZCB3YXMgcHJvdmlkZWQgYnkgdGhlIHVz ZXIsIHRoZSBiaXQgaGFzIGJlZW4KIAkgICAgIHNldCBhbmQgd2UgY2FuIGFz c2lnbiB0aGUgdmFsdWUgZnJvbSB0aGUgZWx0IHN0YWNrLiAgU2FtZSBmb3IK QEAgLTQ5OSw2ICs0OTksMTAgQEAgdmFsdWVfZjkwX3N1YmFycmF5IChzdHJ1 Y3QgdmFsdWUgKmFycmF5LCBzdHJ1Y3QgZXhwcmVzc2lvbiAqZXhwLAogCSAg LyogQXNzaWduIHRoZSBkZWZhdWx0IHN0cmlkZSB2YWx1ZSAnMScuICAqLwog CSAgZWxzZQogCSAgICByYW5nZS0+c3RyaWRlID0gMTsKKworCSAgLyogQ2hl Y2sgdGhlIHByb3ZpZGVkIHN0cmlkZSB2YWx1ZSBpcyBpbGxlZ2FsLCBha2Eg JzAnLiAgKi8KKwkgIGlmIChyYW5nZS0+c3RyaWRlID09IDApCisJICAgIGVy cm9yIChfKCJTdHJpZGUgbXVzdCBub3QgYmUgMCIpKTsKIAl9CiAgICAgICAv KiBVc2VyIGlucHV0IGlzIGFuIGluZGV4LiAgRS5nLjogInAgYXJyeSg1KSIu ICAqLwogICAgICAgZWxzZQpAQCAtNTE1LDEwICs1MTksOCBAQCB2YWx1ZV9m OTBfc3ViYXJyYXkgKHN0cnVjdCB2YWx1ZSAqYXJyYXksIHN0cnVjdCBleHBy ZXNzaW9uICpleHAsCiAKICAgICB9CiAKLSAgLyogVHJhdmVyc2UgdGhlIGFy cmF5IGZyb20gcmlnaHQgdG8gbGVmdCBhbmQgZXZhbHVhdGUgZWFjaCBjb3Jy ZXNwb25kaW5nCi0gICAgIHVzZXIgaW5wdXQuICBWQUxVRV9TVUJTQ1JJUFQg aXMgY2FsbGVkIGZvciBldmVyeSBpbmRleCwgdW50aWwgYSByYW5nZQotICAg ICBleHByZXNzaW9uIGlzIGV2YWx1YXRlZC4gIEFmdGVyIGEgcmFuZ2UgZXhw cmVzc2lvbiBoYXMgYmVlbiBldmFsdWF0ZWQsCi0gICAgIGV2ZXJ5IHN1YnNl cXVlbnQgZXhwcmVzc2lvbiBpcyBhbHNvIHRyZWF0ZWQgYXMgYSByYW5nZS4g ICovCisgIC8qIFRyYXZlcnNlIHRoZSBhcnJheSBmcm9tIHJpZ2h0IHRvIGxl ZnQgYW5kIHNldCB0aGUgaGlnaCBhbmQgbG93IGJvdW5kcworICAgICBmb3Ig bGF0ZXIgdXNlLiAgKi8KICAgZm9yIChpID0gbmFyZ3MgLSAxOyBpID49IDA7 IGktLSkKICAgICB7CiAgICAgICBzdHJ1Y3Qgc3Vic2NyaXB0X3N0b3JlICpp bmRleCA9ICZzdWJzY3JpcHRfYXJyYXlbaV07CkBAIC01NTEsNiArNTUzLDQ4 IEBAIHZhbHVlX2Y5MF9zdWJhcnJheSAoc3RydWN0IHZhbHVlICphcnJheSwg c3RydWN0IGV4cHJlc3Npb24gKmV4cCwKIAkJfHwgcmFuZ2UtPmhpZ2ggPiBU WVBFX0hJR0hfQk9VTkQgKGluZGV4X3R5cGUpKQogCSAgICAgIGVycm9yIChf KCJwcm92aWRlZCBib3VuZChzKSBvdXRzaWRlIGFycmF5IGJvdW5kKHMpIikp OwogCisJICAgIC8qIEZvciBhIG5lZ2F0aXZlIHN0cmlkZSB0aGUgbG93ZXIg Ym91bmRhcnkgbXVzdCBiZSBsYXJnZXIgdGhhbiB0aGUKKwkgICAgICAgdXBw ZXIgYm91bmRhcnkuCisJICAgICAgIEZvciBhIHBvc2l0aXZlIHN0cmlkZSB0 aGUgbG93ZXIgYm91bmRhcnkgbXVzdCBiZSBzbWFsbGVyIHRoYW4gdGhlCisJ ICAgICAgIHVwcGVyIGJvdW5kYXJ5LiAgKi8KKwkgICAgaWYgKChyYW5nZS0+ c3RyaWRlIDwgMCAmJiByYW5nZS0+bG93IDwgcmFuZ2UtPmhpZ2gpCisJCXx8 IChyYW5nZS0+c3RyaWRlID4gMCAmJiByYW5nZS0+bG93ID4gcmFuZ2UtPmhp Z2gpKQorCSAgICAgIGVycm9yIChfKCJXcm9uZyB2YWx1ZSBwcm92aWRlZCBm b3Igc3RyaWRlIGFuZCBib3VuZGFyaWVzIikpOworCisJICB9CisJICBicmVh azsKKworCWNhc2UgU1VCU0NSSVBUX0lOREVYOgorCSAgYnJlYWs7CisKKwl9 CisKKyAgICAgICBhcnJheV90eXBlID0gVFlQRV9UQVJHRVRfVFlQRSAoYXJy YXlfdHlwZSk7CisgICAgfQorCisgIC8qIFJlc2V0IEFSUkFZX1RZUEUgYmVm b3JlIHNsaWNpbmcuKi8KKyAgYXJyYXlfdHlwZSA9IGNoZWNrX3R5cGVkZWYg KHZhbHVlX3R5cGUgKG5ld19hcnJheSkpOworCisgIC8qIFRyYXZlcnNlIHRo ZSBhcnJheSBmcm9tIHJpZ2h0IHRvIGxlZnQgYW5kIGV2YWx1YXRlIGVhY2gg Y29ycmVzcG9uZGluZworICAgICB1c2VyIGlucHV0LiAgVkFMVUVfU1VCU0NS SVBUIGlzIGNhbGxlZCBmb3IgZXZlcnkgaW5kZXgsIHVudGlsIGEgcmFuZ2UK KyAgICAgZXhwcmVzc2lvbiBpcyBldmFsdWF0ZWQuICBBZnRlciBhIHJhbmdl IGV4cHJlc3Npb24gaGFzIGJlZW4gZXZhbHVhdGVkLAorICAgICBldmVyeSBz dWJzZXF1ZW50IGV4cHJlc3Npb24gaXMgYWxzbyB0cmVhdGVkIGFzIGEgcmFu Z2UuICAqLworICBmb3IgKGkgPSBuYXJncyAtIDE7IGkgPj0gMDsgaS0tKQor ICAgIHsKKyAgICAgIHN0cnVjdCBzdWJzY3JpcHRfc3RvcmUgKmluZGV4ID0g JnN1YnNjcmlwdF9hcnJheVtpXTsKKyAgICAgIHN0cnVjdCB0eXBlICppbmRl eF90eXBlID0gVFlQRV9JTkRFWF9UWVBFIChhcnJheV90eXBlKTsKKworICAg ICAgc3dpdGNoIChpbmRleC0+a2luZCkKKwl7CisJY2FzZSBTVUJTQ1JJUFRf UkFOR0U6CisJICB7CisKKwkgICAgLyogV2hlbiB3ZSBoaXQgdGhlIGZpcnN0 IHJhbmdlIHNwZWNpZmllZCBieSB0aGUgdXNlciwgd2UgbXVzdAorCSAgICAg ICB0cmVhdCBhbnkgc3Vic2VxdWVudCB1c2VyIGVudHJ5IGFzIGEgcmFuZ2Uu ICBXZSBzaW1wbHkKKwkgICAgICAgaW5jcmVtZW50IERJTV9DT1VOVCB3aGlj aCB0ZWxscyB1cyBob3cgbWFueSB0aW1lcyB3ZSBhcmUKKwkgICAgICAgY2Fs bGluZyBWQUxVRV9TTElDRV8xLiAgKi8KKwkgICAgc3Vic2NyaXB0X3Jhbmdl ICpyYW5nZSA9ICZpbmRleC0+VS5yYW5nZTsKKwogCSAgICAvKiBESU1fQ09V TlQgY291bnRzIGV2ZXJ5IHVzZXIgYXJndW1lbnQgdGhhdCBpcyB0cmVhdGVk IGFzIGEgcmFuZ2UuCiAJICAgICAgIFRoaXMgaXMgbmVjZXNzYXJ5IGZvciBl eHByZXNzaW9ucyBsaWtlICdwcmludCBhcnJheSg3LCA4OjkpLgogCSAgICAg ICBIZXJlIHRoZSBmaXJzdCBhcmd1bWVudCBpcyBhIGxpdGVyYWwsIGJ1dCBt dXN0IGJlIHRyZWF0ZWQgYXMgYQpAQCAtNTU4LDEwICs2MDIsOSBAQCB2YWx1 ZV9mOTBfc3ViYXJyYXkgKHN0cnVjdCB2YWx1ZSAqYXJyYXksIHN0cnVjdCBl eHByZXNzaW9uICpleHAsCiAJICAgIGRpbV9jb3VudCsrOwogCiAJICAgIG5l d19hcnJheQotCSAgICAgID0gdmFsdWVfc2xpY2VfMSAobmV3X2FycmF5LAot CQkJICAgICAgIGxvbmdlc3RfdG9faW50IChyYW5nZS0+bG93KSwKLQkJCSAg ICAgICBsb25nZXN0X3RvX2ludCAocmFuZ2UtPmhpZ2ggLSByYW5nZS0+bG93 ICsgMSksCi0JCQkgICAgICAgZGltX2NvdW50KTsKKwkgICAgICA9IHZhbHVl X3NsaWNlXzEgKG5ld19hcnJheSwgcmFuZ2UtPmxvdywKKwkJCSAgICAgICBy YW5nZS0+aGlnaCAtIHJhbmdlLT5sb3cgKyAxLAorCQkJICAgICAgIHJhbmdl LT5zdHJpZGUsIGRpbV9jb3VudCk7CiAJICB9CiAJICBicmVhazsKIApAQCAt NTgwLDIxICs2MjMsMzIgQEAgdmFsdWVfZjkwX3N1YmFycmF5IChzdHJ1Y3Qg dmFsdWUgKmFycmF5LCBzdHJ1Y3QgZXhwcmVzc2lvbiAqZXhwLAogCQkJCQkJ CQkgIChuZXdfYXJyYXkpKSk7CiAJICAgIGVsc2UKIAkgICAgICB7Ci0JCS8q IENoZWNrIGZvciB2YWxpZCBpbmRleCBpbnB1dC4gICovCisJCWRpbV9jb3Vu dCsrOworCisJCS8qIFdlIG1pZ2h0IGVuZCB1cCBoZXJlLCBiZWNhdXNlIHdl IGhhdmUgdG8gdHJlYXQgdGhlIHByb3ZpZGVkCisJCSAgIGluZGV4IGxpa2Ug YSByYW5nZS4gQnV0IG5vdyBWQUxVRV9TVUJTQ1JJUFRFRF9SVkFMVUUKKwkJ ICAgY2Fubm90IGRvIHRoZSByYW5nZSBjaGVja3MgZm9yIHVzLiBTbyB3ZSBo YXZlIHRvIG1ha2Ugc3VyZQorCQkgICBvdXJzZWx2ZXMgdGhhdCB0aGUgdXNl ciBwcm92aWRlZCBpbmRleCBpcyBpbnNpZGUgdGhlCisJCSAgIGFycmF5IGJv dW5kcy4gIFRocm93IGFuIGVycm9yIGlmIG5vdC4gICovCiAJCWlmIChpbmRl eC0+VS5udW1iZXIgPCBUWVBFX0xPV19CT1VORCAoaW5kZXhfdHlwZSkKLQkJ ICAgIHx8IGluZGV4LT5VLm51bWJlciA+IFRZUEVfSElHSF9CT1VORCAoaW5k ZXhfdHlwZSkpCi0JCSAgZXJyb3IgKF8oImVycm9yIG5vIHN1Y2ggdmVjdG9y IGVsZW1lbnQiKSk7CisJCSAgICAmJiBpbmRleC0+VS5udW1iZXIgPiBUWVBF X0hJR0hfQk9VTkQgKGluZGV4X3R5cGUpKQorCQkgIGVycm9yIChfKCJwcm92 aWRlZCBib3VuZChzKSBvdXRzaWRlIGFycmF5IGJvdW5kKHMpIikpOworCisJ CWlmIChpbmRleC0+VS5udW1iZXIgPiBUWVBFX0xPV19CT1VORCAoaW5kZXhf dHlwZSkKKwkJICAgICYmIGluZGV4LT5VLm51bWJlciA+IFRZUEVfSElHSF9C T1VORCAoaW5kZXhfdHlwZSkpCisJCSAgZXJyb3IgKF8oInByb3ZpZGVkIGJv dW5kKHMpIG91dHNpZGUgYXJyYXkgYm91bmQocykiKSk7CiAKLQkJZGltX2Nv dW50Kys7CiAJCW5ld19hcnJheSA9IHZhbHVlX3NsaWNlXzEgKG5ld19hcnJh eSwKLQkJCQkJICAgbG9uZ2VzdF90b19pbnQgKGluZGV4LT5VLm51bWJlciks Ci0JCQkJCSAgIDEsIC8qIGxlbmd0aCBpcyAnMScgZWxlbWVudCAgKi8KKwkJ CQkJICAgaW5kZXgtPlUubnVtYmVyLAorCQkJCQkgICAxLCAvKiBDT1VOVCBp cyAnMScgZWxlbWVudCAgKi8KKwkJCQkJICAgMSwgLyogU1RSSURFIHNldCB0 byAnMScgICovCiAJCQkJCSAgIGRpbV9jb3VudCk7CiAJICAgICAgfQogCiAJ ICB9CiAJICBicmVhazsKIAl9CisgICAgICBhcnJheV90eXBlID0gVFlQRV9U QVJHRVRfVFlQRSAoYXJyYXlfdHlwZSk7CiAgICAgfQogCiAgIC8qIFdpdGgg RElNX0NPVU5UID4gMSB3ZSBjdXJyZW50bHkgaGF2ZSBhIG9uZSBkaW1lbnNp b25hbCBhcnJheSwgYnV0IGV4cGVjdApAQCAtNjIwLDcgKzY3NCw5IEBAIHZh bHVlX2Y5MF9zdWJhcnJheSAoc3RydWN0IHZhbHVlICphcnJheSwgc3RydWN0 IGV4cHJlc3Npb24gKmV4cCwKIAkgdGhlIG91dHB1dCBhcnJheS4gIFNvIHdl IHRyYXZlcnNlIHRoZSBTVUJTQ1JJUFRfQVJSQVkgYWdhaW4sIGxvb2tpbmcK IAkgZm9yIGEgcmFuZ2UgZW50cnkuICBXaGVuIHdlIGZpbmQgb25lLCB3ZSB1 c2UgdGhlIHJhbmdlIGluZm8gdG8gY3JlYXRlCiAJIGFuIGFkZGl0aW9uYWwg cmFuZ2VfdHlwZSB0byBzZXQgdGhlIGNvcnJlY3QgYm91bmRzIGFuZCBkaW1l bnNpb25zIGZvcgotCSB0aGUgb3V0cHV0IGFycmF5LiAgKi8KKwkgdGhlIG91 dHB1dCBhcnJheS4gIEluIGFkZGl0aW9uLCB3ZSBtYXkgaGF2ZSBhIHN0cmlk ZSB2YWx1ZSB0aGF0IGlzIG5vdAorCSAnMScsIGZvcmNpbmcgdXMgdG8gYWRq dXN0IHRoZSBudW1iZXIgb2YgZWxlbWVudHMgaW4gYSByYW5nZSwgYWNjb3Jk aW5nCisJIHRvIHRoZSBzdHJpZGUgdmFsdWUuICAqLwogICAgICAgZm9yIChp ID0gMDsgaSA8IG5hcmdzOyBpKyspCiAJewogCSAgc3RydWN0IHN1YnNjcmlw dF9zdG9yZSAqaW5kZXggPSAmc3Vic2NyaXB0X2FycmF5W2ldOwpAQCAtNjI5 LDEyICs2ODUsMjAgQEAgdmFsdWVfZjkwX3N1YmFycmF5IChzdHJ1Y3QgdmFs dWUgKmFycmF5LCBzdHJ1Y3QgZXhwcmVzc2lvbiAqZXhwLAogCSAgICB7CiAJ ICAgICAgc3RydWN0IHR5cGUgKnJhbmdlX3R5cGUsICppbnRlcmltX2FycmF5 X3R5cGU7CiAKKwkgICAgICBpbnQgbmV3X2xlbmd0aDsKKworCSAgICAgIC8q IFRoZSBsZW5ndGggb2YgYSBzdWItZGltZW5zaW9uIHdpdGggYWxsIGVsZW1l bnRzIGJldHdlZW4gdGhlCisJCSBib3VuZHMgcGx1cyB0aGUgc3RhcnQgZWxl bWVudCBpdHNlbGYuICBJdCBtYXkgYmUgbW9kaWZpZWQgYnkKKwkJIGEgdXNl ciBwcm92aWRlZCBzdHJpZGUgdmFsdWUuICAqLworCSAgICAgIG5ld19sZW5n dGggPSBpbmRleC0+VS5yYW5nZS5oaWdoIC0gaW5kZXgtPlUucmFuZ2UubG93 OworCisJICAgICAgbmV3X2xlbmd0aCAvPSBpbmRleC0+VS5yYW5nZS5zdHJp ZGU7CisKIAkgICAgICByYW5nZV90eXBlCiAJCT0gY3JlYXRlX3N0YXRpY19y YW5nZV90eXBlIChOVUxMLAogCQkJCQkgICAgZWx0X3R5cGUsCi0JCQkJCSAg ICAxLAotCQkJCQkgICAgaW5kZXgtPlUucmFuZ2UuaGlnaAotCQkJCQkgICAg ICAtIGluZGV4LT5VLnJhbmdlLmxvdyArIDEpOworCQkJCQkgICAgaW5kZXgt PlUucmFuZ2UubG93LAorCQkJCQkgICAgaW5kZXgtPlUucmFuZ2UubG93ICsg bmV3X2xlbmd0aCk7CiAKIAkgICAgICBpbnRlcmltX2FycmF5X3R5cGUgPSBj cmVhdGVfYXJyYXlfdHlwZSAoTlVMTCwKIAkJCQkJCSAgICAgIGVsdF90eXBl LApkaWZmIC0tZ2l0IGEvZ2RiL3ZhbG9wcy5jIGIvZ2RiL3ZhbG9wcy5jCmlu ZGV4IGZiYzdkY2IuLmRlZDhlZmMgMTAwNjQ0Ci0tLSBhL2dkYi92YWxvcHMu YworKysgYi9nZGIvdmFsb3BzLmMKQEAgLTM3NjYsMTAgKzM3NjYsMTMgQEAg dmFsdWVfb2ZfdGhpc19zaWxlbnQgKGNvbnN0IHN0cnVjdCBsYW5ndWFnZV9k ZWZuICpsYW5nKQogc3RydWN0IHZhbHVlICoKIHZhbHVlX3NsaWNlIChzdHJ1 Y3QgdmFsdWUgKmFycmF5LCBpbnQgbG93Ym91bmQsIGludCBsZW5ndGgpCiB7 Ci0gIC8qIFBhc3MgdW5hbHRlcmVkIGFyZ3VtZW50cyB0byBWQUxVRV9TTElD RV8xLCBwbHVzIGEgQ0FMTF9DT1VOVCBvZiAnMScgYXMgd2UKLSAgICAgYXJl IG9ubHkgY29uc2lkZXJpbmcgdGhlIGhpZ2hlc3QgZGltZW5zaW9uLCBvciB3 ZSBhcmUgd29ya2luZyBvbiBhIG9uZQotICAgICBkaW1lbnNpb25hbCBhcnJh eS4gIFNvIHdlIGNhbGwgVkFMVUVfU0xJQ0VfMSBleGFjdGx5IG9uY2UuICAq LwotICByZXR1cm4gdmFsdWVfc2xpY2VfMSAoYXJyYXksIGxvd2JvdW5kLCBs ZW5ndGgsIDEpOworICAvKiBQYXNzIHVuYWx0ZXJlZCBhcmd1bWVudHMgdG8g VkFMVUVfU0xJQ0VfMSwgcGx1cyBhIGRlZmF1bHQgc3RyaWRlCisgICAgIHZh bHVlIG9mICcxJywgd2hpY2ggcmV0dXJucyBldmVyeSBlbGVtZW50IGJldHdl ZW4gTE9XQk9VTkQgYW5kCisgICAgIChMT1dCT1VORCArIExFTkdUSCkuICBX ZSBhbHNvIHByb3ZpZGUgYSBkZWZhdWx0IENBTExfQ09VTlQgb2YgJzEnCisg ICAgIGFzIHdlIGFyZSBvbmx5IGNvbnNpZGVyaW5nIHRoZSBoaWdoZXN0IGRp bWVuc2lvbiwgb3Igd2UgYXJlCisgICAgIHdvcmtpbmcgb24gYSBvbmUgZGlt ZW5zaW9uYWwgYXJyYXkuICBTbyB3ZSBjYWxsIFZBTFVFX1NMSUNFXzEKKyAg ICAgZXhhY3RseSBvbmNlLiAgKi8KKyAgcmV0dXJuIHZhbHVlX3NsaWNlXzEg KGFycmF5LCBsb3dib3VuZCwgbGVuZ3RoLCAxLCAxKTsKIH0KIAogLyogVkFM VUVfU0xJQ0VfMSBpcyBjYWxsZWQgZm9yIGVhY2ggYXJyYXkgZGltZW5zaW9u IHRvIGNhbGN1bGF0ZSB0aGUgbnVtYmVyCkBAIC0zNzg1LDcgKzM3ODgsOCBA QCB2YWx1ZV9zbGljZSAoc3RydWN0IHZhbHVlICphcnJheSwgaW50IGxvd2Jv dW5kLCBpbnQgbGVuZ3RoKQogICAgcmFuZ2VzIGluIHRoZSBjYWxsaW5nIGZ1 bmN0aW9uLiAgKi8KIAogc3RydWN0IHZhbHVlICoKLXZhbHVlX3NsaWNlXzEg KHN0cnVjdCB2YWx1ZSAqYXJyYXksIGludCBsb3dib3VuZCwgaW50IGxlbmd0 aCwgaW50IGNhbGxfY291bnQpCit2YWx1ZV9zbGljZV8xIChzdHJ1Y3QgdmFs dWUgKmFycmF5LCBpbnQgbG93Ym91bmQsIGludCBsZW5ndGgsCisJICAgICAg IGludCBzdHJpZGVfbGVuZ3RoLCBpbnQgY2FsbF9jb3VudCkKIHsKICAgc3Ry dWN0IHR5cGUgKnNsaWNlX3JhbmdlX3R5cGUsICpzbGljZV90eXBlLCAqcmFu Z2VfdHlwZTsKICAgc3RydWN0IHR5cGUgKmFycmF5X3R5cGUgPSBjaGVja190 eXBlZGVmICh2YWx1ZV90eXBlIChhcnJheSkpOwpAQCAtMzgwOCwxNCArMzgx MiwyNCBAQCB2YWx1ZV9zbGljZV8xIChzdHJ1Y3QgdmFsdWUgKmFycmF5LCBp bnQgbG93Ym91bmQsIGludCBsZW5ndGgsIGludCBjYWxsX2NvdW50KQogICAg ICBhdHRyaWJ1dGVzIG9mIHRoZSB1bmRlcmx5aW5nIHR5cGUuICAqLwogICBp ZiAoY2FsbF9jb3VudCA+IDEpCiAgICAgeworICAgICAgYXJ5X2xvd19ib3Vu ZCA9IFRZUEVfTE9XX0JPVU5EIChUWVBFX0lOREVYX1RZUEUgKGVsdF90eXBl KSk7CisgICAgICBhcnlfaGlnaF9ib3VuZCA9IFRZUEVfSElHSF9CT1VORCAo VFlQRV9JTkRFWF9UWVBFIChlbHRfdHlwZSkpOwogICAgICAgZWx0X3R5cGUg PSBjaGVja190eXBlZGVmIChUWVBFX1RBUkdFVF9UWVBFIChlbHRfdHlwZSkp OwogICAgICAgcm93X2NvdW50ID0gVFlQRV9MRU5HVEggKGFycmF5X3R5cGUp CiAJCSAgICAvIFRZUEVfTEVOR1RIIChUWVBFX1RBUkdFVF9UWVBFIChhcnJh eV90eXBlKSk7CiAgICAgfQogCi0gIGVsZW1fY291bnQgPSBsZW5ndGg7Cisg IC8qIFdpdGggYSBzdHJpZGUgb2YgJzEnLCB0aGUgbnVtYmVyIG9mIGVsZW1l bnRzIHBlciByZXN1bHQgcm93IGlzIGVxdWFsIHRvCisgICAgIHRoZSBMRU5H VEggb2YgdGhlIHN1YmFycmF5LiAgV2l0aCBub24tZGVmYXVsdCBzdHJpZGUg dmFsdWVzLCB3ZSBza2lwCisgICAgIGVsZW1lbnRzLCBidXQgaGF2ZSB0byBh ZGQgdGhlIHN0YXJ0IGVsZW1lbnQgdG8gdGhlIHRvdGFsIG51bWJlciBvZgor ICAgICBlbGVtZW50cyBwZXIgcm93LiAgKi8KKyAgaWYgKHN0cmlkZV9sZW5n dGggPT0gMSkKKyAgICBlbGVtX2NvdW50ID0gbGVuZ3RoOworICBlbHNlCisg ICAgZWxlbV9jb3VudCA9ICgobGVuZ3RoIC0gMSkgLyBzdHJpZGVfbGVuZ3Ro KSArIDE7CisKICAgZWx0X3NpemUgPSBUWVBFX0xFTkdUSCAoZWx0X3R5cGUp OwotICBlbHRfb2ZmcyA9IGxvbmdlc3RfdG9faW50IChsb3dib3VuZCAtIGFy eV9sb3dfYm91bmQpOworICBlbHRfb2ZmcyA9IGxvd2JvdW5kIC0gYXJ5X2xv d19ib3VuZDsKICAgZWx0X3N0cmlkZSA9IFRZUEVfTEVOR1RIIChUWVBFX0lO REVYX1RZUEUgKGFycmF5X3R5cGUpKTsKIAogICBlbHRfb2ZmcyAqPSBlbHRf c2l6ZTsKQEAgLTM4NTgsOCArMzg3Miw5IEBAIHZhbHVlX3NsaWNlXzEgKHN0 cnVjdCB2YWx1ZSAqYXJyYXksIGludCBsb3dib3VuZCwgaW50IGxlbmd0aCwg aW50IGNhbGxfY291bnQpCiAgIHsKICAgICBzdHJ1Y3QgdHlwZSAqZWxlbWVu dF90eXBlOwogCi0gICAgLyogV2hlbiBDQUxMX0NPVU5UIGVxdWFscyAxIHdl IGNhbiB1c2UgdGhlIGxlZ2FjeSBjb2RlIGZvciBzdWJhcnJheXMuICAqLwot ICAgIGlmIChjYWxsX2NvdW50ID09IDEpCisgICAgLyogV2hlbiBib3RoIENB TExfQ09VTlQgYW5kIFNUUklERV9MRU5HVEggZXF1YWwgMSwgd2UgY2FuIHVz ZSB0aGUgbGVnYWN5CisgICAgICAgY29kZSBmb3Igc3ViYXJyYXlzLiAgKi8K KyAgICBpZiAoY2FsbF9jb3VudCA9PSAxICYmIHN0cmlkZV9sZW5ndGggPT0g MSkKICAgICAgIHsKIAllbGVtZW50X3R5cGUgPSBUWVBFX1RBUkdFVF9UWVBF IChhcnJheV90eXBlKTsKIApAQCAtMzg4MCwyOSArMzg5NSw1MyBAQCB2YWx1 ZV9zbGljZV8xIChzdHJ1Y3QgdmFsdWUgKmFycmF5LCBpbnQgbG93Ym91bmQs IGludCBsZW5ndGgsIGludCBjYWxsX2NvdW50KQogCSAgfQogCiAgICAgICB9 Ci0gICAgLyogV2hlbiBDQUxMX0NPVU5UIGlzIGxhcmdlciB0aGFuIDEgd2Ug YXJlIHdvcmtpbmcgb24gYSByYW5nZSBvZiByYW5nZXMuCi0gICAgICAgU28g d2UgY29weSB0aGUgcmVsZXZhbnQgZWxlbWVudHMgaW50byB0aGUgbmV3IGFy cmF5IHdlIHJldHVybi4gICovCisgICAgLyogV2l0aCBhIENBTExfQ09VTlQg b3IgU1RSSURFX0xFTkdUSCBhcmUgZ3JlYXRlciB0aGFuIDEgd2UgYXJlIHdv cmtpbmcKKyAgICAgICBvbiBhIHJhbmdlIG9mIHJhbmdlcy4gIFNvIHdlIGNv cHkgdGhlIHJlbGV2YW50IGVsZW1lbnRzIGludG8gdGhlCisgICAgICAgbmV3 IGFycmF5IHdlIHJldHVybi4gICovCiAgICAgZWxzZQogICAgICAgeworCWlu dCBqLCBvZmZzX3N0b3JlID0gZWx0X29mZnM7CiAJTE9OR0VTVCBkc3Rfb2Zm c2V0ID0gMDsKIAlMT05HRVNUIHNyY19yb3dfbGVuZ3RoID0gVFlQRV9MRU5H VEggKFRZUEVfVEFSR0VUX1RZUEUgKGFycmF5X3R5cGUpKTsKIAotCWVsZW1l bnRfdHlwZSA9IFRZUEVfVEFSR0VUX1RZUEUgKFRZUEVfVEFSR0VUX1RZUEUg KGFycmF5X3R5cGUpKTsKKwlpZiAoY2FsbF9jb3VudCA9PSAxKQorCSAgewor CSAgICAvKiBXaGVuIENBTExfQ09VTlQgaXMgZXF1YWwgdG8gMSB3ZSBhcmUg d29ya2luZyBvbiB0aGUgY3VycmVudCByYW5nZQorCSAgICAgICBhbmQgdXNl IHRoZXNlIGVsZW1lbnRzIGRpcmVjdGx5LiAgKi8KKwkgICAgZWxlbWVudF90 eXBlID0gVFlQRV9UQVJHRVRfVFlQRSAoYXJyYXlfdHlwZSk7CisJICB9CisJ ZWxzZQorCSAgeworCSAgICAvKiBXb3JraW5nIG9uIGFuIGFycmF5IG9mIGFy cmF5cywgdGhlIHR5cGUgb2YgdGhlIGVsZW1lbnRzIGlzIHRoZSB0eXBlCisJ ICAgICAgIG9mIHRoZSBzdWJhcnJheXMnIHR5cGUuICAqLworCSAgICBlbGVt ZW50X3R5cGUgPSBUWVBFX1RBUkdFVF9UWVBFIChUWVBFX1RBUkdFVF9UWVBF IChhcnJheV90eXBlKSk7CisJICB9CisKIAlzbGljZV90eXBlID0gY3JlYXRl X2FycmF5X3R5cGUgKE5VTEwsIGVsZW1lbnRfdHlwZSwgc2xpY2VfcmFuZ2Vf dHlwZSk7CiAKLQlUWVBFX0NPREUgKHNsaWNlX3R5cGUpID0gVFlQRV9DT0RF IChUWVBFX1RBUkdFVF9UWVBFIChhcnJheV90eXBlKSk7CisJIC8qIElmIHdl IGhhdmUgYSBvbmUgZGltZW5zaW9uYWwgYXJyYXksIHdlIGNvcHkgaXRzIFRZ UEVfQ09ERS4gIEZvciBhCisJICAgIG11bHRpIGRpbWVuc2lvbmFsIGFycmF5 IHdlIGNvcHkgdGhlIGVtYmVkZGVkIHR5cGUncyBUWVBFX0NPREUuICAqLwor CWlmIChjYWxsX2NvdW50ID09IDEpCisJICBUWVBFX0NPREUgKHNsaWNlX3R5 cGUpID0gVFlQRV9DT0RFIChhcnJheV90eXBlKTsKKwllbHNlCisJICBUWVBF X0NPREUgKHNsaWNlX3R5cGUpID0gVFlQRV9DT0RFIChUWVBFX1RBUkdFVF9U WVBFIChhcnJheV90eXBlKSk7CiAKIAl2ID0gYWxsb2NhdGVfdmFsdWUgKHNs aWNlX3R5cGUpOwotCWZvciAoaSA9IDA7IGkgPCBsb25nZXN0X3RvX2ludCAo cm93X2NvdW50KTsgaSsrKQorCisJLyogSXRlcmF0ZSB0aHJvdWdoIHRoZSBy b3dzIG9mIHRoZSBvdXRlciBhcnJheSBhbmQgc2V0IHRoZSBuZXcgb2Zmc2V0 CisJICAgZm9yIGVhY2ggcm93LiAgKi8KKwlmb3IgKGkgPSAwOyBpIDwgcm93 X2NvdW50OyBpKyspCiAJICB7Ci0JICAgIC8qIEZldGNoZXMgdGhlIGNvbnRl bnRzIG9mIEFSUkFZIGFuZCBjb3BpZXMgdGhlbSBpbnRvIFYuICAqLwotCSAg ICB2YWx1ZV9jb250ZW50c19jb3B5ICh2LAotCQkJCSBkc3Rfb2Zmc2V0LAot CQkJCSBhcnJheSwKLQkJCQkgZWx0X29mZnMsCi0JCQkJIGVsdF9zaXplICog ZWxlbV9jb3VudCk7Ci0JICAgIGVsdF9vZmZzICs9IHNyY19yb3dfbGVuZ3Ro OwotCSAgICBkc3Rfb2Zmc2V0ICs9IGVsdF9zaXplICogZWxlbV9jb3VudDsK KwkgICAgZWx0X29mZnMgPSBvZmZzX3N0b3JlICsgaSAqIHNyY19yb3dfbGVu Z3RoOworCisJICAgIC8qIEl0ZXJhdGUgdGhyb3VnaCB0aGUgZWxlbWVudHMg aW4gZWFjaCByb3cgdG8gY29weSBvbmx5IHRob3NlLiAgKi8KKwkgICAgZm9y IChqID0gMTsgaiA8PSBlbGVtX2NvdW50OyBqKyspCisJICAgICAgeworCQkv KiBGZXRjaGVzIHRoZSBjb250ZW50cyBvZiBBUlJBWSBhbmQgY29waWVzIHRo ZW0gaW50byBWLiAgKi8KKwkJdmFsdWVfY29udGVudHNfY29weSAodiwgZHN0 X29mZnNldCwgYXJyYXksIGVsdF9vZmZzLCBlbHRfc2l6ZSk7CisJCWVsdF9v ZmZzICs9IGVsdF9zaXplICogc3RyaWRlX2xlbmd0aDsKKwkJZHN0X29mZnNl dCArPSBlbHRfc2l6ZTsKKwkgICAgICB9CiAJICB9CiAgICAgICB9CiAKZGlm ZiAtLWdpdCBhL2dkYi92YWx1ZS5oIGIvZ2RiL3ZhbHVlLmgKaW5kZXggOTU1 ODhhZi4uZTQxNzYzOSAxMDA2NDQKLS0tIGEvZ2RiL3ZhbHVlLmgKKysrIGIv Z2RiL3ZhbHVlLmgKQEAgLTEwNTYsNyArMTA1Niw3IEBAIGV4dGVybiBzdHJ1 Y3QgdmFsdWUgKnZhcnlpbmdfdG9fc2xpY2UgKHN0cnVjdCB2YWx1ZSAqKTsK IAogZXh0ZXJuIHN0cnVjdCB2YWx1ZSAqdmFsdWVfc2xpY2UgKHN0cnVjdCB2 YWx1ZSAqLCBpbnQsIGludCk7CiAKLWV4dGVybiBzdHJ1Y3QgdmFsdWUgKnZh bHVlX3NsaWNlXzEgKHN0cnVjdCB2YWx1ZSAqLCBpbnQsIGludCwgaW50KTsK K2V4dGVybiBzdHJ1Y3QgdmFsdWUgKnZhbHVlX3NsaWNlXzEgKHN0cnVjdCB2 YWx1ZSAqLCBpbnQsIGludCwgaW50LCBpbnQpOwogCiBleHRlcm4gc3RydWN0 IHZhbHVlICp2YWx1ZV9saXRlcmFsX2NvbXBsZXggKHN0cnVjdCB2YWx1ZSAq LCBzdHJ1Y3QgdmFsdWUgKiwKIAkJCQkJICAgIHN0cnVjdCB0eXBlICopOwot LSAKMi41LjUKCg== --_007_1E04C56C2A492B449743D653DD4A15BC3BC4C94CIRSMSX102gercor_ Content-Type: application/octet-stream; name="0006-fortran-test-cases-for-subarray-strides-and-slices.patch" Content-Description: 0006-fortran-test-cases-for-subarray-strides-and-slices.patch Content-Disposition: attachment; filename="0006-fortran-test-cases-for-subarray-strides-and-slices.patch"; size=18712; creation-date="Fri, 01 Jul 2016 12:59:57 GMT"; modification-date="Fri, 01 Jul 2016 12:55:48 GMT" Content-Transfer-Encoding: base64 Content-length: 25368 RnJvbSA5ODJkNTgyZWU3MzhjYmNmMjUyYmE4ZWFiNTlhOTUxNGVkZGE3NWI5 IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBDaHJpc3RvcGggV2Vp bm1hbm4gPGNocmlzdG9waC50LndlaW5tYW5uQGludGVsLmNvbT4KRGF0ZTog V2VkLCA0IERlYyAyMDEzIDExOjQ3OjE1ICswMDAwClN1YmplY3Q6IFtQQVRD SCA2LzZdIGZvcnRyYW46IHRlc3QgY2FzZXMgZm9yIHN1YmFycmF5IHN0cmlk ZXMgYW5kIHNsaWNlcwoKQWRkIHRlc3QgY2FzZXMgZm9yIHN1YmFycmF5IGNy ZWF0aW9uIHdpdGggcmFuZ2UsIGxpdGVyYWwgYW5kCnN0cmlkZSB2YWx1ZSBw ZXJtdXRhdGlvbnMgZm9yIG9uZSwgdHdvLCBhbmQgdGhyZWUgZGltZW5zaW9u YWwKYXJyYXlzLgoKMjAxMy0xMi0wNCAgQ2hyaXN0b3BoIFdlaW5tYW5uICA8 Y2hyaXN0b3BoLnQud2Vpbm1hbm5AaW50ZWwuY29tPgoKdGVzdHN1aXRlL2dk Yi5mb3J0cmFuLwoJKiBzdGF0aWMtYXJyYXlzLmV4cDogTmV3IHRlc3QuCgkq IHN0YXRpYy1hcnJheXMuZjkwOiBOZXcgZmlsZS4KCgpTaWduZWQtb2ZmLWJ5 OiBDaHJpc3RvcGggV2Vpbm1hbm4gPGNocmlzdG9waC50LndlaW5tYW5uQGlu dGVsLmNvbT4KLS0tCiBnZGIvdGVzdHN1aXRlL2dkYi5mb3J0cmFuL3N0YXRp Yy1hcnJheXMuZXhwIHwgNDIxICsrKysrKysrKysrKysrKysrKysrKysrKysr KysKIGdkYi90ZXN0c3VpdGUvZ2RiLmZvcnRyYW4vc3RhdGljLWFycmF5cy5m OTAgfCAgNTUgKysrKwogMiBmaWxlcyBjaGFuZ2VkLCA0NzYgaW5zZXJ0aW9u cygrKQogY3JlYXRlIG1vZGUgMTAwNjQ0IGdkYi90ZXN0c3VpdGUvZ2RiLmZv cnRyYW4vc3RhdGljLWFycmF5cy5leHAKIGNyZWF0ZSBtb2RlIDEwMDY0NCBn ZGIvdGVzdHN1aXRlL2dkYi5mb3J0cmFuL3N0YXRpYy1hcnJheXMuZjkwCgpk aWZmIC0tZ2l0IGEvZ2RiL3Rlc3RzdWl0ZS9nZGIuZm9ydHJhbi9zdGF0aWMt YXJyYXlzLmV4cCBiL2dkYi90ZXN0c3VpdGUvZ2RiLmZvcnRyYW4vc3RhdGlj LWFycmF5cy5leHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw MC4uY2M5ZWNjMAotLS0gL2Rldi9udWxsCisrKyBiL2dkYi90ZXN0c3VpdGUv Z2RiLmZvcnRyYW4vc3RhdGljLWFycmF5cy5leHAKQEAgLTAsMCArMSw0MjEg QEAKKyMgQ29weXJpZ2h0IDIwMTUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9u LCBJbmMuCisjCisjIENvbnRyaWJ1dGVkIGJ5IEludGVsIENvcnAuIDxjaHJp c3RvcGgudC53ZWlubWFubkBpbnRlbC5jb20+CisjCisjIFRoaXMgcHJvZ3Jh bSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBh bmQvb3IgbW9kaWZ5CisjIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05V IEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CisjIHRo ZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDMg b2YgdGhlIExpY2Vuc2UsIG9yCisjIChhdCB5b3VyIG9wdGlvbikgYW55IGxh dGVyIHZlcnNpb24uCisjCisjIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRl ZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorIyBidXQg V0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGll ZCB3YXJyYW50eSBvZgorIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBG T1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisjIEdOVSBHZW5l cmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisjCisjIFlv dSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5l cmFsIFB1YmxpYyBMaWNlbnNlCisjIGFsb25nIHdpdGggdGhpcyBwcm9ncmFt LiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+ LgorCitzdGFuZGFyZF90ZXN0ZmlsZSBzdGF0aWMtYXJyYXlzLmY5MAorCitp ZiB7IFtwcmVwYXJlX2Zvcl90ZXN0aW5nICR0ZXN0ZmlsZS5leHAgJHRlc3Rm aWxlICRzcmNmaWxlIHtkZWJ1ZyBmOTB9XSB9IHsKKyAgICByZXR1cm4gLTEK K30KKworaWYgIVtydW50byBNQUlOX19dIHRoZW4geworICAgIHBlcnJvciAi Y291bGRuJ3QgcnVuIHRvIGJyZWFrcG9pbnQgTUFJTl9fIgorICAgIGNvbnRp bnVlCit9CisKK2dkYl9icmVha3BvaW50IFtnZGJfZ2V0X2xpbmVfbnVtYmVy ICJCUDEiXQorZ2RiX2NvbnRpbnVlX3RvX2JyZWFrcG9pbnQgIkJQMSIgIi4q QlAxLioiCisKKyMgVGVzdHMgc3ViYXJyYXlzIG9mIG9uZSBkaW1lbnNpb25h bCBhcnJheXMgd2l0aCBzdWJyYW5nZSB2YXJpYXRpb25zCitnZGJfdGVzdCAi cHJpbnQgYXIxIiAiXFwkXFswLTlcXSsgPSBcXCgxLCAyLCAzLCA0LCA1LCA2 LCA3LCA4LCA5XFwpIiBcCisJCSJwcmludCBhcjEuIgorZ2RiX3Rlc3QgInBy aW50IGFyMVwoNDo3XCkiICJcXCRcWzAtOVxdKyA9IFxcKDQsIDUsIDYsIDdc XCkiIFwKKwkJInByaW50IGFyMVwoNDo3XCkiCitnZGJfdGVzdCAicHJpbnQg YXIxXCg4OlwpIiAiXFwkXFswLTlcXSsgPSBcXCg4LCA5XFwpLioiIFwKKwkJ InByaW50IGFyMVwoODpcKSIKK2dkYl90ZXN0ICJwcmludCBhcjFcKDozXCki ICJcXCRcWzAtOVxdKyA9IFxcKDEsIDIsIDNcXCkuKiIgXAorCQkicHJpbnQg YXIxXCg6M1wpIgorZ2RiX3Rlc3QgInByaW50IGFyMVwoOlwpIiAiXFwkXFsw LTlcXSsgPSBcXCgxLCAyLCAzLCA0LCA1LCA2LCA3LCA4LCA5XFwpIiBcCisJ CSJwcmludCBhcjFcKDpcKSIKKworIyBDaGVjayBhc3NpZ25tZW50CitnZGJf dGVzdF9ub19vdXRwdXQgInNldCBcJG15X2FyeSA9IGFyMVwoMzo4XCkiCitn ZGJfdGVzdCAicHJpbnQgXCRteV9hcnkiIFwKKwkJIlxcJFxbMC05XF0rID0g XFwoMywgNCwgNSwgNiwgNywgOFxcKSIgXAorCQkiQXNzaWdubWVudCBvZiBz dWJhcnJheSB0byB2YXJpYWJsZSIKK2dkYl90ZXN0X25vX291dHB1dCAic2V0 IGFyMVwoNVwpID0gNDIiCisJCWdkYl90ZXN0ICJwcmludCBhcjFcKDM6OFwp IiBcCisJCSJcXCRcWzAtOVxdKyA9IFxcKDMsIDQsIDQyLCA2LCA3LCA4XFwp IiBcCisJCSJwcmludCBhcjFcKDM6OFwpIGFmdGVyIGFzc2lnbm1lbnQiCitn ZGJfdGVzdCAicHJpbnQgXCRteV9hcnkiIFwKKwkJIlxcJFxbMC05XF0rID0g XFwoMywgNCwgNSwgNiwgNywgOFxcKSIgXAorCQkiQXNzaWdubWVudCBvZiBz dWJhcnJheSB0byB2YXJpYWJsZSBhZnRlciBvcmlnaW5hbCBhcnJheSBjaGFu Z2VkIgorCisjIFRlc3QgZm9yIHN1YmFycmF5cyBvZiBvbmUgZGltZW5zaW9u YWwgYXJyYXlzIHdpdGggbGl0ZXJhbHMKKwkJZ2RiX3Rlc3QgInByaW50IGFy MVwoM1wpIiAiXFwkXFswLTlcXSsgPSAzIiBcCisJCSJwcmludCBhcjFcKDNc KSIKKworIyBUZXN0cyBmb3Igc3VicmFuZ2VzIG9mIDIgZGltZW5zaW9uYWwg YXJyYXlzIHdpdGggc3VicmFuZ2UgdmFyaWF0aW9ucworZ2RiX3Rlc3QgInBy aW50IGFyMlwoMjozLCAzOjRcKSIgXAorCQkiXFwkXFswLTlcXSsgPSBcXChc XCggMjMsIDMzXFwpIFxcKCAyNCwgMzRcXCkgXFwpIiBcCisJCSJwcmludCBh cjJcKDI6MywgMzo0XCkuIgorZ2RiX3Rlc3QgInByaW50IGFyMlwoODo5LDg6 XCkiIFwKKwkJIlxcJFxbMC05XF0rID0gXFwoXFwoIDg4LCA5OFxcKSBcXCgg ODksIDk5XFwpIFxcKSIgXAorCQkicHJpbnQgYXIyXCg4OjksODpcKSIKK2dk Yl90ZXN0ICJwcmludCBhcjJcKDg6OSw6MlwpIiBcCisJCSJcXCRcWzAtOVxd KyA9IFxcKFxcKCA4MSwgOTFcXCkgXFwoIDgyLCA5MlxcKSBcXCkiIFwKKwkJ InByaW50IGFyMlwoODo5LDoyXCkiCisKK2dkYl90ZXN0ICJwcmludCBhcjJc KDg6LDg6OVwpIiBcCisJCSJcXCRcWzAtOVxdKyA9IFxcKFxcKCA4OCwgOThc XCkgXFwoIDg5LCA5OVxcKSBcXCkiIFwKKwkJInByaW50IGFyMlwoODosODo5 XCkiCitnZGJfdGVzdCAicHJpbnQgYXIyXCg4Oiw4OlwpIiBcCisJCSJcXCRc WzAtOVxdKyA9IFxcKFxcKCA4OCwgOThcXCkgXFwoIDg5LCA5OVxcKSBcXCki IFwKKwkJInByaW50IGFyMlwoODosODpcKSIKK2dkYl90ZXN0ICJwcmludCBh cjJcKDg6LDoyXCkiIFwKKwkJIlxcJFxbMC05XF0rID0gXFwoXFwoIDgxLCA5 MVxcKSBcXCggODIsIDkyXFwpIFxcKSIgXAorCQkicHJpbnQgYXIyXCg4Oiw6 MlwpIgorCitnZGJfdGVzdCAicHJpbnQgYXIyXCg6MiwyOjNcKSIgXAorCQki XFwkXFswLTlcXSsgPSBcXChcXCggMTIsIDIyXFwpIFxcKCAxMywgMjNcXCkg XFwpIiBcCisJCSJwcmludCBhcjJcKDoyLDI6M1wpIgorZ2RiX3Rlc3QgInBy aW50IGFyMlwoOjIsODpcKSIgXAorCQkiXFwkXFswLTlcXSsgPSBcXChcXCgg MTgsIDI4XFwpIFxcKCAxOSwgMjlcXCkgXFwpIiBcCisJCSJwcmludCBhcjJc KDoyLDg6XCkiCitnZGJfdGVzdCAicHJpbnQgYXIyXCg6Miw6MlwpIiBcCisJ CSJcXCRcWzAtOVxdKyA9IFxcKFxcKCAxMSwgMjFcXCkgXFwoIDEyLCAyMlxc KSBcXCkiIFwKKwkJInByaW50IGFyMlwoOjIsOjJcKSIKKworIyBUZXN0IHN1 YnJhbmdlcyBvZiAyIGRpbWVuc2lvbmFsIGFycmF5cyB3aXRoIGxpdGVyYWxz IGFuZCBzdWJyYW5nZSB2YXJpYXRpb25zCitnZGJfdGVzdCAicHJpbnQgYXIy XCg3LCAzOjZcKSIgXAorCQkiXFwkXFswLTlcXSsgPSBcXCg3MywgNzQsIDc1 LCA3NlxcKSIgXAorCQkicHJpbnQgYXIyXCg3LCAzOjZcKSIKK2dkYl90ZXN0 ICJwcmludCBhcjJcKDcsODpcKSIgXAorCQkiXFwkXFswLTlcXSsgPSBcXCg3 OCwgNzlcXCkiIFwKKwkJInByaW50IGFyMlwoNyw4OlwpIgorZ2RiX3Rlc3Qg InByaW50IGFyMlwoNyw6MlwpIiBcCisJCSJcXCRcWzAtOVxdKyA9IFxcKDcx LCA3MlxcKSIgXAorCQkicHJpbnQgYXIyXCg3LDoyXCkiCisKK2dkYl90ZXN0 ICJwcmludCBhcjJcKDc6OCw0XCkiIFwKKwkJIlxcJFxbMC05XF0rID0gXFwo NzQsIDg0XFwpIiBcCisJCSJwcmludCBhcjIoNzo4LDRcKSIKK2dkYl90ZXN0 ICJwcmludCBhcjJcKDg6LDRcKSIgXAorCQkiXFwkXFswLTlcXSsgPSBcXCg4 NCwgOTRcXCkiIFwKKwkJInByaW50IGFyMlwoODosNFwpIgorZ2RiX3Rlc3Qg InByaW50IGFyMlwoOjIsNFwpIiBcCisJCSJcXCRcWzAtOVxdKyA9IFxcKDE0 LCAyNFxcKSIgXAorCQkicHJpbnQgYXIyXCg6Miw0XCkiCitnZGJfdGVzdCAi cHJpbnQgYXIyXCgzLDRcKSIgXAorCQkiXFwkXFswLTlcXSsgPSAzNCIgXAor CQkicHJpbnQgYXIyXCgzLDRcKSIKKworIyBUZXN0IHN1YmFycmF5cyBvZiAz IGRpbWVuc2lvbmFsIGFycmF5cyB3aXRoIGxpdGVyYWxzIGFuZCBzdWJyYW5n ZSB2YXJpYXRpb25zCitnZGJfdGVzdCAicHJpbnQgYXIzXCgyOjQsMzo0LDc6 OFwpIiBcCisJCSJcXCRcWzAtOVxdKyA9IFxcKFxcKCBcXCggMjM3LCAzMzcs IDQzN1xcKSBcXCggMjQ3LCAzNDcsIDQ0N1xcKVwKKwkJIFxcKSBcXCggXFwo IDIzOCwgMzM4LCA0MzhcXCkgXFwoIDI0OCwgMzQ4LCA0NDhcXCkgXFwpIFxc KSIgXAorCQkicHJpbnQgYXIzXCgyOjQsMzo0LDc6OFwpIgorZ2RiX3Rlc3Qg InByaW50IGFyM1woMjozLDQ6NSw4OlwpIiBcCisJCSJcXCRcWzAtOVxdKyA9 IFxcKFxcKCBcXCggMjQ4LCAzNDhcXCkgXFwoIDI1OCwgMzU4XFwpIFxcKSBc XChcCisJCSBcXCggMjQ5LCAzNDlcXCkgXFwoIDI1OSwgMzU5XFwpIFxcKSBc XCkiIFwKKwkJInByaW50IGFyM1woMjozLDQ6NSw4OlwpIgorZ2RiX3Rlc3Qg InByaW50IGFyM1woMjozLDQ6NSw6MlwpIiBcCisJCSJcXCRcWzAtOVxdKyA9 IFxcKFxcKCBcXCggMjQxLCAzNDFcXCkgXFwoIDI1MSwgMzUxXFwpIFxcKSBc XChcCisJCSBcXCggMjQyLCAzNDJcXCkgXFwoIDI1MiwgMzUyXFwpIFxcKSBc XCkiIFwKKwkJInByaW50IGFyM1woMjozLDQ6NSw6MlwpIgorCitnZGJfdGVz dCAicHJpbnQgYXIzXCgyOjMsODosNzo4XCkiIFwKKwkJIlxcJFxbMC05XF0r ID0gXFwoXFwoIFxcKCAyODcsIDM4N1xcKSBcXCggMjk3LCAzOTdcXCkgXFwp IFxcKFwKKwkJIFxcKCAyODgsIDM4OFxcKSBcXCggMjk4LCAzOThcXCkgXFwp IFxcKSIgXAorCQkicHJpbnQgYXIzXCgyOjMsODosNzo4XCkiCitnZGJfdGVz dCAicHJpbnQgYXIzXCgyOjMsODosODpcKSIgXAorCQkiXFwkXFswLTlcXSsg PSBcXChcXCggXFwoIDI4OCwgMzg4XFwpIFxcKCAyOTgsIDM5OFxcKSBcXCkg XFwoXAorCQkgXFwoIDI4OSwgMzg5XFwpIFxcKCAyOTksIDM5OVxcKSBcXCkg XFwpIiBcCisJCSJwcmludCBhcjNcKDI6Myw4Oiw4OlwpIgorZ2RiX3Rlc3Qg InByaW50IGFyM1woMjozLDg6LDoyXCkiIFwKKwkJIlxcJFxbMC05XF0rID0g XFwoXFwoIFxcKCAyODEsIDM4MVxcKSBcXCggMjkxLCAzOTFcXCkgXFwpIFxc KFwKKwkJIFxcKCAyODIsIDM4MlxcKSBcXCggMjkyLCAzOTJcXCkgXFwpIFxc KSIgXAorCQkicHJpbnQgYXIzXCgyOjMsODosOjJcKSIKKworZ2RiX3Rlc3Qg InByaW50IGFyM1woMjozLDoyLDc6OFwpIiBcCisJCSJcXCRcWzAtOVxdKyA9 IFxcKFxcKCBcXCggMjE3LCAzMTdcXCkgXFwoIDIyNywgMzI3XFwpIFxcKSBc XChcCisJCSBcXCggMjE4LCAzMThcXCkgXFwoIDIyOCwgMzI4XFwpIFxcKSBc XCkiIFwKKwkJInByaW50IGFyM1woMjozLDoyLDc6OFwpIgorZ2RiX3Rlc3Qg InByaW50IGFyM1woMjozLDoyLDg6XCkiIFwKKwkJIlxcJFxbMC05XF0rID0g XFwoXFwoIFxcKCAyMTgsIDMxOFxcKSBcXCggMjI4LCAzMjhcXCkgXFwpIFxc KFwKKwkJIFxcKCAyMTksIDMxOVxcKSBcXCggMjI5LCAzMjlcXCkgXFwpIFxc KSIgXAorCQkicHJpbnQgYXIzXCgyOjMsOjIsODpcKSIKK2dkYl90ZXN0ICJw cmludCBhcjNcKDI6Myw6Miw6MlwpIiBcCisJCSJcXCRcWzAtOVxdKyA9IFxc KFxcKCBcXCggMjExLCAzMTFcXCkgXFwoIDIyMSwgMzIxXFwpIFxcKSBcXChc CisJCSBcXCggMjEyLCAzMTJcXCkgXFwoIDIyMiwgMzIyXFwpIFxcKSBcXCki IFwKKwkJInByaW50IGFyM1woMjozLDoyLDoyXCkiCisKK2dkYl90ZXN0ICJw cmludCBhcjNcKDg6LDM6NCw3OjhcKSIgXAorCQkiXFwkXFswLTlcXSsgPSBc XChcXCggXFwoIDgzNywgOTM3XFwpIFxcKCA4NDcsIDk0N1xcKSBcXCkgXFwo XAorCQkgXFwoIDgzOCwgOTM4XFwpIFxcKCA4NDgsIDk0OFxcKSBcXCkgXFwp IiBcCisJCSJwcmludCBhcjNcKDg6LDM6NCw3OjhcKSIKK2dkYl90ZXN0ICJw cmludCBhcjNcKDg6LDQ6NSw4OlwpIiBcCisJCSJcXCRcWzAtOVxdKyA9IFxc KFxcKCBcXCggODQ4LCA5NDhcXCkgXFwoIDg1OCwgOTU4XFwpIFxcKSBcXChc CisJCSBcXCggODQ5LCA5NDlcXCkgXFwoIDg1OSwgOTU5XFwpIFxcKSBcXCki IFwKKwkJInByaW50IGFyM1woODosNDo1LDg6XCkiCitnZGJfdGVzdCAicHJp bnQgYXIzXCg4Oiw0OjUsOjJcKSIgXAorCQkiXFwkXFswLTlcXSsgPSBcXChc XCggXFwoIDg0MSwgOTQxXFwpIFxcKCA4NTEsIDk1MVxcKSBcXCkgXFwoXAor CQkgXFwoIDg0MiwgOTQyXFwpIFxcKCA4NTIsIDk1MlxcKSBcXCkgXFwpIiBc CisJCSJwcmludCBhcjNcKDg6LDQ6NSw6MlwpIgorCitnZGJfdGVzdCAicHJp bnQgYXIzXCg4Oiw4Oiw3OjhcKSIgXAorCQkiXFwkXFswLTlcXSsgPSBcXChc XCggXFwoIDg4NywgOTg3XFwpIFxcKCA4OTcsIDk5N1xcKSBcXCkgXFwoXAor CQkgXFwoIDg4OCwgOTg4XFwpIFxcKCA4OTgsIDk5OFxcKSBcXCkgXFwpIiBc CisJCSJwcmludCBhcjNcKDg6LDg6LDc6OFwpIgorZ2RiX3Rlc3QgInByaW50 IGFyM1woODosODosODpcKSIgXAorCQkiXFwkXFswLTlcXSsgPSBcXChcXCgg XFwoIDg4OCwgOTg4XFwpIFxcKCA4OTgsIDk5OFxcKSBcXCkgXFwoXAorCQkg XFwoIDg4OSwgOTg5XFwpIFxcKCA4OTksIDk5OVxcKSBcXCkgXFwpIiBcCisJ CSJwcmludCBhcjNcKDg6LDg6LDg6XCkiCitnZGJfdGVzdCAicHJpbnQgYXIz XCg4Oiw4Oiw6MlwpIiBcCisJCSJcXCRcWzAtOVxdKyA9IFxcKFxcKCBcXCgg ODgxLCA5ODFcXCkgXFwoIDg5MSwgOTkxXFwpIFxcKSBcXChcCisJCSBcXCgg ODgyLCA5ODJcXCkgXFwoIDg5MiwgOTkyXFwpIFxcKSBcXCkiIFwKKwkJInBy aW50IGFyM1woODosODosOjJcKSIKKworZ2RiX3Rlc3QgInByaW50IGFyM1wo ODosOjIsNzo4XCkiIFwKKwkJIlxcJFxbMC05XF0rID0gXFwoXFwoIFxcKCA4 MTcsIDkxN1xcKSBcXCggODI3LCA5MjdcXCkgXFwpIFxcKFwKKwkJIFxcKCA4 MTgsIDkxOFxcKSBcXCggODI4LCA5MjhcXCkgXFwpIFxcKSIgXAorCQkicHJp bnQgYXIzXCg4Oiw6Miw3OjhcKSIKK2dkYl90ZXN0ICJwcmludCBhcjNcKDg6 LDoyLDg6XCkiIFwKKwkJIlxcJFxbMC05XF0rID0gXFwoXFwoIFxcKCA4MTgs IDkxOFxcKSBcXCggODI4LCA5MjhcXCkgXFwpIFxcKFwKKwkJIFxcKCA4MTks IDkxOVxcKSBcXCggODI5LCA5MjlcXCkgXFwpIFxcKSIgXAorCQkicHJpbnQg YXIzXCg4Oiw6Miw4OlwpIgorZ2RiX3Rlc3QgInByaW50IGFyM1woODosOjIs OjJcKSIgXAorCQkiXFwkXFswLTlcXSsgPSBcXChcXCggXFwoIDgxMSwgOTEx XFwpIFxcKCA4MjEsIDkyMVxcKSBcXCkgXFwoXAorCQkgXFwoIDgxMiwgOTEy XFwpIFxcKCA4MjIsIDkyMlxcKSBcXCkgXFwpIiBcCisJCSJwcmludCBhcjNc KDg6LDoyLDoyXCkiCisKKworZ2RiX3Rlc3QgInByaW50IGFyM1woOjIsMzo0 LDc6OFwpIiBcCisJCSJcXCRcWzAtOVxdKyA9IFxcKFxcKCBcXCggMTM3LCAy MzdcXCkgXFwoIDE0NywgMjQ3XFwpIFxcKSBcXChcCisJCSBcXCggMTM4LCAy MzhcXCkgXFwoIDE0OCwgMjQ4XFwpIFxcKSBcXCkiIFwKKwkJInByaW50IGFy MyBcKDoyLDM6NCw3OjhcKS4iCitnZGJfdGVzdCAicHJpbnQgYXIzXCg6Miwz OjQsODpcKSIgXAorCQkiXFwkXFswLTlcXSsgPSBcXChcXCggXFwoIDEzOCwg MjM4XFwpIFxcKCAxNDgsIDI0OFxcKSBcXCkgXFwoXAorCQkgXFwoIDEzOSwg MjM5XFwpIFxcKCAxNDksIDI0OVxcKSBcXCkgXFwpIiBcCisJCSJwcmludCBh cjNcKDoyLDM6NCw4OlwpIgorZ2RiX3Rlc3QgInByaW50IGFyM1woOjIsMzo0 LDoyXCkiIFwKKwkJIlxcJFxbMC05XF0rID0gXFwoXFwoIFxcKCAxMzEsIDIz MVxcKSBcXCggMTQxLCAyNDFcXCkgXFwpIFxcKFwKKwkJIFxcKCAxMzIsIDIz MlxcKSBcXCggMTQyLCAyNDJcXCkgXFwpIFxcKSIgXAorCQkicHJpbnQgYXIz XCg6MiwzOjQsOjJcKSIKKworZ2RiX3Rlc3QgInByaW50IGFyM1woOjIsODos Nzo4XCkiICJcXCRcWzAtOVxdKyA9IFxcKFxcKCBcXCggMTg3LCAyODdcXCkg XFwoXAorCQkgMTk3LCAyOTdcXCkgXFwpIFxcKCBcXCggMTg4LCAyODhcXCkg XFwoIDE5OCwgMjk4XFwpIFxcKSBcXCkiIFwKKwkJInByaW50IGFyM1woOjIs ODosNzo4XCkiCitnZGJfdGVzdCAicHJpbnQgYXIzXCg6Miw4Oiw4OlwpIiAi XFwkXFswLTlcXSsgPSBcXChcXCggXFwoIDE4OCwgMjg4XFwpIFxcKCAxOTgs XAorCQkgMjk4XFwpIFxcKSBcXCggXFwoIDE4OSwgMjg5XFwpIFxcKCAxOTks IDI5OVxcKSBcXCkgXFwpIiBcCisJCSJwcmludCBhcjNcKDoyLDg6LDg6XCki CitnZGJfdGVzdCAicHJpbnQgYXIzXCg6Miw4Oiw6MlwpIiAiXFwkXFswLTlc XSsgPSBcXChcXCggXFwoIDE4MSwgMjgxXFwpIFxcKCAxOTEsXAorCQkgMjkx XFwpIFxcKSBcXCggXFwoIDE4MiwgMjgyXFwpIFxcKCAxOTIsIDI5MlxcKSBc XCkgXFwpIiBcCisJCSJwcmludCBhcjNcKDoyLDg6LDoyXCkiCisKK2dkYl90 ZXN0ICJwcmludCBhcjNcKDoyLDoyLDc6OFwpIiBcCisJCSJcXCRcWzAtOVxd KyA9IFxcKFxcKCBcXCggMTE3LCAyMTdcXCkgXFwoIDEyNywgMjI3XFwpIFxc KSBcXChcCisJCSBcXCggMTE4LCAyMThcXCkgXFwoIDEyOCwgMjI4XFwpIFxc KSBcXCkiIFwKKwkJInByaW50IGFyM1woOjIsOjIsNzo4XCkiCitnZGJfdGVz dCAicHJpbnQgYXIzXCg6Miw6Miw4OlwpIiBcCisJCSJcXCRcWzAtOVxdKyA9 IFxcKFxcKCBcXCggMTE4LCAyMThcXCkgXFwoIDEyOCwgMjI4XFwpIFxcKSBc XChcCisJCSBcXCggMTE5LCAyMTlcXCkgXFwoIDEyOSwgMjI5XFwpIFxcKSBc XCkiIFwKKwkJInByaW50IGFyM1woOjIsOjIsODpcKSIKK2dkYl90ZXN0ICJw cmludCBhcjNcKDoyLDoyLDoyXCkiIFwKKwkJIlxcJFxbMC05XF0rID0gXFwo XFwoIFxcKCAxMTEsIDIxMVxcKSBcXCggMTIxLCAyMjFcXCkgXFwpIFxcKFwK KwkJIFxcKCAxMTIsIDIxMlxcKSBcXCggMTIyLCAyMjJcXCkgXFwpIFxcKSIg XAorCQkicHJpbnQgYXIzXCg6Miw6Miw6MlwpIgorCisjVGVzdHMgZm9yIHN1 YmFycmF5cyBvZiAzIGRpbWVuc2lvbmFsIGFycmF5cyB3aXRoIGxpdGVyYWxz IGFuZCBzdWJyYW5nZXMKK2dkYl90ZXN0ICJwcmludCBhcjNcKDMsMzo0LDc6 OFwpIiBcCisJCSJcXCRcWzAtOVxdKyA9IFxcKFxcKCAzMzcsIDM0N1xcKSBc XCggMzM4LCAzNDhcXCkgXFwpIiBcCisJCSJwcmludCBhcjNcKDMsMzo0LDc6 OFwpIgorZ2RiX3Rlc3QgInByaW50IGFyM1woMyw0OjUsODpcKSIgXAorCQki XFwkXFswLTlcXSsgPSBcXChcXCggMzQ4LCAzNThcXCkgXFwoIDM0OSwgMzU5 XFwpIFxcKSIgXAorCQkicHJpbnQgYXIzXCgzLDQ6NSw4OlwpIgorZ2RiX3Rl c3QgInByaW50IGFyM1woMyw0OjUsOjJcKSIgXAorCQkiXFwkXFswLTlcXSsg PSBcXChcXCggMzQxLCAzNTFcXCkgXFwoIDM0MiwgMzUyXFwpIFxcKSIgXAor CQkicHJpbnQgYXIzXCgzLDQ6NSw6MlwpIgorZ2RiX3Rlc3QgInByaW50IGFy M1woMyw0OjUsM1wpIiBcCisJCSJcXCRcWzAtOVxdKyA9IFxcKDM0MywgMzUz XFwpIiBcCisJCSJwcmludCBhcjNcKDMsNDo1LDNcKSIKKworZ2RiX3Rlc3Qg InByaW50IGFyM1woMiw4Oiw3OjhcKSIgXAorCQkiXFwkXFswLTlcXSsgPSBc XChcXCggMjg3LCAyOTdcXCkgXFwoIDI4OCwgMjk4XFwpIFxcKSIgXAorCQki cHJpbnQgYXIzXCgyLDg6LDc6OFwpIgorZ2RiX3Rlc3QgInByaW50IGFyM1wo Miw4Oiw4OlwpIiBcCisJCSJcXCRcWzAtOVxdKyA9IFxcKFxcKCAyODgsIDI5 OFxcKSBcXCggMjg5LCAyOTlcXCkgXFwpIiBcCisJCSJwcmludCBhcjNcKDIs ODosODpcKSIKK2dkYl90ZXN0ICJwcmludCBhcjNcKDIsODosOjJcKSJcCisJ CSJcXCRcWzAtOVxdKyA9IFxcKFxcKCAyODEsIDI5MVxcKSBcXCggMjgyLCAy OTJcXCkgXFwpIiBcCisJCSJwcmludCBhcjNcKDIsODosOjJcKSIKK2dkYl90 ZXN0ICJwcmludCBhcjNcKDIsODosM1wpIiBcCisJCSJcXCRcWzAtOVxdKyA9 IFxcKDI4MywgMjkzXFwpIiBcCisJCSJwcmludCBhcjNcKDIsODosM1wpIgor CitnZGJfdGVzdCAicHJpbnQgYXIzXCgyLDoyLDc6OFwpIiBcCisJCSJcXCRc WzAtOVxdKyA9IFxcKFxcKCAyMTcsIDIyN1xcKSBcXCggMjE4LCAyMjhcXCkg XFwpIiBcCisJCSJwcmludCBhcjNcKDIsOjIsNzo4XCkiCitnZGJfdGVzdCAi cHJpbnQgYXIzXCgyLDoyLDg6XCkiIFwKKwkJIlxcJFxbMC05XF0rID0gXFwo XFwoIDIxOCwgMjI4XFwpIFxcKCAyMTksIDIyOVxcKSBcXCkiIFwKKwkJInBy aW50IGFyM1woMiw6Miw4OlwpIgorZ2RiX3Rlc3QgInByaW50IGFyM1woMiw6 Miw6MlwpIiBcCisJCSJcXCRcWzAtOVxdKyA9IFxcKFxcKCAyMTEsIDIyMVxc KSBcXCggMjEyLCAyMjJcXCkgXFwpIiBcCisJCSJwcmludCBhcjNcKDIsOjIs OjJcKSIKK2dkYl90ZXN0ICJwcmludCBhcjNcKDIsOjIsM1wpIiBcCisJCSJc XCRcWzAtOVxdKyA9IFxcKDIxMywgMjIzXFwpIiBcCisJCSJwcmludCBhcjNc KDIsOjIsM1wpIgorCitnZGJfdGVzdCAicHJpbnQgYXIzXCgzLDQsNzo4XCki IFwKKwkJIlxcJFxbMC05XF0rID0gXFwoMzQ3LCAzNDhcXCkiIFwKKwkJInBy aW50IGFyM1woMyw0LDc6OFwpIgorZ2RiX3Rlc3QgInByaW50IGFyM1woMyw0 LDg6XCkiIFwKKwkJIlxcJFxbMC05XF0rID0gXFwoMzQ4LCAzNDlcXCkiIFwK K2kJCSJwcmludCBhcjNcKDMsNCw4OlwpIgorZ2RiX3Rlc3QgInByaW50IGFy M1woMyw0LDoyXCkiIFwKKwkJIlxcJFxbMC05XF0rID0gXFwoMzQxLCAzNDJc XCkiIFwKKwkJInByaW50IGFyM1woMyw0LDoyXCkiCitnZGJfdGVzdCAicHJp bnQgYXIzXCg1LDYsN1wpIiBcCisJCSJcXCRcWzAtOVxdKyA9IDU2NyIgXAor CQkicHJpbnQgYXIzXCg1LDYsN1wpIgorCitnZGJfdGVzdCAicHJpbnQgYXIz XCgzOjQsNiw3OjhcKSIgXAorCQkiXFwkXFswLTlcXSsgPSBcXChcXCggMzY3 LCA0NjdcXCkgXFwoIDM2OCwgNDY4XFwpIFxcKSIgXAorCQkicHJpbnQgYXIz XCgzOjQsNiw3OjhcKSIKK2dkYl90ZXN0ICJwcmludCBhcjNcKDM6NCw2LDg6 XCkiIFwKKwkJIlxcJFxbMC05XF0rID0gXFwoXFwoIDM2OCwgNDY4XFwpIFxc KCAzNjksIDQ2OVxcKSBcXCkiIFwKKwkJInByaW50IGFyM1woMzo0LDYsODpc KSIKK2dkYl90ZXN0ICJwcmludCBhcjNcKDM6NCw2LDoyXCkiIFwKKwkJIlxc JFxbMC05XF0rID0gXFwoXFwoIDM2MSwgNDYxXFwpIFxcKCAzNjIsIDQ2Mlxc KSBcXCkiIFwKKwkJInByaW50IGFyM1woMzo0LDYsOjJcKSIKK2dkYl90ZXN0 ICJwcmludCBhcjNcKDM6NCw2LDVcKSIgXAorCQkiXFwkXFswLTlcXSsgPSBc XCgzNjUsIDQ2NVxcKSIgXAorCQkicHJpbnQgYXIzXCgzOjQsNiw1XCkiCisK K2dkYl90ZXN0ICJwcmludCBhcjNcKDg6LDYsNzo4XCkiIFwKKwkJIlxcJFxb MC05XF0rID0gXFwoXFwoIDg2NywgOTY3XFwpIFxcKCA4NjgsIDk2OFxcKSBc XCkiIFwKKwkJInByaW50IGFyM1woODosNiw3OjhcKSIKK2dkYl90ZXN0ICJw cmludCBhcjNcKDg6LDYsODpcKSIgXAorCQkiXFwkXFswLTlcXSsgPSBcXChc XCggODY4LCA5NjhcXCkgXFwoIDg2OSwgOTY5XFwpIFxcKSIgXAorCQkicHJp bnQgYXIzXCg4Oiw2LDg6XCkiCitnZGJfdGVzdCAicHJpbnQgYXIzXCg4Oiw2 LDoyXCkiIFwKKwkJIlxcJFxbMC05XF0rID0gXFwoXFwoIDg2MSwgOTYxXFwp IFxcKCA4NjIsIDk2MlxcKSBcXCkiIFwKKwkJInByaW50IGFyM1woODosNiw6 MlwpIgorZ2RiX3Rlc3QgInByaW50IGFyM1woODosNiw1XCkiIFwKKwkJIlxc JFxbMC05XF0rID0gXFwoODY1LCA5NjVcXCkiIFwKKwkJInByaW50IGFyM1wo ODosNiw1XCkiCisKK2dkYl90ZXN0ICJwcmludCBhcjNcKDoyLDYsNzo4XCki IFwKKwkJIlxcJFxbMC05XF0rID0gXFwoXFwoIDE2NywgMjY3XFwpIFxcKCAx NjgsIDI2OFxcKSBcXCkiIFwKKwkJInByaW50IGFyM1woOjIsNiw3OjhcKSIK K2dkYl90ZXN0ICJwcmludCBhcjNcKDoyLDYsODpcKSIgXAorCQkiXFwkXFsw LTlcXSsgPSBcXChcXCggMTY4LCAyNjhcXCkgXFwoIDE2OSwgMjY5XFwpIFxc KSIgXAorCQkicHJpbnQgYXIzXCg6Miw2LDg6XCkiCitnZGJfdGVzdCAicHJp bnQgYXIzXCg6Miw2LDoyXCkiIFwKKwkJIlxcJFxbMC05XF0rID0gXFwoXFwo IDE2MSwgMjYxXFwpIFxcKCAxNjIsIDI2MlxcKSBcXCkiIFwKKwkJInByaW50 IGFyM1woOjIsNiw6MlwpIgorZ2RiX3Rlc3QgInByaW50IGFyM1woOjIsNiw1 XCkiIFwKKwkJIlxcJFxbMC05XF0rID0gXFwoMTY1LCAyNjVcXCkiIFwKKwkJ InByaW50IGFyM1woOjIsNiw1XCkiCisKK2dkYl90ZXN0ICJwcmludCBhcjNc KDM6NCw1OjYsNFwpIiBcCisJCSJcXCRcWzAtOVxdKyA9IFxcKFxcKCAzNTQs IDQ1NFxcKSBcXCggMzY0LCA0NjRcXCkgXFwpIiBcCisJCSJwcmludCBhcjJc KDM6NCw1OjYsNFwpIgorZ2RiX3Rlc3QgInByaW50IGFyM1woODosNTo2LDRc KSIgXAorCQkiXFwkXFswLTlcXSsgPSBcXChcXCggODU0LCA5NTRcXCkgXFwo IDg2NCwgOTY0XFwpIFxcKSIgXAorCQkicHJpbnQgYXIyXCg4Oiw1OjYsNFwp IgorZ2RiX3Rlc3QgInByaW50IGFyM1woOjIsNTo2LDRcKSIgXAorCQkiXFwk XFswLTlcXSsgPSBcXChcXCggMTU0LCAyNTRcXCkgXFwoIDE2NCwgMjY0XFwp IFxcKSIgXAorCQkicHJpbnQgYXIyXCg6Miw1OjYsNFwpIgorCisjIFN0cmlk ZSA+IDEKK2dkYl90ZXN0ICJwcmludCBhcjFcKDI6NjoyXCkiIFwKKwkJIlxc JFxbMC05XF0rID0gXFwoMiwgNCwgNlxcKSIgXAorCQkicHJpbnQgYXIxXCgy OjY6MlwpIgorZ2RiX3Rlc3QgInByaW50IGFyMlwoMjo2OjIsMzo0XCkiIFwK KwkJIlxcJFxbMC05XF0rID0gXFwoXFwoIDIzLCA0MywgNjNcXCkgXFwoIDI0 LCA0NCwgNjRcXCkgXFwpIiBcCisJCSJwcmludCBhcjJcKDI6NjoyLDM6NFwp IgorZ2RiX3Rlc3QgInByaW50IGFyMlwoMjo2OjIsM1wpIiBcCisJCSJcXCRc WzAtOVxdKyA9IFxcKDIzLCA0MywgNjNcXCkiIFwKKwkJInByaW50IGFyMlwo Mjo2OjIsM1wpIgorZ2RiX3Rlc3QgInByaW50IGFyM1woMjo2OjIsMzo1OjIs NDo3OjNcKSIgXAorCQkiXFwkXFswLTlcXSsgPSBcXChcXCggXFwoIDIzNCwg NDM0LCA2MzRcXCkgXFwoIDI1NCwgNDU0LCA2NTRcXClcCisJCSBcXCkgXFwo IFxcKCAyMzcsIDQzNywgNjM3XFwpIFxcKCAyNTcsIDQ1NywgNjU3XFwpIFxc KSBcXCkiIFwKKwkJInByaW50IGFyM1woMjo2OjIsMzo1OjIsNDo3OjNcKSIK K2dkYl90ZXN0ICJwcmludCBhcjNcKDI6NjoyLDUsNDo3OjNcKSIgXAorCQki XFwkXFswLTlcXSsgPSBcXChcXCggMjU0LCA0NTQsIDY1NFxcKSBcXCggMjU3 LCA0NTcsIDY1N1xcKVwKKwkJIFxcKSIgXAorCQkicHJpbnQgYXIzXCgyOjY6 Miw1LDQ6NzozXCkiCisKKyMgU3RyaWRlIDwgMAorZ2RiX3Rlc3QgInByaW50 IGFyMVwoODoyOi0yXCkiIFwKKwkJIlxcJFxbMC05XF0rID0gXFwoOCwgNiwg NCwgMlxcKSIgXAorCQkicHJpbnQgYXIxXCg4OjI6LTJcKSIKK2dkYl90ZXN0 ICJwcmludCBhcjJcKDg6MjotMiwzOjRcKSIgXAorCQkiXFwkXFswLTlcXSsg PSBcXChcXCggODMsIDYzLCA0MywgMjNcXCkgXFwoIDg0LCA2NCwgNDQsIDI0 XFwpXAorCQkgXFwpIiBcCisJCSJwcmludCBhcjJcKDg6MjotMiwzOjRcKSIK K2dkYl90ZXN0ICJwcmludCBhcjJcKDI6NjoyLDNcKSIgXAorCQkiXFwkXFsw LTlcXSsgPSBcXCgyMywgNDMsIDYzXFwpIiBcCisJCSJwcmludCBhcjJcKDI6 NjoyLDNcKSIKK2dkYl90ZXN0ICJwcmludCBhcjNcKDI6Myw3OjM6LTQsNDo3 OjNcKSIgXAorCQkiXFwkXFswLTlcXSsgPSBcXChcXCggXFwoIDI3NCwgMzc0 XFwpIFxcKCAyMzQsIDMzNFxcKSBcXCkgXFwoXAorCQkgXFwoIDI3NywgMzc3 XFwpIFxcKCAyMzcsIDMzN1xcKSBcXCkgXFwpIiBcCisJCSJwcmludCBhcjNc KDI6Myw3OjM6LTQsNDo3OjNcKSIKK2dkYl90ZXN0ICJwcmludCBhcjNcKDI6 NjoyLDUsNzo0Oi0zXCkiIFwKKwkJIlxcJFxbMC05XF0rID0gXFwoXFwoIDI1 NywgNDU3LCA2NTdcXCkgXFwoIDI1NCwgNDU0LCA2NTRcXClcCisJCSBcXCki IFwKKwkJInByaW50IGFyM1woMjo2OjIsNSw3OjQ6LTNcKSIKKworIyBUZXN0 cyB3aXRoIG5lZ2F0aXZlIGFuZCBtaXhlZCBpbmRpY2VzCitnZGJfdGVzdCAi cCBhcjRcKDI6NCwgLTI6MSwgLTE1Oi0xNFwpIiBcCisJCSJcXCRcWzAtOVxd KyA9IFxcKFxcKCBcXCggMjYxLCAzNjEsIDQ2MVxcKSBcXCggMjcxLCAzNzEs IDQ3MVxcKVwKKwkJIFxcKCAyODEsIDM4MSwgNDgxXFwpIFxcKCAyOTEsIDM5 MSwgNDkxXFwpIFxcKSBcXCggXFwoIDI2MixcCisJCSAzNjIsIDQ2MlxcKSBc XCggMjcyLCAzNzIsIDQ3MlxcKSBcXCggMjgyLCAzODIsIDQ4MlxcKSBcXCgg MjkyLFwKKwkJIDM5MiwgNDkyXFwpIFxcKSBcXCkiIFwKKwkJInByaW50IGFy NCgyOjQsIC0yOjEsIC0xNTotMTQpIgorCitnZGJfdGVzdCAicCBhcjRcKDcs LTY6MjozLC03XCkiIFwKKyAgICAgICAgICAgICAgICAiXFwkXFswLTlcXSsg PSBcXCg3MjksIDc1OSwgNzg5XFwpIiBcCisgICAgICAgICAgICAgICAgInBy aW50IGFyNCg3LC02OjI6MywtNykiCisKK2dkYl90ZXN0ICJwIGFyNFwoOToy Oi0yLCAtNjoyOjMsIC02Oi0xNTotM1wpIiBcCisgICAgICAgICAgICAgICAg IlxcJFxbMC05XF0rID0gXFwoXFwoIFxcKCA5MzAsIDczMCwgNTMwLCAzMzBc XCkgXFwoIDk2MCwgNzYwLFwKKwkJIDU2MCwgMzYwXFwpIFxcKCA5OTAsIDc5 MCwgNTkwLCAzOTBcXCkgXFwpIFxcKCBcXCggOTI3LCA3MjcsXAorCQkgNTI3 LCAzMjdcXCkgXFwoIDk1NywgNzU3LCA1NTcsIDM1N1xcKSBcXCggOTg3LCA3 ODcsIDU4NyxcCisJCSAzODdcXCkgXFwpIFxcKCBcXCggOTI0LCA3MjQsIDUy NCwgMzI0XFwpIFxcKCA5NTQsIDc1NCwgNTU0LFwKKwkJIDM1NFxcKSBcXCgg OTg0LCA3ODQsIDU4NCwgMzg0XFwpIFxcKSBcXCggXFwoIDkyMSwgNzIxLCA1 MjEsXAorCQkgMzIxXFwpIFxcKCA5NTEsIDc1MSwgNTUxLCAzNTFcXCkgXFwo IDk4MSwgNzgxLCA1ODEsIDM4MVxcKSBcXClcCisJCSBcXCkiIFwKKyAgICAg ICAgICAgICAgICAicHJpbnQgYXI0KDk6MjotMiwgLTY6MjozLCAtNjotMTU6 LTMpIgorCitnZGJfdGVzdCAicCBhcjRcKDosOiw6XCkiIFwKKyAgICAgICAg ICAgICAgICAiXFwkXFswLTlcXSsgPSBcXChcXCggXFwoIDExMSwgMjExLCAz MTEsIDQxMSwgNTExLCA2MTEsIDcxMSxcCisJCSA4MTEsIC4qIiBcCisgICAg ICAgICAgICAgICAgInByaW50IGFyNCg6LDosOikiCisKKyMgUHJvdm9rZSBl cnJvciBtZXNzYWdlcyBmb3IgYmFkIHVzZXIgaW5wdXQKK2dkYl90ZXN0ICJw cmludCBhcjFcKDA6NFwpIiBcCisJCSJwcm92aWRlZCBib3VuZFxcKHNcXCkg b3V0c2lkZSBhcnJheSBib3VuZFxcKHNcXCkiIFwKKwkJInByaW50IGFyMVwo MDo0XCkiCitnZGJfdGVzdCAicHJpbnQgYXIxXCg4OjEyXCkiIFwKKwkJInBy b3ZpZGVkIGJvdW5kXFwoc1xcKSBvdXRzaWRlIGFycmF5IGJvdW5kXFwoc1xc KSIgXAorCQkicHJpbnQgYXIxXCg4OjEyXCkiCitnZGJfdGVzdCAicHJpbnQg YXIxXCg4OjI6XCkiIFwKKwkJIkEgc3ludGF4IGVycm9yIGluIGV4cHJlc3Np b24sIG5lYXIgYFxcKScuIiBcCisJCSJwcmludCBhcjFcKDg6MjpcKSIKK2dk Yl90ZXN0ICJwcmludCBhcjFcKDg6MjoyXCkiIFwKKwkJIldyb25nIHZhbHVl IHByb3ZpZGVkIGZvciBzdHJpZGUgYW5kIGJvdW5kYXJpZXMiIFwKKwkJInBy aW50IGFyMVwoODoyOjJcKSIKK2dkYl90ZXN0ICJwcmludCBhcjFcKDI6ODot MlwpIiBcCisJCSJXcm9uZyB2YWx1ZSBwcm92aWRlZCBmb3Igc3RyaWRlIGFu ZCBib3VuZGFyaWVzIiBcCisJCSJwcmludCBhcjFcKDI6ODotMlwpIgorZ2Ri X3Rlc3QgInByaW50IGFyMVwoMjo3OjBcKSIgXAorCQkiU3RyaWRlIG11c3Qg bm90IGJlIDAiIFwKKwkJInByaW50IGFyMVwoMjo3OjBcKSIKK2dkYl90ZXN0 ICJwcmludCBhcjFcKDM6N1wpID0gNDIiIFwKKwkJIkludmFsaWQgY2FzdC4i IFwKKwkJIkFzc2lnbm1lbnQgb2YgdmFsdWUgdG8gc3ViYXJyYXkiCmRpZmYg LS1naXQgYS9nZGIvdGVzdHN1aXRlL2dkYi5mb3J0cmFuL3N0YXRpYy1hcnJh eXMuZjkwIGIvZ2RiL3Rlc3RzdWl0ZS9nZGIuZm9ydHJhbi9zdGF0aWMtYXJy YXlzLmY5MApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5m MjJmY2JlCi0tLSAvZGV2L251bGwKKysrIGIvZ2RiL3Rlc3RzdWl0ZS9nZGIu Zm9ydHJhbi9zdGF0aWMtYXJyYXlzLmY5MApAQCAtMCwwICsxLDU1IEBACish IENvcHlyaWdodCAyMDE1IEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5j LgorIQorISBDb250cmlidXRlZCBieSBJbnRlbCBDb3JwLiA8Y2hyaXN0b3Bo LnQud2Vpbm1hbm5AaW50ZWwuY29tPgorIQorISBUaGlzIHByb2dyYW0gaXMg ZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29y IG1vZGlmeQorISBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5l cmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQorISB0aGUgRnJl ZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAzIG9mIHRo ZSBMaWNlbnNlLCBvcgorISAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2 ZXJzaW9uLgorIQorISBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4g dGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyEgYnV0IFdJVEhP VVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2Fy cmFudHkgb2YKKyEgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEg UEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorISBHTlUgR2VuZXJhbCBQ dWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorIQorISBZb3Ugc2hv dWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQ dWJsaWMgTGljZW5zZQorISBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElm IG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKwor c3Vicm91dGluZSBzdWIKKyAgaW50ZWdlciwgZGltZW5zaW9uKDkpIDo6IGFy MQorICBpbnRlZ2VyLCBkaW1lbnNpb24oOSw5KSA6OiBhcjIKKyAgaW50ZWdl ciwgZGltZW5zaW9uKDksOSw5KSA6OiBhcjMKKyAgaW50ZWdlciwgZGltZW5z aW9uKDEwLC03OjMsIC0xNTotNSkgOjogYXI0CisgIGludGVnZXIgOjogaSxq LGsKKworICBhcjEgPSAxCisgIGFyMiA9IDEKKyAgYXIzID0gMQorICBhcjQg PSA0CisKKyAgISBSZXN1bHRpbmcgYXJyYXkgYXIzIGxvb2tzIGxpa2UgKCgo IDExMSwgMTEyLCAxMTMsIDExNCwuLi4pKSkKKyAgZG8gaSA9IDEsIDksIDEK KyAgICBhcjEoaSkgPSBpCisgICAgZG8gaiA9IDEsIDksIDEKKyAgICAgIGFy MihpLGopID0gaSoxMCArIGoKKyAgICAgIGRvIGsgPSAxLCA5LCAxCisgICAg ICAgIGFyMyhpLGosaykgPSBpKjEwMCArIGoqMTAgKyBrCisgICAgICBlbmQg ZG8KKyAgICBlbmQgZG8KKyAgZW5kIGRvCisKKyAgZG8gaSA9IDEsIDEwLCAx CisgICAgZG8gaiA9IC03LCAzLCAxCisgICAgICBkbyBrID0gLTE1LCAtNSwg MQorICAgICAgICBhcjQoaSxqLGspID0gaSoxMDAgKyAoais4KSoxMCArIChr KzE2KQorICAgICAgZW5kIGRvCisgICAgZW5kIGRvCisgIGVuZCBkbworCisg IGFyMSgxKSA9IDExICAhQlAxCisgIHJldHVybgorZW5kCisKK3Byb2dyYW0g dGVzdHByb2cKKyAgY2FsbCBzdWIKK2VuZAotLSAKMi41LjUKCg== --_007_1E04C56C2A492B449743D653DD4A15BC3BC4C94CIRSMSX102gercor_--