1
+
2
+ <!doctype html>
3
+ < html lang ="en " class ="no-js ">
4
+ < head >
5
+
6
+ < meta charset ="utf-8 ">
7
+ < meta name ="viewport " content ="width=device-width,initial-scale=1 ">
8
+
9
+
10
+
11
+
12
+
13
+
14
+ < link rel ="icon " href ="/assets/images/favicon.png ">
15
+ < meta name ="generator " content ="mkdocs-1.6.1, mkdocs-material-9.5.34 ">
16
+
17
+
18
+
19
+ < title > spec2repo</ title >
20
+
21
+
22
+
23
+ < link rel ="stylesheet " href ="/assets/stylesheets/main.35f28582.min.css ">
24
+
25
+
26
+
27
+
28
+
29
+
30
+
31
+
32
+
33
+
34
+
35
+
36
+ < link rel ="preconnect " href ="https://fonts.gstatic.com " crossorigin >
37
+ < link rel ="stylesheet " href ="https://fonts.googleapis.com/css?family=Roboto:300,300i,400,400i,700,700i%7CRoboto+Mono:400,400i,700,700i&display=fallback ">
38
+ < style > : root {--md-text-font : "Roboto" ;--md-code-font : "Roboto Mono" }</ style >
39
+
40
+
41
+
42
+ < script > __md_scope = new URL ( "/" , location ) , __md_hash = e => [ ...e ] . reduce ( ( ( e , _ ) => ( e << 5 ) - e + _ . charCodeAt ( 0 ) ) , 0 ) , __md_get = ( e , _ = localStorage , t = __md_scope ) => JSON . parse ( _ . getItem ( t . pathname + "." + e ) ) , __md_set = ( e , _ , t = localStorage , a = __md_scope ) => { try { t . setItem ( a . pathname + "." + e , JSON . stringify ( _ ) ) } catch ( e ) { } } </ script >
43
+
44
+
45
+
46
+
47
+
48
+
49
+ </ head >
50
+
51
+
52
+ < body dir ="ltr ">
53
+
54
+
55
+ < input class ="md-toggle " data-md-toggle ="drawer " type ="checkbox " id ="__drawer " autocomplete ="off ">
56
+ < input class ="md-toggle " data-md-toggle ="search " type ="checkbox " id ="__search " autocomplete ="off ">
57
+ < label class ="md-overlay " for ="__drawer "> </ label >
58
+ < div data-md-component ="skip ">
59
+
60
+ </ div >
61
+ < div data-md-component ="announce ">
62
+
63
+ </ div >
64
+
65
+
66
+
67
+
68
+
69
+
70
+ < header class ="md-header md-header--shadow " data-md-component ="header ">
71
+ < nav class ="md-header__inner md-grid " aria-label ="Header ">
72
+ < a href ="/. " title ="spec2repo " class ="md-header__button md-logo " aria-label ="spec2repo " data-md-component ="logo ">
73
+
74
+
75
+ < svg xmlns ="http://www.w3.org/2000/svg " viewBox ="0 0 24 24 "> < path d ="M12 8a3 3 0 0 0 3-3 3 3 0 0 0-3-3 3 3 0 0 0-3 3 3 3 0 0 0 3 3m0 3.54C9.64 9.35 6.5 8 3 8v11c3.5 0 6.64 1.35 9 3.54 2.36-2.19 5.5-3.54 9-3.54V8c-3.5 0-6.64 1.35-9 3.54 "/> </ svg >
76
+
77
+ </ a >
78
+ < label class ="md-header__button md-icon " for ="__drawer ">
79
+
80
+ < svg xmlns ="http://www.w3.org/2000/svg " viewBox ="0 0 24 24 "> < path d ="M3 6h18v2H3zm0 5h18v2H3zm0 5h18v2H3z "/> </ svg >
81
+ </ label >
82
+ < div class ="md-header__title " data-md-component ="header-title ">
83
+ < div class ="md-header__ellipsis ">
84
+ < div class ="md-header__topic ">
85
+ < span class ="md-ellipsis ">
86
+ spec2repo
87
+ </ span >
88
+ </ div >
89
+ < div class ="md-header__topic " data-md-component ="header-topic ">
90
+ < span class ="md-ellipsis ">
91
+
92
+
93
+
94
+ </ span >
95
+ </ div >
96
+ </ div >
97
+ </ div >
98
+
99
+
100
+ < script > var palette = __md_get ( "__palette" ) ; if ( palette && palette . color ) { if ( "(prefers-color-scheme)" === palette . color . media ) { var media = matchMedia ( "(prefers-color-scheme: light)" ) , input = document . querySelector ( media . matches ?"[data-md-color-media='(prefers-color-scheme: light)']" :"[data-md-color-media='(prefers-color-scheme: dark)']" ) ; palette . color . media = input . getAttribute ( "data-md-color-media" ) , palette . color . scheme = input . getAttribute ( "data-md-color-scheme" ) , palette . color . primary = input . getAttribute ( "data-md-color-primary" ) , palette . color . accent = input . getAttribute ( "data-md-color-accent" ) } for ( var [ key , value ] of Object . entries ( palette . color ) ) document . body . setAttribute ( "data-md-color-" + key , value ) } </ script >
101
+
102
+
103
+
104
+ < label class ="md-header__button md-icon " for ="__search ">
105
+
106
+ < svg xmlns ="http://www.w3.org/2000/svg " viewBox ="0 0 24 24 "> < path d ="M9.5 3A6.5 6.5 0 0 1 16 9.5c0 1.61-.59 3.09-1.56 4.23l.27.27h.79l5 5-1.5 1.5-5-5v-.79l-.27-.27A6.52 6.52 0 0 1 9.5 16 6.5 6.5 0 0 1 3 9.5 6.5 6.5 0 0 1 9.5 3m0 2C7 5 5 7 5 9.5S7 14 9.5 14 14 12 14 9.5 12 5 9.5 5 "/> </ svg >
107
+ </ label >
108
+ < div class ="md-search " data-md-component ="search " role ="dialog ">
109
+ < label class ="md-search__overlay " for ="__search "> </ label >
110
+ < div class ="md-search__inner " role ="search ">
111
+ < form class ="md-search__form " name ="search ">
112
+ < input type ="text " class ="md-search__input " name ="query " aria-label ="Search " placeholder ="Search " autocapitalize ="off " autocorrect ="off " autocomplete ="off " spellcheck ="false " data-md-component ="search-query " required >
113
+ < label class ="md-search__icon md-icon " for ="__search ">
114
+
115
+ < svg xmlns ="http://www.w3.org/2000/svg " viewBox ="0 0 24 24 "> < path d ="M9.5 3A6.5 6.5 0 0 1 16 9.5c0 1.61-.59 3.09-1.56 4.23l.27.27h.79l5 5-1.5 1.5-5-5v-.79l-.27-.27A6.52 6.52 0 0 1 9.5 16 6.5 6.5 0 0 1 3 9.5 6.5 6.5 0 0 1 9.5 3m0 2C7 5 5 7 5 9.5S7 14 9.5 14 14 12 14 9.5 12 5 9.5 5 "/> </ svg >
116
+
117
+ < svg xmlns ="http://www.w3.org/2000/svg " viewBox ="0 0 24 24 "> < path d ="M20 11v2H8l5.5 5.5-1.42 1.42L4.16 12l7.92-7.92L13.5 5.5 8 11z "/> </ svg >
118
+ </ label >
119
+ < nav class ="md-search__options " aria-label ="Search ">
120
+
121
+ < button type ="reset " class ="md-search__icon md-icon " title ="Clear " aria-label ="Clear " tabindex ="-1 ">
122
+
123
+ < svg xmlns ="http://www.w3.org/2000/svg " viewBox ="0 0 24 24 "> < path d ="M19 6.41 17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z "/> </ svg >
124
+ </ button >
125
+ </ nav >
126
+
127
+ </ form >
128
+ < div class ="md-search__output ">
129
+ < div class ="md-search__scrollwrap " tabindex ="0 " data-md-scrollfix >
130
+ < div class ="md-search-result " data-md-component ="search-result ">
131
+ < div class ="md-search-result__meta ">
132
+ Initializing search
133
+ </ div >
134
+ < ol class ="md-search-result__list " role ="presentation "> </ ol >
135
+ </ div >
136
+ </ div >
137
+ </ div >
138
+ </ div >
139
+ </ div >
140
+
141
+
142
+ </ nav >
143
+
144
+ </ header >
145
+
146
+ < div class ="md-container " data-md-component ="container ">
147
+
148
+
149
+
150
+
151
+
152
+
153
+ < main class ="md-main " data-md-component ="main ">
154
+ < div class ="md-main__inner md-grid ">
155
+
156
+
157
+
158
+ < div class ="md-sidebar md-sidebar--primary " data-md-component ="sidebar " data-md-type ="navigation " >
159
+ < div class ="md-sidebar__scrollwrap ">
160
+ < div class ="md-sidebar__inner ">
161
+
162
+
163
+
164
+
165
+ < nav class ="md-nav md-nav--primary " aria-label ="Navigation " data-md-level ="0 ">
166
+ < label class ="md-nav__title " for ="__drawer ">
167
+ < a href ="/. " title ="spec2repo " class ="md-nav__button md-logo " aria-label ="spec2repo " data-md-component ="logo ">
168
+
169
+
170
+ < svg xmlns ="http://www.w3.org/2000/svg " viewBox ="0 0 24 24 "> < path d ="M12 8a3 3 0 0 0 3-3 3 3 0 0 0-3-3 3 3 0 0 0-3 3 3 3 0 0 0 3 3m0 3.54C9.64 9.35 6.5 8 3 8v11c3.5 0 6.64 1.35 9 3.54 2.36-2.19 5.5-3.54 9-3.54V8c-3.5 0-6.64 1.35-9 3.54 "/> </ svg >
171
+
172
+ </ a >
173
+ spec2repo
174
+ </ label >
175
+
176
+ < ul class ="md-nav__list " data-md-scrollfix >
177
+
178
+
179
+
180
+
181
+
182
+
183
+
184
+ < li class ="md-nav__item ">
185
+ < a href ="/. " class ="md-nav__link ">
186
+
187
+
188
+ < span class ="md-ellipsis ">
189
+ Home
190
+ </ span >
191
+
192
+
193
+ </ a >
194
+ </ li >
195
+
196
+
197
+
198
+
199
+
200
+
201
+
202
+
203
+
204
+ < li class ="md-nav__item ">
205
+ < a href ="/setup/ " class ="md-nav__link ">
206
+
207
+
208
+ < span class ="md-ellipsis ">
209
+ Setup
210
+ </ span >
211
+
212
+
213
+ </ a >
214
+ </ li >
215
+
216
+
217
+
218
+
219
+
220
+
221
+
222
+
223
+
224
+ < li class ="md-nav__item ">
225
+ < a href ="/repos/ " class ="md-nav__link ">
226
+
227
+
228
+ < span class ="md-ellipsis ">
229
+ Extending
230
+ </ span >
231
+
232
+
233
+ </ a >
234
+ </ li >
235
+
236
+
237
+
238
+
239
+
240
+
241
+
242
+
243
+
244
+ < li class ="md-nav__item ">
245
+ < a href ="/about/ " class ="md-nav__link ">
246
+
247
+
248
+ < span class ="md-ellipsis ">
249
+ About
250
+ </ span >
251
+
252
+
253
+ </ a >
254
+ </ li >
255
+
256
+
257
+
258
+ </ ul >
259
+ </ nav >
260
+ </ div >
261
+ </ div >
262
+ </ div >
263
+
264
+
265
+
266
+ < div class ="md-sidebar md-sidebar--secondary " data-md-component ="sidebar " data-md-type ="toc " >
267
+ < div class ="md-sidebar__scrollwrap ">
268
+ < div class ="md-sidebar__inner ">
269
+
270
+
271
+ < nav class ="md-nav md-nav--secondary " aria-label ="Table of contents ">
272
+
273
+
274
+
275
+
276
+ </ nav >
277
+ </ div >
278
+ </ div >
279
+ </ div >
280
+
281
+
282
+
283
+ < div class ="md-content " data-md-component ="content ">
284
+ < article class ="md-content__inner md-typeset ">
285
+
286
+ < h1 > 404 - Not found</ h1 >
287
+
288
+ </ article >
289
+ </ div >
290
+
291
+
292
+ < script > var target = document . getElementById ( location . hash . slice ( 1 ) ) ; target && target . name && ( target . checked = target . name . startsWith ( "__tabbed_" ) ) </ script >
293
+ </ div >
294
+
295
+ </ main >
296
+
297
+ < footer class ="md-footer ">
298
+
299
+ < div class ="md-footer-meta md-typeset ">
300
+ < div class ="md-footer-meta__inner md-grid ">
301
+ < div class ="md-copyright ">
302
+
303
+
304
+ Made with
305
+ < a href ="https://squidfunk.github.io/mkdocs-material/ " target ="_blank " rel ="noopener ">
306
+ Material for MkDocs
307
+ </ a >
308
+
309
+ </ div >
310
+
311
+ </ div >
312
+ </ div >
313
+ </ footer >
314
+
315
+ </ div >
316
+ < div class ="md-dialog " data-md-component ="dialog ">
317
+ < div class ="md-dialog__inner md-typeset "> </ div >
318
+ </ div >
319
+
320
+
321
+ < script id ="__config " type ="application/json "> { "base" : "/" , "features" : [ ] , "search" : "/assets/javascripts/workers/search.07f07601.min.js" , "translations" : { "clipboard.copied" : "Copied to clipboard" , "clipboard.copy" : "Copy to clipboard" , "search.result.more.one" : "1 more on this page" , "search.result.more.other" : "# more on this page" , "search.result.none" : "No matching documents" , "search.result.one" : "1 matching document" , "search.result.other" : "# matching documents" , "search.result.placeholder" : "Type to start searching" , "search.result.term.missing" : "Missing" , "select.version" : "Select version" } } </ script >
322
+
323
+
324
+ < script src ="/assets/javascripts/bundle.56dfad97.min.js "> </ script >
325
+
326
+
327
+ </ body >
328
+ </ html >
0 commit comments