Re: [libre-riscv-dev] microwatt feature request: "switch off all optimisations" mode
[libre-riscv-dev.git] / cc / 71e62b05de48b40ec2bce6bdde2525c9c4e3f0
1 Return-path: <libre-riscv-dev-bounces@lists.libre-riscv.org>
2 Envelope-to: publicinbox@libre-riscv.org
3 Delivery-date: Sun, 29 Mar 2020 11:46:21 +0100
4 Received: from localhost ([::1] helo=libre-riscv.org)
5 by libre-riscv.org with esmtp (Exim 4.89)
6 (envelope-from <libre-riscv-dev-bounces@lists.libre-riscv.org>)
7 id 1jIVSO-0002IZ-7W; Sun, 29 Mar 2020 11:46:20 +0100
8 Received: from mail-lf1-f47.google.com ([209.85.167.47])
9 by libre-riscv.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
10 (Exim 4.89) (envelope-from <tanner.of.kha@gmail.com>)
11 id 1jIVSM-0002IT-1d
12 for libre-riscv-dev@lists.libre-riscv.org; Sun, 29 Mar 2020 11:46:18 +0100
13 Received: by mail-lf1-f47.google.com with SMTP id c5so11494137lfp.5
14 for <libre-riscv-dev@lists.libre-riscv.org>;
15 Sun, 29 Mar 2020 03:46:18 -0700 (PDT)
16 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025;
17 h=message-id:subject:from:to:date:in-reply-to:references:user-agent
18 :mime-version:content-transfer-encoding;
19 bh=/zjsNvMWp169Z4ESjke/d6nd4x5wcSwl1OM3GBKaQqQ=;
20 b=Qg2NJAh3LhPjhMoFUq6DLYC+uDoUns5ZNTaYRAGN78eURSZg5glQqlaeYbkdUqhTQR
21 fK2XNs2Esr4i0qZqRWwJedcThcofcHIqyBgFWoefclvNSKwZ1zK7kHotLQgB/ojinOx2
22 brITQCTds/8DTxVplvs3658mIZG0M1eQu6BEdfoFhOCkdGuVoZOcffxMvnPC600F2HKv
23 U2uOU2YKvZ0KpU6Gv2FHtUZvCaStOnkZSP/+Lu2V3O2jFAXyQErbxZO21rocwN/+z1eq
24 AyGgPJhLaSY13jnEGz5pw7Pu8Bg9qhgdLoV/7hgzKE7K4AYOgfNLOdM5MgR6kmN6joxP
25 lNOQ==
26 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
27 d=1e100.net; s=20161025;
28 h=x-gm-message-state:message-id:subject:from:to:date:in-reply-to
29 :references:user-agent:mime-version:content-transfer-encoding;
30 bh=/zjsNvMWp169Z4ESjke/d6nd4x5wcSwl1OM3GBKaQqQ=;
31 b=r/Y7Tkd8WvDFoDsGW+aXraHV3Ax1u33C2+KvTwcOjMiQWsUqvMj0uMok4itXOrbaAn
32 CUHGo+XdTspDyHCyo4rCCW/gbEi8ErAsHfDMTsSU6HtpEEaxb5NkIzLra37Mjin62/oM
33 dBp+szEWwNOKEi+UkDtaXbRaRBZrB8HAgErXdEzmGm/paYEL5LXGbJrGVaEkY5uFFri3
34 wJdu6DKW8C5AIaIqTi8Mz/5NyAXhBq/YEPTHH83r/JAqdM374I7CAN3p8oFmBH3w8wvI
35 t0tpZ/32mzblFcqaoF1afRCvikQiiSuNQUhEYWi6XUFfb/zJsVssIvWTyVb/1kSDOt/6
36 SqgQ==
37 X-Gm-Message-State: AGi0PuY8Vn6M5l1t3O/z1Ul7edce80CcFLeQCvQp5YhodFsd1lEFQE5G
38 9gATEX0QJELQaBVoj6qVQ9fstx5V/hc=
39 X-Google-Smtp-Source: APiQypJBLec2r02t00jneM7fyc5BOcGRO8hWlZY4bnzI5FrgaTt9Ds5qT5UzashW26e/2ChYHn81kw==
40 X-Received: by 2002:a19:ac8:: with SMTP id 191mr5034794lfk.77.1585478776709;
41 Sun, 29 Mar 2020 03:46:16 -0700 (PDT)
42 Received: from ibmpc ([92.37.232.87])
43 by smtp.gmail.com with ESMTPSA id r21sm5466723ljp.29.2020.03.29.03.46.15
44 for <libre-riscv-dev@lists.libre-riscv.org>
45 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
46 Sun, 29 Mar 2020 03:46:16 -0700 (PDT)
47 Message-ID: <24756f54d28bd109e0bf1613acbf868d268e262b.camel@gmail.com>
48 From: Jock Tanner <tanner.of.kha@gmail.com>
49 To: Libre-RISCV General Development <libre-riscv-dev@lists.libre-riscv.org>
50 Date: Sun, 29 Mar 2020 20:46:06 +1000
51 In-Reply-To: <de619dbb67b22514be18f4a8e4282d90de502cf6.camel@lip6.fr>
52 References: <CAPweEDw_h8VQ3JJFF3FXph7Eg0ucVknuvMk=Xc0jSp0WP13=UQ@mail.gmail.com>
53 <8fb9dbcc812d3d7050c6e336dc9bf68f88536888.camel@gmail.com>
54 <de619dbb67b22514be18f4a8e4282d90de502cf6.camel@lip6.fr>
55 User-Agent: Evolution 3.34.4
56 MIME-Version: 1.0
57 Subject: Re: [libre-riscv-dev] extremely busy crowdsupply update started
58 X-BeenThere: libre-riscv-dev@lists.libre-riscv.org
59 X-Mailman-Version: 2.1.23
60 Precedence: list
61 List-Id: Libre-RISCV General Development
62 <libre-riscv-dev.lists.libre-riscv.org>
63 List-Unsubscribe: <http://lists.libre-riscv.org/mailman/options/libre-riscv-dev>,
64 <mailto:libre-riscv-dev-request@lists.libre-riscv.org?subject=unsubscribe>
65 List-Archive: <http://lists.libre-riscv.org/pipermail/libre-riscv-dev/>
66 List-Post: <mailto:libre-riscv-dev@lists.libre-riscv.org>
67 List-Help: <mailto:libre-riscv-dev-request@lists.libre-riscv.org?subject=help>
68 List-Subscribe: <http://lists.libre-riscv.org/mailman/listinfo/libre-riscv-dev>,
69 <mailto:libre-riscv-dev-request@lists.libre-riscv.org?subject=subscribe>
70 Reply-To: Libre-RISCV General Development
71 <libre-riscv-dev@lists.libre-riscv.org>
72 Content-Type: text/plain; charset="utf-8"
73 Content-Transfer-Encoding: base64
74 Errors-To: libre-riscv-dev-bounces@lists.libre-riscv.org
75 Sender: "libre-riscv-dev" <libre-riscv-dev-bounces@lists.libre-riscv.org>
76
77 SGVsbG8gSmVhbi1QYXVsLAoKVGhhbmsgeW91IGZvciBzdWNoIGEgdGhvcm91Z2ggYW5zd2VyLiBJ
78 J2QgYmUgaGFwcHkgdG8gaGVscCB3aXRob3V0CnRha2luZyB0b28gbXVjaCBvZiB5b3VyIHRpbWUu
79 IEkgdW5kZXJzdGFuZCB0aGF0IHlvdSBoYXZlIGEgaHVnZSBwaWVjZQpvZiB3b3JrIGF0IHlvdXIg
80 aGFuZHMuIEl0J3MgZ3JlYXQgdGhhdCBvdGhlciBwZW9wbGUgZ2V0dGluZyB0aGVtc2VsdmVzCmlu
81 dm9sdmVkIGluIENvcmlvbGlzLgoKT24gU2F0LCAyMDIwLTAzLTI4IGF0IDE3OjQ0ICswMTAwLCBK
82 ZWFuLVBhdWwgQ2hhcHV0IHdyb3RlOgo+ICAgSSdtIG5vdCBmYW1pbGlhciB3aXRoIHZpcnR1YWxl
83 bnYgYW5kIEkgZG9uJ3QgdW5kZXJzdGFuZCBob3cgdGhlCj4gICBDKysgUHl0aG9uIG1vZHVsZXMg
84 Y2FuIGJlIHNlcGFyYXRlZCBmcm9tIHRoZSBQeXRob24gZXh0ZW5zaW9uCj4gdGhlbXNlbHZlcy4K
85 Cj4gICBCcmVha2luZyB0aGluZ3MgaW4gbXVsdGlwbGUgY29tcG9uZW50cyBpbnRyb2R1Y2UgY29t
86 cGxleGl0eSB0aGF0Cj4geW91Cj4gICBtdXN0IG1hbmFnZSBhZnRlcndhcmRzLiBJIGNhbiBzZWUg
87 YSBsb3Qgb2YgdHJvdWJsZXMgd2hlbiBwZW9wbGUKPiB3aWxsCj4gICBoYXZlIG1pc21hdGNoZWQg
88 dmVyc2lvbnMgb2YgdGhlIEMrKyBjb3JlIGFuZCB0aGUgUHlQSSBleHRlbnNpb25zLgo+ICAgQW5k
89 IGxvdHMgb2YgbmlndGhtYXJpc2ggZGVidWcgcHJvYmxlbXMuCj4gICAgIE5hdGl2ZSBwYWNrYWdl
90 cyB3b3VsZCBiZSBiZXR0ZXIsIGFuZCBjYW4gYmUgZG9uZSwgb25jZSBpdCBpcwo+IHN0YWJsZQo+
91 ICAgZW5vdWdoLgoKdmlydHVhbGVudiBpcyBhIGdyZWF0IGFzc2V0IGZvciBQeXRob24gZGV2ZWxv
92 cGVyLCBhbmQgaXQgc3Ryb25nbHkKaW5mbHVlbmNlcyB0aGUgd2F5cyB0aGF0IFB5dGhvbiBzb2Z0
93 d2FyZSBpcyBzaGlwcGVkLiBJJ2xsIHRyeSB0bwplbGFib3JhdGUuCgpXaGVuIGJ1aWxkaW5nIG5h
94 dGl2ZSBwYWNrYWdlcyB3ZSB1c3VhbGx5IHRoaW5rIG9mIFB5dGhvbiBpbnRlcnByZXRlcgppdHNl
95 bGYgYW5kIHJlcXVpcmVkIFB5dGhvbiBtb2R1bGVzIGFzIHN5c3RlbS13aWRlIGRlcGVuZGVuY2ll
96 cyB3aXRoIGFsbAp0aGUgdmVyc2lvbiByZXN0cmljdGlvbnMgdGhhdCBjb21lcyBvdXQgb2YgaXQu
97 IFdoZW4gb3VyIGRlcGVuZGVuY2llcwphcmUgZmV3IGFuZCB0aGVpciB2ZXJzaW9ucyBtb3N0IHBy
98 b2JhYmx5IG1hdGNoaW5nIHRob3NlIHBhY2thZ2VkIGZvcgp0aGUgT1MsIGl0J3MgT0suIFdoZW4g
99 dGhlIFB5dGhvbi1yZWxhdGVkIHBhcnQgb2YgdGhlIHByb2plY3QgZ3Jvd3MsCnZlcnNpb24gbWlz
100 bWF0Y2hlcyBiZWNvbWVzIGEgaGluZHJhbmNlLgoKQnV0IFB5dGhvbiBpcyBiZXR0ZXIgdGhhbiB0
101 aGF0ISBDUHl0aG9uIGl0c2VsZiB3aXRoIGFsbCBpdHMgYnVpbHQtaW4KY29tcG9uZW50cyBpcyB0
102 b3RhbGx5IGluZGVwZW5kZW50IG9mIGl0cyBwb3NpdGlvbiBpbiB0aGUgT1MgZGlyZWN0b3J5CnRy
103 ZWUuIEl0IHJlbGllcyBvbiBpdHMgb3duLCBtb3N0bHkgRkhTLWNvbXBsaWFudCwgZGlyZWN0b3J5
104 IHRyZWUsIHdoaWNoCmlzIGRlZmluZWQgaW4gcnVudGltZSBieSBQWVRIT05QQVRIIGVudmlyb25t
105 ZW50IHZhcmlhYmxlLiBTbwondmlydHVhbGVudicgYW5kIHNpbWlsYXIgdG9vbHMgYXJlIGNyZWF0
106 ZWQgdG8gbWFuYWdlIG11bHRpcGxlClBZVEhPTlBBVEggdHJlZXMgb24gdXNlciBsZXZlbCwgc3dp
107 dGNoIGJldHdlZW4gdGhlbSwgYWlkIHBpcCB3aXRoCmluc3RhbGxpbmcgcGFja2FnZXMgb24gdGhl
108 bSBldCBjLgoKSWYgUHl0aG9uIHBhY2thZ2UgY2FuIGJlIGluc3RhbGxlZCBpbiB2aXJ0dWFsIGVu
109 dmlyb25tZW50LCBpdCBiZWNvbWVzCnRvdGFsbHkgaW5kZXBlbmRlbnQgb2Ygc3lzdGVtLXdpZGUg
110 UHl0aG9uIHBhY2thZ2VzIGFuZCBldmVuIHRoZSBQeXRob24KaW50ZXJwcmV0ZXIgaXRzZWxmICh1
111 c2luZyBweWVudikuIEl0IGlzIHZlcnkgY29udmVuaWVudCBmb3IgZGV2ZWxvcGVycwphbmQgdXNl
112 cnMgYWxpa2UuIFRoYXQgaXMgd2h5IFB5dGhvbiBiaW5kaW5ncyBhcmUgdXN1YWxseSBkZWNvdXBs
113 ZWQgb2YKdGhlaXIgdW5kZXJseWluZyBwcm9ncmFtcyBvciBsaWJyYXJpZXMuIEZvciBleGFtcGxl
114 LCBseG1sIGlzIGluc3RhbGxlZApzZXBhcmF0ZWx5IG9mIGxpYnhtbDIgYW5kIGxpYnhzbHQsIGJ1
115 dCB0b3RhbGx5IGRlcGVuZHMgb24gdGhlbQppbnN0YWxsZWQgc3lzdGVtLXdpZGUuCgpBbm90aGVy
116 IGltcGxpY2F0aW9uIGlzIFBZVEhPTlBBVEggYmVpbmcgRkhTLWxpa2UsIHRoYXQgbWVhbnMgbGl0
117 ZXJhbGx5CmV2ZXJ5IHByb2dyYW0gY2FuIGJlIGJ1aWx0IGFuZCBpbnN0YWxsZWQgaW4gUFlUSE9O
118 UEFUSCByYXRoZXIgdGhhbgphbnl3aGVyZSBlbHNlLiBGb3IgZXhhbXBsZSwgdXdzZ2kgaXMgYSBQ
119 eXRob24gYXBwbGljYXRpb24gc2VydmVyLCB0aGF0CmhhcyBhIENQeXRob24gc3RhdGljYWxseSBj
120 b21waWxlZCBpbnRvIGl0c2VsZiBhbmQgdGh1cyBjb3VsZCBiZSBzaGlwcGVkCmFzIGEgbmF0aXZl
121 IE9TIHBhY2thZ2UuIEJ1dCB0aGVpciBjcmVhdG9ycyBoYXZlIGNob3NlbiBhbm90aGVyCmFwcHJv
122 YWNoLiBUaGV5IG1hZGUgaXQgYSBwaXAgcGFja2FnZSwgYW5kIGFzIHN1Y2ggaXQgcmVsaWVzIG9u
123 ClBZVEhPTlBBVEggYW5kIHN1cHBvcnRzIHZpcnR1YWxlbnYganVzdCBmb3IgdGhlIHNha2Ugb2Yg
124 Y29udmVuaWVuY3kuClRoZWlyIHBpcCBwYWNrYWdlLCBpbiB0dXJuLCBjYW4gYmUgaW5jbHVkZWQg
125 aW4gYW55IE9TIHJlcG9zaXRvcnkgYXMgYQpQeXRob24gcGFja2FnZSBieSBpbmRlcGVuZGVudCBz
126 dXBwb3J0ZXJzLgoKVG8gc3VtbWFyaXplLiBJZiB0aGUgcHJvamVjdCBjb25zaXN0cyBvZiBhIG5h
127 dGl2ZSBwYXJ0IChDL0MrKykgYW5kIGEKZHluYW1pYyBwYXJ0IChQeXRob24gd2l0aCBDIGJpbmRp
128 bmdzKSwgYW5kIG5hdGl2ZSBwYXJ0IGNhbiBiZSB1c2VkCndpdGhvdXQgZHluYW1pYyBwYXJ0LCB0
129 aGVuIGl0IG1ha2VzIHNlbnNlIHRvIGRlY291cGxlIHRoZW0gYW5kIHBhY2thZ2UKdGhlbSBzZXBh
130 cmF0ZWx5OiBuYXRpdmUgcGFydCDiiJIgYXMgYW4gT1MgcGFja2FnZSBvciBhIGJ1aWxkIHNjcmlw
131 dCwgYW5kCmR5bmFtaWMgcGFydCDiiJIgYXMgdGhlIGNvcnJlc3BvbmRpbmcgZHluYW1pYyBsYW5n
132 dWFnZSBpbmZyYXN0cnVjdHVyZQoocGlwL3NldHVwdG9vbHMpIHN1Z2dlc3RzLiBJdCB3b3VsZCBp
133 bnRyb2R1Y2Ugc29tZSBvdmVyaGVhZCwgYnV0IGFsc28KYWRkIGZsZXhpYmlsaXR5IHRvIHRoZSBw
134 cm9jZXNzLgoKQnV0IGlmIG5hdGl2ZSBhbmQgZHluYW1pYyBwYXJ0cyBhcmUgaW5zZXBhcmFibGUg
135 ZnJvbSBlYWNoIG90aGVyLCBpdCBpcwpiZXR0ZXIgdG8ganVzdCBzaGlwIHRoZSB3aG9sZSB0aGlu
136 ZyBhcyBhIHBpcCBwYWNrYWdlLgoKQUZBSUsgdGhlc2UgYXBwcm9hY2hlcyBhcmUgcHJldmFsZW50
137 IGluIFB5dGhvbiBzb2Z0d2FyZSBkZXZlbG9wbWVudC4KCj4gICBOb3Qgc28gZmFzdCBoZXJlLCB3
138 ZSBuZWVkIGEgZGVmaW5pdGlvbiBvZiAiZW5kIHVzZXJzIi4gSW4gbXkgbGFiLAo+ICAgdGhlIHBl
139 b3BsZSB1c2luZyBDb3Jpb2xpcyBhcmUgbW9zdGx5IEFTSUMgcGVvcGxlLCB0aGF0IGlzCj4gZWxl
140 Y3RyaWNhbAo+ICAgZW5naW5lZXJzLiBUaGV5IHVzZSB0aGUgbWluaW1hbCBhbmQgc2ltcGxlc3Qg
141 cG9zc2libGUgc3Vic2V0IG9mIGFueQo+ICAgcHJvZ3JhbW1pbmcgbGFuZ3VhZ2UuCj4gICAgIFlv
142 dSBtYXkgbG9vayBhdCB0aGUgcmVsYXRpb25zaGlwIGJldHdlZW4gQysrIGFuZCBTeXN0bWVDLiBT
143 eXN0ZW1DCj4gICBpcyBjb21wYXJhYmxlIHRvIG5NaWdlbiBidXQgdW5kZXIgdGhlIGZvcm0gb2Yg
144 YSBDKysgbGlicmFyeS4gVGhleQo+ICAgZG9uJ3QgZXZlbnQgdGVsbCB0aGVtIGl0J3MgQysrLiBT
145 eXN0ZW1DIGlzIHVzdWFsbHkgcHJlc2VudGVkIGFzIGEKPiAgIGxhbmd1YWdlIG9uIGl0J3Mgb3du
146 IChzb21ldGltZXMgdGhleSB0YWxrIGFib3V0IEMpLgo+ICAgICBJbiBmYWN0LCBhbmQgdGhpcyBp
147 cyBhIHRyZW5kIEkndmUgc2VlbiBlbWVyZ2Ugd2l0aCB0aGUgcmlzZSBvZgo+IEZQR0EKPiAgIGZv
148 ciBzb21lIHRpbWUsIHlvdSBoYXZlICp0d28qIGtpbmQgb2YgYXVkaWVuY2UuCj4gID0yMAo+ICAg
149 KiBFbGVjdHJpY2FsIGVuZ2luZWVycyBvciBndXlzIGNvbW1pbmcgImZyb20gdGhlIGhhcmR3YXJl
150 Iiwgd2l0aAo+IGxpbWl0ZWQKPiAgICAgcHJvZ3JhbW1pbmcgc2tpbGxzLiBUaGV5IGRlc2NyaWJl
151 IHRoZWlyIGRlc2lnbiBhcyBzZXJpZXMgb2YKPiBibG9ja3MuCj4gICAgIFRoZXkgd2FudCB0byB0
152 aWdodGx5IGNvbnRyb2wgaG93IGFuZCB3aGF0IHRoZXkgZ2VuZXJhdGUuCj4gICAqIENvbXB1dGVy
153 IFNjaWVuY2UgdHlwZXMsIG9yIGd1eXMgY29taW5nICJmcm9tIHRoZSBzb2Z0d2FyZSIsIHdpdGgK
154 PiAgICAgYWR2YW5jZWQgcHJvZ3JhbW1pbmcgc2tpbGxzLiBUaGV5IHRlbmQgdG8gc2VlIHRoZWly
155 IGRlc2lnbiBpbgo+IHRlcm0KPiAgICAgb2YgY2xhc3NlcyBhbmQgZnVuY3Rpb25zLCB3aXRoIGxv
156 dCBvZiBpbXBsaWNpdCBtZWNoYW5pc21zLgo+ICAgICBUeXBpY2FsIGV4YW1wbGUgaXMgQ2hpc2Vs
157 IG9yIFNwaW5hbEhETC4KPiAKPiAgIEF0IHRoaXMgcG9pbnQgSSBoYXZlIG5vIGNsZWFyIGFuc3dl
158 ciBhYm91dCB3aGF0IHRoZSAiYmVzdCIgbGFuZ3VhZ2UKPiAgIHdvdWxkIGJlLiBCdXQgSSBjYW4g
159 dGVsbCB5b3UgZm9yIHN1cmUgdGhhdCBtYW55ICJoYXJkd2FyZSBndXlzIiBhcmUKPiAgIGxpdGVy
160 YWxseSByZXBlbGxlZCBieSBsYW5ndWFnZXMgbGlrZSBDaGlzZWwuCj4gICAgIEl0J3MgYSBkaXNj
161 dXNzaW9uIHdlIGFyZSBjdXJyZW50bHkgaGF2aW5nIGF0IHRoZSBsYWIuIExpa2UgdGhlCj4gb25l
162 Cj4gICB0aGF0IGRpZCB0YWtlIHBsYWNlIGluIHRoaXMgbGlzdCBhIGxpdHRsZSB3aGlsZSBhZ28u
163 Cj4gID0yMAoKQm90aCBDaGlzZWwgYW5kIFNwaW5hbEhETCBhcmUgc3ludGFjdGljYWxseSBkZXJp
164 dmVkIGZyb20gU2NhbGEuIFNjYWxhCmlzIGEgeW91bmdlciwgYSBiaXQgbGVzcyBzY2FyeSBzaWJs
165 aW5nIG9mIEhhc2tlbGwuIEhhc2tlbGwgY2FuIHNjYXJlCnRoZSBzaGl0IG91dCBvZiBldmVyeSBz
166 b2Z0d2FyZSBlbmdpbmVlciBleGNlcHQgdGhvc2Ugd2l0aCBzdHJvbmcKbWF0aGVtYXRpY2FsIGJh
167 Y2tncm91bmQuIFNvIEkgc3VnZ2VzdCBpdCdzIG5vdCB0aGUgYmVzdCBwcmFjdGljZXMgdGhhdApy
168 ZXBlbGxzIOKAnGhhcmR3YXJlIGd1eXPigJ0sIGJ1dCBhIGNhcmVsZXNzIGludHJvZHVjdGlvbiB0
169 byBmdW5jdGlvbmFsCmFwcHJvYWNoIGluIHByb2dyYW1taW5nLgoKPiAgIE15IHB5dGhvbiBpbnRl
170 cmZhY2UgYWxsb3cgdG8gbWlycm9yIGluIFB5dGhvbgo+ICAgdGhlIEMrKyBmdW5jdGlvbiBvdmVy
171 bG9hZCwgYnV0IFB5dGhvbiBvbmx5IGFsbG93cyBvbmUgc2V0IG9mCj4gICBwYXJhbWV0ZXJzLCBp
172 cyB0aGF0IHRydWUgb3IgSSdtIGxhZ2dpbmcgb24gUHl0aG9uIGZlYXR1cmVzIGFnYWluPwo+ICAg
173 U28gaG93IHRvIGRlc2NyaWJlIGEgZnVuY3Rpb24gd2l0aCBtb3JlIHRoYW4gb25lIHBhcmFtZXRl
174 ciBzZXQ/CgpBcyBhIGZ1bmN0aW9uIHdpdGggb3B0aW9uYWwgcGFyYW1ldGVycy4KCldoYXQgd2Ug
175 aGF2ZSBub3c6CgogIGNsYXNzIEJveChvYmplY3QpOgogICAgICBkZWYgX19pbml0X18oc2VsZiwg
176 KmFyZ3MsICoqa3dhcmdzKTogIyByZWFsIHNpZ25hdHVyZSB1bmtub3duCiAgICAgICAgIHBhc3MK
177 CldoYXQgd2UgY291bGQgaGF2ZSB3aXRoIG9ubHkgcG9zaXRpb25hbCBhcmd1bWVudHM6CgogIGNs
178 YXNzIEJveChvYmplY3QpOgogICAgICBkZWYgX19pbml0X18oc2VsZiwgeDE9Tm9uZSwgeTE9Tm9u
179 ZSwgeDI9Tm9uZSwgeTI9Tm9uZSk6CiAgICAgICAgICAiIiIKICAgICAgICAgIENyZWF0ZXMgYSBi
180 b3ggb2YgYSBnaXZlbiBzaGFwZS4gSWYgYWxsIHBhcmFtZXRlcnMgYXJlCiAgICAgICAgICBvbWl0
181 dGVkLCBjcmVhdGVzIGFuIGVtcHR5IGJveC4KCiAgICAgICAgICA6cGFyYW0geDE6IHN0YXJ0aW5n
182 IGhvcml6b250YWwgb2Zmc2V0LAogICAgICAgICAgOnBhcmFtIHgxOiBzdGFydGluZyB2ZXJ0aWNh
183 bCBvZmZzZXQsCiAgICAgICAgICA6cGFyYW0geDE6Cmhvcml6b250YWwgbGltaXQsCiAgICAgICAg
184 ICA6cGFyYW0geDE6IHZlcnRpY2FsIGxpbWl0LAogICAgICAgICAgOnJldHVybjoKQm94IG9iamVj
185 dC4KICAgICAgICAgICIiIgogICAgICAgICAgcGFzcwoKVGhpcyBpcyBhcyBuZWF0IGFzIGl0IGNh
186 biBiZSBpbiBQeXRob24gMiwgYnV0IGl0IGRvZXNuJ3QgYWNjb3VudCBmb3IKUG9pbnQgb3IgQm94
187 IGFyZ3VtZW50cy4gRnJvbSBQeXRob24gcGVyc3BlY3RpdmUsIHRoZSBmYWN0IHRoYXQgdGhlCmZp
188 cnN0IHBvc2l0aW9uYWwgYXJndW1lbnQgY2FuIGJlIGVpdGhlciBhIHNpbmdsZSBjb29yZGluYXRl
189 LCBhIHBvaW50LApvciBhIGJveCBtZWFucyB2YXJpYWJsZSByZXVzZSwgYW5kIGl0IGlzIGJhZCBm
190 b3IgcmVhZGFiaWxpdHkuIEJ1dApuZXRoZXJ0aGVsZXNzIHdlIGNhbiBhY2NvdW50IGZvciB0aGF0
191 IGluIG91ciBkb2NzdHJpbmc6CgogIGNsYXNzIEJveChvYmplY3QpOgogICAgICBkZWYgX19pbml0
192 X18oc2VsZiwgeDE9Tm9uZSwgeTE9Tm9uZSwgeDI9Tm9uZSwgeTI9Tm9uZSk6CiAgICAgICAgICAi
193 IiIKICAgICAgICAgIENyZWF0ZXMgYSBib3ggb2YgYSBnaXZlbiBzaGFwZS4gSWYgYWxsIHBhcmFt
194 ZXRlcnMgYXJlCiAgICAgICAgICBvbWl0dGVkLCBjcmVhdGVzIGFuIGVtcHR5IGJveC4KCiAgICAg
195 ICAgICA6cGFyYW0geDE6IHN0YXJ0aW5nIGhvcml6b250YWwgb2Zmc2V0LCBvciBzdGFydGluZyBw
196 b2ludCwKICAgICAgICAgICAgICAgICAgICAgb3IgYW5vdGhlciBib3ggdG8gY29weSwKICAgICAg
197 ICAgIDpwYXJhbSB4MTogc3RhcnRpbmcgdmVydGljYWwgb2Zmc2V0LCBvciBsaW1pdGluZyBwb2lu
198 dCwKICAgICAgCjpwYXJhbSB4MTogaG9yaXpvbnRhbCBsaW1pdCwKICAgICAgICAgIDpwYXJhbSB4
199 MTogdmVydGljYWwgbGltaXQsCiAgICAgICAKOnJldHVybjogQm94IG9iamVjdC4KICAgICAgICAg
200 ICIiIgogICAgICAgICAgcGFzcwoKV2l0aCBQeXRob24gMy40KyB3ZSBjb3VsZCBnZXQgbXVjaCBi
201 ZXR0ZXIgcmVzdWx0cyB3aXRoIHR5cGluZyBtb2R1bGUKYW5kIFVuaW9uW10uIEJ1dCB3aXRoIFB5
202 dGhvbiAyIHdpdGhvdXQgbXlweSB0aGF0J3MgaXQuCgo+ICAgUXVpdGUgdGhlIG9wcG9zaXRlLCBJ
203 IGRvIHRoaW5rIHN0eWxlIGlzIGltcG9ydGFudC4gVGhlIGdvYWwgb2YKPiBzdHlsZQo+ICAgaXMg
204 cmVhZGFiaWxpdHkgYW5kIGl0IGlzIG1pbmUuIEJ1dCBJIGRvbid0IHRoaW5rIHlvdSBjYW4gc2F5
205 IHRoYXQKPiB0aGVyZQo+ICAgaXMgKm9uZSogZ29vZCBzdHlsZSBhbmQgYWxsIG90aGVycyBhcmUg
206 YmFkLiBBbmQgZXZlbiB0aGUgcmVmZXJlbmNlCj4gc3R5bGUKPiAgIG1heSBldm9sdmUuLi4gSXQg
207 aXMgZWFzeSB0byBzbGlwIGZyb20gInRoZSBzdHlsZSBJJ20gYWNjdXN0b21lZCB0byIKPiBhbmQK
208 PiAgICJ0aGUgcmlnaHQgc3R5bGUiLiBJIHVuZGVyc3RhbmQgdGhlIGFkdmFudGFnZXMgb2YgdXNp
209 bmcgYSBzdHlsZQo+IHNoYXJlZAo+ICAgYnkgbWFueSBwZW9wbGVzLCBidXQgSSB3b24ndCBibGlu
210 ZGx5IGNvbXBseSAoSSdtIGJvdGggRnJlbmNoIGFuZCBhCj4gYml0Cj4gICBzdHViYm9ybikuIEkg
211 d2lsbCB0cnkgdG8gZmluZCB0aW1lIHRvIHJlYWQgdGhlIFBFUDgsIGJ1dCBJIGhhdmUgYQo+IGxv
212 dAo+ICAgb2Ygd29yayB0byBkby4uLgo+ICAgICBJJ3ZlIGFscmVhZHkgc2VlbiB0aGlzIGRlYmF0
213 ZSBhYm91dCBDKysgY29kaW5nLCBhbmQgdGhlcmUgYXJlCj4gICBkZWZpbmV0ZWx5IGdvb2QgYW5k
214 IGJhZCBzdHlsZXMgKG9yIGxhY2sgb2YpIGJ1dCBJIHdvbid0IHNheSB0aGVyZQo+IGlzCj4gICAi
215 dGhlIGdvb2Qgc3R5bGUiLiBBbW9uZyBnb29kIHN0eWxlcywgdGhlcmUgYXJlIGRpZmZlcmVudCB0
216 cmFkZW9mZnMKPiAgIHRoYXQgbWF5IG9yIG1heSBub3Qgc3VpdHMgeW91LgoKSSBjYW4ndCBjb21w
217 bGV0ZWx5IGFncmVlIHdpdGggeW91IG9uIHRoaXMgc3ViamVjdCwgSmVhbi1QYXVsLiBXaGlsZQpv
218 dGhlciBsYW5ndWFnZXMgaGF2ZSBkaWZmZXJlbnQgc3R5bGUgZ3VpZGVzIHRoYXQgZXZvbHZlZCBz
219 aWduaWZpY2FudGx5CmR1cmluZyB0aGVpciBsaWZldGltZXMsIFBFUCA4IGlzIGxpdGVyYWxseSB0
220 aGUgb25lIGFuZCBvbmx5IFB5dGhvbgpzdHlsZSBndWlkZSBmb3IgdGhlIGxhc3QgMTkgeWVhcnMs
221 IGFuZCBpdCBoYXMgbmV2ZXIgY2hhbmdlZCwgb25seQpleHRlbmRlZCBvbmNlIHRvIGFjY291bnQg
222 Zm9yIG5ldyBsYW5ndWFnZSBmZWF0dXJlcy4gT3RoZXIgc3R5bGUgZ3VpZGVzCihHb29nbGUsIEto
223 YW4gQWNhZGVteSkgb25seSBleHRlbmQgUEVQIDggYW5kIG90aGVyIFBFUHMsIGJ1dCBuZXZlcgpv
224 dmVycnVsZSB0aGVtLgoKPiAgIE1heWJlIGl0IGhhcyBjaGFuZ2VkIGluIHRoZSBjb21wYW55IHdv
225 cmxkLCBidXQgZm9yIHdoYXQgSSd2ZSBzZWVuCj4gICBpbiB0aGUgQVNJQyB3b3JsZCwgY29kZSBj
226 bGVhbmxpbmVzcyBpcyBzdGlsbCBhIGxvbmcgd2F5IGhvbWUuLi4KPiAgIEJ1dCBhZ2FpbiwgaXQg
227 bWF5IGJlIGRpZmZlcmVudCBjb21wYW55IHdlIGFyZSB0YWxraW5nIGFib3V0Lgo+ICAgSSB0YWxr
228 IG9mIENhZGVuY2UvTWVudG9yL1N5bm9wc3lzLCBpZiB5b3UgaGF2ZSB0aGUgb3Bwb3J0dW5pdHks
229 Cj4gICB0YWtlIGEgbG9vay4KCkNhbiBJIHJlYWxseSBzZWUgdGhlIGNvZGUgeW91IG1lbnRpb24s
230 IG9yIGlzIGl0IHVuZGVyIE5EQT8KClRoZSBmaXJzdCB0aGluZyB0aGF0IGNhbWUgdG8gbWluZCB3
231 YXMgTXlIREwgWzFdLiBJIHRoaW5rIHRoZWlyIGNvZGUgaXMKcXVpdGUgY2xlYW4gYW5kIGlkaW9t
232 YXRpYy4KCj4gICBBIGxhc3QgcmVmbGV4aW9uIGFib3V0IFB5Q2hhcm0sIGl0IGlzIHZlcnkgd2Vs
233 bCBmb3IgcGVvcGxlIHdvcmtpbmcKPiAgIG9ubHkgb24gUHl0aG9uIGNvZGUuIEJ1dCBmb3IgbXkg
234 cGFydCwgSSBlZGl0IEMrKywgQywgUHl0aG9uLCBSZVNULAo+ICAgY21ha2UsIExhVGVYLCBZYW1s
235 IGFuZCB3aGF0bm90LCBzbyBJIHVzZSBFbWFjcyAodmltIGNvdWxkIGFsc28gZG8pLgo+ICAgSXQg
236 d291bGQgYmUgaW5lZmZpY2llbnQgdG8gaGF2ZSBvbmUgSURFL2VkaXRvciBwZXIgbGFuZ3VhZ2Uu
237 CgpTcGVha2luZyBvZiBKZXRCcmFpbnMgcHJvZHVjdHMsIFB5Y2hhcm0gaXMgaW5kZWVkIG5vdCBz
238 dWl0ZWQgZm9yIEMvQysrCmRldmVsb3BtZW50LiBDTGlvbiwgb24gdGhlIG90aGVyIGhhbmQsIGhh
239 cyBhIFB5dGhvbiBwbHVnaW4gdGhhdCBoYXMgYWxsCnRoZSBmZWF0dXJlcyBvZiBQeWNoYXJtIENF
240 LCBhbmQgYWxzbyBhIGZpcnN0LWNsYXNzIGNtYWtlIHN1cHBvcnQuIEkKdHJpZWQgQ0xpb24gYXQg
241 YSBzbWFsbCBDIHByb2plY3QsIGFuZCBpdCB3ZW50IHBlcmZlY3QuIEJ1dCBhbGFzLCBDTGlvbgpp
242 cyBhIG5vbi1mcmVlIHByb2R1Y3QuIFsyXQoKTm93IGlmIEkgd2VyZSB0YXNrZWQgd2l0aCBzZXR0
243 aW5nIHVwIGFuIGVudmlyb25tZW50IGZvciBsb25nLXNjYWxlCmh5YnJpZCBDL0MrKy9QeXRob24g
244 ZGV2ZWxvcG1lbnQgSSB3b3VsZCB0cnkgRWNsaXBzZSB3aXRoIENEVCBhbmQgUHlEZXYKcGx1Z2lu
245 cy4gSXQgbWF5IGxhY2sgYSBiaXQgaW4gZmVhdHVyZXMgYW5kIHVzYWJpbGl0eSwgYnV0IGl0J3Mg
246 ZnJlZS4KCkFzIGZvciBvdGhlciBmb3JtYXRzIGxpa2UgcmVTVCwgSlNPTiwgTGFUZVggZXQgYy4s
247 IGFsbCB0aGUgSURFcyBoYW5kbGUKdGhlbSB3ZWxsIGVpdGhlciBvdXQgb2YgdGhlIGJveCBvciB2
248 aWEgcGx1Z2lucy4KCkFzIGZvciBFbWFjcywgSSd2ZSByZWFkIHNvbWUgcG9zdHMgWzNdIGFuZCB3
249 YXRjaGVkIHNvbWUgdmlkZW9zLCBhbmQgSQptdXN0IHNheSBJJ20gbm90IGltcHJlc3NlZC4gSXQg
250 bWF5IHNlZW0gZnJvbSB0aGUgZGVzY3JpcHRpb24gdGhhdCBhbGwKdGhlIHBsdWdpbnMgZG8gYSBk
251 ZWNlbnQgam9iLCBidXQgdGhlIHdob2xlIHN5c3RlbSBjb21wbGV0ZWx5IGxhY2tzCmNvbnNjaW91
252 c25lc3MsIG9yIHlvdSBtYXkgY2FsbCBpdCBtdWx0aXRhc2tpbmcgYWJpbGl0aWVzLCBhbmQgdGhl
253 CnNjcmVlbiBpcyB2ZXJ5IGluZXhwcmVzc2l2ZS4gVGhlIGVkaXRvciBqdXN0IHJlYWN0cyBvbiBr
254 ZXlzdHJva2VzLCBhbmQKdGhhdCdzIGFsbC4gTGlrZSB5b3UncmUgc3VwcG9zZWQgdG8gbWFudWFs
255 bHkgc3RhcnQgc3ludGF4IGNoZWNrLCBzdHlsZQpjaGVjaywgc3RhdGljIGFuYWx5c2lzLiBUaGVu
256 IGZpeCBwcm9ibGVtcyBhbmQgc3RhcnQgYWdhaW4sIGFuZCBhZ2Fpbi4KSXQgaXMgcmVhbGx5IGxv
257 b2tzIHRlZGlvdXMsIGFuZCBib3JpbmcsIGFuZCBlcnJvci1wcm9uZS4KCk9uIHRoZSBjb250cmFz
258 dCwgd2hlbiBJIG9wZW4gYSBmaWxlIGluIFB5Y2hhcm0sIGl0IGltbWVkaWF0ZWx5IHN0YXJ0cwph
259 bGwgdGhlIGNoZWNrcyBvbiBpdCBhbmQgZ3JhZHVhbGx5IChpdCBtYXkgdGFrZSBhIHNlY29uZCBv
260 biBhIGRlY2VudAptYWNoaW5lKSBoaWdobGlnaHRzIGFsbCB0aGUgcmVhbCBvciBwb3NzaWJsZSBw
261 cm9ibGVtcyBpbiB0aGUKYmFja2dyb3VuZC4gQ3JpdGljYWwgdGhpbmdzIGFyZSBicmlnaHQgcmVk
262 LiBTeW50YXggZXJyb3JzLgpVbmluaXRpYWxpemVkIHZhcmlhYmxlcy4gVW5yZXNvbHZlZCBpbXBv
263 cnRzLiBOb24tY3JpdGljYWxzIGFyZSBwYWxlCnllbGxvdyBvciBncmV5aXNoLiBDYWxsIGFyZ3Vt
264 ZW50cyBub3QgbWF0Y2hpbmcgY2FsbGVlJ3Mgc2lnbmF0dXJlcy4KVmFyaWFibGVzIHRoYXQgbWF5
265 IGJlIHVuaW5pdGlhbGl6ZWQuIFVudXNlZCBjb2RlLiBTdHlsZSBwcm9ibGVtcy4gSHVtYW4KbGFu
266 Z3VhZ2Ugc3ludGF4IGVycm9ycy4KCkkgY2FuIHNjcm9sbCwgdHlwZSwgc3dpdGNoIGJldHdlZW4g
267 ZmlsZXMsIGFuZCBzdGlsbCBJIHNlZSBhbGwgdGhlCnJlc3VsdHMgb2YgdGhpcyBiYWNrZ3JvdW5k
268 IHdvcmsgc2ltdWx0YW5lb3VzbHkuCgpFY2xpcHNlJ3MgUHlEZXYgY2FuIGFsc28gZG8gc3RhdGlj
269 IGNoZWNrIHdoaWxlIHlvdSB0eXBlIFs0XSwgYnV0IHRoZQpsaXN0IG9mIHBvc3NpYmxlIHdhcm5p
270 bmdzIHNlZW1zIHNob3J0ZXIgdGhhbiBQeWNoYXJtJ3MsIGFuZCB0aGUgcmVzdWx0CmlzIGxlc3Mg
271 ZXN0aGV0aWNhbGx5IHBsZWFzaW5nIGZvciBteSB0YXN0ZS4KClNvLCBKZWFuLVBhdWwsIEkgd291
272 bGQgcmVhbGx5IGxpa2UgeW91IHRvIHRyeSBlaXRoZXIgSURFIG9uIGEgcmVhbCBjb2RlCmFuZCB0
273 ZWxsIG1lIHdoYXQgeW91IHRoaW5rLgoKWzFdIGh0dHBzOi8vZ2l0aHViLmNvbS9teWhkbC9teWhk
274 bC8KWzJdIApodHRwczovL2ludGVsbGlqLXN1cHBvcnQuamV0YnJhaW5zLmNvbS9oYy9lbi11cy9j
275 b21tdW5pdHkvcG9zdHMvMTE1MDAwNDc3MTMwLUhvdy10by1oYW5kbGUtYS1taXhlZC1QeXRob24t
276 Qy1DLXByb2plY3QKWzNdIGh0dHBzOi8vd3d3LmZ1bGxzdGFja3B5dGhvbi5jb20vZW1hY3MuaHRt
277 bApbNF0gaHR0cHM6Ly93d3cucHlkZXYub3JnL21hbnVhbF9hZHZfY29kZV9hbmFseXNpcy5odG1s
278 CgoKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmxpYnJl
279 LXJpc2N2LWRldiBtYWlsaW5nIGxpc3QKbGlicmUtcmlzY3YtZGV2QGxpc3RzLmxpYnJlLXJpc2N2
280 Lm9yZwpodHRwOi8vbGlzdHMubGlicmUtcmlzY3Yub3JnL21haWxtYW4vbGlzdGluZm8vbGlicmUt
281 cmlzY3YtZGV2Cg==
282