Added all the files for lulu.com + A5 booklet
[littlebook.git] / lb-phone.tex
1 % -*- mode: latex; mode: reftex; mode: auto-fill; mode: flyspell; coding: utf-8; tex-command: "pdflatex.sh" -*-
2
3 \documentclass[oneside,11pt]{memoir}
4
5 \usepackage{ifthen}
6 \usepackage{caption}
7 \usepackage{adjustbox}
8 \usepackage{calc}
9 \newlength{\captionheight}
10
11 \let\ordinal\relax
12 \usepackage[us]{datetime}
13 \newdateformat{dotdate}{\THEYEAR.\twodigit{\THEMONTH}.\twodigit{\THEDAY}}
14
15 \def\highquality{}
16 \def\breakforlittle{\\}
17
18 \usepackage{imakeidx}
19 \makeindex[columns=1]
20
21 \usepackage{enumitem}
22 \setlist[itemize]{leftmargin=0pt,itemindent=1em,itemsep=2ex}
23 \setlist{nosep} % or \setlist{noitemsep} to leave space around whole list
24
25 \usepackage[utf8]{inputenc}
26 \usepackage[T1]{fontenc}
27 \usepackage[osf]{libertine}
28 \usepackage{microtype}
29
30 \usepackage[
31   linktocpage=true,
32   unicode=true,
33   bookmarks=true,
34   bookmarksnumbered=false,
35   bookmarksopen=false,
36   breaklinks=true,
37   pdfborder={0 0 1},
38   backref=page,
39   colorlinks=true,
40   linkcolor=links,
41   urlcolor=links,
42   citecolor=links,
43   hypertexnames=false, % to avoid errors with autonum
44 ]{hyperref} % PDF meta-information specification
45
46 %\usepackage{cleveref}
47 \usepackage{autonum}
48
49 \urlstyle{same}
50
51
52 \usepackage{mdframed}
53 \usepackage{lipsum}% just to generate text for the example
54
55 \newmdenv[
56   topline=false,
57   bottomline=false,
58   innertopmargin=0pt,
59   innerbottommargin=0pt,
60   innerleftmargin=4pt,
61   innerrightmargin=4pt,
62   leftmargin=0pt,
63   rightmargin=0pt,
64   skipabove=0pt,
65   skipbelow=0pt,
66 ]{siderules}
67
68 %% \usepackage[object=vectorian]{pgfornament}
69 %% \def\textsep{%
70 %% \vskip1.5ex
71
72 %% \centerline{\pgfornament[anchor=center,ydelta=0pt,width=2cm]{82}}
73
74 %% \vskip0.5ex
75 %% }
76
77 \AddToHook{cmd/section/before}{\clearpage}
78 \usepackage[section]{placeins}
79
80 \usepackage{xspace}
81 \def\wordfig{Figure\xspace}
82 \def\wordeq{Equation\xspace}
83 \def\wordtable{Table\xspace}
84 \def\wordchap{Chapter\xspace}
85
86 \let\oldcenter\center
87 \let\oldendcenter\endcenter
88 \renewenvironment{center}{\setlength\topsep{0pt}\oldcenter}{\oldendcenter}
89
90 \usepackage{environ}
91 \NewEnviron{hardcenter}{\makebox[\textwidth][c]{\BODY}}
92
93 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
94 % Math
95 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
96
97 \usepackage{amsmath}
98 \usepackage{amssymb}
99 \usepackage{dsfont}
100 \usepackage{mleftright}
101
102 \newcommand{\setmuskip}[2]{#1=#2\relax}
103 \setmuskip{\thinmuskip}{1.5mu} % by default it is equal to 3 mu
104 \setmuskip{\medmuskip}{2mu} % by default it is equal to 4 mu
105 \setmuskip{\thickmuskip}{3.5mu} % by default it is equal to 5 mu
106
107 \makeatletter
108 \DeclareFontEncoding{LS1}{}{}
109 \DeclareFontSubstitution{LS1}{stix}{m}{n}
110 \DeclareMathAlphabet{\mathcal}{LS1}{stixscr}{m}{n}
111 \makeatother
112
113 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
114
115 \newcommand{\eqnumber}{\MakeLinkTarget{equation}\text{(\theequation)}}
116
117 \newcommand{\inputgenerated}[1]{%
118   \IfFileExists{#1}{\input{#1}}{%
119     \errmessage{Cannot find "#1", compile with -shell-escape}\stop}%
120 }
121
122 %\newcommand{\gradient}[2]{{\nabla\!}_{#1 \mid #2}}
123 \newcommand{\gradient}[2]{{\nabla\!#1}_{\mid #2}}
124
125 \def\given{\,\middle\vert\,}
126 \newcommand{\proba}{{P}}
127 \newcommand{\seq}{{S}}
128 \newcommand{\expect}{\mathds{E}}
129 \newcommand{\variance}{\mathds{V}}
130 \newcommand{\empexpect}{\hat{\mathds{E}}}
131 \newcommand{\mutinf}{\mathds{I}}
132 \newcommand{\empmutinf}{\hat{\mathds{I}}}
133 \newcommand{\entropy}{\mathds{H}}
134 \newcommand{\empentropy}{\hat{\mathds{H}}}
135 \newcommand{\ganG}{\mathbf{G}}
136 \newcommand{\ganD}{\mathbf{D}}
137 \newcommand{\ganF}{\mathbf{F}}
138
139 \newcommand{\dkl}{\mathds{D}_{\mathsf{KL}}}
140 \newcommand{\djs}{\mathds{D}_{\mathsf{JS}}}
141
142 \newcommand*{\vertbar}{\rule[-1ex]{0.5pt}{2.5ex}}
143 \newcommand*{\horzbar}{\rule[.5ex]{2.5ex}{0.5pt}}
144
145 \def\positionalencoding{\operatorname{pos-enc}}
146 \def\concat{\operatorname{concat}}
147 \def\crossentropy{\LL_{\operatorname{ce}}}
148
149 \def\embedding{\operatorname{embed}}
150 \def\mha{\operatorname{mha}}
151 \def\layernorm{\operatorname{layernorm}}
152 \def\batchnorm{\operatorname{batchnorm}}
153 \def\fullyconnected{\operatorname{fully-conn}}
154 \def\softargmax{\operatorname{softargmax}}
155 \def\selfattention{\operatorname{self-att}}
156 \def\crossattention{\operatorname{cross-att}}
157 \def\ffw{\operatorname{f{}fw}}
158 \def\attention{\operatorname{att}}
159 \def\relu{\operatorname{relu}}
160 \def\gelu{\operatorname{gelu}}
161 \def\dropout{\operatorname{dropout}}
162 \def\resblock{\operatorname{resblock}}
163 \def\dresblock{\operatorname{dresblock}}
164 \def\reshape{\operatorname{reshape}}
165 \def\convtwod{\operatorname{conv-2d}}
166 \def\maxpool{\operatorname{maxpool}}
167 \def\avgpool{\operatorname{avgpool}}
168 %\def\samax{\Upsilon}
169 %\def\samax{\operatorname{samax}}
170 \def\sigmoid{\operatorname{sigm}}
171 \def\sample{\operatorname{sample}}
172 \def\diag{\operatorname{diag}}
173 \def\sign{\operatorname{sign}}
174 \def\argmax{\operatornamewithlimits{argmax}}
175 \def\argmin{\operatornamewithlimits{argmin}}
176
177 %\usepackage{oldgerm}
178 \usepackage{relsize}
179
180 \usepackage{xfp}
181 \newcommand{\adaptedscale}[1]{#1}
182
183 %\newcommand{\li}[1]{^{\textgoth{#1}}}
184 \newcommand{\li}[1]{^{\scalebox{.5}{\textbf{#1}}}}
185 %% \newcommand{\li}[1]{^{\textbf{#1}}}
186 %\newcommand{\li}[1]{{|#1}}
187 \newcommand{\DATAVAR}{\mathbf{{\cal D}}}
188 \newcommand{\DATAVAL}{\mathbf{d}}
189 \newcommand{\BD}{\mathbf{D}}
190 \newcommand{\LL}{\mathcal{L}}
191 \newcommand{\Ll}{\mathcal{l}}
192 \newcommand{\RR}{\mathbb{R}}
193 \newcommand{\Lh}{\mathcal{h}}
194 \newcommand{\transpose}{^{\top}}
195
196 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
197 % tikz
198 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
199
200 \usepackage{tikz}
201 \usetikzlibrary{arrows,arrows.meta,calc}
202 \usetikzlibrary{patterns,backgrounds}
203 \usetikzlibrary{positioning,fit}
204 \usetikzlibrary{shapes.geometric,shapes.multipart}
205 \usetikzlibrary{patterns.meta,decorations.pathreplacing,calligraphy}
206 \usetikzlibrary{tikzmark}
207 \usetikzlibrary{decorations.pathmorphing}
208
209 % remove the "There is no ... in font nullfont!" errors
210 \AtBeginEnvironment{tikzpicture}{\tracinglostchars=0\relax}
211
212 %% \tikzset{
213 %% }
214
215 \definecolor{operatorcolor}{rgb}{0.95,0.95,1.00}
216 \definecolor{paramcolor}{rgb}{0.8,0.8,1.0}
217
218 \tikzset{
219   axes/.style={
220     samples=1000,
221     %smooth,
222     %scale=0.8,
223   },
224 }
225
226 \newlength{\layergap}
227 \setlength{\layergap}{2pt}
228 \newlength{\layerthickness}
229 \setlength{\layerthickness}{12pt}
230 \newlength{\layerwidth}
231 \setlength{\layerwidth}{4.5em}
232
233 \newlength{\diminfoshift}
234 \setlength{\diminfoshift}{70pt}
235
236 \tikzset{
237   >={Straight Barb[angle'=80,scale=\adaptedscale{1.2}]},
238   deepnet/.style={
239 %%     background rectangle/.style={fill=paper},
240 %%     show background rectangle,
241     %every text node part/.style={align=center},
242     %rounded corners=0.5pt,
243     curly brace/.style={sharp corners,very thick,decoration={calligraphic brace,amplitude=0.20cm},decorate},
244     font=\footnotesize,
245     halo/.style={
246       %%       on layer=background,
247       preaction={
248         draw=white,line width=2pt,-,%shorten <=1pt,shorten >=1pt,
249       },
250     },
251     operator/.style={draw=black!30,fill=operatorcolor,inner sep=1pt},
252     next/.style={above=##1\layergap of \tikzlastnode},
253     next/.default={1},
254     prev/.style={below=##1\layergap of \tikzlastnode},
255     prev/.default={1},
256     var/.style={inner sep=2pt},
257     flow/.style={thick},
258     layer/.style={operator,minimum width=\layerwidth,minimum height=\layerthickness,text depth=1pt,text height=1.3ex},
259     layer small/.style={layer,minimum width=\layerthickness},
260     layer large/.style={layer,minimum height=1.5\layerthickness},
261     layer very large/.style={layer,minimum height=1.75\layerthickness},
262     info line/.style={
263       draw=black,line width=0.4pt,dash pattern=on 0.4pt off 2pt,
264 %%       draw=black!50,line width=0.2pt,-,
265       shorten >=2pt,shorten <=2pt,
266     },
267     block definition/.style={draw=black,inner sep=2\layergap,dash pattern=on 2.5pt off 0.5pt},
268     replicated/.style={
269       draw=black,
270       inner sep=\layergap, dash pattern=on 2.5pt off 0.8pt,
271       label={[%
272           inner sep=2pt,
273           anchor=south west,
274         ]south east:$\times ##1$},
275     },
276     %
277     inputs/.style={
278       text depth=1.5ex,
279       path picture={%
280         \draw[black]
281         ($(path picture bounding box.south west)+(1pt,6pt)$)--($(path picture bounding box.south east)+(-1pt,6pt)$)
282         %
283         node[midway,yshift=-15.5pt] {\scalebox{.5}{##1}};
284       }
285     },
286     %
287     param/.style={%
288 %      draw=paramcolor,
289       fill=paramcolor,
290 %%       preaction={fill=white},
291 %%       pattern color=black!15,
292     },
293     meta param/.style={label={[%
294           inner sep=0pt,
295           text depth=0pt,
296           anchor=south west,
297           shift={(1.5pt,0pt)},
298         ]south east:{\tiny\color{blue}##1}}},
299   }
300 }
301
302 \newcommand{\diminfo}[3]{%
303   \coordinate (t) at ($(#2.north)+(\diminfoshift,0.5\layergap)$);
304   \node[inner sep=0pt,yshift=-0.5pt] (s) at (#1.north east-|t) {\tiny #3};
305   \draw[info line] (#1.north east|-s)--(s);
306 }
307
308 \newcommand{\defop}[2]{%
309 %%   \coordinate (BL) at ($(#1.north)+(-0.49\textwidth, 4\layergap)$);
310 %%   \coordinate (BR) at ($(#1.north)+( 0.49\textwidth, 4\layergap)$);
311 %%   \coordinate (TL) at ($(#2.south-|#1)+(-0.49\textwidth,-4\layergap)$);
312 %%   \coordinate (TR) at ($(#2.south-|#1)+( 0.49\textwidth,-4\layergap)$);
313   \begin{pgfinterruptboundingbox}
314     \node[anchor=south west,inner sep=2pt] (label) at #1 {#2};
315     \draw[decorate,decoration={coil,amplitude=0.5pt,segment length=2pt,aspect=0}] (label.south west) -- (label.south east);
316   \end{pgfinterruptboundingbox}
317 }
318
319 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
320 % style on layer
321
322 \tikzset{%
323   on layer/.code={
324     \pgfonlayer{#1}\begingroup
325     \aftergroup\endpgfonlayer
326     \aftergroup\endgroup
327   }}
328
329 \makeatletter
330 %% fix for bb computation of double wires.
331 %% from https://tex.stackexchange.com/questions/130456/tikz-double-lines-are-shifted
332 \tikzset{
333   only coordinates are relevant/.is choice,
334   only coordinates are relevant/.default=true,
335   only coordinates are relevant/true/.code={%
336     \tikz@addmode{\pgf@relevantforpicturesizefalse}},
337   only coordinates are relevant/false/.code={%
338     \tikz@addmode{\pgf@relevantforpicturesizetrue}}
339 }
340 \makeatother
341
342 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
343
344 \makeatletter
345 % extract interval `start:end` values
346 \def\get@interval@start#1:#2\@nil{#1}
347 \def\get@interval@end#1:#2\@nil{#2}
348 % get domain
349 \def\domainmin{\expandafter\get@interval@start\tikz@plot@domain\@nil}
350 \def\domainmax{\expandafter\get@interval@end\tikz@plot@domain\@nil}
351 % get range
352 \def\rangemin{\expandafter\get@interval@start\tikz@plot@range\@nil}
353 \def\rangemax{\expandafter\get@interval@end\tikz@plot@range\@nil}
354 \makeatother
355
356 \usepackage{pgfplots}
357 \usepgfplotslibrary{patchplots,colormaps}
358 \pgfplotsset{compat = newest}
359
360 \newcommand{\mygrid}[5]{%
361   \pgfmathsetmacro{\xmin}{#1+1}
362   \pgfmathsetmacro{\xmax}{#1+#3-1}
363   \pgfmathsetmacro{\ymin}{#2+1}
364   \pgfmathsetmacro{\ymax}{#2+#4-1}
365   \ifthenelse{\equal{#5}{}}
366   {\draw (#1,#2) rectangle ++(#3,#4);}
367   {\draw[fill=#5] (#1,#2) rectangle ++(#3,#4);}
368   \foreach \x in {\xmin,...,\xmax}{
369     \draw (\x,#2)-- ++(0,#4);
370   }
371   \foreach \y in {\ymin,...,\ymax}{
372     \draw (#1,\y)-- ++(#3,0);
373   }
374 }
375
376 \newcommand{\amatrix}[7]{%
377   \begin{tikzpicture}[scale=\adaptedscale{0.2}]
378     \ifthenelse{\equal{#7}{}}
379                {}
380                {\draw[draw=none,fill=#7] (#3,#4) rectangle ++(#5,#6);}
381                \mygrid{0}{0}{#1}{#2}{}
382   \end{tikzpicture}%
383 }
384
385 \newcommand{\gridcube}[3]{% 7,4,6
386
387   \foreach \b in { 0,...,#2 }{
388     \draw (0,\b,0)--++(#1,0,0)--++(0,0,#3);
389   }
390
391   \foreach \d in { 0,...,#1 }{
392     \draw (\d,0,0)--++(0,#2,0)--++(0,0,#3);
393   }
394
395   \foreach \hw in { 0,...,#3 }{
396     \draw (0,0,\hw)++(#1,0,0)--++(0,#2,0)--++(-#1,0,0);
397   }
398 }
399
400 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
401 % Bibliography
402 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
403
404 \usepackage[square]{natbib}
405 \bibliographystyle{plainnatmodified}
406 \nobibintoc
407 \newcommand{\biburl}[1]{\href{#1}{pdf}}
408
409 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
410 % Layout
411 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
412
413 \setlength{\cftbeforepartskip}{3ex}
414 \setlength{\cftbeforechapterskip}{1.0ex}
415 \setlength{\cftbeforesectionskip}{0.1ex}
416
417 %% \setsecnumdepth{subsection}
418 %% \renewcommand{\thesubsection}{\alph{subsection}\,-\hskip -12pt\,}
419 %% \setsecnumformat{\csname the#1\endcsname :}
420
421 \cftsetindents{part}{0em}{1.8em}
422 \cftsetindents{chapter}{0em}{1.8em}
423 \cftsetindents{section}{1.8em}{2.2em}
424
425 \setlength{\parindent}{0cm}
426 \setlength{\parskip}{2ex}
427
428 \setstocksize{15cm}{8cm}
429 \settrimmedsize{\stockheight}{\stockwidth}{*}
430 \setlrmarginsandblock{8pt}{8pt}{*}
431 \setulmarginsandblock{14pt}{26pt}{*}
432 \setheadfoot{14pt}{14pt}
433 \setheaderspaces{*}{*}{*}
434 %% \setlength{\headsep}{0pt}
435 %% \setlength{\headheight}{0pt}
436
437 %% \newcommand\ignoreme[1]{}
438 %% \setsecheadstyle{\ignoreme}
439
440 %% \makepagestyle{littlebook}
441 %% \makeoddhead{littlebook}{}{}{}
442 %% \makeevenhead{littlebook}{}{}{}
443 \newcommand{\myfooter}{\footnotesize {\thepage}}
444 %\newcommand{\myfooter}{\footnotesize {\thepage \hskip 0.8em \raisebox{-2pt}{\vline height 8pt} \hskip 0.4em \thelastpage}}
445 %% \makeoddfoot{littlebook}{}{\myfooter}{}
446 %% \makeevenfoot{littlebook}{}{\myfooter}{}
447 \makeoddfoot{plain}{}{\myfooter}{}
448 \makeevenfoot{plain}{}{\myfooter}{}
449 \pagestyle{plain}
450
451 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
452
453 \renewcommand{\partnamefont}{\centering\sffamily\scshape\Huge}
454 \renewcommand{\partnumfont}{\sffamily\Huge}
455 \renewcommand{\parttitlefont}{\centering\sffamily\scshape\Huge}
456 \renewcommand{\beforepartskip}{\vspace*{\stretch{3}}}
457 \renewcommand{\afterpartskip}{%
458 \vspace*{\stretch{4}}
459 \newpage%
460 }
461
462 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
463
464 \makechapterstyle{Tufte}{
465 \renewcommand{\chapterheadstart}{\null \vskip1.5\onelineskip}
466 \renewcommand{\printchaptername}{\large\sffamily\itshape\chaptername}
467 \renewcommand{\printchapternum}{\LARGE\thechapter \\}
468 \renewcommand{\afterchapternum}{}
469 \renewcommand{\printchaptertitle}[1]{
470 \raggedright
471 \itshape\Huge{##1}}
472 \renewcommand{\afterchaptertitle}{
473 \vskip3\onelineskip
474 }}
475 \chapterstyle{Tufte}
476
477 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
478
479 \setsecheadstyle{\sethangfrom{\noindent ##1}\raggedright\sffamily\itshape\Large}
480 \setbeforesecskip{-.9\onelineskip}
481 \setaftersecskip{.75\onelineskip}
482
483 \setsubsecheadstyle{\sethangfrom{\noindent  ##1}\raggedright\sffamily\itshape\large}
484 \setbeforesubsecskip{\onelineskip}
485 \setaftersubsecskip{.65\onelineskip}
486
487 \setsubsubsecheadstyle{\sethangfrom{\noindent ##1}\raggedright\sffamily\itshape}
488 \setbeforesubsubsecskip{-.5\onelineskip}
489 \setaftersubsubsecskip{.1\onelineskip}
490
491 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
492
493 \captiontitlefont{\itshape\small}
494 \captionnamefont{\small}
495 \newcommand{\likecaption}{\color{black}\itshape\small}
496
497 \midsloppy
498
499 \checkandfixthelayout
500
501 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
502 % The \todo command
503 \newcounter{nbdrafts}
504 \setcounter{nbdrafts}{0}
505 \makeatletter
506 \newcommand{\checknbdrafts}{
507 \ifnum \thenbdrafts > 0
508 \@latex@warning@no@line{*WARNING* The document contains \thenbdrafts \space draft note(s)}
509 \fi}
510 \newcommand{\todo}[1]{\addtocounter{nbdrafts}{1}{\color{red} #1}}
511 \makeatother
512 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
513 \definecolor{paper}{rgb}{0.95,0.95,0.95}
514 \definecolor{math}{rgb}{0.0,0.5,0.0}
515 %\definecolor{links}{rgb}{0.0,0.2,0.5}
516 \definecolor{links}{rgb}{0.0,0.2,0.85}
517 %\definecolor{hlcolor}{rgb}{0.8,1.0,0.85}
518
519 \definecolor{blue}{rgb}{0.3,0.5,0.85}
520 \definecolor{red}{rgb}{0.65,0.0,0.0}
521 \definecolor{green}{rgb}{0.0,0.50,0.0}
522 \definecolor{dimmed}{rgb}{0.8,0.8,0.8}
523 \definecolor{orange}{rgb}{1.0,0.75,0.0}
524
525 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
526 % Pretty underline, taken from
527 % https://tex.stackexchange.com/questions/36894/underline-omitting-the-descenders
528
529 \usepackage{soul}
530 \usepackage{xcolor}
531 \usepackage{xparse}
532 \makeatletter
533
534 \ExplSyntaxOn
535 \cs_new:Npn \white_text:n #1
536   {
537     \fp_set:Nn \l_tmpa_fp {#1 * .01}
538     \llap{\textcolor{white}{\the\SOUL@syllable}\hspace{\fp_to_decimal:N \l_tmpa_fp em}}
539     \llap{\textcolor{white}{\the\SOUL@syllable}\hspace{-\fp_to_decimal:N \l_tmpa_fp em}}
540   }
541 \NewDocumentCommand{\whiten}{ m }
542     {
543       \int_step_function:nnnN {1}{1}{#1} \white_text:n
544     }
545 \ExplSyntaxOff
546
547 \NewDocumentCommand{ \prettyul }{ D<>{5} O{0.2ex} O{0.1ex} +m } {%
548 \begingroup
549 \setul{#2}{#3}%
550 \def\SOUL@uleverysyllable{%
551    \setbox0=\hbox{\the\SOUL@syllable}%
552    \ifdim\dp0>\z@
553       \SOUL@ulunderline{\phantom{\the\SOUL@syllable}}%
554       \whiten{#1}%
555       \llap{%
556         \the\SOUL@syllable
557         \SOUL@setkern\SOUL@charkern
558       }%
559    \else
560        \SOUL@ulunderline{%
561          \the\SOUL@syllable
562          \SOUL@setkern\SOUL@charkern
563        }%
564    \fi}%
565     \ul{#4}%
566 \endgroup
567 }
568
569 \makeatother
570
571 % end of prettyul
572 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
573
574 \usepackage{accsupp}
575 \usepackage{xcolor, soul}
576
577 \definecolor{hlcolor}{rgb}{1.0,1.0,0.5}
578 \sethlcolor{hlcolor}
579 %% \definecolor{ulcolor}{rgb}{0.65,0.65,0.65}
580 %% \setulcolor{ulcolor}
581
582 %% \index{Attention Layer@\hypertarget{Attention Layer.ind}{}Attention Layer}
583 %% \href{\#Attention Layer.ind}%
584
585 %% \newcommand{\keyterm}[2][]{%
586 %%   \ifthenelse{\equal{#1}{}}
587 %%              {\prettyul[2pt]{#2}\linkedindex{#2}}
588 %%              {\prettyul[2pt]{#2}\linkedindex{#1}}%
589 %% }
590
591 \newcommand{\keytermold}[2][]{%
592 %  \BeginAccSupp{method=plain,ActualText={#2}}%
593   \ifthenelse{\equal{#1}{}}
594              {\prettyul[2pt]{#2}\index{#2}}
595              {\prettyul[2pt]{#2}\index{#1}}%
596 %  \EndAccSupp{}%
597 }
598
599 \setulcolor{black}
600 \setul{0.3ex}{0.5pt}
601 \newcommand{\keyterm}[2][]{%
602   \ul{#2}%
603 %%   \prettyul[2pt]{#2}%
604   \ifthenelse{\equal{#1}{}}{\index{#2}}{\index{#1}}%
605 }
606
607 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
608
609 \newcommand{\gizmo}{%
610   \begin{tikzpicture}[scale=0.25]
611     \draw[draw=none,fill=red]  (0,0) rectangle ++(1,1);
612     \draw[draw=none,fill=blue] (1,0) rectangle ++(1,1);
613     \draw[draw=none,fill=blue] (0,1) rectangle ++(1,1);
614     \draw[draw=none,fill=red]  (1,1) rectangle ++(1,1);
615   \end{tikzpicture}
616 }
617
618 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
619
620 %\def\forprint{}
621 \def\withcover{}
622
623 \raggedbottom
624
625 \input{lb}