[libre-riscv-dev] [Bug 276] SR NAND Latch needed in nmigen
authorbugzilla-daemon <bugzilla-daemon@libre-riscv.org>
Fri, 3 Apr 2020 12:05:29 +0000 (12:05 +0000)
committerlibre-riscv-dev <libre-riscv-dev@lists.libre-riscv.org>
Fri, 3 Apr 2020 12:05:30 +0000 (13:05 +0100)
00/8e25b951b75bcb1689c574475b4d9ed99e3a1a [new file with mode: 0644]

diff --git a/00/8e25b951b75bcb1689c574475b4d9ed99e3a1a b/00/8e25b951b75bcb1689c574475b4d9ed99e3a1a
new file mode 100644 (file)
index 0000000..8830163
--- /dev/null
@@ -0,0 +1,186 @@
+Return-path: <libre-riscv-dev-bounces@lists.libre-riscv.org>
+Envelope-to: publicinbox@libre-riscv.org
+Delivery-date: Fri, 03 Apr 2020 13:05:31 +0100
+Received: from localhost ([::1] helo=libre-riscv.org)
+       by libre-riscv.org with esmtp (Exim 4.89)
+       (envelope-from <libre-riscv-dev-bounces@lists.libre-riscv.org>)
+       id 1jKL4k-00088p-Jo; Fri, 03 Apr 2020 13:05:30 +0100
+Received: from localhost ([127.0.0.1] helo=bugs.libre-riscv.org)
+ by libre-riscv.org with esmtp (Exim 4.89)
+ (envelope-from <bugzilla-daemon@libre-riscv.org>) id 1jKL4j-00088h-5T
+ for libre-riscv-dev@lists.libre-riscv.org; Fri, 03 Apr 2020 13:05:29 +0100
+From: bugzilla-daemon@libre-riscv.org
+To: libre-riscv-dev@lists.libre-riscv.org
+Date: Fri, 03 Apr 2020 12:05:29 +0000
+X-Bugzilla-Reason: CC
+X-Bugzilla-Type: changed
+X-Bugzilla-Watch-Reason: None
+X-Bugzilla-Product: Libre-SOC's first SoC
+X-Bugzilla-Component: Source Code
+X-Bugzilla-Version: unspecified
+X-Bugzilla-Keywords: 
+X-Bugzilla-Severity: enhancement
+X-Bugzilla-Who: lkcl@lkcl.net
+X-Bugzilla-Status: CONFIRMED
+X-Bugzilla-Resolution: 
+X-Bugzilla-Priority: ---
+X-Bugzilla-Assigned-To: lkcl@lkcl.net
+X-Bugzilla-Flags: 
+X-Bugzilla-Changed-Fields: 
+Message-ID: <bug-276-13-XCCSJWf0Zl@http.bugs.libre-riscv.org/>
+In-Reply-To: <bug-276-13@http.bugs.libre-riscv.org/>
+References: <bug-276-13@http.bugs.libre-riscv.org/>
+X-Bugzilla-URL: http://bugs.libre-riscv.org/
+Auto-Submitted: auto-generated
+MIME-Version: 1.0
+Subject: [libre-riscv-dev] [Bug 276] SR NAND Latch needed in nmigen
+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>
+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>
+
+aHR0cDovL2J1Z3MubGlicmUtcmlzY3Yub3JnL3Nob3dfYnVnLmNnaT9pZD0yNzYKCi0tLSBDb21t
+ZW50ICMyIGZyb20gTHVrZSBLZW5uZXRoIENhc3NvbiBMZWlnaHRvbiA8bGtjbEBsa2NsLm5ldD4g
+LS0tCihJbiByZXBseSB0byB3aGl0ZXF1YXJrIGZyb20gY29tbWVudCAjMSkKPiAoVGhlIGZvbGxv
+d2luZyBjb21tZW50IGlzIGNvcGllZCBmcm9tIHRoZSBlbWFpbCBJIHNlbnQgZWFybGllciwgc28g
+dGhhdCBpdAo+IGlzIGFjY2Vzc2libGUgcHVibGljbHkuKQoKYXBwcmVjaWF0ZWQsIHdoaXRlcXVh
+cmsuCgpzdW1tYXJ5ICh0aGUgcmVzdCBpcyBhcmNoaXZlLXN1aXRhYmxlIC8gY29udGV4dCkgaXM6
+IHdlJ2QgbGlrZSB0byBiZSBhYmxlCnRvIGRvICJleGFjdCIgbmV0bGlzdCAod2UgYWxyZWFkeSBo
+YXZlIHNlbWktZXF1aXZhbGVudCwgYW5kIHRoaXMgaXMgd29ya2luZykuCgoKPiBPZiB0aGUgdGhp
+bmdzIHlvdSBtZW50aW9uZWQsIHRoaXMgaW5jbHVkZXMgb25seSB0aGUgU1IgbGF0Y2ggaXNzdWUu
+Cj4gCj4gVGhpcyBpc3N1ZSBpcyB1bmZvcnR1bmF0ZWx5IHF1aXRlIGludm9sdmVkLiAobilNaWdl
+biBpcyBkZXNpZ25lZCB0bwo+IGNvbm5lY3QgbGFyZ2UgaXNsYW5kcyBvZiBwdXJlbHkgc3luY2hy
+b25vdXMgbG9naWMgd2l0aCBhIGZldyBhc3luYwo+IGJyaWRnZXMuIEl0IGRvZXMgbm90LCB2ZXJ5
+IGRlbGliZXJhdGVseSwgZGlyZWN0bHkgc3VwcG9ydCBhcmJpdHJhcnkKPiBhc3luY2hyb25vdXMg
+cHJpbWl0aXZlcyBsaWtlIHRoZSBTUiBsYXRjaC4gU28geW91IGNhbid0IGp1c3QgZHJvcCBvbmUK
+PiBpbnRvIHlvdXIgZGVzaWduIGFuZCBoYXZlIGl0IHdvcmsgdGhlIHNhbWUgd2F5IG5vcm1hbCBs
+b2dpYyB3b3Jrcy4KCnllcy4gIHZlcnkgbXVjaCBhd2FyZSB0aGF0IHN0YW5kYXJkIHByb3ByaWV0
+YXJ5IGNvbW1lcmNpYWwgdG9vbHMgY29tcGxldGVseQpkcm9wcGVkIHN1cHBvcnQgZm9yIFNSIGxh
+dGNoZXMuCgoocmVpdGVyYXRpbmcgdGhpcyBmb3IgdGhlIGFyY2hpdmVzOgpob3dldmVyIHdlIHJl
+YWxseSBjYW5ub3QgdXNlIERGRnMsIGhlcmUuICB0aGF0IGlzIDEwIGdhdGVzIHJhdGhlciB0aGFu
+IDIsCmFuZCB0aGUgbnVtYmVyIG9mIENlbGxzIG5lZWRlZCBpcyBtYXNzaXZlOiBvbmUgb2YgdGhl
+IE1hdHJpY2VzIG1heSBuZWVkCnRvIGJlIDEyOCB4IDMwLCB3aXRoIGF0IGxlYXN0IGZvdXIgbWF5
+YmUgZml2ZSBsYXRjaGVzIHBlciBDZWxsLiAgdGhhdCdzCjE5MiwwMDAgZ2F0ZXMgKmp1c3QgZm9y
+IHRoYXQgTWF0cml4KiBpZiB3ZSB1c2UgREZGcy4KaWYgd2UgdXNlIFNSIExhdGNoZXMsIGl0J3Mg
+Mzg0MDAgZ2F0ZXMsIHdoaWNoIGlzIHRvbGVyYWJsZSkKCgo+IEhvd2V2ZXIsIHlvdSdyZSBpbiBs
+dWNrIGJlY2F1c2UgYmV0dGVyIHN1cHBvcnQgZm9yIGFzeW5jaHJvbm91cwo+IHNpZ25hbHMgd2Fz
+IHNvbWV0aGluZyBJIHRvb2sgaW50byBhY2NvdW50IHdoZW4gZGVzaWduaW5nIG5NaWdlbiBhbmQK
+PiBib3RoIG9mIHRoZSBuZXcgc2ltdWxhdG9ycywgcHlzaW0gYW5kIGN4eHNpbS4KCndoZXcgOikK
+Cj4gVG8gc29sdmUgdGhpcyBpc3N1ZSwgd2UnbGwgbmVlZCB0byB3b3JrIHRvZ2V0aGVyIHRvIGRl
+dGVybWluZSB5b3VyCj4gc3BlY2lmaWMgdXNlIGNhc2UuIERvIHlvdSB3YW50IHRvIHVzZSB0aGUg
+ZXhhY3Qgc2FtZSBuZXRsaXN0IGZvcgo+IG5NaWdlbiBzaW11bGF0aW9uIGFuZCBzeW50aGVzaXM/
+CgppIGhvbmVzdGx5IGRvbid0IGtub3c6IHdlJ3JlIG9wZW4gdG8gc3VnZ2VzdGlvbnMuICAoaGF2
+aW5nIHJlYWQgYWhlYWQpCmlmIHdlIGNhbiBkbyBib3RoIChhbmQgdXNlIG9uZSBmb3IgcmFwaWQg
+cHJvdG90eXBpbmcgYW5kIHRoZSBvdGhlciBhcwphIGNyb3NzLWNoZWNrIGJlZm9yZSBtb3Zpbmcg
+dG8gc3ludGhldGhpcykgdGhhdCB3b3VsZCBiZSBncmVhdC4KCnJpZ2h0IG5vdyB3ZSBoYXZlIHNv
+bWV0aGluZyB0aGF0ICJ3b3JrcyIgaG93ZXZlcgppdCB1c2VzIERGRnMsIG5vdCBTUiBsYXRjaGVz
+IChzZWUgbGF0Y2gucHkgbGluaywgYmVsb3cpLgoKPiBJZiBub3QsIGl0IG1lYW5zIHlvdSBjYW4g
+bW9kZWwKPiB3aGF0ZXZlciBpdCBpcyB0aGF0IGNvbnRhaW5zIHRoZSBTUiBsYXRjaGVzIChJJ20g
+bm90IHN1cmUgd2hhdAo+IG1hdHJpY2VzIHlvdSdyZSByZWZlcnJpbmcgdG8sIGhlcmUpCgpPdXQt
+b2YtT3JkZXIgUmVhZC9Xcml0ZSBIYXphcmQgZGV0ZWN0aW9uIGFuZCBhdm9pZGFuY2UgbWF0cmlj
+ZXMuCnNlZSAiTW9kaWZpY2F0aW9ucyB0byBEZXBlbmRlbmN5IENlbGwiCmh0dHBzOi8vbGlicmUt
+cmlzY3Yub3JnLzNkX2dwdS9hcmNoaXRlY3R1cmUvNjYwMHNjb3JlYm9hcmQvCgoqIHRoZSBETXMg
+ZW5jb2RlIGFsbCByZWdpc3RlcnMgaW4gVW5hcnkgKHNpbmdsZSBiaXQgYWN0aXZhdGlvbikuCiAg
+dGh1cyBvbmUgInJvdyIgcmVwcmVzZW50cyBhbGwgcmVnaXN0ZXJzIHVzZWQgZm9yIGEgZ2l2ZW4g
+RnVuY3Rpb25Vbml0CiAgW2FuZCBhY2Nlc3MgdG8gaXRzIEFMVV0uCiogZWFjaCBDZWxsIHRodXMg
+cmVjb3JkcywgaW4gYml0LWxldmVsICh1bmFyeSkgZm9ybSwgdGhlIGZhY3QgdGhhdCByZWFkL3dy
+aXRlCiAgZm9yIGEgZ2l2ZW4gZnVuY3Rpb24gKGFkZCkgaXMgbmVlZGVkLCBieSByYWlzaW5nIHRo
+ZSAiUmVnIDUgbmVlZHMgUkVBRCIKICBhbmQgIlJlZyA3IG5lZWRzIFdSSVRFIiBTUiBMYXRjaGVz
+CiogdGhlc2Ugbm93LWFjdGl2ZSBzaWduYWxzIGluZGljYXRlIHRvIHN1YnNlcXVlbnQgaW5zdHJ1
+Y3Rpb25zCiAgImhlbGxvIGkgaGF2ZSBhIHJlYWQgaGF6YXJkLCBoZWxsbyBpIGhhdmUgYSB3cml0
+ZSBoYXphcmQiIHJlc3BlY3RpdmVseS4KICBhdHRlbXB0cyB0byB1c2UgdGhvc2UgcmVnaXN0ZXJz
+IHRodXMgU1RPUHMgdGhhdCBGdW5jdGlvblVuaXQgZnJvbSBleGVjdXRpbmcuCiogaGF6YXJkcyBn
+ZXQgY2xlYXJlZCBvdXQgb25jZSByZXN1bHRzIGFyZSB3cml0dGVuCiogd2hlbiB0aGVyZSBhcmUg
+emVybyBoYXphcmRzIChpbiBhbnkgZ2l2ZW4gcm93KSwgdGhhdCBpbnN0cnVjdGlvbgogIGJlY29t
+ZXMgZnJlZS1hbmQtY2xlYXIgdG8gcHJvY2VlZC4KCml0J3MgYWN0dWFsbHkgaW5jcmVkaWJseSBz
+aW1wbGUuCgpoZXJlJ3Mgb25lIGZvciBSZWdpc3Rlci10by1GdW5jdGlvblVuaXQgKEZVIGJlaW5n
+IHRoZSAiYXJiaXRyYXRvciIgZm9yIGFjY2Vzcwp0byBhbiBBTFUgcGlwZWxpbmUpLCB5b3UgaGF2
+ZSB0byBkcmlsbCBkb3duIGEgYml0ICh0aHJvdWdoIERlcGVuZGVuY3lSb3cpCnRvIGdldCB0byB0
+aGUgU1IgTGF0Y2hlcyB0aGVtc2VsdmVzCgpodHRwczovL2dpdC5saWJyZS1yaXNjdi5vcmcvP3A9
+c29jLmdpdDthPWJsb2I7Zj1zcmMvc29jL3Njb3JlYm9hcmQvZnVfcmVnX21hdHJpeC5weTtoPTA2
+MzgwNDM0YzhkN2QyMDgyOGQ4MGMzZDBlMDIwMTYxYmNiMmMyZTQ7aGI9YjAxZjZiYzBhZDI4Y2Rh
+MTMxYmVhZTMzZTVmZTMzOGRhYWY1ZTllYQoKPiB1c2luZyBzeW5jaHJvbm91cyBjb2RlLCAKCmZ1
+bm5pbHkgZW5vdWdoIHRoYXQncyB3aGVyZSB3ZSBhcmUgcmlnaHQgbm93OgpodHRwczovL2dpdC5s
+aWJyZS1yaXNjdi5vcmcvP3A9bm11dGlsLmdpdDthPWJsb2I7Zj1zcmMvbm11dGlsL2xhdGNoLnB5
+O2g9N2Q2YTFlZmUyMmM4ODE1ODVhNjI2ZTM5NzU5MDMzNzE4NmY2ZWYxYjtoYj1IRUFEI2w0MQoK
+PiBhbmQKPiByZXBsYWNlIHRoZW0gd2l0aCB0cnVlIFNSIGxhdGNoZXMgZm9yIHN5bnRoZXNpcy4g
+T2YgY291cnNlLCB5b3Ugd2lsbAo+IG5lZWQgdG8gY29udmluY2UgeW91cnNlbGYgdGhlc2UgdHdv
+IGRlc2lnbnMgYXJlIGVxdWl2YWxlbnQuCgp5ZXMuICBmb3J0dW5hdGVseSwgY29yaW9saXMyIGhh
+cyBnYXRlLWxldmVsIHNpbXVsYXRpb24gKHdoaWNoIG5lZWRzCmludmVzdGlnYXRpb24pIHNvIHdl
+IGNhbiB0cmlwbGUtY2hlY2suCgoKPiBJZiB5b3UgKmRvKiB3YW50IHRvIHVzZSB0aGUgZXhhY3Qg
+c2FtZSBuZXRsaXN0LCB0aGVyZSBhcmUgYSBmZXcKPiBvcHRpb25zLiBCb3RoIHRoZSBuZXcgbk1p
+Z2VuIHNpbXVsYXRvciBhbmQgY3h4cnRsIHVzZSBhbiBhcmNoaXRlY3R1cmUKPiB0aGF0LCBpbiBw
+cmluY2lwbGUsIHN1cHBvcnRzIGxvZ2ljIGZlZWRiYWNrIGxvb3BzLiBTbyB5b3UgY2FuIG1vZGVs
+Cj4gdGhlIFNSIGxhdGNoIHVzaW5nIHR3byBvcmRpbmFyeSBOQU5EIGdhdGVzLiBJZiB5b3UgaGF2
+ZSBhbiBpbnN0YW5jZQo+IG9mIGEgU1JOQU5EIGNlbGwsIHlvdSBjYW4gcHJvdmlkZSBhIHNpbXVs
+YXRpb24gbW9kZWwgZm9yIHRoaXMgaW5zdGFuY2UKPiB0aGF0IHVzZXMgdHdvIE5BTkQgZ2F0ZXMs
+IGFuZCBpdCdsbCB3b3JrLiAKCndpdGggdGhlIGNhdmVhdCB0aGF0IHRoZSBjdXJyZW50IFNSTGF0
+Y2ggY2xhc3MgaXMgYWN0dWFsbHkgYSBSZXNldC1wcmlvcml0eQpTUiBsYXRjaCwgaSAqYmVsaWV2
+ZSogd2UgYWxyZWFkeSBoYXZlIHRoZSBmb3JtZXIsIHNvIHRoaXMgbGF0dGVyIGlzIHJlYWxseQp3
+aGF0IHdlJ2QgbGlrZSB0byBoYXZlLgoKd2UgY2FuIGFsd2F5cyBmbGlwIGluL291dCB0aGUgY3Vy
+cmVudCBTUiBMYXRjaCBmb3IgYSBwcm9wZXJseSBhc3luY2hyb25vdXMKb25lIChleGFjdCBzYW1l
+IG5ldGxpc3QpLCBydW4gc29tZSAodW5iZWxpZXZhYmx5IHNsb3cpIHRlc3RzLCB0aGVuIGdlbmVy
+YXRlCnRoZSBhY3R1YWwgbmV0bGlzdCB0byBiZSBoYW5kZWQgdG8geW9zeXMgKGFuZCBmcm9tIHRo
+ZXJlIHRvIGNvcmlvbGlzMikuCgoKPiBIb3dldmVyLCBJIG11c3Qgd2FybiB5b3UKPiB0aGF0IGJv
+dGggZm9yIG5NaWdlbiBweXNpbSBhbmQgY3h4cnRsLCB0aGlzIHdpbGwgY29tZSB3aXRoIGEgc2V2
+ZXJlCj4gcGVyZm9ybWFuY2UgcGVuYWx0eSBvZiBhdCBsZWFzdCB+MTB4LCBwb3NzaWJseSB3b3Jz
+ZSBkZXBlbmRpbmcgb24geW91cgo+IGV4YWN0IGRlc2lnbi4gSWYgeW91IGFyZSBwbGFubmluZyB0
+byB1c2UgZmluZSBTUk5BTkQgY2VsbHMgKG9uZSBwZXIKPiBiaXQgcmF0aGVyIHRoYW4gb25lIHBl
+ciB3b3JkKSwgZXhwZWN0IGEgZnVydGhlciBzbG93ZG93biBvZiB0aGUgd29yZAo+IHNpemUgZmFj
+dG9yLgoKaW50ZXJlc3RpbmcsIGJlY2F1c2UgYSBtdWx0aS13b3JkIGRlc2lnbiB0dXJuZWQgb3V0
+IHRvIGJlIG5lY2Vzc2FyeQp0byBnZXQgYSBzcGVlZHVwIGZhY3RvciAoc29tZSBvZiB0aGUgTWF0
+cmljZXMgYXJlIHNvIGxhcmdlIC0gMTI4IHggMzApIHRoYXQKd2UgZ2V0IHNlY29uZHMgcGVyIGNs
+b2NrIGluIHB5c2ltIGlmIGRvbmUgYXMgaW5kaXZpZHVhbCBvbmUtYml0IENlbGxzLgp0aGUgTWF0
+cmljZXMgYXJlIHNvIGxhcmdlIC0gMTI4IHggMzAgd2lsbCBiZSB0aGUgbGFyZ2VzdCAtIHRoYXQg
+d2l0aCBhCjQgdG8gNSBsZXZlbCBoaWVyYXJjaHkgb2YgRWxhYm9yYXRhYmxlIGNsYXNzZXMgaXQg
+d2FzIGludG9sZXJhYmxlLgoKYnkgcmVtb3Zpbmcgb25lIGxldmVsIG9mIGhpZXJhcmNoeSwgcHlz
+aW0gcmFuIGluIHJlYXNvbmFibGUgdGltZS4KCmkgZm91bmQgdGhpcyBnZW5lcmFsbHkgdG8gYmUg
+dHJ1ZTogdGhlIG1vcmUgbGV2ZWxzIG9mIGhpZXJhcmNoeSwgdGhlCnNsb3dlciBweXNpbSBnb3Qu
+ICBhbmQgZHVlIHRvIHRoZSBNQVNTSVZFIHNpemUgb2Ygb3VyIGRlc2lnbnMsIHdlIG5lZWQKaGll
+cmFyY2hpY2FsbHktbGFpZC1vdXQgY2xhc3NlcyAod2VsbCBvdmVyIDI1MCBzbyBmYXIpLgoKCj4g
+QW5vdGhlciBpc3N1ZSBpcyB0aGF0IG5laXRoZXIgcHlzaW0gbm9yIGN4eHNpbSBwcm92aWRlCj4g
+YW55IHdheSB0byBjb250cm9sIHRoZSBwb3NzaWJsZSByYWNlIGNvbmRpdGlvbnMuIFRoYXQgaXMs
+IHRoZSBTUk5BTkQKPiBsYXRjaCB0aGF0IGlzIHNpbXVsYXRlZCBpbiBweXNpbSBvciBjeHhzaW0g
+d2lsbCBpbml0aWFsaXplIHRvCj4gYW4gaW5kZXRlcm1pbmF0ZSB2YWx1ZSwgYW5kIGNoYWluaW5n
+IHRoZW0gdG9nZXRoZXIgd2lsbCBsZWFkIHRvCj4gdW5wcmVkaWN0YWJsZSByZXN1bHRzLgoKeW91
+J2xsIGxpa2UgdGhpczogaXQncyBtdWNoICJ3b3JzZSIgdGhhbiBpdCBsb29rcyA6KSAgd2UgYWN0
+dWFsbHkgaGF2ZQphIHRyaXBsZS1jb25uZWN0ZWQgcmluZyBvZiBTUk5BTkQgbGF0Y2hlcywgYWN0
+aW5nIGFzIGEgcHNldWRvIHBpcGVsaW5lLgoKaG93ZXZlciwgaXQgdHVybnMgb3V0IHRoYXQgdGhl
+IHNldC1yZXNldCBsb2dpYyB3aGljaCAqZW5hYmxlcyogdGhlIHRocmVlClNSTkFORHMgaXMgdmVy
+eSwgdmVyeSBzcGVjaWZpY2FsbHkgb3JnYW5pc2VkIHN1Y2ggdGhhdCBvbmx5IHR3byBvZiB0aGVt
+CmFyZSBldmVyIHBvc3NpYmxlIHRvIGhhdmUgYWN0aXZlIGF0IGFueSBvbmUgdGltZSwgYW5kIHRo
+dXMgd2UgY3JlYXRlCmEgInJldm9sdmluZyBkb29yIiBlZmZlY3QuCgp0aG9zZSAicHJvdGVjdGlv
+bnMiIGFyZSBhbGwgc3luY2hyb25vdXMuICBzbyB3aGlsc3QgdGhlIFNSTkFORCBjZWxscwphcmUg
+YXN5bmNocm9ub3VzIGFuZCBjb3VsZCBoeXBvdGhldGljYWxseSBlbmQgdXAgaW4gInVua25vd24i
+LCBpbgpwcmFjdGljZSB0aGlzIGNhbiAqbmV2ZXIqIG9jY3VyIGJlY2F1c2UgdGhlIGNvbmRpdGlv
+bnMgd2hpY2ggY3JlYXRlCiJ1bmtub3duIiBhcmUgc3BlY2lmaWNhbGx5IGF2b2lkZWQgKGFuZCBh
+dm9pZGVkIHVzaW5nIHN5bmNocm9ub3VzCmxvZ2ljKS4KCmluIGNhc2UgeW91IHdlcmUgd29uZGVy
+aW5nOiB0aGlzIGlzIGEgcHJvdmVuIGRlc2lnbi4gIGl0IHdhcyB1c2VkIGluIHRoZQpvcmlnaW5h
+bCBDREMgNjYwMCwgYW5kIGFsc28gaW4gdGhlIEFNRCBPcHRlcm9uIFNlcmllcy4gIGhvd2V2ZXIs
+IGluIHRoZQpDREMgNjYwMCB0aGV5IHVzZWQgdHJhbnNpc3RvcnMgKGFzIGluOiAqYWN0dWFsKiB0
+aHJlZS1wcm9uZ2VkIHRyYW5zaXN0b3JzLAp0aGUgbGFyZ2VzdCBldmVyIHNpbmdsZSBvcmRlciBt
+YWRlIGZvciB0cmFuc2lzdG9ycyBpbiB0aGUgd29ybGQpLCBhbmQKaW4gdGhlIEFNRCBPcHRlcm9u
+IFNlcmllcyB0aGV5IG9mIGNvdXJzZSBoYWQgdGhlIGZpbmFuY2lhbCBidWRnZXQgYW5kCnJlc291
+cmNlcyBvZiBhIG11bHRpLWJpbGxpb24tZG9sbGFyIGNvbXBhbnkgYW5kIHNvIGNvdWxkIGhhcHBp
+bHkgcGF5IGZvcgpjdXN0b20gc2lsaWNvbi4KCnNvLiAgY29uY2x1c2lvbiwgYWZ0ZXIgYWxsIHRo
+YXQgKGFwb2xvZ2llcyksIGlzIGJhY2sgYXQgdGhlIHRvcC4KCi0tIApZb3UgYXJlIHJlY2Vpdmlu
+ZyB0aGlzIG1haWwgYmVjYXVzZToKWW91IGFyZSBvbiB0aGUgQ0MgbGlzdCBmb3IgdGhlIGJ1Zy4K
+X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KbGlicmUtcmlz
+Y3YtZGV2IG1haWxpbmcgbGlzdApsaWJyZS1yaXNjdi1kZXZAbGlzdHMubGlicmUtcmlzY3Yub3Jn
+Cmh0dHA6Ly9saXN0cy5saWJyZS1yaXNjdi5vcmcvbWFpbG1hbi9saXN0aW5mby9saWJyZS1yaXNj
+di1kZXYK
+