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=-8.3 required=3.0 tests=DKIM_INVALID,DKIM_SIGNED, INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS, URIBL_BLOCKED,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 15F26C3A5A1 for ; Fri, 23 Aug 2019 01:10:48 +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 D7717233A0 for ; Fri, 23 Aug 2019 01:10:47 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=fail reason="signature verification failed" (1024-bit key) header.d=kernel.org header.i=@kernel.org header.b="bXjBYTKv" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org D7717233A0 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=kernel.org 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 1i0y5l-0007fg-66; Fri, 23 Aug 2019 01:10:13 +0000 Received: from all-amaz-eas1.inumbo.com ([34.197.232.57] helo=us1-amaz-eas2.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from ) id 1i0y5j-0007fX-Gv for xen-devel@lists.xenproject.org; Fri, 23 Aug 2019 01:10:11 +0000 X-Inumbo-ID: bff702c7-c542-11e9-ade0-12813bfff9fa Received: from mail.kernel.org (unknown [198.145.29.99]) by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS id bff702c7-c542-11e9-ade0-12813bfff9fa; Fri, 23 Aug 2019 01:10:10 +0000 (UTC) Received: from localhost (c-67-164-102-47.hsd1.ca.comcast.net [67.164.102.47]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id 30C39233A0; Fri, 23 Aug 2019 01:10:09 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1566522609; bh=cJx6mwxnvmj3qIVM7+pieuneky0iDWv2nVES34xXq1I=; h=Date:From:To:cc:Subject:In-Reply-To:References:From; b=bXjBYTKvDokrNI2RvQ/KO3PdRvnxeWVBfKBTsOK80bA1K6RFC/Dkc+x48v95uKVuh leNYXlbFwiZzFFy0JI8mIWaWheEYOWObVBSPrF4duPTHlPQDk2fInVUJg0wZM3Zm/9 xxWEtF+DZs9v7lXKfdhEAwxgsUTvfzRJQ+16HNT8= Date: Thu, 22 Aug 2019 18:10:08 -0700 (PDT) From: Stefano Stabellini X-X-Sender: sstabellini@sstabellini-ThinkPad-T480s To: Julien Grall In-Reply-To: <20190812173019.11956-28-julien.grall@arm.com> Message-ID: References: <20190812173019.11956-1-julien.grall@arm.com> <20190812173019.11956-28-julien.grall@arm.com> User-Agent: Alpine 2.21 (DEB 202 2017-01-01) MIME-Version: 1.0 Subject: Re: [Xen-devel] [PATCH v3 27/28] xen/arm32: head: Introduce macros to create table and mapping entry 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, Stefano Stabellini , Volodymyr Babchuk Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: xen-devel-bounces@lists.xenproject.org Sender: "Xen-devel" T24gTW9uLCAxMiBBdWcgMjAxOSwgSnVsaWVuIEdyYWxsIHdyb3RlOgo+IEF0IHRoZSBtb21lbnQs IGFueSB1cGRhdGUgdG8gdGhlIGJvb3QtcGFnZXMgYXJlIG9wZW4tY29kZWQuIFRoaXMgaXMKPiBt YWtpbmcgbW9yZSBkaWZmaWN1bHQgdG8gdW5kZXJzdGFuZCB0aGUgbG9naWMgb2YgYSBmdW5jdGlv biBhcyBlYWNoCj4gdXBkYXRlIHJvdWdobHkgcmVxdWlyZXMgNiBpbnN0cnVjdGlvbnMuCj4gCj4g VG8gZWFzZSB0aGUgcmVhZGFiaWxpdHksIHR3byBuZXcgbWFjcm9zIGFyZSBpbnRyb2R1Y2VkOgo+ ICAgICAtIGNyZWF0ZV90YWJsZV9lbnRyeTogQ3JlYXRlIGEgcGFnZS10YWJsZSBlbnRyeSBpbiBh IGdpdmVuIHRhYmxlLgo+ICAgICBUaGlzIGNhbiB3b3JrIGF0IGFueSBsZXZlbC4KPiAgICAgLSBj cmVhdGVfbWFwcGluZ19lbnRyeTogQ3JlYXRlIGEgbWFwcGluZyBlbnRyeSBpbiBhIGdpdmVuIHRh YmxlLgo+ICAgICBOb25lIG9mIHRoZSB1c2VycyB3aWxsIHJlcXVpcmUgdG8gbWFwIGF0IGFueSBv dGhlciBsZXZlbCB0aGFuIDNyZAo+ICAgICAoaS5lIHBhZ2UgZ3JhbnVsYXJpdHkpLiBTbyB0aGUg bWFjcm8gaXMgc3VwcG9ydGluZyBzdXBwb3J0IDNyZCBsZXZlbAo+ICAgICBtYXBwaW5nLgo+IAo+ IFVubGlrZSBhcm02NCwgdGhlcmUgYXJlIG5vIGVhc3kgd2F5IHRvIGhhdmUgYSBQQyByZWxhdGl2 ZSBhZGRyZXNzIHdpdGhpbgo+IHRoZSByYW5nZSAtLys0R0IuIEluIG9yZGVyIHRvIGhhdmUgdGhl IHBvc3NpYmlsaXR5IHRvIHVzZSB0aGUgbWFjcm8gaW4KPiBjb250ZXh0IHdpdGggTU1VIG9uL29m ZiwgdGhlIHVzZXIgbmVlZHMgdG8gdGVsbCB0aGUgc3RhdGUgb2YgdGhlIE1NVS4KPiAKPiBMYXN0 bHksIHRha2UgdGhlIG9wcG9ydHVuaXR5IHRvIHJlcGxhY2Ugb3Blbi1jb2RlZCB2ZXJzaW9uIGlu Cj4gc2V0dXBfZml4bWFwKCkgYnkgdGhlIHR3byBuZXcgbWFjcm9zLiBUaGUgb25lcyBpbiBjcmVh dGVfcGFnZV90YWJsZXMoKQo+IHdpbGwgYmUgcmVwbGFjZWQgaW4gYSBmb2xsb3ctdXAgcGF0Y2gu Cj4gCj4gU2lnbmVkLW9mZi1ieTogSnVsaWVuIEdyYWxsIDxqdWxpZW4uZ3JhbGxAYXJtLmNvbT4K PiAKPiAtLS0KPiAgICAgVGhlIGFkcl9sIGhhY2sgaXMgYSBiaXQgdWdseSwgYnV0IEkgY2FuJ3Qg ZmluZCBuaWNlciB3YXkgdG8gYXZvaWQKPiAgICAgY29kZSBkdXBsaWNhdGlvbiBhbmQgaW1wcm92 ZSByZWFkYWJpbGl0eS4KPiAKPiAgICAgQ2hhbmdlcyBpbiB2MzoKPiAgICAgICAgIC0gUGF0Y2gg YWRkZWQKPiAtLS0KPiAgeGVuL2FyY2gvYXJtL2FybTMyL2hlYWQuUyB8IDEwOCArKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tCj4gIDEgZmlsZSBjaGFuZ2VkLCA4 OSBpbnNlcnRpb25zKCspLCAxOSBkZWxldGlvbnMoLSkKPiAKPiBkaWZmIC0tZ2l0IGEveGVuL2Fy Y2gvYXJtL2FybTMyL2hlYWQuUyBiL3hlbi9hcmNoL2FybS9hcm0zMi9oZWFkLlMKPiBpbmRleCBl ODZhOWY5NWU3Li42ZDAzZmVjYWYyIDEwMDY0NAo+IC0tLSBhL3hlbi9hcmNoL2FybS9hcm0zMi9o ZWFkLlMKPiArKysgYi94ZW4vYXJjaC9hcm0vYXJtMzIvaGVhZC5TCj4gQEAgLTUwLDYgKzUwLDIw IEBACj4gIC5lbmRtCj4gIAo+ICAvKgo+ICsgKiBUaGVyZSBhcmUgbm8gZWFzeSB3YXkgdG8gaGF2 ZSBhIFBDIHJlbGF0aXZlIGFkZHJlc3Mgd2l0aGluIHRoZSByYW5nZQo+ICsgKiArLy0gNEdCIG9m IHRoZSBQQy4KPiArICoKPiArICogVGhpcyBtYWNybyB3b3JrYXJvdW5kIGl0IGJ5IGFza2luZyB0 aGUgdXNlciB0byB0ZWxsIHdoZXRoZXIgdGhlIE1NVQo+ICsgKiBoYXMgYmVlbiB0dXJuZWQgb24g b3Igbm90LgoKSSB3b3VsZCBhZGQgb25lIHN0YXRlbWVudCBzYXlpbmcgd2h5IHdlIGFyZSB1c2lu ZyByMTAgYmVsb3cgaW4gdGhlCmltcGxlbWVudGF0aW9uLiBKdXN0IGEgc3VnZ2VzdGlvbiB0byBt YWtlIHRoaW5ncyBjbGVhcmVyLgoKCj4gKyAqLwo+ICsubWFjcm8gYWRyX2wsIGRzdCwgc3ltLCBt bXUKPiArICAgICAgICBsZHIgICBcZHN0LCA9XHN5bQo+ICsgICAgICAgIC5pZiBcbW11ID09IDAK PiArICAgICAgICBhZGQgICBcZHN0LCBcZHN0LCByMTAKPiArICAgICAgICAuZW5kaWYKPiArLmVu ZG0KPiArCj4gKy8qCj4gICAqIENvbW1vbiByZWdpc3RlciB1c2FnZSBpbiB0aGlzIGZpbGU6Cj4g ICAqICAgcjAgIC0KPiAgICogICByMSAgLQo+IEBAIC0zNDIsNiArMzU2LDc2IEBAIGNwdV9pbml0 X2RvbmU6Cj4gIEVORFBST0MoY3B1X2luaXQpCj4gIAo+ICAvKgo+ICsgKiBNYWNybyB0byBjcmVh dGUgYSBwYWdlIHRhYmxlIGVudHJ5IGluIFxwdGJsIHRvIFx0YmwKPiArICoKPiArICogcHRibDog ICAgdGFibGUgc3ltYm9sIHdoZXJlIHRoZSBlbnRyeSB3aWxsIGJlIGNyZWF0ZWQKPiArICogdGJs OiAgICAgdGFibGUgc3ltYm9sIHRvIHBvaW50IHRvCj4gKyAqIHZpcnQ6ICAgIHZpcnR1YWwgYWRk cmVzcwo+ICsgKiBzaGlmdDogICAjaW1tIHBhZ2UgdGFibGUgc2hpZnQKPiArICogbW11OiAgICAg SXMgdGhlIE1NVSB0dXJuZWQgb24vb2ZmLiBJZiBub3Qgc3BlY2lmaWVkIGl0IHdpbGwgYmUgb2Zm Cj4gKyAqCj4gKyAqIFByZXNlcnZlcyBcdmlydAo+ICsgKiBDbG9iYmVycyByMSAtIHI0CgpJbiB0 aGUgNjRiaXQgdmVyc2lvbiB5b3UgYWRkZWQgdGhlIHRlbXAgcmVnaXN0ZXJzIHRvIHRoZSBwYXJh bWV0ZXIgbGlzdC4KV2h5IGRvIHRoaW5ncyBkaWZmZXJlbnRseSBoZXJlLCBoYXJkLWNvZGluZyB0 aGUgdXNhZ2Ugb2YgcjEtcjQ/CgoKPiArICogQWxzbyB1c2UgcjEwIGZvciB0aGUgcGh5cyBvZmZz ZXQuCj4gKyAqCj4gKyAqIE5vdGUgdGhhdCBcdmlydCBzaG91bGQgYmUgaW4gYSByZWdpc3RlciBv dGhlciB0aGFuIHIxIC0gcjQKPiArICovCj4gKy5tYWNybyBjcmVhdGVfdGFibGVfZW50cnksIHB0 YmwsIHRibCwgdmlydCwgc2hpZnQsIG1tdT0wCj4gKyAgICAgICAgbHNyICAgcjEsIFx2aXJ0LCAj XHNoaWZ0Cj4gKyAgICAgICAgbW92X3cgcjIsIExQQUVfRU5UUllfTUFTSwo+ICsgICAgICAgIGFu ZCAgIHIxLCByMSwgcjIgICAgICAgICAgICAgLyogcjEgOj0gc2xvdCBpbiBcdGxiICovCj4gKyAg ICAgICAgbHNsICAgcjEsIHIxLCAjMyAgICAgICAgICAgICAvKiByMSA6PSBzbG90IG9mZnNldCBp biBcdGxiICovCj4gKwo+ICsgICAgICAgIGxkciAgIHI0LCA9XHRibAo+ICsgICAgICAgIGFkZCAg IHI0LCByNCwgcjEwICAgICAgICAgICAgLyogcjQgOj0gcGFkZHIoXHRsYikgKi8KCnlvdSBjb3Vs ZCB1c2UgYWRyX2w/CgoKPiArICAgICAgICBtb3YgICByMiwgI1BUX1BUICAgICAgICAgICAgIC8q IHIyOnIzIDo9IHJpZ2h0IGZvciBsaW5lYXIgUFQgKi8KPiArICAgICAgICBvcnIgICByMiwgcjIs IHI0ICAgICAgICAgICAgIC8qICAgICAgICAgICArIFx0bGIgcGFkZHIgKi8KPiArICAgICAgICBt b3YgICByMywgIzAKPiArCj4gKyAgICAgICAgYWRyX2wgcjQsIFxwdGJsLCBcbW11Cj4gKwo+ICsg ICAgICAgIHN0cmQgIHIyLCByMywgW3I0LCByMV0KPiArLmVuZG0KPiArCj4gKy8qCj4gKyAqIE1h Y3JvIHRvIGNyZWF0ZSBhIG1hcHBpbmcgZW50cnkgaW4gXHRibCB0byBccGFkZHIuIE9ubHkgbWFw cGluZyBpbiAzcmQKPiArICogbGV2ZWwgdGFibGUgKGkuZSBwYWdlIGdyYW51bGFyaXR5KSBpcyBz dXBwb3J0ZWQuCj4gKyAqCj4gKyAqIHRibDogICAgIHRhYmxlIHN5bWJvbCB3aGVyZSB0aGUgZW50 cnkgd2lsbCBiZSBjcmVhdGVkCj4gKyAqIHZpcnQ6ICAgIHZpcnR1YWwgYWRkcmVzcwo+ICsgKiBw aHlzOiAgICBwaHlzaWNhbCBhZGRyZXNzCj4gKyAqIHR5cGU6ICAgIG1hcHBpbmcgdHlwZS4gSWYg bm90IHNwZWNpZmllZCBpdCB3aWxsIGJlIG5vcm1hbCBtZW1vcnkgKFBUX01FTV9MMykKPiArICog bW11OiAgICAgSXMgdGhlIE1NVSB0dXJuZWQgb24vb2ZmLiBJZiBub3Qgc3BlY2lmaWVkIGl0IHdp bGwgYmUgb2ZmCj4gKyAqCj4gKyAqIFByZXNlcnZlcyBcdmlydCwgXHBoeXMKPiArICogQ2xvYmJl cnMgcjEgLSByNAoKU2FtZSBoZXJlCgoKPiArICogKiBBbHNvIHVzZSByMTAgZm9yIHRoZSBwaHlz IG9mZnNldC4KPiArICoKPiArICogTm90ZSB0aGF0IFx2aXJ0IGFuZCBccGFkZHIgc2hvdWxkIGJl IGluIG90aGVyIHJlZ2lzdGVycyB0aGFuIHIxIC0gcjQKPiArICogYW5kIGJlIGRpc3RpbmN0Lgo+ ICsgKi8KPiArLm1hY3JvIGNyZWF0ZV9tYXBwaW5nX2VudHJ5LCB0YmwsIHZpcnQsIHBoeXMsIHR5 cGU9UFRfTUVNX0wzLCBtbXU9MAo+ICsgICAgICAgIGxzciAgIHI0LCBccGh5cywgI1RISVJEX1NI SUZUCj4gKyAgICAgICAgbHNsICAgcjQsIHI0LCAjVEhJUkRfU0hJRlQgICAvKiByNCA6PSBQQUdF X0FMSUdORUQocGh5cykgKi8KCmFuZCBUSElSRF9NQVNLIGxpa2UgZm9yIGFybTY0PyBEb2Vzbid0 IHJlYWxseSBtYXR0ZXIgYnV0IGl0IHdvdWxkIGJlCm5pY2VyIGlmIHdlIGNvdWxkIGtlZXAgdGhl bSBzaW1pbGFyLgoKCj4gKyAgICAgICAgbW92X3cgcjIsIExQQUVfRU5UUllfTUFTSwo+ICsgICAg ICAgIGxzciAgIHIxLCBcdmlydCwgI1RISVJEX1NISUZUCj4gKyAgICAgICAgYW5kICAgcjEsIHIx LCByMiAgICAgICAgICAgICAvKiByMSA6PSBzbG90IGluIFx0bGIgKi8KPiArICAgICAgICBsc2wg ICByMSwgcjEsICMzICAgICAgICAgICAgIC8qIHIxIDo9IHNsb3Qgb2Zmc2V0IGluIFx0bGIgKi8K Ckkgd291bGQgcHJlZmVyIGlmIHlvdSBtb3ZlZCB0aGVzZSBmb3IgbGluZXMgdXAsIGxpa2UgeW91 IGhhdmUgZG93biBpbgpjcmVhdGVfdGFibGVfZW50cnksIGl0IGlzIGNsZWFyZXIgdG8gcmVhZCBm b3IgbWUuIEp1c3QgYW4gb3B0aW9uYWwKc3VnZ2VzdGlvbi4KCgo+ICsgICAgICAgIG1vdiAgIHIy LCAjXHR5cGUgICAgICAgICAgICAgLyogcjI6cjMgOj0gcmlnaHQgZm9yIHNlY3Rpb24gUFQgKi8K PiArICAgICAgICBvcnIgICByMiwgcjIsIHI0ICAgICAgICAgICAgIC8qICAgICAgICAgICsgUEFH RV9BTElHTkVEKHBoeXMpICovCj4gKyAgICAgICAgbW92ICAgcjMsICMwCj4gKwo+ICsgICAgICAg IGFkcl9sIHI0LCBcdGJsLCBcbW11Cj4gKwo+ICsgICAgICAgIHN0cmQgIHIyLCByMywgW3I0LCBy MV0KPiArLmVuZG0KPiArCj4gKy8qCj4gICAqIFJlYnVpbGQgdGhlIGJvb3QgcGFnZXRhYmxlJ3Mg Zmlyc3QtbGV2ZWwgZW50cmllcy4gVGhlIHN0cnVjdHVyZQo+ICAgKiBpcyBkZXNjcmliZWQgaW4g bW0uYy4KPiAgICoKPiBAQCAtNTU5LDMxICs2NDMsMTcgQEAgRU5EUFJPQyhyZW1vdmVfaWRlbnRp dHlfbWFwcGluZykKPiAgICogICByMTA6IFBoeXNpY2FsIG9mZnNldAo+ICAgKiAgIHIxMTogRWFy bHkgVUFSVCBiYXNlIHBoeXNpY2FsIGFkZHJlc3MKPiAgICoKPiAtICogQ2xvYmJlcnMgcjEgLSBy NAo+ICsgKiBDbG9iYmVycyByMCAtIHI0Cj4gICAqLwo+ICBzZXR1cF9maXhtYXA6Cj4gICNpZiBk ZWZpbmVkKENPTkZJR19FQVJMWV9QUklOVEspCj4gICAgICAgICAgLyogQWRkIFVBUlQgdG8gdGhl IGZpeG1hcCB0YWJsZSAqLwo+IC0gICAgICAgIGxkciAgIHIxLCA9eGVuX2ZpeG1hcCAgICAgICAg LyogcjEgOj0gdmFkZHIgKHhlbl9maXhtYXApICovCj4gLSAgICAgICAgbHNyICAgcjIsIHIxMSwg I1RISVJEX1NISUZUCj4gLSAgICAgICAgbHNsICAgcjIsIHIyLCAjVEhJUkRfU0hJRlQgICAvKiA0 SyBhbGlnbmVkIHBhZGRyIG9mIFVBUlQgKi8KPiAtICAgICAgICBvcnIgICByMiwgcjIsICNQVF9V UFBFUihERVZfTDMpCj4gLSAgICAgICAgb3JyICAgcjIsIHIyLCAjUFRfTE9XRVIoREVWX0wzKSAv KiByMjpyMyA6PSA0SyBkZXYgbWFwIGluY2x1ZGluZyBVQVJUICovCj4gLSAgICAgICAgbW92ICAg cjMsICMweDAKPiAtICAgICAgICBzdHJkICByMiwgcjMsIFtyMSwgIyhGSVhNQVBfQ09OU09MRSo4 KV0gLyogTWFwIGl0IGluIHRoZSBmaXJzdCBmaXhtYXAncyBzbG90ICovCj4gKyAgICAgICAgbGRy ICAgcjAsID1FQVJMWV9VQVJUX1ZJUlRVQUxfQUREUkVTUwo+ICsgICAgICAgIGNyZWF0ZV9tYXBw aW5nX2VudHJ5IHhlbl9maXhtYXAsIHIwLCByMTEsIHR5cGU9UFRfREVWX0wzLCBtbXU9MQo+ICAj ZW5kaWYKPiAtCj4gICAgICAgICAgLyogTWFwIGZpeG1hcCBpbnRvIGJvb3Rfc2Vjb25kICovCj4g LSAgICAgICAgbGRyICAgcjEsID1ib290X3NlY29uZCAgICAgICAvKiByMSA6PSB2YWRkciAoYm9v dF9zZWNvbmQpICovCj4gLSAgICAgICAgbGRyICAgcjIsID14ZW5fZml4bWFwCj4gLSAgICAgICAg YWRkICAgcjIsIHIyLCByMTAgICAgICAgICAgICAvKiByMiA6PSBwYWRkciAoeGVuX2ZpeG1hcCkg Ki8KPiAtICAgICAgICBvcnIgICByMiwgcjIsICNQVF9VUFBFUihQVCkKPiAtICAgICAgICBvcnIg ICByMiwgcjIsICNQVF9MT1dFUihQVCkgIC8qIHIyOnIzIDo9IHRhYmxlIG1hcCBvZiB4ZW5fZml4 bWFwICovCj4gLSAgICAgICAgbGRyICAgcjQsID1GSVhNQVBfQUREUigwKQo+IC0gICAgICAgIG1v diAgIHI0LCByNCwgbHNyICMoU0VDT05EX1NISUZUIC0gMykgICAvKiByNCA6PSBTbG90IGZvciBG SVhNQVAoMCkgKi8KPiAtICAgICAgICBtb3YgICByMywgIzB4MAo+IC0gICAgICAgIHN0cmQgIHIy LCByMywgW3IxLCByNF0gICAgICAgLyogTWFwIGl0IGluIHRoZSBmaXhtYXAncyBzbG90ICovCj4g LQo+ICsgICAgICAgIG1vdl93IHIwLCBGSVhNQVBfQUREUigwKQo+ICsgICAgICAgIGNyZWF0ZV90 YWJsZV9lbnRyeSBib290X3NlY29uZCwgeGVuX2ZpeG1hcCwgcjAsIFNFQ09ORF9TSElGVCwgbW11 PTEKPiAgICAgICAgICAvKiBFbnN1cmUgYW55IHBhZ2UgdGFibGUgdXBkYXRlcyBtYWRlIGFib3Zl IGhhdmUgb2NjdXJyZWQuICovCj4gICAgICAgICAgZHNiICAgbnNoc3QKPiAgCj4gLS0gCj4gMi4x MS4wCj4gCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpY ZW4tZGV2ZWwgbWFpbGluZyBsaXN0Clhlbi1kZXZlbEBsaXN0cy54ZW5wcm9qZWN0Lm9yZwpodHRw czovL2xpc3RzLnhlbnByb2plY3Qub3JnL21haWxtYW4vbGlzdGluZm8veGVuLWRldmVs