From mboxrd@z Thu Jan 1 00:00:00 1970 Return-path: Envelope-to: publicinbox@libre-riscv.org Delivery-date: Thu, 23 Jul 2020 00:41:41 +0100 Received: from localhost ([::1] helo=libre-riscv.org) by libre-soc.org with esmtp (Exim 4.92) (envelope-from ) id 1jyOMl-0008CV-Uc; Thu, 23 Jul 2020 00:41:39 +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 ) id 1jyOMk-0008CP-6q for libre-riscv-dev@lists.libre-riscv.org; Thu, 23 Jul 2020 00:41:38 +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=pfBXWLuspk6fctDFLSSCq7gBNpRi85shd3uwmkyN4iY=; b=pnh32D4KbOCpaXb434cF29iRUuQV8Uw0e7i1ISByEeomYRUp215a8BxStxOtU+S4ELgGKDbMoRJ4VfpjvAzxTWZYH/Nxv8r0n+JxNEOspOVGLJScgJQXO0Jm9/FSjW67be0C108sfQu2IgRF7w9hgpEUV/z2M5QRCi4rOOKESZE=; 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 ) id 1jyOMj-00025z-RT for libre-riscv-dev@lists.libre-riscv.org; Wed, 22 Jul 2020 23:41:37 +0000 Received: by mail-lj1-f172.google.com with SMTP id q4so4428820lji.2 for ; Wed, 22 Jul 2020 16:41:22 -0700 (PDT) X-Gm-Message-State: AOAM532TjEhCZpSLFc6ASBSPy8YFBhQU1bkfjoRM16c+Vh94aN45UcKD 98AYDyx25FYTQToXKK76F4IbNnyTMIuZVijKtE4= X-Google-Smtp-Source: ABdhPJy6xBc79Ea3fdeepKzHRUcPTyAMUb/FiGQCCXFMa5gHWhLLCoAA4nKicbniPbkc1NVviSMHSn4dbV8c5LdLbKs= X-Received: by 2002:a2e:780e:: with SMTP id t14mr730625ljc.444.1595461276805; Wed, 22 Jul 2020 16:41:16 -0700 (PDT) MIME-Version: 1.0 Received: by 2002:a05:6504:702:0:0:0:0 with HTTP; Wed, 22 Jul 2020 16:41:15 -0700 (PDT) In-Reply-To: <20200722224713.GA213782@thinks.paulus.ozlabs.org> References: <20200722224713.GA213782@thinks.paulus.ozlabs.org> From: Luke Kenneth Casson Leighton Date: Thu, 23 Jul 2020 00:41:15 +0100 X-Gmail-Original-Message-ID: Message-ID: To: Libre-RISCV General Development 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 List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: Libre-RISCV General Development Cc: "openpower-hdl-cores@mailinglist.openpowerfoundation.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" Archived-At: List-Archive: T24gV2VkbmVzZGF5LCBKdWx5IDIyLCAyMDIwLCBQYXVsIE1hY2tlcnJhcyA8cGF1bHVzQG96bGFi cy5vcmc+IHdyb3RlOgoKPiBPbiBXZWQsIEp1bCAyMiwgMjAyMCBhdCAwMzoyMjo0M1BNICswMTAw LCBMdWtlIEtlbm5ldGggQ2Fzc29uIExlaWdodG9uCj4gd3JvdGU6Cj4gPiBoaSwgd2UncmUganVz dCByZXZpZXdpbmcgdGhlIGJlaGF2aW91ciBuZWVkZWQgd2hlbiBMRVYgIT0gMCwgYW5kIGFyZQo+ ID4gZm9sbG93aW5nIHdoYXQgbWljcm93YXR0IGRvZXMgKHdoaWNoIGRvZXMgbm90IGhhdmUgaHlw ZXJ2aXNvciBzdXBwb3J0Cj4gPiB5ZXQpCj4gPgo+ID4gaHR0cHM6Ly9idWdzLmxpYnJlLXNvYy5v cmcvc2hvd19idWcuY2dpP2lkPTMyNSNjMTA2Cj4gPgo+ID4gc28gdGhlIHRyYWlsIC0gaSBhbSBz byBnbGFkIHRoYXQgdGhlIFBERiBoYXMgY3Jvc3MtcmVmZXJlbmNlIGxpbmtpbmcgLQo+ID4ganVt cHMgZnJvbSBvbmUgc2VjdGlvbiB0byBhbm90aGVyIGFuZCBhZnRlciBqdW1waW5nIDUgdGltZXMg d2UKPiA+IGV2ZW50dWFsbHkgYXNjZXJ0YWluIHRoZSBoeXBvdGhlc2lzIHRoYXQgcmVzZXJ2ZWQg ZmllbGRzLCBpZiBzZXQsCj4gPiBzaG91bGQgcmFpc2UgYW4gImlsbGVnYWwgaW5zdHJ1Y3Rpb24i Lgo+Cj4gVGhlIGZpcnN0IHNlbnRlbmNlIG9mIEJvb2sgSSBzZWN0aW9uIDEuMy4zIHNheXMgIlJl c2VydmVkIGZpZWxkcyBpbgo+IGluc3RydWN0aW9ucyBhcmUgaWdub3JlZCBieSB0aGUgcHJvY2Vz c29yLiIgIFdoYXQgbGVkIHlvdSB0byBjb25maXJtCj4geW91ciBoeXBvdGhlc2lzIHRoYXQgcmVz ZXJ2ZWQgYml0cyBiZWluZyBzZXQgc2hvdWxkIGNhdXNlIGFuIGlsbGVnYWwKPiBpbnN0cnVjdGlv biBpbnRlcnJ1cHQ/CgoKYmVjYXVzZSBpIGRpZCBub3QgZXhwZWN0IHRoYXQgYmVoYXZpb3VyLCBi ZWNhdXNlIGRvaW5nIHNvIChpZ25vcmluZyB0aGVtKQptYWtlcyBpdCBpbXBvc3NpYmxlIHRvIHRy YXAgYW5kIGVtdWxhdGUuICAoaXQgYmVjb21lcyBuZWNlc3NhcnkgdG8gdXNlIEpJVAphbmFseXNp cykKCnNvLCB3aGVuIHNvbWUgYml0IGlzIGFkZGVkIGluIHRoZSBmdXR1cmUsIGFuIG9sZGVyIHBy b2Nlc3NvciAoYW5kIHRoZQpkZXZpY2UgaXQgaXMgaW4pIGJhc2ljYWxseSBoYXMgdG8gYmUgdGhy b3duIGludG8gbGFuZGZpbGwuCgppZiBob3dldmVyIHJlc2VydmVkIGJpdHMgYmVpbmcgc2V0IGNh dXNlIGFuIGV4Y2VwdGlvbiwgdGhlICJvbGQiIHByb2Nlc3NvcgpzdGFuZHMgYSBjaGFuY2Ugb2Yg ZW11bGF0aW5nIHRoZSBuZXcgYmVoYXZpb3VyIChpbiBzb2Z0d2FyZSwgZXZlbiBpZiB0aGF0J3MK c2xvdyksIGdpdmluZyBpdCBhIGNoYW5jZSBvZiBrZWVwaW5nIG91dCBvZiBsYW5kZmlsbCBmb3Ig c2xpZ2h0bHkgbG9uZ2VyLgoKaG93ZXZlciBpdCBpcyBub3QgYXBwcm9wcmlhdGUgZm9yIGFsbCBz eXN0ZW1zIHRvIHJhaXNlIGV4Y2VwdGlvbnMgb24KcmVzZXJ2ZWQgYml0czogdGhlIGNvc3Qgb2Yg aGF2aW5nIHRoZSBkZXRlY3Rpb24gaGFyZHdhcmUgKGEgZnVsbCBQT1dFUjkKZGVjb2RlciBhbmQg YWxzbyBpbGxlZ2FsL3Vuc3VwcG9ydGVkL3Jlc2VydmVkIFNQUiBkZXRlY3Rpb24pIGNhbiBiZSB2 ZXJ5CmhpZ2ggZXNwZWNpYWxseSBmb3IgcmVzb3VyY2UgYW5kIHBvd2VyIGNvbnN0cmFpbmVkIHNp bGljb24gb3IgRlBHQXMuCgooZXhhbXBsZTogaSBrbm93IHNvbWVvbmUgLSB5ZWEsIHlvdSBTYW0g LSB3aG8gaW1wbGVtZW50ZWQgUlY2NCB0byBjb21wbHkKd2l0aCB0aGUgVU5JWCBSSVNDViBzcGVj IHJhdGhlciB0aGFuIHRoZSBFbWJlZGRlZCBSSVNDViBzcGVjOiB0aGUgIkNTUgpkZXRlY3Rpb24i IGp1c3QgdG8gc3VwcG9ydCBhbGwgdGhlIHplcm9zIGFuZCBpbGxlZ2FsIENTUnMgdG9vayBhIHdo b3BwaW5nCjE1JSBvZiBhbiBJQ0U0MCBGUEdBISkKCmluIFJJU0MtViB0aGV5IGdldCB0aGlzIHJp Z2h0LCBieSBoYXZpbmcgdHdvIHNlcGFyYXRlIFBsYXRmb3JtczoKCiogRW1iZWRkZWQgd2hpY2gg aXMgcGVybWl0dGVkIHRvIGlnbm9yZSByZXNlcnZlZCBiaXRzIGVudGlyZWx5CgoqIFVOSVgsIHdo aWNoIGRlZmluaXRlbHkgaXMgbm90LgoKZm9yIEVtYmVkZGVkLCB0aGUgdmVuZG9yIGN1c3RvbWlz ZXMgdGhlIGZpcm13YXJlIGVudGlyZWx5LCBhbmQgYmluYXJ5CmludGVyb3BlcmFiaWxpdHkgYXMg d2VsbCBhcyBsZWdhY3kgc29mdHdhcmUgc3VwcG9ydCBpcyBjb21wbGV0ZWx5CnVuaW1wb3J0YW50 LgoKZm9yIFVOSVhlbiwgaW50ZXJvcGVyYWJpbGl0eSBhbmQgbG9uZ3Rlcm0gc3RhYmlsaXR5IHdl IGtub3cgdmVyeSB3ZWxsIGlzCmNyaXRpY2FsLgoKYm90dG9tIGxpbmUgaWYgaXQgaXMgY29ycmVj dCB0aGF0IG9uIHRoZSBQb3dlcklTQSBVTklYIFBsYXRmb3JtIHJlc2VydmVkCmJpdHMgY2FuIGJl IGlnbm9yZWQgdGhhdCBpcyBjYXVzZSBmb3Igc29tZSBjb25jZXJuLCB3aGVyZSBmb3IgRW1iZWRk ZWQgaXQKd291bGQgYmUgdGhlIG90aGVyIHdheSByb3VuZDogY2F1c2UgZm9yIGNvbmNlcm4gaWYg dGhlIHJlc2VydmVkIGJpdHMgY291bGQKKm5vdCogYmUgaWdub3JlZC4KCgoKPiA+IGhvd2V2ZXIg dGhpcyBpcyBzbyB1bmNsZWFyIChiZWNhdXNlIG9mIHRoZSByZWZlcnJhbCBmcm9tIG9uZSBzZWN0 aW9uCj4gPiB0byBhbm90aGVyKSB0aGF0IGkgYW0gc2Vla2luZyBjb25maXJtYXRpb24uICBzaG91 bGQgd2UgcmFpc2UgYW4KPiA+ICJpbGxlZ2FsIGluc3RydWN0aW9uIiB3aGVuICJMRVYgPiAxIiBv biBzYz8KPgo+IFNlY3Rpb24gMS44LjIgKEJvb2sgSSkgc2F5cyAiYW55IGF0dGVtcHQgdG8gZXhl Y3V0ZSBhbiBpbnZhbGlkIGZvcm0gb2YKPiBhbiBpbnN0cnVjdGlvbiB3aWxsIGVpdGhlciBjYXVz ZSB0aGUgc3lzdGVtIGlsbGVnYWwgaW5zdHJ1Y3Rpb24KPiBoYW5kbGVyIHRvIGJlIGludm9rZWQg b3IgeWllbGQgYm91bmRlZGx5IHVuZGVmaW5lZCByZXN1bHRzIi4gIFB1dHRpbmcKPiBMRVY9MSBp biBzYyB3b3VsZCBiZSBhbiBleGFtcGxlIG9mIGFuIGludmFsaWQgZm9ybSAob24gYW4KPiBpbXBs ZW1lbnRhdGlvbiB3aXRob3V0IGh5cGVydmlzb3IgbW9kZSkuCgoKb2sgdGhhdCBoZWxwcyBjbGFy aWZ5IHdoYXQgdGhhdCBtZWFucywgdGhhbmsgeW91LgoKCj4gICBBIGJvdW5kZWRseSB1bmRlZmlu ZWQgcmVzdWx0Cj4gaXMgb25lIHdoaWNoIGNvdWxkIGJlIG9idGFpbmVkIGJ5IGEgc2VxdWVuY2Ug b2YgdmFsaWQgaW5zdHJ1Y3Rpb25zLAo+IHNvIGluIHRoZSBjYXNlIG9mIHNjIDEsIG1ha2luZyBp dCBkbyB3aGF0IHNjIDAgZG9lcyBtZWV0cyB0aGUKPiBib3VuZGVkbHkgdW5kZWZpbmVkIHJlc3Vs dHMgcmVxdWlyZW1lbnQuCgoKb2sgc28gdGhhdC4uLiBpZiBpIGFtIHVuZGVyc3RhbmRpbmcgY29y cmVjdGx5LCBtZWFucywgInlvdSBjYW4gaW4gZmFjdCBkbwpzb21ldGhpbmcgZGlmZmVyZW50IGFu ZCBPUyBzb2Z0d2FyZSBoYXMgdG8gZGV0ZWN0IGl0IGFuZCBzb3J0IGl0IG91dCB0bwp5aWVsZCBl eHBlY3RlZCBiZWhhdmlvdXIiCgp3aGljaCwgaWYgaSBhbSBiZWluZyBob25lc3QsIG1ha2VzIG1l IG5lcnZvdXMgOikKCgo+ID4gc2Vjb25kbHksIHdlIG5vdGUgdGhhdCAiTEVWPTEiIGlzIGZvciBp bnZvY2F0aW9uIG9mIHRoZSBoeXBlcnZpc29yLgo+ID4gd2hhdCdzIG5vdCBjbGVhciB0byB1cyBp cyAtIGdpdmVuIHRoYXQgd2UgYXJlIG5vdCBpbXBsZW1lbnRpbmcKPiA+IGh5cGVydmlzb3IgLSBz aG91bGQgdGhpcyBiZSAqYWxzbyogdHJlYXRlZCBhcyBhbiBpbGxlZ2FsIGluc3RydWN0aW9uPwo+ ID4gb3IsIHNob3VsZCB3ZSBqdXN0IGxlYXZlIGl0IHRvIGZhbGwgdGhyb3VnaCB0byB0cmFwIEAg YWRkciAweDBjMDAsIGFuZAo+ID4gZXhwZWN0IHRoZSB0cmFwICp0aGVyZSogdG8gbm90aWNlIGFu ZCBkZWFsIHdpdGggdGhlIHNpdHVhdGlvbj8KPgo+IFRoYXQgaXMgd2hhdCBJIHdvdWxkIGRvLgoK Cm9rLiAgd2UgY2FuIGRvIHRoYXQuCgoKPiBUaGVyZSBpcyBvbmUgb2YgdGhlIHZhcmlhbnRzIG9m IEtWTSBvbiBQUEMsIGNhbGxlZCBLVk0tUFIsIHdoaWNoIHJ1bnMKPiB0aGUgZ3Vlc3QgZW50aXJl bHkgaW4gdXNlciBtb2RlIGFuZCB0cmFwcyBhbmQgZW11bGF0ZXMgYWxsIHByaXZpbGVnZWQKPiBp bnN0cnVjdGlvbnMgKHRodXMgaXQgZG9lc24ndCBuZWVkIGh5cGVydmlzb3IgbW9kZSBhbmQgY2Fu IHJ1biBpbnNpZGUKPiBhIGd1ZXN0IG9mIGFub3RoZXIgaHlwZXJ2aXNvcikuICBJZiB5b3UgYXJl IHJ1bm5pbmcgYSBLVk0gZ3Vlc3QgaW5zaWRlCj4gdGhhdCBlbnZpcm9ubWVudCBhbmQgdGhlIGd1 ZXN0IGRvZXMgc2MgMSwgS1ZNLVBSIGV4cGVjdHMgdGhhdCB0byBlbmQKPiB1cCBhdCB0aGUga2Vy bmVsJ3MgMHhjMDAgaGFuZGxlci4gIFNvIHRoYXQgaXMgb25lIHJlYXNvbiB0byB0cmVhdCBzYyAx Cj4gYXMgc2MgMC4KCgphaGguICBpIGRpZCB3b25kZXIgOikKCgo+Cj4gPiBhbHNvOiBpZiB3ZSBz ZXQgdGhlIEhWIGJpdCBpbiBNU1IgKHdoZW4gTEVWPTEpIHNlY3Rpb24gNi41LjE0IHAxMDc3Cj4g PiB3aGljaCByZWZlcnMgdXMgYmFjayB0byBmaWd1cmUgNjUgb24gcDEwNjQsIHdpbGwgdGhpcyAi YnJlYWsiIHRoaW5ncz8KPgo+IFByb2JhYmx5IG5vdC4gIExpbnV4IGRvZXMgY2hlY2sgd2hldGhl ciBIVj0xIGF0IGJvb3QgdGltZSwgYnV0IEknbQo+IHByZXR0eSBzdXJlIHRoYXQncyBvbmx5IG9u IGNlcnRhaW4gcHJvY2Vzc29ycyB3aGljaCBpdCBrbm93cyB0byBiZQo+IEhWLWNhcGFibGUgKGVp dGhlciBieSBsb29raW5nIGF0IFBWUiBvciB0aGUgZGV2aWNlIHRyZWUpLgoKCm9rLiAgdGhhbmsg eW91LgoKCj4KPiA+IGFsc286IGluIG1pY3Jvd2F0dCwgaSdtIG5vdCBzZWVpbmcgdGhlIHJlbWFp bmluZyBiaXRzIHdoaWNoIGFwcGVhciBbdG8KPiA+IG5lZWQgdG9dIGJlIHNldC4KPiA+Cj4gPiBo dHRwczovL2dpdGh1Yi5jb20vYW50b25ibGFuY2hhcmQvbWljcm93YXR0L2Jsb2IvCj4gbWFzdGVy L2V4ZWN1dGUxLnZoZGwjTDQ3OQo+ID4gICAgICAgICAgICAgY3RybF90bXAubXNyKE1TUl9TRikg PD0gJzEnOwo+ID4gICAgICAgICAgICAgY3RybF90bXAubXNyKE1TUl9FRSkgPD0gJzAnOwo+ID4g ICAgICAgICAgICAgY3RybF90bXAubXNyKE1TUl9QUikgPD0gJzAnOwo+ID4gICAgICAgICAgICAg Y3RybF90bXAubXNyKE1TUl9JUikgPD0gJzAnOwo+ID4gICAgICAgICAgICAgY3RybF90bXAubXNy KE1TUl9EUikgPD0gJzAnOwo+ID4gICAgICAgICAgICAgY3RybF90bXAubXNyKE1TUl9SSSkgPD0g JzAnOwo+ID4gICAgICAgICAgICAgY3RybF90bXAubXNyKE1TUl9MRSkgPD0gJzEnOwo+ID4KPiA+ IHRoZXNlIGFwcGVhciB0byBiZSBjb3JyZWN0IGFzIGRlZmluZWQgYWNjb3JkaW5nIHRvIGZpZ3Vy ZSA2NSAocDEwNjMpCj4gPgo+ID4gaG93ZXZlciB0aGUgcmVtYWluaW5nIGFjdGlvbnMgZG8gbm90 IHNlZW0gdG8gYmUgaW1wbGVtZW50ZWQgKHAxMDY0KToKPiA+Cj4gPiAgICAgIEJpdHMgYml0IDUs IFRNLCBWRUMsIFZTWCwgUFIsIEZQLCBhbmQgUE1NIGFyZSBzZXQgdG8gMC4KPiA+ICAgICAgVGhl IFRFIGZpZWxkIGlzIHNldCB0byAwYjAwLgo+ID4gICAgICBUTSwgRlAsIFZFQywgVlNYLCBhbmQg Yml0IDUgYXJlIHNldCB0byAwLgo+Cj4gUmlnaHQuICBXZSBoYXZlIGEgdG8tZG8gbGlzdCBmb3Ig YXJjaGl0ZWN0dXJlIGNvbXBsaWFuY2UuICAoV2UgaGF2ZW4ndAo+IGltcGxlbWVudGVkIDMyLWJp dCBtb2RlIG9yIEJFIG1vZGUsIGZvciBpbnN0YW5jZS4pCgoKeWVhaGggYWx0aG91Z2ggd2UgaGF2 ZSAzMiBiaXQgb3AgbW9kZXMgKHVzaW5nIG1pY3Jvd2F0dCAgZGVjb2RlMS52aGRsLAp0dXJuZWQg aW50byBDU1YpIHdlIGhhdmUgeWV0IHRvIHN1cHBvcnQgdGhlIE1TUiAzMmJpdCBnbG9iYWwgbW9k ZS4KCkxFL0JFIGFtYXppbmdseSBzZWVtcyB0byB3b3JrIG9uIExpYnJlU09DLCBpdCB3YXMgcXVp dGUgZnVubnkgaGF2aW5nIHRoZQp0cmFwIGp1bXAgaW50byAweDcwMCB3aGVuIHRlc3RpbmcgYWdh aW5zdCBxZW11IChydW5uaW5nIHNpbmdsZXN0ZXAgdW5kZXIKZ2RiKSwgb25seSB0byBmaW5kIHRo YXQgcWVtdSB0cmFwcyBjaGFuZ2UgdGhlIExFIGJpdCBhbmQgb2YgY291cnNlIGluIHFlbXUKb25j ZSB0aGF0J3MgY2hhbmdlZCBnZGIgY2FuJ3QgcmVhZCByZWdpc3RlcnMgY29ycmVjdGx5LiBzaWdo LgoKCj4gPiBxdWVzdGlvbjogd2hhdCBlZmZlY3Qgd291bGQgaXQgaGF2ZSAtIGJlYXIgaW4gbWlu ZCB0aGF0IHdlIGFyZQo+ID4gZm9sbG93aW5nIG1pY3Jvd2F0dCAtIGlmIHdlIGltcGxlbWVudGVk IHRoZXNlIGNoYW5nZXMgdG8gTVNSPyAgYmVhciBpbgo+ID4gbWluZCB0aGF0IHdlIGlnbm9yZSBt b3N0IG9mIHRoZW0gYXQgdGhlIG1vbWVudCAoTVNSLkxFIGJlaW5nIG9uZQo+ID4gbm90YWJsZSBl eGNlcHRpb24pLCBzbyB0aGUgcXVlc3Rpb24gaXMsIGluIGVmZmVjdDogZG9lcyB0aGUgTGludXgK PiA+IGtlcm5lbCAqYWxzbyogaWdub3JlIHRoZW0/Cj4KPiBUaGUgTGludXgga2VybmVsIGNsZWFy bHkgbmVlZHMgUFIgdG8gYmUgc2V0IHRvIHplcm8gYW5kIGl0IGFsc28KPiBleHBlY3RzIEZQLCBW RUMsIFZTWCwgVE0gdG8gYmUgY2xlYXJlZC4gIFNldHRpbmcgVEUgdG8gMCBpcyBuZWNlc3NhcnkK PiBvbmNlIHlvdSBpbXBsZW1lbnQgdGhlIHRyYWNlIGludGVycnVwdCwgb3RoZXJ3aXNlIHlvdSBj b3VsZCBnZXQgYQo+IHRyYWNlIGludGVycnVwdCBpbnNpZGUgeW91ciBmaXJzdC1sZXZlbCBpbnRl cnJ1cHQgaGFuZGxlcnMsIHdoaWNoCj4gd291bGQgYmUgYmFkLgoKCmFoIDopCgoKPiAgU2ltaWxh cmx5IGlmIHlvdSBoYXZlIGZsb2F0aW5nLXBvaW50IGFuZCB5b3UgZG9uJ3Qgc2V0Cj4gRkUwIGFu ZCBGRTEgdG8gMCBvbiBhbiBpbnRlcnJ1cHQsIHRoZXJlIGlzIHRoZSBjaGFuY2Ugb2YgdGFraW5n IGEKPiBmbG9hdGluZy1wb2ludCBwcm9ncmFtIGludGVycnVwdCBpbnNpZGUgYSBmaXJzdC1sZXZl bCBoYW5kbGVyLgoKCndob29wcy4gIG9rIGFwcHJlY2lhdGUgdGhlIHdhcm5pbmcuCgoKPgo+IEkn bSBub3Qgc3VyZSB0aGF0IGFsbCB0aGlzIGNvdW50cyBhcyB0aGUgTGludXgga2VybmVsICJpZ25v cmluZyIgdGhlCj4gYml0cywgYnV0IGluIGdlbmVyYWwgaWYgeW91IGRvIHdoYXQgdGhlIGFyY2hp dGVjdHVyZSBzYXlzLCB0aGUga2VybmVsCj4gd2lsbCBiZSBoYXBwaWVyIHRoYW4gaWYgeW91IGRv bid0LgoKCmhhLCB0aGF0IG1ha2VzIHNlbnNlLgoKaSBnZW5lcmFsbHkgZm91bmQgdGhpcyBvdXQg d2hlbiBuZXR3b3JrIHJldmVyc2UtZW5naW5lZXJpbmcsIGRlc3BpdGUgbm90CnVuZGVyc3RhbmRp bmcgYXQgYWxsIHdoYXQgaSB3YXMgc2VuZGluZyB0byB0aGUgY2xpZW50IG9yIHNlcnZlciA6KQoK dGhhbmsgeW91IFBhdWwKCmwuCgoKCi0tIAotLS0KY3Jvd2QtZnVuZGVkIGVjby1jb25zY2lvdXMg aGFyZHdhcmU6IGh0dHBzOi8vd3d3LmNyb3dkc3VwcGx5LmNvbS9lb21hNjgKX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KbGlicmUtcmlzY3YtZGV2IG1haWxp bmcgbGlzdApsaWJyZS1yaXNjdi1kZXZAbGlzdHMubGlicmUtcmlzY3Yub3JnCmh0dHA6Ly9saXN0 cy5saWJyZS1yaXNjdi5vcmcvbWFpbG1hbi9saXN0aW5mby9saWJyZS1yaXNjdi1kZXYK