From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-5.2 required=3.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, INCLUDES_PATCH,MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,USER_AGENT_SANE_1 autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 9FF08C33C8C for ; Tue, 7 Jan 2020 12:55:50 +0000 (UTC) Received: from lists.xenproject.org (lists.xenproject.org [192.237.175.120]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 65E802075A for ; Tue, 7 Jan 2020 12:55:50 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 65E802075A Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=hisilicon.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=xen-devel-bounces@lists.xenproject.org Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from ) id 1iooOQ-0001ye-Q3; Tue, 07 Jan 2020 12:55:30 +0000 Received: from us1-rack-iad1.inumbo.com ([172.99.69.81]) by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from ) id 1iooOP-0001yZ-Kf for xen-devel@lists.xenproject.org; Tue, 07 Jan 2020 12:55:29 +0000 X-Inumbo-ID: f3607298-314c-11ea-bf56-bc764e2007e4 Received: from huawei.com (unknown [45.249.212.35]) by us1-rack-iad1.inumbo.com (Halon) with ESMTPS id f3607298-314c-11ea-bf56-bc764e2007e4; Tue, 07 Jan 2020 12:55:17 +0000 (UTC) Received: from DGGEMS412-HUB.china.huawei.com (unknown [172.30.72.60]) by Forcepoint Email with ESMTP id D9019D7F243FA793F0DE; Tue, 7 Jan 2020 20:55:14 +0800 (CST) Received: from [127.0.0.1] (10.57.101.250) by DGGEMS412-HUB.china.huawei.com (10.3.19.212) with Microsoft SMTP Server id 14.3.439.0; Tue, 7 Jan 2020 20:55:04 +0800 To: Julien Grall , Stefano Stabellini References: <1577498922-192711-1-git-send-email-xuwei5@hisilicon.com> <5E071910.2070002@hisilicon.com> <5E1443CD.3060908@hisilicon.com> <5e39e799-a716-ee84-2061-a295335607e8@xen.org> <5E1453F5.50704@hisilicon.com> <94aa0896-b6cf-01b4-7bde-2a4870fa37ff@xen.org> From: Wei Xu Message-ID: <5E147FA8.1000401@hisilicon.com> Date: Tue, 7 Jan 2020 20:55:04 +0800 User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:38.0) Gecko/20100101 Thunderbird/38.2.0 MIME-Version: 1.0 In-Reply-To: <94aa0896-b6cf-01b4-7bde-2a4870fa37ff@xen.org> X-Originating-IP: [10.57.101.250] X-CFilter-Loop: Reflected Subject: Re: [Xen-devel] [PATCH] xen/arm: vgic-v3: Fix the typo of GICD IRQ active status range X-BeenThere: xen-devel@lists.xenproject.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Cc: xen-devel@lists.xenproject.org, Volodymyr Babchuk , prime.zeng@hisilicon.com, shameerali.kolothum.thodi@huawei.com, linuxarm@huawei.com Content-Transfer-Encoding: base64 Content-Type: text/plain; charset="utf-8"; Format="flowed" Errors-To: xen-devel-bounces@lists.xenproject.org Sender: "Xen-devel" SGkgSnVsaWVuLAoKT24gMjAyMC8xLzcgMTk6NDIsIEp1bGllbiBHcmFsbCB3cm90ZToKPiBIaSwK Pgo+IE9uIDA3LzAxLzIwMjAgMDk6NDgsIFdlaSBYdSB3cm90ZToKPj4gT24gMjAyMC8xLzcgMTc6 MTAsIEp1bGllbiBHcmFsbCB3cm90ZToKPj4+Cj4+Pgo+Pj4gT24gMDcvMDEvMjAyMCAwODozOSwg V2VpIFh1IHdyb3RlOgo+Pj4+IEhpIFN0ZWZhbm8sCj4+Pj4KPj4+PiBPbiAyMDIwLzEvNyA2OjAx LCBTdGVmYW5vIFN0YWJlbGxpbmkgd3JvdGU6Cj4+Pj4+IE9uIFNhdCwgMjggRGVjIDIwMTksIFdl aSBYdSB3cm90ZToKPj4+Pj4+IEhpIEp1bGllbiwKPj4+Pj4+Cj4+Pj4+PiBPbiAyMDE5LzEyLzI4 IDE2OjA5LCBKdWxpZW4gR3JhbGwgd3JvdGU6Cj4+Pj4+Pj4gSGksCj4+Pj4+Pj4KPj4+Pj4+PiBP biAyOC8xMi8yMDE5IDAzOjA4LCBXZWkgWHUgd3JvdGU6Cj4+Pj4+Pj4+IFRoaXMgcGF0Y2ggZml4 ZXMgdGhlIHR5cG8gYWJvdXQgdGhlIGFjdGl2ZSBzdGF0dXMgcmFuZ2Ugb2YgYW4gSVJRCj4+Pj4+ Pj4+IHZpYSBHSUNELiBPdGhlcndpc2UgaXQgd2lsbCBiZSBmYWlsZWQgdG8gaGFuZGxlIHRoZSBt bWlvIGFjY2VzcyAKPj4+Pj4+Pj4gYW5kCj4+Pj4+Pj4+IGluamVjdCBhIGRhdGEgYWJvcnQuCj4+ Pj4+Pj4gSSBoYXZlIHNlZW4gYSBwYXRjaCBzaW1pbGFyIGZyb20gTlhQIGEgbW9udGggYWdvIGFu ZCBJIGRpc2FncmVlZCAKPj4+Pj4+PiBvbiB0aGUKPj4+Pj4+PiBhcHByb2FjaC4KPj4+Pj4+Pgo+ Pj4+Pj4+IElmIHlvdSBsb29rIGF0IHRoZSBjb250ZXh0IHlvdSBtb2RpZmVkLCBpdCBzYXlzIHRo YXQgcmVhZGluZyAKPj4+Pj4+PiBBQ1RJVkVSIGlzIG5vdAo+Pj4+Pj4+IHN1cHBvcnRlZC4gV2hp bGUgSSBhZ3JlZSB0aGUgYmVoYXZpb3IgaXMgbm90IGNvbnNpc3RlbnQgYWNjcm9zcyAKPj4+Pj4+ PiBBQ1RJVkVSLAo+Pj4+Pj4+IGluamVjdGluZyBhIGRhdGEgYWJvcnQgaXMgYSBwZXJmZWN0bHkg ZmluZSBiZWhhdmlvciB0byBtZSAKPj4+Pj4+PiAodGhvdWdoIG5vdCBzcGVjCj4+Pj4+Pj4gY29t cGxpYW50KSBhcyB3ZSBkb24ndCBpbXBsZW1lbnQgdGhlIHJlZ2lzdGVycyBjb3JyZWN0bHkuCj4+ Pj4+Pj4KPj4+Pj4+PiBJIGd1ZXNzIHlvdSBhcmUgc2VuZGluZyB0aGlzIHBhdGNoLCBiZWNhdXNl IHlvdSB0cmllZCBMaW51eCA1LjQgCj4+Pj4+Pj4gKG9yIGxhdGVyKQo+Pj4+Pj4+IG9uIFhlbiwg cmlnaHQ/IExpbnV4IGhhcyByZWNlbnRseSBiZWdhbiB0byByZWFkIEFDVElWRVIgdG8gY2hlY2sg Cj4+Pj4+Pj4gd2hldGhlciBhbgo+Pj4+Pj4+IElSUSBpcyBhY3RpdmUgYXQgdGhlIEhXIGxldmVs IGR1cmluZyB0aGUgc3luY2hyb25pemluZyBvZiB0aGUgCj4+Pj4+Pj4gSVJRUy4gRnJvbSBteQo+ Pj4+Pj4+IHVuZGVyc3RhbmRpbmcsIHRoaXMgaXMgdXNlZCBiZWNhdXNlIHRoZXJlIGlzIGEgd2lu ZG93IHdoZXJlIHRoZSAKPj4+Pj4+PiBpbnRlcnJ1cHQgaXMKPj4+Pj4+PiBhY3RpdmUgYXQgdGhl IEhXIGxldmVsIGJ1dCB0aGUgTGludXggSVJRIHN1YnN5c3RlbSBpcyBub3QgYXdhcmUgCj4+Pj4+ Pj4gb2YgaXQuCj4+Pj4+Pj4KPj4+Pj4+PiBXaGlsZSB0aGUgcGF0Y2ggYmVsb3cgd2lsbCBhbGxv dyBMaW51eCA1LjQgdG8gbm90IGNyYXNoLCBpdCBpcyAKPj4+Pj4+PiBub3QgZ29pbmcgdG8KPj4+ Pj4+PiBtYWtlIGl0IGZseSB2ZXJ5IGZhciBiZWNhdXNlIG9mIHRoZSBhYm92ZS4gU28gSSBhbSBy YXRoZXIgbm90IAo+Pj4+Pj4+IGhhcHB5IHdpdGgKPj4+Pj4+PiBwZXJzdWluZyB3aXRoIHJldHVy bmluZyAwLgo+Pj4+Pj4+Cj4+Pj4+PiBZZXMsIEkgYW0gdXNpbmcgTGludXggNS41LXJjMiA6KQo+ Pj4+Pj4gR290IGl0IGFuZCB0aGFua3MgZm9yIHRoZSBleHBsYW5hdGlvbi4KPj4+Pj4+IEkgYW0g bm90IGluc2lzdGVudCBvbiB0aGlzIGFuZCBPSyB0byB3YWl0IGZvciB0aGUgdXBkYXRlLgo+Pj4+ Pj4gVGhhbmtzIGFuZCBoYXZlIGEgdmVyeSBoYXBweSBuZXcgeWVhciEKPj4+Pj4gSGkgV2VpLAo+ Pj4+Pgo+Pj4+PiB3aGF0IGRvIHlvdSBkbyB0byByZXByb2R1Y2UgdGhlIGlzc3VlPyBBcmUgeW91 IGp1c3QgYm9vdGluZyBMaW51eAo+Pj4+PiA1LjUtcmMyIGFzIGRvbTAgYW5kIHNlZWluZyB0aGUg aXNzdWUgZHVyaW5nIGJvb3QsIG9yIGFyZSB5b3UgZG9pbmcKPj4+Pj4gc29tZXRoaW5nIHNwZWNp ZmljPwo+Pj4+Pgo+Pj4+PiAuCj4+Pj4+Cj4+Pj4KPj4+PiBJIGRpcmVjdGx5IHRlc3RlZCB0aGUg bWFpbmxpbmUga2VybmVsIHdpdGggZGVmY29uZmlnLgo+Pj4+IEFuZCB0aGUgNS41LXJjNSBrZXJu ZWwgYm9vdGluZyBsb2cgaXMgYXMgYmVsb3c6Cj4+Pj4KPj4+PiAgICAgIHJvb3RAdWJ1bnR1On4j IGRtZXNnIHwgbW9yZQo+Pj4+ICAgICAgWyAgICAwLjAwMDAwMF0gQm9vdGluZyBMaW51eCBvbiBw aHlzaWNhbCBDUFUgMHgwMDAwMDAwMDAwIAo+Pj4+IFsweDQ4MWZkMDEwXQo+Pj4+ICAgICAgWyAg ICAwLjAwMDAwMF0gTGludXggdmVyc2lvbiA1LjUuMC1yYzUgKGpveXhAVHVyaW5nLUFyY2gtYikg Cj4+Pj4gKGdjYyB2ZXJzaW9uIDQuOS4xIDIKPj4+PiAgICAgIDAxNDA1MDUgKHByZXJlbGVhc2Up IChjcm9zc3Rvb2wtTkcgbGluYXJvLTEuMTMuMS00LjktMjAxNC4wNSAtIAo+Pj4+IExpbmFybyBH Q0MgNC45LTIwCj4+Pj4gICAgICAxNC4wNSkpICMxMzIgU01QIFBSRUVNUFQgVHVlIEphbiA3IDE1 OjQzOjA2IENTVCAyMDIwCj4+Pj4gICAgICBbICAgIDAuMDAwMDAwXSBYZW4gWEVOX1ZFUlNJT04u WEVOX1NVQlZFUlNJT04gc3VwcG9ydCBmb3VuZAo+Pj4+ICAgICAgWyAgICAwLjAwMDAwMF0gZWZp OiBHZXR0aW5nIEVGSSBwYXJhbWV0ZXJzIGZyb20gRkRUOgo+Pj4+ICAgICAgWyAgICAwLjAwMDAw MF0gZWZpOiBFRkkgdjIuNTAgYnkgWGVuCj4+Pj4gICAgICBbICAgIDAuMDAwMDAwXSBlZmk6ICBB Q1BJIDIuMD0weDE4MWQwZTcwCj4+Pj4gICAgICBbICAgIDAuMDAwMDAwXSBjbWE6IFJlc2VydmVk IDMyIE1pQiBhdCAweDAwMDAwMDAwN2UwMDAwMDAKPj4+PiAgICAgIFsgICAgMC4wMDAwMDBdIEFD UEk6IEVhcmx5IHRhYmxlIGNoZWNrc3VtIHZlcmlmaWNhdGlvbiBkaXNhYmxlZAo+Pj4+ICAgICAg WyAgICAwLjAwMDAwMF0gQUNQSTogUlNEUCAweDAwMDAwMDAwMTgxRDBFNzAgMDAwMDI0ICh2MDIg SElTSSAgKQo+Pj4+ICAgICAgWyAgICAwLjAwMDAwMF0gQUNQSTogWFNEVCAweDAwMDAwMDAwMTgx RDBEQjAgMDAwMEJDICh2MDEgSElTSSAKPj4+PiBISVAwOCAgICAwMDAwMDAwCj4+Pj4gICAgICAw ICAgICAgMDEwMDAwMTMpCj4+Pgo+Pj4gSXMgdGhhdCB0aGUgZnVsbCBsb2cgZnJvbSBMaW51eD8g SWYgbm90LCBjYW4geW91IHBvc3QgaXQgaW4gZnVsbD8KPj4+Cj4+Pj4KPj4+PiBCdXQgdG8gYm9v dCB3aXRoIEFDUEkgb24gb3VyIGhhcmR3YXJlLCBleGNlcHQgYWJvdmUgY2hhbmdlIEkgaGF2ZSAK Pj4+PiBhbHNvIGRvbmUgc29tZSBoYWNraW5nIGJhc2VkIG9uCj4+Pj4gWEVOIDQuMTMgYXMgYmVs b3c6Cj4+Pgo+Pj4gSSBoYXZlbid0IGJvb3RlZCBYZW4gb24gYW55IEFDUEkgc3lzdGVtcyByZWNl bnRseSBzbyB0aGVyZSBtaWdodCBiZSAKPj4+IGJ1Z3MgaW4gdGhlIGNvZGUuIFlvdXIgY2hhbmdl cyBiZWxvdyBpcyBkZWZpbml0ZWx5IGEgY2FsbCB0byBsb29rIAo+Pj4gbW9yZSBpbnRvIGRldGFp bHMgd2hhdCdzIHdyb25nLgo+Pj4KPj4KPj4gWWVzLCBteSB0YXJnZXQgaXMgdG8gbWFrZSBYZW4g Ym9vdGluZyB3aXRoIEFDUEkgZmlyc3RseS4KPj4KPj4+Pgo+Pj4+ICAgICAgZGlmZiAtLWdpdCBh L3hlbi9hcmNoL2FybS90cmFwcy5jIGIveGVuL2FyY2gvYXJtL3RyYXBzLmMKPj4+PiAgICAgIGlu ZGV4IGQwMjhlYzkuLjIxNWEyOTEgMTAwNjQ0Cj4+Pj4gICAgICAtLS0gYS94ZW4vYXJjaC9hcm0v dHJhcHMuYwo+Pj4+ICAgICAgKysrIGIveGVuL2FyY2gvYXJtL3RyYXBzLmMKPj4+PiAgICAgIEBA IC0xODU2LDggKzE4NTYsOCBAQCBzdGF0aWMgYm9vbCB0cnlfbWFwX21taW8oZ2ZuX3QgZ2ZuKQo+ Pj4+ICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwo+Pj4+Cj4+Pj4gICAgICAgICAgIC8qIFRo ZSBoYXJkd2FyZSBkb21haW4gY2FuIG9ubHkgbWFwIHBlcm1pdHRlZCBNTUlPIAo+Pj4+IHJlZ2lv bnMgKi8KPj4+PiAgICAgIC0gICAgaWYgKCAhaW9tZW1fYWNjZXNzX3Blcm1pdHRlZChkLCBtZm5f eChtZm4pLCBtZm5feChtZm4pICsgCj4+Pj4gMSkgKQo+Pj4+ICAgICAgLSAgICAgICAgcmV0dXJu IGZhbHNlOwo+Pj4+ICAgICAgKyAgICAvKiBpZiAoICFpb21lbV9hY2Nlc3NfcGVybWl0dGVkKGQs IG1mbl94KG1mbiksIG1mbl94KG1mbikgCj4+Pj4gKyAxKSApICovCj4+Pj4gICAgICArICAgIC8q ICAgICByZXR1cm4gZmFsc2U7ICovCj4+Pgo+Pj4gRG9tMCBzaG91bGQgYmUgYWJsZSB0byBtYXAg bmVhcmx5IGFsbCB0aGUgYWRkcmVzcyBzcGFjZSB0aHJvdWdoIHRoaXMgCj4+PiBmdW5jdGlvbi4g VGhlIG9ubHkgdGhpbmcgbm90IGFsbG93ZWQgaXMgdGhlIEdJQyBhbmQgVUFSVCAoc2VlIAo+Pj4g YWNwaV9pb21lbV9kZW55X2FjY2VzcykuCj4+Pgo+Pj4gU28gd2h5IGRvIHlvdSB3YW50IHRoaXMg Y2hhbmdlPyBXaGF0IHNvcnQgb2YgYWRkcmVzcyBEb20wIGlzIHRyeWluZyAKPj4+IHRvIG1hcCBh bmQgZmFpbD8KPj4KPj4gWWVzLCBpdCBpcyB0aGUgVUFSVCBhZGRyZXNzIDB4M2YwMDAwMmY4Lgo+ PiBXaXRob3V0IHRoaXMsIGR1cmluZyBET00wIFVBUlQgaW5pdGlhbGl6YXRpb24sIHRoZSBtZW1f c2VyaWFsX2luIGluIAo+PiB0aGUga2VybmVsIHNpZGUgd2lsbCBiZSBmYWlsZWQgYW5kIHJlcG9y dGVkIGEgdW5oYW5kbGVkIGZhdWx0IGF0IAo+PiAweGZmZmY4MDAwMTAwNmQyZjkoZ3ZhKQo+PiBi ZWNhdXNlIG9mIG1lbSBhYm9ydC4KPj4gVGhlIFhlbiBwcmludGVkICJIU1I9MHg5MzAxMDAwMDUg cGM9MHhmZmZmODAwMDEwNjQ1ZDk0IAo+PiBndmE9MHhmZmZmODAwMDEwMDZkMmY5IGdwYT0weDAw MDAwM2YwMDAwMmY5IiBpbiB0cmFwcy5jLgo+Cj4gSSBhc3N1bWUgdGhpcyBpcyB5b3VyIHByaW1h cnkgYWRkcmVzcyBhcyBzcGVjaWZpZWQgaW4gdGhlIFNQQ1IsIHJpZ2h0Pwo+Clllcy4KCj4gQXMg b25seSBvbmUgZW50aXR5IHNob3VsZCBtYW5hZ2UgdGhlIFVBUlQgKGkuZSBYZW4gb3IgRG9tMCks IHdlIHRvZGF5IAo+IGFzc3VtZSB0aGlzIHdpbGwgYmUgbWFuYWdlZCBieSBYZW4uIFhlbiBzaG91 bGQgZXhwb3NlIGEgcGFydGlhbCAKPiB2aXJ0dWFsIFVBUlQgKG9ubHkgYSBmZXcgcmVnaXN0ZXJz IGFyZSBlbXVsYXRpbmcpIHRvIGRvbTAgaW4gcmVwbGFjZW1lbnQuCj4KPiBUaGlzIGlzIHVzdWFs bHkgZG9uZSBieSB0aGUgVUFSVCBkcml2ZXIuIExvb2tpbmcgYXQgdGhlIGxvZyB5b3UgcGFzdGVk IAo+IGluIGEgc2VwYXJhdGUgZS1tYWlsOgo+Cj4gKFhFTikgUGxhdGZvcm06IEdlbmVyaWMgU3lz dGVtCj4gKFhFTikgVW5hYmxlIHRvIGluaXRpYWxpemUgYWNwaSB1YXJ0OiAtOQo+IChYRU4pIEJh ZCBjb25zb2xlPSBvcHRpb24gJ2R0dWFydCcKPgo+IFNvIFhlbiBkaWRuJ3QgbWFuYWdlIHRvIGlu aXRpYWxpemUgdGhlIHVhcnQuIFRoZSAtOSBzdWdnZXN0cywgWGVuIAo+IGRpZG4ndCBmaW5kIGEg ZHJpdmVyIGZvciB5b3VyIFVBUlQuIEF0IHRoZSBtb21lbnQsIFhlbiBpcyBvbmx5IGFibGUgdG8g Cj4gZGV0ZWN0IHBsMDExLCBzYnNhLCBzYnNhMzIgVUFSVCBmb3IgQUNQSS4gV2hhdCBpcyB0aGUg dHlwZSBvZiB0aGUgVUFSVCAKPiB1c2VkIG9uIHlvdXIgcGxhdGZvcm0/Cj4KClRoYW5rcyEKR290 IGl0LgpPdXIgVUFSVCBpcyA4MjUwLgoKPj4KPj4+Cj4+Pj4KPj4+PiAgICAgICAgICAgcmV0dXJu ICFtYXBfcmVnaW9uc19wMm10KGQsIGdmbiwgMSwgbWZuLCBwMm1fbW1pb19kaXJlY3RfYyk7Cj4+ Pj4gICAgICAgfQo+Pj4+Cj4+Pj4KPj4+PiAgICAgIGRpZmYgLS1naXQgYS94ZW4vYXJjaC9hcm0v bW0uYyBiL3hlbi9hcmNoL2FybS9tbS5jCj4+Pj4gICAgICBpbmRleCA0ZDZjOTcxLi5jNjI2Zjll IDEwMDY0NAo+Pj4+ICAgICAgLS0tIGEveGVuL2FyY2gvYXJtL21tLmMKPj4+PiAgICAgICsrKyBi L3hlbi9hcmNoL2FybS9tbS5jCj4+Pj4gICAgICBAQCAtMTA5NSw3ICsxMDk1LDcgQEAgc3RhdGlj IGJvb2wgeGVuX3B0X2NoZWNrX2VudHJ5KGxwYWVfdCAKPj4+PiBlbnRyeSwgbWZuX3QgbWZuLCB1 bnNpZ25lZCBpbnQgZmxhZ3MpCj4+Pj4gICAgICAgICAgICAgICB7Cj4+Pj4gICAgICAgICAgICAg ICAgICAgbW1fcHJpbnRrKCJDaGFuZ2luZyBNRk4gZm9yIGEgdmFsaWQgZW50cnkgaXMgbm90IAo+ Pj4+IGFsbG93ZWQgKCUjIlBSSV9tZm4iIC0+ICUjIlBSSV9tZm4iKS5cbiIsCj4+Pj4gICAgICAg ICAgICAgICAgICAgICAgICAgICAgIG1mbl94KGxwYWVfZ2V0X21mbihlbnRyeSkpLCBtZm5feCht Zm4pKTsKPj4+PiAgICAgIC0gICAgICAgICAgICByZXR1cm4gZmFsc2U7Cj4+Pj4gICAgICArICAg ICAgICAgICAgcmV0dXJuIHRydWU7Cj4+Pgo+Pj4gVGhlcmUgaXMgYSBwcmV0dHkgZ29vZCByZWFz b24gdG8gcHJldmVudCBtb2RpZnlpbmcgdGhlIE1GTiBvbiBhIAo+Pj4gdmFsaWQgZW50cnkuIElu ZGVlZCwgdGhlIFBUIGNvZGUgaXMgbm90IGhhbmRsaW5nIG9mIHRoZSAKPj4+IEJyZWFrLUJlZm9y ZS1NYWtlIHNlcXVlbmNlIChyZXF1aXJlcyB3aGVuIHVwZGF0aW5nIGNlcnRhaW4gZW50cnkpIGFz IAo+Pj4gdGhpcyBpcyBhIGNhbiBvZiB3b3Jtcy4KPj4+Cj4+PiBIb3dldmVyLCBkdXJpbmcgbXkg dGVzdGluZyBJIG5ldmVyIGZvdW5kIGEgcGxhY2Ugd2hlcmUgYW4gdmFsaWQgCj4+PiBlbnRyeSBp cyBtb2RpZmllZCAob3RoZXIgdGhhbiB0aGUgcGVybWlzc2lvbnMgcGFydCkuIFNvIGNhbiB5b3Ug Z2l2ZSAKPj4+IG1vcmUgZGV0YWlscyBob3cgeW91IGNhbWUgdXAgaGVyZT8KPj4KPj4gSW4gdGhl IGZ1bGwgbG9nLCBJIGZvdW5kIHRoZSBSU0RQKDB4MzlkZTApIHJlcGxhY2VkIGJ5IFhTRFQoMHgz OWRkMCkuCj4+IEJ1dCBJIGRpZCBub3Qga25vdyB3aHkgOigKPgo+IE9uIEFybSwgd2UgcmVxdWly ZXMgdGhlIGZpeG1hcCB0byBiZSBlbXB0eSAoYnkgY2FsbGluZyBjbGVhcl9maXhtYXAoKSkgCj4g YmVmb3JlIHRoZSBmaXhtYXAgY2FuIHVzZWQgZm9yIGEgZGlmZmVyZW50IG1hcHBpbmcuCj4KPiBM b29raW5nIGF0IHRoZSBpbXBsZW1lbnRhdGlvbiBvZiBhY3BpX29zX3VubWFwX21lbW9yeSgpLCB0 aGUgZml4bWFwIGlzIAo+IG5vdCBjbGVhcmVkIGFuZCBoZW5jZSB3aHkgeW91IHNlZSB0aGUgd2Fy bmluZyBhYm91dCBjaGFuZ2luZyB0aGUgTUZOIAo+IG9uIHZhbGlkIGVudHJ5Lgo+Cj4gSUhNTywg YWNwaV9vc191bm1hcF9tZW1vcnkoKSBvdWdodCB0byBjbGVhciB0aGUgZml4bWFwLiBUaGlzIHdp bGwgbWFrZSAKPiBpdCBhIG11Y2ggc2FuZXIgaW50ZXJmYWNlIHRvIHVzZS4gV291bGQgeW91IG1p bmQgdG8gaGF2ZSBhIGxvb2s/Cj4KCkkgd2lsbCB0cnkgdG8gbG9vayBpdC4KCj4+Cj4+Pgo+Pj4+ ICAgICAgICAgICAgICAgfQo+Pj4+ICAgICAgICAgICB9Cj4+Pj4gICAgICAgICAgIC8qIFNhbml0 eSBjaGVjayB3aGVuIHJlbW92aW5nIGEgcGFnZS4gKi8KPj4+Pgo+Pj4+Cj4+Pj4gICAgICBkaWZm IC0tZ2l0IGEveGVuL2FyY2gvYXJtL3NldHVwLmMgYi94ZW4vYXJjaC9hcm0vc2V0dXAuYwo+Pj4+ ICAgICAgaW5kZXggM2M4OTljZC4uMWU4MzM1MSAxMDA2NDQKPj4+PiAgICAgIC0tLSBhL3hlbi9h cmNoL2FybS9zZXR1cC5jCj4+Pj4gICAgICArKysgYi94ZW4vYXJjaC9hcm0vc2V0dXAuYwo+Pj4+ ICAgICAgQEAgLTg1Miw3ICs4NTIsOCBAQCB2b2lkIF9faW5pdCBzdGFydF94ZW4odW5zaWduZWQg bG9uZyAKPj4+PiBib290X3BoeXNfb2Zmc2V0LAo+Pj4+ICAgICAgICAgICBlbHNlCj4+Pj4gICAg ICAgICAgIHsKPj4+PiAgICAgICAgICAgICAgIHByaW50aygiQm9vdGluZyB1c2luZyBBQ1BJXG4i KTsKPj4+PiAgICAgIC0gICAgICAgIGRldmljZV90cmVlX2ZsYXR0ZW5lZCA9IE5VTEw7Cj4+Pj4g ICAgICArICAgICAgICBkZXZpY2VfdHJlZV9mbGF0dGVuZWQgPSByZWxvY2F0ZV9mZHQoZmR0X3Bh ZGRyLCAKPj4+PiBmZHRfc2l6ZSk7Cj4+Pj4gICAgICArICAgICAgICBkdF91bmZsYXR0ZW5faG9z dF9kZXZpY2VfdHJlZSgpOwo+Pj4KPj4+IFdoZW4gdXNpbmcgQUNQSSwgdGhlIERUIHNob3VsZCBu b3QgYmUgdXNlZC4gU28gd2h5IGRvIHlvdSBuZWVkIHRoaXM/Cj4+Cj4+IEkgaGF2ZSB0cmllZCBu b3QgcGFzc2luZyBEVCB3aXRoIGdydWItMi4wNCBidXQgYWxzbyB0byBsb2FkIERPTTAga2VybmVs Lgo+PiBUaGUgbG9nIGlzIGFzIGJlbG93Ogo+Pgo+PiAgICAgIChYRU4pICoqKiBMT0FESU5HIERP TUFJTiAwICoqKgo+PiAgICAgIChYRU4pIExvYWRpbmcgZDAga2VybmVsIGZyb20gYm9vdCBtb2R1 bGUgQCAwMDAwMDAwMDE2MjIxMDAwCj4+ICAgICAgKFhFTikgQWxsb2NhdGluZyAxOjEgbWFwcGlu Z3MgdG90YWxsaW5nIDQwOTZNQiBmb3IgZG9tMDoKPj4gICAgICAoWEVOKSBCQU5LWzBdIDB4MDAw MDAwMDgwMDAwMDAtMHgwMDAwMDAxMDAwMDAwMCAoMTI4TUIpCj4+ICAgICAgKFhFTikgQkFOS1sx XSAweDAwMDAwMDIwMDAwMDAwLTB4MDAwMDAwMzgwMDAwMDAgKDM4NE1CKQo+PiAgICAgIChYRU4p IEJBTktbMl0gMHgwMDAwMDA1MDAwMDAwMC0weDAwMDAwMDgwMDAwMDAwICg3NjhNQikKPj4gICAg ICAoWEVOKSBCQU5LWzNdIDB4MDAyMDIwMDAwMDAwMDAtMHgwMDIwMjA4MDAwMDAwMCAoMjA0OE1C KQo+PiAgICAgIChYRU4pIEJBTktbNF0gMHgwMDIwMjBiMDAwMDAwMC0weDAwMjAyMGMwMDAwMDAw ICgyNTZNQikKPj4gICAgICAoWEVOKSBCQU5LWzVdIDB4MDAyMDI2MDAwMDAwMDAtMHgwMDIwMjYy MDAwMDAwMCAoNTEyTUIpCj4+ICAgICAgKFhFTikgR3JhbnQgdGFibGUgcmFuZ2U6IDB4MDAwMDAw MTgxZGEwMDAtMHgwMDAwMDAxODIxYTAwMAo+PiAgICAgIChYRU4pIEFsbG9jYXRpbmcgUFBJIDE2 IGZvciBldmVudCBjaGFubmVsIGludGVycnVwdAo+PiAgICAgIChYRU4pIExvYWRpbmcgekltYWdl IGZyb20gMDAwMDAwMDAxNjIyMTAwMCB0byAKPj4gMDAwMDAwMDAwODA4MDAwMC0wMDAwMDAwMDA5 OWNhYTAwCj4+ICAgICAgKFhFTikgTG9hZGluZyBkMCBEVEIgdG8gMHgwMDAwMDAwMDBmZTAwMDAw LTB4MDAwMDAwMDAwZmUwMDI1Ygo+PiAgICAgIChYRU4pIEluaXRpYWwgbG93IG1lbW9yeSB2aXJx IHRocmVzaG9sZCBzZXQgYXQgMHg0MDAwIHBhZ2VzLgo+PiAgICAgIChYRU4pIFNjcnViYmluZyBG cmVlIFJBTSBpbiBiYWNrZ3JvdW5kCj4+ICAgICAgKFhFTikgU3RkLiBMb2dsZXZlbDogQWxsCj4+ ICAgICAgKFhFTikgR3Vlc3QgTG9nbGV2ZWw6IEFsbAo+PiAgICAgIChYRU4pICoqKiBTZXJpYWwg aW5wdXQgdG8gRE9NMCAodHlwZSAnQ1RSTC1hJyB0aHJlZSB0aW1lcyB0byAKPj4gc3dpdGNoIGlu cHV0KQo+PiAgICAgIChYRU4pIERhdGEgQWJvcnQgVHJhcC4gU3luZHJvbWU9MHg2Cj4+ICAgICAg KFhFTikgV2Fsa2luZyBIeXBlcnZpc29yIFZBIDB4Mzggb24gQ1BVMCB2aWEgVFRCUiAKPj4gMHgw MDAwMDAwMDE4MzFhMDAwCj4+ICAgICAgKFhFTikgMFRIWzB4MF0gPSAweDAwMDAwMDAwMTgzMWRm N2YKPj4gICAgICAoWEVOKSAxU1RbMHgwXSA9IDB4MDAwMDAwMDAxODMxYmY3Zgo+PiAgICAgIChY RU4pIDJORFsweDBdID0gMHgwMDAwMDAwMDAwMDAwMDAwCj4+ICAgICAgKFhFTikgQ1BVMDogVW5l eHBlY3RlZCBUcmFwOiBEYXRhIEFib3J0Cj4+ICAgICAgKFhFTikgLS0tLVsgWGVuLTQuMTMuMC1y YyAgYXJtNjQgIGRlYnVnPXkgICBOb3QgdGFpbnRlZCBdLS0tLQo+PiAgICAgIChYRU4pIENQVTog ICAgMAo+PiAgICAgIChYRU4pIFBDOiAgICAgMDAwMDAwMDAwMDJjNjM5OCBjcmVhdGVfZG9tVXMr MHgyMC8weDIwOAo+PiAgICAgIChYRU4pIExSOiAgICAgMDAwMDAwMDAwMDJjNjM5OAo+PiAgICAg IChYRU4pIFNQOiAgICAgMDAwMDAwMDAwMDMwN2Q2MAo+PiAgICAgIChYRU4pIENQU1I6ICAgNjAw MDAyNDkgTU9ERTo2NC1iaXQgRUwyaCAoSHlwZXJ2aXNvciwgaGFuZGxlcikKPj4gICAgICAoWEVO KSAgICAgIFgwOiAwMDAwMDAwMDAwMDAwMDAwICBYMTogMDAwMDAwMDAwMDAwMDAwMyAgWDI6IAo+ PiAwMDAwMDAwMDAwMDAwMDAwCj4+ICAgICAgKFhFTikgICAgICBYMzogMDAwMDAwMDAwMDAwMDAw MCAgWDQ6IDAwMDAwMDAwMDAwMDAwMDAgIFg1OiAKPj4gMDAwMDAwMDAwMDAwMDAyNAo+PiAgICAg IChYRU4pICAgICAgWDY6IDAwODA4MDgwODA4MDgwODAgIFg3OiBmZWZlZmVmZWZlZmVmZjA5ICBY ODogCj4+IDdmN2Y3ZjdmN2Y3ZjdmN2YKPj4gICAgICAoWEVOKSAgICAgIFg5OiA3MzFmNjQ2YjYx NjA2ZDU0IFgxMDogN2Y3ZjdmN2Y3ZjdmN2Y3ZiBYMTE6IAo+PiAwMTAxMDEwMTAxMDEwMTAxCj4+ ICAgICAgKFhFTikgICAgIFgxMjogMDAwMDAwMDAwMDAwMDAwOCBYMTM6IDAwMDAwMDAwMDAyODcx YjggWDE0OiAKPj4gMDAwMDAwMDAwMDAwMDAyMAo+PiAgICAgIChYRU4pICAgICBYMTU6IDAwMDAw MDAwMDA0MDAyZjggWDE2OiAwMDAwMDAwMDAwMmIyMDAwIFgxNzogCj4+IDAwMDAwMDAwMDAyYjIw MDAKPj4gICAgICAoWEVOKSAgICAgWDE4OiAwMDAwMDAwMDAwMmIyMDAwIFgxOTogMDAwMDgwNjYy ZjNkNzAwMCBYMjA6IAo+PiAwMDAwMDAwMDAwMmIxNDgwCj4+ICAgICAgKFhFTikgICAgIFgyMTog MDAwMDAwMDAwMDM0ODQzMCBYMjI6IDAwMDAwMDAwMDAwMDAwODAgWDIzOiAKPj4gMDAwMDAwMDAw MDJhNDI0MAo+PiAgICAgIChYRU4pICAgICBYMjQ6IDAwMDAwMDAwMDAwMDAwODAgWDI1OiAwMDAw MDAwMDAwMzQ4MDAwIFgyNjogCj4+IDAwMDAwMDAwMDAyZTkwNzgKPj4gICAgICAoWEVOKSAgICAg WDI3OiAwMDAwMjAyNzljMDAwMDAwIFgyODogMDAwMDAwMDAwMDJlODNmMCAgRlA6IAo+PiAwMDAw MDAwMDAwMzA3ZDYwCj4+ICAgICAgKFhFTikKPj4gICAgICAoWEVOKSAgIFZUQ1JfRUwyOiA4MDBk MzU5MAo+PiAgICAgIChYRU4pICBWVFRCUl9FTDI6IDAwMDAwMDAwMDAwMDAwMDAKPj4gICAgICAo WEVOKQo+PiAgICAgIChYRU4pICBTQ1RMUl9FTDI6IDMwY2QxODNkCj4+ICAgICAgKFhFTikgICAg SENSX0VMMjogMDAwMDAwMDA4MDAwMDAzYQo+PiAgICAgIChYRU4pICBUVEJSMF9FTDI6IDAwMDAw MDAwMTgzMWEwMDAKPj4gICAgICAoWEVOKQo+PiAgICAgIChYRU4pICAgIEVTUl9FTDI6IDk2MDAw MDA2Cj4+ICAgICAgKFhFTikgIEhQRkFSX0VMMjogMDAwMDAwMDAwMDAwMDAwMAo+PiAgICAgIChY RU4pICAgIEZBUl9FTDI6IDAwMDAwMDAwMDAwMDAwMzgKPj4gICAgICAoWEVOKQo+PiAgICAgIChY RU4pIFhlbiBzdGFjayB0cmFjZSBmcm9tIHNwPTAwMDAwMDAwMDAzMDdkNjA6Cj4+ICAgICAgKFhF TikgICAgMDAwMDAwMDAwMDMwN2RlMCAwMDAwMDAwMDAwMmNiNWYwIDAwMDA4MDY2MmYzZDcwMDAg Cj4+IDAwMDAwMDAwMDAyYjE0ODAKPj4gICAgICAoWEVOKSAgICAwMDAwMDAwMDAwMzQ4NDMwIDAw MDAwMDAwMDAwMDAwODAgMDAwMDAwMDAwMDJhNDI0MCAKPj4gMDAwMDAwMDAwMDAwMDA4MAo+PiAg ICAgIChYRU4pICAgIDAwMDAwMDAwODAwMDAwMDAgNmQ2ODFmNjc2MjczNjg3NiAwMDAwMDAwMDAw MzA3ZGMwIAo+PiAwMDAwMDAwMDAwMmJjNTcwCj4+ICAgICAgKFhFTikgICAgMDAwMDAwMDAwMDMw N2RlMCAwMDAwMDAwMDAwMmNiNWUwIDAwMDA4MDY2MmYzZDcwMDAgCj4+IDAwMDAwMDAwMDAyYjE0 ODAKPj4gICAgICAoWEVOKSAgICAwMDAwMDAwMDNmMTRhNzgwIDAwMDAwMDAwMDAyMDAxYjggMDAw MDAwMDAxODFkYTAwMCAKPj4gMDAwMDAwMDAxN2ZkYTAwMAo+PiAgICAgIChYRU4pICAgIDAwMDAw MDAwMWE2MzcwMDAgMDAwMDAwMDAwMDAwMDAwMCAwMDAwMDAwMDAwNDAwMmY4IAo+PiAwMDAwMDAw MDE4MjhjZGM4Cj4+ICAgICAgKFhFTikgICAgMDAwMDAwMDAwMDAwMTUwMCAwMDAwMDAwMDAwMDAw MDAxIDAwMDAwMDAwMDAwMDAwMDEgCj4+IDAwMDAwMDAwMTgyOGNkYzAKPj4gICAgICAoWEVOKSAg ICAwMDAwMDAwMDAwMDAwMDAwIDAwMDAwMDAwMDAwMDMwMDAgMDAwMDAwMDAxYTYzNzAwMCAKPj4g MDAwMDAwMzcwMDAwMDAwMAo+PiAgICAgIChYRU4pICAgIDAwMDAwMDAwMDAwMDAwMDAgMDAwMDAw MGY4NmRiMTAwMCAwMDAwMDAwMDAwMDAwMDAwIAo+PiAwMDAwMDAwMDAwMDAwMDAwCj4+ICAgICAg KFhFTikgICAgMDAwMDAwMDAwMDAwMDAwMCAwMDAwMDAwMzAwMDAwMDAwIDAwMDAwMDgwMDAwMDAw MDAgCj4+IDAwMDAwMDQwZmZmZmZmZmYKPj4gICAgICAoWEVOKSAgICAwMDAwMDAwMmZmZmZmZmZm IDAwMDAwMDAwMDAwMDAyODAgMDAwMDAwMDAwMDAwMDAwMCAKPj4gMDAwMDAwMDAwMDAwMDAwMAo+ PiAgICAgIChYRU4pICAgIDAwMDAwMDAwMDAwMDAwMDAgMDAwMDAwMDAwMDAwMDAwMCAwMDAwMDAw MDAwMDAwMDAwIAo+PiAwMDAwMDAwMDAwMDAwMDAwCj4+ICAgICAgKFhFTikgICAgMDAwMDAwMDAw MDAwMDAwMCAwMDAwMDAwMDAwMDAwMDAwIDAwMDAwMDAwMDAwMDAwMDAgCj4+IDAwMDAwMDAwMDAw MDAwMDAKPj4gICAgICAoWEVOKSAgICAwMDAwMDAwMDAwMDAwMDAwIDAwMDAwMDAwMDAwMDAwMDAg MDAwMDAwMDAwMDAwMDAwMCAKPj4gMDAwMDAwMDAwMDAwMDAwMAo+PiAgICAgIChYRU4pICAgIDAw MDAwMDAwMDAwMDAwMDAgMDAwMDAwMDAwMDAwMDAwMCAwMDAwMDAwMDAwMDAwMDAwIAo+PiAwMDAw MDAwMDAwMDAwMDAwCj4+ICAgICAgKFhFTikgICAgMDAwMDAwMDAwMDAwMDAwMCAwMDAwMDAwMDAw MDAwMDAwIDAwMDAwMDAwMDAwMDAwMDAgCj4+IDAwMDAwMDAwMDAwMDAwMDAKPj4gICAgICAoWEVO KSAgICAwMDAwMDAwMDAwMDAwMDAwIDAwMDAwMDAwMDAwMDAwMDAgMDAwMDAwMDAwMDAwMDAwMCAK Pj4gMDAwMDAwMDAwMDAwMDAwMAo+PiAgICAgIChYRU4pICAgIDAwMDAwMDAwMDAwMDAwMDAgMDAw MDAwMDAwMDAwMDAwMCAwMDAwMDAwMDAwMDAwMDAwIAo+PiAwMDAwMDAwMDAwMDAwMDAwCj4+ICAg ICAgKFhFTikgICAgMDAwMDAwMDAwMDAwMDAwMCAwMDAwMDAwMDAwMDAwMDAwIDAwMDAwMDAwMDAw MDAwMDAgCj4+IDAwMDAwMDAwMDAwMDAwMDAKPj4gICAgICAoWEVOKSAgICAwMDAwMDAwMDAwMDAw MDAwIDAwMDAwMDAwMDAwMDAwMDAgMDAwMDAwMDAwMDAwMDAwMCAKPj4gMDAwMDAwMDAwMDAwMDAw MAo+PiAgICAgIChYRU4pICAgIDAwMDAwMDAwMDAwMDAwMDAgMDAwMDAwMDAwMDAwMDAwMCAwMDAw MDAwMDAwMDAwMDAwIAo+PiAwMDAwMDAwMDAwMDAwMDAwCj4+ICAgICAgKFhFTikgWGVuIGNhbGwg dHJhY2U6Cj4+ICAgICAgKFhFTikgICAgWzwwMDAwMDAwMDAwMmM2Mzk4Pl0gY3JlYXRlX2RvbVVz KzB4MjAvMHgyMDggKFBDKQo+PiAgICAgIChYRU4pICAgIFs8MDAwMDAwMDAwMDJjNjM5OD5dIGNy ZWF0ZV9kb21VcysweDIwLzB4MjA4IChMUikKPj4gICAgICAoWEVOKSAgICBbPDAwMDAwMDAwMDAy Y2I1ZjA+XSBzdGFydF94ZW4rMHhjMzQvMHhjYmMKPj4gICAgICAoWEVOKSAgICBbPDAwMDAwMDAw MDAyMDAxYjg+XSAKPj4gYXJtNjQvaGVhZC5vI3ByaW1hcnlfc3dpdGNoZWQrMHgxMC8weDMwCj4+ ICAgICAgKFhFTikKPj4gICAgICAoWEVOKSBkZWJ1Z3RyYWNlX2R1bXAoKSBnbG9iYWwgYnVmZmVy IHN0YXJ0aW5nCj4+ICAgICAgMSBjcHVwb29sX2FkZF9kb21haW4oZG9tPTAscG9vbD0wKSBuX2Rv bSAxIHJjIDAKPj4gICAgICAoWEVOKSB3cmFwOiAwCj4+ICAgICAgKFhFTikgZGVidWd0cmFjZV9k dW1wKCkgZ2xvYmFsIGJ1ZmZlciBmaW5pc2hlZAo+PiAgICAgIChYRU4pCj4+ICAgICAgKFhFTikg KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgo+PiAgICAgIChYRU4pIFBh bmljIG9uIENQVSAwOgo+PiAgICAgIChYRU4pIENQVTA6IFVuZXhwZWN0ZWQgVHJhcDogRGF0YSBB Ym9ydAo+PiAgICAgIChYRU4pICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioKPj4gICAgICAoWEVOKQo+PiAgICAgIChYRU4pIFJlYm9vdCBpbiBmaXZlIHNlY29uZHMuLi4K Pj4KPj4KPj4gU28gSSBwYXNzZWQgRFQgdG8gdGhlIFhlbiB3aXRoIGdydWItMi4wMiBhbmQgaGFj a2VkIGFib3ZlIGNvZGUgCj4+IGJlY2F1c2UgaW4gdGhlIGNyZWF0ZV9kb21Vcwo+PiB3aWxsIHJl cG9ydCBhIGJ1ZyBpZiBjaG9zZW4gbm9kZSAgY2FuIG5vdCBiZSBmaW5kLgo+Cj4gVGhlIGZ1bmN0 aW9uIGlzIHVzZWQgZm9yIGNyZWF0aW5nIG11bHRpcGxlIGRvbWFpbnMgYXQgYm9vdCB0aW1lIGZy b20gCj4gWGVuLiBJdCBpcyB2ZXJ5IERUIGNlbnRyaWMgYXQgdGhlIG1vbWVudCwgYnV0IEFDUEkg cGxhdGZvcm0gbWF5IG5vdCAKPiBjb21lIHdpdGggYSBEVCAodGhvdWdoIHRoZSBFRkkgc3R1YiBt YXkgY3JlYXRlIG9uZSBBVE0pLiBJIGNhbiBzZWUgCj4gb3RoZXIgaXNzdWUgd2l0aCBkb20wbGVz cyBhbmQgQUNQSSwgc28gSSB0aGluayBpdCB3b3VsZCBiZSBiZXN0IHRvIAo+IGp1c3Qgbm90IGNh bGwgdGhlIGZ1bmN0aW9uIHdoZW4gdXNpbmcgQUNQSS4gQ291bGQgeW91IHRyeSBmb2xsb3dpbmcg Cj4gcGF0Y2ggKG5vdCB0ZXN0ZWQgbm9yIGNvbXBpbGVkKToKPgo+IGRpZmYgLS1naXQgYS94ZW4v YXJjaC9hcm0vc2V0dXAuYyBiL3hlbi9hcmNoL2FybS9zZXR1cC5jCj4gaW5kZXggM2M4OTljZDRh MC4uM2U5ZGM4ZmU5ZiAxMDA2NDQKPiAtLS0gYS94ZW4vYXJjaC9hcm0vc2V0dXAuYwo+ICsrKyBi L3hlbi9hcmNoL2FybS9zZXR1cC5jCj4gQEAgLTk4NSw3ICs5ODUsOCBAQCB2b2lkIF9faW5pdCBz dGFydF94ZW4odW5zaWduZWQgbG9uZyBib290X3BoeXNfb2Zmc2V0LAo+Cj4gICAgICBzeXN0ZW1f c3RhdGUgPSBTWVNfU1RBVEVfYWN0aXZlOwo+Cj4gLSAgICBjcmVhdGVfZG9tVXMoKTsKPiArICAg IGlmICggIWFjcGlfZGlzYWJsZWQgKQo+ICsgICAgICAgIGNyZWF0ZV9kb21VcygpOwo+Cj4gICAg ICBkb21haW5fdW5wYXVzZV9ieV9zeXN0ZW1jb250cm9sbGVyKGRvbTApOwo+Cj4gQ2hlZXJzLAo+ CgoKVGhhbmtzIQpJdCBpcyBub3Qgd29ya2luZyBldmVuIEkgY2hhbmdlZCB0aGUgY29uZGl0aW9u IHRvICIgaWYgKCBhY3BpX2Rpc2FibGVkICkgIi4KTXkgZ3J1YiAyLjA0IGNvbmZpZ3VyYXRpb24g aXMgYXMgYmVsb3c6CgogICAgIHhlbl9oeXBlcnZpc29yIC94ZW4gZG9tMF9tZW09NEcgYWNwaT1m b3JjZSBsb2dsdmw9YWxsIGd1ZXN0X2xvZ2x2bD1hbGwKICAgICB4ZW5fbW9kdWxlIC9JbWFnZSBy ZGluaXQ9L2luaXQgIGFjcGk9Zm9yY2Ugbm9pbml0cmQgcm9vdD0vZGV2L3NkYjEgcncKClRoZSBs b2cgd2l0aCB0aGUgY29uZGl0aW9uICIgaWYgKCBhY3BpX2Rpc2FibGVkICkgIiBpcyBhcyBmb2xs b3dpbmc6CgogICAgIChYRU4pIEFkZGluZyBjcHUgMTI2IHRvIHJ1bnF1ZXVlIDAKICAgICAoWEVO KSBBZGRpbmcgY3B1IDEyNyB0byBydW5xdWV1ZSAwCiAgICAgKFhFTikgYWx0ZXJuYXRpdmVzOiBQ YXRjaGluZyB3aXRoIGFsdCB0YWJsZSAwMDAwMDAwMDAwMmQ0ZjQ4IC0+IAowMDAwMDAwMDAwMmQ1 NzY0CiAgICAgKFhFTikgKioqIExPQURJTkcgRE9NQUlOIDAgKioqCiAgICAgKFhFTikgTG9hZGlu ZyBkMCBrZXJuZWwgZnJvbSBib290IG1vZHVsZSBAIDAwMDAwMDAwMTYyNTcwMDAKICAgICAoWEVO KSBBbGxvY2F0aW5nIDE6MSBtYXBwaW5ncyB0b3RhbGxpbmcgNDA5Nk1CIGZvciBkb20wOgogICAg IChYRU4pIEJBTktbMF0gMHgwMDAwMDAwODAwMDAwMC0weDAwMDAwMDEwMDAwMDAwICgxMjhNQikK ICAgICAoWEVOKSBCQU5LWzFdIDB4MDAwMDAwMjAwMDAwMDAtMHgwMDAwMDAzODAwMDAwMCAoMzg0 TUIpCiAgICAgKFhFTikgQkFOS1syXSAweDAwMDAwMDUwMDAwMDAwLTB4MDAwMDAwODAwMDAwMDAg KDc2OE1CKQogICAgIChYRU4pIEJBTktbM10gMHgwMDIwMjAwMDAwMDAwMC0weDAwMjAyMDgwMDAw MDAwICgyMDQ4TUIpCiAgICAgKFhFTikgQkFOS1s0XSAweDAwMjAyMGIwMDAwMDAwLTB4MDAyMDIw YzAwMDAwMDAgKDI1Nk1CKQogICAgIChYRU4pIEJBTktbNV0gMHgwMDIwMjYwMDAwMDAwMC0weDAw MjAyNjIwMDAwMDAwICg1MTJNQikKICAgICAoWEVOKSBHcmFudCB0YWJsZSByYW5nZTogMHgwMDAw MDAxODFjNzAwMC0weDAwMDAwMDE4MjA3MDAwCiAgICAgKFhFTikgQWxsb2NhdGluZyBQUEkgMTYg Zm9yIGV2ZW50IGNoYW5uZWwgaW50ZXJydXB0CiAgICAgKFhFTikgTG9hZGluZyB6SW1hZ2UgZnJv bSAwMDAwMDAwMDE2MjU3MDAwIHRvIAowMDAwMDAwMDA4MDgwMDAwLTAwMDAwMDAwMDk5ODEyMDAK ICAgICAoWEVOKSBMb2FkaW5nIGQwIERUQiB0byAweDAwMDAwMDAwMGZlMDAwMDAtMHgwMDAwMDAw MDBmZTAwMjViCiAgICAgKFhFTikgSW5pdGlhbCBsb3cgbWVtb3J5IHZpcnEgdGhyZXNob2xkIHNl dCBhdCAweDQwMDAgcGFnZXMuCiAgICAgKFhFTikgU2NydWJiaW5nIEZyZWUgUkFNIGluIGJhY2tn cm91bmQKICAgICAoWEVOKSBTdGQuIExvZ2xldmVsOiBBbGwKICAgICAoWEVOKSBHdWVzdCBMb2ds ZXZlbDogQWxsCiAgICAgKFhFTikgKioqIFNlcmlhbCBpbnB1dCB0byBET00wICh0eXBlICdDVFJM LWEnIHRocmVlIHRpbWVzIHRvIHN3aXRjaCAKaW5wdXQpCiAgICAgKFhFTikgRGF0YSBBYm9ydCBU cmFwLiBTeW5kcm9tZT0weDYKICAgICAoWEVOKSBXYWxraW5nIEh5cGVydmlzb3IgVkEgMHgxMCBv biBDUFUwIHZpYSBUVEJSIDB4MDAwMDAwMDAxODJmZjAwMAogICAgIChYRU4pIDBUSFsweDBdID0g MHgwMDAwMDAwMDE4MzAyZjdmCiAgICAgKFhFTikgMVNUWzB4MF0gPSAweDAwMDAwMDAwMTgzMDBm N2YKICAgICAoWEVOKSAyTkRbMHgwXSA9IDB4MDAwMDAwMDAwMDAwMDAwMAogICAgIChYRU4pIENQ VTA6IFVuZXhwZWN0ZWQgVHJhcDogRGF0YSBBYm9ydAogICAgIChYRU4pIC0tLS1bIFhlbi00LjEz LjAtcmMgIGFybTY0ICBkZWJ1Zz15ICAgTm90IHRhaW50ZWQgXS0tLS0KICAgICAoWEVOKSBDUFU6 ICAgIDAKICAgICAoWEVOKSBQQzogICAgIDAwMDAwMDAwMDAyYjY1YzggMDAwMDAwMDAwMDJiNjVj OAogICAgIChYRU4pIExSOiAgICAgMDAwMDAwMDAwMDJjOGU5NAogICAgIChYRU4pIFNQOiAgICAg MDAwMDgwNjYyZmZjZmUwMAogICAgIChYRU4pIENQU1I6ICAgNjAwMDAyNDkgTU9ERTo2NC1iaXQg RUwyaCAoSHlwZXJ2aXNvciwgaGFuZGxlcikKICAgICAoWEVOKSAgICAgIFgwOiAwMDAwMDAwMDAw MDAwMDAwICBYMTogMDAwMDAwMDAxYTYyNzAwMCAgWDI6IAowMDAwMDAwMDAwMjFlNTQ4CiAgICAg KFhFTikgICAgICBYMzogMDAwMDAwMDAwMDAwMDAwMCAgWDQ6IDAwMDAwMDAwMDAyYWY1MDggIFg1 OiAKMDAwMDAwMDAwMDAwMDAwMAogICAgIChYRU4pICAgICAgWDY6IDAwMDA4MDY2MmZmZDAwMDAg IFg3OiAwMDAwMDAwMDAwMDAwMDAwICBYODogCjAwMDAwMDAwMDAwMDAwMDAKICAgICAoWEVOKSAg ICAgIFg5OiAwMDAwMDAwMDAwMDAwMDAwIFgxMDogMDAwMDAwMDAwMDAwMDAwMCBYMTE6IAowMDAw MDAwMDAwMDAwMDAwCiAgICAgKFhFTikgICAgIFgxMjogMDAwMDAwMDAwMDAwMDAwMCBYMTM6IDAw MDAwMDAwMDAwMDAwMDAgWDE0OiAKMDAwMDAwMDAwMDAwMDAwMAogICAgIChYRU4pICAgICBYMTU6 IDAwMDAwMDAwMDA0MDAyZjggWDE2OiAwMDAwMDAwMDAwMmIxMDAwIFgxNzogCjAwMDAwMDAwMDAy YjEwMDAKICAgICAoWEVOKSAgICAgWDE4OiAwMDAwMDAwMDAwMmIxMDAwIFgxOTogMDAwMDAwMDAw MDAwMDAwMCBYMjA6IAowMDAwMDAwMDFhNjI0MDAwCiAgICAgKFhFTikgICAgIFgyMTogMDAwMDAw MDAxYTYyNzAwMCBYMjI6IDAwMDAwMDAwMDAyMWU1NDggWDIzOiAKMDAwMDAwMDAwMDJiMTVjMAog ICAgIChYRU4pICAgICBYMjQ6IDAwMDAwMDAwMDAyYjEwMDAgWDI1OiAwMDAwMDAwMDAwMjFlNTQ4 IFgyNjogCjAwMDAwMDAwMDAyZTEwNzgKICAgICAoWEVOKSAgICAgWDI3OiAwMDAwMjAyNzljMDAw MDAwIFgyODogMDAwMDAwMDAwMDJlMDQxMCAgRlA6IAowMDAwODA2NjJmZmNmZTAwCiAgICAgKFhF TikKICAgICAoWEVOKSAgIFZUQ1JfRUwyOiA4MDBkMzU5MAogICAgIChYRU4pICBWVFRCUl9FTDI6 IDAwMDAwMDAwMDAwMDAwMDAKICAgICAoWEVOKQogICAgIChYRU4pICBTQ1RMUl9FTDI6IDMwY2Qx ODNkCiAgICAgKFhFTikgICAgSENSX0VMMjogMDAwMDAwMDA4MDAwMDAzYQogICAgIChYRU4pICBU VEJSMF9FTDI6IDAwMDAwMDAwMTgyZmYwMDAKICAgICAoWEVOKQogICAgIChYRU4pICAgIEVTUl9F TDI6IDk2MDAwMDA2CiAgICAgKFhFTikgIEhQRkFSX0VMMjogMDAwMDAwMDAwMDAwMDAwMAogICAg IChYRU4pICAgIEZBUl9FTDI6IDAwMDAwMDAwMDAwMDAwMTAKICAgICAoWEVOKQogICAgIChYRU4p IFhlbiBzdGFjayB0cmFjZSBmcm9tIHNwPTAwMDA4MDY2MmZmY2ZlMDA6CiAgICAgKFhFTikgICAg MDAwMDgwNjYyZmZjZmU1MCAwMDAwMDAwMDAwMmM5NWMwIDAwMDAwMDAwMDAyZTAwNzggCjAwMDAw MDAwMDAwMDAwMDEKICAgICAoWEVOKSAgICAwMDAwMDAwMDFhNjI3MDAwIDAwMDAwMDAwMWE2MjQw MDAgMDAwMDAwMDAwMDJiMTVjMCAKMDAwMDAwMDAwMDJiMTAwMAogICAgIChYRU4pICAgIDAwMDAw MDAwMDAwMDAyNDAgMDAwMDAwMDAwMDAwMDAwMCAwMDAwODA2NjJmZmNmZWEwIAowMDAwMDAwMDAw MjY2ZjYwCiAgICAgKFhFTikgICAgMDAwMDAwMDAwMDJiMDAwMCAwMDAwMDAwMDAwMmIwNDgwIDAw MDAwMDAwMDAzNDA0MzAgCjAwMDAwMDAwMDAwMDAwODAKICAgICAoWEVOKSAgICAwMDAwMDAwMDAw MmEyYzUwIDAwMDAwMDAwMDAwMDAwODAgMDAwMDAwMDAwMDM0MDAwMCAKMDAwMDAwMDAwMDI2NmY1 YwogICAgIChYRU4pICAgIDAwMDAwMDAwMDAyZmZkZTAgMDAwMDAwMDAwMDJjYTI2MCAwMDAwMDAw MDAwMDAwMDAwIAowMDAwMDAwMDAwMDAwMDAwCiAgICAgKFhFTikgICAgMDAwMDAwMDAwMDAwMDAw MCAwMDAwMDAwMDAwMDAwMDAwIDAwMDAwMDAwMDAwMDAwMDAgCjAwMDAwMDAwMDAwMDAwMDAKICAg ICAoWEVOKSAgICAwMDAwMDAwMDAwMDAwMDAwIDAwMDAwMDAwMDAwMDAwMDAgMDAwMDAwMDAwMDAw MDAwMCAKMDAwMDAwMDAwMDAwMDAwMAogICAgIChYRU4pICAgIDAwMDAwMDAwMDAwMDAwMDAgMDAw MDAwMDAwMDAwMDAwMCAwMDAwMDAwMDAwMDAwMDAwIAowMDAwMDAwMDAwMDAwMDAwCiAgICAgKFhF TikgICAgMDAwMDAwMDAwMDAwMDAwMCAwMDAwMDAwMDAwMDAwMDAwIDAwMDAwMDAwMDAwMDAwMDAg CjAwMDAwMDAwMDAwMDAwMDAKICAgICAoWEVOKSAgICAwMDAwMDAwMDAwMDAwMDAwIDAwMDAwMDAw MDAwMDAwMDAgMDAwMDAwMDAwMDAwMDAwMCAKMDAwMDAwMDAwMDAwMDAwMAogICAgIChYRU4pICAg IDAwMDAwMDAwMDAwMDAwMDAgMDAwMDAwMDAwMDAwMDAwMCAwMDAwMDAwMDAwMDAwMDAwIAowMDAw MDAwMDAwMDAwMDAwCiAgICAgKFhFTikgICAgMDAwMDAwMDAwMDAwMDAwMCAwMDAwMDAwMDAwMDAw MDAwIDAwMDAwMDAwMDAwMDAwMDAgCjAwMDAwMDAwMDAwMDAwMDAKICAgICAoWEVOKSAgICAwMDAw MDAwMDAwMDAwMDAwIDAwMDAwMDAwMDAwMDAwMDAgMDAwMDAwMDAwMDAwMDAwMCAKMDAwMDAwMDAw MDAwMDAwMAogICAgIChYRU4pICAgIDAwMDAwMDAwMDAwMDAwMDAgMDAwMDAwMDAwMDAwMDAwMCAw MDAwMDAwMDAwMDAwMDAwIAowMDAwMDAwMDAwMDAwMDAwCiAgICAgKFhFTikgICAgMDAwMDAwMDAw MDAwMDAwMCAwMDAwMDAwMDAwMDAwMDAwIDAwMDAwMDAwMDAwMDAwMDAgCjAwMDAwMDAwMDAwMDAw MDAKICAgICAoWEVOKSBYZW4gY2FsbCB0cmFjZToKICAgICAoWEVOKSAgICBbPDAwMDAwMDAwMDAy YjY1Yzg+XSAwMDAwMDAwMDAwMmI2NWM4IChQQykKICAgICAoWEVOKSAgICBbPDAwMDAwMDAwMDAy YzhlOTQ+XSAwMDAwMDAwMDAwMmM4ZTk0IChMUikKICAgICAoWEVOKSAgICBbPDAwMDAwMDAwMDAy Yzk1YzA+XSAwMDAwMDAwMDAwMmM5NWMwCiAgICAgKFhFTikgICAgWzwwMDAwMDAwMDAwMjY2ZjYw Pl0gc2V0dXAuYyNpbml0X2RvbmUrMHgxMC8weDIwCiAgICAgKFhFTikgICAgWzwwMDAwMDAwMDAw MmNhMjYwPl0gMDAwMDAwMDAwMDJjYTI2MAogICAgIChYRU4pCiAgICAgKFhFTikKICAgICAoWEVO KSAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCiAgICAgKFhFTikgUGFu aWMgb24gQ1BVIDA6CiAgICAgKFhFTikgQ1BVMDogVW5leHBlY3RlZCBUcmFwOiBEYXRhIEFib3J0 CiAgICAgKFhFTikgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgogICAg IChYRU4pCiAgICAgKFhFTikgUmVib290IGluIGZpdmUgc2Vjb25kcy4uLgoKQmVzdCBSZWdhcmRz LApXZWkKCgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18K WGVuLWRldmVsIG1haWxpbmcgbGlzdApYZW4tZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0 cHM6Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL3hlbi1kZXZlbA==