Re: [libre-riscv-dev] system call (sc) LEV "reserved field"
authorLuke Kenneth Casson Leighton <lkcl@lkcl.net>
Thu, 23 Jul 2020 04:16:38 +0000 (05:16 +0100)
committerlibre-riscv-dev <libre-riscv-dev@lists.libre-riscv.org>
Thu, 23 Jul 2020 04:17:03 +0000 (05:17 +0100)
e4/f904ee43f2dffc167ba2b8f3ada84ecf5efc4c [new file with mode: 0644]

diff --git a/e4/f904ee43f2dffc167ba2b8f3ada84ecf5efc4c b/e4/f904ee43f2dffc167ba2b8f3ada84ecf5efc4c
new file mode 100644 (file)
index 0000000..7c077f7
--- /dev/null
@@ -0,0 +1,200 @@
+Return-path: <libre-riscv-dev-bounces@lists.libre-riscv.org>
+Envelope-to: publicinbox@libre-riscv.org
+Delivery-date: Thu, 23 Jul 2020 05:17:04 +0100
+Received: from localhost ([::1] helo=libre-riscv.org)
+       by libre-soc.org with esmtp (Exim 4.92)
+       (envelope-from <libre-riscv-dev-bounces@lists.libre-riscv.org>)
+       id 1jySfH-0006gi-5O; Thu, 23 Jul 2020 05:17:03 +0100
+Received: from lkcl.net ([217.147.94.29])
+ by libre-soc.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
+ (Exim 4.92) (envelope-from <lkcl@lkcl.net>) id 1jySfF-0006gY-1Z
+ for libre-riscv-dev@lists.libre-riscv.org; Thu, 23 Jul 2020 05:17:01 +0100
+DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lkcl.net;
+ s=201607131; 
+ h=Content-Type:Cc:To:Subject:Message-ID:Date:From:References:In-Reply-To:MIME-Version;
+ bh=wSLT3/DFNNO0EENL1I20kEQjmyO6xVHcHlz9XMs9NvE=; 
+ b=CgPOuCmeeZ3Kr3L5niGneLMGShG9+5jIp0cJmY4qCj5jWSJYv3J1B/H6/RrU9V6JrXGBahKSHK0scaLkwcpYq8DTFGHwwQGR2o2jK3cBysaMVr0f09tVXDXKK6yiUkyfj+RSodwP2H/34rIgrPZPEKFf7+8kUbqqm0iSG4J7y3I=;
+Received: from mail-lj1-f172.google.com ([209.85.208.172])
+ by lkcl.net with esmtpsa (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
+ (Exim 4.84_2) (envelope-from <lkcl@lkcl.net>) id 1jySfE-0002X6-8B
+ for libre-riscv-dev@lists.libre-riscv.org; Thu, 23 Jul 2020 04:17:00 +0000
+Received: by mail-lj1-f172.google.com with SMTP id e8so4902662ljb.0
+ for <libre-riscv-dev@lists.libre-riscv.org>;
+ Wed, 22 Jul 2020 21:16:44 -0700 (PDT)
+X-Gm-Message-State: AOAM532mDkywTfs1sZGz7RCmW6v3fAvpdFx0Kv44PQ/eIj9Z4BS5wTI4
+ ZnITTHjOX6dCKIM7co2023DVkRw8WLaEecnymqc=
+X-Google-Smtp-Source: ABdhPJx0LVAi8EJPj0fiRreCTlkgcIbVw97ytVjV99YzlUIFXF6lrCp6v9bl/j/P7jQZlplK1ZTNSk5Akbg3/PiYqhA=
+X-Received: by 2002:a2e:8693:: with SMTP id l19mr951722lji.361.1595477799029; 
+ Wed, 22 Jul 2020 21:16:39 -0700 (PDT)
+MIME-Version: 1.0
+Received: by 2002:a05:6504:702:0:0:0:0 with HTTP; Wed, 22 Jul 2020 21:16:38
+ -0700 (PDT)
+In-Reply-To: <bc0527a82b8a777486388ab6084ce364db4c278c.camel@kernel.crashing.org>
+References: <CAPweEDzJpX8mDE1QJO6=rPEQfz0jCt+Yi9sS48cE4bXcu8AwcQ@mail.gmail.com>
+ <20200722224713.GA213782@thinks.paulus.ozlabs.org>
+ <CAPweEDxxJqcy4kAcL0+wDYQh9A0KtW3dSi9kMdQ-_YotuRSsQw@mail.gmail.com>
+ <bc0527a82b8a777486388ab6084ce364db4c278c.camel@kernel.crashing.org>
+From: Luke Kenneth Casson Leighton <lkcl@lkcl.net>
+Date: Thu, 23 Jul 2020 05:16:38 +0100
+X-Gmail-Original-Message-ID: <CAPweEDx_gUy8KoQUrfE+Xn-URqFQsMiiT8A9WcLsK67E5bY8Jg@mail.gmail.com>
+Message-ID: <CAPweEDx_gUy8KoQUrfE+Xn-URqFQsMiiT8A9WcLsK67E5bY8Jg@mail.gmail.com>
+To: Benjamin Herrenschmidt <benh@kernel.crashing.org>
+X-Content-Filtered-By: Mailman/MimeDel 2.1.23
+Subject: Re: [libre-riscv-dev] system call (sc) LEV "reserved field"
+X-BeenThere: libre-riscv-dev@lists.libre-riscv.org
+X-Mailman-Version: 2.1.23
+Precedence: list
+List-Id: Libre-RISCV General Development
+ <libre-riscv-dev.lists.libre-riscv.org>
+List-Unsubscribe: <http://lists.libre-riscv.org/mailman/options/libre-riscv-dev>, 
+ <mailto:libre-riscv-dev-request@lists.libre-riscv.org?subject=unsubscribe>
+List-Archive: <http://lists.libre-riscv.org/pipermail/libre-riscv-dev/>
+List-Post: <mailto:libre-riscv-dev@lists.libre-riscv.org>
+List-Help: <mailto:libre-riscv-dev-request@lists.libre-riscv.org?subject=help>
+List-Subscribe: <http://lists.libre-riscv.org/mailman/listinfo/libre-riscv-dev>, 
+ <mailto:libre-riscv-dev-request@lists.libre-riscv.org?subject=subscribe>
+Reply-To: Libre-RISCV General Development
+ <libre-riscv-dev@lists.libre-riscv.org>
+Cc: "openpower-hdl-cores@mailinglist.openpowerfoundation.org"
+ <openpower-hdl-cores@mailinglist.openpowerfoundation.org>,
+ Libre-RISCV General Development <libre-riscv-dev@lists.libre-riscv.org>
+Content-Type: text/plain; charset="utf-8"
+Content-Transfer-Encoding: base64
+Errors-To: libre-riscv-dev-bounces@lists.libre-riscv.org
+Sender: "libre-riscv-dev" <libre-riscv-dev-bounces@lists.libre-riscv.org>
+
+aGkgYmVuamFtaW4sIHdlbGNvbWUsIGFuZCB0aGFuayB5b3UgZm9yIHlvdXIgaW5zaWdodHMuCgpP
+biBUaHVyc2RheSwgSnVseSAyMywgMjAyMCwgQmVuamFtaW4gSGVycmVuc2NobWlkdCA8YmVuaEBr
+ZXJuZWwuY3Jhc2hpbmcub3JnPgp3cm90ZToKCj4gT24gVGh1LCAyMDIwLTA3LTIzIGF0IDAwOjQx
+ICswMTAwLCBMdWtlIEtlbm5ldGggQ2Fzc29uIExlaWdodG9uIHdyb3RlOgo+Cj4gPiBzbywgd2hl
+biBzb21lIGJpdCBpcyBhZGRlZCBpbiB0aGUgZnV0dXJlLCBhbiBvbGRlciBwcm9jZXNzb3IgKGFu
+ZCB0aGUKPiA+IGRldmljZSBpdCBpcyBpbikgYmFzaWNhbGx5IGhhcyB0byBiZSB0aHJvd24gaW50
+byBsYW5kZmlsbC4KPgo+IERlcGVuZHMsIGl0IGdvZXMgYm90aCB3YXlzLiBGb3IgZXhhbXBsZSwg
+dGhpcyBpcyB3aGF0IGFsbG93ZWQgdGhlCj4gYWRkaXRpb24gb2YgbHdzeW5jIHdpdGhvdXQgdGhy
+b3dpbmcgb2xkZXIgcHJvY2Vzc29ycyBpbnRvIHRoZSBsYW5kZmlsbAo+IGJlY2F1c2UgaXQgd291
+bGQgYXV0b21hdGljYWxseSAiZXNjYWxhdGUiIHRvIGEgZnVsbCBzeW5jIG9uIHByb2Nlc3NvcnMK
+PiB0aGF0IGRpZG4ndCBpbXBsZW1lbnQgaXQKCgphaC4gICBvbiBmaXJzdCBnbGFuY2UgdGhpcyBz
+ZWVtcyBvay4KCgo+IChvciBzaG91bGQgaGF2ZS4uLiBGU0wgZGlkIHNjcmV3IHRoYXQgdXAgb24K
+PiBzb21lIGNvcmVzKS4KCgpvaCB3aG9vcHMgOikKCndoYXQgaSBoYXZlIG9ic2VydmVkIChhZ2Fp
+biB0aGlzIGlzIGZyb20gUklTQ1YpLCBmb3IgaW5zdHJ1Y3Rpb25zIHRoYXQgY2FuCmJlICJzYWZl
+bHkgaWdub3JlZCIgYXJlIG9mIGEgImhpbnQiIHR5cGUuCgp0aGUgUklTQ1YgRmVuY2UgaW5zdHJ1
+Y3Rpb25zIGFsc28gZmVsbCBpbnRvIHRoaXMgY2F0ZWdvcnkuICBiZWluZwpvcHRpbWlzYXRpb25z
+LCBsZXNzIGNvbXBsZXggaW1wbGVtZW50YXRpb25zIGNvdWxkIGNvbXBsZXRlbHkgaWdub3JlIHRo
+ZW0uCgpob3dldmVyIGluIHRoZSBleGFtcGxlIHRoYXQgeW91IGdpdmUgLSBsd3N5bmMgLSBpIHRh
+a2UgaXQgdGhhdCB0aGlzIGlzIGEKImxlc3MgY29zdGx5IiBjYWNoZS9zeW5jIGZsdXNoIHR5cGUg
+aW5zdHJ1Y3Rpb24gdGhhbiB0aGUgb25lIHRoYXQgaXQgd2FzCmFkZGVkIHRvPwoKaS5lLiBvbGQg
+c3luYyBpcyBhICJzdXBlcnNldCIgb2YgbHdzeW5jPwoKdGhpcyBpcyB2ZXJ5IGludGVyZXN0aW5n
+IHRvIG1lLCBiZWNhdXNlIGkgaGF2ZSBtYWRlIGEgbG9uZ3Rlcm0gc3R1ZHkgb2YKImhvdyB0byBk
+ZXZlbG9wIHN0YWJsZSBzcGVjaWZpY2F0aW9ucyIsIGFuZCBpdCBpcyB0aGUgZmlyc3QgdGltZSBp
+biAyNQp5ZWFycyB0aGF0IGkgaGF2ZSBlbmNvdW50ZXJlZCBhIGNvdW50ZXJleGFtcGxlIHRvIHRo
+ZSBwcmFjdGljZSBvZgpkaXNhbGxvd2luZyAicmVzZXJ2ZWQgYmVoYXZpb3VyIi4KCnRoZSAibm9y
+bWFsIiB3YXkgaW4gInJlc2VydmVkIGlzIGlsbGVnYWwiIHNwZWNpZmljYXRpb25zLCB3b3VsZCBi
+ZSB0aGF0Cmx3c3luYyB3b3VsZCByYWlzZSBhbiBpbGxlZ2FsIGluc3RydWN0aW9uIG9uIGEgcHJv
+Y2Vzc29yIHRoYXQgZGlkIG5vdApzdXBwb3J0IGl0LCB0aGUgYXV0aG9yIG9mIHRoZSB0cmFwIHdv
+dWxkIGtub3cgdGhhdCB0aGUgZXh0cmEgYml0IGRpZCBub3QKbWF0dGVyLCB0aGUgdHJhcCB3b3Vs
+ZCBjYWxsIHRoZSBhbHRlcm5hdGl2ZSBzeW5jIGluc3RydWN0aW9uLCBhbmQgcmV0dXJuCmZyb20g
+dGhlIHRyYXAuCgppIGRvIG5vdCBrbm93IHRoZSBmdWxsIHN0b3J5IGFib3V0IHdoYXQgRlNMIGlz
+OiB3aXRob3V0IGtub3dpbmcgdGhlIGRldGFpbHMKaSBzdXNwZWN0IHRoYXQgYSB0cmFwICpjb3Vs
+ZCogaGF2ZSBzb3J0ZWQgdGhpbmdzIG91dCwgdGhlcmUsICppZiogdGhlIG9sZGVyCnByb2Nlc3Nv
+ciB3YXMgcmVxdWlyZWQgdG8gcmFpc2UgImlsbGVnYWwgaW5zdHJ1Y3Rpb24iCgpidXQgYmVjYXVz
+ZSB0aGUgYml0IGlzIGlnbm9yZWQsIHRoZXJlIGlzIG5vIHdheSB0aGF0IGNhbiBiZSBkb25lLgoK
+c28gd2hpbHN0IG9uIHRoZSBmYWNlIG9mIGl0LCBsd3N5bmMgKnNvdW5kcyogbGlrZSBhIGNvdW50
+ZXJleGFtcGxlLCBpbnN0ZWFkCihjYXZlYXQsIGkgZG8gbm90IGtub3cgd2hhdCBGU0wgaXMpLCBp
+dCBzZWVtcyBtb3JlIHRvIHN1cHBvcnQgdGhlIGNhc2UKKmZvciogdXNlIG9mIHJlc2VydmVkIGJp
+dHMgcmFpc2luZyBpbGxlZ2FsIGluc3RydWN0aW9ucyBbb24gVU5JWCBwbGF0Zm9ybXNdCgp3aGVy
+ZSBvZiBjb3Vyc2UgdGhpcyB3b3VsZCBiZWNvbWUgcHJvYmxlbWF0aWMgaXMgaWYgbHdzeW5jIChv
+ciBvdGhlciBmdXR1cmUKYWRkZWQgaW5zdHJ1Y3Rpb24pIHdhcyBwYXJ0IG9mIGEgdGlnaHQsIHBl
+cmZvcm1hbmNlLWNyaXRpY2FsIGxvb3AuICBhIHRyYXAKYW5kIGVtdWxhdGUgaW4gdGhlIG1pZGRs
+ZSBvZiB0aGF0IHdvdWxkIHNldmVyZWx5IGRlZ3JhZGUgb2xkZXIgcHJvY2Vzc29yCnBlcmZvcm1h
+bmNlLiAgdGhlcmUgaXMgbm90aGluZyB0aGF0IGNhbiBiZSBkb25lIGFib3V0IHRoYXQuCgoKPiBp
+ZiBob3dldmVyIHJlc2VydmVkIGJpdHMgYmVpbmcgc2V0IGNhdXNlIGFuIGV4Y2VwdGlvbiwgdGhl
+ICJvbGQiCj4gPiBwcm9jZXNzb3Igc3RhbmRzIGEgY2hhbmNlIG9mIGVtdWxhdGluZyB0aGUgbmV3
+IGJlaGF2aW91ciAoaW4KPiA+IHNvZnR3YXJlLCBldmVuIGlmIHRoYXQncyBzbG93KSwgZ2l2aW5n
+IGl0IGEgY2hhbmNlIG9mIGtlZXBpbmcgb3V0IG9mCj4gPiBsYW5kZmlsbCBmb3Igc2xpZ2h0bHkg
+bG9uZ2VyLgo+Cj4gV2hpY2ggaXMgd2h5IHBvd2VycGMgdGVuZHMgbm90IHRvICJhZGQgYml0cyIg
+dG8gaW5zdHJ1Y3Rpb25zIHVubGVzcwo+IGlnbm9yaW5nIHRoZW0gaXMgYSBzYWZlIGZhbGxiYWNr
+LgoKCmFzIHdlIGNhbiBzZWUgYWJvdmUsIHRoZSBleGFtcGxlIHRoYXQgd2FzIGdpdmVuICBzaG93
+cyB0aGF0IHRoaXMgaXMgYQpwcm9ibGVtYXRpYyBhcHByb2FjaC4KCml0ICpzb3VuZHMqIHNhZmUg
+dG8gImRvd25ncmFkZSIgYW4gaW5zdHJ1Y3Rpb24gdGhhdCBkb2VzIG1vcmUgd29yayAobW9yZQpz
+eW5jaW5nKSB0byBvbmUgdGhhdCBkb2VzIGxlc3MsIGhvd2V2ZXIgdGhpcyBpcyBhIHByZXR0eSB1
+bmlxdWUgY2FzZS4KCmkgd291bGQgc2F5IHRoYXQgUG93ZXJJU0EgInNob3VsZCBoYXZlIGhhZCIg
+c3BhY2UgZm9yIHN1Y2ggZG93bmdyYWRpbmcKYWxyZWFkeSBwbGFubmVkIGluIGFkdmFuY2UsIGV4
+Y2VwdCwgcnVlZnVsbHkgYW5kIHJlZ3JldGZ1bGx5LCBzdWNoIGlzIG5vdApwb3NzaWJsZSBvciBw
+cmFjdGljYWwgKGNoYW5naW5nIHRoZSBwYXN0KSBhbmQgcHJhZ21hdGljYWxseSB3ZSBoYXZlIHRv
+IHdvcmsKd2l0aCBob3cgdGhpbmdzIGFyZSwgbm93LgoKdXNlIG9mICJoaW50cyIgd291bGQgbm90
+IGhlbHAgaGVyZSBlaXRoZXIgdW5sZXNzIHRoZXkgd2VyZSBhIG1hY3JvLW9wIGZ1c2VkCnR5cGUg
+b2YgaGludC4KCndhaXQuLi4gdGhhdCB3b3VsZCB3b3JrLgoKYSBzZXF1ZW5jZSBhcyBmb2xsb3dz
+OgoKKiBoaW50IGluc3RydWN0aW9uICJuZXh0IGluc3RydWN0aW9uIGlzIHRvIGJlIGx3c3luYyIK
+KiBvbGQgc3luYyBpbnN0cnVjdGlvbgoKb2xkZXIgcHJvY2Vzc29ycyB3b3VsZDoKCiogaWdub3Jl
+IHRoZSBoaW50CiogZXhlY3V0ZSB0aGUgb2xkIHN5bmMgaW5zdHJ1Y3Rpb24gYXMtaXMsIHNhZmVs
+eSBkb2luZyBtb3JlIHdvcmsgdGhhbgpuZWNlc3NhcnkuCgpuZXdlciBwcm9jZXNzb3JzIHdvdWxk
+IG1hY3JvLW9wIGZ1c2UgdGhlIHR3byBpbnRvIGFuIGx3c3luYy4KCm9mIGNvdXJzZSBub3cgd2l0
+aCBwcmVmaXhlcyBpbiBQT1dFUjEwIC8gdjMuMSwgcHJlZml4ZXMgY291bGQgZG8gdGhlIHNhbWUK
+am9iIHdpdGhvdXQgcnVubmluZyBvdXQgb2YgaGludCBzcGFjZSB2ZXJ5IHJhcGlkbHkuCgphbmQg
+T3Bjb2RlIDEgaXMgb2YgY291cnNlICJpbGxlZ2FsIGluc3RydWN0aW9uIiwgYW5kIGNvdWxkIGJl
+IHVzZWQKZXh0ZW5zaXZlbHkgZm9yICJpbnN0cnVjdGlvbiB1cGdyYWRpbmciCgp0aGlzIHdvdWxk
+IHdvcmsgcmVhbGx5IHdlbGwsIGxlYXZpbmcgaGludCBtYWNyby1vcCBmdXNpb24gZm9yIHRob3Nl
+IHZlcnkKc3BlY2lhbCBjYXNlcyBzaW1pbGFyIHRvIGx3c3luYyB3aGVyZSAiYmVoYXZpb3VyIGRv
+d25ncmFkaW5nIiBpcyBuZWVkZWQuCgpoaW50IG1hY3JvLW9wIGZ1c2lvbiB3b3VsZCBhbHNvIHdv
+cmsgcmVhbGx5IHdlbGwgaW4gcGVyZm9ybWFuY2UgY3JpdGljYWwKbG9vcHMsIHRvby4KCgo+ID4g
+Ym90dG9tIGxpbmUgaWYgaXQgaXMgY29ycmVjdCB0aGF0IG9uIHRoZSBQb3dlcklTQSBVTklYIFBs
+YXRmb3JtCj4gPiByZXNlcnZlZCBiaXRzIGNhbiBiZSBpZ25vcmVkIHRoYXQgaXMgY2F1c2UgZm9y
+IHNvbWUgY29uY2Vybiwgd2hlcmUKPiA+IGZvciBFbWJlZGRlZCBpdCB3b3VsZCBiZSB0aGUgb3Ro
+ZXIgd2F5IHJvdW5kOiBjYXVzZSBmb3IgY29uY2VybiBpZgo+ID4gdGhlIHJlc2VydmVkIGJpdHMg
+Y291bGQgKm5vdCogYmUgaWdub3JlZC4KPgo+IERvIHlvdSBoYXZlIG1vcmUgc3BlY2lmaWMgY29u
+Y2VybnMgaGVyZSA/CgoKc29ycnksIEJlbmphbWluLCBpIGFwb2xvZ2lzZSBmb3Igc2F5aW5nIHRo
+aXM6IHRoZSBxdWVzdGlvbiBhcHBlYXJzIHRvIGJlCmltcGx5aW5nLCB2ZXJ5IHN1YnRseSwgdGhh
+dCB5b3UndmUgbm90IHRha2VuIG9uIGJvYXJkIHdoYXQgaSd2ZSBzYWlkLiBpZgp5b3UgaGFkIHN1
+bW1hcmlzZWQgd2hhdCBpIHdyb3RlLCBpbiB5b3VyIG93biB3b3JkcywgaSB3b3VsZCBoYXZlIGEg
+Y2xlYXIKaW5kaWNhdG9yIHRoYXQgeW91J2QgaGVhcmQgbWUuIGlmIHRoYXQgaXMgYSBtaXNpbnRl
+cnByZXRhdGlvbiBpIGFwb2xvZ2lzZS4KCnRoZSBzcGVjaWZpYyBjb25jZXJuICppcyogdGhhdCBy
+ZXNlcnZlZCBiaXRzIGRvIG5vdCBjYXVzZSBpbGxlZ2FsCmluc3RydWN0aW9ucyB0byBiZSByYWlz
+ZWQgb24gdGhlIFVOSVggUGxhdGZvcm0sIGJlY2F1c2Ugd2l0aG91dCB0aGF0IGluCnBsYWNlLCBV
+TklYIHBsYXRmb3JtIGxvbmd0ZXJtIHNlYW1sZXNzIHVwZ3JhZGVhYmlsaXR5IGFuZCBpbnRlcm9w
+ZXJhYmlsaXR5CmJldHdlZW4gdmVuZG9ycyBhY3Jvc3MgYWxsIHRoZWlyIHByb2R1Y3QgcmFuZ2Vz
+IG92ZXIgdGltZSBpcyBzaW1wbHkgbm90CnBvc3NpYmxlLgoKaSBoYXZlIG5vdCBzcGVsbGVkIGl0
+IG91dCBleHBsaWNpdGx5LCBzZWVraW5nIGluc3RlYWQgdG8gdXNlIGxvZ2ljYWwKcmVhc29uaW5n
+IHJhdGhlciB0aGFuIG1ha2UgY2F0ZWdvcmljYWwgc3RhdGVtZW50cywgYnV0IHRoaXMgaXMgYWN0
+dWFsbHkgYQpyZWFsbHkgc2VyaW91cyBwcm9ibGVtLgoKCklFLiBBY3R1YWwgZXhhbXBsZXMgd2hl
+cmUKPiB0aGlzIGhhcyBiZWVuIGNhdXNlIG9mIGJyZWFrYWdlIGluIHRoZSBwYXN0ID8KCgp3aXRo
+IFBvd2VySVNBIGhhdmluZyBvbmx5IGEgZmV3IGltcGxlbWVudG9ycywgZXZlbiB0aG91Z2ggaSBh
+bSBuZXcgdG8KUG93ZXJJU0EgaSBkbyBub3QgZXhwZWN0IHRoZXJlIHRvIGJlIG1hbnkgc3VjaCBl
+eGFtcGxlcywgc2ltcGx5IGJlY2F1c2UgYXMKaSBzYWlkLCBmb3IgaGUgIkVtYmVkZGVkIiBjbGFz
+cyBwcm9jZXNzb3JzIChNb3Rvcm9sYSdzIDMyIGJpdCByYW5nZSwgYW5kCmV2ZW4gdGhlIFF1b3Js
+IDY0IGJpdCByYW5nZSBjYW4gYmUgc2FpZCB0byBiZSB0YXJnZXR0ZWQgYXQgdGhlICJFbWJlZGRl
+ZCIKbWFya2V0IG9mIE5ldHdvcmtpbmcgYW5kIFJvdXRpbmcpLCB0aGVzZSB3aWxsIG5vdCBlbmNv
+dW50ZXIgdGhpcyBhcyBhCnByb2JsZW0gKGJlY2F1c2Ugb2YgdGhlIGN1c3RvbWlzZWQgZmlybXdh
+cmUgdGhhdCB0aGV5IHJ1bikuCgppdCBpcyBvbmx5IHRoZSAqVU5JWCogUGxhdGZvcm0gd2hlcmUg
+dGhpcyBtYXR0ZXJzLgoKdGhhdCBsZWF2ZXMsIHJlYWxpc3RpY2FsbHksIG9ubHkgdGhlIElCTSBQ
+T1dFUiByYW5nZS4gIGFuZCB3aGVuIHRoZXJlIGlzCm9ubHkgb25lIHZlbmRvciwgaW50ZXJvcGVy
+YWJpbGl0eSB3aXRoIG90aGVyIHZlbmRvcnMgaXMgbm90IGltcG9ydGFudCB3aGVuCnRoZXJlIGFy
+ZW4ndCBhbnkgb3RoZXIgdmVuZG9ycyEKCmhvd2V2ZXIgaWYgUG93ZXJJU0EgZXhwYW5kcyAoYXMg
+d2Uga25vdyBpdCB3b3VsZCBsaWtlIHRvKSwgYW5kIHRoaXMgaXMgbm90CmNoYW5nZWQsIGkgKmd1
+YXJhbnRlZSogdGhhdCB3aGVuIG1vcmUgaW1wbGVtZW50b3JzIGFyZSBpbnZvbHZlZCB0aGVyZSB3
+aWxsCmJlIHByb2JsZW1zLCBoZXJlLgoKaW4gb3RoZXIgd29yZHMgdGhlIGFwcHJvYWNoIG9mIGln
+bm9yaW5nIHJlc2VydmVkIGJpdHMgaGFzIG9ubHkgd29ya2VkIChmb3IKdGhlIHBhc3QgMjAgeWVh
+cnM/KSBiZWNhdXNlIElCTSwgcmVhbGlzdGljYWxseSwgaXMgdGhlIG9ubHkgKG5vbi1FbWJlZGRl
+ZCkKaW1wbGVtZW50b3Igb2YgVU5JWCBQbGF0Zm9ybSBwcm9jZXNzb3JzLgoKCj4gTEUvQkUgYW1h
+emluZ2x5IHNlZW1zIHRvIHdvcmsgb24gTGlicmVTT0MsIGl0IHdhcyBxdWl0ZSBmdW5ueSBoYXZp
+bmcKPiA+IHRoZSB0cmFwIGp1bXAgaW50byAweDcwMCB3aGVuIHRlc3RpbmcgYWdhaW5zdCBxZW11
+IChydW5uaW5nCj4gPiBzaW5nbGVzdGVwIHVuZGVyIGdkYiksIG9ubHkgdG8gZmluZCB0aGF0IHFl
+bXUgdHJhcHMgY2hhbmdlIHRoZSBMRSBiaXQKPiA+IGFuZCBvZiBjb3Vyc2UgaW4gcWVtdSBvbmNl
+IHRoYXQncyBjaGFuZ2VkIGdkYiBjYW4ndCByZWFkIHJlZ2lzdGVycwo+ID4gY29ycmVjdGx5LiBz
+aWdoLgo+Cj4gSXQgY2FuIGlmIHlvdSBtYW51YWxseSBjaGFuZ2UgZW5kaWFuIGluIGdkYiBubyA/
+CgoKdGhpcyAoZm9yIGEgZ2VlaykgaXMgd2h5IGl0IGlzIGFtdXNpbmcsIGJlY2F1c2Ugd2UgZGlk
+IGV4YWN0bHkgdGhhdC4KCmR1cmluZyBzZXR1cCwgaSBjYWxsIHRoZSBtYWNoaW5lLWludGVyZmFj
+ZSAic2V0IGVuZGlhbiIgY29tbWFuZCBkZXBlbmRpbmcKb24gd2hldGhlciB0aGUgcHJvZ3JhbSBi
+ZWluZyBleGVjdXRlZCBpcyBMRSBvciBCRS4KCmJyZWFrcG9pbnRzIGFyZSBzZXQgb24gMHg3MDAg
+YW5kIGVuZCBvZiBwcm9ncmFtLgoKYWxsIGdvb2Qgc28gZmFyCgp0aGVuIHRoZSB0cmFwIG9jY3Vy
+cywgYW5kIHRoZSBNU1IgY2hhbmdlcyBhdCB0aGUgdHJhcCBicmVha3BvaW50LgoKd2hlbiB3ZSBy
+ZWFkIHRoZSBQQyBpdCBpcyAweDAwNzAwMDAwMDAwMDAwMDAgbm90IDB4NzAwCgp3aGVuIHdlIHJl
+YWQgdGhlIE1TUiBpdCBpcyAqYWxzbyogYnl0ZSByZXZlcnNlZC4KCnNvIHRoZXJlIGlzIG5vIHdh
+eSB0byByZWFkIHRoZSBNU1IgYW5kIGRldGVybWluZSBmcm9tIHRoZSBiaXRzIHJldHVybmVkIGlm
+CnRoZSBiaXRzIG5lZWQgdG8gYmUgcmV2ZXJzZWQgYmVjYXVzZSB0aGUgYml0cyB0aGF0IHRlbGwg
+eW91IHlvdSBzaG91bGQKcmV2ZXJzZSB0aGUgYml0cyBhcmUgYWxyZWFkeSByZXZlcnNlZC4KCmRv
+aCA6KQoKbC4KCgoKLS0gCi0tLQpjcm93ZC1mdW5kZWQgZWNvLWNvbnNjaW91cyBoYXJkd2FyZTog
+aHR0cHM6Ly93d3cuY3Jvd2RzdXBwbHkuY29tL2VvbWE2OApfX19fX19fX19fX19fX19fX19fX19f
+X19fX19fX19fX19fX19fX19fX19fX19fXwpsaWJyZS1yaXNjdi1kZXYgbWFpbGluZyBsaXN0Cmxp
+YnJlLXJpc2N2LWRldkBsaXN0cy5saWJyZS1yaXNjdi5vcmcKaHR0cDovL2xpc3RzLmxpYnJlLXJp
+c2N2Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL2xpYnJlLXJpc2N2LWRldgo=
+