git ssb

0+

cel / libreplanet-2020-ssb-session



Tree: 4423399e7e3c4a76a41f1df1d56896ed38cd38f1

Files: 4423399e7e3c4a76a41f1df1d56896ed38cd38f1 / slides.ps

14527 bytesRaw
1%!
2% vi: et ts=2 sts=2 sw=2
3<< /PageSize [1280 720] >> setpagedevice
4
5/lineheight 20 def
6/lineheight_ratio 1.2 def
7/tab 72 def
8
9/selectfont2 { dup lineheight_ratio mul /lineheight exch def selectfont } bind def
10/h0 { /LiberationSerif-Bold 60 selectfont2 } bind def
11/h1 { /LiberationSerif-Bold 45 selectfont2 } bind def
12/h2 { /LiberationSerif-Bold 34 selectfont2 } bind def
13/h3 { /LiberationSerif-Bold 28 selectfont2 } bind def
14/body0 { /LiberationSerif 27 selectfont2 } bind def
15/bold0 { /LiberationSerif-Bold 27 selectfont2 } bind def
16/body { /LiberationSerif 32 selectfont2 } bind def
17/body1 { /LiberationSerif 48 selectfont2 } bind def
18/bold { /LiberationSerif-Bold 32 selectfont2 } bind def
19/italic { /LiberationSerif-Italic 27 selectfont2 } bind def
20/code { /LiberationMono 27 selectfont2 } bind def
21/ref { /LiberationMono 13 selectfont2 } bind def
22/centershow { dup stringwidth pop /w exch def w neg 2 div 0 rmoveto show } bind def
23/hmoveto { /h exch def h currentpoint exch pop moveto } bind def
24/vmoveto { /v exch def currentpoint pop v moveto } bind def
25/cr { tab hmoveto } bind def
26/lf { 0 lineheight neg rmoveto } bind def
27/lf0 { 0 lineheight 0.5 mul neg rmoveto } bind def
28/lf2 { 0 lineheight 1.5 mul neg rmoveto } bind def
29/scl { show cr lf } bind def
30/cscl { centershow cr lf } bind def
31/indent { /tab exch def tab hmoveto } bind def
32/indent_here { currentpoint pop indent } bind def
33/imoveto { moveto indent_here } bind def
34
35/top_center { 640 660 imoveto } bind def
36
37% width height scale file DrawImage
38/DrawImage {
39 /the_file exch def
40 /z exch def
41 /h exch def
42 /w exch def
43 gsave
44 0 lineheight 0.75 mul rmoveto
45 currentpoint translate
46 z z scale
47 w h scale
48 0 -1 translate
49 w h 8
50 [w 0 0 h neg 0 h]
51 the_file false 3 colorimage
52 grestore
53 0 h z mul lineheight 0.75 mul sub neg rmoveto
54} bind def
55
56/DrawRgb { (r) file DrawImage } bind def
57/DrawJpeg { (r) file /DCTDecode filter DrawImage } bind def
58
59/DrawEps {
60 /filename exch def
61 /z exch def
62 save
63 currentpoint translate
64 z z scale
65 /showpage { } def
66 filename run
67 restore
68} bind def
69
70/split {
71 /str exch def
72 /num_words 0 def
73 {
74 str search { % post match pre
75 2 -1 roll % post pre match
76 3 -1 roll % pre match post
77 /num_words num_words 2 add def
78 } {
79 /num_words num_words 1 add def
80 exit
81 } ifelse
82 } loop
83 num_words packedarray
84} bind def
85
86/newline (
87) def
88
89/show_lines {
90 /str exch def
91 str newline split {
92 dup newline ne {
93 scl
94 } if
95 } forall
96} bind def
97
98640 558 imoveto
99
100h0 (Secure Scuttlebutt) cscl
101h1 (Peer-to-peer Collaboration and Community Infrastructure) cscl
102lf2
103
104h2
105gsave
106-440 0 rmoveto
107184 184 0.80 (lp2020.rgb) DrawRgb
108grestore
109gsave
110300 -110 rmoveto
1110.85 (hermies-rainbow.eps) DrawEps
112grestore
113(March 15, 2020) cscl
114(LibrePlanet) cscl
115(Boston, MA) cscl
116lf2
117
118h2 (Charles E. Lehner) cscl
119code
120%(cel@celehner.com) cscl
121(@f/6sQ6d2CMxRUhLpspgGIulDxDCwYD7DzFzPNr7u5AU=.ed25519) cscl
122
123showpage
124
125
126top_center h1 (Me) cscl
127body
128200 500 imoveto
129256 256 1 (cel.jpg) DrawJpeg
130
131638 480 imoveto
132(@cel) h2 scl
133body
134lf
135(Developer) scl
136(git-ssb, patchfoo, sbotc) scl
137lf
138(Using SSB since 2014) scl
139lf
140
141showpage
142
143
144top_center h1 (SSB) cscl
145body1
146420 500 imoveto
147(� p2p, f2f, e2e) scl
148(� gossip protocol) scl
149(� social network) scl
150(� application platform) scl
151
15250 120 imoveto
1530.6 (gossip.eps) DrawEps
154-20 30 rmoveto
155ref lf2 (%xRPUKpUVLyyMJw/obpJXGyl8D3N3VJKE4d6BObXFGDk=.sha256) show
156
157860 120 imoveto
1580.6 (ebt.eps) DrawEps
159-20 30 rmoveto
160ref lf2 (%ipyEyC3oODPTf2X/GyCzU7vgPB/Ut5uay4MtT5w3X9U=.sha256) show
161
162showpage
163
164
165% Technical Intro
166top_center h1 (Cypherlinks) cscl
167
168body
16972 550 imoveto
170
171h1 (Message) scl
172code (%Oys+Dg6P0h8LvykiMTQW5L43iwuJpuvOIiVW5RZs9Cw=.sha256) scl
173lf
174lf
175
176h1 (Blob) scl
177code (&C93joUl4xSFH3cVJM6ZZQdAr+WXIiDLIyUQDZ//y4qw=.sha256) scl
178lf
179lf
180
181h1 (Feed) scl
182body
183code (@f/6sQ6d2CMxRUhLpspgGIulDxDCwYD7DzFzPNr7u5AU=.ed25519) scl
184lf
185lf
186
187showpage
188
189
190top_center h1 (Message) cscl
191
19236 indent
193gsave
1942.0 dup scale
195ref (
196{
197 "key": "%8XKAub/+keTbOXU+eS1/r2+wDMfk0369fLJ57Re9Ku0=.sha256",
198 "value": {
199 "previous": "%0tpLhWn8nC1iA+thcZnVYt5Nm6OtUvkFXMuHdB9roS4=.sha256",
200 "author": "@C3iYh/12sO1uvKq1KcZXLFxSySzxOkHxXN8rtNB5MGA=.ed25519",
201 "sequence": 1359,
202 "timestamp": 1506213306259,
203 "hash": "sha256",
204 "content": {
205 "type": "post",
206 "text": "hello world"
207 },
208 "signature": "Nz4WOuOMpXU2xXUgW+cGTLCiU1BCYiHQFWvyUnppq+YmwV1TZM
2095+FM12SAclA2BFgRdHyG6Y9lDCXHJdMFiMAw==.sig.ed25519"
210 }
211}) show_lines
212grestore
213
214showpage
215
216
217% Peers and pubs
218% Network structure
219top_center h1 (Pubs) cscl
220
221100 530 imoveto
222960 640 0.60 (robot-bartender.jpg) DrawJpeg
223ref lf2 (%7Puw6nBVX0uaL/Q7C6jv4sJiv2xcVv465JoyQseLPcs=.sha256) show
224
225760 520 imoveto
226512 512 0.60 (pub-cel.jpg) DrawJpeg
227-20 0 rmoveto
228ref lf2 (%AsywVupvKB2HcnGX7OMsuo7G32uq+sEM0+qGzJ3YZ9w=.sha256) show
229
230showpage
231
232top_center h1 (Herm[i]es) cscl
233
234480 300 imoveto
2350.3 (hermies.eps) DrawEps
2360 30 rmoveto
237ref lf2 (%6Ykl7b5uYr429NTJEvtPYQijCvyA5nK/EZh55mj5574=.sha256) show
238
239239 210 imoveto
240250 200 0.9 (hermies-gift.rgb) DrawRgb
241-30 0 rmoveto
242ref lf2 (%muLMFIRjAuMiOs7gKGQrisWF9QEX7PjHJR7HrwmNbac=.sha256) show
243
244739 230 imoveto
245900 663 0.30 (hermies-drawing.jpg) DrawJpeg
246ref lf2 (%PeCILG55OGNA/6V6dnWoIX6v8KdRHVqyPBgYT9neU6g=.sha256) show
247
24870 500 imoveto
249389 400 0.60 (bwcrab.rgb) DrawRgb
250ref lf2 (%lmP6wJqkUFbeke8b0FJ8DCcFln7rWJaaoms/gN3FzAA=.sha256) show
251
252showpage
253
254
255top_center h1 (Patchwork) cscl
256
257115 610 imoveto
258h2 (Public Feed) scl
259900 962 0.58 (patchwork-feed.jpg) DrawJpeg
260ref lf2 (%n/hAHVDJevZ92Nteu0CKlx9YKDDxqejPsPB/jw49llc=.sha256) show
261
262720 610 imoveto
263h2 (Profile) scl
264900 1005 0.555 (patchwork-joey-profile.jpg) DrawJpeg
265ref lf2 (%xZ8vcTR67JCFtYOYsnSgsWIKfAnJarg8aMMY5ELjTrA=.sha256) show
266
267showpage
268
269
270top_center h1 (Patchwork) cscl
271
272115 610 imoveto
273h2 (Tags) scl
274937 1080 0.5 (patchwork-tags.jpg) DrawJpeg
275ref lf2 (%+1kBGWr4TMZkKvXCn7VboGkv6G23c32Kun2xl9m3Qjk=.sha256) show
276cr lf2 (%0rpoHSyVRIkY9lSXkjF+B68x+d8RNyVJy/ErvAF82T8=.sha256) show
277
278720 610 imoveto
279h2 (Thread) scl
280803 1035 0.52 (patchwork-thread.jpg) DrawJpeg
281ref lf2 (%wcR3H38WfELYOFRno/PpKBqgo90Gk273ya+mRM4kDxQ=.sha256) show
282cr lf2 (%lCX+OgVrPgs44b6meFz3kE54r4CW19y0oiU6rrV6GQU=.sha256) show
283
284showpage
285
286
287top_center h1 (Patchwork - Gatherings) cscl
288295 600 imoveto
2891028 876 0.68 (patchwork-gathering.jpg) DrawJpeg
290ref lf2 (%EQXXQhhDdVNDvj5R9klck6/V8kYz65NiaQld4RBd/uY=.sha256) show
291
292showpage
293
294
295false {
296top_center h1 (Moderation) cscl
297% blocking, following, private blocking
298
299showpage
300} if
301
302
303top_center h1 (Patchbay) cscl
304
305330 590 imoveto
306h2 (Thread) scl
3071028 795 0.6 (patchbay-thread.jpg) DrawJpeg
308ref lf2 (%RP5p5qBqjsW/5Rl68xGIcn58X3MiyinsqsbLTHWbnM4=.sha256) show
309
310showpage
311
312
313top_center h1 (Patchbay apps) cscl
314% chess, books, image search, query, scry
31520 610 imoveto
316h2 (Polls) scl
3171028 795 0.69 (patchbay-scry.jpg) DrawJpeg
318ref lf2 (%FMqOZqJIdj3VD59nMw+acmZFvQ/OSXaWr+cfdIH6F9s=.sha256) show
319
320770 610 imoveto
321h2 (Books) scl
322gsave
3230.57 dup scale
324currentpoint translate
3250 20 imoveto
326820 1009 1 (books.jpg) DrawJpeg
327ref
328348 711 rmoveto indent_here
329(%Aze1pn6qC6VMMTSdSXwVr94qjRhtf3usLlmN7u1Y30U=.sha256) scl
3300 -285 rmoveto
331(%ZdU8zCk6sQm4Z8oMg3tmcNZxzV/+N+RbE/+zRZGn4Nw=.sha256) scl
3320 -268 rmoveto
333(%Ct+wss64+fcTRMSRsPZU+/efgWsvmQ+QqXVaWKHtkaU=.sha256) scl
3340 -270 rmoveto
335(%H50O+eJxQLmyDEdBJTAx08hRnyYIZBpxGcXeGNRQh4k=.sha256) scl
336grestore
337
338showpage
339
340top_center h1 (Patchbay apps 2) cscl
341
342130 625 imoveto
343h2 (Chess) scl
3441280 720 0.8 (patchbay-chess.jpg) DrawJpeg
345ref lf2 (%jyn3lc2F6ICLxFbYbvrfsdKp1fDQWyiZDdiz5gYdtI8=.sha256) show
346
347showpage
348
349
350top_center h1 (Patchfox) cscl
351
35230 590 imoveto
3531705 1080 0.5 (patchfox.jpg) DrawJpeg
354ref lf2 (%iAuYhV5rAs+t/+gyWVilPOTSnmnEl9SJdj6bZlSnRRA=.sha256) show
355
356920 590 imoveto
357327 403 0.9 (patchfox-menu.jpg) DrawJpeg
358body
359gsave
3600.7 0.7 scale
361ref lf2 (%vNnZtiCafFum3VGH2cOhbvaeMCXJnVl9HrQhH7WkPto=.sha256) show
362grestore
363
364showpage
365
366
367top_center h1 (patchfoo) cscl
368215 590 imoveto
3691024 600 0.80 (patchfoo.rgb) DrawRgb
370ref lf2 (%O3uj3mNvhbwTNb7Mo/30FNo46pYKakNvc3G0Y0DYif8=.sha256) show
371
372showpage
373
374
375top_center h1 (Oasis) cscl
376220 590 imoveto
377977 641 0.9 (oasis.jpg) DrawJpeg
378ref lf2 (%u+Mnq1AFB2w7BV3F27jfi2EcZiyPc7YCnK1mEf+9Z9U=.sha256) show
379
380showpage
381
382
383top_center h1 (Manyverse) cscl
384
385currentgray
3860.3 setgray
38773 48 334 587 rectfill
388873 48 334 587 rectfill
389setgray
390
391body
39278 600 imoveto
393720 1280 0.45 (manyverse-connections.jpg) DrawJpeg
394ref lf2
395gsave
3960.9 dup scale
397-20 0 rmoveto
398(%P7B6o2keZ3UNVWqohSzTzGWzkt7Xum0cehoe6GpkZXQ=.sha256) show
399grestore
400body
401
402488 610 imoveto
403500 1000 0.6 (manyverse-ios.jpg) DrawJpeg
404gsave
4050.9 dup scale
406-35 0 rmoveto
407ref lf2 (%yNkrJtnHyR4LcgzYvJ3nYdvQ1U3i2SlVxzbs7vOH5WU=.sha256) show
408grestore
409body
410
411878 600 imoveto
412720 1280 0.45 (manyverse-thread.jpg) DrawJpeg
413
414showpage
415
416
417top_center h1 (Planetary) cscl
418
419currentgray
4200.3 setgray
42148 78 296 524 rectfill
422setgray
423
42450 560 imoveto
425750 1334 0.39 (planetary-menu.jpg) DrawJpeg
426ref lf2 (%I/I5GcW48qtCYCdF8tViB2kT3DXzvGBISh8mAdaDRFY=.sha256) show
427
428465 630 imoveto
429724 1280 0.48 (planetary-post.jpg) DrawJpeg
430
431880 630 imoveto
432724 1280 0.48 (planetary-channels.jpg) DrawJpeg
433
434640 25 imoveto
435ref (%SD3WszbEsswbRHhj6cCffcKD2ZhwF6iJ/OCKwQmLGOY=.sha256) show
436
437showpage
438
439
440top_center h1 (git-ssb) cscl
441200 590 imoveto
4421280 800 0.70 (git-ssb-web.jpg) DrawJpeg
443ref lf2 (%dY2VrwvI5vO9Dqf1UR3Ev4zZdXJU0/XwRFwt92Y29v4=.sha256) show
444
445showpage
446
447
448false {
449top_center h1 (More apps) cscl
450% go, ssb-npm, ssb-viewer, scuttleshell, ticktack, tale:net, scat, ngx-ssb-client, oasis, yap, patchless, mvd
451
452showpage
453} if
454
455
456top_center h1 (Other implementations) cscl
457body
458gsave
4591.5 dup scale
460200 300 imoveto
461
462(Full: Node.js, Go, Rust) scl
463lf
464
465(Partial: C, Python, Java, Swift, Erlang) scl
466lf
467
468(Crypto: C (libsodium)) scl
469
470grestore
471showpage
472
473
474false {
475top_center h1 (Funding) cscl
476% dfinity grant / ssbc grants
477
478showpage
479} if
480
481
482top_center h1 (Funding) cscl
483% Handshake grant / council / budget
484130 0 imoveto
485currentgray 0.8 setgray
486currentpoint 20 add 488 610 rectstroke
487setgray
4880.80 (hc-budget.eps) DrawEps
489body
490lf
491%(Handshake Council Budget, 2019-04-03) show cr
492%ref lf2 (%zmv8Fvm3a7qnAVBs2O7se5JlJXqsrqjBZwB88/Bv8DQ=.sha256) show
493% Planetary
494
495showpage
496
497
498%top_center h1 (Open Collectives) cscl
499%
500%showpage
501
502
503top_center h1 (Scuttlecamp) cscl
504230 590 imoveto
5051080 722 0.75 (scuttlecamp1.jpg) DrawJpeg
506ref lf2 (%hLhNMksptjCxNi+B77DHrYEu26jDTrqgGsfb1+NvuWA=.sha256) show
507
508showpage
509
510
511top_center h1 (Diversity and Inclusion) cscl
512
51355 16 imoveto
514gsave
5150.78 dup scale
5161 (inspo.eps) DrawEps
517currentgray 0.8 setgray
5180 792 rlineto
519612 0 rlineto
5200 -792 rlineto
521currentpoint
522stroke
523moveto
524-612 0 rlineto
525[4] 0 setdash
526stroke
527grestore
528
529580 110 imoveto
530gsave
5310.78 dup scale
5321 (inclusion.eps) DrawEps
533currentgray 0.8 setgray
534currentpoint 15 add 840 575 rectstroke
535grestore
536
537showpage
538
539
540top_center h1 (Principles stack) cscl
541
542200 550 imoveto
5431309 637 0.70 (principles.rgb) DrawRgb
544body
545ref lf2 (%NwS0OAEqJDfbioRdwmY/IQwCdMBm6RmzhZJR682DATA=.sha256) show
546
547showpage
548
549
550false {
551top_center h1 (Culture) cscl
552% technical influences: immutability, sharing
553
554showpage
555} if
556
557
55810 660 imoveto
5591600 656 0.5 (accessories.jpg) DrawJpeg
5600 10 rmoveto
561ref lf2 (%0h9biRh7teJlwtWD6gFkzSBv8fZlXj9Qr3HrbHPkgwU=.sha256) show
562
563top_center
5640 20 rmoveto
565h1 (Solarpunk) cscl
566
567780 600 imoveto
5681200 684 0.40 (urban-garden.jpg) DrawJpeg
569ref lf2 (%uKy6Lo0gTFRIt/pMXowWHU7ZbioE04kQgJ/K3I4WTPc=.sha256) show
570
57120 300 imoveto
572800 600 0.45 (mushroom-foraging.jpg) DrawJpeg
573ref lf2 (%mUnUnlqp8gftsmw8oTuc7CezL/BwkoxPn6ucx3y5kSI=.sha256) show
574
575440 280 imoveto
5761200 742 0.30 (solarpunk-flag.jpg) DrawJpeg
577ref lf2 (%oKr5NKriL3WEoEGO+fnXnkJoFwg4JPV6Hmvun86Swx8=.sha256) show
578
579860 300 imoveto
580600 450 0.60 (solar-shack.jpg) DrawJpeg
581ref lf2 (%SaFh1Tea8Mqh02NRFQxoKKjWhnFAzb8JaJm0ss52Nj4=.sha256) show
582
583showpage
584
585
586top_center h1 (Boats) cscl
587body
588% Cleo
589% Alchemist
590
59160 600 imoveto
592900 501 0.60 (boat.jpg) DrawJpeg
593ref lf2 (%on6hMTGlQZ5zW+UqawDcdNmYHdReFS8GuEXvmozL64M=.sha256) show
594
595660 600 imoveto
596900 671 0.50 (boat-alchemist.jpg) DrawJpeg
597body
598lf (Alchemist) show cr
599ref lf2 (%FdmACu6aDF4SbbVuh8B1xDSusVoUCrri1YU+KkttrAk=.sha256) show
600
601showpage
602
603top_center h1 (Crab meet) cscl
604
605780 640 imoveto
606810 1080 0.58 (basel.jpg) DrawJpeg
607ref lf2 (%LhJZpvqMaaORd7E1S3azBPtJBSJRSFdoeXQfVSixJmA=.sha256) show
608
60960 350 imoveto
610900 675 0.45 (boat-crabmeet.jpg) DrawJpeg
611ref lf2 (%CsF9pDgrxzeU5oDZRQ+GmtKBVk85wDiLPcq0keLA42I=.sha256) show
612
61360 670 imoveto
614900 540 0.45 (dweb1.jpg) DrawJpeg
615ref lf2 (%sV6uNHQeYiMh+GHjMCQCCFP9pigTRTq6WXpFsNKsEQw=.sha256) show
616
617530 600 imoveto
618600 800 0.30 (crabmeet-naarm.jpg) DrawJpeg
619gsave
6200.5 dup scale
621ref lf2 (%TaKmeNL5ympWXpsyudJ1QqrXLg3ycD2GN7LIN/9QR7E=.sha256) show
622grestore
623
624505 300 imoveto
625600 800 0.40 (mozfest.jpg) DrawJpeg
6260 60 rmoveto
627gsave
6280.6 dup scale
629ref lf2 (%6zsNFEriZ3ckKi7WpaoM71esgRj+mZmUVbYH3OVVbpg=.sha256) show
630grestore
631
632showpage
633
634
635top_center h1 (#showmeyourcoffee) cscl
636
63772 580 imoveto
6381280 960 0.42 (coffee.jpg) DrawJpeg
639ref lf2 (%7411jvQ9GqJyL2So3C5M10d61WGSSDsdyoex+0aUQ+8=.sha256) show
640
641672 580 imoveto
642675 900 0.45 (coffee-library.jpg) DrawJpeg
643ref lf2 (%3dkhZpXrnlKfE/sJb/A+NYBiKhUZCGnvcgbYpVWzE6k=.sha256) show
644
645showpage
646
647
648400 660 imoveto
649h1 (Network graphs) cscl
650100 600 imoveto
651900 900 0.67 (gephi-modularity.jpg) DrawJpeg
652ref lf2 (%utUlBefFYqHWcFQaz4r5bZUil9YtYyTik1j6d7ymVyE=.sha256) show
653
654760 690 imoveto
655750 727 0.46 (gephi-sun.jpg) DrawJpeg
656ref lf2 (%Qy84JD3wGrXSC3/nfar9DAzWPP4aku6CIcOSr6/CC/E=.sha256) show
657
658760 310 imoveto
659750 563 0.50 (gephi-mix50.jpg) DrawJpeg
660ref lf2 (%ZCODq83xRs+sbU8YXxZ1MPlFP1u9i2wyIYAu6GCTqNo=.sha256) show
661
662showpage
663
664top_center h1 (Network activity graph) cscl
66560 510 imoveto
6661280 370 0.90 (daily-activity.jpg) DrawJpeg
667body lf (2015-08-05 - 2020-03-05) show cr
668ref lf2 (https://ssb.celehner.com/activity/) show
669showpage
670
671
67290 16 imoveto
6730.86 (ccr19.eps) DrawEps
67462 24 rmoveto
675ref lf2 (%aclRXl3q1cnoOyfVuDRaTAKPESv4J6QLDE4B5M2vDaM=.sha256) show
676
677670 16 imoveto
6780.86 (icn19.eps) DrawEps
67962 24 rmoveto
680ref lf2 (%ky3+/h0MFsevtRpCBYHAq7l7N7JF2FgI21Sw0BSt9Gc=.sha256) show
681
682top_center h1 (Published research) cscl
683
684showpage
685
686
687false {
688top_center h1 (Protocol) cscl
689% https://ssbc.github.io/scuttlebutt-protocol-guide/
690
691showpage
692} if
693
694
695false {
696top_center h1 (Future) cscl
697% private groups
698
699showpage
700} if
701
702
703false {
704top_center h1 (Links and further resources) cscl
705% http://scuttlebutt.nz
706% http://scuttlebot.io
707% https://ssbc.github.io/scuttlebot/
708% https://modules.scuttlebutt.nz/
709
710showpage
711} if
712
713
714top_center
7150 -300 rmoveto
716h1 (https://scuttlebutt.nz/) cscl
717
718showpage
719
720
721false {
722top_center h1 (Bonus material) cscl
723
724showpage
725} if
726

Built with git-ssb-web