diff --git a/Dissertation b/Dissertation deleted file mode 160000 index 54ce110..0000000 --- a/Dissertation +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 54ce1102d925532f87f2e95ffc9dada99664dcb5 diff --git a/Dissertation_unzipped/.DS_Store b/Dissertation_unzipped/.DS_Store new file mode 100644 index 0000000..54adf9e Binary files /dev/null and b/Dissertation_unzipped/.DS_Store differ diff --git a/Dissertation_unzipped/.gitignore b/Dissertation_unzipped/.gitignore new file mode 100644 index 0000000..5b6a065 --- /dev/null +++ b/Dissertation_unzipped/.gitignore @@ -0,0 +1,4 @@ +.Rproj.user +.Rhistory +.RData +.Ruserdata diff --git a/Dissertation_unzipped/.texpadtmp/.DS_Store b/Dissertation_unzipped/.texpadtmp/.DS_Store new file mode 100644 index 0000000..0a2a4de Binary files /dev/null and b/Dissertation_unzipped/.texpadtmp/.DS_Store differ diff --git a/Dissertation_unzipped/.texpadtmp/Brownian_motion_monte_carlo.aux b/Dissertation_unzipped/.texpadtmp/Brownian_motion_monte_carlo.aux new file mode 100644 index 0000000..05f6ba0 --- /dev/null +++ b/Dissertation_unzipped/.texpadtmp/Brownian_motion_monte_carlo.aux @@ -0,0 +1,126 @@ +\relax +\providecommand\hyper@newdestlabel[2]{} +\citation{durrett2019probability} +\citation{karatzas1991brownian} +\@writefile{toc}{\contentsline {chapter}{\numberline {2}Brownian Motion Monte Carlo}{19}{chapter.2}\protected@file@percent } +\@writefile{lof}{\addvspace {10\p@ }} +\@writefile{lot}{\addvspace {10\p@ }} +\@writefile{toc}{\contentsline {section}{\numberline {2.1}Brownian Motion Preliminaries}{19}{section.2.1}\protected@file@percent } +\newlabel{def:1.17}{{2.1.5}{22}{Of $\mathfrak {k}$}{theorem.2.1.5}{}} +\newlabel{def:1.17@cref}{{[definition][5][2,1]2.1.5}{[1][22][]22}} +\newlabel{primarysetting}{{2.1.6}{22}{Primary Setting}{theorem.2.1.6}{}} +\newlabel{primarysetting@cref}{{[definition][6][2,1]2.1.6}{[1][22][]22}} +\newlabel{(2.1.2)}{{2.1.3}{22}{Primary Setting}{equation.2.1.3}{}} +\newlabel{(2.1.2)@cref}{{[equation][3][2,1]2.1.3}{[1][22][]22}} +\newlabel{(1.12)}{{2.1.4}{22}{Primary Setting}{equation.2.1.4}{}} +\newlabel{(1.12)@cref}{{[equation][4][2,1]2.1.4}{[1][22][]22}} +\citation{hutzenthaler_overcoming_2020} +\newlabel{(2.1.4)}{{2.1.5}{23}{Primary Setting}{equation.2.1.5}{}} +\newlabel{(2.1.4)@cref}{{[equation][5][2,1]2.1.5}{[1][22][]23}} +\newlabel{lemma1.1}{{2.1.7}{23}{}{theorem.2.1.7}{}} +\newlabel{lemma1.1@cref}{{[lemma][7][2,1]2.1.7}{[1][23][]23}} +\newlabel{lem:1.20}{{2.1.8}{23}{}{theorem.2.1.8}{}} +\newlabel{lem:1.20@cref}{{[lemma][8][2,1]2.1.8}{[1][23][]23}} +\newlabel{(2.1.6)}{{2.1.7}{24}{Brownian Motion Preliminaries}{equation.2.1.7}{}} +\newlabel{(2.1.6)@cref}{{[equation][7][2,1]2.1.7}{[1][23][]24}} +\newlabel{eq:1.4}{{2.1}{24}{Brownian Motion Preliminaries}{equation.2.1.7}{}} +\newlabel{eq:1.4@cref}{{[section][1][2]2.1}{[1][24][]24}} +\newlabel{(1.17)}{{2.1.8}{24}{Brownian Motion Preliminaries}{equation.2.1.8}{}} +\newlabel{(1.17)@cref}{{[equation][8][2,1]2.1.8}{[1][24][]24}} +\newlabel{(1.18)}{{2.1.9}{24}{Brownian Motion Preliminaries}{equation.2.1.9}{}} +\newlabel{(1.18)@cref}{{[equation][9][2,1]2.1.9}{[1][24][]24}} +\newlabel{(1.19)}{{2.1.10}{24}{Brownian Motion Preliminaries}{equation.2.1.10}{}} +\newlabel{(1.19)@cref}{{[equation][10][2,1]2.1.10}{[1][24][]24}} +\newlabel{(1.20)}{{2.1.11}{24}{Brownian Motion Preliminaries}{equation.2.1.11}{}} +\newlabel{(1.20)@cref}{{[equation][11][2,1]2.1.11}{[1][24][]24}} +\newlabel{(1.21)}{{2.1.12}{24}{Brownian Motion Preliminaries}{equation.2.1.12}{}} +\newlabel{(1.21)@cref}{{[equation][12][2,1]2.1.12}{[1][24][]24}} +\newlabel{cor:1.20.1}{{2.1.8.1}{24}{}{corollary.2.1.8.1}{}} +\newlabel{cor:1.20.1@cref}{{[corollary][1][]2.1.8.1}{[1][24][]24}} +\citation{rio_moment_2009} +\citation{rio_moment_2009} +\@writefile{toc}{\contentsline {section}{\numberline {2.2}Monte Carlo Approximations}{25}{section.2.2}\protected@file@percent } +\newlabel{lem:1.21}{{2.2.1}{25}{}{theorem.2.2.1}{}} +\newlabel{lem:1.21@cref}{{[lemma][1][2,2]2.2.1}{[1][25][]25}} +\citation{grohsetal} +\newlabel{corollary:1.11.1.}{{2.2.1.1}{26}{}{corollary.2.2.1.1}{}} +\newlabel{corollary:1.11.1.@cref}{{[corollary][1][]2.2.1.1}{[1][26][]26}} +\newlabel{(1.26)}{{2.2.5}{26}{}{equation.2.2.5}{}} +\newlabel{(1.26)@cref}{{[equation][5][2,2]2.2.5}{[1][26][]26}} +\newlabel{cor:1.22.2}{{2.2.1.2}{26}{}{corollary.2.2.1.2}{}} +\newlabel{cor:1.22.2@cref}{{[corollary][2][]2.2.1.2}{[1][26][]26}} +\@writefile{toc}{\contentsline {section}{\numberline {2.3}Bounds and Covnvergence}{26}{section.2.3}\protected@file@percent } +\newlabel{lem:1.21}{{2.3.1}{26}{}{theorem.2.3.1}{}} +\newlabel{lem:1.21@cref}{{[lemma][1][2,3]2.3.1}{[1][26][]26}} +\newlabel{lem:1.22}{{2.3.2}{27}{}{theorem.2.3.2}{}} +\newlabel{lem:1.22@cref}{{[lemma][2][2,3]2.3.2}{[1][27][]27}} +\newlabel{lem:1.25}{{2.3.3}{29}{}{theorem.2.3.3}{}} +\newlabel{lem:1.25@cref}{{[lemma][3][2,3]2.3.3}{[1][29][]29}} +\newlabel{(1.46)}{{2.3.16}{29}{Bounds and Covnvergence}{equation.2.3.16}{}} +\newlabel{(1.46)@cref}{{[equation][16][2,3]2.3.16}{[1][29][]29}} +\newlabel{(1.47)}{{2.3.17}{29}{Bounds and Covnvergence}{equation.2.3.17}{}} +\newlabel{(1.47)@cref}{{[equation][17][2,3]2.3.17}{[1][29][]29}} +\newlabel{(1.48)}{{2.3.18}{29}{Bounds and Covnvergence}{equation.2.3.18}{}} +\newlabel{(1.48)@cref}{{[equation][18][2,3]2.3.18}{[1][29][]29}} +\newlabel{cor:1.25.1}{{2.3.3.1}{29}{}{corollary.2.3.3.1}{}} +\newlabel{cor:1.25.1@cref}{{[corollary][1][]2.3.3.1}{[1][29][]29}} +\newlabel{tentpole_1}{{2.3.4}{30}{}{theorem.2.3.4}{}} +\newlabel{tentpole_1@cref}{{[theorem][4][2,3]2.3.4}{[1][30][]30}} +\newlabel{(2.48)}{{2.3.26}{31}{}{equation.2.3.26}{}} +\newlabel{(2.48)@cref}{{[equation][26][2,3]2.3.26}{[1][31][]31}} +\newlabel{2.3.27}{{2.3.27}{31}{}{equation.2.3.27}{}} +\newlabel{2.3.27@cref}{{[equation][27][2,3]2.3.27}{[1][31][]31}} +\newlabel{2.3.29}{{2.3.28}{31}{Bounds and Covnvergence}{equation.2.3.28}{}} +\newlabel{2.3.29@cref}{{[equation][28][2,3]2.3.28}{[1][31][]31}} +\citation{hjw2020} +\citation{hjw2020} +\citation{hjw2020} +\newlabel{(2.3.33)}{{2.3.33}{33}{Bounds and Covnvergence}{equation.2.3.33}{}} +\newlabel{(2.3.33)@cref}{{[equation][33][2,3]2.3.33}{[1][33][]33}} +\newlabel{2.3.34}{{2.3.34}{33}{Bounds and Covnvergence}{equation.2.3.34}{}} +\newlabel{2.3.34@cref}{{[equation][34][2,3]2.3.34}{[1][33][]33}} +\newlabel{(2.3.35)}{{2.3.35}{34}{Bounds and Covnvergence}{equation.2.3.35}{}} +\newlabel{(2.3.35)@cref}{{[equation][35][2,3]2.3.35}{[1][34][]34}} +\@setckpt{Brownian_motion_monte_carlo}{ +\setcounter{page}{35} +\setcounter{equation}{36} +\setcounter{enumi}{2} +\setcounter{enumii}{0} +\setcounter{enumiii}{0} +\setcounter{enumiv}{0} +\setcounter{footnote}{0} +\setcounter{mpfootnote}{0} +\setcounter{part}{1} +\setcounter{chapter}{2} +\setcounter{section}{3} +\setcounter{subsection}{0} +\setcounter{subsubsection}{0} +\setcounter{paragraph}{0} +\setcounter{subparagraph}{0} +\setcounter{figure}{0} +\setcounter{table}{0} +\setcounter{@pps}{0} +\setcounter{@ppsavesec}{0} +\setcounter{@ppsaveapp}{0} +\setcounter{AM@survey}{0} +\setcounter{parentequation}{0} +\setcounter{section@level}{1} +\setcounter{Item}{35} +\setcounter{Hfootnote}{0} +\setcounter{Hy@AnnotLevel}{0} +\setcounter{bookmark@seq@number}{15} +\setcounter{NAT@ctr}{0} +\setcounter{ALG@line}{0} +\setcounter{ALG@rem}{0} +\setcounter{ALG@nested}{0} +\setcounter{ALG@Lnr}{1} +\setcounter{ALG@blocknr}{1} +\setcounter{ALG@storecount}{0} +\setcounter{ALG@tmpcounter}{0} +\setcounter{@stackindex}{0} +\setcounter{ROWcellindex@}{0} +\setcounter{lstnumber}{1} +\setcounter{theorem}{4} +\setcounter{corollary}{0} +\setcounter{lstlisting}{0} +} diff --git a/Dissertation_unzipped/.texpadtmp/Introduction.aux b/Dissertation_unzipped/.texpadtmp/Introduction.aux new file mode 100644 index 0000000..b570ab4 --- /dev/null +++ b/Dissertation_unzipped/.texpadtmp/Introduction.aux @@ -0,0 +1,91 @@ +\relax +\providecommand\hyper@newdestlabel[2]{} +\citation{tsaban_harnessing_2022} +\citation{davies_signature_2021} +\citation{zhao_space-based_2023} +\citation{wu2022sustainable} +\citation{strubell2019energy} +\citation{e_multilevel_2019} +\citation{e_multilevel_2021} +\citation{hutzenthaler_strong_2021} +\citation{bhj20} +\citation{karatzas1991brownian} +\citation{da_prato_zabczyk_2002} +\@writefile{toc}{\contentsline {chapter}{\numberline {1}Introduction.}{5}{chapter.1}\protected@file@percent } +\@writefile{lof}{\addvspace {10\p@ }} +\@writefile{lot}{\addvspace {10\p@ }} +\@writefile{toc}{\contentsline {section}{\numberline {1.1}Motivation}{5}{section.1.1}\protected@file@percent } +\citation{grohs2019spacetime} +\citation{grohs2019spacetime} +\citation{golub2013matrix} +\citation{durrett2019probability} +\@writefile{toc}{\contentsline {section}{\numberline {1.2}Notation, Definitions \& Basic notions.}{6}{section.1.2}\protected@file@percent } +\@writefile{toc}{\contentsline {subsection}{\numberline {1.2.1}Norms and Inner Product}{7}{subsection.1.2.1}\protected@file@percent } +\@writefile{toc}{\contentsline {subsection}{\numberline {1.2.2}Probability Space and Brownian Motion}{8}{subsection.1.2.2}\protected@file@percent } +\newlabel{1.9}{{1.2.13}{9}{Strong Solution of Stochastic Differential Equation}{theorem.1.2.13}{}} +\newlabel{1.9@cref}{{[definition][13][1,2]1.2.13}{[1][9][]9}} +\newlabel{1.5}{{1.2.8}{9}{Strong Solution of Stochastic Differential Equation}{equation.1.2.8}{}} +\newlabel{1.5@cref}{{[equation][8][1,2]1.2.8}{[1][9][]9}} +\@writefile{toc}{\contentsline {subsection}{\numberline {1.2.3}Lipschitz and Related Notions}{10}{subsection.1.2.3}\protected@file@percent } +\newlabel{def:1.13}{{1.2.15}{10}{Globally Lipschitz Function}{theorem.1.2.15}{}} +\newlabel{def:1.13@cref}{{[definition][15][1,2]1.2.15}{[1][10][]10}} +\newlabel{def:1.14}{{1.2.16}{11}{Locally Lipschitz Function}{theorem.1.2.16}{}} +\newlabel{def:1.14@cref}{{[definition][16][1,2]1.2.16}{[1][11][]11}} +\citation{da_prato_zabczyk_2002} +\@writefile{toc}{\contentsline {subsection}{\numberline {1.2.4}Kolmogorov Equations}{12}{subsection.1.2.4}\protected@file@percent } +\newlabel{(1.7)}{{1.2.16}{12}{Kolmogorov Equation}{equation.1.2.16}{}} +\newlabel{(1.7)@cref}{{[equation][16][1,2]1.2.16}{[1][12][]12}} +\@writefile{toc}{\contentsline {subsection}{\numberline {1.2.5}Linear Algebra Notation and Definitions}{13}{subsection.1.2.5}\protected@file@percent } +\newlabel{def:1.1.23}{{1.2.24}{14}{Column and Row Notation}{theorem.1.2.24}{}} +\newlabel{def:1.1.23@cref}{{[definition][24][1,2]1.2.24}{[1][14][]14}} +\@writefile{toc}{\contentsline {subsection}{\numberline {1.2.6}$O$-type Notation and Function Growth}{15}{subsection.1.2.6}\protected@file@percent } +\newlabel{1.1.20.1}{{1.2.26.1}{15}{Bounded functions and $O$-type notation}{corollary.1.2.26.1}{}} +\newlabel{1.1.20.1@cref}{{[corollary][1][]1.2.26.1}{[1][15][]15}} +\newlabel{1.1.20.2}{{1.2.26.2}{16}{}{corollary.1.2.26.2}{}} +\newlabel{1.1.20.2@cref}{{[corollary][2][]1.2.26.2}{[1][16][]16}} +\@writefile{toc}{\contentsline {subsection}{\numberline {1.2.7}The Concatenation of Vectors \& Functions}{16}{subsection.1.2.7}\protected@file@percent } +\newlabel{par_cont}{{1.2.30}{17}{}{theorem.1.2.30}{}} +\newlabel{par_cont@cref}{{[lemma][30][1,2]1.2.30}{[1][17][]17}} +\@setckpt{Introduction}{ +\setcounter{page}{19} +\setcounter{equation}{35} +\setcounter{enumi}{3} +\setcounter{enumii}{0} +\setcounter{enumiii}{0} +\setcounter{enumiv}{0} +\setcounter{footnote}{0} +\setcounter{mpfootnote}{0} +\setcounter{part}{1} +\setcounter{chapter}{1} +\setcounter{section}{2} +\setcounter{subsection}{7} +\setcounter{subsubsection}{0} +\setcounter{paragraph}{0} +\setcounter{subparagraph}{0} +\setcounter{figure}{0} +\setcounter{table}{0} +\setcounter{@pps}{0} +\setcounter{@ppsavesec}{0} +\setcounter{@ppsaveapp}{0} +\setcounter{AM@survey}{0} +\setcounter{parentequation}{0} +\setcounter{section@level}{2} +\setcounter{Item}{26} +\setcounter{Hfootnote}{0} +\setcounter{Hy@AnnotLevel}{0} +\setcounter{bookmark@seq@number}{11} +\setcounter{NAT@ctr}{0} +\setcounter{ALG@line}{0} +\setcounter{ALG@rem}{0} +\setcounter{ALG@nested}{0} +\setcounter{ALG@Lnr}{1} +\setcounter{ALG@blocknr}{1} +\setcounter{ALG@storecount}{0} +\setcounter{ALG@tmpcounter}{0} +\setcounter{@stackindex}{0} +\setcounter{ROWcellindex@}{0} +\setcounter{lstnumber}{1} +\setcounter{theorem}{30} +\setcounter{corollary}{0} +\setcounter{lstlisting}{0} +} diff --git a/Dissertation_unzipped/.texpadtmp/ann_first_approximations.aux b/Dissertation_unzipped/.texpadtmp/ann_first_approximations.aux new file mode 100644 index 0000000..6b2686d --- /dev/null +++ b/Dissertation_unzipped/.texpadtmp/ann_first_approximations.aux @@ -0,0 +1,178 @@ +\relax +\providecommand\hyper@newdestlabel[2]{} +\@writefile{toc}{\contentsline {chapter}{\numberline {8}ANN first approximations}{148}{chapter.8}\protected@file@percent } +\@writefile{lof}{\addvspace {10\p@ }} +\@writefile{lot}{\addvspace {10\p@ }} +\@writefile{toc}{\contentsline {section}{\numberline {8.1}Activation Function as Neural Networks}{148}{section.8.1}\protected@file@percent } +\newlabel{actnn}{{8.1.1}{148}{Activation ANN}{theorem.8.1.1}{}} +\newlabel{actnn@cref}{{[definition][1][8,1]8.1.1}{[1][148][]148}} +\newlabel{7.1.2}{{8.1.2}{148}{}{theorem.8.1.2}{}} +\newlabel{7.1.2@cref}{{[lemma][2][8,1]8.1.2}{[1][148][]148}} +\newlabel{6.0.3}{{8.1.3}{148}{}{theorem.8.1.3}{}} +\newlabel{6.0.3@cref}{{[lemma][3][8,1]8.1.3}{[1][148][]148}} +\@writefile{toc}{\contentsline {section}{\numberline {8.2}ANN Representations for One-Dimensional Identity}{149}{section.8.2}\protected@file@percent } +\newlabel{7.2.1}{{8.2.1}{149}{Identity Neural Network}{theorem.8.2.1}{}} +\newlabel{7.2.1@cref}{{[definition][1][8,2]8.2.1}{[1][149][]149}} +\newlabel{7.2.2}{{8.2.2}{150}{Identity Neural Network}{equation.8.2.2}{}} +\newlabel{7.2.2@cref}{{[equation][2][8,2]8.2.2}{[1][149][]150}} +\newlabel{idprop}{{8.2.2}{150}{}{theorem.8.2.2}{}} +\newlabel{idprop@cref}{{[lemma][2][8,2]8.2.2}{[1][150][]150}} +\newlabel{id_param}{{8.2.4}{151}{R \textemdash , 2023}{theorem.8.2.4}{}} +\newlabel{id_param@cref}{{[lemma][4][8,2]8.2.4}{[1][151][]151}} +\newlabel{7.2.3}{{8.2.5}{151}{}{theorem.8.2.5}{}} +\newlabel{7.2.3@cref}{{[lemma][5][8,2]8.2.5}{[1][151][]151}} +\newlabel{7.2.8}{{8.2.9}{152}{ANN Representations for One-Dimensional Identity}{equation.8.2.9}{}} +\newlabel{7.2.8@cref}{{[equation][9][8,2]8.2.9}{[1][152][]152}} +\@writefile{toc}{\contentsline {section}{\numberline {8.3}Modulus of Continuity}{158}{section.8.3}\protected@file@percent } +\newlabel{9.3.1}{{8.3.1}{158}{}{equation.8.3.1}{}} +\newlabel{9.3.1@cref}{{[equation][1][8,3]8.3.1}{[1][157][]158}} +\newlabel{lem:9.3.3}{{8.3.3}{158}{}{theorem.8.3.3}{}} +\newlabel{lem:9.3.3@cref}{{[lemma][3][8,3]8.3.3}{[1][158][]158}} +\@writefile{toc}{\contentsline {section}{\numberline {8.4}Linear Interpolation of Real-Valued Functions}{158}{section.8.4}\protected@file@percent } +\@writefile{toc}{\contentsline {subsection}{\numberline {8.4.1}The Linear Interpolation Operator}{159}{subsection.8.4.1}\protected@file@percent } +\newlabel{lio}{{8.4.1}{159}{Linear Interpolation Operator}{theorem.8.4.1}{}} +\newlabel{lio@cref}{{[definition][1][8,4]8.4.1}{[1][158][]159}} +\newlabel{7.3.1}{{8.4.1}{159}{}{equation.8.4.1}{}} +\newlabel{7.3.1@cref}{{[equation][1][8,4]8.4.1}{[1][159][]159}} +\newlabel{7.3.2}{{8.4.2}{159}{}{equation.8.4.2}{}} +\newlabel{7.3.2@cref}{{[equation][2][8,4]8.4.2}{[1][159][]159}} +\newlabel{lem:9.4.3}{{8.4.3}{159}{}{theorem.8.4.3}{}} +\newlabel{lem:9.4.3@cref}{{[lemma][3][8,4]8.4.3}{[1][159][]159}} +\@writefile{toc}{\contentsline {subsection}{\numberline {8.4.2}Neural Networks to Approximate the $\lin $ Operator}{160}{subsection.8.4.2}\protected@file@percent } +\newlabel{7.3.3}{{8.4.4}{160}{}{theorem.8.4.4}{}} +\newlabel{7.3.3@cref}{{[lemma][4][8,4]8.4.4}{[1][160][]160}} +\citation{Grohs_2022} +\citation{Grohs_2022} +\newlabel{9.3.4}{{8.4.5}{161}{}{theorem.8.4.5}{}} +\newlabel{9.3.4@cref}{{[lemma][5][8,4]8.4.5}{[1][161][]161}} +\newlabel{7.3.5}{{8.4.7}{161}{}{equation.8.4.7}{}} +\newlabel{7.3.5@cref}{{[equation][7][8,4]8.4.7}{[1][161][]161}} +\newlabel{7.3.6}{{8.4.8}{161}{Neural Networks to Approximate the $\lin $ Operator}{equation.8.4.8}{}} +\newlabel{7.3.6@cref}{{[equation][8][8,4]8.4.8}{[1][161][]161}} +\newlabel{7.3.8}{{8.4.10}{162}{Neural Networks to Approximate the $\lin $ Operator}{equation.8.4.10}{}} +\newlabel{7.3.8@cref}{{[equation][10][8,4]8.4.10}{[1][162][]162}} +\newlabel{7.3.10.2}{{8.4.11}{162}{Neural Networks to Approximate the $\lin $ Operator}{equation.8.4.11}{}} +\newlabel{7.3.10.2@cref}{{[equation][11][8,4]8.4.11}{[1][162][]162}} +\newlabel{7.3.10}{{8.4.12}{162}{}{equation.8.4.12}{}} +\newlabel{7.3.10@cref}{{[equation][12][8,4]8.4.12}{[1][162][]162}} +\newlabel{7.3.13}{{8.4.15}{162}{Neural Networks to Approximate the $\lin $ Operator}{equation.8.4.15}{}} +\newlabel{7.3.13@cref}{{[equation][15][8,4]8.4.15}{[1][162][]162}} +\newlabel{7.3.14}{{8.4.16}{163}{}{equation.8.4.16}{}} +\newlabel{7.3.14@cref}{{[equation][16][8,4]8.4.16}{[1][162][]163}} +\@writefile{toc}{\contentsline {section}{\numberline {8.5}Neural Network Approximations of 1-dimensional Functions.}{164}{section.8.5}\protected@file@percent } +\newlabel{lem:9.5.1}{{8.5.1}{164}{}{theorem.8.5.1}{}} +\newlabel{lem:9.5.1@cref}{{[lemma][1][8,5]8.5.1}{[1][164][]164}} +\newlabel{lem:9.5.2}{{8.5.2}{165}{}{theorem.8.5.2}{}} +\newlabel{lem:9.5.2@cref}{{[lemma][2][8,5]8.5.2}{[1][165][]165}} +\newlabel{(9.5.4)}{{8.5.4}{165}{Neural Network Approximations of 1-dimensional Functions}{equation.8.5.4}{}} +\newlabel{(9.5.4)@cref}{{[equation][4][8,5]8.5.4}{[1][165][]165}} +\@writefile{toc}{\contentsline {section}{\numberline {8.6}$\trp ^h$ and Neural Network Approximations For the Trapezoidal Rule.}{167}{section.8.6}\protected@file@percent } +\newlabel{(9.6.3)}{{8.6.3}{168}{}{equation.8.6.3}{}} +\newlabel{(9.6.3)@cref}{{[equation][3][8,6]8.6.3}{[1][168][]168}} +\newlabel{(9.6.6)}{{8.6.6}{168}{$\trp ^h$ and Neural Network Approximations For the Trapezoidal Rule}{equation.8.6.6}{}} +\newlabel{(9.6.6)@cref}{{[equation][6][8,6]8.6.6}{[1][168][]168}} +\citation{grohs2019spacetime} +\@writefile{toc}{\contentsline {section}{\numberline {8.7}Linear Interpolation for Multi-Dimensional Functions}{170}{section.8.7}\protected@file@percent } +\@writefile{toc}{\contentsline {subsection}{\numberline {8.7.1}The $\nrm ^d_1$ and $\mxm ^d$ Networks}{170}{subsection.8.7.1}\protected@file@percent } +\newlabel{(9.7.1)}{{8.7.1}{170}{The $\nrm _1^d$ neural network}{equation.8.7.1}{}} +\newlabel{(9.7.1)@cref}{{[equation][1][8,7]8.7.1}{[1][170][]170}} +\newlabel{9.7.2}{{8.7.2}{170}{}{theorem.8.7.2}{}} +\newlabel{9.7.2@cref}{{[lemma][2][8,7]8.7.2}{[1][170][]170}} +\newlabel{9.7.6}{{8.7.10}{172}{Maxima ANN representations}{equation.8.7.10}{}} +\newlabel{9.7.6@cref}{{[equation][10][8,7]8.7.10}{[1][172][]172}} +\newlabel{9.7.4}{{8.7.4}{172}{}{theorem.8.7.4}{}} +\newlabel{9.7.4@cref}{{[lemma][4][8,7]8.7.4}{[1][172][]172}} +\newlabel{9.7.7}{{8.7.11}{173}{The $\nrm ^d_1$ and $\mxm ^d$ Networks}{equation.8.7.11}{}} +\newlabel{9.7.7@cref}{{[equation][11][8,7]8.7.11}{[1][173][]173}} +\newlabel{9.7.8}{{8.7.12}{173}{The $\nrm ^d_1$ and $\mxm ^d$ Networks}{equation.8.7.12}{}} +\newlabel{9.7.8@cref}{{[equation][12][8,7]8.7.12}{[1][173][]173}} +\newlabel{9.7.10}{{8.7.14}{173}{The $\nrm ^d_1$ and $\mxm ^d$ Networks}{equation.8.7.14}{}} +\newlabel{9.7.10@cref}{{[equation][14][8,7]8.7.14}{[1][173][]173}} +\newlabel{9.7.11}{{8.7.15}{174}{The $\nrm ^d_1$ and $\mxm ^d$ Networks}{equation.8.7.15}{}} +\newlabel{9.7.11@cref}{{[equation][15][8,7]8.7.15}{[1][173][]174}} +\newlabel{9.7.12}{{8.7.16}{174}{The $\nrm ^d_1$ and $\mxm ^d$ Networks}{equation.8.7.16}{}} +\newlabel{9.7.12@cref}{{[equation][16][8,7]8.7.16}{[1][174][]174}} +\newlabel{9.7.13}{{8.7.17}{174}{The $\nrm ^d_1$ and $\mxm ^d$ Networks}{equation.8.7.17}{}} +\newlabel{9.7.13@cref}{{[equation][17][8,7]8.7.17}{[1][174][]174}} +\newlabel{9.7.15}{{8.7.19}{174}{The $\nrm ^d_1$ and $\mxm ^d$ Networks}{equation.8.7.19}{}} +\newlabel{9.7.15@cref}{{[equation][19][8,7]8.7.19}{[1][174][]174}} +\newlabel{9.7.16}{{8.7.20}{174}{The $\nrm ^d_1$ and $\mxm ^d$ Networks}{equation.8.7.20}{}} +\newlabel{9.7.16@cref}{{[equation][20][8,7]8.7.20}{[1][174][]174}} +\citation{grohs2019spacetime} +\@writefile{toc}{\contentsline {subsection}{\numberline {8.7.2}The $\mxm ^d$ Neural Network and Maximum Convolutions }{176}{subsection.8.7.2}\protected@file@percent } +\newlabel{(9.7.5)}{{8.7.5}{176}{}{theorem.8.7.5}{}} +\newlabel{(9.7.5)@cref}{{[lemma][5][8,7]8.7.5}{[1][176][]176}} +\newlabel{9.7.20}{{8.7.26}{176}{}{equation.8.7.26}{}} +\newlabel{9.7.20@cref}{{[equation][26][8,7]8.7.26}{[1][176][]176}} +\citation{grohs2019spacetime} +\citation{grohs2019spacetime} +\@writefile{toc}{\contentsline {subsection}{\numberline {8.7.3}Lipschitz Function Approximations}{180}{subsection.8.7.3}\protected@file@percent } +\newlabel{(9.7.6)}{{8.7.3}{180}{Lipschitz Function Approximations}{subsection.8.7.3}{}} +\newlabel{(9.7.6)@cref}{{[subsection][3][8,7]8.7.3}{[1][179][]180}} +\newlabel{9.7.30}{{8.7.41}{180}{}{equation.8.7.41}{}} +\newlabel{9.7.30@cref}{{[equation][41][8,7]8.7.41}{[1][180][]180}} +\newlabel{9.7.31}{{8.7.42}{180}{}{equation.8.7.42}{}} +\newlabel{9.7.31@cref}{{[equation][42][8,7]8.7.42}{[1][180][]180}} +\newlabel{9.7.32}{{8.7.43}{180}{Lipschitz Function Approximations}{equation.8.7.43}{}} +\newlabel{9.7.32@cref}{{[equation][43][8,7]8.7.43}{[1][180][]180}} +\newlabel{9.7.33}{{8.7.44}{180}{Lipschitz Function Approximations}{equation.8.7.44}{}} +\newlabel{9.7.33@cref}{{[equation][44][8,7]8.7.44}{[1][180][]180}} +\newlabel{9.7.6.1}{{8.7.6.1}{181}{}{corollary.8.7.6.1}{}} +\newlabel{9.7.6.1@cref}{{[corollary][1][]8.7.6.1}{[1][181][]181}} +\@writefile{toc}{\contentsline {subsection}{\numberline {8.7.4}Explicit ANN Approximations }{182}{subsection.8.7.4}\protected@file@percent } +\newlabel{(9.7.42)}{{8.7.53}{182}{}{equation.8.7.53}{}} +\newlabel{(9.7.42)@cref}{{[equation][53][8,7]8.7.53}{[1][182][]182}} +\newlabel{9.7.43}{{8.7.54}{182}{Explicit ANN Approximations}{equation.8.7.54}{}} +\newlabel{9.7.43@cref}{{[equation][54][8,7]8.7.54}{[1][182][]182}} +\newlabel{(9.7.44)}{{8.7.55}{183}{Explicit ANN Approximations}{equation.8.7.55}{}} +\newlabel{(9.7.44)@cref}{{[equation][55][8,7]8.7.55}{[1][182][]183}} +\@setckpt{ann_first_approximations}{ +\setcounter{page}{184} +\setcounter{equation}{58} +\setcounter{enumi}{4} +\setcounter{enumii}{0} +\setcounter{enumiii}{0} +\setcounter{enumiv}{0} +\setcounter{footnote}{0} +\setcounter{mpfootnote}{0} +\setcounter{part}{2} +\setcounter{chapter}{8} +\setcounter{section}{7} +\setcounter{subsection}{4} +\setcounter{subsubsection}{0} +\setcounter{paragraph}{0} +\setcounter{subparagraph}{0} +\setcounter{figure}{0} +\setcounter{table}{0} +\setcounter{@pps}{0} +\setcounter{@ppsavesec}{0} +\setcounter{@ppsaveapp}{0} +\setcounter{AM@survey}{0} +\setcounter{parentequation}{0} +\setcounter{section@level}{2} +\setcounter{Item}{269} +\setcounter{Hfootnote}{1} +\setcounter{Hy@AnnotLevel}{0} +\setcounter{bookmark@seq@number}{57} +\setcounter{NAT@ctr}{0} +\setcounter{ALG@line}{0} +\setcounter{ALG@rem}{0} +\setcounter{ALG@nested}{0} +\setcounter{ALG@Lnr}{1} +\setcounter{ALG@blocknr}{1} +\setcounter{ALG@storecount}{0} +\setcounter{ALG@tmpcounter}{0} +\setcounter{@stackindex}{0} +\setcounter{ROWcellindex@}{0} +\setcounter{lstnumber}{1} +\setcounter{theorem}{8} +\setcounter{corollary}{0} +\setcounter{lstlisting}{0} +\setcounter{nn@layerindex@counter}{4} +\setcounter{nn@lastlayerstart@counter}{0} +\setcounter{nn@thislayerstart@counter}{1} +\setcounter{nn@lastlayercount@counter}{3} +\setcounter{nn@thislayercount@counter}{2} +\setcounter{nn@lastlayerindex@counter}{2} +\setcounter{nn@thislayerindex@counter}{3} +} diff --git a/Dissertation_unzipped/.texpadtmp/ann_product.aux b/Dissertation_unzipped/.texpadtmp/ann_product.aux new file mode 100644 index 0000000..55d1095 --- /dev/null +++ b/Dissertation_unzipped/.texpadtmp/ann_product.aux @@ -0,0 +1,144 @@ +\relax +\providecommand\hyper@newdestlabel[2]{} +\citation{grohs2019spacetime} +\@writefile{toc}{\contentsline {chapter}{\numberline {6}ANN Product Approximations}{106}{chapter.6}\protected@file@percent } +\@writefile{lof}{\addvspace {10\p@ }} +\@writefile{lot}{\addvspace {10\p@ }} +\@writefile{toc}{\contentsline {section}{\numberline {6.1}Approximation for Products of Two Real Numbers}{106}{section.6.1}\protected@file@percent } +\@writefile{toc}{\contentsline {subsection}{\numberline {6.1.1}The squares of real numbers}{107}{subsection.6.1.1}\protected@file@percent } +\newlabel{lem:6.1.1}{{6.1.1}{107}{}{theorem.6.1.1}{}} +\newlabel{lem:6.1.1@cref}{{[lemma][1][6,1]6.1.1}{[1][106][]107}} +\newlabel{(6.0.1)}{{6.1.1}{107}{}{equation.6.1.1}{}} +\newlabel{(6.0.1)@cref}{{[equation][1][6,1]6.1.1}{[1][106][]107}} +\newlabel{(6.0.3)}{{6.1.4}{108}{The squares of real numbers}{equation.6.1.4}{}} +\newlabel{(6.0.3)@cref}{{[equation][4][6,1]6.1.4}{[1][107][]108}} +\newlabel{(6.0.4.2)}{{6.1.5}{108}{The squares of real numbers}{equation.6.1.5}{}} +\newlabel{(6.0.4.2)@cref}{{[equation][5][6,1]6.1.5}{[1][108][]108}} +\newlabel{(6.0.5)}{{6.1.6}{108}{The squares of real numbers}{equation.6.1.6}{}} +\newlabel{(6.0.5)@cref}{{[equation][6][6,1]6.1.6}{[1][108][]108}} +\newlabel{6.0.6}{{6.1.7}{108}{The squares of real numbers}{equation.6.1.7}{}} +\newlabel{6.0.6@cref}{{[equation][7][6,1]6.1.7}{[1][108][]108}} +\newlabel{6.0.7}{{6.1.8}{109}{The squares of real numbers}{equation.6.1.8}{}} +\newlabel{6.0.7@cref}{{[equation][8][6,1]6.1.8}{[1][108][]109}} +\newlabel{6.0.8}{{6.1.9}{109}{The squares of real numbers}{equation.6.1.9}{}} +\newlabel{6.0.8@cref}{{[equation][9][6,1]6.1.9}{[1][109][]109}} +\newlabel{6.0.9}{{6.1.10}{109}{The squares of real numbers}{equation.6.1.10}{}} +\newlabel{6.0.9@cref}{{[equation][10][6,1]6.1.10}{[1][109][]109}} +\newlabel{6.0.11}{{6.1.12}{109}{The squares of real numbers}{equation.6.1.12}{}} +\newlabel{6.0.11@cref}{{[equation][12][6,1]6.1.12}{[1][109][]109}} +\newlabel{6.0.12}{{6.1.13}{110}{The squares of real numbers}{equation.6.1.13}{}} +\newlabel{6.0.12@cref}{{[equation][13][6,1]6.1.13}{[1][109][]110}} +\newlabel{6.0.13}{{6.1.14}{110}{The squares of real numbers}{equation.6.1.14}{}} +\newlabel{6.0.13@cref}{{[equation][14][6,1]6.1.14}{[1][110][]110}} +\newlabel{6.0.14}{{6.1.15}{110}{The squares of real numbers}{equation.6.1.15}{}} +\newlabel{6.0.14@cref}{{[equation][15][6,1]6.1.15}{[1][110][]110}} +\newlabel{(6.0.17)}{{6.1.17}{111}{The squares of real numbers}{equation.6.1.17}{}} +\newlabel{(6.0.17)@cref}{{[equation][17][6,1]6.1.17}{[1][110][]111}} +\newlabel{6.1.1.1}{{6.1.2.1}{112}{}{corollary.6.1.2.1}{}} +\newlabel{6.1.1.1@cref}{{[corollary][1][]6.1.2.1}{[1][112][]112}} +\citation{grohs2019spacetime} +\newlabel{6.0.3}{{6.1.4}{113}{}{theorem.6.1.4}{}} +\newlabel{6.0.3@cref}{{[lemma][4][6,1]6.1.4}{[1][113][]113}} +\newlabel{6.0.21}{{6.1.29}{114}{The squares of real numbers}{equation.6.1.29}{}} +\newlabel{6.0.21@cref}{{[equation][29][6,1]6.1.29}{[1][114][]114}} +\newlabel{6.0.23}{{6.1.31}{114}{The squares of real numbers}{equation.6.1.31}{}} +\newlabel{6.0.23@cref}{{[equation][31][6,1]6.1.31}{[1][114][]114}} +\newlabel{6.0.24}{{6.1.32}{115}{The squares of real numbers}{equation.6.1.32}{}} +\newlabel{6.0.24@cref}{{[equation][32][6,1]6.1.32}{[1][114][]115}} +\newlabel{6.0.25}{{6.1.33}{115}{The squares of real numbers}{equation.6.1.33}{}} +\newlabel{6.0.25@cref}{{[equation][33][6,1]6.1.33}{[1][115][]115}} +\newlabel{6.0.25}{{6.1.34}{115}{The squares of real numbers}{equation.6.1.34}{}} +\newlabel{6.0.25@cref}{{[equation][34][6,1]6.1.34}{[1][115][]115}} +\newlabel{6.0.26}{{6.1.35}{116}{The squares of real numbers}{equation.6.1.35}{}} +\newlabel{6.0.26@cref}{{[equation][35][6,1]6.1.35}{[1][115][]116}} +\newlabel{(6.1.42)}{{6.1.43}{117}{The squares of real numbers}{equation.6.1.43}{}} +\newlabel{(6.1.42)@cref}{{[equation][43][6,1]6.1.43}{[1][117][]117}} +\citation{grohs2019spacetime} +\@writefile{toc}{\contentsline {subsection}{\numberline {6.1.2}The $\prd $ network}{118}{subsection.6.1.2}\protected@file@percent } +\newlabel{prd_network}{{6.1.7}{118}{}{theorem.6.1.7}{}} +\newlabel{prd_network@cref}{{[lemma][7][6,1]6.1.7}{[1][118][]118}} +\newlabel{6.0.33}{{6.1.47}{119}{The $\prd $ network}{equation.6.1.47}{}} +\newlabel{6.0.33@cref}{{[equation][47][6,1]6.1.47}{[1][118][]119}} +\newlabel{(6.1.49)}{{6.1.50}{120}{The $\prd $ network}{equation.6.1.50}{}} +\newlabel{(6.1.49)@cref}{{[equation][50][6,1]6.1.50}{[1][120][]120}} +\newlabel{(6.1.50)}{{6.1.51}{121}{The $\prd $ network}{equation.6.1.51}{}} +\newlabel{(6.1.50)@cref}{{[equation][51][6,1]6.1.51}{[1][120][]121}} +\newlabel{cor_prd}{{6.1.7.1}{122}{}{corollary.6.1.7.1}{}} +\newlabel{cor_prd@cref}{{[corollary][1][]6.1.7.1}{[1][122][]122}} +\@writefile{toc}{\contentsline {section}{\numberline {6.2}Higher Approximations}{123}{section.6.2}\protected@file@percent } +\newlabel{sec_tun}{{6.2}{123}{Higher Approximations}{section.6.2}{}} +\newlabel{sec_tun@cref}{{[section][2][6]6.2}{[1][123][]123}} +\@writefile{toc}{\contentsline {subsection}{\numberline {6.2.1}The $\tun $ Neural Networks and Their Properties}{124}{subsection.6.2.1}\protected@file@percent } +\newlabel{6.2.2}{{6.2.3}{124}{}{theorem.6.2.3}{}} +\newlabel{6.2.2@cref}{{[lemma][3][6,2]6.2.3}{[1][124][]124}} +\newlabel{tun_mult}{{6.2.6}{127}{}{theorem.6.2.6}{}} +\newlabel{tun_mult@cref}{{[lemma][6][6,2]6.2.6}{[1][127][]127}} +\@writefile{toc}{\contentsline {subsection}{\numberline {6.2.2}The $\pwr $ Neural Networks and Their Properties}{129}{subsection.6.2.2}\protected@file@percent } +\newlabel{6.2.4}{{6.2.9}{130}{}{theorem.6.2.9}{}} +\newlabel{6.2.4@cref}{{[lemma][9][6,2]6.2.9}{[1][130][]130}} +\newlabel{(6.2.31)}{{6.2.17}{131}{The $\pwr $ Neural Networks and Their Properties}{equation.6.2.17}{}} +\newlabel{(6.2.31)@cref}{{[equation][17][6,2]6.2.17}{[1][131][]131}} +\newlabel{power_prop}{{6.2.12}{131}{R---,2023}{theorem.6.2.12}{}} +\newlabel{power_prop@cref}{{[lemma][12][6,2]6.2.12}{[1][131][]131}} +\newlabel{(6.2.19)}{{6.2.31}{135}{The $\pwr $ Neural Networks and Their Properties}{equation.6.2.31}{}} +\newlabel{(6.2.19)@cref}{{[equation][31][6,2]6.2.31}{[1][135][]135}} +\newlabel{(6.2.39)}{{6.2.43}{138}{The $\pwr $ Neural Networks and Their Properties}{equation.6.2.43}{}} +\newlabel{(6.2.39)@cref}{{[equation][43][6,2]6.2.43}{[1][138][]138}} +\@writefile{toc}{\contentsline {subsection}{\numberline {6.2.3}The $\tay $ Neural Networks and Their Properties}{139}{subsection.6.2.3}\protected@file@percent } +\newlabel{6.2.14}{{6.2.48}{139}{}{equation.6.2.48}{}} +\newlabel{6.2.14@cref}{{[equation][48][6,2]6.2.48}{[1][139][]139}} +\newlabel{6.2.8}{{6.2.17}{140}{}{theorem.6.2.17}{}} +\newlabel{6.2.8@cref}{{[lemma][17][6,2]6.2.17}{[1][140][]140}} +\newlabel{6.2.9}{{6.2.18}{140}{R---,2023}{theorem.6.2.18}{}} +\newlabel{6.2.9@cref}{{[lemma][18][6,2]6.2.18}{[1][140][]140}} +\@writefile{toc}{\contentsline {subsection}{\numberline {6.2.4}Neural Network Approximations For $e^x$.}{144}{subsection.6.2.4}\protected@file@percent } +\@setckpt{ann_product}{ +\setcounter{page}{145} +\setcounter{equation}{63} +\setcounter{enumi}{6} +\setcounter{enumii}{0} +\setcounter{enumiii}{0} +\setcounter{enumiv}{0} +\setcounter{footnote}{1} +\setcounter{mpfootnote}{0} +\setcounter{part}{2} +\setcounter{chapter}{6} +\setcounter{section}{2} +\setcounter{subsection}{4} +\setcounter{subsubsection}{0} +\setcounter{paragraph}{0} +\setcounter{subparagraph}{0} +\setcounter{figure}{0} +\setcounter{table}{0} +\setcounter{@pps}{0} +\setcounter{@ppsavesec}{0} +\setcounter{@ppsaveapp}{0} +\setcounter{AM@survey}{0} +\setcounter{parentequation}{0} +\setcounter{section@level}{2} +\setcounter{Item}{162} +\setcounter{Hfootnote}{1} +\setcounter{Hy@AnnotLevel}{0} +\setcounter{bookmark@seq@number}{42} +\setcounter{NAT@ctr}{0} +\setcounter{ALG@line}{0} +\setcounter{ALG@rem}{0} +\setcounter{ALG@nested}{0} +\setcounter{ALG@Lnr}{1} +\setcounter{ALG@blocknr}{1} +\setcounter{ALG@storecount}{0} +\setcounter{ALG@tmpcounter}{0} +\setcounter{@stackindex}{0} +\setcounter{ROWcellindex@}{0} +\setcounter{lstnumber}{1} +\setcounter{theorem}{19} +\setcounter{corollary}{0} +\setcounter{lstlisting}{0} +\setcounter{nn@layerindex@counter}{4} +\setcounter{nn@lastlayerstart@counter}{0} +\setcounter{nn@thislayerstart@counter}{1} +\setcounter{nn@lastlayercount@counter}{3} +\setcounter{nn@thislayercount@counter}{2} +\setcounter{nn@lastlayerindex@counter}{2} +\setcounter{nn@thislayerindex@counter}{3} +} diff --git a/Dissertation_unzipped/.texpadtmp/ann_rep_brownian_motion_monte_carlo.aux b/Dissertation_unzipped/.texpadtmp/ann_rep_brownian_motion_monte_carlo.aux new file mode 100644 index 0000000..35f6e2c --- /dev/null +++ b/Dissertation_unzipped/.texpadtmp/ann_rep_brownian_motion_monte_carlo.aux @@ -0,0 +1,88 @@ +\relax +\providecommand\hyper@newdestlabel[2]{} +\@writefile{toc}{\contentsline {chapter}{\numberline {9}ANN representations of Brownian Motion Monte Carlo}{185}{chapter.9}\protected@file@percent } +\@writefile{lof}{\addvspace {10\p@ }} +\@writefile{lot}{\addvspace {10\p@ }} +\newlabel{8.0.6}{{9.0.6}{186}{ANN representations of Brownian Motion Monte Carlo}{equation.9.0.6}{}} +\newlabel{8.0.6@cref}{{[equation][6][9,0]9.0.6}{[1][186][]186}} +\newlabel{8.0.7}{{9.0.7}{186}{ANN representations of Brownian Motion Monte Carlo}{equation.9.0.7}{}} +\newlabel{8.0.7@cref}{{[equation][7][9,0]9.0.7}{[1][186][]186}} +\citation{hutzenthaler_strong_2021} +\citation{hutzenthaler_strong_2021} +\@writefile{toc}{\contentsline {subsection}{\numberline {9.0.1}The $\mathsf {E}$ Neural Network}{188}{subsection.9.0.1}\protected@file@percent } +\newlabel{mathsfE}{{9.0.2}{188}{R\textemdash , 2023}{theorem.9.0.2}{}} +\newlabel{mathsfE@cref}{{[lemma][2][9,0]9.0.2}{[1][187][]188}} +\newlabel{trian_ineq_exp_real_rect}{{9.0.18}{191}{The $\mathsf {E}$ Neural Network}{equation.9.0.18}{}} +\newlabel{trian_ineq_exp_real_rect@cref}{{[equation][18][9,0]9.0.18}{[1][191][]191}} +\newlabel{10.0.17}{{9.0.19}{191}{The $\mathsf {E}$ Neural Network}{equation.9.0.19}{}} +\newlabel{10.0.17@cref}{{[equation][19][9,0]9.0.19}{[1][191][]191}} +\newlabel{(10.0.19)}{{9.0.21}{192}{The $\mathsf {E}$ Neural Network}{equation.9.0.21}{}} +\newlabel{(10.0.19)@cref}{{[equation][21][9,0]9.0.21}{[1][191][]192}} +\newlabel{(10.0.18)}{{9.0.22}{192}{The $\mathsf {E}$ Neural Network}{equation.9.0.22}{}} +\newlabel{(10.0.18)@cref}{{[equation][22][9,0]9.0.22}{[1][192][]192}} +\@writefile{toc}{\contentsline {subsection}{\numberline {9.0.2}The $\mathsf {UE}$ Neural Network}{193}{subsection.9.0.2}\protected@file@percent } +\newlabel{UE-prop}{{9.0.3}{193}{R\textemdash ,2023}{theorem.9.0.3}{}} +\newlabel{UE-prop@cref}{{[lemma][3][9,0]9.0.3}{[1][193][]193}} +\newlabel{(10.0.35)}{{9.0.35}{196}{The $\mathsf {UE}$ Neural Network}{equation.9.0.35}{}} +\newlabel{(10.0.35)@cref}{{[equation][35][9,0]9.0.35}{[1][196][]196}} +\newlabel{(10.0.36)}{{9.0.36}{196}{The $\mathsf {UE}$ Neural Network}{equation.9.0.36}{}} +\newlabel{(10.0.36)@cref}{{[equation][36][9,0]9.0.36}{[1][196][]196}} +\@writefile{toc}{\contentsline {subsection}{\numberline {9.0.3}The $\mathsf {UEX}$ network}{197}{subsection.9.0.3}\protected@file@percent } +\newlabel{UEX}{{9.0.3}{197}{The $\mathsf {UEX}$ network}{subsection.9.0.3}{}} +\newlabel{UEX@cref}{{[subsection][3][9,0]9.0.3}{[1][197][]197}} +\newlabel{fc-assertion}{{9.0.42}{198}{R\textemdash , 2024, Approximants for Brownian Motion}{equation.9.0.42}{}} +\newlabel{fc-assertion@cref}{{[equation][42][9,0]9.0.42}{[1][198][]198}} +\@writefile{toc}{\contentsline {subsection}{\numberline {9.0.4}The $\mathsf {UES}$ network}{201}{subsection.9.0.4}\protected@file@percent } +\newlabel{fc-assertion}{{9.0.52}{201}{R\textemdash , 2024, Approximants for Brownian Motion}{equation.9.0.52}{}} +\newlabel{fc-assertion@cref}{{[equation][52][9,0]9.0.52}{[1][201][]201}} +\@writefile{toc}{\contentsline {section}{\numberline {9.1}Bringing It All Together}{203}{section.9.1}\protected@file@percent } +\@setckpt{ann_rep_brownian_motion_monte_carlo}{ +\setcounter{page}{204} +\setcounter{equation}{0} +\setcounter{enumi}{4} +\setcounter{enumii}{0} +\setcounter{enumiii}{0} +\setcounter{enumiv}{0} +\setcounter{footnote}{0} +\setcounter{mpfootnote}{0} +\setcounter{part}{3} +\setcounter{chapter}{9} +\setcounter{section}{1} +\setcounter{subsection}{0} +\setcounter{subsubsection}{0} +\setcounter{paragraph}{0} +\setcounter{subparagraph}{0} +\setcounter{figure}{0} +\setcounter{table}{0} +\setcounter{@pps}{0} +\setcounter{@ppsavesec}{0} +\setcounter{@ppsaveapp}{0} +\setcounter{AM@survey}{0} +\setcounter{parentequation}{0} +\setcounter{section@level}{1} +\setcounter{Item}{291} +\setcounter{Hfootnote}{1} +\setcounter{Hy@AnnotLevel}{0} +\setcounter{bookmark@seq@number}{64} +\setcounter{NAT@ctr}{0} +\setcounter{ALG@line}{0} +\setcounter{ALG@rem}{0} +\setcounter{ALG@nested}{0} +\setcounter{ALG@Lnr}{1} +\setcounter{ALG@blocknr}{1} +\setcounter{ALG@storecount}{0} +\setcounter{ALG@tmpcounter}{0} +\setcounter{@stackindex}{0} +\setcounter{ROWcellindex@}{0} +\setcounter{lstnumber}{1} +\setcounter{theorem}{0} +\setcounter{corollary}{0} +\setcounter{lstlisting}{0} +\setcounter{nn@layerindex@counter}{4} +\setcounter{nn@lastlayerstart@counter}{0} +\setcounter{nn@thislayerstart@counter}{1} +\setcounter{nn@lastlayercount@counter}{3} +\setcounter{nn@thislayercount@counter}{2} +\setcounter{nn@lastlayerindex@counter}{2} +\setcounter{nn@thislayerindex@counter}{3} +} diff --git a/Dissertation_unzipped/.texpadtmp/appendices.aux b/Dissertation_unzipped/.texpadtmp/appendices.aux new file mode 100644 index 0000000..3074fdd --- /dev/null +++ b/Dissertation_unzipped/.texpadtmp/appendices.aux @@ -0,0 +1,113 @@ +\relax +\providecommand\hyper@newdestlabel[2]{} +\@writefile{toc}{\contentsline {section}{\numberline {10.2}Code Listings}{206}{section.10.2}\protected@file@percent } +\newlabel{nn_creator}{{10.1}{206}{R code for neural network generation}{lstlisting.10.1}{}} +\newlabel{nn_creator@cref}{{[lstlisting][1][10]10.1}{[1][206][]206}} +\@writefile{lol}{\contentsline {lstlisting}{\numberline {10.1}R code for neural network generation}{206}{lstlisting.10.1}\protected@file@percent } +\newlabel{aux_fun}{{10.2}{206}{R code for auxilliary functions}{lstlisting.10.2}{}} +\newlabel{aux_fun@cref}{{[lstlisting][2][10]10.2}{[1][206][]206}} +\@writefile{lol}{\contentsline {lstlisting}{\numberline {10.2}R code for auxilliary functions}{206}{lstlisting.10.2}\protected@file@percent } +\newlabel{activations}{{10.3}{208}{R code for activation functions ReLU and Sigmoid}{lstlisting.10.3}{}} +\newlabel{activations@cref}{{[lstlisting][3][10]10.3}{[1][208][]208}} +\@writefile{lol}{\contentsline {lstlisting}{\numberline {10.3}R code for activation functions ReLU and Sigmoid}{208}{lstlisting.10.3}\protected@file@percent } +\newlabel{realization}{{10.4}{208}{R code for realizations}{lstlisting.10.4}{}} +\newlabel{realization@cref}{{[lstlisting][4][10]10.4}{[1][208][]208}} +\@writefile{lol}{\contentsline {lstlisting}{\numberline {10.4}R code for realizations}{208}{lstlisting.10.4}\protected@file@percent } +\newlabel{par}{{10.5}{209}{R code for parallelizing two neural networks}{lstlisting.10.5}{}} +\newlabel{par@cref}{{[lstlisting][5][10]10.5}{[1][209][]209}} +\@writefile{lol}{\contentsline {lstlisting}{\numberline {10.5}R code for parallelizing two neural networks}{209}{lstlisting.10.5}\protected@file@percent } +\newlabel{affn}{{10.6}{211}{R code for affine neural networks}{lstlisting.10.6}{}} +\newlabel{affn@cref}{{[lstlisting][6][10]10.6}{[1][211][]211}} +\@writefile{lol}{\contentsline {lstlisting}{\numberline {10.6}R code for affine neural networks}{211}{lstlisting.10.6}\protected@file@percent } +\newlabel{comp}{{10.7}{212}{R code for composition of two neural networks}{lstlisting.10.7}{}} +\newlabel{comp@cref}{{[lstlisting][7][10]10.7}{[1][212][]212}} +\@writefile{lol}{\contentsline {lstlisting}{\numberline {10.7}R code for composition of two neural networks}{212}{lstlisting.10.7}\protected@file@percent } +\newlabel{scalar_mult}{{10.8}{214}{R code for scalar multiplication}{lstlisting.10.8}{}} +\newlabel{scalar_mult@cref}{{[lstlisting][8][10]10.8}{[1][214][]214}} +\@writefile{lol}{\contentsline {lstlisting}{\numberline {10.8}R code for scalar multiplication}{214}{lstlisting.10.8}\protected@file@percent } +\newlabel{nn_sum}{{10.9}{215}{R code for sum of two neural networks}{lstlisting.10.9}{}} +\newlabel{nn_sum@cref}{{[lstlisting][9][10]10.9}{[1][215][]215}} +\@writefile{lol}{\contentsline {lstlisting}{\numberline {10.9}R code for sum of two neural networks}{215}{lstlisting.10.9}\protected@file@percent } +\newlabel{i}{{10.10}{215}{R code for $\mathfrak {i}$}{lstlisting.10.10}{}} +\newlabel{i@cref}{{[lstlisting][10][10]10.10}{[1][215][]215}} +\@writefile{lol}{\contentsline {lstlisting}{\numberline {10.10}R code for $\mathfrak {i}$}{215}{lstlisting.10.10}\protected@file@percent } +\newlabel{Id}{{10.11}{216}{R code for $\mathsf {Id}$ neural networks}{lstlisting.10.11}{}} +\newlabel{Id@cref}{{[lstlisting][11][10]10.11}{[1][216][]216}} +\@writefile{lol}{\contentsline {lstlisting}{\numberline {10.11}R code for $\mathsf {Id}$ neural networks}{216}{lstlisting.10.11}\protected@file@percent } +\newlabel{Tun}{{10.12}{216}{R code for $\tun $}{lstlisting.10.12}{}} +\newlabel{Tun@cref}{{[lstlisting][12][10]10.12}{[1][216][]216}} +\@writefile{lol}{\contentsline {lstlisting}{\numberline {10.12}R code for $\tun $}{216}{lstlisting.10.12}\protected@file@percent } +\newlabel{Phi_k}{{10.13}{217}{R code for $\Phi _k$}{lstlisting.10.13}{}} +\newlabel{Phi_k@cref}{{[lstlisting][13][10]10.13}{[1][217][]217}} +\@writefile{lol}{\contentsline {lstlisting}{\numberline {10.13}R code for $\Phi _k$}{217}{lstlisting.10.13}\protected@file@percent } +\newlabel{Phi_k_properties}{{10.14}{219}{R code for simulations involving $\Phi _k$}{lstlisting.10.14}{}} +\newlabel{Phi_k_properties@cref}{{[lstlisting][14][10]10.14}{[1][219][]219}} +\@writefile{lol}{\contentsline {lstlisting}{\numberline {10.14}R code for simulations involving $\Phi _k$}{219}{lstlisting.10.14}\protected@file@percent } +\newlabel{Phi}{{10.15}{220}{R code for $\Phi $}{lstlisting.10.15}{}} +\newlabel{Phi@cref}{{[lstlisting][15][10]10.15}{[1][220][]220}} +\@writefile{lol}{\contentsline {lstlisting}{\numberline {10.15}R code for $\Phi $}{220}{lstlisting.10.15}\protected@file@percent } +\newlabel{Phi_properties}{{10.16}{221}{R code for simulations involving $\Phi $}{lstlisting.10.16}{}} +\newlabel{Phi_properties@cref}{{[lstlisting][16][10]10.16}{[1][221][]221}} +\@writefile{lol}{\contentsline {lstlisting}{\numberline {10.16}R code for simulations involving $\Phi $}{221}{lstlisting.10.16}\protected@file@percent } +\newlabel{Sqr}{{10.17}{223}{R code for $\sqr $}{lstlisting.10.17}{}} +\newlabel{Sqr@cref}{{[lstlisting][17][10]10.17}{[1][223][]223}} +\@writefile{lol}{\contentsline {lstlisting}{\numberline {10.17}R code for $\sqr $}{223}{lstlisting.10.17}\protected@file@percent } +\newlabel{Sqr_properties}{{10.18}{223}{R code simulations involving $\sqr $}{lstlisting.10.18}{}} +\newlabel{Sqr_properties@cref}{{[lstlisting][18][10]10.18}{[1][223][]223}} +\@writefile{lol}{\contentsline {lstlisting}{\numberline {10.18}R code simulations involving $\sqr $}{223}{lstlisting.10.18}\protected@file@percent } +\newlabel{Pwr}{{10.19}{226}{R code simulations involving $\sqr $}{lstlisting.10.19}{}} +\newlabel{Pwr@cref}{{[lstlisting][19][10]10.19}{[1][226][]226}} +\@writefile{lol}{\contentsline {lstlisting}{\numberline {10.19}R code simulations involving $\sqr $}{226}{lstlisting.10.19}\protected@file@percent } +\newlabel{Pwr_3_properties}{{10.20}{226}{R code simulations involving $\sqr $}{lstlisting.10.20}{}} +\newlabel{Pwr_3_properties@cref}{{[lstlisting][20][10]10.20}{[1][226][]226}} +\@writefile{lol}{\contentsline {lstlisting}{\numberline {10.20}R code simulations involving $\sqr $}{226}{lstlisting.10.20}\protected@file@percent } +\@setckpt{appendices}{ +\setcounter{page}{230} +\setcounter{equation}{0} +\setcounter{enumi}{4} +\setcounter{enumii}{0} +\setcounter{enumiii}{0} +\setcounter{enumiv}{0} +\setcounter{footnote}{0} +\setcounter{mpfootnote}{0} +\setcounter{part}{3} +\setcounter{chapter}{10} +\setcounter{section}{2} +\setcounter{subsection}{0} +\setcounter{subsubsection}{0} +\setcounter{paragraph}{0} +\setcounter{subparagraph}{0} +\setcounter{figure}{0} +\setcounter{table}{0} +\setcounter{@pps}{0} +\setcounter{@ppsavesec}{0} +\setcounter{@ppsaveapp}{0} +\setcounter{AM@survey}{0} +\setcounter{parentequation}{0} +\setcounter{section@level}{1} +\setcounter{Item}{291} +\setcounter{Hfootnote}{1} +\setcounter{Hy@AnnotLevel}{0} +\setcounter{bookmark@seq@number}{68} +\setcounter{NAT@ctr}{0} +\setcounter{ALG@line}{0} +\setcounter{ALG@rem}{0} +\setcounter{ALG@nested}{0} +\setcounter{ALG@Lnr}{1} +\setcounter{ALG@blocknr}{1} +\setcounter{ALG@storecount}{0} +\setcounter{ALG@tmpcounter}{0} +\setcounter{@stackindex}{0} +\setcounter{ROWcellindex@}{0} +\setcounter{lstnumber}{142} +\setcounter{theorem}{0} +\setcounter{corollary}{0} +\setcounter{lstlisting}{20} +\setcounter{nn@layerindex@counter}{4} +\setcounter{nn@lastlayerstart@counter}{0} +\setcounter{nn@thislayerstart@counter}{1} +\setcounter{nn@lastlayercount@counter}{3} +\setcounter{nn@thislayercount@counter}{2} +\setcounter{nn@lastlayerindex@counter}{2} +\setcounter{nn@thislayerindex@counter}{3} +} diff --git a/Dissertation_unzipped/.texpadtmp/brownian_motion_monte_carlo_non_linear_case.aux b/Dissertation_unzipped/.texpadtmp/brownian_motion_monte_carlo_non_linear_case.aux new file mode 100644 index 0000000..80ba8d0 --- /dev/null +++ b/Dissertation_unzipped/.texpadtmp/brownian_motion_monte_carlo_non_linear_case.aux @@ -0,0 +1,63 @@ +\relax +\providecommand\hyper@newdestlabel[2]{} +\citation{Beck_2021} +\@writefile{toc}{\contentsline {chapter}{\numberline {4}Brownian motion Monte Carlo of the non-linear case}{64}{chapter.4}\protected@file@percent } +\@writefile{lof}{\addvspace {10\p@ }} +\@writefile{lot}{\addvspace {10\p@ }} +\newlabel{4.0.1}{{4.0.1}{64}{Subsequent Setting}{equation.4.0.1}{}} +\newlabel{4.0.1@cref}{{[equation][1][4,0]4.0.1}{[1][64][]64}} +\newlabel{4.0.2}{{4.0.2}{64}{Subsequent Setting}{equation.4.0.2}{}} +\newlabel{4.0.2@cref}{{[equation][2][4,0]4.0.2}{[1][64][]64}} +\newlabel{def:1.18}{{4.0.1}{65}{Subsequent Setting}{equation.4.0.4}{}} +\newlabel{def:1.18@cref}{{[definition][1][4,0]4.0.1}{[1][65][]65}} +\newlabel{Setting 1.1}{{4.0.1}{65}{Subsequent Setting}{equation.4.0.4}{}} +\newlabel{Setting 1.1@cref}{{[definition][1][4,0]4.0.1}{[1][65][]65}} +\newlabel{(1.12)}{{4.0.5}{65}{Subsequent Setting}{equation.4.0.5}{}} +\newlabel{(1.12)@cref}{{[equation][5][4,0]4.0.5}{[1][65][]65}} +\newlabel{(1.12)}{{4.0.6}{65}{Subsequent Setting}{equation.4.0.6}{}} +\newlabel{(1.12)@cref}{{[equation][6][4,0]4.0.6}{[1][65][]65}} +\newlabel{(1.14)}{{4.0.7}{65}{Subsequent Setting}{equation.4.0.7}{}} +\newlabel{(1.14)@cref}{{[equation][7][4,0]4.0.7}{[1][65][]65}} +\@setckpt{brownian_motion_monte_carlo_non_linear_case}{ +\setcounter{page}{66} +\setcounter{equation}{7} +\setcounter{enumi}{3} +\setcounter{enumii}{0} +\setcounter{enumiii}{0} +\setcounter{enumiv}{0} +\setcounter{footnote}{0} +\setcounter{mpfootnote}{0} +\setcounter{part}{1} +\setcounter{chapter}{4} +\setcounter{section}{0} +\setcounter{subsection}{0} +\setcounter{subsubsection}{0} +\setcounter{paragraph}{0} +\setcounter{subparagraph}{0} +\setcounter{figure}{0} +\setcounter{table}{0} +\setcounter{@pps}{0} +\setcounter{@ppsavesec}{0} +\setcounter{@ppsaveapp}{0} +\setcounter{AM@survey}{0} +\setcounter{parentequation}{0} +\setcounter{section@level}{1} +\setcounter{Item}{58} +\setcounter{Hfootnote}{0} +\setcounter{Hy@AnnotLevel}{0} +\setcounter{bookmark@seq@number}{20} +\setcounter{NAT@ctr}{0} +\setcounter{ALG@line}{0} +\setcounter{ALG@rem}{0} +\setcounter{ALG@nested}{0} +\setcounter{ALG@Lnr}{1} +\setcounter{ALG@blocknr}{1} +\setcounter{ALG@storecount}{0} +\setcounter{ALG@tmpcounter}{0} +\setcounter{@stackindex}{0} +\setcounter{ROWcellindex@}{0} +\setcounter{lstnumber}{1} +\setcounter{theorem}{1} +\setcounter{corollary}{0} +\setcounter{lstlisting}{0} +} diff --git a/Dissertation_unzipped/.texpadtmp/categorical_neural_network.aux b/Dissertation_unzipped/.texpadtmp/categorical_neural_network.aux new file mode 100644 index 0000000..175eb7c --- /dev/null +++ b/Dissertation_unzipped/.texpadtmp/categorical_neural_network.aux @@ -0,0 +1,52 @@ +\relax +\providecommand\hyper@newdestlabel[2]{} +\@writefile{toc}{\contentsline {chapter}{\numberline {8}Some categorical ideas about neural networks}{126}{chapter.8}\protected@file@percent } +\@writefile{lof}{\addvspace {10\p@ }} +\@writefile{lot}{\addvspace {10\p@ }} +\@setckpt{categorical_neural_network}{ +\setcounter{page}{127} +\setcounter{equation}{0} +\setcounter{enumi}{7} +\setcounter{enumii}{0} +\setcounter{enumiii}{0} +\setcounter{enumiv}{0} +\setcounter{footnote}{0} +\setcounter{mpfootnote}{0} +\setcounter{part}{2} +\setcounter{chapter}{8} +\setcounter{section}{0} +\setcounter{subsection}{0} +\setcounter{subsubsection}{0} +\setcounter{paragraph}{0} +\setcounter{subparagraph}{0} +\setcounter{figure}{0} +\setcounter{table}{0} +\setcounter{@pps}{0} +\setcounter{@ppsavesec}{0} +\setcounter{@ppsaveapp}{0} +\setcounter{AM@survey}{0} +\setcounter{parentequation}{0} +\setcounter{section@level}{2} +\setcounter{Item}{147} +\setcounter{Hfootnote}{1} +\setcounter{bookmark@seq@number}{38} +\setcounter{NAT@ctr}{0} +\setcounter{ALG@line}{0} +\setcounter{ALG@rem}{0} +\setcounter{ALG@nested}{0} +\setcounter{ALG@Lnr}{1} +\setcounter{ALG@blocknr}{1} +\setcounter{ALG@storecount}{0} +\setcounter{ALG@tmpcounter}{0} +\setcounter{lstnumber}{1} +\setcounter{theorem}{0} +\setcounter{corollary}{0} +\setcounter{lstlisting}{0} +\setcounter{nn@layerindex@counter}{6} +\setcounter{nn@lastlayerstart@counter}{0} +\setcounter{nn@thislayerstart@counter}{1} +\setcounter{nn@lastlayercount@counter}{4} +\setcounter{nn@thislayercount@counter}{2} +\setcounter{nn@lastlayerindex@counter}{4} +\setcounter{nn@thislayerindex@counter}{5} +} diff --git a/Dissertation_unzipped/.texpadtmp/conclusions-further-research.aux b/Dissertation_unzipped/.texpadtmp/conclusions-further-research.aux new file mode 100644 index 0000000..77b4e07 --- /dev/null +++ b/Dissertation_unzipped/.texpadtmp/conclusions-further-research.aux @@ -0,0 +1,58 @@ +\relax +\providecommand\hyper@newdestlabel[2]{} +\@writefile{toc}{\contentsline {chapter}{\numberline {10}Conclusions and Further Research}{204}{chapter.10}\protected@file@percent } +\@writefile{lof}{\addvspace {10\p@ }} +\@writefile{lot}{\addvspace {10\p@ }} +\@writefile{toc}{\contentsline {section}{\numberline {10.1}Further operations and further kinds of neural networks}{204}{section.10.1}\protected@file@percent } +\@writefile{toc}{\contentsline {subsection}{\numberline {10.1.1}Mergers and Dropout}{204}{subsection.10.1.1}\protected@file@percent } +\citation{srivastava_dropout_2014} +\@setckpt{conclusions-further-research}{ +\setcounter{page}{206} +\setcounter{equation}{4} +\setcounter{enumi}{4} +\setcounter{enumii}{0} +\setcounter{enumiii}{0} +\setcounter{enumiv}{0} +\setcounter{footnote}{0} +\setcounter{mpfootnote}{0} +\setcounter{part}{3} +\setcounter{chapter}{10} +\setcounter{section}{1} +\setcounter{subsection}{1} +\setcounter{subsubsection}{0} +\setcounter{paragraph}{0} +\setcounter{subparagraph}{0} +\setcounter{figure}{0} +\setcounter{table}{0} +\setcounter{@pps}{0} +\setcounter{@ppsavesec}{0} +\setcounter{@ppsaveapp}{0} +\setcounter{AM@survey}{0} +\setcounter{parentequation}{0} +\setcounter{section@level}{2} +\setcounter{Item}{291} +\setcounter{Hfootnote}{1} +\setcounter{Hy@AnnotLevel}{0} +\setcounter{bookmark@seq@number}{67} +\setcounter{NAT@ctr}{0} +\setcounter{ALG@line}{0} +\setcounter{ALG@rem}{0} +\setcounter{ALG@nested}{0} +\setcounter{ALG@Lnr}{1} +\setcounter{ALG@blocknr}{1} +\setcounter{ALG@storecount}{0} +\setcounter{ALG@tmpcounter}{0} +\setcounter{@stackindex}{0} +\setcounter{ROWcellindex@}{0} +\setcounter{lstnumber}{1} +\setcounter{theorem}{4} +\setcounter{corollary}{0} +\setcounter{lstlisting}{0} +\setcounter{nn@layerindex@counter}{4} +\setcounter{nn@lastlayerstart@counter}{0} +\setcounter{nn@thislayerstart@counter}{1} +\setcounter{nn@lastlayercount@counter}{3} +\setcounter{nn@thislayercount@counter}{2} +\setcounter{nn@lastlayerindex@counter}{2} +\setcounter{nn@thislayerindex@counter}{3} +} diff --git a/Dissertation_unzipped/.texpadtmp/main.aux b/Dissertation_unzipped/.texpadtmp/main.aux new file mode 100644 index 0000000..f31d180 --- /dev/null +++ b/Dissertation_unzipped/.texpadtmp/main.aux @@ -0,0 +1,34 @@ +\relax +\providecommand\hyper@newdestlabel[2]{} +\providecommand\HyperFirstAtBeginDocument{\AtBeginDocument} +\HyperFirstAtBeginDocument{\ifx\hyper@anchor\@undefined +\global\let\oldnewlabel\newlabel +\gdef\newlabel#1#2{\newlabelxx{#1}#2} +\gdef\newlabelxx#1#2#3#4#5#6{\oldnewlabel{#1}{{#2}{#3}}} +\AtEndDocument{\ifx\hyper@anchor\@undefined +\let\newlabel\oldnewlabel +\fi} +\fi} +\global\let\hyper@last\relax +\gdef\HyperFirstAtBeginDocument#1{#1} +\providecommand*\HyPL@Entry[1]{} +\HyPL@Entry{0<>} +\HyPL@Entry{1<>} +\@writefile{toc}{\contentsline {part}{I\hspace {1em}On Convergence of Brownian Motion Monte Carlo}{4}{part.1}\protected@file@percent } +\@input{Introduction.aux} +\@input{Brownian_motion_monte_carlo.aux} +\@input{u_visc_sol.aux} +\@input{brownian_motion_monte_carlo_non_linear_case.aux} +\@writefile{toc}{\contentsline {part}{II\hspace {1em}A Structural Description of Artificial Neural Networks}{66}{part.2}\protected@file@percent } +\@input{neural_network_introduction.aux} +\@input{ann_product.aux} +\@input{modified_mlp_associated_nn.aux} +\@input{ann_first_approximations.aux} +\@writefile{toc}{\contentsline {part}{III\hspace {1em}A deep-learning solution for $u$ and Brownian motions}{184}{part.3}\protected@file@percent } +\@input{ann_rep_brownian_motion_monte_carlo.aux} +\@input{conclusions-further-research.aux} +\citation{*} +\bibdata{Dissertation.bib} +\bibstyle{apa} +\@input{appendices.aux} +\gdef \@abspage@last{230} diff --git a/Dissertation_unzipped/.texpadtmp/main.bbl b/Dissertation_unzipped/.texpadtmp/main.bbl new file mode 100644 index 0000000..e69de29 diff --git a/Dissertation_unzipped/.texpadtmp/main.blg b/Dissertation_unzipped/.texpadtmp/main.blg new file mode 100644 index 0000000..2d01ad6 --- /dev/null +++ b/Dissertation_unzipped/.texpadtmp/main.blg @@ -0,0 +1,62 @@ +This is BibTeX, Version 0.99d (TeX Live 2023) +Capacity: max_strings=200000, hash_size=200000, hash_prime=170003 +The top-level auxiliary file: /Users/shakilrafi/Library/Mobile Documents/com~apple~CloudDocs/Dissertation/.texpadtmp/main.aux +A level-1 auxiliary file: Introduction.aux +A level-1 auxiliary file: Brownian_motion_monte_carlo.aux +A level-1 auxiliary file: u_visc_sol.aux +A level-1 auxiliary file: brownian_motion_monte_carlo_non_linear_case.aux +A level-1 auxiliary file: neural_network_introduction.aux +A level-1 auxiliary file: ann_product.aux +A level-1 auxiliary file: modified_mlp_associated_nn.aux +A level-1 auxiliary file: ann_first_approximations.aux +A level-1 auxiliary file: ann_rep_brownian_motion_monte_carlo.aux +A level-1 auxiliary file: conclusions-further-research.aux +I couldn't open style file apa.bst +---line 32 of file /Users/shakilrafi/Library/Mobile Documents/com~apple~CloudDocs/Dissertation/.texpadtmp/main.aux + : \bibstyle{apa + : } +I'm skipping whatever remains of this command +A level-1 auxiliary file: appendices.aux +I found no style file---while reading file /Users/shakilrafi/Library/Mobile Documents/com~apple~CloudDocs/Dissertation/.texpadtmp/main.aux +You've used 29 entries, + 0 wiz_defined-function locations, + 130 strings with 1473 characters, +and the built_in function-call counts, 0 in all, are: += -- 0 +> -- 0 +< -- 0 ++ -- 0 +- -- 0 +* -- 0 +:= -- 0 +add.period$ -- 0 +call.type$ -- 0 +change.case$ -- 0 +chr.to.int$ -- 0 +cite$ -- 0 +duplicate$ -- 0 +empty$ -- 0 +format.name$ -- 0 +if$ -- 0 +int.to.chr$ -- 0 +int.to.str$ -- 0 +missing$ -- 0 +newline$ -- 0 +num.names$ -- 0 +pop$ -- 0 +preamble$ -- 0 +purify$ -- 0 +quote$ -- 0 +skip$ -- 0 +stack$ -- 0 +substring$ -- 0 +swap$ -- 0 +text.length$ -- 0 +text.prefix$ -- 0 +top$ -- 0 +type$ -- 0 +warning$ -- 0 +while$ -- 0 +width$ -- 0 +write$ -- 0 +(There were 2 error messages) diff --git a/Dissertation_unzipped/.texpadtmp/main.log b/Dissertation_unzipped/.texpadtmp/main.log new file mode 100644 index 0000000..8ebcca8 --- /dev/null +++ b/Dissertation_unzipped/.texpadtmp/main.log @@ -0,0 +1,2708 @@ +This is XeTeX, Version 3.141592653-2.6-0.999995 (TeX Live 2023) (preloaded format=xelatex 2023.9.2) 12 JAN 2024 18:55 +entering extended mode + restricted \write18 enabled. + file:line:error style messages enabled. + %&-line parsing enabled. +**main.tex +(./main.tex +LaTeX2e <2022-11-01> patch level 1 +L3 programming layer <2023-02-22> + +LaTeX Warning: \include should only be used after \begin{document} on input line 1. + +(./preamble.tex (/usr/local/texlive/2023/texmf-dist/tex/latex/base/report.cls +Document Class: report 2022/07/02 v1.4n Standard LaTeX document class +(/usr/local/texlive/2023/texmf-dist/tex/latex/base/size11.clo +File: size11.clo 2022/07/02 v1.4n Standard LaTeX file (size option) +) +\c@part=\count181 +\c@chapter=\count182 +\c@section=\count183 +\c@subsection=\count184 +\c@subsubsection=\count185 +\c@paragraph=\count186 +\c@subparagraph=\count187 +\c@figure=\count188 +\c@table=\count189 +\abovecaptionskip=\skip48 +\belowcaptionskip=\skip49 +\bibindent=\dimen140 +) (/usr/local/texlive/2023/texmf-dist/tex/latex/setspace/setspace.sty +Package: setspace 2022/12/04 v6.7b set line spacing +) (/usr/local/texlive/2023/texmf-dist/tex/latex/appendix/appendix.sty +Package: appendix 2020/02/08 v1.2c extra appendix facilities +\c@@pps=\count190 +\c@@ppsavesec=\count191 +\c@@ppsaveapp=\count192 +) (/usr/local/texlive/2023/texmf-dist/tex/latex/pdfpages/pdfpages.sty +Package: pdfpages 2022/12/19 v0.5x Insert pages of external PDF documents (AM) + (/usr/local/texlive/2023/texmf-dist/tex/latex/base/ifthen.sty +Package: ifthen 2022/04/13 v1.1d Standard LaTeX ifthen package (DPC) +) (/usr/local/texlive/2023/texmf-dist/tex/latex/tools/calc.sty +Package: calc 2017/05/25 v4.3 Infix arithmetic (KKT,FJ) +\calc@Acount=\count193 +\calc@Bcount=\count194 +\calc@Adimen=\dimen141 +\calc@Bdimen=\dimen142 +\calc@Askip=\skip50 +\calc@Bskip=\skip51 +LaTeX Info: Redefining \setlength on input line 80. +LaTeX Info: Redefining \addtolength on input line 81. +\calc@Ccount=\count195 +\calc@Cskip=\skip52 +) (/usr/local/texlive/2023/texmf-dist/tex/latex/eso-pic/eso-pic.sty +Package: eso-pic 2020/10/14 v3.0a eso-pic (RN) +\ESO@tempdima=\dimen143 +\ESO@tempdimb=\dimen144 + (/usr/local/texlive/2023/texmf-dist/tex/latex/graphics/keyval.sty +Package: keyval 2022/05/29 v1.15 key=value parser (DPC) +\KV@toks@=\toks16 +) (/usr/local/texlive/2023/texmf-dist/tex/latex/xcolor/xcolor.sty +Package: xcolor 2022/06/12 v2.14 LaTeX color extensions (UK) + (/usr/local/texlive/2023/texmf-dist/tex/latex/graphics-cfg/color.cfg +File: color.cfg 2016/01/02 v1.6 sample color configuration +) +Package xcolor Info: Driver file: xetex.def on input line 227. + (/usr/local/texlive/2023/texmf-dist/tex/latex/graphics-def/xetex.def +File: xetex.def 2022/09/22 v5.0n Graphics/color driver for xetex +) (/usr/local/texlive/2023/texmf-dist/tex/latex/graphics/mathcolor.ltx) +Package xcolor Info: Model `cmy' substituted by `cmy0' on input line 1353. +Package xcolor Info: Model `RGB' extended on input line 1369. +Package xcolor Info: Model `HTML' substituted by `rgb' on input line 1371. +Package xcolor Info: Model `Hsb' substituted by `hsb' on input line 1372. +Package xcolor Info: Model `tHsb' substituted by `hsb' on input line 1373. +Package xcolor Info: Model `HSB' substituted by `hsb' on input line 1374. +Package xcolor Info: Model `Gray' substituted by `gray' on input line 1375. +Package xcolor Info: Model `wave' substituted by `hsb' on input line 1376. +)) (/usr/local/texlive/2023/texmf-dist/tex/latex/graphics/graphicx.sty +Package: graphicx 2021/09/16 v1.2d Enhanced LaTeX Graphics (DPC,SPQR) + (/usr/local/texlive/2023/texmf-dist/tex/latex/graphics/graphics.sty +Package: graphics 2022/03/10 v1.4e Standard LaTeX Graphics (DPC,SPQR) + (/usr/local/texlive/2023/texmf-dist/tex/latex/graphics/trig.sty +Package: trig 2021/08/11 v1.11 sin cos tan (DPC) +) (/usr/local/texlive/2023/texmf-dist/tex/latex/graphics-cfg/graphics.cfg +File: graphics.cfg 2016/06/04 v1.11 sample graphics configuration +) +Package graphics Info: Driver file: xetex.def on input line 107. +) +\Gin@req@height=\dimen145 +\Gin@req@width=\dimen146 +) +\AM@pagewidth=\dimen147 +\AM@pageheight=\dimen148 +\AM@fboxrule=\dimen149 + (/usr/local/texlive/2023/texmf-dist/tex/latex/pdfpages/ppxetex.def +File: ppxetex.def 2022/12/19 v0.5x Pdfpages driver for XeTeX (AM) +) +\pdfpages@includegraphics@status=\count196 +\AM@pagebox=\box51 +\AM@global@opts=\toks17 +\AM@pagecnt=\count197 +\AM@toc@title=\toks18 +\AM@lof@heading=\toks19 +\c@AM@survey=\count198 +\AM@templatesizebox=\box52 +) (/usr/local/texlive/2023/texmf-dist/tex/latex/amsmath/amsmath.sty +Package: amsmath 2022/04/08 v2.17n AMS math features +\@mathmargin=\skip53 + +For additional information on amsmath, use the `?' option. +(/usr/local/texlive/2023/texmf-dist/tex/latex/amsmath/amstext.sty +Package: amstext 2021/08/26 v2.01 AMS text + (/usr/local/texlive/2023/texmf-dist/tex/latex/amsmath/amsgen.sty +File: amsgen.sty 1999/11/30 v2.0 generic functions +\@emptytoks=\toks20 +\ex@=\dimen150 +)) (/usr/local/texlive/2023/texmf-dist/tex/latex/amsmath/amsbsy.sty +Package: amsbsy 1999/11/29 v1.2d Bold Symbols +\pmbraise@=\dimen151 +) (/usr/local/texlive/2023/texmf-dist/tex/latex/amsmath/amsopn.sty +Package: amsopn 2022/04/08 v2.04 operator names +) +\inf@bad=\count199 +LaTeX Info: Redefining \frac on input line 234. +\uproot@=\count266 +\leftroot@=\count267 +LaTeX Info: Redefining \overline on input line 399. +LaTeX Info: Redefining \colon on input line 410. +\classnum@=\count268 +\DOTSCASE@=\count269 +LaTeX Info: Redefining \ldots on input line 496. +LaTeX Info: Redefining \dots on input line 499. +LaTeX Info: Redefining \cdots on input line 620. +\Mathstrutbox@=\box53 +\strutbox@=\box54 +LaTeX Info: Redefining \big on input line 722. +LaTeX Info: Redefining \Big on input line 723. +LaTeX Info: Redefining \bigg on input line 724. +LaTeX Info: Redefining \Bigg on input line 725. +\big@size=\dimen152 +LaTeX Font Info: Redeclaring font encoding OML on input line 743. +LaTeX Font Info: Redeclaring font encoding OMS on input line 744. +\macc@depth=\count270 +LaTeX Info: Redefining \bmod on input line 905. +LaTeX Info: Redefining \pmod on input line 910. +LaTeX Info: Redefining \smash on input line 940. +LaTeX Info: Redefining \relbar on input line 970. +LaTeX Info: Redefining \Relbar on input line 971. +\c@MaxMatrixCols=\count271 +\dotsspace@=\muskip16 +\c@parentequation=\count272 +\dspbrk@lvl=\count273 +\tag@help=\toks21 +\row@=\count274 +\column@=\count275 +\maxfields@=\count276 +\andhelp@=\toks22 +\eqnshift@=\dimen153 +\alignsep@=\dimen154 +\tagshift@=\dimen155 +\tagwidth@=\dimen156 +\totwidth@=\dimen157 +\lineht@=\dimen158 +\@envbody=\toks23 +\multlinegap=\skip54 +\multlinetaggap=\skip55 +\mathdisplay@stack=\toks24 +LaTeX Info: Redefining \[ on input line 2953. +LaTeX Info: Redefining \] on input line 2954. +) (/usr/local/texlive/2023/texmf-dist/tex/latex/amscls/amsthm.sty +Package: amsthm 2020/05/29 v2.20.6 +\thm@style=\toks25 +\thm@bodyfont=\toks26 +\thm@headfont=\toks27 +\thm@notefont=\toks28 +\thm@headpunct=\toks29 +\thm@preskip=\skip56 +\thm@postskip=\skip57 +\thm@headsep=\skip58 +\dth@everypar=\toks30 +) (/usr/local/texlive/2023/texmf-dist/tex/latex/mathtools/mathtools.sty +Package: mathtools 2022/06/29 v1.29 mathematical typesetting tools + (/usr/local/texlive/2023/texmf-dist/tex/latex/mathtools/mhsetup.sty +Package: mhsetup 2021/03/18 v1.4 programming setup (MH) +) +\g_MT_multlinerow_int=\count277 +\l_MT_multwidth_dim=\dimen159 +\origjot=\skip59 +\l_MT_shortvdotswithinadjustabove_dim=\dimen160 +\l_MT_shortvdotswithinadjustbelow_dim=\dimen161 +\l_MT_above_intertext_sep=\dimen162 +\l_MT_below_intertext_sep=\dimen163 +\l_MT_above_shortintertext_sep=\dimen164 +\l_MT_below_shortintertext_sep=\dimen165 +\xmathstrut@box=\box55 +\xmathstrut@dim=\dimen166 +) (/usr/local/texlive/2023/texmf-dist/tex/latex/amsfonts/amssymb.sty +Package: amssymb 2013/01/14 v3.01 AMS font symbols + (/usr/local/texlive/2023/texmf-dist/tex/latex/amsfonts/amsfonts.sty +Package: amsfonts 2013/01/14 v3.01 Basic AMSFonts support +\symAMSa=\mathgroup4 +\symAMSb=\mathgroup5 +LaTeX Font Info: Redeclaring math symbol \hbar on input line 98. +LaTeX Font Info: Overwriting math alphabet `\mathfrak' in version `bold' +(Font) U/euf/m/n --> U/euf/b/n on input line 106. +)) (/usr/local/texlive/2023/texmf-dist/tex/latex/geometry/geometry.sty +Package: geometry 2020/01/02 v5.9 Page Geometry + (/usr/local/texlive/2023/texmf-dist/tex/generic/iftex/ifvtex.sty +Package: ifvtex 2019/10/25 v1.7 ifvtex legacy package. Use iftex instead. + (/usr/local/texlive/2023/texmf-dist/tex/generic/iftex/iftex.sty +Package: iftex 2022/02/03 v1.0f TeX engine tests +)) +\Gm@cnth=\count278 +\Gm@cntv=\count279 +\c@Gm@tempcnt=\count280 +\Gm@bindingoffset=\dimen167 +\Gm@wd@mp=\dimen168 +\Gm@odd@mp=\dimen169 +\Gm@even@mp=\dimen170 +\Gm@layoutwidth=\dimen171 +\Gm@layoutheight=\dimen172 +\Gm@layouthoffset=\dimen173 +\Gm@layoutvoffset=\dimen174 +\Gm@dimlist=\toks31 +) (/usr/local/texlive/2023/texmf-dist/tex/generic/soul/soul.sty +Package: soul 2023-02-18 v3.0 Permit use of UTF-8 characters in soul (HO) + (/usr/local/texlive/2023/texmf-dist/tex/generic/soul/soul-ori.sty +Package: soul-ori 2023-02-18 v3.0 letterspacing/underlining (mf) +\SOUL@word=\toks32 +\SOUL@lasttoken=\toks33 +\SOUL@syllable=\toks34 +\SOUL@cmds=\toks35 +\SOUL@buffer=\toks36 +\SOUL@token=\toks37 +\SOUL@syllgoal=\dimen175 +\SOUL@syllwidth=\dimen176 +\SOUL@charkern=\dimen177 +\SOUL@hyphkern=\dimen178 +\SOUL@dimen=\dimen179 +\SOUL@dimeni=\dimen180 +\SOUL@minus=\count281 +\SOUL@comma=\count282 +\SOUL@apo=\count283 +\SOUL@grave=\count284 +\SOUL@spaceskip=\skip60 +\SOUL@ttwidth=\dimen181 +\SOUL@uldp=\dimen182 +\SOUL@ulht=\dimen183 +) (/usr/local/texlive/2023/texmf-dist/tex/generic/infwarerr/infwarerr.sty +Package: infwarerr 2019/12/03 v1.5 Providing info/warning/error messages (HO) +) (/usr/local/texlive/2023/texmf-dist/tex/generic/etexcmds/etexcmds.sty +Package: etexcmds 2019/12/15 v1.7 Avoid name clashes with e-TeX commands (HO) +)) (/usr/local/texlive/2023/texmf-dist/tex/latex/bbm-macros/bbm.sty +Package: bbm 1999/03/15 V 1.2 provides fonts for set symbols - TH +LaTeX Font Info: Overwriting math alphabet `\mathbbm' in version `bold' +(Font) U/bbm/m/n --> U/bbm/bx/n on input line 33. +LaTeX Font Info: Overwriting math alphabet `\mathbbmss' in version `bold' +(Font) U/bbmss/m/n --> U/bbmss/bx/n on input line 35. +) (/usr/local/texlive/2023/texmf-dist/tex/latex/cancel/cancel.sty +Package: cancel 2013/04/12 v2.2 Cancel math terms +) (/usr/local/texlive/2023/texmf-dist/tex/latex/enumitem/enumitem.sty +Package: enumitem 2019/06/20 v3.9 Customized lists +\labelindent=\skip61 +\enit@outerparindent=\dimen184 +\enit@toks=\toks38 +\enit@inbox=\box56 +\enit@count@id=\count285 +\enitdp@description=\count286 +) (/usr/local/texlive/2023/texmf-dist/tex/latex/jknapltx/mathrsfs.sty +Package: mathrsfs 1996/01/01 Math RSFS package v1.0 (jk) +\symrsfs=\mathgroup6 +) (/usr/local/texlive/2023/texmf-dist/tex/latex/hyperref/hyperref.sty +Package: hyperref 2023-02-07 v7.00v Hypertext links for LaTeX + (/usr/local/texlive/2023/texmf-dist/tex/generic/ltxcmds/ltxcmds.sty +Package: ltxcmds 2020-05-10 v1.25 LaTeX kernel commands for general use (HO) +) (/usr/local/texlive/2023/texmf-dist/tex/generic/pdftexcmds/pdftexcmds.sty +Package: pdftexcmds 2020-06-27 v0.33 Utility functions of pdfTeX for LuaTeX (HO) +Package pdftexcmds Info: \pdf@primitive is available. +Package pdftexcmds Info: \pdf@ifprimitive is available. +Package pdftexcmds Info: \pdfdraftmode not found. +) (/usr/local/texlive/2023/texmf-dist/tex/latex/kvsetkeys/kvsetkeys.sty +Package: kvsetkeys 2022-10-05 v1.19 Key value parser (HO) +) (/usr/local/texlive/2023/texmf-dist/tex/generic/kvdefinekeys/kvdefinekeys.sty +Package: kvdefinekeys 2019-12-19 v1.6 Define keys (HO) +) (/usr/local/texlive/2023/texmf-dist/tex/generic/pdfescape/pdfescape.sty +Package: pdfescape 2019/12/09 v1.15 Implements pdfTeX's escape features (HO) +) (/usr/local/texlive/2023/texmf-dist/tex/latex/hycolor/hycolor.sty +Package: hycolor 2020-01-27 v1.10 Color options for hyperref/bookmark (HO) +) (/usr/local/texlive/2023/texmf-dist/tex/latex/letltxmacro/letltxmacro.sty +Package: letltxmacro 2019/12/03 v1.6 Let assignment for LaTeX macros (HO) +) (/usr/local/texlive/2023/texmf-dist/tex/latex/auxhook/auxhook.sty +Package: auxhook 2019-12-17 v1.6 Hooks for auxiliary files (HO) +) +(/usr/local/texlive/2023/texmf-dist/tex/latex/hyperref/nameref.sty +Package: nameref 2022-05-17 v2.50 Cross-referencing by name of section + (/usr/local/texlive/2023/texmf-dist/tex/latex/refcount/refcount.sty +Package: refcount 2019/12/15 v3.6 Data extraction from label references (HO) +) (/usr/local/texlive/2023/texmf-dist/tex/generic/gettitlestring/gettitlestring.sty +Package: gettitlestring 2019/12/15 v1.6 Cleanup title references (HO) + (/usr/local/texlive/2023/texmf-dist/tex/latex/kvoptions/kvoptions.sty +Package: kvoptions 2022-06-15 v3.15 Key value format for package options (HO) +)) +\c@section@level=\count287 +) +\@linkdim=\dimen185 +\Hy@linkcounter=\count288 +\Hy@pagecounter=\count289 + (/usr/local/texlive/2023/texmf-dist/tex/latex/hyperref/pd1enc.def +File: pd1enc.def 2023-02-07 v7.00v Hyperref: PDFDocEncoding definition (HO) +) (/usr/local/texlive/2023/texmf-dist/tex/generic/intcalc/intcalc.sty +Package: intcalc 2019/12/15 v1.3 Expandable calculations with integers (HO) +) +\Hy@SavedSpaceFactor=\count290 + (/usr/local/texlive/2023/texmf-dist/tex/latex/hyperref/puenc.def +File: puenc.def 2023-02-07 v7.00v Hyperref: PDF Unicode definition (HO) +) +Package hyperref Info: Hyper figures OFF on input line 4177. +Package hyperref Info: Link nesting OFF on input line 4182. +Package hyperref Info: Hyper index ON on input line 4185. +Package hyperref Info: Plain pages OFF on input line 4192. +Package hyperref Info: Backreferencing OFF on input line 4197. +Package hyperref Info: Implicit mode ON; LaTeX internals redefined. +Package hyperref Info: Bookmarks ON on input line 4425. +\c@Hy@tempcnt=\count291 + (/usr/local/texlive/2023/texmf-dist/tex/latex/url/url.sty +\Urlmuskip=\muskip17 +Package: url 2013/09/16 ver 3.4 Verb mode for urls, etc. +) +LaTeX Info: Redefining \url on input line 4763. +\XeTeXLinkMargin=\dimen186 + (/usr/local/texlive/2023/texmf-dist/tex/generic/bitset/bitset.sty +Package: bitset 2019/12/09 v1.3 Handle bit-vector datatype (HO) + (/usr/local/texlive/2023/texmf-dist/tex/generic/bigintcalc/bigintcalc.sty +Package: bigintcalc 2019/12/15 v1.5 Expandable calculations on big integers (HO) +)) +\Fld@menulength=\count292 +\Field@Width=\dimen187 +\Fld@charsize=\dimen188 +Package hyperref Info: Hyper figures OFF on input line 6042. +Package hyperref Info: Link nesting OFF on input line 6047. +Package hyperref Info: Hyper index ON on input line 6050. +Package hyperref Info: backreferencing OFF on input line 6057. +Package hyperref Info: Link coloring OFF on input line 6062. +Package hyperref Info: Link coloring with OCG OFF on input line 6067. +Package hyperref Info: PDF/A mode OFF on input line 6072. + (/usr/local/texlive/2023/texmf-dist/tex/latex/base/atbegshi-ltx.sty +Package: atbegshi-ltx 2021/01/10 v1.0c Emulation of the original atbegshi +package with kernel methods +) +\Hy@abspage=\count293 +\c@Item=\count294 +\c@Hfootnote=\count295 +) +Package hyperref Info: Driver (autodetected): hxetex. + (/usr/local/texlive/2023/texmf-dist/tex/latex/hyperref/hxetex.def +File: hxetex.def 2023-02-07 v7.00v Hyperref driver for XeTeX + (/usr/local/texlive/2023/texmf-dist/tex/generic/stringenc/stringenc.sty +Package: stringenc 2019/11/29 v1.12 Convert strings between diff. encodings (HO) +) +\pdfm@box=\box57 +\c@Hy@AnnotLevel=\count296 +\HyField@AnnotCount=\count297 +\Fld@listcount=\count298 +\c@bookmark@seq@number=\count299 + (/usr/local/texlive/2023/texmf-dist/tex/latex/rerunfilecheck/rerunfilecheck.sty +Package: rerunfilecheck 2022-07-10 v1.10 Rerun checks for auxiliary files (HO) + (/usr/local/texlive/2023/texmf-dist/tex/latex/base/atveryend-ltx.sty +Package: atveryend-ltx 2020/08/19 v1.0a Emulation of the original atveryend package +with kernel methods +) (/usr/local/texlive/2023/texmf-dist/tex/generic/uniquecounter/uniquecounter.sty +Package: uniquecounter 2019/12/15 v1.4 Provide unlimited unique counter (HO) +) +Package uniquecounter Info: New unique counter `rerunfilecheck' on input line 285. +) +\Hy@SectionHShift=\skip62 +) +Package hyperref Info: Option `colorlinks' set `true' on input line 28. + (/usr/local/texlive/2023/texmf-dist/tex/latex/cleveref/cleveref.sty +Package: cleveref 2018/03/27 v0.21.4 Intelligent cross-referencing +Package cleveref Info: `hyperref' support loaded on input line 2370. +LaTeX Info: Redefining \cref on input line 2370. +LaTeX Info: Redefining \Cref on input line 2370. +LaTeX Info: Redefining \crefrange on input line 2370. +LaTeX Info: Redefining \Crefrange on input line 2370. +LaTeX Info: Redefining \cpageref on input line 2370. +LaTeX Info: Redefining \Cpageref on input line 2370. +LaTeX Info: Redefining \cpagerefrange on input line 2370. +LaTeX Info: Redefining \Cpagerefrange on input line 2370. +LaTeX Info: Redefining \labelcref on input line 2370. +LaTeX Info: Redefining \labelcpageref on input line 2370. +Package cleveref Info: `amsthm' support loaded on input line 3026. +Package cleveref Info: always capitalise cross-reference names on input line 7825. +Package cleveref Info: always capitalise cross-reference names on input line 7852. +) (/usr/local/texlive/2023/texmf-dist/tex/latex/natbib/natbib.sty +Package: natbib 2010/09/13 8.31b (PWD, AO) +\bibhang=\skip63 +\bibsep=\skip64 +LaTeX Info: Redefining \cite on input line 694. +\c@NAT@ctr=\count300 +) (/usr/local/texlive/2023/texmf-dist/tex/latex/neuralnetwork/neuralnetwork.sty +Package: neuralnetwork 2013/07/18 v1.0 Neural network diagrams, Mark Kuckian Cowan, mark@battlesnake.co.uk + (/usr/local/texlive/2023/texmf-dist/tex/latex/environ/environ.sty +Package: environ 2014/05/04 v0.3 A new way to define environments + (/usr/local/texlive/2023/texmf-dist/tex/latex/trimspaces/trimspaces.sty +Package: trimspaces 2009/09/17 v1.1 Trim spaces around a token list +)) (/usr/local/texlive/2023/texmf-dist/tex/latex/etoolbox/etoolbox.sty +Package: etoolbox 2020/10/05 v2.5k e-TeX tools for LaTeX (JAW) +\etb@tempcnta=\count301 +) (/usr/local/texlive/2023/texmf-dist/tex/latex/xkeyval/xkeyval.sty +Package: xkeyval 2022/06/16 v2.9 package option processing (HA) + (/usr/local/texlive/2023/texmf-dist/tex/generic/xkeyval/xkeyval.tex (/usr/local/texlive/2023/texmf-dist/tex/generic/xkeyval/xkvutils.tex +\XKV@toks=\toks39 +\XKV@tempa@toks=\toks40 +) +\XKV@depth=\count302 +File: xkeyval.tex 2014/12/03 v2.7a key=value parser (HA) +)) (/usr/local/texlive/2023/texmf-dist/tex/latex/pgf/frontendlayer/tikz.sty (/usr/local/texlive/2023/texmf-dist/tex/latex/pgf/basiclayer/pgf.sty (/usr/local/texlive/2023/texmf-dist/tex/latex/pgf/utilities/pgfrcs.sty +(/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/utilities/pgfutil-common.tex +\pgfutil@everybye=\toks41 +\pgfutil@tempdima=\dimen189 +\pgfutil@tempdimb=\dimen190 +) (/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/utilities/pgfutil-latex.def +\pgfutil@abb=\box58 +) (/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/utilities/pgfrcs.code.tex (/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/pgf.revision.tex) +Package: pgfrcs 2023-01-15 v3.1.10 (3.1.10) +)) +Package: pgf 2023-01-15 v3.1.10 (3.1.10) + (/usr/local/texlive/2023/texmf-dist/tex/latex/pgf/basiclayer/pgfcore.sty (/usr/local/texlive/2023/texmf-dist/tex/latex/pgf/systemlayer/pgfsys.sty (/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/systemlayer/pgfsys.code.tex +Package: pgfsys 2023-01-15 v3.1.10 (3.1.10) + (/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/utilities/pgfkeys.code.tex +\pgfkeys@pathtoks=\toks42 +\pgfkeys@temptoks=\toks43 + (/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/utilities/pgfkeyslibraryfiltered.code.tex +\pgfkeys@tmptoks=\toks44 +)) +\pgf@x=\dimen191 +\pgf@y=\dimen192 +\pgf@xa=\dimen193 +\pgf@ya=\dimen194 +\pgf@xb=\dimen195 +\pgf@yb=\dimen196 +\pgf@xc=\dimen197 +\pgf@yc=\dimen198 +\pgf@xd=\dimen199 +\pgf@yd=\dimen256 +\w@pgf@writea=\write3 +\r@pgf@reada=\read2 +\c@pgf@counta=\count303 +\c@pgf@countb=\count304 +\c@pgf@countc=\count305 +\c@pgf@countd=\count306 +\t@pgf@toka=\toks45 +\t@pgf@tokb=\toks46 +\t@pgf@tokc=\toks47 +\pgf@sys@id@count=\count307 + (/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/systemlayer/pgf.cfg +File: pgf.cfg 2023-01-15 v3.1.10 (3.1.10) +) +Driver file for pgf: pgfsys-xetex.def + (/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-xetex.def +File: pgfsys-xetex.def 2023-01-15 v3.1.10 (3.1.10) + (/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-dvipdfmx.def +File: pgfsys-dvipdfmx.def 2023-01-15 v3.1.10 (3.1.10) + (/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-common-pdf.def +File: pgfsys-common-pdf.def 2023-01-15 v3.1.10 (3.1.10) +) +\pgfsys@objnum=\count308 +))) (/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/systemlayer/pgfsyssoftpath.code.tex +File: pgfsyssoftpath.code.tex 2023-01-15 v3.1.10 (3.1.10) +\pgfsyssoftpath@smallbuffer@items=\count309 +\pgfsyssoftpath@bigbuffer@items=\count310 +) (/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/systemlayer/pgfsysprotocol.code.tex +File: pgfsysprotocol.code.tex 2023-01-15 v3.1.10 (3.1.10) +)) (/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/basiclayer/pgfcore.code.tex +Package: pgfcore 2023-01-15 v3.1.10 (3.1.10) + (/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/math/pgfmath.code.tex (/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/math/pgfmathutil.code.tex) (/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/math/pgfmathparser.code.tex +\pgfmath@dimen=\dimen257 +\pgfmath@count=\count311 +\pgfmath@box=\box59 +\pgfmath@toks=\toks48 +\pgfmath@stack@operand=\toks49 +\pgfmath@stack@operation=\toks50 +) (/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.code.tex) (/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.basic.code.tex) (/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.trigonometric.code.tex) (/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.random.code.tex) (/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.comparison.code.tex) +(/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.base.code.tex) (/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.round.code.tex) (/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.misc.code.tex) (/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.integerarithmetics.code.tex) (/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/math/pgfmathcalc.code.tex) (/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/math/pgfmathfloat.code.tex +\c@pgfmathroundto@lastzeros=\count312 +)) (/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/math/pgfint.code.tex) (/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/basiclayer/pgfcorepoints.code.tex +File: pgfcorepoints.code.tex 2023-01-15 v3.1.10 (3.1.10) +\pgf@picminx=\dimen258 +\pgf@picmaxx=\dimen259 +\pgf@picminy=\dimen260 +\pgf@picmaxy=\dimen261 +\pgf@pathminx=\dimen262 +\pgf@pathmaxx=\dimen263 +\pgf@pathminy=\dimen264 +\pgf@pathmaxy=\dimen265 +\pgf@xx=\dimen266 +\pgf@xy=\dimen267 +\pgf@yx=\dimen268 +\pgf@yy=\dimen269 +\pgf@zx=\dimen270 +\pgf@zy=\dimen271 +) (/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/basiclayer/pgfcorepathconstruct.code.tex +File: pgfcorepathconstruct.code.tex 2023-01-15 v3.1.10 (3.1.10) +\pgf@path@lastx=\dimen272 +\pgf@path@lasty=\dimen273 +) (/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/basiclayer/pgfcorepathusage.code.tex +File: pgfcorepathusage.code.tex 2023-01-15 v3.1.10 (3.1.10) +\pgf@shorten@end@additional=\dimen274 +\pgf@shorten@start@additional=\dimen275 +) (/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/basiclayer/pgfcorescopes.code.tex +File: pgfcorescopes.code.tex 2023-01-15 v3.1.10 (3.1.10) +\pgfpic=\box60 +\pgf@hbox=\box61 +\pgf@layerbox@main=\box62 +\pgf@picture@serial@count=\count313 +) (/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/basiclayer/pgfcoregraphicstate.code.tex +File: pgfcoregraphicstate.code.tex 2023-01-15 v3.1.10 (3.1.10) +\pgflinewidth=\dimen276 +) (/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/basiclayer/pgfcoretransformations.code.tex +File: pgfcoretransformations.code.tex 2023-01-15 v3.1.10 (3.1.10) +\pgf@pt@x=\dimen277 +\pgf@pt@y=\dimen278 +\pgf@pt@temp=\dimen279 +) (/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/basiclayer/pgfcorequick.code.tex +File: pgfcorequick.code.tex 2023-01-15 v3.1.10 (3.1.10) +) (/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/basiclayer/pgfcoreobjects.code.tex +File: pgfcoreobjects.code.tex 2023-01-15 v3.1.10 (3.1.10) +) (/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/basiclayer/pgfcorepathprocessing.code.tex +File: pgfcorepathprocessing.code.tex 2023-01-15 v3.1.10 (3.1.10) +) (/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/basiclayer/pgfcorearrows.code.tex +File: pgfcorearrows.code.tex 2023-01-15 v3.1.10 (3.1.10) +\pgfarrowsep=\dimen280 +) (/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/basiclayer/pgfcoreshade.code.tex +File: pgfcoreshade.code.tex 2023-01-15 v3.1.10 (3.1.10) +\pgf@max=\dimen281 +\pgf@sys@shading@range@num=\count314 +\pgf@shadingcount=\count315 +) (/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/basiclayer/pgfcoreimage.code.tex +File: pgfcoreimage.code.tex 2023-01-15 v3.1.10 (3.1.10) +) (/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/basiclayer/pgfcoreexternal.code.tex +File: pgfcoreexternal.code.tex 2023-01-15 v3.1.10 (3.1.10) +\pgfexternal@startupbox=\box63 +) (/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/basiclayer/pgfcorelayers.code.tex +File: pgfcorelayers.code.tex 2023-01-15 v3.1.10 (3.1.10) +) (/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/basiclayer/pgfcoretransparency.code.tex +File: pgfcoretransparency.code.tex 2023-01-15 v3.1.10 (3.1.10) +) (/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/basiclayer/pgfcorepatterns.code.tex +File: pgfcorepatterns.code.tex 2023-01-15 v3.1.10 (3.1.10) +) +(/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/basiclayer/pgfcorerdf.code.tex +File: pgfcorerdf.code.tex 2023-01-15 v3.1.10 (3.1.10) +))) (/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/modules/pgfmoduleshapes.code.tex +File: pgfmoduleshapes.code.tex 2023-01-15 v3.1.10 (3.1.10) +\pgfnodeparttextbox=\box64 +) (/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/modules/pgfmoduleplot.code.tex +File: pgfmoduleplot.code.tex 2023-01-15 v3.1.10 (3.1.10) +) (/usr/local/texlive/2023/texmf-dist/tex/latex/pgf/compatibility/pgfcomp-version-0-65.sty +Package: pgfcomp-version-0-65 2023-01-15 v3.1.10 (3.1.10) +\pgf@nodesepstart=\dimen282 +\pgf@nodesepend=\dimen283 +) (/usr/local/texlive/2023/texmf-dist/tex/latex/pgf/compatibility/pgfcomp-version-1-18.sty +Package: pgfcomp-version-1-18 2023-01-15 v3.1.10 (3.1.10) +)) (/usr/local/texlive/2023/texmf-dist/tex/latex/pgf/utilities/pgffor.sty (/usr/local/texlive/2023/texmf-dist/tex/latex/pgf/utilities/pgfkeys.sty (/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/utilities/pgfkeys.code.tex)) (/usr/local/texlive/2023/texmf-dist/tex/latex/pgf/math/pgfmath.sty (/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/math/pgfmath.code.tex)) (/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/utilities/pgffor.code.tex +Package: pgffor 2023-01-15 v3.1.10 (3.1.10) +\pgffor@iter=\dimen284 +\pgffor@skip=\dimen285 +\pgffor@stack=\toks51 +\pgffor@toks=\toks52 +)) (/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/frontendlayer/tikz/tikz.code.tex +Package: tikz 2023-01-15 v3.1.10 (3.1.10) + (/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/libraries/pgflibraryplothandlers.code.tex +File: pgflibraryplothandlers.code.tex 2023-01-15 v3.1.10 (3.1.10) +\pgf@plot@mark@count=\count316 +\pgfplotmarksize=\dimen286 +) +\tikz@lastx=\dimen287 +\tikz@lasty=\dimen288 +\tikz@lastxsaved=\dimen289 +\tikz@lastysaved=\dimen290 +\tikz@lastmovetox=\dimen291 +\tikz@lastmovetoy=\dimen292 +\tikzleveldistance=\dimen293 +\tikzsiblingdistance=\dimen294 +\tikz@figbox=\box65 +\tikz@figbox@bg=\box66 +\tikz@tempbox=\box67 +\tikz@tempbox@bg=\box68 +\tikztreelevel=\count317 +\tikznumberofchildren=\count318 +\tikznumberofcurrentchild=\count319 +\tikz@fig@count=\count320 + (/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/modules/pgfmodulematrix.code.tex +File: pgfmodulematrix.code.tex 2023-01-15 v3.1.10 (3.1.10) +\pgfmatrixcurrentrow=\count321 +\pgfmatrixcurrentcolumn=\count322 +\pgf@matrix@numberofcolumns=\count323 +) +\tikz@expandcount=\count324 + (/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarytopaths.code.tex +File: tikzlibrarytopaths.code.tex 2023-01-15 v3.1.10 (3.1.10) +))) (/usr/local/texlive/2023/texmf-dist/tex/latex/algorithmicx/algorithmicx.sty +Package: algorithmicx 2005/04/27 v1.2 Algorithmicx + +Document Style algorithmicx 1.2 - a greatly improved `algorithmic' style +\c@ALG@line=\count325 +\c@ALG@rem=\count326 +\c@ALG@nested=\count327 +\ALG@tlm=\skip65 +\ALG@thistlm=\skip66 +\c@ALG@Lnr=\count328 +\c@ALG@blocknr=\count329 +\c@ALG@storecount=\count330 +\c@ALG@tmpcounter=\count331 +\ALG@tmplength=\skip67 +) (/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.code.tex +File: tikzlibraryshapes.code.tex 2023-01-15 v3.1.10 (3.1.10) + (/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.geometric.code.tex +File: tikzlibraryshapes.geometric.code.tex 2023-01-15 v3.1.10 (3.1.10) + (/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/libraries/shapes/pgflibraryshapes.geometric.code.tex +File: pgflibraryshapes.geometric.code.tex 2023-01-15 v3.1.10 (3.1.10) +)) (/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.misc.code.tex +File: tikzlibraryshapes.misc.code.tex 2023-01-15 v3.1.10 (3.1.10) + (/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/libraries/shapes/pgflibraryshapes.misc.code.tex +File: pgflibraryshapes.misc.code.tex 2023-01-15 v3.1.10 (3.1.10) +)) (/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.symbols.code.tex +File: tikzlibraryshapes.symbols.code.tex 2023-01-15 v3.1.10 (3.1.10) + (/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/libraries/shapes/pgflibraryshapes.symbols.code.tex +File: pgflibraryshapes.symbols.code.tex 2023-01-15 v3.1.10 (3.1.10) +)) (/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.arrows.code.tex +File: tikzlibraryshapes.arrows.code.tex 2023-01-15 v3.1.10 (3.1.10) + (/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/libraries/shapes/pgflibraryshapes.arrows.code.tex +File: pgflibraryshapes.arrows.code.tex 2023-01-15 v3.1.10 (3.1.10) +)) (/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.callouts.code.tex (/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/libraries/shapes/pgflibraryshapes.callouts.code.tex)) (/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.multipart.code.tex +File: tikzlibraryshapes.multipart.code.tex 2023-01-15 v3.1.10 (3.1.10) + (/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/libraries/shapes/pgflibraryshapes.multipart.code.tex +File: pgflibraryshapes.multipart.code.tex 2023-01-15 v3.1.10 (3.1.10) +\pgfnodepartlowerbox=\box69 +\pgfnodeparttwobox=\box70 +\pgfnodepartthreebox=\box71 +\pgfnodepartfourbox=\box72 +\pgfnodeparttwentybox=\box73 +\pgfnodepartnineteenbox=\box74 +\pgfnodeparteighteenbox=\box75 +\pgfnodepartseventeenbox=\box76 +\pgfnodepartsixteenbox=\box77 +\pgfnodepartfifteenbox=\box78 +\pgfnodepartfourteenbox=\box79 +\pgfnodepartthirteenbox=\box80 +\pgfnodeparttwelvebox=\box81 +\pgfnodepartelevenbox=\box82 +\pgfnodeparttenbox=\box83 +\pgfnodepartninebox=\box84 +\pgfnodeparteightbox=\box85 +\pgfnodepartsevenbox=\box86 +\pgfnodepartsixbox=\box87 +\pgfnodepartfivebox=\box88 +)))) (/usr/local/texlive/2023/texmf-dist/tex/generic/witharrows/witharrows.sty (/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/libraries/pgflibraryarrows.meta.code.tex +File: pgflibraryarrows.meta.code.tex 2023-01-15 v3.1.10 (3.1.10) +\pgfarrowinset=\dimen295 +\pgfarrowlength=\dimen296 +\pgfarrowwidth=\dimen297 +\pgfarrowlinewidth=\dimen298 +) (/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarybending.code.tex +File: tikzlibrarybending.code.tex 2023-01-15 v3.1.10 (3.1.10) + (/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/modules/pgfmodulebending.code.tex +File: pgfmodulebending.code.tex 2023-01-15 v3.1.10 (3.1.10) + (/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/modules/pgfmodulenonlineartransformations.code.tex +File: pgfmodulenonlineartransformations.code.tex 2023-01-15 v3.1.10 (3.1.10) +\pgftransformnonlinearflatness=\dimen299 +) (/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/libraries/pgflibrarycurvilinear.code.tex +File: pgflibrarycurvilinear.code.tex 2023-01-15 v3.1.10 (3.1.10) +\pgf@curvilinear@time@a=\dimen300 +\pgf@curvilinear@length@a=\dimen301 +\pgf@curvilinear@length@b=\dimen302 +\pgf@curvilinear@length@c=\dimen303 +\pgf@curvilinear@length@d=\dimen304 +) +\pgf@arrows@the@rigidity=\dimen305 +)) +(/usr/local/texlive/2023/texmf-dist/tex/latex/l3packages/l3keys2e/l3keys2e.sty (/usr/local/texlive/2023/texmf-dist/tex/latex/l3kernel/expl3.sty +Package: expl3 2023-02-22 L3 programming layer (loader) + (/usr/local/texlive/2023/texmf-dist/tex/latex/l3backend/l3backend-xetex.def +File: l3backend-xetex.def 2023-01-16 L3 backend support: XeTeX +\g__graphics_track_int=\count332 +\l__pdf_internal_box=\box89 +\g__pdf_backend_object_int=\count333 +\g__pdf_backend_annotation_int=\count334 +\g__pdf_backend_link_int=\count335 +)) +Package: l3keys2e 2023-02-02 LaTeX2e option processing using LaTeX3 keys +) +Package: witharrows 2023/02/14 v2.8a Draws arrows for explanations on the right + (/usr/local/texlive/2023/texmf-dist/tex/latex/varwidth/varwidth.sty +Package: varwidth 2009/03/30 ver 0.92; Variable-width minipages +\@vwid@box=\box90 +\sift@deathcycles=\count336 +\@vwid@loff=\dimen306 +\@vwid@roff=\dimen307 +) +\g__witharrows_last_env_int=\count337 +\l__witharrows_pos_env_int=\count338 +\l__witharrows_pos_arrow_int=\count339 +\g__witharrows_arrow_int=\count340 +\g__witharrows_line_int=\count341 +\g__witharrows_col_int=\count342 +\g__witharrows_static_col_int=\count343 +\l__witharrows_nb_cols_int=\count344 +\l__witharrows_arrow_width_dim=\dimen308 +\l__witharrows_up_and_down_radius_dim=\dimen309 +\l__witharrows_xoffset_for_o_arrows_dim=\dimen310 +\l__witharrows_max_length_of_arrow_dim=\dimen311 +\l__witharrows_ygap_dim=\dimen312 +\l__witharrows_ystart_dim=\dimen313 +\l__witharrows_xoffset_dim=\dimen314 +\l__witharrows_interline_skip=\skip68 +\l__witharrows_start_adjust_dim=\dimen315 +\l__witharrows_end_adjust_dim=\dimen316 +\l__witharrows_mathindent_skip=\skip69 +) (/usr/local/texlive/2023/texmf-dist/tex/latex/stmaryrd/stmaryrd.sty +Package: stmaryrd 1994/03/03 St Mary's Road symbol package +\symstmry=\mathgroup7 +LaTeX Font Info: Overwriting symbol font `stmry' in version `bold' +(Font) U/stmry/m/n --> U/stmry/b/n on input line 89. +) (/usr/local/texlive/2023/texmf-dist/tex/latex/stackengine/stackengine.sty +Package: stackengine 2021/07/22 v4.11\ Stacking text and objects in convenient ways + (/usr/local/texlive/2023/texmf-dist/tex/generic/listofitems/listofitems.sty (/usr/local/texlive/2023/texmf-dist/tex/generic/listofitems/listofitems.tex +Invalid UTF-8 byte or sequence at line 50 replaced by U+FFFD. +Invalid UTF-8 byte or sequence at line 50 replaced by U+FFFD. +Invalid UTF-8 byte or sequence at line 52 replaced by U+FFFD. +Invalid UTF-8 byte or sequence at line 52 replaced by U+FFFD. +Invalid UTF-8 byte or sequence at line 52 replaced by U+FFFD. +Invalid UTF-8 byte or sequence at line 96 replaced by U+FFFD. +Invalid UTF-8 byte or sequence at line 96 replaced by U+FFFD. +Invalid UTF-8 byte or sequence at line 104 replaced by U+FFFD. +Invalid UTF-8 byte or sequence at line 105 replaced by U+FFFD. +\loi_cnt_foreach_nest=\count345 +Invalid UTF-8 byte or sequence at line 139 replaced by U+FFFD. +Invalid UTF-8 byte or sequence at line 146 replaced by U+FFFD. +Invalid UTF-8 byte or sequence at line 192 replaced by U+FFFD. +Invalid UTF-8 byte or sequence at line 209 replaced by U+FFFD. +Invalid UTF-8 byte or sequence at line 209 replaced by U+FFFD. +Invalid UTF-8 byte or sequence at line 222 replaced by U+FFFD. +Invalid UTF-8 byte or sequence at line 222 replaced by U+FFFD. +Invalid UTF-8 byte or sequence at line 223 replaced by U+FFFD. +Invalid UTF-8 byte or sequence at line 223 replaced by U+FFFD. +Invalid UTF-8 byte or sequence at line 224 replaced by U+FFFD. +Invalid UTF-8 byte or sequence at line 226 replaced by U+FFFD. +Invalid UTF-8 byte or sequence at line 226 replaced by U+FFFD. +Invalid UTF-8 byte or sequence at line 238 replaced by U+FFFD. +Invalid UTF-8 byte or sequence at line 243 replaced by U+FFFD. +Invalid UTF-8 byte or sequence at line 243 replaced by U+FFFD. +Invalid UTF-8 byte or sequence at line 260 replaced by U+FFFD. +Invalid UTF-8 byte or sequence at line 284 replaced by U+FFFD. +Invalid UTF-8 byte or sequence at line 310 replaced by U+FFFD. +Invalid UTF-8 byte or sequence at line 310 replaced by U+FFFD. +Invalid UTF-8 byte or sequence at line 324 replaced by U+FFFD. +Invalid UTF-8 byte or sequence at line 337 replaced by U+FFFD. +Invalid UTF-8 byte or sequence at line 337 replaced by U+FFFD. +Invalid UTF-8 byte or sequence at line 339 replaced by U+FFFD. +Invalid UTF-8 byte or sequence at line 350 replaced by U+FFFD. +Invalid UTF-8 byte or sequence at line 350 replaced by U+FFFD. +Invalid UTF-8 byte or sequence at line 350 replaced by U+FFFD. +Invalid UTF-8 byte or sequence at line 354 replaced by U+FFFD. +\loi_nestcnt=\count346 +Invalid UTF-8 byte or sequence at line 367 replaced by U+FFFD. +Invalid UTF-8 byte or sequence at line 367 replaced by U+FFFD. +Invalid UTF-8 byte or sequence at line 367 replaced by U+FFFD. +Invalid UTF-8 byte or sequence at line 367 replaced by U+FFFD. +Invalid UTF-8 byte or sequence at line 375 replaced by U+FFFD. +Invalid UTF-8 byte or sequence at line 375 replaced by U+FFFD. +Invalid UTF-8 byte or sequence at line 375 replaced by U+FFFD. +Invalid UTF-8 byte or sequence at line 375 replaced by U+FFFD. +Invalid UTF-8 byte or sequence at line 377 replaced by U+FFFD. +Invalid UTF-8 byte or sequence at line 378 replaced by U+FFFD. +Invalid UTF-8 byte or sequence at line 398 replaced by U+FFFD. +Invalid UTF-8 byte or sequence at line 398 replaced by U+FFFD. +Invalid UTF-8 byte or sequence at line 399 replaced by U+FFFD. +Invalid UTF-8 byte or sequence at line 399 replaced by U+FFFD. +Invalid UTF-8 byte or sequence at line 399 replaced by U+FFFD. +Invalid UTF-8 byte or sequence at line 399 replaced by U+FFFD. +Invalid UTF-8 byte or sequence at line 399 replaced by U+FFFD. +Invalid UTF-8 byte or sequence at line 399 replaced by U+FFFD. +Invalid UTF-8 byte or sequence at line 409 replaced by U+FFFD. +Invalid UTF-8 byte or sequence at line 410 replaced by U+FFFD. +Invalid UTF-8 byte or sequence at line 410 replaced by U+FFFD. +Invalid UTF-8 byte or sequence at line 410 replaced by U+FFFD. +Invalid UTF-8 byte or sequence at line 410 replaced by U+FFFD. +Invalid UTF-8 byte or sequence at line 411 replaced by U+FFFD. +Invalid UTF-8 byte or sequence at line 411 replaced by U+FFFD. +Invalid UTF-8 byte or sequence at line 411 replaced by U+FFFD. +Invalid UTF-8 byte or sequence at line 411 replaced by U+FFFD. +Invalid UTF-8 byte or sequence at line 411 replaced by U+FFFD. +Invalid UTF-8 byte or sequence at line 411 replaced by U+FFFD. +Invalid UTF-8 byte or sequence at line 414 replaced by U+FFFD. +Invalid UTF-8 byte or sequence at line 422 replaced by U+FFFD. +Invalid UTF-8 byte or sequence at line 422 replaced by U+FFFD. +Invalid UTF-8 byte or sequence at line 426 replaced by U+FFFD. +Invalid UTF-8 byte or sequence at line 428 replaced by U+FFFD. +Invalid UTF-8 byte or sequence at line 433 replaced by U+FFFD. +Invalid UTF-8 byte or sequence at line 433 replaced by U+FFFD. +Invalid UTF-8 byte or sequence at line 441 replaced by U+FFFD. +Invalid UTF-8 byte or sequence at line 441 replaced by U+FFFD. +Invalid UTF-8 byte or sequence at line 442 replaced by U+FFFD. +Invalid UTF-8 byte or sequence at line 443 replaced by U+FFFD. +Invalid UTF-8 byte or sequence at line 443 replaced by U+FFFD. +Invalid UTF-8 byte or sequence at line 443 replaced by U+FFFD. +Invalid UTF-8 byte or sequence at line 446 replaced by U+FFFD. +Invalid UTF-8 byte or sequence at line 446 replaced by U+FFFD. +Invalid UTF-8 byte or sequence at line 446 replaced by U+FFFD. +Invalid UTF-8 byte or sequence at line 448 replaced by U+FFFD. +Invalid UTF-8 byte or sequence at line 448 replaced by U+FFFD. +Invalid UTF-8 byte or sequence at line 451 replaced by U+FFFD. +Invalid UTF-8 byte or sequence at line 455 replaced by U+FFFD. +Invalid UTF-8 byte or sequence at line 455 replaced by U+FFFD. +Invalid UTF-8 byte or sequence at line 458 replaced by U+FFFD. +Invalid UTF-8 byte or sequence at line 458 replaced by U+FFFD. +Invalid UTF-8 byte or sequence at line 472 replaced by U+FFFD. +Invalid UTF-8 byte or sequence at line 475 replaced by U+FFFD. +Invalid UTF-8 byte or sequence at line 492 replaced by U+FFFD. +Invalid UTF-8 byte or sequence at line 508 replaced by U+FFFD. +Invalid UTF-8 byte or sequence at line 508 replaced by U+FFFD. +Invalid UTF-8 byte or sequence at line 509 replaced by U+FFFD. +Invalid UTF-8 byte or sequence at line 509 replaced by U+FFFD. +Invalid UTF-8 byte or sequence at line 519 replaced by U+FFFD. +Invalid UTF-8 byte or sequence at line 541 replaced by U+FFFD. +Invalid UTF-8 byte or sequence at line 541 replaced by U+FFFD. +) +Package: listofitems 2019/08/21 v1.63 Grab items in lists using user-specified sep char (CT) +) +\c@@stackindex=\count347 +\@boxshift=\skip70 +\stack@tmplength=\skip71 +\temp@stkl=\skip72 +\@stackedboxwidth=\skip73 +\@addedbox=\box91 +\@anchorbox=\box92 +\@insetbox=\box93 +\se@backgroundbox=\box94 +\stackedbox=\box95 +\@centerbox=\box96 +\c@ROWcellindex@=\count348 +) (/usr/local/texlive/2023/texmf-dist/tex/latex/listings/listings.sty +\lst@mode=\count349 +\lst@gtempboxa=\box97 +\lst@token=\toks53 +\lst@length=\count350 +\lst@currlwidth=\dimen317 +\lst@column=\count351 +\lst@pos=\count352 +\lst@lostspace=\dimen318 +\lst@width=\dimen319 +\lst@newlines=\count353 +\lst@lineno=\count354 +\lst@maxwidth=\dimen320 + (/usr/local/texlive/2023/texmf-dist/tex/latex/listings/lstmisc.sty +File: lstmisc.sty 2023/02/27 1.9 (Carsten Heinz) +\c@lstnumber=\count355 +\lst@skipnumbers=\count356 +\lst@framebox=\box98 +) (/usr/local/texlive/2023/texmf-dist/tex/latex/listings/listings.cfg +File: listings.cfg 2023/02/27 1.9 listings configuration +)) +Package: listings 2023/02/27 1.9 (Carsten Heinz) + (/usr/local/texlive/2023/texmf-dist/tex/latex/fontspec/fontspec.sty (/usr/local/texlive/2023/texmf-dist/tex/latex/l3packages/xparse/xparse.sty +Package: xparse 2023-02-02 L3 Experimental document command parser +) +Package: fontspec 2022/01/15 v2.8a Font selection for XeLaTeX and LuaLaTeX + (/usr/local/texlive/2023/texmf-dist/tex/latex/fontspec/fontspec-xetex.sty +Package: fontspec-xetex 2022/01/15 v2.8a Font selection for XeLaTeX and LuaLaTeX +\l__fontspec_script_int=\count357 +\l__fontspec_language_int=\count358 +\l__fontspec_strnum_int=\count359 +\l__fontspec_tmp_int=\count360 +\l__fontspec_tmpa_int=\count361 +\l__fontspec_tmpb_int=\count362 +\l__fontspec_tmpc_int=\count363 +\l__fontspec_em_int=\count364 +\l__fontspec_emdef_int=\count365 +\l__fontspec_strong_int=\count366 +\l__fontspec_strongdef_int=\count367 +\l__fontspec_tmpa_dim=\dimen321 +\l__fontspec_tmpb_dim=\dimen322 +\l__fontspec_tmpc_dim=\dimen323 + (/usr/local/texlive/2023/texmf-dist/tex/latex/base/fontenc.sty +Package: fontenc 2021/04/29 v2.0v Standard LaTeX package +) (/usr/local/texlive/2023/texmf-dist/tex/latex/fontspec/fontspec.cfg))) + +Package fontspec Info: Could not resolve font "Fira Code/I" (it probably +(fontspec) doesn't exist). + + +Package fontspec Info: Font family 'FiraCode(0)' created for font 'Fira Code' +(fontspec) with options +(fontspec) [WordSpace={1,0,0},HyphenChar=None,PunctuationSpace=WordSpace]. +(fontspec) +(fontspec) This font family consists of the following NFSS +(fontspec) series/shapes: +(fontspec) +(fontspec) - 'normal' (m/n) with NFSS spec.: <->"Fira +(fontspec) Code/OT:script=latn;language=dflt;" +(fontspec) - 'small caps' (m/sc) with NFSS spec.: +(fontspec) and font adjustment code: +(fontspec) \fontdimen 2\font =1\fontdimen 2\font \fontdimen 3\font +(fontspec) =0\fontdimen 3\font \fontdimen 4\font =0\fontdimen +(fontspec) 4\font \fontdimen 7\font =0\fontdimen 2\font +(fontspec) \tex_hyphenchar:D \font =-1\scan_stop: +(fontspec) - 'bold' (b/n) with NFSS spec.: <->"Fira +(fontspec) Code/B/OT:script=latn;language=dflt;" +(fontspec) - 'bold small caps' (b/sc) with NFSS spec.: +(fontspec) and font adjustment code: +(fontspec) \fontdimen 2\font =1\fontdimen 2\font \fontdimen 3\font +(fontspec) =0\fontdimen 3\font \fontdimen 4\font =0\fontdimen +(fontspec) 4\font \fontdimen 7\font =0\fontdimen 2\font +(fontspec) \tex_hyphenchar:D \font =-1\scan_stop: +(fontspec) - 'bold italic' (b/it) with NFSS spec.: <->"Fira +(fontspec) Code/BI/OT:script=latn;language=dflt;" +(fontspec) - 'bold italic small caps' (b/scit) with NFSS spec.: +(fontspec) and font adjustment code: +(fontspec) \fontdimen 2\font =1\fontdimen 2\font \fontdimen 3\font +(fontspec) =0\fontdimen 3\font \fontdimen 4\font =0\fontdimen +(fontspec) 4\font \fontdimen 7\font =0\fontdimen 2\font +(fontspec) \tex_hyphenchar:D \font =-1\scan_stop: + + (/usr/local/texlive/2023/texmf-dist/tex/latex/tikz-cd/tikz-cd.sty +Package: tikz-cd 2021/05/04 v1.0 Commutative diagrams with TikZ + (/usr/local/texlive/2023/texmf-dist/tex/generic/tikz-cd/tikzlibrarycd.code.tex (/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarymatrix.code.tex +File: tikzlibrarymatrix.code.tex 2023-01-15 v3.1.10 (3.1.10) +) (/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryquotes.code.tex +File: tikzlibraryquotes.code.tex 2023-01-15 v3.1.10 (3.1.10) +))) +\c@theorem=\count368 +\c@corollary=\count369 + (/usr/local/texlive/2023/texmf-dist/tex/latex/pict2e/pict2e.sty +Package: pict2e 2020/09/30 v0.4b Improved picture commands (HjG,RN,JT) + (/usr/local/texlive/2023/texmf-dist/tex/latex/pict2e/pict2e.cfg +File: pict2e.cfg 2016/02/05 v0.1u pict2e configuration for teTeX/TeXLive +) +Package pict2e Info: Driver file: xetex.def on input line 112. +Package pict2e Info: Driver file for pict2e: p2e-xetex.def on input line 114. + (/usr/local/texlive/2023/texmf-dist/tex/latex/pict2e/p2e-xetex.def +File: p2e-xetex.def 2016/02/05 v0.1u Driver-dependant file (RN,HjG,JT) +) +\pIIe@GRAPH=\toks54 +\@arclen=\dimen324 +\@arcrad=\dimen325 +\pIIe@tempdima=\dimen326 +\pIIe@tempdimb=\dimen327 +\pIIe@tempdimc=\dimen328 +\pIIe@tempdimd=\dimen329 +\pIIe@tempdime=\dimen330 +\pIIe@tempdimf=\dimen331 +) +LaTeX Info: Redefining \dplus on input line 206. +) (/Users/shakilrafi/Library/Mobile Documents/com~apple~CloudDocs/Dissertation/.texpadtmp/main.aux (/Users/shakilrafi/Library/Mobile Documents/com~apple~CloudDocs/Dissertation/.texpadtmp/Introduction.aux) (/Users/shakilrafi/Library/Mobile Documents/com~apple~CloudDocs/Dissertation/.texpadtmp/Brownian_motion_monte_carlo.aux + +LaTeX Warning: Label `lem:1.21' multiply defined. + + +LaTeX Warning: Label `lem:1.21@cref' multiply defined. + +) (/Users/shakilrafi/Library/Mobile Documents/com~apple~CloudDocs/Dissertation/.texpadtmp/u_visc_sol.aux + +LaTeX Warning: Label `limitofun' multiply defined. + + +LaTeX Warning: Label `limitofun@cref' multiply defined. + + +LaTeX Warning: Label `hessungeq0' multiply defined. + + +LaTeX Warning: Label `hessungeq0@cref' multiply defined. + +) (/Users/shakilrafi/Library/Mobile Documents/com~apple~CloudDocs/Dissertation/.texpadtmp/brownian_motion_monte_carlo_non_linear_case.aux + +LaTeX Warning: Label `(1.12)' multiply defined. + + +LaTeX Warning: Label `(1.12)@cref' multiply defined. + + +LaTeX Warning: Label `(1.12)' multiply defined. + + +LaTeX Warning: Label `(1.12)@cref' multiply defined. + +) (/Users/shakilrafi/Library/Mobile Documents/com~apple~CloudDocs/Dissertation/.texpadtmp/neural_network_introduction.aux + +LaTeX Warning: Label `5.2.1' multiply defined. + + +LaTeX Warning: Label `5.2.1@cref' multiply defined. + + +LaTeX Warning: Label `5.3.2' multiply defined. + + +LaTeX Warning: Label `5.3.2@cref' multiply defined. + + +LaTeX Warning: Label `5.4.3' multiply defined. + + +LaTeX Warning: Label `5.4.3@cref' multiply defined. + + +LaTeX Warning: Label `5.4.12' multiply defined. + + +LaTeX Warning: Label `5.4.12@cref' multiply defined. + +) (/Users/shakilrafi/Library/Mobile Documents/com~apple~CloudDocs/Dissertation/.texpadtmp/ann_product.aux + +LaTeX Warning: Label `6.0.25' multiply defined. + + +LaTeX Warning: Label `6.0.25@cref' multiply defined. + +) (/Users/shakilrafi/Library/Mobile Documents/com~apple~CloudDocs/Dissertation/.texpadtmp/modified_mlp_associated_nn.aux) (/Users/shakilrafi/Library/Mobile Documents/com~apple~CloudDocs/Dissertation/.texpadtmp/ann_first_approximations.aux + +LaTeX Warning: Label `6.0.3' multiply defined. + + +LaTeX Warning: Label `6.0.3@cref' multiply defined. + + +LaTeX Warning: Label `7.2.1' multiply defined. + + +LaTeX Warning: Label `7.2.1@cref' multiply defined. + + +LaTeX Warning: Label `7.2.2' multiply defined. + + +LaTeX Warning: Label `7.2.2@cref' multiply defined. + +) (/Users/shakilrafi/Library/Mobile Documents/com~apple~CloudDocs/Dissertation/.texpadtmp/ann_rep_brownian_motion_monte_carlo.aux + +LaTeX Warning: Label `fc-assertion' multiply defined. + + +LaTeX Warning: Label `fc-assertion@cref' multiply defined. + +) (/Users/shakilrafi/Library/Mobile Documents/com~apple~CloudDocs/Dissertation/.texpadtmp/conclusions-further-research.aux) (/Users/shakilrafi/Library/Mobile Documents/com~apple~CloudDocs/Dissertation/.texpadtmp/appendices.aux)) +\openout1 = `main.aux'. + +LaTeX Font Info: Checking defaults for OML/cmm/m/it on input line 5. +LaTeX Font Info: ... okay on input line 5. +LaTeX Font Info: Checking defaults for OMS/cmsy/m/n on input line 5. +LaTeX Font Info: ... okay on input line 5. +LaTeX Font Info: Checking defaults for OT1/cmr/m/n on input line 5. +LaTeX Font Info: ... okay on input line 5. +LaTeX Font Info: Checking defaults for T1/cmr/m/n on input line 5. +LaTeX Font Info: ... okay on input line 5. +LaTeX Font Info: Checking defaults for TS1/cmr/m/n on input line 5. +LaTeX Font Info: Trying to load font information for TS1+cmr on input line 5. + (/usr/local/texlive/2023/texmf-dist/tex/latex/base/ts1cmr.fd +File: ts1cmr.fd 2022/07/10 v2.5l Standard LaTeX font definitions +) +LaTeX Font Info: ... okay on input line 5. +LaTeX Font Info: Checking defaults for TU/lmr/m/n on input line 5. +LaTeX Font Info: ... okay on input line 5. +LaTeX Font Info: Checking defaults for OMX/cmex/m/n on input line 5. +LaTeX Font Info: ... okay on input line 5. +LaTeX Font Info: Checking defaults for U/cmr/m/n on input line 5. +LaTeX Font Info: ... okay on input line 5. +LaTeX Font Info: Checking defaults for PD1/pdf/m/n on input line 5. +LaTeX Font Info: ... okay on input line 5. +LaTeX Font Info: Checking defaults for PU/pdf/m/n on input line 5. +LaTeX Font Info: ... okay on input line 5. + (/usr/local/texlive/2023/texmf-dist/tex/latex/pdflscape/pdflscape.sty +Package: pdflscape 2022-10-27 v0.13 Display of landscape pages in PDF + (/usr/local/texlive/2023/texmf-dist/tex/latex/pdflscape/pdflscape-nometadata.sty +Package: pdflscape-nometadata 2022-10-28 v0.13 Display of landscape pages in PDF (HO) + (/usr/local/texlive/2023/texmf-dist/tex/latex/graphics/lscape.sty +Package: lscape 2020/05/28 v3.02 Landscape Pages (DPC) +) +Package pdflscape Info: Auto-detected driver: dvipdfm (xetex) on input line 98. +)) +*geometry* driver: auto-detecting +*geometry* detected driver: xetex +*geometry* verbose mode - [ preamble ] result: +* driver: xetex +* paper: +* layout: +* layoutoffset:(h,v)=(0.0pt,0.0pt) +* modes: +* h-part:(L,W,R)=(72.26999pt, 469.75502pt, 72.26999pt) +* v-part:(T,H,B)=(72.26999pt, 650.43001pt, 72.26999pt) +* \paperwidth=614.295pt +* \paperheight=794.96999pt +* \textwidth=469.75502pt +* \textheight=650.43001pt +* \oddsidemargin=0.0pt +* \evensidemargin=0.0pt +* \topmargin=-37.0pt +* \headheight=12.0pt +* \headsep=25.0pt +* \topskip=11.0pt +* \footskip=30.0pt +* \marginparwidth=59.0pt +* \marginparsep=10.0pt +* \columnsep=10.0pt +* \skip\footins=10.0pt plus 4.0pt minus 2.0pt +* \hoffset=0.0pt +* \voffset=0.0pt +* \mag=1000 +* \@twocolumnfalse +* \@twosidefalse +* \@mparswitchfalse +* \@reversemarginfalse +* (1in=72.27pt=25.4mm, 1cm=28.453pt) + +Package hyperref Info: Link coloring ON on input line 5. +(/Users/shakilrafi/Library/Mobile Documents/com~apple~CloudDocs/Dissertation/.texpadtmp/main.out) (/Users/shakilrafi/Library/Mobile Documents/com~apple~CloudDocs/Dissertation/.texpadtmp/main.out) +\@outlinefile=\write4 +\openout4 = `main.out'. + +\c@lstlisting=\count370 + +Package fontspec Info: Adjusting the maths setup (use [no-math] to avoid +(fontspec) this). + +\symlegacymaths=\mathgroup8 +LaTeX Font Info: Overwriting symbol font `legacymaths' in version `bold' +(Font) OT1/cmr/m/n --> OT1/cmr/bx/n on input line 5. +LaTeX Font Info: Redeclaring math accent \acute on input line 5. +LaTeX Font Info: Redeclaring math accent \grave on input line 5. +LaTeX Font Info: Redeclaring math accent \ddot on input line 5. +LaTeX Font Info: Redeclaring math accent \tilde on input line 5. +LaTeX Font Info: Redeclaring math accent \bar on input line 5. +LaTeX Font Info: Redeclaring math accent \breve on input line 5. +LaTeX Font Info: Redeclaring math accent \check on input line 5. +LaTeX Font Info: Redeclaring math accent \hat on input line 5. +LaTeX Font Info: Redeclaring math accent \dot on input line 5. +LaTeX Font Info: Redeclaring math accent \mathring on input line 5. +LaTeX Font Info: Redeclaring math symbol \Gamma on input line 5. +LaTeX Font Info: Redeclaring math symbol \Delta on input line 5. +LaTeX Font Info: Redeclaring math symbol \Theta on input line 5. +LaTeX Font Info: Redeclaring math symbol \Lambda on input line 5. +LaTeX Font Info: Redeclaring math symbol \Xi on input line 5. +LaTeX Font Info: Redeclaring math symbol \Pi on input line 5. +LaTeX Font Info: Redeclaring math symbol \Sigma on input line 5. +LaTeX Font Info: Redeclaring math symbol \Upsilon on input line 5. +LaTeX Font Info: Redeclaring math symbol \Phi on input line 5. +LaTeX Font Info: Redeclaring math symbol \Psi on input line 5. +LaTeX Font Info: Redeclaring math symbol \Omega on input line 5. +LaTeX Font Info: Redeclaring math symbol \mathdollar on input line 5. +LaTeX Font Info: Redeclaring symbol font `operators' on input line 5. +LaTeX Font Info: Encoding `OT1' has changed to `TU' for symbol font +(Font) `operators' in the math version `normal' on input line 5. +LaTeX Font Info: Overwriting symbol font `operators' in version `normal' +(Font) OT1/cmr/m/n --> TU/lmr/m/n on input line 5. +LaTeX Font Info: Encoding `OT1' has changed to `TU' for symbol font +(Font) `operators' in the math version `bold' on input line 5. +LaTeX Font Info: Overwriting symbol font `operators' in version `bold' +(Font) OT1/cmr/bx/n --> TU/lmr/m/n on input line 5. +LaTeX Font Info: Overwriting symbol font `operators' in version `normal' +(Font) TU/lmr/m/n --> TU/lmr/m/n on input line 5. +LaTeX Font Info: Overwriting math alphabet `\mathit' in version `normal' +(Font) OT1/cmr/m/it --> TU/lmr/m/it on input line 5. +LaTeX Font Info: Overwriting math alphabet `\mathbf' in version `normal' +(Font) OT1/cmr/bx/n --> TU/lmr/b/n on input line 5. +LaTeX Font Info: Overwriting math alphabet `\mathsf' in version `normal' +(Font) OT1/cmss/m/n --> TU/lmss/m/n on input line 5. +LaTeX Font Info: Overwriting math alphabet `\mathtt' in version `normal' +(Font) OT1/cmtt/m/n --> TU/FiraCode(0)/m/n on input line 5. +LaTeX Font Info: Overwriting symbol font `operators' in version `bold' +(Font) TU/lmr/m/n --> TU/lmr/b/n on input line 5. +LaTeX Font Info: Overwriting math alphabet `\mathit' in version `bold' +(Font) OT1/cmr/bx/it --> TU/lmr/b/it on input line 5. +LaTeX Font Info: Overwriting math alphabet `\mathsf' in version `bold' +(Font) OT1/cmss/bx/n --> TU/lmss/b/n on input line 5. +LaTeX Font Info: Overwriting math alphabet `\mathtt' in version `bold' +(Font) OT1/cmtt/m/n --> TU/FiraCode(0)/b/n on input line 5. +LaTeX Font Info: Trying to load font information for U+msa on input line 7. + (/usr/local/texlive/2023/texmf-dist/tex/latex/amsfonts/umsa.fd +File: umsa.fd 2013/01/14 v3.01 AMS symbols A +) +LaTeX Font Info: Trying to load font information for U+msb on input line 7. + (/usr/local/texlive/2023/texmf-dist/tex/latex/amsfonts/umsb.fd +File: umsb.fd 2013/01/14 v3.01 AMS symbols B +) +LaTeX Font Info: Trying to load font information for U+rsfs on input line 7. + (/usr/local/texlive/2023/texmf-dist/tex/latex/jknapltx/ursfs.fd +File: ursfs.fd 1998/03/24 rsfs font definition file (jk) +) +LaTeX Font Info: Trying to load font information for U+stmry on input line 7. + (/usr/local/texlive/2023/texmf-dist/tex/latex/stmaryrd/Ustmry.fd) [1 + +] (/Users/shakilrafi/Library/Mobile Documents/com~apple~CloudDocs/Dissertation/.texpadtmp/main.toc [1 + +] [2]) +\tf@toc=\write5 +\openout5 = `main.toc'. + + [3] [4 + +] +\openout2 = `Introduction.aux'. + + (./Introduction.tex +Chapter 1. + +Package natbib Warning: Citation `tsaban_harnessing_2022' on page 5 undefined on input line 4. + + +Package natbib Warning: Citation `davies_signature_2021' on page 5 undefined on input line 4. + + +Package natbib Warning: Citation `zhao_space-based_2023' on page 5 undefined on input line 4. + + +Package natbib Warning: Citation `wu2022sustainable' on page 5 undefined on input line 6. + + +Package natbib Warning: Citation `strubell2019energy' on page 5 undefined on input line 6. + + +Underfull \hbox (badness 10000) in paragraph at lines 4--9 + + [] + + +Underfull \hbox (badness 10000) in paragraph at lines 4--9 + + [] + + +Package natbib Warning: Citation `e_multilevel_2019' on page 5 undefined on input line 10. + + +Package natbib Warning: Citation `e_multilevel_2021' on page 5 undefined on input line 10. + + +Package natbib Warning: Citation `hutzenthaler_strong_2021' on page 5 undefined on input line 10. + + +Package natbib Warning: Citation `bhj20' on page 5 undefined on input line 11. + + +Package natbib Warning: Citation `karatzas1991brownian' on page 5 undefined on input line 11. + + +Package natbib Warning: Citation `da_prato_zabczyk_2002' on page 5 undefined on input line 11. + +[5 + + +] + +Package natbib Warning: Citation `grohs2019spacetime' on page 6 undefined on input line 12. + + +Package natbib Warning: Citation `grohs2019spacetime' on page 6 undefined on input line 14. + + +Underfull \hbox (badness 10000) in paragraph at lines 12--15 + + [] + + +Package natbib Warning: Citation `golub2013matrix' on page 6 undefined on input line 19. + + +Package natbib Warning: Citation `durrett2019probability' on page 6 undefined on input line 19. + +[6] [7] [8] +Overfull \hbox (9.89337pt too wide) in paragraph at lines 119--120 +[]\TU/lmr/m/it/10.95 A strong solution to the stochastic differential equation ([][]1.2.8[][]) on probability space $\OT1/cmr/m/n/10.95 ( +\OML/cmm/m/it/10.95 ; \OMS/cmsy/m/n/10.95 F\OML/cmm/m/it/10.95 ; \U/msb/m/n/10.95 P\OML/cmm/m/it/10.95 ; \OT1/cmr/m/n/10.95 (\U/msb/m/n/10.95 F[]\OT1/cmr/m/n/10.95 )[])$\TU/lmr/m/it/10.95 , + [] + +[9] [10] +LaTeX Font Info: Trying to load font information for U+euf on input line 155. + (/usr/local/texlive/2023/texmf-dist/tex/latex/amsfonts/ueuf.fd +File: ueuf.fd 2013/01/14 v3.01 Euler Fraktur +) [11] + +Package natbib Warning: Citation `da_prato_zabczyk_2002' on page 12 undefined on input line 190. + +[12] +LaTeX Font Info: Trying to load font information for U+BOONDOX-ds on input line 233. + (/usr/local/texlive/2023/texmf-dist/tex/latex/boondox/uboondox-ds.fd +File: uboondox-ds.fd 2011/04/26 Fontinst v1.933 font definitions for U/BOONDOX-ds. +) [13] + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `math shift' on input line 287. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `math shift' on input line 287. + +[14] [15] [16] [17]) [18] +\openout2 = `Brownian_motion_monte_carlo.aux'. + + (./Brownian_motion_monte_carlo.tex +Chapter 2. + +Package natbib Warning: Citation `durrett2019probability' on page 19 undefined on input line 4. + + +Package natbib Warning: Citation `karatzas1991brownian' on page 19 undefined on input line 4. + +[19 + + + + +] +Overfull \hbox (0.72496pt too wide) in paragraph at lines 28--30 +\TU/lmr/m/n/10.95 points $\OML/cmm/m/it/10.95 t[]; t[]; [] ; t[] \OMS/cmsy/m/n/10.95 2 []$ \TU/lmr/m/n/10.95 it is the case that the vectors $[][]$ and $[][]$ + [] + + +Overfull \hbox (7.81801pt too wide) in paragraph at lines 37--38 +\TU/lmr/m/n/10.95 now a new Brownian motion $\OMS/cmsy/m/n/10.95 X ^^@ Y$\TU/lmr/m/n/10.95 , wherein our samples are now $[]$. + [] + +[20] [21] [22] + +Package natbib Warning: Citation `hutzenthaler_overcoming_2020' on page 23 undefined on input line 134. + +[23] + +LaTeX Warning: Reference `(1.16)' on page 24 undefined on input line 175. + +[24] + +Package natbib Warning: Citation `rio_moment_2009' on page 25 undefined on input line 218. + + +Package natbib Warning: Citation `rio_moment_2009' on page 25 undefined on input line 218. + +[25] + +Package natbib Warning: Citation `grohsetal' on page 26 undefined on input line 240. + +[26] [27] [28] [29] [30] [31] + +Package natbib Warning: Citation `hjw2020' on page 32 undefined on input line 414. + + +Package natbib Warning: Citation `hjw2020' on page 32 undefined on input line 423. + + +Package natbib Warning: Citation `hjw2020' on page 32 undefined on input line 423. + + +Overfull \hbox (5.42262pt too wide) in paragraph at lines 423--424 +\OML/cmm/m/it/10.95 C[] \U/msb/m/n/10.95 x \OT1/cmr/m/n/10.95 0$\TU/lmr/m/n/10.95 , $\U/msb/m/n/10.95 F x F[]$\TU/lmr/m/n/10.95 , $\OML/cmm/m/it/10.95 ^^X \U/msb/m/n/10.95 x \OML/cmm/m/it/10.95 x; ^^V \U/msb/m/n/10.95 x \OML/cmm/m/it/10.95 a[]; ^^[ \U/msb/m/n/10.95 x \OML/cmm/m/it/10.95 b[]; W \U/msb/m/n/10.95 x \OML/cmm/m/it/10.95 W[]; X \U/msb/m/n/10.95 x []$ + [] + +[32] [33]) [34] +\openout2 = `u_visc_sol.aux'. + + (./u_visc_sol.tex +Chapter 3. + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `math shift' on input line 1. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `math shift' on input line 1. + + +Package natbib Warning: Citation `crandall_lions' on page 35 undefined on input line 3. + + +Package natbib Warning: Citation `Beck_2021' on page 35 undefined on input line 3. + + +Package natbib Warning: Citation `Ito1942a' on page 35 undefined on input line 47. + + +Package natbib Warning: Citation `Ito1946' on page 35 undefined on input line 47. + + +Package natbib Warning: Citation `Beck_2021' on page 35 undefined on input line 47. + + +Package natbib Warning: Citation `BHJ21' on page 35 undefined on input line 47. + +[35 + + + + +] + +Package natbib Warning: Citation `karatzas1991brownian' on page 36 undefined on input line 72. + +LaTeX Font Info: Trying to load font information for U+bbm on input line 83. +(/usr/local/texlive/2023/texmf-dist/tex/latex/bbm-macros/ubbm.fd +File: ubbm.fd 1999/03/15 V 1.2 Font definition for bbm font - TH +) [36] + +Package natbib Warning: Citation `karatzas1991brownian' on page 37 undefined on input line 84. + +[37] + +Package natbib Warning: Citation `da_prato_zabczyk_2002' on page 38 undefined on input line 116. + + +Package natbib Warning: Citation `karatzas1991brownian' on page 38 undefined on input line 127. + +[38] + +Package natbib Warning: Citation `da_prato_zabczyk_2002' on page 39 undefined on input line 134. + +[39] [40] + +LaTeX Warning: Reference `bigsum' on page 41 undefined on input line 209. + +[41] [42] [43] [44] +Overfull \hbox (0.38683pt too wide) in paragraph at lines 465--468 +[]\TU/lmr/m/n/10.95 However note also that since $\OML/cmm/m/it/10.95 G[]$ \TU/lmr/m/n/10.95 is upper semi-continuous, further the fact that, $\OML/cmm/m/it/10.95 ^^^[] \OMS/cmsy/m/n/10.95 2 []$\TU/lmr/m/n/10.95 , + [] + + +Overfull \hbox (81.7651pt too wide) in paragraph at lines 465--468 +\TU/lmr/m/n/10.95 and then $\OT1/cmr/m/n/10.95 ([][]3\OML/cmm/m/it/10.95 :\OT1/cmr/m/n/10.95 2\OML/cmm/m/it/10.95 :\OT1/cmr/m/n/10.95 27[][])$\TU/lmr/m/n/10.95 , and $\OT1/cmr/m/n/10.95 ([][]3\OML/cmm/m/it/10.95 :\OT1/cmr/m/n/10.95 2\OML/cmm/m/it/10.95 :\OT1/cmr/m/n/10.95 16[][])$\TU/lmr/m/n/10.95 , imply for all $\OML/cmm/m/it/10.95 " \OMS/cmsy/m/n/10.95 2 \OT1/cmr/m/n/10.95 (0\OML/cmm/m/it/10.95 ; \OMS/cmsy/m/n/10.95 1\OT1/cmr/m/n/10.95 )$ \TU/lmr/m/n/10.95 we have that: $[][] [] \OT1/cmr/m/n/10.95 = + [] + +[45] [46] [47] + +Package natbib Warning: Citation `karatzas1991brownian' on page 48 undefined on input line 595. + +[48] [49] [50] [51] + +Package natbib Warning: Citation `BHJ21' on page 52 undefined on input line 695. + + +Package natbib Warning: Citation `Beck_2021' on page 52 undefined on input line 706. + +[52] [53] +Overfull \hbox (84.75194pt too wide) in paragraph at lines 743--744 +\TU/lmr/m/it/10.95 ery $\OML/cmm/m/it/10.95 r \OMS/cmsy/m/n/10.95 2 \OT1/cmr/m/n/10.95 (0\OML/cmm/m/it/10.95 ; \OMS/cmsy/m/n/10.95 1\OT1/cmr/m/n/10.95 )$ \TU/lmr/m/it/10.95 satisfy the condition that $\OML/cmm/m/it/10.95 O[] \OMS/cmsy/m/n/10.95 ^^R O$\TU/lmr/m/it/10.95 , where $\OML/cmm/m/it/10.95 O[] \OT1/cmr/m/n/10.95 = \OMS/cmsy/m/n/10.95 f\OML/cmm/m/it/10.95 x \OMS/cmsy/m/n/10.95 2 O \OT1/cmr/m/n/10.95 : []\OMS/cmsy/m/n/10.95 g$ + [] + +[54] [55] + +Package natbib Warning: Citation `Beck_2021' on page 56 undefined on input line 802. + + +Package natbib Warning: Citation `Beck_2021' on page 56 undefined on input line 811. + +[56] [57] [58] +Overfull \hbox (1.23145pt too wide) in paragraph at lines 894--895 +[]\TU/lmr/bx/n/10.95 Corollary 3.3.1.1. []\TU/lmr/m/it/10.95 Let $\OML/cmm/m/it/10.95 T \OMS/cmsy/m/n/10.95 2 \OT1/cmr/m/n/10.95 (0\OML/cmm/m/it/10.95 ; \OMS/cmsy/m/n/10.95 1\OT1/cmr/m/n/10.95 )$\TU/lmr/m/it/10.95 , let $[]$ be a probability space, let $\OML/cmm/m/it/10.95 u[] \OMS/cmsy/m/n/10.95 2 \OML/cmm/m/it/10.95 C[] []$\TU/lmr/m/it/10.95 , + [] + +[59] [60] [61] + +Package natbib Warning: Citation `bhj20' on page 62 undefined on input line 1037. + +[62]) [63] +\openout2 = `brownian_motion_monte_carlo_non_linear_case.aux'. + + (./brownian_motion_monte_carlo_non_linear_case.tex +Chapter 4. + +LaTeX Warning: Reference `3.3.21' on page 64 undefined on input line 3. + + +Package natbib Warning: Citation `Beck_2021' on page 64 undefined on input line 17. + +[64 + + + + +]) [65] [66 + + + +] +\openout2 = `neural_network_introduction.aux'. + + (./neural_network_introduction.tex +Chapter 5. + +Package natbib Warning: Citation `grohsetal' on page 67 undefined on input line 2. + + +Overfull \hbox (3.18448pt too wide) in paragraph at lines 16--18 +\TU/lmr/m/it/10.95 following functions (referred to as auxiliary functions) satisfying for all $\OML/cmm/m/it/10.95 ^^W \OMS/cmsy/m/n/10.95 2 []$\TU/lmr/m/it/10.95 : + [] + +[67 + + +] [68] + +Package natbib Warning: Citation `petersen_optimal_2018' on page 69 undefined on input line 57. + + +Package natbib Warning: Citation `grohs2019spacetime' on page 69 undefined on input line 57. + + +LaTeX Font Warning: Font shape `TU/FiraCode(0)/m/it' undefined +(Font) using `TU/FiraCode(0)/m/n' instead on input line 59. + +[69] +Missing character: There is no ; ("3B) in font nullfont! +Missing character: There is no ; ("3B) in font nullfont! +Missing character: There is no ; ("3B) in font nullfont! +Missing character: There is no ; ("3B) in font nullfont! +Missing character: There is no ; ("3B) in font nullfont! +Missing character: There is no ; ("3B) in font nullfont! +Missing character: There is no ; ("3B) in font nullfont! +Missing character: There is no ; ("3B) in font nullfont! +Missing character: There is no ; ("3B) in font nullfont! +Missing character: There is no ; ("3B) in font nullfont! +\c@nn@layerindex@counter=\count371 +\c@nn@lastlayerstart@counter=\count372 +\c@nn@thislayerstart@counter=\count373 +\c@nn@lastlayercount@counter=\count374 +\c@nn@thislayercount@counter=\count375 +\c@nn@lastlayerindex@counter=\count376 +\c@nn@thislayerindex@counter=\count377 +Missing character: There is no t ("74) in font nullfont! +Missing character: There is no o ("6F) in font nullfont! +Missing character: There is no p ("70) in font nullfont! +Missing character: There is no t ("74) in font nullfont! +Missing character: There is no o ("6F) in font nullfont! +Missing character: There is no p ("70) in font nullfont! +Missing character: There is no r ("72) in font nullfont! +Missing character: There is no o ("6F) in font nullfont! +Missing character: There is no w ("77) in font nullfont! +Missing character: There is no t ("74) in font nullfont! +Missing character: There is no o ("6F) in font nullfont! +Missing character: There is no p ("70) in font nullfont! +Missing character: There is no t ("74) in font nullfont! +Missing character: There is no o ("6F) in font nullfont! +Missing character: There is no p ("70) in font nullfont! +Missing character: There is no r ("72) in font nullfont! +Missing character: There is no o ("6F) in font nullfont! +Missing character: There is no w ("77) in font nullfont! +Missing character: There is no ; ("3B) in font nullfont! +Missing character: There is no ; ("3B) in font nullfont! +Missing character: There is no ; ("3B) in font nullfont! +Missing character: There is no ; ("3B) in font nullfont! +Missing character: There is no ; ("3B) in font nullfont! +Missing character: There is no ; ("3B) in font nullfont! +Missing character: There is no ; ("3B) in font nullfont! +Missing character: There is no ; ("3B) in font nullfont! +Missing character: There is no ; ("3B) in font nullfont! +Missing character: There is no ; ("3B) in font nullfont! +Missing character: There is no ; ("3B) in font nullfont! +Missing character: There is no ; ("3B) in font nullfont! +Missing character: There is no ; ("3B) in font nullfont! +Missing character: There is no ; ("3B) in font nullfont! +Missing character: There is no ; ("3B) in font nullfont! +Missing character: There is no ; ("3B) in font nullfont! +Missing character: There is no t ("74) in font nullfont! +Missing character: There is no o ("6F) in font nullfont! +Missing character: There is no p ("70) in font nullfont! +Missing character: There is no t ("74) in font nullfont! +Missing character: There is no o ("6F) in font nullfont! +Missing character: There is no p ("70) in font nullfont! +Missing character: There is no r ("72) in font nullfont! +Missing character: There is no o ("6F) in font nullfont! +Missing character: There is no w ("77) in font nullfont! +Missing character: There is no ; ("3B) in font nullfont! +Missing character: There is no ; ("3B) in font nullfont! +Missing character: There is no ; ("3B) in font nullfont! +Missing character: There is no ; ("3B) in font nullfont! +Missing character: There is no ; ("3B) in font nullfont! +Missing character: There is no ; ("3B) in font nullfont! +Missing character: There is no ; ("3B) in font nullfont! +Missing character: There is no ; ("3B) in font nullfont! +Missing character: There is no ; ("3B) in font nullfont! +Missing character: There is no ; ("3B) in font nullfont! +Missing character: There is no ; ("3B) in font nullfont! +Missing character: There is no ; ("3B) in font nullfont! +Missing character: There is no ; ("3B) in font nullfont! +Missing character: There is no ; ("3B) in font nullfont! +Missing character: There is no ; ("3B) in font nullfont! +Missing character: There is no ; ("3B) in font nullfont! +Missing character: There is no ; ("3B) in font nullfont! +Missing character: There is no ; ("3B) in font nullfont! +Missing character: There is no ; ("3B) in font nullfont! +Missing character: There is no ; ("3B) in font nullfont! +Missing character: There is no ; ("3B) in font nullfont! +Missing character: There is no ; ("3B) in font nullfont! +Missing character: There is no ; ("3B) in font nullfont! + +LaTeX Warning: Command \l invalid in math mode on input line 105. + +Missing character: There is no ł ("142) in font cmmi8! + +LaTeX Warning: Command \l invalid in math mode on input line 105. + +Missing character: There is no ł ("142) in font cmmi8! + +Overfull \hbox (31.07065pt too wide) in paragraph at lines 112--113 +[] \OMS/cmsy/m/n/10.95 2 []$\TU/lmr/m/it/10.95 , and $\OML/cmm/m/it/10.95 ^^W[] \OT1/cmr/m/n/10.95 = [] \OMS/cmsy/m/n/10.95 2 + [] + +[70] +Overfull \hbox (11.40428pt too wide) detected at line 120 +[] + [] + +[71] + +Package natbib Warning: Citation `grohs2019spacetime' on page 72 undefined on input line 150. + + +Package natbib Warning: Citation `grohs2019spacetime' on page 72 undefined on input line 152. + +[72] [73] [74] [75] [76] [77] +Overfull \hbox (10.26515pt too wide) in paragraph at lines 370--371 +[]\TU/lmr/m/n/10.95 Since it is the case that for all $\OML/cmm/m/it/10.95 j \OMS/cmsy/m/n/10.95 2 f\OT1/cmr/m/n/10.95 1\OML/cmm/m/it/10.95 ; \OT1/cmr/m/n/10.95 2\OML/cmm/m/it/10.95 ; :::; n\OMS/cmsy/m/n/10.95 g$ \TU/lmr/m/n/10.95 that: $[] [] \OT1/cmr/m/n/10.95 = []$\TU/lmr/m/n/10.95 , where $\OML/cmm/m/it/10.95 l[]; l[]; :::; l[]; L \OMS/cmsy/m/n/10.95 2 + [] + +[78] +Overfull \hbox (15.23918pt too wide) in paragraph at lines 390--391 +[]$\TU/lmr/m/n/10.95 . Furthermore let $[] \OMS/cmsy/m/n/10.95 2 []$ + [] + + +Overfull \hbox (3.51563pt too wide) in paragraph at lines 397--399 +\TU/lmr/m/n/10.95 See Remark 5.3.2. Let $\OML/cmm/m/it/10.95 x[]; x[]; :::; x[] \OMS/cmsy/m/n/10.95 2 []$ \TU/lmr/m/n/10.95 satisfy for all $\OML/cmm/m/it/10.95 i \OMS/cmsy/m/n/10.95 2 f\OT1/cmr/m/n/10.95 1\OML/cmm/m/it/10.95 ; \OT1/cmr/m/n/10.95 2\OML/cmm/m/it/10.95 ; :::; n\OMS/cmsy/m/n/10.95 g$ + [] + +[79] [80] [81] [82] +Overfull \hbox (9.88837pt too wide) detected at line 582 +[] + [] + +[83] [84] [85] [86] + +LaTeX Warning: Reference `5.4.4' on page 87 undefined on input line 727. + + +LaTeX Warning: Reference `5.4.5' on page 87 undefined on input line 727. + +[87] + +LaTeX Warning: Reference `5.4.4' on page 88 undefined on input line 740. + + +LaTeX Warning: Reference `5.4.5' on page 88 undefined on input line 791. + + +Overfull \hbox (21.69441pt too wide) detected at line 838 +[] + [] + +[88] + +Package natbib Warning: Citation `Grohs_2022' on page 89 undefined on input line 922. + +[89] [90] [91] [92] [93] + +LaTeX Warning: Command \l invalid in math mode on input line 1137. + +Missing character: There is no ł ("142) in font cmmi10! +[94] [95] [96] + +Package natbib Warning: Citation `Grohs_2022' on page 97 undefined on input line 1237. + + +Package natbib Warning: Citation `Grohs_2022' on page 97 undefined on input line 1241. + +[97] + +Package natbib Warning: Citation `Grohs_2022' on page 98 undefined on input line 1251. + + +Package natbib Warning: Citation `Grohs_2022' on page 98 undefined on input line 1259. + +[98] + +Package natbib Warning: Citation `Grohs_2022' on page 99 undefined on input line 1300. + +[99] + +Package natbib Warning: Citation `Grohs_2022' on page 100 undefined on input line 1318. + + +LaTeX Warning: Reference `5.5.14' on page 100 undefined on input line 1318. + +[100] + +Package natbib Warning: Citation `grohs2019spacetime' on page 101 undefined on input line 1349. + +[101] + +Package natbib Warning: Citation `Grohs_2022' on page 102 undefined on input line 1358. + +[102] + +Package natbib Warning: Citation `grohs2019spacetime' on page 103 undefined on input line 1389. + + +Package natbib Warning: Citation `Grohs_2022' on page 103 undefined on input line 1398. + + +Package natbib Warning: Citation `vaswani_attention_2017' on page 103 undefined on input line 1409. + + +Package natbib Warning: Citation `arik_tabnet_2021' on page 103 undefined on input line 1409. + + +Package natbib Warning: Citation `8099678' on page 103 undefined on input line 1409. + +[103] [104]) [105] +\openout2 = `ann_product.aux'. + + (./ann_product.tex +Chapter 6. + +Package natbib Warning: Citation `grohs2019spacetime' on page 106 undefined on input line 3. + +[106 + + + + +] [107] [108] [109] [110] [111] +Overfull \hbox (13.21046pt too wide) detected at line 199 +[] + [] + +[112] + +Package natbib Warning: Citation `grohs2019spacetime' on page 113 undefined on input line 217. + +[113] +Overfull \hbox (7.19922pt too wide) in paragraph at lines 240--242 +\TU/lmr/m/n/10.95 This and the assumption that $\OT1/cmr/m/n/10.95 ^^H \OMS/cmsy/m/n/10.95 2 \OML/cmm/m/it/10.95 C []$ \TU/lmr/m/n/10.95 along with the assumption that $[][] \OMS/cmsy/m/n/10.95 j [] [] ^^@ + [] + + +Overfull \hbox (17.18288pt too wide) in paragraph at lines 251--253 +\TU/lmr/m/n/10.95 The assumption that for all $[][] \OMS/cmsy/m/n/10.95 j [] [] ^^@ [] [] j \OT1/cmr/m/n/10.95 = 0$ \TU/lmr/m/n/10.95 and the assumption that $[][] \OMS/cmsy/m/n/10.95 j\OML/cmm/m/it/10.95 x[] \OMS/cmsy/m/n/10.95 ^^@ + [] + +[114] [115] [116] +Overfull \hbox (82.5307pt too wide) in paragraph at lines 317--319 +\TU/lmr/m/n/10.95 By symmetry note also that $[] [] \OT1/cmr/m/n/10.95 = [] []$ \TU/lmr/m/n/10.95 and also that $[] [] \OT1/cmr/m/n/10.95 = + [] + +[117] + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `math shift' on input line 337. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathop' on input line 337. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 337. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 337. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 337. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\Umathcharnumdef' on input line 337. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\std@minus' on input line 337. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\Umathcodenum' on input line 337. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 337. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 337. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 337. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\leavevmode@ifvmode' on input line 337. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) \kern 2.43306pt +(hyperref) removed on input line 337. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathgroup' on input line 337. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\symoperators' on input line 337. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\@ifnextchar' on input line 337. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `math shift' on input line 337. + + +Package natbib Warning: Citation `grohs2019spacetime' on page 118 undefined on input line 338. + +[118] [119] [120] [121] [122] + +LaTeX Warning: Reference `Prd' on page 123 undefined on input line 498. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `math shift' on input line 560. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathop' on input line 560. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 560. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 560. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 560. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\Umathcharnumdef' on input line 560. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\std@minus' on input line 560. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\Umathcodenum' on input line 560. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 560. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 560. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 560. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\leavevmode@ifvmode' on input line 560. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) \kern 2.43306pt +(hyperref) removed on input line 560. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathgroup' on input line 560. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\symoperators' on input line 560. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\@ifnextchar' on input line 560. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `math shift' on input line 560. + +[123] [124] [125] [126] +Overfull \hbox (43.63065pt too wide) detected at line 765 +[] + [] + +[127] +Overfull \hbox (15.99518pt too wide) detected at line 803 +[] + [] + +[128] + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `math shift' on input line 813. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathop' on input line 813. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 813. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 813. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 813. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\Umathcharnumdef' on input line 813. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\std@minus' on input line 813. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\Umathcodenum' on input line 813. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 813. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 813. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 813. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\leavevmode@ifvmode' on input line 813. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) \kern 2.43306pt +(hyperref) removed on input line 813. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathgroup' on input line 813. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\symoperators' on input line 813. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\@ifnextchar' on input line 813. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `math shift' on input line 813. + +[129] [130] [131] +Underfull \hbox (badness 10000) in paragraph at lines 913--919 + + [] + + +Underfull \hbox (badness 10000) in paragraph at lines 922--927 + + [] + +[132] [133] [134] [135] [136] [137] +Overfull \hbox (7.14465pt too wide) in paragraph at lines 1099--1101 +\TU/lmr/m/n/10.95 Note that since $\U/euf/m/n/10.95 p[] \OMS/cmsy/m/n/10.95 2 O []$ \TU/lmr/m/n/10.95 for $\OML/cmm/m/it/10.95 n \U/msa/m/n/10.95 > \OT1/cmr/m/n/10.95 2$\TU/lmr/m/n/10.95 , it is the case for all $\OML/cmm/m/it/10.95 x \OMS/cmsy/m/n/10.95 2 \U/msb/m/n/10.95 R$ \TU/lmr/m/n/10.95 then that $[] \OMS/cmsy/m/n/10.95 2 + [] + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `math shift' on input line 1111. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathop' on input line 1111. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 1111. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 1111. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 1111. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\Umathcharnumdef' on input line 1111. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\std@minus' on input line 1111. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\Umathcodenum' on input line 1111. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 1111. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 1111. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 1111. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\leavevmode@ifvmode' on input line 1111. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) \kern 2.43306pt +(hyperref) removed on input line 1111. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathgroup' on input line 1111. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\symoperators' on input line 1111. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\@ifnextchar' on input line 1111. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `math shift' on input line 1111. + +[138] [139] +Overfull \hbox (27.99731pt too wide) in paragraph at lines 1258--1263 +[]$[] [] \U/msa/m/n/10.95 6 []$ + [] + + +Underfull \hbox (badness 10000) in paragraph at lines 1258--1263 + + [] + + +Underfull \hbox (badness 10000) in paragraph at lines 1266--1268 + + [] + +[140] [141] +Overfull \hbox (0.62233pt too wide) detected at line 1312 +[] + [] + +[142] + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `math shift' on input line 1346. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `superscript' on input line 1346. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `math shift' on input line 1346. + +[143]) [144] +\openout2 = `modified_mlp_associated_nn.aux'. + + (./modified_mlp_associated_nn.tex +Chapter 7. +[145 + + + + +] [146] +Overfull \hbox (23.40747pt too wide) in paragraph at lines 54--55 +[]\TU/lmr/m/it/10.95 that for all $\OML/cmm/m/it/10.95 ^^R \OMS/cmsy/m/n/10.95 2 \OT1/cmr/m/n/10.95 ^^B$\TU/lmr/m/it/10.95 , $\OML/cmm/m/it/10.95 n \OMS/cmsy/m/n/10.95 2 \U/msb/m/n/10.95 N[]$\TU/lmr/m/it/10.95 , $\OML/cmm/m/it/10.95 t \OMS/cmsy/m/n/10.95 2 []$\TU/lmr/m/it/10.95 , that $[][] \U/msa/m/n/10.95 6 [][] [] []$ + [] + +) [147] +\openout2 = `ann_first_approximations.aux'. + + (./ann_first_approximations.tex +Chapter 8. + +Overfull \hbox (4.12097pt too wide) in paragraph at lines 4--5 +[]\TU/lmr/bx/n/10.95 Definition 8.1.1 \TU/lmr/m/n/10.95 (Activation ANN)\TU/lmr/bx/n/10.95 . []\TU/lmr/m/it/10.95 Let $\OML/cmm/m/it/10.95 n \OMS/cmsy/m/n/10.95 2 \U/msb/m/n/10.95 N$\TU/lmr/m/it/10.95 . We denote by $\U/euf/m/n/10.95 i[] \OMS/cmsy/m/n/10.95 2 [] ^^R + [] + +[148 + + + + +] [149] [150] +Overfull \hbox (1.58334pt too wide) in paragraph at lines 110--111 +[]\TU/lmr/bx/n/10.95 Lemma 8.2.5. []\TU/lmr/m/it/10.95 Let $\OML/cmm/m/it/10.95 ^^W \OMS/cmsy/m/n/10.95 2 []$ \TU/lmr/m/it/10.95 with end-widths $\OML/cmm/m/it/10.95 d$\TU/lmr/m/it/10.95 . It is then the case that $[][] [] [] \OT1/cmr/m/n/10.95 = [][] [] = + [] + +[151] +Overfull \hbox (2.79488pt too wide) detected at line 184 +[] + [] + +[152] [153] +Overfull \hbox (8.1016pt too wide) detected at line 258 +[] + [] + +[154] [155] +Overfull \hbox (10.16905pt too wide) detected at line 364 +[] + [] + +[156] [157] [158] [159] + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `math shift' on input line 475. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathop' on input line 475. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 475. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 475. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 475. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\Umathcharnumdef' on input line 475. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\std@minus' on input line 475. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\Umathcodenum' on input line 475. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 475. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 475. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 475. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\leavevmode@ifvmode' on input line 475. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) \kern 2.43306pt +(hyperref) removed on input line 475. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathgroup' on input line 475. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\symoperators' on input line 475. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\@ifnextchar' on input line 475. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `math shift' on input line 475. + +[160] + +Package natbib Warning: Citation `Grohs_2022' on page 161 undefined on input line 518. + + +Overfull \hbox (5.15457pt too wide) in paragraph at lines 517--519 +\TU/lmr/m/n/10.95 then tells us that for all $\OML/cmm/m/it/10.95 i \OMS/cmsy/m/n/10.95 2 f\OT1/cmr/m/n/10.95 0\OML/cmm/m/it/10.95 ; \OT1/cmr/m/n/10.95 1\OML/cmm/m/it/10.95 ; \OT1/cmr/m/n/10.95 2\OML/cmm/m/it/10.95 ; :::; N\OMS/cmsy/m/n/10.95 g$\TU/lmr/m/n/10.95 , $[] [] \OT1/cmr/m/n/10.95 = []$\TU/lmr/m/n/10.95 , $[][] [] \OMS/cmsy/m/n/10.95 2 + [] + + +Package natbib Warning: Citation `Grohs_2022' on page 161 undefined on input line 525. + +[161] [162] [163] +Overfull \hbox (15.02065pt too wide) detected at line 608 +[] + [] + +[164] [165] + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `math shift' on input line 664. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathop' on input line 664. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 664. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 664. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 664. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\Umathcharnumdef' on input line 664. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\std@minus' on input line 664. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\Umathcodenum' on input line 664. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 664. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 664. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 664. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\leavevmode@ifvmode' on input line 664. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) \kern 2.43306pt +(hyperref) removed on input line 664. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathgroup' on input line 664. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\symoperators' on input line 664. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\@ifnextchar' on input line 664. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `superscript' on input line 664. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `math shift' on input line 664. + +[166] [167] [168] [169] + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `math shift' on input line 755. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathop' on input line 755. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 755. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 755. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 755. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\Umathcharnumdef' on input line 755. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\std@minus' on input line 755. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\Umathcodenum' on input line 755. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 755. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 755. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 755. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\leavevmode@ifvmode' on input line 755. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) \kern 2.43306pt +(hyperref) removed on input line 755. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathgroup' on input line 755. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\symoperators' on input line 755. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\@ifnextchar' on input line 755. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `superscript' on input line 755. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `subscript' on input line 755. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `math shift' on input line 755. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `math shift' on input line 755. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathop' on input line 755. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 755. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 755. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 755. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\Umathcharnumdef' on input line 755. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\std@minus' on input line 755. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\Umathcodenum' on input line 755. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 755. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 755. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 755. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\leavevmode@ifvmode' on input line 755. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) \kern 2.43306pt +(hyperref) removed on input line 755. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathgroup' on input line 755. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\symoperators' on input line 755. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\@ifnextchar' on input line 755. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `superscript' on input line 755. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `math shift' on input line 755. + + +Package natbib Warning: Citation `grohs2019spacetime' on page 170 undefined on input line 792. + +[170] [171] [172] [173] [174] + +Package natbib Warning: Citation `grohs2019spacetime' on page 175 undefined on input line 940. + + +Overfull \hbox (21.33842pt too wide) in paragraph at lines 939--941 +\OMS/cmsy/m/n/10.95 f\OT1/cmr/m/n/10.95 2\OML/cmm/m/it/10.95 ; \OT1/cmr/m/n/10.95 3\OML/cmm/m/it/10.95 ; \OT1/cmr/m/n/10.95 4\OML/cmm/m/it/10.95 ; :::\OMS/cmsy/m/n/10.95 g$\TU/lmr/m/n/10.95 , $\OML/cmm/m/it/10.95 x \OT1/cmr/m/n/10.95 = \OMS/cmsy/m/n/10.95 f\OML/cmm/m/it/10.95 x[]; x[]; :::; x[]\OMS/cmsy/m/n/10.95 g 2 \U/msb/m/n/10.95 R[]$ \TU/lmr/m/n/10.95 it holds that $[] [] \OMS/cmsy/m/n/10.95 2 \OML/cmm/m/it/10.95 C []$\TU/lmr/m/n/10.95 . and $[] [] \OT1/cmr/m/n/10.95 = + [] + +[175] + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `math shift' on input line 963. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathop' on input line 963. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 963. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 963. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 963. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\Umathcharnumdef' on input line 963. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\std@minus' on input line 963. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\Umathcodenum' on input line 963. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 963. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 963. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 963. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\leavevmode@ifvmode' on input line 963. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) \kern 2.43306pt +(hyperref) removed on input line 963. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathgroup' on input line 963. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\symoperators' on input line 963. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\@ifnextchar' on input line 963. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `superscript' on input line 963. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `math shift' on input line 963. + + +Overfull \hbox (26.36661pt too wide) in paragraph at lines 978--979 +[]\TU/lmr/m/it/10.95 it holds that $[] [] \U/msa/m/n/10.95 6 [] [] \OT1/cmr/m/n/10.95 + 3 [] \OMS/cmsy/m/n/10.95 ^^A [] \OT1/cmr/m/n/10.95 + 7 + 3\OML/cmm/m/it/10.95 N \OT1/cmr/m/n/10.95 + \OML/cmm/m/it/10.95 d[] [] \OT1/cmr/m/n/10.95 + \OML/cmm/m/it/10.95 d []$ + [] + +[176] + +Package natbib Warning: Citation `grohs2019spacetime' on page 177 undefined on input line 996. + + +Package natbib Warning: Citation `grohs2019spacetime' on page 177 undefined on input line 1012. + +[177] [178] [179] [180] [181] [182]) [183] + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `math shift' on input line 30. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `math shift' on input line 30. + +[184 + + + +] +\openout2 = `ann_rep_brownian_motion_monte_carlo.aux'. + + (./ann_rep_brownian_motion_monte_carlo.tex +Chapter 9. +[185 + + +] [186] + +Package natbib Warning: Citation `hutzenthaler_strong_2021' on page 187 undefined on input line 61. + + +Package natbib Warning: Citation `hutzenthaler_strong_2021' on page 187 undefined on input line 61. + + +Package hyperref Warning: Difference (2) between bookmark levels is greater +(hyperref) than one, level fixed on input line 82. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `math shift' on input line 82. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `math shift' on input line 82. + +[187] +Overfull \hbox (36.55124pt too wide) in paragraph at lines 95--99 +[]$[] [] \U/msa/m/n/10.95 6 []$ + [] + +[188] [189] [190] [191] [192] + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `math shift' on input line 227. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `math shift' on input line 227. + +[193] [194] [195] [196] + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `math shift' on input line 387. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `math shift' on input line 387. + +[197] [198] [199] + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `math shift' on input line 472. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `math shift' on input line 472. + +[200] [201] +Overfull \hbox (49.85501pt too wide) in paragraph at lines 528--530 +[]\TU/lmr/m/n/10.95 Note that for all $\OML/cmm/m/it/10.95 i \OMS/cmsy/m/n/10.95 2 f\OT1/cmr/m/n/10.95 1\OML/cmm/m/it/10.95 ; \OT1/cmr/m/n/10.95 2\OML/cmm/m/it/10.95 ; [] ; \U/euf/m/n/10.95 n\OMS/cmsy/m/n/10.95 g$\TU/lmr/m/n/10.95 , Lemma [][]9.0.3[][] tells us that $[][] [] \OMS/cmsy/m/n/10.95 2 \OML/cmm/m/it/10.95 C[] []$\TU/lmr/m/n/10.95 . + [] + +[202] +Underfull \hbox (badness 10000) in paragraph at lines 540--543 + + [] + +) [203] +\openout2 = `conclusions-further-research.aux'. + + (./conclusions-further-research.tex +Chapter 10. + +Overfull \hbox (28.56662pt too wide) in paragraph at lines 19--20 +[]$\TU/lmr/m/it/10.95 , $\OML/cmm/m/it/10.95 j \OMS/cmsy/m/n/10.95 2 \U/msb/m/n/10.95 N \OMS/cmsy/m/n/10.95 \ []$\TU/lmr/m/it/10.95 , is given by $\OML/cmm/m/it/10.95 c \U/msa/m/n/10.95 ~[] \OML/cmm/m/it/10.95 ^^W \OT1/cmr/m/n/10.95 = []$ + [] + +[204 + + + + +] + +Package natbib Warning: Citation `srivastava_dropout_2014' on page 205 undefined on input line 32. + + +LaTeX Warning: Command \l invalid in math mode on input line 36. + +Missing character: There is no ł ("142) in font cmmi10! +) [205] (/Users/shakilrafi/Library/Mobile Documents/com~apple~CloudDocs/Dissertation/.texpadtmp/main.bbl) +\openout2 = `appendices.aux'. + + (./appendices.tex (/usr/local/texlive/2023/texmf-dist/tex/latex/listings/lstlang1.sty +File: lstlang1.sty 2023/02/27 1.9 listings language file +) (/usr/local/texlive/2023/texmf-dist/tex/latex/listings/lstlang2.sty +File: lstlang2.sty 2023/02/27 1.9 listings language file +) (/usr/local/texlive/2023/texmf-dist/tex/latex/listings/lstlang3.sty +File: lstlang3.sty 2023/02/27 1.9 listings language file +) +Package hyperref Info: bookmark level for unknown lstlisting defaults to 0 on input line 4. + (/Users/shakilrafi/R-simulations/nn_creator.R) (/Users/shakilrafi/R-simulations/aux_fun.R [206 + + + +] [207]) (/Users/shakilrafi/R-simulations/activations.R) (/Users/shakilrafi/R-simulations/realization.R [208]) (/Users/shakilrafi/R-simulations/par.R [209] [210]) (/Users/shakilrafi/R-simulations/affn.R [211]) (/Users/shakilrafi/R-simulations/comp.R [212] [213]) (/Users/shakilrafi/R-simulations/scalar_mult.R [214]) (/Users/shakilrafi/R-simulations/nn_sum.R +Missing character: There is no ⊕ (U+2295) in font Fira Code Regular/OT:script=latn;language=dflt;! +Missing character: There is no ⊕ (U+2295) in font Fira Code Regular/OT:script=latn;language=dflt;! +Missing character: There is no ⊟ (U+229F) in font Fira Code Regular/OT:script=latn;language=dflt;! +) (/Users/shakilrafi/R-simulations/i.R [215]) (/Users/shakilrafi/R-simulations/Id.R) (/Users/shakilrafi/R-simulations/Tun.R [216]) (/Users/shakilrafi/R-simulations/Phi_k.R [217]) +File: /Users/shakilrafi/R-simulations/Phi_k_properties/Phi_k_diff.png Graphic file (type bmp) + + [218] (/Users/shakilrafi/R-simulations/Phi_k_properties.R [219]) (/Users/shakilrafi/R-simulations/Phi.R [220]) +File: /Users/shakilrafi/R-simulations/Phi_properties/Phi_diff_contour.png Graphic file (type bmp) + + (/Users/shakilrafi/R-simulations/Phi_properties.R [221]) [222] (/Users/shakilrafi/R-simulations/Sqr.R) (/Users/shakilrafi/R-simulations/Sqr_properties.R [223] [224] [225]) (/Users/shakilrafi/R-simulations/Pwr.R) (/Users/shakilrafi/R-simulations/Pwr_3_properties.R [226] [227] [228])) [229] + +Package natbib Warning: There were undefined citations. + +(/Users/shakilrafi/Library/Mobile Documents/com~apple~CloudDocs/Dissertation/.texpadtmp/main.aux (/Users/shakilrafi/Library/Mobile Documents/com~apple~CloudDocs/Dissertation/.texpadtmp/Introduction.aux) (/Users/shakilrafi/Library/Mobile Documents/com~apple~CloudDocs/Dissertation/.texpadtmp/Brownian_motion_monte_carlo.aux) (/Users/shakilrafi/Library/Mobile Documents/com~apple~CloudDocs/Dissertation/.texpadtmp/u_visc_sol.aux) (/Users/shakilrafi/Library/Mobile Documents/com~apple~CloudDocs/Dissertation/.texpadtmp/brownian_motion_monte_carlo_non_linear_case.aux) (/Users/shakilrafi/Library/Mobile Documents/com~apple~CloudDocs/Dissertation/.texpadtmp/neural_network_introduction.aux) (/Users/shakilrafi/Library/Mobile Documents/com~apple~CloudDocs/Dissertation/.texpadtmp/ann_product.aux) (/Users/shakilrafi/Library/Mobile Documents/com~apple~CloudDocs/Dissertation/.texpadtmp/modified_mlp_associated_nn.aux) (/Users/shakilrafi/Library/Mobile Documents/com~apple~CloudDocs/Dissertation/.texpadtmp/ann_first_approximations.aux) (/Users/shakilrafi/Library/Mobile Documents/com~apple~CloudDocs/Dissertation/.texpadtmp/ann_rep_brownian_motion_monte_carlo.aux) (/Users/shakilrafi/Library/Mobile Documents/com~apple~CloudDocs/Dissertation/.texpadtmp/conclusions-further-research.aux) (/Users/shakilrafi/Library/Mobile Documents/com~apple~CloudDocs/Dissertation/.texpadtmp/appendices.aux)) + +LaTeX Font Warning: Some font shapes were not available, defaults substituted. + + +LaTeX Warning: There were undefined references. + + +LaTeX Warning: There were multiply-defined labels. + +Package rerunfilecheck Info: File `main.out' has not changed. +(rerunfilecheck) Checksum: 4D3B80E0A07334E405D495AE556C4B5B;17945. + ) +Here is how much of TeX's memory you used: + 36233 strings out of 476683 + 763940 string characters out of 5804048 + 2311018 words of memory out of 5000000 + 55628 multiletter control sequences out of 15000+600000 + 540453 words of font info for 208 fonts, out of 8000000 for 9000 + 1348 hyphenation exceptions out of 8191 + 106i,25n,99p,1066b,2078s stack positions out of 10000i,1000n,20000p,200000b,200000s + +Output written on /Users/shakilrafi/Library/Mobile Documents/com~apple~CloudDocs/Dissertation/.texpadtmp/main.pdf (230 pages). diff --git a/Dissertation_unzipped/.texpadtmp/main.out b/Dissertation_unzipped/.texpadtmp/main.out new file mode 100644 index 0000000..d42ff60 --- /dev/null +++ b/Dissertation_unzipped/.texpadtmp/main.out @@ -0,0 +1,68 @@ +\BOOKMARK [-1][-]{part.1}{\376\377\000I\000\040\000O\000n\000\040\000C\000o\000n\000v\000e\000r\000g\000e\000n\000c\000e\000\040\000o\000f\000\040\000B\000r\000o\000w\000n\000i\000a\000n\000\040\000M\000o\000t\000i\000o\000n\000\040\000M\000o\000n\000t\000e\000\040\000C\000a\000r\000l\000o}{}% 1 +\BOOKMARK [0][-]{chapter.1}{\376\377\000I\000n\000t\000r\000o\000d\000u\000c\000t\000i\000o\000n\000.}{part.1}% 2 +\BOOKMARK [1][-]{section.1.1}{\376\377\000M\000o\000t\000i\000v\000a\000t\000i\000o\000n}{chapter.1}% 3 +\BOOKMARK [1][-]{section.1.2}{\376\377\000N\000o\000t\000a\000t\000i\000o\000n\000,\000\040\000D\000e\000f\000i\000n\000i\000t\000i\000o\000n\000s\000\040\000\046\000\040\000B\000a\000s\000i\000c\000\040\000n\000o\000t\000i\000o\000n\000s\000.}{chapter.1}% 4 +\BOOKMARK [2][-]{subsection.1.2.1}{\376\377\000N\000o\000r\000m\000s\000\040\000a\000n\000d\000\040\000I\000n\000n\000e\000r\000\040\000P\000r\000o\000d\000u\000c\000t}{section.1.2}% 5 +\BOOKMARK [2][-]{subsection.1.2.2}{\376\377\000P\000r\000o\000b\000a\000b\000i\000l\000i\000t\000y\000\040\000S\000p\000a\000c\000e\000\040\000a\000n\000d\000\040\000B\000r\000o\000w\000n\000i\000a\000n\000\040\000M\000o\000t\000i\000o\000n}{section.1.2}% 6 +\BOOKMARK [2][-]{subsection.1.2.3}{\376\377\000L\000i\000p\000s\000c\000h\000i\000t\000z\000\040\000a\000n\000d\000\040\000R\000e\000l\000a\000t\000e\000d\000\040\000N\000o\000t\000i\000o\000n\000s}{section.1.2}% 7 +\BOOKMARK [2][-]{subsection.1.2.4}{\376\377\000K\000o\000l\000m\000o\000g\000o\000r\000o\000v\000\040\000E\000q\000u\000a\000t\000i\000o\000n\000s}{section.1.2}% 8 +\BOOKMARK [2][-]{subsection.1.2.5}{\376\377\000L\000i\000n\000e\000a\000r\000\040\000A\000l\000g\000e\000b\000r\000a\000\040\000N\000o\000t\000a\000t\000i\000o\000n\000\040\000a\000n\000d\000\040\000D\000e\000f\000i\000n\000i\000t\000i\000o\000n\000s}{section.1.2}% 9 +\BOOKMARK [2][-]{subsection.1.2.6}{\376\377\000O\000-\000t\000y\000p\000e\000\040\000N\000o\000t\000a\000t\000i\000o\000n\000\040\000a\000n\000d\000\040\000F\000u\000n\000c\000t\000i\000o\000n\000\040\000G\000r\000o\000w\000t\000h}{section.1.2}% 10 +\BOOKMARK [2][-]{subsection.1.2.7}{\376\377\000T\000h\000e\000\040\000C\000o\000n\000c\000a\000t\000e\000n\000a\000t\000i\000o\000n\000\040\000o\000f\000\040\000V\000e\000c\000t\000o\000r\000s\000\040\000\046\000\040\000F\000u\000n\000c\000t\000i\000o\000n\000s}{section.1.2}% 11 +\BOOKMARK [0][-]{chapter.2}{\376\377\000B\000r\000o\000w\000n\000i\000a\000n\000\040\000M\000o\000t\000i\000o\000n\000\040\000M\000o\000n\000t\000e\000\040\000C\000a\000r\000l\000o}{part.1}% 12 +\BOOKMARK [1][-]{section.2.1}{\376\377\000B\000r\000o\000w\000n\000i\000a\000n\000\040\000M\000o\000t\000i\000o\000n\000\040\000P\000r\000e\000l\000i\000m\000i\000n\000a\000r\000i\000e\000s}{chapter.2}% 13 +\BOOKMARK [1][-]{section.2.2}{\376\377\000M\000o\000n\000t\000e\000\040\000C\000a\000r\000l\000o\000\040\000A\000p\000p\000r\000o\000x\000i\000m\000a\000t\000i\000o\000n\000s}{chapter.2}% 14 +\BOOKMARK [1][-]{section.2.3}{\376\377\000B\000o\000u\000n\000d\000s\000\040\000a\000n\000d\000\040\000C\000o\000v\000n\000v\000e\000r\000g\000e\000n\000c\000e}{chapter.2}% 15 +\BOOKMARK [0][-]{chapter.3}{\376\377\000T\000h\000a\000t\000\040\000u\000\040\000i\000s\000\040\000a\000\040\000V\000i\000s\000c\000o\000s\000i\000t\000y\000\040\000S\000o\000l\000u\000t\000i\000o\000n}{part.1}% 16 +\BOOKMARK [1][-]{section.3.1}{\376\377\000S\000o\000m\000e\000\040\000P\000r\000e\000l\000i\000m\000i\000n\000a\000r\000i\000e\000s}{chapter.3}% 17 +\BOOKMARK [1][-]{section.3.2}{\376\377\000V\000i\000s\000c\000o\000s\000i\000t\000y\000\040\000S\000o\000l\000u\000t\000i\000o\000n\000s}{chapter.3}% 18 +\BOOKMARK [1][-]{section.3.3}{\376\377\000S\000o\000l\000u\000t\000i\000o\000n\000s\000,\000\040\000C\000h\000a\000r\000a\000c\000t\000e\000r\000i\000z\000a\000t\000i\000o\000n\000,\000\040\000a\000n\000d\000\040\000C\000o\000m\000p\000u\000t\000a\000t\000i\000o\000n\000a\000l\000\040\000B\000o\000u\000n\000d\000s\000\040\000t\000o\000\040\000t\000h\000e\000\040\000K\000o\000l\000m\000o\000g\000o\000r\000o\000v\000\040\000B\000a\000c\000k\000w\000a\000r\000d\000\040\000E\000q\000u\000a\000t\000i\000o\000n\000s}{chapter.3}% 19 +\BOOKMARK [0][-]{chapter.4}{\376\377\000B\000r\000o\000w\000n\000i\000a\000n\000\040\000m\000o\000t\000i\000o\000n\000\040\000M\000o\000n\000t\000e\000\040\000C\000a\000r\000l\000o\000\040\000o\000f\000\040\000t\000h\000e\000\040\000n\000o\000n\000-\000l\000i\000n\000e\000a\000r\000\040\000c\000a\000s\000e}{part.1}% 20 +\BOOKMARK [-1][-]{part.2}{\376\377\000I\000I\000\040\000A\000\040\000S\000t\000r\000u\000c\000t\000u\000r\000a\000l\000\040\000D\000e\000s\000c\000r\000i\000p\000t\000i\000o\000n\000\040\000o\000f\000\040\000A\000r\000t\000i\000f\000i\000c\000i\000a\000l\000\040\000N\000e\000u\000r\000a\000l\000\040\000N\000e\000t\000w\000o\000r\000k\000s}{}% 21 +\BOOKMARK [0][-]{chapter.5}{\376\377\000I\000n\000t\000r\000o\000d\000u\000c\000t\000i\000o\000n\000\040\000a\000n\000d\000\040\000B\000a\000s\000i\000c\000\040\000N\000o\000t\000i\000o\000n\000s\000\040\000A\000b\000o\000u\000t\000\040\000N\000e\000u\000r\000a\000l\000\040\000N\000e\000t\000w\000o\000r\000k\000s}{part.2}% 22 +\BOOKMARK [1][-]{section.5.1}{\376\377\000T\000h\000e\000\040\000B\000a\000s\000i\000c\000\040\000D\000e\000f\000i\000n\000i\000t\000i\000o\000n\000\040\000o\000f\000\040\000A\000N\000N\000s\000\040\000a\000n\000d\000\040\000r\000e\000a\000l\000i\000z\000a\000t\000i\000o\000n\000s\000\040\000o\000f\000\040\000A\000N\000N\000s}{chapter.5}% 23 +\BOOKMARK [1][-]{section.5.2}{\376\377\000C\000o\000m\000p\000o\000s\000i\000t\000i\000o\000n\000s\000\040\000o\000f\000\040\000A\000N\000N\000s}{chapter.5}% 24 +\BOOKMARK [2][-]{subsection.5.2.1}{\376\377\000C\000o\000m\000p\000o\000s\000i\000t\000i\000o\000n}{section.5.2}% 25 +\BOOKMARK [1][-]{section.5.3}{\376\377\000P\000a\000r\000a\000l\000l\000e\000l\000i\000z\000a\000t\000i\000o\000n\000\040\000o\000f\000\040\000A\000N\000N\000s\000\040\000o\000f\000\040\000E\000q\000u\000a\000l\000\040\000D\000e\000p\000t\000h}{chapter.5}% 26 +\BOOKMARK [1][-]{section.5.4}{\376\377\000P\000a\000r\000a\000l\000l\000e\000l\000i\000z\000a\000t\000i\000o\000n\000\040\000o\000f\000\040\000A\000N\000N\000s\000\040\000o\000f\000\040\000U\000n\000e\000q\000u\000a\000l\000\040\000D\000e\000p\000t\000h}{chapter.5}% 27 +\BOOKMARK [1][-]{section.5.5}{\376\377\000A\000f\000f\000i\000n\000e\000\040\000L\000i\000n\000e\000a\000r\000\040\000T\000r\000a\000n\000s\000f\000o\000r\000m\000a\000t\000i\000o\000n\000s\000\040\000a\000s\000\040\000A\000N\000N\000s\000\040\000a\000n\000d\000\040\000T\000h\000e\000i\000r\000\040\000P\000r\000o\000p\000e\000r\000t\000i\000e\000s\000.}{chapter.5}% 28 +\BOOKMARK [1][-]{section.5.6}{\376\377\000S\000u\000m\000s\000\040\000o\000f\000\040\000A\000N\000N\000s\000\040\000o\000f\000\040\000S\000a\000m\000e\000\040\000E\000n\000d\000-\000w\000i\000d\000t\000h\000s}{chapter.5}% 29 +\BOOKMARK [2][-]{subsection.5.6.1}{\376\377\000N\000e\000u\000r\000a\000l\000\040\000N\000e\000t\000w\000o\000r\000k\000\040\000S\000u\000m\000\040\000P\000r\000o\000p\000e\000r\000t\000i\000e\000s}{section.5.6}% 30 +\BOOKMARK [2][-]{subsection.5.6.2}{\376\377\000S\000u\000m\000\040\000o\000f\000\040\000A\000N\000N\000s\000\040\000o\000f\000\040\000U\000n\000e\000q\000u\000a\000l\000\040\000D\000e\000p\000t\000h\000\040\000B\000u\000t\000\040\000S\000a\000m\000e\000\040\000E\000n\000d\000-\000w\000i\000d\000t\000h\000s}{section.5.6}% 31 +\BOOKMARK [1][-]{section.5.7}{\376\377\000L\000i\000n\000e\000a\000r\000\040\000C\000o\000m\000b\000i\000n\000a\000t\000i\000o\000n\000s\000\040\000o\000f\000\040\000A\000N\000N\000s\000\040\000a\000n\000d\000\040\000T\000h\000e\000i\000r\000\040\000P\000r\000o\000p\000e\000r\000t\000i\000e\000s}{chapter.5}% 32 +\BOOKMARK [1][-]{section.5.8}{\376\377\000N\000e\000u\000r\000a\000l\000\040\000N\000e\000t\000w\000o\000r\000k\000\040\000D\000i\000a\000g\000r\000a\000m\000s}{chapter.5}% 33 +\BOOKMARK [0][-]{chapter.6}{\376\377\000A\000N\000N\000\040\000P\000r\000o\000d\000u\000c\000t\000\040\000A\000p\000p\000r\000o\000x\000i\000m\000a\000t\000i\000o\000n\000s}{part.2}% 34 +\BOOKMARK [1][-]{section.6.1}{\376\377\000A\000p\000p\000r\000o\000x\000i\000m\000a\000t\000i\000o\000n\000\040\000f\000o\000r\000\040\000P\000r\000o\000d\000u\000c\000t\000s\000\040\000o\000f\000\040\000T\000w\000o\000\040\000R\000e\000a\000l\000\040\000N\000u\000m\000b\000e\000r\000s}{chapter.6}% 35 +\BOOKMARK [2][-]{subsection.6.1.1}{\376\377\000T\000h\000e\000\040\000s\000q\000u\000a\000r\000e\000s\000\040\000o\000f\000\040\000r\000e\000a\000l\000\040\000n\000u\000m\000b\000e\000r\000s}{section.6.1}% 36 +\BOOKMARK [2][-]{subsection.6.1.2}{\376\377\000T\000h\000e\000\040\000`\0003\003\001\0009\000`\0004\0002\000`\000"\003\007\0006\0001\0003\000A\000`\000`\0004\0005\000`\0004\0007\000`\000"\0006\0000\0003\000A\000P\000r\000d\000\040\000n\000e\000t\000w\000o\000r\000k}{section.6.1}% 37 +\BOOKMARK [1][-]{section.6.2}{\376\377\000H\000i\000g\000h\000e\000r\000\040\000A\000p\000p\000r\000o\000x\000i\000m\000a\000t\000i\000o\000n\000s}{chapter.6}% 38 +\BOOKMARK [2][-]{subsection.6.2.1}{\376\377\000T\000h\000e\000\040\000`\0003\003\001\0009\000`\0004\0002\000`\000"\003\007\0006\0001\0003\000A\000`\000`\0004\0005\000`\0004\0007\000`\000"\0006\0000\0003\000A\000T\000u\000n\000\040\000N\000e\000u\000r\000a\000l\000\040\000N\000e\000t\000w\000o\000r\000k\000s\000\040\000a\000n\000d\000\040\000T\000h\000e\000i\000r\000\040\000P\000r\000o\000p\000e\000r\000t\000i\000e\000s}{section.6.2}% 39 +\BOOKMARK [2][-]{subsection.6.2.2}{\376\377\000T\000h\000e\000\040\000`\0003\003\001\0009\000`\0004\0002\000`\000"\003\007\0006\0001\0003\000A\000`\000`\0004\0005\000`\0004\0007\000`\000"\0006\0000\0003\000A\000P\000w\000r\000\040\000N\000e\000u\000r\000a\000l\000\040\000N\000e\000t\000w\000o\000r\000k\000s\000\040\000a\000n\000d\000\040\000T\000h\000e\000i\000r\000\040\000P\000r\000o\000p\000e\000r\000t\000i\000e\000s}{section.6.2}% 40 +\BOOKMARK [2][-]{subsection.6.2.3}{\376\377\000T\000h\000e\000\040\000`\0003\003\001\0009\000`\0004\0002\000`\000"\003\007\0006\0001\0003\000A\000`\000`\0004\0005\000`\0004\0007\000`\000"\0006\0000\0003\000A\000T\000a\000y\000\040\000N\000e\000u\000r\000a\000l\000\040\000N\000e\000t\000w\000o\000r\000k\000s\000\040\000a\000n\000d\000\040\000T\000h\000e\000i\000r\000\040\000P\000r\000o\000p\000e\000r\000t\000i\000e\000s}{section.6.2}% 41 +\BOOKMARK [2][-]{subsection.6.2.4}{\376\377\000N\000e\000u\000r\000a\000l\000\040\000N\000e\000t\000w\000o\000r\000k\000\040\000A\000p\000p\000r\000o\000x\000i\000m\000a\000t\000i\000o\000n\000s\000\040\000F\000o\000r\000\040\000e\000x\000.}{section.6.2}% 42 +\BOOKMARK [0][-]{chapter.7}{\376\377\000A\000\040\000m\000o\000d\000i\000f\000i\000e\000d\000\040\000M\000u\000l\000t\000i\000-\000L\000e\000v\000e\000l\000\040\000P\000i\000c\000a\000r\000d\000\040\000a\000n\000d\000\040\000A\000s\000s\000o\000c\000i\000a\000t\000e\000d\000\040\000N\000e\000u\000r\000a\000l\000\040\000N\000e\000t\000w\000o\000r\000k}{part.2}% 43 +\BOOKMARK [0][-]{chapter.8}{\376\377\000A\000N\000N\000\040\000f\000i\000r\000s\000t\000\040\000a\000p\000p\000r\000o\000x\000i\000m\000a\000t\000i\000o\000n\000s}{part.2}% 44 +\BOOKMARK [1][-]{section.8.1}{\376\377\000A\000c\000t\000i\000v\000a\000t\000i\000o\000n\000\040\000F\000u\000n\000c\000t\000i\000o\000n\000\040\000a\000s\000\040\000N\000e\000u\000r\000a\000l\000\040\000N\000e\000t\000w\000o\000r\000k\000s}{chapter.8}% 45 +\BOOKMARK [1][-]{section.8.2}{\376\377\000A\000N\000N\000\040\000R\000e\000p\000r\000e\000s\000e\000n\000t\000a\000t\000i\000o\000n\000s\000\040\000f\000o\000r\000\040\000O\000n\000e\000-\000D\000i\000m\000e\000n\000s\000i\000o\000n\000a\000l\000\040\000I\000d\000e\000n\000t\000i\000t\000y}{chapter.8}% 46 +\BOOKMARK [1][-]{section.8.3}{\376\377\000M\000o\000d\000u\000l\000u\000s\000\040\000o\000f\000\040\000C\000o\000n\000t\000i\000n\000u\000i\000t\000y}{chapter.8}% 47 +\BOOKMARK [1][-]{section.8.4}{\376\377\000L\000i\000n\000e\000a\000r\000\040\000I\000n\000t\000e\000r\000p\000o\000l\000a\000t\000i\000o\000n\000\040\000o\000f\000\040\000R\000e\000a\000l\000-\000V\000a\000l\000u\000e\000d\000\040\000F\000u\000n\000c\000t\000i\000o\000n\000s}{chapter.8}% 48 +\BOOKMARK [2][-]{subsection.8.4.1}{\376\377\000T\000h\000e\000\040\000L\000i\000n\000e\000a\000r\000\040\000I\000n\000t\000e\000r\000p\000o\000l\000a\000t\000i\000o\000n\000\040\000O\000p\000e\000r\000a\000t\000o\000r}{section.8.4}% 49 +\BOOKMARK [2][-]{subsection.8.4.2}{\376\377\000N\000e\000u\000r\000a\000l\000\040\000N\000e\000t\000w\000o\000r\000k\000s\000\040\000t\000o\000\040\000A\000p\000p\000r\000o\000x\000i\000m\000a\000t\000e\000\040\000t\000h\000e\000\040\000`\0003\003\001\0009\000`\0004\0002\000`\000"\003\007\0006\0001\0003\000A\000`\000`\0004\0005\000`\0004\0007\000`\000"\0006\0000\0003\000A\000L\000i\000n\000\040\000O\000p\000e\000r\000a\000t\000o\000r}{section.8.4}% 50 +\BOOKMARK [1][-]{section.8.5}{\376\377\000N\000e\000u\000r\000a\000l\000\040\000N\000e\000t\000w\000o\000r\000k\000\040\000A\000p\000p\000r\000o\000x\000i\000m\000a\000t\000i\000o\000n\000s\000\040\000o\000f\000\040\0001\000-\000d\000i\000m\000e\000n\000s\000i\000o\000n\000a\000l\000\040\000F\000u\000n\000c\000t\000i\000o\000n\000s\000.}{chapter.8}% 51 +\BOOKMARK [1][-]{section.8.6}{\376\377\000`\0003\003\001\0009\000`\0004\0002\000`\000"\003\007\0006\0001\0003\000A\000`\000`\0004\0005\000`\0004\0007\000`\000"\0006\0000\0003\000A\000T\000r\000p\000h\000\040\000a\000n\000d\000\040\000N\000e\000u\000r\000a\000l\000\040\000N\000e\000t\000w\000o\000r\000k\000\040\000A\000p\000p\000r\000o\000x\000i\000m\000a\000t\000i\000o\000n\000s\000\040\000F\000o\000r\000\040\000t\000h\000e\000\040\000T\000r\000a\000p\000e\000z\000o\000i\000d\000a\000l\000\040\000R\000u\000l\000e\000.}{chapter.8}% 52 +\BOOKMARK [1][-]{section.8.7}{\376\377\000L\000i\000n\000e\000a\000r\000\040\000I\000n\000t\000e\000r\000p\000o\000l\000a\000t\000i\000o\000n\000\040\000f\000o\000r\000\040\000M\000u\000l\000t\000i\000-\000D\000i\000m\000e\000n\000s\000i\000o\000n\000a\000l\000\040\000F\000u\000n\000c\000t\000i\000o\000n\000s}{chapter.8}% 53 +\BOOKMARK [2][-]{subsection.8.7.1}{\376\377\000T\000h\000e\000\040\000`\0003\003\001\0009\000`\0004\0002\000`\000"\003\007\0006\0001\0003\000A\000`\000`\0004\0005\000`\0004\0007\000`\000"\0006\0000\0003\000A\000N\000r\000m\000d\0001\000\040\000a\000n\000d\000\040\000`\0003\003\001\0009\000`\0004\0002\000`\000"\003\007\0006\0001\0003\000A\000`\000`\0004\0005\000`\0004\0007\000`\000"\0006\0000\0003\000A\000M\000x\000m\000d\000\040\000N\000e\000t\000w\000o\000r\000k\000s}{section.8.7}% 54 +\BOOKMARK [2][-]{subsection.8.7.2}{\376\377\000T\000h\000e\000\040\000`\0003\003\001\0009\000`\0004\0002\000`\000"\003\007\0006\0001\0003\000A\000`\000`\0004\0005\000`\0004\0007\000`\000"\0006\0000\0003\000A\000M\000x\000m\000d\000\040\000N\000e\000u\000r\000a\000l\000\040\000N\000e\000t\000w\000o\000r\000k\000\040\000a\000n\000d\000\040\000M\000a\000x\000i\000m\000u\000m\000\040\000C\000o\000n\000v\000o\000l\000u\000t\000i\000o\000n\000s\000\040}{section.8.7}% 55 +\BOOKMARK [2][-]{subsection.8.7.3}{\376\377\000L\000i\000p\000s\000c\000h\000i\000t\000z\000\040\000F\000u\000n\000c\000t\000i\000o\000n\000\040\000A\000p\000p\000r\000o\000x\000i\000m\000a\000t\000i\000o\000n\000s}{section.8.7}% 56 +\BOOKMARK [2][-]{subsection.8.7.4}{\376\377\000E\000x\000p\000l\000i\000c\000i\000t\000\040\000A\000N\000N\000\040\000A\000p\000p\000r\000o\000x\000i\000m\000a\000t\000i\000o\000n\000s\000\040}{section.8.7}% 57 +\BOOKMARK [-1][-]{part.3}{\376\377\000I\000I\000I\000\040\000A\000\040\000d\000e\000e\000p\000-\000l\000e\000a\000r\000n\000i\000n\000g\000\040\000s\000o\000l\000u\000t\000i\000o\000n\000\040\000f\000o\000r\000\040\000u\000\040\000a\000n\000d\000\040\000B\000r\000o\000w\000n\000i\000a\000n\000\040\000m\000o\000t\000i\000o\000n\000s}{}% 58 +\BOOKMARK [0][-]{chapter.9}{\376\377\000A\000N\000N\000\040\000r\000e\000p\000r\000e\000s\000e\000n\000t\000a\000t\000i\000o\000n\000s\000\040\000o\000f\000\040\000B\000r\000o\000w\000n\000i\000a\000n\000\040\000M\000o\000t\000i\000o\000n\000\040\000M\000o\000n\000t\000e\000\040\000C\000a\000r\000l\000o}{part.3}% 59 +\BOOKMARK [1][-]{subsection.9.0.1}{\376\377\000T\000h\000e\000\040\000E\000\040\000N\000e\000u\000r\000a\000l\000\040\000N\000e\000t\000w\000o\000r\000k}{chapter.9}% 60 +\BOOKMARK [2][-]{subsection.9.0.2}{\376\377\000T\000h\000e\000\040\000U\000E\000\040\000N\000e\000u\000r\000a\000l\000\040\000N\000e\000t\000w\000o\000r\000k}{subsection.9.0.1}% 61 +\BOOKMARK [2][-]{subsection.9.0.3}{\376\377\000T\000h\000e\000\040\000U\000E\000X\000\040\000n\000e\000t\000w\000o\000r\000k}{subsection.9.0.1}% 62 +\BOOKMARK [2][-]{subsection.9.0.4}{\376\377\000T\000h\000e\000\040\000U\000E\000S\000\040\000n\000e\000t\000w\000o\000r\000k}{subsection.9.0.1}% 63 +\BOOKMARK [1][-]{section.9.1}{\376\377\000B\000r\000i\000n\000g\000i\000n\000g\000\040\000I\000t\000\040\000A\000l\000l\000\040\000T\000o\000g\000e\000t\000h\000e\000r}{chapter.9}% 64 +\BOOKMARK [0][-]{chapter.10}{\376\377\000C\000o\000n\000c\000l\000u\000s\000i\000o\000n\000s\000\040\000a\000n\000d\000\040\000F\000u\000r\000t\000h\000e\000r\000\040\000R\000e\000s\000e\000a\000r\000c\000h}{part.3}% 65 +\BOOKMARK [1][-]{section.10.1}{\376\377\000F\000u\000r\000t\000h\000e\000r\000\040\000o\000p\000e\000r\000a\000t\000i\000o\000n\000s\000\040\000a\000n\000d\000\040\000f\000u\000r\000t\000h\000e\000r\000\040\000k\000i\000n\000d\000s\000\040\000o\000f\000\040\000n\000e\000u\000r\000a\000l\000\040\000n\000e\000t\000w\000o\000r\000k\000s}{chapter.10}% 66 +\BOOKMARK [2][-]{subsection.10.1.1}{\376\377\000M\000e\000r\000g\000e\000r\000s\000\040\000a\000n\000d\000\040\000D\000r\000o\000p\000o\000u\000t}{section.10.1}% 67 +\BOOKMARK [1][-]{section.10.2}{\376\377\000C\000o\000d\000e\000\040\000L\000i\000s\000t\000i\000n\000g\000s}{chapter.10}% 68 diff --git a/Dissertation_unzipped/.texpadtmp/main.synctex.gz b/Dissertation_unzipped/.texpadtmp/main.synctex.gz new file mode 100644 index 0000000..e3c5db6 Binary files /dev/null and b/Dissertation_unzipped/.texpadtmp/main.synctex.gz differ diff --git a/Dissertation_unzipped/.texpadtmp/main.toc b/Dissertation_unzipped/.texpadtmp/main.toc new file mode 100644 index 0000000..99a49a0 --- /dev/null +++ b/Dissertation_unzipped/.texpadtmp/main.toc @@ -0,0 +1,68 @@ +\contentsline {part}{I\hspace {1em}On Convergence of Brownian Motion Monte Carlo}{4}{part.1}% +\contentsline {chapter}{\numberline {1}Introduction.}{5}{chapter.1}% +\contentsline {section}{\numberline {1.1}Motivation}{5}{section.1.1}% +\contentsline {section}{\numberline {1.2}Notation, Definitions \& Basic notions.}{6}{section.1.2}% +\contentsline {subsection}{\numberline {1.2.1}Norms and Inner Product}{7}{subsection.1.2.1}% +\contentsline {subsection}{\numberline {1.2.2}Probability Space and Brownian Motion}{8}{subsection.1.2.2}% +\contentsline {subsection}{\numberline {1.2.3}Lipschitz and Related Notions}{10}{subsection.1.2.3}% +\contentsline {subsection}{\numberline {1.2.4}Kolmogorov Equations}{12}{subsection.1.2.4}% +\contentsline {subsection}{\numberline {1.2.5}Linear Algebra Notation and Definitions}{13}{subsection.1.2.5}% +\contentsline {subsection}{\numberline {1.2.6}$O$-type Notation and Function Growth}{15}{subsection.1.2.6}% +\contentsline {subsection}{\numberline {1.2.7}The Concatenation of Vectors \& Functions}{16}{subsection.1.2.7}% +\contentsline {chapter}{\numberline {2}Brownian Motion Monte Carlo}{19}{chapter.2}% +\contentsline {section}{\numberline {2.1}Brownian Motion Preliminaries}{19}{section.2.1}% +\contentsline {section}{\numberline {2.2}Monte Carlo Approximations}{25}{section.2.2}% +\contentsline {section}{\numberline {2.3}Bounds and Covnvergence}{26}{section.2.3}% +\contentsline {chapter}{\numberline {3}That $u$ is a Viscosity Solution}{35}{chapter.3}% +\contentsline {section}{\numberline {3.1}Some Preliminaries}{35}{section.3.1}% +\contentsline {section}{\numberline {3.2}Viscosity Solutions}{39}{section.3.2}% +\contentsline {section}{\numberline {3.3}Solutions, Characterization, and Computational Bounds to the Kolmogorov Backward Equations}{58}{section.3.3}% +\contentsline {chapter}{\numberline {4}Brownian motion Monte Carlo of the non-linear case}{64}{chapter.4}% +\contentsline {part}{II\hspace {1em}A Structural Description of Artificial Neural Networks}{66}{part.2}% +\contentsline {chapter}{\numberline {5}Introduction and Basic Notions About Neural Networks}{67}{chapter.5}% +\contentsline {section}{\numberline {5.1}The Basic Definition of ANNs and realizations of ANNs}{67}{section.5.1}% +\contentsline {section}{\numberline {5.2}Compositions of ANNs}{70}{section.5.2}% +\contentsline {subsection}{\numberline {5.2.1}Composition}{71}{subsection.5.2.1}% +\contentsline {section}{\numberline {5.3}Parallelization of ANNs of Equal Depth}{76}{section.5.3}% +\contentsline {section}{\numberline {5.4}Parallelization of ANNs of Unequal Depth}{80}{section.5.4}% +\contentsline {section}{\numberline {5.5}Affine Linear Transformations as ANNs and Their Properties.}{82}{section.5.5}% +\contentsline {section}{\numberline {5.6}Sums of ANNs of Same End-widths}{84}{section.5.6}% +\contentsline {subsection}{\numberline {5.6.1}Neural Network Sum Properties}{85}{subsection.5.6.1}% +\contentsline {subsection}{\numberline {5.6.2}Sum of ANNs of Unequal Depth But Same End-widths}{92}{subsection.5.6.2}% +\contentsline {section}{\numberline {5.7}Linear Combinations of ANNs and Their Properties}{93}{section.5.7}% +\contentsline {section}{\numberline {5.8}Neural Network Diagrams}{103}{section.5.8}% +\contentsline {chapter}{\numberline {6}ANN Product Approximations}{106}{chapter.6}% +\contentsline {section}{\numberline {6.1}Approximation for Products of Two Real Numbers}{106}{section.6.1}% +\contentsline {subsection}{\numberline {6.1.1}The squares of real numbers}{107}{subsection.6.1.1}% +\contentsline {subsection}{\numberline {6.1.2}The $\prd $ network}{118}{subsection.6.1.2}% +\contentsline {section}{\numberline {6.2}Higher Approximations}{123}{section.6.2}% +\contentsline {subsection}{\numberline {6.2.1}The $\tun $ Neural Networks and Their Properties}{124}{subsection.6.2.1}% +\contentsline {subsection}{\numberline {6.2.2}The $\pwr $ Neural Networks and Their Properties}{129}{subsection.6.2.2}% +\contentsline {subsection}{\numberline {6.2.3}The $\tay $ Neural Networks and Their Properties}{139}{subsection.6.2.3}% +\contentsline {subsection}{\numberline {6.2.4}Neural Network Approximations For $e^x$.}{144}{subsection.6.2.4}% +\contentsline {chapter}{\numberline {7}A modified Multi-Level Picard and Associated Neural Network}{145}{chapter.7}% +\contentsline {chapter}{\numberline {8}ANN first approximations}{148}{chapter.8}% +\contentsline {section}{\numberline {8.1}Activation Function as Neural Networks}{148}{section.8.1}% +\contentsline {section}{\numberline {8.2}ANN Representations for One-Dimensional Identity}{149}{section.8.2}% +\contentsline {section}{\numberline {8.3}Modulus of Continuity}{158}{section.8.3}% +\contentsline {section}{\numberline {8.4}Linear Interpolation of Real-Valued Functions}{158}{section.8.4}% +\contentsline {subsection}{\numberline {8.4.1}The Linear Interpolation Operator}{159}{subsection.8.4.1}% +\contentsline {subsection}{\numberline {8.4.2}Neural Networks to Approximate the $\lin $ Operator}{160}{subsection.8.4.2}% +\contentsline {section}{\numberline {8.5}Neural Network Approximations of 1-dimensional Functions.}{164}{section.8.5}% +\contentsline {section}{\numberline {8.6}$\trp ^h$ and Neural Network Approximations For the Trapezoidal Rule.}{167}{section.8.6}% +\contentsline {section}{\numberline {8.7}Linear Interpolation for Multi-Dimensional Functions}{170}{section.8.7}% +\contentsline {subsection}{\numberline {8.7.1}The $\nrm ^d_1$ and $\mxm ^d$ Networks}{170}{subsection.8.7.1}% +\contentsline {subsection}{\numberline {8.7.2}The $\mxm ^d$ Neural Network and Maximum Convolutions }{176}{subsection.8.7.2}% +\contentsline {subsection}{\numberline {8.7.3}Lipschitz Function Approximations}{180}{subsection.8.7.3}% +\contentsline {subsection}{\numberline {8.7.4}Explicit ANN Approximations }{182}{subsection.8.7.4}% +\contentsline {part}{III\hspace {1em}A deep-learning solution for $u$ and Brownian motions}{184}{part.3}% +\contentsline {chapter}{\numberline {9}ANN representations of Brownian Motion Monte Carlo}{185}{chapter.9}% +\contentsline {subsection}{\numberline {9.0.1}The $\mathsf {E}$ Neural Network}{188}{subsection.9.0.1}% +\contentsline {subsection}{\numberline {9.0.2}The $\mathsf {UE}$ Neural Network}{193}{subsection.9.0.2}% +\contentsline {subsection}{\numberline {9.0.3}The $\mathsf {UEX}$ network}{197}{subsection.9.0.3}% +\contentsline {subsection}{\numberline {9.0.4}The $\mathsf {UES}$ network}{201}{subsection.9.0.4}% +\contentsline {section}{\numberline {9.1}Bringing It All Together}{203}{section.9.1}% +\contentsline {chapter}{\numberline {10}Conclusions and Further Research}{204}{chapter.10}% +\contentsline {section}{\numberline {10.1}Further operations and further kinds of neural networks}{204}{section.10.1}% +\contentsline {subsection}{\numberline {10.1.1}Mergers and Dropout}{204}{subsection.10.1.1}% +\contentsline {section}{\numberline {10.2}Code Listings}{206}{section.10.2}% diff --git a/Dissertation_unzipped/.texpadtmp/modified_mlp_associated_nn.aux b/Dissertation_unzipped/.texpadtmp/modified_mlp_associated_nn.aux new file mode 100644 index 0000000..57d5d9c --- /dev/null +++ b/Dissertation_unzipped/.texpadtmp/modified_mlp_associated_nn.aux @@ -0,0 +1,59 @@ +\relax +\providecommand\hyper@newdestlabel[2]{} +\@writefile{toc}{\contentsline {chapter}{\numberline {7}A modified Multi-Level Picard and Associated Neural Network}{145}{chapter.7}\protected@file@percent } +\@writefile{lof}{\addvspace {10\p@ }} +\@writefile{lot}{\addvspace {10\p@ }} +\newlabel{7.0.1}{{7.0.1}{145}{}{equation.7.0.1}{}} +\newlabel{7.0.1@cref}{{[equation][1][7,0]7.0.1}{[1][145][]145}} +\newlabel{7.0.2}{{7.0.2}{145}{A modified Multi-Level Picard and Associated Neural Network}{equation.7.0.2}{}} +\newlabel{7.0.2@cref}{{[equation][2][7,0]7.0.2}{[1][145][]145}} +\@setckpt{modified_mlp_associated_nn}{ +\setcounter{page}{148} +\setcounter{equation}{7} +\setcounter{enumi}{7} +\setcounter{enumii}{0} +\setcounter{enumiii}{0} +\setcounter{enumiv}{0} +\setcounter{footnote}{0} +\setcounter{mpfootnote}{0} +\setcounter{part}{2} +\setcounter{chapter}{7} +\setcounter{section}{0} +\setcounter{subsection}{0} +\setcounter{subsubsection}{0} +\setcounter{paragraph}{0} +\setcounter{subparagraph}{0} +\setcounter{figure}{0} +\setcounter{table}{0} +\setcounter{@pps}{0} +\setcounter{@ppsavesec}{0} +\setcounter{@ppsaveapp}{0} +\setcounter{AM@survey}{0} +\setcounter{parentequation}{0} +\setcounter{section@level}{2} +\setcounter{Item}{169} +\setcounter{Hfootnote}{1} +\setcounter{Hy@AnnotLevel}{0} +\setcounter{bookmark@seq@number}{43} +\setcounter{NAT@ctr}{0} +\setcounter{ALG@line}{0} +\setcounter{ALG@rem}{0} +\setcounter{ALG@nested}{0} +\setcounter{ALG@Lnr}{1} +\setcounter{ALG@blocknr}{1} +\setcounter{ALG@storecount}{0} +\setcounter{ALG@tmpcounter}{0} +\setcounter{@stackindex}{0} +\setcounter{ROWcellindex@}{0} +\setcounter{lstnumber}{1} +\setcounter{theorem}{2} +\setcounter{corollary}{0} +\setcounter{lstlisting}{0} +\setcounter{nn@layerindex@counter}{4} +\setcounter{nn@lastlayerstart@counter}{0} +\setcounter{nn@thislayerstart@counter}{1} +\setcounter{nn@lastlayercount@counter}{3} +\setcounter{nn@thislayercount@counter}{2} +\setcounter{nn@lastlayerindex@counter}{2} +\setcounter{nn@thislayerindex@counter}{3} +} diff --git a/Dissertation_unzipped/.texpadtmp/neural_network_introduction.aux b/Dissertation_unzipped/.texpadtmp/neural_network_introduction.aux new file mode 100644 index 0000000..5e38a7f --- /dev/null +++ b/Dissertation_unzipped/.texpadtmp/neural_network_introduction.aux @@ -0,0 +1,213 @@ +\relax +\providecommand\hyper@newdestlabel[2]{} +\citation{grohsetal} +\@writefile{toc}{\contentsline {chapter}{\numberline {5}Introduction and Basic Notions About Neural Networks}{67}{chapter.5}\protected@file@percent } +\@writefile{lof}{\addvspace {10\p@ }} +\@writefile{lot}{\addvspace {10\p@ }} +\@writefile{toc}{\contentsline {section}{\numberline {5.1}The Basic Definition of ANNs and realizations of ANNs}{67}{section.5.1}\protected@file@percent } +\newlabel{5.1.2}{{5.1.2}{67}{Artificial Neural Networks}{theorem.5.1.2}{}} +\newlabel{5.1.2@cref}{{[definition][2][5,1]5.1.2}{[1][67][]67}} +\newlabel{paramdef}{{5.1.3}{68}{Artificial Neural Networks}{equation.5.1.3}{}} +\newlabel{paramdef@cref}{{[equation][3][5,1]5.1.3}{[1][68][]68}} +\citation{petersen_optimal_2018} +\citation{grohs2019spacetime} +\newlabel{widthdef}{{5.1.9}{69}{Artificial Neural Networks}{equation.5.1.9}{}} +\newlabel{widthdef@cref}{{[equation][9][5,1]5.1.9}{[1][68][]69}} +\newlabel{5.1.11}{{5.1.10}{69}{Realizations of Artificial Neural Networks with Activation Functions}{equation.5.1.10}{}} +\newlabel{5.1.11@cref}{{[equation][10][5,1]5.1.10}{[1][69][]69}} +\newlabel{5.1.8}{{5.1.6}{70}{}{theorem.5.1.6}{}} +\newlabel{5.1.8@cref}{{[lemma][6][5,1]5.1.6}{[1][70][]70}} +\@writefile{toc}{\contentsline {section}{\numberline {5.2}Compositions of ANNs}{70}{section.5.2}\protected@file@percent } +\@writefile{toc}{\contentsline {subsection}{\numberline {5.2.1}Composition}{71}{subsection.5.2.1}\protected@file@percent } +\newlabel{5.2.1}{{5.2.1}{71}{Compositions of ANNs}{theorem.5.2.1}{}} +\newlabel{5.2.1@cref}{{[definition][1][5,2]5.2.1}{[1][70][]71}} +\newlabel{5.2.1}{{5.2.1}{71}{Compositions of ANNs}{equation.5.2.1}{}} +\newlabel{5.2.1@cref}{{[equation][1][5,2]5.2.1}{[1][71][]71}} +\newlabel{depthofcomposition}{{5.2.3}{71}{}{theorem.5.2.3}{}} +\newlabel{depthofcomposition@cref}{{[lemma][3][5,2]5.2.3}{[1][71][]71}} +\newlabel{5.2.3}{{5.2.4}{71}{}{theorem.5.2.4}{}} +\newlabel{5.2.3@cref}{{[lemma][4][5,2]5.2.4}{[1][71][]71}} +\citation{grohs2019spacetime} +\citation{grohs2019spacetime} +\newlabel{comp_prop}{{5.2.5}{72}{}{theorem.5.2.5}{}} +\newlabel{comp_prop@cref}{{[lemma][5][5,2]5.2.5}{[1][72][]72}} +\newlabel{comp_x}{{5.2.6}{73}{Composition}{equation.5.2.6}{}} +\newlabel{comp_x@cref}{{[equation][6][5,2]5.2.6}{[1][73][]73}} +\newlabel{comp_y}{{5.2.7}{73}{Composition}{equation.5.2.7}{}} +\newlabel{comp_y@cref}{{[equation][7][5,2]5.2.7}{[1][73][]73}} +\newlabel{comp_z}{{5.2.8}{73}{Composition}{equation.5.2.8}{}} +\newlabel{comp_z@cref}{{[equation][8][5,2]5.2.8}{[1][73][]73}} +\newlabel{comp_cont}{{5.2.10}{74}{Composition}{equation.5.2.10}{}} +\newlabel{comp_cont@cref}{{[equation][10][5,2]5.2.10}{[1][74][]74}} +\newlabel{(5.2.12)}{{5.2.13}{75}{Composition}{equation.5.2.13}{}} +\newlabel{(5.2.12)@cref}{{[equation][13][5,2]5.2.13}{[1][74][]75}} +\newlabel{(5.2.13)}{{5.2.14}{75}{Composition}{equation.5.2.14}{}} +\newlabel{(5.2.13)@cref}{{[equation][14][5,2]5.2.14}{[1][75][]75}} +\@writefile{toc}{\contentsline {section}{\numberline {5.3}Parallelization of ANNs of Equal Depth}{76}{section.5.3}\protected@file@percent } +\newlabel{5.2.5}{{5.3.1}{76}{Parallelization of ANNs of same depth}{theorem.5.3.1}{}} +\newlabel{5.2.5@cref}{{[definition][1][5,3]5.3.1}{[1][76][]76}} +\newlabel{5.4.2}{{5.3.2}{77}{Parallelization of ANNs of same depth}{equation.5.3.2}{}} +\newlabel{5.4.2@cref}{{[equation][2][5,3]5.3.2}{[1][76][]77}} +\newlabel{5.3.2}{{5.3.3}{77}{}{theorem.5.3.3}{}} +\newlabel{5.3.2@cref}{{[remark][3][5,3]5.3.3}{[1][77][]77}} +\newlabel{(5.3.3)}{{5.3.3}{77}{}{equation.5.3.3}{}} +\newlabel{(5.3.3)@cref}{{[equation][3][5,3]5.3.3}{[1][77][]77}} +\newlabel{paramofparallel}{{5.3.4}{77}{}{theorem.5.3.4}{}} +\newlabel{paramofparallel@cref}{{[lemma][4][5,3]5.3.4}{[1][77][]77}} +\newlabel{cor:sameparal}{{5.3.4.1}{78}{}{corollary.5.3.4.1}{}} +\newlabel{cor:sameparal@cref}{{[corollary][1][]5.3.4.1}{[1][78][]78}} +\newlabel{5.4.3}{{5.3.5}{79}{}{theorem.5.3.5}{}} +\newlabel{5.4.3@cref}{{[lemma][5][5,3]5.3.5}{[1][79][]79}} +\newlabel{5.3.4}{{5.3.6}{79}{}{theorem.5.3.6}{}} +\newlabel{5.3.4@cref}{{[lemma][6][5,3]5.3.6}{[1][79][]79}} +\newlabel{5.3.5}{{5.3.10}{79}{Parallelization of ANNs of Equal Depth}{equation.5.3.10}{}} +\newlabel{5.3.5@cref}{{[equation][10][5,3]5.3.10}{[1][79][]79}} +\@writefile{toc}{\contentsline {section}{\numberline {5.4}Parallelization of ANNs of Unequal Depth}{80}{section.5.4}\protected@file@percent } +\newlabel{7.2.1}{{5.4.1}{80}{Identity Neural Network}{theorem.5.4.1}{}} +\newlabel{7.2.1@cref}{{[definition][1][5,4]5.4.1}{[1][80][]80}} +\newlabel{7.2.2}{{5.4.2}{80}{Identity Neural Network}{equation.5.4.2}{}} +\newlabel{7.2.2@cref}{{[equation][2][5,4]5.4.2}{[1][80][]80}} +\@writefile{toc}{\contentsline {section}{\numberline {5.5}Affine Linear Transformations as ANNs and Their Properties.}{82}{section.5.5}\protected@file@percent } +\newlabel{5.3.1}{{5.5.1}{82}{}{theorem.5.5.1}{}} +\newlabel{5.3.1@cref}{{[definition][1][5,5]5.5.1}{[1][81][]82}} +\newlabel{5.3.2}{{5.5.2}{82}{}{theorem.5.5.2}{}} +\newlabel{5.3.2@cref}{{[lemma][2][5,5]5.5.2}{[1][82][]82}} +\newlabel{remark:5.4.3}{{5.5.3}{82}{}{theorem.5.5.3}{}} +\newlabel{remark:5.4.3@cref}{{[remark][3][5,5]5.5.3}{[1][82][]82}} +\newlabel{5.3.3}{{5.5.5}{82}{}{theorem.5.5.5}{}} +\newlabel{5.3.3@cref}{{[lemma][5][5,5]5.5.5}{[1][82][]82}} +\newlabel{affcor}{{5.5.5.1}{83}{}{corollary.5.5.5.1}{}} +\newlabel{affcor@cref}{{[corollary][1][]5.5.5.1}{[1][83][]83}} +\@writefile{toc}{\contentsline {section}{\numberline {5.6}Sums of ANNs of Same End-widths}{84}{section.5.6}\protected@file@percent } +\newlabel{dep_cpy}{{5.6.2}{84}{}{theorem.5.6.2}{}} +\newlabel{dep_cpy@cref}{{[lemma][2][5,6]5.6.2}{[1][84][]84}} +\newlabel{lem:5.5.4}{{5.6.6}{85}{}{theorem.5.6.6}{}} +\newlabel{lem:5.5.4@cref}{{[lemma][6][5,6]5.6.6}{[1][85][]85}} +\newlabel{5.4.3}{{5.6.3}{85}{Sum of ANNs of the same depth and same end widths}{equation.5.6.3}{}} +\newlabel{5.4.3@cref}{{[equation][3][5,6]5.6.3}{[1][85][]85}} +\@writefile{toc}{\contentsline {subsection}{\numberline {5.6.1}Neural Network Sum Properties}{85}{subsection.5.6.1}\protected@file@percent } +\newlabel{paramsum}{{5.6.9}{85}{}{theorem.5.6.9}{}} +\newlabel{paramsum@cref}{{[lemma][9][5,6]5.6.9}{[1][85][]85}} +\newlabel{(5.5.6)}{{5.6.6}{86}{Neural Network Sum Properties}{equation.5.6.6}{}} +\newlabel{(5.5.6)@cref}{{[equation][6][5,6]5.6.6}{[1][86][]86}} +\newlabel{corsum}{{5.6.9.1}{86}{}{corollary.5.6.9.1}{}} +\newlabel{corsum@cref}{{[corollary][1][]5.6.9.1}{[1][86][]86}} +\newlabel{depth_prop}{{5.6.10}{87}{}{theorem.5.6.10}{}} +\newlabel{depth_prop@cref}{{[lemma][10][5,6]5.6.10}{[1][87][]87}} +\newlabel{5.4.6}{{5.6.11}{87}{}{theorem.5.6.11}{}} +\newlabel{5.4.6@cref}{{[lemma][11][5,6]5.6.11}{[1][87][]87}} +\newlabel{5.4.10}{{5.6.15}{88}{Neural Network Sum Properties}{equation.5.6.15}{}} +\newlabel{5.4.10@cref}{{[equation][15][5,6]5.6.15}{[1][88][]88}} +\citation{Grohs_2022} +\newlabel{5.4.11}{{5.6.16}{89}{Neural Network Sum Properties}{equation.5.6.16}{}} +\newlabel{5.4.11@cref}{{[equation][16][5,6]5.6.16}{[1][88][]89}} +\newlabel{5.4.12}{{5.6.17}{89}{Neural Network Sum Properties}{equation.5.6.17}{}} +\newlabel{5.4.12@cref}{{[equation][17][5,6]5.6.17}{[1][89][]89}} +\newlabel{5.4.13}{{5.6.18}{89}{Neural Network Sum Properties}{equation.5.6.18}{}} +\newlabel{5.4.13@cref}{{[equation][18][5,6]5.6.18}{[1][89][]89}} +\newlabel{5.4.7}{{5.6.12}{89}{}{theorem.5.6.12}{}} +\newlabel{5.4.7@cref}{{[lemma][12][5,6]5.6.12}{[1][89][]89}} +\newlabel{5.4.17}{{5.6.22}{90}{Neural Network Sum Properties}{equation.5.6.22}{}} +\newlabel{5.4.17@cref}{{[equation][22][5,6]5.6.22}{[1][90][]90}} +\newlabel{5.4.8}{{5.6.13}{90}{}{theorem.5.6.13}{}} +\newlabel{5.4.8@cref}{{[lemma][13][5,6]5.6.13}{[1][90][]90}} +\newlabel{5.4.18}{{5.6.23}{91}{Neural Network Sum Properties}{equation.5.6.23}{}} +\newlabel{5.4.18@cref}{{[equation][23][5,6]5.6.23}{[1][90][]91}} +\newlabel{5.4.19}{{5.6.24}{91}{Neural Network Sum Properties}{equation.5.6.24}{}} +\newlabel{5.4.19@cref}{{[equation][24][5,6]5.6.24}{[1][91][]91}} +\newlabel{5.5.11}{{5.6.16}{91}{}{theorem.5.6.16}{}} +\newlabel{5.5.11@cref}{{[lemma][16][5,6]5.6.16}{[1][91][]91}} +\newlabel{5.5.20}{{5.6.25}{92}{Neural Network Sum Properties}{equation.5.6.25}{}} +\newlabel{5.5.20@cref}{{[equation][25][5,6]5.6.25}{[1][91][]92}} +\newlabel{5.4.12}{{5.6.27}{92}{Neural Network Sum Properties}{equation.5.6.27}{}} +\newlabel{5.4.12@cref}{{[equation][27][5,6]5.6.27}{[1][92][]92}} +\newlabel{nn_sum_cont}{{5.6.17}{92}{}{theorem.5.6.17}{}} +\newlabel{nn_sum_cont@cref}{{[lemma][17][5,6]5.6.17}{[1][92][]92}} +\@writefile{toc}{\contentsline {subsection}{\numberline {5.6.2}Sum of ANNs of Unequal Depth But Same End-widths}{92}{subsection.5.6.2}\protected@file@percent } +\newlabel{lem:diamondplus}{{5.6.19}{93}{}{theorem.5.6.19}{}} +\newlabel{lem:diamondplus@cref}{{[lemma][19][5,6]5.6.19}{[1][92][]93}} +\@writefile{toc}{\contentsline {section}{\numberline {5.7}Linear Combinations of ANNs and Their Properties}{93}{section.5.7}\protected@file@percent } +\newlabel{slm}{{5.7.1}{93}{Scalar left-multiplication with an ANN}{theorem.5.7.1}{}} +\newlabel{slm@cref}{{[definition][1][5,7]5.7.1}{[1][93][]93}} +\newlabel{5.6.3}{{5.7.4}{94}{}{theorem.5.7.4}{}} +\newlabel{5.6.3@cref}{{[lemma][4][5,7]5.7.4}{[1][93][]94}} +\newlabel{5.6.4}{{5.7.5}{94}{}{theorem.5.7.5}{}} +\newlabel{5.6.4@cref}{{[lemma][5][5,7]5.7.5}{[1][94][]94}} +\newlabel{5.6.5}{{5.7.8}{96}{}{theorem.5.7.8}{}} +\newlabel{5.6.5@cref}{{[lemma][8][5,7]5.7.8}{[1][96][]96}} +\citation{Grohs_2022} +\citation{Grohs_2022} +\newlabel{5.3.15}{{5.7.20}{97}{Linear Combinations of ANNs and Their Properties}{equation.5.7.20}{}} +\newlabel{5.3.15@cref}{{[equation][20][5,7]5.7.20}{[1][97][]97}} +\newlabel{5.6.13}{{5.7.21}{97}{Linear Combinations of ANNs and Their Properties}{equation.5.7.21}{}} +\newlabel{5.6.13@cref}{{[equation][21][5,7]5.7.21}{[1][97][]97}} +\citation{Grohs_2022} +\citation{Grohs_2022} +\newlabel{5.6.6}{{5.7.9}{98}{}{theorem.5.7.9}{}} +\newlabel{5.6.6@cref}{{[lemma][9][5,7]5.7.9}{[1][98][]98}} +\citation{Grohs_2022} +\newlabel{5.6.22}{{5.7.30}{99}{Linear Combinations of ANNs and Their Properties}{equation.5.7.30}{}} +\newlabel{5.6.22@cref}{{[equation][30][5,7]5.7.30}{[1][99][]99}} +\newlabel{5.6.23}{{5.7.31}{99}{Linear Combinations of ANNs and Their Properties}{equation.5.7.31}{}} +\newlabel{5.6.23@cref}{{[equation][31][5,7]5.7.31}{[1][99][]99}} +\citation{Grohs_2022} +\newlabel{5.6.9}{{5.7.10}{100}{}{theorem.5.7.10}{}} +\newlabel{5.6.9@cref}{{[lemma][10][5,7]5.7.10}{[1][100][]100}} +\citation{grohs2019spacetime} +\citation{Grohs_2022} +\citation{grohs2019spacetime} +\citation{Grohs_2022} +\citation{vaswani_attention_2017} +\citation{arik_tabnet_2021} +\citation{8099678} +\@writefile{toc}{\contentsline {section}{\numberline {5.8}Neural Network Diagrams}{103}{section.5.8}\protected@file@percent } +\@setckpt{neural_network_introduction}{ +\setcounter{page}{106} +\setcounter{equation}{0} +\setcounter{enumi}{3} +\setcounter{enumii}{0} +\setcounter{enumiii}{0} +\setcounter{enumiv}{0} +\setcounter{footnote}{0} +\setcounter{mpfootnote}{0} +\setcounter{part}{2} +\setcounter{chapter}{5} +\setcounter{section}{8} +\setcounter{subsection}{0} +\setcounter{subsubsection}{0} +\setcounter{paragraph}{0} +\setcounter{subparagraph}{0} +\setcounter{figure}{0} +\setcounter{table}{0} +\setcounter{@pps}{0} +\setcounter{@ppsavesec}{0} +\setcounter{@ppsaveapp}{0} +\setcounter{AM@survey}{0} +\setcounter{parentequation}{0} +\setcounter{section@level}{1} +\setcounter{Item}{111} +\setcounter{Hfootnote}{0} +\setcounter{Hy@AnnotLevel}{0} +\setcounter{bookmark@seq@number}{33} +\setcounter{NAT@ctr}{0} +\setcounter{ALG@line}{0} +\setcounter{ALG@rem}{0} +\setcounter{ALG@nested}{0} +\setcounter{ALG@Lnr}{1} +\setcounter{ALG@blocknr}{1} +\setcounter{ALG@storecount}{0} +\setcounter{ALG@tmpcounter}{0} +\setcounter{@stackindex}{0} +\setcounter{ROWcellindex@}{0} +\setcounter{lstnumber}{1} +\setcounter{theorem}{0} +\setcounter{corollary}{0} +\setcounter{lstlisting}{0} +\setcounter{nn@layerindex@counter}{4} +\setcounter{nn@lastlayerstart@counter}{0} +\setcounter{nn@thislayerstart@counter}{1} +\setcounter{nn@lastlayercount@counter}{3} +\setcounter{nn@thislayercount@counter}{2} +\setcounter{nn@lastlayerindex@counter}{2} +\setcounter{nn@thislayerindex@counter}{3} +} diff --git a/Dissertation_unzipped/.texpadtmp/u_visc_sol.aux b/Dissertation_unzipped/.texpadtmp/u_visc_sol.aux new file mode 100644 index 0000000..8e49815 --- /dev/null +++ b/Dissertation_unzipped/.texpadtmp/u_visc_sol.aux @@ -0,0 +1,202 @@ +\relax +\providecommand\hyper@newdestlabel[2]{} +\citation{crandall_lions} +\citation{Beck_2021} +\citation{Ito1942a} +\citation{Ito1946} +\citation{Beck_2021} +\citation{BHJ21} +\@writefile{toc}{\contentsline {chapter}{\numberline {3}That $u$ is a Viscosity Solution}{35}{chapter.3}\protected@file@percent } +\@writefile{lof}{\addvspace {10\p@ }} +\@writefile{lot}{\addvspace {10\p@ }} +\@writefile{toc}{\contentsline {section}{\numberline {3.1}Some Preliminaries}{35}{section.3.1}\protected@file@percent } +\newlabel{lemma:2.7}{{3.1.1}{35}{}{theorem.3.1.1}{}} +\newlabel{lemma:2.7@cref}{{[lemma][1][3,1]3.1.1}{[1][35][]35}} +\citation{karatzas1991brownian} +\citation{karatzas1991brownian} +\newlabel{lem:3.4}{{3.1.2}{37}{}{theorem.3.1.2}{}} +\newlabel{lem:3.4@cref}{{[lemma][2][3,1]3.1.2}{[1][37][]37}} +\newlabel{2.13}{{3.1.7}{37}{}{equation.3.1.7}{}} +\newlabel{2.13@cref}{{[equation][7][3,1]3.1.7}{[1][37][]37}} +\newlabel{2.14}{{3.1.8}{37}{}{equation.3.1.8}{}} +\newlabel{2.14@cref}{{[equation][8][3,1]3.1.8}{[1][37][]37}} +\citation{da_prato_zabczyk_2002} +\citation{karatzas1991brownian} +\newlabel{(2.19)}{{3.1.10}{38}{Some Preliminaries}{equation.3.1.10}{}} +\newlabel{(2.19)@cref}{{[equation][10][3,1]3.1.10}{[1][38][]38}} +\citation{da_prato_zabczyk_2002} +\@writefile{toc}{\contentsline {section}{\numberline {3.2}Viscosity Solutions}{39}{section.3.2}\protected@file@percent } +\newlabel{sumofusc}{{3.2.3.1}{39}{}{corollary.3.2.3.1}{}} +\newlabel{sumofusc@cref}{{[corollary][1][]3.2.3.1}{[1][39][]39}} +\newlabel{neglsc}{{3.2.3.2}{40}{}{corollary.3.2.3.2}{}} +\newlabel{neglsc@cref}{{[corollary][2][]3.2.3.2}{[1][40][]40}} +\newlabel{negdegel}{{3.2.6}{41}{}{theorem.3.2.6}{}} +\newlabel{negdegel@cref}{{[lemma][6][3,2]3.2.6}{[1][41][]41}} +\newlabel{def:viscsubsolution}{{3.2.7}{41}{Viscosity subsolutions}{theorem.3.2.7}{}} +\newlabel{def:viscsubsolution@cref}{{[definition][7][3,2]3.2.7}{[1][41][]41}} +\newlabel{def:viscsupsolution}{{3.2.8}{41}{Viscosity supersolutions}{theorem.3.2.8}{}} +\newlabel{def:viscsupsolution@cref}{{[definition][8][3,2]3.2.8}{[1][41][]41}} +\newlabel{def:viscsolution}{{3.2.9}{42}{Viscosity solution}{theorem.3.2.9}{}} +\newlabel{def:viscsolution@cref}{{[definition][9][3,2]3.2.9}{[1][42][]42}} +\newlabel{maxviscosity}{{3.2.10}{42}{}{theorem.3.2.10}{}} +\newlabel{maxviscosity@cref}{{[lemma][10][3,2]3.2.10}{[1][42][]42}} +\newlabel{ungeq0}{{3.2.11}{43}{}{theorem.3.2.11}{}} +\newlabel{ungeq0@cref}{{[lemma][11][3,2]3.2.11}{[1][43][]43}} +\newlabel{limitofun}{{3.2.13}{43}{}{equation.3.2.13}{}} +\newlabel{limitofun@cref}{{[equation][13][3,2]3.2.13}{[1][43][]43}} +\newlabel{hessungeq0}{{3.2.15}{43}{}{equation.3.2.15}{}} +\newlabel{hessungeq0@cref}{{[equation][15][3,2]3.2.15}{[1][43][]43}} +\newlabel{phieps}{{3.2.16}{43}{Viscosity Solutions}{equation.3.2.16}{}} +\newlabel{phieps@cref}{{[equation][16][3,2]3.2.16}{[1][43][]43}} +\newlabel{maxphiu}{{3.2.20}{44}{Viscosity Solutions}{equation.3.2.20}{}} +\newlabel{maxphiu@cref}{{[equation][20][3,2]3.2.20}{[1][44][]44}} +\newlabel{unleq0}{{3.2.11.1}{45}{}{corollary.3.2.11.1}{}} +\newlabel{unleq0@cref}{{[corollary][1][]3.2.11.1}{[1][45][]45}} +\newlabel{limitofun}{{3.2.27}{46}{}{equation.3.2.27}{}} +\newlabel{limitofun@cref}{{[equation][27][3,2]3.2.27}{[1][46][]46}} +\newlabel{viscsolutionvn}{{3.2.28}{46}{}{equation.3.2.28}{}} +\newlabel{viscsolutionvn@cref}{{[equation][28][3,2]3.2.28}{[1][46][]46}} +\newlabel{hessungeq0}{{3.2.29}{46}{}{equation.3.2.29}{}} +\newlabel{hessungeq0@cref}{{[equation][29][3,2]3.2.29}{[1][46][]46}} +\newlabel{hgeq0}{{3.2.30}{46}{Viscosity Solutions}{equation.3.2.30}{}} +\newlabel{hgeq0@cref}{{[equation][30][3,2]3.2.30}{[1][46][]46}} +\newlabel{unneq0}{{3.2.11.2}{47}{}{corollary.3.2.11.2}{}} +\newlabel{unneq0@cref}{{[corollary][2][]3.2.11.2}{[1][47][]47}} +\newlabel{absq}{{3.2.12}{47}{}{theorem.3.2.12}{}} +\newlabel{absq@cref}{{[lemma][12][3,2]3.2.12}{[1][47][]47}} +\citation{karatzas1991brownian} +\newlabel{ugoesto0}{{3.2.13}{48}{}{theorem.3.2.13}{}} +\newlabel{ugoesto0@cref}{{[lemma][13][3,2]3.2.13}{[1][48][]48}} +\newlabel{limsupis0}{{3.2.39}{48}{}{equation.3.2.39}{}} +\newlabel{limsupis0@cref}{{[equation][39][3,2]3.2.39}{[1][48][]48}} +\newlabel{xnasintuvxn}{{3.2.40}{48}{}{equation.3.2.40}{}} +\newlabel{xnasintuvxn@cref}{{[equation][40][3,2]3.2.40}{[1][48][]48}} +\newlabel{lipformun}{{3.2.42}{48}{Viscosity Solutions}{equation.3.2.42}{}} +\newlabel{lipformun@cref}{{[equation][42][3,2]3.2.42}{[1][48][]48}} +\newlabel{expofxisbounded}{{3.2.43}{48}{Viscosity Solutions}{equation.3.2.43}{}} +\newlabel{expofxisbounded@cref}{{[equation][43][3,2]3.2.43}{[1][48][]48}} +\newlabel{mathcalxn-mathclx0}{{3.2.44}{49}{Viscosity Solutions}{equation.3.2.44}{}} +\newlabel{mathcalxn-mathclx0@cref}{{[equation][44][3,2]3.2.44}{[1][48][]49}} +\newlabel{2.19}{{3.2.14}{50}{}{theorem.3.2.14}{}} +\newlabel{2.19@cref}{{[lemma][14][3,2]3.2.14}{[1][50][]50}} +\newlabel{2.59}{{3.2.50}{51}{}{equation.3.2.50}{}} +\newlabel{2.59@cref}{{[equation][50][3,2]3.2.50}{[1][51][]51}} +\newlabel{2.60}{{3.2.51}{51}{}{equation.3.2.51}{}} +\newlabel{2.60@cref}{{[equation][51][3,2]3.2.51}{[1][51][]51}} +\newlabel{2.62}{{3.2.53}{51}{Viscosity Solutions}{equation.3.2.53}{}} +\newlabel{2.62@cref}{{[equation][53][3,2]3.2.53}{[1][51][]51}} +\newlabel{2.63}{{3.2.54}{51}{Viscosity Solutions}{equation.3.2.54}{}} +\newlabel{2.63@cref}{{[equation][54][3,2]3.2.54}{[1][51][]51}} +\newlabel{2.64}{{3.2.55}{51}{Viscosity Solutions}{equation.3.2.55}{}} +\newlabel{2.64@cref}{{[equation][55][3,2]3.2.55}{[1][51][]51}} +\citation{BHJ21} +\citation{Beck_2021} +\newlabel{2.65}{{3.2.56}{52}{Viscosity Solutions}{equation.3.2.56}{}} +\newlabel{2.65@cref}{{[equation][56][3,2]3.2.56}{[1][51][]52}} +\newlabel{2.66}{{3.2.57}{52}{Viscosity Solutions}{equation.3.2.57}{}} +\newlabel{2.66@cref}{{[equation][57][3,2]3.2.57}{[1][52][]52}} +\newlabel{ungn}{{3.2.58}{52}{Viscosity Solutions}{equation.3.2.58}{}} +\newlabel{ungn@cref}{{[equation][58][3,2]3.2.58}{[1][52][]52}} +\newlabel{u0gn}{{3.2.59}{52}{Viscosity Solutions}{equation.3.2.59}{}} +\newlabel{u0gn@cref}{{[equation][59][3,2]3.2.59}{[1][52][]52}} +\newlabel{2.70}{{3.2.61}{52}{Viscosity Solutions}{equation.3.2.61}{}} +\newlabel{2.70@cref}{{[equation][61][3,2]3.2.61}{[1][52][]52}} +\newlabel{unu0}{{3.2.62}{53}{Viscosity Solutions}{equation.3.2.62}{}} +\newlabel{unu0@cref}{{[equation][62][3,2]3.2.62}{[1][53][]53}} +\newlabel{2.73}{{3.2.64}{53}{Viscosity Solutions}{equation.3.2.64}{}} +\newlabel{2.73@cref}{{[equation][64][3,2]3.2.64}{[1][53][]53}} +\newlabel{2.74}{{3.2.65}{53}{Viscosity Solutions}{equation.3.2.65}{}} +\newlabel{2.74@cref}{{[equation][65][3,2]3.2.65}{[1][53][]53}} +\newlabel{2.76}{{3.2.67}{54}{Viscosity Solutions}{equation.3.2.67}{}} +\newlabel{2.76@cref}{{[equation][67][3,2]3.2.67}{[1][53][]54}} +\newlabel{2.79}{{3.2.71}{54}{}{equation.3.2.71}{}} +\newlabel{2.79@cref}{{[equation][71][3,2]3.2.71}{[1][54][]54}} +\newlabel{2.81}{{3.2.73}{55}{}{equation.3.2.73}{}} +\newlabel{2.81@cref}{{[equation][73][3,2]3.2.73}{[1][55][]55}} +\newlabel{2.82}{{3.2.74}{55}{Viscosity Solutions}{equation.3.2.74}{}} +\newlabel{2.82@cref}{{[equation][74][3,2]3.2.74}{[1][55][]55}} +\newlabel{2.84}{{3.2.76}{55}{Viscosity Solutions}{equation.3.2.76}{}} +\newlabel{2.84@cref}{{[equation][76][3,2]3.2.76}{[1][55][]55}} +\citation{Beck_2021} +\citation{Beck_2021} +\newlabel{2.86}{{3.2.78}{56}{Viscosity Solutions}{equation.3.2.78}{}} +\newlabel{2.86@cref}{{[equation][78][3,2]3.2.78}{[1][55][]56}} +\newlabel{2.88}{{3.2.80}{56}{Viscosity Solutions}{equation.3.2.80}{}} +\newlabel{2.88@cref}{{[equation][80][3,2]3.2.80}{[1][56][]56}} +\newlabel{2.89}{{3.2.81}{56}{Viscosity Solutions}{equation.3.2.81}{}} +\newlabel{2.89@cref}{{[equation][81][3,2]3.2.81}{[1][56][]56}} +\newlabel{2.90}{{3.2.83}{57}{Viscosity Solutions}{equation.3.2.83}{}} +\newlabel{2.90@cref}{{[equation][83][3,2]3.2.83}{[1][57][]57}} +\newlabel{2.93}{{3.2.85}{57}{Viscosity Solutions}{equation.3.2.85}{}} +\newlabel{2.93@cref}{{[equation][85][3,2]3.2.85}{[1][57][]57}} +\newlabel{2.95}{{3.2.87}{58}{Viscosity Solutions}{equation.3.2.87}{}} +\newlabel{2.95@cref}{{[equation][87][3,2]3.2.87}{[1][57][]58}} +\@writefile{toc}{\contentsline {section}{\numberline {3.3}Solutions, Characterization, and Computational Bounds to the Kolmogorov Backward Equations}{58}{section.3.3}\protected@file@percent } +\newlabel{thm:3.21}{{3.3.1}{58}{Existence and characterization of $u_d$}{theorem.3.3.1}{}} +\newlabel{thm:3.21@cref}{{[theorem][1][3,3]3.3.1}{[1][58][]58}} +\newlabel{3.3.1}{{3.3.1}{58}{Existence and characterization of $u_d$}{equation.3.3.1}{}} +\newlabel{3.3.1@cref}{{[equation][1][3,3]3.3.1}{[1][58][]58}} +\newlabel{3.102}{{3.3.2}{58}{Existence and characterization of $u_d$}{equation.3.3.2}{}} +\newlabel{3.102@cref}{{[equation][2][3,3]3.3.2}{[1][58][]58}} +\newlabel{lem:3.19}{{3.3.1.1}{59}{}{corollary.3.3.1.1}{}} +\newlabel{lem:3.19@cref}{{[corollary][1][]3.3.1.1}{[1][59][]59}} +\newlabel{3.3.2}{{3.3.2}{59}{}{theorem.3.3.2}{}} +\newlabel{3.3.2@cref}{{[lemma][2][3,3]3.3.2}{[1][59][]59}} +\newlabel{3.3.7}{{3.3.7}{59}{}{equation.3.3.7}{}} +\newlabel{3.3.7@cref}{{[equation][7][3,3]3.3.7}{[1][59][]59}} +\newlabel{3.3.12}{{3.3.12}{60}{Solutions, Characterization, and Computational Bounds to the Kolmogorov Backward Equations}{equation.3.3.12}{}} +\newlabel{3.3.12@cref}{{[equation][12][3,3]3.3.12}{[1][60][]60}} +\newlabel{3.3.13}{{3.3.13}{60}{Solutions, Characterization, and Computational Bounds to the Kolmogorov Backward Equations}{equation.3.3.13}{}} +\newlabel{3.3.13@cref}{{[equation][13][3,3]3.3.13}{[1][60][]60}} +\newlabel{3.3.15}{{3.3.15}{61}{Solutions, Characterization, and Computational Bounds to the Kolmogorov Backward Equations}{equation.3.3.15}{}} +\newlabel{3.3.15@cref}{{[equation][15][3,3]3.3.15}{[1][61][]61}} +\citation{bhj20} +\newlabel{3.3.5}{{3.3.5}{62}{}{theorem.3.3.5}{}} +\newlabel{3.3.5@cref}{{[claim][5][3,3]3.3.5}{[1][62][]62}} +\newlabel{3.2.21}{{3.3.18}{62}{Solutions, Characterization, and Computational Bounds to the Kolmogorov Backward Equations}{equation.3.3.18}{}} +\newlabel{3.2.21@cref}{{[equation][18][3,3]3.3.18}{[1][62][]62}} +\newlabel{3.3.20}{{3.3.20}{63}{Solutions, Characterization, and Computational Bounds to the Kolmogorov Backward Equations}{equation.3.3.20}{}} +\newlabel{3.3.20@cref}{{[equation][20][3,3]3.3.20}{[1][63][]63}} +\@setckpt{u_visc_sol}{ +\setcounter{page}{64} +\setcounter{equation}{20} +\setcounter{enumi}{3} +\setcounter{enumii}{0} +\setcounter{enumiii}{0} +\setcounter{enumiv}{0} +\setcounter{footnote}{0} +\setcounter{mpfootnote}{0} +\setcounter{part}{1} +\setcounter{chapter}{3} +\setcounter{section}{3} +\setcounter{subsection}{0} +\setcounter{subsubsection}{0} +\setcounter{paragraph}{0} +\setcounter{subparagraph}{0} +\setcounter{figure}{0} +\setcounter{table}{0} +\setcounter{@pps}{0} +\setcounter{@ppsavesec}{0} +\setcounter{@ppsaveapp}{0} +\setcounter{AM@survey}{0} +\setcounter{parentequation}{0} +\setcounter{section@level}{1} +\setcounter{Item}{58} +\setcounter{Hfootnote}{0} +\setcounter{Hy@AnnotLevel}{0} +\setcounter{bookmark@seq@number}{19} +\setcounter{NAT@ctr}{0} +\setcounter{ALG@line}{0} +\setcounter{ALG@rem}{0} +\setcounter{ALG@nested}{0} +\setcounter{ALG@Lnr}{1} +\setcounter{ALG@blocknr}{1} +\setcounter{ALG@storecount}{0} +\setcounter{ALG@tmpcounter}{0} +\setcounter{@stackindex}{0} +\setcounter{ROWcellindex@}{0} +\setcounter{lstnumber}{1} +\setcounter{theorem}{5} +\setcounter{corollary}{0} +\setcounter{lstlisting}{0} +} diff --git a/Dissertation_unzipped/Brownian_motion_monte_carlo.aux b/Dissertation_unzipped/Brownian_motion_monte_carlo.aux new file mode 100644 index 0000000..800a9e0 --- /dev/null +++ b/Dissertation_unzipped/Brownian_motion_monte_carlo.aux @@ -0,0 +1,115 @@ +\relax +\providecommand\hyper@newdestlabel[2]{} +\@writefile{toc}{\contentsline {chapter}{\numberline {2}Brownian Motion Monte Carlo}{16}{chapter.2}\protected@file@percent } +\@writefile{lof}{\addvspace {10\p@ }} +\@writefile{lot}{\addvspace {10\p@ }} +\@writefile{toc}{\contentsline {section}{\numberline {2.1}Brownian Motion Preliminaries}{16}{section.2.1}\protected@file@percent } +\newlabel{def:1.17}{{2.1.5}{17}{Of $\mathfrak {k}$}{theorem.2.1.5}{}} +\newlabel{def:1.17@cref}{{[definition][5][2,1]2.1.5}{[1][17][]17}} +\newlabel{primarysetting}{{2.1.6}{17}{Primary Setting}{theorem.2.1.6}{}} +\newlabel{primarysetting@cref}{{[definition][6][2,1]2.1.6}{[1][17][]17}} +\newlabel{(2.1.2)}{{2.1.2}{17}{Primary Setting}{equation.2.1.2}{}} +\newlabel{(2.1.2)@cref}{{[equation][2][2,1]2.1.2}{[1][17][]17}} +\newlabel{(1.12)}{{2.1.3}{17}{Primary Setting}{equation.2.1.3}{}} +\newlabel{(1.12)@cref}{{[equation][3][2,1]2.1.3}{[1][17][]17}} +\newlabel{(2.1.4)}{{2.1.4}{17}{Primary Setting}{equation.2.1.4}{}} +\newlabel{(2.1.4)@cref}{{[equation][4][2,1]2.1.4}{[1][17][]17}} +\newlabel{lemma1.1}{{2.1.7}{17}{}{theorem.2.1.7}{}} +\newlabel{lemma1.1@cref}{{[lemma][7][2,1]2.1.7}{[1][17][]17}} +\citation{hutzenthaler_overcoming_2020} +\newlabel{lem:1.20}{{2.1.8}{18}{}{theorem.2.1.8}{}} +\newlabel{lem:1.20@cref}{{[lemma][8][2,1]2.1.8}{[1][18][]18}} +\newlabel{(2.1.6)}{{2.1.6}{18}{Brownian Motion Preliminaries}{equation.2.1.6}{}} +\newlabel{(2.1.6)@cref}{{[equation][6][2,1]2.1.6}{[1][18][]18}} +\newlabel{eq:1.4}{{2.1}{18}{Brownian Motion Preliminaries}{equation.2.1.6}{}} +\newlabel{eq:1.4@cref}{{[section][1][2]2.1}{[1][18][]18}} +\newlabel{(1.17)}{{2.1.7}{18}{Brownian Motion Preliminaries}{equation.2.1.7}{}} +\newlabel{(1.17)@cref}{{[equation][7][2,1]2.1.7}{[1][18][]18}} +\newlabel{(1.18)}{{2.1.8}{19}{Brownian Motion Preliminaries}{equation.2.1.8}{}} +\newlabel{(1.18)@cref}{{[equation][8][2,1]2.1.8}{[1][18][]19}} +\newlabel{(1.19)}{{2.1.9}{19}{Brownian Motion Preliminaries}{equation.2.1.9}{}} +\newlabel{(1.19)@cref}{{[equation][9][2,1]2.1.9}{[1][19][]19}} +\newlabel{(1.20)}{{2.1.10}{19}{Brownian Motion Preliminaries}{equation.2.1.10}{}} +\newlabel{(1.20)@cref}{{[equation][10][2,1]2.1.10}{[1][19][]19}} +\newlabel{(1.21)}{{2.1.11}{19}{Brownian Motion Preliminaries}{equation.2.1.11}{}} +\newlabel{(1.21)@cref}{{[equation][11][2,1]2.1.11}{[1][19][]19}} +\newlabel{cor:1.20.1}{{2.1.8.1}{19}{}{corollary.2.1.8.1}{}} +\newlabel{cor:1.20.1@cref}{{[corollary][1][]2.1.8.1}{[1][19][]19}} +\citation{rio_moment_2009} +\citation{rio_moment_2009} +\@writefile{toc}{\contentsline {section}{\numberline {2.2}Monte Carlo Approximations}{20}{section.2.2}\protected@file@percent } +\newlabel{lem:1.21}{{2.2.1}{20}{}{theorem.2.2.1}{}} +\newlabel{lem:1.21@cref}{{[lemma][1][2,2]2.2.1}{[1][20][]20}} +\citation{grohsetal} +\newlabel{corollary:1.11.1.}{{2.2.1.1}{21}{}{corollary.2.2.1.1}{}} +\newlabel{corollary:1.11.1.@cref}{{[corollary][1][]2.2.1.1}{[1][21][]21}} +\newlabel{(1.26)}{{2.2.5}{21}{}{equation.2.2.5}{}} +\newlabel{(1.26)@cref}{{[equation][5][2,2]2.2.5}{[1][21][]21}} +\newlabel{cor:1.22.2}{{2.2.1.2}{21}{}{corollary.2.2.1.2}{}} +\newlabel{cor:1.22.2@cref}{{[corollary][2][]2.2.1.2}{[1][21][]21}} +\@writefile{toc}{\contentsline {section}{\numberline {2.3}Bounds and Covnvergence}{21}{section.2.3}\protected@file@percent } +\newlabel{lem:1.21}{{2.3.1}{21}{}{theorem.2.3.1}{}} +\newlabel{lem:1.21@cref}{{[lemma][1][2,3]2.3.1}{[1][21][]21}} +\newlabel{lem:1.22}{{2.3.2}{22}{}{theorem.2.3.2}{}} +\newlabel{lem:1.22@cref}{{[lemma][2][2,3]2.3.2}{[1][22][]22}} +\newlabel{lem:1.25}{{2.3.3}{24}{}{theorem.2.3.3}{}} +\newlabel{lem:1.25@cref}{{[lemma][3][2,3]2.3.3}{[1][24][]24}} +\newlabel{(1.46)}{{2.3.16}{24}{Bounds and Covnvergence}{equation.2.3.16}{}} +\newlabel{(1.46)@cref}{{[equation][16][2,3]2.3.16}{[1][24][]24}} +\newlabel{(1.47)}{{2.3.17}{24}{Bounds and Covnvergence}{equation.2.3.17}{}} +\newlabel{(1.47)@cref}{{[equation][17][2,3]2.3.17}{[1][24][]24}} +\newlabel{(1.48)}{{2.3.18}{24}{Bounds and Covnvergence}{equation.2.3.18}{}} +\newlabel{(1.48)@cref}{{[equation][18][2,3]2.3.18}{[1][24][]24}} +\newlabel{cor:1.25.1}{{2.3.3.1}{24}{}{corollary.2.3.3.1}{}} +\newlabel{cor:1.25.1@cref}{{[corollary][1][]2.3.3.1}{[1][24][]24}} +\newlabel{(2.48)}{{2.3.26}{26}{}{equation.2.3.26}{}} +\newlabel{(2.48)@cref}{{[equation][26][2,3]2.3.26}{[1][26][]26}} +\newlabel{2.3.27}{{2.3.27}{26}{}{equation.2.3.27}{}} +\newlabel{2.3.27@cref}{{[equation][27][2,3]2.3.27}{[1][26][]26}} +\newlabel{2.3.29}{{2.3.28}{26}{Bounds and Covnvergence}{equation.2.3.28}{}} +\newlabel{2.3.29@cref}{{[equation][28][2,3]2.3.28}{[1][26][]26}} +\citation{hjw2020} +\citation{hjw2020} +\citation{hjw2020} +\newlabel{2.3.34}{{2.3.34}{28}{Bounds and Covnvergence}{equation.2.3.34}{}} +\newlabel{2.3.34@cref}{{[equation][34][2,3]2.3.34}{[1][28][]28}} +\@setckpt{Brownian_motion_monte_carlo}{ +\setcounter{page}{30} +\setcounter{equation}{35} +\setcounter{enumi}{2} +\setcounter{enumii}{0} +\setcounter{enumiii}{0} +\setcounter{enumiv}{0} +\setcounter{footnote}{0} +\setcounter{mpfootnote}{0} +\setcounter{part}{1} +\setcounter{chapter}{2} +\setcounter{section}{3} +\setcounter{subsection}{0} +\setcounter{subsubsection}{0} +\setcounter{paragraph}{0} +\setcounter{subparagraph}{0} +\setcounter{figure}{0} +\setcounter{table}{0} +\setcounter{@pps}{0} +\setcounter{@ppsavesec}{0} +\setcounter{@ppsaveapp}{0} +\setcounter{AM@survey}{0} +\setcounter{parentequation}{0} +\setcounter{section@level}{1} +\setcounter{Item}{32} +\setcounter{Hfootnote}{0} +\setcounter{bookmark@seq@number}{14} +\setcounter{NAT@ctr}{0} +\setcounter{ALG@line}{0} +\setcounter{ALG@rem}{0} +\setcounter{ALG@nested}{0} +\setcounter{ALG@Lnr}{1} +\setcounter{ALG@blocknr}{1} +\setcounter{ALG@storecount}{0} +\setcounter{ALG@tmpcounter}{0} +\setcounter{lstnumber}{1} +\setcounter{theorem}{4} +\setcounter{corollary}{0} +\setcounter{lstlisting}{0} +} diff --git a/Dissertation_unzipped/Brownian_motion_monte_carlo.pdf b/Dissertation_unzipped/Brownian_motion_monte_carlo.pdf new file mode 100644 index 0000000..a8acf85 Binary files /dev/null and b/Dissertation_unzipped/Brownian_motion_monte_carlo.pdf differ diff --git a/Dissertation_unzipped/Brownian_motion_monte_carlo.tex b/Dissertation_unzipped/Brownian_motion_monte_carlo.tex new file mode 100644 index 0000000..9d2e79b --- /dev/null +++ b/Dissertation_unzipped/Brownian_motion_monte_carlo.tex @@ -0,0 +1,485 @@ +\chapter{Brownian Motion Monte Carlo} + +\section{Brownian Motion Preliminaries} +We will present here some standard invariants of Brownian motions. The proofs are standard and can be found in for instance \cite{durrett2019probability} and \cite{karatzas1991brownian}. + + +\begin{lemma}[Markov property of Brownian motions] + Let $T \in \R$, $t \in [0,T]$, and $d \in \N$. Let $\lp \Omega, \mathcal{F}, \mathbb{P} \rp$ be a probability space. Let $\mathcal{W}_t: \lb 0, T \rb \times \Omega \rightarrow \R^d$ be a standard Brownian motion. Fix $s\in [0,\infty)$. Let $\mathfrak{W}_t = \mathcal{W}_{s+t}-\mathcal{W}_s$. Then $\mathfrak{W} = \left\{ \mathfrak{W}_t : t\in [0,\infty) \right\}$ is also a standard Brownian motion independent of $\mathcal{W}$. +\end{lemma} + +\begin{proof} + We check against the Brownian motion axioms. First note that $\mathfrak{W}_0 = \mathcal{W}_{s+0} - \mathcal{W}_s = 0$ with $\mathbb{P}$-a.s. + + Note that $t\mapsto \mathcal{W}_{s+t} - \mathcal{W}_s$ is $\mathbb{P}$-a.s. continuous as it is the difference of two functions that are also $\mathbb{P}$-a.s. continuous. + + Note next that for $h\in \lp 0,\infty\rp$ it is the case that: + \begin{align} + \E\lb \mathfrak{W}_{t+h} -\mathfrak{W}_t\rb &= \E \lb \mathcal{W}_{s+t+h}-\mathcal{W}_{s+h} -\mathcal{W}_{s+t}+\mathcal{W}_s\rb \nonumber \\ + &= \E \lb \mathcal{W}_{s+t+h}-\mathcal{W}_{s+t}\rb -\E \lb \mathcal{W}_{s+h}-\mathcal{W}_s\rb \nonumber \\ + &=0-0 =0 + \end{align} + + We note finally that: + \begin{align} + \var \lb \mathfrak{W}_{t+h} -\mathfrak{M}_t\rb &= \var \lb \mathcal{W}_{s+t+h}-\mathcal{W}_{s} -\mathcal{W}_{s+t}+\mathcal{W}_s\rb \nonumber \\ + &= \var \lb \mathcal{W}_{s+t+h}-\mathcal{W}_{s+t}\rb -\var \lb \mathcal{W}_{s}-\mathcal{W}_s\rb + \cancel{\cov \lp \mathcal{W}_{s+t+h}-\mathcal{W}_{s+t}, \mathcal{W}_{s+h}-\mathcal{W}_s\rp} \nonumber \\ + &=h-0=h \nonumber + \end{align} + Finally note that two stochastic processes $\mathcal{W}$, $\mathcal{X}$ are independent whenever given a set of sample points $t_1,t_2,\hdots, t_n \in \lb 0,T\rb$ it is the case that the vectors $\lb \mathcal{W}_{t_1}, \mathcal{W}_{t_2},\hdots, \mathcal{W}_{t_n}\rb^\intercal$ and $\lb \mathcal{X}_{t_1},\mathcal{X}_{t_2},\hdots, \mathcal{X}_{t_n}\rb^\intercal$ are independent vectors. + + That being the case note that the independent increments property of Brownian motions yields that, $\mathcal{W}_{s+t_1} - \mathcal{W}_s$, $\mathcal{W}_{s+t_2}-\mathcal{W}_s, \hdots, \mathcal{W}_{s+t_n}-\mathcal{W}_s$ is independent of $\mathcal{W}_{t_1},\mathcal{W}_{t_2},\hdots, \mathcal{W}_{t_n}$, i.e. $\mathfrak{W}$ and $\mathcal{W}$ are independent. +\end{proof} +\begin{lemma}[Independence of Brownian Motion]\label{iobm} + Let $T \in \lp 0,\infty\rp$. Let $\lp \Omega, \mathcal{F}, \mathbb{P}\rp$ be a probability space. Let $\mathcal{X}, \mathcal{Y}: \lb 0,T\rb \times \Omega \rightarrow \R^d$ be standard Brownian motions. It is then the case that they are independent of each other. +\end{lemma} +\begin{proof} + We say that two Brownian motions are independent of each of each other if given a sampling vector of times $\lp t_1,t_2,\hdots,t_n\rp$, the vectors $\lp \mathcal{X}_{t_1}, \mathcal{X}_{t_2},\hdots \mathcal{X}_{t_n}\rp$ and $\lp \mathcal{Y}_{t_1}, \mathcal{Y}_{t_2},\hdots, \mathcal{Y}_{t_n}\rp$ are independent. As such let $n\in \N$ and let $\lp t_1,t_2,\hdots t_n \rp$ be a vector or times with samples as given above. Consider now a new Brownian motion $\mathcal{X} - \mathcal{Y}$, wherein our samples are now $\lp \mathcal{X}_{t_1} - \mathcal{Y}_{t_1}, \mathcal{X}_{t_2}-\mathcal{Y}_{t_2}, \hdots, \mathcal{X}_{t_n} - \mathcal{Y}_{t_n} \rp$. By the independence property of Brownian motions, these increments must be independent of each other. Whence it is the case that the vectors $\lp \mathcal{X}_{t_1}, \mathcal{X}_{t_2},\hdots, \mathcal{X}_{t_n}\rp$ and $\lp \mathcal{Y}_{t_1}, \mathcal{Y}_{t_2},\hdots, \mathcal{Y}_{t_n}\rp$ are independent. +\end{proof} +\begin{lemma}[Scaling Invariance] + Let $T \in \R$, $t \in [0,T]$, and $d \in \N$. Let $\lp \Omega, \mathcal{F}, \mathbb{P} \rp$ be a probability space. Let $\mathcal{W}_t: \lb 0, T \rb \times \Omega \rightarrow \R^d$ be a standard Brownian motion. Let $a \in \R \setminus \{ 0\}$. It is then the case that $\mathcal{X}_t \coloneqq \frac{1}{a} \mathcal{W}_{a^2\cdot t}$ is also a standard Brownian motion. +\end{lemma} +\begin{proof} + We check against the Brownian motion axioms. Note for instance that the function $t \mapsto \mathcal{X}_t$ is a product of a constant with a function that is $\mathbb{P}$-a.s. continuous yielding a function that is also $\mathbb{P}$-a.s. continuous. + + Note also for instance that $\mathcal{X}_0 = \frac{1}{a} \cdot \mathcal{W}_{a^2 \cdot 0} = 0$ with $\mathbb{P}$-a.s. + + Note that for all $h \in \lp 0,\infty\rp$, and $t\in \lb 0,T\rb$ it is the case that: + \begin{align} + \E \lb \mathcal{X}_{t+h} - \mathcal{X}_t\rb &= \E \lb \frac{1}{a}\mathcal{W}_{a^2 \cdot \lp t+h\rp} - \frac{1}{a}\mathcal{W}_{a^2 \cdot t}\rb \nonumber \\ + &=\frac{1}{a} \E \lb \mathcal{W}_{a^2\cdot \lp t+h\rp} - \mathcal{W}_{a^2\cdot t}\rb \nonumber \\ + &=0\nonumber + \end{align} + + Note that for all $h \in \lp 0,\infty\rp$, and $t\in \lb 0,T\rb$ it is the case that: + + \begin{align} + \var\lb \mathcal{X}_{t+h } - \mathcal{X}_t\rb &= \var\lb \frac{1}{a}\mathcal{W}_{a^2\cdot \lp t+h\rp} - \frac{1}{a}\mathcal{W}_{a^2\cdot t}\rb \nonumber \\ + &=\frac{1}{a^2}\var\lb\mathcal{W}_{a^2\cdot \lp t+h\rp} - \mathcal{W}_{a^2\cdot t}\rb \nonumber\\ + &= \frac{1}{\cancel{a^2}}\cancel{a^2} \lp \cancel{t}+h-\cancel{t}\rp \nonumber\\ + &=h + \end{align} + Finally note that for $t \in \lb 0,T\rb$ and $s \in \lb 0,t\rp$ it is the case that $\mathcal{W}_{a^2 \cdot t} - \mathcal{W}_{a^2 \cdot s}$ is independent of $\mathcal{W}_{a^2\cdot s}$. Whence it is also the case that $\mathcal{X}_t-\mathcal{X}_s$ is independent of $\mathcal{X}_s$. +\end{proof} + +\begin{lemma}[Summation of Brownian Motions] + Let $T \in \R$, $t \in [0,T]$ and $d \in \N$. Let $\lp \Omega, \mathcal{F}, \mathbb{P} \rp$ be a probability space. Let $\mathcal{W}_t, \mathcal{X}_t: \lb 0,T \rb \times \Omega \rightarrow \R^d$ be a standard independent Brownian motions. It is then the case that the process $\mathcal{Y}_t$ defined as $\mathcal{Y}_t = \frac{1}{\sqrt{2}}\lp \mathcal{W}_t + \mathcal{X}_t \rp$ is also a standard Brownian motion. +\end{lemma} +\begin{proof} + Note that $t \mapsto \frac{1}{\sqrt{2}}\lp \mathcal{W}_t+\mathcal{X}_t\rp$ is $\mathbb{P}$-a.s. continuous as it is the linear combination of two functions that are also $\mathbb{R}$-a.s. continuous. + + Note also that $\mathcal{Y}_0 = \frac{1}{\sqrt{2}}\lp \mathcal{W}_0+\mathcal{X}_0\rp = 0+0=0$ with $\mathbb{P}$-a.s. + + Note that for all $h \in \lp 0,\infty\rp$ and $t \in \lb t,T\rb$ it is the case that: + \begin{align} + \E\lb \frac{1}{\sqrt{2}}\lp \mathcal{Y}_{t+h} - \mathcal{Y}_t\rp \rb &= \E \lb \frac{1}{\sqrt{2}} \lp\mathcal{W}_{t+h}+\mathcal{X}_{t+h} - \mathcal{W}_t-\mathcal{X}_t \rp\rb \nonumber \\ + &= \frac{1}{\sqrt{2}}\E \lb \mathcal{W}_{t+h}-\mathcal{W}_t\rb + \frac{1}{\sqrt{2}}\E \lb \mathcal{X}_{t+h}-\mathcal{X}_t\rb \nonumber \\ + &=0 \nonumber + \end{align} + + Note that for all $h \in \lp 0,\infty\rp$, and $t\in \lb 0,T\rb$ it is the case that: + \begin{align} + \var \lb \frac{1}{\sqrt{2}}\lp\mathcal{Y}_{t+h} - \mathcal{Y}_{t}\rp\rb &= \var \lb \frac{1}{\sqrt{2}}\lp \mathcal{W}_{t+h}+\mathcal{X}_{t+h} - \mathcal{W}_t-\mathcal{X}_t\rp \rb \nonumber \\ + &=\var \lb \frac{1}{\sqrt{2}}\lp \mathcal{W}_{t+h} - \mathcal{W}_t\rp + \frac{1}{\sqrt{2}}\lp \mathcal{X}_{t+h}-\mathcal{X}_t\rp\rb \nonumber\\ + &= \frac{1}{2}\var \lb \mathcal{W}_{t+h}-\mathcal{W}_t\rb +\frac{1}{2}\var\lb \mathcal{X}_{t+h}-\mathcal{X}_t\rb + \cancel{\cov \lp \mathcal{W},\mathcal{X}\rp} \nonumber \\ + &= h \nonumber + \end{align} +\end{proof} + + + +\begin{definition}[Of $\mathfrak{k}$]\label{def:1.17} + Let $p \in [2,\infty)$. We denote by $\mathfrak{k}_p \in \R$ the real number given by $\mathfrak{k}:=\inf \{ c\in \R \}$ where it holds that for every probability space $(\Omega, \mathcal{F}, \mathbb{P})$ and every random variable $\mathcal{X}: \Omega \rightarrow \R$ with $\E[|\mathcal{X}|] < \infty$ that $\lp \E \lb \lv \mathcal{X} - \E \lb \mathcal{X} \rb \rp^p \rb \rp ^{\frac{1}{p}} \leqslant c \lp \E \lb \lv \mathcal{X} \rv^p \rb \rp ^{\frac{1}{p}}.$ +\end{definition} + +\begin{definition}[Primary Setting]\label{primarysetting} Let $d,m \in \mathbb{N}$, $T, \mathfrak{L},p \in [0,\infty)$, $\mathfrak{p} \in [2,\infty)$ $\mathfrak{m} = \mathfrak{k}_{\mathfrak{p}}\sqrt{\mathfrak{p}-1}$, $\Theta = \mathbb{Z}$, $g \in C(\mathbb{R}^d,\mathbb{R})$, assume for all $t \in [0,T],x\in \mathbb{R}^d$ that: +\begin{align}\label{(2.1.2)} + \max\{|g(x)|\} \leqslant \mathfrak{L} \lp 1+\|x\|_E^p \rp +\end{align} + +and let $(\Omega, \mathcal{F},\mathbb{P})$ be a probability space. Let $\mathcal{W}^{\theta}: [0,T] \times \Omega \rightarrow \mathbb{R}^d$, $\theta \in \Theta$ be independent standard Brownian motions, let $u \in C([0,T] \times \mathbb{R}^d,\mathbb{R})$ satisfy for all $t \in [0,T]$, $x\in \mathbb{R}^d$, that $\mathbb{E}[|g(x+\mathcal{W}^0_{T-t})|] < \infty$ and: +\begin{align}\label{(1.12)} + u(t,x) &= \mathbb{E} \lb g \lp x+\mathcal{W}^0_{T-t} \rp \rb +\end{align} +and let let $U^\theta:[0,T] \times \mathbb{R}^d \times \Omega \rightarrow \mathbb{R}$, $\theta \in \Theta$ satisfy, $\theta \in \Theta$, $t \in [0,T]$, $x\in \mathbb{R}^d$, that: +\begin{align}\label{(2.1.4)} + U^\theta_m(t,x) = \frac{1}{m}\left[\sum^{m}_{k=1}g\left(x+\mathcal{W}^{(\theta,0,-k)}_{T-t}\right)\right] +\end{align} +\end{definition} +\begin{lemma} \label{lemma1.1} + +Assume Setting \ref{primarysetting} then: +\begin{enumerate}[label = (\roman*)] + \item it holds for all $n\in \N_0$, $\theta \in \Theta$ that $U^\theta:[0,T] \times \mathbb{R}^d\times \Omega \rightarrow \mathbb{R}$ is a continuous random field. + \item it holds that for all $\theta \in \Theta$ that $\sigma \lp U^\theta \rp \subseteq \sigma \lp \lp \mathcal{W}^{(\theta, \mathcal{V})}\rp_{\mathcal{V} \in \Theta}\rp $. + \item it holds that $\lp U^\theta \rp_{\theta \in\Theta}$,$\lp \mathcal{W}^\theta \rp_{\theta \in \Theta}$, are independent. + \item it holds for all $n,m \in $, $i,k,\mathfrak{i},\mathfrak{k}\in \mathbb{Z}$, with $(i,k) \neq (\mathfrak{i},\mathfrak{k})$ that $(U^{(\theta,i,k)})_{\theta \in \Theta}$ and $\left(U^{(\theta,\mathfrak{i},\mathfrak{k})}\right)_{\theta \in \Theta}$ are independent and, + \item it holds that $\lp U^\theta \rp_{\theta \in \Theta}$ are identically distributed random variables. +\end{enumerate} +\end{lemma} + +\begin{proof} For (i) Consider that $\mathcal{W}^{(\theta,0,-k)}_{T-t}$ are continuous random fields and that $g\in C(\mathbb{R}^d,\mathbb{R})$, we have that $U^\theta(t,x)$ is the composition of continuous functions with $m > 0$ by hypothesis, ensuring no singularities. Thus $U^\theta: [0,T] \times \mathbb{R}^d\times \Omega \rightarrow \mathbb{R}$. + +\medskip + +For (ii) observe that for all $\theta \in \Theta$ it holds that $\mathcal{W}^\theta$ is $\mathcal{B} \lp \lb 0, T \rb \otimes \sigma \lp W^\theta \rp \rp /\mathcal{B}\lp \mathbb{R}^d \rp$-measurable, this, and induction on prove item (ii). + +\medskip +Moreover observe that item (ii) and the fact that for all $\theta \in \Theta$ it holds that $\lp\mathcal{W}^{\lp \theta, \vartheta\rp}_{\vartheta \in \Theta}\rp$, $\mathcal{W}^\theta$ are independently establish item (iii). + +\medskip +Furthermore, note that (ii) and the fact that for all $i,k,\mathfrak{i},\mathfrak{k} \in \mathbb{Z}$, $\theta \in \Theta$, with $(i,k) \neq (\mathfrak{i},\mathfrak{k})$ it holds that $\lp\mathcal{W}^{\lp\theta, i,k,\vartheta\rp}\rp_{\vartheta \in \Theta}$ and $\lp\mathcal{W}^{\lp\theta,\mathfrak{i},\mathfrak{k},\vartheta\rp}\rp_{\vartheta \in \Theta}$ are independent establish item (iv). + +\medskip +Hutzenhaler \cite[Corollary~2.5 ]{hutzenthaler_overcoming_2020} establish item (v). This completes the proof of Lemma 1.1. +\end{proof} + +\begin{lemma}\label{lem:1.20} Assume Setting \ref{primarysetting}. Then it holds for $\theta \in \Theta$, $s \in [0,T]$, $t\in [s,T]$, $x\in \mathbb{R}^d$ that: +\begin{align} + \mathbb{E}\lb \lv U^\theta \lp t,x+\mathcal{W}^\theta_{t-s}\rp \rv \rb +\mathbb{E}\lb \lv g \lp x+\mathcal{W}^\theta_{t-s}\rp \rv \rb + \int^T_s \E \lb \lv U^\theta \lp r,x+\mathcal{W}^\theta_{r-s} \rp \rv \rb dr < \infty +\end{align} +\end{lemma} + +\begin{proof} +Note that (\ref{(2.1.2)}), the fact that for all $r,a,b \in [0,\infty)$ it holds that $(a+b)^r \leqslant 2^{\max\{r-1,0\}}(a^r+b^r)$, and the fact that for all $\theta \in \Theta$ it holds that $\mathbb{E}\lb \|\mathcal{W}^\theta_T\|\rb < \infty$, assure that for all $s \in [0,T]$, $t\in[s,T]$, $\theta \in \Theta$ it holds that: +\begin{align}\label{(2.1.6)} + \mathbb{E}\lb \lv g(x+\mathcal{W}^\theta_{t-s})\rv \rb &\leqslant \mathbb{E}\lb\mathfrak{L}\lp 1+\|x+\mathcal{W}^\theta_{t-s}\|_E^p\rp\rb \nonumber\\ + &\leqslant \mathfrak{L}\lb 1+2^{\max\{p-1,0\}}\lp \|x\|_E^p+\mathbb{E} \lb \left\|\mathcal{W}^\theta_T\right\|_E^p \rb \rp\rb<\infty +\end{align} +\label{eq:1.4} +We next claim that for all $s\in [0,T]$, $t\in[s,T]$, $\theta \in \Theta$ it holds that: +\begin{align}\label{(1.17)} + \mathbb{E}\lb \lv U^\theta \lp t,x+\mathcal{W}^\theta_{t-s} \rp \rv \rb+ \int^T_s \mathbb{E}\lb \lv U^\theta \lp r,x+\mathcal{W}^\theta_{r-s}\rp \rv \rb dr < \infty +\end{align} + +To prove this claim observe the triangle inequality and (\ref{(2.1.4)}), demonstrate that for all $s\in[0,T]$, $t\in[s,T]$, $\theta \in \Theta$, it holds that: +\begin{align}\label{(1.18)} + \mathbb{E}\lb \lv U^\theta \lp t,x+\mathcal{W}^\theta_{t-s}\rp \rv \rb \leqslant \frac{1}{m}\left[ \sum^{m}_{i=1}\mathbb{E}\lb \lv g \lp x+\mathcal{W}^\theta_{t-s}+\mathcal{W}^{(\theta,0,-i)}_{T-t} \rp \rv \rb \rb +\end{align} + +Now observe that (\ref{(2.1.6)}) and the fact that $(W^\theta)_{\theta \in \Theta}$ are independent imply that for all $s \in [0,T]$, $t\in [s,T]$, $\theta \in \Theta$, $i\in \mathbb{Z}$ it holds that: +\begin{align}\label{(1.19)} + \mathbb{E}\lb \lv g \lp x+\mathcal{W}^\theta_{t-s}+\mathcal{W}^{(\theta,0,i)}_{T-t} \rp \rv \rb = \mathbb{E}\lb \lv g \lp x+\mathcal{W}^\theta_{(t-s)+(T-t)}\rp \rv \rb = \mathbb{E}\lb \lv g \lp x+\mathcal{W}^\theta_{T-s}\rp \rv \rb <\infty +\end{align} +\medskip +Combining (\ref{(1.18)}) and (\ref{(1.19)}) demonstrate that for all $s \in [0,T]$, $t\in[s,T]$, $\theta \in \Theta$ it holds that: +\begin{align}\label{(1.20)} + \mathbb{E}\lb \lv U^\theta(t,x+\mathcal{W}^\theta_{t-s})\rv \rb < \infty +\end{align} + +Finally observe that for all $s\in [0,T]$ $\theta \in \Theta$ it holds that: +\begin{align}\label{(1.21)} +\int^T_s \mathbb{E}\lb \lv U^\theta \lp r,x+\mathcal{W}^\theta_{r-s} \rp \rv \rb &\leqslant \lp T-s \rp \sup_{r\in [s,T]} \mathbb{E} \lb \lv U^\theta \lp r,x+\mathcal{W}^\theta_{r-s}\rp \rv \rb < \infty +\end{align} + +Combining (\ref{(1.16)}), (\ref{(1.20)}), and (\ref{(1.21)}) completes the proof of Lemma \ref{lem:1.20}. + +\end{proof} +\begin{corollary}\label{cor:1.20.1} Assume Setting \ref{primarysetting}, then we have: +\begin{enumerate}[label = (\roman*)] + \item it holds that $t \in [0,T],x\in \mathbb{R}^d$ that: + \begin{align} + \mathbb{E}\lb \lv U^0 \lp t,x \rp \rv \rb + \mathbb{E}\lb \lv g \lp x+\mathcal{W}^{(0,0,-1)}_{T-t} \rp \rv \rb < \infty + \end{align} + \item it holds that $t\in [0,T],x\in \mathbb{R}^d$ that: + \begin{align} + \mathbb{E}\lb U^0\lp t,x \rp \rb = \mathbb{E} \lb g \lp x+\mathcal{W}^{(0,0,-1)}_{T-t}\rp\rb + \end{align} +\end{enumerate} +\end{corollary} + +\begin{proof} +(i) is a restatement of Lemma \ref{lem:1.20} in that for all $t\in [0,T]$: +\begin{align} + &\mathbb{E}\left[ \left| U^0\left( t,x \right) \right| \right] + \mathbb{E} \left[ \left|g \left(x+\mathcal{W}^{(0,0,-1)}_{T-t}\right)\right|\right] \nonumber\\ + &<\mathbb{E} \left[ \left|U^\theta \lp t,x+\mathcal{W}^\theta_{t-s} \rp \right| \right] +\mathbb{E}\left[ \left|g \left(x+\mathcal{W}^\theta_{t-s}\right) \right| \right]+ \int^T_s \mathbb{E}\lb \lv U^\theta \lp r,x+\mathcal{W}^\theta_{r-s} \rp \rv \rb dr \nonumber\\ + &< \infty +\end{align} + +Furthermore (ii) is a restatement of (\ref{(1.14)}) with $\theta = 0$, $m=1$, and $k=1$. This completes the proof of Corollary \ref{cor:1.20.1}. +\end{proof} + +\section{Monte Carlo Approximations} + + +\begin{lemma}\label{lem:1.21}Let $p \in (2,\infty)$,$n\in \mathbb{N}$, let $(\Omega, \mathcal{F}, \mathbb{P})$, be a probability space and let $\mathcal{X}_i: \Omega \rightarrow \mathbb{R}$, $i \in \{1,2,...,n\}$ be i.i.d. random variables with $\mathbb{E}[|\mathcal{X}_1|]<\infty$. Then it holds that: +\begin{align} + \lp\E \lb \lv \E \lb \mathcal{X}_1 \rb-\frac{1}{n} \lp \sum^n_{i=1} \mathcal{X}_i \rp \rv^p \rb \rp^{\frac{1}{p}} \leqslant \lb \frac{p-1}{n}\rb ^{\frac{1}{2}}\left(\E\lb \lv \mathcal{X}_1-\E \lb \mathcal{X}_1 \rb \rv^p \rp \rb^{\frac{1}{p}} +\end{align} +\end{lemma} + +\begin{proof} +The hypothesis that for all $i \in \{1,2,...,n\}$ it holds that $\mathcal{X}_i:\Omega \rightarrow \mathbb{R}$ are i.i.d. random variables ensures that: +\begin{align} + \E \lb \lv \E \lb \mathcal{X}_1\rb - \frac{1}{n} \lp \sum^n_{i=1} \mathcal{X}_i \rp \rv ^p \rb + = \E \lb \lv \frac{1}{n} \lp \sum^n_{i=1} \lp \E \lb \mathcal{X}_1 \rb - \mathcal{X}_i \rp \rp \rv ^p \rb = \frac{1}{n^p} \E \lb \lv \sum^n_{i=1} \lp \E \lb \mathcal{X}_i \rb - \mathcal{X}_i \rp \rv^p \rb +\end{align} + +This combined with the fact that for all $i \in \{1,2,...,n\}$ it is the case that $\mathcal{X}_i: \Omega \rightarrow \R$ are i.i.d. random variables and e.g. \cite[Theorem~2.1]{rio_moment_2009} (with $p \curvearrowleft p$, $ ( S_i )_{i \in \{0,1,...,n\}} \curvearrowleft ( \sum^i_{k=1} ( \E [ X_k ] - X_k))$, $( X_i )_{i \in \{1,2,...,n\}} \curvearrowleft ( \E [ X_i ] - X_i )_{i \in \{1,2,...,n\}}$ in the notation of \cite[Theorem~2.1]{rio_moment_2009} ensures that: + +\begin{align} + \lp \E \lb \lv \E \lb \mathcal{X}_1 \rb - \frac{1}{n} \lp \sum^n_{i=1} \mathcal{X}_i \rp + \rv ^p \rb\rp ^{\frac{2}{p}} &= \frac{1}{n^2} \lp \E \lb \lv + \sum^n_{i=1} \lp \E \lb \mathcal{X}_i \rb - \mathcal{X}_i \rp \rv ^p \rb \rp ^{\frac{2}{p}} + \nonumber\\ + &\leqslant \frac{p-1}{n^2} \lb \sum^n_{i=1} \lp \E \lb \lv \E \lb \mathcal{X}_i \rb -\mathcal{X}_i \rv^p \rb \rp ^{\frac{2}{p}} \rb \nonumber\\ + &= \frac{p-1}{n^2} \lb n \lp \E \lb \lv \E \lb \mathcal{X}_1 \rb - \mathcal{X}_1 \rv ^p \rb \rp^{\frac{2}{p}} \rb \\ + &= \frac{p-1}{n} \lp \E \lb \lv \E \lb \mathcal{X}_1 \rb -\mathcal{X}_1\rv ^p \rb \rp ^{\frac{2}{p}} +\end{align} +This completes the proof of the lemma. +\end{proof} + +\begin{corollary}\label{corollary:1.11.1.} + Let $p\in [2,\infty)$, $n \in \N$, let $\lp \Omega, \mathcal{F}, \mathbb{P} \rp$ be a probability space, and let $\mathcal{X}_i: \Omega \rightarrow \R$, $i \in \{1,2,...,n\}$ be i.i.d random variables with $\E\lb \lv \mathcal{X}_1 \rv \rb < \infty$. Then it holds that: + \begin{align}\label{(1.26)} + \lp \E \lb \lv \E \lb \mathcal{X}_1 \rb - \frac{1}{n}\lp \sum^n_{i=1} \mathcal{X}_i \rp \rv ^p \rb \rp^{\frac{1}{p}} \leqslant \lb \frac{p-1}{n} \rb ^{\frac{1}{2}} \lp \E \lb \lv \mathcal{X}_1 - \E \lb \mathcal{X}_1 \rb \rv ^p \rb \rp ^{\frac{1}{p}} + \end{align} +\end{corollary} + +\begin{proof} + Observe that e.g. \cite[Lemma~2.3]{grohsetal} and Lemma \ref{lem:1.21} establish (\ref{(1.26)}). +\end{proof} + +\begin{corollary}\label{cor:1.22.2} + Let $p \in [2,\infty)$, $n\in \N$, let $(\Omega, \mathcal{F}, \mathbb{P})$, be a probability space, and let $\mathcal{X}_i: \Omega \rightarrow \R$, $i \in \{1,2,...,n\}$, be i.i.d. random variables with $\E[|\mathcal{X}_1|] < \infty$, then: + \begin{align} + \lp \E \lb \lv \E \lb \mathcal{X}_1\rb - \frac{1}{n} \lp \sum^n_{i=1} \mathcal{X}_i \rp \rv ^p \rb \rp ^{\frac{1}{p}} \leqslant \frac{\mathfrak{k}_p \sqrt{p-1}}{n^{\frac{1}{2}}} \lp \E \lb \lv \mathcal{X}_1 \rv^p \rb \rp ^{\frac{1}{p}} + \end{align} +\end{corollary} + +\begin{proof} + This a direct consequence of Definition \ref{def:1.17} and Corollary \ref{corollary:1.11.1.}. +\end{proof} +\section{Bounds and Covnvergence} + +\begin{lemma}\label{lem:1.21} Assume Setting \ref{def:1.18}. Then it holds for all $t\in [0,T]$, $x\in \mathbb{R}^d$ +\begin{align} + &\left(\E\left[\left|U^0(t,x+\mathcal{W}^0_t)-\E \left[U^0 \left(t,x+\mathcal{W}^0_t \right)\right]\right|^\mathfrak{p}\right]\right)^{\frac{1}{\mathfrak{p}}} \nonumber\\ + &\leqslant \frac{\mathfrak{m}}{m^{\frac{1}{2}}} \left[\left(\E\left[ \lv g \lp x+\mathcal{W}^0_T \rp \rv^\mathfrak{p}\right]\right)^{\frac{1}{\mathfrak{p}}}\right] +\end{align} +\end{lemma} + +\begin{proof} For notational simplicity, let $G_k: [0,T] \times \mathbb{R}^d \times \Omega \rightarrow \mathbb{R}$, $k\in \mathbb{Z}$, satisfy for all $k\in \mathbb{Z}$, $t\in[0,T]$, $x\in \mathbb{R}^d$ that: +\begin{align} + G_k(t,x) = g\left(x+\mathcal{W}^{(0,0,-k)}_{T-t}\right) +\end{align} +\medskip +Observe that the hypothesis that $(\mathcal{W}^\theta)_{\theta \in \Theta}$ are independent Brownian motions and the hypothesis that $g \in C(\mathbb{R}^d,\mathbb{R})$ assure that for all $t \in [0,T]$,$x\in \mathbb{R}^d$ it holds that $(G_k(t,x))_{k\in \mathbb{Z}}$ are i.i.d. random variables. This and Corollary \ref{cor:1.22.2} (applied for every $t\in [0,T]$, $x\in \mathbb{R}^d$ with $p \curvearrowleft \mathfrak{p}$, $n \curvearrowleft m$, $(X_k)_{k\in \{1,2,...,m\}} \curvearrowleft (G_k(t,x))_{k\in \{1,2,...,m\}}$), with the notation of Corollary \ref{cor:1.22.2} ensure that for all $t\in [0,T]$, $x \in \mathbb{R}^d$, it holds that: +\begin{align} + \left( \E \left[ \left| \frac{1}{m} \left[ \sum^{m}_{k=1} G_k(t,x) \right] - \E \left[ G_1(t,x) \right] \right| ^\mathfrak{p} \right] \right)^{\frac{1}{\mathfrak{p}}} \leqslant \frac{\mathfrak{m}}{m^{\frac{1}{2}}}\left(\E \left[|G_1(t,x)|^\mathfrak{p} \right] \right)^{\frac{1}{\mathfrak{p}}} +\end{align} +\medskip +Combining this, with (1.16), (1.17), and item (ii) of Corollary \ref{cor:1.20.1} yields that: +\begin{align} + &\left(\E\left[\left|U^0(t,x) - \E \left[U^0(t,x)\right]\right|^\mathfrak{p}\right]\right)^\frac{1}{\mathfrak{p}} \nonumber\\ + &= \left(\E \left[\left|\frac{1}{m}\left[\sum^{m}_{k=1}G_k(t,x)\right]- \E \left[G_1(t,x)\right]\right|^\mathfrak{p} \right]\right)^{\frac{1}{\mathfrak{p}}} \\ + &\leqslant \frac{\mathfrak{m}}{m^{\frac{1}{2}}}\left(\E \left[\left| G_1(t,x)\right| ^\mathfrak{p}\right]\right)^{\frac{1}{\mathfrak{p}}} \\ + &= \frac{\mathfrak{m}}{m^{\frac{1}{2}}} \left[\left(\E \left[\left|g\left(x+\mathcal{W}^1_{T-t}\right)\right|^\mathfrak{p}\right]\right)^\frac{1}{\mathfrak{p}}\right] +\end{align} +This and the fact that $\mathcal{W}^0$ has independent increments ensure that for all $n\in $, $t\in [0,T]$, $x\in \mathbb{R}^d$ it holds that: +\begin{align} + \left(\E \left[\left| U^0 \left(t,x+\mathcal{W}^0_t\right) - \E \left[U^0 \left(t,x+\mathcal{W}^0_t\right)\right]\right|^\mathfrak{p}\right]\right)^{\frac{1}{\mathfrak{p}}} \leqslant \frac{\mathfrak{m}}{m^{\frac{1}{2}}} \left[\left(\E \left[\left| g \left(x+\mathcal{W}^0_T\right)\right|^\p\right]\right)^{\frac{1}{\mathfrak{p}}} \right] +\end{align} +This completes the proof of Lemma \ref{lem:1.21}. +\end{proof} + + +\begin{lemma}\label{lem:1.22} Assume Setting \ref{primarysetting}. Then it holds for all, $t\in [0,T]$, $x\in \mathbb{R}^d$ that: +\begin{align} + \left(\E \left[ \left| U^0 \left(t,x+\mathcal{W}^0_t\right) - u \left(t,x+\mathcal{W}^0_t\right) \right|^\mathfrak{p} \right]\right)^\frac{1}{\mathfrak{p}} \leqslant \left( \frac{ \mathfrak{m}}{m^{\frac{1}{2}}}\right) \left( \E \left[\left| g \left(x+\mathcal{W}^0_T\right) \right|^\mathfrak{p} \right]\right)^{\frac{1}{\mathfrak{p}}} +\end{align} +\end{lemma} + +\begin{proof} +Observe that from Corollary \ref{cor:1.20.1} item (ii) we have: +\begin{align} + \E\left[U^0(t,x)\right] = \E \left[ g \left(x+\mathcal{W}^{(0,0,-1)}_{T-t}\right) \right] +\end{align} +This and (\ref{(1.12)}) ensure that: +\begin{align} + u(t,x) - \E \left[U^0(t,x) \right] &= 0 \nonumber \\ + \E \lb U^0(t,x) \rb - u \lp t,x \rp &= 0 +\end{align} + +This, and the fact that $\mathcal{W}^0$ has independent increments, assure that for all, $t\in [0,T]$, $x\in \mathbb{R}^d$, it holds that: +\begin{align} + \left(\E \left[\left| \E \lb U^0 \lp t,x+\mathcal{W}^0_t \rp\right] - u \lp t,x+\mathcal{W}^0_t \rp\right| ^\mathfrak{p}\right]\right)^\frac{1}{\mathfrak{p}} = 0 \leqslant \left(\E \left[ \lv u \lp t,x+\mathcal{W}^0_t \rp \rv^\p\right]\right) +\end{align} +This along with (\ref{(1.12)}) ensure that: +\begin{align} + \left(\E \left[\left| \E \left[U^0 \lp t,x+\mathcal{W}^0_t \rp \right] - u \lp t,x+\mathcal{W}^0_t \rp \right| ^\mathfrak{p}\right]\right)^\frac{1}{\mathfrak{p}} = 0 \leqslant \left( \E \left[\left| g \left(x+\mathcal{W}^0_T\right) \right|^\mathfrak{p} \right]\right)^{\frac{1}{\mathfrak{p}}} +\end{align} +Notice that the triangle inequality gives us: +\begin{align} + \left(\E \left[ \left| U^0 \left(t,x+\mathcal{W}^0_t\right) - u \left(t,x+\mathcal{W}^0_t\right) \right|^\mathfrak{p} \right]\right)^\frac{1}{\mathfrak{p}} \leqslant \left(\E \left[\left| U^0(t,x+W^0_t) - \E \left[U^0(t,x+\mathcal{W}^0_t)\right]\right|^\p\right]\right)^{\frac{1}{\p}} \nonumber \\ + +\left(\E \left[\left| \E \left[U^0 \lp t,x+\mathcal{W}^0_t \rp \right]-u \lp t,x+\mathcal{W}^0_t \rp\right|^\p\right]\right)^{\frac{1}{\p}} +\end{align} +This, combined with (1.26), (1.21), the independence of Brownian motions, gives us: +\begin{align} + \left(\E \left[ \left| U^0 \left(t,x+\mathcal{W}^0_t\right) - u \left(t,x+\mathcal{W}^0_t\right) \right|^\mathfrak{p} \right]\right)^\frac{1}{\mathfrak{p}} &\leqslant \left(\frac{\mathfrak{m}}{m^{\frac{1}{2}}}\right) \left( \E \left[\left| g \left(x+\mathcal{W}^0_T\right) \right|^\mathfrak{p} \right]\right)^{\frac{1}{\mathfrak{p}}} \nonumber \\ + &= \left(\frac{\mathfrak{m}}{m^{\frac{1}{2}}}\right) \left( \E \left[\left| g \left(x+\mathcal{W}^0_T\right) \right|^\mathfrak{p} \right]\right)^{\frac{1}{\mathfrak{p}}} +\end{align} +This completes the proof of Lemma \ref{lem:1.22}. +\end{proof} + +\begin{lemma}\label{lem:1.25} Assume Setting \ref{primarysetting}. Then it holds for all $t\in [0,T]$, $x\in \mathbb{R}^d$ that: +\begin{align} + \left( \E \left[ \left| U^0 \left(t,x+\mathcal{W}^0_t \right) - u \left( t, x+\mathcal{W}^0_t \right) \right|^\p \right] \right)^{\frac{1}{\p}} \leqslant \mathfrak{L}\left( \frac{ \mathfrak{m}}{m^{\frac{1}{2}}}\right)\left(\sup_{s \in [0,T]}\E \left[ \left( 1+ \left\| x+\mathcal{W}^0_s \right\|_E^p \right)^\p\right]\right)^\frac{1}{\p} +\end{align} +\end{lemma} +\medskip + +\begin{proof} Observe that Lemma \ref{lem:1.22} ensures that: +\begin{align}\label{(1.46)} + \left( \E \left[ \left| U^0 \left(t,x+\mathcal{W}^0_t \right) - u \left( t, x+\mathcal{W}^0_t \right) \right|^\p \right] \right)^{\frac{1}{\p}} \leqslant \left( \frac{ \mathfrak{m}}{m^{\frac{1}{2}}}\right)\left(\E \left[\left| g \left(x+\mathcal{W}^0_T\right)\right|^\p\right]\right)^\frac{1}{\p} +\end{align} +Observe next that (\ref{(1.12)}) ensures that: +\begin{align}\label{(1.47)} + \left( \frac{ \mathfrak{m}}{m^{\frac{1}{2}}}\right)\left(\E \left[\left| g \left(x+\mathcal{W}^0_T\right)\right|^\p\right]\right)^\frac{1}{\p} \leqslant \mathfrak{L}\left( \frac{ \mathfrak{m}}{m^{\frac{1}{2}}}\right)\left(\E \left[ \left( 1+ \left\| x+\mathcal{W}^0_T \right\|_E^p \right)^\p\right]\right)^\frac{1}{\p} +\end{align} +Which in turn yields that: +\begin{align}\label{(1.48)} + \mathfrak{L}\left( \frac{ \mathfrak{m}}{m^{\frac{1}{2}}}\right)\left(\E \left[ \left( 1+ \left\| x+\mathcal{W}^0_T \right\|_E^p \right)^\p\right]\right)^\frac{1}{\p} \leqslant \mathfrak{L}\left( \frac{ \mathfrak{m}}{m^{\frac{1}{2}}}\right)\left(\sup_{s \in [0,T]}\E \left[ \left( 1+ \left\| x+\mathcal{W}^0_s \right\|_E^p \right)^\p\right]\right)^\frac{1}{\p} +\end{align} +Combining \ref{(1.46)}, \ref{(1.47)}, and \ref{(1.48)} yields that: +\begin{align} + \left( \E \left[ \left| U^0 \left(t,x+\mathcal{W}^0_t \right) - u \left( t, x+\mathcal{W}^0_t \right) \right|^\p \right] \right)^{\frac{1}{\p}} &\leqslant \left( \frac{ \mathfrak{m}}{m^{\frac{1}{2}}}\right)\left(\E \left[\left| g \left(x+\mathcal{W}^0_T\right)\right|^\p\right]\right)^\frac{1}{\p} \nonumber\\ + &\les\mathfrak{L}\left( \frac{ \mathfrak{m}}{m^{\frac{1}{2}}}\right)\left(\sup_{s\in[0,T]}\E \left[ \left( 1+ \left\| x+\mathcal{W}^0_s \right\|_E^p \right)^\p\right]\right)^\frac{1}{\p} +\end{align} +This completes the proof of Lemma \ref{lem:1.25}. +\end{proof} + +\begin{corollary}\label{cor:1.25.1} Assume Setting \ref{primarysetting}. Then it holds for all $t\in[0,T]$, $x\in \R^d$ that: +\begin{align} + \left( \E \left[ \left| U^0 \lp t,x \rp -u(t,x) \rv ^\p \right] \right) ^{\frac{1}{\p}} \leqslant \mathfrak{L} \left( \frac{ \mathfrak{m}}{m^{\frac{1}{2}}} \right)\left(\sup_{s \in [0,T]}\E \left[ \left( 1+ \right\| x+\mathcal{W}^0_s \left\|_E^p \right)^\p\right]\right)^\frac{1}{\p} +\end{align} +\end{corollary} + + +\begin{proof} Observe that for all $t \in [0,T-\mft]$ and $\mft \in [0,T]$, and the fact that $W^0$ has independent increments it is the case that: +\begin{align} + u(t+\mft,x) = \E \left[g \left(x+\mathcal{W}^0_{T-(t+\mft)}\right)\right] = \E \left[g \left(x+\mathcal{W}^0_{(T-\mft)-t)}\right)\right] +\end{align} +It is also the case that: +\begin{align*} + U^\theta(t+\mft,x) = \frac{1}{m} \left[\sum^{m}_{k=1} g \left(x+\mathcal{W}^{(\theta,0,-k)}_{T-(t+\mft)}\right)\right] = \frac{1}{m} \left[\sum^{m}_{k=1} g \left(x+\mathcal{W}^{(\theta,0,-k)}_{(T-\mft)-t}\right)\right] +\end{align*} +\medskip +Then, applying Lemma \ref{lem:1.25}, applied for all $\mft \in [0,T]$, with $\mathfrak{L} \curvearrowleft \mathfrak{L}$, $p \curvearrowleft p$, $\mathfrak{p} \curvearrowleft \mathfrak{p}$, $T \curvearrowleft (T-\mft)$ is such that for all $\mft \in [0,T]$, $t \in [0,T-\mft]$, $x \in \R^d$ we have: +\begin{align} + &\left( \E \left[ \left| U^0 \left(t+\mft,x+\mathcal{W}^0_t \right) - u \left( t+\mft, x+\mathcal{W}^0_t \right) \right|^\p \right] \right)^{\frac{1}{\p}} \nonumber \\ + &\leqslant \mathfrak{L}\left( \frac{ \mathfrak{m}}{m^{\frac{1}{2}}}\right)\left(\sup_{s \in [0,T-\mft]}\E \left[ \left( 1+ \left\| x+\mathcal{W}^0_s \right\|_E^p \right)^\p\right]\right)^\frac{1}{\p} \nonumber \\ + &\leqslant \mathfrak{L}\left( \frac{ \mathfrak{m}}{m^{\frac{1}{2}}}\right)\left(\sup_{s \in [0,T]}\E \left[ \left( 1+ \left\| x+\mathcal{W}^0_s \right\|_E^p \right)^\p\right]\right)^\frac{1}{\p} +\end{align} +Thus we get for all $\mft \in [0,T]$, $x\in \R^d$, $n \in $: +\begin{align} + \left( \E \left[ \left| U^0 \left(\mft,x \right) - u \left(\mft, x \right) \right|^\p \right] \right)^{\frac{1}{\p}} &= \left( \E \left[ \left| U^0 \left(\mft,x+\mathcal{W}^0_0 \right) - u \left(\mft, x+\mathcal{W}^0_0 \right) \right|^\p \right] \right)^{\frac{1}{\p}}\nonumber\\ + &\leqslant \mathfrak{L}\left( \frac{ \mathfrak{m}}{m^{\frac{1}{2}}}\right)\left(\sup_{s \in [0,T]}\E \left[ \left( 1+ \left\| x+\mathcal{W}^0_s \right\|_E^p \right)^\p\right]\right)^\frac{1}{\p} +\end{align} +This completes the proof of Corollary \ref{cor:1.25.1}. +\end{proof} + +\begin{theorem}\label{tentpole_1} Let $T,L,p,q, \mathfrak{d} \in [0,\infty), m \in \mathbb{N}$, $\Theta = \bigcup_{n\in \mathbb{N}} \Z^n$, let $g_d\in C(\R^d,\R)$, and assume that $d\in \N$, $t \in [0,T]$, $x = (x_1,x_2,...,x_d)\in \R^d$, $v,w \in \R$ and that $\max \{ |g_d(x)|\} \leqslant Ld^p \left(1+\Sigma^d_{k=1}\left|x_k \right|\right)$, let $\left(\Omega, \mathcal{F}, \mathbb{P}\right)$ be a probability space, let $\mathcal{W}^{d,\theta}: [0,T] \times \Omega \rightarrow \R^d$, $d\in \N$, $\theta \in \Theta$, be independent standard Brownian motions, assume for every $d\in \N$ that $\left(\mathcal{W}^{d,\theta}\right)_{\theta \in \Theta}$ are independent, let $u_d \in C([0,T] \times \R^d,\R)$, $d \in \N$, satisfy for all $d\in \N$, $t\in [0,T]$, $x \in \R^d$ that $\E \left[g_x \left(x+\mathcal{W}^{d,0}_{T-t} \right)\right] < \infty$ and: +\begin{align} + u_d\left(t,x\right) = \E \left[g_d \left(x + \mathcal{W}^{d,0}_{T-t}\right)\right] +\end{align} +Let $U^{d,\theta}_m: [0,T] \times \R^d \times \Omega \rightarrow \R$, $d \in \N$, $m\in \Z$, $\theta \in \Theta$, satisfy for all, $d\in \N$, $m \in \Z$, $\theta \in \Theta$, $t\in [0,T]$, $x\in \R^d$ that: +\begin{align} + U^{d,\theta}_m(t,x) = \frac{1}{m} \left[\sum^{m}_{k=1} g_d \left(x + \mathcal{W}^{d,(\theta, 0,-k)}_{T-t}\right)\right] +\end{align} +and for every $d,n,m \in \N$ let $\mathfrak{C}_{d,n,m} \in \Z$ be the number of function evaluations of $u_d(0,\cdot)$ and the number of realizations of scalar random variables which are used to compute one realization of $U^{d,0}_m(T,0): \Omega \rightarrow \R$. + + There then exists $c \in \R$, and $\mathfrak{N}:\N \times (0,1] \rightarrow \N$ such that for all $d \in \N$, $\varepsilon \in (0,1]$ it holds that: +\begin{align}\label{(2.48)} + \sup_{t\in[0,T]} \sup_{x \in [-L,L]^d} \left(\E \left[\left| u_d(t,x) - U^{d,0}_{\mathfrak{N}(d,\epsilon)}\right|^\p\right]\right)^\frac{1}{\p} \leqslant \epsilon +\end{align} + +and: +\begin{align}\label{2.3.27} + \mathfrak{C}_{d,\mathfrak{N}(d,\varepsilon), \mathfrak{N}(d,\varepsilon)} \leqslant cd^c\varepsilon^{-(2+\delta)} +\end{align} +\end{theorem} +\begin{proof} Throughout the proof let $\mathfrak{m}_\mathfrak{p} = \sqrt{\mathfrak{p} -1}$, $\mathfrak{p} \in [2,\infty)$, let $\mathbb{F}^d_t \subseteq \mathcal{F}$, $d\in \N$, $t\in [0,T]$ satisfy for all $d \in \N$, $t\in [0,T]$ that: +\begin{align}\label{2.3.29} +\mathbb{F}^d_t = \begin{cases} + \bigcap_{s\in[t,T]} \sigma \left(\sigma \left(W^{d,0}_r: r \in [0,s]\right) \cup \{A\in \mathcal{F}: \mathbb{P}(A)=0\}\right) & :t -- 225 +< -- 11 ++ -- 79 +- -- 74 +* -- 465 +:= -- 1011 +add.period$ -- 51 +call.type$ -- 15 +change.case$ -- 108 +chr.to.int$ -- 12 +cite$ -- 16 +duplicate$ -- 228 +empty$ -- 393 +format.name$ -- 95 +if$ -- 1134 +int.to.chr$ -- 4 +int.to.str$ -- 0 +missing$ -- 17 +newline$ -- 80 +num.names$ -- 45 +pop$ -- 93 +preamble$ -- 1 +purify$ -- 112 +quote$ -- 0 +skip$ -- 179 +stack$ -- 0 +substring$ -- 356 +swap$ -- 37 +text.length$ -- 3 +text.prefix$ -- 0 +top$ -- 0 +type$ -- 82 +warning$ -- 1 +while$ -- 41 +width$ -- 0 +write$ -- 200 +(There was 1 error message) diff --git a/Dissertation_unzipped/Dissertation.fdb_latexmk b/Dissertation_unzipped/Dissertation.fdb_latexmk new file mode 100644 index 0000000..d53fcb3 --- /dev/null +++ b/Dissertation_unzipped/Dissertation.fdb_latexmk @@ -0,0 +1,146 @@ +# Fdb version 3 +["bibtex Dissertation"] 1680561453 "Dissertation.aux" "Dissertation.bbl" "Dissertation" 1680561454 + "/usr/local/texlive/2021/texmf-dist/bibtex/bst/base/apalike.bst" 1292289607 24635 604dafcc79f521a11ea73e506e1fbd98 "" + "Dissertation.aux" 1680561454 16942 a268c5347a29523917aa84fe57b644e5 "pdflatex" + "Dissertation.bib" 1678736585 11854 cd92a483aee3d3aaed665f1e6045327b "" + (generated) + "Dissertation.bbl" + "Dissertation.blg" +["pdflatex"] 1680561453 "Dissertation.tex" "Dissertation.pdf" "Dissertation" 1680561454 + "/Users/shakilrafi/Library/texlive/2021/texmf-var/fonts/pk/ljfour/public/bbm/bbm10.657pk" 1678735108 7808 3b8b6f5de8138afb320cc2da0f56c3af "" + "/usr/local/texlive/2021/texmf-dist/fonts/map/fontname/texfonts.map" 1577235249 3524 cb3e574dea2d1052e39280babc910dc8 "" + "/usr/local/texlive/2021/texmf-dist/fonts/tfm/jknappen/ec/ectt1000.tfm" 1136768653 1536 06717a2b50de47d4087ac0e6cd759455 "" + "/usr/local/texlive/2021/texmf-dist/fonts/tfm/public/amsfonts/cmextra/cmex7.tfm" 1246382020 1004 54797486969f23fa377b128694d548df "" + "/usr/local/texlive/2021/texmf-dist/fonts/tfm/public/amsfonts/cmextra/cmex8.tfm" 1246382020 988 bdf658c3bfc2d96d3c8b02cfc1c94c20 "" + "/usr/local/texlive/2021/texmf-dist/fonts/tfm/public/amsfonts/euler/eufm10.tfm" 1246382020 1040 b84415f97d114011685943ade933dc71 "" + "/usr/local/texlive/2021/texmf-dist/fonts/tfm/public/amsfonts/euler/eufm7.tfm" 1246382020 1040 82eb6630b094bff824fccca83ff507f9 "" + "/usr/local/texlive/2021/texmf-dist/fonts/tfm/public/amsfonts/symbols/msam10.tfm" 1246382020 916 f87d7c45f9c908e672703b83b72241a3 "" + "/usr/local/texlive/2021/texmf-dist/fonts/tfm/public/amsfonts/symbols/msam7.tfm" 1246382020 928 2dc8d444221b7a635bb58038579b861a "" + "/usr/local/texlive/2021/texmf-dist/fonts/tfm/public/amsfonts/symbols/msbm10.tfm" 1246382020 908 2921f8a10601f252058503cc6570e581 "" + "/usr/local/texlive/2021/texmf-dist/fonts/tfm/public/amsfonts/symbols/msbm7.tfm" 1246382020 940 228d6584342e91276bf566bcf9716b83 "" + "/usr/local/texlive/2021/texmf-dist/fonts/tfm/public/bbm/bbm10.tfm" 1227036886 560 39fd35b5e4a6aca3672660cc548ba860 "" + "/usr/local/texlive/2021/texmf-dist/fonts/tfm/public/bbm/bbm6.tfm" 1227036886 560 4c5ff0e6c23877f3f630ae9d8ef92c6e "" + "/usr/local/texlive/2021/texmf-dist/fonts/tfm/public/bbm/bbm8.tfm" 1227036886 560 2e80f8a1cb59527f57d99bb5fccd0f3c "" + "/usr/local/texlive/2021/texmf-dist/fonts/tfm/public/boondox/BOONDOX-r-ds.tfm" 1304615349 916 fbe573b4f4b204cfe65c92e2e101d105 "" + "/usr/local/texlive/2021/texmf-dist/fonts/tfm/public/boondox/zxxrl7z.tfm" 1304615349 740 9412be1bafb7b34037445bfb33534951 "" + "/usr/local/texlive/2021/texmf-dist/fonts/tfm/public/cm/cmbx10.tfm" 1136768653 1328 c834bbb027764024c09d3d2bf908b5f0 "" + "/usr/local/texlive/2021/texmf-dist/fonts/tfm/public/cm/cmbx12.tfm" 1136768653 1324 c910af8c371558dc20f2d7822f66fe64 "" + "/usr/local/texlive/2021/texmf-dist/fonts/tfm/public/cm/cmbxti10.tfm" 1136768653 1532 9162035f4e7176612125649e348e2195 "" + "/usr/local/texlive/2021/texmf-dist/fonts/tfm/public/cm/cmex10.tfm" 1136768653 992 662f679a0b3d2d53c1b94050fdaa3f50 "" + "/usr/local/texlive/2021/texmf-dist/fonts/tfm/public/cm/cmmi10.tfm" 1136768653 1528 abec98dbc43e172678c11b3b9031252a "" + "/usr/local/texlive/2021/texmf-dist/fonts/tfm/public/cm/cmmi12.tfm" 1136768653 1524 4414a8315f39513458b80dfc63bff03a "" + "/usr/local/texlive/2021/texmf-dist/fonts/tfm/public/cm/cmmi6.tfm" 1136768653 1512 f21f83efb36853c0b70002322c1ab3ad "" + "/usr/local/texlive/2021/texmf-dist/fonts/tfm/public/cm/cmmi8.tfm" 1136768653 1520 eccf95517727cb11801f4f1aee3a21b4 "" + "/usr/local/texlive/2021/texmf-dist/fonts/tfm/public/cm/cmr10.tfm" 1136768653 1296 45809c5a464d5f32c8f98ba97c1bb47f "" + "/usr/local/texlive/2021/texmf-dist/fonts/tfm/public/cm/cmr12.tfm" 1136768653 1288 655e228510b4c2a1abe905c368440826 "" + "/usr/local/texlive/2021/texmf-dist/fonts/tfm/public/cm/cmr17.tfm" 1136768653 1292 296a67155bdbfc32aa9c636f21e91433 "" + "/usr/local/texlive/2021/texmf-dist/fonts/tfm/public/cm/cmr6.tfm" 1136768653 1300 b62933e007d01cfd073f79b963c01526 "" + "/usr/local/texlive/2021/texmf-dist/fonts/tfm/public/cm/cmr8.tfm" 1136768653 1292 21c1c5bfeaebccffdb478fd231a0997d "" + "/usr/local/texlive/2021/texmf-dist/fonts/tfm/public/cm/cmsy10.tfm" 1136768653 1124 6c73e740cf17375f03eec0ee63599741 "" + "/usr/local/texlive/2021/texmf-dist/fonts/tfm/public/cm/cmsy6.tfm" 1136768653 1116 933a60c408fc0a863a92debe84b2d294 "" + "/usr/local/texlive/2021/texmf-dist/fonts/tfm/public/cm/cmsy8.tfm" 1136768653 1120 8b7d695260f3cff42e636090a8002094 "" + "/usr/local/texlive/2021/texmf-dist/fonts/tfm/public/cm/cmti10.tfm" 1136768653 1480 aa8e34af0eb6a2941b776984cf1dfdc4 "" + "/usr/local/texlive/2021/texmf-dist/fonts/tfm/public/cm/cmti7.tfm" 1136768653 1492 86331993fe614793f5e7e755835c31c5 "" + "/usr/local/texlive/2021/texmf-dist/fonts/tfm/public/cm/cmti8.tfm" 1136768653 1504 1747189e0441d1c18f3ea56fafc1c480 "" + "/usr/local/texlive/2021/texmf-dist/fonts/tfm/public/rsfs/rsfs10.tfm" 1229303445 688 37338d6ab346c2f1466b29e195316aa4 "" + "/usr/local/texlive/2021/texmf-dist/fonts/tfm/public/rsfs/rsfs5.tfm" 1229303445 684 3a51bd4fd9600428d5264cf25f04bb9a "" + "/usr/local/texlive/2021/texmf-dist/fonts/type1/public/amsfonts/cm/cmbx10.pfb" 1248133631 34811 78b52f49e893bcba91bd7581cdc144c0 "" + "/usr/local/texlive/2021/texmf-dist/fonts/type1/public/amsfonts/cm/cmbx12.pfb" 1248133631 32080 340ef9bf63678554ee606688e7b5339d "" + "/usr/local/texlive/2021/texmf-dist/fonts/type1/public/amsfonts/cm/cmbxti10.pfb" 1248133631 36554 b67dc2cfa451409e100b3fcf5f506509 "" + "/usr/local/texlive/2021/texmf-dist/fonts/type1/public/amsfonts/cm/cmex10.pfb" 1248133631 30251 6afa5cb1d0204815a708a080681d4674 "" + "/usr/local/texlive/2021/texmf-dist/fonts/type1/public/amsfonts/cm/cmmi10.pfb" 1248133631 36299 5f9df58c2139e7edcf37c8fca4bd384d "" + "/usr/local/texlive/2021/texmf-dist/fonts/type1/public/amsfonts/cm/cmmi12.pfb" 1248133631 36741 fa121aac0049305630cf160b86157ee4 "" + "/usr/local/texlive/2021/texmf-dist/fonts/type1/public/amsfonts/cm/cmmi6.pfb" 1248133631 37166 8ab3487cbe3ab49ebce74c29ea2418db "" + "/usr/local/texlive/2021/texmf-dist/fonts/type1/public/amsfonts/cm/cmmi8.pfb" 1248133631 35469 70d41d2b9ea31d5d813066df7c99281c "" + "/usr/local/texlive/2021/texmf-dist/fonts/type1/public/amsfonts/cm/cmr10.pfb" 1248133631 35752 024fb6c41858982481f6968b5fc26508 "" + "/usr/local/texlive/2021/texmf-dist/fonts/type1/public/amsfonts/cm/cmr12.pfb" 1248133631 32722 d7379af29a190c3f453aba36302ff5a9 "" + "/usr/local/texlive/2021/texmf-dist/fonts/type1/public/amsfonts/cm/cmr17.pfb" 1248133631 32362 179c33bbf43f19adbb3825bb4e36e57a "" + "/usr/local/texlive/2021/texmf-dist/fonts/type1/public/amsfonts/cm/cmr6.pfb" 1248133631 32734 69e00a6b65cedb993666e42eedb3d48f "" + "/usr/local/texlive/2021/texmf-dist/fonts/type1/public/amsfonts/cm/cmr8.pfb" 1248133631 32726 0a1aea6fcd6468ee2cf64d891f5c43c8 "" + "/usr/local/texlive/2021/texmf-dist/fonts/type1/public/amsfonts/cm/cmsy10.pfb" 1248133631 32569 5e5ddc8df908dea60932f3c484a54c0d "" + "/usr/local/texlive/2021/texmf-dist/fonts/type1/public/amsfonts/cm/cmsy8.pfb" 1248133631 32626 4f5c1b83753b1dd3a97d1b399a005b4b "" + "/usr/local/texlive/2021/texmf-dist/fonts/type1/public/amsfonts/cm/cmti10.pfb" 1248133631 37944 359e864bd06cde3b1cf57bb20757fb06 "" + "/usr/local/texlive/2021/texmf-dist/fonts/type1/public/amsfonts/euler/eufm10.pfb" 1336858727 21098 d4aee7c0aac232caac5688b586b9363c "" + "/usr/local/texlive/2021/texmf-dist/fonts/type1/public/amsfonts/euler/eufm7.pfb" 1336858727 21251 56705123063d7b34002d6b6e7142345e "" + "/usr/local/texlive/2021/texmf-dist/fonts/type1/public/amsfonts/latxfont/line10.pfb" 1248133631 11493 4f5ed183a47d3197cf8cd322325db6de "" + "/usr/local/texlive/2021/texmf-dist/fonts/type1/public/amsfonts/symbols/msbm10.pfb" 1248133631 34694 ad62b13721ee8eda1dcc8993c8bd7041 "" + "/usr/local/texlive/2021/texmf-dist/fonts/type1/public/boondox/zxxrl8a.pfb" 1304615349 17115 e6f9070825b88e03075bbc6fdf632415 "" + "/usr/local/texlive/2021/texmf-dist/fonts/vf/public/boondox/BOONDOX-r-ds.vf" 1304615349 468 7995eab1335073d481e9e8949bc62870 "" + "/usr/local/texlive/2021/texmf-dist/tex/context/base/mkii/supp-pdf.mkii" 1461363279 71627 94eb9990bed73c364d7f53f960cc8c5b "" + "/usr/local/texlive/2021/texmf-dist/tex/generic/atbegshi/atbegshi.sty" 1575674566 24708 5584a51a7101caf7e6bbf1fc27d8f7b1 "" + "/usr/local/texlive/2021/texmf-dist/tex/generic/bigintcalc/bigintcalc.sty" 1576625341 40635 c40361e206be584d448876bba8a64a3b "" + "/usr/local/texlive/2021/texmf-dist/tex/generic/bitset/bitset.sty" 1576016050 33961 6b5c75130e435b2bfdb9f480a09a39f9 "" + "/usr/local/texlive/2021/texmf-dist/tex/generic/etexcmds/etexcmds.sty" 1576625273 7734 b98cbb34c81f667027c1e3ebdbfce34b "" + "/usr/local/texlive/2021/texmf-dist/tex/generic/gettitlestring/gettitlestring.sty" 1576625223 8371 9d55b8bd010bc717624922fb3477d92e "" + "/usr/local/texlive/2021/texmf-dist/tex/generic/iftex/iftex.sty" 1583617216 6501 4011d89d9621e0b0901138815ba5ff29 "" + "/usr/local/texlive/2021/texmf-dist/tex/generic/iftex/ifvtex.sty" 1572645307 1057 525c2192b5febbd8c1f662c9468335bb "" + "/usr/local/texlive/2021/texmf-dist/tex/generic/infwarerr/infwarerr.sty" 1575499628 8356 7bbb2c2373aa810be568c29e333da8ed "" + "/usr/local/texlive/2021/texmf-dist/tex/generic/intcalc/intcalc.sty" 1576625065 31769 002a487f55041f8e805cfbf6385ffd97 "" + "/usr/local/texlive/2021/texmf-dist/tex/generic/kvdefinekeys/kvdefinekeys.sty" 1576878844 5412 d5a2436094cd7be85769db90f29250a6 "" + "/usr/local/texlive/2021/texmf-dist/tex/generic/kvsetkeys/kvsetkeys.sty" 1576624944 13807 952b0226d4efca026f0e19dd266dcc22 "" + "/usr/local/texlive/2021/texmf-dist/tex/generic/ltxcmds/ltxcmds.sty" 1600895880 17859 4409f8f50cd365c68e684407e5350b1b "" + "/usr/local/texlive/2021/texmf-dist/tex/generic/pdfescape/pdfescape.sty" 1576015897 19007 15924f7228aca6c6d184b115f4baa231 "" + "/usr/local/texlive/2021/texmf-dist/tex/generic/pdftexcmds/pdftexcmds.sty" 1593379760 20089 80423eac55aa175305d35b49e04fe23b "" + "/usr/local/texlive/2021/texmf-dist/tex/generic/soul/soul.sty" 1601501446 23636 c37eef0334dd2011d112d2040c11328f "" + "/usr/local/texlive/2021/texmf-dist/tex/generic/uniquecounter/uniquecounter.sty" 1576624663 7008 f92eaa0a3872ed622bbf538217cd2ab7 "" + "/usr/local/texlive/2021/texmf-dist/tex/latex/amscls/amsthm.sty" 1591045760 12594 0d51ac3a545aaaa555021326ff22a6cc "" + "/usr/local/texlive/2021/texmf-dist/tex/latex/amsfonts/amsfonts.sty" 1359763108 5949 3f3fd50a8cc94c3d4cbf4fc66cd3df1c "" + "/usr/local/texlive/2021/texmf-dist/tex/latex/amsfonts/amssymb.sty" 1359763108 13829 94730e64147574077f8ecfea9bb69af4 "" + "/usr/local/texlive/2021/texmf-dist/tex/latex/amsfonts/ueuf.fd" 1359763108 1047 4252767c0fde12e3ce9f914ef4bb1ea1 "" + "/usr/local/texlive/2021/texmf-dist/tex/latex/amsfonts/umsa.fd" 1359763108 961 6518c6525a34feb5e8250ffa91731cff "" + "/usr/local/texlive/2021/texmf-dist/tex/latex/amsfonts/umsb.fd" 1359763108 961 d02606146ba5601b5645f987c92e6193 "" + "/usr/local/texlive/2021/texmf-dist/tex/latex/amsmath/amsbsy.sty" 1523134290 2211 ca7ce284ab93c8eecdc6029dc5ccbd73 "" + "/usr/local/texlive/2021/texmf-dist/tex/latex/amsmath/amsgen.sty" 1523134290 4161 7f6eb9092061a11f87d08ed13515b48d "" + "/usr/local/texlive/2021/texmf-dist/tex/latex/amsmath/amsmath.sty" 1601675358 87353 2c21ff5f2e32e1bf714e600924d810db "" + "/usr/local/texlive/2021/texmf-dist/tex/latex/amsmath/amsopn.sty" 1523134290 4116 32e6abd27229755a83a8b7f18e583890 "" + "/usr/local/texlive/2021/texmf-dist/tex/latex/amsmath/amstext.sty" 1523134290 2432 8ff93b1137020e8f21930562a874ae66 "" + "/usr/local/texlive/2021/texmf-dist/tex/latex/appendix/appendix.sty" 1581200180 8878 d9f65b39ca82f1d70030390eca653b1c "" + "/usr/local/texlive/2021/texmf-dist/tex/latex/atveryend/atveryend.sty" 1576191570 19336 ce7ae9438967282886b3b036cfad1e4d "" + "/usr/local/texlive/2021/texmf-dist/tex/latex/auxhook/auxhook.sty" 1576625391 3935 57aa3c3e203a5c2effb4d2bd2efbc323 "" + "/usr/local/texlive/2021/texmf-dist/tex/latex/base/atbegshi-ltx.sty" 1609451599 2973 00085839f5881178c538db5970d3c38e "" + "/usr/local/texlive/2021/texmf-dist/tex/latex/base/atveryend-ltx.sty" 1610149055 2596 b3a02e33035865e9f0457e064d436fb8 "" + "/usr/local/texlive/2021/texmf-dist/tex/latex/base/report.cls" 1601675358 23204 74c91ecbcc47161218f25d9d0651c0f7 "" + "/usr/local/texlive/2021/texmf-dist/tex/latex/base/size11.clo" 1601675358 8465 2dd6985139dc15bc64ec71e501e76e40 "" + "/usr/local/texlive/2021/texmf-dist/tex/latex/bbm-macros/bbm.sty" 1191314257 1644 1e0d54b051369c3f457872824cac219f "" + "/usr/local/texlive/2021/texmf-dist/tex/latex/bbm-macros/ubbm.fd" 1191314257 2132 62f898e14cad3357133b5cbf57b61c0a "" + "/usr/local/texlive/2021/texmf-dist/tex/latex/boondox/uboondox-ds.fd" 1304615349 635 5de453029d93b0141b4b403757026b84 "" + "/usr/local/texlive/2021/texmf-dist/tex/latex/cancel/cancel.sty" 1388445839 7592 dd751af313a16a0308545d5bfd7aaaa2 "" + "/usr/local/texlive/2021/texmf-dist/tex/latex/cleveref/cleveref.sty" 1525128982 329481 7fc6b003158402a4c694bc0a1b729308 "" + "/usr/local/texlive/2021/texmf-dist/tex/latex/enumitem/enumitem.sty" 1561238569 51697 f8f08183cd2080d9d18a41432d651dfb "" + "/usr/local/texlive/2021/texmf-dist/tex/latex/geometry/geometry.sty" 1578002852 41601 9cf6c5257b1bc7af01a58859749dd37a "" + "/usr/local/texlive/2021/texmf-dist/tex/latex/graphics-cfg/color.cfg" 1459978653 1213 620bba36b25224fa9b7e1ccb4ecb76fd "" + "/usr/local/texlive/2021/texmf-dist/tex/latex/graphics-def/pdftex.def" 1601931164 19103 48d29b6e2a64cb717117ef65f107b404 "" + "/usr/local/texlive/2021/texmf-dist/tex/latex/graphics/keyval.sty" 1580683321 2590 e3b24ff953e5b58d924f163d25380312 "" + "/usr/local/texlive/2021/texmf-dist/tex/latex/hycolor/hycolor.sty" 1580250785 17914 4c28a13fc3d975e6e81c9bea1d697276 "" + "/usr/local/texlive/2021/texmf-dist/tex/latex/hyperref/hpdftex.def" 1614638310 49890 ad792e908af8bc5c293b806bd181e58d "" + "/usr/local/texlive/2021/texmf-dist/tex/latex/hyperref/hyperref-langpatches.def" 1614638310 1777 31eee4f3f5c138e44a4e16abfcaefa41 "" + "/usr/local/texlive/2021/texmf-dist/tex/latex/hyperref/hyperref.sty" 1614638310 230839 177eac084bda18ae827a77792a17292e "" + "/usr/local/texlive/2021/texmf-dist/tex/latex/hyperref/nameref.sty" 1612734870 13242 133e617c5eebffdd05e421624022b267 "" + "/usr/local/texlive/2021/texmf-dist/tex/latex/hyperref/pd1enc.def" 1614638310 14132 3a8b7a8250bdb5871e322188be7c9ff6 "" + "/usr/local/texlive/2021/texmf-dist/tex/latex/hyperref/puenc.def" 1614638310 117004 7c05c6dde5b2b6a14f97dd4137739212 "" + "/usr/local/texlive/2021/texmf-dist/tex/latex/jknapltx/mathrsfs.sty" 1137110241 300 12fa6f636b617656f2810ee82cb05015 "" + "/usr/local/texlive/2021/texmf-dist/tex/latex/jknapltx/ursfs.fd" 1137110241 548 cc4e3557704bfed27c7002773fad6c90 "" + "/usr/local/texlive/2021/texmf-dist/tex/latex/kvoptions/kvoptions.sty" 1602274869 22521 d2fceb764a442a2001d257ef11db7618 "" + "/usr/local/texlive/2021/texmf-dist/tex/latex/l3backend/l3backend-pdftex.def" 1616101731 27164 3d5f7887a89df4eb2f6e86ba26ef3254 "" + "/usr/local/texlive/2021/texmf-dist/tex/latex/letltxmacro/letltxmacro.sty" 1575499565 5766 13a9e8766c47f30327caf893ece86ac8 "" + "/usr/local/texlive/2021/texmf-dist/tex/latex/natbib/natbib.sty" 1291685959 45456 1c8843383c0bd05870c45fa0ebea6cc2 "" + "/usr/local/texlive/2021/texmf-dist/tex/latex/refcount/refcount.sty" 1576624809 9878 9e94e8fa600d95f9c7731bb21dfb67a4 "" + "/usr/local/texlive/2021/texmf-dist/tex/latex/rerunfilecheck/rerunfilecheck.sty" 1575674187 9715 b051d5b493d9fe5f4bc251462d039e5f "" + "/usr/local/texlive/2021/texmf-dist/tex/latex/setspace/setspace.sty" 1324344192 22913 a27d7908fc6f0385466454a966a316eb "" + "/usr/local/texlive/2021/texmf-dist/tex/latex/url/url.sty" 1388531844 12796 8edb7d69a20b857904dd0ea757c14ec9 "" + "/usr/local/texlive/2021/texmf-dist/tex/latex/xcolor/xcolor.sty" 1463002160 55589 34128738f682d033422ca125f82e5d62 "" + "/usr/local/texlive/2021/texmf-dist/web2c/texmf.cnf" 1616443989 39972 3d6bb4d9d719e93193fa020b58adf5d4 "" + "/usr/local/texlive/2021/texmf-var/fonts/map/pdftex/updmap/pdftex.map" 1616695603 5169178 a2ce6e2d73f603b690db6777d06dbccb "" + "/usr/local/texlive/2021/texmf-var/web2c/pdftex/pdflatex.fmt" 1648104084 2724739 85ebe18ca2cb14622b198cab5240cd04 "" + "/usr/local/texlive/2021/texmf.cnf" 1616695596 577 4c1911a7228e554c6032256d3cf5567d "" + "Dissertation.aux" 1680561454 16942 a268c5347a29523917aa84fe57b644e5 "pdflatex" + "Dissertation.bbl" 1680561453 4052 416c876e638fbf686e3598acbbfa6ac6 "bibtex Dissertation" + "Dissertation.out" 1680561454 2174 ea82f68fd5620e41892b53c13ee56636 "pdflatex" + "Dissertation.tex" 1680561451 132778 6416e7b26f4aa50463e624468b4419cb "" + "Dissertation.toc" 1680561454 949 e41c434503ec322d2e8f9cd4c1ba6b51 "pdflatex" + (generated) + "Dissertation.aux" + "Dissertation.log" + "Dissertation.toc" + "Dissertation.out" + "Dissertation.pdf" diff --git a/Dissertation_unzipped/Dissertation.fls b/Dissertation_unzipped/Dissertation.fls new file mode 100644 index 0000000..11ee80c --- /dev/null +++ b/Dissertation_unzipped/Dissertation.fls @@ -0,0 +1,744 @@ +PWD /Users/shakilrafi/Padgett_Rafi/Dissertation +INPUT /usr/local/texlive/2021/texmf.cnf +INPUT /usr/local/texlive/2021/texmf-dist/web2c/texmf.cnf +INPUT /usr/local/texlive/2021/texmf-var/web2c/pdftex/pdflatex.fmt +INPUT Dissertation.tex +OUTPUT Dissertation.log +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/base/report.cls +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/base/report.cls +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/base/report.cls +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/base/report.cls +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/base/report.cls +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/base/report.cls +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/base/report.cls +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/base/report.cls +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/base/report.cls +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/base/report.cls +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/base/report.cls +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/base/size11.clo +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/base/size11.clo +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/base/size11.clo +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/base/size11.clo +INPUT /usr/local/texlive/2021/texmf-dist/fonts/map/fontname/texfonts.map +INPUT /usr/local/texlive/2021/texmf-dist/fonts/tfm/public/cm/cmr10.tfm +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/setspace/setspace.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/setspace/setspace.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/setspace/setspace.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/setspace/setspace.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/setspace/setspace.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/setspace/setspace.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/setspace/setspace.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/setspace/setspace.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/setspace/setspace.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/setspace/setspace.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/setspace/setspace.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/appendix/appendix.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/appendix/appendix.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/appendix/appendix.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/appendix/appendix.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/appendix/appendix.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/appendix/appendix.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/appendix/appendix.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/appendix/appendix.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/appendix/appendix.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/appendix/appendix.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/appendix/appendix.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/amsmath/amsmath.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/amsmath/amsmath.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/amsmath/amsmath.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/amsmath/amsmath.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/amsmath/amsmath.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/amsmath/amsmath.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/amsmath/amsmath.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/amsmath/amsmath.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/amsmath/amsmath.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/amsmath/amsmath.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/amsmath/amsmath.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/amsmath/amsopn.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/amsmath/amsopn.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/amsmath/amstext.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/amsmath/amstext.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/amsmath/amstext.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/amsmath/amstext.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/amsmath/amstext.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/amsmath/amstext.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/amsmath/amstext.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/amsmath/amstext.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/amsmath/amstext.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/amsmath/amstext.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/amsmath/amstext.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/amsmath/amsgen.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/amsmath/amsgen.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/amsmath/amsgen.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/amsmath/amsgen.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/amsmath/amsgen.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/amsmath/amsgen.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/amsmath/amsgen.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/amsmath/amsgen.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/amsmath/amsgen.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/amsmath/amsgen.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/amsmath/amsgen.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/amsmath/amsbsy.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/amsmath/amsbsy.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/amsmath/amsbsy.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/amsmath/amsbsy.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/amsmath/amsbsy.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/amsmath/amsbsy.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/amsmath/amsbsy.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/amsmath/amsbsy.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/amsmath/amsbsy.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/amsmath/amsbsy.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/amsmath/amsbsy.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/amsmath/amsgen.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/amsmath/amsopn.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/amsmath/amsopn.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/amsmath/amsopn.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/amsmath/amsopn.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/amsmath/amsopn.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/amsmath/amsopn.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/amsmath/amsopn.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/amsmath/amsopn.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/amsmath/amsopn.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/amsmath/amsopn.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/amsmath/amsopn.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/amsmath/amsgen.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/amscls/amsthm.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/amscls/amsthm.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/amscls/amsthm.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/amscls/amsthm.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/amscls/amsthm.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/amscls/amsthm.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/amscls/amsthm.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/amscls/amsthm.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/amscls/amsthm.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/amscls/amsthm.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/amscls/amsthm.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/amsfonts/amssymb.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/amsfonts/amssymb.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/amsfonts/amssymb.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/amsfonts/amssymb.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/amsfonts/amssymb.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/amsfonts/amssymb.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/amsfonts/amssymb.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/amsfonts/amssymb.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/amsfonts/amssymb.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/amsfonts/amssymb.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/amsfonts/amssymb.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/amsfonts/amsfonts.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/amsfonts/amsfonts.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/amsfonts/amsfonts.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/amsfonts/amsfonts.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/amsfonts/amsfonts.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/amsfonts/amsfonts.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/amsfonts/amsfonts.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/amsfonts/amsfonts.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/amsfonts/amsfonts.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/amsfonts/amsfonts.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/amsfonts/amsfonts.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/geometry/geometry.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/geometry/geometry.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/geometry/geometry.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/geometry/geometry.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/geometry/geometry.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/geometry/geometry.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/geometry/geometry.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/geometry/geometry.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/geometry/geometry.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/geometry/geometry.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/geometry/geometry.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/graphics/keyval.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/graphics/keyval.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/graphics/keyval.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/graphics/keyval.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/graphics/keyval.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/graphics/keyval.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/graphics/keyval.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/graphics/keyval.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/graphics/keyval.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/graphics/keyval.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/graphics/keyval.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/iftex/ifvtex.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/iftex/ifvtex.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/iftex/ifvtex.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/iftex/ifvtex.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/iftex/ifvtex.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/iftex/ifvtex.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/iftex/ifvtex.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/iftex/ifvtex.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/iftex/ifvtex.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/iftex/ifvtex.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/iftex/ifvtex.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/iftex/iftex.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/iftex/iftex.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/iftex/iftex.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/iftex/iftex.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/iftex/iftex.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/iftex/iftex.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/iftex/iftex.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/iftex/iftex.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/iftex/iftex.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/iftex/iftex.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/iftex/iftex.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/soul/soul.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/soul/soul.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/soul/soul.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/soul/soul.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/soul/soul.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/soul/soul.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/soul/soul.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/soul/soul.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/soul/soul.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/soul/soul.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/soul/soul.sty +INPUT /usr/local/texlive/2021/texmf-dist/fonts/tfm/jknappen/ec/ectt1000.tfm +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/bbm-macros/bbm.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/bbm-macros/bbm.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/bbm-macros/bbm.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/bbm-macros/bbm.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/bbm-macros/bbm.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/bbm-macros/bbm.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/bbm-macros/bbm.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/bbm-macros/bbm.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/bbm-macros/bbm.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/bbm-macros/bbm.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/bbm-macros/bbm.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/cancel/cancel.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/cancel/cancel.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/cancel/cancel.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/cancel/cancel.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/cancel/cancel.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/cancel/cancel.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/cancel/cancel.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/cancel/cancel.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/cancel/cancel.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/cancel/cancel.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/cancel/cancel.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/xcolor/xcolor.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/xcolor/xcolor.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/xcolor/xcolor.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/xcolor/xcolor.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/xcolor/xcolor.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/xcolor/xcolor.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/xcolor/xcolor.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/xcolor/xcolor.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/xcolor/xcolor.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/xcolor/xcolor.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/xcolor/xcolor.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/graphics-cfg/color.cfg +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/graphics-cfg/color.cfg +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/graphics-cfg/color.cfg +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/graphics-cfg/color.cfg +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/graphics-def/pdftex.def +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/graphics-def/pdftex.def +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/graphics-def/pdftex.def +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/graphics-def/pdftex.def +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/enumitem/enumitem.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/enumitem/enumitem.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/enumitem/enumitem.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/enumitem/enumitem.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/enumitem/enumitem.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/enumitem/enumitem.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/enumitem/enumitem.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/enumitem/enumitem.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/enumitem/enumitem.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/enumitem/enumitem.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/enumitem/enumitem.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/jknapltx/mathrsfs.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/jknapltx/mathrsfs.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/jknapltx/mathrsfs.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/jknapltx/mathrsfs.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/jknapltx/mathrsfs.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/jknapltx/mathrsfs.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/jknapltx/mathrsfs.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/jknapltx/mathrsfs.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/jknapltx/mathrsfs.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/jknapltx/mathrsfs.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/jknapltx/mathrsfs.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/hyperref/hyperref.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/hyperref/hyperref.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/hyperref/hyperref.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/hyperref/hyperref.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/hyperref/hyperref.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/hyperref/hyperref.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/hyperref/hyperref.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/hyperref/hyperref.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/hyperref/hyperref.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/hyperref/hyperref.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/hyperref/hyperref.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/ltxcmds/ltxcmds.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/ltxcmds/ltxcmds.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/ltxcmds/ltxcmds.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/ltxcmds/ltxcmds.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/ltxcmds/ltxcmds.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/ltxcmds/ltxcmds.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/ltxcmds/ltxcmds.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/ltxcmds/ltxcmds.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/ltxcmds/ltxcmds.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/ltxcmds/ltxcmds.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/ltxcmds/ltxcmds.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/iftex/iftex.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/pdftexcmds/pdftexcmds.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/pdftexcmds/pdftexcmds.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/pdftexcmds/pdftexcmds.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/pdftexcmds/pdftexcmds.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/pdftexcmds/pdftexcmds.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/pdftexcmds/pdftexcmds.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/pdftexcmds/pdftexcmds.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/pdftexcmds/pdftexcmds.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/pdftexcmds/pdftexcmds.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/pdftexcmds/pdftexcmds.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/pdftexcmds/pdftexcmds.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/infwarerr/infwarerr.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/infwarerr/infwarerr.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/infwarerr/infwarerr.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/infwarerr/infwarerr.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/infwarerr/infwarerr.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/infwarerr/infwarerr.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/infwarerr/infwarerr.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/infwarerr/infwarerr.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/infwarerr/infwarerr.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/infwarerr/infwarerr.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/infwarerr/infwarerr.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/iftex/iftex.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/ltxcmds/ltxcmds.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/infwarerr/infwarerr.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/graphics/keyval.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/kvsetkeys/kvsetkeys.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/kvsetkeys/kvsetkeys.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/kvsetkeys/kvsetkeys.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/kvsetkeys/kvsetkeys.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/kvsetkeys/kvsetkeys.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/kvsetkeys/kvsetkeys.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/kvsetkeys/kvsetkeys.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/kvsetkeys/kvsetkeys.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/kvsetkeys/kvsetkeys.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/kvsetkeys/kvsetkeys.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/kvsetkeys/kvsetkeys.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/kvdefinekeys/kvdefinekeys.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/kvdefinekeys/kvdefinekeys.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/kvdefinekeys/kvdefinekeys.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/kvdefinekeys/kvdefinekeys.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/kvdefinekeys/kvdefinekeys.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/kvdefinekeys/kvdefinekeys.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/kvdefinekeys/kvdefinekeys.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/kvdefinekeys/kvdefinekeys.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/kvdefinekeys/kvdefinekeys.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/kvdefinekeys/kvdefinekeys.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/kvdefinekeys/kvdefinekeys.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/pdfescape/pdfescape.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/pdfescape/pdfescape.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/pdfescape/pdfescape.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/pdfescape/pdfescape.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/pdfescape/pdfescape.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/pdfescape/pdfescape.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/pdfescape/pdfescape.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/pdfescape/pdfescape.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/pdfescape/pdfescape.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/pdfescape/pdfescape.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/pdfescape/pdfescape.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/ltxcmds/ltxcmds.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/pdftexcmds/pdftexcmds.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/hycolor/hycolor.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/hycolor/hycolor.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/hycolor/hycolor.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/hycolor/hycolor.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/hycolor/hycolor.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/hycolor/hycolor.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/hycolor/hycolor.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/hycolor/hycolor.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/hycolor/hycolor.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/hycolor/hycolor.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/hycolor/hycolor.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/letltxmacro/letltxmacro.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/letltxmacro/letltxmacro.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/letltxmacro/letltxmacro.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/letltxmacro/letltxmacro.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/letltxmacro/letltxmacro.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/letltxmacro/letltxmacro.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/letltxmacro/letltxmacro.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/letltxmacro/letltxmacro.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/letltxmacro/letltxmacro.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/letltxmacro/letltxmacro.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/letltxmacro/letltxmacro.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/auxhook/auxhook.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/auxhook/auxhook.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/auxhook/auxhook.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/auxhook/auxhook.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/auxhook/auxhook.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/auxhook/auxhook.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/auxhook/auxhook.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/auxhook/auxhook.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/auxhook/auxhook.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/auxhook/auxhook.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/auxhook/auxhook.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/kvoptions/kvoptions.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/kvoptions/kvoptions.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/kvoptions/kvoptions.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/kvoptions/kvoptions.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/kvoptions/kvoptions.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/kvoptions/kvoptions.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/kvoptions/kvoptions.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/kvoptions/kvoptions.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/kvoptions/kvoptions.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/kvoptions/kvoptions.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/kvoptions/kvoptions.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/ltxcmds/ltxcmds.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/kvsetkeys/kvsetkeys.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/hyperref/pd1enc.def +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/hyperref/pd1enc.def +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/hyperref/pd1enc.def +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/hyperref/pd1enc.def +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/hyperref/hyperref-langpatches.def +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/hyperref/hyperref-langpatches.def +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/hyperref/hyperref-langpatches.def +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/hyperref/hyperref-langpatches.def +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/intcalc/intcalc.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/intcalc/intcalc.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/intcalc/intcalc.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/intcalc/intcalc.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/intcalc/intcalc.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/intcalc/intcalc.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/intcalc/intcalc.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/intcalc/intcalc.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/intcalc/intcalc.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/intcalc/intcalc.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/intcalc/intcalc.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/etexcmds/etexcmds.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/etexcmds/etexcmds.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/etexcmds/etexcmds.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/etexcmds/etexcmds.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/etexcmds/etexcmds.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/etexcmds/etexcmds.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/etexcmds/etexcmds.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/etexcmds/etexcmds.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/etexcmds/etexcmds.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/etexcmds/etexcmds.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/etexcmds/etexcmds.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/infwarerr/infwarerr.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/iftex/iftex.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/hyperref/puenc.def +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/hyperref/puenc.def +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/hyperref/puenc.def +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/hyperref/puenc.def +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/url/url.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/url/url.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/url/url.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/url/url.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/url/url.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/url/url.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/url/url.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/url/url.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/url/url.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/url/url.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/url/url.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/bitset/bitset.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/bitset/bitset.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/bitset/bitset.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/bitset/bitset.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/bitset/bitset.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/bitset/bitset.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/bitset/bitset.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/bitset/bitset.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/bitset/bitset.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/bitset/bitset.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/bitset/bitset.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/infwarerr/infwarerr.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/intcalc/intcalc.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/bigintcalc/bigintcalc.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/bigintcalc/bigintcalc.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/bigintcalc/bigintcalc.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/bigintcalc/bigintcalc.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/bigintcalc/bigintcalc.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/bigintcalc/bigintcalc.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/bigintcalc/bigintcalc.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/bigintcalc/bigintcalc.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/bigintcalc/bigintcalc.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/bigintcalc/bigintcalc.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/bigintcalc/bigintcalc.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/pdftexcmds/pdftexcmds.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/atbegshi/atbegshi.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/atbegshi/atbegshi.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/atbegshi/atbegshi.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/base/atbegshi-ltx.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/atbegshi/atbegshi.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/atbegshi/atbegshi.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/base/atbegshi-ltx.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/atbegshi/atbegshi.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/base/atbegshi-ltx.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/base/atbegshi-ltx.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/atbegshi/atbegshi.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/atbegshi/atbegshi.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/base/atbegshi-ltx.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/base/atbegshi-ltx.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/atbegshi/atbegshi.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/base/atbegshi-ltx.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/hyperref/hpdftex.def +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/hyperref/hpdftex.def +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/hyperref/hpdftex.def +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/hyperref/hpdftex.def +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/atveryend/atveryend.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/atveryend/atveryend.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/atveryend/atveryend.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/base/atveryend-ltx.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/atveryend/atveryend.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/atveryend/atveryend.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/base/atveryend-ltx.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/atveryend/atveryend.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/base/atveryend-ltx.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/base/atveryend-ltx.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/atveryend/atveryend.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/atveryend/atveryend.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/base/atveryend-ltx.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/base/atveryend-ltx.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/atveryend/atveryend.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/base/atveryend-ltx.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/rerunfilecheck/rerunfilecheck.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/rerunfilecheck/rerunfilecheck.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/rerunfilecheck/rerunfilecheck.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/rerunfilecheck/rerunfilecheck.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/rerunfilecheck/rerunfilecheck.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/rerunfilecheck/rerunfilecheck.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/rerunfilecheck/rerunfilecheck.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/rerunfilecheck/rerunfilecheck.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/rerunfilecheck/rerunfilecheck.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/rerunfilecheck/rerunfilecheck.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/rerunfilecheck/rerunfilecheck.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/kvoptions/kvoptions.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/infwarerr/infwarerr.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/pdftexcmds/pdftexcmds.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/atveryend/atveryend.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/uniquecounter/uniquecounter.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/uniquecounter/uniquecounter.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/uniquecounter/uniquecounter.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/uniquecounter/uniquecounter.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/uniquecounter/uniquecounter.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/uniquecounter/uniquecounter.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/uniquecounter/uniquecounter.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/uniquecounter/uniquecounter.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/uniquecounter/uniquecounter.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/uniquecounter/uniquecounter.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/uniquecounter/uniquecounter.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/bigintcalc/bigintcalc.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/infwarerr/infwarerr.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/cleveref/cleveref.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/cleveref/cleveref.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/cleveref/cleveref.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/cleveref/cleveref.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/cleveref/cleveref.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/cleveref/cleveref.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/cleveref/cleveref.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/cleveref/cleveref.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/cleveref/cleveref.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/cleveref/cleveref.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/cleveref/cleveref.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/natbib/natbib.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/natbib/natbib.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/natbib/natbib.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/natbib/natbib.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/natbib/natbib.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/natbib/natbib.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/natbib/natbib.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/natbib/natbib.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/natbib/natbib.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/natbib/natbib.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/natbib/natbib.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/l3backend/l3backend-pdftex.def +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/l3backend/l3backend-pdftex.def +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/l3backend/l3backend-pdftex.def +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/l3backend/l3backend-pdftex.def +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/l3backend/l3backend-pdftex.def +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/l3backend/l3backend-pdftex.def +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/l3backend/l3backend-pdftex.def +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/l3backend/l3backend-pdftex.def +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/l3backend/l3backend-pdftex.def +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/l3backend/l3backend-pdftex.def +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/l3backend/l3backend-pdftex.def +INPUT ./Dissertation.aux +INPUT Dissertation.aux +INPUT Dissertation.aux +OUTPUT Dissertation.aux +INPUT /usr/local/texlive/2021/texmf-dist/tex/context/base/mkii/supp-pdf.mkii +INPUT /usr/local/texlive/2021/texmf-dist/tex/context/base/mkii/supp-pdf.mkii +INPUT /usr/local/texlive/2021/texmf-dist/tex/context/base/mkii/supp-pdf.mkii +INPUT /usr/local/texlive/2021/texmf-dist/tex/context/base/mkii/supp-pdf.mkii +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/hyperref/nameref.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/hyperref/nameref.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/hyperref/nameref.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/hyperref/nameref.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/hyperref/nameref.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/hyperref/nameref.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/hyperref/nameref.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/hyperref/nameref.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/hyperref/nameref.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/hyperref/nameref.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/hyperref/nameref.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/refcount/refcount.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/refcount/refcount.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/refcount/refcount.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/refcount/refcount.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/refcount/refcount.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/refcount/refcount.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/refcount/refcount.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/refcount/refcount.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/refcount/refcount.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/refcount/refcount.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/refcount/refcount.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/ltxcmds/ltxcmds.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/infwarerr/infwarerr.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/gettitlestring/gettitlestring.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/gettitlestring/gettitlestring.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/gettitlestring/gettitlestring.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/gettitlestring/gettitlestring.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/gettitlestring/gettitlestring.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/gettitlestring/gettitlestring.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/gettitlestring/gettitlestring.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/gettitlestring/gettitlestring.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/gettitlestring/gettitlestring.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/gettitlestring/gettitlestring.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/gettitlestring/gettitlestring.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/kvoptions/kvoptions.sty +INPUT /usr/local/texlive/2021/texmf-dist/tex/generic/ltxcmds/ltxcmds.sty +INPUT ./Dissertation.out +INPUT Dissertation.out +INPUT ./Dissertation.out +INPUT Dissertation.out +INPUT ./Dissertation.out +INPUT Dissertation.out +INPUT ./Dissertation.out +INPUT Dissertation.out +OUTPUT Dissertation.pdf +INPUT ./Dissertation.out +INPUT ./Dissertation.out +OUTPUT Dissertation.out +INPUT /usr/local/texlive/2021/texmf-dist/fonts/tfm/public/cm/cmr17.tfm +INPUT /usr/local/texlive/2021/texmf-dist/fonts/tfm/public/cm/cmr12.tfm +INPUT /usr/local/texlive/2021/texmf-dist/fonts/tfm/public/cm/cmr8.tfm +INPUT /usr/local/texlive/2021/texmf-dist/fonts/tfm/public/cm/cmr6.tfm +INPUT /usr/local/texlive/2021/texmf-dist/fonts/tfm/public/cm/cmmi12.tfm +INPUT /usr/local/texlive/2021/texmf-dist/fonts/tfm/public/cm/cmmi8.tfm +INPUT /usr/local/texlive/2021/texmf-dist/fonts/tfm/public/cm/cmmi6.tfm +INPUT /usr/local/texlive/2021/texmf-dist/fonts/tfm/public/cm/cmsy10.tfm +INPUT /usr/local/texlive/2021/texmf-dist/fonts/tfm/public/cm/cmsy8.tfm +INPUT /usr/local/texlive/2021/texmf-dist/fonts/tfm/public/cm/cmsy6.tfm +INPUT /usr/local/texlive/2021/texmf-dist/fonts/tfm/public/cm/cmex10.tfm +INPUT /usr/local/texlive/2021/texmf-dist/fonts/tfm/public/amsfonts/cmextra/cmex8.tfm +INPUT /usr/local/texlive/2021/texmf-dist/fonts/tfm/public/amsfonts/cmextra/cmex7.tfm +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/amsfonts/umsa.fd +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/amsfonts/umsa.fd +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/amsfonts/umsa.fd +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/amsfonts/umsa.fd +INPUT /usr/local/texlive/2021/texmf-dist/fonts/tfm/public/amsfonts/symbols/msam10.tfm +INPUT /usr/local/texlive/2021/texmf-dist/fonts/tfm/public/amsfonts/symbols/msam10.tfm +INPUT /usr/local/texlive/2021/texmf-dist/fonts/tfm/public/amsfonts/symbols/msam7.tfm +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/amsfonts/umsb.fd +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/amsfonts/umsb.fd +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/amsfonts/umsb.fd +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/amsfonts/umsb.fd +INPUT /usr/local/texlive/2021/texmf-dist/fonts/tfm/public/amsfonts/symbols/msbm10.tfm +INPUT /usr/local/texlive/2021/texmf-dist/fonts/tfm/public/amsfonts/symbols/msbm10.tfm +INPUT /usr/local/texlive/2021/texmf-dist/fonts/tfm/public/amsfonts/symbols/msbm7.tfm +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/jknapltx/ursfs.fd +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/jknapltx/ursfs.fd +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/jknapltx/ursfs.fd +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/jknapltx/ursfs.fd +INPUT /usr/local/texlive/2021/texmf-dist/fonts/tfm/public/rsfs/rsfs10.tfm +INPUT /usr/local/texlive/2021/texmf-dist/fonts/tfm/public/rsfs/rsfs10.tfm +INPUT /usr/local/texlive/2021/texmf-dist/fonts/tfm/public/rsfs/rsfs5.tfm +INPUT /usr/local/texlive/2021/texmf-var/fonts/map/pdftex/updmap/pdftex.map +INPUT /usr/local/texlive/2021/texmf-dist/fonts/tfm/public/cm/cmbx10.tfm +INPUT /usr/local/texlive/2021/texmf-dist/fonts/tfm/public/cm/cmmi10.tfm +INPUT /usr/local/texlive/2021/texmf-dist/fonts/tfm/public/cm/cmsy10.tfm +INPUT /usr/local/texlive/2021/texmf-dist/fonts/tfm/public/cm/cmex10.tfm +INPUT /usr/local/texlive/2021/texmf-dist/fonts/tfm/public/amsfonts/symbols/msam10.tfm +INPUT /usr/local/texlive/2021/texmf-dist/fonts/tfm/public/amsfonts/symbols/msbm10.tfm +INPUT /usr/local/texlive/2021/texmf-dist/fonts/tfm/public/rsfs/rsfs10.tfm +INPUT /usr/local/texlive/2021/texmf-dist/fonts/tfm/public/cm/cmr17.tfm +INPUT /usr/local/texlive/2021/texmf-dist/fonts/tfm/public/cm/cmbx12.tfm +INPUT ./Dissertation.toc +INPUT Dissertation.toc +INPUT Dissertation.toc +OUTPUT Dissertation.toc +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/amsfonts/ueuf.fd +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/amsfonts/ueuf.fd +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/amsfonts/ueuf.fd +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/amsfonts/ueuf.fd +INPUT /usr/local/texlive/2021/texmf-dist/fonts/tfm/public/amsfonts/euler/eufm10.tfm +INPUT /usr/local/texlive/2021/texmf-dist/fonts/tfm/public/amsfonts/euler/eufm10.tfm +INPUT /usr/local/texlive/2021/texmf-dist/fonts/tfm/public/amsfonts/euler/eufm7.tfm +INPUT /usr/local/texlive/2021/texmf-dist/fonts/tfm/public/cm/cmr17.tfm +INPUT /usr/local/texlive/2021/texmf-dist/fonts/tfm/public/cm/cmbx12.tfm +INPUT /usr/local/texlive/2021/texmf-dist/fonts/tfm/public/cm/cmr12.tfm +INPUT /usr/local/texlive/2021/texmf-dist/fonts/tfm/public/cm/cmbx12.tfm +INPUT /usr/local/texlive/2021/texmf-dist/fonts/tfm/public/cm/cmti10.tfm +INPUT /usr/local/texlive/2021/texmf-dist/fonts/tfm/public/cm/cmbxti10.tfm +INPUT /usr/local/texlive/2021/texmf-dist/fonts/tfm/public/cm/cmti8.tfm +INPUT /usr/local/texlive/2021/texmf-dist/fonts/tfm/public/cm/cmti7.tfm +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/boondox/uboondox-ds.fd +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/boondox/uboondox-ds.fd +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/boondox/uboondox-ds.fd +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/boondox/uboondox-ds.fd +INPUT /usr/local/texlive/2021/texmf-dist/fonts/tfm/public/boondox/BOONDOX-r-ds.tfm +INPUT /usr/local/texlive/2021/texmf-dist/fonts/tfm/public/boondox/BOONDOX-r-ds.tfm +INPUT /usr/local/texlive/2021/texmf-dist/fonts/tfm/public/boondox/BOONDOX-r-ds.tfm +INPUT /usr/local/texlive/2021/texmf-dist/fonts/vf/public/boondox/BOONDOX-r-ds.vf +INPUT /usr/local/texlive/2021/texmf-dist/fonts/tfm/public/boondox/zxxrl7z.tfm +INPUT /usr/local/texlive/2021/texmf-dist/fonts/tfm/public/cm/cmmi12.tfm +INPUT /usr/local/texlive/2021/texmf-dist/fonts/tfm/public/cm/cmmi12.tfm +INPUT /usr/local/texlive/2021/texmf-dist/fonts/tfm/public/cm/cmmi12.tfm +INPUT /usr/local/texlive/2021/texmf-dist/fonts/tfm/public/cm/cmsy10.tfm +INPUT /usr/local/texlive/2021/texmf-dist/fonts/tfm/public/cm/cmsy10.tfm +INPUT /usr/local/texlive/2021/texmf-dist/fonts/tfm/public/cm/cmsy10.tfm +INPUT /usr/local/texlive/2021/texmf-dist/fonts/tfm/public/cm/cmex10.tfm +INPUT /usr/local/texlive/2021/texmf-dist/fonts/tfm/public/cm/cmex10.tfm +INPUT /usr/local/texlive/2021/texmf-dist/fonts/tfm/public/cm/cmex10.tfm +INPUT /usr/local/texlive/2021/texmf-dist/fonts/tfm/public/amsfonts/symbols/msam10.tfm +INPUT /usr/local/texlive/2021/texmf-dist/fonts/tfm/public/amsfonts/symbols/msam10.tfm +INPUT /usr/local/texlive/2021/texmf-dist/fonts/tfm/public/amsfonts/symbols/msam10.tfm +INPUT /usr/local/texlive/2021/texmf-dist/fonts/tfm/public/amsfonts/symbols/msbm10.tfm +INPUT /usr/local/texlive/2021/texmf-dist/fonts/tfm/public/amsfonts/symbols/msbm10.tfm +INPUT /usr/local/texlive/2021/texmf-dist/fonts/tfm/public/amsfonts/symbols/msbm10.tfm +INPUT /usr/local/texlive/2021/texmf-dist/fonts/tfm/public/amsfonts/euler/eufm10.tfm +INPUT /usr/local/texlive/2021/texmf-dist/fonts/tfm/public/amsfonts/euler/eufm10.tfm +INPUT /usr/local/texlive/2021/texmf-dist/fonts/tfm/public/amsfonts/euler/eufm10.tfm +INPUT /usr/local/texlive/2021/texmf-dist/fonts/tfm/public/rsfs/rsfs10.tfm +INPUT /usr/local/texlive/2021/texmf-dist/fonts/tfm/public/rsfs/rsfs10.tfm +INPUT /usr/local/texlive/2021/texmf-dist/fonts/tfm/public/rsfs/rsfs10.tfm +INPUT /usr/local/texlive/2021/texmf-dist/fonts/tfm/public/boondox/BOONDOX-r-ds.tfm +INPUT /usr/local/texlive/2021/texmf-dist/fonts/tfm/public/boondox/BOONDOX-r-ds.tfm +INPUT /usr/local/texlive/2021/texmf-dist/fonts/tfm/public/boondox/BOONDOX-r-ds.tfm +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/bbm-macros/ubbm.fd +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/bbm-macros/ubbm.fd +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/bbm-macros/ubbm.fd +INPUT /usr/local/texlive/2021/texmf-dist/tex/latex/bbm-macros/ubbm.fd +INPUT /usr/local/texlive/2021/texmf-dist/fonts/tfm/public/bbm/bbm10.tfm +INPUT /usr/local/texlive/2021/texmf-dist/fonts/tfm/public/bbm/bbm8.tfm +INPUT /usr/local/texlive/2021/texmf-dist/fonts/tfm/public/bbm/bbm6.tfm +INPUT ./Dissertation.bbl +INPUT Dissertation.bbl +INPUT ./Dissertation.bbl +INPUT Dissertation.bbl +INPUT Dissertation.aux +INPUT ./Dissertation.out +INPUT ./Dissertation.out +INPUT /Users/shakilrafi/Library/texlive/2021/texmf-var/fonts/pk/ljfour/public/bbm/bbm10.657pk +INPUT /usr/local/texlive/2021/texmf-dist/fonts/type1/public/amsfonts/cm/cmbx10.pfb +INPUT /usr/local/texlive/2021/texmf-dist/fonts/type1/public/amsfonts/cm/cmbx12.pfb +INPUT /usr/local/texlive/2021/texmf-dist/fonts/type1/public/amsfonts/cm/cmbxti10.pfb +INPUT /usr/local/texlive/2021/texmf-dist/fonts/type1/public/amsfonts/cm/cmex10.pfb +INPUT /usr/local/texlive/2021/texmf-dist/fonts/type1/public/amsfonts/cm/cmmi10.pfb +INPUT /usr/local/texlive/2021/texmf-dist/fonts/type1/public/amsfonts/cm/cmmi12.pfb +INPUT /usr/local/texlive/2021/texmf-dist/fonts/type1/public/amsfonts/cm/cmmi6.pfb +INPUT /usr/local/texlive/2021/texmf-dist/fonts/type1/public/amsfonts/cm/cmmi8.pfb +INPUT /usr/local/texlive/2021/texmf-dist/fonts/type1/public/amsfonts/cm/cmr10.pfb +INPUT /usr/local/texlive/2021/texmf-dist/fonts/type1/public/amsfonts/cm/cmr12.pfb +INPUT /usr/local/texlive/2021/texmf-dist/fonts/type1/public/amsfonts/cm/cmr17.pfb +INPUT /usr/local/texlive/2021/texmf-dist/fonts/type1/public/amsfonts/cm/cmr6.pfb +INPUT /usr/local/texlive/2021/texmf-dist/fonts/type1/public/amsfonts/cm/cmr8.pfb +INPUT /usr/local/texlive/2021/texmf-dist/fonts/type1/public/amsfonts/cm/cmsy10.pfb +INPUT /usr/local/texlive/2021/texmf-dist/fonts/type1/public/amsfonts/cm/cmsy8.pfb +INPUT /usr/local/texlive/2021/texmf-dist/fonts/type1/public/amsfonts/cm/cmti10.pfb +INPUT /usr/local/texlive/2021/texmf-dist/fonts/type1/public/amsfonts/euler/eufm10.pfb +INPUT /usr/local/texlive/2021/texmf-dist/fonts/type1/public/amsfonts/euler/eufm7.pfb +INPUT /usr/local/texlive/2021/texmf-dist/fonts/type1/public/amsfonts/latxfont/line10.pfb +INPUT /usr/local/texlive/2021/texmf-dist/fonts/type1/public/amsfonts/symbols/msbm10.pfb +INPUT /usr/local/texlive/2021/texmf-dist/fonts/type1/public/boondox/zxxrl8a.pfb diff --git a/Dissertation_unzipped/Dissertation.log b/Dissertation_unzipped/Dissertation.log new file mode 100644 index 0000000..25d682c --- /dev/null +++ b/Dissertation_unzipped/Dissertation.log @@ -0,0 +1,900 @@ +This is pdfTeX, Version 3.141592653-2.6-1.40.22 (TeX Live 2021) (preloaded format=pdflatex 2022.3.24) 3 APR 2023 17:37 +entering extended mode + restricted \write18 enabled. + %&-line parsing enabled. +**Dissertation.tex +(./Dissertation.tex +LaTeX2e <2020-10-01> patch level 4 +L3 programming layer <2021-02-18> +(/usr/local/texlive/2021/texmf-dist/tex/latex/base/report.cls +Document Class: report 2020/04/10 v1.4m Standard LaTeX document class +(/usr/local/texlive/2021/texmf-dist/tex/latex/base/size11.clo +File: size11.clo 2020/04/10 v1.4m Standard LaTeX file (size option) +) +\c@part=\count179 +\c@chapter=\count180 +\c@section=\count181 +\c@subsection=\count182 +\c@subsubsection=\count183 +\c@paragraph=\count184 +\c@subparagraph=\count185 +\c@figure=\count186 +\c@table=\count187 +\abovecaptionskip=\skip47 +\belowcaptionskip=\skip48 +\bibindent=\dimen138 +) +(/usr/local/texlive/2021/texmf-dist/tex/latex/setspace/setspace.sty +Package: setspace 2011/12/19 v6.7a set line spacing +) +(/usr/local/texlive/2021/texmf-dist/tex/latex/appendix/appendix.sty +Package: appendix 2020/02/08 v1.2c extra appendix facilities +\c@@pps=\count188 +\c@@ppsavesec=\count189 +\c@@ppsaveapp=\count190 +) +(/usr/local/texlive/2021/texmf-dist/tex/latex/amsmath/amsmath.sty +Package: amsmath 2020/09/23 v2.17i AMS math features +\@mathmargin=\skip49 + +For additional information on amsmath, use the `?' option. +(/usr/local/texlive/2021/texmf-dist/tex/latex/amsmath/amstext.sty +Package: amstext 2000/06/29 v2.01 AMS text + +(/usr/local/texlive/2021/texmf-dist/tex/latex/amsmath/amsgen.sty +File: amsgen.sty 1999/11/30 v2.0 generic functions +\@emptytoks=\toks15 +\ex@=\dimen139 +)) +(/usr/local/texlive/2021/texmf-dist/tex/latex/amsmath/amsbsy.sty +Package: amsbsy 1999/11/29 v1.2d Bold Symbols +\pmbraise@=\dimen140 +) +(/usr/local/texlive/2021/texmf-dist/tex/latex/amsmath/amsopn.sty +Package: amsopn 2016/03/08 v2.02 operator names +) +\inf@bad=\count191 +LaTeX Info: Redefining \frac on input line 234. +\uproot@=\count192 +\leftroot@=\count193 +LaTeX Info: Redefining \overline on input line 399. +\classnum@=\count194 +\DOTSCASE@=\count195 +LaTeX Info: Redefining \ldots on input line 496. +LaTeX Info: Redefining \dots on input line 499. +LaTeX Info: Redefining \cdots on input line 620. +\Mathstrutbox@=\box47 +\strutbox@=\box48 +\big@size=\dimen141 +LaTeX Font Info: Redeclaring font encoding OML on input line 743. +LaTeX Font Info: Redeclaring font encoding OMS on input line 744. +\macc@depth=\count196 +\c@MaxMatrixCols=\count197 +\dotsspace@=\muskip16 +\c@parentequation=\count198 +\dspbrk@lvl=\count199 +\tag@help=\toks16 +\row@=\count266 +\column@=\count267 +\maxfields@=\count268 +\andhelp@=\toks17 +\eqnshift@=\dimen142 +\alignsep@=\dimen143 +\tagshift@=\dimen144 +\tagwidth@=\dimen145 +\totwidth@=\dimen146 +\lineht@=\dimen147 +\@envbody=\toks18 +\multlinegap=\skip50 +\multlinetaggap=\skip51 +\mathdisplay@stack=\toks19 +LaTeX Info: Redefining \[ on input line 2923. +LaTeX Info: Redefining \] on input line 2924. +) +(/usr/local/texlive/2021/texmf-dist/tex/latex/amscls/amsthm.sty +Package: amsthm 2020/05/29 v2.20.6 +\thm@style=\toks20 +\thm@bodyfont=\toks21 +\thm@headfont=\toks22 +\thm@notefont=\toks23 +\thm@headpunct=\toks24 +\thm@preskip=\skip52 +\thm@postskip=\skip53 +\thm@headsep=\skip54 +\dth@everypar=\toks25 +) +(/usr/local/texlive/2021/texmf-dist/tex/latex/amsfonts/amssymb.sty +Package: amssymb 2013/01/14 v3.01 AMS font symbols + +(/usr/local/texlive/2021/texmf-dist/tex/latex/amsfonts/amsfonts.sty +Package: amsfonts 2013/01/14 v3.01 Basic AMSFonts support +\symAMSa=\mathgroup4 +\symAMSb=\mathgroup5 +LaTeX Font Info: Redeclaring math symbol \hbar on input line 98. +LaTeX Font Info: Overwriting math alphabet `\mathfrak' in version `bold' +(Font) U/euf/m/n --> U/euf/b/n on input line 106. +)) +(/usr/local/texlive/2021/texmf-dist/tex/latex/geometry/geometry.sty +Package: geometry 2020/01/02 v5.9 Page Geometry + +(/usr/local/texlive/2021/texmf-dist/tex/latex/graphics/keyval.sty +Package: keyval 2014/10/28 v1.15 key=value parser (DPC) +\KV@toks@=\toks26 +) +(/usr/local/texlive/2021/texmf-dist/tex/generic/iftex/ifvtex.sty +Package: ifvtex 2019/10/25 v1.7 ifvtex legacy package. Use iftex instead. + +(/usr/local/texlive/2021/texmf-dist/tex/generic/iftex/iftex.sty +Package: iftex 2020/03/06 v1.0d TeX engine tests +)) +\Gm@cnth=\count269 +\Gm@cntv=\count270 +\c@Gm@tempcnt=\count271 +\Gm@bindingoffset=\dimen148 +\Gm@wd@mp=\dimen149 +\Gm@odd@mp=\dimen150 +\Gm@even@mp=\dimen151 +\Gm@layoutwidth=\dimen152 +\Gm@layoutheight=\dimen153 +\Gm@layouthoffset=\dimen154 +\Gm@layoutvoffset=\dimen155 +\Gm@dimlist=\toks27 +) +(/usr/local/texlive/2021/texmf-dist/tex/generic/soul/soul.sty +Package: soul 2003/11/17 v2.4 letterspacing/underlining (mf) +\SOUL@word=\toks28 +\SOUL@lasttoken=\toks29 +\SOUL@cmds=\toks30 +\SOUL@buffer=\toks31 +\SOUL@token=\toks32 +\SOUL@spaceskip=\skip55 +\SOUL@ttwidth=\dimen156 +\SOUL@uldp=\dimen157 +\SOUL@ulht=\dimen158 +) +(/usr/local/texlive/2021/texmf-dist/tex/latex/bbm-macros/bbm.sty +Package: bbm 1999/03/15 V 1.2 provides fonts for set symbols - TH +LaTeX Font Info: Overwriting math alphabet `\mathbbm' in version `bold' +(Font) U/bbm/m/n --> U/bbm/bx/n on input line 33. +LaTeX Font Info: Overwriting math alphabet `\mathbbmss' in version `bold' +(Font) U/bbmss/m/n --> U/bbmss/bx/n on input line 35. +) +(/usr/local/texlive/2021/texmf-dist/tex/latex/cancel/cancel.sty +Package: cancel 2013/04/12 v2.2 Cancel math terms +) +(/usr/local/texlive/2021/texmf-dist/tex/latex/xcolor/xcolor.sty +Package: xcolor 2016/05/11 v2.12 LaTeX color extensions (UK) + +(/usr/local/texlive/2021/texmf-dist/tex/latex/graphics-cfg/color.cfg +File: color.cfg 2016/01/02 v1.6 sample color configuration +) +Package xcolor Info: Driver file: pdftex.def on input line 225. + +(/usr/local/texlive/2021/texmf-dist/tex/latex/graphics-def/pdftex.def +File: pdftex.def 2020/10/05 v1.2a Graphics/color driver for pdftex +) +Package xcolor Info: Model `cmy' substituted by `cmy0' on input line 1348. +Package xcolor Info: Model `hsb' substituted by `rgb' on input line 1352. +Package xcolor Info: Model `RGB' extended on input line 1364. +Package xcolor Info: Model `HTML' substituted by `rgb' on input line 1366. +Package xcolor Info: Model `Hsb' substituted by `hsb' on input line 1367. +Package xcolor Info: Model `tHsb' substituted by `hsb' on input line 1368. +Package xcolor Info: Model `HSB' substituted by `hsb' on input line 1369. +Package xcolor Info: Model `Gray' substituted by `gray' on input line 1370. +Package xcolor Info: Model `wave' substituted by `hsb' on input line 1371. +) +(/usr/local/texlive/2021/texmf-dist/tex/latex/enumitem/enumitem.sty +Package: enumitem 2019/06/20 v3.9 Customized lists +\labelindent=\skip56 +\enit@outerparindent=\dimen159 +\enit@toks=\toks33 +\enit@inbox=\box49 +\enit@count@id=\count272 +\enitdp@description=\count273 +) +(/usr/local/texlive/2021/texmf-dist/tex/latex/jknapltx/mathrsfs.sty +Package: mathrsfs 1996/01/01 Math RSFS package v1.0 (jk) +\symrsfs=\mathgroup6 +) +(/usr/local/texlive/2021/texmf-dist/tex/latex/hyperref/hyperref.sty +Package: hyperref 2021-02-27 v7.00k Hypertext links for LaTeX + +(/usr/local/texlive/2021/texmf-dist/tex/generic/ltxcmds/ltxcmds.sty +Package: ltxcmds 2020-05-10 v1.25 LaTeX kernel commands for general use (HO) +) +(/usr/local/texlive/2021/texmf-dist/tex/generic/pdftexcmds/pdftexcmds.sty +Package: pdftexcmds 2020-06-27 v0.33 Utility functions of pdfTeX for LuaTeX (HO +) + +(/usr/local/texlive/2021/texmf-dist/tex/generic/infwarerr/infwarerr.sty +Package: infwarerr 2019/12/03 v1.5 Providing info/warning/error messages (HO) +) +Package pdftexcmds Info: \pdf@primitive is available. +Package pdftexcmds Info: \pdf@ifprimitive is available. +Package pdftexcmds Info: \pdfdraftmode found. +) +(/usr/local/texlive/2021/texmf-dist/tex/generic/kvsetkeys/kvsetkeys.sty +Package: kvsetkeys 2019/12/15 v1.18 Key value parser (HO) +) +(/usr/local/texlive/2021/texmf-dist/tex/generic/kvdefinekeys/kvdefinekeys.sty +Package: kvdefinekeys 2019-12-19 v1.6 Define keys (HO) +) +(/usr/local/texlive/2021/texmf-dist/tex/generic/pdfescape/pdfescape.sty +Package: pdfescape 2019/12/09 v1.15 Implements pdfTeX's escape features (HO) +) +(/usr/local/texlive/2021/texmf-dist/tex/latex/hycolor/hycolor.sty +Package: hycolor 2020-01-27 v1.10 Color options for hyperref/bookmark (HO) +) +(/usr/local/texlive/2021/texmf-dist/tex/latex/letltxmacro/letltxmacro.sty +Package: letltxmacro 2019/12/03 v1.6 Let assignment for LaTeX macros (HO) +) +(/usr/local/texlive/2021/texmf-dist/tex/latex/auxhook/auxhook.sty +Package: auxhook 2019-12-17 v1.6 Hooks for auxiliary files (HO) +) +(/usr/local/texlive/2021/texmf-dist/tex/latex/kvoptions/kvoptions.sty +Package: kvoptions 2020-10-07 v3.14 Key value format for package options (HO) +) +\@linkdim=\dimen160 +\Hy@linkcounter=\count274 +\Hy@pagecounter=\count275 + +(/usr/local/texlive/2021/texmf-dist/tex/latex/hyperref/pd1enc.def +File: pd1enc.def 2021-02-27 v7.00k Hyperref: PDFDocEncoding definition (HO) +Now handling font encoding PD1 ... +... no UTF-8 mapping file for font encoding PD1 +) +(/usr/local/texlive/2021/texmf-dist/tex/latex/hyperref/hyperref-langpatches.def +File: hyperref-langpatches.def 2021-02-27 v7.00k Hyperref: patches for babel la +nguages +) (/usr/local/texlive/2021/texmf-dist/tex/generic/intcalc/intcalc.sty +Package: intcalc 2019/12/15 v1.3 Expandable calculations with integers (HO) +) +(/usr/local/texlive/2021/texmf-dist/tex/generic/etexcmds/etexcmds.sty +Package: etexcmds 2019/12/15 v1.7 Avoid name clashes with e-TeX commands (HO) +) +\Hy@SavedSpaceFactor=\count276 + +(/usr/local/texlive/2021/texmf-dist/tex/latex/hyperref/puenc.def +File: puenc.def 2021-02-27 v7.00k Hyperref: PDF Unicode definition (HO) +Now handling font encoding PU ... +... no UTF-8 mapping file for font encoding PU +) +Package hyperref Info: Hyper figures OFF on input line 4192. +Package hyperref Info: Link nesting OFF on input line 4197. +Package hyperref Info: Hyper index ON on input line 4200. +Package hyperref Info: Plain pages OFF on input line 4207. +Package hyperref Info: Backreferencing OFF on input line 4212. +Package hyperref Info: Implicit mode ON; LaTeX internals redefined. +Package hyperref Info: Bookmarks ON on input line 4445. +\c@Hy@tempcnt=\count277 + +(/usr/local/texlive/2021/texmf-dist/tex/latex/url/url.sty +\Urlmuskip=\muskip17 +Package: url 2013/09/16 ver 3.4 Verb mode for urls, etc. +) +LaTeX Info: Redefining \url on input line 4804. +\XeTeXLinkMargin=\dimen161 + +(/usr/local/texlive/2021/texmf-dist/tex/generic/bitset/bitset.sty +Package: bitset 2019/12/09 v1.3 Handle bit-vector datatype (HO) + +(/usr/local/texlive/2021/texmf-dist/tex/generic/bigintcalc/bigintcalc.sty +Package: bigintcalc 2019/12/15 v1.5 Expandable calculations on big integers (HO +) +)) +\Fld@menulength=\count278 +\Field@Width=\dimen162 +\Fld@charsize=\dimen163 +Package hyperref Info: Hyper figures OFF on input line 6075. +Package hyperref Info: Link nesting OFF on input line 6080. +Package hyperref Info: Hyper index ON on input line 6083. +Package hyperref Info: backreferencing OFF on input line 6090. +Package hyperref Info: Link coloring OFF on input line 6095. +Package hyperref Info: Link coloring with OCG OFF on input line 6100. +Package hyperref Info: PDF/A mode OFF on input line 6105. +LaTeX Info: Redefining \ref on input line 6145. +LaTeX Info: Redefining \pageref on input line 6149. + +(/usr/local/texlive/2021/texmf-dist/tex/latex/base/atbegshi-ltx.sty +Package: atbegshi-ltx 2020/08/17 v1.0a Emulation of the original atbegshi packa +ge +with kernel methods +) +\Hy@abspage=\count279 +\c@Item=\count280 +\c@Hfootnote=\count281 +) +Package hyperref Info: Driver (autodetected): hpdftex. + +(/usr/local/texlive/2021/texmf-dist/tex/latex/hyperref/hpdftex.def +File: hpdftex.def 2021-02-27 v7.00k Hyperref driver for pdfTeX + +(/usr/local/texlive/2021/texmf-dist/tex/latex/base/atveryend-ltx.sty +Package: atveryend-ltx 2020/08/19 v1.0a Emulation of the original atvery packag +e +with kernel methods +) +\Fld@listcount=\count282 +\c@bookmark@seq@number=\count283 + +(/usr/local/texlive/2021/texmf-dist/tex/latex/rerunfilecheck/rerunfilecheck.sty +Package: rerunfilecheck 2019/12/05 v1.9 Rerun checks for auxiliary files (HO) + +(/usr/local/texlive/2021/texmf-dist/tex/generic/uniquecounter/uniquecounter.sty +Package: uniquecounter 2019/12/15 v1.4 Provide unlimited unique counter (HO) +) +Package uniquecounter Info: New unique counter `rerunfilecheck' on input line 2 +86. +) +\Hy@SectionHShift=\skip57 +) (/usr/local/texlive/2021/texmf-dist/tex/latex/cleveref/cleveref.sty +Package: cleveref 2018/03/27 v0.21.4 Intelligent cross-referencing +Package cleveref Info: `hyperref' support loaded on input line 2370. +LaTeX Info: Redefining \cref on input line 2370. +LaTeX Info: Redefining \Cref on input line 2370. +LaTeX Info: Redefining \crefrange on input line 2370. +LaTeX Info: Redefining \Crefrange on input line 2370. +LaTeX Info: Redefining \cpageref on input line 2370. +LaTeX Info: Redefining \Cpageref on input line 2370. +LaTeX Info: Redefining \cpagerefrange on input line 2370. +LaTeX Info: Redefining \Cpagerefrange on input line 2370. +LaTeX Info: Redefining \labelcref on input line 2370. +LaTeX Info: Redefining \labelcpageref on input line 2370. +Package cleveref Info: `amsthm' support loaded on input line 3026. +Package cleveref Info: always capitalise cross-reference names on input line 78 +25. +Package cleveref Info: always capitalise cross-reference names on input line 78 +52. +) +(/usr/local/texlive/2021/texmf-dist/tex/latex/natbib/natbib.sty +Package: natbib 2010/09/13 8.31b (PWD, AO) +\bibhang=\skip58 +\bibsep=\skip59 +LaTeX Info: Redefining \cite on input line 694. +\c@NAT@ctr=\count284 +) +\c@theorem=\count285 +\c@corollary=\count286 + +(/usr/local/texlive/2021/texmf-dist/tex/latex/l3backend/l3backend-pdftex.def +File: l3backend-pdftex.def 2021-03-18 L3 backend support: PDF output (pdfTeX) +\l__color_backend_stack_int=\count287 +\l__pdf_internal_box=\box50 +) +(./Dissertation.aux + +LaTeX Warning: Label `(1.12)' multiply defined. + + +LaTeX Warning: Label `(1.12)@cref' multiply defined. + + +LaTeX Warning: Label `lem:1.21' multiply defined. + + +LaTeX Warning: Label `lem:1.21@cref' multiply defined. + + +LaTeX Warning: Label `limitofun' multiply defined. + + +LaTeX Warning: Label `limitofun@cref' multiply defined. + + +LaTeX Warning: Label `hessungeq0' multiply defined. + + +LaTeX Warning: Label `hessungeq0@cref' multiply defined. + +) +\openout1 = `Dissertation.aux'. + +LaTeX Font Info: Checking defaults for OML/cmm/m/it on input line 60. +LaTeX Font Info: ... okay on input line 60. +LaTeX Font Info: Checking defaults for OMS/cmsy/m/n on input line 60. +LaTeX Font Info: ... okay on input line 60. +LaTeX Font Info: Checking defaults for OT1/cmr/m/n on input line 60. +LaTeX Font Info: ... okay on input line 60. +LaTeX Font Info: Checking defaults for T1/cmr/m/n on input line 60. +LaTeX Font Info: ... okay on input line 60. +LaTeX Font Info: Checking defaults for TS1/cmr/m/n on input line 60. +LaTeX Font Info: ... okay on input line 60. +LaTeX Font Info: Checking defaults for OMX/cmex/m/n on input line 60. +LaTeX Font Info: ... okay on input line 60. +LaTeX Font Info: Checking defaults for U/cmr/m/n on input line 60. +LaTeX Font Info: ... okay on input line 60. +LaTeX Font Info: Checking defaults for PD1/pdf/m/n on input line 60. +LaTeX Font Info: ... okay on input line 60. +LaTeX Font Info: Checking defaults for PU/pdf/m/n on input line 60. +LaTeX Font Info: ... okay on input line 60. + +*geometry* driver: auto-detecting +*geometry* detected driver: pdftex +*geometry* verbose mode - [ preamble ] result: +* driver: pdftex +* paper: +* layout: +* layoutoffset:(h,v)=(0.0pt,0.0pt) +* modes: +* h-part:(L,W,R)=(72.26999pt, 469.75502pt, 72.26999pt) +* v-part:(T,H,B)=(72.26999pt, 650.43001pt, 72.26999pt) +* \paperwidth=614.295pt +* \paperheight=794.96999pt +* \textwidth=469.75502pt +* \textheight=650.43001pt +* \oddsidemargin=0.0pt +* \evensidemargin=0.0pt +* \topmargin=-37.0pt +* \headheight=12.0pt +* \headsep=25.0pt +* \topskip=11.0pt +* \footskip=30.0pt +* \marginparwidth=59.0pt +* \marginparsep=10.0pt +* \columnsep=10.0pt +* \skip\footins=10.0pt plus 4.0pt minus 2.0pt +* \hoffset=0.0pt +* \voffset=0.0pt +* \mag=1000 +* \@twocolumnfalse +* \@twosidefalse +* \@mparswitchfalse +* \@reversemarginfalse +* (1in=72.27pt=25.4mm, 1cm=28.453pt) + +(/usr/local/texlive/2021/texmf-dist/tex/context/base/mkii/supp-pdf.mkii +[Loading MPS to PDF converter (version 2006.09.02).] +\scratchcounter=\count288 +\scratchdimen=\dimen164 +\scratchbox=\box51 +\nofMPsegments=\count289 +\nofMParguments=\count290 +\everyMPshowfont=\toks34 +\MPscratchCnt=\count291 +\MPscratchDim=\dimen165 +\MPnumerator=\count292 +\makeMPintoPDFobject=\count293 +\everyMPtoPDFconversion=\toks35 +) +Package hyperref Info: Link coloring OFF on input line 60. + (/usr/local/texlive/2021/texmf-dist/tex/latex/hyperref/nameref.sty +Package: nameref 2021-04-02 v2.47 Cross-referencing by name of section + +(/usr/local/texlive/2021/texmf-dist/tex/latex/refcount/refcount.sty +Package: refcount 2019/12/15 v3.6 Data extraction from label references (HO) +) +(/usr/local/texlive/2021/texmf-dist/tex/generic/gettitlestring/gettitlestring.s +ty +Package: gettitlestring 2019/12/15 v1.6 Cleanup title references (HO) +) +\c@section@level=\count294 +) +LaTeX Info: Redefining \ref on input line 60. +LaTeX Info: Redefining \pageref on input line 60. +LaTeX Info: Redefining \nameref on input line 60. + (./Dissertation.out) (./Dissertation.out) +\@outlinefile=\write3 +\openout3 = `Dissertation.out'. + +LaTeX Font Info: Trying to load font information for U+msa on input line 62. + + +(/usr/local/texlive/2021/texmf-dist/tex/latex/amsfonts/umsa.fd +File: umsa.fd 2013/01/14 v3.01 AMS symbols A +) +LaTeX Font Info: Trying to load font information for U+msb on input line 62. + + +(/usr/local/texlive/2021/texmf-dist/tex/latex/amsfonts/umsb.fd +File: umsb.fd 2013/01/14 v3.01 AMS symbols B +) +LaTeX Font Info: Trying to load font information for U+rsfs on input line 62 +. + +(/usr/local/texlive/2021/texmf-dist/tex/latex/jknapltx/ursfs.fd +File: ursfs.fd 1998/03/24 rsfs font definition file (jk) +) [1 + +{/usr/local/texlive/2021/texmf-var/fonts/map/pdftex/updmap/pdftex.map}]pdfTeX w +arning (ext4): destination with the same identifier (name{page.1}) has been alr +eady used, duplicate ignored + + \relax +l.65 \end{abstract} + [1] (./Dissertation.toc) +\tf@toc=\write4 +\openout4 = `Dissertation.toc'. + +pdfTeX warning (ext4): destination with the same identifier (name{page.1}) has +been already used, duplicate ignored + + \relax +l.69 \newpage + [1 + +] +LaTeX Font Info: Trying to load font information for U+euf on input line 80. + + +(/usr/local/texlive/2021/texmf-dist/tex/latex/amsfonts/ueuf.fd +File: ueuf.fd 2013/01/14 v3.01 Euler Fraktur +) [2] [3] +Chapter 1. +[4 + +] [5] +Overfull \hbox (12.0844pt too wide) in paragraph at lines 182--183 +[]\OT1/cmr/m/it/10.95 A strong so-lu-tion to the stochas-tic dif-fer-en-tial eq +ua-tion ([]1.1.5[]) on prob-a-bil-ity space $\OT1/cmr/m/n/10.95 ( +\OML/cmm/m/it/10.95 ; \OMS/cmsy/m/n/10.95 F\OML/cmm/m/it/10.95 ; \U/msb/m/n/10. +95 P\OML/cmm/m/it/10.95 ; \OT1/cmr/m/n/10.95 (\U/msb/m/n/10.95 F[]\OT1/cmr/m/n/ +10.95 )[])$\OT1/cmr/m/it/10.95 , + [] + +[6] [7] [8] +LaTeX Font Info: Trying to load font information for U+BOONDOX-ds on input l +ine 291. + +(/usr/local/texlive/2021/texmf-dist/tex/latex/boondox/uboondox-ds.fd +File: uboondox-ds.fd 2011/04/26 Fontinst v1.933 font definitions for U/BOONDOX- +ds. +) [9] +Chapter 2. +[10 + +] [11] [12] [13] [14] [15] [16] [17] [18] [19] [20] [21] [22] [23] +Chapter 3. + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `math shift' on input line 749. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `math shift' on input line 749. + +[24 + +] +LaTeX Font Info: Trying to load font information for U+bbm on input line 832 +. + (/usr/local/texlive/2021/texmf-dist/tex/latex/bbm-macros/ubbm.fd +File: ubbm.fd 1999/03/15 V 1.2 Font definition for bbm font - TH +) [25] +[26] [27] [28] [29] + +LaTeX Warning: Reference `bigsum' on page 30 undefined on input line 959. + +[30] [31] [32] [33] +Overfull \hbox (0.39136pt too wide) in paragraph at lines 1215--1218 +[]\OT1/cmr/m/n/10.95 However note also that since $\OML/cmm/m/it/10.95 G[]$ \OT +1/cmr/m/n/10.95 is up-per semi-continuous, fur-ther the fact that, $\OML/cmm/m/ +it/10.95 ^^^[] \OMS/cmsy/m/n/10.95 2 []$\OT1/cmr/m/n/10.95 , + [] + + +Overfull \hbox (81.7409pt too wide) in paragraph at lines 1215--1218 +\OT1/cmr/m/n/10.95 and then $([]3\OML/cmm/m/it/10.95 :\OT1/cmr/m/n/10.95 2\OML/ +cmm/m/it/10.95 :\OT1/cmr/m/n/10.95 27[])$, and $([]3\OML/cmm/m/it/10.95 :\OT1/c +mr/m/n/10.95 2\OML/cmm/m/it/10.95 :\OT1/cmr/m/n/10.95 16[])$, im-ply for all $\ +OML/cmm/m/it/10.95 " \OMS/cmsy/m/n/10.95 2 \OT1/cmr/m/n/10.95 (0\OML/cmm/m/it/1 +0.95 ; \OMS/cmsy/m/n/10.95 1\OT1/cmr/m/n/10.95 )$ we have that: $[][] [] = + [] + +[34] [35] [36] [37] [38] [39] [40] [41] [42] +Overfull \hbox (86.18391pt too wide) in paragraph at lines 1499--1500 +\OT1/cmr/m/it/10.95 ery $\OML/cmm/m/it/10.95 r \OMS/cmsy/m/n/10.95 2 \OT1/cmr/m +/n/10.95 (0\OML/cmm/m/it/10.95 ; \OMS/cmsy/m/n/10.95 1\OT1/cmr/m/n/10.95 )$ \OT +1/cmr/m/it/10.95 sat-isfy the con-di-tion that $\OML/cmm/m/it/10.95 O[] \OMS/cm +sy/m/n/10.95 ^^R O$\OT1/cmr/m/it/10.95 , where $\OML/cmm/m/it/10.95 O[] \OT1/cm +r/m/n/10.95 = \OMS/cmsy/m/n/10.95 f\OML/cmm/m/it/10.95 x \OMS/cmsy/m/n/10.95 2 +O \OT1/cmr/m/n/10.95 : []\OMS/cmsy/m/n/10.95 g$ + [] + +[43] [44] [45] [46] [47] +Overfull \hbox (2.98135pt too wide) in paragraph at lines 1650--1651 +[]\OT1/cmr/bx/n/10.95 Corollary 3.3.1.1. []\OT1/cmr/m/it/10.95 Let $\OML/cmm/m/ +it/10.95 T \OMS/cmsy/m/n/10.95 2 \OT1/cmr/m/n/10.95 (0\OML/cmm/m/it/10.95 ; \OM +S/cmsy/m/n/10.95 1\OT1/cmr/m/n/10.95 )$\OT1/cmr/m/it/10.95 , let $[]$ be a prob +-a-bil-ity space, let $\OML/cmm/m/it/10.95 u[] \OMS/cmsy/m/n/10.95 2 \OML/cmm/m +/it/10.95 C[] []$\OT1/cmr/m/it/10.95 , + [] + +[48] [49] +! Argument of \align has an extra }. + + \par +l.1754 ...\|_F &= \| \mu(t,x) - \mu(t,y) \|_E+0} + \nonumber\\ +I've run across a `}' that doesn't seem to match anything. +For example, `\def\a#1{...}' and `\a}' would produce +this error. If you simply proceed now, the `\par' that +I've just inserted will cause me to report a runaway +argument that might be the root of the problem. But if +your `}' was spurious, just type `2' and it will go away. + +Runaway argument? + \| \mu (t,x) - \mu (t,y) \|_E+\|\sigma (t,x) - \sigma (t,y) \|_F &= \ETC. +! Paragraph ended before \align was complete. + + \par +l.1754 ...\|_F &= \| \mu(t,x) - \mu(t,y) \|_E+0} + \nonumber\\ +I suspect you've forgotten a `}', causing me to apply this +control sequence to too much text. How can we recover? +My plan is to forget the whole thing and hope for the best. + +! Missing $ inserted. + + $ +l.1754 ...\|_F &= \| \mu(t,x) - \mu(t,y) \|_E+0} + \nonumber\\ +I've inserted a begin-math/end-math symbol since I think +you left one out. Proceed, with fingers crossed. + +! Missing } inserted. + + } +l.1754 ...\|_F &= \| \mu(t,x) - \mu(t,y) \|_E+0} + \nonumber\\ +I've inserted something that you may have forgotten. +(See the above.) +With luck, this will get me unwedged. But if you +really didn't forget anything, try typing `2' now; then +my insertion and my current dilemma will both disappear. + +! Missing \endgroup inserted. + + \endgroup +l.1754 ...\|_F &= \| \mu(t,x) - \mu(t,y) \|_E+0} + \nonumber\\ +I've inserted something that you may have forgotten. +(See the above.) +With luck, this will get me unwedged. But if you +really didn't forget anything, try typing `2' now; then +my insertion and my current dilemma will both disappear. + +! Display math should end with $$. + + \@@par +l.1754 ...\|_F &= \| \mu(t,x) - \mu(t,y) \|_E+0} + \nonumber\\ +The `$' that I just saw supposedly matches a previous `$$'. +So I shall assume that you typed `$$' both times. + +! Extra }, or forgotten \endgroup. +\par ...m \@noitemerr {\@@par }\fi \else {\@@par } + \fi +l.1754 ...\|_F &= \| \mu(t,x) - \mu(t,y) \|_E+0} + \nonumber\\ +I've deleted a group-closing symbol because it seems to be +spurious, as in `$x}$'. But perhaps the } is legitimate and +you forgot something else, as in `\hbox{$x}'. In such cases +the way to recover is to insert both the forgotten and the +deleted material, e.g., by typing `I$}'. + +! Extra }, or forgotten \endgroup. + } + +l.1754 ...\|_F &= \| \mu(t,x) - \mu(t,y) \|_E+0} + \nonumber\\ +I've deleted a group-closing symbol because it seems to be +spurious, as in `$x}$'. But perhaps the } is legitimate and +you forgot something else, as in `\hbox{$x}'. In such cases +the way to recover is to insert both the forgotten and the +deleted material, e.g., by typing `I$}'. + + +! LaTeX Error: There's no line here to end. + +See the LaTeX manual or LaTeX Companion for explanation. +Type H for immediate help. + ... + +l.1755 & + = \|t\nabla_x\alpha(x) - t\nabla_x \alpha(y) \|_E} \nonumber\\ +Your command was ignored. +Type I to replace it with another command, +or to continue without it. + +! Misplaced alignment tab character &. + & + +l.1755 & + = \|t\nabla_x\alpha(x) - t\nabla_x \alpha(y) \|_E} \nonumber\\ +I can't figure out why you would want to use a tab mark +here. If you just want an ampersand, the remedy is +simple: Just type `I\&' now. But if some right brace +up above has ended a previous alignment prematurely, +you're probably due for more error messages, and you +might try typing `S' now just to see what is salvageable. + +! Missing $ inserted. + + $ +l.1755 &= \| + t\nabla_x\alpha(x) - t\nabla_x \alpha(y) \|_E} \nonumber\\ +I've inserted a begin-math/end-math symbol since I think +you left one out. Proceed, with fingers crossed. + +! Extra }, or forgotten $. +l.1755 ...a_x\alpha(x) - t\nabla_x \alpha(y) \|_E} + \nonumber\\ +I've deleted a group-closing symbol because it seems to be +spurious, as in `$x}$'. But perhaps the } is legitimate and +you forgot something else, as in `\hbox{$x}'. In such cases +the way to recover is to insert both the forgotten and the +deleted material, e.g., by typing `I$}'. + +! Misplaced alignment tab character &. + & + +l.1756 & + \leq \frac{T\|\nabla_x\alpha(x)-\nabla_x\alpha(y)\|_E}{\lp \|x\|_E ... +I can't figure out why you would want to use a tab mark +here. If you just want an ampersand, the remedy is +simple: Just type `I\&' now. But if some right brace +up above has ended a previous alignment prematurely, +you're probably due for more error messages, and you +might try typing `S' now just to see what is salvageable. + +! Misplaced alignment tab character &. + & + +l.1757 & + \leq 2T\mathfrak{B} \leq +I can't figure out why you would want to use a tab mark +here. If you just want an ampersand, the remedy is +simple: Just type `I\&' now. But if some right brace +up above has ended a previous alignment prematurely, +you're probably due for more error messages, and you +might try typing `S' now just to see what is salvageable. + +! Misplaced \cr. +\math@cr@@@ ->\cr + +l.1758 \end{align} + +I can't figure out why you would want to use a tab mark +or \cr or \span just now. If something like a right brace +up above has ended a previous alignment prematurely, +you're probably due for more error messages, and you +might try typing `S' now just to see what is salvageable. + +! Misplaced \noalign. +\math@cr@@ ... \iffalse }\fi \math@cr@@@ \noalign + {\vskip #1\relax } +l.1758 \end{align} + +I expect to see \noalign only after the \cr of +an alignment. Proceed, and I'll ignore this case. + +! Missing $ inserted. + + $ +l.1758 \end{align} + +I've inserted a begin-math/end-math symbol since I think +you left one out. Proceed, with fingers crossed. + +! Missing } inserted. + + } +l.1758 \end{align} + +I've inserted something that you may have forgotten. +(See the above.) +With luck, this will get me unwedged. But if you +really didn't forget anything, try typing `2' now; then +my insertion and my current dilemma will both disappear. + +! Extra }, or forgotten \endgroup. +\math@cr@@ ...th@cr@@@ \noalign {\vskip #1\relax } + +l.1758 \end{align} + +I've deleted a group-closing symbol because it seems to be +spurious, as in `$x}$'. But perhaps the } is legitimate and +you forgot something else, as in `\hbox{$x}'. In such cases +the way to recover is to insert both the forgotten and the +deleted material, e.g., by typing `I$}'. + +! Misplaced \noalign. +\black@ #1->\noalign + {\ifdim #1>\displaywidth \dimen@ \prevdepth \nointerlin... +l.1758 \end{align} + +I expect to see \noalign only after the \cr of +an alignment. Proceed, and I'll ignore this case. + + +Overfull \hbox (259.72743pt too wide) detected at line 1758 +[] + [] + +! Extra }, or forgotten \endgroup. +\endalign ->\math@cr \black@ \totwidth@ \egroup + \ifingather@ \restorealignst... +l.1758 \end{align} + +I've deleted a group-closing symbol because it seems to be +spurious, as in `$x}$'. But perhaps the } is legitimate and +you forgot something else, as in `\hbox{$x}'. In such cases +the way to recover is to insert both the forgotten and the +deleted material, e.g., by typing `I$}'. + +! Missing $ inserted. + + $ +l.1758 \end{align} + +I've inserted something that you may have forgotten. +(See the above.) +With luck, this will get me unwedged. But if you +really didn't forget anything, try typing `2' now; then +my insertion and my current dilemma will both disappear. + +! Display math should end with $$. + + \endgroup +l.1758 \end{align} + +The `$' that I just saw supposedly matches a previous `$$'. +So I shall assume that you typed `$$' both times. + +[50] [51] [52] (./Dissertation.bbl [53 + +]) [54] [55 + + +] [56] (./Dissertation.aux) + +LaTeX Warning: There were undefined references. + + +LaTeX Warning: There were multiply-defined labels. + +Package rerunfilecheck Info: File `Dissertation.out' has not changed. +(rerunfilecheck) Checksum: EA82F68FD5620E41892B53C13EE56636;2174. + ) +(\end occurred inside a group at level 1) + +### simple group (level 1) entered at line 91 ({) +### bottom level +Here is how much of TeX's memory you used: + 12969 strings out of 478994 + 199090 string characters out of 5858184 + 532732 words of memory out of 5000000 + 29889 multiletter control sequences out of 15000+600000 + 421865 words of font info for 102 fonts, out of 8000000 for 9000 + 1141 hyphenation exceptions out of 8191 + 71i,18n,74p,917b,628s stack positions out of 5000i,500n,10000p,200000b,80000s + +Output written on Dissertation.pdf (58 pages, 406328 bytes). +PDF statistics: + 984 PDF objects out of 1000 (max. 8388607) + 893 compressed objects within 9 object streams + 392 named destinations out of 1000 (max. 500000) + 89 words of extra memory for PDF output out of 10000 (max. 10000000) + diff --git a/Dissertation_unzipped/Dissertation.out b/Dissertation_unzipped/Dissertation.out new file mode 100644 index 0000000..f8faacd --- /dev/null +++ b/Dissertation_unzipped/Dissertation.out @@ -0,0 +1,11 @@ +\BOOKMARK [0][-]{chapter.1}{\376\377\000I\000n\000t\000r\000o\000d\000u\000c\000t\000i\000o\000n}{}% 1 +\BOOKMARK [1][-]{section.1.1}{\376\377\000N\000o\000t\000a\000t\000i\000o\000n\000\040\000a\000n\000d\000\040\000D\000e\000f\000i\000n\000i\000t\000i\000o\000n\000s}{chapter.1}% 2 +\BOOKMARK [0][-]{chapter.2}{\376\377\000B\000r\000o\000w\000n\000i\000a\000n\000\040\000M\000o\000t\000i\000o\000n\000\040\000M\000o\000n\000t\000e\000\040\000C\000a\000r\000l\000o}{}% 3 +\BOOKMARK [1][-]{section.2.1}{\376\377\000B\000r\000o\000w\000n\000i\000a\000n\000\040\000M\000o\000t\000i\000o\000n\000\040\000P\000r\000e\000l\000i\000m\000i\000n\000a\000r\000i\000e\000s}{chapter.2}% 4 +\BOOKMARK [1][-]{section.2.2}{\376\377\000M\000o\000n\000t\000e\000\040\000C\000a\000r\000l\000o\000\040\000A\000p\000p\000r\000o\000x\000i\000m\000a\000t\000i\000o\000n\000s}{chapter.2}% 5 +\BOOKMARK [1][-]{section.2.3}{\376\377\000B\000o\000u\000n\000d\000s\000\040\000a\000n\000d\000\040\000C\000o\000v\000n\000v\000e\000r\000g\000e\000n\000c\000e}{chapter.2}% 6 +\BOOKMARK [0][-]{chapter.3}{\376\377\000T\000h\000a\000t\000\040\000u\000\040\000i\000s\000\040\000a\000\040\000v\000i\000s\000c\000o\000s\000i\000t\000y\000\040\000s\000o\000l\000u\000t\000i\000o\000n}{}% 7 +\BOOKMARK [1][-]{section.3.1}{\376\377\000S\000o\000m\000e\000\040\000P\000r\000e\000l\000i\000m\000i\000n\000a\000r\000i\000e\000s}{chapter.3}% 8 +\BOOKMARK [1][-]{section.3.2}{\376\377\000V\000i\000s\000c\000o\000s\000i\000t\000y\000\040\000S\000o\000l\000u\000t\000i\000o\000n\000s}{chapter.3}% 9 +\BOOKMARK [1][-]{section.3.3}{\376\377\000S\000o\000l\000u\000t\000i\000o\000n\000s\000,\000\040\000c\000h\000a\000r\000a\000c\000t\000e\000r\000i\000z\000a\000t\000i\000o\000n\000,\000\040\000a\000n\000d\000\040\000c\000o\000m\000p\000u\000t\000a\000t\000i\000o\000n\000a\000l\000\040\000b\000o\000u\000n\000d\000s\000\040\000t\000o\000\040\000t\000h\000e\000\040\000K\000o\000l\000m\000o\000g\000o\000r\000o\000v\000\040\000b\000a\000c\000k\000w\000a\000r\000d\000\040\000e\000q\000u\000a\000t\000i\000o\000n\000s}{chapter.3}% 10 +\BOOKMARK [0][-]{section*.3}{\376\377\000A\000p\000p\000e\000n\000d\000i\000c\000e\000s}{}% 11 diff --git a/Dissertation_unzipped/Dissertation.pdf b/Dissertation_unzipped/Dissertation.pdf new file mode 100644 index 0000000..9d49356 Binary files /dev/null and b/Dissertation_unzipped/Dissertation.pdf differ diff --git a/Dissertation_unzipped/Dissertation.toc b/Dissertation_unzipped/Dissertation.toc new file mode 100644 index 0000000..0e0ffb8 --- /dev/null +++ b/Dissertation_unzipped/Dissertation.toc @@ -0,0 +1,11 @@ +\contentsline {chapter}{\numberline {1}Introduction}{4}{chapter.1}% +\contentsline {section}{\numberline {1.1}Notation and Definitions}{4}{section.1.1}% +\contentsline {chapter}{\numberline {2}Brownian Motion Monte Carlo}{10}{chapter.2}% +\contentsline {section}{\numberline {2.1}Brownian Motion Preliminaries}{10}{section.2.1}% +\contentsline {section}{\numberline {2.2}Monte Carlo Approximations}{14}{section.2.2}% +\contentsline {section}{\numberline {2.3}Bounds and Covnvergence}{15}{section.2.3}% +\contentsline {chapter}{\numberline {3}That $u$ is a viscosity solution}{24}{chapter.3}% +\contentsline {section}{\numberline {3.1}Some Preliminaries}{24}{section.3.1}% +\contentsline {section}{\numberline {3.2}Viscosity Solutions}{28}{section.3.2}% +\contentsline {section}{\numberline {3.3}Solutions, characterization, and computational bounds to the Kolmogorov backward equations}{47}{section.3.3}% +\contentsline {chapter}{Appendices}{55}{section*.3}% diff --git a/Dissertation_unzipped/Initial_Brownian_Motion.png b/Dissertation_unzipped/Initial_Brownian_Motion.png new file mode 100644 index 0000000..0120c86 Binary files /dev/null and b/Dissertation_unzipped/Initial_Brownian_Motion.png differ diff --git a/Dissertation_unzipped/Introduction.aux b/Dissertation_unzipped/Introduction.aux new file mode 100644 index 0000000..1fbe9e2 --- /dev/null +++ b/Dissertation_unzipped/Introduction.aux @@ -0,0 +1,72 @@ +\relax +\providecommand\hyper@newdestlabel[2]{} +\citation{golub2013matrix} +\citation{durrett2019probability} +\@writefile{toc}{\contentsline {chapter}{\numberline {1}Introduction.}{5}{chapter.1}\protected@file@percent } +\@writefile{lof}{\addvspace {10\p@ }} +\@writefile{lot}{\addvspace {10\p@ }} +\@writefile{toc}{\contentsline {section}{\numberline {1.1}Notation, Definitions \& Basic notions.}{5}{section.1.1}\protected@file@percent } +\@writefile{toc}{\contentsline {subsection}{\numberline {1.1.1}Norms and Inner Product}{5}{subsection.1.1.1}\protected@file@percent } +\@writefile{toc}{\contentsline {subsection}{\numberline {1.1.2}Probability Space and Brownian Motion}{6}{subsection.1.1.2}\protected@file@percent } +\newlabel{1.9}{{1.1.13}{8}{Strong Solution of Stochastic Differential Equation}{theorem.1.1.13}{}} +\newlabel{1.9@cref}{{[definition][13][1,1]1.1.13}{[1][7][]8}} +\newlabel{1.5}{{1.1.8}{8}{Strong Solution of Stochastic Differential Equation}{equation.1.1.8}{}} +\newlabel{1.5@cref}{{[equation][8][1,1]1.1.8}{[1][8][]8}} +\@writefile{toc}{\contentsline {subsection}{\numberline {1.1.3}Lipschitz and Related Notions}{9}{subsection.1.1.3}\protected@file@percent } +\newlabel{def:1.13}{{1.1.15}{9}{Globally Lipschitz Function}{theorem.1.1.15}{}} +\newlabel{def:1.13@cref}{{[definition][15][1,1]1.1.15}{[1][8][]9}} +\citation{da_prato_zabczyk_2002} +\newlabel{def:1.14}{{1.1.16}{10}{Locally Lipschitz Function}{theorem.1.1.16}{}} +\newlabel{def:1.14@cref}{{[definition][16][1,1]1.1.16}{[1][10][]10}} +\@writefile{toc}{\contentsline {subsection}{\numberline {1.1.4}Kolmogorov Equations}{10}{subsection.1.1.4}\protected@file@percent } +\newlabel{(1.7)}{{1.1.16}{11}{Kolmogorov Equation}{equation.1.1.16}{}} +\newlabel{(1.7)@cref}{{[equation][16][1,1]1.1.16}{[1][10][]11}} +\@writefile{toc}{\contentsline {subsection}{\numberline {1.1.5}Linear Algebra Notation and Definitions}{12}{subsection.1.1.5}\protected@file@percent } +\newlabel{def:1.1.23}{{1.1.23}{12}{Column, Row, and General Vector Notation}{theorem.1.1.23}{}} +\newlabel{def:1.1.23@cref}{{[definition][23][1,1]1.1.23}{[1][12][]12}} +\@writefile{toc}{\contentsline {subsection}{\numberline {1.1.6}$O$-type notation and function growth}{13}{subsection.1.1.6}\protected@file@percent } +\newlabel{1.1.20.1}{{1.1.26.1}{14}{Bounded functions and $O$-type notation}{corollary.1.1.26.1}{}} +\newlabel{1.1.20.1@cref}{{[corollary][1][]1.1.26.1}{[1][14][]14}} +\newlabel{1.1.20.2}{{1.1.26.2}{14}{}{corollary.1.1.26.2}{}} +\newlabel{1.1.20.2@cref}{{[corollary][2][]1.1.26.2}{[1][14][]14}} +\@writefile{toc}{\contentsline {subsection}{\numberline {1.1.7}The Iverson Bracket}{15}{subsection.1.1.7}\protected@file@percent } +\@setckpt{Introduction}{ +\setcounter{page}{16} +\setcounter{equation}{34} +\setcounter{enumi}{3} +\setcounter{enumii}{0} +\setcounter{enumiii}{0} +\setcounter{enumiv}{0} +\setcounter{footnote}{0} +\setcounter{mpfootnote}{0} +\setcounter{part}{1} +\setcounter{chapter}{1} +\setcounter{section}{1} +\setcounter{subsection}{7} +\setcounter{subsubsection}{0} +\setcounter{paragraph}{0} +\setcounter{subparagraph}{0} +\setcounter{figure}{0} +\setcounter{table}{0} +\setcounter{@pps}{0} +\setcounter{@ppsavesec}{0} +\setcounter{@ppsaveapp}{0} +\setcounter{AM@survey}{0} +\setcounter{parentequation}{0} +\setcounter{section@level}{2} +\setcounter{Item}{23} +\setcounter{Hfootnote}{0} +\setcounter{bookmark@seq@number}{10} +\setcounter{NAT@ctr}{0} +\setcounter{ALG@line}{0} +\setcounter{ALG@rem}{0} +\setcounter{ALG@nested}{0} +\setcounter{ALG@Lnr}{1} +\setcounter{ALG@blocknr}{1} +\setcounter{ALG@storecount}{0} +\setcounter{ALG@tmpcounter}{0} +\setcounter{lstnumber}{1} +\setcounter{theorem}{28} +\setcounter{corollary}{0} +\setcounter{lstlisting}{0} +} diff --git a/Dissertation_unzipped/Introduction.pdf b/Dissertation_unzipped/Introduction.pdf new file mode 100644 index 0000000..de2ffb3 Binary files /dev/null and b/Dissertation_unzipped/Introduction.pdf differ diff --git a/Dissertation_unzipped/Introduction.tex b/Dissertation_unzipped/Introduction.tex new file mode 100644 index 0000000..03be8d6 --- /dev/null +++ b/Dissertation_unzipped/Introduction.tex @@ -0,0 +1,422 @@ +\chapter{Introduction.} +\section{Motivation} + +Artificial neural networks represent a sea change in computing. They have successfully been used in a wide range of applications, from protein-folding in \cite{tsaban_harnessing_2022}, knot theory in \cite{davies_signature_2021}, and extracting data from gravitational waves in \cite{zhao_space-based_2023}. +\\~\\ +As neural networks become more ubiquitous, we see that the number of parameters required to train them increases, which poses two problems: accessibility on low-power devices and the amount of energy needed to train these models, see for instance \cite{wu2022sustainable} and \cite{strubell2019energy}. Parameter estimates become increasingly crucial in an increasingly climate-challenged world. That we know strict and precise upper bounds on parameter estimates tells us when training becomes wasteful, in some sense, and when, perhaps, different approaches may be needed. +\\~\\ +Our goal in this dissertation is threefold: +\begin{enumerate}[label = (\roman*)] + \item Firstly, we will take something called Multi-Level Picard first introduced in \cite{e_multilevel_2019} and \cite{e_multilevel_2021}, and in particular, the version of Multi-Level Picard that appears in \cite{hutzenthaler_strong_2021}. We show that dropping the drift term and substantially simplifying the process still results in convergence of the method and polynomial bounds for the number of computations required and rather nice properties for the approximations, such as integrability and measurability. + \item We will then go on to realize that the solution to a modified version of the heat equation has a solution represented as a stochastic differential equation by Feynman-Kac and further that a version of this can be realized by the modified multi-level Picard technique mentioned in Item (i), with certain simplifying assumptions since we dropped the drift term. A substantial amount of this is inspired by \cite{bhj20} and much earlier work in \cite{karatzas1991brownian} and \cite{da_prato_zabczyk_2002}. + \item By far, the most significant part of this dissertation is dedicated to expanding and building upon a framework of neural networks as appears in \cite{grohs2019spacetime}. We modify this definition highly and introduce several new neural network architectures to this framework ($\tay, \pwr, \trp, \tun,\etr$, among others) and show, for all these neural networks, that the parameter count grows only polynomially as the accuracy of our model increases, thus beating the curse of dimensionality. This finally paves the way for giving neural network approximations to the techniques realized in Item (ii). We show that it is not too wasteful (defined on the polynomiality of parameter counts) to use neural networks to approximate MLP to approximate a stochastic differential equation equivalent to certain parabolic PDEs as Feynman-Kac necessitates. + \\~\\ + We end this dissertation by proposing two avenues of further research: analytical and algebraic. This framework of understanding neural networks as ordered tuples of ordered pairs may be extended to give neural network approximation of classical PDE approximation techniques such as Runge-Kutta, Adams-Moulton, and Bashforth. We also propose three conjectures about neural networks, as defined in \cite{grohs2019spacetime}. They form a bimodule, and that realization is a functor. +\end{enumerate} +This dissertation is broken down into three parts. At the end of each part, we will encounter tent-pole theorems, which will eventually lead to the final neural network approximation outcome. These tentpole theorems are Theorem \ref{tentpole_1}, Theorem \ref{thm:3.21}, and Theorem. Finally, the culmination of these three theorems is Theorem, the end product of the dissertation. + +\section{Notation, Definitions \& Basic notions.} +We introduce here basic notations that we will be using throughout this dissertation. Large parts are taken from standard literature inspired by \textit{Matrix Computations} by \cite{golub2013matrix}, and \textit{Probability: Theory \& Examples} by Rick \cite{durrett2019probability}. +\subsection{Norms and Inner Products} +\begin{definition}[Euclidean Norm] + Let $\left\|\cdot\right\|_E: \R^d \rightarrow [0,\infty)$ denote the Euclidean norm defined for every $d \in \N_0$ and for all $x= \{x_1,x_2,\cdots, x_d\}\in \R^d$ as: + \begin{align} + \| x\|_E = \lp \sum_{i=1}^d x_i^2 \rp^{\frac{1}{2}} + \end{align} + For the particular case that $d=1$ and where it is clear from context, we will denote $\| \cdot \|_E$ as $|\cdot |$. +\end{definition} +\begin{definition}[Max Norm] + Let $\left\| \cdot \right\|_{\infty}: \R^d \rightarrow [0,\infty )$ denote the max norm defined for every $d \in \N_0$ and for all $x = \left\{ x_1,x_2,\cdots,x_d \right\} \in \R^d$ as: + \begin{align} + \left\| x \right\|_{\infty} = \max_{i \in \{1,2,\cdots,d\}} \left\{\left| x_i \right| \right\} + \end{align} + We will denote the max norm $\left\|\cdot \right\|_{\max}: \R^{m\times n} \rightarrow \lb 0, \infty \rp$ defined for every $m,n \in \N$ and for all $A \in \R^{m\times n}$ as: + \begin{align} + \| A \|_{\max} \coloneqq \max_{\substack {i \in \{1,2,...,m\} \\ j \in \{1,2,...,n\}}} \left| \lb A\rb_{i,j}\right| + \end{align} +\end{definition} + +\begin{definition}[Frobenius Norm] +Let $\|\cdot \|_F: \R^{m\times n} \rightarrow [0,\infty)$ denote the Frobenius norm defined for every $m,n \in \N$ and for all $A \in \R^{m\times n}$ as: +\begin{align} + \|A\|_F = \lp \sum^m_{i=1} \sum^n_{j=1} \lb A \rb^2_{i,j} \rp^{\frac{1}{2}} +\end{align} +\end{definition} + +\begin{definition}[Euclidean Inner Product] + Let $\la \cdot, \cdot \ra: \R^d \times \R^d \rightarrow \R$ denote the Euclidean inner product defined for every $d \in \N$, for all $\R^d \ni x = \{x_1,x_2,...,x_d\}$, and for all $\R^d \ni y = \{y_1,y_2,..., y_d\}$ as: + \begin{align} + \la x, y \ra = \sum^d_{i=1} \lp x_i y_i \rp + \end{align} +\end{definition} + +\subsection{Probability Space and Brownian Motion} +\begin{definition}[Probability Space] + A probability space is a triple $\lp \Omega, \mathcal{F}, \mathbb{P} \rp$ where: + \begin{enumerate}[label = (\roman*)] + \item $\Omega$ is a set of outcomes called the \textbf{sample space}. + \item $\mathcal{F}$ is a set of events called the \textbf{event space}, where each event is a set of outcomes from the sample space. More specifically, it is a $\sigma$-algebra on the set $\Omega$. + \item A measurable function $\mathbb{P}: \mathcal{F} \rightarrow [0,1]$ assigning each event in the \textbf{event space} a probability between $0$ and $1$. More specifically, $\mathbb{P}$ is a measure on $\Omega$ with the caveat that the measure of the entire space is $1$, i.e., $\mathbb{P}(\Omega) = 1$. + \end{enumerate} +\end{definition} + +\begin{definition}[Random Variable] + Let $(\Omega, \mathcal{F}, \mathbb{P})$ be a probability space, and let $d \in \N_0$. For some $d\in \N_0$ a random variable is a measurable function $\mathcal{X}: \Omega \rightarrow \R^d.$ +\end{definition} + +\begin{definition}[Expectation] + Given a probability space $\lp \Omega, \mathcal{F}, \mathbb{P} \rp$, the expected value of a random variable $X$, denoted $\E \lb X \rb$ is the Lebesgue integral given by: + \begin{align} + \E\lb X \rb=\int_\Omega X d\mathbb{P} + \end{align} +\end{definition} + +\begin{definition}[Stochastic Process] + A stochastic process is a family of random variables over a fixed probability space $(\Omega, \mathcal{F}, \mathbb{R})$, indexed over a set, usually $\lb 0, T\rb$ for $T\in \lp 0,\infty\rp$. +\end{definition} + + +\begin{definition}[Stochastic Basis] + A stochastic basis is a tuple $\lp \Omega, \mathcal{F}, \mathbb{P}, \mathbb{F} \rp$ where: + \begin{enumerate}[label = (\roman*)] + \item $\lp \Omega, \mathcal{F}, \mathbb{P} \rp$ is a probability space equipped with a filtration $\mathbb{F}$ where, + \item $\mathbb{F}=(\mathcal{F}_i)_{i \in I}$, is a collection of non-decreasing sets under inclusion where for every $i \in I$, $I$ being equipped in total order, it is the case that $\mathcal{F}_i$ is a sub $\sigma$-algebra of $\mathcal{F}$. + \end{enumerate} +\end{definition} + +\begin{definition}[Brownian Motion Over a Stochastic Basis]\label{def:brown_motion} + Given a stochastic basis $(\Omega, \mathcal{F}, \mathbb{P}, \mathbb{F})$ a standard $(\mathbb{F}_t)_{t\in [0,T]}$-Brownian motion $\mathcal{W}_t$ is a mapping $\mathcal{W}_t: [0,T] \times \Omega \rightarrow \R^d$ satisfying: + \begin{enumerate}[label = (\roman*)] + \item $\mathcal{W}_t$ is $\mathcal{F}_t$ measurable for all $t\in [0, \infty)$ + \item $\mathcal{W}_0 = 0$ with $\mathbb{P}$-a.s. + \item $\mathcal{W}_t-\mathcal{W}_s \sim \norm\lp 0,t-s\rp$ when $s\in \lp 0, t \rp $. + \item $\mathcal{W}_t-\mathcal{W}_s$ is independent of $\mathcal{W}_s$ whenever $s \delta$. Thus, by uniform continuity, we have the following: + \begin{align} + |f(x_i)-f(x_j)| < \epsilon \quad \forall i,j \in \{1,2,...,N\} + \end{align} + and thus let $\mathfrak{L}$ be defined as: + \begin{align} + \mathfrak{L} = \max_{\substack{i,j \in \{1,2,...,N\} \\ i \neq j}} \lv \frac{f(x_i)-f(x_j)}{x_i - x_j} \rv + \end{align} + $\mathfrak{L}$ satisfies the Lipschitz property. To see this, let $x_1,x_2$ be two arbitrary points within $\mathcal{K}$. Let $B_\delta(x_i)$ and $B_\delta(x_j)$ be two points such that $x_1 \in B_\delta(x_i)$ and $x_2 \in B_\delta(x_j)$. The triangle inequality then yields that: + \begin{align} +\left|f(x_1)-f(x_2)\right| &\leqslant \left|f(x_1)-f(x_i)\right| + \left|f(x_i)-f(x_j)\right| + \left|f(x_j)-f(x_2)\right| \nonumber\\ +&\leqslant \left|f(x_i)-f(x_j)\right| + 2\epsilon \nonumber\\ +&\leqslant \mathfrak{L}\cdot\left|x_i-x_j\right| + 2\epsilon \nonumber\\ +&\leqslant \mathfrak{L}\cdot\left|x_1-x_2\right| + 2\epsilon \nonumber +\end{align} +for all $\epsilon \in (0,\infty)$. +\end{proof} + + +\begin{definition}[Locally Lipschitz Function]\label{def:1.14} + Let $d \in N_0$. For every $d \in \N_0$ a function $f: \R^d \rightarrow \R^d$ is locally Lipschitz if for all $x_0 \in \R^d$ there exists a compact set $\mathcal{K} \subseteq \domain(f)$ containing $x_0$, and a constant $L \in (0,\infty)$ for that compact set such that + \begin{align} + \sup_{\substack{x,y\in \mathcal{K} \\ x\neq y}} \left\| \frac{f(x)-f(y)}{x-y} \right\|_E \leqslant L + \end{align} + The set of locally Lipschitz functions over set $X$ will be denoted $\lip_L(X)$. +\end{definition} + +\begin{corollary} + A function $f: \R^d \rightarrow \R^d$ that is globally Lipschitz is also locally Lipschitz. More concisely $\lip_G(X) \subsetneq \lip_L(X)$. +\end{corollary} +\begin{proof} + Assume not, that is to say, there exists a point $x\in \domain(f)$, a compact set $\mathcal{K} \subseteq \domain(f)$, and points $x_1,x_2 \in \mathcal{K}$ such that: + \begin{align} + \frac{|f(x_1)-f(x_2)|}{x_1-x_2} \geqslant \mathfrak{L} + \end{align} + This directly contradicts Definition \ref{def:1.13}. +\end{proof} +\subsection{Kolmogorov Equations} +\begin{definition}[Kolmogorov Equation] + We take our definition from \cite[~(7.0.1)]{da_prato_zabczyk_2002} with, $u \curvearrowleft u$, $G \curvearrowleft \sigma$, $F \curvearrowleft \mu$, and $\varphi \curvearrowleft g$, and for our purposes we set $A:\R^d \rightarrow 0$. Given a separable Hilbert space H (in our case $\R^d$), and letting $\mu: [0, T] \times \R^d \rightarrow \R^d$, $\sigma:[0, T] \times \R^d \rightarrow \R^{d\times m}$, and $g:\R^d \rightarrow \R$ be at least Lipschitz, a Kolmogorov Equation is an equation of the form: + \begin{align}\label{(1.7)} + \begin{cases} + \lp \frac{\partial}{\partial t} u \rp \lp t,x \rp = \frac{1}{2} \Trace \lp \sigma \lp t,x \rp \lb \sigma \lp t,x \rp \rb^* \lp \Hess_x u \rp \lp t,x \rp \rp + \la \mu \lp t,x \rp , \lp \nabla_x u \rp \lp t,x \rp \ra \\ + u(0,x) = g(x) + \end{cases} + \end{align} + \end{definition} +\begin{definition}[Strict Solution to Kolmogorov Equation] + Let $d\in \N_0$. For every $d\in \N_0$ a function $u: [0,T] \times \R^d \rightarrow \R$ is a strict solution to (\ref{(1.7)}) if and only if: + \begin{enumerate}[label = (\roman*)] + \item $u \in C^{1,1} \lp \lb 0,T \rb \times \R^d \rp$ and $u(0, \cdot) = g$ + \item $u(t, \cdot) \in UC^{1,2}([0,T] \times \R^d, \R)$ + \item For all $x \in \domain(A)$, $u(\cdot,x)$ is continuously differentiable on $[0,\infty)$ and satisfies (\ref{(1.7)}). + \end{enumerate} +\end{definition} +\begin{definition}[Generalized Solution to Kolmogorov Equation] + A generalized solution to (\ref{(1.7)}) is defined as: + \begin{align} + u(t,x) = \E \lb g \lp \mathcal{X}^{t,x} \rp \rb + \end{align} + Where the stochastic process $\mathcal{X}^{t,x}$ is the solution to the stochastic differential equation, for $x \in \R^d$, $t \in [0,T]$: + \begin{align} + \mathcal{X}^{t,x} = \int^t_0 \mu \lp \mathcal{X}^{t,x}_r \rp dr + \int^t_0 \sigma \lp \mathcal{X}^{t,x}_r \rp dW_r + \end{align} +\end{definition} +\begin{definition}[Laplace Operator w.r.t. $x$] + Let $d \in \N_0$, and $f\in C^2\lp \R^d,\R \rp$. For every $d\in \N_0$, the Laplace operator $\nabla^2_x : C^2(\R^d,\R) \rightarrow \R$ is defined as: + \begin{align} + \Delta_xf = \nabla_x^2f := \nabla \cdot \nabla f = \sum^d_{i=1} \frac{\partial f}{\partial x_i} + \end{align} +\end{definition} +\subsection{Linear Algebra Notation and Definitions} +\begin{definition}[Identity, Zero Matrix, and the 1-matrix] + Let $d \in \N$. We will define the identity matrix for every $d \in \N$ as the matrix $\mathbb{I}_d \in \R^{d\times d}$ given by: + \begin{align} + \mathbb{I}_d = \lb \mathbb{I}_d \rb_{i,j} = \begin{cases} + 1 & i=j \\ + 0 & \text{else} + \end{cases} + \end{align} + Note that $\mathbb{I}_1 =1$. + + Let $m,n,i,j \in \N$. For every $m,n \in \N$, $i \in \left\{1,2,\hdots,m \right\}$, and $j \in \left\{ 1,2,\hdots,n\right\}$ we define the zero matrix $\mymathbb{0}_{m,n} \in \R^{m\times n}$ as: + \begin{align} + \mymathbb{0}_{m,n} =\lb \mymathbb{0}_{m,n} \rb_{i,j} = 0 + \end{align} + Where we only have a column of zeros, it is convenient to denote $\mymathbb{0}_d$ where $d$ is the height of the column. + + Let $m,n,i,j \in \N$. For every $m,n \in \N$, $i \in \left\{ 1,2,\hdots,m\right\}$, and $j \in \left\{1,2,\hdots,n \right\}$ we define matrix of ones $\mymathbb{e}_{m,n} \in \R^{m \times n}$ as: + \begin{align} + \mymathbb{e}_{m,n} = \lb \mymathbb{e} \rb_{i,j} = 1 \quad + \end{align} + Where we only have a column of ones, it is convenient to denote $\mymathbb{e}_d$ where $d$ is the height of the column. +\end{definition} +\begin{definition}[Single-entry matrix] + Let $m,n,k,l \in \N$ and let $c\in \R$. For $k \in \N \cap \lb 1,m\rb$ and $l \in \N \cap \lb 1,n\rb$, we will denote by $\mymathbb{k}^{m,n}_{k,l,c} \in \R^{m \times n}$ as the matrix defined by: + \begin{align} + \mymathbb{k}^{m,n}_{k,l,c} =\lb \mymathbb{k}^{m,n}_{k,l}\rb_{i,j} = \begin{cases} + c &:k=i \land l=j \\ + 0 &:else + \end{cases} + \end{align} +\end{definition} +\begin{definition}[Complex conjugate and transpose] + Let $m,n,i,j \in \N$, and $A \in \mathbb{C}^{m \times n}$. For every $m,n \in \N$, $i \in \left\{1,2,\hdots,m\right\}$ and $j \in \left\{1,2,\hdots, n\right\}$, we denote by $A^* \in \mathbb{C}^{n \times m}$ the matrix: + \begin{align} + A^*\coloneqq \lb A^* \rb _{i,j} = \overline{\lb A \rb _{j,i}} + \end{align} + Where it is clear that we are dealing with real matrices, i.e., $A \in \R^{m\times n}$, we will denote this as $A^\intercal$. +\end{definition} +\begin{definition}[Column and Row Notation]\label{def:1.1.23} + Let $m,n,i,j \in \N$ and let $A \in \R^{m \times n}$. For every $m,n \in N$ and $i \in \left\{ 1,2,\hdots ,m\right\}$ we denote $i$-th row as: + \begin{align} + [A]_{i,*} = \begin{bmatrix} + a_{i,1} & a_{i,2} & \cdots & a_{i,n} + \end{bmatrix} + \end{align} + Similarly for every $m,n \in \N$ and $j \in \left\{ 1,2,\hdots,n\right\}$, we done the $j$-th row as: + \begin{align} + [A]_{*,j} = \begin{bmatrix} + a_{1,j} \\ + a_{2,j} \\ + \vdots \\ + a_{m,j} + \end{bmatrix} + \end{align} +\end{definition} +\begin{definition}[Component-wise notation] + Let $m,n,i,j \in \N$, and let $A \in \R^{m \times n}$. Let $f: \R \rightarrow \R$. For all $m,n \in \N, i \in \left\{1,2,\hdots,m \right\}$, and $j \in \left\{1,2,\hdots,n \right\}$ we will define $f \lp \lb A \rb_{*,*} \rp \in \R^{m \times n}$ as: + \begin{align} + f\lp \lb A\rb_{*,*}\rp \coloneqq \lb f \lp \lb A\rb_{i,j}\rp \rb_{i,j} + \end{align} + Thus under this notation the component-wise square of $A$ is $\lp \lb A \rb_{*,*}\rp^2$, the component-wise $\sin$ is $\sin\lp \lb A \rb_{*,*}\rp$ and the Hadamard product of $A,B \in \R^{m \times n}$ then becomes $ A \odot B = \ \lb A \rb_{*,*} \times \lb B \rb_{*,*}$. +\end{definition} +\begin{remark} + Where we are dealing with a row vector $x \in \R^{d \times 1}$ and it is evident from the context we may choose to write $f\lp \lb x\rb_* \rp$. +\end{remark} +\begin{definition}[The Diagonalization Operator] + Let $m_1,m_2,n_1,n_2 \in \N$. Given $A \in \R^{m_1 \times n_1}$ and $B \in \R^{m_2\times n_2}$, we will denote by $\diag\lp A,B\rp$ the matrix: + \begin{align} + \diag\lp A,B\rp = \begin{bmatrix} + A & \mymathbb{0}_{m_1,n_2}\\ + \mymathbb{0}_{m_2,n_1}& B + \end{bmatrix} + \end{align} +\end{definition} +\begin{remark} + $\diag\lp A_1,A_2,\hdots,A_n\rp$ is defined analogously for a finite set of matrices $A_1,A_2,\hdots,A_n$. +\end{remark} +\begin{definition}[Number of rows and columns notation] + Let $m,n \in \N$. Let $A\in \R^{m \times n}$. Let $\rows:\R^{m \times n} \rightarrow\N$ and $\columns:\R^{m\times n} \rightarrow \N$, be the functions respectively $\rows\lp A \rp = m$ and $\columns\lp A\rp = n$. +\end{definition} + +\subsection{$O$-type Notation and Function Growth} +\begin{definition}[$O$-type notation] +Let $g \in C(\R,\R)$. We say that $f \in C(\R,\R)$ is in $O(g(x))$, denoted $f \in O(g(x))$, if there exists $c\in \lp 0, \infty\rp$ and $x_0 \in \lp 0,\infty\rp$ such that for all $x\in \lb x_0,\infty \rp $ it is the case that: +\begin{align} + 0 \leqslant f(x) \leqslant c \cdot g(x) +\end{align} +We say that $f \in \Omega(g(x))$ if there exists $c\in \lp 0,\infty\rp$ and $x_0 \in \lp 0,\infty \rp$ such that for all $x\in \lb x_0, \infty\rp$ it is the case that: +\begin{align} + 0 \leqslant cg(x) \leqslant f(x) +\end{align} +We say that $f \in \Theta(g(x))$ if there exists $c_1,c_2,x_0 \in \lp 0,\infty\rp$ such that for all $x \in \lb x_0,\infty\rp$ it is the case that: +\begin{align} + 0 \leqslant c_1g(x) \leqslant f \leqslant c_2g(x) +\end{align} +\end{definition} +\begin{corollary}[Bounded functions and $O$-type notation]\label{1.1.20.1} + Let $f(x) \in C(\R,\R)$, then: + \begin{enumerate}[label = (\roman*)] + \item if $f$ is bounded above for all $x\in \R$, it is in $O(1)$ for some constant $c\in \R$. + \item if $f$ is bounded below for all $x \in \R$, it is in $\Omega(1)$ for some constant $c \in \R$. + \item if $f$ is bounded above and below for all $x\in \R$, it is in $\Theta(1)$ for some constant $c\in \R$. + \end{enumerate} +\end{corollary} +\begin{proof} + Assume $f \in C(\R, \R)$, then: + \begin{enumerate}[label = (\roman*)] + \item Assume for all $x \in \R$ it is the case that $f(x) \leqslant M$ for some $M\in \R$, then there exists an $x_0\in \lp 0,\infty \rp$ such that for all $x\in \lp x_0,\infty \rp $ it is also the case that $0 \leqslant f(x) \leqslant M$, whence $f(x) \in O(1)$. + \item Assume for all $x \in \R$ it is the case that $f(x) \geqslant M $ for some $M\in \R$, then there exists an $x_0\in \lp 0,\infty \rp$ such that for all $x\in \lb x_0, \infty \rp$ it is also the case that $f(x) \geqslant M \geqslant 0$, whence $f(x) \in \Omega(1)$. + \item This is a consequence of items (i) and (ii). + \end{enumerate} +\end{proof} +\begin{corollary}\label{1.1.20.2} + Let $n\in \N_0$. For some $n\in \N_0$, let $f \in O(x^n)$. It is then also the case that $f \in O \lp x^{n+1} \rp$. +\end{corollary} +\begin{proof} + Let $f \in O(x^n)$. Then there exists $c_0,x_0 \in \lp 0,\infty\rp$, such that for all $x \in \lb x_0,\infty\rp$ it is the case that: + \begin{align} + f(x) \leqslant c_0\cdot x^n + \end{align} + Note however that for all $n\in \N_0$, there also exists $c_1,x_1 \in \lp 0,\infty\rp$ such that for all $x \in \lp x_1,\infty \rp$ it is the case that: + \begin{align} + x^n \leqslant c_1\cdot x^{n+1} + \end{align} + Thus taken together this implies that for all $x \in \lp \max \left\{ x_0,x_1\right\},\infty\rp$ it is the case that: + \begin{align} + f(x) \leqslant c_0 \cdot x^n \leqslant c_0\cdot c_1 \cdot x^{n+1} + \end{align} +\end{proof} + +\begin{definition}[The floor and ceiling functions] + We denote by $\lfloor\cdot \rfloor: \R \rightarrow \Z$ and $\lceil \cdot \rceil: \R \rightarrow\Z$ the functions satisfying for all $x \in \R$ that $\lfloor x \rfloor = \max \lp \Z \cap \lp -\infty,x \rb \rp $ and $\lceil x \rceil = \min \lp \Z \cap \lp -\infty,x \rb \rp$. +\end{definition} + +\subsection{The Concatenation of Vectors \& Functions} +\begin{definition}[Vertical Vector Concatenation] + Let $m,n \in \N$. Let $x= \lb x_1 \: x_2\: \hdots \: x_m \rb^\intercal \in \R^m$ and $y = \lb y_1,y_2,\hdots,y_n\rb^\intercal \in \R^n$. For every $m,n \in \N$, we will denote by $x \frown y \in \R^m \times \R^n$ the vector given as: + \begin{align} + \begin{bmatrix} + x_1 \\x_2\\ \vdots \\x_m \\y_1 \\y_2\\ \vdots \\y_n + \end{bmatrix} + \end{align} +\end{definition} +\begin{remark} + We will stipulate that when concatenating vectors as $x_1 \frown x_2$, $x_1$ is on top, and $x_2$ is at the bottom. +\end{remark} +\begin{corollary}\label{sum_of_frown_frown_of_sum} + Let $m_1,m_2,n_1,n_2 \in \N$ and let $x \in \R^{m_1}$, $y \in \R^{n_1}$, $\fx\in \R^{m_2}$, and $\fy \in \R^{n_2}$. It is then the case that $\lb x \frown \fx\rb+\lb y \frown \fy\rb = \lb x+y\rb\frown \lb \fx +\fy\rb$. +\end{corollary} +\begin{proof} + This follows straightforwardly from the fact that: + \begin{align} + \lb x \frown \fx \rb + \lb y + \fy\rb = \begin{bmatrix} + x_1 \\ x_2 \\ \vdots \\ x_{m_1} \\ \fx_1 \\ \fx_2 \\ \vdots \\ \fx_{m_2} + \end{bmatrix} + \begin{bmatrix} + y_1 \\ y_2 \\ \vdots \\ y_{n_1} \\ \fy_1\\ \fy_2 \\ \vdots \\ \fy_{n_2} + \end{bmatrix} = \begin{bmatrix} + x_1+y_1 \\ x_2 + y_2 \\ \vdots \\ x_{m_1+n+1} \\ \fx_1+\fy_1 \\ \fx_2 + \fy_2 \\ \vdots \\ \fx_{m_2} + \fy_{n_2} + \end{bmatrix} = \lb x+y\rb\frown \lb \fx +\fy\rb + \end{align} +\end{proof} +\begin{definition}[Function Concatenation] + Let $m_1,n_1,m_2,n_2 \in \N$. Let $f : \R^{m_1} \rightarrow\R^{n_1}$ and $g: \R^{m_2}\rightarrow\R^{n_2}$. We will denote by $f \frown g: \R^{m_1} \times \R^{m_2} \rightarrow \R^{n_1} \times \R^{n_2}$ as the function given for all $x = \{ x_1,x_2,\hdots, x_{m_1}\} \in \R^{m_1}$, $\overline{x} \in \{ \overline{x_1},\overline{x_2},\hdots ,\overline{x}_{m_2}\} \in \R^{m_2}$, and $x \frown \overline{x} =\{x_1,x_2,\hdots,x_{m_1},\overline{x}_1,\overline{x}_2,\hdots,\overline{x}_{m_2}\} \in \R^{m_1} \times \R^{m_2}$ by: + \begin{align} + \begin{bmatrix} + x_1 \\ x_2\\ \vdots \\x_{m_1} \\\overline{x_1} \\\overline{x_2}\\ \vdots \\ \overline{x_{m_2}} + \end{bmatrix} \xrightarrow{\hspace*{1.5cm}} + \begin{bmatrix} + f(x) \\ g(\overline{x}) + \end{bmatrix} + \end{align} +\end{definition} +\begin{corollary}\label{concat_fun_fun_concat} + Let $m,n \in \N$. Let $x_1 \in \R^m$,$x_2 \in \R^n$, and $f\in C\lp \R, \R\rp$. It is then the case that $f\lp x_1 \frown x_2\rp = f \lp x_1\rp \frown f\lp x_2\rp$. +\end{corollary} +\begin{proof} + This follows straightforwardly from the definition of function concatenation. +\end{proof} +\begin{lemma}\label{par_cont} + Let $m_1,m_2,n_1, n_2 \in \N$. Let $f \in C\lp \R^{m_1}, \R^{n_1}\rp$ and $g \in C\lp \R^{m_2}, \R^{n_2}\rp$. It is then also the case that $f \frown g \in C \lp \R^{m_1} \times \R^{n_1}, \R^{m_2} \times \R^{n_2}\rp$. +\end{lemma} + +\begin{proof} + Let $\R^{m_2} \times \R^{n_2}$ be equipped with the usual product topology, i.e., the topology generated by all products $X \times Y$ of open subsets $X \in \R^{m_2}$ and $Y\in \R^{n_2}$. In such a case let $V \subsetneq \R^{m_2} \times \R^{n_2}$ be an open subset. Then let it be that $V_f$ and $V_g$ are the canonical projections to the first and second factors respectively. Since projection under the usual topology is continuous, it is the case that $V_f \subsetneq \R^{m_2}$ and $V_g \subsetneq \R^{n_2}$ are open sets, respectively. As such it is then also the case that $f^{-1}\lp V_f\rp \subsetneq \R^{m_1}$ and $g^{-1}\lp V_g\rp \subsetneq \R^{n_1}$ are open sets as well by continuity of $f$ and $g$. Thus, their product is open as well, proving the lemma. +\end{proof} + + + + + + + + + + + + + + + diff --git a/Dissertation_unzipped/Simplification.nb b/Dissertation_unzipped/Simplification.nb new file mode 100644 index 0000000..3f1165d --- /dev/null +++ b/Dissertation_unzipped/Simplification.nb @@ -0,0 +1,198 @@ +(* Content-type: application/vnd.wolfram.mathematica *) + +(*** Wolfram Notebook File ***) +(* http://www.wolfram.com/nb *) + +(* CreatedBy='Mathematica 13.3' *) + +(*CacheID: 234*) +(* Internal cache information: +NotebookFileLineBreakTest +NotebookFileLineBreakTest +NotebookDataPosition[ 158, 7] +NotebookDataLength[ 5696, 188] +NotebookOptionsPosition[ 4998, 167] +NotebookOutlinePosition[ 5392, 183] +CellTagsIndexPosition[ 5349, 180] +WindowFrame->Normal*) + +(* Beginning of Notebook Content *) +Notebook[{ + +Cell[CellGroupData[{ +Cell[BoxData[ + RowBox[{"expression", " ", "=", " ", + RowBox[{ + FractionBox["37", "2"], "-", + RowBox[{"30", + RowBox[{"(", + RowBox[{ + RowBox[{"n", + RowBox[{"(", + RowBox[{ + RowBox[{ + FractionBox["q", + RowBox[{"q", "-", "2"}]], + RowBox[{"(", + RowBox[{ + RowBox[{"Log", "[", + RowBox[{"2", ",", + FractionBox["1", "\[Epsilon]"]}], "]"}], "+", "q"}], ")"}]}], + "-", "1"}], ")"}]}], "+", "1"}], ")"}]}], "+", + RowBox[{"18", + RowBox[{ + RowBox[{"(", + RowBox[{ + RowBox[{"n", + RowBox[{"(", + RowBox[{ + RowBox[{ + FractionBox["q", + RowBox[{"q", "-", "2"}]], + RowBox[{"(", + RowBox[{ + RowBox[{"Log", "[", + RowBox[{"2", ",", + FractionBox["1", "\[Epsilon]"]}], "]"}], "+", "q"}], ")"}]}], + "-", "1"}], ")"}]}], "+", "1"}], ")"}], "^", "2"}]}], "+", + RowBox[{"2", + RowBox[{"(", + RowBox[{"n", "-", "1"}], ")"}]}]}]}]], "Input", + CellChangeTimes->{{3.906063908626438*^9, 3.906063993707685*^9}, { + 3.9060640256280127`*^9, 3.906064111508772*^9}, {3.9060642340483294`*^9, + 3.906064271834546*^9}}, + CellLabel->"In[4]:=",ExpressionUUID->"ecf5c80d-975d-4892-88c6-001ebd7377b2"], + +Cell[BoxData[ + RowBox[{ + FractionBox["37", "2"], "+", + RowBox[{"2", " ", + RowBox[{"(", + RowBox[{ + RowBox[{"-", "1"}], "+", "n"}], ")"}]}], "-", + RowBox[{"30", " ", + RowBox[{"(", + RowBox[{"1", "+", + RowBox[{"n", " ", + RowBox[{"(", + RowBox[{ + RowBox[{"-", "1"}], "+", + FractionBox[ + RowBox[{"q", " ", + RowBox[{"(", + RowBox[{"q", "+", + FractionBox[ + RowBox[{"Log", "[", + FractionBox["1", "\[Epsilon]"], "]"}], + RowBox[{"Log", "[", "2", "]"}]]}], ")"}]}], + RowBox[{ + RowBox[{"-", "2"}], "+", "q"}]]}], ")"}]}]}], ")"}]}], "+", + RowBox[{"18", " ", + SuperscriptBox[ + RowBox[{"(", + RowBox[{"1", "+", + RowBox[{"n", " ", + RowBox[{"(", + RowBox[{ + RowBox[{"-", "1"}], "+", + FractionBox[ + RowBox[{"q", " ", + RowBox[{"(", + RowBox[{"q", "+", + FractionBox[ + RowBox[{"Log", "[", + FractionBox["1", "\[Epsilon]"], "]"}], + RowBox[{"Log", "[", "2", "]"}]]}], ")"}]}], + RowBox[{ + RowBox[{"-", "2"}], "+", "q"}]]}], ")"}]}]}], ")"}], + "2"]}]}]], "Output", + CellChangeTimes->{3.906064117039122*^9, 3.906064275522183*^9}, + CellLabel->"Out[4]=",ExpressionUUID->"52c2006d-deec-42d1-a139-15ac762ba33a"] +}, Open ]], + +Cell[CellGroupData[{ + +Cell[BoxData[ + RowBox[{"Simplify", "[", "expression", "]"}]], "Input", + CellChangeTimes->{{3.906064121728199*^9, 3.9060641326143093`*^9}, { + 3.9060643199790373`*^9, 3.906064351806294*^9}}, + CellLabel->"In[7]:=",ExpressionUUID->"02b903db-735e-48c0-b095-27572299b991"], + +Cell[BoxData[ + RowBox[{ + RowBox[{"-", + FractionBox["23", "2"]}], "+", + RowBox[{"2", " ", + RowBox[{"(", + RowBox[{ + RowBox[{"-", "1"}], "+", "n"}], ")"}]}], "-", + RowBox[{"30", " ", "n", " ", + RowBox[{"(", + RowBox[{ + RowBox[{"-", "1"}], "+", + FractionBox[ + RowBox[{"q", " ", + RowBox[{"(", + RowBox[{"q", "+", + FractionBox[ + RowBox[{"Log", "[", + FractionBox["1", "\[Epsilon]"], "]"}], + RowBox[{"Log", "[", "2", "]"}]]}], ")"}]}], + RowBox[{ + RowBox[{"-", "2"}], "+", "q"}]]}], ")"}]}], "+", + RowBox[{"18", " ", + SuperscriptBox[ + RowBox[{"(", + RowBox[{"1", "+", + RowBox[{"n", " ", + RowBox[{"(", + RowBox[{ + RowBox[{"-", "1"}], "+", + FractionBox[ + RowBox[{"q", " ", + RowBox[{"(", + RowBox[{"q", "+", + FractionBox[ + RowBox[{"Log", "[", + FractionBox["1", "\[Epsilon]"], "]"}], + RowBox[{"Log", "[", "2", "]"}]]}], ")"}]}], + RowBox[{ + RowBox[{"-", "2"}], "+", "q"}]]}], ")"}]}]}], ")"}], + "2"]}]}]], "Output", + CellChangeTimes->{ + 3.906064133111362*^9, 3.9060642814098177`*^9, {3.906064328656705*^9, + 3.906064352272952*^9}}, + CellLabel->"Out[7]=",ExpressionUUID->"7331ac0c-cf32-4dca-8f85-3dc9d8807a10"] +}, Open ]] +}, +WindowSize->{808, 796}, +WindowMargins->{{326, Automatic}, {30, Automatic}}, +FrontEndVersion->"13.3 for Mac OS X ARM (64-bit) (July 24, 2023)", +StyleDefinitions->"Default.nb", +ExpressionUUID->"194f2364-7214-48fd-9fc9-64c50a78dc3f" +] +(* End of Notebook Content *) + +(* Internal cache information *) +(*CellTagsOutline +CellTagsIndex->{} +*) +(*CellTagsIndex +CellTagsIndex->{} +*) +(*NotebookFileOutline +Notebook[{ +Cell[CellGroupData[{ +Cell[580, 22, 1340, 41, 71, "Input",ExpressionUUID->"ecf5c80d-975d-4892-88c6-001ebd7377b2"], +Cell[1923, 65, 1391, 44, 100, "Output",ExpressionUUID->"52c2006d-deec-42d1-a139-15ac762ba33a"] +}, Open ]], +Cell[CellGroupData[{ +Cell[3351, 114, 267, 4, 30, "Input",ExpressionUUID->"02b903db-735e-48c0-b095-27572299b991"], +Cell[3621, 120, 1361, 44, 123, "Output",ExpressionUUID->"7331ac0c-cf32-4dca-8f85-3dc9d8807a10"] +}, Open ]] +} +] +*) + +(* End of internal cache information *) + diff --git a/Dissertation_unzipped/ann_first_approximations.pdf b/Dissertation_unzipped/ann_first_approximations.pdf new file mode 100644 index 0000000..5cfa541 Binary files /dev/null and b/Dissertation_unzipped/ann_first_approximations.pdf differ diff --git a/Dissertation_unzipped/ann_first_approximations.tex b/Dissertation_unzipped/ann_first_approximations.tex new file mode 100644 index 0000000..5eadd7e --- /dev/null +++ b/Dissertation_unzipped/ann_first_approximations.tex @@ -0,0 +1,1377 @@ +\chapter{ANN first approximations} +\section{ANN Representations for One-Dimensional Identity and some associated properties} + +\begin{definition}[One Dimensional Identity Neural Network]\label{7.2.1} + We will denote by $\id_d \in \neu$ the neural network satisfying for all $d \in \N$ that: + \begin{enumerate}[label = (\roman*)] + \item \begin{align} + \id_1 = \lp \lp \begin{bmatrix} + 1 \\ + -1 + \end{bmatrix}, \begin{bmatrix} + 0 \\ + 0 + \end{bmatrix}\rp \lp \begin{bmatrix} + 1 \quad -1 + \end{bmatrix},\begin{bmatrix} 0\end{bmatrix}\rp \rp \in \lp \lp \R^{2 \times 1} \times \R^2 \rp \times \lp \R^{1\times 2} \times \R^1 \rp \rp + \end{align} + \item \begin{align}\label{7.2.2} + \id_d = \boxminus^d_{i=1} \id_1 + \end{align} + For $d>1$. + \end{enumerate} +\end{definition} +\begin{lemma}\label{idprop} + Let $d \in \N$, it is then the case that: + \begin{enumerate}[label = (\roman*)] + \item $\lay(\id_d) = \lp d, 2d, d \rp \in \N^3$. + \item $\real_{\rect} \lp \id_d \rp \in C \lp \R^d, \R^d \rp$. + \item For all $x \in \R^d$ that: + \begin{align} + \lp \real_{\rect} \lp \id_d \rp \rp \lp x \rp = x \nonumber + \end{align} + \item For $d\in \N$ it is the case that $\dep\lp \id_d\rp = 2$ + \end{enumerate} +\end{lemma} +\begin{proof} + Note that (\ref{7.2.1}) ensure that $\lay(\id_d) = \lp 1,2,1 \rp$. Furthermore, ($\ref{7.2.2}$) and Remark \ref{5.3.5} prove that $\lay(\id_d) = \lp d,2d,d \rp$ which in turn proves Item (i). Note now that Remark \ref{5.3.5} tells us that: + \begin{align} + \id_d = \boxminus^d_{i=1}\lp \id_1 \rp \in \lp \bigtimes^L_{i=1}\lb \R^{dl_i \times dl_{i-1}} \times \R^{dl_i} \rb \rp = \lp \lp \R^{2d \times d} \times \R^{2d}\rp \times \lp \R^{d \times 2d} \times \R^d\rp \rp + \end{align} + Note that \ref{7.2.1} ensures that for all $x \in \R$ it is the case that: + \begin{align} + \lp \real_{\rect} \lp \id_1 \rp \rp \lp x \rp = \rect(x) - \rect(-x) = \max\{x,0\} - \max\{-x,0\} = x + \end{align} + + And Lemma \ref{5.3.4} shows us that for all $x = \lp x_1,x_2,...,x_d\rp \in \R^d$ it is the case that $\real_{\rect}\lp \id_d \rp \in C \lp \R^d, \R^d \rp $ and that: + \begin{align} + \lp \real_{\act} \lp \id_d \rp \rp \lp x \rp &= \lp \real_{\act} \lp \boxminus_{i=1}^d \lp \id_1\rp \rp \rp \lp x_1,x_2,...,x_d \rp \nonumber \\ + &= \lp \lp \real_{\act} \lp \id_1 \rp \rp \lp x_1 \rp, \lp \real_{\act} \lp \id_1 \rp \rp \lp x_1 \rp,..., \lp \real_{\act} \lp \id_1 \rp \rp \lp x_d \rp \rp \nonumber \\ + &= \lp x_1, x_2,...,x_d \rp = x + \end{align} + This proves Item (ii)\textemdash(iii). Item (iv) follows straightforwardly from Item (i). This establishes the lemma. +\end{proof} +\begin{remark} +Note here the difference between Definition \ref{actnn} and Definition \ref{7.2.1}. +\end{remark} +\begin{lemma}[R\textemdash, 2023]\label{id_param} + Let $d \in \N$. It then the case that for all $d \in \N$ we have that $\param\lp \id_d\rp = 4d^2+3d$ +\end{lemma} +\begin{proof} + By observation we have that $\param \lp \id_1\rp = 4(1)^2+3(1) = 7$. By induction, suppose that this holds for all natural numbers up to and including $n$, i.e., for all naturals up to and including $n$; it is the case that $\param \lp id_n\rp = 4n^2+3n$. Note then that $\id_{n+1} = \id_n \boxminus \id_1$. For $W_1$ and $W_2$ of this new network, this adds a combined extra $8n+4$ parameters. For $b_1$ and $b_2$ of this new network, this adds a combined extra $3$ parameters. Thus, we have the following: + \begin{align} + 4n^2+3n + 8n+4 + 3 &= 4(n+1)^2+3(n+1) + \end{align} + This completes the induction and hence proves the Lemma. +\end{proof} +\begin{lemma}\label{7.2.3} + Let $\nu \in \neu$ with end-widths $d$. It is then the case that $ \real_{\rect} \lp \id_d \bullet \nu \rp \lp x \rp = \real_{\rect} \lp \nu \bullet \id_d \rp = \real_{\rect} \lp \nu\rp $, i.e. $\id_d$ acts as a compositional identity. +\end{lemma} +\begin{proof} From (\ref{5.2.1}) and Definition \ref{7.2.1} we have eight cases. + +Case 1 where $d=1$ and subcases: +\begin{enumerate}[label = (1.\roman*)] + \item $\id_d \bullet \nu$ where $\dep(\nu) = 1$ + \item $\id_d \bullet \nu$ where $\dep(\nu) > 1$ + \item $\nu \bullet \id_d$ where $\dep(\nu) =1$ + \item $\nu \bullet \id_d$ where $\dep(\nu) > 1$ +\end{enumerate} + +Case 2 where $d>1$ and subcases: +\begin{enumerate}[label = (2.\roman*)] + \item $\id_d \bullet \nu$ where $\dep(\nu) = 1$ + \item $\id_d \bullet \nu$ where $\dep(\nu) > 1$ + \item $\nu \bullet \id_d$ where $\dep(\nu) =1$ + \item $\nu \bullet \id_d$ where $\dep(\nu) > 1$ +\end{enumerate} + +\textit{Case 1.i:} Let $\nu = \lp \lp W_1,b_1 \rp \rp$. Deriving from Definitions \ref{7.2.1} and \ref{5.2.1} we have that: +\begin{align} + \id_1 \bullet \nu &=\lp \lp \begin{bmatrix} + 1 \\ + -1 + \end{bmatrix} W_1, \begin{bmatrix} + 1 \\ + -1 + \end{bmatrix}b_1 + \begin{bmatrix} + 0 \\ 0 + \end{bmatrix}\rp, \lp \begin{bmatrix} + 1 \quad -1, + \end{bmatrix}, \begin{bmatrix} + 0 + \end{bmatrix} \rp \rp \\ + &= \lp \lp \begin{bmatrix} + W_1 \\-W_{1} + \end{bmatrix}, \begin{bmatrix} + b_1 \\ -b_1 + \end{bmatrix} \rp,\lp \begin{bmatrix} + 1 \quad -1 + \end{bmatrix}, \begin{bmatrix} + 0 + \end{bmatrix} \rp \rp +\end{align} +Let $x \in \R$. Upon instantiation with $\rect$ and $d=1$ we have: +\begin{align} + \lp \real_{\rect}\lp \id_1\bullet \nu \rp \rp \lp x \rp &= \rect(W_1x+b_1)-\rect(-W_1x - b_1) \nonumber\\ + &= \max\{W_1x+b_1,0\}-\max\{-W_1x-b_1,0\} \nonumber \\ + &= W_1x+b_1 \nonumber\\ + &= \real_{\rect}(\nu) \nonumber +\end{align} +\textit{Case 1.ii:} Let $\nu = \lp \lp W_1,b_1 \rp, \lp W_2,b_2 \rp, ..., \lp W_L, b_L \rp \rp $. Deriving from Definition \ref{7.2.1} and \ref{5.2.1} we have that: +\begin{align} + \id_1\bullet \nu &= \lp \lp W_1,b_1\rp,\lp W_2,b_2 \rp,...,\lp W_{L-1},b_{L-1} \rp, \lp \begin{bmatrix} + 1 \\-1 + \end{bmatrix} W_L, \begin{bmatrix} + 1 \\ -1 + \end{bmatrix}b_L + \begin{bmatrix} + 0 \\ 0 + \end{bmatrix} \rp, \lp \begin{bmatrix} + 1 \quad -1 + \end{bmatrix}, \begin{bmatrix} + 0 + \end{bmatrix} \rp \rp \nonumber \\ + &= \lp \lp W_1,b_1\rp, \lp W_2, b_2 \rp,...,\lp W_{L-1},b_{L-1} \rp, \lp \begin{bmatrix} + W_L \\ -W_L + \end{bmatrix} ,\begin{bmatrix} + b_L \\ -b_L + \end{bmatrix} \rp ,\lp \begin{bmatrix} + 1 & -1 + \end{bmatrix}, \begin{bmatrix} + 0 + \end{bmatrix} \rp \rp \nonumber + \end{align} + Let $x \in \R$. Note that upon instantiation with $\rect$, the last two layers are: + \begin{align} + &\rect(W_Lx+b_L)-\rect(-W_Lx - b_L,0) \nonumber\\ + &=\max\{W_Lx+b_L,0\}-\max\{-W_Lx-b_L,0\} \nonumber \\ + &= W_Lx+b_L \label{7.2.8} + \end{align} +This, along with Case 1. i, implies that the uninstantiated last layer is equivalent to $(W_L,b_L)$ whence $\id_1\bullet \nu = \nu$. + +\textit{Case 1.iii:} Let $\nu = \lp \lp W_1,b_1\rp \rp$. Deriving from Definition \ref{7.2.1} and \ref{5.2.1} we have: +\begin{align} + \nu \bullet \id_1 &= \lp \lp \begin{bmatrix} + 1 \\-1 + \end{bmatrix}, \begin{bmatrix} + 0 \\0 + \end{bmatrix}\rp, \lp W_1\begin{bmatrix} + 1 \quad -1 + \end{bmatrix},W_1 \begin{bmatrix} + 0 + \end{bmatrix} + b_1\rp \rp \nonumber \\ + &= \lp \lp \begin{bmatrix} + 1 \\-1 + \end{bmatrix}, \begin{bmatrix} + 0 \\0 + \end{bmatrix}\rp, \lp \begin{bmatrix} + W_1 \quad -W_1 + \end{bmatrix}, b_1\rp \rp \nonumber +\end{align} +Let $x \in \R$. Upon instantiation with $\rect$ we have that: +\begin{align} + \lp \real_{\rect} \lp \nu \bullet \id_1 \rp \rp \lp x \rp &= \begin{bmatrix} + W_1 \quad -W_1 + \end{bmatrix} \rect \lp \begin{bmatrix} + x \\ -x + \end{bmatrix} \rp +b_1 \nonumber \\ + &= W_1\rect(x)-W_1\rect(-x) + b_1 \nonumber \\ + &=W_1 \lp \rect(x) - \rect(-x) \rp +b_1 \nonumber \\ + &=W_x+b_1 = \real_{\rect} \lp \nu \rp +\end{align} +\textit{Case 1.iv:} Let $\nu = \lp \lp W_1,b_1\rp , \lp W_2,b_2 \rp,...,\lp W_L, b_L \rp \rp $. Deriving from Definitions \ref{7.2.1} and \ref{5.2.1} we have that: +\begin{align} + \nu \bullet \id_1 = \lp \lp \begin{bmatrix} + 1 \\-1 + \end{bmatrix}, \begin{bmatrix} + 0 \\0 + \end{bmatrix}\rp, \lp \begin{bmatrix} + W_1 \quad -W_1 + \end{bmatrix}, b_1\rp, \lp W_2,b_2 \rp ,...,\lp W_L,b_L \rp \rp +\end{align} +Let $x \in \R$. Upon instantiation with $\rect$, we have that the first two layers are: +\begin{align} + &\begin{bmatrix} + W_1 \quad -W_1 + \end{bmatrix} \rect \lp \begin{bmatrix} + x \\ -x + \end{bmatrix} \rp +b_1 \nonumber \\ + &= W_1\rect(x)-W_1\rect(-x) + b_1 \nonumber \\ + &=W_1 \lp \rect(x) - \rect(-x) \rp + b_1 \nonumber \\ + &= W_1x+b_1 = \real_{\rect} \lp \nu \rp +\end{align} +This, along with Case 1. iii, implies that the uninstantiated first layer is equivalent $(W_1,b_1)$ whence we have that $\nu \bullet \id_1 = \nu$. + +Observe that Definitions \ref{5.2.5} and \ref{7.2.1} tells us that: + +\begin{align} + \boxminus^d_{i=1} \id_i = \lp \lp \overbrace{\begin{bmatrix} + \we_{\id_1,1} \\ + &&\ddots \\ + &&& \we_{\id_1,1} + \end{bmatrix}}^{d-many} , \mymathbb{0}_{2d}\rp, \lp \overbrace{\begin{bmatrix} + \we_{\id_1,2} \\ + && \ddots \\ + &&& \we_{\id_1,2} + \end{bmatrix}}^{d-many}, \mymathbb{0}_d\rp \rp \nonumber +\end{align} + +\textit{Case 2.i} Let $d \in \N \cap [1,\infty)$. Let $\nu \in \neu$ be $\nu = \lp W_1,b_1 \rp$ with end-widths $d$. Deriving from Definitions \ref{5.2.1} and \ref{7.2.1} we have: +\begin{align} + \id_d \bullet \nu = \lp \lp \begin{bmatrix} + \we_{\id_1,1} \\ + &&\ddots \\ + &&& \we_{\id_1,1} + \end{bmatrix}W_1 , \begin{bmatrix} + \we_{\id_1,1} \\ + &&\ddots \\ + &&& \we_{\id_1,1} + \end{bmatrix} b_1\rp, \right. \nonumber\\ \left. \lp \begin{bmatrix} + \we_{\id_1,2} \\ + && \ddots \\ + &&& \we_{\id_1,2} + \end{bmatrix}, \mymathbb{0}_d\rp \rp \nonumber \\ + = \lp \lp \begin{bmatrix} + [W_1]_{1,*} \\ + -[W_1]_{1,*} \\ + \vdots \\ + [W_1]_{d,*}\\ + -[W_1]_{d,*} + \end{bmatrix}, \begin{bmatrix} + [b_1]_1\\ + -[b_1]_1 \\ + \vdots \\ + [b_1]_d \\ + -[b_1]_d + \end{bmatrix} \rp, \lp \begin{bmatrix} + \we_{\id_1,2} \\ + && \ddots \\ + &&& \we_{\id_1,2} + \end{bmatrix}, \mymathbb{0}_d\rp \rp \nonumber +\end{align} +Let $x \in \R^d$. Upon instantiation with $\rect$ we have that: +\begin{align} + &\lp \real_{\rect} \lp \id_d \bullet \nu \rp \rp \lp x \rp \nonumber \\ &= \rect([W_1]_{1,*} \cdot x + [b_1]_1)-\rect(-[W_1]_{1,*}\cdot x -[b_1]_1)+\cdots \nonumber\\& +\rect([W_1]_{d,*}\cdot x+[b_1]_d)-\rect (-[W_1]_{d,*}\cdot x-[b_1]_d) \nonumber \\ + &= [W_1]_{1,*}\cdot x + [b_1]_1 + \cdots + [W_1]_{d,*}\cdot x + [b_1]_d \nonumber \\ + &= W_1x + b_1 = \real_{\rect} \lp \nu \rp \nonumber +\end{align} +\textit{Case 2.ii:} Let $\nu = \lp \lp W_1,b_1 \rp, \lp W_2,b_2 \rp, ..., \lp W_L, b_L \rp \rp $. Deriving from Definition \ref{7.2.1} and \ref{5.2.1} we have that: +\begin{align} + \id_d \bullet \nu =\lp \lp W_1,b_1\rp, \lp W_2, b_2 \rp,...,\lp W_{L-1},b_{L-1} \rp, \lp \begin{bmatrix} + [W_L]_{1,*} \\ + -[W_L]_{1,*}\\ + \vdots \\ + [W_L]_{d,*} \\ + -[W_L]_{d,*} + \end{bmatrix} ,\begin{bmatrix} + [b_L]_1 \\ + -[b_L]_1 \\ + \vdots \\ + [b_L]_d \\ + -[b_L]_d + \end{bmatrix} \rp ,\lp \begin{bmatrix} + 1 & -1 + \end{bmatrix}, \begin{bmatrix} + 0 + \end{bmatrix} \rp \rp \nonumber +\end{align} +Note that upon instantiation with $\rect$, the last two layers become: +\begin{align} + &\rect([W_L]_{1,*} \cdot x + [b_L]_1)-\rect(-[W_L]_{1,*}\cdot x -[b_L]_1)+\cdots \nonumber\\& +\rect([W_L]_{d,*}\cdot x+[b_L]_d)-\rect (-[W_L]_{d,*}\cdot x-[b_L]_d) \nonumber \\ + &=[W_L]_{1,*}\cdot x + [b_L]_1 + \cdots + [W_L]_{d,*}\cdot x + [b_L]_d \nonumber \\ + &= W_Lx + b_L +\end{align} +This, along with Case 2.i implies that the uninstantiated last layer is equivalent to $(W_L,b_L)$ whence $\id_d\bullet \nu = \nu$. + +\textit{Case 2.iii:} Let $\nu = \lp \lp W_1,b_1\rp \rp$. Deriving from Definition \ref{7.2.1} and \ref{5.2.1} we have: +\begin{align} + &\nu \bullet \id_d \nonumber\\ &= \lp \lp \begin{bmatrix} + \we_{\id_1,1} \\ + &&\ddots \\ + &&& \we_{\id_1,1} + \end{bmatrix}, \mymathbb{0}_{2d}\rp, \lp W_1\begin{bmatrix} + \we_{\id_1,2} \\ + &&\ddots \\ + &&& \we_{\id_1,2} + \end{bmatrix}, b_1\rp \rp \nonumber +\end{align} +Upon instantiation with $\rect$ we have that: +\begin{align} + &\lp \real_{\rect} \lp \nu \rp \rp \lp x \rp \\ &= \begin{bmatrix} + [W_1]_{*,1} \ -[W_1]_{*,1} \ \cdots \ [W_1]_{*,d} \ -[W_1]_{*,d} + \end{bmatrix}\rect \lp \begin{bmatrix} + [x]_1 \\ + -[x]_1 \\ + \vdots \\ + [x]_d \\ + -[x]_d + \end{bmatrix}\rp + b_1 \nonumber \\ + &= [W_1]_{*,1} \rect([x]_1) - [W_1]_{*,1} \rect(-[x]_1)+ \cdots +[W_1]_{*,d}\rect([x]_d)-[W_1]_{*,d}\rect(-[x]_d) + b_1 \nonumber \\ + &= [W_1]_{*,1}\cdot [x]_1 + \cdots + [W_1]_{*,d} \cdot [x]_d \nonumber \\ + &= W_1x+b_1 = \real_{\rect}(\nu) +\end{align} + +\textit{Case 2.iv:} Let $\nu = \lp \lp W_1,b_1 \rp, \lp W_2,b_2 \rp ,...,\lp W_L,b_L \rp \rp $. Deriving from Definitions \ref{7.2.1} and \ref{5.2.1} we have: +\begin{align} + &\nu \bullet \id_d \nonumber \\ = &\lp \lp \begin{bmatrix} + \we_{\id_1,1} \\ + &&\ddots \\ + &&& \we_{\id_1,1} + \end{bmatrix}, \mymathbb{0}_{2d}\rp, \lp \begin{bmatrix} + [W_1]_{*,1} \ -[W_1]_{*,1} \ \cdots \ [W_1]_{*,d} \ -[W_1]_{*,d} + \end{bmatrix}, b_1\rp,... \right. \nonumber \\ &\left.\lp W_2,b_2 \rp ,...,\lp W_L,b_L \rp \rp \nonumber +\end{align} +Upon instantiation with $\rect$, we have that the first two layers are: +\begin{align} + &\lp \real_{\rect} \lp \nu \rp \rp \lp x \rp \\ &= \begin{bmatrix} + [W_1]_{*,1} \ -[W_1]_{*,1} \ \cdots \ [W_1]_{*,d} \ -[W_1]_{*,d} + \end{bmatrix}\rect \lp \begin{bmatrix} + [x]_1 \\ + -[x]_1 \\ + \vdots \\ + [x]_d \\ + -[x]_d + \end{bmatrix}\rp + b_1 \nonumber \\ + &= [W_1]_{*,1} \rect([x]_1) - [W_1]_{*,1} \rect(-[x]_1)+ \cdots +[W_1]_{*,d}\rect([x]_d)-[W_1]_{*,d}\rect(-[x]_d) + b_1 \nonumber \\ + &= [W_1]_{*,1}\cdot [x]_1 + \cdots + [W_1]_{*,d} \cdot [x]_d \nonumber \\ + &= W_1x+b_1 +\end{align} +This, along with Case 2. iii, implies that the uninstantiated first layer is equivalent to $(W_L,b_L)$ whence $\id_d\bullet \nu = \nu$. + +This completes the proof. +\end{proof} +\begin{definition}[Monoid] + Given a set $X$ with binary operation $*$, we say that $X$ is a monoid under the operation $*$ if: + \begin{enumerate}[label = (\roman*)] + \item For all $x,y \in X$ it is the case that $x*y \in X$ + \item For all $x,y,z \in X$ it is the case that $(x *y)*z = x*(y*z)$ + \item The exists a unique element $e \in X$ such that $e*x=x*e = x$ + \end{enumerate} +\end{definition} +\begin{theorem} + Let $d\in \N$. For a fixed $d$, the set of all neural networks $\nu \in \neu$ with instantiations in $\rect$ and end-widths $d$ form a monoid under the operation of $\bullet$. +\end{theorem} +\begin{proof} + This is a consequence of Lemma \ref{7.2.3} and Lemma \ref{5.2.3}. +\end{proof} + +\begin{remark} + By analogy with matrices, we may find it helpful to refer to neural networks of end-widths $d$ as ``square neural networks of size $d$''. +\end{remark} +%\section{Modulus of Continuity} +%\begin{definition} +% Let $A\subseteq \R$ and let $f:A \rightarrow \R$. We denote the modulus of continuity $\omega_f: \lb 0,\infty \rb \rightarrow \lb 0,\infty \rb$ as the function given for all $h \in \lb 0,\infty \rb$ as: +% \begin{align}\label{9.3.1} +% \omega_f \lp h \rp = \sup \lp \left\{\left| f(x) - f(y)\right| \in \lb 0 ,\infty \rp : \lp x,y \in A, \left| x-y\right| \les h\rp \right\} \cup \left\{ 0\right\} \rp +% \end{align} +%\end{definition} +%\begin{lemma} +% Let $\alpha \in \lb -\infty, \infty \rb$, $b \in \lb a, \infty \rb$, and let $f: \lb a,b \rb \cap \R \rightarrow \R$ be a function. It is then the case that for all all $x,y \in \lb a,b\rb \cap \R$ that $\left| f(x) -f(y)\right| \les \omega_f \lp \left| x-y \right| \rp$. +%\end{lemma} +%\begin{proof} +% Note that (\ref{9.3.1}) implies the lemma. +%\end{proof} +%\begin{lemma}\label{lem:9.3.3} +% Let $A\subseteq \R$, $L \in \lb 0,\infty \rp$, and let $f:A \rightarrow \R$ satisfy for all $x,y \in A$ that $\left| f(x) - f(y)\right| \les L \left|x-y \right|$. It is then the case for all $h \in \lb 0,\infty \rp$ that $\omega_f(h) \les Lh$. +%\end{lemma} +%\begin{proof} +% Since it holds for all $x,y \in \R$ that $\left| f(x) - f(y)\right| \les L \left|x-y \right|$, it then, with (\ref{9.3.1}) imply for all $h \in \lb 0,\infty \rp$ that: +% \begin{align} +% \omega_f \lp h \rp &= \sup \lp \left\{\left| f(x) - f(y)\right| \in \lb 0 ,\infty \rp : \lp x,y \in A, \left| x-y\right| \les h\rp \right\} \cup \left\{ 0\right\} \rp \nonumber\\ +% &\les \sup \lp \left\{L\left|x -y\right| \in \lb 0 ,\infty \rp : \lp x,y \in A, \left| x-y\right| \les h\rp \right\} \cup \left\{ 0\right\} \rp \nonumber \\ +% &\les \sup \lp \left\{Lh,0 \right\} \rp = Lh +% \end{align} +% This completes the proof of the lemma. +%\end{proof} +%\section{Linear Interpolation of Real-Valued Functions} +%Note that we need a framework for approximating generic 1-dimensional continuous functions to approximate more complex functions. We introduce the linear interpolation operator and later see how neural networks can approximate 1-dimensional continuous functions to arbitrary precision. +% +%\subsection{The Linear Interpolation Operator} +%\begin{definition}[Linear Interpolation Operator]\label{lio} +% Let $n \in \N$, $x_0,x_1,...,x_n, y_0,y_1,...,y_n \in \R$. Let it also be the case that $x_0 \leqslant x_1 \leqslant \cdots \leqslant x_n$. We denote by $\lin^{y_0,y_1,...,y_n}_{x_0,x_1,...,x_n}: \R \rightarrow \R$, the function that satisfies for $i \in \{1,2,...,n\}$, and for all $w \in \lp -\infty, x_0 \rp$, $x \in [ x_{i-1},x_i )$, $z \in [ x_n, \infty)$ that: +% \begin{enumerate}[label = (\roman*)] +% \item $\lin^{y_0,y_1,...,y_n}_{x_0,x_1,...,x_n}\lp w \rp = y_0$ +% \item $\lin^{y_0,y_1,...,y_n}_{x_0,x_1,...,x_n}\lp x \rp = y_{i-1} + \frac{y_i-y_{i-1}}{x_i-x_{i-1}}\lp x- x_{i-1} \rp $ +% \item $\lin^{y_0,y_1,...,y_n}_{x_0,x_1,...,x_n}\lp z \rp = y_n$ +% \end{enumerate} +%\end{definition} +%\begin{lemma} +% Let $n\in \N$, $x_0,x_1,...,x_n,y_0,y_1,...,y_n \in \R$ with $x_0 \les x_1 \les \cdots \les x_n$, it is then the case that: +% \begin{enumerate}[label = (\roman*)] +% \item for all $i \in \{0,1,...,n\}$ that: +% \begin{align}\label{7.3.1} +% \lp \lin^{y_0,y_1,...,y_n}_{x_0,x_1,...,x_n} \rp \lp x_i \rp = y_i +% \end{align} +% \item for all $i\in \{0,1,...,n\}$ and $x \in [x_{i-1},x_{i}]$ that: +% \begin{align}\label{7.3.2} +% \lp \lin^{y_0,y_1,...,y_n}_{x_0,x_1,...,x_n} \rp \lp x \rp = \lp \frac{x_i-x}{x_i - x_{i-1}} \rp y_{i-1} + \lp \frac{x-x_{i-1}}{x_i-x_{i-1}} \rp y_i +% \end{align} +% \end{enumerate} +%\end{lemma} +%\begin{proof} +% Note that (\ref{7.3.1}) is a direct consequence of Definition \ref{lio}. Item (i) then implies for all $i \in \{1,2,...,n\}$ $x \in [x_{i-1},x_i]$ that: +% \begin{align} +% \lp \lin^{y_0,y_1,...,y_n}_{x_0,x_1,...,x_n} \rp \lp x \rp &= \lb \lp \frac{x_i-x_{i-1}}{x_i-x_{i-1}} \rp - \lp \frac{x-x_{i-1}}{x_i-x_{i-1}} \rp \rb y_{i-1} + \lp \frac{x-x_{i-1}}{x_i-x_{i-1}}\rp y_i \nonumber \\ +% &= \lp \frac{x_i-x}{x_i-x_{i-1}} \rp y_{i-1} + \lp \frac{x-x_{i-1}}{x_i-x_{i-1}} \rp y_i \nonumber +% \end{align} +%\end{proof} +%\begin{lemma}\label{lem:9.4.3} +% Let $N\in \N$, $L,x_0,x_1,...,x_N \in \R$ satisfy $x_0 < x_1 < \cdots < x_N$, and set let $f:\lb x_0,x_N \rb \rightarrow \R$ satisfy for all $x,y \in \lb x_0,x_N\rb$ that $\left| f(x)-f(y)\right| \les L \left| x-y\right|$, it is then the case that: +% \begin{enumerate}[label = (\roman*)] +% \item for all $x,y \in \R$ that: +% \begin{align} +% \left| \lp \lin^{f(x_0),f(x_1),...,f(x_N)}_{x_0,x_1,...,x_N}\rp \lp x \rp - \lp \lin^{f(x_0),f(x_1),...,f(x_N)}_{x_0,x_1,...,x_N}\rp \lp y \rp \right| \les L \left| x-y \right| +% \end{align}, and +% \item that: +% \begin{align} +% \sup_{x \in \lb x_0,x_N \rb }\left| \lp \lin^{f(x_0),f(x_1),...,f(x_N)}_{x_1,x_2,...,x_N}\rp \lp x \rp -f\lp x \rp\right| \les L \lp \max_{i \in \{ 1,2,...N\}} \left| x_i-x_{i-1}\right|\rp +% \end{align} +% \end{enumerate} +%\end{lemma} +%\begin{proof} +% The assumption that for all $x,y \in \lb x_0, x_k \rb$ it is the case that $\left| f(x) - f(y) \right| \les L \left| x-y\right|$ and Lemma \ref{lem:9.3.3} prove Item (i) and Item (ii). +%\end{proof} +%\subsection{Neural Networks to Approximate the $\lin$ Operator} +%\begin{lemma}\label{7.3.3} +% Let $\alpha,\beta,h \in \R$. Denote by $\relu \in \neu$ the neural network given by $\relu = h \circledast \lp \mathsf{i}_1 \bullet \aff_{\alpha,\beta}\rp $. It is then the case that: +% \begin{enumerate}[label = (\roman*)] +% \item $\relu = \lp \lp \alpha, \beta \rp , \lp h,0 \rp \rp$ +% \item $\lay(\relu) = \lp 1,1,1 \rp \in \N^3$. +% \item $\real_{\rect}\lp \relu \rp \in C \lp \R, \R \rp$ +% \item for all $x \in \R$ that $\lp \real_{\rect} \lp \relu \rp \rp \lp x \rp = h\max \{\alpha x+\beta ,0\}$ +% \end{enumerate} +%\end{lemma} +%\begin{proof} +% Note that by Definition \ref{5.3.1} we know that $\aff_{\alpha,\beta} = \lp \lp \alpha,\beta \rp \rp$, this with Definition \ref{actnn}, and Definition \ref{5.2.1} together tell us that $\mathfrak{i}_1\bullet \aff_{\alpha,\beta} = \lp \alpha,\beta \rp$. A further application of Definition \ref{5.2.1}, and an application of Definition \ref{slm} yields that $h \circledast \lp \mathfrak{i}_1 \bullet \aff_{\alpha,\beta} \rp = \lp \lp \alpha,\beta \rp, \lp h ,0 \rp \rp$. This proves Item (i). +% +% Note that $\lay(\aff_{\alpha,\beta})= (1,1)$, $\lay(\mathfrak{i}_1) = \lp 1,1,1 \rp $, and $\lay(h)=1$. Item (i) of Lemma \ref{6.0.3} therefore tells us that $\lay (\relu) = \lay \lp h \circledast \lp \mathfrak{i}_1 \bullet \aff_{\alpha,\beta}\rp \rp$. This proves Item (ii). +% +% Note that Lemmas \ref{7.1.2} and \ref{6.0.3} tell us that: +% \begin{align} +% \forall x\in \R: \lp \real_{\rect}\lp \mathfrak{i}_1 \bullet \aff_{\alpha,\beta} \rp \rp \lp x \rp = \rect \lp \real_{\rect} \rp \lp x \rp = \max\{ \alpha x+ \beta \} +% \end{align} +% This and Lemma \ref{slm} ensures that $\real_{\rect}\lp \relu \rp \in C\lp \R, \R \rp$ and further that: +% \begin{align} +% \lp \real_{\rect} \lp \relu \rp \rp \lp x \rp = h \lp \lp \real_{\rect}\lp \mathfrak{i}_1\bullet \aff_{\alpha,\beta} \rp \rp \lp x\rp \rp = h\max\{\alpha x+\beta,0 \} +% \end{align} +% This proves Item (iii)-(iv). This completes the proof of the lemma. +%\end{proof} +%\begin{lemma}\label{9.3.4} +% Let $N\in \N$, $x_0,x_1,...,x_N,y_0,y_1,...,y_N \in \R$ and further that $x_0 \les x_2 \les \cdots \les x_N$. Let $\Phi \in \neu$ satisfy that: +% \begin{align}\label{7.3.5} +% \Phi = \aff_{1,y_0} \bullet \lp \bigoplus^N_{i=0} \lb \lp \frac{y_{\min\{i+1,N\}}-y_i}{x_{\min\{i+1,N\}}-x_{\min\{i,N-1\}}}- \frac{y_i-y_{\max\{i-1,0\}}}{x_{\max\{i,1\}}-x_{\max\{i-1,0\}}}\rp \circledast \lp \mathfrak{i}_1\bullet \aff_{1,-x_i} \rp \rb \rp +% \end{align} +% It is then the case that: +% \begin{enumerate}[label=(\roman*)] +% \item $\lay(\Phi)= \lp 1,N+1,1 \rp \in \N^3$ +% \item $\real_{\rect} \lp \Phi \rp \in C \lp \R, \R \rp$ +% \item $\lp \real_{\rect} \lp \Phi \rp \rp \lp x \rp= \lin ^{y_0,y_1,...,y_N}_{x_0,x_1,...,x_N}\lp x \rp$ +% \item $\param(\Phi) = 3N+4$ +% \end{enumerate} +%\end{lemma} +%\begin{proof} +% For notational convenience, let it be the case that for all $i \in \{0,1,2,..., N\}$: +% \begin{align}\label{7.3.6} +% h_i = \frac{y_{\min\{i+1,N\}}-y_i}{x_{\min\{i+1,N\}}-x_{\min\{i,N-1\}}}- \frac{y_i-y_{\max\{i-1,0\}}}{x_{\max\{i,1\}}-x_{\max\{i-1,0\}}} +% \end{align} +% Note that $\lay \lp \mathfrak{i}_1 \bullet \aff_{1,-x_0} \rp= \lp1,1,1 \rp$, and further that for all $i\in \{0,1,2,...,N\}$, $h_i \in \R$. Lemma \ref{7.3.3} then tells us that for all $i \in \{0,1,2,...,N\}$, $\lay \lp h_i \circledast \lp \mathfrak{i}_1 \bullet \aff_{1,-x_i} \rp \rp = \lp 1,1,1 \rp $, $\real_{\rect}\lp h_i \circledast \lp \mathfrak{i}_1 \bullet \aff_{1,-x_i} \rp \rp \in C \lp \R,\R \rp$, and that $ \lp \real_{\act} \lp h_i \circledast \lp \mathfrak{i}_1 \bullet \aff_{1,-x_i} \rp \rp \rp \lp x \rp = h_i \max\{x-x_k,0 \}$. This, (\ref{7.3.5}), Lemma \ref{5.3.3}, and \cite[Lemma~3.28]{Grohs_2022} ensure that $\lay(\Phi) = \lp 1,N+1,1 \rp \in \N^3$ and that $\real_{\rect} \lp \Phi \rp \in C \lp \R, \R \rp$ establishing Items (i)--(ii). +% +% In addition, note that Item (i) and (\ref{widthdef}), tell us that: +% \begin{align} +%% NOTE: Ask Dr. P about this parameter +% \param(\Phi) = \overbrace{(N+1)}^{W_1}+\underbrace{(N+1)}_{b_1}+\overbrace{(N+1)}^{W_2}+\underbrace{1}_{b_2} =3N+4 +% \end{align} +% Which proves Item (iv). For all $i \in \{0,1,2,...,N\}$, let $\phi_i$ be $\phi_i = h_i \circledast \lp \mathfrak{i} \bullet \aff_{1,-x_i} \rp $. Next note that \ref{7.3.6}, Lemma \ref{5.3.3}, and \cite[Lemma~3.28]{Grohs_2022} then tell us that: +% \begin{align}\label{7.3.8} +% \lp \real_{\rect} \lp \Phi \rp \rp \lp x \rp = y_0 + \sum^n_{i=1} \lp \real_{\act} \lp \phi_i \rp \rp\lp x \rp = y_0 + \sum^n_{i=1}h_i \max\{x-x_i,0\} +% \end{align} +% Since $x_0 \les x_i$ for all $i\in\{1,2,...,n\}$, it then is the case for all $x \in (\infty, x_0]$ that: +% \begin{align}\label{7.3.10.2} +% \lp \real_{\rect} \lp \Phi \rp \rp \lp x \rp = y_0+0 = y_0 +% \end{align} +% \begin{claim} +% For all $i \in \{1,2,...,N\}$ it is the case that : +% \begin{align}\label{7.3.10} +% \sum_{j=0}^{i-1}h_j = \frac{y_{i}-y_{i-1}}{x_i-x_{i-1}} +% \end{align} +% \end{claim} +% We prove this claim by induction. For the base case of $i=1$, we have: +% \begin{align} +% \sum^0_{j=0} h_0 = h_0 = \frac{y_{1}-y_0}{x_{1}-x_{0}}- \frac{y_0-y_{0}}{x_{1}-x_{0}} =\frac{y_1-y_0}{x_1-x_0} +% \end{align} +% This proves the base base for (\ref{7.3.10}). Assume next that this holds for $k$, for the $(k+1)$-th induction step we have: +% \begin{align} +% \sum^{k+1}_{j=0}h_j = \sum^k_{j=0}h_j + h_{k+1} &=\frac{y_k-y_{k-1}}{x_k-x_{k-1}}+h_{k+1} \nonumber\\ +% &= \frac{y_k-y_{k-1}}{x_k-x_{k-1}} + \frac{y_{k+2}-y_{k-1}}{x_{k+2}-x_{k+1}} - \frac{y_{k+1}-y_{k}}{x_{k+1} - x_k} \nonumber\\ +% &= \frac{y_{k+1}-y_k}{x_{k+1}-x_k} +% \end{align} +%%TODO: Double-check this proof +%This proves (\ref{7.3.10}). In addition, note that (\ref{7.3.8}), (\ref{7.3.10}), and the fact that for all $i \in \{1,2,...,n\}$ it is the case that $x_{i-1} \les x_{i}$ tells us that for all $i \in \{1,2,...,n\}$ and $x \in [x_{i-1},x_i]$ it is the case that: +% \begin{align}\label{7.3.13} +% &\lp \real_{\rect}\lp \Phi \rp \rp \lp x \rp - \lp \real_{\act}\lp \Phi \rp \rp \lp x_{i-1}\rp = \sum^n_{j=0} h_j \lp \max \{ x-x_j,0 \}-\max \{x_{i-1}-x_j,0\} \rp \nonumber\\ +% &= \sum^{i-1}_{j=0}c_j \lb \lp x-x_j \rp -\lp x_{i-1}-x_j \rp \rb = \sum^{i-1}_{j=0} c_j \lp x - x_{i-1} \rp = \lp \frac{y_i-y_{i-1}}{x_i-x_{i-1}}\rp \lp x-x_{i-1} \rp +% \end{align} +% \begin{claim} +% For all $i \in \{1,2,...,N\}$, $x\in [x_{i-1},x_i]$ it is the case that: +% \begin{align}\label{7.3.14} +% \lp \real_{\rect} \lp \Phi \rp \rp \lp x \rp = y_{i-1}+ \lp \frac{y_i-y_{i-1}}{x_i-x_{i-1}} \rp \lp x - x_{i-1} \rp +% \end{align} +% \end{claim} +% We will prove this claim by induction. For the base case of $i=1$, (\ref{7.3.13}) and (\ref{7.3.10}) tell us that: +% \begin{align} +% \lp \real_{\rect} \lp \Phi \rp \rp \lp x \rp &=\lp \real_{\rect} \lp \Phi \rp \rp \lp x \rp - \lp \real_{\rect}\lp \Phi \rp \rp \lp x_{i-1} \rp + \lp \real_{\rect}\lp \Phi \rp \rp \lp x_{i-1} \rp \nonumber \\ +% &= y_0 + \lp \frac{y_1-y_0}{x_i-x_{i-1}} \rp \lp x - x_{i-1} \rp +% \end{align} +% For the induction step notice that (\ref{7.3.13}) implies that for all $i \in \{2,3,...,N\}$, $x \in [x_{i-1},x_i]$, with the instantiation that $\forall x \in [x_{i-2},x_{i-1}]: \lp \real_{\rect} \lp \Phi \rp \rp \lp x \rp = y_{i-2} + \lp \frac{y_{i-1}-y_{i-2}}{x_{i-1}-x_{i-2}} \rp \lp x-x_{i-2} \rp $, it is then the case that: +% \begin{align} +% \lp \real_{\rect} \lp \Phi \rp \rp \lp x \rp &= \lp \real_{\rect} \lp \Phi \rp \rp \lp x_{i-1}\rp + \lp \real_{\rect} \lp \Phi \rp \rp \lp x \rp - \lp \real_{\rect} \lp \Phi \rp \rp \lp x_{i-1} \rp \nonumber\\ +% &=y_{i-2} + \lp \frac{y_{i-1}-y_{i-2}}{x_{i-1}-x_{i-2}} \rp \lp x_{i-1}+x_{i-2} \rp + \lp \frac{y_i-y_{i-1}}{x_i-x_{i-1}} \rp \lp x - x_{i-1} \rp \nonumber\\ +% &= y_{i-1} + \lp \frac{y_i-y_{i-1}}{x_i-x_{i-1}} \rp \lp x-x_{i-1} \rp +% \end{align} +% Thus induction proves (\ref{7.3.14}). Furthermore note that (\ref{7.3.10}) and (\ref{7.3.6}) tell us that: +% \begin{align} +% \sum^N_{i=0} h_i = c_N +\sum^{N-1}_{i=0}h_i = -\frac{y_N-y_{N-1}}{x_N-x_{N-1}}+\frac{y_N-y_{N-1}}{x_N-x_{N-1}} = 0 +% \end{align} +% The fact that $\forall i \in \{0,1,...,N\}:x_i \les x_N$, together with (\ref{7.3.8}) imply for all $x \in [x_N,\infty)$ that: +% \begin{align} +% \lp \real_{\rect} \lp \Phi \rp \rp \lp x \rp - \lp \real_{\rect} \lp \Phi \rp \rp \lp x_N \rp &= \lb \sum^N_{i=0} h_i \lp \max\{x-x_i,0\}-\max\{x_N-x_i,0\} \rp \rb \nonumber\\ +% &= \sum^N_{i=0} h_i \lb \lp x- x_i \rp - \lp x_N - r_i \rp \rb = \sum^N_{i=0} h_i \lp x - x_N \rp =0 \nonumber +% \end{align} +% This and (\ref{7.3.14}) tells us that for all $x \in [x_N,\infty)$ we have: +% \begin{align} +% \lp \real_{\rect} \lp \Phi \rp \rp \lp x \rp = \lp \real_{\rect} \lp \Phi \rp \rp \lp x_N \rp = y_{N-1}+ \lp \frac{y_N-y_{N-1}}{x_N - x_{N-1}} \rp \lp x_N-x_{N-1} \rp = x_N +% \end{align} +% Together with (\ref{7.3.10.2}), (\ref{7.3.14}), and Definition \ref{lio} establishes Item (iii) thus proving the lemma. +% \end{proof} +%\section{Neural Network Approximations of 1-dimensional Functions.} +% +%\begin{lemma}\label{lem:9.5.1} +% Let $N\in \N$, $L. a. x_0,x_1,...,x_N \in \R$, $b\in \lp a,\infty \rp$, satisfy for all $i \in \left\{0,1,...,N\right\}$ that $x_i = a+ \frac{i(b-a)}{N}$. Let $f:\lb a,b\rb \rightarrow \R$ satisfy for all $x,y \in \lb a,b\rb$ that $\left|f(x) - f(y) \right| \les L\left|x-y\right|$ and let $\mathsf{F} \in \neu$ satisfy: +% \begin{align} +% \F = \aff_{1,f(x_0)}\bullet \lb\bigoplus^N_{i=0} \lp \lp \frac{N \lp f \lp x_{\min \{i+1,N\}}\rp-2f\lp x_i\rp + f \lp x_{\max \{ i-1,0 \}}\rp\rp}{b-a}\rp \circledast \lp \mathsf{i}_1 \bullet \aff_{1,-x_k} \rp\rp \rb +% \end{align} +% It is then the case that: +% \begin{enumerate}[label = (\roman*)] +% \item $\lay \lp \F \rp = \lp 1, N+1,1\rp$ +% \item $\real_{\rect} \lp \F \rp\in C\lp \R, \R \rp$ +% \item $\real_{\rect} \lp \F \rp = \lin ^{f(x_0),f(x_1),...,f(x_N)}_{x_1,x_2,...,x_N}$ +% \item it holds that for all $x,y \in \R$ that $\left| \lp \real_{\rect} \lp \F \rp \rp \lp x \rp -\lp \real_{\rect} \lp \F \rp\rp\lp y \rp \right| \les L \left| x-y \right|$ +% \item it holds that $\sup_{x \in \lb a,b \rb} \left| \lp \real_{\rect} \lp \F \rp \rp\lp x\rp -f(x)\right| \les \frac{L \lp b-a\rp}{N}$, and +% \item $\param\lp \F \rp = 3N+4$. +% \end{enumerate} +%\end{lemma} +%\begin{proof} +% Note that since it is the case that for all $i \in \left\{0,1,...,N \right\}: x_{\min \{i+1,N\}} - x_{\min \{i, N-1\}} = x_{\max\{i,1\}} - x_{\max \{i-1,0\}} = \frac{b-a}{N}$, we have that: +% \begin{align} +% \frac{f\lp x_{\min\{i+1,N\}}\rp- f \lp x_i \rp}{x_{\min \{ i+1,N\}}-x_{\min \{i,N-1\}}} - \frac{f(x_i)-f\lp x_{\max\{i-1,0\}}\rp}{x_{\max \{ i,1\}}-x_{\max \{i-1,0\}}} = \frac{N \lp f \lp x_{\min \{i+1,N\}}\rp -2f\lp x_i \rp +f\lp x_{\max \{ i-1,0\}}\rp\rp}{b-a} +% \end{align} +% Thus Items (i)-(iv) of Lemma \ref{9.3.4} prove Items (i)-(iii), and (vi) of this lemma. Item (iii) combined with the assumption that for all $x,y \in \lb a,b \rb: \left| f(x) - f(y) \right| \les \left| x-y \right|$ and Item (i) in Lemma \ref{lem:9.4.3} establish Item (iv). Furthermore, note that Item (iii), the assumption that for all $x,y \in \lb a,b \rb: \left| f(x) -f(y)\right| \les L\left| x-y\right|$, Item (ii) in Lemma \ref{lem:9.4.3} and the fact that for all $i \in \{1,2,..., N\}: x_i-x_{i-1} = \frac{b-a}{N}$ demonstrate for all $x \in \lb a,b \rb$ it holds that: +% \begin{align} +% \left| \lp \real_{\rect} \lp \F \rp\rp \lp x \rp -f\lp x \rp \right| \les L \lp \max_{i \in \{1,2,...,N\}} \left| x_i - x_{i-1}\right|\rp = \frac{L(b-a)}{N} +% \end{align} +%\end{proof} +%\begin{lemma}\label{lem:9.5.2} +% Let $L,a \in \R$, $b\in \lb a, \infty \rp$, $\xi \in \lb a,b \rb$, let $f: \lb a,b \rb \rightarrow \R$ satisfy for all $x,y \in \lb a,b \rb$ that $\left| f(x) - f(y) \right| \les L\left|x-y \right|$, and let $\F \in \neu$ satisfy $\F = \aff_{1,f(\xi)} \bullet \lp 0 \circledast \lp \mathsf{i}_1 \bullet \aff_{1,-\xi} \rp \rp $, it is then the case that: +% \begin{enumerate}[label = (\roman*)] +% \item $\lay \lp \F \rp = \lp 1,1,1 \rp$ +% \item $\real_{\rect} \lp \F \rp \in C \lp \R, \R \rp$ +% \item for all $x \in \R$, we have $\lp \real_{\rect}\lp \F \rp \rp \lp x \rp = f \lp \xi \rp$ +% \item $\sup_{x \in \lb a,b\rb} \left| \lp \real_{\rect} \lp \F \rp \rp\lp x \rp -f(x)\right| \les L \max \{ \xi -a, b-\xi\}$ +% \item $\param \lp \F \rp = 4$ +% \end{enumerate} +%\end{lemma} +% +%\begin{proof} +% Note that Item (i) is a consequence of the fact that $\aff_{1,-\xi}$ is a neural network with a real number as weight and a real number as a bias and the fact that $\lay \lp \mathsf{i}_1 \rp = \lp 1,1,1 \rp$. Note also that Item (iii) of Lemma \ref{7.3.3} proves Item (iii). +% +% Note that from the construction of $\aff$ we have that: +% \begin{align}\label{(9.5.4)} +% \lp \real_{\rect} \lp \F \rp\rp \lp x \rp &= \lp \real_{\rect} \lp 0 \circledast \lp \mathsf{i}_1 \bullet \aff_{1,-\xi}\rp\rp \rp \lp x \rp + f \lp \xi \rp \nonumber \\ +% &= 0 \lp \lp \real_{\rect} \lp \mathsf{i}_1 \bullet \aff_{1,-\xi} \rp\rp \lp x \rp \rp + f \lp \xi \rp = f \lp \xi \rp +% \end{align} +% Which establishes Item (iii). Note that (\ref{(9.5.4)}), the fact that $\xi \in \lb a,b\rb$ and the fact that for all $x,y \in \lb a,b \rb$ it is the case that $\left| f(x) - f(y) \right| \les \left| x-y \right|$ give us that for all $x \in \lb a,b \rb$ it holds that: +% \begin{align} +% \left| \lp \real_{\rect} \lp \F \rp\rp \lp x \rp - f\lp x \rp\right| = \left| f\lp \xi \rp - f \lp x \rp\right| \les L \left| x- \xi \right| \les L \max\left\{ \xi -a, b-\xi \right\} +% \end{align} +% This establishes Item (iv). Note a simple parameter count yields the following: +% \begin{align} +% \param \lp \F \rp = 1(1+1)+1(1+1) = 4 +% \end{align} +% Establishing Item (v) and hence the lemma. This completes the proof. +%\end{proof} +%\begin{corollary} +% Let $\ve \in (0,\infty)$, $L,a \in \R$, $b \in \lp a,\infty \rp$, $N \in \N_0 \cap \lb \frac{L(b-a)}{\ve}, \frac{L(b-a)}{\ve}+1\rb$, $x_0, x_1,...,x_N \in \R$ satisfy for all $i \in \{ 0,1,...,N\}$ that $x_i = a + \frac{i(b-a)}{\max\{N,1\}}$, let $f: \lb a,b \rb \rightarrow \R$ satisfy for all $x,y \in \lb a,b \rb$ that $\left| f(x) - f(y) \rb \les L\left| x-y \right|$, and let $\F \in \neu$ satisfy: +% \begin{align} +% \F = \aff_{1,f(x_0)}\bullet \lb\bigoplus^N_{i=0} \lp \lp \frac{N \lp f \lp x_{\min \{i+1,N\}}\rp-2f\lp x_i\rp + f \lp x_{\max \{ i-1,0 \}}\rp\rp}{b-a}\rp \circledast \lp \mathsf{i}_1 \bullet \aff_{1,-x_k} \rp\rp \rb +% \end{align} +% It is then the case that: +% \begin{enumerate}[label = (\roman*)] +% \item $\lay\lp \F \rp = \lp 1,N+1,1 \rp$ +% \item $\real_{\rect} \lp \F \rp \in C \lp \R, \R \rp$ +% \item for all $x,y \in \R$ that $\left| \lp \real_{\rect} \lp \F \rp \rp \lp x \rp - \lp \real_{\rect} \lp \F \rp \rp \lp x \rp \right| \les L \left| x-y \right|$ +% \item $\sup_{x \in \lb a,b \rb} \left| \lp \real_{\rect} \lp \F \rp \rp \lp x \rp -f(x) \right| \les \frac{L(b-a)}{\max \{N,1\}} \les \ve$, and +% \item $\param \lp \F \rp = 3N+4 \les 3L \lb \frac{b-a}{\ve} \rb +7$. +% \end{enumerate} +%\end{corollary} +%\begin{proof} +% The fact that $N \in \N_0 \cap \lb \frac{L(b-a)}{\ve}, \frac{L(b-a)}{\ve}+1 \rb$ ensures that $\frac{L(b-a)}{\max\{ K,1\}} \les \ve$. This and Items (i),(ii),(iv), and (v) in Lemma \ref{lem:9.5.1} and Items (i)-(iii), and (iv) of Lemma $\ref{lem:9.5.2}$ establishes Items (i)-(iv). Furthermore, note that since $N\les 1 + \frac{L(b-a)}{\ve}$, Item (vi) in Lemma \ref{lem:9.5.1} and Item (v) in Lemma \ref{lem:9.5.2} tells us that: +% \begin{align} +% \param \lp \F\rp = 3N+4 \les \frac{3L\lp b-a \rp}{\ve} + 7. +% \end{align} +% Which establishes Item (v) and proves the result. +%\end{proof} +\section{$\trp^h$, $\etr^{n,h}$ and Neural Network Approximations For the Trapezoidal Rule.} +\begin{definition}[The $\trp$ neural network] + Let $h \in \R_{\ges 0}$. We define the $\trp^h \in \neu$ neural network as: + \begin{align} + \trp^h \coloneqq \aff_{\lb \frac{h}{2} \: \frac{h}{2}\rb,0} + \end{align} +\end{definition} +\begin{lemma} + Let $h\in \lp -\infty, \infty\rp$. It is then the case that: + \begin{enumerate}[label = (\roman*)] + \item for $x = \{x_1,x_2\} \in \R^2$ that $\lp \real_{\rect} \lp \trp^h \rp \rp \lp x \rp \in C \lp \R^2, \R \rp$ + \item for $x = \{x_1,x_2 \} \in \R^2$ that $\lp \real_{\rect} \lp \trp^h \rp \rp \lp x \rp = \frac{1}{2}h \lp x_1+x_2 \rp$ + \item $\dep \lp \trp^h \rp = 1$ + \item $\param\lp \trp^h \rp = 3$ + \item $\lay \lp \trp^h \rp = \lp 2,1 \rp$ + \end{enumerate} +\end{lemma} +\begin{proof} + This a straight-forward consequence of Lemma \ref{5.3.1} +\end{proof} +\begin{definition}[The $\etr$ neural network] + Let $n\in \N$ and $h \in \R_{\ges 0}$. We define the neural network $\etr^{n,h} \in \neu$ as: + \begin{align} + \etr^{n,h} \coloneqq \aff_{\underbrace{\lb \frac{h}{2} \ h \ h\ ... \ h \ \frac{h}{2}\rb}_{n+1-many},0} + \end{align} +\end{definition} +\begin{lemma}\label{etr_prop} + Let $n\in \N$. Let $x_0 \in \lp -\infty, \infty \rp$, and $x_n \in \lb x_0, \infty \rp$. Let $ x = \lb x_0 \: x_1 \:...\: x_n\rb \in \R^{n+1}$ and $h\in \lp -\infty, \infty\rp$ such that for all $i \in \{0,1,...,n\}$ it is the case that $x_i = x_0+i\cdot h$. Then: + \begin{enumerate}[label = (\roman*)] + \item for all $x \in \R^{n+1}$ it is the case that $\lp \real_{\rect} \lp \etr^{n,h} \rp \rp \lp x \rp \in C \lp \R^{n+1}, \R \rp$ + \item for all $n\in \N$, and $h\in \lp 0,\infty\rp$ it is the case that $\lp \real_{\rect} \lp \etr^{n,h} \rp \rp \lp x \rp = \frac{h}{2} \cdot x_0+h\cdot x_1 + \cdots + h\cdot x_{n-1} + \frac{h}{2}\cdot x_n$ + \item for all $n \in \N$, and $h \in \lp 0,\infty \rp$ it is the case that $\dep \lp \etr^{n,h} \rp = 1$ + \item for all $n \in \N$ and $h \in \lp 0,\infty\rp$ it is the case that $\param\lp \etr^{n,h} \rp = n+2$ + \item for all $n\in \N$ and $h \in \lp 0,\infty\rp$ it is the case that $\lay \lp \etr^{n,h} \rp = \lp n+1,1 \rp$ + \end{enumerate} +\end{lemma} +\begin{proof} + This a straightforward consequence of Lemma \ref{5.3.1}. +\end{proof} +\begin{remark} + Let $h \in \lp 0,\infty\rp$. Note then that $\trp^h$ is simply $\etr^{2,h}$. +\end{remark} +%\begin{lemma} +% Let $f \in C \lp \R, \R \rp$, $a\in \R, b \in \lb a,\infty\rp$, $N\in \N$, and let $h = \frac{b-a}{N}$. Assume also that $f$ has first and second derivatives almost everywhere. Let $ x = \lb x_0 \: x_1 \:...\: x_n\rb \in \R^{n+1}$ such that for all $i \in \{0,1,...,n\}$ it is the case that $x_i = x_0+i\cdot h$, as such let it also be the case that $f\lp \lb x \rb_{*,*}\rp = \lb f(x_0)\: f(x_1) \: \cdots f(x_n) \rb$. Let $a = x_0$ and $b = x_n$. It is then the case that: +% \begin{align}\label{(9.6.3)} +% \left| \int^b_a f\lp x \rp dx - \lp \real_{\rect}\lp \etr^{n,h} \rp\rp \lp f\lp \lb x \rb_{*,*}\rp\rp \right| \les \frac{\lp b-a \rp^3}{12N^2} f''\lp \xi \rp +% \end{align} +% Where $\xi \in \lb a,b \rb$. +%\end{lemma} +%\begin{proof} +% Consider the fact that we may express the left-hand side of (\ref{(9.6.3)}) as: +% \begin{align} +% \left| \int^b_af dx - \lp \real_{\rect}\lp \etr^{n,h} \rp\rp \lp x \rp \right| = \left| \sum_{i=1}^n \lb \int^{x_i}_{x_{i-1}} f\lp x \rp dx-\frac{h}{2}\lp f\lp x_{i-1} \rp + f\lp x_i\rp\rp \rb \right| +% \end{align} +% We then denote by $L_i$ the error at sub-interval $\lb x_{i-1},x_i \rb$ as given by: +% \begin{align} +% L_i = \left| \int^{x_i}_{x_{i-1}}f\lp x \rp dx - \frac{h}{2}\lp f\lp x_{i-1}\rp -f\lp x_i \rp \rp \right| +% \end{align} +% Furthermore, we denote $c_i = \frac{x_{i-1}+x_i}{2}$ as the midpoint of the interval $\lb x_{i-1}, x_i\rb$, which yields the observation that: +% \begin{align}\label{(9.6.6)} +% c_i-x_{i-1} = x_i - c_i = \frac{b-a}{2N} +% \end{align} +% Integration by parts and (\ref{(9.6.6)}) then yields that: +% \begin{align} +% \int^{x_i}_{x_{i-1}}\lp t- c_i\rp f' \lp t \rp dt &= \int^{x_i}_{x_{i-1}} \lp t-c_i\rp df\lp t \rp \nonumber \\ +% &= \lp x_i -c_i \rp f\lp x_i \rp - \lp x_{i-1} - c_i\rp f \lp x_{i-1}\rp - \int^{x_i}_{x_{i-1}}f \lp t \rp dt \nonumber \\ +% &= \frac{b-a}{2N} \lp f\lp x_{i}\rp - f\lp x_{i-1}\rp\rp - \int^{x_i}_{x_{i-1}}f\lp t \rp dt = L_i +% \end{align} +% Whence we have: +% \begin{align} +% L_i = \int^{x_i}_{x_{i-1}}\lp t-c_i\rp f'\lp t\rp dt +% \end{align} +% Integration by parts, (\ref{(9.6.6)}), and the Fundamental Theorem of Calculus then gives us: +% \begin{align} +% L_i &= \int^{x_i}_{x_{i-1}} f' \lp t \rp d \frac{\lp t-c_i \rp^2}{2} \nonumber\\ +% &= \frac{\lp x_i - c_i\rp^2}{2} f' \lp x_i \rp - \frac{\lp x_{i-1} - c_i\rp^2}{2} f' \lp x_{i-1} \rp - \frac{1}{2} \int^{x_i}_{x_{i-1}} \lp t-c_i \rp^2 f'' \lp t\rp \nonumber\\ +% &= \frac{1}{2}\lb \frac{b-a}{2N}\rb^2 \lp f'\lp x_i \rp - f' \lp x_{i-1}\rp \rp - \frac{1}{2} \int^{x_i}_{x_{i-1}} \lp t-c_i\rp^2 f'' \lp t \rp dt \nonumber\\ +% &= \frac{1}{2} \int^{x_i}_{x_{i-1}} f'' \lp t \rp dt - \frac{1}{2} \int^{x_i}_{x_{i-1}} \lp t-c_i\rp^2 f'' \lp t\rp dt \nonumber \\ +% &= \frac{1}{2} \int^{x_i}_{x_{i-1}}\lp \lb \frac{b-a}{2N} \rb^2 - \lp t-c_i\rp^2 \rp f'' \lp t\rp dt +% \end{align} +% Assuming that $f''\lp x \rp \les M$ within $\lb a,b \rb$ we then have that: +% \begin{align} +% \left| \int^b_af dx - \lp \real_{\rect}\lp \etr^{n,h} \rp\rp \lp x \rp \right| &\les \sum_{i=1}^N \left| L_i\right| \nonumber\\ +% &\les \frac{1}{2}\sum^N_{i=1} \int^{x_i}_{x_{i-1}} \left| \lp \lb \frac{b-a}{2N} \rb^2 - \lp t-c_i\rp^2 \rp \right| \left| f'' \lp t\rp dt\right| \nonumber \\ +% &\les \frac{M}{2} \sum_{i=1}^N \int^{x_i}_{x_{i-1}} \lb \frac{b-a}{2N}\rb^2 - \lp t-c_i\rp^2 dt \nonumber \\ +% &= \frac{M}{2} \lp \lb \frac{b-2}{2N}\rb^2\lp b-a \rp - \frac{2n}{3} \lb \frac{b-a}{2N}\rb^3 \rp \nonumber\\ +% &= \frac{M \lp b-a \rp^3}{12N^2} +% \end{align} +% This completes the proof of the lemma. +%\end{proof} +\section{Linear Interpolation for Multi-Dimensional Functions} +\subsection{The $\nrm^d_1$ Networks} +\begin{definition}[The $\nrm_1^d$ neural network] + We denote by $\lp \nrm_1^d \rp _{d\in \N} \subseteq \neu$ the family of neural networks that satisfy: + \begin{enumerate}[label = (\roman*)] + \item for $d=1$:\begin{align}\label{(9.7.1)} + \nrm^1_1 = \lp \lp \begin{bmatrix} + 1 \\ -1 + \end{bmatrix}, \begin{bmatrix} + 0 \\ 0 + \end{bmatrix}\rp, \lp \begin{bmatrix} + 1 && 1 + \end{bmatrix}, \begin{bmatrix} + 0 + \end{bmatrix}\rp \rp \in \lp \R^{2 \times 1} \times \R^2 \rp \times \lp \R^{1 \times 2} \times \R^1 \rp + \end{align} + \item for $d \in \{2,3,...\}$: \begin{align} + \nrm_1^d = \sm_{d,1} \bullet \lb \boxminus_{i=1}^d \nrm_1^1 \rb + \end{align} + \end{enumerate} +\end{definition} +\begin{lemma}\label{9.7.2}\label{lem:nrm_prop} + Let $d \in \N$. It is then the case that: + \begin{enumerate}[label = (\roman*)] + \item $\lay \lp \nrm^d_1 \rp = \lp d,2d,1 \rp$ + \item $\lp \real_{\rect} \lp \nrm^d_1\rp \rp \lp x \rp \in C \lp \R^d,\R \rp$ + \item that for all $x \in \R^d$ that $\lp \real_{\rect}\lp \nrm^d_1 \rp \rp \lp x \rp = \left\| x \right\|_1$ + \item it holds $\hid\lp \nrm^d_1\rp=1$ + \item it holds that $\param \lp \nrm_1^d \rp \les 7d^2$ + \item it holds that $\dep\lp \nrm^d_1\rp =2 $ + \end{enumerate} +\end{lemma} +\begin{proof} + Note that by observation, it is the case that $\lay\lp \nrm^d_1 \rp = \lp 1,2,1\rp$. This and Remark \ref{5.3.2} tells us that for all $d \in \{2,3,...\}$ it is the case that $\lay \lp \boxminus_{i=1}^d \nrm^d_1 \rp = \lp d,2d,d\rp$. This, Lemma \ref{comp_prop}, and Lemma \ref{5.3.2} ensure that for all $d \in \{2,3,4,...\}$ it is the case that $\lay\lp \nrm^d_1 \rp = \lp d,2d,1 \rp$, which in turn establishes Item (i). + + Notice now that (\ref{(9.7.1)}) ensures that: + \begin{align} + \lp \real_{\rect} \lp \nrm^d_1 \rp \rp \lp x \rp = \rect \lp x \rp + \rect \lp -x \rp = \max \{x,0 \} + \max \{ -x,0\} = \left| x \right| = \| x \|_1 + \end{align} + This along with \cite[Proposition~2.19]{grohs2019spacetime} tells us that for all $d \in \{2,3,4,...\}$ and $x = \lp x_1,x_2,...,x_d\rp \in \R^d$ it is the case that: + \begin{align} + \lp \real_{\rect} \lb \boxminus^d_{i=1} \nrm^1_1\rb\rp \lp x \rp = \lp \left| x_1 \right|, \left| x_2\right|,..., \left| x_d \right| \rp + \end{align} + This together with Lemma \ref{depthofcomposition} tells us that: + \begin{align} + \lp \real_{\rect} \lp \nrm^d_1 \rp \rp &= \lp \real_{\rect} \lp \sm_{d,1} \bullet \lb \boxminus_{i=1}^d \nrm^d_1\rb\rp \rp \lp x \rp \nonumber\\ + &= \lp \real_{\rect} \lp \sm_{d,1} \rp \rp \lp |x_1|,|x_2|,...,|x_d|\rp = \sum^d_{i=1} |x_i| =\|x\|_1 + \end{align} + Note next that by observation $\hid\lp \nrm^1_1 \rp = 1$. Remark \ref{5.3.2} then tells us that since the number of layers remains unchanged under stacking, it is then the case that $\hid \lp \nrm^1_1 \rp = \hid \lp \boxminus_{i=1}^d \nrm_1^1\rp = 1$. Note next that Lemma \ref{5.2.3} then tells us that $\hid \lp \sm_{d,1} \rp = 0$ whence Lemma \ref{comp_prop} tells us that: + \begin{align} + \hid \lp \nrm^d_1 \rp &= \hid \lp \sm_{d,1}\bullet \lb \boxminus_{i=1}^d \nrm^1_1 \rb \rp \nonumber \\ + &= \hid \lp \sm_{d,1} \rp + \hid \lp \lb \boxminus_{i=1}^d \nrm^1_1 \rb \rp = 0+1=1 + \end{align} + + + Note next that: + \begin{align} + \nrm^1_1 = \lp \lp \begin{bmatrix} + 1 \\ -1 + \end{bmatrix}, \begin{bmatrix} + 0 \\ 0 + \end{bmatrix}\rp, \lp \begin{bmatrix} + 1 && 1 + \end{bmatrix}, \begin{bmatrix} + 0 + \end{bmatrix}\rp \rp \in \lp \R^{2 \times 1} \times \R^2 \rp \times \lp \R^{1 \times 2} \times \R^1 \rp + \end{align} + and as such $\param\lp \nrm^1_1 \rp = 7$. This, combined with Cor \ref{cor:sameparal}, and the fact that we are stacking identical neural networks then tells us that: + \begin{align} + \param \lp \lb \boxminus_{i=1}^d \nrm_1^1 \rb \rp &\les 7d^2 + \end{align} + Then Lemma Corollary \ref{affcor}, Lemma \ref{lem:5.5.4}, and Lemma \ref{comp_prop} tells us that: + \begin{align} + \param \lp \nrm^d_1 \rp &= \param \lp \sm_{d,1} \bullet \lb \boxminus_{i=1}^d \nrm_1^1 \rb\rp \nonumber \\ + &\les \param \lp \lb \boxminus_{i=1}^d \nrm_1^1 \rb \rp \les 7d^2 + \end{align} + This establishes Item (v). + + Finally, by observation $\dep \lp \nrm^1_1\rp = 2$, we are stacking the same neural network when we have $\nrm^d_1$. Stacking has no effect on depth from Definition \ref{def:stacking}, and by Lemma \ref{comp_prop}, $\dep \lp \sm_{d,1} \bullet \lb \boxminus^d_{i=1} \nrm_1^1\rb \rp = \dep \lp \boxminus \nrm^1_1\rp$. Thus we may conclude that $\dep \lp \nrm^d_1\rp = \dep \lp \nrm_1^1\rp =2$. + + This concludes the proof of the lemma. +\end{proof} + +\subsection{The $\mxm^d$ Neural Networks} + +Given $x\in \R$, it is straightforward to find the maximum; $ x$ is the maximum. For $x \in \R^d$ we may find the maximum via network (\ref{9.7.6.1}), i.e. $\mxm^2$. The strategy is to find maxima for half our entries and half repeatedly until we have one maximum. For $x \in \R^d$ where $d$ is even we may stack $d$ copies of $\mxm^2$ to halve, and for $x \in \R^d$ where $d$ is odd and greater than $3$ we may introduce ``padding'' via the $\id_1$ network and thus require $\frac{d-1}{2}$ copies of $\mxm^2$ to halve. +\begin{definition}[Maxima ANN representations] + Let $\lp \mxm ^d\rp_{d \in \N} \subseteq \neu$ represent the neural networks that satisfy: + \begin{enumerate}[label = (\roman*)] + \item for all $d \in \N$ that $\inn \lp \mxm^d \rp = d$ + \item for all $d \in \N$ that $\out\lp \mxm^d \rp = 1$ + \item that $\mxm^1 = \aff_{1,0} \in \R^{1 \times 1} \times \R^1$ + \item that: + \begin{align}\label{9.7.6} + \mxm^2 = \lp \lp \begin{bmatrix} + 1 & -1 \\ 0 & 1 \\ 0 & -1 + \end{bmatrix}, \begin{bmatrix} + 0 \\ 0 \\0 + \end{bmatrix}\rp, \lp \begin{bmatrix} + 1&1&-1 + \end{bmatrix}, \begin{bmatrix} + 0 + \end{bmatrix}\rp\rp + \end{align} + \item it holds for all $d \in \{2,3,...\}$ that $\mxm^{2d} = \mxm^d \bullet \lb \boxminus_{i=1}^d \mxm^2\rb$, and + \item it holds for all $d \in \{ 2,3,...\}$ that $\mxm^{2d-1} = \mxm^d \bullet \lb \lp \boxminus^d_{i=1} \mxm^2 \rp \boxminus \id_1\rb$. + \end{enumerate} +\end{definition} +\begin{remark} + Diagrammatically, this can be represented as: + \begin{figure}[h] + \begin{center} + + +\tikzset{every picture/.style={line width=0.75pt}} %set default line width to 0.75pt + +\begin{tikzpicture}[x=0.75pt,y=0.75pt,yscale=-1,xscale=1] +%uncomment if require: \path (0,498); %set diagram left start at 0, and has height of 498 + +%Shape: Rectangle [id:dp977616844446347] +\draw (560,138) -- (630,138) -- (630,178) -- (560,178) -- cycle ; +%Shape: Rectangle [id:dp8371611327934396] +\draw (560,206) -- (630,206) -- (630,246) -- (560,246) -- cycle ; +%Shape: Rectangle [id:dp900733317366978] +\draw (562,274) -- (632,274) -- (632,314) -- (562,314) -- cycle ; +%Shape: Rectangle [id:dp2381571768613] +\draw (565,350) -- (635,350) -- (635,390) -- (565,390) -- cycle ; +%Shape: Rectangle [id:dp47165779567431265] +\draw (568,425) -- (638,425) -- (638,465) -- (568,465) -- cycle ; +%Shape: Rectangle [id:dp26730884303141045] +\draw (438,175) -- (508,175) -- (508,215) -- (438,215) -- cycle ; +%Shape: Rectangle [id:dp43479154744962956] +\draw (439,310) -- (509,310) -- (509,350) -- (439,350) -- cycle ; +%Shape: Rectangle [id:dp14664308815255211] +\draw (302,234) -- (372,234) -- (372,274) -- (302,274) -- cycle ; +%Straight Lines [id:da5196233580766983] +\draw (437,196.5) -- (374.51,251.18) ; +\draw [shift={(373,252.5)}, rotate = 318.81] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; +%Straight Lines [id:da6126209944613533] +\draw (559,155.5) -- (509.66,188.88) ; +\draw [shift={(508,190)}, rotate = 325.92] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; +%Straight Lines [id:da5768174542895418] +\draw (558,224.5) -- (512.81,203.35) ; +\draw [shift={(511,202.5)}, rotate = 25.08] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; +%Straight Lines [id:da12927244412488015] +\draw (560,290.5) -- (510.66,323.88) ; +\draw [shift={(509,325)}, rotate = 325.92] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; +%Straight Lines [id:da9640125892832212] +\draw (566,372.5) -- (511.72,340.03) ; +\draw [shift={(510,339)}, rotate = 30.89] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; +%Straight Lines [id:da6747547273640673] +\draw (437,331.5) -- (373.38,264.95) ; +\draw [shift={(372,263.5)}, rotate = 46.29] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; +%Shape: Rectangle [id:dp14455818861310843] +\draw (445,425) -- (515,425) -- (515,465) -- (445,465) -- cycle ; +%Shape: Rectangle [id:dp03375582603009031] +\draw (301,367) -- (371,367) -- (371,407) -- (301,407) -- cycle ; +%Shape: Rectangle [id:dp0789527597033911] +\draw (163,296) -- (233,296) -- (233,336) -- (163,336) -- cycle ; +%Straight Lines [id:da6246849218035846] +\draw (302,252.5) -- (236.47,313.14) ; +\draw [shift={(235,314.5)}, rotate = 317.22] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; +%Straight Lines [id:da5611532984284957] +\draw (299,390.5) -- (235.38,323.95) ; +\draw [shift={(234,322.5)}, rotate = 46.29] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; +%Straight Lines [id:da6903134547643467] +\draw (162,315.5) -- (108,315.5) ; +\draw [shift={(106,315.5)}, rotate = 360] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; +%Straight Lines [id:da647770723003481] +\draw (567,447.5) -- (518,447.5) ; +\draw [shift={(516,447.5)}, rotate = 360] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; +%Straight Lines [id:da1985911653622896] +\draw (443,448.5) -- (373.61,397.68) ; +\draw [shift={(372,396.5)}, rotate = 36.22] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; +%Straight Lines [id:da06349763555732901] +\draw (437,342) -- (373.67,383.41) ; +\draw [shift={(372,384.5)}, rotate = 326.82] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; + +% Text Node +\draw (574,150.4) node [anchor=north west][inner sep=0.75pt] {$\mathsf{Mxm}^{2}$}; +% Text Node +\draw (574,214.4) node [anchor=north west][inner sep=0.75pt] {$\mathsf{Mxm}^{2}$}; +% Text Node +\draw (576,283.4) node [anchor=north west][inner sep=0.75pt] {$\mathsf{Mxm}^{2}$}; +% Text Node +\draw (579,358.4) node [anchor=north west][inner sep=0.75pt] {$\mathsf{Mxm}^{2}$}; +% Text Node +\draw (585,428.4) node [anchor=north west][inner sep=0.75pt] {$\mathsf{Mxm}^{2}$}; +% Text Node +\draw (453,185.4) node [anchor=north west][inner sep=0.75pt] {$\mathsf{Mxm}^{2}$}; +% Text Node +\draw (456,322.4) node [anchor=north west][inner sep=0.75pt] {$\mathsf{Mxm}^{2}$}; +% Text Node +\draw (316,242.4) node [anchor=north west][inner sep=0.75pt] {$\mathsf{Mxm}^{2}$}; +% Text Node +\draw (470,434.4) node [anchor=north west][inner sep=0.75pt] {$\mathsf{Id}_{1}$}; +% Text Node +\draw (317,377.4) node [anchor=north west][inner sep=0.75pt] {$\mathsf{Mxm}^{2}$}; +% Text Node +\draw (177,305.4) node [anchor=north west][inner sep=0.75pt] {$\mathsf{Mxm}^{2}$}; + +\end{tikzpicture} + \end{center} + \caption{Neural network diagram for $\mxm^5$.} + \end{figure} +\end{remark} +\begin{lemma}\label{9.7.4}\label{lem:mxm_prop} + Let $d \in \N$, it is then the case that: + \begin{enumerate}[label = (\roman*)] + \item $\hid \lp \mxm^d \rp = \lceil \log_2 \lp d \rp \rceil $ + \item for all $i \in \N$ that $\wid_i \lp \mxm^d \rp \les 3 \left\lceil \frac{d}{2^i} \right\rceil$ + \item $\real_{\rect} \lp \mxm^d\rp \in C \lp \R^d, \R \rp$ and + \item for all $x = \lp x_1,x_2,...,x_d \rp \in \R^d$ we have that $\lp \real_{\rect} \lp \mxm^d \rp \rp \lp x \rp = \max \{x_1,x_2,...,x_d \}$. + \item $\param \lp \mxm^d \rp \les \lp \frac{4}{3}d^2+3d\rp \lp 1+\frac{1}{2}^{\left\lceil \log_2\lp d\rp\right\rceil+1}\rp$ + \item $\dep \lp \mxm^d\rp = \left\lceil \log_2 \lp d\rp \right\rceil + 1$ + \end{enumerate} +\end{lemma} +\begin{proof} + Assume w.l.o.g. that $d > 1$. Note that (\ref{9.7.6}) ensures that $\hid \lp \mxm^d \rp = 1$. This and (\ref{5.2.5}) then tell us that for all $d \in \{2,3,4,...\}$ it is the case that: + \begin{align} + \hid \lp \boxminus_{i=1}^d \mxm^2\rp = \hid \lp \lb \boxminus_{i=1}^d \mxm^2 \rb \boxminus \id_1 \rp = \hid \lp \mxm^2 \rp = 1 \nonumber + \end{align} + This and Lemma \ref{comp_prop} tells us that for all $d \in \{3,4,5,...\}$ it holds that: + \begin{align}\label{9.7.7} + \hid \lp \mxm^d \rp = \hid \lp \mxm^{\left\lceil \frac{d}{2} \right\rceil}\rp + 1 + \end{align} + And for $d \in \{4,6,8,...\}$ with $\hid \lp \mxm^{\left\lceil \frac{d}{2} \right\rceil} \rp = \left\lceil \log_2 \lp \frac{d}{2} \rp\right\rceil$ it holds that: + \begin{align}\label{9.7.8} + \hid \lp \mxm^d \rp = \left\lceil \log_2 \lp \frac{d}{2} \rp\right\rceil + 1 = \left\lceil \log_2 \lp d \rp -1 \right\rceil +1 = \left\lceil \log_2 \lp d \rp \right\rceil + \end{align} + Moreover (\ref{9.7.7}) and the fact that for all $d \in \{3,5,7,...\}$ it holds that $\left\lceil \log_2 \lp d+1 \rp \right\rceil = \left\lceil \log_2 \lp d \rp \right\rceil$ ensures that for all $d \in \{3,5,7,...\}$ with $\hid \lp \mxm^{\left\lceil \frac{d}{2}\right\rceil}\rp = \left\lceil \log_2 \lp \left\lceil \frac{d}{2} \right\rceil\rp \right\rceil$ it holds that: + \begin{align} + \hid \lp \mxm^d\rp &= \left\lceil \log_2 \lp \left\lceil \frac{d}{2} \right\rceil\rp \right\rceil + 1 = \left\lceil \log_2 \lp \left\lceil \frac{d+1}{2} \right\rceil\rp \right\rceil + 1 \nonumber\\ + &= \left\lceil \log_2 \lp d+1\rp-1 \right\rceil + 1 = \left\lceil \log_2 \lp d+1 \rp \right\rceil = \left\lceil \log_2 \lp d \rp \right\rceil + \end{align} + This and (\ref{9.7.8}) demonstrate that for all $d \in \{3,4,5,...\}$ with $\forall k \in \{2,3,...,d-1\}: \hid \lp \mxm^d\rp = \left\lceil \log_2 \lp k \rp \right\rceil$ it holds htat $\hid \lp \mxm^d \rp = \left\lceil \log_2 \lp d \rp \right\rceil$. The fact that $\hid \lp \mxm^2 \rp =1$ and induction establish Item (i). + + We next note that $\lay \lp \mxm^2 \rp = \lp 2,3,1 \rp$. This then indicates that for all $i\in \N$ that: + \begin{align}\label{9.7.10} + \wid_i \lp \mxm^2 \rp \les 3 = 3 \left\lceil \frac{2}{2^i} \right\rceil. + \end{align} + Note then that Lemma \ref{comp_prop} and Remark \ref{5.3.2} tells us that: + \begin{align}\label{9.7.11} + \wid_i \lp \mxm^{2d} \rp = \begin{cases} + 3d &:i=1 \\ + \wid_{i-1}\lp \mxm^d \rp &:i\ges 2 + \end{cases} + \end{align} + And: + \begin{align}\label{9.7.12} + \wid_i \lp \mxm^{2d-1}\rp = \begin{cases} + 3d-1 &:i=1 \\ + \wid_{i-1}\lp \mxm^d \rp &:i \ges 2 + \end{cases} + \end{align} + This in turn assures us that for all $d \in \{ 2,4,6,...,\}$ it holds that: + \begin{align}\label{9.7.13} + \wid_1 \lp \mxm^d \rp = 3\lp \frac{d}{2} \rp \les 3 \left\lceil \frac{d}{2} \right\rceil + \end{align} + Moreover, note that (\ref{9.7.12}) tells us that for all $d \in \{3,5,7,...\}$ it holds that: + \begin{align} + \wid_1 \lp \mxm^d \rp = 3\left\lceil \frac{d}{2}\right\rceil -1 \les 3 \left\lceil \frac{d}{2} \right\rceil + \end{align} + This and (\ref{9.7.13}) shows that for all $d \in \{2,3,...\}$ it holds that: + \begin{align}\label{9.7.15} + \wid_1 \lp \mxm^d\rp \les 3 \left\lceil \frac{d}{2}\right\rceil + \end{align} + Additionally note that (\ref{9.7.11}) demonstrates that for all $d \in \{ 4,6,8,...\}$, $i \in \{2,3,...\}$ with $\wid_{i-1} \lp \mxm^{\frac{d}{2}} \rp \les 3 \left\lceil \lp \frac{d}{2}\rp \frac{1}{2^{i-1}}\right\rceil$ it holds that: + \begin{align}\label{9.7.16} + \wid_i \lp \mxm^d \rp = \wid_{i-1}\lp \mxm^{\frac{d}{2}}\rp \les 3 \left\lceil \lp \frac{d}{2}\rp \frac{1}{2^{i-1}} \right\rceil = 3 \left\lceil \frac{d}{2^i} \right\rceil + \end{align} + Furthermore note also the fact that for all $d \in \{3,5,7,...\}$, $i \in \N$ it holds that $\left\lceil \frac{d+1}{2^i} \right\rceil = \left\lceil \frac{d}{2^i}\right\rceil$ and (\ref{9.7.12}) assure that for all $d \in \{3,5,7,...\}$, $i\in \{2,3,...\}$ with $\wid_{i-1} \lp \mxm^{\left\lceil \frac{d}{2}\right\rceil}\rp \les 3 \left\lceil \left\lceil \frac{d}{2}\right\rceil \frac{1}{2^{i-1}}\right\rceil$ it holds that: + \begin{align} + \wid_i \lp \mxm^d \rp = \wid_{i-1} \lp \mxm^{\left\lceil \frac{d}{2}\right\rceil}\rp \les 3 \left\lceil \left\lceil \frac{d}{2} \right\rceil \frac{1}{2^{i-1}} \right\rceil = 3 \left\lceil \frac{d+1}{2^i}\right\rceil = 3 \left\lceil \frac{d}{2^i} \right\rceil + \end{align} + This and (\ref{9.7.16}) tells us that for all $d \in \{3,4,...\}$, $i \in \{2,3,...\}$ with $\forall k \in \{2,3,...,d-1\}$, $j \in \{1,2,...,i-1\}: \wid_j \lp \mxm^k \rp \les 3 \left\lceil \frac{k}{2^j} \right\rceil$ it holds that: + \begin{align} + \wid_i \lp \mxm^d \rp \les 3 \left\lceil \frac{d}{2^i}\right\rceil + \end{align} + This, combined with (\ref{9.7.10}), (\ref{9.7.15}), with induction establishes Item (ii). + + Next observe that (\ref{9.7.6}) tells that for $x = \begin{bmatrix} + x_1 \\ x_2 + \end{bmatrix} \in \R^2$ it becomes the case that: + \begin{align} + \lp\real_{\rect} \lp \mxm^2 \rp \rp \lp x \rp &= \max \{x_1-x_2,0\} + \max\{x_2,0 \} - \max\{ -x_2,0\} \nonumber \\ + &= \max \{x_1-x_2,0\} + x_2 = \max\{x_1,x_2\} + \end{align} + Note next that Lemma \ref{idprop}, Lemma \ref{comp_prop}, and \cite[Proposition~2.19]{grohs2019spacetime} then imply for all $d \in \{2,3,4,...\}$, $x = \{x_1,x_2,...,x_d\} \in \R^d$ it holds that $\lp \real_{\rect} \lp \mxm^d \rp \rp \lp x \rp \in C \lp \R^d,\R \rp$. and $\lp \real_{\rect} \lp \mxm^d \rp \rp \lp x \rp = \max\{ x_1,x_2,...,x_d \}$. This establishes Items (iii)-(iv). + + Consider now the fact that Item (ii) implies that the layer architecture forms a geometric series whence we have that the number of bias parameters is bounded by: + \begin{align} + \frac{\frac{3d}{2} \lp 1 - \lp \frac{1}{2} \rp^{\left\lceil \log_2 \lp d\rp\right\rceil +1} \rp }{\frac{1}{2}} &= 3d \lp 1 - \frac{1}{2}^{\left\lceil \log_2 \lp d \rp \right\rceil +1}\rp \nonumber \\ + &\les \left\lceil 3d \lp 1 - \frac{1}{2}^{\left\lceil \log_2 \lp d \rp \right\rceil +1}\rp \right\rceil + \end{align} + For the weight parameters, consider the fact that our widths follow a geometric series with ratio $\frac{1}{2}$, and considering that we have an upper bound for the number of hidden layers, and the fact that $\wid_0 \lp \mxm^d\rp = d$, would then tell us that the number of weight parameters is bounded by: + \begin{align} + &\sum^{\left\lceil \log_2\lp d\rp\right \rceil}_{i=0} \lb \lp \frac{1}{2}\rp ^i \cdot \wid_0\lp \mxm^d\rp \cdot \lp \frac{1}{2}\rp^{i+1}\cdot \wid_0 \lp \mxm^d\rp\rb \nonumber \\ + &= \sum^{\left\lceil \log_2\lp d\rp\right\rceil}_{i=0} \lb \lp \frac{1}{2}\rp^{2i+1}\lp \wid_0 \lp \mxm^d\rp\rp^2\rb \nonumber \\ + &= \frac{1}{2} \sum^{\left\lceil \log_2 \lp d\rp \right\rceil}_{i=0} \lb \lp \lp \frac{1}{2}\rp^{i} \wid_0\lp \mxm^d\rp\rp^2\rb + = \frac{1}{2} \sum^{\left\lceil \log_2\lp d\rp\right\rceil}_{i=0} \lb \lp \frac{1}{4}\rp^id^2\rb + \end{align} + Notice that this is a geometric series with ratio $\frac{1}{4}$, which would then reveal that: + \begin{align} + \frac{1}{2} \sum^{\left\lceil \log_2\lp d\rp\right\rceil}_{i=0} \lb \lp \frac{1}{4}\rp^id^2\rb \les \frac{2}{3} d^2\lp 1- \frac{1}{2}^{2\lp \left\lceil \log_2(d)\right\rceil + 1\rp}\rp + \end{align} + + Thus, we get that: + \begin{align} + \param \lp \mxm^d\rp &\les \frac{2}{3} d^2\lp 1- \frac{1}{2}^{2\lp \left\lceil \log_2(d)\right\rceil \rp + 1}\rp + \left\lceil 3d \lp 1 - \frac{1}{2}^{\left\lceil \log_2 \lp d \rp \right\rceil +1}\rp \right\rceil \nonumber\\ + &\les \frac{2}{3} d^2\lp 1- \frac{1}{2}^{2\lp \left\lceil \log_2(d)\right\rceil \rp + 1}\rp + \left\lceil 3d \lp 1 - \frac{1}{2}^{2\lp\left\lceil \log_2 \lp d \rp \right\rceil +1\rp}\rp\right\rceil\\ + &\les \left\lceil \lp \frac{2}{3}d^2+3d\rp \lp 1+\frac{1}{2}^{2\lp \left\lceil \log_2\lp d\rp\right\rceil+1 \rp}\rp + 1 \right\rceil + \end{align} + + This proves Item (v). + + + Item (vi) is a straightforward consequence of Item (i). This completes the proof of the lemma. +\end{proof} + +\subsection{The $\mathsf{MC}$ Neural Network and Approximations via Maximum Convolutions } + +Let $f: [a,b] \rightarrow \R$ be a continuous bounded function with Lipschitz constant $L$. Let $x_0 \les x_1 \les \cdots \les x_N$ be a set of sample points within $[a,b]$, with it being possibly the case that that for all $i \in \{0,1,\hdots, N\}$, $x_i \sim \unif([a,b])$. For all $i \in \{0,1,\hdots, N\}$, define a series of functions $f_0,f_1,\hdots f_N: [a,b] \rightarrow \R$, as such: +\begin{align} + f_i = f(x_i) - L \cdot \left| x-x_i\right| +\end{align} +We will call the approximant $\max_{i \in \{0,1,\hdots, N\}}\{ f_i\}$, the \textit{maximum convolution approximation}. This converges to $f$, as shown in +\begin{lemma}\label{(9.7.5)}\label{lem:mc_prop} + Let $d,N\in \N$, $L\in \lb 0,\infty \rp$, $x_1,x_2,\hdots, x_N \in \R^d$, $y = \lp y_1,y_2,\hdots,y_N \rp \in \R^N$ and $\mathsf{MC} \in \neu$ satisfy that: + \begin{align}\label{9.7.20} + \mathsf{MC}^{N,d}_{x,y} = \mxm^N \bullet \aff_{-L\mathbb{I}_N,y} \bullet \lp \boxminus_{i=1}^N \lb \nrm^d_1 \bullet \aff_{\mathbb{I}_d,-x_i} \rb \rp \bullet \cpy_{N,d} + \end{align} + It is then the case that: + \begin{enumerate}[label = (\roman*)] + \item $\inn \lp \mathsf{MC} \rp = d$ + \item $\out\lp \mathsf{MC} \rp = 1$ + \item $\hid \lp \mathsf{MC} \rp = \left\lceil \log_2 \lp N \rp \right\rceil +1$ + \item $\wid_1 \lp \mathsf{MC} \rp = 2dN$ + \item for all $i \in \{ 2,3,...\}$ we have $\wid_1 \lp \mathsf{MC} \rp \les 3 \left\lceil \frac{N}{2^{i-1}} \right\rceil$ + \item it holds for all $x \in \R^d$ that $\lp \real_{\rect} \lp \mathsf{MC} \rp \rp \lp x \rp = \max_{i \in \{1,2,...,N\}} \lp y_i - L \left\| x-x_i \right\|_1\rp$ + \item it holds that $\param \lp \mathsf{MC} \rp \les \left\lceil \lp \frac{2}{3}d^2+3d\rp \lp 1+\frac{1}{2}^{2\lp \left\lceil \log_2\lp d\rp\right\rceil+1 \rp}\rp + 1 \right\rceil + 7N^2d^2 + 3\left\lceil \frac{N}{2}\right\rceil \cdot 2dN$ + \end{enumerate} +\end{lemma} +\begin{proof} + Throughout this proof let $\mathsf{S}_i \in \neu$ satisfy for all $i \in \{1,2,...,N\}$ that $\mathsf{S}_i = \nrm_1^d \bullet \aff_{\mathbb{I}_d,-x_i}$ and let $\mathsf{X} \in \neu$ satisfy: + \begin{align} + \mathsf{X} = \aff_{-L\mathbb{I}_N,y} \bullet \lp \lb \boxminus_{i=1}^N \mathsf{S}_i \rb \rp \bullet \cpy_{N,d} + \end{align} + Note that (\ref{9.7.20}) and Lemma \ref{comp_prop} tells us that $\out \lp \R \rp = \out \lp \mxm^N \rp = 1$ and $\inn \lp \mathsf{MC} \rp = \inn \lp \cpy_{N,d} \rp =d $. This proves Items (i)--(ii). Next observe that since it is the case that $\hid \lp \cpy_{N,d} \rp$ and $\hid \lp \nrm^d_1 \rp = 1$, Lemma \ref{comp_prop} then tells us that: + \begin{align} + \hid \lp \mathsf{X} \rp = \hid \lp\aff_{-L\mathbb{I}_N,y} \rp + \hid \lp \boxminus_{i=1}^N \mathsf{S}_i\rp + \hid \lp \cpy_{N,d} \rp = 1 + \end{align} + Thus Lemma \ref{comp_prop} and Lemma \ref{9.7.4} then tell us that: + \begin{align} + \hid \lp \mathsf{MC} \rp = \hid \lp \mxm^N \bullet \mathsf{X}\rp = \hid \lp \mxm^N \rp + \hid \lp \mathsf{X}\rp = \left\lceil \log_2 \lp N \rp \right\rceil +1 + \end{align} + Which in turn establishes Item (iii). + + Note next that Lemma \ref{comp_prop} and \cite[Proposition~2.20]{grohs2019spacetime} tells us that: + \begin{align}\label{8.3.33} + \wid_1 \lp \mathsf{MC} \rp = \wid_1 \lp \mathsf{X} \rp = \wid_1 \lp \boxminus^N_{i=1} \mathsf{S}_i\rp = \sum^N_{i=1} \wid_1 \lp \mathsf{S}_i \rp = \sum^N_{i=1} \wid_1 \lp \nrm^d_1 \rp = 2dN + \end{align} + This establishes Item (iv). + + Next observe that the fact that $\hid \lp \mathsf{X} \rp=1$, Lemma \ref{comp_prop} and Lemma \ref{9.7.4} tells us that for all $i \in \{2,3,...\}$ it is the case that: + \begin{align} + \wid_i \lp \mathsf{MC} \rp = \wid_{i-1} \lp \mxm^N \rp \les 3 \left\lceil \frac{N}{2^{i-1}} \right\rceil + \end{align} + This establishes Item (v). + + Next observe that Lemma \ref{9.7.2} and Lemma \ref{5.3.3} tells us that for all $x \in \R^d$, $i \in \{1,2,...,N\}$ it holds that: + \begin{align} + \lp \real_{\rect} \lp \mathsf{MC} \rp \rp \lp x \rp - \lp \real_{\rect}\lp \nrm^d_1 \rp \circ \real_{\rect}\lp \aff_{\mathbb{I}_d,-x_i} \rp \rp \lp x \rp = \left\| x-x_i \right\|_1 + \end{align} + This an \cite[Proposition~2.20]{grohs2019spacetime} combined establishes that for all $x \in \R^d$ it holds that: + \begin{align} + \lp \real_{\rect} \lp \lb \boxminus_{i=1}^N \mathsf{S}_i \rb \bullet \cpy_{N,d} \rp \rp \lp x \rp = \lp \| x-x_1 \|_1, \|x-x_2\|_1,...,\|x-x_N\|_1\rp \nonumber \\ + \end{align} + This and Lemma \ref{5.3.3} establishes that for all $x \in \R^d$ it holds that: + \begin{align} + \lp \real_{\rect}\lp \mathsf{X}\rp \rp \lp x \rp &= \lp \real_{\rect}\lp \aff_{-L\mathbb{I}_N,y}\rp\rp \circ \lp\real_{\rect} \lp \lb \boxminus_{i=1}^N \mathsf{S}_i\rb \bullet \cpy_{N,d}\rp \rp \lp x \rp \nonumber\\ + &= \lp y_1-L \|x-x_1 \|, y_2-L\|x-x_2\|,...,y_N-L \| x-x_N \|_1\rp + \end{align} + Then Lemma \ref{comp_prop} and Lemma \ref{9.7.4} tells us that for all $x\in \R^d$ it holds that: + \begin{align} + \lp \real_{\rect} \lp \mathsf{MC} \rp \rp \lp x \rp &= \lp \real_{\rect}\lp \mxm^N \rp \circ \lp \real_{\rect}\lp \mathsf{X} \rp \rp \rp \lp x \rp \nonumber \\ + &= \lp \real_{\rect}\lp \mxm^N \rp \rp \lp y_1-L \|x-x_1\|_1,y_2-L\|x-x_2\|_1,...,y_N-L\|x-x_N\|_1\rp \nonumber\\ + &=\max_{i\in \{1,2,...,N\} } \lp y_i - L \|x-x_i\|_1\rp + \end{align} + This establishes Item (vi). + + For Item (vii) note that Lemma \ref{lem:nrm_prop}, Remark \ref{rem:stk_remark}, Lemma \ref{lem:nrm_prop}, and Corollary \ref{affcor} tells us that for all $d\in \N$ and $x \in \R^d$ it is the case that: + \begin{align} + \param \lp \nrm^d_1\bullet \aff_{\mathbb{I}_d, -x}\rp \les \param \lp \nrm_1^d\rp \les 7d^2 + \end{align} + This, along with Corollary \ref{cor:sameparal}, and because we are stacking identical neural networks, then tells us that for all $N \in \N$, it is the case that: + \begin{align} + \param \lp \boxminus_{i=1}^N \lb \nrm^d_1\bullet \aff_{\mathbb{I}_d, -x} \rb\rp \les 7N^2d^2 + \end{align} + Observe next that Corollary \ref{affcor} tells us that for all $d,N \in \N$ and $x \in \R^d$ it is the case that: + \begin{align}\label{8.3.38} + \param \lp \lp \boxminus^N_{i=1} \lb \nrm^d_1 \bullet \aff_{\mathbb{I}_d,-x}\rb\rp \bullet \cpy_{N,d}\rp \les \param \lp \boxminus_{i=1}^N \lb \nrm^d_1\bullet \aff_{\mathbb{I}_d, -x} \rb\rp \les 7N^2d^2 + \end{align} + Now, let $d,N \in \N$, $L \in [0,\infty)$, let $x_1,x_2,\hdots, x_N \in \R^d$ and let $y = \{y_1,y_2,\hdots, y_N \} \in \R^N$. Observe that again, Corollary \ref{affcor}, and (\ref{8.3.38}) tells us that: + \begin{align} + \param\lp \aff_{-L\mathbb{I}_N,y} \bullet \lp \boxminus_{i=1}^N \lb \nrm^d_1 \bullet \aff_{\mathbb{I}_d,-x_i} \rb \rp \bullet \cpy_{N,d}\rp \nonumber\\ \les \param \lp \boxminus_{i=1}^N \lb \nrm^d_1\bullet \aff_{\mathbb{I}_d, -x} \rb\rp \les 7N^2d^2 \nonumber + \end{align} + Finally Lemma \ref{comp_prop}, (\ref{8.3.33}), and Lemma \ref{lem:mxm_prop} yields that: + \begin{align} + \param(\mathsf{MC}) &= \param \lp \mxm^N \bullet \aff_{-L\mathbb{I}_N,y} \bullet \lp \boxminus_{i=1}^N \lb \nrm^d_1 \bullet \aff_{\mathbb{I}_d,-x_i} \rb \rp \bullet \cpy_{N,d} \rp \nonumber\\ + &\les \param \lp \mxm^N \bullet \lp \boxminus_{i=1}^N \lb \nrm^d_1\bullet \aff_{\mathbb{I}_d, -x} \rb \rp \rp \nonumber\\ + &\les \param \lp \mxm^N \rp + \param \lp \lp \boxminus_{i=1}^N \lb \nrm^d_1\bullet \aff_{\mathbb{I}_d, -x} \rb\rp \rp + \nonumber\\ &\wid_1\lp \mxm^N\rp \cdot \wid_{\hid \lp \boxminus_{i=1}^N \lb \nrm^d_1\bullet \aff_{\mathbb{I}_d, -x} \rb\rp} \lp \boxminus_{i=1}^N \lb \nrm^d_1\bullet \aff_{\mathbb{I}_d, -x} \rb\rp \nonumber \\ + &\les \left\lceil \lp \frac{2}{3}d^2+3d\rp \lp 1+\frac{1}{2}^{2\lp \left\lceil \log_2\lp d\rp\right\rceil+1 \rp}\rp + 1 \right\rceil + 7N^2d^2 + 3\left\lceil \frac{N}{2}\right\rceil \cdot 2dN + \end{align} +\end{proof} +\begin{remark} + We may represent the neural network diagram for $\mxm^d$ as: +\end{remark} +\begin{figure}[h] + \begin{center} + + + +\tikzset{every picture/.style={line width=0.75pt}} %set default line width to 0.75pt + +\begin{tikzpicture}[x=0.75pt,y=0.75pt,yscale=-1,xscale=1] +%uncomment if require: \path (0,560); %set diagram left start at 0, and has height of 560 + +%Shape: Rectangle [id:dp1438938274656144] +\draw (574,235) -- (644,235) -- (644,275) -- (574,275) -- cycle ; +%Straight Lines [id:da7383135897500558] +\draw (574,241) -- (513.72,84.37) ; +\draw [shift={(513,82.5)}, rotate = 68.95] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; +%Straight Lines [id:da09141712653411305] +\draw (572,251) -- (514.14,168.14) ; +\draw [shift={(513,166.5)}, rotate = 55.08] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; +%Straight Lines [id:da19953508691566213] +\draw (573,259) -- (515.07,350.81) ; +\draw [shift={(514,352.5)}, rotate = 302.25] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; +%Straight Lines [id:da5900315817761441] +\draw (575,268) -- (515.66,436.61) ; +\draw [shift={(515,438.5)}, rotate = 289.39] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; +%Shape: Rectangle [id:dp9847868081693099] +\draw (421,59) -- (512,59) -- (512,99) -- (421,99) -- cycle ; +%Shape: Rectangle [id:dp2868551357079474] +\draw (419,330) -- (510,330) -- (510,370) -- (419,370) -- cycle ; +%Shape: Rectangle [id:dp9383613429980815] +\draw (420,150) -- (511,150) -- (511,190) -- (420,190) -- cycle ; +%Shape: Rectangle [id:dp5827241951133133] +\draw (420,420) -- (511,420) -- (511,460) -- (420,460) -- cycle ; +%Shape: Rectangle [id:dp7299058955170046] +\draw (290,60) -- (381,60) -- (381,100) -- (290,100) -- cycle ; +%Shape: Rectangle [id:dp08440877870624452] +\draw (290,150) -- (381,150) -- (381,190) -- (290,190) -- cycle ; +%Shape: Rectangle [id:dp7098854649776141] +\draw (290,330) -- (381,330) -- (381,370) -- (290,370) -- cycle ; +%Shape: Rectangle [id:dp6165394921489369] +\draw (290,420) -- (381,420) -- (381,460) -- (290,460) -- cycle ; +%Straight Lines [id:da37215648665173995] +\draw (420,80) -- (401,80) -- (382,80) ; +\draw [shift={(380,80)}, rotate = 360] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; +%Straight Lines [id:da2316129338082229] +\draw (420,170) -- (401,170) -- (382,170) ; +\draw [shift={(380,170)}, rotate = 360] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; +%Straight Lines [id:da40267704179559083] +\draw (419,350) -- (400,350) -- (381,350) ; +\draw [shift={(379,350)}, rotate = 360] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; +%Straight Lines [id:da5321116904741454] +\draw (420,440) -- (401,440) -- (382,440) ; +\draw [shift={(380,440)}, rotate = 360] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; +%Shape: Rectangle [id:dp9652335934440622] +\draw (170,60) -- (250,60) -- (250,460) -- (170,460) -- cycle ; +%Straight Lines [id:da2568661285688787] +\draw (170,240) -- (132,240) ; +\draw [shift={(130,240)}, rotate = 360] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; +%Straight Lines [id:da9075024165320872] +\draw (290,80) -- (252,80) ; +\draw [shift={(250,80)}, rotate = 360] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; +%Straight Lines [id:da36733568107592385] +\draw (290,170) -- (252,170) ; +\draw [shift={(250,170)}, rotate = 360] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; +%Straight Lines [id:da027221622247677213] +\draw (290,350) -- (252,350) ; +\draw [shift={(250,350)}, rotate = 360] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; +%Straight Lines [id:da456971589533403] +\draw (290,440) -- (252,440) ; +\draw [shift={(250,440)}, rotate = 360] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; +%Shape: Rectangle [id:dp5834320101871477] +\draw (60,220) -- (130,220) -- (130,260) -- (60,260) -- cycle ; +%Straight Lines [id:da39697402951042593] +\draw (60,240) -- (22,240) ; +\draw [shift={(20,240)}, rotate = 360] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; +%Straight Lines [id:da09195032177210305] +\draw (690,250) -- (652,250) ; +\draw [shift={(650,250)}, rotate = 360] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; + +% Text Node +\draw (583,245.4) node [anchor=north west][inner sep=0.75pt] {$\mathsf{Cpy}_{N}{}_{,d}$}; +% Text Node +\draw (441,66.4) node [anchor=north west][inner sep=0.75pt] {$\mathsf{Aff}_{\mathbb{I}}{}_{_{d}}{}_{-x}{}_{_{i}}$}; +% Text Node +\draw (442,158.4) node [anchor=north west][inner sep=0.75pt] {$\mathsf{Aff}_{\mathbb{I}}{}_{_{d}}{}_{-x}{}_{_{i}}$}; +% Text Node +\draw (442,338.4) node [anchor=north west][inner sep=0.75pt] {$\mathsf{Aff}_{\mathbb{I}}{}_{_{d}}{}_{-x}{}_{_{i}}$}; +% Text Node +\draw (442,428.4) node [anchor=north west][inner sep=0.75pt] {$\mathsf{Aff}_{\mathbb{I}}{}_{_{d}}{}_{-x}{}_{_{i}}$}; +% Text Node +\draw (318,72.4) node [anchor=north west][inner sep=0.75pt] {$\mathsf{Nrm}_{1}^{d}$}; +% Text Node +\draw (318,159.4) node [anchor=north west][inner sep=0.75pt] {$\mathsf{Nrm}_{1}^{d}$}; +% Text Node +\draw (318,339.4) node [anchor=north west][inner sep=0.75pt] {$\mathsf{Nrm}_{1}^{d}$}; +% Text Node +\draw (321,427.4) node [anchor=north west][inner sep=0.75pt] {$\mathsf{Nrm}_{1}^{d}$}; +% Text Node +\draw (322,237.4) node [anchor=north west][inner sep=0.75pt] [font=\LARGE] {$\vdots $}; +% Text Node +\draw (462,232.4) node [anchor=north west][inner sep=0.75pt] [font=\LARGE] {$\vdots $}; +% Text Node +\draw (181,238.4) node [anchor=north west][inner sep=0.75pt] {$\mathsf{Aff}_{-L}{}_{\mathbb{I}}{}_{_{N} ,y}$}; +% Text Node +\draw (71,231.4) node [anchor=north west][inner sep=0.75pt] {$\mathsf{Mxm}^{N}$}; + + +\end{tikzpicture} + + + \end{center} + \caption{Neural network diagramfor the $\mxm$ network} +\end{figure} + +\subsection{Lipschitz Function Approximations}\label{(9.7.6)} +\begin{lemma}%TODO: Should we stipulate compact sets? + Let $\lp E,d \rp$ be a metric space. Let $L \in \lb 0,\infty \rp$, $D \subseteq E$, $\emptyset \neq C \subseteq D$. Let $f:D \rightarrow \R$ satisfy for all $x\in D$, $y \in C$ that $\left| f(x) -f(y)\right| \les L d \lp x,y \rp$, and let $F:E \rightarrow \R \cup \{\infty\}$ satisfy for all $x\in E$ that: + \begin{align}\label{9.7.30} + F\lp x \rp = \sup_{y\in C} \lb f\lp y \rp - Ld\lp x,y \rp \rb + \end{align} + It is then the case that: + \begin{enumerate}[label = (\roman*)] + \item for all $x \in C$ that $F(x) = f(x)$ + \item it holds for all $x \in D$, that $F(x) \les f(x)$ + \item it holds for all $x\in E$ that $F\lp x \rp < \infty$ + \item it holds for all $x,y \in E$ that $\left| F(x)-F(y)\right| \les Ld\lp x,y \rp$ and, + \item it holds for all $x \in D$ that: + \begin{align}\label{9.7.31} + \left| F\lp x \rp - f \lp x \rp \right| \les 2L \lb \inf_{y\in C} d \lp x,y \rp\rb + \end{align} + \end{enumerate} +\end{lemma} +\begin{proof} + The assumption that $\forall x \in D, y \in C: \left| f(x) - f(y)\right| \les Ld\lp x,y \rp$ ensures that: + \begin{align}\label{9.7.32} + f(y) - Ld\lp x,y\rp \les f\lp x \rp \les f(y) + Ld\lp x,y \rp + \end{align} + For $x\in D$, it then renders as: + \begin{align}\label{9.7.33} + f(x) \ges \sup_{y \in C} \lb f(y) - Ld\lp x,y \rp \rb + \end{align} + This establishes Item (i). Note that (\ref{9.7.31}) then tells us that for all $x\in C$ it holds that: + \begin{align} + F\lp x \rp \ges f(x) - Ld\lp x,y \rp = f\lp x \rp + \end{align} + This with (\ref{9.7.33}) then yields Item (i). + + Note next that (\ref{9.7.32}, with $x \curvearrowleft y \text{ and } y \curvearrowleft z)$ and the triangle inequality ensure that for all $x \in E$, $y,z \in C$ it holds that: + \begin{align} + f(y) - Ld\lp x,y\rp \les f(z)+Ld\lp y,z \rp - Ld\lp x,y \rp \les f(z) + Ld\lp x,z \rp + \end{align} + We then obtain for all $x\in E, z\in C$ it holds that: + \begin{align} + F\lp x \rp = \sup_{y\in C} \lb f(y) - Ld\lp x,y \rp \rb \les f\lp x \rp + Ld\lp x,z \rp < \infty + \end{align} + This proves Item (iii). Item (iii), (\ref{9.7.30}), and the triangle inequality then shows that for all $x,y \in E$, it holds that: + \begin{align} + F(x) - F(y) &= \lb \sup_{v \in C} \lp f(v) - Ld\lp x,v \rp \rp \rb - \lb \sup_{w\in C} \lp f(w)-Ld\lp y,w \rp \rp\rb \nonumber \\ + &= \sup_{v \in C}\lb f(v) - Ld\lp x,v \rp -\sup_{w\in C} \lp f(w) - L d\lp y,w \rp \rp\rb \nonumber\\ + &\les \sup_{v \in C}\lb f(v) - Ld\lp x,v \rp - \lp f(v) - Ld\lp y,w \rp \rp\rb \nonumber\\ + &= \sup_{v\in C} \lp Ld\lp y,v \rp + Ld\lp x,v \rp -Ld\lp x,v\rp \rp = Ld \lp x,y \rp + \end{align} + This establishes Item (v). Finally, note that Items (i) and (iv), the triangle inequality, and the assumption that $\forall x \in D, y\in C: \left| f(x) - f(y) \right| \les Ld\lp x,y \rp$ ensure that for all $x\in D$ it holds that: + \begin{align} + \left| F(x) - f(x) \right| &= \inf_{y\in C} \left| F(x) - F(y) +f(y) - f(x)\right| \nonumber \\ + &\les \inf_{y\in C} \lp \left| F(x) - F(y) \right| + \left| f(y) - f(x) \right|\rp \nonumber\\ + &\les \inf_{y\in C} \lp 2Ld\lp x,y \rp\rp = 2L \lb \inf_{y\in C} d \lp x,y \rp \rb + \end{align} + This establishes Item (v) and hence establishes the Lemma. +\end{proof} +\begin{corollary}\label{9.7.6.1} + Let $\lp E,d \rp$ be a metric space, let $L \in \lb 0,\infty \rp$, $\emptyset \neq C \subseteq E$, let $f: E \rightarrow \R$ satisfy for all $x\in E$, $y \in C$ that $\left\| f(x) - f(y) \right| \les Ld \lp x,y \rp$, and let $F:E \rightarrow \R \cup \{\infty\}$ satisfy for all $x\in E$ that: + \begin{align} + F \lp x \rp = \sup_{y\in C} \lb f(y) - Ld \lp x,y \rp\rb + \end{align} + It is then the case that: + \begin{enumerate}[label = (\roman*)] + \item for all $x\in C$ that $F(x) = f(x)$ + \item for all $x\in E$ that $F(x) \les f(x)$ + \item for all $x,y \in E$ that $\left| F(x) - f(y) \right| \les L d \lp x,y \rp$ and + \item for all $x\in E$ that: \begin{align} + \left| F\lp x \rp - f\lp x \rp \right| \les 2L \lb \inf_{y\in C} d \lp x,y \rp \rb + \end{align} + \end{enumerate} +\end{corollary} +\begin{proof} + Note that Lemma \ref{(9.7.6)} establishes Items (i)\textemdash(iv). +\end{proof} +\subsection{Explicit ANN Approximations } + +\begin{lemma} + Let $d,N \in \N$, $L \in \lb 0,\infty \rp$. Let $E \subseteq \R^d$. Let $x_1,x_2,...,x_N \in E$, let $f:E \rightarrow \R$ satisfy for all $x_1,y_1 \in E$ that $\left| f(x_1) -f(y_1)\right| \les L \left\| x_1-x_2 \right\|_1$ and let $\mathsf{MC} \in \neu$ and $y = \lp f\lp x_1 \rp, f \lp x_2 \rp,...,f\lp x_N \rp\rp$ satisfy: + \begin{align} + \mathsf{MC} = \mxm^N \bullet \aff_{-L\mathbb{I}_N,y} \bullet \lb \boxminus^N_{i=1} \nrm^d_1 \bullet \aff_{\mathbb{I}_d,-x_i} \rb \bullet \cpy_{N,d} + \end{align} + It is then the case that: + \begin{align}\label{(9.7.42)} + \sup_{x\in E} \left| \lp \real_{\rect}\lp \mathsf{MC} \rp \rp \lp x \rp -f\lp x \rp \right| \les 2L \lb \sup _{x\in E} \lp \min_{i\in \{1,2,...,N\}} \left\| x-x_i\right\|_1\rp\rb + \end{align} +\end{lemma} +\begin{proof} + Throughout this proof let $F: \R^d \rightarrow \R$ satisfy that: + \begin{align}\label{9.7.43} + F\lp x \rp = \max_{i \in \{1,2,...,N\}} \lp f\lp x_i \rp- L \left\| x-x_i \right\|_1 \rp + \end{align} + Note then that Corollary \ref{9.7.6.1}, (\ref{9.7.43}), and the assumption that for all $x,y \in E$ it holds that $\left| f(x) - f(y)\right| \les L \left\|x-y \right\|_1$ assures that: + \begin{align}\label{(9.7.44)} + \sup_{x\in E} \left| F(x) - f(x) \right| \les 2L \lb \sup_{x\in E} \lp \min_{i \in \{1,2,...,N\}} \left\| x-x_i\right\|_1\rp\rb + \end{align} + Then Lemma \ref{(9.7.5)} tells us that for all $x\in E$ it holds that $F(x) = \lp \real_{\rect} \lp \mathsf{MC} \rp \rp \lp x \rp$. This combined with (\ref{(9.7.44)}) establishes (\ref{(9.7.42)}). +\end{proof} +\begin{lemma} + Let $d,N \in \N$, $L \in \lb 0,\infty \rp$. Let $E \subseteq \R^d$. Let $x_1,x_2,...,x_N \in E$, let $f:E \rightarrow \R$ satisfy for all $x_1,x_2 \in E$ that $\left| f(x_1) -f(x_2)\right| \les L \left\| x_1-x_2 \right\|_1$ and let $\mathsf{MC} \in \neu$ and $y = \lp f\lp x_1 \rp, f \lp x_2 \rp,...,f\lp x_N \rp\rp$ satisfy: + \begin{align} + \mathsf{MC} = \mxm^N \bullet \aff_{-L\mathbb{I}_N,y} \bullet \lb \boxminus^N_{i=1} \nrm^d_1 \bullet \aff_{\mathbb{I}_d,-x_i} \rb \bullet \cpy_{N,d} + \end{align} +It is then the case that: + \begin{align} + \lim_{N \rightarrow \infty} \lb \mathbb{P} \lp \sup_{x\in E} \left| \lp \real_{\rect}\lp \mathsf{MC} \rp \rp \lp x \rp -f\lp x \rp \right| >0 \rp\rb \rightarrow 0 + \end{align} +\end{lemma} +\begin{proof} + Note that $N$ is chosen uniformly from set $E \subseteq \R^d$. Note next that (\ref{(9.7.44)}) tells us that: + \begin{align} + &\lim_{N \rightarrow \infty} \lb \mathbb{P} \lp \sup_{x\in E} \left| \lp \real_{\rect}\lp \mathsf{MC} \rp \rp \lp x \rp -f\lp x \rp \right| >0 \rp\rb \nonumber \\ + &\les + \end{align} + +\end{proof} + + + + + + + + + + + + + + + + + + + + diff --git a/Dissertation_unzipped/ann_product.aux b/Dissertation_unzipped/ann_product.aux new file mode 100644 index 0000000..b0db3e5 --- /dev/null +++ b/Dissertation_unzipped/ann_product.aux @@ -0,0 +1,143 @@ +\relax +\providecommand\hyper@newdestlabel[2]{} +\@writefile{toc}{\contentsline {chapter}{\numberline {6}ANN Product Approximations}{95}{chapter.6}\protected@file@percent } +\@writefile{lof}{\addvspace {10\p@ }} +\@writefile{lot}{\addvspace {10\p@ }} +\@writefile{toc}{\contentsline {section}{\numberline {6.1}Approximation for simple products}{95}{section.6.1}\protected@file@percent } +\newlabel{lem:6.1.1}{{6.1.1}{95}{}{theorem.6.1.1}{}} +\newlabel{lem:6.1.1@cref}{{[lemma][1][6,1]6.1.1}{[1][95][]95}} +\newlabel{(6.0.1)}{{6.1.1}{95}{}{equation.6.1.1}{}} +\newlabel{(6.0.1)@cref}{{[equation][1][6,1]6.1.1}{[1][95][]95}} +\newlabel{(6.0.3)}{{6.1.4}{96}{Approximation for simple products}{equation.6.1.4}{}} +\newlabel{(6.0.3)@cref}{{[equation][4][6,1]6.1.4}{[1][96][]96}} +\newlabel{(6.0.4.2)}{{6.1.5}{96}{Approximation for simple products}{equation.6.1.5}{}} +\newlabel{(6.0.4.2)@cref}{{[equation][5][6,1]6.1.5}{[1][96][]96}} +\newlabel{(6.0.5)}{{6.1.6}{96}{Approximation for simple products}{equation.6.1.6}{}} +\newlabel{(6.0.5)@cref}{{[equation][6][6,1]6.1.6}{[1][96][]96}} +\newlabel{6.0.6}{{6.1.7}{97}{Approximation for simple products}{equation.6.1.7}{}} +\newlabel{6.0.6@cref}{{[equation][7][6,1]6.1.7}{[1][96][]97}} +\newlabel{6.0.7}{{6.1.8}{97}{Approximation for simple products}{equation.6.1.8}{}} +\newlabel{6.0.7@cref}{{[equation][8][6,1]6.1.8}{[1][97][]97}} +\newlabel{6.0.8}{{6.1.9}{97}{Approximation for simple products}{equation.6.1.9}{}} +\newlabel{6.0.8@cref}{{[equation][9][6,1]6.1.9}{[1][97][]97}} +\newlabel{6.0.9}{{6.1.10}{97}{Approximation for simple products}{equation.6.1.10}{}} +\newlabel{6.0.9@cref}{{[equation][10][6,1]6.1.10}{[1][97][]97}} +\newlabel{6.0.11}{{6.1.12}{97}{Approximation for simple products}{equation.6.1.12}{}} +\newlabel{6.0.11@cref}{{[equation][12][6,1]6.1.12}{[1][97][]97}} +\newlabel{6.0.12}{{6.1.13}{98}{Approximation for simple products}{equation.6.1.13}{}} +\newlabel{6.0.12@cref}{{[equation][13][6,1]6.1.13}{[1][97][]98}} +\newlabel{6.0.13}{{6.1.14}{98}{Approximation for simple products}{equation.6.1.14}{}} +\newlabel{6.0.13@cref}{{[equation][14][6,1]6.1.14}{[1][98][]98}} +\newlabel{6.0.14}{{6.1.15}{98}{Approximation for simple products}{equation.6.1.15}{}} +\newlabel{6.0.14@cref}{{[equation][15][6,1]6.1.15}{[1][98][]98}} +\newlabel{(6.0.17)}{{6.1.17}{99}{Approximation for simple products}{equation.6.1.17}{}} +\newlabel{(6.0.17)@cref}{{[equation][17][6,1]6.1.17}{[1][98][]99}} +\newlabel{6.1.1.1}{{6.1.1.1}{100}{}{corollary.6.1.1.1}{}} +\newlabel{6.1.1.1@cref}{{[corollary][1][]6.1.1.1}{[1][100][]100}} +\newlabel{6.0.3}{{6.1.2}{101}{}{theorem.6.1.2}{}} +\newlabel{6.0.3@cref}{{[lemma][2][6,1]6.1.2}{[1][101][]101}} +\newlabel{6.0.21}{{6.1.29}{102}{Approximation for simple products}{equation.6.1.29}{}} +\newlabel{6.0.21@cref}{{[equation][29][6,1]6.1.29}{[1][102][]102}} +\newlabel{6.0.23}{{6.1.31}{102}{Approximation for simple products}{equation.6.1.31}{}} +\newlabel{6.0.23@cref}{{[equation][31][6,1]6.1.31}{[1][102][]102}} +\newlabel{6.0.24}{{6.1.32}{103}{Approximation for simple products}{equation.6.1.32}{}} +\newlabel{6.0.24@cref}{{[equation][32][6,1]6.1.32}{[1][102][]103}} +\newlabel{6.0.25}{{6.1.33}{103}{Approximation for simple products}{equation.6.1.33}{}} +\newlabel{6.0.25@cref}{{[equation][33][6,1]6.1.33}{[1][103][]103}} +\newlabel{6.0.25}{{6.1.34}{103}{Approximation for simple products}{equation.6.1.34}{}} +\newlabel{6.0.25@cref}{{[equation][34][6,1]6.1.34}{[1][103][]103}} +\newlabel{6.0.26}{{6.1.35}{104}{Approximation for simple products}{equation.6.1.35}{}} +\newlabel{6.0.26@cref}{{[equation][35][6,1]6.1.35}{[1][103][]104}} +\newlabel{(6.1.42)}{{6.1.43}{105}{Approximation for simple products}{equation.6.1.43}{}} +\newlabel{(6.1.42)@cref}{{[equation][43][6,1]6.1.43}{[1][105][]105}} +\@writefile{toc}{\contentsline {subsection}{\numberline {6.1.1}The $\prd $ network}{106}{subsection.6.1.1}\protected@file@percent } +\newlabel{prd_network}{{6.1.3}{106}{}{theorem.6.1.3}{}} +\newlabel{prd_network@cref}{{[lemma][3][6,1]6.1.3}{[1][105][]106}} +\newlabel{6.0.33}{{6.1.47}{107}{The $\prd $ network}{equation.6.1.47}{}} +\newlabel{6.0.33@cref}{{[equation][47][6,1]6.1.47}{[1][106][]107}} +\newlabel{(6.1.49)}{{6.1.50}{108}{The $\prd $ network}{equation.6.1.50}{}} +\newlabel{(6.1.49)@cref}{{[equation][50][6,1]6.1.50}{[1][108][]108}} +\newlabel{(6.1.50)}{{6.1.51}{109}{The $\prd $ network}{equation.6.1.51}{}} +\newlabel{(6.1.50)@cref}{{[equation][51][6,1]6.1.51}{[1][108][]109}} +\newlabel{cor_prd}{{6.1.3.1}{110}{}{corollary.6.1.3.1}{}} +\newlabel{cor_prd@cref}{{[corollary][1][]6.1.3.1}{[1][110][]110}} +\@writefile{toc}{\contentsline {section}{\numberline {6.2}Higher Approximations}{111}{section.6.2}\protected@file@percent } +\@writefile{toc}{\contentsline {subsection}{\numberline {6.2.1}The $\tun $ Neural Network}{112}{subsection.6.2.1}\protected@file@percent } +\newlabel{6.2.2}{{6.2.2}{112}{}{theorem.6.2.2}{}} +\newlabel{6.2.2@cref}{{[lemma][2][6,2]6.2.2}{[1][112][]112}} +\citation{grohs2019spacetime} +\@writefile{toc}{\contentsline {subsection}{\numberline {6.2.2}The $\pwr $ Neural Networks}{114}{subsection.6.2.2}\protected@file@percent } +\newlabel{6.2.4}{{6.2.4}{114}{}{theorem.6.2.4}{}} +\newlabel{6.2.4@cref}{{[lemma][4][6,2]6.2.4}{[1][114][]114}} +\newlabel{power_prop}{{6.2.5}{115}{}{theorem.6.2.5}{}} +\newlabel{power_prop@cref}{{[lemma][5][6,2]6.2.5}{[1][115][]115}} +\citation{grohs2019spacetime} +\citation{grohs2019spacetime} +\citation{grohs2019spacetime} +\citation{grohs2019spacetime} +\citation{grohs2019spacetime} +\newlabel{(6.2.19)}{{6.2.22}{119}{The $\pwr $ Neural Networks}{equation.6.2.22}{}} +\newlabel{(6.2.19)@cref}{{[equation][22][6,2]6.2.22}{[1][119][]119}} +\citation{grohs2019spacetime} +\newlabel{(6.2.31)}{{6.2.36}{122}{The $\pwr $ Neural Networks}{equation.6.2.36}{}} +\newlabel{(6.2.31)@cref}{{[equation][36][6,2]6.2.36}{[1][122][]122}} +\newlabel{(6.2.39)}{{6.2.39}{123}{The $\pwr $ Neural Networks}{equation.6.2.39}{}} +\newlabel{(6.2.39)@cref}{{[equation][39][6,2]6.2.39}{[1][123][]123}} +\@writefile{toc}{\contentsline {subsection}{\numberline {6.2.3}The $\tay $ neural network}{123}{subsection.6.2.3}\protected@file@percent } +\newlabel{6.2.14}{{6.2.43}{124}{}{equation.6.2.43}{}} +\newlabel{6.2.14@cref}{{[equation][43][6,2]6.2.43}{[1][124][]124}} +\newlabel{6.2.8}{{6.2.10}{124}{}{theorem.6.2.10}{}} +\newlabel{6.2.8@cref}{{[lemma][10][6,2]6.2.10}{[1][124][]124}} +\newlabel{6.2.9}{{6.2.11}{124}{}{theorem.6.2.11}{}} +\newlabel{6.2.9@cref}{{[lemma][11][6,2]6.2.11}{[1][124][]124}} +\citation{grohs2019spacetime} +\citation{grohs2019spacetime} +\citation{grohs2019spacetime} +\@writefile{toc}{\contentsline {subsection}{\numberline {6.2.4}Neural network approximations for $e^x$.}{128}{subsection.6.2.4}\protected@file@percent } +\@setckpt{ann_product}{ +\setcounter{page}{129} +\setcounter{equation}{56} +\setcounter{enumi}{5} +\setcounter{enumii}{0} +\setcounter{enumiii}{0} +\setcounter{enumiv}{0} +\setcounter{footnote}{1} +\setcounter{mpfootnote}{0} +\setcounter{part}{2} +\setcounter{chapter}{6} +\setcounter{section}{2} +\setcounter{subsection}{4} +\setcounter{subsubsection}{0} +\setcounter{paragraph}{0} +\setcounter{subparagraph}{0} +\setcounter{figure}{0} +\setcounter{table}{0} +\setcounter{@pps}{0} +\setcounter{@ppsavesec}{0} +\setcounter{@ppsaveapp}{0} +\setcounter{AM@survey}{0} +\setcounter{parentequation}{0} +\setcounter{section@level}{2} +\setcounter{Item}{142} +\setcounter{Hfootnote}{1} +\setcounter{bookmark@seq@number}{39} +\setcounter{NAT@ctr}{0} +\setcounter{ALG@line}{0} +\setcounter{ALG@rem}{0} +\setcounter{ALG@nested}{0} +\setcounter{ALG@Lnr}{1} +\setcounter{ALG@blocknr}{1} +\setcounter{ALG@storecount}{0} +\setcounter{ALG@tmpcounter}{0} +\setcounter{lstnumber}{1} +\setcounter{theorem}{12} +\setcounter{corollary}{0} +\setcounter{lstlisting}{0} +\setcounter{nn@layerindex@counter}{6} +\setcounter{nn@lastlayerstart@counter}{0} +\setcounter{nn@thislayerstart@counter}{1} +\setcounter{nn@lastlayercount@counter}{4} +\setcounter{nn@thislayercount@counter}{2} +\setcounter{nn@lastlayerindex@counter}{4} +\setcounter{nn@thislayerindex@counter}{5} +} diff --git a/Dissertation_unzipped/ann_product.pdf b/Dissertation_unzipped/ann_product.pdf new file mode 100644 index 0000000..d950b5b Binary files /dev/null and b/Dissertation_unzipped/ann_product.pdf differ diff --git a/Dissertation_unzipped/ann_product.tex b/Dissertation_unzipped/ann_product.tex new file mode 100644 index 0000000..5271fe2 --- /dev/null +++ b/Dissertation_unzipped/ann_product.tex @@ -0,0 +1,1640 @@ +\chapter{ANN Product Approximations} +\section{Approximation for Products of Two Real Numbers} +We will build up the tools necessary to approximate $e^x$ via neural networks in the framework described in the previous sections. While much of the foundation comes from, e.g., \cite{grohs2019spacetime} way, we will, along the way, encounter neural networks not seen in the literature, such as the $\tay$, $\pwr$, $\tun$, and finally a neural network approximant for $e^x$. For each of these neural networks, we will be concerned with at least the following: +\begin{enumerate}[label = (\roman*)] + \item whether their instantiations using the ReLU function (often just continuous functions) are continuous. + \item whether their depths are bounded, at most polynomially, on the type of accuracy we want, $\ve$. + \item whether their parameter estimates are bounded at most polynomially on the type of accuracy we want, $\ve$. + \item The accuracy of our neural networks. +\end{enumerate} +\subsection{The squares of real numbers in $\lb 0,1 \rb$} + +\begin{definition}[The $\mathfrak{i}_d$ Network]\label{def:mathfrak_i} + For all $d \in \N$ we will define the following set of neural networks as ``activation neural networks'' denoted $\mathfrak{i}_d$ as: + \begin{align} + \mathfrak{i}_d = \lp \lp \mathbb{I}_d, \mymathbb{0}_d\rp, \lp \mathbb{I}_d, \mymathbb{0}_d\rp \rp + \end{align} +\end{definition} +\begin{lemma}\label{lem:mathfrak_i} + Let $d \in \N$. It is then the case that: + \begin{enumerate}[label = (\roman*)] + \item $\real_{\rect} \lp \mathfrak{i}_4\rp \in C \lp \R^d, \R^d\rp$. + \item $\lay \lp \mathfrak{i}_d\rp = \lp d,d,d\rp$ + \item $\param \lp \mathfrak{i}_4\rp = 2d^2+2d$ + \end{enumerate} +\end{lemma} +\begin{proof} + Item (i) is straightforward from the fact that for all $d \in \N$ it is the case that $\real_{\rect} \lp \mathfrak{i}_d\rp = \mathbb{I}_d\lp \real_{\rect} \lp \lb \mathbb{I}_d\rb_*\rp + \mymathbb{0}_d\rp + \mymathbb{0}_d$. Item (ii) is straightforward from the fact that $\mathbb{I}_d \in \R^{d \times d}$. We realize Item (iii) by observation. +\end{proof} + + +\begin{lemma}\label{lem:6.1.1}\label{lem:phi_k} + Let $\lp c_k \rp _{k \in \N} \subseteq \R$, $\lp A_k \rp _{k \in \N} \in \R^{4 \times 4},$ $\mathbb{B}\in \R^{4 \times 1}$, $\lp C_k \rp _{k\in \N}$ satisfy for all $k \in \N$ that: + \begin{align}\label{(6.0.1)} + A_k = \begin{bmatrix} + 2 & -4 &2 & 0 \\ + 2 & -4 & 2 & 0\\ + 2 & -4 & 2 & 0\\ + -c_k & 2c_k & -c_k & 1 + \end{bmatrix} \quad B=\begin{bmatrix} + 0 \\ -\frac{1}{2} \\ -1 \\ 0 + \end{bmatrix} \quad C_k = \begin{bmatrix} + -c_k & 2c_k &-c_k & 1 + \end{bmatrix} + \end{align} + and that: + \begin{align} + c_k = 2^{1-2k} + \end{align} + Let $\Phi_k \in \neu$, $k\in \N$ satisfy for all $k \in [2,\infty) \cap \N$ that $\Phi_1 = \lp \aff_{C_1,0} \bullet \mathfrak{i}_4 \rp \bullet \aff_{\mymathbb{e}_4,B}$, that for all $d \in \N$, $\mathfrak{i}_d = \lp \lp \mathbb{I}_d, \mymathbb{0}_d \rp, \lp \mathbb{I}_d, \mymathbb{0}_d \rp \rp$ and that: + \begin{align} + \Phi_k =\lp \aff_{C_k,0}\bullet \mathfrak{i}_4 \rp \bullet \lp \aff_{A_{k-1},B} \bullet \mathfrak{i}_4\rp \bullet \cdots \bullet \lp \aff_{A_1,B} \bullet \mathfrak{i}_4 \rp \bullet \aff_{\mymathbb{e}_4,B} + \end{align} + It is then the case that: + \begin{enumerate}[label = (\roman*)] + \item for all $k \in \N$, $x \in \R$ we have $\real_{\rect}\lp \Phi_k\rp\lp x \rp \in C \lp \R, \R \rp $ + \item for all $k \in \N$ we have $\lay \lp \Phi_k \rp = \lp 1,4,4,...,4,1 \rp \in \N^{k+2}$ + \item for all $k \in \N$, $x \in \R \setminus \lb 0,1 \rb $ that $\lp \real_{\rect} \lp \Phi_k \rp \rp \lp x \rp = \rect \lp x \rp$ + \item for all $k \in \N$, $x \in \lb 0,1 \rb$, we have $\left| x^2 - \lp \real_{\rect} \lp \xi_k \rp \rp \lp x \rp \right| \les 2^{-2k-2}$, and + \item for al $k \in \N$ , we have that $\param \lp \Phi_k \rp = 20k-7$ + \end{enumerate} +\end{lemma} +\begin{proof} + Let $g_k: \R \rightarrow \lb 0,1 \rb$, $k \in \N$ be the functions defined as such, satisfying for all $k \in \N$, $x \in \R$ that: + \begin{align}\label{(6.0.3)} + g_1 \lp x \rp &= \begin{cases} + 2x & : x \in \lb 0,\frac{1}{2} \rp \\ + 2-2x &: x\in \lb \frac{1}{2},1\rb \\ + 0 &: x \in \R \setminus \lb 0,1 \rb + \end{cases} \\ + g_{k+1} &= g_1(g_{k}) \nonumber + \end{align} + and let $f_k: \lb 0,1 \rb \rightarrow \lb 0,1 \rb$, $k \in \N_0$ be the functions satisfying for all $k \in \N_0$, $n \in \{0,1,...,2^k-1\}$, $x \in \lb \frac{n}{2^k}, \frac{n+1}{2^k} \rp$ that $f_k(1)=1$ and: + \begin{align}\label{(6.0.4.2)} + f_k(x) = \lb \frac{2n+1}{2^k} \rb x-\frac{n^2+n}{2^{2k}} + \end{align} + and let $r_k = \lp r_{k,1},r_{k,2},r_{k,3},r_{k,4} \rp: \R \rightarrow \R^4$, $k \in \N$ be the functions which which satisfy for all $x \in \R$, $k \in \N$ that: + \begin{align}\label{(6.0.5)} + r_1\lp x \rp &= \begin{bmatrix} + r_{1,1}(x) \\ r_{2,1}(x) \\ r_{3,1}(x) \\ r_{4,1}(x) + \end{bmatrix}= \rect \lp \begin{bmatrix} + x \\ x-\frac{1}{2} \\ x-1 \\ x + \end{bmatrix} \rp \\ + r_{k+1} &= A_{k+1}r_k(x) \nonumber + \end{align} + Note that since it is the case that for all $x \in \R$ that $\rect(x) = \max\{x,0\}$, (\ref{(6.0.3)}) and (\ref{(6.0.5)}) shows that it holds for all $x \in \R$ that: + \begin{align}\label{6.0.6} + 2r_{1,1}(x) -4r_{2,1}(x) + 2r_{3,1}(x) &= 2 \rect(x) -4\rect \lp x-\frac{1}{2}\rp+2\rect\lp x-1\rp \nonumber \\ + &= 2\max\{x,0\} -4\max\left\{x-\frac{1}{2} ,0\right\}+2\max\{x-1,0\} \nonumber \\ + &=g_1(x) + \end{align} + Note also that combined with (\ref{(6.0.4.2)}), the fact that for all $x\in [0,1]$ it holds that $f_0(x) = x = \max\{x,0\}$ tells us that for all $x \in \R$: + \begin{align}\label{6.0.7} + r_{4,1}(x) = \max \{x,0\} = \begin{cases} + f_0(x) & :x\in [0,1] \\ + \max\{x,0\}& :x \in \R \setminus \lb 0,1\rb + \end{cases} + \end{align} + We next claim that for all $k \in \N$, it is the case that: + \begin{align}\label{6.0.8} + \lp \forall x \in \R : 2r_{1,k}(x)-4r_{2,k}(x) + 2r_{3,k}(x) =g(x) \rp + \end{align} + and that: + \begin{align}\label{6.0.9} + \lp \forall x \in \R: r_{4,k} (x) = \begin{cases} + f_{k-1}(x) & :x \in \lb 0,1 \rb \\ + \max\{x,0\} & : x \in \R \setminus \lb 0,1\rb + \end{cases} \rp + \end{align} + We prove (\ref{6.0.8}) and (\ref{6.0.9}) by induction. The base base of $k=1$ is proved by (\ref{6.0.6}) and (\ref{6.0.7}). For the induction step $\N \ni k \rightarrow k+1$ assume there does exist a $k \in \N$ such that for all $x \in \R$ it is the case that: + \begin{align} + 2r_{1,k}(x) - 4r_{2,k}(x) + 2r_{3,k}(x) = g_k(x) + \end{align} + and: + \begin{align}\label{6.0.11} + r_{4,k}(x) = \begin{cases} + f_{k-1}(x) & : x \in [0,1] \\ + \max\{x,0\} &: x \in \R \setminus \lb 0,1 \rb + \end{cases} + \end{align} + Note that then (\ref{(6.0.3)}),(\ref{(6.0.5)}), and (\ref{6.0.6}) then tells us that for all $x \in \R$ it is the case that: + \begin{align}\label{6.0.12} + g_{k+1}\lp x \rp &= g_1(g_k(x)) = g_1(2r_{1,k}(x)+4r_{2,k}(x) + 2r_{3,k}(x)) \nonumber \\ + &= 2\rect \lp 2r_{1,k}(x)) + 4r_{2,k} +2r_{3,k}(x) \rp \nonumber \\ + &-4\rect \lp 2r_{1,k}\lp x \rp -4r_{2,k}+2r_{3,k}(x) - \frac{1}{2} \rp \nonumber \\ + &+ 2\rect \lp 2r_{1,k} (x) - 4r_{2,k}(x) + 2r_{3,k}(x)-1 \rp \nonumber \\ + &=2r_{1,k+1}(x) -4r_{2,k+1}(x) + 2r_{3,k+1}(x) + \end{align} + In addition note that (\ref{(6.0.4.2)}), (\ref{(6.0.5)}), and (\ref{6.0.7}) tells us that for all $x \in \R$: + %TODO: Ask about the extra powers of 2 and b_k + \begin{align}\label{6.0.13} + r_{4,k+1}(x) &= \rect \lp \lp -2 \rp ^{3-2 \lp k+1 \rp }r_{1,k} \lp x \rp + 2^{4-2 \lp k+1 \rp}r_{2,k} \lp x \rp + \lp -2 \rp^{3-2\lp k+1\rp }r_{3,k} \lp x \rp + r_{4,k} \lp x\rp \rp \nonumber \\ + &= \rect \lp \lp -2 \rp ^{1-2k}r_{1,k} \lp x \rp + 2^{2-2k}r_{k,2}\lp x \rp + \lp -2 \rp ^{1-2k}r_{3,k} \lp x \rp + r_{4,k}\lp x \rp \rp \nonumber \\ + &=\rect \lp 2^{-2k} \lb -2r_{1,k}\lp x \rp + 2^2r_{2,k} \lp x \rp -2r_{3,k} \lp x \rp \rb +r_{4,k}\lp x \rp \rp \nonumber \\ + &= \rect \lp - \lb 2^{-2k} \rb \lb 2r_{1,k}\lp x \rp -4r_{2,k} \lp x \rp +2r_{3,k}\lp x \rp \rb +r_{4,k}\lp x \rp \rp \nonumber \\ + &= \rect\lp -\lb 2^{-2k} \rb g_k \lp x \rp +r_{4,k}\lp x \rp \rp + \end{align} + This and the fact that for all $x\in \R$ it is the case that $\rect \lp x \rp = \max\{x,0\}$, that for all $x\in \lb 0 ,1 \rb$ it is the case that $f_k \lp x \rp \ges 0$, (\ref{6.0.11}), shows that for all $x \in \lb 0,1 \rb$ it holds that: + \begin{align}\label{6.0.14} + r_{4,k+1}\lp x \rp &= \rect \lp -2 \lb 2^{-2k} g_k \rb + f_{k-1}\lp x \rp \rp = \rect \lp -2 \lp 2^{-2k}g_k \lp x \rp \rp +x-\lb \sum^{k-1}_{j=1} \lp 2^{-2j}g_j \lp x \rp \rp \rb \rp \nonumber \\ + &= \rect \lp x - \lb \sum^k_{j=1}2^{-2j}g_j \lp x \rp \rb \rp = \rect \lp f_k \lp x \rp \rp =f_k \lp x \rp + \end{align} + Note next that (\ref{6.0.11}) and (\ref{6.0.13}) then tells us that for all $x\in \R \setminus \lb 0,1\rb$: + \begin{align} + r_{4,k+1}\lp x \rp = \max \left\{ -\lp 2^{-2k}g_x \lp x \rp \rp + r_{4,k}\lp x \rp \right\} = \max\{\max\{x,0\},0\} = \max\{x,0\} + \end{align} + Combining (\ref{6.0.12}) and (\ref{6.0.14}) proves (\ref{6.0.8}) and (\ref{6.0.9}). Note that then (\ref{(6.0.1)}) and (\ref{6.0.8}) assure that for all $k\in \N$, $x\in \R$ it holds that $\real_{\rect} \lp \Phi_k \rp \in C \lp \R,\R \rp$ and that: + \begin{align}\label{(6.0.17)} + &\lp \real_{\rect} \lp \Phi_k \rp \rp \lp x \rp \nonumber \\ + &= \lp \real_{\rect} \lp \lp \aff_{C_k,0} \bullet \mathfrak{i}_4 \rp \bullet \lp \aff_{A_{k-1},B} \bullet \mathfrak{i}_4 \rp \bullet \cdots \bullet\lp \aff_{A_1,B} \bullet \mathfrak{i}_4 \rp \bullet \aff_{\mymathbb{e}_4,B} \rp \rp \lp x \rp \nonumber \\ + &= \lp -2\rp^{1-2k}r_{1,k}\lp x \rp + 2^{2-2k} r_{2,k} \lp x \rp + \lp -2 \rp ^{1-2k} r_{3,k} \lp x \rp + r_{4,k} \lp x \rp \nonumber \\ + &=\lp -2 \rp ^{2-2k} \lp \lb \frac{r_{1,k}\lp x \rp +r_{3,k} \lp x \rp }{-2} \rb + r_{2,k}\lp x \rp \rp +r_{4,k}\lp x \rp \nonumber \\ + &=2^{2-2k} \lp \lb \frac{r_{1,k}\lp x \rp+r_{3,k} \lp x \rp }{-2} \rb + r_{2,k} \lp x \rp \rp +r_{4,k} \lp x \rp \nonumber \\ + &=2^{-2k}\lp 4r_{2,k} \lp x \rp -2r_{1,k}\lp x \rp -2r_{3,k} \lp x \rp \rp +r_{4,k} \lp x \rp \nonumber \\ + &=-\lb 2^{-2k} \rb \lb 2r_{1,k} \lp x \rp -4r_{2,k} \lp x \rp +2r_{3,k} \lp x \rp \rb +r_{4,k} \lp x \rp = -\lb 2^{-2k} \rb g_k \lp x \rp + r_{4,k} \lp x \rp + \end{align} + This and (\ref{6.0.9}) tell us that: + \begin{align} + \lp \real_{\rect} \lp \Phi_k \rp \rp \lp x \rp = - \lp 2^{-2k}g_k \lp x \rp \rp +f_{k-1}\lp x \rp &= -\lp 2^{-2k}g_k \lp x \rp \rp +x-\lb \sum^{k-1}_{j=1} 2^{-2j}g_j \lp x \rp \rb \nonumber \\ + &=x-\lb \sum^k_{j=1}2^{-2j}g_j \lp x \rp \rb =f_k\lp x\rp \nonumber + \end{align} + Which then implies for all $k\in \N$, $x \in \lb 0,1\rb$ that it holds that: + \begin{align} + \left\| x^2-\lp \real_{\rect} \lp \Phi_k \rp \rp \lp x \rp \right\| \les 2^{-2k-2} + \end{align} + This, in turn, establishes Item (i). + + Finally observe that (\ref{(6.0.17)}) then tells us that for all $k\in \N$, $x \in \R \setminus \lb 0,1\rb$ it holds that: + \begin{align} + \lp \real_{\rect} \lp \Phi_k \rp \rp \lp x \rp = -2^{-2k}g_k \lp x \rp +r_{4,k} \lp x \rp =r_{4,k} \lp x \rp = \max\{x,0\} = \rect(x) + \end{align} + This establishes Item(iv). Note next that Item(iii) ensures for all $k\in \N$ that $\dep\lp \xi_k \rp = k+1$, and: + \begin{align} + \param \lp \Phi_k \rp = 4(1+1) + \lb \sum^k_{j=2} 4 \lp 4+1\rp \rb + \lp 4+1 \rp =8+20\lp k-1\rp+5 = 20k-7 + \end{align} + This, in turn, proves Item(vi). The proof of the lemma is thus complete. +\end{proof} +\begin{remark} + For an \texttt{R} implementation see Listing \ref{Phi_k} +\end{remark} + +\begin{figure}[h] + \includegraphics[width = \linewidth]{/Users/shakilrafi/R-simulations/Phi_k_properties/diff.png} + \caption{Plot of $\log_{10}$ of the $L^1$ difference between $\Phi_k$ and $x^2$ over $\lb 0,1\rb$ for different values of $k$} +\end{figure} + +\begin{corollary}\label{6.1.1.1}\label{cor:phi_network} + Let $\ve \in \lp 0,\infty\rp$, $M= \min \{ \frac{1}{2}\log_2 \lp \ve^{-1} \rp -1,\infty\}\cap \N$, $\lp c_k\rp_{k \in \N} \subseteq \R$, $\lp A_k\rp_{k\in\N} \subseteq \R^{4 \times 4}$, $B \in \R^{4\times 1}$, $\lp C_k\rp_{k\in \N}$ satisfy for all $k \in \N$ that: + \begin{align} + A_k = \begin{bmatrix} + 2&-4&2&0 \\ + 2&-4&2&0\\ + 2&-4&2&0\\ + -c_k&2c_k & -c_k&1 + \end{bmatrix}, \quad B = \begin{bmatrix} + 0\\ -\frac{1}{2}\quad \\ -1 \\ 0 + \end{bmatrix}\quad C_k = \begin{bmatrix} + -c_k &2c)_k&-c_k&1 + \end{bmatrix} + \end{align} + where: + \begin{align} + c_k = 2^{1-2k} + \end{align} + and let $\Phi \in \neu$ be defined as: + \begin{align} + \Phi = \begin{cases}\label{def:Phi} + \lb \aff_{C_1,0}\bullet \mathfrak{i}_4\rb \bullet \aff_{\mymathbb{e}_4,B} & M=1 \\ + \lb \aff_{C_M,0} \bullet \mathfrak{i}_4\rb\bullet \lb \aff_{A_{M-1},0} \bullet \mathfrak{i}_4 \rb \bullet \cdots \bullet \lb \aff_{A_1,B}\bullet \mathfrak{i}_4\rb \bullet \aff_{\mymathbb{e}_4,B} & M \in \lb 2,\infty \rp \cap \N + \end{cases} + \end{align} + it is then the case that: + \begin{enumerate}[label = (\roman*)] + \item $\real_{\rect} \lp \Phi\rp \in C \lp \R,\R\rp$ + \item $\lay \lp \Phi\rp = \lp 1,4,4,...,4,1\rp \in \N^{M+2} $ + \item it holds for all $x \in \R \setminus\lb 0,1 \rb$ that $\lp \real_{\rect} \lp \Phi\rp\rp \lp x \rp = \rect(x)$ + \item it holds for all $x \in \lb 0,1 \rb$ that $\left| x^2 - \lp \real_{\rect} \lp \Phi \rp \rp\lp x \rp \right| \les 2^{-2M-2} \les \ve$ + \item $\dep \lp \Phi \rp \les M+1 \les \max\{ \frac{1}{2}\log_2 \lp \ve^{-1}\rp+1,2\}$, and + \item $\param \lp \Phi\rp = 20M-7 \les \max\left\{ 10\log_2 \lp \ve^{-1}\rp-7,13\right\}$ + \end{enumerate} + \end{corollary} + \begin{proof} + Items (i)--(iii) are direct consequences of Lemma \ref{lem:6.1.1}, Items (i)--(iii). Note next the fact that $M = \min \left\{\N \cap \lb \frac{1}{2} \log_2 \lp \ve^{-1}\rp-1\rb,\infty\right\}$ ensures that: + \begin{align} + M = \min \left\{ \N \cap \lb \frac{1}{2}\log_2\lp \ve^{-1}\rp-1\rb, \infty\right\} \ges \min \left\{ \lb\max \left\{ 1,\frac{1}{2}\log_2 \lp\ve^{-1} \rp-1\right\},\infty \rb\right\} \ges \frac{1}{2}\log_2 \lp \ve^{-1}\rp-1 + \end{align} + This and Item (v) of Lemma \ref{lem:6.1.1} demonstrate that for all $x\in \lb 0,1\rb$ it then holds that: + \begin{align} + \left| x^2 - \lp \real_{\rect}\lp \Phi\rp\rp \lp x\rp \right| \les 2^{-2M-2} = 2^{-2(M+1)} \les 2^{-\log_2\lp\ve^{-1} \rp} = \ve + \end{align} + Thus establishing Item (iv). The fact that $M = \min \left\{ \N \cap \lb \frac{1}{2}\log_2 \lp \ve^{-1}\rp -1,\infty\rb\right\}$ and Item (ii) of Lemma \ref{lem:6.1.1} tell us that: + \begin{align} + \dep \lp \Phi \rp = M+1 \les \max \left\{ \frac{1}{2} \log_2 \lp \ve^{-1}\rp+1,2\right\} + \end{align} + Which establishes Item(v). This and Item (v) of Lemma \ref{lem:6.1.1} then tell us that: + \begin{align} + \param \lp \Phi_M\rp \les 20M-7 \les 20 \max\left\{ \frac{1}{2}\log_2\lp\ve^{-1}\rp,2\right\}-7 = \max\left\{ 10\log_2 \lp\ve^{-1} \rp-7,13\right\} + \end{align} + This completes the proof of the corollary. + \end{proof} +\begin{remark} + For an implementation in \texttt{R}, see Listing \ref{Phi} +\end{remark} +\begin{figure}[h] + \centering + \includegraphics[width = \linewidth]{/Users/shakilrafi/R-simulations/Phi_properties/Phi_diff_contour.png} + \caption{Contour plot of the $L^1$ difference between $\Phi$ and $x^2$ over $\lb 0,1 \rb$ for different values of $\ve$.} +\end{figure} +\begin{remark} + Note that (\ref{def:Phi}) implies that $\dep \lp \Phi \rp \ges 4$. +\end{remark} +Now that we have neural networks that perform the squaring operation inside $\lb -1,1\rb$, we may extend to all of $\R$. Note that this neural network representation differs somewhat from the ones in \cite{grohs2019spacetime}. + +\subsection{The $\sqr$ network} +\begin{lemma}\label{6.0.3}\label{lem:sqr_network} + Let $\delta,\epsilon \in (0,\infty)$, $\alpha \in (0,\infty)$, $q\in (2,\infty)$, $ \Phi \in \neu$ satisfy that $\delta = 2^{\frac{-2}{q-2}}\ve ^{\frac{q}{q-2}}$, $\alpha = \lp \frac{\ve}{2}\rp^{\frac{1}{q-2}}$, $\real{\rect}\lp\Phi\rp \in C\lp \R,\R\rp$, $\dep(\Phi) \les \max \left\{\frac{1}{2} \log_2(\delta^{-1})+1,2\right\}$, $\param(\Phi) \les \max\left\{10\log_2\lp \delta^{-1}\rp-7,13\right\}$, $\sup_{x \in \R \setminus [0,1]} | \lp \real_{\rect} \lp \Phi \rp -\rect(x) \right| =0$, and $\sup_{x\in \lb 0,1\rb} |x^2-\lp \real_{\rect} \lp \Phi \rp \rp \lp x\rp | \les \delta$, let $\Psi \in \neu$ be the neural network given by: + \begin{align} + \Psi = \lp \aff_{\alpha^{-2},0} \bullet \Phi \bullet \aff_{\alpha,0} \rp \bigoplus\lp \aff_{\alpha^{-2},0} \bullet \Phi \bullet \aff_{-\alpha,0}\rp + \end{align} + \begin{enumerate}[label = (\roman*)] + \item it holds that $\real_{\rect} \lp \Psi \rp \in C \lp \R,\R \rp$. + \item it holds that $\lp \real_{\rect} \lp \Psi \rp \rp \lp 0\rp=0$ + \item it holds for all $x\in \R$ that $0\les \lp \real_{\rect} \lp \Psi \rp \rp \lp x \rp \les \ve + |x|^2$ + \item it holds for all $x \in \R$ that $|x^2-\lp \real_{\rect} \lp \Psi \rp \rp \lp x \rp |\les \ve \max\{1,|x|^q\}$ + \item it holds that $\dep (\Psi)\les \max\left\{1+\frac{1}{q-2}+\frac{q}{2(q-2)}\log_2 \lp \ve^{-1} \rp,2\right\}$, and + \item it holds that $\param\lp \Psi \rp \les \max\left\{ \lb \frac{40q}{q-2} \rb \log_2 \lp \ve^{-1} \rp +\frac{80}{q-2}-28,52 \right\}$ + \end{enumerate} +\end{lemma} +\begin{proof} + Note that for all $x\in \R$ it is the case that: + \begin{align}\label{6.0.21} + \lp \real_{\rect}\lp \Psi \rp \rp\lp x \rp &= \lp \real_{\rect} \lp \lp \aff_{\alpha^{-2}}\bullet \Phi \bullet \aff_{\alpha,0}\rp \oplus\lp \aff_{\alpha^{-2},0} \bullet \Phi \bullet \aff_{-\alpha,0} \rp \rp \rp \lp x \rp \nonumber\\ + &= \lp \real_{\rect}\lp \aff_{\alpha^{-2},0} \bullet \Phi \bullet \aff_{\alpha,0} \rp \rp \lp x\rp + \lp \real_{\rect}\lp \aff_{\alpha^{-2},0} \bullet \Phi \bullet \aff_{-\alpha,0}\rp \rp \lp x\rp \nonumber \\ + &= \frac{1}{\alpha^2}\lp \real_{\rect}\lp \Phi \rp \rp \lp \alpha x\rp + \frac{1}{\alpha^2}\lp \real_{\rect} \lp \Phi \rp \rp \lp -\alpha x\rp \nonumber\\ + &= \frac{1}{\lp \frac{\ve}{2}\rp^{\frac{2}{q-2}}}\lb \lp \real_{\rect}\lp \Phi \rp \rp \lp \lp \frac{\ve}{2}\rp ^{\frac{1}{q-2}}x \rp + \lp \real_{\rect}\lp \Phi \rp \rp \lp -\lp \frac{\ve}{2}\rp^{\frac{1}{q-2}}x\rp \rb + \end{align} + This and the assumption that $\Phi \in C\lp \R, \R \rp$ along with the assumption that $\sup_{x\in \R \setminus \lb 0,1\rb } | \lp \real_{\rect} \lp \Phi \rp \rp \lp x \rp -\rect\lp x\rp | =0$ tells us that for all $x\in \R$ it holds that: + \begin{align} + \lp \real_{\rect}\lp \Psi \rp \rp \lp 0 \rp &= \lp \frac{\ve}{2}\rp^{\frac{-2}{q-2}}\lb \lp \real_{\rect}\lp \Phi \rp \rp \lp 0 \rp +\lp \real_{\rect} \lp \Phi\rp \rp \lp 0 \rp \rb \nonumber \\ + &=\lp \frac{\ve}{2}\rp ^{\frac{-2}{q-2}} \lb \rect (0)+\rect(0) \rb \nonumber \\ + &=0 + \end{align} + This, in turn, establishes Item (i)--(ii). Observe next that from the assumption that $\real_{\rect} \lp \Phi \rp \in C\lp \R,\R \rp$ and the assumption that $\sup_{x\in \R \setminus \lb 0,1\rb} | \lp \real_{\rect}\lp \Phi \rp \rp \lp x \rp -\rect(x) |=0$ ensure that for all $x\in \R \setminus \lb -1,1 \rb$ it holds that: + \begin{align}\label{6.0.23} + \lb \real_{\rect}\lp \Phi \rp \rb \lp x\rp + \lb \real_{\rect}\lp \Phi \rp \lp -x \rp\rb = \rect\lp x\rp +\rect(-x) &= \max\{x,0\}+\max\{-x,0\} \nonumber\\ + &=|x| + \end{align} + The assumption that for all $\sup_{x\in \R \setminus \lb 0,1\rb }|\lp \real_{\rect} \lp \Phi \rp \rp \lp x\rp -\rect\lp x\rp |=0$ and the assumption that $\sup_{x\in\lb 0,1\rb} |x^2-\lp \real_{\rect} \lp \Phi \rp \rp \lp x\rp |\les \delta$ show that: + \begin{align}\label{6.0.24} + &\sup_{x \in \lb -1,1\rb} \left|x^2 - \lp \lb \real_{\rect}\lp \Phi \rp \rb \lp x\rp +\lb \real_{\rect}\lp \Phi \rp \lp x \rp \rb \rp \right| \nonumber \\ + &= \max\left\{ \sup_{x\in \lb -1,0 \rb} \left| x^2-\lp \rect(x)+ \lb \real_{\rect}\lp \Phi \rp \rb \lp -x \rp \rp \right|,\sup _{x\in \lb 0,1 \rb} \left| x^2-\lp \lb \real_{\rect} \lp \Phi \rp \rb \lp x \rp + \rect \lp -x \rp \rp \right| \right\} \nonumber\\ + &= \max\left\{\sup_{x\in \lb -1,0 \rb}\left|\lp -x \rp^2 - \lp \real_{\rect}\lp \Phi \rp \rp \lp -x \rp \right|, \sup_{x\in \lb 0,1\rb} \left| x^2-\lp \real_{\rect} \lp \Phi \rp \rp \lp x \rp \right| \right\} \nonumber \\ + &=\sup_{x\in \lb 0,1 \rb}\left| x^2 - \lp \real_{\rect}\lp \Phi \rp \rp \lp x\rp \right| \les \delta + \end{align} + Next observe that (\ref{6.0.21}) and (\ref{6.0.23}) show that for all $x \in \R \setminus \lb -\lp \frac{\ve}{2} \rp^{\frac{-1}{q-2}}, \lp \frac{\ve}{2}\rp ^{\frac{-1}{q-2}} \rb$ it holds that: + \begin{align}\label{6.0.25} + 0 \les \lb \real_{\rect} \lp \Psi \rp \rb \lp x \rp &= \lp \frac{\ve}{2} \rp ^{\frac{-2}{q-2}}\lp \lb \real_{\rect} \lp \Phi \rp \rb \lp \lp \frac{\ve}{2}\rp ^{\frac{1}{q-2}}x \rp + \lb \real_{\rect} \lp \Phi \rp \rb \lp -\lp \frac{\ve}{2}\rp^{\frac{1}{q-2}} x\rp \rp \nonumber \\ + &= \lp \frac{\ve}{2} \rp ^{\frac{-2}{q-2}} \left| \lp \frac{\ve}{2} \rp^{\frac{1}{q-2}}x \right| = \lp \frac{\ve}{2} \rp^{\frac{-1}{q-2}|x|} \les |x|^2 + \end{align} + The triangle inequality then tells us that for all $x\in \R \setminus \lb - \lp \frac{\ve}{2} \rp^{\frac{-1}{q-2}}, \lp \frac{\ve}{2} \rp^{\frac{-1}{q-2}} \rb$ it holds that: + \begin{align} \label{6.0.25} + \left| x^2- \lp \real_{\rect} \lp \Psi \rp \rp \lp x \rp \right| &= \left| x^2 - \lp \frac{\ve}{2} \rp ^{\frac{-1}{q-2}}\left|x\right| \right| \les \lp \left|x \right|^2 + \lp \frac{\ve}{2} \rp ^{\frac{-1}{q-2}} \left| x \right| \rp \nonumber\\ + &= \lp \left| x \right|^q \left|x\right|^{-(q-2)} + \lp \frac{\ve}{2} \rp^{\frac{-1}{q-2}} \left| x \right|^q\left| x \right|^{-(q-1)} \rp \nonumber \\ + &\les \lp \left| x \right|^q \lp \frac{\ve}{2} \rp^{\frac{q-2}{q-2}} + \lp \frac{\ve}{2} \rp ^{\frac{-1}{q-2}} \left| x \right|^q \lp \frac{\ve}{2} \rp ^{\frac{q-1}{q-2}} \rp \nonumber \\ + &= \lp \frac{\ve}{2}+ \frac{\ve}{2} \rp \left| x \right|^q = \ve \left| x \right|^q \les \ve \max \left\{ 1, \left| x \right|^q \right\} + \end{align} + +Note that (\ref{6.0.24}), (\ref{6.0.21}) and the fact that $\delta = 2^{\frac{-2}{q-2}}\ve^{\frac{q}{q-2}}$ then tell for all $x \in \lb -\lp \frac{\ve}{2} \rp ^{\frac{-1}{q-2}}, \lp \frac{\ve}{2} \rp ^{\frac{-1}{q-2}} \rb$ it holds that: +\begin{equation} +\begin{aligned}\label{6.0.26} +% &\left| x^2-\lp \real_{\rect} \lp \Phi \rp \rp \lp x \rp \right| \\ +% &= \lp \frac{\ve}{2} \rp^{\frac{-2}{q-2}} \left| \lp \lp \frac{\ve}{2} \rp ^{\frac{1}{q-2}}x \rp^2 - \lp \lb \real_{\rect} \lp \Phi \rp \rb \lp \lp \frac{\ve}{2} \rp ^{\frac{1}{q-2}}x \rp + \lb \real_{\rect} \lp \Phi \rp \rb \lp -y \rp \rp \right| \\ +% &\les \lp \frac{\ve}{2} \rp^{\frac{-2}{q-2}} \lb \sup_{y \in \lb -1,1\rb} \left| y^2 - \left \lb \real_{\rect} \lp \Phi \rp \rb \lp y \rp + \lb \real_{\rect} \lp \Phi \rp \rb \lp -y \rp \right| \rb \\ + &\left| x^2-\left( \real_{\rect} (\Phi) \right) (x) \right| \\ + &= \left( \frac{\varepsilon}{2} \right)^{\frac{-2}{q-2}} \left| \left( \left( \frac{\varepsilon}{2} \right) ^{\frac{1}{q-2}}x \right)^2 - \left( \left[ \real_{\rect} (\Phi) \right] \left( \left( \frac{\varepsilon}{2} \right) ^{\frac{1}{q-2}}x \right) + \left[ \real_{\rect} (\Phi) \right] (-y) \right) \right| \\ + &\les \left( \frac{\varepsilon}{2} \right)^{\frac{-2}{q-2}} \left[ \sup_{y \in \left[-1,1\right]} \left| y^2 - \left[ \real_{\rect} (\Phi) \right] (y) + \left[ \real_{\rect} (\Phi) \right] (-y) \right| \right] \\ + &\les \lp \frac{\ve}{2} \rp^{\frac{-2}{q-2}} \delta = \lp \frac{\ve}{2} \rp^{\frac{-2}{q-2}} 2^{\frac{-2}{q-2}} \ve^{\frac{q}{q-2}} = \ve \les \ve \max \{ 1, \left| x \right|^q \} +\end{aligned} +\end{equation} +Now note that this and (\ref{6.0.25}) tells us that for all $x\in \R$ it is the case that: +\begin{align} + \left| x^2-\lp \real_{\rect} \lp \Psi \rp \rp \lp x \rp \right| \les \ve \max\{1,|x|^q \} +\end{align} +This establishes Item (v). Note that, (\ref{6.0.26}) tells that for all $x \in \lb - \lp \frac{\ve}{2} \rp ^{\frac{-1}{q-2}}, \lp \frac{\ve}{2} \rp ^{\frac{1}{q-2}} \rb $ it is the case that: +\begin{align} + \left| \lp \real_{\rect} \lp \Psi \rp \rp \lp x \rp \right| \les \left| x^2 - \lp \real_{\rect} \lp \Psi \rp \rp \lp x \rp \right| + \left| x \right|^2 \les \ve + \left| x \right| ^2 +\end{align} +This and (\ref{6.0.25}) tells us that for all $x\in \R$: +\begin{align} + \left| \lp \real_{\rect} \rp \lp x \rp \right| \les \ve + |x|^2 +\end{align} +This establishes Item (iv). + +Note next that by Corollary \ref{affcor}, Remark \ref{5.3.2}, the hypothesis, and the fact that $\delta = 2^{\frac{-2}{q-2}}\ve ^{\frac{q}{q-2}}$ tells us that: +\begin{align} + \dep \lp \Psi \rp = \dep \lp \Phi \rp &\les \max \left\{\frac{1}{2} \log_2(\delta^{-1})+1,2\right\} \nonumber \\ + &= \max \left\{ \frac{1}{q-2} + \lb \frac{q}{q-2}\rb\log_2 \lp \ve \rp +1,2\right\} +\end{align} +This establishes Item (v). + +Notice next that the fact that $\delta = 2^{\frac{-2}{q-2}}\ve^{\frac{q}{q-2}}$ tells us that: +\begin{align} + \log_2 \lp \delta^{-1} \rp = \log_2 \lp 2^{\frac{2}{q-2}} \ve^{\frac{-q}{q-2}}\rp = \frac{2}{q-2} + \lb \lb \frac{q}{q-2}\rb \log_2 \lp \ve^{-1}\rp \rb +\end{align} +Note that by , Corollary \ref{affcor} we have that: +\begin{align} + \param \lp \Phi \bullet \aff_{-\alpha,0} \rp &\les \lb \max\left\{ 1, \frac{\inn \lp \aff_{-\alpha,0}\rp+1}{\inn\lp \Phi\rp+1}\right\}\rb \param \lp \Phi\rp = \param \lp \Phi\rp +\end{align} +and further that: +\begin{align} + \param \lp \aff_{\alpha^{-2},0} \bullet \Phi \bullet \aff_{-\alpha,0} \rp &= \lb \max\left\{ 1, \frac{\out \lp \aff_{-\alpha^2,0}\rp}{\out\lp \Phi \bullet \aff_{-\alpha,0}\rp}\right\}\rb \param \lp \Phi \bullet \aff_{-\alpha,0}\rp \nonumber\\ + &\les \param \lp \Phi\rp +\end{align} +By symmetry note also that $ \param \lp \aff_{\alpha^{-2},0} \bullet \Phi \bullet \aff_{\alpha,0}\rp = \param \lp \aff_{\alpha^{-2},0} \bullet \Phi \bullet \aff_{-\alpha,0}\rp $ and also that $ \lay \lp \aff_{\alpha^{-2},0} \bullet \Phi \bullet \aff_{\alpha,0}\rp = \lay \lp \aff_{\alpha^{-2},0} \bullet \Phi \bullet \aff_{-\alpha,0}\rp $. Thus Lemma \ref{paramsum}, Corollary \ref{cor:sameparal}, and the hypothesis tells us that: +\begin{align}\label{(6.1.42)} + \param \lp \Psi \rp &= \param \lp \Phi \boxminus \Phi \rp \nonumber \\ + &\les 4\param \lp \Phi\rp \nonumber \\ + &= 4\max\left\{10\log_2\lp \delta^{-1}\rp-7,13\right\} +\end{align} +This, and the fact that $\delta = 2^{\frac{-2}{q-2}}\ve ^{\frac{q}{q-2}}$ renders (\ref{(6.1.42)}) as: +\begin{align} + 4\max\left\{10\log_2\lp \delta^{-1}\rp-7,13\right\} &= 4\max\left\{10\log_2\lp \delta^{-1}\rp-7,13\right\} \nonumber\\ + &= 4\max \left\{ 10 \lp \frac{2}{q-2} +\frac{q}{q-2}\log_2 \lp \ve^{-1}\rp\rp-7,13\right\} \nonumber \\ + &=\max \left\{ \lb \frac{40q}{q-2}\rb \log_2 \lp \ve^{-1}\rp + \frac{80}{q-2}-28,52\right\} +\end{align} +\end{proof} +\begin{remark} + We will often find it helpful to refer to this network for fixed $\ve \in \lp 0, \infty \rp$ and $q \in \lp 2,\infty\rp$ as the $\sqr^{q,\ve}$ network. +\end{remark} +\begin{remark} + For an \texttt{R} implementation see Listing \ref{Sqr} +\end{remark} + + + +\begin{figure}[h] + \centering + \includegraphics[width = 0.45\linewidth]{/Users/shakilrafi/R-simulations/Sqr_properties/experimental_deps.png} + \includegraphics[width = 0.45\linewidth]{/Users/shakilrafi/R-simulations/Sqr_properties/dep_theoretical_upper_limits.png} + \caption{Left: $\log_{10}$ of depths for a simulation with $q \in \lb 2.1, 4 \rb $, $\ve \in \lp 0.1, 2 \rb$, and $x \in \lb -5,5 \rb$, all with $50$ mesh-points. Right: The theoretical upper limits over the same range of values} +\end{figure} + +% Please add the following required packages to your document preamble: +% \usepackage{booktabs} + +\begin{table}[h] +\begin{tabular}{@{}l|llllll@{}} +\toprule + & Min. & 1\textsuperscript{st} Qu. & Median & Mean & 3\textsuperscript{rd} Qu. & Max. \\ \midrule +Experimental $|x^2 - \real_{\rect}(\mathsf{Sqr}^{q,\ve})(x)$ & 0.000003 & 0.089438 & 0.337870 & 3.148933 & 4.674652 & 20.00 \\ \midrule +Theoretical $|x^2 - \real_{\rect}(\mathsf{Sqr})^{q,\ve}(x)$ & 0.010 & 1.715 & 10.402 & 48.063 & 45.538 & 1250.00 \\ \midrule +Difference & 0.001 & 1.6012 & 9.8655 & 44.9141 & 40.7102 & 1230 +\end{tabular} +\caption{Theoretical upper bounds for $L^1$ error, experimental $L^1$ error and their forward difference, with $q \in \lb 2.1, 4 \rb $, $\ve \in \lp 0.1, 2 \rb$, and $x \in \lb -5,5 \rb$, all with $50$ mesh-points.} +\end{table} + + +\subsection{The $\prd$ network} +We are finally ready to give neural network representations of arbitrary products of real numbers. However, this representation differs somewhat from those found in the literature, especially \cite{grohs2019spacetime}, where parallelization (stacking) is used instead of neural network sums. This will help us calculate $\wid_1$ and the width of the second to last layer. +\begin{lemma}\label{prd_network} + Let $\delta,\ve \in \lp 0,\infty \rp $, $q\in \lp 2,\infty \rp$, $A_1,A_2,A_3 \in \R^{1\times 2}$, $\Psi \in \neu$ satisfy for all $x\in \R$ that $\delta = \ve \lp 2^{q-1} +1\rp^{-1}$, $A_1 = \lb 1 \quad 1 \rb$, $A_2 = \lb 1 \quad 0 \rb$, $A_3 = \lb 0 \quad 1 \rb$, $\real_{\rect} \in C\lp \R, \R \rp$, $\lp \real_{\rect} \lp \Psi \rp \rp \lp 0\rp = 0$, $0\les \lp \real_{\rect} \lp \Psi \rp \rp \lp x \rp \les \delta+|x|^2$, $|x^2-\lp \real_{\rect}\lp \Psi \rp \rp \lp x \rp |\les \delta \max \{1,|x|^q\}$, $\dep\lp \Psi \rp \les \max\{ 1+\frac{1}{q-2}+\frac{q}{2(q-2)}\log_2 \lp \delta^{-1} \rp ,2\}$, and $\param \lp \Psi \rp \les \max\left\{\lb \frac{40q}{q-2} \rb \log_2\lp \delta^{-1} \rp +\frac{80}{q-2}-28,52\right\}$, then: + \begin{enumerate}[label=(\roman*)] + \item there exists a unique $\Gamma \in \neu$ satisfying: + \begin{align} + \Gamma = \lp \frac{1}{2}\triangleright \lp \Psi \bullet \aff_{A_1,0} \rp \rp \bigoplus \lp \lp -\frac{1}{2}\rp \triangleright\lp \Psi \bullet \aff_{A_2,0} \rp \rp \bigoplus\lp \lp -\frac{1}{2}\rp \triangleright \lp \Psi \bullet \aff_{A_3,0} \rp \rp + \end{align} + \item it that $\real_{\rect} \lp \Gamma \rp \in C \lp \R^2,\R \rp$ + \item it holds for all $x\in \R$ that $\lp \real_{\rect}\lp \Gamma \rp \rp \lp x,0\rp = \lp \real_{\rect}\lp \Gamma \rp \rp \lp 0,y\rp =0$ + \item it holds for any $x,y \in \R$ that $\left|xy - \lp \real_{\rect} \lp \Gamma \rp \rp \lp \begin{bmatrix} + x \\ + y + \end{bmatrix} \rp \right| \les \ve \max \{1,|x|^q,|y|^q \}$ + \item it holds that $\param(\Gamma) \les \frac{360q}{q-2} \lb \log_2 \lp \ve^{-1} \rp +q+1 \rb -252$ + \item it holds that $\dep\lp \Gamma \rp \les \frac{q}{q-2} \lb \log_2 \lp \ve^{-1}\rp +q \rb $ + \item it holds that $\wid_1 \lp \Gamma \rp=24$ + \item it holds that $\wid_{\hid \lp\Gamma\rp} = 24$ + \end{enumerate} +\end{lemma} +\begin{proof} + Note that: + \begin{align} + &\lp \real_{\rect} \lp \Gamma \rp \rp \lp \begin{bmatrix} + x\\y + \end{bmatrix} \rp = \real_{\rect} \lp \lp \frac{1}{2}\triangleright \lp \Psi \bullet \aff_{A_1,0} \rp \rp \bigoplus \lp \lp -\frac{1}{2}\rp \triangleright\lp \Psi \bullet \aff_{A_2,0} \rp \rp \bigoplus \right. \\ + &\left. \lp \lp -\frac{1}{2}\rp \triangleright \lp \Psi \bullet \aff_{A_3,0} \rp \rp \rp \nonumber \lp \begin{bmatrix} + x \\ y + \end{bmatrix} \nonumber\rp\\ + &= \real_{\rect} \lp \frac{1}{2}\triangleright \lp \Psi \bullet \aff_{A_1,0} \rp \rp \lp \begin{bmatrix} + x\\y + \end{bmatrix} \rp + \real_{\rect}\lp \lp -\frac{1}{2}\rp \triangleright\lp \Psi \bullet \aff_{A_2,0} \rp \rp \lp \begin{bmatrix} + x \\ y + \end{bmatrix} \rp \nonumber \\ + &+\real_{\rect}\lp \lp -\frac{1}{2}\rp \triangleright \lp \Psi \bullet \aff_{A_3,0} \rp \rp \lp \begin{bmatrix} + x\\y + \end{bmatrix} \rp \nonumber \\ + &= \frac{1}{2} \lp \real_{\rect} \lp \Psi \rp \rp \lp \begin{bmatrix} + 1 && 1 + \end{bmatrix} \begin{bmatrix} + x \\ y + \end{bmatrix}\rp - \frac{1}{2} \lp \real_{\rect} \lp \Psi \rp \rp \lp \begin{bmatrix} + 1 && 0 + \end{bmatrix} \begin{bmatrix} + x \\ y + \end{bmatrix} \rp \nonumber\\ + &-\frac{1}{2} \lp \real_{\rect}\lp \Psi \rp \rp \lp \begin{bmatrix} + 0 && 1 + \end{bmatrix} \begin{bmatrix} + x \\y + \end{bmatrix} \rp \nonumber \\ + &=\frac{1}{2} \lp \real_{\rect}\lp \Psi \rp \rp \lp x+y \rp -\frac{1}{2} \lp \real_{\rect}\lp \Psi \rp \rp \lp x \rp - \frac{1}{2} \lp \real_{\rect}\lp \Psi \rp \rp \lp y \rp \label{6.0.33} + %TODO: Revisit this estimate + \end{align} + Note that this, and the assumption that $\lp \real_{\rect} \lp \Psi \rp \rp \lp x \rp \in C \lp \R, \R \rp$ and that $\lp \real_{\rect}\lp \Psi \rp \rp \lp 0 \rp = 0$ ensures: + \begin{align} + \lp \real_{\rect} \lp \Gamma \rp \rp \lp \begin{bmatrix} + x \\0 + \end{bmatrix} \rp &= \frac{1}{2} \lp \real_{\rect} \lp \Psi \rp \rp \lp x+0 \rp -\frac{1}{2} \lp \real_{\rect} \lp \Psi \rp \rp \lp x \rp - \frac{1}{2} \lp \real_{\rect} \lp \Psi \rp \rp \lp 0 \rp \nonumber \\ + &= 0 \nonumber\\ + &= \frac{1}{2} \lp \real_{\rect} \lp \Psi \rp \rp \lp 0+y \rp -\frac{1}{2} \lp \real_{\rect} \lp \Psi \rp \rp \lp 0 \rp - \frac{1}{2}\lp \real_{\rect} \lp \Psi \rp \rp \lp y \rp \nonumber \\ + &=\lp \real_{\rect} \lp \Gamma \rp \rp \lp \begin{bmatrix} + 0 \\y + \end{bmatrix} \rp + \end{align} + Next, observe that since by assumption it is the case for all $x,y\in \R$ that $|x^2 - \lp \real_{\rect} \lp \Psi \rp \rp \lp x \rp | \les \delta \max\{1,|x|^q\}$, $xy = \frac{1}{2}|x+y|^2-\frac{1}{2}|x|^2-\frac{1}{2}|y|^2$, triangle Inequality and from (\ref{6.0.33}) we have that: + \begin{align} + &\left| \lp \real_{\rect} \lp \Gamma\rp\lp x,y \rp \rp -xy\right| \nonumber\\ + &=\left|\frac{1}{2}\lb \lp \real_{\rect} \lp \Psi \rp \rp \lp x + y \rp - \left|x+y\right|^2 \rb - \frac{1}{2} \lb \lp \real_{\rect} \lp \Psi \rp \rp \lp x \rp -\left| x \right|^2\rb - \frac{1}{2} \lb \lp \real_{\rect} \lp \Psi\rp \rp \lp x \rp -\left|y\right|^2\rb \right| \nonumber \\ + &\les \left|\frac{1}{2}\lb \lp \real_{\rect} \lp \Psi \rp \rp \lp x + y \rp - \left|x+y\right|^2 \rb + \frac{1}{2} \lb \lp \real_{\rect} \lp \Psi \rp \rp \lp x \rp -\left| x \right|^2\rb + \frac{1}{2} \lb \lp \real_{\rect} \lp \Psi\rp \rp \lp x \rp -\left|y\right|^2\rb \right| \nonumber \\ + &\les \frac{\delta}{2} \lb \max \left\{ 1, |x+y|^q\right\} + \max\left\{ 1,|x|^q\right\} + \max \left\{1,|y|^q \right\}\rb\nonumber + \end{align} + Note also that since for all $\alpha,\beta \in \R$ and $p \in \lb 1, \infty \rp$ we have that $|\alpha + \beta|^p \les 2^{p-1}\lp |\alpha|^p + |\beta|^p \rp$ we have that: + \begin{align} + &\left| \lp \real_{\rect} \lp \Psi \rp \rp \lp x \rp - xy \right| \nonumber \\ + &\les \frac{\delta}{2} \lb \max \left\{1, 2^{q-1}|x|^q+ 2^{q-1}\left| y\right|^q\right\} + \max\left\{1,\left|x\right|^q \right\} + \max \left\{1,\left| y \right|^q \right\}\rb \nonumber \\ + &\les \frac{\delta}{2} \lb \max \left\{1, 2^{q-1}|x|^q \right\}+ 2^{q-1}\left| y\right|^q + \max\left\{1,\left|x\right|^q \right\} + \max \left\{1,\left| y \right|^q \right\}\rb \nonumber \\ + &\les \frac{\delta}{2} \lb 2^q + 2\rb \max \left\{1, \left|x\right|^q, \left| y \right|^q \right\} = \ve \max \left\{ 1,\left| x \right|^q, \left| x \right|^q\right\} \nonumber + \end{align} + This proves Item (iv). + + By symmetry it holds that $\param \lp \frac{1}{2}\triangleright \lp \Psi \bullet \aff_{A_1,0} \rp \rp = \param \lp -\frac{1}{2}\triangleright \lp \Psi \bullet \aff_{A_2,0} \rp \rp = \param \lp -\frac{1}{2}\triangleright \lp \Psi \bullet \aff_{A_3,0} \rp \rp$ and further that $\lay \lp \frac{1}{2}\triangleright \lp \Psi \bullet \aff_{A_1,0} \rp \rp = \lay \lp -\frac{1}{2}\triangleright \lp \Psi \bullet \aff_{A_2,0} \rp \rp = \lay \lp -\frac{1}{2}\triangleright\lp \Psi \bullet \aff_{A_3,0} \rp \rp$. + Note also that Corollary \ref{affcor} tells us that for all $i \in \{1,2,3\}$ and $a \in \{ \frac{1}{2},-\frac{1}{2}\}$ it is the case that: + \begin{align} + \param \lp a \triangleright \lp \Psi \bullet \aff_{A_i,0}\rp \rp = \param \lp \Psi \rp + \end{align} + This, together with Corollary \ref{corsum} indicates that: + \begin{align}\label{(6.1.49)} + \param \lp \Gamma \rp &\les 9\param\lp \Psi \rp \nonumber \\ + &\les 9\max\left\{\lb \frac{40q}{q-2} \rb \log_2\lp \delta^{-1} \rp +\frac{80}{q-2}-28,52\right\} + \end{align} + Combined with the fact that $\delta =\ve \lp 2^{q-1} +1\rp^{-1}$, this is then rendered as: + \begin{align}\label{(6.1.50)} + &9\max\left\{\lb \frac{40q}{q-2} \rb \log_2\lp \delta^{-1} \rp +\frac{80}{q-2}-28,52\right\} \nonumber \\ + &= 9\max \left\{ \lb \frac{40q}{q-2}\rb \lp \log_2 \lp \ve^{-1}\rp +\log_2 \lp 2^{q-1}+1\rp\rp + \frac{80}{q-2}-28,52 \right\} + \end{align} + Note that: + \begin{align} + \log_2 \lp 2^{q-1}+1\rp &= \log_2\lp 2^{q-1}+1\rp - \log_2 \lp 2^q\rp + q \nonumber\\ + &=\log_2 \lp \frac{2^{q-1}+1}{2^q}\rp + q = \log_2 \lp 2^{-1}+2^{-q}\rp +q\nonumber \\ + &\les \log_2 \lp 2^{-1} + 2^{-2}\rp + q = \log_2 \lp \frac{3}{4}\rp + q = \log_2 \lp 3\rp-2+q + \end{align} + Combine this with the fact that for all $q\in \lp 2,\infty\rp$ it is the case that $\frac{q(q-1)}{q-2} \ges 2$ then gives us that: + \begin{align} + \lb \frac{40q}{q-2}\rb \log_2 \lp 2^{q-1}+1\rp -28\ges \lb \frac{40q}{q-2}\rb \log_2 \lp 2^{q-1}\rp -28= \frac{40q(q-1)}{q-2}-28 \ges 52 + \end{align} + This then finally renders (\ref{(6.1.50)}) as: + \begin{align} + &9\max \left\{ \lb \frac{40q}{q-2}\rb \lp \log_2 \lp \ve^{-1}\rp +\log_2 \lp 2^{q-1}+1\rp\rp + \frac{80}{q-2}-28,52 \right\} \nonumber \\ + &\les 9 \lb \lb \frac{40q}{q-2}\rb \lp \log_2\lp \ve^{-1}\rp + \log_2\lp 3\rp-2+q\rp +\frac{80}{q-2}-28\rb \nonumber\\ + &= 9 \lb \lb \frac{40q}{q-2}\rb \lp \log_2\lp \ve^{-1}\rp + \log_2\lp 3\rp-2+\frac{2}{q}\rp-28\rb \nonumber\\ + &\les 9 \lb \lb \frac{40q}{q-2}\rb \lp \log_2\lp \ve^{-1}\rp + \log_2\lp 3\rp-1\rp -28\rb \nonumber\\ + &= \frac{360q}{q-2}\lb \log_2 \lp \ve^{-1} \rp +q+\log_2\lp 3\rp-1\rb -252 + \end{align} + Note that Lemma \ref{depth_prop}, Lemma \ref{5.3.3}, the hypothesis, and the fact that $\delta = \ve \lp 2^{q-1} +1\rp^{-1}$ tell us that: + \begin{align} + \dep \lp \Gamma \rp = \dep\lp \Psi \rp &\les \max\left\{ 1+\frac{1}{q-2}+\frac{q}{2(q-2)}\log_2 \lp \delta^{-1} \rp ,2\right\} \nonumber\\ + &= \max \left\{1+\frac{1}{q-2} +\frac{q}{2(q-2)}\lb \log_2\lp \ve^{-1}\rp + \log_2 \lp 2^{q-1}+1\rp\rb,2 \right\} \nonumber\\ + &= \max \left\{ 1+\frac{1}{q-2}+\frac{q}{2(q-2)} \lp \log_2\lp \ve^{-1}\rp +q-1\rp,2\right\} + \end{align} + Since it is the case that $\frac{q(q-1)}{2(q-2)} > 2$ for $q \in \lp 2, \infty \rp$ we have that: + \begin{align} + & \max \left\{ 1+\frac{1}{q-2}+\frac{q}{2(q-2)} \lp \log_2\lp \ve^{-1}\rp +q-1\rp,2\right\} \nonumber \\ + &= 1+\frac{1}{q-2}+\frac{q}{2(q-2)} \lp \log_2\lp \ve^{-1}\rp +q-1\rp \nonumber \\ + &\les \frac{q-1}{q-2} +\frac{q}{2\lp q-2\rp} \lp \log_2 \lp \ve^{-1}\rp+q\rp \nonumber \\ + & + \end{align} + +Observe next that for $q\in \lp 0,\infty\rp$, $\ve \in \lp 0,\infty \rp$, $\Gamma$ consists of, among other things, three stacked $\lp \Psi \bullet \aff_{A_i,0}\rp$ networks where $i \in \{1,2,3\}$. Corollary \ref{affcor} tells us therefore, that $\wid_1\lp \Gamma\rp = 3\cdot \wid_1 \lp \Psi \rp$. On the other hand, note that each $\Psi$ networks consist of, among other things, two stacked $\Phi$ networks, which by Corollary \ref{affcor} and Lemma \ref{lem:sqr_network}, yields that $\wid_1 \lp \Gamma\rp = 6 \cdot \wid_1 \lp \Phi\rp$. Finally from Corollary \ref{cor:phi_network}, and Corollary \ref{affcor}, we see that the only thing contributing to the $\wid_1\lp \Phi\rp$ is $\wid_1 \lp \mathfrak{i}_4\rp$, which was established from Lemma \ref{lem:mathfrak_i} as $4$. Whence we get that $\wid_1\lp \Gamma\rp = 6 \cdot 4 = 24$, and that $\wid_{\hid\lp \Gamma\rp}\lp \Gamma\rp = 24$. This proves Item (vii)\textemdash(viii). This then completes the proof of the Lemma. +\end{proof} + +\begin{corollary}\label{cor_prd} + Let $\delta,\ve \in \lp 0,\infty \rp $, $q\in \lp 2,\infty \rp$, $A_1,A_2,A_3 \in \R^{1\times 2}$, $\Psi \in \N$ satisfy for all $x\in \R$ that $\delta = \ve \lp 2^{q-1} +1\rp^{-1}$, $A_1 = \lb 1 \quad 1 \rb$, $A_2 = \lb 1 \quad 0 \rb$, $A_3 = \lb 0 \quad 1 \rb$, $\real_{\rect} \in C\lp \R, \R \rp$, $\lp \real_{\rect} \lp \Psi \rp \rp \lp 0\rp = 0$, $0\les \lp \real_{\rect} \lp \Psi \rp \rp \lp x \rp \les \delta+|x|^2$, $|x^2-\lp \real_{\rect}\lp \Psi \rp \rp \lp x \rp |\les \delta \max \{1,|x|^q\}$, $\dep\lp \Psi \rp \les \max\{ 1+\frac{1}{q-2}+\frac{q}{2(q-2)}\log_2 \lp \delta^{-1} \rp ,2\}$, and $\param \lp \Psi \rp \les \max\left\{\lb \frac{40q}{q-2} \rb \log_2\lp \delta^{-1} \rp +\frac{80}{q-2}-28,52\right\}$, and finally let $\Gamma$ be defined as in Lemma \ref{prd_network}, i.e.: + \begin{align} + \Gamma = \lp \frac{1}{2}\circledast \lp \Psi \bullet \aff_{A_1,0} \rp \rp \bigoplus \lp \lp -\frac{1}{2}\rp \circledast\lp \Psi \bullet \aff_{A_2,0} \rp \rp \bigoplus\lp \lp -\frac{1}{2}\rp \circledast \lp \Psi \bullet \aff_{A_3,0} \rp \rp + \end{align} + + + + It is then the case for all $x,y \in \R$ that: + \begin{align} + \real_{\rect} \lp \Gamma \rp \lp x,y \rp \les \frac{3}{2} \lp \frac{\ve}{3} +x^2+y^2\rp \les \ve + 2x^2+2y^2 + \end{align} +\end{corollary} +\begin{proof} + Note that the triangle inequality, the fact that $\delta = \ve \lp 2^{q-1} +1\rp^{-1}$, the fact that for all $x,y\in \R$ it is the case that $|x+y|^2 \les 2\lp |x|^2+|y|^2\rp $ and (\ref{6.0.33}) tell us that: + \begin{align} + \left| \real_{\rect} \lp \Gamma \rp\lp x,y\rp \right| &\les \frac{1}{2}\left| \real_{\rect} \lp \Psi \rp\lp x+y \rp \right| + \frac{1}{2}\left| \real_{\rect} \lp \Psi \rp\lp x \rp \right| + \frac{1}{2}\left| \real_{\rect} \lp \Psi \rp\lp y \rp \right| \nonumber \\ + &\les \frac{1}{2} \lp \delta + |x+y|^2 \rp + \frac{1}{2}\lp \delta + |x|^2\rp + \frac{1}{2}\lp \delta + |y|^2\rp\nonumber \\ + &\les \frac{3\delta}{2} +\frac{3}{2}\lp |x|^2+|y|^2\rp = \lp \frac{3\ve}{2}\rp \lp 2^{q-1}+1\rp^{-1} + \frac{3}{2}\lp |x|^2+|y|^2\rp \nonumber\\ + &= \frac{3}{2}\lp \frac{\ve}{2^{q-1}+1} + |x|^2 + |y|^2 \rp \les \frac{3}{2} \lp \frac{\ve}{3}+|x|^2+|y|^2\rp \nonumber \\ + &\les \ve + 2x^2+2y^2 + \end{align} +\end{proof} +\begin{remark} + We shall refer to this neural network for a given $q \in \lp 2,\infty \rp$ and given $\ve \in \lp 0,\infty \rp$ from now on as $\prd^{q,\ve}$. +\end{remark} +\begin{remark} + For an \texttt{R} implementation see Listing \ref{Prd} +\end{remark} +\begin{remark} + Diagrammatically, this can be represented as: +\end{remark} +\begin{figure} +\begin{center} +\tikzset{every picture/.style={line width=0.75pt}} %set default line width to 0.75pt + +\begin{tikzpicture}[x=0.75pt,y=0.75pt,yscale=-1,xscale=1] +%uncomment if require: \path (0,475); %set diagram left start at 0, and has height of 475 + +%Shape: Rectangle [id:dp5102621452939872] +\draw (242,110.33) -- (430.67,110.33) -- (430.67,162.33) -- (242,162.33) -- cycle ; +%Shape: Rectangle [id:dp5404063577476766] +\draw (238.67,204.33) -- (427.33,204.33) -- (427.33,256.33) -- (238.67,256.33) -- cycle ; +%Shape: Rectangle [id:dp36108799479514775] +\draw (240,308.33) -- (428.67,308.33) -- (428.67,360.33) -- (240,360.33) -- cycle ; +%Shape: Rectangle [id:dp8902718451088835] +\draw (515.33,202.67) -- (600.67,202.67) -- (600.67,252.33) -- (515.33,252.33) -- cycle ; +%Shape: Rectangle [id:dp787158651575801] +\draw (74,204.67) -- (159.33,204.67) -- (159.33,254.33) -- (74,254.33) -- cycle ; +%Straight Lines [id:da7097969194866411] +\draw (515.33,202.67) -- (433.55,136.26) ; +\draw [shift={(432,135)}, rotate = 39.08] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; +%Straight Lines [id:da06987054821586158] +\draw (514.67,226) -- (432,226.98) ; +\draw [shift={(430,227)}, rotate = 359.32] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; +%Straight Lines [id:da6649718583556108] +\draw (515.33,252.33) -- (430.79,331.63) ; +\draw [shift={(429.33,333)}, rotate = 316.83] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; +%Straight Lines [id:da522975332769982] +\draw (240.67,136) -- (160.86,203.38) ; +\draw [shift={(159.33,204.67)}, rotate = 319.83] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; +%Straight Lines [id:da23420272890635796] +\draw (238.67,230.67) -- (160.67,231.64) ; +\draw [shift={(158.67,231.67)}, rotate = 359.28] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; +%Straight Lines [id:da3786949398178764] +\draw (239.33,333.33) -- (160.76,255.74) ; +\draw [shift={(159.33,254.33)}, rotate = 44.64] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; +%Straight Lines [id:da6573206574101601] +\draw (640.67,228.33) -- (602.33,228.33) ; +\draw [shift={(600.33,228.33)}, rotate = 360] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; +%Straight Lines [id:da2877353538717321] +\draw (74,227.67) -- (35.67,227.67) ; +\draw [shift={(33.67,227.67)}, rotate = 360] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; + +% Text Node +\draw (286,124) node [anchor=north west][inner sep=0.75pt] {$\frac{1}{2} \rhd \lp \Phi \bullet \aff_{A_1,0}\rp$}; +% Text Node +\draw (286,220) node [anchor=north west][inner sep=0.75pt] {$\frac{1}{2} \rhd \lp \Phi \bullet \aff_{A_2,0}\rp$}; +% Text Node +\draw (286,326) node [anchor=north west][inner sep=0.75pt] {$\frac{1}{2} \rhd \lp \Phi \bullet \aff_{A_2,0}\rp$}; +% Text Node +\draw (543,220) node [anchor=north west][inner sep=0.75pt] {$\cpy$}; +% Text Node +\draw (100,225) node [anchor=north west][inner sep=0.75pt] {$\sm$}; + +\end{tikzpicture} + +\end{center} +\caption{A neural network diagram of the $\sqr$. } +\end{figure} +\section{Higher Approximations}\label{sec_tun} +We take inspiration from the $\sm$ neural network to create the $\prd$ neural network. However, we first need to define a special neural network called \textit{tunneling neural network} to stack two neural networks not of the same length effectively. +\subsection{The $\tun$ Neural Networks and Their Properties} +\begin{definition}[R\textemdash,2023, The Tunneling Neural Networks]\label{def:tun} + We define the tunneling neural network, denoted as $\tun_n$ for $n\in \N$ by: + \begin{align} + \tun_n = \begin{cases} + \aff_{1,0} &:n= 1 \\ + \id_1 &: n=2 \\ + \bullet^{n-2} \id_1 & n \in \N \cap [3,\infty) + \end{cases} + \end{align} + Where $\id_1$ is as in Definition \ref{7.2.1}. +\end{definition} +\begin{remark} + For an \texttt{R} implementation see Listing \ref{Tun} +\end{remark} +\begin{lemma}\label{6.2.2}\label{tun_1} + Let $n\in \N$, $x \in \R$ and $\tun_n \in \neu$. For all $n\in \N$ and $x\in \R$, it is then the case that: + \begin{enumerate}[label = (\roman*)] + \item $\real_{\rect} \lp \tun_n \rp \in C \lp \R, \R \rp$ + \item $\dep \lp \tun_n \rp =n$ + \item $\lp \real_{\rect} \lp \tun_n \rp \rp \lp x \rp = x$ + \item $\param \lp \tun_n \rp = \begin{cases} + 2 &:n=1 \\ + 7+6(n-2) &:n \in \N \cap [2,\infty) + \end{cases}$ + \item $\lay \lp \tun_n \rp = \lp l_0, l_1,...,l_{L-1}, l_L \rp = \lp 1,2,...,2,1 \rp $ + \end{enumerate} +\end{lemma} +\begin{proof} + Note that $\aff_{0,1} \in C \lp \R, \R\rp$ and by Lemma \ref{idprop} we have that $\id_1 \in C\lp \R, \R\rp$. Finally, the composition of continuous functions is continuous, hence $\tun_n \in C\lp \R, \R\rp$ for $n \in \N \cap \lb 2,\infty\rp$. This proves Item (i). + + Note that by Lemma \ref{5.3.2} it is the case that $\dep\lp \aff_{1,0} \rp = 1$ and by Lemma \ref{7.2.1} it is the case that $\dep \lp \id_1 \rp = 2$. + Assume now that for all $n \les N$ that $\dep\lp \tun_n \rp = n$, then for the inductive step, by Lemma \ref{comp_prop} we have that: + \begin{align} + \dep \lp \tun_{n+1} \rp &= \dep \lp \bullet^{n-1} \id_1 \rp \nonumber \\ + &= \dep \lp \lp \bullet^{n-2} \id_1 \rp \bullet \id_1 \rp \nonumber \\ + &=n+2-1 = n+1 + \end{align} + This completes the induction and proves Item (i)\textemdash(iii). + Note next that by (\ref{5.1.11}) we have that: + \begin{align} + \lp \real_{\rect} \lp \aff_{1,0} \rp \rp \lp x \rp = x + \end{align} + Lemma \ref{idprop}, Item (iii) also tells us that: + \begin{align} + \lp \real_{\rect} \lp \id_1 \rp \rp \lp x \rp = \rect(x) - \rect(-x) = x + \end{align} + Assume now that for all $n\les N$ that $\tun_n \lp x \rp = x$. For the inductive step, by Lemma \ref{idprop}, Item (iii), and we then have that: + \begin{align} + \lp \real_{\rect} \lp \tun_{n+1} \rp \rp \lp x \rp &= \lp \real_{\rect} \lp \bullet^{n-1} \id_1 \rp \rp \lp x \rp \lp x \rp \nonumber\\ + &= \lp \real_{\rect} \lp \lp \bullet^{n-2} \id_1 \rp \bullet \id_1 \rp \rp \nonumber\\ + &= \lp \lp \real_{\rect} \lp \bullet^{n-2} \id_1 \rp \rp \circ \lp \real_{\rect} \lp \id_1 \rp \rp \rp \lp x \rp \nonumber \\ + &= \lp \lp \real_{\rect} \lp \tun_n \rp \rp \circ \lp \real_{\rect} \lp \id_1 \rp \rp \rp \lp x \rp \nonumber \\ + &= x + \end{align} + This proves Item (ii). Next note that $\param\lp \tun_1\rp = \param\lp \aff_{1,0}\rp = 2$. Note also that: + \begin{align} + \param\lp \tun_2\rp = \param \lp \id_1 \rp &= \param \lb \lp \lp \begin{bmatrix} + 1 \\ -1 + \end{bmatrix}, \begin{bmatrix} + 0 \\ 0 + \end{bmatrix}\rp, \lp \begin{bmatrix} + 1 & -1 + \end{bmatrix}, \begin{bmatrix} + 0 + \end{bmatrix}\rp \rp \rb \nonumber \\ + &= 7 \nonumber + \end{align} + And that by definition of composition: + \begin{align} + \param \lp \tun_3 \rp &= \param \lb \lp \lp \begin{bmatrix} + 1 \\ -1 + \end{bmatrix}, \begin{bmatrix} + 0 \\ 0 + \end{bmatrix}\rp, \lp \begin{bmatrix} + 1 & -1 + \end{bmatrix}, \begin{bmatrix} + 0 + \end{bmatrix}\rp \rp \bullet \lp \lp \begin{bmatrix} + 1 \\ -1 + \end{bmatrix}, \begin{bmatrix} + 0 \\ 0 + \end{bmatrix}\rp, \lp \begin{bmatrix} + 1 & -1 + \end{bmatrix}, \begin{bmatrix} + 0 + \end{bmatrix}\rp \rp \rb \nonumber \\ + &= \param \lb \lp \lp \begin{bmatrix} + 1 \\ -1 + \end{bmatrix}, \begin{bmatrix} + 0 \\ 0 + \end{bmatrix} \rp, \lp \begin{bmatrix} + 1 & -1 \\ -1 & 1 + \end{bmatrix}, \begin{bmatrix} + 0 \\ 0 + \end{bmatrix}\rp, \lp \begin{bmatrix} + 1&-1 + \end{bmatrix},\begin{bmatrix} + 0 + \end{bmatrix}\rp \rp \rb \nonumber \\ + &=13 \nonumber + \end{align} + Now for the inductive step assume that for all $n\les N\in \N$, it is the case that $\param\lp \tun_n \rp = 7+6(n-2)$. For the inductive step, we then have: + \begin{align} + &\param \lp \tun_{n+1} \rp = \param \lp \tun_n \bullet \id_1 \rp \nonumber\\ + &=\param \lb \lp \lp \begin{bmatrix} + 1 \\ -1 + \end{bmatrix}, \begin{bmatrix} + 0 \\ 0 + \end{bmatrix}\rp, \lp \begin{bmatrix} + 1 & -1 \\ -1 & 1 + \end{bmatrix}, \begin{bmatrix} + 0 \\0 + \end{bmatrix}\rp, \cdots, \lp \begin{bmatrix} + 1 & -1 + \end{bmatrix}, \begin{bmatrix} + 0 + \end{bmatrix}\rp \rp \bullet \id_1 \rb \nonumber \\ + &= \param \lb \lp \lp \begin{bmatrix} + 1 \\ -1 + \end{bmatrix}, \begin{bmatrix} + 0 \\ 0 + \end{bmatrix}\rp, \lp \begin{bmatrix} + 1 & -1 \\ -1 & 1 + \end{bmatrix}, \begin{bmatrix} + 0 \\0 + \end{bmatrix}\rp, \cdots, \lp \begin{bmatrix} + 1 & -1 \\ -1 & 1 + \end{bmatrix}, \begin{bmatrix} + 0 \\ 0 + \end{bmatrix} \rp, \lp \begin{bmatrix} + 1 & -1 + \end{bmatrix}, \begin{bmatrix} + 0 + \end{bmatrix}\rp \rp \rb \nonumber \\ + &=7+6(n-2)+6 = 7+6\lp \lp n+1 \rp -2 \rp + \end{align} + This proves Item (iv). + + Note finally that Item (v) is a consequence of Lemma \ref{idprop}, Item (i), and Lemma \ref{comp_prop} +\end{proof} + +\begin{definition}[R\textemdash, 2023, The Multi-dimensional Tunneling Network]\label{def:tun_mult} + We define the multi-dimensional tunneling neural network, denoted as $\tun^d_n$ for $n\in \N$ and $d \in \N$ by: + \begin{align} + \tun_n^d = \begin{cases} + \aff_{\mathbb{I}_d,\mymathbb{0}_d} &:n= 1 \\ + \id_d &: n=2 \\ + \bullet^{n-2} \id_d & :n \in \N \cap [3,\infty) + \end{cases} + \end{align} + Where $\id_d$ is as in Definition \ref{7.2.1}. +\end{definition} +\begin{remark} + We may drop the requirement for a $d$ and write $\tun_n$ where $d=1$, and it is evident from the context. +\end{remark} +\begin{lemma}\label{tun_mult} + Let $n\in \N$, $d\in \N$, $x \in \R$ and $\tun_n^d \in \neu$. For all $n\in \N$, $d\in \N$, and $x\in \R$, it is then the case that: + \begin{enumerate}[label = (\roman*)] + \item $\real_{\rect} \lp \tun_n^d \rp \in C \lp \R, \R \rp$ + \item $\dep \lp \tun_n^d \rp =n$ + \item $\lp \real_{\rect} \lp \tun_n^d \rp \rp \lp x \rp = x$ + \item $\param \lp \tun_n^d \rp = \begin{cases} + 8d^2+5d &:n=1 \\ + 4d^2+3d+ (n-1)\lp 4d^2+2d\rp &:n \in \N \cap [2,\infty) + \end{cases}$ + \item $\lay \lp \tun_n^d \rp = \lp l_0, l_1,...,l_{L-1}, l_L \rp = \lp d,2d,...,2d,d \rp$ + \end{enumerate} +\end{lemma} +\begin{proof} + Note that Items (i)\textendash(iii) are consequences of Lemma \ref{idprop} and Lemma \ref{comp_prop} respectively. Note now that by observation $\param \lp \tun^d_1\rp = d^2+d$. Next Lemma $\ref{id_param}$ tells us that $\param\lp \tun^d_2\rp = 4d^2+3d$ + Note also that by definition of neural network composition, we have the following: + \begin{align} + &\param\lp \tun_3^d\rp \\ &= \param \lb \lp \lp \begin{bmatrix} + 1 \\ -1 \\ &\ddots \\& & 1 \\& & -1 + \end{bmatrix}, \begin{bmatrix} + 0 \\ 0 \\ \vdots \\ 0 \\0 + \end{bmatrix}\rp, \lp \begin{bmatrix} + 1 & -1 \\ & &\ddots \\ & & & 1 & -1 + \end{bmatrix}, \begin{bmatrix} + 0 \\ \vdots \\ 0 + \end{bmatrix}\rp \rp \bullet \right.\\ &\left. \lp \lp \begin{bmatrix} + 1 \\ -1 \\ & \ddots \\ & & 1 \\ & & -1 + \end{bmatrix}, \begin{bmatrix} + 0 \\ 0 \\ \vdots \\ 0 \\0 + \end{bmatrix}\rp, \lp \begin{bmatrix} + 1 & -1\\ & &\ddots \\ & & & 1 & -1 + \end{bmatrix}, \begin{bmatrix} + 0 \\ \vdots \\ 0 + \end{bmatrix}\rp \rp \rb \nonumber \\ + &= \param \lb \lp \lp \begin{bmatrix} + 1 \\ -1 \\ & \ddots \\ & & 1 \\ & &-1 + \end{bmatrix}, \begin{bmatrix} + 0 \\ 0 \\\vdots \\ 0\\0 + \end{bmatrix} \rp, \lp \begin{bmatrix} + 1 & -1 \\ -1 & 1 \\ & & \ddots \\ & & & 1 & -1 \\ & & & -1 & 1 + \end{bmatrix}, \begin{bmatrix} + 0 \\ 0 \\ \vdots \\ 0 \\ 0 + \end{bmatrix}\rp, \lp \begin{bmatrix} + 1 &-1 \\ & &\ddots \\ & & & 1 & -1 + \end{bmatrix},\begin{bmatrix} + 0 \\ \vdots \\ 0 + \end{bmatrix}\rp \rp \rb \nonumber \\ + &=2d \times d + 2d + 2d\times 2d +2d+2d\times d + d \nonumber \\ + &=2d^2+2d+4d^2+2d+2d^2 +d \nonumber \\ + &= 8d^2+5d + \end{align} + Suppose now that for all naturals up to and including $n$, it is the case that $\param\lp \tun_n^d\rp = 4d^2+3d + \lp n-2 \rp \lp 4d^2+2d\rp$. For the inductive step, we have the following: + + \begin{align} + & \param\lp \tun^d_{n+1}\rp = \param \lp \tun_n^d \bullet \id_d\rp \nonumber \\ + & = \param \lb \lp \begin{bmatrix} + 1 \\ -1 \\ & \ddots \\ & & 1 \\ & &-1 + \end{bmatrix}, \begin{bmatrix} + 0 \\ 0 \\ \vdots \\ 0 \\ 0 + \end{bmatrix} \rp, \lp \begin{bmatrix} + 1 & -1 \\ -1 & 1 \\ & \ddots \\ & & 1 & -1 \\ & & -1 & 1 + \end{bmatrix}, \begin{bmatrix} + 0 \\ 0 \\ \vdots \\ 0 \\ 0 + \end{bmatrix} \rp, \hdots, \lp \begin{bmatrix} + 1 &-1 \\ & \ddots \\ & & 1 & -1 + \end{bmatrix}, \begin{bmatrix} + 0 \\ \vdots \\ 0 + \end{bmatrix}\rp \right. \nonumber \\ + & \left. \bullet \id_d \rb \nonumber\\ + & = \param \lb \lp \begin{bmatrix} + 1 \\ -1 \\ & \ddots \\ & & 1 \\ & &-1 + \end{bmatrix}, \begin{bmatrix} + 0 \\ 0 \\ \vdots \\ 0 \\ 0 + \end{bmatrix} \rp, \lp \begin{bmatrix} + 1 & -1 \\ -1 & 1 \\ & \ddots \\ & & 1 & -1 \\ & & -1 & 1 + \end{bmatrix}, \begin{bmatrix} + 0 \\ 0 \\ \vdots \\ 0 \\ 0 + \end{bmatrix} \rp, \hdots, \lp \begin{bmatrix} + 1 & -1 \\ -1 & 1 \\ & \ddots \\ & & 1 & -1 \\ & & -1 & 1 + \end{bmatrix}, \begin{bmatrix} + 0 \\ 0 \\ \vdots \\ 0 \\ 0 + \end{bmatrix} \rp, \right. \nonumber\\ &\left. \lp \begin{bmatrix} + 1 &-1 \\ & \ddots \\ & & 1 & -1 + \end{bmatrix}, \begin{bmatrix} + 0 \\ \vdots \nonumber\\ 0 + \end{bmatrix}\rp \rb \nonumber\\ + &= 4d^2+3d+ (n-2)\lp 4d^2+2d\rp + 4d^2+2d \nonumber \\ + &=4d^2+3d+\lp n-1\rp\lp 4d^2+2d\rp \nonumber +\end{align} +This proves Item (iv). Finally, Item (v) is a consequence of Lemma \ref{5.3.2} +\end{proof} + + + + + + + +\subsection{The $\pwr$ Neural Networks and Their Properties} + +\begin{definition}[R\textemdash, 2023, The Power Neural Network]\label{def:pwr} + Let $n\in \N$. Let $\delta,\ve \in \lp 0,\infty \rp $, $q\in \lp 2,\infty \rp$, satisfy that $\delta = \ve \lp 2^{q-1} +1\rp^{-1}$. We define the power neural networks $\pwr_n^{q,\ve} \in \neu$, denoted for $n\in \N_0$ as: + \begin{align} + \pwr_n^{q,\ve} = \begin{cases} + \aff_{0,1} & :n=0\\ + \prd^{q,\ve} \bullet \lb \tun_{\dep(\pwr_{n-1}^{q,\ve})} \boxminus \pwr_{n-1}^{q,\ve} \rb \bullet \cpy_{2,1} & :n \in \N + \end{cases} \nonumber + \end{align} +Diagrammatically, this can be represented as: +\begin{figure} +\begin{center} + \begin{tikzpicture} + % Define nodes + \node[draw, rectangle] (top) at (0, 2) {$\pwr_{n-1}^{q,\ve}$}; + \node[draw, rectangle] (right) at (2, 0) {$\cpy_{2,1}$}; + \node[draw, rectangle] (bottom) at (0, -2) {$\tun_{\dep(\pwr_{n-1}^{q,\ve})}$}; + \node[draw, rectangle] (left) at (-2, 0) {$\prd^{q,\ve} $}; + + % Arrows with labels + \draw[->] (right) -- node[midway, above] {$x$} (top); + \draw[<-] (right) -- node[midway, above] {$x$} (4,0)(right); + \draw[->] (right) -- node[midway, right] {$x$} (bottom); + \draw[->] (top) -- node[midway, left] {$\lp \real_{\rect}\lp \pwr^{q,\ve}_{n-1}\rp \rp \lp x \rp $} (left); + \draw[->] (bottom) -- node[midway, left] {$x$} (left); + \draw[->] (left) -- node[midway, above] {} (-5.5,0); +% \draw[->] (-3,0) -- node[midway, above] {Arrow 6} (left); +\end{tikzpicture} +\end{center} +\caption{A representation of a typical $\pwr^{q,\ve}_n$ network.} +\end{figure} +\begin{remark} + For an \texttt{R} implementation see Listing \ref{Pwr} +\end{remark} +\begin{remark} + Note that for all $i \in \N$, $q\in \lp 2,\infty\rp$, $\ve \in \lp 0, \infty \rp$, each $\pwr_i^{q,\ve}$ differs from $\pwr_{i+1}^{q,\ve}$ by atleast one $\prd^{q,\ve}$ network. +\end{remark} +\end{definition} +\begin{lemma}\label{6.2.4} + Let $x,y \in \R$, $\ve \in \lp 0,\infty \rp$ and $q \in \lp 2,\infty \rp$. It is then the case for all $x,y \in \R$ that: + \begin{align} + \ve \max \left\{ 1,|x|^q,|y|^q\right\} \les \ve + \ve |x|^q+\ve |y|^q. + \end{align} +\end{lemma} +\begin{proof} + We will do this in the following cases: + + For the case that $|x| \les 1$ and $|y| \les 1$ we then have: + \begin{align} + \ve \max \left\{ 1,|x|^q,|y|^q \right\} = \ve \les \ve + \ve |x|^q+\ve |y|^q + \end{align} + For the case that $|x| \les 1$ and $|y| \ges 1$, without loss of generality we have then: + \begin{align} + \ve \max \left\{1,|x|^q,|y|^q \right\} \les \ve | y|^q \les \ve + \ve |x|^q+\ve |y|^q: + \end{align} + For the case that $|x| \ges 1$ and $|y| \ges 1$, and without loss of generality that $|x| \ges |y|$ we have that: + \begin{align} + \ve \max\{ 1, |x|^q,|y|^q \} = \ve |x|^q \les \ve + \ve |x|^q+\ve |y|^q + \end{align} +\end{proof} +\begin{lemma} +Let $\mathfrak{p}_i$ for $i \in \{1,2,...\}$ be the set of functions defined for $\ve \in \lp 0,\infty\rp$, and $x \in \R$ as follows: + \begin{align} + \mathfrak{p}_1 &= \ve+2+2|x|^2 \nonumber\\ + \mathfrak{p}_i &= \ve +2\lp \mathfrak{p}_{i-1} \rp^2+2|x|^2 \text{ for } i \ges 2 + \end{align} + For all $n\in \N$ and $\ve \in (0,\infty)$ and $q\in (2,\infty)$ it holds for all $x\in \R$ that: + \begin{align} + \left| \real_{\rect} \lp \pwr^{q,\ve}_n \rp \lp x \rp\right| \les \mathfrak{p}_n + \end{align} + \end{lemma} + \begin{proof} + Note that by Corollary \ref{cor_prd} it is the case that: + \begin{align}\label{(6.2.31)} + \left|\real_{\rect} \lp \pwr^{q,\ve}_1 \rp \lp x \rp \right| =\left| \real_{\rect}\lp \prd^{q,\ve}\rp \lp1,x \rp \right| \les \mathfrak{p}_1 + \end{align} + and applying (\ref{(6.2.31)}) twice, it is the case that: + \begin{align} + \left| \real_{\rect} \lp \pwr_2^{q,\ve}\rp \lp x \rp \right| &= \left| \real_{\rect} \lp \prd^{q,\ve} \rp \lp \real_{\rect} \lp \prd ^{q,\ve}\lp 1,x \rp\rp,x\rp \right| \nonumber \\ + &\les \ve + 2\left| \real_{\rect} \lp \prd^{q,\ve}\rp\lp 1,x\rp \right|^2 + 2|x|^2 \nonumber \\ + &\les \ve + 2\mathfrak{p}_1^2 +2|x|^2 = \mathfrak{p}_2 + \end{align} + Let's assume this holds for all cases up to and including $n$. For the inductive step, Corollary \ref{cor_prd} tells us that: + \begin{align} + \left| \real_{\rect} \lp \pwr_{n+1}^{q,\ve}\rp \lp x\rp \right| &\les \left| \real_{\rect} \lp \prd^{q,\ve} \lp \real_{\rect} \lp \prd^{q,\ve} \lp \real_{\rect}\cdots \lp 1,x\rp,x \rp ,x\rp \cdots \rp \rp \right| \nonumber \\ + &\les \real_{\rect} \lb \prd^{q,\ve} \lp \pwr^{q,\ve}_n \lp x\rp,x \rp\rb \nonumber \\ + &\les \ve + 2\mathfrak{p}_n^2 + 2|x|^2 = \mathfrak{p}_{n+1} + \end{align} + This completes the proof of the lemma. + \end{proof} + \begin{remark} + Note that since any instance of $\mathfrak{p}_i$ contains an instance of $\mathfrak{p}_{i-1}$ for $i \in \N \cap \lb 2,\infty\rp$, we have that $\mathfrak{p}_n \in \mathcal{O}\lp \ve^{2(n-1)}\rp$ + \end{remark} + \begin{lemma}\label{param_pwr_geq_param_tun} + For all $n \in \N$, $q\in \lp 2,\infty\rp$, and $\ve \in \lp 0,\infty\rp$, it is the case that $\param \lp \tun_{\dep\lp\pwr^{q,\ve}_n\rp}\rp \les \param \lp \pwr^{q,\ve}_n\rp$. + \end{lemma} + \begin{proof} + Note that for all $n \in \N$ it is straightforwardly the case that $\param\lp \pwr_n^{q,\ve}\rp \ges \param \lp \tun_{\dep\lp \pwr^{q,\ve}_{n-1}\rp}\rp$ because for all $n\in \N$, a $\pwr^{q,\ve}_n$ network contains a $\tun_{\dep\lp \pwr^{q,\ve}_{n-1}\rp}$ network. Note now that for all $i \in \N$ we have from Lemma \ref{tun_1} that $5 \les \param\lp \tun_{i+1}\rp - \param\lp \tun_i\rp \les 6$. Recall from Corollary \ref{cor:phi_network} that every instance of the $\Phi$ network contains atleast one $\mathfrak{i}_4$ network, which by Lemma \ref{lem:mathfrak_i} has $40$ parameters, whence the $\prd^{q,\ve}$ network has atleast $40$ parameters for all $\ve \in \lp 0,\infty \rp$ and $q \in \lp 2,\infty\rp$. Note now that for all $i\in \N$, $\pwr^{q,\ve}_{i}$ and $\pwr^{q,\ve}_{i+1}$ differ by atleast as many parameters as there are in $\prd^{q,\ve}$, since, indeed, they differ by atleast one more $\prd^{q,\ve}$. Thus for every increment in $i$, $\pwr_i^{q,\ve}$ outstrips $\tun_i$ by at-least $40-6 = 34$ parameters. This is true for all $i\in \N$. Whence it is the case that for all $i \in \N$, it is the case that $\param\lp \tun_i\rp \les \param \lp \pwr^{q,\ve}_i\rp$. + \end{proof} +\begin{lemma}[R\textemdash,2023]\label{power_prop} + Let $\delta,\ve \in \lp 0,\infty \rp $, $q\in \lp 2,\infty \rp$, and $\delta = \ve \lp 2^{q-1} +1\rp^{-1}$. Let $n \in \N_0$, and $\pwr_n \in \neu$. It is then the case for all $n \in \N_0$, and $x \in \R$ that: + \begin{enumerate}[label = (\roman*)] + \item $\lp \real_{\rect} \lp \pwr_n^{q,\ve} \rp \rp \lp x \rp \in C \lp \R, \R \rp $ + \item $\dep(\pwr_n^{q,\ve}) \les \begin{cases} + 1 & :n=0\\ + n\lb \frac{q}{q-2} \lb \log_2 \lp \ve^{-1} \rp +q\rb -1 \rb +1 & :n \in \N + \end{cases}$ + \item $\wid_1 \lp \pwr^{q,\ve}_{n}\rp = \begin{cases} + 1 & :n=0 \\ + 24+2\lp n-1 \rp & :n \in \N + \end{cases}$ + \item $\param(\pwr_n^{q,\ve}) \les \begin{cases} + 2 & :n=0 \\ + 4^{n+\frac{3}{2}} + \lp \frac{4^{n+1}-1}{3}\rp \lp \frac{360q}{q-2} \lb \log_2 \lp \ve^{-1} \rp +q+1 \rb +372\rp &: n\in \N + \end{cases}$\\~\\ + \item $\left|x^n -\lp \real_{\rect} \lp \pwr^{q,\ve}_n \rp \rp \lp x \rp \right| \les \begin{cases} + 0 & :n=0 \\ + \left| x \lp x^{n-1} - \real_{\rect}\lp \pwr^{q,\ve}_{n-1}\rp\lp x\rp\rp\right| + \ve + |x|^q + \mathfrak{p}_{n-1}^q & :n\in \N + \end{cases}$ \\~\\ + Where we let $\mathfrak{p}_i$ for $i \in \{1,2,...\}$ be the set of functions defined as follows: + \begin{align} + \mathfrak{p}_1 &= \ve + 2 + 2|x|^2 \nonumber\\ + \mathfrak{p}_i &= \ve + 2\lp \mathfrak{p}_{i-1} \rp^2+2|x|^2 + \end{align} + And whence we get that: + \begin{align} + \left| x^{n} - \real_{\rect} \lp \pwr^{q,\ve}_n\rp \lp x\rp\right| \in \mathcal{O} \lp \ve^{2q\lp n-1\rp} \rp &\text{ for } n \ges 2 + \end{align} + \item $\wid_{\hid \lp \pwr_n^{q,\ve}\rp}\lp \pwr^{q,\ve}_n\rp = \begin{cases} + 1 & n=0 \\ + 24 & n \in \N + \end{cases}$ + \end{enumerate} +\end{lemma} +\begin{proof} + Note that Item (ii) of Lemma \ref{5.3.2} ensures that $\real_{\rect} \lp \pwr_0 \rp = \aff_{1,0} \in C \lp \R, \R \rp$. Note next that by Item (v) of Lemma \ref{comp_prop}, with $\Phi_1 \curvearrowleft \nu_1, \Phi_2 \curvearrowleft \nu_2, a \curvearrowleft \rect$, we have that: + \begin{align} + \lp \real_{\rect} \lp \nu_1 \bullet \nu_2 \rp\rp \lp x \rp = \lp\lp \real_{\rect}\lp \nu_1 \rp \rp \circ \lp \real_{\rect}\lp \nu_2 \rp \rp \rp \lp x \rp + \end{align} + This, with the fact that the composition of continuous functions is continuous, the fact the stacking of continuous instantiated neural networks is continuous tells us that $\lp \real_{\rect} \pwr_n \rp \in C \lp \R, \R \rp$ for $n \in \N \cap \lb 2,\infty \rp$. This establishes Item (i). + + Note next that by observation $\dep \lp \pwr_0^{q,\ve} \rp=1$ and by Item (iv) of Lemma \ref{idprop}, it is the case that $\dep\lp \id_1 \rp = 2$. By Lemmas $\ref{dep_cpy}$ and $\ref{depthofcomposition}$ it is also the case that: $\dep\lp \prd^{q,\ve} \bullet \lb \tun_{\dep(\pwr^{q,\ve}_{n-1})} \boxminus \pwr^{q,\ve}_{n-1} \rb \bullet \cpy \rp = \dep \lp \prd^{q,\ve} \bullet \lb \tun_{\dep(\pwr^{q,\ve}_{n-1})} \boxminus \pwr^{q,\ve}_{n-1} \rb\rp $. Note also that by Lemma we have that $\dep \lp \tun_{\dep \lp \pwr^{q,\ve}_{n-1}\rp} \boxminus \pwr^{q,\ve}_{n-1}\rp = \dep \lp \pwr^{q,\ve}_{n-1} \rp$. + This with Lemma \ref{comp_prop} then yields for $n \in \N$ that: + \begin{align} + \dep \lp \pwr^{q,\ve}_n \rp &= \dep \lp \prd \bullet \lb \tun_{\mathcal{D} \lp \pwr^{q,\ve}_{n-1} \rp } \boxminus \pwr^{q,\ve}_{n-1} \rb \bullet \cpy_{2,1} \rp \nonumber \\ + &= \dep \lp \prd \bullet \lb \tun_{\dep \lp \pwr^{q,\ve}_{n-1} \rp } \boxminus \pwr^{q,\ve}_{n-1} \rb \rp \nonumber \\ + &= \dep \lp \prd \rp + \dep \lp \tun_{\dep \lp \pwr^{q,\ve}_{n-1} \rp} \rp -1 \nonumber \\ + &\les \frac{q}{q-2} \lb \log_2 \lp \ve^{-1}\rp +q \rb + \dep \lp \tun_{\dep\lp \pwr^{q,\ve}_{n-1} \rp} \rp - 1 \nonumber \\ + &= \frac{q}{q-2}\lb \log_2 \lp\ve^{-1} \rp + q\rb + \dep \lp \pwr^{q,\ve}_{n-1}\rp - 1 + \end{align} + And hence for all $n \in \N$ it is the case that: + \begin{align} + \dep\lp \pwr^{q,\ve}_n\rp - \dep \lp \pwr^{q,\ve}_{n-1}\rp \les \frac{q}{q-2} \lb \log_2 \lp \ve^{-1} \rp +q\rb -1 + \end{align} + This, in turn, indicates that: + \begin{align} + \dep \lp \pwr^{q,\ve}_n\rp &\les n\lb \frac{q}{q-2} \lb \log_2 \lp \ve^{-1} \rp +q\rb -1 \rb +1 \nonumber \\ + &\les n\lb \frac{q}{q-2} \lb \log_2 \lp \ve^{-1} \rp +q\rb -1 \rb +1 + \end{align} + This proves Item (ii). + + Note now that $\wid_1 \lp \pwr^{q,\ve}_0\rp = \wid_1 \lp \aff_{0,1}\rp = 1$. Further Lemma \ref{comp_prop}, Remark \ref{5.3.2}, tells us that for all $i,k \in \N$ it is the case that $\wid_i \lp \tun_k\rp \les 2$. Observe that since $\cpy_{2,1}, \pwr_0^{q,\ve}$, and $\tun_{\dep \lp \pwr_0^{q,\ve}\rp}$ are all affine neural networks, Lemma \ref{aff_effect_on_layer_architecture}, Corollary \ref{affcor}, and Lemma \ref{prd_network} tells us that: + \begin{align} + \wid_1 \lp \pwr_1^{q,\ve} \rp &= \wid_1 \lp \prd^{q,\ve} \bullet \lb \tun_{\dep(\pwr_{0}^{q,\ve})} \boxminus \pwr_{0}^{q,\ve} \rb \bullet \cpy_{2,1} \rp \nonumber \\ + &= \wid_1 \lp \prd^{q,\ve}\rp = 24 + \end{align} + And that: + \begin{align} + \wid_1 \lp \pwr_2^{q,\ve} \rp &= \wid_1 \lp \prd^{q,\ve} \bullet \lb \tun_{\dep(\pwr_{1}^{q,\ve})} \boxminus \pwr_{1}^{q,\ve} \rb \bullet \cpy_{2,1} \rp \nonumber \\ + &= \wid_1 \lp \lb \tun_{\dep \lp \pwr^{q,\ve}_1 \rp} \boxminus \pwr_{1}^{q,\ve} \rb \rp \nonumber\\ + &= 24+2 = 26 \nonumber + \end{align} + This completes the base case. For the inductive case, assume that for all $i$ up to and including $k\in \N$ it is the case that $\wid_1 \lp \pwr_i^{q,\ve}\rp \les \begin{cases} + 1 & :i=0 \\ + 24+2(i-1) & :i \in \N + \end{cases}$. For the case of $k+1$, we get that: + \begin{align} + \wid_1 \lp \pwr_{k+1}^{q,\ve} \rp &= \wid_1 \lp \prd^{q,\ve} \bullet \lb \tun_{\dep(\pwr_{k}^{q,\ve})} \boxminus \pwr_{k}^{q,\ve} \rb \bullet \cpy_{2,1} \rp \nonumber \\ + &=\wid_1 \lp \lb \tun_{\dep(\pwr_{k}^{q,\ve})} \boxminus \pwr_{k}^{q,\ve} \rb \rp \nonumber \\ + &=\wid_1 \lp \tun_{\dep \lp \pwr^{q,\ve}_{k}\rp}\rp + \wid_1 \lp \pwr^{q,\ve}_k\rp \nonumber \\ + &\les \begin{cases} + 2 & :k=0 \\ + 24 +2 k & :k\in \N + \end{cases} + \end{align} + This establishes Item (iii). + + For Item (iv), we will prove this in cases. + + \textbf{Case 1: $\pwr_0^{q,\ve}:$} + + Note that by Lemma \ref{5.3.2} we have that: + \begin{align} + \param\lp \pwr_0^{q,\ve} \rp = \param \lp \aff_{0,1} \rp =2 + \end{align} + This completes Case 1. + +% \textbf{Case 2: $\pwr_1^{q,\ve}:$} +% +% For this case, Lemma \ref{paramofparallel} tells us that we have: +% \begin{align} +% \param \lp \pwr_{0}^{q,\ve} \boxminus \tun_{\dep \lp \pwr_{0}^{q,\ve}\rp }\rp &= \frac{1}{2} \lp \param \lp \pwr^{q,\ve}_{0}\rp + \param \lp \tun_{ 1 } \rp\rp^2 \nonumber\\ +% &= \frac{1}{2} \lp 2+2\rp^2 \nonumber \\ +% &=8 +% \end{align} +% Notice now that by Corollary \ref{affcor}, we have that: +% \begin{align} +% \param \lp\lb \pwr_{0}^{q,\ve} \boxminus \tun_{\dep \lp \pwr_{0}^{q,\ve}\rp } \rb \bullet \cpy_{2,1}\rp &= \param \lp \pwr_{0}^{q,\ve} \boxminus \tun_{\dep \lp \pwr_{0}^{q,\ve}\rp }\rp \nonumber \\ +% &=8 +% \end{align} +% This now, coupled with Lemma \ref{comp_prop} and Lemma \ref{prd_network} tells us that: +% \begin{align}\label{(6.2.19)} +% \param \lp \prd^{q,\ve} \bullet \lb \pwr_{0}^{q,\ve} \boxminus \tun_{\dep \lp \pwr_{0}^{q,\ve}\rp } \rb \bullet \cpy_{2,1}\rp &= \param \lp \prd^{q,\ve}\bullet \lb \pwr_{0}^{q,\ve} \boxminus \tun_{\dep \lp \pwr_{0}^{q,\ve}\rp } \rb \rp\nonumber\\ +% &\les \param \lp \prd^{q,\ve}\rp + 8 + \wid_1 \lp \prd^{q,\ve} \rp \cdot \wid_0 \lp \tun_1\rp \nonumber \\ +% &=\param \lp \prd^{q,\ve}\rp + 32 \nonumber\\ +% &\les \frac{360q}{q-2} \lb \log_2 \lp \ve^{-1} \rp +q+1 \rb -220 +% \end{align} + + \textbf{Case 2: $\pwr_n^{q,\ve}$ where $n\in \N$:} + + Note that Lemma \ref{paramofparallel}, Lemma \ref{param_pwr_geq_param_tun}, Corollary \ref{cor:sameparal}, Lemma \ref{lem:paramparal_geq_param_sum}, and Corollary \ref{cor:bigger_is_better}, tells us it is the case that: + \begin{align} + \param \lp \pwr_{n-1}^{q,\ve} \boxminus \tun_{\dep \lp \pwr_{n-1}^{q,\ve}\rp }\rp &\les \param \lp \pwr^{q,\ve}_{n-1} \boxminus \pwr^{q,\ve}_{n-1}\rp \nonumber\\ + &\les 4\param\lp \pwr^{q,\ve}_{n-1}\rp + \end{align} + Then Lemma \ref{comp_prop} and Corollary \ref{affcor} tells us that: + \begin{align}\label{(6.2.34)} + &\param \lp \lb \pwr^{q,\ve}_{n-1} \boxminus\tun_{\dep \lp \pwr_{n-1}^{q,\ve} \rp}\rb \bullet \cpy_{2,1}\rp \nonumber\\&= \param \lp \lb \pwr^{q,\ve}_{n-1} \boxminus\tun_{\dep \lp \pwr_{n-1}^{q,\ve} \rp}\rb \rp \nonumber\\ + &\les 4\param \lp \pwr^{q,\ve}_{n-1}\rp + \end{align} + Note next that by definition for all $q\in \lp 2,\infty\rp$, and $\ve \in \lp 0,\infty\rp$ it is case that $\wid_{\hid\lp \pwr_0^{q,\ve}\rp}\pwr_0^{q,\ve} = \wid_{\hid \lp \aff_{0,1}\rp} = 1$. Now, by Lemma \ref{prd_network}, and by construction of $\pwr_i^{q,\ve}$ we may say that for $i\in \N$ it is the case that: + \begin{align} + \wid_{\hid \lp \pwr^{q,\ve}_i\rp} = \wid _{\hid \lp \prd^{q,\ve}\rp} = 24 + \end{align} + + Note also that by Lemma \ref{6.2.2} it is the case that: + \begin{align} + \wid_{\hid \lp \tun_{\dep \lp \pwr_{i-1}^{q,\ve}\rp}\rp} \lp \tun_{\dep \lp \pwr^{q,\ve}_{i-1}\rp} \rp = 2 \end{align} + Furthermore, note that for $n\in \lb 2, \infty \rp \cap \N$ Lemma \ref{prd_network} tells us that: + \begin{align} + \wid_{\hid \lp \lb \pwr^{q,\ve}_{n-1} \boxminus\tun_{\dep \lp \pwr_{n-1}^{q,\ve} \rp}\rb\rp} \lp \lb \pwr^{q,\ve}_{n-1} \boxminus\tun_{\dep \lp \pwr_{n-1}^{q,\ve} \rp}\rb\rp = 24+2=26 + \end{align} + + Finally Lemma \ref{comp_prop}, (\ref{(6.2.34)}), and Corollary \ref{cor:sameparal}, also tells us that: + \begin{align} + &\param \lp \pwr_{n}^{q,\ve}\rp\\ &= \param \lp \prd^{q,\ve} \bullet\lb \pwr^{q,\ve}_{n-1} \boxminus\tun_{\dep \lp \pwr_{n-1}^{q,\ve} \rp}\rb \bullet \cpy_{2,1}\rp \nonumber \\ + &= \param \lp \prd^{q,\ve} \bullet \lb \pwr^{q,\ve}_{n-1} \boxminus\tun_{\dep \lp \pwr_{n-1}^{q,\ve} \rp}\rb\rp \nonumber \\ + &\les \param \lp \prd^{q,\ve} \rp + 4\param \lp \pwr_{n-1}^{q,\ve}\rp+\nonumber\\ + &+ \wid_1 \lp \prd^{q,\ve} \rp\ \cdot \wid_{\hid \lp \lb \pwr^{q,\ve}_{n-1} \boxminus\tun_{\dep \lp \pwr_{n-1}^{q,\ve} \rp}\rb\rp} \lp \lb \pwr^{q,\ve}_{n-1} \boxminus\tun_{\dep \lp \pwr_{n-1}^{q,\ve} \rp}\rb\rp \nonumber \\ + &= \param\lp \prd^{q,\ve}\rp + 4\param\lp \pwr^{q,\ve}_{n-1}\rp + 624 \nonumber\\ + &= 4^{n+1}\param\lp \pwr^{q,\ve}_0\rp + \lp \frac{4^{n+1}-1}{3}\rp \lp \param\lp \prd^{q,\ve}\rp + 624\rp \nonumber\\ + &= 4^{n+\frac{3}{2}} + \lp \frac{4^{n+1}-1}{3}\rp \lp \frac{360q}{q-2} \lb \log_2 \lp \ve^{-1} \rp +q+1 \rb +372\rp + \end{align} + + + Next note that $\lp \real_{\rect} \lp \pwr_{0,1} \rp\rp \lp x \rp$ is exactly $1$, which implies that for all $x\in \R$ we have that $|x^0-\lp \real_{\rect} \lp \pwr_{0.1}\rp\lp x \rp\rp |=0$. Note also that the instantiations of $\tun_n$ and $\cpy_{2,1}$ are exact. Note next that since $\tun_n$ and $\cpy_{2,1}$ are exact, the only sources of error for $\pwr^{q,\ve}_n$ a are $n$ compounding applications of $\prd^{q,\ve}$. + + Note also that by definition, it is the case that: + \begin{align} + \real_{\rect}\lp \pwr_n^{q,\ve} \rp = \real_{\rect} \lb \underbrace{\prd^{q,\ve} \lp \inst_{\rect} \lb \prd^{q,\ve}\lp\cdots \inst_{\rect}\lb \prd^{q,\ve} \lp 1,x\rp \rb, \cdots x\rp \rb, x \rp}_{n-copies } \rb + \end{align} + Lemma \ref{prd_network} tells us that: + \begin{align} + \left|x-\real_{\rect}\lp \prd^{q,\ve} \lp 1,x \rp \rp \right| \les \ve \max\{ 1,|x|^q\} \les \ve + \left| x\right|^q + \end{align} + The triangle inequality, Lemma \ref{6.2.4}, Lemma \ref{prd_network}, and Corollary \ref{cor_prd} then tells us that: + \begin{align} + &\left| x^2 - \real_{\rect} \lp \pwr^{q,\ve}_2 \rp \lp x \rp \right| \nonumber\\ + &=\left| x\cdot x-\real_{\rect}\lp \prd^{q,\ve}\lp \inst_{\rect}\lp \prd^{q,\ve} \lp 1,x \rp \rp,x\rp \rp\right| \nonumber\\ + &\les \left| x\cdot x - x \cdot \inst_{\rect} \lp \prd^{q,\ve}\lp 1,x\rp \rp \right| + \left| x\cdot \inst_{\rect}\lp \prd^{q,\ve} \lp 1,x \rp\rp -\inst_{\rect}\lp \prd^{q,\ve} \lp \inst_{\rect}\lp \prd^{q,\ve}\lp 1,x\rp \rp,x \rp \rp \right| \nonumber\\ + &=\left| x\lp x-\inst_{\rect}\lp \prd^{q,\ve}\lp 1,x\rp\rp\rp\right|+ \ve + \ve\left| x\right|^q+\ve \left| \inst_{\rect}\lp \prd^{q,\ve}\lp 1,x\rp\rp\right|^q \nonumber\\ + &\les \left|x\ve + x\ve\left|x\right|^q \right| + \ve + \ve\left|x\right|^q+\ve \left|\ve + 2+x^2 \right|^q \nonumber\\ + &= \left| x\ve + x\ve \left| x\right|^q\right| + \ve + \ve\left| x\right|^q + \ve \mathfrak{p}_{1}^q + \end{align} + + Note that this takes care of our base case. Assume now that for all integers up to and including $n$, it is the case that: + \begin{align}\label{(6.2.39)} + \left| x^n - \real_{\rect}\lp \pwr_n^{q,\ve}\rp \lp x \rp \right| &\les \left| x\cdot x^{n-1}-x \cdot \real_{\rect}\lp \pwr_{n-1}^{q,\ve}\rp \lp x\rp\right| + \left| x \cdot \real_{\rect}\lp \pwr_{n-1}^{q,\ve}\rp \lp x\rp -\real_{\rect} \lp \pwr_n^{q,\ve} \rp \lp x \rp \right| \nonumber \\ + &\les \left| x\lp x^{n-1}-\real_{\rect} \lp \pwr^{q,\ve}_{n-1}\rp \lp x\rp\rp\right| + \ve + \ve|x|^q + \ve\left| \real_{\rect}\lp \pwr^{q,\ve}_{n-1}\rp \lp x \rp \right| ^q\nonumber \\ + &\les \left| x \lp x^{n-1} - \real_{\rect}\lp \pwr^{q,\ve}_{n-1}\rp\lp x\rp\rp\right| + \ve + \ve|x|^q + \ve\mathfrak{p}_{n-1}^q + \end{align} + For the inductive case, we see that: + \begin{align} + \left|x^{n+1}-\real_{\rect}\lp \pwr_{n+1}^{q,\ve}\rp\lp x\rp \right| &\les \left| x^{n+1}-x\cdot \real_{\rect}\lp \pwr_{n}^{q,\ve}\rp \lp x \rp\right| + \left| x\cdot \real_{\rect}\lp \pwr^{q,\ve}_n\rp \lp x \rp - \real_{\rect} \lp \pwr^{q,\ve}_{n+1}\rp\right| \nonumber \\ + &\les \left|x\lp x^n-\real_{\rect} \lp \pwr^{q,\ve}_n\rp \lp x\rp\rp \right| + \ve + \ve|x|^q+\ve\left| \real_{\rect} \lp \pwr^{q,\ve}_{n}\rp \lp x \rp\right|^q \nonumber \\ + &\les \left|x\lp x^n-\real_{\rect} \lp \pwr^{q,\ve}_n\rp \lp x\rp\rp \right| + \ve + \ve|x|^q + \ve\mathfrak{p}^q_n + \end{align} + Note that since $\mathfrak{p}_n \in \mathcal{O} \lp \ve^{2(n-1)}\rp$ for $n\in \N \cap \lb 2,\infty \rp$, it is the case for all $x\in \R$ then that $\left| x^{n} - \real_{\rect} \lp \pwr^{q,\ve}_n\rp \lp x\rp\right| \in \mathcal{O} \lp \ve^{2q(n-1)} \rp$ for $n \ges 2$. + + Finally note that $\wid_{\hid \lp \pwr^{q,\ve}_0\rp}\lp \pwr^{q,\ve}_0\rp = 1$ from observation. For $n\in \N$, note that the second to last layer is the second to last layer of the $\prd^{q,\ve}$ network. Thus Lemma \ref{prd_network} tells us that: + \begin{align} + \wid_{\hid\lp \pwr^{q,\ve}_m\rp} \lp \pwr^{q,\ve}_n\rp = \begin{cases} + 1 & n=0 \\ + 24 & n\in \N + \end{cases} + \end{align} + This completes the proof of the lemma. +\end{proof} +\begin{remark}\label{rem:pwr_gets_deeper} + Note each power network $\pwr_n^{q,\ve}$ is at least as big as the previous power network $\pwr_{n-1}^{q,\ve}$, one differs from the other by one $\prd^{q, ve}$ network. +\end{remark} +\subsection{$\pnm_{n,C}^{q,\ve}$ and Neural Network Polynomials.} + +\begin{definition}[Neural Network Polynomials] + Let $\delta,\ve \in \lp 0,\infty \rp $, $q\in \lp 2,\infty \rp$ and $\delta = \ve \lp 2^{q-1} +1\rp^{-1}$. For fixed $q,\ve$, fixed $n \in \N_0$, and for $C = \{c_0,c_1,\hdots, c_n \} \in \R^{n+1}$ (the set of coefficients), we will define the following objects as neural network polynomials: + \begin{align} + \pnm^{q,\ve}_{n,C} \coloneqq \bigoplus^n_{i=0} \lp c_i \triangleright\lb \tun_{\max_i \left\{\dep \lp \pwr_i^{q,\ve} \rp\right\} +1 - \dep \lp \pwr^{q,\ve}_i\rp} \bullet \pwr_i^{q,\ve}\rb \rp + \end{align} +\end{definition} +\begin{remark} + Diagrammatically, these can be represented as +\end{remark} +\begin{figure}[h] +\begin{center} + + +\tikzset{every picture/.style={line width=0.75pt}} %set default line width to 0.75pt + +\begin{tikzpicture}[x=0.75pt,y=0.75pt,yscale=-1,xscale=1] +%uncomment if require: \path (0,475); %set diagram left start at 0, and has height of 475 + +%Shape: Rectangle [id:dp8950407412127579] +\draw (390,52) -- (455.33,52) -- (455.33,85) -- (390,85) -- cycle ; +%Shape: Rectangle [id:dp6602004057057332] +\draw (359.33,108.67) -- (454,108.67) -- (454,141.67) -- (359.33,141.67) -- cycle ; +%Shape: Rectangle [id:dp6567335394697266] +\draw (300,168.67) -- (455.33,168.67) -- (455.33,201.67) -- (300,201.67) -- cycle ; +%Shape: Rectangle [id:dp40847692689766735] +\draw (200,255.33) -- (456,255.33) -- (456,288.33) -- (200,288.33) -- cycle ; +%Shape: Rectangle [id:dp9479406055744195] +\draw (200.67,51.33) -- (358.67,51.33) -- (358.67,84.33) -- (200.67,84.33) -- cycle ; +%Shape: Rectangle [id:dp8579663805783284] +\draw (199.33,108) -- (330,108) -- (330,141) -- (199.33,141) -- cycle ; +%Shape: Rectangle [id:dp41506308397634806] +\draw (200.67,168.67) -- (268.67,168.67) -- (268.67,201.67) -- (200.67,201.67) -- cycle ; +%Straight Lines [id:da4565055641527326] +\draw (390.67,68.33) -- (361.33,68.33) ; +\draw [shift={(359.33,68.33)}, rotate = 360] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; +%Straight Lines [id:da26211042309965304] +\draw (358,123.67) -- (332.67,123.67) ; +\draw [shift={(330.67,123.67)}, rotate = 360] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; +%Straight Lines [id:da19391185534075384] +\draw (298,185) -- (272,185) ; +\draw [shift={(270,185)}, rotate = 360] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; +%Shape: Rectangle [id:dp5947036121491401] +\draw (518.67,155.33) -- (584,155.33) -- (584,188.33) -- (518.67,188.33) -- cycle ; +%Straight Lines [id:da9888083048478233] +\draw (518.67,155.33) -- (457.85,71.95) ; +\draw [shift={(456.67,70.33)}, rotate = 53.89] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; +%Straight Lines [id:da8782251261566656] +\draw (517.33,166) -- (457.03,128.72) ; +\draw [shift={(455.33,127.67)}, rotate = 31.73] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; +%Straight Lines [id:da09841373540031018] +\draw (518.67,178) -- (459.33,178.32) ; +\draw [shift={(457.33,178.33)}, rotate = 359.69] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; +%Straight Lines [id:da1515899374288483] +\draw (518.67,188.33) -- (458.51,271.38) ; +\draw [shift={(457.33,273)}, rotate = 305.92] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; +%Shape: Rectangle [id:dp031165707162986944] +\draw (78.67,154.67) -- (144,154.67) -- (144,187.67) -- (78.67,187.67) -- cycle ; +%Straight Lines [id:da9492662023556374] +\draw (200,68.33) -- (145.09,152.99) ; +\draw [shift={(144,154.67)}, rotate = 302.97] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; +%Straight Lines [id:da028520602639475978] +\draw (198.67,123) -- (146.92,162.45) ; +\draw [shift={(145.33,163.67)}, rotate = 322.67] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; +%Straight Lines [id:da6814861591796668] +\draw (200,185) -- (147.29,174.07) ; +\draw [shift={(145.33,173.67)}, rotate = 11.71] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; +%Straight Lines [id:da019305885926265143] +\draw (198.67,271) -- (145.1,189.34) ; +\draw [shift={(144,187.67)}, rotate = 56.74] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; +%Straight Lines [id:da8585029210721031] +\draw (616,172.33) -- (586.67,172.33) ; +\draw [shift={(584.67,172.33)}, rotate = 360] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; +%Straight Lines [id:da9805678030848519] +\draw (78.67,169.67) -- (49.33,169.67) ; +\draw [shift={(47.33,169.67)}, rotate = 360] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; + +% Text Node +\draw (412,217.73) node [anchor=north west][inner sep=0.75pt] {$\vdots $}; +% Text Node +\draw (406,61.4) node [anchor=north west][inner sep=0.75pt] {$\mathsf{Pwr}^{q,\ve}_{0}$}; +% Text Node +\draw (406,118.07) node [anchor=north west][inner sep=0.75pt] {$\mathsf{Pwr}^{q,\ve}_{1}$}; +% Text Node +\draw (403.33,177.07) node [anchor=north west][inner sep=0.75pt] {$\mathsf{Pwr}^{q,\ve}_{2}$}; +% Text Node +\draw (265.33,58.4) node [anchor=north west][inner sep=0.75pt] {$\mathsf{Tun}$}; +% Text Node +\draw (404,263.07) node [anchor=north west][inner sep=0.75pt] {$\mathsf{Pwr}^{q,\ve}_{n}$}; +% Text Node +\draw (249.33,115.73) node [anchor=north west][inner sep=0.75pt] {$\mathsf{Tun}$}; +% Text Node +\draw (222,176.4) node [anchor=north west][inner sep=0.75pt] {$\mathsf{Tun}$}; +% Text Node +\draw (525,162.4) node [anchor=north west][inner sep=0.75pt] {$\mathsf{Cpy}_{n+1,1}$}; +% Text Node +\draw (471.33,198.4) node [anchor=north west][inner sep=0.75pt] {$\vdots $}; +% Text Node +\draw (83,163.73) node [anchor=north west][inner sep=0.75pt] {$\mathsf{Sum}_{n+1,1}$}; +% Text Node +\draw (230.67,214.4) node [anchor=north west][inner sep=0.75pt] {$\vdots $}; +% Text Node +\draw (172,193.73) node [anchor=north west][inner sep=0.75pt] {$\vdots $}; + + +\end{tikzpicture} +\end{center} +\caption{Neural network diagram for an elementary neural network polynomial.} +\end{figure} + +\begin{lemma}[R\textemdash,2023]\label{6.2.9}\label{nn_poly}\label{mnm_prop} + Let $\delta,\ve \in \lp 0,\infty \rp $, $q\in \lp 2,\infty \rp$ and $\delta = \ve \lp 2^{q-1} +1\rp^{-1}$. It is then the case for all $n\in\N_0$ and $x\in \R$ that: + \begin{enumerate}[label = (\roman*)] + \item $\real_{\rect} \lp \pnm_{n,C}^{q,\ve}\rp \in C \lp \R, \R \rp $ + \item $\dep \lp \pnm_{n,C}^{q,\ve} \rp \les \begin{cases} + 1 & :n=0\\ + n\lb \frac{q}{q-2} \lb \log_2 \lp \ve^{-1} \rp +q\rb -1 \rb +1 &:n\in \N + \end{cases}$ + \item $\param \lp \pnm_{n,C}^{q,\ve} \rp \les \begin{cases} + 2 & :n =0 \\ + \lp n+1\rp\lb 4^{n+\frac{3}{2}} + \lp \frac{4^{n+1}-1}{3}\rp \lp \frac{360q}{q-2} \lb \log_2 \lp \ve^{-1} \rp +q+1 \rb +372\rp\rb &:n\in \N + \end{cases}$ \\~\\ + \item $\left|\sum^n_{i=0} c_ix^i - \real_{\rect} \lp \pnm_{n,C}^{q,\ve} \rp \lp x \rp \right| \les \sum^n_{i=1} c_i\lp \left| x \lp x^{i-1} - \real_{\rect}\lp \pwr^{q,\ve}_{i-1}\rp\lp x\rp\rp\right| + \ve + |x|^q + \mathfrak{p}_{i-1}^q \rp $\\~\\ + Where $\mathfrak{p}_i$ are the set of functions defined for $i \in \N$ as such: + \begin{align} + \mathfrak{p}_1 &= \ve+1+|x|^2 \nonumber\\ + \mathfrak{p}_i &= \ve +\lp \mathfrak{p}_{i-1} \rp^2+|x|^2 + \end{align} + Whence it is the case that: + \begin{align} + \left|\sum^n_{i=0} c_ix^i - \real_{\rect} \lp \pnm_{n,C}^{q,\ve} \rp \lp x \rp \right| \in \mathcal{O} \lp \ve^{2q(n-1)}\rp + \end{align} + \item $\wid_1 \lp \pnm_{n,C}^{q,\ve} \rp = 2+23n+n^2 $ + \item $\wid_{\hid \lp \pnm_{n,C}^{q,\ve}\rp} \lp \pnm_{n,C}^{q,\ve}\rp \les\begin{cases} + 1 &:n=0 \\ + 24 + 2n &:n\in \N \end{cases}$ + \end{enumerate} +\end{lemma} +\begin{proof} + Note that by Lemma \ref{5.6.3}, Lemma \ref{power_prop}, and Lemma \ref{comp_prop} for all $n\in \N_0$ it is the case that: + \begin{align} + \real_{\rect}\lp \pnm_{n,C}^{q,\ve} \rp &= \real_{\rect} \lp \bigoplus^n_{i=0} \lb c_i \triangleright\lb \tun_{\max_i \left\{\dep \lp \pwr_i^{q,\ve} \rp\right\} +1 - \dep \lp \pwr^{q,\ve}_i\rp} \bullet \pwr_i^{q,\ve}\rb \rb \rp \nonumber\\ + &= \sum^n_{i=1}c_i \real_{\rect}\lp \tun_{\max_i \left\{\dep \lp \pwr_i^{q,\ve} \rp\right\} +1 - \dep \lp \pwr^{q,\ve}_i\rp} \bullet \pwr_i^{q,\ve} \rp \nonumber\\ + &= \sum^n_{i=1}c_i\real_{\rect}\lp \pwr^{q,\ve}_i \rp\nonumber + \end{align} + Since Lemma \ref{power_prop} tells us that $\lp \real_{\rect} \lp \pwr_n^{q,\ve} \rp \rp \lp x \rp \in C \lp \R, \R \rp$, for all $n\in \N_0$ and since the finite sum of continuous functions is continuous, this proves Item (i). + + Note that $\pnm_n^{q,\ve}$ is only as deep as the deepest of the $\pwr^{q,\ve}_i$ networks, which from the definition is $\pwr_n^{q,\ve}$, which in turn also has the largest bound. Therefore, by Lemma \ref{comp_prop}, Lemma $\ref{5.3.3}$, Lemma $\ref{depth_prop}$, and Lemma \ref{power_prop}, we have that: + \begin{align} + \dep \lp \pnm_{n,C}^{q,\ve} \rp &\les \dep \lp \pwr_n^{q,\ve}\rp \nonumber\\ + &\les \begin{cases} + 1 & :n=0\\ + n\lb \frac{q}{q-2} \lb \log_2 \lp \ve^{-1} \rp +q\rb -1 \rb +1 &:n\in \N + \end{cases} \nonumber + \end{align} + This proves Item (ii). + + Note next that for the case of $n=0$, we have that: + \begin{align} + \pnm_n^{q,\ve} = c_i \triangleright\pwr_0^{q,\ve} + \end{align} + This then yields us $2$ parameters. + + Note that each neural network summand in $\pnm_n^{q,\ve}$ consists of a combination of $\tun_k$ and $\pwr_k$ for some $k\in \N$. Each $\pwr_k$ has at least as many parameters as a tunneling neural network of that depth, as Lemma \ref{param_pwr_geq_param_tun} tells us. This, finally, with Lemma \ref{aff_effect_on_layer_architecture}, Corollary \ref{affcor}, and Lemma \ref{power_prop} then implies that: + \begin{align} + \param\lp \pnm^{q,\ve}_{n,C} \rp &= \param \lp \bigoplus^n_{i=0} \lb c_i \triangleright\lb \tun_{\max_i \left\{\dep \lp \pwr_i^{q,\ve} \rp\right\} +1 - \dep \lp \pwr^{q,\ve}_i\rp} \bullet \pwr_i^{q,\ve}\rb \rb \rp\nonumber \\ + &\les \lp n+1 \rp \cdot \param \lp c_i \triangleright \lb \tun_1 \bullet \pwr_n^{q,\ve} \rb\rp \nonumber\\ + &\les \lp n+1 \rp \cdot \param \lp \pwr_n^{q,\ve} \rp \nonumber \\ + &\les \begin{cases} + 2 & :n =0 \\ + \lp n+1\rp\lb 4^{n+\frac{3}{2}} + \lp \frac{4^{n+1}-1}{3}\rp \lp \frac{360q}{q-2} \lb \log_2 \lp \ve^{-1} \rp +q+1 \rb +372\rp\rb &:n\in \N + \end{cases} \nonumber + \end{align} + This proves Item (iii). + + Finally, note that for all $i\in \N$, Lemma \ref{power_prop}, and the triangle inequality then tells us that it is the case for all $i \in \N$ that: + \begin{align} + \left| x^i - \real_{\rect}\lp \pwr_i^{q,\ve}\rp \lp x \rp \right| &\les \left| x^i-x \cdot \real_{\rect}\lp \pwr_{i-1}^{q,\ve}\rp \lp x\rp\right| + \left| x \cdot \real_{\rect}\lp \pwr_{i-1}^{q,\ve}\rp \lp x\rp -\real_{\rect} \lp \pwr_i^{q,\ve} \rp \lp x \rp \right| \nonumber \\ + \end{align} + This, Lemma \ref{6.2.9}, and the fact that instantiation of the tunneling neural network leads to the identity function (Lemma \ref{6.2.2} and Lemma \ref{comp_prop}), together with Lemma \ref{scalar_left_mult_distribution}, and the absolute homogeneity condition of norms, then tells us that for all $x\in \R$, and $c_0,c_1,\hdots, c_n \in \R$ it is the case that: + \begin{align} + &\left|\sum^n_{i=0} c_ix^i - \real_{\rect} \lp \pnm^{q,\ve}_{n,C} \lp x\rp \rp \right| \nonumber\\ + &= \left| \sum^n_{i=0} c_ix^i - \real_{\rect} \lb \bigoplus^n_{i=0} \lb c_i \triangleright \tun_{\max_i \left\{\dep \lp \pwr_i^{q,\ve} \rp\right\} +1 - \dep \lp \pwr^{q,\ve}_i\rp} \bullet \pwr_i^{q,\ve} \rb \rb\lp x \rp\right| \nonumber \\ + &=\left| \sum^n_{i=1} c_ix^i-\sum_{i=0}^n c_i \lp \inst_{\rect}\lb \tun_{\max_i \left\{\dep \lp \pwr_i^{q,\ve} \rp\right\} +1 - \dep \lp \pwr^{q,\ve}_i\rp} \bullet \pwr_i^{q,\ve}\rb\lp x\rp\rp\right| \nonumber\\ + &\les \sum_{i=1}^n \left|c_i\right| \cdot\left| x^i - \inst_{\rect}\lb \tun_{\max_i \left\{\dep \lp \pwr_i^{q,\ve} \rp\right\} +1 - \dep \lp \pwr^{q,\ve}_i\rp} \bullet \pwr_i^{q,\ve}\rb\lp x\rp\right| \nonumber\\ + &\les \sum^n_{i=1} \left|c_i\right|\cdot\lp \left| x \lp x^{i-1} - \real_{\rect}\lp \pwr^{q,\ve}_{i-1}\rp\lp x\rp\rp\right| + \ve + |x|^q + \mathfrak{p}_{i-1}^q \rp \nonumber + \end{align} + Note however that since for all $x\in \R$ and $i \in \N \cap \lb 2, \infty\rp$, Lemma \ref{prd_network} tells us that $\left| x^{i} - \real_{\rect} \lp \pwr^{q,\ve}_i\rp \lp x\rp\right| \in \mathcal{O} \lp \ve^{2q\lp i-1\rp} \rp$, this, and the fact that $f+g \in \mathcal{O}\lp x^a \rp$ if $f \in \mathcal{O}\lp x^a\rp$, $g \in \mathcal{O}\lp x^b\rp$, and $a \ges b$, then implies that: + \begin{align} + \sum^n_{i=1} \left| c_i\right|\cdot\lp \left| x \lp x^{i-1} - \real_{\rect}\lp \pwr^{q,\ve}_{i-1}\rp\lp x\rp\rp\right| + \ve + |x|^q + \mathfrak{p}_{i-1}^q \rp \in \mathcal{O} \lp \ve^{2q(n-1)}\rp + \end{align} + This proves Item (iv). + + Note next in our construction $\aff_{0,1}$ will require tunneling whenever $i\in \N$ in $\pwr_{i}^{q,\ve}$. Lemma \ref{aff_effect_on_layer_architecture} and Corollary \ref{affcor} then tell us that: + \begin{align} + \wid_1 \lp \pnm_n^{q,\ve} \rp &= \wid_1 \lp \bigoplus^n_{i=0} \lb c_i \triangleright\lb \tun_{\max_i \left\{\dep \lp \pwr_i^{q,\ve} \rp\right\} +1 - \dep \lp \pwr^{q,\ve}_i\rp} \bullet \pwr_i^{q,\ve}\rb \rb\rp \nonumber\\ + &= \wid_1 \lp \bigoplus^n_{i=0}\pwr^{q,\ve}_i\rp \nonumber \\ + &\les \sum^n_{i=0}\wid_1 \lp \pwr^{q,\ve}_i\rp =2 + \frac{n}{2}\lp 24+24+2\lp n-1\rp\rp = 2+23n+n^2 \nonumber \\ + \end{align} + This proves Item (v). + + Finally note that from the definition of the $\pnm_{n,C}^{q,\ve}$, it is evident that $\wid_{\hid\lp \pwr_{0,C}^{q,\ve}\rp}\lp \pwr_{0,C}^{q,\ve}\rp = 1$ since $\pwr_{0,C}^{q,\ve} = \aff_{0,1}$. Other than this network, for all $i \in \N$, $\pwr_{i,C}^{q,\ve}$ end in the $\prd^{q,\ve}$ network, and the deepest of the $\pwr_i^{q,\ve}$ networks is $\pwr^{q,\ve}_n$ inside $\pnm_{n,C}^{q,\ve}$. All other $\pwr_i^{q,\ve}$ must end in tunnels. Whence in the second to last layer, Lemma \ref{prd_network} tells us that: + \begin{align} + \wid_{\hid\lp \pnm_{n,C}^{q,\ve}\rp} \les \begin{cases} + 1 &: n =0 \\ + 24+2n &:n \in \N + \end{cases} + \end{align} + This completes the proof of the Lemma. +\end{proof} +\subsection{$\xpn_n^{q,\ve}$, $\csn_n^{q,\ve}$, $\sne_n^{q,\ve}$, and Neural Network Approximations of $e^x$, $\cos(x)$, and $\sin(x)$.} +Once we have neural network polynomials, we may take the next leap to transcendental functions. Here, we will explore neural network approximations for three common transcendental functions: $e^x$, $\cos(x)$, and $\sin(x)$. + +\begin{lemma} + Let $\nu_1,\nu_2 \in \neu$, $f,g \in C \lp \R, \R \rp$, and $\ve_1,\ve_2 \in \lp 0 ,\infty \rp$ such that for all $x\in \R$ it holds that $\left| f(x) - \real_{\rect} \lp \nu_1 \rp \right| \les \ve_1 $ and $\left| g(x) - \real_{\rect} \lp \nu_2 \rp \right| \les \ve_2$. It is then the case for all $x \in \R$ that: + \begin{align}\label{6.2.14} + \left| \lb f+g \rb \lp x \rp - \real_{\rect} \lp \lb \nu_1 \oplus \nu_2 \rb \rp \lp x \rp\right| \les \ve_1 + \ve_2 + \end{align} +\end{lemma} +\begin{proof} + Note that the triangle inequality tells us: + \begin{align} + \left| \lb f+g \rb \lp x \rp - \real_{\rect} \lb \nu_1 \oplus \nu_2 \rb \lp x \rp \right| &= \left| f\lp x \rp +g\lp x \rp -\real_{\rect} \lp \nu_1\rp \lp x \rp -\real_{\rect} \lp \nu_2 \rp\lp x \rp \right|\nonumber \\ + &\les \left| f\lp x \rp -\real_{\rect}\lp \nu_1 \rp \lp x \rp \right| + \left| g\lp x \rp - \real_{\rect} \lp \nu_2 \rp \lp x \rp \right| \nonumber\\ + &\les \ve_1 + \ve_2 \nonumber + \end{align} +\end{proof} +\begin{lemma}\label{6.2.8} + Let $n\in \N$. Let $\nu_1,\nu_2,...,\nu_n \in \neu$, $\ve_1,\ve_2,...,\ve_n \in \lp 0,\infty \rp$ and $f_1,f_2,...,f_n \in C\lp \R, \R \rp$ such that for all $i \in \{1,2,...,n\}$, and for all $x\in \R$, it is the case that, $\left| f_i\lp x \rp - \real_{\rect} \lp \nu_i \rp\lp x \rp \right| \les \ve_i$. It is then the case for all $x\in \R$, that: + \begin{align} + \left| \sum^n_{i=1} f_i \lp x \rp -\bigoplus^n_{i=1} \lp \real_{\rect}\lp \nu_i \rp \rp \lp x\rp\right| \les \sum_{i=1}^n \ve_i + \end{align} +\end{lemma} +\begin{proof} + This is a consequence of a finite number of applications of (\ref{6.2.14}). +\end{proof} +\begin{definition}[R\textemdash 2023, $\xpn_n^{q,\ve}$ and the Neural Network Taylor Approximations for $e^x$ around $x=0$] + Let $\delta,\ve \in \lp 0,\infty \rp $, $q\in \lp 2,\infty \rp$ and $\delta = \ve \lp 2^{q-1} +1\rp^{-1}$, and let $\pwr_n^{q,\ve}$ be as in Lemma \ref{power_prop}. We define, for all $n\in \N_0$, the family of neural networks $\xpn_n^{q,\ve} as$: + \begin{align} + \xpn_n^{q,\ve}\coloneqq \bigoplus^n_{i=0} \lb \frac{1}{i!} \triangleright\lb \tun_{\max_i \left\{\dep \lp \pwr_i^{q,\ve} \rp\right\} +1 - \dep \lp \pwr^{q,\ve}_i\rp} \bullet \pwr_i^{q,\ve}\rb \rb + \end{align} +\end{definition} + +\begin{lemma}[R\textemdash,2023]\label{6.2.9}\label{tay_for_exp}\label{xpn_properties} + Let $\delta,\ve \in \lp 0,\infty \rp $, $q\in \lp 2,\infty \rp$ and $\delta = \ve \lp 2^{q-1} +1\rp^{-1}$. It is then the case for all $n\in\N_0$ and $x\in \R$ that: + \begin{enumerate}[label = (\roman*)] + \item $\real_{\rect} \lp \xpn_n^{q,\ve}\rp \lp x \rp\in C \lp \R, \R \rp $ + \item $\dep \lp \xpn_n^{q,\ve} \rp \les \begin{cases} + 1 & :n=0\\ + n\lb \frac{q}{q-2} \lb \log_2 \lp \ve^{-1} \rp +q\rb -1 \rb +1 &:n\in \N + \end{cases}$ + \item $\param \lp \xpn_n^{q,\ve} \rp \les \begin{cases} + 2 & :n =0 \\ + \lp n+1\rp\lb 4^{n+\frac{3}{2}} + \lp \frac{4^{n+1}-1}{3}\rp \lp \frac{360q}{q-2} \lb \log_2 \lp \ve^{-1} \rp +q+1 \rb +372\rp\rb &:n\in \N + \end{cases}$ \\~\\ + \item \begin{align*}\left|\sum^n_{i=0} \lb \frac{x^i}{i!} \rb- \real_{\rect} \lp \xpn_n^{q,\ve} \rp \lp x \rp \right| \les \sum^n_{i=1} \frac{1}{i!}\lp \left| x \lp x^{i-1} - \real_{\rect}\lp \pwr^{q,\ve}_{i-1}\rp\lp x\rp\rp\right| + \ve + |x|^q + \mathfrak{p}_{i-1}^q \rp \end{align*}\\~\\ + Where $\mathfrak{p}_i$ are the set of functions defined for $i \in \N$ as such: + \begin{align} + \mathfrak{p}_1 &= \ve+1+|x|^2 \nonumber\\ + \mathfrak{p}_i &= \ve +\lp \mathfrak{p}_{i-1} \rp^2+|x|^2 + \end{align} + Whence it is the case that: + \begin{align} + \left|\sum^n_{i=0} \lb \frac{x^i}{i!} \rb- \real_{\rect} \lp \xpn_n^{q,\ve} \rp \lp x \rp \right|\in \mathcal{O} \lp \ve^{2q(n-1)}\rp + \end{align} + \item $\wid_1 \lp \xpn_n^{q,\ve} \rp = 2+23n+n^2 $ + \item $\wid_{\hid \lp \xpn^n_{q,\ve} \rp}\lp \xpn_n^{q,\ve}\rp \les 24 + 2n$ + \end{enumerate} +\end{lemma} +\begin{proof} + This follows straightforwardly from Lemma \ref{nn_poly} with $c_i \curvearrowleft \frac{1}{i!}$ for all $n \in \N$ and $i \in \{0,1,\hdots, n\}$. In particular, Item (iv) benefits from the fact that for all $i \in \N_0$, it is the case that $\frac{1}{i!} \ges 0$. +\end{proof} + +\begin{lemma}[R\textemdash, 2023] + + Let $\delta,\ve \in \lp 0,\infty \rp $, $q\in \lp 2,\infty \rp$ and $\delta = \ve \lp 2^{q-1} +1\rp^{-1}.$ It is then the case for all $n\in\N_0$ and $x\in \lb a,b \rb\subsetneq \R$, where $0 \in \lb a,b\rb \subsetneq \R$ that: + \begin{align} + \left| e^x - \real_{\rect} \lp \xpn_n^{q,\ve} \rp \lp x \rp \right| \les \sum^n_{i=0} \frac{1}{i!}\lp \left| x \lp x^{n-1} - \real_{\rect}\lp \pwr^{q,\ve}_{n-1}\rp\lp x\rp\rp\right| + \ve + |x|^q + \mathfrak{p}_{n-1}^q \rp + \frac{e^{b}\cdot |x|^{n+1}}{(n+1)!} + \end{align} +\end{lemma} +\begin{proof} + Note that Taylor's theorem states that for $x \in \lb a,b\rb \subsetneq \R$ it is the case that: + \begin{align} + e^x = \sum^n_{i=0} \lb \frac{x^i}{i!} \rb + \frac{e^{\xi}\cdot x^{n+1}}{(n+1)!} + \end{align} + Where $\xi$ is between $0$ and $x$ in the Lagrange form of the remainder. Note then, for all $n\in \N_0$, $x\in \lb a,b \rb \subsetneq \R$, and $\xi$ between $0$ and $x$, it is the case, by monotonicity of $e^x$ that the second summand is bounded by: + \begin{align} + \frac{e^\xi \cdot x^{n+1}}{(n+1)!} \les \frac{e^b\cdot |x|^{n+1}}{(n+1)!} + \end{align} + This, and the triangle inequality, then indicates that for all $x \in \lb a,b \rb \subsetneq \R$, and $\xi$ between $0$ and $x$ that: + \begin{align} + \left| e^x -\real_{\rect} \lp \xpn_n^{q,\ve} \rp \lp x \rp \right| &=\left| \sum^n_{i=0} \lb \frac{x^i}{i!} \rb + \frac{e^{\xi}\cdot x^{n+1}}{(n+1)!}-\real_{\rect} \lp \xpn_n^{q,\ve} \rp \lp x \rp\right| \nonumber\\ + &\les \left| \sum^n_{i=0} \lb \frac{x^i}{i!} \rb - \real_{\rect} \lp \xpn_n^{q,\ve} \rp \lp x \rp \right| + \frac{e^{b}\cdot |x|^{n+1}}{(n+1)!} \nonumber \\ + &\les \sum^n_{i=1} \frac{1}{i!}\lp \left| x \lp x^{n-1} - \real_{\rect}\lp \pwr^{q,\ve}_{n-1}\rp\lp x\rp\rp\right| + \ve + |x|^q + \mathfrak{p}_{n-1}^q \rp + \frac{e^{b}\cdot |x|^{n+1}}{(n+1)!} \nonumber + \end{align} + Whence we have that for fixed $n\in \N_0$ and $b \in \lb 0, \infty\rp$, the last summand is constant, whence it is the case that: + \begin{align} + \left| e^x -\real_{\rect} \lp \xpn_n^{q,\ve} \rp \lp x \rp \right| \in \mathcal{O} \lp \ve^{2q(n-1)}\rp + \end{align} +\end{proof} +\begin{definition}[The $\mathsf{Csn}_n^{q,\ve}$ Networks, and Neural Network Cosines] + Let $\delta,\ve \in \lp 0,\infty \rp $, $q\in \lp 2,\infty \rp$ and $\delta = \ve \lp 2^{q-1} +1\rp^{-1}$. Let $\pwr^{q,\ve}_n$ be a neural networks as defined in Definition \ref{def:pwr}. We will define the neural networks $\mathsf{Csn}_{n}^{q,\ve}$ as: + \begin{align} + \mathsf{Csn}_n^{q,\ve} \coloneqq \bigoplus^n_{i=0} \lb \frac{(-1)^i}{2i!}\triangleright\lb \tun_{\max_i \left\{\dep \lp \pwr_i^{q,\ve} \rp\right\} +1 - \dep \lp \pwr^{q,\ve}_i\rp} \bullet \pwr_{2i}^{q,\ve}\rb \rb + \end{align} + +\end{definition} + +\begin{lemma}[R\textemdash, 2023]\label{6.2.9}\label{csn_properties} + Let $\delta,\ve \in \lp 0,\infty \rp $, $q\in \lp 2,\infty \rp$ and $\delta = \ve \lp 2^{q-1} +1\rp^{-1}$. It is then the case for all $n\in\N_0$ and $x\in \R$ that: + \begin{enumerate}[label = (\roman*)] + \item $\real_{\rect} \lp \csn_n^{q,\ve}\rp \lp x\rp\in C \lp \R, \R \rp $ + \item $\dep \lp \csn_n^{q,\ve}\rp \les \begin{cases} + 1 & :n=0\\ + 2n\lb \frac{q}{q-2} \lb \log_2 \lp \ve^{-1} \rp +q\rb -1 \rb +1 &:n\in \N + \end{cases}$ + \item $\param \lp \csn_n^{q,\ve} \rp \les \begin{cases} + 2 & :n =0 \\ + \lp 2n+1\rp\lb 4^{2n+\frac{3}{2}} + \lp \frac{4^{2n+1}-1}{3}\rp \lp \frac{360q}{q-2} \lb \log_2 \lp \ve^{-1} \rp +q+1 \rb +372\rp\rb &:n\in \N + \end{cases}$ \\~\\ + \item $\left|\sum^n_{i=0} \frac{(-1)^i}{2i!}x^{2i} - \real_{\rect} \lp \csn_n^{q,\ve} \rp \lp x \rp \right| \les \sum^n_{i=1} \left| \frac{\lp -1\rp^i}{2i!}\right|\lp \left| x \lp x^{2i-1} - \real_{\rect}\lp \pwr^{q,\ve}_{2i-1}\rp\lp x\rp\rp\right| + \ve + |x|^q + \mathfrak{p}_{2i-1}^q \rp $\\~\\ + Where $\mathfrak{p}_i$ are the set of functions defined for $i \in \N$ as such: + \begin{align} + \mathfrak{p}_1 &= \ve+1+|x|^2 \nonumber\\ + \mathfrak{p}_i &= \ve +\lp \mathfrak{p}_{i-1} \rp^2+|x|^2 + \end{align} + Whence it is the case that: + \begin{align} + \left|\sum^n_{i=0} \frac{\lp -1\rp^i}{2i!}x^{2i} - \real_{\rect} \lp \csn_n^{q,\ve} \rp \lp x \rp \right| \in \mathcal{O} \lp \ve^{2q(2n-1)}\rp + \end{align} + \end{enumerate} + +\end{lemma} + +\begin{proof} + Item (i) derives straightforwardly from Lemma \ref{nn_poly}. This proves Item (i). + + Next, observe that since $\csn_n^{q,\ve}$ will contain, as the deepest network in the summand, $\pwr_{2n}^{q,\ve}$, we may then conclude that + \begin{align} + \dep \lp \csn_n^{q,\ve} \rp &\les \dep \lp \pwr_{2n}^{q,\ve}\rp \nonumber\\ + &\les \begin{cases} + 1 & :n=0\\ + 2n\lb \frac{q}{q-2} \lb \log_2 \lp \ve^{-1} \rp +q\rb -1 \rb +1 &:n\in \N + \end{cases} \nonumber + \end{align} + This proves Item (ii). + + A similar argument to the above, Lemma \ref{aff_effect_on_layer_architecture}, and Corollary \ref{affcor} reveals that: + \begin{align} + \param\lp \csn_n^{q,\ve} \rp &= \param \lp \bigoplus^n_{i=0} \lb \frac{\lp -1\rp^i}{2i!} \triangleright\lb \tun_{\max_i \left\{\dep \lp \pwr_i^{q,\ve} \rp\right\} +1 - \dep \lp \pwr^{q,\ve}_i\rp} \bullet \pwr_i^{q,\ve}\rb \rb \rp\nonumber \\ + &\les \lp n+1 \rp \cdot \param \lp c_i \triangleright \lb \tun_1 \bullet \pwr_{2n}^{q,\ve} \rb\rp \nonumber\\ + &\les \lp n+1 \rp \cdot \param \lp \pwr_{2n}^{q,\ve} \rp \nonumber \\ + &\les \begin{cases} + 2 & :n =0 \\ + \lp n+1\rp\lb 4^{2n+\frac{3}{2}} + \lp \frac{4^{2n+1}-1}{3}\rp \lp \frac{360q}{q-2} \lb \log_2 \lp \ve^{-1} \rp +q+1 \rb +372\rp\rb &:n\in \N + \end{cases} \nonumber + \end{align} + This proves Item (iii). + + In a similar vein, we may argue from Lemma \ref{nn_poly} and from the absolute homogeneity property of norms that: + \begin{align} + &\left|\sum^n_{i=0} \frac{\lp -1\rp^i}{2i!}x^{2i} - \real_{\rect} \lp \csn_n^{q,\ve} \lp x\rp \rp \right| \nonumber\\ + &= \left| \sum^n_{i=0} \frac{\lp -1\rp^i}{2i!}x^{2i} - \real_{\rect} \lb \bigoplus^n_{i=0} \lb \frac{\lp -1\rp^i}{2i!} \triangleright \tun_{\max_{2i} \left\{\dep \lp \pwr_{2i}^{q,\ve} \rp\right\} +1 - \dep \lp \pwr^{q,\ve}_{2i}\rp} \bullet \pwr_{2i}^{q,\ve} \rb \rb\lp x \rp\right| \nonumber \\ + &=\left| \sum^n_{i=1} \frac{\lp -1\rp^i}{2i!}x^{2i}-\sum_{i=0}^n \frac{\lp -1 \rp^i}{2i!} \lp \inst_{\rect}\lb \tun_{\max_{2i} \left\{\dep \lp \pwr_{2i}^{q,\ve} \rp\right\} +1 - \dep \lp \pwr^{q,\ve}_{2i}\rp} \bullet \pwr_{2i}^{q,\ve}\rb\lp x\rp\rp\right| \nonumber\\ + &\les \sum_{i=1}^n \left|\frac{\lp -1\rp^i}{2i!} \right|\cdot\left| x^{2i} - \inst_{\rect}\lb \tun_{\max_{2i} \left\{\dep \lp \pwr_{2i}^{q,\ve} \rp\right\} +1 - \dep \lp \pwr^{q,\ve}_{2i}\rp} \bullet \pwr_{2i}^{q,\ve}\rb\lp x\rp\right| \nonumber\\ + &\les \sum^n_{i=1} \left|\frac{\lp -1\rp^i}{2i!}\right|\cdot \left|\lp \left| x \lp x^{2i-1} - \real_{\rect}\lp \pwr^{q,\ve}_{2i-1}\rp\lp x\rp\rp\right| + \ve + |x|^q + \mathfrak{p}_{2i-1}^q \rp\right| \nonumber + \end{align} + Whence we have that: + \begin{align} + \left|\sum^n_{i=0} \lb \frac{\lp -1\rp^i x^{2i}}{2i!} \rb- \real_{\rect} \lp \csn_n^{q,\ve} \rp \lp x \rp \right|\in \mathcal{O} \lp \ve^{2q(2n-1)}\rp + \end{align} + This proves Item (iv). +\end{proof} + +\begin{lemma}[R\textemdash, 2023] + Let $\delta,\ve \in \lp 0,\infty \rp $, $q\in \lp 2,\infty \rp$ and $\delta = \ve \lp 2^{q-1} +1\rp^{-1}.$ It is then the case for all $n\in\N_0$ and $x\in [a,b]\subseteq \lb 0,\infty \rp$ that: + \begin{align} + \left| \cos\lp x\rp - \real_{\rect} \lp \csn_n^{q,\ve} \rp \lp x \rp \right| \les \sum^n_{i=0} \frac{\lp -1\rp^i}{2i!}\lp \left| x \lp x^{n-1} - \real_{\rect}\lp \pwr^{q,\ve}_{n-1}\rp\lp x\rp\rp\right| + \ve + |x|^q + \mathfrak{p}_{n-1}^q \rp + + \frac{|x|^{n+1}}{(n+1)!}\nonumber + \end{align} +\end{lemma} + +\begin{proof} + Note that Taylor's theorem states that for all $x \in \lb a,b\rb \subsetneq \R$, where $0 \in \lb a,b\rb$, it is the case that: + \begin{align} + \cos\lp x \rp= \sum^n_{i=0} \frac{\lp -1\rp^i}{2i!}x^i + \frac{\cos^{\lp n+1\rp}\lp \xi \rp \cdot x^{n+1}}{(n+1)!} + \end{align} + Note further that for all $n \in \N_0$, and $x \in \R$, it is the case that $\cos^{\lp n \rp} \lp x\rp \les 1$. Whence we may conclude that for all $n\in \N_0$, $x\in \lb a,b \rb \subseteq \R$, where $0 \in \lb a,b\rb$ and $\xi$ between $0$ and $x$, we may bound the second summand by: + \begin{align} + \frac{\cos^{\lp n+1\rp}\lp \xi \rp \cdot x^{n+1}}{(n+1)!} \les \frac{|x|^{n+1}}{\lp n+1\rp!} + \end{align} + This, and the triangle inequality, then indicates that for all $x \in \lb a,b \rb \subsetneq \lb 0,\infty\rp$ and $\xi \in \lb 0,x\rb$: + \begin{align} + \left| \cos \lp x \rp -\real_{\rect} \lp \csn_n^{q,\ve} \rp \lp x \rp \right| &=\left| \sum^n_{i=0} \frac{\lp -1\rp^i}{2i!}x^i + \frac{\cos^{(n+1)}\lp \xi \rp \cdot x^{n+1}}{(n+1)!}-\real_{\rect} \lp \csn_n^{q,\ve} \rp \lp x \rp\right| \nonumber\\ + &\les \left| \sum^n_{i=0} \frac{\lp -1\rp^i}{2i!}x^i - \real_{\rect} \lp \csn_n^{q,\ve} \rp \lp x \rp \right| + \frac{|x|^{n+1}}{(n+1)!} \nonumber \\ + &\les \sum^n_{i=1} \left|\frac{\lp -1\rp^i}{2i!}\right|\cdot \left|\lp \left| x \lp x^{2i-1} - \real_{\rect}\lp \pwr^{q,\ve}_{2i-1}\rp\lp x\rp\rp\right| + \ve + |x|^q + \mathfrak{p}_{2i-1}^q \rp\right| \nonumber\\&+ \frac{|x|^{n+1}}{(n+1)!} \nonumber + \end{align} + This completes the proof of the Lemma. +\end{proof} + +\begin{definition}[R\textemdash, 2023, The $\mathsf{Sne}_n^{q,\ve}$ Newtorks and Neural Network Sines.]. + Let $\delta,\ve \in \lp 0,\infty \rp $, $q\in \lp 2,\infty \rp$ and $\delta = \ve \lp 2^{q-1} +1\rp^{-1}$. Let $\pwr^{q,\ve}$ be a neural network defined in Definition \ref{def:pwr}. We will define the neural network $\mathsf{Csn}_{n,q,\ve}$ as: + \begin{align} + \mathsf{Sne}_n^{q,\ve} \coloneqq \csn^{q,\ve} \bullet \aff_{1, -\frac{\pi}{2}} + \end{align} +\end{definition} + +\begin{lemma}[R\textemdash, 2023]\label{6.2.9}\label{sne_properties} + Let $\delta,\ve \in \lp 0,\infty \rp $, $q\in \lp 2,\infty \rp$ and $\delta = \ve \lp 2^{q-1} +1\rp^{-1}$. It is then the case for all $n\in\N_0$ and $x\in \R$ that: + \begin{enumerate}[label = (\roman*)] + \item $\real_{\rect} \lp \sne_n^{q,\ve}\rp \in C \lp \R, \R \rp $ + \item $\dep \lp \sne_n^{q,\ve}\rp \les \begin{cases} + 1 & :n=0\\ + 2n\lb \frac{q}{q-2} \lb \log_2 \lp \ve^{-1} \rp +q\rb -1 \rb +1 &:n\in \N + \end{cases}$ + \item $\param \lp \sne_n^{q,\ve} \rp \les \begin{cases} + 2 & :n =0 \\ + \lp 2n+1\rp\lb 4^{2n+\frac{3}{2}} + \lp \frac{4^{2n+1}-1}{3}\rp \lp \frac{360q}{q-2} \lb \log_2 \lp \ve^{-1} \rp +q+1 \rb +372\rp\rb &:n\in \N + \end{cases}$ \\~\\ + \item \begin{align}&\left|\sum^n_{i=0} \frac{(-1)^i}{2i!}{\lp x-\frac{\pi}{2}\rp}^{2i} - \real_{\rect} \lp \sne_n^{q,\ve} \rp \lp x \rp \right| \nonumber\\ + &= \left|\sum^n_{i=0} \frac{(-1)^i}{2i!}{\lp x-\frac{\pi}{2}\rp}^{2i} - \real_{\rect} \lp \csn_n^{q,\ve} \bullet \aff_{1,-\frac{\pi}{2}}\rp \lp x \rp \right|\nonumber\\ + &\les \sum^n_{i=1} \left| \frac{\lp -1\rp^i}{2i!}\right|\lp \left| \lp x -\frac{\pi}{2}\rp\lp \lp x -\frac{\pi}{2}\rp^{2i-1} - \real_{\rect}\lp \pwr^{q,\ve}_{i-1}\rp\lp x-\frac{\pi}{2}\rp\rp\right| + \ve + |x|^q + \mathfrak{p}_{i-1}^q \rp \nonumber \end{align}\\~\\ + Where $\mathfrak{p}_i$ are the set of functions defined for $i \in \N$ as such: + \begin{align} + \mathfrak{p}_1 &= \ve+1+|x|^2 \nonumber\\ + \mathfrak{p}_i &= \ve +\lp \mathfrak{p}_{i-1} \rp^2+|x|^2 + \end{align} + Whence it is the case that: + \begin{align} + \left|\sum^n_{i=0} \frac{\lp -1\rp^i}{2i!}\lp x-\frac{\pi}{2}\rp^{2i} - \real_{\rect} \lp \sne_n^{q,\ve} \rp \lp x \rp \right| \in \mathcal{O} \lp \ve^{2q(2n-1)}\rp + \end{align} + \end{enumerate} +\end{lemma} +\begin{proof} + This follows straightforwardly from Lemma \ref{csn_properties}, and the fact that by Corollary \ref{affcor}, there is not a change to the parameter count, by Lemma \ref{comp_cont}, there is no change in depth, by Lemma \ref{aff_prop}, and Lemma \ref{csn_properties}, continuity is preserved, and the fact that $\aff_{1,-\frac{\pi}{2}}$ is exact and hence contributes nothing to the error, and finally by the fact that $\aff_{1,-\frac{\pi}{2}} \rightarrow \lp \cdot\rp -\frac{\pi}{2}$ under instantiation, assures us that the $\sne^{q,\ve}_n$ has the same error bounds as $\csn_n^{q,\ve}$. +\end{proof} + +\begin{lemma}[R\textemdash, 2023] + Let $\delta,\ve \in \lp 0,\infty \rp $, $q\in \lp 2,\infty \rp$ and $\delta = \ve \lp 2^{q-1} +1\rp^{-1}.$ It is then the case for all $n\in\N_0$ and $x\in [a,b]\subseteq \lb 0,\infty \rp$ that: + \begin{align} + &\left| \sin\lp x\rp - \real_{\rect} \lp \sne_n^{q,\ve} \rp \lp x \rp \right|\nonumber \\ + &\les \sum^n_{i=1} \left| \frac{\lp -1\rp^i}{2i!}\right|\lp \left| \lp x -\frac{\pi}{2}\rp\lp \lp x -\frac{\pi}{2}\rp^{2i-1} - \real_{\rect}\lp \pwr^{q,\ve}_{i-1}\rp\lp x-\frac{\pi}{2}\rp\rp\right| + \ve + |x|^q + \mathfrak{p}_{i-1}^q \rp \nonumber\\ + &+\frac{|x|^{n+1}}{(n+1)!}\label{sin_diff} + \end{align} +\end{lemma} +\begin{proof} + Note that the fact that $\sin\lp x\rp = \cos\lp x-\frac{\pi}{2}\rp$, Lemma \ref{comp_prop}, and Lemma \ref{aff_prop} then renders (\ref{sin_diff}) as: + \begin{align} + &\left| \sin\lp x\rp - \inst_{\rect}\lp \sne_n^{q,\ve}\rp\right| \nonumber\\ + &= \left| \cos \lp x - \frac{\pi}{2}\rp - \inst_{\rect}\lp \csn_n^{q,\ve}\bullet \aff_{1,-\frac{\pi}{2}}\rp\lp x\rp\right| \nonumber\\ + &=\left| \cos \lp x-\frac{x}{2}\rp - \inst_{\rect}\csn_n^{q,\ve}\lp x-\frac{\pi}{2} \rp\right| \nonumber \\ + &\les \sum^n_{i=1} \left| \frac{\lp -1\rp^i}{2i!}\right|\lp \left| \lp x -\frac{\pi}{2}\rp\lp \lp x -\frac{\pi}{2}\rp^{2i-1} - \real_{\rect}\lp \pwr^{q,\ve}_{i-1}\rp\lp x-\frac{\pi}{2}\rp\rp\right| + \ve + |x|^q + \mathfrak{p}_{i-1}^q \rp+ \frac{|x|^{n+1}}{(n+1)!}\nonumber + \end{align} +\end{proof} + +\begin{remark} + Note that under these neural network architectures the famous Pythagorean identity $\sin^2\lp x\rp + \cos^2 \lp x\rp = 1$, may be rendered approximately, for fixed $n,q,\ve$ as: $\lb \sqr^{q,\ve}\bullet \csn^{q,\ve}_n \rb \oplus\lb \sqr^{q,\ve}\bullet \sne^{q,\ve}_n\rb$. A full discussion of the associated parameter, depth, and accuracy bounds are beyond the scope of this dissertation, and may be appropriate for future work. +\end{remark} + + + + + + diff --git a/Dissertation_unzipped/ann_rep_brownian_motion_monte_carlo.aux b/Dissertation_unzipped/ann_rep_brownian_motion_monte_carlo.aux new file mode 100644 index 0000000..0dbf6ef --- /dev/null +++ b/Dissertation_unzipped/ann_rep_brownian_motion_monte_carlo.aux @@ -0,0 +1,68 @@ +\relax +\providecommand\hyper@newdestlabel[2]{} +\@writefile{toc}{\contentsline {chapter}{\numberline {10}ANN representations of Brownian Motion Monte Carlo}{170}{chapter.10}\protected@file@percent } +\@writefile{lof}{\addvspace {10\p@ }} +\@writefile{lot}{\addvspace {10\p@ }} +\newlabel{8.0.6}{{10.0.6}{171}{ANN representations of Brownian Motion Monte Carlo}{equation.10.0.6}{}} +\newlabel{8.0.6@cref}{{[equation][6][10,0]10.0.6}{[1][171][]171}} +\newlabel{8.0.7}{{10.0.7}{171}{ANN representations of Brownian Motion Monte Carlo}{equation.10.0.7}{}} +\newlabel{8.0.7@cref}{{[equation][7][10,0]10.0.7}{[1][171][]171}} +\citation{grohs2019spacetime} +\citation{hutzenthaler_strong_2021} +\citation{hutzenthaler_strong_2021} +\citation{grohs2019spacetime} +\citation{grohs2019spacetime} +\citation{grohs2019spacetime} +\citation{grohs2019spacetime} +\citation{grohs2019spacetime} +\newlabel{(10.0.13)}{{10.0.13}{175}{ANN representations of Brownian Motion Monte Carlo}{equation.10.0.13}{}} +\newlabel{(10.0.13)@cref}{{[equation][13][10,0]10.0.13}{[1][175][]175}} +\newlabel{(10.0.12)}{{10.0.15}{176}{ANN representations of Brownian Motion Monte Carlo}{equation.10.0.15}{}} +\newlabel{(10.0.12)@cref}{{[equation][15][10,0]10.0.15}{[1][175][]176}} +\@setckpt{ann_rep_brownian_motion_monte_carlo}{ +\setcounter{page}{178} +\setcounter{equation}{18} +\setcounter{enumi}{5} +\setcounter{enumii}{0} +\setcounter{enumiii}{0} +\setcounter{enumiv}{0} +\setcounter{footnote}{0} +\setcounter{mpfootnote}{0} +\setcounter{part}{3} +\setcounter{chapter}{10} +\setcounter{section}{0} +\setcounter{subsection}{0} +\setcounter{subsubsection}{0} +\setcounter{paragraph}{0} +\setcounter{subparagraph}{0} +\setcounter{figure}{0} +\setcounter{table}{0} +\setcounter{@pps}{0} +\setcounter{@ppsavesec}{0} +\setcounter{@ppsaveapp}{0} +\setcounter{AM@survey}{0} +\setcounter{parentequation}{0} +\setcounter{section@level}{2} +\setcounter{Item}{259} +\setcounter{Hfootnote}{1} +\setcounter{bookmark@seq@number}{57} +\setcounter{NAT@ctr}{0} +\setcounter{ALG@line}{0} +\setcounter{ALG@rem}{0} +\setcounter{ALG@nested}{0} +\setcounter{ALG@Lnr}{1} +\setcounter{ALG@blocknr}{1} +\setcounter{ALG@storecount}{0} +\setcounter{ALG@tmpcounter}{0} +\setcounter{lstnumber}{1} +\setcounter{theorem}{2} +\setcounter{corollary}{0} +\setcounter{lstlisting}{0} +\setcounter{nn@layerindex@counter}{6} +\setcounter{nn@lastlayerstart@counter}{0} +\setcounter{nn@thislayerstart@counter}{1} +\setcounter{nn@lastlayercount@counter}{4} +\setcounter{nn@thislayercount@counter}{2} +\setcounter{nn@lastlayerindex@counter}{4} +\setcounter{nn@thislayerindex@counter}{5} +} diff --git a/Dissertation_unzipped/ann_rep_brownian_motion_monte_carlo.pdf b/Dissertation_unzipped/ann_rep_brownian_motion_monte_carlo.pdf new file mode 100644 index 0000000..72f695e Binary files /dev/null and b/Dissertation_unzipped/ann_rep_brownian_motion_monte_carlo.pdf differ diff --git a/Dissertation_unzipped/ann_rep_brownian_motion_monte_carlo.tex b/Dissertation_unzipped/ann_rep_brownian_motion_monte_carlo.tex new file mode 100644 index 0000000..c82f374 --- /dev/null +++ b/Dissertation_unzipped/ann_rep_brownian_motion_monte_carlo.tex @@ -0,0 +1,1050 @@ +\chapter{ANN representations of Brownian Motion Monte Carlo} +\textbf{This is tentative without any reference to $f$.} + +\begin{lemma}[R--,2023] + Let $d,M \in \N$, $T \in (0,\infty)$ , $\act \in C(\R,\R)$, $ \Gamma \in \neu$, satisfy that $\real_{\act} \lp \mathsf{G}_d \rp \in C \lp \R^d, \R \rp$, for every $\theta \in \Theta$, let $\mathcal{U}^\theta: [0,T] \rightarrow [0,T]$ and $\mathcal{W}^\theta:[0,T] \rightarrow \R^d$ be functions , for every $\theta \in \Theta$, let $U^\theta: [0,T] \rightarrow \R^d \rightarrow \R$ satisfy satisfy for all $t \in [0,T]$, $x \in \R^d$ that: + \begin{align} + U^\theta(t,x) = \frac{1}{M} \lb \sum^M_{k=1} \lp \real_{\act} \lp \Gamma \rp \rp \lp x+ \mathcal{W}^{\lp \theta,0,-k \rp } \rp \rb + \end{align} + Let $\mathsf{U}^\theta_t \in \neu$ , $\theta \in \Theta$ satisfy for all $\theta \in \Theta$, $t \in [0,T]$ that: + \begin{align} + \mathsf{U}^\theta_t = \lb \bigoplus^M_{k=1} \lp \frac{1}{M} \triangleright \lp \mathsf{G}_d \bullet \aff_{\mathbb{I}_d, \mathcal{W}^{\lp \theta,0,-k \rp}_{T-t}} \rp \rp \rb + \end{align} + It is then the case that: + \begin{enumerate}[label = (\roman*)] + \item for all $\theta_1,\theta_2 \in \Theta$, $t_1,t_2 \in [0,T]$ that $\lay \lp \mathsf{U}^{\theta_1}_{t_1} \rp = \lay \lp \mathsf{U}^{\theta_2}_{t_2} \rp$. + \item for all $\theta \in \Theta$, $t \in [0,T]$, that $\dep \lp \mathsf{U}^\theta_t \rp \les \dep (\mathsf{G}_d)$ + \item for all $\theta \in \Theta$, $t \in [0,T]$ that: + \begin{align} + \left\| \lay\lp \mathsf{U}^\theta_t \rp \right\|_{\max} \les \|\lay \lp \mathsf{G}_d \rp \|_{\max} \lp 1+ \sqrt{2} \rp M + \end{align} + \item for all $\theta \in \Theta$, $t \in [0,T]$, $x \in \R^d$ that $U^\theta (t,x) = \lp \real_{\act} \lp \mathbf{U}^\theta_t \rp \rp \lp x \rp $ and + \item for all $\theta \in \Theta$, $t \in [0,T]$ that: + \begin{align} + \param \lp \mathsf{U}^\theta_t \rp \les 2 \dep \lp \mathsf{G}_d \rp \lb \lp 1+\sqrt{2} \rp M \left\| \lay \lp \mathsf{G}_d \rp \right\|_{\max}\rb^2 + \end{align} + \end{enumerate} +\end{lemma} + +\begin{proof} + Throughout the proof let $\mathsf{P}^\theta_t \in \neu$, $\theta \in \Theta$, $t \in [0,T]$ satisfy for all $\theta \in \Theta$, $t \in [0,T]$ that: + \begin{align} + \mathsf{P}^\theta_t = \bigoplus^M_{k=1} \lb \frac{1}{M} \triangleright \lp \mathsf{G}_d \bullet \aff_{\mathbb{I}_d, \mathcal{W}^{\theta,0,-k}_{T-t}} \rp \rb + \end{align} +Note the hypothesis that for all $\theta \in \Theta$, $t \in [0,T]$ it holds that $\mathcal{W}^\theta_t \in \R^d$ and Lemma \ref{5.6.5} applied for every $\theta \in \Theta$ $t \in [0,T]$ with $v \curvearrowleft M$, $ c_{i \in \{u,u+1,...,v\}} \curvearrowleft \lp \frac{1}{M} \rp_{i \in \{u,u+1,...,v\}}$, $\lp B_i \rp _{i \in \{u,u+1,...,v\}} \curvearrowleft \lp \mathcal{W}^{\lp \theta, 0 , -k \rp }_{T-t} \rp_{k \in \{1,2,...,M\}}$, $\lp \nu_i \rp_{i \in \{u,u+1,...,v\}} \curvearrowleft \lp \mathsf{G}_d \rp _{i \in \{u,u+1,...,v\}}$, $\mu \curvearrowleft \Phi^\theta_t$ and with the notation of Lemma \ref{5.6.5} tells us that for all $\theta \in \Theta$, $t \in [0,T]$, and $x \in \R^d$ it holds that: La lala +\begin{align}\label{8.0.6} + \lay \lp \mathsf{P}^\theta_t \rp = \lp d, M \wid_1 \lp \G \rp, M\wid_2 \lp \G \rp,...,M\wid_{\dep\lp \G \rp -1}\lp \G \rp ,1\rp = \lay \lp \sP^0_0 \rp \in \N^{\dep \lp \G \rp +1} +\end{align} +and that: +\begin{align}\label{8.0.7} + \lp \real_{\act} \lp \sP^\theta_t \rp \rp \lp x \rp &= \frac{1}{M} \lb \sum^M_{k=1} \lp \real_{\act} \lp \G \rp \rp \lp x + \mathcal{W}^{\lp \theta,0,-k \rp}_{T-t} \rp \rb \nonumber \\ + &= \U^\theta \lp t,x \rp +\end{align} +This proves Item (i). + +Note that (\ref{8.0.6}), and (\ref{8.0.7}) also implies that: +\begin{align} + \lay \lp \U^\theta_t \rp &= \lay \lp \sP^\theta_t \rp \nonumber \\ + &= \lp d, \wid_1 \lp \sP^\theta_t \rp, \wid_2 \lp \sP ^\theta_t \rp,..., \wid_{\dep \lp \G \rp } \lp \sP^\theta_t \rp,t \rp \nonumber\\ + &= \lay \lp \U^0_0 \rp \in \N^{\dep \lp \G \rp +1} +\end{align} +This indicates that for all $\theta \in \Theta$, $t \in [0,T]$ it is the case that: +\begin{align} + \left\| \lay \lp \U^\theta_t \rp \right\|_{\infty} &= \left\| \lay \lp \U^0_0 \rp \right\|_{\infty} \nonumber\\ + &= \max_{k \in \{1,2,...,\dep(\G)\}} \lp \wid_k \lp \sP^0_0 \rp \rp \nonumber +\end{align} +This, (\ref{8.0.6}), and Lemma \ref{comp_prop} ensure that for all $\theta \in \Theta$, $t \in [0,T]$ it is the case that: +\begin{align} + \left\| \lay \lp \U^\theta_t \rp \right\|_{\infty} &= \left\| \lay \lp \U^0_0 \rp \right\|_{\infty} \les \left\| \lay \lp \sP^0_0 \rp \right\|_{\infty} \les M \left\| \lay \lp \G \rp \right\|_{\infty} \nonumber\\ + &\les M\left\| \lay \lp \G \rp \right\|_{\infty} + M \lb \left\| \lay \lp \U^0_0 \rp \right\|_{\infty} \rb +\end{align} +Then \cite[Corollary~4.3]{hutzenthaler_strong_2021}, with $\gamma \curvearrowleft 0$, $\beta \curvearrowleft M$, $k \curvearrowleft 1$, $\alpha_0 \curvearrowleft \left\| \lay \lp \G \rp \right\|_{\infty}$, $\alpha_1 \curvearrowleft 0$, $\lp x_i \rp_{i \in \{0,1,...,k\}} \curvearrowleft \lp \left\| \lay \lp \U^0_0 \rp \right\|_{\infty} \rp _{i \in \{0,1,...,n\}} $ in the notation of \cite[Corollary~4.3]{hutzenthaler_strong_2021} yields for all $\theta \in \Theta$, $t \in [0,T]$ that: +\begin{align} + \left\| \lay \lp \U^\theta_t \rp \right\|_{\infty} &\les \frac{1}{2} \lp \left\| \lay \lp \G \rp \right\|_{\infty} \rp \lp 1+\sqrt{2} \rp M \nonumber \\ + &\les \lp \left\|\lay \lp \G \rp \right\|_{\infty} \rp \lp 1+\sqrt{2} \rp M \nonumber +\end{align} +Note that Lemma \ref{comp_prop}, Item (iii), proves that for all $\theta \in \Theta$, $t\in [0,T]$ it is the case that: +\begin{align} + \dep \lp \U^\theta_t \rp = \dep \lp \U^0_0 \rp = \dep \lp \G \rp +\end{align} + +This proves Items (ii)--(iii) and (\ref{8.0.7}) proves Item (iv). + +Items (ii)--(iii) together shows that for all $\theta \in \Theta$, $t \in [0,T]$ it is the case that: +\begin{align} + \param \lp \U^\theta_t \rp &\les \sum _{k=1}^{\dep \lp \U^\theta_t \rp } \left\|\lay \lp \U^\theta_t \rp \right\|_{\max} \nonumber\\ + &=\dep \lp \U^\theta_t \rp \left\| \lay \lp \U^\theta_t \rp \right\|_{\infty} \nonumber \\ + &\les \dep \lp \U^\theta_t \rp \lp \left\| \lay \lp \G \rp \right\|_{\infty} \rp \lp 1+\sqrt{2} \rp M \nonumber\\ + &= \dep \lp \G \rp \lp \left\| \lay \lp \G \rp \right\|_{\infty} \rp \lp 1+\sqrt{2}\rp M \nonumber +\end{align} +This proves Item (v) and hence the whole lemma. +\end{proof} +\section{The $\mathsf{E}^{N,h,q,\ve}_n$ Neural Network} +\begin{lemma}[R\textemdash, 2023]\label{mathsfE} + Let $n, N\in \N$ and $h \in \lp 0,\infty\rp$. Let $\delta,\ve \in \lp 0,\infty \rp $, $q\in \lp 2,\infty \rp$, satisfy that $\delta = \ve \lp 2^{q-1} +1\rp^{-1}$. Let $a\in \lp -\infty,\infty \rp$, $b \in \lb a, \infty \rp$. Let $f:[a,b] \rightarrow \R$ be continuous and have second derivatives almost everywhere in $\lb a,b \rb$. Let $a=x_0 \les x_1\les \cdots \les x_{N-1} \les x_N=b$ such that for all $i \in \{0,1,...,N\}$ it is the case that $h = \frac{b-a}{N}$, and $x_i = x_0+i\cdot h$ . Let $x = \lb x_0 \: x_1\: \cdots x_N \rb$ and as such let $f\lp\lb x \rb_{*,*} \rp = \lb f(x_0) \: f(x_1)\: \cdots \: f(x_N) \rb$. Let $\mathsf{E}^{N,h,q,\ve}_{n} \in \neu$ be the neural network given by: + \begin{align} + \mathsf{E}^{N,h,q,\ve}_n = \xpn_n^{q,\ve} \bullet \etr^{N,h} + \end{align} + It is then the case that: + \begin{enumerate}[label = (\roman*)] + \item for all $x \in \R^{N+1}$ we have that $\lp \real_{\rect}\lp \mathsf{E}^{N,h,q,\ve}_n \rp\rp\lp x\rp \in C \lp \R^{N+1},\R\rp$ + \item $\dep\lp \mathsf{E}^{N,h,q,\ve}_n \rp \les \begin{cases} + 1 & :n=0\\ + n\lb \frac{q}{q-2} \lb \log_2 \lp \ve^{-1} \rp +q\rb -1 \rb +1 &:n\ges 1 + \end{cases} $ + \item \begin{align*}&\param \lp \mathsf{E}^{N,h,q,\ve}_{n}\rp \\&\les \begin{cases} + N+2 & :n =0 \\ + \lp \frac{1}{2}N+1 \rp\lp n+1\rp\lb 4^{n+\frac{3}{2}} + \lp \frac{4^{n+1}-1}{3}\rp \lp \frac{360q}{q-2} \lb \log_2 \lp \ve^{-1} \rp +q+1 \rb +372\rp\rb &:n\in \N + \end{cases} \end{align*} + \item for all $x = \{x_0,x_1,\hdots, x_N \}\in \R^{N+1}$, where $a=x_0 \les x_1\les \cdots \les x_{N-1} \les x_N=b$ we have that: + \begin{align} + &\left| \exp \lb \int^b_afdx\rb - \real_{\rect} \lp \mathsf{E}^{N,h,q,\ve}_{n}\rp\lp f \lp \lb x \rb _{*,*}\rp\rp\right| \nonumber\\ + &\les \frac{\lp b-a\rp^3}{12N^2}f''\lp \xi \rp \cdot n^2 \cdot \lb \Xi + \frac{\lp b-a\rp^3}{12N^2} f''\lp \xi\rp\rb^{n-1} + \nonumber \\ + &\sum^n_{i=1} \frac{1}{i!}\lp \left| \Xi \lp \Xi^{i-1} - \real_{\rect}\lp \pwr^{q,\ve}_{i-1}\rp\lp \Xi\rp\rp\right| + \ve + |\Xi|^q + \mathfrak{p}_{i-1}^q \rp + \end{align} + \item it is the case that $\wid_{\hid \lp \mathsf{E}^{N,h,q,\ve}_{n}\rp} \lp \mathsf{E}^{N,h,q,\ve}_{n}\rp \les 24+2n $ + \end{enumerate} +\end{lemma} +\begin{proof} + Note that Lemma \ref{etr_prop} tells us that $ \inst_{\rect}\lp \etr^{N,h}\rp \in C\lp \R^{N+1},\R\rp$, and Lemma \ref{xpn_properties} tells us that $\inst_{\rect}\lp \xpn^{q,\ve}_n\rp \lp x\rp \in C \lp \R, \R \rp$. Next, note that Lemma \ref{comp_prop} and the fact that the composition of continuous functions is continuous yields that: + \begin{align} + \real_{\rect} \lp \mathsf{E}^{N,h,q,\ve}_n\rp &= \real_{\rect} \lp \xpn_n^{q,\ve} \bullet \aff_{\lb \frac{h}{2} \: h \:\hdots \:h \: \frac{h}{2}\rb,0}\rp \nonumber \\ + &= \real_{\rect} \lp \xpn_n^{q,\ve} \rp \circ \real_{\rect} \lp \aff_{\lb \frac{h}{2} \: h \:\hdots \:h \: \frac{h}{2}\rb,0} \rp \in C \lp \R^{N+1},\R \rp\nonumber + \end{align} + Since both component neural networks are continuous, and the composition of continuous functions is continuous, so is $\mathsf{E}^{N,h,q,\ve}_n$. This proves Item (i). + + Next note that $\dep \lp \aff_{\lb \frac{h}{2} \: h \:\hdots \:h \: \frac{h}{2}\rb} \rp = 1$, and thus Lemma \ref{comp_prop} and Lemma \ref{xpn_properties} tells us that: + \begin{align} + \dep \lp \mathsf{E}^{N,h,q,\ve}_n\rp &= \dep \lp \xpn^{q,\ve}_{n} \bullet \aff_{\lb \frac{h}{2} \: h \:\hdots \:h \: \frac{h}{2}\rb,0}\rp \nonumber \\ + &= \nonumber \dep \lp \xpn^{q,\ve}_{n} \rp + \dep \lp \aff_{\lb \frac{h}{2} \: h \:\hdots \:h \: \frac{h}{2}\rb,0} \rp -1 \nonumber \\ + &=\dep \lp \xpn^{q,\ve}_{n}\rp \nonumber \\ + &\les \begin{cases} + 1 & :n=0\\ + n\lb \frac{q}{q-2} \lb \log_2 \lp \ve^{-1} \rp +q\rb -1 \rb +1 &:n\in \N + \end{cases} \nonumber + \end{align} + This proves Item (ii). + + Next note that by Corollary \ref{affcor}, Lemma \ref{xpn_properties}, Lemma \ref{etr_prop}, and the fact that $\inn\lp \etr^{N,h}\rp = N+1$, and $\inn \lp \xpn_n^{q,\ve}\rp = 1$, tells us that, for all $N \in \N$ it is the case that: + \begin{align} + &\param \lp \mathsf{E}^{N,h,q,\ve}_n\rp \nonumber\\ + &\les \lb \max \left\{1, \frac{\inn\lp \etr^{N,h}\rp+1}{\inn\lp \xpn_n^{q,\ve}\rp+1}\right\}\rb \cdot \param\lp \xpn_n^{q,\ve}\rp \nonumber\\ + &=\lp \frac{1}{2}N+1 \rp \cdot \param \lp \xpn_n^{q,\ve}\rp \nonumber \\ + &\les \begin{cases} + N+2 & :n =0 \\ + \lp \frac{1}{2}N+1 \rp\lp n+1\rp\lb 4^{n+\frac{3}{2}} + \lp \frac{4^{n+1}-1}{3}\rp \lp \frac{360q}{q-2} \lb \log_2 \lp \ve^{-1} \rp +q+1 \rb +372\rp\rb &:n\in \N + \end{cases}\nonumber + \end{align} + This proves Item (iii). + + Note next that: + \begin{align} + \aff_{\lb \frac{h}{2} \: h \:\hdots \:h \: \frac{h}{2}\rb,0} = \etr^{N,h} + \end{align} + Thus the well-known error term of the trapezoidal rule tells us that for $\lb a,b \rb \subsetneq \R$, and for $\xi \in \lb a,b \rb$ it is the case that: + \begin{align} + \left| \int^b_a f\lp x \rp dx - \lp \real_{\rect}\lp \etr^{N,h} \rp\rp \lp f\lp \lb x \rb_{*,*}\rp\rp \right| \les \frac{ \lp b-a\rp^3}{12N^2} f''\lp \xi \rp + \end{align} + and for $n\in \N_0$, $\delta,\ve \in \lp 0,\infty \rp $, $q\in \lp 2,\infty \rp$ and $\delta = \ve \lp 2^{q-1} +1\rp^{-1}$, and for $x \in \lb \mathfrak{a},\mathfrak{b}\rb \subsetneq \R$, with $0 \in \lb \mathfrak{a},\mathfrak{b}\rb$ it is the case, according to Lemma \ref{mathsfE}, that: + \begin{align} + \left| e^x - \real_{\rect} \lp \xpn_n^{q,\ve} \rp \lp x \rp \right| &\les \sum^n_{i=1} \frac{1}{i!}\lp \left| x \lp x^{n-1} - \real_{\rect}\lp \pwr^{q,\ve}_{n-1}\rp\lp x\rp\rp\right| + \ve + |x|^q + \mathfrak{p}_{n-1}^q \rp + \frac{e^{\mathfrak{b}}\cdot |x|^{n+1}}{(n+1)!} + \end{align} + Note now that for $f \in C_{ae}\lp \R,\R\rp$, $\int^b_a f dx \in \lb \mathfrak{a},\mathfrak{b}\rb \subsetneq \R$, $0 \in \lb \mathfrak{a},\mathfrak{b}\rb$, and $\xi$ between $0$ and $\int^b_a f dx$ it is the case that: + \begin{align} + \exp \lb \int_a^b f dx\rb = \sum^n_{i=1}\lb \frac{1}{i!} \lp \int^b_afdx\rp^i\rb + \frac{e^{\xi}\cdot \left| \int^b_a f dx\right|^{n+1}}{(n+1)!} + \end{align} + And thus the triangle inequality, Lemma \ref{comp_prop}, and Lemma \ref{xpn_properties}, tells us that for $x = \{ x_0, x_1,\hdots, x_N\}$, $a = x_0\les x_1\les \cdots \les x_N=b$ and $\lb a,b\rb \subsetneq \R$ that: + \begin{align}\label{trian_ineq_exp_real_rect} + &\left| \exp \lb \int^b_afdx\rb - \real_{\rect} \lp \mathsf{E}^{N,h,q,\ve}_{n}\rp\lp f\lp \lb x\rb_{*,*} \rp\rp\right| \nonumber \\ + &= \left|\sum^n_{i=1}\lb \frac{1}{i!} \lp \int^b_afdx\rp^i\rb + \frac{e^{\xi}\cdot \lp \int^b_a f dx\rp^{n+1}}{(n+1)!} - \real_{\rect}\lp \xpn^{q,\ve}_{n} \bullet \etr^{N,h} \rp \lp f\lp \lb x \rb_{*,*}\rp\rp\right| \nonumber \\ + &\les \left|\sum^n_{i=1}\lb \frac{1}{i!} \lp \int^b_afdx\rp^i\rb - \real_{\rect}\lp \xpn^{q,\ve}_{n}\rp\lp x\rp \circ \real_{\rect}\lp\etr^{N,h} \rp\lp f\lp \lb x\rb_{*,*}\rp\rp\right| + \frac{e^{\xi}\cdot \left| \int^b_a f dx\right|^{n+1}}{(n+1)!} + \end{align} + Note that the instantiation of $\etr^{N,h}$ is exact as it is the instantiation of an affine neural network. For notational simplicity let $\Xi = \real_{\rect} \lp \etr^{N,h}\rp \lp f\lp \lb x\rb_{*,*}\rp\rp$. Then Lemma \ref{xpn_properties} tells us that: + \begin{align}\label{10.0.17} + \left|\sum^n_{i=0}\lb \frac{\Xi^i}{i!}\rb - \real_{\rect} \lp \xpn^{q,\ve}_n \rp \lp \Xi \rp \right| & \les \sum^n_{i=1} \frac{1}{i!}\lp \left| \Xi \lp \Xi^{i-1} - \real_{\rect}\lp \pwr^{q,\ve}_{i-1}\rp\lp \Xi\rp\rp\right| + \ve + |\Xi|^q + \lp \mathfrak{p}_{i-1}^{\Xi}\rp^q \rp + \end{align} + Where for $i\in \N$, let $\mathfrak{p}^{\Xi}_{i-1}$ be the family of functions defined as such: + \begin{align} + \mathfrak{p}^{\Xi}_1 &= \ve+1+|\Xi|^2 \nonumber\\ + \mathfrak{p}^{\Xi}_i &= \ve +\lp \mathfrak{p}_{i-1} \rp^2+|\Xi|^2 + \end{align} + + This then leaves us with: + \begin{align}\label{(10.0.19)} + \left|\sum^n_{i=0}\lb \frac{1}{i!} \lp \int^b_afdx\rp^i\rb - \sum^n_{i=0}\lb \frac{\Xi^i}{i!}\rb\right| &\les \sum_{i=0}^n\left| \lb\frac{1}{i!} \lp \int^b_a fdx\rp^i -\frac{\Xi^i}{i!}\rb \right| \nonumber \\ + &\les \lp n+1\rp \max_{i \in \{0,1,...,n\}}\left|\lb \frac{1}{i!} \lp \int^b_a fdx\rp^i -\frac{\Xi^i}{i!} \rb \right|\nonumber \\ + &\les n \cdot \max_{i \in \{1,...,n\}}\frac{1}{i!} \left|\lb \lp \int^b_a fdx\rp^i -\Xi^i \rb \right| + \end{align} + + Note that for each $i \in \{1,...,n \}$ it holds that: + \begin{align}\label{(10.0.18)} + \lp \int^b_a f dx\rp^i - \Xi^i =\lp \int^b_a f dx - \Xi\rp \lb\lp \int^b_a f dx\rp^{i-1} + \lp \int^b_afdx\rp^{i-2}\cdot \Xi + \cdots +\Xi^{i-1}\rb + \end{align} + Note that the well-known error bounds for the trapezoidal rule tell us that $\Xi$ and $\int^b_afdx$ differ by at most $\frac{\lp b-a \rp^3}{12N^2} f''\lp \xi \rp$ in absolute terms, and thus: + \begin{align} + \max \left\{ \Xi, \int^b_afdx\right\} \les \Xi + \frac{\lp b-a\rp^3}{12N^2}f''\lp \xi \rp + \end{align} + This then renders (\ref{(10.0.18)}) as: + \begin{align} + \lp \int^b_a fdx\rp^i - \Xi^i \les \frac{\lp b-a\rp^3}{12N^2}f''\lp \xi \rp \cdot i \cdot \lb \Xi + \frac{\lp b-a\rp^3}{12N^2} f''\lp \xi\rp\rb^{i-1} + \end{align} + Note that this also renders (\ref{(10.0.19)}) as: + \begin{align} + \left|\sum^n_{i=0}\lb \frac{1}{i!} \lp \int^b_afdx\rp^i\rb - \sum^n_{i=0}\lb \frac{\Xi^i}{i!}\rb\right| &\les \frac{\lp b-a\rp^3}{12N^2}f''\lp \xi \rp \cdot n^2 \cdot \lb \Xi + \frac{\lp b-a\rp^3}{12N^2} f''\lp \xi\rp\rb^{n-1} + \end{align} + This, the triangle inequality and (\ref{10.0.17}), then tell us for all $x \in \lb a,b\rb \subseteq \lb 0,\infty\rp$ that: + \begin{align} + &\left| \sum^n_{i=0} \lb \frac{1}{i!} \lp \int^b_a fdx\rp^i\rb - \real_{\rect} \lp \xpn^{q,\ve}_n \rp\lp x\rp \circ \Xi \right| \nonumber\\ + &\les \left|\sum^n_{i=0}\lb \frac{1}{i!} \lp \int^b_afdx\rp^i\rb - \sum^n_{i=0}\lb \frac{\Xi^i}{i!}\rb\right| \nonumber+ \left|\sum^n_{i=0}\lb \frac{\Xi^i}{i!}\rb - \real_{\rect} \lp \xpn_n^{q,\ve} \rp\lp x \rp \circ \Xi \right| \nonumber \\ + &\les \frac{\lp b-a\rp^3}{12N^2}f''\lp \xi \rp \cdot n^2 \cdot \lb \Xi + \frac{\lp b-a\rp^3}{12N^2} f''\lp \xi\rp\rb^{n-1} + \nonumber \\ + &\sum^n_{i=1} \frac{1}{i!}\lp \left| \Xi \lp \Xi^{i-1} - \real_{\rect}\lp \pwr^{q,\ve}_{i-1}\rp\lp \Xi\rp\rp\right| + \ve + |\Xi|^q + \lp \mathfrak{p}^{\Xi}_{i-1}\rp^{q} \rp + \end{align} + This, applied to (\ref{trian_ineq_exp_real_rect}) then gives us that: + \begin{align} + &\left| \exp \lb \int^b_afdx\rb - \real_{\rect} \lp \mathsf{E}^{N,h,q,\ve}_n\rp\lp f\lp \lb x \rb_{*,*}\rp\rp\right| \nonumber\\ + &\les \left|\sum^n_{i=1}\lb \frac{1}{i!} \lp \int^b_afdx\rp^i\rb - \real_{\rect}\lp \xpn^{q,\ve}_n\rp\lp x\rp \circ \real_{\rect}\lp\etr^{N,h} \rp\lp f\lp \lb x\rb_{*,*}\rp\rp\right| + \frac{e^{\xi}\cdot \left| \int^b_a f dx\right|^{n+1}}{(n+1)!}\nonumber \\ + &\les \frac{\lp b-a\rp^3}{12N^2}f''\lp \xi \rp \cdot n^2 \cdot \lb \Xi + \frac{\lp b-a\rp^3}{12N^2} f''\lp \xi\rp\rb^{n-1} + \nonumber \\ + &\sum^n_{i=1} \frac{1}{i!}\lp \left| \Xi \lp \Xi^{i-1} - \real_{\rect}\lp \pwr^{q,\ve}_{i-1}\rp\lp \Xi\rp\rp\right| + \ve + |\Xi|^q + \lp\mathfrak{p}_{i-1}^{\Xi}\rp^{q} \rp + \frac{e^{\xi}\cdot \left| \int^b_a f dx\right|^{n+1}}{(n+1)!} + \end{align} + This proves Item (iv). + + Finally note that Lemma \ref{xpn_properties} tells us that: + \begin{align} + \wid_{\hid\lp \mathsf{E}^{N,h,q,\ve}_n\rp} \lp \mathsf{E}^{N,h,q,\ve}_n\rp &= \wid_{\hid \lp \xpn^{q,\ve}_n\rp} \lp \xpn^{q,\ve}_n\rp \nonumber\\ + &\les 24+2n + \end{align} +\end{proof} +\begin{remark} + We may represent the $\mathsf{E}^{N,h,q,\ve}_n$ diagrammatically as follows: +\end{remark} +\begin{figure}[h] + \begin{center} + + +\tikzset{every picture/.style={line width=0.75pt}} %set default line width to 0.75pt + +\begin{tikzpicture}[x=0.75pt,y=0.75pt,yscale=-1,xscale=1] +%uncomment if require: \path (0,477); %set diagram left start at 0, and has a height of 477 + +%Shape: Rectangle [id:dp8133807694586985] +\draw (570,80) -- (640,80) -- (640,380) -- (570,380) -- cycle ; +%Straight Lines [id:da5644202293112723] +\draw (670,90) -- (642,90) ; +\draw [shift={(640,90)}, rotate = 360] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; +%Straight Lines [id:da3958568883282644] +\draw (670,130) -- (642,130) ; +\draw [shift={(640,130)}, rotate = 360] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; +%Straight Lines [id:da36159599804808873] +\draw (670,360) -- (642,360) ; +\draw [shift={(640,360)}, rotate = 360] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; +%Straight Lines [id:da8399916298816871] +\draw (570,220) -- (532,220) ; +\draw [shift={(530,220)}, rotate = 360] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; +%Shape: Rectangle [id:dp36371899004668184] +\draw (460,200) -- (530,200) -- (530,240) -- (460,240) -- cycle ; +%Straight Lines [id:da6087697346260741] +\draw (460,210) -- (430.7,131.87) ; +\draw [shift={(430,130)}, rotate = 69.44] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; +%Straight Lines [id:da09350943957233837] +\draw (460,230) -- (430.39,378.04) ; +\draw [shift={(430,380)}, rotate = 281.31] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; +%Shape: Rectangle [id:dp5858773975599592] +\draw (360,110) -- (430,110) -- (430,150) -- (360,150) -- cycle ; +%Shape: Rectangle [id:dp6593787630372464] +\draw (300,170) -- (430,170) -- (430,210) -- (300,210) -- cycle ; +%Shape: Rectangle [id:dp8981897806517504] +\draw (200,360) -- (430,360) -- (430,400) -- (200,400) -- cycle ; +%Shape: Rectangle [id:dp8722515968192108] +\draw (200,170) -- (270,170) -- (270,210) -- (200,210) -- cycle ; +%Shape: Rectangle [id:dp6009233720093313] +\draw (200,110) -- (330,110) -- (330,150) -- (200,150) -- cycle ; +%Straight Lines [id:da25919556276229416] +\draw (360,130) -- (332,130) ; +\draw [shift={(330,130)}, rotate = 360] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; +%Straight Lines [id:da5118244891967815] +\draw (300,190) -- (272,190) ; +\draw [shift={(270,190)}, rotate = 360] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; +%Shape: Rectangle [id:dp8302038959734496] +\draw (130,110) -- (170,110) -- (170,150) -- (130,150) -- cycle ; +%Straight Lines [id:da3444887884321911] +\draw (200,130) -- (172,130) ; +\draw [shift={(170,130)}, rotate = 360] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; +%Shape: Rectangle [id:dp830705563112423] +\draw (130,170) -- (170,170) -- (170,210) -- (130,210) -- cycle ; +%Shape: Rectangle [id:dp32656481150478633] +\draw (130,360) -- (170,360) -- (170,400) -- (130,400) -- cycle ; +%Straight Lines [id:da3058371632279333] +\draw (190,190) -- (200,190) -- (172,190) ; +\draw [shift={(170,190)}, rotate = 360] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; +%Straight Lines [id:da7847718449576501] +\draw (200,380) -- (172,380) ; +\draw [shift={(170,380)}, rotate = 360] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; +%Shape: Rectangle [id:dp4662565884782496] +\draw (30,240) -- (100,240) -- (100,280) -- (30,280) -- cycle ; +%Straight Lines [id:da10776626554102664] +\draw (30,260) -- (2,260) ; +\draw [shift={(0,260)}, rotate = 360] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; +%Straight Lines [id:da09899836992792843] +\draw (130,130) -- (100.53,238.07) ; +\draw [shift={(100,240)}, rotate = 285.26] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; +%Straight Lines [id:da35627707263158237] +\draw (130,190) -- (100.79,258.16) ; +\draw [shift={(100,260)}, rotate = 293.2] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; +%Straight Lines [id:da27409517502644487] +\draw (460,220) -- (431.41,191.41) ; +\draw [shift={(430,190)}, rotate = 45] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; +%Straight Lines [id:da1945630670120475] +\draw (130,380) -- (100.53,271.93) ; +\draw [shift={(100,270)}, rotate = 74.74] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; + +% Text Node +\draw (581,206.4) node [anchor=north west][inner sep=0.75pt] {$\mathsf{Etr}{^{N}}^{h}$}; +% Text Node +\draw (671,82.4) node [anchor=north west][inner sep=0.75pt] {$\mathbb{R}$}; +% Text Node +\draw (674,122.4) node [anchor=north west][inner sep=0.75pt] {$\mathbb{R}$}; +% Text Node +\draw (674,352.4) node [anchor=north west][inner sep=0.75pt] {$\mathbb{R}$}; +% Text Node +\draw (661,212.4) node [anchor=north west][inner sep=0.75pt] [font=\LARGE] {$\vdots $}; +% Text Node +\draw (469,212.4) node [anchor=north west][inner sep=0.75pt] {$\mathsf{Cpy}_{n}{}_{,}{}_{1}$}; +% Text Node +\draw (371,115.4) node [anchor=north west][inner sep=0.75pt] {$\mathsf{Pwr}_{0}^{q}$}; +% Text Node +\draw (331,175.4) node [anchor=north west][inner sep=0.75pt] {$\mathsf{Pwr}_{1}^{q}$}; +% Text Node +\draw (311,365.4) node [anchor=north west][inner sep=0.75pt] {$\mathsf{Pwr}_{n}^{q}$}; +% Text Node +\draw (322,262.4) node [anchor=north west][inner sep=0.75pt] [font=\LARGE] {$\vdots $}; +% Text Node +\draw (182,262.4) node [anchor=north west][inner sep=0.75pt] [font=\LARGE] {$\vdots $}; +% Text Node +\draw (238,122.4) node [anchor=north west][inner sep=0.75pt] {$\mathsf{Tun}$}; +% Text Node +\draw (208,182.4) node [anchor=north west][inner sep=0.75pt] {$\mathsf{Tun}$}; +% Text Node +\draw (136,115.4) node [anchor=north west][inner sep=0.75pt] [font=\scriptsize] {$\frac{1}{0!} \rhd $}; +% Text Node +\draw (141,173.4) node [anchor=north west][inner sep=0.75pt] [font=\scriptsize] {$\frac{1}{1!} \rhd $}; +% Text Node +\draw (141,363.4) node [anchor=north west][inner sep=0.75pt] [font=\scriptsize] {$\frac{1}{n!} \rhd $}; +% Text Node +\draw (122,262.4) node [anchor=north west][inner sep=0.75pt] [font=\LARGE] {$\vdots $}; +% Text Node +\draw (41,250.4) node [anchor=north west][inner sep=0.75pt] {$\mathsf{Cpy}_{n}{}_{,}{}_{1}$}; + + +\end{tikzpicture} + + \end{center} + \caption{Diagram of $\mathsf{E}^{N,h,q,\ve}_n$.} +\end{figure} +\section{The $\mathsf{UE}^{N,h,q,\ve}_{n,\mathsf{G}_d}$ Neural Network} +\begin{lemma}[R\textemdash,2023]\label{UE-prop} + +Let $n, N,h\in \N$. Let $\delta,\ve \in \lp 0,\infty \rp $, $q\in \lp 2,\infty \rp$, satisfy that $\delta = \ve \lp 2^{q-1} +1\rp^{-1}$. Let $a\in \lp -\infty,\infty \rp$, $b \in \lb a, \infty \rp$. Let $f:[a,b] \rightarrow \R$ be continuous and have second derivatives almost everywhere in $\lb a,b \rb$. Let $a=x_0 \les x_1\les \cdots \les x_{N-1} \les x_N=b$ such that for all $i \in \{0,1,...,N\}$ it is the case that $h = \frac{b-a}{N}$, and $x_i = x_0+i\cdot h$ . Let $x = \lb x_0 \: x_1\: \cdots x_N \rb$ and as such let $f\lp\lb x \rb_{*,*} \rp = \lb f(x_0) \: f(x_1)\: \cdots \: f(x_N) \rb$. Let $\mathsf{E}^{\exp}_{n,h,q,\ve} \in \neu$ be the neural network given by: + \begin{align} + \mathsf{E}^{N,h,q,\ve}_n = \xpn_n^{q,\ve} \bullet \etr^{N,h} + \end{align} + + Let $\mathsf{G}_d \in \neu$ be the neural network which instantiates as $\mathfrak{u}_d =\real_{\rect}\lp \mathsf{G}_d\rp\lp x\rp \in C \lp \R^d, \R \rp$ for all $x \in \R^d$. + + Let $\mathsf{UE}^{N,h,q,\ve}_{n,\mathsf{G}_d}$ be the neural network given as: + \begin{align} + \mathsf{UE}^{N,h,q,\ve}_{n,\mathsf{G}_d} = \prd^{q,\ve} \bullet \lb \mathsf{E}^{N,h,q,\ve}_n \DDiamond \mathsf{G}_d \rb + \end{align} + It is then the case that for all $\fx = \{x_0,x_1,\hdots, x_N\} \in \R^{N+1}$ and $x \in \R^d$ that: + \begin{enumerate}[label = (\roman*)] + \item $\real_{\rect} \lp \mathsf{UE}^{N,h,q,\ve}_{n,\mathsf{G}_d} \rp\lp f\lp \lb \fx\rb_{*}\rp \frown x\rp \in C \lp \R^{N+1} \times \R^{d}, \R \rp$ + \item $\dep \lp \mathsf{UE}^{N,h,q,\ve}_{n,\mathsf{G}_d}\rp \les \begin{cases} + \frac{q}{q-2} \lb \log_2 \lp \ve^{-1}\rp +q \rb +\dep \lp \mathsf{G}_d\rp-1 &:n = 0\\ + \frac{q}{q-2} \lb \log_2 \lp \ve^{-1}\rp +q \rb +\max\left\{\dep \lp \mathsf{E}^{N,h,q,\ve}_{n,\mathsf{G}_d}\rp,\dep \lp \mathsf{G}_d\rp\right\}-1 &:n \ges 1\\ + \end{cases}$ + \item It is also the case that:\begin{align} + \param \lp \mathsf{UE}^{N,h,q,\ve}_{n,\mathsf{G}_d}\rp &\les \frac{360q}{q-2} \lb \log_2 \lp \ve^{-1} \rp +q+1 \rb +324+ 48n\nonumber\\ &+24 \wid_{\hid\lp \mathsf{G}_d\rp}\lp \mathsf{G}_d\rp + 4\max \left\{\param \lp \mathsf{E}^{N,h,q,\ve}_{n}\rp, \param \lp \mathsf{G}_d\rp \right\} + \end{align} + \item It is also the case that: + \begin{align} + &\left| \exp \lp \int^b_a fdx\rp \fu_d\lp x\rp - \real_{\rect}\lp\mathsf{UE}^{N,h,q,\ve}_{n,\mathsf{G}_d} \rp \lp f(\lb \fx\rb_* \frown x \rp \right|\nonumber\\ &\les 3\ve +2\ve \left| \fu\lp x\rp\right|^q+2\ve \left| \exp \lp \int^b_afdx\rp\right|^q + \ve \left| \exp \lp \int^b_afdx\rp - \mathfrak{e}\right|^q -\mathfrak{e}\fu\lp x \rp\nonumber + \end{align} + Where, as per Lemma \ref{mathsfE}, $\mathfrak{e}$ is defined as: + \begin{align} + \left| \mathsf{E}^{N,h,q,\ve}_{n}\lp f\lp \lb \fx\rb_*\rp\rp - \exp \lp \int^b_afdx\rp\right| \les \mathfrak{e} + \end{align} + \end{enumerate} +\end{lemma} +\begin{remark} + Diagrammatically $\mathsf{UE}^{N,h,q,\ve}_{n}$ can be represented as: +\end{remark} + + +\begin{center} + + +\tikzset{every picture/.style={line width=0.75pt}} %set default line width to 0.75pt + +\begin{tikzpicture}[x=0.75pt,y=0.75pt,yscale=-1,xscale=1] +%uncomment if require: \path (0,475); %set diagram left start at 0, and has a height of 475 + +%Shape: Rectangle [id:dp5014556157804896] +\draw (477.6,119) -- (581.4,119) -- (581.4,159) -- (477.6,159) -- cycle ; +%Shape: Rectangle [id:dp6888177801681734] +\draw (479.2,220.6) -- (583,220.6) -- (583,260.6) -- (479.2,260.6) -- cycle ; +%Shape: Rectangle [id:dp5733062989346852] +\draw (274.2,120.2) -- (422.8,120.2) -- (422.8,160.2) -- (274.2,160.2) -- cycle ; +%Shape: Rectangle [id:dp3644206511797573] +\draw (278.2,221.8) -- (426.8,221.8) -- (426.8,261.8) -- (278.2,261.8) -- cycle ; +%Shape: Rectangle [id:dp872163975205418] +\draw (128,168.6) -- (198,168.6) -- (198,208.6) -- (128,208.6) -- cycle ; +%Straight Lines [id:da0837610283606276] +\draw (479.2,139.6) -- (425.8,139.79) ; +\draw [shift={(423.8,139.8)}, rotate = 359.79] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; +%Straight Lines [id:da9682427637559707] +\draw (477.6,242) -- (430.6,242.19) ; +\draw [shift={(428.6,242.2)}, rotate = 359.77] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; +%Straight Lines [id:da03790523286924763] +\draw (274.2,139) -- (200,174.93) ; +\draw [shift={(198.2,175.8)}, rotate = 334.16] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; +%Straight Lines [id:da20598256940944215] +\draw (278.2,242.2) -- (203.16,201.55) ; +\draw [shift={(201.4,200.6)}, rotate = 28.44] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; +%Straight Lines [id:da23636707453012662] +\draw (128.6,190.2) -- (67.4,189.43) ; +\draw [shift={(65.4,189.4)}, rotate = 0.73] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; +%Straight Lines [id:da988244371641313] +\draw (621.6,140.6) -- (583.6,139.84) ; +\draw [shift={(581.6,139.8)}, rotate = 1.15] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; +%Straight Lines [id:da5522974642204443] +\draw (623.2,243) -- (585.2,242.24) ; +\draw [shift={(583.2,242.2)}, rotate = 1.15] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; + +% Text Node +\draw (508.4,126.2) node [anchor=north west][inner sep=0.75pt] {$\mathsf{E}^{N,h,q,\ve}_n$}; +% Text Node +\draw (526,230.6) node [anchor=north west][inner sep=0.75pt] {$\mathsf{G}_d$}; +% Text Node +\draw (333.2,131.4) node [anchor=north west][inner sep=0.75pt] {$\mathsf{Tun}$}; +% Text Node +\draw (342,233) node [anchor=north west][inner sep=0.75pt] {$\mathsf{Tun}$}; +% Text Node +\draw (143.6,179.6) node [anchor=north west][inner sep=0.75pt] {$\mathsf{Prd}^{q,\varepsilon }$}; +% Text Node +\draw (626,234.2) node [anchor=north west][inner sep=0.75pt] {$\mathbb{R}^{d}$}; +% Text Node +\draw (626.4,131) node [anchor=north west][inner sep=0.75pt] {$\mathbb{R}^{N+1}$}; + + +\end{tikzpicture} +\end{center} + +\begin{proof} + Note that from Lemma \ref{comp_prop}, and Lemma \ref{inst_of_stk}, we have that for $\fx \in \R^{N+1}$, and $x \in \R^d$ it is the case that $\real_{\rect} \lp \prd^{q,\ve} \bullet \lb \mathsf{E}^{N,h,q,\ve}_{n} \DDiamond \mathsf{G}_d \rb \rp\lp f\lp \lb \fx\rb_* \frown x\rp\rp = \real_{\rect} \lp \prd^{q,\ve}\rp \circ \real_{\rect}\lp \lb \mathsf{E}^{N,h,q,\ve}_{n} \DDiamond \mathsf{G}_d \rb \rp \lp f\lp \lb \fx\rb_*\rp \frown x\rp $. Then Lemma \ref{prd_network} tells us that $\real_{\rect} \lp \prd^{q,\ve}\rp \in C \lp \R^2,\R\rp$. Lemma \ref{mathsfE} tells us that $\real_{\rect }\lp \mathsf{E}^{N,h,q,\ve}_{n} \rp \in C \lp \R^{N+1},\R\rp$ and by hypothesis it is the case that $\real_{\rect} \lp \mathsf{G}_d\rp \in C \lp \R^d,\R\rp $. Thus, by the stacking properties of continuous instantiated networks and the fact that the composition of continuous functions is continuous, we have that $\real_{\rect} \lp \mathsf{UE}^{N, h,q,\ve}_{n,\mathsf{G}_d}\rp \in C \lp \R^{N+1} \times \R^d,\R \rp$. + + Note that by Lemma \ref{comp_prop} it is the case that: + \begin{align} + \dep \lp \mathsf{UE}^{N,h,q,\ve}_{n,\mathsf{G}_d}\rp = \dep \lp \prd^{q,\ve}\rp + \dep \lp \mathsf{E}^{N,h,q,\ve}_{n} \DDiamond \mathsf{G}_d \rp -1 + \end{align} + Lemma \ref{mathsfE} and Lemma \ref{prd_network} then tell us that: + \begin{align} + &\dep \lp \mathsf{UE}^{N,h,q,\ve}_{n,\mathsf{G}_d}\rp \nonumber \\ + &\les \begin{cases} + \frac{q}{q-2} \lb \log_2 \lp \ve^{-1}\rp +q \rb +\dep \lp \mathsf{G}_d\rp-1 &:n = 0\\ + \frac{q}{q-2} \lb \log_2 \lp \ve^{-1}\rp +q \rb +\max\left\{\dep \lp \mathsf{E}^{N,h,q,\ve}_{n}\rp,\dep \lp \mathsf{G}_d\rp\right\}-1 &:n \ges 1\\ + \end{cases} + \end{align} + Note that then Lemma \ref{comp_prop}, Lemma \ref{xpn_properties}, and Lemma \ref{mathsfE} tell us that: + \begin{align} + \param \lp \mathsf{UE}^{N,h,q,\ve}_{n,\mathsf{G}_d}\rp &\les \param \lp \prd^{q,\ve}\rp + 4\max \left\{\param \lp \mathsf{E}^{N,h,q,\ve}_{n}\rp, \param \lp \mathsf{G}_d\rp \right\}\nonumber\\&+ \wid_1\lp \prd^{q,\ve}\rp\cdot \wid_{\hid\lp \mathsf{E}^{N,h,q,\ve}_{n} \DDiamond \mathsf{G}_d\rp } \lp \mathsf{E}^{N,h,q,\ve}_{n} \DDiamond \mathsf{G}_d\rp\nonumber \\ + &\les \param \lp \prd^{q,\ve}\rp + 4\max \left\{\param \lp \mathsf{E}^{N,h,q,\ve}_{n}\rp, \param \lp \mathsf{G}_d\rp \right\}\nonumber \\ + &+ 24\lb \lp 24+2n\rp\nonumber + \wid_{\hid \lp \mathsf{G}_d\rp} \lp \mathsf{G}_d\rp \rb \\ + &= \param \lp \prd^{q,\ve}\rp + 4\max \left\{\param \lp \mathsf{E}^{N,h,q,\ve}_{n}\rp, \param \lp \mathsf{G}_d\rp \right\}\nonumber \\ + &+ 576+48n + 24\cdot\wid_{\hid \lp \mathsf{G}_d\rp} \lp \mathsf{G}_d\rp \nonumber\\ + &\les \frac{360q}{q-2} \lb \log_2 \lp \ve^{-1} \rp +q+1 \rb +324+ 48n\nonumber\\ &+24 \wid_{\hid\lp \mathsf{G}_d\rp}\lp \mathsf{G}_d\rp + 4\max \left\{\param \lp \mathsf{E}^{N,h,q,\ve}_{n}\rp, \param \lp \mathsf{G}_d\rp \right\} + \end{align} + Now note that Lemma \ref{comp_prop}, and Lemma \ref{inst_of_stk} tells us that for all $\fx = \{x_1,x_2,\hdots, x_n\} \in \R^n$ and $x \in \R^d$: + \begin{align} + \real_{\rect} \lp \prd^{q,\ve} \bullet \lb \mathsf{E}^{N,h,q,\ve}_{n} \DDiamond \mathsf{G}_d \rb\rp \lp f\lp \lb \fx\rb_*\rp \frown x \rp = \real_{\rect}\lp \prd^{q,\ve}\rp \lp \real_{\rect} \lp \mathsf{E}^{N,h,q,\ve}_{n} \rp , \real_{\rect} \lp \mathsf{G}_d \rp \rp \lp f \lp \lb \fx\rb_*\rp \frown x \rp. + \end{align} + Note then that the triangle inequality tells us that: + \begin{align} + &\left| \exp \lp \int^b_a f dx\rp \mathfrak{u}_d \lp x\rp - \real_{\rect}\lp \mathsf{UE}^{N,h,q,\ve}_{n,\mathsf{G}_d} \rp \lp f\lp\lb \fx\rb_*\rp \frown x\rp\right|\nonumber\\ + &= \left| \exp \lp \int^b_a fdx\rp \cdot \mathfrak{u}_d\lp x\rp- \real_{\rect}\lp \prd^{q,\ve}\rp \lp \real_{\rect} \lp \mathsf{E}^{N,h,q,\ve}_{n} \rp , \real_{\rect} \lp \mathsf{G}_d \rp \rp \lp f\lp \lb \fx\rb_* \rp \frown x\rp\right| \nonumber \\ + &\les \left| \exp \lp \int^b_afdx \rp \cdot \mathfrak{u}_d \lp x\rp -\real_{\rect}\lp \prd^{q,\ve} \rp \lp \exp \lp \int^b_afdx\rp ,\mathfrak{u}_d\lp x\rp \rp\right| \nonumber \\ + &+ \left| \real_{\rect}\lp \prd^{q,\ve}\rp \lp \exp \lp \int^b_afdx \rp, \mathfrak{u}_d\lp x\rp\rp - \real_{\rect}\lp \prd^{q,\ve}\rp \lp \real_{\rect} \lp \mathsf{E}^{N,h,q,\ve}_{n} \rp , \real_{\rect} \lp \mathsf{G}_d \rp \rp \lp f\lp \lb \fx\rb\rp\frown x\rp\right| \label{(10.0.35)} + \end{align} + Note that Lemma \ref{prd_network} bounds the first summand. Note that by hypothesis $\real_{\rect} \lp \mathsf{G}_d\rp$ is exactly $\mathfrak{u}_d \lp x\rp$. Note also that by Lemma \ref{mathsfE}, Lemma \ref{prd_network}, we realize that the second summand can be bounded as such: + \begin{align} + &\left| \real_{\rect}\lp \prd^{q,\ve}\rp \lp \exp \lp \int^b_afdx \rp, \mathfrak{u}_d\lp x\rp\rp - \real_{\rect}\lp \prd^{q,\ve}\rp \lp \real_{\rect} \lp \mathsf{E}^{N,h,q,\ve}_{n} \rp , \real_{\rect} \lp \mathsf{G}_d \rp \rp \lp f\lp \lb \fx\rb_*\rp \frown x\rp\right| \nonumber \\ + &\les \exp \lp \int^b_afdx\rp \mathfrak{u}_d\lp x\rp + \ve+\ve \left| \exp \lp \int ^b_a fdx\rp\right|^q + \ve \left| \mathfrak{u}_d\lp x \rp\right|^q\nonumber \\ + &- \lb\real_{\rect} \lp \mathsf{E}^{N,h,q,\ve}_{n}\rp\lp f \lp \lb \fx \rb_* \rp\rp\real_{\rect} \lp \mathsf{G}_d\rp\lp x\rp - \ve -\ve \left| \real_{\rect}\lp \mathsf{E}^{N,h,q,\ve}_{n}\rp \lp f\lp \lb\fx\rb_*\rp\rp\right|^q-\ve \left| \real_{\rect}\lp \mathsf{G}_d\rp\lp x\rp\right|^q\rb \label{(10.0.36)} + \end{align} + Per Lemma \ref{mathsfE}, let $\mathfrak{e}$ represent the error in approximation of $\mathsf{E}^{N,h,q,\ve}_{n}$, that is to say for all $\fx \in \R^{N+1}$ and corresponding $f\lp \lb \fx\rb_*\rp$, let it be the case that: + \begin{align} + \left| \mathsf{E}^{N,h,q,\ve}_{n}\lp f\lp \lb \fx\rb_*\rp\rp - \exp \lp\int^b_a fdx\rp\right| \les \mathfrak{e} + \end{align} + Thus $\mathsf{E}^{N,h,q,\ve}_{n}\lp f\lp \lb \fx\rb_*\rp\rp$ is maximally $\mathfrak{e} + \exp \lp \int^b_a f dx\rp$ and minimally $\exp \lp \int^b_afdx\rp - \mathfrak{e}$. Thus (\ref{(10.0.36)}) is rendered as: + \begin{align} + &\exp \lp \int^b_afdx\rp \mathfrak{u}_d\lp x\rp + \ve+\ve \left| \exp \lp \int ^b_a fdx\rp\right|^q + \ve \left| \mathfrak{u}_d\lp x \rp\right|^q\nonumber \\ + &- \lb\real_{\rect} \lp \mathsf{E}^{N,h,q,\ve}_{n}\rp\real_{\rect} \lp \mathsf{G}_d\rp\lp f\lp \lb \fx\rb_*\rp \frown x\rp - \ve -\ve \left| \real_{\rect}\lp \mathsf{E}^{N,h,q,\ve}_{n}\rp \lp f\lp \lb \fx \rb_*\rp\rp\right|^q-\ve \left| \real_{\rect}\lp \mathsf{G}_d\rp\lp x\rp\right|^q\rb \nonumber \\ + &\les \exp \lp \int^b_afdx\rp \mathfrak{u}_d\lp x\rp + \ve+\ve \left| \exp \lp \int ^b_a fdx\rp\right|^q + \ve \left| \mathfrak{u}_d\lp x \rp\right|^q \nonumber \\ + &-\lb \lp \mathfrak{e}+\exp \lp \int^b_afdx\rp \rp \mathfrak{u}_d\lp x\rp - \ve -\ve \left| \exp \lp \int^b_afdx \rp - \mathfrak{e}\right|^q -\ve \left|\mathfrak{u}_d\lp x\rp \right|^q \rb \nonumber \\ + &= \cancel{\exp \lp \int^b_afdx\rp \mathfrak{u}_d\lp x\rp} + \ve+\ve \left| \exp \lp \int ^b_a fdx\rp\right|^q + \ve \left| \mathfrak{u}_d\lp x \rp\right|^q \nonumber \\ + &-\mathfrak{e}u\lp t,x\rp-\cancel{\exp \lp \int^b_a fdx\rp \mathfrak{u}_d\lp x\rp} + \ve +\ve \left| \exp \lp \int^b_af dx\rp - \mathfrak{e}\right|^q+\ve \left| \mathfrak{u}_d\lp x\rp\right|^q \nonumber \\ + &=2\ve +2\ve \left| \mathfrak{u}_d\lp x\rp\right|^q + \ve \left| \exp \lp \int^b_a fdx\rp -\mathfrak{e}\right|^q +\ve \left| \exp \lp \int^b_afdx\rp\right|^q -\mathfrak{e}\mathfrak{u}_d\lp x \rp + \end{align} + This, together with (\ref{(10.0.35)}), then tells us that: + \begin{align} + & \left| \exp \lp \int^b_a f dx\rp \mathfrak{u}_d \lp x\rp - \real_{\rect}\lp \mathsf{UE}^{N,h,q,\ve}_{n,\mathsf{G}_d} \rp \lp f\lp \lb \fx\rb_*\rp \frown x\rp\right| \nonumber \\ + &\les \left| \exp \lp \int^b_afdx \rp \mathfrak{u}_d \lp x\rp -\real_{\rect}\lp \prd^{q,\ve} \rp \lp \exp \lp \int^b_afdx\rp ,\mathfrak{u}_d\lp x\rp \rp\right| \nonumber \\ + &+ \left| \real_{\rect}\lp \prd^{q,\ve}\rp \lp \exp \lp \int^b_afdx \rp, \mathfrak{u}_d\lp x\rp\rp - \real_{\rect}\lp \prd^{q,\ve}\rp \lp \real_{\rect} \lp \mathsf{E}^{N,h,q,\ve}_{n} \rp\lp f\lp \lb \fx\rb_*\rp\rp , \real_{\rect} \lp \mathsf{G}_d \rp \lp x\rp\rp \right| \nonumber \\ + &\les \ve +\ve \left| \exp \lp \int^b_a fdx\rp\right|^q + \ve \left| \mathfrak{u}_d \lp x\rp\right|^q \nonumber \\ + &+2\ve +2\ve \left| \mathfrak{u}_d\lp x\rp\right|^q + \ve \left| \exp \lp \int^b_a fdx\rp - \mathfrak{e} \right|^q +\ve \left| \exp \lp \int^b_afdx\rp\right|^q -\mathfrak{e}\mathfrak{u}_d\lp x \rp \nonumber\\ + &= 3\ve +2\ve \left| \mathfrak{u}_d\lp x\rp\right|^q+2\ve \left| \exp \lp \int^b_afdx\rp\right|^q + \ve \left| \exp \lp \int^b_afdx\rp - \mathfrak{e}\right|^q -\mathfrak{e}\mathfrak{u}_d\lp x \rp \nonumber + \end{align} +\end{proof} +\section{The $\mathsf{UEX}^{N,h,q,\ve}_{n,\mathsf{G}_d,\omega_i}$ network}\label{UEX} +\begin{lemma}[R\textemdash,2023]\label{UE-prop} + +Let $n, N,h\in \N$. Let $\delta,\ve \in \lp 0,\infty \rp $, $q\in \lp 2,\infty \rp$, satisfy that $\delta = \ve \lp 2^{q-1} +1\rp^{-1}$. Let $a\in \lp -\infty,\infty \rp$, $b \in \lb a, \infty \rp$. Let $f:[a,b] \rightarrow \R$ be continuous and have second derivatives almost everywhere in $\lb a,b \rb$. Let $a=x_0 \les x_1\les \cdots \les x_{N-1} \les x_N=b$ such that for all $i \in \{0,1,...,N\}$ it is the case that $h = \frac{b-a}{N}$, and $x_i = x_0+i\cdot h$ . Let $x = \lb x_0 \: x_1\: \cdots x_N \rb$ and as such let $f\lp\lb x \rb_{*,*} \rp = \lb f(x_0) \: f(x_1)\: \cdots \: f(x_N) \rb$. Let $\mathsf{E}^{\exp}_{n,h,q,\ve} \in \neu$ be the neural network given by: + \begin{align} + \mathsf{E}^{N,h,q,\ve}_n = \xpn_n^{q,\ve} \bullet \etr^{N,h} + \end{align} + + Let $\mathsf{G}_d \subsetneq \neu$ be the neural networks which, for $d \in \N$, instantiate as $\mathfrak{u}_d =\real_{\rect}\lp \mathsf{G}_d\rp\lp x\rp \in C \lp \R^d, \R \rp$ for all $x \in \R^d$. + + Let $\mathsf{UE}^{N,h,q,\ve}_{n,\mathsf{G}_d} \subsetneq \neu$ be the neural networks given as: + \begin{align} + \mathsf{UE}^{N,h,q,\ve}_{n,\mathsf{G}_d} = \prd^{q,\ve} \bullet \lb \mathsf{E}^{N,h,q,\ve}_n \DDiamond \mathsf{G}_d \rb + \end{align} + + Finally let $\mathsf{UEX}^{N,h,q,\ve}_{n,\mathsf{G}_d,\omega_i} \subsetneq \neu$ be given the neural networks given by: + \begin{align} + \mathsf{UEX}^{N,h,q,\ve}_{n,\mathsf{G}_d,\omega_i} = \mathsf{UE}^{N,h,q,\ve}_{n, \mathsf{G}_d} \bullet \lb \tun^{N+1}_1 \boxminus \aff_{\mymathbb{0}_{d,d},\mathcal{X}_{\omega_i}} \rb + \end{align} + It is then the case that for all $\fx = \{x_0,x_1,\hdots, x_N\} \in \R^{N+1}$ and $x \in \R^d$ that: + \begin{enumerate}[label = (\roman*)] + \item $\real_{\rect} \lp \mathsf{UEX}^{N,h,q,\ve}_{n,\mathsf{G}_d,\omega_i} \rp \in C \lp \R^{N+1}\times \R^{d}, \R \rp$ + \item \begin{align}\dep \lp \mathsf{UEX}^{N,h,q,\ve}_{n,\mathsf{G}_d,\omega_i}\rp &= \dep \lp \mathsf{UE}^{N,n,h,q,\ve }_{n,\mathsf{G}_d}\rp\nonumber\\ &\les \begin{cases} + \frac{q}{q-2} \lb \log_2 \lp \ve^{-1}\rp +q \rb +\dep \lp \mathsf{G}_d\rp-1 &:n = 0\nonumber\\ + \frac{q}{q-2} \lb \log_2 \lp \ve^{-1}\rp +q \rb +\max\left\{\dep \lp \mathsf{E}^{\exp,f}_{N,n,h,q,\ve}\rp,\dep \lp \mathsf{G}_d\rp\right\}-1 &:n \in \N\\ + \end{cases}\end{align} + \item It is also the case that:\begin{align} + \param \lp \mathsf{UEX}^{N,h,q,\ve}_{n,\mathsf{G}_d,\omega_i}\rp = \param \lp \mathsf{UE}^{N,h,q,\ve}_{n,\mathsf{G}_d}\rp &\les \frac{360q}{q-2} \lb \log_2 \lp \ve^{-1} \rp +q+1 \rb +324+ 48n\nonumber\\ &+24 \wid_{\hid\lp \mathsf{G}_d\rp}\lp \mathsf{G}_d\rp + 4\max \left\{\param \lp \mathsf{E}^{N,h,q,\ve}_{n}\rp, \param \lp \mathsf{G}_d\rp \right\} + \end{align} + \item It is also the case that: + \begin{align} + &\left| \exp \lp \int^T_t fds\rp \mathfrak{u}_d^T\lp x\rp - \real_{\rect}\lp \mathsf{UEX}^{N,h,q,\ve}_{n,\mathsf{G}_d,\omega_i}\rp \lp f\lp \lb \fx\rb_*\rp \frown x\rp \right|\nonumber\\ &\les 3\ve +2\ve \left| \mathfrak{u}_d^T\lp t,x\rp\right|^q+2\ve \left| \exp \lp \int^b_afdx\rp\right|^q + \ve \left| \exp \lp \int^b_afdx\rp - \mathfrak{e}\right|^q -\mathfrak{e}\mathfrak{u}_d^T\lp x \rp\nonumber + \end{align} + Where, as per Lemma \ref{mathsfE}, $\mathfrak{e}$ is defined as: + \begin{align} + \left| \mathsf{E}^{N,h,q,\ve}_{n}\lp f\lp \lb \fx\rb_* \rp\rp - \exp \lp \int^b_afdx\rp\right| \les \mathfrak{e} + \end{align} + \end{enumerate} +\end{lemma} + +\begin{proof} + Note that (\ref{fc-assertion}) is an assertion of Feynman-Kac. LetNow notice that for $x \in \R^{N+1} \times \R^d$ it is the case that: + \begin{align} + \real_{\rect} \lp \mathsf{UEX}^{N,h,q,\ve}_{n,\mathsf{G}_d,\omega_i}\rp \lp x\rp &= \real_{\rect} \lp \mathsf{UE}^{N,h,q,\ve}_{n,\mathsf{G}_d} \bullet \lb \tun^{N+1}_1 \boxminus \aff_{\mymathbb{0}_{d,d},\mathcal{X}_{\omega_i}} \rb \rp \lp x\rp\nonumber \\ + &=\real_{\rect} \lp \mathsf{UE}^{N,h,q,\ve}_{n,\mathsf{G}_d} \rp \circ \real_{\rect}\lp \lb \tun^{N+1}_1 \boxminus \aff_{\mymathbb{0}_{d,d},\mathcal{X}_{\omega_i}} \rb\rp \lp x \rp \nonumber + \end{align} + Note that by Lemma \ref{UE-prop} it holds that $\real_{\rect} \lp \mathsf{UE}^{N,h,q,\ve}_{n,\mathsf{G}_d} \rp \in C\lp \R^{N+1}\times \R^d,\R \rp$. Note also that by Lemma \ref{tun_mult}, $\tun^{N+1}_1$ is continuous and by Lemma \ref{5.3.2}, $\aff_{\mymathbb{0}_{d,d},\mathcal{X}_{\omega_i}}$ is continuous, and whence by Lemma \ref{tun_mult} and Lemma \ref{aff_effect_on_layer_architecture} it is the case that $\real_{\rect}\lp \lb \tun^{N+1}_1 \boxminus \aff_{\mymathbb{0}_{d,d},\mathcal{X}_{\omega_i}} \rb\rp \lp x \rp \in C\lp \R^{N+1}\times \R^d, \R^{N+1}\times \R^d\rp$. Finally, since the composition of continuous functions is continuous, and since we have functions $\lp \R^{N+1}\times \R^d\rp \mapsto \lp \R^{N+1}\times \R^d\rp \mapsto \R$ we have that $\real_{\rect} \lp \mathsf{UEX}^{N,h,q,\ve}_{n,\mathsf{G}_d,\omega_i} \rp \in C \lp \R^{N+1}\times \R^{d}, \R \rp$. This proves Item (i). + + Note next that by Lemma \ref{tun_mult}, it is the case that $\dep \lp \tun^{N+1}_1\rp = \dep \lp \aff_{\mymathbb{0}_{d,d},\mathcal{X}_{\omega_i}}\rp$ = 1. Thus by Lemma \ref{comp_prop} it is the case that $\dep \lp \mathsf{UEX}^{N,h,q,\ve}_{n,\mathsf{G}_d,\omega_i} \rp = \dep \lp \mathsf{UE}^{N,h,q,\ve}_{n,\mathsf{G}_d}\rp$. This proves Item (ii) + + Next note that: + \begin{align} + \param \lp \mathsf{UEX}^{N,h,q,\ve}_{n,\mathsf{G}_d,\omega_i}\rp = \param \lp \mathsf{UE}^{N,h,q,\ve}_{n,\mathsf{G}_d} \bullet \lb \tun^{N+1}_1 \boxminus \aff_{\mymathbb{0}_{d,d},\mathcal{X}_{\omega_i}} \rb \rp + \end{align} + + Note carefully that Definition \ref{def:tun_mult} tells us that $\tun^{N+1}_1 = \aff_{\mathbb{I}_{N+1,N+1},\mymathbb{0}_{N+1}}$, and so by Lemma \ref{aff_stack_is_aff}, it must be the case that $\tun^{N+1}_1 \boxminus \aff_{\mymathbb{0}_{d,d},\mathcal{X}_{\omega_i}}$ is also an affine neural network. Whence, Corollary \ref{affcor} tells us that: + \begin{align} + \param \lp \mathsf{UEX}^{N,h,q,\ve}_{n,\mathsf{G}_d,\omega_i}\rp &= \param \lp \mathsf{UE}^{N,h,q,\ve}_{n,\mathsf{G}_d} \bullet \lb \tun^{N+1}_1 \boxminus \aff_{\mymathbb{0}_{d,d},\mathcal{X}_{\omega_i}} \rb \rp \nonumber \\ + &\les \lb \max \left\{ 1,\frac{\inn\lp \tun_1^{N+1}\boxminus \aff_{\mymathbb{0}_{d,d},\mathcal{X}_{\omega_i}}\rp+1}{\inn\lp \mathsf{UE}^{N,h,q,\ve}_{n,\mathsf{G}_d}\rp+1}\right\}\rb\cdot \param \lp \mathsf{UE}^{N,h,q,\ve}_{n,\mathsf{G}_d}\rp \nonumber\\ + &=\param \lp \mathsf{UE}^{N,h,q,\ve}_{n,\mathsf{G}_d}\rp \nonumber\\ + &\les \frac{360q}{q-2} \lb \log_2 \lp \ve^{-1} \rp +q+1 \rb +324+ 48n\nonumber\\ &+24 \wid_{\hid\lp \mathsf{G}_d\rp}\lp \mathsf{G}_d\rp + 4\max \left\{\param \lp \mathsf{E}^{N,h,q,\ve}_{n}\rp, \param \lp \mathsf{G}_d\rp \right\} + \end{align} + + Finally, note that both $\aff_{W,b}$ and $\tun^d_n$ are exact and contribute nothing to the uncertainty. Thus $\mathsf{UEX}^{N,h,q,\ve}_{n,\mathsf{G}_d,\omega_i}$ has the same error bounds as $\mathsf{UE}^{N,h,q,\ve}_{n,\mathsf{G}_d}$. That is to say that: + \begin{align} + &\left| \exp \lp \int^T_t fds\rp \mathfrak{u}_d^T\lp x\rp - \real_{\rect}\lp \mathsf{UEX}^{N,h,q,\ve}_{n,\mathsf{G}_d,\omega_i}\rp \lp f\lp \lb \fx\rb_*\rp \frown x\rp \right|\nonumber\\ &\les 3\ve +2\ve \left| \mathfrak{u}_d^T\lp t,x\rp\right|^q+2\ve \left| \exp \lp \int^b_afdx\rp\right|^q + \ve \left| \exp \lp \int^b_afdx\rp - \mathfrak{e}\right|^q -\mathfrak{e}\mathfrak{u}_d^T\lp x \rp\nonumber + \end{align} +\end{proof} + +\begin{corollary}[R\textemdash, 2024, Approximants for Brownian Motion] +Let $t \in \lp 0,\infty\rp$ and $T \in \lp t,\infty\rp$. Let $\lp \Omega, \mathcal{F}, \mathbb{P}\rp$ be a probability space. Let $n,N\in \N$, and $h \in \lp 0, \infty \rp$. Let $\delta,\ve \in \lp 0,\infty \rp $, $q\in \lp 2,\infty \rp$, satisfy that $\delta = \ve \lp 2^{q-1} +1\rp^{-1}$. Let $f:[t, T] \rightarrow \R$ be continuous almost everywhere in $\lb t, T \rb$. Let it also be the case that $f = g \circ \fh$, where $\fh: \lb t,T\rb \rightarrow \R^d$, and $g: \R^d \rightarrow \R$. Let $t=t_0 \les t_1\les \cdots \les t_{N-1} \les t_N=T$ such that for all $i \in \{0,1,...,N\}$ it is the case that $h = \frac{T-t}{N}$, and $t_i = t_0+i\cdot h$ . Let $\mathbf{t} = \lb t_0 \: t_1\: \cdots t_N \rb$ and as such let $f\lp\lb \mathbf{t} \rb_{*,*} \rp = \lb f(t_0) \: f(t_1)\: \cdots \: f(t_N) \rb$. Let $\mathsf{E}^{N,h,q,\ve}_{n} \in \neu$ be the neural network given by: + \begin{align} + \mathsf{E}^{N,h,q,\ve}_{n} = \xpn^{q,\ve}_{n} \bullet \etr^{N,h} + \end{align} + Let $u_d \in C^{1,2} \lp [0,T] \times \R^d,\R\rp$ satisfy for all $d \in \N$, $t \in \lb 0,T\rb$, $x \in \R^d$ that: + \begin{align} + \lp \frac{\partial}{\partial t} u_d\rp \lp t,x\rp + \lp \nabla_x^2 u_d\rp \lp t,x \rp + \alpha_d\lp x\rp u_d \lp t,x\rp = 0 + \end{align} + Furthermore, let $\mathfrak{u}_d^T(x) = u_d(T,x)$. Let $\mathsf{G}_d \subsetneq \neu$ be the neural networks which instantiate as $\mathfrak{u}_d^T =\real_{\rect}\lp \mathsf{G}_d\rp \in C \lp \R^d, \R \rp$. + + + Let $\mathcal{W}^d: \lb 0, T \rb \times \Omega \rightarrow \R^d$, $d \in \N$ be standard Brownian motions, and let $\mathcal{X}^{d,t,x}: \lb t, T \rb \times \Omega \rightarrow \R^d$, $d \in \N$, $t \in \lb 0, T\rb$, $x\in \R^d$ be stochastic processes with continuous sample paths satisfying that for all $d \in \N$, $t\in \lb 0, T\rb$, $s \in \lb t, T \rb$, $x \in \R^d$ we have $\mathbb{P}$-a.s. that: + \begin{align} + \mathcal{X}^{d,t,x}_s = x + \int^t_s \sqrt{2} d\mathcal{W}^d_r + \end{align} + It is then the case that for all $d \in \N$, $t\in \lb 0,T \rb$, $x \in \R^d$ it holds that: + \begin{align}\label{fc-assertion} + u_d \lp t,x\rp = \mathbb{E} \lb \exp \lp \int^T_t \lp \alpha_d \circ \mathcal{X}^{d,t,x}_r\rp dr\rp u_d \lp T,\mathcal{X}_T^{d,t,x}\rp\rb + \end{align} + Let $\mathsf{UE}^{N,h,q,\ve}_{n,\mathsf{G}_d}$ be the neural network given as: + \begin{align} + \mathsf{UE}^{N,h,q,\ve}_{n, \mathsf{G}_d} = \prd^{q,\ve} \bullet \lb \mathsf{E}^{N,h,q,\ve}_{n} \DDiamond \mathsf{G}_d \rb + \end{align} + Finally let $\mathsf{UEX}^{N,h,q,\ve}_{n,\mathsf{G}_d,\omega_i}$ be given by: + \begin{align} + \mathsf{UEX}^{N,h,q,\ve}_{n,\mathsf{G}_d,\omega_i} = \mathsf{UE}^{N,h,q,\ve}_{n, \mathsf{G}_d} \bullet \lb \tun^{N+1}_1 \boxminus \aff_{\mymathbb{0}_{d,d},\mathcal{X}_{\omega_i}} \rb + \end{align} + It is then the case that for all $\fx = \{x_0,x_1,\hdots, x_N\} \in \R^{N+1}$ and $x \in \R^d$ that: + \item It is also the case that: + \begin{align} + &\left| \exp \lp \int^T_t fds\rp \mathfrak{u}_d^T\lp x\rp - \real_{\rect}\lp \mathsf{UEX}^{N,h,q,\ve}_{n,\mathsf{G}_d,\omega_i}\rp \lp f\lp \lb \fx\rb_*\rp \frown x\rp \right|\nonumber\\ &\les 3\ve +2\ve \left| \mathfrak{u}_d^T\lp t,x\rp\right|^q+2\ve \left| \exp \lp \int^b_afdx\rp\right|^q + \ve \left| \exp \lp \int^b_afdx\rp - \mathfrak{e}\right|^q -\mathfrak{e}\mathfrak{u}_d^T\lp x \rp\nonumber + \end{align} + Where, as per Lemma \ref{mathsfE}, $\mathfrak{e}$ is defined as: + \begin{align} + \left| \mathsf{E}^{N,h,q,\ve}_{n}\lp f\lp \lb \fx\rb_* \rp\rp - \exp \lp \int^b_afdx\rp\right| \les \mathfrak{e} + \end{align} +\end{corollary} + +\begin{proof} +Note that for a fixed $T \in \lp 0,\infty \rp$ it is the case that $u_d\lp t,x \rp \in C^{1,2}\lp \lb 0,T\rb \times \R^d, \R \rp$ projects down to a function $\mathfrak{u}_d^T\lp x\rp \in C^2\lp \R^d, \R\rp$. Furthermore given a probability space $\lp \Omega, \mathcal{F}, \mathbb{P}\rp$ and a stochastic process $\mathcal{X}^{d,t,x}: \lb t,T\rb \times \Omega \rightarrow \R^d$, for a fixed outcome space $\omega_i \in \Omega$ it is the case that $\mathcal{X}^{d,t,x}$ projects down to $\mathcal{X}^{d,t,x}_{\omega_i}: \lb t,T\rb \rightarrow \R^d$. Thus given $\alpha_d: \R^d \rightarrow \R$ that is infinitely often differentiable, we get that $\alpha_d\circ \mathcal{X}_{\omega_i}^{d,t,x}: \lb t,T\rb \rightarrow\R$. + + Taken together with Lemma \ref{UE-prop} with $x \curvearrowleft \mathcal{X}^{d,t,x}_{r,\omega}, f \curvearrowleft \alpha_d\circ \mathcal{X}_{\omega_i}^{d,t,x}$, $b \curvearrowleft T$, $a \curvearrowleft t$, and $\mathfrak{u}_d^T\lp x\rp \curvearrowleft u_d \lp T,\mathcal{X}^{d,t,x}_{\omega_i}\rp$, our error term is rendered as is rendered as: + \begin{align} + &\left| \exp \lp \int^T_t \lp \alpha_d \circ \mathcal{X}^{d,t,x}_{r,\omega_i} ds\rp \rp u_d\lp T,\mathcal{X}^{d,t,x}_{\omega_i}\rp - \real_{\rect}\lp \mathsf{UEX}^{N,h,q,\ve}_{n,\mathsf{G}_d,\omega_i}\rp \right|\nonumber\\ + &\les 3\ve +2\ve \left| u_d\lp T,\mathcal{X}_{r,\omega_i}^{d,t,x}\rp\right|^q+2\ve \left| \exp \lp \int^b_afdx\rp\right|^q + \ve \left| \exp \lp \int^b_afdx\rp - \mathfrak{e}\right|^q -\mathfrak{e}u_d\lp T,\mathcal{X}^{d,t,x}_{r,\omega_i} \rp\nonumber + \end{align} + This completes the proof of the lemma. +\end{proof} +\begin{remark} + Diagrammatically, this can be represented as: + +\begin{center} +\tikzset{every picture/.style={line width=0.75pt}} %set default line width to 0.75pt + +\begin{tikzpicture}[x=0.75pt,y=0.75pt,yscale=-1,xscale=1] +%uncomment if require: \path (0,475); %set diagram left start at 0, and has a height of 475 + +%Shape: Rectangle [id:dp5014556157804896] +\draw (328.6,130) -- (432.4,130) -- (432.4,170) -- (328.6,170) -- cycle ; +%Shape: Rectangle [id:dp6888177801681734] +\draw (324.2,209.6) -- (428,209.6) -- (428,249.6) -- (324.2,249.6) -- cycle ; +%Shape: Rectangle [id:dp5733062989346852] +\draw (182.2,129.2) -- (291.22,129.2) -- (291.22,169.2) -- (182.2,169.2) -- cycle ; +%Shape: Rectangle [id:dp3644206511797573] +\draw (177.2,206.8) -- (285.22,206.8) -- (285.22,246.8) -- (177.2,246.8) -- cycle ; +%Shape: Rectangle [id:dp872163975205418] +\draw (63,170.6) -- (133,170.6) -- (133,210.6) -- (63,210.6) -- cycle ; +%Straight Lines [id:da0837610283606276] +\draw (326.22,149.31) -- (293.8,148.83) ; +\draw [shift={(291.8,148.8)}, rotate = 0.85] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; +%Straight Lines [id:da03790523286924763] +\draw (180.22,149.31) -- (138.83,178.64) ; +\draw [shift={(137.2,179.8)}, rotate = 324.67] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; +%Straight Lines [id:da20598256940944215] +\draw (175.22,222.31) -- (137.12,199.62) ; +\draw [shift={(135.4,198.6)}, rotate = 30.77] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; +%Straight Lines [id:da23636707453012662] +\draw (61.22,190.31) -- (20.4,190.4) ; +\draw [shift={(18.4,190.4)}, rotate = 359.88] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; +%Straight Lines [id:da988244371641313] +\draw (613.22,147.31) -- (583.6,146.83) ; +\draw [shift={(581.6,146.8)}, rotate = 0.93] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; +%Straight Lines [id:da9656780010361206] +\draw (323.22,231.31) -- (290.8,230.83) ; +\draw [shift={(288.8,230.8)}, rotate = 0.85] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; +%Shape: Rectangle [id:dp5990472515240087] +\draw (476.6,131) -- (580.4,131) -- (580.4,171) -- (476.6,171) -- cycle ; +%Shape: Rectangle [id:dp7593448401492562] +\draw (475.6,211) -- (579.4,211) -- (579.4,251) -- (475.6,251) -- cycle ; +%Straight Lines [id:da9567070863735319] +\draw (614.22,233.31) -- (584.6,232.83) ; +\draw [shift={(582.6,232.8)}, rotate = 0.93] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; +%Straight Lines [id:da34491136618106866] +\draw (477.22,149.31) -- (436.6,148.82) ; +\draw [shift={(434.6,148.8)}, rotate = 0.69] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; +%Straight Lines [id:da2710750822166835] +\draw (473.22,229.31) -- (432.6,228.82) ; +\draw [shift={(430.6,228.8)}, rotate = 0.69] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; + +% Text Node +\draw (359.4,134.2) node [anchor=north west][inner sep=0.75pt] {$\mathsf{E}_{N,n,h,q,\varepsilon }^{\exp ,f}$}; +% Text Node +\draw (373,220.6) node [anchor=north west][inner sep=0.75pt] {$\mathsf{G}_d$}; +% Text Node +\draw (222.2,139.4) node [anchor=north west][inner sep=0.75pt] {$\mathsf{Tun}$}; +% Text Node +\draw (222,217) node [anchor=north west][inner sep=0.75pt] {$\mathsf{Tun}$}; +% Text Node +\draw (77.6,180.6) node [anchor=north west][inner sep=0.75pt] {$\mathsf{Prd}^{q,\varepsilon }$}; +% Text Node +\draw (620,223.2) node [anchor=north west][inner sep=0.75pt] {$\mathbb{R}^{d}$}; +% Text Node +\draw (616.4,136) node [anchor=north west][inner sep=0.75pt] {$\mathbb{R}^{N+1}$}; +% Text Node +\draw (506.2,140.4) node [anchor=north west][inner sep=0.75pt] {$\mathsf{Tun}_{1}^{N+1}$}; +% Text Node +\draw (490,225.4) node [anchor=north west][inner sep=0.75pt] {$\mathsf{Aff}_{\mymathbb{0}_{d,d} ,\mathcal{X}^{d,t,x}_{r,\omega_i}}$}; + + +\end{tikzpicture} +\end{center} +\end{remark} +\section{The $\mathsf{UES}$ network} +\begin{lemma}\label{lem:sm_sum} + Let $\nu_1,\nu_2,\hdots, \nu_n \in \neu$ such that for all $i \in \{1,2,\hdots, n\}$ it is the cast that $\out\lp \nu_i\rp = 1$, and it is also the case that $\dep \lp \nu_1 \rp = \dep \lp \nu_2 \rp = \cdots =\dep \lp \nu_n\rp$. Let $x_1 \in \R^{\inn\lp \nu_1\rp},x_2 \in \R^{\inn\lp \nu_2\rp},\hdots x_n \in \R^{\inn\lp \nu_n\rp}$ and $\fx \in \R^{\sum_{i=1}^n \inn \lp \nu_i\rp}$. It is then the case that we have that: + \begin{align} + \real_{\rect}\lp \sm_{n,1} \bullet \lb \boxminus_{i=1}^n \nu_i \rb \rp \lp \fx\rp = \sum^n_{i=1} \real_{\rect} \lp \nu_i\rp \lp x_i\rp + \end{align} +\end{lemma} +\begin{proof} + Throughout the proof let $x_1 \in \R^{\inn\lp \nu_1\rp}, x_2 \in \R^{\inn\lp \nu_2\rp},\hdots, x_n \in \R^{\inn \lp \nu_n\rp}$ and $\fx \in \R^{\sum_{i=1}^n \inn \lp \nu_i\rp}$ such that $\fx = x_1 \frown x_2 \frown \cdots \frown x_n$. + Observe that by Lemma \ref{comp_prop} we have that: + \begin{align} + \real_{\rect}\lp \sm_{n,1} \bullet \lb \boxminus_{i=1}^n \nu_i \rb \rp\lp \fx \rp = \real_{\rect}\lp \sm_{n,1}\rp \circ \real_{\rect}\lp \boxminus_{i=1}^n \nu_i\rp \lp \fx \rp + \end{align} + Note however that Defiition \ref{def:rlz} yields that $\real_{\rect} \lp \sm_{n,1}\rp\lp x\rp = \lb 1 \: 1\: \cdots \: 1\rb\cdot x + 0$ for $x \in \R^n$. On the other hand $\out \lp \boxminus_{i=1}^n\nu_i\rp =n$ and furthermore by Lemma \ref{inst_of_stk} it is the case for $\fx \in \R^{\sum^n_{i=1}\inn \lp \nu_i\rp}$ that $\real_{\rect}\lp \boxminus_{i=1}^n \nu_i\rp\lp \fx \rp = \real_{\rect} \lp \nu_1\rp \lp x_1\rp\frown \real_{\rect}\lp \nu_2\rp\lp x_2\rp \frown \cdots \frown \real_{\rect}\lp \nu_n\rp\lp x_n\rp$. Thus $\real_{\rect}\lp \sm_{n,1} \bullet \lb \boxminus_{i=1}^n \nu_i \rb \rp\lp \fx \rp$ is rendered as: + \begin{align} + \begin{bmatrix} + 1 & 1 & \cdots & 1 + \end{bmatrix} \begin{bmatrix} + \real_{\rect}\lp \nu_1\rp\lp x_1\rp \\ + \real_{\rect}\lp \nu_2\rp\lp x_2\rp \\ + \vdots \\ + \real_{\rect}\lp \nu_n\rp\lp x_n\rp + \end{bmatrix} + 0 = \sum^n_{i=1} \real_{\rect} \lp \nu_i\rp \lp x_i\rp + \end{align} + This completes the proof of the lemma. +\end{proof} + +\begin{lemma}\label{sum_of_errors_of_stacking} + Let $\nu_1,\nu_2,\hdots, \nu_n \in \neu$ with $\inn \lp \nu_1\rp = \inn \lp \nu_2\rp = \hdots =\inn \lp \nu_n\rp$ and $\out\lp \nu_1\rp = \out\lp \nu_2\rp= \hdots = \out\lp \nu_n\rp = 1$ such that for all $i \in \{1,2,\hdots,n\}$ it is the case that there exists $f_i \in C\lp \R^{\inn\lp \nu_1\rp},\R\rp$, and $\ve_i \in \lp 0, \infty \rp$, where for all $x_i \in \R^{\inn\lp \nu_1\rp}$, it is the case that $|\inst_{\rect}\lp \nu_i\rp\lp x_i\rp - f\lp x_i\rp|\les \ve_i$. It is then the case that for all $\fx \in \R^{n\cdot \inn\lp \nu_1\rp}$ and $x_i \in \R^{\inn\lp \nu_i\rp}$ with $\fx = x_1\frown x_2 \frown \cdots \frown x_n$ that: + \begin{align} + \left\|\inst_{\rect}\lp \boxminus_i^n\nu_i\rp \lp \fx \rp - \lb \frown_{i=1}^n f_i\rb\lp \fx \rp\right\|_1 \les \sum_{i=1}^n\ve_i + \end{align} +\end{lemma} + +\begin{proof} + We will prove this with induction. This is straight-forward for the case where we have just one neural network where for all $x \in \R^{\inn\lp \nu_1\rp}$ it is the case that $\left\|\inst_{\rect}\lp \nu_1\rp \lp x\rp - f\lp x\rp\right\|_1 \les \ve_1 = \sum_{i=1}^1\ve_i$. Suppose now, that, $\left\|\inst_{\rect}\lp \boxminus_i^n\nu_i\rp \lp \fx \rp - \lb \frown_{i=1}^n f_i\rb\lp \fx \rp\right\|_1 \les \sum_{i=1}^n\ve_i$ holds true for all cases upto and including $n$. Consider what happens when we have a triple, a function $f_{n+1}$, a neural network $\nu_{n+1}$, and $\ve_{n+1}\in \lp 0,\infty \rp$ with a maximum error over all $x \in \R^{\inn\lp \nu_1\rp}$ of $|f_{n+1}\lp x\rp - \inst_{\rect}\lp \nu_{n+1}\rp\lp x\rp | \les \ve_{n+1}$. Then Lemma \ref{inst_of_stk}, Corollary \ref{sum_of_frown_frown_of_sum}, and the triangle inequality tells us that: + \begin{align} + &\left\|\inst_{\rect}\lp \boxminus_i^{n+1}\nu_i\rp \lp \fx \rp - \lb \frown_{i=1}^{n+1} f_i\rb\lp \fx \rp\right\|_1 \nonumber \\ + &\les \left\|\inst_{\rect}\lp \boxminus_i^n\nu_i\rp \lp \fx \rp - \lb \frown_{i=1}^n f_i\rb\lp \fx \rp\right\|_1 + |f_{n+1}\lp x\rp - \inst_{\rect}\lp \nu_{n+1}\rp\lp x\rp | \nonumber \\ + &\les \sum_{i=1}^{n+1}\ve_i + \end{align} + This proves the inductive case and hence the Lemma. +\end{proof} + +\begin{lemma}[R\textemdash, 2024, Approximants for Brownian Motion] + +Let $t \in \lp 0,\infty\rp$ and $T \in \lp t,\infty\rp$. Let $\lp \Omega, \mathcal{F}, \mathbb{P}\rp$ be a probability space. Let $n,N\in \N$, and $h \in \lp 0, \infty \rp$. Let $\delta,\ve \in \lp 0,\infty \rp $, $q\in \lp 2,\infty \rp$, satisfy that $\delta = \ve \lp 2^{q-1} +1\rp^{-1}$. Let $f:[t, T] \rightarrow \R$ be continuous almost everywhere in $\lb t, T \rb$. Let it also be the case that $f = g \circ \fh$, where $\fh: \lb t,T\rb \rightarrow \R^d$, and $g: \R^d \rightarrow \R$. Let $t=t_0 \les t_1\les \cdots \les t_{N-1} \les t_N=T$ such that for all $i \in \{0,1,...,N\}$ it is the case that $h = \frac{T-t}{N}$, and $t_i = t_0+i\cdot h$ . Let $\mathbf{t} = \lb t_0 \: t_1\: \cdots t_N \rb$ and as such let $f\lp\lb \mathbf{t} \rb_{*,*} \rp = \lb f(t_0) \: f(t_1)\: \cdots \: f(t_N) \rb$. Let $u_d \in C \lp \R^d,\R\rp$ satisfy for all $d \in \N$, $t \in \lb 0,T\rb$, $x \in \R^d$ that: + \begin{align} + \lp \frac{\partial}{\partial t} u_d\rp \lp t,x\rp + \lp \nabla_x^2 u_d\rp \lp t,x \rp + \alpha_d\lp x\rp u_d \lp t,x\rp = 0 + \end{align} + Furthermore, let $\mathfrak{u}_d^T(x) = u_d(T,x)$. Let $\mathsf{G}_d \subsetneq \neu$ be the neural network which instantiates as $\mathfrak{u}_d^T =\real_{\rect}\lp \mathsf{G}_d\rp \in C \lp \R^d, \R \rp$. + + Let $\mathcal{W}^d: \lb 0, T \rb \times \Omega \rightarrow \R^d$, $d \in \N$ be standard Brownian motions, and let $\mathcal{X}^{d,t,x}: \lb t, T \rb \times \Omega \rightarrow \R^d$, $d \in \N$, $t \in \lb 0, T\rb$, $x\in \R^d$ be stochastic processes with continuous sample paths satisfying that for all $d \in \N$, $t\in \lb 0, T\rb$, $s \in \lb t, T \rb$, $x \in \R^d$ we have $\mathbb{P}$-a.s, that: + \begin{align} + \mathcal{X}^{d,t,x}_s = x + \int^t_s \sqrt{2} d\mathcal{W}^d_r + \end{align} + It is then the case that for all $d \in \N$, $t\in \lb 0,T \rb$, $x \in \R^d$ it holds that: + \begin{align}\label{fc-assertion} + u_d \lp t,x\rp = \mathbb{E} \lb \exp \lp \int^T_t \lp \alpha_d \circ \mathcal{X}^{d,t,x}_r\rp dr\rp u_d \lp T,\mathcal{X}_T^{d,t,x}\rp\rb + \end{align} + Let $\mathsf{E}^{N,h,q,\ve}_{n} \subsetneq \neu$ be neural networks given by: + \begin{align} + \mathsf{E}^{N,h,q,\ve}_{n} = \xpn^{q,\ve}_{n} \bullet \etr^{N,h} + \end{align} + Furthermore, let $\mathsf{G}_d \in \neu \subsetneq \neu$ be neural networks which instantiate as $u_d =\real_{\rect}\lp \mathsf{G}_d\rp \in C \lp \R^d, \R \rp$. + + Furthermore, let $\mathsf{UE}^{N,h,q,\ve}_{n, \mathsf{G}_d}\subsetneq \neu$ be neural networks given by: + \begin{align} + \mathsf{UE}^{N,h,q,\ve}_{n,\mathsf{G}_d} = \prd^{q,\ve} \bullet \lb \mathsf{E}^{N,h,q,\ve}_{n,h,q,\ve} \DDiamond \mathsf{G}_d \rb + \end{align} + Futhermore, let $\mathsf{UEX}^{N,h,q,\ve}_{n,\mathsf{G}_d,\omega_i} \subsetneq \neu$ be neural networks given by: + \begin{align} + \mathsf{UEX}^{N,h,q,\ve}_{n,\mathsf{G}_d,\omega_i} = \mathsf{UE}^{N,h,q,\ve}_{n, \mathsf{G}_d} \bullet \lb \tun^{N+1}_1 \boxminus \aff_{\mymathbb{0}_{d,d},\mathcal{X}_{\omega_i}} \rb + \end{align} + Finally let $\mathsf{UES}^{N,h,q,\ve}_{n,\mathsf{G}_d,\Omega, \fn} \subsetneq \neu$ be neural networks which, for $\omega_i \in \Omega$, is given as: + \begin{align} + \mathsf{UES}^{N,h,q,\ve}_{n, \mathsf{G}_d, \Omega, \fn} = \frac{1}{\mathfrak{n}} \triangleright\lp \sm_{\mathfrak{n},1}\bullet\lb \boxminus_{i=1}^{\mathfrak{n}} \mathsf{UEX}^{N,h,q,\ve}_{n,\mathsf{G}_d, \omega_i}\rb\rp + \end{align} + + It is then the case that for all $\fX \in \R^{\fn \lp N+1\rp} \times \R^{\fn d}$: + \begin{enumerate}[label = (\roman*)] + \item $\real_{\rect} \lp \mathsf{UES}^{N,h,q,\ve}_{n,\mathsf{G}_d, \Omega, \fn} \rp \in C \lp \R^{\mathfrak{n}\lp N+1 \rp}\times \R^{\mathfrak{n} d}, \R \rp$ + \item $\dep \lp \mathsf{UES}^{N,h,q,\ve}_{n,\mathsf{G}_d, \Omega, \fn}\rp \les \begin{cases} + \frac{q}{q-2} \lb \log_2 \lp \ve^{-1}\rp +q \rb +\dep \lp \mathsf{G}_d\rp-1 &:n = 0\\ + \frac{q}{q-2} \lb \log_2 \lp \ve^{-1}\rp +q \rb +\max\left\{\dep \lp \mathsf{E}^{N,h,q,\ve}_{n}\rp,\dep \lp \mathsf{G}_d\rp\right\}-1 &:n \in \N\\ + \end{cases}$ + \item It is also the case that:\begin{align} + \param \lp \mathsf{UES}^{N,h,q,\ve}_{n,\mathsf{G}_d,\Omega, \fn}\rp &\les \param \lp \prd^{q,\ve}\rp + 2\lp\max \left\{\param \lp \mathsf{E}^{N,h,q,\ve}_{n}\rp, \param \lp \mathsf{G}_d\rp \right\}\rp^2 \nonumber\\ + &+ 8 \max\left\{\lp 1+4n\rp, \wid_{\hid \lp \mathsf{G}_d\rp} \lp \mathsf{G}_d\rp \right\}\nonumber + \end{align} + \item It is also the case that: + \begin{align} + &\left| \mathbb{E} \lb \exp \lp \int^T_t f\lp \mathcal{X}^{d,t,x}_{r}\rp ds\rp u_d\lp T,\mathcal{X}^{d,t,x}_{r,\omega_i}\rp \rb - \real_{\rect}\lp \mathsf{UES}^{N,h,q,\ve}_{n,\mathsf{G}_d,\Omega,\fn}\rp\right| \\ + &\les 3\ve +2\ve \left| \fu^T_d\lp x\rp\right|^q+2\ve \left| \exp \lp \int^b_afdx\rp\right|^q + \ve \left| \exp \lp \int^b_afdx\rp - \mathfrak{e}\right|^q -\mathfrak{e}\fu^T_d\lp x \rp\nonumber + \end{align} + Where, as per Lemma \ref{mathsfE}, $\mathfrak{e}$ is defined as: + \begin{align} + \left| \mathsf{E}^{N,h,q,\ve}_{n} - \exp \lp \int^b_afdx\rp\right| \les \fe + \end{align} + \end{enumerate} +\end{lemma} +\begin{proof} + Note that for all $i \in \{ 1,2,\hdots, \mathfrak{n}\}$, Lemma \ref{UEX} tells us that $\real_{\rect}\lp \mathsf{UEX}^{N,h,q,\ve}_{n,\mathsf{G}_d,\omega_i}\rp \in C\lp \R^{N+1} \times \R^d, \R\rp$. Lemma \ref{nn_sum_cont} and Lemma \ref{nn_sum_is_sum_nn}, thus tells us that $\real_{\rect}\lp \lp \bigoplus_{i=1}^{\mathfrak{n}}\lb \mathsf{UEX}^{N,h,q,\ve}_{n,\mathsf{G}_d,\omega_i}\rb\rp\rp = \sum_{i=1}^\mathfrak{n}\lb \real_{\rect}\lp \mathsf{UEX}^{N,h,q,\ve}_{n,\mathsf{G}_d,\omega_i}\rp\rb $. The sum of continuous functions is continuous. Note next that $\frac{1}{\mathfrak{n}}\triangleright$ is an affine neural network, and hence, by Lemma \ref{aff_prop}, must be continuous. + + Then Lemmas \ref{comp_prop}, \ref{5.3.4}, and the fact that by Lemma \ref{UEX} each of the individual stacked $\mathsf{UEX}^{N,h,q,\ve}_{n,\mathsf{G}_d,\omega_i}$ neural networks is continuous then ensures us that it must therefore be the case that: $\real_{\rect} \lp \mathsf{UES}^{N,h,q,\ve}_{n,\mathsf{G}_d, \Omega,\fn}\rp \in C \lp \R^{\mathfrak{n}\lp N+1 \rp}\times \R^{\mathfrak{n} d}, \R \rp$. This proves Item (i). + + Next note that by construction each $\mathsf{UEX}^{N,h,q,\ve}_{n,\mathsf{G}_d,\omega_i}$ has the same depth, indeed for each $i$ the only thing different for each of the $\mathsf{UEX}^{N,h,q,\ve}_{n,\mathsf{G}_d,\omega_i}$ is the parameters themselves and not the count or depth or layer architecture. Note that $\dep \lp \sm_{\mathfrak{n},1}\rp = \dep \lp \frac{1}{\fn} \triangleright\rp = \dep \lp \aff_{\frac{1}{\mathfrak{n}},0}\rp = 1$. + + Whence by Lemma \ref{comp_prop} it is the case that $\dep \lp \mathsf{UES}^{N,h,q,\ve}_{n,\mathsf{G}_d,\Omega,\fn} \rp = \dep \lp \mathsf{UEX}^{N,h,q,\ve}_{n,\mathsf{G}_d,\omega_i}\rp$. This then proves Item (ii). + + Next, observe that each of the $\mathsf{UEX}$ networks has the same architecture by construction. Corollary \ref{cor:sameparal} then yields that: + \begin{align} + \param \lp \boxminus_{i=1}^{\mathfrak{n}} \mathsf{UEX}^{N,h,q,\ve}_{n,\mathsf{G}_d,\omega_i} \rp \les \mathfrak{n}^2\cdot \param \lp \mathsf{UEX}^{N,h,q,\ve}_{n,\mathsf{G}_d,\omega_i}\rp + \end{align} + Note for instance also that by Remark \ref{param_of_aff}, it is the case that $\param\lp \sm_{\mathfrak{n},1} \rp = \mathfrak{n}+1$. Furthermore, since the output of the $\sm$ neural network has length one, by Definition \ref{slm} it is the case that $\param\lp \frac{1}{\mathfrak{n}}\triangleright\rp = 2$. Then Corollary \ref{affcor} leads us to conclude that: + \begin{align} + &\param \lp \sm_{\mathfrak{n},1}\bullet\lb \boxminus_{i=1}^{\mathfrak{n}} \mathsf{UEX}^{N,h,q,\ve}_{n,\mathsf{G}_d,\omega_i}\rb\rp \les \param \lp \boxminus_{i=1}^{\mathfrak{n}} \mathsf{UEX}^{N,h,q,\ve}_{n,\mathsf{G}_d,\omega_i} \rp \nonumber\\ + &\les \mathfrak{n}^2\cdot \param \lp \mathsf{UEX}^{N,h,q,\ve}_{n,\mathsf{G}_d,\omega_i}\rp \nonumber\\ + &\les \fn^2 \cdot \lb \frac{360q}{q-2} \lb \log_2 \lp \ve^{-1} \rp +q+1 \rb +324+ 48n\right. \nonumber\\ &\left. +24 \wid_{\hid\lp \mathsf{G}_d\rp}\lp \mathsf{G}_d\rp + 4\max \left\{\param \lp \mathsf{E}^{N,h,q,\ve}_{n}\rp, \param \lp \mathsf{G}_d\rp \right\} \rb + \end{align} + and therefore that: + \begin{align} + &\param \lp \frac{1}{\mathfrak{n}} \triangleright\lp \sm_{\mathfrak{n},1}\bullet\lb \boxminus_{i=1}^{\mathfrak{n}} \mathsf{UEX}^{N,h,q,\ve}_{n,\mathsf{G}_d, \omega_i}\rb\rp \rp \nonumber\\ + &\les \param \lp \sm_{\mathfrak{n},1}\bullet\lb \boxminus_{i=1}^{\mathfrak{n}} \mathsf{UEX}^{N,h,q,\ve}_{n,\mathsf{G}_d,\omega_i}\rb\rp \nonumber\\ + &\les \param \lp \boxminus_{i=1}^{\mathfrak{n}} \mathsf{UEX}^{N,h,q,\ve}_{n,\mathsf{G}_d,\omega_i} \rp \nonumber\\ + &\les \mathfrak{n}^2\cdot \param \lp \mathsf{UEX}^{N,h,q,\ve}_{n,\mathsf{G}_d,\omega_i}\rp \nonumber \\ + &\les \fn^2 \cdot \lb \frac{360q}{q-2} \lb \log_2 \lp \ve^{-1} \rp +q+1 \rb +324+ 48n\right. \nonumber\\ &\left. +24 \wid_{\hid\lp \mathsf{G}_d\rp}\lp \mathsf{G}_d\rp + 4\max \left\{\param \lp \mathsf{E}^{N,h,q,\ve}_{n}\rp, \param \lp \mathsf{G}_d\rp \right\} \rb + \end{align} + Now observe that by the triangle inequality, we have that: + \begin{align} + &\left| \E \lb \exp \lp \int^T_t f\lp \mathcal{X}^{d,t,x}_{r,\Omega}\rp ds\rp u_d^T\lp \mathcal{X}^{d,t,x}_{r,\Omega}\rp\rb - \real_{\rect}\lp \mathsf{UES}^{N,h,q,\ve}_{n,\mathsf{G}_d,\Omega, \fn}\rp \right| \nonumber \\ + &=\left| \E \lb \exp \lp \int^T_t f\lp \mathcal{X}^{d,t,x}_{r,\omega_i}\rp ds\rp u_d^T\lp \mathcal{X}^{d,t,x}_{r,\omega_i}\rp \rb - \inst_{\rect}\lb \frac{1}{\mathfrak{n}} \triangleright\lp \sm_{\mathfrak{n},1}\bullet\lb \boxminus_{i=1}^{\mathfrak{n}} \mathsf{UEX}^{N,h,q,\ve}_{n,\mathsf{G}_d,\omega_i}\rb\rp \rb\right| \nonumber\\ + &\les \left| \E \lb \exp \lp \int^T_t f\lp \mathcal{X}^{d,t,x}_{r,\omega_i}\rp ds\rp u_d^T\lp \mathcal{X}^{d,t,x}_{r,\omega_i}\rp \rb - \frac{1}{\mathfrak{n}}\lb \sum^{\mathfrak{n}}_{i=1}\lb \exp \lp \int_t^T f\lp \mathcal{X}^{d,t,x}_{r,\omega_i}\rp ds \cdot u_d^T\lp \mathcal{X}^{d,t,x}_{r,\omega_i}\rp\rp\rb \rb \right|\nonumber \\ + &+\left| \frac{1}{\mathfrak{n}}\lb \sum^{\mathfrak{n}}_{i=1}\lb \exp \lp \int_t^T f\lp \mathcal{X}^{d,t,x}_{r,\omega_i}\rp ds \cdot u_d^T\lp \mathcal{X}^{d,t,x}_{r,\omega_i}\rp\rp\rb \rb - \real_{\rect}\lb \frac{1}{\mathfrak{n}} \triangleright\lp \sm_{\mathfrak{n},1}\bullet\lb \boxminus_{i=1}^{\mathfrak{n}} \mathsf{UEX}^{N,h,q,\ve}_{n,\mathsf{G}_d,\omega_i}\rb\rp \rb\right| \nonumber \\ + \end{align} + Observe that by the triangle inequality, the absolute homogeneity condition for norms, the fact that the Brownian motions are independent of each other, Lemma \ref{lem:sm_sum}, the fact that $\mathfrak{n}\in \N$, the fact that the upper limit of error remains bounded by the same bound for all $\omega_i \in \Omega$, and Lemma \ref{sum_of_errors_of_stacking}, then renders the second summand as: + \begin{align} + &\left| \frac{1}{\mathfrak{n}}\lb \sum^{\mathfrak{n}}_{i=1}\lb \exp \lp \int_t^T f\lp \mathcal{X}^{d,t,x}_{r,\omega_i}\rp ds \cdot u_d^T\lp \mathcal{X}^{d,t,x}_{r,\omega_i}\rp\rp\rb \rb - \real_{\rect}\lb \frac{1}{\mathfrak{n}} \triangleright\lp \sm_{\mathfrak{n},1}\bullet\lb \boxminus_{i=1}^{\mathfrak{n}} \mathsf{UEX}^{N,h,q,\ve}_{n,\mathsf{G}_d,\omega_i}\rb\rp\rb\right| \nonumber \\ + &\les \left|\frac{1}{\mathfrak{n}}\lb \sum^{\mathfrak{n}}_{i=1} \exp \lp \int_t^T f\lp \mathcal{X}^{d,t,x}_{r,\omega_i}\rp ds \cdot u_d^T\lp \mathcal{X}^{d,t,x}_{r,\omega_i}\rp\rp \rb - \frac{1}{\mathfrak{n}}\lb \sum^{\mathfrak{n}}_{i=1}\lp \real_{\rect}\lb \mathsf{UEX}^{N,h,q,\ve}_{n,\mathsf{G}_d,\omega_i}\rb\rp \rb \right| \nonumber \\ + &\les \cancel{\frac{1}{\mathfrak{n}} \sum^{\mathfrak{n}}_{i=1}}\left| \exp \lp \int^T_tf\lp \mathcal{X}^{d,t,x}_{r,\omega_i}\rp ds \cdot u^T_d\lp \mathcal{X}^{d,t,x}_{r,\omega_i}\rp\rp - \mathsf{UEX}^{N,h,q,\ve}_{n,\mathsf{G}_d,\omega_i}\right| \nonumber\\ + &\les \left| \exp \lp \int^T_tf\lp \mathcal{X}^{d,t,x}_{r,\omega_i}\rp ds \cdot u^T_d\lp \mathcal{X}^{d,t,x}_{r,\omega_i}\rp\rp - \mathsf{UEX}^{N,h,q,\ve}_{n,\mathsf{G}_d,\omega_i}\right| \nonumber\\ + \end{align} +% Note that by Lemma \ref{iobm} each of the $\mathcal{X}^{d,t,x}_{r,\omega_i}$ are pairwise independent of each other for all $i \in \{1,2,\hdots,\mathfrak{n}\}$. Note also that by Definition \ref{def:brown_motion} it is the case, for all $\omega_i \in \Omega$ that $\mathcal{X}^{d,t,x}_{T,\omega_i} \sim \norm \lp \mymathbb{0}_d, \diag_d(T) \rp$ + +Note for the first summand that it is in $\mathcal{O}\lp \frac{1}{\sqrt{\mathfrak{n}}}\rp$. Notice that both $f$ and $\fu^T_d$ are continuous functions for $d\in \N$. Note also that $F:[t,T] \rightarrow \R$ defined as: +\begin{align} + F(\fx) \coloneqq \int_t^\ft f\lp\fx\rp dx +\end{align} +is continuous on $\lb t,T\rb$. Thus , notice that \cite[Theorem~2.1]{rio_moment_2009} with $k$ + +\end{proof} +\begin{remark} + Note that diagrammatically, this can be represented as in figure below. +\begin{figure}[h] +\begin{center} + + +\tikzset{every picture/.style={line width=0.75pt}} %set default line width to 0.75pt + +\begin{tikzpicture}[x=0.75pt,y=0.75pt,yscale=-1,xscale=1] +%uncomment if require: \path (0,475); %set diagram left start at 0, and has a height of 475 + +%Shape: Rectangle [id:dp5014556157804896] +\draw (414.07,18) -- (489.31,18) -- (489.31,58) -- (414.07,58) -- cycle ; +%Shape: Rectangle [id:dp6888177801681734] +\draw (410.88,97.6) -- (486.12,97.6) -- (486.12,137.6) -- (410.88,137.6) -- cycle ; +%Shape: Rectangle [id:dp5733062989346852] +\draw (307.95,17.2) -- (386.97,17.2) -- (386.97,57.2) -- (307.95,57.2) -- cycle ; +%Shape: Rectangle [id:dp3644206511797573] +\draw (304.33,94.8) -- (382.62,94.8) -- (382.62,134.8) -- (304.33,134.8) -- cycle ; +%Shape: Rectangle [id:dp872163975205418] +\draw (221.55,58.6) -- (272.29,58.6) -- (272.29,98.6) -- (221.55,98.6) -- cycle ; +%Straight Lines [id:da0837610283606276] +\draw (412.34,37.31) -- (389.39,36.84) ; +\draw [shift={(387.39,36.8)}, rotate = 1.18] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; +%Straight Lines [id:da03790523286924763] +\draw (306.51,37.31) -- (276.76,66.4) ; +\draw [shift={(275.33,67.8)}, rotate = 315.64] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; +%Straight Lines [id:da20598256940944215] +\draw (302.89,110.31) -- (275.57,87.87) ; +\draw [shift={(274.03,86.6)}, rotate = 39.41] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; +%Straight Lines [id:da23636707453012662] +\draw (220.26,78.31) -- (158.08,208.2) ; +\draw [shift={(157.22,210)}, rotate = 295.58] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; +%Straight Lines [id:da988244371641313] +\draw (620.37,35.31) -- (599.46,34.84) ; +\draw [shift={(597.46,34.8)}, rotate = 1.28] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; +%Straight Lines [id:da9656780010361206] +\draw (410.17,119.31) -- (387.22,118.84) ; +\draw [shift={(385.22,118.8)}, rotate = 1.18] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; +%Shape: Rectangle [id:dp5990472515240087] +\draw (521.35,19) -- (596.59,19) -- (596.59,59) -- (521.35,59) -- cycle ; +%Shape: Rectangle [id:dp7593448401492562] +\draw (520.62,99) -- (595.86,99) -- (595.86,139) -- (520.62,139) -- cycle ; +%Straight Lines [id:da9567070863735319] +\draw (621.1,121.31) -- (600.18,120.84) ; +\draw [shift={(598.18,120.8)}, rotate = 1.28] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; +%Straight Lines [id:da34491136618106866] +\draw (521.79,37.31) -- (492.9,36.83) ; +\draw [shift={(490.9,36.8)}, rotate = 0.95] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; +%Straight Lines [id:da2710750822166835] +\draw (518.9,117.31) -- (490,116.83) ; +\draw [shift={(488,116.8)}, rotate = 0.95] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; +%Shape: Rectangle [id:dp4225077152307761] +\draw (411.94,336.2) -- (487.18,336.2) -- (487.18,376.2) -- (411.94,376.2) -- cycle ; +%Shape: Rectangle [id:dp48435670173821677] +\draw (408.75,415.8) -- (483.99,415.8) -- (483.99,455.8) -- (408.75,455.8) -- cycle ; +%Shape: Rectangle [id:dp5952744453577997] +\draw (305.82,335.4) -- (384.85,335.4) -- (384.85,375.4) -- (305.82,375.4) -- cycle ; +%Shape: Rectangle [id:dp6181988596892963] +\draw (302.2,413) -- (380.5,413) -- (380.5,453) -- (302.2,453) -- cycle ; +%Shape: Rectangle [id:dp9820252625472595] +\draw (219.42,376.8) -- (270.16,376.8) -- (270.16,416.8) -- (219.42,416.8) -- cycle ; +%Straight Lines [id:da765112058084852] +\draw (410.22,355.51) -- (387.27,355.04) ; +\draw [shift={(385.27,355)}, rotate = 1.18] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; +%Straight Lines [id:da26764939993756853] +\draw (304.39,355.51) -- (274.63,384.6) ; +\draw [shift={(273.2,386)}, rotate = 315.64] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; +%Straight Lines [id:da6343603585365204] +\draw (300.76,428.51) -- (273.45,406.07) ; +\draw [shift={(271.9,404.8)}, rotate = 39.41] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; +%Straight Lines [id:da27316676658688366] +\draw (218.13,396.51) -- (159.98,255.85) ; +\draw [shift={(159.22,254)}, rotate = 67.54] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; +%Straight Lines [id:da020711570177255778] +\draw (618.25,353.51) -- (597.33,353.04) ; +\draw [shift={(595.33,353)}, rotate = 1.28] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; +%Straight Lines [id:da6695151946318433] +\draw (408.04,437.51) -- (385.09,437.04) ; +\draw [shift={(383.09,437)}, rotate = 1.18] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; +%Shape: Rectangle [id:dp8949497804388328] +\draw (519.22,337.2) -- (594.46,337.2) -- (594.46,377.2) -- (519.22,377.2) -- cycle ; +%Shape: Rectangle [id:dp5973188318360951] +\draw (518.5,417.2) -- (593.74,417.2) -- (593.74,457.2) -- (518.5,457.2) -- cycle ; +%Straight Lines [id:da5337112650540083] +\draw (618.97,439.51) -- (598.05,439.04) ; +\draw [shift={(596.05,439)}, rotate = 1.28] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; +%Straight Lines [id:da529716387031774] +\draw (519.67,355.51) -- (490.78,355.03) ; +\draw [shift={(488.78,355)}, rotate = 0.95] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; +%Straight Lines [id:da32602094038824536] +\draw (516.77,435.51) -- (487.88,435.03) ; +\draw [shift={(485.88,435)}, rotate = 0.95] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; +%Shape: Rectangle [id:dp8573026361650609] +\draw (114,212) -- (184,212) -- (184,252) -- (114,252) -- cycle ; +%Straight Lines [id:da6701511370068154] +\draw (215.22,160) -- (177.42,210.4) ; +\draw [shift={(176.22,212)}, rotate = 306.87] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; +%Straight Lines [id:da29581665277649916] +\draw (213.22,298) -- (178.45,253.58) ; +\draw [shift={(177.22,252)}, rotate = 51.95] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; +%Shape: Rectangle [id:dp4409272497202792] +\draw (42.22,216) -- (90,216) -- (90,256) -- (42.22,256) -- cycle ; +%Straight Lines [id:da3332704083241207] +\draw (114.22,234) -- (93.22,234) ; +\draw [shift={(91.22,234)}, rotate = 360] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; +%Straight Lines [id:da09401023948571274] +\draw (40.22,237) -- (19.22,237) ; +\draw [shift={(17.22,237)}, rotate = 360] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; + +% Text Node +\draw (428.28,22.2) node [anchor=north west][inner sep=0.75pt] {$\mathsf{E}_{N,n,h,q,\varepsilon }^{\exp ,f}$}; +% Text Node +\draw (444.46,108.6) node [anchor=north west][inner sep=0.75pt] {$\mathsf{G}_d$}; +% Text Node +\draw (332.68,27.4) node [anchor=north west][inner sep=0.75pt] {$\mathsf{Tun}$}; +% Text Node +\draw (332.53,105) node [anchor=north west][inner sep=0.75pt] {$\mathsf{Tun}$}; +% Text Node +\draw (226.08,68.6) node [anchor=north west][inner sep=0.75pt] {$\mathsf{Prd}^{q,\varepsilon }$}; +% Text Node +\draw (622.13,111.2) node [anchor=north west][inner sep=0.75pt] {$\mathbb{R}^{d}$}; +% Text Node +\draw (617.18,24) node [anchor=north west][inner sep=0.75pt] {$\mathbb{R}^{N+1}$}; +% Text Node +\draw (535.1,28.4) node [anchor=north west][inner sep=0.75pt] {$\mathsf{Tun}_{1}^{N+1}$}; +% Text Node +\draw (534.54,108.4) node [anchor=north west][inner sep=0.75pt] {$\mathsf{Aff}_{\mathbb{0}}{}_{_{d}{}_{,}{}_{d} ,\mathcal{X}}$}; +% Text Node +\draw (426.15,340.4) node [anchor=north west][inner sep=0.75pt] {$\mathsf{E}_{N,n,h,q,\varepsilon }^{\exp ,f}$}; +% Text Node +\draw (442.34,426.8) node [anchor=north west][inner sep=0.75pt] {$\mathsf{G}_d$}; +% Text Node +\draw (330.55,345.6) node [anchor=north west][inner sep=0.75pt] {$\mathsf{Tun}$}; +% Text Node +\draw (330.41,423.2) node [anchor=north west][inner sep=0.75pt] {$\mathsf{Tun}$}; +% Text Node +\draw (223.95,386.8) node [anchor=north west][inner sep=0.75pt] {$\mathsf{Prd}^{q,\varepsilon }$}; +% Text Node +\draw (620,429.4) node [anchor=north west][inner sep=0.75pt] {$\mathbb{R}^{d}$}; +% Text Node +\draw (615.05,342.2) node [anchor=north west][inner sep=0.75pt] {$\mathbb{R}^{N+1}$}; +% Text Node +\draw (532.97,346.6) node [anchor=north west][inner sep=0.75pt] {$\mathsf{Tun}_{1}^{N+1}$}; +% Text Node +\draw (532.41,426.6) node [anchor=north west][inner sep=0.75pt] {$\mathsf{Aff}_{\mathbb{0}}{}_{_{d}{}_{,}{}_{d} ,\mathcal{X}}$}; +% Text Node +\draw (444,215.4) node [anchor=north west][inner sep=0.75pt] [font=\Large] {$\vdots $}; +% Text Node +\draw (553,216.4) node [anchor=north west][inner sep=0.75pt] [font=\Large] {$\vdots $}; +% Text Node +\draw (336,215.4) node [anchor=north west][inner sep=0.75pt] [font=\Large] {$\vdots $}; +% Text Node +\draw (619,214.4) node [anchor=north west][inner sep=0.75pt] [font=\Large] {$\vdots $}; +% Text Node +\draw (234,217.4) node [anchor=north west][inner sep=0.75pt] [font=\Large] {$\vdots $}; +% Text Node +\draw (132,221.4) node [anchor=north west][inner sep=0.75pt] {$\mathsf{Sum}$}; +% Text Node +\draw (202,127.4) node [anchor=north west][inner sep=0.75pt] {$\vdots $}; +% Text Node +\draw (202,312.4) node [anchor=north west][inner sep=0.75pt] {$\vdots $}; +% Text Node +\draw (56,225.4) node [anchor=north west][inner sep=0.75pt] {$\frac{1}{\mathfrak{n}} \rhd $}; + + +\end{tikzpicture} +\end{center} +\caption{Neural network diagram for the $\mathsf{UES}$ network.} +\end{figure} +\end{remark} +\begin{remark} + It may be helpful to think of this as a very crude form of ensembling. +\end{remark} + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Dissertation_unzipped/appendices.pdf b/Dissertation_unzipped/appendices.pdf new file mode 100644 index 0000000..77d6f28 Binary files /dev/null and b/Dissertation_unzipped/appendices.pdf differ diff --git a/Dissertation_unzipped/appendices.tex b/Dissertation_unzipped/appendices.tex new file mode 100644 index 0000000..b7f56de --- /dev/null +++ b/Dissertation_unzipped/appendices.tex @@ -0,0 +1,69 @@ + +\section{Code Listings} + +Parts of this code have been released on \texttt{CRAN} under the package name \texttt{nnR}, and can be found in \cite{nnR-package}, with the corresponding repository being found at \cite{Rafi_nnR_2024}: + +\lstinputlisting[language = R, style = rstyle, label = nn_creator, caption = {R code for neural network generation}]{"/Users/shakilrafi/R-simulations/nn_creator.R"} + +\lstinputlisting[language = R, style = rstyle, label = aux_fun, caption = {R code for auxilliary functions}]{"/Users/shakilrafi/R-simulations/aux_fun.R"} + +\lstinputlisting[language = R, style = rstyle, label = activations, caption = {R code for activation functions ReLU and Sigmoid}]{"/Users/shakilrafi/R-simulations/activations.R"} + +\lstinputlisting[language = R, style = rstyle, label = instantiation, caption = {R code for realizations}]{"/Users/shakilrafi/R-simulations/instantiation.R"} + +\lstinputlisting[language = R, style = rstyle, label = stk, caption = {R code for parallelizing two neural networks}]{"/Users/shakilrafi/R-simulations/stacking.R"} + + +\lstinputlisting[language = R, style = rstyle, label = Aff, caption = {R code for affine neural networks}]{"/Users/shakilrafi/R-simulations/Aff.R"} + + +\lstinputlisting[language = R, style = rstyle, label = comp, caption = {R code for composition of two neural networks}]{"/Users/shakilrafi/R-simulations/comp.R"} + + +\lstinputlisting[language = R, style = rstyle, label = scalar_mult, caption = {R code for scalar multiplication}]{"/Users/shakilrafi/R-simulations/scalar_mult.R"} + + +\lstinputlisting[language = R, style = rstyle, label = nn_sum, caption = {R code for sum of two neural networks}]{"/Users/shakilrafi/R-simulations/nn_sum.R"} + + +\lstinputlisting[language = R, style = rstyle, label = i, caption = {R code for $\mathfrak{i}$}]{"/Users/shakilrafi/R-simulations/i.R"} +\lstinputlisting[language = R, style = rstyle, label = Id, caption = {R code for $\mathsf{Id}$ neural networks}]{"/Users/shakilrafi/R-simulations/Id.R"} +\lstinputlisting[language = R, style = rstyle, label = Tun, caption = {R code for $\tun$}]{"/Users/shakilrafi/R-simulations/Tun.R"} + + +\lstinputlisting[language = R, style = rstyle, label = Phi_k, caption = {R code for $\Phi_k$}]{"/Users/shakilrafi/R-simulations/Phi_k.R"} +\includegraphics{"/Users/shakilrafi/R-simulations/Phi_k_properties/Phi_k_diff.png"} + + +\lstinputlisting[language = R, style = rstyle, label = Phi_k_properties, caption = {R code for simulations involving $\Phi_k$}]{"/Users/shakilrafi/R-simulations/Phi_k_properties.R"} + + +\lstinputlisting[language = R, style = rstyle, label = Phi, caption = {R code for $\Phi$}]{"/Users/shakilrafi/R-simulations/Phi.R"} + + +\includegraphics{"/Users/shakilrafi/R-simulations/Phi_properties/Phi_diff_contour.png"} + + +\lstinputlisting[language = R, style = rstyle, label = Phi_properties, caption = {R code for simulations involving $\Phi$}]{"/Users/shakilrafi/R-simulations/Phi_properties.R"} + + +\lstinputlisting[language = R, style = rstyle, label = Sqr, caption = {R code for $\sqr$}]{"/Users/shakilrafi/R-simulations/Sqr.R"} + +\lstinputlisting[language = R, style = rstyle, label = Sqr_properties, caption = {R code simulations involving $\sqr$}]{"/Users/shakilrafi/R-simulations/Sqr_properties.R"} + +\lstinputlisting[language = R, style = rstyle, label = Pwr, caption = {R code simulations involving $\sqr$}]{"/Users/shakilrafi/R-simulations/Pwr.R"} + +\lstinputlisting[language = R, style = rstyle, label = Pwr_3_properties, caption = {R code simulations involving $\sqr$}]{"/Users/shakilrafi/R-simulations/Pwr_3_properties.R"} + +\lstinputlisting[language = R, style = rstyle, label = Pwr_3_properties, caption = {R code simulations involving $\sqr$}]{"/Users/shakilrafi/R-simulations/Nrm.R"} + +\lstinputlisting[language = R, style = rstyle, label = Pwr_3_properties, caption = {R code simulations involving $\sqr$}]{"/Users/shakilrafi/R-simulations/Mxm.R"} + +\lstinputlisting[language = R, style = rstyle, label = Pwr_3_properties, caption = {R code simulations involving $\tay$}]{"/Users/shakilrafi/R-simulations/Tay.R"} + +\lstinputlisting[language = R, style = rstyle, label = Pwr_3_properties, caption = {R code simulations involving $\etr$}]{"/Users/shakilrafi/R-simulations/Etr.R"} + + + + + diff --git a/Dissertation_unzipped/brownian_motion_monte_carlo_non_linear_case.aux b/Dissertation_unzipped/brownian_motion_monte_carlo_non_linear_case.aux new file mode 100644 index 0000000..ac528f2 --- /dev/null +++ b/Dissertation_unzipped/brownian_motion_monte_carlo_non_linear_case.aux @@ -0,0 +1,60 @@ +\relax +\providecommand\hyper@newdestlabel[2]{} +\citation{Beck_2021} +\@writefile{toc}{\contentsline {chapter}{\numberline {4}Brownian motion Monte Carlo of the non-linear case}{59}{chapter.4}\protected@file@percent } +\@writefile{lof}{\addvspace {10\p@ }} +\@writefile{lot}{\addvspace {10\p@ }} +\newlabel{4.0.1}{{4.0.1}{59}{Subsequent Setting}{equation.4.0.1}{}} +\newlabel{4.0.1@cref}{{[equation][1][4,0]4.0.1}{[1][59][]59}} +\newlabel{4.0.2}{{4.0.2}{59}{Subsequent Setting}{equation.4.0.2}{}} +\newlabel{4.0.2@cref}{{[equation][2][4,0]4.0.2}{[1][59][]59}} +\newlabel{def:1.18}{{4.0.1}{60}{Subsequent Setting}{equation.4.0.4}{}} +\newlabel{def:1.18@cref}{{[definition][1][4,0]4.0.1}{[1][60][]60}} +\newlabel{Setting 1.1}{{4.0.1}{60}{Subsequent Setting}{equation.4.0.4}{}} +\newlabel{Setting 1.1@cref}{{[definition][1][4,0]4.0.1}{[1][60][]60}} +\newlabel{(1.12)}{{4.0.5}{60}{Subsequent Setting}{equation.4.0.5}{}} +\newlabel{(1.12)@cref}{{[equation][5][4,0]4.0.5}{[1][60][]60}} +\newlabel{(1.12)}{{4.0.6}{60}{Subsequent Setting}{equation.4.0.6}{}} +\newlabel{(1.12)@cref}{{[equation][6][4,0]4.0.6}{[1][60][]60}} +\newlabel{(1.14)}{{4.0.7}{60}{Subsequent Setting}{equation.4.0.7}{}} +\newlabel{(1.14)@cref}{{[equation][7][4,0]4.0.7}{[1][60][]60}} +\@setckpt{brownian_motion_monte_carlo_non_linear_case}{ +\setcounter{page}{61} +\setcounter{equation}{7} +\setcounter{enumi}{3} +\setcounter{enumii}{0} +\setcounter{enumiii}{0} +\setcounter{enumiv}{0} +\setcounter{footnote}{0} +\setcounter{mpfootnote}{0} +\setcounter{part}{1} +\setcounter{chapter}{4} +\setcounter{section}{0} +\setcounter{subsection}{0} +\setcounter{subsubsection}{0} +\setcounter{paragraph}{0} +\setcounter{subparagraph}{0} +\setcounter{figure}{0} +\setcounter{table}{0} +\setcounter{@pps}{0} +\setcounter{@ppsavesec}{0} +\setcounter{@ppsaveapp}{0} +\setcounter{AM@survey}{0} +\setcounter{parentequation}{0} +\setcounter{section@level}{1} +\setcounter{Item}{55} +\setcounter{Hfootnote}{0} +\setcounter{bookmark@seq@number}{19} +\setcounter{NAT@ctr}{0} +\setcounter{ALG@line}{0} +\setcounter{ALG@rem}{0} +\setcounter{ALG@nested}{0} +\setcounter{ALG@Lnr}{1} +\setcounter{ALG@blocknr}{1} +\setcounter{ALG@storecount}{0} +\setcounter{ALG@tmpcounter}{0} +\setcounter{lstnumber}{1} +\setcounter{theorem}{1} +\setcounter{corollary}{0} +\setcounter{lstlisting}{0} +} diff --git a/Dissertation_unzipped/brownian_motion_monte_carlo_non_linear_case.pdf b/Dissertation_unzipped/brownian_motion_monte_carlo_non_linear_case.pdf new file mode 100644 index 0000000..312b7a3 Binary files /dev/null and b/Dissertation_unzipped/brownian_motion_monte_carlo_non_linear_case.pdf differ diff --git a/Dissertation_unzipped/brownian_motion_monte_carlo_non_linear_case.tex b/Dissertation_unzipped/brownian_motion_monte_carlo_non_linear_case.tex new file mode 100644 index 0000000..a468d70 --- /dev/null +++ b/Dissertation_unzipped/brownian_motion_monte_carlo_non_linear_case.tex @@ -0,0 +1,43 @@ +\chapter{Brownian motion Monte Carlo of the non-linear case} + +We now seek to apply the techniques introduced in Chapter 2 on \ref{3.3.21}. To do so we need a variation of Setting \ref{Setting 1.1}. To that end we define such a setting. Assume $v,f,\alpha$ from Lemma \ref{3.3.2}. +\begin{definition}[Subsequent Setting] +Let $g \in C\lp \R^d, \R \rp$ be the function defined by: +\begin{align}\label{4.0.1} + g(x) = v(T,x) +\end{align} +Let $F: C\lp \lb 0,T\rb \times \R^d, \R \rp \rightarrow C \lp \lb ,T \rb \times \R^d, \R \rp$ be the functional defined as: +\begin{align}\label{4.0.2} + \lp F \lp v \rp \rp \lp t,x \rp = f\lp t,x,v\lp t,x\rp \rp +\end{align} +Note also that by Claim \ref{3.3.5} it is the case that: +\begin{align} + \lv f \lp t,x,w\rp -f\lp t,x,\mathfrak{w}\rp \rv \leqslant L \lv w-\mathfrak{w} \rv +\end{align} +Note also that since $f\lp t,x,0 \rp =0$, and since by \cite[Corollary~3.9]{Beck_2021}, $v$ is growing at most polynomially, it is then the case that: +\begin{align} + \max \left\{ \lv f \lp t,x,0 \rp \rv, \lv g \lp x \rp \rv \right\} \leqslant \mathfrak{L}\lp 1 + \|x\|^p \rp +\end{align} + +Substituting (\ref{4.0.1}) and (\ref{4.0.2}) into (\ref{3.3.20}) renders (\ref{3.3.20}) as: +\begin{align} + v(t,x) &= \E \lb v\lp T, \mathcal{X}_T^{t,x} \rp + \int ^T_t f \lp s, \mathcal{X}^{t,x}_s, v \lp s, \mathcal{X}^{t,x}_s \rp \rp ds\rb \nonumber\\ + v(t,x) &= \E \lb v\lp T, \mathcal{X}_T^{t,x} \rp \rb + \E \lb \int ^T_t f \lp s, \mathcal{X}^{t,x}_s, v \lp s, \mathcal{X}^{t,x}_s \rp \rp ds\rb \nonumber\\ + v(t,x) &= \E \lb v\lp T, \mathcal{X}_T^{t,x} \rp \rb + \int ^T_t \E \lb f \lp s, \mathcal{X}^{t,x}_s, v \lp s, \mathcal{X}^{t,x}_s \rp \rp ds\rb \nonumber\\ + v\lp t,x \rp &= \E \lb g\lp \mathcal{X}^{t,x}_T \rp \rb+ \int^T_t \E \lb \lp F \lp v \rp \rp \lp s,\mathcal{X}^{t,x}_s\rp \rb ds\nonumber +\end{align} +\label{def:1.18}\label{Setting 1.1} Let $d,m \in \mathbb{N}$, $T, \mathfrak{L},p \in [0,\infty)$, $\mathfrak{p} \in [2,\infty)$ $\mathfrak{m} = \mathfrak{k}_{\mathfrak{p}}\sqrt{\mathfrak{p}-1}$, $\Theta = \bigcup_{n\in \mathbb{N}}\mathbb{Z}^n$, $f \in C\lp \lb 0,T \rb \times \R^d \times \R \rp $, $g \in C(\mathbb{R}^d,\mathbb{R})$, let $F: C \lp \lb 0,T \rb \times \R^d, \R \rp \rightarrow C \lp \lb 0,T \rb \times \R^d, \R \rp$ assume for all $t \in [0,T],x\in \mathbb{R}^d$ that: +\begin{align}\label{(1.12)} + \lv f\lp t,x,w \rp - f\lp t,x,\mathfrak{w} \rp \rv \leqslant L \lv w - \mathfrak{w} \rv &&\max\left\{\lv f \lp t,x,0 \rp \rv, \lv g(x) \rv \right\} \leqslant \mathfrak{L} \lp 1+\|x\|_E^p \rp +\end{align} + +and let $(\Omega, \mathcal{F},\mathbb{P})$ be a probability space, let $\mathfrak{u}^\theta: \Omega \rightarrow \lb 0,1 \rb$, $\theta \in \Theta$ be i.i.d. random variables, and suume for all $\theta \in \Theta$, $r \in \lp 0,1 \rp$ that $\mathbb{P}\lp \mathfrak{u}^\theta \leqslant r \rp = r$, let $\mathcal{U}^\theta: \lb 0,T \rb \times \Omega \rightarrow \lb 0,T\rb$, $\theta \in \Theta$ satisty for all $t \in \lb 0,T \rb$, $\theta \in \Theta$ that $\mathcal{U}^\theta_t = t + \lp T-t \rp \mathfrak{u}^\theta$, let $\mathcal{W}^{\theta}: [0,T] \times \Omega \rightarrow \mathbb{R}^d$, $\theta \in \Theta$ be independent standard Brownian motions, let $u \in C([0,T] \times \mathbb{R}^d,\mathbb{R})$ satisfy for all $t \in [0,T]$, $x\in \mathbb{R}^d$, that $\mathbb{E} \lb \lv g \lp x+\mathcal{W}^0_{T-t} \rp\rv \rb + \int^T_t \E \lb \lp F \lp u \rp \rp \lp s,x+\mathcal{W}^0_{s-t} \rp \rb < \infty$ and: +\begin{align}\label{(1.12)} + u(t,x) &= \mathbb{E} \lb g \lp x+\mathcal{W}^0_{T-t} \rp \rb + \int^T_t \E \lb \lp F \lp u \rp \rp \lp s,x+ \mathcal{W}^0_{s-t} \rp \rb ds +\end{align} +and let let $U^\theta:[0,T] \times \mathbb{R}^d \times \Omega \rightarrow \mathbb{R}$, $\theta \in \Theta$, $n \in \Z$ satisfy for all $\theta \in \Theta$, $t \in [0,T]$, $x\in \mathbb{R}^d$, $n \in \N_0$ that: +\begin{align}\label{(1.14)} + U^\theta_n(t,x) &= \frac{\mathbbm{1}_\N \lp n \rp}{m^n}\left[\sum^{m^n}_{k=1}g\left(x+\mathcal{W}^{(\theta,0,-k)}_{T-t}\right)\right] \nonumber\\ + &+ \sum^{n-1}_{i=1} \frac{T-t}{m^{n-i}} \lb \sum^{m^{n-i}}_{k=1} \lp F \lp U^{\lp \theta,i,k \rp }_i \rp \rp \lp \mathcal{U}^{\lp \theta,i,k \rp }, x+ \mathcal{W}^{\lp \theta,i,k \rp }_{\mathcal{U}_t^{\lp \theta,i,k \rp}} \rp \rb +\end{align} +\end{definition} diff --git a/Dissertation_unzipped/categorical_neural_network.aux b/Dissertation_unzipped/categorical_neural_network.aux new file mode 100644 index 0000000..537ddb1 --- /dev/null +++ b/Dissertation_unzipped/categorical_neural_network.aux @@ -0,0 +1,52 @@ +\relax +\providecommand\hyper@newdestlabel[2]{} +\@writefile{toc}{\contentsline {chapter}{\numberline {8}Some categorical ideas about neural networks}{132}{chapter.8}\protected@file@percent } +\@writefile{lof}{\addvspace {10\p@ }} +\@writefile{lot}{\addvspace {10\p@ }} +\@setckpt{categorical_neural_network}{ +\setcounter{page}{133} +\setcounter{equation}{0} +\setcounter{enumi}{7} +\setcounter{enumii}{0} +\setcounter{enumiii}{0} +\setcounter{enumiv}{0} +\setcounter{footnote}{0} +\setcounter{mpfootnote}{0} +\setcounter{part}{2} +\setcounter{chapter}{8} +\setcounter{section}{0} +\setcounter{subsection}{0} +\setcounter{subsubsection}{0} +\setcounter{paragraph}{0} +\setcounter{subparagraph}{0} +\setcounter{figure}{0} +\setcounter{table}{0} +\setcounter{@pps}{0} +\setcounter{@ppsavesec}{0} +\setcounter{@ppsaveapp}{0} +\setcounter{AM@survey}{0} +\setcounter{parentequation}{0} +\setcounter{section@level}{2} +\setcounter{Item}{149} +\setcounter{Hfootnote}{1} +\setcounter{bookmark@seq@number}{41} +\setcounter{NAT@ctr}{0} +\setcounter{ALG@line}{0} +\setcounter{ALG@rem}{0} +\setcounter{ALG@nested}{0} +\setcounter{ALG@Lnr}{1} +\setcounter{ALG@blocknr}{1} +\setcounter{ALG@storecount}{0} +\setcounter{ALG@tmpcounter}{0} +\setcounter{lstnumber}{1} +\setcounter{theorem}{0} +\setcounter{corollary}{0} +\setcounter{lstlisting}{0} +\setcounter{nn@layerindex@counter}{6} +\setcounter{nn@lastlayerstart@counter}{0} +\setcounter{nn@thislayerstart@counter}{1} +\setcounter{nn@lastlayercount@counter}{4} +\setcounter{nn@thislayercount@counter}{2} +\setcounter{nn@lastlayerindex@counter}{4} +\setcounter{nn@thislayerindex@counter}{5} +} diff --git a/Dissertation_unzipped/categorical_neural_network.tex b/Dissertation_unzipped/categorical_neural_network.tex new file mode 100644 index 0000000..cb46498 --- /dev/null +++ b/Dissertation_unzipped/categorical_neural_network.tex @@ -0,0 +1 @@ +\chapter{Some categorical ideas about neural networks} \ No newline at end of file diff --git a/Dissertation_unzipped/commands.tex b/Dissertation_unzipped/commands.tex new file mode 100644 index 0000000..7cfb090 --- /dev/null +++ b/Dissertation_unzipped/commands.tex @@ -0,0 +1,161 @@ +\newcommand{\cA}{\mathcal{A}} +\newcommand{\cB}{\mathcal{B}} +\newcommand{\cC}{\mathcal{C}} +\newcommand{\cD}{\mathcal{D}} +\newcommand{\cE}{\mathcal{E}} +\newcommand{\cF}{\mathcal{F}} +\newcommand{\cG}{\mathcal{G}} +\newcommand{\cH}{\mathcal{H}} +\newcommand{\cI}{\mathcal{I}} +\newcommand{\cJ}{\mathcal{J}} +\newcommand{\cK}{\mathcal{K}} +\newcommand{\cL}{\mathcal{L}} +\newcommand{\cM}{\mathcal{M}} +\newcommand{\cN}{\mathcal{N}} +\newcommand{\cO}{\mathcal{O}} +\newcommand{\cP}{\mathcal{P}} +\newcommand{\cQ}{\mathcal{Q}} +\newcommand{\cR}{\mathcal{R}} +\newcommand{\cS}{\mathcal{S}} +\newcommand{\cT}{\mathcal{T}} +\newcommand{\cU}{\mathcal{U}} +\newcommand{\cV}{\mathcal{V}} +\newcommand{\cW}{\mathcal{W}} +\newcommand{\cX}{\mathcal{X}} +\newcommand{\cY}{\mathcal{Y}} +\newcommand{\cZ}{\mathcal{Z}} + +\newcommand{\fA}{\mathfrak{A}} +\newcommand{\fB}{\mathfrak{B}} +\newcommand{\fC}{\mathfrak{C}} +\newcommand{\fD}{\mathfrak{D}} +\newcommand{\fE}{\mathfrak{E}} +\newcommand{\fF}{\mathfrak{F}} +\newcommand{\fG}{\mathfrak{G}} +\newcommand{\fH}{\mathfrak{H}} +\newcommand{\fI}{\mathfrak{I}} +\newcommand{\fJ}{{\bf\mathfrak{J}}} +\newcommand{\fK}{\mathfrak{K}} +\newcommand{\fL}{\mathfrak{L}} +\newcommand{\fM}{\mathfrak{M} \cfadd{multi}} +\newcommand{\fN}{\mathfrak{N}} +\newcommand{\fO}{\mathfrak{O}} +\newcommand{\fP}{\mathfrak{P}} +\newcommand{\fQ}{\mathfrak{Q}} +\newcommand{\fR}{\mathfrak{R}} +\newcommand{\fS}{\mathfrak{S}} +\newcommand{\fT}{\mathfrak{T}} +\newcommand{\fU}{\mathfrak{U}} +\newcommand{\fV}{\mathfrak{V}} +\newcommand{\fW}{\mathfrak{W}} +\newcommand{\fX}{\mathfrak{X}} +\newcommand{\fY}{\mathfrak{Y}} +\newcommand{\fZ}{\mathfrak{Z}} + +\newcommand{\fa}{\mathfrak{a}} +\newcommand{\fb}{\mathfrak{b}} +\newcommand{\fc}{\mathfrak{c}} +\newcommand{\fd}{\mathfrak{d}} +\newcommand{\fe}{\mathfrak{e}} +\newcommand{\ff}{\mathfrak{f}} +\newcommand{\fg}{\mathfrak{g}} +\newcommand{\fh}{\mathfrak{h}} +%\newcommand{\fi}{\mathfrak{i}} +%\newcommand{\fj}{\mathfrak{j}} +\newcommand{\fk}{\mathfrak{k}} +\newcommand{\fl}{\mathfrak{l}} +\newcommand{\fm}{\mathfrak{m}} +\newcommand{\fn}{\mathfrak{n}} +\newcommand{\fo}{\mathfrak{o}} +\newcommand{\fp}{\mathfrak{p}} +\newcommand{\fq}{\mathfrak{q}} +\newcommand{\fr}{\mathfrak{r} \cfadd{rectifier}} +\newcommand{\fs}{\mathfrak{s}} +\newcommand{\ft}{\mathfrak{t}} +\newcommand{\fu}{\mathfrak{u}} +\newcommand{\fv}{\mathfrak{v}} +\newcommand{\fw}{\mathfrak{w}} +\newcommand{\fx}{\mathfrak{x}} +\newcommand{\fy}{\mathfrak{y}} +\newcommand{\fz}{\mathfrak{z}} + +\newcommand{\bfa}{\mathbf{a}} +\newcommand{\bfb}{\mathbf{b}} +\newcommand{\bfc}{\mathbf{c}} +\newcommand{\bfd}{\mathbf{d}} +\newcommand{\bfe}{\mathbf{e}} +\newcommand{\bff}{\mathbf{f}} +\newcommand{\bfg}{\mathbf{g}} +\newcommand{\bfh}{\mathbf{h}} +\newcommand{\bfi}{\mathbf{i}} +\newcommand{\bfj}{\mathbf{j}} +\newcommand{\bfk}{\mathbf{k}} +\newcommand{\bfl}{\mathbf{l}} +\newcommand{\bfm}{\mathbf{m}} +\newcommand{\bfn}{\mathbf{n}} +\newcommand{\bfo}{\mathbf{o}} +\newcommand{\bfp}{\mathbf{p}} +\newcommand{\bfq}{\mathbf{q}} +\newcommand{\bfr}{\mathbf{r}} +\newcommand{\bfs}{\mathbf{s}} +\newcommand{\bft}{\mathbf{t}} +\newcommand{\bfu}{\mathbf{u}} +\newcommand{\bfv}{\mathbf{v}} +\newcommand{\bfw}{\mathbf{w}} +\newcommand{\bfx}{\mathbf{x}} +\newcommand{\bfy}{\mathbf{y}} +\newcommand{\bfz}{\mathbf{z}} + +\newcommand{\bfA}{\mathbf{A}} +\newcommand{\bfB}{\mathbf{B}} +\newcommand{\bfC}{\mathbf{C}} +\newcommand{\bfD}{\mathbf{D}} +\newcommand{\bfE}{\mathbf{E}} +\newcommand{\bfF}{\mathbf{F}} +\newcommand{\bfG}{\mathbf{G}} +\newcommand{\bfH}{\mathbf{H}} +\newcommand{\bfI}{\mathbf{I}} +\newcommand{\bfJ}{\mathbf{J}} +\newcommand{\bfK}{\mathbf{K}} +\newcommand{\bfL}{\mathbf{L}} +\newcommand{\bfM}{\mathbf{M}} +\newcommand{\bfN}{\mathbf{N}} +\newcommand{\bfO}{\mathbf{O}} +\newcommand{\bfP}{\mathbf{P}} +\newcommand{\bfQ}{\mathbf{Q}} +\newcommand{\bfR}{\mathbf{R}} +\newcommand{\bfS}{\mathbf{S}} +\newcommand{\bfT}{\mathbf{T}} +\newcommand{\bfU}{\mathbf{U}} +\newcommand{\bfV}{\mathbf{V}} +\newcommand{\bfW}{\mathbf{W}} +\newcommand{\bfX}{\mathbf{X}} +\newcommand{\bfY}{\mathbf{Y}} +\newcommand{\bfZ}{\mathbf{Z}} + +\newcommand{\scrA}{\mathscr{A}} +\newcommand{\scrB}{\mathscr{B}} +\newcommand{\scrC}{\mathscr{C}} +\newcommand{\scrD}{\mathscr{D}} +\newcommand{\scrE}{\mathscr{E}} +\newcommand{\scrF}{\mathscr{F}} +\newcommand{\scrG}{\mathscr{G}} +\newcommand{\scrH}{\mathscr{H}} +\newcommand{\scrI}{\mathscr{I}} +\newcommand{\scrJ}{\mathscr{J}} +\newcommand{\scrK}{\mathscr{K}} +\newcommand{\scrL}{\mathscr{L} \cfadd{def:lin_interp}} +\newcommand{\scrM}{\mathscr{M}} +\newcommand{\scrN}{\mathscr{N}} +\newcommand{\scrO}{\mathscr{O}} +\newcommand{\scrP}{\mathscr{P}} +\newcommand{\scrQ}{\mathscr{Q}} +\newcommand{\scrR}{\mathscr{R}} +\newcommand{\scrS}{\mathscr{S}} +\newcommand{\scrT}{\mathscr{T}} +\newcommand{\scrU}{\mathscr{U}} +\newcommand{\scrV}{\mathscr{V}} +\newcommand{\scrW}{\mathscr{W}} +\newcommand{\scrX}{\mathscr{X}} +\newcommand{\scrY}{\mathscr{Y}} +\newcommand{\scrZ}{\mathscr{Z}} diff --git a/Dissertation_unzipped/conclusions-further-research.tex b/Dissertation_unzipped/conclusions-further-research.tex new file mode 100644 index 0000000..cf3e285 --- /dev/null +++ b/Dissertation_unzipped/conclusions-further-research.tex @@ -0,0 +1,46 @@ +\chapter{Conclusions and Further Research} + +We will present three avenues of further research and related work on parameter estimates here. + +\section{Further operations and further kinds of neural networks} + +Note, for instance, that several classical operations are done on neural networks that have yet to be accounted for in this framework and talked about in the literature. We will discuss two of them \textit{dropout} and \textit{dilation} and provide lemmas that may be useful to future research. + +\subsection{Mergers and Dropout} + +\begin{definition}[Hadamard Product] + Let $m,n \in \N$. Let $A,B \in \R^{m \times n}$. For all $i \in \{ 1,2,\hdots,m\}$ and $j \in \{ 1,2,\hdots,n\}$ define the Hadamard product $\odot: \R^{m\times n} \times \R^{m \times n} \rightarrow \R^{m \times n}$ as: + \begin{align} + A \odot B \coloneqq \lb A \odot B \rb _{i,j} = \lb A \rb_{i,j} \times \lb B \rb_{i,j} \quad \forall i,j + \end{align} +\end{definition} + +\begin{definition}[Scalar product of weights] + Let $\nu \in \neu$, $L\in \N$, $i,j,k \in \N$, and $c\in \R$. Assume also that $\lay \lp \nu\rp = \lp l_0,l_1,l_2,\hdots, l_L\rp$. Assume then that the neural network is given by $\nu = \lp \lp W_1,b_1\rp, \lp W_2,b_2\rp,\hdots, \lp W_L,b_L\rp\rp$. We will denote by $c\circledast^{i,j}\nu$ as the neural network which, for $i \in \N \cap \lb 1,L-1\rb$, $j \in \N \cap \lb 1,l_i\rb$, is given by $c \circledast^{i,j} \nu = \lp \lp W_1,b_1 \rp, \lp W_2,b_2\rp, \hdots,\lp \tilde{W}_i,b_i \rp,\lp \tilde{W}_{i+1},b_{i+1}\rp,\hdots \lp W_L,b_L\rp\rp$ where it is the case that: + \begin{align} + \tilde{W}_i = \lp \mymathbb{k}^{j,j,c-1}_{l_i,l_{i}} + \mathbb{I}_{l_i}\rp W_i + \end{align} +\end{definition} +\begin{definition}[The Dropout Operator] + Let $\nu \in \neu$, $L\in \N$, $i_1,i_2,\hdots, i_k,j,k \in \N$, and $c_1,c_2,\hdots,c_k\in \R$. Assume also that $\lay \lp \nu\rp = \lp l_0,l_1,l_2,\hdots, l_L\rp$. Assume then that the neural network is given by $\nu = \lp \lp W_1,b_1\rp, \lp W_2,b_2\rp,\hdots, \lp W_L,b_L\rp\rp$. We will denote by $\dropout_n^{\unif}\lp \nu \rp$ the neural network that is given by: + \begin{align} + 0\circledast^{i_1,j_1} \lp 0 \circledast^{i_2,j_2}\lp \hdots 0\circledast^{i_n,j_n}\nu \hdots \rp\rp + \end{align} + Where for each $k \in \{1,2,\hdots,n \}$ it is the case that $i \sim \unif \{ 1,L-1\}$ and $j\sim \unif\{1,l_j\} $ +\end{definition} + +We will also define the dropout operator introduced in \cite{srivastava_dropout_2014}. + + +\begin{definition}[Realization with dropout] + Let $\nu \in \neu$, $L,n \in \N$, $p \in \lp 0,1\rp$, $\lay \lp \nu\rp = \lp l_0,l_1,\hdots, \l_L\rp$, and that $\neu = \lp \lp W_1,b_1\rp, \lp W_2,b_2\rp, \hdots , \lp W_L,b_L\rp \rp$. Let it be the case that for each $n\in \N$, $\rho_n = \{ x_1,x_2,\hdots,x_n\} \in \R^n$ where for each $i \in \{1,2,\hdots,n\}$ it is the case that $x_i \sim \bern(p)$. We will then denote $\real_{\rect}^{D} \lp \nu \rp \in C\lp \R^{\inn\lp \nu\rp},\R^{\out\lp \nu \rp}\rp$, the continuous function given by: + \begin{align} + \real_{\rect}^D\lp \nu \rp = \rho_{l_L}\odot \rect \lp W_l\lp \rho_{l_{L-1}} \odot \rect \lp W_{L-1}\lp \hdots\rp + b_{L-1}\rp\rp + b_L\rp + \end{align} +\end{definition} + + + + + + diff --git a/Dissertation_unzipped/julia_sharktooth_mult.ipynb b/Dissertation_unzipped/julia_sharktooth_mult.ipynb new file mode 100644 index 0000000..4f2c87b --- /dev/null +++ b/Dissertation_unzipped/julia_sharktooth_mult.ipynb @@ -0,0 +1,7863 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": 9, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "max_conv_operator (generic function with 1 method)" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "using Random\n", + "using Distributions\n", + "using Plots\n", + "using LinearAlgebra\n", + "# ===============================================================\n", + "\n", + "function max_conv_operator(samples, f_samples, x, L)\n", + " return maximum(f_samples .- L .* norm(x .- samples, 1))\n", + "end" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "sharktooth (generic function with 1 method)" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "function sharktooth(f, x_start, x_end, y_start, y_end, number_of_sharkteeth, L, plot_arg)\n", + " sample_x = rand(Uniform(x_start, x_end), number_of_sharkteeth)\n", + " sample_y = rand(Uniform(y_start, y_end), number_of_sharkteeth)\n", + " samples = hcat(sample_x,sample_y)\n", + " f_samples = f.(eachrow(samples))\n", + "\n", + " x = LinRange(x_start,x_end,1000)\n", + " y = LinRange(y_start,y_end,1000)\n", + " X = [xi for xi in x, yi in y]\n", + " Y = [yi for xi in x, yi in y]\n", + " meshgrid = hcat(reshape(X,:),reshape(Y,:))\n", + " \n", + " approximant = Float64[]\n", + " for i in 1:length(X)\n", + " push!(approximant, max_conv_operator(samples, f_samples,meshgrid[i,:]',L))\n", + " end\n", + " error = maximum(abs.(f.(eachrow(meshgrid)) - approximant))\n", + " if plot_arg ==1 \n", + " plot(x,y,approximant, st=:surface)\n", + " else \n", + " return error\n", + " end\n", + "end" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "f (generic function with 2 methods)" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "function f(x)\n", + " x[1]^3 + y[1]^3\n", + "end" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": {}, + "outputs": [ + { + "ename": "UndefVarError", + "evalue": "UndefVarError: `y` not defined", + "output_type": "error", + "traceback": [ + "UndefVarError: `y` not defined\n", + "\n", + "Stacktrace:\n", + " [1] f(x::SubArray{Float64, 1, Matrix{Float64}, Tuple{Int64, Base.Slice{Base.OneTo{Int64}}}, true})\n", + " @ Main ~/Library/Mobile Documents/com~apple~CloudDocs/Dissertation/julia_sharktooth_mult.ipynb:2\n", + " [2] _broadcast_getindex_evalf\n", + " @ ./broadcast.jl:683 [inlined]\n", + " [3] _broadcast_getindex\n", + " @ ./broadcast.jl:656 [inlined]\n", + " [4] getindex\n", + " @ ./broadcast.jl:610 [inlined]\n", + " [5] copy(bc::Base.Broadcast.Broadcasted{Base.Broadcast.DefaultArrayStyle{1}, Tuple{Base.OneTo{Int64}}, typeof(f), Tuple{RowSlices{Matrix{Float64}, Tuple{Base.OneTo{Int64}}, SubArray{Float64, 1, Matrix{Float64}, Tuple{Int64, Base.Slice{Base.OneTo{Int64}}}, true}}}})\n", + " @ Base.Broadcast ./broadcast.jl:912\n", + " [6] materialize\n", + " @ ./broadcast.jl:873 [inlined]\n", + " [7] sharktooth(f::Function, x_start::Int64, x_end::Int64, y_start::Int64, y_end::Int64, number_of_sharkteeth::Int64, L::Int64, plot_arg::Int64)\n", + " @ Main ~/Library/Mobile Documents/com~apple~CloudDocs/Dissertation/julia_sharktooth_mult.ipynb:5\n", + " [8] top-level scope\n", + " @ ~/Library/Mobile Documents/com~apple~CloudDocs/Dissertation/julia_sharktooth_mult.ipynb:1" + ] + } + ], + "source": [ + "sharktooth(f,-3,3,-2,2,300,4,1)" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAlgAAAGQCAIAAAD9V4nPAAAABmJLR0QA/wD/AP+gvaeTAAAgAElEQVR4nOy9e5hcVZku/n2rqu/dDJCkA0m4JAxHE0EgYAIkUQiBGIIahjuCghzBGS569GEYx8mcH85vBgZQxAvqkYDgeAFE5TCCyoAIE0BAQEAgcgshQKIEQ9+rumt954+1vnXZVX2pSnXtru7vffpJdq299tpr767e736/20IiAoFAIBAIpipU2hMQCAQCgSBNCBEKBAKBYEpDiFAgEAgEUxpChAKBQCCY0hAiFAgEAsGURjbtCQgEAoFAMCy2bt16xx13vPjii9OmTTv11FP32GMP0/6jH/2oq6vLbM+ePXv16tVme8uWLddff31XV9dHPvKRww47bCynEEUoEAgEgomLM88889577502bdoLL7ywYMGCZ555xrSvXbt2/fr1L7/88ssvv7xlyxbTuH379kWLFr366qvTp08/7rjj7rrrrrGcQhShQCAQCCYubr/99paWFrP9l7/85bvf/e5VV11lPp5//vmLFi0KO99000377LPPt7/9bQBoa2u77LLLVq1aNeopRBEKBAKBYOLCsSAA5PP5trY29/EnP/nJV77ylfvvv9+1/OY3vznmmGPM9jHHHLN+/frBwcFRTyFEKBAIBII6wK9+9asHHnjgvPPOMx8PPPDAXC63cePGU0455ZOf/KRpfPPNNzs7O832zJkztdbOajoCxDQqEAgEgiqii6BQ1gEbNrz4z2uvTDQeffTRjt4A4Mknn/zYxz72H//xH7NmzTItt956q9n47Gc/+653veuCCy444IADstns0NCQaTcbDQ0No05AiFAgEAgEVYOm/yb4S1mHPPvs7zZu3HjxxReHjfvtt5/bfuqpp1atWvWtb33r2GOPLT58zz333HPPPV966aUDDjhg1qxZb7zxhml//fXXGxoaZsyYMeoEhAgFAoFAUDVoKhAMlXUIQWH27NknnXRSyb3PP//8sccee/XVV69Zs8Y15vP5hoYGRASAZ599duPGjfPnzweA44477qqrrlq7dm02m73tttuOPfbYTCYz6gSECAUCgUBQNRAUiMozjRLpEfaeddZZ+Xx+3bp169atA4Bly5b98z//8+9+97szzjhj0aJFhULhl7/85SWXXGKI8KSTTrr22muPOOKIefPm3XXXXb/61a/GMgGUZZgEAoFAUC0M6p8RvV3WIf/39ie+/73NP/3pT0vufe655/r6+tzHXXbZZd68eYVC4fe///2GDRsaGhoOOuigffbZx3XI5/P33HPP9u3bly9fPnPmzLFMQBShQCAQCKoGTQWiMk2jIypII/USyGQyCxcuXLhwYfGuxsbGseQOhhAiFAgEAkH1UAERlhllWnVIHqFAIBAIpjREEQoEAoGgaiA9VLYi1CMFy9QAQoQCgUAgqBqoDk2jQoQCgUAgqBoIyiZCKDPdouoQH6FAIBAIpjREEQoEAoGgaiA9RLpcH6GYRgUCgUAwaUAFKNc0CikHy4hpVCAQCARTGqIIBQKBQFA9VLuyTA0gRCgQCASC6oEKUKaPMPWoUSFCgUAgEFQPegj0YJmHSPqEQCAQCATpQRShYDJgYGCgubk57VkIBAIAGio/arQAMPryueMHIUJB3UNr3dXVJUQoEEwIVOAj1CkToZhGBQKBQDClIYpQIBAIBNWDlqhRgUAgEExlVFBZhmQZJoFAIBBMGtAQlqkIMW1FKD5CgUAgEExpiCIUCAQCQfWgddkJ8rJCvUAgEAgmDVAXxDQqEAgEAkE9QRShQCAQCKoHKpRtGpWoUYFAIBBMHlSQR5h20W0hQoFAIBBUDagLWFVF+Prrr99xxx0bNmyYMWPG6aefvvfee9uDiG6++eaHHnpo7ty55557bmtrq+u/bt267du3H3/88cuWLRvL+cVHKBBUDUND5dYaFggEo+Ccc8556KGH9t57782bN++3336///3vTfull176xS9+ccGCBf/1X/+1evVq0/iXv/xl0aJFW7du3XvvvdesWfOf//mfYzmFKEKBoDrQWudyuWxW/qYEUxwVVJYZSUHefvvtTU1NZnvbtm033XTTl770pb6+vmuuueaee+5ZuHDh2WefPWfOnAcffPDwww+/8cYb58+f/41vfAMAmpubL7vssuOOO27U84siFAgEAkHVgFob62gZPyOaRh0LAkBfX19HRwcAPPXUU5lMZuHChQDQ2Nj4gQ984P777weA+++/f8WKFabzihUrHn744cHB0VcJFiIUCAQCQR3grrvuevDBB8877zwAePPNN2fMmOF2dXZ2vvHGGwCwZcsW197Z2am13rJly6gjixlHIBAIBNWDriR9Yv369UcffXTYtmbNmvPPP999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TJnSo0cPANA0jRiulyxZUlRU9Mgjj1y6dOn3338nMQiff/75hAkT/ve//8n+G4WbCp3bDT1x7PeSx0kocFx7KO7uMkSNbtmypXv37tWrV+f/NpOTk1u3bo0xfuKJJ9avX1+3bl273Z6cnEy840eOHImPj69Tp87Zs2efeeaZd955hxyliFBBwQVycnK2bdu2Zs2adevWXblyJS4ubvTo0bGxsbxEmS9jzpw5EydO/O6772JiYso/2/vvv//FF1/wjyEhIUePHgWA8ePHFxQUTJs2LS0trVevXn/88UdgYGCLFi3ef/994g9WuDnRud2Q48d+c+uQAse1bnH3loEICwsL5Tg7AAgLC+NegL/++isrK6t58+ZyjlNBQcHp06fr168v11RSRKigUAJ+/fXXjRs3yi2i+vfvX87wywoCxnjixIlLlizZsGHDv/71r0o+ta7rfiSaFSoIlUmEnoIKllFQKAEtW7Zs2bLl+PHjr169unXr1uTk5KlTpwYHB/fq1SshIcF3an/b7fYRI0akp6f//PPPPNCg0oAQUiyoAKyyjFuHYOzlNkx+UxRDQaGc2LBhQ1xc3K233nrnnXdOmDChsLDQeUxMTExrBh6czREZGTlw4MC5c+f+/fffK1asuOWWWyZOnBgREdGzZ8/Zs2dnZGRUynW4xtWrVx966CGHw5GSklL5LKigwOGPRbeVIlS4WZCamjpq1Kh27dpdvnx5yJAhQUFBEyZMMI05dOjQ8uXL69atCywP1yU0TWvVqlWrVq3Gjx9/+fLln376afXq1a+99lr9+vVJi6gHH3ywmHQFj+PPP//s0aNHbGzsxx9/7Ecl3xRuSGBwYDcVIXhbESofocLNiKlTp27fvn39+vWm/aGhoadOnSqb/8/hcBw+fHjVqlU//vhjenp6586du3fvnpiYWK9ePU8s+brYs2dPv379Jk6c+Mwzz1ToiRQUSoMObfsdP/o/tw4pclgf7tVK9SNUUKhUbN++/d///rfLr/r27du6devnnnvO3XqncouoEydOkBZRzZs35y2iKuKl89tvv01ISJg/f75iQQWfQRlMo0oRKihULj799NPp06cfPnzYueTYggUL2rRpY7PZJk+efPny5T179pQzAKSoqGjv3r1r1qzZunXruXPnOnXq1KdPn4SEhPDw8PJMSzB9+vQPP/xw3bp11yN1BYXK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", + "image/svg+xml": [ + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ], + "text/html": [ + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "using Plots\n", + "\n", + "# Define the range for x and y values\n", + "x = -5:0.1:5\n", + "y = -5:0.1:5\n", + "\n", + "f(x,y) = x^3+y^3\n", + "\n", + "plot(x,y,f,st=:surface)\n" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [ + { + "ename": "ErrorException", + "evalue": "syntax: incomplete: premature end of input", + "output_type": "error", + "traceback": [ + "syntax: incomplete: premature end of input\n", + "\n", + "Stacktrace:\n", + " [1] top-level scope\n", + " @ ~/Library/Mobile Documents/com~apple~CloudDocs/Dissertation/julia_sharktooth_mult.ipynb:1" + ] + } + ], + "source": [ + "Z = " + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Julia 1.9.3", + "language": "julia", + "name": "julia-1.9" + }, + "language_info": { + "file_extension": ".jl", + "mimetype": "application/julia", + "name": "julia", + "version": "1.9.3" + }, + "orig_nbformat": 4 + }, + "nbformat": 4, + "nbformat_minor": 2 +} diff --git a/Dissertation_unzipped/main.aux b/Dissertation_unzipped/main.aux new file mode 100644 index 0000000..65af537 --- /dev/null +++ b/Dissertation_unzipped/main.aux @@ -0,0 +1,200 @@ +\relax +\providecommand\hyper@newdestlabel[2]{} +\providecommand\HyperFirstAtBeginDocument{\AtBeginDocument} +\HyperFirstAtBeginDocument{\ifx\hyper@anchor\@undefined +\global\let\oldnewlabel\newlabel +\gdef\newlabel#1#2{\newlabelxx{#1}#2} +\gdef\newlabelxx#1#2#3#4#5#6{\oldnewlabel{#1}{{#2}{#3}}} +\AtEndDocument{\ifx\hyper@anchor\@undefined +\let\newlabel\oldnewlabel +\fi} +\fi} +\global\let\hyper@last\relax +\gdef\HyperFirstAtBeginDocument#1{#1} +\providecommand\HyField@AuxAddToFields[1]{} +\providecommand\HyField@AuxAddToCoFields[2]{} +\@writefile{toc}{\contentsline {part}{I\hspace {1em}On Convergence of Brownian Motion Monte Carlo}{4}{part.1}\protected@file@percent } +\@input{Introduction.aux} +\@input{Brownian_motion_monte_carlo.aux} +\@input{u_visc_sol.aux} +\@input{brownian_motion_monte_carlo_non_linear_case.aux} +\@writefile{toc}{\contentsline {part}{II\hspace {1em}A Structural Description of Artificial Neural Networks}{61}{part.2}\protected@file@percent } +\@input{neural_network_introduction.aux} +\@input{ann_product.aux} +\@input{modified_mlp_associated_nn.aux} +\@input{categorical_neural_network.aux} +\@writefile{toc}{\contentsline {chapter}{\numberline {9}ANN first approximations}{133}{chapter.9}\protected@file@percent } +\@writefile{lof}{\addvspace {10\p@ }} +\@writefile{lot}{\addvspace {10\p@ }} +\@writefile{toc}{\contentsline {section}{\numberline {9.1}Activation Function as Neural Networks}{133}{section.9.1}\protected@file@percent } +\newlabel{actnn}{{9.1.1}{133}{Activation ANN}{theorem.9.1.1}{}} +\newlabel{actnn@cref}{{[definition][1][9,1]9.1.1}{[1][133][]133}} +\newlabel{7.1.2}{{9.1.2}{133}{}{theorem.9.1.2}{}} +\newlabel{7.1.2@cref}{{[lemma][2][9,1]9.1.2}{[1][133][]133}} +\newlabel{6.0.3}{{9.1.3}{133}{}{theorem.9.1.3}{}} +\newlabel{6.0.3@cref}{{[lemma][3][9,1]9.1.3}{[1][133][]133}} +\citation{grohs2019spacetime} +\@writefile{toc}{\contentsline {section}{\numberline {9.2}ANN Representations for One-Dimensional Identity}{134}{section.9.2}\protected@file@percent } +\newlabel{7.2.1}{{9.2.1}{134}{Identity Neural Network}{theorem.9.2.1}{}} +\newlabel{7.2.1@cref}{{[definition][1][9,2]9.2.1}{[1][134][]134}} +\newlabel{7.2.2}{{9.2.2}{135}{Identity Neural Network}{equation.9.2.2}{}} +\newlabel{7.2.2@cref}{{[equation][2][9,2]9.2.2}{[1][134][]135}} +\newlabel{idprop}{{9.2.2}{135}{}{theorem.9.2.2}{}} +\newlabel{idprop@cref}{{[lemma][2][9,2]9.2.2}{[1][135][]135}} +\newlabel{7.2.3}{{9.2.3}{136}{}{theorem.9.2.3}{}} +\newlabel{7.2.3@cref}{{[lemma][3][9,2]9.2.3}{[1][136][]136}} +\newlabel{7.2.8}{{9.2.8}{137}{ANN Representations for One-Dimensional Identity}{equation.9.2.8}{}} +\newlabel{7.2.8@cref}{{[equation][8][9,2]9.2.8}{[1][137][]137}} +\@writefile{toc}{\contentsline {section}{\numberline {9.3}Modulus of Continuity}{142}{section.9.3}\protected@file@percent } +\newlabel{9.3.1}{{9.3.1}{142}{}{equation.9.3.1}{}} +\newlabel{9.3.1@cref}{{[equation][1][9,3]9.3.1}{[1][142][]142}} +\newlabel{lem:9.3.3}{{9.3.3}{142}{}{theorem.9.3.3}{}} +\newlabel{lem:9.3.3@cref}{{[lemma][3][9,3]9.3.3}{[1][142][]142}} +\@writefile{toc}{\contentsline {section}{\numberline {9.4}Linear Interpolation of real-valued functions}{143}{section.9.4}\protected@file@percent } +\@writefile{toc}{\contentsline {subsection}{\numberline {9.4.1}The Linear Interpolation Operator}{143}{subsection.9.4.1}\protected@file@percent } +\newlabel{lio}{{9.4.1}{143}{Linear Interpolation Operator}{theorem.9.4.1}{}} +\newlabel{lio@cref}{{[definition][1][9,4]9.4.1}{[1][143][]143}} +\newlabel{7.3.1}{{9.4.1}{143}{}{equation.9.4.1}{}} +\newlabel{7.3.1@cref}{{[equation][1][9,4]9.4.1}{[1][143][]143}} +\newlabel{7.3.2}{{9.4.2}{143}{}{equation.9.4.2}{}} +\newlabel{7.3.2@cref}{{[equation][2][9,4]9.4.2}{[1][143][]143}} +\newlabel{lem:9.4.3}{{9.4.3}{144}{}{theorem.9.4.3}{}} +\newlabel{lem:9.4.3@cref}{{[lemma][3][9,4]9.4.3}{[1][144][]144}} +\@writefile{toc}{\contentsline {subsection}{\numberline {9.4.2}Neural Networks to approximate the $\lin $ operator}{144}{subsection.9.4.2}\protected@file@percent } +\newlabel{7.3.3}{{9.4.4}{144}{}{theorem.9.4.4}{}} +\newlabel{7.3.3@cref}{{[lemma][4][9,4]9.4.4}{[1][144][]144}} +\citation{Grohs_2022} +\newlabel{9.3.4}{{9.4.5}{145}{}{theorem.9.4.5}{}} +\newlabel{9.3.4@cref}{{[lemma][5][9,4]9.4.5}{[1][145][]145}} +\newlabel{7.3.5}{{9.4.7}{145}{}{equation.9.4.7}{}} +\newlabel{7.3.5@cref}{{[equation][7][9,4]9.4.7}{[1][145][]145}} +\newlabel{7.3.6}{{9.4.8}{145}{Neural Networks to approximate the $\lin $ operator}{equation.9.4.8}{}} +\newlabel{7.3.6@cref}{{[equation][8][9,4]9.4.8}{[1][145][]145}} +\citation{Grohs_2022} +\newlabel{7.3.8}{{9.4.10}{146}{Neural Networks to approximate the $\lin $ operator}{equation.9.4.10}{}} +\newlabel{7.3.8@cref}{{[equation][10][9,4]9.4.10}{[1][146][]146}} +\newlabel{7.3.10.2}{{9.4.11}{146}{Neural Networks to approximate the $\lin $ operator}{equation.9.4.11}{}} +\newlabel{7.3.10.2@cref}{{[equation][11][9,4]9.4.11}{[1][146][]146}} +\newlabel{7.3.10}{{9.4.12}{146}{}{equation.9.4.12}{}} +\newlabel{7.3.10@cref}{{[equation][12][9,4]9.4.12}{[1][146][]146}} +\newlabel{7.3.13}{{9.4.15}{147}{Neural Networks to approximate the $\lin $ operator}{equation.9.4.15}{}} +\newlabel{7.3.13@cref}{{[equation][15][9,4]9.4.15}{[1][146][]147}} +\newlabel{7.3.14}{{9.4.16}{147}{}{equation.9.4.16}{}} +\newlabel{7.3.14@cref}{{[equation][16][9,4]9.4.16}{[1][147][]147}} +\@writefile{toc}{\contentsline {section}{\numberline {9.5}Neural network approximation of 1-dimensional functions.}{148}{section.9.5}\protected@file@percent } +\newlabel{lem:9.5.1}{{9.5.1}{148}{}{theorem.9.5.1}{}} +\newlabel{lem:9.5.1@cref}{{[lemma][1][9,5]9.5.1}{[1][148][]148}} +\newlabel{lem:9.5.2}{{9.5.2}{149}{}{theorem.9.5.2}{}} +\newlabel{lem:9.5.2@cref}{{[lemma][2][9,5]9.5.2}{[1][149][]149}} +\newlabel{(9.5.4)}{{9.5.4}{150}{Neural network approximation of 1-dimensional functions}{equation.9.5.4}{}} +\newlabel{(9.5.4)@cref}{{[equation][4][9,5]9.5.4}{[1][149][]150}} +\@writefile{toc}{\contentsline {section}{\numberline {9.6}$\trp ^h$ and neural network approximations for the trapezoidal rule.}{151}{section.9.6}\protected@file@percent } +\newlabel{(9.6.3)}{{9.6.3}{152}{}{equation.9.6.3}{}} +\newlabel{(9.6.3)@cref}{{[equation][3][9,6]9.6.3}{[1][152][]152}} +\newlabel{(9.6.6)}{{9.6.6}{153}{$\trp ^h$ and neural network approximations for the trapezoidal rule}{equation.9.6.6}{}} +\newlabel{(9.6.6)@cref}{{[equation][6][9,6]9.6.6}{[1][153][]153}} +\@writefile{toc}{\contentsline {section}{\numberline {9.7}Linear interpolation for multi-dimensional functions}{154}{section.9.7}\protected@file@percent } +\@writefile{toc}{\contentsline {subsection}{\numberline {9.7.1}The $\nrm ^d_1$ and $\mxm ^d$ networks}{154}{subsection.9.7.1}\protected@file@percent } +\newlabel{(9.7.1)}{{9.7.1}{154}{The $\nrm _1^d$ neural network}{equation.9.7.1}{}} +\newlabel{(9.7.1)@cref}{{[equation][1][9,7]9.7.1}{[1][154][]154}} +\newlabel{9.7.2}{{9.7.2}{154}{}{theorem.9.7.2}{}} +\newlabel{9.7.2@cref}{{[lemma][2][9,7]9.7.2}{[1][154][]154}} +\citation{grohs2019spacetime} +\citation{grohs2019spacetime} +\citation{grohs2019spacetime} +\citation{grohs2019spacetime} +\citation{grohs2019spacetime} +\newlabel{9.7.6}{{9.7.10}{157}{Maxima ANN representations}{equation.9.7.10}{}} +\newlabel{9.7.6@cref}{{[equation][10][9,7]9.7.10}{[1][156][]157}} +\newlabel{9.7.4}{{9.7.4}{157}{}{theorem.9.7.4}{}} +\newlabel{9.7.4@cref}{{[lemma][4][9,7]9.7.4}{[1][157][]157}} +\newlabel{9.7.7}{{9.7.11}{157}{The $\nrm ^d_1$ and $\mxm ^d$ networks}{equation.9.7.11}{}} +\newlabel{9.7.7@cref}{{[equation][11][9,7]9.7.11}{[1][157][]157}} +\newlabel{9.7.8}{{9.7.12}{157}{The $\nrm ^d_1$ and $\mxm ^d$ networks}{equation.9.7.12}{}} +\newlabel{9.7.8@cref}{{[equation][12][9,7]9.7.12}{[1][157][]157}} +\citation{grohs2019spacetime} +\newlabel{9.7.10}{{9.7.14}{158}{The $\nrm ^d_1$ and $\mxm ^d$ networks}{equation.9.7.14}{}} +\newlabel{9.7.10@cref}{{[equation][14][9,7]9.7.14}{[1][158][]158}} +\newlabel{9.7.11}{{9.7.15}{158}{The $\nrm ^d_1$ and $\mxm ^d$ networks}{equation.9.7.15}{}} +\newlabel{9.7.11@cref}{{[equation][15][9,7]9.7.15}{[1][158][]158}} +\newlabel{9.7.12}{{9.7.16}{158}{The $\nrm ^d_1$ and $\mxm ^d$ networks}{equation.9.7.16}{}} +\newlabel{9.7.12@cref}{{[equation][16][9,7]9.7.16}{[1][158][]158}} +\newlabel{9.7.13}{{9.7.17}{158}{The $\nrm ^d_1$ and $\mxm ^d$ networks}{equation.9.7.17}{}} +\newlabel{9.7.13@cref}{{[equation][17][9,7]9.7.17}{[1][158][]158}} +\citation{grohs2019spacetime} +\citation{grohs2019spacetime} +\newlabel{9.7.15}{{9.7.19}{159}{The $\nrm ^d_1$ and $\mxm ^d$ networks}{equation.9.7.19}{}} +\newlabel{9.7.15@cref}{{[equation][19][9,7]9.7.19}{[1][158][]159}} +\newlabel{9.7.16}{{9.7.20}{159}{The $\nrm ^d_1$ and $\mxm ^d$ networks}{equation.9.7.20}{}} +\newlabel{9.7.16@cref}{{[equation][20][9,7]9.7.20}{[1][159][]159}} +\citation{grohs2019spacetime} +\@writefile{toc}{\contentsline {subsection}{\numberline {9.7.2}The $\mxm ^d$ neural network and maximum convolutions }{160}{subsection.9.7.2}\protected@file@percent } +\newlabel{(9.7.5)}{{9.7.5}{160}{}{theorem.9.7.5}{}} +\newlabel{(9.7.5)@cref}{{[lemma][5][9,7]9.7.5}{[1][160][]160}} +\newlabel{9.7.20}{{9.7.26}{160}{}{equation.9.7.26}{}} +\newlabel{9.7.20@cref}{{[equation][26][9,7]9.7.26}{[1][160][]160}} +\citation{grohs2019spacetime} +\citation{grohs2019spacetime} +\citation{grohs2019spacetime} +\citation{grohs2019spacetime} +\citation{grohs2019spacetime} +\citation{grohs2019spacetime} +\citation{grohs2019spacetime} +\citation{grohs2019spacetime} +\citation{grohs2019spacetime} +\citation{grohs2019spacetime} +\citation{grohs2019spacetime} +\citation{grohs2019spacetime} +\citation{grohs2019spacetime} +\@writefile{toc}{\contentsline {subsection}{\numberline {9.7.3}Lipschitz function approximations}{164}{subsection.9.7.3}\protected@file@percent } +\newlabel{(9.7.6)}{{9.7.3}{164}{Lipschitz function approximations}{subsection.9.7.3}{}} +\newlabel{(9.7.6)@cref}{{[subsection][3][9,7]9.7.3}{[1][164][]164}} +\newlabel{9.7.30}{{9.7.41}{164}{}{equation.9.7.41}{}} +\newlabel{9.7.30@cref}{{[equation][41][9,7]9.7.41}{[1][164][]164}} +\newlabel{9.7.31}{{9.7.42}{165}{}{equation.9.7.42}{}} +\newlabel{9.7.31@cref}{{[equation][42][9,7]9.7.42}{[1][165][]165}} +\newlabel{9.7.32}{{9.7.43}{165}{Lipschitz function approximations}{equation.9.7.43}{}} +\newlabel{9.7.32@cref}{{[equation][43][9,7]9.7.43}{[1][165][]165}} +\newlabel{9.7.33}{{9.7.44}{165}{Lipschitz function approximations}{equation.9.7.44}{}} +\newlabel{9.7.33@cref}{{[equation][44][9,7]9.7.44}{[1][165][]165}} +\newlabel{9.7.6.1}{{9.7.6.1}{166}{}{corollary.9.7.6.1}{}} +\newlabel{9.7.6.1@cref}{{[corollary][1][]9.7.6.1}{[1][166][]166}} +\@writefile{toc}{\contentsline {subsection}{\numberline {9.7.4}Explicit ANN approximations }{167}{subsection.9.7.4}\protected@file@percent } +\newlabel{(9.7.42)}{{9.7.53}{167}{}{equation.9.7.53}{}} +\newlabel{(9.7.42)@cref}{{[equation][53][9,7]9.7.53}{[1][167][]167}} +\newlabel{9.7.43}{{9.7.54}{167}{Explicit ANN approximations}{equation.9.7.54}{}} +\newlabel{9.7.43@cref}{{[equation][54][9,7]9.7.54}{[1][167][]167}} +\newlabel{(9.7.44)}{{9.7.55}{167}{Explicit ANN approximations}{equation.9.7.55}{}} +\newlabel{(9.7.44)@cref}{{[equation][55][9,7]9.7.55}{[1][167][]167}} +\@writefile{toc}{\contentsline {part}{III\hspace {1em}A deep-learning solution for $u$ and Brownian motions}{169}{part.3}\protected@file@percent } +\@input{ann_rep_brownian_motion_monte_carlo.aux} +\citation{*} +\bibdata{Dissertation.bib} +\bibcite{bass_2011}{{1}{2011}{{Bass}}{{}}} +\bibcite{Beck_2021}{{2}{2021a}{{Beck et~al.}}{{}}} +\bibcite{BHJ21}{{3}{2021b}{{Beck et~al.}}{{}}} +\bibcite{bhj20}{{4}{2021c}{{Beck et~al.}}{{}}} +\bibcite{crandall_lions}{{5}{1992}{{Crandall et~al.}}{{}}} +\bibcite{da_prato_zabczyk_2002}{{6}{2002}{{Da~Prato and Zabczyk}}{{}}} +\bibcite{durrett2019probability}{{7}{2019}{{Durrett}}{{}}} +\bibcite{golub2013matrix}{{8}{2013}{{Golub and Van~Loan}}{{}}} +\bibcite{grohsetal}{{9}{2018}{{Grohs et~al.}}{{}}} +\bibcite{grohs2019spacetime}{{10}{2023}{{Grohs et~al.}}{{}}} +\bibcite{Grohs_2022}{{11}{2022}{{Grohs et~al.}}{{}}} +\bibcite{Gyngy1996ExistenceOS}{{12}{1996}{{Gy{\"o}ngy and Krylov}}{{}}} +\bibcite{hutzenthaler_overcoming_2020}{{13}{2020a}{{Hutzenthaler et~al.}}{{}}} +\bibcite{hutzenthaler_strong_2021}{{14}{2021}{{Hutzenthaler et~al.}}{{}}} +\bibcite{hjw2020}{{15}{2020b}{{Hutzenthaler et~al.}}{{}}} +\bibcite{Ito1942a}{{16}{1942a}{{It\^o}}{{}}} +\bibcite{Ito1946}{{17}{1942b}{{It\^o}}{{}}} +\bibcite{karatzas1991brownian}{{18}{1991}{{Karatzas and Shreve}}{{}}} +\bibcite{rio_moment_2009}{{19}{2009}{{Rio}}{{}}} +\bibstyle{apalike} +\@writefile{toc}{\contentsline {chapter}{Appendices}{180}{section*.3}\protected@file@percent } +\newlabel{pythoncode}{{1}{181}{Python Code}{lstlisting.a..1}{}} +\newlabel{pythoncode@cref}{{[lstlisting][1][0]1}{[1][181][]181}} +\@writefile{lol}{\contentsline {lstlisting}{\numberline {1}Python Code}{181}{lstlisting.a..1}\protected@file@percent } +\newlabel{pythoncode}{{2}{183}{Python Code}{lstlisting.a..2}{}} +\newlabel{pythoncode@cref}{{[lstlisting][2][0]2}{[1][183][]183}} +\@writefile{lol}{\contentsline {lstlisting}{\numberline {2}Python Code}{183}{lstlisting.a..2}\protected@file@percent } +\gdef \@abspage@last{185} diff --git a/Dissertation_unzipped/main.bbl b/Dissertation_unzipped/main.bbl new file mode 100644 index 0000000..07097c3 --- /dev/null +++ b/Dissertation_unzipped/main.bbl @@ -0,0 +1,120 @@ +\begin{thebibliography}{} + +\bibitem[Bass, 2011]{bass_2011} +Bass, R.~F. (2011). +\newblock {\em Brownian Motion}, page 6–12. +\newblock Cambridge Series in Statistical and Probabilistic Mathematics. + Cambridge University Press. + +\bibitem[Beck et~al., 2021a]{Beck_2021} +Beck, C., Gonon, L., Hutzenthaler, M., and Jentzen, A. (2021a). +\newblock On existence and uniqueness properties for solutions of stochastic + fixed point equations. +\newblock {\em Discrete \& Continuous Dynamical Systems - B}, 26(9):4927. + +\bibitem[Beck et~al., 2021b]{BHJ21} +Beck, C., Hutzenthaler, M., and Jentzen, A. (2021b). +\newblock On nonlinear {Feynman}{\textendash}{Kac} formulas for viscosity + solutions of semilinear parabolic partial differential equations. +\newblock {\em Stochastics and Dynamics}, 21(08). + +\bibitem[Beck et~al., 2021c]{bhj20} +Beck, C., Hutzenthaler, M., and Jentzen, A. (2021c). +\newblock On nonlinear feynman–kac formulas for viscosity solutions of + semilinear parabolic partial differential equations. +\newblock {\em Stochastics and Dynamics}, 21(08):2150048. + +\bibitem[Crandall et~al., 1992]{crandall_lions} +Crandall, M.~G., Ishii, H., and Lions, P.-L. (1992). +\newblock User’s guide to viscosity solutions of second order partial + differential equations. +\newblock {\em Bull. Amer. Math. Soc.}, 27(1):1--67. + +\bibitem[Da~Prato and Zabczyk, 2002]{da_prato_zabczyk_2002} +Da~Prato, G. and Zabczyk, J. (2002). +\newblock {\em Second Order Partial Differential Equations in Hilbert Spaces}. +\newblock London Mathematical Society Lecture Note Series. Cambridge University + Press. + +\bibitem[Durrett, 2019]{durrett2019probability} +Durrett, R. (2019). +\newblock {\em Probability: Theory and Examples}. +\newblock Cambridge Series in Statistical and Probabilistic Mathematics. + Cambridge University Press. + +\bibitem[Golub and Van~Loan, 2013]{golub2013matrix} +Golub, G. and Van~Loan, C. (2013). +\newblock {\em Matrix Computations}. +\newblock Johns Hopkins Studies in the Mathematical Sciences. Johns Hopkins + University Press. + +\bibitem[Grohs et~al., 2018]{grohsetal} +Grohs, P., Hornung, F., Jentzen, A., and von Wurstemberger, P. (2018). +\newblock {A proof that artificial neural networks overcome the curse of + dimensionality in the numerical approximation of Black-Scholes partial + differential equations}. +\newblock Papers 1809.02362, arXiv.org. + +\bibitem[Grohs et~al., 2023]{grohs2019spacetime} +Grohs, P., Hornung, F., Jentzen, A., and Zimmermann, P. (2023). +\newblock Space-time error estimates for deep neural network approximations for + differential equations. +\newblock {\em Advances in Computational Mathematics}, 49(1):4. + +\bibitem[Grohs et~al., 2022]{Grohs_2022} +Grohs, P., Jentzen, A., and Salimova, D. (2022). +\newblock Deep neural network approximations for solutions of {PDEs} based on + monte carlo algorithms. +\newblock {\em Partial Differential Equations and Applications}, 3(4). + +\bibitem[Gy{\"o}ngy and Krylov, 1996]{Gyngy1996ExistenceOS} +Gy{\"o}ngy, I. and Krylov, N.~V. (1996). +\newblock Existence of strong solutions for {It\^o}'s stochastic equations via + approximations. +\newblock {\em Probability Theory and Related Fields}, 105:143--158. + +\bibitem[Hutzenthaler et~al., 2020a]{hutzenthaler_overcoming_2020} +Hutzenthaler, M., Jentzen, A., Kruse, T., Anh~Nguyen, T., and von + Wurstemberger, P. (2020a). +\newblock Overcoming the curse of dimensionality in the numerical approximation + of semilinear parabolic partial differential equations. +\newblock {\em Proceedings of the Royal Society A: Mathematical, Physical and + Engineering Sciences}, 476(2244):20190630. + +\bibitem[Hutzenthaler et~al., 2021]{hutzenthaler_strong_2021} +Hutzenthaler, M., Jentzen, A., Kuckuck, B., and Padgett, J.~L. (2021). +\newblock Strong {$L^p$}-error analysis of nonlinear {Monte} {Carlo} + approximations for high-dimensional semilinear partial differential + equations. +\newblock Technical Report arXiv:2110.08297, arXiv. +\newblock arXiv:2110.08297 [cs, math] type: article. + +\bibitem[Hutzenthaler et~al., 2020b]{hjw2020} +Hutzenthaler, M., Jentzen, A., and von Wurstemberger~Wurstemberger (2020b). +\newblock {Overcoming the curse of dimensionality in the approximative pricing + of financial derivatives with default risks}. +\newblock {\em Electronic Journal of Probability}, 25(none):1 -- 73. + +\bibitem[It\^o, 1942a]{Ito1942a} +It\^o, K. (1942a). +\newblock Differential equations determining {Markov} processes (original in + {Japanese}). +\newblock {\em Zenkoku Shijo Sugaku Danwakai}, 244(1077):1352--1400. + +\bibitem[It\^o, 1942b]{Ito1946} +It\^o, K. (1942b). +\newblock On a stochastic integral equation. +\newblock {\em Proc. Imperial Acad. Tokyo}, 244(1077):1352--1400. + +\bibitem[Karatzas and Shreve, 1991]{karatzas1991brownian} +Karatzas, I. and Shreve, S. (1991). +\newblock {\em Brownian Motion and Stochastic Calculus}. +\newblock Graduate Texts in Mathematics (113) (Book 113). Springer New York. + +\bibitem[Rio, 2009]{rio_moment_2009} +Rio, E. (2009). +\newblock Moment {Inequalities} for {Sums} of {Dependent} {Random} {Variables} + under {Projective} {Conditions}. +\newblock {\em J Theor Probab}, 22(1):146--163. + +\end{thebibliography} diff --git a/Dissertation_unzipped/main.bib b/Dissertation_unzipped/main.bib new file mode 100644 index 0000000..f635ff9 --- /dev/null +++ b/Dissertation_unzipped/main.bib @@ -0,0 +1,664 @@ +@book{karatzas1991brownian, + title={Brownian Motion and Stochastic Calculus}, + author={Karatzas, I. and Shreve, S.E.}, + isbn={9780387976556}, + lccn={96167783}, + series={Graduate Texts in Mathematics (113) (Book 113)}, + url={https://books.google.com/books?id=ATNy\_Zg3PSsC}, + year={1991}, + publisher={Springer New York} +} + +@article{grohs2019spacetime, + abstract = {Over the last few years deep artificial neural networks (ANNs) have very successfully been used in numerical simulations for a wide variety of computational problems including computer vision, image classification, speech recognition, natural language processing, as well as computational advertisement. In addition, it has recently been proposed to approximate solutions of high-dimensional partial differential equations (PDEs) by means of stochastic learning problems involving deep ANNs. There are now also a few rigorous mathematical results in the scientific literature which provide error estimates for such deep learning based approximation methods for PDEs. All of these articles provide spatial error estimates for ANN approximations for PDEs but do not provide error estimates for the entire space-time error for the considered ANN approximations. It is the subject of the main result of this article to provide space-time error estimates for deep ANN approximations of Euler approximations of certain perturbed differential equations. Our proof of this result is based (i) on a certain ANN calculus and (ii) on ANN approximation results for products of the form {\$}{$[$}0,T{$]$}{$\backslash$}times {$\backslash$}mathbb {\{}R{\}}\^{}{\{}d{\}}{$\backslash$}ni (t,x){\{}{$\backslash$}kern -.5pt{\}}{$\backslash$}mapsto {\{}{$\backslash$}kern -.5pt{\}} tx{\{}{$\backslash$}kern -.5pt{\}}{$\backslash$}in {\{}{$\backslash$}kern -.5pt{\}} {$\backslash$}mathbb {\{}R{\}}\^{}{\{}d{\}}{\$}where {\$}T{\{}{$\backslash$}kern -.5pt{\}}{$\backslash$}in {\{}{$\backslash$}kern -.5pt{\}} (0,{$\backslash$}infty ){\$}, {\$}d{\{}{$\backslash$}kern -.5pt{\}}{$\backslash$}in {\{}{$\backslash$}kern -.5pt{\}} {$\backslash$}mathbb {\{}N{\}}{\$}, which we both develop within this article.}, + author = {Grohs, Philipp and Hornung, Fabian and Jentzen, Arnulf and Zimmermann, Philipp}, + date = {2023/01/11}, + date-added = {2023-09-08 14:49:03 -0500}, + date-modified = {2023-09-08 14:49:03 -0500}, + doi = {10.1007/s10444-022-09970-2}, + id = {Grohs2023}, + isbn = {1572-9044}, + journal = {Advances in Computational Mathematics}, + number = {1}, + pages = {4}, + title = {Space-time error estimates for deep neural network approximations for differential equations}, + url = {https://doi.org/10.1007/s10444-022-09970-2}, + volume = {49}, + year = {2023}, + bdsk-url-1 = {https://doi.org/10.1007/s10444-022-09970-2}} + +@article{Grohs_2022, + doi = {10.1007/s42985-021-00100-z}, + + url = {https://doi.org/10.1007%2Fs42985-021-00100-z}, + + year = 2022, + month = {jun}, + + publisher = {Springer Science and Business Media {LLC} +}, + + volume = {3}, + + number = {4}, + + author = {Philipp Grohs and Arnulf Jentzen and Diyora Salimova}, + + title = {Deep neural network approximations for solutions of {PDEs} based on Monte Carlo algorithms}, + + journal = {Partial Differential Equations and Applications} +} +@article{Ito1942a, +author={It\^o, K.}, +title={Differential Equations Determining {Markov} Processes (Original in {Japanese})}, +journal={Zenkoku Shijo Sugaku Danwakai}, +year="1942", +volume="244", +number="1077", +pages={1352-1400}, +URL="https://cir.nii.ac.jp/crid/1573105975386021120" +} +@article{Ito1946, +author={It\^o, K.}, +title={On a stochastic integral equation}, +journal={Proc. Imperial Acad. Tokyo}, +year="1942", +volume="244", +number="1077", +pages="1352-1400", +URL="https://cir.nii.ac.jp/crid/1573105975386021120" +} + +@inbook{bass_2011, place={Cambridge}, series={Cambridge Series in Statistical and Probabilistic Mathematics}, title={Brownian Motion}, DOI={10.1017/CBO9780511997044.004}, booktitle={Stochastic Processes}, publisher={Cambridge University Press}, author={Bass, Richard F.}, year={2011}, pages={6–12}, collection={Cambridge Series in Statistical and Probabilistic Mathematics}} + +@article{hutzenthaler_overcoming_2020, +author = {Hutzenthaler, Martin and Jentzen, Arnulf and Kruse, Thomas and Anh Nguyen, Tuan and von Wurstemberger, Philippe }, +title = {Overcoming the curse of dimensionality in the numerical approximation of semilinear parabolic partial differential equations}, +journal = {Proceedings of the Royal Society A: Mathematical, Physical and Engineering Sciences}, +volume = {476}, +number = {2244}, +pages = {20190630}, +year = {2020}, +doi = {10.1098/rspa.2019.0630}, + +URL = {https://royalsocietypublishing.org/doi/abs/10.1098/rspa.2019.0630}, +eprint = {https://royalsocietypublishing.org/doi/pdf/10.1098/rspa.2019.0630} +, + abstract = { For a long time it has been well-known that high-dimensional linear parabolic partial differential equations (PDEs) can be approximated by Monte Carlo methods with a computational effort which grows polynomially both in the dimension and in the reciprocal of the prescribed accuracy. In other words, linear PDEs do not suffer from the curse of dimensionality. For general semilinear PDEs with Lipschitz coefficients, however, it remained an open question whether these suffer from the curse of dimensionality. In this paper we partially solve this open problem. More precisely, we prove in the case of semilinear heat equations with gradient-independent and globally Lipschitz continuous nonlinearities that the computational effort of a variant of the recently introduced multilevel Picard approximations grows at most polynomially both in the dimension and in the reciprocal of the required accuracy. } +} + +@article{Beck_2021, + doi = {10.3934/dcdsb.2020320}, + + url = {https://doi.org/10.3934%2Fdcdsb.2020320}, + + year = {2021}, + publisher = {American Institute of Mathematical Sciences (AIMS)}, + + volume = {26}, + + number = {9}, + + pages = {4927}, + + author = {Christian Beck and Lukas Gonon and Martin Hutzenthaler and Arnulf Jentzen}, + + title = {On existence and uniqueness properties for solutions of stochastic fixed point equations}, + + journal = {Discrete \& Continuous Dynamical Systems - B} +} + +@article{BHJ21, + doi = {10.1142/s0219493721500489}, + + url = {https://doi.org/10.1142%2Fs0219493721500489}, + + year = 2021, + month = {jul}, + + publisher = {World Scientific Pub Co Pte Ltd}, + + volume = {21}, + + number = {08}, + + author = {Christian Beck and Martin Hutzenthaler and Arnulf Jentzen}, + + title = {On nonlinear {Feynman}{\textendash}{Kac} formulas for viscosity solutions of semilinear parabolic partial differential equations}, + + journal = {Stochastics and Dynamics} +} +@article{Gyngy1996ExistenceOS, + title={Existence of strong solutions for {It\^o}'s stochastic equations via approximations}, + author={Istv{\'a}n Gy{\"o}ngy and Nicolai V. Krylov}, + journal={Probability Theory and Related Fields}, + year={1996}, + volume={105}, + pages={143-158} +} + +@book{durrett2019probability, + title={Probability: Theory and Examples}, + author={Durrett, R.}, + isbn={9781108473682}, + lccn={2018047195}, + series={Cambridge Series in Statistical and Probabilistic Mathematics}, + url={https://books.google.com/books?id=b22MDwAAQBAJ}, + year={2019}, + publisher={Cambridge University Press} +} + +@techreport{hutzenthaler_strong_2021, + title = {Strong {$L^p$}-error analysis of nonlinear {Monte} {Carlo} approximations for high-dimensional semilinear partial differential equations}, + url = {http://arxiv.org/abs/2110.08297}, + + number = {arXiv:2110.08297}, + urldate = {2022-10-29}, + institution = {arXiv}, + author = {Hutzenthaler, Martin and Jentzen, Arnulf and Kuckuck, Benno and Padgett, Joshua Lee}, + month = oct, + year = {2021}, + doi = {10.48550/arXiv.2110.08297}, + note = {arXiv:2110.08297 [cs, math] +type: article}, + keywords = {Mathematics - Numerical Analysis, Mathematics - Probability}, + annote = {Comment: 42 pages.}, + file = {arXiv Fulltext PDF:files/6/Hutzenthaler et al. - 2021 - Strong \$L^p\$-error analysis of nonlinear Monte Car.pdf:application/pdf;arXiv.org Snapshot:files/7/2110.html:text/html}, +} + +@TechReport{grohsetal, + author={Philipp Grohs and Fabian Hornung and Arnulf Jentzen and Philippe von Wurstemberger}, + title={{A proof that artificial neural networks overcome the curse of dimensionality in the numerical approximation of Black-Scholes partial differential equations}}, + year=2018, + month=Sep, + institution={arXiv.org}, + type={Papers}, + url={https://ideas.repec.org/p/arx/papers/1809.02362.html}, + number={1809.02362}, + abstract={Artificial neural networks (ANNs) have very successfully been used in numerical simulations for a series of computational problems ranging from image classification/image recognition, speech recognition, time series analysis, game intelligence, and computational advertising to numerical approximations of partial differential equations (PDEs). Such numerical simulations suggest that ANNs have the capacity to very efficiently approximate high-dimensional functions and, especially, indicate that ANNs seem to admit the fundamental power to overcome the curse of dimensionality when approximating the high-dimensional functions appearing in the above named computational problems. There are a series of rigorous mathematical approximation results for ANNs in the scientific literature. Some of them prove convergence without convergence rates and some even rigorously establish convergence rates but there are only a few special cases where mathematical results can rigorously explain the empirical success of ANNs when approximating high-dimensional functions. The key contribution of this article is to disclose that ANNs can efficiently approximate high-dimensional functions in the case of numerical approximations of Black-Scholes PDEs. More precisely, this work reveals that the number of required parameters of an ANN to approximate the solution of the Black-Scholes PDE grows at most polynomially in both the reciprocal of the prescribed approximation accuracy $\varepsilon > 0$ and the PDE dimension $d \in \mathbb{N}$. We thereby prove, for the first time, that ANNs do indeed overcome the curse of dimensionality in the numerical approximation of Black-Scholes PDEs.}, + keywords={}, + doi={}, +} + + +@article{crandall_lions, + title = {User’s guide to viscosity solutions of second order partial differential equations}, + volume = {27}, + issn = {0273-0979, 1088-9485}, + url = {https://www.ams.org/bull/1992-27-01/S0273-0979-1992-00266-5/}, + doi = {10.1090/S0273-0979-1992-00266-5}, + abstract = {Advancing research. Creating connections.}, + language = {en}, + number = {1}, + urldate = {2023-03-07}, + journal = {Bull. Amer. Math. Soc.}, + author = {Crandall, Michael G. and Ishii, Hitoshi and Lions, Pierre-Louis}, + year = {1992}, + keywords = {comparison theorems, dynamic programming, elliptic equations, fully nonlinear equations, generalized solutions, Hamilton-Jacobi equations, maximum principles, nonlinear boundary value problems, parabolic equations, partial differential equations, Perron’s method, Viscosity solutions}, + pages = {1--67}, + file = {Full Text PDF:files/129/Crandall et al. - 1992 - User’s guide to viscosity solutions of second orde.pdf:application/pdf}, +} + +@book{da_prato_zabczyk_2002, +place={Cambridge}, series={London Mathematical Society Lecture Note Series}, title={Second Order Partial Differential Equations in Hilbert Spaces}, DOI={10.1017/CBO9780511543210}, publisher={Cambridge University Press}, author={Da Prato, Giuseppe and Zabczyk, Jerzy}, year={2002}, collection={London Mathematical Society Lecture Note Series}} + +@article{rio_moment_2009, + title = {Moment {Inequalities} for {Sums} of {Dependent} {Random} {Variables} under {Projective} {Conditions}}, + volume = {22}, + issn = {1572-9230}, + url = {https://doi.org/10.1007/s10959-008-0155-9}, + doi = {10.1007/s10959-008-0155-9}, + abstract = {We obtain precise constants in the Marcinkiewicz-Zygmund inequality for martingales in \${\textbackslash}mathbb\{L\}{\textasciicircum}\{p\}\$for p{\textgreater}2 and a new Rosenthal type inequality for stationary martingale differences for p in ]2,3]. The Rosenthal inequality is then extended to stationary and adapted sequences. As in Peligrad et al. (Proc. Am. Math. Soc. 135:541–550, [2007]), the bounds are expressed in terms of \${\textbackslash}mathbb\{L\}{\textasciicircum}\{p\}\$-norms of conditional expectations with respect to an increasing field of sigma algebras. Some applications to a particular Markov chain are given.}, + language = {en}, + number = {1}, + urldate = {2023-01-06}, + journal = {J Theor Probab}, + author = {Rio, Emmanuel}, + month = mar, + year = {2009}, + keywords = {60 F 05, 60 F 17, Martingale, Moment inequality, Projective criteria, Rosenthal inequality, Stationary sequences}, + pages = {146--163}, +} +@book{golub2013matrix, + title={Matrix Computations}, + author={Golub, G.H. and Van Loan, C.F.}, + isbn={9781421407944}, + lccn={2012943449}, + series={Johns Hopkins Studies in the Mathematical Sciences}, + url={https://books.google.com/books?id=X5YfsuCWpxMC}, + year={2013}, + publisher={Johns Hopkins University Press} +} + +@article{hjw2020, +author = {Martin Hutzenthaler and Arnulf Jentzen and von Wurstemberger Wurstemberger}, +title = {{Overcoming the curse of dimensionality in the approximative pricing of financial derivatives with default risks}}, +volume = {25}, +journal = {Electronic Journal of Probability}, +number = {none}, +publisher = {Institute of Mathematical Statistics and Bernoulli Society}, +pages = {1 -- 73}, +keywords = {curse of dimensionality, high-dimensional PDEs, multilevel Picard method, semilinear KolmogorovPDEs, Semilinear PDEs}, +year = {2020}, +doi = {10.1214/20-EJP423}, +URL = {https://doi.org/10.1214/20-EJP423} +} + +@article{bhj20, +author = {Beck, Christian and Hutzenthaler, Martin and Jentzen, Arnulf}, +title = {On nonlinear Feynman–Kac formulas for viscosity solutions of semilinear parabolic partial differential equations}, +journal = {Stochastics and Dynamics}, +volume = {21}, +number = {08}, +pages = {2150048}, +year = {2021}, +doi = {10.1142/S0219493721500489}, + +URL = { + + https://doi.org/10.1142/S0219493721500489 + + + +}, +eprint = { + + https://doi.org/10.1142/S0219493721500489 + + + +} +, + abstract = { The classical Feynman–Kac identity builds a bridge between stochastic analysis and partial differential equations (PDEs) by providing stochastic representations for classical solutions of linear Kolmogorov PDEs. This opens the door for the derivation of sampling based Monte Carlo approximation methods, which can be meshfree and thereby stand a chance to approximate solutions of PDEs without suffering from the curse of dimensionality. In this paper, we extend the classical Feynman–Kac formula to certain semilinear Kolmogorov PDEs. More specifically, we identify suitable solutions of stochastic fixed point equations (SFPEs), which arise when the classical Feynman–Kac identity is formally applied to semilinear Kolmorogov PDEs, as viscosity solutions of the corresponding PDEs. This justifies, in particular, employing full-history recursive multilevel Picard (MLP) approximation algorithms, which have recently been shown to overcome the curse of dimensionality in the numerical approximation of solutions of SFPEs, in the numerical approximation of semilinear Kolmogorov PDEs. } +} + +@article{tsaban_harnessing_2022, + title = {Harnessing protein folding neural networks for peptide–protein docking}, + volume = {13}, + copyright = {2022 The Author(s)}, + issn = {2041-1723}, + url = {https://www.nature.com/articles/s41467-021-27838-9}, + doi = {10.1038/s41467-021-27838-9}, + abstract = {Highly accurate protein structure predictions by deep neural networks such as AlphaFold2 and RoseTTAFold have tremendous impact on structural biology and beyond. Here, we show that, although these deep learning approaches have originally been developed for the in silico folding of protein monomers, AlphaFold2 also enables quick and accurate modeling of peptide–protein interactions. Our simple implementation of AlphaFold2 generates peptide–protein complex models without requiring multiple sequence alignment information for the peptide partner, and can handle binding-induced conformational changes of the receptor. We explore what AlphaFold2 has memorized and learned, and describe specific examples that highlight differences compared to state-of-the-art peptide docking protocol PIPER-FlexPepDock. These results show that AlphaFold2 holds great promise for providing structural insight into a wide range of peptide–protein complexes, serving as a starting point for the detailed characterization and manipulation of these interactions.}, + language = {en}, + number = {1}, + urldate = {2023-11-15}, + journal = {Nat Commun}, + author = {Tsaban, Tomer and Varga, Julia K. and Avraham, Orly and Ben-Aharon, Ziv and Khramushin, Alisa and Schueler-Furman, Ora}, + month = jan, + year = {2022}, + note = {Number: 1 +Publisher: Nature Publishing Group}, + keywords = {Machine learning, Molecular modelling, Peptides, Protein structure predictions}, + pages = {176}, + file = {Full Text PDF:/Users/shakilrafi/Zotero/storage/EKLDKE65/Tsaban et al. - 2022 - Harnessing protein folding neural networks for pep.pdf:application/pdf}, +} + +@article{davies_signature_2021, + title={The signature and cusp geometry of hyperbolic knots}, + author={Alex Davies and Andr'as Juh'asz and Marc Lackenby and Nenad Tomasev}, + journal={ArXiv}, + year={2021}, + volume={abs/2111.15323}, + url={https://api.semanticscholar.org/CorpusID:244729717} +} + +@article{zhao_space-based_2023, + title = {Space-based gravitational wave signal detection and extraction with deep neural network}, + volume = {6}, + copyright = {2023 Springer Nature Limited}, + issn = {2399-3650}, + url = {https://www.nature.com/articles/s42005-023-01334-6}, + doi = {10.1038/s42005-023-01334-6}, + abstract = {Space-based gravitational wave (GW) detectors will be able to observe signals from sources that are otherwise nearly impossible from current ground-based detection. Consequently, the well established signal detection method, matched filtering, will require a complex template bank, leading to a computational cost that is too expensive in practice. Here, we develop a high-accuracy GW signal detection and extraction method for all space-based GW sources. As a proof of concept, we show that a science-driven and uniform multi-stage self-attention-based deep neural network can identify synthetic signals that are submerged in Gaussian noise. Our method exhibits a detection rate exceeding 99\% in identifying signals from various sources, with the signal-to-noise ratio at 50, at a false alarm rate of 1\%. while obtaining at least 95\% similarity compared with target signals. We further demonstrate the interpretability and strong generalization behavior for several extended scenarios.}, + language = {en}, + number = {1}, + urldate = {2023-11-15}, + journal = {Commun Phys}, + author = {Zhao, Tianyu and Lyu, Ruoxi and Wang, He and Cao, Zhoujian and Ren, Zhixiang}, + month = aug, + year = {2023}, + note = {Number: 1 +Publisher: Nature Publishing Group}, + keywords = {Astronomy and planetary science, Computational science}, + pages = {1--12}, + file = {Full Text PDF:/Users/shakilrafi/Zotero/storage/JCCM78TZ/Zhao et al. - 2023 - Space-based gravitational wave signal detection an.pdf:application/pdf}, +} +@misc{wu2022sustainable, + title={Sustainable AI: Environmental Implications, Challenges and Opportunities}, + author={Carole-Jean Wu and Ramya Raghavendra and Udit Gupta and Bilge Acun and Newsha Ardalani and Kiwan Maeng and Gloria Chang and Fiona Aga Behram and James Huang and Charles Bai and Michael Gschwind and Anurag Gupta and Myle Ott and Anastasia Melnikov and Salvatore Candido and David Brooks and Geeta Chauhan and Benjamin Lee and Hsien-Hsin S. Lee and Bugra Akyildiz and Maximilian Balandat and Joe Spisak and Ravi Jain and Mike Rabbat and Kim Hazelwood}, + year={2022}, + eprint={2111.00364}, + archivePrefix={arXiv}, + primaryClass={cs.LG} +} +@misc{strubell2019energy, + title={Energy and Policy Considerations for Deep Learning in NLP}, + author={Emma Strubell and Ananya Ganesh and Andrew McCallum}, + year={2019}, + eprint={1906.02243}, + archivePrefix={arXiv}, + primaryClass={cs.CL} +} + + +@article{e_multilevel_2021, + title = {Multilevel {Picard} iterations for solving smooth semilinear parabolic heat equations}, + volume = {2}, + issn = {2662-2971}, + url = {https://doi.org/10.1007/s42985-021-00089-5}, + doi = {10.1007/s42985-021-00089-5}, + abstract = {We introduce a new family of numerical algorithms for approximating solutions of general high-dimensional semilinear parabolic partial differential equations at single space-time points. The algorithm is obtained through a delicate combination of the Feynman–Kac and the Bismut–Elworthy–Li formulas, and an approximate decomposition of the Picard fixed-point iteration with multilevel accuracy. The algorithm has been tested on a variety of semilinear partial differential equations that arise in physics and finance, with satisfactory results. Analytical tools needed for the analysis of such algorithms, including a semilinear Feynman–Kac formula, a new class of seminorms and their recursive inequalities, are also introduced. They allow us to prove for semilinear heat equations with gradient-independent nonlinearities that the computational complexity of the proposed algorithm is bounded by \$\$O(d{\textbackslash},\{{\textbackslash}varepsilon \}{\textasciicircum}\{-(4+{\textbackslash}delta )\})\$\$for any \$\${\textbackslash}delta {\textbackslash}in (0,{\textbackslash}infty )\$\$under suitable assumptions, where \$\$d{\textbackslash}in \{\{{\textbackslash}mathbb \{N\}\}\}\$\$is the dimensionality of the problem and \$\$\{{\textbackslash}varepsilon \}{\textbackslash}in (0,{\textbackslash}infty )\$\$is the prescribed accuracy. Moreover, the introduced class of numerical algorithms is also powerful for proving high-dimensional approximation capacities for deep neural networks.}, + language = {en}, + number = {6}, + urldate = {2023-11-27}, + journal = {Partial Differ. Equ. Appl.}, + author = {E, Weinan and Hutzenthaler, Martin and Jentzen, Arnulf and Kruse, Thomas}, + month = nov, + year = {2021}, + keywords = {65M75, Curse of dimensionality, High-dimensional PDEs, High-dimensional semilinear BSDEs, Multilevel Monte Carlo method, Multilevel Picard iteration}, + pages = {80}, + file = {Full Text PDF:/Users/shakilrafi/Zotero/storage/5ADX78DS/E et al. - 2021 - Multilevel Picard iterations for solving smooth se.pdf:application/pdf}, +} + + +@article{e_multilevel_2019, + title = {On {Multilevel} {Picard} {Numerical} {Approximations} for {High}-{Dimensional} {Nonlinear} {Parabolic} {Partial} {Differential} {Equations} and {High}-{Dimensional} {Nonlinear} {Backward} {Stochastic} {Differential} {Equations}}, + volume = {79}, + issn = {1573-7691}, + url = {https://doi.org/10.1007/s10915-018-00903-0}, + doi = {10.1007/s10915-018-00903-0}, + abstract = {Parabolic partial differential equations (PDEs) and backward stochastic differential equations (BSDEs) are key ingredients in a number of models in physics and financial engineering. In particular, parabolic PDEs and BSDEs are fundamental tools in pricing and hedging models for financial derivatives. The PDEs and BSDEs appearing in such applications are often high-dimensional and nonlinear. Since explicit solutions of such PDEs and BSDEs are typically not available, it is a very active topic of research to solve such PDEs and BSDEs approximately. In the recent article (E et al., Multilevel Picard iterations for solving smooth semilinear parabolic heat equations, arXiv:1607.03295) we proposed a family of approximation methods based on Picard approximations and multilevel Monte Carlo methods and showed under suitable regularity assumptions on the exact solution of a semilinear heat equation that the computational complexity is bounded by \$\$O( d {\textbackslash}, \{{\textbackslash}varepsilon \}{\textasciicircum}\{-(4+{\textbackslash}delta )\})\$\$for any \$\${\textbackslash}delta {\textbackslash}in (0,{\textbackslash}infty )\$\$where d is the dimensionality of the problem and \$\$\{{\textbackslash}varepsilon \}{\textbackslash}in (0,{\textbackslash}infty )\$\$is the prescribed accuracy. In this paper, we test the applicability of this algorithm on a variety of 100-dimensional nonlinear PDEs that arise in physics and finance by means of numerical simulations presenting approximation accuracy against runtime. The simulation results for many of these 100-dimensional example PDEs are very satisfactory in terms of both accuracy and speed. Moreover, we also provide a review of other approximation methods for nonlinear PDEs and BSDEs from the scientific literature.}, + language = {en}, + number = {3}, + urldate = {2023-11-27}, + journal = {J Sci Comput}, + author = {E, Weinan and Hutzenthaler, Martin and Jentzen, Arnulf and Kruse, Thomas}, + month = jun, + year = {2019}, + keywords = {65M75, Curse of dimensionality, High-dimensional nonlinear BSDEs, High-dimensional PDEs, Multilevel Monte Carlo method, Multilevel Picard approximations}, + pages = {1534--1571}, + file = {Full Text PDF:/Users/shakilrafi/Zotero/storage/7KHG4238/E et al. - 2019 - On Multilevel Picard Numerical Approximations for .pdf:application/pdf}, +} + + +@inproceedings{vaswani_attention_2017, + title = {Attention is {All} you {Need}}, + volume = {30}, + url = {https://proceedings.neurips.cc/paper_files/paper/2017/hash/3f5ee243547dee91fbd053c1c4a845aa-Abstract.html}, + abstract = {The dominant sequence transduction models are based on complex recurrent orconvolutional neural networks in an encoder and decoder configuration. The best performing such models also connect the encoder and decoder through an attentionm echanisms. We propose a novel, simple network architecture based solely onan attention mechanism, dispensing with recurrence and convolutions entirely.Experiments on two machine translation tasks show these models to be superiorin quality while being more parallelizable and requiring significantly less timeto train. Our single model with 165 million parameters, achieves 27.5 BLEU onEnglish-to-German translation, improving over the existing best ensemble result by over 1 BLEU. On English-to-French translation, we outperform the previoussingle state-of-the-art with model by 0.7 BLEU, achieving a BLEU score of 41.1.}, + urldate = {2023-12-01}, + booktitle = {Advances in {Neural} {Information} {Processing} {Systems}}, + publisher = {Curran Associates, Inc.}, + author = {Vaswani, Ashish and Shazeer, Noam and Parmar, Niki and Uszkoreit, Jakob and Jones, Llion and Gomez, Aidan N and Kaiser, Łukasz and Polosukhin, Illia}, + year = {2017}, + file = {Full Text PDF:/Users/shakilrafi/Zotero/storage/T7R9QP6K/Vaswani et al. - 2017 - Attention is All you Need.pdf:application/pdf}, +} + + +@article{arik_tabnet_2021, + title = {{TabNet}: {Attentive} {Interpretable} {Tabular} {Learning}}, + volume = {35}, + copyright = {Copyright (c) 2021 Association for the Advancement of Artificial Intelligence}, + issn = {2374-3468}, + shorttitle = {{TabNet}}, + url = {https://ojs.aaai.org/index.php/AAAI/article/view/16826}, + doi = {10.1609/aaai.v35i8.16826}, + abstract = {We propose a novel high-performance and interpretable canonical deep tabular data learning architecture, TabNet. TabNet uses sequential attention to choose which features to reason from at each decision step, enabling interpretability and more efficient learning as the learning capacity is used for the most salient features. We demonstrate that TabNet outperforms other variants on a wide range of non-performance-saturated tabular datasets and yields interpretable feature attributions plus insights into its global behavior. Finally, we demonstrate self-supervised learning for tabular data, significantly improving performance when unlabeled data is abundant.}, + language = {en}, + number = {8}, + urldate = {2023-12-01}, + journal = {Proceedings of the AAAI Conference on Artificial Intelligence}, + author = {Arik, Sercan Ö and Pfister, Tomas}, + month = may, + year = {2021}, + note = {Number: 8}, + keywords = {Unsupervised \& Self-Supervised Learning}, + pages = {6679--6687}, + file = {Full Text PDF:/Users/shakilrafi/Zotero/storage/SHV66I4Y/Arik and Pfister - 2021 - TabNet Attentive Interpretable Tabular Learning.pdf:application/pdf}, +} + +@INPROCEEDINGS {8099678, +author = {F. Chollet}, +booktitle = {2017 IEEE Conference on Computer Vision and Pattern Recognition (CVPR)}, +title = {Xception: Deep Learning with Depthwise Separable Convolutions}, +year = {2017}, +volume = {}, +issn = {1063-6919}, +pages = {1800-1807}, +abstract = {We present an interpretation of Inception modules in convolutional neural networks as being an intermediate step in-between regular convolution and the depthwise separable convolution operation (a depthwise convolution followed by a pointwise convolution). In this light, a depthwise separable convolution can be understood as an Inception module with a maximally large number of towers. This observation leads us to propose a novel deep convolutional neural network architecture inspired by Inception, where Inception modules have been replaced with depthwise separable convolutions. We show that this architecture, dubbed Xception, slightly outperforms Inception V3 on the ImageNet dataset (which Inception V3 was designed for), and significantly outperforms Inception V3 on a larger image classification dataset comprising 350 million images and 17,000 classes. Since the Xception architecture has the same number of parameters as Inception V3, the performance gains are not due to increased capacity but rather to a more efficient use of model parameters.}, +keywords = {computer architecture;correlation;convolutional codes;google;biological neural networks}, +doi = {10.1109/CVPR.2017.195}, +url = {https://doi.ieeecomputersociety.org/10.1109/CVPR.2017.195}, +publisher = {IEEE Computer Society}, +address = {Los Alamitos, CA, USA}, +month = {jul} +} + +@article{srivastava_dropout_2014, + title = {Dropout: a simple way to prevent neural networks from overfitting}, + volume = {15}, + issn = {1532-4435}, + shorttitle = {Dropout}, + abstract = {Deep neural nets with a large number of parameters are very powerful machine learning systems. However, overfitting is a serious problem in such networks. Large networks are also slow to use, making it difficult to deal with overfitting by combining the predictions of many different large neural nets at test time. Dropout is a technique for addressing this problem. The key idea is to randomly drop units (along with their connections) from the neural network during training. This prevents units from co-adapting too much. During training, dropout samples from an exponential number of different "thinned" networks. At test time, it is easy to approximate the effect of averaging the predictions of all these thinned networks by simply using a single unthinned network that has smaller weights. This significantly reduces overfitting and gives major improvements over other regularization methods. We show that dropout improves the performance of neural networks on supervised learning tasks in vision, speech recognition, document classification and computational biology, obtaining state-of-the-art results on many benchmark data sets.}, + number = {1}, + journal = {J. Mach. Learn. Res.}, + author = {Srivastava, Nitish and Hinton, Geoffrey and Krizhevsky, Alex and Sutskever, Ilya and Salakhutdinov, Ruslan}, + month = jan, + year = {2014}, + keywords = {deep learning, model combination, neural networks, regularization}, + pages = {1929--1958}, + file = {Full Text PDF:/Users/shakilrafi/Zotero/storage/JK87IU3H/Srivastava et al. - 2014 - Dropout a simple way to prevent neural networks f.pdf:application/pdf}, +} + + +@article{petersen_optimal_2018, + title = {Optimal approximation of piecewise smooth functions using deep {ReLU} neural networks}, + volume = {108}, + issn = {1879-2782}, + doi = {10.1016/j.neunet.2018.08.019}, + abstract = {We study the necessary and sufficient complexity of ReLU neural networks - in terms of depth and number of weights - which is required for approximating classifier functions in an Lp-sense. As a model class, we consider the set Eβ(Rd) of possibly discontinuous piecewise Cβ functions f:[-12,12]d→R, where the different "smooth regions" of f are separated by Cβ hypersurfaces. For given dimension d≥2, regularity β{\textgreater}0, and accuracy ε{\textgreater}0, we construct artificial neural networks with ReLU activation function that approximate functions from Eβ(Rd) up to an L2 error of ε. The constructed networks have a fixed number of layers, depending only on d and β, and they have O(ε-2(d-1)∕β) many nonzero weights, which we prove to be optimal. For the proof of optimality, we establish a lower bound on the description complexity of the class Eβ(Rd). By showing that a family of approximating neural networks gives rise to an encoder for Eβ(Rd), we then prove that one cannot approximate a general function f∈Eβ(Rd) using neural networks that are less complex than those produced by our construction. In addition to the optimality in terms of the number of weights, we show that in order to achieve this optimal approximation rate, one needs ReLU networks of a certain minimal depth. Precisely, for piecewise Cβ(Rd) functions, this minimal depth is given - up to a multiplicative constant - by β∕d. Up to a log factor, our constructed networks match this bound. This partly explains the benefits of depth for ReLU networks by showing that deep networks are necessary to achieve efficient approximation of (piecewise) smooth functions. Finally, we analyze approximation in high-dimensional spaces where the function f to be approximated can be factorized into a smooth dimension reducing feature map τ and classifier function g - defined on a low-dimensional feature space - as f=g∘τ. We show that in this case the approximation rate depends only on the dimension of the feature space and not the input dimension.}, + language = {eng}, + journal = {Neural Netw}, + author = {Petersen, Philipp and Voigtlaender, Felix}, + month = dec, + year = {2018}, + pmid = {30245431}, + keywords = {Curse of dimension, Deep neural networks, Function approximation, Metric entropy, Neural Networks, Computer, Piecewise smooth functions, Sparse connectivity}, + pages = {296--330}, + file = {Submitted Version:/Users/shakilrafi/Zotero/storage/UL4GLF59/Petersen and Voigtlaender - 2018 - Optimal approximation of piecewise smooth function.pdf:application/pdf}, +} + + + @misc{bigbook, + title={Mathematical Introduction to Deep Learning: Methods, Implementations, and Theory}, + author={Arnulf Jentzen and Benno Kuckuck and Philippe von Wurstemberger}, + year={2023}, + eprint={2310.20360}, + archivePrefix={arXiv}, + primaryClass={cs.LG} +} + +@article{mcculloch_logical_1943, + title = {A logical calculus of the ideas immanent in nervous activity}, + volume = {5}, + issn = {1522-9602}, + url = {https://doi.org/10.1007/BF02478259}, + doi = {10.1007/BF02478259}, + abstract = {Because of the “all-or-none” character of nervous activity, neural events and the relations among them can be treated by means of propositional logic. It is found that the behavior of every net can be described in these terms, with the addition of more complicated logical means for nets containing circles; and that for any logical expression satisfying certain conditions, one can find a net behaving in the fashion it describes. It is shown that many particular choices among possible neurophysiological assumptions are equivalent, in the sense that for every net behaving under one assumption, there exists another net which behaves under the other and gives the same results, although perhaps not in the same time. Various applications of the calculus are discussed.}, + number = {4}, + journal = {The bulletin of mathematical biophysics}, + author = {McCulloch, Warren S. and Pitts, Walter}, + month = dec, + year = {1943}, + pages = {115--133}, +} + +@article{Hornik1991ApproximationCO, + title={Approximation capabilities of multilayer feedforward networks}, + author={Kurt Hornik}, + journal={Neural Networks}, + year={1991}, + volume={4}, + pages={251-257}, + url={https://api.semanticscholar.org/CorpusID:7343126} +} + + +@article{cybenko_approximation_1989, + title = {Approximation by superpositions of a sigmoidal function}, + volume = {2}, + issn = {1435-568X}, + url = {https://doi.org/10.1007/BF02551274}, + doi = {10.1007/BF02551274}, + abstract = {In this paper we demonstrate that finite linear combinations of compositions of a fixed, univariate function and a set of affine functionals can uniformly approximate any continuous function ofn real variables with support in the unit hypercube; only mild conditions are imposed on the univariate function. Our results settle an open question about representability in the class of single hidden layer neural networks. In particular, we show that arbitrary decision regions can be arbitrarily well approximated by continuous feedforward neural networks with only a single internal, hidden layer and any continuous sigmoidal nonlinearity. The paper discusses approximation properties of other possible types of nonlinearities that might be implemented by artificial neural networks.}, + number = {4}, + journal = {Mathematics of Control, Signals and Systems}, + author = {Cybenko, G.}, + month = dec, + year = {1989}, + pages = {303--314}, +} + +@article{KNOKE2021100035, +title = {Solving differential equations via artificial neural networks: Findings and failures in a model problem}, +journal = {Examples and Counterexamples}, +volume = {1}, +pages = {100035}, +year = {2021}, +issn = {2666-657X}, +doi = {https://doi.org/10.1016/j.exco.2021.100035}, +url = {https://www.sciencedirect.com/science/article/pii/S2666657X21000197}, +author = {Tobias Knoke and Thomas Wick}, +keywords = {Ordinary differential equation, Logistic equation, Feedforward neural network, numerical optimization, PyTorch}, +abstract = {In this work, we discuss some pitfalls when solving differential equations with neural networks. Due to the highly nonlinear cost functional, local minima might be approximated by which functions may be obtained, that do not solve the problem. The main reason for these failures is a sensitivity on initial guesses for the nonlinear iteration. We apply known algorithms and corresponding implementations, including code snippets, and present an example and counter example for the logistic differential equations. These findings are further substantiated with variations in collocation points and learning rates.} +} + +@article{Lagaris_1998, + title={Artificial neural networks for solving ordinary and partial differential equations}, + volume={9}, + ISSN={1045-9227}, + url={http://dx.doi.org/10.1109/72.712178}, + DOI={10.1109/72.712178}, + number={5}, + journal={IEEE Transactions on Neural Networks}, + publisher={Institute of Electrical and Electronics Engineers (IEEE)}, + author={Lagaris, I.E. and Likas, A. and Fotiadis, D.I.}, + year={1998}, + pages={987–1000} } + +@ARTICLE{gunnar_carlsson, + author = {{Carlsson}, Gunnar and {Br{\"u}el Gabrielsson}, Rickard}, + title = "{Topological Approaches to Deep Learning}", + journal = {arXiv e-prints}, + keywords = {Computer Science - Machine Learning, Computer Science - Artificial Intelligence, Mathematics - Algebraic Topology, Statistics - Machine Learning, 68T05, 55N35, 62-07}, + year = 2018, + month = nov, + eid = {arXiv:1811.01122}, + pages = {arXiv:1811.01122}, + doi = {10.48550/arXiv.1811.01122}, +archivePrefix = {arXiv}, + eprint = {1811.01122}, + primaryClass = {cs.LG}, + adsurl = {https://ui.adsabs.harvard.edu/abs/2018arXiv181101122C}, + adsnote = {Provided by the SAO/NASA Astrophysics Data System} +} + +@misc{shiebler2021category, + title={Category Theory in Machine Learning}, + author={Dan Shiebler and Bruno Gavranović and Paul Wilson}, + year={2021}, + eprint={2106.07032}, + archivePrefix={arXiv}, + primaryClass={cs.LG} +} + +@inproceedings{vaswani2, + author = {Vaswani, Ashish and Shazeer, Noam and Parmar, Niki and Uszkoreit, Jakob and Jones, Llion and Gomez, Aidan N and Kaiser, \L ukasz and Polosukhin, Illia}, + booktitle = {Advances in Neural Information Processing Systems}, + editor = {I. Guyon and U. Von Luxburg and S. Bengio and H. Wallach and R. Fergus and S. Vishwanathan and R. Garnett}, + pages = {}, + publisher = {Curran Associates, Inc.}, + title = {Attention is All you Need}, + url = {https://proceedings.neurips.cc/paper_files/paper/2017/file/3f5ee243547dee91fbd053c1c4a845aa-Paper.pdf}, + volume = {30}, + year = {2017} +} + +@article{arik2, + title = {{TabNet}: {Attentive} {Interpretable} {Tabular} {Learning}}, + volume = {35}, + copyright = {Copyright (c) 2021 Association for the Advancement of Artificial Intelligence}, + issn = {2374-3468}, + shorttitle = {{TabNet}}, + url = {https://ojs.aaai.org/index.php/AAAI/article/view/16826}, + doi = {10.1609/aaai.v35i8.16826}, + abstract = {We propose a novel high-performance and interpretable canonical deep tabular data learning architecture, TabNet. TabNet uses sequential attention to choose which features to reason from at each decision step, enabling interpretability and more efficient learning as the learning capacity is used for the most salient features. We demonstrate that TabNet outperforms other variants on a wide range of non-performance-saturated tabular datasets and yields interpretable feature attributions plus insights into its global behavior. Finally, we demonstrate self-supervised learning for tabular data, significantly improving performance when unlabeled data is abundant.}, + language = {en}, + number = {8}, + urldate = {2024-02-01}, + journal = {Proceedings of the AAAI Conference on Artificial Intelligence}, + author = {Arik, Sercan \"O and Pfister, Tomas}, + month = may, + year = {2021}, + note = {Number: 8}, + keywords = {Unsupervised \& Self-Supervised Learning}, + pages = {6679--6687}, + file = {Full Text PDF:/Users/shakilrafi/Zotero/storage/7MTMXR4G/Arik and Pfister - 2021 - TabNet Attentive Interpretable Tabular Learning.pdf:application/pdf}, +} + +@Manual{dplyr, + title = {dplyr: A Grammar of Data Manipulation}, + author = {Hadley Wickham and Romain François and Lionel Henry and Kirill Müller and Davis Vaughan}, + year = {2023}, + note = {R package version 1.1.4, https://github.com/tidyverse/dplyr}, + url = {https://dplyr.tidyverse.org}, +} + +@Book{ggplot2, + author = {Hadley Wickham}, + title = {ggplot2: Elegant Graphics for Data Analysis}, + publisher = {Springer-Verlag New York}, + year = {2016}, + isbn = {978-3-319-24277-4}, + url = {https://ggplot2.tidyverse.org}, + } + + @online{plotly, + author = {{Plotly Technologies Inc}}, + title = {Collaborative data science}, + publisher = {Plotly Technologies Inc.}, + address = {Montreal, QC}, + year = {2015}, + url = {https://plot.ly} +} + +@misc{rafi_towards_2024, + title = {Towards an {Algebraic} {Framework} {For} {Approximating} {Functions} {Using} {Neural} {Network} {Polynomials}}, + url = {https://arxiv.org/abs/2402.01058v1}, + abstract = {We make the case for neural network objects and extend an already existing neural network calculus explained in detail in Chapter 2 on {\textbackslash}cite\{bigbook\}. Our aim will be to show that, yes, indeed, it makes sense to talk about neural network polynomials, neural network exponentials, sine, and cosines in the sense that they do indeed approximate their real number counterparts subject to limitations on certain of their parameters, \$q\$, and \${\textbackslash}varepsilon\$. While doing this, we show that the parameter and depth growth are only polynomial on their desired accuracy (defined as a 1-norm difference over \${\textbackslash}mathbb\{R\}\$), thereby showing that this approach to approximating, where a neural network in some sense has the structural properties of the function it is approximating is not entire intractable.}, + language = {en}, + urldate = {2024-02-11}, + journal = {arXiv.org}, + author = {Rafi, Shakil and Padgett, Joshua Lee and Nakarmi, Ukash}, + month = feb, + year = {2024}, + file = {Full Text PDF:/Users/shakilrafi/Zotero/storage/A8LPKNZK/Rafi et al. - 2024 - Towards an Algebraic Framework For Approximating F.pdf:application/pdf}, +} + +@Manual{nnR-package, title = {nnR: Neural Networks Made Algebraic}, author = {Shakil Rafi and Joshua Lee Padgett}, year = {2024}, note = {R package version 0.1.0}, url = {https://github.com/2shakilrafi/nnR/}, } + + @software{Rafi_nnR_2024, +author = {Rafi, Shakil}, +license = {GPL-3.0}, +month = feb, +title = {{nnR}}, +url = {https://github.com/2shakilrafi/nnR}, +version = {0.10}, +year = {2024} +} + + + + + diff --git a/Dissertation_unzipped/main.blg b/Dissertation_unzipped/main.blg new file mode 100644 index 0000000..183e110 --- /dev/null +++ b/Dissertation_unzipped/main.blg @@ -0,0 +1,55 @@ +This is BibTeX, Version 0.99d (TeX Live 2023) +Capacity: max_strings=200000, hash_size=200000, hash_prime=170003 +The top-level auxiliary file: main.aux +A level-1 auxiliary file: Introduction.aux +A level-1 auxiliary file: Brownian_motion_monte_carlo.aux +A level-1 auxiliary file: u_visc_sol.aux +A level-1 auxiliary file: brownian_motion_monte_carlo_non_linear_case.aux +A level-1 auxiliary file: neural_network_introduction.aux +A level-1 auxiliary file: ann_product.aux +A level-1 auxiliary file: modified_mlp_associated_nn.aux +A level-1 auxiliary file: categorical_neural_network.aux +A level-1 auxiliary file: ann_rep_brownian_motion_monte_carlo.aux +The style file: apalike.bst +Database file #1: Dissertation.bib +You've used 19 entries, + 1935 wiz_defined-function locations, + 608 strings with 7874 characters, +and the built_in function-call counts, 7185 in all, are: += -- 699 +> -- 297 +< -- 12 ++ -- 102 +- -- 98 +* -- 611 +:= -- 1285 +add.period$ -- 63 +call.type$ -- 19 +change.case$ -- 139 +chr.to.int$ -- 15 +cite$ -- 19 +duplicate$ -- 274 +empty$ -- 495 +format.name$ -- 125 +if$ -- 1401 +int.to.chr$ -- 5 +int.to.str$ -- 0 +missing$ -- 22 +newline$ -- 99 +num.names$ -- 57 +pop$ -- 116 +preamble$ -- 1 +purify$ -- 144 +quote$ -- 0 +skip$ -- 206 +stack$ -- 0 +substring$ -- 438 +swap$ -- 32 +text.length$ -- 3 +text.prefix$ -- 0 +top$ -- 0 +type$ -- 104 +warning$ -- 0 +while$ -- 52 +width$ -- 0 +write$ -- 252 diff --git a/Dissertation_unzipped/main.fdb_latexmk b/Dissertation_unzipped/main.fdb_latexmk new file mode 100644 index 0000000..9753568 --- /dev/null +++ b/Dissertation_unzipped/main.fdb_latexmk @@ -0,0 +1,350 @@ +# Fdb version 4 +["bibtex main"] 1698964459 "main.aux" "main.bbl" "main" 1698964893 0 + "./Dissertation.bib" 1694204049 15478 5c9f4b3fde2c8a96140f181dc5150d92 "" + "/usr/local/texlive/2023/texmf-dist/bibtex/bst/base/apalike.bst" 1292289607 24635 604dafcc79f521a11ea73e506e1fbd98 "" + "Brownian_motion_monte_carlo.aux" 1698964891 5768 66f558472ad62a6b4f988826c5647bfe "pdflatex" + "Introduction.aux" 1698964891 3669 4ea81a2c3a3c959e15ea6a78f001bc09 "pdflatex" + "ann_product.aux" 1698964892 7983 77e8dfb761aec0f7529f3163ba041327 "pdflatex" + "ann_rep_brownian_motion_monte_carlo.aux" 1698964893 2552 b9fa1936112d4716e8f60e11419c4909 "pdflatex" + "brownian_motion_monte_carlo_non_linear_case.aux" 1698964892 2270 f7093a557b3a6878c9e7a045650ad8af "pdflatex" + "categorical_neural_network.aux" 1698964893 1581 7f82bfb75a6512cc11b762c978a54184 "pdflatex" + "main.aux" 1698964893 12975 d17e0eceec7c9a24162c63746268414c "pdflatex" + "modified_mlp_associated_nn.aux" 1698964893 1885 bf1dc82072627925434c1ed9a68f7c61 "pdflatex" + "neural_network_introduction.aux" 1698964892 10333 8c9e3ecc00ae46cc56ccee66b609f2a2 "pdflatex" + "u_visc_sol.aux" 1698964892 11172 7b0ef3ba581d5fbdf4ed6a4cc4a58d31 "pdflatex" + (generated) + "main.bbl" + "main.blg" + (rewritten before read) +["pdflatex"] 1698964890 "main.tex" "main.pdf" "main" 1698964893 0 + "/Users/shakilrafi/Library/texlive/2023/texmf-var/fonts/pk/ljfour/public/bbm/bbm10.657pk" 1697728496 7808 57f8ecbf949d2084aee114f82a71627e "" + "/usr/local/texlive/2023/texmf-dist/fonts/enc/dvips/cm-super/cm-super-ts1.enc" 1136849721 2900 1537cc8184ad1792082cd229ecc269f4 "" + "/usr/local/texlive/2023/texmf-dist/fonts/map/fontname/texfonts.map" 1577235249 3524 cb3e574dea2d1052e39280babc910dc8 "" + "/usr/local/texlive/2023/texmf-dist/fonts/tfm/jknappen/ec/ectt1000.tfm" 1136768653 1536 06717a2b50de47d4087ac0e6cd759455 "" + "/usr/local/texlive/2023/texmf-dist/fonts/tfm/jknappen/ec/tctt1000.tfm" 1136768653 1536 c5729d01ab121276cf99b309129349a0 "" + "/usr/local/texlive/2023/texmf-dist/fonts/tfm/public/amsfonts/cmextra/cmex7.tfm" 1246382020 1004 54797486969f23fa377b128694d548df "" + "/usr/local/texlive/2023/texmf-dist/fonts/tfm/public/amsfonts/cmextra/cmex8.tfm" 1246382020 988 bdf658c3bfc2d96d3c8b02cfc1c94c20 "" + "/usr/local/texlive/2023/texmf-dist/fonts/tfm/public/amsfonts/cmextra/cmex9.tfm" 1246382020 996 a18840b13b499c08ac2de96a99eda4bc "" + "/usr/local/texlive/2023/texmf-dist/fonts/tfm/public/amsfonts/euler/eufm10.tfm" 1246382020 1040 b84415f97d114011685943ade933dc71 "" + "/usr/local/texlive/2023/texmf-dist/fonts/tfm/public/amsfonts/euler/eufm5.tfm" 1246382020 1040 a9d2074f3fa062d4d9046b92e2334d8c "" + "/usr/local/texlive/2023/texmf-dist/fonts/tfm/public/amsfonts/euler/eufm7.tfm" 1246382020 1040 82eb6630b094bff824fccca83ff507f9 "" + "/usr/local/texlive/2023/texmf-dist/fonts/tfm/public/amsfonts/symbols/msam10.tfm" 1246382020 916 f87d7c45f9c908e672703b83b72241a3 "" + "/usr/local/texlive/2023/texmf-dist/fonts/tfm/public/amsfonts/symbols/msam5.tfm" 1246382020 924 9904cf1d39e9767e7a3622f2a125a565 "" + "/usr/local/texlive/2023/texmf-dist/fonts/tfm/public/amsfonts/symbols/msam7.tfm" 1246382020 928 2dc8d444221b7a635bb58038579b861a "" + "/usr/local/texlive/2023/texmf-dist/fonts/tfm/public/amsfonts/symbols/msbm10.tfm" 1246382020 908 2921f8a10601f252058503cc6570e581 "" + "/usr/local/texlive/2023/texmf-dist/fonts/tfm/public/amsfonts/symbols/msbm5.tfm" 1246382020 940 75ac932a52f80982a9f8ea75d03a34cf "" + "/usr/local/texlive/2023/texmf-dist/fonts/tfm/public/amsfonts/symbols/msbm7.tfm" 1246382020 940 228d6584342e91276bf566bcf9716b83 "" + "/usr/local/texlive/2023/texmf-dist/fonts/tfm/public/bbm/bbm10.tfm" 1227036886 560 39fd35b5e4a6aca3672660cc548ba860 "" + "/usr/local/texlive/2023/texmf-dist/fonts/tfm/public/bbm/bbm12.tfm" 1227036886 556 710091e9bfd7488f1b5667243215698b "" + "/usr/local/texlive/2023/texmf-dist/fonts/tfm/public/bbm/bbm17.tfm" 1227036886 556 3d6eb2c708f77241f83a898b0f181201 "" + "/usr/local/texlive/2023/texmf-dist/fonts/tfm/public/bbm/bbm5.tfm" 1227036886 556 9c04e2d7f25768427a52589d484d3199 "" + "/usr/local/texlive/2023/texmf-dist/fonts/tfm/public/bbm/bbm6.tfm" 1227036886 560 4c5ff0e6c23877f3f630ae9d8ef92c6e "" + "/usr/local/texlive/2023/texmf-dist/fonts/tfm/public/bbm/bbm7.tfm" 1227036886 560 ab71d518408103034050efd8ebc8a16a "" + "/usr/local/texlive/2023/texmf-dist/fonts/tfm/public/bbm/bbm8.tfm" 1227036886 560 2e80f8a1cb59527f57d99bb5fccd0f3c "" + "/usr/local/texlive/2023/texmf-dist/fonts/tfm/public/bbm/bbm9.tfm" 1227036886 564 538e51111886634ef38425dfff2e2694 "" + "/usr/local/texlive/2023/texmf-dist/fonts/tfm/public/boondox/BOONDOX-r-ds.tfm" 1304615349 916 fbe573b4f4b204cfe65c92e2e101d105 "" + "/usr/local/texlive/2023/texmf-dist/fonts/tfm/public/boondox/zxxrl7z.tfm" 1304615349 740 9412be1bafb7b34037445bfb33534951 "" + "/usr/local/texlive/2023/texmf-dist/fonts/tfm/public/cm/cmbx10.tfm" 1136768653 1328 c834bbb027764024c09d3d2bf908b5f0 "" + "/usr/local/texlive/2023/texmf-dist/fonts/tfm/public/cm/cmbx12.tfm" 1136768653 1324 c910af8c371558dc20f2d7822f66fe64 "" + "/usr/local/texlive/2023/texmf-dist/fonts/tfm/public/cm/cmbx6.tfm" 1136768653 1344 8a0be4fe4d376203000810ad4dc81558 "" + "/usr/local/texlive/2023/texmf-dist/fonts/tfm/public/cm/cmbx8.tfm" 1136768653 1332 1fde11373e221473104d6cc5993f046e "" + "/usr/local/texlive/2023/texmf-dist/fonts/tfm/public/cm/cmbxti10.tfm" 1136768653 1532 9162035f4e7176612125649e348e2195 "" + "/usr/local/texlive/2023/texmf-dist/fonts/tfm/public/cm/cmex10.tfm" 1136768653 992 662f679a0b3d2d53c1b94050fdaa3f50 "" + "/usr/local/texlive/2023/texmf-dist/fonts/tfm/public/cm/cmmi10.tfm" 1136768653 1528 abec98dbc43e172678c11b3b9031252a "" + "/usr/local/texlive/2023/texmf-dist/fonts/tfm/public/cm/cmmi12.tfm" 1136768653 1524 4414a8315f39513458b80dfc63bff03a "" + "/usr/local/texlive/2023/texmf-dist/fonts/tfm/public/cm/cmmi6.tfm" 1136768653 1512 f21f83efb36853c0b70002322c1ab3ad "" + "/usr/local/texlive/2023/texmf-dist/fonts/tfm/public/cm/cmmi8.tfm" 1136768653 1520 eccf95517727cb11801f4f1aee3a21b4 "" + "/usr/local/texlive/2023/texmf-dist/fonts/tfm/public/cm/cmmi9.tfm" 1136768653 1524 d89e2d087a9828407a196f428428ef4a "" + "/usr/local/texlive/2023/texmf-dist/fonts/tfm/public/cm/cmr10.tfm" 1136768653 1296 45809c5a464d5f32c8f98ba97c1bb47f "" + "/usr/local/texlive/2023/texmf-dist/fonts/tfm/public/cm/cmr12.tfm" 1136768653 1288 655e228510b4c2a1abe905c368440826 "" + "/usr/local/texlive/2023/texmf-dist/fonts/tfm/public/cm/cmr17.tfm" 1136768653 1292 296a67155bdbfc32aa9c636f21e91433 "" + "/usr/local/texlive/2023/texmf-dist/fonts/tfm/public/cm/cmr6.tfm" 1136768653 1300 b62933e007d01cfd073f79b963c01526 "" + "/usr/local/texlive/2023/texmf-dist/fonts/tfm/public/cm/cmr8.tfm" 1136768653 1292 21c1c5bfeaebccffdb478fd231a0997d "" + "/usr/local/texlive/2023/texmf-dist/fonts/tfm/public/cm/cmr9.tfm" 1136768653 1292 6b21b9c2c7bebb38aa2273f7ca0fb3af "" + "/usr/local/texlive/2023/texmf-dist/fonts/tfm/public/cm/cmss10.tfm" 1136768653 1316 b636689f1933f24d1294acdf6041daaa "" + "/usr/local/texlive/2023/texmf-dist/fonts/tfm/public/cm/cmss12.tfm" 1136768653 1324 37b971caf729d7edd9cbb9f9b0ea76eb "" + "/usr/local/texlive/2023/texmf-dist/fonts/tfm/public/cm/cmss17.tfm" 1136768653 1320 ed93d62c5f2c16343826001f03341dbc "" + "/usr/local/texlive/2023/texmf-dist/fonts/tfm/public/cm/cmss8.tfm" 1136768653 1296 d77f431d10d47c8ea2cc18cf45346274 "" + "/usr/local/texlive/2023/texmf-dist/fonts/tfm/public/cm/cmss9.tfm" 1136768653 1320 49357c421c0d469f88b867dd0c3d10e8 "" + "/usr/local/texlive/2023/texmf-dist/fonts/tfm/public/cm/cmsy10.tfm" 1136768653 1124 6c73e740cf17375f03eec0ee63599741 "" + "/usr/local/texlive/2023/texmf-dist/fonts/tfm/public/cm/cmsy6.tfm" 1136768653 1116 933a60c408fc0a863a92debe84b2d294 "" + "/usr/local/texlive/2023/texmf-dist/fonts/tfm/public/cm/cmsy8.tfm" 1136768653 1120 8b7d695260f3cff42e636090a8002094 "" + "/usr/local/texlive/2023/texmf-dist/fonts/tfm/public/cm/cmsy9.tfm" 1136768653 1116 25a7bf822c58caf309a702ef79f4afbb "" + "/usr/local/texlive/2023/texmf-dist/fonts/tfm/public/cm/cmti10.tfm" 1136768653 1480 aa8e34af0eb6a2941b776984cf1dfdc4 "" + "/usr/local/texlive/2023/texmf-dist/fonts/tfm/public/cm/cmti12.tfm" 1136768653 1484 ed72f8f5cf654cda15ecc8e32bfcbee5 "" + "/usr/local/texlive/2023/texmf-dist/fonts/tfm/public/cm/cmti7.tfm" 1136768653 1492 86331993fe614793f5e7e755835c31c5 "" + "/usr/local/texlive/2023/texmf-dist/fonts/tfm/public/cm/cmti8.tfm" 1136768653 1504 1747189e0441d1c18f3ea56fafc1c480 "" + "/usr/local/texlive/2023/texmf-dist/fonts/tfm/public/cm/cmti9.tfm" 1136768653 1476 cccc6cc4935c18ec3d5623b77ecb8b74 "" + "/usr/local/texlive/2023/texmf-dist/fonts/tfm/public/cm/cmtt10.tfm" 1136768653 768 1321e9409b4137d6fb428ac9dc956269 "" + "/usr/local/texlive/2023/texmf-dist/fonts/tfm/public/rsfs/rsfs10.tfm" 1229303445 688 37338d6ab346c2f1466b29e195316aa4 "" + "/usr/local/texlive/2023/texmf-dist/fonts/tfm/public/rsfs/rsfs5.tfm" 1229303445 684 3a51bd4fd9600428d5264cf25f04bb9a "" + "/usr/local/texlive/2023/texmf-dist/fonts/tfm/public/rsfs/rsfs7.tfm" 1229303445 692 1b6510779f0f05e9cbf03e0f6c8361e6 "" + "/usr/local/texlive/2023/texmf-dist/fonts/tfm/public/stmaryrd/stmary10.tfm" 1302307949 848 f478e0761563bbc369eca609a1741348 "" + "/usr/local/texlive/2023/texmf-dist/fonts/tfm/public/stmaryrd/stmary5.tfm" 1302307949 848 e1bc58a31b9ed9c3729ffea165acfaac "" + "/usr/local/texlive/2023/texmf-dist/fonts/tfm/public/stmaryrd/stmary6.tfm" 1302307949 848 068dd119e13b75777e62821af7d4f2a6 "" + "/usr/local/texlive/2023/texmf-dist/fonts/tfm/public/stmaryrd/stmary7.tfm" 1302307949 848 26631fcb3e4cb6757598b9cda7967b63 "" + "/usr/local/texlive/2023/texmf-dist/fonts/tfm/public/stmaryrd/stmary8.tfm" 1302307949 848 6125cdd3627e68d3db8013b98e587508 "" + "/usr/local/texlive/2023/texmf-dist/fonts/tfm/public/stmaryrd/stmary9.tfm" 1302307949 848 594c171945930dfc7cc52fb30457c803 "" + "/usr/local/texlive/2023/texmf-dist/fonts/type1/public/amsfonts/cm/cmbx10.pfb" 1248133631 34811 78b52f49e893bcba91bd7581cdc144c0 "" + "/usr/local/texlive/2023/texmf-dist/fonts/type1/public/amsfonts/cm/cmbx12.pfb" 1248133631 32080 340ef9bf63678554ee606688e7b5339d "" + "/usr/local/texlive/2023/texmf-dist/fonts/type1/public/amsfonts/cm/cmbxti10.pfb" 1248133631 36554 b67dc2cfa451409e100b3fcf5f506509 "" + "/usr/local/texlive/2023/texmf-dist/fonts/type1/public/amsfonts/cm/cmex10.pfb" 1248133631 30251 6afa5cb1d0204815a708a080681d4674 "" + "/usr/local/texlive/2023/texmf-dist/fonts/type1/public/amsfonts/cm/cmmi10.pfb" 1248133631 36299 5f9df58c2139e7edcf37c8fca4bd384d "" + "/usr/local/texlive/2023/texmf-dist/fonts/type1/public/amsfonts/cm/cmmi12.pfb" 1248133631 36741 fa121aac0049305630cf160b86157ee4 "" + "/usr/local/texlive/2023/texmf-dist/fonts/type1/public/amsfonts/cm/cmmi6.pfb" 1248133631 37166 8ab3487cbe3ab49ebce74c29ea2418db "" + "/usr/local/texlive/2023/texmf-dist/fonts/type1/public/amsfonts/cm/cmmi8.pfb" 1248133631 35469 70d41d2b9ea31d5d813066df7c99281c "" + "/usr/local/texlive/2023/texmf-dist/fonts/type1/public/amsfonts/cm/cmr10.pfb" 1248133631 35752 024fb6c41858982481f6968b5fc26508 "" + "/usr/local/texlive/2023/texmf-dist/fonts/type1/public/amsfonts/cm/cmr12.pfb" 1248133631 32722 d7379af29a190c3f453aba36302ff5a9 "" + "/usr/local/texlive/2023/texmf-dist/fonts/type1/public/amsfonts/cm/cmr17.pfb" 1248133631 32362 179c33bbf43f19adbb3825bb4e36e57a "" + "/usr/local/texlive/2023/texmf-dist/fonts/type1/public/amsfonts/cm/cmr6.pfb" 1248133631 32734 69e00a6b65cedb993666e42eedb3d48f "" + "/usr/local/texlive/2023/texmf-dist/fonts/type1/public/amsfonts/cm/cmr8.pfb" 1248133631 32726 0a1aea6fcd6468ee2cf64d891f5c43c8 "" + "/usr/local/texlive/2023/texmf-dist/fonts/type1/public/amsfonts/cm/cmr9.pfb" 1248133631 33993 9b89b85fd2d9df0482bd47194d1d3bf3 "" + "/usr/local/texlive/2023/texmf-dist/fonts/type1/public/amsfonts/cm/cmss10.pfb" 1248133631 24457 5cbb7bdf209d5d1ce9892a9b80a307cc "" + "/usr/local/texlive/2023/texmf-dist/fonts/type1/public/amsfonts/cm/cmss12.pfb" 1248133631 24393 3b7eb51a67a0a62aec5849271bdb9c2e "" + "/usr/local/texlive/2023/texmf-dist/fonts/type1/public/amsfonts/cm/cmss8.pfb" 1248133631 24420 52dbb8e8aa0069a1b987309557f8d303 "" + "/usr/local/texlive/2023/texmf-dist/fonts/type1/public/amsfonts/cm/cmss9.pfb" 1248133631 24373 a91d375736817a75026663adcb2190c1 "" + "/usr/local/texlive/2023/texmf-dist/fonts/type1/public/amsfonts/cm/cmsy10.pfb" 1248133631 32569 5e5ddc8df908dea60932f3c484a54c0d "" + "/usr/local/texlive/2023/texmf-dist/fonts/type1/public/amsfonts/cm/cmsy6.pfb" 1248133631 32587 1788b0c1c5b39540c96f5e42ccd6dae8 "" + "/usr/local/texlive/2023/texmf-dist/fonts/type1/public/amsfonts/cm/cmsy8.pfb" 1248133631 32626 4f5c1b83753b1dd3a97d1b399a005b4b "" + "/usr/local/texlive/2023/texmf-dist/fonts/type1/public/amsfonts/cm/cmti10.pfb" 1248133631 37944 359e864bd06cde3b1cf57bb20757fb06 "" + "/usr/local/texlive/2023/texmf-dist/fonts/type1/public/amsfonts/cm/cmtt10.pfb" 1248133631 31099 c85edf1dd5b9e826d67c9c7293b6786c "" + "/usr/local/texlive/2023/texmf-dist/fonts/type1/public/amsfonts/cmextra/cmex8.pfb" 1248133631 30273 87a352d78b6810ae5cfdc68d2fb827b2 "" + "/usr/local/texlive/2023/texmf-dist/fonts/type1/public/amsfonts/euler/eufm10.pfb" 1336858727 21098 d4aee7c0aac232caac5688b586b9363c "" + "/usr/local/texlive/2023/texmf-dist/fonts/type1/public/amsfonts/euler/eufm7.pfb" 1336858727 21251 56705123063d7b34002d6b6e7142345e "" + "/usr/local/texlive/2023/texmf-dist/fonts/type1/public/amsfonts/latxfont/line10.pfb" 1248133631 11493 4f5ed183a47d3197cf8cd322325db6de "" + "/usr/local/texlive/2023/texmf-dist/fonts/type1/public/amsfonts/symbols/msam10.pfb" 1248133631 31764 459c573c03a4949a528c2cc7f557e217 "" + "/usr/local/texlive/2023/texmf-dist/fonts/type1/public/amsfonts/symbols/msbm10.pfb" 1248133631 34694 ad62b13721ee8eda1dcc8993c8bd7041 "" + "/usr/local/texlive/2023/texmf-dist/fonts/type1/public/amsfonts/symbols/msbm7.pfb" 1248133631 35309 940e81a5b9e04201a07e8b33a3ae6e64 "" + "/usr/local/texlive/2023/texmf-dist/fonts/type1/public/boondox/zxxrl8a.pfb" 1304615349 17115 e6f9070825b88e03075bbc6fdf632415 "" + "/usr/local/texlive/2023/texmf-dist/fonts/type1/public/cm-super/sftt1000.pfb" 1215737283 169201 9ebf99020dde51a5086e186761a34e8f "" + "/usr/local/texlive/2023/texmf-dist/fonts/type1/public/rsfs/rsfs10.pfb" 1229303445 16077 4737ac34f0fb5608550f3780a0202c22 "" + "/usr/local/texlive/2023/texmf-dist/fonts/type1/public/stmaryrd/stmary10.pfb" 1302307949 27430 0e29b053ae98d5f87d872ee72a12d5f5 "" + "/usr/local/texlive/2023/texmf-dist/fonts/vf/public/boondox/BOONDOX-r-ds.vf" 1304615349 468 7995eab1335073d481e9e8949bc62870 "" + "/usr/local/texlive/2023/texmf-dist/tex/context/base/mkii/supp-pdf.mkii" 1461363279 71627 94eb9990bed73c364d7f53f960cc8c5b "" + "/usr/local/texlive/2023/texmf-dist/tex/generic/atbegshi/atbegshi.sty" 1575674566 24708 5584a51a7101caf7e6bbf1fc27d8f7b1 "" + "/usr/local/texlive/2023/texmf-dist/tex/generic/bigintcalc/bigintcalc.sty" 1576625341 40635 c40361e206be584d448876bba8a64a3b "" + "/usr/local/texlive/2023/texmf-dist/tex/generic/bitset/bitset.sty" 1576016050 33961 6b5c75130e435b2bfdb9f480a09a39f9 "" + "/usr/local/texlive/2023/texmf-dist/tex/generic/etexcmds/etexcmds.sty" 1576625273 7734 b98cbb34c81f667027c1e3ebdbfce34b "" + "/usr/local/texlive/2023/texmf-dist/tex/generic/gettitlestring/gettitlestring.sty" 1576625223 8371 9d55b8bd010bc717624922fb3477d92e "" + "/usr/local/texlive/2023/texmf-dist/tex/generic/iftex/iftex.sty" 1644112042 7237 bdd120a32c8fdb4b433cf9ca2e7cd98a "" + "/usr/local/texlive/2023/texmf-dist/tex/generic/iftex/ifvtex.sty" 1572645307 1057 525c2192b5febbd8c1f662c9468335bb "" + "/usr/local/texlive/2023/texmf-dist/tex/generic/infwarerr/infwarerr.sty" 1575499628 8356 7bbb2c2373aa810be568c29e333da8ed "" + "/usr/local/texlive/2023/texmf-dist/tex/generic/intcalc/intcalc.sty" 1576625065 31769 002a487f55041f8e805cfbf6385ffd97 "" + "/usr/local/texlive/2023/texmf-dist/tex/generic/kvdefinekeys/kvdefinekeys.sty" 1576878844 5412 d5a2436094cd7be85769db90f29250a6 "" + "/usr/local/texlive/2023/texmf-dist/tex/generic/ltxcmds/ltxcmds.sty" 1600895880 17859 4409f8f50cd365c68e684407e5350b1b "" + "/usr/local/texlive/2023/texmf-dist/tex/generic/pdfescape/pdfescape.sty" 1576015897 19007 15924f7228aca6c6d184b115f4baa231 "" + "/usr/local/texlive/2023/texmf-dist/tex/generic/pdftexcmds/pdftexcmds.sty" 1593379760 20089 80423eac55aa175305d35b49e04fe23b "" + "/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/basiclayer/pgfcore.code.tex" 1673816307 1016 1c2b89187d12a2768764b83b4945667c "" + "/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/basiclayer/pgfcorearrows.code.tex" 1601326656 43820 1fef971b75380574ab35a0d37fd92608 "" + "/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/basiclayer/pgfcoreexternal.code.tex" 1601326656 19324 f4e4c6403dd0f1605fd20ed22fa79dea "" + "/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/basiclayer/pgfcoregraphicstate.code.tex" 1601326656 6038 ccb406740cc3f03bbfb58ad504fe8c27 "" + "/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/basiclayer/pgfcoreimage.code.tex" 1673816307 6911 f6d4cf5a3fef5cc879d668b810e82868 "" + "/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/basiclayer/pgfcorelayers.code.tex" 1601326656 4883 42daaf41e27c3735286e23e48d2d7af9 "" + "/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/basiclayer/pgfcoreobjects.code.tex" 1601326656 2544 8c06d2a7f0f469616ac9e13db6d2f842 "" + "/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/basiclayer/pgfcorepathconstruct.code.tex" 1601326656 44195 5e390c414de027626ca5e2df888fa68d "" + "/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/basiclayer/pgfcorepathprocessing.code.tex" 1601326656 17311 2ef6b2e29e2fc6a2fc8d6d652176e257 "" + "/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/basiclayer/pgfcorepathusage.code.tex" 1601326656 21302 788a79944eb22192a4929e46963a3067 "" + "/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/basiclayer/pgfcorepatterns.code.tex" 1673816307 9691 3d42d89522f4650c2f3dc616ca2b925e "" + "/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/basiclayer/pgfcorepoints.code.tex" 1601326656 33335 dd1fa4814d4e51f18be97d88bf0da60c "" + "/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/basiclayer/pgfcorequick.code.tex" 1601326656 2965 4c2b1f4e0826925746439038172e5d6f "" + "/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/basiclayer/pgfcorerdf.code.tex" 1601326656 5196 2cc249e0ee7e03da5f5f6589257b1e5b "" + "/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/basiclayer/pgfcorescopes.code.tex" 1673816307 20821 7579108c1e9363e61a0b1584778804aa "" + "/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/basiclayer/pgfcoreshade.code.tex" 1601326656 35249 abd4adf948f960299a4b3d27c5dddf46 "" + "/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/basiclayer/pgfcoretransformations.code.tex" 1673816307 22012 81b34a0aa8fa1a6158cc6220b00e4f10 "" + "/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/basiclayer/pgfcoretransparency.code.tex" 1601326656 8893 e851de2175338fdf7c17f3e091d94618 "" + "/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarybending.code.tex" 1601326656 345 9efe6b557b64ab0401dc06a4ef8ca04c "" + "/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarymatrix.code.tex" 1673816307 4228 c39d423dc1a80da31c8c67bf1067f384 "" + "/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryquotes.code.tex" 1673816307 3970 c199216b190c70e45bff870bacf0da00 "" + "/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.arrows.code.tex" 1601326656 410 048d1174dabde96757a5387b8f23d968 "" + "/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.callouts.code.tex" 1601326656 1201 8bd51e254d3ecf0cd2f21edd9ab6f1bb "" + "/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.code.tex" 1601326656 494 8de62576191924285b021f4fc4292e16 "" + "/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.geometric.code.tex" 1601326656 339 be0fe46d92a80e3385dd6a83511a46f2 "" + "/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.misc.code.tex" 1601326656 329 ba6d5440f8c16779c2384e0614158266 "" + "/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.multipart.code.tex" 1673816307 923 c7a223b32ffdeb1c839d97935eee61ff "" + "/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.symbols.code.tex" 1601326656 475 4b4056fe07caa0603fede9a162fe666d "" + "/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarytopaths.code.tex" 1608933718 11518 738408f795261b70ce8dd47459171309 "" + "/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/frontendlayer/tikz/tikz.code.tex" 1673816307 186782 af500404a9edec4d362912fe762ded92 "" + "/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/libraries/pgflibraryarrows.meta.code.tex" 1601326656 58801 1e750fb0692eb99aaac45698bbec96b1 "" + "/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/libraries/pgflibrarycurvilinear.code.tex" 1601326656 14117 ce877c5ca2b43f31c2cd81e74cc26bd9 "" + "/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/libraries/pgflibraryplothandlers.code.tex" 1601326656 32995 ac577023e12c0e4bd8aa420b2e852d1a "" + "/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/libraries/shapes/pgflibraryshapes.arrows.code.tex" 1673816307 91587 d9b31a3e308b08833e4528a7b4484b4a "" + "/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/libraries/shapes/pgflibraryshapes.callouts.code.tex" 1601326656 33336 427c354e28a4802ffd781da22ae9f383 "" + "/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/libraries/shapes/pgflibraryshapes.geometric.code.tex" 1673816307 161011 76ab54df0aa1a9d3b27a94864771d38d "" + "/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/libraries/shapes/pgflibraryshapes.misc.code.tex" 1673816307 46249 d1f322c52d26cf506b4988f31902cd5d "" + "/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/libraries/shapes/pgflibraryshapes.multipart.code.tex" 1601326656 62281 aff261ef10ba6cbe8e3c872a38c05a61 "" + "/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/libraries/shapes/pgflibraryshapes.symbols.code.tex" 1673816307 90521 9d46d4504c2ffed28ff5ef3c43d15f21 "" + "/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/math/pgfint.code.tex" 1557692582 3063 8c415c68a0f3394e45cfeca0b65f6ee6 "" + "/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/math/pgfmath.code.tex" 1673816307 949 cea70942e7b7eddabfb3186befada2e6 "" + "/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/math/pgfmathcalc.code.tex" 1673816307 13270 2e54f2ce7622437bf37e013d399743e3 "" + "/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/math/pgfmathfloat.code.tex" 1673816307 104717 9b2393fbf004a0ce7fa688dbce423848 "" + "/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.base.code.tex" 1601326656 10165 cec5fa73d49da442e56efc2d605ef154 "" + "/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.basic.code.tex" 1601326656 28178 41c17713108e0795aac6fef3d275fbca "" + "/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.code.tex" 1673816307 9649 85779d3d8d573bfd2cd4137ba8202e60 "" + "/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.comparison.code.tex" 1601326656 3865 ac538ab80c5cf82b345016e474786549 "" + "/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.integerarithmetics.code.tex" 1557692582 3177 27d85c44fbfe09ff3b2cf2879e3ea434 "" + "/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.misc.code.tex" 1621110968 11024 0179538121bc2dba172013a3ef89519f "" + "/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.random.code.tex" 1673816307 7890 0a86dbf4edfd88d022e0d889ec78cc03 "" + "/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.round.code.tex" 1601326656 3379 781797a101f647bab82741a99944a229 "" + "/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.trigonometric.code.tex" 1601326656 92405 f515f31275db273f97b9d8f52e1b0736 "" + "/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/math/pgfmathparser.code.tex" 1673816307 37466 97b0a1ba732e306a1a2034f5a73e239f "" + "/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/math/pgfmathutil.code.tex" 1601326656 8471 c2883569d03f69e8e1cabfef4999cfd7 "" + "/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/modules/pgfmodulebending.code.tex" 1601326656 10901 2a1622fae7fe4eb4574c13e264019b2f "" + "/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/modules/pgfmodulematrix.code.tex" 1673816307 21211 1e73ec76bd73964d84197cc3d2685b01 "" + "/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/modules/pgfmodulenonlineartransformations.code.tex" 1601326656 12243 a8b138086af750a4e0d253790eb930d8 "" + "/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/modules/pgfmoduleplot.code.tex" 1601326656 16121 346f9013d34804439f7436ff6786cef7 "" + "/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/modules/pgfmoduleshapes.code.tex" 1673816307 44792 271e2e1934f34c759f4dedb1e14a5015 "" + "/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/pgf.revision.tex" 1673816307 114 e6d443369d0673933b38834bf99e422d "" + "/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/systemlayer/pgf.cfg" 1601326656 926 2963ea0dcf6cc6c0a770b69ec46a477b "" + "/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-common-pdf.def" 1673816307 5542 32f75a31ea6c3a7e1148cd6d5e93dbb7 "" + "/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-pdftex.def" 1673816307 12612 7774ba67bfd72e593c4436c2de6201e3 "" + "/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/systemlayer/pgfsys.code.tex" 1673816307 61351 bc5f86e0355834391e736e97a61abced "" + "/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/systemlayer/pgfsysprotocol.code.tex" 1601326656 1896 b8e0ca0ac371d74c0ca05583f6313c91 "" + "/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/systemlayer/pgfsyssoftpath.code.tex" 1601326656 7778 53c8b5623d80238f6a20aa1df1868e63 "" + "/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/utilities/pgffor.code.tex" 1673816307 24033 d8893a1ec4d1bfa101b172754743d340 "" + "/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/utilities/pgfkeys.code.tex" 1673816307 39784 414c54e866ebab4b801e2ad81d9b21d8 "" + "/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/utilities/pgfkeyslibraryfiltered.code.tex" 1673816307 37433 940bc6d409f1ffd298adfdcaf125dd86 "" + "/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/utilities/pgfrcs.code.tex" 1673816307 4385 510565c2f07998c8a0e14f0ec07ff23c "" + "/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/utilities/pgfutil-common.tex" 1673816307 29239 22e8c7516012992a49873eff0d868fed "" + "/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/utilities/pgfutil-latex.def" 1673816307 6950 8524a062d82b7afdc4a88a57cb377784 "" + "/usr/local/texlive/2023/texmf-dist/tex/generic/soul/soul-ori.sty" 1676772013 25424 d707ac303511b52e83b1058cf923e51a "" + "/usr/local/texlive/2023/texmf-dist/tex/generic/soul/soul.sty" 1676772013 16881 2ac0a0e359c8bd07709a350b227d9d01 "" + "/usr/local/texlive/2023/texmf-dist/tex/generic/tikz-cd/tikzlibrarycd.code.tex" 1620507957 23059 b4b98da760150611227e2533f15fe352 "" + "/usr/local/texlive/2023/texmf-dist/tex/generic/uniquecounter/uniquecounter.sty" 1576624663 7008 f92eaa0a3872ed622bbf538217cd2ab7 "" + "/usr/local/texlive/2023/texmf-dist/tex/generic/witharrows/witharrows.sty" 1676493400 101990 0b0edbca37a0bb5824b4383862405e23 "" + "/usr/local/texlive/2023/texmf-dist/tex/generic/xkeyval/xkeyval.tex" 1655411236 19231 27205ee17aaa2902aea3e0c07a3cfc65 "" + "/usr/local/texlive/2023/texmf-dist/tex/generic/xkeyval/xkvutils.tex" 1655411236 7677 9cb1a74d945bc9331f2181c0a59ff34a "" + "/usr/local/texlive/2023/texmf-dist/tex/latex/algorithmicx/algorithmicx.sty" 1160617237 26750 ce139c05a983e19ddca355b43e29c395 "" + "/usr/local/texlive/2023/texmf-dist/tex/latex/amscls/amsthm.sty" 1591045760 12594 0d51ac3a545aaaa555021326ff22a6cc "" + "/usr/local/texlive/2023/texmf-dist/tex/latex/amsfonts/amsfonts.sty" 1359763108 5949 3f3fd50a8cc94c3d4cbf4fc66cd3df1c "" + "/usr/local/texlive/2023/texmf-dist/tex/latex/amsfonts/amssymb.sty" 1359763108 13829 94730e64147574077f8ecfea9bb69af4 "" + "/usr/local/texlive/2023/texmf-dist/tex/latex/amsfonts/ueuf.fd" 1359763108 1047 4252767c0fde12e3ce9f914ef4bb1ea1 "" + "/usr/local/texlive/2023/texmf-dist/tex/latex/amsfonts/umsa.fd" 1359763108 961 6518c6525a34feb5e8250ffa91731cff "" + "/usr/local/texlive/2023/texmf-dist/tex/latex/amsfonts/umsb.fd" 1359763108 961 d02606146ba5601b5645f987c92e6193 "" + "/usr/local/texlive/2023/texmf-dist/tex/latex/amsmath/amsbsy.sty" 1654720880 2222 78b930a5a6e3dc2ac69b78c2057b94d7 "" + "/usr/local/texlive/2023/texmf-dist/tex/latex/amsmath/amsgen.sty" 1654720880 4173 c989ee3ced31418e3593916ab26c793a "" + "/usr/local/texlive/2023/texmf-dist/tex/latex/amsmath/amsmath.sty" 1654720880 88393 1adf6fa3f245270d06e3d4f8910f7fc5 "" + "/usr/local/texlive/2023/texmf-dist/tex/latex/amsmath/amsopn.sty" 1654720880 4474 f04cd1cc7bd76eb033e6fb12eb6a0d77 "" + "/usr/local/texlive/2023/texmf-dist/tex/latex/amsmath/amstext.sty" 1654720880 2444 70065bddd85997dc1fd0bb7ae634e5fa "" + "/usr/local/texlive/2023/texmf-dist/tex/latex/appendix/appendix.sty" 1581200180 8878 d9f65b39ca82f1d70030390eca653b1c "" + "/usr/local/texlive/2023/texmf-dist/tex/latex/atveryend/atveryend.sty" 1576191570 19336 ce7ae9438967282886b3b036cfad1e4d "" + "/usr/local/texlive/2023/texmf-dist/tex/latex/auxhook/auxhook.sty" 1576625391 3935 57aa3c3e203a5c2effb4d2bd2efbc323 "" + "/usr/local/texlive/2023/texmf-dist/tex/latex/base/atbegshi-ltx.sty" 1667332637 3052 30236f0cc243a8651b82240dfd2e8b9d "" + "/usr/local/texlive/2023/texmf-dist/tex/latex/base/atveryend-ltx.sty" 1667332637 2462 8ce5f9a9c63002f2c1af03c262cf29af "" + "/usr/local/texlive/2023/texmf-dist/tex/latex/base/ifthen.sty" 1654720880 5319 48d7f3cfa322abd2788e3c09d624b922 "" + "/usr/local/texlive/2023/texmf-dist/tex/latex/base/report.cls" 1667332637 23203 3d69f4661dd74a5edb1507ff18e40fb9 "" + "/usr/local/texlive/2023/texmf-dist/tex/latex/base/size11.clo" 1667332637 8464 63bf71cc1214ffdd38288da73a7ca182 "" + "/usr/local/texlive/2023/texmf-dist/tex/latex/base/ts1cmtt.fd" 1667332637 2287 948a4376ad21a952b34faf55edab8f65 "" + "/usr/local/texlive/2023/texmf-dist/tex/latex/bbm-macros/bbm.sty" 1191314257 1644 1e0d54b051369c3f457872824cac219f "" + "/usr/local/texlive/2023/texmf-dist/tex/latex/bbm-macros/ubbm.fd" 1191314257 2132 62f898e14cad3357133b5cbf57b61c0a "" + "/usr/local/texlive/2023/texmf-dist/tex/latex/boondox/uboondox-ds.fd" 1304615349 635 5de453029d93b0141b4b403757026b84 "" + "/usr/local/texlive/2023/texmf-dist/tex/latex/cancel/cancel.sty" 1388445839 7592 dd751af313a16a0308545d5bfd7aaaa2 "" + "/usr/local/texlive/2023/texmf-dist/tex/latex/cleveref/cleveref.sty" 1525128982 329481 7fc6b003158402a4c694bc0a1b729308 "" + "/usr/local/texlive/2023/texmf-dist/tex/latex/enumitem/enumitem.sty" 1561238569 51697 f8f08183cd2080d9d18a41432d651dfb "" + "/usr/local/texlive/2023/texmf-dist/tex/latex/environ/environ.sty" 1399239813 4378 f429f0da968c278653359293040a8f52 "" + "/usr/local/texlive/2023/texmf-dist/tex/latex/epstopdf-pkg/epstopdf-base.sty" 1579991033 13886 d1306dcf79a944f6988e688c1785f9ce "" + "/usr/local/texlive/2023/texmf-dist/tex/latex/eso-pic/eso-pic.sty" 1602711807 11772 8d0db0794e6aeb45348f60bbe3a3e093 "" + "/usr/local/texlive/2023/texmf-dist/tex/latex/etoolbox/etoolbox.sty" 1601931149 46845 3b58f70c6e861a13d927bff09d35ecbc "" + "/usr/local/texlive/2023/texmf-dist/tex/latex/geometry/geometry.sty" 1578002852 41601 9cf6c5257b1bc7af01a58859749dd37a "" + "/usr/local/texlive/2023/texmf-dist/tex/latex/graphics-cfg/color.cfg" 1459978653 1213 620bba36b25224fa9b7e1ccb4ecb76fd "" + "/usr/local/texlive/2023/texmf-dist/tex/latex/graphics-cfg/graphics.cfg" 1465944070 1224 978390e9c2234eab29404bc21b268d1e "" + "/usr/local/texlive/2023/texmf-dist/tex/latex/graphics-def/pdftex.def" 1663965824 19448 1e988b341dda20961a6b931bcde55519 "" + "/usr/local/texlive/2023/texmf-dist/tex/latex/graphics/graphics.sty" 1654720880 18387 8f900a490197ebaf93c02ae9476d4b09 "" + "/usr/local/texlive/2023/texmf-dist/tex/latex/graphics/graphicx.sty" 1654720880 8010 a8d949cbdbc5c983593827c9eec252e1 "" + "/usr/local/texlive/2023/texmf-dist/tex/latex/graphics/keyval.sty" 1654720880 2671 7e67d78d9b88c845599a85b2d41f2e39 "" + "/usr/local/texlive/2023/texmf-dist/tex/latex/graphics/lscape.sty" 1654720880 1822 5e4f855a9ecb640f34881e4b457fa9aa "" + "/usr/local/texlive/2023/texmf-dist/tex/latex/graphics/mathcolor.ltx" 1667332637 2885 9c645d672ae17285bba324998918efd8 "" + "/usr/local/texlive/2023/texmf-dist/tex/latex/graphics/trig.sty" 1654720880 4023 293ea1c16429fc0c4cf605f4da1791a9 "" + "/usr/local/texlive/2023/texmf-dist/tex/latex/hycolor/hycolor.sty" 1580250785 17914 4c28a13fc3d975e6e81c9bea1d697276 "" + "/usr/local/texlive/2023/texmf-dist/tex/latex/hyperref/hpdftex.def" 1675889938 48272 99ede602a8ace626d8ed02f058a4bf8e "" + "/usr/local/texlive/2023/texmf-dist/tex/latex/hyperref/hyperref.sty" 1675889938 223129 4edf043af471f3251c66e432cfa22987 "" + "/usr/local/texlive/2023/texmf-dist/tex/latex/hyperref/nameref.sty" 1675889938 12947 1ce831528e963a8568de1f4d67cfb982 "" + "/usr/local/texlive/2023/texmf-dist/tex/latex/hyperref/pd1enc.def" 1675889938 14249 d947c5c09f3af04ae2f37fc11c7ac2f6 "" + "/usr/local/texlive/2023/texmf-dist/tex/latex/hyperref/puenc.def" 1675889938 117125 aa115cac3914abcf3769f370e6325117 "" + "/usr/local/texlive/2023/texmf-dist/tex/latex/jknapltx/mathrsfs.sty" 1137110241 300 12fa6f636b617656f2810ee82cb05015 "" + "/usr/local/texlive/2023/texmf-dist/tex/latex/jknapltx/ursfs.fd" 1137110241 548 cc4e3557704bfed27c7002773fad6c90 "" + "/usr/local/texlive/2023/texmf-dist/tex/latex/kvoptions/kvoptions.sty" 1655478651 22555 6d8e155cfef6d82c3d5c742fea7c992e "" + "/usr/local/texlive/2023/texmf-dist/tex/latex/kvsetkeys/kvsetkeys.sty" 1665067230 13815 760b0c02f691ea230f5359c4e1de23a7 "" + "/usr/local/texlive/2023/texmf-dist/tex/latex/l3backend/l3backend-pdftex.def" 1673989714 30429 213676d4c7327a21d91ddaed900e7b81 "" + "/usr/local/texlive/2023/texmf-dist/tex/latex/l3kernel/expl3.sty" 1677186603 6107 5cfea8a675c58918b8c04be10261e48c "" + "/usr/local/texlive/2023/texmf-dist/tex/latex/l3packages/l3keys2e/l3keys2e.sty" 1675461949 4674 257c150d9d5c2fbc229303c8beaf6228 "" + "/usr/local/texlive/2023/texmf-dist/tex/latex/latexconfig/epstopdf-sys.cfg" 1279039959 678 4792914a8f45be57bb98413425e4c7af "" + "/usr/local/texlive/2023/texmf-dist/tex/latex/letltxmacro/letltxmacro.sty" 1575499565 5766 13a9e8766c47f30327caf893ece86ac8 "" + "/usr/local/texlive/2023/texmf-dist/tex/latex/listings/listings.cfg" 1677530001 1829 d8258b7d94f5f955e70c623e525f9f45 "" + "/usr/local/texlive/2023/texmf-dist/tex/latex/listings/listings.sty" 1677530001 80947 75a96bb4c9f40ae31d54a01d924df2ff "" + "/usr/local/texlive/2023/texmf-dist/tex/latex/listings/lstlang1.sty" 1677530001 205154 31132370016e8c97e49bc3862419679b "" + "/usr/local/texlive/2023/texmf-dist/tex/latex/listings/lstmisc.sty" 1677530001 77021 d05e9115c67855816136d82929db8892 "" + "/usr/local/texlive/2023/texmf-dist/tex/latex/mathtools/mathtools.sty" 1656621545 62269 5c1837a5bc5db4c0d255eedc225ca44b "" + "/usr/local/texlive/2023/texmf-dist/tex/latex/mathtools/mhsetup.sty" 1616101747 5582 a43dedf8e5ec418356f1e9dfe5d29fc3 "" + "/usr/local/texlive/2023/texmf-dist/tex/latex/natbib/natbib.sty" 1291685959 45456 1c8843383c0bd05870c45fa0ebea6cc2 "" + "/usr/local/texlive/2023/texmf-dist/tex/latex/neuralnetwork/neuralnetwork.sty" 1377211793 12058 3b838a9abc879a73b8214d0e4ec7e480 "" + "/usr/local/texlive/2023/texmf-dist/tex/latex/pdflscape/pdflscape-nometadata.sty" 1667072951 6572 ea530fbbe537629fd97736d33babc07d "" + "/usr/local/texlive/2023/texmf-dist/tex/latex/pdflscape/pdflscape.sty" 1667072951 2224 1230ab76aa62221ccbd90bca8c8c015e "" + "/usr/local/texlive/2023/texmf-dist/tex/latex/pdfpages/pdfpages.sty" 1671569853 54859 c2b191f8d736ddb86177723cc23c30a9 "" + "/usr/local/texlive/2023/texmf-dist/tex/latex/pdfpages/pppdftex.def" 1671569853 6591 7c9b26513263b04a3b43be6474a4ef4d "" + "/usr/local/texlive/2023/texmf-dist/tex/latex/pgf/basiclayer/pgf.sty" 1601326656 1090 bae35ef70b3168089ef166db3e66f5b2 "" + "/usr/local/texlive/2023/texmf-dist/tex/latex/pgf/basiclayer/pgfcore.sty" 1673816307 373 00b204b1d7d095b892ad31a7494b0373 "" + "/usr/local/texlive/2023/texmf-dist/tex/latex/pgf/compatibility/pgfcomp-version-0-65.sty" 1601326656 21013 f4ff83d25bb56552493b030f27c075ae "" + "/usr/local/texlive/2023/texmf-dist/tex/latex/pgf/compatibility/pgfcomp-version-1-18.sty" 1601326656 989 c49c8ae06d96f8b15869da7428047b1e "" + "/usr/local/texlive/2023/texmf-dist/tex/latex/pgf/frontendlayer/tikz.sty" 1601326656 339 c2e180022e3afdb99c7d0ea5ce469b7d "" + "/usr/local/texlive/2023/texmf-dist/tex/latex/pgf/math/pgfmath.sty" 1601326656 306 c56a323ca5bf9242f54474ced10fca71 "" + "/usr/local/texlive/2023/texmf-dist/tex/latex/pgf/systemlayer/pgfsys.sty" 1601326656 443 8c872229db56122037e86bcda49e14f3 "" + "/usr/local/texlive/2023/texmf-dist/tex/latex/pgf/utilities/pgffor.sty" 1601326656 348 ee405e64380c11319f0e249fed57e6c5 "" + "/usr/local/texlive/2023/texmf-dist/tex/latex/pgf/utilities/pgfkeys.sty" 1601326656 274 5ae372b7df79135d240456a1c6f2cf9a "" + "/usr/local/texlive/2023/texmf-dist/tex/latex/pgf/utilities/pgfrcs.sty" 1601326656 325 f9f16d12354225b7dd52a3321f085955 "" + "/usr/local/texlive/2023/texmf-dist/tex/latex/refcount/refcount.sty" 1576624809 9878 9e94e8fa600d95f9c7731bb21dfb67a4 "" + "/usr/local/texlive/2023/texmf-dist/tex/latex/rerunfilecheck/rerunfilecheck.sty" 1657483315 9714 ba3194bd52c8499b3f1e3eb91d409670 "" + "/usr/local/texlive/2023/texmf-dist/tex/latex/setspace/setspace.sty" 1670275497 22490 8cac309b79a4c53a4ffce4b1b07aead0 "" + "/usr/local/texlive/2023/texmf-dist/tex/latex/stmaryrd/Ustmry.fd" 1137110872 1766 216b0f832c406513647608b5bb9bb8ff "" + "/usr/local/texlive/2023/texmf-dist/tex/latex/stmaryrd/stmaryrd.sty" 1302307949 11080 aa7f81da60ce104f0dbb8b827dd14383 "" + "/usr/local/texlive/2023/texmf-dist/tex/latex/tikz-cd/tikz-cd.sty" 1620507957 823 2375f30bf77af9357d3b4834b054bf52 "" + "/usr/local/texlive/2023/texmf-dist/tex/latex/tools/calc.sty" 1654720880 10214 de3e21cfc0eccc98ca7f8dac0ef263d2 "" + "/usr/local/texlive/2023/texmf-dist/tex/latex/trimspaces/trimspaces.sty" 1253232110 1380 971a51b00a14503ddf754cab24c3f209 "" + "/usr/local/texlive/2023/texmf-dist/tex/latex/url/url.sty" 1388531844 12796 8edb7d69a20b857904dd0ea757c14ec9 "" + "/usr/local/texlive/2023/texmf-dist/tex/latex/varwidth/varwidth.sty" 1238697683 10894 d359a13923460b2a73d4312d613554c8 "" + "/usr/local/texlive/2023/texmf-dist/tex/latex/xcolor/xcolor.sty" 1655066402 56148 51a9a8571c07b9921892ae11063ae853 "" + "/usr/local/texlive/2023/texmf-dist/tex/latex/xkeyval/xkeyval.sty" 1655411236 4937 4ce600ce9bd4ec84d0250eb6892fcf4f "" + "/usr/local/texlive/2023/texmf-dist/web2c/texmf.cnf" 1677365944 40745 87bb86a62d462f93a1efc6b0c65c872e "" + "/usr/local/texlive/2023/texmf-var/fonts/map/pdftex/updmap/pdftex.map" 1693695819 4623355 b8cad38412faebe1ce5b780a45db67bd "" + "/usr/local/texlive/2023/texmf-var/web2c/pdftex/pdflatex.fmt" 1693695816 7883465 dff7538d1d1890a847c48afe97dd2494 "" + "/usr/local/texlive/2023/texmf.cnf" 1678822455 577 1b2b1af17af2508fb20dd85783af4050 "" + "Brownian_motion_monte_carlo.aux" 1698964891 5768 66f558472ad62a6b4f988826c5647bfe "pdflatex" + "Brownian_motion_monte_carlo.tex" 1694633934 38196 cf3797ab05d305c6897fbf44515628ee "" + "Initial_Brownian_Motion.png" 1692906433 67665 44d75930c6c825f2673a9b709c18c36c "" + "Introduction.aux" 1698964891 3669 4ea81a2c3a3c959e15ea6a78f001bc09 "pdflatex" + "Introduction.tex" 1697246478 20240 531e995f57de1434c53cf32c5b916667 "" + "ann_product.aux" 1698964892 7983 77e8dfb761aec0f7529f3163ba041327 "pdflatex" + "ann_product.tex" 1698961993 73840 dfd1a561247e04e614a16e79c61115e8 "" + "ann_rep_brownian_motion_monte_carlo.aux" 1698964893 2552 b9fa1936112d4716e8f60e11419c4909 "pdflatex" + "ann_rep_brownian_motion_monte_carlo.tex" 1698963594 15163 7e99794c54be3dbc9b2bca198f1ac605 "" + "brownian_motion_monte_carlo_non_linear_case.aux" 1698964892 2270 f7093a557b3a6878c9e7a045650ad8af "pdflatex" + "brownian_motion_monte_carlo_non_linear_case.tex" 1694635158 4303 2884a3c98995a5612b1bf9ef2d354ebd "" + "categorical_neural_network.aux" 1698964893 1581 7f82bfb75a6512cc11b762c978a54184 "pdflatex" + "categorical_neural_network.tex" 1694640515 54 95bc5484eef4bb87fb756058c5f570f7 "" + "main.aux" 1698964893 12975 d17e0eceec7c9a24162c63746268414c "pdflatex" + "main.bbl" 1698964459 5151 b8b642464191b79d64dc18f742544548 "bibtex main" + "main.out" 1698964893 14811 966bef3e4e950bba4d809ee637146306 "pdflatex" + "main.tex" 1698964890 77841 f9592671029cf8092106411013d6bce0 "" + "main.toc" 1698964893 5660 a0b75b5839c18a0ffe6a2038d9d165d4 "pdflatex" + "modified_mlp_associated_nn.aux" 1698964893 1885 bf1dc82072627925434c1ed9a68f7c61 "pdflatex" + "modified_mlp_associated_nn.tex" 1694640474 7381 9cc268876a9d5fbf675ba85de7c27152 "" + "neural_network_introduction.aux" 1698964892 10333 8c9e3ecc00ae46cc56ccee66b609f2a2 "pdflatex" + "neural_network_introduction.tex" 1697562888 72831 f80a57fb9ab418a9ee6bdbda69ae81a6 "" + "sharkteeth.png" 1696344146 74368 33f266686ac03dccf55bc902662f5f4f "" + "u_visc_sol.aux" 1698964892 11172 7b0ef3ba581d5fbdf4ed6a4cc4a58d31 "pdflatex" + "u_visc_sol.tex" 1694634329 80596 60a71700ec3c35fe7ba15a23bb5e1690 "" + (generated) + "Brownian_motion_monte_carlo.aux" + "Introduction.aux" + "ann_product.aux" + "ann_rep_brownian_motion_monte_carlo.aux" + "brownian_motion_monte_carlo_non_linear_case.aux" + "categorical_neural_network.aux" + "main.aux" + "main.log" + "main.out" + "main.pdf" + "main.toc" + "modified_mlp_associated_nn.aux" + "neural_network_introduction.aux" + "u_visc_sol.aux" + (rewritten before read) diff --git a/Dissertation_unzipped/main.fls b/Dissertation_unzipped/main.fls new file mode 100644 index 0000000..530bf41 --- /dev/null +++ b/Dissertation_unzipped/main.fls @@ -0,0 +1,1588 @@ +PWD /Users/shakilrafi/Library/Mobile Documents/com~apple~CloudDocs/Dissertation +INPUT /usr/local/texlive/2023/texmf.cnf +INPUT /usr/local/texlive/2023/texmf-dist/web2c/texmf.cnf +INPUT /usr/local/texlive/2023/texmf-var/web2c/pdftex/pdflatex.fmt +INPUT main.tex +OUTPUT main.log +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/base/report.cls +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/base/report.cls +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/base/report.cls +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/base/report.cls +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/base/report.cls +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/base/report.cls +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/base/report.cls +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/base/report.cls +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/base/report.cls +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/base/report.cls +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/base/report.cls +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/base/size11.clo +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/base/size11.clo +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/base/size11.clo +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/base/size11.clo +INPUT /usr/local/texlive/2023/texmf-dist/fonts/map/fontname/texfonts.map +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/cm/cmr10.tfm +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/setspace/setspace.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/setspace/setspace.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/setspace/setspace.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/setspace/setspace.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/setspace/setspace.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/setspace/setspace.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/setspace/setspace.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/setspace/setspace.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/setspace/setspace.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/setspace/setspace.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/setspace/setspace.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/appendix/appendix.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/appendix/appendix.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/appendix/appendix.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/appendix/appendix.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/appendix/appendix.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/appendix/appendix.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/appendix/appendix.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/appendix/appendix.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/appendix/appendix.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/appendix/appendix.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/appendix/appendix.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pdfpages/pdfpages.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pdfpages/pdfpages.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pdfpages/pdfpages.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pdfpages/pdfpages.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pdfpages/pdfpages.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pdfpages/pdfpages.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pdfpages/pdfpages.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pdfpages/pdfpages.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pdfpages/pdfpages.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pdfpages/pdfpages.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pdfpages/pdfpages.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/base/ifthen.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/base/ifthen.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/base/ifthen.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/base/ifthen.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/base/ifthen.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/base/ifthen.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/base/ifthen.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/base/ifthen.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/base/ifthen.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/base/ifthen.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/base/ifthen.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/tools/calc.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/tools/calc.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/tools/calc.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/tools/calc.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/tools/calc.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/tools/calc.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/tools/calc.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/tools/calc.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/tools/calc.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/tools/calc.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/tools/calc.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/eso-pic/eso-pic.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/eso-pic/eso-pic.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/eso-pic/eso-pic.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/eso-pic/eso-pic.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/eso-pic/eso-pic.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/eso-pic/eso-pic.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/eso-pic/eso-pic.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/eso-pic/eso-pic.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/eso-pic/eso-pic.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/eso-pic/eso-pic.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/eso-pic/eso-pic.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/graphics/keyval.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/graphics/keyval.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/graphics/keyval.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/graphics/keyval.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/graphics/keyval.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/graphics/keyval.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/graphics/keyval.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/graphics/keyval.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/graphics/keyval.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/graphics/keyval.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/graphics/keyval.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/xcolor/xcolor.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/xcolor/xcolor.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/xcolor/xcolor.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/xcolor/xcolor.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/xcolor/xcolor.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/xcolor/xcolor.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/xcolor/xcolor.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/xcolor/xcolor.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/xcolor/xcolor.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/xcolor/xcolor.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/xcolor/xcolor.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/xcolor/xcolor.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/xcolor/xcolor.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/graphics-cfg/color.cfg +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/graphics-cfg/color.cfg +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/graphics-cfg/color.cfg +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/graphics-cfg/color.cfg +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/graphics-def/pdftex.def +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/graphics-def/pdftex.def +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/graphics-def/pdftex.def +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/graphics-def/pdftex.def +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/graphics/mathcolor.ltx +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/graphics/mathcolor.ltx +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/graphics/mathcolor.ltx +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/graphics/mathcolor.ltx +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/graphics/graphicx.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/graphics/graphicx.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/graphics/graphicx.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/graphics/graphicx.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/graphics/graphicx.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/graphics/graphicx.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/graphics/graphicx.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/graphics/graphicx.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/graphics/graphicx.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/graphics/graphicx.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/graphics/graphicx.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/graphics/keyval.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/graphics/graphics.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/graphics/graphics.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/graphics/graphics.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/graphics/graphics.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/graphics/graphics.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/graphics/graphics.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/graphics/graphics.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/graphics/graphics.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/graphics/graphics.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/graphics/graphics.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/graphics/graphics.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/graphics/trig.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/graphics/trig.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/graphics/trig.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/graphics/trig.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/graphics/trig.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/graphics/trig.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/graphics/trig.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/graphics/trig.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/graphics/trig.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/graphics/trig.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/graphics/trig.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/graphics-cfg/graphics.cfg +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/graphics-cfg/graphics.cfg +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/graphics-cfg/graphics.cfg +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/graphics-cfg/graphics.cfg +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pdfpages/pppdftex.def +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pdfpages/pppdftex.def +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pdfpages/pppdftex.def +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pdfpages/pppdftex.def +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/amsmath/amsmath.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/amsmath/amsmath.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/amsmath/amsmath.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/amsmath/amsmath.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/amsmath/amsmath.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/amsmath/amsmath.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/amsmath/amsmath.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/amsmath/amsmath.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/amsmath/amsmath.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/amsmath/amsmath.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/amsmath/amsmath.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/amsmath/amsopn.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/amsmath/amsopn.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/amsmath/amstext.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/amsmath/amstext.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/amsmath/amstext.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/amsmath/amstext.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/amsmath/amstext.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/amsmath/amstext.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/amsmath/amstext.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/amsmath/amstext.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/amsmath/amstext.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/amsmath/amstext.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/amsmath/amstext.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/amsmath/amsgen.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/amsmath/amsgen.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/amsmath/amsgen.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/amsmath/amsgen.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/amsmath/amsgen.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/amsmath/amsgen.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/amsmath/amsgen.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/amsmath/amsgen.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/amsmath/amsgen.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/amsmath/amsgen.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/amsmath/amsgen.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/amsmath/amsbsy.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/amsmath/amsbsy.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/amsmath/amsbsy.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/amsmath/amsbsy.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/amsmath/amsbsy.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/amsmath/amsbsy.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/amsmath/amsbsy.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/amsmath/amsbsy.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/amsmath/amsbsy.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/amsmath/amsbsy.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/amsmath/amsbsy.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/amsmath/amsgen.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/amsmath/amsopn.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/amsmath/amsopn.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/amsmath/amsopn.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/amsmath/amsopn.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/amsmath/amsopn.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/amsmath/amsopn.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/amsmath/amsopn.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/amsmath/amsopn.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/amsmath/amsopn.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/amsmath/amsopn.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/amsmath/amsopn.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/amsmath/amsgen.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/amscls/amsthm.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/amscls/amsthm.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/amscls/amsthm.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/amscls/amsthm.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/amscls/amsthm.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/amscls/amsthm.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/amscls/amsthm.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/amscls/amsthm.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/amscls/amsthm.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/amscls/amsthm.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/amscls/amsthm.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/mathtools/mathtools.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/mathtools/mathtools.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/mathtools/mathtools.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/mathtools/mathtools.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/mathtools/mathtools.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/mathtools/mathtools.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/mathtools/mathtools.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/mathtools/mathtools.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/mathtools/mathtools.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/mathtools/mathtools.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/mathtools/mathtools.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/graphics/keyval.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/tools/calc.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/mathtools/mhsetup.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/mathtools/mhsetup.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/mathtools/mhsetup.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/mathtools/mhsetup.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/mathtools/mhsetup.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/mathtools/mhsetup.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/mathtools/mhsetup.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/mathtools/mhsetup.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/mathtools/mhsetup.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/mathtools/mhsetup.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/mathtools/mhsetup.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/amsmath/amsmath.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/amsfonts/amssymb.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/amsfonts/amssymb.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/amsfonts/amssymb.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/amsfonts/amssymb.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/amsfonts/amssymb.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/amsfonts/amssymb.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/amsfonts/amssymb.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/amsfonts/amssymb.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/amsfonts/amssymb.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/amsfonts/amssymb.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/amsfonts/amssymb.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/amsfonts/amsfonts.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/amsfonts/amsfonts.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/amsfonts/amsfonts.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/amsfonts/amsfonts.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/amsfonts/amsfonts.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/amsfonts/amsfonts.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/amsfonts/amsfonts.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/amsfonts/amsfonts.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/amsfonts/amsfonts.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/amsfonts/amsfonts.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/amsfonts/amsfonts.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/geometry/geometry.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/geometry/geometry.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/geometry/geometry.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/geometry/geometry.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/geometry/geometry.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/geometry/geometry.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/geometry/geometry.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/geometry/geometry.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/geometry/geometry.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/geometry/geometry.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/geometry/geometry.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/graphics/keyval.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/iftex/ifvtex.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/iftex/ifvtex.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/iftex/ifvtex.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/iftex/ifvtex.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/iftex/ifvtex.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/iftex/ifvtex.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/iftex/ifvtex.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/iftex/ifvtex.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/iftex/ifvtex.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/iftex/ifvtex.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/iftex/ifvtex.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/iftex/iftex.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/iftex/iftex.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/iftex/iftex.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/iftex/iftex.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/iftex/iftex.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/iftex/iftex.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/iftex/iftex.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/iftex/iftex.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/iftex/iftex.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/iftex/iftex.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/iftex/iftex.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/soul/soul.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/soul/soul.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/soul/soul.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/soul/soul.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/soul/soul.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/soul/soul.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/soul/soul.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/soul/soul.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/soul/soul.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/soul/soul.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/soul/soul.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/soul/soul-ori.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/soul/soul-ori.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/soul/soul-ori.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/soul/soul-ori.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/soul/soul-ori.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/soul/soul-ori.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/soul/soul-ori.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/soul/soul-ori.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/soul/soul-ori.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/soul/soul-ori.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/soul/soul-ori.sty +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/jknappen/ec/ectt1000.tfm +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/infwarerr/infwarerr.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/infwarerr/infwarerr.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/infwarerr/infwarerr.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/infwarerr/infwarerr.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/infwarerr/infwarerr.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/infwarerr/infwarerr.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/infwarerr/infwarerr.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/infwarerr/infwarerr.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/infwarerr/infwarerr.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/infwarerr/infwarerr.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/infwarerr/infwarerr.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/etexcmds/etexcmds.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/etexcmds/etexcmds.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/etexcmds/etexcmds.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/etexcmds/etexcmds.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/etexcmds/etexcmds.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/etexcmds/etexcmds.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/etexcmds/etexcmds.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/etexcmds/etexcmds.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/etexcmds/etexcmds.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/etexcmds/etexcmds.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/etexcmds/etexcmds.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/infwarerr/infwarerr.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/iftex/iftex.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/bbm-macros/bbm.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/bbm-macros/bbm.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/bbm-macros/bbm.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/bbm-macros/bbm.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/bbm-macros/bbm.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/bbm-macros/bbm.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/bbm-macros/bbm.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/bbm-macros/bbm.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/bbm-macros/bbm.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/bbm-macros/bbm.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/bbm-macros/bbm.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/cancel/cancel.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/cancel/cancel.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/cancel/cancel.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/cancel/cancel.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/cancel/cancel.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/cancel/cancel.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/cancel/cancel.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/cancel/cancel.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/cancel/cancel.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/cancel/cancel.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/cancel/cancel.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/xcolor/xcolor.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/enumitem/enumitem.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/enumitem/enumitem.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/enumitem/enumitem.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/enumitem/enumitem.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/enumitem/enumitem.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/enumitem/enumitem.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/enumitem/enumitem.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/enumitem/enumitem.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/enumitem/enumitem.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/enumitem/enumitem.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/enumitem/enumitem.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/jknapltx/mathrsfs.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/jknapltx/mathrsfs.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/jknapltx/mathrsfs.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/jknapltx/mathrsfs.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/jknapltx/mathrsfs.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/jknapltx/mathrsfs.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/jknapltx/mathrsfs.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/jknapltx/mathrsfs.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/jknapltx/mathrsfs.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/jknapltx/mathrsfs.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/jknapltx/mathrsfs.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/hyperref/hyperref.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/hyperref/hyperref.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/hyperref/hyperref.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/hyperref/hyperref.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/hyperref/hyperref.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/hyperref/hyperref.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/hyperref/hyperref.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/hyperref/hyperref.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/hyperref/hyperref.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/hyperref/hyperref.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/hyperref/hyperref.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/ltxcmds/ltxcmds.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/ltxcmds/ltxcmds.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/ltxcmds/ltxcmds.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/ltxcmds/ltxcmds.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/ltxcmds/ltxcmds.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/ltxcmds/ltxcmds.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/ltxcmds/ltxcmds.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/ltxcmds/ltxcmds.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/ltxcmds/ltxcmds.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/ltxcmds/ltxcmds.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/ltxcmds/ltxcmds.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/iftex/iftex.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pdftexcmds/pdftexcmds.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pdftexcmds/pdftexcmds.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pdftexcmds/pdftexcmds.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pdftexcmds/pdftexcmds.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pdftexcmds/pdftexcmds.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pdftexcmds/pdftexcmds.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pdftexcmds/pdftexcmds.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pdftexcmds/pdftexcmds.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pdftexcmds/pdftexcmds.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pdftexcmds/pdftexcmds.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pdftexcmds/pdftexcmds.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/infwarerr/infwarerr.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/iftex/iftex.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/ltxcmds/ltxcmds.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/infwarerr/infwarerr.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/graphics/keyval.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/kvsetkeys/kvsetkeys.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/kvsetkeys/kvsetkeys.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/kvsetkeys/kvsetkeys.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/kvsetkeys/kvsetkeys.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/kvsetkeys/kvsetkeys.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/kvsetkeys/kvsetkeys.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/kvsetkeys/kvsetkeys.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/kvsetkeys/kvsetkeys.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/kvsetkeys/kvsetkeys.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/kvsetkeys/kvsetkeys.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/kvsetkeys/kvsetkeys.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/kvdefinekeys/kvdefinekeys.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/kvdefinekeys/kvdefinekeys.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/kvdefinekeys/kvdefinekeys.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/kvdefinekeys/kvdefinekeys.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/kvdefinekeys/kvdefinekeys.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/kvdefinekeys/kvdefinekeys.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/kvdefinekeys/kvdefinekeys.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/kvdefinekeys/kvdefinekeys.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/kvdefinekeys/kvdefinekeys.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/kvdefinekeys/kvdefinekeys.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/kvdefinekeys/kvdefinekeys.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pdfescape/pdfescape.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pdfescape/pdfescape.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pdfescape/pdfescape.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pdfescape/pdfescape.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pdfescape/pdfescape.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pdfescape/pdfescape.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pdfescape/pdfescape.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pdfescape/pdfescape.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pdfescape/pdfescape.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pdfescape/pdfescape.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pdfescape/pdfescape.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/ltxcmds/ltxcmds.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pdftexcmds/pdftexcmds.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/hycolor/hycolor.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/hycolor/hycolor.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/hycolor/hycolor.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/hycolor/hycolor.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/hycolor/hycolor.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/hycolor/hycolor.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/hycolor/hycolor.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/hycolor/hycolor.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/hycolor/hycolor.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/hycolor/hycolor.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/hycolor/hycolor.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/letltxmacro/letltxmacro.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/letltxmacro/letltxmacro.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/letltxmacro/letltxmacro.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/letltxmacro/letltxmacro.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/letltxmacro/letltxmacro.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/letltxmacro/letltxmacro.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/letltxmacro/letltxmacro.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/letltxmacro/letltxmacro.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/letltxmacro/letltxmacro.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/letltxmacro/letltxmacro.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/letltxmacro/letltxmacro.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/auxhook/auxhook.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/auxhook/auxhook.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/auxhook/auxhook.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/auxhook/auxhook.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/auxhook/auxhook.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/auxhook/auxhook.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/auxhook/auxhook.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/auxhook/auxhook.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/auxhook/auxhook.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/auxhook/auxhook.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/auxhook/auxhook.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/hyperref/nameref.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/hyperref/nameref.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/hyperref/nameref.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/hyperref/nameref.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/hyperref/nameref.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/hyperref/nameref.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/hyperref/nameref.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/hyperref/nameref.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/hyperref/nameref.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/hyperref/nameref.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/hyperref/nameref.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/refcount/refcount.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/refcount/refcount.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/refcount/refcount.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/refcount/refcount.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/refcount/refcount.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/refcount/refcount.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/refcount/refcount.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/refcount/refcount.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/refcount/refcount.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/refcount/refcount.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/refcount/refcount.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/ltxcmds/ltxcmds.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/infwarerr/infwarerr.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/gettitlestring/gettitlestring.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/gettitlestring/gettitlestring.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/gettitlestring/gettitlestring.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/gettitlestring/gettitlestring.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/gettitlestring/gettitlestring.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/gettitlestring/gettitlestring.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/gettitlestring/gettitlestring.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/gettitlestring/gettitlestring.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/gettitlestring/gettitlestring.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/gettitlestring/gettitlestring.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/gettitlestring/gettitlestring.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/kvoptions/kvoptions.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/kvoptions/kvoptions.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/kvoptions/kvoptions.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/kvoptions/kvoptions.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/kvoptions/kvoptions.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/kvoptions/kvoptions.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/kvoptions/kvoptions.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/kvoptions/kvoptions.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/kvoptions/kvoptions.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/kvoptions/kvoptions.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/kvoptions/kvoptions.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/ltxcmds/ltxcmds.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/kvsetkeys/kvsetkeys.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/ltxcmds/ltxcmds.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/kvoptions/kvoptions.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/hyperref/pd1enc.def +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/hyperref/pd1enc.def +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/hyperref/pd1enc.def +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/hyperref/pd1enc.def +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/intcalc/intcalc.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/intcalc/intcalc.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/intcalc/intcalc.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/intcalc/intcalc.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/intcalc/intcalc.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/intcalc/intcalc.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/intcalc/intcalc.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/intcalc/intcalc.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/intcalc/intcalc.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/intcalc/intcalc.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/intcalc/intcalc.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/etexcmds/etexcmds.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/hyperref/puenc.def +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/hyperref/puenc.def +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/hyperref/puenc.def +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/hyperref/puenc.def +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/url/url.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/url/url.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/url/url.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/url/url.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/url/url.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/url/url.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/url/url.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/url/url.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/url/url.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/url/url.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/url/url.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/bitset/bitset.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/bitset/bitset.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/bitset/bitset.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/bitset/bitset.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/bitset/bitset.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/bitset/bitset.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/bitset/bitset.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/bitset/bitset.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/bitset/bitset.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/bitset/bitset.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/bitset/bitset.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/infwarerr/infwarerr.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/intcalc/intcalc.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/bigintcalc/bigintcalc.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/bigintcalc/bigintcalc.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/bigintcalc/bigintcalc.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/bigintcalc/bigintcalc.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/bigintcalc/bigintcalc.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/bigintcalc/bigintcalc.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/bigintcalc/bigintcalc.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/bigintcalc/bigintcalc.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/bigintcalc/bigintcalc.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/bigintcalc/bigintcalc.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/bigintcalc/bigintcalc.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pdftexcmds/pdftexcmds.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/atbegshi/atbegshi.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/atbegshi/atbegshi.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/atbegshi/atbegshi.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/base/atbegshi-ltx.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/atbegshi/atbegshi.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/atbegshi/atbegshi.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/base/atbegshi-ltx.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/atbegshi/atbegshi.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/base/atbegshi-ltx.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/base/atbegshi-ltx.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/atbegshi/atbegshi.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/atbegshi/atbegshi.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/base/atbegshi-ltx.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/base/atbegshi-ltx.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/atbegshi/atbegshi.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/base/atbegshi-ltx.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/hyperref/hpdftex.def +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/hyperref/hpdftex.def +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/hyperref/hpdftex.def +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/hyperref/hpdftex.def +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/atveryend/atveryend.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/atveryend/atveryend.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/atveryend/atveryend.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/base/atveryend-ltx.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/atveryend/atveryend.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/atveryend/atveryend.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/base/atveryend-ltx.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/atveryend/atveryend.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/base/atveryend-ltx.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/base/atveryend-ltx.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/atveryend/atveryend.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/atveryend/atveryend.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/base/atveryend-ltx.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/base/atveryend-ltx.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/atveryend/atveryend.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/base/atveryend-ltx.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/rerunfilecheck/rerunfilecheck.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/rerunfilecheck/rerunfilecheck.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/rerunfilecheck/rerunfilecheck.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/rerunfilecheck/rerunfilecheck.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/rerunfilecheck/rerunfilecheck.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/rerunfilecheck/rerunfilecheck.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/rerunfilecheck/rerunfilecheck.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/rerunfilecheck/rerunfilecheck.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/rerunfilecheck/rerunfilecheck.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/rerunfilecheck/rerunfilecheck.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/rerunfilecheck/rerunfilecheck.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/kvoptions/kvoptions.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/infwarerr/infwarerr.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pdftexcmds/pdftexcmds.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/atveryend/atveryend.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/uniquecounter/uniquecounter.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/uniquecounter/uniquecounter.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/uniquecounter/uniquecounter.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/uniquecounter/uniquecounter.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/uniquecounter/uniquecounter.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/uniquecounter/uniquecounter.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/uniquecounter/uniquecounter.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/uniquecounter/uniquecounter.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/uniquecounter/uniquecounter.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/uniquecounter/uniquecounter.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/uniquecounter/uniquecounter.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/bigintcalc/bigintcalc.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/infwarerr/infwarerr.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/cleveref/cleveref.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/cleveref/cleveref.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/cleveref/cleveref.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/cleveref/cleveref.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/cleveref/cleveref.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/cleveref/cleveref.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/cleveref/cleveref.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/cleveref/cleveref.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/cleveref/cleveref.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/cleveref/cleveref.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/cleveref/cleveref.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/natbib/natbib.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/natbib/natbib.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/natbib/natbib.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/natbib/natbib.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/natbib/natbib.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/natbib/natbib.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/natbib/natbib.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/natbib/natbib.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/natbib/natbib.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/natbib/natbib.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/natbib/natbib.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/neuralnetwork/neuralnetwork.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/neuralnetwork/neuralnetwork.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/neuralnetwork/neuralnetwork.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/neuralnetwork/neuralnetwork.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/neuralnetwork/neuralnetwork.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/neuralnetwork/neuralnetwork.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/neuralnetwork/neuralnetwork.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/neuralnetwork/neuralnetwork.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/neuralnetwork/neuralnetwork.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/neuralnetwork/neuralnetwork.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/neuralnetwork/neuralnetwork.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/environ/environ.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/environ/environ.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/environ/environ.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/environ/environ.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/environ/environ.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/environ/environ.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/environ/environ.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/environ/environ.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/environ/environ.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/environ/environ.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/environ/environ.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/trimspaces/trimspaces.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/trimspaces/trimspaces.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/trimspaces/trimspaces.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/trimspaces/trimspaces.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/trimspaces/trimspaces.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/trimspaces/trimspaces.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/trimspaces/trimspaces.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/trimspaces/trimspaces.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/trimspaces/trimspaces.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/trimspaces/trimspaces.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/trimspaces/trimspaces.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/etoolbox/etoolbox.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/etoolbox/etoolbox.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/etoolbox/etoolbox.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/etoolbox/etoolbox.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/etoolbox/etoolbox.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/etoolbox/etoolbox.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/etoolbox/etoolbox.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/etoolbox/etoolbox.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/etoolbox/etoolbox.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/etoolbox/etoolbox.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/etoolbox/etoolbox.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/xkeyval/xkeyval.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/xkeyval/xkeyval.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/xkeyval/xkeyval.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/xkeyval/xkeyval.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/xkeyval/xkeyval.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/xkeyval/xkeyval.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/xkeyval/xkeyval.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/xkeyval/xkeyval.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/xkeyval/xkeyval.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/xkeyval/xkeyval.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/xkeyval/xkeyval.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/xkeyval/xkeyval.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/xkeyval/xkvutils.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/frontendlayer/tikz.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/frontendlayer/tikz.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/frontendlayer/tikz.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/frontendlayer/tikz.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/frontendlayer/tikz.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/frontendlayer/tikz.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/frontendlayer/tikz.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/frontendlayer/tikz.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/frontendlayer/tikz.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/frontendlayer/tikz.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/frontendlayer/tikz.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/basiclayer/pgf.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/basiclayer/pgf.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/basiclayer/pgf.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/basiclayer/pgf.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/basiclayer/pgf.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/basiclayer/pgf.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/basiclayer/pgf.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/basiclayer/pgf.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/basiclayer/pgf.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/basiclayer/pgf.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/basiclayer/pgf.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/utilities/pgfrcs.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/utilities/pgfrcs.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/utilities/pgfrcs.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/utilities/pgfrcs.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/utilities/pgfrcs.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/utilities/pgfrcs.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/utilities/pgfrcs.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/utilities/pgfrcs.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/utilities/pgfrcs.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/utilities/pgfrcs.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/utilities/pgfrcs.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/utilities/pgfutil-common.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/utilities/pgfutil-latex.def +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/utilities/pgfrcs.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/utilities/pgfrcs.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/utilities/pgfrcs.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/utilities/pgfrcs.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/pgf.revision.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/pgf.revision.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/basiclayer/pgfcore.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/basiclayer/pgfcore.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/basiclayer/pgfcore.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/basiclayer/pgfcore.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/basiclayer/pgfcore.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/basiclayer/pgfcore.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/basiclayer/pgfcore.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/basiclayer/pgfcore.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/basiclayer/pgfcore.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/basiclayer/pgfcore.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/basiclayer/pgfcore.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/graphics/graphicx.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/systemlayer/pgfsys.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/systemlayer/pgfsys.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/systemlayer/pgfsys.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/systemlayer/pgfsys.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/systemlayer/pgfsys.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/systemlayer/pgfsys.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/systemlayer/pgfsys.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/systemlayer/pgfsys.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/systemlayer/pgfsys.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/systemlayer/pgfsys.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/systemlayer/pgfsys.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/utilities/pgfrcs.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/systemlayer/pgfsys.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/systemlayer/pgfsys.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/systemlayer/pgfsys.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/systemlayer/pgfsys.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/utilities/pgfkeys.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/utilities/pgfkeyslibraryfiltered.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/systemlayer/pgf.cfg +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-pdftex.def +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-pdftex.def +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-common-pdf.def +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/systemlayer/pgfsyssoftpath.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/systemlayer/pgfsyssoftpath.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/systemlayer/pgfsyssoftpath.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/systemlayer/pgfsyssoftpath.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/systemlayer/pgfsysprotocol.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/systemlayer/pgfsysprotocol.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/systemlayer/pgfsysprotocol.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/systemlayer/pgfsysprotocol.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/graphics/keyval.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/xcolor/xcolor.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/basiclayer/pgfcore.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/basiclayer/pgfcore.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/basiclayer/pgfcore.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/basiclayer/pgfcore.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/math/pgfmath.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/math/pgfmathutil.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/math/pgfmathparser.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.basic.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.trigonometric.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.random.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.comparison.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.base.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.round.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.misc.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.integerarithmetics.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/math/pgfmathcalc.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/math/pgfmathfloat.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/math/pgfint.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/basiclayer/pgfcorepoints.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/basiclayer/pgfcorepathconstruct.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/basiclayer/pgfcorepathusage.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/basiclayer/pgfcorescopes.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/basiclayer/pgfcoregraphicstate.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/basiclayer/pgfcoretransformations.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/basiclayer/pgfcorequick.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/basiclayer/pgfcoreobjects.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/basiclayer/pgfcorepathprocessing.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/basiclayer/pgfcorearrows.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/basiclayer/pgfcoreshade.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/basiclayer/pgfcoreimage.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/basiclayer/pgfcoreexternal.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/basiclayer/pgfcorelayers.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/basiclayer/pgfcoretransparency.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/basiclayer/pgfcorepatterns.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/basiclayer/pgfcorerdf.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/modules/pgfmoduleshapes.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/modules/pgfmoduleplot.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/compatibility/pgfcomp-version-0-65.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/compatibility/pgfcomp-version-0-65.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/compatibility/pgfcomp-version-0-65.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/compatibility/pgfcomp-version-0-65.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/compatibility/pgfcomp-version-0-65.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/compatibility/pgfcomp-version-0-65.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/compatibility/pgfcomp-version-0-65.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/compatibility/pgfcomp-version-0-65.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/compatibility/pgfcomp-version-0-65.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/compatibility/pgfcomp-version-0-65.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/compatibility/pgfcomp-version-0-65.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/utilities/pgfrcs.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/compatibility/pgfcomp-version-1-18.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/compatibility/pgfcomp-version-1-18.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/compatibility/pgfcomp-version-1-18.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/compatibility/pgfcomp-version-1-18.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/compatibility/pgfcomp-version-1-18.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/compatibility/pgfcomp-version-1-18.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/compatibility/pgfcomp-version-1-18.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/compatibility/pgfcomp-version-1-18.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/compatibility/pgfcomp-version-1-18.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/compatibility/pgfcomp-version-1-18.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/compatibility/pgfcomp-version-1-18.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/utilities/pgfrcs.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/utilities/pgffor.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/utilities/pgffor.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/utilities/pgffor.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/utilities/pgffor.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/utilities/pgffor.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/utilities/pgffor.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/utilities/pgffor.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/utilities/pgffor.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/utilities/pgffor.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/utilities/pgffor.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/utilities/pgffor.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/utilities/pgfrcs.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/utilities/pgfkeys.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/utilities/pgfkeys.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/utilities/pgfkeys.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/utilities/pgfkeys.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/utilities/pgfkeys.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/utilities/pgfkeys.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/utilities/pgfkeys.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/utilities/pgfkeys.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/utilities/pgfkeys.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/utilities/pgfkeys.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/utilities/pgfkeys.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/utilities/pgfkeys.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/utilities/pgfkeys.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/utilities/pgfkeys.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/utilities/pgfkeys.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/math/pgfmath.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/math/pgfmath.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/math/pgfmath.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/math/pgfmath.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/math/pgfmath.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/math/pgfmath.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/math/pgfmath.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/math/pgfmath.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/math/pgfmath.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/math/pgfmath.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/math/pgfmath.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/utilities/pgfrcs.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/utilities/pgfkeys.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/math/pgfmath.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/math/pgfmath.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/math/pgfmath.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/math/pgfmath.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/utilities/pgffor.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/utilities/pgffor.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/utilities/pgffor.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/utilities/pgffor.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/frontendlayer/tikz/tikz.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/frontendlayer/tikz/tikz.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/frontendlayer/tikz/tikz.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/frontendlayer/tikz/tikz.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/libraries/pgflibraryplothandlers.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/libraries/pgflibraryplothandlers.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/modules/pgfmodulematrix.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarytopaths.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarytopaths.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/algorithmicx/algorithmicx.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/algorithmicx/algorithmicx.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/algorithmicx/algorithmicx.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/algorithmicx/algorithmicx.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/algorithmicx/algorithmicx.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/algorithmicx/algorithmicx.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/algorithmicx/algorithmicx.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/algorithmicx/algorithmicx.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/algorithmicx/algorithmicx.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/algorithmicx/algorithmicx.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/algorithmicx/algorithmicx.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/base/ifthen.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/mathtools/mathtools.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.geometric.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.geometric.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/libraries/shapes/pgflibraryshapes.geometric.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/libraries/shapes/pgflibraryshapes.geometric.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.misc.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.misc.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/libraries/shapes/pgflibraryshapes.misc.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/libraries/shapes/pgflibraryshapes.misc.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.symbols.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.symbols.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/libraries/shapes/pgflibraryshapes.symbols.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/libraries/shapes/pgflibraryshapes.symbols.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.arrows.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.arrows.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/libraries/shapes/pgflibraryshapes.arrows.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/libraries/shapes/pgflibraryshapes.arrows.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.callouts.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.callouts.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/libraries/shapes/pgflibraryshapes.callouts.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/libraries/shapes/pgflibraryshapes.callouts.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.multipart.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryshapes.multipart.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/libraries/shapes/pgflibraryshapes.multipart.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/libraries/shapes/pgflibraryshapes.multipart.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/witharrows/witharrows.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/witharrows/witharrows.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/witharrows/witharrows.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/witharrows/witharrows.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/witharrows/witharrows.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/witharrows/witharrows.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/witharrows/witharrows.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/witharrows/witharrows.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/witharrows/witharrows.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/witharrows/witharrows.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/witharrows/witharrows.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/frontendlayer/tikz.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/libraries/pgflibraryarrows.meta.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/libraries/pgflibraryarrows.meta.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/libraries/pgflibraryarrows.meta.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarybending.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarybending.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/modules/pgfmodulebending.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/modules/pgfmodulenonlineartransformations.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/libraries/pgflibrarycurvilinear.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/libraries/pgflibrarycurvilinear.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/l3packages/l3keys2e/l3keys2e.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/l3packages/l3keys2e/l3keys2e.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/l3packages/l3keys2e/l3keys2e.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/l3packages/l3keys2e/l3keys2e.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/l3packages/l3keys2e/l3keys2e.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/l3packages/l3keys2e/l3keys2e.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/l3packages/l3keys2e/l3keys2e.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/l3packages/l3keys2e/l3keys2e.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/l3packages/l3keys2e/l3keys2e.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/l3packages/l3keys2e/l3keys2e.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/l3packages/l3keys2e/l3keys2e.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/l3kernel/expl3.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/l3kernel/expl3.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/l3kernel/expl3.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/l3kernel/expl3.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/l3kernel/expl3.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/l3kernel/expl3.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/l3kernel/expl3.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/l3kernel/expl3.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/l3kernel/expl3.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/l3kernel/expl3.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/l3kernel/expl3.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/l3backend/l3backend-pdftex.def +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/l3backend/l3backend-pdftex.def +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/l3backend/l3backend-pdftex.def +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/l3backend/l3backend-pdftex.def +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/l3backend/l3backend-pdftex.def +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/l3backend/l3backend-pdftex.def +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/l3backend/l3backend-pdftex.def +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/l3backend/l3backend-pdftex.def +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/l3backend/l3backend-pdftex.def +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/l3backend/l3backend-pdftex.def +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/l3backend/l3backend-pdftex.def +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/varwidth/varwidth.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/varwidth/varwidth.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/varwidth/varwidth.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/varwidth/varwidth.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/varwidth/varwidth.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/varwidth/varwidth.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/varwidth/varwidth.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/varwidth/varwidth.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/varwidth/varwidth.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/varwidth/varwidth.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/varwidth/varwidth.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/stmaryrd/stmaryrd.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/stmaryrd/stmaryrd.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/stmaryrd/stmaryrd.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/stmaryrd/stmaryrd.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/stmaryrd/stmaryrd.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/stmaryrd/stmaryrd.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/stmaryrd/stmaryrd.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/stmaryrd/stmaryrd.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/stmaryrd/stmaryrd.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/stmaryrd/stmaryrd.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/stmaryrd/stmaryrd.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/listings/listings.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/listings/listings.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/listings/listings.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/listings/listings.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/listings/listings.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/listings/listings.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/listings/listings.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/listings/listings.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/listings/listings.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/listings/listings.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/listings/listings.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/graphics/keyval.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/listings/lstmisc.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/listings/lstmisc.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/listings/lstmisc.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/listings/lstmisc.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/listings/listings.cfg +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/listings/listings.cfg +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/listings/listings.cfg +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/listings/listings.cfg +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/graphics/graphicx.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/tikz-cd/tikz-cd.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/tikz-cd/tikz-cd.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/tikz-cd/tikz-cd.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/tikz-cd/tikz-cd.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/tikz-cd/tikz-cd.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/tikz-cd/tikz-cd.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/tikz-cd/tikz-cd.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/tikz-cd/tikz-cd.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/tikz-cd/tikz-cd.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/tikz-cd/tikz-cd.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/tikz-cd/tikz-cd.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pgf/frontendlayer/tikz.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/tikz-cd/tikzlibrarycd.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/tikz-cd/tikzlibrarycd.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarymatrix.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibrarymatrix.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryquotes.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/pgf/frontendlayer/tikz/libraries/tikzlibraryquotes.code.tex +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/listings/listings.sty +INPUT ./main.aux +INPUT main.aux +INPUT main.aux +INPUT ./Introduction.aux +INPUT Introduction.aux +INPUT Introduction.aux +INPUT ./Brownian_motion_monte_carlo.aux +INPUT Brownian_motion_monte_carlo.aux +INPUT Brownian_motion_monte_carlo.aux +INPUT ./u_visc_sol.aux +INPUT u_visc_sol.aux +INPUT u_visc_sol.aux +INPUT ./brownian_motion_monte_carlo_non_linear_case.aux +INPUT brownian_motion_monte_carlo_non_linear_case.aux +INPUT brownian_motion_monte_carlo_non_linear_case.aux +INPUT ./neural_network_introduction.aux +INPUT neural_network_introduction.aux +INPUT neural_network_introduction.aux +INPUT ./ann_product.aux +INPUT ann_product.aux +INPUT ann_product.aux +INPUT ./modified_mlp_associated_nn.aux +INPUT modified_mlp_associated_nn.aux +INPUT modified_mlp_associated_nn.aux +INPUT ./categorical_neural_network.aux +INPUT categorical_neural_network.aux +INPUT categorical_neural_network.aux +INPUT ./ann_rep_brownian_motion_monte_carlo.aux +INPUT ann_rep_brownian_motion_monte_carlo.aux +INPUT ann_rep_brownian_motion_monte_carlo.aux +OUTPUT main.aux +INPUT /usr/local/texlive/2023/texmf-dist/tex/context/base/mkii/supp-pdf.mkii +INPUT /usr/local/texlive/2023/texmf-dist/tex/context/base/mkii/supp-pdf.mkii +INPUT /usr/local/texlive/2023/texmf-dist/tex/context/base/mkii/supp-pdf.mkii +INPUT /usr/local/texlive/2023/texmf-dist/tex/context/base/mkii/supp-pdf.mkii +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/epstopdf-pkg/epstopdf-base.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/epstopdf-pkg/epstopdf-base.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/epstopdf-pkg/epstopdf-base.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/epstopdf-pkg/epstopdf-base.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/epstopdf-pkg/epstopdf-base.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/epstopdf-pkg/epstopdf-base.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/epstopdf-pkg/epstopdf-base.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/epstopdf-pkg/epstopdf-base.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/epstopdf-pkg/epstopdf-base.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/epstopdf-pkg/epstopdf-base.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/epstopdf-pkg/epstopdf-base.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/latexconfig/epstopdf-sys.cfg +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/latexconfig/epstopdf-sys.cfg +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/latexconfig/epstopdf-sys.cfg +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/latexconfig/epstopdf-sys.cfg +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pdflscape/pdflscape.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pdflscape/pdflscape.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pdflscape/pdflscape.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pdflscape/pdflscape.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pdflscape/pdflscape.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pdflscape/pdflscape.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pdflscape/pdflscape.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pdflscape/pdflscape.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pdflscape/pdflscape.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pdflscape/pdflscape.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pdflscape/pdflscape.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pdflscape/pdflscape-nometadata.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pdflscape/pdflscape-nometadata.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pdflscape/pdflscape-nometadata.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pdflscape/pdflscape-nometadata.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pdflscape/pdflscape-nometadata.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pdflscape/pdflscape-nometadata.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pdflscape/pdflscape-nometadata.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pdflscape/pdflscape-nometadata.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pdflscape/pdflscape-nometadata.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pdflscape/pdflscape-nometadata.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/pdflscape/pdflscape-nometadata.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/generic/iftex/iftex.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/graphics/lscape.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/graphics/lscape.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/graphics/lscape.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/graphics/lscape.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/graphics/lscape.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/graphics/lscape.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/graphics/lscape.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/graphics/lscape.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/graphics/lscape.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/graphics/lscape.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/graphics/lscape.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/graphics/graphics.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/graphics/graphicx.sty +INPUT ./main.out +INPUT main.out +INPUT ./main.out +INPUT main.out +INPUT ./main.out +INPUT main.out +INPUT ./main.out +INPUT main.out +OUTPUT main.pdf +INPUT ./main.out +INPUT ./main.out +OUTPUT main.out +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/cm/cmr17.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/cm/cmr12.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/cm/cmr8.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/cm/cmr6.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/cm/cmmi12.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/cm/cmmi8.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/cm/cmmi6.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/cm/cmsy10.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/cm/cmsy8.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/cm/cmsy6.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/cm/cmex10.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/amsfonts/cmextra/cmex8.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/amsfonts/cmextra/cmex7.tfm +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/amsfonts/umsa.fd +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/amsfonts/umsa.fd +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/amsfonts/umsa.fd +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/amsfonts/umsa.fd +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/amsfonts/symbols/msam10.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/amsfonts/symbols/msam10.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/amsfonts/symbols/msam7.tfm +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/amsfonts/umsb.fd +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/amsfonts/umsb.fd +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/amsfonts/umsb.fd +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/amsfonts/umsb.fd +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/amsfonts/symbols/msbm10.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/amsfonts/symbols/msbm10.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/amsfonts/symbols/msbm7.tfm +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/jknapltx/ursfs.fd +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/jknapltx/ursfs.fd +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/jknapltx/ursfs.fd +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/jknapltx/ursfs.fd +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/rsfs/rsfs10.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/rsfs/rsfs10.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/rsfs/rsfs5.tfm +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/stmaryrd/Ustmry.fd +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/stmaryrd/Ustmry.fd +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/stmaryrd/Ustmry.fd +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/stmaryrd/Ustmry.fd +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/stmaryrd/stmary10.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/stmaryrd/stmary8.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/stmaryrd/stmary6.tfm +INPUT /usr/local/texlive/2023/texmf-var/fonts/map/pdftex/updmap/pdftex.map +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/cm/cmr17.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/cm/cmbx12.tfm +INPUT ./main.toc +INPUT main.toc +INPUT main.toc +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/cm/cmbx12.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/cm/cmbx10.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/cm/cmmi10.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/cm/cmsy10.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/cm/cmex10.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/amsfonts/symbols/msam10.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/amsfonts/symbols/msbm10.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/rsfs/rsfs10.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/stmaryrd/stmary10.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/cm/cmss10.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/cm/cmss8.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/cm/cmss8.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/cm/cmss12.tfm +OUTPUT main.toc +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/cm/cmr17.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/cm/cmbx12.tfm +INPUT ./Introduction.tex +INPUT ./Introduction.tex +INPUT ./Introduction.tex +OUTPUT Introduction.aux +INPUT ./Introduction.tex +INPUT ./Introduction.tex +INPUT ./Introduction.tex +INPUT Introduction.tex +INPUT ./Introduction.tex +INPUT Introduction.tex +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/cm/cmr12.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/cm/cmbx12.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/cm/cmti10.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/cm/cmbxti10.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/cm/cmti8.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/cm/cmti7.tfm +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/amsfonts/ueuf.fd +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/amsfonts/ueuf.fd +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/amsfonts/ueuf.fd +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/amsfonts/ueuf.fd +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/amsfonts/euler/eufm10.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/amsfonts/euler/eufm10.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/amsfonts/euler/eufm7.tfm +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/boondox/uboondox-ds.fd +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/boondox/uboondox-ds.fd +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/boondox/uboondox-ds.fd +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/boondox/uboondox-ds.fd +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/boondox/BOONDOX-r-ds.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/boondox/BOONDOX-r-ds.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/boondox/BOONDOX-r-ds.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/vf/public/boondox/BOONDOX-r-ds.vf +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/boondox/zxxrl7z.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/amsfonts/euler/eufm10.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/boondox/BOONDOX-r-ds.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/amsfonts/cmextra/cmex7.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/cm/cmss8.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/amsfonts/symbols/msam5.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/amsfonts/symbols/msbm5.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/amsfonts/euler/eufm5.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/rsfs/rsfs5.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/stmaryrd/stmary5.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/boondox/BOONDOX-r-ds.tfm +INPUT ./Brownian_motion_monte_carlo.tex +INPUT ./Brownian_motion_monte_carlo.tex +INPUT ./Brownian_motion_monte_carlo.tex +OUTPUT Brownian_motion_monte_carlo.aux +INPUT ./Brownian_motion_monte_carlo.tex +INPUT ./Brownian_motion_monte_carlo.tex +INPUT ./Brownian_motion_monte_carlo.tex +INPUT Brownian_motion_monte_carlo.tex +INPUT ./Brownian_motion_monte_carlo.tex +INPUT Brownian_motion_monte_carlo.tex +INPUT ./u_visc_sol.tex +INPUT ./u_visc_sol.tex +INPUT ./u_visc_sol.tex +OUTPUT u_visc_sol.aux +INPUT ./u_visc_sol.tex +INPUT ./u_visc_sol.tex +INPUT ./u_visc_sol.tex +INPUT u_visc_sol.tex +INPUT ./u_visc_sol.tex +INPUT u_visc_sol.tex +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/cm/cmmi12.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/cm/cmmi12.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/cm/cmmi12.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/cm/cmsy10.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/cm/cmsy10.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/cm/cmsy10.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/cm/cmex10.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/cm/cmex10.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/cm/cmex10.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/cm/cmss17.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/cm/cmss17.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/cm/cmss17.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/amsfonts/symbols/msam10.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/amsfonts/symbols/msam10.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/amsfonts/symbols/msam10.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/amsfonts/symbols/msbm10.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/amsfonts/symbols/msbm10.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/amsfonts/symbols/msbm10.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/amsfonts/euler/eufm10.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/amsfonts/euler/eufm10.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/amsfonts/euler/eufm10.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/rsfs/rsfs10.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/rsfs/rsfs10.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/rsfs/rsfs10.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/stmaryrd/stmary10.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/stmaryrd/stmary10.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/stmaryrd/stmary10.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/boondox/BOONDOX-r-ds.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/boondox/BOONDOX-r-ds.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/boondox/BOONDOX-r-ds.tfm +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/bbm-macros/ubbm.fd +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/bbm-macros/ubbm.fd +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/bbm-macros/ubbm.fd +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/bbm-macros/ubbm.fd +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/bbm/bbm10.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/bbm/bbm8.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/bbm/bbm6.tfm +INPUT ./brownian_motion_monte_carlo_non_linear_case.tex +INPUT ./brownian_motion_monte_carlo_non_linear_case.tex +INPUT ./brownian_motion_monte_carlo_non_linear_case.tex +OUTPUT brownian_motion_monte_carlo_non_linear_case.aux +INPUT ./brownian_motion_monte_carlo_non_linear_case.tex +INPUT ./brownian_motion_monte_carlo_non_linear_case.tex +INPUT ./brownian_motion_monte_carlo_non_linear_case.tex +INPUT brownian_motion_monte_carlo_non_linear_case.tex +INPUT ./brownian_motion_monte_carlo_non_linear_case.tex +INPUT brownian_motion_monte_carlo_non_linear_case.tex +INPUT ./neural_network_introduction.tex +INPUT ./neural_network_introduction.tex +INPUT ./neural_network_introduction.tex +OUTPUT neural_network_introduction.aux +INPUT ./neural_network_introduction.tex +INPUT ./neural_network_introduction.tex +INPUT ./neural_network_introduction.tex +INPUT neural_network_introduction.tex +INPUT ./neural_network_introduction.tex +INPUT neural_network_introduction.tex +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/cm/cmti12.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/cm/cmmi12.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/cm/cmsy10.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/cm/cmex10.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/cm/cmss12.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/amsfonts/symbols/msam10.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/amsfonts/symbols/msbm10.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/amsfonts/euler/eufm10.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/bbm/bbm17.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/bbm/bbm12.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/bbm/bbm12.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/rsfs/rsfs10.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/stmaryrd/stmary10.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/boondox/BOONDOX-r-ds.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/cm/cmti12.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/cm/cmss10.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/amsfonts/symbols/msam10.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/amsfonts/symbols/msbm10.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/amsfonts/euler/eufm10.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/bbm/bbm17.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/bbm/bbm10.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/rsfs/rsfs10.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/stmaryrd/stmary10.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/boondox/BOONDOX-r-ds.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/cm/cmti9.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/cm/cmr9.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/cm/cmmi9.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/cm/cmsy9.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/amsfonts/cmextra/cmex9.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/cm/cmss9.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/amsfonts/symbols/msam10.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/amsfonts/symbols/msbm10.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/amsfonts/euler/eufm10.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/bbm/bbm9.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/bbm/bbm5.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/rsfs/rsfs10.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/stmaryrd/stmary9.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/boondox/BOONDOX-r-ds.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/amsfonts/cmextra/cmex7.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/cm/cmss8.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/amsfonts/symbols/msam7.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/amsfonts/symbols/msbm7.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/amsfonts/euler/eufm7.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/bbm/bbm7.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/rsfs/rsfs7.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/stmaryrd/stmary7.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/boondox/BOONDOX-r-ds.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/vf/public/boondox/BOONDOX-r-ds.vf +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/boondox/zxxrl7z.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/cm/cmbx8.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/cm/cmbx6.tfm +INPUT ./ann_product.tex +INPUT ./ann_product.tex +INPUT ./ann_product.tex +OUTPUT ann_product.aux +INPUT ./ann_product.tex +INPUT ./ann_product.tex +INPUT ./ann_product.tex +INPUT ann_product.tex +INPUT ./ann_product.tex +INPUT ann_product.tex +INPUT ./modified_mlp_associated_nn.tex +INPUT ./modified_mlp_associated_nn.tex +INPUT ./modified_mlp_associated_nn.tex +OUTPUT modified_mlp_associated_nn.aux +INPUT ./modified_mlp_associated_nn.tex +INPUT ./modified_mlp_associated_nn.tex +INPUT ./modified_mlp_associated_nn.tex +INPUT modified_mlp_associated_nn.tex +INPUT ./modified_mlp_associated_nn.tex +INPUT modified_mlp_associated_nn.tex +INPUT ./categorical_neural_network.tex +INPUT ./categorical_neural_network.tex +INPUT ./categorical_neural_network.tex +OUTPUT categorical_neural_network.aux +INPUT ./categorical_neural_network.tex +INPUT ./categorical_neural_network.tex +INPUT ./categorical_neural_network.tex +INPUT categorical_neural_network.tex +INPUT ./categorical_neural_network.tex +INPUT categorical_neural_network.tex +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/bbm/bbm17.tfm +INPUT ./ann_rep_brownian_motion_monte_carlo.tex +INPUT ./ann_rep_brownian_motion_monte_carlo.tex +INPUT ./ann_rep_brownian_motion_monte_carlo.tex +OUTPUT ann_rep_brownian_motion_monte_carlo.aux +INPUT ./ann_rep_brownian_motion_monte_carlo.tex +INPUT ./ann_rep_brownian_motion_monte_carlo.tex +INPUT ./ann_rep_brownian_motion_monte_carlo.tex +INPUT ann_rep_brownian_motion_monte_carlo.tex +INPUT ./ann_rep_brownian_motion_monte_carlo.tex +INPUT ann_rep_brownian_motion_monte_carlo.tex +INPUT ./main.bbl +INPUT main.bbl +INPUT ./main.bbl +INPUT main.bbl +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/listings/lstlang1.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/listings/lstlang1.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/listings/lstlang1.sty +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/listings/lstlang1.sty +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/cm/cmtt10.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/public/cm/cmtt10.tfm +INPUT ./Initial_Brownian_Motion.png +INPUT ./Initial_Brownian_Motion.png +INPUT Initial_Brownian_Motion.png +INPUT ./Initial_Brownian_Motion.png +INPUT ./Initial_Brownian_Motion.png +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/base/ts1cmtt.fd +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/base/ts1cmtt.fd +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/base/ts1cmtt.fd +INPUT /usr/local/texlive/2023/texmf-dist/tex/latex/base/ts1cmtt.fd +INPUT /usr/local/texlive/2023/texmf-dist/fonts/tfm/jknappen/ec/tctt1000.tfm +INPUT /usr/local/texlive/2023/texmf-dist/fonts/enc/dvips/cm-super/cm-super-ts1.enc +INPUT ./sharkteeth.png +INPUT ./sharkteeth.png +INPUT sharkteeth.png +INPUT ./sharkteeth.png +INPUT ./sharkteeth.png +INPUT main.aux +INPUT ./Introduction.aux +INPUT Introduction.aux +INPUT Introduction.aux +INPUT ./Brownian_motion_monte_carlo.aux +INPUT Brownian_motion_monte_carlo.aux +INPUT Brownian_motion_monte_carlo.aux +INPUT ./u_visc_sol.aux +INPUT u_visc_sol.aux +INPUT u_visc_sol.aux +INPUT ./brownian_motion_monte_carlo_non_linear_case.aux +INPUT brownian_motion_monte_carlo_non_linear_case.aux +INPUT brownian_motion_monte_carlo_non_linear_case.aux +INPUT ./neural_network_introduction.aux +INPUT neural_network_introduction.aux +INPUT neural_network_introduction.aux +INPUT ./ann_product.aux +INPUT ann_product.aux +INPUT ann_product.aux +INPUT ./modified_mlp_associated_nn.aux +INPUT modified_mlp_associated_nn.aux +INPUT modified_mlp_associated_nn.aux +INPUT ./categorical_neural_network.aux +INPUT categorical_neural_network.aux +INPUT categorical_neural_network.aux +INPUT ./ann_rep_brownian_motion_monte_carlo.aux +INPUT ann_rep_brownian_motion_monte_carlo.aux +INPUT ann_rep_brownian_motion_monte_carlo.aux +INPUT ./main.out +INPUT ./main.out +INPUT /Users/shakilrafi/Library/texlive/2023/texmf-var/fonts/pk/ljfour/public/bbm/bbm10.657pk +INPUT /usr/local/texlive/2023/texmf-dist/fonts/type1/public/amsfonts/cm/cmbx10.pfb +INPUT /usr/local/texlive/2023/texmf-dist/fonts/type1/public/amsfonts/cm/cmbx12.pfb +INPUT /usr/local/texlive/2023/texmf-dist/fonts/type1/public/amsfonts/cm/cmbxti10.pfb +INPUT /usr/local/texlive/2023/texmf-dist/fonts/type1/public/amsfonts/cm/cmex10.pfb +INPUT /usr/local/texlive/2023/texmf-dist/fonts/type1/public/amsfonts/cmextra/cmex8.pfb +INPUT /usr/local/texlive/2023/texmf-dist/fonts/type1/public/amsfonts/cm/cmmi10.pfb +INPUT /usr/local/texlive/2023/texmf-dist/fonts/type1/public/amsfonts/cm/cmmi12.pfb +INPUT /usr/local/texlive/2023/texmf-dist/fonts/type1/public/amsfonts/cm/cmmi6.pfb +INPUT /usr/local/texlive/2023/texmf-dist/fonts/type1/public/amsfonts/cm/cmmi8.pfb +INPUT /usr/local/texlive/2023/texmf-dist/fonts/type1/public/amsfonts/cm/cmr10.pfb +INPUT /usr/local/texlive/2023/texmf-dist/fonts/type1/public/amsfonts/cm/cmr12.pfb +INPUT /usr/local/texlive/2023/texmf-dist/fonts/type1/public/amsfonts/cm/cmr17.pfb +INPUT /usr/local/texlive/2023/texmf-dist/fonts/type1/public/amsfonts/cm/cmr6.pfb +INPUT /usr/local/texlive/2023/texmf-dist/fonts/type1/public/amsfonts/cm/cmr8.pfb +INPUT /usr/local/texlive/2023/texmf-dist/fonts/type1/public/amsfonts/cm/cmr9.pfb +INPUT /usr/local/texlive/2023/texmf-dist/fonts/type1/public/amsfonts/cm/cmss10.pfb +INPUT /usr/local/texlive/2023/texmf-dist/fonts/type1/public/amsfonts/cm/cmss12.pfb +INPUT /usr/local/texlive/2023/texmf-dist/fonts/type1/public/amsfonts/cm/cmss8.pfb +INPUT /usr/local/texlive/2023/texmf-dist/fonts/type1/public/amsfonts/cm/cmss9.pfb +INPUT /usr/local/texlive/2023/texmf-dist/fonts/type1/public/amsfonts/cm/cmsy10.pfb +INPUT /usr/local/texlive/2023/texmf-dist/fonts/type1/public/amsfonts/cm/cmsy6.pfb +INPUT /usr/local/texlive/2023/texmf-dist/fonts/type1/public/amsfonts/cm/cmsy8.pfb +INPUT /usr/local/texlive/2023/texmf-dist/fonts/type1/public/amsfonts/cm/cmti10.pfb +INPUT /usr/local/texlive/2023/texmf-dist/fonts/type1/public/amsfonts/cm/cmtt10.pfb +INPUT /usr/local/texlive/2023/texmf-dist/fonts/type1/public/amsfonts/euler/eufm10.pfb +INPUT /usr/local/texlive/2023/texmf-dist/fonts/type1/public/amsfonts/euler/eufm7.pfb +INPUT /usr/local/texlive/2023/texmf-dist/fonts/type1/public/amsfonts/latxfont/line10.pfb +INPUT /usr/local/texlive/2023/texmf-dist/fonts/type1/public/amsfonts/symbols/msam10.pfb +INPUT /usr/local/texlive/2023/texmf-dist/fonts/type1/public/amsfonts/symbols/msbm10.pfb +INPUT /usr/local/texlive/2023/texmf-dist/fonts/type1/public/amsfonts/symbols/msbm7.pfb +INPUT /usr/local/texlive/2023/texmf-dist/fonts/type1/public/rsfs/rsfs10.pfb +INPUT /usr/local/texlive/2023/texmf-dist/fonts/type1/public/cm-super/sftt1000.pfb +INPUT /usr/local/texlive/2023/texmf-dist/fonts/type1/public/stmaryrd/stmary10.pfb +INPUT /usr/local/texlive/2023/texmf-dist/fonts/type1/public/boondox/zxxrl8a.pfb diff --git a/Dissertation_unzipped/main.log b/Dissertation_unzipped/main.log new file mode 100644 index 0000000..2b244a1 --- /dev/null +++ b/Dissertation_unzipped/main.log @@ -0,0 +1,2557 @@ +This is pdfTeX, Version 3.141592653-2.6-1.40.25 (TeX Live 2023) (preloaded format=pdflatex 2023.9.2) 2 NOV 2023 17:41 +entering extended mode + restricted \write18 enabled. + %&-line parsing enabled. +**main.tex +(./main.tex +LaTeX2e <2022-11-01> patch level 1 +L3 programming layer <2023-02-22> +(/usr/local/texlive/2023/texmf-dist/tex/latex/base/report.cls +Document Class: report 2022/07/02 v1.4n Standard LaTeX document class +(/usr/local/texlive/2023/texmf-dist/tex/latex/base/size11.clo +File: size11.clo 2022/07/02 v1.4n Standard LaTeX file (size option) +) +\c@part=\count185 +\c@chapter=\count186 +\c@section=\count187 +\c@subsection=\count188 +\c@subsubsection=\count189 +\c@paragraph=\count190 +\c@subparagraph=\count191 +\c@figure=\count192 +\c@table=\count193 +\abovecaptionskip=\skip48 +\belowcaptionskip=\skip49 +\bibindent=\dimen140 +) +(/usr/local/texlive/2023/texmf-dist/tex/latex/setspace/setspace.sty +Package: setspace 2022/12/04 v6.7b set line spacing +) +(/usr/local/texlive/2023/texmf-dist/tex/latex/appendix/appendix.sty +Package: appendix 2020/02/08 v1.2c extra appendix facilities +\c@@pps=\count194 +\c@@ppsavesec=\count195 +\c@@ppsaveapp=\count196 +) +(/usr/local/texlive/2023/texmf-dist/tex/latex/pdfpages/pdfpages.sty +Package: pdfpages 2022/12/19 v0.5x Insert pages of external PDF documents (AM) + +(/usr/local/texlive/2023/texmf-dist/tex/latex/base/ifthen.sty +Package: ifthen 2022/04/13 v1.1d Standard LaTeX ifthen package (DPC) +) +(/usr/local/texlive/2023/texmf-dist/tex/latex/tools/calc.sty +Package: calc 2017/05/25 v4.3 Infix arithmetic (KKT,FJ) +\calc@Acount=\count197 +\calc@Bcount=\count198 +\calc@Adimen=\dimen141 +\calc@Bdimen=\dimen142 +\calc@Askip=\skip50 +\calc@Bskip=\skip51 +LaTeX Info: Redefining \setlength on input line 80. +LaTeX Info: Redefining \addtolength on input line 81. +\calc@Ccount=\count199 +\calc@Cskip=\skip52 +) +(/usr/local/texlive/2023/texmf-dist/tex/latex/eso-pic/eso-pic.sty +Package: eso-pic 2020/10/14 v3.0a eso-pic (RN) +\ESO@tempdima=\dimen143 +\ESO@tempdimb=\dimen144 + +(/usr/local/texlive/2023/texmf-dist/tex/latex/graphics/keyval.sty +Package: keyval 2022/05/29 v1.15 key=value parser (DPC) +\KV@toks@=\toks16 +) +(/usr/local/texlive/2023/texmf-dist/tex/latex/xcolor/xcolor.sty +Package: xcolor 2022/06/12 v2.14 LaTeX color extensions (UK) + +(/usr/local/texlive/2023/texmf-dist/tex/latex/graphics-cfg/color.cfg +File: color.cfg 2016/01/02 v1.6 sample color configuration +) +Package xcolor Info: Driver file: pdftex.def on input line 227. + +(/usr/local/texlive/2023/texmf-dist/tex/latex/graphics-def/pdftex.def +File: pdftex.def 2022/09/22 v1.2b Graphics/color driver for pdftex +) +(/usr/local/texlive/2023/texmf-dist/tex/latex/graphics/mathcolor.ltx) +Package xcolor Info: Model `cmy' substituted by `cmy0' on input line 1353. +Package xcolor Info: Model `hsb' substituted by `rgb' on input line 1357. +Package xcolor Info: Model `RGB' extended on input line 1369. +Package xcolor Info: Model `HTML' substituted by `rgb' on input line 1371. +Package xcolor Info: Model `Hsb' substituted by `hsb' on input line 1372. +Package xcolor Info: Model `tHsb' substituted by `hsb' on input line 1373. +Package xcolor Info: Model `HSB' substituted by `hsb' on input line 1374. +Package xcolor Info: Model `Gray' substituted by `gray' on input line 1375. +Package xcolor Info: Model `wave' substituted by `hsb' on input line 1376. +)) +(/usr/local/texlive/2023/texmf-dist/tex/latex/graphics/graphicx.sty +Package: graphicx 2021/09/16 v1.2d Enhanced LaTeX Graphics (DPC,SPQR) + +(/usr/local/texlive/2023/texmf-dist/tex/latex/graphics/graphics.sty +Package: graphics 2022/03/10 v1.4e Standard LaTeX Graphics (DPC,SPQR) + +(/usr/local/texlive/2023/texmf-dist/tex/latex/graphics/trig.sty +Package: trig 2021/08/11 v1.11 sin cos tan (DPC) +) +(/usr/local/texlive/2023/texmf-dist/tex/latex/graphics-cfg/graphics.cfg +File: graphics.cfg 2016/06/04 v1.11 sample graphics configuration +) +Package graphics Info: Driver file: pdftex.def on input line 107. +) +\Gin@req@height=\dimen145 +\Gin@req@width=\dimen146 +) +\AM@pagewidth=\dimen147 +\AM@pageheight=\dimen148 +\AM@fboxrule=\dimen149 + +(/usr/local/texlive/2023/texmf-dist/tex/latex/pdfpages/pppdftex.def +File: pppdftex.def 2022/12/19 v0.5x Pdfpages driver for pdfTeX (AM) +) +\pdfpages@includegraphics@status=\count266 +\AM@pagebox=\box51 +\AM@global@opts=\toks17 +\AM@pagecnt=\count267 +\AM@toc@title=\toks18 +\AM@lof@heading=\toks19 +\c@AM@survey=\count268 +\AM@templatesizebox=\box52 +) +(/usr/local/texlive/2023/texmf-dist/tex/latex/amsmath/amsmath.sty +Package: amsmath 2022/04/08 v2.17n AMS math features +\@mathmargin=\skip53 + +For additional information on amsmath, use the `?' option. +(/usr/local/texlive/2023/texmf-dist/tex/latex/amsmath/amstext.sty +Package: amstext 2021/08/26 v2.01 AMS text + +(/usr/local/texlive/2023/texmf-dist/tex/latex/amsmath/amsgen.sty +File: amsgen.sty 1999/11/30 v2.0 generic functions +\@emptytoks=\toks20 +\ex@=\dimen150 +)) +(/usr/local/texlive/2023/texmf-dist/tex/latex/amsmath/amsbsy.sty +Package: amsbsy 1999/11/29 v1.2d Bold Symbols +\pmbraise@=\dimen151 +) +(/usr/local/texlive/2023/texmf-dist/tex/latex/amsmath/amsopn.sty +Package: amsopn 2022/04/08 v2.04 operator names +) +\inf@bad=\count269 +LaTeX Info: Redefining \frac on input line 234. +\uproot@=\count270 +\leftroot@=\count271 +LaTeX Info: Redefining \overline on input line 399. +LaTeX Info: Redefining \colon on input line 410. +\classnum@=\count272 +\DOTSCASE@=\count273 +LaTeX Info: Redefining \ldots on input line 496. +LaTeX Info: Redefining \dots on input line 499. +LaTeX Info: Redefining \cdots on input line 620. +\Mathstrutbox@=\box53 +\strutbox@=\box54 +LaTeX Info: Redefining \big on input line 722. +LaTeX Info: Redefining \Big on input line 723. +LaTeX Info: Redefining \bigg on input line 724. +LaTeX Info: Redefining \Bigg on input line 725. +\big@size=\dimen152 +LaTeX Font Info: Redeclaring font encoding OML on input line 743. +LaTeX Font Info: Redeclaring font encoding OMS on input line 744. +\macc@depth=\count274 +LaTeX Info: Redefining \bmod on input line 905. +LaTeX Info: Redefining \pmod on input line 910. +LaTeX Info: Redefining \smash on input line 940. +LaTeX Info: Redefining \relbar on input line 970. +LaTeX Info: Redefining \Relbar on input line 971. +\c@MaxMatrixCols=\count275 +\dotsspace@=\muskip16 +\c@parentequation=\count276 +\dspbrk@lvl=\count277 +\tag@help=\toks21 +\row@=\count278 +\column@=\count279 +\maxfields@=\count280 +\andhelp@=\toks22 +\eqnshift@=\dimen153 +\alignsep@=\dimen154 +\tagshift@=\dimen155 +\tagwidth@=\dimen156 +\totwidth@=\dimen157 +\lineht@=\dimen158 +\@envbody=\toks23 +\multlinegap=\skip54 +\multlinetaggap=\skip55 +\mathdisplay@stack=\toks24 +LaTeX Info: Redefining \[ on input line 2953. +LaTeX Info: Redefining \] on input line 2954. +) +(/usr/local/texlive/2023/texmf-dist/tex/latex/amscls/amsthm.sty +Package: amsthm 2020/05/29 v2.20.6 +\thm@style=\toks25 +\thm@bodyfont=\toks26 +\thm@headfont=\toks27 +\thm@notefont=\toks28 +\thm@headpunct=\toks29 +\thm@preskip=\skip56 +\thm@postskip=\skip57 +\thm@headsep=\skip58 +\dth@everypar=\toks30 +) +(/usr/local/texlive/2023/texmf-dist/tex/latex/mathtools/mathtools.sty +Package: mathtools 2022/06/29 v1.29 mathematical typesetting tools + +(/usr/local/texlive/2023/texmf-dist/tex/latex/mathtools/mhsetup.sty +Package: mhsetup 2021/03/18 v1.4 programming setup (MH) +) +\g_MT_multlinerow_int=\count281 +\l_MT_multwidth_dim=\dimen159 +\origjot=\skip59 +\l_MT_shortvdotswithinadjustabove_dim=\dimen160 +\l_MT_shortvdotswithinadjustbelow_dim=\dimen161 +\l_MT_above_intertext_sep=\dimen162 +\l_MT_below_intertext_sep=\dimen163 +\l_MT_above_shortintertext_sep=\dimen164 +\l_MT_below_shortintertext_sep=\dimen165 +\xmathstrut@box=\box55 +\xmathstrut@dim=\dimen166 +) +(/usr/local/texlive/2023/texmf-dist/tex/latex/amsfonts/amssymb.sty +Package: amssymb 2013/01/14 v3.01 AMS font symbols + +(/usr/local/texlive/2023/texmf-dist/tex/latex/amsfonts/amsfonts.sty +Package: amsfonts 2013/01/14 v3.01 Basic AMSFonts support +\symAMSa=\mathgroup4 +\symAMSb=\mathgroup5 +LaTeX Font Info: Redeclaring math symbol \hbar on input line 98. +LaTeX Font Info: Overwriting math alphabet `\mathfrak' in version `bold' +(Font) U/euf/m/n --> U/euf/b/n on input line 106. +)) +(/usr/local/texlive/2023/texmf-dist/tex/latex/geometry/geometry.sty +Package: geometry 2020/01/02 v5.9 Page Geometry + +(/usr/local/texlive/2023/texmf-dist/tex/generic/iftex/ifvtex.sty +Package: ifvtex 2019/10/25 v1.7 ifvtex legacy package. Use iftex instead. + +(/usr/local/texlive/2023/texmf-dist/tex/generic/iftex/iftex.sty +Package: iftex 2022/02/03 v1.0f TeX engine tests +)) +\Gm@cnth=\count282 +\Gm@cntv=\count283 +\c@Gm@tempcnt=\count284 +\Gm@bindingoffset=\dimen167 +\Gm@wd@mp=\dimen168 +\Gm@odd@mp=\dimen169 +\Gm@even@mp=\dimen170 +\Gm@layoutwidth=\dimen171 +\Gm@layoutheight=\dimen172 +\Gm@layouthoffset=\dimen173 +\Gm@layoutvoffset=\dimen174 +\Gm@dimlist=\toks31 +) +(/usr/local/texlive/2023/texmf-dist/tex/generic/soul/soul.sty +Package: soul 2023-02-18 v3.0 Permit use of UTF-8 characters in soul (HO) + +(/usr/local/texlive/2023/texmf-dist/tex/generic/soul/soul-ori.sty +Package: soul-ori 2023-02-18 v3.0 letterspacing/underlining (mf) +\SOUL@word=\toks32 +\SOUL@lasttoken=\toks33 +\SOUL@syllable=\toks34 +\SOUL@cmds=\toks35 +\SOUL@buffer=\toks36 +\SOUL@token=\toks37 +\SOUL@syllgoal=\dimen175 +\SOUL@syllwidth=\dimen176 +\SOUL@charkern=\dimen177 +\SOUL@hyphkern=\dimen178 +\SOUL@dimen=\dimen179 +\SOUL@dimeni=\dimen180 +\SOUL@minus=\count285 +\SOUL@comma=\count286 +\SOUL@apo=\count287 +\SOUL@grave=\count288 +\SOUL@spaceskip=\skip60 +\SOUL@ttwidth=\dimen181 +\SOUL@uldp=\dimen182 +\SOUL@ulht=\dimen183 +) +(/usr/local/texlive/2023/texmf-dist/tex/generic/infwarerr/infwarerr.sty +Package: infwarerr 2019/12/03 v1.5 Providing info/warning/error messages (HO) +) +(/usr/local/texlive/2023/texmf-dist/tex/generic/etexcmds/etexcmds.sty +Package: etexcmds 2019/12/15 v1.7 Avoid name clashes with e-TeX commands (HO) +)) +(/usr/local/texlive/2023/texmf-dist/tex/latex/bbm-macros/bbm.sty +Package: bbm 1999/03/15 V 1.2 provides fonts for set symbols - TH +LaTeX Font Info: Overwriting math alphabet `\mathbbm' in version `bold' +(Font) U/bbm/m/n --> U/bbm/bx/n on input line 33. +LaTeX Font Info: Overwriting math alphabet `\mathbbmss' in version `bold' +(Font) U/bbmss/m/n --> U/bbmss/bx/n on input line 35. +) +(/usr/local/texlive/2023/texmf-dist/tex/latex/cancel/cancel.sty +Package: cancel 2013/04/12 v2.2 Cancel math terms +) +(/usr/local/texlive/2023/texmf-dist/tex/latex/enumitem/enumitem.sty +Package: enumitem 2019/06/20 v3.9 Customized lists +\labelindent=\skip61 +\enit@outerparindent=\dimen184 +\enit@toks=\toks38 +\enit@inbox=\box56 +\enit@count@id=\count289 +\enitdp@description=\count290 +) +(/usr/local/texlive/2023/texmf-dist/tex/latex/jknapltx/mathrsfs.sty +Package: mathrsfs 1996/01/01 Math RSFS package v1.0 (jk) +\symrsfs=\mathgroup6 +) +(/usr/local/texlive/2023/texmf-dist/tex/latex/hyperref/hyperref.sty +Package: hyperref 2023-02-07 v7.00v Hypertext links for LaTeX + +(/usr/local/texlive/2023/texmf-dist/tex/generic/ltxcmds/ltxcmds.sty +Package: ltxcmds 2020-05-10 v1.25 LaTeX kernel commands for general use (HO) +) +(/usr/local/texlive/2023/texmf-dist/tex/generic/pdftexcmds/pdftexcmds.sty +Package: pdftexcmds 2020-06-27 v0.33 Utility functions of pdfTeX for LuaTeX (HO +) +Package pdftexcmds Info: \pdf@primitive is available. +Package pdftexcmds Info: \pdf@ifprimitive is available. +Package pdftexcmds Info: \pdfdraftmode found. +) +(/usr/local/texlive/2023/texmf-dist/tex/latex/kvsetkeys/kvsetkeys.sty +Package: kvsetkeys 2022-10-05 v1.19 Key value parser (HO) +) +(/usr/local/texlive/2023/texmf-dist/tex/generic/kvdefinekeys/kvdefinekeys.sty +Package: kvdefinekeys 2019-12-19 v1.6 Define keys (HO) +) +(/usr/local/texlive/2023/texmf-dist/tex/generic/pdfescape/pdfescape.sty +Package: pdfescape 2019/12/09 v1.15 Implements pdfTeX's escape features (HO) +) +(/usr/local/texlive/2023/texmf-dist/tex/latex/hycolor/hycolor.sty +Package: hycolor 2020-01-27 v1.10 Color options for hyperref/bookmark (HO) +) +(/usr/local/texlive/2023/texmf-dist/tex/latex/letltxmacro/letltxmacro.sty +Package: letltxmacro 2019/12/03 v1.6 Let assignment for LaTeX macros (HO) +) +(/usr/local/texlive/2023/texmf-dist/tex/latex/auxhook/auxhook.sty +Package: auxhook 2019-12-17 v1.6 Hooks for auxiliary files (HO) +) +(/usr/local/texlive/2023/texmf-dist/tex/latex/hyperref/nameref.sty +Package: nameref 2022-05-17 v2.50 Cross-referencing by name of section + +(/usr/local/texlive/2023/texmf-dist/tex/latex/refcount/refcount.sty +Package: refcount 2019/12/15 v3.6 Data extraction from label references (HO) +) +(/usr/local/texlive/2023/texmf-dist/tex/generic/gettitlestring/gettitlestring.s +ty +Package: gettitlestring 2019/12/15 v1.6 Cleanup title references (HO) + (/usr/local/texlive/2023/texmf-dist/tex/latex/kvoptions/kvoptions.sty +Package: kvoptions 2022-06-15 v3.15 Key value format for package options (HO) +)) +\c@section@level=\count291 +) +\@linkdim=\dimen185 +\Hy@linkcounter=\count292 +\Hy@pagecounter=\count293 + +(/usr/local/texlive/2023/texmf-dist/tex/latex/hyperref/pd1enc.def +File: pd1enc.def 2023-02-07 v7.00v Hyperref: PDFDocEncoding definition (HO) +Now handling font encoding PD1 ... +... no UTF-8 mapping file for font encoding PD1 +) +(/usr/local/texlive/2023/texmf-dist/tex/generic/intcalc/intcalc.sty +Package: intcalc 2019/12/15 v1.3 Expandable calculations with integers (HO) +) +\Hy@SavedSpaceFactor=\count294 + +(/usr/local/texlive/2023/texmf-dist/tex/latex/hyperref/puenc.def +File: puenc.def 2023-02-07 v7.00v Hyperref: PDF Unicode definition (HO) +Now handling font encoding PU ... +... no UTF-8 mapping file for font encoding PU +) +Package hyperref Info: Hyper figures OFF on input line 4177. +Package hyperref Info: Link nesting OFF on input line 4182. +Package hyperref Info: Hyper index ON on input line 4185. +Package hyperref Info: Plain pages OFF on input line 4192. +Package hyperref Info: Backreferencing OFF on input line 4197. +Package hyperref Info: Implicit mode ON; LaTeX internals redefined. +Package hyperref Info: Bookmarks ON on input line 4425. +\c@Hy@tempcnt=\count295 + +(/usr/local/texlive/2023/texmf-dist/tex/latex/url/url.sty +\Urlmuskip=\muskip17 +Package: url 2013/09/16 ver 3.4 Verb mode for urls, etc. +) +LaTeX Info: Redefining \url on input line 4763. +\XeTeXLinkMargin=\dimen186 + +(/usr/local/texlive/2023/texmf-dist/tex/generic/bitset/bitset.sty +Package: bitset 2019/12/09 v1.3 Handle bit-vector datatype (HO) + +(/usr/local/texlive/2023/texmf-dist/tex/generic/bigintcalc/bigintcalc.sty +Package: bigintcalc 2019/12/15 v1.5 Expandable calculations on big integers (HO +) +)) +\Fld@menulength=\count296 +\Field@Width=\dimen187 +\Fld@charsize=\dimen188 +Package hyperref Info: Hyper figures OFF on input line 6042. +Package hyperref Info: Link nesting OFF on input line 6047. +Package hyperref Info: Hyper index ON on input line 6050. +Package hyperref Info: backreferencing OFF on input line 6057. +Package hyperref Info: Link coloring OFF on input line 6062. +Package hyperref Info: Link coloring with OCG OFF on input line 6067. +Package hyperref Info: PDF/A mode OFF on input line 6072. + +(/usr/local/texlive/2023/texmf-dist/tex/latex/base/atbegshi-ltx.sty +Package: atbegshi-ltx 2021/01/10 v1.0c Emulation of the original atbegshi +package with kernel methods +) +\Hy@abspage=\count297 +\c@Item=\count298 +\c@Hfootnote=\count299 +) +Package hyperref Info: Driver (autodetected): hpdftex. + +(/usr/local/texlive/2023/texmf-dist/tex/latex/hyperref/hpdftex.def +File: hpdftex.def 2023-02-07 v7.00v Hyperref driver for pdfTeX + +(/usr/local/texlive/2023/texmf-dist/tex/latex/base/atveryend-ltx.sty +Package: atveryend-ltx 2020/08/19 v1.0a Emulation of the original atveryend pac +kage +with kernel methods +) +\Fld@listcount=\count300 +\c@bookmark@seq@number=\count301 + +(/usr/local/texlive/2023/texmf-dist/tex/latex/rerunfilecheck/rerunfilecheck.sty +Package: rerunfilecheck 2022-07-10 v1.10 Rerun checks for auxiliary files (HO) + +(/usr/local/texlive/2023/texmf-dist/tex/generic/uniquecounter/uniquecounter.sty +Package: uniquecounter 2019/12/15 v1.4 Provide unlimited unique counter (HO) +) +Package uniquecounter Info: New unique counter `rerunfilecheck' on input line 2 +85. +) +\Hy@SectionHShift=\skip62 +) (/usr/local/texlive/2023/texmf-dist/tex/latex/cleveref/cleveref.sty +Package: cleveref 2018/03/27 v0.21.4 Intelligent cross-referencing +Package cleveref Info: `hyperref' support loaded on input line 2370. +LaTeX Info: Redefining \cref on input line 2370. +LaTeX Info: Redefining \Cref on input line 2370. +LaTeX Info: Redefining \crefrange on input line 2370. +LaTeX Info: Redefining \Crefrange on input line 2370. +LaTeX Info: Redefining \cpageref on input line 2370. +LaTeX Info: Redefining \Cpageref on input line 2370. +LaTeX Info: Redefining \cpagerefrange on input line 2370. +LaTeX Info: Redefining \Cpagerefrange on input line 2370. +LaTeX Info: Redefining \labelcref on input line 2370. +LaTeX Info: Redefining \labelcpageref on input line 2370. +Package cleveref Info: `amsthm' support loaded on input line 3026. +Package cleveref Info: always capitalise cross-reference names on input line 78 +25. +Package cleveref Info: always capitalise cross-reference names on input line 78 +52. +) +(/usr/local/texlive/2023/texmf-dist/tex/latex/natbib/natbib.sty +Package: natbib 2010/09/13 8.31b (PWD, AO) +\bibhang=\skip63 +\bibsep=\skip64 +LaTeX Info: Redefining \cite on input line 694. +\c@NAT@ctr=\count302 +) +(/usr/local/texlive/2023/texmf-dist/tex/latex/neuralnetwork/neuralnetwork.sty +Package: neuralnetwork 2013/07/18 v1.0 Neural network diagrams, Mark Kuckian Co +wan, mark@battlesnake.co.uk + +(/usr/local/texlive/2023/texmf-dist/tex/latex/environ/environ.sty +Package: environ 2014/05/04 v0.3 A new way to define environments + +(/usr/local/texlive/2023/texmf-dist/tex/latex/trimspaces/trimspaces.sty +Package: trimspaces 2009/09/17 v1.1 Trim spaces around a token list +)) +(/usr/local/texlive/2023/texmf-dist/tex/latex/etoolbox/etoolbox.sty +Package: etoolbox 2020/10/05 v2.5k e-TeX tools for LaTeX (JAW) +\etb@tempcnta=\count303 +) +(/usr/local/texlive/2023/texmf-dist/tex/latex/xkeyval/xkeyval.sty +Package: xkeyval 2022/06/16 v2.9 package option processing (HA) + +(/usr/local/texlive/2023/texmf-dist/tex/generic/xkeyval/xkeyval.tex +(/usr/local/texlive/2023/texmf-dist/tex/generic/xkeyval/xkvutils.tex +\XKV@toks=\toks39 +\XKV@tempa@toks=\toks40 +) +\XKV@depth=\count304 +File: xkeyval.tex 2014/12/03 v2.7a key=value parser (HA) +)) +(/usr/local/texlive/2023/texmf-dist/tex/latex/pgf/frontendlayer/tikz.sty +(/usr/local/texlive/2023/texmf-dist/tex/latex/pgf/basiclayer/pgf.sty +(/usr/local/texlive/2023/texmf-dist/tex/latex/pgf/utilities/pgfrcs.sty +(/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/utilities/pgfutil-common.te +x +\pgfutil@everybye=\toks41 +\pgfutil@tempdima=\dimen189 +\pgfutil@tempdimb=\dimen190 +) +(/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/utilities/pgfutil-latex.def +\pgfutil@abb=\box57 +) (/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/utilities/pgfrcs.code.tex +(/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/pgf.revision.tex) +Package: pgfrcs 2023-01-15 v3.1.10 (3.1.10) +)) +Package: pgf 2023-01-15 v3.1.10 (3.1.10) + +(/usr/local/texlive/2023/texmf-dist/tex/latex/pgf/basiclayer/pgfcore.sty +(/usr/local/texlive/2023/texmf-dist/tex/latex/pgf/systemlayer/pgfsys.sty +(/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/systemlayer/pgfsys.code.tex +Package: pgfsys 2023-01-15 v3.1.10 (3.1.10) +(/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/utilities/pgfkeys.code.tex +\pgfkeys@pathtoks=\toks42 +\pgfkeys@temptoks=\toks43 + +(/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/utilities/pgfkeyslibraryfil +tered.code.tex +\pgfkeys@tmptoks=\toks44 +)) +\pgf@x=\dimen191 +\pgf@y=\dimen192 +\pgf@xa=\dimen193 +\pgf@ya=\dimen194 +\pgf@xb=\dimen195 +\pgf@yb=\dimen196 +\pgf@xc=\dimen197 +\pgf@yc=\dimen198 +\pgf@xd=\dimen199 +\pgf@yd=\dimen256 +\w@pgf@writea=\write3 +\r@pgf@reada=\read2 +\c@pgf@counta=\count305 +\c@pgf@countb=\count306 +\c@pgf@countc=\count307 +\c@pgf@countd=\count308 +\t@pgf@toka=\toks45 +\t@pgf@tokb=\toks46 +\t@pgf@tokc=\toks47 +\pgf@sys@id@count=\count309 + +(/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/systemlayer/pgf.cfg +File: pgf.cfg 2023-01-15 v3.1.10 (3.1.10) +) +Driver file for pgf: pgfsys-pdftex.def + +(/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-pdftex.d +ef +File: pgfsys-pdftex.def 2023-01-15 v3.1.10 (3.1.10) + +(/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/systemlayer/pgfsys-common-p +df.def +File: pgfsys-common-pdf.def 2023-01-15 v3.1.10 (3.1.10) +))) +(/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/systemlayer/pgfsyssoftpath. +code.tex +File: pgfsyssoftpath.code.tex 2023-01-15 v3.1.10 (3.1.10) +\pgfsyssoftpath@smallbuffer@items=\count310 +\pgfsyssoftpath@bigbuffer@items=\count311 +) +(/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/systemlayer/pgfsysprotocol. +code.tex +File: pgfsysprotocol.code.tex 2023-01-15 v3.1.10 (3.1.10) +)) +(/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/basiclayer/pgfcore.code.tex +Package: pgfcore 2023-01-15 v3.1.10 (3.1.10) +(/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/math/pgfmath.code.tex +(/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/math/pgfmathutil.code.tex) +(/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/math/pgfmathparser.code.tex +\pgfmath@dimen=\dimen257 +\pgfmath@count=\count312 +\pgfmath@box=\box58 +\pgfmath@toks=\toks48 +\pgfmath@stack@operand=\toks49 +\pgfmath@stack@operation=\toks50 +) +(/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.code. +tex) +(/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.basic +.code.tex) +(/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.trigo +nometric.code.tex) +(/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.rando +m.code.tex) +(/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.compa +rison.code.tex) +(/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.base. +code.tex) +(/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.round +.code.tex) +(/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.misc. +code.tex) +(/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/math/pgfmathfunctions.integ +erarithmetics.code.tex) +(/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/math/pgfmathcalc.code.tex) +(/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/math/pgfmathfloat.code.tex +\c@pgfmathroundto@lastzeros=\count313 +)) (/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/math/pgfint.code.tex) +(/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/basiclayer/pgfcorepoints.co +de.tex +File: pgfcorepoints.code.tex 2023-01-15 v3.1.10 (3.1.10) +\pgf@picminx=\dimen258 +\pgf@picmaxx=\dimen259 +\pgf@picminy=\dimen260 +\pgf@picmaxy=\dimen261 +\pgf@pathminx=\dimen262 +\pgf@pathmaxx=\dimen263 +\pgf@pathminy=\dimen264 +\pgf@pathmaxy=\dimen265 +\pgf@xx=\dimen266 +\pgf@xy=\dimen267 +\pgf@yx=\dimen268 +\pgf@yy=\dimen269 +\pgf@zx=\dimen270 +\pgf@zy=\dimen271 +) +(/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/basiclayer/pgfcorepathconst +ruct.code.tex +File: pgfcorepathconstruct.code.tex 2023-01-15 v3.1.10 (3.1.10) +\pgf@path@lastx=\dimen272 +\pgf@path@lasty=\dimen273 +) +(/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/basiclayer/pgfcorepathusage +.code.tex +File: pgfcorepathusage.code.tex 2023-01-15 v3.1.10 (3.1.10) +\pgf@shorten@end@additional=\dimen274 +\pgf@shorten@start@additional=\dimen275 +) +(/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/basiclayer/pgfcorescopes.co +de.tex +File: pgfcorescopes.code.tex 2023-01-15 v3.1.10 (3.1.10) +\pgfpic=\box59 +\pgf@hbox=\box60 +\pgf@layerbox@main=\box61 +\pgf@picture@serial@count=\count314 +) +(/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/basiclayer/pgfcoregraphicst +ate.code.tex +File: pgfcoregraphicstate.code.tex 2023-01-15 v3.1.10 (3.1.10) +\pgflinewidth=\dimen276 +) +(/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/basiclayer/pgfcoretransform +ations.code.tex +File: pgfcoretransformations.code.tex 2023-01-15 v3.1.10 (3.1.10) +\pgf@pt@x=\dimen277 +\pgf@pt@y=\dimen278 +\pgf@pt@temp=\dimen279 +) +(/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/basiclayer/pgfcorequick.cod +e.tex +File: pgfcorequick.code.tex 2023-01-15 v3.1.10 (3.1.10) +) +(/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/basiclayer/pgfcoreobjects.c +ode.tex +File: pgfcoreobjects.code.tex 2023-01-15 v3.1.10 (3.1.10) +) +(/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/basiclayer/pgfcorepathproce +ssing.code.tex +File: pgfcorepathprocessing.code.tex 2023-01-15 v3.1.10 (3.1.10) +) +(/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/basiclayer/pgfcorearrows.co +de.tex +File: pgfcorearrows.code.tex 2023-01-15 v3.1.10 (3.1.10) +\pgfarrowsep=\dimen280 +) +(/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/basiclayer/pgfcoreshade.cod +e.tex +File: pgfcoreshade.code.tex 2023-01-15 v3.1.10 (3.1.10) +\pgf@max=\dimen281 +\pgf@sys@shading@range@num=\count315 +\pgf@shadingcount=\count316 +) +(/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/basiclayer/pgfcoreimage.cod +e.tex +File: pgfcoreimage.code.tex 2023-01-15 v3.1.10 (3.1.10) +) +(/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/basiclayer/pgfcoreexternal. +code.tex +File: pgfcoreexternal.code.tex 2023-01-15 v3.1.10 (3.1.10) +\pgfexternal@startupbox=\box62 +) +(/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/basiclayer/pgfcorelayers.co +de.tex +File: pgfcorelayers.code.tex 2023-01-15 v3.1.10 (3.1.10) +) +(/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/basiclayer/pgfcoretranspare +ncy.code.tex +File: pgfcoretransparency.code.tex 2023-01-15 v3.1.10 (3.1.10) +) +(/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/basiclayer/pgfcorepatterns. +code.tex +File: pgfcorepatterns.code.tex 2023-01-15 v3.1.10 (3.1.10) +) +(/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/basiclayer/pgfcorerdf.code. +tex +File: pgfcorerdf.code.tex 2023-01-15 v3.1.10 (3.1.10) +))) +(/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/modules/pgfmoduleshapes.cod +e.tex +File: pgfmoduleshapes.code.tex 2023-01-15 v3.1.10 (3.1.10) +\pgfnodeparttextbox=\box63 +) +(/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/modules/pgfmoduleplot.code. +tex +File: pgfmoduleplot.code.tex 2023-01-15 v3.1.10 (3.1.10) +) +(/usr/local/texlive/2023/texmf-dist/tex/latex/pgf/compatibility/pgfcomp-version +-0-65.sty +Package: pgfcomp-version-0-65 2023-01-15 v3.1.10 (3.1.10) +\pgf@nodesepstart=\dimen282 +\pgf@nodesepend=\dimen283 +) +(/usr/local/texlive/2023/texmf-dist/tex/latex/pgf/compatibility/pgfcomp-version +-1-18.sty +Package: pgfcomp-version-1-18 2023-01-15 v3.1.10 (3.1.10) +)) +(/usr/local/texlive/2023/texmf-dist/tex/latex/pgf/utilities/pgffor.sty +(/usr/local/texlive/2023/texmf-dist/tex/latex/pgf/utilities/pgfkeys.sty +(/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/utilities/pgfkeys.code.tex) +) (/usr/local/texlive/2023/texmf-dist/tex/latex/pgf/math/pgfmath.sty +(/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/math/pgfmath.code.tex)) +(/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/utilities/pgffor.code.tex +Package: pgffor 2023-01-15 v3.1.10 (3.1.10) +\pgffor@iter=\dimen284 +\pgffor@skip=\dimen285 +\pgffor@stack=\toks51 +\pgffor@toks=\toks52 +)) +(/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/frontendlayer/tikz/tikz.cod +e.tex +Package: tikz 2023-01-15 v3.1.10 (3.1.10) + +(/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/libraries/pgflibraryplothan +dlers.code.tex +File: pgflibraryplothandlers.code.tex 2023-01-15 v3.1.10 (3.1.10) +\pgf@plot@mark@count=\count317 +\pgfplotmarksize=\dimen286 +) +\tikz@lastx=\dimen287 +\tikz@lasty=\dimen288 +\tikz@lastxsaved=\dimen289 +\tikz@lastysaved=\dimen290 +\tikz@lastmovetox=\dimen291 +\tikz@lastmovetoy=\dimen292 +\tikzleveldistance=\dimen293 +\tikzsiblingdistance=\dimen294 +\tikz@figbox=\box64 +\tikz@figbox@bg=\box65 +\tikz@tempbox=\box66 +\tikz@tempbox@bg=\box67 +\tikztreelevel=\count318 +\tikznumberofchildren=\count319 +\tikznumberofcurrentchild=\count320 +\tikz@fig@count=\count321 + +(/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/modules/pgfmodulematrix.cod +e.tex +File: pgfmodulematrix.code.tex 2023-01-15 v3.1.10 (3.1.10) +\pgfmatrixcurrentrow=\count322 +\pgfmatrixcurrentcolumn=\count323 +\pgf@matrix@numberofcolumns=\count324 +) +\tikz@expandcount=\count325 + +(/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/frontendlayer/tikz/librarie +s/tikzlibrarytopaths.code.tex +File: tikzlibrarytopaths.code.tex 2023-01-15 v3.1.10 (3.1.10) +))) +(/usr/local/texlive/2023/texmf-dist/tex/latex/algorithmicx/algorithmicx.sty +Package: algorithmicx 2005/04/27 v1.2 Algorithmicx + +Document Style algorithmicx 1.2 - a greatly improved `algorithmic' style +\c@ALG@line=\count326 +\c@ALG@rem=\count327 +\c@ALG@nested=\count328 +\ALG@tlm=\skip65 +\ALG@thistlm=\skip66 +\c@ALG@Lnr=\count329 +\c@ALG@blocknr=\count330 +\c@ALG@storecount=\count331 +\c@ALG@tmpcounter=\count332 +\ALG@tmplength=\skip67 +) +(/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/frontendlayer/tikz/librarie +s/tikzlibraryshapes.code.tex +File: tikzlibraryshapes.code.tex 2023-01-15 v3.1.10 (3.1.10) + +(/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/frontendlayer/tikz/librarie +s/tikzlibraryshapes.geometric.code.tex +File: tikzlibraryshapes.geometric.code.tex 2023-01-15 v3.1.10 (3.1.10) + +(/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/libraries/shapes/pgflibrary +shapes.geometric.code.tex +File: pgflibraryshapes.geometric.code.tex 2023-01-15 v3.1.10 (3.1.10) +)) +(/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/frontendlayer/tikz/librarie +s/tikzlibraryshapes.misc.code.tex +File: tikzlibraryshapes.misc.code.tex 2023-01-15 v3.1.10 (3.1.10) + +(/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/libraries/shapes/pgflibrary +shapes.misc.code.tex +File: pgflibraryshapes.misc.code.tex 2023-01-15 v3.1.10 (3.1.10) +)) +(/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/frontendlayer/tikz/librarie +s/tikzlibraryshapes.symbols.code.tex +File: tikzlibraryshapes.symbols.code.tex 2023-01-15 v3.1.10 (3.1.10) + +(/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/libraries/shapes/pgflibrary +shapes.symbols.code.tex +File: pgflibraryshapes.symbols.code.tex 2023-01-15 v3.1.10 (3.1.10) +)) +(/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/frontendlayer/tikz/librarie +s/tikzlibraryshapes.arrows.code.tex +File: tikzlibraryshapes.arrows.code.tex 2023-01-15 v3.1.10 (3.1.10) + +(/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/libraries/shapes/pgflibrary +shapes.arrows.code.tex +File: pgflibraryshapes.arrows.code.tex 2023-01-15 v3.1.10 (3.1.10) +)) +(/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/frontendlayer/tikz/librarie +s/tikzlibraryshapes.callouts.code.tex +(/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/libraries/shapes/pgflibrary +shapes.callouts.code.tex)) +(/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/frontendlayer/tikz/librarie +s/tikzlibraryshapes.multipart.code.tex +File: tikzlibraryshapes.multipart.code.tex 2023-01-15 v3.1.10 (3.1.10) + +(/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/libraries/shapes/pgflibrary +shapes.multipart.code.tex +File: pgflibraryshapes.multipart.code.tex 2023-01-15 v3.1.10 (3.1.10) +\pgfnodepartlowerbox=\box68 +\pgfnodeparttwobox=\box69 +\pgfnodepartthreebox=\box70 +\pgfnodepartfourbox=\box71 +\pgfnodeparttwentybox=\box72 +\pgfnodepartnineteenbox=\box73 +\pgfnodeparteighteenbox=\box74 +\pgfnodepartseventeenbox=\box75 +\pgfnodepartsixteenbox=\box76 +\pgfnodepartfifteenbox=\box77 +\pgfnodepartfourteenbox=\box78 +\pgfnodepartthirteenbox=\box79 +\pgfnodeparttwelvebox=\box80 +\pgfnodepartelevenbox=\box81 +\pgfnodeparttenbox=\box82 +\pgfnodepartninebox=\box83 +\pgfnodeparteightbox=\box84 +\pgfnodepartsevenbox=\box85 +\pgfnodepartsixbox=\box86 +\pgfnodepartfivebox=\box87 +)))) +(/usr/local/texlive/2023/texmf-dist/tex/generic/witharrows/witharrows.sty +(/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/libraries/pgflibraryarrows. +meta.code.tex +File: pgflibraryarrows.meta.code.tex 2023-01-15 v3.1.10 (3.1.10) +\pgfarrowinset=\dimen295 +\pgfarrowlength=\dimen296 +\pgfarrowwidth=\dimen297 +\pgfarrowlinewidth=\dimen298 +) +(/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/frontendlayer/tikz/librarie +s/tikzlibrarybending.code.tex +File: tikzlibrarybending.code.tex 2023-01-15 v3.1.10 (3.1.10) + +(/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/modules/pgfmodulebending.co +de.tex +File: pgfmodulebending.code.tex 2023-01-15 v3.1.10 (3.1.10) + +(/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/modules/pgfmodulenonlineart +ransformations.code.tex +File: pgfmodulenonlineartransformations.code.tex 2023-01-15 v3.1.10 (3.1.10) +\pgftransformnonlinearflatness=\dimen299 +) +(/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/libraries/pgflibrarycurvili +near.code.tex +File: pgflibrarycurvilinear.code.tex 2023-01-15 v3.1.10 (3.1.10) +\pgf@curvilinear@time@a=\dimen300 +\pgf@curvilinear@length@a=\dimen301 +\pgf@curvilinear@length@b=\dimen302 +\pgf@curvilinear@length@c=\dimen303 +\pgf@curvilinear@length@d=\dimen304 +) +\pgf@arrows@the@rigidity=\dimen305 +)) +(/usr/local/texlive/2023/texmf-dist/tex/latex/l3packages/l3keys2e/l3keys2e.sty +(/usr/local/texlive/2023/texmf-dist/tex/latex/l3kernel/expl3.sty +Package: expl3 2023-02-22 L3 programming layer (loader) + +(/usr/local/texlive/2023/texmf-dist/tex/latex/l3backend/l3backend-pdftex.def +File: l3backend-pdftex.def 2023-01-16 L3 backend support: PDF output (pdfTeX) +\l__color_backend_stack_int=\count333 +\l__pdf_internal_box=\box88 +)) +Package: l3keys2e 2023-02-02 LaTeX2e option processing using LaTeX3 keys +) +Package: witharrows 2023/02/14 v2.8a Draws arrows for explanations on the right + +(/usr/local/texlive/2023/texmf-dist/tex/latex/varwidth/varwidth.sty +Package: varwidth 2009/03/30 ver 0.92; Variable-width minipages +\@vwid@box=\box89 +\sift@deathcycles=\count334 +\@vwid@loff=\dimen306 +\@vwid@roff=\dimen307 +) +\g__witharrows_last_env_int=\count335 +\l__witharrows_pos_env_int=\count336 +\l__witharrows_pos_arrow_int=\count337 +\g__witharrows_arrow_int=\count338 +\g__witharrows_line_int=\count339 +\g__witharrows_col_int=\count340 +\g__witharrows_static_col_int=\count341 +\l__witharrows_nb_cols_int=\count342 +\l__witharrows_arrow_width_dim=\dimen308 +\l__witharrows_up_and_down_radius_dim=\dimen309 +\l__witharrows_xoffset_for_o_arrows_dim=\dimen310 +\l__witharrows_max_length_of_arrow_dim=\dimen311 +\l__witharrows_ygap_dim=\dimen312 +\l__witharrows_ystart_dim=\dimen313 +\l__witharrows_xoffset_dim=\dimen314 +\l__witharrows_interline_skip=\skip68 +\l__witharrows_start_adjust_dim=\dimen315 +\l__witharrows_end_adjust_dim=\dimen316 +\l__witharrows_mathindent_skip=\skip69 +) +(/usr/local/texlive/2023/texmf-dist/tex/latex/stmaryrd/stmaryrd.sty +Package: stmaryrd 1994/03/03 St Mary's Road symbol package +\symstmry=\mathgroup7 +LaTeX Font Info: Overwriting symbol font `stmry' in version `bold' +(Font) U/stmry/m/n --> U/stmry/b/n on input line 89. +) +(/usr/local/texlive/2023/texmf-dist/tex/latex/listings/listings.sty +\lst@mode=\count343 +\lst@gtempboxa=\box90 +\lst@token=\toks53 +\lst@length=\count344 +\lst@currlwidth=\dimen317 +\lst@column=\count345 +\lst@pos=\count346 +\lst@lostspace=\dimen318 +\lst@width=\dimen319 +\lst@newlines=\count347 +\lst@lineno=\count348 +\lst@maxwidth=\dimen320 + +(/usr/local/texlive/2023/texmf-dist/tex/latex/listings/lstmisc.sty +File: lstmisc.sty 2023/02/27 1.9 (Carsten Heinz) +\c@lstnumber=\count349 +\lst@skipnumbers=\count350 +\lst@framebox=\box91 +) +(/usr/local/texlive/2023/texmf-dist/tex/latex/listings/listings.cfg +File: listings.cfg 2023/02/27 1.9 listings configuration +)) +Package: listings 2023/02/27 1.9 (Carsten Heinz) + +(/usr/local/texlive/2023/texmf-dist/tex/latex/tikz-cd/tikz-cd.sty +Package: tikz-cd 2021/05/04 v1.0 Commutative diagrams with TikZ + +(/usr/local/texlive/2023/texmf-dist/tex/generic/tikz-cd/tikzlibrarycd.code.tex +(/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/frontendlayer/tikz/librarie +s/tikzlibrarymatrix.code.tex +File: tikzlibrarymatrix.code.tex 2023-01-15 v3.1.10 (3.1.10) +) +(/usr/local/texlive/2023/texmf-dist/tex/generic/pgf/frontendlayer/tikz/librarie +s/tikzlibraryquotes.code.tex +File: tikzlibraryquotes.code.tex 2023-01-15 v3.1.10 (3.1.10) +))) +\c@theorem=\count351 +\c@corollary=\count352 + (./main.aux (./Introduction.aux) +(./Brownian_motion_monte_carlo.aux + +LaTeX Warning: Label `lem:1.21' multiply defined. + + +LaTeX Warning: Label `lem:1.21@cref' multiply defined. + +) (./u_visc_sol.aux + +LaTeX Warning: Label `limitofun' multiply defined. + + +LaTeX Warning: Label `limitofun@cref' multiply defined. + + +LaTeX Warning: Label `hessungeq0' multiply defined. + + +LaTeX Warning: Label `hessungeq0@cref' multiply defined. + +) (./brownian_motion_monte_carlo_non_linear_case.aux + +LaTeX Warning: Label `(1.12)' multiply defined. + + +LaTeX Warning: Label `(1.12)@cref' multiply defined. + + +LaTeX Warning: Label `(1.12)' multiply defined. + + +LaTeX Warning: Label `(1.12)@cref' multiply defined. + +) (./neural_network_introduction.aux + +LaTeX Warning: Label `5.2.1' multiply defined. + + +LaTeX Warning: Label `5.2.1@cref' multiply defined. + + +LaTeX Warning: Label `5.3.2' multiply defined. + + +LaTeX Warning: Label `5.3.2@cref' multiply defined. + + +LaTeX Warning: Label `5.4.3' multiply defined. + + +LaTeX Warning: Label `5.4.3@cref' multiply defined. + + +LaTeX Warning: Label `5.4.12' multiply defined. + + +LaTeX Warning: Label `5.4.12@cref' multiply defined. + + +LaTeX Warning: Label `5.5.20' multiply defined. + + +LaTeX Warning: Label `5.5.20@cref' multiply defined. + +) (./ann_product.aux + +LaTeX Warning: Label `6.0.25' multiply defined. + + +LaTeX Warning: Label `6.0.25@cref' multiply defined. + +) (./modified_mlp_associated_nn.aux) (./categorical_neural_network.aux) + +LaTeX Warning: Label `6.0.3' multiply defined. + + +LaTeX Warning: Label `6.0.3@cref' multiply defined. + +(./ann_rep_brownian_motion_monte_carlo.aux) + +LaTeX Warning: Label `pythoncode' multiply defined. + + +LaTeX Warning: Label `pythoncode@cref' multiply defined. + +) +\openout1 = `main.aux'. + +LaTeX Font Info: Checking defaults for OML/cmm/m/it on input line 141. +LaTeX Font Info: ... okay on input line 141. +LaTeX Font Info: Checking defaults for OMS/cmsy/m/n on input line 141. +LaTeX Font Info: ... okay on input line 141. +LaTeX Font Info: Checking defaults for OT1/cmr/m/n on input line 141. +LaTeX Font Info: ... okay on input line 141. +LaTeX Font Info: Checking defaults for T1/cmr/m/n on input line 141. +LaTeX Font Info: ... okay on input line 141. +LaTeX Font Info: Checking defaults for TS1/cmr/m/n on input line 141. +LaTeX Font Info: ... okay on input line 141. +LaTeX Font Info: Checking defaults for OMX/cmex/m/n on input line 141. +LaTeX Font Info: ... okay on input line 141. +LaTeX Font Info: Checking defaults for U/cmr/m/n on input line 141. +LaTeX Font Info: ... okay on input line 141. +LaTeX Font Info: Checking defaults for PD1/pdf/m/n on input line 141. +LaTeX Font Info: ... okay on input line 141. +LaTeX Font Info: Checking defaults for PU/pdf/m/n on input line 141. +LaTeX Font Info: ... okay on input line 141. + (/usr/local/texlive/2023/texmf-dist/tex/context/base/mkii/supp-pdf.mkii +[Loading MPS to PDF converter (version 2006.09.02).] +\scratchcounter=\count353 +\scratchdimen=\dimen321 +\scratchbox=\box92 +\nofMPsegments=\count354 +\nofMParguments=\count355 +\everyMPshowfont=\toks54 +\MPscratchCnt=\count356 +\MPscratchDim=\dimen322 +\MPnumerator=\count357 +\makeMPintoPDFobject=\count358 +\everyMPtoPDFconversion=\toks55 +) (/usr/local/texlive/2023/texmf-dist/tex/latex/epstopdf-pkg/epstopdf-base.sty +Package: epstopdf-base 2020-01-24 v2.11 Base part for package epstopdf +Package epstopdf-base Info: Redefining graphics rule for `.eps' on input line 4 +85. + +(/usr/local/texlive/2023/texmf-dist/tex/latex/latexconfig/epstopdf-sys.cfg +File: epstopdf-sys.cfg 2010/07/13 v1.3 Configuration of (r)epstopdf for TeX Liv +e +)) +(/usr/local/texlive/2023/texmf-dist/tex/latex/pdflscape/pdflscape.sty +Package: pdflscape 2022-10-27 v0.13 Display of landscape pages in PDF + +(/usr/local/texlive/2023/texmf-dist/tex/latex/pdflscape/pdflscape-nometadata.st +y +Package: pdflscape-nometadata 2022-10-28 v0.13 Display of landscape pages in PD +F (HO) + (/usr/local/texlive/2023/texmf-dist/tex/latex/graphics/lscape.sty +Package: lscape 2020/05/28 v3.02 Landscape Pages (DPC) +) +Package pdflscape Info: Auto-detected driver: pdftex on input line 81. +)) +*geometry* driver: auto-detecting +*geometry* detected driver: pdftex +*geometry* verbose mode - [ preamble ] result: +* driver: pdftex +* paper: +* layout: +* layoutoffset:(h,v)=(0.0pt,0.0pt) +* modes: +* h-part:(L,W,R)=(72.26999pt, 469.75502pt, 72.26999pt) +* v-part:(T,H,B)=(72.26999pt, 650.43001pt, 72.26999pt) +* \paperwidth=614.295pt +* \paperheight=794.96999pt +* \textwidth=469.75502pt +* \textheight=650.43001pt +* \oddsidemargin=0.0pt +* \evensidemargin=0.0pt +* \topmargin=-37.0pt +* \headheight=12.0pt +* \headsep=25.0pt +* \topskip=11.0pt +* \footskip=30.0pt +* \marginparwidth=59.0pt +* \marginparsep=10.0pt +* \columnsep=10.0pt +* \skip\footins=10.0pt plus 4.0pt minus 2.0pt +* \hoffset=0.0pt +* \voffset=0.0pt +* \mag=1000 +* \@twocolumnfalse +* \@twosidefalse +* \@mparswitchfalse +* \@reversemarginfalse +* (1in=72.27pt=25.4mm, 1cm=28.453pt) + +Package hyperref Info: Link coloring OFF on input line 141. +(./main.out) (./main.out) +\@outlinefile=\write4 +\openout4 = `main.out'. + +\c@lstlisting=\count359 +LaTeX Font Info: Trying to load font information for U+msa on input line 143 +. + +(/usr/local/texlive/2023/texmf-dist/tex/latex/amsfonts/umsa.fd +File: umsa.fd 2013/01/14 v3.01 AMS symbols A +) +LaTeX Font Info: Trying to load font information for U+msb on input line 143 +. + +(/usr/local/texlive/2023/texmf-dist/tex/latex/amsfonts/umsb.fd +File: umsb.fd 2013/01/14 v3.01 AMS symbols B +) +LaTeX Font Info: Trying to load font information for U+rsfs on input line 14 +3. + +(/usr/local/texlive/2023/texmf-dist/tex/latex/jknapltx/ursfs.fd +File: ursfs.fd 1998/03/24 rsfs font definition file (jk) +) +LaTeX Font Info: Trying to load font information for U+stmry on input line 1 +43. + +(/usr/local/texlive/2023/texmf-dist/tex/latex/stmaryrd/Ustmry.fd) [1 + +{/usr/local/texlive/2023/texmf-var/fonts/map/pdftex/updmap/pdftex.map}] (./main +.toc +pdfTeX warning (ext4): destination with the same identifier (name{page.1}) has +been already used, duplicate ignored + + \relax +l.21 ...ions about Neural Networks}{62}{chapter.5} + % [1 + +] [2]) +\tf@toc=\write5 +\openout5 = `main.toc'. + + [3] [4 + +] +\openout2 = `Introduction.aux'. + + +(./Introduction.tex +Chapter 1. +[5 + + +] [6] [7] +Overfull \hbox (12.0844pt too wide) in paragraph at lines 104--105 +[]\OT1/cmr/m/it/10.95 A strong so-lu-tion to the stochas-tic dif-fer-en-tial eq +ua-tion ([]1.1.8[]) on prob-a-bil-ity space $\OT1/cmr/m/n/10.95 ( +\OML/cmm/m/it/10.95 ; \OMS/cmsy/m/n/10.95 F\OML/cmm/m/it/10.95 ; \U/msb/m/n/10. +95 P\OML/cmm/m/it/10.95 ; \OT1/cmr/m/n/10.95 (\U/msb/m/n/10.95 F[]\OT1/cmr/m/n/ +10.95 )[])$\OT1/cmr/m/it/10.95 , + [] + +[8] +LaTeX Font Info: Trying to load font information for U+euf on input line 140 +. + (/usr/local/texlive/2023/texmf-dist/tex/latex/amsfonts/ueuf.fd +File: ueuf.fd 2013/01/14 v3.01 Euler Fraktur +) [9] +[10] [11] +LaTeX Font Info: Trying to load font information for U+BOONDOX-ds on input l +ine 218. + (/usr/local/texlive/2023/texmf-dist/tex/latex/boondox/uboondox-ds.fd +File: uboondox-ds.fd 2011/04/26 Fontinst v1.933 font definitions for U/BOONDOX- +ds. +) [12] + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `math shift' on input line 267. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `math shift' on input line 267. + +[13] [14]) [15] +\openout2 = `Brownian_motion_monte_carlo.aux'. + + (./Brownian_motion_monte_carlo.tex +Chapter 2. +[16 + + + + +] [17] [18] + +LaTeX Warning: Reference `(1.16)' on page 19 undefined on input line 132. + +[19] [20] [21] [22] [23] [24] [25] [26] [27] [28]) [29] +\openout2 = `u_visc_sol.aux'. + + (./u_visc_sol.tex +Chapter 3. + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `math shift' on input line 1. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `math shift' on input line 1. + +[30 + + + + +] +LaTeX Font Info: Trying to load font information for U+bbm on input line 83. + + (/usr/local/texlive/2023/texmf-dist/tex/latex/bbm-macros/ubbm.fd +File: ubbm.fd 1999/03/15 V 1.2 Font definition for bbm font - TH +) [31] +[32] [33] [34] [35] + +LaTeX Warning: Reference `bigsum' on page 36 undefined on input line 209. + +[36] [37] [38] [39] +Overfull \hbox (0.39136pt too wide) in paragraph at lines 465--468 +[]\OT1/cmr/m/n/10.95 However note also that since $\OML/cmm/m/it/10.95 G[]$ \OT +1/cmr/m/n/10.95 is up-per semi-continuous, fur-ther the fact that, $\OML/cmm/m/ +it/10.95 ^^^[] \OMS/cmsy/m/n/10.95 2 []$\OT1/cmr/m/n/10.95 , + [] + + +Overfull \hbox (81.7409pt too wide) in paragraph at lines 465--468 +\OT1/cmr/m/n/10.95 and then $([]3\OML/cmm/m/it/10.95 :\OT1/cmr/m/n/10.95 2\OML/ +cmm/m/it/10.95 :\OT1/cmr/m/n/10.95 27[])$, and $([]3\OML/cmm/m/it/10.95 :\OT1/c +mr/m/n/10.95 2\OML/cmm/m/it/10.95 :\OT1/cmr/m/n/10.95 16[])$, im-ply for all $\ +OML/cmm/m/it/10.95 " \OMS/cmsy/m/n/10.95 2 \OT1/cmr/m/n/10.95 (0\OML/cmm/m/it/1 +0.95 ; \OMS/cmsy/m/n/10.95 1\OT1/cmr/m/n/10.95 )$ we have that: $[][] [] = + [] + +[40] [41] [42] [43] [44] [45] [46] [47] [48] +Overfull \hbox (86.18391pt too wide) in paragraph at lines 743--744 +\OT1/cmr/m/it/10.95 ery $\OML/cmm/m/it/10.95 r \OMS/cmsy/m/n/10.95 2 \OT1/cmr/m +/n/10.95 (0\OML/cmm/m/it/10.95 ; \OMS/cmsy/m/n/10.95 1\OT1/cmr/m/n/10.95 )$ \OT +1/cmr/m/it/10.95 sat-isfy the con-di-tion that $\OML/cmm/m/it/10.95 O[] \OMS/cm +sy/m/n/10.95 ^^R O$\OT1/cmr/m/it/10.95 , where $\OML/cmm/m/it/10.95 O[] \OT1/cm +r/m/n/10.95 = \OMS/cmsy/m/n/10.95 f\OML/cmm/m/it/10.95 x \OMS/cmsy/m/n/10.95 2 +O \OT1/cmr/m/n/10.95 : []\OMS/cmsy/m/n/10.95 g$ + [] + +[49] [50] [51] [52] [53] +Overfull \hbox (2.98135pt too wide) in paragraph at lines 894--895 +[]\OT1/cmr/bx/n/10.95 Corollary 3.3.1.1. []\OT1/cmr/m/it/10.95 Let $\OML/cmm/m/ +it/10.95 T \OMS/cmsy/m/n/10.95 2 \OT1/cmr/m/n/10.95 (0\OML/cmm/m/it/10.95 ; \OM +S/cmsy/m/n/10.95 1\OT1/cmr/m/n/10.95 )$\OT1/cmr/m/it/10.95 , let $[]$ be a prob +-a-bil-ity space, let $\OML/cmm/m/it/10.95 u[] \OMS/cmsy/m/n/10.95 2 \OML/cmm/m +/it/10.95 C[] []$\OT1/cmr/m/it/10.95 , + [] + +[54] [55] [56] [57]) [58] +\openout2 = `brownian_motion_monte_carlo_non_linear_case.aux'. + + (./brownian_motion_monte_carlo_non_linear_case.tex +Chapter 4. + +LaTeX Warning: Reference `3.3.21' on page 59 undefined on input line 3. + +[59 + + + + +]) [60] [61 + + + +] +\openout2 = `neural_network_introduction.aux'. + + (./neural_network_introduction.tex +Chapter 5. +[62 + + +] [63] [64] +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +\c@nn@layerindex@counter=\count360 +\c@nn@lastlayerstart@counter=\count361 +\c@nn@thislayerstart@counter=\count362 +\c@nn@lastlayercount@counter=\count363 +\c@nn@thislayercount@counter=\count364 +\c@nn@lastlayerindex@counter=\count365 +\c@nn@thislayerindex@counter=\count366 +Missing character: There is no t in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no p in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no p in font nullfont! +Missing character: There is no r in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no w in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no p in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no p in font nullfont! +Missing character: There is no r in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no w in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no p in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no p in font nullfont! +Missing character: There is no r in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no w in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +[65] + +LaTeX Warning: Command \l invalid in math mode on input line 124. + + +LaTeX Warning: Command \l invalid in math mode on input line 124. + + +Overfull \hbox (31.40407pt too wide) in paragraph at lines 131--132 +[] \OMS/cmsy/m/n/10.95 2 []$\OT1/cmr/m/it/10.95 , and $\OML/cmm/m/it/10.95 ^^W[ +] \OT1/cmr/m/n/10.95 = [] \OMS/cmsy/m/n/10.95 2 + [] + + +Overfull \hbox (11.64755pt too wide) detected at line 139 +[] + [] + +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no p in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no p in font nullfont! +Missing character: There is no r in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no w in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no p in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no p in font nullfont! +Missing character: There is no r in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no w in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no p in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no p in font nullfont! +Missing character: There is no r in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no w in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no p in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no p in font nullfont! +Missing character: There is no r in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no w in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no p in font nullfont! +Missing character: There is no t in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no p in font nullfont! +Missing character: There is no r in font nullfont! +Missing character: There is no o in font nullfont! +Missing character: There is no w in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +Missing character: There is no ; in font nullfont! +[66] [67] [68] [69] +Overfull \hbox (11.88725pt too wide) in paragraph at lines 300--301 +[]\OT1/cmr/m/n/10.95 Since it is the case that for all $\OML/cmm/m/it/10.95 j \ +OMS/cmsy/m/n/10.95 2 f\OT1/cmr/m/n/10.95 1\OML/cmm/m/it/10.95 ; \OT1/cmr/m/n/10 +.95 2\OML/cmm/m/it/10.95 ; :::; n\OMS/cmsy/m/n/10.95 g$ \OT1/cmr/m/n/10.95 that +: $[] [] = []$, where $\OML/cmm/m/it/10.95 l[]; l[]; :::; l[]; L \OMS/cmsy/m/n/ +10.95 2 + [] + +[70] +Overfull \hbox (15.23279pt too wide) in paragraph at lines 320--321 +[]$\OT1/cmr/m/n/10.95 . Fur-ther-more let $[] \OMS/cmsy/m/n/10.95 2 []$ + [] + + +Overfull \hbox (3.52759pt too wide) in paragraph at lines 327--329 +\OT1/cmr/m/n/10.95 See Re-mark 5.3.2. Let $\OML/cmm/m/it/10.95 x[]; x[]; :::; x +[] \OMS/cmsy/m/n/10.95 2 []$ \OT1/cmr/m/n/10.95 sat-isfy for all $\OML/cmm/m/it +/10.95 i \OMS/cmsy/m/n/10.95 2 f\OT1/cmr/m/n/10.95 1\OML/cmm/m/it/10.95 ; \OT1/ +cmr/m/n/10.95 2\OML/cmm/m/it/10.95 ; :::; n\OMS/cmsy/m/n/10.95 g$ + [] + +[71] [72] [73] +Overfull \hbox (20.19258pt too wide) detected at line 410 +[] + [] + +[74] [75] [76] [77] + +LaTeX Warning: Reference `5.4.4' on page 78 undefined on input line 546. + + +LaTeX Warning: Reference `5.4.5' on page 78 undefined on input line 546. + + +LaTeX Warning: Reference `5.4.4' on page 78 undefined on input line 559. + + +LaTeX Warning: Reference `5.4.5' on page 78 undefined on input line 610. + + +Overfull \hbox (24.45033pt too wide) detected at line 657 +[] + [] + +[78] [79] [80] [81] [82] [83] + +LaTeX Warning: Command \l invalid in math mode on input line 914. + +[84] [85] [86] [87] [88] + +LaTeX Warning: Reference `5.5.14' on page 89 undefined on input line 1095. + +[89] [90] [91] [92] [93]) [94] +\openout2 = `ann_product.aux'. + + (./ann_product.tex +Chapter 6. +[95 + + + + +] [96] [97] [98] [99] +Overfull \hbox (13.65341pt too wide) detected at line 188 +[] + [] + +[100] [101] +Overfull \hbox (7.17166pt too wide) in paragraph at lines 226--228 +\OT1/cmr/m/n/10.95 This and the as-sump-tion that $^^H \OMS/cmsy/m/n/10.95 2 \O +ML/cmm/m/it/10.95 C []$ \OT1/cmr/m/n/10.95 along with the as-sump-tion that $[] +[] \OMS/cmsy/m/n/10.95 j [] [] ^^@ + [] + + +Overfull \hbox (17.15163pt too wide) in paragraph at lines 237--239 +\OT1/cmr/m/n/10.95 The as-sump-tion that for all $[][] \OMS/cmsy/m/n/10.95 j [] + [] ^^@ [] [] j \OT1/cmr/m/n/10.95 = 0$ and the as-sump-tion that $[][] \OMS/cm +sy/m/n/10.95 j\OML/cmm/m/it/10.95 x[] \OMS/cmsy/m/n/10.95 ^^@ + [] + +[102] [103] [104] + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `math shift' on input line 317. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathop' on input line 317. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 317. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 317. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 317. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathchardef' on input line 317. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\std@minus' on input line 317. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 317. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 317. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 317. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 317. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\leavevmode@ifvmode' on input line 317. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) \kern 2.43307pt +(hyperref) removed on input line 317. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathgroup' on input line 317. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\symoperators' on input line 317. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\@ifnextchar' on input line 317. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `math shift' on input line 317. + +[105] [106] [107] [108] [109] [110] + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `math shift' on input line 500. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathop' on input line 500. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 500. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 500. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 500. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathchardef' on input line 500. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\std@minus' on input line 500. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 500. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 500. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 500. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 500. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\leavevmode@ifvmode' on input line 500. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) \kern 2.43307pt +(hyperref) removed on input line 500. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathgroup' on input line 500. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\symoperators' on input line 500. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\@ifnextchar' on input line 500. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `math shift' on input line 500. + +[111] [112] [113] + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `math shift' on input line 636. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathop' on input line 636. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 636. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 636. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 636. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathchardef' on input line 636. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\std@minus' on input line 636. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 636. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 636. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 636. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 636. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\leavevmode@ifvmode' on input line 636. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) \kern 2.43307pt +(hyperref) removed on input line 636. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathgroup' on input line 636. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\symoperators' on input line 636. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\@ifnextchar' on input line 636. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `math shift' on input line 636. + +[114] +Underfull \hbox (badness 10000) in paragraph at lines 700--706 + + [] + +[115] +Underfull \hbox (badness 10000) in paragraph at lines 709--714 + + [] + +[116] [117] [118] [119] [120] [121] [122] +Overfull \hbox (7.31064pt too wide) in paragraph at lines 911--913 +\OT1/cmr/m/n/10.95 Note that since $\U/euf/m/n/10.95 p[] \OMS/cmsy/m/n/10.95 2 +O []$ \OT1/cmr/m/n/10.95 for $\OML/cmm/m/it/10.95 n \U/msa/m/n/10.95 > \OT1/cmr +/m/n/10.95 2$, it is the case for all $\OML/cmm/m/it/10.95 x \OMS/cmsy/m/n/10.9 +5 2 \U/msb/m/n/10.95 R$ \OT1/cmr/m/n/10.95 then that $[] \OMS/cmsy/m/n/10.95 2 + [] + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `math shift' on input line 915. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathop' on input line 915. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 915. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 915. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 915. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathchardef' on input line 915. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\std@minus' on input line 915. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 915. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 915. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 915. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 915. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\leavevmode@ifvmode' on input line 915. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) \kern 2.43307pt +(hyperref) removed on input line 915. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathgroup' on input line 915. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\symoperators' on input line 915. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\@ifnextchar' on input line 915. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `math shift' on input line 915. + +[123] [124] +Overfull \hbox (34.92166pt too wide) in paragraph at lines 961--966 +[]$[] [] \U/msa/m/n/10.95 6 []$ + [] + + +Underfull \hbox (badness 10000) in paragraph at lines 961--966 + + [] + + +Underfull \hbox (badness 10000) in paragraph at lines 969--971 + + [] + +[125] +Overfull \hbox (7.30336pt too wide) detected at line 1009 +[] + [] + +[126] + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `math shift' on input line 1042. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `superscript' on input line 1042. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `math shift' on input line 1042. + +[127]) [128] +\openout2 = `modified_mlp_associated_nn.aux'. + + (./modified_mlp_associated_nn.tex +Chapter 7. +[129 + + + + +] [130] +Overfull \hbox (29.14606pt too wide) in paragraph at lines 54--55 +[]\OT1/cmr/m/it/10.95 that for all $\OML/cmm/m/it/10.95 ^^R \OMS/cmsy/m/n/10.95 + 2 \OT1/cmr/m/n/10.95 ^^B$\OT1/cmr/m/it/10.95 , $\OML/cmm/m/it/10.95 n \OMS/cms +y/m/n/10.95 2 \U/msb/m/n/10.95 N[]$\OT1/cmr/m/it/10.95 , $\OML/cmm/m/it/10.95 t + \OMS/cmsy/m/n/10.95 2 []$\OT1/cmr/m/it/10.95 , that $[][] \U/msa/m/n/10.95 6 [ +][] [] []$ + [] + +) [131] +\openout2 = `categorical_neural_network.aux'. + + (./categorical_neural_network.tex +Chapter 8. +) [132 + + + + +] +Chapter 9. + +Overfull \hbox (5.90657pt too wide) in paragraph at lines 169--170 +[]\OT1/cmr/bx/n/10.95 Definition 9.1.1 \OT1/cmr/m/n/10.95 (Ac-ti-va-tion ANN)\O +T1/cmr/bx/n/10.95 . []\OT1/cmr/m/it/10.95 Let $\OML/cmm/m/it/10.95 n \OMS/cmsy/ +m/n/10.95 2 \U/msb/m/n/10.95 N$\OT1/cmr/m/it/10.95 . We de-note by $\U/euf/m/n/ +10.95 i[] \OMS/cmsy/m/n/10.95 2 [] ^^R + [] + +[133 + + + +] [134] [135] +Overfull \hbox (4.2524pt too wide) in paragraph at lines 263--264 +[]\OT1/cmr/bx/n/10.95 Lemma 9.2.3. []\OT1/cmr/m/it/10.95 Let $\OML/cmm/m/it/10. +95 ^^W \OMS/cmsy/m/n/10.95 2 []$ \OT1/cmr/m/it/10.95 with end-widths $\OML/cmm/ +m/it/10.95 d$\OT1/cmr/m/it/10.95 . It is then the case that $[][] [] [] \OT1/cm +r/m/n/10.95 = [][] [] = + [] + +[136] +Overfull \hbox (2.78886pt too wide) detected at line 337 +[] + [] + +[137] +Overfull \hbox (3.18243pt too wide) detected at line 411 +[] + [] + +[138] [139] +Overfull \hbox (7.72708pt too wide) detected at line 517 +[] + [] + +[140] [141] [142] [143] + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `math shift' on input line 628. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathop' on input line 628. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 628. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 628. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 628. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathchardef' on input line 628. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\std@minus' on input line 628. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 628. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 628. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 628. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 628. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\leavevmode@ifvmode' on input line 628. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) \kern 2.43307pt +(hyperref) removed on input line 628. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathgroup' on input line 628. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\symoperators' on input line 628. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\@ifnextchar' on input line 628. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `math shift' on input line 628. + +[144] +Overfull \hbox (32.59174pt too wide) in paragraph at lines 670--672 +[]\OT1/cmr/m/n/10.95 9.4.4[] then tells us that for all $\OML/cmm/m/it/10.95 i +\OMS/cmsy/m/n/10.95 2 f\OT1/cmr/m/n/10.95 0\OML/cmm/m/it/10.95 ; \OT1/cmr/m/n/1 +0.95 1\OML/cmm/m/it/10.95 ; \OT1/cmr/m/n/10.95 2\OML/cmm/m/it/10.95 ; :::; N\OM +S/cmsy/m/n/10.95 g$\OT1/cmr/m/n/10.95 , $[] [] = []$, $[][] [] \OMS/cmsy/m/n/10 +.95 2 + [] + +[145] [146] [147] [148] +Overfull \hbox (15.04857pt too wide) detected at line 761 +[] + [] + +[149] +Overfull \hbox (14.36722pt too wide) in paragraph at lines 797--798 +[]\OT1/cmr/bx/n/10.95 Corollary 9.5.2.1. []\OT1/cmr/m/it/10.95 Let $\OML/cmm/m/ +it/10.95 " \OMS/cmsy/m/n/10.95 2 \OT1/cmr/m/n/10.95 (0\OML/cmm/m/it/10.95 ; \OM +S/cmsy/m/n/10.95 1\OT1/cmr/m/n/10.95 )$\OT1/cmr/m/it/10.95 , $\OML/cmm/m/it/10. +95 L; a \OMS/cmsy/m/n/10.95 2 \U/msb/m/n/10.95 R$\OT1/cmr/m/it/10.95 , $\OML/cm +m/m/it/10.95 b \OMS/cmsy/m/n/10.95 2 []$\OT1/cmr/m/it/10.95 , $\OML/cmm/m/it/10 +.95 N \OMS/cmsy/m/n/10.95 2 \U/msb/m/n/10.95 N[] \OMS/cmsy/m/n/10.95 \ []$\OT1/ +cmr/m/it/10.95 , $\OML/cmm/m/it/10.95 x[]; x[]; :::; x[] \OMS/cmsy/m/n/10.95 2 + [] + +[150] + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `math shift' on input line 817. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathop' on input line 817. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 817. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 817. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 817. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathchardef' on input line 817. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\std@minus' on input line 817. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 817. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 817. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 817. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 817. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\leavevmode@ifvmode' on input line 817. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) \kern 2.43307pt +(hyperref) removed on input line 817. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathgroup' on input line 817. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\symoperators' on input line 817. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\@ifnextchar' on input line 817. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `superscript' on input line 817. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `math shift' on input line 817. + +[151] [152] [153] + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `math shift' on input line 908. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathop' on input line 908. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 908. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 908. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 908. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathchardef' on input line 908. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\std@minus' on input line 908. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 908. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 908. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 908. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 908. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\leavevmode@ifvmode' on input line 908. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) \kern 2.43307pt +(hyperref) removed on input line 908. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathgroup' on input line 908. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\symoperators' on input line 908. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\@ifnextchar' on input line 908. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `superscript' on input line 908. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `subscript' on input line 908. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `math shift' on input line 908. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `math shift' on input line 908. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathop' on input line 908. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 908. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 908. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 908. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathchardef' on input line 908. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\std@minus' on input line 908. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 908. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 908. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 908. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 908. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\leavevmode@ifvmode' on input line 908. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) \kern 2.43307pt +(hyperref) removed on input line 908. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathgroup' on input line 908. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\symoperators' on input line 908. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\@ifnextchar' on input line 908. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `superscript' on input line 908. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `math shift' on input line 908. + +[154] +Overfull \hbox (0.97372pt too wide) in paragraph at lines 953--955 +\OT1/cmr/m/n/10.95 lay-ers re-mains un-changed un-der par-al-leliza-tion it is +then the case that $[] [] = [] [] = + [] + +[155] [156] [157] [158] [159] + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `math shift' on input line 1116. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathop' on input line 1116. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 1116. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 1116. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 1116. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathchardef' on input line 1116. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\std@minus' on input line 1116. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 1116. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 1116. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 1116. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathcode' on input line 1116. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\leavevmode@ifvmode' on input line 1116. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) \kern 2.43307pt +(hyperref) removed on input line 1116. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\mathgroup' on input line 1116. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\symoperators' on input line 1116. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `\@ifnextchar' on input line 1116. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `superscript' on input line 1116. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `math shift' on input line 1116. + +[160] [161] [162] [163] [164] [165] [166] +Overfull \hbox (19.2441pt too wide) in paragraph at lines 1302--1303 +\OT1/cmr/m/it/10.95 for all $\OML/cmm/m/it/10.95 x[]; y[] \OMS/cmsy/m/n/10.95 2 + \OML/cmm/m/it/10.95 E$ \OT1/cmr/m/it/10.95 that $[] \U/msa/m/n/10.95 6 \OML/cm +m/m/it/10.95 L [][]$ \OT1/cmr/m/it/10.95 and let $[] \OMS/cmsy/m/n/10.95 2 []$ +\OT1/cmr/m/it/10.95 and $\OML/cmm/m/it/10.95 y \OT1/cmr/m/n/10.95 = []$ + [] + +[167] [168] + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `math shift' on input line 1341. + + +Package hyperref Warning: Token not allowed in a PDF string (Unicode): +(hyperref) removing `math shift' on input line 1341. + +[169 + +] +\openout2 = `ann_rep_brownian_motion_monte_carlo.aux'. + + (./ann_rep_brownian_motion_monte_carlo.tex +Chapter 10. +[170 + + +] [171] [172] +Overfull \hbox (15.57579pt too wide) in paragraph at lines 95--101 +[]$[] [] \U/msa/m/n/10.95 6 []$ + [] + +[173] [174] [175] [176]) [177] (./main.bbl [178 + + + +]) [179] [180 + + +] +(/usr/local/texlive/2023/texmf-dist/tex/latex/listings/lstlang1.sty +File: lstlang1.sty 2023/02/27 1.9 listings language file +) +Package hyperref Info: bookmark level for unknown lstlisting defaults to 0 on i +nput line 1353. + +File: Initial_Brownian_Motion.png Graphic file (type png) + +Package pdftex.def Info: Initial_Brownian_Motion.png used on input line 1375. +(pdftex.def) Requested size: 461.72388pt x 450.68263pt. + [181] +[182 <./Initial_Brownian_Motion.png>] +LaTeX Font Info: Trying to load font information for TS1+cmtt on input line +1411. + +(/usr/local/texlive/2023/texmf-dist/tex/latex/base/ts1cmtt.fd +File: ts1cmtt.fd 2022/07/10 v2.5l Standard LaTeX font definitions +) [183{/usr/local/texlive/2023/texmf-dist/fonts/enc/dvips/cm-super/cm-super-ts1 +.enc}] + +File: sharkteeth.png Graphic file (type png) + +Package pdftex.def Info: sharkteeth.png used on input line 1416. +(pdftex.def) Requested size: 505.5274pt x 169.11139pt. + +Overfull \hbox (35.77238pt too wide) in paragraph at lines 1416--1418 +[][] + [] + + +Underfull \hbox (badness 10000) in paragraph at lines 1416--1418 + + [] + +[184 <./sharkteeth.png>] (./main.aux (./Introduction.aux) +(./Brownian_motion_monte_carlo.aux) (./u_visc_sol.aux) +(./brownian_motion_monte_carlo_non_linear_case.aux) +(./neural_network_introduction.aux) (./ann_product.aux) +(./modified_mlp_associated_nn.aux) (./categorical_neural_network.aux) +(./ann_rep_brownian_motion_monte_carlo.aux)) + +LaTeX Warning: There were undefined references. + + +LaTeX Warning: There were multiply-defined labels. + +Package rerunfilecheck Info: File `main.out' has not changed. +(rerunfilecheck) Checksum: 966BEF3E4E950BBA4D809EE637146306;14811. + ) +Here is how much of TeX's memory you used: + 34475 strings out of 476025 + 670396 string characters out of 5790018 + 2120388 words of memory out of 5000000 + 52896 multiletter control sequences out of 15000+600000 + 548725 words of font info for 186 fonts, out of 8000000 for 9000 + 1141 hyphenation exceptions out of 8191 + 99i,25n,97p,1071b,1622s stack positions out of 10000i,1000n,20000p,200000b,200000s + < +/usr/local/texlive/2023/texmf-dist/fonts/type1/public/amsfonts/cm/cmr8.pfb>< +/usr/local/texlive/2023/texmf-dist/fonts/type1/public/rsfs/rsfs10.pfb> +Output written on main.pdf (185 pages, 1048897 bytes). +PDF statistics: + 3296 PDF objects out of 3580 (max. 8388607) + 3005 compressed objects within 31 object streams + 1357 named destinations out of 1440 (max. 500000) + 487 words of extra memory for PDF output out of 10000 (max. 10000000) + diff --git a/Dissertation_unzipped/main.out b/Dissertation_unzipped/main.out new file mode 100644 index 0000000..ceb78eb --- /dev/null +++ b/Dissertation_unzipped/main.out @@ -0,0 +1,58 @@ +\BOOKMARK [-1][-]{part.1}{\376\377\000I\000\040\000O\000n\000\040\000C\000o\000n\000v\000e\000r\000g\000e\000n\000c\000e\000\040\000o\000f\000\040\000B\000r\000o\000w\000n\000i\000a\000n\000\040\000M\000o\000t\000i\000o\000n\000\040\000M\000o\000n\000t\000e\000\040\000C\000a\000r\000l\000o}{}% 1 +\BOOKMARK [0][-]{chapter.1}{\376\377\000I\000n\000t\000r\000o\000d\000u\000c\000t\000i\000o\000n\000.}{part.1}% 2 +\BOOKMARK [1][-]{section.1.1}{\376\377\000N\000o\000t\000a\000t\000i\000o\000n\000,\000\040\000D\000e\000f\000i\000n\000i\000t\000i\000o\000n\000s\000\040\000\046\000\040\000B\000a\000s\000i\000c\000\040\000n\000o\000t\000i\000o\000n\000s\000.}{chapter.1}% 3 +\BOOKMARK [2][-]{subsection.1.1.1}{\376\377\000N\000o\000r\000m\000s\000\040\000a\000n\000d\000\040\000I\000n\000n\000e\000r\000\040\000P\000r\000o\000d\000u\000c\000t}{section.1.1}% 4 +\BOOKMARK [2][-]{subsection.1.1.2}{\376\377\000P\000r\000o\000b\000a\000b\000i\000l\000i\000t\000y\000\040\000S\000p\000a\000c\000e\000\040\000a\000n\000d\000\040\000B\000r\000o\000w\000n\000i\000a\000n\000\040\000M\000o\000t\000i\000o\000n}{section.1.1}% 5 +\BOOKMARK [2][-]{subsection.1.1.3}{\376\377\000L\000i\000p\000s\000c\000h\000i\000t\000z\000\040\000a\000n\000d\000\040\000R\000e\000l\000a\000t\000e\000d\000\040\000N\000o\000t\000i\000o\000n\000s}{section.1.1}% 6 +\BOOKMARK [2][-]{subsection.1.1.4}{\376\377\000K\000o\000l\000m\000o\000g\000o\000r\000o\000v\000\040\000E\000q\000u\000a\000t\000i\000o\000n\000s}{section.1.1}% 7 +\BOOKMARK [2][-]{subsection.1.1.5}{\376\377\000L\000i\000n\000e\000a\000r\000\040\000A\000l\000g\000e\000b\000r\000a\000\040\000N\000o\000t\000a\000t\000i\000o\000n\000\040\000a\000n\000d\000\040\000D\000e\000f\000i\000n\000i\000t\000i\000o\000n\000s}{section.1.1}% 8 +\BOOKMARK [2][-]{subsection.1.1.6}{\376\377\000O\000-\000t\000y\000p\000e\000\040\000n\000o\000t\000a\000t\000i\000o\000n\000\040\000a\000n\000d\000\040\000f\000u\000n\000c\000t\000i\000o\000n\000\040\000g\000r\000o\000w\000t\000h}{section.1.1}% 9 +\BOOKMARK [2][-]{subsection.1.1.7}{\376\377\000T\000h\000e\000\040\000I\000v\000e\000r\000s\000o\000n\000\040\000B\000r\000a\000c\000k\000e\000t}{section.1.1}% 10 +\BOOKMARK [0][-]{chapter.2}{\376\377\000B\000r\000o\000w\000n\000i\000a\000n\000\040\000M\000o\000t\000i\000o\000n\000\040\000M\000o\000n\000t\000e\000\040\000C\000a\000r\000l\000o}{part.1}% 11 +\BOOKMARK [1][-]{section.2.1}{\376\377\000B\000r\000o\000w\000n\000i\000a\000n\000\040\000M\000o\000t\000i\000o\000n\000\040\000P\000r\000e\000l\000i\000m\000i\000n\000a\000r\000i\000e\000s}{chapter.2}% 12 +\BOOKMARK [1][-]{section.2.2}{\376\377\000M\000o\000n\000t\000e\000\040\000C\000a\000r\000l\000o\000\040\000A\000p\000p\000r\000o\000x\000i\000m\000a\000t\000i\000o\000n\000s}{chapter.2}% 13 +\BOOKMARK [1][-]{section.2.3}{\376\377\000B\000o\000u\000n\000d\000s\000\040\000a\000n\000d\000\040\000C\000o\000v\000n\000v\000e\000r\000g\000e\000n\000c\000e}{chapter.2}% 14 +\BOOKMARK [0][-]{chapter.3}{\376\377\000T\000h\000a\000t\000\040\000u\000\040\000i\000s\000\040\000a\000\040\000v\000i\000s\000c\000o\000s\000i\000t\000y\000\040\000s\000o\000l\000u\000t\000i\000o\000n}{part.1}% 15 +\BOOKMARK [1][-]{section.3.1}{\376\377\000S\000o\000m\000e\000\040\000P\000r\000e\000l\000i\000m\000i\000n\000a\000r\000i\000e\000s}{chapter.3}% 16 +\BOOKMARK [1][-]{section.3.2}{\376\377\000V\000i\000s\000c\000o\000s\000i\000t\000y\000\040\000S\000o\000l\000u\000t\000i\000o\000n\000s}{chapter.3}% 17 +\BOOKMARK [1][-]{section.3.3}{\376\377\000S\000o\000l\000u\000t\000i\000o\000n\000s\000,\000\040\000c\000h\000a\000r\000a\000c\000t\000e\000r\000i\000z\000a\000t\000i\000o\000n\000,\000\040\000a\000n\000d\000\040\000c\000o\000m\000p\000u\000t\000a\000t\000i\000o\000n\000a\000l\000\040\000b\000o\000u\000n\000d\000s\000\040\000t\000o\000\040\000t\000h\000e\000\040\000K\000o\000l\000m\000o\000g\000o\000r\000o\000v\000\040\000b\000a\000c\000k\000w\000a\000r\000d\000\040\000e\000q\000u\000a\000t\000i\000o\000n\000s}{chapter.3}% 18 +\BOOKMARK [0][-]{chapter.4}{\376\377\000B\000r\000o\000w\000n\000i\000a\000n\000\040\000m\000o\000t\000i\000o\000n\000\040\000M\000o\000n\000t\000e\000\040\000C\000a\000r\000l\000o\000\040\000o\000f\000\040\000t\000h\000e\000\040\000n\000o\000n\000-\000l\000i\000n\000e\000a\000r\000\040\000c\000a\000s\000e}{part.1}% 19 +\BOOKMARK [-1][-]{part.2}{\376\377\000I\000I\000\040\000A\000\040\000S\000t\000r\000u\000c\000t\000u\000r\000a\000l\000\040\000D\000e\000s\000c\000r\000i\000p\000t\000i\000o\000n\000\040\000o\000f\000\040\000A\000r\000t\000i\000f\000i\000c\000i\000a\000l\000\040\000N\000e\000u\000r\000a\000l\000\040\000N\000e\000t\000w\000o\000r\000k\000s}{}% 20 +\BOOKMARK [0][-]{chapter.5}{\376\377\000I\000n\000t\000r\000o\000d\000u\000c\000t\000i\000o\000n\000\040\000a\000n\000d\000\040\000B\000a\000s\000i\000c\000\040\000N\000o\000t\000i\000o\000n\000s\000\040\000a\000b\000o\000u\000t\000\040\000N\000e\000u\000r\000a\000l\000\040\000N\000e\000t\000w\000o\000r\000k\000s}{part.2}% 21 +\BOOKMARK [1][-]{section.5.1}{\376\377\000T\000h\000e\000\040\000B\000a\000s\000i\000c\000\040\000D\000e\000f\000i\000n\000i\000t\000i\000o\000n\000\040\000o\000f\000\040\000A\000N\000N\000s}{chapter.5}% 22 +\BOOKMARK [1][-]{section.5.2}{\376\377\000C\000o\000m\000p\000o\000s\000i\000t\000i\000o\000n\000\040\000a\000n\000d\000\040\000e\000x\000t\000e\000n\000s\000i\000o\000n\000s\000\040\000o\000f\000\040\000A\000N\000N\000s}{chapter.5}% 23 +\BOOKMARK [2][-]{subsection.5.2.1}{\376\377\000C\000o\000m\000p\000o\000s\000i\000t\000i\000o\000n}{section.5.2}% 24 +\BOOKMARK [2][-]{subsection.5.2.2}{\376\377\000E\000x\000t\000e\000n\000s\000i\000o\000n\000s}{section.5.2}% 25 +\BOOKMARK [1][-]{section.5.3}{\376\377\000P\000a\000r\000a\000l\000l\000e\000l\000i\000z\000a\000t\000i\000o\000n\000\040\000o\000f\000\040\000A\000N\000N\000s}{chapter.5}% 26 +\BOOKMARK [1][-]{section.5.4}{\376\377\000A\000f\000f\000i\000n\000e\000\040\000L\000i\000n\000e\000a\000r\000\040\000T\000r\000a\000n\000s\000f\000o\000r\000m\000a\000t\000i\000o\000n\000s\000\040\000a\000s\000\040\000A\000N\000N\000s}{chapter.5}% 27 +\BOOKMARK [1][-]{section.5.5}{\376\377\000S\000u\000m\000s\000\040\000o\000f\000\040\000A\000N\000N\000s}{chapter.5}% 28 +\BOOKMARK [2][-]{subsection.5.5.1}{\376\377\000N\000e\000u\000r\000a\000l\000\040\000N\000e\000t\000w\000o\000r\000k\000\040\000S\000u\000m\000\040\000P\000r\000o\000p\000e\000r\000t\000i\000e\000s}{section.5.5}% 29 +\BOOKMARK [1][-]{section.5.6}{\376\377\000L\000i\000n\000e\000a\000r\000\040\000C\000o\000m\000b\000i\000n\000a\000t\000i\000o\000n\000s\000\040\000o\000f\000\040\000A\000N\000N\000s}{chapter.5}% 30 +\BOOKMARK [1][-]{section.5.7}{\376\377\000N\000e\000u\000r\000a\000l\000\040\000N\000e\000t\000w\000o\000r\000k\000\040\000D\000i\000a\000g\000r\000a\000m\000s}{chapter.5}% 31 +\BOOKMARK [0][-]{chapter.6}{\376\377\000A\000N\000N\000\040\000P\000r\000o\000d\000u\000c\000t\000\040\000A\000p\000p\000r\000o\000x\000i\000m\000a\000t\000i\000o\000n\000s}{part.2}% 32 +\BOOKMARK [1][-]{section.6.1}{\376\377\000A\000p\000p\000r\000o\000x\000i\000m\000a\000t\000i\000o\000n\000\040\000f\000o\000r\000\040\000s\000i\000m\000p\000l\000e\000\040\000p\000r\000o\000d\000u\000c\000t\000s}{chapter.6}% 33 +\BOOKMARK [2][-]{subsection.6.1.1}{\376\377\000T\000h\000e\000\040\000`\0003\003\001\0009\000`\0004\0002\000`\000"\003\007\0006\0001\0003\000A\000`\000`\0004\0005\000`\0004\0007\000`\000"\0006\0000\0003\000A\000P\000r\000d\000\040\000n\000e\000t\000w\000o\000r\000k}{section.6.1}% 34 +\BOOKMARK [1][-]{section.6.2}{\376\377\000H\000i\000g\000h\000e\000r\000\040\000A\000p\000p\000r\000o\000x\000i\000m\000a\000t\000i\000o\000n\000s}{chapter.6}% 35 +\BOOKMARK [2][-]{subsection.6.2.1}{\376\377\000T\000h\000e\000\040\000`\0003\003\001\0009\000`\0004\0002\000`\000"\003\007\0006\0001\0003\000A\000`\000`\0004\0005\000`\0004\0007\000`\000"\0006\0000\0003\000A\000T\000u\000n\000\040\000N\000e\000u\000r\000a\000l\000\040\000N\000e\000t\000w\000o\000r\000k}{section.6.2}% 36 +\BOOKMARK [2][-]{subsection.6.2.2}{\376\377\000T\000h\000e\000\040\000`\0003\003\001\0009\000`\0004\0002\000`\000"\003\007\0006\0001\0003\000A\000`\000`\0004\0005\000`\0004\0007\000`\000"\0006\0000\0003\000A\000P\000w\000r\000\040\000N\000e\000u\000r\000a\000l\000\040\000N\000e\000t\000w\000o\000r\000k\000s}{section.6.2}% 37 +\BOOKMARK [2][-]{subsection.6.2.3}{\376\377\000T\000h\000e\000\040\000`\0003\003\001\0009\000`\0004\0002\000`\000"\003\007\0006\0001\0003\000A\000`\000`\0004\0005\000`\0004\0007\000`\000"\0006\0000\0003\000A\000T\000a\000y\000\040\000n\000e\000u\000r\000a\000l\000\040\000n\000e\000t\000w\000o\000r\000k}{section.6.2}% 38 +\BOOKMARK [2][-]{subsection.6.2.4}{\376\377\000N\000e\000u\000r\000a\000l\000\040\000n\000e\000t\000w\000o\000r\000k\000\040\000a\000p\000p\000r\000o\000x\000i\000m\000a\000t\000i\000o\000n\000s\000\040\000f\000o\000r\000\040\000e\000x\000.}{section.6.2}% 39 +\BOOKMARK [0][-]{chapter.7}{\376\377\000A\000\040\000m\000o\000d\000i\000f\000i\000e\000d\000\040\000M\000u\000l\000t\000i\000-\000L\000e\000v\000e\000l\000\040\000P\000i\000c\000a\000r\000d\000\040\000a\000n\000d\000\040\000a\000s\000s\000o\000c\000i\000a\000t\000e\000d\000\040\000n\000e\000u\000r\000a\000l\000\040\000n\000e\000t\000w\000o\000r\000k}{part.2}% 40 +\BOOKMARK [0][-]{chapter.8}{\376\377\000S\000o\000m\000e\000\040\000c\000a\000t\000e\000g\000o\000r\000i\000c\000a\000l\000\040\000i\000d\000e\000a\000s\000\040\000a\000b\000o\000u\000t\000\040\000n\000e\000u\000r\000a\000l\000\040\000n\000e\000t\000w\000o\000r\000k\000s}{part.2}% 41 +\BOOKMARK [0][-]{chapter.9}{\376\377\000A\000N\000N\000\040\000f\000i\000r\000s\000t\000\040\000a\000p\000p\000r\000o\000x\000i\000m\000a\000t\000i\000o\000n\000s}{part.2}% 42 +\BOOKMARK [1][-]{section.9.1}{\376\377\000A\000c\000t\000i\000v\000a\000t\000i\000o\000n\000\040\000F\000u\000n\000c\000t\000i\000o\000n\000\040\000a\000s\000\040\000N\000e\000u\000r\000a\000l\000\040\000N\000e\000t\000w\000o\000r\000k\000s}{chapter.9}% 43 +\BOOKMARK [1][-]{section.9.2}{\376\377\000A\000N\000N\000\040\000R\000e\000p\000r\000e\000s\000e\000n\000t\000a\000t\000i\000o\000n\000s\000\040\000f\000o\000r\000\040\000O\000n\000e\000-\000D\000i\000m\000e\000n\000s\000i\000o\000n\000a\000l\000\040\000I\000d\000e\000n\000t\000i\000t\000y}{chapter.9}% 44 +\BOOKMARK [1][-]{section.9.3}{\376\377\000M\000o\000d\000u\000l\000u\000s\000\040\000o\000f\000\040\000C\000o\000n\000t\000i\000n\000u\000i\000t\000y}{chapter.9}% 45 +\BOOKMARK [1][-]{section.9.4}{\376\377\000L\000i\000n\000e\000a\000r\000\040\000I\000n\000t\000e\000r\000p\000o\000l\000a\000t\000i\000o\000n\000\040\000o\000f\000\040\000r\000e\000a\000l\000-\000v\000a\000l\000u\000e\000d\000\040\000f\000u\000n\000c\000t\000i\000o\000n\000s}{chapter.9}% 46 +\BOOKMARK [2][-]{subsection.9.4.1}{\376\377\000T\000h\000e\000\040\000L\000i\000n\000e\000a\000r\000\040\000I\000n\000t\000e\000r\000p\000o\000l\000a\000t\000i\000o\000n\000\040\000O\000p\000e\000r\000a\000t\000o\000r}{section.9.4}% 47 +\BOOKMARK [2][-]{subsection.9.4.2}{\376\377\000N\000e\000u\000r\000a\000l\000\040\000N\000e\000t\000w\000o\000r\000k\000s\000\040\000t\000o\000\040\000a\000p\000p\000r\000o\000x\000i\000m\000a\000t\000e\000\040\000t\000h\000e\000\040\000`\0003\003\001\0009\000`\0004\0002\000`\000"\003\007\0006\0001\0003\000A\000`\000`\0004\0005\000`\0004\0007\000`\000"\0006\0000\0003\000A\000L\000i\000n\000\040\000o\000p\000e\000r\000a\000t\000o\000r}{section.9.4}% 48 +\BOOKMARK [1][-]{section.9.5}{\376\377\000N\000e\000u\000r\000a\000l\000\040\000n\000e\000t\000w\000o\000r\000k\000\040\000a\000p\000p\000r\000o\000x\000i\000m\000a\000t\000i\000o\000n\000\040\000o\000f\000\040\0001\000-\000d\000i\000m\000e\000n\000s\000i\000o\000n\000a\000l\000\040\000f\000u\000n\000c\000t\000i\000o\000n\000s\000.}{chapter.9}% 49 +\BOOKMARK [1][-]{section.9.6}{\376\377\000`\0003\003\001\0009\000`\0004\0002\000`\000"\003\007\0006\0001\0003\000A\000`\000`\0004\0005\000`\0004\0007\000`\000"\0006\0000\0003\000A\000T\000r\000p\000h\000\040\000a\000n\000d\000\040\000n\000e\000u\000r\000a\000l\000\040\000n\000e\000t\000w\000o\000r\000k\000\040\000a\000p\000p\000r\000o\000x\000i\000m\000a\000t\000i\000o\000n\000s\000\040\000f\000o\000r\000\040\000t\000h\000e\000\040\000t\000r\000a\000p\000e\000z\000o\000i\000d\000a\000l\000\040\000r\000u\000l\000e\000.}{chapter.9}% 50 +\BOOKMARK [1][-]{section.9.7}{\376\377\000L\000i\000n\000e\000a\000r\000\040\000i\000n\000t\000e\000r\000p\000o\000l\000a\000t\000i\000o\000n\000\040\000f\000o\000r\000\040\000m\000u\000l\000t\000i\000-\000d\000i\000m\000e\000n\000s\000i\000o\000n\000a\000l\000\040\000f\000u\000n\000c\000t\000i\000o\000n\000s}{chapter.9}% 51 +\BOOKMARK [2][-]{subsection.9.7.1}{\376\377\000T\000h\000e\000\040\000`\0003\003\001\0009\000`\0004\0002\000`\000"\003\007\0006\0001\0003\000A\000`\000`\0004\0005\000`\0004\0007\000`\000"\0006\0000\0003\000A\000N\000r\000m\000d\0001\000\040\000a\000n\000d\000\040\000`\0003\003\001\0009\000`\0004\0002\000`\000"\003\007\0006\0001\0003\000A\000`\000`\0004\0005\000`\0004\0007\000`\000"\0006\0000\0003\000A\000M\000x\000m\000d\000\040\000n\000e\000t\000w\000o\000r\000k\000s}{section.9.7}% 52 +\BOOKMARK [2][-]{subsection.9.7.2}{\376\377\000T\000h\000e\000\040\000`\0003\003\001\0009\000`\0004\0002\000`\000"\003\007\0006\0001\0003\000A\000`\000`\0004\0005\000`\0004\0007\000`\000"\0006\0000\0003\000A\000M\000x\000m\000d\000\040\000n\000e\000u\000r\000a\000l\000\040\000n\000e\000t\000w\000o\000r\000k\000\040\000a\000n\000d\000\040\000m\000a\000x\000i\000m\000u\000m\000\040\000c\000o\000n\000v\000o\000l\000u\000t\000i\000o\000n\000s\000\040}{section.9.7}% 53 +\BOOKMARK [2][-]{subsection.9.7.3}{\376\377\000L\000i\000p\000s\000c\000h\000i\000t\000z\000\040\000f\000u\000n\000c\000t\000i\000o\000n\000\040\000a\000p\000p\000r\000o\000x\000i\000m\000a\000t\000i\000o\000n\000s}{section.9.7}% 54 +\BOOKMARK [2][-]{subsection.9.7.4}{\376\377\000E\000x\000p\000l\000i\000c\000i\000t\000\040\000A\000N\000N\000\040\000a\000p\000p\000r\000o\000x\000i\000m\000a\000t\000i\000o\000n\000s\000\040}{section.9.7}% 55 +\BOOKMARK [-1][-]{part.3}{\376\377\000I\000I\000I\000\040\000A\000\040\000d\000e\000e\000p\000-\000l\000e\000a\000r\000n\000i\000n\000g\000\040\000s\000o\000l\000u\000t\000i\000o\000n\000\040\000f\000o\000r\000\040\000u\000\040\000a\000n\000d\000\040\000B\000r\000o\000w\000n\000i\000a\000n\000\040\000m\000o\000t\000i\000o\000n\000s}{}% 56 +\BOOKMARK [0][-]{chapter.10}{\376\377\000A\000N\000N\000\040\000r\000e\000p\000r\000e\000s\000e\000n\000t\000a\000t\000i\000o\000n\000s\000\040\000o\000f\000\040\000B\000r\000o\000w\000n\000i\000a\000n\000\040\000M\000o\000t\000i\000o\000n\000\040\000M\000o\000n\000t\000e\000\040\000C\000a\000r\000l\000o}{part.3}% 57 +\BOOKMARK [0][-]{section*.3}{\376\377\000A\000p\000p\000e\000n\000d\000i\000c\000e\000s}{part.3}% 58 diff --git a/Dissertation_unzipped/main.pdf b/Dissertation_unzipped/main.pdf new file mode 100644 index 0000000..79467b8 Binary files /dev/null and b/Dissertation_unzipped/main.pdf differ diff --git a/Dissertation_unzipped/main.tex b/Dissertation_unzipped/main.tex new file mode 100644 index 0000000..aa1bfb5 --- /dev/null +++ b/Dissertation_unzipped/main.tex @@ -0,0 +1,44 @@ +\include{preamble} +\include{commands} + +\title{Artificial Neural Networks Applied to Stochastic Monte Carlo as a Way to Approximate Modified Heat Equations, and Their Associated Parameters.} +\author{Shakil Rafi} +\begin{document} +\maketitle + +\tableofcontents + +\part{On Convergence of Brownian Motion Monte Carlo} + +\include{Introduction} + +\include{Brownian_motion_monte_carlo} + +\include{u_visc_sol} + +\include{brownian_motion_monte_carlo_non_linear_case} + +\part{A Structural Description of Artificial Neural Networks} + +\include{neural_network_introduction} + +\include{ann_product} + +\include{modified_mlp_associated_nn} + +\include{ann_first_approximations} + +\part{A deep-learning solution for $u$ and Brownian motions} + +\include{ann_rep_brownian_motion_monte_carlo} + +\include{conclusions-further-research} + +\nocite{*} +\singlespacing +\bibliography{main.bib} +\bibliographystyle{apa} + +\include{appendices} + +\end{document} \ No newline at end of file diff --git a/Dissertation_unzipped/main.toc b/Dissertation_unzipped/main.toc new file mode 100644 index 0000000..0ec7bf7 --- /dev/null +++ b/Dissertation_unzipped/main.toc @@ -0,0 +1,58 @@ +\contentsline {part}{I\hspace {1em}On Convergence of Brownian Motion Monte Carlo}{4}{part.1}% +\contentsline {chapter}{\numberline {1}Introduction.}{5}{chapter.1}% +\contentsline {section}{\numberline {1.1}Notation, Definitions \& Basic notions.}{5}{section.1.1}% +\contentsline {subsection}{\numberline {1.1.1}Norms and Inner Product}{5}{subsection.1.1.1}% +\contentsline {subsection}{\numberline {1.1.2}Probability Space and Brownian Motion}{6}{subsection.1.1.2}% +\contentsline {subsection}{\numberline {1.1.3}Lipschitz and Related Notions}{9}{subsection.1.1.3}% +\contentsline {subsection}{\numberline {1.1.4}Kolmogorov Equations}{10}{subsection.1.1.4}% +\contentsline {subsection}{\numberline {1.1.5}Linear Algebra Notation and Definitions}{12}{subsection.1.1.5}% +\contentsline {subsection}{\numberline {1.1.6}$O$-type notation and function growth}{13}{subsection.1.1.6}% +\contentsline {subsection}{\numberline {1.1.7}The Iverson Bracket}{15}{subsection.1.1.7}% +\contentsline {chapter}{\numberline {2}Brownian Motion Monte Carlo}{16}{chapter.2}% +\contentsline {section}{\numberline {2.1}Brownian Motion Preliminaries}{16}{section.2.1}% +\contentsline {section}{\numberline {2.2}Monte Carlo Approximations}{20}{section.2.2}% +\contentsline {section}{\numberline {2.3}Bounds and Covnvergence}{21}{section.2.3}% +\contentsline {chapter}{\numberline {3}That $u$ is a viscosity solution}{30}{chapter.3}% +\contentsline {section}{\numberline {3.1}Some Preliminaries}{30}{section.3.1}% +\contentsline {section}{\numberline {3.2}Viscosity Solutions}{34}{section.3.2}% +\contentsline {section}{\numberline {3.3}Solutions, characterization, and computational bounds to the Kolmogorov backward equations}{53}{section.3.3}% +\contentsline {chapter}{\numberline {4}Brownian motion Monte Carlo of the non-linear case}{59}{chapter.4}% +\contentsline {part}{II\hspace {1em}A Structural Description of Artificial Neural Networks}{61}{part.2}% +\contentsline {chapter}{\numberline {5}Introduction and Basic Notions about Neural Networks}{62}{chapter.5}% +\contentsline {section}{\numberline {5.1}The Basic Definition of ANNs}{62}{section.5.1}% +\contentsline {section}{\numberline {5.2}Composition and extensions of ANNs}{66}{section.5.2}% +\contentsline {subsection}{\numberline {5.2.1}Composition}{66}{subsection.5.2.1}% +\contentsline {subsection}{\numberline {5.2.2}Extensions}{68}{subsection.5.2.2}% +\contentsline {section}{\numberline {5.3}Parallelization of ANNs}{68}{section.5.3}% +\contentsline {section}{\numberline {5.4}Affine Linear Transformations as ANNs}{72}{section.5.4}% +\contentsline {section}{\numberline {5.5}Sums of ANNs}{75}{section.5.5}% +\contentsline {subsection}{\numberline {5.5.1}Neural Network Sum Properties}{76}{subsection.5.5.1}% +\contentsline {section}{\numberline {5.6}Linear Combinations of ANNs}{83}{section.5.6}% +\contentsline {section}{\numberline {5.7}Neural Network Diagrams}{93}{section.5.7}% +\contentsline {chapter}{\numberline {6}ANN Product Approximations}{95}{chapter.6}% +\contentsline {section}{\numberline {6.1}Approximation for simple products}{95}{section.6.1}% +\contentsline {subsection}{\numberline {6.1.1}The $\prd $ network}{106}{subsection.6.1.1}% +\contentsline {section}{\numberline {6.2}Higher Approximations}{111}{section.6.2}% +\contentsline {subsection}{\numberline {6.2.1}The $\tun $ Neural Network}{112}{subsection.6.2.1}% +\contentsline {subsection}{\numberline {6.2.2}The $\pwr $ Neural Networks}{114}{subsection.6.2.2}% +\contentsline {subsection}{\numberline {6.2.3}The $\tay $ neural network}{123}{subsection.6.2.3}% +\contentsline {subsection}{\numberline {6.2.4}Neural network approximations for $e^x$.}{128}{subsection.6.2.4}% +\contentsline {chapter}{\numberline {7}A modified Multi-Level Picard and associated neural network}{129}{chapter.7}% +\contentsline {chapter}{\numberline {8}Some categorical ideas about neural networks}{132}{chapter.8}% +\contentsline {chapter}{\numberline {9}ANN first approximations}{133}{chapter.9}% +\contentsline {section}{\numberline {9.1}Activation Function as Neural Networks}{133}{section.9.1}% +\contentsline {section}{\numberline {9.2}ANN Representations for One-Dimensional Identity}{134}{section.9.2}% +\contentsline {section}{\numberline {9.3}Modulus of Continuity}{142}{section.9.3}% +\contentsline {section}{\numberline {9.4}Linear Interpolation of real-valued functions}{143}{section.9.4}% +\contentsline {subsection}{\numberline {9.4.1}The Linear Interpolation Operator}{143}{subsection.9.4.1}% +\contentsline {subsection}{\numberline {9.4.2}Neural Networks to approximate the $\lin $ operator}{144}{subsection.9.4.2}% +\contentsline {section}{\numberline {9.5}Neural network approximation of 1-dimensional functions.}{148}{section.9.5}% +\contentsline {section}{\numberline {9.6}$\trp ^h$ and neural network approximations for the trapezoidal rule.}{151}{section.9.6}% +\contentsline {section}{\numberline {9.7}Linear interpolation for multi-dimensional functions}{154}{section.9.7}% +\contentsline {subsection}{\numberline {9.7.1}The $\nrm ^d_1$ and $\mxm ^d$ networks}{154}{subsection.9.7.1}% +\contentsline {subsection}{\numberline {9.7.2}The $\mxm ^d$ neural network and maximum convolutions }{160}{subsection.9.7.2}% +\contentsline {subsection}{\numberline {9.7.3}Lipschitz function approximations}{164}{subsection.9.7.3}% +\contentsline {subsection}{\numberline {9.7.4}Explicit ANN approximations }{167}{subsection.9.7.4}% +\contentsline {part}{III\hspace {1em}A deep-learning solution for $u$ and Brownian motions}{169}{part.3}% +\contentsline {chapter}{\numberline {10}ANN representations of Brownian Motion Monte Carlo}{170}{chapter.10}% +\contentsline {chapter}{Appendices}{180}{section*.3}% diff --git a/Dissertation_unzipped/modified_mlp_associated_nn.aux b/Dissertation_unzipped/modified_mlp_associated_nn.aux new file mode 100644 index 0000000..0b5f941 --- /dev/null +++ b/Dissertation_unzipped/modified_mlp_associated_nn.aux @@ -0,0 +1,56 @@ +\relax +\providecommand\hyper@newdestlabel[2]{} +\@writefile{toc}{\contentsline {chapter}{\numberline {7}A modified Multi-Level Picard and associated neural network}{129}{chapter.7}\protected@file@percent } +\@writefile{lof}{\addvspace {10\p@ }} +\@writefile{lot}{\addvspace {10\p@ }} +\newlabel{7.0.1}{{7.0.1}{129}{}{equation.7.0.1}{}} +\newlabel{7.0.1@cref}{{[equation][1][7,0]7.0.1}{[1][129][]129}} +\newlabel{7.0.2}{{7.0.2}{129}{A modified Multi-Level Picard and associated neural network}{equation.7.0.2}{}} +\newlabel{7.0.2@cref}{{[equation][2][7,0]7.0.2}{[1][129][]129}} +\@setckpt{modified_mlp_associated_nn}{ +\setcounter{page}{132} +\setcounter{equation}{7} +\setcounter{enumi}{7} +\setcounter{enumii}{0} +\setcounter{enumiii}{0} +\setcounter{enumiv}{0} +\setcounter{footnote}{0} +\setcounter{mpfootnote}{0} +\setcounter{part}{2} +\setcounter{chapter}{7} +\setcounter{section}{0} +\setcounter{subsection}{0} +\setcounter{subsubsection}{0} +\setcounter{paragraph}{0} +\setcounter{subparagraph}{0} +\setcounter{figure}{0} +\setcounter{table}{0} +\setcounter{@pps}{0} +\setcounter{@ppsavesec}{0} +\setcounter{@ppsaveapp}{0} +\setcounter{AM@survey}{0} +\setcounter{parentequation}{0} +\setcounter{section@level}{2} +\setcounter{Item}{149} +\setcounter{Hfootnote}{1} +\setcounter{bookmark@seq@number}{40} +\setcounter{NAT@ctr}{0} +\setcounter{ALG@line}{0} +\setcounter{ALG@rem}{0} +\setcounter{ALG@nested}{0} +\setcounter{ALG@Lnr}{1} +\setcounter{ALG@blocknr}{1} +\setcounter{ALG@storecount}{0} +\setcounter{ALG@tmpcounter}{0} +\setcounter{lstnumber}{1} +\setcounter{theorem}{2} +\setcounter{corollary}{0} +\setcounter{lstlisting}{0} +\setcounter{nn@layerindex@counter}{6} +\setcounter{nn@lastlayerstart@counter}{0} +\setcounter{nn@thislayerstart@counter}{1} +\setcounter{nn@lastlayercount@counter}{4} +\setcounter{nn@thislayercount@counter}{2} +\setcounter{nn@lastlayerindex@counter}{4} +\setcounter{nn@thislayerindex@counter}{5} +} diff --git a/Dissertation_unzipped/modified_mlp_associated_nn.pdf b/Dissertation_unzipped/modified_mlp_associated_nn.pdf new file mode 100644 index 0000000..b307210 Binary files /dev/null and b/Dissertation_unzipped/modified_mlp_associated_nn.pdf differ diff --git a/Dissertation_unzipped/modified_mlp_associated_nn.tex b/Dissertation_unzipped/modified_mlp_associated_nn.tex new file mode 100644 index 0000000..c5f670d --- /dev/null +++ b/Dissertation_unzipped/modified_mlp_associated_nn.tex @@ -0,0 +1,61 @@ +\chapter{A modified Multi-Level Picard and Associated Neural Network} +We now look at neural networks in the context of multi-level Picard iterations. +\begin{lemma} + Let $\alpha, \beta, M \in \lb 0,\infty \rp$, $U_n \in \lb 0,\infty \rp$, for $n\in \N_0$ satisfy for all $n\in \N$ that: + \begin{align}\label{7.0.1} + U_n \les \alpha M^n + \sum^{n-1}_{i=0}M^{n-i} \lp \max \left\{ \beta, U_i\right\} + \mathbbm{1}_{\N} \lp i \rp \max \left\{ \beta, U_{\max \left\{i-1,0 \right\}} \right\} \rp + \end{align} + It is then also the case that for all $n\in \N$ that $U_n \les \lp 2M+1 \rp^n \max \left\{\alpha,\beta \right\}$. +\end{lemma} +\begin{proof} + Let: + \begin{align}\label{7.0.2} + S_n = M^n + \sum^{n-1}_{i=0} M^{n-i} \lb \lp 2M+1 \rp^i + \mathbbm{1}_\N \lp i \rp \lp 2M+1 \rp ^{\max \left\{i-1,0\right\}} \rb + \end{align} + We prove this by induction. The base case of $n=0$ already implies that $U_0 \les \alpha \les \max \left\{\alpha, \beta \right\}$. Next assume that $U_n \les \lp 2M+1 \rp^n \max \left\{ \alpha, \beta \right\}$ holds for all integers upto and including $n$, it is then the case that: + \begin{align} + U_{n+1} &\les \alpha M^{n+1} + \sum^n_{i=0} M^{n+1-i}\lp \max \left\{ \beta, U_i \right\} + \mathbbm{1}_\N \lp i \rp \max \left\{ \beta, U_{\max \left\{i-1,0 \right\}} \right\} \rp \nonumber \\ + &\les \alpha M^{n+1} + \sum^n_{i=0} M^{n+1-i} \lb \max \left\{ \beta, \lp 2M+1 \rp^k\max \left\{ \alpha,\beta \right\}\right\} \right. \nonumber\\&\left. + \mathbbm{1}_\N \lp i \rp \max\left\{ \beta, \lp 2M+1 \rp ^{\max \left\{ k-1,0 \right\}} \max \left\{ \alpha, \beta \right\}\right\} \rb \nonumber \\ + &\les \alpha M^{n+1} + \max \left\{ \alpha,\beta\right\} \sum^n_{i=0} M^{n+1-i} \lb \lp 2M+1 \rp^i + \mathbbm{1}_\N \lp i \rp \lp 2M+1\rp ^{\max\left\{i-1,0 \right\}} \rb \nonumber \\ + &\les \max \left\{\alpha,\beta \right\} S_{n+1} + \end{align} + Then (\ref{7.0.2}) and the assumption that $M\in \lb 0, \infty \rp$ tells us that: + \begin{align} + S_{n+1} &= M^{n+1} + \sum^n_{i=0} M^{n+1-i} \lb \lp 2M+1 \rp^i + \mathbbm{1}_\N \lp i \rp \lp 2M+1 \rp^{\max\left\{i-1,0 \right\}} \rb \nonumber \\ + &= M^{n+1} \sum^n_{i=0} M^{n+1-i} \lp 2M+1\rp^k + \sum^n_{i=1} M^{n+1-i} \lp 2M+1 \rp ^{i-1} \nonumber \\ + &=M^{n+1} + M \lb \frac{\lp 2M+1 \rp^{n+1} - M^{n+1}}{M+1} \rb + M \lb \frac{\lp 2M+1 \rp^n-M^n}{M+1} \rb \nonumber \\ + &= M^{n+1} + \frac{M\lp 2M+1\rp^{n+1}}{M+1} + \frac{\lp 2M+1 \rp^n}{M+1} - M \lb \frac{M^{n+1}+M^n}{M+1} \rb \nonumber \\ + &\les M^{n+1} + \frac{M \lp 2M+1 \rp ^{n+1}}{M+1} + \frac{\lp 2M+1\rp ^{n+1}}{M+1} - M^{n+1} \lb \frac{\cancel{M+1}}{\cancel{M+1}} \rb \nonumber \\ + &= \lp 2M+1\rp ^{n+1} + \end{align} + This completes the induction step proving (\ref{7.0.1}). +\end{proof} +\begin{lemma} + Let $\Theta = \lp \bigcup^{n\in \N} \Z^n \rp$, $d,M \in \N$, $T\in \lp 0,\infty \rp$, $f \in C \lp \R, \R \rp$, $g,\in C \lp \R^d, \R \rp$, $\mathsf{F}, \mathsf{G} \in \neu$ satisfy that $\real_{\rect} \lp \mathsf{F} \rp = f$ and $\real_{\rect} \lp \mathsf{G} \rp = g$, let $\mathfrak{u}^\theta \in \lb 0,1 \rb$, $\theta \in \Theta$, and $\mathcal{U}^\theta: \lb 0,T \rb \rightarrow \lb 0,T \rb$, $\theta \in \Theta$, satisfy for all $t \in \lb 0,T \rb$, $theta \in \Theta$ that $\mathcal{U}^\theta_t = t+(T-t)\mathfrak{u}^\theta$, let $\mathcal{W}^\theta: \lb 0,T \rb \rightarrow \R^d$, $\theta \in \Theta$, for every $\theta \in \Theta$, $t\in \lb 0,T\rb$, $s \in \lb t,T\rb$, let $\mathcal{Y}^\theta_{t,s} \in \R$ satisfy $\mathcal{Y}^\theta_{t,s} = \mathcal{W}^\theta_s - \mathcal{W}^\theta_t$ and let $\mathcal{U}^\theta_n: \lb 0,T\rb \times \R^d \rightarrow \R$, $n\in \N_0$, $\theta \in \Theta$, satisfy for all $\theta \in \Theta$, $n\in \N_0$, $t\in \lb 0,T\rb$, $x\in \R^d$ that: + \begin{align} + U^\theta_n \lp t,x\rp &= \frac{\mathbbm{1}_\N\lp n \rp}{M^n} \lb \sum^{M^n}_{k=1} g \lp x + \mathcal{Y}^{(\theta,0,-k)}_{t,T}\rp\rb \nonumber\\ + &+ \sum^{n-1}_{i=0} \frac{T-t}{M^{n-i}} \lb \sum^{M^{n-i}}_{k=1} \lp \lp f \circ U^{(\theta,i,k)}_i\rp - \mathbbm{1}_\N \lp i \rp \lp f \circ U^{(\theta,-i,k)}_{\max \{ i-1,0\}} \rp \rp \lp \mathcal{U}^{(\theta,i,k)}_t,x+ \mathcal{Y}^{(\theta,i,k)}_{t,\mathcal{U}_t^{(\theta,i,k)}}\rp\rb + \end{align} + it is then the case that: + \begin{enumerate}[label = (\roman*)] + \item there exists unique $\mathsf{U}^\theta_{n,t} \in \neu$, $t \in \lb 0,T \rb$, $n\in \N_0$, $\theta \in \Theta$, which satisfy for all $\theta_1,\theta_2 \in \Theta$, $n\in \N_0$, $t_1, t_2 \in \lb 0,T \rb$ that $\lay \lp \mathsf{U}^{\theta_1}_{n,t_1} \rp = \mathcal{L} \lp \mathsf{U}^{\theta_2}_{n,t_2} \rp$. + \item for all $\theta \in \Theta$, $t \in \lb 0,T\rb$ that $\mathsf{U}^\theta_{0,t} = \lb \lb 0 \quad 0 \quad \cdots \quad 0\rb,\lb 0 \rb \rp \in \R^{1 \times d}\times \R^1$ + \item for all $\theta \in \Theta$, $n\in \N$, $t \in \lb 0,T \rb$ that: +% \begin{align} +% \mathsf{U}^\theta_{n,t} = \lb \bigoplus^{M^n}_{k=1} \lp \frac{1}{M^n} \circledast \lp \mathsf{G} \bullet \aff_{\mathbb{I}_d, \mathcal{Y}^{(\theta,0,-k)}_{t,T}} \rp \rp \rb \nonumber\\ +% \boxplus_{\mathbb{I}} \lb \boxplus^{n-1}_{i=0,\mathbb{I}} \lb \lp \frac{T-t}{M^{n-i}} \rp \circledast \lp \boxplus^{M^{n-i}}_{k=1,\mathbb{I}} \lp \lp \mathsf{F} \bullet \mathsf{U}^{(\theta,i,k}_{i, \mathcal{U}_t^{(\theta,i,k)} \rp \rp \rp +% \end{align} + \begin{align} + \mathsf{U}^\theta_{n,t} &= \lb \bigoplus^{M^n}_{k=1} \lp \frac{1}{M^n} \circledast \lp \mathsf{G}\bullet \aff_{\mathbb{I}_d, \mathcal{Y}^{(\theta,0,-k}_{t,T}} \rp \rp \rb \nonumber \\ + &\boxplus_{\mathbb{I}} \lb \boxplus^{n-1}_{i=0,\mathbb{I}} \lb \lp \frac{T-t}{M^{n-i}}\rp \circledast \lp \boxplus^{M^{n-i}}_{k=1,\mathbb{I}}\lp \lp \mathsf{F} \bullet \mathsf{U}^{(\theta,i,k)}_{i,\mathcal{U}_t^{(\theta,i,k)}} \rp \bullet \aff_{\mathbb{I}_d}, \mathcal{Y}^{(\theta,i,k)}_{t,\mathcal{U}_t^{(\theta,i,k)}} \rp\rp \rb\rb \nonumber\\ + &\boxplus_{\mathbb{I}} \lb \boxplus^{n-1}_{i=0,\mathbb{I}} \lb \lp \frac{(t-T)\mathbbm{1}_\N}{M^{n-i}}\rp \circledast\lp \boxplus^{M^{n-i}}_{k=1,\mathbb{I}} \lp \lp \mathsf{F} \bullet \mathsf{U}^{(\theta,-i,k)}_{\max \{i-1,0\}, \mathcal{U}_t^{(\theta,i,k)}}\rp \bullet \aff_{\mathbb{I}_d,\mathcal{Y}^{(\theta,i,k)}_{t,\mathcal{U}_t^{(\theta,i,k)}}} \rp \rp\rb \rb + \end{align} + \item that for all $\theta \in \Theta$, $n\in \N_0$, $t\in \lb 0,T \rb$, that $\dep \lp \mathsf{U}^\theta_{n,t} \rp = n\cdot \hid \lp \mathsf{F} \rp + \max \left\{1,\mathbbm{1}_\N \lp n \rp \dep \lp \mathsf{G} \rp \right\}$ + \item that for all $\theta \in \Theta$, $n\in \N_0$, $t \in \lb 0,T \rb$, that $\left\| \lay \lp \mathsf{U^\theta_{n,t}} \rp\right\|_{\max} \les \lp 2M+1\rp ^n \max \left\{ 2, \left\| \lay \lp \mathsf{F} \rp\right\|_{\max}, \left\| \lay \lp \mathsf{G} \rp \right\|_F \right\}$ + \item it holds for all $\theta \in \Theta$, $n\in \N_0$, $t \in \lb 0,T \rb $, $x \in \R^d$ that $U^\theta_n \lp t,x \rp = \lp \real_{\rect} \lp \mathsf{U}^\theta_{n,t}\rp \rp \lp x \rp $, and + \item it holds for all $\theta \in \Theta$, $n \in \N_0$, $t\in \lb 0,T\rb$ that: + \begin{align} + \param \lp \mathsf{U}^\theta_{n,t} \rp \les 2n\hid \lp \mathsf{F} \rp + \max \left\{1,\mymathbb{1}_\N \lp n\rp \dep \lp \mathsf{G} \rp \right\} \lb \lp 2M+1\rp^n\max \left\{ 2, \left\| \lay\lp \mathsf{F}\rp\right\|_{\max}, \left\| \lay \lp \mathsf{G} \rp \right\|_{\max}\right\}\rb^2 + \end{align} + \end{enumerate} +\end{lemma} diff --git a/Dissertation_unzipped/neural_network_introduction.aux b/Dissertation_unzipped/neural_network_introduction.aux new file mode 100644 index 0000000..d189325 --- /dev/null +++ b/Dissertation_unzipped/neural_network_introduction.aux @@ -0,0 +1,187 @@ +\relax +\providecommand\hyper@newdestlabel[2]{} +\citation{grohsetal} +\@writefile{toc}{\contentsline {chapter}{\numberline {5}Introduction and Basic Notions about Neural Networks}{62}{chapter.5}\protected@file@percent } +\@writefile{lof}{\addvspace {10\p@ }} +\@writefile{lot}{\addvspace {10\p@ }} +\@writefile{toc}{\contentsline {section}{\numberline {5.1}The Basic Definition of ANNs}{62}{section.5.1}\protected@file@percent } +\newlabel{5.1.2}{{5.1.4}{63}{Artificial Neural Networks}{theorem.5.1.4}{}} +\newlabel{5.1.2@cref}{{[definition][4][5,1]5.1.4}{[1][63][]63}} +\newlabel{paramdef}{{5.1.5}{63}{Artificial Neural Networks}{equation.5.1.5}{}} +\newlabel{paramdef@cref}{{[equation][5][5,1]5.1.5}{[1][63][]63}} +\newlabel{widthdef}{{5.1.11}{64}{Artificial Neural Networks}{equation.5.1.11}{}} +\newlabel{widthdef@cref}{{[equation][11][5,1]5.1.11}{[1][64][]64}} +\newlabel{5.1.11}{{5.1.13}{65}{Realizations of Artificial Neural Networks with Activation Functions}{equation.5.1.13}{}} +\newlabel{5.1.11@cref}{{[equation][13][5,1]5.1.13}{[1][65][]65}} +\newlabel{5.1.8}{{5.1.7}{65}{}{theorem.5.1.7}{}} +\newlabel{5.1.8@cref}{{[lemma][7][5,1]5.1.7}{[1][65][]65}} +\@writefile{toc}{\contentsline {section}{\numberline {5.2}Composition and extensions of ANNs}{66}{section.5.2}\protected@file@percent } +\@writefile{toc}{\contentsline {subsection}{\numberline {5.2.1}Composition}{66}{subsection.5.2.1}\protected@file@percent } +\newlabel{5.2.1}{{5.2.1}{66}{Compositions of ANNs}{theorem.5.2.1}{}} +\newlabel{5.2.1@cref}{{[definition][1][5,2]5.2.1}{[1][66][]66}} +\newlabel{5.2.1}{{5.2.1}{66}{Compositions of ANNs}{equation.5.2.1}{}} +\newlabel{5.2.1@cref}{{[equation][1][5,2]5.2.1}{[1][66][]66}} +\citation{grohs2019spacetime} +\newlabel{depthofcomposition}{{5.2.2}{67}{}{theorem.5.2.2}{}} +\newlabel{depthofcomposition@cref}{{[lemma][2][5,2]5.2.2}{[1][67][]67}} +\newlabel{5.2.3}{{5.2.3}{67}{}{theorem.5.2.3}{}} +\newlabel{5.2.3@cref}{{[lemma][3][5,2]5.2.3}{[1][67][]67}} +\@writefile{toc}{\contentsline {subsection}{\numberline {5.2.2}Extensions}{68}{subsection.5.2.2}\protected@file@percent } +\@writefile{toc}{\contentsline {section}{\numberline {5.3}Parallelization of ANNs}{68}{section.5.3}\protected@file@percent } +\newlabel{5.2.5}{{5.3.1}{68}{Parallelization of ANNs of same length}{theorem.5.3.1}{}} +\newlabel{5.2.5@cref}{{[definition][1][5,3]5.3.1}{[1][68][]68}} +\newlabel{5.4.2}{{5.3.2}{69}{Parallelization of ANNs of same length}{equation.5.3.2}{}} +\newlabel{5.4.2@cref}{{[equation][2][5,3]5.3.2}{[1][68][]69}} +\newlabel{5.3.2}{{5.3.2}{69}{}{theorem.5.3.2}{}} +\newlabel{5.3.2@cref}{{[remark][2][5,3]5.3.2}{[1][69][]69}} +\newlabel{(5.3.3)}{{5.3.3}{69}{}{equation.5.3.3}{}} +\newlabel{(5.3.3)@cref}{{[equation][3][5,3]5.3.3}{[1][69][]69}} +\newlabel{paramofparallel}{{5.3.3}{69}{}{theorem.5.3.3}{}} +\newlabel{paramofparallel@cref}{{[lemma][3][5,3]5.3.3}{[1][69][]69}} +\newlabel{cor:sameparal}{{5.3.3.1}{70}{}{corollary.5.3.3.1}{}} +\newlabel{cor:sameparal@cref}{{[corollary][1][]5.3.3.1}{[1][70][]70}} +\newlabel{5.4.3}{{5.3.4}{71}{}{theorem.5.3.4}{}} +\newlabel{5.4.3@cref}{{[lemma][4][5,3]5.3.4}{[1][71][]71}} +\newlabel{5.3.4}{{5.3.5}{71}{}{theorem.5.3.5}{}} +\newlabel{5.3.4@cref}{{[lemma][5][5,3]5.3.5}{[1][71][]71}} +\newlabel{5.3.5}{{5.3.10}{71}{Parallelization of ANNs}{equation.5.3.10}{}} +\newlabel{5.3.5@cref}{{[equation][10][5,3]5.3.10}{[1][71][]71}} +\@writefile{toc}{\contentsline {section}{\numberline {5.4}Affine Linear Transformations as ANNs}{72}{section.5.4}\protected@file@percent } +\newlabel{5.3.1}{{5.4.1}{72}{}{theorem.5.4.1}{}} +\newlabel{5.3.1@cref}{{[definition][1][5,4]5.4.1}{[1][72][]72}} +\newlabel{5.3.2}{{5.4.2}{72}{}{theorem.5.4.2}{}} +\newlabel{5.3.2@cref}{{[lemma][2][5,4]5.4.2}{[1][72][]72}} +\newlabel{remark:5.4.3}{{5.4.3}{72}{}{theorem.5.4.3}{}} +\newlabel{remark:5.4.3@cref}{{[remark][3][5,4]5.4.3}{[1][72][]72}} +\newlabel{5.3.3}{{5.4.4}{72}{}{theorem.5.4.4}{}} +\newlabel{5.3.3@cref}{{[lemma][4][5,4]5.4.4}{[1][72][]72}} +\citation{grohs2019spacetime} +\newlabel{affcor}{{5.4.4.1}{73}{}{corollary.5.4.4.1}{}} +\newlabel{affcor@cref}{{[corollary][1][]5.4.4.1}{[1][73][]73}} +\citation{grohs2019spacetime} +\@writefile{toc}{\contentsline {section}{\numberline {5.5}Sums of ANNs}{75}{section.5.5}\protected@file@percent } +\newlabel{dep_cpy}{{5.5.2}{75}{}{theorem.5.5.2}{}} +\newlabel{dep_cpy@cref}{{[lemma][2][5,5]5.5.2}{[1][75][]75}} +\newlabel{lem:5.5.4}{{5.5.4}{75}{}{theorem.5.5.4}{}} +\newlabel{lem:5.5.4@cref}{{[lemma][4][5,5]5.5.4}{[1][75][]75}} +\newlabel{5.4.3}{{5.5.3}{76}{Sum of ANNs of the same depth and same end widths}{equation.5.5.3}{}} +\newlabel{5.4.3@cref}{{[equation][3][5,5]5.5.3}{[1][75][]76}} +\@writefile{toc}{\contentsline {subsection}{\numberline {5.5.1}Neural Network Sum Properties}{76}{subsection.5.5.1}\protected@file@percent } +\newlabel{paramsum}{{5.5.6}{76}{}{theorem.5.5.6}{}} +\newlabel{paramsum@cref}{{[lemma][6][5,5]5.5.6}{[1][76][]76}} +\newlabel{(5.5.6)}{{5.5.6}{76}{Neural Network Sum Properties}{equation.5.5.6}{}} +\newlabel{(5.5.6)@cref}{{[equation][6][5,5]5.5.6}{[1][76][]76}} +\newlabel{corsum}{{5.5.6.1}{76}{}{corollary.5.5.6.1}{}} +\newlabel{corsum@cref}{{[corollary][1][]5.5.6.1}{[1][76][]76}} +\newlabel{depth_prop}{{5.5.7}{77}{}{theorem.5.5.7}{}} +\newlabel{depth_prop@cref}{{[lemma][7][5,5]5.5.7}{[1][77][]77}} +\newlabel{5.4.6}{{5.5.8}{77}{}{theorem.5.5.8}{}} +\newlabel{5.4.6@cref}{{[lemma][8][5,5]5.5.8}{[1][77][]77}} +\newlabel{5.4.10}{{5.5.15}{79}{Neural Network Sum Properties}{equation.5.5.15}{}} +\newlabel{5.4.10@cref}{{[equation][15][5,5]5.5.15}{[1][78][]79}} +\newlabel{5.4.11}{{5.5.16}{79}{Neural Network Sum Properties}{equation.5.5.16}{}} +\newlabel{5.4.11@cref}{{[equation][16][5,5]5.5.16}{[1][79][]79}} +\newlabel{5.4.12}{{5.5.17}{79}{Neural Network Sum Properties}{equation.5.5.17}{}} +\newlabel{5.4.12@cref}{{[equation][17][5,5]5.5.17}{[1][79][]79}} +\citation{Grohs_2022} +\newlabel{5.4.13}{{5.5.18}{80}{Neural Network Sum Properties}{equation.5.5.18}{}} +\newlabel{5.4.13@cref}{{[equation][18][5,5]5.5.18}{[1][79][]80}} +\newlabel{5.4.7}{{5.5.9}{80}{}{theorem.5.5.9}{}} +\newlabel{5.4.7@cref}{{[lemma][9][5,5]5.5.9}{[1][80][]80}} +\newlabel{5.4.17}{{5.5.22}{80}{Neural Network Sum Properties}{equation.5.5.22}{}} +\newlabel{5.4.17@cref}{{[equation][22][5,5]5.5.22}{[1][80][]80}} +\newlabel{5.4.8}{{5.5.10}{81}{}{theorem.5.5.10}{}} +\newlabel{5.4.8@cref}{{[lemma][10][5,5]5.5.10}{[1][80][]81}} +\newlabel{5.4.18}{{5.5.23}{81}{Neural Network Sum Properties}{equation.5.5.23}{}} +\newlabel{5.4.18@cref}{{[equation][23][5,5]5.5.23}{[1][81][]81}} +\newlabel{5.4.19}{{5.5.24}{81}{Neural Network Sum Properties}{equation.5.5.24}{}} +\newlabel{5.4.19@cref}{{[equation][24][5,5]5.5.24}{[1][81][]81}} +\newlabel{5.5.11}{{5.5.13}{82}{}{theorem.5.5.13}{}} +\newlabel{5.5.11@cref}{{[lemma][13][5,5]5.5.13}{[1][82][]82}} +\newlabel{5.5.20}{{5.5.25}{82}{Neural Network Sum Properties}{equation.5.5.25}{}} +\newlabel{5.5.20@cref}{{[equation][25][5,5]5.5.25}{[1][82][]82}} +\newlabel{5.4.12}{{5.5.27}{82}{Neural Network Sum Properties}{equation.5.5.27}{}} +\newlabel{5.4.12@cref}{{[equation][27][5,5]5.5.27}{[1][82][]82}} +\newlabel{5.5.20}{{5.5.28}{82}{Sum of ANNs of different lengths but same end widths}{equation.5.5.28}{}} +\newlabel{5.5.20@cref}{{[equation][28][5,5]5.5.28}{[1][82][]82}} +\@writefile{toc}{\contentsline {section}{\numberline {5.6}Linear Combinations of ANNs}{83}{section.5.6}\protected@file@percent } +\newlabel{slm}{{5.6.1}{83}{Scalar left-multiplication with an ANN}{theorem.5.6.1}{}} +\newlabel{slm@cref}{{[definition][1][5,6]5.6.1}{[1][82][]83}} +\newlabel{5.6.3}{{5.6.3}{83}{}{theorem.5.6.3}{}} +\newlabel{5.6.3@cref}{{[lemma][3][5,6]5.6.3}{[1][83][]83}} +\newlabel{5.6.4}{{5.6.4}{84}{}{theorem.5.6.4}{}} +\newlabel{5.6.4@cref}{{[lemma][4][5,6]5.6.4}{[1][83][]84}} +\citation{grohs2019spacetime} +\newlabel{5.6.5}{{5.6.7}{86}{}{theorem.5.6.7}{}} +\newlabel{5.6.5@cref}{{[lemma][7][5,6]5.6.7}{[1][86][]86}} +\citation{Grohs_2022} +\citation{Grohs_2022} +\citation{Grohs_2022} +\citation{Grohs_2022} +\newlabel{5.3.15}{{5.6.20}{87}{Linear Combinations of ANNs}{equation.5.6.20}{}} +\newlabel{5.3.15@cref}{{[equation][20][5,6]5.6.20}{[1][87][]87}} +\newlabel{5.6.13}{{5.6.21}{87}{Linear Combinations of ANNs}{equation.5.6.21}{}} +\newlabel{5.6.13@cref}{{[equation][21][5,6]5.6.21}{[1][87][]87}} +\citation{grohs2019spacetime} +\newlabel{5.6.6}{{5.6.8}{88}{}{theorem.5.6.8}{}} +\newlabel{5.6.6@cref}{{[lemma][8][5,6]5.6.8}{[1][88][]88}} +\citation{Grohs_2022} +\citation{Grohs_2022} +\newlabel{5.6.22}{{5.6.30}{89}{Linear Combinations of ANNs}{equation.5.6.30}{}} +\newlabel{5.6.22@cref}{{[equation][30][5,6]5.6.30}{[1][89][]89}} +\newlabel{5.6.23}{{5.6.31}{89}{Linear Combinations of ANNs}{equation.5.6.31}{}} +\newlabel{5.6.23@cref}{{[equation][31][5,6]5.6.31}{[1][89][]89}} +\newlabel{5.6.9}{{5.6.9}{90}{}{theorem.5.6.9}{}} +\newlabel{5.6.9@cref}{{[lemma][9][5,6]5.6.9}{[1][90][]90}} +\citation{grohs2019spacetime} +\citation{Grohs_2022} +\citation{grohs2019spacetime} +\citation{Grohs_2022} +\@writefile{toc}{\contentsline {section}{\numberline {5.7}Neural Network Diagrams}{93}{section.5.7}\protected@file@percent } +\@setckpt{neural_network_introduction}{ +\setcounter{page}{95} +\setcounter{equation}{0} +\setcounter{enumi}{3} +\setcounter{enumii}{0} +\setcounter{enumiii}{0} +\setcounter{enumiv}{0} +\setcounter{footnote}{0} +\setcounter{mpfootnote}{0} +\setcounter{part}{2} +\setcounter{chapter}{5} +\setcounter{section}{7} +\setcounter{subsection}{0} +\setcounter{subsubsection}{0} +\setcounter{paragraph}{0} +\setcounter{subparagraph}{0} +\setcounter{figure}{0} +\setcounter{table}{0} +\setcounter{@pps}{0} +\setcounter{@ppsavesec}{0} +\setcounter{@ppsaveapp}{0} +\setcounter{AM@survey}{0} +\setcounter{parentequation}{0} +\setcounter{section@level}{1} +\setcounter{Item}{102} +\setcounter{Hfootnote}{0} +\setcounter{bookmark@seq@number}{31} +\setcounter{NAT@ctr}{0} +\setcounter{ALG@line}{0} +\setcounter{ALG@rem}{0} +\setcounter{ALG@nested}{0} +\setcounter{ALG@Lnr}{1} +\setcounter{ALG@blocknr}{1} +\setcounter{ALG@storecount}{0} +\setcounter{ALG@tmpcounter}{0} +\setcounter{lstnumber}{1} +\setcounter{theorem}{0} +\setcounter{corollary}{0} +\setcounter{lstlisting}{0} +\setcounter{nn@layerindex@counter}{6} +\setcounter{nn@lastlayerstart@counter}{0} +\setcounter{nn@thislayerstart@counter}{1} +\setcounter{nn@lastlayercount@counter}{4} +\setcounter{nn@thislayercount@counter}{2} +\setcounter{nn@lastlayerindex@counter}{4} +\setcounter{nn@thislayerindex@counter}{5} +} diff --git a/Dissertation_unzipped/neural_network_introduction.pdf b/Dissertation_unzipped/neural_network_introduction.pdf new file mode 100644 index 0000000..a7c22c3 Binary files /dev/null and b/Dissertation_unzipped/neural_network_introduction.pdf differ diff --git a/Dissertation_unzipped/neural_network_introduction.tex b/Dissertation_unzipped/neural_network_introduction.tex new file mode 100644 index 0000000..af88ea0 --- /dev/null +++ b/Dissertation_unzipped/neural_network_introduction.tex @@ -0,0 +1,1536 @@ +\chapter{Introduction and Basic Notions About Neural Networks} +We seek here to introduce a unified framework for artificial neural networks. This framework borrows from the work presented in \cite{grohsetal} and work done by Joshua Padgett, Benno Kuckuk, and Arnulf Jentzen (unpublished). With this framework in place, we wish to study ANNs from the perspective of trying to see the number of parameters required to define a neural network to solve certain PDEs. The \textit{curse of dimensionality} here refers to the number of parameters necessary to model PDEs and their growth (exponential or otherwise) as dimensions $d$ increase. +\section{The Basic Definition of ANNs and instantiations of ANNs} + +\begin{definition}[Rectifier Function] + Let $d \in \N$ and $x \in \R^d$. We denote by $\rect: \R \rightarrow \R$ the function given by: + \begin{align} + \rect(x) = \max \left\{ 0,x\right\} + \end{align} +\end{definition} + +\begin{definition}[Artificial Neural Networks]\label{5.1.2}\label{def:nn_def} + Denote by $\neu$ the set given by: + \begin{align} + \neu = \bigcup_{L\in \N} \bigcup_{l_0,l_1,...,l_L \in \N} \lp \bigtimes^L_{k=1} \lb \R^{l_k \times l_{k-1}} \times \R^{l_k}\rb \rp + \end{align} + An artificial neural network is a tuple $\lp \nu, \param, \dep, \inn, \out, \hid, \lay, \wid \rp $ where $\nu \in \neu$ and is equipped with the following functions (referred to as auxiliary functions) satisfying for all $\nu \in \lp \bigtimes^L_{k=1} \lb \R^{l_k \times l_{k-1}} \times \R^{l_k}\rb \rp$: + \begin{enumerate}[label = (\roman*)] + \item $\param: \neu \rightarrow \N$ denoting the number of parameters of $\nu$, given by: + \begin{align}\label{paramdef} + \param(\nu) = \sum^L_{k=1}l_k \lp l_{k-1}+1 \rp + \end{align} + \item $\dep: \neu \rightarrow \N$ denoting the number of layers of $\nu$ other than the input layer given by: + \begin{align} + \dep(\nu) = L + \end{align} + \item $\inn:\neu \rightarrow \N$ denoting the width of the input layer, given by: + \begin{align} + \inn(\nu) = l_0 + \end{align} + \item $\out: \neu \rightarrow \N$ denoting the width of the output layer, given by: + \begin{align} + \out(\nu) = l_L + \end{align} + \item $\hid: \neu \rightarrow \N_0$ denoting the number of hidden layers (i.e., layers other than the input and output), given by: + \begin{align} + \hid(\nu) = L-1 + \end{align} + \item $\lay: \neu \rightarrow \bigcup_{L \in \N} \N^L$ denoting the width of layers as an $(L+1)$-tuple, given by: + \begin{align} + \lay(\nu) = \lp l_0,l_1,l_2,...,l_L \rp + \end{align} + We sometimes refer to this as the layer configuration or layer architecture of $\nu$. + \item $\wid_i: \neu \rightarrow \N_0$ denoting the width of layer $i$, given by: + \begin{align} \label{widthdef} + \wid_i(\nu) = \begin{cases} + l_i & i \leqslant L \\ + 0 & i > L + \end{cases} + \end{align} + \end{enumerate} +\end{definition} + Note that this implies that that $\nu = ((W_1,b_1),(W_2,b_2),...(W_L,b_L)) \in \lp \bigtimes^L_{k=1} \lb \R^{l_k \times l_{k-1}} \times \R^{l_k}\rb \rp$. Note that we also denote by $\we_{(\cdot ), \nu}: (\we_{n,\nu})_{n\in \{1,2,...,L\}}: \{1,2,...,L\} \rightarrow \lp \bigcup_{m,k \in \N}\R^{m \times k} \rp $ and also $\bi_{(\cdot),\nu}: \lp \bi_{n,\nu} \rp_{\{1,2,...,L\}}: \{1,2,...,L\} \rightarrow \lp \bigcup_{m \in \N}\R^m \rp$ the functions that satisfy for all $n \in \{1,2,...,L\}$ that $\we_{i,\nu} = W_i$ i.e. the weights matrix for neural network $\nu$ at layer $i$ and $\bi_{i,\nu} = b_i$, i.e. the bias vector for neural network $\nu$ at layer $i$. + + We will call $l_0$ the \textit{starting width} and $l_L$ the \textit{finishing width}. Together, they will be referred to as \textit{end-widths}. +\begin{remark} + Notice that our definition varies somewhat from the conventional ones found in \cite{petersen_optimal_2018} and \cite{grohs2019spacetime} in that whereas the former talk about auxiliary functions as existing within the set $\neu$ we will talk about these auxiliary functions as something elements of $\neu$ are endowed with. In other words, elements of $\neu$ may exist whose depths and parameter counts, for instance, are undefined and non-determinate. + + Note that we develop this definition to closely align to popular deep-learning frameworks such as \texttt{PyTorch}, \texttt{TensorFlow}, and \texttt{Flux}, where, in principle, it is always possible to know the parameter count, depth, number of layers, and other auxiliary information. + + We will often say let $\nu\in \neu$, and it is implied that the tuple $\nu$ with the auxiliary functions is what is being referred to. +\end{remark} + + +\begin{definition}[Instantiations of Artificial Neural Networks with Activation Functions]\label{def:rlz} + Let $\act \in C \lp \R, \R \rp$, we denote by $\real_{\act}: \neu \rightarrow \lp \bigcup_{k,l \in \N} C \lp \R^k, \R^l \rp \rp$ the function satisfying for all $L \in \N$, $l_0,l_1,...,l_L \in \N$, $\nu = \lp \lp W_1, b_1 \rp , \lp W_2, b_2\rp ,...,\lp W_L, b_L \rp \rp \in \lp \bigtimes^L_{k=1} \lb \R^{l_k \times l_{k-1}} \times \R^{l_k}\rb \rp$, $x_0 \in \R^{l_0}, x_1 \in \R^{l_1},...,x_{L-1} \in \R^{l_L-1}$ and with $\forall k \in \N \cap (0,L):x_k = \act \lp \lb W_kx_k+b_k \rb_{*,*} \rp$such that: + \begin{align}\label{5.1.11} + \real_{\act}\lp \nu \rp \in C \lp \R^{l_0}, \R^{l_L} \rp & \text{ and } & \lp \real_{\act}\lp \nu\rp \rp \lp x_0 \rp = W_Lx_{L-1}+b_L + \end{align} +\end{definition} +We will often denote the instantiated neural network $\nu^{l_0,l_L}$ taking $\R^{l_0}$ to $\R^{l_L}$ as $\nu^{l_0,l_L}: \R^{l_0} \rightarrowtail \R^{l_L}$ or simply as $\R^{l_0} \overset{\nu}{\rightarrowtail} \R^{l_L}$ where $l_0$ and $l_L$ are obvious. + +\begin{center} + \begin{neuralnetwork}[height=4, title = {A neural network $\nu$ with $\lay(\nu) = \lp 4,5,4,2\rp$}, nodesize = 10pt, maintitleheight=1em] + \newcommand{\x}[2]{$x$} + \newcommand{\y}[2]{$x$} + \newcommand{\hfirst}[2]{\small $h$} + \newcommand{\hsecond}[2]{\small $h$} + \inputlayer[count=3, bias=true, title=, text=\x] + \hiddenlayer[count=4, bias=true, title=, text=\hfirst] \linklayers + \hiddenlayer[count=3, bias=true, title=, text=\hsecond] \linklayers + \outputlayer[count=2, title=, text=\y] \linklayers + \end{neuralnetwork} + +\end{center} +\begin{remark} + For an R implementation see Listings \ref{nn_creator}, \ref{aux_fun}, \ref{activations}, and \ref{instantiation} +\end{remark} + +\begin{lemma}\label{5.1.8} + Let $\nu \in \neu$, it is then the case that: + \begin{enumerate}[label = (\roman*)] + \item $\lay(\nu) \in \N^{\dep(\nu)+1}$, and + \item for all $\act \in C \lp \R, \R \rp$, $\real_{\act} \in C \lp \R^{\inn(\nu)},\R^{\out(\nu)}\rp $ + \end{enumerate} +\end{lemma} +\begin{proof} + By assumption: + \begin{align} + \nu \in \neu = \bigcup_{L\in \N} \bigcup_{\lp l_0,l_1,...,l_L \rp \in \N^{L+1}} \lp \bigtimes^L_{k=1} \lb \R^{l_k \times l_{k-1}} \times \R^{l_k}\rb \rp + \end{align} + This ensures that there exist $l_0,l_1,...,l_L,L \in \N$ such that: + \begin{align} + \nu \in \lp \bigtimes^L_{j=1} \lb \R^{l_j \times l_{j-1}} \times \R^{\l_j} \rb \rp + \end{align} + This also ensures that $\lay(\nu) = \lp l_0,l_1,...,l_L \rp \in \N^{L+1} = \N^{\dep(\nu)+1}$ and further that $\inn(\nu) = l_0$, $\out(\nu) = l_L$, and that $\dep(\nu) = L$. Together with ($\ref{5.1.11}$), this proves the lemma. +\end{proof} +\section{Compositions of ANNs} +The first operation we want to be able to do is to compose neural networks. Note that the composition is not done in an obvious way; for instance, note that the last layer of the first component of the composition is superimposed with the first layer of the second component of the composition. +\subsection{Composition} +\begin{definition}[Compositions of ANNs]\label{5.2.1}\label{def:comp} + We denote by $\lp \cdot \rp \bullet \lp \cdot \rp: \{ \lp \nu_1,\nu_2 \rp \in \neu \times \neu: \inn(\nu_1) = \out (\nu_1) \} \rightarrow \neu$ the function satisfying for all $L,M \in \N, l_0,l_1,...,l_L, m_0, m_1,...,m_M \in \N$, $\nu_1 = \lp \lp W_1, b_1 \rp, \lp W_2, b_2 \rp,...,\lp W_L,b_L \rp \rp \in \lp \bigtimes^L_{k=1} \lb \R^{l_k \times l_{k-1}} \times \R^{l_k}\rb \rp$, and $\nu_2 = \lp \lp W'_1, b'_1 \rp, \lp W'_2, b'_2 \rp,... \lp W'_M, b'_M \rp \rp \in \lp \bigtimes^M_{k=1} \lb \R^{m_k \times m_{k-1}} \times \R^{m_k}\rb \rp$ with $l_0 = \inn(\nu_1)= \out(\nu_2) = m_M$ and : + \begin{align}\label{5.2.1} + \nu_1 \bullet \nu_2 = \begin{cases} + (( W'_1,b'_1 ), ( W'_2,b'_2 ), ...( W'_{M-1}, b'_{M-1}), ( W_1W'_M, W_1b'_{M} + b_1), (W_2, b_2 ),\\..., ( W_L,b_L )) & :( L> 1 ) \land ( M > 1 ) \\ + ((W_1W'_1,W_1b'_1+b_1),(W_2,b_2), (W_3,b_3),...,(W_Lb_L)) & :(L>1) \land (M=1) \\ + ((W'_1, b'_1),(W'_2,b'_2), ..., (W'_{M-1}, b'_{M-1})(W_1, b'_M + b_1)) &:(L=1) \land (M>1) \\ + ((W_1W'_1, W_1b'_1+b_1)) &:(L=1) \land (M=1) + \end{cases} + \end{align} + \end{definition} + + + + + + \begin{remark} + For an \texttt{R} implementation see Listing \ref{comp} + \end{remark} + \begin{lemma}\label{depthofcomposition} + Let $\nu, \mu \in \neu$ be such that $\out(\mu) = \inn(\nu)$. It is then the case that: + \begin{enumerate}[label = (\roman*)] + \item $\dep( \nu \bullet \mu) = \dep(\nu) + \dep(\mu) - 1$ + \item For all $i \in \{1,2,...,\dep(\nu \bullet\mu)\}$ that: + \begin{align} + &\lp \we_{i,(\nu \bullet \mu)}, \bi_{i,(\nu \bullet \mu)} \rp \nonumber\\ &= \begin{cases} + \lp \we_{i,\mu}, \bi_{i, \mu} \rp & : i< \dep(\mu)\\ + \lp \we_{1,\nu}\we_{\dep(\mu),\mu}, \we_{1,\nu}\bi_{\dep(\mu),\mu} + \bi_{1,\nu}\rp & : i = \dep (\mu)\\ + \lp \we_{i-\dep(\mu)+1,\nu} \bi_{i-\dep(\mu)+1,\nu}\rp & :i> \dep(\mu) + \end{cases} \nonumber + \end{align} + \end{enumerate} + \end{lemma} + \begin{proof} + This is a consequence of (\ref{5.2.1}), which implies both (i) and (ii). + \end{proof} + \begin{lemma} \label{5.2.3} + Let $\nu_1,\nu_2,\nu_3 \in \neu$ satisfy that $\inn(\nu_1) = \out(\nu_2)$ and $\inn(\nu_2) = \out(\nu_3)$, it is then the case\\ that: + \begin{align} + \lp \nu_1 \bullet \nu_2 \rp \bullet \nu_3 = \nu_1 \bullet \lp \nu_2 \bullet \nu_3 \rp + \end{align} + \end{lemma} +\begin{proof} + This is a consequence of \cite[Lemma~2.8]{grohs2019spacetime} with $\Phi_1 \curvearrowleft \nu_1$, $\Phi_2 \curvearrowleft \nu_2$, and $\Phi_3 \curvearrowleft \nu_3$, and the functions $\mathcal{I} \curvearrowleft \inn$, $\mathcal{L} \curvearrowleft \dep$ and $\mathcal{O} \curvearrowleft \out$. +\end{proof} +The following Lemma will be important later on, referenced numerous times, and found in \cite[Proposition~2.6]{grohs2019spacetime}. For completion, we will include a simplified version of the proof here. +\begin{lemma}\label{comp_prop} + Let $\nu_1, \nu_2 \in \neu$. Let it also be that $\out\lp \nu_1\rp = \inn \lp \nu_2\rp$. It is then the case that: + \begin{enumerate}[label = (\roman*)] + \item $\dep \lp \nu_1 \bullet \nu_2 \rp = \dep\lp \nu_1\rp + \dep \lp \nu_2\rp -1$ + \item $\lay\lp \nu_1 \bullet \nu_2\rp = \lp \wid_1\lp \nu_2\rp, \wid_2 \lp \nu_2\rp,\hdots, \wid_{\hid\lp \nu_2\rp},\wid_1\lp \nu_1\rp, \wid_2\lp \nu_1\rp,\hdots, \wid_{\dep\lp \phi_1\rp}\lp \nu_1\rp\rp$ + \item $\hid \lp \nu_1 \bullet \nu_2\rp = \hid \lp \nu_1\rp + \hid\lp \nu_2\rp$ + \item $\param \lp \nu_1 \bullet \nu_2\rp \les \param\lp \nu_1\rp + \param \lp \nu_2\rp + \wid_1 \lp \nu_1\rp\cdot \wid_{\hid\lp \nu_2\rp}\lp \nu_2\rp$ + \item for all $\act \in C \lp \R, \R\rp$ that $\real_{\act}\lp \nu_1 \bullet \nu_2\rp \lp x \rp \in C \lp \R^{\inn \lp \nu_2\rp},\R^{\out\lp \nu_1\rp}\rp$ and further: + \begin{align} + \real_{\act} \lp \nu_1 \bullet \nu_2\rp = \lb \real_{\act}\lp \nu_1\rp\rb \circ \lb \real_{\act}\lp \nu_2 \rp\rb + \end{align} + \end{enumerate} + \end{lemma} + \begin{proof} + Note that Items (i)---(iii) are a simple consequence of Definition \ref{5.2.1}. Specifically, given neural networks $\nu_1,\nu_2 \in \neu$, and $\dep\lp \nu_1\rp = n$ and $\dep \lp \nu_2\rp = m$, note that for all four cases, we have that the depth of the composed neural network $\nu_1 \bullet \nu_2$ is given by $n-1+m-1=n+m-1$ proving Item (i). Note that the outer neural network loses its last layer, yielding Item (ii) in all four cases. Finally since, for all $\nu \in \neu$ it is the case that $\hid \lp \nu\rp =\dep \lp \nu\rp-1$, Item (i) yields Item (iii). + + Now, suppose it is the case that $\nu_3 = \nu_1\bullet \nu_2$ and that: + \begin{align} + \nu_1 &= \lp \lp W_{1,1},b_{1,1}\rp, \lp W_{1,2},b_{1,2}\rp,\hdots, \lp W_{1,L_1},b_{1,L_1}\rp\rp \nonumber \\ + \nu_2 &= \lp \lp W_{2,1},b_{2,1}\rp, \lp W_{2,2},b_{2,2}\rp,\hdots, \lp W_{2,L_2},b_{2,L_2}\rp\rp \nonumber \\ + \nu_3 &= \lp \lp W_{3,1},b_{3,1}\rp, \lp W_{3,2},b_{3,2}\rp,\hdots, \lp W_{3,L_2},b_{3,L_2}\rp\rp \nonumber \\ + \end{align} + And that: + \begin{align} + &\lay \lp \nu_1\rp = \lp l_{1,1},l_{1,2},\hdots, l_{1,L_1}\rp \nonumber\\ + &\lay \lp \nu_2\rp = \lp l_{2,1},l_{2,2},\hdots, l_{2.L_2}\rp \nonumber \\ + &\lay \lp \nu_1 \bullet \nu_2\rp = \lp l_{3,1},l_{3,2}, \hdots, l_{3,L_3}\rp + \end{align} + and further let $x_0 \in \R^{l_{2,0}},x_1 \in \R^{l_{2,1}},\hdots,x_{L_2-1}\in \R^{l_{2,L_2-1}}$ satisfy the condition that: + \begin{align}\label{comp_x} + \forall k \in \N \cap \lp 0,L_2\rp: x_k = \act \lp \lb W_{2,k}x_{k-1} + b_{2,k}\rb_{*,*}\rp + \end{align} + also let $y_0 \in \R^{l_{1,0}}$, $y_1 \in \R^{l_{1,1}},\hdots, y_{L_1-1} \in \R^{l_{2,L_2-1}}$ satisfy: + \begin{align}\label{comp_y} + \forall k\in \N \cap \lp 0,L_1\rp:y_k = \act\lp \lb W_{1,k}y_{k-1}+b_{1,k}\rb_{*,*}\rp + \end{align} + and finally let $z_0 \in \R^{l_{3,0}}, z_1 \in \R^{l_{3,1}},\hdots, z_{L_3-1} \in \R^{l_{3,L_3-1}}$ satisfy: + \begin{align}\label{comp_z} + \forall k \in \N \cap \lp 0,L_3\rp: z_k = \act\lp \lb W_{3,k}z_{k-1} + b_{3,k}\rb_{*,*}\rp + \end{align} + + Note then that by Item (i) of Definition \ref{5.1.2} we have that: + \begin{align} + \param \lp \nu_1 \bullet \nu_2\rp &= \sum^{L_3}_{k=1} l_{3,k}\lp l_{3,k-1} +1\rp \nonumber \\ + &=\lb \sum^{L_2-1}_{k=1} l_{3,k} \lp l_{3,k-1} +1\rp\rb + l_{3,L_2}\lp l_{3,L_2-1}+1\rp+\lb \sum^{L_3}_{k=L_2+1} l_{3,k}\lp l_{3,k-1} +1\rp\rb \nonumber \\ + &= \lb \sum^{L_2-1}_{k=1}l_{2,j}\lp l_{2,j-1}+1\rp\rb + l_{1,1}\lp l_{2,L-1}+1\rp + \lb \sum^{L_3}_{k=L_2+1} l_{j-L_2+1}\lp l_{1,j-L_2}+1\rp\rb\nonumber \\ + &= \lb \sum^{L_2-1}_{k=1} l_{2,j} \lp l_{2,k-1}+1\rp\rb + \lb \sum^{L_1}_{k=2}l_{1,j} \lp l_{1,k-1} +1\rp\rb + l_{1,1}\lp l_{2,L_2-1} + 1\rp \nonumber \\ + &= \lb \sum^{L_2}_{k=1}l_{2,k}\lp l_{2,k-1}+1\rp \rb + \lb \sum_{k=1}^{L_1} l_{1,k}\lp l_{1,k-1}+1\rp\rb + l_{1,1}\lp l_{2,L_2-1} +1\rp \nonumber\\ + &- l_{2,L_2} \lp l_{2,L_2-1} +1\rp -l_{1,1}\lp l_{1,0}+1\rp \nonumber \\ + &= \param\lp \nu_1\rp + \param \lp \nu_2\rp + l_{1,1}\cdot l_{2,L_2-1} + \end{align} + Thus establishing Item (iv). + Note by Definition \ref{5.2.1}, and the fact that $\act \in C \lp \R, \R \rp$ it is the case that + \begin{align}\label{comp_cont} + \real_{\act}\lp \nu_1 \bullet \nu_2\rp \in C \lp \R^{\inn \lp \nu_1\rp},\R^{\out\lp \nu_2\rp} \rp + \end{align} + Next note that by definition, it is the case that: + \begin{align} + \lay \lp \nu_1 \bullet \nu_2\rp = \lp l_{2,0},l_{2,1},\hdots, l_{2,L_2-1},l_{1,1},l_{1,2},\hdots,l_{1,L_1}\rp + \end{align} + And further that: + \begin{align} + \forall k \in \N \cap \lp 0,L_2\rp : \lp W_{3,k},b_{3,k}\rp &= \lp W_{2,k},b_{2,k}\rp \nonumber \\ + \lp W_{3,L_2},b_{3,L_2} \rp &= \lp W_{1,1} \cdot W_{2,L_2}, W_{1,1}b_{2,L_2} + b_{1,1}\rp \nonumber\\ + \text{ and } \forall k \in \N \cap \lp L_2,L_1+L_2\rp: \lp W_{3,k},b_{3,k}\rp &= \lp W_{1,j+1-L_2},b_{1,j+1-L_2}\rp + \end{align} + Since for all $k\in \N \cap \lb 0,L_2\rp$ it is the case that $z_j = x_j$ and the fact that $y_0 = W_{2,l_2}x_{L_2-1} + b_{2,L_2}$ ensures us that: + \begin{align}\label{(5.2.12)} + W_{3,L_2} z_{L_2-1} + b_{3,L_2} &= W_{3,L_2}x_{L_2-1} + b_{3,L_2} \nonumber \\ + &=W_{1,1}W_{2,L_2}x_{L_2-1} + W_{1,1}b_{2,L_2} + b_{1,1} \nonumber \\ + &=W_{1,1} \lp W_{2,L_2}x_{L_2-1} + b_{2,L_2}\rp + b_{1,1} = W_{1,1}y_0 + b_{1,1} + \end{align} + We next claim that for all $k\in \N \cap \lb L_2, L_1+L_2\rp$ it is the case that: + \begin{align}\label{(5.2.13)} + W_{3,k}z_{k-1} + b_{3,k} = W_{1,k+1-L_2}y_{k-L_2} + b_{1,k+1-L_2} + \end{align} + This can be proved via induction on $k\in \N \cap \lb L_2, L_1+L_2\rp$. Consider that our base case of $k=L_2$ in (\ref{(5.2.13)}) is fulfilled by (\ref{(5.2.12)}). Now note that for all $k \in \N \cap \lb L_2,\infty\rp \cap \lp 0,L_1+L_2-1\rp$ with: + \begin{align} + W_{3,k}z_{k-1} +b_{3,k} = W_{1,k+1-L_2}y_{k-L_2} + b_{1,k+1-L_2} + \end{align} + it holds that: + \begin{align} + W_{3,k+1}z_k + b_{3,k+1} &= W_{3,k+1}\lp \lb W_{3,k}z_{k-1} + b_{3,k}\rb_{*,*}\rp + b_{3,k+1} \nonumber \\ + &= W_{1,k+2-L_2}\lp \lb W_{1,k+1-L_2}y_{k-L_2}\rb + b_{1,k+1-L_2}\rp + b_{1,k+2-L_2} \nonumber \\ + &= W_{1,k+2-L_2}y_{k+1-L_2} + b_{1,k+2-L_2} + \end{align} + Whence induction proves (\ref{(5.2.13)}). This, along with the fact that $L_3 = L_1+L_2-1$ then indicates that: + \begin{align} + W_{3,L_3}z_{L_3-1} + b_{3,L_3} = W_{3,L_1+L_2-1}z_{L_1+L_2-2} + b_{3,L_1+L_2-1} = W_{1,L_1}y_{L_1-1} + b_{1,L_1} + \end{align} + Finally, the fact that $\nu_3 = \nu_1 \bullet \nu_2$, in addition with (\ref{comp_x}),(\ref{comp_y}), and (\ref{comp_z}) then tells us that: + \begin{align} + \lb \real_{\act}\lp \nu_1 \bullet \nu_2\rp\rb \lp x_0\rp &= \lb \real_{\act}\lp \nu_3\rp\rb \lp x_0\rp = \lb \real_{\act}\lp \nu_3\rp\rb \lp z_0\rp = W_{3,L_3}z_{L_3-1} + b_{3,L_3} \nonumber \\ + &= W_{1,L_1}y_{L_1-1} + b_{1,L_1} = \lb \real_{\act}\lp \nu_1\rp\rb\lp y_0\rp \nonumber \\ + &=\lb \real_{\act}\lp \nu_1\rp\rb \lp \lb W_{2,L_2}x_{L_2-1} + b_{2,L_2}\rb_{*,*}\rp \nonumber \\ + &=\lb \real_{\act}\lp \nu_1\rp\rb \lp \lb \real_{\act}\lp \nu_2\rp\rb\lp x_0\rp\rp = \lb \real_{\act}\lp \nu_1\rp\rb \circ \lb \real_{\act}\lp \nu_2 \rp\rb \lp x_0\rp + \end{align} + This and (\ref{comp_cont}) then prove Item (v), hence proving the lemma. + \end{proof} +\section{Stacking of ANNs of Equal Depth} +\begin{definition}[Stacking of ANNs of same depth]\label{5.2.5}\label{def:stacking} + Let $L,n\in \N$, and let $\nu_1,\nu_2,\hdots, \nu_n \in \neu$, such that $\dep\lp \nu_1\rp= \dep \lp \nu_2\rp= \cdots = \dep\lp \nu_n\rp = L$. As such, for all $i \in \{1,\hdots,n\}$, let it also be the case that $\lay\lp \nu_i\rp = \lp \lp W_1^i,b^i_1\rp, \lp W^i_2,b^i_2\rp,\hdots, \lp W_L^i,b_L^i\rp \rp$. We then denote by $\boxminus^n_{i=1}\nu_i$, the neural network whose layer architecture is given by: + \begin{align*} + \lay \lp \boxminus^n_{i=1}\nu_i\rp = \lp \lp \diag\lp W_1^1,W_1^2,\hdots,W_1^n\rp , b_1^1 \frown b_1^2,\frown \cdots \frown b_1^n\rp,\right.\\ \left.\lp \diag\lp W_2^1,W_2^2,\hdots,W_2^n\rp , b_2^1 \frown b_2^2,\frown \cdots \frown b_2^n\rp, \right.\\ \left. \vdots \hspace{4cm}\right.\\ \left. \lp \diag\lp W_L^1,W_L^2,\hdots,W_L^n\rp , b_L^1 \frown b_L^2,\frown \cdots \frown b_L^n\rp\rp + \end{align*} + +\end{definition} + +\begin{remark} + For an \texttt{R} implementation see Listing \ref{par} +\end{remark} +\begin{lemma}\label{inst_of_stk} + Let $\nu_1,\nu_2\in \neu$, with $\dep\lp \nu_1\rp = \dep\lp \nu_2\rp$, $x_1 \in \R^{m_1}$, $x_2 \in \R^{m_2}$, and $\mathfrak{x} \in \R^{m_1+m_2}$. Let $\inst_{\rect}\lp \nu_1\rp: \R^{m_1} \rightarrow \R^{n_1}$, and $\inst_{\rect}:\R^{m_2} \rightarrow \R^{n_2}$. It is then the case that $\real_{\rect}\lp \nu_1\boxminus\nu_2\rp\lp \mathfrak{x}\rp = \inst_{\rect}\lp \nu_1\rp\lp x_1\rp \frown \inst_{\rect}\lp \nu_2\rp\lp x_2\rp$. +\end{lemma} +\begin{proof} + Let $\lay\lp \nu_1\rp = \lp \lp W_1,b_1 \rp,\lp W_2,b_2\rp,\hdots, \lp W_L,b_L\rp\rp$ and $\lay \lp \nu_2\rp = \lp \lp \fW_1, \fb_1\rp, \lp \fW_2,\fb_2\rp,\hdots, \lp \fW_L,\fb_L\rp\rp$, and as such it is the case according to Definition \ref{def:stacking} that: + \begin{align*} + \lay \lp \nu_1 \boxminus\nu_2\rp = \lp \lp \diag\lp W_1,\fW_1\rp , b_1 \frown \fb_1\rp,\right.\\ \left.\lp \diag\lp W_2,\fW_2\rp , b_2 \frown \fb_2\rp, \right.\\ \left. \vdots \hspace{2.5cm}\right.\\ \left. \lp \diag\lp W_L,\fW_L\rp , b_L^1 \frown \fb_L\rp\rp + \end{align*} + Note that for all, $\act \in \lp \R,\R\rp$, $j \in \{1,2,\hdots,L-1\}$ and for all $x \in \R^{\columns(W_j)+\columns(\fW_j)}$, $x_1 \in \R^{\columns\lp W_j\rp}$, $x_2 \in \R^{\columns\lp \fW_j \rp}$, $y \in \R^{\rows\lp W_j\rp + \rows \lp \fW_j\rp}$, $y_1 \in \R^{\rows\lp W_j\rp}$, $y_2 \in \R^{\rows \lp \fW_j\rp}$, where $y_1 = \act\lp \lb W_j \cdot x_1 + b_1\rb_{*,*}\rp$, $y_2 = \act \lp \lb \fW_j\cdot x_2+\fb_j\rb_{*,*}\rp$, $y=\act\lp\lb \diag\lp W_j, \fW_j\rp \cdot x + \lp b_j \frown \fb_j \rp\rb_{*,*}\rp$ it is the case that, Corollary \ref{concat_fun_fun_concat} tells us that: + \begin{align} + y=\act\lp\lb \diag\lp W_j, \fW_j\rp \cdot x + \lp b_j \frown \fb_j \rp\rb_{*,*}\rp &= \act \lp \lb \lp W_j \cdot x_1+ b_j \rp \frown \lp \fW_j \cdot x_2+\fb_j\rp \rb_{*,*}\rp \nonumber \\ + &= \act\lp \lb W_j\cdot x_1+b_j\rb_{*,*}\rp\frown \act \lp \lb \fW_j\cdot x_2+\fb_j\rb_{*,*}\rp \nonumber\\ + &= y_1 \frown y_2 + \end{align} + Note that this is repeated from one layer to the next, yielding that $\real_{\rect}\lp \nu_1\boxminus\nu_2\rp\lp \mathfrak{x}\rp = \inst_{\rect}\lp \nu_1\rp\lp x_1\rp \frown \inst_{\rect}\lp \nu_2\rp\lp x_2\rp$. +\end{proof} + \begin{remark}\label{5.3.2}\label{rem:stk_remark} + Given $n,L \in \N$, $\nu_1,\nu_2,...,\nu_n \in \neu$ such that $L = \dep (\nu_1) = \dep(\nu_2) =...= \dep(\nu_n)$ it is then the case, as seen from (\ref{5.4.2}) that: + \begin{align}\label{(5.3.3)} + \boxminus_{i=1}^n \nu_i \in \lp \bigtimes^L_{k=1} \lb \R^{\lp \sum^n_{j=1} \wid_k(\nu_j) \rp \times \lp \sum_{j=1}^n \wid_{k-1} \lp \nu_j \rp \rp} \times \R ^{\lp \sum^n_{j=1} \wid_k \lp \nu_j \rp \rp }\rb \rp + \end{align} + \end{remark} + \begin{lemma}\label{paramofparallel} + Let $n,L \in \N$, $\nu_1,\nu_2,\hdots, \nu_n \in \neu$ satisfty that $L = \dep \lp \nu_1 \rp = \dep \lp \nu_2\rp = \cdots = \dep \lp\nu_n \rp$. It is then the case that: + \begin{align} + \param \lp \lb \boxminus_{i=1}^n \nu_i \rb \rp \les \frac{1}{2}\lb \sum^n_{i=1} \param \lp \nu_i\rp\rb^2 + \end{align} + \begin{proof} + Note that by Remark \ref{5.3.2} we have that: + \begin{align} + \param \lp \lb \boxminus_{i=1}^n \nu_i\rb\rp &= \sum^L_{k=1} \lb \sum_{i=1}^n l_{i,k}\rb \lb \lp \sum^n_{i=1} l_{i,k-1} \rp +1 \rb \nonumber \\ + &= \sum^L_{k=1} \lb \sum^n_{i=1}l_{i,k}\rb \lb \lp \sum^n_{j=1} l_{j,k-1}\rp+1\rb \nonumber\\ + &\les \sum^n_{i=1} \sum^n_{j=1} \sum^L_{k=1} l_{i,k} \lp l_{j,k-1}+1 \rp \nonumber \\ + &\les \sum^n_{i=1} \sum^n_{j=1} \sum^L_{\ell=1} l_{i,k} \lp l_{j,\ell-1} +1\rp \nonumber \\ + &=\sum^n_{i=1} \sum^n_{j=1} \lb \sum^L_{k=1}l_{i,k}\rb \lb \sum^L_{\ell=1} \lp l_{j,\ell-1} +1\rp\rb \nonumber \\ + &\les \sum^n_{i=1} \sum^n_{j=1}\lb \sum^L_{k=1} \frac{1}{2} l_{i,k} \lp l_{i,k-1}+1\rp\rb \lb \sum^L_{\ell=1} l_{j,\ell}\lp l_{j,\ell-1}+1 \rp \rb \nonumber \\ + &= \sum^n_{i=1} \sum^n_{j=1} \frac{1}{2} \param \lp \nu_i \rp \param \lp \nu_j\rp = \frac{1}{2} \lb \sum^n_{i=1}\param \lp \nu_i\rp\rb^2 + \end{align} + This completes the proof of the lemma. + \end{proof} + \end{lemma} + + \begin{corollary}\label{cor:sameparal} + Let $n\in \N$. Let $\nu_1,\nu_2,...,\nu_n \in \neu$ satisfy that $\lay \lp \nu_1\rp = \lay \lp \nu_2\rp= \cdots =\lay \lp \nu_n\rp$. It is then the case that: + \begin{align} + \param \lp \boxminus_{i=1}^n \nu_i\rp \les n^2\param \lp \nu_1\rp + \end{align} + \end{corollary} + \begin{proof} + Since it is the case that for all $j \in \{1,2,...,n \}$ that: $\lay\lp \nu_j\rp=\lp l_0,l_1,...,l_L \rp$, where $l_0,l_1,...,l_L,L \in \N$, we may say that: + \begin{align} + \param \lp \boxminus_{j=1}^n \nu_j \rp &= \sum^L_{j=1}\lp nl_j\rp \lb \lp nl_{j-1} \rp +1\rb \les \sum^L_{j=1}\lp nl_j \rp\lb \lp nl_{j-1}\rp + n \rb \nonumber \\ + &=n^2 \lb \sum^L_{j=1}l_j \lp l_{j-1}+1\rp\rb = n^2\param\lp \nu_1\rp + \end{align} + \end{proof} + \begin{lemma}\label{lem:paramparal_geq_param_sum} + Let $\nu_1,\nu_2 \in \neu$, such that $\dep \lp \nu_1\rp = \dep \lp \nu_2\rp = L$. It is then the case that $\param\lp \nu_1\rp + \param \lp \nu_2\rp \les \param \lp \nu_1 \boxminus \nu_2\rp$. + \end{lemma} + \begin{proof} + Remark \ref{rem:stk_remark} tells us that: + \begin{align} + \nu_1 \boxminus \nu_2 \in \lp \bigtimes^L_{k=1} \lb \R^{\lp \wid_k(\nu_1) + \wid_k\lp \nu_2\rp \rp \times \lp \wid_{k-1} \lp \nu_1\rp +\wid_{k-1}\lp\nu_2\rp \rp} \times \R^{ \wid_k \lp \nu_1 \rp + \wid_k\lp \nu_2\rp }\rb \rp + \end{align} + The definition of $\param()$ from Defition \ref{def:nn_def}, and the fact that $\wid_i \ges 1$ for all $i \in \{1,2,\hdots, L\}$ tells us then that: + \begin{align} + \param\lp \nu_1 \boxminus \nu_2\rp &= \sum_{k=1}^L \lb \lp \wid_k \lp \nu_1\rp + \wid_k\lp \nu_2\rp\rp \times \lp \wid_{k-1}\lp \nu_1\rp+ \wid_{k-1}\lp \nu_2\rp +1\rp \rb \nonumber \\ + &= \sum^L_{k=1} \lb \wid_k \lp \nu_1\rp \wid_{k-1}\lp \nu_1\rp+ \wid_k \lp \nu_1\rp\wid_{k-1}\lp \nu_2\rp \right. \nonumber\\ &\left. + \wid_k \lp \nu_1\rp + \wid_k\lp \nu_2\rp\wid_{k-1}\lp \nu_1\rp + \wid_k\lp \nu_2\rp\wid_{k-1}\lp \nu_2\rp + \wid_k\lp \nu_2\rp\rb \nonumber \\ + &\ges \sum_{k=1}^L \lb \wid_k \lp \nu_1\rp\wid_{k-1}\lp \nu_1\rp + \wid_k \lp \nu_1\rp + \wid_k\lp \nu_2\rp\wid_{k-1}\lp \nu_2\rp+ \wid_k\lp \nu_2 \rp\rb \nonumber \\ + &=\sum_{k=1}^L\lb \wid_k \lp \nu_1 \rp\lp \wid_{k-1}\lp \nu_1\rp+1\rp\rb + \sum_{k=1}^L\lb \wid_k\lp \nu_2 \rp\lp \wid_{k-1}\lp \nu_2\rp+1\rp\rb \nonumber \\ + &= \param \lp \nu_1\rp + \param \lp \nu_2\rp + \end{align} + \end{proof} + \begin{corollary}\label{cor:bigger_is_better} + Let $\nu_1,\nu_2,\nu_3 \in \neu$. Let $\param \lp \nu_2 \rp \les \param\lp \nu_3\rp$. It is then the case that $\param\lp \nu_1 \boxminus \nu_2\rp \les \param\lp \nu_1 \boxminus \nu_3\rp$. + \end{corollary} + \begin{proof} + Lemma \ref{lem:paramparal_geq_param_sum} tells us that: + \begin{align} + 0 &\les \param \lp \nu_1\rp + \param\lp \nu_3\rp \les \param \lp \nu_1 \boxminus \nu_3\rp \label{lin1} \\ + 0 &\les \param \lp \nu_1\rp + \param\lp \nu_2\rp \les \param \lp \nu_1 \boxminus \nu_2\rp \label{lin2} + \end{align} + Subtracting (\ref{lin1}) from (\ref{lin2}) gives us that: + \begin{align} + 0 \les \param\lp \nu_3\rp - \param\lp \nu_2\rp &\les \param\lp \nu_1 \boxminus\nu_3\rp - \param\lp \nu_1\boxminus\nu_2\rp \nonumber\\ + \param\lp \nu_1 \boxminus\nu_2\rp &\les \param\lp \nu_1 \boxminus \nu_2\rp \nonumber + \end{align} + \end{proof} + + + + \begin{lemma}\label{5.4.3} + Let $m_1,m_2,n_1,n_2\in\N$. Let $\nu_1,\nu_2 \in \neu$, such that $\real_{\rect} \lp \nu_1\rp \in C \lp \R^{m_1},\R^{n_1}\rp$ and $\real_{\rect} \lp \nu_2\rp \in C\lp \R^{m_2},\R^{n_2}\rp$. It is then the case that $\lp \real_{\act}(\nu_1 \boxminus \nu_2)\rp \lp \begin{bmatrix} + x \\ x' + \end{bmatrix}\rp = \lp \real_{\act}(\nu_2 \boxminus \nu _1) \rp \lp \begin{bmatrix} + x' \\ x + \end{bmatrix}\rp$ for $x \in \R^{m_1}, x' \in \R^{n_1}$, upto transposition. + \end{lemma} + \begin{proof} + Note that this is a consequence of the commutativity of summation in the exponents of (\ref{(5.3.3)}), and the fact that switching $\nu_1$ and $\nu_2$ with a transposition results in a transposed output for transposed input. + \end{proof} + \begin{lemma}\label{5.3.4} + Let $\act \in C \lp \R, \R \rp$, $n \in \N$, and $\nu = \boxminus_{i=1}^n \nu_i$ satisfy the condition that $\dep(\nu_1) = \dep(\nu_2) =...=\dep(\nu_n)$. It is then the case that $\real_{\act} \lp \nu \rp \in C \lp \R^{\sum_{i=1}^n \inn(\nu_i)}, \R^{\sum^n_{i=1}\out(\nu_i)} \rp $ + \end{lemma} + \begin{proof} + Let $L = \dep(\nu_1)$, and let $l_{i,0},l_{i,1}...l_{i,L} \in \N$ satisfy for all $i \in \{ 1,2,...,n\}$ that $\lay(\nu_i) = \lp l_{i,0}, l_{i,1},...,l_{i,L} \rp $. Furthermore let $\lp \lp W_{i,1},b_{i,1}\rp, \lp W_{i,2},b_{i,2} \rp , ..., \lp W_{i,L},b_{i,L} \rp \rp \in \lp \bigtimes^L_{j=1} \lb \R^{l_{i,j} \times l_{i,j-1}} \times \R^{l_{i,j}} \rb \rp $ satisfy for all $i \in \{ 1,2,...,n\}$ that: + \begin{align} + \nu_i = \lp \lp W_{i,1},b_{i,1} \rp , \lp W_{i,2}, b_{i,2}\rp ,...,\lp W_{i,L},b_{i,L} \rp \rp + \end{align} + Let $\alpha_j \in \N$ with $j \in \{0,1,...,L\}$ satisfy that $\alpha_j = \sum^n_{i=1} l_{i,j}$ and let $\lp \lp A_1,b_1 \rp, \lp A_2,b_2 \rp,...,\lp A_L,b_L \rp \rp \in \lp \bigtimes^L_{j=1} \lb \R^{\alpha_{j} \times \alpha_{j-1}} \times \R^{\alpha_{j}} \rb \rp $ satisfy that: + \begin{align}\label{5.3.5} + \boxminus_{i=1}^n \nu_i = \lp \lp A_1,b_1 \rp, \lp A_2,b_2 \rp,...,\lp A_L,b_L \rp \rp + \end{align} + See Remark 5.3.2. Let $x_{i,0},x_{i,1},...,x_{i,L-1} \in \lp \R^{l_{i,0}} \times \R^{l_{i,1}}\times \cdots \times \R^{l_{i,L-1}} \rp$ satisfy for all $i \in \{1,2,...,n\}$ $k \in \N \cap \lp 0,L \rp $ that: + \begin{align} + x_{i,j} = \mult^{l_{i,j}}_{\act} \lp W_{i,j}x_{i,j-1} + b_{i,j} \rp + \end{align} + Note that (\ref{5.3.5}) demonstrates that $\inn \lp \boxminus_{i=1}^n\nu_i \rp =\alpha_0$ and $\out \lp \boxminus^n_{i=1} \nu_i \rp = \alpha_L$. This and Item(ii) of Lemma \ref{5.1.8}, and the fact that for all $i \in \{1,2,...,n\}$it is the case that $\inn(\nu_i) = l_{i,0}$ and $\out(\nu_i) = l_{i,L}$ ensures that: + \begin{align} + \real_{\act} \lp \boxminus^n_{i=1} \rp \in C \lp \R^{\alpha_0}, \R^{\alpha_L} \rp &= C\lp \R^{\sum^n_{i=1}l_{i,0}}, \R^{\sum_{i=1}^n l_{i,L}} \rp \nonumber\\ + &= C \lp \R^{\sum^n_{i=1} \inn(\nu_i)}, \R^{\sum_{i=1}^n \out(\nu_i)} \rp \nonumber + \end{align} + This proves the lemma. + \end{proof} + +\section{Stacking of ANNs of Unequal Depth} +We will often encounter neural networks that we want to stack but have unequal depth. Definition \ref{5.2.5} only deals with neural networks of the same depth. We will facilitate this situation by introducing a form of ``padding" for our neural network. Hence, they come out to the same length before stacking them. This padding will be via the "tunneling" neural network, as shown below. +\begin{definition}[Identity Neural Network]\label{7.2.1} + We will denote by $\id_d \in \neu$ the neural network satisfying for all $d \in \N$ that: + \begin{enumerate}[label = (\roman*)] + \item \begin{align} + \id_1 = \lp \lp \begin{bmatrix} + 1 \\ + -1 + \end{bmatrix}, \begin{bmatrix} + 0 \\ + 0 + \end{bmatrix}\rp \lp \begin{bmatrix} + 1 \quad -1 + \end{bmatrix},\begin{bmatrix} 0\end{bmatrix}\rp \rp \in \lp \lp \R^{2 \times 1} \times \R^2 \rp \times \lp \R^{1\times 2} \times \R^1 \rp \rp + \end{align} + \item \begin{align}\label{7.2.2} + \id_d = \boxminus^d_{i=1} \id_1 + \end{align} + For $d>1$. +\end{enumerate} +\begin{remark} + We will discuss some properties of $\id$ in Section \ref{sec_tun}. +\end{remark} +\end{definition} +\begin{definition}[The Tunneling Neural Network] + We define the tunneling neural network, denoted as $\tun_n$ for $n\in \N$ and $d\in \N$ by: + \begin{align} + \tun^d_n = \begin{cases} + \aff_{\mathbb{I}_d,0} &:n= 1 \\ + \id_d &: n=2 \\ + \bullet^{n-2} \id_d & n \in \N \cap [3,\infty) + \end{cases} + \end{align} + We will drop the requirement for $d$ and $\tun_n$ by itself will be used to denote $\tun_n^1$. +\end{definition} +\begin{remark} + We will discuss some properties of the $\tun^d_n$ network in Section \ref{sec_tun}. +\end{remark} +\begin{definition} + Let $n \in \N$, and $\nu_1,\nu_2,...,\nu_n \in \neu$. We will define the stacking of unequal length neural networks, denoted $\DDiamond^n_{i=1}\nu_i$ as the neural network given by: + \begin{align} + \DDiamond^n_{i=1}\nu_i = + \boxminus^n_{i=1} \lb \tun_{\max_i \left\{\dep \lp \nu_i \rp\right\} +1 - \dep \lp \nu_i\rp} \bullet \nu_i \rb + \end{align} +\end{definition} +Diagrammatically, this can be thought of as: +\begin{figure} +\begin{center} + + +\tikzset{every picture/.style={line width=0.75pt}} %set default line width to 0.75pt + +\begin{tikzpicture}[x=0.75pt,y=0.75pt,yscale=-1,xscale=1] +%uncomment if require: \path (0,475); %set diagram left start at 0, and has height of 475 + +%Shape: Rectangle [id:dp6580978944544137] +\draw (199.5,139) -- (490,139) -- (490,179) -- (199.5,179) -- cycle ; +%Shape: Rectangle [id:dp353023162160477] +\draw (420,205) -- (490,205) -- (490,245) -- (420,245) -- cycle ; +%Shape: Rectangle [id:dp37062952177240926] +\draw (200.5,205) -- (403,205) -- (403,245) -- (200.5,245) -- cycle ; +%Straight Lines [id:da022591094656464583] +\draw (419,224) -- (404.5,224) ; +\draw [shift={(402.5,224)}, rotate = 360] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; +%Straight Lines [id:da41864611287252906] +\draw (198.5,160) -- (101.5,160) ; +\draw [shift={(99.5,160)}, rotate = 360] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; +%Straight Lines [id:da6288954656732593] +\draw (198.5,222) -- (101.5,222) ; +\draw [shift={(99.5,222)}, rotate = 360] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; +%Straight Lines [id:da8590579460958981] +\draw (526,158) -- (493.5,158) ; +\draw [shift={(491.5,158)}, rotate = 360] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; +%Straight Lines [id:da8647539484496881] +\draw (527,221) -- (494.5,221) ; +\draw [shift={(492.5,221)}, rotate = 360] [color={rgb, 255:red, 0; green, 0; blue, 0 } ][line width=0.75] (10.93,-3.29) .. controls (6.95,-1.4) and (3.31,-0.3) .. (0,0) .. controls (3.31,0.3) and (6.95,1.4) .. (10.93,3.29) ; + +% Text Node +\draw (337,155) node [anchor=north west][inner sep=0.75pt] {$\nu _{1}$}; +% Text Node +\draw (445,220) node [anchor=north west][inner sep=0.75pt] {$\nu _{2}$}; +% Text Node +\draw (296,220) node [anchor=north west][inner sep=0.75pt] {$\mathsf{Tun}$}; + + +\end{tikzpicture} +\end{center} +\caption{Diagrammmatic representation of the stacking of unequal depth neural networks} +\end{figure} +\begin{lemma} + Let $\nu_1,\nu_2 \in \neu$. It is then the case that: + \begin{align} + \param \lp \nu_1\DDiamond\nu_2 \rp \les 2\cdot \lp \max \left\{ \param\lp \nu_1\rp, \param\lp \nu_2\rp\right\}\rp^2 + \end{align} +\end{lemma} +\begin{proof} + This is a straightforward consequence of Lemma \ref{paramofparallel}. +\end{proof} + +\section{Affine Linear Transformations as ANNs and Their Properties.} +\begin{definition}\label{5.3.1}\label{def:aff} + Let $m,n \in \N$, $W \in \R^{m \times n}$, $b \in \R^m$.We denote by $\aff_{W,b} \in \lp \R^{m\times n} \times \R^m \rp \subseteq \neu$ the neural network given by $\aff_{W,b} = ((W,b))$. +\end{definition} +\begin{lemma}\label{5.3.2}\label{aff_prop} + Let $m,n \in \N$, $W \in \R^{m\times n}$, $b \in \R^m$. It is then the case that: + \begin{enumerate}[label = (\roman*)] + \item $\lay (\aff_{W,b}) = (n,m) \in \N^2$. + \item for all $\act \in C ( \R,\R)$ it is the case that $\real_{\act} (\aff_{W,b}) \in C (\R^n, \R^m)$ + \item for all $\act \in C(\R,\R)$, $x \in \R^n$ we have $(\real_{\act}(\aff_{W,b}))(x) = Wx+b$ + \end{enumerate} +\end{lemma} +\begin{proof} + Note that $(i)$ is a consequence of Definition \ref{5.1.2} and \ref{5.3.1}. Note next that $\aff_{W,b} = (W,b) \in (\R^{m\times n} \times \R^m) \subseteq \neu$. Note that ($\ref{5.1.11}$) then tells us that $\real_{\act} (\aff_{W,b}) = Wx+b$ which in turn proves $(ii)$ and $(iii)$ +\end{proof} +\begin{remark}\label{remark:5.4.3}\label{param_of_aff} + Given $W\in \R^{m\times n}$, and $b \in \R^{m \times 1}$, it is the case that according to Definition (\ref{paramdef}) we have: $\param(\aff_{W,b})= m\times n + m$ +\end{remark} +\begin{remark} + For an \texttt{R} implementation see Listing \ref{affn} +\end{remark} +\begin{lemma}\label{5.3.3}\label{aff_effect_on_layer_architecture} + Let $\nu \in \neu$. It is then the case that: + \begin{enumerate}[label = (\roman*)] + \item For all $m\in \N$, $W \in \R^{m\times \out(\nu)}$ + \begin{align} + \lay(\aff_{W,B} \bullet\nu) = \lp \wid_0(\nu), \wid_1(\nu),...,\wid_{\dep(\nu)-1}(\nu),m \rp \in \N^{\dep(\nu)+1} + \end{align} + \item For all $\act \in C(\R,\R)$, $m\in \N$, $W \in \R^{m \times \out(\nu)}$, $B \in \R^m$, we have that $\real_{\act} (\aff_{W,B} \bullet\nu) \in C\lp \R^{\inn(\nu)},\R^m\rp$. + \item For all $\act \in C(\R,\R)$, $m\in \N$, $W \in \R^{m \times \out(\nu)}$, $B \in \R^m$, $x \in \R^{\inn(\nu)}$ that: + \begin{align} + \lp \real \lp \aff_{W,b} \bullet \nu \rp \rp \lp x \rp= W \lp \real_{\act}\lp \nu \rp \rp \lp x \rp +b + \end{align} + \item For all $n\in \N$, $W \in \R^{\inn(\nu) \times n}$, $b \in \R^{\inn(\nu)}$ that: + \begin{align} + \lay(\nu \bullet \aff_{W,b}) = \lp n, \wid_1(\nu), \wid_2(\nu),...,\wid_{\dep(\nu)}(\nu) \rp \in \N^{\dep(\nu)+1} + \end{align} + \item For all $\act \in C(\R,\R)$, $n\in \N$, $W \in \R^{\inn(\nu) \times n}$, $b \in \R^{\inn(\nu)}$ that $\real_{\act} \lp \nu \bullet \aff_{W,b} \rp \in C \lp \R^n, \R^{\out(\nu)} \rp $ and, + \item For all $\act \in C(\R,\R)$, $n\in \N$, $W \in \R^{\inn(\nu) \times n}$, $b \in \R^{\inn (\nu)}$, $x \in \R^n$ that: + \begin{align} + \lp \real_{\act} \lp \nu \bullet \aff_{W,b} \rp \rp \lp x \rp = \lp \real_{\act} \lp \nu \rp \rp \lp Wx+b \rp + \end{align} + \end{enumerate} +\end{lemma} +\begin{proof} + From Lemma \ref{5.3.2} we see that $\real_{\act}(\aff_{W,b}) \in C(\R^n,\R^m)$ given by $\real_{\act}(\aff_{W,b}) = Wx + b$. This and Lemma \ref{comp_prop} prove $(i)-(vi)$. +\end{proof} +\begin{corollary}\label{affcor} + Let $m,n \in \N$, and $W \in \R^{m \times n}$ and $b \in \R^m$. Let $\nu\in \neu$. It is then the case that: + \begin{enumerate}[label = (\roman*)] + \item for all $\aff_{W,b} \in \neu$ with $\inn \lp \aff_{W,b} \rp = \out \lp \nu \rp$ that: + \begin{align} + \param \lp \aff_{W,b} \bullet \nu \rp \les \lb \max\left\{ 1, \frac{\out \lp \aff_{W,b}\rp}{l_L}\right\}\rb \param \lp \nu\rp + \end{align} + \item for all $\aff_{W,b} \in \neu$ with $\out\lp \aff_{W,b}\rp = \inn\lp \nu\rp$ that: + \begin{align} + \param \lp \nu \bullet \aff_{W,b}\rp \les \lb \max\left\{ 1, \frac{\inn \lp \aff_{W,b}\rp+1}{\inn\lp \nu\rp+1}\right\}\rb \param \lp \nu\rp + \end{align} + \end{enumerate} +\end{corollary} +\begin{proof} + Let it be the case that $\lay \lp \nu\rp = \lp l_0,l_1,...,l_L\rp$ for $l_0,l_1,...,l_L,L \in \N$. Lemma \ref{5.3.3}, Item (i), and Lemma \ref{comp_prop} then tells us that: + \begin{align} + \param \lp \aff_{W,b} \bullet \nu \rp &= \lb \sum^{L-1}_{m=1} l_m \lp l_{m-1}+1\rp\rb + \out \lp \aff_{W,b}\rp \lp l_{L-1}+1\rp \nonumber \\ + &= \lb \sum^{L-1}_{m=1} l_m \lp l_{m-1}+1 \rp\rb+ \lb \frac{\out\lp \aff_{W,b}\rp}{l_L}\rb l_L\lp l_{L-1}+1 \rp \nonumber \\ + &\les \lb \max \left\{ 1, \frac{\out(\aff_{W,b})}{l_L}\right\}\rb \lb \sum^{L-1}_{m=1} l_m \lp l_{m-1}+1\rp\rb + \lb \max\left\{ 1,\frac{\out\lp \aff_{W,b}\rp}{l_L}\right\}\rb l_L \lp l_{L-1}+1\rp \nonumber\\ + &= \lb \max\left\{ 1, \frac{\out \lp \aff_{W,b}\rp}{l_L}\right\}\rb \lb \sum^L_{m=1}l_m \lp l_{m-1} +1\rp\rb = \lb \max\left\{ 1, \frac{\out \lp \aff_{W,b}\rp}{l_L}\right\}\rb \param \lp \nu\rp \nonumber + \end{align} + and further that: + \begin{align} + \param \lp \nu \bullet\aff_{W,b} \rp &= \lb \sum^{L}_{m=2} l_m \lp l_{m-1}+1\rp\rb + l_{1}\lp \inn \lp \aff_{W,b}\rp+1\rp \nonumber \\ + &= \lb \sum^{L}_{m=2} l_m \lp l_{m-1}+1 \rp\rb+ \lb \frac{\inn \lp \aff_{W,b}\rp+1}{l_0+1}\rb l_1\lp l_{0}+1 \rp \nonumber \\ + &\les \lb \max \left\{ 1, \frac{\inn(\aff_{W,b})+1}{l_0+1}\right\}\rb \lb \sum^{L}_{m=2} l_m \lp l_{m-1}+1\rp\rb + \lb \max\left\{ 1,\frac{\inn\lp \aff_{W,b}\rp+1}{l_0+1}\right\}\rb l_1 \lp l_{0}+1\rp \nonumber\\ + &= \lb \max\left\{ 1, \frac{\inn \lp \aff_{W,b}\rp+1}{l_0+1}\right\}\rb \lb \sum^L_{m=1}l_m \lp l_{m-1} +1\rp\rb = \lb \max\left\{ 1, \frac{\inn \lp \aff_{W,b}\rp+1}{\inn\lp \nu\rp+1}\right\}\rb \param \lp \nu\rp \nonumber + \end{align} + This completes the proof of the lemma. +\end{proof} +\begin{lemma}\label{aff_stack_is_aff} + Let $\mathfrak{a}_1,\mathfrak{a}_2$ be two affine neural networks as defined in Definition \ref{def:aff}. It is then the case that $\mathfrak{a}_1 \boxminus \mathfrak{a}_2$ is also an affine neural network +\end{lemma} +\begin{proof} + This follows straightforwardly from Definition \ref{def:stacking}, where, given that $\mathfrak{a}_1 = \lp \lp W_1,b_1\rp \rp$, and $\mathfrak{a}_2 = \lp \lp W_2,b_2\rp \rp$, their stackings is the neural network $\lp \lp \diag\lp W_1,W_2\rp,b_1 \frown b_2\rp\rp$, which is clearly an affine neural network. +\end{proof} + +\section{Sums of ANNs of Same End-widths} + +\begin{definition}[The $\cpy$ Network]\label{def:cpy} + We define the neural network, $\cpy_{n,k} \in \neu$ for $n,k\in \N$ as the neural network given by: + \begin{align} + \cpy_{n,k} = \aff_{\underbrace{\lb \mathbb{I}_{k} \: \mathbb{I}_k \: \cdots \: \mathbb{I}_k \rb^T}_{n-\text{many}},\mymathbb{0}_{nk}} + \end{align} + Where $k$ represents the dimensions of the vectors being copied and $n$ is the number of copies of the vector being made. +\end{definition} + + \begin{remark} + See Listing \ref{affn} + \end{remark} +\begin{lemma}\label{dep_cpy}\label{lem:param_cpy} + Let $n,k \in \N$ and let $\cpy_{n,k} \in \neu$, it is then the case for all $n,k \in \N$ that: + \begin{enumerate}[label = (\roman*)] + \item $\dep \lp \cpy_{n,k} \rp = 1$ + \item $\param\lp \cpy_{n,k} \rp = nk^2+nk$ + \end{enumerate} + \begin{proof} + Note that $(i)$ is a consequence of Definition \ref{5.3.1} and (ii) follows from the structure of $\cpy_{n,k}$. + \end{proof} + +\end{lemma} +\begin{definition}[The $\sm$ Network]\label{def:sm} + We define the neural network $\sm_{n,k}$ for $n,k \in \N$ as the neural network given by: + \begin{align} + \sm_{n,k} = \aff_{\underbrace{\lb \mathbb{I}_k \: \mathbb{I}_k \: \cdots \: \mathbb{I}_k\rb}_{n-\text{many}}, \mymathbb{0}_{k}} + \end{align} + Where $k$ represents the dimensions of the vectors being added and $n$ is the number of vectors being added. +\end{definition} + +\begin{remark} + See again, Listing \ref{affn} +\end{remark} +\begin{lemma}\label{lem:5.5.4}\label{lem:param_sm} + Let $n,k \in \N$ and $\sm_{n,k} \in \neu$, it is then the case for all $n,k \in \N$ that: + \begin{enumerate}[label = (\roman*)] + \item $\dep \lp \sm_{n,k} \rp = 1$ + \item $\param\lp \sm_{n,k} \rp = nk^2+k$ + \end{enumerate} +\end{lemma} +\begin{proof} + (i) is a consequence of Definition $\ref{5.3.1}$ and (ii) follows from the structure of $\sm_{n,k}$. +\end{proof} +\begin{definition}[Sum of ANNs of the same depth and same end widths]\label{def:nn_sum} + Let $u,v \in \Z$ with $u \leqslant v$. Let $\nu_u,\nu_{u+1},...,\nu_v \in \neu$ satisfy for all $i \in \N \cap [u,v]$ that $\dep(\nu_i) = \dep(\nu_u)$, $\inn(\nu_i) = \inn(\nu_u)$, and $\out(\nu_i) = \out(\nu_u)$. We then denote by $\oplus^n_{i=u} \nu_i$ or alternatively $\nu_u \oplus\nu_{u+1} \oplus \hdots \oplus\nu_v$ the neural network given by: + \begin{align}\label{5.4.3} + \oplus^v_{i=u}\nu_i \coloneqq \lp \sm_{v-u+1,\out(\nu_2)} \bullet \lb \boxminus^v_{i=u}\nu_i \rb \bullet \cpy_{(v-u+1),\inn(\nu_1)} \rp + \end{align} +\end{definition} + +\begin{remark} + For an \texttt{R} implementation, see Listing \ref{nn_sum}. +\end{remark} + +\subsection{Neural Network Sum Properties} +\begin{lemma}\label{paramsum} + Let $\nu_1, \nu_2 \in \neu$ satisfy that $\dep(\nu_1) = \dep(\nu_2) = L$, $\inn(\nu_1) = \inn(\nu_2)$, and $\out(\nu_1) = \out(\nu_2)$, and $\lay(\nu_1) = \lp l_{1,1},l_{1,2},...l_{1,L} \rp$ and $\lay \lp \nu_2 \rp = \lp l_{2,1}, l_{2,2},...,l_{2,L} \rp $ it is then the case that: + \begin{align} + \param \lp \nu_1 \oplus \nu_2 \rp &= \param \lp \aff_{\lb \mathbb{I}_{\out(\nu_2)} \: \mathbb{I}_{\out(\nu_2)}\rb, \mymathbb{0}_{\out(\nu_2)} }\bullet \lb \nu_1 \boxminus \nu_2\rb \bullet \aff_{\lb\mathbb{I}_{\inn(\nu_1)}\: \mathbb{I}_{\inn(\nu_1)}\rb^T,\mymathbb{0}_{2\cdot\inn(\nu_1)}} \rp \\ + &\les \frac{1}{2}\lp \param \lp \nu_1\rp + \param \lp \nu_2\rp\rp^2\nonumber + \end{align} +\end{lemma} + +\begin{proof} + Note that by Lemma \ref{paramofparallel} we have that: + \begin{align} + \param \lp \nu_1 \boxminus \nu_2 \rp = \frac{1}{2}\lp \param \lp \nu_1\rp + \param \lp \nu_2\rp\rp^2 + \end{align} + Note also that since $\cpy$ and $\sm$ are affine neural networks, from Corollary \ref{affcor} we get that: + \begin{align}\label{(5.5.6)} + \param \lp \lb \nu_1 \boxminus \nu_2\rb \bullet \cpy_{2,\inn(\nu_1)}\rp &\les \max \left\{ 1, \frac{\inn\lp \nu_1\rp+1}{2\inn\lp \nu_1\rp+1}\right\} \frac{1}{2}\lp \param \lp \nu_1\rp + \param \lp \nu_2\rp\rp^2 \nonumber\\ + &= \frac{1}{2}\lp \param \lp \nu_1\rp + \param \lp \nu_2\rp\rp^2 + \end{align} + and further that: + \begin{align} + \param \lp \sm_{2,\out \lp \nu_1 \boxminus \nu_2\rp} \bullet \lb \nu_1 \boxminus \nu_2\rb \bullet \cpy_{2,\inn\lp \nu_1\rp} \rp &\les \lb \max\left\{ 1, \frac{\out \lp \aff_{W,b}\rp}{2\out\lp \nu_1\rp}\right\}\rb \frac{1}{2} \lp \param \lp \nu_1\rp + \param \lp \nu_2 \rp\rp^2 \nonumber \\ + &= \frac{1}{2}\lp \param \lp \nu_1\rp + \param \lp \nu_2\rp\rp^2 + \end{align} +\end{proof} +\begin{corollary}\label{corsum} + Let $n\in \N$. Let $\nu_1,\nu_2,...,\nu_n \in \neu$ satisfy that $\lay \lp \nu_1\rp = \lay \lp \nu_2\rp= \cdots =\lay \lp \nu_n\rp$. It is then the case that: + \begin{align} + \param \lp \bigoplus_{i=1}^n \nu_i\rp \les n^2\param \lp \nu_1\rp + \end{align} +\end{corollary} +\begin{proof} + Let $\lay \lp \nu_1\rp = \lp l_0,l_1,...,l_L\rp$ where for all $i \in \{0,1,...,L \}$ it is the case that $l_i,L \in \N$. Corollary \ref{cor:sameparal} then tells us that: + \begin{align} + \param \lp \boxminus_{i=1}^n \nu_i\rp \les n^2 \param \lp \nu_i\rp + \end{align} + Then from Corollary \ref{affcor}, and (\ref{(5.5.6)}) we get that: + \begin{align} + \param \lp \lb \boxminus_{i=1}^n \nu_i \rb\bullet \cpy_{2,\inn\lp \nu_1\rp}\rp \les n^2\param \lp \nu_1\rp + \end{align} + And further that: + \begin{align} + \param \lp \sm_{2,\out \lp \boxminus_{i=1}^n \nu_i\rp} \bullet \lb \boxminus_{i=1}^n \nu_i\rb \bullet \cpy_{2,\inn\lp \nu_1\rp} \rp \les n^2\param \lp\nu_1 \rp + \end{align} +\end{proof} +\begin{lemma}\label{depth_prop} + Let $\nu_1, \nu_2 \in \neu$ satisfy that $\dep(\nu_1) = \dep(\nu_2) = L$, $\inn(\nu_1) = \inn(\nu_2)$, and $\out(\nu_1) = \out(\nu_2)$, and $\lay(\nu_1) = \lp l_{1,1},l_{1,2},...l_{1,L} \rp$ and $\lay \lp \nu_2 \rp = \lp l_{2,1}, l_{2,2},...,l_{2,L} \rp $ it is then the case that: + \begin{align} + \dep \lp \nu_1 \oplus \nu_2 \rp =L + \end{align} +\end{lemma} +\begin{proof} + Note that $\dep \lp \cpy_{n,k} \rp = 1 = \dep\lp \sm_{n,k} \rp$ for all $n,k \in \N$. Note also that $\dep \lp \nu_1 \boxminus \nu_2 \rp = \dep\lp \nu_1 \rp = \dep \lp \nu_2 \rp $ and that for $\nu,\mu \in \neu$ it is the case that $\dep \lp \nu \bullet \mu\rp = \dep\lp \nu \rp + \dep \lp \mu \rp-1$. Thus: + \begin{align} + \dep \lp \nu_1 \oplus \nu_1 \rp = \dep\lp \nu_1 \oplus \nu_2 \rp &= \dep \lp \aff_{\lb \mathbb{I}_{\out(\nu_2)} \: \mathbb{I}_{\out(\nu_2)}\rb, \mymathbb{0}_{\out(\nu_2)} }\bullet \lb \nu_1 \boxminus \nu_2\rb \bullet \aff_{\lb\mathbb{I}_{\inn(\nu_1)}\: \mathbb{I}_{\inn(\nu_1)}\rb^T,\mymathbb{0}_{2\cdot\inn(\nu_1)}} \rp\nonumber \\ + &= L\nonumber + \end{align} +\end{proof} + +\begin{lemma}\label{5.4.6} + Let $\nu_1,\nu_2 \in \neu$, such that $\dep(\nu_1) = \dep(\nu_2)= L$, $\inn(\nu_1) = \inn(\nu_2) = l_0$, and $\out(\nu_1) = \out(\nu_2) = l_L$. It is then the case that $\real(\nu_1 \oplus \nu_2) = \real(\nu_2 \oplus \nu_1)$, i.e., the instantiated sum of ANNs of the same depth and same end widths is commutative. +\end{lemma} +\begin{proof} + Let $\nu_1 = \lp (W_1,b_1),(W_2,b_2),...,(W_L,b_L) \rp$ and let $\nu_2 = \lp (W'_1,b'_1),(W'_2,b'_2),...,(W_L', b_L') \rp $. Note that Definition $\ref{5.2.5}$ then tells us that: + \begin{align} + \nu_1 \boxminus \nu_2 = \lp\lp + \begin{bmatrix} + W_1 & 0 \\ + 0 & W_1' + \end{bmatrix}, \begin{bmatrix} + b_1 \\ + b_1' + \end{bmatrix} + \rp,\lp \begin{bmatrix} + W_2 & 0 \\ + 0 & W_2' + \end{bmatrix}, \begin{bmatrix} + b_2\\ + b_2' + \end{bmatrix}\rp,..., \right. \nonumber\\ + \left. + \lp \begin{bmatrix} + W_L & 0 \\ + 0 & W_L' + \end{bmatrix}, \begin{bmatrix} + b_L \\ + b_L' + \end{bmatrix} \rp \rp \nonumber + \end{align} + Note also that by Claims $\ref{5.4.4}$ and $\ref{5.4.5}$ and Definition \ref{5.3.1} we know that: + \begin{align} + \aff_{\lb \mathbb{I}_{\inn \lp \nu_2 \rp } \: \mathbb{I}_{\inn \lp \nu_2 \rp} \rb^T,\mymathbb{0}_{2\inn(\nu_2),1}} = \lp \begin{bmatrix} + \mathbb{I}_{\inn(\nu_2)} \\ + \mathbb{I}_{\inn(\nu_2)} + \end{bmatrix},\mymathbb{0}_{2\inn(\nu_2),1}\rp + \end{align} + and: + \begin{align} + \aff_{\lb \mathbb{I}_{\out(\nu_1)} \: \mathbb{I}_{\out(\nu_1)} \rb,\mymathbb{0}_{2\out(\nu_1),1}} = \lp \begin{bmatrix} + \mathbb{I}_{\out(\nu_1)} \: \mathbb{I}_{\out(\nu_1)} + \end{bmatrix} ,\mymathbb{0}_{2\out(\nu_1),1} \rp + \end{align} + Applying Definition \ref{5.2.1}, specifically the second case, (\ref{5.4.3}) and ($\ref{5.4.4}$) yields that: + \begin{align} + &\lb \nu_1 \boxminus \nu_2 \rb \bullet \aff_{\lb \mathbb{I}_{\inn \lp \nu_2 \rp } \: \mathbb{I}_{\inn \lp \nu_2 \rp} \rb^T,\mymathbb{0}_{2\inn(\nu_2),1}} \nonumber \\ + &= \lp \lp \begin{bmatrix} + W_1 & 0 \\ + 0 & W'_1 + \end{bmatrix} \begin{bmatrix} + \mathbb{I}_{\inn(\nu_1)} \\ + \mathbb{I}_{\inn(\nu_1)} + \end{bmatrix}, \begin{bmatrix} + b_1 \\ + b_1' + \end{bmatrix} + \rp, + \lp \begin{bmatrix} + W_2 & 0 \\ + 0 & W'_2 + \end{bmatrix}, \begin{bmatrix} + b_2 \\ + b_2' + \end{bmatrix} \rp \right.,..., \nonumber + \left. \lp \begin{bmatrix} + W_L & 0 \\ + 0 & W'_L + \end{bmatrix}, \begin{bmatrix} + b_L \\ + b_L' + \end{bmatrix} \rp \rp \nonumber \\ + &= \lp \lp \begin{bmatrix} + W_1\\ + W'_1 + \end{bmatrix} ,\begin{bmatrix} + b_1 \\ + b_1' + \end{bmatrix} + \rp, + \lp \begin{bmatrix} + W_2 & 0\\ + 0 & W'_2 + \end{bmatrix}, \begin{bmatrix} + b_2 \\ + b_2' + \end{bmatrix} \rp \right.,..., \nonumber + \left. \lp \begin{bmatrix} + W_L & 0\\ + 0 & W'_L + \end{bmatrix}, \begin{bmatrix} + b_L \\ + b_L' + \end{bmatrix} \rp \rp \nonumber + \end{align} + Applying Claim \ref{5.4.5} and especially the third case of Definition \ref{5.2.1} to to the above then gives us: + \begin{align} + &\aff_{\lb \mathbb{I}_{\out(\nu_1)} \: \mathbb{I}_{\out(\nu_1)} \rb,0}\bullet \lb \nu_1 \boxminus \nu_2 \rb \bullet \aff_{\lb \mathbb{I}_{\inn \lp \nu_2 \rp } \: \mathbb{I}_{\inn \lp \nu_2 \rp} \rb^T,0} \nonumber\\ + &= \lp \lp \begin{bmatrix} + W_1 \\ + W'_1 + \end{bmatrix} ,\begin{bmatrix} + B_1 \\ + B_1' + \end{bmatrix} + \rp, + \lp \begin{bmatrix} + W_2 & 0\\ + 0 & W'_2 + \end{bmatrix} \begin{bmatrix} + b_2 \\ + b_2' + \end{bmatrix} \rp \right.,..., \nonumber + \left. \lp \begin{bmatrix} + \mathbb{I}_{\out(\nu_2)} \: \mathbb{I}_{\out(\nu_2)} + \end{bmatrix}\begin{bmatrix} + W_L & 0 \\ + 0 & W'_L + \end{bmatrix}, \begin{bmatrix} + \mathbb{I}_{\out(\nu_2)} \: \mathbb{I}_{\out(\nu_2)} + \end{bmatrix}\begin{bmatrix} + b_L \\ + b_L' + \end{bmatrix} \rp \rp \nonumber \\ + & =\lp \lp \begin{bmatrix} + W_1\\ + W'_1 + \end{bmatrix} ,\begin{bmatrix} + b_1 \\ + b_1' + \end{bmatrix} + \rp, + \lp \begin{bmatrix} + W_2 & 0\\ + 0 & W'_2 + \end{bmatrix}, \begin{bmatrix} + b_2 \\ + b_2' + \end{bmatrix} \rp \right.,..., + \left. \lp \begin{bmatrix} + W_L \quad W'_L \label{5.4.10} + \end{bmatrix}, b_L + b_L' \rp \rp + \end{align} + Now note that: + \begin{align} + \nu_2 \boxminus \nu_1 = \lp\lp + \begin{bmatrix} + W_1' & 0 \\ + 0 & W_1 + \end{bmatrix}, \begin{bmatrix} + b_1' \\ + b_1 + \end{bmatrix} + \rp,\lp \begin{bmatrix} + W_2' & 0 \\ + 0 & W_2 + \end{bmatrix}, \begin{bmatrix} + b_2'\\ + b_2 + \end{bmatrix}\rp,..., \right. \nonumber\\ + \left. + \lp \begin{bmatrix} + W_L' & 0 \\ + 0 & W_L + \end{bmatrix}, \begin{bmatrix} + b_L' \\ + b_L + \end{bmatrix} \rp \rp \nonumber + \end{align} + And thus: + \begin{align} + &\aff_{\lb \mathbb{I}_{\out(\nu_2)} \: \mathbb{I}_{\out(\nu_2)} \rb,0}\bullet \lb \nu_2 \boxminus \nu_1 \rb \bullet \aff_{\lb \mathbb{I}_{\inn \lp \nu_1 \rp } \: \mathbb{I}_{\inn \lp \nu_1 \rp} \rb^T,0} \nonumber\\ + &= \lp \lp \begin{bmatrix} + W'_1\\ + W_1 + \end{bmatrix} ,\begin{bmatrix} + b'_1 \\ + b_1 + \end{bmatrix} + \rp, + \lp \begin{bmatrix} + W'_2 & 0\\ + 0 & W_2 + \end{bmatrix}, \begin{bmatrix} + b'_2 \\ + b_2 + \end{bmatrix} \rp \right.,..., + \left. \lp \begin{bmatrix} + W'_L \quad W_L + \end{bmatrix}, \begin{bmatrix} + b_L' + b_L + \end{bmatrix} \rp \rp \label{5.4.11} + \end{align} + Let $x \in \R^{\inn(\nu_1)}$, note then that: + \begin{align} + \begin{bmatrix} + W_1 \\ + W'_1 + \end{bmatrix}x + \begin{bmatrix} + b_1\\ + b'_1 + \end{bmatrix} = \begin{bmatrix} + W_1x+b_1 \\ + W'_1x+b_1' + \end{bmatrix} \nonumber + \end{align} + The full instantiation of (\ref{5.4.10}) is then given by: + \begin{align} + \real \lp \begin{bmatrix} + W_L \quad W'_L + \end{bmatrix}\begin{bmatrix} + W_{L-1}(...(W_2\lp W_1x+b_1 \rp + b_2) + ... )+ b_{L-1} \\ + W'_{L-1}(...(W'_2 \lp W'_1x + b'_1 \rp + b'_2)+...)+b'_{L-1} + \end{bmatrix} + b_L+b'_L \rp \label{5.4.12} + \end{align} + The full instantiation of (\ref{5.4.11}) is then given by: + \begin{align} + \real \lp \begin{bmatrix} + W_L' \quad W_L + \end{bmatrix}\begin{bmatrix} + W'_{L-1}(...(W'_2\lp W'_1x+b'_1 \rp + b'_2) + ... )+ b'_{L-1} \\ + W_{L-1}(...(W_2 \lp W_1x + b_1 \rp + b_2)+...)+b_{L-1} + \end{bmatrix} + b_L+b'_L \rp \label{5.4.13} + \end{align} + Since (\ref{5.4.12}) and (\ref{5.4.13}) are the same this proves that $\nu_1 \oplus \nu_2 = \nu_2 \oplus \nu_1$. + \end{proof} + This is a special case of \cite[Lemma~3.28]{Grohs_2022}. + \begin{lemma}\label{5.4.7} + Let $ l_0,l_1,...,l_L \in \N$. Let $\nu \in \neu$ with $\lay(\nu) = \lp l_0,l_1,...,l_L \rp$. There then exists a neural network $\zero_{l_0,l_1,...,l_L} \in \neu$ such that $\real(\nu \oplus \zero_{l_0,l_1,...,l_L}) = \real(\zero_{l_0,l_1,...,l_L} \oplus \nu) = \nu $. + \end{lemma} +\begin{proof} + Let $\nu = \lp \lp W_1, b_1 \rp, \lp W_2, b_2 \rp,..., \lp W_L,b_L \rp \rp$, where $W_1 \in \R^{l_1\times l_0}$, $b_1 \in \R^{l_1}$, $W_2 \in \R^{l_2 \times l_1}$, $b_2 \in \R^{l_2},...,W_L \in \R^{l_L \times l_{L-1}}$, $b_L \in \R^{l_L}$. Denote by $\zero_{l_0,l_1,...,l_L}$ the neural network which for all $l_0,l_1,...,l_L \in \N$ is given by: + \begin{align} + \zero_{l_0,l_1,...,l_L} = \lp \lp \mymathbb{0}_{l_1, l_0}, \mymathbb{0}_{l_1} \rp, \lp \mymathbb{0}_{l_2,l_1},\mymathbb{0}_{l_2} \rp,...,\lp \mymathbb{0}_{l_{L},l_{L-1}}, \mymathbb{0}_{l_L} \rp \rp + \end{align} + Thus, by (\ref{5.4.12}), we have that: + \begin{align} + \real(\zero_{l_0,l_1,...,l_L} \oplus\nu) &= \begin{bmatrix} + 0 \quad W_L + \end{bmatrix} \begin{bmatrix} + 0 \nonumber \\ + W_{L-1}(...(W_2 \lp W_1x+b_1 \rp +b_2)+...)+b_{L-1} + \end{bmatrix} + b_L \\ + &= W_L(W_{L-1}(...W_2\lp W_1x+b_1 \rp +b_2)+...)+b_{L-1})+b_L + \end{align} + \begin{align} + \real(\nu \oplus \zero_{l_0,l_1,...,l_L}) &= \begin{bmatrix} + W_L \quad 0 + \end{bmatrix} \begin{bmatrix} + W_{L-1}(...(W_2 \lp W_1x+b_1 \rp +b_2)+...)+b_{L-1} \nonumber \\ + 0 + \end{bmatrix} + b_L \\ + &= W_L(W_{L-1}(...W_2\lp W_1x+b_1 \rp +b_2)+...)+b_{L-1})+b_L + \end{align} + And finally: + \begin{align}\label{5.4.17} + \real(\nu) = W_L(W_{L-1}(...W_2\lp W_1x+b_1 \rp +b_2)+...)+b_{L-1})+b_L + \end{align} + This completes the proof. +\end{proof} +\begin{lemma}\label{5.4.8} + Given neural networks $\nu_1,\nu_2,\nu_3 \in \neu$ with fixed depth $L$, fixed starting width of $l_0$ and fixed finishing width of $l_L$, it is then the case that $\real\lp \lp \nu_1 \oplus \nu_2 \rp \oplus \nu_3 \rp = \real \lp \nu_1 \oplus \lp \nu_2 \oplus \nu_3 \rp \rp$, i.e. the instantiation with a continuous activation function of $\oplus$ is associative. +\end{lemma} +\begin{proof} + Let $\nu_1 = \lp \lp W^1_1,b^1_1 \rp, \lp W^1_2,b^1_2 \rp, ..., \lp W^1_L,b^1_L \rp \rp$, $\nu_2 = \lp \lp W^2_1,b^2_1 \rp, \lp W^2_2,b^2_2 \rp,..., \lp W^2_L, b^2_L \rp \rp$, and $\nu_3 = \lp \lp W^3_1,b^3_1 \rp ,\lp W^3_2,b^3_2 \rp,..., \lp W^3_L,b^3_L \rp \rp$. Then (\ref{5.4.12}) tells us that: + \begin{align} + \real(\nu_1 \oplus \nu_2) =\begin{bmatrix} + W^1_L \quad W^2_L + \end{bmatrix}\begin{bmatrix} + W^1_{L-1}\lp...\lp W^1_2\lp W^1_1x+b^1_1 \rp + b^1_2 \rp + ... \rp + b^1_{L-1} \\ + W^2_{L-1}\lp...\lp W^2_2 \lp W^2_1x + b^2_1 \rp + b^2_2 \rp +...\rp+b^2_{L-1} + \end{bmatrix} + b^1_L+b^2_L \nonumber + \end{align} + And thus: + \begin{align}\label{5.4.18} + &\real \lp \lp \nu_1 \oplus \nu_2 \rp \oplus \nu_3 \rp \lp x \rp = \nonumber\\ + &\real \lp \begin{bmatrix} + \mathbb{I} \quad W^3_L + \end{bmatrix}\begin{bmatrix} + \begin{bmatrix} + W^1_L \quad W^2_L + \end{bmatrix}\begin{bmatrix} + W^1_{L-1}\lp...\lp W^1_2\lp W^1_1x+b^1_1 \rp + b^1_2 \rp + ... \rp + b^1_{L-1} \\ + W^2_{L-1}\lp...\lp W^2_2 \lp W^2_1x + b^2_1 \rp + b^2_2 \rp +...\rp+b^2_{L-1} + \end{bmatrix} + b^1_L+b^2_L \\ + W^3_{L-1}\lp...\lp W^3_2 \lp W^3_1x + b^3_1 \rp + b^3_2 \rp +...\rp+b^3_{L-1} + \end{bmatrix} +b^3_L \rp + \end{align} + Similarly, we have that: + \begin{align}\label{5.4.19} + &\real_{\act} \lp \nu_1 \oplus \lp \nu_2 \oplus \nu_3 \rp \rp \lp x \rp = \nonumber\\ + &\real \lp \begin{bmatrix} + W^1_L & \mathbb{I} + \end{bmatrix}\begin{bmatrix} + W^1_{L-1}\lp...\lp W^1_2\lp W^1_1x+b^1_1 \rp + b^1_2 \rp + ... \rp + b^1_{L-1} \\ + \begin{bmatrix} + W^2_L \quad W^3_L + \end{bmatrix}\begin{bmatrix} + W^2_{L-1}\lp...\lp W^2_2\lp W^2_1x+b^2_1 \rp + b^2_2 \rp + ... \rp + b^2_{L-1} \\ + W^3_{L-1}\lp...\lp W^3_2 \lp W^3_1x + b^3_1 \rp + b^3_2 \rp +...\rp+b^3_{L-1} + \end{bmatrix} + b^2_L+b^3_L + \end{bmatrix} +b^1_L \rp + \end{align} + Note that the associativity of matrix-vector multiplication ensures that (\ref{5.4.18}) and (\ref{5.4.19}) are the same. +\end{proof} +\begin{definition}[Commutative Semi-group] +%TODO: Modify the monoid definition; the additive identity is not unique. + A set $X$ equipped with a binary operation $*$ is called a monoid if: + \begin{enumerate}[label = (\roman*)] + \item for all $x,y,z \in X$ it is the case that $(x *y)*z = x*(y*z)$ and + \item for all $x,y \in X$ it is the case that $x*y=y*x$ + \end{enumerate} +\end{definition} +\begin{theorem} + For fixed depth and layer widths, the set of instantiated neural networks $\nu \in \neu$ form a commutative semi-group under the operation of $\oplus$. +\end{theorem} +\begin{proof} + This is a consequence of Lemmas \ref{5.4.6}, \ref{5.4.7}, and \ref{5.4.8}. +\end{proof} +\begin{lemma}\label{5.5.11}\label{nn_sum_is_sum_nn} + Let $\nu, \mu \in \neu$, with the same length and end-widths. It is then the case that $\real_{\act} \lp \nu \oplus \mu \rp = \real_{\act}\lp \nu \rp + \real_{\act}\lp \mu \rp$. +\end{lemma} +\begin{proof} + Let $\nu = \lp \lp W_1,b_1 \rp, \lp W_2,b_2 \rp,...,\lp W_L,b_L \rp \rp$ and $\mu = \lp \lp W'_1,b'_1 \rp, \lp W_2',b_2'\rp,...,\lp W_L',b_L' \rp \rp $. Note now that by (\ref{5.4.12}) we have that: + \begin{align}\label{5.5.20} + \real_{\act}\lp \nu \rp = W_L \act \lp W_{L-1}(...\act (W_2 \act \lp W_1x+b_1 \rp + b_2) + ... )+ b_{L-1}\rp + b_L + \end{align} + And: + \begin{align} + \real_{\act}\lp \mu \rp = W'_L\act \lp W'_{L-1}(...\act (W_2'\act \lp W_1'x+b_1' \rp + b_2') + ... )+ b_{L-1}'\rp + b_L' + \end{align} + In addition, because of the block matrix structure of the weights of our summands: + \begin{align} + \real_{\act}\lp \nu \oplus \mu \rp \lp x \rp&=\begin{bmatrix} + W_L \quad W'_L + \end{bmatrix}\begin{bmatrix} + \act \lp W_{L-1}(...\act ( W_2\act \lp W_1x+b_1 \rp + b_2) + ... )+ b_{L-1} \rp \\ + \act \lp W'_{L-1}(...\act( W'_2 \act \lp W'_1x + b'_1 \rp + b'_2)+...)+b'_{L-1} \rp + \end{bmatrix} + b_L+b'_L \label{5.4.12} \nonumber\\ + &= W_L \act \lp W_{L-1}(...\act (W_2 \act \lp W_1x+b_1 \rp + b_2) + ... )+ b_{L-1}\rp + b_L \nonumber \\ + &+ W'_L\act \lp W'_{L-1}(...\act (W_2'\act \lp W_1'x+b_1' \rp + b_2') + ... )+ b_{L-1}'\rp + b_L' \nonumber \\ + &=\real_{\act} \lp \nu\rp \lp x \rp + \real_{\act} \lp \mu\rp \lp x \rp + \end{align} + This proves the lemma. +\end{proof} +\begin{lemma}\label{nn_sum_cont} + Let $n\in \N$. Let $\nu_1,\nu_2,...,\nu_n \in \neu$. It is then the case that: + \begin{align} + \real_{\act}\lp \bigoplus^n_{i=1} \nu_i \rp = \sum^n_{i=1} \real_{\rect} \lp \nu_i\rp + \end{align} +\end{lemma} + +\begin{proof} + This is the consequence of a finite number of applications of Lemma \ref{5.5.11}. +\end{proof} + + +\subsection{Sum of ANNs of Unequal Depth But Same End-widths} +\begin{definition}[Sum of ANNs of different depths but same end widths] + Let $n\in \N$. Let $\nu_1,\nu_2,...,\nu_n \in \neu$ such that they have the same end widths. We define the neural network $\dplus_{i=1}^n\nu_i \in \neu$, the neural network sum of neural networks of unequal depth as: + \begin{align} + \dplus^n_{i=1}\nu_i \coloneqq \lp \sm_{n,\out(\nu_2)} \bullet \lb \DDiamond^v_{i=u}\nu_i \rb \bullet \cpy_{n,\inn(\nu_1)} \rp + \end{align} +\end{definition} +\begin{lemma}\label{lem:diamondplus} + Let $n\in \N$. Let $\nu_1,\nu_2 \in \neu$ and assume also that they have the same end-widths. It is then the case that: + \begin{align} + \real_{\rect}\lp \nu_1 \dplus \nu_2\rp \lp x\rp = \real_{\rect}\lp \nu_1\rp + \real_{\rect}\lp \nu_2\rp + \end{align} +\end{lemma} +\begin{proof} + Note that Lemma \ref{6.2.2} tellls us that for all $n\in \N$ it is the case that $\real_{\rect} \lp \tun_n\rp \lp x\rp = x$. This combined with Lemma \ref{comp_prop} then tells us that for all $n\in \N$ it is the case for all $\nu \in \neu$ that: + \begin{align} + \real_{\rect} \lp \tun_n \bullet \nu \rp \lp x\rp = \real_{\rect} \lp \nu \rp \lp x\rp + \end{align} + Thus, this means that: + \begin{align} + \real_{\rect} \lp \nu_1 \dplus \nu_2\rp \lp x \rp &= \lp \sm_{n,\out(\nu_2)} \bullet \lb \nu_1 \DDiamond \nu_2\rb \bullet \cpy_{n,\inn(\nu_1)} \rp \nonumber\\ + &= \real_{\rect}\lp \nu_1\rp \lp x \rp + \real_{\rect} \lp \nu_2\rp \lp x \rp + \end{align} + This then proves the lemma. +\end{proof} +\begin{lemma} + Let $n \in \N$. Let $\nu_1,\nu_2,...,\nu_n \in \neu$. Let it also be the case that they have the same end-widths. It is then the case that: + \begin{align} + \real_{\rect}\lp \dplus^n_{i=1}\nu_i\rp \lp x\rp = \sum^n_{i=1}\real_{\rect}\lp \nu_i\rp \lp x \rp + \end{align} +\end{lemma} +\begin{proof} + This is a consequence of a finite number of applications of Lemma \ref{lem:diamondplus}. +\end{proof} + +\section{Linear Combinations of ANNs and Their Properties} +\begin{definition}[Scalar left-multiplication with an ANN]\label{slm} + Let $\lambda \in \R$. We will denote by $(\cdot ) \triangleright (\cdot ): \R \times \neu \rightarrow \neu$ the function that satisfy for all $\lambda \in \R$ and $\nu \in \neu$ that $\lambda \triangleright \nu = \aff_{\lambda \mathbb{I}_{\out(\nu)},0} \bullet \nu$. +\end{definition} +\begin{definition}[Scalar right-multiplication with an ANN] + Let $\lambda \in \R$. We will denote by $(\cdot) \triangleleft (\cdot): \neu \times \R \rightarrow \neu$ the function satisfying for all $\nu \in \neu$ and $\lambda \in \R$ that $\nu \triangleleft \lambda = \nu \bullet \aff_{\lambda \mathbb{I}_{\inn(\nu)},0}$. +\end{definition} +\begin{remark} + Note that whereas $\lambda \in \R$, the actual neural network in question, properly speaking, must always be referred to as $\lambda \triangleright$ or $\triangleleft\lambda$, and we shall do so whenever this comes up in any neural network diagrams. This is by analogy with, for example, $\log_\lambda$ or $\sqrt[\lambda ]{}$ for $\lambda \neq 0$, where the argument $\lambda$ is generally always written except for $\lambda = 10$ for the logarithm or $\lambda = 2$ for the root. +\end{remark} +\begin{remark} + For an \texttt{R} implementation, see Listing \ref{scalar_mult} +\end{remark} +\begin{lemma}\label{5.6.3} + Let $\lambda \in \R$ and $\nu \in \neu$. it is then the case that: + \begin{enumerate}[label = (\roman*)] + \item $\lay(\lambda \triangleright \nu) = \lay(\nu)$ + \item For all $\act \in C(\R, \R)$ that $\real_{\act}(\lambda \triangleright \nu) \in C \lp \R^{\inn(\nu)}, \R^{\out(\nu)} \rp $ + \item For all $\act \in C(\R,\R)$, and $x \in \R^{\inn(\nu)}$ that: + \begin{align} + \real_{\act} \lp \lambda \triangleright \nu \rp = \lambda \real_{\act}(\nu) + \end{align} + \end{enumerate} +\end{lemma} +\begin{proof} + Let $\nu \in \neu$ such that $\lay(\nu) = \lp l_1,l_2,...,l_L \rp$ and $\dep(\nu) = L$ where $l_1,l_2,...,l_L,L \in \N$. Then Item (i) of Lemma $\ref{5.3.2}$ tells us that: + \begin{align} + \lay \lp \aff_{\mathbb{I}_{\out(\nu)},0}\rp = \lp \out(\nu), \out(\nu) \rp + \end{align} + This and Item (i) from Lemma \ref{5.3.3} gives us that: + \begin{align} + \lay \lp \lambda \triangleright \nu \rp = \lay \lp \aff_{\lambda \mathbb{I}_{\out(\nu)},0} \bullet \nu \rp = \lp l_0, l_1,...,l_{L-1}, \out(\nu) \rp = \lay(\nu) + \end{align} + Which proves $(i)$. Item $(ii)-(iii)$ of Lemma $\ref{5.3.2}$ then prove that for all $\act \in C(\R,\R)$, $x \in \R^{\inn(\nu)}$, that $\real_{\act} \lp \lambda \triangleright \nu \rp \in C \lp \R^{\inn(\nu),\out(\nu)} \rp$ given by: + \begin{align} + \lp \real_{\act} \lp \lambda \triangleright \nu \rp \rp \lp x \rp &= \lp \real_{\act} \lp \aff_{\lambda \mathbb{I}_{\out(\nu),0}} \bullet \nu \rp \rp \lp x \rp \nonumber\\ + &= \lambda \mathbb{I}_{\out(\nu)} \lp \lp \real_{\act} \lp \nu \rp \rp \lp x \rp \rp = \lambda \lp \lp \real_{\act} \lp \nu \rp \rp \lp x \rp \rp + \end{align} + This establishes Items (ii)\textemdash(iii), completing the proof. +\end{proof} + +\begin{lemma}\label{5.6.4} + Let $\lambda \in \R$ and $\nu \in \neu$. It is then the case that: + \begin{enumerate}[label = (\roman*)] + \item $\lay(\nu \triangleleft \lambda) = \lay(\nu)$ + \item For all $\act \in C \lp \R, \R \rp$ that $\real_{\act}(\nu \triangleleft \lambda) \in C \lp \R^{\inn(\nu)}, \R^{\out(\nu)} \rp$ + \item For all $\act \in C \lp \R, \R \rp$, and $x \in \R^{\inn(\nu)}$ that: + \begin{align} + \real_{\act} \lp \nu \triangleleft \lambda \rp = \real_{\act}(\nu)\lp \lambda x \rp + \end{align} + \end{enumerate} +\end{lemma} + \begin{proof} + Let $\nu \in \neu$ such that $\lay(\nu) = \lp l_1,l_2,...,l_L \rp$ and $\dep(\nu) = L$ where $\l_1,l_2,...,l_L, L \in \N$. Then Item (i) of Lemma \ref{5.3.2} tells us that: + \begin{align} + \lay \lp \aff_{\mathbb{I}_{\inn(\nu)},0} \rp = \lp \inn(\nu), \inn(\nu) \rp + \end{align} + This and Item (iv) of Lemma \ref{5.3.3} tells us that: + \begin{align} + \lay(\nu \triangleleft\lambda) = \lay \lp \nu \bullet \aff_{\lambda \mathbb{I}_{\inn(\nu)}}\rp = \lp \inn(\nu), l_1,l_2,...,l_L \rp = \lay(\nu) + \end{align} + Which proves $(i)$. Item (v)--(vi) of Lemma \ref{5.3.3} then prove that for all $\act \in C(\R,\R)$, $x \in \R^{\inn(\nu)}$ that $\real_{\act} \lp \nu \triangleleft \lambda \rp \in C\lp \R^{\inn(\nu),\out(\nu)} \rp$ given by: + \begin{align} + \lp \real_{\act} \lp \nu \triangleleft \lambda \rp \rp \lp x \rp &= \lp \real_{\act} \lp \nu \bullet \aff_{\lambda \mathbb{I}_{\inn(\nu),0}} \rp \rp \lp x \rp \nonumber\\ + &= \lp \real_{\act} \lp \nu \rp \rp \lp \aff_{\lambda \mathbb{I}_{\inn(\nu)}} \rp \lp x \rp \nonumber\\ + &= \lp \real_{\act} \lp \nu \rp \rp \lp \lambda x \rp + \end{align} + This completes the proof. + \end{proof} + +\begin{lemma}\label{scalar_right_mult_distribution} + Let $\nu,\mu \in \neu$ with the same length and end-widths, and $\lambda \in \R$. It is then the case, for all $\act \in C \lp \R, \R \rp$ that: + \begin{align} + \real_{\act} \lp \lp \nu \oplus \mu \rp \triangleleft \lambda \rp \lp x \rp &= \real_{\act} \lp \lp \nu \triangleleft \lambda \rp \oplus \lp \mu \triangleleft \lambda \rp \rp \lp x \rp \nonumber\\ + &= \lp \real_{\act}\lp \nu \rp \rp \lp \lambda x \rp + \lp \real_{\act} \lp \mu \rp \rp \lp \lambda x \rp \nonumber + \end{align} +\end{lemma} +\begin{proof} + Let $\nu = \lp \lp W_1,b_1 \rp, \lp W_2,b_2 \rp,...,\lp W_L,b_L \rp \rp$ and $\mu = \lp \lp W'_1,b'_1 \rp, \lp W'_2,b'_2 \rp,...,\lp W'_L,b'_L \rp \rp$. Then from Lemma \ref{5.6.4} and (\ref{5.4.12}) we have that: + \begin{align} + &\lp \real_{\act}\lp \nu \oplus \mu \rp \triangleleft \lambda \rp \lp x \rp \nonumber\\ &= \lp \real_{\act} \lp \nu \oplus \mu \rp \rp \lp \lambda x \rp \nonumber\\ + &= \begin{bmatrix} + W_L \quad W'_L + \end{bmatrix}\begin{bmatrix} + \inst_{\rect} \lp W_{L-1}(...(\inst_{\rect} \lp W_2\lp \inst_{\rect} \lp W_1\lambda x+b_1 \rp \rp + b_2)\rp + ... )+ b_{L-1}\rp \\ + \inst_{\rect} \lp W'_{L-1}(...(\inst_{\rect} \lp W'_2\lp \inst_{\rect} \lp W'_1\lambda x+b'_1 \rp \rp + b'_2)\rp + ... )+ b'_{L-1}\rp \\ + \end{bmatrix} + b_L+b'_L \nonumber + \end{align} + Note that: + \begin{align} + \lp \real_{\act} \lp \nu \rp \rp \lp \lambda x \rp = W_L \cdot \inst_{\rect} \lp W_{L-1}(...(\inst_{\rect} \lp W_2\lp \inst_{\rect} \lp W_1\lambda x+b_1 \rp \rp + b_2)\rp + ... )+ b_{L-1}\rp + b_L + \end{align} + and that: + \begin{align} + \lp \real_{\act} \lp \mu \rp \rp \lp \lambda x \rp = W'_L\cdot\inst_{\rect} \lp W'_{L-1}(...(\inst_{\rect} \lp W'_2\lp \inst_{\rect} \lp W'_1\lambda x+b'_1 \rp \rp + b'_2)\rp + ... )+ b'_{L-1}\rp + b'_L + \end{align} + This, together with Lemma \ref{5.5.11}, completes the proof. +\end{proof} +\begin{lemma}\label{scalar_left_mult_distribution} + Let $\nu,\mu \in \neu$ with the same length and end-widths, and $\lambda \in \R$. It is then the case, for all $\act \in C \lp \R, \R \rp$ that: + \begin{align} + \real_{\act} \lp \lambda \triangleright\lp \nu \oplus \mu \rp \rp \lp x \rp &= \real_{\act} \lp \lp \lambda \triangleright\nu \rp \oplus \lp \lambda \triangleright\mu \rp \rp \lp x \rp \nonumber\\ + &= \lambda \cdot \lp \real_{\act}\lp \nu \rp \rp \lp x \rp + \lambda \cdot \lp \real_{\act} \lp \mu \rp \rp \lp x \rp \nonumber + \end{align} +\end{lemma} +\begin{proof} + Let $\nu = \lp \lp W_1,b_1 \rp, \lp W_2,b_2 \rp,...,\lp W_L,b_L \rp \rp$ and $\mu = \lp \lp W'_1,b'_1 \rp, \lp W'_2,b'_2 \rp,...,\lp W'_L,b'_L \rp \rp$. Then from Lemma \ref{5.6.4} and (\ref{5.4.12}) we have that: + \begin{align} + & \real_{\act}\lp \lambda \lp \nu \oplus \mu \rp \rp \lp x \rp \nonumber\\ &= \real_{\act} \lp \lambda \triangleright \lp \nu \oplus \mu \rp\rp \lp \lambda x \rp \nonumber\\ + &= \lambda \cdot \begin{bmatrix} + W_L \quad W'_L + \end{bmatrix}\begin{bmatrix} + \inst_{\rect} \lp W_{L-1}(...(\inst_{\rect} \lp W_2\lp \inst_{\rect} \lp W_1 x+b_1 \rp \rp + b_2)\rp + ... )+ b_{L-1}\rp \\ + \inst_{\rect} \lp W'_{L-1}(...(\inst_{\rect} \lp W'_2\lp \inst_{\rect} \lp W'_1x+b'_1 \rp \rp + b'_2)\rp + ... )+ b'_{L-1}\rp \\ + \end{bmatrix} + b_L+b'_L \nonumber + \end{align} + Note that: + \begin{align} + \lambda\cdot\lp \real_{\act} \lp \nu \rp \rp \lp x \rp = W_L \cdot \inst_{\rect} \lp W_{L-1}(...(\inst_{\rect} \lp W_2\lp \inst_{\rect} \lp W_1x+b_1 \rp \rp + b_2)\rp + ... )+ b_{L-1}\rp + b_L + \end{align} + and that: + \begin{align} + \lambda \cdot \lp \real_{\act} \lp \mu \rp \rp \lp x \rp = W'_L\cdot\inst_{\rect} \lp W'_{L-1}(...(\inst_{\rect} \lp W'_2\lp \inst_{\rect} \lp W'_1 x+b'_1 \rp \rp + b'_2)\rp + ... )+ b'_{L-1}\rp + b'_L + \end{align} + This, together with Lemma \ref{5.5.11}, completes the proof. +\end{proof} +\begin{lemma}\label{5.6.5} + Let $u,v \in \Z$ with $u \leqslant v$ and $n = v-u+1$. Let $\lambda_u,\lambda_{u+1},..., \lambda_v \in \R$. Let $\nu_u, \nu_{u+1},...,\nu_v, \mu \in \neu$, $B_{u}, B_{u+1},...,B_v \in \R^{\inn(\mu)}$ satisfy that $\lay (\nu_u) = \lay(\nu_{u+1}) = ...= \lay(\nu_v)$ and further that: + \begin{align} + \mu = \lb \oplus^v_{i=u} \lp c_i \triangleright \lp \nu_i \bullet \aff_{\mathbb{I}_{\inn(\nu_1)},B_i} \rp \rp \rb + \end{align} + It then holds: + \begin{enumerate}[label = (\roman*)] + \item That: + \begin{align} + \lay (\mu) &= \lp \inn(\nu_u), \sum^v_{i=u} \wid_1 \lp \nu_u \rp , \sum^v_{i=u} \wid_2 \lp \nu_u \rp,..., \sum^v_{i=u} \wid_{\dep(\nu_u)-1} \lp \nu_u \rp , \out(\nu_u) \rp \nonumber\\ + &= \lp \inn(\nu_u), n\wid_1(\nu_u), n\wid_2(\nu_u),...,n\wid_{\dep(\nu_u -1)}, \out(\nu_u) \rp \nonumber + \end{align} + \item that for all $\act \in C \lp \R ,\R \rp$, that $\real_{\act} (\mu) \in C \lp \R^{\inn(\nu_u)}, \R^{\out(\nu_u)} \rp $, and + \item for all $\act \in C \lp \R, \R \rp $ and $x \in \R^{\inn(\nu_u)}$ that: + \begin{align} + \lp \real_{\act} \lp \mu \rp \rp \lp x \rp = \sum^v_{i=u} c_i \lp \real_{\act} \lp \nu_i \rp \rp \lp x + B_i \rp + \end{align} + \end{enumerate} +\end{lemma} +\begin{proof} + Assume hypothesis that $\lay(\nu_u) = \lay(\nu_{u+1}) = ... = \lay(\nu_v)$. Note that Item (i) of Lemma \ref{5.3.2} gives us that for all $i \in \{u,u+1,...,v\}$ that: + \begin{align} + \lay \lp \aff_{\mathbb{I}_{\inn(\nu_i),B_i}} \rp = \lay \lp \aff_{\mathbb{I}_{\inn(\nu_u)}} \rp = \lp \inn \lp \nu_u \rp, \inn \lp \nu_u \rp \rp \in \N^2 + \end{align} + This together with Lemma \ref{comp_prop}, Item (i), assures us that for all $i \in \{ u,u+1,...,v\}$ it is the case that: + \begin{align}\label{5.3.15} + \lay\lp \nu_i \bullet \aff_{\mathbb{I}_{\inn(\nu_i)}, B_i} \rp = \lp \inn(\nu_u), \wid_1 \lp \nu_u \rp, \wid_2 \lp \nu_u \rp,..., \wid_{\dep(\nu_u)} \lp \nu_u \rp \rp + \end{align} + This and \cite[Lemma~3.14, Item~(i)]{Grohs_2022} tells us that for all $i \in \{u,u+1,...,v\}$ it is the case that: + \begin{align}\label{5.6.13} + \lay \lp c_i \triangleright \lp \nu_i \bullet \aff_{\mathbb{I}_{\inn(\nu_i), B_i}} \rp \rp = \lay \lp \nu_i \bullet \aff_{\mathbb{I}_{\inn(\nu_i),B_i}} \rp + \end{align} + This, (\ref{5.3.15}), and \cite[Lemma~3.28, Item~(ii)]{Grohs_2022} then yield that: + \begin{align} + \lay(\mu) &= \lay \lp \oplus^v_{i=u} \lp c_i \triangleright \lp \nu_i \bullet \aff_{\mathbb{I}_{\inn(\nu_i),B_i}} \rp \rp \rp \nonumber\\ + &= \lp \inn(\nu_u), \sum^v_{i=u} \wid_1 \lp \nu_u \rp,\sum^v_{i=u} \wid_2 \lp \nu_u \rp,..., \sum^v_{i=u} \wid_{\dep(\nu_u)-1} \lp \nu_u \rp , \out \lp \nu_u \rp \rp \nonumber \\ + &= \lp \inn(\nu_u), n\wid_1(\nu_u), n\wid_2 ( \nu_u),...,n\wid_{\dep(\nu_u)-1}(\nu_u), \out(\nu_u) \rp + \end{align} + This establishes item (i). Items (v) and (vi) from Lemma \ref{5.3.3} tells us that for all $i \in \{ u,u+1,...,v\}$, $\act \in C(\R,\R)$, $x \in \R^{\inn(\nu_u)}$, it is the case that $\real_{\act}\lp \nu_i \bullet \aff_{\mathbb{I}_{\inn(\nu_i)}, B_i} \rp \in C \lp \R^{\inn(\nu_u)}, \R^{\out(\nu_u)} \rp $ and further that: + \begin{align} + \lp \real_{\act} \lp \nu_i \bullet \aff_{\mathbb{I}_{\inn(\nu_i)},b_i} \rp \rp \lp x \rp = \lp \real_{\act} \lp \nu_i \rp \rp \lp x + b_i \rp + \end{align} + This along with \cite[Lemma~3.14]{Grohs_2022} ensures that for all $i \in \{u,u+1,...,v\}$, $\act \in C \lp \R, \R \rp$, $x \in \R^{\inn(\nu_u)}$, it is the case that: + \begin{align} + \real_{\act} \lp c_i \triangleright \lp \nu_i \bullet \aff_{\mathbb{I}_{\inn(\nu_i)},B_i} \rp \rp \in C \lp \R^{\inn(\nu_u)}, \R^{\out(\nu_u)}\rp + \end{align} + and: + \begin{align} + \lp \real_{\act} \lp c_i \triangleright \lp \nu_i \bullet \aff_{\mathbb{I}_{\inn(\nu_i)},b_i} \rp \rp \rp \lp x \rp = c_i \lp \real_{\act} \lp \nu_i \rp \rp \lp x + b_i \rp + \end{align} + Now observe that \cite[Lemma~3.28]{Grohs_2022} and (\ref{5.6.13}) ensure that for all $\act \in C \lp \R, \R \rp$, $x \in \R^{\inn(\nu_u)}$, it is the case that $\real_{\act} \lp \mu \rp \in C \lp \R^{\inn(\nu_u)}, \R^{\out(\nu_u)} \rp$ and that: + \begin{align} + \lp \real_{\act} \lp \mu \rp \rp \lp x \rp &= \lp \real_{\act} \lp \oplus^v_{i=u} \lp c_i \triangleright \lp \nu_i \bullet \aff_{\mathbb{I}_{\inn(\nu_i)},b_i} \rp \rp \rp \rp \lp x \rp \nonumber\\ + &= \sum^v_{i=u} \lp \real_{\act} \lp c_i \triangleright \lp \nu_i \bullet \aff_{\mathbb{I}_{\inn(\nu_i)},b_i} \rp \rp \rp \lp x \rp \nonumber\\ + &=\sum^v_{i=u} c_i \lp \real_{\act} \lp \nu_i \rp \rp \lp x+b_i \rp \nonumber + \end{align} + This establishes items (ii)--(iii); thus, the proof is complete. +\end{proof} + +\begin{lemma}\label{5.6.6} + Let $u,v \in \Z$ with $u \leqslant v$. Let $\lambda_u,\lambda_{u+1},..., \lambda_v \in \R$. Let $\nu_u, \nu_{u+1},...,\nu_v, \mu \in \neu$, $B_{u}, B_{u+1},...,B_v \in \R^{\inn(\mu)}$ satisfy that $\lay (\nu_u) = \lay(\nu_{u+1}) = ...= \lay(\nu_v)$ and further that: + \begin{align} + \mu = \lb \oplus^v_{i=u} \lp \lp \aff_{\mathbb{I}_{\inn(\nu_1)},b_i} \bullet \nu \rp \triangleleft c_i \rp \rb + \end{align} + It then holds: + \begin{enumerate}[label = (\roman*)] + \item That: + \begin{align} + \lay (\mu) &= \lp \inn(\nu_u), \sum^v_{i=u} \wid_1 \lp \nu_u \rp , \sum^v_{i=u} \wid_2 \lp \nu_u \rp,..., \sum^v_{i=u} \wid_{\dep(\nu_u)-1} \lp \nu_u \rp , \out(\nu_u) \rp \nonumber\\ + &= \lp \inn(\nu_u), n\wid_1(\nu_u), n\wid_2(\nu_u),...,n\wid_{\dep(\nu_u -1)}, \out(\nu_u) \rp + \end{align} + \item that for all $\act \in C \lp \R ,\R \rp$, that $\real_{\act} (\mu) \in C \lp \R^{\inn(\nu_u)}, \R^{\out(\nu_u)} \rp $, and + \item for all $\act \in C \lp \R, \R \rp $ and $x \in \R^{\inn(\nu_u)}$ that: + \begin{align} + \lp \real_{\act} \lp \mu \rp \rp \lp x \rp = \sum^v_{i=u} \lp \real_{\act} \lp \nu_i \rp \rp \lp c_ix + b_i \rp + \end{align} + \end{enumerate} +\end{lemma} +\begin{proof} + Assume hypothesis that $\lay(\nu_u) = \lay(\nu_{u+1}) = ... = \lay(\nu_v)$. Note that Item (i) of Lemma \ref{5.3.2} gives us that for all $i \in \{u,u+1,...,v\}$ that: + \begin{align} + \lay \lp \aff_{\mathbb{I}_{\inn(\nu_i),B_i}} \rp = \lay \lp \aff_{\mathbb{I}_{\inn(\nu_u)}} \rp = \lp \inn \lp \nu_u \rp, \inn \lp \nu_u \rp \rp \in \N^2 + \end{align} + Note then that Lemma \ref{comp_prop}, Item (ii), tells us that for all $i \in \{u,u+1,...,v\}$ it is the case that: + \begin{align}\label{5.6.22} + \lay\lp \aff_{\mathbb{I}_{\inn(\nu_i)}, B_i} \bullet \nu \rp = \lp \inn(\nu_u), \wid_1 \lp \nu_u \rp, \wid_2 \lp \nu_u \rp,..., \wid_{\dep(\nu_u)} \lp \nu_u \rp \rp + \end{align} + This and Item (i) of Lemma \ref{5.6.4} tells us that for all $i \in \{u,u+1,...,v\}$ it is the case that: + \begin{align}\label{5.6.23} + \lay \lp \lp \aff_{\mathbb{I}_{\inn(\nu_i), b_i}} \bullet \nu \rp \triangleleft c_i \rp = \lay \lp \aff_{\mathbb{I}_{\inn(\nu_i),b_i} } \bullet\nu \rp + \end{align} + This, (\ref{5.6.22}), and \cite[Lemma~3.28, Item ~(ii)]{Grohs_2022} tell us that: + \begin{align} + \lay(\mu) &= \lay \lp \oplus^v_{i=u} \lp \lp \aff_{\mathbb{I}_{\inn(\nu_i),b_i}} \bullet \nu_i\rp \triangleleft c_i\rp \rp \nonumber\\ + &= \lp \inn(\nu_u), \sum^v_{i=u} \wid_1 \lp \nu_u \rp,\sum^v_{i=u} \wid_2 \lp \nu_u \rp,..., \sum^v_{i=u} \wid_{\dep(\nu_u)-1} \lp \nu_u \rp , \out \lp \nu_u \rp \rp \nonumber \\ + &= \lp \inn(\nu_u), n\wid_1(\nu_u), n\wid_2 ( \nu_u),...,n\wid_{\dep(\nu_u)-1}(\nu_u), \out(\nu_u) \rp + \end{align} + This establishes Item (i). Items (i) and (ii) from Lemma \ref{5.3.3} tells us that for all $i \in \{ u,u+1,...,v\}$, $\act \in C(\R,\R)$, $x \in \R^{\inn(\nu_u)}$, it is the case that $\real_{\act}\lp \nu_i \bullet \aff_{\mathbb{I}_{\inn(\nu_i)}, B_i} \rp \in C \lp \R^{\inn(\nu_u)}, \R^{\out(\nu_u)} \rp $ and further that: + \begin{align} + \lp \real_{\act} \lp \aff_{\mathbb{I}_{\inn(\nu_i)},b_i} \bullet \nu_i\rp \rp \lp x \rp = \lp \real_{\act} \lp \nu_i \rp \rp \lp x \rp + b_i + \end{align} + This along with Lemma \ref{5.6.4} ensures that for all $i \in \{u,u+1,...,v\}$, $\act \in C \lp \R, \R \rp$, $x \in \R^{\inn(\nu_u)}$, it is the case that: + \begin{align} + \real_{\act} \lp \lp \aff_{\mathbb{I}_{\inn(\nu_i)},b_i} \bullet \nu_i\rp \triangleleft c_i\rp \in C \lp \R^{\inn(\nu_u)}, \R^{\out(\nu_u)}\rp + \end{align} + and: + \begin{align} + \lp \real_{\act} \lp \lp \aff_{\mathbb{I}_{\inn(\nu_i)},b_i} \bullet \nu_i \rp \triangleleft c_i \rp \rp \lp x \rp = \lp \real_{\act} \lp \nu_i \rp \rp \lp c_i x + b_i \rp + \end{align} + Now observe that \cite[Lemma~3.28]{Grohs_2022} and (\ref{5.5.14}) ensure that for all $\act \in C \lp \R, \R \rp$, $x \in \R^{\inn(\nu_u)}$, it is the case that $\real_{\act} \lp \mu \rp \in C \lp \R^{\inn(\nu_u)}, \R^{\out(\nu_u)} \rp$ and that: + \begin{align} + \lp \real_{\act} \lp \mu \rp \rp \lp x \rp &= \lp \real_{\act} \lp \oplus^v_{i=u} \lp \aff_{\mathbb{I}_{\inn(\nu_i)},b_i} \bullet \nu_i \rp \rp \triangleleft c_i \rp \lp x \rp \\ + &= \sum^v_{i=u} \lp \real_{\act} \lp \lp \aff_{\mathbb{I}_{\inn(\nu_i)},b_i} \bullet \nu_i\rp \triangleleft c_i \rp \rp \lp x \rp\\ + &=\sum^v_{i=u} \lp \real_{\act} \lp \nu_i \rp \rp \lp c_i x+b_i \rp \nonumber + \end{align} + This establishes items (ii)--(iii); thus, the proof is complete. +\end{proof} +\begin{lemma}\label{5.6.9} + Let $L \in \N$, $u,v \in \Z$ with $u\leqslant v$. Let $c_u, c_{u+1},...,c_v \in \R$. $\nu_u, \nu_{u+1},...,\nu_v, \mu, \mathfrak{I} \in \neu$, $B_u, B_{u+1},...,B_v \in \R^{\inn(\nu_u)}$, $\act \in C\lp \R, \R \rp$, satisfy for all $j \in \N \cap [u,v]$ that $L = \max_{i\in \N \cap \lb u,v \rb} \dep(\nu_i)$, $\inn(\nu_j) = \inn(\nu_u)$, $\out(\nu_j) = \inn(\mathfrak{I})= \out(\mathfrak{I})$, $\hid(\mathfrak{I}) = 1$, $\real_{\act} (\mathfrak{I}) = \mathbb{I}_\R$, and that: + \begin{align} + \mu = \boxplus^v_{i = u, \mathfrak{I}} \lp c_i \triangleright \lp \nu_i \bullet \aff_{\mathbb{I}_{\inn(\nu_i), },b_i} \rp \rp + \end{align} + We then have: + \begin{enumerate}[label = (\roman*)] + \item it holds that: + \begin{align} + \lay(\mu) = \lp \inn(\nu_u ), \sum^v_{i=u}\wid_1 \lp \ex_{L,\mathfrak{I}} \lp \nu_i \rp \rp ,\sum^v_{i=u}\wid_2 \lp \ex_{L,\mathfrak{I}} \lp \nu_i\rp\rp,...,\sum^v_{i=u} \wid_{L-1} \lp \ex_{I,\mathfrak{I}} \lp \nu_i \rp , \out \lp \nu_u \rp \rp \rp + \end{align} + \item it holds that $\real_{\act}(\mu) \in C \lp \R^{\inn(\nu_u)}, \R^{\out(\nu_u)} \rp $, and that, + \item it holds for all $ x \in \R^{\inn(\nu_u)}$ that: + \begin{align} + \lp \real_{\act} \lp \mu \rp \rp \lp x \rp = \sum^v_{i=u} c_i \lp \real_{\act} \lp \nu_i \rp \rp \lp x + b_i\rp + \end{align} + \end{enumerate} +\end{lemma} +\begin{proof} + Note that Item(i) from Lemma \ref{5.6.5} establish Item(i) and (\ref{5.5.20}); in addition, items (v) and (vi) from Lemma \ref{5.3.3} tell us that for all $i \in \N \cap [u,v]$, $x \in \R^{\inn(\nu_u}$, it holds that $\real_{\act} \lp \nu_i \bullet \aff_{\mathbb{I}_{\inn(\nu_i)}, B_i} \in C \lp \R^{\inn(\nu_u)}, \R^{\out(\nu_u)}\rp \rp $ and further that: + \begin{align} + \lp \real_{\act} \lp \nu_i\bullet \aff_{\mathbb{I}_{\inn(\nu_i)},B_i} \rp \rp \lp x \rp = \lp \real_{\act} \lp \nu_i \rp \rp \lp x + b_k \rp + \end{align} + This, Lemma \ref{5.6.3} and \cite[Lemma~2.14, Item~(ii)]{grohs2019spacetime} show that for all $i \in \N \cap [u,v]$, $x \in \R^{\inn(\nu_u)}$, it holds that: + \begin{align} + \real_{\act} \lp \ex_{L,\mathfrak{I}} \lp c_i \triangleright \lp \nu_i \bullet \aff_{\mathbb{I}_{\inn(\nu_i)},b_i} \rp \rp \rp = \real_{\act}\lp c_i \triangleright \lp \nu_i \bullet \aff_{\mathbb{I}_{\inn(\nu_i)},b_i} \rp \rp \in C\lp \R^{\inn(\nu_u)}, \R^{\out(\nu_u)} \rp + \end{align} + and: + \begin{align} + \lp \real_{\act} \lp \ex_{L,\mathfrak{I}} \lp c_i \triangleright \lp \nu_i \bullet \aff_{\mathbb{I}_{\inn(\nu_i)},b_i} \rp \rp \rp \rp \lp x \rp &= \lp \real_{\act} \lp c_i \triangleright \lp \nu_i \bullet \aff_{\mathbb{I}_{\inn(\nu_i)},b_i} \rp \rp \rp \lp x \rp \nonumber\\ + &= c_i \lp \real_{\act} \lp \nu_i \rp \rp \lp x+b_i \rp + \end{align} + This combined with \cite[Lemma~3.28]{Grohs_2022} and (\ref{5.6.13}) demonstrate that for all $x \in \R^{\inn(\nu_u)}$ it holds that $\real_{\act}\lp \mu \rp \in C\lp \R^{\inn(\nu_u)}, \R^{\out(\nu_u)} \rp $ and that: + \begin{align} + \lp \real_{\act}\lp \mu \rp \rp \lp x \rp &= \lp \real_{\act} \lp \boxplus^v_{i = u, \mathfrak{I}} \lp c_i \triangleright \lp \nu_i \bullet \aff_{\mathbb{I}_{\inn(\nu_i)}} \rp \rp \rp \rp \lp x \rp \nonumber\\ + &= \lp \real_{\act} \lp \oplus^v_{i=u} \ex_{L,\mathfrak{I}} \lp c_i \triangleright \lp \nu_i \bullet \aff_{\mathbb{I}_{\inn(\nu_i)},b_i} \rp \rp \rp \rp\lp x \rp \nonumber \\ + &= \sum^v_{i=u} c_i \lp \real_{\act} \lp \nu_i \rp \rp \lp x+b_i \rp + \end{align} + This establishes Items(ii)--(iii), thus proving the lemma. +\end{proof} +\begin{lemma} + Let $L \in \N$, $u,v \in \Z$ with $u\leqslant v$. Let $c_u, c_{u+1},...,c_v \in \R$. $\nu_u, \nu_{u+1},...,\nu_v, \mu, \mathfrak{I} \in \neu$, $B_u, B_{u+1},...,B_v \in \R^{\inn(\nu_u)}$, $\act \in C\lp \R, \R \rp$, satisfy for all $j \in \N \cap [u,v]$ that $L = \max_{i\in \N \cap \lb u,v \rb} \dep(\nu_i)$, $\inn(\nu_j) = \inn(\nu_u)$, $\out(\nu_j) = \inn(\mathfrak{I})= \out(\mathfrak{I})$, $\hid(\mathfrak{I}) = 1$, $\real_{\act} (\mathfrak{I}) = \mathbb{I}_\R$, and that: + \begin{align} + \mu = \boxplus^v_{i = u, \mathfrak{I}} \lp \lp \aff_{\mathbb{I} _{\inn(\nu_i)},b_i} \bullet \nu_i\rp \triangleleft c_i \rp + \end{align} + We then have: + \begin{enumerate}[label = (\roman*)] + \item it holds that: + \begin{align} + \lay(\mu) = \lp \inn(\nu_u ), \sum^v_{i=u}\wid_1 \lp \ex_{L,\mathfrak{I}} \lp \nu_i \rp \rp ,\sum^v_{i=u}\wid_2 \lp \ex_{L,\mathfrak{I}} \lp \nu_i\rp\rp,...,\sum^v_{i=u} \wid_{L-1} \lp \ex_{L,\mathfrak{I}} \lp \nu_i \rp , \out \lp \nu_u \rp \rp \rp + \end{align} + \item it holds that $\real_{\act}(\mu) \in C \lp \R^{\inn(\nu_u)}, \R^{\out(\nu_u)} \rp $, and that, + \item it holds for all $ x \in \R^{\inn(\nu_u)}$ that: + \begin{align} + \lp \real_{\act} \lp \mu \rp \rp \lp x \rp = \sum^v_{i=u} \lp \real_{\act} \lp \nu_i \rp \rp \lp c_ix + b_i\rp + \end{align} + \end{enumerate} +\end{lemma} +\begin{proof} + Note that Item(i) from Lemma \ref{5.6.6} establish Item(i) and (\ref{5.5.20}); in addition, items (ii) and (iii) from Lemma \ref{5.3.3} tell us that for all $i \in \N \cap [u,v]$, $x \in \R^{\inn(\nu_u}$, it holds that $\real_{\act} \lp \aff_{\mathbb{I}_{\inn(\nu_i)}, B_i} \bullet \nu_i \in C \lp \R^{\inn(\nu_u)}, \R^{\out(\nu_u)}\rp \rp $ and further that: + \begin{align} + \lp \real_{\act} \lp \aff_{\mathbb{I}_{\inn(\nu_i)},B_i} \bullet \nu_i \rp \rp \lp x \rp = \lp \real_{\act} \lp \nu_i \rp \rp \lp x \rp + b_k + \end{align} + This, Lemma \ref{5.6.4} and \cite[Lemma~2.14, Item~(ii)]{grohs2019spacetime} show that for all $i \in \N \cap [u,v]$, $x \in \R^{\inn(\nu_u)}$, it holds that: + \begin{align} + \real_{\act} \lp \ex_{L,\mathfrak{I}} \lp \lp \aff_{\mathbb{I}_{\inn(\nu_i)},b_i} \bullet \nu_i\rp \triangleleft c_i \rp \rp = \real_{\act}\lp \lp \aff_{\mathbb{I}_{\inn(\nu_i)},b_i} \bullet \nu_i \rp \triangleleft c_i\rp \in C\lp \R^{\inn(\nu_u)}, \R^{\out(\nu_u)} \rp + \end{align} + and: + \begin{align} + \lp \real_{\act} \lp \ex_{L,\mathfrak{I}} \lp \lp \aff_{\mathbb{I}_{\inn(\nu_i)},b_i} \bullet \nu_i\rp \triangleleft c_i\rp \rp \rp \lp x \rp &= \lp \real_{\act} \lp c_i \triangleright \lp \nu_i \bullet \aff_{\mathbb{I}_{\inn(\nu_i)},b_i} \rp \rp \rp \lp x \rp \nonumber\\ + &= \lp \real_{\act} \lp \nu_i \rp \rp \lp c_ix+b_i \rp + \end{align} + This and \cite[Lemma~3.28]{Grohs_2022} and (\ref{5.6.23}) demonstrate that for all $x \in \R^{\inn(\nu_u)}$ it holds that $\real_{\act}\lp \mu \rp \in C\lp \R^{\inn(\nu_u)}, \R^{\out(\nu_u)} \rp $ and that: + \begin{align} + \lp \real_{\act}\lp \mu \rp \rp \lp x \rp &= \lp \real_{\act} \lp \boxplus^v_{i = u, \mathfrak{I}} \lp \lp \aff_{\mathbb{I}_{\inn(\nu_i)}} \bullet \nu_i\rp \triangleleft c_i\rp \rp \rp \lp x \rp \nonumber\\ + &= \lp \real_{\act} \lp \oplus^v_{i=u} \ex_{L,\mathfrak{I}} \lp \lp \aff_{\mathbb{I}_{\inn(\nu_i)},b_i} \bullet \nu_i\rp \triangleleft c_i\rp \rp \rp\lp x \rp \nonumber \\ + &= \sum^v_{i=u} \lp \real_{\act} \lp \nu_i \rp \rp \lp c_ix+b_i \rp + \end{align} + This completes the proof. +\end{proof} + +\section{Neural Network Diagrams} + +Conceptually, it will be helpful to construct what are called ``neural network diagrams''. They take inspiration from diagrams typically seen in the literature, for instance, \cite{vaswani_attention_2017}, \cite{arik_tabnet_2021}, and \cite{8099678}. They are constructed as follows. +Lines with arrows indicate the flow of data: + +\begin{center} +\begin{tikzcd} +{} \arrow[rr, "x"] & & {} \\ +{} & & {} \arrow[ll, "x"] +\end{tikzcd} +\end{center} +Named neural networks are always enclosed in boxes with \textsf{serif} fonts: +\begin{center} + \begin{tikzpicture} + % Create a rectangular node with text inside + \node[draw, rectangle] at (0, 0) {$\aff_{a,b}$}; +\end{tikzpicture} +\end{center} +Where possible, we seek to label the arrows going in and going out of a boxed neural network with the appropriate operations that take place: +\begin{center} + \begin{tikzpicture} + % Create a rectangular node with text inside + \node[draw, rectangle] (box) at (0, 0) {$\aff_{a,b}$}; + + % Draw an arrow from left to right going into the box + \draw[<-] (-2, 0) -- (box.west) node[midway, above] {$ax+b$}; + + % Draw an arrow from left to right going out of the box + \draw[<-] (box.east) -- (2, 0) node[midway, above] {$x$}; +\end{tikzpicture} +\end{center} +It is often more helpful to draw the arrows from right to left, as above. + +Stacked neural networks are drawn in adjacent boxes. +\begin{center} + \begin{tikzpicture} + % Create the top box with text inside + \node[draw, rectangle] (topbox) at (0, 1) {$\aff_{a,b}$}; + + % Create the bottom box with text inside + \node[draw, rectangle] (bottombox) at (0, -1) {$\aff_{c,d}$}; + + % Draw an arrow from left to right going into the top box + \draw[<-] (-2, 1) -- (topbox.west) node[midway, above] {$ax+b$}; + + % Draw an arrow from left to right going out of the top box + \draw[<-] (topbox.east) -- (2, 1) node[midway, above] {$x$}; + + % Draw an arrow from left to right going into the bottom box + \draw[<-] (-2, -1) -- (bottombox.west) node[midway, below] {$cx+d$}; + + % Draw an arrow from left to right going out of the bottom box + \draw[<-] (bottombox.east) -- (2, -1) node[midway, below] {$x$}; +\end{tikzpicture} +\end{center} + +For neural networks that take in two inputs and give out one output, we use two arrows going in and one arrow going out: +\begin{center} +\begin{tikzpicture} + % Create the rectangular node with text inside + \node[draw, rectangle] (box) at (0, 0) {$\sm_{2,1}$}; + + % Draw arrow hitting the top right corner of the box + \draw[->] (2, 1) -- (box.north east) node[midway, above right] {$x$}; + + % Draw arrow hitting the bottom right corner of the box + \draw[->] (2, -1) -- (box.south east) node[midway, below right] {$y$}; + + % Draw an arrow going out to the left + \draw[->] (box.west) -- (-2, 0) node[midway, above] {$x+y$}; +\end{tikzpicture} +\end{center} + +For neural networks that take in one input and give out two outputs, we use one arrow going in and two arrows going out: + +\begin{center} +\begin{tikzpicture} + % Create the rectangular node with text inside + \node[draw, rectangle] (box) at (0, 0) {$\cpy_{1,2}$}; + + % Draw arrow hitting the top right corner of the box + \draw[->] (box.north west) -- (-2,1) node[midway, above right] {$x$}; + + % Draw arrow hitting the bottom right corner of the box + \draw[->] (box.south west) -- (-2,-1) node[midway, below right] {$x$}; + + % Draw an arrow going out to the left + \draw[->] (2,0) -- (box.east) node[midway, above] {$x$}; +\end{tikzpicture} +\end{center} + +Thus taking this all together the sum of neural networks $\aff_{a,b},\aff_{c,d} \in \neu$ is given by: + +\begin{center} + \begin{tikzpicture} + % Define nodes + \node[draw, rectangle] (top) at (0, 2) {$\aff_{a,b}$}; + \node[draw, rectangle] (right) at (2, 0) {$\cpy$}; + \node[draw, rectangle] (bottom) at (0, -2) {$\aff_{c,d}$}; + \node[draw, rectangle] (left) at (-2, 0) {$\sm$}; + + % Arrows with labels + \draw[->] (right) -- node[midway, above] {$x$} (top); + \draw[<-] (right) -- node[midway, above] {$x$} (4,0)(right); + \draw[->] (right) -- node[midway, right] {$x$} (bottom); + \draw[->] (top) -- node[midway, left] {$ax+b$} (left); + \draw[->] (bottom) -- node[midway, left] {$cx+d$} (left); + \draw[->] (left) -- node[midway, above] {$ax+b+cx+d$} (-5.5,0); +% \draw[->] (-3,0) -- node[midway, above] {Arrow 6} (left); +\end{tikzpicture} +\end{center} + + + + + + + + + + + + + + + + + + + + diff --git a/Dissertation_unzipped/preamble.tex b/Dissertation_unzipped/preamble.tex new file mode 100644 index 0000000..4421e22 --- /dev/null +++ b/Dissertation_unzipped/preamble.tex @@ -0,0 +1,215 @@ +\documentclass[11pt]{report} +\usepackage{setspace} +\doublespacing +\usepackage[toc,page]{appendix} + +\usepackage{pdfpages} +\usepackage[]{amsmath} +\usepackage[]{amsthm} +\usepackage{mathtools} +\numberwithin{equation}{section} +\usepackage[]{amssymb} +\usepackage[margin=1in]{geometry} +\usepackage[]{soul} +\usepackage[]{bbm} +\usepackage[]{cancel} +\usepackage[]{xcolor} +\usepackage[]{enumitem} +\usepackage{mathrsfs} + +\usepackage{graphicx} +\usepackage{subfigure} + +\usepackage{booktabs} + +\usepackage{hyperref} +\hypersetup{ + pdfauthor={Shakil Rafi}, + pdftitle={Dissertation}, + pdfkeywords={neural-networks, stochastic-processes}, + colorlinks = true, + filecolor = magenta, + urlcolor = cyan +} + + +\usepackage[capitalise]{cleveref} +\usepackage{natbib} +\usepackage{neuralnetwork} +\usepackage{witharrows} +\usepackage{stmaryrd} +\usepackage{stackengine,amssymb,graphicx} + +\usepackage{listings} + +\usepackage{xcolor} + +\definecolor{codegreen}{rgb}{0,0.6,0} +\definecolor{codegray}{rgb}{0.5,0.5,0.5} +\definecolor{codepurple}{rgb}{0.58,0,0.82} +\definecolor{backcolor}{rgb}{0.95,0.95,0.92} + +% Define R language settings +\lstdefinestyle{rstyle}{ + language=R, + basicstyle=\ttfamily\footnotesize, + backgroundcolor = \color{backcolor}, + commentstyle=\color{codegreen}, + keywordstyle=\color{magenta}, + numberstyle=\ttfamily\tiny\color{codegray}, + numbers=left, + stepnumber=1, + frame=single, + breaklines=true, + numbersep = 5pt, + breakatwhitespace=false, + tabsize=4, + morekeywords={install.packages, library, ggplot, aes, geom_bar} +} + +\usepackage{fontspec} +\setmonofont{Fira Code} + + + + + + + +\usepackage{graphicx} + +\DeclareMathAlphabet{\mymathbb}{U}{BOONDOX-ds}{m}{n} + +% \usepackage[]{enumerate} +\setlength\parindent{0pt} + +\DeclareMathOperator{\Trace}{Trace} +\DeclareMathOperator{\Hess}{Hess} +\DeclareMathOperator{\supp}{supp} +\DeclareMathOperator{\domain}{Domain} +\DeclareMathOperator{\lip}{Lip} +\DeclareMathOperator{\var}{Var} +\DeclareMathOperator{\cov}{Cov} +\DeclareMathOperator{\unif}{Unif} +\DeclareMathOperator{\dropout}{Dropout} +\DeclareMathOperator{\bern}{Bern} +\DeclareMathOperator{\norm}{Norm} +\DeclareMathOperator{\diag}{diag} + +\usepackage{tikz-cd} + +\DeclareMathOperator{\rect}{\mathfrak{r}} +\DeclareMathOperator{\param}{\mathsf{P}} +\DeclareMathOperator{\inn}{\mathsf{I}} +\DeclareMathOperator{\out}{\mathsf{O}} +\DeclareMathOperator{\neu}{\mathsf{NN}} +\DeclareMathOperator{\hid}{\mathsf{H}} +\DeclareMathOperator{\lay}{\mathsf{L}} +\DeclareMathOperator{\dep}{\mathsf{D}} +\DeclareMathOperator{\we}{Weight} +\DeclareMathOperator{\bi}{Bias} +\DeclareMathOperator{\aff}{\mathsf{Aff}} +\DeclareMathOperator{\act}{\mathfrak{a}} +\DeclareMathOperator{\real}{\mathfrak{I}} +\DeclareMathOperator{\id}{\mathsf{Id}} +\DeclareMathOperator{\mult}{Mult} +\DeclareMathOperator{\wid}{\mathsf{W}} +\DeclareMathOperator{\sm}{\mathsf{Sum}} +\DeclareMathOperator{\trn}{Trn} +\DeclareMathOperator{\tun}{\mathsf{Tun}} +\DeclareMathOperator{\cpy}{\mathsf{Cpy}} +\DeclareMathOperator{\ex}{\mathfrak{E}} +\DeclareMathOperator{\lin}{Lin} +\DeclareMathOperator{\relu}{\mathsf{ReLU}} +\DeclareMathOperator{\zero}{Zr} +\DeclareMathOperator{\sqr}{\mathsf{Sqr}} +\DeclareMathOperator{\prd}{\mathsf{Prd}} +\DeclareMathOperator{\pwr}{\mathsf{Pwr}} +\DeclareMathOperator{\xpn}{\mathsf{Xpn}} +\DeclareMathOperator{\rem}{\mathsf{Rem}} +\DeclareMathOperator{\tay}{\mathsf{Tay}} +\DeclareMathOperator{\G}{\mathsf{G}} +\DeclareMathOperator{\F}{\mathsf{F}} +\DeclareMathOperator{\U}{\mathsf{U}} +\DeclareMathOperator{\sP}{\mathsf{P}} +\DeclareMathOperator{\linn}{\mathsf{Lin}} +\DeclareMathOperator{\nrm}{\mathsf{Nrm}} +\DeclareMathOperator{\mxm}{\mathsf{Mxm}} +\DeclareMathOperator{\trp}{\mathsf{Trp}} +\DeclareMathOperator{\etr}{\mathsf{Etr}} +\DeclareMathOperator{\lc}{\left\lceil} +\DeclareMathOperator{\rc}{\right\rceil} +\DeclareMathOperator{\csn}{\mathsf{Csn}} +\DeclareMathOperator{\sne}{\mathsf{Sne}} +\DeclareMathOperator{\pln}{\mathsf{Pln}} +\DeclareMathOperator{\pnm}{\mathsf{Pnm}} +\DeclareMathOperator{\inst}{\mathfrak{I}} +\DeclareMathOperator{\rows}{rows} +\DeclareMathOperator{\columns}{columns} + +\DeclareMathOperator{\obj}{obj} +\DeclareMathOperator{\dom}{dom} +\DeclareMathOperator{\cod}{cod} + +\newcommand{\bbP}{\mathbb{P}} +\newcommand{\E}{\mathbb{E}} +\newcommand{\R}{\mathbb{R}} +\newcommand{\Z}{\mathbb{Z}} +\newcommand{\N}{\mathbb{N}} +\newcommand{\p}{\mathfrak{p}} +\newcommand{\mft}{\mathfrak{t}} +\newcommand{\f}{\mathfrak{f}} +\newcommand{\C}{\mathfrak{C}} +\newcommand{\n}{\mathscr{N}} +\newcommand{\lp}{\left(} +\newcommand{\rp}{\right)} +\newcommand{\rb}{\right]} +\newcommand{\lb}{\left[} +\newcommand{\lv}{\left|} +\newcommand{\rv}{\right|} +\newcommand{\la}{\langle} +\newcommand{\ra}{\rangle} +\newcommand{\ve}{\varepsilon} +\newcommand{\les}{\leqslant} +\newcommand{\ges}{\geqslant} + + + +\newcommand\dplus{\ensurestackMath{% + \stackengine{.5pt}{\Diamond}{\scalebox{.75}[1]{$+$}}{O}{c}{F}{F}{L}}} + +\newcommand{\DDiamond}{% + \begin{tikzpicture}[baseline={(0,-0.2ex)}] + \draw[rotate=45] (0,0) rectangle (0.2,0.2); + \draw[rotate=45] (0,0.2) -- (0.2,0); + \end{tikzpicture}% +} + +% Input layer neurons number +\newcommand{\inputnum}{3} + +% Hidden layer neurons number +\newcommand{\hiddennum}{5} + +% Output layer neurons number +\newcommand{\outputnum}{2} + +\newtheorem{theorem}{Theorem}[section] +\newtheorem{corollary}{Corollary}[theorem] +\newtheorem{lemma}[theorem]{Lemma} +\newtheorem{definition}[theorem]{Definition} +\newtheorem{remark}[theorem]{Remark} +\newtheorem{claim}[theorem]{Claim} + + + + + + + + + + + + + diff --git a/Dissertation_unzipped/sharkteeth.png b/Dissertation_unzipped/sharkteeth.png new file mode 100644 index 0000000..0bbb1a6 Binary files /dev/null and b/Dissertation_unzipped/sharkteeth.png differ diff --git a/Dissertation_unzipped/sharktooth.jl b/Dissertation_unzipped/sharktooth.jl new file mode 100644 index 0000000..e7c0d13 --- /dev/null +++ b/Dissertation_unzipped/sharktooth.jl @@ -0,0 +1,47 @@ +using Random +using Distributions +using Plots + +# =============================================================== + +function max_conv_operator(samples, f_samples, input, L) # max convolution operator, with random uniform sampling + return maximum(f_samples .- L .* abs.(input .- samples)) +end + +function sharktooth(f, domain, number_of_sharkteeth, L, plot_arg) + samples = rand(Uniform(domain[1], domain[2]), number_of_sharkteeth) #samples are uniformly taken from domain + f_samples = f.(samples) #y_i are f applied to samples componentwise + x = LinRange(domain[1], domain[2], 10000) #approximant is plotted over a mesh of resolution 10000 + approximant = broadcast(x -> max_conv_operator(samples, f_samples, x, L), x) + error = maximum(abs.(f.(x) - approximant)) + if plot_arg == 1 + plot(x, approximant) + else + return error + end +end + + +function sharktooth_error_plot(L_values, sharktooth_upper_limit, f, domain) + # Initialize an empty plot + p = plot(legend=false, xlabel="Number of Sharkteeth", ylabel="Error") + + for L in L_values + errors = Float64[] # Initialize an empty array to store errors + for i in 1:sharktooth_upper_limit + push!(errors, sharktooth(f, domain[1], domain[2], i, L, 0)) + end + plot!(1:sharktooth_upper_limit, errors, label="L = $L") # Add the plot to the existing figure + end + + # Show the legend + plot!(legend=true) + + # Display the final plot + display(p) +end + +sharktooth_error_plot([1, 2, 3, 4], 150, sin, [0, 30]) + +sharktooth(tanh, [-5, 5], 1500, 1, 1) + diff --git a/Dissertation_unzipped/sharktooth.nb b/Dissertation_unzipped/sharktooth.nb new file mode 100644 index 0000000..d32c942 --- /dev/null +++ b/Dissertation_unzipped/sharktooth.nb @@ -0,0 +1,4236 @@ +(* Content-type: application/vnd.wolfram.mathematica *) + +(*** Wolfram Notebook File ***) +(* http://www.wolfram.com/nb *) + +(* CreatedBy='Mathematica 13.3' *) + +(*CacheID: 234*) +(* Internal cache information: +NotebookFileLineBreakTest +NotebookFileLineBreakTest +NotebookDataPosition[ 158, 7] +NotebookDataLength[ 252704, 4228] +NotebookOptionsPosition[ 251703, 4204] +NotebookOutlinePosition[ 252099, 4220] +CellTagsIndexPosition[ 252056, 4217] +WindowFrame->Normal*) + +(* Beginning of Notebook Content *) +Notebook[{ +Cell[BoxData[{ + RowBox[{ + RowBox[{"TestFunction", "[", + RowBox[{"x_", ",", "y_"}], "]"}], ":=", " ", + RowBox[{ + RowBox[{"x", "^", "2"}], "+", + RowBox[{"y", "^", "2"}], "+", "1"}]}], "\[IndentingNewLine]", + RowBox[{ + RowBox[{"f1", "[", + RowBox[{"x_", ",", "y_"}], "]"}], " ", ":=", " ", + RowBox[{"1.5", " ", "-", " ", + RowBox[{"2", + RowBox[{"Abs", "[", + RowBox[{"x", "-", "0.5", "+", "y", "-", "0.5"}], + "]"}]}]}]}], "\[IndentingNewLine]", + RowBox[{ + RowBox[{"f2", "[", + RowBox[{"x_", ",", "y_"}], "]"}], ":=", " ", + RowBox[{"1.41", " ", "-", " ", + RowBox[{"2", + RowBox[{"Abs", "[", + RowBox[{"x", "-", "0.5", "+", "y", "+", "0.4"}], + "]"}]}]}]}], "\[IndentingNewLine]", + RowBox[{ + RowBox[{"f3", "[", + RowBox[{"x_", ",", "y_"}], "]"}], ":=", + RowBox[{"1.32", "-", + RowBox[{"2", + RowBox[{"Abs", "[", + RowBox[{"x", "+", "0.4", "+", "y", "+", "0.4"}], + "]"}]}]}]}], "\[IndentingNewLine]", + RowBox[{ + RowBox[{"f4", "[", + RowBox[{"x_", ",", "y_"}], "]"}], ":=", + RowBox[{"1.41", "-", + RowBox[{"2", + RowBox[{"Abs", "[", + RowBox[{"x", "+", "0.4", "+", "y", "-", "0.5"}], + "]"}]}]}]}], "\[IndentingNewLine]", + RowBox[{ + RowBox[{"f5", "[", + RowBox[{"x_", ",", "y_"}], "]"}], ":=", + RowBox[{"1.98", "-", + RowBox[{"2", + RowBox[{"Abs", "[", + RowBox[{"x", "-", "0.7", "+", "y", "-", "0.7"}], + "]"}]}]}]}], "\[IndentingNewLine]", + RowBox[{ + RowBox[{"f6", "[", + RowBox[{"x_", ",", "y_"}], "]"}], ":=", + RowBox[{"1.98", " ", "-", + RowBox[{"2", + RowBox[{"Abs", "[", + RowBox[{"x", "-", "0.7", "+", "y", "+", "0.7"}], + "]"}]}]}]}], "\[IndentingNewLine]", + RowBox[{ + RowBox[{"SharktoothFunction", "[", + RowBox[{"x_", ",", "y_"}], "]"}], ":=", " ", + RowBox[{"Max", "[", + RowBox[{ + RowBox[{"f1", "[", + RowBox[{"x", ",", "y"}], "]"}], ",", + RowBox[{"f2", "[", + RowBox[{"x", ",", "y"}], "]"}], ",", + RowBox[{"f3", "[", + RowBox[{"x", ",", "y"}], "]"}], ",", + RowBox[{"f4", "[", + RowBox[{"x", ",", "y"}], "]"}], ",", + RowBox[{"f5", "[", + RowBox[{"x", ",", "y"}], "]"}], ",", + RowBox[{"f6", "[", + RowBox[{"x", ",", "y"}], "]"}]}], "]"}]}]}], "Input", + CellChangeTimes->{{3.904571994638529*^9, 3.9045722105459967`*^9}, { + 3.904572526702345*^9, 3.9045725533961773`*^9}, {3.9045727443003063`*^9, + 3.9045727477008667`*^9}, {3.9049358765938263`*^9, 3.904935887859178*^9}, { + 3.904935956263136*^9, 3.904935995644843*^9}, {3.904936048601089*^9, + 3.904936052958818*^9}, {3.9049361246188917`*^9, 3.904936168796628*^9}, { + 3.904936202465942*^9, 3.904936211035655*^9}, {3.904936311816167*^9, + 3.9049363735441637`*^9}, 3.904936403881446*^9}, + CellLabel-> + "In[126]:=",ExpressionUUID->"1d8c04be-0ca1-428f-bda7-35daac5233b5"], + +Cell[CellGroupData[{ + +Cell[BoxData[ + RowBox[{"Plot3D", "[", + RowBox[{ + RowBox[{"{", + RowBox[{ + RowBox[{"TestFunction", "[", + RowBox[{"x", ",", "y"}], "]"}], ",", " ", + RowBox[{"SharktoothFunction", "[", + RowBox[{"x", ",", "y"}], "]"}]}], "}"}], ",", + RowBox[{"{", + RowBox[{"x", ",", + RowBox[{"-", "1"}], ",", "1"}], "}"}], ",", + RowBox[{"{", + RowBox[{"y", ",", + RowBox[{"-", "1"}], ",", "1"}], "}"}]}], "]"}]], "Input", + CellChangeTimes->{{3.9045722251403*^9, 3.904572267072295*^9}, { + 3.904572343395919*^9, 3.904572369321666*^9}, {3.9045724004246197`*^9, + 3.9045724062872562`*^9}, {3.9049360035119*^9, 3.904936046449616*^9}}, + CellLabel-> + "In[134]:=",ExpressionUUID->"dcb755eb-c1d2-413d-8556-dcf12ad4f05b"], + +Cell[BoxData[ + Graphics3DBox[{GraphicsComplex3DBox[CompressedData[" +1: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 +rG+yxkNNe6vN8DSrdcn0u7pvYLk0RZ1vNyB0qq+a9rspD36t+xVHrjv6Tgu7 +/YMt/fa2+ifNfCqKLO/Yelw0OT7d77n7qQ07NLL3oolhWaS9b7XJL6swmjY0 +KPOO73O6Fh70ultqOlXrYNSk1ZhAqmDQNfLM8G9kampdddOMNLo8e270eS1P +2lt1RrsAZ1+yvc7W1CxKJcPaBm6pyYzig87o6sf+IQfznK/V8tJosW+kuu4p +I2Y5J2LMgUqR9DF2Rfc1YzIV6y3L1dNuurBN7NCSL8axxCYVXtf6k0OTUi5H +v9vizTp31Nxdu0si2fp+rTjwU6FYz+Z03xisqe5OoT0S0hc/FO83Ukbslget +2gXQ8FU9Jn3ZnCvqg/6L5sT9ehxK1z4+fHLuXA6f34Mo9VNa+TYDoihu9NgK +ltk5ok4y736pxfpvf6l/cpM1fS3z6OSe492HRLuIurVB26ct0wYWUtDqls8y +OiXRoIdLg507O1NkVPLvCZcLqW3h4fPm1//SldbrWqW/86Ibm4PMLt/Mo7VX +I7etqBhFNdOf6Bj+CaIxrbP2DknJIfOu4xY03RpKTstTRp09HE5xuSNnjLiS +Q+EnZh19+NGfDrueW+RbL4bO5jp0fmKYS7HGWclFIa70+fajZsOz4smkT/3T +xrn5dMRyejPP0Hiy2Hqr1pxpbrTcJKR8m8R8+jzhjfrJqTE040yVIcMm+9OF +0RFet27lkkZYg9jh9uG04mUr2zUDQ8lGo5GJgXEOGaek3I6fFUwtGzEPi++R +9Ctjz/6nETnUsaXN2nk9vOnXwYVxOQv/UmaVWvMG78+jcScG9lQ7/YPuVVrZ +aMvpeNo/Vf2QplU+rftib7/BzonazzB4tlw7ifxy/TbMeVxIZ9u6nJmgqKsC +enwa0XahG42/+0ivFuWTh117AzVF3aa3toXO45n+1M64qWntarnUcNYpXduU +MFrfwnzUrSGhlP/2Y+Kmdjlk5eO/P9g+kDoZTlgU+SOSfqrd6N/tfA4NL39n +4kRFfRyVFL2j29K/dHvT/aPjx+RRYoBR442LE2nZ4tM1jQY4U26PXA0DvwLq +tTmjsK1bLJmpHRq8wNGL5jWcN350Xi5tr6wbFTQoktoo1reJkUFk1Sb29LaN +ObR52Pbr7aaF0A/PPR7sWDhV0X3qWa5nDuWtG7zycmc/OjG4cVyVRjE05821 +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 +a0YSfaiV8umK6zv6UzVw11LPDPqeb9DU4f07itHP6p2WnkSH+r3XsPbOILu+ +be7Zn7cVPO0Oyx7RUoG78boh3Xhm+zdHksniu8+r1wo9k9eO/RVzLJm+8+eV +b31dHq2QN6vU/bfWYuX53Usuj/2UXeMud/k3y5F2vC/FP33eNr2Noj8Xz/29 +P7azl+DzAe9/IOcD/IAv8AfchvPbl/MN/n25P+Zz/wDXvbfU5MfwQOp19m1q +Pa8kNrOhpY17Zjy1vh7YdtVWf7Ida2sTop/Iat/o/sJdEVcG7pfMnt5xI/Uj +STWvB8SyKwal+PDvYyaWM7WiTVZGG6aMjWQ1ufyPAmOrc16vmJGfmlEVvRCh +R33lpqIvw76zKaODx+8Y5Sfwify+An8OPdf45x25PsizLkufDxkfyUJTD3no +v7Ui422tZ7kp8HZX75zo0TOZxqceWPapngNNTwoLS1b45XJBW6NrCrstNNbb +PlH0A3rqlPAYR/me2i2Kf9cX8Yn+g4/6XD6hJP6jaGyey9zi3wcGn99K/Bgm +rohbyOFzkM/m7dXj7W/i+KMSvyeQBTX3eX3ns5Df13d65UspMdTKsnef4t8B +3sbxuSV+jaB1o+fuK/kdYY7jHs+B4/PQB/wlbw/tI65yejq/fmftRePsVume +rB7Pvk54n+mpyCfxB392yW/pQV2X9qg69rOiXprap8aN5HhaMmyY59TWztTa +wLsP7YkW8k27pvywHGpHtS7tN/7QLIqN3jVqV2BaPL1sfPTPuHZ7Kb/jiFqZ +MWHsM5d/UVczduSEB6zC5z8pbx6EskJtdVtjhf7v1WbPyt30kb1mi3znPQ8U ++oeZTp+8/dZn5phjbOyrGSDkuzX+aXAh2JPpdRt09ouhp5DPvF0hx8LXl21p +fmyrQzdX1jMyz6lYfodZml0r9SCm3b+Tob6Lo5DvtXvLwJBrv5m1DjVxmWMr +9C/RPFsusG446x5V+PH+pJP0ncuPvn3g7+bakSxx4Z6A4T6WVDspImCOYh1x +bI1mhzZPoll43bV3//xwJhcuHzF1UZR6SgwLvpvaKCb6K1UaUarf1MJi0voB +8cyh2Tzjw9W8CfyUdznWuk6fRDap8WTtIXl+9LhlxX8j/sXT1A+9wqKm/6LH +b9pM6bcoiS2PMh/6ODWeHI4+99hl6UMeGktyN9ZOYHuKXnk6J8bT07AWvhWN +famCcbLGpCMJLJ/3Kya8Rq0fzb6QqaObb7sDMewAl4/Iu60brbBv7KCHocX2 +Ot10W1osPz+nbtqDiY/o+M7Br4Pjw4X8ZKO6F4wOmFHuqM3mLosimOU8l6Qt +Ch52uFXpkp3wnjkvnN6kw5tgto/L23B+e3K+wbP76R9P77OfbPf3Lh5XznsL ++Xj32LuG6T9YbPTk5MkGPkL+zdxqd5ZX+MUWba5Zs6KPi+gv4mMojxfI56c3 +2rqnfhjburjzn/Jzrwj95Xn8vebxWI77pfVws+vOJlHsxOvK3U7uYwT9+yv1 +OjexjyK+D8ZubJpoRz0fNt0ZqOjvmBND7asPimPPD6zWsSrvSdA/Sbf84OLx +M3j5mH7F4wn6d3UYez/aNYkt7qz/wbpPIH3Vv29QR+H3rQ+uLr6gm8SOp689 +cH70L4K/9rwtyiyICKI2UfsL9z1JZhf3f07umqHguX8TO8P2iWT+5cnZDp2/ +0Kg2cyfremVQyIGciDnzHMW8NH18UotqijwZXsej4/LfinzYNSpuYQcPGsnl +pyUaXht2RVFH79hZy+Sdj8CDyu0efqdaEk1ymuHb5bazyLeT/vQw3+UUT1d0 +dmg6OLrRTI5/+DqsQpNJ0TSOafRNnvRL6OnyOH1Lunok6Ve5rTvwz2+Bl+bz +GLpsv0T33zF/of/2wechP9+G0eeO1x20B4bRaC5f3cbl5pyQPzR/Suj0VYcj +hB61ydVWRN8Jp00dnDw+6oTSDK4nY33vHTWmBFLslk4Rp75HCT3ube7PcHnv +S3uvGWx/WS9W4O8qpu4b3CiYLm/WyagaEyn6FVuh4fzbHT2p21tTF4+FcXS0 +37d7qxXy2a2zaq/s+o0ehFS4mfUkgUZwPXM2/3rVKtWLjldw0rq++y8ZDXA2 +KdYTOG/tpxpOzmR9d3NYoFoS1dgcomaikJ9QwmcytTVNGLrv8DuaxttVzxj6 +SjMima1bpt7F/18QuVSa6OR0Ip4aGY/Z1qaWJ+n8ebP3jiLu3Hj8NDQpd3NH +JUZ1Yv1eFlyKYo56V4e7Kua1wi8DQ+vcv8yqTr7Qu1qDMIZ4Mxw23b39Bxfm +UTG32bGKvwRe4/Vki3ZHvVnVGLMnER9/Cv26o7bk2D4NZsnHnNsf+PdeyP+M +m9iqXXQ40zt5J+/qiEcE+bQ+v8ds3BXDzAx71jnd5IvA3U/cfevvqvw7iFlX +/EvqpUb7N+nbVk1gt3ztZ8x97SPkfztcMR45JIrejBh7bpZinWI8f3KNvgp+ +jmbs3jTmaahYd2RwPUz359XsTgFi/zyT4/FnZ99wq+ou9s8hj3oC9QXi0GN8 +jv6HEcl03PbeVPeafqx54MySc7fhbS0CjLMTaOnGGp2P7/MU+Ekbn1ZdWiRR +utEce9NP3gJ/XrR67LZXcbR9YmbVXT7fBN4oqIXVtNWx1Pmt58eoV46sKceX +bRhZEHb6L01UXxndfeQnpqmiP5quX7cKn9LtpcAzLp25UMknghZ93lE58fIp +asHxYSV2RlJIlN/9mV+vi3ZXlOgPo3kFA/o83GtNwB9cSvXdc/QPZV50XL4i +3FngTUrsDKUnFxbu63vfgZpxfM/4pa97/fuliPuo5xmVfhDsn1v042zsYl9y +CTyW69zAW8jHtWnUssYzf+ptM0TvnpuH0I97PAde+rmvVH2D6ag5g4OFfm3e +3n7ePvprwu2DvdCj5dfep+XLZ2Re4odwgaP/4AN4BOcL/AGv+ufA4EFD3rKf +JXERI/Bb3B/wD3D4D/6Ev+5dPtnj42p3llnit3ghv4PHhzmPF+CIJ8QXcMQl +4hS4Nc/7n1/PPrl/pK/Yh8H53x095xV9LTzEvs3aknW18u8+mXF86ISTDkfH +JlGQfc/jDR77Msd34QX9tyr//kD68OUH/IZ8Ffpxfjlt3l79k90dxD7MqJL1 +/1/xXhLwxmqZNwZb/aV2sxvvqlT0lTlw/ev5eZnR2pUWX74/FfI4fx3MFsSW +u3BDrNNL98GUf1cK/cqwWbH9X6soWus09PoJfzNh/1h+7ra6/tLJUeZvhZ51 +/Hx2z22d5Ap7P4l1fU7JfleoWC9iP8Rzg+f0ZxdCKSMmTfd4e1uy5/rF9127 +7x54/Z672A/BueCJUHfH+uHeAi/lO4Cy+Pke7Jk/4YCuQ64/nWrsPHxN8A8C +PzgHNOefg50v+Dmlu0GaxtNKv8V+yBduxxhulynHm218o6lr/oOMNA1jP9UN +oPdcP/qJfqO/OB8t3T+JEHaCR/Aq/HvZp/Gazza0Tte3sfmtUHLi+uEn+A32 +41zWomRfJUbo2cHjAOeokG+/fm8jl+vPmdGDNcMyukUJ/hFniDvowXmwb8k+ +YoLAM3gcX+RxDfxmUQfjBj2+Meu4nGXDHf8K/RgnGDcYL5/4eEPdBTvrGw1s +0MLelwX2OWt4YmaS0JPGx/9Vng8wfmEf7IU9L9tS1yUFivXx1rtL3ep4inj2 +4PmoOs9P0POa8xjHeYU9hkHmlRuuiyGb4zGLYq2YGHfIj8iX0HOO+xv+h57l +Rk0j3ALC6XiN502Pbr9MsAf5GvkbeRtxiThFfO42qr2/8rlgGm94N8PH1kXo +wfyB+QTzCMYPxhPGUR+1hD7b9bxpnW+a875D3oLnLD6f3efzG/q1i49zvJcB +nr2Czvt+OuFC1msa16j1JFjYM4TPr5l8vkU+r8/zUSDPTxgv+e+6Na2acYmK +9mk+94gMF3q68fm+CZ//Yc8MnjeRR2GPzoby045WdWRtP1v8bLIzRuQB1B+o +R8R8xPO7Fs/34PnfeJMU706ebFytUenLNRKEPTbvopvoKOrUzVt/9HmmqFtR +/xjxOvgtr4uBo85G3Y16+xqv49vyul7gfJ0wga8boEf8Hi3fr0Vcid9L5fvB +wFHn9ef7zfA79q+xnw0c9WVTvo8OPdi/w74+eMa5As4ZII9zDpx7AMe5C85h +gO9saH+35pMkGnd/in34IHuxD4n95S3Xu00fHO1CXez9SurP22pHlvXLdCE9 +zZ2PmlornjdJMP1ffj50mllSt3bi8svMYybm108Q+/TZvI7F+Xm5xUO2vLru +LeTBZ4enP0rq4s4cH7Zidvs3R5TvU0EPzlOmpCx5P8I+WMiDf9vmpXU39Dds +6qyunxIuzgVQb+fx+0kjnEqeQ08A99fvVdWunB8UJXiIeLCspD20Dz3i+2yn +dUrs7crl4d8Bs2e+ylKsJ5YuP2PiqcB1/7DMDYr+gw+dfOPUiwocfF32ji7h +D/aU/z0urVktR4rcZXcuOCmJKsc/GBhfHLcl72Um0sjT9w6+WuPNDPh7d2ol +7/PF0fgjTW3czH6wQyrvi8ZSbnLG+sGGLuL9xtL3NaNJz+7huOnONgKfVPI+ +XyStWLDa92XsJYHblbz3GUaPFf/9d+c5od1JN03rbg/7Q+3m3batWd1RvBfa +bUajpC7TAmlPvKPag57fxPuo6lWOfwu396U/DqmPb3T2FO8N4r48f473D/F5 +6IMetIf28X6jAbfvHbcXerLnl/ZnCu8f3mPU5/0HH5AHX+APdg7h/JbjfO/g ++ATujyvcP/tU3oP1IvdXT4LO3opnjeuaXO2tWD/mzd4Qu6O2Kxn++LQkYshf +1vhLtt1Xxbq4eaM9j9zM/cjWcE1WF/dEtvBHKY788Hx1PdtRGjGsKdfT97vz +6PvnX9Om9JEvb5hGsgVcPqTPts5rb1jZH2tx2Ch3RzhrxOXjDriHPCv/hk16 +bnFqeqNQNp/LI5+wZ7+Dln8LYg25fJWVPcvlfHdlU12Gfq9Z1V/Ygzyzo+E7 +I4/HXkJ+Iperzj8H/X/4e24Lq3S6vE/NWchP5nZEc7ugH++/Td+d30wtfoew +f+CztFZfnkeyf1WerK1x/zUNj2o1v1ge78V91l57ye3SRwLPRsN8vcIV/D7T +eG61TcE37BG/f9n716VdiZ4Ee8A7/AB78PehUGfh70Th71ihvgOOv6uFuhJ/ +Rwt/5wv1LHD8fTHU0cA/879TJt6/4zj+Dpr4e7Cwh/89tf8j7bujokqaeEcU +A+qaE37miAGzronCnCOuumbFgFnRVcyKAbO7GDDHNUcMmNAeUTEAMgRxRNAB +BhhgQBBBQJE3oat7u2XOO+88/5njz7ZvdXV15Xub9XlS/Cv9Lhv6kzg/ft8N +/UMcX4XW/1rQeiDWBz8FD4dFx4PhQPpS961Tk0lfih/o3iI7eoU/lAhsnu5c +XUewbph5z+HuqDv3oZk2o+KUG/GkfsZdlwsGf7F4vPV+5+AzZMik4Z2zu8WQ +PnR8hWqBEyJa+5JVS34beiYxmgygeNix7cvzu70gY5utthv3x3tGT1la12xD +65xY3xxDx4XQ/zeQ4mi/Ks2sctI2MZjtCz4Pn4/PRfqQXqQT7VeJjQdr6rs+ +ZPMsPR87EYLjyZnR5cZ5XXoA+Fy0U/Y7Mys8uHKa8R/5dYTyD8cjf5HffQX6 +P8ChEv5Vnb76s/160LnE+ZDMNNIxL9DldaYakA+of6of8Ah/eDycPZf5G02v +1Br6NFr6ft0NX/N32OKYvKF+WGmSXx3DUQ+Y5V3P5k9I7z/Zy/o9bG53pcaF +H2nEfsit3tmGfcd6MNY9sS7c+WTTlysjP5OcY2vSlj2PhE0rllf0zTX2YZdf +47I6FYaOVadPV/rBlt/u911rsIPhPi+Se7VLgSPJPzp/0wbAZopfn9/BP+9k +AniVaJBQtto7Nn5HwzOnvH+LhbTAM9VUtTTgQfEgn3p5qpxIqFS1Y7caN7Rs +vPU/B9JbhoXA2pMXVr3omQSKamV2njLgDcY5D5h98gnsC2/89I/nqRA3an3y +ntAsVrfGOjbW9bZnzDPdL3Wg8/8WFRR8hs5NIyoav2PQw3Pt2DrJOlj4+O8n +zzaFwlb63JoD9O0ixmjhwfA7NmMufmB4esGt2rY7PsGGDP3FrzNjGf3n5u95 +6zHT4Ed2Wfeme24C48MTn7fVUza+hsCNFTK37EiBTRQvOuLMmRaTP0Oaw9ac +mrN8oM75QdFGv67z5JdTphnWublh/g2H8BA2/qjb1EBbA1/u5i3pUDI3Ekpu +11afasCRj8hXpOcA5TvuA/LzKN0n3Dek8xWlj1B62broenB9iOP6kR+II7+Q +f8i3Ulc8L+RtDIURqzd4XzTw+1LLDnljDfiqhMAOA/P9oPfJ1xs3zU2FWo39 +0poa9sv7dNHebVYEQZx97tZ9lZNImlXoZmO949Lh2+cr7fCB/meDK4e5a8my +ueV9+hnkU7epw0nn6VfI02MPXhfVfGL1rIDNo1d2n/aKrCh9YMPihxEMXzZr +6bBeeR/JsSPtHrV75U0UtP5iZar76MiIVTl9rl8NAMS32Z8eERn1DtpVq/bg +3LlUsn5Px7A7KSlwtlzx0/c6hsHC82dyFgxNIQ2HbzhXNDsFvgbX1c/+HgHN +yi2ukt8ulT3XP8/Pe3DDZwZ9ViG8kW8CaUzHTxz19voNw/OKnXvc9rbh+e6p +rXTG8bWdj33bcHMXNKmy7nqUXSwbP3JosOuP+UpS5uD7Kk1afSBNKX6CrgfX +h3Wu5Z13uv89PoQ8tr4TuM8mlM0z9UvsImMdtOXbYcW9375lfFAG3Aiovz6S +pCXULWEd+IStaznlYxDlK85vfX3O9nGhMcR3drnXsf0WAo73o/uRRfcnj463 +y/lx7cz0BNJh2uJavf39oD4dP7DS1vPeG7Xk6fXPnVu7+MC9UfZ3QtIM+r/H +njB9djKZ0St6zG2PUDZ/s5gN9kb5SEjc1K21QV6Qz1PyNw3vOu8zwfhv0aDG +rWcb66TNKjtFG/YPis+a1SzmHdvfm0/2Tt/x8j1010e1j9ifRva5HU0vYZCr +iS/7RTs0ewtbt3XqP7SvnlzofaSnsW7ScF7fpn+WfgnOjmcbWN9OZHj/2llj +QkueB4dvFQse1otjeM59r5xPZe+TDhOK3ImvHc3wPUX2766sekOSX0XNdcoL +I5cojnoZ+4wwfqxYaeHfR3eqSc+Fi/q4X37O5rka+mqel1pDdv3R5VBqxSMM +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 +WL/Hno4RC3a343X/uia7+QnI1fpp/5XnwSY9qYU5a0Oc5mm4PKM+730xsWBO +PLenDSL777wZnApfL5yu+nsjXh9Hf3hEo1tx/z3v5czrgmCnsp9e/Y+vy9fs +Z5K+bc+OTpvB+TbLRH8ivB351PZsWI7Eh1Cy0YG0fLAnX+KDHxl4oVK1W058 +vWjX6qdlCfqH2l9I3pNQenE+1z/U7kPsDoc1u21kfyABYoNvP20yl8sb1vFt +JpV/NPsJ1xv4O7LWYIO9ZvlJWGauG0L+s13F5zr8EgdB3J9tcutd4fuL9Cz7 +fc3TB2W4HsN9bJ147nfXntz/PNO9tfOFBR9IpRYvLhe05Xny3T3vdJhiiO+q +5pH1N9bzeCp999LyrdX+ZLa2l3L0K+5vVHbOe7t29GVSLmXknC9lON+WHjgx +t8nyNNKy3DqrSGfeJ1D+e+SX48uSyZ6rnX3jc3je7MrkqiurLksgW5Za5RVr +xPPbs7MnNlr36BZJKeOZQmrwc7fr1a4e23ZdgA93fbx2Dufn7tunv9ptauQP +uw+7vO7rzs/dy8a9S4dVCgPrO+c3pl1j+U/we1PU6WdqLLQPfFRx1CHeJ7P5 +7Uq/e83TYORWq1JhK7nfEp49cdUwfRTZs63azp87ON/mjSuW4JoaTpqcPPf3 +McL5VmT1H6daRL8i35oPW/0+lctPdo8y/YYtVYNi/JftR0Znsn2ce6up176Y +t3D5zI1qlTXcr1ZE+1w5Y8wPZPUoO6445+fhlXF3f9xJIqOcBoc2G8f52bF6 ++ad/3Ikn9TIn+Hud5n1fvXKea/2M372e6n7fozP3A4PCdnrFDrwJa+vGzS7P +/UDI/Jl+wXgPocMDld/KfsyfJMszK9Up2/QV2FS0r2H/L+fzlsetV4zaHw5+ +XZ4U65nK8vPw88Rj122x0TAvfUGfro+5n6MocvZMky56uNxuw4TrS7g+H3e8 +1cTcjDTYfv9eiW2deP/MuslLrsXd+4ecnN2iaa8evI5QwXbEmo3VQ4j1sTMH +Rkzn9iJ2tvWwdYkRkPD38u4+Zfg5De84tsfjJYnwwtrpfTk1jx89/s2cWqSN +H7G/XWF2xEiuH0rYTLybf+wh9LxSfsTlVlzOPZ0mW+e+CYJjdb/fbV2b+1fr +YgY9W6z9CO3KHjg4OY/LSTEn9/NkSQr8UTq6wgF/nqcq4dp9/LVWweTTPylD +K7fnfJgaVzUws7MGEvaWS1s4kfuN7XM9pldur4Pap6bdburC/c86FT7XTshd +DXnnapdc9h//8ObRe0FNXVTQrXeIe+2h3I5MLNP8/O2tnyG8pNWNAi2v+18v +8ywz+uZLGOOaWy0ukuurJ9Pa2Li2igXXkWOdwprx9yzK1L+w5m6LBLD3LvrO +IYPj1b8f/HNlegL0/hE0Jd2N+2ND06NGJD0JgBsjw9reUvD9cro9asu59GTw +Wdfj+PmxPN8VGT15+dxmyZB/6mru15u8Hy+JLPscMSocZofkOZBj3K6N+tGz +6j9jouDtp31TZ/3Hr5DfC0N5Nv+m/4IXPl5rYbyWjZ9QrFL+sSvnKK5huM7h +4Xr1qNeM/ziPf1ZTg9v3nOE4fumJiY7zmkXz80LHa1dWvtYvJpLhOP5BsH3d +jvsTmJzgeNfuNu/OLIqnOP5BPJXJG84z9TTZ+/YL96sRD/17iYGidCYPIs7j +RJzfQKSB0kyGi+P5uRPH8z5eEef5HPn9O9wvxNeva3I5ftcGti+Il9o65Gy9 +xDfMviBe7Nk5A0mfGP8Rt5rmNPvl/UQmh4hnv7c2/I90xh8R5/kiEef+CeIz +7/i2cd/G32vA9/4ct/0cOjrgCNO3iO/TfZ5+xzeE6W3EB35dfnPcR+ZPSLiO +7S/itoag8/N0XtcWcZ5fEnGuD0Wc+1eI95zXrGznb9xvEXEWb5JP9Dt8jQ3o +e+twtl7E9245+l1vFcvWK+LJbL2ID+z1Zs2yIrguhQJxB9NzeV1bxHndFnEQ +6FdLOPcfEK8t8EEr4TyPKuKcD/idwqjqT3qvaxLH+CDiKYwPiC/YOcVwUnk/ +A+LOJrn6wvgg4jwvIeI8zhVxnodBPNckz9wuiDjP04o471fB7zU2MpzSCoP1 +bL2Ie7794l+yMc+bIb7VeCxqcjsu4rweLeI8/4N4uEn/8P5MEed5VBHn9Jt/ +b/jerb05ZcQ91t/CcA8DWnszj4sRH7vHz6DpP0v6/4bvFUFPqiScrwvxG4I+ +VEk4j9dEnPdBIT5FoEdP8P34aYL+1zJcJep/Ced9OCKO/FQoEN9p2hfur4o4 +6/+XcN5ngnh1g5U90CmN8R+/J5ol6GethPO4XsR53gDxWcK5UChEnJ8jEed+ +PrsnYc4K52KVUhn/ETd/557V3cg7+n1dUT/rJJy9/yLhvA4l4jx/jrion5US +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 +/1yA4NKDPljl8HzOxU1uDa9p30KnR8OVx8M4n/dn/BN85ksaLJ93bk1KGP/+ +0qie3SqO+ZIsjdfDRY/iS0a8DoDA/0XYRIXxetzk68XPl8+IhR7Nav4xNpTL +W/KpJxP2fUn4ZXz/QvddB/e2T2oLrf3IPUH+VXDugWqmJjFC9pOh7d8tl6xN +/Ah2gj+sIuZzlCKNZ3kAslT6nthI/Tv7jS3Sfvn+mBlPlvuXKC5/l/j/fx56 +fwD798Obbk3sbF3MEe83Qhzvp6P3EDC8yLCMam6drRzN9xzEMrxJg65OQ58o +HOk9EAyvZlW/jlvnAnaPAuKTQ+IPuXvls3sUEG9w+0lV36M834U43gOI91LI +4/FeCsQPev9Y93Afzh/LcKQT71eQ14X3K8j8EfmmI/A8p98aFyuJbzpyoNiL +3yI8ikl805Fzezpa+R5VSHzTkUMvFKsaDvgJIt90xHnjlcyCgu8S33Tk4shF +C2wm5Ul805H5HQan8Hvh8Y+O3Sv3WeCbjpQJmTwrdkouu7ej8Ofy75YhnSLf ++LpEvv3CH4Yjf0R+akn3izPCXW2KSPzUkv26dkcC7IpK/NSSAYl9azmv+Qki +Pw3j90TuNd4vJvJTSyYP2lImpVeuxE8tOWs70CPr1DeJn1oyO79RsVbnsyV+ +asn1gc32HxmRLckbn0fkp/xc/v1ppFPkJ1+XyM9f+MPnofwR+akhTaZ+tTbe +9yryU0Pwnl+RnxryLWvhSm+HHxI/NaTX8aIZE4fmSvzUkDLjrs823tsr8lND +nOyWaHs5Z0n81JANtSeUSpz5VTq/GlKtzLCpa1y+Svzk84j8lJ8bCzKdIj/5 +ukR+/sIfhiN/RH6qiYfPvPPxlX9K/FSTw4c3HQ6wKyLxU01GD9LVdF6TJ/FT +TU5nrvIst+ubxE81mXe9SemUXlkSP9XEfXDW02cnMyU5VLP7KEV+GuKwqS+s +Wp3/IvFTTW6uTdmcdSpT4qf83FiGI50iP/m6RH5y/oh8U5FDI9vvylP9kPim +ImdcXMpGeCgkvqnIrMTrRdw650p8U5Fbe3q5Gd8LE/mmIjfDs561L8iU5E1F +tubv1vVyzpD4piKvMt1nXSmXIfGNjxf5piLPbG/NtZn0ReKbiqwZ9Dm9gD2X +fe+T0Snyja9L5JuK4D0+ohxy/oj8VJLxHQbddbX5ASLfDP7da//m6a45Et+U +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 +J+rD+2Z9y/ThhX1LT2jiv1A/4S3Dq8b3IWPr4Py8Tj5k0MDmH3y+Q3uzvmJ6 +b1zEwEOaeIXjArM+ZHoM4/2zZv3J8OtnNVGVfb+Co1kPMzy08fQoY/+M5OfA +iWIDPz006M9hEw8a36Fhei8paeOENS4G+Qw5e/A+kystXM6ssdHLKRtamXGm +9xqc7dKiybBsnAfkeagfyPBzPXZHjK2TA1QPM/xj+ZNVIjxyYKfZn2T4xmsO +tXrl5sKmpZ2CfhYEo98Lf+V8jXK1+cVPhq2xpW6X25ULrU3n4iHD55U8t8Sr +dS5MEv1nFrfSeUCehz4X5OdKcQq8nHRw/tAnv8QpoM47rDjt/UOOy8jcG5f/ +dWhfAKuvut3tmBTB8KzrXpV9hv2U42XinOi42ssQL48dH+ry4d8Ahu8aMsmp +uJ8cd2vJNrfuh929smHJ3ZnPPdNuMvxQ1VpX00dj3oPrGefjp2J4Hgntr5qM +LxuWpxqL+Te01yqyMWLuOOP5fdZ0XeP/vq8wZMKQTXkqjNPR7itJZO5cxaSh +X6CkMqbMf/sc78ftrOHZUM43KiFq7CnDecwCt2v246fv0DL8VOWm22w/ZEvx +LB8v1VOg/e3uFa1b5cLkBT5RL6smMXxM9FLHYLWcf1DBgOpriuzKypTyxmp4 +MLuHY2frnzDA3mFSy9OpDP+rq79bg9wCab/UkNBGWXuAZ6a0Lxq4eXaOu5fT +V4n/Wui6eGmuamy2xH8dqP2cxtaxzZX4r4d/jeas4Jf8P4QUv1jyfF2FY8Dp +tLZRPkHMrrV+Qea9rYX6mckbHN//usikoT9Rnhles2z9zMq++bDs65Jbkez8 +6uHD9Oad69j+hD/a3erW4D/r6u6wbLlxXcNLtylfTPE3W9fqKTtvxPTMhvwi +I90L1mkYndv6lp4X4/4V8hr193gaHcDmzwgoqDfJKh9OJN2+1e8/+mpu2Ypt +jPpKIfzRkM3nrYsYv88j5ZnJ5REL+rQ68EXKw6hIkdEOqvThX+D5M/f5iZ9Z +HRPm9SjRrHPdIo7eU/+XOCUQ3zfRkxKTtq5Im5sPu48GDb484yrqQzJRm+TW +bkk2zF+d1GBDKPNjydRJIz5dT/oK3mtbTtu2CuVZoehb88Ly66OzoFix8dlv +DiUyeb4TNH/PI+tcKG7Sk0GM/vP1+u0a2SAT2prjLHaORrS58c9h+yzp3Clh +iP2ML99/+ymdLxX0vphYMCc+DwaP6Z3J9b8a5qwNcZqnyaFxB7cX5Gr9NKO9 +oHqM7Uvcn21y6135AeXMdLJ5gp3Kfnr1v0zZb4ERjW7FGfWJ+Rzhvd9K8nbk +U9uzYTlATHYzhMlz37ZnR6fNkOXTEN/tcFiz2wbj3AD23OQ9CaUX53+R9RjU +T8sy2cdlJv88no3/+WxX8bkOv9Qf4exeR6sDT39IfNBC68Rzv7v2zJPo0cGy +39c8fVDmOwws0/7ZoF5vGH+e7+0R0rVxPvzTb3CLk8zf0JOj9R402ZiWD94d +S3qFNUE/QUdue86r+9vZXNjs+/lS0Ciun9NbFGxvbdDP3vaB90fdjWHyM2zI +2dFag1wF9m6dfJ35OUqY7H+ufLuz30A3bp9taR+u3/5x2dqtxvjv0PTQh0Hl +fLi++q1R9eLViyscq1RZbTUwmsWJZNqeO2fqpH6BaNeG5femsniZ2BRf/rnk +4y8wpM+gExeXc3nu5LM8u82oLGj1wabOBj3LS5DypWae+mdbJqw54HJj6GN+ +rk8PbFXKVZEPg2e9iShVmekZMnZo/+63vfOh756DtsGNmP0lg+LrtrPblAtR +/6e0Lw2zqrjW3hAIiEZBvTiEBJEGRa6AA8a5QLgMAjJz0SBXhMggIiAxcHEI +GLg4RW3R6BUloggCKoKAArK3mBjFgRMR3QySo27CMRyQsemm6fbr7rPet3ot +Tj/fj3v+8PTrtnbtVatWrVq1ar2u7y8v+ONCymfAxs9a/bFvkVux4x+NJ727 +nPPu7pP6NfvurIp94vQfW5w6mueV4XVtXug/uG1Ff5b3PL30t/5884IxvW94 +47xi1+/9n13xyN3/otzKfva/t684Wuq23fLu9Rv2+XvwHdsXXz1l8DF30Zpe +Xc793V7K8+Ubu246Y0TFvqBOsy7PBlOoP8+4BbW7dKiwe3PXTXzw26+Jj903 +7j+uWlexXjdtsvGyMYvZ/18/WfTWrpMq9r8zdny796sPOC7Pv9/+lPEfHnAT +apXWXzhmE8dl9yWr6z12X4X+n3nV6s77fX39kg4Pz/v6sh/di+NfaHzuD8xb +cPd8PHZEk8lH3e3Lz//T7G82U58Xv7T0jNPTR92uTus7V+anYrzqfZ/6sfnW +Y+7sF29cd/WFvn03Pen+j3vK3QVnDGzyULKD+KNv9jp/ytGD7sQGN68qe34N +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 +EKAdrc+xA29sY+GLhT6gP+BXxngtk/7/Z59nXv12ra+Hc5c8r9fBiLy0g9T6 +FQRop4fBsf8tquJv9vVzwGMLXmqMI/ipwfeM7wLv8wTlp8UOca3FwpcMvO67 +Od7kQrN/RNxjo5ED+GTBN4xxvFN4h8FbDDkskve2+35T50reYuDga9b53pED +j62Jj7m/6LgK7RX62dPIB8+DNw74SuGDy26Z/pszZvm6LiXSH/A9iz448D4v +unDw3ZV8z8AhN1NPQOKlReQbBg7eYb2PjsmDrOM8MXly9X45zXlt8jnJv/yV +eR48vDrOn2E7Mw0OfmdznzpsKPps8kk4r9cZHHagWNm9LPsp+1nqA/ah4EXG +uCNOVWBwPA9+ZcgN/MXgM8Z7gYP/G9+FuOjFBof+/K/5LvAmn6r2Lwl5nwsN +Dr/oJjUfsxzf9362+f6ztvt6bt0/+mxf8zZ73U/f73iouM0S6Ge4ot7TXU/u +tl/WI5/XivjGc+fdd+Zvp/j6Vx1a/vnF88p2u4Ip/9bh4BO+nltfaV+fR8dh +pPKOfD03xGHEH2P74CN+Qn8veYHBE4x2gH+l/OcKPRd86bWXfvk/H/j9cu/3 +Pm41+Yoi9/CqZRubtff14sYL/+9fha8X7VwqvL3Nc3Kh/m8WPyE3Dr7eGvh5 +dfw2S37etz/ZNXzFwc1+3F96+IsDZVlZR3w+IfiON5h5Bx7exsIXCzk/Jbyx +aeHBxTheJ3y4464a9tCianXMdva6bUZhBQ7eVvQf/K3XvNbObT/F1yv7tNVd +Fw2raL/BsHun3nyWr1c2s+XOZX+s0Idhr45MN5rs8/0+kedXLzjnxYVTfJ2x +++T59nX3h72q1Yt7YvbyFZV8uOUTc3yu6P8x4XV9V/hf8b3ggb28tHXLort8 +3ZU9z4x59eoK+3nq1oGt1+739dmavFnyXEnpbvdOvd9+v3a5Xx+/vz8+941D +u91t99Y7Z0u1+nLoz4nTMltXT/Z1z5pumdRyeUU7TU/rM/K8dv6e/m55L3iR +MV7gR/5SeHChD5Dzml33HRhdrU7XfwjfLnh2c3hCvt3lc38zOB7g632d1+7T +TU9WPD904Lg2s8b4+m/BlQP+9uf9u90P703cu6Olr783YF/p2Eq5tVlwS9Nu +1erm1RJ+4bZVuF/3A8HBEwz5vyt8waef/X4V3yq+t2j2V1W8q/Pj1j277vT1 +39qPvGBAJQ/s5jbfP752hK/n9uAtW0aMPbLbPXP2g+sa/7uvtzZq590dv694 +/rPeUUX7Hl+64Yuq9t2y1n0eGeP9pT1TPz3hk6Ld7taiy1t9eMDX8Rv76fZn +61boW8sffte33yRfT6+FjOPIVyfNbbjfy797wYO9KnlmLywfPHp+tTpyp0y5 +44w9qcPu837fX9vsW19Hroc8v7x4+PynqtX9w/PnCa82xgV83E8KPzfaP1Vw +8HOjHfB0mzoJYYeqRJ/nbD0K1gEw9UDCIXUqCeZfIS8s2sF9JfDIoh2N72U7 +Gv+/t2Pqk7MOvNSTZzuoJz9L1yUOb235yUuV/AhSl57t67r0zLMKUce+j67b +HNZ6rVm9sSOKUA+f+PyDdS8vLDhi6zaHqJ9/ia5fHaLevtTnJ476/FLPn/hn +62/5rJJ34xVd1zoEL4DwCBAHj0BHXe86BO+A1DmnnQRPganjHR5p8tZHlTwy +OR4Hf/+iONm+tZK3SPgRiIMfQfgUaAfAp/C2rgcegn+hv64HHoKvQfgdiIPf +QfggiIMPQuqrc17//IVffVSxAKNOO/HLs8NLztpdauuih+ChEJ4LrhfguZA6 +8MTBi2HqqIfg0TB11EPwbghPB/GurXrc4HnH/D1f8IAI/whx8I8IjwntBnhM +pJ48cc174u8FvDS7xYI50w+Ch4X2DTwsc3N18mnnL3l1Y3nZrB9Rp5046rR3 +q6oTjvkSu6//Nr7CsUK992r128te/21l/XbhkSEOHhmpx04cvDMtqvrp83xa +FPXeU1nXXfhriIO/5pQc3w3mtQPfjfDjEAc/jvDpEAefjvDvEAf/juEvcODr +ET4grvvgAxL+IOLgDxK+IeLgGxJ+IuLgJxI+I+Iv9vv83ko9Ef4jrjvgP2qU +41ciDn4l4WMiDj4m4XXi+gJeJ+GBIg4eKOGNIn77rvKSNXOO44Nw4LES3ivi +4L0Snizi4MkyfEAh+IAEd/8fnPxBK9Y8uXXHFT7O037FtOe+OfkA+HQ4H4ft +em5lZR37dwbMWnRgro//1L6t0adz64Fn09epO+mk7C8u/fKwrUftdsQftqzb +9rB93uF5816H9zbT9s2NitrVraz/b3ig3OyO/Q53Kzxq+a0c+K0uyvF8cVyO +Xvj0sA+OlgN3Fs+183fi3Q+s7XHvqDJ39ZDLzqpVbV/z8il3Ph0ExW7IkLql +g9xqrrNPXXFsULfuJW77h71Xf9wC8bE4fHHBxQ+9u+SQi0YPnND6In+e0jR6 +dMqQtYfdaT9Mrzuht89T2rLg1tceObPYDXxw1kOnv431PeWG9n5t95Ba5eAb +YjvB08Mf/du0g+70etfu2X9XinLbeHvDwTf2Puh6X/37ouIr/H7/hG9P2jRw +bIm7v+f5F9a62O/rv4oaPNvlxkMu+aJ+iyZnbqTcyi88vH3IxWWuTv/pC8Jq ++4iBJ37d6OkPjrnC/v9Vt6RaXOv5c0pXtfvlQffQyweH1brI+/9t3mo0+st+ +Je6LywZ3XFctHvVh3f5bTomL3Tej6/a+v1q8aOfjv7tm5UkV33V233sfqB7/ +ef6lp/uOKHNN6o9ZOPFX/rzpqyYbLx03oczN+/nt763JRByvZjOWvf/fXQ+5 +3ucOTcZ0Xsf+TH/zs0dLryhxf++0o8fOcTHf23lSo/RbAw9KXQvvdyEuXaDi +md5/O2bizDfljfcm4eTKslK3vh/qvIIkXLjk6V91afce4gP0o5CvXq7rHoSo +c6LzB9LhJ1X74qUmPyEdrq/aF3+JPATirarqBic2Dslzk60qDpkOUb9lpYpf +paWfpRKX8P7Vn6W+1h3qXC8On5X6WrE6d455X0++kzjq3pj8h7Ch1LO6Q5/H +hcWSJ99dxRWjEPWLtqlzuoj3W/W5ra8Tos/dggD1bbar+LyvO9RcjW/M+oqr +1blD7HR9MO8n4B6KGUeH+lFmHFlvZ5seL56HmfGS5+z5acL6e91UnDzDuou5 +8fXrIOoIbVdx1Kx7Qerg5ebFd9Rb5K2tU3GqmPkA/zDn0cDvVufgKeb/mPOp +cKjMu5X6nJf3xwtVfNWPI/J9gG8V+dSX/mG80P9S9V0xz8t0HDVhnsm1Jg9E +143x55vIY9mu4loZ5t3pfMgs64DVl+8UnPd2Yz0uvFf7U5GXtM/70bF+r3ke +ckj4fDP1vTHrWnTU55KsYzDqivqrbjsIPrgonNRwyXkvl+2V51lnjO1sU/3x +ddJy4+79n9y/qD/g5y/uF0838xf9GaPydiLe09fn4Ljnu8ecF0S876PzRvy9 +177a/jjcB9+kziuDoLO6D8vv5X2ZvuqcK8V2IjWPEt5PTKt5lDE46yXyPmkX +1X6GdVn1OW/WvS/5rrl7Q6yjyPtTHcy5AM4RjqnxyoaLZR7peiAR87cbqnGN +OO9yf6cpN9xb0fM3zfki+e38rpelnenmnOJaee8OJZ+I9me1icMj32mHiiMF +AfKUSrV+0j7UlvFDfw4L7pTcsrQb+Bvy/Ebuix1V/kCW59q6XlPk+gt+spJn +zOcnbl74y73V/Lopyfi3e07KuIsfv/Cu+3b5PPDWP86eXnnudvmiITO6Vovr +/k6e13VLKtZNkaeed2me1zQ08fynJJ6/btGz6yct8X51m5XlTR9vu88t2rBk +5IRF3h9uJ7jW21S4UNrRdj4d4rygwLz3VcHN/SmR7xH3xeylB9pc6b9rQath +O2+u+N5WL5dPPPEi7z/36Va2s/GtGTe/6r97f3K+PN+z//oN1f1S4Ne9UtmO +1/8/9My1M6PqX+/PzxD8yG11L/38Ku+f4/lNVf30/jDav+PGqWNmtfF+L/CX +T+93/zszJnOd6i/9n7W4y+Hxc32eM/QB4wF9O2H30ftHLandIVD6lg3rbxx5 +0tAbanWA3IEPHXTsyrptA8Fj4k1qTzhj7Zxy9ht4mxcuL0sNLqMcgQ/ZO2nN +1EFl7B/wN+vMjD5uhfZ5byisp/qTId4gb/8r/PamN+3pNJx2hnj9Ng9cX1iA +98bERz5QurvT8FLT/0w4uen7f6/kO879HRG/svbW0tTgEo4r8C1L5tQbekOp ++S77Xl9nSffTj8/rVbx1+F5fb0qPF+M5YZ2iIcPvHXXUfFcSDu+xuU7bBcXm +u5Jw0q45/+o0/Ij5riT8oEnHTkPmFJn+2/b9fcZBuy75adsFx0z/E/NdWeJa +r9DPdNjopvJhlXyCup/pcFqTskkfNbf7iLTpT4a4ljPz9o3e+no1etwhh1Q4 +YEOTktTg/ex3IL/vT2i2f0tfyof4mp3XVPGUyXtpt9/t9fWvKuP88l7iZ749 +dfXUQSWmnci9KfxxWj6R69Rm4Glr5xww8oncQNVPzC+Lxy5/Oz5P8id/6tii +e2GRkWfktJ5nif/h+lrt/XexTpE7edrbJw694Yj5rpQ7t+ivXSvrdejvSrlp +Pa79vtPwg+a7Uq5wV92Ng5uinxwX811pfvfax74ZteQUqycpd5fS8wzxrStq +76uMU+n+x07PF19fQuun30eMf+Pun7RdcMj0P3bT1XdxvXadlfx9XdaGqn1/ +Ll/4+rxLKuNmWv6x0/bW3zNdVqfSfhabfqZN+5xfZlwi4km8fUKDoYeM3NKu +hvnl8q8LiavB/rhJecclcTfmtxtO239fD1bbQx/P0TjW60z4yC3/ffs4zjs8 +n9j1hbjuD+aRtato5zg7Q9zYf+LajmH+pkMzX4jrcWQ8M9Tjzjw9sy4zjmHs +nq8/VoP+m/f6uOgzO7qsKZvPe47871rP6f+Eel7ExPU88vvQRvnnRQ3yTxl/ +w9cN0+u4r6um7YPPt7866rP+g+bH2atw8TuX1Xqr50Hzvakwvx1OhdqO0Z8M +td2jHTPjTjsW5p8vqfDUd3Yc8HbM1/uqYd0xfou/b9W5bUnfQXPsuhaFBaPv +6fN6H2vfohq+1+Jcd8JOee1eFGo74+uh6fWI6475Lr+P+M28l8aOoz/JcXF6 +Had+mnWQ89TVME+d8a/4HVo/aU9c/fz2xGm/yNfJ0X6UP6fLbx+s/fRxqpk3 +TO5VyWup+2PtpK9zq/1MXx+gBv/Z1eA/O+NHUU9r8JPd0hfbfjqg63F+spU/ +ceMny3uzLr//n3U17F9qWKeybv3QP5zbvbDc9DPr5g3fWOHnlJt+2nZ8fYMa +9ilG/j6+p/U5cjXg7KfGGX8IHx37xqrK/BDdThLGC1fUuWdmkXk+CbWfxnU/ +PPjxr1sf62vtecX6ovxS+jnhc1tbX9+813F+Tni0T985d848wO8HruXs88kf +b/juT++Zedw65baq/RTXWaf3iVw33RrlB3Jf4+ooe0L5GL+X+z6n7Sr1IfzN +sX+cOXWm3eemwilPnnHw23q087STv3/p93umzzzufqvbFcWNp3Jc/P2Cfotf +rzaO/j7joh92VMwXrmvsl55H9E+M3+jjVNrvpb65q7vUbX+8XmXdfz7f/6ux +19n5mHbt5u3pmcfOmLrQ3r8aL7yH+nuT8EPhE9Tv9byK5rsMX6T3u3Q73u8C +H5+Wf5p8c1oOafPelMHte2PTvvevdPuJwfeY98am/ZTB7fjG4SsqjprU0I73 +i3R/Mga3/UmZ96YNbtuPTDveT8g/jpFpB/MlCPLLH/gR20+nn/d24w2Fe7uR +//m0y/9dicEzBrf+c+L0uPj1OvevjQ9kTDt+XdbtpM3zVg4Z075fB03/Oa/B +C6bfa+u6+/ie1nMf3zN6zu/T7/XxN92Oj7/pdnzczIwL8de0ftKe6HZ8vAt8 +iFoOidHzrMGtfqZNO/j5ultaDmnTfsbg9rus/cEvNriPX2k99/Gr/O3Y+evj +SxrHLzL66eNLun0f5zH6afBS2x/zvI/DGHtIXI97VMPzlJvpp4+foH6plkNa +7IaNA1v74OMkr+Udl7Rp38dJUPdDv9famZTBbf8zdv7y/8uvh1H4a4Wj/7Cr +Vv/xs/txjP8+0/8Kfzhv+9lwgloXfJw//7qQqUHPs2Ye+fi8WXfYTn45ZEw7 +Pk6efx1MTDs+Hp5/Xbbz3fu9uh2/H39b2RPvN+bvv53Xfl+MOo2QVyA/ba98 +nDm/fYhM//0+3cx3/n/mu0x7nidb+m/em2I/8+u/tT+x088f51e4m/P2B+Np +4+opY0/Spj0bl0gZ3O9fjJ4Q1/bExx/0fPRxhvz2Fv3aZ/qXNv3x+x3dvo+j +or6rlkPG+Et+H6S/Cz/L9+z3v7p9v+/W4+X3s7od/LLmu/B3NlyQN3+gJj/Z ++rE+TmX0nHqovzdiv/TzPp8hv59Wk39Yk7+XNbg/P/qD5Cvi/8f/l9//Twwe +sb8a9+cXGvdx+K/VOuXrleV/b8Y87+Mker3z8eT8dinFuk9abin7PN+bf51N +sR6Cfj4xeGzaAY5ftgZ/L2P66c+FtT3355j5vyuyOMftR1XnwtedMO/l+Gjc +xyuG5LUzEXmsdPspg/t4Tn67Ghu5+fiAxn08QeP+PK5I8jR0O7HB/TnOiVIX +S/czbXAfp2qgcB831rjPT9A4fonB/bmAxn38/CSF+3Nk/bw/F9a4j89oOfhz +WI37+I/GffzHyBnzOrxTxWd8voeOq/j8CuD/D7UBNFk= + "], {{ + {RGBColor[0.880722, 0.611041, 0.142051], EdgeForm[None], Specularity[ + GrayLevel[1], 3], + StyleBox[GraphicsGroup3DBox[ + TagBox[{Polygon3DBox[CompressedData[" +1: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 +QuT1/QS6LfL6ls3kieRKSdHvfpZ0CPPcTp/HdZ6K7ns29HH6ngz/npz9Ft0r +XbcBWkU+DPwnUuvBLdCjin7mOdJxkfeo9md31mol/JcK9i9k034EPjZ2DGEk ++LjYcYNR4FNj++aTwKfH9temgE+L7TtPBpeJHdvpJ78mdvzhOvk1seMYE8AV +Y8ccRiv2GTvW1F9xxNi++bCCbVbZrhugl8XO6ciPOCu2Tz1dMYfUvtUdiifF +9q+nFeznK54woOC4gXTiTOgZsW3aqfB7gG8Dby847iC/dQz4xNjxivHgseCn +wPvA42PnsD6Vnxt7P3wGHpPZ7XsL1iXSF/LNxsF/Wt8Z/ruJ44SKYY6I/X0+ +UMw5b90t/2co/LXQdwqWV5I3L3Pfv2Pbn4rVfJ/ZqM/G9lv1/V+lz2CuHwS/ +xb2DwA+A31T8ObUuk2zvH7v/TvhDZCtJboC/h+7JOUZ6eGTZJ7l3KHRzZLn5 +AW1BZHvl+7z9ZPnIP9DWRH7fvrGfJf0pO0fyRDrt/bztBtkM/8s7Bqr453/y +9uHlv/9IezCyv/SebIHI9uWjke0GyQjZC+Oys7k+sk2gsx1nZ1Dxw/mKi0XW +O49F1n+SNY9HluNa02J2Hl+OLZcrZPZJ39Q6TnbHT3nHZxWb/U3fM7K9sZDx +l0bW4wfyfobG/yRv+f6PbKetiOx7/xu8KnI88SPwQnAl6L9ot0X2vb/IW1ZK +Tv6evZvea09mo2hP7c3sCdkS1TNdLJ1cLdO50r0/89ta6Seuv8079qG4xyLm +fHdkfTo2s2ek0ytnulh20dd5xywUrzgssp6rnL33+OzdN2c6VPZV7UxmSnbW +ymSXZNh3spEiyxzJvw8zGSh9+0amc6UjKoFHKY4Y2faSvVEusi0lu+KyTK9J +v8m2rCAdXLQcqwweo98Zq2JkGbcXuiOy7km0BpH1XxrZxpV9K3n5WSYzJUtP +Ao8uWl5+nsnMOpnslQwuZHJ+c2afyxYuA92WOm62Cro7b99VfuuWTE/JNnk7 +b1tQduBTmW8oH/HNvO0e2Ty78vYV5Se+m7fNKntV9sXUbP2Pgb4T2ceQTTEj +k9tVs/XROpWP7N/K37uPOSXwNmEn/JH3vtee35+dJZ2jWxTrjGyrTEw9jmwe +2TvTsrM/NbV8k11zfnCs6pHU48tuVE6jTXAsQ/HeBonzvH8oPpM4D/uncnTI +l970b8T99RPnXg9Af0mcnxrGvb8mzh0PB1fNYvEnpY6JKDZyELhe4rzw/ixm +pfWcD22YOJ78V+IYkGJBQ2F8kliW9gN/l1iGD1YOMbFMHlLiOJj0yzzo9wWf +G9UqVA/OAVSRr5c43zSQ/nsTy9g+Ja7hkKxSTnNfYlnat8TxKdmwA0ocm5Nc +7F/imI50xKASy3R9k8tS20ySHztj5wk+ybneQPF0xdVVY6D4m/JmysEti53n +W649GTu/tQL6N/0PzTuHdQFrPYjv2Lzo+g3lwRRbUv2G4g3KRyqfqBj8yuB6 +iX0521aKO6vuQrUfqqlQnlHxxecLth/k77yYOFZWQzZd4pjbJeD1jFUvduxi +e+Jc3qXgdfD/Uh4SvBq8NnYsRblC6Z0FsXORyicqHvZa4thyLfo8Sv/Gse15 +vb/WQbUZXyW2VRSH+xi8BtyLtV2WOJ/busRxDOnJC4JtRa2t1nh54tzu1SWu +ZRmarafyPZLTyi8rVySZIX9Ydm/5vHNnikvIDq0WnPsZla3bzsR5zG78viux +ndm1xLFaybM3Y9vY0p/y+59WfBB++xLHHyX/5ONJX0s/KN+3PnH+SDbyK4n1 +aRf47yTWsz3BuxPbb93BbyS2Z3qUOHap58qmUxxY8THFya5MXMsRgR9JbD+3 +of/QxDHtAL9f4lqUI2UzgKtJHko3Jq45KSNdmbhGpRy4T+I6lrKSi4lj14ns +8MQxT8U+j2Ev9mEOjaE9EsfAU/p0TWynyV5rFRz3rwe/VeL6k8PArRPHxg8H +t09cP1MEt0tcVxOD9yS2eXrzLh3Bp4NLp44nK7Y5J3WcWXaU4nlHM49e4CsU +y0pc93Io/BaJa2MOSZ0rqQw+Atwhce1NKfC2xHnhTiWusdias2+m2K/quJQD +HR0ck1We6JrgegLlgFYE59cl64aAqxSd7xgZHI9TPUPr4PxKfcYZHFwzoZxU +4+BcZnX4TYLjzjqDI4JrEZRvGh5c06Ac09DgmJ3it8OC6xuUw1oSHGtTLVb7 +YPtbebQOwfa3cme9gm1l5QQHBddAKB+3OLgGS/JzUXC9i+Tq8uAaAsnzPsG2 +uPKSvcEnF50PWhZc4yX53C7YT1DOrlFwHreqZH5wjF5yo1ZwnvUs8GXB+dcz +wAOCaziUDx0YXG+hfGj94DzEBfIfg2s+lI+rHRyvVO746uB8VQPplOC82vng +msF53DO154PrOZQzvTQ4J3265FVwPFS54JbB+Ya62jPB+YM64GbBOQPJ9ubB +eYjaOnfB+RXJyb7BPoxyrA2Dc8AXw28QnDu5EHx5cP7vIp3H4LqTf/KnwXkL +ycbX2Yf35zx+p5D5adr/IfPflIsM9kOks2YH+zM6I7OC/RbJzG8S53e0Jl8n +rveQXJU/synTHfOCfR7p07nBvpD03fzgeiPpuBnBfoVk0U3B/oxk0cxgn0fy +alqwfyLZ+EEmwyWjPkycQ9TZl38iG02xrY/gb8j5LEwP9nMkY8dldqzic2NS +20qql3grcU2IvoXyW8pztSxxzkm5J/mSbye2efTt2jLmiUXnQ28M9pEkY6cG ++4c6412D/Vjl4hcG1yNKj98aXPcm26BLsN+oPHK3YF9X+eUewb6xcvGdQ+b3 +gnsG+8/KxXcP9quVa14QXLsj++EG3Vt03nBisO5XHdSk4BiH5LbsN9lrqrUY +F+wn633HB9dCtSqxnynbVrFL5QiVKxR/TJZLUj53QnA9lnTilOC4QEfw5OD4 +jvTU9cG5BNVlXRdcsyU9q7jK8XnXmdQJrs84F97IxPnBo8AlwXV+suVOCK5B +lB45Uomt2PpIeXblLivIxgzOia6VrA6uI5QuqBhcjyg5rFxYxaLzXscE1/9J +R5QLtodUH3h2cB5RY54WnFtdp/kG1y9KR5wRXHN5NPis4LxmednRwfWdsmN3 +cD0p7xqbY4NrK6V3ygTXfcruPSW4RlO68vTg+k69+6jE9X4aX3kW+fuK2Y+W +ray5p87Pyg4apX0UXH8p/Vg+uJ5SOqhycD2o9OzJwXWl0r9lg/PTD4GrBNeY +SndvSJyXlHw7gd+H89xm0I2J87ySk5sS50Mlc55KnOuUzFG8T7EmfUfFAWX7 +ST5vBS/LWQeVCq7plE1eKbh+VHr/qOA6S+nT44JrUqWvZfMsyFnWVQiuKVEd +6dTEPqzWvHRw7ax8BMUWp2f2j+KDwvLZu6eOyan2KQTXjEpfK1Yo3012+6nB +NbKyZ9LgWmH5CDulO1mDsfDWJa6vkE45L9ieVj5aOXTZwLKFLwzOWx8veav9 +ETn3qhrBTpltfDzjDWU+TaFDEseRFE96OHFtj3TKRcG58BPA98IfC//E1HFJ ++frydxTTHJVzn4uDa5jU57nEcVedR+33wTzrSsXtE9cdaW5rE+fcpadUT/mP +vx7bxpOdKR16ZnCdsfab6vN6Zb7D/wFRnuFS + "]], Polygon3DBox[CompressedData[" +1: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 +AL6qm70wqIr/+aDfUF+POb/S3vE8N4NHgYc32S9jtPW0feE35hrTe7IGvP71 +3dzfxsjWYr47wYeAtwb374vvc1jr6+gD3Uj7LPyvqO9Sxle+gPrqnfjM64On +ddJnZXV8nb3TMG46880Ing+8I2N/7bei/6WdfE+/68519IHf7hr1NfezLO2z +grcHv9lNPHEgeJu+7Bn9rWV6s5fu6cZ/GI58IHgI81/UyXpwXbin9Xf1Vdzr +e9SxK1tVsf9n887O7onvfBWykZSft893PfX7GH8043eg/0b0v7WbeGAL8Abg +iXXsz9Aq/sst3cRPm4PX1x/sRh9sBl5P3dKNPdsUvK7+D/e1AtffhzkWor4m +5RbwgZTVe6MPXW/9kH+pDeZ6S3biY7qf9IfORj6Ftt3ovx7lLsYe6/6i/juu +dzLyUfTbhP7/5f8l/Qbk91P/gfJKJ2vUtXq/MZ7fi/pgfX/wCX4n8JC+vE91 +5dKUW7iXGbjGV65n8Ej6zAj+K/g68ATwTOB/d/JMPtvMlG/Bt4LXoj4L5YdO +7tl7X4lyt+8CPDv1n1F+BN8NXp96L2Um6g9R1qX+JPdzBve3S5X4r6DtA/pf +hPw99bh7WlsOnoP6U/Q/k267Vokfl6PtWuSLIG+oL0+5CbwouM9vQ7kNvBh4 +TupPMP50xo+rEr9dTvuLnex399V7dfSNeue3yP/Buh+hz0Y5QZ+gji24rUr8 +/G0VWzuG8h+/kfqO8de1/srt+sed2AzX+zr8P4j8GdpWo34j8qHgY8D7s5af +5/4u4D4mVYlHnwOfD55YJR4f4D6i/1WtvdV/Nx6dXMUfebOMH6Q/NIW2nZr4 +Qca0xrYDuObLjD+j9SdfL+NLLq4v5J5t4of+nvr1rf+rLzJcv8S11028vk8V +e/F78K/B46vwATs28Wv/AL5B+6kfwfXmpdRc+0Ced7FOYnBj8dmM6dTx6rRu +/DV9yW3p802VNehafBP8I/WL9Q2or936JMPA0zvZX+6znZljOf67fgfmXpEy +mPmvQN6fsjn1U/g/vMh+Hd4bHaju+8g1BT6xk3huwXa9XEp9LLJjmGuVOuv1 +gTL6asU6fvHdZfTvBozZh/IMc96tLq2z3u4vYw/8Dgu3/ukjtD3L/FfrO9J+ +LPKptK/H2JX4n5lyE/V3O3kfvpd723dqLHYk73pvdUxPOIaf9yZme6SKv2As +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 +6vPGdXVyHPqV+pfn1vHHn6qyJlwb59XJq+qDyX2ZQzFPYr7krHa/yHXJ6b2l +P1DF13eNudZ2pMzreqiSrx0DXgQ8R5X8sRzqdPrv09p3x5tnU4eY6zN+1seW +r/x9nWt6bXM4T7vWkW9XRucP7YYzlzuXIzu4CUdnrs74zfvXv3myir//2zqc +xgutvfV7GEPrw5njk9uUE3qmtb9yRXIMnj2YXoR7kAPyLMHlRbghOVZz/T+d +gegmRjRWNKaUyzOmNLY8sgiXt1Ybg0xr96vxs7lPOdWpTThiz1JMafWdMYix +7Vw9iU0abV4ZG7hpNzHV9e37lxs35vJ7HFSEi96oim5SR+nPGUMaSxrTyj0a +YxprGmPKVcpJmls9osj6dY24VswZPkN9beSXVsmf3lmHM/Isg5yrXNKWrX24 +ufVfhrb+jP6J3IachNzEaUXiV3P05uqXB4/qZs2Y69eHcC3VXGtiGY5FruUn +G1/Gpmv79QHM3etj6BvMCd4ZvBB4S3AfeCfwguBh4BmMY8rEjMaO36r7KLO2 +9rKm/2bgOcTIfwEeBKZa9OdnVvDG4NnAA8G/BA8ufwqLigHd+CjGxvogw1v7 +3/DunujEN58L+SjkCyPfSl/GPQJeFLxNNxyJXMkZRbh+Y3BjcTkMuVb5e2N5 +c7rP1uGE5IbkfOS25TjkOs4swkVv7PqtEp/cVYezkLu4oLW3ciCPtf6kfIf5 +FGNZzzA8WccH8GyNMaH61z3sWZAVi+xtz+ic0fqD2g75E/1Tz7Pon8yNfHQZ +HbC139eYrLV3xqq+E9/NG1zvceq/q3OvC5ivqDPGbzFLlbmMYa8A799JbLsI +e2NJ43Pw3L05U+LZEs9sHNCNDdYWr1TlPIc+3OGtfda300fRVzGmNreqT6Zv +No5yJfUHKMfLr4P/pn9RRzaK8g34XnU49SPkmKnfTzmY+l60XeL+rePrPEzb +x3Xu4eTWf/TeFueel+mJPdAuLOEz9CR+MI4wP+z5lsWrnK/wmTwf86sqz+qe +ca3PVmUvje5mbc1e5XzLkq0/tV4RX9411uj/VVl7+uSetdHHndDaf7me1ap8 +2/OQjSsSI6zT3sNhrb/gvelje/ZGTkPf+ycfu8w9/+R79+Xsj/dsbGBO0/M/ +EzvJdfo+5S7Gtu9bvvH7KjGs6+FQypmdnEkzPtPma/vliJ6oswc9t/afMnvT +Z/ZsjzGL78I9796csYouUCe4d2eqoivcszOAvy+zl93jTF18V2bvv9YNX/oh +jZ+16/MtbVFP9tMn3dj+j8Cfg6+mvMP9nQc+uI7N0fa8Cf6C+jWUz8BXyMnU +0eF85qJTRbd7Zs2za8Y8+h/aOEQ//Wj7jNlnAv5fmVjemNLY8teU96nfQ3lc +35r5/0nfx7o5tyYHuC+yi+rkruSEp9ThX1+t8ow+qzpd3f6wfE0dvvaKKv6c +88m/vlXlmX12deTM1P9bRnear12NsQO4/lN1dJxcw8xVdJ/74TnkRyF/uL1f +575fvqbOM+t7/a/Mu9Cnvra1Z/oHrgdj9Vfk6KnvwmK+oUgMbiy+Gnh+8Igy ++UDjb3kV+ZXDmuj/Qa2+dm2s3sQWaBPk7zdospZd057H6Klja/U5fP97NDm/ +IKcgt2A8rW9/pjqUuddHvoq6r0x+f80mvq884RXgtZroUnWq/J+c5YDWvmiP +5Lrvaf1J/crnevJufEf61edU4UI8g+VZrF26uV5fO79ncjwXI3evPzyK611U +hBOQGxjThEuQM5A7GN2EK5BjkGu4pM45n9uK+ONjm9hubbjcxHpN8rV7lzm/ +MkMdf0+fxPU7cx39ow12f33J/T1d5OzZZVX4o3vB75bBp9c552Fuxfhhpjr6 +TJvtfv2h1f9D2/X+Y6u/NmvX26l1zmHKGRjP/bddbxu3+mAweJYiMbSx9M/q +2FptkvZEvlLuWZ1nvLM2ky+jrirDx8rnDO2NT65v7hmPfkViSmPLWerYNm26 +63udJvno3cvwpXLKcstjisRP6zbxZfRp5Ge/q2JLXiiS75M/lreWvza+2rG1 +v0u0+nVIb7ivUv/Bb9DE1mpz5YYG9Yaz95nk1V2Dk1v97NmTgb05w+o78zyE +ObCf+zy9yY31Y761tI1lzrONbvX7aq2+79+Erz6gzHk1+TL5C/kO+bENm/DF +xrTGtrs24cbkWORaPPOr77BYb84Cb9Qbzv4nrr7lwH33vsOJrb8wqdXn2i/f +2cTWX9R/8Ayy33PR3pxNHk4ZVoYDlAt0jbpW3SOevfKZfDafwbN7nqHchfqS +vTlb6fcw9ypn822bQ7mv9VfNrZhDkE+Rr5EfHN+EO5IjkSsZ1+TssxyjXKM5 +HnM98omeTdi9yd6SQ5RL1L/dqfVXteWemZZbNAY2FnbNGavqC7gWj2sS6xnD +GsseDe4r8sw+u2eI5TZ3q5J/PbYJV2AMaSy5aW+4ETmSBaif0CS21PcwNt2t +ie+uDy/Xc0wT30EfQm5mQhMuyBjYWFidObL1r/XPN+lNrG3MrT82sYnulfOU ++1Qnj2j9b89uTGrCBcoJyrVu3Bvu1u9nnvbndebSR9Zf2atJbC+nLLfsHtu9 +jQ/MVcxXh/8wxjTWlH9RZ3qG77zW3zenpI3X1h/fJBa1/xH0760TSxhjGGts +2+R809llziuOaJLLc024NtQpp1fRSeoa53Au70Eu5oJuzgN5llb7cHW3vZcq +53PV2doGbYK6fFgTLlWOUa7RM7rmANyj7lU5iLOq+GNyE54p82zZ6CJnL71H +79UzZ561NIdjnlkORS5lqya6RQ5XLtc5fdc/lLnWZsY8Rc4Ce/5mkybck5yU +3NSQJr6fPqBc135NdJtn7TzfuTF4cBHOSu5qcBPuT45JrmloE25LDksua9Mm +fJwcpFykcziXnJL5gIFNdLscn1zfRk24ODlFucVBTfSxHJ1c3dZNzqfJscm1 +bdOEazurzPnSLZpwv3LWctcXVck9TC5yNvjiKrkHfV59X/laz4g9Bj7Ce23C +lcoRyxVv3oQrllOWWzamVVdsWyVX6zW9tmvIs66ecfKcuJyY3Jhnus35yGHJ +Zf2n9VcHtf6n8bZnTsxZTmnC55rz8oy+fLFjtPWXV5lrUB2uVx2lrvq/1t8d +3Pq3nikw/jZeNB7fs0luRM5M7swctf7A6Cq5672bPLsct1y3fIJnpl3T8gur +NImd9WH0ZSY34cLlwOXC92liG7QRct07NMlv31Em/zayyfvynry3AU1iQ2NE +z0tbrKuDPEu9ZRPuUM5L7ss5nEv+6ME23vUMjvm+aU1y6uZz7iqSX9Fmabu0 +UZ69/n9PgmC2 + "]], Polygon3DBox[CompressedData[" +1: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 + "]], + Polygon3DBox[{{4528, 3111, 5752, 4245, 566, 4558}, {5495, 2999, + 3052, 320, 591, 4565}}]}, + Annotation[#, "Charting`Private`Tag$56875#1"]& ]], + Lighting->{{"Ambient", + RGBColor[0.30100577, 0.22414668499999998`, 0.090484535]}, { + "Directional", + RGBColor[0.2642166, 0.18331229999999998`, 0.04261530000000001], + ImageScaled[{0, 2, 2}]}, {"Directional", + RGBColor[0.2642166, 0.18331229999999998`, 0.04261530000000001], + ImageScaled[{2, 2, 2}]}, {"Directional", + RGBColor[0.2642166, 0.18331229999999998`, 0.04261530000000001], + ImageScaled[{2, 0, 2}]}}]}, + {RGBColor[0.368417, 0.506779, 0.709798], EdgeForm[None], Specularity[ + GrayLevel[1], 3], + StyleBox[GraphicsGroup3DBox[ + TagBox[{Polygon3DBox[CompressedData[" +1:eJxFnXfY1MT39h95drO7+GQXstldC0pVsYsNFcTeQLFgQ1GxVxDF3vCLvYFY +sKCAXaqAIoiIiiI27GJBxAKIYEFEFKW894d7ftf7R645mUwmk8mUU+5z0vK0 +C4/q3aiurq5t47q6eqXtc3V1c6K6urGZuroupbq6j5X+1FBXNzKtq9sgW1c3 +o1xXd12xru5OFX5d6TUq87nKXCv6CV27S/mvJHV1U5X3gY4rdb6nytyke1eq +zHKlA7K+p7PyP1V6tfLn6d4PRT+stGdcV/eA7vtNz91K7Ul1bKA2naj8u5X/ +s/KfUbkvVf5ppTfpWoPqXE/nM5UO11HUMUzX7lD5qWrPYqUf6fpVSluo/NG6 +3ljnt+jZ9yrvJqV/qvxnyntc6c86monOK/1D6TLyVW573dtR926l82Hqk39F +H670LZV7TdcH6Vl/K12h608q/TPj+7l3iJ7xmNKHlF6sd1mpjn9V6d9Z9wNt +/UXpbzoeFX2prkW0W+ntuud+0dOVDqWvRb+p9DxdGyv6P/VJX9FrVOe7Ss/S +8ZTy/1L+HzqGis6pv89I3Icj1N4FOpbqWROVzlX6rY77dO0etWdeoN/I19W9 +pPM7dExXuVWq/0bVMUh1FnT9cz3nebXjJdETlGbVP2WVTXTUVEdNKQPr5gbf +O0Pl71d/bar891TfF7pnQ9EvKn1Ux4+6506lCyrqE6V71fSuSpco/16ls1TP +Gaqvi+hL9T5b6t5pot9S/nHK30P0AJVtq/wTdf6T6lmivANUz6tq2wfKr+g4 +RUcLHTupzIcqk1eZfVTmA9H/qo17i+6h65vo2FxldlKdG4veSPRxev//Kf1e +6bOq8x9d+0fnZ+i+4XxzteVG1Xej6PkN7su5oT8Zs1/rGCj6Ed27QnV+r/Oj +NMan6LxL1uObb7Se3u865f2r6//qvIeed0u958hDKlMVvVDP/Lrotk1SulnG +/Rnr2jGq82Xdf5jOz9O9g2mb0vWUt77y/lbZLVVmCx0V5f2ger/JeGwcr3L9 +Vf5e0b+p3q1V/lWlb+r8FeXfqusX6dl/6Jveoba8p+tH6ijo/nvU7j1Ev6Xy +r6nMryrTQnn1+u7nKz+jtLfyJ6metQ3+Jk11X0nHKtWbVXoDa4jKLNG9N6jM +fzr/t5Hz31Nbq7qnicqdpro20fmpSs9W+WdU598q3z7recgcnFr22rBS996u +dhyha5+oba10z2rlv6LrG+t7t9L9T+j7j1R9LekjXbtd6fthrXiu7O9MHz4r ++i/Rv4p+R/e8onubqo4jYq8xc5l3uvddHdvq/qtV/jvlj+c7qExP0QerDSfq ++qW6fiPjnjmp/Mkq00x19Ve5d0Q/p3ZupTJf6PpHSnMZ98UQXe+l8t1Vz4PM +edGHi95FZZaz3jDnde+FOs8rrend7xK9VmVaq/5bdc+nqv9KteFQxh1rssbC +6Trvp/OndP6D6jhPx9d69vdKX1D5qu5tonsf0nt3U/lLVf4+lb9Z9XdV+hH7 +gsqN5H1F91HZX1g31Cf36Pxh1pWi27g443bW1L5Fog9V+nzZ6+AEpdeX3K67 +VX6l6h4c2rmo7G+yWs+ZknX7uf/C2GvRekpPi73usf6xl7CnHKr6TmEciB6p +6+NU71rd91TR+8+CjOdJonf6SfSDok9S+VtZS5R2Kjn/d9V3kNbGTwrqc/XB +7qrrDNYI1jDdO13HRqwfaufOym+utJfKTFQ9a3TvRqrnfl3PKh1X9vz+S/Wf +rjLDRC9jDdG1Rxh7SsfG3qfYr05WH22k+k9ROjn2GH9M+QWVXcM6rGM30f+x +zuv4RPd3U/lLlLaKPE8Z28/p/DWdD1V6WuI1ifE8W+35SvRTos9V/WNE/6v2 +vMD6z/xS/pai91QdWyvdQMf2ojdSeo/Kd1eZTuxXGa/PjPWL9YzNRU9Vfj+1 ++3g99zqlDyp/f+W/r/zn2Zd1/I89SfkzRT+htL2udVMdrahTeYvCfLlI13qJ +Xqz8DnrukeyJaudeonuIflf0T7reW8cNKv85+w19pfZ/prRfxvXSLs6h99O3 +nKBn7Ke8SO3rozJddd9VSq/RcQTzgXEJ76F6dtJxgPI+1VxoJ3o/0a+KHqJ7 +F6iOA5R2Vn0Xq/whuvaW6L7MM9Gtdf1DpQey1yvvMh2HiT5B9R+k9DPVd1LZ ++9qjoi8UfbboUaIvz/geyh+QuO2v67nnqsyp9aFtepfPw/O2UR8dqvytlG6n +a3vzXJV9WO2br3bsp7Qre0Xkd/5ReefouFD0S7rWRvTHKr+l7u+keyepbzup +/r1U/mxd20193pU2KH+7otv1stLfyv5W3eEx1L7DlLet1o+r4dMyfp/JquN8 +HW+wd6jcDexdqm8BeTqaqexc5b+d8X60u45ZKjNL79Fa5bYQ/Yyee5nqvkn0 +JUpvh79Q+Zt1fn/Z6csqf3Tsfe17xobSGSrTl37RO17JPqT0dN1/rvI+Vpmu +Kn+F6Dmiz9N466Qyb+v6qaJPED1HdDvV8ZbKbFDv9XJSxmvmKviSjJ91kuq5 +R3lLRA9We97JuD19VeYy1lflL1N9r8FL6/yOslP2goNLzu+lsjuqnn2U/5LK +H6L8afBtorsr/7Z68+qH6d7Pw/i5TfTVtEn0CJ6p4wKdn626Lld6ZtHvxjsu +F/2Hyr+uMncpPVd9fw5rmc6Xsr5nTe+s7/6F8m8V/arWwHHKv07HQ8r7TekU ++Oqy90H2w+2zlgeQBR5Smw/S+Qd61g2ilyv/EdFXlr1ejFM799dxlMp+ofGy +r8r8l/Ge/mrW+8sqnls2j8xaBO9Cmad1fkHiNZu19OLE/NhrZfPB8MOHq77+ +rDE6oqzXTdZPeM6HdN4o6zXufLX7Ob6h7htT9Jo6jO+ZNf+AfPFKZNmjJLqe +dTTkI6vESl+Av4Hf0TFO9BWJ2wgfMkN5j7KXa/+oy5oPZ53dOPX7Hak0Lpk/ +2avkfZT9dKXa85rKPxD6YUrR68+FyGoV7z/7an6doeutsp7nL4f5+JPSz1Vm +e6X7q8zDSlco/zm9a7/IvCbP+0xl2urafipzFbwO4xq+qGiekX6YnnV/raej +T+J9FjlihK6tho69/6zJeA96O8hlTXX0SswDwAs0qN2NlTe6aL4U+nld65tY +Vnpbz61nn8z6e/Qqm/9/lj1IfXSx8huUHqgxOVH3H6Dz31XXID33ffXVqSp/ +u+jhKr+LynylMo/ovKfyT6h3fsfEa+Nretbhur5v1mvg6Kx5syHwJarzeNqj +Os8pe09jf9xF7b+X+aL0S92/q8pto37LqZ4HMl6L94ZvYx9OLFvDyz2qa32U +PzTj9byz+utilZnNOqbrd2bcvjq924mi9ym77Vvo2m3Ikxnz5OewViILK/0c ++aBkPmAU81t1rq/8r2LzBfmsx/EQ1fOH6Fmq43j1yVSdH67zLZUel7XcO1v1 +vKTzh5XuXXRbXlF6etny1Rg9a6boN5Q/WPRpZctb7K1fqx86quyW6ocDlJ5S +bxkNfnMv0RuKPkvlTxb9hMrvm3hfpf17Jh6r7CEvlLxfPkbfIpsof3TibzsX +vkzHUNV5IXumyl+ludRR69H+eqelumeV6GwT8S6im+haRvSlurZI+duojrVq +5+5KW6vuJcr7SMchOl+isu+r3BPIZ7o3q/Oc7l1b8vf8S+lv8FKi/9Tzm6ie +RiqzUt/qd9XxmY6LVM8v8Ic6esCX6vquee+Z7VR+r8bqW6U76OggugE9gOrM +q9wGelYbtWkG/JjqbFV2O2nvaJVZoTq2VZmfVHaQ6jxf5+vpWn+lv6GTEP0+ +vCv6DNX7vt7jC923UWo+fZDSNWXv21cyvtR336jMabr/d+UfqPyhyv9e9fdT +/Wcqv7PKfK0yX6ueE1Ovo5fo+67Us67Ts45FvlH5a1T+DOpR/v4qc6nKrFJ+ +ovyy8r/kfuah0oXKH6D883Q+X/Stos8RvUD0HaLPFf2OyrVQ+q3Secq/Uvmn +63y5zicr3Y5vqvzdlb+PzlvquX/p/E+18SbqVX4D6ySysI7H9G6T6UO9S53u +PVfX5+n4W+e9lH6n4x/ROdWzintUz6XK+0HHv8q/SOn3OlaKvkLpjzr+g9fX +M39R+Q9Et2FN5x70DXrW9qJb6Vndlc7R8afyT1L6jY7lyK5K5+r4iz1VdSwU +vQnyj+7Nid5U97ZSnWt07Tt0XTpfLPppxqbaOVtlTlT/P65vvZ/KNQtj9UeV +2Vj0I8o7LG99wLSqxpfKPaL71qjMHxpj/ymt6P7pon/R+/7Kuej5KjdY93bO +Wz/xra7tqPQnpe/xXuE7vqY6myFrqc7VJevaViq9u2AZCfkoo2vvii4gQ7NG +6dqGTdyG73V9I9GrRGeUH4neBb5H9WT1rHrdO1P3rlFeY93/KvsyMreem+q5 +Q0Q/rvuOyHs9i3T+JfMCXYXO14j+FX0Buj6dJ6r/ccaQ8h9SP1d1vlL0a3r+ +7Xx/xoyuN1I985T+qzZsrrzOesZ2Or+F8aJjfdEvUY/yH0bnpLxDRe+gvD9U +19bw0WpfO+UVdW2pvt2NfGf6QWVOVP7eog8WfZLoA0V3FX2y6ENEHym6h+j9 +RHcJa1pRdb6hOotq2wrqUtumk0979R73Mh51NNH58bq3vei9RK9OLYPUqc9G +84661lz5y1gzRH+mtv2taxX2ffXbk9RTsO71L+UXkLGUv53yV7OWoTMS/Qvr +leia6LzWsY3Q1YpuLLoZY1T0CpWpij6z7DV7H3Q4Oa+zrLHPMZ9Et1be9nqH +v0XP1DtNYM4VrJ+anZjHLOs9Wujdlyl/lejmov8Q/Yrox1V+seiL+Gb0V8Hr +2glK99S1A5TXXfQeovflWaIbRP+mMt+znimvqOd/J/pi0bHoZegf+F6iDxNd +jqxDWF/3/pSzTmFSwXzcDfAvShfmzIuvDHPhMXS0opvr2vqqp4SOkW+gtKmO +RSr/n9q/vujfWBNENxb9K32n9Afd11/0WSpXh35TaRPVM051bqZrJdELRF/N +NxH9hugS30T0fNFXoUMXfZrKHql6urMHwtepXZdpfe6JDkP5xym/oOcthZdS +Gy5Tulj5e2jcNNX9GdHjVd/lyp/EnqD8NxPrSf9hrqHjYy9S2S2Zxyq/CH2w +zv9R/hhd30T5y/meyv9T5yehY1L6KHNG5W/W+eYl8yFfwTuo/KHKP1rX39A4 +bKE2P6Y2/qj8m5R/tvKvY26x1+c8vhnn/6nMgznvx+zF/1O6TEeO76prjUW/ +rne8QO2eo2+0WnnXq869lH+QytSrzUWN4RZK91WZU1THB0r7655T1fYblB4X +9ACfKi3r/qruPxkeD3lZdXytdFddOxReVGmqMjWVOV9lvtS1ZXruz8jyiWUT +xsB6VY8Z1tFHg34GPc2vum+O6nw7Ml+0ROnzShPVWdS1v3XvZzoqKvMpehU9 +M1b+KeinkfHrvY61VTs66trbSj9R2b4568UfD/oW9C6dde18lflI6R412x7G +iM6qP55R/9RynuvP5j3f39I9G+c8Z5n3I/Oe+xvqnh2Q3ZRupaNTxuOkCr+H +DlN0QeVH5H1/p5r1Wf/oek75VeVvqPyH9R6989aNL2CMFyzTzmdcc030njXb +RV5Snc31ng+j31e6e826s99VZ9TYaxbr1QDdd1besugP7AkF63YnpNbdjVJ6 +q/JOy5sfelXni5X/mtJB6MTrrf//TvSv9bZ5TcjazoWMPDy2fI2cfZjqP4u1 +H76q7D0XXSKyO98aOfn42DrGheL/h8OP1ttuhY4SXSU2slNi6yZ/bfAYPVl1 +XoWenfdrpLmo9DzlHRzagA4FXcoP2Mti60bQkZyK7rbeOsweogeJXiz6CNXZ +W/ffiQyWsX4E3cjFyuuctc3uSZW/pt66iP6M97xlrstFHwsPhm5R6XY6/1X3 +1YvevGBdTlZ0W9ZN0dcoPSFvPVtzzbFtCh7P01LrrCYpvUh5R7F/IVNrnO+o +8zcY46L/zLnMirBObobcgV1GZVPlF2q2wYxUX66v774hPJXu2blk/eFOyNbw +i6pznp43JbWufpzSZ5GlRc9S+rzOP2LOwYeonqfynmMv6r6+eetneTZt2Etl +xir/9Lz15x+KHpmzPmSW6EexpYmeKfqxnOXGkaJPVH5f9Puix+VsD2pfs531 +SbV/15q/34/YGlTmEZV/WmW+Ej08bx3K56KHwb9mvM8ORLem9H216ZfIa90M +lRmiMvewZokek7MMOE702XmPzwmsT3mPget0/3hdv17px8ofmrdc8Z7op3Xv +M6JfEH1h3nLFaNabvMfkUNFdRR+rcsco/Zr1N/DD2JiRNQao3jdVx91KD9Bx +muhGaudONevpnq+Yz9xC97bUGLlZde6bt41ikeh3lA5XnQ+K7pK3LeIQ3T8u +Y77oMR1PsrYp3aVmHdlE1Xlr2fqoR5U+q3uPy1uPfHnZOrLb0WMr/+C858Sd +og/Iex7vWLNOcJzq2bnmefsCcn/J/TGAcaVnfhtZdngJOSfyvjmtbFvDT+jM +NZZa523frop+nrmR8xp/UMHrfBt4Q9GPi34K3TW6RKWVxuaN4IvezbkcZVLl +j2e+sfeLbpW3fa9B9CjkCPjwxubJ4Mc2RA7lWWpno8bm+eD3sPFht12O3Uz5 +Tyg/yVm+YF16W+8ypWxd0ELGSNn22flKS/B9fC94FNFjkX1EN21sPg8e73X4 +ZdHXorMT3S1vWfQNxnbO8uRLyHQ6jhF9tdp3DGuG0leV94DKnMtaJPqyvHUX +w0VfnLet82XR96jMsSrziuiHlH+O6DmsMfCzostqT3PWDZ2fqvwXleZ078bI +rQXvy7Gedwk6PaUH6Vgi+mBkaF0/T/ceovNE9YzLe7+fy7zOW6/YV33xBDp6 +pWtS89pfKT2EtSPynrJN1uMNfSxzjbX2MD33lKJtbQ+pv+dkrPdmjX5R95+M +7gNeXuWPwnZVtS3lpox1vsfo/uvrjYu4DR4q473qhNj2nUXYySP3JzaRI4J9 +ATvDFkXzOSm2gsh2C/T/O6CjUZmjVWYnXftU9O2q7yhsSZG/485F8wzYaPZQ ++S7ondSXv+j8DuXvqbR9HPRsDZYz2okeK3pN0diDm9Hf693OYK/EVlw03/JI +7LnJPoleuV1svebkBuuS0CnVip7X7KEPwW+UrDe7U+mMyP22p67Ng9cCV6G5 +20L0jvW2IzyjMvMz3pv7lbyO3qo6X1YfDgy2xdNVbkC97ZKDip6P/ZQO1PGn +8kfF/sZ86y9Sjy3GO7bEHzK2L7J/b5PYhoItZVHRdp+tsXHBL2Hn1DfdS3QM +3kH0bD2/Ld9F93TEBoMOTXW8zX6nZ75bNW4BO0hNeZvp2T2x/5U9T9FvX6b8 +tzQ238iaNxqk49eMbdiXqfy3Ou8Q+MPWyitjP2Lsqv6ZQWdQU/7D6vOLVe4r +lW+vdLbyV4v3uE35bWPf+4To3eAX1f53qsZ67KtnNdO1ovJbsuYzv0Q31JvG +NoT9+hBsUzoOF30Ge0Jkfpv9DvvMk0H3h9737oz1nu+q3D6it2NOlIwFGlv0 +HMQO00X17RFbx/gGto6MbbXYq44NdsoDlfZW+YuUd43S43U+T/QDuu8A1TlY +ZQ5SXs/I6wA64ZODLhqd9Ofqiwb0p0r3L1ouQBfctWi95b2q5yRd7xF5/922 +7O+F/Qqd6j4qt0p9VVL6vvJvVP61yu8n+kjwADq2Ff0eNkbVcTz7sM73Fb03 +Mi7jE7tBxvah1uim0TmzT8W2S76M3Vn524jupLqTomWTTNH2glMztqsdqmsX +iO6CzKLybZTXvmyenX7eud42X+xd9breBN0sOA++ter6QPk36/w7xrTKr4/N +Ued7KP+FBmNvuir/HZ1vq/xdlT6v/F1i63ymij5afR6pzDTmuubQuMi85R5K +d9NxkK410bObq/yOev7msftnlO79sOzvi30Tuzxjabrym8Grg1lROzeL3Q8j +wQagh9XzWmpN2CJxO9HVNypaVvpLZTtgW4B3Y46pnp+Ut7Rq+34L5RVUvre+ +fTuVuwAZQudXwZfTJ7HLPKZntRS9meinGmxDh14/sf5sU9HDlL9J7PcaTpsj +2/rB1YAzATP2Z1PJuWXjqcBkLY6th78CnIXKbI2crXdZr2yM1vpKuyOjqY6P +VeZE0RuyHon+MjZu7RKlWfhFpYvV5vcqxp79q2eV0XGLvl/teb9im8Iq5bdV +u3ev9zj5W331Lvud0uOUds+4H/szh5VXr/Z0i42b+q7BYxbZv6PO+5S8P7co +2v7cK2N7Cfwh5Y9KrOdrKnqw7j0Z3Be8kPI2jD0Ohyj/Od3fCF2v8m5UPY0i +2+MeQpetdJ/UevZ6lb+rwViD/hnvW9jhz8vYFv9uxTi6v/SOn6nOMn0fm3/D +lnW12vO66FGirxXdMjGObA94M5VLWDew0yn/Mr6J+rOhbLxWlX0ZvQO6XqWz +9Kyy8tfD7hl5brNvrSp7TndMvc+x3y1QW55jvmd9jb3jvKzteugZdlCZTVXP +rMhYzRYZ4xOx+2D/wfbHmtcp8Tu+rbal+i6dE9u7semAFborY5zEAbFtOu/o ++Y8r/ygdFV07pex9HLsZtkKwDLuJnqr9ZYzKXKHjvKJ5m+NYAxPbuCdi24lt +s/pIdZ6lay+yFis9W23+PWvbcyP4ZPX/LSp/Dnga9p0wPsEU3qP89VX+1Yzx +UsfAPzA+sTWXrEPaXXlT1J6RqvMiHTunxjVuqDRTNiYRDNuxuudSeBW158Wy +MTZnK/8Y5MiM29EtMZbvJaV36rmfBBvZvIr5sjNZk4uWufZV2qdo2XlYbP0L +PCT6GPAg92WMrdk/Nt81M9j7Hst4nxiWsU0QDM3BqvdMpSP4LkXLSr2LlmHR +Wx9StA4K7AcYkJEZ72XYJvN67uiMMWfvxX6PiUVj3MAzPt1gHRDr2xZKIx05 +5d+pejZljxbdPPYB/XiDMQ7ocJhvrA8f6FoFWyd7Qcb3fhgZ97RdxmP7W+an +yrxf8rVnlH6RNXaivcr8Wnbakv1Q13bN+FlniN4Nfkz3fwuPl3Gbl5Q998tK +x+hbdhC9OWtMyXpK7HHYJZgD22Zsw8CWcZKuj1Jeh6zXwbMS4zG+Vxt/zxj3 +CO6Kfa93xvibk4uWf08qGq/yQsZ8+Sx0VOrP/mpPl9g8wAesJ0Xz/N0Yz9gM +9LyzUuvBNmR86pnfBLzIIw3WZbK3PsmeWDKm+Afl3aX7Ps/6HCzcfbpnLntW +ybjl2TrfuGwsKrZX9jXwqQ+J/lTXN8r4W/4S+7ngQneIvT6M0bPGqvwdyvtO +dd6j9v2ne45IPb+rGeM7W2XMp7EOtinZHvUJa1vsfecWMJlaHxuzTmOXCTqo +W5VfFL1C9HWi20TGLNLn7DmME/awSGV+VtqvwetrkjGWtBLW5wHKX636i/We +78zHNhnvVS1L3g9fV9nlTc1/3oTOkL1L9P8azDuAIwV3eFzJNsDpul4qGxsL +TruEzVXXr1f5Bp23rXcfbq6++Vj0LbExFfBT2yMrFI0Da1e0HQgcanOdLyya +p9wW23/JMtNmoo8sWzbZNrEOGflja9F/x8bOrYjNa7VW2Y/0LX4omofbSOlk +rV3PZo2X3Vzf5kylq+FLlbbOmG9uE3sMPIo+sGw+qg37CHsNfFjV2Gb4tVaJ +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 + "]], Polygon3DBox[CompressedData[" +1:eJwtnWOYJFkThXu30N2zXVU9lVU96521beNb27Zt27Zt27Zta9a2vd/77skf ++fSNjJs3szIvIk6cuD3hhtutuO3oPT09d9Z7eqr8Pb3T03MC5XkqPT3zUp68 +oIxi9GZPz8Yjenpm7+/pqfT19HxMnZ7enp5LqPMnDfQ1enrWR/9uq6dnW84P +R/8E5YvQX0J5L9o7grYuRL4Y+TTqb079sWl3I9pfEP1MnHuTazbg+rM5tyS6 +86h/DvUvQr8s5dfQr4l+AvQvU/8u5M/RT1jjN1A+gzonIi9C/QUon825u5B/ +ov5BlH/nmgUoj4X+K8pz83v6+T1f+vtp9/I2vxPdMwM8F8/3BHUK6n/Pb9yB +8jnoV0P/KPoN0a/MPepcuwPX/kJ5TJ55A+ovQJ0ZqT8P7Y9B+19Tp06dDvr1 +0C+F/j7auJhrLkV3BPLZvJ+Daf8v7nUoug1o/9ki9QuuGx/5fup/Qf1J+L13 +UB4DfT/XDnKvIfQn8xuvQj8O16xB+axWvu17yPtRnoXn+ZvnGMW5vzk+oo1V +kX9GfzttnUqd6zm/OfL2lCfhvttQXpx7zMo9RnFMjlxH3oXyWVx/MvVXRF6Y +8nOcGwv97/yGHSm/1M23uJN2RvJ8Z1PnFOofTJ1vuN8cPE+N9/Mp50bjOU7j +njdQXoJrZuP6M5HvQD4MeTXkM5BvQ94DeTnkO1q5bgLex+3cYzbaG432PqTO +vxwXoH+Uv0tS/17e6efcfwvqH039Yym/ThsT8Sz/8Lw72f84JkH+F/kpyrMN +9vRcRt1NOT6k/Utou3cYv5E2uhxtvtdEtP0N99ma33cT59bnGVYr3+mWlKfl +mll706/fRr6x1Pnez0PeGf0ytVyzBfI0yLPYDsdFHG8gb8Q9zuSac5FfQ14V ++TDkd6l/M+fqXL86f2dGfpG/9/Gb/3LcIO9G/eXQr8H531oZi47JE/zWnFuP +Oivz933HFOWrKT9DeXn+1oboT/x9GvkPvuUZ6LenvaVquabO7x+f9sblXd1P +3Vs5t2F/7tVLnTcp39Cb8bcKf1+k3n3UfxrdJNz/3+HMFcgdzt/D9Q3e98e0 +36D+e+pp/270nziv8H4fbESekOdfjXMb0f5k1J+uN/NChz41teMV3XbUn4Rv +NSbHVOgKjsM4nqD+N3zfJvV6ud+9nPuXNn+x76EbQf0pOTcZx0m0vzXnluB5 +V0A+lOPxvsx5PuPm6KdGntn3yHEm72h+rp+Xdu/m9zT5+yn68an7Pu3XeP5Z +0c/CMRe6BvKclOfg2If+uTbP/yrP8gV1d+L5H0A/Dr/1Se4/Ief6aP8b7vM8 +525y/NPGn8jvIF+Lvo78gd+ZNv5Cfo7ysP7ML84zTZ5lPuRhnP8OeVLkRf0N +yNNwTMxzrIy8N/XnQB6X+y2LPBPld7nfH5QX4fgd/eS+N8qrcpyOPBfyP5RX +4TgSeU7kkTzPNdxjJOUK5Yk4VkI/O/KzPN/YtH81+gm8lvb/Rrcix3aOf981 +5fP9Dry/xWyDd7oW5xa3v1L/AMrrc/0itZzb3r6MPD/y/Mh/Ii/A4eLW8Z6U +L+fvHchL8/dO5OP5uwryvPy9G/kE/q6KPB9/j0HenPYWo71lkVekvE1/6nqP +OvJcyKMjf+Ycz/Ptgrwg8if8tlXR7+QzIC9Yy7fbBHnt8ht+xd+Nkdfy2ZAH +qD8vch/yN8grIW/Xn2fZjOtfp3xdOVZX4u81HOv2p286Zl+lfG1v5vsV+dvT +lznRufCDevqKc4Rzg33mSuR1+vPb7uSa7yhvxbGhcxX6vr6ska6Nrjvf9meO +cm563XW1N2PAvv8q8j/8nRX5H9ccjm8ob8axLudfRh69LzaEtsNHyBMhd4el +LznmTkEee1j63jYcH9BH1uG5nqY/fGb/Zz6YgPJ4jIsHeNffuD67NlHnW8oj +6F9/08bDvKuHqN9P/ZHox0f3IPUvcK3xN5Zz5iD1v3R8a/wwv0/CN2tz/0nQ +v0X/Wp1jsFyf16WtC9BPR91PaO8h2vuFv2Oim49zv1L+iToF9Zfh3rsxfj/j +3BjoZ0D/uc9Mu6Nx/484N4x6Yznf9WZOdm7uonsQuVHaTG30X/F8a3P9IM+3 +D22sVYsN85ttc79JnQ8pP8zzDPpbXHO0wZwPuf7HvqwVH9H+Oa6NfpNyDEyM +PPqwjA3nyGkH8439tldTf3x+79fIjzu/8C5mQP9Xf+bS59GPxfX9XD8O8ngc +M6GvIg9RfkT7D33dOdi10vmF9sYYlrqv0t7UyIM8f9HIfDkRcmVY1taX0Z/P +9Z9wvy3LNWQM6nzcnzX8M/Tnov/IMVquUWcjf4C8KfKlyGcgj0LeqDc2zVnI +7yNvgnwi8lXILe43IfL4ruk8/x29WWs/5vnPRP8e9Tfm3D6ce9R+g/wmz7ye +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 +tvjLfpQ3bWVNc20TI9wWedF6sEPtg41awZMeaodDdCLyFfVwi8TAxbRWo735 +qb9myXERk9qoXN/XamVN36Tsj/cMJCbxdTeYu9j7+mJoRWIGYlJPOAe2E8Mz +ljckvoX8FvKB6L9B/sD1EvmYZub/s1wrkQ9oZn25rEiMQExwYTGoIhi9WL3z +39JFMP2LeZ5JKsH6xfzFrJZBPwf6dXn2Uziu5vmLIt/rl4H4+t9303+uaMVf +k4u1gnOkODHf654i9sTkrdgcd1F/lRFZt1y/Hu3GPpyyFZvx7m7sETHYt7we +eXk5WK3YbNpuxtRfkvczmFi7/elx/Tie512efynkN3n+Nah/p9g68ifIWyCP +xrWrIj/cCga/Sjn/nNuKPyi3yfF2USv+n1wq+/ujrWAPryO/xj3Xdo5GXl48 +To4V+vGov77je0R4ZWJ0D3P/1ZGfbAWfe6Qb++c712CxoW7stT7XVOTxuP4V +2n9SnoVYCe2/irxUM5yvpZHfQT4F+Su+z02837G4/vxW8MYh5wLk98qY8zPd +cK7Oa4WPJhdrBPIbZcz3afSjIW/SzBq8nNwu2l8e+VjjHdoOlG/kuAP93tpf +6NdHvlCbCX2X659vhG/1lP6kv7cRvtKT+ibGNBrhWz2B/CvXj+D6+Y1x0N7v +yPNrJ9DeSrT3E/K1/P4Z0RdikcgvIG+BvKTYaDNr/n8xE+3poXC+HkC+H/lr +5C+RJ6W9Qdr7YiicqRHINeT3kM9vxt66tggG94LjdTDYXIXn3aEZ++dA9HVj +HL5v2h/Vzpzp3HkEPtDk3awhriXnGLfsxj/TV79NnAR5An2GamL84xWZ053b +n+5N7No5zbltZ66frBuO0ikDiTnLXdIfN7b3hThkN/7oX70lT66eOdq5+m5x +sG7WFNeWy/sSy95Tm432KmKdyAO8i2OQ5xmGnY3cPyI26kno1+R+NeSdkQ9B +Xhl5D/0B6v/C95uyGwxBLOGmvsRGdx8RXpD8oOm7iSkbW5bzN3o7nKljyvvL +pXqCc09SHqMZfFvO1ivOj4Phcul//9kKvvhZOzaTttPz1fAPtZm0nZ5FPqOI +Pyq2K4Y9Jm1dV8Qe1maW6+B4X7QVvs5LndjU2tbvan+3g48Y2zWePaocv1fw +/D843p0fOhnbE3D8Tf0r0R3H9Z9Ug79r82r7PoJ8nPEm5BsGEk94jueZU5sX +/Q/ajO3YeNp6tyEfXMRm03b7Qvsd/QzIl/C81yLvjX4VMSD0j+kDGluWl4p8 +l/5EEZta21qM7+1u1iTXJmMKxkucn1aivT/4fn+2Mx9d3wg/6k30y3cyF/8l +1tfJ/HxDI/HA62l/F67pq8Xmk9/q+rZ6K/Ea7Z8FO8EWjIkZX9K+GuwNpiO2 +879ObK/lxeLQL9KJr27Mb1XkpfTRtX84lqZ8Aedequac8VttSm1LY2w/tGMT +aht+j/wJ8kLas43Ec+8ugi+di65CnT3U87x3DIS/+wLvZx7qz90KX3PtdupY +d3SOlbh2MTGJemKQi5X+5La1YLqztmPTaNvoc+p7LkD7l2mf0d6zxm5HhMcp +n/NluaWu93yfNcWExAp5xh/sX8b9u+EMyiM0xmX8R05g32AwObE5OXbyYuTH +GC/dAXkY+peM2XTC6ZQXZGxOruc4I8Lzke8zlbY38g+lj/qe9h3Hh2JFHD1D +8XflHRgTWqsTPOfnVvD3b7vB0+Rhysd8qBvO2Bfcb/LBcMmMyT+DPOlgYvVT +ur67/tq/uuHAvM310wyGGyNm/iz6KQaDpYvZVtFPPRgsV0x7GPKUg8G6xeA/ +cs4fDDYvZ0neoLFOx/d0zawf+vj6+ovx21duBnMQe5iX+lc204ftyydSvojj +H/TbyN3QnhUjqiZ+Ox/y1cjDjA0gz498SzN824/tP35v5Ar6+2l/UeQPeL8H +aX+gXxj5gdKHfAV5MeQvSp92VDc+rD6oGMU33fio+qq7cv9pud8kyDMi76lP +SvvTikcgbyomR/1pkBfXXnR+Qp4KeSHk48Qfisypzq0rVRNLnLgRHpZ8rGmL ++A9XtsJHfroIZ/uqVvjpcrnH8/cOJD77Fe3fWY6dFbQfG9GtUY29a/x2oU5k +z49X2h5TID9c4tfaGhMjP6TP24itMHY167X8bG2FDvL9lfCbtRV6ke+thJ/9 +L+0O59lG59y2clCaic0bkzc2/1YzsU5jvsZ+32kmVqs9r11/0EBiKTXnB67/ +sRE+tD7dhuiP4jiuHnvTeL9Yu/ynOTi3GfJFvIN5qxlTjq3b0I+jLVoNP//s +gXD15by9je57fYt6YrzGiy9zvqmGz2Q86sKBxH61h7WL5xWvRz6kEX6Ic9VE +6J6pJN/gyWa4CXIW5C7cwrmz0Fc5rmiGPy7X3vyAm1vpe5PWgoHMQd0XqdOq +hfMi9+VX9H9WM/9vhv487btKxofj5N9muCtiiiNamTtmo/wzdTZqZGwYOz6H +cwPOC65llWD811Pelj53FvLmjfBpDub6Ptq7q5J41lHIXeR7KslXcK0cWYu/ +Y/z9UuTJKK+rz6hdwnFFJePVcXsddU6qZT11XT27GSx0z3ryJ4527Fcynh3X ++zXzPF+UGMnVA+FG6G/odygvWo1/JF/ixnLtXlA8Cfk6vv851djg2uLrlGPx +Rn3QZmIh8iE+o71ZaO/KInifNlV/aWuI5x2lj075FNr8nPLl1FkF+VaOsWqx +V99Cd3gz2PVO9eRDrIS8TiXzmfOaPsGWyIs24ivM2QyXxjV2evEhbKxf6e8t +9J8NJT/Ed70S+pftu9T5gLXjEeM/lJtFxqfjVN9gDuqsKrZZS/zyz+HJ92j7 +3K4X/F21lpwEcxPMp3Cs6t/q576g7V2P/2t+h3jlp9XYUxugu4pjt3rsJ+2o +4wfiO0yG/A66V5vJDXnBd8L1lSLzw3/zhNh2kfnDeUTf48CB+BZjcu6ZRubq +EbXY++ZHPCzWQHk4x6OUz6X+uJVgSH86F2lDUR7bsmtLO/OP85C+y8hWuO32 +4fs596jftRobSxxgnVawfTH+j5zvmuGCvMw1k6FrF5kPnRf1zY4YiG80Iede +5dwH4qr1cFLkaxw5kFyeNvrH0J3RTVxbH05frqfI7+lvhJ8xGvKgv68RPorx +Y8eaNqt+6df251piIus1shbNXAt+sDbyzK3wdIxJ2X/tn3Kn5HzJ/ZqjlVwW +7e05W7EJ/Z768NqKYmon1YNpiG2c2Qg3Ts6d3LszOD92LRyOEeX9HCvm2Dwy +EDxZLoL8hJcpP8/7W7YWztv8rcz389UyRztXT468E/VfqSfn6DbaPEDsh+Pw +Vua75Z0fkf/Xil6uWz/nDittRW29gzmO0O9rJddDTt0hA5lvF6glx+xodJc3 +M9f+y7FAK5iacf6FGsHa/C5+H/kH5nu9QhvT1sI5WaLs73IR5eD9x8VrBVvd +QjzK+Qr9CpRXdMyXstyyycRcfTbuv3AtY3KOcn4+phaMWKxYjHFKbZtWsEfx +8YVq4VROWs6P8pLlJ79DnQNbyVUz58zcs5rfnPq7Ix/fzPf+BvkM8daB2Mra +2mchf6wt0Mq7OFe8t1x/16ylD9uXT6O/zlXL2BArm6+TWLCYmtjaqq3kxlzJ +cRLlfVvhzpkDZi7YyGa4MPKh32plPK1WCyfr/UbGW7cSPEpcypiZ+VzOPWuV +ttL51cSXTqf+Zs1g38aoz0deE/ka5E+Qz23EdzI+Ybz4rEb4qy9Ugv/5zNpa +p1UTEz21ER9S7rcYkr7lBY4p8eRq4ifavkdXE/86Ed2K4vOUj2mE3ynfUW6S +fKcX7Z/o/0Z/cyN8yX94x41auFHbNPJ95G6Kf4mDdTluptzoDb/wD+qPpv9G +G1tQf3H9J8pHNMIfNd5zfzX4xcWcW70IT/iERvibciQd74s3wg9x/MmllBMq +N3QubW3Wivs5fm7GJzZXRoxLX1l7a51abB5tn/0b4QqKgWg/KWtLydncopUY +68z1YKpiq873K9eyZrh2bNdKPp45fub62V/kPcpZMJ9Kn1PsXYxVX1SfVr6M +c52+7h3N5LmY72K+Zcs+yrPf1pf8OOdv+6c5S+YuDaJ/G90dHJ+jm10bifK9 +xseb8ZHlnYvh6TtrO8slkX9iPt9w13ztI+RbKV/cyvwgH8j80A7yNeh/Qb7N +9VabSf+UNu92fRwK50N7+UF+y0+st9/ye4dx7hO5z82s9+IF4gbGaI0ti5GK +lY4s8SVtSbHWa7juJ+rPah9qZU50bpS/JN/XmHBPLZij2KMxee0fbSGxWO2r +XyqxEbQVbkL+U1uSa+ql/Wl//VCOXzl/ys2UT2G+3Bit2IaPcEzQSsze+erq +RmL5rqdfm7uoDaHt2gk3RMxY7Nj7naZvxTEu5x7rZn6y74sFG/86xN/Csbd9 +tRnbypiWsS1//3G18AXGKp/npkr8Oe1VuQByBxxDjqU7G/EtHiif4VZjWsin +Oxdyv+8ZX99Ug7du6LtAvob2vnNORf62nfelLSrWc0Yz1/9YDQf6t3bsZe1m +fctrimCP2qb6ntqrysaAL2jGHv+V8hg8zzXOTRw3VLLG/bd+FdFrq+vbHttI +7Ns+aF+0D9oX35FzR/lk9LvX0gfti76vkyvBv7RHR3FsUEuftG9uzbFgPWug +/GjzYV1/5qGdJbjfp9z/X669GN3cyJtTf8561mj50Y5rx7drgvxb84Ee1d+q +xj/yfrNX4p++R/lh3ufe1fi7czu/0v7+lGdFN9mIrH9y6YzhnO4ah/4I5P9R +d/ISW5miFrx6gWY4AL6PrylPin496h9p29ZD3qDI/Ow8LVYxUTPx2wOr4bRv +X2T9cB3R976Pv1PXgnevQPneZtbbU/TJXFvMs64mfmM+tdi2Zc+N1cya6tqq +zSv//hiOU+vxAeTTb1lkfXGd0bd/mvbWreSbfcu5xweCpZxLnaWRNyvi6y/I +vaYeEWy+Td2C46ZmOGRyyVxj5NNrU2hbyFeVr67No+2jjWT+wyHI+9Rjc8n/ +d413rTdGbz6zNoC2gPmF5jOvQv3x65mzX3E+LeK/vEZ5SZ7nsSL+sTEYYzFr +a7PVs4a/zrlDG/F3nZOdm6czR6OaGI2xmk/5u0wleMhnzXBE5CMYMzF2Yn9+ +x/WrmvdzZCPrnXO4c7l2qPaoNpD52cbDt6pkTndu1+bS9nIOkY//h+s1+luQ +h9CdxzWfIt9UDX/B+PnulayB/62Fw4OFN63H/PxII/a38Wvj2O+U/BUxIbGh +eZtZ/7fn3FeUF28nP39h55KhcOuMXRvDXh39Dlx/QTUxGGMxcmnk3sjBWZZz +GxbBusS8jJ106e9vVRMTNDZ4Pfddrpr4nXzzVcRQxfb1TdAv1sz6L19rkVby +RV6sJsZhrMOYv/bpnuhGR15WmfrLcH0P8gHc/+ZqYkDGglaSA4R+VfTVEYlR +GataSrt7KOPLfBE5aLNQnr4TbteflHvFrtvBztalfh/yashvVBPDNJbZKpLv +bgzHWM4WnN+zkniAcYHv+R6f8z3q6D9C/wPyF8i9yB8PhTMkH2d0fs+7yJc2 +YyudXq6Bm7aTr7IJ9UcNJcZlrGs7fbOh+DNyXcTbxd23RP9bNTEkY0muH65f +4h/Xce7aZmw349kr0v6O1L+O9rai3vvUv8EYRTUxRGOJqzWD3d/jetJMbEN+ +iDa4/paYv9i/MSljUyvS3gHOn7T3+lD6q1wb6xgn2Fb/qJJ4hHGJDY2JVRMz +NHa4DvJH1cSMjR07fuRa7sW5mZvBIsWOtqxl/E1WBL/6iXrfUf+5IviUOJXY ++pNihrVg4AuU+Jh42BrlHGDs2nxUfUB9QWND5h/KWThBfkoRf12/XaxV+28x +8YNa9mR4pgg+JE5kbEUcRjxGToM8B9+f/KRpauE4P4R8ZiU2gPaP79n3rU+m +bya/SX7S3uWcYn+SnyMn8R30LxTB08TwxfKdH+yvchIfoPxIM7lYp5X2kP6L +WI0+9oPOn0XwMnEzsXf9LbGp2Tn3MPoPivjf+uFiw/2drF+uY8YK7m5mrwp9 +Qv2/n3lfM1TCz5CnMQ7Xz1RNjNNYp/ks7ndhDNRYaJXv26D+OMjfDCXfRK6D +Nqa2pvOve0Vsyrnxm8GExYbdd+R79ANcPzbXT4L8w1D8scXr+Sbut+H+IMY2 +9MH1xf9XZL1z3TO2+742QC1zkHOR87l9SUzyLvtWkbI4pVj5XM2s53JI5LmI +XRsf1CbRPpi7CD9LntbPQ8nnmbcSDog8mPHbeT8zaLei70GuIg8hfzmUa7zW +HDxzUeXTmkviHhwTMBZ/RP9XIzk3DfSPtZOvPL99ins/0k7s9r8YrrGOdvIh +/X1zFuFoytWUE2S+oHi7Y8Ex8QTyqeX7dE10bZSvI1dczOBKnuXGIrblOWIm +1D2h/H6uqa6tYqjmJl5ZCbZ6uPZ7JWPm4SIxSWOT+jTmA8qPmanku8sPEt8X +JxEvuV2+TjtcXHOwzOWUoytXV87qXyX+P3Ur+Zhi+we1EzsUExMbM+Zh7MM5 +zbnNeJ55KO6x4l4rv7fDDRFjNh7nnP4Vz39iJXP9XEVyoRzTjm3XjI/QH1zJ +WuL8tmMlnMJjxZr8zcgvIJ+LfI98zkrGo1zh98v58FH0JyDf3U7uozHE88v4 +qWuxa7LcUuO3curUG2u8vZ3cPH3ko7Wt2/kW2vw3I7/YTn6vMY4FimD08gTl +C4rd+z7N59WH0peaAXl55Lm4z4tDiafLa5TfeLL8GDk91cxJ+yBfWoSr4xrt +Wi1feZdm8Ar5zfLTzBs3x9RcU2PeYnHOWYcX4VDJpTI//I1O1vBLGuEPura7 +xuon6S+59rqGbNjMmnti2b/l+pozaG6xnGC5wfr05lc6HsTmzWEzN1iM0dw3 +4/tij8dzbqASDLlZymKb4sONInwrYx6OH7kQYpbmlokpi2WKsd7TSHzG/mW8 +3dxWbcwNtRXaib2JAYsF2x+tq8+v7+/4MrbknOjcKEdPrp4ca/Pd5CTJTRoX ++fEiGOy7jeDNYrNymsSS5Hybv3dyOzrn1OGlbK7gFGV9MWJjPvozYseOV2NX +2ijaKq6XE1eSP3ZNJ/wccU/xz6s7wdhfa+Qd+b78fWK97uE0ehGM+/FGzvl7 +He/i90PI1SL8cHOTtak36yReeNdAcoZfZT5btAh3VZta21q+5GFiocgzFImX +Og//FyMqwol9bCA2qVxZ+TW3DYSfs4L1i8RCzJEcamf+MzZlzvjIcjwbG3SP +rAnbWT/l25of4/5PYlr6wfrDYl3GP2doJb4gt1dOrbmhzs9ybY9uhwsvxt9b +ymL7YnxifWL+zzZyrrd8PuNFzrfaInLO9OXlAExU8hPMK3PPLffeko9grrI+ +gti1nF3tDO2N58vx/nwlOe3mtvs+3StLm0fbR86R3KPZxQldX9rJCxQTFxv/ +0T5ZCQdFLsql7cTS9fH09a4owhX/lmPjdjAG50f5N2IP5geIBZmzae7mVdTZ +rBKfVN9UWV9Qf0Buvj7qMs2cU68POVszPrT3Mx4uD1g+8C5FfHhxd/F3fXv5 +q+tV4pOaDyz/detKON7ndjKGHcvGfH6m/EEza7xzuN/bNdC10DX/2XZsntOa +wUe0heQPiz2ao26uujbPQc28A20h+cFisebwm8tv/oWxYXNqza2VbyvXxJx8 +c/Ovbgdb1UfSVzLfwtwFc8TNFZfjLgdd/03uu3wacXjx+Bs68fnnaQYTEAs4 +v53yUfo0pSxX4+hSL2Zw/0C+uVjCK+hfryRnYKF24u8PDWTOf6sbn1wfXv9U +X/2kIlx2fbTV9TXaJR5cjS9nfol7jZlzb+79AMdd2CZX8T6npPwy9V+pJOdk +Tepf3w72oL8o91l+7T3Uv5b6U3XCB1q0mTpy7+Xsy/EXnz6y7I/2jVM5tijb +cy+Iq8r6ch7lPh6OvE4Rm/+n0oYfgXxJO9xmc242R76hnbzOq5H3LJIP81wl +NuMeneRryCUwx95ce9dM185NHE/tvE/fnRjQKmX7chvEWIxtiFGLy4jPiF3L +Zza3UIzVWIwYjxiSOWNiP/Kr3bvF/V7kJ09W2tTGU8SW9FH+aGROc754iuPe +eubIU8r+pb8r5mP+it9rrUps9FeKYPjmGZhvsGL5+7evJKbgfg43l/6wmIXY +hXwt/Qr9C3OfzCEyl0hMzf3l/L6LVZKTsEwRzN68AvMLxPLlTMmdkoPk/gpy +ko1NmAPjfgVi9vo9+j//7XeA3NfMnKx9pU/1UjPxX30tOa5yXbv6K0V8ji+b +wSf0RcQsdmymz4plmM8jBuYcZP6PmJ8+kHiwWOAtRXKN9Hkc7/KpxfnF+92r +QRvYuXlt7VXuPWORtUiO+ZPtYEbGlF1DtXfFjHZvZE1/rGzfuUTMWuz66xLP +MIfm8tJe058fHf19RThsctnEjMfpxIebopk1ybVJn3WcZtZI53N9kOmb4Z+6 +Hsp31d52T5AHitizcssGaG/3duZ3uUdiAGIB8s/kVJjTKH/M9UDu3B/V5Oub +L+Feeu4R6V6R8od+Ggjm8GE39quxWDEPsQ/5Dl9WY+//NhA/XX/dnELzew5t +J35sHNn4wIHtxL+Ng4t37N9O/F/OptzNA3xe5P0Hgo+c3k782zi4/qEcXLm2 +3dJ/00eaArm/9Lfk4GrPTNEIN/esdmwDbQT9rf3awcPkgMoFvaMbvobPLn5y +ROmPyUGVi3pnO9xSbX5t/1vb4R6bByS+JAdZru9GzXCT5aDuWokNrS3d6QTb +EKMzP+y4drjMJw2En3Ck9qH+/0DwuaPa4RfIM5APcVI73OjTB+If6vONUwkX +QF/wB/ff8Ns1g3/9VoRLJ4Zt/9Vm0XZxTna8vl/EF9EnuYTyR0ViL3JObnBt +K+L7y0m5s8iYcez4ju4tMiYdm9p4+nO/FsFOxFDGovxLkbXXMeJYEe8zt8sc +L9eTs9uJ37umL1E+r2NNm0j+X9FKbptrlvGAZie5b2KAzqd9neTGuSY5n7mf +x1a1YKrOP6N3wp0XE1qkSD6Ic7cY/qTt7He0bnk/7UPnkO3L9pwv251gLWIu ++/k8neT6ianKf/V7HlD+HvmzZ7bji18xEPzB+sa+zFkxP9D9SMX+jLm+0w5n +Wd/x4Gb4Ntd0w70zj+tlrp99MHxtc6KM58nZ39/f2gj+dmM3XP5XB4KnXd0N +vuHepy8h39YNd8+8NPHB//Z7qSYHUz7q7d1wK80DFN/7ohvb7tRm8MalS392 +yUb4Q180steafVY+nD6EvoR7No1ZZL82+WYjkM+izamLYBFiElMW+aa+64ka +4aOJD7n/rWP4moHsNzeLvkrZx80JMHdEH0RfRNxIX0mfTb7RKe30NX0afRv3 +g5MPM6wcU+N2wr0yBmi+7JidcKmMMZpveiu/dz/KowaCL5/TjW+oj+j+U0uW +6+cijXD5r2yHP/XcQPDvy7rhzl4+kP3B3JPNfZ3Mz1iM8oXt8J+eQv+HeGc7 +8RDjIr8hf95NPtzeJZ58bzu2tDa12MON7eChrw0Ej75cGw35yoHs12UM0lik +nB73r7wY/XjozxvIfluzdcKtNaZtvqs5OObKjGwkN+fCbt7vmQPZ307Ou99u +zEa48OeV+8edOpD9AM/vZj/R0way399ctL9lNTaT+bNXdoNvuVeN/sVV3fAv +5WGKJ1zRDT9Nnpr7Z13Szf6m5w9kPzE55MYz9m2GWy6HSi6VGI7xGnNo/JY3 +NhJPlePq3HR7I/FJ9yR0b0I5hv2t8D1qtWA+8l/k0MofObeZ+KN4t2vjLZXw +FcQnxGtWb4SrL150fiVrnmuf+LtruTFU+QoXNrNWun7KR5TDulwlNrW29UXt +xMO0qbWttam1re0Tm2h7oF+9Eh9WX1bO7EKV+MT6xs532o4rV5Lv63yn7WaM +yXzgaZvxlZ0z5EtOW65vhzfCzb0CeRPkZwcSb3yjm72R9Qn0Ddyvyr343BtM +vrh8SOOjtyP3OMd0g+f+Z4NS/4Nu8GNtKG0pfU59z0WdI4rkCNh/r20knuw8 +4nziHCP/8v1usDT7t77jEWLK1fic8rvkMMunObKZ+PLITnxvcx7dX2HOweSr +yKGU/3dsM1w8c4rl5xknMF6gTWe827iQ8SFzhuWPnFMEi/Mbiz+Zk2G+6xqN +5GrIKZZbLCY7WxGbW9vbGNBqRTjGco3t4wsVwWTEZv6zMYrEVbStzL82H/q/ +uFY1c7B8Nfmc5ruejfzdQHI4tCcuayS3w7iRttTxleRXG5MxNiNHVf7wTM3E +OvQXjDd/1o3voQ+hL+H+ZHLtXVPNF3S+M7feMeXY+rKduU9ugXwG8zvNzTem +vnk779u9LORIiHfMiHx7LRxQ9zfQR9NXMyZpPvztreRGGtOUHzKpPnktGLj2 +sZid2N3XleyHMH4nsSttXvFJ52f3MjDmIZ99zk64zHKYx0OetRMuxV/V2MPi +I/J7GiXfQn6GXInPXHPK8eBa75pvTFYMWCxYTET8c9pWcu/NwXa/Pucvc//n +QD9ZO/OlewPIsTYfQQ6kXEgxHeO/+rT6to5p8+0n47i0lpiw/qD7t+nLiEGY +zyl/2n1c9D/1Q41viQ3vWM7p2gzaDis3kotzfBEsWExY/Ni4mbEx7Y8NSmz1 +yWpsTvlg2nnae+YHyQczxiq24hojf2urZmJzxujkh+lD60sbg9ytiA2jLbNs +I7k9s/iOa+GEuF/Dbe3k1+uD64uLwYjFyOnZifJN7TybmIXYhfxi8/U3KddI +c4C0T8QwxDKMuxp/1R+Tj7BeM1xk11T5bmIeYh+uefsWiSOLlYhpyI+QT3xR +NfmFrqnGnMUS9Lnlt63aDDdZTEh+g3i7fe9Vzl1UZA50LjTGKxejh/lkk770 +YfvyGOX6pw2jveJ+lNoS2hTaN9oj5ioaAxwo4pPom+izGMvVJ9U3leMqPmxM +6utGbARjVfo4+jr6NMZ6tdm13eXzTq8tXoTLLSbvXpv6OPo62vjGxszndi80 +OSpy0Yyhvd0oYzRFYmR7NsLfN3Ym/vFpI/OT2K42qbapPpKxMvfv1dbS5jK/ +bx/HYC2cDP1HfaDfyviNsWV9FO0q38l/3GrkBZvBHMSz5Hf7bfxG9g9tJPuB +/UHugP3B3DBjoNsWiYk/3UjMSPzZfF15kvIl3cuu24itoc1h/p0xwl0b4Rsb +O9yrnbXKNUt/RJ9S39I94OSi6UPpS+nDyX3Qh9KX0seSa25OqbmlciCMB+hT +aXf6TozFmaNm7NwYreNFG+jU8nncK/lL+SjYe3v1Zj/b33mm0d2PCfnvVvbH +edX9XpC/Rfet9gzySb3Zb1henvw894d1/7u/B7KPlPtJuT+iuYQV92fqzX5l +5viZ62cOs7nM7jn4FO0d2Zu9CN0f6THkvd1fq5P99Wz7tL7sbeuesfIf3TPc +vWTNeZx9GO+nEf9Xm+608vfbN9yT5xv3p+rNXj3u0XR0b3LA3LvJ+I17i5vD +bC6zmJXYlTnH5h7LM5Vv6n7+2sM/iif0J0fMXDH3nD4A3e692Yvae3gvc8TM +FbuwCLfFPRzcH9R9s90/e/q+7G9+aSvcZfdQGxjMfknHuH8a+u86eU6f9/O+ +5Ky5v6Xc02OQh9wbupF9wd0f3P0Ob2iFG+keXcPRb1Pkf2UY43W+uKYVbqR7 +phXuPS//iGt37s3+8+ae/StXszf7v5mrtod7hPUmZ00b3nnf+V/favYiXBdj +suavixmIHbinxkFF8gtd29wT1r1h9eG+LOORcj/kQOzejD0jN0KfTZvLfBe5 +I9pj5prI6ROf36Ad20MbRH/f/EnXVjlUJ3bCsTi5GYxK7oX5/Ac04iPrK5tf +X2vGnzOepg+iL+Iev+4l7P4L8/fHBtAWMIdLrpwx8HmK+EiXl/OPWM087WDX +Ytji08aInWvEkMQf3HPCvSdck1yb5Kwc1Yy9KH51Rzu5zmKWxl/lYH3cTMzD ++JF7Brl3kJiA+3vK+ZT72eqNf+D8LHfAfKhxi/iA+oL62MYz5fDs38x6LL4l +R+nSRjAMsQx97lfL72ns1/xMbVrzFczvdL+QB/tiQ2lLFSVepc+rvaj9J5fR +nJurxDPbwbbFuLU3b2mHu+f8Kpfpmna4gvqk+qbu+e94Hod7zEz5jHZ+y9jl +/K4PqC+oj+VezPqc+p76HHO2g5GLlYsvGj/T/5DLKKZtLFj/Su6pnE3xHzEC +sQJ9IuPncrhmaOZ5jAfoQ+pLuoa6li5VZK8GMeIp2sHcxN7cz1Tug/utuBeq +exK7N7EYmljaruXvXab0X7QptAfkbK3YzPeWyzVfkVy+ucr+p4+tXeAaNH87 +Pqa+pnu4uneze4C4F4g2m7bbJO1wSdwTx/idz+Szueeq9r/7gbl3r5zSXTvx +UfVVJyjXZ/ejci9fOaQ7drJfxT+NcC6MR+uPyQV0jx/jkfrA+sILle9XH/nW +8n0YmxOzEbvRR5urnXiV/8PHmKXxKfe/mLiZ32t8z/07Gs3YC/Ih3I9jqJn5 +xPimGJJYkj7pAsizcBxQDWdUf23qdu7l/8DRnxG/cK4e6ste8zd38n8U5FAZ +D3bPwZfQT9CfvQjNeTb3WY609veZRfby0KczP9n1+9hy/XU9NX9VjpMYo1ij +ubuP0F6tP3uJu//cCMoPu+dXN3i5c5k+nfPRSaW9LB9CfN+9D8xFeLg/eyDI +tzD3XszZ+dA9GL9FP2l/9mYU0zmxtF+07dwj8U3X097snXhiO7lXclT+Hp49 +8/1fI/MNy176x1PnGer29Wf/cXOD/V8Q5/UlR9j9Cebh71zDsl/Bae3kxjVK ++81c5Gede/rz/wjuamdvN/eQO7XI+zO32z2DRmkLt5Ib6f9QmsCcY+pPQ9sL +cZzbDcarD2AMUu7jMVxzQy17FrmfuLnOcmdX60vOszaJtskg9/+jlZxOczuX +7s/eo8Z39T3leBnfdL9mbZFZ+vK/CXxeuSD6IO5H91wr9sjM7jk/mL1N3Gv7 +gt7scWIutNz9nfqSE+1eCe6d9WJ/9kwwd9rcnpv6k0Mt/8W9UPTZ3f/b3Gxz +qw7rT46238BvMS/HWd3wX9zbRB/oqCLxK3Nn9DGcH8y9Nhfnkv7kYD/Win1y +Bc8z/WByueUGb9qXnO7/A00Kkfk= + "]], Polygon3DBox[CompressedData[" +1:eJwt2Hm811MaB/BvRbfu/H63ur9uoWKyDCkUQslYwlhqUNasE9lCCiFSUQaR +MqlQJJUsWSoqpKzZyuS2WNsTcbVe2s37mdMfz+v3ez7n8yzne855vs/5Nu7c +rcNNVbMsq1oly3b3O6Vuln1QPcsWFmVZg5pZNpn+VGmWNc9n2cRclrWolmX7 +0H8mJxtvUCPL/or7Nd63ZIvxU+B7w7+jX1WSZW/ulmVX+p3H/ivyEnwBm73w +5oo1if4Mf38Xo7xelrX2/1jyONkL9jNpzseehSxrhXuJ/7X46w+fUZZlr5Iz +/F/Id3fxb8J7F+8nvqfjvVQry6bRXyOLxd1Kvjf2Fr2+GC3ZNGO/lczla2rk +Z/wIvLPkWAbbF+8kvCNwavD5JawF7C65HE5vQRaWJZ/h+2L6OHFfp2/Gm8bu +WdgW/LflNxy3BmyAnB/CH4Y3Eq8NbAS7KbDnYRPwDoVNwWslfgOcMfDBOH+Q +m2DP0qvyWeB7vhjlZBW7F8iRbN/OpdxjDs/DDoFNzqV5x/wPIEf7/w5/M8jv +OL/w+aP/7+Pm+N2JcyI5gVwl1qOwLn7H46zxnK70nDr5XUQ/PtaSTOTnhHiu +1jQjm4wdWjvLNuLu4L+UTOLncvk+gfc+/kSczfxcj/Mvv9/Sc3g9bM6C/+/G +vPGu5X+onN+LHMMG9hJpzc8H5naWscNwZgefr5PIKtjH9C9JVpxlF8DGw37H +/wS2j3ibYW3JGH6eE3eG/LrKb2T45b8c1o1NB5yCPT6f/iL8aOOz+DnTWNM4 +H7Bt7Orx+4bcx3hWw8jn/PWE30qG0leQI41XsB0Ie4X+Opvd+D5GjCpymk7/ +hc+Xxajv/1T85uKuJpcZvwbvYPzF9FZ4xwS3LJ2nzfXSc4jn0YreIM5h7A1Y +W3pr+gXGTqOvg7fnvx0ZDusa8+DzVnvxAbzv4T/Rh8MbGB8l5+/5qC3np9me +5JmeQB6HzxL3dVgH40voffB7473Jtj3sv7DrYGfRX4xaApsNuxB2Ov1dchls +Baw/rBN9EjkzziisC6w9vZN8tnqmY+T3mrGPxHwCfpDxCXgVsIbiLoOPiH1G +njV2Nc4I+PSodea1gGzFWc7fMNgj9HKyLOof/DjzakMe4XOGuT3GvoSfofQv +xNidr8dwe7MdEOce9jG7Lnij8a6i3yf2kqgRsPPp37Dtaexc+gZ4L3Z3kt6w +gXG2YAfFPsQbG3tU3K9gDflpRNri7cd2LO499PfI4fbGMnoV+O7Gf2C/mMxh +9yQp5NP6xDq1oHfHewXvevhw9kthG+vYb14K70R9JZ+WpTWJtWmH0578ANuK +txlvTqwJ+Ry2HbYDtpC+iHwB29tz+c0arRe3yPwa0Svx1uHNxvmEfIb3SJxz +z683zrjYN2IeArvXnCrFPEbtyHkGE83vIfr7JensrNi1/xqyeUaMRvIsYjsA +Pk3ca/C6kPvor+H9E++7XBoLTtS7qHtV+L/LOSqmjylNtWt+vVTzovZtkstG +vOXkDufuL3iVsN/ZzKBXyOV0+vHsDhNvQVmqg1EP58Jr4BznrObx36dfBH9M +rpfi98BfjD+ZnEtfJr+P5TdYfk/i7Z9P5y3OXT72D/uJxjuxO1U+59VN79F4 +n67CHQ17OfIl6/1fAXtI/Mb8z2R/LX0dfyP560Z/A34RbDVsHr+j4pmyHcHf +fPZzxFkLG4BbE+9Dstb6bbKOK/Cm4j2BNxdvJV99Y/9FffFMf8ZbXyedo7qw +YWLUjjoZNQNvsHht2Z1EvoMNgtWJs0y2s91WJ9X3qPNV+Rvs+dWiP4iXx+nN +3+94m/EuivcWf4P4eiHyxHsDts7cr/bsL/X7I/18c+ko56/4nEe24L0HL+a7 +DV51vC/oT8Br8zNEjD2s74t1U++zIc4ezpbogXC+gTemN2Sfd7Z20peI0YLN +j2zvkM9T9NnwneK2ZPcn/jv0nvAJcj4/1jLqLH/fw1sYnyO3F0hl7AvYTNif +YlTCbqvvecA6s50mxiq2Vei3y28P/j/CPRvvVrxy2APmsWdJ4p9SSO/4u3F6 +kKXRS+CNiNqeT3Ut6tvu0fvhtmWzI9Yj9jb972wPZvMwGWI+I+gtcVeb7+Gw +5uQ3OXeG7238PHpHcgX9WPY1Y33EaCJGG/pS+Ol43aOfMPYj23v5KxKvXy7V +o6hLH0QfJcbbct7uOazDvx+vGP5ALtWUqC3z+azg7w3jz5FN/P0WtYTdnWQF +rIf5Pow3y9xOo4/i42u+ni6kM3AmbALsp+h5Yh6wcvqF8Cvpo/HKYWdEjKiz +0UeR+2GHRa9DKsT9D6ye8UdzqSZHbX6UlML+nUv1Mupm+I4YD8rvc3P7lf03 +5GL6VdbzQNjn9Ouil4g19P9kslaMlWybwQbGnsGriBolRs6z6uD/OWQ93kBY +Ldy+uVS7o4a3jH6O3Tx2a/Fu9lzuNL/TPL/v6Cutx06cnrATYTfA7uPjHf76 +8Vfd/z78reFvA3+T4B1hS2F9zffsqBnsP+O/tzir2V8vxnr+2kT9k3cdMbrD +rsAbSP+V/gtZzdfNeEeJ24Vdr+gT+VsRvWw+9VLRUw1nN6SQauZ22Hhjy3HW +sK8atZ0MjvcwbBusB948+s+79sEU2IX5dFbjzC7m6+DoJ53lVsWpzvTCawI7 +it6yONW3O2FvwjrFPmE7iM/zo16zby1GZ/7vjt4Rttk8asWdxzMYEuvItivs +MHO7gt4zeki8a2AHwi6BdSJd4i4jRoV5DYo9KsZ58W6DdY0zmUvv8HiXT4d1 +g1Uh02B3wf5gXyLunKJ0b7hW3LejltJbw4usy6Ra6U4Vd6uv6P2M/RR7K/qD +2KfRuxh7Wdyp0dfANuVSbxM9Th+yG+zY2un5xHPqEf2oeVzLzz1xD4Gtg33J +/yD+Mz5viGfA59ew/rBfcG+EfcrfvflUc6L2tMBZGfWKv/44xdET8/cBfAns +VfrTZCPsoejN2N0jvz/syS325Cy2i/AqxWhqzjPp4wtpf/5/n8rlefpz8a7P +p/dRvJeuhs2Mdw3siJJ034t73yJYS/rJ0cfDToZNiDsi3lh5jITdyPY9vCGw +f5TsOrM4FWL3kUfPorRHYq8cTfaXy7ioEdHrRI0lzWAvwfKw4+mX1E13yMq4 +40RtqJvOUbnnN4K/7sYOFuNw3H3iboi3M3IvpL7kM/qnpDl/HQtpPX6L55ZP +uRwA+xV2D1+3FaWaUha5wfJxtyM7oqbQXzG3U/LJX/hdoFcqhzWOvoz0YXtE +aeKdmk93//gGsANvCPu7rMcPcdche8V7sSzVn9q79mEjts0ib/8Xw/pFrxi9 +S2HXM4cdRb6OvrMs1ZVltVINLcZpEnVCrofAmpJfcWaTSXEnoM8y1lLcHWVp +360iT7K9ge3E0nQ/iXvKiWJcGe+J6FHZHleSalQbnHGwv+XTGsValZSmvr0J +7NU4l2ST+d4S50O8CbHPyAqcP8kGMWs6M3Ot375xH4m+y/iH5OjoHeJbBt6A +eDfAro79Ev1aabo7xB2iA7xHIb3r4p13qP39rbUbQ5+M147tZSXprt0Hb1Ih +1amoV0Phk+l/FNI3ljW4d5C3ohdl34yvb/j6mN8p9Oml6T4W97LObO9ld2Yh +fZuIbxT7wdrFOYpvJvyMz6X1awobHXeBfNqTsTdr8LXW87+P/15kJf+3OPsj +8fbAexKvHl6O7TOwRtHXwvaGVWc7lZwDu74k3dMfLKR+Kfqm9vJe63dCfM+A +L4rvUCTHtpLeT9zb4nsC7HJY37qphkQtacy2nO0o+lhxDxDjRXGb4tXadU/+ +0PhueNtxbpfzhfHdDFYNti1qef00tzX+typJPcHF4r7K/jT+zitJPV/0fg2t +/x7Wv2HUv2rp28NyMcbGnZbUtg96sfsENsXYCyVpL8We2hDfqtiOKkoxov+I +71cb6U1qpm9g8S1sFNs92T5lHvXFqBrfkeKs5lPNidpTHHdx+fSPHh42IGoP +fb9Y36gD1VJf0dXc/gfl4vfb + "]], + Polygon3DBox[{{4931, 3605, 3246, 3247, 3606, 4932}, {4766, 3389, + 3624, 5588, 4664, 4665}, {4667, 4666, 5593, 3643, 3644, 5594}, { + 5537, 3360, 3236, 3235, 3559, 4887}, {5633, 4090, 4100, 1999, + 1702, 4829}, {5369, 4089, 3489, 1549, 1986, 5392}, {5358, 4073, + 3622, 1137, 2260, 5377}}]}, + Annotation[#, "Charting`Private`Tag$56875#2"]& ]], + Lighting->{{"Ambient", + RGBColor[ + 0.19699838300000003`, 0.252204821, 0.33320940200000004`]}, { + "Directional", + RGBColor[ + 0.15473514000000002`, 0.21284718000000002`, 0.29811516000000005`], + + ImageScaled[{0, 2, 2}]}, {"Directional", + RGBColor[ + 0.15473514000000002`, 0.21284718000000002`, 0.29811516000000005`], + + ImageScaled[{2, 2, 2}]}, {"Directional", + RGBColor[ + 0.15473514000000002`, 0.21284718000000002`, 0.29811516000000005`], + + ImageScaled[{2, 0, 2}]}}]}, + {GrayLevel[1], EdgeForm[None], + StyleBox[GraphicsGroup3DBox[{Polygon3DBox[CompressedData[" +1:eJwtUDsKwlAQHJKYIiZKRAXtLPyDBD1BruARPIDWWtgLHsCD2OUEnkMUKxVU +BCtn2Fcsuzu7OzPvdRar+dID0Gb4jGMFuBIoEmAWAVWCY+ZTCagz/AAYsP9w +J2MOApsJ34VWXzjzeP9mXseGtULDu7y5MU+YvynwYn1oAL+acegud7rSVy9c +fjKn23N+pCdPU+1xfxgZjzgf5B45XPNzkzzk2HJesC4npntPzad0nqnxa0dz +3e5j8yrP/cg49D+b2N4kH/qDP3DhJyQ= + "]], Polygon3DBox[CompressedData[" +1:eJwtT0sOAVEQLDNj8xiMYG9B/GbEBXAGR3AA1kKcwAEcxG6OIxlWSHwWFqIq +PYvO635dVV3VXq4XKw9AixWwpjUgdsCFn7sy8IkAzwdKIZASlPL1CWwUgVMF +OPNvS9yL+FtklbH3Q9vNqTehXoEaB+KSJjDkXOX8I3bG/dgZXzpH7p/sN2W7 +J47uD5xpCfPmvueMK49Xzh1n3sXZ5H7kXaVeN2Jq7+vGl478PSLLqswj7r3Q +MmZ5njsrCCzzt26YrjMNcaXZd+ZRt5RJWZU5yfXkR5nE/wMlNTKy + "]], + Polygon3DBox[{{4734, 3331, 3194, 743, 4592}, {5528, 3339, 3212, 769, + 4599}}]}], + Lighting->{{"Ambient", + GrayLevel[0.8]}}]}, {}, {}, {}, {}}, { + {GrayLevel[0], + Line3DBox[{258, 1, 254, 216, 4162, 15, 4175, 29, 4189, 43, 4203, 57, + 4217, 71, 4230, 85, 4440, 240, 99, 245, 4257, 113, 4268, 127, 4524, + 569}], Line3DBox[{2628, 2, 2982, 236, 258}], + Line3DBox[{2630, 3, 2628}], Line3DBox[{2632, 4, 2630}], + Line3DBox[{2634, 5, 2632}], Line3DBox[{2636, 6, 2634}], + Line3DBox[{2638, 7, 2636}], Line3DBox[{238, 8, 237, 2638}], + Line3DBox[{2641, 9, 2983, 238}], Line3DBox[{2642, 10, 2641}], + Line3DBox[{2645, 11, 3043, 305, 573}], Line3DBox[{2647, 12, 2645}], + Line3DBox[{2649, 13, 2647}], Line3DBox[{259, 14, 255, 239, 2649}], + Line3DBox[{4187, 28, 4425, 220, 259}], Line3DBox[{4201, 42, 4187}], + Line3DBox[{4215, 56, 4201}], Line3DBox[{362, 70, 4215}], + Line3DBox[{4242, 84, 314, 586}], Line3DBox[{4255, 98, 4242}], + Line3DBox[{246, 112, 244, 4255}], + Line3DBox[{4278, 126, 4511, 346, 625}], Line3DBox[{4289, 140, 4278}], + Line3DBox[{4291, 155, 4304, 170, 4318, 185, 4434, 231, 260, 200, 256, + 247, 2796, 201, 2797, 202, 2798, 203, 2799, 204, 696}], + Line3DBox[{4302, 154, 4289}], Line3DBox[{4316, 169, 4302}], + Line3DBox[{4331, 184, 4316}], + Line3DBox[{344, 205, 2800, 206, 2985, 248, 207, 622}], + Line3DBox[{2801, 208, 347, 2802, 209, 2803, 210, 2804, 211, 2805, 212, + 2806, 213, 2981, 235, 261, 214, 257, 249, 4345, 199, 4331}], + Line3DBox[{434, 336, 4291}], Line3DBox[{344, 444}], + Line3DBox[{448, 345, 2801}], Line3DBox[{2642, 357}]}, + {GrayLevel[0], + Line3DBox[{1673, 741, 1561, 1028, 4591, 755, 4599, 769, 4606, 783, + 2625, 2611, 2603, 5422, 2609, 4160, 2602, 2610, 2601, 5421, 2607, + 4159, 2600, 2608, 2598, 5420, 2605, 4158, 2597, 2606, 2599, 744, 3196, + 743, 3194, 742, 3764, 1300, 1673}], + Line3DBox[{3199, 745, 4154, 2612, 2613, 2614, 4155, 2615, 5423, 2616, + 2617, 2618, 4156, 2619, 5424, 2620, 2621, 2622, 4157, 2623, 5425, + 2624, 2626, 2604, 4615, 797, 4623, 811, 4635, 825, 4648, 839, 4954, + 1157, 4662, 853, 1452, 1179, 1687, 4679, 867, 1200, 5193, 1517, + 2302}], Line3DBox[{3201, 746, 3199}], Line3DBox[{3203, 747, 3201}], + Line3DBox[{3204, 748, 3203}], Line3DBox[{1485, 749, 3520, 1032, 3204}], + Line3DBox[{1038, 750, 3987, 1706, 1035, 1485}], + Line3DBox[{3208, 751, 3526, 1041, 1675, 1837, 2377}], + Line3DBox[{3210, 752, 3208}], Line3DBox[{3211, 753, 3210}], + Line3DBox[{1487, 754, 1442, 1045, 3211}], + Line3DBox[{4605, 768, 4868, 1046, 1487}], Line3DBox[{4613, 782, 4605}], + Line3DBox[{1310, 796, 4613}], + Line3DBox[{1500, 810, 1726, 5067, 1310}], + Line3DBox[{4646, 824, 1443, 1109, 2361}], + Line3DBox[{4660, 838, 1130, 4646}], + Line3DBox[{4678, 852, 1715, 1153, 4660}], + Line3DBox[{1196, 866, 5280, 1698, 2376}], + Line3DBox[{1690, 880, 4986, 1196}], + Line3DBox[{4689, 895, 4694, 910, 4707, 925, 5055, 1282, 1534, 940, + 1474, 1281, 3322, 941, 3323, 942, 3324, 943, 1285, 3983, 1694, 944, + 1476, 2301}], Line3DBox[{1525, 894, 1457, 5005, 1217, 1690}], + Line3DBox[{4705, 909, 5027, 1238, 1525}], Line3DBox[{4719, 924, 4705}], + Line3DBox[{1536, 945, 3755, 1289, 946, 3757, 1291, 1695, 947, 3871, + 1477, 2311}], + Line3DBox[{3325, 948, 1293, 3326, 949, 1725, 1295, 3907, 1540, 950, + 1480, 1297, 3327, 951, 3328, 952, 3329, 953, 3763, 1299, 1697, 954, + 1672, 1337, 4733, 939, 4719}], Line3DBox[{1038, 3523, 1441, 1978}], + Line3DBox[{1720, 1219, 4689}], Line3DBox[{1973, 1287, 1536}], + Line3DBox[{1500, 1980}], Line3DBox[{1176, 1514, 4678}], + Line3DBox[{1992, 1696, 3325}], Line3DBox[{1720, 1836, 2085}]}, {}, + {GrayLevel[0.2], + Line3DBox[{4162, 4422, 2807, 4161, 5645, 4346, 4163, 5646, 4347, 4164, + 5647, 4348, 4165, 5648, 4349, 4166, 5649, 4350, 4167, 5789, 4423, + 4351, 4168, 4424, 5426, 5790, 4169, 5650, 4525, 4170, 4561}], + Line3DBox[{4175, 5427, 5718, 4174, 2819, 4176, 5654, 4357, 4177, 5655, + 4358, 4178, 5656, 4359, 4179, 5657, 4360, 4180, 5658, 4361, 4181, + 5507, 5719, 4182, 4562}], + Line3DBox[{4187, 4366, 5663, 4186, 4365, 5662, 4185, 4364, 5661, 4184, + 4363, 5660, 4183, 4362, 5659, 4442, 4488, 5792, 5428, 4489, 4550}], + Line3DBox[{4189, 5429, 5720, 4188, 5430, 5721, 4190, 2833, 4191, 5664, + 4367, 4192, 5665, 4368, 4193, 5666, 4369, 4194, 5667, 4526, 4195, + 4563}], Line3DBox[{4201, 4373, 5671, 4200, 4372, 5670, 4199, 4371, + 5669, 4198, 4370, 5668, 4197, 5722, 5433, 4196, 5794, 5432, 4443, + 4490, 5793, 5431, 4491, 4551}], + Line3DBox[{4203, 5434, 5723, 4202, 5435, 5724, 4204, 5436, 5725, 4205, + 2847, 4206, 5672, 4374, 4207, 5673, 4527, 4208, 5795, 4564}], + Line3DBox[{4215, 4377, 5676, 4214, 4376, 5675, 4213, 4375, 5674, 4212, + 5728, 5439, 4211, 5727, 5438, 4210, 5726, 5437, 4209, 5796, 4445, + 4492, 4444, 4521, 4572}], + Line3DBox[{4217, 5440, 5729, 4216, 5441, 5730, 4218, 5442, 5731, 4219, + 5443, 5732, 4220, 5508, 5733, 4221, 5797, 4530, 4556}], + Line3DBox[{4230, 5449, 5739, 4229, 5450, 5740, 4231, 5451, 5741, 4232, + 5509, 5742, 4233, 5512, 5743, 4557}], + Line3DBox[{4242, 4453, 4495, 4452, 5523}], + Line3DBox[{99, 2711, 100, 2712, 101, 5679, 4528, 4558}], + Line3DBox[{4255, 4430, 5759, 5491, 4254, 4456, 4497, 5514}], + Line3DBox[{4257, 4431, 5681, 4380, 4256, 5682, 4529, 4258, 4566}], + Line3DBox[{112, 2720, 111, 2719, 110, 323, 673}], + Line3DBox[{4268, 5511, 5760, 4267, 4567}], + Line3DBox[{4278, 4401, 4461, 5812, 4545, 4568}], + Line3DBox[{4289, 4409, 5706, 4288, 4408, 4465, 5813, 4576}], + Line3DBox[{4291, 4466, 5466, 5802, 4290, 5467, 5763, 4292, 5468, 5764, + 4293, 5707, 4410, 4294, 5708, 4411, 4295, 5709, 4412, 4296, 5710, + 4413, 4297, 4467, 4543, 4538, 4581}], + Line3DBox[{4302, 4416, 5712, 4301, 4415, 5711, 4300, 4414, 4470, 4520, + 5818, 4588}], + Line3DBox[{4304, 5471, 5766, 4303, 5472, 5767, 4305, 5473, 5768, 4306, + 5474, 5769, 4307, 5713, 4417, 4308, 5714, 4418, 4309, 5804, 4471, + 4472, 4583}], + Line3DBox[{4316, 4420, 5716, 4315, 4419, 5715, 4314, 2933, 4313, 5501, + 5771, 4546, 4477, 4571}], + Line3DBox[{4318, 5476, 5772, 4317, 5477, 5773, 4319, 5478, 5774, 4320, + 5479, 5775, 4321, 5480, 5776, 4322, 5806, 4478, 4479, 4323, 5519}], + Line3DBox[{4331, 4421, 5717, 4330, 2945, 4329, 5780, 5483, 4328, 5779, + 5482, 4327, 5502, 5778, 4547, 4577}], + Line3DBox[{4345, 4439, 2979, 4344, 5788, 5489, 4343, 5787, 5488, 4342, + 5786, 5487, 4341, 5504, 5785, 4513, 4515, 4514, 4340, 5505, 5817, + 4548, 4512, 4519, 4560}], + Line3DBox[{4425, 4356, 2962, 4173, 4355, 5653, 4172, 4354, 5652, 4171, + 4353, 5651, 4441, 4486, 4352, 5807, 4487, 4549}], + Line3DBox[{4434, 4433, 2975, 4332, 5484, 5781, 4333, 5485, 5782, 4334, + 5486, 5783, 4335, 5503, 5784, 4484, 4336, 4540, 5522}], + Line3DBox[{4440, 4426, 5750, 5490, 4243, 5457, 5751, 4244, 5510, 5752, + 4245, 4531, 5753, 4559}], Line3DBox[{4511, 4391, 4575}], + Line3DBox[{4524, 4569}], + Line3DBox[{4552, 5680, 321, 102, 2713, 103, 2714, 104, 2984, 242, 105, + 243, 2715, 106, 2716, 107, 2717, 108, 2718, 109, 689}], + Line3DBox[{4553, 4499, 5810, 4381, 4498, 5497, 5683, 4382, 4259, 5684, + 4383, 4260, 5685, 4384, 4261, 2968, 4385, 4432, 4429, 2886, 4262, + 5686, 4386, 4263, 5687, 4387, 4264, 4457, 4580}], + Line3DBox[{4554, 4502, 5811, 4392, 4501, 4458, 5691, 4393, 4269, 5692, + 4394, 4270, 5693, 4395, 4271, 5694, 4396, 4272, 5695, 4397, 4273, + 5462, 5761, 4274, 2897, 4275, 4459, 4541, 5521}], + Line3DBox[{4555, 4505, 5463, 5800, 4504, 4462, 5464, 5801, 4279, 5699, + 4402, 4280, 5700, 4403, 4281, 5701, 4404, 4282, 5702, 4405, 4283, + 5703, 4406, 4284, 5465, 5762, 4285, 4463, 4542, 4537, 5518}], + Line3DBox[{4565, 5495, 5809, 4496, 4454, 4246, 5458, 5754, 4247, 2964, + 4427, 4248, 4428, 2966, 4249, 5459, 5755, 4250, 5460, 5756, 4251, + 5461, 5757, 4252, 5496, 5758, 4455, 4253, 4539, 5520}], + Line3DBox[{4570, 4517, 4473, 4508, 4474, 5805, 4310, 5475, 5770, 4311, + 4475, 4476, 5814, 4312, 4585}], + Line3DBox[{4573, 4522, 5798, 4446, 4493, 4447, 4222, 5444, 5734, 4223, + 5445, 5735, 4224, 5446, 5736, 4225, 5447, 5737, 4226, 5448, 5738, + 4227, 5677, 4378, 4228, 5799, 4448, 4449, 4582}], + Line3DBox[{4574, 4523, 5493, 5808, 4494, 4450, 4234, 5678, 4379, 4235, + 5452, 5744, 4236, 5453, 5745, 4237, 5454, 5746, 4238, 5455, 5747, + 4239, 5456, 5748, 4240, 5494, 5749, 4451, 4241, 5517}], + Line3DBox[{4578, 4536, 4339, 5816, 4438, 4437, 4338, 4436, 4435, 5791, + 4337, 4485, 4510, 5516}], + Line3DBox[{4579, 4532, 5690, 5492, 4266, 4390, 5689, 4265, 4389, 5688, + 5498, 4500, 4388, 4518, 5515}], + Line3DBox[{4584, 5506, 3135, 4535, 4469, 4299, 5765, 5470, 4298, 5803, + 5469, 4468, 4507, 4516, 5524}], + Line3DBox[{4586, 4326, 5815, 4483, 4482, 4325, 5777, 5481, 4324, 4481, + 4509, 4480, 5525}], + Line3DBox[{4587, 4533, 5698, 5499, 4277, 4400, 5697, 4276, 4399, 5696, + 4460, 4503, 4398, 5526}], + Line3DBox[{4589, 4544, 4534, 5705, 5500, 4287, 4407, 5704, 4286, 2909, + 4464, 4506, 5513}], + Line3DBox[{4605, 4754, 4869, 5866, 4879, 4753, 5062, 5962, 5110, 5109, + 4877, 4752, 4878, 5911, 5580, 4604, 4751, 5865, 4603, 4750, 5907, + 4865, 4875, 5910, 5529, 5290, 5061, 5319, 5308, 5398}], + Line3DBox[{4613, 4760, 5870, 4612, 4759, 4880, 5869, 4891, 4758, 5063, + 5963, 5562, 5111, 4889, 4757, 5914, 4890, 4888, 4611, 5823, 5533, + 4610, 5822, 5532, 4876, 4886, 5913, 5292, 5298, 5291, 5309, 5407}], + Line3DBox[{4615, 5534, 5824, 4614, 5535, 5825, 4616, 5536, 5826, 4617, + 4893, 4895, 3359, 4894, 5231, 5871, 4802, 5232, 5100, 5229, 5101, + 4897, 5228, 5230, 5980, 4803, 4900, 5357, 4898, 5631, 4899, 5995, + 5376}], Line3DBox[{4623, 5540, 5829, 4622, 5541, 5830, 4624, 4914, + 4915, 5831, 4625, 4805, 4896, 5970, 5563, 5234, 5175, 5176, 5113, + 5235, 3455, 5233, 4806, 5174, 4626, 5996, 5360, 4901, 5375}], + Line3DBox[{4635, 5544, 5836, 4634, 4926, 4927, 5837, 4636, 4811, 4916, + 5972, 5564, 5238, 5179, 5180, 5116, 5239, 4812, 5236, 5971, 5565, + 5177, 4637, 5630, 6000, 4917, 5372, 5408}], + Line3DBox[{4646, 5178, 4817, 5237, 4816, 5241, 5118, 5641}], + Line3DBox[{4648, 4939, 4940, 5840, 4647, 4818, 4928, 5186, 5917, 5612, + 4649, 5119, 5240, 5120, 4929, 5981, 5182, 5272, 5181, 4650, 5361, + 6001, 5584, 5364, 5387}], + Line3DBox[{4660, 4938, 5072, 5920, 5587, 4659, 5184, 5273, 5185, 4937, + 5344, 5606, 5638}], + Line3DBox[{4662, 5245, 5247, 5246, 4953, 5102, 5276, 5961, 4764, 5287, + 5243, 5244, 4956, 6003, 5359, 4955, 5381}], + Line3DBox[{4678, 5133, 5134, 4952, 5902, 5569, 4677, 4951, 5075, 5926, + 5591, 4676, 5188, 5275, 5189, 4950, 5625, 5634}], + Line3DBox[{4679, 5191, 5192, 4972, 5629, 5997, 4971, 5382}], + Line3DBox[{4689, 4989, 5553, 5847, 4688, 5554, 5848, 4690, 5006, 5008, + 5555, 5939, 5007, 5140, 4826, 5084, 3413, 5010, 5891, 4994, 4793, + 4691, 5892, 4794, 4692, 5893, 5012, 5014, 4795, 5013, 3831, 4827, + 5166, 5318, 5164, 5165, 5644}], + Line3DBox[{4694, 5558, 5849, 4693, 5030, 5031, 5850, 4695, 4833, 5009, + 4834, 5851, 5141, 4696, 5011, 5085, 5958, 5598, 4697, 5896, 4798, + 4698, 5897, 5034, 5035, 4699, 5942, 4835, 5015, 4836, 5169, 5142, + 5328}], Line3DBox[{4705, 5029, 5089, 5028, 5943, 4704, 5144, 4844, + 5168, 4843, 5966, 5170, 5143, 5196, 5195, 5264, 4842, 5025, 3498, + 4703, 5209, 5572, 5975, 5336, 4841, 5403}], + Line3DBox[{4707, 5042, 5043, 5853, 4706, 4845, 5032, 4846, 5854, 5610, + 4708, 5033, 5090, 5959, 5599, 4709, 5559, 5855, 4710, 5601, 5944, + 5046, 4711, 5945, 4847, 5036, 4848, 5172, 5145, 5197, 4712, 5624, + 5391}], Line3DBox[{4719, 4799, 5898, 4718, 5041, 5092, 3730, 4717, + 5148, 4854, 5171, 5968, 5575, 5173, 5147, 5201, 5200, 5266, 5574, + 5973, 5040, 4853, 4716, 5210, 5573, 5976, 5338, 5339, 5412}], + Line3DBox[{4733, 5057, 3761, 4732, 5858, 5561, 4731, 5054, 5095, 5947, + 5602, 4730, 5155, 5202, 5156, 5969, 5053, 5154, 5267, 5153, 4729, + 5203, 3906, 5052, 4857, 4728, 5617, 5991, 5343, 5213, 5354, 5413}], + Line3DBox[{4868, 4744, 5060, 5108, 5951, 5605, 4866, 4743, 4867, 5908, + 5578, 4597, 4742, 5862, 4596, 4741, 5906, 4864, 5058, 4740, 5985, + 5619, 5059, 1789, 5307, 5383}], + Line3DBox[{4954, 4820, 4941, 5190, 5921, 5614, 4661, 5125, 5242, 5126, + 4942, 5187, 5274, 5983, 5613, 4663, 5362, 4943, 5373, 5632, 5627, + 6002, 5358, 5377}], + Line3DBox[{4986, 4785, 4987, 5206, 5205, 5974, 5331, 5332, 5410}], + Line3DBox[{5005, 5105, 5254, 5104, 5255, 4825, 5890, 5618, 5003, 4792, + 5004, 4824, 5989, 5333, 5207, 5334, 5411}], + Line3DBox[{5027, 4797, 5088, 4832, 5167, 5895, 5609, 5026, 5107, 5259, + 5106, 5261, 4831, 5894, 5260, 5023, 4796, 5024, 4830, 5990, 5335, + 5337, 5374, 5402}], + Line3DBox[{5055, 4855, 5044, 5150, 5149, 5967, 4720, 5045, 5093, 5960, + 5600, 4721, 5560, 5857, 4722, 5056, 5948, 5603, 4723, 5576, 5904, + 5047, 5152, 5151, 4724, 5329, 5330, 5416}], + Line3DBox[{5067, 5269, 5268, 4912, 4911, 5875, 4621, 4762, 5874, 4620, + 4761, 4892, 5873, 4909, 3363, 5065, 4804, 5112, 4906, 5915, 5539, + 4907, 4905, 4619, 5828, 5538, 4618, 5827, 5537, 4887, 5872, 4902, + 5293, 5300, 5299, 5384}], + Line3DBox[{5160, 5159, 5325, 4675, 5130, 5925, 5608, 4949, 4821, 4674, + 5595, 5930, 4964, 4672, 5844, 5549, 4670, 5589, 5956, 5074, 3630, + 4669, 5127, 5128, 4946, 5901, 5568, 4668, 4959, 5928, 5593, 4666, + 5843, 5548, 4664, 5588, 5955, 5073, 5305, 5312, 5311, 5388}], + Line3DBox[{5193, 5365, 5390}], Line3DBox[{5280, 4775, 5294, 5406}], + Line3DBox[{5327, 5137, 5162, 5136, 4980, 3399, 4981, 4979, 4683, 5845, + 5550, 5885, 4682, 4781, 4963, 5884, 4977, 4780, 5080, 3822, 5135, + 4975, 4779, 4976, 5933, 5597, 4681, 4778, 5883, 4680, 4777, 5927, + 4958, 4973, 4776, 5987, 5295, 5079, 5326, 5314, 5399}], + Line3DBox[{5378, 5370, 5368, 5993, 5571, 5283, 5001, 4791, 5934, 5002, + 4983, 4999, 3408, 5083, 4823, 5253, 5252, 4998, 5347, 5604, 5639}], + Line3DBox[{5379, 4862, 5355, 5998, 4863, 5215, 5214, 5285, 5984, 5527, + 5270, 5096, 4861, 5217, 5218, 5216, 5977, 4859, 4739, 4860, 5905, + 5577, 4595, 4738, 5861, 4594, 4737, 5860, 4593, 4736, 6009, 5417, + 4735, 6008, 5423}], + Line3DBox[{5380, 4873, 5994, 5628, 4874, 5220, 5219, 5978, 5286, 4749, + 5271, 5097, 4872, 5222, 5223, 5221, 5979, 4870, 4748, 4871, 5909, + 5579, 4602, 4747, 5864, 4601, 4746, 5863, 4600, 4745, 6010, 5418, + 3340, 5424}], + Line3DBox[{5385, 5301, 5350, 5349, 5340, 5621, 5988, 4903, 5064, 4904, + 4627, 5876, 5542, 5832, 4628, 4919, 4920, 5833, 4629, 4807, 4908, + 4808, 5834, 5114, 4630, 4910, 5066, 5952, 5582, 4631, 5543, 5835, + 4632, 5877, 4923, 4924, 4633, 5916, 4809, 4913, 4810, 5157, 5115, + 5320, 5401}], + Line3DBox[{5386, 5622, 4645, 5183, 5117, 5158, 4815, 4925, 5899, 5566, + 4644, 4935, 5919, 5586, 4643, 5839, 5545, 4642, 5583, 5953, 5069, + 4922, 4641, 3810, 4814, 4921, 4813, 4640, 5838, 4932, 4931, 5879, + 4639, 4763, 5878, 4638, 4918, 5068, 3587, 5302, 5341, 5351, 5342, + 5404}], Line3DBox[{5389, 5313, 5324, 5323, 5076, 5620, 5986, 4765, + 4957, 4944, 5922, 4766, 4665, 5880, 4767, 4667, 5594, 5929, 4961, + 4768, 4960, 5607, 5957, 5129, 5077, 4769, 4962, 5881, 4947, 3391, + 4671, 5882, 4770, 4673, 4965, 4967, 5931, 4771, 4966, 5131, 5161, + 5132, 5623}], + Line3DBox[{5392, 5369, 4093, 5633, 4829, 5284, 5020, 5941, 5557, 5021, + 5000, 5017, 5940, 5556, 5086, 4828, 5257, 5256, 5016, 5626, 5637}], + Line3DBox[{5393, 5371, 4727, 6004, 5211, 5212, 5051, 4856, 5950, 4726, + 5050, 5094, 5049, 5949, 4725, 5198, 5279, 5199, 5048, 5348, 5611, + 5640}], Line3DBox[{5394, 5367, 5992, 5282, 5281, 4984, 4784, 4985, + 5935, 5596, 4982, 4783, 5903, 5081, 5251, 5250, 5289, 4782, 5278, + 5103, 5636}], + Line3DBox[{5395, 4702, 5208, 6006, 4840, 5022, 4839, 4701, 5852, 5019, + 5087, 5018, 4700, 3900, 4838, 5258, 4837, 5262, 5353, 5352, 5643}], + Line3DBox[{5396, 4715, 5616, 6007, 4852, 5039, 4851, 4714, 5856, 5038, + 5091, 5037, 5946, 4713, 5194, 4850, 5263, 4849, 5265, 5146, 5642}], + Line3DBox[{5397, 5303, 5310, 5304, 5918, 5070, 4930, 4651, 5546, 5841, + 4652, 3625, 4945, 4653, 5923, 4819, 4933, 5122, 5121, 5964, 4654, + 4934, 5071, 5954, 5585, 4655, 5547, 5842, 4656, 4948, 5924, 5590, + 4657, 5567, 5900, 4936, 5124, 5123, 4658, 5321, 5322, 5414}], + Line3DBox[{5400, 5315, 5296, 5306, 5297, 5936, 4988, 4974, 5551, 5846, + 4684, 5886, 4786, 4685, 4990, 4992, 5937, 4787, 4991, 5138, 5570, + 5965, 5082, 4788, 4993, 5887, 4978, 4789, 4686, 5888, 4790, 4687, + 5889, 4995, 4997, 5552, 5938, 4996, 5139, 4822, 5163, 5316, 5317, + 5415}], Line3DBox[{5405, 5366, 5204, 6005, 5615, 4969, 4774, 4970, + 5932, 5592, 4968, 4773, 5078, 5982, 5249, 5248, 5288, 4772, 5277, + 5346, 5345, 5635}], + Line3DBox[{5409, 5363, 5999, 4884, 5356, 4885, 4801, 5225, 3934, 4883, + 5099, 5224, 5098, 5227, 4800, 5868, 5226, 4881, 4756, 4882, 5912, + 5581, 4609, 4755, 5867, 4608, 3349, 4607, 5821, 5531, 5419, 5820, + 5530, 5425}]}, + {GrayLevel[0.2], + Line3DBox[{2628, 2808, 5645, 2629, 2819, 2652, 5721, 2832, 2665, 5724, + 2845, 2678, 5730, 2857, 2690, 5740, 2867, 2701, 5751, 2876, 2712, + 3112, 5682, 3103, 3149}], + Line3DBox[{2630, 2809, 5646, 2631, 2820, 5654, 2653, 2833, 2666, 5725, + 2846, 2679, 5731, 2858, 2691, 5741, 2868, 2702, 5752, 3111, 5679, + 3102, 3148}], + Line3DBox[{2632, 2810, 5647, 2633, 2821, 5655, 2654, 2834, 5664, 2667, + 2847, 2680, 5732, 2859, 2692, 5742, 3110, 3101, 5753, 3147}], + Line3DBox[{2634, 2811, 5648, 2635, 2822, 5656, 2655, 2835, 5665, 2668, + 2848, 5672, 2681, 5733, 3109, 3100, 5743, 3116, 3155}], + Line3DBox[{2636, 2812, 5649, 2637, 2823, 5657, 2656, 2836, 5666, 2669, + 3108, 5673, 3099, 3115, 5797, 3154}], + Line3DBox[{2638, 2958, 5789, 2959, 2639, 2824, 5658, 2657, 3107, 5667, + 3098, 3114, 5795, 3153}], + Line3DBox[{8, 4168, 22, 4181, 36, 4195, 562}], + Line3DBox[{2641, 3105, 5650, 3096, 3145}], Line3DBox[{2642, 3144}], + Line3DBox[{2645, 2816, 5652, 2646, 2828, 5661, 2661, 2841, 5669, 2674, + 2853, 5674, 2686, 5738, 2864, 2698, 5748, 2874, 2709, 5758, 3001, + 3002, 3169}], + Line3DBox[{2647, 2817, 5653, 2648, 2829, 5662, 2662, 2842, 5670, 2675, + 2854, 5675, 2687, 2865, 5677, 2699, 5749, 2996, 2997, 3078, 3129, + 3173}], Line3DBox[{2649, 2961, 2962, 2650, 2830, 5663, 2663, 2843, + 5671, 2676, 2855, 5676, 2688, 2992, 5799, 2993, 3077, 3128, 3126, + 3170}], + Line3DBox[{2796, 2947, 2975, 2783, 2936, 5772, 2771, 2924, 5766, 2758, + 2912, 5802, 3022, 2745, 2900, 5800, 3059, 3165}], + Line3DBox[{2797, 2948, 5781, 2784, 2937, 5773, 2772, 2925, 5767, 2759, + 2913, 5763, 2746, 2901, 5801, 3016, 2733, 5811, 2890, 3058, 3164}], + Line3DBox[{2798, 2949, 5782, 2785, 2938, 5774, 2773, 2926, 5768, 2760, + 2914, 5764, 2747, 5699, 2902, 2734, 5691, 2891, 3010, 2722, 5810, + 2883, 3055, 3162}], + Line3DBox[{2799, 2950, 5783, 2786, 2939, 5775, 2774, 2927, 5769, 2761, + 5707, 2915, 2748, 5700, 2903, 2735, 5692, 2892, 2723, 5683, 3006, + 3056, 3005, 3053, 5680, 3143}], + Line3DBox[{2800, 3041, 3061, 3072, 3040, 3167}], + Line3DBox[{207, 4338, 192, 4324, 177, 339, 615}], + Line3DBox[{2801, 2951, 3168}], + Line3DBox[{2802, 2952, 3064, 3063, 3066, 3065, 5817, 2790, 3089, + 3189}], Line3DBox[{2803, 2953, 3062, 5785, 2791, 2942, 3037, 5778, + 3085, 3187}], + Line3DBox[{2804, 2954, 5786, 2792, 2943, 5779, 2779, 2932, 3032, 5771, + 3151}], Line3DBox[{2805, 2955, 5787, 2793, 2944, 5780, 2780, 2933, + 2768, 3027, 3088, 5818, 3139, 3026, 3166}], + Line3DBox[{2806, 2956, 5788, 2794, 2945, 2781, 5715, 2934, 2769, 5711, + 2922, 2756, 3021, 5813, 3087, 3138, 3157}], + Line3DBox[{2981, 2980, 2979, 2795, 5717, 2946, 2782, 5716, 2935, 2770, + 5712, 2923, 2757, 5706, 2911, 2744, 3015, 5812, 3086, 3188}], + Line3DBox[{2982, 2957, 2807, 2627, 5718, 2818, 2651, 5720, 2831, 2664, + 5723, 2844, 2677, 5729, 2856, 2689, 5739, 2866, 2700, 5750, 2963, + 2875, 2711, 2972, 2882, 5681, 2721, 5760, 3113, 3104, 3150}], + Line3DBox[{2983, 2960, 5790, 2813, 2640, 5719, 3106, 3097, 3146}], + Line3DBox[{2985, 2977, 5791, 2976, 2788, 3035, 3060, 3071, 3180}], + Line3DBox[{3043, 2986, 2815, 5651, 2644, 2827, 5660, 2660, 2840, 5668, + 2673, 5728, 2852, 2685, 5737, 2863, 2697, 5747, 2873, 2708, 5757, + 2881, 2718, 3007, 3082, 3130, 3124, 3174}], + Line3DBox[{3140, 3046, 2990, 5798, 3047, 2991, 2693, 2869, 5678, 2704, + 2964, 2965, 2984, 2967, 2968, 2726, 2895, 5695, 2738, 2906, 5703, + 2751, 2918, 5710, 2764, 3028, 5804, 3029, 3079, 3133, 3127, 3172}], + Line3DBox[{3141, 3048, 5808, 2994, 3049, 2995, 2703, 5754, 2877, 2714, + 2885, 5685, 2725, 2894, 5694, 2737, 2905, 5702, 2750, 2917, 5709, + 2763, 2929, 5714, 2776, 3033, 5806, 3034, 3080, 3134, 3177}], + Line3DBox[{3142, 3050, 5809, 2999, 3052, 3000, 2713, 2884, 5684, 2724, + 2893, 5693, 2736, 2904, 5701, 2749, 2916, 5708, 2762, 2928, 5713, + 2775, 5776, 2940, 2787, 5784, 3038, 3039, 3081, 3183}], + Line3DBox[{3152, 3123, 5816, 2978, 2789, 2941, 5777, 2777, 2930, 5805, + 3030, 2765, 3076, 2919, 3070, 3179}], + Line3DBox[{580, 4521, 310, 63, 4222, 77, 4235, 91, 4248, 241, 105, 228, + 4432, 119, 4273, 133, 4284, 147, 4297, 162, 373}], + Line3DBox[{3156, 2908, 3075, 2753, 3024, 5803, 2920, 2766, 5770, 2931, + 2778, 3036, 5815, 3122, 3092, 3190}], + Line3DBox[{3158, 3042, 2814, 5807, 2643, 2987, 2826, 5659, 2659, 5722, + 2839, 2672, 5727, 2851, 2684, 5736, 2862, 2696, 5746, 2872, 2707, + 5756, 2880, 2717, 2888, 5687, 2729, 3011, 3083, 3131, 3125, 3175}], + Line3DBox[{3159, 3044, 5792, 2825, 2658, 2988, 5794, 2838, 2671, 5726, + 2850, 2683, 5735, 2861, 2695, 5745, 2871, 2706, 5755, 2879, 2716, + 2887, 5686, 2728, 2897, 2740, 3017, 3084, 3132, 3171}], + Line3DBox[{3160, 3045, 5793, 2837, 2670, 2989, 5796, 2849, 2682, 5734, + 2860, 2694, 5744, 2870, 2705, 2966, 2878, 2715, 2969, 2886, 2727, + 5761, 2896, 2739, 5762, 2907, 2752, 3023, 3176}], + Line3DBox[{3161, 3003, 3068, 3054, 3004, 2719, 2889, 5689, 2732, 3013, + 3014, 5698, 3118, 3094, 3191}], + Line3DBox[{3163, 2730, 3012, 2898, 5696, 2742, 2910, 5704, 2755, 3025, + 3120, 3090, 3135, 3185}], + Line3DBox[{3178, 3067, 3051, 2998, 2710, 5759, 2970, 2971, 2720, 2973, + 2974, 5690, 3117, 3093, 3137, 3184}], + Line3DBox[{3181, 3073, 3008, 3069, 3057, 3009, 5688, 2731, 2899, 5697, + 2743, 3019, 3020, 5705, 3119, 3095, 3192}], + Line3DBox[{3182, 3074, 2741, 3018, 2909, 2754, 5765, 2921, 2767, 3031, + 5814, 3121, 3091, 3136, 3186}], + Line3DBox[{3199, 3334, 5860, 3200, 3343, 5864, 3216, 3549, 3550, 5912, + 3552, 3449, 3568, 5871, 3450, 3941, 3940, 3569, 3805, 3942, 3455, + 3945, 3456, 3943, 3585, 6000, 4079, 3600, 4114}], + Line3DBox[{3201, 3335, 5861, 3202, 3533, 3534, 5909, 3536, 3445, 3551, + 5868, 3446, 3936, 3935, 3554, 3803, 3937, 3451, 3939, 5980, 3452, + 3938, 3571, 4078, 5996, 3584, 4112}], + Line3DBox[{3203, 3516, 3517, 5905, 3519, 3442, 3535, 3931, 5979, 3930, + 3932, 3800, 3878, 3801, 3553, 3934, 3989, 3933, 3556, 4077, 5995, + 3570, 4082, 4105}], + Line3DBox[{3204, 3440, 3518, 3924, 5977, 3923, 3925, 3797, 3877, 3798, + 3537, 3929, 3988, 5978, 3928, 3539, 4076, 3555, 4081, 5999, 4104}], + Line3DBox[{3208, 3338, 5862, 3209, 3542, 3543, 5911, 3545, 3447, 3562, + 3448, 5963, 3802, 3767, 3564, 3577, 5873, 3565, 3240, 5835, 3373, + 3251, 5919, 3612, 3613, 3615, 5900, 3465, 3635, 3466, 3856, 3817}], + Line3DBox[{3210, 3527, 3528, 5908, 3530, 3443, 3544, 3444, 5962, 3799, + 3766, 3547, 3563, 5869, 3548, 3229, 3364, 5874, 3241, 3593, 5877, + 3594, 3596, 5899, 3461, 3614, 3462, 3855, 3811, 4150}], + Line3DBox[{3211, 3441, 3529, 3796, 3795, 5951, 3765, 3531, 3546, 5866, + 3532, 3220, 3355, 5870, 3230, 3579, 5875, 3580, 3581, 3458, 5916, + 3595, 3808, 3807, 3854, 4028, 4029, 4097}], + Line3DBox[{3322, 3433, 3750, 3848, 5967, 3847, 3313, 3426, 3733, 5853, + 3732, 3304, 3418, 5849, 3295, 3410, 5847, 3676, 3285, 3401, 5936, + 4005, 3675, 1890, 4046, 4130}], + Line3DBox[{3323, 3434, 3735, 5960, 3314, 3427, 3734, 5854, 3842, 3841, + 3305, 3419, 3713, 5850, 3712, 3296, 3411, 5848, 3286, 3402, 5846, + 3659, 3277, 5987, 3394, 4004, 3658, 4058, 4013, 4115}], + Line3DBox[{3324, 3435, 5857, 3315, 3428, 3715, 5959, 3306, 3420, 3714, + 5851, 3494, 3836, 3297, 3412, 5939, 3695, 3694, 3287, 5886, 3403, + 3278, 5927, 3395, 3642, 3270, 5986, 4003, 4021, 4002, 4012, 4141}], + Line3DBox[{3325, 3436, 4048, 4144}], + Line3DBox[{3326, 3437, 3758, 3922, 3921, 5991, 3318, 4047, 4145}], + Line3DBox[{3327, 3438, 3759, 3514, 3869, 5969, 3853, 3903, 3792, 3974, + 3791, 3973, 3505, 5973, 3902, 3311, 3425, 3726, 3497, 5975, 4041, + 4062, 4149}], + Line3DBox[{3328, 3749, 3760, 3748, 5947, 3781, 3846, 3507, 3868, 3506, + 5968, 3866, 3845, 3728, 3968, 3969, 3499, 3727, 3498, 3707, 3914, + 3491, 5990, 4040, 3490, 4124}], + Line3DBox[{3329, 3439, 5858, 3320, 3731, 3747, 3730, 3779, 3840, 3501, + 3865, 5966, 3500, 3863, 3839, 3709, 3964, 3965, 3493, 5894, 3706, + 3492, 3693, 3912, 3485, 5989, 4038, 4039, 4143}], + Line3DBox[{3520, 3872, 3874, 3873, 3521, 3782, 3986, 5984, 3336, 3205, + 3875, 3876, 3538, 5994, 4071, 4065, 4110}], + Line3DBox[{3523, 4080, 4101}], + Line3DBox[{3526, 3524, 3337, 5906, 3207, 3346, 5865, 3219, 3560, 3561, + 3354, 5914, 3228, 3804, 3453, 3576, 3363, 3239, 5952, 3578, 3372, + 3250, 5839, 3380, 3259, 5924, 3633, 3634, 3387, 3268, 5925, 3821, + 3470, 3857, 4022, 3858, 3859, 4030}], + Line3DBox[{3755, 3975, 3511, 3976, 3510, 3972, 3850, 4137}], + Line3DBox[{3757, 3743, 3754, 5949, 3742, 3780, 3970, 3996, 3971, 3740, + 4061, 3844, 4139}], + Line3DBox[{3763, 3762, 3761, 3321, 5898, 3432, 3312, 3711, 3729, 5943, + 3710, 3777, 3834, 3862, 3835, 5895, 3708, 3833, 3901, 3832, 3963, + 3961, 3962, 5890, 3692, 3486, 3674, 3910, 5974, 4036, 3911, 4037, + 4146}], Line3DBox[{3871, 3851, 3852, 3756, 5950, 3512, 3745, 3724, + 3741, 5946, 3722, 3778, 3966, 3995, 3967, 3720, 4060, 4140}], + Line3DBox[{3907, 3794, 3978, 3793, 3977, 3513, 3906, 3319, 3431, 3746, + 3504, 5976, 4042, 3918, 4063, 4148}], + Line3DBox[{3983, 3905, 3904, 3752, 3751, 5948, 3316, 3429, 5855, 3307, + 3421, 3698, 5958, 3298, 3413, 3696, 3487, 3827, 3288, 5937, 3404, + 3678, 3677, 3279, 5883, 3396, 3271, 5922, 3389, 3624, 5955, 3262, + 4001, 4020, 4019, 4127}], + Line3DBox[{3987, 3926, 3927, 3522, 4070, 5998, 4064, 4109}], + Line3DBox[{4096, 4024, 4023, 3860, 3476, 3823, 3276, 5931, 3393, 3651, + 3650, 5930, 3267, 3386, 5842, 3258, 3379, 3592, 5953, 3249, 3371, + 3591, 5834, 3457, 3806, 3238, 3362, 5915, 3575, 3574, 3227, 3353, + 5823, 3218, 5907, 3345, 3525, 3206, 5985, 3998, 4015, 3997, 4014, + 4107}], Line3DBox[{4098, 4034, 4033, 3864, 3837, 3838, 3718, 5942, + 3495, 3702, 3700, 5893, 3699, 3290, 5888, 3405, 3280, 3649, 5884, + 3664, 3648, 3773, 5957, 3819, 3820, 3645, 3469, 5901, 3628, 3626, + 3625, 3255, 5878, 3376, 3245, 3573, 3586, 5988, 4009, 4045, 4008, + 4016, 4111}], + Line3DBox[{4100, 4090, 4093, 4089, 3489, 3913, 3294, 5934, 3409, 3690, + 3671, 3284, 5903, 3400, 3669, 3477, 3959, 3893, 3981, 4051, 4132}], + Line3DBox[{4102, 4092, 6007, 3917, 3916, 3310, 3424, 3725, 5852, 3704, + 3302, 3416, 5940, 3703, 3897, 3896, 3292, 3407, 3993, 3790, 4136}], + Line3DBox[{4103, 4086, 3920, 6004, 3919, 3317, 3430, 3744, 5856, 3723, + 3309, 3423, 3721, 3900, 3899, 3301, 3415, 3994, 4054, 4053, 4134}], + Line3DBox[{4106, 6001, 3601, 4083, 4066, 4072, 3599, 3460, 5971, 3947, + 3880, 3979, 3784, 3946, 3783, 3944, 3454, 5970, 3879, 3234, 3359, + 3567, 3566, 3224, 5867, 3350, 3215, 5863, 3342, 3198, 6009, 3333, + 4154}], Line3DBox[{4108, 4006, 4055, 3540, 3999, 5910, 3344, 3217, + 3541, 5822, 3352, 3226, 5828, 3361, 3237, 3589, 5833, 3590, 3370, + 3248, 3809, 3810, 3610, 3378, 3257, 5954, 3611, 3385, 3266, 5844, + 3392, 5882, 3275, 3667, 3668, 3399, 3283, 3825, 3895, 3826, 4151}], + Line3DBox[{4113, 4017, 4025, 3768, 4010, 3587, 3602, 3588, 3254, 5841, + 3383, 3264, 5928, 3643, 3644, 5929, 3646, 3474, 3662, 3475, 3822, + 3775, 3665, 3680, 5887, 3666, 3289, 3414, 5892, 3300, 3716, 5897, + 3717, 3719, 3502, 5945, 3738, 3503, 3867, 3843, 4153}], + Line3DBox[{4116, 4068, 6003, 4074, 3641, 3887, 3886, 5983, 3261, 3382, + 3991, 3787, 3621, 3884, 3885, 3883, 5917, 3253, 3375, 3598, 5837, + 3597, 3243, 3366, 5830, 3232, 3357, 5825, 3222, 3348, 5821, 3213, + 3340, 4156}], + Line3DBox[{4117, 4069, 4075, 5997, 3657, 3892, 3891, 3269, 5961, 3388, + 3992, 3788, 3640, 3889, 3890, 3888, 5921, 3260, 3381, 3620, 5840, + 3619, 3252, 3374, 5836, 3242, 3365, 5829, 3231, 3356, 5824, 3221, + 3347, 5820, 4157}], + Line3DBox[{4118, 4032, 4031, 3861, 3830, 3831, 3701, 3488, 3687, 3685, + 5889, 3683, 3281, 5885, 3397, 3273, 3632, 5881, 3647, 3630, 3771, + 3815, 3816, 3627, 5923, 3464, 3609, 3607, 5879, 3605, 3246, 5876, + 3368, 3235, 3559, 5872, 3572, 4007, 4044, 4125}], + Line3DBox[{4119, 4035, 3849, 3870, 3509, 3753, 3508, 5904, 3739, 3737, + 3736, 5944, 3308, 5896, 3422, 3299, 3682, 5891, 3697, 3681, 3776, + 3824, 5965, 3481, 3679, 3480, 3663, 5933, 3661, 3660, 3272, 5880, + 3390, 5843, 3263, 3604, 3623, 3603, 5918, 4011, 3769, 4026, 4027, + 4018, 4126}], + Line3DBox[{4120, 4087, 3984, 5992, 3479, 3672, 3478, 3656, 5932, 3638, + 3652, 3637, 5926, 3772, 3954, 3468, 3955, 3467, 3953, 3818, 4135}], + Line3DBox[{4121, 4088, 3985, 5993, 3484, 3691, 3483, 3673, 5935, 3654, + 3670, 3653, 3774, 3957, 5982, 3472, 3958, 3471, 3956, 4050, 4049, + 4131}], Line3DBox[{4122, 4094, 4091, 6006, 3496, 3915, 3303, 3417, + 5941, 3705, 3689, 3293, 3408, 3688, 3482, 3960, 3894, 3982, 4052, + 3789, 4133}], + Line3DBox[{4123, 4095, 4085, 6005, 3908, 3909, 3655, 3473, 5902, 3639, + 3618, 3636, 3617, 5920, 3770, 3951, 3990, 3952, 3616, 4059, 3812, + 4138}], Line3DBox[{4128, 4099, 4147}], + Line3DBox[{4129, 4043, 4057, 4056, 3557, 4000, 5913, 3351, 3225, 3558, + 5827, 3360, 3236, 5832, 3369, 3247, 3606, 5838, 3608, 3377, 3256, + 3813, 5964, 3814, 3629, 3384, 3265, 5956, 3631, 3391, 3274, 5845, + 3398, 3282, 3684, 3686, 5938, 3406, 3291, 3828, 3898, 3829, 4152}], + Line3DBox[{4142, 4084, 4067, 6002, 4073, 3622, 3463, 3950, 5981, 3882, + 3980, 3786, 3949, 3785, 3948, 3459, 5972, 3881, 3244, 3367, 3583, + 5831, 3582, 3233, 3358, 5826, 3223, 3349, 3214, 6010, 3341, 3197, + 6008, 3332, 4155}]}, {}, {}, {}, {}, {}}}, + VertexNormals->CompressedData[" +1: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 +BdBrLv8sk6/IVe2tYWy+0qnuasjmK02bK1LGftLKascK1v4FGw6msfYreigs +vHb3BZkobKs/5LqMiD93Cbp2Nx/UOENV9tsnk+jjkx/aqsvI0+bvzffbF4LB +pef+bByE92hykokLcuqB8ucQJh5OPb+6lOhkkLHed+VVzkmJ942d+Y6ZBXDJ +paNkw/PnZO7SEq2M2TJ4fcHJK/Q2oyeE77p5dAbRmNGn8RZDGfSzPLTd0SYP +YnTaz5/T9jZZ7ttDSXO7FBZPW29wmnChKtDSq/PxcGjt1OGJbKcYNle2MLgy +nQ9nZO4d/fdnwOmnpa5+oXzomvjkWoCTEBTmOg41uMiB8i/SyGtOBXD69F2T +MwoiuNViU99+VlKyvbuT5cdxr2C+71y7kuI8qDSZdGBpGyFYNRu9vD83GRzG +kN5+BQLIahw4aKADU9/fp/gYTUyDqE3HP0flFMEw5Tue6aYSmKJ19+6zaRfg +ZfoWseWeYlBQKm2xPkBClh1b7xLZPQae7hjdwzKEBx8dA04m5ElBobSRR7jv +I3LCsaJ9xTcOhCU/d07YLiJ3Lkb7hTofIN6VLsVHrgtg0mrHLM4KGZgIvnbU +25dETrR9PT1hSQH0q1I5sMm5mPQ3lo0XH04mvXbPGzB3ihi6tvJ1PpeQQz5d +nbOtsl8h8aq0jXbrKgH/QbIpSfvjSGOPQamtS/mELx6z59URESxIV7d7mXYW +qnznGO83F5OywHyznY+Ze47RkcqsmfGgXyInLRFLiP7tOV+exnLhtfLrTIMO +GaB8t1fiTm8pOfE0mHfTqRBWRpnn5M4sIa99XjmSN1HkwdFZJCkhH26s0nmT ++jGN7P54WU/fQAYJ3SscZkzLB/HVrvnHXXKI+SWZqWtrKWxIGl+8TyMPXI5A +29Pcp2R94ofOA3hS8N8+KnmcEwcmxSgfOXfsJbkxMnTtx0wJVEXML5WeL4Ju +E28+Ek85RwSiCXuWPpDAYP24u9bVPNjnN8RyDiSSm8PJqc6qEui6Iq46/iwP +AkunzVHpHwPeu4ZKT6uJIKmLV/zGYwIw6D64c8znK0TzVIX46QQRaLi93NNE +IoADE1WfP7z+Cvzn6oW9teJB9PCPMdaOIpidFDrPyj8Wxo70ze9lUwxJDxX7 +3XwnBknExgr1dTxYoz24h4/TKzgcvsGrykYEI3JiZg/KzoEjj9616BebA31a +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 +mN3Ujoe7vS5+5i7h1OY7zH+Y9xSdjn04fUlCwuQ3t2qlGApF4hfkomIx1M2z +E6Mw30Z8eJpk3VZE+ph2Gel0O5rkb9nY8sgjARj3FX/P7z3sF79ewOT7ZlK7 +DWyeX9b4uNTIkEcqn/Oi/JVfkZ1D3ouMg0Ugb2DVh60rgS38JrF1pmlUs6Fs +fcF5+BzOx7qIdRLrI9qBdqE9WL+xnmMdRz/Rb/QX+wnsL7CvQB6RV+QT+xvs +d7DPqVQNkrH75NOt6hO7bzFzDu1m96vP+8ozFQIp4W58V2A7NA0eKA+1FHYp +hHklzsIp06XkUebW/a+axcIduYMcNeb+3tE76zW5Jyb0B8ibB6tusHw7mw/Z +x/iLY80FxH71R77J8ARy6ei8/VvLheBf1kRZE4pI2y4PT3e8l0e6zlTVNwMx +aHm4TbBJTSV7PRdsbqLCJ8bq41fNdRdB1Oq8Ma39LxHjV9weTRXFZJrxq/iJ +rQWw8oxdky5yBB7tVM0JbyYlC2Zseaw3gge8TXuPdhqUAjkTAnsXJUtJjmuI +8XXmPn5gQdzQc80zIUFv7WJ3eRnZpGdywV0+rzYfYX7CvIR5DfMc5jfMj5gv +MU9insW8i/kW8zXmb8zbmm+9u7N5v6n867NsHRB47FRm839mvGUMWz/uNRkY +ydYT/1lbS9k6gnUI6xLWI6xnWN+wrp3NuKzH1sWr5lsPsnWyqIVuD7Y+ym1K +O95DQUaOqHMTUs8lkFupp2eG7CqC/dbL3/UxFpNu7uHNd3fIJuPfTX9wtxFz +7jaYfnvSm0+GFQ8YfWQ7l3R+PS1WeoYL6sOCnRU5BWTWx76pbUyFxLlfM+78 +ZVxYoZvaJistnaicv1fd4amE7Hb7sOTYGg6c6cUp2Z0pIS3a+TVpfTCdjLku +a3xqBQeuNfMf4+UkJKd5r1fKny0gQz7GjE514cKT5foDtc5xydbpbTVfteKT +mK0SC2YMyinrTiuYZZO9RZxJt4aLSar5mA76zbmwzeKe5uGTiaTdvmdPzpcx ++9lxaemk60Wgcdhgwem2JWTN80CdEuFjUtZ5qG+3AwVwMq9Mq5mClDR/NXP9 +WM90MjZisNSjDwcKHrzXVrwjJPIDxxoOtiogZ1eLPk1RZ+4V913e7FXmkZnr +Cj+NKCwmRc/k1d0duRA5/lV7iyU5xHuduYFhWzHRVtX28X7FgXOXLvbp/y6O +qPvnvZl3TkYyAnuWdbQohEXZZ7apM/2QQE/RZ+m+BKKj3dtEu1ERYP+H/SD2 +gdhfYr+JfSb2r9jPYh+LfTb23dhvh5meL2T78gWTXwSyfbr2Ud2lbH9u0m1h +9WbTGHJw1rcpqwplRG/8nCuXywvA4e3oa5lbXhDzcjJ5QCMZaZm0qev28Uyc +fHRp+3SllBQqtIy8LpdKDFdvPpCqyYFD78KPfpwjIoUTjyrbV+aSY0pRTgXj +mP0aYHN1bQGPoHwrc1dYcoUL4qjxKuy8tU53DrPPFYncnNn5WU0PXmX13uUk +1ayzemgwq3/ariut1nrLyCmHj03fpMSR0imTV3LyC+GC7ceUQe0lZKEg4OvL +JZlEU2d2i6Bopq8bmnZIOkHA9F2TOOvGcsjHo9nqvgFcWBBGuOz46ZT5B9jP +385YqcHi+DzqQz0/+juLPwu3+P5PQOrKzP8UXk/+9fobePt1/IHPBzNWL8qe +uSaL/0w+G3j7dXsaePtjvP3Vdv5B/J/O29/FZwNvfwxv4O2P4f/neZMv1TJn +n0cZHpxq28Dbb9u5RO3ZLPZ5lAfVnrk38Pbbdu5Ptf1uH0rr9QrL/s56/U/h +7Tfs/L08/J+Pw/8Qn3+1nT8Nn3/yuf7L7P+n8PkH68tfzefPhv/bPPzBPudn +4/PftufP6uv+YJ78p+v5X/P/J+v/P7Pu79XzZ637e+vX37XuX23PX90X/Wy8 +/dPt/I08/9Ps+0/6fcGP+Pm78L/a37+Lt3/KfjXw+efiDXz+ufg/hc9/wU0X +D/o+Rnnmkc+cn9HO38D/sfw3+Pt/wq+fzd+fjZ//Vr9+Nn//LB7+aj0/m7// +gtsZrP8+Rtny+z3vp/X3X/Cp1D4bKlf9QR5+Un8bzvV/Bv+reWjYx/8OvGEf +/zP438VPw/7+Z/CG/f3vxv8uPhv264/hf9l+/ej7F/qejqD8N9/X/Vnx8G/P +p/cigvLfvB/9x+38jfkNev4z8/8pev4u/Gfbr98bV//X8H/hbdCZR99/B4By ++4f2VizOHbl3NjtGWTJyr9Ov6fnR7wH+rN/n/NP1/F78P7Tuvx0nf5Y9pnTs +SKXR32zP7+Xn7zoXv9fO/2vr/gb+Tzl3Dfb/TX/n+xvn+n/t1++150d4An3+ +qXmNjKF4KB1vp9LQugbvTMdKc2qks2UNvs6sZtx5bo18RPX4U/1KVO6juDkd +W1FpTPE+dPyJys2za/AldN2XVLa0/nW/NlL7/Kieshk1+PPZNeOzyJtVDX6T +4spUv8y+Bt9N8QkUz7D/YzxrUHumzauRRgY1eDrlbRddJ2jhH9P/I3wN7iuV +3ShvG2fWjLvT/do//89d14X6s5auu5ny1pKOz9PPpzj8uevS8b+ci7V0PSe6 +/mH7X5//G/j/2p4/+Xenf3VebdDz63r+LP1/tf3/FP1/Fs9/tV9/Nf5Pt/+f +7u+/2POjfvLP+nvJ/9Df4/zH7fnZ/PqN+vuz5Zkf6f+z8H+KXw12/nfb+XfN +/6vt/9n4+dn8beDh1/X/Xfw34A34fxP+05zf/1D/+WfhfxafP9v8f3oc/q/1 +/Ohe9iP8R/evH83/jXvxXx23P1v8/9Pj9meL/wa8AW/AG/CfBnek3/N2o9/r +NrOtwR0o/rVmPvhNr8Gv0Xkz6OftbGrwaMua8Xg6/6sJXZfOu0LlN4r3o+PW +9HtOHfo9bwbVY08/Hz61Bjel34MOpvo70+/Bl9Hvp13p/LPja/C71M6rVL/X +n/w99V+Nz6H2H6X+Tv2N7/FvUT8rKQ9zf0P/bqpfTPkeNufX55fR+Sl0HxR/ +43vwGDrfgOqvoL+7mEntfEo/v7KoBn84q2bciX7+wLUGH02/99+FeigPSykv +dF2Qo+sepXrbUT3zXH7dzga8AW/AG/AGvAFvwBvw/3K8nvwFn03lIorb0+eN +qZxDcUs6bxaV9vXwmVQ6U3wGHVtTOY/i8+qtO5vidD1YQKUJxVfQ8ch661I7 +a5/Dvhd/pzu93nzE0X4ris+lY7N6ds6hY5QzKY5+2tTDkU+LenrQTvz7D/QX +1zWvIzNhPh1Pq+cX+mNXR19mvfUElPdf/EWe0c66dv+CO9TjzbDeuvgc2oPr +IW/WFJ9db/6Uev6a1dNjWQ+3pTiO0Q/0C/VjXOHvsRfWjIkBlY4U30DH/al0 +qGsPmULljnrron8WFLetxw/uowZ9/gCVAyk+ho5XUol/7+NGx9QP8sm8Bse4 +p/bDknq84X4hPzQOyEQqN1K8Kx0frWfPVjqmv1snNhTHfcLzakZxCzrG9adT +vC99fguVeI4oL4TyRDCuVtPxaConUbxuHPwSD2Pp2L2OXZnIC1lHZXuK0/gh +KKfVw5GnfhTHeDKrI2vjivKCcZGJ57BWD/rlUsefX/Dx9ebvpPiCOvYJyBiK +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 +cUlPxx2GJadySfb7nrIyExFUuh2SZ/PGrjERDqydPTt+3cDamaavdIXNGxlK +smombxAYf5TL+vXUyYnNk8Stv9IhJk8SjuzbEzZP+mW5xPkESMCr/eP/x96X +x1O5ff9XMiUNpFGSklBp0KDUMhZRGcqQIWOklFIpUkIqDWgQSaGEFELm7EyZ +CZk5zjnO4QykWZP6PVvn3N/rdr8+t+7tDt/v69M/67XXa5+1115777Xe7/08 +eky+jGlGA1sdJeWU28FHVtIE1xeq6vCVRB5Gs5fTTXAe/shqTML1xf/AgAmR +t9EXv8Vbcd4uLFCeg+vLuwku6kSeR8tTHw7m+aknns/H9SVYfVYiURfQhN0u +B3Fd0Dvjp0DUEShfT4ok6gjiOzd1N64jGy7szbleWQy3ik3ziLqDDmzsB1x3 +yi7ofib0KPeWAcL6zOjQ1Vj/Zt7zBlJcA9rIHJlbc7gTPQhZtqwsowuUdM6p +4XpU5m4aj8ct4eHdh8c1PJI9D9ejrKsqKthPZT2+l9jPjCXhprjuiPtWLcfz +nfLqmjGer5t5wEZcdybLWsURdQeNYDsP1BF1Z/i0x2oYz9Q6KR0j6jUK8z83 +Etdr5T1T72E8c8coQZSo70jr7dPZuL7Hvr5gjvEMq7J/NoEHkKStUBfGA/FG +RosxntGzCVhH4Ae05aitA8YPU5o8NTCe2XpgzHsCb6CtfqMH8UYySzIB45nG +uXtlCHyCxie5VGB8knLZTM4DFUL30rr4iwXdKId+wGYmgWc27nsbg3GO0bph +sgTOQUrqAc8xzqm+K16KcU582/TZ2I5d5clSbKcxvcgI45zNdglv8LjObpMj +8bjiS2u3YTzjbNeP8Riq5tOhYf8Vjzy8j/GMW82acXi+UpU1Eni+a55N0sJ4 +ZuV4noM4PtKfPD+dJuLT4FACg/i5gj+AwIdIKujWIowP2Uo8Uhg/25TO20Pg +SVQ8fdkgnlTTFEvD+NlOUceQwJ/osp2/AcafCe80MjB+to28s5fAq+hNwctB +vFphGDwP4+dEfdZw4akMlLxylirGt0beKqoYP6te/PiRwM/IuD6fH+Nn9uK1 +lQR+RlOEvWQI/IwUJt+PwfjZvjDKkOiPnMXq3+P+Kp6qfLh/84PDeRgnP6rx +wbgdrYnso+Nxmx3TMc5HR+KNDLCfukKK+tjP3tZizAtQeOYzzAuQ59NDLXhe +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 +zCbwAGxvuxGG8cA8qsoRjAdKT+89HGZXBQ9PZZFfSLDRKbWNz8SsSTCbZpTz +LrQCpjnI2cclsFGe4mTpm7ltwLq92HczuQEltPgZzdFiQdb4s2tS9rfB0RWv +oh5KtqDkK5UmDyVZkLp3xlWiDdoxz2I359agg/PIJYIMJryV952ZcZ4MNsHZ +L6ZWFaL3l/bkt9EZ0GS+/z7NqRPuKK0KoL8rhsyrKopFBjT4xCd3m/GhG65v +yhQa61YKke/uXDZYSYWFx5nrW3yZoB2YN2fy8WYoFF3xCJHbYO2XmM9a54i8 +/u528O3oFhBWny36it0A50qrlV88ZME6/htvclOp8Kn0hLDXmgqwK6EICX5i +QGjjmLcO8mykd+Sa6oGbZSDEO1tRcEIHeMkkr24U6oT7Xlt0H056CB90TMQe +72fCuE2vrK5HdEHCozMj9vtuzvWbK7QLt2WyDpmcOclCL/VOfgxekwoZLRU7 +C9MoIL1H4o7pHgbITJ7AEszOQGo6wjl8u2nwqlayD+chI0ZKYDiRl1QeSA7m +pQMzR0bndDBQuc3DCwWP01B0pKEiu7cTVrM3Ss65w4Rh84t4hF2qkLPvwfSg +UxTYfu/4rAExFgS90Q/TC61HCyJDagwlSfBYk+fSlxF5QL3oWPM2j4XCUxMv +jeenAApWmrnnaCUIWqc+znJio9dPgvij/NpBU+HJSKu8euRs/2Yz3j8bR1yW +w/vHqF9mNdEfbU6EItyff/8wPtx/3m39NIw/LyxYsxjjz72NC8Mw/ty0fpXz +RasqlNWyMcVyBhsZ5KRtu2hFgrAbBrpY7z4u8SHW+7lQ1bB+oaHewu0WBP7Y +qTMl0aUMqnsasxKdSaD0ztOXN42Fju525AtwT4VMId7RWnso8Fz7nRTiYSLd +BVeK7DXS0JepMwTe5XdCv4pyQ6RyCZIMf7Jq1H0i3zd41LzPJnjaXN8IsXPZ +MG5cRtHVahZSs3yy0VSSAlfWHBIyyi6HiuqtEjOOslHISXJRSnw7LLo+7X7q +YiayUNP2mCp4DSUuubv1WGonxI4/rf1JnYqOHtrJ6GtvRhO+XLo+qqML5i5L +lRPibUKRzZPPqal0opKeqXH+gV1glRMpuVriMQqvW6aVn9KN5ORqhgU/psHd +V15lW7xYKHrsOge2Ty1svbLq4ZRMIg6ZOuOXNDERerbpmXxrCTRHTxk2t4YC +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 +PDBEvpJe/Wv5/Peer/0sP//2/f+z/Blq/+z8xg7v74wryPk9V2Zy7Ay1r4bS +f9n8dbxejtxk8p/npcdpm3PkN+8j/en9yeS093BkpMF/7j/UPhwqbkyDr7/P +Mvoq95t+1f/OeyM/di7+h/c9fvS8D7W+Q/kzOMzQ7z98t/9D6Yfy/3fq6Y+O ++6f7/6z3W3503MFpD32v/peN+wft/1N2fpb+L4vbt++nWXDeT5t21yw+B/8d +Ckd+5/p+t/538sNv+i8LnzFncrFqLldy/Rnq/boffe9uqDg8fvc1H2Vw5KiV +/zkv/U36H90Pf/W5+9N+/uh++Fnz/R0e+lefxx+Nw3fb/4P8+p/az//V/1f/ +Pfqfde6+2/5QdaRiUd/gPU4RR6K9flb/gvz8V8fnu/Wc96WQwV9kfyg9dzzu ++GZ/07hD6Y05bc57fMjyJ9tX57RtOHL3Pzxfbvw5vBl5/DXj/mY/63H47S2O +VND9n/WLdH+uP/Ycfh3K8WeM1X/WD+X/D+v1vraPGX+VD6z+s/5H71v+bXpd +TnsrR/7Rfc55L/mXvLTjXzrf/+p/pf/lfXIrjp6TV3/5e8Ft3/T/tawHS06b +g6vBlKPn3utt5Ehjjt6U0970jX3ue8C/fi/7//vzrX4of4yG0HPH5c6L6w/3 +HpI7j599D/lP6bnx4saPGzd9dsEg3uJKl2jyjkHc9Yk8yMO5MnLKOxOsd5Ad +OdjmyvJU0jas95V6PtjmShL76GD/H70/HziyaBDncaXo5P3bsf5a8NfxuHKG +Tuu2/2SngIMXyziyioMbBYNiBtvTOHKnW4EN1h/gxGWbyVeZrPU1PsM3fW2n +c/L8bPuvehtO3VnA+V2x9a/i/5vzxbn//WUdznP03H1o8CtZDyqcNvc8pnD0 +3H25liNd/uB+4OT3X/b/5l/3R5xzg77Vc/GG6xD2ueeIu8+48+LiMW5d4OJG +fY6ee05/fV5/OY+/xJNbj779ew1uf2694daxM9/Y3/xNf24cuPnK5nfi5vSN +nlvfub/X5MjsX/v/y7jc9dL5Jj5cP7U4be6+8P61feTAkQq/9vM3+20ofMiN +v9GvZD0UqWlZvQ3oQkJWV/YaXW+BmRG7N86ypqKh8MBQ9Z0zf+TIkes5+v2c +9iqO1ODouXa59+pc/zn14Jd9YsvRL+a0z3KkAEe/g9Pmjr/hm3GlOPI2R2/P +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 +TvmHv8tr8OOun6T/Y+T2p3DM/y6X3ydPTnmYf1qcySk/0884vzwvp7zNPy3O +zGfZKXb79Nfs1UD5/OH1su5jiN32dy8b6PtZTnrLab9YcRJit+x46U+9Fxjk +/kM2zmDhWfdjZ77rP1Dc6j+FN/qT9MEaf8j4/Gp3fxy3a5BxdX/ZTg6UPjXH +qU8v2e2MHKfN/0mvONE5+dmByudP+eWv/P44Tvdg4UFzog8W/jincYZazgPF +Cx4sfzRQfPNBls9Q27cfHp+TPPvBFf3tfJbg71MjxNTYLZuf06x+gqzWr59x +ONHZeWw2ngMbd6CBVX9+Iosu3g8O9UDpYiy8K2WTr2388v/c/z/iHf9/8J3p +LP4FWONI/53/7+TfD970L+szJ785UH/Kad6B4oz3M/5Q6/lA7cBQj/9/db3f +0b/q14/js9sVK/XZ9/OsduyuVYOKL8zGGypktcl/x6n84XEGGSf6l/Whb5o/ +gD8+0HzXYNmfga5rsHCEBzrvT/YfMn76iau/G2eo71N90w/8vdt/6f+36QPV +q8GiD/W5HjK5cfpukBNdKWz6bJEcjTR2+7P5gZ+k//J62fhfbLyswf4ehhNd +l/XMxh3b2k//waLvZj1r/q3l3J+NN8bC8USb+un/s3Jgy3/3b5IDJ7o565mt +Fyv66c+JPpt1TxRh4aAJmn2ls++PQiy6vtnfxvll+/CENe471jxs3M87LHov +i/6L+N2DZce+o99k4dCJsfh9b/eVfp1Fn8CiL9jxS/z/l/5feh/9WzxWNn4i +J3zSDX97/l86+3vK9X9ry1jn7H/xjjf1M84/jc4J//e901e8Xna72/Erbi+n +/GQB656cwWrTWfdlIRYur9A3+Lw/yf93+8vePzZ+LNvufYsrzd4XTvvIHoeN +43r4N8n/W//YHz47J//ewsorHmeNv2jjVzpbL1l+j4V7+r84pOzx2XijnPwj +W57fyo3FP6ixWgaLzj5vbBzdoyw6Gz+X3Xqx6Ox+K1ltwoa/88+WmxOLvuKb +8Z/1Izc27i073tnOorPzqtas9ht9QH/H1+3XPvxP/29xlr/lh73fbL7s+xmf +0zjf0tl6/i0++Lc4zn//TryMvX/IgdWycZz3mW+6v6CZiZYeVtjkf7AS9FeW +C5x3qAQNVj82Ti97nGOMpyKn55XBuISFuUe3N6Kg92dey2tS4RxLP0VY8Qlb +nsksPrTYeXFWPlyQ9byS1d60GJgc+qMP+//+/bl6bowJMa54ffJRYhdf4nXg +jc7M76sDP/G6Fl5PHvK6PpiNpDTAyeJsQ7yevLx85HF3ySJEHXZI0C+aASOy +koRwfARGWMTdB3x0OOY/TnLvXiLsVmyMwevSi73y5hafSQXdB2adT7pJUHGC +dBuvY087t2eboXcKetswe0lICR2UT8ta+tSToc7b47xzfRGac3sdj2U3Da7f +GVW3TZEMkgkvnUx1a1BiwrsTOF6BwDYN/z6cgpCjnrtcGNCUUXWsQLsGpMib +7+L19keVpqL0LBooGizUIk0jwIildvPw+vylZ27PLz1AAZVJ799bxhJB2mP7 +u0AiEfQtC8NVS4tR9nLb+wVnKIA8rhTguAA1Psce2XbWoseW2npCUo0QIxE9 +G8cR6H27TQD/rqgt+2FfnWsaC3dgbgQRxymAtzSBgx2fSyFjotAiHKcgkzop +0lKdAYIVcrfaLCrAL2RtQ871evAw2n3HZhENDioYX/SXqobZ2wv4K56QQF3B +iDxnYyOIHb3/xMigDvZY+mjg+AjHZlotr3JMQpRQOH+stwGWLdsWjOMpRLw4 +M/u6ZQma8lFPKV+tAdqjqJU4/sKtcDOx7QEEdHbvvphDdURwRpf68BpqL3dV ++XqT0ZbjT++/OEiAi88VZXB8h8PxI/RwfII4i9opZro14Mw17RIuZ1dPJ3nP +u02g5J6hIm+RD7wVz6Wbi2qh133TEndHJmjynuzJfFkAS3f1mgjKEEHWieCp +eosOX7hufyK9L4KZ+mHvcRyKIv1zyePgHvLaOCJw2dZakN1/OwLHuRDbab93 +glcJ8u1RuIdUa4A31doYrwOfFrhD1vx1PVohMyG1jVkJj/iuXMdxND7MMSaE +WTYiab62jney5eAWuH0vjruhb6wjUHCAhqaYts7PDiqBzzbFk2/akUFp1Vwc +BwTTE5FHpHYEFVMCTXEcEO5aHh+dTXVwObzhTbdYHlzbMe81jj9imx5ukNRe +jLZy7bwgV/4KLuss24zjmAiGUn3HLiAi011ejq5CedDjeXs/jntyc65d6DFK +I1K/rlvMX5ADEknOq6Z70mDT1JXjwDoH6TkdKEsuqkH79OZ74zgsURXrNPwt +mdAaXlFZmFqGnE8LBKl/rIV2t+frDArosPIkD+B12i+UFfDhddppauJXMmel +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 + "]], {}}, + Axes->True, + AxesLabel->{None, None, None}, + AxesOrigin->{Automatic, Automatic, Automatic}, + BoxRatios->{1, 1, 0.4}, + DisplayFunction->Identity, + FaceGrids->None, + FaceGridsStyle->Automatic, + ImageSize->{442.5600477925389, 306.4283988214559}, + ImageSizeRaw->Automatic, + Method->{"DefaultBoundaryStyle" -> Directive[ + GrayLevel[0.3]], + "DefaultGraphicsInteraction" -> { + "Version" -> 1.2, "TrackMousePosition" -> {True, False}, + "Effects" -> { + "Highlight" -> {"ratio" -> 2}, "HighlightPoint" -> {"ratio" -> 2}, + "Droplines" -> { + "freeformCursorMode" -> True, + "placement" -> {"x" -> "All", "y" -> "None"}}}}, "RotationControl" -> + "Globe"}, + PlotRange->{{-1, 1}, {-1, 1}, {-0.21586729334089783`, 2.9999994285714693`}}, + + PlotRangePadding->{ + Scaled[0.02], + Scaled[0.02], + Scaled[0.02]}, + Ticks->{Automatic, Automatic, Automatic}, + ViewPoint->{-2.515822176203162, 1.7407232692409083`, 1.4458635058841527`}, + ViewVertical->{0.35138131443416126`, -0.2431243496450539, + 0.9041137773954065}]], "Output", + CellChangeTimes->{ + 3.9045727511465816`*^9, 3.904936009958293*^9, {3.904936057108736*^9, + 3.904936082303671*^9}, {3.904936129990044*^9, 3.904936144554667*^9}, { + 3.904936175469924*^9, 3.904936189631597*^9}, 3.90493622114825*^9, + 3.904936412967985*^9}, + CellLabel-> + "Out[134]=",ExpressionUUID->"a3e927d5-ceed-4f2d-a7b8-139c6edbd3b4"] +}, Open ]], + +Cell[BoxData[""], "Input", + CellChangeTimes->{3.904572556068718*^9, + 3.904936086095483*^9},ExpressionUUID->"77890b21-f5e9-492f-866e-\ +7a1c9ff81fea"], + +Cell[CellGroupData[{ + +Cell[BoxData[ + RowBox[{"MaxValue", "[", + RowBox[{ + RowBox[{ + RowBox[{"TestFunction", "[", + RowBox[{"x", ",", "y"}], "]"}], " ", "-", " ", + RowBox[{"SharktoothFunction", "[", + RowBox[{"x", ",", "y"}], "]"}]}], ",", + RowBox[{ + RowBox[{ + RowBox[{"{", + RowBox[{"x", ",", "y"}], "}"}], "\[Element]", " ", + RowBox[{"x", ">=", " ", + RowBox[{"-", "1"}]}]}], "&&", " ", + RowBox[{"x", "<=", " ", "1"}], " ", "&&", " ", + RowBox[{"y", ">=", " ", + RowBox[{"-", "1"}]}], " ", "&&", " ", + RowBox[{"y", "<=", "1"}]}]}], " ", "]"}]], "Input", + CellChangeTimes->{{3.9049360877660923`*^9, 3.9049360877757263`*^9}, { + 3.904936500097084*^9, 3.904936553959141*^9}, {3.904936594552835*^9, + 3.9049365974402523`*^9}, {3.9049366712096357`*^9, 3.904936675563706*^9}, { + 3.904936709208869*^9, 3.9049367906793337`*^9}}, + CellLabel-> + "In[139]:=",ExpressionUUID->"8e1269c1-cb39-4fdb-af72-d051beab8930"], + +Cell[BoxData[ + TemplateBox[{ + "MaxValue", "ivar", + "\"\\!\\(\\*RowBox[{RowBox[{RowBox[{\\\"{\\\", RowBox[{\\\"x\\\", \ +\\\",\\\", \\\"y\\\"}], \\\"}\\\"}], \\\"\[Element]\\\", RowBox[{\\\"x\\\", \ +\\\"\[GreaterEqual]\\\", RowBox[{\\\"-\\\", \\\"1\\\"}]}]}], \\\"&&\\\", \ +RowBox[{\\\"x\\\", \\\"\[LessEqual]\\\", \\\"1\\\"}], \\\"&&\\\", \ +RowBox[{\\\"y\\\", \\\"\[GreaterEqual]\\\", RowBox[{\\\"-\\\", \\\"1\\\"}]}], \ +\\\"&&\\\", RowBox[{\\\"y\\\", \\\"\[LessEqual]\\\", \\\"1\\\"}]}]\\) is not \ +a valid variable.\"", 2, 139, 8, 33756993668677369520, "Local"}, + "MessageTemplate"]], "Message", "MSG", + CellChangeTimes->{ + 3.904936555500251*^9, 3.9049365991145973`*^9, {3.9049367658151073`*^9, + 3.904936791332901*^9}}, + CellLabel-> + "During evaluation of \ +In[139]:=",ExpressionUUID->"56aff4f9-222b-4b62-b518-56ea468a1f6e"], + +Cell[BoxData[ + RowBox[{"MaxValue", "[", + RowBox[{ + RowBox[{"1", "+", + SuperscriptBox["x", "2"], "+", + SuperscriptBox["y", "2"], "-", + RowBox[{"Max", "[", + RowBox[{ + RowBox[{"1.98`", "\[VeryThinSpace]", "-", + RowBox[{"2", " ", + RowBox[{"Abs", "[", + RowBox[{ + RowBox[{"-", "1.4`"}], "+", "x", "+", "y"}], "]"}]}]}], ",", + RowBox[{"1.5`", "\[VeryThinSpace]", "-", + RowBox[{"2", " ", + RowBox[{"Abs", "[", + RowBox[{ + RowBox[{"-", "1.`"}], "+", "x", "+", "y"}], "]"}]}]}], ",", + RowBox[{"1.41`", "\[VeryThinSpace]", "-", + RowBox[{"2", " ", + RowBox[{"Abs", "[", + RowBox[{ + RowBox[{"-", "0.09999999999999998`"}], "+", "x", "+", "y"}], + "]"}]}]}], ",", + RowBox[{"1.98`", "\[VeryThinSpace]", "-", + RowBox[{"2", " ", + RowBox[{"Abs", "[", + RowBox[{"0.`", "\[VeryThinSpace]", "+", "x", "+", "y"}], "]"}]}]}], + ",", + RowBox[{"1.32`", "\[VeryThinSpace]", "-", + RowBox[{"2", " ", + RowBox[{"Abs", "[", + RowBox[{"0.8`", "\[VeryThinSpace]", "+", "x", "+", "y"}], + "]"}]}]}]}], "]"}]}], ",", + RowBox[{ + RowBox[{ + RowBox[{"{", + RowBox[{"x", ",", "y"}], "}"}], "\[Element]", + RowBox[{"x", "\[GreaterEqual]", + RowBox[{"-", "1"}]}]}], "&&", + RowBox[{"x", "\[LessEqual]", "1"}], "&&", + RowBox[{"y", "\[GreaterEqual]", + RowBox[{"-", "1"}]}], "&&", + RowBox[{"y", "\[LessEqual]", "1"}]}]}], "]"}]], "Output", + CellChangeTimes->{ + 3.9049365105440903`*^9, 3.9049365555192623`*^9, 3.904936599118556*^9, { + 3.904936765825865*^9, 3.904936791338071*^9}}, + CellLabel-> + "Out[139]=",ExpressionUUID->"bc662b98-d2f9-4baa-9cdc-9d6d21b2de4f"] +}, Open ]] +}, +WindowSize->{808, 796}, +WindowMargins->{{Automatic, -1339}, {13, Automatic}}, +FrontEndVersion->"13.3 for Mac OS X ARM (64-bit) (July 24, 2023)", +StyleDefinitions->"Default.nb", +ExpressionUUID->"2c7eed0e-a68c-49ed-9f12-4aaf47e1f16e" +] +(* End of Notebook Content *) + +(* Internal cache information *) +(*CellTagsOutline +CellTagsIndex->{} +*) +(*CellTagsIndex +CellTagsIndex->{} +*) +(*NotebookFileOutline +Notebook[{ +Cell[558, 20, 2816, 80, 199, "Input",ExpressionUUID->"1d8c04be-0ca1-428f-bda7-35daac5233b5"], +Cell[CellGroupData[{ +Cell[3399, 104, 743, 19, 30, "Input",ExpressionUUID->"dcb755eb-c1d2-413d-8556-dcf12ad4f05b"], +Cell[4145, 125, 243798, 3975, 346, "Output",ExpressionUUID->"a3e927d5-ceed-4f2d-a7b8-139c6edbd3b4"] +}, Open ]], +Cell[247958, 4103, 150, 3, 30, "Input",ExpressionUUID->"77890b21-f5e9-492f-866e-7a1c9ff81fea"], +Cell[CellGroupData[{ +Cell[248133, 4110, 942, 23, 52, "Input",ExpressionUUID->"8e1269c1-cb39-4fdb-af72-d051beab8930"], +Cell[249078, 4135, 835, 16, 28, "Message",ExpressionUUID->"56aff4f9-222b-4b62-b518-56ea468a1f6e"], +Cell[249916, 4153, 1771, 48, 80, "Output",ExpressionUUID->"bc662b98-d2f9-4baa-9cdc-9d6d21b2de4f"] +}, Open ]] +} +] +*) + diff --git a/Dissertation_unzipped/sharktooth_functions.html b/Dissertation_unzipped/sharktooth_functions.html new file mode 100644 index 0000000..bd2a64b --- /dev/null +++ b/Dissertation_unzipped/sharktooth_functions.html @@ -0,0 +1,383 @@ + + + + + + + + + +Sharktooth Functions in 1-dimension + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+

Sharktooth Functions in 1-dimension

+
+ + + +
+ + + + +
+ + +
+ +
+
import numpy as np 
+import matplotlib.pyplot as plt
+
+
+
def max_conv_operator(samples, f_samples, input, L):
+    return np.max(f_samples - L * np.abs(input - samples))
+
+def sharktooth_function(function, x_start, x_stop, number_of_sharkteeth, L, plot_arg):
+    samples = np.random.uniform(x_start,x_stop, number_of_sharkteeth)
+    f_samples = function(samples)
+    x = np.linspace(x_start, x_stop, 10000)
+    approximate_y = []
+    for i in range(len(x)):
+        approximate_y.append(max_conv_operator(samples, f_samples, x[i], L))
+    error = np.max(np.abs(f(x) - approximate_y))
+    if plot_arg == 1:
+        plt.plot(x,approximate_y)
+    else:
+        return error
+
+
+
def f(x):
+    return x/(x+2)
+
+
+
L = [1,4,8,16]
+plt.figure(figsize=(17,5))
+for L in L:
+    errors = []
+    for i in range(1,50):
+        errors.append(sharktooth_function(f,0,1,i,L,0))
+    import matplotlib.pyplot as plt
+    plt.plot(errors, label =L)
+
+plt.xlabel("Number of teeth")
+plt.ylabel(r"$\sup_{x\in x_i} | f(x)- \mathfrak{R}_{\mathfrak{r}} ( \mathsf{P})|$")
+plt.legend()
+plt.title("Sup of deviance from  f(x) as the number of teeth increase and as we get closer to L")
+
+
Text(0.5, 1.0, 'Sup of deviance from  f(x) as the number of teeth increase and as we get closer to L')
+
+
+

+
+
+ +
+ + +
+ + + + \ No newline at end of file diff --git a/Dissertation_unzipped/sharktooth_functions.ipynb b/Dissertation_unzipped/sharktooth_functions.ipynb new file mode 100644 index 0000000..e9c08fe --- /dev/null +++ b/Dissertation_unzipped/sharktooth_functions.ipynb @@ -0,0 +1,145 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Sharktooth Functions in 1-dimension" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [], + "source": [ + "import numpy as np \n", + "import matplotlib.pyplot as plt" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [], + "source": [ + "def max_conv_operator(samples, f_samples, input, L):\n", + " return np.max(f_samples - L * np.abs(input - samples))\n", + "\n", + "def sharktooth_function(function, x_start, x_stop, number_of_sharkteeth, L, plot_arg):\n", + " samples = np.random.uniform(x_start,x_stop, number_of_sharkteeth)\n", + " f_samples = function(samples)\n", + " x = np.linspace(x_start, x_stop, 10000)\n", + " approximate_y = []\n", + " for i in range(len(x)):\n", + " approximate_y.append(max_conv_operator(samples, f_samples, x[i], L))\n", + " error = np.max(np.abs(f(x) - approximate_y))\n", + " if plot_arg == 1:\n", + " plt.plot(x,approximate_y)\n", + " else:\n", + " return error" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [], + "source": [ + "def f(x):\n", + " return np.tanh(x)" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "Text(0.5, 1.0, 'Sup of deviance from tanh(x) as the number of teeth increase and as we get closer to L, for tanh that is 1')" + ] + }, + "execution_count": 6, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAABXcAAAHWCAYAAAA8Wbo3AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjguMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/SrBM8AAAACXBIWXMAAA9hAAAPYQGoP6dpAAEAAElEQVR4nOzdd3QU5dvG8Ss9JKTQO6GDSC8CoRcBsQuCiEpRASmCYkOQIqjYXhBsFAmoqDQFUenSm/TeCQm9p/fkef+A7I+QBFI22SR8P+fMOWR2yrWzO5PlzrP32EkyAgAAAAAAAADkKva2DgAAAAAAAAAASD+KuwAAAAAAAACQC1HcBQAAAAAAAIBciOIuAAAAAAAAAORCFHcBAAAAAAAAIBeiuAsAAAAAAAAAuRDFXQAAAAAAAADIhSjuAgAAAAAAAEAuRHEXAAAAAAAAAHIhirsAkEkdOnTQ7t27FRkZKWOMvLy80rX+6NGjZYzJonQ3rVmzRmvWrMnSfWQHBwcHffrppwoMDFR8fLz++OMPW0fK0fz8/BQaGprm5UuXLq3IyEj5+vqme19btmzRp59+mu71slvi+VaoUCFbR8l2LVu2lDFGnTt3tnWUNClatKjmz5+vq1evyhijIUOG2DrSXaX3fLtTXrlO5zX+/v7y8/OzdQykwsfHR8YY9ezZ09ZR8qzMfs7NqXr27CljjOrXr2/V7Sa+J4cNG2bV7aaHn5+f/P39bbZ/ANmP4i6AHKFGjRqaP3++Tp8+rcjISJ09e1YrVqzQoEGDbB3trgoWLKh58+YpMjJSAwcO1AsvvKDw8HBbx8qz+vTpo3feeUcLFixQz549NXHiRFtHSrfu3bvn2CLVqFGjtG3bNm3evDnd63766acaOHCgihUrlgXJ0m/48OF68sknbR0DmTBx4kR16NBBn3zyiV544QUtW7YsxeXy5cun0aNHq2XLllmeKTv3BeQ1nD//88ADD2j06NHy8fGx6natXbDM7s+5TZo00ejRo3NFAfmRRx7R6NGjs2VftjwuXbt21U8//aRjx47JGMMfIYEczDAxMTHZcmrSpImJiooyx44dMyNGjDAvv/yyGTNmjFm2bJk5fvy4zfPdberQoYMxxpi2bdtmeBujR4825ubQ3SybnJycjJOTk82PV2anX3/91Zw5c8bmOTIzLVmyxPj7+2fLvvz8/ExoaGiali1cuLCJjo42zz33XIb2ZWdnZ86fP2/Gjh1r82MsyYSGhho/P79k8xPPt0KFCtk8Y3ZPLVu2NMYY07lzZ5tnSct04cIF89NPP91zuUKFChljjBk9enSWZ7rbvtJzvqU05ZXrdF6b/P39U7yWMKV/yopz1cfHxxhjTM+ePW3+/NIzde7c2RhjTMuWLa263Z49expjjKlfv75VtmeNz7npmYYNG2aMMcbHxyfL95XZYzVlypQUP78nvieHDRtms+Pi6OhonJ2drbLvNWvWmJCQELN69Wpz7do1s2bNmmx5LzAxMaVvchQA2NiIESMUHByshg0bKjg4OMljRYoUsVGqtClatKgkKSgoyLZB7iE2NtbWEayiaNGiaTrWDg4Osre3zzPPOzu88MILiouL05IlSzK0vjFGCxYs0EsvvZRtI1mQM7m5uSkiIiLT20nr+Z5X2OJ6Za3XCkByeeH8yorPuXnhuOR0cXFxVtvWiy++qHPnzskYo/3791ttuwCsi7YMAGyuYsWKOnjwYLLCriRduXLF8u+79VUzxiQpKCX21axatarmzp2r4OBgXb16VZMmTZKLi0uacnXp0kU7duxQRESErly5op9++kklS5a0PL5mzRr9+OOPkqQdO3bIGHPPvnxNmzbVf//9p8jISJ04cUJ9+/ZNddkePXpY9n/t2jX9+uuvKl26tOXxKVOmKDQ0VPny5Uu27i+//KILFy7I3t7ekvX2r1E5OTlp7Nix2rFjh4KCghQWFqb169erVatWSbZze9+wV199VSdOnFBUVJT+++8/NWjQINl+E4/35cuXFRERoSNHjmj8+PFJlilZsqR++OEHXbx4UVFRUTpw4IB69+591+OWmKNNmzaqUaOGjDEyxqhly5ZJMg4ZMkQnTpxQdHS0qlevLklq3bq11q9fr7CwMN24cUOLFi1StWrVkmw/8f1SuXJl/fTTTwoKCtLly5f14YcfSrrZi3bRokUKDg7WhQsX9Oabb941b2rWrFmjxx57TOXKlbM8h8SeaFn1mkg3j/kff/yh0NBQXb58WZ9//rnlvZHoqaee0rZt25J83bJatWqKiIjQ7NmzkyzbtGlTxcXFacKECUnmr1y5UuXKlVOdOnXueSyGDRumTZs26erVq4qIiNCOHTtS7AXbrl07bdiwQTdu3FBoaKiOHDmijz766K7bNsYof/786tWrl+U433luent7y8/PTzdu3FBQUJBmzpyZ4rl0r/MwNYnvqYoVK951Pxm5rmX2ferg4KCPPvpIFy5cUFhYmBYvXpzic3rooYe0dOlSBQUFKTw8XGvXrk3Wjzkx0wMPPKA5c+bo+vXr2rhx412PTfny5TVv3jxdu3ZN4eHh2rJlizp16mR5PPFrxfb29ho0aJDlNUyJj4+Prl69KkkaM2aMZdnbj1vVqlU1f/58Xbt2TZGRkdq+fbsef/zxZNvy8vLSxIkTFRgYqKioKB0/flzvvPOO7Ozs0rwvKW3nW0ruvE4n9kh+9tln9f777+vMmTOKjIzUqlWrVLFixWTrP/TQQ/r77791/fp1hYWFae/evXr99dctjyf2BK5QoYL+/vtvhYSEaM6cOZIkOzs7DRkyRAcOHFBkZKQuXryo77//Xt7e3kn28cQTT+ivv/7SuXPnFBUVpRMnTmjkyJHJnl+lSpW0YMECXbhwQZGRkTpz5ox+/fVXeXp6Jlkuo+dX2bJl9c033+jIkSOKiIjQ1atXNW/evGRfcU98L/n6+urLL7/U5cuXFRYWpt9//12FCxdOtt0RI0bozJkzCg8P17///mv5PZIWWXlNW7hwoXbu3Jlk3p9//iljTJL38kMPPSRjjDp27GiZd6/39d3Y2dlp9OjROnfunOWYPPDAAyn2IbbW+XMnLy8v/d///Z/8/f0VFRWlM2fOaPbs2ffsm56W3/358+fXxIkTLdu+dOmSVqxYobp16yZZztrXwp49e2rBggWSpLVr1yb5TJPotdde04EDBxQVFaVz587p66+/zvav5N/rc+69PidLd7/u3Gn06NH64osvJEmnT5+2HJfE87pXr15avXq1Ll26pKioKB08eFD9+/dPth1/f38tWbJETZs21bZt2xQZGamTJ0/qxRdfTHG/Li4uabo+3Pm8ElvHJeZM6ffUvT6n1axZU35+fjp58qQiIyN14cIF/fDDDypYsGCaj0tq+e7sudutWzft2LFDISEhCg4O1r59+5L8jkjN2bNns/zeIACsw+bDh5mYmO7vadmyZSY4ONg8+OCDd13ubl+9u/Nrfolfvd67d69ZvHixGTBggPnxxx+NMcbMnj37npkSv6q1bds2M2TIEPPxxx+b8PBwc+rUKePl5WUkmXbt2pnvv//eGGPMyJEjTY8ePUzjxo1T3WaNGjVMeHi4OX36tHn33XfNiBEjzIULF8yePXuSfa3r/fffN/Hx8ebXX381/fv3Nx988IG5fPlykv03a9bMGGNMly5dkqybL18+ExoaaqZMmWKZt2bNmiRfoypUqJA5d+6c+eKLL0y/fv3MW2+9ZQ4fPmyio6NN7dq1kx3znTt3mmPHjpm3337bvPXWW+by5csmMDDQODo6WpatWbOmCQoKMleuXDEfffSRefXVV82ECRPM3r17LcsULVrUBAYGmoCAADNy5EjTr18/s2jRImOMMUOGDEn12Lm5uZkePXqYQ4cOmcDAQNOjRw/To0cPU7RoUUvGAwcOmBMnTph33nnHDBkyxJQpU8a0bdvWxMTEmCNHjpi33nrLchyvXbuW5Kttie+XXbt2mTlz5pj+/fubJUuWGGOMGTp0qDl8+LD55ptvTP/+/c2GDRuMMcY0b9483e/1du3amV27dpnLly9bnsOTTz6ZZa+Jn5+fiYiIMPv37zczZsww/fr1M/PnzzfGGNO/f3/Lco6OjiY8PNx88cUXyTInfhXw8ccft7wWx48fNwcOHEj2lb+SJUsaY4wZOHDgPY9FYGCg+frrr82AAQPM0KFDzdatW40xxnTq1MmyTPXq1U1UVJT577//zODBg03fvn3NZ599ZtauXXvXbffo0cNERkaadevWWY5z4rmZ+Frv3LnTLFiwwPTv399MmzbNGGPMhAkT0n0epjaldT8Zua5l9H2a2JZh7969Zs+ePWbo0KHm448/NhEREebIkSPG1dXVsmzr1q1NVFSU2bRpk3njjTfMkCFDzJ49e0xUVJRp2LBhskwHDhwwf/zxh+nfv7957bXXUj0uRYsWNRcuXDDBwcFm3LhxZujQoWb37t0mLi7OPPXUU0aSKV++vOnRo4cxxpjly5dbXsPUrg39+vUzxhizcOFCy7I1a9a0vIdu3LhhDhw4YN5++20zYMAAs3btWhMfH2/ZX+J1c8+ePebKlStm/Pjxpm/fvmbWrFkmPj7eTJw4MU37Suv5ltp053U68fXauXOn2b59uxkyZIgZNWqUCQsLM1u3bk12bYmKijL+/v5m9OjRpl+/fmbSpElmxYoVSa4HkZGR5vjx48bPz8/07dvXvPDCC0aSmTZtmomJiTFTp041ffv2NZ988okJDQ0127ZtS3JN+f33381vv/1mhg0bZvr162fmzp1rjDHms88+syzj5ORkTp48ac6ePWvef/9906dPH/PBBx+Ybdu2mbJly1rl/OrcubPZvXu3GTNmjHnllVfM+PHjzbVr14y/v7/Jly+fZbnE3+U7d+40q1atMgMHDjSff/65iY2NNb/99luSbX744YfGGGP++usvM2DAADNjxgxz9uxZc/ny5TS1ZcjKa9rQoUNNXFyc8fDwsMy7du2aiYuLS3Lshw0blmS5tLyv7zZNmDDBGGMsn6OmTp1qAgMDkx0Ta5w/KU3u7u5m3759JjY21kydOtX069fPjBgxwmzbts3yezGla2haf/f//PPPJioqynzxxRemT58+5u233zaLFy82zz//fJZeC8uXL28mTZpkjDFm/PjxST7T3L6tFStWmIEDB5rJkyeb2NjYZOdjSpM12zLc7XNuWj4n3+u6c+dUs2ZNM2fOHGPMzc+EicfFzc3NSDLbtm0zM2fONEOGDDEDBw40y5YtM8YYM2DAgCTb8ff3N4cPHzYXLlww48ePNwMGDDA7duww8fHxpnr16hm6Ptw5NW7c2CxfvtwYYyw5E39Ppedz2ptvvmnWrVtnRo4caV555RUzceJEEx4enuQaf6/jktLk5+eXpAVYu3btjDHGrFy50rz22mvmtddeM5MnTzZz585N13ti//79tGVgYsq5k80DMDEx3edTu3btTGxsrImNjTWbNm0yEyZMMA8//HCyD7AZKYIsWrQoyXJff/21Mcbc9T8Tjo6O5uLFi2bfvn3GxcXFMr9Tp07GGGPGjBljmZeeD9G///67iYiIMGXKlLHMq1atmomNjTXG/K+4W7ZsWRMbG2uGDx+eZP0HH3zQxMTEJJl/5swZM3/+/CTLdenSxRhjTLNmzSzz7iwa2NvbJ+vt6OXlZS5cuGBmzJiR7JhfuXLFeHt7W+Y//vjjxhhjHn30Ucu8tWvXmuDg4CTP785p+vTp5ty5c6ZgwYJJ5v/yyy/mxo0bSYpLKU1r1qwx+/fvT/F9ERQUZAoXLpzksV27dpmLFy+aAgUKWObVrFnTxMXFmVmzZiV7v3z//fdJjlFgYKCJj48377zzTpLjFB4enuEejKn13M2K18TPz8/yn7Lbt5tYLEr8uUKFCsaYlIuydnZ2Zv369ebChQumYMGCZsqUKSYmJibV93xUVJT55ptv7nkc7nytHR0dzb59+8yqVass84YMGWKMyVh/3Hv13L39mEoyCxcuNFeuXMnQeZjSlNb9ZOS6ltH3aWKx8MyZMyZ//vyW+YnXjMGDB1vmHT161CxdujTZa3by5EmzfPnyZJnmzJmTptfl//7v/4wxxjRt2tQyz93d3Zw8edKcOnXK2NnZJXn+t/+RKrXpbn08V65cafbu3ZvsDxEbN240R48etfw8YsQIExoaaipVqpRkuY8//tjExsaa0qVL33NfaT3fUptSK+4ePHgwybVh8ODBxhhj+YOovb29OXnypPH3979rUTQx38cff5xkftOmTY0xxnTv3j3J/Pbt2yebn9I1+rvvvjNhYWGWY1y7dm1jzN17O2f2/EopR6NGjYwxJknhKPF39O1Fbknmyy+/NLGxscbT09NIN3uOR0VFmSVLliRZbvz48cYYk6brfVZe0+rXr2+MMaZjx45GuvnHYmOMmTt3rtmyZYtluUWLFpmdO3em+32d0lS0aFETExNjfv/99yTzR40aleyYWOP8SWkaM2aMMcYk+UPMnVNK19C0/u6/cePGPa8xWXUtTK3nbuJ7cdmyZUmuhwMGDDDGGNOrV6+7btfaPXdT2l56Piendt1Jbbpbb9mUzvulS5eaEydOJJnn7+9vjEn6Obhw4cImMjLSfP7558me272uD6lN9+q5m5bPaSk9p27duiXLn96eu3cWdydOnGiCgoKMvb19pt4PFHeZmHLuRFsGADa3atUqNWnSRH/++adq166td999VytWrNC5c+dS/OpsenzzzTdJfp4yZYokJfkK8J0aNGigYsWK6dtvv1V0dLRl/j///KPDhw/r0UcfTXcOe3t7dejQQYsWLdKZM2cs848cOaLly5cnWfaZZ56Rvb295s2bp0KFClmmixcv6vjx42rdurVl2fnz56tTp05yd3e3zOvWrZvOnj17169GJyQkWPo72tnZqUCBAnJ0dNSOHTtUr169ZMvPnTs3Sb+1DRs2SJIqVKggSSpcuLBatmypmTNnJnl+d+rcubOWLFkiOzu7JM9t+fLl8vb2TnHfabVw4ULLVz4lqXjx4qpbt65mzZqlGzduWObv379fK1euTPE9MGPGDMu/ExIStGPHDtnb2+uHH36wzA8ODtbRo0ctz91arP2a3O77779P8vOGDRuSLJf49dbbj1MiY4x69eql/Pnza+nSpRowYIA++eSTZF8RTnTjxo17fp1RkqKioiz/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N9dHH32k4OBgHThwQM2bN7dck28v7lrrfX0v2bUfa5s/f742bNigp59+Wu3bt9fbb7+td999V88884yWLVuWZ66FtpbSdSe9KlSooNWrV+vIkSN68803debMGcXExKhTp0568803k5336Tnns+r6kJbtzps3T76+vvr888+1Z88ehYWFyd7eXsuXL0/X/2/u5cqVK6pTp446dOigRx55RI888oj69Omj2bNnq1evXlbbDwDbobgLIMfasWOHJFm+Lpf4l/Q77959t1EMlStX1unTpy0/V6pUSQ4ODknm3SkgIEDSzTus337n8sR5iY+nx5UrVxQREWEZBXLnNm938uRJ2dvby9/fP8URdneaN2+ehgwZIg8PD3Xr1k3+/v4pjoy7XZcuXXTy5Ek988wzSeaPHTs2Dc8mucSRpTVq1Eh1mStXrigkJEQODg5avXp1hvaTHre/jneqVq2a5TXJbqn9B8far0l6BAYGKiIiQuXLl0/x8X79+ql9+/Z6//33NXz4cE2dOlVPPfVUsuVKliwpFxeXe46079y5s6KiotShQwfFxMRY5vfu3TvZssYY/fvvv/r33381bNgwDR8+XB9//LFat2591/dRZv8jmd7zMKMycl3LrJSuQ5UqVbL8ceXkyZOSpJCQEKufqwEBAamek4mPp1dqr3XidSk2Nvaez+PkyZPKnz//PZfLiX8gTHy9atSokaHX6+TJk2rXrp02bdqU5CvCd2rVqpUKFy6sZ555JkkBMbXrxoEDB3TgwAF99NFHatKkiTZv3qz+/fvrgw8+yPT51aVLF82ePVtvvfWWZZ6Li0uy8yitEt93lStXTjLysnDhwmkadZ0d17QNGzbIxcVF3bt3V+nSpS2vwfr16y3F3aNHj+ry5cuWddL6vk5J4jGpVKlSks9MBQsWTHZMsur8OXny5F0/V6Qkvb/7L168qO+++07fffedihQpol27dmnEiBFatmxZll4LUzsWt+e//b3o5OSk8uXLa9WqVVbNkRFZ8Tk5UWrH5fHHH5erq6ueeOKJJO2/0toiKStk9veBt7e32rVrp1GjRiX5RlSlSpWsvi/p5u/Cv/76S3/99Zfs7Oz07bffqn///ho3bpzlvQ4g96LnLgCba9WqVYrzE/uiJX7tKzQ0VFeuXEnWu23AgAGpbnvgwIFJfh48eLAkaenSpamus2PHDl26dEn9+/dP8tX4jh07qnr16vr7779TfzKpSEhI0PLly/XUU0+pTJkylvnVqlVThw4dkiz7+++/Ky4uTqNHj05xW3f+p2ru3LlydXVVz5491bFjR82bN++eeRJHE9w+euChhx5SkyZN0vycbnf16lWtW7dOffr0SfL8bpeQkKCFCxeqc+fOevDBB5M9npY+relx8eJF7d69Wz179kzy1bYHH3xQ7du31z///GPV/aVVeHh4il+1s/Zrkh5xcXHasWOHGjRokOyxcuXK6fPPP9eCBQv0ySef6K233tKTTz6pF198Mdmy9evXlyRt3rz5rvuLj4+XMUYODg6WeT4+PskKximNJE4cPeXi4nLXfYSHh2e40COl/zzMqIxc1zLrpZdeUv78+S0/d+nSRSVLlrRcF3fu3KkTJ07orbfeSvbVVylz5+o///yjRo0aqXHjxpZ5bm5u6tu3r/z9/XXo0KF0bzOxUHPn633lyhWtWbNG/fr1U/HixZOtd/vzSBw9lThC/XZeXl6W92pq+7KlXbt26dSpUxo6dGiGvsY7b948OTo66oMPPkj2mIODg2WbKV2jnJyckr1XPTw8kpzb0s1+p/Hx8ZbzNrPnV3x8fLJRdYMHD5ajY8bGraxatUoxMTGWzwiJhg4dmqb1s+Oatm3bNsXExOjdd9/VtWvXLO1LNmzYoMaNG6tly5ZJiu5S2t/XKVm9erViY2P12muvJZk/aNCgZMtm1fmzcOFC1alTJ8U/JqYmrb/77e3tk/VpvXLlis6fP295LbLyWhgeHi4p+bFYtWqVoqOj9frrryeZ//LLL8vb2ztDn0GtLSs+JydK7bikdP3x9PRM8Q8o2SUxa0bbJ6T0nKSUrzupHZe0uvOaaoyx/EH3XtceALkDI3cB2NyUKVPk5uamP/74Q0eOHJGzs7N8fX0to1D9/Pwsy86YMUPDhw/X9OnTtWPHDrVo0UJVqlRJddvly5fX4sWLtWzZMjVp0kQvvvii5syZc9ev/8fFxendd9/VrFmztG7dOv36668qVqyYhgwZIn9/f02cODFDz3P06NHq2LGjNmzYoG+//VaOjo4aPHiwDh48qNq1a1uWO3XqlEaOHKkJEyaoXLlyWrRokUJDQ1W+fHk9/fTTmjZtmr788kvL8rt379bx48f10UcfydXV9Z4tGSTpr7/+UufOnfXHH3/o77//Vvny5dW/f38dOnQoSdEnPV5//XVt3LhRu3bt0rRp0+Tv769y5crp0UcfVd26dSVJ7733nlq3bq1t27Zp+vTpOnTokAoWLKh69eqpXbt2Vu9j+/bbb2vp0qXasmWLfvjhB+XLl0+DBw9WcHCwxowZY9V9pdXOnTv13HPP6csvv9T27dsVFhZmGUlh7dckPRYvXqyPPvpIHh4eSXrBzpw5U5GRkZb/4E+bNk2dO3fWV199pVWrVunChQuWZR9++GEFBARo9+7dd93X33//rWHDhmnZsmX65ZdfVLRoUQ0cOFAnTpxIci6MGjVKLVq00N9//62AgAAVLVpUAwYM0JkzZ+56w0Dp5nFu166d3njjDZ0/f17+/v7677//0nw80nseZkZ6r2uZdf36dW3cuFF+fn4qVqyYhg4dquPHj2v69OmSbv6n75VXXtHSpUt18OBB+fn56dy5cypVqpRat26tkJAQPfHEExna94QJE9S9e3ctXbpUkydP1vXr19WzZ0+VL19enTt3ztDopKioKB08eFDdunXTsWPHdP36dR04cEAHDx7UwIEDtXHjRu3fv1/Tp0/XqVOnVKxYMTVp0kSlS5dWnTp1JN1s3fDEE0/or7/+0qxZs7Rz5065u7urZs2a6tKli8qVK6dr167ddV+2YozRa6+9piVLlmjPnj3y8/PThQsXVK1aNT344IPq2LHjXddfv369vv/+e73//vuqU6eOVqxYodjYWFWuXFnPPvushgwZooULF2rz5s26fv26Zs+ercmTJ8sYoxdffDFZYaJNmzb6+uuvNX/+fB07dkyOjo568cUXFR8fb+mfmtnz66+//tKLL76o4OBgHTp0SE2aNFG7du3u2RImNVevXtUXX3yh999/X3/99Zf++ecf1a1bV4888kiqvYhvlx3XtMjISO3cudNyA9pE69evV/78+ZU/f/5kxd20vq9TcvnyZX311Vd66623LJ+jateubTkmt5+rWXX+fP755+rSpYvmz5+vmTNnaufOnSpYsKCeeOIJ9e/fP9XPcmn53e/h4aGzZ89qwYIF2rt3r8LCwtSuXTs99NBDevPNNyVl7bVwz549ls+bXl5eio6O1r///qsrV67ok08+0ZgxY7Rs2TL9+eefqlq1qgYMGKD//vtPP//8c5q236dPnxTP/a+++kphYWFas2aNWrVqlaHWA1n1OVmS5WatH330kX777TfFxsZqyZIlWrFihaKjo7VkyRJNnTpV+fPn16uvvqrLly9bboyZ3RKzTp48WcuXL1d8fHyaPoMnCg0N1bp16/TOO+/IyclJ586dU/v27VP8NkRqxyWt30CbMWOGChYsqH///Vdnz56Vj4+PBg8erN27d9/z21bNmze3/AG6SJEicnd314gRIyTdvP7ced0BYDuGiYmJyZZThw4dzIwZM8yhQ4dMSEiIiYqKMseOHTNfffWVKVKkSJJlXV1dzfTp082NGzdMcHCw+e2330zhwoWNMcaMHj3astzo0aONMcZUq1bNzJs3zwQHB5tr166ZyZMnGxcXlzTlevbZZ83OnTtNZGSkuXr1qvnpp59MyZIlkyzTs2dPY4wx9evXT9M2mzdvbrZv326ioqLMiRMnTN++fS1Z71z26aefNuvXrzehoaEmNDTUHDp0yEyZMsVUrlw52bLjxo0zxhhz7NixFPe7Zs0as2bNmiTz3nvvPePv728iIyPNzp07TadOnYyfn5/x9/e3LOPj42OMMWbYsGHJtnnnMZdkqlevbhYuXGiuX79uIiIizOHDh83YsWOTLFOkSBEzZcoUExAQYKKjo8358+fNypUrzSuvvHLP47dmzRqzf//+JPPullGSadOmjdmwYYMJDw83QUFBZvHixaZatWpJlkl8DQoVKpRkvp+fnwkNDU1TjrRObm5u5ueffzbXr183xpgkx9var0lq+VN6zxUpUsTExMSYHj16WOYNHjzYGGPM008/nWTZ0qVLm6CgIPPXX39Z5tnZ2Zlz586ZDz/8ME3HoXfv3ubo0aMmMjLSHDp0yPTs2TNZrtatW5s//vjDnD171kRFRZmzZ8+aOXPmmEqVKt1z+1WqVDFr16414eHhxhhj/Pz87vpaJ57LPj4+GT4P0/KeSmk/6b2uZfR92rJlS2OMMd26dTMfffSRuXjxogkPDzdLliwxZcqUSbZ+7dq1zYIFC8yVK1dMZGSk8ff3N7/99ptp3br1PTPdbSpfvryZN2+e5TqxdetW06lTpxTfz1OmTEnTNhs3bmy5tt553MqXL29mzZplzp8/b6Kjo82ZM2fMn3/+aZ555pkk23B3dzcfffSROXbsmImKijKXL182GzduNG+++aZxdHS8577Sc76lNN15nU58vTp37pxkucRrQM+ePZPM9/X1NcuXLzfBwcEmNDTU7NmzxwwcOPCe75PE6ZVXXjHbt2834eHhJjg42Ozdu9dMmDDBFC9e3LJMkyZNzObNm014eLg5e/asmTBhgnn44YeNMca0bNnSSDLlypUzM2bMMMePHzcRERHm6tWrZvXq1aZNmzbJ9pnR88vLy8v88MMP5vLlyyYkJMQsXbrUVKlSxfj7+1vO9dvPtzt/Ryce28TM0s1r2AcffGDOnTtnwsPDzb///muqV6+ebJupTVl9TZNkPv30U2OMMW+//XaS+ceOHTPGGFO+fPlk66T1fZ3SZG9vb8aOHWvOnz9vwsPDzapVq0zVqlXNlStXzLfffmvV8ye1qUCBAmby5MnmzJkzJioqygQGBho/Pz9TsGDBu54P9/rd7+TkZD799FOze/duyzmze/du079//2QZsupa+PLLL5sTJ06Y2NjYZO/HAQMGmEOHDpno6Ghz4cIF88033xgvL697bjPxPZ+aUqVKGUlm+/bt5vz582neXkqfc9PyOfle152UphEjRpgzZ86YuLi4JL8vH3vsMbNnzx4TERFhTp06Zd5++23Tq1evZL9T/f39zZIlS5Jt985rbHquD6mdH1999ZW5dOmSiY+Pt5zr6fmcVrJkScvn5hs3bpi5c+ea4sWLp3hupHZcUpru/Oz4zDPPmGXLlpmLFy+aqKgoc/r0afPdd9+ZYsWK3fP1SHxvp+Re5y8TE1O2TjYPwMTExGT1KSMfspmY7vdpxowZZv369Rla98knnzTh4eFJCkFMTExMTHlr8vLyMsYY8/7779s8C1PGpvz585uYmBgzYMAAm2dhYmJiYrLORM9dAAAg6ebN2xo2bChfX990r/vuu+/q66+/1sWLF7MgGQAgu7m6uiabl9gPdO3atdkbBlbTokULnTt3ztKKBwCQ+9FzFwAASJLOnDmjfPnyZWjdjBSEAQA5V7du3dSrVy/9888/CgsLU7NmzfT8889r+fLl97xxJnKuf/75J8W+rgCA3IviLgAAAAAgiX379ikuLk7vvPOOPD09denSJU2aNEkjR460dTQAAHAbO93szwAAAAAAAAAAyEXouQsAAAAAAAAAuRDFXQAAAAAAAADIhei5ew8lS5ZUaGiorWMAAAAAAAAAuI94eHjo/Pnzd12G4u5dlCxZUufOnbN1DAAAAAAAAAD3oVKlSt21wEtx9y4SR+yWKlWK0bsAAAAAAAAAsoWHh4fOnTt3z5okxd00CA0NpbgLAAAAAAAAIEfhhmoAAAAAAAAAkAtR3AUAAAAAAACAXIjiLgAAAAAAAADkQvTcBQAAAAAAAJBt7Ozs5O3tLQ8PD9nZ2dk6TrYzxig0NFRBQUEyxmRqWxR3AQAAAAAAAGSLIkWK6NVXX1W1atVsHcXmjhw5ounTp+vKlSsZ3oadpMyVh/MwDw8PhYSEyNPTU6GhobaOAwAAAAAAAORajo6O+vbbbxUWFqZ58+bp8uXLio+Pt3WsbOfg4KCiRYuqa9euyp8/vwYMGKC4uLgky6S1LsnIXQAAAAAAAABZrkSJEnJ1ddUXX3yhY8eO2TqOTZ06dUrXr1/XyJEjVbx4cZ09ezZD2+GGagAAAAAAAACynL39zVJkdHS0jZPkDInHwcHBIcPboLgLAAAAAAAAALkQxV0AAAAAAAAAyIUo7gIAAAAAAABALkRxFwAAAAAAAADuonnz5vrzzz917tw5GWP05JNP2jqSJIq7AAAAAAAAAHBX7u7u2rt3rwYOHGjrKEk42joAcgYXRwf982IXlfX2Uq2vZyoyNs7WkQAAAAAAAHAfcM7nmu37jImMStfyy5Yt07Jly7IoTcZR3IUkKTouXrWLF5Wnq4vKennq6NXrto4EAAAAAACAPM45n6s++W9Ntu93+EOt013gzYloywCLwOAQSVJZL08bJwEAAAAAAABwL4zchUVAUIhqFCuist4UdwEAAAAAAJD1YiKjNPyh1jbZb15AcRcWAUE3R+6Wo7gLAAAAAACAbJJXCq22QFsGWFjaMlDcBQAAAAAAAHI8Ru7CIuBGsCR67gIAAAAAAAC3c3d3V6VKlSw/ly9fXrVr19b169d15swZm+WiuAuLgFsjd328vWycBAAAAAAAAMg5GjRooLVr11p+njhxoiRp1qxZ6t27t41SUdzFbQJv9dwt6ZFfTg72io1PsHEiAAAAAAAAwPbWrVsnOzs7W8dIhp67sLgcHqHI2FjZ29uptKeHreMAAAAAAAAAuAuKu0gicfSuDzdVAwAAAAAAAHI0irtIIrHvblkv+u4CAAAAAAAAORnFXSTByF0AAAAAAAAgd6C4iyQCbhV3y1LcBQAAAAAAAHI0irtIgpG7AAAAAAAAQO5AcRdJ/K/nLsVdAAAAAAAAICejuIskAoKCJUllvDxkb2dn4zQAAAAAAAAAUkNxF0lcCA1XbHy8nBwcVNIjv63jAAAAAAAAAEgFxV0kkWCMzgSHSuKmagAAAAAAAEBORnEXyQQk3lSNvrsAAAAAAABAEu+++66MMZo4caKto1DcRXKBt26q5lOA4i4AAAAAAACQqEGDBurXr5/27t1r6yiSJEdbB0DOE3hr5G5ZRu4CAAAAAAAgi7m5uWT7PiMiotO9jru7u+bMmaNXX31VI0eOzIJU6UdxF8kktmWg5y4AAAAAAACykpubi8LCF2T7fvO7d0l3gfebb77R33//rdWrV1PcRc4VEBQsSSrn7WXjJAAAAAAAAIDtdevWTfXq1VPDhg1tHSUJirtIJrHnbhkvDxsnAQAAAAAAQF4WERGt/O5dbLLftCpdurS++uorPfzww4qOTn87h6xEcRfJnA0JVUKCUT4nJxV1d9Pl8AhbRwIAAAAAAEAelZH+t9mpfv36KlasmHbt2mWZ5+joqBYtWmjQoEFycXFRQkKCTbJR3EUysfEJOhcaqjJenirr7UlxFwAAAAAAAPet1atXq0aNGknm+fn56ciRI/r0009tVtiVKO4iFYFBISrj5aly3l7ace6ireMAAAAAAAAANhEWFqaDBw8mmRceHq5r164lm5/d7G26d+RYiX13y3p72jgJAAAAAAAAgJQwchcpCgi6Vdz1orgLAAAAAAAA3K5169a2jiCJkbtIRWJx14eRuwAAAAAAAECORHEXKQqkuAsAAAAAAADkaBR3kSJLz13aMgAAAAAAAAA5EsVdpCixLYOnq4sK5HO1cRoAAAAAAAAAd6K4ixRFxcXpUli4JMmH0bsAAAAAAABAjpNri7vNmzfXn3/+qXPnzskYoyeffDLZMmPHjtX58+cVERGhlStXqlKlSjZImnsl9t0tS99dAAAAAAAAIMfJtcVdd3d37d27VwMHDkzx8XfeeUevv/66+vfvr0aNGik8PFzLly+Xi4tLNifNvQIo7gIAAAAAAAA5lqOtA2TUsmXLtGzZslQfHzp0qMaPH68///xTkvTSSy/p0qVLeuqppzR37tzsipmrBdy6qZoPxV0AAAAAAAAgx8m1I3fvpnz58ipRooRWrVplmRcSEqJt27apSZMmqa7n7OwsDw+PJNP9LLEtAz13AQAAAAAAgJwnTxZ3ixcvLkm6dOlSkvmXLl2yPJaS4cOHKyQkxDKdO3cuS3PmdAFBwZJoywAAAAAAAADkRHmyuJtRn3zyiTw9PS1TqVKlbB3Jpiwjd729bJwEAAAAAAAAsA17e3t9+OGHOnXqlCIiInTixAmNHDnS1rEk5eKeu3dz8eJFSVKxYsUs/078ec+ePamuFxMTo5iYmKyOl2sk9twt5JZP7s5OCo+JtXEiAAAAAAAAIHu9++67eu2119SzZ08dPHhQDRo0kJ+fn4KDgzVlyhSbZsuTxV1/f39duHBBbdu21d69eyVJHh4eatSokb777jsbp8s9QqNjdCMySgXyucrHy1OHrlyzdSQAAAAAAADkMa6u+bJ9n1FRkWle1tfXV4sXL9Y///wjSQoICFD37t310EMPZVW8NMu1xV13d3dVqlTJ8nP58uVVu3ZtXb9+XWfOnNGkSZM0cuRIHT9+XP7+/ho3bpzOnz+vRYsW2S50LhQQFHyzuOvtRXEXAAAAAAAAVuXqmk9Ll+zJ9v0+8nidNBd4N2/erL59+6py5co6fvy4atWqpWbNmunNN9/M4pT3lmuLuw0aNNDatWstP0+cOFGSNGvWLPXu3VufffaZ3N3dNW3aNHl7e2vjxo3q2LGjoqOjbZQ4dwoMClGdEsW4qRoAAAAAAADuSxMmTJCnp6eOHDmi+Ph4OTg4aMSIEfrll19sHS33FnfXrVsnOzu7uy4zevRojR49OpsS5U2JfXd9KO4CAAAAAADAyqKiIvXI43Vsst+06tq1q3r06KHnn39eBw8eVJ06dTRp0iSdP39eP/74YxamvLdcW9xF9ggIulncLetFcRcAAAAAAADWl55Cqy18/vnnmjBhgubOnStJOnDggHx8fDR8+HCbF3ftbbp35HiBQYzcBQAAAAAAwP3Lzc1NCQkJSebFx8fL3t72pVVG7uKuLCN3Ke4CAAAAAADgPrRkyRKNGDFCgYGBOnjwoOrWras333xTM2fOtHU0iru4u4CgYElSCY/8cnF0UHRcvI0TAQAAAAAAANln8ODBGjdunL799lsVLVpU58+f19SpU/Xhhx/aOhrFXdzd9cgohUXHKL+Ls8p6eer4tRu2jgQAAAAAAABkm7CwML3xxht64403bB0lGds3hkCOFxjMTdUAAAAAAACAnIbiLu6JvrsAAAAAAABAzkNxF/eUWNwtR3EXAAAAAAAAyDEo7uKeLG0ZKO4CAAAAAAAAOQbFXdxTYFCwJHruAgAAAAAAADkJxV3c0+lbbRl8vL1snAQAAAAAAABAIoq7uKfAW8XdUp755WjPWwYAAAAAAADICajU4Z4uhYcrOi5ODvb2KuWZ39ZxAAAAAAAAAIjiLtLAmP+N3qXvLgAAAAAAAJAzUNxFmgQE3yzulqPvLgAAAAAAAJAjUNxFmlhG7nozchcAAAAAAAD3l+bNm+vPP//UuXPnZIzRk08+mWyZatWqafHixQoKClJYWJj+++8/lSlTJktzUdxFmgQGU9wFAAAAAADA/cnd3V179+7VwIEDU3y8QoUK2rhxo44cOaJWrVqpVq1aGjdunKKiorI0l2OWbh15RsCNm8VdH4q7AAAAAAAAsCI3J6ds32dEbGy6ll+2bJmWLVuW6uMfffSR/vnnH7377ruWeadOncpwvrSiuIs0Sey5yw3VAAAAAAAAYC1uTk4KGjkk2/frPf6rdBd4U2NnZ6dHH31Un332mZYtW6a6devK399fn3zyiRYvXmyVfaSGtgxIE0vPXS9P2dnZOAwAAAAAAACQQxQtWlQeHh567733tGzZMrVv315//PGHfv/9d7Vo0SJL983IXaTJudBQxcUnyNnRQSXy59f50DBbRwIAAAAAAEAuFxEbK+/xX9lkv9Zib39z/OzixYs1adIkSdLevXvl6+ur/v37a/369Vbb150o7iJN4hOMzoaEqlwBL5X19qS4CwAAAAAAAKuwZqHVFq5evarY2FgdOnQoyfzDhw+rWbNmWbpv2jIgzQJv9d31oe8uAAAAAAAAIEmKjY3V9u3bVbVq1STzq1SpooCAgCzdNyN3kWYBiX13vSnuAgAAAAAA4P7h7u6uSpUqWX4uX768ateurevXr+vMmTP6/PPPNXfuXK1fv15r1qxRx44d9fjjj6tVq1ZZmoviLtIs8aZqPhR3AQAAAAAAcB9p0KCB1q5da/l54sSJkqRZs2apd+/eWrRokfr376/hw4dr8uTJOnr0qDp37qxNmzZlaS6Ku0izgOBgSVJZby8bJwEAAAAAAACyz7p162RnZ3fXZfz8/OTn55dNiW6i5y7SzDJyl567AAAAAAAAgM1R3EWaBdCWAQAAAAAAAMgxKO4izc4Eh0qS3JydVNgtn43TAAAAAAAAAPc3irtIs5j4eJ0PCZMklWX0LgAAAAAAAGBTFHeRLgFBN2+qVo6bqgEAAAAAACAdjDGSJEdHRxsnyRkSj0PicckIirtIl8Dgm313GbkLAAAAAACA9Lh27ZokqVq1ajZOkjMkHoerV69meBuUyZEugbduqlbWi+IuAAAAAAAA0i48PFxr165V165dJUlHjhxRXFycjVNlP0dHR1WrVk1du3bV2rVrFRERkfFtWTEX7gOnbxV3fRi5CwAAAAAAgHTy8/OTJHXr1s3GSWxv7dq1luORURR3kS6BFHcBAAAAAACQQcYYzZw5U7/99psKFy4sOzs7W0fKdsYYXb16NVMjdhNR3EW6WHru0pYBAAAAAAAAGRQREaHAwEBbx8j1uKEa0iXg1shd73yu8nJ1sXEaAAAAAAAA4P5FcRfpEhEbqyvhN4eM+zB6FwAAAAAAALAZirtIt8S+u2XpuwsAAAAAAADYDMVdpJul7y7FXQAAAAAAAMBmKO4i3U7fGrnr4+1l4yQAAAAAAADA/YviLtItMChYEj13AQAAAAAAAFuiuIt0o+cuAAAAAAAAYHsUd5FuAZa2DBR3AQAAAAAAAFuhuIt0C7h1Q7Ui7m5yc3KycRoAAAAAAADg/kRxF+kWHBWt4KhoSVJZLw8bpwEAAAAAAADuTxR3kSH03QUAAAAAAABsi+IuMiQgKFiS5OPtZeMkAAAAAAAAwP3JMa0Lnjp1SsaYdO9g0qRJmjJlSrrXQ86W2HeXm6oBAAAAAAAAtpHm4m6vXr0ytIPTp09naD3kbJa2DF4UdwEAAAAAAABbSHNxd/369VmZA7lMQBAjdwEAAAAAAABbSnNxN9mKjo4qXry43NzcdOXKFd24ccOauZDDBXBDNQAAAAAAAMCm0nVDtfz586t///5au3atQkJCdPr0aR0+fFhXrlzR6dOnNW3aNDVo0CCrsqabvb29PvzwQ506dUoRERE6ceKERo4caetYeULgrZ67JfLnl7ODg43TAAAAAAAAAPefNI/cfeONNzRixAidPHlSS5Ys0ccff6zz588rMjJSBQsWVI0aNdS8eXOtWLFC27Zt0+DBg3XixImszH5P7777rl577TX17NlTBw8eVIMGDeTn56fg4GBu8pZJV8IjFBETKzdnJ5Xx8tDJ60G2jgQAAAAAAADcV9Jc3G3YsKFatGihQ4cOJXvs5MmT2r59u/z8/NS/f3/17t1bzZs3t3lx19fXV4sXL9Y///wjSQoICFD37t310EMP2TRXXhEYHKJqRQqprJcnxV0AAAAAAAAgm6W5uPv888+nabmYmBhNnTo1w4GsafPmzerbt68qV66s48ePq1atWmrWrJnefPPNFJd3dnaWi4uL5WcPD4/siporBQTdKu7SdxcAAAAAAADIdhm+oVpuMGHCBHl6eurIkSOKj4+Xg4ODRowYoV9++SXF5YcPH64xY8Zkb8hcLLHvrg/FXQAAAAAAACDbpeuGaq1bt9bBgwdTHNHq6empAwcOqFmzZlYLl1ldu3ZVjx499Pzzz6tevXrq2bOn3nrrLb300kspLv/JJ5/I09PTMpUqVSqbE+cuAUHBkiQfby8bJwEAAAAAAADuP+kauTt06FBNnz5doaGhyR4LCQnR1KlT9eabb2rjxo1WC5gZn3/+uSZMmKC5c+dKkg4cOCAfHx8NHz5cP/74Y7LlY2JiFBMTk90xc63AoJsjd8t6MXIXAAAAAAAAyG7pGrlbu3ZtLVu2LNXHV6xYofr162c6lLW4ubkpISEhybz4+HjZ26fraSMVAYnFXdoyAAAAAAAAANkuXSN3ixUrptjY2FQfj4uLU5EiRTIdylqWLFmiESNGKDAwUAcPHlTdunX15ptvaubMmbaOlickFnfLeHrIwd5O8QnGxokAAAAAAACA+0e6irvnzp1TjRo1dPLkyRQfr1Wrli5cuGCVYNYwePBgjRs3Tt9++62KFi2q8+fPa+rUqfrwww9tHS1PuBAWppi4eDk7OqikR36dCU7ergMAAAAAAABA1khXf4J//vlH48aNk4uLS7LHXF1dNXbsWP31119WC5dZYWFheuONN1SuXDm5ubmpUqVK+uCDD+46+hhpZ4x0JuRmQZe+uwAAAAAAAED2StfI3fHjx+uZZ57RsWPH9PXXX+vo0aOSpGrVqmngwIFycHDQRx99lCVBkTMFBAWrYkFvlfP20qbAc7aOAwAAAAAAANw30lXcvXz5snx9ffXdd9/pk08+kZ2dnSTJGKPly5dr4MCBunz5cpYERc4UyE3VAAAAAAAAAJtIV3FXkgIDA/Xoo4/K29tblSpVkp2dnY4fP66goKAsiIecLjCY4i4AAAAAAABgC+ku7iYKCgrSjh07rJkFuVBA4shdeu4CAAAAAAAA2Spdxd0ffvghTcu9/PLLGQqD3CexuFuOkbsAAAAAAABAtkpXcbdXr14KCAjQ7t27Lf12cX9L7LlbxstTdnaSMTYOBAAAAAAAANwn0lXc/e6779S9e3eVL19efn5++vnnn3Xjxo2syoZc4GxIqOITEuTq5Kii7m66FBZh60gAAAAAAADAfcE+PQsPGjRIJUqU0GeffabHH39cZ86c0dy5c9W+ffusyoccLi4hQedCwiRJPt5eNk4DAAAAAAAA3D/SVdyVpJiYGP32229q3769qlevroMHD+rbb7/V6dOn5e7unhUZkcMFBt9szeDDTdUAAAAAAACAbJPu4u7tEhISZIyRnZ2dHBwcrJUJuUxi392y3FQNAAAAAAAAyDbpLu46Ozvrueee04oVK3Ts2DHVrFlTgwYNUtmyZRUeHp4VGZHDBQQFS6ItAwAAAAAAAJCd0nVDtW+++UbPPfeczpw5o5kzZ6p79+66du1aVmVDLhEQzMhdAAAAAAAAILulq7jbv39/BQYG6tSpU2rZsqVatmyZ4nKdO3e2SjjkDoltGei5CwAAAAAAAGSfdBV3f/zxRxljsioLcilLcZeRuwAAAAAAAEC2SVdxt3fv3lmVA7lYYHCoJCm/i7MK5nPV9cgoGycCAAAAAAAA8r4031CtTJky6dpwyZIl0x0GuVNUXJwuht68mR59dwEAAAAAAIDskebi7vbt2/X999+rQYMGqS7j6empV155Rfv376fv7n0mMJi+uwAAAAAAAEB2SnNbhurVq2vEiBFauXKloqKitHPnTp0/f15RUVEqUKCAqlevrgcffFC7du3SO++8o6VLl2ZlbuQwAUHBeqh0CfkU8LJ1FAAAAAAAAOC+kOaRu9evX9ewYcNUokQJDRo0SMePH1fhwoVVuXJlSdKcOXNUv359+fr6Uti9DyXeVK0sI3cBAAAAAACAbJGuG6pJUlRUlBYuXKiFCxdmRR7kUgGJbRnouQsAAAAAAABkizSP3AXuJuAGxV0AAAAAAAAgO6V75O7tHnnkkSQ/G2N09epVHTx4UJGRkZkKhtwl8YZqtGUAAAAAAAAAskemirvPPvtssnkFCxZUjRo11LdvX/3777+Z2TxykYCgYElSQbd88nBxVmh0jI0TAQAAAAAAAHlbpoq7ffr0SXF+qVKl9Pvvv6tRo0aZ2TxykbCYWF2PiFRBt3zy8fLUgctXbR0JAAAAAAAAyNOypOfuuXPn5OTklBWbRg4WEHSrNQN9dwEAAAAAAIAslyXF3caNGyskJCQrNo0czNJ3l+IuAAAAAAAAkOUy1Zbhv//+kzEmybyCBQvqxo0b6tmzZ6aCIfdJHLnrw03VAAAAAAAAgCyXqeJuly5dkvxsjNG1a9cUERGhrl276vDhw5kKh9wl8aZqPt5eNk4CAAAAAAAA5H2ZKu4GBgam+tjnn3+uefPmZWbzyGUC6bkLAAAAAAAAZJss6bkrSXZ2dlm1aeRQAYk9d2nLAAAAAAAAAGS5LCvu3tmLF3lfYs/d4h7ucnXM1KBwAAAAAAAAAPeQqQrc5cuXLUXcxJG6xhjZ2dnJ29s70+GQu9yIjFJodIw8XJxV1stDx67dsHUkAAAAAAAAIM/KVHG3aNGi1sqBPCIwKEQPFiusst6eFHcBAAAAAACALGS1tgwdO3bUoEGDJN0s+larVs1am0Yukth318fby8ZJAAAAAAAAgLzNKsXdzz//XM8995wGDhwoSUpISNCsWbOssWnkMgFBwZIkH29uqgYAAAAAAABkJavc9apt27aqV6+edu3aJUm6evWqXF1drbFp5DKBt26qVtaL4i4AAAAAAACQlawycjc2NlZ2dnaWm6sVKFBACQkJ1tg0chlLcZeRuwAAAAAAAECWskpxd/LkyZo7d64KFy6skSNHav369frss8+ssWnkMqdpywAAAAAAAABkC6u0ZZgzZ4527Nihtm3byt7eXl27dtXhw4etsWnkMoG3bqhW0iO/HO3tFccIbgAAAAAAACBLWKW4K0lHjx7V0aNHJUl2dnbq1q2b5s6da63NI5e4HB6hqNg4uTo5qrSnh2UkLwAAAAAAAADrylRbBg8PD7333nv6+uuv1bFjR9nZ2WngwIE6deqUnn/+eWtlRC5izP9G79KaAQAAAAAAAMg6mRq5+9NPPyk4OFibNm3Syy+/rJEjR8oYo86dO2vXrl3WyohcJiAoRFUKF+SmagAAAAAAAEAWylRxt2LFiqpZs6YkacaMGbp48aLKli2rqKgoq4RD7sTIXQAAAAAAACDrZaotQ0xMjOXfCQkJOnPmDIVdKDAosbjrZeMkAAAAAAAAQN6VqZG7tWrV0qVLlyTdvImat7e3Ll26JDs7OxljVKxYMauERO4ScOsmamW9GLkLAAAAAAAAZJVMFXednJyslQN5SMCtkbv03AUAAAAAAACyTrraMnh5eemDDz5QgQIFVKVKFbm5uVkeq1y5skqXLm31gMh9EnvulvXykL2dnY3TAAAAAAAAAHlTuoq7wcHBiouL0/z589WpUydFRESodOnS+uuvv3T48GGdPn1akydPzqqsyCXOh4YpNj5eTg4OKuHhbus4AAAAAAAAQJ6U7huqFS5cWA899JDCw8N14sQJHTlyRI888oj27t2rjz/+WA0aNNBjjz2WFVmRS8QnGJ0NCZNE310AAAAAAAAgq6SruOvs7Kzu3btr//79mjlzphYsWKBly5bppZdeUv369TVq1Cg9/fTTevTRR7MqL3KJwFt9d33ouwsAAAAAAABkiXTdUK1Dhw4qVqyYhg8frvj4eL333nvJlnF1dU3Sixf3p4CgYEll5OPtZesoAAAAAAAAQJ6UrpG71apVU2xsrH799VdJUqtWrSyPubi4qF+/flq9erUOHjxo1ZCZUbJkSf3000+6evWqIiIitG/fPtWvX9/WsfI8y03VGLkLAAAAAAAAZIl0FXevXbumiIgIxcTESJKee+45y2Pr1q3Tt99+q+joaE2bNs26KTPI29tbmzZtUmxsrB555BFVr15dw4YN040bN2wdLc8LuNWWgZ67AAAAAAAAQNZIV3F3wYIFio6O1ocffqhOnTqpVKlSkiR3d3c1bNhQY8aMUd26dRUUFJQVWdPt3Xff1ZkzZ9SnTx9t375dp0+f1sqVK3Xq1ClbR8vzEnvulmPkLgAAAAAAAJAl0lXcDQkJka+vr0qWLKkePXpo6NChkqTw8HDNnj1bS5YssYzqzQmeeOIJ7dixQ/PmzdOlS5e0a9cuvfLKK6ku7+zsLA8PjyQTMuZmz12pDCN3AQAAAAAAgCyRruKuJPn7++uVV15Rjx49dPLkScv8Pn365KjCriRVqFBBr732mo4fP64OHTrou+++0+TJk/XSSy+luPzw4cMVEhJimc6dO5fNifOOMyGhSkgwcnN2UhF3brAHAAAAAAAAWJudJGPrEFklOjpaO3bsUNOmTS3zvvrqKzVs2FC+vr7Jlnd2dpaLi4vlZw8PD507d06enp4KDQ3Nlsx5if+wfirl6SHfaT9rx7mLto4DAAAAAAAA5AoeHh4KCQm5Z10y3SN3c5MLFy7o0KFDSeYdPnxYZcuWTXH5mJgYhYaGJpmQcYk3VfOhNQMAAAAAAABgdXm6uLtp0yZVrVo1ybwqVaooICDARonuL4k3VSvLTdUAAAAAAAAAq8vTxd2JEyeqcePGGj58uCpWrKju3burb9+++uabb2wd7b4QGExxFwAAAAAAAMgqmS7uVq5cWQ4ODtbIYnU7duzQ008/re7du+vAgQP64IMPNHToUP3yyy+2jnZfOB0ULEkq5+1l4yQAAAAAAABA3uOY2Q0cPnxYDzzwgI4fP26NPFb3999/6++//7Z1jPuSpS0DPXcBAAAAAAAAq8v0yF07Oztr5EAeRM9dAAAAAAAAIOvk6Z67sK3A4FBJkperi7xdXWycBgAAAAAAAMhbKO4iy0TExupyWIQkyYfRuwAAAAAAAIBVUdxFlgoMpu8uAAAAAAAAkBUo7iJLJfbd9SngZeMkAAAAAAAAQN5CcRdZ6nRQsCRG7gIAAAAAAADWRnEXWSqxLQM9dwEAAAAAAADrynRx99NPP9W1a9eskQV5UGJbBkbuAgAAAAAAANblmNkNvP/++9bIgTwq4FZbBkbuAgAAAAAAANZFWwZkqYBbI3cLu7vJzcnJxmkAAAAAAACAvIPiLrJUSHSMgiKjJDF6FwAAAAAAALAmirvIctxUDQAAAAAAALC+DBd3HR0dVbp0aVWpUkUFChSwZibkMYmtGcpS3AUAAAAAAACsJl3F3fz586t///5au3atQkJCdPr0aR0+fFhXrlzR6dOnNW3aNDVo0CCrsiKXSizu+nhR3AUAAAAAAACsJc3F3TfeeEOnT59W7969tWrVKj311FOqU6eOqlSpoiZNmmjs2LFydHTUihUrtHTpUlWqVCkrcyMX+V9bBi8bJwEAAAAAAADyDse0LtiwYUO1aNFChw4dSvbYyZMntX37dvn5+al///7q3bu3mjdvrhMnTlg1LHKngBvBkmjLAAAAAAAAAFhTmou7zz//vOXf+fPnV1hYWIrLxcTEaOrUqZlPhjwj4NbI3bK0ZQAAAAAAAACsJkM3VNuwYYOKFStm7SzIowJv9dwt6ZlfLo4ONk4DAAAAAAAA5A0ZKu7u3r1b27ZtU9WqVZPMr127tv7++2+rBEPecTUiUuExsZKkMp4eNk4DAAAAAAAA5A0ZKu726dNHs2bN0saNG9W0aVNVrlxZc+fO1c6dOxUfH2/tjMgDEkfv0ncXAAAAAAAAsI4099y905gxYxQdHa2VK1fKwcFBq1evVpMmTbR9+3Zr5kMeERAcogeKFqK4CwAAAAAAAFhJhkbuFi1aVJMmTdLIkSN16NAhxcbGatasWRR2karAoGBJUjlvLxsnAQAAAAAAAPKGDBV3/f391aJFCz377LNq0KCBOnfurGnTpumtt96ydj7kEQGJbRm8GLkLAAAAAAAAWEOG2jL06dNHc+fOtfy8fPlytW7dWn/99ZfKlSunQYMGWS0g8gZ67gIAAAAAAADWlaGRu7cXdhPt3r1bvr6+atOmTaZDIe8JCL5Z3PWhLQMAAAAAAABgFWku7pYpU+aeywQEBMjX11eSVLJkyYynQp4TcKvnbimP/HKwt7NxGgAAAAAAACD3S3Nxd/v27fr+++/VoEGDVJfx9PRUly5dtH//fnXu3NkqAZE9XF3zqVPHLnpjyNgs2f7FsHBFx8XJ0cFepTw8smQfVQoV0ODG9bSoxzOa1Kmt7O0oIgMAAAAAACDvSnPP3erVq2vEiBFauXKloqKitHPnTp0/f15RUVEqUKCAqlevrgcffFC7du3SO++8o6VLl2ZlbliZvb29hr4+Wk5OzlqwcJbOnPW36vaNkc4Eh6pSoQLy8fZU4K02DZnh7uyk1uXLqn2l8upQubzKF0ja8uFKeIQ+Wrcl0/sBAAAAAAAAcqI0j9y9fv26hg0bphIlSmjQoEE6fvy4ChcurMqVK0uS5syZo/r168vX15fCbi4UERGuPXu3SZKa+rbNkn0EBCX23c34TdWqFymkN3wbaOlLz+riuwP1+/NPq/9DdVS+gJei4+K06uRpTdu+R5L0QStftalQ1hrRAQAAAAAAgBwnzSN3E0VFRWnhwoVauHBhVuSBDW3a/K8aNmgu3yZt9Nu8GVbffuJo3bLpKO56uDirTfmy6lC5vNpXKp9s3VPXg7T8hL+WH/fXWv8zioiNlSQ52turT/1a+rHzY2r4/WxdCA233hMBAAAAAAAAcoB0F3eRd23e+q+Gvj5aD1avKy+vAgoOvmHV7QfeGrlb1uvuxd1axYqofeXy6lCpvHzLlpSTg4PlscjYWK07fVYrbhV0j19LOePQf/5V/ZLFVbtEUf3c5TG1nz1P8QnGek8GAAAAAAAAsLEMF3fbtGmjtm3bqmjRorK3T9rd4eWXX850MGS/K1cu6tixA6pSpYaaNG6tZct/t+r2Ay1tGZL2xvVydVG7Cj6W0bklPfMnefz41etadquYu/70WUXFxd1zX1Fxceo+709t7feimpcro3Ftm+v9leut92QAAAAAAAAAG8tQcXfUqFEaNWqUduzYoQsXLsgYRkTmFZu2/KsqVWrIt3Ebqxd3TwcFS7rZc7dOiaLqeGt0bqPSJeXo8L8/EITHxGqtf6CWn/DXiuP+OnUjOEP7O3E9SH0XL9dv3Z7QW80e0ubAc/rr6EmrPBcAAAAAAADA1uwkpbsye/78eb3zzjv6+eefsyBSzuHh4aGQkBB5enoqNDTU1nGyRaWKD2j694sUGRmhp7o0VkxMtNW27ePtqeNv9E3xscOXr2nZrWLuxsCzio6Lt9p+v3yktQY3rq8bkVFq9P1PliIzAAAAAAAAkBOltS6ZoZG7zs7O2rx5c4bDIec6cfKwLl0+r2JFS6pe3Sbaum2t1bZ9NiRUF0PDVdzDXaHRMVpzKuBWQfe05WZrWeG9Fev0UKkSalSmpH7p+rha/fCrYuKtVzwGAAAAAAAAbMH+3oskN2PGDD3//PPWzoIcYvOWfyVJTZu0sep24xOMWsz4Ra1++FXFP/1aXX5brBk79mVpYVeSYuMT9Pz8JboWEakGpYrrsw6tsnR/AAAAAAAAQHZI88jdL7/80vJve3t79e3bV+3atdO+ffsUGxubZNlhw4ZZLyGy3eYt/+rpJ19Qk8atZWdnZ9WeyqeDgm3SFuFMcKh6LfxHS17srAGN6mpTwFnNP3g023MAAAAAAAAA1pLm4m7dunWT/Lxnzx5JUo0aNZLM5+Zqud+evf8pPDxMhQoVVbWqNXX4yD5bR7KK5Sf8NWH9Vr3XorG+f7KD9l68rGPXbtg6FgAAAAAAAJAhaS7utmlj3a/oI+eKi4vVf9vXq3WrTvJt0ibPFHclaeyaTWpSppRali+j37o9oabT5ygyNs7WsQAAAAAAAIB0y1DPXeR9mzavliT5Wrnvrq3FJxi9uOAvXQwNV41iRTT50Xa2jgQAAAAAAABkSJpH7t6pTZs2atu2rYoWLSp7+6Q14pdffjnTwWBb27avV3x8nCqUr6oSxUvrwsWzto5kNRfDwvXCgr+0vOez6lm3hjYGnNXs3QdsHQsAAAAAAABIlwyN3B01apRWrFihtm3bqnDhwipQoECSCblfWFiI9u7bIUnybdLWxmmsb/3pMxrz7yZJ0uRH26pWsSI2TgQAAAAAAACkT4ZG7vbv31+9evXSzz//bO08yEE2b1mtenUbq6lvWy38Y7at41jdZxu3ybdsKT1SpYJ+7fq4Gk/7WaHRMbaOBQAAAAAAAKRJhkbuOjs7a/PmzdbOghxm85Z/JUm1ataXh4eXjdNYnzFS79//UWBQiCoXLqipT3SwdSQAAAAAAAAgzTJU3J0xY4aef/55a2dBDnPh4lmd8j8qBwdHNWrYwtZxssT1yCg9P3+JYuLi1aVGVQ1oVNfWkQAAAAAAAIA0yVBbBldXV/Xt21ft2rXTvn37FBsbm+TxYcOGWSUcbG/T5n9VoXxVNfVtq1X/LrF1nCzx39kLem/lOv3fI230WftW2n72grafu2jrWAAAAAAAAMBdZWjkbq1atbRnzx4lJCSoRo0aqlu3rmWqU6eOlSPCljZvWS1JatiguZycnGycJut8vXWXfj94TM6ODvql6xMqmM/V1pEAAAAAAACAu8rQyN02bdpYOwdyqKPHDujqtcsqXKioatd6SDt2brJ1pCzTd/Ey1SxeRJULFdDMZzrp6V9+lzG2TgUAAAAAAACkLEMjd3H/MMZoy60bqzX1bWvjNFkrJDpGz8/7U1GxcepUpYLeavqQrSMBAAAAAAAAqcpUcfeBBx5Qhw4d9PjjjyeZkLdsvlXc9W2c90ds7714RUP+udmK4sO2zdTcp7SNEwEAAAAAAAApy1BbhvLly+uPP/5QzZo1ZYyRnZ2dpJujPCXJ0TFDm0UOtXP3FkVGRqho0RKqVPEBnTh52NaRspTfrv1q5lNaL9Z5UD8/+5ge+v5HXQqLsHUsAAAAAAAAIIkMjdz96quv5O/vr6JFiyoiIkIPPvigWrRooR07dqhVq1ZWjghbi42N0fadGyXl/dYMiQb/tUoHL11VCY/8+rHzY7K/9QcMAAAAAAAAIKfIUHG3SZMmGjVqlK5du6aEhAQlJCRo06ZNGj58uCZPnmztjFbx7rvvyhijiRMn2jpKrmRpzdAk77dmkKSI2Fh1n/enwqJj1LpCWY1u7WvrSAAAAAAAAEASGSruOjg4KDQ0VJJ09epVlSxZUpIUEBCgqlWrWi+dlTRo0ED9+vXT3r17bR0l19q6ba3i4+NVpfKDKlqkhK3jZIsjV6/rtT9XSJKGt2yiDpXK2zgR8ro2FcrK08XZ1jEAAAAAAEAukaHi7oEDB1S7dm1J0rZt2/TOO+/I19dXo0aN0qlTp6waMLPc3d01Z84cvfrqq7px44at4+RawcE3dPDQbkmSb5PWNk6TfeYeOKLv/9sjSfJ75hGV9vSwbSDkWa83qa9lPbtq5tOP2DoKAAAAAADIJTJU3B0/frzs7W+uOmrUKJUvX14bNmxQp06d9Prrr1s1YGZ98803+vvvv7V69ep7Luvs7CwPD48kE/7nfmvNkOitZWu089xFFXZ30y9dH5eTQ4ZOGyBVBfK5akTLJpKkJx6orMqFCtg4EQAAAAAAyA0yVKU6fPiwFi1aJEk6efKkHnjgARUuXFhFixbViRMnrJkvU7p166Z69epp+PDhaVp++PDhCgkJsUznzp3L4oS5y6bNNwvkdWo3krtbfhunyT4x8fHqPm+JgiKj1LhMSX38cAtbR0IeM7xFYxXI52r5eUCjujZMAwAAAAAAcosMFXf9/f1VuHDhJPNu3LihggULyt/f3yrBMqt06dL66quv1KNHD0VHR6dpnU8++USenp6WqVSpUlmcMnc5e+60AgNPycnJWQ0bNLd1nGx1OihYL/+xVJI0pEkDPfVAZRsnQl5RvoCXBjx0s5j75cb/JEkv1alB710AAAAAAHBPGSru2tnZpTg/f/78ioqKylQga6lfv76KFSumXbt2KTY2VrGxsWrVqpVef/11xcbGWtpK3C4mJkahoaFJJiS1acvN0bv3W2sGSVpy9KS+3LRdkjT9qY6qWNDbtoGQJ4xr21zOjg5aeeK0hq9cr4OXrsrDxVm96tW0dTQAAAAAAJDDOaZn4S+//FKSZIzRhx9+qIiICMtjDg4OatSokfbs2WPVgBm1evVq1ahRI8k8Pz8/HTlyRJ9++qkSEhJslCx327zlX3Xv9qoaN2opBwdHxcfH2TpStvpg1QY1Kl1CzXxK68DgPgqJjlFIdIxCo6Pv+u/gqGiFRsco5NbPt/87LCZGxtj6mcEWGpQqrq41qykhwWj4inWSpK+37dJ3T7TXgIfq6uutu5TAmwMAAAAAAKQiXcXdunVvfnXYzs5ONWvWVExMjOWxmJgY7d27V1988YV1E2ZQWFiYDh48mGReeHi4rl27lmw+0u7Q4T26ceOaChQopJo16mvP3m22jpSt4hIS9ML8v7SiV1dVKVxQBfK5JumVmlEhUcmLvqHRMVp8+Lh+3X/YCsmRE33avqUk6ae9B7Xv0hVJ0i/7Dml8u+aqUNBbj1apoCVHT9oyIgAAAAAAyMHSVdxt0+bmV/FnzpypIUOG0LbgPpSQkKCt29bqkY6d5dukzX1X3JWk86Fhqv2Nn4q4ucnTxVkeLi7ydHG+NbnIw9VZXrfmeSTOu/3xW//2cnWRk4ODJMnT1UWeri7J9vV4tYracf6ijl+7kd1PE1nsiWqV1LxcGUXExGrMvxst8yNj4zRz5z693byRBjWuT3EXAAAAAACkyk4S3/lNhYeHh0JCQuTp6Ukh+zZNfdtq/Nhvdf7CGfV4qZ2t4+RqLo4O8ryjEJxYKH65fi01L1dGvx88pufm/WnrqLAiR3t77RnYS1UKF9SE9Vs1avXGJI+X9vTQsaGvytHBXvW/naX9l67aKCkAAAAAALCFtNYlM3RDNdzfdu7arOjoKJUsUUblylW2dZxcLTouXlfCI3TyepD2XLis9afP6K+jJ/XLvsN6/e/Vik9I0DMPVlGj0iVsHRVW9HL9WqpSuKAuh0Xo843/JXv8bEioFh0+Lkka2KhedscDAAAAAAC5RJqLu6dOndLJkyfTPQ0ePDgr88MGoqIitXPXZkk3R/Eiaxy8fFWzdx+QJE241ZsVuZ+Hi7M+aOUrSRq/brNCo2NSXG7K1p2SpO61HlAht3zZlg8AAAAAAOQeae6526tXrwzt4PTp0xlaDznb5i3/yrdJGzVt3EZzfvne1nHyrA/XbNZzNR9QU5/SeqJaJf155IStIyGT3mraUEXzu+nY1euasWNfqsttOXNeO89dVP1SxfVK/Vr6dMP9198aAAAAAADcXZqLu+vXr8/KHMhlNm9dI0l64IHaKliwiK5fv2LjRHnT+dAwfbVlh4a3bKKPH26hf46dUlxCgq1jIYNKeuTXkCYNJEkjVq6/52v59dZd8uvcSf0a1tGXm7bz2gMAAAAAgCQy3HO3T58+2r9/v6KiohQVFaX9+/fr5ZdftmY25GA3blzVocN7JEm+jVvbNkwe98Wm7boSHqEqhQuqd72ato6DTBjTpqncnJ20KeCsFqdhFPb8g0d1MTRcpb089Ex1+lsDAAAAAICkMlTcHTt2rL766istWbJEzz77rJ599lktWbJEEydO1NixY62dETnU5i3/SpJ8m7SxcZK8LTQ6RuPXbpEkjWrtq/zOTjZOhIyoWaywXqpTQ5L07op1aVonJj5e03bskSQNalw/q6IBAAAAAIBcyk6SSe9Kly9f1uuvv67ffvstyfznnntOU6ZMUZEiRe65jREjRig2Nlb79u3Tvn37dP78+fTGyHIeHh4KCQmRp6enQkNDbR0nxynnU0l+M/5WTEy0nuzcSFFRkbaOlGc5Odhrz8DeqlyogMat2axxazfbOhLSackLndWhcnktOHBUz89fkub1irq76eSbfeXi6CjfaT9rx7mLWZgSAAAAAADkBGmtS2Zo5K6Tk5N27NiRbP7OnTvl6Jh6G9/XX3/d8u+PPvpI8+fPl7Ozs15++WV9/z035cptTgec0LnzgXJ2dlGD+k1tHSdPi41P0KhVGyRJb/g2ULH8bjZOhPRoV9FHHSqXV0xcvEauSl//8svhEZp34KgkaXDjelkRDwAAAAAA5FIZKu7+9NNPeu2115LN79u3r+bMmZPqejVr1tT3338ve/ubu3V1ddVzzz2ncePGqX///hmJAhujNUP2WXjomP47e0H5XZw1spWvreMgjezt7DShfUtJ0nfbd+vUjeB0b2PK1p2SpC4PVlUJD3er5gMAAAAAALlXhm+o9vLLL2v//v2aPn26pk+frn379unVV19VQkKCvvzyS8t0u1dffVVHjhzRsmXLNH/+fP34449asGBBpp8EbGfT5tWSpCaNWluK9sg6793q1fpyvVqqWrigjdMgLXrUrq5axYsqKDJKn6zbmqFt7LlwWRsDzsrJwUH9GtaxbkAAAAAAAJBrpd5D4S5q1KihXbt2SZIqVqwoSbp69aquXr2qGjVqWJYzJmk73wYNGqh58+YqUKCAKlSooDZt2igwMDCj2ZED7D+wUyEhQfL2LqjqD9TVgYM7bR0pT9sYcFZLjpzQ49UqaXy75nr2t8W2joS7yOfkqLFtmkmSJmzYpuuRURne1tdbd6mZT2m9Ur+2Plm/VdFx8daKCQAAAAAAcqkMFXfbtMnYV/AnTpyoDz/8UCtXrlSDBg20aNEiDRo0SJs3c3Oo3CohIV5b/1un9u2eVNMmbSjuZoMRK9erU5UKevKByvItW0qbA8/ZOhJS8Xrj+irt5aHTN4L1zbZdmdrW4iPHFRAUIh9vT3Wr8YB+3HPASikBAAAAAEBula3fo2/evLlWrlwpSdqxY4cee+wxffbZZ9kZAVmAvrvZ68jV65q5a78kWXq5Iucp4u6mt5s9JEkavXpjpkfaxicYff/fbknSoMZ1M50PAAAAAADkfhkaufvBBx/c9fFx48alaTvnz59X27ZtMxIBOcj2HRsUGxujsmUrqEzp8jpz1t/WkfK8cWs26/la1dW4TEk9/UBl/XH4uK0j4Q4jWjaRp6uLdp2/qN8OHLbKNmfu2q8PWvmqToliauZTWhsDzlpluwAAAAAAIHfK0Mjdp59+OsnUtWtXvfvuuxo2bJieeuqpFNcZOXKk5d+jR4+2/Pvtt9/OSATkIBER4dq9Z5skRu9ml4th4Zq4ebskafzDLeTIzexylMqFCujVBrUkSe8uX6c72o9n2I3IKM3Zd0iSNLhxPetsFAAAAAAA5FoZqgjVq1cvyVSzZk2VKFFCq1ev1sSJE1Nc5/HHH7f8+4knnkhxPnKvxNYMTX0ZiZ1d/m/Tdl0KC1flQgX0yq1CInKGj9o1l5ODg/4+elLrTp+x6ra/2Xqzd+8T1SrJx9vTqtsGAAAAAAC5i9WG+4WGhmr06NGptmSws7O757+Re23eerO4+2D1uvLyKmDjNPeHsJhYjVt782aEI1v6ysPF2caJIElNy5bSU9WrKD4hQe+vXG/17R+6ck2rTp6Wg729+j9E710AAAAAAO5nVv0ut5eXl7y8vFJ8zNz2veTU/o3c68qVizp27IDs7e3VuFErW8e5b8zcuV/Hrl5X0fxuGta0oa3jQP+7yd3MXft1+Mq1LNnH17dG7/apV1NuTk5Zsg8AuVPr8mXVq14NW8cAAAAAkE0ydEO1wYMHJ/nZzs5OJUqU0IsvvqilS5emvCNHRzk4OCg+Pt4yWtfJyUmOjhmKgBxo05Z/VaVKDTVt0lbLV/xh6zj3hbiEBI1YuV7zuz+loU0aaOr2PboQGm7rWPetLg9WVaMyJRUWHaMP12zKsv0sPX5Kx6/dUOVCBfRCneqatn1vlu0LQO7h7uykhd2fUn4XZ528FqQN3HQRAAAAyPMyNHL3jTfeSDK9/vrratWqlWbPnq1+/fqluM4vv/xiadmQOFp37Nix+vXXXzMYHTnNpi2rJUkN6jeVs7OLjdPcPxYfOaHNgefk5uykUa2b2jrOfcvZwUHj2jWXJP3f5u26FBaRZfsyRvp2283Ru4Ma1RPdbQBI0pPVKin/rRY9z9eubuM0AAAAALJDhoq7FSpUSDJVqlRJTZo00YgRIxQWFpbiOl9++aXs7Oy0Zs0alSlTRqtX3ywEfvHFFxlPjxzl5MkjunT5vPLlc1O9Oo1tHee+MnzFOklSr7o19ECRQjZOk73s7ezUuXoVVStc0KY5+jWsrYoFvXUhNEwTN+/I8v39uOegQqKiVa1IIbWrUC7L9wcg5+te638F3c7Vq8jF0cGGaQAAAABkhwwVd11dXZUvXz7Lz2XLltWQIUP08MMP33W9Cxcu6LHHHlOrVq30xBNP6P3338/I7pFF2ratrTFjns/UNjZvuXljtaa+ba0RCWm05cx5LTp0TA729vro1ujR+4Gjvb1+7Pyofu32hHYN6KVP2reUu3P296D1cnXR+y2bSJLGrtmk8JjYLN9naHSMZu0+IEka1Lhelu8PQM5WLL+b2lX0kSRdi4iUdz5XdapcwcapAAAAAGS1DBV3Fy9erJdeeknSzZuo/ffffxo2bJgWL16s/v37p7pezZo19eWXX+rIkSMKDw/XAw88oF9++SVjyWFVFSuW0PIVH2rU6O5q1KhqhrezafPNEdlNGre29FZG9hi5aoPi4hP0WLVKau5T2tZxspyro6PmP/ekutaspviEBDk62GtY04baO7C3nqhWKVuzvNe8kQq55dOhy1c1+1bBNTt8u22XEhKMHqlSQVUKFci2/QLIebrWqCYHe3ttPXNeM3fuk0RrBgAAAOB+kKHibr169bRhwwZJUpcuXXTx4kX5+PjopZde0uuvv57qeq+++qqOHDmiZcuWaf78+frxxx+1cOHCjCWHVZ08eUGzZ98cdTtx0isZLszu3bdd4eFhKlSoqKpWsc3duiuUr6pyPtlb3MsJjl27oRm3/kM/oX1LG6fJWvmdnbS4xzN6tGpFRcbG6qk5f+jJn3+X/41glfX21ILuT+mP55+Wj7dnlmcp6+WpgY1ujpwdvmK94hNMlu8z0akbwfrn2ElJ0oBGjN4F7mfP32rJ8Mu+Q/pl32FJ0iOVK6hAPldbxgIAAACQxTJU3HVzc1NoaKgkqX379vr9999ljNHWrVvl4+OT6noNGjRQ8+bNVaBAAdWtW1edO3emuJuDjHj/R4WGRqhx42rq3r1FhrYRFxer/7avl2Sb1gzPPPWipn33h2ZM/VMv9x4qBwfHbM9gS+PXblZYdIwali6hLg9mfAR2Tubt6qKlLz2r1hXKKiQqWo/+tFDLT/hr6fFTqvONnyas36qYuHg9WrWi9g7srbebPSQnhwxd6tLkw7bN5OrkqDWnArX0+Kks209qpmy9eWO1l+o8KC9XbmQI3I+qFi6o+qWKKzY+XgsOHNXBy1e198JlOTs6qPODVWwdDwAAAEAWylDF48SJE3rqqadUunRpdejQQStWrJAkFS1aVCEhIamuN3HiRH3//fdq2LChnnvuOS1atEi+vr4ZSw6ru3jxhj75eL4kacKnveTmlrFCUWJrBt8mbayW7V7s7e01eMAIDR44Ug4ODnJwcNALz7+mKZN+ValSqf/BIa+5HB6hLzdtlySNa9c8S4uatlDU3U2rendTozIldS0iUu1nz9PGgLOWxyNj4zRq9UY1+G621vmfkZuzkz56uIW2939JzbKgVUW9ksUsX3t+79ZN7bLbGv9AHbh0RfldnNWrrm1GywOwre61HpAkrThxWlcjIiXdHMEr/W9ELwAAAIC8KUOVnw8//FBffPGFTp8+rW3btmnr1q2Sbo7i3b17d6rrNW/eXCtXrpQk7dixQ4899pg+++yzjERAFpk4cbFOnbqo0qUL6513OmdoG9u2r1d8fJwqlK+qEsWzvvdrvnzuGj/2Wz3z9M0+0FNnfKEx44YoNDRYD1SrpenfLVKnR7pkeY6cYtKWHboQGqaKBb3Vt0FtW8exmjJeHvq3z3OqVbyoLoSGqZ3fXO06fynFZY9cva6HZ81V74X/6HJYhKoXLax/+zynGU91VGG3fCmukxGJ7S/m7D2o3RdSzpIdvt52c/TugEb1ZE+va+C+0z2xJcPeQ5Z5c/cfUUKCUTOf0irn7WWraAAAAACyWIaKuwsXLlTZsmXVoEEDdezY0TJ/9erVeuONN9K8nfPnz6tt2+z/6j5SFx0dq3fe9pMkvf3OMypTpki6txEWFqK9+3ZIknybZO3rW7hwMU2eOEdNGrdWdHSURn/4un6bO13r1i/Ty/2e0O4925Qvn5vefvMjjR09RZ4e3lmaJycIj4nVh2s2S5JGtGwiTxdnGyfKvEoFvfVvn+6qUrigTt8IVpuZv+ng5av3XG/OvkOq+fVMTdu+RwkJRi/VraEDg/uoT/2aymwNtFOVCmpVvqyiYuM0evWmzG0sk37dd1jXIiJVvoCXHqta0aZZAGSvJmVKqnwBL4VEReuvWz24Jel8aJjW+AdKkp6rVc1W8QAAAABksQx/Z/vSpUvas2ePjPnfzYO2b9+uo0ePpms70dHRGY2ALPL775u1bt0B5cvnogmf9szQNjZvyfrWDJUrVdd3Xy9QpYoP6PqNq3rjrRe1fsNyy+NXrlzUsHd66vtpnyk2NkYtmrXXD9OXqH69vN8KZNbu/Tpy5ZoKu7vp7WYP2TpOptQoWlj/9ukuH29PHbt6XW1m/qaT14PSvP6NyCgN+muVWvzwi/ZeuKyCbvn0/RMdtLZPd9Uqlv4/XkiSg72dPnn45qjdr7ftUmBw6u1oskNkbJx+uHUzvUGNubEacD9JbA3zx+HjioyNS/IYrRkAAACAvC9vNeSE1bwxdLoSEhLUvXtL+fo+kO71N235V5JUu1YDeXhY/+ugvk3a6Kv/m6PChYrq9OnjGjC4qw4f2ZdsOWOM5s7/QQNf76bAwFMqXKiovvjUTwP6vScnp9w/ojU18QlG76+8eWO715vUVynP/DZOlDENShXXqt7dVNzDXXsvXFbrmb/pbEhohrb139kLajztJw1b+q9Co2PUpGwpbe33oj7t0Er5nZ3Sta1edWvqgaKFdDU8Qp9u2JahPNb2/X97FBefoFbly6pmscK2jgMgGzg52OvZWzfPvL0lQ6JFh48rMjZW1YoUUt0SxbI7HgAAAIBsQHEXKdqz55Rm/nCzP/Kkr16VXTq/w37x4lmdPHVUDg6OatSwhVWzdX66p8aN+Ub58rlp+86NGjTkOV26dO6u6xw/cUh9BzytxX/+Ikl6tktvfTdlvsr5VLJqtpzkr6MnteH0GeVzctLo1k1tHSfdWpQro+U9u6qgWz5tCTynh2fN1ZXwiExtMz7BaMrWXao5ZaYWHjwqRwd7veHbQPsG9dHTD1RO0zbcnf93PD9ev1XBUTnj2wdnQ0L1x+FjkqRBjevbOA2A7NCxUnkVdMuncyGhWnf6TLLHQ6NjtOTIzVYNz9dO/x9qAQAAAOR8FHeRqpEjf1ZISIQaNKisl15Kf3uFzbdG71qrNYO9vYOGDB6lQQPel729vZb89ZuGj+in8IiwNK0fHR2lSVPG6v0P+uvGjWuqWLGapn77u55+8gWr5MuJht8avftSnRqqUTT3jObsWLm8lrzwjDxcnLX6ZIA6/bRAQVYsop4PDVP3eUv0+E8Ldep6kEp7eWjuc09qUY9n7nnjoTd9G6q4h7tOXLuhqdv3WC2TNUzZevPGat1rPmDVG8cBd/NktUr67on2alW+jK2j3HcSWzL8tv+IEm5rk3W7xNYM3Wo8IAd7brgIAAAA5DUUd5Gqy5eDNH7cb5Kkjz95Sfnzp69YlNh396GGLeTklL6vvd/Jzc1dH437Tk890UMJCQn6buqn+r+vRis+Pu7eK99hy9Y1ernfE9r233o5O7vo9UEfaMJH01WgQO4pfqbVf2cvaOHBo7K3t9P4h607gjqrdHmwqhZ2f0r5nJy05MgJPfXL7wqPic2SfS0/4a8638zSx+u2KCYuXp2qVNDeQb30bvNGcnJIfnksnt9dbzZtKEn6YNUGxcYnZEmujNp65rx2nLsoVydHvdKglq3jII9zdXTU14+10/zuT+nl+rW0olc37Xytp3rVqyFXR0dbx8vzvFxd9GiVmzdQ/DWFlgyJVpw4ravhESru4a425X2yKx4AAACAbEJxF3c1efISnThxXiVKFNR773VJ17pHjx3Q1WuX5e6eX7VrZfymXkWKFNfkib+q8UMtFRUVqTHjXte8BTMzvD1JunHjqt4b8aq++vpDxcREq9FDLTRz2hI1adw6U9vNiW4WIW8WLnP6yLqedWvopy6PysnBQb/uO6Ruc/9UdFx8lu4zKi5OY/7dpPrfzdaaU4HK5+Skce2aa+drPdWiXNLjNaq1r9ydnbT1zHktPHQsS3Nl1Ndbd0qS+jWsI0d7LvHIGlULF9SmV3uob8M6kqS/j55UeEysahYvomlPdtTJN/tqbJumKuHhbtugedjT1SvL1clRBy5d0b5LV1JdLi4hQfMO3LzZLa0ZAAAAgLyH//njrmJi4vTWsJuF1DeHPaVy5dJ+QxZjjLZksjVDlcoP6tsp81WxQlVdv35FQ4e9qA0bV2ZoWylZtHiO+g14RidPHpG3d0F9PO57DX19jFxcXK22D1s7cT1I03bslSR98nBLpbN9crYZ3Liepj/VUQ729pq+Y696/75UcQnZNzL26NXr6jB7nnou+FuXwsJVrUghrerdTTOffkRF3N1UvUgh9a5XU5L07vK12ZYrveYfPKoLoWEq5emhztWr2DoO8qAXaz+orf1eVM3iRXQpLFydfpyvp3/5Q+W//F7vLl+r0zeCVcTdTcNbNtGJN/pqdudOalCquK1j5znP17rZkuGXfYfvuWxia4anHqgi93TeQBIAAABAzkZxF/f055/btHr1Xrm6OuvTz3qla93M9N1t2qStJn35swoXKqpT/kc1YHBXHT22P93buZfTASf02uAultHATz7eXdO+/UOVK1W3+r5s5eN1WxUSFa36pYqr64PVbB0nmfdbNtaXj9x8j3y5absGLlmZav/IrPbr/sOqOWWmvv9vjxISjF6o86AODO6jn7o8Jgd7e/1x6Ji2nDlvk2xpERufoGnbbxbzBzWuZ+M0yEvcnZ30w9OP6IdnHpG7s5P+PRWght/9qFUnAyRJQVHRmrh5hx6YPEPdflusDafPyMnBQd1rVdfmvi9o3cvd9eyDVRlRbgVlvDzUqnxZSdJvaSju/nf2gk5cuyF3Zyc9UTXv3kgUAAAAuB/xPyykyRtDpys+Pl7PPttMLVrUSPN6O3dvUWRkhIoVLalKFdP+ddBnO/fSh2O+Vr58bvpv+wa9PvR5XbqcdQW12NhYfTf1U731bm9dvXZZZctW0DeT5+q5rq/IPg8UIq6ER+iLTf9Jkj5s11zODg42TvQ/n7RvqTFtmkmSxvy7UcNXrLNxoptFqtf/XqVmM+Zo9/lLKpDPVTWLF1FsfLxG3LpJXU42fcdeRcfFqVGZkmrIiElYQa1iRbS17wt6sc6Dik9I0Jh/N6rTjwt0MSw82bLxCUZ/HD6utn5z9dD3P+qnPQcVExevJmVLaU7Xx3V06Ct6u9lDKpgv73xDIrt1q3nz9+la/0CdDQlN0zq/3ioCd6+dd/5wCQAAAIDiLtLowIEATZ+2XJI0cVLaC56xsTHavnOjpLSN3rW3d9AbQ8ZqQP/hsre31+Ilv2r4yH4KjwjLePh02Llrs15+9XGt37hCTk7O6vfq2/ri01kqUiT3F8i+2rJT50JCVb6Al/o/VMfWcWRvZ6evH2unYbduUDZs6b/6eN1WG6dKase5i/Kd/rPe+Ge1Tt8I1ph/N+nE9SBbx7qny+ERmrv/iCRpcOP6Nk6D3K5vw9ra+GoPVS1SSOdCQvXwrHn6eN3WNI2u33Phsl7+Y6kqTpyqcWs261JYuMp4eeqjh1vo1Jv99M3jD6t6kULZ8Czylh6Wlgyp30jtTr/eWvbhij4q6u6WJbkAAAAAZD+Ku0izUaPmKCgoTHXrVlTv3u3SvN7mzaslSU192951OTc3d30yfqqeeOw5JSQk6NvvP9GkyWOUkJC1N9S6U0hokEaPHazPvxyhyMgI1a3TSD9M/VOtWjySrTmsLTI2TmPXbJIkvd+isbxdXWyWxdHeXn7PPKK+DesoIcGo7+JlmrJ1l83y3I2RvY55lNWSks20x7WEreOk2de3jmfnB6uopEd+G6dBbuTl6qJfuz6urx97WK5Ojvr76Ek1+O5HbQw4m+5tXQqL0Li1m1Xx/6bp5d+Xavf5S3JzdtKrDWprz6De+vvFLnqkcoUc2xM8J6lVrIgeLFZYUbFx+uPQ8TSvd+J6kLadOS8He3t1rZnz2vMAAAAAyBiKu0izq1dD9OHY3yRJ4z96QR4e+dK03tb/1ik+Pl5VKj+Y6gjYYkVLasqkX/VQw+aKjIzQqLGDNH/hLGtFz5B/li3Qq689pcNH9snDw0ujP5ikd9/+RG5uuffu7z/tOaiDl66qoFs+vdO8kU0yuDg6aG63J9S9VnXFxsfrxQV/adauAzbJcjf29vZq2/ox+c34W++/+5nq1W2sN14fo8KF035TQVvac/Gypedpv4a1bR0HuUyDUsX1X/+X1PnBqoqNj9fby9bomV//0LWIyExtNyY+Xj/tPahGU39Sm5m/6Y9DxxSfkKCHK5XT4hee0YFBffTaQ3W56dddJLZV+OfYKQVHRadr3cSbryXejA0AAABA7kdxF+nyzTd/6+jRsypWrIBGjuyWpnWCg2/o4KHdkqSmKbRmqFqlpr6dMk8VylfVtWuXNXTYC9p0a7SvrZ07F6DBQ7vrpznfKT4+Xh3bP6Pp3y9W9Qfq2DpahsQnGL1/q2fsoEb1VMbLI1v37+7spEXPP6PHq1VSZGysuvy6WPMPHs3WDPdiZ2en1q066YdpSzTy/S9Vtkx5BQff0Nlzp5Uvn5te7fOmrSOmWeLo3Vca1JaLY87ps4ycy85OGurbQOte7q7yBbx06nqQWv7wq77aslPWvsfhxoCz6jb3T1X7aob+b9N2BUVGqXLhgvrq0bbyf7OfPu3QSuW8vay701zO3s5Oz90adZuelgyJ5h84orj4BDUoVVxVCxe0djwAAAAANkBxF+kSGxunYW/+IEkaMvQJVayYtq+pJxZr7+y727zZw5r05U8qWLCITp46qgGDu+rY8YPWDZ1J8fFxmjlrkt5460VdvHhWJUuU0eSJc9Sjez9bR8uQpcdPaa1/oFydHC03MssOXq4u+ufFLmpb0Ueh0TF6/OfftfT4qWzb/73Y2dmpZYuO+mHqnxo1YqLK+VRSSEiQZsz8P3V/sa3Gf/yWJKn9w0+papWaNk6bNn8ePaGAoBAVcXfTczXTfkND3J8KueXT792f1mcdWsnJwUELDx5Vo6k/ace5i1m634CgEL23Yp3K/99Uvf73Kh27el3e+Vz1hm8DHR7ysuZ1e0LNfUpnaYbcomW5Mirl6aHrEZFadtw/3etfjYjU8hM31+tei2sCAAAAkBdQ3EW6/fPPDi1btlPOzk767PPeaVpn85Z/JUl1ajeytDXo2qWPxnwwWa6u+bTtv/V6/Y3uunzlQpblzqz9B3bqlX5PauWqP+Xg4KhX+rypPr2G2jpWhgxfcXP0bo9a1VW7eJEs318Rdzet6tVNTcqW0vWISHWYPU/rT5/J8v2mhZ2dnZo3e1jTv1+sMR98pfLlqyg0NFg/+E1S9xfbaM6vUxUZGa6jx/ZrxcpFkqSBrw23beg0ik8w+u6/m6PmBzeuZ+M0yMma+ZTW9v4v6dGqFRUVG6dBf61U93lL0v21/8wIj4nV9//tUc2vZ+qJnxdqxQl/Odjb66nqVbS6z3Pa3PcFlfbM3m8b5DTP32rJsODgUcXEZ6wffeKN1brTmgEAAADIE+wkWfmLlnmHh4eHQkJC5OnpqdDQUFvHyVEeeKCM9u6bIkdHB7VtM0Jr1uy75zqzf1iqsmUraPzHw1S7VkM9/thzkqRFf87RlG8+yvYbp2VG56d7atCA9yVJs3/6WrN+nGLjROn3c5fH1LVmNcXExSskOlphMbEKj4lVeGyswmJiFBETq7CYm/8Oj735WOIyqT0eftvP8Qk3Ly2lPT209KUuqlqkkC6GhqvTj/N14PJVGz/7m5r6tlWvlwarUsWbI9jCwkI0f+EsLfzjR4WHJz/nCxcuph9nLlO+fG4aO26o1q5fmt2R083b1UX+w/rL3dlJ7fzm5piiOnIGezs7vdu8kUa19pWDvb2OXb2u5+ct0b5LV2wdTZL0QJFCGtiorl6o/aDcnJ206/xFtfrhN0XFxdk6WrbL5+SoM2+9Jk9XF7X64VdtDjyX4e2cfXuAPFyc1XLGL9py5ryVkwIAAACwhrTWJSnu3gXF3bubPLmvBg1+XPv2+at+vaGKj0+46/J9X3lL3bu9qpiYaDk7uyghIUHffj9BC/+YnU2JravLMz018LWbBV6/2ZP148/f2DhR+pQv4KWt/V5UgXyuWbL9qNg4hcXEyMXRUR4uzgoICtEjs+fpxPWgLNlfejRp3Fq9XhykKlVqSJLCw8O08I/Zmr9wlsLCQu667ksvDFTvnq/r4sWzeqnPI4qNjcmOyJky5bF26tewjhYfPq5nf1ts6zjIIYrnd9eszp3UpoKPpJs3XHz971UKj4m1cbLkynl7aVPfHiri7qZf9h5Sr9//sXWkbPfsg1U1p+vj8r8RrGpfTc9UD+QZT3XUS3VraOr2PRr81yrrhQQAAABgNRR3rYDi7v+zd55hUZxdGL53l11670oTRFQ6imLD3nuLLYndqIkpX3rvPTFNjV1jrEkssfeCXSwUxQYiIL13WNj1+7HLAqKxAQs693XNNTPvtLOwZeZ5z/uc/8bCwphr1xdhYWHMrJnzWbRo93/u7+UZwG8/rwOguLiIL75+XWPX0FgZM3oqM2e8BcDS5XNZs26RliN6OPR0dLAxNMBIJsVAJsVIJsVQKsVIJtOsG8lkGMqkqklafb1if0N1m7FMho6kptvLtYws+q/6m4Rc7X6O2rcLZtLzL9PSQ+WZW1RUyKYtq/jrnxXk5+c+0Dl0dfVYtXw3Njb2LFn2I2vXL67LkGuFllYWRMyZglJ5m5a/LOVmzoO9VoEnl15uzqwYMQBbI0MK5WW8vH0/f4Y3LL/zOwl2cWT386PRkYh5a89hfj5xVtsh1Subxg1jUMvmfH3kJB8fPP5Y5+rezIk9k54hq6gYxx9+p+w+nbMCAgICAgICAgICAvWPIO7WAoK4e39eemkQv/72AunpubRwf4Hc3MJ77isWi1k4fyPGxqZ89MlLXI9++ErfDZFxY6YzY5qq2NaipT+wfsMSLUekXWQSSTXhV0+qw6W0DK2KB4FtOzPp+Tm0buUHQHFxIZu2rOavf1aQl5f90Ofr1XMI77/zPUVFhTw7qQ/Z2Q3DZuK/2P7cSPo0b8ZPJ87y9p7D2g5HQEvoiMV80qMTb3VpD0BEShoT/t7O1YwsLUf2YMxu78/PA3qiUCoZsnoT+2JuajukesHSQJ/4N2YilUjw+W05Vx7z/yUWiYj53wyamhgzcu1mtl2NqaVIBQQEBAQEBAQEBARqiwfVJYWCagKPxcKFu4iKisfa2pSPPhr7n/sqlUpemD2CCc/3fmKEXYB1G5awdMVPALww7Q1Gj3qwInNPKnKFguziEhJy87mSkUVYcprWhN02AR357ed1fPf1Mlq38qO4uIj1G5Yy7rmeLF0+95GEXYADB7dx+XI4BgaGTJ38au0GXUfMO3UegMn+XhjKpFqORkAbOJoas3/yGI2wuyg0jM5L1jYaYRdgwekLrDgfiUQsZvXoQbhZmGk7pHphlKcHUomEc4kpjy3sAihv32Z95BWgskibgICAgICAgICAgEDjRBB3BR6L8nIF/3ttKQAvzRlEixZN/3P/27dvN6rCaQ/KmrULWfHHrwDMfuEdRo2YqOWInm78/YL4Ze4afvh2BV6eAZSWlvDXP8uZ8HwvFi39ntzcRxN1K7h9+zbzF34NQP++IzUF2Roye6JjuZaRhZm+HrPb+Ws7HIF6ZpCHG6Ezn6ejU1NyS0oZt2Erc7bvb5SFyeZs38+phCTM9fXYOG4YRk9BZ8V4H9V3zNqI2usYXReuOtfAFm6Y6unW2nkFBAQEBAQEBAQEBOoXQdwVeGz27r3A9u2hSKU6/PDjVG2HozVWrZ6vKar24qz3GD70WS1H9PTh6xPITz+sYu73f+Dj3Ra5vJR/Nv3B+Od78fuib8nOyay1a12KusCBQ9sRi8W8OOvdWjtvXXH7Nvx8UuVR+mXvYN7o3E7LEQnUJQZSKfbGhrS0suCHft3ZNH44Fgb6nE1Mod3CVWyMuqbtEB8ZuULBmA3/kpRXQGsbK1aOGIBIpO2o6g5Xc1M6ODVFoVTy18UrtXbeiNR0LqamoyfVYXhr91o7r4CAgICAgICAgIBA/aKj7QAEngzeeH0Zffv6M2hQIH36+LN37wVth6QVVvzxKxKJhAnjZvLySx+iVCr5d9tabYf1xOPlGcDkia8Q4B8EgFwuZ/uO9azdsITMzLQ6u+6SpT/SuWMv/Hzb07lTL44db9hV55edi8DN3IzXO7fjq97BNDUx4vVdh1DeFqzXGwpikQhjXRmmurqY6skw0dXFpGJZTxdTXV1MdCuXTfV0Nfur2lTH3K2w4U8nzvLB/pAnonhWcn4ho9dv4eCUsQxp5c4HXTvy+eET2g6rThjno7JN2B8TR2pBUa2ee23EZb7qbc14n9asPH+xVs8tICAgICAgICAgIFA/PNEF1d555x1GjBhBy5YtKS4u5sSJE7z99ttcu/ZgGUtCQbWHY+7cabz62lAuXYrHz3cOiidAQHhUZkx7g3FjpgMw9+eP2LZjg5YjenLp1KEnn30yD7FYTFmZnB27/mbNukVkZKTWy/WnTHqV5ybMIjEpnsnTBlBWVlYv130cXgoK4Ie+3RGLRWy8dJVJm3ZSWv7k2aU8Ci5mpvjZ2+Bnb4O7pTlSsRiRSIQIqs25Y101BxEiTRZpxXLNeeUxOmIxxmpBtkKorS0USiW5JaUk5Rfw4f6j7Lh2o9bO3VB4zs+TZcP7AzB63Rb+vRKt5Yhqn0tzpuBuZcGkjTtYG3G5Vs/tYGLMjddfAMBt7iIScoV7HQEBAQEBAQEBAYGGwoPqkk+0uLtr1y7Wr19PaGgoOjo6fPXVV3h5edG6dWuKiu6f/SKIuw+HmZkh164vxsrKhDkvLWT+/B3aDkmrzJzxFmNGq2wqvp/7Pjt3/aPliJ48zMwsWL54O+bmlhwO2c3vC78hLT25XmPQ0zNg9co9WFra8Puib/nrn+X1ev1HZZSnBytG9EdXR4eQmwmMWreFnJJSbYdVb+iIxbSytsDPzhYfe2v87GzxtbPGTF9P26EBUFJWTl6pnNzSUvJKSsktLSW/VE6uejmvRL2tYvku+xTKG35HQ23wY//uzAlqQ0GpnC5L13IpLUPbIdUabZvacWLGsxTKy3D4fkGd/E/3TnqGbs2ceG9fCD8cO1Pr5xcQEBAQEBAQEBAQeDQEcfcuWFlZkZ6eTnBwMEePHr3v/oK4+/DMnNmfBb/PJjMzjxbuL5CdXaDtkLTKi7PeY9SIiSiVSr6f+z6792zSdkhPFJ9+/BvBnfsQc+Mqs14aqbWs2X59R/D2G19TUJjPc5P6kJPz+NXs64OuLo78M24Ypnq6XErNYNDqf0jMe/I+s4YyKd621qqMXDsbfO1s8LSxQk9a05lIXq7gUloGYSlpRKVlUFxezu3bcJvbd5+rl6mYw3/vj6ogX8Vccfs2eaWl5JbIyS8tJVctzsoVQib1g6IjFrP9uZH0cHUmJiuHjotXk11cou2waoW5/XvwUlAAa8OjmLRpZ51cY1KAF4uH9uNSagb+C1bWyTUEBAQEBAQEBAQEBB4eQdy9C25ubkRHR+Pl5cWlS5dqbJfJZOjqVlaMNjY2JjExURB3HwKJRMz5C7/g7e3Cb79u45VXFms7JK0zZ/b7jBj+PEqlkm+/f4e9+//VdkhPBH16DeXdt7+jrEzOrDmjiYmpvUJDD4tIJGLh/I20cPfk323r+PnXT7QWy8PibWvF1mdH0tTEmITcPAb/uZGo9NorPFffWBsa4GtnjZ+9LX52KnuF5hbmiMU1K27llpQSnpJGeEoaYclphCencTkj84nwpH3asDTQ58SMZ2lmbsq+6JsMWbMRhbJx397oiMXcfH0mNkYGDPrzH/ZG36yT65jq6ZLwxiz0pDq0XfAHEanpdXIdAQEBAQEBAQEBAYGHQxB370AkErF161bMzMzo0qXLXff5+OOP+eSTT2q0C+Luw9Gjhw/7D3xJebkCX585XL6coO2QtM6rcz5m6JDxKJVKvv72LfYf3KbtkBo11tZ2LF+yHSNDY5Yun8uadYu0HRI+3m35Ze4aFAoF02cOI/bmg3l7NwQcTY3Z/uwoWtlYkl1cwoi1mzken6jtsO5LM3NTVSauvSob18/ehqYmxnfdNymvgLCUNMKTUwlPSScsOZXYnFyEWnJPDt62VoRMm4ChTMrc46G8s/eItkN6LPq5N2PrsyNJLSjE5ceFdSpWr3tmMCM9PfjxeCjvNvK/m4CAgICAgICAgMCTgiDu3sGCBQvo378/nTt3JjHx7qKFkLlbe2za/D7DhgWxe/c5BvT/RNvhaB2RSMRrL3/C4EFjUSgUfPXtmxw89HR7Ej8qIpGI779ZTpuAjlyKusDLr01AqWwYQ9g/+fAXugb34+y547z5zhRth/NQmOvrsWncMDo5O1BSVs7EjTvYfPm6tsOqgYFUyhudA5ndzh8LA/0a25XK20RnZasycSsyclPSSCu8v8+6QONnZOsWrBszBIDJG3eyJiJKyxE9OqtGDmSsTyt+PXmON3YfqtNrDfZwY+P44STm5eM2dzFKoddDQEBAQEBAQEBAQOsI4m4VfvvtN4YOHUpwcDA3b9584OMEz91Hp3lzey5emo9MJmXQwE/ZufOstkPSOiKRiP+9+hmDBjyDQqHgi69e53DILq3F4+jQjC6de3PlaiTnL5zUWhwPy7ChE3jlpY8oKSlm2syhJCbGaTskDfZ2DqxctguZTMa7H7zAqdOHtR3SQ6Gno8OfowYytJU7SuVtXtt1kN/PXHiocwR36cvUya+xctWvHDpcux6hY71b8mXvYBxNTQAoLS9X+eMmp6mzctOITE2n4CkpJCZwdz7t0Yl3u3agpKycbsvXcT4pVdshPTRGMim33pyNgUxK0KI/6/w1SCVi4t+YhaWBPn1X/sWh2Pg6vZ6AgICAgICAgICAwP15UF1SXI8xaYXffvuN4cOH06NHj4cSdgUej+joZH79RWU98OPcqUjvUrjoaeP27dvM/fkjdu3ZiEQi4YP3fiC4c596jcHY2JQhg8Yx/9cNrFqxm+lTX+ebLxfj4922XuN4VByauvDCtDcBWLTkuwYl7AIkp9xi4+Y/AJj1wjtIJI3rfV9SXs6YDVtZeCYMsVjELwN78nnPzg98fIB/Bz549wecHJvx+qufY2VpUytxBTSx5fDUcawaNQhHUxNis3MZu2Er5l/+StCi1czcupeFZ8I4mZAkCLsCfHLoODuuxqAn1eHvsUOxNTLQdkgPzbBW7hjIpFxNz6wXcbpMoeSfS1cBGO/bus6vJyAgICAgICAgICBQezzR4u78+fN59tlnGT9+PPn5+dja2mJra4uenp62Q3sq+OKLDaSl5eDh4cDs2QO0HU6D4Pbt2/ww9wP27tuCRKLDh+/PpVPHnnV6TR0dKR079ODTj37ln/XHeO2VT2jdyg+FopzEpHikUhmffTyPJvaOdRrH4yIWS3j37W/R09Pn7Lnj/LttnbZDuiur1/5OVnYGTo7NGDZkvLbDeWiUt2/z8o79fHTgKABvBwexbHh/dMT//XPR3K0Vn38yH6lUhlxeiqGhEXNe+vCxYrE1MmDx0L6cmP4sHZ2aUigv46MDR/Gdt4JNUdcoVwqFzwRqcvs2TNy4gyvpmTiamrD+mSFIJY3rdmecj0pgXRtxud6uuTZcZWExvJU7+kKHrICAgICAgICAgECjoXE97Twks2fPxszMjCNHjpCSkqKZxowZo+3Qngry8or44P0/Afjo43FYWppoOaKGgVKp5Nsf3mX/gW3o6Ej5+IOf6RDUvdav08Ldkzmz3+fvdSF8+dnvBHfpi0wmIzrmMgsWfs3ocV2ZOmMwV65GYmpqzpefL8TQwKjW46gtxo2dTutWfhQU5PHdj+9xu4F6QhYVFbJi5S8ATHzuJUyMzbQb0CPyTchppm3eTblCyXN+nmwePxxDmfSu+9rbOfDtV0swMDDk/IVTzHl1HOXlZQR37vNInRcyiYTXOwVyac5UJgV4IxaLWB12Cc9fl/FNyGlKyssf9+UJPOHklcoZuW4LOcUldHJ24OcBdduJVpvYGxvSw9UJgPWR9SfunkxIIjY7FxM9XQa1cKu36woICAgIaJ+ers7M7d8DOyNDbYciICAgIPAIPNHirkgkuuv0xx9/aDu0p4bly/cTFnYDc3MjPvtsgrbDaTAolUq+/u5tDhzajlQq49OPfiWoXdfHPq+VlS1jx0xnxZLtLFqwiRHDn8fMzIKsrHQ2/L2MaS8MYfrMYfy9cSXZ2RmUlpbwwcezSU9PwcW5OR9/+DNisaQWXmHt0tytFZOeewmAX+d/QXp6ipYj+m927v6HmJgrGBubMvG5F7UdziOzKuwiI9ZtplBeRl/3ZuyfNAYbw+pD3M3MLPjum2VYWFgTHXOZjz55kWvXL7Hh72UAvPLSRxgYPPiDwiAPN8JenMTXfbpioqfLmVvJdF6yhimbd5GUX1Crr0/gyeZ6ZjbPb9yBUnmb6W19md7WV9shPRDPeLVEIhZzIj6R2Ozcer32OnUBOsGaQUBAQODp4Z3g9ux4bhQvBQWwefxw9HSE0RsCAgICjY0nWtwV0D5KpZJXX1kCwIwX+uLl5azliBoOSqWCr755i8NHdqkE3o/nEdi2y0OfR09Pn149h/D9N8vZsOYwL0x7AxcXd0pLSzhwaDtvvzed0eO6snDxd8TcuFrj+MzMNN7/aBbFxUUEtu3Ci7PerY2XV2tIpVLefftbdHSkhBzdw779/2o7pPuiVCpZsOhrAIYOGY+Tk6uWI3p0dl+PpffKDaQXFtGmqR1Hpo3HzcIMAD09A77+YjEOTV1ISbnF2+9Np7BIJcCuWr2AxMQ4rK3tmDrp1ftep7W1JTueG8Wm8cNpbmlOcn4BUzbtpMvSNZy5lVyHr1DgSWb39Vg+UFuM/DygB52dHbQc0f0Zr7FkiKr3a69T20D0ae6ClYF+vV9f4NHo4NgEd0tzbYchICDQyDCUSVn/zBA+69kFsVhESVk5bZrasWho/dYEERAQEBB4fARxV6DOCQm5yD//HEcikTD3p2naDqdBoVQq+OLrNwg5ugeZTMYXn86nbZtO9z1OJBLh59uet9/8mk1/Hef9d76nbZtOiMViwiNC+X7u+4x8phNffPU6Z0JDUCoV/3m+69FRfP3dWwCMGPYcQwc3HK/YyRNfwbWZB1nZGcz95WNth/PAnL9wiuMnDiCR6DBrxtvaDuexOJuYQvDStcRk5eBmYcaRqeNp7+jApx/9SksPb3Jzs3nr3WlkZaVrjpHLSzX/r2FDn6Wlh/ddz22ur8fc/j04O2sivZu7UFpezrchp/D8dRmrw6NooO4bAo2IH46dYUPkZaQSCeufGYKjqbG2Q7onra0t8W9iS5lCwT8Xa3bG1TVXM7I4m5iCVCJhlJdHvV9f4OGwNNBn9ahBHJk2nguzJ/FG53aIRSJthyUgINAIcDU35di0CYzwbIG8XMHMrXsYvHoj5Qol43xa83qnQG2HKCAgICDwEIgA4dH5HhgbG5OXl4eJiQn5+fnaDqdR4+Jiy+Urv6OrK2XY0C/YuvW0tkNqUFR473bu1IvS0hLe+/AFzl84VWM/R4dm9Ok9lN69hmJr00TTnpgYx979/7Jv/78kp9x65DjGj53B9Kmvo1CU8/Z70zl3/sQjn6s28PJswy9zVyMWi/ngo9kcP3lAq/E8LE2bOrNiicp64613pxJ69pi2Q3osbAwN2PrsCAKa2CG/Dddb9yNZz5LX35rI5SsRdz3m3be/o0+voUTHXGbmi6NQKFR+uRKxiGltfPmkRycs1RmCW6Ku8fbeI/U+FF3gyUdfqsORqePws7flfFIK3Zevp7is4Xk3f96zM28HB7HtSjQj123RSgwvBQUwt38PTiUkEbx0rVZiELg/Q1s2Z97g3tje4Y959GYCUzbvIi4nT0uRCQgINHR6u7mwevQgzPX1SMorYMyGfzmtHiU1s50fvw7shVJ5m2FrN7H7eqyWoxUQEBB4unlQXVLI3BWoF27eTOWnuVsAmPvTNKyshOJqVSkvL+PTL17l+MmD6Orq8eVnC/HzbQ+AibEZQwePZ/6vG1i1YjfPjp+FrU0TCgry2LZ9PXNeHcezk/qwavX8xxJ2AdauX8zefVuQSHT45MNfcHTUnp2Anp4B77z1DWKxmF17NjY6YRdUovuWf9cAMPuFdxqkn/HDkFZYRK8VG4gqBpkIWl/ew+kVn99T2AVYsPBrcvOyae7WilEjJgLQvZkToTOf57dBvbA00Odiajp9V/7FMxu2CsKuQJ1QXFbOqHX/kl5YREATOxYN6avtkGogEsEY71YArA2vf0uGCv6KvEK5QkmQYxONBYs2GOXpwaQAL3TEwq1qVcz19Vg5YgB/jxuGrZEhUWkZdFi0mmmbd5NfKqeLiyNnZ01kvE8rbYcqICDQAHmjczu2PjsCc309TiUk0WHxnxphF2DhmTCWng1HLBbx56hBeFhZaDFaAQEBAYEHRcjc/Q+EzN3axchIn0tR83F0tObixTh69fyAtLQcbYfVoJBKpXz28TyC2nejuLiI8xdO0i6wC1KpDACFopwzoUfZu+9fjp88QFmZvE5imPv9Krw8A0hMjGP2nGfIy8+p9evcj9de+ZQhg8aSkprItBlDNF6ujQ0jIxNWr9yLqak5P//6Kf9ua9yZcCOHT2TOzHdoHhOCTfp1AD46cJRvQu6djd+v7wjefuNryE0jb9s8+rs6ApBZVMwnB4+z9Fw4CqXwUyRQ93RxdmD3xNFIJRLe2XuEucdDtR2Shk5OTTk0dRy5JaU4fv87JeXayyze+uxI+rk347NDx/ni8Ml6vbZYJOKHft15KSgAgIup6by84wDH4h6v8/JJYJCHG/MH98be2AiFUsmPx0P5/PAJSstV1kvNzE1ZMWIAHZ2aAiqh/qXt+8gpKdVm2AICAg0AA6mUJcP6MtqrJQDLzkXwyo4DyBU1rdukEjF7Jj5DZ2cHrmVk0WnJGnKF7xEBAQEBrSBk7go0OAoKiund60OSkjLx8nLm4KEvsbU103ZYDYqysjI++nQOp8+EoK9vQKeOPZFKZVyPjmLegq8YPTaY9z6cyeGQXXUi7FbE8OEnL5KcfIumTZ359ONf0dGR1sm17kW7wGCGDBoLwLffv9tohV2AgoI8Vq76FYDJE1/G0LDh+n3ej+7dBvDS7Pe4LRbz5pGzfBuisg75rGcXfh3Y655ej8cObUPvzBY6RG2jv6sj5Qol806dp/Wvy1gUGiYIuwL1xtG4W7y++xAAX/bqQp/mLtoNqArjfVWF1DZFXdOqsAuwTp05PE5d3K2+MJJJ2ThumEbYzS4uwcvWmoNTxrJiRH9sjQzqNZ6GgpmeLsuH92fT+OHYGxtxJT2T4KVr+WD/UY2wCxCbnUvPFev5+MAxyhQKnvFuybnZE+nWzFGL0QsICGibZuamhEwbx2ivlpQpFLy4bR+ztu69q7ALUKZQMmbDVuJz8mhhZcGfowYJft4CAgICDRwhc/c/EDJ364bmze05eOgrHBysuHw5gZ493iclJVvbYTUopFIZ06f8D4VCwb4DW7kRW/+FdVxc3Jn383oMDY3Ysetvfpj7Qb1c19jYlOVLtmNlacM/m/5g/u9f1ct16xKxWMKyRf/i4uLOX/8s5/dF32o7pIcmwD+Ib75cglQqY9PmVfy24EsAZrXz56f+PRCLRWyJusbzG3dqhCmRCJ718eSL3l2wNzYCINu0KW/vDWHlzs1aey0CAr8P6cPUNj7kFJfQcfFqorNytBqPTCIh4c1ZmOvr0XvFBo7cTNBqPAZSKbfenIWRroxOi1cTmphS59dsamLElvEj8LW3obisjEkbd3L4ZgKf9ezM9Da+iMUicktK+eTgMRY+RZ1C/d1dWTCkN01NjFEolfx84iyfHDpeTdS9G22a2PHHyAG0UA+pnns8lI8OHLunmCMgIPBk0sPViTWjB2NpoE9KfiFj/9rKifjEBzrWz86Gw1PHYSCT8uPxUN7de6SOoxUQEBAQuJMH1SUFcfc/EMTdusPV1Y6Dh77Cycmaq1dv0bPH+yQlZWk7LIE7aN8umC8/W4hEImHBwq/5e+PKOr/mB+/+QM8eg4mPv8H0WcOQy5+MYWCBbbvw3ddLKSuTM3n6IBIT47Qd0gPT3K0VP/+4GkNDIw4d3snnX/2P27crfzpGtG7ByhED0JPqcDzuFiPWbcHd0pyf+vcg0MEegOjMbHaVGhAw8kWycjKZOKU/BQVCwR8B7SCTSNg36Rk6ODXlclomnZeuIb+0bkZDPAhDWzbn73HDSMjNo/lPi7ndAO7MVozozwRfT+afPs9rOw/W6bX87GzYPGE4TU2MSS0oZPjazZytIii3aWLHb4N60bapHQDhyWnM2bGfUwlJdRqXNjHV0+WHft2Z6O8FwLWMLKZu3lXNG/N+GEilfNu3Ky8E+gEQmZLOxI07uJiWURchCwgINDBe69iWr3oHIxGLOXMrmTEb/iUx7+FGw4329GDNM4MBmLxxJ2sitOcJLyAgIPA0ItgyCDRobtxIoXu3d4mLS8PDw4FDh7+maVNLbYclcAenz4RoskxnzniboPbd6vR63YL707PHYBSKcr7+7q0nRtgFCD17lFNnjiCVypg5/S1th/PA2Ns58O1XSzA0NOJC2Gm+/u6tasIuqIaRD/jzH7KLS+jk7EDES5M5Nn0CgQ725JWU8s7eI/jNX8k7yxcSl3ADC3MrXpj2hpZekYAAyBUKxmzYSmJePq1sLFk5YgDaHHFaYcmwIfJKgxB2AdaGXwbgGa+WdVrUbEALVw5OGUtTE2Oi0jLovGRNNWEX4FxSCp2XrGH2tr1kFRXja29DyLTxLB7aF2vDJ8+qoU9zFy7MnsREfy+UytvMPR5K299XPZSwC1BUVsac7fsZvmYTaQVFeNtZc/KFZ3m5Qxutvt8FBATqFn2pDqtGDuTbvt2QiMWsPB9JzxXrH1rYBfj70lW+Udtw/T6kj6aTTUBAQECgYSGIuwJaIzY2lW5d3yU2NhV39yYcPvI1jo7W2g5L4A42bv6DbdvXIxaL+fC9ubg286iT61hYWPPqKx8DsGbdIq5cjayT62iT3xd9g0JRTudOvfD3C9J2OPfFzMyC775ZhoWFNdExl/nw49mUlZXddd9jcbfovmwdCbl52BoZolTeZsX5SDx/W8bc46HIFQrKysr48acPARg0cAzeXm3q8+UICFQjpaCQ0ev/paSsnMEtm/NRt05aicNMT5cBLVwBWBvecDKiDsbGkZJfiLWhAb3dXOrkGi+292fjuGEY6crYF32T4KVricu5e0a/8vZtlp6NwOu35Sw/FwHApABvLs6ZwoxA3yfCD9JEV8bCIX3Y/twoHEyNuZ6ZTffl63hn75HH8mHece0GAQtWsuNqDLo6OvzQrzs7nxtNUxOjWoxeQECgIeBsZsKRqeMY69OKMoWCl3fsZ8a/e+5r5fJffHzwGNuvRKMn1eHvsUOxMzKsxYgFBAQEBGoDQdwV0CpxcWl07/YuMTHJuLnZc+iwyqpBoGHxy7zPOX/hFAYGhnz5+e+Ym9V+lvUbr32OqYk5165d5M81v9f6+RsC8fE3+HfbOgBenPku4jrMhntc9PQM+OrzRTg0dSEl5RZvvzf9voXtotIz6bJkLV8cPkHHJat54d89pBYUVdsn8uI5tu/8C4D/vfoZUmn9FusTEKjK2cQUZm/bC8D73TowrJV7vccwwrMFujo6RKSkNajh8grlbTZcVGXvjvdtVavnFotEzO3fg58G9EQiFrP0bDhD12wi7wGsMTKKipm5dS9dlqzhQlIq5vp6zBvUm+PTJzTqjLJebs5ceHESU9r4oFTe5peTZ2n7+x+crCXribTCIoav3czsbXsplJfR082Z87MnMcqzbjpsBQQE6p9uzRw5OeNZ/OxtSSsoou8ff7PwTNhjn/f2bZi4aSdRaRk0NTHm77FD0dWRPH7AAgICAgK1RsNVFgSeGuLj0+ne7T2io5NwdbXj8JGvcXGx1XZYAlVQKMr55POXSbgVi51tUz77ZB5SqazWzj+g/yg6BHVHLi/l6+/eprz87tmhTwJ/rJpHfn4ubm4t6d93pLbDuSsSiQ6ffvQrrVr6kJubzVvvTiMrK/2Bjk3KL+CzQyc4n5R6z30WLfmerOwMXJybM/aZ6bUVtoDAI7E6PIpfTp4FYMWIAbzasS0ySf09tI73UVkyrI24XG/XfFAqrBmGtGyOsW7tfOcbyqRsHDeMl4ICAHhn7xFmb9tHuVL5UOc5fSuZDotX8/KO/eQUl9CmqR3Hpk1gweDeWOjr1Uqs9YGxrowFg3uz8/nROJqaEJ2ZTc8V63lz92GKyx49W/deLD0bQbuFqwi9lYy5vh5rnxnM8uH9Maml/6+AgIB2mBMUwM7nRmNlaMC5xBSCFv3JsbhbtXb+/FI5I9dtIauomPaOTZg/qHetnVtAQEBA4PERxF2BBsGtWxl06/ou164l4uJiy6HDX+Hq2ngzcJ5E8vNzee+DmeTn5+LlGcBbr39VK+e1s3PgxZnvAbB0xU/cjIuulfM2VPLyc/jjz/kATJn8KgYGDW9o21uvf0m7wC4UFxfx7gczSLgVW6vnLyjIY/7vqvfPs+Nn4tDUpVbPLyDwsLyz9wi7r8diKJPyXd9uhL80mZGtW9T5dZ1MTQh2cUSpvM2GyIYn7l5ITuVKeib6UinDWj5+VnNTEyMOTRnLQA83isvKGLP+X+YeD33k8ylv32bhmTC8flvOqgsXEYtFTGvry6WXpzKljXeD95Xt4erE+dmTmNbWF4B5p87T9vdVHH/ASvaPyvXMbLouW8eXh0+iUCp51s+Ts7Mm0smpaZ1eV0BAoPbR09FhxYj+/Ni/BzoSMavDLtF9+Xpu5dV+MfCYrBwm/L0dhVLJ8/5evNxBsNcSEBAQaCgI4q5AgyEpKYvu3d7jypVbODvbcOjwV7i52Ws7LIEq3Eq8ySefv4xCUU6vnoOZMH7mY51PJBLxzptfY2BgSHhEKBs3/VFLkTZs/t22lviEWCzMrZgw7vH+hrXNjGlv0Kf3MBSKcj794hUuX4mok+scPLSDM6FHkcl0ee2VT+vkGgICD4pCeZthazYxfctukvIKcLMwY92YIRyZOo72DnX3OzTWpyUAh2/GP1Khm/pgrboy+rjHtGbws7Ph2PQJ+NnbklpQSK8VG9h8+XpthEhaYRHTtuym+7J1RKakY2mgz8IhfTk6bQL+9g1vJJCRTMpvg3qxe+IzOJuZcCMrh14rNvC/XQcpuoeveW1TrlTy6aHjdF++nhtZObiYm3Jg8li+6NUFqUR4PBAQaAw4mhpzeOpYJvh6Uq5Q8r9dB5myeddjeXTfjwM34nhrz2EAvu3TlV5uznV2LQEBAQGBB0e4exNoUCQnZ9G927tERcXj6GjN4SNf4+7eRNthCVTh/IVT/PLbZwBMm/wawV36PvK5Ro2YiK9PO4qKCvn2+3dQPuSw3MZKeXkZCxd/C8CoEZOws3PQckQqRg6fyLgxKpuE7+d+wOkzIXV6vZ9+/YSSkmIC/IPo22d4nV5LQOB+KG/f5o8LF2n96zI+O3ScQnkZHZyacnT6BNaOHkwzc9Nav+YEH0+g0v6gIbI+4goAPZo5Y2/8aCMNBrRw5eCUsTQ1MSYqLYPOS9YQmphSm2ECcDw+kXaLVvH6roPklZTSzsGekzOe5ZeBPTHT06316z0KXV0cOTd7Ei8E+gGw4PQF2vz+ByE3E7QSz6mEJNr+/gcrz0ciFot4q0t7jk2bQEsrC63EIyAg8GB0cXbg5IznCGhiR0ZhEf1X/c28U+fr5dq/nTrPHxcuIhGLWTN6MM0tzOrlugICAg0bC3093u7SXis1LAQEcVegAZKamkOP7u9z8WIcTZtacujwV3h4NAzxS0DFth0b+EedZfvuW9/SooXXQ5/Dxbk506b8D4AFC78mOaX2fMEaAydPHeLsuePIZDJemP6mtsOhe7cBvDRbZY+xeOkP7Nm7uc6vmZJyiz/+nAfArBfextTUvM6vKSBwP4rKyvji8Ela/bKU5eciUCpvM8rLg8iXpvBt3261JhL62dnQysaS4rIytly+VivnrAtu5uRyLO4WYrGIMd4Pn737Ynt/No4bhpGujH3RNwleupa4nLw6iFSFQnmb306dx+u35ayLiEIsFjGrnT8X50zlOT9PrVk1GMqk/DygJ/smj6GZuSk3s3Pps3IDr+48QKFcuz7zBfIyZvy7h2fW/0tmUTH+TWw5PfM5Zrbz02pcAgICd2dWO392TxyNjZEBYcmpdFi8miP13EH04rZ9nEpIwlxfj43jhteaL7uAgEDjw0Aq5e0u7bn66nQ+79WFv8YOZfHQvhgIhbPrFUHcFWiQpKXl0LPH+0RExNKkiUrgbdXKUdthCVTh90XfcvpMCHp6+nzx6QKsLG0e+FiJRId33/oWmUyXU6cPs2PX33UYacNlwcJvUCgUdAvuh7eX9nzLAvyDePctVSbxps2rWLdhSb1d+++NK4mJuYKpiTmzX3in3q4rIHA/UgoKmbl1L4EL/2BvdCwyHQmvdWzLlVemMSco4LGHro/zVRVS2341hrxSeW2EXGdUWDOM93lwcVcsEjG3fw9+GtATiVjM0rPhDF2zqd5ea0pBIRM37qTXig1EpWVgY2TAsuH9OTh5LD621vUSQwVdnB04N2sis9v7A7AoNIyABSs5HKudbN17seXydQIWrGRvdCz6Uim/DuzF1mdHYmtkoO3QBAQEAF0dCUuG9eOXgT2RSiSsi4ii67J1ddphdi/kCgXPrP+XW7n5tLKxZNXIgYgbutG5gIBAraIjFjOtrQ9RL0/l815dMNXT5XpGFgqlkkkB3pyc8SyeNlbaDvOpQQTc1nYQDRVjY2Py8vIwMTEhP7/2TekF7o+lpQn79n+On58rqanZ9Or5AZcuxWs7LAE1hgZGzPtlPS4u7ly7dpFXXn+WkpLi+x436fk5THzuJXLzspkyfTBZWen1EG3D5LVXPmXIoLFcvXaRWS+N4vbt+v1Kbu7Wip9/XI2hoRGHDu/k86/+V+8xtPTwZv6vfyEWi3n9rUmcv3CyXq8vIPAg9HZz4du+XfFSC4PRmdm8vy/kkXxjxSIRsa+/gL2xEcPXbGLHtRu1HW6tYq6vR8Ibs5DpSPCfv5JLaRn/ub+hTMrqUYMY6OEGqArWPU7htMdFRyxmTlAAH3briJGuDIVSyYIzF/j04PGHEptlEglGMilGMhlGMikGMmm1dUOZDMMqbYYyKXZGhgxXF+eLy8njhX93c/BGw76PEYlUmYFf9w5GXyolo7CIWVv38u+VJ7vgqYBAQ6apiRF/jRlKoIM9CqWSd/eF8POJs9oOizZN7Dg4ZQz6UinfhpziwwPHtB2SgIBAPTCydQs+69kZd7WNU2x2Lp8cOMb6i5fp4uzIqpEDaWJiRHFZGa/uPMiK85Fajrjx8qC6pCDu/geCuNswsLAwZu++zwkIcCM9PZeePVSWDQINAzs7B37/7W/MzCwIObqHTz5/5T/FQY8W3sz/dT0SiQ6ffv4qh0N21WO0DQ8zMwv+XLkXI0Njvvnubfbs21Jv17a3c2DeL+uxsLDmQthp3n5vKmX1VMznTua8+AEjhj1HYmIcU2YMRi4v1UocAgL/hVgkYqK/F5/06IS9sREAJ+ITeWvPYc7cSn7g8/R0dWbXxNFkFBbh/ONCyhQN32/877FDGdrKne+OnuaD/UfvuV9TEyM2jx+On70txWVlTNq4s9YKpz0uTU2M+K5vN0Z7qQrZpeQXsiYiCplEXF2glVYItKp11VyKVCJ55GsvORvOO3uPkN/As7Sr0trakpUjB+CnLkp39GYC55NTiUzJIDI1ncvpmXVauElAO0glYqa39eU5X09u5eVz8EY8h27EcSUjS9uhPbX0bd6MpcP7YWtkSGZRMRP+3tagOonGerdk1ahBADz79zb+unhVyxEJCAjUFd2aOfJlr2AC1QWH0wqK+DrkJEvORiBXKDT7WRuqRkz1c28GwPqIy7y4fV+jug9qKAjibi0giLsNB3NzI/bs/Yy2bd3JyMijV8/3iYi4qe2wBNR4ebbhx+9WIpPJ+HPN7yxf+fNd95PJdFn8+2acndw4cGg7X3z1ev0G2kAZM3oqM2e8RUZmGs9N6ktJSVGdX9PMzILffl6HQ1MXomMu8+r/nqWwqKDOr3svDAwMWbl0J9bWdqxe+zvLVvystVgEBO6HoUzK650C+V/HQAxkKj+xvyKv8MH+o9zMyb3v8cuG9+c5P09+P3OBV3YcqOtwa4XhrdzZMHYo8Tl5uP+8mLv14fnZ2bB5wnCamhiTWlDIiLWb66Rw2uPSw9WJXwb0xMPa8pGOLy4ro0CumorkZRTI5RTIyyismKu3F8rlFMrLOBGfyMmEpFp+FfWDTCLh4+4deb1TO8Ti6kOuFUol1zOziUxNV00p6USmZhCfW/9DxAVqh9GeHnzaszPNLWt64CflFXA4Nl4l9sbGkZArPBvVNW4WZvzQr7tmFEREShqj1v37QL8z9c1XvYN5o3M7iuRldFu+jrDkNG2HJCAgUIv42dnwRe8u9GmuEmvzS+X8fOIsP50IpeAetQNEIvhfx0A+79kFHYmY65nZTPhrG2EpwvfDwyCIu7WAIO42LMzMDNm95zPatWtBZmYevXt9SFhYwx7K+jTRp9dQ3n37OwC+/OZN9h/YWmOf2TPfZfTISWRkpjFl+iDy8xvezak2kEqlrFi6k6ZNnEjPSCU5OYH0jBTS01PJyEghPSNVvZ5CVlYGSqXi/ie9CyKRiHbtWnD1agpffb6UVi19SEm5xYuvjG0Q1hidO/Xi80/mU15exvRZw7l5s2Fk+wkI3IsmxkZ80qMTz/t5IRaLKC0vZ97pC3wbcoqckrtnnxtIpSS8OQtjXRldlqzh9ENk/GoTXR0JCW/Mwkxfj57L13M0rnoRzAEtXFk9ahBGujKi0jIYumaTVnwgHxSZRMKUNt64W5pTUCrXCLIFpXeKtCqBtkLALSorQ6F8+m6d3S3NCXJsgo+dNd621vjYWmNleHcv3tyS0krBVy36XkrLuOfDn4D26eriyNd9utK2qR2gymr/7thpDKQ6dGvmRCenpujfURjnemY2h2PjOXQjnsOx8WQU3d+WS+DBMJJJeTc4iJc7tEFXR4cyhYJ5p1VWMkVaGmF1P8QiEZvGD2dAC1cScvPosGg1aYV1n6wgICBQt7iam/Jpz86aorrycgWLz4bzdcgp0h/wMx7k2ITVowbhZGZCaXk5b+45zMIzYXUY9ZOFIO7WAoK42/AwMTFg955PCQpqSXZ2Ab17fcD58zHaDqtWEYvFdOvmxaBB7YiJSWbhwl0oGsGQXYBpU/7HhHEvIJfL+d+bz3Mp6oJmm59ve376YRUAb783nTOhIdoKs0ES1L4bX372O2LxfxdpUigUZGWlk56RQkZGqkr4TU/RiL/pGalkZqbWsFfQ05Oxes3rDBvWkZNHLSgvsyI3N5s5r44j4VZsXb60h+LzT+bTuVMvLl46z8uvja93/18BgUfBx9aab/p2pZebCwCZRcV8cfgEi8+G17BcGOPVkj9HDyImK4dWvyzVQrSPzu9D+jC1jQ/LzkUwa+teTfuL7f35oV93JGIx+2NuMu6vbeTeQ9wWeHKwMzLE29YabztrvG2t8La1pqWVJTKdu9tXxGTlcLFalm86Mdk5d80CF6gfvGys+KJ3MANauAKqTKy5x0P5+eRZCquI8bo6EoIcmtDD1YluzZwIbGqPzh1FJcOT0zikFnuPxiUIYv4jIBLBeO/WfNk7mCYmKuufPddjeWP3Ia42AlsME10Zx6dPwMPakuNxt+j7x9/VhmkLCAg0HmwMDXivawemt/XR2FKti4jik4PHic1++AQtc309lg7rx+CWzQHYHHWNGf/uEe4XHwBB3K0FBHG3YWJsrM+u3Z/SsWMrcnIK6NP7I86ebfwZfh06tGTs2GBGP9MZO7vK4XChodeZPOlnoqIajrfWvRCJRHz60W906dyb7OxMZs0ZTWpqIgYGhixbvA0726Zs3b6en375WNuhNkjMzSyxt3fE2toOaytb9dwOa2s7rKxssbK0QUdHev8TAdnZmSrBNyOVvLwMBgzwpIWHJVmZBqSnmiASKfh+7mvs2Lmnjl/Vw2FtbcfKpTsxMDBk7i8fs237em2HJCDwwPRt3oxv+3altboy8PXMbN7be6RaIaotE0YwoIUrXx4+yaeHjmsr1Eeii7MDB6aMJae4BMcffqdMoeSHft15KSgAgGXnIpizfT/lysbRISlQ+0glYjwsLTSir5etSvhtamJ81/0L5WVcSsvQZPnuvR5LdFZO/Qb9FOJgYszHPTrxnK8nYrGIMoWCJWcj+OrIyQfKtjTWldHF2YFuzZzo4eqEj51Nte1lCgWhiSkaG4dTCUmCyHcfAprY8lP/HnRwagqoina+uftQgy+4eSfuluYcnz4BM329Gh2BAg2Hzs4OzGrnh7WhAbuu3WDjpWuCpY4AoPp+/1/HQF7p0AYjXRkAu6/H8uH+EMJTHn+k50tBAXzTuysyHQmx2bk8+/e2Bmnh1ZAQxN1aQBB3Gy5GRvrs3PUJnTu3Jje3kL59PuLMmWvaDuuh8fNzZezYLjwzpgsuLraa9szMPHbuPMegQYGYmxtRWlrGp5+s5fvvNzX4LF49PQN+/WkN7s1bcyP2KnNeHcdLs96nf7+RJCbFM+2FofXiKfskIhKJMDOzrCn+WqnEX2trW6yt7NDV1bvPmZR4+SWjI01j5IivOHgwol7if1BGDHuOOS9+QEFBHhOnDmgQlhECAg+KRCxikr83n/TohK2RIaAqRPX23iPczM4l/o1Z6EjEeP26jGuZ2VqO9uEQieD6qzNwMjNh6qZdjPBsofGCfHfvEX48HqrlCAUaKlYG+nips3srptY2ljWG+iuVt9l1/Qa/nDzL4dgELUX75GKqp8tbndvxUlCA5m+/8dJVPtx/9LFEdWtDA7q5ONJdndl7p2dvcVkZx+MTOXRDJfZeSE5FKaRsA6rsuM97dWGi2t6noFTO1yGn+OXkuUYriPdp7sK/E0YgEYt5ZccBfj9z4f4HCdQ5ujoSxni1Yk5QAL72NjW2n05I4p9LV9kUda1ReWo3MTbC2lCf/FI5+fIy8kpLKS1vnJ8dbSKTSJgR6Mu7wUFYq22XztxK5v19IRy5Wbu/xwFNbFkzejBuFmaUKRR8sP8oP588K4zkuQeCuFsLCOJuw8bQUI/tOz6ma1cv8vKK6N/vY06evKLtsO6Lh4cDY8d2YczYYFq2dNC05+cXsXnzKTasD2H//nDKysqxt7dg0eKXGDQoEIAzZ64xedLPXL7csB94rKxsWTjvHywtbYi5cRU3Vw+USiWvvv4skRfPaTu8Jx4TYzOsrW0J8Pfmo48nY2BgTnaWgtAzCUgk+mzd/ievvxlI165elJWVM33ab6xadVDbYWsQi8XM+2UDrVr6cPjILj794lVthyQg8NAYyaS80bkdr3Zoqym6djE1HS9ba0JvJdNpyRotR/hofNGrC291aY9SeRuxWERxWRmTN+1iU1Tj62AV0C4SsYjmFuZqsdeKQAd7jbUJqIpH/XryPOsjLzdakauhIJNImNXOj3eCg7A00Acg5GYC7+49UicZU06mJnR3ddLYONgbG1XbnlNcQsjNBA7FxnMhOY3L6ZlkF5fUehwNGR2xmNnt/fmwW0dM9XQBWBN+iff2hZCcX6jl6B6f1zq25du+3ShXKBnw599CZ40WaWJsxAuBvkxr66sR7YrkZayJiOJSWgbDWrkT7OxYrWjmqQqh99I1buU1LB3ESCalq4sjPd1c6OXmTMu7FEctUyjIK5WTXyqnQC7XLKsE4OrLeaWlFKjX89RtBVWWi8vKtfAq6w+xSMQ471Z81KMTzcxNAbiWkcWH+4+y+XLdjY420ZWxcEhfRnl5ALDjagzTtuwmU/Bvr4Eg7tYCgrjb8DEw0GXb9o/o3t2H/PwiBvT/lOPHo7QdVg2cnKwZOzaYMWO74O/vpmkvLi5l+/ZQNqw/ys6dZykpkd/1+Oef78HPv0zHzMyIkhI5n3y8lh9/3Nygs3g9Wnjzy9zVmizS9RuWsmjp91qO6umhY8dWbN32IRYWxly+nED/fh8TH1+ZASuT6bBi5auMG9cVgI8+XM0XX2zQVrg1cHNryaL5G5FIdHj3/RmcOnNE2yEJCDwSTU2M+LRHZ55VD38GeG3nAeafbpyZTK2tLQl7aTIAqQWFjFi7WRhOJ1BruFua81JQAM/7eWGo7hRJLShkUWgYi0LDH7h4i4AKkQjGerXi056dcVE/tEelZfD+vpB6He7fytpSJfY2cyLYxREz/ZojjFLyC7mcnlljehL/573cnJnbv4dGlDqXmMJruw5yKiFJy5HVLitG9GeCryeZRcV0XLz6kXw6BR6d9g72vBQUwIjWLTSeqXE5eSw8c4Hl5yOrdajYGhkwrFULRnl60MXZoZrQezI+UZPRm5hXUO+vQyIWEdjUnl5uzvR0daadg73m9QAolErSCoswkskwVtsI1CblCiX5cjmX0zNZdi6Cvy9epaT8yRB8+7k348tewXjbWQOQlFfAZ4eP88eFi/VWPHZaWx/m9uuBnlSHW7n5PPfPdo7HJ9bLtRsLgrhbCwjibuNAX1+Xrds+pGdPXwoKihk44FOOHr2k7bCwtTXjmWe6MGZsFzp2bKVpLysrZ8+eC2xYH8LWrafJz3+w3qkmTSxYvGQOAwa0BeDUqStMnvQLV6/eus+R2qNbcH8+eO9HYm5c4aVXxlJWdnfxWqB2GTo0iLXr3kBfX5cTJy4zZPDnZGXV/A4TiUR89dXzvP3OKACWL9vLzJkLKG8gQ5lemP4WY5+ZSkpqIpOnDWpUdh4ymS7m5lZYmFtibm6FuZl6bm6pXlat6+rqce3aRcLCzxAWfoabcdcbTRE5ezsHfH3b4ePdFlubJly+EkFY+GkuXrrQqP5X9YWfnQ2f9uyMub4eQ9dsatRZaouH9sXNwowpm3cRlyN49AnUPub6ekwJ8GZ2e38cTU0AKC0vZ13EZX49eY6LaRlajrDh09PVma96B+PfRGX7lZiXz6eHjvNn2KV6e2i/G2KRCH97W3q4OtHJ2YHW1pYa4fluZBQW3VX0bYzZra7mpnzfr7umoFBaQREfHAjhjwsXn8jhyHo6OhyYPIZAB3supqYTvHStUGivjpFKxIz29ODF9gEEOthr2kNuJjD/1Hm2Xo2+7+ffzsiQYa3dGeXpQWen6kLvifhENtaD0OtuaU5PN2d6uTrTtZmTJru9gujMbA7ciONATByHY+PJURflEolQibwyGSa6Mox0K5eNdWUY6+pirCvFWFaxrN5PLQxXLFfMq772CrKKilkVdoklZ8O53sjstSpo52DPV72DCXZxBFSjKb4/doZ5p89rJVPZx9aaNaMH4WFtiUKp5NNDx/nu6BnBvkeNIO7WAoK423jQ19dl85b36dPHn8LCEqZP+43IyJukpuaQmZlfb2KJubkRI0d2ZMzYYLp180Ki7lVUKpUcPhzJ+nUhbNp08q5C24MyaVJPfvp5OqamhpSUyPnwg9X89NO/KBtoARsrK1tycrIoLxdu5uqDGTP6MX/BTCQSCdu2nWHsmO8oLv7vKqQvvNCPefNVx+zZc55nRn/zwJ0OdYmenj4rlmzHzs6Bv/5Zzu+LvtVqPPr6hpibW2KhEWmtMDOzqFyv0m5oaHT/E96F3NxswiPONEix19HRFV/vtvj6qARdGxv7u+5XXl7GlauRhIWfJiz8DJeiLlBSov33k4BABWKxmN49hzBu7AxkUl0OHt7B3v1biI9vXIWLngZ0xGKGt3Ln5Q5taO/YRNN+ICaOX0+eY3f0jSdSFHsc/Oxs+LJ3ML2buwCQW1LKD8fO8Oupcw12eLGhTIqHlQWtrS1ppZ5aWlviam52V3EFVGLE3UTfhugVaiiT8k6X9rzasS26OjqUKRTMP32BL4+cfOIrxTcxNuLEjGdpYmLEv5ev88yGf4XPbB1gY2jAjEBfprf11diglJSVsz7yMgtOXyAsJe2RzmtnZMjw1i0Y5dmCTncIvcfjbrEx6hqbLl0jKf/xhF4rA316uDrR082FHq7OOJuZVNueVVTModh49seoBN2bOXWfBS4SgaFUirGuDDM9PQa3dGNaG99qnVEHYuJYHBrGtqsxjaKYrJeNFR/36MTQVu6A6j0y//R5vjt2RutJB4YyKb8N7MWzfp4A7I+5yeRNO0ktEBJGBHG3FnjaxN2hb71KSWEhR1ato+Qxv6C1gZ6ejE2b36NfvzbV2svLFaSn55KamqOZ0qosq6ZsUlNzyMjIe2irAyMjfYYObc+YscH07euPVKqj2Xby5BXWrwvh77+PkZJSez17Dg5WLF7ykua1njhxmSmTf+HatYY1hMHR0ZrRozthYKBLTk4hubmF6nkROTkF6nkheXlFDUbAasx8/PE4Pv5kPADLlu5l5sz5D/x+HjgwkPUb3sLQUI+wsBsMHPApyclZdRnuA9EuMJhvv1qCQqFg1kujuB5dt7YrYrEEjxae+PsF0dLDB0tLa8zNVKKtnp7+Q51LLpeTnZNBdnYm2dnqeU6meq5aVyoVeLb2x8+3HV6ebdDXN6h2jty8bMIjQglXi72xN6/Vy2dFJBLh4uyOr28gvt6B+Hi3xcLCuto+ZWVyrl67SHhEKKmpibRu7Yefb3vsbJvW2E8l9p4hLPw0l6IuUFr6cDeQrVo54u/vyt9/H6esgYoTDQVb26YYGRoRc+OqtkNpkHTu1Iupk17FxcW9xrYrVyPZu28LBw/vIDe3cWbjPMm0d7DnlQ5tGd7aHYlYDKh8AX87dZ4/wy5RVKb9TmQjmZRW1pYUlZUTn5tHfmn9jVhyMjXh056dmOCrejCWlytYGBrG1yGnGq2HoZ6ODh5W5hrBt2JyszBHRyK+6zH5pXKu3CH4RqVlEpebqxVRcZx3K77qE0xTE2MA9kbH8sauQ1zJ0P49Vn3RzsGeA5PHoKujw9dHTvLLyXMUlZU/MUPbtYm/vS1zggIY7eWBro7qGTQxL59FoWEsPRtBRi1+9u2NK4ReDzo6Nq0m9B6Lu6XJ6H2QrHo9HR06OjWhl5sLPV2dNSMMKigtL+dEfBIHbtxkf0wcYclpDSKLUywS0ae5Cy8E+tHf3VXzN0jKK2DF+UiWnYtoUB7FErGIDo5NGejhxqAWrniorWAUSiWrwi7x+aETDSpegOf8PPl1YC8MZVJS8guZuHEHh2LjtR2WVhHE3VrgaRJ3LRya8M62DUh0dCjKy+PwyrUcW/M3pUWNq6dEV1fKjz9OpWs3b2xtzbCyMrn/QVVQKpVkZORVisBpuVWE4GxNe3p6HoGB7owZ24VBgwLR168cKhIWdoMN64+yYcNRbt5Mre2XWI0pU3oz96dpmJgYUFxcygfv/8kvv2zTahavrq6UYcOCmDylN716+SIW3/3m+05yc2uKvrm5heTeRQyuLhSr5qWl2n+o0xYSiZgFC2YxfUY/AD7/bD0ff/zwxZratGnO9h0fYWtrTnx8OgMHfMKlS9r/Mf3wvbn06D6Qq9cuMnvOMyiVtWcbIRKJcHNtib9/EP6+7fHxDvzPrNvi4iK1QFtFtFWvZ2VnkqMWb7OyMygsfLjfDR0dKS3cPfHzbVfvYq9YLKa5Wyt81Jm53t5tMDWpXu1cLi8l6nKY6voRoURdDrurSGtn56B6DT7t8PNrj61Nk2rby8rkaguHSrFXLr975pKhoR6ffDKeV14dgo6OhIsX45g29VfOnBGKd1VFKpXSuVNvBg14hgD/DgAk3Iplz97N7Nm3hYyMuv0tagz4+wUxfcr/aNXKF4C8vBzWbVhCUnICfXoNpX27YHR0VB6v5eVlnD4Twt59Wzh5+hBlDUA0FKjEydSEWe39mRrgrfFuzS4uYdm5CBacvlBvD6pmerr42dvgb2+rnmxwt7SoJnjkFJcQn5tHQm5+5Twnl/jcfBJy80jOL3xswcJcX493goOY3c5PI+6sj7jMxwePPbEepzKJBHfLmqKvu6U5Mh3JXY8plJephd4MoirmaZnE59aNtYyfvQ0/9e9BJ2dV8eSYrBze2n2IbVdj6uR6DZ3nfD1ZNqJ/tTal8jbF5eUUyssoKiujuKycorIy9VROsXpedb2wSluxvHJb1X0yi4uf6Gw/HbGYYa3ceSkogI5OlR3qpxKSmHfqHJuirtd5FmkTYyOGq60bKt7joPqfHo9XZfRuriL0ikTga2tDTzdnero508mpKfpSabVzRqSkceBGPAdibnIsLrFBdNj9F06mJkxr68PkAG9sjQwBlWi642oMi0LD2X/jplY6lEx0ZfRp3oyBHq70c3fVFNEEVaG57Vdj+OTgcS6nZ9Z/cA9IK2tL1owehJetNUrlbb4OOcUXR05o1VJImwjibi3wNIm7AN49u9L3xenYu6sKfhVkZXNo+WqOb9hIWSMZMmTp6EC7YQMpk8s5sX4j8sJCrK1NsbU1qzHZ3LFuZWWisVF4WK5dS2T9uhDWrw/hypX69cB1dLRmydI59OnjD8CxY1FMnfIL16/Xb1EGf383pkzpxfgJ3TA3rxTHDh4MJyY6GVMzI0xNDTAzM8TU1FA9N6gmjD8OpaVl5OQUaMTfigzh3BpthXddLyxsnP6Xenoy1q1/k6FDg1Aqlbz04kIWLtz1yOdzcbFlx86PadXKkdzcQkYM/4pDhyJqMeKHx9zcij+W7cTY2JR5C75i4+Y/Hut8Ls7N8fcLws+vPX4+7TAxMau2PS8vh7CIM0REnCUl9VY1Ebc+7QUkEh08WnjVidgrkejQooUnvj7t8PVui5dXG4wMjavtU1xcxMWo80REnCU84gxXrkY8kshlb+eAn2979etoX8POQS6Xc/lKuMbGIepyGHJ5KcOHd+DnX6bj6KjKGC4oKMbISB+lUskvP2/lww9XU1TUOH6b6gpHR1cGDRhN397DMTVVifFKpRK5vFSTaa5QKDh3/gS792zk2IkDT533uUcLb6ZNeY22bToBqvf1P5v+YMPfy6p1wJiamtO92wD69BpGq5Y+mvb8/FwOHdnF3n1buBTVOIvgPakYyqQ87+fFS0EBuFuq3v/lCiUbo67yy8lznK3FQn9WBvoqAbdJpZjramF2132T8grQ05FgYXD/0R5lCgW38gpIyM1TT/nE5VQux+fmUXgPj1I9HR1ebO/PW13aY64WuQ/eiOO9fSGcT3o6O3R0xGLcLMyqCb6tbSzxsLLQCN93kl+qKpR0KS1DI/hGpWc8lJ+ohYU1WVmqorVWBvp81rMzUwJ8EItFFMrL+CbkFD+fPEtpA6lpoC3eCW7P212CNMUS65LozGyO3Ezg8I14jtxMIKWg8Xk034mlgT5T23jzQqCfxotcXq7gn0tXmXf6fK1+5z0MTU2MKjN6q4jNFUJvcn4h3Zo5YWNU/R42MS+fA2qbhYOxcY1WkJdKxAxr6c6MQD+6NnPUtMdk5bD0bDgrL1ys89ETLmamDPRwZZBHc4JdHKoVnMssKmb39RvsuHqDvdGx5NXjiJLHQV+qw4/9ujOtrapTPuRmAs//s+OxLUAaI4K4Wws8beIugEgsxq9vT/rOnoa1ixMAeekZHFj6Byf//hdFA+1BcwsMIPi5MbTu2lmTKVpSUMiRP9Zy5M/1lD5ApV2xWIyVlUml+GtjWkUINq8uDNuYkpSUxV8bjrJuXQhhYdr36Zs2rQ8//DhVk8X73rur+PXXbXU6hNvCwpgJE7oxeUov/PxcNe3x8emsXLGflSsP3Dd7WVdXiqmp4V2E30oB2MzMEJN7tZsYPHB28H9RXq5QC753ZAirxeHs7AL27LnA2bPXH/tatYW5uRFbt31Ip06tKSmRM2H8D2zefLJWzrt5y/sEB3shl5cxbepvrF59qBYifnQGDXiG11/7nOLiQiZNHUhaevIDH9u0qTMBfkEqgdGvPRbmVtW2FxYWEBEZyoWwU1wIO03MjSsN0ibkQcXeCjE2LPw0N2JVYq9UKqNVSx98vAPx9QnEs7V/jWMLCvO5ePGcOjP3DNeuR6FQ1P6QySb2jmqxVyX4WlvbVdteVlaKWJKDq5sOZuZFZGTG8vLLCzlz5hpzf5rG88/3ACAmJpkZ0+dpvfOhvpHJdOka3I+B/Ufj6xOoaU9PT2HXno3s3PUPuXk5dA3uS/++I/D1aafZJy8vh4OHd7BrzyauXbuojfDrDScnV6ZOepXgLn0BVcb4th0bWL12IdnZ/12My8nJlT69htK759BqnRGJiXHs3f8v+/b/S3JKwy1m+rQhFokY0MKVOUFt6O7qpGk/GZ/IryfPseXK9YfK9rE3NqyWjevfxFYjpNxJTFYOYcmpXEhO5UJSGmEpaaSr7zmNZFIcTU1wNDXG0dQEZ7PKZUdTExxMjKo9gN+LzKLiGsJvuVLJqx3bauKKSEnjvX0h7I2++cCv82lCIhbhZm5GaxsrWttY4mljRWtrq//M9K3w9K3I8r2kFn6rioQ+3m15YfqbtG7lR/iFU+Qf+5sXWrtoMsrXRUTx3r6QOi081RiRiEXo6+hgIJWqJx301XNDWc22e+2jX2Wbal21bKGvp7FuqeBKeiaHYxM4EqsSe2vTrqCu8ba14sX2AYzzaaXJdk0tKGTJ2XAWh4Y3KOHawcRYk9Hbwam6TVd+qZyQmwnsj7nJwRvxDTpz9FFpaWXB9EBfnvP11HwPlJaXs/HSNRaFhnEyoXaSr8QiEYFN7RjcsjkDW7jhaVv92eZqeibbr91g+5VoTt1KatQZr2O8WrJgSB+MdWVkFBYxZfMudl+P1XZY9Yog7tYCT6O4W4FYIqHNoL70njkVSwfVkNrs5BT2LVpB6L87UDaAnmcdmYyAAX3o8uwzNPGo9M67fPQEJlZWNG3VAoDC7BwOLl/N8fX/NJoM5EfFyUmVxdu7tyqL9+jRS0yZ/AsxMQ8uhN0PsVhM795+TJ7Sm6FD26Orq7rJKCmRs3nzSVYs38/BgxH1Zg0hEokwMTHA1NRAI/xWTHeum9xje1Wf5Ptx6FAE3327kT17ztfhq7o/jo7W7Nr9Ca1bO5GdXcDQIZ9z7Fjt+dHq6kpZvuIVxo3rCsCHH/zJl1/+VWvnf1hEIhG/zF2Dt1cbjp88yAcfzbrnvrY2TfDza0+AXxD+fkE1xMOSkmIiL50jLOw0F8JOcfXapVq1eqgvKrJv/XxUGbHeXgHo6xtW2yc3L5ukxHjc3Foik+nW2BYRcZaISJXNQsyNK1qxdGnSxAk/33a08e9Ap47B6OpWF1Hk8lIuRYVx9dpFFIoyXF3t6devDSYmKnE6PDyWw4cjKS0tQ4R6OLRIVHWmXla31dincqeiogIuXrrAxUvnKS5uOA9LAM1cWjBowGh69xqKsbGqmIdCoeDUmSNs37GBM6FH7/o+bmLvSN8+I+jbZ1g1i4wbsVfZvXcz+/dvJTvnyXnAsrG2Z9Lzc+jTexgSiQSlUsm+/f+y8s95pDykICsSifDzbU+f3kPp2qVvtc9XeEQoe/dv4ciR3RQWCcJNQ8HXzpqXgtow1rulJlPzZnYuy8OvsC8tHz1TS27cuKoR551MTTQCboWga2dsWOO8SuVtrmdmcSE5TSXkJqcSlpymqdD+KIhFIuyNDXE0NcFJLfo6mZngVEUQrsjIvRfxOXl8evA4ayKiGoQfZWNDRyzG3dKc1taWGuG3QvS9l6dvVlExN/KK0LFrhkkzT4oMzBErFbjcPI1BcQ4AFzOyeXHLrloTcgQeDhNdGZ2dHejazIluLo742tnUKMwXmZLO4ZvxHIlNIORmwmN9lusCHbGYAS1ceSkogG7NKjutzielMO/Uef66eBW5omHfuzqYGDOstTsmujKOxCZwJjGZsoesbdNYMZBKecbbgxfa+tGmaeVzSGRKOovPhrM2IuqhPdkNZVJ6u7kw0MON/u6u1TKhyxVKjsXfYsfVGHZcjSE6K6e2XkqDoLmFGWtGD9Z4M/94PJQP9x9tFEXsagNB3K0FnmZxtwKJjg7thg+m1wuTMLO1ASAj4RZ7f1/O+R17uK2FD5SxlSUdx4ygw+hhGFtaAFBaVMzZrTs5uuYv0m/GIxKJ8O7dnf4vzcCmmTMAuWnp7F+8ktMbt6J4wg38Z8zox/c/TMbY2ICiolLefecP5s3b/ljZiK6udkye3IvnJ/bQDJMGOHcumhXL97FuXQjZ2Y3zAdfAQPcuYnCljYSZmSEuzewYPjxIIwSHh8fy/Xcb2bDh6EMX4XtcPD2d2LX7UxwcrLh1K4P+/T6uE29ckUjEV189z9vvjAJg6ZI9zJ79O+Va6txxdnJjycItSKUyPv50DiHH9gKq4ZD+vu3x91dl5zZt4lTtOLlcTtTlC1xQi7mPai/Q0Lmf2JuVlU5EpDqrNyKUuLjoBpOh3L27D/MXzMLDw4HiYimnTmRyLjQXV1dvrCxt6j0ehaKca9ejNFnMkRfPPbSHcm2gp6dP964DGDhgNJ6t/TXtKSm32LHrH3bv2UhG5oNVwBaLxfj7BdG/7wg6d+qNrq5KNKrwl921ZyOnTh+pk2zt+sDMzIIJ42YyZNA4ZDIZAMeO72fZyp+5efPxR1zo6enTuVNv+vQeShv/jpoRI3J5KcdPHGDvvi2EnjveaP9+jR1DAyPs7B2ws22KvZ0D7k2a0sfakDbiAvSUqu97hVhKqo07SokURdJ1zErzMJXV7NxVKJVcTs+sFHKTUglPSaPgHvYIdYmxrqya2FshAtsYGbA/Jo4Fpy8IRanqAJlEQgtLc5XYa2OlEX/dLMxqZIRWRa6jR7xzIEmWbuzau5k/Vv32wN/RAnWHub4eXZwd6NrMkW4uTnjbVS8Qq1TeJjwljcNqG4dj8bfqpRiihb4ezczNcDU3pZmFKc3MzWhmboqLmSlOpiaaDoZyhZLNl68x79R5ocOgEdKmiR0vBPryjFdLDNSWJPmlctZFRLE4NJyI1PR7HutgYsxADzcGerjRvZljNXuZnOIS9kTHsuNqDLuvxza4DoraRiaR8E2frrwUFADA6YQkBq/e+MS/bhDE3VpBEHcr0ZHJ6DB6GD2mPY+JlarKYlpsHHvmLyF878F6EQiatmpB8LNj8evfCx31kJTs5BSOrf2H05u2UnyXAhoVGch9Zk3DoqlqaGXmrST2/r6Mc9t3a0Wcri+cnW1YuuxlevZU+dQcOXKRqVN+4caNB/djMjDQZeTIjkye0ptu3bw17ZmZeaxZfZgVK/YTHv70DItwcLDitdeGMn1GX4yMVF56N2+mMvfHLSxbto/i4rr/cenSxZN/t36AmZkRly7F07/fx9y69d9DjB+XWbMG8OtvM5BIJOzefY5nRn9LQYF2hrNNnvgKzz87m4zMNI4f34+fX3ucndyq7aNQlKsLdqnE3EtRdy/89aRTIfY2sXPk2vVLJNxqeJ9VW1szfvhxKhMmdAMgJSWb1/+3jHXrjmj2cWjqgp9vO5yq/p/VvzlNmlrSp4+fxuf7ypVbHDwYTlGRXLPP7Sq3ORW/VZW/WdXXLS1t8PVpRxP7Ss80UPnYRsdc1oi9EZFnyc+vu0JF7s1bM3DAM/TqMVhT4K+8vIwTJw+yfedfnDt/4rGyrA0NjenRbQD9+o6gdSs/TXt2dib7D2xl155NxN5sHEXrDAwMeWbUFEaPnIyBgaoz4/yFUyxdMZfLl8Pr5JpWljb07DGYvr2H0axZC017VnYGBw5uZ+++LUTHXK6Taz+t6OnpY2fbVDXZO2BvpxJy7dTzO73TKxApy7FOj6FJciSGRdk1tisRcatUwbHoG5yMvcmF5FQiU9MpLhMEU4FKjI1NGT/2BUYNGYeJohjDomzSr5ylKOEqzYz1sTY04I8LF1kVk8Izz86hU8eeAJSWlrBpy5+sXb+YgoK6Kdwm8PBYGejT1cVRldnbzJGW1pbVtpcrlJxPTuVIbDyHYxM4Hv9oxb1kEgkuZiY0MzfDxdyUZuamKiFXLeKa6P133ZGMwiKWn49k4ZmweisUKVB3mOnp8qyfJy+09cWjynvuZHwii0PD+SdKlY0dYG/HIA83Bnm44WtfPcEhOjObHddU2bnH4hKfmszVqgxr5c7ioX05kZDE8LWbtFK0rr4RxN1aQBB3ayLT16PT2JF0n/wshuZmACRdi2bP/CVcPBhS69cTicV4de9Cl+fG4NamMmsp9kIEIas3cPHAEZQPMCRFIpUSNHIIvWZMwsRa5UmTeuMmu+cvIXLfoQaTvVbbiEQiXnihH999PxkjI30KC0t45+2VLFiw8z9fc/v2HkyZ0osxY4M1Q5+VSiV79lxgxfJ9bN16Grn86X3wMTc3YvbsAcx5eTA2NmYAZGTkMe+3bcybt4OsrLr5vhgxoiOr17yOnp6Mo0cvMWzoF/WWLT1oUCDr1r+FoaEeFy7EMGjgZyQnZ9XLtasilcpYuXQ7TZo4a9qUSiXR0VGcV2fmRl481+CG1AtURywWM3NmP7748jnMzIxQKpUsmL+DDz9cQ27uw/3v9PRkfPTRWN54cwQ6OhIyM/N49ZUlrFlz+JHjs7a2UxWb81F5FDs6NKuxT8yNq4RHnCE8IpSIyFBych7v82BgYEjP7oMYNOAZWrTw0rQnJsaxfdff7Nm7+b5esY+Cs5Mb/fqMoHevIVhWyZK+eu0iu/ds5MChHXUqZD8qMpkuQ4eMZ8LYFzTF5K5eu8iSZT9y7vyJeoujuVsr+vQeRs8eg6r5ed+Ivcreff+y/+A2Mhtx5p5IJMKjhRdtAjpiZGiCQlmOQqFEoShHoVSgUChQKMpRKhTV1lVzBcq7tCkU5SiVyiptqrnythILc6tqoq29nQN2dg6Ym1veN9bs7ExSUhNJSblFSmoiySm3SEmpXO/iaMezvp7clsoQ27nh2KYHOnau3BZLVBYnpw+zdft6zp47phWLGoGGh0ymy4hhzzF+7AyNHU5Y+GkWLfmeK1cj73mcl2cA06e+jo93W0BVmHHthiVs2rwKufzJzzJrbNgZGarFXpXgW1GgsYIyhYLQxBQOx8ZzODaeUwnJmox5WyODyuzbisxbtZDb1Ni4hh3EndzKzSc2O4fY7Fxu5uQSm5XLDfV6amHhUyFcPY10dXHkhUA/hrZqrvFezywqRq5QYG9cWZhcoVRyKiGJ7Wq7hSsZ9f/s1RBxMTOlQC5vVN7Zj4Mg7tYCgrh7b3QNDejy7Bi6PT8OfRNVhfX4i1Hsmb+EK8dOPfb59YyNaD98MJ3GjdJ4/irKygnbs5+jq/8i4dKjZcRI9XTpPG4U3ac8h6GZ6ibtVtRVds1bxJWjj1+IqqHi4mLLsuUv0727qgL4oUMRTJ3ya7ViZzY2Zjz3XHcmT+lF69aVw9pjYpJZsXw/q1YdrPMM0caGnp6MSZN68vobw3FzU2WGFxaWsGzpXubO3UJ8/L2H2Twss2YN4Ld5LyAWi9m8+SQTxv9ASUn9Vjtt29adbds/xNbWnPj4dAb0/4SoqNq3g7gTqVSHoCAP+vTxp3cffzxaeBF3wxqZbjFXr4fx14bNbN4SUu9/D4FHo02b5iz4fTaBgSqv9NDQ68yaOZ/z52Me67wBAW4sXfayprjjjh2hzJq5oFa+tywtbfDxbqsRfF2cm9fY52ZctCazNzwiVFM5/X60aunDoAFj6N5tgKbInVwu59jxfWzf+Rdh4afrpQNSLJbQLrAL/fuOoENQd6RSmSaWEycPsGvPJi6EnaB3bz+en9gTPT0pq/44yNatp+vVqkUsltC/7wgmPveSxk87Pv4Gy1b+TMjRPfUWx51IJDoEtulEn97D6NSxp8bjWqFQcPHSec5fOElY+GkuXwlv8LYwZmYWtG3TmfaBwbRt0wkzMwtthwSoBLJktVCbohZuK9cTKSl5uErrOjpSOnfsxeBBYwnwD9K0JyffYvvODezavfGJ8qMWeHDEYjF9ew9n8sSXNd8zMTeusnjpD5wJffBklqD23Zg+9X+4NvMAID0jlT9W/cauPZsapdf/04KDiTHd1EJvVxdHXMxNq20vLS8nLicPBxNjzTD7e5FfKteItzeyc4nNzuFmdq5GzC1tAHVsBLSHnZEhkwO8mdrGByczVc2J/FI5e9V2C7uux5L5lAiYAvdGEHdrAUHcvT/6JsZ0nTiOLhOeQc9QNRwy9kIEu+ctJvrMuYc+n5WTA10mPEPgsIHoGqgecguzczjx92ZOrN9EXnrtiIt6RoZ0fX4cwc+PrYz7fDg7f1vEjbMXauUaDQ2RSMTs2QP45ttJGBrqUVBQzNtvreTWrQwmT+nNwIFtNX6yRUWl/P33MVYs38/Ro5ee2Mzm2kIiETNyZEfeensUAQGqoePl5QrWrw/h++82ERl587HO//nnz/L+B2MAWLRwFy++uFBrWUUuLrbs3PUJLVs6kJNTwMgRX3PoUEStX8fdvYlGzO3e3RtjY4Nq29PScjRZ0wB5eUVs2XKKDetD2LcvTGu+wA+Cj48LAwcGMmBgW1q2dODgwQjWrjnCrl1nn+iMeFNTQ7744llmzR6AWCwmJ6eA99/7k0WLdtfa+1lHR8Kbb47go4/HoasrJS+viHfeXsmiRbtr9XvMzMwCH+9A/HxVYm/Fg3tVEm7FqsVeleCbnl5piWNkZEKvnoMZNGAMbq6Vx8bH32D7zg3s2fcveXk1h5DXFyYm5vTuOZh+fUfQ3K2Vpl2iI6eJQwF29rkYGKoEysTETBYv2s2SJXtISam7mEUiEV279GPypFdwclRlUqemJfHHqnns2belQQklhobGdAvuR5/ewzSZexU0xIKOYrGYVi19aRfYhXaBwbRw99R4CgMUFOZz/vwJklNuIRZLkEgkSCQ66rkESZU2cbX1yv1qHCeWqPaVSJCIK8+Vm5dNckoiqSm3NMJtRQZuXfpeOzq6MnjAM/TtM1xj8VBeXsax4/vZun09F8IeP3FBoHHQIag7M6a+jouLqgMyJTWR5St/4cDBbY/0WyUWi+nVYzCTJ72CnW1TQPVdv3TFXI4e21ersQvUDS5mpiq/3maOdHVxwsHUWLNNoVQSn5uvFmxVIm5sdo5ayM0VhLl6wMrSBoVSWSejm+oLsUhEt2YqS7BjcYkNvljef2FlaUNJaYlgRVOLCOJuLSCIuw+OobkZ3Sc/S+dxo5Cq/YOunz7L7nlLuBl2f+HHvX1bujw7hlbBlUVKkq/HcHT1Bs7t2Et5ad0MYTI0M6X7lOeqxX31xGl2/brokbODGzqurnYsW/4KXbt61dh28uQVVizfx4YNR8nPF25GHoVevfx46+2R9Orlp2nbufMs3327kZCQiw91LolEzKJFLzJlah8APv5oDZ9/vr42w30kzM2N2PLvB3Tp4olcXsbUKb8+1hB4ADMzQ3r08NUIus2a2Vbbnp6ey969F9i39wL794eRlJSFn58r48YFM2ZsME5OlcUxMjPz2PjPCdatO8LRo1FaH15rYKBLz56+DBwYSP8BbaoVJKxKTk4BG/85wdq1Rzhy5KLW465Nxo/vyg8/TsXOTjXUcfXqQ7z5xnJSU3Pq5HotWzqwZOkcOnVqDag8x2dM/43r1+umEImJiTk+3m00mb1uri2riWMASckJhEecQSKW0DW4n6agmVxeyuGQ3WzfsYHIiw/fKVpX6OpKGTGiI1OnjsLJIZDUFBPKyySa7UXFGVhZyTA0FCGVKRBLyoiKus7u3Sc5fTqCnJxscnKzyMvLobz88TJVA9t2YdqU12jh7glATk4Wq9cuZOv2dZSVNeyMfVvbpgS26YSfX3v8/YKqWTcAFBYWEBEZyoWwU1wIO03MjSv10qFqbm6lEnPbdqFtm041PGuvR0dxJvQoZ0JDuBQV9tQUipPJdOkW3I/Bg8bi5RmgaY9PiGX7jvXs2buFvPwc7QX4hKCnZ0CAfxAeLbxJTLxJ5MVzJKfc0mpMnq39mTHtDU2HTG5eNmvWLmTL1rW18j0jlUoZMmg8z02YpbGSibocxuKlPxIeceaxzy9Qf7hbmtPUxIj4nDzic/Mbpe+pnp4+To6u6Onpk5AQ2yhGKYhEIpo2cca9eSvc3T1p3rwV7m6tNaNLrl67yImTBzlx8qDge1+PSCQ6eHn6E9SuG0FB3XBxbo5SqST25nUiIkOJiDhLxMWzDzyiTaAmgrhbCwji7sNjbGVJz2nP02H0MHTU1aovHzvJ7t8WcyvqSrV9dXR1CRjQh+DnxmDvXlkoJ+rIcUJWb+D6qdB6i9vExppe0ycSNHIoEnX2auSBI+yet5iU6Bv1Fkd9IRKJePHFgXz9zUQKCor5c9UhVqzYz+XLCdoO7YkhIMCNt94exciRHZCovZROnbrCd99u5N9/7z/MWl9fl/Ub3mLw4HYoFApmzVzA0qV76yP0B0JXV8rKP15jzJguAHzw/p989dVfD3y8RCKmfftKq4V27dw1fycAubyMY8ei2Lc3jL17LxAWduOefzORSERQkAfjxgUz+pnO2NpWeqUlJWXy14ZjrF8fwpkz9VcgqlkzW012brdu3ujpyTTbiopKOXAgnJ07Qrl0KZ4hQ9ozdlwwDg6Vok9iYiYb1oewdu2Rx7Yr0CYeHg7Mmz9TU9jxypVbvDj79zrJ9r6Tiu+5r75+HiMjfYqLS/nk47XMnbsFhaJuH8SMjEzw9mqj9uxth3vz1tXe36DyZN2+4y/2HdjaoLIbfH2bMXVqbyY8211TqE6pVLJ3bziHD2ZgYeZJ2zZdarye/6KgII+c3CxycrLIzcshNydLtZ6bRV5utnpbNrl52eTkZGmG17du5cf0qf/Dz7c9oBJC//pnOf9sWklRUeP01XZxbq4Rev182tUQVXPzsgmPUIu9F04RF187n3+xWIJnaz/atwsmsG0XjVBeQX5+LmfPHed0aAihZ48JD2GAm6sHgweOpXevoZpifXJ5KYeP7GLr9vVcinoyR3rVFc5ObrRrF0z7wGC8vdoik8mqbU/PSOXixXNEqqcbsVfrpZPTycmVaZP/R5fOvQFVdv3GzX+wbsPSOskWNzQw4pnRUxk9cpLGiuf0mRCWLP+RmJgr9zm6bpBKZTRzccfGxp68vByyszPJys6o02x5gfrBwMAQZyc3nJ2b4+zUHBdnN5ydmmNv71Btv/z8XOITbqinWBLiVctJyQla6dzT0ZHi7OyGe/PWmsnNtaXmu7gqCkU5IpG4Wqd6aloSJ08d4sTJg4SFn27wdkiNDRMTc9oFdqFD+24Etu2s8SQHlR3V3e4RbyXeJDLyHOGRoUREhGq9Q68xIYi7tYAg7j46Zna29JoxiXbDBmnE0osHj7B7/hIKs3PpOHYEHUYNw8hCJcKUFhURumUHR9f+TUac9gRGC4cm9Jk5lTaD+iKWSFAqlVzYuZc9C5aRmfDkfQHp6+sil5fVudDxNOPmZs/rrw9j0uReGoHvypVb/PD9JlavPnTXYfiWliZs3fYhHTq0pLi4lLFjvmPbtoaX1SESifjmm4m8+dZIAJYs3s3s2b/f8/3UrJmtRszt2dMXU9PqN2hRUfHs23uBvXsvcOTIRYqKHj5jXyIR07WrF+PGdWXEyI4acQrgxo0UNqwPYf36o49tlXEnOjoSOndurRF0W7VyrLY9NjaVnTtC2bHjLIcPR9bwBxaJRHTp4smECV0ZNbpztbivXLnFurVHWLfuCNHRybUad12hpyfj/fef4c23RiCTSSkuLuXLL/7ihx821bv1hLOzDYsWv0SfPqqinOfORTN1yi9ERNystxgMDAzx8lSJvbq6ehw4tJ3Ll8Pr7fr3w9TUkHHjgpk6rQ9t2lT6CcfFpbFi+T5WrjxQzUPc3NyKZi7umJlZYGZqgampOa6uzvj4eNDE3h6lUkqZXEJZmQTVrebDUVpaQl5+LtZWqgx+ubyUf7euZc36ReTmas+uorYRi8W4NvPA3z+IAL8gfLwDazy4ZmWlcyH8NBcunOJC+GmSkh7c59zK0oZ2gcG0C+yiKohmZFJt+9VrFzl9JoQzoSFcvhKhdXuIhoq+viE9uw9kyOBxuDdvrWmPuXGVbdvXs+/Av/XW2aCnZ4CZmQXGRiakpiY16CxifX1DAvyDNO/BCkuCCpKSE4iMPEvTps54tPDS+HxXUFhYwKWoCxqx9/KV8FotRmZlacPE5+fQv+9IJBJVUb1dezbyx6rfyKiHIojm5lY8N2EWgweOQUdH5du6/8A2lq/8uU5FDysrW9xcPXBzbYmreu7o4IJEolNjX7lcTk5OJtk5mWRnZ2hE35ycTLKzM8nOySArW7UtLy9HsHHTIsbGpioRVy3kVoi4Njb29zwmKzuD0pISbG2b1BhtVEF5eRmJSfEkJMRWEX9vEB9/o9bEfz09fdxcW6oycpurMnJdnN1rdACB6v4g5sYVrkdfJjo6iuvRl4m9eQ1DAyOC2nejY4cetG3TCT09fc0xRUWFhJ49yomTBzl1JkSrtleNGddmHgS170qHoO60aulbTcDNzc3m9JkjnDp9mDNnjyGTyvD2aoOPTyDeXm1o7taqxnssPSOViMhQjeAbFxctfIfcA0HcrQUEcffxsXRoSu+ZUzRiKagKo1UIvlmJyRxb+zenN2+jJL9Am6FWw9bVhb4vTse3Tw8AFOXlnNm8nX2LlpObKmSzCDw8NjZmvPzyYGbNHqAR7pKSMvnl560sXLhLY4Ph7GzDrt2f0rKlA1lZ+Qwe9BknT2onk+NBmT17AL/8OgOJRMKuXecY88y3FBQUY2JiQPfuPmpB14/mzZtUOy4zM499+8LYt/cC+/aF1XrBPqlUh759/RkzNpihQ9tjZFR5oxcVFc/6dSGsXx/yyIKpjY0Z/fu3YcDAtvTp419NrC4vV3DsWJRG0H2YrHiZTIe+fQMYP6EbQ4a0Q19fV7PtzJlrrF1zmA0bjtaZpcHj0r9/G36bNxNXV1URmh07Qnl5ziJiY1Pvc2TdMnFiT+b+NA1zcyPKysr59pt/+OKLDU+0z/H9CA72YsrU3owe3UnzPpPLy9i8+RTLl+3jwIHwh86cMzEx4PnnezBr9gBatnSkvExMWZmEM2fi2L3rIleupGNsbIaZaYUwbIapetnMzEJTiAxU2R+7927ijz/nVfMsflKRSHRo0cKTAL8g/Hzb4+3VRmPfUUFqWpLGr/dC2GnS0iu/v3R0pHh5Bmi8c6v6OYPq4evsuWOcDj1K6Nmj5OQIVbcflpYe3gwZNI7u3QZoxIPi4kIOHNzO1u3ruR4d9cDnEoslmJqYYWpqjqm6k8TU1FzTYWJmao5JxbqJeY3PB6jeD9HRl4mOucz16Ciioy+TmlY39jMPgouLO+0Dg2kXGIy3V0A1wVYuLyUs/AxnQkM4fSaEW4k3NdtkMl1atfTBy6sN3p5t8PT0x8jQuNq5y8rkXLt+iciL54m8eJaLF88/krhtaGjMuDHTGDl8ouZ/ePTYPpaumEt8fP2P1mvSxIkpk16hZ/dBgOp1btuxgT/XLHisz2hFNm6FgKsSc1tgamJ+1/1zc7NJSorHyNgEc3OrGn//+6FQlJOToxqhkZWjEoIrBOHs7Ay1QKwSivPysoVMykfE1NQcF3UWrrOzm3rZDUtLm3sek56RSlxcNHHxMcTFRXMzLpq4+BsakVMqleHQ1AUnJ1ecHCumZjg6umqyy+9GVla6JtM3Pr5S+E1LS7qnSGdibKayU2jeGnf31ri7tcbBweWu4nJBQR7XrkcRHROlEXPjE2Lv2xEpk+kS4BdExw496NChB1ZV/jYVRU4rsnoTbsX+57meZir+jkHtVXYLtjbVn+OiYy5z6vRhTp46zJWrEf95v2hoYISnZ4C6OHHgXTv0cvOyuXjxvDqz9yzXo6OETmc1grhbCwjibu1h08yZPrOm4t9fNeTpxrkwQlZv4NKhoygbsGG4Q2sP+s15gVadOwBQVlrKib82c3DpKgqyhF4/gYfHyEifGTP68uprQzXD8HNzC1n4+y727w/jj1Wv0aSJJfHx6fTr+xFXrjSOjPHBg9uxbv1bGBjoEhl5k9zcIoKCPNDRqezVLSsr58SJK5rs3PPnY+rNV9bAQJeBAwMZM7YLAwa0rWaTcO5cNOvXhbBhw9H/FJhFIhEBAW4MHNiWAQMDadeuRbXtaWk57Np1jp07zrJ37wVycx8/k8vISJ9hw4IYN74rvXv7af6eCoWCgwcjWLf2CJs2nSQv7+GqxNcFDg5W/PTzdEaO7AhAQkI6r7y8mC1bGk4hIltbM+bNn6WJMSoqnunTfmvwHSi1iZ2dORMn9mTylF60aFGZSXfxYhzLlu5l9erDZGbWjk1E9+4+zH5xIEOHtte8d5OSMlm6ZC+LF+8mKammcFGRmWhmak5mVvpTIereC6lUSutWfvj5qmwcWrfyrfEwlJgYx4Xw05iamNMmoGO1zF+lUsmVqxEa79yr154sL29tYmRkQp9eQxk8aCwuzpXZ7pevRLB95wYyM9MwNTHH1KxSmK2Ym5iohds7LDkelNLSEgoL87GwuLt/e15eDtExFYLvgwsij4KBgSFtAjrSrq2qQ+HOLMHExDhOh6qyw8PCz1BaWvJA5xWLxTRr1gJvtdjr7d1Wk8lflZtx0URGniXy0nkiL54j5T8yXqVSKcOGTGDC+JkagTPy4jkWLfn+oS02RCIRHh5NCQx0p127Fri62XPpYhzHj1/m+PEoMjIe/jvUvXlrpk/9H4FtVXZXxcWF/PXPCv76Z/l9M8MfJhtXoSgnPv4GN2KvEn3jKjduXCXmxhUy78hWlkplmJtZYm5uhbm5JRbqubm5VWW7mQXm5lYaD+GHobi4iLz8HPLycsjPzyUvL4e8/Fzy8rKrLOdUa8/Pz3sixR6xWIxMpodMpotMJkNXVw+ZVBdzcwu1iFuZiVvhL3s3UlITiYuLIS4+mri4GLWIG/PIGbYikQgrK1scHZrdIfy6Ym1td8/jSkqKuZV4UyP43r59WyPm3ikQVpCRmUZ0dFQ1Mfe/Ps8P8xrc3T3p1KEHHTv0qFYkFlR+6iqf3gNcigp7It9fD4O1tR1B7bvRoX03/P2CqmVAl5aWcO78CU6pM3Qf5/5M1aHni493W3y82+LZ2r9GR0JxcSEXoy4QGXmOiMhQLl+JqNXRG40JQdytBQRxt/axaGqPjkxGWmyctkN5KJoF+NL/5Rdwa6Ma1ltaVMSpf/7l/I69NbyEBQQeBKlUhwkTuvLmWyNrDOGPjLxJ/34f31X4aMgEBrqzbftH2NiYadquXr2lEXMPH75IQYH2C/WZmBgwbFgQY8cF06uXXzUB+ujRS2xYH8I//5wgLS0HY2N9evf2Z+DAtvQf0FZTEKyCc+ei2bnjLDt2hBIaer1OhxPZ2JgxenQnxo3vSseOlTenJSVytm8PZd3aI+zceZbS0vrLhtHRkWBpacyECd345NPxGBnpU16u4Oef/uXTT9dRWPhgD/L1zYgRHZk3fyZ2duYolUrm/bad99//s8HG+7hIJGIGDGjLlKm9GTgwUPOez88vYv26EJYt21enntRNm1oyfXpfps/oi7296sG0vFzB5s0n+X3BTg4fjqyzaz9J6Onp49naH3+/IPz92uPRwruGr112diahZ49yJvQooeeOC8NP6wEf77YMGTSW4C59a4jv90OpVJKfn0uu2ns6Nzeb3Nwsjf90bl6Oep5NrnpeUqL6HTUwMFQPZW5N8+ataO7WChfn5neNobS0hBs3rnJdLfpGR0dxI/baA4utVXFt5qH2zu2Cl2eAxlKg4joXwk9z5kwIp0NDHspG5H7Y2Tmoxd4AvL3bVhPVK0jPSFWLvSorh9hY1fdazx6DmTLxZezsVD6jN29eZ8nyuZw4efCBru3oaK0Wct1pG+hO27bumJjcO6Px6tVbnDh+WS32Xubq1QcXqfz9gpg+9XVatfQBKgpI/s7W7esA0UNn48bcuEJMzBViYq8SE3OFuPiYWi9EKZHoYGZmoRF9LcwrRWEzM0uVOGymWjc1tXgoz/Y7KSjII7eqIJyXU0MkLixSjQYViUSIEIFIvaxZr1wWibhjvep2NOe5cx+VIKuLTFcPmVSmFmZ1VcKsTIZMWmVZpotMqt5Xva5bRcyt+hm6H0qlkuSUW3dk4sYQn3CD4uL686I3MDDEwaFZtUxfJ0dXmjZ1uaudQlUSE+NU30UVYm50VL0VdLO1aUKHIJV9g59v+2rfl7l52Zw+fYTjJw8SevZYvf49tYVYLKalhw8dgrrRoX133NxaVtuempbEqVOHOXn6EBfCTteZuCqR6ODevBU+3oEqKwfPgBodoHK5nKvXIlVF2iLPcenSec1n/UlHEHdrAUHcFbgTj47t6f/yCzh6VgorGfG3CNu9n7A9+0m+1ngLHwloB5FIxKBBgbz19kg6dWrNkSMXGTb0i1rJ+tQGLi62vPzyYJV/7r4w4uLq3rfucbCyMmHkyI6MHdeVLl1aa4aFKRQKIiPjaN3aEZms8qY7P7+IffvC2LnjLDt3niUlRTvCSbNmtowb15XxE7rSurWTpj03t5BNG0+wZs1hDh9+uCw9kUiEmZkhVlYmWFmZYG1tqlm2sjLBssqyarsJZmZG1c5x7FgUs2ct4OLFht+BZ25uxA8/TmXy5F6Ayhf5nbdXkpSUhUKhoLxciUKhRKFQqOdKyssrlx+kTdveYc2b2zNlSm+en9iDJk0sNe3Hj0exbOle/v77eL0K2lKpDsOGBTH7xYF07eqlaY+Kiuf3BTtZteqgxqKmMaOvr4upqQEmJgaYmhogVVtR3b59Wz1VLqva/2vb7RrbK9p1dQ1o7uZNc1cvSuXFXL5yjqTkGMRiERKJWDOXSCR3rFdOYvH91kWa9pSUbCIjb3LjRqqQAXwXzMws6NdnBN279geRSC3IVhYKzFWLtzlV5rWdiSiVSnF2aq4RfP+7CJGChIQbquzemMuabLn8/Nxq+xkaGKmyc9sF065tlxoZewm3YjkTepTTZ0IIjzhTb5lVJibmeHn6qzN729DC3bOGsF1QmE9eXg5N7FWd6OnpKaz441f27Ntyz7+7hYWxJiO3rVrQrVqotYLCwhLOn4/hbOh1oqOT8fVtRsdOrfDycq6xb3p6LidOXObE8cscOxbFuXPR97UECu7Sl6mTX8PJsRmgKnhlYGD4WNm4DQGRSISBgRGmJmaYmJhhbGyGqYkZxsammKjbTIwrtqnaTE3ManiGP6mUlcmRy+XI5aXkF+SpRdzKTNyEW7GP1ClTX4jFEuzsmlaKvk6uSCQSoqOvEB2jso5pKIKcgYEhgW270DGoO+3bd63WSSKXywmPOK3O6j1UzQKpsWNoaEy7tp0Jat+NdoHB1bLBFQoFUZfDNHYLsTfrrxh1VUQiES7O7prMXh+fwGr2GqDq6Bkyop3W77XrA0HcrQUEcVfgXrQK7kTbwf1o3bUzMv1KP7zUGzdVQu/u/Y0uO1lA+zg5WXPrVqbw0Kwlmja15JlnOjNmbHA1y4Vr1xI12blHj15qcB6tPj4uTJjQjbHjgnF0rBymm5ycxYb1R9m+/QwymbSaMFsh1lpbV1m3NH6kbBqFQkF8fAZffL6elSsPNLqbrN69/Vm0+EVcXGoO+a0NKoTeinlZWTklJWWUlMgpKSmjuLi02rpqLqekWH5HW+W24uI79lUvF6uPadvWnSlTe9Otm7cmjrS0HFb9cZDly/c1CLsXT08nZs8eyLPPdcPYWJUBV1BQzOo/D7FgwU6tdBBIpTpVRFlDTEz0qy2r5irB1vge7SYmBtVGAzyJFBWVculSPBcjbxIRcZPIyJtERsaRnp57/4PrEZFIhKOjFS1aNMXDoyktWjTF1c0Oubyc9LRcUlNzSEvLIe2O5ezsgkb3PfZfiEQimjRxwt2tUvBt3rwVFuZWd90/JTWR6OjLJCbF0dLDBy9P/2qCYklJMRfCTnEmNIQzoUdJStZeIeSq6Orq0dLDGy+vNvh4qYb5GhqqOiALCvJYs24Rm7b8WU18NjDQJSDArYqQ20LjF1+V8nIFERE3ORt6nTNnrhEaep2oqPi7FpA1NzeiQ4eWdOrUik6dWxMY6F7NOx9UI27Ono3m+LEojh+P4sSJK2Rl1XzWFIslDOg3konPz9EIG/WVjdvQEIslGBubaIRflQhsqhGIq64bGBjB7dvc5vZdOssq1qt3qFFl39vcVh2v2UaVNtWkVCoplZcgl5dqxFi5vKTKcimlpSXIy+5Yl8uRl6nW5aVVjle3Cc8A2kEsluDl6U9HtX2Do0OzatuvR0dx5UoEJSXFlJSWUFpaTElJCSUlRZSWllBSWqyalxRXrpeUUFxSTGlpMXJ5aa38rshkuhgYGKKvZ4C+viH6+gbo6xtgUGVZT9+w2rpqXwMMDAwxNDSmmYt7te/0/Pxczpw9yqnTRzgTerTBjvhpYu+Ij08gPl4qwTcxKZ6335um7bDqBUHcrQUEcVfgfsj09Wgd3Am//r1p2TkIqW7lzVvS1euE7T5A2O79ZN5K1GKUAgKNH1Nba5r5+9IswJdm/j7YNHMm6cp1rhw/xdUTp4mPjOJ2Ld4Qu7ra0a5dC86evf7IBdfqG5FIROfOrRk/viujRnfC0vLRslxycwtJT88lIyOPjIx8MjLyyMzIIyMjr0p75ZSTU9joH0YMDfX45JPx9B/QBh0diSZrseryvdsarpCnUCjYs+cCy5buZfv2UMrKGlbHBICxsT7PPdedWbMH4ulZmYUeEnKR3bvOASr7j8pJ9TfX0RFXaxdLxJrtFW0SibjacTXbJBgY6GoE2qpe3I+LUqkkL6+IvLxiSkvLEFUdFixSDfat3oa6rXK9cj9RtX3v1qZUqrLGlcrb1bLIK9r/q63yGMVd2pSaLHRnZxu8vJxqCFUVpKZmExkZR2QVwTcqKoHi4rrN5LSwMNaIty1aNMFdLeY2b25/z1j/i7KyctLTc6uIvrmkp+VoltPuWG5oHX4PiqWlDe5urXBr3gp3t1Y0b96apk2c7rpvfPwNjXdueERooxASK3x7mzZx5kLYKYqLC/D2dqFdO3cCA1X2Cp6eTnf9Dr969RahodcJPXOd0NBrhIXFUlLyaK9ZKtUhIMBNI/Z26tSqmn1VBZcvJ6jFXpVvb9V7D11dPdxcW5KaltQgs3G1ia6uFDs7c+ztzbG3t8DOzhwjIz3NZ7jic5qWlvvI/0OBpw9Hh2YaodeztX+t3OvdKfyWlBar21RCcWlpCSKxqIowqxZxDQw1Im1t3XPejIvW2C1cvHShUXoNS6WyRvFbVBsI4m4tIIi7Ag+DrqEBXt2D8evfC48O7ZFIK3vEEi5dJmzXfsL2HCAnRbsV4wUEGjoiuqXJgQAAKNNJREFUkQjb5q408/fBNcAXF38fLJrY/+cxRbl5XDsVytVjp7hy4jR5aen1FG3DRCrVoW9ff8aN70r79h7k5BRqxNjMKsLsnWJtZmZ+gxQAGzpVhV6VeFi5fKcoLJVK0NOToacnVc9Vy/r6ulXaKrfp61eu61bZpmqXVTum4hwZGXmsWX2YlSsP/GeRwIZGcLAXs18cyPDhQRorA21QUFBMbm4ReXlF5OYWkpdXTG5uIflqsVbVVlRlnyK1kFu5f0PwF68LxGIxbm52eHu74O3tjJe3Cz4+Lri52d212rlSqSQ6Olkt+saq5o9g7aCvr0vz5va0aNFEJeJWEXP/qyNLLi8jJiaFa9cSuX4tievXk9DRkWBjY4qNjRk2tmbqZVNsbc1qWM08CDk5BRoRKTU1h4z0XMrLFdXtLf7DGuPO74qa+9TsZBKJRBQUFJOTU0hOTiG56nlOToGmLecubfezYTE0MNL49zo6NCP25nVOh4Y8UmEjXV0phoZ6GBnpYWSkr55XXdbH0FBX83ru7Nj47+UH38/AQBc/f1f8/V3v2oFz61aGWshVZeSePRtd59ZYzZvb06lTazp3bk3HTq1q1F4AVWfJ8eOXNd6958/HPFW/z+bmRjVEW3t7c2zvaDM3f/DPbF5eUbVs/fQqwm/V7P20tFyysvKfqAz+Jw1jY32cnW1wcrLG2dkGPT2p6rswV/U7nJtbRE5OgWb9cTrhTEzMad8uGHs7B3R19dDT1UNPzwBdPT30dPVVbXqqua6uPnq6eujq6aGvZ4BM9vAdjA9CcXEhxcVFqqmkiKKiQs1ycXEhxUWF6uXKqai4kJKSIuLjb5BcC8XqBOoPQdytBQRxV+BR0TcxwbtnV/z69cS9fVvEVXrZboZFErZ7P+F7D5KX3ngeugUE6godXV2cvFqpM3N9cPH1Rt/EuNo+ivJykq5eJ/Z8BLEXwkm9cRNnHy88OrWnRYdADEyqP9wnX4/h6vHTXD1xihvnwimXPx09uwICTwL29hZMntwL9xZNKC9TUF6uqGZvoZqUd2mr8Equ3F7zWGW1tuJieTWxNj+/uNFnomsDAwNdWrd2wtvbWSX8+qjE37tlKEKltUNVwffixXgMDXWr2Si4q8VcZ2ebu56ngvj4dI2Ae+1aIteuJXL1aiJxcWl3HTp/L2QyHaytVUKvjY2ZRvS1sTHDuooIXLFNm50Qj0J5ueKuInBuTiHZ2QXVtuXnFyOT6VQTY6sKtIb3FG1Vyw3RniQ7u6CakBsaep3kZO0Xr7W0NKFjR5WVQ8dOKisHXd3qRbbKysrJyyuioKCE/HxVB1LlcgmFBcWa5YI7lqvuV7GtsLDkoT4bD8u9Oif09WUaoVY1t6gm2trZqaaHGUlRUiInOTmblJRskpOzKCgowcrKRNOJY2trVuPveT/KyxVVsn/Vom+VjH2VfQs1LB9Uy3e211yvecy92u8e372E53u33/08cnkZWVkFZGXlk5tb1CB+/0QiETY2pjg726gna5ycrHFSrzs5WT+UqA9QXFyqEXqrisB5uUXq9ZqCcG6VbXl5RTU+L6rCeqriemKxqNq6SKTqDNWRSFTCr1rs1dOrEIL1VRYKunrINIKxPiKxCKVSzu3bZdy+XY5IVI5IrEAiViKWKJHq3EYqE6Gnp6Pp5NfXV3X+V12vmN/ZpqcnpbS0TJPQUTHPrLaeV2P709Sx1BARxN1aQBB3BWoDIwtzvHt1w69fL1zb+GkyW5RKJTfOhRG2ez+R+w9TkNUw/W2eREQiETJ9fWQG+ugaGqBroI+ugYFq3cBAPelXrhsaINPXo6yklOK8fIrzCyjOV8/z8jVtJeo2paLxDW2pTwzNzWjm74OLnw/NAnxwaN0SHWn1m+6SwkLiIy4Rez6c2AsRxEVcQl5890w4sUSCo1crPDq2p2WnIBy9W1fLIJMXlxBz9jxXjqksHNJv1l71bgEBAQGBe2NjY1Yp+Ho74+3jgqfnva0d/ovs7AKuXr3FtWtJXLuaqBFxo6OTKSqqnyJed2JubnSHCGyKtbUpEom4hh3G/ewyKifFXa0xqm67fRuMjPQwMzNUT0aaZdO7tJmZGWpNiC4qKtUIjJXzEgoLSzQCo0b8ukthwf8uQHjvfSuWy8rKuXgxntDQa43GZklXV0qbNs3VYm8rOnVqjZVV7RcUKy4urSb6FhWVqgSpB7Ik+q/22hH2s7Lyq4m2KZrlyrbk5OwHyrQ2MTFQf07Nq2XrV3bcmGk+wxYWxvc935OIUqkkJ6eQrKx8jeCblVVAdrX16tuysvLJzi6gvPzBn32kUh0cHa2qZN6qsm8d1Vm4jo5WDyTuZ2XlExeXRlxcOkVFpZiaqrzwTU0NVN+Faj/82qKsrFw9sqLhdVzVNfn5RWRk5FcTfu8UhKuKwfn5xZSUyCktLdN26E8EgrhbCwjirkBtY2JthW+fHvj164WLX2WhG6VCQfSZc1zYtZ/IA0cozsvTYpT1h0gsRiKVoiPVQSKV3n9Zp2a7RKqDjkyGTE9PI9TeS6StbNev09dVUlhISX4BxfkFFOXlUZJXUCkIVxWH86q2qdrLSkpRlD1ZP4RWTg4qr1w/H5oF+GLTrGYl6dy0dGIvRKjF3HCSr8U8skhuYGpCi6BAPDoF4dGpPaY21tW2ZyUmq7x6j5/m+ulQSguLHuk6AgICAgIPz53WDqosX5W1g1xezvXrSVy7lsT1Khm4164lkZn58PdG+iYmWDSxw7yJHeb2dpja2lBSUEBmQiIZCYlkxN96au65DAx07yr63kscNjExoKSkTCPIFhWW1BBo7ybaVm0rLBQKRNUWTZpYYGJioMmQNjbWx8hIXz3XU7cZYGSkh2GV7Xfua2ys3azq8nIFKSlVRNrkLFJScjRCbYVom5qaozVhSCrVwdraRNNxU1X4tVa3mZkZ1vBPVy1X91W/W9ud3ukVy/c6/k5E99hw7/Z7v1Z9fV3MzQ01hU0flby8onuIwvlIJGJN1q2zszV2duZ3tfGpikKhICkpi7i4dOLi0kiIT9cIufHxqulB7I/EYjHGxvpqsbeq+GtUQww2uUMYrthuaKh33+s8CEqlqtNOVZBPVZTv9u3q7XJ5ebUCuRUFdCuK72qK8Fbbfvf53dpKS8vQ05NhaWmsKaZcdW5haVJ93cLoscXsO4v/3lkQuLS0envpXQoG362IcHZ2AUeOXKyV/01DRxB3awFB3BWoS8zsbPHr2xPffj1x8mqtaVeUlXP15GnCdh8gLjxSLRQWNrhh5WKJBAMzE4zMzTE0N8PIwhwj9dywytzQzBSZvp5KiNXRQaeKKCvR0e5wRqVCQWlhEaXFxciLiiktKlKtFxUjL1LNS9XzspISpLq66BkboW9sjIGJ8f/bu/sgKar73+OfnseFYVmedwGRn6hAIr+AQkSDgoompHxAo0Lde6vQyj/hQhQqRh5M6YqpkhiR1QApk3hFvVrespJQapISUTEqAiriCkpIYhaEZXeBfX6cx3P/6Jme6d0BFlwYZnm/qk519zlnes8MnOmeb58+rYL+9nqfwn7q079QBaFQj7UtGg4rFokqFokkU8Z6OLkdjSgajigeiSgWjSoajnStH7bLYqn9RaMyiYSdjGRMQkqeZDhPFk6tG7uOkk8FznxKsIxdz66frmdMQr5AUOf/97d1waV2MLdw8KAu76/qX1+pYufn2rfTnmahrvL0jaYpufhCjf/eVI276gqNuWyifIH0aIB4NKZ9n+/S3g/sKRwq9/yTOdYAIAeCQb+i0fhJBQMLBw/SwBElGjRiuB3AHTFcA4eng7kF/U58XG5ralLtgUon4GuvH1TtgUo1Hj7CMQG9TiDgcwLBmcHfvn2DXUaK21PduB+4mJrWJjN1N49g/9nJ7/dp4MB+GjSonwYNKsxYptcHZss7yekRUtrawvr66+yB2/37D6uysvakRgOfTj6fV0VFIQUCvqwBWvd2aj3h2s7X44hlWRowIKTBgws1uFPg91gB4cGDC8/InSJ79x7Ut8b/79P+d84GBHczLFiwQPfff79KSkpUXl6ue+65Rx9//PEJX0dwF2fK4FHnadIPZmrSrJkaMe7irHVi0ajCLa12sLclncKp7WQQOFXu5Le0pMtb2hQLZ7910evz2cHYjEBtZpA2FbhNbffpX3jCq64nKx6NKRaNKh6LKh6NKR61g5Gu9UjXvEQspkh7R0Ywti0ZrG1XuLU1GaxtV7g9HbwNt7Uf87M4VR6vVwX9QnbAt38yFfZLBn/7O0HgdH6hCgr7qW//QvUpLJS/4PRMup9rsUhEX+/60h6Zu/Nz7ftsV85GSgX6FOjCKZdp3DR7Coeh/+V+MnhzbZ3+ufUj7d2yXf/+eIci7WF5/V55vD55vV77oTh+nzzJ9c7bXl9qmcxLLtPbXns/vuT+fF57BLvXK8vrteft8npkebzyJB/C4/Hadeyy5HrnMq9HHo9XVvJ2SCtZ1+PxyBijjpZWtTU1uaYRaW9qUlty217a5ZH24z9wB0Dv5QsGneNW6mJmal2Soh1hRcNhRTvCiiWX0XA6LxoOK9LeoWg4LPMNgzger1dFw4Y6gVpXEHd4iQYML5Y/eOLjZnNtneqrqlV/qFoNNYfVt3+hBp83UoNHjexyZ0dn0XBYdZVVycDvQScIXHuwUrUHD/W6O22As5W/IJgcUFKk0MD07xQ7FdllA4rUb9BA+YIBtTc1q7WhUW0NjfaysUmt9Q1qbUzlNam1oUFtDY3qaDm9D9DrzTwejwYMCGUNBqeWxhhX4Hb//sM6evTcuGPiXOX3+7o8ODhzGQz6j1veOS/ovCadf+DAEf2v/7kq12/1jCC4mzRnzhy98MILmj9/vrZv367Fixfrzjvv1Lhx43TkyPGfpk5wF7kw7ILRmjTren3nhmu7PerkZMSjsWSgt0Xh1jb5g0GFBg3o8kCq7kgkEmpvbFJLfYNa6uvVWteglvoGtdY3qKWuTi11DWptaFS4rS0jKBtNB3Ez1hOxWN5e1ewpXr9f/mBAvmBAPn9yGQjIl8oPBOQN+OUPJPMDfvkCQXuZUTfrevJ13kBAlseSJUuWJ/2EaqWeLO2x1z2WR7Lk1JHkqu+8xpPaTta3LBljVLX336rYWa6Knbt08Mt/nHUjz1MGjRyucd+7QuOvmqqLpk7p0dHX+SoWjTpBYCcgnJxfuq2pSe2N7oBwW1OzIm3tduA6OW2KJ3OUfjI/PXr/+OVev12WrmOP8vecYKT/sW5HTJef+L0bo/TI92jE/n5KbqdGyKdH0dt1YhH7uyyVH8/Iz1bPJIx8wYD8waD8BUF72WnbF0zl23m+QCBdtyAof3Lbl7md8XpPN265PeH37QmKE/F48vPIuEOg810GGZ9JNJmX+flk3nkQi6TuREiXm0RCHl/qQkr6gohzsSS57fEmL5r40xdhPF5fuqzzxZWM/RhjlIjHFY/FlIjGFI/Z6/FYTInk0l7Plp/5upizH6deRr49eieRvuvBJEf7JBL2XRLJ9W/CsiwF+vZxLhz26RScdS4q9gs5FxkL+vVzlWfe2fBNxaJRVzA4FQSOZeRFOjrSweJIRKEBA5IjcEtUNGzoCe/wScTjajpyVPWHqlVfVa26Q9WqP1TlbNdXVSvacewLuf6CoBPoHTxqpIaMOs/ZHjRiuLzHGX2USCTUWHPYPer3oL0e7eh0kSzLF1DW76ys9bL99fQx27I89vHZYx+7La/HOV57kvl2HXddJ8/jkceyOuXb6yZhlEjEZeL2HT+JREKJeEImEVciOQrTtR6Pu+qkXp9IvT5ZbuIJJz/ruzveF/Yp3Hqe6l9O24zdBmMSybbHe6QPonssj0d9+xemB5W4ArXJ7QEDFBpk3wHYb+BABfr0zK3x2cSjsXTQt7FRbQ12ILit0Q4C28HgBnu90Q4Wd7S0pp9SljGlQvpNWtlWM+pYWfJc2RkDB9LnQfY5ky9Lvs85h3KOe6785HHU53XlS+py/HafxyTLohllnc5tnPOkU7jYZVlWuj1+v7x+r3w+vzyuc8GM88bke3TqJ5eWJee4nEgt4xnH6dQy3qlOLKZ4PO4c19P14jxDJYtsg0o8Ho99vuWxB5VYXk/6/1rGOZj9fzLLedlxyrvkZQySaa1v0Dv/5//m+iM5IwjuJm3btk0ff/yx7rnnHkn2F8iBAwe0Zs0aPfbYY8d9LcFdnA2cH2v9+inYL6SCfiEVhEL2eii5fYz8YKiv+hT2UzBkr59opG0iHldrQ6Na6urtAK0TqE1vt9TWOfltjU0c+NBreH0+jZ703xr3vakaN22qRn17vFMWj6YDN5lLZz0WT2/H40qk6ifzOp8sOieVyR/N8Xi86w/feCzrD2a7Tjz549jeNomE3YZEokuZZVldRo/37V9obzvrdsr1VCkAlOzTxgn6JjIDwBmBYGPSS39BUAWhkDw98KCXRDyujpZWtTc3q6M5uWxpkST74kOB++KD+0JFz96BEotG1VBVkw7WHqqyg7iV9rKh5rASp+nWXY/XqwElwzR41Hl24DcjCDx41EguBvZSmcFnJ7idCg7H484FIWeZsPtk6gJ35sVu18XzjHXJHvHobFtyLrqnXusO4B87cp31Ql22rCz1sl/kM+ky06le6qF2TkGWsk7Lzq/3+nz23X+n8F0Vi0Ts3yB1DWptyPidklymUqQjnAweF6lvUZFCA4oUGjhAfYv6KzQgmZcsO93P4TjXuC7yJgPCJmGcgGwqYJsZpD2b2QOQ7HN4YxKy7A4qSU7fddbVdd7kdH+W3d+VPT/zN3rncwBjshz7TafzgMyp8jq/ttP5gmVZriCtc7efcwdhlgBusuxsUvOfffr17P+R62acEQR3Jfn9frW1temOO+7Qq6++6uQ/99xzGjBggG699VZX/UAgoGDGSWlhYaEqKysJ7qJXsCxLgT59ksHfvioo7KeCUMg+UaqrV0tdvdqbms/50bNAisfnPedG8gT79k1PHdIp8Ns3SzA4lRfoU2CPmEhOl5JajznryalUnPWoPZoiNd3KsV6bsZ2IxdM/KLvrJL/PLMuTHBGffHhjcgS8N+DPGC0fsH+gZGz7knW9AX9yPeP1AX/WgFciHneNWHSNcIxEspbFwpGMOhm3xmfmh8NO4KH777sbw5o78Xi9We8QSN914P5s7DsSMj/HjDsPMj47fzDofH4ejyfjgkr6AkoiHncuuNgXUdIXWJyLKJkXXDJH57jKYvZ7yRzdlBrtlBoZ5Ms+2snj7/war7zJ0cJev3tfZ/oHUWr0ferBnnZwttUZhd/R0uJ6sGdqu6OpWe0tLYq0tZ/yuYDl8aRHomcGgo+1TK4HCgqcW6nrD9lTKNQdqlLz0dqz9ryk36CB6RG/5410gsCDRg6Xz+931e1+YO045Z220yPAuwb+E87c+ll+7GfkJ7JdLEjVNSY9JVDGCK1UnpX84e8KDnQjv3PQINv3dLcDltmjmO7tZEAl1X6cPVJTJbTU28FaJ2ibvPOvpb5erfWNak0uw209/wBcXyCgvgOSAeABRfZ6KvibuV6UKu9/Snc7fhOd7x5J30ESd91h4hp5mrV+zDl+pvJTn0GXY3Ygee7jzyjL2PZm1O9psUjEdS6YiMWcIKvrvDJ17hiLORcOMkctp0aFdh4Feqw8fDOZA1Ti8ZjrXC3z3KzLQJlY9kEzrrws+2mqrdV7L/y/XL/tM6K7wd1e/b94yJAh8vl8qqmpceXX1NRo/PjxXeovX75cDz/88BlqHXBmGWOc+WiZ5Qg4sdM1GuxslvqOaKiuOXFlnBSPzyuf354WJRoOn5P/v85lnW9593S6Ld7Kclt811vlO9dN33ofDYeTAduWHp9P/mSYREKR9o5zYu7u1IXx/eXnxtO6ewsnOJ0xas2V5/HYc+BbljPFhTOazbJkJZdOgNpjyePxZnnArJFkMkbeJbeN3U/SdZQxqk7Ow23TU7ikH3jb5b0oy4W5bk8Bku2l2UYYWpkL16jFzvvNfL2z3en1iXjCnuu2semsOA7GIhE1HT6ipsPHn64xk8frVaBvny6jle2NjFXXhYauI5ndxdlHOqcCsGcry7LkzbxomyUYbHksxVwX8N2BWdeF/BzeEdp5ioDMwK/H53P+f6f6pL0ud//MfHia6VQ32f9d9TJHwxu5RvF3PfZ7ZGVMmZd5HnCsaXqcKfRS5wteb/oCoOuuwNgxp8855h2GnabcQe716uDuyVq5cqVWr17tbKdG7gIAAHwTiVhckVh7rpuBHLFHREoSP4CAXDKJhOLn0B056HmJeFwdzS25bsZZwRijWDic04uKPSURi58VFxyAU9Wrg7tHjx5VLBZTcXGxK7+4uFjV1dVd6kciEUXO0of+AAAAAAAAAECmXj3xUDQa1Y4dOzRz5kwnz7IszZw5U1u3bs1hywAAAAAAAADgm+nVI3clafXq1Xr++ef1ySef6KOPPtLixYsVCoW0fv36XDcNAAAAAAAAAE5Zrw/uvvLKKxo6dKgeeeQRlZSU6LPPPtOsWbN0+PDhXDcNAAAAAAAAAE6ZJWV59CYk2Q9Ua2pqUv/+/dXc3Jzr5gAAAAAAAAA4B3Q3Ltmr59wFAAAAAAAAgN6K4C4AAAAAAAAA5CGCuwAAAAAAAACQhwjuAgAAAAAAAEAeIrgLAAAAAAAAAHmI4C4AAAAAAAAA5CGCuwAAAAAAAACQhwjuAgAAAAAAAEAeIrgLAAAAAAAAAHnIl+sG5IPCwsJcNwEAAAAAAADAOaK78UiCu8eR+hArKytz3BIAAAAAAAAA55rCwkI1Nzcfs9ySZM5cc/LPiBEjjvsB9iaFhYWqrKzUyJEjz5n3DJxr6OdA70YfB3o/+jnQu9HHgd7vZPp5YWGhDh06dNw6jNw9gRN9gL1Rc3MzBxGgl6OfA70bfRzo/ejnQO9GHwd6v+708+58D/BANQAAAAAAAADIQwR3AQAAAAAAACAPEdyFIxwO6+GHH1Y4HM51UwCcJvRzoHejjwO9H/0c6N3o40Dv19P9nAeqAQAAAAAAAEAeYuQuAAAAAAAAAOQhgrsAAAAAAAAAkIcI7gIAAAAAAABAHiK4CwAAAAAAAAB5iOAuHAsWLFBFRYXa29u1bds2ffe73811kwCcgquvvlqvvfaaKisrZYzR7Nmzu9RZsWKFDh06pLa2Nm3atEkXXXRRDloK4FQsW7ZMH330kZqamlRTU6MNGzZo7NixrjrBYFBr167V0aNH1dzcrD/+8Y8aNmxYjloM4GTNnz9f5eXlamxsVGNjoz788EPNmjXLKaePA73L0qVLZYxRWVmZk0c/B/JbaWmpjDGutGfPHqe8J/s4wV1IkubMmaPVq1drxYoVuuyyy1ReXq6NGzdq6NChuW4agJMUCoVUXl6uhQsXZi1fsmSJ7r33Xs2fP19Tp05Va2urNm7cqGAweIZbCuBUzJgxQ+vWrdMVV1yhG264QX6/X2+++ab69u3r1CkrK9PNN9+sO++8UzNmzNCIESP05z//OYetBnAyDh48qGXLlmny5MmaMmWK3nnnHb366qv69re/LYk+DvQmU6ZM0U9+8hOVl5e78unnQP7bvXu3SkpKnHTVVVc5ZT3dxw2JtG3bNrNmzRpn27Isc/DgQbN06dKct41EIp16MsaY2bNnu/IOHTpk7rvvPme7f//+pr293cydOzfn7SWRSCefhgwZYowx5uqrrzaS3afD4bC5/fbbnTrjxo0zxhgzderUnLeXRCKdWqqtrTU//vGP6eMkUi9KoVDI7N2718ycOdNs3rzZlJWVGYljOYnUG1JpaanZuXNn1rKe7uOM3IX8fr8mT56st956y8kzxuitt97SlVdemcOWAehpF1xwgYYPH+7q701NTdq+fTv9HchTRUVFkqS6ujpJ0uTJkxUIBFz9fO/evdq/fz/9HMhDHo9Hc+fOVSgU0tatW+njQC+ybt06/fWvf9Xbb7/tyqefA73DxRdfrMrKSn311Vd68cUXNWrUKEk938d9PdZi5K0hQ4bI5/OppqbGlV9TU6Px48fnqFUAToeSkhJJytrfU2UA8odlWXryySf1wQcf6IsvvpBk9/NwOKzGxkZXXfo5kF8mTJigrVu3qqCgQC0tLbrtttu0Z88eTZo0iT4O9AJz587VZZddlvVZNxzLgfy3fft23X333dq7d6+GDx+u0tJSvf/++5owYUKP93GCuwAAAHlq3bp1mjBhgmv+LgC9w969ezVp0iQVFRXpjjvu0PPPP68ZM2bkulkAesB5552np556SjfccIPC4XCumwPgNHjjjTec9V27dmn79u3av3+/5syZo/b29h79W0zLAB09elSxWEzFxcWu/OLiYlVXV+eoVQBOh1Sfpr8D+W/NmjW66aabdO2116qystLJr66uVjAYdKZrSKGfA/klGo3qq6++0qeffqoHHnhA5eXlWrRoEX0c6AUmT56s4uJiffrpp4pGo4pGo7rmmmt07733KhqNqqamhn4O9DKNjY365z//qYsuuqjHj+UEd6FoNKodO3Zo5syZTp5lWZo5c6a2bt2aw5YB6GkVFRWqqqpy9ffCwkJNnTqV/g7kkTVr1ui2227Tddddp3379rnKduzYoUgk4urnY8eO1ejRo+nnQB7zeDwKBoP0caAXePvttzVhwgRNmjTJSR9//LFeeuklTZo0SZ988gn9HOhlQqGQLrzwQlVVVZ2WY3nOnyBHyn2aM2eOaW9vN/PmzTPjx483Tz/9tKmrqzPDhg3LedtIJNLJpVAoZCZOnGgmTpxojDFm8eLFZuLEiWbUqFFGklmyZImpq6szN998s5kwYYLZsGGD+eqrr0wwGMx520kk0onTunXrTH19vZk+fbopLi52UkFBgVPnt7/9rdm3b5+55pprzGWXXWa2bNlitmzZkvO2k0ik7qVHH33UXH311Wb06NFmwoQJ5tFHHzXxeNxcf/31RqKPk0i9MW3evNmUlZU52/RzEim/0+OPP26mT59uRo8eba688krz5ptvmsOHD5shQ4YYqcf7eO7fMOnsSAsXLjT79u0zHR0dZtu2bebyyy/PeZtIJNLJpxkzZphs1q9f79RZsWKFqaqqMu3t7WbTpk3m4osvznm7SSRS99Kx3HXXXU6dYDBo1q5da2pra01LS4v505/+ZIqLi3PedhKJ1L30zDPPmIqKCtPR0WFqamrMpk2bnMCuRB8nkXpj6hzcpZ+TSPmdXn75ZVNZWWk6OjrMgQMHzMsvv2zGjBnjlPdkH7eSKwAAAAAAAACAPMKcuwAAAAAAAACQhwjuAgAAAAAAAEAeIrgLAAAAAAAAAHmI4C4AAAAAAAAA5CGCuwAAAAAAAACQhwjuAgAAAAAAAEAeIrgLAAAAAAAAAHmI4C4AAAAAAAAA5CGCuwAAADhnjR49WsYYTZw4MddNcYwbN05bt25Ve3u7du7cmevmSJI2b96ssrKyXDcDAAAAnRDcBQAAQM6sX79exhgtXbrUlT979mwZY3LUqtxasWKFWltbNW7cOM2cOTNrndMVbJ0xY4aMMSoqKurxfQMAAKDnEdwFAABATrW3t2vp0qUaMGBArpvSY/x+/ym/9sILL9QHH3ygr7/+WnV1dT3YKgAAAPQ2BHcBAACQU2+99Zaqq6u1fPnyY9YpLS3tMkXBokWLVFFR4WyvX79eGzZs0PLly1VdXa36+no9+OCD8nq9+vWvf63a2lodOHBAd999d5f9jx8/Xlu2bFF7e7t27dql6dOnu8ovueQS/e1vf1Nzc7Oqq6v1wgsvaPDgwU755s2btWbNGpWVlenIkSPauHFj1vdhWZYefPBBHThwQB0dHdq5c6d+8IMfOOXGGE2ZMkWlpaUyxqi0tLTLPtavX69rrrlGixcvljFGxhiNHj26W+20LEvLli3Tf/7zH7W1temzzz7T7bffLsmeouLdd9+VJDU0NMgYo/Xr1zuv9Xg8euyxx1RbW6uqqqqsbQMAAMCZRXAXAAAAORWPx/XAAw/onnvu0ciRI7/Rvq677jqNGDFC06dP189+9jM98sgj+stf/qL6+npNnTpVTz/9tH73u991+TuPP/64nnjiCV166aXaunWrXn/9dQ0aNEiSVFRUpHfeeUc7d+7UlClTNGvWLBUXF+uVV15x7eOuu+5SJBLRtGnTNH/+/KztW7Roke677z79/Oc/13e+8x1t3LhRr732mi666CJJUklJiXbv3q1Vq1appKREq1atyrqPDz/8UL///e9VUlKikpISHThwoFvtXL58uebNm6f58+frkksuUVlZmV588UVNnz5dBw4c0I9+9CNJ0tixY1VSUqJFixa53l9ra6umTp2qJUuW6KGHHtL1119/Cv9KAAAA6EmGRCKRSCQSiUTKRVq/fr3ZsGGDkWQ+/PBD88wzzxhJZvbs2cbYk+4aSaa0tNTs3LnT9dpFixaZiooK174qKiqMZVlO3p49e8zf//53Z9vj8Zjm5mYzd+5cI8mMHj3aGGPMkiVLnDper9d8/fXX5v777zeSzC9+8QvzxhtvuP72yJEjjTHGXHzxxUaS2bx5s9mxY8cJ3+/BgwfN8uXLXXnbt283a9eudbZ37txpSktLj7ufzZs3m7KyMlfeidoZCARMS0uLueKKK1x1/vCHP5iXXnrJSDIzZswwxhhTVFTU5e+99957Xdq9cuXKnP8fIpFIJBKJRDqXk08AAADAWWDp0qV65513so5W7a4vvvjC9SC2mpoa7d6929lOJBKqra3VsGHDXK/bunWrsx6Px/XJJ5/oW9/6liRp4sSJuvbaa9Xc3Nzl71144YX617/+JUnasWPHcdtWWFiokSNHasuWLa78LVu2aOLEid18h8d2onb6/X6FQiFt2rTJVRYIBLpMeZHN559/7tquqqrq8jkCAADgzCK4CwAAgLPC+++/r40bN2rlypV67rnnXGWJREKWZbnysj20LBqNuraNMVnzPJ7uz07Wr18/vf7661q6dGmXsqqqKme9tbW12/s8HU7UzgkTJkiSbrzxRlVWVrrKw+HwCff/TT9HAAAA9DyCuwAAADhrLFu2TJ999pn27t3ryj9y5IhKSkpceZMmTeqxv3vFFVfo/ffflyR5vV5NnjxZa9eulSR9+umnuv3227Vv3z7F4/FT/hvNzc2qrKzUtGnT9N577zn506ZN00cffXRS+4pEIvJ6va68E7Xzyy+/VEdHh84//3zX3++8X0ld9g0AAICzE5faAQAAcNbYvXu3XnrpJd17772u/HfffVdDhw7VkiVLNGbMGC1YsEA//OEPe+zvLly4ULfeeqvGjRundevWaeDAgXr22WclSevWrdOgQYP08ssva8qUKRozZoy+//3v69lnnz3pkauPP/64li5dqjlz5mjs2LFauXKlJk2apKeeeuqk9rNv3z5NnTpVo0eP1uDBg2VZ1gnb2dLSolWrVqmsrEzz5s3TmDFjdOmll+qnP/2p5s2bJ0nav3+/EomEbrrpJg0ZMkShUOik2gUAAIAzi+AuAAAAzioPPfRQl6DpP/7xDy1YsEALFy5UeXm5Lr/88m80N29ny5Yt07Jly1ReXq6rrrpKt9xyi2prayXZUxpMmzZNXq9Xb775pnbt2qUnn3xSDQ0NSiQSJ/V3fvOb32j16tV64okntGvXLs2aNUu33HKL/v3vf5/UflatWqV4PK4vv/xSR48e1fnnn9+tdj744IP65S9/qeXLl2vPnj164403dOONN6qiokKSdOjQIZWWlupXv/qVampqnNHLAAAAODtZsp+sBgAAAAAAAADII4zcBQAAAAAAAIA8RHAXAAAAAAAAAPIQwV0AAAAAAAAAyEMEdwEAAAAAAAAgDxHcBQAAAAAAAIA8RHAXAAAAAAAAAPIQwV0AAAAAAAAAyEMEdwEAAAAAAAAgDxHcBQAAAAAAAIA8RHAXAAAAAAAAAPIQwV0AAAAAAAAAyEP/H/BeERL6Zu0JAAAAAElFTkSuQmCC", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "L = [1,4,8,16]\n", + "plt.figure(figsize=(17,5))\n", + "for L in L:\n", + " errors = []\n", + " for i in range(1,50):\n", + " errors.append(sharktooth_function(f,0,1,i,L,0))\n", + " import matplotlib.pyplot as plt\n", + " plt.plot(errors, label =L)\n", + "\n", + "plt.xlabel(\"Number of teeth\")\n", + "plt.ylabel(r\"$\\sup_{x\\in x_i} | \\tanh(x)- \\mathfrak{I}_{\\mathsf{ReLU}} ( \\mathsf{MC})|$\")\n", + "plt.legend()\n", + "plt.title(\"Sup of deviance from tanh(x) as the number of teeth increase and as we get closer to L, for tanh that is 1\")" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "sharktooth_function(np.tanh,-6,6,30,1,1)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "base", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.11.5" + }, + "orig_nbformat": 4 + }, + "nbformat": 4, + "nbformat_minor": 2 +} diff --git a/Dissertation_unzipped/sharktooth_functions.pdf b/Dissertation_unzipped/sharktooth_functions.pdf new file mode 100644 index 0000000..25eb1a8 Binary files /dev/null and b/Dissertation_unzipped/sharktooth_functions.pdf differ diff --git a/Dissertation_unzipped/sharktooth_functions_files/.DS_Store b/Dissertation_unzipped/sharktooth_functions_files/.DS_Store new file mode 100644 index 0000000..00aeb79 Binary files /dev/null and b/Dissertation_unzipped/sharktooth_functions_files/.DS_Store differ diff --git a/Dissertation_unzipped/sharktooth_functions_files/figure-html/cell-4-output-2.png b/Dissertation_unzipped/sharktooth_functions_files/figure-html/cell-4-output-2.png new file mode 100644 index 0000000..8cc850a Binary files /dev/null and b/Dissertation_unzipped/sharktooth_functions_files/figure-html/cell-4-output-2.png differ diff --git a/Dissertation_unzipped/sharktooth_functions_files/figure-html/cell-5-output-2.png b/Dissertation_unzipped/sharktooth_functions_files/figure-html/cell-5-output-2.png new file mode 100644 index 0000000..475e767 Binary files /dev/null and b/Dissertation_unzipped/sharktooth_functions_files/figure-html/cell-5-output-2.png differ diff --git a/Dissertation_unzipped/sharktooth_functions_files/libs/.DS_Store b/Dissertation_unzipped/sharktooth_functions_files/libs/.DS_Store new file mode 100644 index 0000000..e2d2226 Binary files /dev/null and b/Dissertation_unzipped/sharktooth_functions_files/libs/.DS_Store differ diff --git a/Dissertation_unzipped/sharktooth_functions_files/libs/bootstrap/bootstrap-icons.css b/Dissertation_unzipped/sharktooth_functions_files/libs/bootstrap/bootstrap-icons.css new file mode 100644 index 0000000..94f1940 --- /dev/null +++ b/Dissertation_unzipped/sharktooth_functions_files/libs/bootstrap/bootstrap-icons.css @@ -0,0 +1,2018 @@ +@font-face { + font-display: block; + font-family: "bootstrap-icons"; + src: +url("./bootstrap-icons.woff?2ab2cbbe07fcebb53bdaa7313bb290f2") format("woff"); +} + +.bi::before, +[class^="bi-"]::before, +[class*=" bi-"]::before { + display: inline-block; + font-family: bootstrap-icons !important; + font-style: normal; + font-weight: normal !important; + font-variant: normal; + text-transform: none; + line-height: 1; + vertical-align: -.125em; + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; +} + +.bi-123::before { content: "\f67f"; } +.bi-alarm-fill::before { content: "\f101"; } +.bi-alarm::before { content: "\f102"; } +.bi-align-bottom::before { content: "\f103"; } +.bi-align-center::before { content: "\f104"; } +.bi-align-end::before { content: "\f105"; } +.bi-align-middle::before { content: "\f106"; } +.bi-align-start::before { content: "\f107"; } +.bi-align-top::before { content: "\f108"; } +.bi-alt::before { content: "\f109"; } +.bi-app-indicator::before { content: "\f10a"; } +.bi-app::before { content: "\f10b"; } +.bi-archive-fill::before { content: "\f10c"; } +.bi-archive::before { content: "\f10d"; } +.bi-arrow-90deg-down::before { content: "\f10e"; } +.bi-arrow-90deg-left::before { content: "\f10f"; } +.bi-arrow-90deg-right::before { content: "\f110"; } +.bi-arrow-90deg-up::before { content: "\f111"; } +.bi-arrow-bar-down::before { content: "\f112"; } +.bi-arrow-bar-left::before { content: "\f113"; } +.bi-arrow-bar-right::before { content: "\f114"; } +.bi-arrow-bar-up::before { content: "\f115"; } +.bi-arrow-clockwise::before { content: "\f116"; } +.bi-arrow-counterclockwise::before { content: "\f117"; } +.bi-arrow-down-circle-fill::before { content: "\f118"; } +.bi-arrow-down-circle::before { content: "\f119"; } +.bi-arrow-down-left-circle-fill::before { content: "\f11a"; } +.bi-arrow-down-left-circle::before { content: "\f11b"; } +.bi-arrow-down-left-square-fill::before { content: "\f11c"; } +.bi-arrow-down-left-square::before { content: "\f11d"; } +.bi-arrow-down-left::before { content: "\f11e"; } +.bi-arrow-down-right-circle-fill::before { content: "\f11f"; } +.bi-arrow-down-right-circle::before { content: "\f120"; } +.bi-arrow-down-right-square-fill::before { content: "\f121"; } +.bi-arrow-down-right-square::before { content: "\f122"; } +.bi-arrow-down-right::before { content: "\f123"; } +.bi-arrow-down-short::before { content: "\f124"; } +.bi-arrow-down-square-fill::before { content: "\f125"; } +.bi-arrow-down-square::before { content: "\f126"; } +.bi-arrow-down-up::before { content: "\f127"; } +.bi-arrow-down::before { content: "\f128"; } +.bi-arrow-left-circle-fill::before { content: "\f129"; } +.bi-arrow-left-circle::before { content: "\f12a"; } +.bi-arrow-left-right::before { content: "\f12b"; } +.bi-arrow-left-short::before { content: "\f12c"; } +.bi-arrow-left-square-fill::before { content: "\f12d"; } +.bi-arrow-left-square::before { content: "\f12e"; } +.bi-arrow-left::before { content: "\f12f"; } +.bi-arrow-repeat::before { content: "\f130"; } +.bi-arrow-return-left::before { content: "\f131"; } +.bi-arrow-return-right::before { content: "\f132"; } +.bi-arrow-right-circle-fill::before { content: "\f133"; } +.bi-arrow-right-circle::before { content: "\f134"; } +.bi-arrow-right-short::before { content: "\f135"; } +.bi-arrow-right-square-fill::before { content: "\f136"; } +.bi-arrow-right-square::before { content: "\f137"; } +.bi-arrow-right::before { content: "\f138"; } +.bi-arrow-up-circle-fill::before { content: "\f139"; } +.bi-arrow-up-circle::before { content: "\f13a"; } +.bi-arrow-up-left-circle-fill::before { content: "\f13b"; } +.bi-arrow-up-left-circle::before { content: "\f13c"; } +.bi-arrow-up-left-square-fill::before { content: "\f13d"; } +.bi-arrow-up-left-square::before { content: "\f13e"; } +.bi-arrow-up-left::before { content: "\f13f"; } +.bi-arrow-up-right-circle-fill::before { content: "\f140"; } +.bi-arrow-up-right-circle::before { content: "\f141"; } +.bi-arrow-up-right-square-fill::before { content: "\f142"; } +.bi-arrow-up-right-square::before { content: "\f143"; } +.bi-arrow-up-right::before { content: "\f144"; } +.bi-arrow-up-short::before { content: "\f145"; } +.bi-arrow-up-square-fill::before { content: "\f146"; } +.bi-arrow-up-square::before { content: "\f147"; } +.bi-arrow-up::before { content: "\f148"; } +.bi-arrows-angle-contract::before { content: "\f149"; } +.bi-arrows-angle-expand::before { content: "\f14a"; } +.bi-arrows-collapse::before { content: "\f14b"; } +.bi-arrows-expand::before { content: "\f14c"; } +.bi-arrows-fullscreen::before { content: "\f14d"; } +.bi-arrows-move::before { content: "\f14e"; } +.bi-aspect-ratio-fill::before { content: "\f14f"; } +.bi-aspect-ratio::before { content: "\f150"; } +.bi-asterisk::before { content: "\f151"; } +.bi-at::before { content: "\f152"; } +.bi-award-fill::before { content: "\f153"; } +.bi-award::before { content: "\f154"; } +.bi-back::before { content: "\f155"; } +.bi-backspace-fill::before { content: "\f156"; } +.bi-backspace-reverse-fill::before { content: "\f157"; } +.bi-backspace-reverse::before { content: "\f158"; } +.bi-backspace::before { content: "\f159"; } +.bi-badge-3d-fill::before { content: "\f15a"; } +.bi-badge-3d::before { content: "\f15b"; } +.bi-badge-4k-fill::before { content: "\f15c"; } +.bi-badge-4k::before { content: "\f15d"; } +.bi-badge-8k-fill::before { content: "\f15e"; } +.bi-badge-8k::before { content: "\f15f"; } +.bi-badge-ad-fill::before { content: "\f160"; } +.bi-badge-ad::before { content: "\f161"; } +.bi-badge-ar-fill::before { content: "\f162"; } +.bi-badge-ar::before { content: "\f163"; } +.bi-badge-cc-fill::before { content: "\f164"; } +.bi-badge-cc::before { content: "\f165"; } +.bi-badge-hd-fill::before { content: "\f166"; } +.bi-badge-hd::before { content: "\f167"; } +.bi-badge-tm-fill::before { content: "\f168"; } +.bi-badge-tm::before { content: "\f169"; } +.bi-badge-vo-fill::before { content: "\f16a"; } +.bi-badge-vo::before { content: "\f16b"; } +.bi-badge-vr-fill::before { content: "\f16c"; } +.bi-badge-vr::before { content: "\f16d"; } +.bi-badge-wc-fill::before { content: "\f16e"; } +.bi-badge-wc::before { content: "\f16f"; } +.bi-bag-check-fill::before { content: "\f170"; } +.bi-bag-check::before { content: "\f171"; } +.bi-bag-dash-fill::before { content: "\f172"; } +.bi-bag-dash::before { content: "\f173"; } +.bi-bag-fill::before { content: "\f174"; } +.bi-bag-plus-fill::before { content: "\f175"; } +.bi-bag-plus::before { content: "\f176"; } +.bi-bag-x-fill::before { content: "\f177"; } +.bi-bag-x::before { content: "\f178"; } +.bi-bag::before { content: "\f179"; } +.bi-bar-chart-fill::before { content: "\f17a"; } +.bi-bar-chart-line-fill::before { content: "\f17b"; } +.bi-bar-chart-line::before { content: "\f17c"; } +.bi-bar-chart-steps::before { content: "\f17d"; } +.bi-bar-chart::before { content: "\f17e"; } +.bi-basket-fill::before { content: "\f17f"; } +.bi-basket::before { content: "\f180"; } +.bi-basket2-fill::before { content: "\f181"; } +.bi-basket2::before { content: "\f182"; } +.bi-basket3-fill::before { content: "\f183"; } +.bi-basket3::before { content: "\f184"; } +.bi-battery-charging::before { content: "\f185"; } +.bi-battery-full::before { content: "\f186"; } +.bi-battery-half::before { content: "\f187"; } +.bi-battery::before { content: "\f188"; } +.bi-bell-fill::before { content: "\f189"; } +.bi-bell::before { content: "\f18a"; } +.bi-bezier::before { content: "\f18b"; } +.bi-bezier2::before { content: "\f18c"; } +.bi-bicycle::before { content: "\f18d"; } +.bi-binoculars-fill::before { content: "\f18e"; } +.bi-binoculars::before { content: "\f18f"; } +.bi-blockquote-left::before { content: "\f190"; } +.bi-blockquote-right::before { content: "\f191"; } +.bi-book-fill::before { content: "\f192"; } +.bi-book-half::before { content: "\f193"; } +.bi-book::before { content: "\f194"; } +.bi-bookmark-check-fill::before { content: "\f195"; } +.bi-bookmark-check::before { content: "\f196"; } +.bi-bookmark-dash-fill::before { content: "\f197"; } +.bi-bookmark-dash::before { content: "\f198"; } +.bi-bookmark-fill::before { content: "\f199"; } +.bi-bookmark-heart-fill::before { content: "\f19a"; } +.bi-bookmark-heart::before { content: "\f19b"; } +.bi-bookmark-plus-fill::before { content: "\f19c"; } +.bi-bookmark-plus::before { content: "\f19d"; } +.bi-bookmark-star-fill::before { content: "\f19e"; } +.bi-bookmark-star::before { content: "\f19f"; } +.bi-bookmark-x-fill::before { content: "\f1a0"; } +.bi-bookmark-x::before { content: "\f1a1"; } +.bi-bookmark::before { content: "\f1a2"; } +.bi-bookmarks-fill::before { content: "\f1a3"; } +.bi-bookmarks::before { content: "\f1a4"; } +.bi-bookshelf::before { content: "\f1a5"; } +.bi-bootstrap-fill::before { content: "\f1a6"; } +.bi-bootstrap-reboot::before { content: "\f1a7"; } +.bi-bootstrap::before { content: "\f1a8"; } +.bi-border-all::before { content: "\f1a9"; } +.bi-border-bottom::before { content: "\f1aa"; } +.bi-border-center::before { content: "\f1ab"; } +.bi-border-inner::before { content: "\f1ac"; } +.bi-border-left::before { content: "\f1ad"; } +.bi-border-middle::before { content: "\f1ae"; } +.bi-border-outer::before { content: "\f1af"; } +.bi-border-right::before { content: "\f1b0"; } +.bi-border-style::before { content: "\f1b1"; } +.bi-border-top::before { content: "\f1b2"; } +.bi-border-width::before { content: "\f1b3"; } +.bi-border::before { content: "\f1b4"; } +.bi-bounding-box-circles::before { content: "\f1b5"; } +.bi-bounding-box::before { content: "\f1b6"; } +.bi-box-arrow-down-left::before { content: "\f1b7"; } +.bi-box-arrow-down-right::before { content: "\f1b8"; } +.bi-box-arrow-down::before { content: "\f1b9"; } +.bi-box-arrow-in-down-left::before { content: "\f1ba"; } +.bi-box-arrow-in-down-right::before { content: "\f1bb"; } +.bi-box-arrow-in-down::before { content: "\f1bc"; } +.bi-box-arrow-in-left::before { content: "\f1bd"; } +.bi-box-arrow-in-right::before { content: "\f1be"; } +.bi-box-arrow-in-up-left::before { content: "\f1bf"; } +.bi-box-arrow-in-up-right::before { content: "\f1c0"; } +.bi-box-arrow-in-up::before { content: "\f1c1"; } +.bi-box-arrow-left::before { content: "\f1c2"; } +.bi-box-arrow-right::before { content: "\f1c3"; } +.bi-box-arrow-up-left::before { content: "\f1c4"; } +.bi-box-arrow-up-right::before { content: "\f1c5"; } +.bi-box-arrow-up::before { content: "\f1c6"; } +.bi-box-seam::before { content: "\f1c7"; } +.bi-box::before { content: "\f1c8"; } +.bi-braces::before { content: "\f1c9"; } +.bi-bricks::before { content: "\f1ca"; } +.bi-briefcase-fill::before { content: "\f1cb"; } +.bi-briefcase::before { content: "\f1cc"; } +.bi-brightness-alt-high-fill::before { content: "\f1cd"; } +.bi-brightness-alt-high::before { content: "\f1ce"; } +.bi-brightness-alt-low-fill::before { content: "\f1cf"; } +.bi-brightness-alt-low::before { content: "\f1d0"; } +.bi-brightness-high-fill::before { content: "\f1d1"; } +.bi-brightness-high::before { content: "\f1d2"; } +.bi-brightness-low-fill::before { content: "\f1d3"; } +.bi-brightness-low::before { content: "\f1d4"; } +.bi-broadcast-pin::before { content: "\f1d5"; } +.bi-broadcast::before { content: "\f1d6"; } +.bi-brush-fill::before { content: "\f1d7"; } +.bi-brush::before { content: "\f1d8"; } +.bi-bucket-fill::before { content: "\f1d9"; } +.bi-bucket::before { content: "\f1da"; } +.bi-bug-fill::before { content: "\f1db"; } +.bi-bug::before { content: "\f1dc"; } +.bi-building::before { content: "\f1dd"; } +.bi-bullseye::before { content: "\f1de"; } +.bi-calculator-fill::before { content: "\f1df"; } +.bi-calculator::before { content: "\f1e0"; } +.bi-calendar-check-fill::before { content: "\f1e1"; } +.bi-calendar-check::before { content: "\f1e2"; } +.bi-calendar-date-fill::before { content: "\f1e3"; } +.bi-calendar-date::before { content: "\f1e4"; } +.bi-calendar-day-fill::before { content: "\f1e5"; } +.bi-calendar-day::before { content: "\f1e6"; } +.bi-calendar-event-fill::before { content: "\f1e7"; } +.bi-calendar-event::before { content: "\f1e8"; } +.bi-calendar-fill::before { content: "\f1e9"; } +.bi-calendar-minus-fill::before { content: "\f1ea"; } +.bi-calendar-minus::before { content: "\f1eb"; } +.bi-calendar-month-fill::before { content: "\f1ec"; } +.bi-calendar-month::before { content: "\f1ed"; } +.bi-calendar-plus-fill::before { content: "\f1ee"; } +.bi-calendar-plus::before { content: "\f1ef"; } +.bi-calendar-range-fill::before { content: "\f1f0"; } +.bi-calendar-range::before { content: "\f1f1"; } +.bi-calendar-week-fill::before { content: "\f1f2"; } +.bi-calendar-week::before { content: "\f1f3"; } +.bi-calendar-x-fill::before { content: "\f1f4"; } +.bi-calendar-x::before { content: "\f1f5"; } +.bi-calendar::before { content: "\f1f6"; } +.bi-calendar2-check-fill::before { content: "\f1f7"; } +.bi-calendar2-check::before { content: "\f1f8"; } +.bi-calendar2-date-fill::before { content: "\f1f9"; } +.bi-calendar2-date::before { content: "\f1fa"; } +.bi-calendar2-day-fill::before { content: "\f1fb"; } +.bi-calendar2-day::before { content: "\f1fc"; } +.bi-calendar2-event-fill::before { content: "\f1fd"; } +.bi-calendar2-event::before { content: "\f1fe"; } +.bi-calendar2-fill::before { content: "\f1ff"; } +.bi-calendar2-minus-fill::before { content: "\f200"; } +.bi-calendar2-minus::before { content: "\f201"; } +.bi-calendar2-month-fill::before { content: "\f202"; } +.bi-calendar2-month::before { content: "\f203"; } +.bi-calendar2-plus-fill::before { content: "\f204"; } +.bi-calendar2-plus::before { content: "\f205"; } +.bi-calendar2-range-fill::before { content: "\f206"; } +.bi-calendar2-range::before { content: "\f207"; } +.bi-calendar2-week-fill::before { content: "\f208"; } +.bi-calendar2-week::before { content: "\f209"; } +.bi-calendar2-x-fill::before { content: "\f20a"; } +.bi-calendar2-x::before { content: "\f20b"; } +.bi-calendar2::before { content: "\f20c"; } +.bi-calendar3-event-fill::before { content: "\f20d"; } +.bi-calendar3-event::before { content: "\f20e"; } +.bi-calendar3-fill::before { content: "\f20f"; } +.bi-calendar3-range-fill::before { content: "\f210"; } +.bi-calendar3-range::before { content: "\f211"; } +.bi-calendar3-week-fill::before { content: "\f212"; } +.bi-calendar3-week::before { content: "\f213"; } +.bi-calendar3::before { content: "\f214"; } +.bi-calendar4-event::before { content: "\f215"; } +.bi-calendar4-range::before { content: "\f216"; } +.bi-calendar4-week::before { content: "\f217"; } +.bi-calendar4::before { content: "\f218"; } +.bi-camera-fill::before { content: "\f219"; } +.bi-camera-reels-fill::before { content: "\f21a"; } +.bi-camera-reels::before { content: "\f21b"; } +.bi-camera-video-fill::before { content: "\f21c"; } +.bi-camera-video-off-fill::before { content: "\f21d"; } +.bi-camera-video-off::before { content: "\f21e"; } +.bi-camera-video::before { content: "\f21f"; } +.bi-camera::before { content: "\f220"; } +.bi-camera2::before { content: "\f221"; } +.bi-capslock-fill::before { content: "\f222"; } +.bi-capslock::before { content: "\f223"; } +.bi-card-checklist::before { content: "\f224"; } +.bi-card-heading::before { content: "\f225"; } +.bi-card-image::before { content: "\f226"; } +.bi-card-list::before { content: "\f227"; } +.bi-card-text::before { content: "\f228"; } +.bi-caret-down-fill::before { content: "\f229"; } +.bi-caret-down-square-fill::before { content: "\f22a"; } +.bi-caret-down-square::before { content: "\f22b"; } +.bi-caret-down::before { content: "\f22c"; } +.bi-caret-left-fill::before { content: "\f22d"; } +.bi-caret-left-square-fill::before { content: "\f22e"; } +.bi-caret-left-square::before { content: "\f22f"; } +.bi-caret-left::before { content: "\f230"; } +.bi-caret-right-fill::before { content: "\f231"; } +.bi-caret-right-square-fill::before { content: "\f232"; } +.bi-caret-right-square::before { content: "\f233"; } +.bi-caret-right::before { content: "\f234"; } +.bi-caret-up-fill::before { content: "\f235"; } +.bi-caret-up-square-fill::before { content: "\f236"; } +.bi-caret-up-square::before { content: "\f237"; } +.bi-caret-up::before { content: "\f238"; } +.bi-cart-check-fill::before { content: "\f239"; } +.bi-cart-check::before { content: "\f23a"; } +.bi-cart-dash-fill::before { content: "\f23b"; } +.bi-cart-dash::before { content: "\f23c"; } +.bi-cart-fill::before { content: "\f23d"; } +.bi-cart-plus-fill::before { content: "\f23e"; } +.bi-cart-plus::before { content: "\f23f"; } +.bi-cart-x-fill::before { content: "\f240"; } +.bi-cart-x::before { content: "\f241"; } +.bi-cart::before { content: "\f242"; } +.bi-cart2::before { content: "\f243"; } +.bi-cart3::before { content: "\f244"; } +.bi-cart4::before { content: "\f245"; } +.bi-cash-stack::before { content: "\f246"; } +.bi-cash::before { content: "\f247"; } +.bi-cast::before { content: "\f248"; } +.bi-chat-dots-fill::before { content: "\f249"; } +.bi-chat-dots::before { content: "\f24a"; } +.bi-chat-fill::before { content: "\f24b"; } +.bi-chat-left-dots-fill::before { content: "\f24c"; } +.bi-chat-left-dots::before { content: "\f24d"; } +.bi-chat-left-fill::before { content: "\f24e"; } +.bi-chat-left-quote-fill::before { content: "\f24f"; } +.bi-chat-left-quote::before { content: "\f250"; } +.bi-chat-left-text-fill::before { content: "\f251"; } +.bi-chat-left-text::before { content: "\f252"; } +.bi-chat-left::before { content: "\f253"; } +.bi-chat-quote-fill::before { content: "\f254"; } +.bi-chat-quote::before { content: "\f255"; } +.bi-chat-right-dots-fill::before { content: "\f256"; } +.bi-chat-right-dots::before { content: "\f257"; } +.bi-chat-right-fill::before { content: "\f258"; } +.bi-chat-right-quote-fill::before { content: "\f259"; } +.bi-chat-right-quote::before { content: "\f25a"; } +.bi-chat-right-text-fill::before { content: "\f25b"; } +.bi-chat-right-text::before { content: "\f25c"; } +.bi-chat-right::before { content: "\f25d"; } +.bi-chat-square-dots-fill::before { content: "\f25e"; } +.bi-chat-square-dots::before { content: "\f25f"; } +.bi-chat-square-fill::before { content: "\f260"; } +.bi-chat-square-quote-fill::before { content: "\f261"; } +.bi-chat-square-quote::before { content: "\f262"; } +.bi-chat-square-text-fill::before { content: "\f263"; } +.bi-chat-square-text::before { content: "\f264"; } +.bi-chat-square::before { content: "\f265"; } +.bi-chat-text-fill::before { content: "\f266"; } +.bi-chat-text::before { content: "\f267"; } +.bi-chat::before { content: "\f268"; } +.bi-check-all::before { content: "\f269"; } +.bi-check-circle-fill::before { content: "\f26a"; } +.bi-check-circle::before { content: "\f26b"; } +.bi-check-square-fill::before { content: "\f26c"; } +.bi-check-square::before { content: "\f26d"; } +.bi-check::before { content: "\f26e"; } +.bi-check2-all::before { content: "\f26f"; } +.bi-check2-circle::before { content: "\f270"; } +.bi-check2-square::before { content: "\f271"; } +.bi-check2::before { content: "\f272"; } +.bi-chevron-bar-contract::before { content: "\f273"; } +.bi-chevron-bar-down::before { content: "\f274"; } +.bi-chevron-bar-expand::before { content: "\f275"; } +.bi-chevron-bar-left::before { content: "\f276"; } +.bi-chevron-bar-right::before { content: "\f277"; } +.bi-chevron-bar-up::before { content: "\f278"; } +.bi-chevron-compact-down::before { content: "\f279"; } +.bi-chevron-compact-left::before { content: "\f27a"; } +.bi-chevron-compact-right::before { content: "\f27b"; } +.bi-chevron-compact-up::before { content: "\f27c"; } +.bi-chevron-contract::before { content: "\f27d"; } +.bi-chevron-double-down::before { content: "\f27e"; } +.bi-chevron-double-left::before { content: "\f27f"; } +.bi-chevron-double-right::before { content: "\f280"; } +.bi-chevron-double-up::before { content: "\f281"; } +.bi-chevron-down::before { content: "\f282"; } +.bi-chevron-expand::before { content: "\f283"; } +.bi-chevron-left::before { content: "\f284"; } +.bi-chevron-right::before { content: "\f285"; } +.bi-chevron-up::before { content: "\f286"; } +.bi-circle-fill::before { content: "\f287"; } +.bi-circle-half::before { content: "\f288"; } +.bi-circle-square::before { content: "\f289"; } +.bi-circle::before { content: "\f28a"; } +.bi-clipboard-check::before { content: "\f28b"; } +.bi-clipboard-data::before { content: "\f28c"; } +.bi-clipboard-minus::before { content: "\f28d"; } +.bi-clipboard-plus::before { content: "\f28e"; } +.bi-clipboard-x::before { content: "\f28f"; } +.bi-clipboard::before { content: "\f290"; } +.bi-clock-fill::before { content: "\f291"; } +.bi-clock-history::before { content: "\f292"; } +.bi-clock::before { content: "\f293"; } +.bi-cloud-arrow-down-fill::before { content: "\f294"; } +.bi-cloud-arrow-down::before { content: "\f295"; } +.bi-cloud-arrow-up-fill::before { content: "\f296"; } +.bi-cloud-arrow-up::before { content: "\f297"; } +.bi-cloud-check-fill::before { content: "\f298"; } +.bi-cloud-check::before { content: "\f299"; } +.bi-cloud-download-fill::before { content: "\f29a"; } +.bi-cloud-download::before { content: "\f29b"; } +.bi-cloud-drizzle-fill::before { content: "\f29c"; } +.bi-cloud-drizzle::before { content: "\f29d"; } +.bi-cloud-fill::before { content: "\f29e"; } +.bi-cloud-fog-fill::before { content: "\f29f"; } +.bi-cloud-fog::before { content: "\f2a0"; } +.bi-cloud-fog2-fill::before { content: "\f2a1"; } +.bi-cloud-fog2::before { content: "\f2a2"; } +.bi-cloud-hail-fill::before { content: "\f2a3"; } +.bi-cloud-hail::before { content: "\f2a4"; } +.bi-cloud-haze-1::before { content: "\f2a5"; } +.bi-cloud-haze-fill::before { content: "\f2a6"; } +.bi-cloud-haze::before { content: "\f2a7"; } +.bi-cloud-haze2-fill::before { content: "\f2a8"; } +.bi-cloud-lightning-fill::before { content: "\f2a9"; } +.bi-cloud-lightning-rain-fill::before { content: "\f2aa"; } +.bi-cloud-lightning-rain::before { content: "\f2ab"; } +.bi-cloud-lightning::before { content: "\f2ac"; } +.bi-cloud-minus-fill::before { content: "\f2ad"; } +.bi-cloud-minus::before { content: "\f2ae"; } +.bi-cloud-moon-fill::before { content: "\f2af"; } +.bi-cloud-moon::before { content: "\f2b0"; } +.bi-cloud-plus-fill::before { content: "\f2b1"; } +.bi-cloud-plus::before { content: "\f2b2"; } +.bi-cloud-rain-fill::before { content: "\f2b3"; } +.bi-cloud-rain-heavy-fill::before { content: "\f2b4"; } +.bi-cloud-rain-heavy::before { content: "\f2b5"; } +.bi-cloud-rain::before { content: "\f2b6"; } +.bi-cloud-slash-fill::before { content: "\f2b7"; } +.bi-cloud-slash::before { content: "\f2b8"; } +.bi-cloud-sleet-fill::before { content: "\f2b9"; } +.bi-cloud-sleet::before { content: "\f2ba"; } +.bi-cloud-snow-fill::before { content: "\f2bb"; } +.bi-cloud-snow::before { content: "\f2bc"; } +.bi-cloud-sun-fill::before { content: "\f2bd"; } +.bi-cloud-sun::before { content: "\f2be"; } +.bi-cloud-upload-fill::before { content: "\f2bf"; } +.bi-cloud-upload::before { content: "\f2c0"; } +.bi-cloud::before { content: "\f2c1"; } +.bi-clouds-fill::before { content: "\f2c2"; } +.bi-clouds::before { content: "\f2c3"; } +.bi-cloudy-fill::before { content: "\f2c4"; } +.bi-cloudy::before { content: "\f2c5"; } +.bi-code-slash::before { content: "\f2c6"; } +.bi-code-square::before { content: "\f2c7"; } +.bi-code::before { content: "\f2c8"; } +.bi-collection-fill::before { content: "\f2c9"; } +.bi-collection-play-fill::before { content: "\f2ca"; } +.bi-collection-play::before { content: "\f2cb"; } +.bi-collection::before { content: "\f2cc"; } +.bi-columns-gap::before { content: "\f2cd"; } +.bi-columns::before { content: "\f2ce"; } +.bi-command::before { content: "\f2cf"; } +.bi-compass-fill::before { content: "\f2d0"; } +.bi-compass::before { content: "\f2d1"; } +.bi-cone-striped::before { content: "\f2d2"; } +.bi-cone::before { content: "\f2d3"; } +.bi-controller::before { content: "\f2d4"; } +.bi-cpu-fill::before { content: "\f2d5"; } +.bi-cpu::before { content: "\f2d6"; } +.bi-credit-card-2-back-fill::before { content: "\f2d7"; } +.bi-credit-card-2-back::before { content: "\f2d8"; } +.bi-credit-card-2-front-fill::before { content: "\f2d9"; } +.bi-credit-card-2-front::before { content: "\f2da"; } +.bi-credit-card-fill::before { content: "\f2db"; } +.bi-credit-card::before { content: "\f2dc"; } +.bi-crop::before { content: "\f2dd"; } +.bi-cup-fill::before { content: "\f2de"; } +.bi-cup-straw::before { content: "\f2df"; } +.bi-cup::before { content: "\f2e0"; } +.bi-cursor-fill::before { content: "\f2e1"; } +.bi-cursor-text::before { content: "\f2e2"; } +.bi-cursor::before { content: "\f2e3"; } +.bi-dash-circle-dotted::before { content: "\f2e4"; } +.bi-dash-circle-fill::before { content: "\f2e5"; } +.bi-dash-circle::before { content: "\f2e6"; } +.bi-dash-square-dotted::before { content: "\f2e7"; } +.bi-dash-square-fill::before { content: "\f2e8"; } +.bi-dash-square::before { content: "\f2e9"; } +.bi-dash::before { content: "\f2ea"; } +.bi-diagram-2-fill::before { content: "\f2eb"; } +.bi-diagram-2::before { content: "\f2ec"; } +.bi-diagram-3-fill::before { content: "\f2ed"; } +.bi-diagram-3::before { content: "\f2ee"; } +.bi-diamond-fill::before { content: "\f2ef"; } +.bi-diamond-half::before { content: "\f2f0"; } +.bi-diamond::before { content: "\f2f1"; } +.bi-dice-1-fill::before { content: "\f2f2"; } +.bi-dice-1::before { content: "\f2f3"; } +.bi-dice-2-fill::before { content: "\f2f4"; } +.bi-dice-2::before { content: "\f2f5"; } +.bi-dice-3-fill::before { content: "\f2f6"; } +.bi-dice-3::before { content: "\f2f7"; } +.bi-dice-4-fill::before { content: "\f2f8"; } +.bi-dice-4::before { content: "\f2f9"; } +.bi-dice-5-fill::before { content: "\f2fa"; } +.bi-dice-5::before { content: "\f2fb"; } +.bi-dice-6-fill::before { content: "\f2fc"; } +.bi-dice-6::before { content: "\f2fd"; } +.bi-disc-fill::before { content: "\f2fe"; } +.bi-disc::before { content: "\f2ff"; } +.bi-discord::before { content: "\f300"; } +.bi-display-fill::before { content: "\f301"; } +.bi-display::before { content: "\f302"; } +.bi-distribute-horizontal::before { content: "\f303"; } +.bi-distribute-vertical::before { content: "\f304"; } +.bi-door-closed-fill::before { content: "\f305"; } +.bi-door-closed::before { content: "\f306"; } +.bi-door-open-fill::before { content: "\f307"; } +.bi-door-open::before { content: "\f308"; } +.bi-dot::before { content: "\f309"; } +.bi-download::before { content: "\f30a"; } +.bi-droplet-fill::before { content: "\f30b"; } +.bi-droplet-half::before { content: "\f30c"; } +.bi-droplet::before { content: "\f30d"; } +.bi-earbuds::before { content: "\f30e"; } +.bi-easel-fill::before { content: "\f30f"; } +.bi-easel::before { content: "\f310"; } +.bi-egg-fill::before { content: "\f311"; } +.bi-egg-fried::before { content: "\f312"; } +.bi-egg::before { content: "\f313"; } +.bi-eject-fill::before { content: "\f314"; } +.bi-eject::before { content: "\f315"; } +.bi-emoji-angry-fill::before { content: "\f316"; } +.bi-emoji-angry::before { content: "\f317"; } +.bi-emoji-dizzy-fill::before { content: "\f318"; } +.bi-emoji-dizzy::before { content: "\f319"; } +.bi-emoji-expressionless-fill::before { content: "\f31a"; } +.bi-emoji-expressionless::before { content: "\f31b"; } +.bi-emoji-frown-fill::before { content: "\f31c"; } +.bi-emoji-frown::before { content: "\f31d"; } +.bi-emoji-heart-eyes-fill::before { content: "\f31e"; } +.bi-emoji-heart-eyes::before { content: "\f31f"; } +.bi-emoji-laughing-fill::before { content: "\f320"; } +.bi-emoji-laughing::before { content: "\f321"; } +.bi-emoji-neutral-fill::before { content: "\f322"; } +.bi-emoji-neutral::before { content: "\f323"; } +.bi-emoji-smile-fill::before { content: "\f324"; } +.bi-emoji-smile-upside-down-fill::before { content: "\f325"; } +.bi-emoji-smile-upside-down::before { content: "\f326"; } +.bi-emoji-smile::before { content: "\f327"; } +.bi-emoji-sunglasses-fill::before { content: "\f328"; } +.bi-emoji-sunglasses::before { content: "\f329"; } +.bi-emoji-wink-fill::before { content: "\f32a"; } +.bi-emoji-wink::before { content: "\f32b"; } +.bi-envelope-fill::before { content: "\f32c"; } +.bi-envelope-open-fill::before { content: "\f32d"; } +.bi-envelope-open::before { content: "\f32e"; } +.bi-envelope::before { content: "\f32f"; } +.bi-eraser-fill::before { content: "\f330"; } +.bi-eraser::before { content: "\f331"; } +.bi-exclamation-circle-fill::before { content: "\f332"; } +.bi-exclamation-circle::before { content: "\f333"; } +.bi-exclamation-diamond-fill::before { content: "\f334"; } +.bi-exclamation-diamond::before { content: "\f335"; } +.bi-exclamation-octagon-fill::before { content: "\f336"; } +.bi-exclamation-octagon::before { content: "\f337"; } +.bi-exclamation-square-fill::before { content: "\f338"; } +.bi-exclamation-square::before { content: "\f339"; } +.bi-exclamation-triangle-fill::before { content: "\f33a"; } +.bi-exclamation-triangle::before { content: "\f33b"; } +.bi-exclamation::before { content: "\f33c"; } +.bi-exclude::before { content: "\f33d"; } +.bi-eye-fill::before { content: "\f33e"; } +.bi-eye-slash-fill::before { content: "\f33f"; } +.bi-eye-slash::before { content: "\f340"; } +.bi-eye::before { content: "\f341"; } +.bi-eyedropper::before { content: "\f342"; } +.bi-eyeglasses::before { content: "\f343"; } +.bi-facebook::before { content: "\f344"; } +.bi-file-arrow-down-fill::before { content: "\f345"; } +.bi-file-arrow-down::before { content: "\f346"; } +.bi-file-arrow-up-fill::before { content: "\f347"; } +.bi-file-arrow-up::before { content: "\f348"; } +.bi-file-bar-graph-fill::before { content: "\f349"; } +.bi-file-bar-graph::before { content: "\f34a"; } +.bi-file-binary-fill::before { content: "\f34b"; } +.bi-file-binary::before { content: "\f34c"; } +.bi-file-break-fill::before { content: "\f34d"; } +.bi-file-break::before { content: "\f34e"; } +.bi-file-check-fill::before { content: "\f34f"; } +.bi-file-check::before { content: "\f350"; } +.bi-file-code-fill::before { content: "\f351"; } +.bi-file-code::before { content: "\f352"; } +.bi-file-diff-fill::before { content: "\f353"; } +.bi-file-diff::before { content: "\f354"; } +.bi-file-earmark-arrow-down-fill::before { content: "\f355"; } +.bi-file-earmark-arrow-down::before { content: "\f356"; } +.bi-file-earmark-arrow-up-fill::before { content: "\f357"; } +.bi-file-earmark-arrow-up::before { content: "\f358"; } +.bi-file-earmark-bar-graph-fill::before { content: "\f359"; } +.bi-file-earmark-bar-graph::before { content: "\f35a"; } +.bi-file-earmark-binary-fill::before { content: "\f35b"; } +.bi-file-earmark-binary::before { content: "\f35c"; } +.bi-file-earmark-break-fill::before { content: "\f35d"; } +.bi-file-earmark-break::before { content: "\f35e"; } +.bi-file-earmark-check-fill::before { content: "\f35f"; } +.bi-file-earmark-check::before { content: "\f360"; } +.bi-file-earmark-code-fill::before { content: "\f361"; } +.bi-file-earmark-code::before { content: "\f362"; } +.bi-file-earmark-diff-fill::before { content: "\f363"; } +.bi-file-earmark-diff::before { content: "\f364"; } +.bi-file-earmark-easel-fill::before { content: "\f365"; } +.bi-file-earmark-easel::before { content: "\f366"; } +.bi-file-earmark-excel-fill::before { content: "\f367"; } +.bi-file-earmark-excel::before { content: "\f368"; } +.bi-file-earmark-fill::before { content: "\f369"; } +.bi-file-earmark-font-fill::before { content: "\f36a"; } +.bi-file-earmark-font::before { content: "\f36b"; } +.bi-file-earmark-image-fill::before { content: "\f36c"; } +.bi-file-earmark-image::before { content: "\f36d"; } +.bi-file-earmark-lock-fill::before { content: "\f36e"; } +.bi-file-earmark-lock::before { content: "\f36f"; } +.bi-file-earmark-lock2-fill::before { content: "\f370"; } +.bi-file-earmark-lock2::before { content: "\f371"; } +.bi-file-earmark-medical-fill::before { content: "\f372"; } +.bi-file-earmark-medical::before { content: "\f373"; } +.bi-file-earmark-minus-fill::before { content: "\f374"; } +.bi-file-earmark-minus::before { content: "\f375"; } +.bi-file-earmark-music-fill::before { content: "\f376"; } +.bi-file-earmark-music::before { content: "\f377"; } +.bi-file-earmark-person-fill::before { content: "\f378"; } +.bi-file-earmark-person::before { content: "\f379"; } +.bi-file-earmark-play-fill::before { content: "\f37a"; } +.bi-file-earmark-play::before { content: "\f37b"; } +.bi-file-earmark-plus-fill::before { content: "\f37c"; } +.bi-file-earmark-plus::before { content: "\f37d"; } +.bi-file-earmark-post-fill::before { content: "\f37e"; } +.bi-file-earmark-post::before { content: "\f37f"; } +.bi-file-earmark-ppt-fill::before { content: "\f380"; } +.bi-file-earmark-ppt::before { content: "\f381"; } +.bi-file-earmark-richtext-fill::before { content: "\f382"; } +.bi-file-earmark-richtext::before { content: "\f383"; } +.bi-file-earmark-ruled-fill::before { content: "\f384"; } +.bi-file-earmark-ruled::before { content: "\f385"; } +.bi-file-earmark-slides-fill::before { content: "\f386"; } +.bi-file-earmark-slides::before { content: "\f387"; } +.bi-file-earmark-spreadsheet-fill::before { content: "\f388"; } +.bi-file-earmark-spreadsheet::before { content: "\f389"; } +.bi-file-earmark-text-fill::before { content: "\f38a"; } +.bi-file-earmark-text::before { content: "\f38b"; } +.bi-file-earmark-word-fill::before { content: "\f38c"; } +.bi-file-earmark-word::before { content: "\f38d"; } +.bi-file-earmark-x-fill::before { content: "\f38e"; } +.bi-file-earmark-x::before { content: "\f38f"; } +.bi-file-earmark-zip-fill::before { content: "\f390"; } +.bi-file-earmark-zip::before { content: "\f391"; } +.bi-file-earmark::before { content: "\f392"; } +.bi-file-easel-fill::before { content: "\f393"; } +.bi-file-easel::before { content: "\f394"; } +.bi-file-excel-fill::before { content: "\f395"; } +.bi-file-excel::before { content: "\f396"; } +.bi-file-fill::before { content: "\f397"; } +.bi-file-font-fill::before { content: "\f398"; } +.bi-file-font::before { content: "\f399"; } +.bi-file-image-fill::before { content: "\f39a"; } +.bi-file-image::before { content: "\f39b"; } +.bi-file-lock-fill::before { content: "\f39c"; } +.bi-file-lock::before { content: "\f39d"; } +.bi-file-lock2-fill::before { content: "\f39e"; } +.bi-file-lock2::before { content: "\f39f"; } +.bi-file-medical-fill::before { content: "\f3a0"; } +.bi-file-medical::before { content: "\f3a1"; } +.bi-file-minus-fill::before { content: "\f3a2"; } +.bi-file-minus::before { content: "\f3a3"; } +.bi-file-music-fill::before { content: "\f3a4"; } +.bi-file-music::before { content: "\f3a5"; } +.bi-file-person-fill::before { content: "\f3a6"; } +.bi-file-person::before { content: "\f3a7"; } +.bi-file-play-fill::before { content: "\f3a8"; } +.bi-file-play::before { content: "\f3a9"; } +.bi-file-plus-fill::before { content: "\f3aa"; } +.bi-file-plus::before { content: "\f3ab"; } +.bi-file-post-fill::before { content: "\f3ac"; } +.bi-file-post::before { content: "\f3ad"; } +.bi-file-ppt-fill::before { content: "\f3ae"; } +.bi-file-ppt::before { content: "\f3af"; } +.bi-file-richtext-fill::before { content: "\f3b0"; } +.bi-file-richtext::before { content: "\f3b1"; } +.bi-file-ruled-fill::before { content: "\f3b2"; } +.bi-file-ruled::before { content: "\f3b3"; } +.bi-file-slides-fill::before { content: "\f3b4"; } +.bi-file-slides::before { content: "\f3b5"; } +.bi-file-spreadsheet-fill::before { content: "\f3b6"; } +.bi-file-spreadsheet::before { content: "\f3b7"; } +.bi-file-text-fill::before { content: "\f3b8"; } +.bi-file-text::before { content: "\f3b9"; } +.bi-file-word-fill::before { content: "\f3ba"; } +.bi-file-word::before { content: "\f3bb"; } +.bi-file-x-fill::before { content: "\f3bc"; } +.bi-file-x::before { content: "\f3bd"; } +.bi-file-zip-fill::before { content: "\f3be"; } +.bi-file-zip::before { content: "\f3bf"; } +.bi-file::before { content: "\f3c0"; } +.bi-files-alt::before { content: "\f3c1"; } +.bi-files::before { content: "\f3c2"; } +.bi-film::before { content: "\f3c3"; } +.bi-filter-circle-fill::before { content: "\f3c4"; } +.bi-filter-circle::before { content: "\f3c5"; } +.bi-filter-left::before { content: "\f3c6"; } +.bi-filter-right::before { content: "\f3c7"; } +.bi-filter-square-fill::before { content: "\f3c8"; } +.bi-filter-square::before { content: "\f3c9"; } +.bi-filter::before { content: "\f3ca"; } +.bi-flag-fill::before { content: "\f3cb"; } +.bi-flag::before { content: "\f3cc"; } +.bi-flower1::before { content: "\f3cd"; } +.bi-flower2::before { content: "\f3ce"; } +.bi-flower3::before { content: "\f3cf"; } +.bi-folder-check::before { content: "\f3d0"; } +.bi-folder-fill::before { content: "\f3d1"; } +.bi-folder-minus::before { content: "\f3d2"; } +.bi-folder-plus::before { content: "\f3d3"; } +.bi-folder-symlink-fill::before { content: "\f3d4"; } +.bi-folder-symlink::before { content: "\f3d5"; } +.bi-folder-x::before { content: "\f3d6"; } +.bi-folder::before { content: "\f3d7"; } +.bi-folder2-open::before { content: "\f3d8"; } +.bi-folder2::before { content: "\f3d9"; } +.bi-fonts::before { content: "\f3da"; } +.bi-forward-fill::before { content: "\f3db"; } +.bi-forward::before { content: "\f3dc"; } +.bi-front::before { content: "\f3dd"; } +.bi-fullscreen-exit::before { content: "\f3de"; } +.bi-fullscreen::before { content: "\f3df"; } +.bi-funnel-fill::before { content: "\f3e0"; } +.bi-funnel::before { content: "\f3e1"; } +.bi-gear-fill::before { content: "\f3e2"; } +.bi-gear-wide-connected::before { content: "\f3e3"; } +.bi-gear-wide::before { content: "\f3e4"; } +.bi-gear::before { content: "\f3e5"; } +.bi-gem::before { content: "\f3e6"; } +.bi-geo-alt-fill::before { content: "\f3e7"; } +.bi-geo-alt::before { content: "\f3e8"; } +.bi-geo-fill::before { content: "\f3e9"; } +.bi-geo::before { content: "\f3ea"; } +.bi-gift-fill::before { content: "\f3eb"; } +.bi-gift::before { content: "\f3ec"; } +.bi-github::before { content: "\f3ed"; } +.bi-globe::before { content: "\f3ee"; } +.bi-globe2::before { content: "\f3ef"; } +.bi-google::before { content: "\f3f0"; } +.bi-graph-down::before { content: "\f3f1"; } +.bi-graph-up::before { content: "\f3f2"; } +.bi-grid-1x2-fill::before { content: "\f3f3"; } +.bi-grid-1x2::before { content: "\f3f4"; } +.bi-grid-3x2-gap-fill::before { content: "\f3f5"; } +.bi-grid-3x2-gap::before { content: "\f3f6"; } +.bi-grid-3x2::before { content: "\f3f7"; } +.bi-grid-3x3-gap-fill::before { content: "\f3f8"; } +.bi-grid-3x3-gap::before { content: "\f3f9"; } +.bi-grid-3x3::before { content: "\f3fa"; } +.bi-grid-fill::before { content: "\f3fb"; } +.bi-grid::before { content: "\f3fc"; } +.bi-grip-horizontal::before { content: "\f3fd"; } +.bi-grip-vertical::before { content: "\f3fe"; } +.bi-hammer::before { content: "\f3ff"; } +.bi-hand-index-fill::before { content: "\f400"; } +.bi-hand-index-thumb-fill::before { content: "\f401"; } +.bi-hand-index-thumb::before { content: "\f402"; } +.bi-hand-index::before { content: "\f403"; } +.bi-hand-thumbs-down-fill::before { content: "\f404"; } +.bi-hand-thumbs-down::before { content: "\f405"; } +.bi-hand-thumbs-up-fill::before { content: "\f406"; } +.bi-hand-thumbs-up::before { content: "\f407"; } +.bi-handbag-fill::before { content: "\f408"; } +.bi-handbag::before { content: "\f409"; } +.bi-hash::before { content: "\f40a"; } +.bi-hdd-fill::before { content: "\f40b"; } +.bi-hdd-network-fill::before { content: "\f40c"; } +.bi-hdd-network::before { content: "\f40d"; } +.bi-hdd-rack-fill::before { content: "\f40e"; } +.bi-hdd-rack::before { content: "\f40f"; } +.bi-hdd-stack-fill::before { content: "\f410"; } +.bi-hdd-stack::before { content: "\f411"; } +.bi-hdd::before { content: "\f412"; } +.bi-headphones::before { content: "\f413"; } +.bi-headset::before { content: "\f414"; } +.bi-heart-fill::before { content: "\f415"; } +.bi-heart-half::before { content: "\f416"; } +.bi-heart::before { content: "\f417"; } +.bi-heptagon-fill::before { content: "\f418"; } +.bi-heptagon-half::before { content: "\f419"; } +.bi-heptagon::before { content: "\f41a"; } +.bi-hexagon-fill::before { content: "\f41b"; } +.bi-hexagon-half::before { content: "\f41c"; } +.bi-hexagon::before { content: "\f41d"; } +.bi-hourglass-bottom::before { content: "\f41e"; } +.bi-hourglass-split::before { content: "\f41f"; } +.bi-hourglass-top::before { content: "\f420"; } +.bi-hourglass::before { content: "\f421"; } +.bi-house-door-fill::before { content: "\f422"; } +.bi-house-door::before { content: "\f423"; } +.bi-house-fill::before { content: "\f424"; } +.bi-house::before { content: "\f425"; } +.bi-hr::before { content: "\f426"; } +.bi-hurricane::before { content: "\f427"; } +.bi-image-alt::before { content: "\f428"; } +.bi-image-fill::before { content: "\f429"; } +.bi-image::before { content: "\f42a"; } +.bi-images::before { content: "\f42b"; } +.bi-inbox-fill::before { content: "\f42c"; } +.bi-inbox::before { content: "\f42d"; } +.bi-inboxes-fill::before { content: "\f42e"; } +.bi-inboxes::before { content: "\f42f"; } +.bi-info-circle-fill::before { content: "\f430"; } +.bi-info-circle::before { content: "\f431"; } +.bi-info-square-fill::before { content: "\f432"; } +.bi-info-square::before { content: "\f433"; } +.bi-info::before { content: "\f434"; } +.bi-input-cursor-text::before { content: "\f435"; } +.bi-input-cursor::before { content: "\f436"; } +.bi-instagram::before { content: "\f437"; } +.bi-intersect::before { content: "\f438"; } +.bi-journal-album::before { content: "\f439"; } +.bi-journal-arrow-down::before { content: "\f43a"; } +.bi-journal-arrow-up::before { content: "\f43b"; } +.bi-journal-bookmark-fill::before { content: "\f43c"; } +.bi-journal-bookmark::before { content: "\f43d"; } +.bi-journal-check::before { content: "\f43e"; } +.bi-journal-code::before { content: "\f43f"; } +.bi-journal-medical::before { content: "\f440"; } +.bi-journal-minus::before { content: "\f441"; } +.bi-journal-plus::before { content: "\f442"; } +.bi-journal-richtext::before { content: "\f443"; } +.bi-journal-text::before { content: "\f444"; } +.bi-journal-x::before { content: "\f445"; } +.bi-journal::before { content: "\f446"; } +.bi-journals::before { content: "\f447"; } +.bi-joystick::before { content: "\f448"; } +.bi-justify-left::before { content: "\f449"; } +.bi-justify-right::before { content: "\f44a"; } +.bi-justify::before { content: "\f44b"; } +.bi-kanban-fill::before { content: "\f44c"; } +.bi-kanban::before { content: "\f44d"; } +.bi-key-fill::before { content: "\f44e"; } +.bi-key::before { content: "\f44f"; } +.bi-keyboard-fill::before { content: "\f450"; } +.bi-keyboard::before { content: "\f451"; } +.bi-ladder::before { content: "\f452"; } +.bi-lamp-fill::before { content: "\f453"; } +.bi-lamp::before { content: "\f454"; } +.bi-laptop-fill::before { content: "\f455"; } +.bi-laptop::before { content: "\f456"; } +.bi-layer-backward::before { content: "\f457"; } +.bi-layer-forward::before { content: "\f458"; } +.bi-layers-fill::before { content: "\f459"; } +.bi-layers-half::before { content: "\f45a"; } +.bi-layers::before { content: "\f45b"; } +.bi-layout-sidebar-inset-reverse::before { content: "\f45c"; } +.bi-layout-sidebar-inset::before { content: "\f45d"; } +.bi-layout-sidebar-reverse::before { content: "\f45e"; } +.bi-layout-sidebar::before { content: "\f45f"; } +.bi-layout-split::before { content: "\f460"; } +.bi-layout-text-sidebar-reverse::before { content: "\f461"; } +.bi-layout-text-sidebar::before { content: "\f462"; } +.bi-layout-text-window-reverse::before { content: "\f463"; } +.bi-layout-text-window::before { content: "\f464"; } +.bi-layout-three-columns::before { content: "\f465"; } +.bi-layout-wtf::before { content: "\f466"; } +.bi-life-preserver::before { content: "\f467"; } +.bi-lightbulb-fill::before { content: "\f468"; } +.bi-lightbulb-off-fill::before { content: "\f469"; } +.bi-lightbulb-off::before { content: "\f46a"; } +.bi-lightbulb::before { content: "\f46b"; } +.bi-lightning-charge-fill::before { content: "\f46c"; } +.bi-lightning-charge::before { content: "\f46d"; } +.bi-lightning-fill::before { content: "\f46e"; } +.bi-lightning::before { content: "\f46f"; } +.bi-link-45deg::before { content: "\f470"; } +.bi-link::before { content: "\f471"; } +.bi-linkedin::before { content: "\f472"; } +.bi-list-check::before { content: "\f473"; } +.bi-list-nested::before { content: "\f474"; } +.bi-list-ol::before { content: "\f475"; } +.bi-list-stars::before { content: "\f476"; } +.bi-list-task::before { content: "\f477"; } +.bi-list-ul::before { content: "\f478"; } +.bi-list::before { content: "\f479"; } +.bi-lock-fill::before { content: "\f47a"; } +.bi-lock::before { content: "\f47b"; } +.bi-mailbox::before { content: "\f47c"; } +.bi-mailbox2::before { content: "\f47d"; } +.bi-map-fill::before { content: "\f47e"; } +.bi-map::before { content: "\f47f"; } +.bi-markdown-fill::before { content: "\f480"; } +.bi-markdown::before { content: "\f481"; } +.bi-mask::before { content: "\f482"; } +.bi-megaphone-fill::before { content: "\f483"; } +.bi-megaphone::before { content: "\f484"; } +.bi-menu-app-fill::before { content: "\f485"; } +.bi-menu-app::before { content: "\f486"; } +.bi-menu-button-fill::before { content: "\f487"; } +.bi-menu-button-wide-fill::before { content: "\f488"; } +.bi-menu-button-wide::before { content: "\f489"; } +.bi-menu-button::before { content: "\f48a"; } +.bi-menu-down::before { content: "\f48b"; } +.bi-menu-up::before { content: "\f48c"; } +.bi-mic-fill::before { content: "\f48d"; } +.bi-mic-mute-fill::before { content: "\f48e"; } +.bi-mic-mute::before { content: "\f48f"; } +.bi-mic::before { content: "\f490"; } +.bi-minecart-loaded::before { content: "\f491"; } +.bi-minecart::before { content: "\f492"; } +.bi-moisture::before { content: "\f493"; } +.bi-moon-fill::before { content: "\f494"; } +.bi-moon-stars-fill::before { content: "\f495"; } +.bi-moon-stars::before { content: "\f496"; } +.bi-moon::before { content: "\f497"; } +.bi-mouse-fill::before { content: "\f498"; } +.bi-mouse::before { content: "\f499"; } +.bi-mouse2-fill::before { content: "\f49a"; } +.bi-mouse2::before { content: "\f49b"; } +.bi-mouse3-fill::before { content: "\f49c"; } +.bi-mouse3::before { content: "\f49d"; } +.bi-music-note-beamed::before { content: "\f49e"; } +.bi-music-note-list::before { content: "\f49f"; } +.bi-music-note::before { content: "\f4a0"; } +.bi-music-player-fill::before { content: "\f4a1"; } +.bi-music-player::before { content: "\f4a2"; } +.bi-newspaper::before { content: "\f4a3"; } +.bi-node-minus-fill::before { content: "\f4a4"; } +.bi-node-minus::before { content: "\f4a5"; } +.bi-node-plus-fill::before { content: "\f4a6"; } +.bi-node-plus::before { content: "\f4a7"; } +.bi-nut-fill::before { content: "\f4a8"; } +.bi-nut::before { content: "\f4a9"; } +.bi-octagon-fill::before { content: "\f4aa"; } +.bi-octagon-half::before { content: "\f4ab"; } +.bi-octagon::before { content: "\f4ac"; } +.bi-option::before { content: "\f4ad"; } +.bi-outlet::before { content: "\f4ae"; } +.bi-paint-bucket::before { content: "\f4af"; } +.bi-palette-fill::before { content: "\f4b0"; } +.bi-palette::before { content: "\f4b1"; } +.bi-palette2::before { content: "\f4b2"; } +.bi-paperclip::before { content: "\f4b3"; } +.bi-paragraph::before { content: "\f4b4"; } +.bi-patch-check-fill::before { content: "\f4b5"; } +.bi-patch-check::before { content: "\f4b6"; } +.bi-patch-exclamation-fill::before { content: "\f4b7"; } +.bi-patch-exclamation::before { content: "\f4b8"; } +.bi-patch-minus-fill::before { content: "\f4b9"; } +.bi-patch-minus::before { content: "\f4ba"; } +.bi-patch-plus-fill::before { content: "\f4bb"; } +.bi-patch-plus::before { content: "\f4bc"; } +.bi-patch-question-fill::before { content: "\f4bd"; } +.bi-patch-question::before { content: "\f4be"; } +.bi-pause-btn-fill::before { content: "\f4bf"; } +.bi-pause-btn::before { content: "\f4c0"; } +.bi-pause-circle-fill::before { content: "\f4c1"; } +.bi-pause-circle::before { content: "\f4c2"; } +.bi-pause-fill::before { content: "\f4c3"; } +.bi-pause::before { content: "\f4c4"; } +.bi-peace-fill::before { content: "\f4c5"; } +.bi-peace::before { content: "\f4c6"; } +.bi-pen-fill::before { content: "\f4c7"; } +.bi-pen::before { content: "\f4c8"; } +.bi-pencil-fill::before { content: "\f4c9"; } +.bi-pencil-square::before { content: "\f4ca"; } +.bi-pencil::before { content: "\f4cb"; } +.bi-pentagon-fill::before { content: "\f4cc"; } +.bi-pentagon-half::before { content: "\f4cd"; } +.bi-pentagon::before { content: "\f4ce"; } +.bi-people-fill::before { content: "\f4cf"; } +.bi-people::before { content: "\f4d0"; } +.bi-percent::before { content: "\f4d1"; } +.bi-person-badge-fill::before { content: "\f4d2"; } +.bi-person-badge::before { content: "\f4d3"; } +.bi-person-bounding-box::before { content: "\f4d4"; } +.bi-person-check-fill::before { content: "\f4d5"; } +.bi-person-check::before { content: "\f4d6"; } +.bi-person-circle::before { content: "\f4d7"; } +.bi-person-dash-fill::before { content: "\f4d8"; } +.bi-person-dash::before { content: "\f4d9"; } +.bi-person-fill::before { content: "\f4da"; } +.bi-person-lines-fill::before { content: "\f4db"; } +.bi-person-plus-fill::before { content: "\f4dc"; } +.bi-person-plus::before { content: "\f4dd"; } +.bi-person-square::before { content: "\f4de"; } +.bi-person-x-fill::before { content: "\f4df"; } +.bi-person-x::before { content: "\f4e0"; } +.bi-person::before { content: "\f4e1"; } +.bi-phone-fill::before { content: "\f4e2"; } +.bi-phone-landscape-fill::before { content: "\f4e3"; } +.bi-phone-landscape::before { content: "\f4e4"; } +.bi-phone-vibrate-fill::before { content: "\f4e5"; } +.bi-phone-vibrate::before { content: "\f4e6"; } +.bi-phone::before { content: "\f4e7"; } +.bi-pie-chart-fill::before { content: "\f4e8"; } +.bi-pie-chart::before { content: "\f4e9"; } +.bi-pin-angle-fill::before { content: "\f4ea"; } +.bi-pin-angle::before { content: "\f4eb"; } +.bi-pin-fill::before { content: "\f4ec"; } +.bi-pin::before { content: "\f4ed"; } +.bi-pip-fill::before { content: "\f4ee"; } +.bi-pip::before { content: "\f4ef"; } +.bi-play-btn-fill::before { content: "\f4f0"; } +.bi-play-btn::before { content: "\f4f1"; } +.bi-play-circle-fill::before { content: "\f4f2"; } +.bi-play-circle::before { content: "\f4f3"; } +.bi-play-fill::before { content: "\f4f4"; } +.bi-play::before { content: "\f4f5"; } +.bi-plug-fill::before { content: "\f4f6"; } +.bi-plug::before { content: "\f4f7"; } +.bi-plus-circle-dotted::before { content: "\f4f8"; } +.bi-plus-circle-fill::before { content: "\f4f9"; } +.bi-plus-circle::before { content: "\f4fa"; } +.bi-plus-square-dotted::before { content: "\f4fb"; } +.bi-plus-square-fill::before { content: "\f4fc"; } +.bi-plus-square::before { content: "\f4fd"; } +.bi-plus::before { content: "\f4fe"; } +.bi-power::before { content: "\f4ff"; } +.bi-printer-fill::before { content: "\f500"; } +.bi-printer::before { content: "\f501"; } +.bi-puzzle-fill::before { content: "\f502"; } +.bi-puzzle::before { content: "\f503"; } +.bi-question-circle-fill::before { content: "\f504"; } +.bi-question-circle::before { content: "\f505"; } +.bi-question-diamond-fill::before { content: "\f506"; } +.bi-question-diamond::before { content: "\f507"; } +.bi-question-octagon-fill::before { content: "\f508"; } +.bi-question-octagon::before { content: "\f509"; } +.bi-question-square-fill::before { content: "\f50a"; } +.bi-question-square::before { content: "\f50b"; } +.bi-question::before { content: "\f50c"; } +.bi-rainbow::before { content: "\f50d"; } +.bi-receipt-cutoff::before { content: "\f50e"; } +.bi-receipt::before { content: "\f50f"; } +.bi-reception-0::before { content: "\f510"; } +.bi-reception-1::before { content: "\f511"; } +.bi-reception-2::before { content: "\f512"; } +.bi-reception-3::before { content: "\f513"; } +.bi-reception-4::before { content: "\f514"; } +.bi-record-btn-fill::before { content: "\f515"; } +.bi-record-btn::before { content: "\f516"; } +.bi-record-circle-fill::before { content: "\f517"; } +.bi-record-circle::before { content: "\f518"; } +.bi-record-fill::before { content: "\f519"; } +.bi-record::before { content: "\f51a"; } +.bi-record2-fill::before { content: "\f51b"; } +.bi-record2::before { content: "\f51c"; } +.bi-reply-all-fill::before { content: "\f51d"; } +.bi-reply-all::before { content: "\f51e"; } +.bi-reply-fill::before { content: "\f51f"; } +.bi-reply::before { content: "\f520"; } +.bi-rss-fill::before { content: "\f521"; } +.bi-rss::before { content: "\f522"; } +.bi-rulers::before { content: "\f523"; } +.bi-save-fill::before { content: "\f524"; } +.bi-save::before { content: "\f525"; } +.bi-save2-fill::before { content: "\f526"; } +.bi-save2::before { content: "\f527"; } +.bi-scissors::before { content: "\f528"; } +.bi-screwdriver::before { content: "\f529"; } +.bi-search::before { content: "\f52a"; } +.bi-segmented-nav::before { content: "\f52b"; } +.bi-server::before { content: "\f52c"; } +.bi-share-fill::before { content: "\f52d"; } +.bi-share::before { content: "\f52e"; } +.bi-shield-check::before { content: "\f52f"; } +.bi-shield-exclamation::before { content: "\f530"; } +.bi-shield-fill-check::before { content: "\f531"; } +.bi-shield-fill-exclamation::before { content: "\f532"; } +.bi-shield-fill-minus::before { content: "\f533"; } +.bi-shield-fill-plus::before { content: "\f534"; } +.bi-shield-fill-x::before { content: "\f535"; } +.bi-shield-fill::before { content: "\f536"; } +.bi-shield-lock-fill::before { content: "\f537"; } +.bi-shield-lock::before { content: "\f538"; } +.bi-shield-minus::before { content: "\f539"; } +.bi-shield-plus::before { content: "\f53a"; } +.bi-shield-shaded::before { content: "\f53b"; } +.bi-shield-slash-fill::before { content: "\f53c"; } +.bi-shield-slash::before { content: "\f53d"; } +.bi-shield-x::before { content: "\f53e"; } +.bi-shield::before { content: "\f53f"; } +.bi-shift-fill::before { content: "\f540"; } +.bi-shift::before { content: "\f541"; } +.bi-shop-window::before { content: "\f542"; } +.bi-shop::before { content: "\f543"; } +.bi-shuffle::before { content: "\f544"; } +.bi-signpost-2-fill::before { content: "\f545"; } +.bi-signpost-2::before { content: "\f546"; } +.bi-signpost-fill::before { content: "\f547"; } +.bi-signpost-split-fill::before { content: "\f548"; } +.bi-signpost-split::before { content: "\f549"; } +.bi-signpost::before { content: "\f54a"; } +.bi-sim-fill::before { content: "\f54b"; } +.bi-sim::before { content: "\f54c"; } +.bi-skip-backward-btn-fill::before { content: "\f54d"; } +.bi-skip-backward-btn::before { content: "\f54e"; } +.bi-skip-backward-circle-fill::before { content: "\f54f"; } +.bi-skip-backward-circle::before { content: "\f550"; } +.bi-skip-backward-fill::before { content: "\f551"; } +.bi-skip-backward::before { content: "\f552"; } +.bi-skip-end-btn-fill::before { content: "\f553"; } +.bi-skip-end-btn::before { content: "\f554"; } +.bi-skip-end-circle-fill::before { content: "\f555"; } +.bi-skip-end-circle::before { content: "\f556"; } +.bi-skip-end-fill::before { content: "\f557"; } +.bi-skip-end::before { content: "\f558"; } +.bi-skip-forward-btn-fill::before { content: "\f559"; } +.bi-skip-forward-btn::before { content: "\f55a"; } +.bi-skip-forward-circle-fill::before { content: "\f55b"; } +.bi-skip-forward-circle::before { content: "\f55c"; } +.bi-skip-forward-fill::before { content: "\f55d"; } +.bi-skip-forward::before { content: "\f55e"; } +.bi-skip-start-btn-fill::before { content: "\f55f"; } +.bi-skip-start-btn::before { content: "\f560"; } +.bi-skip-start-circle-fill::before { content: "\f561"; } +.bi-skip-start-circle::before { content: "\f562"; } +.bi-skip-start-fill::before { content: "\f563"; } +.bi-skip-start::before { content: "\f564"; } +.bi-slack::before { content: "\f565"; } +.bi-slash-circle-fill::before { content: "\f566"; } +.bi-slash-circle::before { content: "\f567"; } +.bi-slash-square-fill::before { content: "\f568"; } +.bi-slash-square::before { content: "\f569"; } +.bi-slash::before { content: "\f56a"; } +.bi-sliders::before { content: "\f56b"; } +.bi-smartwatch::before { content: "\f56c"; } +.bi-snow::before { content: "\f56d"; } +.bi-snow2::before { content: "\f56e"; } +.bi-snow3::before { content: "\f56f"; } +.bi-sort-alpha-down-alt::before { content: "\f570"; } +.bi-sort-alpha-down::before { content: "\f571"; } +.bi-sort-alpha-up-alt::before { content: "\f572"; } +.bi-sort-alpha-up::before { content: "\f573"; } +.bi-sort-down-alt::before { content: "\f574"; } +.bi-sort-down::before { content: "\f575"; } +.bi-sort-numeric-down-alt::before { content: "\f576"; } +.bi-sort-numeric-down::before { content: "\f577"; } +.bi-sort-numeric-up-alt::before { content: "\f578"; } +.bi-sort-numeric-up::before { content: "\f579"; } +.bi-sort-up-alt::before { content: "\f57a"; } +.bi-sort-up::before { content: "\f57b"; } +.bi-soundwave::before { content: "\f57c"; } +.bi-speaker-fill::before { content: "\f57d"; } +.bi-speaker::before { content: "\f57e"; } +.bi-speedometer::before { content: "\f57f"; } +.bi-speedometer2::before { content: "\f580"; } +.bi-spellcheck::before { content: "\f581"; } +.bi-square-fill::before { content: "\f582"; } +.bi-square-half::before { content: "\f583"; } +.bi-square::before { content: "\f584"; } +.bi-stack::before { content: "\f585"; } +.bi-star-fill::before { content: "\f586"; } +.bi-star-half::before { content: "\f587"; } +.bi-star::before { content: "\f588"; } +.bi-stars::before { content: "\f589"; } +.bi-stickies-fill::before { content: "\f58a"; } +.bi-stickies::before { content: "\f58b"; } +.bi-sticky-fill::before { content: "\f58c"; } +.bi-sticky::before { content: "\f58d"; } +.bi-stop-btn-fill::before { content: "\f58e"; } +.bi-stop-btn::before { content: "\f58f"; } +.bi-stop-circle-fill::before { content: "\f590"; } +.bi-stop-circle::before { content: "\f591"; } +.bi-stop-fill::before { content: "\f592"; } +.bi-stop::before { content: "\f593"; } +.bi-stoplights-fill::before { content: "\f594"; } +.bi-stoplights::before { content: "\f595"; } +.bi-stopwatch-fill::before { content: "\f596"; } +.bi-stopwatch::before { content: "\f597"; } +.bi-subtract::before { content: "\f598"; } +.bi-suit-club-fill::before { content: "\f599"; } +.bi-suit-club::before { content: "\f59a"; } +.bi-suit-diamond-fill::before { content: "\f59b"; } +.bi-suit-diamond::before { content: "\f59c"; } +.bi-suit-heart-fill::before { content: "\f59d"; } +.bi-suit-heart::before { content: "\f59e"; } +.bi-suit-spade-fill::before { content: "\f59f"; } +.bi-suit-spade::before { content: "\f5a0"; } +.bi-sun-fill::before { content: "\f5a1"; } +.bi-sun::before { content: "\f5a2"; } +.bi-sunglasses::before { content: "\f5a3"; } +.bi-sunrise-fill::before { content: "\f5a4"; } +.bi-sunrise::before { content: "\f5a5"; } +.bi-sunset-fill::before { content: "\f5a6"; } +.bi-sunset::before { content: "\f5a7"; } +.bi-symmetry-horizontal::before { content: "\f5a8"; } +.bi-symmetry-vertical::before { content: "\f5a9"; } +.bi-table::before { content: "\f5aa"; } +.bi-tablet-fill::before { content: "\f5ab"; } +.bi-tablet-landscape-fill::before { content: "\f5ac"; } +.bi-tablet-landscape::before { content: "\f5ad"; } +.bi-tablet::before { content: "\f5ae"; } +.bi-tag-fill::before { content: "\f5af"; } +.bi-tag::before { content: "\f5b0"; } +.bi-tags-fill::before { content: "\f5b1"; } +.bi-tags::before { content: "\f5b2"; } +.bi-telegram::before { content: "\f5b3"; } +.bi-telephone-fill::before { content: "\f5b4"; } +.bi-telephone-forward-fill::before { content: "\f5b5"; } +.bi-telephone-forward::before { content: "\f5b6"; } +.bi-telephone-inbound-fill::before { content: "\f5b7"; } +.bi-telephone-inbound::before { content: "\f5b8"; } +.bi-telephone-minus-fill::before { content: "\f5b9"; } +.bi-telephone-minus::before { content: "\f5ba"; } +.bi-telephone-outbound-fill::before { content: "\f5bb"; } +.bi-telephone-outbound::before { content: "\f5bc"; } +.bi-telephone-plus-fill::before { content: "\f5bd"; } +.bi-telephone-plus::before { content: "\f5be"; } +.bi-telephone-x-fill::before { content: "\f5bf"; } +.bi-telephone-x::before { content: "\f5c0"; } +.bi-telephone::before { content: "\f5c1"; } +.bi-terminal-fill::before { content: "\f5c2"; } +.bi-terminal::before { content: "\f5c3"; } +.bi-text-center::before { content: "\f5c4"; } +.bi-text-indent-left::before { content: "\f5c5"; } +.bi-text-indent-right::before { content: "\f5c6"; } +.bi-text-left::before { content: "\f5c7"; } +.bi-text-paragraph::before { content: "\f5c8"; } +.bi-text-right::before { content: "\f5c9"; } +.bi-textarea-resize::before { content: "\f5ca"; } +.bi-textarea-t::before { content: "\f5cb"; } +.bi-textarea::before { content: "\f5cc"; } +.bi-thermometer-half::before { content: "\f5cd"; } +.bi-thermometer-high::before { content: "\f5ce"; } +.bi-thermometer-low::before { content: "\f5cf"; } +.bi-thermometer-snow::before { content: "\f5d0"; } +.bi-thermometer-sun::before { content: "\f5d1"; } +.bi-thermometer::before { content: "\f5d2"; } +.bi-three-dots-vertical::before { content: "\f5d3"; } +.bi-three-dots::before { content: "\f5d4"; } +.bi-toggle-off::before { content: "\f5d5"; } +.bi-toggle-on::before { content: "\f5d6"; } +.bi-toggle2-off::before { content: "\f5d7"; } +.bi-toggle2-on::before { content: "\f5d8"; } +.bi-toggles::before { content: "\f5d9"; } +.bi-toggles2::before { content: "\f5da"; } +.bi-tools::before { content: "\f5db"; } +.bi-tornado::before { content: "\f5dc"; } +.bi-trash-fill::before { content: "\f5dd"; } +.bi-trash::before { content: "\f5de"; } +.bi-trash2-fill::before { content: "\f5df"; } +.bi-trash2::before { content: "\f5e0"; } +.bi-tree-fill::before { content: "\f5e1"; } +.bi-tree::before { content: "\f5e2"; } +.bi-triangle-fill::before { content: "\f5e3"; } +.bi-triangle-half::before { content: "\f5e4"; } +.bi-triangle::before { content: "\f5e5"; } +.bi-trophy-fill::before { content: "\f5e6"; } +.bi-trophy::before { content: "\f5e7"; } +.bi-tropical-storm::before { content: "\f5e8"; } +.bi-truck-flatbed::before { content: "\f5e9"; } +.bi-truck::before { content: "\f5ea"; } +.bi-tsunami::before { content: "\f5eb"; } +.bi-tv-fill::before { content: "\f5ec"; } +.bi-tv::before { content: "\f5ed"; } +.bi-twitch::before { content: "\f5ee"; } +.bi-twitter::before { content: "\f5ef"; } +.bi-type-bold::before { content: "\f5f0"; } +.bi-type-h1::before { content: "\f5f1"; } +.bi-type-h2::before { content: "\f5f2"; } +.bi-type-h3::before { content: "\f5f3"; } +.bi-type-italic::before { content: "\f5f4"; } +.bi-type-strikethrough::before { content: "\f5f5"; } +.bi-type-underline::before { content: "\f5f6"; } +.bi-type::before { content: "\f5f7"; } +.bi-ui-checks-grid::before { content: "\f5f8"; } +.bi-ui-checks::before { content: "\f5f9"; } +.bi-ui-radios-grid::before { content: "\f5fa"; } +.bi-ui-radios::before { content: "\f5fb"; } +.bi-umbrella-fill::before { content: "\f5fc"; } +.bi-umbrella::before { content: "\f5fd"; } +.bi-union::before { content: "\f5fe"; } +.bi-unlock-fill::before { content: "\f5ff"; } +.bi-unlock::before { content: "\f600"; } +.bi-upc-scan::before { content: "\f601"; } +.bi-upc::before { content: "\f602"; } +.bi-upload::before { content: "\f603"; } +.bi-vector-pen::before { content: "\f604"; } +.bi-view-list::before { content: "\f605"; } +.bi-view-stacked::before { content: "\f606"; } +.bi-vinyl-fill::before { content: "\f607"; } +.bi-vinyl::before { content: "\f608"; } +.bi-voicemail::before { content: "\f609"; } +.bi-volume-down-fill::before { content: "\f60a"; } +.bi-volume-down::before { content: "\f60b"; } +.bi-volume-mute-fill::before { content: "\f60c"; } +.bi-volume-mute::before { content: "\f60d"; } +.bi-volume-off-fill::before { content: "\f60e"; } +.bi-volume-off::before { content: "\f60f"; } +.bi-volume-up-fill::before { content: "\f610"; } +.bi-volume-up::before { content: "\f611"; } +.bi-vr::before { content: "\f612"; } +.bi-wallet-fill::before { content: "\f613"; } +.bi-wallet::before { content: "\f614"; } +.bi-wallet2::before { content: "\f615"; } +.bi-watch::before { content: "\f616"; } +.bi-water::before { content: "\f617"; } +.bi-whatsapp::before { content: "\f618"; } +.bi-wifi-1::before { content: "\f619"; } +.bi-wifi-2::before { content: "\f61a"; } +.bi-wifi-off::before { content: "\f61b"; } +.bi-wifi::before { content: "\f61c"; } +.bi-wind::before { content: "\f61d"; } +.bi-window-dock::before { content: "\f61e"; } +.bi-window-sidebar::before { content: "\f61f"; } +.bi-window::before { content: "\f620"; } +.bi-wrench::before { content: "\f621"; } +.bi-x-circle-fill::before { content: "\f622"; } +.bi-x-circle::before { content: "\f623"; } +.bi-x-diamond-fill::before { content: "\f624"; } +.bi-x-diamond::before { content: "\f625"; } +.bi-x-octagon-fill::before { content: "\f626"; } +.bi-x-octagon::before { content: "\f627"; } +.bi-x-square-fill::before { content: "\f628"; } +.bi-x-square::before { content: "\f629"; } +.bi-x::before { content: "\f62a"; } +.bi-youtube::before { content: "\f62b"; } +.bi-zoom-in::before { content: "\f62c"; } +.bi-zoom-out::before { content: "\f62d"; } +.bi-bank::before { content: "\f62e"; } +.bi-bank2::before { content: "\f62f"; } +.bi-bell-slash-fill::before { content: "\f630"; } +.bi-bell-slash::before { content: "\f631"; } +.bi-cash-coin::before { content: "\f632"; } +.bi-check-lg::before { content: "\f633"; } +.bi-coin::before { content: "\f634"; } +.bi-currency-bitcoin::before { content: "\f635"; } +.bi-currency-dollar::before { content: "\f636"; } +.bi-currency-euro::before { content: "\f637"; } +.bi-currency-exchange::before { content: "\f638"; } +.bi-currency-pound::before { content: "\f639"; } +.bi-currency-yen::before { content: "\f63a"; } +.bi-dash-lg::before { content: "\f63b"; } +.bi-exclamation-lg::before { content: "\f63c"; } +.bi-file-earmark-pdf-fill::before { content: "\f63d"; } +.bi-file-earmark-pdf::before { content: "\f63e"; } +.bi-file-pdf-fill::before { content: "\f63f"; } +.bi-file-pdf::before { content: "\f640"; } +.bi-gender-ambiguous::before { content: "\f641"; } +.bi-gender-female::before { content: "\f642"; } +.bi-gender-male::before { content: "\f643"; } +.bi-gender-trans::before { content: "\f644"; } +.bi-headset-vr::before { content: "\f645"; } +.bi-info-lg::before { content: "\f646"; } +.bi-mastodon::before { content: "\f647"; } +.bi-messenger::before { content: "\f648"; } +.bi-piggy-bank-fill::before { content: "\f649"; } +.bi-piggy-bank::before { content: "\f64a"; } +.bi-pin-map-fill::before { content: "\f64b"; } +.bi-pin-map::before { content: "\f64c"; } +.bi-plus-lg::before { content: "\f64d"; } +.bi-question-lg::before { content: "\f64e"; } +.bi-recycle::before { content: "\f64f"; } +.bi-reddit::before { content: "\f650"; } +.bi-safe-fill::before { content: "\f651"; } +.bi-safe2-fill::before { content: "\f652"; } +.bi-safe2::before { content: "\f653"; } +.bi-sd-card-fill::before { content: "\f654"; } +.bi-sd-card::before { content: "\f655"; } +.bi-skype::before { content: "\f656"; } +.bi-slash-lg::before { content: "\f657"; } +.bi-translate::before { content: "\f658"; } +.bi-x-lg::before { content: "\f659"; } +.bi-safe::before { content: "\f65a"; } +.bi-apple::before { content: "\f65b"; } +.bi-microsoft::before { content: "\f65d"; } +.bi-windows::before { content: "\f65e"; } +.bi-behance::before { content: "\f65c"; } +.bi-dribbble::before { content: "\f65f"; } +.bi-line::before { content: "\f660"; } +.bi-medium::before { content: "\f661"; } +.bi-paypal::before { content: "\f662"; } +.bi-pinterest::before { content: "\f663"; } +.bi-signal::before { content: "\f664"; } +.bi-snapchat::before { content: "\f665"; } +.bi-spotify::before { content: "\f666"; } +.bi-stack-overflow::before { content: "\f667"; } +.bi-strava::before { content: "\f668"; } +.bi-wordpress::before { content: "\f669"; } +.bi-vimeo::before { content: "\f66a"; } +.bi-activity::before { content: "\f66b"; } +.bi-easel2-fill::before { content: "\f66c"; } +.bi-easel2::before { content: "\f66d"; } +.bi-easel3-fill::before { content: "\f66e"; } +.bi-easel3::before { content: "\f66f"; } +.bi-fan::before { content: "\f670"; } +.bi-fingerprint::before { content: "\f671"; } +.bi-graph-down-arrow::before { content: "\f672"; } +.bi-graph-up-arrow::before { content: "\f673"; } +.bi-hypnotize::before { content: "\f674"; } +.bi-magic::before { content: "\f675"; } +.bi-person-rolodex::before { content: "\f676"; } +.bi-person-video::before { content: "\f677"; } +.bi-person-video2::before { content: "\f678"; } +.bi-person-video3::before { content: "\f679"; } +.bi-person-workspace::before { content: "\f67a"; } +.bi-radioactive::before { content: "\f67b"; } +.bi-webcam-fill::before { content: "\f67c"; } +.bi-webcam::before { content: "\f67d"; } +.bi-yin-yang::before { content: "\f67e"; } +.bi-bandaid-fill::before { content: "\f680"; } +.bi-bandaid::before { content: "\f681"; } +.bi-bluetooth::before { content: "\f682"; } +.bi-body-text::before { content: "\f683"; } +.bi-boombox::before { content: "\f684"; } +.bi-boxes::before { content: "\f685"; } +.bi-dpad-fill::before { content: "\f686"; } +.bi-dpad::before { content: "\f687"; } +.bi-ear-fill::before { content: "\f688"; } +.bi-ear::before { content: "\f689"; } +.bi-envelope-check-1::before { content: "\f68a"; } +.bi-envelope-check-fill::before { content: "\f68b"; } +.bi-envelope-check::before { content: "\f68c"; } +.bi-envelope-dash-1::before { content: "\f68d"; } +.bi-envelope-dash-fill::before { content: "\f68e"; } +.bi-envelope-dash::before { content: "\f68f"; } +.bi-envelope-exclamation-1::before { content: "\f690"; } +.bi-envelope-exclamation-fill::before { content: "\f691"; } +.bi-envelope-exclamation::before { content: "\f692"; } +.bi-envelope-plus-fill::before { content: "\f693"; } +.bi-envelope-plus::before { content: "\f694"; } +.bi-envelope-slash-1::before { content: "\f695"; } +.bi-envelope-slash-fill::before { content: "\f696"; } +.bi-envelope-slash::before { content: "\f697"; } +.bi-envelope-x-1::before { content: "\f698"; } +.bi-envelope-x-fill::before { content: "\f699"; } +.bi-envelope-x::before { content: "\f69a"; } +.bi-explicit-fill::before { content: "\f69b"; } +.bi-explicit::before { content: "\f69c"; } +.bi-git::before { content: "\f69d"; } +.bi-infinity::before { content: "\f69e"; } +.bi-list-columns-reverse::before { content: "\f69f"; } +.bi-list-columns::before { content: "\f6a0"; } +.bi-meta::before { content: "\f6a1"; } +.bi-mortorboard-fill::before { content: "\f6a2"; } +.bi-mortorboard::before { content: "\f6a3"; } +.bi-nintendo-switch::before { content: "\f6a4"; } +.bi-pc-display-horizontal::before { content: "\f6a5"; } +.bi-pc-display::before { content: "\f6a6"; } +.bi-pc-horizontal::before { content: "\f6a7"; } +.bi-pc::before { content: "\f6a8"; } +.bi-playstation::before { content: "\f6a9"; } +.bi-plus-slash-minus::before { content: "\f6aa"; } +.bi-projector-fill::before { content: "\f6ab"; } +.bi-projector::before { content: "\f6ac"; } +.bi-qr-code-scan::before { content: "\f6ad"; } +.bi-qr-code::before { content: "\f6ae"; } +.bi-quora::before { content: "\f6af"; } +.bi-quote::before { content: "\f6b0"; } +.bi-robot::before { content: "\f6b1"; } +.bi-send-check-fill::before { content: "\f6b2"; } +.bi-send-check::before { content: "\f6b3"; } +.bi-send-dash-fill::before { content: "\f6b4"; } +.bi-send-dash::before { content: "\f6b5"; } +.bi-send-exclamation-1::before { content: "\f6b6"; } +.bi-send-exclamation-fill::before { content: "\f6b7"; } +.bi-send-exclamation::before { content: "\f6b8"; } +.bi-send-fill::before { content: "\f6b9"; } +.bi-send-plus-fill::before { content: "\f6ba"; } +.bi-send-plus::before { content: "\f6bb"; } +.bi-send-slash-fill::before { content: "\f6bc"; } +.bi-send-slash::before { content: "\f6bd"; } +.bi-send-x-fill::before { content: "\f6be"; } +.bi-send-x::before { content: "\f6bf"; } +.bi-send::before { content: "\f6c0"; } +.bi-steam::before { content: "\f6c1"; } +.bi-terminal-dash-1::before { content: "\f6c2"; } +.bi-terminal-dash::before { content: "\f6c3"; } +.bi-terminal-plus::before { content: "\f6c4"; } +.bi-terminal-split::before { content: "\f6c5"; } +.bi-ticket-detailed-fill::before { content: "\f6c6"; } +.bi-ticket-detailed::before { content: "\f6c7"; } +.bi-ticket-fill::before { content: "\f6c8"; } +.bi-ticket-perforated-fill::before { content: "\f6c9"; } +.bi-ticket-perforated::before { content: "\f6ca"; } +.bi-ticket::before { content: "\f6cb"; } +.bi-tiktok::before { content: "\f6cc"; } +.bi-window-dash::before { content: "\f6cd"; } +.bi-window-desktop::before { content: "\f6ce"; } +.bi-window-fullscreen::before { content: "\f6cf"; } +.bi-window-plus::before { content: "\f6d0"; } +.bi-window-split::before { content: "\f6d1"; } +.bi-window-stack::before { content: "\f6d2"; } +.bi-window-x::before { content: "\f6d3"; } +.bi-xbox::before { content: "\f6d4"; } +.bi-ethernet::before { content: "\f6d5"; } +.bi-hdmi-fill::before { content: "\f6d6"; } +.bi-hdmi::before { content: "\f6d7"; } +.bi-usb-c-fill::before { content: "\f6d8"; } +.bi-usb-c::before { content: "\f6d9"; } +.bi-usb-fill::before { content: "\f6da"; } +.bi-usb-plug-fill::before { content: "\f6db"; } +.bi-usb-plug::before { content: "\f6dc"; } +.bi-usb-symbol::before { content: "\f6dd"; } +.bi-usb::before { content: "\f6de"; } +.bi-boombox-fill::before { content: "\f6df"; } +.bi-displayport-1::before { content: "\f6e0"; } +.bi-displayport::before { content: "\f6e1"; } +.bi-gpu-card::before { content: "\f6e2"; } +.bi-memory::before { content: "\f6e3"; } +.bi-modem-fill::before { content: "\f6e4"; } +.bi-modem::before { content: "\f6e5"; } +.bi-motherboard-fill::before { content: "\f6e6"; } +.bi-motherboard::before { content: "\f6e7"; } +.bi-optical-audio-fill::before { content: "\f6e8"; } +.bi-optical-audio::before { content: "\f6e9"; } +.bi-pci-card::before { content: "\f6ea"; } +.bi-router-fill::before { content: "\f6eb"; } +.bi-router::before { content: "\f6ec"; } +.bi-ssd-fill::before { content: "\f6ed"; } +.bi-ssd::before { content: "\f6ee"; } +.bi-thunderbolt-fill::before { content: "\f6ef"; } +.bi-thunderbolt::before { content: "\f6f0"; } +.bi-usb-drive-fill::before { content: "\f6f1"; } +.bi-usb-drive::before { content: "\f6f2"; } +.bi-usb-micro-fill::before { content: "\f6f3"; } +.bi-usb-micro::before { content: "\f6f4"; } +.bi-usb-mini-fill::before { content: "\f6f5"; } +.bi-usb-mini::before { content: "\f6f6"; } +.bi-cloud-haze2::before { content: "\f6f7"; } +.bi-device-hdd-fill::before { content: "\f6f8"; } +.bi-device-hdd::before { content: "\f6f9"; } +.bi-device-ssd-fill::before { content: "\f6fa"; } +.bi-device-ssd::before { content: "\f6fb"; } +.bi-displayport-fill::before { content: "\f6fc"; } +.bi-mortarboard-fill::before { content: "\f6fd"; } +.bi-mortarboard::before { content: "\f6fe"; } +.bi-terminal-x::before { content: "\f6ff"; } +.bi-arrow-through-heart-fill::before { content: "\f700"; } +.bi-arrow-through-heart::before { content: "\f701"; } +.bi-badge-sd-fill::before { content: "\f702"; } +.bi-badge-sd::before { content: "\f703"; } +.bi-bag-heart-fill::before { content: "\f704"; } +.bi-bag-heart::before { content: "\f705"; } +.bi-balloon-fill::before { content: "\f706"; } +.bi-balloon-heart-fill::before { content: "\f707"; } +.bi-balloon-heart::before { content: "\f708"; } +.bi-balloon::before { content: "\f709"; } +.bi-box2-fill::before { content: "\f70a"; } +.bi-box2-heart-fill::before { content: "\f70b"; } +.bi-box2-heart::before { content: "\f70c"; } +.bi-box2::before { content: "\f70d"; } +.bi-braces-asterisk::before { content: "\f70e"; } +.bi-calendar-heart-fill::before { content: "\f70f"; } +.bi-calendar-heart::before { content: "\f710"; } +.bi-calendar2-heart-fill::before { content: "\f711"; } +.bi-calendar2-heart::before { content: "\f712"; } +.bi-chat-heart-fill::before { content: "\f713"; } +.bi-chat-heart::before { content: "\f714"; } +.bi-chat-left-heart-fill::before { content: "\f715"; } +.bi-chat-left-heart::before { content: "\f716"; } +.bi-chat-right-heart-fill::before { content: "\f717"; } +.bi-chat-right-heart::before { content: "\f718"; } +.bi-chat-square-heart-fill::before { content: "\f719"; } +.bi-chat-square-heart::before { content: "\f71a"; } +.bi-clipboard-check-fill::before { content: "\f71b"; } +.bi-clipboard-data-fill::before { content: "\f71c"; } +.bi-clipboard-fill::before { content: "\f71d"; } +.bi-clipboard-heart-fill::before { content: "\f71e"; } +.bi-clipboard-heart::before { content: "\f71f"; } +.bi-clipboard-minus-fill::before { content: "\f720"; } +.bi-clipboard-plus-fill::before { content: "\f721"; } +.bi-clipboard-pulse::before { content: "\f722"; } +.bi-clipboard-x-fill::before { content: "\f723"; } +.bi-clipboard2-check-fill::before { content: "\f724"; } +.bi-clipboard2-check::before { content: "\f725"; } +.bi-clipboard2-data-fill::before { content: "\f726"; } +.bi-clipboard2-data::before { content: "\f727"; } +.bi-clipboard2-fill::before { content: "\f728"; } +.bi-clipboard2-heart-fill::before { content: "\f729"; } +.bi-clipboard2-heart::before { content: "\f72a"; } +.bi-clipboard2-minus-fill::before { content: "\f72b"; } +.bi-clipboard2-minus::before { content: "\f72c"; } +.bi-clipboard2-plus-fill::before { content: "\f72d"; } +.bi-clipboard2-plus::before { content: "\f72e"; } +.bi-clipboard2-pulse-fill::before { content: "\f72f"; } +.bi-clipboard2-pulse::before { content: "\f730"; } +.bi-clipboard2-x-fill::before { content: "\f731"; } +.bi-clipboard2-x::before { content: "\f732"; } +.bi-clipboard2::before { content: "\f733"; } +.bi-emoji-kiss-fill::before { content: "\f734"; } +.bi-emoji-kiss::before { content: "\f735"; } +.bi-envelope-heart-fill::before { content: "\f736"; } +.bi-envelope-heart::before { content: "\f737"; } +.bi-envelope-open-heart-fill::before { content: "\f738"; } +.bi-envelope-open-heart::before { content: "\f739"; } +.bi-envelope-paper-fill::before { content: "\f73a"; } +.bi-envelope-paper-heart-fill::before { content: "\f73b"; } +.bi-envelope-paper-heart::before { content: "\f73c"; } +.bi-envelope-paper::before { content: "\f73d"; } +.bi-filetype-aac::before { content: "\f73e"; } +.bi-filetype-ai::before { content: "\f73f"; } +.bi-filetype-bmp::before { content: "\f740"; } +.bi-filetype-cs::before { content: "\f741"; } +.bi-filetype-css::before { content: "\f742"; } +.bi-filetype-csv::before { content: "\f743"; } +.bi-filetype-doc::before { content: "\f744"; } +.bi-filetype-docx::before { content: "\f745"; } +.bi-filetype-exe::before { content: "\f746"; } +.bi-filetype-gif::before { content: "\f747"; } +.bi-filetype-heic::before { content: "\f748"; } +.bi-filetype-html::before { content: "\f749"; } +.bi-filetype-java::before { content: "\f74a"; } +.bi-filetype-jpg::before { content: "\f74b"; } +.bi-filetype-js::before { content: "\f74c"; } +.bi-filetype-jsx::before { content: "\f74d"; } +.bi-filetype-key::before { content: "\f74e"; } +.bi-filetype-m4p::before { content: "\f74f"; } +.bi-filetype-md::before { content: "\f750"; } +.bi-filetype-mdx::before { content: "\f751"; } +.bi-filetype-mov::before { content: "\f752"; } +.bi-filetype-mp3::before { content: "\f753"; } +.bi-filetype-mp4::before { content: "\f754"; } +.bi-filetype-otf::before { content: "\f755"; } +.bi-filetype-pdf::before { content: "\f756"; } +.bi-filetype-php::before { content: "\f757"; } +.bi-filetype-png::before { content: "\f758"; } +.bi-filetype-ppt-1::before { content: "\f759"; } +.bi-filetype-ppt::before { content: "\f75a"; } +.bi-filetype-psd::before { content: "\f75b"; } +.bi-filetype-py::before { content: "\f75c"; } +.bi-filetype-raw::before { content: "\f75d"; } +.bi-filetype-rb::before { content: "\f75e"; } +.bi-filetype-sass::before { content: "\f75f"; } +.bi-filetype-scss::before { content: "\f760"; } +.bi-filetype-sh::before { content: "\f761"; } +.bi-filetype-svg::before { content: "\f762"; } +.bi-filetype-tiff::before { content: "\f763"; } +.bi-filetype-tsx::before { content: "\f764"; } +.bi-filetype-ttf::before { content: "\f765"; } +.bi-filetype-txt::before { content: "\f766"; } +.bi-filetype-wav::before { content: "\f767"; } +.bi-filetype-woff::before { content: "\f768"; } +.bi-filetype-xls-1::before { content: "\f769"; } +.bi-filetype-xls::before { content: "\f76a"; } +.bi-filetype-xml::before { content: "\f76b"; } +.bi-filetype-yml::before { content: "\f76c"; } +.bi-heart-arrow::before { content: "\f76d"; } +.bi-heart-pulse-fill::before { content: "\f76e"; } +.bi-heart-pulse::before { content: "\f76f"; } +.bi-heartbreak-fill::before { content: "\f770"; } +.bi-heartbreak::before { content: "\f771"; } +.bi-hearts::before { content: "\f772"; } +.bi-hospital-fill::before { content: "\f773"; } +.bi-hospital::before { content: "\f774"; } +.bi-house-heart-fill::before { content: "\f775"; } +.bi-house-heart::before { content: "\f776"; } +.bi-incognito::before { content: "\f777"; } +.bi-magnet-fill::before { content: "\f778"; } +.bi-magnet::before { content: "\f779"; } +.bi-person-heart::before { content: "\f77a"; } +.bi-person-hearts::before { content: "\f77b"; } +.bi-phone-flip::before { content: "\f77c"; } +.bi-plugin::before { content: "\f77d"; } +.bi-postage-fill::before { content: "\f77e"; } +.bi-postage-heart-fill::before { content: "\f77f"; } +.bi-postage-heart::before { content: "\f780"; } +.bi-postage::before { content: "\f781"; } +.bi-postcard-fill::before { content: "\f782"; } +.bi-postcard-heart-fill::before { content: "\f783"; } +.bi-postcard-heart::before { content: "\f784"; } +.bi-postcard::before { content: "\f785"; } +.bi-search-heart-fill::before { content: "\f786"; } +.bi-search-heart::before { content: "\f787"; } +.bi-sliders2-vertical::before { content: "\f788"; } +.bi-sliders2::before { content: "\f789"; } +.bi-trash3-fill::before { content: "\f78a"; } +.bi-trash3::before { content: "\f78b"; } +.bi-valentine::before { content: "\f78c"; } +.bi-valentine2::before { content: "\f78d"; } +.bi-wrench-adjustable-circle-fill::before { content: "\f78e"; } +.bi-wrench-adjustable-circle::before { content: "\f78f"; } +.bi-wrench-adjustable::before { content: "\f790"; } +.bi-filetype-json::before { content: "\f791"; } +.bi-filetype-pptx::before { content: "\f792"; } +.bi-filetype-xlsx::before { content: "\f793"; } +.bi-1-circle-1::before { content: "\f794"; } +.bi-1-circle-fill-1::before { content: "\f795"; } +.bi-1-circle-fill::before { content: "\f796"; } +.bi-1-circle::before { content: "\f797"; } +.bi-1-square-fill::before { content: "\f798"; } +.bi-1-square::before { content: "\f799"; } +.bi-2-circle-1::before { content: "\f79a"; } +.bi-2-circle-fill-1::before { content: "\f79b"; } +.bi-2-circle-fill::before { content: "\f79c"; } +.bi-2-circle::before { content: "\f79d"; } +.bi-2-square-fill::before { content: "\f79e"; } +.bi-2-square::before { content: "\f79f"; } +.bi-3-circle-1::before { content: "\f7a0"; } +.bi-3-circle-fill-1::before { content: "\f7a1"; } +.bi-3-circle-fill::before { content: "\f7a2"; } +.bi-3-circle::before { content: "\f7a3"; } +.bi-3-square-fill::before { content: "\f7a4"; } +.bi-3-square::before { content: "\f7a5"; } +.bi-4-circle-1::before { content: "\f7a6"; } +.bi-4-circle-fill-1::before { content: "\f7a7"; } +.bi-4-circle-fill::before { content: "\f7a8"; } +.bi-4-circle::before { content: "\f7a9"; } +.bi-4-square-fill::before { content: "\f7aa"; } +.bi-4-square::before { content: "\f7ab"; } +.bi-5-circle-1::before { content: "\f7ac"; } +.bi-5-circle-fill-1::before { content: "\f7ad"; } +.bi-5-circle-fill::before { content: "\f7ae"; } +.bi-5-circle::before { content: "\f7af"; } +.bi-5-square-fill::before { content: "\f7b0"; } +.bi-5-square::before { content: "\f7b1"; } +.bi-6-circle-1::before { content: "\f7b2"; } +.bi-6-circle-fill-1::before { content: "\f7b3"; } +.bi-6-circle-fill::before { content: "\f7b4"; } +.bi-6-circle::before { content: "\f7b5"; } +.bi-6-square-fill::before { content: "\f7b6"; } +.bi-6-square::before { content: "\f7b7"; } +.bi-7-circle-1::before { content: "\f7b8"; } +.bi-7-circle-fill-1::before { content: "\f7b9"; } +.bi-7-circle-fill::before { content: "\f7ba"; } +.bi-7-circle::before { content: "\f7bb"; } +.bi-7-square-fill::before { content: "\f7bc"; } +.bi-7-square::before { content: "\f7bd"; } +.bi-8-circle-1::before { content: "\f7be"; } +.bi-8-circle-fill-1::before { content: "\f7bf"; } +.bi-8-circle-fill::before { content: "\f7c0"; } +.bi-8-circle::before { content: "\f7c1"; } +.bi-8-square-fill::before { content: "\f7c2"; } +.bi-8-square::before { content: "\f7c3"; } +.bi-9-circle-1::before { content: "\f7c4"; } +.bi-9-circle-fill-1::before { content: "\f7c5"; } +.bi-9-circle-fill::before { content: "\f7c6"; } +.bi-9-circle::before { content: "\f7c7"; } +.bi-9-square-fill::before { content: "\f7c8"; } +.bi-9-square::before { content: "\f7c9"; } +.bi-airplane-engines-fill::before { content: "\f7ca"; } +.bi-airplane-engines::before { content: "\f7cb"; } +.bi-airplane-fill::before { content: "\f7cc"; } +.bi-airplane::before { content: "\f7cd"; } +.bi-alexa::before { content: "\f7ce"; } +.bi-alipay::before { content: "\f7cf"; } +.bi-android::before { content: "\f7d0"; } +.bi-android2::before { content: "\f7d1"; } +.bi-box-fill::before { content: "\f7d2"; } +.bi-box-seam-fill::before { content: "\f7d3"; } +.bi-browser-chrome::before { content: "\f7d4"; } +.bi-browser-edge::before { content: "\f7d5"; } +.bi-browser-firefox::before { content: "\f7d6"; } +.bi-browser-safari::before { content: "\f7d7"; } +.bi-c-circle-1::before { content: "\f7d8"; } +.bi-c-circle-fill-1::before { content: "\f7d9"; } +.bi-c-circle-fill::before { content: "\f7da"; } +.bi-c-circle::before { content: "\f7db"; } +.bi-c-square-fill::before { content: "\f7dc"; } +.bi-c-square::before { content: "\f7dd"; } +.bi-capsule-pill::before { content: "\f7de"; } +.bi-capsule::before { content: "\f7df"; } +.bi-car-front-fill::before { content: "\f7e0"; } +.bi-car-front::before { content: "\f7e1"; } +.bi-cassette-fill::before { content: "\f7e2"; } +.bi-cassette::before { content: "\f7e3"; } +.bi-cc-circle-1::before { content: "\f7e4"; } +.bi-cc-circle-fill-1::before { content: "\f7e5"; } +.bi-cc-circle-fill::before { content: "\f7e6"; } +.bi-cc-circle::before { content: "\f7e7"; } +.bi-cc-square-fill::before { content: "\f7e8"; } +.bi-cc-square::before { content: "\f7e9"; } +.bi-cup-hot-fill::before { content: "\f7ea"; } +.bi-cup-hot::before { content: "\f7eb"; } +.bi-currency-rupee::before { content: "\f7ec"; } +.bi-dropbox::before { content: "\f7ed"; } +.bi-escape::before { content: "\f7ee"; } +.bi-fast-forward-btn-fill::before { content: "\f7ef"; } +.bi-fast-forward-btn::before { content: "\f7f0"; } +.bi-fast-forward-circle-fill::before { content: "\f7f1"; } +.bi-fast-forward-circle::before { content: "\f7f2"; } +.bi-fast-forward-fill::before { content: "\f7f3"; } +.bi-fast-forward::before { content: "\f7f4"; } +.bi-filetype-sql::before { content: "\f7f5"; } +.bi-fire::before { content: "\f7f6"; } +.bi-google-play::before { content: "\f7f7"; } +.bi-h-circle-1::before { content: "\f7f8"; } +.bi-h-circle-fill-1::before { content: "\f7f9"; } +.bi-h-circle-fill::before { content: "\f7fa"; } +.bi-h-circle::before { content: "\f7fb"; } +.bi-h-square-fill::before { content: "\f7fc"; } +.bi-h-square::before { content: "\f7fd"; } +.bi-indent::before { content: "\f7fe"; } +.bi-lungs-fill::before { content: "\f7ff"; } +.bi-lungs::before { content: "\f800"; } +.bi-microsoft-teams::before { content: "\f801"; } +.bi-p-circle-1::before { content: "\f802"; } +.bi-p-circle-fill-1::before { content: "\f803"; } +.bi-p-circle-fill::before { content: "\f804"; } +.bi-p-circle::before { content: "\f805"; } +.bi-p-square-fill::before { content: "\f806"; } +.bi-p-square::before { content: "\f807"; } +.bi-pass-fill::before { content: "\f808"; } +.bi-pass::before { content: "\f809"; } +.bi-prescription::before { content: "\f80a"; } +.bi-prescription2::before { content: "\f80b"; } +.bi-r-circle-1::before { content: "\f80c"; } +.bi-r-circle-fill-1::before { content: "\f80d"; } +.bi-r-circle-fill::before { content: "\f80e"; } +.bi-r-circle::before { content: "\f80f"; } +.bi-r-square-fill::before { content: "\f810"; } +.bi-r-square::before { content: "\f811"; } +.bi-repeat-1::before { content: "\f812"; } +.bi-repeat::before { content: "\f813"; } +.bi-rewind-btn-fill::before { content: "\f814"; } +.bi-rewind-btn::before { content: "\f815"; } +.bi-rewind-circle-fill::before { content: "\f816"; } +.bi-rewind-circle::before { content: "\f817"; } +.bi-rewind-fill::before { content: "\f818"; } +.bi-rewind::before { content: "\f819"; } +.bi-train-freight-front-fill::before { content: "\f81a"; } +.bi-train-freight-front::before { content: "\f81b"; } +.bi-train-front-fill::before { content: "\f81c"; } +.bi-train-front::before { content: "\f81d"; } +.bi-train-lightrail-front-fill::before { content: "\f81e"; } +.bi-train-lightrail-front::before { content: "\f81f"; } +.bi-truck-front-fill::before { content: "\f820"; } +.bi-truck-front::before { content: "\f821"; } +.bi-ubuntu::before { content: "\f822"; } +.bi-unindent::before { content: "\f823"; } +.bi-unity::before { content: "\f824"; } +.bi-universal-access-circle::before { content: "\f825"; } +.bi-universal-access::before { content: "\f826"; } +.bi-virus::before { content: "\f827"; } +.bi-virus2::before { content: "\f828"; } +.bi-wechat::before { content: "\f829"; } +.bi-yelp::before { content: "\f82a"; } +.bi-sign-stop-fill::before { content: "\f82b"; } +.bi-sign-stop-lights-fill::before { content: "\f82c"; } +.bi-sign-stop-lights::before { content: "\f82d"; } +.bi-sign-stop::before { content: "\f82e"; } +.bi-sign-turn-left-fill::before { content: "\f82f"; } +.bi-sign-turn-left::before { content: "\f830"; } +.bi-sign-turn-right-fill::before { content: "\f831"; } +.bi-sign-turn-right::before { content: "\f832"; } +.bi-sign-turn-slight-left-fill::before { content: "\f833"; } +.bi-sign-turn-slight-left::before { content: "\f834"; } +.bi-sign-turn-slight-right-fill::before { content: "\f835"; } +.bi-sign-turn-slight-right::before { content: "\f836"; } +.bi-sign-yield-fill::before { content: "\f837"; } +.bi-sign-yield::before { content: "\f838"; } +.bi-ev-station-fill::before { content: "\f839"; } +.bi-ev-station::before { content: "\f83a"; } +.bi-fuel-pump-diesel-fill::before { content: "\f83b"; } +.bi-fuel-pump-diesel::before { content: "\f83c"; } +.bi-fuel-pump-fill::before { content: "\f83d"; } +.bi-fuel-pump::before { content: "\f83e"; } +.bi-0-circle-fill::before { content: "\f83f"; } +.bi-0-circle::before { content: "\f840"; } +.bi-0-square-fill::before { content: "\f841"; } +.bi-0-square::before { content: "\f842"; } +.bi-rocket-fill::before { content: "\f843"; } +.bi-rocket-takeoff-fill::before { content: "\f844"; } +.bi-rocket-takeoff::before { content: "\f845"; } +.bi-rocket::before { content: "\f846"; } +.bi-stripe::before { content: "\f847"; } +.bi-subscript::before { content: "\f848"; } +.bi-superscript::before { content: "\f849"; } +.bi-trello::before { content: "\f84a"; } +.bi-envelope-at-fill::before { content: "\f84b"; } +.bi-envelope-at::before { content: "\f84c"; } +.bi-regex::before { content: "\f84d"; } +.bi-text-wrap::before { content: "\f84e"; } +.bi-sign-dead-end-fill::before { content: "\f84f"; } +.bi-sign-dead-end::before { content: "\f850"; } +.bi-sign-do-not-enter-fill::before { content: "\f851"; } +.bi-sign-do-not-enter::before { content: "\f852"; } +.bi-sign-intersection-fill::before { content: "\f853"; } +.bi-sign-intersection-side-fill::before { content: "\f854"; } +.bi-sign-intersection-side::before { content: "\f855"; } +.bi-sign-intersection-t-fill::before { content: "\f856"; } +.bi-sign-intersection-t::before { content: "\f857"; } +.bi-sign-intersection-y-fill::before { content: "\f858"; } +.bi-sign-intersection-y::before { content: "\f859"; } +.bi-sign-intersection::before { content: "\f85a"; } +.bi-sign-merge-left-fill::before { content: "\f85b"; } +.bi-sign-merge-left::before { content: "\f85c"; } +.bi-sign-merge-right-fill::before { content: "\f85d"; } +.bi-sign-merge-right::before { content: "\f85e"; } +.bi-sign-no-left-turn-fill::before { content: "\f85f"; } +.bi-sign-no-left-turn::before { content: "\f860"; } +.bi-sign-no-parking-fill::before { content: "\f861"; } +.bi-sign-no-parking::before { content: "\f862"; } +.bi-sign-no-right-turn-fill::before { content: "\f863"; } +.bi-sign-no-right-turn::before { content: "\f864"; } +.bi-sign-railroad-fill::before { content: "\f865"; } +.bi-sign-railroad::before { content: "\f866"; } +.bi-building-add::before { content: "\f867"; } +.bi-building-check::before { content: "\f868"; } +.bi-building-dash::before { content: "\f869"; } +.bi-building-down::before { content: "\f86a"; } +.bi-building-exclamation::before { content: "\f86b"; } +.bi-building-fill-add::before { content: "\f86c"; } +.bi-building-fill-check::before { content: "\f86d"; } +.bi-building-fill-dash::before { content: "\f86e"; } +.bi-building-fill-down::before { content: "\f86f"; } +.bi-building-fill-exclamation::before { content: "\f870"; } +.bi-building-fill-gear::before { content: "\f871"; } +.bi-building-fill-lock::before { content: "\f872"; } +.bi-building-fill-slash::before { content: "\f873"; } +.bi-building-fill-up::before { content: "\f874"; } +.bi-building-fill-x::before { content: "\f875"; } +.bi-building-fill::before { content: "\f876"; } +.bi-building-gear::before { content: "\f877"; } +.bi-building-lock::before { content: "\f878"; } +.bi-building-slash::before { content: "\f879"; } +.bi-building-up::before { content: "\f87a"; } +.bi-building-x::before { content: "\f87b"; } +.bi-buildings-fill::before { content: "\f87c"; } +.bi-buildings::before { content: "\f87d"; } +.bi-bus-front-fill::before { content: "\f87e"; } +.bi-bus-front::before { content: "\f87f"; } +.bi-ev-front-fill::before { content: "\f880"; } +.bi-ev-front::before { content: "\f881"; } +.bi-globe-americas::before { content: "\f882"; } +.bi-globe-asia-australia::before { content: "\f883"; } +.bi-globe-central-south-asia::before { content: "\f884"; } +.bi-globe-europe-africa::before { content: "\f885"; } +.bi-house-add-fill::before { content: "\f886"; } +.bi-house-add::before { content: "\f887"; } +.bi-house-check-fill::before { content: "\f888"; } +.bi-house-check::before { content: "\f889"; } +.bi-house-dash-fill::before { content: "\f88a"; } +.bi-house-dash::before { content: "\f88b"; } +.bi-house-down-fill::before { content: "\f88c"; } +.bi-house-down::before { content: "\f88d"; } +.bi-house-exclamation-fill::before { content: "\f88e"; } +.bi-house-exclamation::before { content: "\f88f"; } +.bi-house-gear-fill::before { content: "\f890"; } +.bi-house-gear::before { content: "\f891"; } +.bi-house-lock-fill::before { content: "\f892"; } +.bi-house-lock::before { content: "\f893"; } +.bi-house-slash-fill::before { content: "\f894"; } +.bi-house-slash::before { content: "\f895"; } +.bi-house-up-fill::before { content: "\f896"; } +.bi-house-up::before { content: "\f897"; } +.bi-house-x-fill::before { content: "\f898"; } +.bi-house-x::before { content: "\f899"; } +.bi-person-add::before { content: "\f89a"; } +.bi-person-down::before { content: "\f89b"; } +.bi-person-exclamation::before { content: "\f89c"; } +.bi-person-fill-add::before { content: "\f89d"; } +.bi-person-fill-check::before { content: "\f89e"; } +.bi-person-fill-dash::before { content: "\f89f"; } +.bi-person-fill-down::before { content: "\f8a0"; } +.bi-person-fill-exclamation::before { content: "\f8a1"; } +.bi-person-fill-gear::before { content: "\f8a2"; } +.bi-person-fill-lock::before { content: "\f8a3"; } +.bi-person-fill-slash::before { content: "\f8a4"; } +.bi-person-fill-up::before { content: "\f8a5"; } +.bi-person-fill-x::before { content: "\f8a6"; } +.bi-person-gear::before { content: "\f8a7"; } +.bi-person-lock::before { content: "\f8a8"; } +.bi-person-slash::before { content: "\f8a9"; } +.bi-person-up::before { content: "\f8aa"; } +.bi-scooter::before { content: "\f8ab"; } +.bi-taxi-front-fill::before { content: "\f8ac"; } +.bi-taxi-front::before { content: "\f8ad"; } +.bi-amd::before { content: "\f8ae"; } +.bi-database-add::before { content: "\f8af"; } +.bi-database-check::before { content: "\f8b0"; } +.bi-database-dash::before { content: "\f8b1"; } +.bi-database-down::before { content: "\f8b2"; } +.bi-database-exclamation::before { content: "\f8b3"; } +.bi-database-fill-add::before { content: "\f8b4"; } +.bi-database-fill-check::before { content: "\f8b5"; } +.bi-database-fill-dash::before { content: "\f8b6"; } +.bi-database-fill-down::before { content: "\f8b7"; } +.bi-database-fill-exclamation::before { content: "\f8b8"; } +.bi-database-fill-gear::before { content: "\f8b9"; } +.bi-database-fill-lock::before { content: "\f8ba"; } +.bi-database-fill-slash::before { content: "\f8bb"; } +.bi-database-fill-up::before { content: "\f8bc"; } +.bi-database-fill-x::before { content: "\f8bd"; } +.bi-database-fill::before { content: "\f8be"; } +.bi-database-gear::before { content: "\f8bf"; } +.bi-database-lock::before { content: "\f8c0"; } +.bi-database-slash::before { content: "\f8c1"; } +.bi-database-up::before { content: "\f8c2"; } +.bi-database-x::before { content: "\f8c3"; } +.bi-database::before { content: "\f8c4"; } +.bi-houses-fill::before { content: "\f8c5"; } +.bi-houses::before { content: "\f8c6"; } +.bi-nvidia::before { content: "\f8c7"; } +.bi-person-vcard-fill::before { content: "\f8c8"; } +.bi-person-vcard::before { content: "\f8c9"; } +.bi-sina-weibo::before { content: "\f8ca"; } +.bi-tencent-qq::before { content: "\f8cb"; } +.bi-wikipedia::before { content: "\f8cc"; } diff --git a/Dissertation_unzipped/sharktooth_functions_files/libs/bootstrap/bootstrap-icons.woff b/Dissertation_unzipped/sharktooth_functions_files/libs/bootstrap/bootstrap-icons.woff new file mode 100644 index 0000000..18d21d4 Binary files /dev/null and b/Dissertation_unzipped/sharktooth_functions_files/libs/bootstrap/bootstrap-icons.woff differ diff --git a/Dissertation_unzipped/sharktooth_functions_files/libs/bootstrap/bootstrap.min.css b/Dissertation_unzipped/sharktooth_functions_files/libs/bootstrap/bootstrap.min.css new file mode 100644 index 0000000..a87b434 --- /dev/null +++ b/Dissertation_unzipped/sharktooth_functions_files/libs/bootstrap/bootstrap.min.css @@ -0,0 +1,10 @@ +/*! + * Bootstrap v5.1.3 (https://getbootstrap.com/) + * Copyright 2011-2021 The Bootstrap Authors + * Copyright 2011-2021 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) + */:root{--bs-blue: #0d6efd;--bs-indigo: #6610f2;--bs-purple: #6f42c1;--bs-pink: #d63384;--bs-red: #dc3545;--bs-orange: #fd7e14;--bs-yellow: #ffc107;--bs-green: #198754;--bs-teal: #20c997;--bs-cyan: #0dcaf0;--bs-white: #ffffff;--bs-gray: #6c757d;--bs-gray-dark: #343a40;--bs-gray-100: #f8f9fa;--bs-gray-200: #e9ecef;--bs-gray-300: #dee2e6;--bs-gray-400: #ced4da;--bs-gray-500: #adb5bd;--bs-gray-600: #6c757d;--bs-gray-700: #495057;--bs-gray-800: #343a40;--bs-gray-900: #212529;--bs-default: #dee2e6;--bs-primary: #0d6efd;--bs-secondary: #6c757d;--bs-success: #198754;--bs-info: #0dcaf0;--bs-warning: #ffc107;--bs-danger: #dc3545;--bs-light: #f8f9fa;--bs-dark: #212529;--bs-default-rgb: 222, 226, 230;--bs-primary-rgb: 13, 110, 253;--bs-secondary-rgb: 108, 117, 125;--bs-success-rgb: 25, 135, 84;--bs-info-rgb: 13, 202, 240;--bs-warning-rgb: 255, 193, 7;--bs-danger-rgb: 220, 53, 69;--bs-light-rgb: 248, 249, 250;--bs-dark-rgb: 33, 37, 41;--bs-white-rgb: 255, 255, 255;--bs-black-rgb: 0, 0, 0;--bs-body-color-rgb: 33, 37, 41;--bs-body-bg-rgb: 255, 255, 255;--bs-font-sans-serif: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--bs-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--bs-gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0));--bs-root-font-size: 17px;--bs-body-font-family: var(--bs-font-sans-serif);--bs-body-font-size: 1rem;--bs-body-font-weight: 400;--bs-body-line-height: 1.5;--bs-body-color: #212529;--bs-body-bg: #ffffff}*,*::before,*::after{box-sizing:border-box}:root{font-size:var(--bs-root-font-size)}body{margin:0;font-family:var(--bs-body-font-family);font-size:var(--bs-body-font-size);font-weight:var(--bs-body-font-weight);line-height:var(--bs-body-line-height);color:var(--bs-body-color);text-align:var(--bs-body-text-align);background-color:var(--bs-body-bg);-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:rgba(0,0,0,0)}hr{margin:1rem 0;color:inherit;background-color:currentColor;border:0;opacity:.25}hr:not([size]){height:1px}h6,.h6,h5,.h5,h4,.h4,h3,.h3,h2,.h2,h1,.h1{margin-top:0;margin-bottom:.5rem;font-weight:500;line-height:1.2}h1,.h1{font-size:calc(1.325rem + 0.9vw)}@media(min-width: 1200px){h1,.h1{font-size:2rem}}h2,.h2{font-size:calc(1.29rem + 0.48vw)}@media(min-width: 1200px){h2,.h2{font-size:1.65rem}}h3,.h3{font-size:calc(1.27rem + 0.24vw)}@media(min-width: 1200px){h3,.h3{font-size:1.45rem}}h4,.h4{font-size:1.25rem}h5,.h5{font-size:1.1rem}h6,.h6{font-size:1rem}p{margin-top:0;margin-bottom:1rem}abbr[title],abbr[data-bs-original-title]{text-decoration:underline dotted;-webkit-text-decoration:underline dotted;-moz-text-decoration:underline dotted;-ms-text-decoration:underline dotted;-o-text-decoration:underline dotted;cursor:help;text-decoration-skip-ink:none}address{margin-bottom:1rem;font-style:normal;line-height:inherit}ol,ul{padding-left:2rem}ol,ul,dl{margin-top:0;margin-bottom:1rem}ol ol,ul ul,ol ul,ul ol{margin-bottom:0}dt{font-weight:700}dd{margin-bottom:.5rem;margin-left:0}blockquote{margin:0 0 1rem;padding:.625rem 1.25rem;border-left:.25rem solid #e9ecef}blockquote p:last-child,blockquote ul:last-child,blockquote ol:last-child{margin-bottom:0}b,strong{font-weight:bolder}small,.small{font-size:0.875em}mark,.mark{padding:.2em;background-color:#fcf8e3}sub,sup{position:relative;font-size:0.75em;line-height:0;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}a{color:#0d6efd;text-decoration:underline;-webkit-text-decoration:underline;-moz-text-decoration:underline;-ms-text-decoration:underline;-o-text-decoration:underline}a:hover{color:#0a58ca}a:not([href]):not([class]),a:not([href]):not([class]):hover{color:inherit;text-decoration:none}pre,code,kbd,samp{font-family:var(--bs-font-monospace);font-size:1em;direction:ltr /* rtl:ignore */;unicode-bidi:bidi-override}pre{display:block;margin-top:0;margin-bottom:1rem;overflow:auto;font-size:0.875em;color:#000;background-color:#f6f6f6;padding:.5rem;border:1px solid #dee2e6;border-radius:.25rem}pre code{background-color:rgba(0,0,0,0);font-size:inherit;color:inherit;word-break:normal}code{font-size:0.875em;color:#9753b8;background-color:#f6f6f6;border-radius:.25rem;padding:.125rem .25rem;word-wrap:break-word}a>code{color:inherit}kbd{padding:.4rem .4rem;font-size:0.875em;color:#fff;background-color:#212529;border-radius:.2rem}kbd kbd{padding:0;font-size:1em;font-weight:700}figure{margin:0 0 1rem}img,svg{vertical-align:middle}table{caption-side:bottom;border-collapse:collapse}caption{padding-top:.5rem;padding-bottom:.5rem;color:#6c757d;text-align:left}th{text-align:inherit;text-align:-webkit-match-parent}thead,tbody,tfoot,tr,td,th{border-color:inherit;border-style:solid;border-width:0}label{display:inline-block}button{border-radius:0}button:focus:not(:focus-visible){outline:0}input,button,select,optgroup,textarea{margin:0;font-family:inherit;font-size:inherit;line-height:inherit}button,select{text-transform:none}[role=button]{cursor:pointer}select{word-wrap:normal}select:disabled{opacity:1}[list]::-webkit-calendar-picker-indicator{display:none}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button}button:not(:disabled),[type=button]:not(:disabled),[type=reset]:not(:disabled),[type=submit]:not(:disabled){cursor:pointer}::-moz-focus-inner{padding:0;border-style:none}textarea{resize:vertical}fieldset{min-width:0;padding:0;margin:0;border:0}legend{float:left;width:100%;padding:0;margin-bottom:.5rem;font-size:calc(1.275rem + 0.3vw);line-height:inherit}@media(min-width: 1200px){legend{font-size:1.5rem}}legend+*{clear:left}::-webkit-datetime-edit-fields-wrapper,::-webkit-datetime-edit-text,::-webkit-datetime-edit-minute,::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-month-field,::-webkit-datetime-edit-year-field{padding:0}::-webkit-inner-spin-button{height:auto}[type=search]{outline-offset:-2px;-webkit-appearance:textfield}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-color-swatch-wrapper{padding:0}::file-selector-button{font:inherit}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}output{display:inline-block}iframe{border:0}summary{display:list-item;cursor:pointer}progress{vertical-align:baseline}[hidden]{display:none !important}.lead{font-size:1.25rem;font-weight:300}.display-1{font-size:calc(1.625rem + 4.5vw);font-weight:300;line-height:1.2}@media(min-width: 1200px){.display-1{font-size:5rem}}.display-2{font-size:calc(1.575rem + 3.9vw);font-weight:300;line-height:1.2}@media(min-width: 1200px){.display-2{font-size:4.5rem}}.display-3{font-size:calc(1.525rem + 3.3vw);font-weight:300;line-height:1.2}@media(min-width: 1200px){.display-3{font-size:4rem}}.display-4{font-size:calc(1.475rem + 2.7vw);font-weight:300;line-height:1.2}@media(min-width: 1200px){.display-4{font-size:3.5rem}}.display-5{font-size:calc(1.425rem + 2.1vw);font-weight:300;line-height:1.2}@media(min-width: 1200px){.display-5{font-size:3rem}}.display-6{font-size:calc(1.375rem + 1.5vw);font-weight:300;line-height:1.2}@media(min-width: 1200px){.display-6{font-size:2.5rem}}.list-unstyled{padding-left:0;list-style:none}.list-inline{padding-left:0;list-style:none}.list-inline-item{display:inline-block}.list-inline-item:not(:last-child){margin-right:.5rem}.initialism{font-size:0.875em;text-transform:uppercase}.blockquote{margin-bottom:1rem;font-size:1.25rem}.blockquote>:last-child{margin-bottom:0}.blockquote-footer{margin-top:-1rem;margin-bottom:1rem;font-size:0.875em;color:#6c757d}.blockquote-footer::before{content:"— "}.img-fluid{max-width:100%;height:auto}.img-thumbnail{padding:.25rem;background-color:#fff;border:1px solid #dee2e6;border-radius:.25rem;max-width:100%;height:auto}.figure{display:inline-block}.figure-img{margin-bottom:.5rem;line-height:1}.figure-caption{font-size:0.875em;color:#6c757d}.grid{display:grid;grid-template-rows:repeat(var(--bs-rows, 1), 1fr);grid-template-columns:repeat(var(--bs-columns, 12), 1fr);gap:var(--bs-gap, 1.5rem)}.grid .g-col-1{grid-column:auto/span 1}.grid .g-col-2{grid-column:auto/span 2}.grid .g-col-3{grid-column:auto/span 3}.grid .g-col-4{grid-column:auto/span 4}.grid .g-col-5{grid-column:auto/span 5}.grid .g-col-6{grid-column:auto/span 6}.grid .g-col-7{grid-column:auto/span 7}.grid .g-col-8{grid-column:auto/span 8}.grid .g-col-9{grid-column:auto/span 9}.grid .g-col-10{grid-column:auto/span 10}.grid .g-col-11{grid-column:auto/span 11}.grid .g-col-12{grid-column:auto/span 12}.grid .g-start-1{grid-column-start:1}.grid .g-start-2{grid-column-start:2}.grid .g-start-3{grid-column-start:3}.grid .g-start-4{grid-column-start:4}.grid .g-start-5{grid-column-start:5}.grid .g-start-6{grid-column-start:6}.grid .g-start-7{grid-column-start:7}.grid .g-start-8{grid-column-start:8}.grid .g-start-9{grid-column-start:9}.grid .g-start-10{grid-column-start:10}.grid .g-start-11{grid-column-start:11}@media(min-width: 576px){.grid .g-col-sm-1{grid-column:auto/span 1}.grid .g-col-sm-2{grid-column:auto/span 2}.grid .g-col-sm-3{grid-column:auto/span 3}.grid .g-col-sm-4{grid-column:auto/span 4}.grid .g-col-sm-5{grid-column:auto/span 5}.grid .g-col-sm-6{grid-column:auto/span 6}.grid .g-col-sm-7{grid-column:auto/span 7}.grid .g-col-sm-8{grid-column:auto/span 8}.grid .g-col-sm-9{grid-column:auto/span 9}.grid .g-col-sm-10{grid-column:auto/span 10}.grid .g-col-sm-11{grid-column:auto/span 11}.grid .g-col-sm-12{grid-column:auto/span 12}.grid .g-start-sm-1{grid-column-start:1}.grid .g-start-sm-2{grid-column-start:2}.grid .g-start-sm-3{grid-column-start:3}.grid .g-start-sm-4{grid-column-start:4}.grid .g-start-sm-5{grid-column-start:5}.grid .g-start-sm-6{grid-column-start:6}.grid .g-start-sm-7{grid-column-start:7}.grid .g-start-sm-8{grid-column-start:8}.grid .g-start-sm-9{grid-column-start:9}.grid .g-start-sm-10{grid-column-start:10}.grid .g-start-sm-11{grid-column-start:11}}@media(min-width: 768px){.grid .g-col-md-1{grid-column:auto/span 1}.grid .g-col-md-2{grid-column:auto/span 2}.grid .g-col-md-3{grid-column:auto/span 3}.grid .g-col-md-4{grid-column:auto/span 4}.grid .g-col-md-5{grid-column:auto/span 5}.grid .g-col-md-6{grid-column:auto/span 6}.grid .g-col-md-7{grid-column:auto/span 7}.grid .g-col-md-8{grid-column:auto/span 8}.grid .g-col-md-9{grid-column:auto/span 9}.grid .g-col-md-10{grid-column:auto/span 10}.grid .g-col-md-11{grid-column:auto/span 11}.grid .g-col-md-12{grid-column:auto/span 12}.grid .g-start-md-1{grid-column-start:1}.grid .g-start-md-2{grid-column-start:2}.grid .g-start-md-3{grid-column-start:3}.grid .g-start-md-4{grid-column-start:4}.grid .g-start-md-5{grid-column-start:5}.grid .g-start-md-6{grid-column-start:6}.grid .g-start-md-7{grid-column-start:7}.grid .g-start-md-8{grid-column-start:8}.grid .g-start-md-9{grid-column-start:9}.grid .g-start-md-10{grid-column-start:10}.grid .g-start-md-11{grid-column-start:11}}@media(min-width: 992px){.grid .g-col-lg-1{grid-column:auto/span 1}.grid .g-col-lg-2{grid-column:auto/span 2}.grid .g-col-lg-3{grid-column:auto/span 3}.grid .g-col-lg-4{grid-column:auto/span 4}.grid .g-col-lg-5{grid-column:auto/span 5}.grid .g-col-lg-6{grid-column:auto/span 6}.grid .g-col-lg-7{grid-column:auto/span 7}.grid .g-col-lg-8{grid-column:auto/span 8}.grid .g-col-lg-9{grid-column:auto/span 9}.grid .g-col-lg-10{grid-column:auto/span 10}.grid .g-col-lg-11{grid-column:auto/span 11}.grid .g-col-lg-12{grid-column:auto/span 12}.grid .g-start-lg-1{grid-column-start:1}.grid .g-start-lg-2{grid-column-start:2}.grid .g-start-lg-3{grid-column-start:3}.grid .g-start-lg-4{grid-column-start:4}.grid .g-start-lg-5{grid-column-start:5}.grid .g-start-lg-6{grid-column-start:6}.grid .g-start-lg-7{grid-column-start:7}.grid .g-start-lg-8{grid-column-start:8}.grid .g-start-lg-9{grid-column-start:9}.grid .g-start-lg-10{grid-column-start:10}.grid .g-start-lg-11{grid-column-start:11}}@media(min-width: 1200px){.grid .g-col-xl-1{grid-column:auto/span 1}.grid .g-col-xl-2{grid-column:auto/span 2}.grid .g-col-xl-3{grid-column:auto/span 3}.grid .g-col-xl-4{grid-column:auto/span 4}.grid .g-col-xl-5{grid-column:auto/span 5}.grid .g-col-xl-6{grid-column:auto/span 6}.grid .g-col-xl-7{grid-column:auto/span 7}.grid .g-col-xl-8{grid-column:auto/span 8}.grid .g-col-xl-9{grid-column:auto/span 9}.grid .g-col-xl-10{grid-column:auto/span 10}.grid .g-col-xl-11{grid-column:auto/span 11}.grid .g-col-xl-12{grid-column:auto/span 12}.grid .g-start-xl-1{grid-column-start:1}.grid .g-start-xl-2{grid-column-start:2}.grid .g-start-xl-3{grid-column-start:3}.grid .g-start-xl-4{grid-column-start:4}.grid .g-start-xl-5{grid-column-start:5}.grid .g-start-xl-6{grid-column-start:6}.grid .g-start-xl-7{grid-column-start:7}.grid .g-start-xl-8{grid-column-start:8}.grid .g-start-xl-9{grid-column-start:9}.grid .g-start-xl-10{grid-column-start:10}.grid .g-start-xl-11{grid-column-start:11}}@media(min-width: 1400px){.grid .g-col-xxl-1{grid-column:auto/span 1}.grid .g-col-xxl-2{grid-column:auto/span 2}.grid .g-col-xxl-3{grid-column:auto/span 3}.grid .g-col-xxl-4{grid-column:auto/span 4}.grid .g-col-xxl-5{grid-column:auto/span 5}.grid .g-col-xxl-6{grid-column:auto/span 6}.grid .g-col-xxl-7{grid-column:auto/span 7}.grid .g-col-xxl-8{grid-column:auto/span 8}.grid .g-col-xxl-9{grid-column:auto/span 9}.grid .g-col-xxl-10{grid-column:auto/span 10}.grid .g-col-xxl-11{grid-column:auto/span 11}.grid .g-col-xxl-12{grid-column:auto/span 12}.grid .g-start-xxl-1{grid-column-start:1}.grid .g-start-xxl-2{grid-column-start:2}.grid .g-start-xxl-3{grid-column-start:3}.grid .g-start-xxl-4{grid-column-start:4}.grid .g-start-xxl-5{grid-column-start:5}.grid .g-start-xxl-6{grid-column-start:6}.grid .g-start-xxl-7{grid-column-start:7}.grid .g-start-xxl-8{grid-column-start:8}.grid .g-start-xxl-9{grid-column-start:9}.grid .g-start-xxl-10{grid-column-start:10}.grid .g-start-xxl-11{grid-column-start:11}}.table{--bs-table-bg: transparent;--bs-table-accent-bg: transparent;--bs-table-striped-color: #212529;--bs-table-striped-bg: rgba(0, 0, 0, 0.05);--bs-table-active-color: #212529;--bs-table-active-bg: rgba(0, 0, 0, 0.1);--bs-table-hover-color: #212529;--bs-table-hover-bg: rgba(0, 0, 0, 0.075);width:100%;margin-bottom:1rem;color:#212529;vertical-align:top;border-color:#dee2e6}.table>:not(caption)>*>*{padding:.5rem .5rem;background-color:var(--bs-table-bg);border-bottom-width:1px;box-shadow:inset 0 0 0 9999px var(--bs-table-accent-bg)}.table>tbody{vertical-align:inherit}.table>thead{vertical-align:bottom}.table>:not(:first-child){border-top:2px solid #9ba5ae}.caption-top{caption-side:top}.table-sm>:not(caption)>*>*{padding:.25rem .25rem}.table-bordered>:not(caption)>*{border-width:1px 0}.table-bordered>:not(caption)>*>*{border-width:0 1px}.table-borderless>:not(caption)>*>*{border-bottom-width:0}.table-borderless>:not(:first-child){border-top-width:0}.table-striped>tbody>tr:nth-of-type(odd)>*{--bs-table-accent-bg: var(--bs-table-striped-bg);color:var(--bs-table-striped-color)}.table-active{--bs-table-accent-bg: var(--bs-table-active-bg);color:var(--bs-table-active-color)}.table-hover>tbody>tr:hover>*{--bs-table-accent-bg: var(--bs-table-hover-bg);color:var(--bs-table-hover-color)}.table-primary{--bs-table-bg: #cfe2ff;--bs-table-striped-bg: #c5d7f2;--bs-table-striped-color: #000;--bs-table-active-bg: #bacbe6;--bs-table-active-color: #000;--bs-table-hover-bg: #bfd1ec;--bs-table-hover-color: #000;color:#000;border-color:#bacbe6}.table-secondary{--bs-table-bg: #e2e3e5;--bs-table-striped-bg: #d7d8da;--bs-table-striped-color: #000;--bs-table-active-bg: #cbccce;--bs-table-active-color: #000;--bs-table-hover-bg: #d1d2d4;--bs-table-hover-color: #000;color:#000;border-color:#cbccce}.table-success{--bs-table-bg: #d1e7dd;--bs-table-striped-bg: #c7dbd2;--bs-table-striped-color: #000;--bs-table-active-bg: #bcd0c7;--bs-table-active-color: #000;--bs-table-hover-bg: #c1d6cc;--bs-table-hover-color: #000;color:#000;border-color:#bcd0c7}.table-info{--bs-table-bg: #cff4fc;--bs-table-striped-bg: #c5e8ef;--bs-table-striped-color: #000;--bs-table-active-bg: #badce3;--bs-table-active-color: #000;--bs-table-hover-bg: #bfe2e9;--bs-table-hover-color: #000;color:#000;border-color:#badce3}.table-warning{--bs-table-bg: #fff3cd;--bs-table-striped-bg: #f2e7c3;--bs-table-striped-color: #000;--bs-table-active-bg: #e6dbb9;--bs-table-active-color: #000;--bs-table-hover-bg: #ece1be;--bs-table-hover-color: #000;color:#000;border-color:#e6dbb9}.table-danger{--bs-table-bg: #f8d7da;--bs-table-striped-bg: #eccccf;--bs-table-striped-color: #000;--bs-table-active-bg: #dfc2c4;--bs-table-active-color: #000;--bs-table-hover-bg: #e5c7ca;--bs-table-hover-color: #000;color:#000;border-color:#dfc2c4}.table-light{--bs-table-bg: #f8f9fa;--bs-table-striped-bg: #ecedee;--bs-table-striped-color: #000;--bs-table-active-bg: #dfe0e1;--bs-table-active-color: #000;--bs-table-hover-bg: #e5e6e7;--bs-table-hover-color: #000;color:#000;border-color:#dfe0e1}.table-dark{--bs-table-bg: #212529;--bs-table-striped-bg: #2c3034;--bs-table-striped-color: #ffffff;--bs-table-active-bg: #373b3e;--bs-table-active-color: #ffffff;--bs-table-hover-bg: #323539;--bs-table-hover-color: #ffffff;color:#fff;border-color:#373b3e}.table-responsive{overflow-x:auto;-webkit-overflow-scrolling:touch}@media(max-width: 575.98px){.table-responsive-sm{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media(max-width: 767.98px){.table-responsive-md{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media(max-width: 991.98px){.table-responsive-lg{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media(max-width: 1199.98px){.table-responsive-xl{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media(max-width: 1399.98px){.table-responsive-xxl{overflow-x:auto;-webkit-overflow-scrolling:touch}}.form-label,.shiny-input-container .control-label{margin-bottom:.5rem}.col-form-label{padding-top:calc(0.375rem + 1px);padding-bottom:calc(0.375rem + 1px);margin-bottom:0;font-size:inherit;line-height:1.5}.col-form-label-lg{padding-top:calc(0.5rem + 1px);padding-bottom:calc(0.5rem + 1px);font-size:1.25rem}.col-form-label-sm{padding-top:calc(0.25rem + 1px);padding-bottom:calc(0.25rem + 1px);font-size:0.875rem}.form-text{margin-top:.25rem;font-size:0.875em;color:#6c757d}.form-control{display:block;width:100%;padding:.375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:#212529;background-color:#fff;background-clip:padding-box;border:1px solid #ced4da;appearance:none;-webkit-appearance:none;-moz-appearance:none;-ms-appearance:none;-o-appearance:none;border-radius:.25rem;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media(prefers-reduced-motion: reduce){.form-control{transition:none}}.form-control[type=file]{overflow:hidden}.form-control[type=file]:not(:disabled):not([readonly]){cursor:pointer}.form-control:focus{color:#212529;background-color:#fff;border-color:#86b7fe;outline:0;box-shadow:0 0 0 .25rem rgba(13,110,253,.25)}.form-control::-webkit-date-and-time-value{height:1.5em}.form-control::placeholder{color:#6c757d;opacity:1}.form-control:disabled,.form-control[readonly]{background-color:#e9ecef;opacity:1}.form-control::file-selector-button{padding:.375rem .75rem;margin:-0.375rem -0.75rem;margin-inline-end:.75rem;color:#212529;background-color:#e9ecef;pointer-events:none;border-color:inherit;border-style:solid;border-width:0;border-inline-end-width:1px;border-radius:0;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media(prefers-reduced-motion: reduce){.form-control::file-selector-button{transition:none}}.form-control:hover:not(:disabled):not([readonly])::file-selector-button{background-color:#dde0e3}.form-control::-webkit-file-upload-button{padding:.375rem .75rem;margin:-0.375rem -0.75rem;margin-inline-end:.75rem;color:#212529;background-color:#e9ecef;pointer-events:none;border-color:inherit;border-style:solid;border-width:0;border-inline-end-width:1px;border-radius:0;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media(prefers-reduced-motion: reduce){.form-control::-webkit-file-upload-button{transition:none}}.form-control:hover:not(:disabled):not([readonly])::-webkit-file-upload-button{background-color:#dde0e3}.form-control-plaintext{display:block;width:100%;padding:.375rem 0;margin-bottom:0;line-height:1.5;color:#212529;background-color:rgba(0,0,0,0);border:solid rgba(0,0,0,0);border-width:1px 0}.form-control-plaintext.form-control-sm,.form-control-plaintext.form-control-lg{padding-right:0;padding-left:0}.form-control-sm{min-height:calc(1.5em + 0.5rem + 2px);padding:.25rem .5rem;font-size:0.875rem;border-radius:.2rem}.form-control-sm::file-selector-button{padding:.25rem .5rem;margin:-0.25rem -0.5rem;margin-inline-end:.5rem}.form-control-sm::-webkit-file-upload-button{padding:.25rem .5rem;margin:-0.25rem -0.5rem;margin-inline-end:.5rem}.form-control-lg{min-height:calc(1.5em + 1rem + 2px);padding:.5rem 1rem;font-size:1.25rem;border-radius:.3rem}.form-control-lg::file-selector-button{padding:.5rem 1rem;margin:-0.5rem -1rem;margin-inline-end:1rem}.form-control-lg::-webkit-file-upload-button{padding:.5rem 1rem;margin:-0.5rem -1rem;margin-inline-end:1rem}textarea.form-control{min-height:calc(1.5em + 0.75rem + 2px)}textarea.form-control-sm{min-height:calc(1.5em + 0.5rem + 2px)}textarea.form-control-lg{min-height:calc(1.5em + 1rem + 2px)}.form-control-color{width:3rem;height:auto;padding:.375rem}.form-control-color:not(:disabled):not([readonly]){cursor:pointer}.form-control-color::-moz-color-swatch{height:1.5em;border-radius:.25rem}.form-control-color::-webkit-color-swatch{height:1.5em;border-radius:.25rem}.form-select{display:block;width:100%;padding:.375rem 2.25rem .375rem .75rem;-moz-padding-start:calc(0.75rem - 3px);font-size:1rem;font-weight:400;line-height:1.5;color:#212529;background-color:#fff;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right .75rem center;background-size:16px 12px;border:1px solid #ced4da;border-radius:.25rem;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out;appearance:none;-webkit-appearance:none;-moz-appearance:none;-ms-appearance:none;-o-appearance:none}@media(prefers-reduced-motion: reduce){.form-select{transition:none}}.form-select:focus{border-color:#86b7fe;outline:0;box-shadow:0 0 0 .25rem rgba(13,110,253,.25)}.form-select[multiple],.form-select[size]:not([size="1"]){padding-right:.75rem;background-image:none}.form-select:disabled{background-color:#e9ecef}.form-select:-moz-focusring{color:rgba(0,0,0,0);text-shadow:0 0 0 #212529}.form-select-sm{padding-top:.25rem;padding-bottom:.25rem;padding-left:.5rem;font-size:0.875rem;border-radius:.2rem}.form-select-lg{padding-top:.5rem;padding-bottom:.5rem;padding-left:1rem;font-size:1.25rem;border-radius:.3rem}.form-check,.shiny-input-container .checkbox,.shiny-input-container .radio{display:block;min-height:1.5rem;padding-left:0;margin-bottom:.125rem}.form-check .form-check-input,.form-check .shiny-input-container .checkbox input,.form-check .shiny-input-container .radio input,.shiny-input-container .checkbox .form-check-input,.shiny-input-container .checkbox .shiny-input-container .checkbox input,.shiny-input-container .checkbox .shiny-input-container .radio input,.shiny-input-container .radio .form-check-input,.shiny-input-container .radio .shiny-input-container .checkbox input,.shiny-input-container .radio .shiny-input-container .radio input{float:left;margin-left:0}.form-check-input,.shiny-input-container .checkbox input,.shiny-input-container .checkbox-inline input,.shiny-input-container .radio input,.shiny-input-container .radio-inline input{width:1em;height:1em;margin-top:.25em;vertical-align:top;background-color:#fff;background-repeat:no-repeat;background-position:center;background-size:contain;border:1px solid rgba(0,0,0,.25);appearance:none;-webkit-appearance:none;-moz-appearance:none;-ms-appearance:none;-o-appearance:none;color-adjust:exact;-webkit-print-color-adjust:exact}.form-check-input[type=checkbox],.shiny-input-container .checkbox input[type=checkbox],.shiny-input-container .checkbox-inline input[type=checkbox],.shiny-input-container .radio input[type=checkbox],.shiny-input-container .radio-inline input[type=checkbox]{border-radius:.25em}.form-check-input[type=radio],.shiny-input-container .checkbox input[type=radio],.shiny-input-container .checkbox-inline input[type=radio],.shiny-input-container .radio input[type=radio],.shiny-input-container .radio-inline input[type=radio]{border-radius:50%}.form-check-input:active,.shiny-input-container .checkbox input:active,.shiny-input-container .checkbox-inline input:active,.shiny-input-container .radio input:active,.shiny-input-container .radio-inline input:active{filter:brightness(90%)}.form-check-input:focus,.shiny-input-container .checkbox input:focus,.shiny-input-container .checkbox-inline input:focus,.shiny-input-container .radio input:focus,.shiny-input-container .radio-inline input:focus{border-color:#86b7fe;outline:0;box-shadow:0 0 0 .25rem rgba(13,110,253,.25)}.form-check-input:checked,.shiny-input-container .checkbox input:checked,.shiny-input-container .checkbox-inline input:checked,.shiny-input-container .radio input:checked,.shiny-input-container .radio-inline input:checked{background-color:#0d6efd;border-color:#0d6efd}.form-check-input:checked[type=checkbox],.shiny-input-container .checkbox input:checked[type=checkbox],.shiny-input-container .checkbox-inline input:checked[type=checkbox],.shiny-input-container .radio input:checked[type=checkbox],.shiny-input-container .radio-inline input:checked[type=checkbox]{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23ffffff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10l3 3l6-6'/%3e%3c/svg%3e")}.form-check-input:checked[type=radio],.shiny-input-container .checkbox input:checked[type=radio],.shiny-input-container .checkbox-inline input:checked[type=radio],.shiny-input-container .radio input:checked[type=radio],.shiny-input-container .radio-inline input:checked[type=radio]{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='2' fill='%23ffffff'/%3e%3c/svg%3e")}.form-check-input[type=checkbox]:indeterminate,.shiny-input-container .checkbox input[type=checkbox]:indeterminate,.shiny-input-container .checkbox-inline input[type=checkbox]:indeterminate,.shiny-input-container .radio input[type=checkbox]:indeterminate,.shiny-input-container .radio-inline input[type=checkbox]:indeterminate{background-color:#0d6efd;border-color:#0d6efd;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23ffffff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10h8'/%3e%3c/svg%3e")}.form-check-input:disabled,.shiny-input-container .checkbox input:disabled,.shiny-input-container .checkbox-inline input:disabled,.shiny-input-container .radio input:disabled,.shiny-input-container .radio-inline input:disabled{pointer-events:none;filter:none;opacity:.5}.form-check-input[disabled]~.form-check-label,.form-check-input[disabled]~span,.form-check-input:disabled~.form-check-label,.form-check-input:disabled~span,.shiny-input-container .checkbox input[disabled]~.form-check-label,.shiny-input-container .checkbox input[disabled]~span,.shiny-input-container .checkbox input:disabled~.form-check-label,.shiny-input-container .checkbox input:disabled~span,.shiny-input-container .checkbox-inline input[disabled]~.form-check-label,.shiny-input-container .checkbox-inline input[disabled]~span,.shiny-input-container .checkbox-inline input:disabled~.form-check-label,.shiny-input-container .checkbox-inline input:disabled~span,.shiny-input-container .radio input[disabled]~.form-check-label,.shiny-input-container .radio input[disabled]~span,.shiny-input-container .radio input:disabled~.form-check-label,.shiny-input-container .radio input:disabled~span,.shiny-input-container .radio-inline input[disabled]~.form-check-label,.shiny-input-container .radio-inline input[disabled]~span,.shiny-input-container .radio-inline input:disabled~.form-check-label,.shiny-input-container .radio-inline input:disabled~span{opacity:.5}.form-check-label,.shiny-input-container .checkbox label,.shiny-input-container .checkbox-inline label,.shiny-input-container .radio label,.shiny-input-container .radio-inline label{cursor:pointer}.form-switch{padding-left:2.5em}.form-switch .form-check-input{width:2em;margin-left:-2.5em;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='rgba%280, 0, 0, 0.25%29'/%3e%3c/svg%3e");background-position:left center;border-radius:2em;transition:background-position .15s ease-in-out}@media(prefers-reduced-motion: reduce){.form-switch .form-check-input{transition:none}}.form-switch .form-check-input:focus{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%2386b7fe'/%3e%3c/svg%3e")}.form-switch .form-check-input:checked{background-position:right center;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23ffffff'/%3e%3c/svg%3e")}.form-check-inline,.shiny-input-container .checkbox-inline,.shiny-input-container .radio-inline{display:inline-block;margin-right:1rem}.btn-check{position:absolute;clip:rect(0, 0, 0, 0);pointer-events:none}.btn-check[disabled]+.btn,.btn-check:disabled+.btn{pointer-events:none;filter:none;opacity:.65}.form-range{width:100%;height:1.5rem;padding:0;background-color:rgba(0,0,0,0);appearance:none;-webkit-appearance:none;-moz-appearance:none;-ms-appearance:none;-o-appearance:none}.form-range:focus{outline:0}.form-range:focus::-webkit-slider-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .25rem rgba(13,110,253,.25)}.form-range:focus::-moz-range-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .25rem rgba(13,110,253,.25)}.form-range::-moz-focus-outer{border:0}.form-range::-webkit-slider-thumb{width:1rem;height:1rem;margin-top:-0.25rem;background-color:#0d6efd;border:0;border-radius:1rem;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;appearance:none;-webkit-appearance:none;-moz-appearance:none;-ms-appearance:none;-o-appearance:none}@media(prefers-reduced-motion: reduce){.form-range::-webkit-slider-thumb{transition:none}}.form-range::-webkit-slider-thumb:active{background-color:#b6d4fe}.form-range::-webkit-slider-runnable-track{width:100%;height:.5rem;color:rgba(0,0,0,0);cursor:pointer;background-color:#dee2e6;border-color:rgba(0,0,0,0);border-radius:1rem}.form-range::-moz-range-thumb{width:1rem;height:1rem;background-color:#0d6efd;border:0;border-radius:1rem;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;appearance:none;-webkit-appearance:none;-moz-appearance:none;-ms-appearance:none;-o-appearance:none}@media(prefers-reduced-motion: reduce){.form-range::-moz-range-thumb{transition:none}}.form-range::-moz-range-thumb:active{background-color:#b6d4fe}.form-range::-moz-range-track{width:100%;height:.5rem;color:rgba(0,0,0,0);cursor:pointer;background-color:#dee2e6;border-color:rgba(0,0,0,0);border-radius:1rem}.form-range:disabled{pointer-events:none}.form-range:disabled::-webkit-slider-thumb{background-color:#adb5bd}.form-range:disabled::-moz-range-thumb{background-color:#adb5bd}.form-floating{position:relative}.form-floating>.form-control,.form-floating>.form-select{height:calc(3.5rem + 2px);line-height:1.25}.form-floating>label{position:absolute;top:0;left:0;height:100%;padding:1rem .75rem;pointer-events:none;border:1px solid rgba(0,0,0,0);transform-origin:0 0;transition:opacity .1s ease-in-out,transform .1s ease-in-out}@media(prefers-reduced-motion: reduce){.form-floating>label{transition:none}}.form-floating>.form-control{padding:1rem .75rem}.form-floating>.form-control::placeholder{color:rgba(0,0,0,0)}.form-floating>.form-control:focus,.form-floating>.form-control:not(:placeholder-shown){padding-top:1.625rem;padding-bottom:.625rem}.form-floating>.form-control:-webkit-autofill{padding-top:1.625rem;padding-bottom:.625rem}.form-floating>.form-select{padding-top:1.625rem;padding-bottom:.625rem}.form-floating>.form-control:focus~label,.form-floating>.form-control:not(:placeholder-shown)~label,.form-floating>.form-select~label{opacity:.65;transform:scale(0.85) translateY(-0.5rem) translateX(0.15rem)}.form-floating>.form-control:-webkit-autofill~label{opacity:.65;transform:scale(0.85) translateY(-0.5rem) translateX(0.15rem)}.input-group{position:relative;display:flex;display:-webkit-flex;flex-wrap:wrap;-webkit-flex-wrap:wrap;align-items:stretch;-webkit-align-items:stretch;width:100%}.input-group>.form-control,.input-group>.form-select{position:relative;flex:1 1 auto;-webkit-flex:1 1 auto;width:1%;min-width:0}.input-group>.form-control:focus,.input-group>.form-select:focus{z-index:3}.input-group .btn{position:relative;z-index:2}.input-group .btn:focus{z-index:3}.input-group-text{display:flex;display:-webkit-flex;align-items:center;-webkit-align-items:center;padding:.375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:#212529;text-align:center;white-space:nowrap;background-color:#e9ecef;border:1px solid #ced4da;border-radius:.25rem}.input-group-lg>.form-control,.input-group-lg>.form-select,.input-group-lg>.input-group-text,.input-group-lg>.btn{padding:.5rem 1rem;font-size:1.25rem;border-radius:.3rem}.input-group-sm>.form-control,.input-group-sm>.form-select,.input-group-sm>.input-group-text,.input-group-sm>.btn{padding:.25rem .5rem;font-size:0.875rem;border-radius:.2rem}.input-group-lg>.form-select,.input-group-sm>.form-select{padding-right:3rem}.input-group:not(.has-validation)>:not(:last-child):not(.dropdown-toggle):not(.dropdown-menu),.input-group:not(.has-validation)>.dropdown-toggle:nth-last-child(n+3){border-top-right-radius:0;border-bottom-right-radius:0}.input-group.has-validation>:nth-last-child(n+3):not(.dropdown-toggle):not(.dropdown-menu),.input-group.has-validation>.dropdown-toggle:nth-last-child(n+4){border-top-right-radius:0;border-bottom-right-radius:0}.input-group>:not(:first-child):not(.dropdown-menu):not(.valid-tooltip):not(.valid-feedback):not(.invalid-tooltip):not(.invalid-feedback){margin-left:-1px;border-top-left-radius:0;border-bottom-left-radius:0}.valid-feedback{display:none;width:100%;margin-top:.25rem;font-size:0.875em;color:#198754}.valid-tooltip{position:absolute;top:100%;z-index:5;display:none;max-width:100%;padding:.25rem .5rem;margin-top:.1rem;font-size:0.875rem;color:#fff;background-color:rgba(25,135,84,.9);border-radius:.25rem}.was-validated :valid~.valid-feedback,.was-validated :valid~.valid-tooltip,.is-valid~.valid-feedback,.is-valid~.valid-tooltip{display:block}.was-validated .form-control:valid,.form-control.is-valid{border-color:#198754;padding-right:calc(1.5em + 0.75rem);background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23198754' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right calc(0.375em + 0.1875rem) center;background-size:calc(0.75em + 0.375rem) calc(0.75em + 0.375rem)}.was-validated .form-control:valid:focus,.form-control.is-valid:focus{border-color:#198754;box-shadow:0 0 0 .25rem rgba(25,135,84,.25)}.was-validated textarea.form-control:valid,textarea.form-control.is-valid{padding-right:calc(1.5em + 0.75rem);background-position:top calc(0.375em + 0.1875rem) right calc(0.375em + 0.1875rem)}.was-validated .form-select:valid,.form-select.is-valid{border-color:#198754}.was-validated .form-select:valid:not([multiple]):not([size]),.was-validated .form-select:valid:not([multiple])[size="1"],.form-select.is-valid:not([multiple]):not([size]),.form-select.is-valid:not([multiple])[size="1"]{padding-right:4.125rem;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e"),url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23198754' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");background-position:right .75rem center,center right 2.25rem;background-size:16px 12px,calc(0.75em + 0.375rem) calc(0.75em + 0.375rem)}.was-validated .form-select:valid:focus,.form-select.is-valid:focus{border-color:#198754;box-shadow:0 0 0 .25rem rgba(25,135,84,.25)}.was-validated .form-check-input:valid,.form-check-input.is-valid{border-color:#198754}.was-validated .form-check-input:valid:checked,.form-check-input.is-valid:checked{background-color:#198754}.was-validated .form-check-input:valid:focus,.form-check-input.is-valid:focus{box-shadow:0 0 0 .25rem rgba(25,135,84,.25)}.was-validated .form-check-input:valid~.form-check-label,.form-check-input.is-valid~.form-check-label{color:#198754}.form-check-inline .form-check-input~.valid-feedback{margin-left:.5em}.was-validated .input-group .form-control:valid,.input-group .form-control.is-valid,.was-validated .input-group .form-select:valid,.input-group .form-select.is-valid{z-index:1}.was-validated .input-group .form-control:valid:focus,.input-group .form-control.is-valid:focus,.was-validated .input-group .form-select:valid:focus,.input-group .form-select.is-valid:focus{z-index:3}.invalid-feedback{display:none;width:100%;margin-top:.25rem;font-size:0.875em;color:#dc3545}.invalid-tooltip{position:absolute;top:100%;z-index:5;display:none;max-width:100%;padding:.25rem .5rem;margin-top:.1rem;font-size:0.875rem;color:#fff;background-color:rgba(220,53,69,.9);border-radius:.25rem}.was-validated :invalid~.invalid-feedback,.was-validated :invalid~.invalid-tooltip,.is-invalid~.invalid-feedback,.is-invalid~.invalid-tooltip{display:block}.was-validated .form-control:invalid,.form-control.is-invalid{border-color:#dc3545;padding-right:calc(1.5em + 0.75rem);background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23dc3545'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right calc(0.375em + 0.1875rem) center;background-size:calc(0.75em + 0.375rem) calc(0.75em + 0.375rem)}.was-validated .form-control:invalid:focus,.form-control.is-invalid:focus{border-color:#dc3545;box-shadow:0 0 0 .25rem rgba(220,53,69,.25)}.was-validated textarea.form-control:invalid,textarea.form-control.is-invalid{padding-right:calc(1.5em + 0.75rem);background-position:top calc(0.375em + 0.1875rem) right calc(0.375em + 0.1875rem)}.was-validated .form-select:invalid,.form-select.is-invalid{border-color:#dc3545}.was-validated .form-select:invalid:not([multiple]):not([size]),.was-validated .form-select:invalid:not([multiple])[size="1"],.form-select.is-invalid:not([multiple]):not([size]),.form-select.is-invalid:not([multiple])[size="1"]{padding-right:4.125rem;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e"),url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23dc3545'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e");background-position:right .75rem center,center right 2.25rem;background-size:16px 12px,calc(0.75em + 0.375rem) calc(0.75em + 0.375rem)}.was-validated .form-select:invalid:focus,.form-select.is-invalid:focus{border-color:#dc3545;box-shadow:0 0 0 .25rem rgba(220,53,69,.25)}.was-validated .form-check-input:invalid,.form-check-input.is-invalid{border-color:#dc3545}.was-validated .form-check-input:invalid:checked,.form-check-input.is-invalid:checked{background-color:#dc3545}.was-validated .form-check-input:invalid:focus,.form-check-input.is-invalid:focus{box-shadow:0 0 0 .25rem rgba(220,53,69,.25)}.was-validated .form-check-input:invalid~.form-check-label,.form-check-input.is-invalid~.form-check-label{color:#dc3545}.form-check-inline .form-check-input~.invalid-feedback{margin-left:.5em}.was-validated .input-group .form-control:invalid,.input-group .form-control.is-invalid,.was-validated .input-group .form-select:invalid,.input-group .form-select.is-invalid{z-index:2}.was-validated .input-group .form-control:invalid:focus,.input-group .form-control.is-invalid:focus,.was-validated .input-group .form-select:invalid:focus,.input-group .form-select.is-invalid:focus{z-index:3}.btn{display:inline-block;font-weight:400;line-height:1.5;color:#212529;text-align:center;text-decoration:none;-webkit-text-decoration:none;-moz-text-decoration:none;-ms-text-decoration:none;-o-text-decoration:none;vertical-align:middle;cursor:pointer;user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;-o-user-select:none;background-color:rgba(0,0,0,0);border:1px solid rgba(0,0,0,0);padding:.375rem .75rem;font-size:1rem;border-radius:.25rem;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media(prefers-reduced-motion: reduce){.btn{transition:none}}.btn:hover{color:#212529}.btn-check:focus+.btn,.btn:focus{outline:0;box-shadow:0 0 0 .25rem rgba(13,110,253,.25)}.btn:disabled,.btn.disabled,fieldset:disabled .btn{pointer-events:none;opacity:.65}.btn-default{color:#000;background-color:#dee2e6;border-color:#dee2e6}.btn-default:hover{color:#000;background-color:#e3e6ea;border-color:#e1e5e9}.btn-check:focus+.btn-default,.btn-default:focus{color:#000;background-color:#e3e6ea;border-color:#e1e5e9;box-shadow:0 0 0 .25rem rgba(189,192,196,.5)}.btn-check:checked+.btn-default,.btn-check:active+.btn-default,.btn-default:active,.btn-default.active,.show>.btn-default.dropdown-toggle{color:#000;background-color:#e5e8eb;border-color:#e1e5e9}.btn-check:checked+.btn-default:focus,.btn-check:active+.btn-default:focus,.btn-default:active:focus,.btn-default.active:focus,.show>.btn-default.dropdown-toggle:focus{box-shadow:0 0 0 .25rem rgba(189,192,196,.5)}.btn-default:disabled,.btn-default.disabled{color:#000;background-color:#dee2e6;border-color:#dee2e6}.btn-primary{color:#fff;background-color:#0d6efd;border-color:#0d6efd}.btn-primary:hover{color:#fff;background-color:#0b5ed7;border-color:#0a58ca}.btn-check:focus+.btn-primary,.btn-primary:focus{color:#fff;background-color:#0b5ed7;border-color:#0a58ca;box-shadow:0 0 0 .25rem rgba(49,132,253,.5)}.btn-check:checked+.btn-primary,.btn-check:active+.btn-primary,.btn-primary:active,.btn-primary.active,.show>.btn-primary.dropdown-toggle{color:#fff;background-color:#0a58ca;border-color:#0a53be}.btn-check:checked+.btn-primary:focus,.btn-check:active+.btn-primary:focus,.btn-primary:active:focus,.btn-primary.active:focus,.show>.btn-primary.dropdown-toggle:focus{box-shadow:0 0 0 .25rem rgba(49,132,253,.5)}.btn-primary:disabled,.btn-primary.disabled{color:#fff;background-color:#0d6efd;border-color:#0d6efd}.btn-secondary{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-secondary:hover{color:#fff;background-color:#5c636a;border-color:#565e64}.btn-check:focus+.btn-secondary,.btn-secondary:focus{color:#fff;background-color:#5c636a;border-color:#565e64;box-shadow:0 0 0 .25rem rgba(130,138,145,.5)}.btn-check:checked+.btn-secondary,.btn-check:active+.btn-secondary,.btn-secondary:active,.btn-secondary.active,.show>.btn-secondary.dropdown-toggle{color:#fff;background-color:#565e64;border-color:#51585e}.btn-check:checked+.btn-secondary:focus,.btn-check:active+.btn-secondary:focus,.btn-secondary:active:focus,.btn-secondary.active:focus,.show>.btn-secondary.dropdown-toggle:focus{box-shadow:0 0 0 .25rem rgba(130,138,145,.5)}.btn-secondary:disabled,.btn-secondary.disabled{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-success{color:#fff;background-color:#198754;border-color:#198754}.btn-success:hover{color:#fff;background-color:#157347;border-color:#146c43}.btn-check:focus+.btn-success,.btn-success:focus{color:#fff;background-color:#157347;border-color:#146c43;box-shadow:0 0 0 .25rem rgba(60,153,110,.5)}.btn-check:checked+.btn-success,.btn-check:active+.btn-success,.btn-success:active,.btn-success.active,.show>.btn-success.dropdown-toggle{color:#fff;background-color:#146c43;border-color:#13653f}.btn-check:checked+.btn-success:focus,.btn-check:active+.btn-success:focus,.btn-success:active:focus,.btn-success.active:focus,.show>.btn-success.dropdown-toggle:focus{box-shadow:0 0 0 .25rem rgba(60,153,110,.5)}.btn-success:disabled,.btn-success.disabled{color:#fff;background-color:#198754;border-color:#198754}.btn-info{color:#000;background-color:#0dcaf0;border-color:#0dcaf0}.btn-info:hover{color:#000;background-color:#31d2f2;border-color:#25cff2}.btn-check:focus+.btn-info,.btn-info:focus{color:#000;background-color:#31d2f2;border-color:#25cff2;box-shadow:0 0 0 .25rem rgba(11,172,204,.5)}.btn-check:checked+.btn-info,.btn-check:active+.btn-info,.btn-info:active,.btn-info.active,.show>.btn-info.dropdown-toggle{color:#000;background-color:#3dd5f3;border-color:#25cff2}.btn-check:checked+.btn-info:focus,.btn-check:active+.btn-info:focus,.btn-info:active:focus,.btn-info.active:focus,.show>.btn-info.dropdown-toggle:focus{box-shadow:0 0 0 .25rem rgba(11,172,204,.5)}.btn-info:disabled,.btn-info.disabled{color:#000;background-color:#0dcaf0;border-color:#0dcaf0}.btn-warning{color:#000;background-color:#ffc107;border-color:#ffc107}.btn-warning:hover{color:#000;background-color:#ffca2c;border-color:#ffc720}.btn-check:focus+.btn-warning,.btn-warning:focus{color:#000;background-color:#ffca2c;border-color:#ffc720;box-shadow:0 0 0 .25rem rgba(217,164,6,.5)}.btn-check:checked+.btn-warning,.btn-check:active+.btn-warning,.btn-warning:active,.btn-warning.active,.show>.btn-warning.dropdown-toggle{color:#000;background-color:#ffcd39;border-color:#ffc720}.btn-check:checked+.btn-warning:focus,.btn-check:active+.btn-warning:focus,.btn-warning:active:focus,.btn-warning.active:focus,.show>.btn-warning.dropdown-toggle:focus{box-shadow:0 0 0 .25rem rgba(217,164,6,.5)}.btn-warning:disabled,.btn-warning.disabled{color:#000;background-color:#ffc107;border-color:#ffc107}.btn-danger{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-danger:hover{color:#fff;background-color:#bb2d3b;border-color:#b02a37}.btn-check:focus+.btn-danger,.btn-danger:focus{color:#fff;background-color:#bb2d3b;border-color:#b02a37;box-shadow:0 0 0 .25rem rgba(225,83,97,.5)}.btn-check:checked+.btn-danger,.btn-check:active+.btn-danger,.btn-danger:active,.btn-danger.active,.show>.btn-danger.dropdown-toggle{color:#fff;background-color:#b02a37;border-color:#a52834}.btn-check:checked+.btn-danger:focus,.btn-check:active+.btn-danger:focus,.btn-danger:active:focus,.btn-danger.active:focus,.show>.btn-danger.dropdown-toggle:focus{box-shadow:0 0 0 .25rem rgba(225,83,97,.5)}.btn-danger:disabled,.btn-danger.disabled{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-light{color:#000;background-color:#f8f9fa;border-color:#f8f9fa}.btn-light:hover{color:#000;background-color:#f9fafb;border-color:#f9fafb}.btn-check:focus+.btn-light,.btn-light:focus{color:#000;background-color:#f9fafb;border-color:#f9fafb;box-shadow:0 0 0 .25rem rgba(211,212,213,.5)}.btn-check:checked+.btn-light,.btn-check:active+.btn-light,.btn-light:active,.btn-light.active,.show>.btn-light.dropdown-toggle{color:#000;background-color:#f9fafb;border-color:#f9fafb}.btn-check:checked+.btn-light:focus,.btn-check:active+.btn-light:focus,.btn-light:active:focus,.btn-light.active:focus,.show>.btn-light.dropdown-toggle:focus{box-shadow:0 0 0 .25rem rgba(211,212,213,.5)}.btn-light:disabled,.btn-light.disabled{color:#000;background-color:#f8f9fa;border-color:#f8f9fa}.btn-dark{color:#fff;background-color:#212529;border-color:#212529}.btn-dark:hover{color:#fff;background-color:#1c1f23;border-color:#1a1e21}.btn-check:focus+.btn-dark,.btn-dark:focus{color:#fff;background-color:#1c1f23;border-color:#1a1e21;box-shadow:0 0 0 .25rem rgba(66,70,73,.5)}.btn-check:checked+.btn-dark,.btn-check:active+.btn-dark,.btn-dark:active,.btn-dark.active,.show>.btn-dark.dropdown-toggle{color:#fff;background-color:#1a1e21;border-color:#191c1f}.btn-check:checked+.btn-dark:focus,.btn-check:active+.btn-dark:focus,.btn-dark:active:focus,.btn-dark.active:focus,.show>.btn-dark.dropdown-toggle:focus{box-shadow:0 0 0 .25rem rgba(66,70,73,.5)}.btn-dark:disabled,.btn-dark.disabled{color:#fff;background-color:#212529;border-color:#212529}.btn-outline-default{color:#dee2e6;border-color:#dee2e6;background-color:rgba(0,0,0,0)}.btn-outline-default:hover{color:#000;background-color:#dee2e6;border-color:#dee2e6}.btn-check:focus+.btn-outline-default,.btn-outline-default:focus{box-shadow:0 0 0 .25rem rgba(222,226,230,.5)}.btn-check:checked+.btn-outline-default,.btn-check:active+.btn-outline-default,.btn-outline-default:active,.btn-outline-default.active,.btn-outline-default.dropdown-toggle.show{color:#000;background-color:#dee2e6;border-color:#dee2e6}.btn-check:checked+.btn-outline-default:focus,.btn-check:active+.btn-outline-default:focus,.btn-outline-default:active:focus,.btn-outline-default.active:focus,.btn-outline-default.dropdown-toggle.show:focus{box-shadow:0 0 0 .25rem rgba(222,226,230,.5)}.btn-outline-default:disabled,.btn-outline-default.disabled{color:#dee2e6;background-color:rgba(0,0,0,0)}.btn-outline-primary{color:#0d6efd;border-color:#0d6efd;background-color:rgba(0,0,0,0)}.btn-outline-primary:hover{color:#fff;background-color:#0d6efd;border-color:#0d6efd}.btn-check:focus+.btn-outline-primary,.btn-outline-primary:focus{box-shadow:0 0 0 .25rem rgba(13,110,253,.5)}.btn-check:checked+.btn-outline-primary,.btn-check:active+.btn-outline-primary,.btn-outline-primary:active,.btn-outline-primary.active,.btn-outline-primary.dropdown-toggle.show{color:#fff;background-color:#0d6efd;border-color:#0d6efd}.btn-check:checked+.btn-outline-primary:focus,.btn-check:active+.btn-outline-primary:focus,.btn-outline-primary:active:focus,.btn-outline-primary.active:focus,.btn-outline-primary.dropdown-toggle.show:focus{box-shadow:0 0 0 .25rem rgba(13,110,253,.5)}.btn-outline-primary:disabled,.btn-outline-primary.disabled{color:#0d6efd;background-color:rgba(0,0,0,0)}.btn-outline-secondary{color:#6c757d;border-color:#6c757d;background-color:rgba(0,0,0,0)}.btn-outline-secondary:hover{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-check:focus+.btn-outline-secondary,.btn-outline-secondary:focus{box-shadow:0 0 0 .25rem rgba(108,117,125,.5)}.btn-check:checked+.btn-outline-secondary,.btn-check:active+.btn-outline-secondary,.btn-outline-secondary:active,.btn-outline-secondary.active,.btn-outline-secondary.dropdown-toggle.show{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-check:checked+.btn-outline-secondary:focus,.btn-check:active+.btn-outline-secondary:focus,.btn-outline-secondary:active:focus,.btn-outline-secondary.active:focus,.btn-outline-secondary.dropdown-toggle.show:focus{box-shadow:0 0 0 .25rem rgba(108,117,125,.5)}.btn-outline-secondary:disabled,.btn-outline-secondary.disabled{color:#6c757d;background-color:rgba(0,0,0,0)}.btn-outline-success{color:#198754;border-color:#198754;background-color:rgba(0,0,0,0)}.btn-outline-success:hover{color:#fff;background-color:#198754;border-color:#198754}.btn-check:focus+.btn-outline-success,.btn-outline-success:focus{box-shadow:0 0 0 .25rem rgba(25,135,84,.5)}.btn-check:checked+.btn-outline-success,.btn-check:active+.btn-outline-success,.btn-outline-success:active,.btn-outline-success.active,.btn-outline-success.dropdown-toggle.show{color:#fff;background-color:#198754;border-color:#198754}.btn-check:checked+.btn-outline-success:focus,.btn-check:active+.btn-outline-success:focus,.btn-outline-success:active:focus,.btn-outline-success.active:focus,.btn-outline-success.dropdown-toggle.show:focus{box-shadow:0 0 0 .25rem rgba(25,135,84,.5)}.btn-outline-success:disabled,.btn-outline-success.disabled{color:#198754;background-color:rgba(0,0,0,0)}.btn-outline-info{color:#0dcaf0;border-color:#0dcaf0;background-color:rgba(0,0,0,0)}.btn-outline-info:hover{color:#000;background-color:#0dcaf0;border-color:#0dcaf0}.btn-check:focus+.btn-outline-info,.btn-outline-info:focus{box-shadow:0 0 0 .25rem rgba(13,202,240,.5)}.btn-check:checked+.btn-outline-info,.btn-check:active+.btn-outline-info,.btn-outline-info:active,.btn-outline-info.active,.btn-outline-info.dropdown-toggle.show{color:#000;background-color:#0dcaf0;border-color:#0dcaf0}.btn-check:checked+.btn-outline-info:focus,.btn-check:active+.btn-outline-info:focus,.btn-outline-info:active:focus,.btn-outline-info.active:focus,.btn-outline-info.dropdown-toggle.show:focus{box-shadow:0 0 0 .25rem rgba(13,202,240,.5)}.btn-outline-info:disabled,.btn-outline-info.disabled{color:#0dcaf0;background-color:rgba(0,0,0,0)}.btn-outline-warning{color:#ffc107;border-color:#ffc107;background-color:rgba(0,0,0,0)}.btn-outline-warning:hover{color:#000;background-color:#ffc107;border-color:#ffc107}.btn-check:focus+.btn-outline-warning,.btn-outline-warning:focus{box-shadow:0 0 0 .25rem rgba(255,193,7,.5)}.btn-check:checked+.btn-outline-warning,.btn-check:active+.btn-outline-warning,.btn-outline-warning:active,.btn-outline-warning.active,.btn-outline-warning.dropdown-toggle.show{color:#000;background-color:#ffc107;border-color:#ffc107}.btn-check:checked+.btn-outline-warning:focus,.btn-check:active+.btn-outline-warning:focus,.btn-outline-warning:active:focus,.btn-outline-warning.active:focus,.btn-outline-warning.dropdown-toggle.show:focus{box-shadow:0 0 0 .25rem rgba(255,193,7,.5)}.btn-outline-warning:disabled,.btn-outline-warning.disabled{color:#ffc107;background-color:rgba(0,0,0,0)}.btn-outline-danger{color:#dc3545;border-color:#dc3545;background-color:rgba(0,0,0,0)}.btn-outline-danger:hover{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-check:focus+.btn-outline-danger,.btn-outline-danger:focus{box-shadow:0 0 0 .25rem rgba(220,53,69,.5)}.btn-check:checked+.btn-outline-danger,.btn-check:active+.btn-outline-danger,.btn-outline-danger:active,.btn-outline-danger.active,.btn-outline-danger.dropdown-toggle.show{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-check:checked+.btn-outline-danger:focus,.btn-check:active+.btn-outline-danger:focus,.btn-outline-danger:active:focus,.btn-outline-danger.active:focus,.btn-outline-danger.dropdown-toggle.show:focus{box-shadow:0 0 0 .25rem rgba(220,53,69,.5)}.btn-outline-danger:disabled,.btn-outline-danger.disabled{color:#dc3545;background-color:rgba(0,0,0,0)}.btn-outline-light{color:#f8f9fa;border-color:#f8f9fa;background-color:rgba(0,0,0,0)}.btn-outline-light:hover{color:#000;background-color:#f8f9fa;border-color:#f8f9fa}.btn-check:focus+.btn-outline-light,.btn-outline-light:focus{box-shadow:0 0 0 .25rem rgba(248,249,250,.5)}.btn-check:checked+.btn-outline-light,.btn-check:active+.btn-outline-light,.btn-outline-light:active,.btn-outline-light.active,.btn-outline-light.dropdown-toggle.show{color:#000;background-color:#f8f9fa;border-color:#f8f9fa}.btn-check:checked+.btn-outline-light:focus,.btn-check:active+.btn-outline-light:focus,.btn-outline-light:active:focus,.btn-outline-light.active:focus,.btn-outline-light.dropdown-toggle.show:focus{box-shadow:0 0 0 .25rem rgba(248,249,250,.5)}.btn-outline-light:disabled,.btn-outline-light.disabled{color:#f8f9fa;background-color:rgba(0,0,0,0)}.btn-outline-dark{color:#212529;border-color:#212529;background-color:rgba(0,0,0,0)}.btn-outline-dark:hover{color:#fff;background-color:#212529;border-color:#212529}.btn-check:focus+.btn-outline-dark,.btn-outline-dark:focus{box-shadow:0 0 0 .25rem rgba(33,37,41,.5)}.btn-check:checked+.btn-outline-dark,.btn-check:active+.btn-outline-dark,.btn-outline-dark:active,.btn-outline-dark.active,.btn-outline-dark.dropdown-toggle.show{color:#fff;background-color:#212529;border-color:#212529}.btn-check:checked+.btn-outline-dark:focus,.btn-check:active+.btn-outline-dark:focus,.btn-outline-dark:active:focus,.btn-outline-dark.active:focus,.btn-outline-dark.dropdown-toggle.show:focus{box-shadow:0 0 0 .25rem rgba(33,37,41,.5)}.btn-outline-dark:disabled,.btn-outline-dark.disabled{color:#212529;background-color:rgba(0,0,0,0)}.btn-link{font-weight:400;color:#0d6efd;text-decoration:underline;-webkit-text-decoration:underline;-moz-text-decoration:underline;-ms-text-decoration:underline;-o-text-decoration:underline}.btn-link:hover{color:#0a58ca}.btn-link:disabled,.btn-link.disabled{color:#6c757d}.btn-lg,.btn-group-lg>.btn{padding:.5rem 1rem;font-size:1.25rem;border-radius:.3rem}.btn-sm,.btn-group-sm>.btn{padding:.25rem .5rem;font-size:0.875rem;border-radius:.2rem}.fade{transition:opacity .15s linear}@media(prefers-reduced-motion: reduce){.fade{transition:none}}.fade:not(.show){opacity:0}.collapse:not(.show){display:none}.collapsing{height:0;overflow:hidden;transition:height .2s ease}@media(prefers-reduced-motion: reduce){.collapsing{transition:none}}.collapsing.collapse-horizontal{width:0;height:auto;transition:width .35s ease}@media(prefers-reduced-motion: reduce){.collapsing.collapse-horizontal{transition:none}}.dropup,.dropend,.dropdown,.dropstart{position:relative}.dropdown-toggle{white-space:nowrap}.dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:.3em solid;border-right:.3em solid rgba(0,0,0,0);border-bottom:0;border-left:.3em solid rgba(0,0,0,0)}.dropdown-toggle:empty::after{margin-left:0}.dropdown-menu{position:absolute;z-index:1000;display:none;min-width:10rem;padding:.5rem 0;margin:0;font-size:1rem;color:#212529;text-align:left;list-style:none;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.15);border-radius:.25rem}.dropdown-menu[data-bs-popper]{top:100%;left:0;margin-top:.125rem}.dropdown-menu-start{--bs-position: start}.dropdown-menu-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-end{--bs-position: end}.dropdown-menu-end[data-bs-popper]{right:0;left:auto}@media(min-width: 576px){.dropdown-menu-sm-start{--bs-position: start}.dropdown-menu-sm-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-sm-end{--bs-position: end}.dropdown-menu-sm-end[data-bs-popper]{right:0;left:auto}}@media(min-width: 768px){.dropdown-menu-md-start{--bs-position: start}.dropdown-menu-md-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-md-end{--bs-position: end}.dropdown-menu-md-end[data-bs-popper]{right:0;left:auto}}@media(min-width: 992px){.dropdown-menu-lg-start{--bs-position: start}.dropdown-menu-lg-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-lg-end{--bs-position: end}.dropdown-menu-lg-end[data-bs-popper]{right:0;left:auto}}@media(min-width: 1200px){.dropdown-menu-xl-start{--bs-position: start}.dropdown-menu-xl-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-xl-end{--bs-position: end}.dropdown-menu-xl-end[data-bs-popper]{right:0;left:auto}}@media(min-width: 1400px){.dropdown-menu-xxl-start{--bs-position: start}.dropdown-menu-xxl-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-xxl-end{--bs-position: end}.dropdown-menu-xxl-end[data-bs-popper]{right:0;left:auto}}.dropup .dropdown-menu[data-bs-popper]{top:auto;bottom:100%;margin-top:0;margin-bottom:.125rem}.dropup .dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:0;border-right:.3em solid rgba(0,0,0,0);border-bottom:.3em solid;border-left:.3em solid rgba(0,0,0,0)}.dropup .dropdown-toggle:empty::after{margin-left:0}.dropend .dropdown-menu[data-bs-popper]{top:0;right:auto;left:100%;margin-top:0;margin-left:.125rem}.dropend .dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:.3em solid rgba(0,0,0,0);border-right:0;border-bottom:.3em solid rgba(0,0,0,0);border-left:.3em solid}.dropend .dropdown-toggle:empty::after{margin-left:0}.dropend .dropdown-toggle::after{vertical-align:0}.dropstart .dropdown-menu[data-bs-popper]{top:0;right:100%;left:auto;margin-top:0;margin-right:.125rem}.dropstart .dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:""}.dropstart .dropdown-toggle::after{display:none}.dropstart .dropdown-toggle::before{display:inline-block;margin-right:.255em;vertical-align:.255em;content:"";border-top:.3em solid rgba(0,0,0,0);border-right:.3em solid;border-bottom:.3em solid rgba(0,0,0,0)}.dropstart .dropdown-toggle:empty::after{margin-left:0}.dropstart .dropdown-toggle::before{vertical-align:0}.dropdown-divider{height:0;margin:.5rem 0;overflow:hidden;border-top:1px solid rgba(0,0,0,.15)}.dropdown-item{display:block;width:100%;padding:.25rem 1rem;clear:both;font-weight:400;color:#212529;text-align:inherit;text-decoration:none;-webkit-text-decoration:none;-moz-text-decoration:none;-ms-text-decoration:none;-o-text-decoration:none;white-space:nowrap;background-color:rgba(0,0,0,0);border:0}.dropdown-item:hover,.dropdown-item:focus{color:#1e2125;background-color:#e9ecef}.dropdown-item.active,.dropdown-item:active{color:#fff;text-decoration:none;background-color:#0d6efd}.dropdown-item.disabled,.dropdown-item:disabled{color:#adb5bd;pointer-events:none;background-color:rgba(0,0,0,0)}.dropdown-menu.show{display:block}.dropdown-header{display:block;padding:.5rem 1rem;margin-bottom:0;font-size:0.875rem;color:#6c757d;white-space:nowrap}.dropdown-item-text{display:block;padding:.25rem 1rem;color:#212529}.dropdown-menu-dark{color:#dee2e6;background-color:#343a40;border-color:rgba(0,0,0,.15)}.dropdown-menu-dark .dropdown-item{color:#dee2e6}.dropdown-menu-dark .dropdown-item:hover,.dropdown-menu-dark .dropdown-item:focus{color:#fff;background-color:rgba(255,255,255,.15)}.dropdown-menu-dark .dropdown-item.active,.dropdown-menu-dark .dropdown-item:active{color:#fff;background-color:#0d6efd}.dropdown-menu-dark .dropdown-item.disabled,.dropdown-menu-dark .dropdown-item:disabled{color:#adb5bd}.dropdown-menu-dark .dropdown-divider{border-color:rgba(0,0,0,.15)}.dropdown-menu-dark .dropdown-item-text{color:#dee2e6}.dropdown-menu-dark .dropdown-header{color:#adb5bd}.btn-group,.btn-group-vertical{position:relative;display:inline-flex;vertical-align:middle}.btn-group>.btn,.btn-group-vertical>.btn{position:relative;flex:1 1 auto;-webkit-flex:1 1 auto}.btn-group>.btn-check:checked+.btn,.btn-group>.btn-check:focus+.btn,.btn-group>.btn:hover,.btn-group>.btn:focus,.btn-group>.btn:active,.btn-group>.btn.active,.btn-group-vertical>.btn-check:checked+.btn,.btn-group-vertical>.btn-check:focus+.btn,.btn-group-vertical>.btn:hover,.btn-group-vertical>.btn:focus,.btn-group-vertical>.btn:active,.btn-group-vertical>.btn.active{z-index:1}.btn-toolbar{display:flex;display:-webkit-flex;flex-wrap:wrap;-webkit-flex-wrap:wrap;justify-content:flex-start;-webkit-justify-content:flex-start}.btn-toolbar .input-group{width:auto}.btn-group>.btn:not(:first-child),.btn-group>.btn-group:not(:first-child){margin-left:-1px}.btn-group>.btn:not(:last-child):not(.dropdown-toggle),.btn-group>.btn-group:not(:last-child)>.btn{border-top-right-radius:0;border-bottom-right-radius:0}.btn-group>.btn:nth-child(n+3),.btn-group>:not(.btn-check)+.btn,.btn-group>.btn-group:not(:first-child)>.btn{border-top-left-radius:0;border-bottom-left-radius:0}.dropdown-toggle-split{padding-right:.5625rem;padding-left:.5625rem}.dropdown-toggle-split::after,.dropup .dropdown-toggle-split::after,.dropend .dropdown-toggle-split::after{margin-left:0}.dropstart .dropdown-toggle-split::before{margin-right:0}.btn-sm+.dropdown-toggle-split,.btn-group-sm>.btn+.dropdown-toggle-split{padding-right:.375rem;padding-left:.375rem}.btn-lg+.dropdown-toggle-split,.btn-group-lg>.btn+.dropdown-toggle-split{padding-right:.75rem;padding-left:.75rem}.btn-group-vertical{flex-direction:column;-webkit-flex-direction:column;align-items:flex-start;-webkit-align-items:flex-start;justify-content:center;-webkit-justify-content:center}.btn-group-vertical>.btn,.btn-group-vertical>.btn-group{width:100%}.btn-group-vertical>.btn:not(:first-child),.btn-group-vertical>.btn-group:not(:first-child){margin-top:-1px}.btn-group-vertical>.btn:not(:last-child):not(.dropdown-toggle),.btn-group-vertical>.btn-group:not(:last-child)>.btn{border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn~.btn,.btn-group-vertical>.btn-group:not(:first-child)>.btn{border-top-left-radius:0;border-top-right-radius:0}.nav{display:flex;display:-webkit-flex;flex-wrap:wrap;-webkit-flex-wrap:wrap;padding-left:0;margin-bottom:0;list-style:none}.nav-link{display:block;padding:.5rem 1rem;color:#0d6efd;text-decoration:none;-webkit-text-decoration:none;-moz-text-decoration:none;-ms-text-decoration:none;-o-text-decoration:none;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out}@media(prefers-reduced-motion: reduce){.nav-link{transition:none}}.nav-link:hover,.nav-link:focus{color:#0a58ca}.nav-link.disabled{color:#6c757d;pointer-events:none;cursor:default}.nav-tabs{border-bottom:1px solid #dee2e6}.nav-tabs .nav-link{margin-bottom:-1px;background:none;border:1px solid rgba(0,0,0,0);border-top-left-radius:.25rem;border-top-right-radius:.25rem}.nav-tabs .nav-link:hover,.nav-tabs .nav-link:focus{border-color:#e9ecef #e9ecef #dee2e6;isolation:isolate}.nav-tabs .nav-link.disabled{color:#6c757d;background-color:rgba(0,0,0,0);border-color:rgba(0,0,0,0)}.nav-tabs .nav-link.active,.nav-tabs .nav-item.show .nav-link{color:#495057;background-color:#fff;border-color:#dee2e6 #dee2e6 #fff}.nav-tabs .dropdown-menu{margin-top:-1px;border-top-left-radius:0;border-top-right-radius:0}.nav-pills .nav-link{background:none;border:0;border-radius:.25rem}.nav-pills .nav-link.active,.nav-pills .show>.nav-link{color:#fff;background-color:#0d6efd}.nav-fill>.nav-link,.nav-fill .nav-item{flex:1 1 auto;-webkit-flex:1 1 auto;text-align:center}.nav-justified>.nav-link,.nav-justified .nav-item{flex-basis:0;-webkit-flex-basis:0;flex-grow:1;-webkit-flex-grow:1;text-align:center}.nav-fill .nav-item .nav-link,.nav-justified .nav-item .nav-link{width:100%}.tab-content>.tab-pane{display:none}.tab-content>.active{display:block}.navbar{position:relative;display:flex;display:-webkit-flex;flex-wrap:wrap;-webkit-flex-wrap:wrap;align-items:center;-webkit-align-items:center;justify-content:space-between;-webkit-justify-content:space-between;padding-top:.5rem;padding-bottom:.5rem}.navbar>.container-xxl,.navbar>.container-xl,.navbar>.container-lg,.navbar>.container-md,.navbar>.container-sm,.navbar>.container,.navbar>.container-fluid{display:flex;display:-webkit-flex;flex-wrap:inherit;-webkit-flex-wrap:inherit;align-items:center;-webkit-align-items:center;justify-content:space-between;-webkit-justify-content:space-between}.navbar-brand{padding-top:.3125rem;padding-bottom:.3125rem;margin-right:1rem;font-size:1.25rem;text-decoration:none;-webkit-text-decoration:none;-moz-text-decoration:none;-ms-text-decoration:none;-o-text-decoration:none;white-space:nowrap}.navbar-nav{display:flex;display:-webkit-flex;flex-direction:column;-webkit-flex-direction:column;padding-left:0;margin-bottom:0;list-style:none}.navbar-nav .nav-link{padding-right:0;padding-left:0}.navbar-nav .dropdown-menu{position:static}.navbar-text{padding-top:.5rem;padding-bottom:.5rem}.navbar-collapse{flex-basis:100%;-webkit-flex-basis:100%;flex-grow:1;-webkit-flex-grow:1;align-items:center;-webkit-align-items:center}.navbar-toggler{padding:.25 0;font-size:1.25rem;line-height:1;background-color:rgba(0,0,0,0);border:1px solid rgba(0,0,0,0);border-radius:.25rem;transition:box-shadow .15s ease-in-out}@media(prefers-reduced-motion: reduce){.navbar-toggler{transition:none}}.navbar-toggler:hover{text-decoration:none}.navbar-toggler:focus{text-decoration:none;outline:0;box-shadow:0 0 0 .25rem}.navbar-toggler-icon{display:inline-block;width:1.5em;height:1.5em;vertical-align:middle;background-repeat:no-repeat;background-position:center;background-size:100%}.navbar-nav-scroll{max-height:var(--bs-scroll-height, 75vh);overflow-y:auto}@media(min-width: 576px){.navbar-expand-sm{flex-wrap:nowrap;-webkit-flex-wrap:nowrap;justify-content:flex-start;-webkit-justify-content:flex-start}.navbar-expand-sm .navbar-nav{flex-direction:row;-webkit-flex-direction:row}.navbar-expand-sm .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-sm .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-sm .navbar-nav-scroll{overflow:visible}.navbar-expand-sm .navbar-collapse{display:flex !important;display:-webkit-flex !important;flex-basis:auto;-webkit-flex-basis:auto}.navbar-expand-sm .navbar-toggler{display:none}.navbar-expand-sm .offcanvas-header{display:none}.navbar-expand-sm .offcanvas{position:inherit;bottom:0;z-index:1000;flex-grow:1;-webkit-flex-grow:1;visibility:visible !important;background-color:rgba(0,0,0,0);border-right:0;border-left:0;transition:none;transform:none}.navbar-expand-sm .offcanvas-top,.navbar-expand-sm .offcanvas-bottom{height:auto;border-top:0;border-bottom:0}.navbar-expand-sm .offcanvas-body{display:flex;display:-webkit-flex;flex-grow:0;-webkit-flex-grow:0;padding:0;overflow-y:visible}}@media(min-width: 768px){.navbar-expand-md{flex-wrap:nowrap;-webkit-flex-wrap:nowrap;justify-content:flex-start;-webkit-justify-content:flex-start}.navbar-expand-md .navbar-nav{flex-direction:row;-webkit-flex-direction:row}.navbar-expand-md .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-md .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-md .navbar-nav-scroll{overflow:visible}.navbar-expand-md .navbar-collapse{display:flex !important;display:-webkit-flex !important;flex-basis:auto;-webkit-flex-basis:auto}.navbar-expand-md .navbar-toggler{display:none}.navbar-expand-md .offcanvas-header{display:none}.navbar-expand-md .offcanvas{position:inherit;bottom:0;z-index:1000;flex-grow:1;-webkit-flex-grow:1;visibility:visible !important;background-color:rgba(0,0,0,0);border-right:0;border-left:0;transition:none;transform:none}.navbar-expand-md .offcanvas-top,.navbar-expand-md .offcanvas-bottom{height:auto;border-top:0;border-bottom:0}.navbar-expand-md .offcanvas-body{display:flex;display:-webkit-flex;flex-grow:0;-webkit-flex-grow:0;padding:0;overflow-y:visible}}@media(min-width: 992px){.navbar-expand-lg{flex-wrap:nowrap;-webkit-flex-wrap:nowrap;justify-content:flex-start;-webkit-justify-content:flex-start}.navbar-expand-lg .navbar-nav{flex-direction:row;-webkit-flex-direction:row}.navbar-expand-lg .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-lg .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-lg .navbar-nav-scroll{overflow:visible}.navbar-expand-lg .navbar-collapse{display:flex !important;display:-webkit-flex !important;flex-basis:auto;-webkit-flex-basis:auto}.navbar-expand-lg .navbar-toggler{display:none}.navbar-expand-lg .offcanvas-header{display:none}.navbar-expand-lg .offcanvas{position:inherit;bottom:0;z-index:1000;flex-grow:1;-webkit-flex-grow:1;visibility:visible !important;background-color:rgba(0,0,0,0);border-right:0;border-left:0;transition:none;transform:none}.navbar-expand-lg .offcanvas-top,.navbar-expand-lg .offcanvas-bottom{height:auto;border-top:0;border-bottom:0}.navbar-expand-lg .offcanvas-body{display:flex;display:-webkit-flex;flex-grow:0;-webkit-flex-grow:0;padding:0;overflow-y:visible}}@media(min-width: 1200px){.navbar-expand-xl{flex-wrap:nowrap;-webkit-flex-wrap:nowrap;justify-content:flex-start;-webkit-justify-content:flex-start}.navbar-expand-xl .navbar-nav{flex-direction:row;-webkit-flex-direction:row}.navbar-expand-xl .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-xl .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-xl .navbar-nav-scroll{overflow:visible}.navbar-expand-xl .navbar-collapse{display:flex !important;display:-webkit-flex !important;flex-basis:auto;-webkit-flex-basis:auto}.navbar-expand-xl .navbar-toggler{display:none}.navbar-expand-xl .offcanvas-header{display:none}.navbar-expand-xl .offcanvas{position:inherit;bottom:0;z-index:1000;flex-grow:1;-webkit-flex-grow:1;visibility:visible !important;background-color:rgba(0,0,0,0);border-right:0;border-left:0;transition:none;transform:none}.navbar-expand-xl .offcanvas-top,.navbar-expand-xl .offcanvas-bottom{height:auto;border-top:0;border-bottom:0}.navbar-expand-xl .offcanvas-body{display:flex;display:-webkit-flex;flex-grow:0;-webkit-flex-grow:0;padding:0;overflow-y:visible}}@media(min-width: 1400px){.navbar-expand-xxl{flex-wrap:nowrap;-webkit-flex-wrap:nowrap;justify-content:flex-start;-webkit-justify-content:flex-start}.navbar-expand-xxl .navbar-nav{flex-direction:row;-webkit-flex-direction:row}.navbar-expand-xxl .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-xxl .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-xxl .navbar-nav-scroll{overflow:visible}.navbar-expand-xxl .navbar-collapse{display:flex !important;display:-webkit-flex !important;flex-basis:auto;-webkit-flex-basis:auto}.navbar-expand-xxl .navbar-toggler{display:none}.navbar-expand-xxl .offcanvas-header{display:none}.navbar-expand-xxl .offcanvas{position:inherit;bottom:0;z-index:1000;flex-grow:1;-webkit-flex-grow:1;visibility:visible !important;background-color:rgba(0,0,0,0);border-right:0;border-left:0;transition:none;transform:none}.navbar-expand-xxl .offcanvas-top,.navbar-expand-xxl .offcanvas-bottom{height:auto;border-top:0;border-bottom:0}.navbar-expand-xxl .offcanvas-body{display:flex;display:-webkit-flex;flex-grow:0;-webkit-flex-grow:0;padding:0;overflow-y:visible}}.navbar-expand{flex-wrap:nowrap;-webkit-flex-wrap:nowrap;justify-content:flex-start;-webkit-justify-content:flex-start}.navbar-expand .navbar-nav{flex-direction:row;-webkit-flex-direction:row}.navbar-expand .navbar-nav .dropdown-menu{position:absolute}.navbar-expand .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand .navbar-nav-scroll{overflow:visible}.navbar-expand .navbar-collapse{display:flex !important;display:-webkit-flex !important;flex-basis:auto;-webkit-flex-basis:auto}.navbar-expand .navbar-toggler{display:none}.navbar-expand .offcanvas-header{display:none}.navbar-expand .offcanvas{position:inherit;bottom:0;z-index:1000;flex-grow:1;-webkit-flex-grow:1;visibility:visible !important;background-color:rgba(0,0,0,0);border-right:0;border-left:0;transition:none;transform:none}.navbar-expand .offcanvas-top,.navbar-expand .offcanvas-bottom{height:auto;border-top:0;border-bottom:0}.navbar-expand .offcanvas-body{display:flex;display:-webkit-flex;flex-grow:0;-webkit-flex-grow:0;padding:0;overflow-y:visible}.navbar-light{background-color:#0d6efd}.navbar-light .navbar-brand{color:#fdfeff}.navbar-light .navbar-brand:hover,.navbar-light .navbar-brand:focus{color:#fdfeff}.navbar-light .navbar-nav .nav-link{color:#fdfeff}.navbar-light .navbar-nav .nav-link:hover,.navbar-light .navbar-nav .nav-link:focus{color:rgba(253,254,255,.8)}.navbar-light .navbar-nav .nav-link.disabled{color:rgba(253,254,255,.75)}.navbar-light .navbar-nav .show>.nav-link,.navbar-light .navbar-nav .nav-link.active{color:#fdfeff}.navbar-light .navbar-toggler{color:#fdfeff;border-color:rgba(253,254,255,0)}.navbar-light .navbar-toggler-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='%23fdfeff' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e")}.navbar-light .navbar-text{color:#fdfeff}.navbar-light .navbar-text a,.navbar-light .navbar-text a:hover,.navbar-light .navbar-text a:focus{color:#fdfeff}.navbar-dark{background-color:#0d6efd}.navbar-dark .navbar-brand{color:#fdfeff}.navbar-dark .navbar-brand:hover,.navbar-dark .navbar-brand:focus{color:#fdfeff}.navbar-dark .navbar-nav .nav-link{color:#fdfeff}.navbar-dark .navbar-nav .nav-link:hover,.navbar-dark .navbar-nav .nav-link:focus{color:rgba(253,254,255,.8)}.navbar-dark .navbar-nav .nav-link.disabled{color:rgba(253,254,255,.75)}.navbar-dark .navbar-nav .show>.nav-link,.navbar-dark .navbar-nav .active>.nav-link,.navbar-dark .navbar-nav .nav-link.active{color:#fdfeff}.navbar-dark .navbar-toggler{color:#fdfeff;border-color:rgba(253,254,255,0)}.navbar-dark .navbar-toggler-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='%23fdfeff' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e")}.navbar-dark .navbar-text{color:#fdfeff}.navbar-dark .navbar-text a,.navbar-dark .navbar-text a:hover,.navbar-dark .navbar-text a:focus{color:#fdfeff}.card{position:relative;display:flex;display:-webkit-flex;flex-direction:column;-webkit-flex-direction:column;min-width:0;word-wrap:break-word;background-color:#fff;background-clip:border-box;border:1px solid rgba(0,0,0,.125);border-radius:.25rem}.card>hr{margin-right:0;margin-left:0}.card>.list-group{border-top:inherit;border-bottom:inherit}.card>.list-group:first-child{border-top-width:0;border-top-left-radius:calc(0.25rem - 1px);border-top-right-radius:calc(0.25rem - 1px)}.card>.list-group:last-child{border-bottom-width:0;border-bottom-right-radius:calc(0.25rem - 1px);border-bottom-left-radius:calc(0.25rem - 1px)}.card>.card-header+.list-group,.card>.list-group+.card-footer{border-top:0}.card-body{flex:1 1 auto;-webkit-flex:1 1 auto;padding:1rem 1rem}.card-title{margin-bottom:.5rem}.card-subtitle{margin-top:-0.25rem;margin-bottom:0}.card-text:last-child{margin-bottom:0}.card-link+.card-link{margin-left:1rem}.card-header{padding:.5rem 1rem;margin-bottom:0;background-color:rgba(0,0,0,.03);border-bottom:1px solid rgba(0,0,0,.125)}.card-header:first-child{border-radius:calc(0.25rem - 1px) calc(0.25rem - 1px) 0 0}.card-footer{padding:.5rem 1rem;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.125)}.card-footer:last-child{border-radius:0 0 calc(0.25rem - 1px) calc(0.25rem - 1px)}.card-header-tabs{margin-right:-0.5rem;margin-bottom:-0.5rem;margin-left:-0.5rem;border-bottom:0}.card-header-pills{margin-right:-0.5rem;margin-left:-0.5rem}.card-img-overlay{position:absolute;top:0;right:0;bottom:0;left:0;padding:1rem;border-radius:calc(0.25rem - 1px)}.card-img,.card-img-top,.card-img-bottom{width:100%}.card-img,.card-img-top{border-top-left-radius:calc(0.25rem - 1px);border-top-right-radius:calc(0.25rem - 1px)}.card-img,.card-img-bottom{border-bottom-right-radius:calc(0.25rem - 1px);border-bottom-left-radius:calc(0.25rem - 1px)}.card-group>.card{margin-bottom:.75rem}@media(min-width: 576px){.card-group{display:flex;display:-webkit-flex;flex-flow:row wrap;-webkit-flex-flow:row wrap}.card-group>.card{flex:1 0 0%;-webkit-flex:1 0 0%;margin-bottom:0}.card-group>.card+.card{margin-left:0;border-left:0}.card-group>.card:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.card-group>.card:not(:last-child) .card-img-top,.card-group>.card:not(:last-child) .card-header{border-top-right-radius:0}.card-group>.card:not(:last-child) .card-img-bottom,.card-group>.card:not(:last-child) .card-footer{border-bottom-right-radius:0}.card-group>.card:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.card-group>.card:not(:first-child) .card-img-top,.card-group>.card:not(:first-child) .card-header{border-top-left-radius:0}.card-group>.card:not(:first-child) .card-img-bottom,.card-group>.card:not(:first-child) .card-footer{border-bottom-left-radius:0}}.accordion-button{position:relative;display:flex;display:-webkit-flex;align-items:center;-webkit-align-items:center;width:100%;padding:1rem 1.25rem;font-size:1rem;color:#212529;text-align:left;background-color:#fff;border:0;border-radius:0;overflow-anchor:none;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out,border-radius .15s ease}@media(prefers-reduced-motion: reduce){.accordion-button{transition:none}}.accordion-button:not(.collapsed){color:#0c63e4;background-color:#e7f1ff;box-shadow:inset 0 -1px 0 rgba(0,0,0,.125)}.accordion-button:not(.collapsed)::after{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%230c63e4'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");transform:rotate(-180deg)}.accordion-button::after{flex-shrink:0;-webkit-flex-shrink:0;width:1.25rem;height:1.25rem;margin-left:auto;content:"";background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23212529'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");background-repeat:no-repeat;background-size:1.25rem;transition:transform .2s ease-in-out}@media(prefers-reduced-motion: reduce){.accordion-button::after{transition:none}}.accordion-button:hover{z-index:2}.accordion-button:focus{z-index:3;border-color:#86b7fe;outline:0;box-shadow:0 0 0 .25rem rgba(13,110,253,.25)}.accordion-header{margin-bottom:0}.accordion-item{background-color:#fff;border:1px solid rgba(0,0,0,.125)}.accordion-item:first-of-type{border-top-left-radius:.25rem;border-top-right-radius:.25rem}.accordion-item:first-of-type .accordion-button{border-top-left-radius:calc(0.25rem - 1px);border-top-right-radius:calc(0.25rem - 1px)}.accordion-item:not(:first-of-type){border-top:0}.accordion-item:last-of-type{border-bottom-right-radius:.25rem;border-bottom-left-radius:.25rem}.accordion-item:last-of-type .accordion-button.collapsed{border-bottom-right-radius:calc(0.25rem - 1px);border-bottom-left-radius:calc(0.25rem - 1px)}.accordion-item:last-of-type .accordion-collapse{border-bottom-right-radius:.25rem;border-bottom-left-radius:.25rem}.accordion-body{padding:1rem 1.25rem}.accordion-flush .accordion-collapse{border-width:0}.accordion-flush .accordion-item{border-right:0;border-left:0;border-radius:0}.accordion-flush .accordion-item:first-child{border-top:0}.accordion-flush .accordion-item:last-child{border-bottom:0}.accordion-flush .accordion-item .accordion-button{border-radius:0}.breadcrumb{display:flex;display:-webkit-flex;flex-wrap:wrap;-webkit-flex-wrap:wrap;padding:0 0;margin-bottom:1rem;list-style:none}.breadcrumb-item+.breadcrumb-item{padding-left:.5rem}.breadcrumb-item+.breadcrumb-item::before{float:left;padding-right:.5rem;color:#6c757d;content:var(--bs-breadcrumb-divider, ">") /* rtl: var(--bs-breadcrumb-divider, ">") */}.breadcrumb-item.active{color:#6c757d}.pagination{display:flex;display:-webkit-flex;padding-left:0;list-style:none}.page-link{position:relative;display:block;color:#0d6efd;text-decoration:none;-webkit-text-decoration:none;-moz-text-decoration:none;-ms-text-decoration:none;-o-text-decoration:none;background-color:#fff;border:1px solid #dee2e6;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media(prefers-reduced-motion: reduce){.page-link{transition:none}}.page-link:hover{z-index:2;color:#0a58ca;background-color:#e9ecef;border-color:#dee2e6}.page-link:focus{z-index:3;color:#0a58ca;background-color:#e9ecef;outline:0;box-shadow:0 0 0 .25rem rgba(13,110,253,.25)}.page-item:not(:first-child) .page-link{margin-left:-1px}.page-item.active .page-link{z-index:3;color:#fff;background-color:#0d6efd;border-color:#0d6efd}.page-item.disabled .page-link{color:#6c757d;pointer-events:none;background-color:#fff;border-color:#dee2e6}.page-link{padding:.375rem .75rem}.page-item:first-child .page-link{border-top-left-radius:.25rem;border-bottom-left-radius:.25rem}.page-item:last-child .page-link{border-top-right-radius:.25rem;border-bottom-right-radius:.25rem}.pagination-lg .page-link{padding:.75rem 1.5rem;font-size:1.25rem}.pagination-lg .page-item:first-child .page-link{border-top-left-radius:.3rem;border-bottom-left-radius:.3rem}.pagination-lg .page-item:last-child .page-link{border-top-right-radius:.3rem;border-bottom-right-radius:.3rem}.pagination-sm .page-link{padding:.25rem .5rem;font-size:0.875rem}.pagination-sm .page-item:first-child .page-link{border-top-left-radius:.2rem;border-bottom-left-radius:.2rem}.pagination-sm .page-item:last-child .page-link{border-top-right-radius:.2rem;border-bottom-right-radius:.2rem}.badge{display:inline-block;padding:.35em .65em;font-size:0.75em;font-weight:700;line-height:1;color:#fff;text-align:center;white-space:nowrap;vertical-align:baseline;border-radius:.25rem}.badge:empty{display:none}.btn .badge{position:relative;top:-1px}.alert{position:relative;padding:1rem 1rem;margin-bottom:1rem;border:1px solid rgba(0,0,0,0);border-radius:.25rem}.alert-heading{color:inherit}.alert-link{font-weight:700}.alert-dismissible{padding-right:3rem}.alert-dismissible .btn-close{position:absolute;top:0;right:0;z-index:2;padding:1.25rem 1rem}.alert-default{color:#595a5c;background-color:#f8f9fa;border-color:#f5f6f8}.alert-default .alert-link{color:#47484a}.alert-primary{color:#084298;background-color:#cfe2ff;border-color:#b6d4fe}.alert-primary .alert-link{color:#06357a}.alert-secondary{color:#41464b;background-color:#e2e3e5;border-color:#d3d6d8}.alert-secondary .alert-link{color:#34383c}.alert-success{color:#0f5132;background-color:#d1e7dd;border-color:#badbcc}.alert-success .alert-link{color:#0c4128}.alert-info{color:#055160;background-color:#cff4fc;border-color:#b6effb}.alert-info .alert-link{color:#04414d}.alert-warning{color:#664d03;background-color:#fff3cd;border-color:#ffecb5}.alert-warning .alert-link{color:#523e02}.alert-danger{color:#842029;background-color:#f8d7da;border-color:#f5c2c7}.alert-danger .alert-link{color:#6a1a21}.alert-light{color:#636464;background-color:#fefefe;border-color:#fdfdfe}.alert-light .alert-link{color:#4f5050}.alert-dark{color:#141619;background-color:#d3d3d4;border-color:#bcbebf}.alert-dark .alert-link{color:#101214}@keyframes progress-bar-stripes{0%{background-position-x:1rem}}.progress{display:flex;display:-webkit-flex;height:1rem;overflow:hidden;font-size:0.75rem;background-color:#e9ecef;border-radius:.25rem}.progress-bar{display:flex;display:-webkit-flex;flex-direction:column;-webkit-flex-direction:column;justify-content:center;-webkit-justify-content:center;overflow:hidden;color:#fff;text-align:center;white-space:nowrap;background-color:#0d6efd;transition:width .6s ease}@media(prefers-reduced-motion: reduce){.progress-bar{transition:none}}.progress-bar-striped{background-image:linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);background-size:1rem 1rem}.progress-bar-animated{animation:1s linear infinite progress-bar-stripes}@media(prefers-reduced-motion: reduce){.progress-bar-animated{animation:none}}.list-group{display:flex;display:-webkit-flex;flex-direction:column;-webkit-flex-direction:column;padding-left:0;margin-bottom:0;border-radius:.25rem}.list-group-numbered{list-style-type:none;counter-reset:section}.list-group-numbered>li::before{content:counters(section, ".") ". ";counter-increment:section}.list-group-item-action{width:100%;color:#495057;text-align:inherit}.list-group-item-action:hover,.list-group-item-action:focus{z-index:1;color:#495057;text-decoration:none;background-color:#f8f9fa}.list-group-item-action:active{color:#212529;background-color:#e9ecef}.list-group-item{position:relative;display:block;padding:.5rem 1rem;color:#212529;text-decoration:none;-webkit-text-decoration:none;-moz-text-decoration:none;-ms-text-decoration:none;-o-text-decoration:none;background-color:#fff;border:1px solid rgba(0,0,0,.125)}.list-group-item:first-child{border-top-left-radius:inherit;border-top-right-radius:inherit}.list-group-item:last-child{border-bottom-right-radius:inherit;border-bottom-left-radius:inherit}.list-group-item.disabled,.list-group-item:disabled{color:#6c757d;pointer-events:none;background-color:#fff}.list-group-item.active{z-index:2;color:#fff;background-color:#0d6efd;border-color:#0d6efd}.list-group-item+.list-group-item{border-top-width:0}.list-group-item+.list-group-item.active{margin-top:-1px;border-top-width:1px}.list-group-horizontal{flex-direction:row;-webkit-flex-direction:row}.list-group-horizontal>.list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal>.list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal>.list-group-item.active{margin-top:0}.list-group-horizontal>.list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal>.list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}@media(min-width: 576px){.list-group-horizontal-sm{flex-direction:row;-webkit-flex-direction:row}.list-group-horizontal-sm>.list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-sm>.list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal-sm>.list-group-item.active{margin-top:0}.list-group-horizontal-sm>.list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-sm>.list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}@media(min-width: 768px){.list-group-horizontal-md{flex-direction:row;-webkit-flex-direction:row}.list-group-horizontal-md>.list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-md>.list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal-md>.list-group-item.active{margin-top:0}.list-group-horizontal-md>.list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-md>.list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}@media(min-width: 992px){.list-group-horizontal-lg{flex-direction:row;-webkit-flex-direction:row}.list-group-horizontal-lg>.list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-lg>.list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal-lg>.list-group-item.active{margin-top:0}.list-group-horizontal-lg>.list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-lg>.list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}@media(min-width: 1200px){.list-group-horizontal-xl{flex-direction:row;-webkit-flex-direction:row}.list-group-horizontal-xl>.list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-xl>.list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal-xl>.list-group-item.active{margin-top:0}.list-group-horizontal-xl>.list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-xl>.list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}@media(min-width: 1400px){.list-group-horizontal-xxl{flex-direction:row;-webkit-flex-direction:row}.list-group-horizontal-xxl>.list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-xxl>.list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal-xxl>.list-group-item.active{margin-top:0}.list-group-horizontal-xxl>.list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-xxl>.list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}.list-group-flush{border-radius:0}.list-group-flush>.list-group-item{border-width:0 0 1px}.list-group-flush>.list-group-item:last-child{border-bottom-width:0}.list-group-item-default{color:#595a5c;background-color:#f8f9fa}.list-group-item-default.list-group-item-action:hover,.list-group-item-default.list-group-item-action:focus{color:#595a5c;background-color:#dfe0e1}.list-group-item-default.list-group-item-action.active{color:#fff;background-color:#595a5c;border-color:#595a5c}.list-group-item-primary{color:#084298;background-color:#cfe2ff}.list-group-item-primary.list-group-item-action:hover,.list-group-item-primary.list-group-item-action:focus{color:#084298;background-color:#bacbe6}.list-group-item-primary.list-group-item-action.active{color:#fff;background-color:#084298;border-color:#084298}.list-group-item-secondary{color:#41464b;background-color:#e2e3e5}.list-group-item-secondary.list-group-item-action:hover,.list-group-item-secondary.list-group-item-action:focus{color:#41464b;background-color:#cbccce}.list-group-item-secondary.list-group-item-action.active{color:#fff;background-color:#41464b;border-color:#41464b}.list-group-item-success{color:#0f5132;background-color:#d1e7dd}.list-group-item-success.list-group-item-action:hover,.list-group-item-success.list-group-item-action:focus{color:#0f5132;background-color:#bcd0c7}.list-group-item-success.list-group-item-action.active{color:#fff;background-color:#0f5132;border-color:#0f5132}.list-group-item-info{color:#055160;background-color:#cff4fc}.list-group-item-info.list-group-item-action:hover,.list-group-item-info.list-group-item-action:focus{color:#055160;background-color:#badce3}.list-group-item-info.list-group-item-action.active{color:#fff;background-color:#055160;border-color:#055160}.list-group-item-warning{color:#664d03;background-color:#fff3cd}.list-group-item-warning.list-group-item-action:hover,.list-group-item-warning.list-group-item-action:focus{color:#664d03;background-color:#e6dbb9}.list-group-item-warning.list-group-item-action.active{color:#fff;background-color:#664d03;border-color:#664d03}.list-group-item-danger{color:#842029;background-color:#f8d7da}.list-group-item-danger.list-group-item-action:hover,.list-group-item-danger.list-group-item-action:focus{color:#842029;background-color:#dfc2c4}.list-group-item-danger.list-group-item-action.active{color:#fff;background-color:#842029;border-color:#842029}.list-group-item-light{color:#636464;background-color:#fefefe}.list-group-item-light.list-group-item-action:hover,.list-group-item-light.list-group-item-action:focus{color:#636464;background-color:#e5e5e5}.list-group-item-light.list-group-item-action.active{color:#fff;background-color:#636464;border-color:#636464}.list-group-item-dark{color:#141619;background-color:#d3d3d4}.list-group-item-dark.list-group-item-action:hover,.list-group-item-dark.list-group-item-action:focus{color:#141619;background-color:#bebebf}.list-group-item-dark.list-group-item-action.active{color:#fff;background-color:#141619;border-color:#141619}.btn-close{box-sizing:content-box;width:1em;height:1em;padding:.25em .25em;color:#000;background:rgba(0,0,0,0) url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23000'%3e%3cpath d='M.293.293a1 1 0 011.414 0L8 6.586 14.293.293a1 1 0 111.414 1.414L9.414 8l6.293 6.293a1 1 0 01-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 01-1.414-1.414L6.586 8 .293 1.707a1 1 0 010-1.414z'/%3e%3c/svg%3e") center/1em auto no-repeat;border:0;border-radius:.25rem;opacity:.5}.btn-close:hover{color:#000;text-decoration:none;opacity:.75}.btn-close:focus{outline:0;box-shadow:0 0 0 .25rem rgba(13,110,253,.25);opacity:1}.btn-close:disabled,.btn-close.disabled{pointer-events:none;user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;-o-user-select:none;opacity:.25}.btn-close-white{filter:invert(1) grayscale(100%) brightness(200%)}.toast{width:350px;max-width:100%;font-size:0.875rem;pointer-events:auto;background-color:rgba(255,255,255,.85);background-clip:padding-box;border:1px solid rgba(0,0,0,.1);box-shadow:0 .5rem 1rem rgba(0,0,0,.15);border-radius:.25rem}.toast.showing{opacity:0}.toast:not(.show){display:none}.toast-container{width:max-content;width:-webkit-max-content;width:-moz-max-content;width:-ms-max-content;width:-o-max-content;max-width:100%;pointer-events:none}.toast-container>:not(:last-child){margin-bottom:.75rem}.toast-header{display:flex;display:-webkit-flex;align-items:center;-webkit-align-items:center;padding:.5rem .75rem;color:#6c757d;background-color:rgba(255,255,255,.85);background-clip:padding-box;border-bottom:1px solid rgba(0,0,0,.05);border-top-left-radius:calc(0.25rem - 1px);border-top-right-radius:calc(0.25rem - 1px)}.toast-header .btn-close{margin-right:-0.375rem;margin-left:.75rem}.toast-body{padding:.75rem;word-wrap:break-word}.modal{position:fixed;top:0;left:0;z-index:1055;display:none;width:100%;height:100%;overflow-x:hidden;overflow-y:auto;outline:0}.modal-dialog{position:relative;width:auto;margin:.5rem;pointer-events:none}.modal.fade .modal-dialog{transition:transform .3s ease-out;transform:translate(0, -50px)}@media(prefers-reduced-motion: reduce){.modal.fade .modal-dialog{transition:none}}.modal.show .modal-dialog{transform:none}.modal.modal-static .modal-dialog{transform:scale(1.02)}.modal-dialog-scrollable{height:calc(100% - 1rem)}.modal-dialog-scrollable .modal-content{max-height:100%;overflow:hidden}.modal-dialog-scrollable .modal-body{overflow-y:auto}.modal-dialog-centered{display:flex;display:-webkit-flex;align-items:center;-webkit-align-items:center;min-height:calc(100% - 1rem)}.modal-content{position:relative;display:flex;display:-webkit-flex;flex-direction:column;-webkit-flex-direction:column;width:100%;pointer-events:auto;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.2);border-radius:.3rem;outline:0}.modal-backdrop{position:fixed;top:0;left:0;z-index:1050;width:100vw;height:100vh;background-color:#000}.modal-backdrop.fade{opacity:0}.modal-backdrop.show{opacity:.5}.modal-header{display:flex;display:-webkit-flex;flex-shrink:0;-webkit-flex-shrink:0;align-items:center;-webkit-align-items:center;justify-content:space-between;-webkit-justify-content:space-between;padding:1rem 1rem;border-bottom:1px solid #dee2e6;border-top-left-radius:calc(0.3rem - 1px);border-top-right-radius:calc(0.3rem - 1px)}.modal-header .btn-close{padding:.5rem .5rem;margin:-0.5rem -0.5rem -0.5rem auto}.modal-title{margin-bottom:0;line-height:1.5}.modal-body{position:relative;flex:1 1 auto;-webkit-flex:1 1 auto;padding:1rem}.modal-footer{display:flex;display:-webkit-flex;flex-wrap:wrap;-webkit-flex-wrap:wrap;flex-shrink:0;-webkit-flex-shrink:0;align-items:center;-webkit-align-items:center;justify-content:flex-end;-webkit-justify-content:flex-end;padding:.75rem;border-top:1px solid #dee2e6;border-bottom-right-radius:calc(0.3rem - 1px);border-bottom-left-radius:calc(0.3rem - 1px)}.modal-footer>*{margin:.25rem}@media(min-width: 576px){.modal-dialog{max-width:500px;margin:1.75rem auto}.modal-dialog-scrollable{height:calc(100% - 3.5rem)}.modal-dialog-centered{min-height:calc(100% - 3.5rem)}.modal-sm{max-width:300px}}@media(min-width: 992px){.modal-lg,.modal-xl{max-width:800px}}@media(min-width: 1200px){.modal-xl{max-width:1140px}}.modal-fullscreen{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen .modal-header{border-radius:0}.modal-fullscreen .modal-body{overflow-y:auto}.modal-fullscreen .modal-footer{border-radius:0}@media(max-width: 575.98px){.modal-fullscreen-sm-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-sm-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-sm-down .modal-header{border-radius:0}.modal-fullscreen-sm-down .modal-body{overflow-y:auto}.modal-fullscreen-sm-down .modal-footer{border-radius:0}}@media(max-width: 767.98px){.modal-fullscreen-md-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-md-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-md-down .modal-header{border-radius:0}.modal-fullscreen-md-down .modal-body{overflow-y:auto}.modal-fullscreen-md-down .modal-footer{border-radius:0}}@media(max-width: 991.98px){.modal-fullscreen-lg-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-lg-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-lg-down .modal-header{border-radius:0}.modal-fullscreen-lg-down .modal-body{overflow-y:auto}.modal-fullscreen-lg-down .modal-footer{border-radius:0}}@media(max-width: 1199.98px){.modal-fullscreen-xl-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-xl-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-xl-down .modal-header{border-radius:0}.modal-fullscreen-xl-down .modal-body{overflow-y:auto}.modal-fullscreen-xl-down .modal-footer{border-radius:0}}@media(max-width: 1399.98px){.modal-fullscreen-xxl-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-xxl-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-xxl-down .modal-header{border-radius:0}.modal-fullscreen-xxl-down .modal-body{overflow-y:auto}.modal-fullscreen-xxl-down .modal-footer{border-radius:0}}.tooltip{position:absolute;z-index:1080;display:block;margin:0;font-family:var(--bs-font-sans-serif);font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;white-space:normal;line-break:auto;font-size:0.875rem;word-wrap:break-word;opacity:0}.tooltip.show{opacity:.9}.tooltip .tooltip-arrow{position:absolute;display:block;width:.8rem;height:.4rem}.tooltip .tooltip-arrow::before{position:absolute;content:"";border-color:rgba(0,0,0,0);border-style:solid}.bs-tooltip-top,.bs-tooltip-auto[data-popper-placement^=top]{padding:.4rem 0}.bs-tooltip-top .tooltip-arrow,.bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow{bottom:0}.bs-tooltip-top .tooltip-arrow::before,.bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow::before{top:-1px;border-width:.4rem .4rem 0;border-top-color:#000}.bs-tooltip-end,.bs-tooltip-auto[data-popper-placement^=right]{padding:0 .4rem}.bs-tooltip-end .tooltip-arrow,.bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow{left:0;width:.4rem;height:.8rem}.bs-tooltip-end .tooltip-arrow::before,.bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow::before{right:-1px;border-width:.4rem .4rem .4rem 0;border-right-color:#000}.bs-tooltip-bottom,.bs-tooltip-auto[data-popper-placement^=bottom]{padding:.4rem 0}.bs-tooltip-bottom .tooltip-arrow,.bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow{top:0}.bs-tooltip-bottom .tooltip-arrow::before,.bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow::before{bottom:-1px;border-width:0 .4rem .4rem;border-bottom-color:#000}.bs-tooltip-start,.bs-tooltip-auto[data-popper-placement^=left]{padding:0 .4rem}.bs-tooltip-start .tooltip-arrow,.bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow{right:0;width:.4rem;height:.8rem}.bs-tooltip-start .tooltip-arrow::before,.bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow::before{left:-1px;border-width:.4rem 0 .4rem .4rem;border-left-color:#000}.tooltip-inner{max-width:200px;padding:.25rem .5rem;color:#fff;text-align:center;background-color:#000;border-radius:.25rem}.popover{position:absolute;top:0;left:0 /* rtl:ignore */;z-index:1070;display:block;max-width:276px;font-family:var(--bs-font-sans-serif);font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;white-space:normal;line-break:auto;font-size:0.875rem;word-wrap:break-word;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.2);border-radius:.3rem}.popover .popover-arrow{position:absolute;display:block;width:1rem;height:.5rem}.popover .popover-arrow::before,.popover .popover-arrow::after{position:absolute;display:block;content:"";border-color:rgba(0,0,0,0);border-style:solid}.bs-popover-top>.popover-arrow,.bs-popover-auto[data-popper-placement^=top]>.popover-arrow{bottom:calc(-0.5rem - 1px)}.bs-popover-top>.popover-arrow::before,.bs-popover-auto[data-popper-placement^=top]>.popover-arrow::before{bottom:0;border-width:.5rem .5rem 0;border-top-color:rgba(0,0,0,.25)}.bs-popover-top>.popover-arrow::after,.bs-popover-auto[data-popper-placement^=top]>.popover-arrow::after{bottom:1px;border-width:.5rem .5rem 0;border-top-color:#fff}.bs-popover-end>.popover-arrow,.bs-popover-auto[data-popper-placement^=right]>.popover-arrow{left:calc(-0.5rem - 1px);width:.5rem;height:1rem}.bs-popover-end>.popover-arrow::before,.bs-popover-auto[data-popper-placement^=right]>.popover-arrow::before{left:0;border-width:.5rem .5rem .5rem 0;border-right-color:rgba(0,0,0,.25)}.bs-popover-end>.popover-arrow::after,.bs-popover-auto[data-popper-placement^=right]>.popover-arrow::after{left:1px;border-width:.5rem .5rem .5rem 0;border-right-color:#fff}.bs-popover-bottom>.popover-arrow,.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow{top:calc(-0.5rem - 1px)}.bs-popover-bottom>.popover-arrow::before,.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow::before{top:0;border-width:0 .5rem .5rem .5rem;border-bottom-color:rgba(0,0,0,.25)}.bs-popover-bottom>.popover-arrow::after,.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow::after{top:1px;border-width:0 .5rem .5rem .5rem;border-bottom-color:#fff}.bs-popover-bottom .popover-header::before,.bs-popover-auto[data-popper-placement^=bottom] .popover-header::before{position:absolute;top:0;left:50%;display:block;width:1rem;margin-left:-0.5rem;content:"";border-bottom:1px solid #f0f0f0}.bs-popover-start>.popover-arrow,.bs-popover-auto[data-popper-placement^=left]>.popover-arrow{right:calc(-0.5rem - 1px);width:.5rem;height:1rem}.bs-popover-start>.popover-arrow::before,.bs-popover-auto[data-popper-placement^=left]>.popover-arrow::before{right:0;border-width:.5rem 0 .5rem .5rem;border-left-color:rgba(0,0,0,.25)}.bs-popover-start>.popover-arrow::after,.bs-popover-auto[data-popper-placement^=left]>.popover-arrow::after{right:1px;border-width:.5rem 0 .5rem .5rem;border-left-color:#fff}.popover-header{padding:.5rem 1rem;margin-bottom:0;font-size:1rem;background-color:#f0f0f0;border-bottom:1px solid rgba(0,0,0,.2);border-top-left-radius:calc(0.3rem - 1px);border-top-right-radius:calc(0.3rem - 1px)}.popover-header:empty{display:none}.popover-body{padding:1rem 1rem;color:#212529}.carousel{position:relative}.carousel.pointer-event{touch-action:pan-y;-webkit-touch-action:pan-y;-moz-touch-action:pan-y;-ms-touch-action:pan-y;-o-touch-action:pan-y}.carousel-inner{position:relative;width:100%;overflow:hidden}.carousel-inner::after{display:block;clear:both;content:""}.carousel-item{position:relative;display:none;float:left;width:100%;margin-right:-100%;backface-visibility:hidden;-webkit-backface-visibility:hidden;-moz-backface-visibility:hidden;-ms-backface-visibility:hidden;-o-backface-visibility:hidden;transition:transform .6s ease-in-out}@media(prefers-reduced-motion: reduce){.carousel-item{transition:none}}.carousel-item.active,.carousel-item-next,.carousel-item-prev{display:block}.carousel-item-next:not(.carousel-item-start),.active.carousel-item-end{transform:translateX(100%)}.carousel-item-prev:not(.carousel-item-end),.active.carousel-item-start{transform:translateX(-100%)}.carousel-fade .carousel-item{opacity:0;transition-property:opacity;transform:none}.carousel-fade .carousel-item.active,.carousel-fade .carousel-item-next.carousel-item-start,.carousel-fade .carousel-item-prev.carousel-item-end{z-index:1;opacity:1}.carousel-fade .active.carousel-item-start,.carousel-fade .active.carousel-item-end{z-index:0;opacity:0;transition:opacity 0s .6s}@media(prefers-reduced-motion: reduce){.carousel-fade .active.carousel-item-start,.carousel-fade .active.carousel-item-end{transition:none}}.carousel-control-prev,.carousel-control-next{position:absolute;top:0;bottom:0;z-index:1;display:flex;display:-webkit-flex;align-items:center;-webkit-align-items:center;justify-content:center;-webkit-justify-content:center;width:15%;padding:0;color:#fff;text-align:center;background:none;border:0;opacity:.5;transition:opacity .15s ease}@media(prefers-reduced-motion: reduce){.carousel-control-prev,.carousel-control-next{transition:none}}.carousel-control-prev:hover,.carousel-control-prev:focus,.carousel-control-next:hover,.carousel-control-next:focus{color:#fff;text-decoration:none;outline:0;opacity:.9}.carousel-control-prev{left:0}.carousel-control-next{right:0}.carousel-control-prev-icon,.carousel-control-next-icon{display:inline-block;width:2rem;height:2rem;background-repeat:no-repeat;background-position:50%;background-size:100% 100%}.carousel-control-prev-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23ffffff'%3e%3cpath d='M11.354 1.646a.5.5 0 0 1 0 .708L5.707 8l5.647 5.646a.5.5 0 0 1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0z'/%3e%3c/svg%3e")}.carousel-control-next-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23ffffff'%3e%3cpath d='M4.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L10.293 8 4.646 2.354a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e")}.carousel-indicators{position:absolute;right:0;bottom:0;left:0;z-index:2;display:flex;display:-webkit-flex;justify-content:center;-webkit-justify-content:center;padding:0;margin-right:15%;margin-bottom:1rem;margin-left:15%;list-style:none}.carousel-indicators [data-bs-target]{box-sizing:content-box;flex:0 1 auto;-webkit-flex:0 1 auto;width:30px;height:3px;padding:0;margin-right:3px;margin-left:3px;text-indent:-999px;cursor:pointer;background-color:#fff;background-clip:padding-box;border:0;border-top:10px solid rgba(0,0,0,0);border-bottom:10px solid rgba(0,0,0,0);opacity:.5;transition:opacity .6s ease}@media(prefers-reduced-motion: reduce){.carousel-indicators [data-bs-target]{transition:none}}.carousel-indicators .active{opacity:1}.carousel-caption{position:absolute;right:15%;bottom:1.25rem;left:15%;padding-top:1.25rem;padding-bottom:1.25rem;color:#fff;text-align:center}.carousel-dark .carousel-control-prev-icon,.carousel-dark .carousel-control-next-icon{filter:invert(1) grayscale(100)}.carousel-dark .carousel-indicators [data-bs-target]{background-color:#000}.carousel-dark .carousel-caption{color:#000}@keyframes spinner-border{to{transform:rotate(360deg) /* rtl:ignore */}}.spinner-border{display:inline-block;width:2rem;height:2rem;vertical-align:-0.125em;border:.25em solid currentColor;border-right-color:rgba(0,0,0,0);border-radius:50%;animation:.75s linear infinite spinner-border}.spinner-border-sm{width:1rem;height:1rem;border-width:.2em}@keyframes spinner-grow{0%{transform:scale(0)}50%{opacity:1;transform:none}}.spinner-grow{display:inline-block;width:2rem;height:2rem;vertical-align:-0.125em;background-color:currentColor;border-radius:50%;opacity:0;animation:.75s linear infinite spinner-grow}.spinner-grow-sm{width:1rem;height:1rem}@media(prefers-reduced-motion: reduce){.spinner-border,.spinner-grow{animation-duration:1.5s;-webkit-animation-duration:1.5s;-moz-animation-duration:1.5s;-ms-animation-duration:1.5s;-o-animation-duration:1.5s}}.offcanvas{position:fixed;bottom:0;z-index:1045;display:flex;display:-webkit-flex;flex-direction:column;-webkit-flex-direction:column;max-width:100%;visibility:hidden;background-color:#fff;background-clip:padding-box;outline:0;transition:transform .3s ease-in-out}@media(prefers-reduced-motion: reduce){.offcanvas{transition:none}}.offcanvas-backdrop{position:fixed;top:0;left:0;z-index:1040;width:100vw;height:100vh;background-color:#000}.offcanvas-backdrop.fade{opacity:0}.offcanvas-backdrop.show{opacity:.5}.offcanvas-header{display:flex;display:-webkit-flex;align-items:center;-webkit-align-items:center;justify-content:space-between;-webkit-justify-content:space-between;padding:1rem 1rem}.offcanvas-header .btn-close{padding:.5rem .5rem;margin-top:-0.5rem;margin-right:-0.5rem;margin-bottom:-0.5rem}.offcanvas-title{margin-bottom:0;line-height:1.5}.offcanvas-body{flex-grow:1;-webkit-flex-grow:1;padding:1rem 1rem;overflow-y:auto}.offcanvas-start{top:0;left:0;width:400px;border-right:1px solid rgba(0,0,0,.2);transform:translateX(-100%)}.offcanvas-end{top:0;right:0;width:400px;border-left:1px solid rgba(0,0,0,.2);transform:translateX(100%)}.offcanvas-top{top:0;right:0;left:0;height:30vh;max-height:100%;border-bottom:1px solid rgba(0,0,0,.2);transform:translateY(-100%)}.offcanvas-bottom{right:0;left:0;height:30vh;max-height:100%;border-top:1px solid rgba(0,0,0,.2);transform:translateY(100%)}.offcanvas.show{transform:none}.placeholder{display:inline-block;min-height:1em;vertical-align:middle;cursor:wait;background-color:currentColor;opacity:.5}.placeholder.btn::before{display:inline-block;content:""}.placeholder-xs{min-height:.6em}.placeholder-sm{min-height:.8em}.placeholder-lg{min-height:1.2em}.placeholder-glow .placeholder{animation:placeholder-glow 2s ease-in-out infinite}@keyframes placeholder-glow{50%{opacity:.2}}.placeholder-wave{mask-image:linear-gradient(130deg, #000 55%, rgba(0, 0, 0, 0.8) 75%, #000 95%);-webkit-mask-image:linear-gradient(130deg, #000 55%, rgba(0, 0, 0, 0.8) 75%, #000 95%);mask-size:200% 100%;-webkit-mask-size:200% 100%;animation:placeholder-wave 2s linear infinite}@keyframes placeholder-wave{100%{mask-position:-200% 0%;-webkit-mask-position:-200% 0%}}.clearfix::after{display:block;clear:both;content:""}.link-default{color:#dee2e6}.link-default:hover,.link-default:focus{color:#e5e8eb}.link-primary{color:#0d6efd}.link-primary:hover,.link-primary:focus{color:#0a58ca}.link-secondary{color:#6c757d}.link-secondary:hover,.link-secondary:focus{color:#565e64}.link-success{color:#198754}.link-success:hover,.link-success:focus{color:#146c43}.link-info{color:#0dcaf0}.link-info:hover,.link-info:focus{color:#3dd5f3}.link-warning{color:#ffc107}.link-warning:hover,.link-warning:focus{color:#ffcd39}.link-danger{color:#dc3545}.link-danger:hover,.link-danger:focus{color:#b02a37}.link-light{color:#f8f9fa}.link-light:hover,.link-light:focus{color:#f9fafb}.link-dark{color:#212529}.link-dark:hover,.link-dark:focus{color:#1a1e21}.ratio{position:relative;width:100%}.ratio::before{display:block;padding-top:var(--bs-aspect-ratio);content:""}.ratio>*{position:absolute;top:0;left:0;width:100%;height:100%}.ratio-1x1{--bs-aspect-ratio: 100%}.ratio-4x3{--bs-aspect-ratio: 75%}.ratio-16x9{--bs-aspect-ratio: 56.25%}.ratio-21x9{--bs-aspect-ratio: 42.8571428571%}.fixed-top{position:fixed;top:0;right:0;left:0;z-index:1030}.fixed-bottom{position:fixed;right:0;bottom:0;left:0;z-index:1030}.sticky-top{position:sticky;top:0;z-index:1020}@media(min-width: 576px){.sticky-sm-top{position:sticky;top:0;z-index:1020}}@media(min-width: 768px){.sticky-md-top{position:sticky;top:0;z-index:1020}}@media(min-width: 992px){.sticky-lg-top{position:sticky;top:0;z-index:1020}}@media(min-width: 1200px){.sticky-xl-top{position:sticky;top:0;z-index:1020}}@media(min-width: 1400px){.sticky-xxl-top{position:sticky;top:0;z-index:1020}}.hstack{display:flex;display:-webkit-flex;flex-direction:row;-webkit-flex-direction:row;align-items:center;-webkit-align-items:center;align-self:stretch;-webkit-align-self:stretch}.vstack{display:flex;display:-webkit-flex;flex:1 1 auto;-webkit-flex:1 1 auto;flex-direction:column;-webkit-flex-direction:column;align-self:stretch;-webkit-align-self:stretch}.visually-hidden,.visually-hidden-focusable:not(:focus):not(:focus-within){position:absolute !important;width:1px !important;height:1px !important;padding:0 !important;margin:-1px !important;overflow:hidden !important;clip:rect(0, 0, 0, 0) !important;white-space:nowrap !important;border:0 !important}.stretched-link::after{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;content:""}.text-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vr{display:inline-block;align-self:stretch;-webkit-align-self:stretch;width:1px;min-height:1em;background-color:currentColor;opacity:.25}.align-baseline{vertical-align:baseline !important}.align-top{vertical-align:top !important}.align-middle{vertical-align:middle !important}.align-bottom{vertical-align:bottom !important}.align-text-bottom{vertical-align:text-bottom !important}.align-text-top{vertical-align:text-top !important}.float-start{float:left !important}.float-end{float:right !important}.float-none{float:none !important}.opacity-0{opacity:0 !important}.opacity-25{opacity:.25 !important}.opacity-50{opacity:.5 !important}.opacity-75{opacity:.75 !important}.opacity-100{opacity:1 !important}.overflow-auto{overflow:auto !important}.overflow-hidden{overflow:hidden !important}.overflow-visible{overflow:visible !important}.overflow-scroll{overflow:scroll !important}.d-inline{display:inline !important}.d-inline-block{display:inline-block !important}.d-block{display:block !important}.d-grid{display:grid !important}.d-table{display:table !important}.d-table-row{display:table-row !important}.d-table-cell{display:table-cell !important}.d-flex{display:flex !important}.d-inline-flex{display:inline-flex !important}.d-none{display:none !important}.shadow{box-shadow:0 .5rem 1rem rgba(0,0,0,.15) !important}.shadow-sm{box-shadow:0 .125rem .25rem rgba(0,0,0,.075) !important}.shadow-lg{box-shadow:0 1rem 3rem rgba(0,0,0,.175) !important}.shadow-none{box-shadow:none !important}.position-static{position:static !important}.position-relative{position:relative !important}.position-absolute{position:absolute !important}.position-fixed{position:fixed !important}.position-sticky{position:sticky !important}.top-0{top:0 !important}.top-50{top:50% !important}.top-100{top:100% !important}.bottom-0{bottom:0 !important}.bottom-50{bottom:50% !important}.bottom-100{bottom:100% !important}.start-0{left:0 !important}.start-50{left:50% !important}.start-100{left:100% !important}.end-0{right:0 !important}.end-50{right:50% !important}.end-100{right:100% !important}.translate-middle{transform:translate(-50%, -50%) !important}.translate-middle-x{transform:translateX(-50%) !important}.translate-middle-y{transform:translateY(-50%) !important}.border{border:1px solid #dee2e6 !important}.border-0{border:0 !important}.border-top{border-top:1px solid #dee2e6 !important}.border-top-0{border-top:0 !important}.border-end{border-right:1px solid #dee2e6 !important}.border-end-0{border-right:0 !important}.border-bottom{border-bottom:1px solid #dee2e6 !important}.border-bottom-0{border-bottom:0 !important}.border-start{border-left:1px solid #dee2e6 !important}.border-start-0{border-left:0 !important}.border-default{border-color:#dee2e6 !important}.border-primary{border-color:#0d6efd !important}.border-secondary{border-color:#6c757d !important}.border-success{border-color:#198754 !important}.border-info{border-color:#0dcaf0 !important}.border-warning{border-color:#ffc107 !important}.border-danger{border-color:#dc3545 !important}.border-light{border-color:#f8f9fa !important}.border-dark{border-color:#212529 !important}.border-white{border-color:#fff !important}.border-1{border-width:1px !important}.border-2{border-width:2px !important}.border-3{border-width:3px !important}.border-4{border-width:4px !important}.border-5{border-width:5px !important}.w-25{width:25% !important}.w-50{width:50% !important}.w-75{width:75% !important}.w-100{width:100% !important}.w-auto{width:auto !important}.mw-100{max-width:100% !important}.vw-100{width:100vw !important}.min-vw-100{min-width:100vw !important}.h-25{height:25% !important}.h-50{height:50% !important}.h-75{height:75% !important}.h-100{height:100% !important}.h-auto{height:auto !important}.mh-100{max-height:100% !important}.vh-100{height:100vh !important}.min-vh-100{min-height:100vh !important}.flex-fill{flex:1 1 auto !important}.flex-row{flex-direction:row !important}.flex-column{flex-direction:column !important}.flex-row-reverse{flex-direction:row-reverse !important}.flex-column-reverse{flex-direction:column-reverse !important}.flex-grow-0{flex-grow:0 !important}.flex-grow-1{flex-grow:1 !important}.flex-shrink-0{flex-shrink:0 !important}.flex-shrink-1{flex-shrink:1 !important}.flex-wrap{flex-wrap:wrap !important}.flex-nowrap{flex-wrap:nowrap !important}.flex-wrap-reverse{flex-wrap:wrap-reverse !important}.gap-0{gap:0 !important}.gap-1{gap:.25rem !important}.gap-2{gap:.5rem !important}.gap-3{gap:1rem !important}.gap-4{gap:1.5rem !important}.gap-5{gap:3rem !important}.justify-content-start{justify-content:flex-start !important}.justify-content-end{justify-content:flex-end !important}.justify-content-center{justify-content:center !important}.justify-content-between{justify-content:space-between !important}.justify-content-around{justify-content:space-around !important}.justify-content-evenly{justify-content:space-evenly !important}.align-items-start{align-items:flex-start !important}.align-items-end{align-items:flex-end !important}.align-items-center{align-items:center !important}.align-items-baseline{align-items:baseline !important}.align-items-stretch{align-items:stretch !important}.align-content-start{align-content:flex-start !important}.align-content-end{align-content:flex-end !important}.align-content-center{align-content:center !important}.align-content-between{align-content:space-between !important}.align-content-around{align-content:space-around !important}.align-content-stretch{align-content:stretch !important}.align-self-auto{align-self:auto !important}.align-self-start{align-self:flex-start !important}.align-self-end{align-self:flex-end !important}.align-self-center{align-self:center !important}.align-self-baseline{align-self:baseline !important}.align-self-stretch{align-self:stretch !important}.order-first{order:-1 !important}.order-0{order:0 !important}.order-1{order:1 !important}.order-2{order:2 !important}.order-3{order:3 !important}.order-4{order:4 !important}.order-5{order:5 !important}.order-last{order:6 !important}.m-0{margin:0 !important}.m-1{margin:.25rem !important}.m-2{margin:.5rem !important}.m-3{margin:1rem !important}.m-4{margin:1.5rem !important}.m-5{margin:3rem !important}.m-auto{margin:auto !important}.mx-0{margin-right:0 !important;margin-left:0 !important}.mx-1{margin-right:.25rem !important;margin-left:.25rem !important}.mx-2{margin-right:.5rem !important;margin-left:.5rem !important}.mx-3{margin-right:1rem !important;margin-left:1rem !important}.mx-4{margin-right:1.5rem !important;margin-left:1.5rem !important}.mx-5{margin-right:3rem !important;margin-left:3rem !important}.mx-auto{margin-right:auto !important;margin-left:auto !important}.my-0{margin-top:0 !important;margin-bottom:0 !important}.my-1{margin-top:.25rem !important;margin-bottom:.25rem !important}.my-2{margin-top:.5rem !important;margin-bottom:.5rem !important}.my-3{margin-top:1rem !important;margin-bottom:1rem !important}.my-4{margin-top:1.5rem !important;margin-bottom:1.5rem !important}.my-5{margin-top:3rem !important;margin-bottom:3rem !important}.my-auto{margin-top:auto !important;margin-bottom:auto !important}.mt-0{margin-top:0 !important}.mt-1{margin-top:.25rem !important}.mt-2{margin-top:.5rem !important}.mt-3{margin-top:1rem !important}.mt-4{margin-top:1.5rem !important}.mt-5{margin-top:3rem !important}.mt-auto{margin-top:auto !important}.me-0{margin-right:0 !important}.me-1{margin-right:.25rem !important}.me-2{margin-right:.5rem !important}.me-3{margin-right:1rem !important}.me-4{margin-right:1.5rem !important}.me-5{margin-right:3rem !important}.me-auto{margin-right:auto !important}.mb-0{margin-bottom:0 !important}.mb-1{margin-bottom:.25rem !important}.mb-2{margin-bottom:.5rem !important}.mb-3{margin-bottom:1rem !important}.mb-4{margin-bottom:1.5rem !important}.mb-5{margin-bottom:3rem !important}.mb-auto{margin-bottom:auto !important}.ms-0{margin-left:0 !important}.ms-1{margin-left:.25rem !important}.ms-2{margin-left:.5rem !important}.ms-3{margin-left:1rem !important}.ms-4{margin-left:1.5rem !important}.ms-5{margin-left:3rem !important}.ms-auto{margin-left:auto !important}.p-0{padding:0 !important}.p-1{padding:.25rem !important}.p-2{padding:.5rem !important}.p-3{padding:1rem !important}.p-4{padding:1.5rem !important}.p-5{padding:3rem !important}.px-0{padding-right:0 !important;padding-left:0 !important}.px-1{padding-right:.25rem !important;padding-left:.25rem !important}.px-2{padding-right:.5rem !important;padding-left:.5rem !important}.px-3{padding-right:1rem !important;padding-left:1rem !important}.px-4{padding-right:1.5rem !important;padding-left:1.5rem !important}.px-5{padding-right:3rem !important;padding-left:3rem !important}.py-0{padding-top:0 !important;padding-bottom:0 !important}.py-1{padding-top:.25rem !important;padding-bottom:.25rem !important}.py-2{padding-top:.5rem !important;padding-bottom:.5rem !important}.py-3{padding-top:1rem !important;padding-bottom:1rem !important}.py-4{padding-top:1.5rem !important;padding-bottom:1.5rem !important}.py-5{padding-top:3rem !important;padding-bottom:3rem !important}.pt-0{padding-top:0 !important}.pt-1{padding-top:.25rem !important}.pt-2{padding-top:.5rem !important}.pt-3{padding-top:1rem !important}.pt-4{padding-top:1.5rem !important}.pt-5{padding-top:3rem !important}.pe-0{padding-right:0 !important}.pe-1{padding-right:.25rem !important}.pe-2{padding-right:.5rem !important}.pe-3{padding-right:1rem !important}.pe-4{padding-right:1.5rem !important}.pe-5{padding-right:3rem !important}.pb-0{padding-bottom:0 !important}.pb-1{padding-bottom:.25rem !important}.pb-2{padding-bottom:.5rem !important}.pb-3{padding-bottom:1rem !important}.pb-4{padding-bottom:1.5rem !important}.pb-5{padding-bottom:3rem !important}.ps-0{padding-left:0 !important}.ps-1{padding-left:.25rem !important}.ps-2{padding-left:.5rem !important}.ps-3{padding-left:1rem !important}.ps-4{padding-left:1.5rem !important}.ps-5{padding-left:3rem !important}.font-monospace{font-family:var(--bs-font-monospace) !important}.fs-1{font-size:calc(1.325rem + 0.9vw) !important}.fs-2{font-size:calc(1.29rem + 0.48vw) !important}.fs-3{font-size:calc(1.27rem + 0.24vw) !important}.fs-4{font-size:1.25rem !important}.fs-5{font-size:1.1rem !important}.fs-6{font-size:1rem !important}.fst-italic{font-style:italic !important}.fst-normal{font-style:normal !important}.fw-light{font-weight:300 !important}.fw-lighter{font-weight:lighter !important}.fw-normal{font-weight:400 !important}.fw-bold{font-weight:700 !important}.fw-bolder{font-weight:bolder !important}.lh-1{line-height:1 !important}.lh-sm{line-height:1.25 !important}.lh-base{line-height:1.5 !important}.lh-lg{line-height:2 !important}.text-start{text-align:left !important}.text-end{text-align:right !important}.text-center{text-align:center !important}.text-decoration-none{text-decoration:none !important}.text-decoration-underline{text-decoration:underline !important}.text-decoration-line-through{text-decoration:line-through !important}.text-lowercase{text-transform:lowercase !important}.text-uppercase{text-transform:uppercase !important}.text-capitalize{text-transform:capitalize !important}.text-wrap{white-space:normal !important}.text-nowrap{white-space:nowrap !important}.text-break{word-wrap:break-word !important;word-break:break-word !important}.text-default{--bs-text-opacity: 1;color:rgba(var(--bs-default-rgb), var(--bs-text-opacity)) !important}.text-primary{--bs-text-opacity: 1;color:rgba(var(--bs-primary-rgb), var(--bs-text-opacity)) !important}.text-secondary{--bs-text-opacity: 1;color:rgba(var(--bs-secondary-rgb), var(--bs-text-opacity)) !important}.text-success{--bs-text-opacity: 1;color:rgba(var(--bs-success-rgb), var(--bs-text-opacity)) !important}.text-info{--bs-text-opacity: 1;color:rgba(var(--bs-info-rgb), var(--bs-text-opacity)) !important}.text-warning{--bs-text-opacity: 1;color:rgba(var(--bs-warning-rgb), var(--bs-text-opacity)) !important}.text-danger{--bs-text-opacity: 1;color:rgba(var(--bs-danger-rgb), var(--bs-text-opacity)) !important}.text-light{--bs-text-opacity: 1;color:rgba(var(--bs-light-rgb), var(--bs-text-opacity)) !important}.text-dark{--bs-text-opacity: 1;color:rgba(var(--bs-dark-rgb), var(--bs-text-opacity)) !important}.text-black{--bs-text-opacity: 1;color:rgba(var(--bs-black-rgb), var(--bs-text-opacity)) !important}.text-white{--bs-text-opacity: 1;color:rgba(var(--bs-white-rgb), var(--bs-text-opacity)) !important}.text-body{--bs-text-opacity: 1;color:rgba(var(--bs-body-color-rgb), var(--bs-text-opacity)) !important}.text-muted{--bs-text-opacity: 1;color:#6c757d !important}.text-black-50{--bs-text-opacity: 1;color:rgba(0,0,0,.5) !important}.text-white-50{--bs-text-opacity: 1;color:rgba(255,255,255,.5) !important}.text-reset{--bs-text-opacity: 1;color:inherit !important}.text-opacity-25{--bs-text-opacity: 0.25}.text-opacity-50{--bs-text-opacity: 0.5}.text-opacity-75{--bs-text-opacity: 0.75}.text-opacity-100{--bs-text-opacity: 1}.bg-default{--bs-bg-opacity: 1;background-color:rgba(var(--bs-default-rgb), var(--bs-bg-opacity)) !important}.bg-primary{--bs-bg-opacity: 1;background-color:rgba(var(--bs-primary-rgb), var(--bs-bg-opacity)) !important}.bg-secondary{--bs-bg-opacity: 1;background-color:rgba(var(--bs-secondary-rgb), var(--bs-bg-opacity)) !important}.bg-success{--bs-bg-opacity: 1;background-color:rgba(var(--bs-success-rgb), var(--bs-bg-opacity)) !important}.bg-info{--bs-bg-opacity: 1;background-color:rgba(var(--bs-info-rgb), var(--bs-bg-opacity)) !important}.bg-warning{--bs-bg-opacity: 1;background-color:rgba(var(--bs-warning-rgb), var(--bs-bg-opacity)) !important}.bg-danger{--bs-bg-opacity: 1;background-color:rgba(var(--bs-danger-rgb), var(--bs-bg-opacity)) !important}.bg-light{--bs-bg-opacity: 1;background-color:rgba(var(--bs-light-rgb), var(--bs-bg-opacity)) !important}.bg-dark{--bs-bg-opacity: 1;background-color:rgba(var(--bs-dark-rgb), var(--bs-bg-opacity)) !important}.bg-black{--bs-bg-opacity: 1;background-color:rgba(var(--bs-black-rgb), var(--bs-bg-opacity)) !important}.bg-white{--bs-bg-opacity: 1;background-color:rgba(var(--bs-white-rgb), var(--bs-bg-opacity)) !important}.bg-body{--bs-bg-opacity: 1;background-color:rgba(var(--bs-body-bg-rgb), var(--bs-bg-opacity)) !important}.bg-transparent{--bs-bg-opacity: 1;background-color:rgba(0,0,0,0) !important}.bg-opacity-10{--bs-bg-opacity: 0.1}.bg-opacity-25{--bs-bg-opacity: 0.25}.bg-opacity-50{--bs-bg-opacity: 0.5}.bg-opacity-75{--bs-bg-opacity: 0.75}.bg-opacity-100{--bs-bg-opacity: 1}.bg-gradient{background-image:var(--bs-gradient) !important}.user-select-all{user-select:all !important}.user-select-auto{user-select:auto !important}.user-select-none{user-select:none !important}.pe-none{pointer-events:none !important}.pe-auto{pointer-events:auto !important}.rounded{border-radius:.25rem !important}.rounded-0{border-radius:0 !important}.rounded-1{border-radius:.2rem !important}.rounded-2{border-radius:.25rem !important}.rounded-3{border-radius:.3rem !important}.rounded-circle{border-radius:50% !important}.rounded-pill{border-radius:50rem !important}.rounded-top{border-top-left-radius:.25rem !important;border-top-right-radius:.25rem !important}.rounded-end{border-top-right-radius:.25rem !important;border-bottom-right-radius:.25rem !important}.rounded-bottom{border-bottom-right-radius:.25rem !important;border-bottom-left-radius:.25rem !important}.rounded-start{border-bottom-left-radius:.25rem !important;border-top-left-radius:.25rem !important}.visible{visibility:visible !important}.invisible{visibility:hidden !important}@media(min-width: 576px){.float-sm-start{float:left !important}.float-sm-end{float:right !important}.float-sm-none{float:none !important}.d-sm-inline{display:inline !important}.d-sm-inline-block{display:inline-block !important}.d-sm-block{display:block !important}.d-sm-grid{display:grid !important}.d-sm-table{display:table !important}.d-sm-table-row{display:table-row !important}.d-sm-table-cell{display:table-cell !important}.d-sm-flex{display:flex !important}.d-sm-inline-flex{display:inline-flex !important}.d-sm-none{display:none !important}.flex-sm-fill{flex:1 1 auto !important}.flex-sm-row{flex-direction:row !important}.flex-sm-column{flex-direction:column !important}.flex-sm-row-reverse{flex-direction:row-reverse !important}.flex-sm-column-reverse{flex-direction:column-reverse !important}.flex-sm-grow-0{flex-grow:0 !important}.flex-sm-grow-1{flex-grow:1 !important}.flex-sm-shrink-0{flex-shrink:0 !important}.flex-sm-shrink-1{flex-shrink:1 !important}.flex-sm-wrap{flex-wrap:wrap !important}.flex-sm-nowrap{flex-wrap:nowrap !important}.flex-sm-wrap-reverse{flex-wrap:wrap-reverse !important}.gap-sm-0{gap:0 !important}.gap-sm-1{gap:.25rem !important}.gap-sm-2{gap:.5rem !important}.gap-sm-3{gap:1rem !important}.gap-sm-4{gap:1.5rem !important}.gap-sm-5{gap:3rem !important}.justify-content-sm-start{justify-content:flex-start !important}.justify-content-sm-end{justify-content:flex-end !important}.justify-content-sm-center{justify-content:center !important}.justify-content-sm-between{justify-content:space-between !important}.justify-content-sm-around{justify-content:space-around !important}.justify-content-sm-evenly{justify-content:space-evenly !important}.align-items-sm-start{align-items:flex-start !important}.align-items-sm-end{align-items:flex-end !important}.align-items-sm-center{align-items:center !important}.align-items-sm-baseline{align-items:baseline !important}.align-items-sm-stretch{align-items:stretch !important}.align-content-sm-start{align-content:flex-start !important}.align-content-sm-end{align-content:flex-end !important}.align-content-sm-center{align-content:center !important}.align-content-sm-between{align-content:space-between !important}.align-content-sm-around{align-content:space-around !important}.align-content-sm-stretch{align-content:stretch !important}.align-self-sm-auto{align-self:auto !important}.align-self-sm-start{align-self:flex-start !important}.align-self-sm-end{align-self:flex-end !important}.align-self-sm-center{align-self:center !important}.align-self-sm-baseline{align-self:baseline !important}.align-self-sm-stretch{align-self:stretch !important}.order-sm-first{order:-1 !important}.order-sm-0{order:0 !important}.order-sm-1{order:1 !important}.order-sm-2{order:2 !important}.order-sm-3{order:3 !important}.order-sm-4{order:4 !important}.order-sm-5{order:5 !important}.order-sm-last{order:6 !important}.m-sm-0{margin:0 !important}.m-sm-1{margin:.25rem !important}.m-sm-2{margin:.5rem !important}.m-sm-3{margin:1rem !important}.m-sm-4{margin:1.5rem !important}.m-sm-5{margin:3rem !important}.m-sm-auto{margin:auto !important}.mx-sm-0{margin-right:0 !important;margin-left:0 !important}.mx-sm-1{margin-right:.25rem !important;margin-left:.25rem !important}.mx-sm-2{margin-right:.5rem !important;margin-left:.5rem !important}.mx-sm-3{margin-right:1rem !important;margin-left:1rem !important}.mx-sm-4{margin-right:1.5rem !important;margin-left:1.5rem !important}.mx-sm-5{margin-right:3rem !important;margin-left:3rem !important}.mx-sm-auto{margin-right:auto !important;margin-left:auto !important}.my-sm-0{margin-top:0 !important;margin-bottom:0 !important}.my-sm-1{margin-top:.25rem !important;margin-bottom:.25rem !important}.my-sm-2{margin-top:.5rem !important;margin-bottom:.5rem !important}.my-sm-3{margin-top:1rem !important;margin-bottom:1rem !important}.my-sm-4{margin-top:1.5rem !important;margin-bottom:1.5rem !important}.my-sm-5{margin-top:3rem !important;margin-bottom:3rem !important}.my-sm-auto{margin-top:auto !important;margin-bottom:auto !important}.mt-sm-0{margin-top:0 !important}.mt-sm-1{margin-top:.25rem !important}.mt-sm-2{margin-top:.5rem !important}.mt-sm-3{margin-top:1rem !important}.mt-sm-4{margin-top:1.5rem !important}.mt-sm-5{margin-top:3rem !important}.mt-sm-auto{margin-top:auto !important}.me-sm-0{margin-right:0 !important}.me-sm-1{margin-right:.25rem !important}.me-sm-2{margin-right:.5rem !important}.me-sm-3{margin-right:1rem !important}.me-sm-4{margin-right:1.5rem !important}.me-sm-5{margin-right:3rem !important}.me-sm-auto{margin-right:auto !important}.mb-sm-0{margin-bottom:0 !important}.mb-sm-1{margin-bottom:.25rem !important}.mb-sm-2{margin-bottom:.5rem !important}.mb-sm-3{margin-bottom:1rem !important}.mb-sm-4{margin-bottom:1.5rem !important}.mb-sm-5{margin-bottom:3rem !important}.mb-sm-auto{margin-bottom:auto !important}.ms-sm-0{margin-left:0 !important}.ms-sm-1{margin-left:.25rem !important}.ms-sm-2{margin-left:.5rem !important}.ms-sm-3{margin-left:1rem !important}.ms-sm-4{margin-left:1.5rem !important}.ms-sm-5{margin-left:3rem !important}.ms-sm-auto{margin-left:auto !important}.p-sm-0{padding:0 !important}.p-sm-1{padding:.25rem !important}.p-sm-2{padding:.5rem !important}.p-sm-3{padding:1rem !important}.p-sm-4{padding:1.5rem !important}.p-sm-5{padding:3rem !important}.px-sm-0{padding-right:0 !important;padding-left:0 !important}.px-sm-1{padding-right:.25rem !important;padding-left:.25rem !important}.px-sm-2{padding-right:.5rem !important;padding-left:.5rem !important}.px-sm-3{padding-right:1rem !important;padding-left:1rem !important}.px-sm-4{padding-right:1.5rem !important;padding-left:1.5rem !important}.px-sm-5{padding-right:3rem !important;padding-left:3rem !important}.py-sm-0{padding-top:0 !important;padding-bottom:0 !important}.py-sm-1{padding-top:.25rem !important;padding-bottom:.25rem !important}.py-sm-2{padding-top:.5rem !important;padding-bottom:.5rem !important}.py-sm-3{padding-top:1rem !important;padding-bottom:1rem !important}.py-sm-4{padding-top:1.5rem !important;padding-bottom:1.5rem !important}.py-sm-5{padding-top:3rem !important;padding-bottom:3rem !important}.pt-sm-0{padding-top:0 !important}.pt-sm-1{padding-top:.25rem !important}.pt-sm-2{padding-top:.5rem !important}.pt-sm-3{padding-top:1rem !important}.pt-sm-4{padding-top:1.5rem !important}.pt-sm-5{padding-top:3rem !important}.pe-sm-0{padding-right:0 !important}.pe-sm-1{padding-right:.25rem !important}.pe-sm-2{padding-right:.5rem !important}.pe-sm-3{padding-right:1rem !important}.pe-sm-4{padding-right:1.5rem !important}.pe-sm-5{padding-right:3rem !important}.pb-sm-0{padding-bottom:0 !important}.pb-sm-1{padding-bottom:.25rem !important}.pb-sm-2{padding-bottom:.5rem !important}.pb-sm-3{padding-bottom:1rem !important}.pb-sm-4{padding-bottom:1.5rem !important}.pb-sm-5{padding-bottom:3rem !important}.ps-sm-0{padding-left:0 !important}.ps-sm-1{padding-left:.25rem !important}.ps-sm-2{padding-left:.5rem !important}.ps-sm-3{padding-left:1rem !important}.ps-sm-4{padding-left:1.5rem !important}.ps-sm-5{padding-left:3rem !important}.text-sm-start{text-align:left !important}.text-sm-end{text-align:right !important}.text-sm-center{text-align:center !important}}@media(min-width: 768px){.float-md-start{float:left !important}.float-md-end{float:right !important}.float-md-none{float:none !important}.d-md-inline{display:inline !important}.d-md-inline-block{display:inline-block !important}.d-md-block{display:block !important}.d-md-grid{display:grid !important}.d-md-table{display:table !important}.d-md-table-row{display:table-row !important}.d-md-table-cell{display:table-cell !important}.d-md-flex{display:flex !important}.d-md-inline-flex{display:inline-flex !important}.d-md-none{display:none !important}.flex-md-fill{flex:1 1 auto !important}.flex-md-row{flex-direction:row !important}.flex-md-column{flex-direction:column !important}.flex-md-row-reverse{flex-direction:row-reverse !important}.flex-md-column-reverse{flex-direction:column-reverse !important}.flex-md-grow-0{flex-grow:0 !important}.flex-md-grow-1{flex-grow:1 !important}.flex-md-shrink-0{flex-shrink:0 !important}.flex-md-shrink-1{flex-shrink:1 !important}.flex-md-wrap{flex-wrap:wrap !important}.flex-md-nowrap{flex-wrap:nowrap !important}.flex-md-wrap-reverse{flex-wrap:wrap-reverse !important}.gap-md-0{gap:0 !important}.gap-md-1{gap:.25rem !important}.gap-md-2{gap:.5rem !important}.gap-md-3{gap:1rem !important}.gap-md-4{gap:1.5rem !important}.gap-md-5{gap:3rem !important}.justify-content-md-start{justify-content:flex-start !important}.justify-content-md-end{justify-content:flex-end !important}.justify-content-md-center{justify-content:center !important}.justify-content-md-between{justify-content:space-between !important}.justify-content-md-around{justify-content:space-around !important}.justify-content-md-evenly{justify-content:space-evenly !important}.align-items-md-start{align-items:flex-start !important}.align-items-md-end{align-items:flex-end !important}.align-items-md-center{align-items:center !important}.align-items-md-baseline{align-items:baseline !important}.align-items-md-stretch{align-items:stretch !important}.align-content-md-start{align-content:flex-start !important}.align-content-md-end{align-content:flex-end !important}.align-content-md-center{align-content:center !important}.align-content-md-between{align-content:space-between !important}.align-content-md-around{align-content:space-around !important}.align-content-md-stretch{align-content:stretch !important}.align-self-md-auto{align-self:auto !important}.align-self-md-start{align-self:flex-start !important}.align-self-md-end{align-self:flex-end !important}.align-self-md-center{align-self:center !important}.align-self-md-baseline{align-self:baseline !important}.align-self-md-stretch{align-self:stretch !important}.order-md-first{order:-1 !important}.order-md-0{order:0 !important}.order-md-1{order:1 !important}.order-md-2{order:2 !important}.order-md-3{order:3 !important}.order-md-4{order:4 !important}.order-md-5{order:5 !important}.order-md-last{order:6 !important}.m-md-0{margin:0 !important}.m-md-1{margin:.25rem !important}.m-md-2{margin:.5rem !important}.m-md-3{margin:1rem !important}.m-md-4{margin:1.5rem !important}.m-md-5{margin:3rem !important}.m-md-auto{margin:auto !important}.mx-md-0{margin-right:0 !important;margin-left:0 !important}.mx-md-1{margin-right:.25rem !important;margin-left:.25rem !important}.mx-md-2{margin-right:.5rem !important;margin-left:.5rem !important}.mx-md-3{margin-right:1rem !important;margin-left:1rem !important}.mx-md-4{margin-right:1.5rem !important;margin-left:1.5rem !important}.mx-md-5{margin-right:3rem !important;margin-left:3rem !important}.mx-md-auto{margin-right:auto !important;margin-left:auto !important}.my-md-0{margin-top:0 !important;margin-bottom:0 !important}.my-md-1{margin-top:.25rem !important;margin-bottom:.25rem !important}.my-md-2{margin-top:.5rem !important;margin-bottom:.5rem !important}.my-md-3{margin-top:1rem !important;margin-bottom:1rem !important}.my-md-4{margin-top:1.5rem !important;margin-bottom:1.5rem !important}.my-md-5{margin-top:3rem !important;margin-bottom:3rem !important}.my-md-auto{margin-top:auto !important;margin-bottom:auto !important}.mt-md-0{margin-top:0 !important}.mt-md-1{margin-top:.25rem !important}.mt-md-2{margin-top:.5rem !important}.mt-md-3{margin-top:1rem !important}.mt-md-4{margin-top:1.5rem !important}.mt-md-5{margin-top:3rem !important}.mt-md-auto{margin-top:auto !important}.me-md-0{margin-right:0 !important}.me-md-1{margin-right:.25rem !important}.me-md-2{margin-right:.5rem !important}.me-md-3{margin-right:1rem !important}.me-md-4{margin-right:1.5rem !important}.me-md-5{margin-right:3rem !important}.me-md-auto{margin-right:auto !important}.mb-md-0{margin-bottom:0 !important}.mb-md-1{margin-bottom:.25rem !important}.mb-md-2{margin-bottom:.5rem !important}.mb-md-3{margin-bottom:1rem !important}.mb-md-4{margin-bottom:1.5rem !important}.mb-md-5{margin-bottom:3rem !important}.mb-md-auto{margin-bottom:auto !important}.ms-md-0{margin-left:0 !important}.ms-md-1{margin-left:.25rem !important}.ms-md-2{margin-left:.5rem !important}.ms-md-3{margin-left:1rem !important}.ms-md-4{margin-left:1.5rem !important}.ms-md-5{margin-left:3rem !important}.ms-md-auto{margin-left:auto !important}.p-md-0{padding:0 !important}.p-md-1{padding:.25rem !important}.p-md-2{padding:.5rem !important}.p-md-3{padding:1rem !important}.p-md-4{padding:1.5rem !important}.p-md-5{padding:3rem !important}.px-md-0{padding-right:0 !important;padding-left:0 !important}.px-md-1{padding-right:.25rem !important;padding-left:.25rem !important}.px-md-2{padding-right:.5rem !important;padding-left:.5rem !important}.px-md-3{padding-right:1rem !important;padding-left:1rem !important}.px-md-4{padding-right:1.5rem !important;padding-left:1.5rem !important}.px-md-5{padding-right:3rem !important;padding-left:3rem !important}.py-md-0{padding-top:0 !important;padding-bottom:0 !important}.py-md-1{padding-top:.25rem !important;padding-bottom:.25rem !important}.py-md-2{padding-top:.5rem !important;padding-bottom:.5rem !important}.py-md-3{padding-top:1rem !important;padding-bottom:1rem !important}.py-md-4{padding-top:1.5rem !important;padding-bottom:1.5rem !important}.py-md-5{padding-top:3rem !important;padding-bottom:3rem !important}.pt-md-0{padding-top:0 !important}.pt-md-1{padding-top:.25rem !important}.pt-md-2{padding-top:.5rem !important}.pt-md-3{padding-top:1rem !important}.pt-md-4{padding-top:1.5rem !important}.pt-md-5{padding-top:3rem !important}.pe-md-0{padding-right:0 !important}.pe-md-1{padding-right:.25rem !important}.pe-md-2{padding-right:.5rem !important}.pe-md-3{padding-right:1rem !important}.pe-md-4{padding-right:1.5rem !important}.pe-md-5{padding-right:3rem !important}.pb-md-0{padding-bottom:0 !important}.pb-md-1{padding-bottom:.25rem !important}.pb-md-2{padding-bottom:.5rem !important}.pb-md-3{padding-bottom:1rem !important}.pb-md-4{padding-bottom:1.5rem !important}.pb-md-5{padding-bottom:3rem !important}.ps-md-0{padding-left:0 !important}.ps-md-1{padding-left:.25rem !important}.ps-md-2{padding-left:.5rem !important}.ps-md-3{padding-left:1rem !important}.ps-md-4{padding-left:1.5rem !important}.ps-md-5{padding-left:3rem !important}.text-md-start{text-align:left !important}.text-md-end{text-align:right !important}.text-md-center{text-align:center !important}}@media(min-width: 992px){.float-lg-start{float:left !important}.float-lg-end{float:right !important}.float-lg-none{float:none !important}.d-lg-inline{display:inline !important}.d-lg-inline-block{display:inline-block !important}.d-lg-block{display:block !important}.d-lg-grid{display:grid !important}.d-lg-table{display:table !important}.d-lg-table-row{display:table-row !important}.d-lg-table-cell{display:table-cell !important}.d-lg-flex{display:flex !important}.d-lg-inline-flex{display:inline-flex !important}.d-lg-none{display:none !important}.flex-lg-fill{flex:1 1 auto !important}.flex-lg-row{flex-direction:row !important}.flex-lg-column{flex-direction:column !important}.flex-lg-row-reverse{flex-direction:row-reverse !important}.flex-lg-column-reverse{flex-direction:column-reverse !important}.flex-lg-grow-0{flex-grow:0 !important}.flex-lg-grow-1{flex-grow:1 !important}.flex-lg-shrink-0{flex-shrink:0 !important}.flex-lg-shrink-1{flex-shrink:1 !important}.flex-lg-wrap{flex-wrap:wrap !important}.flex-lg-nowrap{flex-wrap:nowrap !important}.flex-lg-wrap-reverse{flex-wrap:wrap-reverse !important}.gap-lg-0{gap:0 !important}.gap-lg-1{gap:.25rem !important}.gap-lg-2{gap:.5rem !important}.gap-lg-3{gap:1rem !important}.gap-lg-4{gap:1.5rem !important}.gap-lg-5{gap:3rem !important}.justify-content-lg-start{justify-content:flex-start !important}.justify-content-lg-end{justify-content:flex-end !important}.justify-content-lg-center{justify-content:center !important}.justify-content-lg-between{justify-content:space-between !important}.justify-content-lg-around{justify-content:space-around !important}.justify-content-lg-evenly{justify-content:space-evenly !important}.align-items-lg-start{align-items:flex-start !important}.align-items-lg-end{align-items:flex-end !important}.align-items-lg-center{align-items:center !important}.align-items-lg-baseline{align-items:baseline !important}.align-items-lg-stretch{align-items:stretch !important}.align-content-lg-start{align-content:flex-start !important}.align-content-lg-end{align-content:flex-end !important}.align-content-lg-center{align-content:center !important}.align-content-lg-between{align-content:space-between !important}.align-content-lg-around{align-content:space-around !important}.align-content-lg-stretch{align-content:stretch !important}.align-self-lg-auto{align-self:auto !important}.align-self-lg-start{align-self:flex-start !important}.align-self-lg-end{align-self:flex-end !important}.align-self-lg-center{align-self:center !important}.align-self-lg-baseline{align-self:baseline !important}.align-self-lg-stretch{align-self:stretch !important}.order-lg-first{order:-1 !important}.order-lg-0{order:0 !important}.order-lg-1{order:1 !important}.order-lg-2{order:2 !important}.order-lg-3{order:3 !important}.order-lg-4{order:4 !important}.order-lg-5{order:5 !important}.order-lg-last{order:6 !important}.m-lg-0{margin:0 !important}.m-lg-1{margin:.25rem !important}.m-lg-2{margin:.5rem !important}.m-lg-3{margin:1rem !important}.m-lg-4{margin:1.5rem !important}.m-lg-5{margin:3rem !important}.m-lg-auto{margin:auto !important}.mx-lg-0{margin-right:0 !important;margin-left:0 !important}.mx-lg-1{margin-right:.25rem !important;margin-left:.25rem !important}.mx-lg-2{margin-right:.5rem !important;margin-left:.5rem !important}.mx-lg-3{margin-right:1rem !important;margin-left:1rem !important}.mx-lg-4{margin-right:1.5rem !important;margin-left:1.5rem !important}.mx-lg-5{margin-right:3rem !important;margin-left:3rem !important}.mx-lg-auto{margin-right:auto !important;margin-left:auto !important}.my-lg-0{margin-top:0 !important;margin-bottom:0 !important}.my-lg-1{margin-top:.25rem !important;margin-bottom:.25rem !important}.my-lg-2{margin-top:.5rem !important;margin-bottom:.5rem !important}.my-lg-3{margin-top:1rem !important;margin-bottom:1rem !important}.my-lg-4{margin-top:1.5rem !important;margin-bottom:1.5rem !important}.my-lg-5{margin-top:3rem !important;margin-bottom:3rem !important}.my-lg-auto{margin-top:auto !important;margin-bottom:auto !important}.mt-lg-0{margin-top:0 !important}.mt-lg-1{margin-top:.25rem !important}.mt-lg-2{margin-top:.5rem !important}.mt-lg-3{margin-top:1rem !important}.mt-lg-4{margin-top:1.5rem !important}.mt-lg-5{margin-top:3rem !important}.mt-lg-auto{margin-top:auto !important}.me-lg-0{margin-right:0 !important}.me-lg-1{margin-right:.25rem !important}.me-lg-2{margin-right:.5rem !important}.me-lg-3{margin-right:1rem !important}.me-lg-4{margin-right:1.5rem !important}.me-lg-5{margin-right:3rem !important}.me-lg-auto{margin-right:auto !important}.mb-lg-0{margin-bottom:0 !important}.mb-lg-1{margin-bottom:.25rem !important}.mb-lg-2{margin-bottom:.5rem !important}.mb-lg-3{margin-bottom:1rem !important}.mb-lg-4{margin-bottom:1.5rem !important}.mb-lg-5{margin-bottom:3rem !important}.mb-lg-auto{margin-bottom:auto !important}.ms-lg-0{margin-left:0 !important}.ms-lg-1{margin-left:.25rem !important}.ms-lg-2{margin-left:.5rem !important}.ms-lg-3{margin-left:1rem !important}.ms-lg-4{margin-left:1.5rem !important}.ms-lg-5{margin-left:3rem !important}.ms-lg-auto{margin-left:auto !important}.p-lg-0{padding:0 !important}.p-lg-1{padding:.25rem !important}.p-lg-2{padding:.5rem !important}.p-lg-3{padding:1rem !important}.p-lg-4{padding:1.5rem !important}.p-lg-5{padding:3rem !important}.px-lg-0{padding-right:0 !important;padding-left:0 !important}.px-lg-1{padding-right:.25rem !important;padding-left:.25rem !important}.px-lg-2{padding-right:.5rem !important;padding-left:.5rem !important}.px-lg-3{padding-right:1rem !important;padding-left:1rem !important}.px-lg-4{padding-right:1.5rem !important;padding-left:1.5rem !important}.px-lg-5{padding-right:3rem !important;padding-left:3rem !important}.py-lg-0{padding-top:0 !important;padding-bottom:0 !important}.py-lg-1{padding-top:.25rem !important;padding-bottom:.25rem !important}.py-lg-2{padding-top:.5rem !important;padding-bottom:.5rem !important}.py-lg-3{padding-top:1rem !important;padding-bottom:1rem !important}.py-lg-4{padding-top:1.5rem !important;padding-bottom:1.5rem !important}.py-lg-5{padding-top:3rem !important;padding-bottom:3rem !important}.pt-lg-0{padding-top:0 !important}.pt-lg-1{padding-top:.25rem !important}.pt-lg-2{padding-top:.5rem !important}.pt-lg-3{padding-top:1rem !important}.pt-lg-4{padding-top:1.5rem !important}.pt-lg-5{padding-top:3rem !important}.pe-lg-0{padding-right:0 !important}.pe-lg-1{padding-right:.25rem !important}.pe-lg-2{padding-right:.5rem !important}.pe-lg-3{padding-right:1rem !important}.pe-lg-4{padding-right:1.5rem !important}.pe-lg-5{padding-right:3rem !important}.pb-lg-0{padding-bottom:0 !important}.pb-lg-1{padding-bottom:.25rem !important}.pb-lg-2{padding-bottom:.5rem !important}.pb-lg-3{padding-bottom:1rem !important}.pb-lg-4{padding-bottom:1.5rem !important}.pb-lg-5{padding-bottom:3rem !important}.ps-lg-0{padding-left:0 !important}.ps-lg-1{padding-left:.25rem !important}.ps-lg-2{padding-left:.5rem !important}.ps-lg-3{padding-left:1rem !important}.ps-lg-4{padding-left:1.5rem !important}.ps-lg-5{padding-left:3rem !important}.text-lg-start{text-align:left !important}.text-lg-end{text-align:right !important}.text-lg-center{text-align:center !important}}@media(min-width: 1200px){.float-xl-start{float:left !important}.float-xl-end{float:right !important}.float-xl-none{float:none !important}.d-xl-inline{display:inline !important}.d-xl-inline-block{display:inline-block !important}.d-xl-block{display:block !important}.d-xl-grid{display:grid !important}.d-xl-table{display:table !important}.d-xl-table-row{display:table-row !important}.d-xl-table-cell{display:table-cell !important}.d-xl-flex{display:flex !important}.d-xl-inline-flex{display:inline-flex !important}.d-xl-none{display:none !important}.flex-xl-fill{flex:1 1 auto !important}.flex-xl-row{flex-direction:row !important}.flex-xl-column{flex-direction:column !important}.flex-xl-row-reverse{flex-direction:row-reverse !important}.flex-xl-column-reverse{flex-direction:column-reverse !important}.flex-xl-grow-0{flex-grow:0 !important}.flex-xl-grow-1{flex-grow:1 !important}.flex-xl-shrink-0{flex-shrink:0 !important}.flex-xl-shrink-1{flex-shrink:1 !important}.flex-xl-wrap{flex-wrap:wrap !important}.flex-xl-nowrap{flex-wrap:nowrap !important}.flex-xl-wrap-reverse{flex-wrap:wrap-reverse !important}.gap-xl-0{gap:0 !important}.gap-xl-1{gap:.25rem !important}.gap-xl-2{gap:.5rem !important}.gap-xl-3{gap:1rem !important}.gap-xl-4{gap:1.5rem !important}.gap-xl-5{gap:3rem !important}.justify-content-xl-start{justify-content:flex-start !important}.justify-content-xl-end{justify-content:flex-end !important}.justify-content-xl-center{justify-content:center !important}.justify-content-xl-between{justify-content:space-between !important}.justify-content-xl-around{justify-content:space-around !important}.justify-content-xl-evenly{justify-content:space-evenly !important}.align-items-xl-start{align-items:flex-start !important}.align-items-xl-end{align-items:flex-end !important}.align-items-xl-center{align-items:center !important}.align-items-xl-baseline{align-items:baseline !important}.align-items-xl-stretch{align-items:stretch !important}.align-content-xl-start{align-content:flex-start !important}.align-content-xl-end{align-content:flex-end !important}.align-content-xl-center{align-content:center !important}.align-content-xl-between{align-content:space-between !important}.align-content-xl-around{align-content:space-around !important}.align-content-xl-stretch{align-content:stretch !important}.align-self-xl-auto{align-self:auto !important}.align-self-xl-start{align-self:flex-start !important}.align-self-xl-end{align-self:flex-end !important}.align-self-xl-center{align-self:center !important}.align-self-xl-baseline{align-self:baseline !important}.align-self-xl-stretch{align-self:stretch !important}.order-xl-first{order:-1 !important}.order-xl-0{order:0 !important}.order-xl-1{order:1 !important}.order-xl-2{order:2 !important}.order-xl-3{order:3 !important}.order-xl-4{order:4 !important}.order-xl-5{order:5 !important}.order-xl-last{order:6 !important}.m-xl-0{margin:0 !important}.m-xl-1{margin:.25rem !important}.m-xl-2{margin:.5rem !important}.m-xl-3{margin:1rem !important}.m-xl-4{margin:1.5rem !important}.m-xl-5{margin:3rem !important}.m-xl-auto{margin:auto !important}.mx-xl-0{margin-right:0 !important;margin-left:0 !important}.mx-xl-1{margin-right:.25rem !important;margin-left:.25rem !important}.mx-xl-2{margin-right:.5rem !important;margin-left:.5rem !important}.mx-xl-3{margin-right:1rem !important;margin-left:1rem !important}.mx-xl-4{margin-right:1.5rem !important;margin-left:1.5rem !important}.mx-xl-5{margin-right:3rem !important;margin-left:3rem !important}.mx-xl-auto{margin-right:auto !important;margin-left:auto !important}.my-xl-0{margin-top:0 !important;margin-bottom:0 !important}.my-xl-1{margin-top:.25rem !important;margin-bottom:.25rem !important}.my-xl-2{margin-top:.5rem !important;margin-bottom:.5rem !important}.my-xl-3{margin-top:1rem !important;margin-bottom:1rem !important}.my-xl-4{margin-top:1.5rem !important;margin-bottom:1.5rem !important}.my-xl-5{margin-top:3rem !important;margin-bottom:3rem !important}.my-xl-auto{margin-top:auto !important;margin-bottom:auto !important}.mt-xl-0{margin-top:0 !important}.mt-xl-1{margin-top:.25rem !important}.mt-xl-2{margin-top:.5rem !important}.mt-xl-3{margin-top:1rem !important}.mt-xl-4{margin-top:1.5rem !important}.mt-xl-5{margin-top:3rem !important}.mt-xl-auto{margin-top:auto !important}.me-xl-0{margin-right:0 !important}.me-xl-1{margin-right:.25rem !important}.me-xl-2{margin-right:.5rem !important}.me-xl-3{margin-right:1rem !important}.me-xl-4{margin-right:1.5rem !important}.me-xl-5{margin-right:3rem !important}.me-xl-auto{margin-right:auto !important}.mb-xl-0{margin-bottom:0 !important}.mb-xl-1{margin-bottom:.25rem !important}.mb-xl-2{margin-bottom:.5rem !important}.mb-xl-3{margin-bottom:1rem !important}.mb-xl-4{margin-bottom:1.5rem !important}.mb-xl-5{margin-bottom:3rem !important}.mb-xl-auto{margin-bottom:auto !important}.ms-xl-0{margin-left:0 !important}.ms-xl-1{margin-left:.25rem !important}.ms-xl-2{margin-left:.5rem !important}.ms-xl-3{margin-left:1rem !important}.ms-xl-4{margin-left:1.5rem !important}.ms-xl-5{margin-left:3rem !important}.ms-xl-auto{margin-left:auto !important}.p-xl-0{padding:0 !important}.p-xl-1{padding:.25rem !important}.p-xl-2{padding:.5rem !important}.p-xl-3{padding:1rem !important}.p-xl-4{padding:1.5rem !important}.p-xl-5{padding:3rem !important}.px-xl-0{padding-right:0 !important;padding-left:0 !important}.px-xl-1{padding-right:.25rem !important;padding-left:.25rem !important}.px-xl-2{padding-right:.5rem !important;padding-left:.5rem !important}.px-xl-3{padding-right:1rem !important;padding-left:1rem !important}.px-xl-4{padding-right:1.5rem !important;padding-left:1.5rem !important}.px-xl-5{padding-right:3rem !important;padding-left:3rem !important}.py-xl-0{padding-top:0 !important;padding-bottom:0 !important}.py-xl-1{padding-top:.25rem !important;padding-bottom:.25rem !important}.py-xl-2{padding-top:.5rem !important;padding-bottom:.5rem !important}.py-xl-3{padding-top:1rem !important;padding-bottom:1rem !important}.py-xl-4{padding-top:1.5rem !important;padding-bottom:1.5rem !important}.py-xl-5{padding-top:3rem !important;padding-bottom:3rem !important}.pt-xl-0{padding-top:0 !important}.pt-xl-1{padding-top:.25rem !important}.pt-xl-2{padding-top:.5rem !important}.pt-xl-3{padding-top:1rem !important}.pt-xl-4{padding-top:1.5rem !important}.pt-xl-5{padding-top:3rem !important}.pe-xl-0{padding-right:0 !important}.pe-xl-1{padding-right:.25rem !important}.pe-xl-2{padding-right:.5rem !important}.pe-xl-3{padding-right:1rem !important}.pe-xl-4{padding-right:1.5rem !important}.pe-xl-5{padding-right:3rem !important}.pb-xl-0{padding-bottom:0 !important}.pb-xl-1{padding-bottom:.25rem !important}.pb-xl-2{padding-bottom:.5rem !important}.pb-xl-3{padding-bottom:1rem !important}.pb-xl-4{padding-bottom:1.5rem !important}.pb-xl-5{padding-bottom:3rem !important}.ps-xl-0{padding-left:0 !important}.ps-xl-1{padding-left:.25rem !important}.ps-xl-2{padding-left:.5rem !important}.ps-xl-3{padding-left:1rem !important}.ps-xl-4{padding-left:1.5rem !important}.ps-xl-5{padding-left:3rem !important}.text-xl-start{text-align:left !important}.text-xl-end{text-align:right !important}.text-xl-center{text-align:center !important}}@media(min-width: 1400px){.float-xxl-start{float:left !important}.float-xxl-end{float:right !important}.float-xxl-none{float:none !important}.d-xxl-inline{display:inline !important}.d-xxl-inline-block{display:inline-block !important}.d-xxl-block{display:block !important}.d-xxl-grid{display:grid !important}.d-xxl-table{display:table !important}.d-xxl-table-row{display:table-row !important}.d-xxl-table-cell{display:table-cell !important}.d-xxl-flex{display:flex !important}.d-xxl-inline-flex{display:inline-flex !important}.d-xxl-none{display:none !important}.flex-xxl-fill{flex:1 1 auto !important}.flex-xxl-row{flex-direction:row !important}.flex-xxl-column{flex-direction:column !important}.flex-xxl-row-reverse{flex-direction:row-reverse !important}.flex-xxl-column-reverse{flex-direction:column-reverse !important}.flex-xxl-grow-0{flex-grow:0 !important}.flex-xxl-grow-1{flex-grow:1 !important}.flex-xxl-shrink-0{flex-shrink:0 !important}.flex-xxl-shrink-1{flex-shrink:1 !important}.flex-xxl-wrap{flex-wrap:wrap !important}.flex-xxl-nowrap{flex-wrap:nowrap !important}.flex-xxl-wrap-reverse{flex-wrap:wrap-reverse !important}.gap-xxl-0{gap:0 !important}.gap-xxl-1{gap:.25rem !important}.gap-xxl-2{gap:.5rem !important}.gap-xxl-3{gap:1rem !important}.gap-xxl-4{gap:1.5rem !important}.gap-xxl-5{gap:3rem !important}.justify-content-xxl-start{justify-content:flex-start !important}.justify-content-xxl-end{justify-content:flex-end !important}.justify-content-xxl-center{justify-content:center !important}.justify-content-xxl-between{justify-content:space-between !important}.justify-content-xxl-around{justify-content:space-around !important}.justify-content-xxl-evenly{justify-content:space-evenly !important}.align-items-xxl-start{align-items:flex-start !important}.align-items-xxl-end{align-items:flex-end !important}.align-items-xxl-center{align-items:center !important}.align-items-xxl-baseline{align-items:baseline !important}.align-items-xxl-stretch{align-items:stretch !important}.align-content-xxl-start{align-content:flex-start !important}.align-content-xxl-end{align-content:flex-end !important}.align-content-xxl-center{align-content:center !important}.align-content-xxl-between{align-content:space-between !important}.align-content-xxl-around{align-content:space-around !important}.align-content-xxl-stretch{align-content:stretch !important}.align-self-xxl-auto{align-self:auto !important}.align-self-xxl-start{align-self:flex-start !important}.align-self-xxl-end{align-self:flex-end !important}.align-self-xxl-center{align-self:center !important}.align-self-xxl-baseline{align-self:baseline !important}.align-self-xxl-stretch{align-self:stretch !important}.order-xxl-first{order:-1 !important}.order-xxl-0{order:0 !important}.order-xxl-1{order:1 !important}.order-xxl-2{order:2 !important}.order-xxl-3{order:3 !important}.order-xxl-4{order:4 !important}.order-xxl-5{order:5 !important}.order-xxl-last{order:6 !important}.m-xxl-0{margin:0 !important}.m-xxl-1{margin:.25rem !important}.m-xxl-2{margin:.5rem !important}.m-xxl-3{margin:1rem !important}.m-xxl-4{margin:1.5rem !important}.m-xxl-5{margin:3rem !important}.m-xxl-auto{margin:auto !important}.mx-xxl-0{margin-right:0 !important;margin-left:0 !important}.mx-xxl-1{margin-right:.25rem !important;margin-left:.25rem !important}.mx-xxl-2{margin-right:.5rem !important;margin-left:.5rem !important}.mx-xxl-3{margin-right:1rem !important;margin-left:1rem !important}.mx-xxl-4{margin-right:1.5rem !important;margin-left:1.5rem !important}.mx-xxl-5{margin-right:3rem !important;margin-left:3rem !important}.mx-xxl-auto{margin-right:auto !important;margin-left:auto !important}.my-xxl-0{margin-top:0 !important;margin-bottom:0 !important}.my-xxl-1{margin-top:.25rem !important;margin-bottom:.25rem !important}.my-xxl-2{margin-top:.5rem !important;margin-bottom:.5rem !important}.my-xxl-3{margin-top:1rem !important;margin-bottom:1rem !important}.my-xxl-4{margin-top:1.5rem !important;margin-bottom:1.5rem !important}.my-xxl-5{margin-top:3rem !important;margin-bottom:3rem !important}.my-xxl-auto{margin-top:auto !important;margin-bottom:auto !important}.mt-xxl-0{margin-top:0 !important}.mt-xxl-1{margin-top:.25rem !important}.mt-xxl-2{margin-top:.5rem !important}.mt-xxl-3{margin-top:1rem !important}.mt-xxl-4{margin-top:1.5rem !important}.mt-xxl-5{margin-top:3rem !important}.mt-xxl-auto{margin-top:auto !important}.me-xxl-0{margin-right:0 !important}.me-xxl-1{margin-right:.25rem !important}.me-xxl-2{margin-right:.5rem !important}.me-xxl-3{margin-right:1rem !important}.me-xxl-4{margin-right:1.5rem !important}.me-xxl-5{margin-right:3rem !important}.me-xxl-auto{margin-right:auto !important}.mb-xxl-0{margin-bottom:0 !important}.mb-xxl-1{margin-bottom:.25rem !important}.mb-xxl-2{margin-bottom:.5rem !important}.mb-xxl-3{margin-bottom:1rem !important}.mb-xxl-4{margin-bottom:1.5rem !important}.mb-xxl-5{margin-bottom:3rem !important}.mb-xxl-auto{margin-bottom:auto !important}.ms-xxl-0{margin-left:0 !important}.ms-xxl-1{margin-left:.25rem !important}.ms-xxl-2{margin-left:.5rem !important}.ms-xxl-3{margin-left:1rem !important}.ms-xxl-4{margin-left:1.5rem !important}.ms-xxl-5{margin-left:3rem !important}.ms-xxl-auto{margin-left:auto !important}.p-xxl-0{padding:0 !important}.p-xxl-1{padding:.25rem !important}.p-xxl-2{padding:.5rem !important}.p-xxl-3{padding:1rem !important}.p-xxl-4{padding:1.5rem !important}.p-xxl-5{padding:3rem !important}.px-xxl-0{padding-right:0 !important;padding-left:0 !important}.px-xxl-1{padding-right:.25rem !important;padding-left:.25rem !important}.px-xxl-2{padding-right:.5rem !important;padding-left:.5rem !important}.px-xxl-3{padding-right:1rem !important;padding-left:1rem !important}.px-xxl-4{padding-right:1.5rem !important;padding-left:1.5rem !important}.px-xxl-5{padding-right:3rem !important;padding-left:3rem !important}.py-xxl-0{padding-top:0 !important;padding-bottom:0 !important}.py-xxl-1{padding-top:.25rem !important;padding-bottom:.25rem !important}.py-xxl-2{padding-top:.5rem !important;padding-bottom:.5rem !important}.py-xxl-3{padding-top:1rem !important;padding-bottom:1rem !important}.py-xxl-4{padding-top:1.5rem !important;padding-bottom:1.5rem !important}.py-xxl-5{padding-top:3rem !important;padding-bottom:3rem !important}.pt-xxl-0{padding-top:0 !important}.pt-xxl-1{padding-top:.25rem !important}.pt-xxl-2{padding-top:.5rem !important}.pt-xxl-3{padding-top:1rem !important}.pt-xxl-4{padding-top:1.5rem !important}.pt-xxl-5{padding-top:3rem !important}.pe-xxl-0{padding-right:0 !important}.pe-xxl-1{padding-right:.25rem !important}.pe-xxl-2{padding-right:.5rem !important}.pe-xxl-3{padding-right:1rem !important}.pe-xxl-4{padding-right:1.5rem !important}.pe-xxl-5{padding-right:3rem !important}.pb-xxl-0{padding-bottom:0 !important}.pb-xxl-1{padding-bottom:.25rem !important}.pb-xxl-2{padding-bottom:.5rem !important}.pb-xxl-3{padding-bottom:1rem !important}.pb-xxl-4{padding-bottom:1.5rem !important}.pb-xxl-5{padding-bottom:3rem !important}.ps-xxl-0{padding-left:0 !important}.ps-xxl-1{padding-left:.25rem !important}.ps-xxl-2{padding-left:.5rem !important}.ps-xxl-3{padding-left:1rem !important}.ps-xxl-4{padding-left:1.5rem !important}.ps-xxl-5{padding-left:3rem !important}.text-xxl-start{text-align:left !important}.text-xxl-end{text-align:right !important}.text-xxl-center{text-align:center !important}}.bg-default{color:#000}.bg-primary{color:#fff}.bg-secondary{color:#fff}.bg-success{color:#fff}.bg-info{color:#000}.bg-warning{color:#000}.bg-danger{color:#fff}.bg-light{color:#000}.bg-dark{color:#fff}@media(min-width: 1200px){.fs-1{font-size:2rem !important}.fs-2{font-size:1.65rem !important}.fs-3{font-size:1.45rem !important}}@media print{.d-print-inline{display:inline !important}.d-print-inline-block{display:inline-block !important}.d-print-block{display:block !important}.d-print-grid{display:grid !important}.d-print-table{display:table !important}.d-print-table-row{display:table-row !important}.d-print-table-cell{display:table-cell !important}.d-print-flex{display:flex !important}.d-print-inline-flex{display:inline-flex !important}.d-print-none{display:none !important}}.tippy-box[data-theme~=quarto]{background-color:#fff;border:solid 1px #dee2e6;border-radius:.25rem;color:#212529;font-size:.875rem}.tippy-box[data-theme~=quarto]>.tippy-backdrop{background-color:#fff}.tippy-box[data-theme~=quarto]>.tippy-arrow:after,.tippy-box[data-theme~=quarto]>.tippy-svg-arrow:after{content:"";position:absolute;z-index:-1}.tippy-box[data-theme~=quarto]>.tippy-arrow:after{border-color:rgba(0,0,0,0);border-style:solid}.tippy-box[data-placement^=top]>.tippy-arrow:before{bottom:-6px}.tippy-box[data-placement^=bottom]>.tippy-arrow:before{top:-6px}.tippy-box[data-placement^=right]>.tippy-arrow:before{left:-6px}.tippy-box[data-placement^=left]>.tippy-arrow:before{right:-6px}.tippy-box[data-theme~=quarto][data-placement^=top]>.tippy-arrow:before{border-top-color:#fff}.tippy-box[data-theme~=quarto][data-placement^=top]>.tippy-arrow:after{border-top-color:#dee2e6;border-width:7px 7px 0;top:17px;left:1px}.tippy-box[data-theme~=quarto][data-placement^=top]>.tippy-svg-arrow>svg{top:16px}.tippy-box[data-theme~=quarto][data-placement^=top]>.tippy-svg-arrow:after{top:17px}.tippy-box[data-theme~=quarto][data-placement^=bottom]>.tippy-arrow:before{border-bottom-color:#fff;bottom:16px}.tippy-box[data-theme~=quarto][data-placement^=bottom]>.tippy-arrow:after{border-bottom-color:#dee2e6;border-width:0 7px 7px;bottom:17px;left:1px}.tippy-box[data-theme~=quarto][data-placement^=bottom]>.tippy-svg-arrow>svg{bottom:15px}.tippy-box[data-theme~=quarto][data-placement^=bottom]>.tippy-svg-arrow:after{bottom:17px}.tippy-box[data-theme~=quarto][data-placement^=left]>.tippy-arrow:before{border-left-color:#fff}.tippy-box[data-theme~=quarto][data-placement^=left]>.tippy-arrow:after{border-left-color:#dee2e6;border-width:7px 0 7px 7px;left:17px;top:1px}.tippy-box[data-theme~=quarto][data-placement^=left]>.tippy-svg-arrow>svg{left:11px}.tippy-box[data-theme~=quarto][data-placement^=left]>.tippy-svg-arrow:after{left:12px}.tippy-box[data-theme~=quarto][data-placement^=right]>.tippy-arrow:before{border-right-color:#fff;right:16px}.tippy-box[data-theme~=quarto][data-placement^=right]>.tippy-arrow:after{border-width:7px 7px 7px 0;right:17px;top:1px;border-right-color:#dee2e6}.tippy-box[data-theme~=quarto][data-placement^=right]>.tippy-svg-arrow>svg{right:11px}.tippy-box[data-theme~=quarto][data-placement^=right]>.tippy-svg-arrow:after{right:12px}.tippy-box[data-theme~=quarto]>.tippy-svg-arrow{fill:#212529}.tippy-box[data-theme~=quarto]>.tippy-svg-arrow:after{background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iNiIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNMCA2czEuNzk2LS4wMTMgNC42Ny0zLjYxNUM1Ljg1MS45IDYuOTMuMDA2IDggMGMxLjA3LS4wMDYgMi4xNDguODg3IDMuMzQzIDIuMzg1QzE0LjIzMyA2LjAwNSAxNiA2IDE2IDZIMHoiIGZpbGw9InJnYmEoMCwgOCwgMTYsIDAuMikiLz48L3N2Zz4=);background-size:16px 6px;width:16px;height:6px}.top-right{position:absolute;top:1em;right:1em}.hidden{display:none !important}.zindex-bottom{z-index:-1 !important}.quarto-layout-panel{margin-bottom:1em}.quarto-layout-panel>figure{width:100%}.quarto-layout-panel>figure>figcaption,.quarto-layout-panel>.panel-caption{margin-top:10pt}.quarto-layout-panel>.table-caption{margin-top:0px}.table-caption p{margin-bottom:.5em}.quarto-layout-row{display:flex;flex-direction:row;align-items:flex-start}.quarto-layout-valign-top{align-items:flex-start}.quarto-layout-valign-bottom{align-items:flex-end}.quarto-layout-valign-center{align-items:center}.quarto-layout-cell{position:relative;margin-right:20px}.quarto-layout-cell:last-child{margin-right:0}.quarto-layout-cell figure,.quarto-layout-cell>p{margin:.2em}.quarto-layout-cell img{max-width:100%}.quarto-layout-cell .html-widget{width:100% !important}.quarto-layout-cell div figure p{margin:0}.quarto-layout-cell figure{display:inline-block;margin-inline-start:0;margin-inline-end:0}.quarto-layout-cell table{display:inline-table}.quarto-layout-cell-subref figcaption,figure .quarto-layout-row figure figcaption{text-align:center;font-style:italic}.quarto-figure{position:relative;margin-bottom:1em}.quarto-figure>figure{width:100%;margin-bottom:0}.quarto-figure-left>figure>p,.quarto-figure-left>figure>div{text-align:left}.quarto-figure-center>figure>p,.quarto-figure-center>figure>div{text-align:center}.quarto-figure-right>figure>p,.quarto-figure-right>figure>div{text-align:right}figure>p:empty{display:none}figure>p:first-child{margin-top:0;margin-bottom:0}figure>figcaption{margin-top:.5em}div[id^=tbl-]{position:relative}.quarto-figure>.anchorjs-link{position:absolute;top:.6em;right:.5em}div[id^=tbl-]>.anchorjs-link{position:absolute;top:.7em;right:.3em}.quarto-figure:hover>.anchorjs-link,div[id^=tbl-]:hover>.anchorjs-link,h2:hover>.anchorjs-link,.h2:hover>.anchorjs-link,h3:hover>.anchorjs-link,.h3:hover>.anchorjs-link,h4:hover>.anchorjs-link,.h4:hover>.anchorjs-link,h5:hover>.anchorjs-link,.h5:hover>.anchorjs-link,h6:hover>.anchorjs-link,.h6:hover>.anchorjs-link,.reveal-anchorjs-link>.anchorjs-link{opacity:1}#title-block-header{margin-block-end:1rem;position:relative;margin-top:-1px}#title-block-header .abstract{margin-block-start:1rem}#title-block-header .abstract .abstract-title{font-weight:600}#title-block-header a{text-decoration:none}#title-block-header .author,#title-block-header .date,#title-block-header .doi{margin-block-end:.2rem}#title-block-header .quarto-title-block>div{display:flex}#title-block-header .quarto-title-block>div>h1,#title-block-header .quarto-title-block>div>.h1{flex-grow:1}#title-block-header .quarto-title-block>div>button{flex-shrink:0;height:2.25rem;margin-top:0}@media(min-width: 992px){#title-block-header .quarto-title-block>div>button{margin-top:5px}}tr.header>th>p:last-of-type{margin-bottom:0px}table,.table{caption-side:top;margin-bottom:1.5rem}caption,.table-caption{padding-top:.5rem;padding-bottom:.5rem;text-align:center}.utterances{max-width:none;margin-left:-8px}iframe{margin-bottom:1em}details{margin-bottom:1em}details[show]{margin-bottom:0}details>summary{color:#6c757d}details>summary>p:only-child{display:inline}pre.sourceCode,code.sourceCode{position:relative}p code:not(.sourceCode){white-space:pre-wrap}code{white-space:pre}@media print{code{white-space:pre-wrap}}pre>code{display:block}pre>code.sourceCode{white-space:pre}pre>code.sourceCode>span>a:first-child::before{text-decoration:none}pre.code-overflow-wrap>code.sourceCode{white-space:pre-wrap}pre.code-overflow-scroll>code.sourceCode{white-space:pre}code a:any-link{color:inherit;text-decoration:none}code a:hover{color:inherit;text-decoration:underline}ul.task-list{padding-left:1em}[data-tippy-root]{display:inline-block}.tippy-content .footnote-back{display:none}.quarto-embedded-source-code{display:none}.quarto-unresolved-ref{font-weight:600}.quarto-cover-image{max-width:35%;float:right;margin-left:30px}.cell-output-display .widget-subarea{margin-bottom:1em}.cell-output-display:not(.no-overflow-x),.knitsql-table:not(.no-overflow-x){overflow-x:auto}.panel-input{margin-bottom:1em}.panel-input>div,.panel-input>div>div{display:inline-block;vertical-align:top;padding-right:12px}.panel-input>p:last-child{margin-bottom:0}.layout-sidebar{margin-bottom:1em}.layout-sidebar .tab-content{border:none}.tab-content>.page-columns.active{display:grid}div.sourceCode>iframe{width:100%;height:300px;margin-bottom:-0.5em}div.ansi-escaped-output{font-family:monospace;display:block}/*! +* +* ansi colors from IPython notebook's +* +*/.ansi-black-fg{color:#3e424d}.ansi-black-bg{background-color:#3e424d}.ansi-black-intense-fg{color:#282c36}.ansi-black-intense-bg{background-color:#282c36}.ansi-red-fg{color:#e75c58}.ansi-red-bg{background-color:#e75c58}.ansi-red-intense-fg{color:#b22b31}.ansi-red-intense-bg{background-color:#b22b31}.ansi-green-fg{color:#00a250}.ansi-green-bg{background-color:#00a250}.ansi-green-intense-fg{color:#007427}.ansi-green-intense-bg{background-color:#007427}.ansi-yellow-fg{color:#ddb62b}.ansi-yellow-bg{background-color:#ddb62b}.ansi-yellow-intense-fg{color:#b27d12}.ansi-yellow-intense-bg{background-color:#b27d12}.ansi-blue-fg{color:#208ffb}.ansi-blue-bg{background-color:#208ffb}.ansi-blue-intense-fg{color:#0065ca}.ansi-blue-intense-bg{background-color:#0065ca}.ansi-magenta-fg{color:#d160c4}.ansi-magenta-bg{background-color:#d160c4}.ansi-magenta-intense-fg{color:#a03196}.ansi-magenta-intense-bg{background-color:#a03196}.ansi-cyan-fg{color:#60c6c8}.ansi-cyan-bg{background-color:#60c6c8}.ansi-cyan-intense-fg{color:#258f8f}.ansi-cyan-intense-bg{background-color:#258f8f}.ansi-white-fg{color:#c5c1b4}.ansi-white-bg{background-color:#c5c1b4}.ansi-white-intense-fg{color:#a1a6b2}.ansi-white-intense-bg{background-color:#a1a6b2}.ansi-default-inverse-fg{color:#fff}.ansi-default-inverse-bg{background-color:#000}.ansi-bold{font-weight:bold}.ansi-underline{text-decoration:underline}:root{--quarto-body-bg: #ffffff;--quarto-body-color: #212529;--quarto-text-muted: #6c757d;--quarto-border-color: #dee2e6;--quarto-border-width: 1px;--quarto-border-radius: 0.25rem}table.gt_table{color:var(--quarto-body-color);font-size:1em;width:100%;background-color:rgba(0,0,0,0);border-top-width:inherit;border-bottom-width:inherit;border-color:var(--quarto-border-color)}table.gt_table th.gt_column_spanner_outer{color:var(--quarto-body-color);background-color:rgba(0,0,0,0);border-top-width:inherit;border-bottom-width:inherit;border-color:var(--quarto-border-color)}table.gt_table th.gt_col_heading{color:var(--quarto-body-color);font-weight:bold;background-color:rgba(0,0,0,0)}table.gt_table thead.gt_col_headings{border-bottom:1px solid currentColor;border-top-width:inherit;border-top-color:var(--quarto-border-color)}table.gt_table thead.gt_col_headings:not(:first-child){border-top-width:1px;border-top-color:var(--quarto-border-color)}table.gt_table td.gt_row{border-bottom-width:1px;border-bottom-color:var(--quarto-border-color);border-top-width:0px}table.gt_table tbody.gt_table_body{border-top-width:1px;border-bottom-width:1px;border-bottom-color:var(--quarto-border-color);border-top-color:currentColor}div.columns{display:initial;gap:initial}div.column{display:inline-block;overflow-x:initial;vertical-align:top;width:50%}.code-annotation-tip-content{word-wrap:break-word}.code-annotation-container-hidden{display:none !important}dl.code-annotation-container-grid{display:grid;grid-template-columns:min-content auto}dl.code-annotation-container-grid dt{grid-column:1}dl.code-annotation-container-grid dd{grid-column:2}pre.sourceCode.code-annotation-code{padding-right:0}code.sourceCode .code-annotation-anchor{z-index:100;position:absolute;right:.5em;left:inherit;background-color:rgba(0,0,0,0)}:root{--mermaid-bg-color: #ffffff;--mermaid-edge-color: #6c757d;--mermaid-node-fg-color: #212529;--mermaid-fg-color: #212529;--mermaid-fg-color--lighter: #383f45;--mermaid-fg-color--lightest: #4e5862;--mermaid-font-family: system-ui, -apple-system, Segoe UI, Roboto, Helvetica Neue, Arial, Noto Sans, Liberation Sans, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol, Noto Color Emoji;--mermaid-label-bg-color: #ffffff;--mermaid-label-fg-color: #0d6efd;--mermaid-node-bg-color: rgba(13, 110, 253, 0.1);--mermaid-node-fg-color: #212529}@media print{:root{font-size:11pt}#quarto-sidebar,#TOC,.nav-page{display:none}.page-columns .content{grid-column-start:page-start}.fixed-top{position:relative}.panel-caption,.figure-caption,figcaption{color:#666}}.code-copy-button{position:absolute;top:0;right:0;border:0;margin-top:5px;margin-right:5px;background-color:rgba(0,0,0,0);z-index:3}.code-copy-button:focus{outline:none}.code-copy-button-tooltip{font-size:.75em}pre.sourceCode:hover>.code-copy-button>.bi::before{display:inline-block;height:1rem;width:1rem;content:"";vertical-align:-0.125em;background-image:url('data:image/svg+xml,');background-repeat:no-repeat;background-size:1rem 1rem}pre.sourceCode:hover>.code-copy-button-checked>.bi::before{background-image:url('data:image/svg+xml,')}pre.sourceCode:hover>.code-copy-button:hover>.bi::before{background-image:url('data:image/svg+xml,')}pre.sourceCode:hover>.code-copy-button-checked:hover>.bi::before{background-image:url('data:image/svg+xml,')}main ol ol,main ul ul,main ol ul,main ul ol{margin-bottom:1em}ul>li:not(:has(>p))>ul,ol>li:not(:has(>p))>ul,ul>li:not(:has(>p))>ol,ol>li:not(:has(>p))>ol{margin-bottom:0}ul>li:not(:has(>p))>ul>li:has(>p),ol>li:not(:has(>p))>ul>li:has(>p),ul>li:not(:has(>p))>ol>li:has(>p),ol>li:not(:has(>p))>ol>li:has(>p){margin-top:1rem}body{margin:0}main.page-columns>header>h1.title,main.page-columns>header>.title.h1{margin-bottom:0}@media(min-width: 992px){body .page-columns{display:grid;gap:0;grid-template-columns:[screen-start] 1.5em [screen-start-inset] 5fr [page-start page-start-inset] 35px [body-start-outset] 35px [body-start] 1.5em [body-content-start] minmax(500px, calc( 850px - 3em )) [body-content-end] 1.5em [body-end] 35px [body-end-outset] minmax(75px, 145px) [page-end-inset] 35px [page-end] 5fr [screen-end-inset] 1.5em [screen-end]}body.fullcontent:not(.floating):not(.docked) .page-columns{display:grid;gap:0;grid-template-columns:[screen-start] 1.5em [screen-start-inset] 5fr [page-start page-start-inset] 35px [body-start-outset] 35px [body-start] 1.5em [body-content-start] minmax(500px, calc( 850px - 3em )) [body-content-end] 1.5em [body-end] 35px [body-end-outset] 35px [page-end-inset page-end] 5fr [screen-end-inset] 1.5em}body.slimcontent:not(.floating):not(.docked) .page-columns{display:grid;gap:0;grid-template-columns:[screen-start] 1.5em [screen-start-inset] 5fr [page-start page-start-inset] 35px [body-start-outset] 35px [body-start] 1.5em [body-content-start] minmax(500px, calc( 850px - 3em )) [body-content-end] 1.5em [body-end] 50px [body-end-outset] minmax(0px, 200px) [page-end-inset] 35px [page-end] 5fr [screen-end-inset] 1.5em [screen-end]}body.listing:not(.floating):not(.docked) .page-columns{display:grid;gap:0;grid-template-columns:[screen-start] 1.5em [screen-start-inset page-start] minmax(50px, 100px) [page-start-inset] 50px [body-start-outset] 50px [body-start] 1.5em [body-content-start] minmax(500px, calc( 850px - 3em )) [body-content-end] 3em [body-end] 50px [body-end-outset] minmax(0px, 250px) [page-end-inset] minmax(50px, 100px) [page-end] 1fr [screen-end-inset] 1.5em [screen-end]}body:not(.floating):not(.docked) .page-columns.toc-left{display:grid;gap:0;grid-template-columns:[screen-start] 1.5em [screen-start-inset] 5fr [page-start] 35px [page-start-inset] minmax(0px, 175px) [body-start-outset] 35px [body-start] 1.5em [body-content-start] minmax(450px, calc( 800px - 3em )) [body-content-end] 1.5em [body-end] 50px [body-end-outset] minmax(0px, 200px) [page-end-inset] 50px [page-end] 5fr [screen-end-inset] 1.5em [screen-end]}body:not(.floating):not(.docked) .page-columns.toc-left .page-columns{display:grid;gap:0;grid-template-columns:[screen-start] 1.5em [screen-start-inset] 5fr [page-start] 35px [page-start-inset] minmax(0px, 175px) [body-start-outset] 35px [body-start] 1.5em [body-content-start] minmax(450px, calc( 800px - 3em )) [body-content-end] 1.5em [body-end] 50px [body-end-outset] minmax(0px, 200px) [page-end-inset] 50px [page-end] 5fr [screen-end-inset] 1.5em [screen-end]}body.floating .page-columns{display:grid;gap:0;grid-template-columns:[screen-start] 1.5em [screen-start-inset] 5fr [page-start] minmax(25px, 50px) [page-start-inset] minmax(50px, 150px) [body-start-outset] minmax(25px, 50px) [body-start] 1.5em [body-content-start] minmax(500px, calc( 800px - 3em )) [body-content-end] 1.5em [body-end] minmax(25px, 50px) [body-end-outset] minmax(50px, 150px) [page-end-inset] minmax(25px, 50px) [page-end] 5fr [screen-end-inset] 1.5em [screen-end]}body.docked .page-columns{display:grid;gap:0;grid-template-columns:[screen-start] 1.5em [screen-start-inset page-start] minmax(50px, 100px) [page-start-inset] 50px [body-start-outset] 50px [body-start] 1.5em [body-content-start] minmax(500px, calc( 1000px - 3em )) [body-content-end] 1.5em [body-end] 50px [body-end-outset] minmax(50px, 100px) [page-end-inset] 50px [page-end] 5fr [screen-end-inset] 1.5em [screen-end]}body.docked.fullcontent .page-columns{display:grid;gap:0;grid-template-columns:[screen-start] 1.5em [screen-start-inset page-start] minmax(50px, 100px) [page-start-inset] 50px [body-start-outset] 50px [body-start] 1.5em [body-content-start] minmax(500px, calc( 1000px - 3em )) [body-content-end] 1.5em [body-end body-end-outset page-end-inset page-end] 5fr [screen-end-inset] 1.5em [screen-end]}body.floating.fullcontent .page-columns{display:grid;gap:0;grid-template-columns:[screen-start] 1.5em [screen-start-inset] 5fr [page-start] 50px [page-start-inset] minmax(50px, 150px) [body-start-outset] 50px [body-start] 1.5em [body-content-start] minmax(500px, calc( 800px - 3em )) [body-content-end] 1.5em [body-end body-end-outset page-end-inset page-end] 5fr [screen-end-inset] 1.5em [screen-end]}body.docked.slimcontent .page-columns{display:grid;gap:0;grid-template-columns:[screen-start] 1.5em [screen-start-inset page-start] minmax(50px, 100px) [page-start-inset] 50px [body-start-outset] 50px [body-start] 1.5em [body-content-start] minmax(450px, calc( 750px - 3em )) [body-content-end] 1.5em [body-end] 50px [body-end-outset] minmax(0px, 200px) [page-end-inset] 50px [page-end] 5fr [screen-end-inset] 1.5em [screen-end]}body.docked.listing .page-columns{display:grid;gap:0;grid-template-columns:[screen-start] 1.5em [screen-start-inset page-start] minmax(50px, 100px) [page-start-inset] 50px [body-start-outset] 50px [body-start] 1.5em [body-content-start] minmax(500px, calc( 1000px - 3em )) [body-content-end] 1.5em [body-end] 50px [body-end-outset] minmax(0px, 200px) [page-end-inset] 50px [page-end] 5fr [screen-end-inset] 1.5em [screen-end]}body.floating.slimcontent .page-columns{display:grid;gap:0;grid-template-columns:[screen-start] 1.5em [screen-start-inset] 5fr [page-start] 50px [page-start-inset] minmax(50px, 150px) [body-start-outset] 50px [body-start] 1.5em [body-content-start] minmax(450px, calc( 750px - 3em )) [body-content-end] 1.5em [body-end] 50px [body-end-outset] minmax(50px, 150px) [page-end-inset] 50px [page-end] 5fr [screen-end-inset] 1.5em [screen-end]}body.floating.listing .page-columns{display:grid;gap:0;grid-template-columns:[screen-start] 1.5em [screen-start-inset] 5fr [page-start] minmax(25px, 50px) [page-start-inset] minmax(50px, 150px) [body-start-outset] minmax(25px, 50px) [body-start] 1.5em [body-content-start] minmax(500px, calc( 800px - 3em )) [body-content-end] 1.5em [body-end] minmax(25px, 50px) [body-end-outset] minmax(50px, 150px) [page-end-inset] minmax(25px, 50px) [page-end] 5fr [screen-end-inset] 1.5em [screen-end]}}@media(max-width: 991.98px){body .page-columns{display:grid;gap:0;grid-template-columns:[screen-start] 1.5em [screen-start-inset page-start page-start-inset body-start-outset] 5fr [body-start] 1.5em [body-content-start] minmax(500px, calc( 800px - 3em )) [body-content-end] 1.5em [body-end] 35px [body-end-outset] minmax(75px, 145px) [page-end-inset] 35px [page-end] 5fr [screen-end-inset] 1.5em [screen-end]}body.fullcontent:not(.floating):not(.docked) .page-columns{display:grid;gap:0;grid-template-columns:[screen-start] 1.5em [screen-start-inset page-start page-start-inset body-start-outset] 5fr [body-start] 1.5em [body-content-start] minmax(500px, calc( 800px - 3em )) [body-content-end] 1.5em [body-end body-end-outset page-end-inset page-end] 5fr [screen-end-inset] 1.5em [screen-end]}body.slimcontent:not(.floating):not(.docked) .page-columns{display:grid;gap:0;grid-template-columns:[screen-start] 1.5em [screen-start-inset page-start page-start-inset body-start-outset] 5fr [body-start] 1.5em [body-content-start] minmax(500px, calc( 800px - 3em )) [body-content-end] 1.5em [body-end] 35px [body-end-outset] minmax(75px, 145px) [page-end-inset] 35px [page-end] 5fr [screen-end-inset] 1.5em [screen-end]}body.listing:not(.floating):not(.docked) .page-columns{display:grid;gap:0;grid-template-columns:[screen-start] 1.5em [screen-start-inset page-start page-start-inset body-start-outset] 5fr [body-start] 1.5em [body-content-start] minmax(500px, calc( 1250px - 3em )) [body-content-end body-end body-end-outset page-end-inset page-end] 5fr [screen-end-inset] 1.5em [screen-end]}body:not(.floating):not(.docked) .page-columns.toc-left{display:grid;gap:0;grid-template-columns:[screen-start] 1.5em [screen-start-inset] 5fr [page-start] 35px [page-start-inset] minmax(0px, 145px) [body-start-outset] 35px [body-start] 1.5em [body-content-start] minmax(450px, calc( 800px - 3em )) [body-content-end] 1.5em [body-end body-end-outset page-end-inset page-end] 5fr [screen-end-inset] 1.5em [screen-end]}body:not(.floating):not(.docked) .page-columns.toc-left .page-columns{display:grid;gap:0;grid-template-columns:[screen-start] 1.5em [screen-start-inset] 5fr [page-start] 35px [page-start-inset] minmax(0px, 145px) [body-start-outset] 35px [body-start] 1.5em [body-content-start] minmax(450px, calc( 800px - 3em )) [body-content-end] 1.5em [body-end body-end-outset page-end-inset page-end] 5fr [screen-end-inset] 1.5em [screen-end]}body.floating .page-columns{display:grid;gap:0;grid-template-columns:[screen-start] 1.5em [screen-start-inset] 5fr [page-start page-start-inset body-start-outset body-start] 1.5em [body-content-start] minmax(500px, calc( 750px - 3em )) [body-content-end] 1.5em [body-end] 50px [body-end-outset] minmax(75px, 150px) [page-end-inset] 25px [page-end] 5fr [screen-end-inset] 1.5em [screen-end]}body.docked .page-columns{display:grid;gap:0;grid-template-columns:[screen-start] 1.5em [screen-start-inset page-start page-start-inset body-start-outset body-start body-content-start] minmax(500px, calc( 750px - 3em )) [body-content-end] 1.5em [body-end] 50px [body-end-outset] minmax(25px, 50px) [page-end-inset] 50px [page-end] 5fr [screen-end-inset] 1.5em [screen-end]}body.docked.fullcontent .page-columns{display:grid;gap:0;grid-template-columns:[screen-start] 1.5em [screen-start-inset page-start page-start-inset body-start-outset body-start body-content-start] minmax(500px, calc( 1000px - 3em )) [body-content-end] 1.5em [body-end body-end-outset page-end-inset page-end] 5fr [screen-end-inset] 1.5em [screen-end]}body.floating.fullcontent .page-columns{display:grid;gap:0;grid-template-columns:[screen-start] 1.5em [screen-start-inset] 5fr [page-start page-start-inset body-start-outset body-start] 1em [body-content-start] minmax(500px, calc( 800px - 3em )) [body-content-end] 1.5em [body-end body-end-outset page-end-inset page-end] 4fr [screen-end-inset] 1.5em [screen-end]}body.docked.slimcontent .page-columns{display:grid;gap:0;grid-template-columns:[screen-start] 1.5em [screen-start-inset page-start page-start-inset body-start-outset body-start body-content-start] minmax(500px, calc( 750px - 3em )) [body-content-end] 1.5em [body-end] 50px [body-end-outset] minmax(25px, 50px) [page-end-inset] 50px [page-end] 5fr [screen-end-inset] 1.5em [screen-end]}body.docked.listing .page-columns{display:grid;gap:0;grid-template-columns:[screen-start] 1.5em [screen-start-inset page-start page-start-inset body-start-outset body-start body-content-start] minmax(500px, calc( 750px - 3em )) [body-content-end] 1.5em [body-end] 50px [body-end-outset] minmax(25px, 50px) [page-end-inset] 50px [page-end] 5fr [screen-end-inset] 1.5em [screen-end]}body.floating.slimcontent .page-columns{display:grid;gap:0;grid-template-columns:[screen-start] 1.5em [screen-start-inset] 5fr [page-start page-start-inset body-start-outset body-start] 1em [body-content-start] minmax(500px, calc( 750px - 3em )) [body-content-end] 1.5em [body-end] 35px [body-end-outset] minmax(75px, 145px) [page-end-inset] 35px [page-end] 4fr [screen-end-inset] 1.5em [screen-end]}body.floating.listing .page-columns{display:grid;gap:0;grid-template-columns:[screen-start] 1.5em [screen-start-inset] 5fr [page-start page-start-inset body-start-outset body-start] 1em [body-content-start] minmax(500px, calc( 750px - 3em )) [body-content-end] 1.5em [body-end] 50px [body-end-outset] minmax(75px, 150px) [page-end-inset] 25px [page-end] 4fr [screen-end-inset] 1.5em [screen-end]}}@media(max-width: 767.98px){body .page-columns,body.fullcontent:not(.floating):not(.docked) .page-columns,body.slimcontent:not(.floating):not(.docked) .page-columns,body.docked .page-columns,body.docked.slimcontent .page-columns,body.docked.fullcontent .page-columns,body.floating .page-columns,body.floating.slimcontent .page-columns,body.floating.fullcontent .page-columns{display:grid;gap:0;grid-template-columns:[screen-start] 1.5em [screen-start-inset page-start page-start-inset body-start-outset body-start body-content-start] minmax(0px, 1fr) [body-content-end body-end body-end-outset page-end-inset page-end screen-end-inset] 1.5em [screen-end]}body:not(.floating):not(.docked) .page-columns.toc-left{display:grid;gap:0;grid-template-columns:[screen-start] 1.5em [screen-start-inset page-start page-start-inset body-start-outset body-start body-content-start] minmax(0px, 1fr) [body-content-end body-end body-end-outset page-end-inset page-end screen-end-inset] 1.5em [screen-end]}body:not(.floating):not(.docked) .page-columns.toc-left .page-columns{display:grid;gap:0;grid-template-columns:[screen-start] 1.5em [screen-start-inset page-start page-start-inset body-start-outset body-start body-content-start] minmax(0px, 1fr) [body-content-end body-end body-end-outset page-end-inset page-end screen-end-inset] 1.5em [screen-end]}nav[role=doc-toc]{display:none}}body,.page-row-navigation{grid-template-rows:[page-top] max-content [contents-top] max-content [contents-bottom] max-content [page-bottom]}.page-rows-contents{grid-template-rows:[content-top] minmax(max-content, 1fr) [content-bottom] minmax(60px, max-content) [page-bottom]}.page-full{grid-column:screen-start/screen-end !important}.page-columns>*{grid-column:body-content-start/body-content-end}.page-columns.column-page>*{grid-column:page-start/page-end}.page-columns.column-page-left>*{grid-column:page-start/body-content-end}.page-columns.column-page-right>*{grid-column:body-content-start/page-end}.page-rows{grid-auto-rows:auto}.header{grid-column:screen-start/screen-end;grid-row:page-top/contents-top}#quarto-content{padding:0;grid-column:screen-start/screen-end;grid-row:contents-top/contents-bottom}body.floating .sidebar.sidebar-navigation{grid-column:page-start/body-start;grid-row:content-top/page-bottom}body.docked .sidebar.sidebar-navigation{grid-column:screen-start/body-start;grid-row:content-top/page-bottom}.sidebar.toc-left{grid-column:page-start/body-start;grid-row:content-top/page-bottom}.sidebar.margin-sidebar{grid-column:body-end/page-end;grid-row:content-top/page-bottom}.page-columns .content{grid-column:body-content-start/body-content-end;grid-row:content-top/content-bottom;align-content:flex-start}.page-columns .page-navigation{grid-column:body-content-start/body-content-end;grid-row:content-bottom/page-bottom}.page-columns .footer{grid-column:screen-start/screen-end;grid-row:contents-bottom/page-bottom}.page-columns .column-body{grid-column:body-content-start/body-content-end}.page-columns .column-body-fullbleed{grid-column:body-start/body-end}.page-columns .column-body-outset{grid-column:body-start-outset/body-end-outset;z-index:998;transform:translate3d(0, 0, 0)}.page-columns .column-body-outset table{background:#fff}.page-columns .column-body-outset-left{grid-column:body-start-outset/body-content-end;z-index:998;transform:translate3d(0, 0, 0)}.page-columns .column-body-outset-left table{background:#fff}.page-columns .column-body-outset-right{grid-column:body-content-start/body-end-outset;z-index:998;transform:translate3d(0, 0, 0)}.page-columns .column-body-outset-right table{background:#fff}.page-columns .column-page{grid-column:page-start/page-end;z-index:998;transform:translate3d(0, 0, 0)}.page-columns .column-page table{background:#fff}.page-columns .column-page-inset{grid-column:page-start-inset/page-end-inset;z-index:998;transform:translate3d(0, 0, 0)}.page-columns .column-page-inset table{background:#fff}.page-columns .column-page-inset-left{grid-column:page-start-inset/body-content-end;z-index:998;transform:translate3d(0, 0, 0)}.page-columns .column-page-inset-left table{background:#fff}.page-columns .column-page-inset-right{grid-column:body-content-start/page-end-inset;z-index:998;transform:translate3d(0, 0, 0)}.page-columns .column-page-inset-right figcaption table{background:#fff}.page-columns .column-page-left{grid-column:page-start/body-content-end;z-index:998;transform:translate3d(0, 0, 0)}.page-columns .column-page-left table{background:#fff}.page-columns .column-page-right{grid-column:body-content-start/page-end;z-index:998;transform:translate3d(0, 0, 0)}.page-columns .column-page-right figcaption table{background:#fff}#quarto-content.page-columns #quarto-margin-sidebar,#quarto-content.page-columns #quarto-sidebar{z-index:1}@media(max-width: 991.98px){#quarto-content.page-columns #quarto-margin-sidebar.collapse,#quarto-content.page-columns #quarto-sidebar.collapse,#quarto-content.page-columns #quarto-margin-sidebar.collapsing,#quarto-content.page-columns #quarto-sidebar.collapsing{z-index:1055}}#quarto-content.page-columns main.column-page,#quarto-content.page-columns main.column-page-right,#quarto-content.page-columns main.column-page-left{z-index:0}.page-columns .column-screen-inset{grid-column:screen-start-inset/screen-end-inset;z-index:998;transform:translate3d(0, 0, 0)}.page-columns .column-screen-inset table{background:#fff}.page-columns .column-screen-inset-left{grid-column:screen-start-inset/body-content-end;z-index:998;transform:translate3d(0, 0, 0)}.page-columns .column-screen-inset-left table{background:#fff}.page-columns .column-screen-inset-right{grid-column:body-content-start/screen-end-inset;z-index:998;transform:translate3d(0, 0, 0)}.page-columns .column-screen-inset-right table{background:#fff}.page-columns .column-screen{grid-column:screen-start/screen-end;z-index:998;transform:translate3d(0, 0, 0)}.page-columns .column-screen table{background:#fff}.page-columns .column-screen-left{grid-column:screen-start/body-content-end;z-index:998;transform:translate3d(0, 0, 0)}.page-columns .column-screen-left table{background:#fff}.page-columns .column-screen-right{grid-column:body-content-start/screen-end;z-index:998;transform:translate3d(0, 0, 0)}.page-columns .column-screen-right table{background:#fff}.page-columns .column-screen-inset-shaded{grid-column:screen-start/screen-end;padding:1em;background:#f8f9fa;z-index:998;transform:translate3d(0, 0, 0);margin-bottom:1em}.zindex-content{z-index:998;transform:translate3d(0, 0, 0)}.zindex-modal{z-index:1055;transform:translate3d(0, 0, 0)}.zindex-over-content{z-index:999;transform:translate3d(0, 0, 0)}img.img-fluid.column-screen,img.img-fluid.column-screen-inset-shaded,img.img-fluid.column-screen-inset,img.img-fluid.column-screen-inset-left,img.img-fluid.column-screen-inset-right,img.img-fluid.column-screen-left,img.img-fluid.column-screen-right{width:100%}@media(min-width: 992px){.margin-caption,div.aside,aside,.column-margin{grid-column:body-end/page-end !important;z-index:998}.column-sidebar{grid-column:page-start/body-start !important;z-index:998}.column-leftmargin{grid-column:screen-start-inset/body-start !important;z-index:998}.no-row-height{height:1em;overflow:visible}}@media(max-width: 991.98px){.margin-caption,div.aside,aside,.column-margin{grid-column:body-end/page-end !important;z-index:998}.no-row-height{height:1em;overflow:visible}.page-columns.page-full{overflow:visible}.page-columns.toc-left .margin-caption,.page-columns.toc-left div.aside,.page-columns.toc-left aside,.page-columns.toc-left .column-margin{grid-column:body-content-start/body-content-end !important;z-index:998;transform:translate3d(0, 0, 0)}.page-columns.toc-left .no-row-height{height:initial;overflow:initial}}@media(max-width: 767.98px){.margin-caption,div.aside,aside,.column-margin{grid-column:body-content-start/body-content-end !important;z-index:998;transform:translate3d(0, 0, 0)}.no-row-height{height:initial;overflow:initial}#quarto-margin-sidebar{display:none}#quarto-sidebar-toc-left{display:none}.hidden-sm{display:none}}.panel-grid{display:grid;grid-template-rows:repeat(1, 1fr);grid-template-columns:repeat(24, 1fr);gap:1em}.panel-grid .g-col-1{grid-column:auto/span 1}.panel-grid .g-col-2{grid-column:auto/span 2}.panel-grid .g-col-3{grid-column:auto/span 3}.panel-grid .g-col-4{grid-column:auto/span 4}.panel-grid .g-col-5{grid-column:auto/span 5}.panel-grid .g-col-6{grid-column:auto/span 6}.panel-grid .g-col-7{grid-column:auto/span 7}.panel-grid .g-col-8{grid-column:auto/span 8}.panel-grid .g-col-9{grid-column:auto/span 9}.panel-grid .g-col-10{grid-column:auto/span 10}.panel-grid .g-col-11{grid-column:auto/span 11}.panel-grid .g-col-12{grid-column:auto/span 12}.panel-grid .g-col-13{grid-column:auto/span 13}.panel-grid .g-col-14{grid-column:auto/span 14}.panel-grid .g-col-15{grid-column:auto/span 15}.panel-grid .g-col-16{grid-column:auto/span 16}.panel-grid .g-col-17{grid-column:auto/span 17}.panel-grid .g-col-18{grid-column:auto/span 18}.panel-grid .g-col-19{grid-column:auto/span 19}.panel-grid .g-col-20{grid-column:auto/span 20}.panel-grid .g-col-21{grid-column:auto/span 21}.panel-grid .g-col-22{grid-column:auto/span 22}.panel-grid .g-col-23{grid-column:auto/span 23}.panel-grid .g-col-24{grid-column:auto/span 24}.panel-grid .g-start-1{grid-column-start:1}.panel-grid .g-start-2{grid-column-start:2}.panel-grid .g-start-3{grid-column-start:3}.panel-grid .g-start-4{grid-column-start:4}.panel-grid .g-start-5{grid-column-start:5}.panel-grid .g-start-6{grid-column-start:6}.panel-grid .g-start-7{grid-column-start:7}.panel-grid .g-start-8{grid-column-start:8}.panel-grid .g-start-9{grid-column-start:9}.panel-grid .g-start-10{grid-column-start:10}.panel-grid .g-start-11{grid-column-start:11}.panel-grid .g-start-12{grid-column-start:12}.panel-grid .g-start-13{grid-column-start:13}.panel-grid .g-start-14{grid-column-start:14}.panel-grid .g-start-15{grid-column-start:15}.panel-grid .g-start-16{grid-column-start:16}.panel-grid .g-start-17{grid-column-start:17}.panel-grid .g-start-18{grid-column-start:18}.panel-grid .g-start-19{grid-column-start:19}.panel-grid .g-start-20{grid-column-start:20}.panel-grid .g-start-21{grid-column-start:21}.panel-grid .g-start-22{grid-column-start:22}.panel-grid .g-start-23{grid-column-start:23}@media(min-width: 576px){.panel-grid .g-col-sm-1{grid-column:auto/span 1}.panel-grid .g-col-sm-2{grid-column:auto/span 2}.panel-grid .g-col-sm-3{grid-column:auto/span 3}.panel-grid .g-col-sm-4{grid-column:auto/span 4}.panel-grid .g-col-sm-5{grid-column:auto/span 5}.panel-grid .g-col-sm-6{grid-column:auto/span 6}.panel-grid .g-col-sm-7{grid-column:auto/span 7}.panel-grid .g-col-sm-8{grid-column:auto/span 8}.panel-grid .g-col-sm-9{grid-column:auto/span 9}.panel-grid .g-col-sm-10{grid-column:auto/span 10}.panel-grid .g-col-sm-11{grid-column:auto/span 11}.panel-grid .g-col-sm-12{grid-column:auto/span 12}.panel-grid .g-col-sm-13{grid-column:auto/span 13}.panel-grid .g-col-sm-14{grid-column:auto/span 14}.panel-grid .g-col-sm-15{grid-column:auto/span 15}.panel-grid .g-col-sm-16{grid-column:auto/span 16}.panel-grid .g-col-sm-17{grid-column:auto/span 17}.panel-grid .g-col-sm-18{grid-column:auto/span 18}.panel-grid .g-col-sm-19{grid-column:auto/span 19}.panel-grid .g-col-sm-20{grid-column:auto/span 20}.panel-grid .g-col-sm-21{grid-column:auto/span 21}.panel-grid .g-col-sm-22{grid-column:auto/span 22}.panel-grid .g-col-sm-23{grid-column:auto/span 23}.panel-grid .g-col-sm-24{grid-column:auto/span 24}.panel-grid .g-start-sm-1{grid-column-start:1}.panel-grid .g-start-sm-2{grid-column-start:2}.panel-grid .g-start-sm-3{grid-column-start:3}.panel-grid .g-start-sm-4{grid-column-start:4}.panel-grid .g-start-sm-5{grid-column-start:5}.panel-grid .g-start-sm-6{grid-column-start:6}.panel-grid .g-start-sm-7{grid-column-start:7}.panel-grid .g-start-sm-8{grid-column-start:8}.panel-grid .g-start-sm-9{grid-column-start:9}.panel-grid .g-start-sm-10{grid-column-start:10}.panel-grid .g-start-sm-11{grid-column-start:11}.panel-grid .g-start-sm-12{grid-column-start:12}.panel-grid .g-start-sm-13{grid-column-start:13}.panel-grid .g-start-sm-14{grid-column-start:14}.panel-grid .g-start-sm-15{grid-column-start:15}.panel-grid .g-start-sm-16{grid-column-start:16}.panel-grid .g-start-sm-17{grid-column-start:17}.panel-grid .g-start-sm-18{grid-column-start:18}.panel-grid .g-start-sm-19{grid-column-start:19}.panel-grid .g-start-sm-20{grid-column-start:20}.panel-grid .g-start-sm-21{grid-column-start:21}.panel-grid .g-start-sm-22{grid-column-start:22}.panel-grid .g-start-sm-23{grid-column-start:23}}@media(min-width: 768px){.panel-grid .g-col-md-1{grid-column:auto/span 1}.panel-grid .g-col-md-2{grid-column:auto/span 2}.panel-grid .g-col-md-3{grid-column:auto/span 3}.panel-grid .g-col-md-4{grid-column:auto/span 4}.panel-grid .g-col-md-5{grid-column:auto/span 5}.panel-grid .g-col-md-6{grid-column:auto/span 6}.panel-grid .g-col-md-7{grid-column:auto/span 7}.panel-grid .g-col-md-8{grid-column:auto/span 8}.panel-grid .g-col-md-9{grid-column:auto/span 9}.panel-grid .g-col-md-10{grid-column:auto/span 10}.panel-grid .g-col-md-11{grid-column:auto/span 11}.panel-grid .g-col-md-12{grid-column:auto/span 12}.panel-grid .g-col-md-13{grid-column:auto/span 13}.panel-grid .g-col-md-14{grid-column:auto/span 14}.panel-grid .g-col-md-15{grid-column:auto/span 15}.panel-grid .g-col-md-16{grid-column:auto/span 16}.panel-grid .g-col-md-17{grid-column:auto/span 17}.panel-grid .g-col-md-18{grid-column:auto/span 18}.panel-grid .g-col-md-19{grid-column:auto/span 19}.panel-grid .g-col-md-20{grid-column:auto/span 20}.panel-grid .g-col-md-21{grid-column:auto/span 21}.panel-grid .g-col-md-22{grid-column:auto/span 22}.panel-grid .g-col-md-23{grid-column:auto/span 23}.panel-grid .g-col-md-24{grid-column:auto/span 24}.panel-grid .g-start-md-1{grid-column-start:1}.panel-grid .g-start-md-2{grid-column-start:2}.panel-grid .g-start-md-3{grid-column-start:3}.panel-grid .g-start-md-4{grid-column-start:4}.panel-grid .g-start-md-5{grid-column-start:5}.panel-grid .g-start-md-6{grid-column-start:6}.panel-grid .g-start-md-7{grid-column-start:7}.panel-grid .g-start-md-8{grid-column-start:8}.panel-grid .g-start-md-9{grid-column-start:9}.panel-grid .g-start-md-10{grid-column-start:10}.panel-grid .g-start-md-11{grid-column-start:11}.panel-grid .g-start-md-12{grid-column-start:12}.panel-grid .g-start-md-13{grid-column-start:13}.panel-grid .g-start-md-14{grid-column-start:14}.panel-grid .g-start-md-15{grid-column-start:15}.panel-grid .g-start-md-16{grid-column-start:16}.panel-grid .g-start-md-17{grid-column-start:17}.panel-grid .g-start-md-18{grid-column-start:18}.panel-grid .g-start-md-19{grid-column-start:19}.panel-grid .g-start-md-20{grid-column-start:20}.panel-grid .g-start-md-21{grid-column-start:21}.panel-grid .g-start-md-22{grid-column-start:22}.panel-grid .g-start-md-23{grid-column-start:23}}@media(min-width: 992px){.panel-grid .g-col-lg-1{grid-column:auto/span 1}.panel-grid .g-col-lg-2{grid-column:auto/span 2}.panel-grid .g-col-lg-3{grid-column:auto/span 3}.panel-grid .g-col-lg-4{grid-column:auto/span 4}.panel-grid .g-col-lg-5{grid-column:auto/span 5}.panel-grid .g-col-lg-6{grid-column:auto/span 6}.panel-grid .g-col-lg-7{grid-column:auto/span 7}.panel-grid .g-col-lg-8{grid-column:auto/span 8}.panel-grid .g-col-lg-9{grid-column:auto/span 9}.panel-grid .g-col-lg-10{grid-column:auto/span 10}.panel-grid .g-col-lg-11{grid-column:auto/span 11}.panel-grid .g-col-lg-12{grid-column:auto/span 12}.panel-grid .g-col-lg-13{grid-column:auto/span 13}.panel-grid .g-col-lg-14{grid-column:auto/span 14}.panel-grid .g-col-lg-15{grid-column:auto/span 15}.panel-grid .g-col-lg-16{grid-column:auto/span 16}.panel-grid .g-col-lg-17{grid-column:auto/span 17}.panel-grid .g-col-lg-18{grid-column:auto/span 18}.panel-grid .g-col-lg-19{grid-column:auto/span 19}.panel-grid .g-col-lg-20{grid-column:auto/span 20}.panel-grid .g-col-lg-21{grid-column:auto/span 21}.panel-grid .g-col-lg-22{grid-column:auto/span 22}.panel-grid .g-col-lg-23{grid-column:auto/span 23}.panel-grid .g-col-lg-24{grid-column:auto/span 24}.panel-grid .g-start-lg-1{grid-column-start:1}.panel-grid .g-start-lg-2{grid-column-start:2}.panel-grid .g-start-lg-3{grid-column-start:3}.panel-grid .g-start-lg-4{grid-column-start:4}.panel-grid .g-start-lg-5{grid-column-start:5}.panel-grid .g-start-lg-6{grid-column-start:6}.panel-grid .g-start-lg-7{grid-column-start:7}.panel-grid .g-start-lg-8{grid-column-start:8}.panel-grid .g-start-lg-9{grid-column-start:9}.panel-grid .g-start-lg-10{grid-column-start:10}.panel-grid .g-start-lg-11{grid-column-start:11}.panel-grid .g-start-lg-12{grid-column-start:12}.panel-grid .g-start-lg-13{grid-column-start:13}.panel-grid .g-start-lg-14{grid-column-start:14}.panel-grid .g-start-lg-15{grid-column-start:15}.panel-grid .g-start-lg-16{grid-column-start:16}.panel-grid .g-start-lg-17{grid-column-start:17}.panel-grid .g-start-lg-18{grid-column-start:18}.panel-grid .g-start-lg-19{grid-column-start:19}.panel-grid .g-start-lg-20{grid-column-start:20}.panel-grid .g-start-lg-21{grid-column-start:21}.panel-grid .g-start-lg-22{grid-column-start:22}.panel-grid .g-start-lg-23{grid-column-start:23}}@media(min-width: 1200px){.panel-grid .g-col-xl-1{grid-column:auto/span 1}.panel-grid .g-col-xl-2{grid-column:auto/span 2}.panel-grid .g-col-xl-3{grid-column:auto/span 3}.panel-grid .g-col-xl-4{grid-column:auto/span 4}.panel-grid .g-col-xl-5{grid-column:auto/span 5}.panel-grid .g-col-xl-6{grid-column:auto/span 6}.panel-grid .g-col-xl-7{grid-column:auto/span 7}.panel-grid .g-col-xl-8{grid-column:auto/span 8}.panel-grid .g-col-xl-9{grid-column:auto/span 9}.panel-grid .g-col-xl-10{grid-column:auto/span 10}.panel-grid .g-col-xl-11{grid-column:auto/span 11}.panel-grid .g-col-xl-12{grid-column:auto/span 12}.panel-grid .g-col-xl-13{grid-column:auto/span 13}.panel-grid .g-col-xl-14{grid-column:auto/span 14}.panel-grid .g-col-xl-15{grid-column:auto/span 15}.panel-grid .g-col-xl-16{grid-column:auto/span 16}.panel-grid .g-col-xl-17{grid-column:auto/span 17}.panel-grid .g-col-xl-18{grid-column:auto/span 18}.panel-grid .g-col-xl-19{grid-column:auto/span 19}.panel-grid .g-col-xl-20{grid-column:auto/span 20}.panel-grid .g-col-xl-21{grid-column:auto/span 21}.panel-grid .g-col-xl-22{grid-column:auto/span 22}.panel-grid .g-col-xl-23{grid-column:auto/span 23}.panel-grid .g-col-xl-24{grid-column:auto/span 24}.panel-grid .g-start-xl-1{grid-column-start:1}.panel-grid .g-start-xl-2{grid-column-start:2}.panel-grid .g-start-xl-3{grid-column-start:3}.panel-grid .g-start-xl-4{grid-column-start:4}.panel-grid .g-start-xl-5{grid-column-start:5}.panel-grid .g-start-xl-6{grid-column-start:6}.panel-grid .g-start-xl-7{grid-column-start:7}.panel-grid .g-start-xl-8{grid-column-start:8}.panel-grid .g-start-xl-9{grid-column-start:9}.panel-grid .g-start-xl-10{grid-column-start:10}.panel-grid .g-start-xl-11{grid-column-start:11}.panel-grid .g-start-xl-12{grid-column-start:12}.panel-grid .g-start-xl-13{grid-column-start:13}.panel-grid .g-start-xl-14{grid-column-start:14}.panel-grid .g-start-xl-15{grid-column-start:15}.panel-grid .g-start-xl-16{grid-column-start:16}.panel-grid .g-start-xl-17{grid-column-start:17}.panel-grid .g-start-xl-18{grid-column-start:18}.panel-grid .g-start-xl-19{grid-column-start:19}.panel-grid .g-start-xl-20{grid-column-start:20}.panel-grid .g-start-xl-21{grid-column-start:21}.panel-grid .g-start-xl-22{grid-column-start:22}.panel-grid .g-start-xl-23{grid-column-start:23}}@media(min-width: 1400px){.panel-grid .g-col-xxl-1{grid-column:auto/span 1}.panel-grid .g-col-xxl-2{grid-column:auto/span 2}.panel-grid .g-col-xxl-3{grid-column:auto/span 3}.panel-grid .g-col-xxl-4{grid-column:auto/span 4}.panel-grid .g-col-xxl-5{grid-column:auto/span 5}.panel-grid .g-col-xxl-6{grid-column:auto/span 6}.panel-grid .g-col-xxl-7{grid-column:auto/span 7}.panel-grid .g-col-xxl-8{grid-column:auto/span 8}.panel-grid .g-col-xxl-9{grid-column:auto/span 9}.panel-grid .g-col-xxl-10{grid-column:auto/span 10}.panel-grid .g-col-xxl-11{grid-column:auto/span 11}.panel-grid .g-col-xxl-12{grid-column:auto/span 12}.panel-grid .g-col-xxl-13{grid-column:auto/span 13}.panel-grid .g-col-xxl-14{grid-column:auto/span 14}.panel-grid .g-col-xxl-15{grid-column:auto/span 15}.panel-grid .g-col-xxl-16{grid-column:auto/span 16}.panel-grid .g-col-xxl-17{grid-column:auto/span 17}.panel-grid .g-col-xxl-18{grid-column:auto/span 18}.panel-grid .g-col-xxl-19{grid-column:auto/span 19}.panel-grid .g-col-xxl-20{grid-column:auto/span 20}.panel-grid .g-col-xxl-21{grid-column:auto/span 21}.panel-grid .g-col-xxl-22{grid-column:auto/span 22}.panel-grid .g-col-xxl-23{grid-column:auto/span 23}.panel-grid .g-col-xxl-24{grid-column:auto/span 24}.panel-grid .g-start-xxl-1{grid-column-start:1}.panel-grid .g-start-xxl-2{grid-column-start:2}.panel-grid .g-start-xxl-3{grid-column-start:3}.panel-grid .g-start-xxl-4{grid-column-start:4}.panel-grid .g-start-xxl-5{grid-column-start:5}.panel-grid .g-start-xxl-6{grid-column-start:6}.panel-grid .g-start-xxl-7{grid-column-start:7}.panel-grid .g-start-xxl-8{grid-column-start:8}.panel-grid .g-start-xxl-9{grid-column-start:9}.panel-grid .g-start-xxl-10{grid-column-start:10}.panel-grid .g-start-xxl-11{grid-column-start:11}.panel-grid .g-start-xxl-12{grid-column-start:12}.panel-grid .g-start-xxl-13{grid-column-start:13}.panel-grid .g-start-xxl-14{grid-column-start:14}.panel-grid .g-start-xxl-15{grid-column-start:15}.panel-grid .g-start-xxl-16{grid-column-start:16}.panel-grid .g-start-xxl-17{grid-column-start:17}.panel-grid .g-start-xxl-18{grid-column-start:18}.panel-grid .g-start-xxl-19{grid-column-start:19}.panel-grid .g-start-xxl-20{grid-column-start:20}.panel-grid .g-start-xxl-21{grid-column-start:21}.panel-grid .g-start-xxl-22{grid-column-start:22}.panel-grid .g-start-xxl-23{grid-column-start:23}}main{margin-top:1em;margin-bottom:1em}h1,.h1,h2,.h2{opacity:.9;margin-top:2rem;margin-bottom:1rem;font-weight:600}h1.title,.title.h1{margin-top:0}h2,.h2{border-bottom:1px solid #dee2e6;padding-bottom:.5rem}h3,.h3{font-weight:600}h3,.h3,h4,.h4{opacity:.9;margin-top:1.5rem}h5,.h5,h6,.h6{opacity:.9}.header-section-number{color:#5a6570}.nav-link.active .header-section-number{color:inherit}mark,.mark{padding:0em}.panel-caption,caption,.figure-caption{font-size:.9rem}.panel-caption,.figure-caption,figcaption{color:#5a6570}.table-caption,caption{color:#212529}.quarto-layout-cell[data-ref-parent] caption{color:#5a6570}.column-margin figcaption,.margin-caption,div.aside,aside,.column-margin{color:#5a6570;font-size:.825rem}.panel-caption.margin-caption{text-align:inherit}.column-margin.column-container p{margin-bottom:0}.column-margin.column-container>*:not(.collapse){padding-top:.5em;padding-bottom:.5em;display:block}.column-margin.column-container>*.collapse:not(.show){display:none}@media(min-width: 768px){.column-margin.column-container .callout-margin-content:first-child{margin-top:4.5em}.column-margin.column-container .callout-margin-content-simple:first-child{margin-top:3.5em}}.margin-caption>*{padding-top:.5em;padding-bottom:.5em}@media(max-width: 767.98px){.quarto-layout-row{flex-direction:column}}.nav-tabs .nav-item{margin-top:1px;cursor:pointer}.tab-content{margin-top:0px;border-left:#dee2e6 1px solid;border-right:#dee2e6 1px solid;border-bottom:#dee2e6 1px solid;margin-left:0;padding:1em;margin-bottom:1em}@media(max-width: 767.98px){.layout-sidebar{margin-left:0;margin-right:0}}.panel-sidebar,.panel-sidebar .form-control,.panel-input,.panel-input .form-control,.selectize-dropdown{font-size:.9rem}.panel-sidebar .form-control,.panel-input .form-control{padding-top:.1rem}.tab-pane div.sourceCode{margin-top:0px}.tab-pane>p{padding-top:1em}.tab-content>.tab-pane:not(.active){display:none !important}div.sourceCode{background-color:rgba(233,236,239,.65);border:1px solid rgba(233,236,239,.65);border-radius:.25rem}pre.sourceCode{background-color:rgba(0,0,0,0)}pre.sourceCode{border:none;font-size:.875em;overflow:visible !important;padding:.4em}.callout pre.sourceCode{padding-left:0}div.sourceCode{overflow-y:hidden}.callout div.sourceCode{margin-left:initial}.blockquote{font-size:inherit;padding-left:1rem;padding-right:1.5rem;color:#5a6570}.blockquote h1:first-child,.blockquote .h1:first-child,.blockquote h2:first-child,.blockquote .h2:first-child,.blockquote h3:first-child,.blockquote .h3:first-child,.blockquote h4:first-child,.blockquote .h4:first-child,.blockquote h5:first-child,.blockquote .h5:first-child{margin-top:0}pre{background-color:initial;padding:initial;border:initial}p code:not(.sourceCode),li code:not(.sourceCode),td code:not(.sourceCode){background-color:#f6f6f6;padding:.2em}nav p code:not(.sourceCode),nav li code:not(.sourceCode),nav td code:not(.sourceCode){background-color:rgba(0,0,0,0);padding:0}td code:not(.sourceCode){white-space:pre-wrap}#quarto-embedded-source-code-modal>.modal-dialog{max-width:1000px;padding-left:1.75rem;padding-right:1.75rem}#quarto-embedded-source-code-modal>.modal-dialog>.modal-content>.modal-body{padding:0}#quarto-embedded-source-code-modal>.modal-dialog>.modal-content>.modal-body div.sourceCode{margin:0;padding:.2rem .2rem;border-radius:0px;border:none}#quarto-embedded-source-code-modal>.modal-dialog>.modal-content>.modal-header{padding:.7rem}.code-tools-button{font-size:1rem;padding:.15rem .15rem;margin-left:5px;color:#6c757d;background-color:rgba(0,0,0,0);transition:initial;cursor:pointer}.code-tools-button>.bi::before{display:inline-block;height:1rem;width:1rem;content:"";vertical-align:-0.125em;background-image:url('data:image/svg+xml,');background-repeat:no-repeat;background-size:1rem 1rem}.code-tools-button:hover>.bi::before{background-image:url('data:image/svg+xml,')}#quarto-embedded-source-code-modal .code-copy-button>.bi::before{background-image:url('data:image/svg+xml,')}#quarto-embedded-source-code-modal .code-copy-button-checked>.bi::before{background-image:url('data:image/svg+xml,')}.sidebar{will-change:top;transition:top 200ms linear;position:sticky;overflow-y:auto;padding-top:1.2em;max-height:100vh}.sidebar.toc-left,.sidebar.margin-sidebar{top:0px;padding-top:1em}.sidebar.toc-left>*,.sidebar.margin-sidebar>*{padding-top:.5em}.sidebar.quarto-banner-title-block-sidebar>*{padding-top:1.65em}figure .quarto-notebook-link{margin-top:.5em}.quarto-notebook-link{font-size:.75em;color:#6c757d;margin-bottom:1em;text-decoration:none;display:block}.quarto-notebook-link:hover{text-decoration:underline;color:#0d6efd}.quarto-notebook-link::before{display:inline-block;height:.75rem;width:.75rem;margin-bottom:0em;margin-right:.25em;content:"";vertical-align:-0.125em;background-image:url('data:image/svg+xml,');background-repeat:no-repeat;background-size:.75rem .75rem}.quarto-alternate-notebooks i.bi,.quarto-alternate-formats i.bi{margin-right:.4em}.quarto-notebook .cell-container{display:flex}.quarto-notebook .cell-container .cell{flex-grow:4}.quarto-notebook .cell-container .cell-decorator{padding-top:1.5em;padding-right:1em;text-align:right}.quarto-notebook h2,.quarto-notebook .h2{border-bottom:none}.sidebar .quarto-alternate-formats a,.sidebar .quarto-alternate-notebooks a{text-decoration:none}.sidebar .quarto-alternate-formats a:hover,.sidebar .quarto-alternate-notebooks a:hover{color:#0d6efd}.sidebar .quarto-alternate-notebooks h2,.sidebar .quarto-alternate-notebooks .h2,.sidebar .quarto-alternate-formats h2,.sidebar .quarto-alternate-formats .h2,.sidebar nav[role=doc-toc]>h2,.sidebar nav[role=doc-toc]>.h2{font-size:.875rem;font-weight:400;margin-bottom:.5rem;margin-top:.3rem;font-family:inherit;border-bottom:0;padding-bottom:0;padding-top:0px}.sidebar .quarto-alternate-notebooks h2,.sidebar .quarto-alternate-notebooks .h2,.sidebar .quarto-alternate-formats h2,.sidebar .quarto-alternate-formats .h2{margin-top:1rem}.sidebar nav[role=doc-toc]>ul a{border-left:1px solid #e9ecef;padding-left:.6rem}.sidebar .quarto-alternate-notebooks h2>ul a,.sidebar .quarto-alternate-notebooks .h2>ul a,.sidebar .quarto-alternate-formats h2>ul a,.sidebar .quarto-alternate-formats .h2>ul a{border-left:none;padding-left:.6rem}.sidebar .quarto-alternate-notebooks ul a:empty,.sidebar .quarto-alternate-formats ul a:empty,.sidebar nav[role=doc-toc]>ul a:empty{display:none}.sidebar .quarto-alternate-notebooks ul,.sidebar .quarto-alternate-formats ul,.sidebar nav[role=doc-toc] ul{padding-left:0;list-style:none;font-size:.875rem;font-weight:300}.sidebar .quarto-alternate-notebooks ul li a,.sidebar .quarto-alternate-formats ul li a,.sidebar nav[role=doc-toc]>ul li a{line-height:1.1rem;padding-bottom:.2rem;padding-top:.2rem;color:inherit}.sidebar nav[role=doc-toc] ul>li>ul>li>a{padding-left:1.2em}.sidebar nav[role=doc-toc] ul>li>ul>li>ul>li>a{padding-left:2.4em}.sidebar nav[role=doc-toc] ul>li>ul>li>ul>li>ul>li>a{padding-left:3.6em}.sidebar nav[role=doc-toc] ul>li>ul>li>ul>li>ul>li>ul>li>a{padding-left:4.8em}.sidebar nav[role=doc-toc] ul>li>ul>li>ul>li>ul>li>ul>li>ul>li>a{padding-left:6em}.sidebar nav[role=doc-toc] ul>li>a.active,.sidebar nav[role=doc-toc] ul>li>ul>li>a.active{border-left:1px solid #0d6efd;color:#0d6efd !important}.sidebar nav[role=doc-toc] ul>li>a:hover,.sidebar nav[role=doc-toc] ul>li>ul>li>a:hover{color:#0d6efd !important}kbd,.kbd{color:#212529;background-color:#f8f9fa;border:1px solid;border-radius:5px;border-color:#dee2e6}div.hanging-indent{margin-left:1em;text-indent:-1em}.citation a,.footnote-ref{text-decoration:none}.footnotes ol{padding-left:1em}.tippy-content>*{margin-bottom:.7em}.tippy-content>*:last-child{margin-bottom:0}.table a{word-break:break-word}.table>thead{border-top-width:1px;border-top-color:#dee2e6;border-bottom:1px solid #9ba5ae}.callout{margin-top:1.25rem;margin-bottom:1.25rem;border-radius:.25rem;overflow-wrap:break-word}.callout .callout-title-container{overflow-wrap:anywhere}.callout.callout-style-simple{padding:.4em .7em;border-left:5px solid;border-right:1px solid #dee2e6;border-top:1px solid #dee2e6;border-bottom:1px solid #dee2e6}.callout.callout-style-default{border-left:5px solid;border-right:1px solid #dee2e6;border-top:1px solid #dee2e6;border-bottom:1px solid #dee2e6}.callout .callout-body-container{flex-grow:1}.callout.callout-style-simple .callout-body{font-size:.9rem;font-weight:400}.callout.callout-style-default .callout-body{font-size:.9rem;font-weight:400}.callout.callout-titled .callout-body{margin-top:.2em}.callout:not(.no-icon).callout-titled.callout-style-simple .callout-body{padding-left:1.6em}.callout.callout-titled>.callout-header{padding-top:.2em;margin-bottom:-0.2em}.callout.callout-style-simple>div.callout-header{border-bottom:none;font-size:.9rem;font-weight:600;opacity:75%}.callout.callout-style-default>div.callout-header{border-bottom:none;font-weight:600;opacity:85%;font-size:.9rem;padding-left:.5em;padding-right:.5em}.callout.callout-style-default div.callout-body{padding-left:.5em;padding-right:.5em}.callout.callout-style-default div.callout-body>:first-child{margin-top:.5em}.callout>div.callout-header[data-bs-toggle=collapse]{cursor:pointer}.callout.callout-style-default .callout-header[aria-expanded=false],.callout.callout-style-default .callout-header[aria-expanded=true]{padding-top:0px;margin-bottom:0px;align-items:center}.callout.callout-titled .callout-body>:last-child:not(.sourceCode),.callout.callout-titled .callout-body>div>:last-child:not(.sourceCode){margin-bottom:.5rem}.callout:not(.callout-titled) .callout-body>:first-child,.callout:not(.callout-titled) .callout-body>div>:first-child{margin-top:.25rem}.callout:not(.callout-titled) .callout-body>:last-child,.callout:not(.callout-titled) .callout-body>div>:last-child{margin-bottom:.2rem}.callout.callout-style-simple .callout-icon::before,.callout.callout-style-simple .callout-toggle::before{height:1rem;width:1rem;display:inline-block;content:"";background-repeat:no-repeat;background-size:1rem 1rem}.callout.callout-style-default .callout-icon::before,.callout.callout-style-default .callout-toggle::before{height:.9rem;width:.9rem;display:inline-block;content:"";background-repeat:no-repeat;background-size:.9rem .9rem}.callout.callout-style-default .callout-toggle::before{margin-top:5px}.callout .callout-btn-toggle .callout-toggle::before{transition:transform .2s linear}.callout .callout-header[aria-expanded=false] .callout-toggle::before{transform:rotate(-90deg)}.callout .callout-header[aria-expanded=true] .callout-toggle::before{transform:none}.callout.callout-style-simple:not(.no-icon) div.callout-icon-container{padding-top:.2em;padding-right:.55em}.callout.callout-style-default:not(.no-icon) div.callout-icon-container{padding-top:.1em;padding-right:.35em}.callout.callout-style-default:not(.no-icon) div.callout-title-container{margin-top:-1px}.callout.callout-style-default.callout-caution:not(.no-icon) div.callout-icon-container{padding-top:.3em;padding-right:.35em}.callout>.callout-body>.callout-icon-container>.no-icon,.callout>.callout-header>.callout-icon-container>.no-icon{display:none}div.callout.callout{border-left-color:#6c757d}div.callout.callout-style-default>.callout-header{background-color:#6c757d}div.callout-note.callout{border-left-color:#0d6efd}div.callout-note.callout-style-default>.callout-header{background-color:#e7f1ff}div.callout-note:not(.callout-titled) .callout-icon::before{background-image:url('data:image/svg+xml,');}div.callout-note.callout-titled .callout-icon::before{background-image:url('data:image/svg+xml,');}div.callout-note .callout-toggle::before{background-image:url('data:image/svg+xml,')}div.callout-tip.callout{border-left-color:#198754}div.callout-tip.callout-style-default>.callout-header{background-color:#e8f3ee}div.callout-tip:not(.callout-titled) .callout-icon::before{background-image:url('data:image/svg+xml,');}div.callout-tip.callout-titled .callout-icon::before{background-image:url('data:image/svg+xml,');}div.callout-tip .callout-toggle::before{background-image:url('data:image/svg+xml,')}div.callout-warning.callout{border-left-color:#ffc107}div.callout-warning.callout-style-default>.callout-header{background-color:#fff9e6}div.callout-warning:not(.callout-titled) .callout-icon::before{background-image:url('data:image/svg+xml,');}div.callout-warning.callout-titled .callout-icon::before{background-image:url('data:image/svg+xml,');}div.callout-warning .callout-toggle::before{background-image:url('data:image/svg+xml,')}div.callout-caution.callout{border-left-color:#fd7e14}div.callout-caution.callout-style-default>.callout-header{background-color:#fff2e8}div.callout-caution:not(.callout-titled) .callout-icon::before{background-image:url('data:image/svg+xml,');}div.callout-caution.callout-titled .callout-icon::before{background-image:url('data:image/svg+xml,');}div.callout-caution .callout-toggle::before{background-image:url('data:image/svg+xml,')}div.callout-important.callout{border-left-color:#dc3545}div.callout-important.callout-style-default>.callout-header{background-color:#fcebec}div.callout-important:not(.callout-titled) .callout-icon::before{background-image:url('data:image/svg+xml,');}div.callout-important.callout-titled .callout-icon::before{background-image:url('data:image/svg+xml,');}div.callout-important .callout-toggle::before{background-image:url('data:image/svg+xml,')}.quarto-toggle-container{display:flex;align-items:center}.quarto-reader-toggle .bi::before,.quarto-color-scheme-toggle .bi::before{display:inline-block;height:1rem;width:1rem;content:"";background-repeat:no-repeat;background-size:1rem 1rem}.sidebar-navigation{padding-left:20px}.navbar .quarto-color-scheme-toggle:not(.alternate) .bi::before{background-image:url('data:image/svg+xml,')}.navbar .quarto-color-scheme-toggle.alternate .bi::before{background-image:url('data:image/svg+xml,')}.sidebar-navigation .quarto-color-scheme-toggle:not(.alternate) .bi::before{background-image:url('data:image/svg+xml,')}.sidebar-navigation .quarto-color-scheme-toggle.alternate .bi::before{background-image:url('data:image/svg+xml,')}.quarto-sidebar-toggle{border-color:#dee2e6;border-bottom-left-radius:.25rem;border-bottom-right-radius:.25rem;border-style:solid;border-width:1px;overflow:hidden;border-top-width:0px;padding-top:0px !important}.quarto-sidebar-toggle-title{cursor:pointer;padding-bottom:2px;margin-left:.25em;text-align:center;font-weight:400;font-size:.775em}#quarto-content .quarto-sidebar-toggle{background:#fafafa}#quarto-content .quarto-sidebar-toggle-title{color:#212529}.quarto-sidebar-toggle-icon{color:#dee2e6;margin-right:.5em;float:right;transition:transform .2s ease}.quarto-sidebar-toggle-icon::before{padding-top:5px}.quarto-sidebar-toggle.expanded .quarto-sidebar-toggle-icon{transform:rotate(-180deg)}.quarto-sidebar-toggle.expanded .quarto-sidebar-toggle-title{border-bottom:solid #dee2e6 1px}.quarto-sidebar-toggle-contents{background-color:#fff;padding-right:10px;padding-left:10px;margin-top:0px !important;transition:max-height .5s ease}.quarto-sidebar-toggle.expanded .quarto-sidebar-toggle-contents{padding-top:1em;padding-bottom:10px}.quarto-sidebar-toggle:not(.expanded) .quarto-sidebar-toggle-contents{padding-top:0px !important;padding-bottom:0px}nav[role=doc-toc]{z-index:1020}#quarto-sidebar>*,nav[role=doc-toc]>*{transition:opacity .1s ease,border .1s ease}#quarto-sidebar.slow>*,nav[role=doc-toc].slow>*{transition:opacity .4s ease,border .4s ease}.quarto-color-scheme-toggle:not(.alternate).top-right .bi::before{background-image:url('data:image/svg+xml,')}.quarto-color-scheme-toggle.alternate.top-right .bi::before{background-image:url('data:image/svg+xml,')}#quarto-appendix.default{border-top:1px solid #dee2e6}#quarto-appendix.default{background-color:#fff;padding-top:1.5em;margin-top:2em;z-index:998}#quarto-appendix.default .quarto-appendix-heading{margin-top:0;line-height:1.4em;font-weight:600;opacity:.9;border-bottom:none;margin-bottom:0}#quarto-appendix.default .footnotes ol,#quarto-appendix.default .footnotes ol li>p:last-of-type,#quarto-appendix.default .quarto-appendix-contents>p:last-of-type{margin-bottom:0}#quarto-appendix.default .quarto-appendix-secondary-label{margin-bottom:.4em}#quarto-appendix.default .quarto-appendix-bibtex{font-size:.7em;padding:1em;border:solid 1px #dee2e6;margin-bottom:1em}#quarto-appendix.default .quarto-appendix-bibtex code.sourceCode{white-space:pre-wrap}#quarto-appendix.default .quarto-appendix-citeas{font-size:.9em;padding:1em;border:solid 1px #dee2e6;margin-bottom:1em}#quarto-appendix.default .quarto-appendix-heading{font-size:1em !important}#quarto-appendix.default *[role=doc-endnotes]>ol,#quarto-appendix.default .quarto-appendix-contents>*:not(h2):not(.h2){font-size:.9em}#quarto-appendix.default section{padding-bottom:1.5em}#quarto-appendix.default section *[role=doc-endnotes],#quarto-appendix.default section>*:not(a){opacity:.9;word-wrap:break-word}.btn.btn-quarto,div.cell-output-display .btn-quarto{color:#fefefe;background-color:#6c757d;border-color:#6c757d}.btn.btn-quarto:hover,div.cell-output-display .btn-quarto:hover{color:#fefefe;background-color:#828a91;border-color:#7b838a}.btn-check:focus+.btn.btn-quarto,.btn.btn-quarto:focus,.btn-check:focus+div.cell-output-display .btn-quarto,div.cell-output-display .btn-quarto:focus{color:#fefefe;background-color:#828a91;border-color:#7b838a;box-shadow:0 0 0 .25rem rgba(130,138,144,.5)}.btn-check:checked+.btn.btn-quarto,.btn-check:active+.btn.btn-quarto,.btn.btn-quarto:active,.btn.btn-quarto.active,.show>.btn.btn-quarto.dropdown-toggle,.btn-check:checked+div.cell-output-display .btn-quarto,.btn-check:active+div.cell-output-display .btn-quarto,div.cell-output-display .btn-quarto:active,div.cell-output-display .btn-quarto.active,.show>div.cell-output-display .btn-quarto.dropdown-toggle{color:#000;background-color:#899197;border-color:#7b838a}.btn-check:checked+.btn.btn-quarto:focus,.btn-check:active+.btn.btn-quarto:focus,.btn.btn-quarto:active:focus,.btn.btn-quarto.active:focus,.show>.btn.btn-quarto.dropdown-toggle:focus,.btn-check:checked+div.cell-output-display .btn-quarto:focus,.btn-check:active+div.cell-output-display .btn-quarto:focus,div.cell-output-display .btn-quarto:active:focus,div.cell-output-display .btn-quarto.active:focus,.show>div.cell-output-display .btn-quarto.dropdown-toggle:focus{box-shadow:0 0 0 .25rem rgba(130,138,144,.5)}.btn.btn-quarto:disabled,.btn.btn-quarto.disabled,div.cell-output-display .btn-quarto:disabled,div.cell-output-display .btn-quarto.disabled{color:#fff;background-color:#6c757d;border-color:#6c757d}nav.quarto-secondary-nav.color-navbar{background-color:#0d6efd;color:#fdfeff}nav.quarto-secondary-nav.color-navbar h1,nav.quarto-secondary-nav.color-navbar .h1,nav.quarto-secondary-nav.color-navbar .quarto-btn-toggle{color:#fdfeff}@media(max-width: 991.98px){body.nav-sidebar .quarto-title-banner{margin-bottom:0;padding-bottom:0}body.nav-sidebar #title-block-header{margin-block-end:0}}p.subtitle{margin-top:.25em;margin-bottom:.5em}code a:any-link{color:inherit;text-decoration-color:#6c757d}/*! light */div.observablehq table thead tr th{background-color:var(--bs-body-bg)}input,button,select,optgroup,textarea{background-color:var(--bs-body-bg)}.code-annotated .code-copy-button{margin-right:1.25em;margin-top:0;padding-bottom:0;padding-top:3px}.code-annotation-gutter-bg{background-color:#fff}.code-annotation-gutter{background-color:rgba(233,236,239,.65)}.code-annotation-gutter,.code-annotation-gutter-bg{height:100%;width:calc(20px + .5em);position:absolute;top:0;right:0}dl.code-annotation-container-grid dt{margin-right:1em;margin-top:.25rem}dl.code-annotation-container-grid dt{font-family:var(--bs-font-monospace);color:#383f45;border:solid #383f45 1px;border-radius:50%;height:22px;width:22px;line-height:22px;font-size:11px;text-align:center;vertical-align:middle;text-decoration:none}dl.code-annotation-container-grid dt[data-target-cell]{cursor:pointer}dl.code-annotation-container-grid dt[data-target-cell].code-annotation-active{color:#fff;border:solid #aaa 1px;background-color:#aaa}pre.code-annotation-code{padding-top:0;padding-bottom:0}pre.code-annotation-code code{z-index:3}#code-annotation-line-highlight-gutter{width:100%;border-top:solid rgba(170,170,170,.2666666667) 1px;border-bottom:solid rgba(170,170,170,.2666666667) 1px;z-index:2;background-color:rgba(170,170,170,.1333333333)}#code-annotation-line-highlight{margin-left:-4em;width:calc(100% + 4em);border-top:solid rgba(170,170,170,.2666666667) 1px;border-bottom:solid rgba(170,170,170,.2666666667) 1px;z-index:2;background-color:rgba(170,170,170,.1333333333)}code.sourceCode .code-annotation-anchor.code-annotation-active{background-color:var(--quarto-hl-normal-color, #aaaaaa);border:solid var(--quarto-hl-normal-color, #aaaaaa) 1px;color:#e9ecef;font-weight:bolder}code.sourceCode .code-annotation-anchor{font-family:var(--bs-font-monospace);color:var(--quarto-hl-co-color);border:solid var(--quarto-hl-co-color) 1px;border-radius:50%;height:18px;width:18px;font-size:9px;margin-top:2px}code.sourceCode button.code-annotation-anchor{padding:2px}code.sourceCode a.code-annotation-anchor{line-height:18px;text-align:center;vertical-align:middle;cursor:default;text-decoration:none}@media print{.page-columns .column-screen-inset{grid-column:page-start-inset/page-end-inset;z-index:998;transform:translate3d(0, 0, 0)}.page-columns .column-screen-inset table{background:#fff}.page-columns .column-screen-inset-left{grid-column:page-start-inset/body-content-end;z-index:998;transform:translate3d(0, 0, 0)}.page-columns .column-screen-inset-left table{background:#fff}.page-columns .column-screen-inset-right{grid-column:body-content-start/page-end-inset;z-index:998;transform:translate3d(0, 0, 0)}.page-columns .column-screen-inset-right table{background:#fff}.page-columns .column-screen{grid-column:page-start/page-end;z-index:998;transform:translate3d(0, 0, 0)}.page-columns .column-screen table{background:#fff}.page-columns .column-screen-left{grid-column:page-start/body-content-end;z-index:998;transform:translate3d(0, 0, 0)}.page-columns .column-screen-left table{background:#fff}.page-columns .column-screen-right{grid-column:body-content-start/page-end;z-index:998;transform:translate3d(0, 0, 0)}.page-columns .column-screen-right table{background:#fff}.page-columns .column-screen-inset-shaded{grid-column:page-start-inset/page-end-inset;padding:1em;background:#f8f9fa;z-index:998;transform:translate3d(0, 0, 0);margin-bottom:1em}}.quarto-video{margin-bottom:1em}.table>thead{border-top-width:0}.table>:not(caption)>*:not(:last-child)>*{border-bottom-color:#d3d8dc;border-bottom-style:solid;border-bottom-width:1px}.table>:not(:first-child){border-top:1px solid #9ba5ae;border-bottom:1px solid inherit}.table tbody{border-bottom-color:#9ba5ae}a.external:after{display:inline-block;height:.75rem;width:.75rem;margin-bottom:.15em;margin-left:.25em;content:"";vertical-align:-0.125em;background-image:url('data:image/svg+xml,');background-repeat:no-repeat;background-size:.75rem .75rem}div.sourceCode code a.external:after{content:none}a.external:after:hover{cursor:pointer}.quarto-ext-icon{display:inline-block;font-size:.75em;padding-left:.3em}.code-with-filename .code-with-filename-file{margin-bottom:0;padding-bottom:2px;padding-top:2px;padding-left:.7em;border:var(--quarto-border-width) solid var(--quarto-border-color);border-radius:var(--quarto-border-radius);border-bottom:0;border-bottom-left-radius:0%;border-bottom-right-radius:0%}.code-with-filename div.sourceCode,.reveal .code-with-filename div.sourceCode{margin-top:0;border-top-left-radius:0%;border-top-right-radius:0%}.code-with-filename .code-with-filename-file pre{margin-bottom:0}.code-with-filename .code-with-filename-file,.code-with-filename .code-with-filename-file pre{background-color:rgba(219,219,219,.8)}.quarto-dark .code-with-filename .code-with-filename-file,.quarto-dark .code-with-filename .code-with-filename-file pre{background-color:#555}.code-with-filename .code-with-filename-file strong{font-weight:400}.quarto-title-banner{margin-bottom:1em;color:#fdfeff;background:#0d6efd}.quarto-title-banner .code-tools-button{color:#97cbff}.quarto-title-banner .code-tools-button:hover{color:#fdfeff}.quarto-title-banner .code-tools-button>.bi::before{background-image:url('data:image/svg+xml,')}.quarto-title-banner .code-tools-button:hover>.bi::before{background-image:url('data:image/svg+xml,')}.quarto-title-banner .quarto-title .title{font-weight:600}.quarto-title-banner .quarto-categories{margin-top:.75em}@media(min-width: 992px){.quarto-title-banner{padding-top:2.5em;padding-bottom:2.5em}}@media(max-width: 991.98px){.quarto-title-banner{padding-top:1em;padding-bottom:1em}}main.quarto-banner-title-block>section:first-child>h2,main.quarto-banner-title-block>section:first-child>.h2,main.quarto-banner-title-block>section:first-child>h3,main.quarto-banner-title-block>section:first-child>.h3,main.quarto-banner-title-block>section:first-child>h4,main.quarto-banner-title-block>section:first-child>.h4{margin-top:0}.quarto-title .quarto-categories{display:flex;flex-wrap:wrap;row-gap:.5em;column-gap:.4em;padding-bottom:.5em;margin-top:.75em}.quarto-title .quarto-categories .quarto-category{padding:.25em .75em;font-size:.65em;text-transform:uppercase;border:solid 1px;border-radius:.25rem;opacity:.6}.quarto-title .quarto-categories .quarto-category a{color:inherit}#title-block-header.quarto-title-block.default .quarto-title-meta{display:grid;grid-template-columns:repeat(2, 1fr)}#title-block-header.quarto-title-block.default .quarto-title .title{margin-bottom:0}#title-block-header.quarto-title-block.default .quarto-title-author-orcid img{margin-top:-5px}#title-block-header.quarto-title-block.default .quarto-description p:last-of-type{margin-bottom:0}#title-block-header.quarto-title-block.default .quarto-title-meta-contents p,#title-block-header.quarto-title-block.default .quarto-title-authors p,#title-block-header.quarto-title-block.default .quarto-title-affiliations p{margin-bottom:.1em}#title-block-header.quarto-title-block.default .quarto-title-meta-heading{text-transform:uppercase;margin-top:1em;font-size:.8em;opacity:.8;font-weight:400}#title-block-header.quarto-title-block.default .quarto-title-meta-contents{font-size:.9em}#title-block-header.quarto-title-block.default .quarto-title-meta-contents a{color:#212529}#title-block-header.quarto-title-block.default .quarto-title-meta-contents p.affiliation:last-of-type{margin-bottom:.7em}#title-block-header.quarto-title-block.default p.affiliation{margin-bottom:.1em}#title-block-header.quarto-title-block.default .description,#title-block-header.quarto-title-block.default .abstract{margin-top:0}#title-block-header.quarto-title-block.default .description>p,#title-block-header.quarto-title-block.default .abstract>p{font-size:.9em}#title-block-header.quarto-title-block.default .description>p:last-of-type,#title-block-header.quarto-title-block.default .abstract>p:last-of-type{margin-bottom:0}#title-block-header.quarto-title-block.default .description .abstract-title,#title-block-header.quarto-title-block.default .abstract .abstract-title{margin-top:1em;text-transform:uppercase;font-size:.8em;opacity:.8;font-weight:400}#title-block-header.quarto-title-block.default .quarto-title-meta-author{display:grid;grid-template-columns:1fr 1fr}.quarto-title-tools-only{display:flex;justify-content:right}/*# sourceMappingURL=397ef2e52d54cf686e4908b90039e9db.css.map */ diff --git a/Dissertation_unzipped/sharktooth_functions_files/libs/bootstrap/bootstrap.min.js b/Dissertation_unzipped/sharktooth_functions_files/libs/bootstrap/bootstrap.min.js new file mode 100644 index 0000000..cc0a255 --- /dev/null +++ b/Dissertation_unzipped/sharktooth_functions_files/libs/bootstrap/bootstrap.min.js @@ -0,0 +1,7 @@ +/*! + * Bootstrap v5.1.3 (https://getbootstrap.com/) + * Copyright 2011-2021 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors) + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) + */ +!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e():"function"==typeof define&&define.amd?define(e):(t="undefined"!=typeof globalThis?globalThis:t||self).bootstrap=e()}(this,(function(){"use strict";const t="transitionend",e=t=>{let e=t.getAttribute("data-bs-target");if(!e||"#"===e){let i=t.getAttribute("href");if(!i||!i.includes("#")&&!i.startsWith("."))return null;i.includes("#")&&!i.startsWith("#")&&(i=`#${i.split("#")[1]}`),e=i&&"#"!==i?i.trim():null}return e},i=t=>{const i=e(t);return i&&document.querySelector(i)?i:null},n=t=>{const i=e(t);return i?document.querySelector(i):null},s=e=>{e.dispatchEvent(new Event(t))},o=t=>!(!t||"object"!=typeof t)&&(void 0!==t.jquery&&(t=t[0]),void 0!==t.nodeType),r=t=>o(t)?t.jquery?t[0]:t:"string"==typeof t&&t.length>0?document.querySelector(t):null,a=(t,e,i)=>{Object.keys(i).forEach((n=>{const s=i[n],r=e[n],a=r&&o(r)?"element":null==(l=r)?`${l}`:{}.toString.call(l).match(/\s([a-z]+)/i)[1].toLowerCase();var l;if(!new RegExp(s).test(a))throw new TypeError(`${t.toUpperCase()}: Option "${n}" provided type "${a}" but expected type "${s}".`)}))},l=t=>!(!o(t)||0===t.getClientRects().length)&&"visible"===getComputedStyle(t).getPropertyValue("visibility"),c=t=>!t||t.nodeType!==Node.ELEMENT_NODE||!!t.classList.contains("disabled")||(void 0!==t.disabled?t.disabled:t.hasAttribute("disabled")&&"false"!==t.getAttribute("disabled")),h=t=>{if(!document.documentElement.attachShadow)return null;if("function"==typeof t.getRootNode){const e=t.getRootNode();return e instanceof ShadowRoot?e:null}return t instanceof ShadowRoot?t:t.parentNode?h(t.parentNode):null},d=()=>{},u=t=>{t.offsetHeight},f=()=>{const{jQuery:t}=window;return t&&!document.body.hasAttribute("data-bs-no-jquery")?t:null},p=[],m=()=>"rtl"===document.documentElement.dir,g=t=>{var e;e=()=>{const e=f();if(e){const i=t.NAME,n=e.fn[i];e.fn[i]=t.jQueryInterface,e.fn[i].Constructor=t,e.fn[i].noConflict=()=>(e.fn[i]=n,t.jQueryInterface)}},"loading"===document.readyState?(p.length||document.addEventListener("DOMContentLoaded",(()=>{p.forEach((t=>t()))})),p.push(e)):e()},_=t=>{"function"==typeof t&&t()},b=(e,i,n=!0)=>{if(!n)return void _(e);const o=(t=>{if(!t)return 0;let{transitionDuration:e,transitionDelay:i}=window.getComputedStyle(t);const n=Number.parseFloat(e),s=Number.parseFloat(i);return n||s?(e=e.split(",")[0],i=i.split(",")[0],1e3*(Number.parseFloat(e)+Number.parseFloat(i))):0})(i)+5;let r=!1;const a=({target:n})=>{n===i&&(r=!0,i.removeEventListener(t,a),_(e))};i.addEventListener(t,a),setTimeout((()=>{r||s(i)}),o)},v=(t,e,i,n)=>{let s=t.indexOf(e);if(-1===s)return t[!i&&n?t.length-1:0];const o=t.length;return s+=i?1:-1,n&&(s=(s+o)%o),t[Math.max(0,Math.min(s,o-1))]},y=/[^.]*(?=\..*)\.|.*/,w=/\..*/,E=/::\d+$/,A={};let T=1;const O={mouseenter:"mouseover",mouseleave:"mouseout"},C=/^(mouseenter|mouseleave)/i,k=new Set(["click","dblclick","mouseup","mousedown","contextmenu","mousewheel","DOMMouseScroll","mouseover","mouseout","mousemove","selectstart","selectend","keydown","keypress","keyup","orientationchange","touchstart","touchmove","touchend","touchcancel","pointerdown","pointermove","pointerup","pointerleave","pointercancel","gesturestart","gesturechange","gestureend","focus","blur","change","reset","select","submit","focusin","focusout","load","unload","beforeunload","resize","move","DOMContentLoaded","readystatechange","error","abort","scroll"]);function L(t,e){return e&&`${e}::${T++}`||t.uidEvent||T++}function x(t){const e=L(t);return t.uidEvent=e,A[e]=A[e]||{},A[e]}function D(t,e,i=null){const n=Object.keys(t);for(let s=0,o=n.length;sfunction(e){if(!e.relatedTarget||e.relatedTarget!==e.delegateTarget&&!e.delegateTarget.contains(e.relatedTarget))return t.call(this,e)};n?n=t(n):i=t(i)}const[o,r,a]=S(e,i,n),l=x(t),c=l[a]||(l[a]={}),h=D(c,r,o?i:null);if(h)return void(h.oneOff=h.oneOff&&s);const d=L(r,e.replace(y,"")),u=o?function(t,e,i){return function n(s){const o=t.querySelectorAll(e);for(let{target:r}=s;r&&r!==this;r=r.parentNode)for(let a=o.length;a--;)if(o[a]===r)return s.delegateTarget=r,n.oneOff&&j.off(t,s.type,e,i),i.apply(r,[s]);return null}}(t,i,n):function(t,e){return function i(n){return n.delegateTarget=t,i.oneOff&&j.off(t,n.type,e),e.apply(t,[n])}}(t,i);u.delegationSelector=o?i:null,u.originalHandler=r,u.oneOff=s,u.uidEvent=d,c[d]=u,t.addEventListener(a,u,o)}function I(t,e,i,n,s){const o=D(e[i],n,s);o&&(t.removeEventListener(i,o,Boolean(s)),delete e[i][o.uidEvent])}function P(t){return t=t.replace(w,""),O[t]||t}const j={on(t,e,i,n){N(t,e,i,n,!1)},one(t,e,i,n){N(t,e,i,n,!0)},off(t,e,i,n){if("string"!=typeof e||!t)return;const[s,o,r]=S(e,i,n),a=r!==e,l=x(t),c=e.startsWith(".");if(void 0!==o){if(!l||!l[r])return;return void I(t,l,r,o,s?i:null)}c&&Object.keys(l).forEach((i=>{!function(t,e,i,n){const s=e[i]||{};Object.keys(s).forEach((o=>{if(o.includes(n)){const n=s[o];I(t,e,i,n.originalHandler,n.delegationSelector)}}))}(t,l,i,e.slice(1))}));const h=l[r]||{};Object.keys(h).forEach((i=>{const n=i.replace(E,"");if(!a||e.includes(n)){const e=h[i];I(t,l,r,e.originalHandler,e.delegationSelector)}}))},trigger(t,e,i){if("string"!=typeof e||!t)return null;const n=f(),s=P(e),o=e!==s,r=k.has(s);let a,l=!0,c=!0,h=!1,d=null;return o&&n&&(a=n.Event(e,i),n(t).trigger(a),l=!a.isPropagationStopped(),c=!a.isImmediatePropagationStopped(),h=a.isDefaultPrevented()),r?(d=document.createEvent("HTMLEvents"),d.initEvent(s,l,!0)):d=new CustomEvent(e,{bubbles:l,cancelable:!0}),void 0!==i&&Object.keys(i).forEach((t=>{Object.defineProperty(d,t,{get:()=>i[t]})})),h&&d.preventDefault(),c&&t.dispatchEvent(d),d.defaultPrevented&&void 0!==a&&a.preventDefault(),d}},M=new Map,H={set(t,e,i){M.has(t)||M.set(t,new Map);const n=M.get(t);n.has(e)||0===n.size?n.set(e,i):console.error(`Bootstrap doesn't allow more than one instance per element. Bound instance: ${Array.from(n.keys())[0]}.`)},get:(t,e)=>M.has(t)&&M.get(t).get(e)||null,remove(t,e){if(!M.has(t))return;const i=M.get(t);i.delete(e),0===i.size&&M.delete(t)}};class B{constructor(t){(t=r(t))&&(this._element=t,H.set(this._element,this.constructor.DATA_KEY,this))}dispose(){H.remove(this._element,this.constructor.DATA_KEY),j.off(this._element,this.constructor.EVENT_KEY),Object.getOwnPropertyNames(this).forEach((t=>{this[t]=null}))}_queueCallback(t,e,i=!0){b(t,e,i)}static getInstance(t){return H.get(r(t),this.DATA_KEY)}static getOrCreateInstance(t,e={}){return this.getInstance(t)||new this(t,"object"==typeof e?e:null)}static get VERSION(){return"5.1.3"}static get NAME(){throw new Error('You have to implement the static method "NAME", for each component!')}static get DATA_KEY(){return`bs.${this.NAME}`}static get EVENT_KEY(){return`.${this.DATA_KEY}`}}const R=(t,e="hide")=>{const i=`click.dismiss${t.EVENT_KEY}`,s=t.NAME;j.on(document,i,`[data-bs-dismiss="${s}"]`,(function(i){if(["A","AREA"].includes(this.tagName)&&i.preventDefault(),c(this))return;const o=n(this)||this.closest(`.${s}`);t.getOrCreateInstance(o)[e]()}))};class W extends B{static get NAME(){return"alert"}close(){if(j.trigger(this._element,"close.bs.alert").defaultPrevented)return;this._element.classList.remove("show");const t=this._element.classList.contains("fade");this._queueCallback((()=>this._destroyElement()),this._element,t)}_destroyElement(){this._element.remove(),j.trigger(this._element,"closed.bs.alert"),this.dispose()}static jQueryInterface(t){return this.each((function(){const e=W.getOrCreateInstance(this);if("string"==typeof t){if(void 0===e[t]||t.startsWith("_")||"constructor"===t)throw new TypeError(`No method named "${t}"`);e[t](this)}}))}}R(W,"close"),g(W);const $='[data-bs-toggle="button"]';class z extends B{static get NAME(){return"button"}toggle(){this._element.setAttribute("aria-pressed",this._element.classList.toggle("active"))}static jQueryInterface(t){return this.each((function(){const e=z.getOrCreateInstance(this);"toggle"===t&&e[t]()}))}}function q(t){return"true"===t||"false"!==t&&(t===Number(t).toString()?Number(t):""===t||"null"===t?null:t)}function F(t){return t.replace(/[A-Z]/g,(t=>`-${t.toLowerCase()}`))}j.on(document,"click.bs.button.data-api",$,(t=>{t.preventDefault();const e=t.target.closest($);z.getOrCreateInstance(e).toggle()})),g(z);const U={setDataAttribute(t,e,i){t.setAttribute(`data-bs-${F(e)}`,i)},removeDataAttribute(t,e){t.removeAttribute(`data-bs-${F(e)}`)},getDataAttributes(t){if(!t)return{};const e={};return Object.keys(t.dataset).filter((t=>t.startsWith("bs"))).forEach((i=>{let n=i.replace(/^bs/,"");n=n.charAt(0).toLowerCase()+n.slice(1,n.length),e[n]=q(t.dataset[i])})),e},getDataAttribute:(t,e)=>q(t.getAttribute(`data-bs-${F(e)}`)),offset(t){const e=t.getBoundingClientRect();return{top:e.top+window.pageYOffset,left:e.left+window.pageXOffset}},position:t=>({top:t.offsetTop,left:t.offsetLeft})},V={find:(t,e=document.documentElement)=>[].concat(...Element.prototype.querySelectorAll.call(e,t)),findOne:(t,e=document.documentElement)=>Element.prototype.querySelector.call(e,t),children:(t,e)=>[].concat(...t.children).filter((t=>t.matches(e))),parents(t,e){const i=[];let n=t.parentNode;for(;n&&n.nodeType===Node.ELEMENT_NODE&&3!==n.nodeType;)n.matches(e)&&i.push(n),n=n.parentNode;return i},prev(t,e){let i=t.previousElementSibling;for(;i;){if(i.matches(e))return[i];i=i.previousElementSibling}return[]},next(t,e){let i=t.nextElementSibling;for(;i;){if(i.matches(e))return[i];i=i.nextElementSibling}return[]},focusableChildren(t){const e=["a","button","input","textarea","select","details","[tabindex]",'[contenteditable="true"]'].map((t=>`${t}:not([tabindex^="-"])`)).join(", ");return this.find(e,t).filter((t=>!c(t)&&l(t)))}},K="carousel",X={interval:5e3,keyboard:!0,slide:!1,pause:"hover",wrap:!0,touch:!0},Y={interval:"(number|boolean)",keyboard:"boolean",slide:"(boolean|string)",pause:"(string|boolean)",wrap:"boolean",touch:"boolean"},Q="next",G="prev",Z="left",J="right",tt={ArrowLeft:J,ArrowRight:Z},et="slid.bs.carousel",it="active",nt=".active.carousel-item";class st extends B{constructor(t,e){super(t),this._items=null,this._interval=null,this._activeElement=null,this._isPaused=!1,this._isSliding=!1,this.touchTimeout=null,this.touchStartX=0,this.touchDeltaX=0,this._config=this._getConfig(e),this._indicatorsElement=V.findOne(".carousel-indicators",this._element),this._touchSupported="ontouchstart"in document.documentElement||navigator.maxTouchPoints>0,this._pointerEvent=Boolean(window.PointerEvent),this._addEventListeners()}static get Default(){return X}static get NAME(){return K}next(){this._slide(Q)}nextWhenVisible(){!document.hidden&&l(this._element)&&this.next()}prev(){this._slide(G)}pause(t){t||(this._isPaused=!0),V.findOne(".carousel-item-next, .carousel-item-prev",this._element)&&(s(this._element),this.cycle(!0)),clearInterval(this._interval),this._interval=null}cycle(t){t||(this._isPaused=!1),this._interval&&(clearInterval(this._interval),this._interval=null),this._config&&this._config.interval&&!this._isPaused&&(this._updateInterval(),this._interval=setInterval((document.visibilityState?this.nextWhenVisible:this.next).bind(this),this._config.interval))}to(t){this._activeElement=V.findOne(nt,this._element);const e=this._getItemIndex(this._activeElement);if(t>this._items.length-1||t<0)return;if(this._isSliding)return void j.one(this._element,et,(()=>this.to(t)));if(e===t)return this.pause(),void this.cycle();const i=t>e?Q:G;this._slide(i,this._items[t])}_getConfig(t){return t={...X,...U.getDataAttributes(this._element),..."object"==typeof t?t:{}},a(K,t,Y),t}_handleSwipe(){const t=Math.abs(this.touchDeltaX);if(t<=40)return;const e=t/this.touchDeltaX;this.touchDeltaX=0,e&&this._slide(e>0?J:Z)}_addEventListeners(){this._config.keyboard&&j.on(this._element,"keydown.bs.carousel",(t=>this._keydown(t))),"hover"===this._config.pause&&(j.on(this._element,"mouseenter.bs.carousel",(t=>this.pause(t))),j.on(this._element,"mouseleave.bs.carousel",(t=>this.cycle(t)))),this._config.touch&&this._touchSupported&&this._addTouchEventListeners()}_addTouchEventListeners(){const t=t=>this._pointerEvent&&("pen"===t.pointerType||"touch"===t.pointerType),e=e=>{t(e)?this.touchStartX=e.clientX:this._pointerEvent||(this.touchStartX=e.touches[0].clientX)},i=t=>{this.touchDeltaX=t.touches&&t.touches.length>1?0:t.touches[0].clientX-this.touchStartX},n=e=>{t(e)&&(this.touchDeltaX=e.clientX-this.touchStartX),this._handleSwipe(),"hover"===this._config.pause&&(this.pause(),this.touchTimeout&&clearTimeout(this.touchTimeout),this.touchTimeout=setTimeout((t=>this.cycle(t)),500+this._config.interval))};V.find(".carousel-item img",this._element).forEach((t=>{j.on(t,"dragstart.bs.carousel",(t=>t.preventDefault()))})),this._pointerEvent?(j.on(this._element,"pointerdown.bs.carousel",(t=>e(t))),j.on(this._element,"pointerup.bs.carousel",(t=>n(t))),this._element.classList.add("pointer-event")):(j.on(this._element,"touchstart.bs.carousel",(t=>e(t))),j.on(this._element,"touchmove.bs.carousel",(t=>i(t))),j.on(this._element,"touchend.bs.carousel",(t=>n(t))))}_keydown(t){if(/input|textarea/i.test(t.target.tagName))return;const e=tt[t.key];e&&(t.preventDefault(),this._slide(e))}_getItemIndex(t){return this._items=t&&t.parentNode?V.find(".carousel-item",t.parentNode):[],this._items.indexOf(t)}_getItemByOrder(t,e){const i=t===Q;return v(this._items,e,i,this._config.wrap)}_triggerSlideEvent(t,e){const i=this._getItemIndex(t),n=this._getItemIndex(V.findOne(nt,this._element));return j.trigger(this._element,"slide.bs.carousel",{relatedTarget:t,direction:e,from:n,to:i})}_setActiveIndicatorElement(t){if(this._indicatorsElement){const e=V.findOne(".active",this._indicatorsElement);e.classList.remove(it),e.removeAttribute("aria-current");const i=V.find("[data-bs-target]",this._indicatorsElement);for(let e=0;e{j.trigger(this._element,et,{relatedTarget:o,direction:d,from:s,to:r})};if(this._element.classList.contains("slide")){o.classList.add(h),u(o),n.classList.add(c),o.classList.add(c);const t=()=>{o.classList.remove(c,h),o.classList.add(it),n.classList.remove(it,h,c),this._isSliding=!1,setTimeout(f,0)};this._queueCallback(t,n,!0)}else n.classList.remove(it),o.classList.add(it),this._isSliding=!1,f();a&&this.cycle()}_directionToOrder(t){return[J,Z].includes(t)?m()?t===Z?G:Q:t===Z?Q:G:t}_orderToDirection(t){return[Q,G].includes(t)?m()?t===G?Z:J:t===G?J:Z:t}static carouselInterface(t,e){const i=st.getOrCreateInstance(t,e);let{_config:n}=i;"object"==typeof e&&(n={...n,...e});const s="string"==typeof e?e:n.slide;if("number"==typeof e)i.to(e);else if("string"==typeof s){if(void 0===i[s])throw new TypeError(`No method named "${s}"`);i[s]()}else n.interval&&n.ride&&(i.pause(),i.cycle())}static jQueryInterface(t){return this.each((function(){st.carouselInterface(this,t)}))}static dataApiClickHandler(t){const e=n(this);if(!e||!e.classList.contains("carousel"))return;const i={...U.getDataAttributes(e),...U.getDataAttributes(this)},s=this.getAttribute("data-bs-slide-to");s&&(i.interval=!1),st.carouselInterface(e,i),s&&st.getInstance(e).to(s),t.preventDefault()}}j.on(document,"click.bs.carousel.data-api","[data-bs-slide], [data-bs-slide-to]",st.dataApiClickHandler),j.on(window,"load.bs.carousel.data-api",(()=>{const t=V.find('[data-bs-ride="carousel"]');for(let e=0,i=t.length;et===this._element));null!==s&&o.length&&(this._selector=s,this._triggerArray.push(e))}this._initializeChildren(),this._config.parent||this._addAriaAndCollapsedClass(this._triggerArray,this._isShown()),this._config.toggle&&this.toggle()}static get Default(){return rt}static get NAME(){return ot}toggle(){this._isShown()?this.hide():this.show()}show(){if(this._isTransitioning||this._isShown())return;let t,e=[];if(this._config.parent){const t=V.find(ut,this._config.parent);e=V.find(".collapse.show, .collapse.collapsing",this._config.parent).filter((e=>!t.includes(e)))}const i=V.findOne(this._selector);if(e.length){const n=e.find((t=>i!==t));if(t=n?pt.getInstance(n):null,t&&t._isTransitioning)return}if(j.trigger(this._element,"show.bs.collapse").defaultPrevented)return;e.forEach((e=>{i!==e&&pt.getOrCreateInstance(e,{toggle:!1}).hide(),t||H.set(e,"bs.collapse",null)}));const n=this._getDimension();this._element.classList.remove(ct),this._element.classList.add(ht),this._element.style[n]=0,this._addAriaAndCollapsedClass(this._triggerArray,!0),this._isTransitioning=!0;const s=`scroll${n[0].toUpperCase()+n.slice(1)}`;this._queueCallback((()=>{this._isTransitioning=!1,this._element.classList.remove(ht),this._element.classList.add(ct,lt),this._element.style[n]="",j.trigger(this._element,"shown.bs.collapse")}),this._element,!0),this._element.style[n]=`${this._element[s]}px`}hide(){if(this._isTransitioning||!this._isShown())return;if(j.trigger(this._element,"hide.bs.collapse").defaultPrevented)return;const t=this._getDimension();this._element.style[t]=`${this._element.getBoundingClientRect()[t]}px`,u(this._element),this._element.classList.add(ht),this._element.classList.remove(ct,lt);const e=this._triggerArray.length;for(let t=0;t{this._isTransitioning=!1,this._element.classList.remove(ht),this._element.classList.add(ct),j.trigger(this._element,"hidden.bs.collapse")}),this._element,!0)}_isShown(t=this._element){return t.classList.contains(lt)}_getConfig(t){return(t={...rt,...U.getDataAttributes(this._element),...t}).toggle=Boolean(t.toggle),t.parent=r(t.parent),a(ot,t,at),t}_getDimension(){return this._element.classList.contains("collapse-horizontal")?"width":"height"}_initializeChildren(){if(!this._config.parent)return;const t=V.find(ut,this._config.parent);V.find(ft,this._config.parent).filter((e=>!t.includes(e))).forEach((t=>{const e=n(t);e&&this._addAriaAndCollapsedClass([t],this._isShown(e))}))}_addAriaAndCollapsedClass(t,e){t.length&&t.forEach((t=>{e?t.classList.remove(dt):t.classList.add(dt),t.setAttribute("aria-expanded",e)}))}static jQueryInterface(t){return this.each((function(){const e={};"string"==typeof t&&/show|hide/.test(t)&&(e.toggle=!1);const i=pt.getOrCreateInstance(this,e);if("string"==typeof t){if(void 0===i[t])throw new TypeError(`No method named "${t}"`);i[t]()}}))}}j.on(document,"click.bs.collapse.data-api",ft,(function(t){("A"===t.target.tagName||t.delegateTarget&&"A"===t.delegateTarget.tagName)&&t.preventDefault();const e=i(this);V.find(e).forEach((t=>{pt.getOrCreateInstance(t,{toggle:!1}).toggle()}))})),g(pt);var mt="top",gt="bottom",_t="right",bt="left",vt="auto",yt=[mt,gt,_t,bt],wt="start",Et="end",At="clippingParents",Tt="viewport",Ot="popper",Ct="reference",kt=yt.reduce((function(t,e){return t.concat([e+"-"+wt,e+"-"+Et])}),[]),Lt=[].concat(yt,[vt]).reduce((function(t,e){return t.concat([e,e+"-"+wt,e+"-"+Et])}),[]),xt="beforeRead",Dt="read",St="afterRead",Nt="beforeMain",It="main",Pt="afterMain",jt="beforeWrite",Mt="write",Ht="afterWrite",Bt=[xt,Dt,St,Nt,It,Pt,jt,Mt,Ht];function Rt(t){return t?(t.nodeName||"").toLowerCase():null}function Wt(t){if(null==t)return window;if("[object Window]"!==t.toString()){var e=t.ownerDocument;return e&&e.defaultView||window}return t}function $t(t){return t instanceof Wt(t).Element||t instanceof Element}function zt(t){return t instanceof Wt(t).HTMLElement||t instanceof HTMLElement}function qt(t){return"undefined"!=typeof ShadowRoot&&(t instanceof Wt(t).ShadowRoot||t instanceof ShadowRoot)}const Ft={name:"applyStyles",enabled:!0,phase:"write",fn:function(t){var e=t.state;Object.keys(e.elements).forEach((function(t){var i=e.styles[t]||{},n=e.attributes[t]||{},s=e.elements[t];zt(s)&&Rt(s)&&(Object.assign(s.style,i),Object.keys(n).forEach((function(t){var e=n[t];!1===e?s.removeAttribute(t):s.setAttribute(t,!0===e?"":e)})))}))},effect:function(t){var e=t.state,i={popper:{position:e.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(e.elements.popper.style,i.popper),e.styles=i,e.elements.arrow&&Object.assign(e.elements.arrow.style,i.arrow),function(){Object.keys(e.elements).forEach((function(t){var n=e.elements[t],s=e.attributes[t]||{},o=Object.keys(e.styles.hasOwnProperty(t)?e.styles[t]:i[t]).reduce((function(t,e){return t[e]="",t}),{});zt(n)&&Rt(n)&&(Object.assign(n.style,o),Object.keys(s).forEach((function(t){n.removeAttribute(t)})))}))}},requires:["computeStyles"]};function Ut(t){return t.split("-")[0]}function Vt(t,e){var i=t.getBoundingClientRect();return{width:i.width/1,height:i.height/1,top:i.top/1,right:i.right/1,bottom:i.bottom/1,left:i.left/1,x:i.left/1,y:i.top/1}}function Kt(t){var e=Vt(t),i=t.offsetWidth,n=t.offsetHeight;return Math.abs(e.width-i)<=1&&(i=e.width),Math.abs(e.height-n)<=1&&(n=e.height),{x:t.offsetLeft,y:t.offsetTop,width:i,height:n}}function Xt(t,e){var i=e.getRootNode&&e.getRootNode();if(t.contains(e))return!0;if(i&&qt(i)){var n=e;do{if(n&&t.isSameNode(n))return!0;n=n.parentNode||n.host}while(n)}return!1}function Yt(t){return Wt(t).getComputedStyle(t)}function Qt(t){return["table","td","th"].indexOf(Rt(t))>=0}function Gt(t){return(($t(t)?t.ownerDocument:t.document)||window.document).documentElement}function Zt(t){return"html"===Rt(t)?t:t.assignedSlot||t.parentNode||(qt(t)?t.host:null)||Gt(t)}function Jt(t){return zt(t)&&"fixed"!==Yt(t).position?t.offsetParent:null}function te(t){for(var e=Wt(t),i=Jt(t);i&&Qt(i)&&"static"===Yt(i).position;)i=Jt(i);return i&&("html"===Rt(i)||"body"===Rt(i)&&"static"===Yt(i).position)?e:i||function(t){var e=-1!==navigator.userAgent.toLowerCase().indexOf("firefox");if(-1!==navigator.userAgent.indexOf("Trident")&&zt(t)&&"fixed"===Yt(t).position)return null;for(var i=Zt(t);zt(i)&&["html","body"].indexOf(Rt(i))<0;){var n=Yt(i);if("none"!==n.transform||"none"!==n.perspective||"paint"===n.contain||-1!==["transform","perspective"].indexOf(n.willChange)||e&&"filter"===n.willChange||e&&n.filter&&"none"!==n.filter)return i;i=i.parentNode}return null}(t)||e}function ee(t){return["top","bottom"].indexOf(t)>=0?"x":"y"}var ie=Math.max,ne=Math.min,se=Math.round;function oe(t,e,i){return ie(t,ne(e,i))}function re(t){return Object.assign({},{top:0,right:0,bottom:0,left:0},t)}function ae(t,e){return e.reduce((function(e,i){return e[i]=t,e}),{})}const le={name:"arrow",enabled:!0,phase:"main",fn:function(t){var e,i=t.state,n=t.name,s=t.options,o=i.elements.arrow,r=i.modifiersData.popperOffsets,a=Ut(i.placement),l=ee(a),c=[bt,_t].indexOf(a)>=0?"height":"width";if(o&&r){var h=function(t,e){return re("number"!=typeof(t="function"==typeof t?t(Object.assign({},e.rects,{placement:e.placement})):t)?t:ae(t,yt))}(s.padding,i),d=Kt(o),u="y"===l?mt:bt,f="y"===l?gt:_t,p=i.rects.reference[c]+i.rects.reference[l]-r[l]-i.rects.popper[c],m=r[l]-i.rects.reference[l],g=te(o),_=g?"y"===l?g.clientHeight||0:g.clientWidth||0:0,b=p/2-m/2,v=h[u],y=_-d[c]-h[f],w=_/2-d[c]/2+b,E=oe(v,w,y),A=l;i.modifiersData[n]=((e={})[A]=E,e.centerOffset=E-w,e)}},effect:function(t){var e=t.state,i=t.options.element,n=void 0===i?"[data-popper-arrow]":i;null!=n&&("string"!=typeof n||(n=e.elements.popper.querySelector(n)))&&Xt(e.elements.popper,n)&&(e.elements.arrow=n)},requires:["popperOffsets"],requiresIfExists:["preventOverflow"]};function ce(t){return t.split("-")[1]}var he={top:"auto",right:"auto",bottom:"auto",left:"auto"};function de(t){var e,i=t.popper,n=t.popperRect,s=t.placement,o=t.variation,r=t.offsets,a=t.position,l=t.gpuAcceleration,c=t.adaptive,h=t.roundOffsets,d=!0===h?function(t){var e=t.x,i=t.y,n=window.devicePixelRatio||1;return{x:se(se(e*n)/n)||0,y:se(se(i*n)/n)||0}}(r):"function"==typeof h?h(r):r,u=d.x,f=void 0===u?0:u,p=d.y,m=void 0===p?0:p,g=r.hasOwnProperty("x"),_=r.hasOwnProperty("y"),b=bt,v=mt,y=window;if(c){var w=te(i),E="clientHeight",A="clientWidth";w===Wt(i)&&"static"!==Yt(w=Gt(i)).position&&"absolute"===a&&(E="scrollHeight",A="scrollWidth"),w=w,s!==mt&&(s!==bt&&s!==_t||o!==Et)||(v=gt,m-=w[E]-n.height,m*=l?1:-1),s!==bt&&(s!==mt&&s!==gt||o!==Et)||(b=_t,f-=w[A]-n.width,f*=l?1:-1)}var T,O=Object.assign({position:a},c&&he);return l?Object.assign({},O,((T={})[v]=_?"0":"",T[b]=g?"0":"",T.transform=(y.devicePixelRatio||1)<=1?"translate("+f+"px, "+m+"px)":"translate3d("+f+"px, "+m+"px, 0)",T)):Object.assign({},O,((e={})[v]=_?m+"px":"",e[b]=g?f+"px":"",e.transform="",e))}const ue={name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:function(t){var e=t.state,i=t.options,n=i.gpuAcceleration,s=void 0===n||n,o=i.adaptive,r=void 0===o||o,a=i.roundOffsets,l=void 0===a||a,c={placement:Ut(e.placement),variation:ce(e.placement),popper:e.elements.popper,popperRect:e.rects.popper,gpuAcceleration:s};null!=e.modifiersData.popperOffsets&&(e.styles.popper=Object.assign({},e.styles.popper,de(Object.assign({},c,{offsets:e.modifiersData.popperOffsets,position:e.options.strategy,adaptive:r,roundOffsets:l})))),null!=e.modifiersData.arrow&&(e.styles.arrow=Object.assign({},e.styles.arrow,de(Object.assign({},c,{offsets:e.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:l})))),e.attributes.popper=Object.assign({},e.attributes.popper,{"data-popper-placement":e.placement})},data:{}};var fe={passive:!0};const pe={name:"eventListeners",enabled:!0,phase:"write",fn:function(){},effect:function(t){var e=t.state,i=t.instance,n=t.options,s=n.scroll,o=void 0===s||s,r=n.resize,a=void 0===r||r,l=Wt(e.elements.popper),c=[].concat(e.scrollParents.reference,e.scrollParents.popper);return o&&c.forEach((function(t){t.addEventListener("scroll",i.update,fe)})),a&&l.addEventListener("resize",i.update,fe),function(){o&&c.forEach((function(t){t.removeEventListener("scroll",i.update,fe)})),a&&l.removeEventListener("resize",i.update,fe)}},data:{}};var me={left:"right",right:"left",bottom:"top",top:"bottom"};function ge(t){return t.replace(/left|right|bottom|top/g,(function(t){return me[t]}))}var _e={start:"end",end:"start"};function be(t){return t.replace(/start|end/g,(function(t){return _e[t]}))}function ve(t){var e=Wt(t);return{scrollLeft:e.pageXOffset,scrollTop:e.pageYOffset}}function ye(t){return Vt(Gt(t)).left+ve(t).scrollLeft}function we(t){var e=Yt(t),i=e.overflow,n=e.overflowX,s=e.overflowY;return/auto|scroll|overlay|hidden/.test(i+s+n)}function Ee(t){return["html","body","#document"].indexOf(Rt(t))>=0?t.ownerDocument.body:zt(t)&&we(t)?t:Ee(Zt(t))}function Ae(t,e){var i;void 0===e&&(e=[]);var n=Ee(t),s=n===(null==(i=t.ownerDocument)?void 0:i.body),o=Wt(n),r=s?[o].concat(o.visualViewport||[],we(n)?n:[]):n,a=e.concat(r);return s?a:a.concat(Ae(Zt(r)))}function Te(t){return Object.assign({},t,{left:t.x,top:t.y,right:t.x+t.width,bottom:t.y+t.height})}function Oe(t,e){return e===Tt?Te(function(t){var e=Wt(t),i=Gt(t),n=e.visualViewport,s=i.clientWidth,o=i.clientHeight,r=0,a=0;return n&&(s=n.width,o=n.height,/^((?!chrome|android).)*safari/i.test(navigator.userAgent)||(r=n.offsetLeft,a=n.offsetTop)),{width:s,height:o,x:r+ye(t),y:a}}(t)):zt(e)?function(t){var e=Vt(t);return e.top=e.top+t.clientTop,e.left=e.left+t.clientLeft,e.bottom=e.top+t.clientHeight,e.right=e.left+t.clientWidth,e.width=t.clientWidth,e.height=t.clientHeight,e.x=e.left,e.y=e.top,e}(e):Te(function(t){var e,i=Gt(t),n=ve(t),s=null==(e=t.ownerDocument)?void 0:e.body,o=ie(i.scrollWidth,i.clientWidth,s?s.scrollWidth:0,s?s.clientWidth:0),r=ie(i.scrollHeight,i.clientHeight,s?s.scrollHeight:0,s?s.clientHeight:0),a=-n.scrollLeft+ye(t),l=-n.scrollTop;return"rtl"===Yt(s||i).direction&&(a+=ie(i.clientWidth,s?s.clientWidth:0)-o),{width:o,height:r,x:a,y:l}}(Gt(t)))}function Ce(t){var e,i=t.reference,n=t.element,s=t.placement,o=s?Ut(s):null,r=s?ce(s):null,a=i.x+i.width/2-n.width/2,l=i.y+i.height/2-n.height/2;switch(o){case mt:e={x:a,y:i.y-n.height};break;case gt:e={x:a,y:i.y+i.height};break;case _t:e={x:i.x+i.width,y:l};break;case bt:e={x:i.x-n.width,y:l};break;default:e={x:i.x,y:i.y}}var c=o?ee(o):null;if(null!=c){var h="y"===c?"height":"width";switch(r){case wt:e[c]=e[c]-(i[h]/2-n[h]/2);break;case Et:e[c]=e[c]+(i[h]/2-n[h]/2)}}return e}function ke(t,e){void 0===e&&(e={});var i=e,n=i.placement,s=void 0===n?t.placement:n,o=i.boundary,r=void 0===o?At:o,a=i.rootBoundary,l=void 0===a?Tt:a,c=i.elementContext,h=void 0===c?Ot:c,d=i.altBoundary,u=void 0!==d&&d,f=i.padding,p=void 0===f?0:f,m=re("number"!=typeof p?p:ae(p,yt)),g=h===Ot?Ct:Ot,_=t.rects.popper,b=t.elements[u?g:h],v=function(t,e,i){var n="clippingParents"===e?function(t){var e=Ae(Zt(t)),i=["absolute","fixed"].indexOf(Yt(t).position)>=0&&zt(t)?te(t):t;return $t(i)?e.filter((function(t){return $t(t)&&Xt(t,i)&&"body"!==Rt(t)})):[]}(t):[].concat(e),s=[].concat(n,[i]),o=s[0],r=s.reduce((function(e,i){var n=Oe(t,i);return e.top=ie(n.top,e.top),e.right=ne(n.right,e.right),e.bottom=ne(n.bottom,e.bottom),e.left=ie(n.left,e.left),e}),Oe(t,o));return r.width=r.right-r.left,r.height=r.bottom-r.top,r.x=r.left,r.y=r.top,r}($t(b)?b:b.contextElement||Gt(t.elements.popper),r,l),y=Vt(t.elements.reference),w=Ce({reference:y,element:_,strategy:"absolute",placement:s}),E=Te(Object.assign({},_,w)),A=h===Ot?E:y,T={top:v.top-A.top+m.top,bottom:A.bottom-v.bottom+m.bottom,left:v.left-A.left+m.left,right:A.right-v.right+m.right},O=t.modifiersData.offset;if(h===Ot&&O){var C=O[s];Object.keys(T).forEach((function(t){var e=[_t,gt].indexOf(t)>=0?1:-1,i=[mt,gt].indexOf(t)>=0?"y":"x";T[t]+=C[i]*e}))}return T}function Le(t,e){void 0===e&&(e={});var i=e,n=i.placement,s=i.boundary,o=i.rootBoundary,r=i.padding,a=i.flipVariations,l=i.allowedAutoPlacements,c=void 0===l?Lt:l,h=ce(n),d=h?a?kt:kt.filter((function(t){return ce(t)===h})):yt,u=d.filter((function(t){return c.indexOf(t)>=0}));0===u.length&&(u=d);var f=u.reduce((function(e,i){return e[i]=ke(t,{placement:i,boundary:s,rootBoundary:o,padding:r})[Ut(i)],e}),{});return Object.keys(f).sort((function(t,e){return f[t]-f[e]}))}const xe={name:"flip",enabled:!0,phase:"main",fn:function(t){var e=t.state,i=t.options,n=t.name;if(!e.modifiersData[n]._skip){for(var s=i.mainAxis,o=void 0===s||s,r=i.altAxis,a=void 0===r||r,l=i.fallbackPlacements,c=i.padding,h=i.boundary,d=i.rootBoundary,u=i.altBoundary,f=i.flipVariations,p=void 0===f||f,m=i.allowedAutoPlacements,g=e.options.placement,_=Ut(g),b=l||(_!==g&&p?function(t){if(Ut(t)===vt)return[];var e=ge(t);return[be(t),e,be(e)]}(g):[ge(g)]),v=[g].concat(b).reduce((function(t,i){return t.concat(Ut(i)===vt?Le(e,{placement:i,boundary:h,rootBoundary:d,padding:c,flipVariations:p,allowedAutoPlacements:m}):i)}),[]),y=e.rects.reference,w=e.rects.popper,E=new Map,A=!0,T=v[0],O=0;O=0,D=x?"width":"height",S=ke(e,{placement:C,boundary:h,rootBoundary:d,altBoundary:u,padding:c}),N=x?L?_t:bt:L?gt:mt;y[D]>w[D]&&(N=ge(N));var I=ge(N),P=[];if(o&&P.push(S[k]<=0),a&&P.push(S[N]<=0,S[I]<=0),P.every((function(t){return t}))){T=C,A=!1;break}E.set(C,P)}if(A)for(var j=function(t){var e=v.find((function(e){var i=E.get(e);if(i)return i.slice(0,t).every((function(t){return t}))}));if(e)return T=e,"break"},M=p?3:1;M>0&&"break"!==j(M);M--);e.placement!==T&&(e.modifiersData[n]._skip=!0,e.placement=T,e.reset=!0)}},requiresIfExists:["offset"],data:{_skip:!1}};function De(t,e,i){return void 0===i&&(i={x:0,y:0}),{top:t.top-e.height-i.y,right:t.right-e.width+i.x,bottom:t.bottom-e.height+i.y,left:t.left-e.width-i.x}}function Se(t){return[mt,_t,gt,bt].some((function(e){return t[e]>=0}))}const Ne={name:"hide",enabled:!0,phase:"main",requiresIfExists:["preventOverflow"],fn:function(t){var e=t.state,i=t.name,n=e.rects.reference,s=e.rects.popper,o=e.modifiersData.preventOverflow,r=ke(e,{elementContext:"reference"}),a=ke(e,{altBoundary:!0}),l=De(r,n),c=De(a,s,o),h=Se(l),d=Se(c);e.modifiersData[i]={referenceClippingOffsets:l,popperEscapeOffsets:c,isReferenceHidden:h,hasPopperEscaped:d},e.attributes.popper=Object.assign({},e.attributes.popper,{"data-popper-reference-hidden":h,"data-popper-escaped":d})}},Ie={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:function(t){var e=t.state,i=t.options,n=t.name,s=i.offset,o=void 0===s?[0,0]:s,r=Lt.reduce((function(t,i){return t[i]=function(t,e,i){var n=Ut(t),s=[bt,mt].indexOf(n)>=0?-1:1,o="function"==typeof i?i(Object.assign({},e,{placement:t})):i,r=o[0],a=o[1];return r=r||0,a=(a||0)*s,[bt,_t].indexOf(n)>=0?{x:a,y:r}:{x:r,y:a}}(i,e.rects,o),t}),{}),a=r[e.placement],l=a.x,c=a.y;null!=e.modifiersData.popperOffsets&&(e.modifiersData.popperOffsets.x+=l,e.modifiersData.popperOffsets.y+=c),e.modifiersData[n]=r}},Pe={name:"popperOffsets",enabled:!0,phase:"read",fn:function(t){var e=t.state,i=t.name;e.modifiersData[i]=Ce({reference:e.rects.reference,element:e.rects.popper,strategy:"absolute",placement:e.placement})},data:{}},je={name:"preventOverflow",enabled:!0,phase:"main",fn:function(t){var e=t.state,i=t.options,n=t.name,s=i.mainAxis,o=void 0===s||s,r=i.altAxis,a=void 0!==r&&r,l=i.boundary,c=i.rootBoundary,h=i.altBoundary,d=i.padding,u=i.tether,f=void 0===u||u,p=i.tetherOffset,m=void 0===p?0:p,g=ke(e,{boundary:l,rootBoundary:c,padding:d,altBoundary:h}),_=Ut(e.placement),b=ce(e.placement),v=!b,y=ee(_),w="x"===y?"y":"x",E=e.modifiersData.popperOffsets,A=e.rects.reference,T=e.rects.popper,O="function"==typeof m?m(Object.assign({},e.rects,{placement:e.placement})):m,C={x:0,y:0};if(E){if(o||a){var k="y"===y?mt:bt,L="y"===y?gt:_t,x="y"===y?"height":"width",D=E[y],S=E[y]+g[k],N=E[y]-g[L],I=f?-T[x]/2:0,P=b===wt?A[x]:T[x],j=b===wt?-T[x]:-A[x],M=e.elements.arrow,H=f&&M?Kt(M):{width:0,height:0},B=e.modifiersData["arrow#persistent"]?e.modifiersData["arrow#persistent"].padding:{top:0,right:0,bottom:0,left:0},R=B[k],W=B[L],$=oe(0,A[x],H[x]),z=v?A[x]/2-I-$-R-O:P-$-R-O,q=v?-A[x]/2+I+$+W+O:j+$+W+O,F=e.elements.arrow&&te(e.elements.arrow),U=F?"y"===y?F.clientTop||0:F.clientLeft||0:0,V=e.modifiersData.offset?e.modifiersData.offset[e.placement][y]:0,K=E[y]+z-V-U,X=E[y]+q-V;if(o){var Y=oe(f?ne(S,K):S,D,f?ie(N,X):N);E[y]=Y,C[y]=Y-D}if(a){var Q="x"===y?mt:bt,G="x"===y?gt:_t,Z=E[w],J=Z+g[Q],tt=Z-g[G],et=oe(f?ne(J,K):J,Z,f?ie(tt,X):tt);E[w]=et,C[w]=et-Z}}e.modifiersData[n]=C}},requiresIfExists:["offset"]};function Me(t,e,i){void 0===i&&(i=!1);var n=zt(e);zt(e)&&function(t){var e=t.getBoundingClientRect();e.width,t.offsetWidth,e.height,t.offsetHeight}(e);var s,o,r=Gt(e),a=Vt(t),l={scrollLeft:0,scrollTop:0},c={x:0,y:0};return(n||!n&&!i)&&(("body"!==Rt(e)||we(r))&&(l=(s=e)!==Wt(s)&&zt(s)?{scrollLeft:(o=s).scrollLeft,scrollTop:o.scrollTop}:ve(s)),zt(e)?((c=Vt(e)).x+=e.clientLeft,c.y+=e.clientTop):r&&(c.x=ye(r))),{x:a.left+l.scrollLeft-c.x,y:a.top+l.scrollTop-c.y,width:a.width,height:a.height}}function He(t){var e=new Map,i=new Set,n=[];function s(t){i.add(t.name),[].concat(t.requires||[],t.requiresIfExists||[]).forEach((function(t){if(!i.has(t)){var n=e.get(t);n&&s(n)}})),n.push(t)}return t.forEach((function(t){e.set(t.name,t)})),t.forEach((function(t){i.has(t.name)||s(t)})),n}var Be={placement:"bottom",modifiers:[],strategy:"absolute"};function Re(){for(var t=arguments.length,e=new Array(t),i=0;ij.on(t,"mouseover",d))),this._element.focus(),this._element.setAttribute("aria-expanded",!0),this._menu.classList.add(Je),this._element.classList.add(Je),j.trigger(this._element,"shown.bs.dropdown",t)}hide(){if(c(this._element)||!this._isShown(this._menu))return;const t={relatedTarget:this._element};this._completeHide(t)}dispose(){this._popper&&this._popper.destroy(),super.dispose()}update(){this._inNavbar=this._detectNavbar(),this._popper&&this._popper.update()}_completeHide(t){j.trigger(this._element,"hide.bs.dropdown",t).defaultPrevented||("ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach((t=>j.off(t,"mouseover",d))),this._popper&&this._popper.destroy(),this._menu.classList.remove(Je),this._element.classList.remove(Je),this._element.setAttribute("aria-expanded","false"),U.removeDataAttribute(this._menu,"popper"),j.trigger(this._element,"hidden.bs.dropdown",t))}_getConfig(t){if(t={...this.constructor.Default,...U.getDataAttributes(this._element),...t},a(Ue,t,this.constructor.DefaultType),"object"==typeof t.reference&&!o(t.reference)&&"function"!=typeof t.reference.getBoundingClientRect)throw new TypeError(`${Ue.toUpperCase()}: Option "reference" provided type "object" without a required "getBoundingClientRect" method.`);return t}_createPopper(t){if(void 0===Fe)throw new TypeError("Bootstrap's dropdowns require Popper (https://popper.js.org)");let e=this._element;"parent"===this._config.reference?e=t:o(this._config.reference)?e=r(this._config.reference):"object"==typeof this._config.reference&&(e=this._config.reference);const i=this._getPopperConfig(),n=i.modifiers.find((t=>"applyStyles"===t.name&&!1===t.enabled));this._popper=qe(e,this._menu,i),n&&U.setDataAttribute(this._menu,"popper","static")}_isShown(t=this._element){return t.classList.contains(Je)}_getMenuElement(){return V.next(this._element,ei)[0]}_getPlacement(){const t=this._element.parentNode;if(t.classList.contains("dropend"))return ri;if(t.classList.contains("dropstart"))return ai;const e="end"===getComputedStyle(this._menu).getPropertyValue("--bs-position").trim();return t.classList.contains("dropup")?e?ni:ii:e?oi:si}_detectNavbar(){return null!==this._element.closest(".navbar")}_getOffset(){const{offset:t}=this._config;return"string"==typeof t?t.split(",").map((t=>Number.parseInt(t,10))):"function"==typeof t?e=>t(e,this._element):t}_getPopperConfig(){const t={placement:this._getPlacement(),modifiers:[{name:"preventOverflow",options:{boundary:this._config.boundary}},{name:"offset",options:{offset:this._getOffset()}}]};return"static"===this._config.display&&(t.modifiers=[{name:"applyStyles",enabled:!1}]),{...t,..."function"==typeof this._config.popperConfig?this._config.popperConfig(t):this._config.popperConfig}}_selectMenuItem({key:t,target:e}){const i=V.find(".dropdown-menu .dropdown-item:not(.disabled):not(:disabled)",this._menu).filter(l);i.length&&v(i,e,t===Ye,!i.includes(e)).focus()}static jQueryInterface(t){return this.each((function(){const e=hi.getOrCreateInstance(this,t);if("string"==typeof t){if(void 0===e[t])throw new TypeError(`No method named "${t}"`);e[t]()}}))}static clearMenus(t){if(t&&(2===t.button||"keyup"===t.type&&"Tab"!==t.key))return;const e=V.find(ti);for(let i=0,n=e.length;ie+t)),this._setElementAttributes(di,"paddingRight",(e=>e+t)),this._setElementAttributes(ui,"marginRight",(e=>e-t))}_disableOverFlow(){this._saveInitialAttribute(this._element,"overflow"),this._element.style.overflow="hidden"}_setElementAttributes(t,e,i){const n=this.getWidth();this._applyManipulationCallback(t,(t=>{if(t!==this._element&&window.innerWidth>t.clientWidth+n)return;this._saveInitialAttribute(t,e);const s=window.getComputedStyle(t)[e];t.style[e]=`${i(Number.parseFloat(s))}px`}))}reset(){this._resetElementAttributes(this._element,"overflow"),this._resetElementAttributes(this._element,"paddingRight"),this._resetElementAttributes(di,"paddingRight"),this._resetElementAttributes(ui,"marginRight")}_saveInitialAttribute(t,e){const i=t.style[e];i&&U.setDataAttribute(t,e,i)}_resetElementAttributes(t,e){this._applyManipulationCallback(t,(t=>{const i=U.getDataAttribute(t,e);void 0===i?t.style.removeProperty(e):(U.removeDataAttribute(t,e),t.style[e]=i)}))}_applyManipulationCallback(t,e){o(t)?e(t):V.find(t,this._element).forEach(e)}isOverflowing(){return this.getWidth()>0}}const pi={className:"modal-backdrop",isVisible:!0,isAnimated:!1,rootElement:"body",clickCallback:null},mi={className:"string",isVisible:"boolean",isAnimated:"boolean",rootElement:"(element|string)",clickCallback:"(function|null)"},gi="show",_i="mousedown.bs.backdrop";class bi{constructor(t){this._config=this._getConfig(t),this._isAppended=!1,this._element=null}show(t){this._config.isVisible?(this._append(),this._config.isAnimated&&u(this._getElement()),this._getElement().classList.add(gi),this._emulateAnimation((()=>{_(t)}))):_(t)}hide(t){this._config.isVisible?(this._getElement().classList.remove(gi),this._emulateAnimation((()=>{this.dispose(),_(t)}))):_(t)}_getElement(){if(!this._element){const t=document.createElement("div");t.className=this._config.className,this._config.isAnimated&&t.classList.add("fade"),this._element=t}return this._element}_getConfig(t){return(t={...pi,..."object"==typeof t?t:{}}).rootElement=r(t.rootElement),a("backdrop",t,mi),t}_append(){this._isAppended||(this._config.rootElement.append(this._getElement()),j.on(this._getElement(),_i,(()=>{_(this._config.clickCallback)})),this._isAppended=!0)}dispose(){this._isAppended&&(j.off(this._element,_i),this._element.remove(),this._isAppended=!1)}_emulateAnimation(t){b(t,this._getElement(),this._config.isAnimated)}}const vi={trapElement:null,autofocus:!0},yi={trapElement:"element",autofocus:"boolean"},wi=".bs.focustrap",Ei="backward";class Ai{constructor(t){this._config=this._getConfig(t),this._isActive=!1,this._lastTabNavDirection=null}activate(){const{trapElement:t,autofocus:e}=this._config;this._isActive||(e&&t.focus(),j.off(document,wi),j.on(document,"focusin.bs.focustrap",(t=>this._handleFocusin(t))),j.on(document,"keydown.tab.bs.focustrap",(t=>this._handleKeydown(t))),this._isActive=!0)}deactivate(){this._isActive&&(this._isActive=!1,j.off(document,wi))}_handleFocusin(t){const{target:e}=t,{trapElement:i}=this._config;if(e===document||e===i||i.contains(e))return;const n=V.focusableChildren(i);0===n.length?i.focus():this._lastTabNavDirection===Ei?n[n.length-1].focus():n[0].focus()}_handleKeydown(t){"Tab"===t.key&&(this._lastTabNavDirection=t.shiftKey?Ei:"forward")}_getConfig(t){return t={...vi,..."object"==typeof t?t:{}},a("focustrap",t,yi),t}}const Ti="modal",Oi="Escape",Ci={backdrop:!0,keyboard:!0,focus:!0},ki={backdrop:"(boolean|string)",keyboard:"boolean",focus:"boolean"},Li="hidden.bs.modal",xi="show.bs.modal",Di="resize.bs.modal",Si="click.dismiss.bs.modal",Ni="keydown.dismiss.bs.modal",Ii="mousedown.dismiss.bs.modal",Pi="modal-open",ji="show",Mi="modal-static";class Hi extends B{constructor(t,e){super(t),this._config=this._getConfig(e),this._dialog=V.findOne(".modal-dialog",this._element),this._backdrop=this._initializeBackDrop(),this._focustrap=this._initializeFocusTrap(),this._isShown=!1,this._ignoreBackdropClick=!1,this._isTransitioning=!1,this._scrollBar=new fi}static get Default(){return Ci}static get NAME(){return Ti}toggle(t){return this._isShown?this.hide():this.show(t)}show(t){this._isShown||this._isTransitioning||j.trigger(this._element,xi,{relatedTarget:t}).defaultPrevented||(this._isShown=!0,this._isAnimated()&&(this._isTransitioning=!0),this._scrollBar.hide(),document.body.classList.add(Pi),this._adjustDialog(),this._setEscapeEvent(),this._setResizeEvent(),j.on(this._dialog,Ii,(()=>{j.one(this._element,"mouseup.dismiss.bs.modal",(t=>{t.target===this._element&&(this._ignoreBackdropClick=!0)}))})),this._showBackdrop((()=>this._showElement(t))))}hide(){if(!this._isShown||this._isTransitioning)return;if(j.trigger(this._element,"hide.bs.modal").defaultPrevented)return;this._isShown=!1;const t=this._isAnimated();t&&(this._isTransitioning=!0),this._setEscapeEvent(),this._setResizeEvent(),this._focustrap.deactivate(),this._element.classList.remove(ji),j.off(this._element,Si),j.off(this._dialog,Ii),this._queueCallback((()=>this._hideModal()),this._element,t)}dispose(){[window,this._dialog].forEach((t=>j.off(t,".bs.modal"))),this._backdrop.dispose(),this._focustrap.deactivate(),super.dispose()}handleUpdate(){this._adjustDialog()}_initializeBackDrop(){return new bi({isVisible:Boolean(this._config.backdrop),isAnimated:this._isAnimated()})}_initializeFocusTrap(){return new Ai({trapElement:this._element})}_getConfig(t){return t={...Ci,...U.getDataAttributes(this._element),..."object"==typeof t?t:{}},a(Ti,t,ki),t}_showElement(t){const e=this._isAnimated(),i=V.findOne(".modal-body",this._dialog);this._element.parentNode&&this._element.parentNode.nodeType===Node.ELEMENT_NODE||document.body.append(this._element),this._element.style.display="block",this._element.removeAttribute("aria-hidden"),this._element.setAttribute("aria-modal",!0),this._element.setAttribute("role","dialog"),this._element.scrollTop=0,i&&(i.scrollTop=0),e&&u(this._element),this._element.classList.add(ji),this._queueCallback((()=>{this._config.focus&&this._focustrap.activate(),this._isTransitioning=!1,j.trigger(this._element,"shown.bs.modal",{relatedTarget:t})}),this._dialog,e)}_setEscapeEvent(){this._isShown?j.on(this._element,Ni,(t=>{this._config.keyboard&&t.key===Oi?(t.preventDefault(),this.hide()):this._config.keyboard||t.key!==Oi||this._triggerBackdropTransition()})):j.off(this._element,Ni)}_setResizeEvent(){this._isShown?j.on(window,Di,(()=>this._adjustDialog())):j.off(window,Di)}_hideModal(){this._element.style.display="none",this._element.setAttribute("aria-hidden",!0),this._element.removeAttribute("aria-modal"),this._element.removeAttribute("role"),this._isTransitioning=!1,this._backdrop.hide((()=>{document.body.classList.remove(Pi),this._resetAdjustments(),this._scrollBar.reset(),j.trigger(this._element,Li)}))}_showBackdrop(t){j.on(this._element,Si,(t=>{this._ignoreBackdropClick?this._ignoreBackdropClick=!1:t.target===t.currentTarget&&(!0===this._config.backdrop?this.hide():"static"===this._config.backdrop&&this._triggerBackdropTransition())})),this._backdrop.show(t)}_isAnimated(){return this._element.classList.contains("fade")}_triggerBackdropTransition(){if(j.trigger(this._element,"hidePrevented.bs.modal").defaultPrevented)return;const{classList:t,scrollHeight:e,style:i}=this._element,n=e>document.documentElement.clientHeight;!n&&"hidden"===i.overflowY||t.contains(Mi)||(n||(i.overflowY="hidden"),t.add(Mi),this._queueCallback((()=>{t.remove(Mi),n||this._queueCallback((()=>{i.overflowY=""}),this._dialog)}),this._dialog),this._element.focus())}_adjustDialog(){const t=this._element.scrollHeight>document.documentElement.clientHeight,e=this._scrollBar.getWidth(),i=e>0;(!i&&t&&!m()||i&&!t&&m())&&(this._element.style.paddingLeft=`${e}px`),(i&&!t&&!m()||!i&&t&&m())&&(this._element.style.paddingRight=`${e}px`)}_resetAdjustments(){this._element.style.paddingLeft="",this._element.style.paddingRight=""}static jQueryInterface(t,e){return this.each((function(){const i=Hi.getOrCreateInstance(this,t);if("string"==typeof t){if(void 0===i[t])throw new TypeError(`No method named "${t}"`);i[t](e)}}))}}j.on(document,"click.bs.modal.data-api",'[data-bs-toggle="modal"]',(function(t){const e=n(this);["A","AREA"].includes(this.tagName)&&t.preventDefault(),j.one(e,xi,(t=>{t.defaultPrevented||j.one(e,Li,(()=>{l(this)&&this.focus()}))}));const i=V.findOne(".modal.show");i&&Hi.getInstance(i).hide(),Hi.getOrCreateInstance(e).toggle(this)})),R(Hi),g(Hi);const Bi="offcanvas",Ri={backdrop:!0,keyboard:!0,scroll:!1},Wi={backdrop:"boolean",keyboard:"boolean",scroll:"boolean"},$i="show",zi=".offcanvas.show",qi="hidden.bs.offcanvas";class Fi extends B{constructor(t,e){super(t),this._config=this._getConfig(e),this._isShown=!1,this._backdrop=this._initializeBackDrop(),this._focustrap=this._initializeFocusTrap(),this._addEventListeners()}static get NAME(){return Bi}static get Default(){return Ri}toggle(t){return this._isShown?this.hide():this.show(t)}show(t){this._isShown||j.trigger(this._element,"show.bs.offcanvas",{relatedTarget:t}).defaultPrevented||(this._isShown=!0,this._element.style.visibility="visible",this._backdrop.show(),this._config.scroll||(new fi).hide(),this._element.removeAttribute("aria-hidden"),this._element.setAttribute("aria-modal",!0),this._element.setAttribute("role","dialog"),this._element.classList.add($i),this._queueCallback((()=>{this._config.scroll||this._focustrap.activate(),j.trigger(this._element,"shown.bs.offcanvas",{relatedTarget:t})}),this._element,!0))}hide(){this._isShown&&(j.trigger(this._element,"hide.bs.offcanvas").defaultPrevented||(this._focustrap.deactivate(),this._element.blur(),this._isShown=!1,this._element.classList.remove($i),this._backdrop.hide(),this._queueCallback((()=>{this._element.setAttribute("aria-hidden",!0),this._element.removeAttribute("aria-modal"),this._element.removeAttribute("role"),this._element.style.visibility="hidden",this._config.scroll||(new fi).reset(),j.trigger(this._element,qi)}),this._element,!0)))}dispose(){this._backdrop.dispose(),this._focustrap.deactivate(),super.dispose()}_getConfig(t){return t={...Ri,...U.getDataAttributes(this._element),..."object"==typeof t?t:{}},a(Bi,t,Wi),t}_initializeBackDrop(){return new bi({className:"offcanvas-backdrop",isVisible:this._config.backdrop,isAnimated:!0,rootElement:this._element.parentNode,clickCallback:()=>this.hide()})}_initializeFocusTrap(){return new Ai({trapElement:this._element})}_addEventListeners(){j.on(this._element,"keydown.dismiss.bs.offcanvas",(t=>{this._config.keyboard&&"Escape"===t.key&&this.hide()}))}static jQueryInterface(t){return this.each((function(){const e=Fi.getOrCreateInstance(this,t);if("string"==typeof t){if(void 0===e[t]||t.startsWith("_")||"constructor"===t)throw new TypeError(`No method named "${t}"`);e[t](this)}}))}}j.on(document,"click.bs.offcanvas.data-api",'[data-bs-toggle="offcanvas"]',(function(t){const e=n(this);if(["A","AREA"].includes(this.tagName)&&t.preventDefault(),c(this))return;j.one(e,qi,(()=>{l(this)&&this.focus()}));const i=V.findOne(zi);i&&i!==e&&Fi.getInstance(i).hide(),Fi.getOrCreateInstance(e).toggle(this)})),j.on(window,"load.bs.offcanvas.data-api",(()=>V.find(zi).forEach((t=>Fi.getOrCreateInstance(t).show())))),R(Fi),g(Fi);const Ui=new Set(["background","cite","href","itemtype","longdesc","poster","src","xlink:href"]),Vi=/^(?:(?:https?|mailto|ftp|tel|file|sms):|[^#&/:?]*(?:[#/?]|$))/i,Ki=/^data:(?:image\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\/(?:mpeg|mp4|ogg|webm)|audio\/(?:mp3|oga|ogg|opus));base64,[\d+/a-z]+=*$/i,Xi=(t,e)=>{const i=t.nodeName.toLowerCase();if(e.includes(i))return!Ui.has(i)||Boolean(Vi.test(t.nodeValue)||Ki.test(t.nodeValue));const n=e.filter((t=>t instanceof RegExp));for(let t=0,e=n.length;t{Xi(t,r)||i.removeAttribute(t.nodeName)}))}return n.body.innerHTML}const Qi="tooltip",Gi=new Set(["sanitize","allowList","sanitizeFn"]),Zi={animation:"boolean",template:"string",title:"(string|element|function)",trigger:"string",delay:"(number|object)",html:"boolean",selector:"(string|boolean)",placement:"(string|function)",offset:"(array|string|function)",container:"(string|element|boolean)",fallbackPlacements:"array",boundary:"(string|element)",customClass:"(string|function)",sanitize:"boolean",sanitizeFn:"(null|function)",allowList:"object",popperConfig:"(null|object|function)"},Ji={AUTO:"auto",TOP:"top",RIGHT:m()?"left":"right",BOTTOM:"bottom",LEFT:m()?"right":"left"},tn={animation:!0,template:'',trigger:"hover focus",title:"",delay:0,html:!1,selector:!1,placement:"top",offset:[0,0],container:!1,fallbackPlacements:["top","right","bottom","left"],boundary:"clippingParents",customClass:"",sanitize:!0,sanitizeFn:null,allowList:{"*":["class","dir","id","lang","role",/^aria-[\w-]*$/i],a:["target","href","title","rel"],area:[],b:[],br:[],col:[],code:[],div:[],em:[],hr:[],h1:[],h2:[],h3:[],h4:[],h5:[],h6:[],i:[],img:["src","srcset","alt","title","width","height"],li:[],ol:[],p:[],pre:[],s:[],small:[],span:[],sub:[],sup:[],strong:[],u:[],ul:[]},popperConfig:null},en={HIDE:"hide.bs.tooltip",HIDDEN:"hidden.bs.tooltip",SHOW:"show.bs.tooltip",SHOWN:"shown.bs.tooltip",INSERTED:"inserted.bs.tooltip",CLICK:"click.bs.tooltip",FOCUSIN:"focusin.bs.tooltip",FOCUSOUT:"focusout.bs.tooltip",MOUSEENTER:"mouseenter.bs.tooltip",MOUSELEAVE:"mouseleave.bs.tooltip"},nn="fade",sn="show",on="show",rn="out",an=".tooltip-inner",ln=".modal",cn="hide.bs.modal",hn="hover",dn="focus";class un extends B{constructor(t,e){if(void 0===Fe)throw new TypeError("Bootstrap's tooltips require Popper (https://popper.js.org)");super(t),this._isEnabled=!0,this._timeout=0,this._hoverState="",this._activeTrigger={},this._popper=null,this._config=this._getConfig(e),this.tip=null,this._setListeners()}static get Default(){return tn}static get NAME(){return Qi}static get Event(){return en}static get DefaultType(){return Zi}enable(){this._isEnabled=!0}disable(){this._isEnabled=!1}toggleEnabled(){this._isEnabled=!this._isEnabled}toggle(t){if(this._isEnabled)if(t){const e=this._initializeOnDelegatedTarget(t);e._activeTrigger.click=!e._activeTrigger.click,e._isWithActiveTrigger()?e._enter(null,e):e._leave(null,e)}else{if(this.getTipElement().classList.contains(sn))return void this._leave(null,this);this._enter(null,this)}}dispose(){clearTimeout(this._timeout),j.off(this._element.closest(ln),cn,this._hideModalHandler),this.tip&&this.tip.remove(),this._disposePopper(),super.dispose()}show(){if("none"===this._element.style.display)throw new Error("Please use show on visible elements");if(!this.isWithContent()||!this._isEnabled)return;const t=j.trigger(this._element,this.constructor.Event.SHOW),e=h(this._element),i=null===e?this._element.ownerDocument.documentElement.contains(this._element):e.contains(this._element);if(t.defaultPrevented||!i)return;"tooltip"===this.constructor.NAME&&this.tip&&this.getTitle()!==this.tip.querySelector(an).innerHTML&&(this._disposePopper(),this.tip.remove(),this.tip=null);const n=this.getTipElement(),s=(t=>{do{t+=Math.floor(1e6*Math.random())}while(document.getElementById(t));return t})(this.constructor.NAME);n.setAttribute("id",s),this._element.setAttribute("aria-describedby",s),this._config.animation&&n.classList.add(nn);const o="function"==typeof this._config.placement?this._config.placement.call(this,n,this._element):this._config.placement,r=this._getAttachment(o);this._addAttachmentClass(r);const{container:a}=this._config;H.set(n,this.constructor.DATA_KEY,this),this._element.ownerDocument.documentElement.contains(this.tip)||(a.append(n),j.trigger(this._element,this.constructor.Event.INSERTED)),this._popper?this._popper.update():this._popper=qe(this._element,n,this._getPopperConfig(r)),n.classList.add(sn);const l=this._resolvePossibleFunction(this._config.customClass);l&&n.classList.add(...l.split(" ")),"ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach((t=>{j.on(t,"mouseover",d)}));const c=this.tip.classList.contains(nn);this._queueCallback((()=>{const t=this._hoverState;this._hoverState=null,j.trigger(this._element,this.constructor.Event.SHOWN),t===rn&&this._leave(null,this)}),this.tip,c)}hide(){if(!this._popper)return;const t=this.getTipElement();if(j.trigger(this._element,this.constructor.Event.HIDE).defaultPrevented)return;t.classList.remove(sn),"ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach((t=>j.off(t,"mouseover",d))),this._activeTrigger.click=!1,this._activeTrigger.focus=!1,this._activeTrigger.hover=!1;const e=this.tip.classList.contains(nn);this._queueCallback((()=>{this._isWithActiveTrigger()||(this._hoverState!==on&&t.remove(),this._cleanTipClass(),this._element.removeAttribute("aria-describedby"),j.trigger(this._element,this.constructor.Event.HIDDEN),this._disposePopper())}),this.tip,e),this._hoverState=""}update(){null!==this._popper&&this._popper.update()}isWithContent(){return Boolean(this.getTitle())}getTipElement(){if(this.tip)return this.tip;const t=document.createElement("div");t.innerHTML=this._config.template;const e=t.children[0];return this.setContent(e),e.classList.remove(nn,sn),this.tip=e,this.tip}setContent(t){this._sanitizeAndSetContent(t,this.getTitle(),an)}_sanitizeAndSetContent(t,e,i){const n=V.findOne(i,t);e||!n?this.setElementContent(n,e):n.remove()}setElementContent(t,e){if(null!==t)return o(e)?(e=r(e),void(this._config.html?e.parentNode!==t&&(t.innerHTML="",t.append(e)):t.textContent=e.textContent)):void(this._config.html?(this._config.sanitize&&(e=Yi(e,this._config.allowList,this._config.sanitizeFn)),t.innerHTML=e):t.textContent=e)}getTitle(){const t=this._element.getAttribute("data-bs-original-title")||this._config.title;return this._resolvePossibleFunction(t)}updateAttachment(t){return"right"===t?"end":"left"===t?"start":t}_initializeOnDelegatedTarget(t,e){return e||this.constructor.getOrCreateInstance(t.delegateTarget,this._getDelegateConfig())}_getOffset(){const{offset:t}=this._config;return"string"==typeof t?t.split(",").map((t=>Number.parseInt(t,10))):"function"==typeof t?e=>t(e,this._element):t}_resolvePossibleFunction(t){return"function"==typeof t?t.call(this._element):t}_getPopperConfig(t){const e={placement:t,modifiers:[{name:"flip",options:{fallbackPlacements:this._config.fallbackPlacements}},{name:"offset",options:{offset:this._getOffset()}},{name:"preventOverflow",options:{boundary:this._config.boundary}},{name:"arrow",options:{element:`.${this.constructor.NAME}-arrow`}},{name:"onChange",enabled:!0,phase:"afterWrite",fn:t=>this._handlePopperPlacementChange(t)}],onFirstUpdate:t=>{t.options.placement!==t.placement&&this._handlePopperPlacementChange(t)}};return{...e,..."function"==typeof this._config.popperConfig?this._config.popperConfig(e):this._config.popperConfig}}_addAttachmentClass(t){this.getTipElement().classList.add(`${this._getBasicClassPrefix()}-${this.updateAttachment(t)}`)}_getAttachment(t){return Ji[t.toUpperCase()]}_setListeners(){this._config.trigger.split(" ").forEach((t=>{if("click"===t)j.on(this._element,this.constructor.Event.CLICK,this._config.selector,(t=>this.toggle(t)));else if("manual"!==t){const e=t===hn?this.constructor.Event.MOUSEENTER:this.constructor.Event.FOCUSIN,i=t===hn?this.constructor.Event.MOUSELEAVE:this.constructor.Event.FOCUSOUT;j.on(this._element,e,this._config.selector,(t=>this._enter(t))),j.on(this._element,i,this._config.selector,(t=>this._leave(t)))}})),this._hideModalHandler=()=>{this._element&&this.hide()},j.on(this._element.closest(ln),cn,this._hideModalHandler),this._config.selector?this._config={...this._config,trigger:"manual",selector:""}:this._fixTitle()}_fixTitle(){const t=this._element.getAttribute("title"),e=typeof this._element.getAttribute("data-bs-original-title");(t||"string"!==e)&&(this._element.setAttribute("data-bs-original-title",t||""),!t||this._element.getAttribute("aria-label")||this._element.textContent||this._element.setAttribute("aria-label",t),this._element.setAttribute("title",""))}_enter(t,e){e=this._initializeOnDelegatedTarget(t,e),t&&(e._activeTrigger["focusin"===t.type?dn:hn]=!0),e.getTipElement().classList.contains(sn)||e._hoverState===on?e._hoverState=on:(clearTimeout(e._timeout),e._hoverState=on,e._config.delay&&e._config.delay.show?e._timeout=setTimeout((()=>{e._hoverState===on&&e.show()}),e._config.delay.show):e.show())}_leave(t,e){e=this._initializeOnDelegatedTarget(t,e),t&&(e._activeTrigger["focusout"===t.type?dn:hn]=e._element.contains(t.relatedTarget)),e._isWithActiveTrigger()||(clearTimeout(e._timeout),e._hoverState=rn,e._config.delay&&e._config.delay.hide?e._timeout=setTimeout((()=>{e._hoverState===rn&&e.hide()}),e._config.delay.hide):e.hide())}_isWithActiveTrigger(){for(const t in this._activeTrigger)if(this._activeTrigger[t])return!0;return!1}_getConfig(t){const e=U.getDataAttributes(this._element);return Object.keys(e).forEach((t=>{Gi.has(t)&&delete e[t]})),(t={...this.constructor.Default,...e,..."object"==typeof t&&t?t:{}}).container=!1===t.container?document.body:r(t.container),"number"==typeof t.delay&&(t.delay={show:t.delay,hide:t.delay}),"number"==typeof t.title&&(t.title=t.title.toString()),"number"==typeof t.content&&(t.content=t.content.toString()),a(Qi,t,this.constructor.DefaultType),t.sanitize&&(t.template=Yi(t.template,t.allowList,t.sanitizeFn)),t}_getDelegateConfig(){const t={};for(const e in this._config)this.constructor.Default[e]!==this._config[e]&&(t[e]=this._config[e]);return t}_cleanTipClass(){const t=this.getTipElement(),e=new RegExp(`(^|\\s)${this._getBasicClassPrefix()}\\S+`,"g"),i=t.getAttribute("class").match(e);null!==i&&i.length>0&&i.map((t=>t.trim())).forEach((e=>t.classList.remove(e)))}_getBasicClassPrefix(){return"bs-tooltip"}_handlePopperPlacementChange(t){const{state:e}=t;e&&(this.tip=e.elements.popper,this._cleanTipClass(),this._addAttachmentClass(this._getAttachment(e.placement)))}_disposePopper(){this._popper&&(this._popper.destroy(),this._popper=null)}static jQueryInterface(t){return this.each((function(){const e=un.getOrCreateInstance(this,t);if("string"==typeof t){if(void 0===e[t])throw new TypeError(`No method named "${t}"`);e[t]()}}))}}g(un);const fn={...un.Default,placement:"right",offset:[0,8],trigger:"click",content:"",template:''},pn={...un.DefaultType,content:"(string|element|function)"},mn={HIDE:"hide.bs.popover",HIDDEN:"hidden.bs.popover",SHOW:"show.bs.popover",SHOWN:"shown.bs.popover",INSERTED:"inserted.bs.popover",CLICK:"click.bs.popover",FOCUSIN:"focusin.bs.popover",FOCUSOUT:"focusout.bs.popover",MOUSEENTER:"mouseenter.bs.popover",MOUSELEAVE:"mouseleave.bs.popover"};class gn extends un{static get Default(){return fn}static get NAME(){return"popover"}static get Event(){return mn}static get DefaultType(){return pn}isWithContent(){return this.getTitle()||this._getContent()}setContent(t){this._sanitizeAndSetContent(t,this.getTitle(),".popover-header"),this._sanitizeAndSetContent(t,this._getContent(),".popover-body")}_getContent(){return this._resolvePossibleFunction(this._config.content)}_getBasicClassPrefix(){return"bs-popover"}static jQueryInterface(t){return this.each((function(){const e=gn.getOrCreateInstance(this,t);if("string"==typeof t){if(void 0===e[t])throw new TypeError(`No method named "${t}"`);e[t]()}}))}}g(gn);const _n="scrollspy",bn={offset:10,method:"auto",target:""},vn={offset:"number",method:"string",target:"(string|element)"},yn="active",wn=".nav-link, .list-group-item, .dropdown-item",En="position";class An extends B{constructor(t,e){super(t),this._scrollElement="BODY"===this._element.tagName?window:this._element,this._config=this._getConfig(e),this._offsets=[],this._targets=[],this._activeTarget=null,this._scrollHeight=0,j.on(this._scrollElement,"scroll.bs.scrollspy",(()=>this._process())),this.refresh(),this._process()}static get Default(){return bn}static get NAME(){return _n}refresh(){const t=this._scrollElement===this._scrollElement.window?"offset":En,e="auto"===this._config.method?t:this._config.method,n=e===En?this._getScrollTop():0;this._offsets=[],this._targets=[],this._scrollHeight=this._getScrollHeight(),V.find(wn,this._config.target).map((t=>{const s=i(t),o=s?V.findOne(s):null;if(o){const t=o.getBoundingClientRect();if(t.width||t.height)return[U[e](o).top+n,s]}return null})).filter((t=>t)).sort(((t,e)=>t[0]-e[0])).forEach((t=>{this._offsets.push(t[0]),this._targets.push(t[1])}))}dispose(){j.off(this._scrollElement,".bs.scrollspy"),super.dispose()}_getConfig(t){return(t={...bn,...U.getDataAttributes(this._element),..."object"==typeof t&&t?t:{}}).target=r(t.target)||document.documentElement,a(_n,t,vn),t}_getScrollTop(){return this._scrollElement===window?this._scrollElement.pageYOffset:this._scrollElement.scrollTop}_getScrollHeight(){return this._scrollElement.scrollHeight||Math.max(document.body.scrollHeight,document.documentElement.scrollHeight)}_getOffsetHeight(){return this._scrollElement===window?window.innerHeight:this._scrollElement.getBoundingClientRect().height}_process(){const t=this._getScrollTop()+this._config.offset,e=this._getScrollHeight(),i=this._config.offset+e-this._getOffsetHeight();if(this._scrollHeight!==e&&this.refresh(),t>=i){const t=this._targets[this._targets.length-1];this._activeTarget!==t&&this._activate(t)}else{if(this._activeTarget&&t0)return this._activeTarget=null,void this._clear();for(let e=this._offsets.length;e--;)this._activeTarget!==this._targets[e]&&t>=this._offsets[e]&&(void 0===this._offsets[e+1]||t`${e}[data-bs-target="${t}"],${e}[href="${t}"]`)),i=V.findOne(e.join(","),this._config.target);i.classList.add(yn),i.classList.contains("dropdown-item")?V.findOne(".dropdown-toggle",i.closest(".dropdown")).classList.add(yn):V.parents(i,".nav, .list-group").forEach((t=>{V.prev(t,".nav-link, .list-group-item").forEach((t=>t.classList.add(yn))),V.prev(t,".nav-item").forEach((t=>{V.children(t,".nav-link").forEach((t=>t.classList.add(yn)))}))})),j.trigger(this._scrollElement,"activate.bs.scrollspy",{relatedTarget:t})}_clear(){V.find(wn,this._config.target).filter((t=>t.classList.contains(yn))).forEach((t=>t.classList.remove(yn)))}static jQueryInterface(t){return this.each((function(){const e=An.getOrCreateInstance(this,t);if("string"==typeof t){if(void 0===e[t])throw new TypeError(`No method named "${t}"`);e[t]()}}))}}j.on(window,"load.bs.scrollspy.data-api",(()=>{V.find('[data-bs-spy="scroll"]').forEach((t=>new An(t)))})),g(An);const Tn="active",On="fade",Cn="show",kn=".active",Ln=":scope > li > .active";class xn extends B{static get NAME(){return"tab"}show(){if(this._element.parentNode&&this._element.parentNode.nodeType===Node.ELEMENT_NODE&&this._element.classList.contains(Tn))return;let t;const e=n(this._element),i=this._element.closest(".nav, .list-group");if(i){const e="UL"===i.nodeName||"OL"===i.nodeName?Ln:kn;t=V.find(e,i),t=t[t.length-1]}const s=t?j.trigger(t,"hide.bs.tab",{relatedTarget:this._element}):null;if(j.trigger(this._element,"show.bs.tab",{relatedTarget:t}).defaultPrevented||null!==s&&s.defaultPrevented)return;this._activate(this._element,i);const o=()=>{j.trigger(t,"hidden.bs.tab",{relatedTarget:this._element}),j.trigger(this._element,"shown.bs.tab",{relatedTarget:t})};e?this._activate(e,e.parentNode,o):o()}_activate(t,e,i){const n=(!e||"UL"!==e.nodeName&&"OL"!==e.nodeName?V.children(e,kn):V.find(Ln,e))[0],s=i&&n&&n.classList.contains(On),o=()=>this._transitionComplete(t,n,i);n&&s?(n.classList.remove(Cn),this._queueCallback(o,t,!0)):o()}_transitionComplete(t,e,i){if(e){e.classList.remove(Tn);const t=V.findOne(":scope > .dropdown-menu .active",e.parentNode);t&&t.classList.remove(Tn),"tab"===e.getAttribute("role")&&e.setAttribute("aria-selected",!1)}t.classList.add(Tn),"tab"===t.getAttribute("role")&&t.setAttribute("aria-selected",!0),u(t),t.classList.contains(On)&&t.classList.add(Cn);let n=t.parentNode;if(n&&"LI"===n.nodeName&&(n=n.parentNode),n&&n.classList.contains("dropdown-menu")){const e=t.closest(".dropdown");e&&V.find(".dropdown-toggle",e).forEach((t=>t.classList.add(Tn))),t.setAttribute("aria-expanded",!0)}i&&i()}static jQueryInterface(t){return this.each((function(){const e=xn.getOrCreateInstance(this);if("string"==typeof t){if(void 0===e[t])throw new TypeError(`No method named "${t}"`);e[t]()}}))}}j.on(document,"click.bs.tab.data-api",'[data-bs-toggle="tab"], [data-bs-toggle="pill"], [data-bs-toggle="list"]',(function(t){["A","AREA"].includes(this.tagName)&&t.preventDefault(),c(this)||xn.getOrCreateInstance(this).show()})),g(xn);const Dn="toast",Sn="hide",Nn="show",In="showing",Pn={animation:"boolean",autohide:"boolean",delay:"number"},jn={animation:!0,autohide:!0,delay:5e3};class Mn extends B{constructor(t,e){super(t),this._config=this._getConfig(e),this._timeout=null,this._hasMouseInteraction=!1,this._hasKeyboardInteraction=!1,this._setListeners()}static get DefaultType(){return Pn}static get Default(){return jn}static get NAME(){return Dn}show(){j.trigger(this._element,"show.bs.toast").defaultPrevented||(this._clearTimeout(),this._config.animation&&this._element.classList.add("fade"),this._element.classList.remove(Sn),u(this._element),this._element.classList.add(Nn),this._element.classList.add(In),this._queueCallback((()=>{this._element.classList.remove(In),j.trigger(this._element,"shown.bs.toast"),this._maybeScheduleHide()}),this._element,this._config.animation))}hide(){this._element.classList.contains(Nn)&&(j.trigger(this._element,"hide.bs.toast").defaultPrevented||(this._element.classList.add(In),this._queueCallback((()=>{this._element.classList.add(Sn),this._element.classList.remove(In),this._element.classList.remove(Nn),j.trigger(this._element,"hidden.bs.toast")}),this._element,this._config.animation)))}dispose(){this._clearTimeout(),this._element.classList.contains(Nn)&&this._element.classList.remove(Nn),super.dispose()}_getConfig(t){return t={...jn,...U.getDataAttributes(this._element),..."object"==typeof t&&t?t:{}},a(Dn,t,this.constructor.DefaultType),t}_maybeScheduleHide(){this._config.autohide&&(this._hasMouseInteraction||this._hasKeyboardInteraction||(this._timeout=setTimeout((()=>{this.hide()}),this._config.delay)))}_onInteraction(t,e){switch(t.type){case"mouseover":case"mouseout":this._hasMouseInteraction=e;break;case"focusin":case"focusout":this._hasKeyboardInteraction=e}if(e)return void this._clearTimeout();const i=t.relatedTarget;this._element===i||this._element.contains(i)||this._maybeScheduleHide()}_setListeners(){j.on(this._element,"mouseover.bs.toast",(t=>this._onInteraction(t,!0))),j.on(this._element,"mouseout.bs.toast",(t=>this._onInteraction(t,!1))),j.on(this._element,"focusin.bs.toast",(t=>this._onInteraction(t,!0))),j.on(this._element,"focusout.bs.toast",(t=>this._onInteraction(t,!1)))}_clearTimeout(){clearTimeout(this._timeout),this._timeout=null}static jQueryInterface(t){return this.each((function(){const e=Mn.getOrCreateInstance(this,t);if("string"==typeof t){if(void 0===e[t])throw new TypeError(`No method named "${t}"`);e[t](this)}}))}}return R(Mn),g(Mn),{Alert:W,Button:z,Carousel:st,Collapse:pt,Dropdown:hi,Modal:Hi,Offcanvas:Fi,Popover:gn,ScrollSpy:An,Tab:xn,Toast:Mn,Tooltip:un}})); +//# sourceMappingURL=bootstrap.bundle.min.js.map \ No newline at end of file diff --git a/Dissertation_unzipped/sharktooth_functions_files/libs/clipboard/clipboard.min.js b/Dissertation_unzipped/sharktooth_functions_files/libs/clipboard/clipboard.min.js new file mode 100644 index 0000000..1103f81 --- /dev/null +++ b/Dissertation_unzipped/sharktooth_functions_files/libs/clipboard/clipboard.min.js @@ -0,0 +1,7 @@ +/*! + * clipboard.js v2.0.11 + * https://clipboardjs.com/ + * + * Licensed MIT © Zeno Rocha + */ +!function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e():"function"==typeof define&&define.amd?define([],e):"object"==typeof exports?exports.ClipboardJS=e():t.ClipboardJS=e()}(this,function(){return n={686:function(t,e,n){"use strict";n.d(e,{default:function(){return b}});var e=n(279),i=n.n(e),e=n(370),u=n.n(e),e=n(817),r=n.n(e);function c(t){try{return document.execCommand(t)}catch(t){return}}var a=function(t){t=r()(t);return c("cut"),t};function o(t,e){var n,o,t=(n=t,o="rtl"===document.documentElement.getAttribute("dir"),(t=document.createElement("textarea")).style.fontSize="12pt",t.style.border="0",t.style.padding="0",t.style.margin="0",t.style.position="absolute",t.style[o?"right":"left"]="-9999px",o=window.pageYOffset||document.documentElement.scrollTop,t.style.top="".concat(o,"px"),t.setAttribute("readonly",""),t.value=n,t);return e.container.appendChild(t),e=r()(t),c("copy"),t.remove(),e}var f=function(t){var e=1.anchorjs-link,.anchorjs-link:focus{opacity:1}",u.sheet.cssRules.length),u.sheet.insertRule("[data-anchorjs-icon]::after{content:attr(data-anchorjs-icon)}",u.sheet.cssRules.length),u.sheet.insertRule('@font-face{font-family:anchorjs-icons;src:url(data:n/a;base64,AAEAAAALAIAAAwAwT1MvMg8yG2cAAAE4AAAAYGNtYXDp3gC3AAABpAAAAExnYXNwAAAAEAAAA9wAAAAIZ2x5ZlQCcfwAAAH4AAABCGhlYWQHFvHyAAAAvAAAADZoaGVhBnACFwAAAPQAAAAkaG10eASAADEAAAGYAAAADGxvY2EACACEAAAB8AAAAAhtYXhwAAYAVwAAARgAAAAgbmFtZQGOH9cAAAMAAAAAunBvc3QAAwAAAAADvAAAACAAAQAAAAEAAHzE2p9fDzz1AAkEAAAAAADRecUWAAAAANQA6R8AAAAAAoACwAAAAAgAAgAAAAAAAAABAAADwP/AAAACgAAA/9MCrQABAAAAAAAAAAAAAAAAAAAAAwABAAAAAwBVAAIAAAAAAAIAAAAAAAAAAAAAAAAAAAAAAAMCQAGQAAUAAAKZAswAAACPApkCzAAAAesAMwEJAAAAAAAAAAAAAAAAAAAAARAAAAAAAAAAAAAAAAAAAAAAQAAg//0DwP/AAEADwABAAAAAAQAAAAAAAAAAAAAAIAAAAAAAAAIAAAACgAAxAAAAAwAAAAMAAAAcAAEAAwAAABwAAwABAAAAHAAEADAAAAAIAAgAAgAAACDpy//9//8AAAAg6cv//f///+EWNwADAAEAAAAAAAAAAAAAAAAACACEAAEAAAAAAAAAAAAAAAAxAAACAAQARAKAAsAAKwBUAAABIiYnJjQ3NzY2MzIWFxYUBwcGIicmNDc3NjQnJiYjIgYHBwYUFxYUBwYGIwciJicmNDc3NjIXFhQHBwYUFxYWMzI2Nzc2NCcmNDc2MhcWFAcHBgYjARQGDAUtLXoWOR8fORYtLTgKGwoKCjgaGg0gEhIgDXoaGgkJBQwHdR85Fi0tOAobCgoKOBoaDSASEiANehoaCQkKGwotLXoWOR8BMwUFLYEuehYXFxYugC44CQkKGwo4GkoaDQ0NDXoaShoKGwoFBe8XFi6ALjgJCQobCjgaShoNDQ0NehpKGgobCgoKLYEuehYXAAAADACWAAEAAAAAAAEACAAAAAEAAAAAAAIAAwAIAAEAAAAAAAMACAAAAAEAAAAAAAQACAAAAAEAAAAAAAUAAQALAAEAAAAAAAYACAAAAAMAAQQJAAEAEAAMAAMAAQQJAAIABgAcAAMAAQQJAAMAEAAMAAMAAQQJAAQAEAAMAAMAAQQJAAUAAgAiAAMAAQQJAAYAEAAMYW5jaG9yanM0MDBAAGEAbgBjAGgAbwByAGoAcwA0ADAAMABAAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAH//wAP) format("truetype")}',u.sheet.cssRules.length)),u=document.querySelectorAll("[id]"),t=[].map.call(u,function(A){return A.id}),i=0;i\]./()*\\\n\t\b\v\u00A0]/g,"-").replace(/-{2,}/g,"-").substring(0,this.options.truncate).replace(/^-+|-+$/gm,"").toLowerCase()},this.hasAnchorJSLink=function(A){var e=A.firstChild&&-1<(" "+A.firstChild.className+" ").indexOf(" anchorjs-link "),A=A.lastChild&&-1<(" "+A.lastChild.className+" ").indexOf(" anchorjs-link ");return e||A||!1}}}); +// @license-end \ No newline at end of file diff --git a/Dissertation_unzipped/sharktooth_functions_files/libs/quarto-html/popper.min.js b/Dissertation_unzipped/sharktooth_functions_files/libs/quarto-html/popper.min.js new file mode 100644 index 0000000..2269d66 --- /dev/null +++ b/Dissertation_unzipped/sharktooth_functions_files/libs/quarto-html/popper.min.js @@ -0,0 +1,6 @@ +/** + * @popperjs/core v2.11.4 - MIT License + */ + +!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).Popper={})}(this,(function(e){"use strict";function t(e){if(null==e)return window;if("[object Window]"!==e.toString()){var t=e.ownerDocument;return t&&t.defaultView||window}return e}function n(e){return e instanceof t(e).Element||e instanceof Element}function r(e){return e instanceof t(e).HTMLElement||e instanceof HTMLElement}function o(e){return"undefined"!=typeof ShadowRoot&&(e instanceof t(e).ShadowRoot||e instanceof ShadowRoot)}var i=Math.max,a=Math.min,s=Math.round;function f(e,t){void 0===t&&(t=!1);var n=e.getBoundingClientRect(),o=1,i=1;if(r(e)&&t){var a=e.offsetHeight,f=e.offsetWidth;f>0&&(o=s(n.width)/f||1),a>0&&(i=s(n.height)/a||1)}return{width:n.width/o,height:n.height/i,top:n.top/i,right:n.right/o,bottom:n.bottom/i,left:n.left/o,x:n.left/o,y:n.top/i}}function c(e){var n=t(e);return{scrollLeft:n.pageXOffset,scrollTop:n.pageYOffset}}function p(e){return e?(e.nodeName||"").toLowerCase():null}function u(e){return((n(e)?e.ownerDocument:e.document)||window.document).documentElement}function l(e){return f(u(e)).left+c(e).scrollLeft}function d(e){return t(e).getComputedStyle(e)}function h(e){var t=d(e),n=t.overflow,r=t.overflowX,o=t.overflowY;return/auto|scroll|overlay|hidden/.test(n+o+r)}function m(e,n,o){void 0===o&&(o=!1);var i,a,d=r(n),m=r(n)&&function(e){var t=e.getBoundingClientRect(),n=s(t.width)/e.offsetWidth||1,r=s(t.height)/e.offsetHeight||1;return 1!==n||1!==r}(n),v=u(n),g=f(e,m),y={scrollLeft:0,scrollTop:0},b={x:0,y:0};return(d||!d&&!o)&&(("body"!==p(n)||h(v))&&(y=(i=n)!==t(i)&&r(i)?{scrollLeft:(a=i).scrollLeft,scrollTop:a.scrollTop}:c(i)),r(n)?((b=f(n,!0)).x+=n.clientLeft,b.y+=n.clientTop):v&&(b.x=l(v))),{x:g.left+y.scrollLeft-b.x,y:g.top+y.scrollTop-b.y,width:g.width,height:g.height}}function v(e){var t=f(e),n=e.offsetWidth,r=e.offsetHeight;return Math.abs(t.width-n)<=1&&(n=t.width),Math.abs(t.height-r)<=1&&(r=t.height),{x:e.offsetLeft,y:e.offsetTop,width:n,height:r}}function g(e){return"html"===p(e)?e:e.assignedSlot||e.parentNode||(o(e)?e.host:null)||u(e)}function y(e){return["html","body","#document"].indexOf(p(e))>=0?e.ownerDocument.body:r(e)&&h(e)?e:y(g(e))}function b(e,n){var r;void 0===n&&(n=[]);var o=y(e),i=o===(null==(r=e.ownerDocument)?void 0:r.body),a=t(o),s=i?[a].concat(a.visualViewport||[],h(o)?o:[]):o,f=n.concat(s);return i?f:f.concat(b(g(s)))}function x(e){return["table","td","th"].indexOf(p(e))>=0}function w(e){return r(e)&&"fixed"!==d(e).position?e.offsetParent:null}function O(e){for(var n=t(e),i=w(e);i&&x(i)&&"static"===d(i).position;)i=w(i);return i&&("html"===p(i)||"body"===p(i)&&"static"===d(i).position)?n:i||function(e){var t=-1!==navigator.userAgent.toLowerCase().indexOf("firefox");if(-1!==navigator.userAgent.indexOf("Trident")&&r(e)&&"fixed"===d(e).position)return null;var n=g(e);for(o(n)&&(n=n.host);r(n)&&["html","body"].indexOf(p(n))<0;){var i=d(n);if("none"!==i.transform||"none"!==i.perspective||"paint"===i.contain||-1!==["transform","perspective"].indexOf(i.willChange)||t&&"filter"===i.willChange||t&&i.filter&&"none"!==i.filter)return n;n=n.parentNode}return null}(e)||n}var j="top",E="bottom",D="right",A="left",L="auto",P=[j,E,D,A],M="start",k="end",W="viewport",B="popper",H=P.reduce((function(e,t){return e.concat([t+"-"+M,t+"-"+k])}),[]),T=[].concat(P,[L]).reduce((function(e,t){return e.concat([t,t+"-"+M,t+"-"+k])}),[]),R=["beforeRead","read","afterRead","beforeMain","main","afterMain","beforeWrite","write","afterWrite"];function S(e){var t=new Map,n=new Set,r=[];function o(e){n.add(e.name),[].concat(e.requires||[],e.requiresIfExists||[]).forEach((function(e){if(!n.has(e)){var r=t.get(e);r&&o(r)}})),r.push(e)}return e.forEach((function(e){t.set(e.name,e)})),e.forEach((function(e){n.has(e.name)||o(e)})),r}function C(e){return e.split("-")[0]}function q(e,t){var n=t.getRootNode&&t.getRootNode();if(e.contains(t))return!0;if(n&&o(n)){var r=t;do{if(r&&e.isSameNode(r))return!0;r=r.parentNode||r.host}while(r)}return!1}function V(e){return Object.assign({},e,{left:e.x,top:e.y,right:e.x+e.width,bottom:e.y+e.height})}function N(e,r){return r===W?V(function(e){var n=t(e),r=u(e),o=n.visualViewport,i=r.clientWidth,a=r.clientHeight,s=0,f=0;return o&&(i=o.width,a=o.height,/^((?!chrome|android).)*safari/i.test(navigator.userAgent)||(s=o.offsetLeft,f=o.offsetTop)),{width:i,height:a,x:s+l(e),y:f}}(e)):n(r)?function(e){var t=f(e);return t.top=t.top+e.clientTop,t.left=t.left+e.clientLeft,t.bottom=t.top+e.clientHeight,t.right=t.left+e.clientWidth,t.width=e.clientWidth,t.height=e.clientHeight,t.x=t.left,t.y=t.top,t}(r):V(function(e){var t,n=u(e),r=c(e),o=null==(t=e.ownerDocument)?void 0:t.body,a=i(n.scrollWidth,n.clientWidth,o?o.scrollWidth:0,o?o.clientWidth:0),s=i(n.scrollHeight,n.clientHeight,o?o.scrollHeight:0,o?o.clientHeight:0),f=-r.scrollLeft+l(e),p=-r.scrollTop;return"rtl"===d(o||n).direction&&(f+=i(n.clientWidth,o?o.clientWidth:0)-a),{width:a,height:s,x:f,y:p}}(u(e)))}function I(e,t,o){var s="clippingParents"===t?function(e){var t=b(g(e)),o=["absolute","fixed"].indexOf(d(e).position)>=0&&r(e)?O(e):e;return n(o)?t.filter((function(e){return n(e)&&q(e,o)&&"body"!==p(e)})):[]}(e):[].concat(t),f=[].concat(s,[o]),c=f[0],u=f.reduce((function(t,n){var r=N(e,n);return t.top=i(r.top,t.top),t.right=a(r.right,t.right),t.bottom=a(r.bottom,t.bottom),t.left=i(r.left,t.left),t}),N(e,c));return u.width=u.right-u.left,u.height=u.bottom-u.top,u.x=u.left,u.y=u.top,u}function _(e){return e.split("-")[1]}function F(e){return["top","bottom"].indexOf(e)>=0?"x":"y"}function U(e){var t,n=e.reference,r=e.element,o=e.placement,i=o?C(o):null,a=o?_(o):null,s=n.x+n.width/2-r.width/2,f=n.y+n.height/2-r.height/2;switch(i){case j:t={x:s,y:n.y-r.height};break;case E:t={x:s,y:n.y+n.height};break;case D:t={x:n.x+n.width,y:f};break;case A:t={x:n.x-r.width,y:f};break;default:t={x:n.x,y:n.y}}var c=i?F(i):null;if(null!=c){var p="y"===c?"height":"width";switch(a){case M:t[c]=t[c]-(n[p]/2-r[p]/2);break;case k:t[c]=t[c]+(n[p]/2-r[p]/2)}}return t}function z(e){return Object.assign({},{top:0,right:0,bottom:0,left:0},e)}function X(e,t){return t.reduce((function(t,n){return t[n]=e,t}),{})}function Y(e,t){void 0===t&&(t={});var r=t,o=r.placement,i=void 0===o?e.placement:o,a=r.boundary,s=void 0===a?"clippingParents":a,c=r.rootBoundary,p=void 0===c?W:c,l=r.elementContext,d=void 0===l?B:l,h=r.altBoundary,m=void 0!==h&&h,v=r.padding,g=void 0===v?0:v,y=z("number"!=typeof g?g:X(g,P)),b=d===B?"reference":B,x=e.rects.popper,w=e.elements[m?b:d],O=I(n(w)?w:w.contextElement||u(e.elements.popper),s,p),A=f(e.elements.reference),L=U({reference:A,element:x,strategy:"absolute",placement:i}),M=V(Object.assign({},x,L)),k=d===B?M:A,H={top:O.top-k.top+y.top,bottom:k.bottom-O.bottom+y.bottom,left:O.left-k.left+y.left,right:k.right-O.right+y.right},T=e.modifiersData.offset;if(d===B&&T){var R=T[i];Object.keys(H).forEach((function(e){var t=[D,E].indexOf(e)>=0?1:-1,n=[j,E].indexOf(e)>=0?"y":"x";H[e]+=R[n]*t}))}return H}var G={placement:"bottom",modifiers:[],strategy:"absolute"};function J(){for(var e=arguments.length,t=new Array(e),n=0;n=0?-1:1,i="function"==typeof n?n(Object.assign({},t,{placement:e})):n,a=i[0],s=i[1];return a=a||0,s=(s||0)*o,[A,D].indexOf(r)>=0?{x:s,y:a}:{x:a,y:s}}(n,t.rects,i),e}),{}),s=a[t.placement],f=s.x,c=s.y;null!=t.modifiersData.popperOffsets&&(t.modifiersData.popperOffsets.x+=f,t.modifiersData.popperOffsets.y+=c),t.modifiersData[r]=a}},ie={left:"right",right:"left",bottom:"top",top:"bottom"};function ae(e){return e.replace(/left|right|bottom|top/g,(function(e){return ie[e]}))}var se={start:"end",end:"start"};function fe(e){return e.replace(/start|end/g,(function(e){return se[e]}))}function ce(e,t){void 0===t&&(t={});var n=t,r=n.placement,o=n.boundary,i=n.rootBoundary,a=n.padding,s=n.flipVariations,f=n.allowedAutoPlacements,c=void 0===f?T:f,p=_(r),u=p?s?H:H.filter((function(e){return _(e)===p})):P,l=u.filter((function(e){return c.indexOf(e)>=0}));0===l.length&&(l=u);var d=l.reduce((function(t,n){return t[n]=Y(e,{placement:n,boundary:o,rootBoundary:i,padding:a})[C(n)],t}),{});return Object.keys(d).sort((function(e,t){return d[e]-d[t]}))}var pe={name:"flip",enabled:!0,phase:"main",fn:function(e){var t=e.state,n=e.options,r=e.name;if(!t.modifiersData[r]._skip){for(var o=n.mainAxis,i=void 0===o||o,a=n.altAxis,s=void 0===a||a,f=n.fallbackPlacements,c=n.padding,p=n.boundary,u=n.rootBoundary,l=n.altBoundary,d=n.flipVariations,h=void 0===d||d,m=n.allowedAutoPlacements,v=t.options.placement,g=C(v),y=f||(g===v||!h?[ae(v)]:function(e){if(C(e)===L)return[];var t=ae(e);return[fe(e),t,fe(t)]}(v)),b=[v].concat(y).reduce((function(e,n){return e.concat(C(n)===L?ce(t,{placement:n,boundary:p,rootBoundary:u,padding:c,flipVariations:h,allowedAutoPlacements:m}):n)}),[]),x=t.rects.reference,w=t.rects.popper,O=new Map,P=!0,k=b[0],W=0;W=0,S=R?"width":"height",q=Y(t,{placement:B,boundary:p,rootBoundary:u,altBoundary:l,padding:c}),V=R?T?D:A:T?E:j;x[S]>w[S]&&(V=ae(V));var N=ae(V),I=[];if(i&&I.push(q[H]<=0),s&&I.push(q[V]<=0,q[N]<=0),I.every((function(e){return e}))){k=B,P=!1;break}O.set(B,I)}if(P)for(var F=function(e){var t=b.find((function(t){var n=O.get(t);if(n)return n.slice(0,e).every((function(e){return e}))}));if(t)return k=t,"break"},U=h?3:1;U>0;U--){if("break"===F(U))break}t.placement!==k&&(t.modifiersData[r]._skip=!0,t.placement=k,t.reset=!0)}},requiresIfExists:["offset"],data:{_skip:!1}};function ue(e,t,n){return i(e,a(t,n))}var le={name:"preventOverflow",enabled:!0,phase:"main",fn:function(e){var t=e.state,n=e.options,r=e.name,o=n.mainAxis,s=void 0===o||o,f=n.altAxis,c=void 0!==f&&f,p=n.boundary,u=n.rootBoundary,l=n.altBoundary,d=n.padding,h=n.tether,m=void 0===h||h,g=n.tetherOffset,y=void 0===g?0:g,b=Y(t,{boundary:p,rootBoundary:u,padding:d,altBoundary:l}),x=C(t.placement),w=_(t.placement),L=!w,P=F(x),k="x"===P?"y":"x",W=t.modifiersData.popperOffsets,B=t.rects.reference,H=t.rects.popper,T="function"==typeof y?y(Object.assign({},t.rects,{placement:t.placement})):y,R="number"==typeof T?{mainAxis:T,altAxis:T}:Object.assign({mainAxis:0,altAxis:0},T),S=t.modifiersData.offset?t.modifiersData.offset[t.placement]:null,q={x:0,y:0};if(W){if(s){var V,N="y"===P?j:A,I="y"===P?E:D,U="y"===P?"height":"width",z=W[P],X=z+b[N],G=z-b[I],J=m?-H[U]/2:0,K=w===M?B[U]:H[U],Q=w===M?-H[U]:-B[U],Z=t.elements.arrow,$=m&&Z?v(Z):{width:0,height:0},ee=t.modifiersData["arrow#persistent"]?t.modifiersData["arrow#persistent"].padding:{top:0,right:0,bottom:0,left:0},te=ee[N],ne=ee[I],re=ue(0,B[U],$[U]),oe=L?B[U]/2-J-re-te-R.mainAxis:K-re-te-R.mainAxis,ie=L?-B[U]/2+J+re+ne+R.mainAxis:Q+re+ne+R.mainAxis,ae=t.elements.arrow&&O(t.elements.arrow),se=ae?"y"===P?ae.clientTop||0:ae.clientLeft||0:0,fe=null!=(V=null==S?void 0:S[P])?V:0,ce=z+ie-fe,pe=ue(m?a(X,z+oe-fe-se):X,z,m?i(G,ce):G);W[P]=pe,q[P]=pe-z}if(c){var le,de="x"===P?j:A,he="x"===P?E:D,me=W[k],ve="y"===k?"height":"width",ge=me+b[de],ye=me-b[he],be=-1!==[j,A].indexOf(x),xe=null!=(le=null==S?void 0:S[k])?le:0,we=be?ge:me-B[ve]-H[ve]-xe+R.altAxis,Oe=be?me+B[ve]+H[ve]-xe-R.altAxis:ye,je=m&&be?function(e,t,n){var r=ue(e,t,n);return r>n?n:r}(we,me,Oe):ue(m?we:ge,me,m?Oe:ye);W[k]=je,q[k]=je-me}t.modifiersData[r]=q}},requiresIfExists:["offset"]};var de={name:"arrow",enabled:!0,phase:"main",fn:function(e){var t,n=e.state,r=e.name,o=e.options,i=n.elements.arrow,a=n.modifiersData.popperOffsets,s=C(n.placement),f=F(s),c=[A,D].indexOf(s)>=0?"height":"width";if(i&&a){var p=function(e,t){return z("number"!=typeof(e="function"==typeof e?e(Object.assign({},t.rects,{placement:t.placement})):e)?e:X(e,P))}(o.padding,n),u=v(i),l="y"===f?j:A,d="y"===f?E:D,h=n.rects.reference[c]+n.rects.reference[f]-a[f]-n.rects.popper[c],m=a[f]-n.rects.reference[f],g=O(i),y=g?"y"===f?g.clientHeight||0:g.clientWidth||0:0,b=h/2-m/2,x=p[l],w=y-u[c]-p[d],L=y/2-u[c]/2+b,M=ue(x,L,w),k=f;n.modifiersData[r]=((t={})[k]=M,t.centerOffset=M-L,t)}},effect:function(e){var t=e.state,n=e.options.element,r=void 0===n?"[data-popper-arrow]":n;null!=r&&("string"!=typeof r||(r=t.elements.popper.querySelector(r)))&&q(t.elements.popper,r)&&(t.elements.arrow=r)},requires:["popperOffsets"],requiresIfExists:["preventOverflow"]};function he(e,t,n){return void 0===n&&(n={x:0,y:0}),{top:e.top-t.height-n.y,right:e.right-t.width+n.x,bottom:e.bottom-t.height+n.y,left:e.left-t.width-n.x}}function me(e){return[j,D,E,A].some((function(t){return e[t]>=0}))}var ve={name:"hide",enabled:!0,phase:"main",requiresIfExists:["preventOverflow"],fn:function(e){var t=e.state,n=e.name,r=t.rects.reference,o=t.rects.popper,i=t.modifiersData.preventOverflow,a=Y(t,{elementContext:"reference"}),s=Y(t,{altBoundary:!0}),f=he(a,r),c=he(s,o,i),p=me(f),u=me(c);t.modifiersData[n]={referenceClippingOffsets:f,popperEscapeOffsets:c,isReferenceHidden:p,hasPopperEscaped:u},t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-reference-hidden":p,"data-popper-escaped":u})}},ge=K({defaultModifiers:[Z,$,ne,re]}),ye=[Z,$,ne,re,oe,pe,le,de,ve],be=K({defaultModifiers:ye});e.applyStyles=re,e.arrow=de,e.computeStyles=ne,e.createPopper=be,e.createPopperLite=ge,e.defaultModifiers=ye,e.detectOverflow=Y,e.eventListeners=Z,e.flip=pe,e.hide=ve,e.offset=oe,e.popperGenerator=K,e.popperOffsets=$,e.preventOverflow=le,Object.defineProperty(e,"__esModule",{value:!0})})); + diff --git a/Dissertation_unzipped/sharktooth_functions_files/libs/quarto-html/quarto-syntax-highlighting.css b/Dissertation_unzipped/sharktooth_functions_files/libs/quarto-html/quarto-syntax-highlighting.css new file mode 100644 index 0000000..d9fd98f --- /dev/null +++ b/Dissertation_unzipped/sharktooth_functions_files/libs/quarto-html/quarto-syntax-highlighting.css @@ -0,0 +1,203 @@ +/* quarto syntax highlight colors */ +:root { + --quarto-hl-ot-color: #003B4F; + --quarto-hl-at-color: #657422; + --quarto-hl-ss-color: #20794D; + --quarto-hl-an-color: #5E5E5E; + --quarto-hl-fu-color: #4758AB; + --quarto-hl-st-color: #20794D; + --quarto-hl-cf-color: #003B4F; + --quarto-hl-op-color: #5E5E5E; + --quarto-hl-er-color: #AD0000; + --quarto-hl-bn-color: #AD0000; + --quarto-hl-al-color: #AD0000; + --quarto-hl-va-color: #111111; + --quarto-hl-bu-color: inherit; + --quarto-hl-ex-color: inherit; + --quarto-hl-pp-color: #AD0000; + --quarto-hl-in-color: #5E5E5E; + --quarto-hl-vs-color: #20794D; + --quarto-hl-wa-color: #5E5E5E; + --quarto-hl-do-color: #5E5E5E; + --quarto-hl-im-color: #00769E; + --quarto-hl-ch-color: #20794D; + --quarto-hl-dt-color: #AD0000; + --quarto-hl-fl-color: #AD0000; + --quarto-hl-co-color: #5E5E5E; + --quarto-hl-cv-color: #5E5E5E; + --quarto-hl-cn-color: #8f5902; + --quarto-hl-sc-color: #5E5E5E; + --quarto-hl-dv-color: #AD0000; + --quarto-hl-kw-color: #003B4F; +} + +/* other quarto variables */ +:root { + --quarto-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; +} + +pre > code.sourceCode > span { + color: #003B4F; +} + +code span { + color: #003B4F; +} + +code.sourceCode > span { + color: #003B4F; +} + +div.sourceCode, +div.sourceCode pre.sourceCode { + color: #003B4F; +} + +code span.ot { + color: #003B4F; + font-style: inherit; +} + +code span.at { + color: #657422; + font-style: inherit; +} + +code span.ss { + color: #20794D; + font-style: inherit; +} + +code span.an { + color: #5E5E5E; + font-style: inherit; +} + +code span.fu { + color: #4758AB; + font-style: inherit; +} + +code span.st { + color: #20794D; + font-style: inherit; +} + +code span.cf { + color: #003B4F; + font-style: inherit; +} + +code span.op { + color: #5E5E5E; + font-style: inherit; +} + +code span.er { + color: #AD0000; + font-style: inherit; +} + +code span.bn { + color: #AD0000; + font-style: inherit; +} + +code span.al { + color: #AD0000; + font-style: inherit; +} + +code span.va { + color: #111111; + font-style: inherit; +} + +code span.bu { + font-style: inherit; +} + +code span.ex { + font-style: inherit; +} + +code span.pp { + color: #AD0000; + font-style: inherit; +} + +code span.in { + color: #5E5E5E; + font-style: inherit; +} + +code span.vs { + color: #20794D; + font-style: inherit; +} + +code span.wa { + color: #5E5E5E; + font-style: italic; +} + +code span.do { + color: #5E5E5E; + font-style: italic; +} + +code span.im { + color: #00769E; + font-style: inherit; +} + +code span.ch { + color: #20794D; + font-style: inherit; +} + +code span.dt { + color: #AD0000; + font-style: inherit; +} + +code span.fl { + color: #AD0000; + font-style: inherit; +} + +code span.co { + color: #5E5E5E; + font-style: inherit; +} + +code span.cv { + color: #5E5E5E; + font-style: italic; +} + +code span.cn { + color: #8f5902; + font-style: inherit; +} + +code span.sc { + color: #5E5E5E; + font-style: inherit; +} + +code span.dv { + color: #AD0000; + font-style: inherit; +} + +code span.kw { + color: #003B4F; + font-style: inherit; +} + +.prevent-inlining { + content: " { + // Find any conflicting margin elements and add margins to the + // top to prevent overlap + const marginChildren = window.document.querySelectorAll( + ".column-margin.column-container > * " + ); + + let lastBottom = 0; + for (const marginChild of marginChildren) { + if (marginChild.offsetParent !== null) { + // clear the top margin so we recompute it + marginChild.style.marginTop = null; + const top = marginChild.getBoundingClientRect().top + window.scrollY; + console.log({ + childtop: marginChild.getBoundingClientRect().top, + scroll: window.scrollY, + top, + lastBottom, + }); + if (top < lastBottom) { + const margin = lastBottom - top; + marginChild.style.marginTop = `${margin}px`; + } + const styles = window.getComputedStyle(marginChild); + const marginTop = parseFloat(styles["marginTop"]); + + console.log({ + top, + height: marginChild.getBoundingClientRect().height, + marginTop, + total: top + marginChild.getBoundingClientRect().height + marginTop, + }); + lastBottom = top + marginChild.getBoundingClientRect().height + marginTop; + } + } +}; + +window.document.addEventListener("DOMContentLoaded", function (_event) { + // Recompute the position of margin elements anytime the body size changes + if (window.ResizeObserver) { + const resizeObserver = new window.ResizeObserver( + throttle(layoutMarginEls, 50) + ); + resizeObserver.observe(window.document.body); + } + + const tocEl = window.document.querySelector('nav.toc-active[role="doc-toc"]'); + const sidebarEl = window.document.getElementById("quarto-sidebar"); + const leftTocEl = window.document.getElementById("quarto-sidebar-toc-left"); + const marginSidebarEl = window.document.getElementById( + "quarto-margin-sidebar" + ); + // function to determine whether the element has a previous sibling that is active + const prevSiblingIsActiveLink = (el) => { + const sibling = el.previousElementSibling; + if (sibling && sibling.tagName === "A") { + return sibling.classList.contains("active"); + } else { + return false; + } + }; + + // fire slideEnter for bootstrap tab activations (for htmlwidget resize behavior) + function fireSlideEnter(e) { + const event = window.document.createEvent("Event"); + event.initEvent("slideenter", true, true); + window.document.dispatchEvent(event); + } + const tabs = window.document.querySelectorAll('a[data-bs-toggle="tab"]'); + tabs.forEach((tab) => { + tab.addEventListener("shown.bs.tab", fireSlideEnter); + }); + + // fire slideEnter for tabby tab activations (for htmlwidget resize behavior) + document.addEventListener("tabby", fireSlideEnter, false); + + // Track scrolling and mark TOC links as active + // get table of contents and sidebar (bail if we don't have at least one) + const tocLinks = tocEl + ? [...tocEl.querySelectorAll("a[data-scroll-target]")] + : []; + const makeActive = (link) => tocLinks[link].classList.add("active"); + const removeActive = (link) => tocLinks[link].classList.remove("active"); + const removeAllActive = () => + [...Array(tocLinks.length).keys()].forEach((link) => removeActive(link)); + + // activate the anchor for a section associated with this TOC entry + tocLinks.forEach((link) => { + link.addEventListener("click", () => { + if (link.href.indexOf("#") !== -1) { + const anchor = link.href.split("#")[1]; + const heading = window.document.querySelector( + `[data-anchor-id=${anchor}]` + ); + if (heading) { + // Add the class + heading.classList.add("reveal-anchorjs-link"); + + // function to show the anchor + const handleMouseout = () => { + heading.classList.remove("reveal-anchorjs-link"); + heading.removeEventListener("mouseout", handleMouseout); + }; + + // add a function to clear the anchor when the user mouses out of it + heading.addEventListener("mouseout", handleMouseout); + } + } + }); + }); + + const sections = tocLinks.map((link) => { + const target = link.getAttribute("data-scroll-target"); + if (target.startsWith("#")) { + return window.document.getElementById(decodeURI(`${target.slice(1)}`)); + } else { + return window.document.querySelector(decodeURI(`${target}`)); + } + }); + + const sectionMargin = 200; + let currentActive = 0; + // track whether we've initialized state the first time + let init = false; + + const updateActiveLink = () => { + // The index from bottom to top (e.g. reversed list) + let sectionIndex = -1; + if ( + window.innerHeight + window.pageYOffset >= + window.document.body.offsetHeight + ) { + sectionIndex = 0; + } else { + sectionIndex = [...sections].reverse().findIndex((section) => { + if (section) { + return window.pageYOffset >= section.offsetTop - sectionMargin; + } else { + return false; + } + }); + } + if (sectionIndex > -1) { + const current = sections.length - sectionIndex - 1; + if (current !== currentActive) { + removeAllActive(); + currentActive = current; + makeActive(current); + if (init) { + window.dispatchEvent(sectionChanged); + } + init = true; + } + } + }; + + const inHiddenRegion = (top, bottom, hiddenRegions) => { + for (const region of hiddenRegions) { + if (top <= region.bottom && bottom >= region.top) { + return true; + } + } + return false; + }; + + const categorySelector = "header.quarto-title-block .quarto-category"; + const activateCategories = (href) => { + // Find any categories + // Surround them with a link pointing back to: + // #category=Authoring + try { + const categoryEls = window.document.querySelectorAll(categorySelector); + for (const categoryEl of categoryEls) { + const categoryText = categoryEl.textContent; + if (categoryText) { + const link = `${href}#category=${encodeURIComponent(categoryText)}`; + const linkEl = window.document.createElement("a"); + linkEl.setAttribute("href", link); + for (const child of categoryEl.childNodes) { + linkEl.append(child); + } + categoryEl.appendChild(linkEl); + } + } + } catch { + // Ignore errors + } + }; + function hasTitleCategories() { + return window.document.querySelector(categorySelector) !== null; + } + + function offsetRelativeUrl(url) { + const offset = getMeta("quarto:offset"); + return offset ? offset + url : url; + } + + function offsetAbsoluteUrl(url) { + const offset = getMeta("quarto:offset"); + const baseUrl = new URL(offset, window.location); + + const projRelativeUrl = url.replace(baseUrl, ""); + if (projRelativeUrl.startsWith("/")) { + return projRelativeUrl; + } else { + return "/" + projRelativeUrl; + } + } + + // read a meta tag value + function getMeta(metaName) { + const metas = window.document.getElementsByTagName("meta"); + for (let i = 0; i < metas.length; i++) { + if (metas[i].getAttribute("name") === metaName) { + return metas[i].getAttribute("content"); + } + } + return ""; + } + + async function findAndActivateCategories() { + const currentPagePath = offsetAbsoluteUrl(window.location.href); + const response = await fetch(offsetRelativeUrl("listings.json")); + if (response.status == 200) { + return response.json().then(function (listingPaths) { + const listingHrefs = []; + for (const listingPath of listingPaths) { + const pathWithoutLeadingSlash = listingPath.listing.substring(1); + for (const item of listingPath.items) { + if ( + item === currentPagePath || + item === currentPagePath + "index.html" + ) { + // Resolve this path against the offset to be sure + // we already are using the correct path to the listing + // (this adjusts the listing urls to be rooted against + // whatever root the page is actually running against) + const relative = offsetRelativeUrl(pathWithoutLeadingSlash); + const baseUrl = window.location; + const resolvedPath = new URL(relative, baseUrl); + listingHrefs.push(resolvedPath.pathname); + break; + } + } + } + + // Look up the tree for a nearby linting and use that if we find one + const nearestListing = findNearestParentListing( + offsetAbsoluteUrl(window.location.pathname), + listingHrefs + ); + if (nearestListing) { + activateCategories(nearestListing); + } else { + // See if the referrer is a listing page for this item + const referredRelativePath = offsetAbsoluteUrl(document.referrer); + const referrerListing = listingHrefs.find((listingHref) => { + const isListingReferrer = + listingHref === referredRelativePath || + listingHref === referredRelativePath + "index.html"; + return isListingReferrer; + }); + + if (referrerListing) { + // Try to use the referrer if possible + activateCategories(referrerListing); + } else if (listingHrefs.length > 0) { + // Otherwise, just fall back to the first listing + activateCategories(listingHrefs[0]); + } + } + }); + } + } + if (hasTitleCategories()) { + findAndActivateCategories(); + } + + const findNearestParentListing = (href, listingHrefs) => { + if (!href || !listingHrefs) { + return undefined; + } + // Look up the tree for a nearby linting and use that if we find one + const relativeParts = href.substring(1).split("/"); + while (relativeParts.length > 0) { + const path = relativeParts.join("/"); + for (const listingHref of listingHrefs) { + if (listingHref.startsWith(path)) { + return listingHref; + } + } + relativeParts.pop(); + } + + return undefined; + }; + + const manageSidebarVisiblity = (el, placeholderDescriptor) => { + let isVisible = true; + let elRect; + + return (hiddenRegions) => { + if (el === null) { + return; + } + + // Find the last element of the TOC + const lastChildEl = el.lastElementChild; + + if (lastChildEl) { + // Converts the sidebar to a menu + const convertToMenu = () => { + for (const child of el.children) { + child.style.opacity = 0; + child.style.overflow = "hidden"; + } + + nexttick(() => { + const toggleContainer = window.document.createElement("div"); + toggleContainer.style.width = "100%"; + toggleContainer.classList.add("zindex-over-content"); + toggleContainer.classList.add("quarto-sidebar-toggle"); + toggleContainer.classList.add("headroom-target"); // Marks this to be managed by headeroom + toggleContainer.id = placeholderDescriptor.id; + toggleContainer.style.position = "fixed"; + + const toggleIcon = window.document.createElement("i"); + toggleIcon.classList.add("quarto-sidebar-toggle-icon"); + toggleIcon.classList.add("bi"); + toggleIcon.classList.add("bi-caret-down-fill"); + + const toggleTitle = window.document.createElement("div"); + const titleEl = window.document.body.querySelector( + placeholderDescriptor.titleSelector + ); + if (titleEl) { + toggleTitle.append( + titleEl.textContent || titleEl.innerText, + toggleIcon + ); + } + toggleTitle.classList.add("zindex-over-content"); + toggleTitle.classList.add("quarto-sidebar-toggle-title"); + toggleContainer.append(toggleTitle); + + const toggleContents = window.document.createElement("div"); + toggleContents.classList = el.classList; + toggleContents.classList.add("zindex-over-content"); + toggleContents.classList.add("quarto-sidebar-toggle-contents"); + for (const child of el.children) { + if (child.id === "toc-title") { + continue; + } + + const clone = child.cloneNode(true); + clone.style.opacity = 1; + clone.style.display = null; + toggleContents.append(clone); + } + toggleContents.style.height = "0px"; + const positionToggle = () => { + // position the element (top left of parent, same width as parent) + if (!elRect) { + elRect = el.getBoundingClientRect(); + } + toggleContainer.style.left = `${elRect.left}px`; + toggleContainer.style.top = `${elRect.top}px`; + toggleContainer.style.width = `${elRect.width}px`; + }; + positionToggle(); + + toggleContainer.append(toggleContents); + el.parentElement.prepend(toggleContainer); + + // Process clicks + let tocShowing = false; + // Allow the caller to control whether this is dismissed + // when it is clicked (e.g. sidebar navigation supports + // opening and closing the nav tree, so don't dismiss on click) + const clickEl = placeholderDescriptor.dismissOnClick + ? toggleContainer + : toggleTitle; + + const closeToggle = () => { + if (tocShowing) { + toggleContainer.classList.remove("expanded"); + toggleContents.style.height = "0px"; + tocShowing = false; + } + }; + + // Get rid of any expanded toggle if the user scrolls + window.document.addEventListener( + "scroll", + throttle(() => { + closeToggle(); + }, 50) + ); + + // Handle positioning of the toggle + window.addEventListener( + "resize", + throttle(() => { + elRect = undefined; + positionToggle(); + }, 50) + ); + + window.addEventListener("quarto-hrChanged", () => { + elRect = undefined; + }); + + // Process the click + clickEl.onclick = () => { + if (!tocShowing) { + toggleContainer.classList.add("expanded"); + toggleContents.style.height = null; + tocShowing = true; + } else { + closeToggle(); + } + }; + }); + }; + + // Converts a sidebar from a menu back to a sidebar + const convertToSidebar = () => { + for (const child of el.children) { + child.style.opacity = 1; + child.style.overflow = null; + } + + const placeholderEl = window.document.getElementById( + placeholderDescriptor.id + ); + if (placeholderEl) { + placeholderEl.remove(); + } + + el.classList.remove("rollup"); + }; + + if (isReaderMode()) { + convertToMenu(); + isVisible = false; + } else { + // Find the top and bottom o the element that is being managed + const elTop = el.offsetTop; + const elBottom = + elTop + lastChildEl.offsetTop + lastChildEl.offsetHeight; + + if (!isVisible) { + // If the element is current not visible reveal if there are + // no conflicts with overlay regions + if (!inHiddenRegion(elTop, elBottom, hiddenRegions)) { + convertToSidebar(); + isVisible = true; + } + } else { + // If the element is visible, hide it if it conflicts with overlay regions + // and insert a placeholder toggle (or if we're in reader mode) + if (inHiddenRegion(elTop, elBottom, hiddenRegions)) { + convertToMenu(); + isVisible = false; + } + } + } + } + }; + }; + + const tabEls = document.querySelectorAll('a[data-bs-toggle="tab"]'); + for (const tabEl of tabEls) { + const id = tabEl.getAttribute("data-bs-target"); + if (id) { + const columnEl = document.querySelector( + `${id} .column-margin, .tabset-margin-content` + ); + if (columnEl) + tabEl.addEventListener("shown.bs.tab", function (event) { + const el = event.srcElement; + if (el) { + const visibleCls = `${el.id}-margin-content`; + // walk up until we find a parent tabset + let panelTabsetEl = el.parentElement; + while (panelTabsetEl) { + if (panelTabsetEl.classList.contains("panel-tabset")) { + break; + } + panelTabsetEl = panelTabsetEl.parentElement; + } + + if (panelTabsetEl) { + const prevSib = panelTabsetEl.previousElementSibling; + if ( + prevSib && + prevSib.classList.contains("tabset-margin-container") + ) { + const childNodes = prevSib.querySelectorAll( + ".tabset-margin-content" + ); + for (const childEl of childNodes) { + if (childEl.classList.contains(visibleCls)) { + childEl.classList.remove("collapse"); + } else { + childEl.classList.add("collapse"); + } + } + } + } + } + + layoutMarginEls(); + }); + } + } + + // Manage the visibility of the toc and the sidebar + const marginScrollVisibility = manageSidebarVisiblity(marginSidebarEl, { + id: "quarto-toc-toggle", + titleSelector: "#toc-title", + dismissOnClick: true, + }); + const sidebarScrollVisiblity = manageSidebarVisiblity(sidebarEl, { + id: "quarto-sidebarnav-toggle", + titleSelector: ".title", + dismissOnClick: false, + }); + let tocLeftScrollVisibility; + if (leftTocEl) { + tocLeftScrollVisibility = manageSidebarVisiblity(leftTocEl, { + id: "quarto-lefttoc-toggle", + titleSelector: "#toc-title", + dismissOnClick: true, + }); + } + + // Find the first element that uses formatting in special columns + const conflictingEls = window.document.body.querySelectorAll( + '[class^="column-"], [class*=" column-"], aside, [class*="margin-caption"], [class*=" margin-caption"], [class*="margin-ref"], [class*=" margin-ref"]' + ); + + // Filter all the possibly conflicting elements into ones + // the do conflict on the left or ride side + const arrConflictingEls = Array.from(conflictingEls); + const leftSideConflictEls = arrConflictingEls.filter((el) => { + if (el.tagName === "ASIDE") { + return false; + } + return Array.from(el.classList).find((className) => { + return ( + className !== "column-body" && + className.startsWith("column-") && + !className.endsWith("right") && + !className.endsWith("container") && + className !== "column-margin" + ); + }); + }); + const rightSideConflictEls = arrConflictingEls.filter((el) => { + if (el.tagName === "ASIDE") { + return true; + } + + const hasMarginCaption = Array.from(el.classList).find((className) => { + return className == "margin-caption"; + }); + if (hasMarginCaption) { + return true; + } + + return Array.from(el.classList).find((className) => { + return ( + className !== "column-body" && + !className.endsWith("container") && + className.startsWith("column-") && + !className.endsWith("left") + ); + }); + }); + + const kOverlapPaddingSize = 10; + function toRegions(els) { + return els.map((el) => { + const boundRect = el.getBoundingClientRect(); + const top = + boundRect.top + + document.documentElement.scrollTop - + kOverlapPaddingSize; + return { + top, + bottom: top + el.scrollHeight + 2 * kOverlapPaddingSize, + }; + }); + } + + let hasObserved = false; + const visibleItemObserver = (els) => { + let visibleElements = [...els]; + const intersectionObserver = new IntersectionObserver( + (entries, _observer) => { + entries.forEach((entry) => { + if (entry.isIntersecting) { + if (visibleElements.indexOf(entry.target) === -1) { + visibleElements.push(entry.target); + } + } else { + visibleElements = visibleElements.filter((visibleEntry) => { + return visibleEntry !== entry; + }); + } + }); + + if (!hasObserved) { + hideOverlappedSidebars(); + } + hasObserved = true; + }, + {} + ); + els.forEach((el) => { + intersectionObserver.observe(el); + }); + + return { + getVisibleEntries: () => { + return visibleElements; + }, + }; + }; + + const rightElementObserver = visibleItemObserver(rightSideConflictEls); + const leftElementObserver = visibleItemObserver(leftSideConflictEls); + + const hideOverlappedSidebars = () => { + marginScrollVisibility(toRegions(rightElementObserver.getVisibleEntries())); + sidebarScrollVisiblity(toRegions(leftElementObserver.getVisibleEntries())); + if (tocLeftScrollVisibility) { + tocLeftScrollVisibility( + toRegions(leftElementObserver.getVisibleEntries()) + ); + } + }; + + window.quartoToggleReader = () => { + // Applies a slow class (or removes it) + // to update the transition speed + const slowTransition = (slow) => { + const manageTransition = (id, slow) => { + const el = document.getElementById(id); + if (el) { + if (slow) { + el.classList.add("slow"); + } else { + el.classList.remove("slow"); + } + } + }; + + manageTransition("TOC", slow); + manageTransition("quarto-sidebar", slow); + }; + const readerMode = !isReaderMode(); + setReaderModeValue(readerMode); + + // If we're entering reader mode, slow the transition + if (readerMode) { + slowTransition(readerMode); + } + highlightReaderToggle(readerMode); + hideOverlappedSidebars(); + + // If we're exiting reader mode, restore the non-slow transition + if (!readerMode) { + slowTransition(!readerMode); + } + }; + + const highlightReaderToggle = (readerMode) => { + const els = document.querySelectorAll(".quarto-reader-toggle"); + if (els) { + els.forEach((el) => { + if (readerMode) { + el.classList.add("reader"); + } else { + el.classList.remove("reader"); + } + }); + } + }; + + const setReaderModeValue = (val) => { + if (window.location.protocol !== "file:") { + window.localStorage.setItem("quarto-reader-mode", val); + } else { + localReaderMode = val; + } + }; + + const isReaderMode = () => { + if (window.location.protocol !== "file:") { + return window.localStorage.getItem("quarto-reader-mode") === "true"; + } else { + return localReaderMode; + } + }; + let localReaderMode = null; + + const tocOpenDepthStr = tocEl?.getAttribute("data-toc-expanded"); + const tocOpenDepth = tocOpenDepthStr ? Number(tocOpenDepthStr) : 1; + + // Walk the TOC and collapse/expand nodes + // Nodes are expanded if: + // - they are top level + // - they have children that are 'active' links + // - they are directly below an link that is 'active' + const walk = (el, depth) => { + // Tick depth when we enter a UL + if (el.tagName === "UL") { + depth = depth + 1; + } + + // It this is active link + let isActiveNode = false; + if (el.tagName === "A" && el.classList.contains("active")) { + isActiveNode = true; + } + + // See if there is an active child to this element + let hasActiveChild = false; + for (child of el.children) { + hasActiveChild = walk(child, depth) || hasActiveChild; + } + + // Process the collapse state if this is an UL + if (el.tagName === "UL") { + if (tocOpenDepth === -1 && depth > 1) { + el.classList.add("collapse"); + } else if ( + depth <= tocOpenDepth || + hasActiveChild || + prevSiblingIsActiveLink(el) + ) { + el.classList.remove("collapse"); + } else { + el.classList.add("collapse"); + } + + // untick depth when we leave a UL + depth = depth - 1; + } + return hasActiveChild || isActiveNode; + }; + + // walk the TOC and expand / collapse any items that should be shown + + if (tocEl) { + walk(tocEl, 0); + updateActiveLink(); + } + + // Throttle the scroll event and walk peridiocally + window.document.addEventListener( + "scroll", + throttle(() => { + if (tocEl) { + updateActiveLink(); + walk(tocEl, 0); + } + if (!isReaderMode()) { + hideOverlappedSidebars(); + } + }, 5) + ); + window.addEventListener( + "resize", + throttle(() => { + if (!isReaderMode()) { + hideOverlappedSidebars(); + } + }, 10) + ); + hideOverlappedSidebars(); + highlightReaderToggle(isReaderMode()); +}); + +// grouped tabsets +window.addEventListener("pageshow", (_event) => { + function getTabSettings() { + const data = localStorage.getItem("quarto-persistent-tabsets-data"); + if (!data) { + localStorage.setItem("quarto-persistent-tabsets-data", "{}"); + return {}; + } + if (data) { + return JSON.parse(data); + } + } + + function setTabSettings(data) { + localStorage.setItem( + "quarto-persistent-tabsets-data", + JSON.stringify(data) + ); + } + + function setTabState(groupName, groupValue) { + const data = getTabSettings(); + data[groupName] = groupValue; + setTabSettings(data); + } + + function toggleTab(tab, active) { + const tabPanelId = tab.getAttribute("aria-controls"); + const tabPanel = document.getElementById(tabPanelId); + if (active) { + tab.classList.add("active"); + tabPanel.classList.add("active"); + } else { + tab.classList.remove("active"); + tabPanel.classList.remove("active"); + } + } + + function toggleAll(selectedGroup, selectorsToSync) { + for (const [thisGroup, tabs] of Object.entries(selectorsToSync)) { + const active = selectedGroup === thisGroup; + for (const tab of tabs) { + toggleTab(tab, active); + } + } + } + + function findSelectorsToSyncByLanguage() { + const result = {}; + const tabs = Array.from( + document.querySelectorAll(`div[data-group] a[id^='tabset-']`) + ); + for (const item of tabs) { + const div = item.parentElement.parentElement.parentElement; + const group = div.getAttribute("data-group"); + if (!result[group]) { + result[group] = {}; + } + const selectorsToSync = result[group]; + const value = item.innerHTML; + if (!selectorsToSync[value]) { + selectorsToSync[value] = []; + } + selectorsToSync[value].push(item); + } + return result; + } + + function setupSelectorSync() { + const selectorsToSync = findSelectorsToSyncByLanguage(); + Object.entries(selectorsToSync).forEach(([group, tabSetsByValue]) => { + Object.entries(tabSetsByValue).forEach(([value, items]) => { + items.forEach((item) => { + item.addEventListener("click", (_event) => { + setTabState(group, value); + toggleAll(value, selectorsToSync[group]); + }); + }); + }); + }); + return selectorsToSync; + } + + const selectorsToSync = setupSelectorSync(); + for (const [group, selectedName] of Object.entries(getTabSettings())) { + const selectors = selectorsToSync[group]; + // it's possible that stale state gives us empty selections, so we explicitly check here. + if (selectors) { + toggleAll(selectedName, selectors); + } + } +}); + +function throttle(func, wait) { + let waiting = false; + return function () { + if (!waiting) { + func.apply(this, arguments); + waiting = true; + setTimeout(function () { + waiting = false; + }, wait); + } + }; +} + +function nexttick(func) { + return setTimeout(func, 0); +} diff --git a/Dissertation_unzipped/sharktooth_functions_files/libs/quarto-html/tippy.css b/Dissertation_unzipped/sharktooth_functions_files/libs/quarto-html/tippy.css new file mode 100644 index 0000000..e6ae635 --- /dev/null +++ b/Dissertation_unzipped/sharktooth_functions_files/libs/quarto-html/tippy.css @@ -0,0 +1 @@ +.tippy-box[data-animation=fade][data-state=hidden]{opacity:0}[data-tippy-root]{max-width:calc(100vw - 10px)}.tippy-box{position:relative;background-color:#333;color:#fff;border-radius:4px;font-size:14px;line-height:1.4;white-space:normal;outline:0;transition-property:transform,visibility,opacity}.tippy-box[data-placement^=top]>.tippy-arrow{bottom:0}.tippy-box[data-placement^=top]>.tippy-arrow:before{bottom:-7px;left:0;border-width:8px 8px 0;border-top-color:initial;transform-origin:center top}.tippy-box[data-placement^=bottom]>.tippy-arrow{top:0}.tippy-box[data-placement^=bottom]>.tippy-arrow:before{top:-7px;left:0;border-width:0 8px 8px;border-bottom-color:initial;transform-origin:center bottom}.tippy-box[data-placement^=left]>.tippy-arrow{right:0}.tippy-box[data-placement^=left]>.tippy-arrow:before{border-width:8px 0 8px 8px;border-left-color:initial;right:-7px;transform-origin:center left}.tippy-box[data-placement^=right]>.tippy-arrow{left:0}.tippy-box[data-placement^=right]>.tippy-arrow:before{left:-7px;border-width:8px 8px 8px 0;border-right-color:initial;transform-origin:center right}.tippy-box[data-inertia][data-state=visible]{transition-timing-function:cubic-bezier(.54,1.5,.38,1.11)}.tippy-arrow{width:16px;height:16px;color:#333}.tippy-arrow:before{content:"";position:absolute;border-color:transparent;border-style:solid}.tippy-content{position:relative;padding:5px 9px;z-index:1} \ No newline at end of file diff --git a/Dissertation_unzipped/sharktooth_functions_files/libs/quarto-html/tippy.umd.min.js b/Dissertation_unzipped/sharktooth_functions_files/libs/quarto-html/tippy.umd.min.js new file mode 100644 index 0000000..ca292be --- /dev/null +++ b/Dissertation_unzipped/sharktooth_functions_files/libs/quarto-html/tippy.umd.min.js @@ -0,0 +1,2 @@ +!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(require("@popperjs/core")):"function"==typeof define&&define.amd?define(["@popperjs/core"],t):(e=e||self).tippy=t(e.Popper)}(this,(function(e){"use strict";var t={passive:!0,capture:!0},n=function(){return document.body};function r(e,t,n){if(Array.isArray(e)){var r=e[t];return null==r?Array.isArray(n)?n[t]:n:r}return e}function o(e,t){var n={}.toString.call(e);return 0===n.indexOf("[object")&&n.indexOf(t+"]")>-1}function i(e,t){return"function"==typeof e?e.apply(void 0,t):e}function a(e,t){return 0===t?e:function(r){clearTimeout(n),n=setTimeout((function(){e(r)}),t)};var n}function s(e,t){var n=Object.assign({},e);return t.forEach((function(e){delete n[e]})),n}function u(e){return[].concat(e)}function c(e,t){-1===e.indexOf(t)&&e.push(t)}function p(e){return e.split("-")[0]}function f(e){return[].slice.call(e)}function l(e){return Object.keys(e).reduce((function(t,n){return void 0!==e[n]&&(t[n]=e[n]),t}),{})}function d(){return document.createElement("div")}function v(e){return["Element","Fragment"].some((function(t){return o(e,t)}))}function m(e){return o(e,"MouseEvent")}function g(e){return!(!e||!e._tippy||e._tippy.reference!==e)}function h(e){return v(e)?[e]:function(e){return o(e,"NodeList")}(e)?f(e):Array.isArray(e)?e:f(document.querySelectorAll(e))}function b(e,t){e.forEach((function(e){e&&(e.style.transitionDuration=t+"ms")}))}function y(e,t){e.forEach((function(e){e&&e.setAttribute("data-state",t)}))}function w(e){var t,n=u(e)[0];return null!=n&&null!=(t=n.ownerDocument)&&t.body?n.ownerDocument:document}function E(e,t,n){var r=t+"EventListener";["transitionend","webkitTransitionEnd"].forEach((function(t){e[r](t,n)}))}function O(e,t){for(var n=t;n;){var r;if(e.contains(n))return!0;n=null==n.getRootNode||null==(r=n.getRootNode())?void 0:r.host}return!1}var x={isTouch:!1},C=0;function T(){x.isTouch||(x.isTouch=!0,window.performance&&document.addEventListener("mousemove",A))}function A(){var e=performance.now();e-C<20&&(x.isTouch=!1,document.removeEventListener("mousemove",A)),C=e}function L(){var e=document.activeElement;if(g(e)){var t=e._tippy;e.blur&&!t.state.isVisible&&e.blur()}}var D=!!("undefined"!=typeof window&&"undefined"!=typeof document)&&!!window.msCrypto,R=Object.assign({appendTo:n,aria:{content:"auto",expanded:"auto"},delay:0,duration:[300,250],getReferenceClientRect:null,hideOnClick:!0,ignoreAttributes:!1,interactive:!1,interactiveBorder:2,interactiveDebounce:0,moveTransition:"",offset:[0,10],onAfterUpdate:function(){},onBeforeUpdate:function(){},onCreate:function(){},onDestroy:function(){},onHidden:function(){},onHide:function(){},onMount:function(){},onShow:function(){},onShown:function(){},onTrigger:function(){},onUntrigger:function(){},onClickOutside:function(){},placement:"top",plugins:[],popperOptions:{},render:null,showOnCreate:!1,touch:!0,trigger:"mouseenter focus",triggerTarget:null},{animateFill:!1,followCursor:!1,inlinePositioning:!1,sticky:!1},{allowHTML:!1,animation:"fade",arrow:!0,content:"",inertia:!1,maxWidth:350,role:"tooltip",theme:"",zIndex:9999}),k=Object.keys(R);function P(e){var t=(e.plugins||[]).reduce((function(t,n){var r,o=n.name,i=n.defaultValue;o&&(t[o]=void 0!==e[o]?e[o]:null!=(r=R[o])?r:i);return t}),{});return Object.assign({},e,t)}function j(e,t){var n=Object.assign({},t,{content:i(t.content,[e])},t.ignoreAttributes?{}:function(e,t){return(t?Object.keys(P(Object.assign({},R,{plugins:t}))):k).reduce((function(t,n){var r=(e.getAttribute("data-tippy-"+n)||"").trim();if(!r)return t;if("content"===n)t[n]=r;else try{t[n]=JSON.parse(r)}catch(e){t[n]=r}return t}),{})}(e,t.plugins));return n.aria=Object.assign({},R.aria,n.aria),n.aria={expanded:"auto"===n.aria.expanded?t.interactive:n.aria.expanded,content:"auto"===n.aria.content?t.interactive?null:"describedby":n.aria.content},n}function M(e,t){e.innerHTML=t}function V(e){var t=d();return!0===e?t.className="tippy-arrow":(t.className="tippy-svg-arrow",v(e)?t.appendChild(e):M(t,e)),t}function I(e,t){v(t.content)?(M(e,""),e.appendChild(t.content)):"function"!=typeof t.content&&(t.allowHTML?M(e,t.content):e.textContent=t.content)}function S(e){var t=e.firstElementChild,n=f(t.children);return{box:t,content:n.find((function(e){return e.classList.contains("tippy-content")})),arrow:n.find((function(e){return e.classList.contains("tippy-arrow")||e.classList.contains("tippy-svg-arrow")})),backdrop:n.find((function(e){return e.classList.contains("tippy-backdrop")}))}}function N(e){var t=d(),n=d();n.className="tippy-box",n.setAttribute("data-state","hidden"),n.setAttribute("tabindex","-1");var r=d();function o(n,r){var o=S(t),i=o.box,a=o.content,s=o.arrow;r.theme?i.setAttribute("data-theme",r.theme):i.removeAttribute("data-theme"),"string"==typeof r.animation?i.setAttribute("data-animation",r.animation):i.removeAttribute("data-animation"),r.inertia?i.setAttribute("data-inertia",""):i.removeAttribute("data-inertia"),i.style.maxWidth="number"==typeof r.maxWidth?r.maxWidth+"px":r.maxWidth,r.role?i.setAttribute("role",r.role):i.removeAttribute("role"),n.content===r.content&&n.allowHTML===r.allowHTML||I(a,e.props),r.arrow?s?n.arrow!==r.arrow&&(i.removeChild(s),i.appendChild(V(r.arrow))):i.appendChild(V(r.arrow)):s&&i.removeChild(s)}return r.className="tippy-content",r.setAttribute("data-state","hidden"),I(r,e.props),t.appendChild(n),n.appendChild(r),o(e.props,e.props),{popper:t,onUpdate:o}}N.$$tippy=!0;var B=1,H=[],U=[];function _(o,s){var v,g,h,C,T,A,L,k,M=j(o,Object.assign({},R,P(l(s)))),V=!1,I=!1,N=!1,_=!1,F=[],W=a(we,M.interactiveDebounce),X=B++,Y=(k=M.plugins).filter((function(e,t){return k.indexOf(e)===t})),$={id:X,reference:o,popper:d(),popperInstance:null,props:M,state:{isEnabled:!0,isVisible:!1,isDestroyed:!1,isMounted:!1,isShown:!1},plugins:Y,clearDelayTimeouts:function(){clearTimeout(v),clearTimeout(g),cancelAnimationFrame(h)},setProps:function(e){if($.state.isDestroyed)return;ae("onBeforeUpdate",[$,e]),be();var t=$.props,n=j(o,Object.assign({},t,l(e),{ignoreAttributes:!0}));$.props=n,he(),t.interactiveDebounce!==n.interactiveDebounce&&(ce(),W=a(we,n.interactiveDebounce));t.triggerTarget&&!n.triggerTarget?u(t.triggerTarget).forEach((function(e){e.removeAttribute("aria-expanded")})):n.triggerTarget&&o.removeAttribute("aria-expanded");ue(),ie(),J&&J(t,n);$.popperInstance&&(Ce(),Ae().forEach((function(e){requestAnimationFrame(e._tippy.popperInstance.forceUpdate)})));ae("onAfterUpdate",[$,e])},setContent:function(e){$.setProps({content:e})},show:function(){var e=$.state.isVisible,t=$.state.isDestroyed,o=!$.state.isEnabled,a=x.isTouch&&!$.props.touch,s=r($.props.duration,0,R.duration);if(e||t||o||a)return;if(te().hasAttribute("disabled"))return;if(ae("onShow",[$],!1),!1===$.props.onShow($))return;$.state.isVisible=!0,ee()&&(z.style.visibility="visible");ie(),de(),$.state.isMounted||(z.style.transition="none");if(ee()){var u=re(),p=u.box,f=u.content;b([p,f],0)}A=function(){var e;if($.state.isVisible&&!_){if(_=!0,z.offsetHeight,z.style.transition=$.props.moveTransition,ee()&&$.props.animation){var t=re(),n=t.box,r=t.content;b([n,r],s),y([n,r],"visible")}se(),ue(),c(U,$),null==(e=$.popperInstance)||e.forceUpdate(),ae("onMount",[$]),$.props.animation&&ee()&&function(e,t){me(e,t)}(s,(function(){$.state.isShown=!0,ae("onShown",[$])}))}},function(){var e,t=$.props.appendTo,r=te();e=$.props.interactive&&t===n||"parent"===t?r.parentNode:i(t,[r]);e.contains(z)||e.appendChild(z);$.state.isMounted=!0,Ce()}()},hide:function(){var e=!$.state.isVisible,t=$.state.isDestroyed,n=!$.state.isEnabled,o=r($.props.duration,1,R.duration);if(e||t||n)return;if(ae("onHide",[$],!1),!1===$.props.onHide($))return;$.state.isVisible=!1,$.state.isShown=!1,_=!1,V=!1,ee()&&(z.style.visibility="hidden");if(ce(),ve(),ie(!0),ee()){var i=re(),a=i.box,s=i.content;$.props.animation&&(b([a,s],o),y([a,s],"hidden"))}se(),ue(),$.props.animation?ee()&&function(e,t){me(e,(function(){!$.state.isVisible&&z.parentNode&&z.parentNode.contains(z)&&t()}))}(o,$.unmount):$.unmount()},hideWithInteractivity:function(e){ne().addEventListener("mousemove",W),c(H,W),W(e)},enable:function(){$.state.isEnabled=!0},disable:function(){$.hide(),$.state.isEnabled=!1},unmount:function(){$.state.isVisible&&$.hide();if(!$.state.isMounted)return;Te(),Ae().forEach((function(e){e._tippy.unmount()})),z.parentNode&&z.parentNode.removeChild(z);U=U.filter((function(e){return e!==$})),$.state.isMounted=!1,ae("onHidden",[$])},destroy:function(){if($.state.isDestroyed)return;$.clearDelayTimeouts(),$.unmount(),be(),delete o._tippy,$.state.isDestroyed=!0,ae("onDestroy",[$])}};if(!M.render)return $;var q=M.render($),z=q.popper,J=q.onUpdate;z.setAttribute("data-tippy-root",""),z.id="tippy-"+$.id,$.popper=z,o._tippy=$,z._tippy=$;var G=Y.map((function(e){return e.fn($)})),K=o.hasAttribute("aria-expanded");return he(),ue(),ie(),ae("onCreate",[$]),M.showOnCreate&&Le(),z.addEventListener("mouseenter",(function(){$.props.interactive&&$.state.isVisible&&$.clearDelayTimeouts()})),z.addEventListener("mouseleave",(function(){$.props.interactive&&$.props.trigger.indexOf("mouseenter")>=0&&ne().addEventListener("mousemove",W)})),$;function Q(){var e=$.props.touch;return Array.isArray(e)?e:[e,0]}function Z(){return"hold"===Q()[0]}function ee(){var e;return!(null==(e=$.props.render)||!e.$$tippy)}function te(){return L||o}function ne(){var e=te().parentNode;return e?w(e):document}function re(){return S(z)}function oe(e){return $.state.isMounted&&!$.state.isVisible||x.isTouch||C&&"focus"===C.type?0:r($.props.delay,e?0:1,R.delay)}function ie(e){void 0===e&&(e=!1),z.style.pointerEvents=$.props.interactive&&!e?"":"none",z.style.zIndex=""+$.props.zIndex}function ae(e,t,n){var r;(void 0===n&&(n=!0),G.forEach((function(n){n[e]&&n[e].apply(n,t)})),n)&&(r=$.props)[e].apply(r,t)}function se(){var e=$.props.aria;if(e.content){var t="aria-"+e.content,n=z.id;u($.props.triggerTarget||o).forEach((function(e){var r=e.getAttribute(t);if($.state.isVisible)e.setAttribute(t,r?r+" "+n:n);else{var o=r&&r.replace(n,"").trim();o?e.setAttribute(t,o):e.removeAttribute(t)}}))}}function ue(){!K&&$.props.aria.expanded&&u($.props.triggerTarget||o).forEach((function(e){$.props.interactive?e.setAttribute("aria-expanded",$.state.isVisible&&e===te()?"true":"false"):e.removeAttribute("aria-expanded")}))}function ce(){ne().removeEventListener("mousemove",W),H=H.filter((function(e){return e!==W}))}function pe(e){if(!x.isTouch||!N&&"mousedown"!==e.type){var t=e.composedPath&&e.composedPath()[0]||e.target;if(!$.props.interactive||!O(z,t)){if(u($.props.triggerTarget||o).some((function(e){return O(e,t)}))){if(x.isTouch)return;if($.state.isVisible&&$.props.trigger.indexOf("click")>=0)return}else ae("onClickOutside",[$,e]);!0===$.props.hideOnClick&&($.clearDelayTimeouts(),$.hide(),I=!0,setTimeout((function(){I=!1})),$.state.isMounted||ve())}}}function fe(){N=!0}function le(){N=!1}function de(){var e=ne();e.addEventListener("mousedown",pe,!0),e.addEventListener("touchend",pe,t),e.addEventListener("touchstart",le,t),e.addEventListener("touchmove",fe,t)}function ve(){var e=ne();e.removeEventListener("mousedown",pe,!0),e.removeEventListener("touchend",pe,t),e.removeEventListener("touchstart",le,t),e.removeEventListener("touchmove",fe,t)}function me(e,t){var n=re().box;function r(e){e.target===n&&(E(n,"remove",r),t())}if(0===e)return t();E(n,"remove",T),E(n,"add",r),T=r}function ge(e,t,n){void 0===n&&(n=!1),u($.props.triggerTarget||o).forEach((function(r){r.addEventListener(e,t,n),F.push({node:r,eventType:e,handler:t,options:n})}))}function he(){var e;Z()&&(ge("touchstart",ye,{passive:!0}),ge("touchend",Ee,{passive:!0})),(e=$.props.trigger,e.split(/\s+/).filter(Boolean)).forEach((function(e){if("manual"!==e)switch(ge(e,ye),e){case"mouseenter":ge("mouseleave",Ee);break;case"focus":ge(D?"focusout":"blur",Oe);break;case"focusin":ge("focusout",Oe)}}))}function be(){F.forEach((function(e){var t=e.node,n=e.eventType,r=e.handler,o=e.options;t.removeEventListener(n,r,o)})),F=[]}function ye(e){var t,n=!1;if($.state.isEnabled&&!xe(e)&&!I){var r="focus"===(null==(t=C)?void 0:t.type);C=e,L=e.currentTarget,ue(),!$.state.isVisible&&m(e)&&H.forEach((function(t){return t(e)})),"click"===e.type&&($.props.trigger.indexOf("mouseenter")<0||V)&&!1!==$.props.hideOnClick&&$.state.isVisible?n=!0:Le(e),"click"===e.type&&(V=!n),n&&!r&&De(e)}}function we(e){var t=e.target,n=te().contains(t)||z.contains(t);"mousemove"===e.type&&n||function(e,t){var n=t.clientX,r=t.clientY;return e.every((function(e){var t=e.popperRect,o=e.popperState,i=e.props.interactiveBorder,a=p(o.placement),s=o.modifiersData.offset;if(!s)return!0;var u="bottom"===a?s.top.y:0,c="top"===a?s.bottom.y:0,f="right"===a?s.left.x:0,l="left"===a?s.right.x:0,d=t.top-r+u>i,v=r-t.bottom-c>i,m=t.left-n+f>i,g=n-t.right-l>i;return d||v||m||g}))}(Ae().concat(z).map((function(e){var t,n=null==(t=e._tippy.popperInstance)?void 0:t.state;return n?{popperRect:e.getBoundingClientRect(),popperState:n,props:M}:null})).filter(Boolean),e)&&(ce(),De(e))}function Ee(e){xe(e)||$.props.trigger.indexOf("click")>=0&&V||($.props.interactive?$.hideWithInteractivity(e):De(e))}function Oe(e){$.props.trigger.indexOf("focusin")<0&&e.target!==te()||$.props.interactive&&e.relatedTarget&&z.contains(e.relatedTarget)||De(e)}function xe(e){return!!x.isTouch&&Z()!==e.type.indexOf("touch")>=0}function Ce(){Te();var t=$.props,n=t.popperOptions,r=t.placement,i=t.offset,a=t.getReferenceClientRect,s=t.moveTransition,u=ee()?S(z).arrow:null,c=a?{getBoundingClientRect:a,contextElement:a.contextElement||te()}:o,p=[{name:"offset",options:{offset:i}},{name:"preventOverflow",options:{padding:{top:2,bottom:2,left:5,right:5}}},{name:"flip",options:{padding:5}},{name:"computeStyles",options:{adaptive:!s}},{name:"$$tippy",enabled:!0,phase:"beforeWrite",requires:["computeStyles"],fn:function(e){var t=e.state;if(ee()){var n=re().box;["placement","reference-hidden","escaped"].forEach((function(e){"placement"===e?n.setAttribute("data-placement",t.placement):t.attributes.popper["data-popper-"+e]?n.setAttribute("data-"+e,""):n.removeAttribute("data-"+e)})),t.attributes.popper={}}}}];ee()&&u&&p.push({name:"arrow",options:{element:u,padding:3}}),p.push.apply(p,(null==n?void 0:n.modifiers)||[]),$.popperInstance=e.createPopper(c,z,Object.assign({},n,{placement:r,onFirstUpdate:A,modifiers:p}))}function Te(){$.popperInstance&&($.popperInstance.destroy(),$.popperInstance=null)}function Ae(){return f(z.querySelectorAll("[data-tippy-root]"))}function Le(e){$.clearDelayTimeouts(),e&&ae("onTrigger",[$,e]),de();var t=oe(!0),n=Q(),r=n[0],o=n[1];x.isTouch&&"hold"===r&&o&&(t=o),t?v=setTimeout((function(){$.show()}),t):$.show()}function De(e){if($.clearDelayTimeouts(),ae("onUntrigger",[$,e]),$.state.isVisible){if(!($.props.trigger.indexOf("mouseenter")>=0&&$.props.trigger.indexOf("click")>=0&&["mouseleave","mousemove"].indexOf(e.type)>=0&&V)){var t=oe(!1);t?g=setTimeout((function(){$.state.isVisible&&$.hide()}),t):h=requestAnimationFrame((function(){$.hide()}))}}else ve()}}function F(e,n){void 0===n&&(n={});var r=R.plugins.concat(n.plugins||[]);document.addEventListener("touchstart",T,t),window.addEventListener("blur",L);var o=Object.assign({},n,{plugins:r}),i=h(e).reduce((function(e,t){var n=t&&_(t,o);return n&&e.push(n),e}),[]);return v(e)?i[0]:i}F.defaultProps=R,F.setDefaultProps=function(e){Object.keys(e).forEach((function(t){R[t]=e[t]}))},F.currentInput=x;var W=Object.assign({},e.applyStyles,{effect:function(e){var t=e.state,n={popper:{position:t.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};Object.assign(t.elements.popper.style,n.popper),t.styles=n,t.elements.arrow&&Object.assign(t.elements.arrow.style,n.arrow)}}),X={mouseover:"mouseenter",focusin:"focus",click:"click"};var Y={name:"animateFill",defaultValue:!1,fn:function(e){var t;if(null==(t=e.props.render)||!t.$$tippy)return{};var n=S(e.popper),r=n.box,o=n.content,i=e.props.animateFill?function(){var e=d();return e.className="tippy-backdrop",y([e],"hidden"),e}():null;return{onCreate:function(){i&&(r.insertBefore(i,r.firstElementChild),r.setAttribute("data-animatefill",""),r.style.overflow="hidden",e.setProps({arrow:!1,animation:"shift-away"}))},onMount:function(){if(i){var e=r.style.transitionDuration,t=Number(e.replace("ms",""));o.style.transitionDelay=Math.round(t/10)+"ms",i.style.transitionDuration=e,y([i],"visible")}},onShow:function(){i&&(i.style.transitionDuration="0ms")},onHide:function(){i&&y([i],"hidden")}}}};var $={clientX:0,clientY:0},q=[];function z(e){var t=e.clientX,n=e.clientY;$={clientX:t,clientY:n}}var J={name:"followCursor",defaultValue:!1,fn:function(e){var t=e.reference,n=w(e.props.triggerTarget||t),r=!1,o=!1,i=!0,a=e.props;function s(){return"initial"===e.props.followCursor&&e.state.isVisible}function u(){n.addEventListener("mousemove",f)}function c(){n.removeEventListener("mousemove",f)}function p(){r=!0,e.setProps({getReferenceClientRect:null}),r=!1}function f(n){var r=!n.target||t.contains(n.target),o=e.props.followCursor,i=n.clientX,a=n.clientY,s=t.getBoundingClientRect(),u=i-s.left,c=a-s.top;!r&&e.props.interactive||e.setProps({getReferenceClientRect:function(){var e=t.getBoundingClientRect(),n=i,r=a;"initial"===o&&(n=e.left+u,r=e.top+c);var s="horizontal"===o?e.top:r,p="vertical"===o?e.right:n,f="horizontal"===o?e.bottom:r,l="vertical"===o?e.left:n;return{width:p-l,height:f-s,top:s,right:p,bottom:f,left:l}}})}function l(){e.props.followCursor&&(q.push({instance:e,doc:n}),function(e){e.addEventListener("mousemove",z)}(n))}function d(){0===(q=q.filter((function(t){return t.instance!==e}))).filter((function(e){return e.doc===n})).length&&function(e){e.removeEventListener("mousemove",z)}(n)}return{onCreate:l,onDestroy:d,onBeforeUpdate:function(){a=e.props},onAfterUpdate:function(t,n){var i=n.followCursor;r||void 0!==i&&a.followCursor!==i&&(d(),i?(l(),!e.state.isMounted||o||s()||u()):(c(),p()))},onMount:function(){e.props.followCursor&&!o&&(i&&(f($),i=!1),s()||u())},onTrigger:function(e,t){m(t)&&($={clientX:t.clientX,clientY:t.clientY}),o="focus"===t.type},onHidden:function(){e.props.followCursor&&(p(),c(),i=!0)}}}};var G={name:"inlinePositioning",defaultValue:!1,fn:function(e){var t,n=e.reference;var r=-1,o=!1,i=[],a={name:"tippyInlinePositioning",enabled:!0,phase:"afterWrite",fn:function(o){var a=o.state;e.props.inlinePositioning&&(-1!==i.indexOf(a.placement)&&(i=[]),t!==a.placement&&-1===i.indexOf(a.placement)&&(i.push(a.placement),e.setProps({getReferenceClientRect:function(){return function(e){return function(e,t,n,r){if(n.length<2||null===e)return t;if(2===n.length&&r>=0&&n[0].left>n[1].right)return n[r]||t;switch(e){case"top":case"bottom":var o=n[0],i=n[n.length-1],a="top"===e,s=o.top,u=i.bottom,c=a?o.left:i.left,p=a?o.right:i.right;return{top:s,bottom:u,left:c,right:p,width:p-c,height:u-s};case"left":case"right":var f=Math.min.apply(Math,n.map((function(e){return e.left}))),l=Math.max.apply(Math,n.map((function(e){return e.right}))),d=n.filter((function(t){return"left"===e?t.left===f:t.right===l})),v=d[0].top,m=d[d.length-1].bottom;return{top:v,bottom:m,left:f,right:l,width:l-f,height:m-v};default:return t}}(p(e),n.getBoundingClientRect(),f(n.getClientRects()),r)}(a.placement)}})),t=a.placement)}};function s(){var t;o||(t=function(e,t){var n;return{popperOptions:Object.assign({},e.popperOptions,{modifiers:[].concat(((null==(n=e.popperOptions)?void 0:n.modifiers)||[]).filter((function(e){return e.name!==t.name})),[t])})}}(e.props,a),o=!0,e.setProps(t),o=!1)}return{onCreate:s,onAfterUpdate:s,onTrigger:function(t,n){if(m(n)){var o=f(e.reference.getClientRects()),i=o.find((function(e){return e.left-2<=n.clientX&&e.right+2>=n.clientX&&e.top-2<=n.clientY&&e.bottom+2>=n.clientY})),a=o.indexOf(i);r=a>-1?a:r}},onHidden:function(){r=-1}}}};var K={name:"sticky",defaultValue:!1,fn:function(e){var t=e.reference,n=e.popper;function r(t){return!0===e.props.sticky||e.props.sticky===t}var o=null,i=null;function a(){var s=r("reference")?(e.popperInstance?e.popperInstance.state.elements.reference:t).getBoundingClientRect():null,u=r("popper")?n.getBoundingClientRect():null;(s&&Q(o,s)||u&&Q(i,u))&&e.popperInstance&&e.popperInstance.update(),o=s,i=u,e.state.isMounted&&requestAnimationFrame(a)}return{onMount:function(){e.props.sticky&&a()}}}};function Q(e,t){return!e||!t||(e.top!==t.top||e.right!==t.right||e.bottom!==t.bottom||e.left!==t.left)}return F.setDefaultProps({plugins:[Y,J,G,K],render:N}),F.createSingleton=function(e,t){var n;void 0===t&&(t={});var r,o=e,i=[],a=[],c=t.overrides,p=[],f=!1;function l(){a=o.map((function(e){return u(e.props.triggerTarget||e.reference)})).reduce((function(e,t){return e.concat(t)}),[])}function v(){i=o.map((function(e){return e.reference}))}function m(e){o.forEach((function(t){e?t.enable():t.disable()}))}function g(e){return o.map((function(t){var n=t.setProps;return t.setProps=function(o){n(o),t.reference===r&&e.setProps(o)},function(){t.setProps=n}}))}function h(e,t){var n=a.indexOf(t);if(t!==r){r=t;var s=(c||[]).concat("content").reduce((function(e,t){return e[t]=o[n].props[t],e}),{});e.setProps(Object.assign({},s,{getReferenceClientRect:"function"==typeof s.getReferenceClientRect?s.getReferenceClientRect:function(){var e;return null==(e=i[n])?void 0:e.getBoundingClientRect()}}))}}m(!1),v(),l();var b={fn:function(){return{onDestroy:function(){m(!0)},onHidden:function(){r=null},onClickOutside:function(e){e.props.showOnCreate&&!f&&(f=!0,r=null)},onShow:function(e){e.props.showOnCreate&&!f&&(f=!0,h(e,i[0]))},onTrigger:function(e,t){h(e,t.currentTarget)}}}},y=F(d(),Object.assign({},s(t,["overrides"]),{plugins:[b].concat(t.plugins||[]),triggerTarget:a,popperOptions:Object.assign({},t.popperOptions,{modifiers:[].concat((null==(n=t.popperOptions)?void 0:n.modifiers)||[],[W])})})),w=y.show;y.show=function(e){if(w(),!r&&null==e)return h(y,i[0]);if(!r||null!=e){if("number"==typeof e)return i[e]&&h(y,i[e]);if(o.indexOf(e)>=0){var t=e.reference;return h(y,t)}return i.indexOf(e)>=0?h(y,e):void 0}},y.showNext=function(){var e=i[0];if(!r)return y.show(0);var t=i.indexOf(r);y.show(i[t+1]||e)},y.showPrevious=function(){var e=i[i.length-1];if(!r)return y.show(e);var t=i.indexOf(r),n=i[t-1]||e;y.show(n)};var E=y.setProps;return y.setProps=function(e){c=e.overrides||c,E(e)},y.setInstances=function(e){m(!0),p.forEach((function(e){return e()})),o=e,m(!1),v(),l(),p=g(y),y.setProps({triggerTarget:a})},p=g(y),y},F.delegate=function(e,n){var r=[],o=[],i=!1,a=n.target,c=s(n,["target"]),p=Object.assign({},c,{trigger:"manual",touch:!1}),f=Object.assign({touch:R.touch},c,{showOnCreate:!0}),l=F(e,p);function d(e){if(e.target&&!i){var t=e.target.closest(a);if(t){var r=t.getAttribute("data-tippy-trigger")||n.trigger||R.trigger;if(!t._tippy&&!("touchstart"===e.type&&"boolean"==typeof f.touch||"touchstart"!==e.type&&r.indexOf(X[e.type])<0)){var s=F(t,f);s&&(o=o.concat(s))}}}}function v(e,t,n,o){void 0===o&&(o=!1),e.addEventListener(t,n,o),r.push({node:e,eventType:t,handler:n,options:o})}return u(l).forEach((function(e){var n=e.destroy,a=e.enable,s=e.disable;e.destroy=function(e){void 0===e&&(e=!0),e&&o.forEach((function(e){e.destroy()})),o=[],r.forEach((function(e){var t=e.node,n=e.eventType,r=e.handler,o=e.options;t.removeEventListener(n,r,o)})),r=[],n()},e.enable=function(){a(),o.forEach((function(e){return e.enable()})),i=!1},e.disable=function(){s(),o.forEach((function(e){return e.disable()})),i=!0},function(e){var n=e.reference;v(n,"touchstart",d,t),v(n,"mouseover",d),v(n,"focusin",d),v(n,"click",d)}(e)})),l},F.hideAll=function(e){var t=void 0===e?{}:e,n=t.exclude,r=t.duration;U.forEach((function(e){var t=!1;if(n&&(t=g(n)?e.reference===n:e.popper===n.popper),!t){var o=e.props.duration;e.setProps({duration:r}),e.hide(),e.state.isDestroyed||e.setProps({duration:o})}}))},F.roundArrow='',F})); + diff --git a/Dissertation_unzipped/sharktooth_functions_multidimensional.ipynb b/Dissertation_unzipped/sharktooth_functions_multidimensional.ipynb new file mode 100644 index 0000000..be2234e --- /dev/null +++ b/Dissertation_unzipped/sharktooth_functions_multidimensional.ipynb @@ -0,0 +1,260 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Sharktooth functions in 2-dimensions" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [], + "source": [ + "import numpy as np\n", + "import matplotlib.pyplot as plt" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [], + "source": [ + "def max_conv_operator(samples, f_samples, input, L):\n", + " return np.max(f_samples - L * np.linalg.norm(input - samples, ord=1))" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [ + { + "ename": "NameError", + "evalue": "name 'f' is not defined", + "output_type": "error", + "traceback": [ + "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", + "\u001b[0;31mNameError\u001b[0m Traceback (most recent call last)", + "\u001b[1;32m/Users/shakilrafi/Library/Mobile Documents/com~apple~CloudDocs/Dissertation/sharktooth_functions_multidimensional.ipynb Cell 4\u001b[0m line \u001b[0;36m4\n\u001b[1;32m 2\u001b[0m y \u001b[39m=\u001b[39m np\u001b[39m.\u001b[39mlinspace(\u001b[39m0\u001b[39m,\u001b[39m1\u001b[39m,\u001b[39m100\u001b[39m)\n\u001b[1;32m 3\u001b[0m samples \u001b[39m=\u001b[39m np\u001b[39m.\u001b[39mrandom\u001b[39m.\u001b[39muniform([\u001b[39m0\u001b[39m,\u001b[39m0\u001b[39m], [\u001b[39m1\u001b[39m,\u001b[39m1\u001b[39m],size\u001b[39m=\u001b[39m(\u001b[39m100\u001b[39m,\u001b[39m2\u001b[39m))\n\u001b[0;32m----> 4\u001b[0m f_samples \u001b[39m=\u001b[39m f(samples[:,\u001b[39m0\u001b[39m],samples[:,\u001b[39m1\u001b[39m])\n\u001b[1;32m 5\u001b[0m points \u001b[39m=\u001b[39m []\n\u001b[1;32m 6\u001b[0m \u001b[39mfor\u001b[39;00m i \u001b[39min\u001b[39;00m \u001b[39mrange\u001b[39m(\u001b[39mlen\u001b[39m(x)):\n", + "\u001b[0;31mNameError\u001b[0m: name 'f' is not defined" + ] + } + ], + "source": [ + "x = np.linspace(0,1,100)\n", + "y = np.linspace(0,1,100)\n", + "samples = np.random.uniform([0,0], [1,1],size=(100,2))\n", + "f_samples = f(samples[:,0],samples[:,1])\n", + "points = []\n", + "for i in range(len(x)):\n", + " for j in range(len(y)):\n", + " points.append([x[i],y[j],max_conv_operator(samples, f_samples,[x[i],y[j]],L)])" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 29, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "fig = plt.figure()\n", + "ax = fig.add_subplot(111,projection='3d') # Create a 3D axes object\n", + "fig = plt.figure()\n", + " # Create a 3D axes object\n", + "ax.scatter(points[0], points[1], points[2], c='b', marker='o')\n", + "\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "samples = np.random.uniform([0,0], [1,1],size=(10,2))\n", + "f_samples = f(samples[:,0],samples[:,1])\n", + "x = np.linspace(0,1,100)\n", + "y = np.linspace(0,1,100)\n", + "X, Y = np.meshgrid(x,y)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "-43.00870965517393" + ] + }, + "execution_count": 21, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "max_conv_operator(samples, f_samples, [4,5],1)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 18, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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oiUgGAzlMMEY0Q2OW4xda2YaZDRTB0+lFD1NagSpEbSFIjOSshODtDsuIQ1z2keiKbv231YLmJcenhRceNZpbNt3gDRNiJQkJCVVgpr06CVCS0EsJJXQpxyGxK6k5PvUowZTzTp+HHF6o8nq57DTEULwjne8g/Xr1/Pxj3/8SYPOTrVyHIf169ezefNmLrzwQpRS7Nixg61bt7Jjx47j+i1xHIebbrqJQqHAq171Knbt2vVLPPJ/m3XKdTydLuapnKWzLCNN0xOOvx4cHOS6665jcnKST3/606xevZre3l5mZmbYs2fPUfdtNBrcf//93H///Xiex4YNG/CbJeI9kt6hKnPjNYSCnpVl5g4ssnBkH2D91tJGRrjSJYs1WWTQiVnS92QWLDo0aeFAaY2HTi3TLVpIKfS6S50N4Pco6oeTJUZbjyKayXALErcokb7EaCsmTepWA3SUOWm/ojlpQSlONMURxeIh+2QNGrhnOkzssTkHQhn8ikMWWxBR+Z/a6nOsS4LObFS2wYbXpZH1XxMShJT4oT0DdUuwON/ELwECMhHTPxRSDItU+0Omp+dphy1aURMDOL611VEexLHECzKUA+26TTbVmfWja+VppevOGOIXD1nabqGkqeddkHI0RkBYyGwkuBQkiSbKJI4HC4t5vk45pdV2wBgq5RhtBOXc2aDWygWjYcJi5CGFplJMyIwgUCnSgbnYx5EZrptREjaddE576ExSdSNiJL0yIpbSerPJBEdq1vaEVHsq/PjRA5SJUQoSBFqBwjBg2kw51n8NZRiLEuL2JAuOw1DgIIsFzl21iusuvJDVaca2bduOOZrg2ZQQgne+852sXbuWW2+99deGMpymKbt37+alL30pR44c4c477+TMM8/kxS9+MZdffjmHDh3qEhSezlTYcRxuuOEGSqUSr371q/8f6JxgnXIdz6pVq/j617/O2rVr+fSnP/2kH4L/7//7/7j99tuPmz1z5plnctVVV3Hffffxne98h7POOotCocChQ4eOycG6fqTNni9Odp2jB9b2cvqmdYzvm+LgDksfDVf4NKfibjekAoETKKQnkK4kaWU4gaK5nNG2yjuK4RYMOHbvE9qAMaMhruf5PJDHUYsui84pShBLl91QIFzLolOujQfACNK2IWsb3FASLS51L31rQ2YPLC1hiyNO1y5HKPBCSZRHY3sV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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "fig = plt.figure()\n", + "ax = fig.add_subplot(111, projection='3d')\n", + "ax.plot_surface(X,Y,X**2+Y**2, cmap = \"viridis\")" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "def sharktooth_function(function, mins, maxes, number_of_sharkteeth, L):\n", + " samples = np.random.uniform(mins, maxes,size=(number_of_sharkteeth,len(mins)))\n", + " f_samples = f(samples[:,0],samples[:,1])\n", + " X_cords = np.linspace(mins[0],maxes[0],100)\n", + " Y_cords = np.linspace(mins[1],maxes[1],100)\n", + " approximate_z = []\n", + " error = []\n", + " for i in range(len(X_cords)):\n", + " for j in range(len(Y_cords)):\n", + " approximate_z = max_conv_operator(samples, f_samples, [X_cords[i],Y_cords[j]],L)\n", + " error.append(np.abs(f(X_cords[i],Y_cords[j]) - approximate_z))\n", + " return np.max(error)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "Text(0.5, 1.0, 'Sup of deviance from f(x) as the number of teeth increase and as we get closer to L')" + ] + }, + "execution_count": 7, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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iIiIqFC5d+8e9u3bh19++SXNnJOZMWvWLGzZsiXDj8gSEVH+M2DAANjY2MDNzQ3Jyclo1KgRpk2bhsuXL+PmzZtSl0dERJQhhrtERERU6Hz//ff4+uuvYWxsnKULxJibm+Py5cufnE+aiIjyl6ioKAwYMACzZs2CkZER/P39sW3bNsyaNUvq0oiIiD5KBylDeImIiIiIiIiIiIgoH5FJXQARERERERERERERZR3DXSIiIiIiIiIiIqJ8iOEuERERERERERERUT7EC6p9QsmSJREVFSV1GURERERERERERFSImJiYwM/P76N9GO5+RMmSJeHr6yt1GURERERERERERFQI2djYfDTgZbj7Eakjdm1sbDh6l4iIiIiIiIiIiHKFiYkJfH19P5lJMtzNhKioKIa7RERERERERERElKfwgmpERERERERERERE+RDDXSIiIiIiIiIiIqJ8iOEuERERERERERERUT7EOXe/kI6ODszNzWFiYgIdHR2py8kXhBCIiopCeHg4hBBSl0NERERERERERJQvMdz9AsWKFcM333yDypUrS11KvvTs2TP89ddfCAoKkroUIiIiIiIiIiKifEcHAIdOZsDExASRkZEwNTVFVFSU1jpdXV2sXbsW0dHR2L9/PwIDA5GUlCRRpfmLXC6HlZUV+vXrB2NjY4wbNw6JiYlSl0VERERERERERJQnfCyXfB9H7n6mEiVKQF9fH0uXLsWLFy+kLiff8fDwQGhoKGbNmgVra2u8efNG6pKIiIiIiIiIiIjyFV5Q7TPJZClPXXx8vMSV5F+pz51cLpe4EiIiIiIiIiIiovyH4S4RERERERERERFRPsRwl4iIiIiIiIiIiCgfYrhLRERERERERERElA8x3C3Exo4dCw8PD8TGxuLu3bto2rRphn2tra2xa9cuPHv2DElJSVi+fHkuVkpEREREREREREQfYrhbSPXr1w8rVqzAwoULUbt2bVy9ehWnTp2Cra1tuv319PQQFBSEhQsXwsXFJZerJSIiIiIiIiKiwk5HR+oK8h5dqQsoaJQG+pLsVx0bl6X+U6dOxebNm7F582YAwJQpU9C+fXuMHTsWM2bMSNP/9evXmDx5MgBg1KhRX1wvERERERERERHRx8h0dFCrhBXalLdDm/JlYKCri2abdktdVp7CcDcbKQ308dudi5Ls++cGLTMd8CoUCtStWxeLFy/Waj979iy++uqrnCiPiIiIiIiIiIjok+zMTdG6vB3alCuDluVKw9LQQGt9UUMDBKtiJaou72G4WwgVLVoUurq6CAgI0GoPCAiAtbW1RFUREREREREREVFhY6qnRIuypd8FunaoWLSI1vqIuHhc9vTGeY/XOP/Ki8HuBxjuZiN1bBx+btBSsn1nlRBC67aOjk6aNiIiIiIiIiIiouyiK5Ohvo012pQvg9bl7dDApgR05f9dFiwxKRl3fP1x3t0L591fw9nXH0nJzKsywnA3m31OyJrbgoODkZiYmGaUrpWVVZrRvERERERERERERF+ioqWFZmRui7KlYaqvp7X+ZXAozrm/xgV3L1z28kFkvFqiSvMfhruFUEJCAu7du4e2bdvi6NGjmva2bdvi2LFj0hVGRERERERERET5XhEDfbQqZ4c25e3QunwZ2Jmbaq0PUcXiX4/XOO/+GhfcX8M7IlKiSvM/hruF1LJly7Bjxw7cvXsXN2/exOjRo1G6dGmsX78eALBo0SLY2Nhg+PDhmvs4ODgAAIyNjVGsWDE4ODhArVbj6dOnkjwGIiIiIiIiIiKSnlIuR2PbkmhboQxal7ND7RLFIZPpaNbHJybihrcfLnikTLXw0D8QyZwaNFsw3C2k9u/fD0tLS8yePRslSpTAo0eP0KlTJ3h7ewMASpQogdKlS2vd5+HDh5rv69Wrh8GDB8PLywtly5bNzdKJiIiIiIiIiEhi1ayKakbmNrMrBSOlQmv9o4Agzcjcq6/fQJWQIFGlBRvD3UJs3bp1WLduXbrrRo4cmaZNR0cnnZ5ERERERERERFTQWRsboXU5O7Qub4dW5exQ0tRYa/3bqBhc8PDCBffXuODxGv5RMRJVWrgw3CUiIiIiIiIiIiItBgpdNLMrhdbly6BNOTvUsC6mtV6lTsDV129wweM1zr/ywqPAYIkqLdwY7hIRERERERERERVyOjpALevi76ZasEOT0jbQ0/0vOkxOFnj4NgDn3V/jvLsXbvr4IT4xScKKCWC4S0REREREREREVCjZmpmgdXk7tC1fBi3LlkZRI0Ot9d7hkTjvnjLVwr+e3ghRxUpUKWWE4S4REREREREREVEhYKKnRPMytmhTvgzalLeDfdEiWusj4+Jx2cvn3YXQvPAiJEyiSimzGO4SEREREREREREVQHKZDuqVtEbbCmXQupwdGpYqCV25TLM+MSkZzr7+KfPmur/GnTf+SExOlrBiyiqGu0RERERERERERAVEhSLmKRdBK2+H5mVsYW6gr7X+ZUgYLrwbmXvJywcRcfESVUrZId+Gu82aNcO0adNQt25dlCxZEj169MCxY8e0+syZMwejR4+GhYUFbt++jfHjx+PJkycSVUxERERERERERJS9LAz00apsabQub4fW5cugrIWZ1vpQVSwuenq/m2rhNbzCIySqlHJCvg13jYyM4OLigq1bt+Lw4cNp1v/444+YOnUqRowYgRcvXmDWrFk4d+4cKlWqhOjoaAkqJiIiIiIiIiIi+jJKuRyNbEuiTXk7tClfBnVKFIdMpqNZr05Mwk0fP5x398J599d44B+AZCEkrJhyUr4Nd0+fPo3Tp09nuH7y5MlYuHAhjhw5AgAYPnw4AgICMGjQIGzcuDG3yiQiIiIiIiIiIvoiVYtZovW7MNexjC2MlAqt9U8Cg3HO3QsX3F/j6us3iFEnSFQp5bZ8G+5+TNmyZVGiRAmcPXtW06ZWq3H58mV89dVXGYa7SqUSenp6mtsmJiY5XisRERERERERERVuOjpACWNj2Jmbooy5GewsTFHazBR25maoZlUUJU2NtfoHRMe8mzf3NS54vIZfFD+lXlgVyHDX2toaABAQEKDVHhAQADs7uwzv9/PPP2Pu3Lk5WVqeMnbsWEybNg0lSpTA48ePMXnyZFy7di3dvs2bN8elS5fStFeuXBnPnz/P4UqJiIiIiIiIiPIvmY4ObEyNUdosbXhrZ57yvVJXnuH9YxMScPX1G02g6xYYBM60QEABDXdTiQ+Och0dnTRt7/vtt9+wbNkyzW0TExP4+vrmWH1S6tevH1asWIFx48bh+vXr+Pbbb3Hq1ClUrVoVPj4+Gd7P3t4ekZGRmttBQUG5US4RERERERERUZ4ll+mglKmJVnhrZ272LsA1ha2ZCRTyjMNbAEhMSoZPZBReh0fgdXik5qtnWAScff0Rn5iUS4+G8pMCGe6+ffsWQMoI3tTvAcDKyirNaN73qdVqqNXqL9q3oaHepzvlAJUqPkv9p06dis2bN2Pz5s0AgClTpqB9+/YYO3YsZsyYkeH9AgMDERHBqyoSERERERERUeGhK5PB1szk3ShbM5Sx0B51W8rUBLpy2Ue3oU5MgndEJLwjIjXhrXd4JLzefe8XFY2kZA7HpawpkOGup6cn/P390bZtWzx8+BAAoFAo0Lx5c0yfPj3H9mtoqIfomIM5tv2PMTbqk+mAV6FQoG7duli8eLFW+9mzZ/HVV1999L4PHjyAvr4+njx5ggULFqQ7VQMRERERERERUX6ilMs14W1qaJv6fWkzU9iYGkMu+3h4G5+YCO/wSLx+L7x9HZZ6OwL+UTFI5lwKlM3ybbhrZGSEChUqaG6XLVsWDg4OCA0NhY+PD1asWIEZM2bg5cuXePnyJWbMmAGVSoXdu3dLWHXeULRoUejq6qY7J3HqfMUf8vf3xzfffIN79+5BT08PQ4cOxYULF9CiRQtcvXo1N8omIiIiIiIiIvoserpyzRQJH4a3duamKGFsDJlM56PbiEtIxOvwCHiFp46+1Q5v30bHcB5cynX5NtytV6+e1qjR5cuXAwC2bduGkSNH4vfff4eBgQHWrl0LCwsL3L59G+3atUN0dM5dPVClioexUZ8c2/6n9p1VWZmT+MWLF3jx4oXm9q1bt2Bra4sffviB4S4RERERERERScpAoasV3pYxN0Xp98NbE+NPbkOlTsDr8Eh4hUf8N3VCWITmdmCMiuEt5Tn5Nty9fPkydHQ+/h+VefPmYd68eblUUYrPCVlzW3BwMBITE9OM0v3UnMQfunXrFoYMGZLd5RERERERERERaTFSKmBn9l9g+2F4W9zY6JPbiI5XZxDepozEDYpR5cIjIcpe+Tbcpc+XkJCAe/fuoW3btjh69KimvW3btjh27Fimt1O7dm34+/vnQIVEREREREREVFjpymT4rnFdNLAp8S7ANUUxI8NP3i8yLl4z161m6oR34e3r8AiExsblQvVEuYvhbiG1bNky7NixA3fv3sXNmzcxevRolC5dGuvXrwcALFq0CDY2Nhg+fDgAYNKkSfDy8sLjx4+hVCoxZMgQ9OnTB7169ZLyYRARERERERFRAWKg0MXuvl3RuVL5NOvCYuNSLlj2QXibOho3PC7vf5qaKLsx3C2k9u/fD0tLS8yePRslSpTAo0eP0KlTJ3h7ewMASpQogdKlS2v6K5VKLF26FDY2NoiNjcXjx4/RqVMnnDp1SqqHQEREREREREQFiJm+Ho4O6okmdqUQm5CABZdu4llQSMpo3IhIRDC8JUqD4W4htm7dOqxbty7ddSNHjtS6vWTJEixZsiQ3yiIiIiIiIiKiQsba2AhOQ3ujprUVwmPj0GP3Edzw9pW6LKI8j+EuERERERERERFJppyFGU4O64vyRczhHxWNLjsOwi0gWOqyiPIFhrtERERERERERCSJmsWLwWloH1ibGME9NByd/z4Aj7AIqcsiyjcY7hIRERERERERUa5rUtoGRwb1hLmBPlzfBqLLjkN4Gx0jdVlE+QrDXSIiIiIiIiIiylWd7MthT7+uMFAocO31G/TcfYQXTCP6DAx3iYiIiIiIiIgo1wxxqIqN3TtAVy7DyefuGHTgBGITEqUuiyhfYrhLRERERERERES54rvGdbG0Q0sAwI6Hj/HtsTNITE6WuCqi/IvhLhERERERERER5bj5rZviJ8dGAIAVN+5i+tlLEELioojyOYa7RERERERERESUY2Q6OljdpQ2+qecAAJh1/gp+v3pH4qqICgaGu0RERERERERElCOUcjm29+6E3tUqITlZYLzTOWy+5yp1WUQFBsNdIiIiIiIiIiLKdsZKBQ4M6IHW5e0Qn5iI4Yf+weEnL6Qui6hAkUldAEln7Nix8PDwQGxsLO7evYumTZtm2Hfr1q0QQqRZHj16pOkzfPjwdPvo6enlxsMhIiIiIiIiojzC0tAAZ0f0R+vydoiKV6PbzsMMdolyAMPdQqpfv35YsWIFFi5ciNq1a+Pq1as4deoUbG1t0+0/adIkWFtba5ZSpUohJCQEBw4c0OoXERGh1c/a2hrx8fG58ZCIiIiIiIiIKA+wNTPBpVEDUM/GGsExKrTbth8XPb2lLouoQOK0DNlMX99Akv3GxcVmqf/UqVOxefNmbN68GQAwZcoUtG/fHmPHjsWMGTPS9I+MjERkZKTmdvfu3WFhYYGtW7dq9RNCICAg4DMeARERERERERHld5WLFsHJYX1ga2YK7/BIdN5xEM+DQ6Uui6jAYribjfT1DXDqxENJ9t2xa61MB7wKhQJ169bF4sWLtdrPnj2Lr776KlPb+Prrr3H+/Hl4e2v/583Y2BheXl6Qy+V4+PAhfvnlFzx8+DBT2yQiIiIiIiKi/KuejTWOD+6FokaGeBYUgk5/H8SbyCipyyIq0DgtQyFUtGhR6OrqphlhGxAQAGtr60/e39raGh07dsSmTZu02p89e4YRI0agW7duGDhwIOLi4nD9+nVUqFAhW+snIiIiIiIiorylVbnSODu8H4oaGcL5jT9abtnLYJcoF3DkbjaKi4tFx661JNt3VgkhtG7r6OikaUvPiBEjEB4ejqNHj2q13759G7dv39bcvn79Ou7fv4+JEydi0qRJWa6PiIiIiIiIiPK+3lXtsb13Zyh15Tjv7oV+e48hWp0gdVlEhQLD3Wz2OSFrbgsODkZiYmKaUbpWVlaZmi931KhR2LFjBxISPn6iFkLA2dkZFStW/KJ6iYiIiIiIiChv+qaeA1Z3bgOZTAeHHj/H8EP/QJ2UJHVZRIUGp2UohBISEnDv3j20bdtWq71t27a4cePGR+/bvHlzVKxYUXMhtk+pVasW/P39P7tWIiIiIiIiIsqbfnJsiDVd20Im08FG54cYfMCJwS5RLuPI3UJq2bJl2LFjB+7evYubN29i9OjRKF26NNavXw8AWLRoEWxsbDB8+HCt+3399de4desWHj9+nGabs2fPxq1bt/Dy5UuYmpriu+++Q61atTB+/PhceUxERERERERElPN0dIDf27fApMb1AACLLt/E3H+vS1wVUeHEcLeQ2r9/PywtLTF79myUKFECjx49QqdOneDt7Q0AKFGiBEqXLq11H1NTU/Tu3TvD+XPNzc2xceNGWFtbIyIiAg8ePICjoyOcnZ1z/PEQERERERERUc7TlcnwV4/2GOxQDQAw9dS/+PPWfYmrIiq8GO4WYuvWrcO6devSXTdy5Mg0bZGRkTAyMspwe1OnTsXUqVOzrT4iIiIiIiIiyjsMFLrY3bcrOlcqj8SkZPzf0VPY7fpU6rKICjWGu0RERERERERE9FFm+no4OqgnmtiVQmxCAgbsO4FTLz2kLouo0GO4S0REREREREREGbI2NoLT0N6oaW2F8Ng49Nh9BDe8faUui4jAcJeIiIiIiIiIiDJQzsIMJ4f1Rfki5vCPikaXHQfhFhAsdVlE9A7DXSIiIiIiIiIiSqNm8WJwGtoH1iZGcA8NR6e/D8AzLELqsojoPQx3iYiIiIiIiIhIS5PSNjgyqCfMDfTh4h+ILjsPIiBaJXVZRPQBhrtERERERERERKTR2b4cdvfrCgOFAle9fNBrz1FExMVLXRYRpYPhLhERERERERERAQCGOFTFxu4doCuXwenZKww64IS4xESpyyKiDDDcJSIiIiIiIiIifNe4LpZ2aAkA2PHwMb49dgaJyckSV0VEH8Nwl4iIiIiIiIiokJvfuil+cmwEAFhx4y6mn70EISQuiog+ieEuEREREREREVEhJdPRweoubfBNPQcAwKzzV/D71TsSV0VEmSWTugDKfc2aNcPx48fh6+sLIQS6d+8udUlERERERERElMuUcjl29+2Kb+o5ICk5GWOOn2GwS5TPMNwthIyMjODi4oIJEyZIXQoRERERERERScBYqcCxwb3Qq5o94hMTMWj/CWy55yZ1WUSURZyWIZsZKhSS7FeVkJDpvqdPn8bp06dzsBoiIiIiIiIiyquKGhrg+JDeqGdjjah4NfrsOYqLnt5Sl0VEn4HhbjYyVCgQPmuSJPs2X7AySwEvERERERERERU+tmYm+GdoH1QqZomgGBW67jyE+34BUpdFRJ+J4S4RERERERERUSFQuWgRnBzWB7ZmpvAOj0TnHQfxPDhU6rKI6Asw3M1GqoQEmC9YKdm+iYiIiIiIiIjSU8/GGscH90JRI0M8CwpBp78P4k1klNRlEdEXYribzRiyEhEREREREVFe0rqcHQ4M6A5jPSXuvPFH912HEaKKlbosIsoGDHeJiIiIiIiIiAqo3lXtsb13Zyh15Tj3ygv99h1DjJoD04gKCoa7hZCRkREqVKiguV22bFk4ODggNDQUPj4+ElZGRERERERERNnlm3oOWN25DWQyHRx89BwjDv8DdVKS1GURUTZiuFsI1atXD5cuXdLcXr58OQBg27ZtGDlypERVEREREREREVF2+cmxIea3bgYA2Oj8EN+dvIBkISSuioiyG8PdQujy5cvQ0dGRugwiIiIiIiIiymY6OsCS9i3xXeO6AIBFl29i7r/XJa6KiHIKw10iIiIiIiIiogJAVybDXz3aY7BDNQDA1FP/4s9b9yWuiohyEsNdIiIiIiIiIqJ8zkChi919u6JzpfJITErG/x09hd2uT6Uui4hyGMNdIiIiIiIiIqJ8zFxfD0cG9UQTu1JQqRMwcP8JnHrpIXVZRJQLGO4SEREREREREeVT1sZGODm0D2pYF0NYbBx67DqMmz5+UpdFRLmE4e5nEu+uMKmry6fwc6U+d4JX6yQiIiIiIiLKsnIWZvhnWF+UK2IO/6hodNlxEG4BwVKXRUS5SCZ1AflVSEgIAKBy5coSV5J/pT53wcH8wUNERERERESUFTWLF8OlrwehXBFzuIeGo8XmPQx2iQohDjv9TDExMbh06RL69esHAHj27BkSExMlrip/0NXVReXKldGvXz9cunQJKpVK6pKIiIiIiIiI8o0mpW1wZFBPmBvow8U/EF12HkRANP+2JiqMGO5+ga1btwIA+vfvL3El+dOlS5c0zyERERERERERfVpn+3LY3a8rDBQKXPXyQa89RxERFy91WUQkER0AnPA0AyYmJoiMjISpqSmioqIy7GdoaIiiRYtCR0cnF6vLv4QQCA4O5ohdIiIiIiIioiwY4lAVG7t3gK5cBqdnrzDogBPi+CliogIps7kkR+5mA5VKBW9vb6nLICIiIiIiIqIC6rvGdbG0Q0sAwI6Hj/HtsTNITE6WuCoikhrDXSIiIiIiIiKiPOzX1k0x3bERAGD5jbv46ewlCH4Om4jAcJeIiIiIiIiIKE+S6ejgzy5t8H/1HAAAM89dwZJrdySuiojyEoa7RERERERERER5jFIux9+9O6NXNXskJSdjvNM5bLnnJnVZRJTHyKQuICfJ5XL8+uuv8PDwgEqlgru7O3755Rde+IyIiIiIiIiI8ixjpQLHh/RCr2r2iE9MxKD9JxjsElG6CvTI3enTp2PMmDEYPnw4Hj9+jHr16mHr1q2IiIjAqlWrpC6PiIiIiIiIiEhLUUMDHB/SG/VsrBEVr0bvPUdwydNH6rKIKI8q0OFu48aNcezYMfzzzz8AgNevX2PgwIGoV6+exJURERERERERUWGlpyuHsVIJE6USJnoKGCuVMFYqYaavhzktv0KlYpYIilGh685DuO8XIHW5RJSHFehw99q1axgzZgwqVqyIly9fombNmmjatCkmT56cbn+lUgk9PT3NbRMTk1yqlIiIiIiIiIjyKj1d+bsgNiWQNVIqNN8b66W0GysV/91WptxO/d5ETwkjpRIm7+6nkMs/uj/v8Eh03nEQz4NDc+kRElF+VaDD3f/9738wMzPDs2fPkJSUBLlcjpkzZ2Lv3r3p9v/5558xd+7c3C2SiIiIiIiIiLKVvq7uu/BV8V6w+i6EfTdSVnP7XRCb+n1qUGv8XpirK8+ZSxap1AmIUqsRFa9GzLvvX4dH4Jfz1/AmMipH9klEBYsOACF1ETmlf//+WLJkCaZNm4bHjx+jVq1aWLFiBaZOnYq///47Tf/0Ru76+vrC1NQUUVE8qRIRERERERHlBIVcBgt9/XSDVSM9hdaoWeN0R8mmhLap3+dUGBujTkBUvBpRajWi49WIVqsRpU5AdGqbWo3o+PcDW7Wmf1R8Qsrtd23R6gQkiwIbyRDRFzIxMUFkZOQnc8kCHe56e3tj8eLFWLt2raZt5syZGDJkCKpUqfLJ+2f2SSQiIiIiIiKirDPRU+L7JvXxXaO6MNZTZvv2o+JTA9fU8DVB05YasEa/F8DGvBfMRqnVWmFuDMNYIspFmc0lC/S0DIaGhkhOTtZqS0pKgkyWM//BIyIiIiIiIqJPU8rlGF3fAT87NkIxI0MAQHKySAliPwxc3wtY35++ICpee/SsJshN7ZeQAGaxRFTQFehw98SJE5g5cya8vb3x+PFj1K5dG1OnTsWWLVukLo2IiIiIiIio0NHRAfpXr4y5rZqiXBFzAMDzoBDMOn8Vx5+/YhhLRJRFBXpaBmNjY/z666/o2bMnrKys4Ofnhz179mD+/PlISEj45P05LQMRERERERFR9mhT3g6L2jqiVoniAAC/yGjMv3Qd2x88QlJygY0miIg+C+fczQYMd4mIiIiIiIi+TO0SxbGwbTO0KV8GABARF4+l1+5g1a17iE1IlLY4IqI8inPuEhEREREREZFkylqYYX7rpuhfI+WC5urEJKxzfoDFV24jRBUrcXVERAUDw10iIiIiIiIiyjbFjAzxs2MjjK7nAKWuHMnJAnvcnmDevzfgFR4hdXlERAUKw10iIiIiIiIi+mJGSgUmNa6L75s0gImeEgBw5qUnZp2/Ape3QRJXR0RUMDHcJSIiIiIiIqLPpiuTYVTdGpjV/CtYmxgBAO75vsWMc1dw0dNb4uqIiAo2hrtERERERERE9Fl6VbXHr62bomLRIgCAVyFhmHPhGg4+eQ7By7cTEeU4hrtERERERERElCWOZWyxqK0jGpQqAQAIjFZhweUb2HzPFQlJyRJXR0RUeDDcJSIiIiIiIqJMqVG8KBa0cURH+3IAgOh4NZbfuIvlN5wRrU6QuDoiosKH4S4RERERERERfZStmQnmtGyCIQ7VIJPpICEpCZvuuWLhpZsIjFFJXR4RUaHFcJeIiIiIiIiI0lXEQB8/NmuIcQ1qQ1+REiEcePQMcy5cw6vQcGmLIyIihrtEREREREREpE1fVxcTGtXBj00bwNxAHwBw0cMbM85dwT2/txJXR0REqRjuEhEREREREREAQC7TwdBa1TC7RROUMjMBALi+DcSMc1dw9pWXtMUREVEaDHeJiIiIiIiICF0qlceCNs1Q1aooAOB1eCTmXriGPW5PkSyExNUREVF6GO4SERERERERFWKNbEvit7aOaGJXCgAQoorF4iu3sN75IeITkySujoiIPobhLhEREREREVEhVLloEfzaphm6V6kIAFCpE7D61j0sve6MiLh4iasjIqLMYLhLREREREREVIiUNDHGLy2/woja1SGXyZCUnIxtDx7h14s34BcVLXV5RESUBQx3iYiIiIiIiAoBM309/NCkPiY2qgtDpQIAcPzpS8w6fxXPgkMlro6IiD4Hw10iIiIiIiKiAkwpl2Nsg1r4ybERLA0NAAA3vH3x89nLuOnjJ3F1RET0JRjuEhERERERERVAMh0dDKxRBXNaNUEZCzMAwNPAEMw8fwVOz90lro6IiLIDw10iIiIiIiKiAqZdhTJY1NYRNa2tAAC+kVGYd/E6djx8jKRkIXF1RESUXRjuEhERERERERUQdUtaY1FbR7QsVxoAEB4bhyXX7uDP2/cRm5AocXVERJTdGO4SERERERER5XPli5hjfuum6Fu9MgAgPjERa24/wO9XbyM0Nk7i6oiIKKcw3CUiIiIiIiLKp6yMDDGzRWP8X92aUMjlSE4W2OX6BPP+vQ7viEipyyMiohzGcJeIiIiIiIgonzFWKjDlq/qY8lU9GOspAQCnXnhg1vkrcAsIlrg6IiLKLQx3iYiIiIiIiPIJhVyG/6vrgJnNG8PK2BAA4PzGHzPOXcFlLx+JqyMiotzGcJeIiIiIiIgoj9PRAfpUrYR5rZuigqUFAOBlcCh+uXANh5+8kLg6IiKSCsNdIiIiIiIiojysRVlbLGrbHPVsrAEAb6NisODyDWy554bE5GSJqyMiIillOtz18PCAECLLO1ixYgVWr16d5fsRERERERERFWY1ixfDwraOaF+xLAAgKl6NZdedseLmXcSoEySujoiI8oJMh7sjRoz4rB14eXl91v2IiIiIiIiICiM7c1PMbdUEA2tUhUymg4SkJGy864JFl28hKEYldXlERJKQy3VR3KoE/Pw5v/j7Mh3uXrlyJSfrICIiIiIiIirULA0N8JNjQ4ypXwt6uil/ru9ze4o5F67BIyxC4uqIiHKXQqFA5Uo14VCzARxq1ke1qrURERGKgUNbS11anvLZc+7q6urC2toahoaGCAoKQlhYWHbWRURERERERFQoGCoUmNioDn5o2gBm+noAgAvurzHj3BU88A+QuDoiotyhVOqhSmUHONSsj1oODVG1igP09PS1+qjV8TA1tUBkJHPIVFkKd42MjDB48GAMHDgQDRo0gJ6eHnR0dCCEwJs3b3D27Fls3LgRd+/ezal6iYiIiIiIiAoEI6UC/WtUxuwWTVDS1BgA8NA/ADPOXcF599cSV0dElLP09Q1QtUotzcjcKpUdoFQqtfqEhYXAxc0ZLi638dDVGa9fv/qsa4IVZJkOdydPnoyZM2fCy8sLx48fx+LFi+Hr64vY2FgUKVIE1atXR7NmzXDu3DncunULEydOxKtXr3KydiIiIiIiIqI8Qy7TgaWBAayMDGFlbAgrI0MUM/rva3FjIxR7r81IqdDc1zMsAnMvXMPeR0/B3IKICiIDAyNUr1ZbE+ZWrlQDuroKrT7BIYFwcb0DF1dnuLjegbe3h0TV5h86ADL1Y2P//v2YP38+Hj169NF+SqUSX3/9NdRqNTZv3pwdNUrGxMQEkZGRMDU1RVRUlNTlEBERERERUS4zVirShLPvh7bvh7iWBgaQyXSytP23UTFYcu02Nji7QJ2UlEOPgogo9xkZGqNG9bqaMNfevhrkcu1xpoGB/njoekcT6Pr68lMLqTKbS2Y63C2MGO4SEREREVF2KGlijOZlbGFjZoIYdQKi1WpEx6sR/e57TZs6AdHqBKgSEqQuucDSlclQ1NDgvcBWe3StdohrAAOF4tMbfU9yskCwKhZBMSoExqg0XwNjYlJuR2u3R6v5WhNRwWBiYoaa1evBoWZ9ONSsj/Llq0Aul2v18fd/Axe3dyNzXe7A/+0biarN+zKbS2Zpzl0DAwMsWbIEPXr0gEKhwPnz5/Hdd98hJCTkiwsmIiIiIiIqKGxMjeFoZwvHsrZwLGOLipYWWbp/crJATEICouLViFH/FwJHqxO0guAYtRpRqevjE7T6vt8vSq2GKiGhwH7c31RPqT0FgrEhihulP8rW0tAgy9uPUScgIDoGQe+FskExKgSkE9aGxMYiKbmAPtFERO8xNbWAQ816mpG55cpWgkwm0+rzxtfr3RQLKWFuYJC/RNUWXFkKd+fNm4cRI0Zg165diI2NxaBBg7Bu3Tr069cvp+ojIiIiIiLK82xMU0bmOr5bKnwQ5iYlJyNC3xxqk6J44uYMdUwkjJUKGCsVMFIq332vhIleyoVkZDIdmOj9dzu7ZDRaOOZdAJx2FLEaMfEJWuFy9Lt+qfdLzoHEWCGXoZihYTqBraHWnLWpX/UVWfrTFknJyQhWxSLwg2BWM8o2+t0o25hYBMaoOJKaiAiAhbllSpDrUB8ONeqjbFn7NH28vT205swNDgmUoNLCJUs/AXv16oWvv/4a+/btAwDs2rUL169fh0wmQ3Jyco4USERERERElNeUMjWBY5lSHw1z7/sF4MrrN7jm7YuOo2aiWu2vAACJpRpi8pRB8PB8nma7OjqAoUKhCXs/DH+NlAqY6GnfTttPAROlUut+qfPAGuspYaynBGCUbc+FSp2QJjCO0nyf3rQTasSqE2GinzLa1srI6F1Q+99UCUU+Y3RtVLxaE8x+GNYGxagQEP3f7dDYuBwJpYmIChJLS6t3Uyw0QK2aDVC6dLk0fTw9X8DFzRkuLs5wcXNGWFiwBJUWblmaczc+Ph5ly5aFn5+fpk2lUsHe3h5v3hS8OTI45y4REREREQEpYW7zMv9Ns1C+iLnWek2Y6+WDy14+uOHti8h4NQBg/NgZ6NNrOFSqGHi9fomqVWohMNAf477rh5BcGtFkoNDVhMCpQbDJ+6Gx3vshseK9vso09zN+FzDLP/jobXZLTEpGkCptMJteYBukUiE2ITFH6yEiKuisipWAg0MDzZy5pWzKaK1PTk5OCXNTR+a6OSMiIkyaYguBHJlzVy6XQ61Wa7UlJiZCVzdrH4EhIiIiIiLKy2zNTDTTLDTLIMy95xeAq+/C3OvevoiKV6fZTts23dGn13AAwG+//4iHLnfw58q9sCtdHot+XY9JU4cgLk6V448nNiERsQmJCIrJvm3q6cpTppLIIBR+PzD+8KuhUoHIuHitqQ8+nBIhLC6uwM4RTJQRhUKJYkWLw8/fR+pSqBCwti6FWqlhbo0GKFGilNb6pKQkuLs/1cyZ6/roLqKiIiSqljKSpZG7SUlJOHXqFOLj4zVtXbt2xb///ouYmP9+S+jdu3e2FikVjtwlIiIiIioc3g9zHcvYotwHYW5iUjLu+78bmevpgxs+6Ye577O3r47Vy3dDqdTD3zvXYOv2VQCAEtalsGbVflhYWOLGzX/xy9zxnOaOqJBTKBTo3KkfhgwcA0tLKwQE+uHKlTO4dOU0nj5zgeB/Oigb2NjYaaZZcKhZH8WtSmqtT0pKxIuXT+Dicgcurnfg9ugeYlTRElVLmc0lsxTubtmyJVP9Ro0aldlN5mkMd4mIiIiICqbSZqaaaRaa2ZVKN8y95/cWV1+/yXSY+z5z8yLYsOYwrKxK4MbNfzFrzjitcKZKFQcsX/I39PT0cfjI31i9dmF2PTQiykfkcl20b9cDw4aMTxO0pQoM9MeVa2dx+cppPH7ygEEvZZqtbbn/RubWbICillZa6xMTE/DsuZtmZO6jx/cRG5uNH/GgL5Ij4W5hw3CXiIiIiKhgsDM3haPdf3PmlrUw01qfGua+P2dutDrhs/Yll+vij9+3wqFmA3j7eGLchD7pjnxybNYe82anjOb9c+1CHDry92ftj4jyH5lMhlYtu2DE0AmwsbEDAAQFB2DHrrW48O8J1K7VCC0cO6Jxo5YwMjLW3C8o6C2uXDuLS5dP4/GT+wx6SUNHRwd2dhVQ612QW7NGPRQpUkyrj1qtxtNnLu/C3Dt48vQh4uJiJaqYPoXhbjZguEtERERElD/ZmZvCsYytZqqFMumEuXffhblXvjDM/dDEcTPRq+cwxMREY9x3feHt7ZFh3wH9/g/ffjMNycnJmD13Aq7fvJAtNRBR3qSjo4NmTdpi5PDvUKZMRQBAWFgIdu3ZgBMn90Ktjtfqr1Ao0aBeMzg6tsdXjVvB2MhEsy4oOABXr6ZM3fDoMYPewkZHRwflylVCrZoNULNmfTjUqA8zMwutPvHxcXjy1EVzAbQnTx+mOcYo78r2cNfW1hY+Ppmf0LtkyZLw8/PLdP+8iOEuEREREVH+kJUw97KnD276ZF+Y+7727Xrip2mLAQCzZo/LVFg7ddI8dO0yALGxKkz+fghevHyc7XURkfQaNWiOkSMmwb5iNQBAZGQ49u7fhCPHdmXqwooKhQL16jZFC8cO+Oqr1lpBb3BIIK6+m7rB7dE9zuNdAMlkMlQoX0UzxUKN6nVhamqu1Sc2VoXHTx5oRuY+e+6KhITs/1lHuSPbw923b9/i+PHj+Ouvv+Ds7JxuH1NTU/Tr1w+TJk3Chg0b8Oeff35W8XkFw10iIiIiorypjLlZSpj7bpoFO3NTrfUJSUm46/vfNAs3ffwQkwNh7vsq2dfAquW7oFTqYdvfq7F9R+b+HpLJ5PhtwQY0qN8MISGBGDexHwKD/HO0ViLKPXVqN8KoEZNRrWptAEBMTDQOHt6GAwe3fvbFqhQKBerWaYIWjh3Q5KvWMDb+7xwYEhKIq9fP4dLl03B7dJdBbz4lk8lhX7EqHGo2QC2HBqheva5WoA8AKlUMHj2+DxfXO3jocgcvXj5GYiLD3IIi28NdCwsLzJgxA6NGjUJCQgLu3r0LPz8/xMXFwcLCAlWrVkW1atVw9+5dLFiwAKdPn86uxyIZhrtERERERHlDWYuUMDd1yQth7vsszC2xfs0hWFmVwPUbF/DL3PFZ+oi0oaERVi3fg/LlKsHD8zm+mzyIVygnyueqV6uDkcMnoU7tRgCAuLhYHDm2E3v3b0ZkZFi27UehUKBu7a/g6NgeTb9qAxOT/z65EBoahKvXzuHSldNwdXNm0JuHyeW6sLevhlo1G2hG5hoaGmn1iY6JgpvbXc3I3BcvnyA5OUmiiimn5dicu3p6eujUqROaNWuGMmXKwMDAAMHBwXjw4AHOnDmDx48LzkeIGO4SEREREUkjNcxNnWahdDphrrPv+9Ms+EEl0UdPdXUVWPq/rXCoWR/e3h4YO7EPVKqsX228WDFrrF19AEUtreB87xp+nvktkpISc6BiIspJ9hWrYeSISWjUoDmAlItYnTi5F7v2bEBYWHCO7ltXV4E6tRtrRvS+/7H90LBgXL12DpevnIaLqzNDQYnp6ipQuVKNlGkWHBqgetXaMDDQDnOjoiLg6nZXMzLX3eMZA/pChBdUywYMd4mIiIiIckc5CzM4lk0Jc5vZ5e0w90PfTfgFPbsPQUxMNMZO7Asfn4wvoPYp9hWrYcUfO2FgYAink/vwx4rZ2VgpEeWkMmUqYuTw7+DYtB0AIDExAadOH8KO3esQFPQ21+vR1VWgdq1GKUFvk9YwM/3vYlthYSG4ej0l6H3ocodBby5QKBSoXKmmZpqFalVrQ1/fQKtPRGQYXFyd4erqjIeud+Dp+YJhbiGW6+Gurq4uEhML1n+VGe4SEREREeWM98NcxzK2sDXTDnPViUlw9vXXTLNwy8c/z4S57+vQvhem//AbAGDm7LG4cfPfL95m40YtsWDeWshkMmzYtBR79/31xdskopxTyqYMRgybgJYtOkMmkyE5ORnnLxzH9h1/ws8/8xemz0lyuS7q1G4Ex2bt0axJW5iZ/Rf0hoeH4tr1lKkbHjy8zaA3mygUSlSt4gCHd9MsVKtaC3p6+lp9wsND4eJ6By6uznjocgder19maUofKthyPdy9dOkSVqxYgaNHj6JJkyYIDQ3F06dPs2PTkmG4S0RERESUPcoXMdeaZqGUmfZFYdSJSbjj64+reTzMfV/lSjWwctluKJVKbN2+Cn/vXJNt2+7VYygmjp8FAJj76yRcvpL/r2lCVNAUL26DYYPHoX27HpDLdQEAly6fwra/V+O1t7vE1WVMLtdFLYcGaOHYAc2attMKeiMiwjQjeh88vM2pYbJAqdRD1Sq1UMuhARxq1kfVKrWgVOpp9QkNC04ZletyBy6ud+D1+pVE1VJ+kOvh7uDBg2FpaYmwsDBUrFgRAwYMgL29fXZsWjIMd4mIiIiIvkz7CmWxuksblLEw02pPDXNTp1m49cYPsQn5J0SwsCiKDWsOoVgxa1y7fh6z503I9tFWE8bNRO+ew6BWx2PKD8Pw5OnDbN0+EX0eS0srDBk0Bp079oVCoQQA3Lj5L7ZuX4VX7vlrkJtMJtcKes3Ni2jWRUSG4dr187h85QzuP7jJoPcD+voGqFqllmaahcqVakKpVGr1CQkJxMN3I3NdXO/A2/vzp+2hwifXw92HDx/i0aNHUKvVkMvlePPmDWbOnJkdm5YMw10iIiIios83tkFtLOvYEnKZDOrEJNx+44err9/kyzD3fbq6Cvzx+zbUrFEPr73dMW5i38+6gNqnyGQyzJ+7Bk0at0J4eCjGTewL/7dvsn0/RJQ5ZmYWGNj/G/ToNljz8fq7965jy/aVePrUReLqvlxK0Fsfjs06oFnTtihiUVSzLjIyHNdvXMClK6dx/8FNJCbm7U9W5AR9fUNUr1b73cjcBqhkX10T7qcKCg6Ay7tRuQ9d7uCNr5c0xVKBkOvhbu3atfHgwQPN7YIwBy/DXSIiIiKirJPLdLC0Q0uMb1gHALD1vhum/PNvnp9mIbMmT5yD7t0GITomCuMm9IXPG88c25e+viFW/rED9vbV4e3tgQmTByAqKiLH9kdEaRkbm6Jfn1Ho02sYDAyMAABuj+5h89YVcHG9I3F1OUMmk6FmjfopI3qbtdMKeqOiInDtxnlcvnIa9+4X3KDXwMAI1avV0UyzUMm+OnR1FVp9AgP9U0bmutzBQ9c78PPzlqhaKohyPdwFgIoVK+Lt27cFJghluEtERERElDUmekrs7NMFHe3LAQB+PnsZf1x3lriq7NOpQx9M+34hkpOTMXP2WNy6fSnH92lpaYU1q/ahuFVJPHS5jWk/fV1gwxSivMTAwAi9ew5D/76jYGycctHHZ8/dsGXbCjjfvSZxdblHJpOhRvV6aNG8AxybtkORIsU066KiInD95gVcvnIG9+5fR0I+/ieekaExalSvm3IBNIcGsK9YVTOXcqq3b9/8N82Cyx1+moJyVI6Fu5UrV0aVKlVw9epVBAcHa60zMzPD+vXrMXDgwM8qOq9huEtERERElHm2ZiY4OqgXalgXg0qdgBGH/8HRpy+lLivbVKnigBVLd0KpVGLLtpXYsWttru27bBl7rF6xB0ZGxjh77ih++316ru2bqLDR09NH966DMGjAaM3Fxjw8n2PLtpW4fuOCxNVJKyXorYvmjilBr6WllWZddHQkbtz8F5eunMbde9fyfNBrZGSCmjXqaaZZqFC+CuRyuVYfP3+f/6ZZcHVGQICvRNVSYZQj4W737t2xf/9+6OrqIjo6Gh07doSenh6GDx8OBwcHVK5cGQqFAp07d8aZM2ey43FIiuEuEREREVHm1LOxxuGBPWFtYgT/qGj03H0E9/0CpC4r21hYFMWGtYdRrGhxXL12DnPmT8z2C6h9Sv16TfHbgg2Qy3Wxdfsq/L1zTa7un6igUygU6NyxLwYPGoui70JLbx9PbPt7FS5dPpXr7/m8TiaToVrV2mjh2AGOjh00zxkARMdE4cbNf3H5ymk4372GhAS1hJWmMDExQ83q9eDwbpqFCuWrQCaTafV54+sFF1dnPHwX6AYFvZWoWqIcCncvX74Ma2tr/Pjjj7C1tcWYMWNQqVIlzZshMjIS+/btw8SJE/P8f2gyg+EuEREREdGn9apqj629OsJAoYDr20D02HUEbyILzu/PuroKLFuyHTWq14WX10uM+64/YmOz/wJqmdGlUz98P+VXAMDCxdNw/sJxSeogKkjkcl20b9sDQ4eMg3VxGwCAv/8bbN/5J86dP47k5CSJK8z7dHR0UK1qnZSpG5q1R7GixTXrYmKiU4Leq6dxx/lqrgW9pqYWcKhZL2WahZr1Ua5spTRhrrePJ1xcbqdMs+B6B8EhgblSG1Fm5Ei4e+LECZw/fx4rV64EAHTo0AEjR47ErFmzCtRcu6kY7hIRERERfdyPzRpgQRtHAMDJ5+4YetAJ0er8P9DjfZO/m4vuXQciOjoSYyb0ga/va0nrGf1/P2Bg/2+QkKDGtJ9GwcW14MxpTJSbZDIZWrXojOHDJqCUTRkAQFBwAHbuWod/Th/k3NafKSXorY3mjh3QvFl7FCtmrVmnUsXg5q2UqRvuOF+FWh2fbfs1Ny+CmjXqw6FmfdRyaIByZSul6fPa210zKtfF1RmhoUHZtn+i7JYj4a65uTkWLlyIBQsWwN7eHjKZDB06dMD06QVzvieGu0RERERE6VPIZVjXtR2G1a4OAFh58y6mn7mM5AL2seXOHfvih6kLkJycjBm/fIvbd65IXRJ0dHQwe9YKtHDsgMjIcEyYNAA+bzylLosoX3Fs2g4jh3+HMmUqAgDCwkKwe+8GHHfam62BY2Gno6ODKpUd3k3d0B7FrUpq1qlUMbh5+yIuXzmN23euZPl5tzC3hEPNBu/mzK2veS3f5+n5Ai5uKdMsuLo6Iyw85IsfE1FuyZFwVyaT4cCBA+jevft/G9DRgZ+fH9atW4eVK1ciJkaajydlpGTJkvjf//6Hjh07wsDAAC9evMDXX3+N+/fvf/K+DHeJiIiIiNIqYqCPff27o3lZWyQmJWPKqX+xwfmh1GVlu6pVamHFHzugUCixaety7Nq9XuqSNJRKPSxbsh3VqtaGr583xn/XDxERYVKXRZTnNWzgiFEjJsO+YjUAQFRUBPbu34TDR3ciLk4lcXUFm46ODipXrpkS9DZrr5kCAwBiY2Nw89allKDX+Qri4+PS3N/S0goONetrplmwK10+TR93j+f/TbPg5szzIuVrORLu/vDDD5g+fTpOnjwJd3d3zYYNDQ1RtGhRlCtXDsuWLcOVK9L/NxtIGWn84MEDXLx4EevWrUNgYCDKly8PLy8veHh4fPL+DHeJiIiIiLRVtLTA0UE9UbFoEUTGxWPQgRM4+8pL6rKynaWlFdavOYSilla4cvUM5sz/TuqS0jA3L4I1q/ajZAlbPHp8H1OnDc8TFy0iyotq12qEUSMmoXq1OgBSRo0ePLwN+w9uRUwM/96XQpXKNTVTN1hbl9K0x8aqcOv2JVy5eha6uropga5DA9iWKqt1/+TkZHh4PtdMs+Dqdg+RkQxzqeDIkXD36NGjGD16NAIDA9GzZ08MHjwYO3fuxNGjRwEA7dq1w7Fjx9CoUSO4uLh86WP4Yr/99huaNGkCR0fHz7o/w10iIiIiov84lrHF/v7dUMTQAF5hEei5+wgeBwZLXVa2UygUWLbkb1SvVgeeni8wftIAyS6g9imlS5fDnyv2wsTEDBcv/YNfF02FKGBTYxB9iWpVa2PUiEmoU7sxACAuLhZHj+3Cnv2bGATmIZXsa6CFYwc0d+yAEiVKpdsnOTkZr149gYurMx663oGr211ER0fmcqVEuSdHwt01a9bgwIEDKF++PNauXYs3b97Ay8sLP/74I+7du4fLly+jePHiqFq1KpKTk7PjcXyRx48f48yZMyhVqhSaN28OX19frF27Fps2bUq3v1KphJ6enua2iYkJfH19Ge4SERERUaE3rFZ1rO3aFkpdOW75+KHPnqMIjCmYH2GeOmkeunYZgKioCIyZ0Ad+ft5Sl/RRDjUbYMnizVAolNi1Zz02bVkudUlEkqtYoSpGjZiERg1bAADUajWcTu7Frr0beRGtPM7evjpaOHZA44YtEBcfBxfXO3jocgduj+5xlDUVKlkZdCoyu1SqVEm8fftWJCUliYsXLwoDAwMBQLRv316zfu3atcLQ0DDT28zJJTY2VsTGxoqFCxeKWrVqidGjRwuVSiWGDh2abv85c+aI9JiYmEj+WLhw4cKFCxcuXLhwkWLR0YH4tXVToZ73g1DP+0Hs7NNF6OvqSl5XTi1dO/cXF889FxfOPBX16zWTvJ7MLu3b9hAXzz0XF889F5069pG8Hi5cpFrKlKko5s1epXk/nD/9WHw/eb6wKlZC8tq4cOHCJSuLiYlJpnLJLI3cBQAjIyNUrFgRrq6ueWJ07sfEx8fj7t27aNKkiaZt5cqVqF+/Pr766qs0/Tlyl4iIiIjoPwYKXWzp2RG9q1UCACy6fBPzLl5HQf3Uf/VqdbBsyXYoFEr8tfkP7N67UeqSsmTEsIkYPnQCkpISMX3GN7h3/4bUJRHlGhsbO4wYOhGtWnaGTCZDcnIyzv97Att3/JnnR98TEaUnsyN3dbO64ZiYGDx8+PBLass1/v7+ePLkiVbb06dP0bt373T7q9VqqNW8AAERERERkbWxEQ4N7IH6pUpAnZiEMcfPYKfLk0/fMZ+ytLTC3F9WQqFQ4tKV0/ku2AWAbX+vRskSpdG2TTfMnb0KEycPhJfXS6nLIspRxa1KYuiQcejQrifk8pSI49KV09j+92p4vX4lcXVERDkvy+FufnL9+nVUqlRJq83e3h6vX7+WqCIiIiIioryvRvGiODKoF0qbmyI4RoW+e4/hurev1GXlGIVCgXmzV8HS0goens/xvyU/S13SZ1uybAasrKzhULMBfluwAeO/68/5RalAsrS0wuCB36JLp35QKJQAgJu3LmLr9lV4+arg/iOKiOhDWZ6WIT+pV68ebty4gTlz5mD//v1o0KAB/vrrL4wePRq7d+/+5P2zMnExEREREVFB0KFiWezq2xUmekq8CA5F912H4R4aLnVZOer7Kb+iS6d+KRdQG98bfv4+Upf0RUxMzPDnyn0obVsWz567YcoPQxEXFyt1WUTZwszMAgP7f4Me3QZDT08fAHDv/g1s2bYST54+lLY4IqJslNlc8ovD3dq1a+PRo0dISEj4ks3kmM6dO+O3335DxYoV4enpiWXLlmHTpk2Zui/DXSIiIiIqTMY1rI0/OrSEXCbDRQ9v9N93DOFx8VKXlaO6dhmAqZPmISkpCT/PGg3nu9ekLilblCxZGmtW7oO5eRFcu34ec+ZPzPPXTCH6GCMjE/Tv+zX69BoGAwMjAMCjx/exeesKPHS5LXF1RETZL9fC3cTERFSpUgUvXxa8uZwY7hIRERFRYSCX6eCPDq0wrmFtAMCWe66YePI8EpIKdhhYvVpdLFuyDQqFEhs2LcXefX9JXVK2ql6tDv74fRuUSj0cOLgVazcslrokoiwzMDBCr55D0b/PKJiYmAEAnr94hM1bV8D57lWJqyMiyjk5dkG1D+no6HzpJoiIiIiISCImekrs6tsVHSqWRXKywMzzV/DHdWepy8pxRYsWx7zZKRdQu3jpnwIX7AIpoxoX/z4ds2etQN8+I+Hn742jxz89PR1RXqBU6qF7t0EY1H80zM2LAAA8PV9gy/aVuHb9vMTVERHlHQX6gmpERERERJSx0mamODq4J6oXLwaVOgHDD53EsWcF/+ryCoUS82evRpEixeDu8Ry//zFD6pJyzMXLp1CihC2++fp7TBg3C28D/HDr9iWpyyLKkEKhQKcOfTFk8FgUtbQCAPi88cS2v1fj0uVTnF6EiOgDDHeJiIiIiAqh+jbWODSwJ6xNjOAXGY1ee47gvl+A1GXliskT56BKFQdERobjlznjCvzFxnbv3YiSJUujc8e+mD1zGb6bMhiv3J9KXRaRFplMjvZte2DYkHGwti4FAHgb4Iu/d6zBmXNHkZycJHGFRER5E8NdIiIiIqJCpk+1StjcswMMFAq4+Aei5+4jeBNZOK4x0b3rIHTq2AdJSUn4ddFU+L99I3VJuWL5yrkoblUS9eo2waIFGzBuYl8EBxeOMJ/yBgMDI1gWKQZLSysUtbRCEctiKGpppWkrVaqsZqRucEggdu5ah39OH8izF28nIsorGO4SERERERUi05s1xK9tmgEATj53x9CDTohWF47wpEb1upgwLmUKhr82/4G7965LXFHuSUpKxNz53+HPlXtRpkxFLF6wEROnDEJsbIzUpVE+p69vmBLSWqaEtJbvAtui774vUiQlzDU0NPrktsLDQ7F77wYcO7EHanV8LlRPRJT/MdwlIiIiIioElHI51nZti2G1qwMAVt68i+lnLiNZCIkryx1FixbH3NmroKurwIWLTth3YLPUJeW6GFU0fpo5GmtX70f58pUxZ9YKzPhlDD/uTunS1zeEpeV/Ia3WqNsiVprvMxPapoqJiUZIaBBCQgIRGhqI4JBAhIQEatqev3hU4KdJISLKbgx3iYiIiIgKuCIG+tg/oDscy9giMSkZk09dwEZnF6nLyjUKhRLz5/yJIhZF4e7+DEuXzZK6JMkEBPphxi9jseKPHWjYwBHfTfgFK1bNlbosykXvh7ZFirwf3lppjbw1MjLO9DZVqhgEvwtsQ0LehbbvAtuUJQghoUEcKU5ElAO+ONydN28egoODs6MWIiIiIiLKZvaWFjgyuBcqWlogIi4eg/afwDl3L6nLylVTJs1Flco1EREZhllzxxf6kYHPX7hhwW/fY/6cP9G960D4+r3GgYNbpS6LvpC+vkG6I2w/DHGzEtrGxsb8N7r2XWAb/H5g+66NoS0RkXR0ABSOz2F9BhMTE0RGRsLU1BRRUYXjAhNEREREVHA4lrHF/v7dUMTQAF5hEeix6zCeBIVIXVau6tF9MCZNmI2kpCT8+PPXuP/gptQl5Rl9eg3H+LEzkJycjHm/TsKVa2elLonSoa9v8MEI22KwtCye5uJkxkYmmd6mVmj7boRtcEggQkOCtNoZ2hIRSSezuSSnZSAiIiIiKoCG1aqOdd3aQiGX45aPH/rsOYrAGJXUZeWqmjXqYfyYnwEAGzYtYbD7gYOHt8PGxg49ug3GjJ+WIOiHt3j6zFXqsgoVfX0DVKxQNf2pEd5doOxzQtvQdEbYvt/O0JaIqOBguEtEREREVIDo6AALWjfDtGYNAQD73Z7h/46eRlxiosSV5a5ixawx95eUC6idv3CC0w5kYPWahbAuboNGDVtgwfx1GP9df7x9+0bqsgo8IyMT9Ow+BH16D4eZqcUn+8fGqhDy3ny2H46wTfkaCJWKoS0RUWHDaRk+gtMyEBEREVF+YqDQxbZendCzqj0AYOGlm5h/6TpEIfuNX6nUw8plu1C5Ug28fPUEEycPRHx8nNRl5VkGBkZYuWwnKlaoCq/XrzBh0gDExPDvn5xgZmaBPr2Go0f3IZoRucEhgfD19Up3hG1KcBvA0JaIqBDKbC7JcPcjGO4SERERUX5hbWyEw4N6op6NNeITEzHm2Fnscn0idVmSmD7tN3Ro1wsREWH4dnxvBAT4Sl1SnlfU0gprVx9AsWLWuP/gJqbP+AaJiQlSl1VgWFpaoV+fkejaeQAMDAwBAB6ez7Fz93pcvnIaycnJEldIRER5TY6Hu7q6urC2toahoSGCgoIQFhb2ubXmWQx3iYiIiCg/qFm8GA4P6onS5qYIjlGh795juO5dOAPNXj2GYuL4We8uoDYK9x/ckrqkfKN8uUpYtXwPDA2NcOr0Ifz+xwypS8r3iluVxMD+36Bjh95QKvUAAM+eu2HnrnW4cetfiMI2rJ6IiDItRy6oZmRkhMGDB2PgwIFo0KAB9PT0NOvevHmDs2fPYuPGjbh79+7nV05ERERERJnWsWI57OzbBSZ6SjwPCkGP3UfgHhoudVmScKjZAOPG/AQAWL/xfwx2s8jd4znmL5yMhfPXo2OH3vD198au3eulLitfKmVTBoMGjEbbNt2gq6sAALi63cXO3evgfPeaxNUREVFBkumRu5MnT8bMmTPh5eWF48eP486dO/D19UVsbCyKFCmC6tWro1mzZujZsydu3bqFiRMn4tWrVzlcfs7iyF0iIiIiysvGN6yNpR1aQi6T4V+P1xiw7zjC4+KlLksSVsVKYMPawzA3L4Jz549j0f+mSV1SvtWty0BMmTQXAPDroqn49+JJaQvKR8qWscfgQd+ihWNHyOVyAIDzvWvYuWsdXN04CIqIiDIv26dl2L9/P+bPn49Hjx59tJ9SqcTXX38NtVqNzZs3Z6novIbhLhERERHlRXKZDpZ1bIWxDWoDALbcc8UEp/NILKTzdiqVeli9fDfs7avjxcvH+G7KIF5A7QuN/XY6+vUZBbVaje9/HIFHj+9JXVKeZm9fHUMGjkGzpm01bddv/otdu9fh6TNXCSsjIqL8Kkfn3DU2NkZ0dPSX1JcvMNwlIiIiorzGRE+JXX27okPFskhOFphx/gqWXXeWuixJ/fzj/9CubQ+Eh4dizPjeCAj0k7qkfE9HRwdzZ6+CY9N2iIgMw/jv+sPX97XUZeU51avVwZBBY9GwgSMAIDk5GVeunsHOPevh7v5M4uqIiCg/y5E5d1NdvXoVHTp0QEBAwGcXSEREREREWWNnboqjg3qhWvGiUKkTMPzQSRx7lr+nQvtSvXsOQ7u2PZCUlIh5CyYz2M0mQggsWjwNxZZao0rlmli8cCPGT+yPyKhwqUvLE+rUbowhg8aidq2GAICkpERc+NcJu/ZugLe3h8TVERFRYSL7nDvdvXsXt2/fRqVKlbTaa9WqhZMnOR8TEREREVF2a1CqBK59MxjViheFX2Q0Wm7ZW+iD3VoODTH22+kAgHUbfsdDl9sSV1SwxMfHYeYvY/D27RuUsimDX+etgUKhlLosSTVq2AJrVu3DH79vQ+1aDZGQoMYJp70YOqI9fvt9OoNdIiLKdZ8V7n7zzTfYsmULrl27hiZNmqBixYrYt28f7t69i/j4wnkBByIiIiKinNK3WiWcH9EfxY2N4OIfiCZ/7cQD/8L9KbriViUxZ9YKyOW6OHvuKA4d2S51SQVSWHgIfpo5GtHRkahZox6m/7BI6pJynY6ODhybtcdf64/itwUbULVKLcTHx+HQkb8xaFgbLFs5B/5v30hdJhERFVKfNS0DAMyfPx9qtRrnzp2DXC7HmTNnUL9+fTx48CA76yMiIiIiKtR+dmyEea2bAgBOPnfHkINOiFEnSFyVtPT09DF/7p8wNy+C5y8e4Y8Vs6UuqUB77e2OOfMn4n+LNqF1q67w9fPB1u0rpS4rx8lkcrRu1QWDBoxGGbsKAACVKgbHTuzGgYNbERYeInGFREREnxnuWltb4+eff8b//d//4cmTJ6hcuTL27t3LYJeIiIiIKJso5XKs79YOQ2pVAwCsvHkX089cRrLI8vWQC5zvJ/8K+4rVEBYWgtlzJ0Ct5qcHc9r9B7ewbMUc/PjDIgwbMg5+/t44c/aI1GXlCIVCgXZtemDggNGwKVkaABAVFYFDR/7G4aM7EBUVIXGFRERE//mscNfDwwPPnj1D37598c8//6Bdu3bYv38/SpUqhd9//z27ayQiIiIiKlQsDQ2wv383NCtji8SkZEz65wL+uusidVl5Qp9ew9G2TTfNBdQCg/ylLqnQOHXmEEqWtMWQQWPxw5RfERjojwcPb0ldVrZRKvXQuWNfDOj3f7CyKgEACA8Pxf6DW3DsxG6oVDESV0hERJSWDoAs/+u/f//+2Ldvn1Zb7dq14eTkhKNHj2L8+PHZVZ+kTExMEBkZCVNTU0RFRUldDhEREREVAvaWFjg6uBcqWFogIi4eA/cfx3n311KXlSfUqd0Iv/+2GXK5LlavWYDDR3dIXVKho6Ojg5k/L0Xrll0QHR2JCZMG4LW3u9RlfREDAyN07zoQffuMRBGLogCAoOAA7Nu/GSdP7UdcXKzEFRIRUWGU2Vzys8LdjNjZ2eGff/5BtWrVsmuTkmK4S0RERES5qXkZW+wf0B0WBvrwDItAz12H8SSI83oCQPHiNtiw5hDMzCxw5uwRLF7yk9QlFVoKhRJ//L4NNarXhb//G4z/rl++nH/W2NgUvXoMRe+ew2Bqag4A8Pd/gz37/8LpM4eRkKCWtkAiIirUsj3ctbW1hY+Pzyf7mZubIzw8HCVLloSfn1+mC86LGO4SERERUW4ZUac61nRpC4Vcjls+fui95yiCYlRSl5Un6OnpY/WKPahYoSqePXfDpKmDOc+uxExNLbBm1V6UsimDp09dMGXaMMTHx0ldVqaYmxdBn14j0KPbYBgZGQMAvH08sXvPepz/1wlJSYkSV0hERJT5XFKW2Q06Oztj48aNqF+/foZ9TE1N0adPH7i5uaFXr15Zq5iIiIiIqBDS0QEWtXXExu4doJDLsc/tKdpt289g9z3Tpi5AxQpVERoWjNnzeAG1vCAyMgw/zRyNiMgwVKnigBnTf4eOjo7UZX1UUUsrjBvzM/bs+BeDB34LIyNjuHs8x/wFkzHy/zrhzLmjDHaJiCjfyfTIXQsLC/z888/4+uuvkZCQgLt378LPzw9xcXGwsLBA1apVUa1aNdy9excLFizA6dOnc7j0nMeRu0RERESUkwwUutjWqxN6VrUHACy4dAPzL96QuKq8pW+fkRj37U9ITEzA9z+OgKvbXalLovfUqF4XS/+3DUqlEnv3b8aGv/LeBbaLF7fBwP7foGP73lAqlQCAZ8/dsGPXWty8dRFCZNtMhURERNkm26dlWLx4MebMmQMA6NixIxwdHVGmTBkYGBggODgYDx48wJkzZ/D48eNseQB5AcNdIiIiIsopJUyMcHhgT9S1sUZ8YiK+PXYGu12fSl1WnlKnduN3F1CTY+Wf83H02C6pS6J0tG7ZBbNm/AEAWLZyDk447ZW4ohS2pcpi0MDRaNu6G+RyXQCAq9td7Ni1FnfvXZe4OiIioo/L9nA3Pj4epUqVQlBQELZt24Zx48ZBpSrYHxVjuEtERESUeXq6cnSvXAHtKpRFtDoBAdExeBsdg7dR775GRyMwRoWkZI6Sq1m8GI4M7glbM1MEx6jQZ+8x3PD2lbqsPMXauhTWrzkIM1MLnDpzCL8vnSF1SfQRQwePw6gRk5CUlIifZ42B892rktVSrmwlDB74LVo07wiZLGUmQud717Bz1zqO/CYionwj28NdDw8PjB07FmfOnEFiYiKsra0RHBycXfXmSQx3iYiIiD6tulVRjKxbA4NrVkURQ4OP9k1OFghWxeJtdDTeRscgIFqFt1Gp38fAP+rd1+gYRMUXzCvVd7Ivh519usBYT4nnQSHovuswPMIipC4rT9HXN8CfK/aifPnKePrMFZOmDkZCQsE8HgqS6dN+Q4d2vaBSxeC7KQPh7vE8V/dfyb4Ghgwag6ZN2mjart+4gJ271+HZc7dcrYWIiOhLZTaX1M3sBpcuXYrjx4/j7t2U/3QOGTIE169fh5ubG+Li8sdVUYmIiIgoe5joKdGvemWMrFMDDUqV0LR7h0din9tTJCYno7ixEaxNjGFtbIjixkYobmQEXbkMVsaGsDI2RM1P7EOlTng34jcmzSjg94PgwBgVEpOTc/YBZ5MJjepgSfsWkMtk+NfjNQbsO47wOF4c7EPTpi5E+fKVNRdQY7CbP/yxfDasipVEndqN8NuCjRg3sS+CQwJzfL81qtfF0MFjUb9eMwBAcnIyLl85jV171ud6wExERJTbMj1yFwCqVq2K7t27Y8GCBfDw8ECZMmUghMCrV6/g4uKChw8fwsXFpUBcTA3gyF0iIiKiDzWyLYlRdWqgb/XKMFIqAADqxCSceP4KW++74bz7ayRncHEimY4OLA0NUMLYKCX4NTaCtYn299bv1pnp62W6ptTRwJoAWBP+Rr9r+290cKREo4HlMh0s79gaYxrUAgBsvueKiU7n800onZv69/0aY0b/iMTEBEydNhxuj+5JXRJlgbGxKf5cuRd2pcvjxcvHmDR1COLicmY6v7p1vsLQwWPhULMBACApKRHnL5zArr0b4ePjkSP7JCIiyi3ZPi3D+16+fIlGjRohJiYGNWvWRK1atTRL9erVYWpq+iW15xkMd4mIiIiAooYGGFKrGkbVqYHKxSw17c+CQrDlvht2uTxBUEz2hjeGCgWKvxvxW8LYCMVNjDShcHFjI5R4FwqnjgbOrNTRwAHR/03/kN6o4IDo7BsNbKqnxO5+XdGuQlkkJwv8fO4ylt/gvJ/pqVvnK/xv0SbI5XKsWDUPx07slrok+gwlrEthzar9sLCwxM1bFzFrzjgkZ+M/Mr5q3ApDBo5BlSoOAICEBDVOnTmMvfv+gv/bN9m2HyIiIinlaLhbWDDcJSIiosJKpqODNuXtMLJODXStVAFKXTkAIEadgAOPnmHLfTfc8vGTuEpARwcoamiomfqhhLExir8bAWz9QRCcldHAABAUo9IKfDWjgqO0Q+GIj0yrYGduimODe6GqVVGo1AkYfugkjj179aUPu0AqYV0K69ccgqmpOf45dRBLls2UuiT6AlUq18TypTugp6ePw0d3YPWaBV+0PZlMBsem7TFk0BiUL18ZABAXFwunf/Zj34HNCA4OyI6yiYiI8gyGu9mA4S4REdHH/V+9mvjZsRGc37yF0/NXOPXSEyGqWKnLoi9Q2swUw2tXx/Da1VHa/L9PYzm/8ceW+27Y/+hZvr3QmYFCVxP4fjgNhPX700RkcTRwbEKCZuoHzTQQ0dGIiIvHT46NUNzYCH6R0ei5+wge+DOASo++vgH+XLkP5ctVwtOnLpj0/RDOs1sAODZth3lzVgMA/ly7EIeO/J3lbcjlumjdsjMGDxyD0qXLAQBUqhgcPb4LBw9tQ1h4SLbWTERElFcw3M0GDHeJiIgyNqBGZfzdp4tWW1JyMm54+8LpuTtOPnfHi5AwiaqjrFDIZehaqQJG1qmBtuXLQCbTAQCEqmKxy/UJtt13g1tAsMRV5h4dHcDSwEAz4tf63YXhihsbvguBUy4SZ21inKnRwA/9A9Bz9xH4RkbnQvX50+yZy9GyRSeEhgbh23G9cuUiXJQ7UudQTk5Oxuy5E3D95oVM3U+hUKBDu14Y2H80SpQoBQCIiorAwcPbceTYTkRFReRk2URERJLL9nDXw8MDIoOLY3zMihUrsHr16izfLy9guEtERJS+dhXK4MignlDI5dhyzxX+UTHoUqk8HEpYafV7ERyKE8/d4fTsFW698UNSMv+nnJdUKWaJEXVqYIhDVRQzMtS0/+vxGlvvueHos5eIT0ySsMK8z0Chi+JG2qOA3w+F3UPDMeffa4hRJ0hdap41oP83+Pb/fkBCghpTpw3Ho8f3pS6JstmUSfPQrcsAxMaqMPmHoXjx4lGGffX09NGlUz/07/s1ihWzBgCEhYVg/6GtOH5iN1SqmNwqm4iISFLZHu46Ojp+ViFeXl7w9vb+rPtKjeEuERFRWvVtrHF2RH8YKRXY6/oUww+fROr/f0ubmaJTpXLoUqk8WpQprZmnFQBCVLE49cIDTs/dcfaVJ6IZdknCSKlAn2qVMLJODXxV2kbT7hsZhb8fPMK2B4/gGcYRcZQ76tdrisUL/4JMJsOylXNwwmmv1CVRDpDJ5PhtwQY0qN8MISGBGP9dfwQEas/ZbWhohG5dB6Ff75GwsEi5cGNQcAD27d8Ep3/2Iz4+TorSiYiIJMNpGbIBw10iIiJtlYsWwcWvB8LS0ABnXnqi154jSEhK/wroJnpKtC1fBl0qlUdH+3KwNDTQrItPTMRlLx/N9A0+Efw5m9Pq2VhjVJ0a6F+jCkz0lACAxKRknHzhjq333XDmlSdHVlOuKlnCFuvXHIKJiRmc/tmPP5b/InVJlIMMDY2wavkelC9XCZ6eLzBx8kDEqKJhYmKGXj2GolePoTA1NQcA+Pu/wZ59G3H67GEkJPAfgUREVDgx3M0GDHeJiIj+U8rUBJf/byBszUxx28cP7bcfgCqTf3TLZTpobGuDLpXKo2ul8qhYtIjW+of+AXB67g6n5+544B+Az5gJitJRxEAfgxyqYmTtGqhhXUzT/jIkDFvvu2HHw0cIiFZJWCEVVvr6hlizai/Kla2Ex08eYMoPQxniFQLFillj7eoDKGpphbv3ruPFy8fo0W0wDA2NAADe3h7YtWc9Llw8iaSkRImrJSIiklaeD3dnzZqFxMREuLi4wMXFBX5+fp++Uy5juEtERJSiiIE+Ln09EJWLWeJpYAhabtmD0NjP/4isvaUFulSugC6VyqOxbUnIZTLNOt/IKJx8F/Re9PTmnK9ZpKMDtChTGqPq1kCPKhWhp6sLAIhNSMChxy+w9b4brr5+I3GVVNjN+WUlWjh2QEhIIL4d3xshvIBaoVGxQlWsXLYTBgZGmjZ392fYuXs9rlw7g+Tk9D8NQkRE+ZdMJoOengJKpa7W1/TaPtUHABYvPijxI8odOR7ujho1ClOmTEHFihUBAC9fvsSKFSuwefPmTG+jdOnScHBwgIODA2xtbfHtt99+Tik5huEuERFRyhytp4f1RUPbkvCJiETzTXvwJjL7fi5aGhqgY8Wy6FKpAtpVKAPjd1MGAECMOgHn3b1w4pk7Tr30QFAMR5lmxMbUGMNqVcfw2tVRroi5pv2BXwC23HfDXreniIiLl65AoncGDRiNb77+HgkJakz5YRgeP3kgdUmUyxo1bIHZM5fBy+sVduxeh5u3LkpdEhFRvpdRgJqZIDUzIatSq00BPT1dzdf02lK+pnwvl8s//QAyKTY2HkaGfbJte3lZjoa78+fPx5QpU7B69WrcvHkTANC4cWNMmDABK1euxC+/pD9f1ujRo7Fx48as7k4yDHeJiKiwU8hlODywJ9pXLIsQVSxabt6DZ8GhObY/PV05mpexRedK5dGlUnnYmplq1iUnC9x646cZ1fs0KCTH6sgvdGUydLYvhxF1aqBDxbKaEdDhsXHY4/YUW++74aE/R0RS3tGgviN+W7ABMpkMfyz/BU7/7Je6JJKITCbjKF0iKvR0deWwtDRB0aKmsLQ0RdGi2kuRd+ssLIw1IWx6AapSqQtd3ewLUHNaXJwaanUi4uMT0nxNry31a4I6AbGxakycuEHqh5ArcjTcDQoKwsSJE7F3r/bVbAcMGIDVq1ejWLFi6d5v69atiIqKwqRJkyCEgL29PWbNmoVhw4ZltYRcwXCXiIgKMx0dYHuvzhhQswpi1Alot20fnH3f5moNtayt0KVyeXS2L4+6NtZa616FhGkuyHbd2xeJhSgkqGhpgZF1amCIQzVYm/z30eYrXj7Yes8Nh5++QGwC56ukvKVkydJY/+dBmJiY4YTTXixbOUfqkoiIiLKNXC5DkSImaQJaTXibTpu5uXGO1fN+gPqxwPTDPmqtdQmIj09891X7+6yEsu/3SeSUa5mWo+FuaGgoGjRogFevXmm1V6xYEXfu3IGFhUWG950yZQratWuH8PBwVKxYEUuWLMG+ffuyWkKuYLhLRESF2bKOrTChUR0kJCWh5+4jOPvKS9J6bEyN0ck+ZURvy7Kloa/Q1awLi43D6ZcecHrmjjOvPBEZr5aw0pxhoNBF76r2GFmnBpqVsdW0v42KwY6Hj7DtwSO8DAmTsEKijBkYGGHNyr0oW9Yejx7fx9Rpw3gBNSIiyrNkMhmKFDH+IKR97/sPQtrU0bWfIykpCaGh0QgOjtQsoSFRWrfDwqIRF6fOdKjKALVgyNFwd9WqVUhISMD333+v1b5kyRIYGBhgwoQJ6d6vdu3amDlzJsqVKwczMzO0bNkS3t7eWd19rmG4S0REhdVPjg0xv3UzAMCwg07Y6/ZM4oq0GSkVaFPODl0qV0An+3IoZmSoWZeQlIQrXm/g9PwVTj73gFd4hISVfrlaJawwqk5NDKxZBWb6egCApORknH7pia333fDPC49CNWqZ8h9dXQVm/bwUzR07IDgkEN+O64XQ0CCpyyIiokJCJpPBwsI4TRj7/ihayw/azM2NIHvvgr+ZlZycrAlqQ0JSgtmQ90LakA9C2+DgyP9v776jq67v/4E/787ee4fsRRJm2IStoLgnitYKdX21/bWODm1tq7Z1j6q0ighIxYGCTIGwCTMEkpBB9t573P37497c5GYR4CY34/k453PuvZ913xcuH5Lnfd3XGw0NrdBqr2s6LBrjhjzcffjhh1FcXIzk5GQAQEJCAnx9ffHll18afQrfPQA+efIkXn31VezevRtTp07FunXr8NRTT+HEiRPXOoRhwXCXiIjGo8cmT8THty4BAPx61wF8dGpkT3YkFAgw3ccTK8KCsCIsGBFuzkbbL1VUY2d2LnZkXsHZsgqMhp+dHSxkuG9iBB6Nj0G8l7thfV5dA75IuYQvU9JR1txixhES9U8oFCI4OBKT4hIQFzsdE2Mmw9LSGgqFAs/9dhUuX0419xCJiGiUEggEcHCw7rf1gXFVrb5vrZPNdQW1AFBXZxzG1tY2G4W1PUPb+voW9hMnkxnScPfgwYOD2k+r1WLhwoX9bvfy8sI333yDWbNmXesQhgXDXSIiGm9ujwjBV/fcApFQiNcPn8QrB4+be0jXLNjJAcvDgrA8LAiz/XwgFnX9MF/R3Ipd2boJ2Q7kFY64vrRz/H3wi8kxuCMyFJYSCQBArlJhW0YO1p+/hEMFRaMinKbxJyAgBJPiEhAfl4C42GmwsbEz2l5fX4sPPvorkg7vNtMIiYhGJ4FAAKFQAJFICKFQqL/VPRaJRN22CW7ocV/nv97HpjiHUCiAUCSEnZ2V8QRjTjYQia5v4rD6+u4Vtc1GVbWdVbY9WyGo1QxqyXyGNNw1JZlMBrlcbs4h9IvhLhERjSfzAnzx00N3QiYW479nU/Hkjp/NPaQb5mhpgWXBgVgRHoQlwYGGtgYA0K5U4kBuIXZk5WJXdi4qW9rMMkYPG2s8FBeFRybFIMS5a96CSxXV+Pz8RWy5eBl17R1mGRtRf7y9/buFudPh6GhcMd/S2ozU1NNIuZCM8ynJKCjM4VdOiYgGYG9vjbvumoUHV81HQkIYJBLRdYeY40FjY2uvMLZnn9ruFbV1dc3sQ0ujzqgJd0cyhrtERDRexHm6Yf8j98LOQoZtGdm4f+sOaMZYECMRCTHH3wcrwoKxIiwIAY72RttPl5Tjp6wr+CkzF2lVNUM6FpFQgGXBgXh0UgxuDg0yVBc3yxX436XL+PzcJZwrqxjSMRBdCzdXT8THTUe8PtB1c/M02t7e3oa09HM4f+EUUlKSkXMlAxoNf4kmIhqIRCLGsmWTsOqhRNxyyzRYWEiv6zxqtRoajRZqtUZ/e7XHmus45trPoRnEObufT6PR9Hrc3NzeO8Sta4FyhH37imgoDGm4+6c//WnA7X/961+v9ZQjEsNdIiIaD4KdHHDosQfgZmOFQ/lFuGXTd5CPg8qGaDcXrAjX9emd5mMcVBXUN+KnrFz8lHUFRwtLoDTRV/ImONrjkUkxeDguGl52XTMqHy8swfrzafguIwutCuUAZyAaHo4OzoiLm26ozvX29jfarlAokHE5BSkXTuF8SjIysy5CpeJ7l4hoMKZPD8NDDyXinnvnwMWlq41NenoRNm1MwrZtJ9HU1DZg6KkLVzX8VgTRGDak4e758+eNHkskEgQGBkKlUiE3NxeTJ0/udcwrr7yCv/zlLwPeH2kY7hIR0VjnaWuNQ489gEBHe6SUVWLRF1+jWa4w97CGnYeNNW4KnYBbwoKwMMjf0O8WABo75Nibk4+dWbnYcyUf9dfYIkEmFuG28BA8OjkGCyZ0BWTVrW3YeCEdX5y/hMyaOpO9FqLrYWNjh9iJUw1hbmBgqNF2tVqFzKxLuJCqC3PTM1Igl7NdCBHRYE2Y4IFVq+bjwVWJCAnxMqwvL6/Dlq8OY9OmQ7hwIc+MIySikWbY2zLY2triiy++wLZt27Bp06Ze20+dOoXp06cPeH+kYbhLRERjmb2FDAcfvQ8xHq64UluP+Z9tQVWrefrOjiSWEjEWTvDHirAg3BwaBA9ba8M2lVqDY0Ul+CkrFzuzcpFb19DveWLcXfDopIl4YGIEnKwsAQAajRY/5xZg/flL2JF1xWQVwUTXysLCChNjpiA+LgGT4qYjODiy10ziOVcykHIhGSkpybiYdhZtba1mGi0R0ejk5GSLe+6ZjQdXzcesWZGG9a2tHfj++5PYvCkJBw6kctIuIurTYHNJsamesLm5GS+//DJ++umnPsNdgUBw1ftEREQ0PCzEYmx74HbEeLiivLkFyzd+y2BXr12p0rdkyIVAAEzx8sAt4bo+vdHurpgf6If5gX54c1kiLlfV4qesK9iRlYvTJeWwlkpwb0w4Ho2PwdRurR4KG5qwIeUSNqSkobiRHxjT8JNIpIiKjNeFufEJCA+LgVgsMdqnoPAKLqTqeuZeuHgGTU31ZhotEdHoJZNJsHz5VKx6KBE33zwZUqnuWqtWq7F/fyo2bUzCDz8ko7WV334gItMwWbgLAA4ODrC3t+9zm0bT9UlU954w7A9DREQ0vERCATbfvQKz/X3Q0N6BFRu/RX59o7mHNSJptcCZ0gqcKa3AyweOIcDBHsvDJmBFWDDmBvggws0ZEW7O+N2c6ahubYOVRAJr/S9xCpUa2zOvYP35SziQVzjmJqijkU0kEiM8LMYwAVp0VDykUpnRPmXlxYbK3JTUU6irqzbTaImIRjeBQIBZsyLw0EOJuOvu2XB07Oqrn5KSi00bk7BlyxFUVPBDMyIyvesKd5955hmjxwKBAJ6ennjooYewZ8+ePo/p6OiAlZUV2traDNW6YrEYIpHoeoZARERE1+njW5bglvBgtCuVuP2rbbhUWWPuIY0aBQ2N+OhUCj46lQJ7CxmWBAVgRXgQloVMgKu1FQDgclUtPj9/EZtTM1DT1m7mEdN4IRQKETQhXBfmxicgNmYKLC2tjfapqa3C+ZSTuHDhFFJST6GiosRMoyUiGhvCwnywatV8PPDgfAQGuhvWFxdX46vNh7FpUxLS04vMOEIiGg+uK9z99a9/bfRYo9GguroaGzZswOuvv97nMf/5z3/w9ttv41e/+pWhWvfVV1/Fli1brmcIREREdB3+vmgOHpkUA5Vagwe/+QnHi0rNPaRRq7FDjm/Ss/BNehbEQiGm+3iiXaXC+bJKcw+NxokA/2BDZW5c7DTY2hp/g66xsR4p+jYLKReSUVySb6aREhGNHa6u9rjvvrlY9VAipk4NMaxvamrDd98ex8aNSTh8OI3fUiaiYXNd4e6ECROu+ZjNmzfD3d0dJ06cQGBgIA4ePIhjx47hrbfeup4hXLMXX3wRr7/+Ot59991e4TQREdF48NzMKfjdHN0kpr/avg8/ZeWaeURjh0qjYVBOQ87Lyw/xsdMRH68LdJ0cXYy2t7Q2I/XiGVy4oAtz8/KzGS4QEZmApaUMt946DaseSsTSpZMgFuu+gaxSqbFnz3ls2ngQ27efRkeHwswjJaLx6LrCXQsLCwgEArS3675q6Ofnh9tvvx0ZGRn4+eef+z3u7bffxgcffAAfHx+Ul5ejo2N4GohPmTIFa9asQWpq6rA8HxER0UizKjYS/1w6HwDw0r7D+PJCmnkHRERX5eLijkn6NgvxcQlwd/My2t7R0Y5L6ecMlbnZORnQaNRmGi0R0dgiFAoxf340HlyViDvvnAk7OyvDttOns7FpYxK+/vooqqs5bwERmdd1hbs//vgjvv/+e3z66aewt7fH6dOnoVAo4OLigt/85jf45JNP+j1WqVQiP3/4vhJmbW2NzZs34/HHH8cf//jHYXteIiKikeKmkAlYt3IZAODt42fw1vEzZh4REfXFwcEJ8bHTEReXgPi46fD1CTTarlQqkHH5As6nJONC6ilczkyFUqk002iJiMam6Gh/Qx9dH5+ub0jk51di86YkbNp0CNnZ/LYOEY0c1xXuTpo0ydDa4K677kJFRQXi4+Nx55134tVXX+033F2zZg3WrVt3/aO9Dh999BF27tyJAwcOXDXclUqlkMm6ZhG2tbUd6uERERENqRm+Xthyzy0Qi4TYeCEdL/182NxDIiI9a2tbxE2cpq/MnY4JgWFG29VqNbKz03Be32YhLf085PLh+eYbEdF44unphPvv1/XRjYvrakNZX9+Cb7Yew8aNSTh+PMOMIyQi6t91hbtWVlZobm4GACxZsgTff/89tFotkpOT4e/v3+9xM2bMQHR0NJ599llotVqEhobij3/8Ix5++OHrG/1V3HvvvZg0aRKmTp06qP1feukl/PnPfx6SsRAREQ23KDcX/PDgHbCSSrAzKxdrf9wLtt8kMh8LCyvERE/GpLgExMVNR0hwJEQikdE+V3IvIyUlGecvJOPSpbNobWsx02iJiMY2a2sL3HHHDDy4KhELF040XI8VCiV++ukMNm86hJ07z0ChUJl5pEREA7uucPfKlSu47bbbsG3bNixduhTvvPMOAMDNzQ1NTU39Hvfoo4/i17/+NXbt2oWGhgaEhITgX//61/WN/Cp8fHzw3nvvYcmSJZDL5YM65vXXX8fbb79teGxra4vSUn7dgoiIRh9/Bzv89NCdcLS0wImiUjzwzQ6oNBpzD4vGAYFAgAkTwiCTWgAAtNB/oqD/ZKH7BF+dd/vbx3DbY7vRsf3s03O90Qcb/e7T3zm6H3q15zHe7u0dgEn6nrkR4RMhFkvQXVFRHlIu6MLcC6mn0dRUDyIiGhoikRCLFsXhwVXzcfvtM2BtbWHYduxYBjZvSsLWrcdQX88P1oho9LiucPfVV1/FV199hXfeeQcHDhxAcnIyAF0Vb0pKSr/HxcfHY9asWXB3d0doaCgSExNRVFR0fSO/ismTJ8Pd3R3nzp0zrBOLxZg7dy6efvppyGQyaHr8kqtQKKBQcHZLIiIa3VytrbDrobvgbWeLtMpq3Lb5e7QrWXVCQy8ifCKeefKPiIiINfdQRqyKihKc10+AlpJ6CrW1VeYeEhHRmBcfH4SHHkrEfffPhYeHo2F9dnYpNm1MwubNh5CfX2nGERIRXT8BjIsRBs3d3R2enp5ITU01VChMnToVTU1NyMrK6vOYkydP4tVXX8Xu3bsxdepUrFu3Dk899RROnDhx3S+gPzY2Nr1aRKxfvx6ZmZn4xz/+gfT09Kuew9bWFk1NTbCzszO0oSAiIhrJbKQS/PzIvZjs7YGC+kbM/2wLyppZfUJDy8nJFWse+39YuuR2AEB7exvq6msA6Cp5AUAA/a1Af1DnesOK7vsI+tyna88+9ulxbPfzdh7Y7z4DjKFrU7d9eo6r60X1PB0amxpw4cIpQ3VuRUUJiIho6Pn6uuLBB+fhwVWJiIryM6yvrm7E1/87gk2bDuH06WwzjpCIaGCDzSWvO9w1BS8vL3zzzTeYNWvWsDxfUlISLly4YJgM7moY7hIR0WgiFYnw44N3YGGQP6pb2zD/sy3IqeVXvGnoSCQS3HnHI3jogSdgZWUNANi95zv85/O3Ua8Pd4mIiIaLnZ0V7rprFh5cNR+JiRMN6zs6FPjxx1PYtDEJe/eeh0qlNuMoiYgGZ7C55HW1ZTCVsrIyLFiwwJxDICIiGhOEAgE23HkzFgb5o1muwC2bvmOwS0NqRkIinvzVi/DxDgAAZFy+gA8++hsysy6Zd2BERDSuSCRiLF0aj1UPLcCtt06DhYXUsC0p6SI2bUzCd9+dQFNTmxlHSUQ0dMwa7gIY9GRnppCYmDhsz0VERDSc3lu+EHdGhUGuUuGuLT/gfBn7xtHQ8PWdgKd+9RKmT5sLAKitrcK6/76Jnw9sN5osjYiIaChNmxaKhx5KxL33zYWLi51hfXp6ETZtTMJXXx1GcXG1GUdIRDQ8zB7uEhER0Y350/yZWDs1DhqNFo98twtJ+UMzWSmNb9ZWNnj4oadwx20PQSyWQKFQ4Nvvv8Cmrz5Be3uruYdHRETjQGCgO1atSsSDq+YjNNTbsL6ioh5bvjqMjRuTcOFCnhlHSEQ0/BjuEhHRoFhKxIh0dYG9hRRHCkqg0mjMPSQC8KtpcfhT4kwAwP/t2o/vMjgxCJmWQCDATUvvxGO/+DWcHF0AAMdPHsS/P3kdZWX8IIGIiIaWo6MN7rlnNlY9lIhZsyIN61tbO7Bt20ls2piEAwdSoVbzZ1MiGp8Y7hIRkRGBAPC3t0eMuwtiPFwR465bgp0cIRTqpoDPqq7Fi/sOY2c2KyPM6e6oMLx700IAwKtJx7HuTKqZR0RjTVRkPJ556o8IC40GABQV5eHDj1/DmbNHzTwyIiIay6RSMZYvn4pVDyVi+fIpkEolAAC1Wo0DB3R9dLdtO4nW1g4zj5SIyPwY7hIRjWO2Mimi3YxD3Gg3F9hZyPrcv7KlFRKhEGGuztj24B1IyivCC3sP4UJF1TCPnBZO8Mf6O26GUCjAx6dT8LdDJ809JBpDXJzdsOaXv8PiRbcCAFpam/Hlxg+x7cfNUKmUZh4dERGNRQKBADNnRuChhxJx9z2z4ehoY9h24UIeNm1MwpYtR1BeXmfGURIRjTwCAJz5oh+2trZoamqCnZ0dmpubzT0cIqLrJhQIEOzkoAtw9UFutLsrAh3t+9xfrlLhcnUtLlXW4FJlNS5VVONSZTWqWttgJ5PihTnT8UzCZFhIxNBotNiUmo6XDxxDWXPLML+y8Wmylwd+fuQe2Mik+CYtEw99uxMaTmRFJiCRSHHPXY/iwfvXwtLSGhqNBrv3fofPPn8H9Q215h4eERGNUlKpGO7ujvD0dISHR/dbJ7h7OMDDwxH+/m7w8HA0HFNSUoOvNh/Cpk2HkJZWaMbRExGZx2BzSYa7A2C4S0SjkZOlhVGIG+Puiig3Z1hKJH3uX9zYhEuVNUjrFuJm19Zftaeuv4Md/rpwDu6bGAEAaFMo8faJM3jr+Bm0KljZN1TCXJyQ9Iv74GJthf25Bbht8zYo1GpzD4vGgFkzF+KJtS/C28sPAJCWfh4ffPQ3ZOekm3lkREQ0Ujk4WMPT06nPwLZzvYeHA5yd7QZ1vqamNnz33Qls2piEw4fToOEcD0Q0jjHcNQGGu0Q0kklEQoQ5OxmC3Gh3V8S4u8DbzrbP/dsUSqRV6Stx9UFuWlUN6ttvrFfZVG8P/HPpfMzy9wEAlDW14M9Jx/BlSjqrSU3M284Ghx57AP4OdjhbWoElX3yNFgbpdIP8/YLw1JO/x9TJswEA1TWVWPeff2H/wR1mHhkREZmDRCKGu7tDj8BWd+vh6QSPbsGtTNZ38UBfFAolKioaUF5eh4qKelSU16Oioh7l+tuKinpculSI9nb5EL46IqLRg+GuCTDcJaKRwt3GylCFG+Puiokergh3cYZULOpz/9y6Bl0lbrdq3Lz6xiENW2+PCMFrS+YhyMkBAHCxogov7D2MA3n8Gp0pOFpaIOkX9yHSzQXZNXWY/9kW1LS1m3tYNIpZW9vikYefwe0rH4RIJIZCocDWbz/D5i3r0NHRZu7hERGRidnbW3eFtAMEti4ug6uy7VRX12wIZ8vL61HZLbDVBbkNqKioR10df6cmIroWDHdNgOEuEQ03mViECFdnoyA3xt0VbjZWfe7f2CHvqsTVB7npVTVmq+aUikR4Ylocfj9vBhwtLQAAu7Lz8NK+w7hczX6d18tKIsHuh+/CDD9vlDY1Y95/t6Coscncw6JRSigU4uZld+GxR38NBwcnAMDRYz/j40/fQHlFiZlHR0RE10IsFvVRZasLaXu2RrC07HvC3L4olSrjqtpu1bXdg9vKygbI5fwWERHRUGC4awIMd4loKPna2/YKcUOcHSEWCXvtq9ZocKW2vmuCM/1S2DAyAz4nSwv8ft4MPDEtDhKRCCq1Bp+dv4hXk06gupUVgddCLBTiu/tvw02hE1DX1o4Fn/8PGQzK6TpFR03GM0/9AaEhUQCAgsIr+PDff8e58yfMPDIiGi9kMglmzAjHrFkRsLCQQqVS6xcN1Grdbec6tVpjtL33uu6Pb2y7Wj2yerva2Vn1Edg66KtsHQ2Vtq6ufU+O25+GhpZu4WxnlW1XdW3n/bq6ZmjZXouIyKwY7poAw10iMgVrqQRRbi7dQlzdfQd9ZWtPtW3tuFhRbRTiXq6uRbtSNcwjv3HBTg54bfFc3BYZCgBo6pDjn8dO4f2T59GhGn2vZ7gJBMDnt9+EB2Oj0KZQYtmX3yC5uMzcw6JRyMXFHb96/HdYuOAWAEBLSxO++PID/LD9K6jV/LdIRENHJBJi8uRgLFwYi8QFEzFrVsQ1VZAOp75D5c7H/YfO1xJKq/sInaVSMdy7BbYeHo6wsrq2KtvKyoYB2iLo11c2oKNDMYR/gkREZEoMd02A4S4RXQuBAJjg6GAU4ka7uyLY2bHP/ZVqNTKr64zbKlRWo7y5dZhHPvRm+/vgX0vnY7K3BwCgsKEJf9p/BF+nZYJFIf3717L5eHbGFKjUGtyxZRv25OSbe0g0ykilMtxz1y/wwH1rYGlpBY1Gg527tuKzL95FY2O9uYdHRGNUdLQ/FiyYiAULYzFvXjTs7a2NtpeX1yEp6RJqa5ogFosgFgshFosgFAn1j3WLyPBY2ONx9+3Xdoy4n/kKRqLGxlbjFgg9qms7g9vaWlbZEhGNRQx3TYDhLhH1x95Chmg3F8R46Cc4c3dFlJsLbGTSPvcva2rBpcrqrknOKquRWVMH5Qj7CuBQEgiA+2Mi8OrCOfBz0E3UcaakHL/bewgnikrNPLqR53ezp+Hvi+cCAB79bhc2X8ww84hotJkzezGeWPMiPD19AAAXL53FBx/9DVdyL5t5ZEQ01gQGumPhwlgsWBiLxMQYuLsbf7BdX9+CQ4cu4eCBVBw4kIrMTPP29xYKhQOGvz1D46uFyr3PIeznmL63q1RqfT/brsC2oqIB7e1ys/45ERGReTHcNQGGu0TUaVGQP+YG+CLG3RXR7q7wd+h7FuEOpQrpVcZ9cdMqa1DT1j7MIx65LMRiPDtjMp6fMx22+jB8W0Y2fv/zEeTWNZh3cCPEI5OisW7lMgDAb/ck4f2T58w8IhpNAgJC8MyTf8Ck+BkAgKqqcnzyn38i6dAuM4+MiMYKDw9HJCZOxMKFuurcgAB3o+1tbXIcPZqOgwdScfDgRaSk5EGjGT8faBMREZkCw10TYLhLRADw14Wz8cLchF7rCxuauipx9T1yc+rqodbwsjoYbtZWeDlxJh6bPBEioRAKlRofn0nBa4eTUd/eYe7hmc2t4cH4+t5bIRIK8c+jp/DH/UfNPSQaJWxt7fHIw89g5S33QyQSQ6GQ439b/4stX/8HHR38gImIrp+9vTXmz48xtFqIivIz2q5UqpCcnIWkgxdx4EAqTp3KgkLBft5EREQ3guGuCTDcJaK3bkrEMwmTAQCbU9NxqqQclyqqkVZVg8YOflXOFKLcXPD6knlYFhIIAKhra8drR5Lx8emUcdW2AtD1Jt710F2wkIix/vwlrP1xr7mHRKOAUCjEipvvxS8eeRb29rqvQh85uhcfr/snKirM+9VnIhqdLC1lmDUrwtBqYdKkCRCJunrVajQaXLiQb6jMPXo0Ha2t4/eDWSIioqHAcNcEGO4SjV9CgQAf3bIYj02eCAB45qf9+PTMBfMOaoxbFOSPfyyZjxgPVwBATm09/vDzEfxwOcfMIxseE91dceAX98HeQobtl3Nw79btrAKnq5oYMwXPPPVHBAdFAADy87Pxwb//jpQLyWYeGRGNJmKxCNOmhWLhwlgkLpiIGTPCIZNJjPbJzCwxhLmHDl1CXR1/PyIiIhpKDHdNgOEu0fgkEgrw+e034f6JkVBrNFjzw15sTE0397DGBaFAgNXx0fjzglnwtLUBABwtKMbzew/jXFmFmUc3dAId7XH4sQfgYWuNIwXFWLHxO3So+HVW6p+bqyd+teZ5JM6/GQDQ1NSA9V++j+07/geNRm3m0RHRSCcQCBAbG2hoszB3bhRsbCyN9ikursaBAxdx8EAqkpIuorS01kyjJSIiGp8Y7poAw12i8UcqEmHTXctxW2QolGo1Vn+3C9+mZ5l7WOOOtVSC386ahl/PnAIrqa5yaMvFDPxx/1EUN46t67G7jRWSfnE/gp0dkVpehYXr/4cmucLcw6IRSiazwL13P4b7730cFhaWUKvV+Gnn1/h8w/toaqo39/CIaAQLCfEyVOYmJk6Ei4vx5LA1NU04ePAikg6m4sCBVFy5Um6mkRIRERHAcNckGO4SjS+WEjG+vnclloUEQq5S4b6vt2Nndp65hzWuedvZ4C8LZmNVbBSEQgE6lCq8n3wO/zh6Cs1jIAC1k0mx/9F7Eefpjty6Bsz/7CtUtrSZe1g0Qs2buwy/WvM8PNy9AQCpF0/jg4/+htw8fgBFI5tAIEBc3AR0dChQUlKD5mZO8DccvL2dDZW5CxZMhK+vq9H25uY2HDmSjoMHdGHupUuF0Gr5qyEREdFIwXDXBBjuEo0fNlIJvn/gdswP9EOrQok7t2zDwbwicw+L9OI83fDPpfMxP1A3O3dVSxv+knQcn5+/OGr70srEIvy06i7MC/RFRXMr5n/2FfLqG809LBqBJgSG4ekn/4D4uOkAgMqqMnzy6T9x6MhuM4+MaGA2NpZ45JGFeOb/bkFIiJdhfXNzG0pL61BaWovS0lqU6W+7LxUVDdBoxtekmjfKyckWiYkxhurcsDAfo+1yuRInTlw29M09cyYHKhXbuBAREY1UDHdNgOEu0fhgbyHDjlV3IsHXC00dcty6+XucKCo197CoDyvCgvDGknkIdXECAGRU1eDFfYexJyffzCO7NiKhAP+751asjAhBY4cci9d/jQsVVeYeFo0wdrYO+MUjz2LF8nshEokgl3dgy9f/wf+2/hdyOWelp5HL398NTz+9Ao/9cjEcHHT905ub26BWawyPr0atVqOiosEoAC4p6R0Ct7aO338L1tYWmDs3CgsWxGLBwomIjQ2EUCg0bFer1Th79gqSDl7EgQOpOHEiE+3tcjOOmIiIiK4Fw10TYLhLNPa5WFli18N3Ic7THXVt7Vi+8bsxPXHXWCAWCvH4lFj8af4MuFhbAQD25xbghb2HcKmyxsyjG5yPb12CxyZPRIdShRWbvsORgmJzD4lGEKFQhFtX3ItHVz8LOzsHAMChw7vxybp/orKqzLyDIxrArFmRePa5W3H77QkQiUQAgKysErz/3g5s2HAAbW1yWFnJ4O3t3Gvx8naGt7cTvL2d4enpBLFYNKjnbGxs7Rb21vVZBVxV1TgmqoClUjESEsINlbnTp4dCIhEb7ZOWVmiozD18OA2Nja1mGi0RERHdKIa7JsBwl2hs87S1xu6H70akmwsqW1px85ffjJpwkHQV1y/OTcDT0+MhE4uh0WjxRcol/PngcVS0jNxfZl9dOBsvzk2AWqPBfV9vx4+ZV8w9JBpB4mKn45mn/oAJgWEAgNzcTHzw778j9eJpM4+MqG8SiRh33z0Lzz63ElOnhhjW//xzCt5950fs2XP+mvu4CoVCuLnZw8fHRR/+OnULgLsWOzurQZ1PqVShvLx+wDYQpaV1I66qVSgUYtKkIEPf3NmzI2FlJTPaJy+vwlCZm5R0EZWVDeYZLBEREZkcw10TYLhLNHb52dthz+q7EezsiJLGZizbsBXZtZxpfjQKcLDH3xfPwd3R4QCAFrkCbx0/g3dOnEWbUmnm0Rl7JmES3rppAQBg7Y97sf78JTOPiEYKd3dvPLHmecybuwwA0NhUj8/Xv4efdm2FRsOemDTyODvbYc2apXjyqeXw9nYGAHR0KLBpYxLee2870tOHvm+9jY2lUfhrXAWsWzw8HAxVxFdTX9/SZwDcvR1ETU3TkE46FhHhi4ULY7FgYSzmz4/u1caioqIeBw9eNFTnFhRUDtlYiIiIyLwY7poAw12isSnYyQF7Vt8DPwc75NU1YNmGb1DQwImsRrvpPp7417JEJPjqJu0pbWrGyweOYVNqOkbC5N/3x0Rgw13LAQB/2n8U/zh6yswjopFAJrPAA/etwb13PwaZzAJqtRo/7vgKX3z5AZqbeV2ikScy0g/PPnsLVj2UCEtLXRVpeXkd/v3RTnz66R7U1DSZeYTGRCIhPDwcB2wD4e3tDBsby0GdT6FQoqysbsA2EKWltZDLB/fhor+/m6Eyd8GCifD0dDLa3tDQgkOH0gzVuRkZnOyViIhovGC4awIMd4nGnkhXZ+xefTc8bW2QVV2LZV9+g9KmFnMPi0zorqgw/G3RHExwcgAAXCivxPN7D+FQvvn62i4NDsT3D9wGiUiE90+ew2/3JJltLDRyJM6/Gb96/Hm4uXkCAM6nJOPDf/8d+QXZZh4ZkTGBQIClSyfhuV+vxJIl8Yb1585dwbvv/IitW49BqVSZcYQ3zs7Oqp9ewLoA2MfHBW5u9kYTlg2ktrbJUPXbMwC2s7My9M0NCvI0Oq69XY5jxzJw8IAuzE1JyYVaPfr7BRMREdG1Y7hrAgx3icaWOE837HroLrhYW+FSRTVu+vIbVLW2mXtYNASkIhGemh6Pl+YmwMHSAgDwU+YVvPTzEWTV1A3rWKb7eGLv6ntgJZVgy8UMPPL9rhFRSUzmExQUjmee/CNiJ04FAFRUlODjT/+BI8f2mXlkRMasrGR4+OEF+L9nb0V4uA8AQK1W44cfTuG9d3/EsWMZZh7h8BKLRfD0dBqwDYS3t3OvvrgDUanUOHUqCwcPXMTBg6k4eTITCsXoDsqJiIjINBjumgDDXaKxY7qPJ3asuhMOlhY4U1KOFZu+Q317h7mHRUPM2coSf5w/A2unxEEsEkKl1mDd2VT87dAJ1LS1D/nzR7o64+Av7oOTlSX25OTjzi3boGQF1rhlZ+eIxx59DstvuhsikQgdHe346n/r8PU3n0GhGFkTOdH45uPjgqeeWo7H1yyFk5MtAKCxsRWf/XcfPvxwJ/u8XoWDg3U/VcC6W41GgyOH03DgQCqOHs1AS8vQ/39EREREow/DXRNguEs0NswL8MW2B26HjUyKY4UlWLn5ezTLFeYeFg2jUGdHvL5kHm4JDwYANHbI8caRZHx46jzkqqGZrMrX3haHH3sAPva2OFVchqUbvhlxE7zR8BCJxFh5y/145OFnYGtrDwA4kPQTPv3Pv1BdXWHm0RF1mTYtFM/9eiXuumsWxGLdJGRXrpThg/d/wvr1+xlCEhEREQ0jhrsmwHCXaPRbGhyIrffdCkuJBPtzC3DXlh8ZsI1j8wJ88c+l8xHv5Q4AyK9vxJ/2H8HWtCyTPo+zlSUO/eI+hLk643JVLRI/34I6VoqPS5PiZ+CZJ/+AgIAQAEDOlQx88NHfcCntnJlHRqQjFotwxx0z8OxzKzFjRrhh/cGDqXjv3e3YufMsNBp+44CIiIhouDHcNQGGu0Sj220RIdh01wpIxSL8lHkF93+zY8iqNGn0EAiABydG4tWFc+Bjr/u6cXJxGZ7fewjJxWU3fH5rqQT7Vt+DqT6eKGpowvzPtqCkif+HjDeeHj54Yu2LmDN7MQCgsbEe//38beza8y2DMhoRHB1t8PjjS/HU08vh6+sKAJDLlfjqq8N4/73tSE3NN/MIiYiIiMY3hrsmwHCXaPS6PyYCn91+E8QiIb5Jy8Tq73ZBxUCFurGUiPHrmVPw21nTYCOTAgC+TcvCH/YfQX5943WdUyIS4ocH7sDi4ADUtLYh8fP/DfsEbmReFhZWeOC+Nbj37l9AKpVBrVbhh+1f4YsvP0BLS5O5h0eEsDAf/N//3YKHVy+AtbVuwsnKynp8/O9d+OSTPaiqajDvAImIiIgIAMNdk2C4SzQ6/WJyDP69YgmEQgE2pKRh7Y97odHyUkd987CxxisLZuGR+GiIhELIVSp8dCoFrx9JRmPH4Ce5EgiAjXeuwD0x4WiRK7Bkw1acLWU/1fHA2soaK1YswsIF8+HvOxtSqR0A4OKlU3jnvVdRUHjFzCMkAhYtisNzv16Jm2+eYlh34UIe3nt3O7ZsOQyFQmXG0RERERFRTwx3TYDhLtHo83TCJLx90wIAwMenU/DcrgNgrkuDEePugjeWzMfi4AAAQE1rG/52+CTWnUkdVNX3OzcvwFPTJ0GhUuO2r77H/tzCIR4xmYOrqweCJoRj8qTJmDp1Kry9JkAssoPuRyodC0sFgkKq4ezaiqamVmRnlyErqwQ52WXIzi5Ftv62tZV9mGloWVhIsWrVfDz73EpERfkBADQaDXbsOI133/kRhw+nmXmERERERNQfhrsmwHCXaHR5Yc50/HXRHADAW8dO46Wfj5h5RDQaLQ0OxD+WzkOkmwsAILumDi/tO4wdWbn9HvP7eQn484LZ0Gi0WP3dTnydljlcw6UhIpFIEeAfjKCgcARNCEdIcARCQyJhaWnT5/5isRKtbZWoq78CB+dKhIZ6IiDADUKhsN/nKC2tRXZ2qSH0zcoqRXZ2KfLzK6Fif3C6AZ6eTnjyyZux9lc3wcVFV0ne3NyG9Z/vxwcf/ITc3HIzj5CIiIiIrobhrgkw3CUaPf66cDZemJsAAHg16Tj+duikmUdEo5lIKMCjk2LwSuIsuNtYAwAO5xfj+b2HkFJeabTv41Ni8dEtukmzntt1AP8+lTLs46Ub4+TkiqAJ4QgKCkfwhDAETQiHr28gRCJxr30FAi2srBSwsu5ATV0xzp8/hx0//YzDh8/1mihNJpMgKMgToaFeCA31RliYN0JCvREa6gU3N4d+x6NSqZGXV4GsrFLkdKv0zcoqRXk5ezhT/yZNCsJzv16Je++dA4lE9/4tKKjEB+/vwGef/YympjYzj5CIiIiIBovhrgkw3CUaHd66KRHPJEwGALyw9xDeOXHWzCOiscJWJsXvZk/DszMmw1IiAQBsupCOlw8cQ0lTM+6IDMVXd98CoVCAvx86ib8kHTfziGkgYrEEfr4T9NW4uhA3aEI4HB2d+95fooaNjRzWNnLY2MrR1FyOI4dPYPeeMzh48CIaG1uveywODtYICfFCWJgPQkO9DKFvaKi3YZKrvrS0tBvC3hx9u4fOxwzuxieRSIiVKxPw7HO3Ys6cKMP6I0fS8N6727F9+ymo1ZxQlIiIiGi0YbhrAgx3iUY2oUCAj25ZjMcmTwQAPPPTfnx65oJ5B0Vjkq+9LV5dOBsPxuqCk3alEhsvpGN1fDRkYjHWnbmAp3/ab+ZRUnd2do4IDuoKcIOCwuHvFwSJRNprX61WA6GoFc4uWtjaymFtq4CNjRwqdSsOH76EfXvPY+/eFGRllQzL2L29nRHaLewNDfNGaKg3AgPdIRaL+j2usrJeF/Tq2zt0hr65ueWcLGsMsrOzwi9/uQRPP7MCAQHuAACFQomvvz6G9979EefP999KhoiIiIhGPoa7JsBwl2jkEgkF+Pz2m3D/xEioNRqs+WEvNqamm3tYNMZN8nLHP5fOx9wAX8O679Oz8cA3O6DhzH1mIRSK4OsTYOiNGzQhHBMmhMHVxb3P/dvaWtDSWgFbOyVCQq3g6gZY2yggEun+/i5dKsC+vSnYu/c8jh5Nh1yuHM6XMyCJRIzAQHeEhvau+PXy6rv6GADUajUKCqqQnV2mb/PQ2d+3DCUlNdDyvTuqBAV54v/+7xY88uhC2NpaAQCqqxvx6Se78fHHu9m6g4iIiGiMYLhrAgx3iUYmqUiETXctx22RoVCq1Vj93S58m55l7mHROHJreDD+MG8G8uobsPq7XVCoOfnVcLC2tkVwtxA3KCgcAf7BkMn6bmNQWlqIgsIcaLT18PYRY+o0N0RFu0Ig6Nqnrq4Z+/alYN/e89i3LwVlZaMzGLO1tURIiJeh4jdE3+M3NNQbdnZW/R7X3i5HTk6Zvr9vmb7iVxf81tXxZ5+RZP78GDz365VYsWKqYaK+tLRCvPfudmzefAgdHQozj5CIiIiITInhrgkw3CUaeSzEYmy9byWWhQRCrlLhvq+3Y2d2nrmHRUQmJBAI4OXlZxTiBk0Ig4e7d5/7t7e3IjcvC7l5WcjLy4JGW4+ISDssWhyNOXOiYGHR1YpBrVYjOTnLUJ179uyVXhOhjTXu7g6GCd1CQ70Rom/3EBTkAalU0u9xNTVNhqA3x1DtW4orV8oZJA4TmUyC+++fi2efW4nY2EDD+p9+OoP33v0RBw6kmnF0RERERDSUGO6aAMNdopHFRirB9w/cjvmBfmhTKHHnlh9wIK/Q3MMiohtgaWndbXKzMAQFhSMwIBSWln1Xm1ZUlOiD3Ezk5mbiSl4m5PIGLFw4EUuXTsLiJfHw8XExOqawsMrQN/fAgdQbmghtLBGJhAgIcO/q7asPfsPCvOHr69rvcRqNBsXFNfpq367evtnZpSgsrB7zYflwcHNzwBNP3IRfPXET3N0dAQCtrR3Y8MUBvP/+DmRnl5p5hEREREQ01BjumgDDXaKRw95Chh2r7kSCrxeaOuRYufl7HC/iL7dEo4mHh09XkKtvr+Dt5dfnvnJ5B/ILcgwhbm5eJnLzstDa2gyRSIhp00KxbNlkLFkaj6lTQwxfUweAtjY5Dh9O0we655GZOTwToY0lVlYyBAd7Gip+O3v7hoX5wNHRpt/j5HIlrlwpR05OGSrK61Bd3YSqqgZUVzeiqqrRcFtb28wQuA+xsYF49rmVuP/+uZDJdFXVRUXV+PCDHfjvf/ehoYEfTBARERGNFwx3TYDhLtHI4GJliV0P34U4T3fUtbVj+cbvcK6swtzDIqJ+yGQWCAwIMQpxJ0wIg421bZ/7V1dXIDc/q1uIm4mSkkJoNF29jH19XbF0aTyWLJ2ERYti4eBgHDCO5InQxhoXFztDb19dta8uAA4O9jRqgTEQjUaD2tpmo8C3prpRHwQ39bqtq2sesxO/CYVCrFgxFc8+dysSEyca1p84cRnvvbsd339/Amo1g3AiIiKi8Ybhrgkw3CUyPw8ba+xZfTci3VxQ2dKKm7/8Bpcqa8w9LCLSs7KyxsToKQgKjkBQoK4q19vbHyKRqNe+CoUChUVXulXj6vrkNjXV99rX0lKGuXOjsGzZJCxZOgkREb5G2+vqmvHzzxcME6GVltYO2WukwREKhfD1dUFoqC7odXOzh5ubA1xc7eDm5gA3N3u4utrDxcXums+tUqlRW9vURxjc9bjrfsOoqHC1sbHEo48uwjP/twLBwV4AAKVShW++OY7339uO06ezzTxCIiIiIjInhrsmwHCXyLz87O2wZ/XdCHZ2REljM2768htk1YzOmeyJxhI3V0/MnJGImTMWIC52OiSS3tWadfU1+hC3qz9uUXEe1GpVv+eNivLD0qW6MHfu3N4ToZ06lY29e86Pm4nQxiqRSAhnZztD2Nvz1rXHYyenviu+B6JUqlBd3WhU/VvdZ1WwLhRuamobglfat4AAdzzzzAr84rHFsLe3BqD7sGLdp3vw0Uc7+UEFEREREQEYfC4pHsYxERENWpCTA/auvgd+DnbIq2vAsg3foKCh0dzDIhq3QkOiMHPGAsycsQAhwZFG20pKC5CZecnQUuFKbibq669eYe/oaINFi+IM7RZ6ToRWVFRt6Jt74EDqqKjGpKtTqzWoqmpAVVXDoPYXi0VwcekeBjvAtVs1sEuPgNje3hoSiRheXs7w8nIe1HPI5Up9GNxVBWxcGWwcDLe0tF/z6549OxLPPrcSt9023VDZfvlyMd5/bzs2bkxCW5v8ms9JRERERMRwl4hGnEhXZ+xefTc8bW2QXVOHpRu2orSpxdzDIhpXJBIpJsUnYOaMhZiRkAhXF3fDNrVajfSMFJw4eRAnTh5EcUn+oM7ZORGarjpXNxFa9/YN7e1yHDrEidDImEqlRkVFPSoqerfv6ItUKtZVAPdRFdxXGGxrawWZTAIfH5deHzD0p71d3qsKuKaPyeOqq5v0oe6tmDw52HD8nj3n8N6727FvX8qY7SVMRERERMODbRkGwLYMRMMvztMNux66Cy7WVrhUUY2bvvwGVa3D93VZovHM3t4RCdPnY+aMBZg6eRYsLa0N29rbW3H6zFGcTE5C8unDaGwcXNDm4+OCpUsnYemySVi4MBaOjsYToaWlFerD3BQcPZqOjg6FSV8T0dVYWEgHHQS7uTnAykp2Xc/T3i7Hxi+T8N5723H5crGJXwURERERjTVsy0BEo850H0/sWHUnHCwtcLa0Ass3fov69g5zD4toTPP1nYBZ+nYLUZHxEAqFhm3V1RU4cfIgjp88iAupp6BUXj14tbCQYt68aEN1bmSkn9F2ToRGI01HhwLFxdUoLq4e1P5WVrJ+wuCuyeO6t42oqmrEJx/vwrp1e1FXx2IBIiIiIjIthrtEffC2s0FtWwc6VP1P/EOmNTfAFz88cDtsZFIcKyzBbZu/R5OcFXxEpiYUihATPQkzZyzAjIRE+PoEGm3Pzkk3tFvIuZIxqHNGRPhi2TLdRGjz5kX3ORFaZ3XumTM5nAiNRrW2NjkKC6tQWFhl7qEQERERETHcJerOTibFa4vnYs3UODS0d+DrtEx8cT4N58oqzD20MW1pcCC23ncrLCUS7M8twF1bfkSbUmnuYRGNGVZW1pg6ZQ5mzliAhGnzYGfnYNimVCqQcuGULtBNPojq6sFf76Kj/fHW249h8eJ4o/XFxdXYtzcFe/ac40RoREREREREQ4g9dwfAnrvjy82hE/DhisXwsbfttS2tshpfpKThq9QM1LRd+wzZ1L/bIkKw6a4VkIpF+CnzCu7/ZgfkKrW5h0U06rm5emLmjETMnLEAcbHTIZF0VdM2NtUjOfkQTiQn4ey5Y2hru7bw1cXFDq+++iAeX7MUIpEICoUSBw9exL69Kdi79zz7iRIREREREd2gweaSDHcHwHB3fHCxssTbNy3AfRMjAABXauvx5I59AIBH4mNwe2QILCUSAIBSrcZPWbnYkJKGvVfyodbwn8+NuD8mAp/dfhPEIiG+ScvE6u92QcWvaxNdt9CQKMzU988NCY402lZcko/jJw7ixMkDSM+4AI3m2j9EkUjEePrp5fjTy/fBwUE3Mdo33xzDC89/gYKCSpO8BiIiIiIiImK4axIMd8e++2LC8fZNC+BibQW1RoN3T57Dq0nH0a7s6rVrbyHDPdHheCQ+GlN9PA3ry5pasDk1HRtS0pBdO7hZ46nLLybH4N8rlkAoFGBDShrW/rgXGi0vR0TXQiKRYlJ8AmbOWIgZCYlwdXE3bFOr1UjPSDH0zy0uyb+h57rllml4863HEBLiBQA4fz4Xv37uPzh6NP2GzktERERERES9Mdw1AYa7Y5ePnS0+WLEIy8OCAACXKqqx5se9V+2tG+3mgofjo/FgbCRcra0M648XluCLlDR8l56FFgV7xV7N0wmT8PZNCwAAH59OwXO7DoC5LtHg2Ns7ImH6fMycsQBTJ8+CpaW1YVt7eytOnzmKk8lJSD59GI2NN/7BU8++uhUV9fjD77/Ehg0HOTEaERERERHREGG4awIMd8cegQD45eRYvL54LuwsZJCrVHjtcDLePH4aSvXgQwqJSIjloUFYHR+NZSGBEAmFAIAWuQLfpmfhi5Q0nCgqHaqXMaq9MGc6/rpoDgDgreNn8NK+w2YeEdHI5+s7AbP07RaiIuMh1F9zAKC6ugInTh7E8ZMHcSH1FJRKhUmes2dfXblciXfe/gGvvfYNWlrYe5yIiIiIiGgoMdw1AYa7Y0uIsyM+vnUJ5gb4AgBOFpXiV9v34XJ17Q2d19PWGqtio/BIfDRCXJwM63Nq6vBFSho2paajvJkzxQPAqwtn48W5Cbr7Scfxt0MnzTwiopFJKBQhOire0D/X1yfQaHt2Trqh3ULOlQyTPjf76hIREREREZkfw10AL774Iu644w6Eh4ejvb0dJ06cwAsvvIDs7OxBHc9wd2wQCQV4bsYUvJw4E5YSCVoVSvxx/xF8fPqCyXu8zvTzxiPx0bgrKgw2Mt3M9GqNBnty8rEhJQ07s3OvqUJ4LHlzWSL+b8ZkAMCL+w7j7eNnzDwiopHFysoaU6fMwcyEREyfPg/2do6GbUqlAikXTukC3eSDqK4euIXM9WJfXSIiIiIiopGB4S6A3bt343//+x/OnDkDsViMv//974iJiUFkZCTa2tquejzD3dEv1sMVn65cikleHgCAn68U4Mkd+1DY0DSkz2sjleDOqDA8Eh+NWf4+hvXVrW3YnJqBDSlpSK+qGdIxjBRCgQAfrliEX06JBQA889N+fHrmgnkHRTRCuLl6YuaMRMycsQBxsdMhkUgN2xqb6pGcfAgnkpNw9twxtLUN3TcAevbVLS+vwx9+/yW+/DKJfXWJiIiIiIjMgOFuH1xcXFBdXY25c+fi6NGjV92f4e7oJROL8Id5M/DbWdMgFglR19aO3+05hI2pw199FursiNXx0VgVFwVPWxvD+jMl5fgiJQ1b0zLR2CEf9nENB5FQgM9uuwkPxEZCrdFgzY97sfECKwBpfAsNiTK0WwgJjjTaVlySj+MnDuLEyQNIz7gAjUY9pGPp2Ve3o0OBd97+Aa+//i376hIREREREZkRw90+BAUF4cqVK4iOjkZ6eu+ASSqVQiaTGR7b2tqitLSU4e4oM9PPG5/eugRhrs4AgO/Ss/DcrgOobLl6tfZQEgkFWBociEfio7E8LAgSkQgA0K5UYltGDr5IuYTDBcUwcacIs5GKRNh013LcFhkKpVqNR77bhW/Ss8w9LKJhJ5FIER+XoAt0ExLh6uph2KZWq5GekWLon1tckj9MYxLjmWdW4E8v3wd7e2sA7KtLREREREQ0kjDc7cOPP/4IR0dHzJ07t8/tr7zyCv785z/3Ws9wd3SwkUrwt0Vz8eR0/deKm1vw7M4D+OFyjplH1purtRUemBiBR+JjEOXuYlifX9+IL1PSsPFCOooah7Z1xFCyEIux9b6VWBYSCLlKhfu+3o6d2XnmHhbdIEcHZ8ybuxQR4bFQKBWQyzvQ0dGuu5W3Q97RgY6ONnTIOyCXt6OjQ38r74C8ox0dHe2GbWP9q/729o5ImD4fMxMSMXXKbFhaWhu2tbe34vSZoziZnITk04fR2Fg/rGNjX10iIiIiIqKRj+FuDx9++CGWL1+O2bNno7S0tM99WLk7ei0NDsRHtyyGn4MdAGD9+Ut4Ye8hNIyCdgeTvTzwyKRo3BcTAXsL3ftPo9HiQF4hvkxJww+ZOZCrhvar2aZkI5Xg+wdux/xAP7QplLhzyw84kFdo7mHRdbKxscOcWYuRmHgzJsXNgEhfcX6jFAqFIfjt6GjrERTrwmC5vAPtPbYZjmlv1wXK3YNluS5AlutDZLVaZZKxDpav7wTM0rdbiIqMh1AoNGyrrq7AiZMHcfzkQVxIPQWlUjGsYwN0fXXffueXWLQoDgD76hIREREREY1kDHe7ef/993Hbbbdh7ty5KCgoGPRx7Lk78jlZWuDNZYlYFRcFQFf5+sT2vTiYV2TmkV07S4kYt4WHYPWkaCyY4G9YX9/egf9duowvzqchpXxkf13a3kKGHavuRIKvF5o65Fi5+XscL+r7wxQauSwsrDBzRiIWJK7AtCmzjSb5upx5EcmnDkGtUcNCZgGZzFJ3a2HZ9dhCt8hkFt3W6W67B55DTaVSdlUNGwLirorizmC4o6N3lbHxtr5DZKVSgbDQaEP/XF+fQKPnz85JN7RbyLmSMWyvuyf21SUiIiIiIhp9GO7qffDBB7j99tsxf/58XLly5ZqOZbg7st0VFYZ3b14INxsraDRafHDqHF45cBxtSqW5h3bDAhzs8XB8FB6OizZUIwPAxYoqfJGShi0XL6O2bWSFMs5Wltj10F2I93JHXVs7lm/8DufKKsw9LBokiUSK6dPmYsH85ZiRkAgLC0vDtrz8LBw8tAtJSTtRVl58Q88jlcpgIbOEzMJCdyuz6AqCLSwH2GbVO0SWWej27dymD5ZNVV18rZRKBVIunNIFuskHUV1t3vc/++oSERERERGNXgx3AXz00Ud44IEHsHLlSmRldU3k1NjYiI6Ojqsez3B3ZPK0tcYHyxfh1ogQAEBGVQ3W/LgXp0vKzTwy0xMKBEgM9MMjk6KxMjwEFhIxAEChUmNH1hV8cT4NP+cWQGPmWdg8bKyxZ/XdiHRzQWVLK27+8htcqqwx65jo6kQiMSbFz8CCxJsxe9Zi2FjbGraVlhbiQNJOJB3ehYKCkde3eiBisaQrLDaqKO5RadwZJsssjELl7mFz920ymSUs9es6q5kbm+qRnHwIJ5KTcPbcMbS1tZr51euwry4REREREdHoxnAXgLafwOuRRx7Bhg0brno8w92R59FJMfjHknlwsLSAUq3GP46ewhtHTkGhHj09aa+Xo6UF7o0JxyPx0Zjk5WFYX9LYjE2p6diQkobcuoZhH5evvS32rL4HIc6OKGlsxk1ffoOsmrphHwcNjlAoREz0ZCxIXIF5c5bC3t7RsK2qqhxJh3fh4KFdyM5OM+MoRz6RSAyZTIaOjpE1ORz76hIREREREY0NDHdNgOHuyDHB0R4f37oUiRP8AABnSsqx9se9SKsan9WhsR6ueDg+Gg9MjISzVdfX548UFGPD+TR8l5E9LO0pgpwcsGf1PfB3sEN+fSOWfrEVBQ2NQ/68dO0iwicicf5yzJ93E1xd3A3r6+trcejIbhxM2oX0jPP9fihGIxv76hIREREREY0tDHdNgOGu+QkFAvzfjMn4c+IsWEklaFMo8crBY/gg+bzZWxGMBFKRCLeEBWH1pBgsCQqAUCgAADTLFdialokvzl/CqSFqVxHp6ozdq++Gp60NsmvqsHTDVpQ2tQzJc9H1mRAYhgWJNyNx/nJ4efoa1re0NOHI0X04eGgnUi6cgkYz9ivfxyr21SUiIiIiIhqbGO6aAMNd84p2c8GnK5diqo8nAOBgXiGe3L4PefWsDO2Lj50tVsVFYnV8DIKcHAzrM6tr8UVKGjanpqOypc0kzxXn4YZdD98FF2srXKqoxk1ffoOqVtOcm26Mj3cAEuffjAWJyxHgH2xY397ehhMnD+BA0k6cPXcMyjEw8eB4x766REREREREYxfDXRNguGseUpEIL86djhfmTIdEJEJDewee33cIX5xnD9DBEAiA2X4+eGRSDO6MDIWVVAIAUKk12J2Thy/OX8LunHyorrP/5nQfT+xYdSccLC1wtrQCKzZ+i7r2q09QOJpZW1tgxYqp0Gq1SEsrQnZ2KVSqkVPt6ubqqQt059+M0NBow3qFQoFTpw/jYNJOJJ8+hI4Ofj1/LGBfXSIiIiIiorGP4a4JMNwdftN8PLFu5VJEurkAALZfzsEzO/ejvHlkzEA/2tjKpLg7OgyPxMcgwdfLsL6ypRWbUjPwZUoaLlfXDvp8cwN88cMDt8NGJsWxwhLctvl7NMkVQzH0ESEmJgBr1y7DqocSYWdnZVivVKqQlVWK9PQipKcVIi2tEOnpRcjNrRi2cM3RwRnz5i3DgvnLERM92bBerVbh7LkTSDq0E8eO70drG1tljBXsq0tERERERDR+MNw1AYa7w8dKIsFfFs7CM9MnQygUoLKlFc/tPIDvMrLNPbQxI9zFCavjo7EqLgruNtaG9aeKy/BFShq+ScscMKhdEhyAb+5bCUuJBPtzC3DXlh+HZdK24WZhIcU998zG2l/dhBkzwg3rr1wpQ3V1E6Kj/WBra9Xnse3tcmRmliAtrQgZ6UWG0LewsMokE5XZ2Nhh7uwlWJC4HHGx0yESiQAAGo0GFy+dwcFDu3Dk6F40Ntbf8HPRyMG+ukREREREROMPw10TYLg7PBZM8MPHty5FoKM9AGDjhXT8bk/SmP+qv7mIhUIsCwnEI/HRuDk0CGKREADQplDi+4xsfJGShqOFxeieRa4MD8bmu2+BVCzCzqxc3Ld1O+QjqC2BKURE+GLt2mV46OEFcHS0AaCr0P3hh2R8+sluJCVdMgS0vr6uiI72Q1SUH6Ki/REV5YfISD9YWcn6PHdLSzsyMoqRrg97O0Pf0tKrV01bWFhh9syFSJx/M6ZOmQ2JRGrYlnH5Ag4m7cLhI7tRU1tlgj8FGmnYV5eIiIiIiGh8YrhrAgx3h5aDhQz/WDofj06KAQAUNjThqR37sO9KgXkHNo6421jhgYmReHRSDMJdnQ3rc+sa8GVKGjZeSMdsf298fvvNEIuE+DYtCw9/t/O6+/WONFKpGHfeOQtrf7UMc+d29arNz6/Ef9btwfr1+1FZ2TCocwmFQgQEuCFaH/Z2hr7h4T6QySR9HtPQ0KJv7VBkFPo2NLRj+rS5WDB/ORKmz4eFhaXhmNzcTBw8tBNJh3ahvKLkhl4/jVzsq0tERERERDS+Mdw1AYa7Q+e2iBC8t3whPG1toNFo8fGZFPxp/1G0KMbe1/xHi2k+nngkPhr3RIfDzkJXgarR6C4PQqEAX6akYe32vVBrRv8lIyTEC2vWLMPqRxbCxcUOAKBSqbFjx2ms+3QP9u1LMUkbBQAQiYQIDvbqVekbGuoNsVhk2E+jAerrrFBdaYvqShtoNF3bamrLcODgT9i95wcUFuWaZFw0MrGvLhEREREREQEMd02C4a7pudtY4b2bF+GOqFAAQFZ1Ldb8uBcni8vMPDLqZCWR4I7IEKyOj8G8QF8AwCenL+DZXfthorzTLCQSMW67LQFr1i7DwoWxhvXFxdX473/24bPP9qGsrG7YxiOVihEW5otFCxdi6pQFcHeLglBgYdgukynh6tEMN/dm2NjKIRAAZWW1vSp9MzKK0NzM0G+066uv7tatx/DiC+yrS0RERERENB4x3DUBhrum9VBcFN5clghHSwuo1Br869gpvHYkecz1bh1Lgpwc4Gtvi0P5xeYeynULDHTH448vxaO/WAR3d0cAugnIdu06h3Wf7sbu3eegVg/v19wjImKxYP5yzJ93E1yc3Qzr6+prcOz4PhQUnoeNbSuionwNlb4BAe79nq+wsEoX9HZr7XD5cgna2+XD8XLoBvXsq3vu3BX8+rn/4NixDDOPjIiIiIiIiMyF4a4JMNw1jQAHe3x0y2IsDg4AAJwvq8DaH/citaLavAOjMUskEmLFimlY+6tlWLIkHkKhbtK4srJafP7Zz/jvf/ehqGh4339BE8KQOH85FsxfDk9PH8P65uZGHDm2DweTfsKF1DPQaPr+sMPGxhKRkb6IjvZHdLQ/IqP8EB3tBy8v5z7312g0yMurQFpakVHom5VVAoVCNSSvka5Nf311N2w4aLK2IERERERERDQ6Mdw1AYa7N0YoEODJ6fH468I5sJZK0K5U4tWkE3j35Nkx0beVRh5fX1f88pdL8IvHFsPbuyv03Lv3PNZ9ugc7dpyGahgrxX28A7AgcTkWJC6Hv1+QYX17eyuOHT+Ag4d24uy541Cprr/XtKOjja6Xb5Rft9DXH66u9n3ur1KpkZNT1qvSNyenbNgrmMervvrqvv3WD3jjDfbVJSIiIiIiIh2GuybAcPf6Rbg649OVS5Hgq/ua8ZGCYjyxfR9yauvNPDIaa4RCIW66aTLWrF2Gm2+eDJFINxFZVVUD1n++H//5z17k5VUM23jc3byQOP9mJM6/GaEhUYb1CoUcyacO4eChXUg+dQhyeceQjsPV1R7R+pYO3St9HRxs+txfLlciK6ukV6Vvfn4lNBqGvqbAvrpEREREREQ0WAx3TYDh7rWTiIT43expeGluAmRiMZo65Hjp5yP477nUUT0ZF408np5OeOyxxXjsl0vg79/Vt/bgwVSs+3QPtm1LhlI5PO0HHB1dMH/uMixIXI7oqEmG9SqVEmfPn8DBpJ04fmI/2tpah2U8A/HycuoV+kZF+cHGxrLP/dva5Lh8udio0vfy5RKUl9dBLr/+iuPxhn11iYiIiIiI6Fow3DUBhrvXZrKXB9atXIoYD1cAwM6sXDz9088obWox88horBAIBFi8OA5r1i7DrbdOh1isq9KtrW3Chi8OYN26vcjOLh2Wsdja2mPO7MVYmLgCsROnGSqGNRoNLqSeRtKhnThy7Gc0NY38anWBQAA/P1dD6Ns5iVtkpC8sLKT9HtfQ0ILKyoaupaLe+HFlAyr068ZrEMy+ukRERERERHQ9GO6aAMPdwbGUiPFy4iw8N2MyREIhqlvb8JtdB/F1Wqa5h0ZjhJubAx59dBF++fgSBAV5GtYfPZqOdZ/uwbffHh+W8NDS0hqzZi7Egvk3Y+qU2RCLJYZt6RkpSDq0C4eO7EFtbdWQj2U4CIVCTJjg3iv0DQ31hkwmufoJumlsbDUKe6t6hL/dl44OxRC9ouHDvrpERERERER0IxjumgDD3aubF+CLj29dgmBnRwDAlosZ+H+7k1DTxvCCblxi4kSsWbsMt9+eAKlUFyY2NLRg45dJ+PTTPcjIKDLp84nFEjg6OsPZyRXOTm5wcnKBk5MrnJ1c4ebmhbjYaZDJLAz7X8m9jANJO3Ho8G5UVJSYdCwjnb29NTw8HOHu7mBYOh+79Vh3vUFwfxXB3QPhkRYEs68uERERERERmQLDXRNguNs/O5kUry+Zh8enxAIAShqb8fRPP2NXdp6ZR0ajnbOzHVavXoDH1yxFWJiPYX1ycibWfboHX399DO3t8ms6p6WltS6wdXaFk5MrnBx1952dXOHo5GIIc+3tHa96rqLifBxM+glJh3ehqIjv98Gwt7fuFQAblh6PB2oD0ZemprZBVwRf6/vmWrGvLhEREREREZkKw10TYLjbtxVhQfhgxSJ429kCAD49cwG///kImuUjq4KORpfZsyOxZu0y3H33bEOlZ3NzGzZvOoRPP92D1NR8o/0FAgHs7R3h7OQKJyc3XXDrqAtqnZzduu47ucLS0mrQ41CplKirq0FtXTXq9Evn/cuZF3El97JJXzcZs7Oz6h0A60PhnhXB1xsED6Yi+FqCYPbVJSIiIiIiIlNjuGsCDHeNuVpb4Z2bFuCemHAAQE5NHX61fR+OFo6vr6OT6Tg4WOOhhxZgzdpliIryAwBoNAKcO1uMbd9fwNmzxbCytDdU3HaGtbrqW2eIROJBP1drawvq6vVhbW016ur1AW5tlT681T1ubm5gIDdK2NlZ9dkWorM1RPfHlpayazp3c3NnRXBDt4rgesPjysp6NDW14+mnl7OvLhEREREREZkcw10TYLjb5YGJEXjrpgVwtrKESq3BOyfO4K+HTqJDpTL30GiUsLa2NQS006ZNxJLFMxAVFQqNRgaFXIyODiFaWwCRyOLqJ9PTaDRoaKxDvT6Yra2rQl1djaHaVhfi6gLdjg6GbeOZra1lH20hHOHh0b1HsO7xtQbBAPvqEhEREZHpiCQSqJVDP2E0EY1sg80lB1/2RuOSr70tPlyxGDeFTgAApJZXYc2Pe5FSzgCDAKFQCHt7J0M/W2cnt249bLuqbJ2dXI0mIutUUWb8WCTS3SoUCtTVVemqa2uNWyN0b5dQ31AHtZofMNDVNTe3o7m5HVeulF91384g2N3dUR8Id913694mws0eFy8W4IXn17OvLhERERFdE7FUChd/X7gF+sMt0B/ugf5wDfSHW4AfJDIZCi+mI/PYSWQeO4nSy9n8diER9YuVuwMYz5W7AgGwdmoc/r5oLmxlUshVKvzt0Em8dfwMVBqNuYdHw0AgEMDHJxCB/sFwcnLR9bV1coVTt962Dg7OEHUmsoMgEqshk6ogEitRXlGOlJR0pKVloa6+BnV1VYZ2Cc3NjUP4yoiIiIiIiIaHtYO9IcB1CwyA2wTdfSdvLwiFwkGdo7m2DpnHkpF57CSyTpxGe1PTEI+aRgKZtRWCp05CSMJUeIYEQdHegY6WFrQ3t6CjpdX4fnOL7nG3+/LWNn4oMMqxLYMJjNdwN9TZEZ+sXIrZ/j4AgBNFpVj7415k1dSZeWQ0lBwdnBEePhER4bGICJ+I8LAY2NjYXfU4tVqNhoZaXUVtfQ3qaqvR1FyHCRMcMGduECIiXSGVqSCVqpGdXYRPP9mNjRuTUF/fMgyvioiIiIiIaGgJRSI4enkaKnDdui3Wjg79Htfe1IzK/AJU5RcaLWqlEqEzpiF89gyEJEyBhbW14RiNWo2iSxm4fOwkMo+eROnlLAZ4Y4RILIbfxCiEJkxF6Ixp8I2OgEh8/V+412g0kLe0or2lewDcyoB4FGG4awLjLdwVC4X4zawp+OO8mbCQiNEiV+AP+4/ikzMp4L/lsUUms0BIcBQiIiYiImwiIsInwsPDp9d+HR3tyM/PRnVNhb6nbTXq9H1sa2t1jxsb66DRV3PHxARg7dplWPVQIuzsrAAAcrkS3357HOs+3YOjR9OH9XUSEREREY0UUksLWNjYwMLGWr/o7guFQjTV1KKpugZN1TVQtHeYe6jUD5mVFVwD/AzVt24BultXf1+IpdJ+j6srLUdVfmGPILcALbX1V31OkViMgPiJiJg9A+FzZsAzJMhoe3NtHbKOn9JX9Z5CWyOrekcTj5AghCZMRUjCFARNiYfMyspoe3VBEbKTz6AwNQ0isRgWtvpriK0NLG1sut12XVMsbW0GfD9eC41GA3lrGzr0AXF7UzMD4mHEcNcExlO462Ahw75H7kGcpzsAYG9OPp7a8TOKxul/DK6u9hCLRWhqakNr6+j+4UogEMDPdwIiImIRER6L8LAYBE0Ig0hk/AmgRqNBUVEuLmdexOXMVFzOvIj8gpyr9rS1sJDinntmY+2vbsKMGeGG9Tk5ZVj36R588cUB1NaOz/cREREREY1+QrEIljY2kNlYd7u17hbU2sDCxqrHY+MAV2ZtNegKvPbmFl3QW1WDphrdbaM++G2qqkZTdS0aq2ugksuH+JWPX/burroWCj2qcB3c3fo9RtkhR1VBYa8q3OrCIig7TPd35eDuhvA5M1jVO0o5uLshZMZUhCZMRfD0KbBzcTba3lxbh5xTZ5Fz8gxyTp1FfXnFdT2PWCo1BL6dIbCF/hpmYWsDS1sb3fXJaJ/hCYg7mluMqonbOwNhBsS9MNw1gfEU7gLAtgduR4KvF363JwmbUsfX5EBWVjLMmxeNpUsnYfGSeERE+Bq2aTQaNDe3o6mpDU1NutvOx81NbUaPe25v6rFdoRj6yb+cnFx11bgRuhYLYaExsLa26bVfbW2VUZCblX0JbW2tg36eiAhfrF27DA89vACOjrrzK5UqbNuWjHWf7kZS0qVxefElIiIiopFBIBBAamXZI3DtCl47g9qeQayFUYhrA4mFzGRj0qjV6GhtRUdzq/62BVpoYefsDDs3V8isLAd9rramJl0AXF2DpupaNFVXo7HzcWcwXF0LlUJhsvGPJSKJBC5+PkbhrfuEALgG+BkFpj011dT2CnCr8gvQUF457L//sKp35LOwtUHw1MkInTEVIdOnwC3Q32i7vK0deedSkJ18BjnJZ1CRkzdifo/uKyDuHgpb2pgnIG5vbsHbdz08Yv6chhLDXRMYb+Guh401NFotqlrbzD2UIScQCDBxYoAhzJ09OxIymcSwXaPRQKvVXtNkYYMhlyv7CH/b0dzchuam9l5hcH+BcUtLBzQaDSwsLBEaEoXwsIn6ytyJcHfz6vW87e1tyM5Jw+XMS/owNxXV1df+CaBUKsadd87C2l8tw9y50Yb1+fmV+M+6PVi/fj8qKxtu5I+IiIiIiAgiiUQfIvQMXrtXyXbf3rtiVmZtNegJqwZD3tbeVXmm/yqy4b4+qDUEty0tvfdpaYWivX3A55BZW8HezRW2Ls6wd3OBnasr7NxcYO/qAltXZ9i7usLO1QVSS4tBj7u1obGr6remtlsAXI3G6ho0V+taQqhVQ1+IYg5W9nZ9VuE6+3hB2M/ve2qVCrXFpbpK3LwCfUuFQlQXFKG9aeRmAw7ubgibnYDw2TMQmjAVFjY9qnrTMnQTsx09iZKMzHERjg03kUSCgLgYfauFqfCNCjd6n3X+PeQkn9W1W7hwacz+2wN0AbGlbWflsA0sDeHvIANiO1uIJRKjc3a0tuIPCYvM9IqGF8NdExhv4e5fXvkATo4uqKgoRVl5MSoqSlBWXozy8mLU1FYa+qqOVm5uDliyJB6Ll8Rj8eI4eHg4Gm0vKKjEvr0p2LcvBQcOpKKxsRWWljLY2VnCzs4KdnZWsLXtum9nZwlbWyvDdts+t+se29gM/hP4/mi1QFurFE2NFmhuskBDvQztbRbQ/TPuvp8WcnkNGptKUF1TgNLyKygpyUNTU2sf1cTtaG+/+leEQkK8sGbNMqx+ZCFcXHSTrKlUauzYcRrrPt2DfftS+IMBEREREV2Vo6cH/GOj4RsVARsnR0NQa2h5YG1l0movAFArVfqv+LZA3tKmv9VNMiRvbUN7cwvkra3d+kf2DGfbIG9thUatNtmYbpSFrQ3sXV1g17m4dd237/ZYIht81XFLXT2aqmsMgW9jdXW3ymB9NXBtLTSqkfPn0EkgFMJJP6FZz8XGybHf49qbW/qswq0tLh31gZtILEZAXIyhhYNXaLDR9ubaOmSdOIXMY8nIPnEKrQ2NZhrp6CYQCOAZGmwIcydMjuv14UtlXgFyks8gO/kMcs+cR0fL4L8xS4BYJtO1wtEHxBKZFHnnLph7WMOC4a4JjLdwd+tXh+Hq6tHnNqVSgcqqMpRXlKC8vER/qwt+yytK0Nw88v4jkErFmD07EkuWxGPJ0kmIi5tgtL2lpR1JSZfw874U7N17Hjk5ZUM2FpFICBsby27hr2UfYXHXY1s7S9jbOcPG2gtSiRugdYJSYQuNpvcny1KZEnZ2HbC174CdXQds7DogFg/+n7VKpe6nmrgdzU1tCAh0x8KFsYb9i4ur8d//7MNnn+1DWVmdSf58iEYykVgMJx8vuPr7wcXfB65+vnD194OznzfkrW0oupSBokvpKLqUgYoreSPqFz8iIiJzEkul8IkMR0BsNPz1i72b6zWdo6/q1z4rZnvs0xXgto7r3rSWdnawc+1WBezqAjtXZ10I7OZqCIZ7Vsb1R6PRoLW+oXc/4KoaNFV39QNuqa0bkp+JpJaWcAv00we3XdW4Ln4+AwbZdWXlqNZX33YPcptrak0+xpHK3t0V4bP0Vb0zphlX9Wo0KL6UgcxjJ3H5WDJK0i+zeGcAjl4ehjA3ZPqUXh8gNFXX6NssnEXOqTNorKw200hptGO4awLjLdwNCY6Ep6cvvDx94eHhAy9PH3h4+MDD3RsSycCfnLe0NHUFvvoAuLP6t6KyBEqlcsjGLZbJIJHJILWUITLKHwsXTETi3AgkTA2CpYXxDylZ+bU4n1mNCzl1yC1vg0AshcTCAhIL/Tm63W9rbEJ9RQUayitRX16JhooK1Ovvm/oHRAsLK4SFRutaK4TFICI8ts+gvb29Fdk56cjPv4zS8hxUVxdAo23rs1q4dzWxcaBsa2s56K+paTQa7Np1Dus+3Y3du89BrR7dVdxEPQmEQjh6usPFzxeuAX5w8fOBa4AfXP184ejlMegJUORt7Si5nImii12Bb0NF5RCPnoiIaGRw8HDXB7kx8I+NhndEaK/QUK1UoTQrG0UX01FfXtmrQrb7Y3lbO7Sj/NuDo4WVvR3s3FyNqn57VQK7uEAkGdzPRBqNBi21dX1WATdW1aC5RnfbUlff59+xnatLn1W4jp59FyMBgFIuR3VhsS641bdS6JzQTNE+uifJNrWrVfW21NXrq3pPIus4q3qt7O0QPG0yQhJ0E6G5+PkYbe9obUXumRRDdW5lbr6ZRkpjDcNdExhv4W5/hEIhXJzd4enpA09PX3h6+MDTw1f32MMHzs79zxgK6P5jr2+sQ019FWobqlHXXI/6lno0tTejqaMZcq0SYpkUEgt9uCqTGQJXw2PLHuGrfr2tjRR+1kr42yjgb6OEndT4B4NWpQAFLVIUtkhQ1CJFu9o0Pbeaa+vQUKEPfcsrjULg+vJytNY19PtJp1AoQoB/MCLCdX1yw8MmIsA/uFd/X7VajYKCHMOEZ5czL6Kw6IrJ2mMIBAJYW1tctZpYoVBi69ZjKCrip400+tm5ucJVH9zqglxfuPj5wsXXe8Cvf8rb2lFTWIzqomJUFxahprAENUUlsHa0h190JPwmRsE3KgKWtr0nL2yqrkHRpXQUXsxAcVoGitIyIB8Hvc2JaHzr/NBM960HXzh6eqCxsgrlObkoz74y7oOCsUAkkcAnMgz+sdEIiI1BQGwM7N17V+U21dSiMDUNhamXUJCahpKMTCg7xm8l7WgmEAhg5WCvr/rt6gds16M/sK2z06A/GNeo1WiuqUNjdTVaauth4+QIt0B/o6rSnppr63S9cHtU4daXVfDDgOvEql5jYpkMgfETEZowBSEJU+EdEWZUGKVWqVB0Md0wCVrhpfQR2a6ERj+GuyYw3sLdiLmzYO1gP2CYKrXsDF9lhvBVJrOArYUNbCXWsBJZwkoog0wthEwthFQtgkgrGPB5NdBCIdJALlZDLtLo7ovUhltNtzxWAC08rVSGMNfdUgVht9OrNEBhA5BdpUJmWQeKqtqglMuhbJfrbjs6oOyQQ9HRoV+vu1V0yKHs6NpHpVDA2sEBDp7ucPT00N16uMPRywMyK6ur/lkq5XI0VFShobwSirom2CglcJTawcvRA34eAbCw6N2Dt7KqDJczLyIz8yIuZ6YiOycdHR0DT7hARL1ZO9gbwgRXf9+uWz+fAf/9qhQK1BSXoqawCNWFJfoQtxjVhcVoqq656vMKBAK4BfrDLyYSfjFR8IuJgmdoUK9fbjQaDaryCvTtHHQVvuU5uWznQESjko2zI1z9/XRLgK/+vu6aO9CHZk3VNSjPvoLynDyUZV9BRU4uKvMKoFIohnH0dC3s3V3hHxtjaLHgExHW6+9YrVKhLCsHhalpKNAHunWl5WYaMZmLQCiEtaO9YfK3/voB2zo79TuhmUat1k1o1rMfbkEh2hqbhvkVjS9CsQgBcRMRoZ+YzSssxGj7WKzqFQiF8A4PRegMXauFwPiJvdp8lOfkGiZByzuXwmINGhYMd01gvIW7L/60Fa7+viY9p0qhhLZDCXGHBhIlIFUJYaEVwxJSWIssYCW2gFAwcDVtW0crVJoWWFur4OUpgZ2dFpaWSlhYKiGzUCIzsxj79p3H3j3nceRI+qAmCLsRlnZ2cPR0h6OnOxw8PeDo4W4IgZ09POHh4A4blQTWSjGslGJINb1fn1qgRRPaUd1ai5LqElwpyEZpUZ6u+resAvUVFQNW/xKNdxY21rrK224BbmclrpWdXb/HqVUq1JdVoLqwCNWFxYbwtqaoGPXllSav9pBYyOAdHga/iZHwj4mCb3QknH28eu2naO9ASUYmitL0ge/FdNSXV5h0LERE10tmbaW/3uqCW9eAzg/Q/Pr8xkInlUKBmqISVBcWo768Ao6eHvAMDYKLr0+f+6tVKlQXFutD31yUZ+uqfHk9HH4iiQTeEaEI0LdXCIiNhoOHe6/9mmvrUHgxDQUXLqEwNQ3F6ZdZlUuDJhAKYePkaKj6tXVxQltjE6ryClBTXAr1ELb2o8Gzc+us6k1A6IxpRtd9jUaD4rTLyDx2EpnHTqI4PXPUVE87+/ro++ZOQcj0KbCyN/4dorGyGtnJpw29c8dTf2YaORjumsB4C3fvffUPsHV11lWw6itcjatd5T2qXTu69pXLodCvV3argr1aJZpIJIabq0dXuwdPX/j6+CM0JAQuLp4QiweuktVo1KisLNf1+a0o7jXRW0PD0E34JRSKEBgYgsjwWESExyIifCL8/IJ69bHVaDSobatDg7oV7TINNM6W0NhIdf/6BtC9+tfQ9qGsAvUVlagvr0BDRdW4nhyCxj6xTKbrfevvawgVOnvh2jo7DXhsfXkFavTVt9VFxagu0AW4dSVlZp/52MbZEX7RUfCbGKlr6RAdCUs72177NdXUovhSBgr1vXuL0zI4sy4RDRmRRAJnHy9dv/FuIa6rvy/sXF36PU6j0aC+rNxwna0uLEJ1ge62vw/NZFZWcA8OhGdIELxCg+Ghv+35i3Wn9uYWVOTkojwn11DlW56Ty2uiCdm5uuhC3DhdewXviNBeVWtqlQrl2bm6MDf1EgovpKG2pNRMIyYicxCKRQiIjUFEZ6/eHlW9rfUNyDpxCpc7q3rrG8wz0D5YOzogZNpkhM6YhpCEqXDy9jTa3t7cgtwz55CdfBY5yWdQlV9oppESdWG4awLjLdw1F4FAgEmTgrB06SQsXhKPmTPDIdE36lephGhpFiA1tQpZmQ2orlJBLLKDh4c3PD18IJNZDHju9vZWwwRvncFv50Rv5RUlkMsH31jf3c0L4eETdb1yw2MRGhLVZ3uFiooSXY/crIu4fPkicq6k93qegap/HT09YOvqPKjJznr1/i2v0AW/+kC4pbZ+0K+PyBxEYjGcfLz0bRR8dIGCny9c/H0GnDAD0IWf3StvqwuKUF1UgtriklFVNSQQCOAa4Kdv5RAJv5hIeIWG9DlhSWVegb5/b3pXOwf29yKiQRIIBHDwcDe0T3DpFuA6eXn2+/VoQHfNrS4sQo0+uK0u1F13a0vKTNZKwc7NFV6hQfAMDYZniO7WLdC/14RcnerKynXVvfo+vuU5uaguLOJ18SpEYjG8wkMN7RX8Y6Ph5OXZa7+Wunqj9grF6Zc5KRURGblaVW9JeqauV+/RE8Ne1SuxkGHCpDjDJGjeEaFG21VKJQpT05B9UledW5KeyTZpNOIw3DUBhrtDx8vLCUuWxGPxkngsXhwPFxfjSo0rV8qwb28K9u1LQVLSRTQ39+49KxAI4OTkaqj41d3qJ3vz8IGLi/tVA9K6ump92FuKsvJiXfVveQmqqsrg6emLiIhYRITpAl0np94TRLS0Nut75F5EZpbutr7+6r05r0YkFsPe3bVX8NsVALtfc+/f+ooK1Jd1Br+s/qXh0zmpjq5tQlf1raufLxy9PAaccKOtqalbNVhnGwVdqDCW+1yJZTL4hIfCNyYS/jG6Cducfbx77afskKPkchaKLqWj6GI6itIy2NuQiGDt6NCrB65rgB9cfH0gsZD1e1xHS6tRcNt5W1NUbLYqWZFYDNdAf32Vb5ChyrevFgGArhVEZV5Br9B3ML3TxypbF2d9kKvrl+sTGd7rfaBRq1Gek2sU5tYUlZhpxEQ0GnVW9YbPnoHw2QnwDjcOU4e6qlcoEsEnMswQ5gbExfTqC16WlWOYBC3vXCoU7ZzjhkY2hrsmwHDXdCwspJg7NwpLlsRjydJJiI72N9re1NSGAwdS8fM+XaCbl3fjvdUkEgnc3byNWj54efrAw8MHXp6+sLHpvy9nX1QqJfLysnRVuZmpyMi8iJKSfLP1xe23+tfLA44e11f9a6j6ZfUvXQc7N1e46oPbzv63Ln6+cPH1HnBSHXlbuy601X+dt6awxBDijoUJGkzF2tFB18ZhYhT8YyLhGxPZZ3/h5to6w0RtRZcyUJSWgY7mFjOMmIiGktTSsqvvuL76tjPQHaj3uEqpRE1RiW7yyB5VuM21Q9fOytQs7Wx11b0hXZW+HiETYGFt3ef+rfUNRm0dyrJzUZmbN+YqUYViEbxCQ/TtFXSBbs+vHgNAa0OjPsjV98pNuwx529j90JSIhp+dq4uuqnfODIQmTDVqQ2ZU1XvsJIrTLl9XVa9rgJ++b+5UBE+d1KvVWX15BbJP6sLcnNNn+bstjToMd02A4e6NiY72N4S5c+dGwcKiK9zRaDQ4cybHUJ176lQWVMP8FTobGzt4efoawl5dCKwLg91cvVBTW4nLmamGytycKxlQKEZPlWt/1b9dFcCDq/7VaDTQqjXQaNTQarSGW61GA41aDa1Wa3yr36bVaKDpto9WrYFGqztX5zbDrVoDrVYDTV+3mh7767cZnU//3J37GJ+v5/i6n0fb6zVoDefp9lrVami02q4fOPSBfleu3/lY2+f2XuvR935djw0rBtyu1Wq7nbOfc/T3HFcZc/9j0UIiszD0wnXpDBb8fAZ8P6kUCtQUl+rCBH0v3M6WCuO5mupGufj7wj8mCn4To+AXHQmv8JA+v75clV+IwovpKE7LQOHFdJRnXzF772EiujqRWAxnX++uCSS7hbj27r2/UdRJo9GgobyydxVuYREayivH7NdOBQIBHL08jNo6eIYEwdXft8+WExqNBrXFpUYVvuXZV1BbUjZqJgSycXY0THrmHxsN38gISC2N25Zp1GpUXMnTV+TqAt2awmIzjZiIxiOhWAT/idEInz0DEbNn9GqR0FrfgKyTp5F59CSyTpxCS13fIayts5NuAjR9dW7Pb3G0NTXhyqlzhupcfgOBRjuGuybAcPfauLjYYdGiOCxZOglLlsTBy8vZaHtxcbUhzD1wIBV1dfwzNbe+qn8dvfTh7zVU/xIBuolW6ssqDGFC9364/U2qQ6YllkrhFR6iC3xjIuEXEwUXv96z0ivlcpRezjZU+BZeSkddSZkZRkxEAoEA9u5uRsFtZzuFq7Wuaa6tMwS3ht7jhcWoKS5l26VuxDIZ3Cf4G03e5hESBDsX5z73V7R3oOJKXq/Q19zfJtFV5QYb2iv4x0b32bKnrbFJP+mZLswtupQ+plsZEdHoY+vijPDZCQifPQNhM6b1rurNyETmsWRkHUuGhZ0NQhOmInTGNHiGBBmdR6VQID/lInKSzyL75GmUXM7i7xw0pjDcNQGGuwOTSMSYMSMcS5fqeudOmhRkFAS2tclx6NAl/LwvBXv3nkdmJj81G21EYjGsHOwhFAkhEAh1t0IRBEIBhEIhBEKh8TaBEAKREEL9rUAohFBovK37vsJu+wiEAgiEIgg7b432EXR73p63unMIRMJe27rOLTS63/P5jbZ1P59AAIFIBIFAoKv4EQACCADofhnX3+nxuPOmj+2GVT229TpnP/t1Ph5gW/d9BjVOgcDwoL/n73kOtVKFupIyXYhbVGzoiVtXUsZq0BHI2sEevtERugnb9BW+1g72vfZrqatHUVqGLvDV9+9tb+L/fUSmYu1gbwhuXbr1wXX18x24D25rqy6w7VZ9W12ga2XDlis3xsbJsavCN1TX4sEjaEK/fx9N1TX6sDfP0N6hMq/AZBPK9TU+/9hoQ3sF36g+qnI1GlTm5hvaKxSmpqG6oMhsbcOIiK6VUCSC/8QohM+Z2WdVb08lGVnIST6D7OQzyE9JHVUTKRNdK4a7JsBwt7fgYE8sXToJi5fEIzExBra2xl/DvnAhzxDmHj9+GXK50kwjJSKi/jj7+sB/oq6y1y8mCt7hIX32Ra4uKEJhZ+/ei+koy8phgE9jjkAohFgqgVgqg1gqgUQmhVjauUgglskglujX6++L9ftIpFKIpBJIuq+XSSGWSPXnkcDW2RmuAX6wsh+4D25tcWlXcNu9D25N7TD+aZBAKISLn4+hpUPnJG4uvr2/BQHovrVSXVjcrcJXV+VbX35t80cIRSJ4hgQZ2isExMb0+c2LtqYmFF5M1we5l1B0KcNsk90REQ2F7lW9IdMmo6O1Vd9m4SyunD5n8onYiEYyhrsmwHAXsLe3xoIFEw29cwMDjXvaVFU1YN++FOzbm4L9+y+gooINyomIRhuRRAKvsJCuwDc6Eq4Bfr32UykUKL2c3RX4XspAbfH4/laGripfYFSdD21XT2xWz/VPIBBAJNWHoN0CU3HnOmm3RR+USnqt6xGwSiXG2yWd6zuD2h7HSGUQSfpve2BqdWXlhpY1uhYKujC3vrxizPbBHStkVlZwDw6EV49+vv2F9u3NLajIyTWaxK08J9cQxFo72MNf3ys3IDYavtERffaur7iSp++Tm4aCCxdZlUtERDSOMNw1gfEY7gqFQkydGqIPc+MxfXoYxOKuCSgUCiWOHcsw9M5NTc3nD5hERGOQpZ2dvm+vbvGPiYK1o0Ov/VrrG1CalQOVQgGBQKBrwSJAt8BToF9vfL+/bRDoKucE6PZYoGuzAnSFqcIejwVCgaHNSOdxQqFQtw3dztut3Yjhsb7likAoNDxf53kM59WfRyA0fv5rodFougJfLXSTQxrudwbBWqN10Gp1EyB27qPR9JpU0bA/uh739xzdA+eu/bqt0/QYE3o8R88x6ffvPsbOCRlFnYGtpEfw2hnc9jH5n7lp1Goo5QqoFN0XJVT6dUqFQndfqb9VKKFUyKFWKI2P0++jlCvQ1tik74lbwj64Y5C9u6tR2OsZGgy3QP9+3991ZeVQK1Vw9fftta29uQVF3XrlFl5KZ+sNIiKicYzhrgmMp3BXJBJi81e/w+LFcXB0tDHalplZgn17z2PfvhQcOnQJbW38xYSIaDxy9vE2TNTmNzES3uGhkMj67xVKNFgajUYXkCrkhtC0MyhVdg9T5QqolEoo5fpAtVuYqlQooDbs3xXIGs6hMA5flYbgVm54PlbPkimIxGK4BvobtXXwCg3uNat7RW6+ob1CQWoaqvIKWDRBREREBgx3TWA8hbsAcO78u4iPD0J9fQv277+AfXtT8PPPKSgqqjb30IiIaAQSicXwDA2GR/AECIQCaDXaHpWd2h7ruleGavUFnp3VqN0rS3WPuypKu87T81yG82i10GiNH2v15+peGWtc7artYz26jaF7VW2PMfVxvs5MRiBA72pkdH8s0O3Ts1rYUGUsMKp+Nprc0FBxDBiqi7tVOHdVLnedQygQ9jqn7rl6PEfnuHru323sRueAfv/OCulu5wSgC0y7VbiqFLoQVRe0yo0qYtnLmcYDSztbeIYEQSyVojj9MietJCIiogEx3DWB8RbuLlwYi5aWDpw5k6P76igRERERERERERENu8HmksM3gwSNeAcOpJp7CERERERERERERDRI1z4bCBERERERERERERGZHcNdIiIiIiIiIiIiolGI4S4RERERERERERHRKMRwl4iIiIiIiIiIiGgUYrhLRERERERERERENAox3CUiIiIiIiIiIiIahRjuEhEREREREREREY1CDHeJiIiIiIiIiIiIRiGGu0RERERERERERESjEMNdIiIiIiIiIiIiolGI4S4RERERERERERHRKDQuwt0nnngCeXl5aG9vx9mzZzF79mxzD4mIiIiIiIiIiIjohoz5cPeee+7Bu+++i7///e+Ij4/H0aNHsXv3bvj6+pp7aERERERERERERETXTQBAa+5BDKXk5GScP38eTz75pGFdRkYGfvjhB/z+978f8FhbW1s0NTXBzs4Ozc3NQz1UIiIiIiIiIiIiokHnkuJhHNOwk0gkmDx5Mt544w2j9fv27cPMmTN77S+VSiGTyQyPbW1tjW6JiIiIiIiIiIiIhtpg88gxHe66uLhALBajsrLSaH1lZSU8PDx67f/SSy/hz3/+c6/1paWlQzVEIiIiIiIiIiIioj7Z2tqO38rdTlqtcecJgUDQax0AvP7663j77beN1jk5OaGurm5IxzdS2NraorS0FN7e3mxDQSMK35s0EvF9SSMR35c0UvG9SSMR35c0EvF9SSMV35vmYWtri7KysgH3GdPhbk1NDVQqVa8qXTc3t17VvACgUCigUCiM1o3HN2xzc/O4fN008vG9SSMR35c0EvF9SSMV35s0EvF9SSMR35c0UvG9ObwG82ctHIZxmI1SqcS5c+ewePFio/WLFy/GiRMnzDQqIiIiIiIiIiIiohs3pit3AeDtt9/Gxo0bcfbsWZw8eRJr1qyBn58fPvnkE3MPjYiIiIiIiIiIiOi6jflwd+vWrXB2dsbLL78MT09PpKWl4eabb0ZRUZG5hzbiyOVy/PnPf4ZcLjf3UIiM8L1JIxHflzQS8X1JIxXfmzQS8X1JIxHflzRS8b05cgkA9J5ZjIiIiIiIiIiIiIhGtDHdc5eIiIiIiIiIiIhorGK4S0RERERERERERDQKMdwlIiIiIiIiIiIiGoUY7hIRERERERERERGNQgx3x5knnngCeXl5aG9vx9mzZzF79uwB9587dy7Onj2L9vZ25ObmYu3atcM0UhoPXnzxRZw+fRpNTU2orKzEtm3bEBoaOuAx8+bNg1ar7bWEhYUN06hpPHjllVd6vcfKy8sHPIbXSxpq+fn5fV7/Pvzwwz735/WShsqcOXOwfft2lJaWQqvVYuXKlb32eeWVV1BaWoq2tjYkJSUhMjLyque94447kJ6ejo6ODqSnp+O2224bgtHTWDXQ+1IsFuONN97AxYsX0dLSgtLSUmzYsAGenp4DnnP16tV9XkdlMtlQvxwaI652vVy/fn2v99fJkyevel5eL+lGXe292de1T6vV4re//W2/5+Q103wY7o4j99xzD9599138/e9/R3x8PI4ePYrdu3fD19e3z/0DAgKwa9cuHD16FPHx8Xjttdfw/vvv44477hjmkdNYNW/ePHz00UdISEjA4sWLIRaLsW/fPlhZWV312NDQUHh4eBiWnJycYRgxjSdpaWlG77GYmJh+9+X1kobD1KlTjd6TixYtAgB88803Ax7H6yWZmrW1NVJTU/H000/3uf3555/Hb37zGzz99NOYOnUqKioq8PPPP8PGxqbfcyYkJODrr7/Gxo0bERsbi40bN2Lr1q2YNm3aUL0MGmMGel9aWVlh0qRJ+Otf/4pJkybhjjvuQGhoKLZv337V8zY2NhpdQz08PCCXy4fiJdAYdLXrJQDs3r3b6P118803D3hOXi/JFK723ux53Xv00Ueh0Wjw3XffDXheXjPNR8tlfCzJycnaf//730brMjIytK+99lqf+7/xxhvajIwMo3Uff/yx9sSJE2Z/LVzG5uLi4qLVarXaOXPm9LvPvHnztFqtVmtvb2/28XIZu8srr7yiTUlJGfT+vF5yMcfyzjvvaHNycvrdzusll+FYtFqtduXKlUbrysrKtM8//7zhsVQq1dbX12vXrFnT73n+97//aXft2mW0bvfu3dqvvvrK7K+Ry+hb+npf9lymTJmi1Wq1Wl9f3373Wb16tba+vt7sr4fL2Fj6el+uX79eu23btms6D6+XXEy9DOaauW3bNu3+/fsH3IfXTPMtrNwdJyQSCSZPnox9+/YZrd+3bx9mzpzZ5zEzZszotf/evXsxZcoUiMXiIRsrjV/29vYAgLq6uqvum5KSgrKyMuzfvx/z588f4pHReBQSEoLS0lLk5eVhy5YtCAwM7HdfXi9puEkkEqxatQqff/75Vffl9ZKGU2BgIDw9PY2uiQqFAocPH+73Z06g/+voQMcQ3Qh7e3toNBo0NDQMuJ+NjQ0KCgpQXFyMHTt2IC4ubljGR+PH/PnzUVlZiaysLKxbtw6urq4D7s/rJQ03Nzc3LF++HJ999tlV9+U10zwY7o4TLi4uEIvFqKysNFpfWVkJDw+PPo/x8PDoc3+JRAIXF5chGyuNX2+//TaOHj2K9PT0fvcpLy/H448/jjvvvBN33HEHsrKycODAAcyZM2cYR0pj3alTp/Dwww9j6dKlePzxx+Hh4YETJ07Aycmpz/15vaThdtttt8HBwQFffPFFv/vweknm0Plz5bX8zNl53LUeQ3S9ZDIZ3njjDXz11Vdobm7ud7/MzEw88sgjuPXWW3H//fejo6MDx48fR3Bw8DCOlsay3bt348EHH8SCBQvw//7f/8PUqVNx8OBBSKXSfo/h9ZKG2+rVq9Hc3Izvv/9+wP14zTQflhONM1qt1uixQCDote5q+/e1nuhGffjhh5g4ceJVJ/nLzs5Gdna24XFycjJ8fX3x29/+FkePHh3qYdI4sWfPHsP9tLQ0nDx5Erm5uVi9ejXeeeedPo/h9ZKG02OPPYbdu3cPONEfr5dkTtf6M+f1HkN0rcRiMf73v/9BKBTiySefHHDfU6dO4dSpU4bHx48fx/nz5/HMM8/g2WefHeqh0jiwdetWw/309HScPXsWhYWFWL58ObZt29bvcbxe0nD6xS9+gc2bN1+1dy6vmebDyt1xoqamBiqVqteneW5ubr0+9etUUVHR5/5KpRK1tbVDNlYaf95//33ceuutSExMRGlp6TUfn5ycjJCQkCEYGZFOW1sbLl261O/7jNdLGk5+fn5YtGgR/vvf/17zsbxe0lCrqKgAgGv6mbPzuGs9huhaicVibN26FYGBgVi8ePGAVbt90Wq1OHPmDK+jNGQqKipQWFg44HuM10saTrNnz0Z4ePh1/dzJa+bwYbg7TiiVSpw7dw6LFy82Wr948WKcOHGiz2NOnjzZa/8lS5bg7NmzUKlUQzZWGl8++OAD3HHHHViwYAEKCgqu6xzx8fEDVq8R3SipVIqIiIh+32e8XtJwevTRR1FVVYWdO3de87G8XtJQy8/PR3l5udE1USKRYN68ef3+zAn0fx0d6Biia9EZ7IaEhGDRokWDmuOhL3FxcbyO0pBxcnKCr6/vgO8xXi9pOD322GM4e/YsLl68eF3H85o5fMw+qxuX4VnuuecerVwu1z766KPa8PBw7dtvv61tbm7W+vn5aQFoX3vtNe2GDRsM+wcEBGhbWlq0b731ljY8PFz76KOPauVyufaOO+4w+2vhMjaWjz76SFtfX6+dO3eu1t3d3bBYWFgY9un5vnz22We1K1eu1AYHB2sjIyO1r732mlar1Wpvv/12s78eLmNn+de//qWdO3euNiAgQDtt2jTt9u3btY2NjbxecjH7IhAItAUFBdrXX3+91zZeL7kM12Jtba2NjY3VxsbGarVarfa5557TxsbGan19fbUAtM8//7y2vr5ee9ttt2mjoqK0mzdv1paWlmptbGwM59iwYYP2tddeMzyeMWOGVqlUap9//nltWFiY9vnnn9cqFArttGnTzP56uYyOZaD3pUgk0v7www/aoqIi7cSJE41+7pRIJIZz9Hxfvvzyy9olS5ZoAwMDtbGxsdrPPvtMq1AotFOnTjX76+UyOpaB3pfW1tbaf/3rX9qEhAStv7+/dt68edrjx49ri4uLeb3kMuTL1f4vB6C1tbXVtrS0aNeudPSrCAAACZFJREFUXdvnOXjNHFGL2QfAZRiXJ554Qpufn6/t6OjQnj17VjtnzhzDtvXr12uTkpKM9p87d6723Llz2o6ODm1eXl6//6i5cLmepT+rV6827NPzffm73/1Om5OTo21ra9PW1tZqjxw5or3pppvM/lq4jK1ly5Yt2tLSUq1cLteWlJRov/32W21ERIRhO6+XXMy1LF68WKvVarUhISG9tvF6yWW4lnnz5vX5//f69esN+7zyyivasrIybXt7u/bQoUPaqKgoo3MkJSUZ7Q9Ae+edd2ovX76slcvl2oyMDH4QweWaloHel/7+/v3+3Dlv3jzDOXq+L99++21tQUGBtqOjQ1tZWands2ePNiEhweyvlcvoWQZ6X1pYWGj37Nmjrays1Mrlcm1BQYF2/fr1Wh8fH6Nz8HrJZSiWwfxf/vjjj2tbW1u1dnZ2fZ6D18yRswj0d4iIiIiIiIiIiIhoFGHPXSIiIiIiIiIiIqJRiOEuERERERERERER0SjEcJeIiIiIiIiIiIhoFGK4S0RERERERERERDQKMdwlIiIiIiIiIiIiGoUY7hIRERERERERERGNQgx3iYiIiIiIiIiIiEYhhrtEREREREREREREoxDDXSIiIiIat/z9/aHVahEbG2vuoRiEhYXh5MmTaG9vR0pKirmHAwBISkrCO++8Y+5hEBEREVEPDHeJiIiIyGzWr18PrVaLF154wWj9ypUrodVqzTQq8/rLX/6C1tZWhIWFYeHChX3uM1Rh67x586DVamFvb2/ycxMRERGR6THcJSIiIiKzam9vxwsvvAAHBwdzD8VkJBLJdR8bFBSEY8eOoaioCHV1dSYcFRERERGNNQx3iYiIiMis9u/fj4qKCrz00kv97vPKK6/0alHw7LPPIj8/3/B4/fr12LZtG1566SVUVFSgvr4eL7/8MkQiEf75z3+itrYWxcXFePTRR3udPzw8HMePH0d7ezvS0tIwb948o+0RERHYuXMnmpubUVFRgS+//BLOzs6G7UlJSfjggw/w1ltvobq6Gj///HOfr0MgEOBPf/oTiouL0dHRgZSUFCxdutSwXavVYsqUKXjllVeg1Wrxyiuv9DrH+vXrMX/+fDz33HPQarXQarXw9/cf1DgB4He/+x1yc3PR1taGCxcu4M477wSga1Fx6NAhAEBDQwO0Wi3Wr19vOE4oFOIf//gHamtrUV5e3ufYiIiIiGh4MdwlIiIiIrNSq9X4/e9/j2eeeQbe3t43dK4FCxbAy8sLc+fOxW9+8xv85S9/wU8//YT6+npMnz4dn3zyCT755BP4+PgYHfevf/0Lb731FuLj43HixAls374dTk5OAAAPDw8cPnwYFy5cwJQpU7Bs2TK4u7tj69atRudYvXo1VCoVZs2ahbVr1/Y5vmeffRb/7//9P/z2t7/FxIkTsXfvXmzfvh3BwcGG50pLS8Obb74JDw8PvPnmm32e48SJE1i3bh08PDzg4eGB4uLiQY3zb3/7Gx599FE88cQTiIqKwjvvvINNmzZh7ty5KC4uxh133AEACA0NhYeHB5599lmj19fa2orp06fj+eefx8svv4xFixZdx98SEREREZmSlgsXLly4cOHChQsXcyzr16/Xbtu2TQtAe+LECe1///tfLQDtypUrtVpd010tAO0rr7yiTUlJMTr22Wef1ebn5xudKz8/XysQCAzrLl++rD18+LDhsVAo1DY3N2vvvfdeLQCtv7+/VqvVap9//nnDPiKRSFtUVKT93e9+pwWg/ctf/qLds2eP0XN7e3trtVqtNiQkRAtAm5SUpD1//vxVX29JSYn2pZdeMlp36tQp7Ycffmh4nJKSon3llVcGPE9SUpL2nXfeMVp3tXFaWVlp29ratAkJCUb7/Oc//9Fu3rxZC0A7b948rVar1drb2/d6viNHjvQa9+uvv2729xAXLly4cOHChct4XsQgIiIiIhoBXnjhBRw8eBBvvfXWdZ8jPT3daCK2yspKpKWlGR5rNBrU1tbCzc3N6LiTJ08a7qvVapw9exYREREAgMmTJyMxMRHNzc29ni8oKAg5OTkAgLNnzw44NltbW3h7e+P48eNG648fP47Y2NhBvsL+XW2c9vb2sLS07NUyQiqV9mp50ZeLFy8aPS4vL+/150hEREREw4vhLhERERGNCEePHsXevXvx2muv4YsvvjDaptFoIBAIjNb1NWmZUqk0eqzVavtcJxRevTtZZ0gsFAqxY8cOvPDCC732KS8vN9xvbW296jm7n7eTQCDote56XG2c0dHRAIDly5ejtLTUaLtcLr/q+a/3z5GIiIiIhg7DXSIiIiIaMV588UVcuHAB2dnZRuurq6vh4eFhtC4uLs5kz5uQkICjR48CAEQiESZPnowPP/wQAHD+/HnceeedKCgogFqtvu7naG5uRmlpKWbPnm14LgCYOXMmTp8+fU3nUigUEIlERuuuNs6MjAx0dHTAz88PR44c6fe8AHqdm4iIiIhGJn7UTkREREQjRlpaGjZv3oxnnnnGaP2hQ4fg6uqK559/HhMmTMCTTz6Jm266yWTP+9RTT+G2225DWFgYPvroIzg6OuLzzz8HAHz00UdwcnLCli1bMHXqVAQGBmLx4sX47LPPrrly9V//+hdeeOEF3HPPPQgNDcXrr7+OuLg4vPfee9d0noKCAkyfPh3+/v5wdnaGQCC46jhbWlrw5ptv4p133sHDDz+MCRMmIC4uDk8++SQefvhhAEBhYSE0Gg1WrFgBFxcXWFtbX9O4iIiIiGh4MdwlIiIiohHlT3/6U68WDJmZmXjyySfx1FNPITU1FdOmTcObb75psud88cUX8cILLyA1NRVz5szBypUrUVtbC0DX0mDWrFkQiUTYu3cv0tLS8N5776GxsREajeaanuf999/HW2+9hbfeeguXLl3CsmXLcOutt+LKlSvXdJ4333wTarUaGRkZqKmpgZ+f36DG+ac//QmvvvoqXnrpJVy+fBl79+7FLbfcgvz8fABAWVkZXnnlFbzxxhuorKw0VC8TERER0cgkgG5mNSIiIiIiIiIiIiIaRVi5S0RERERERERERDQKMdwlIiIiIiIiIiIiGoUY7hIRERERERERERGNQgx3iYiIiIiIiIiIiEYhhrtEREREREREREREoxDDXSIiIiIiIiIiIqJRiOEuERERERERERER0SjEcJeIiIiIiIiIiIhoFGK4S0RERERERERERDQKMdwlIiIiIiIiIiIiGoUY7hIRERERERERERGNQv8f/lXqFMMpPjwAAAAASUVORK5CYII=", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "import matplotlib.pyplot as plt\n", + "\n", + "L = [0.1,0.5,0.75,1]\n", + "plt.figure(figsize=(17,5))\n", + "for L in L:\n", + " errors = []\n", + " for i in range(1,20):\n", + " errors.append(sharktooth_function(f,[0,0],[1,0],i,L))\n", + " plt.plot(errors, label =L)\n", + "\n", + "plt.xlabel(\"Number of teeth\")\n", + "plt.ylabel(r\"$\\sup_{x\\in x_i} | f(x)- \\mathfrak{R}_{\\mathfrak{r}} ( \\mathsf{P})|$\")\n", + "plt.legend()\n", + "plt.title(\"Sup of deviance from f(x) as the number of teeth increase and as we get closer to L\")" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "base", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.11.4" + }, + "orig_nbformat": 4 + }, + "nbformat": 4, + "nbformat_minor": 2 +} diff --git a/Dissertation_unzipped/sharktooth_functions_multidimensional.pdf b/Dissertation_unzipped/sharktooth_functions_multidimensional.pdf new file mode 100644 index 0000000..b6140b7 Binary files /dev/null and b/Dissertation_unzipped/sharktooth_functions_multidimensional.pdf differ diff --git a/Dissertation_unzipped/sharktooth_multidimensional.jl b/Dissertation_unzipped/sharktooth_multidimensional.jl new file mode 100644 index 0000000..12e13be --- /dev/null +++ b/Dissertation_unzipped/sharktooth_multidimensional.jl @@ -0,0 +1,12 @@ +using Random +using Distributions +using Plots +using LinearAlgebra +# =============================================================== + +function max_conv_operator(samples, f_samples, input, L) + return maximum(f_samples .- L .* norm(input .- samples, 1)) +end + +x = rand(Uniform(0,1),100) +y = rand(Uniform(0,1),100) \ No newline at end of file diff --git a/Dissertation_unzipped/sharktooth_multidimensional.nb b/Dissertation_unzipped/sharktooth_multidimensional.nb new file mode 100644 index 0000000..13da533 --- /dev/null +++ b/Dissertation_unzipped/sharktooth_multidimensional.nb @@ -0,0 +1,44 @@ +(* Content-type: application/vnd.wolfram.mathematica *) + +(*** Wolfram Notebook File ***) +(* http://www.wolfram.com/nb *) + +(* CreatedBy='Mathematica 13.3' *) + +(*CacheID: 234*) +(* Internal cache information: +NotebookFileLineBreakTest +NotebookFileLineBreakTest +NotebookDataPosition[ 158, 7] +NotebookDataLength[ 815, 34] +NotebookOptionsPosition[ 561, 21] +NotebookOutlinePosition[ 955, 37] +CellTagsIndexPosition[ 912, 34] +WindowFrame->Normal*) + +(* Beginning of Notebook Content *) +Notebook[{ +}, +WindowSize->{808, 796}, +WindowMargins->{{315, Automatic}, {21, Automatic}}, +FrontEndVersion->"13.3 for Mac OS X ARM (64-bit) (July 24, 2023)", +StyleDefinitions->"Default.nb", +ExpressionUUID->"3e63ad8f-9f2d-4c31-8e59-19c54a579337" +] +(* End of Notebook Content *) + +(* Internal cache information *) +(*CellTagsOutline +CellTagsIndex->{} +*) +(*CellTagsIndex +CellTagsIndex->{} +*) +(*NotebookFileOutline +Notebook[{ +} +] +*) + +(* End of internal cache information *) + diff --git a/Dissertation_unzipped/tun-network.svg b/Dissertation_unzipped/tun-network.svg new file mode 100644 index 0000000..794fb03 --- /dev/null +++ b/Dissertation_unzipped/tun-network.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/Dissertation_unzipped/u_visc_sol.aux b/Dissertation_unzipped/u_visc_sol.aux new file mode 100644 index 0000000..b3d9dd7 --- /dev/null +++ b/Dissertation_unzipped/u_visc_sol.aux @@ -0,0 +1,199 @@ +\relax +\providecommand\hyper@newdestlabel[2]{} +\citation{crandall_lions} +\citation{Beck_2021} +\citation{Ito1942a} +\citation{Ito1946} +\citation{Beck_2021} +\citation{BHJ21} +\@writefile{toc}{\contentsline {chapter}{\numberline {3}That $u$ is a viscosity solution}{30}{chapter.3}\protected@file@percent } +\@writefile{lof}{\addvspace {10\p@ }} +\@writefile{lot}{\addvspace {10\p@ }} +\@writefile{toc}{\contentsline {section}{\numberline {3.1}Some Preliminaries}{30}{section.3.1}\protected@file@percent } +\newlabel{lemma:2.7}{{3.1.1}{30}{}{theorem.3.1.1}{}} +\newlabel{lemma:2.7@cref}{{[lemma][1][3,1]3.1.1}{[1][30][]30}} +\citation{karatzas1991brownian} +\citation{karatzas1991brownian} +\newlabel{lem:3.4}{{3.1.2}{32}{}{theorem.3.1.2}{}} +\newlabel{lem:3.4@cref}{{[lemma][2][3,1]3.1.2}{[1][32][]32}} +\newlabel{2.13}{{3.1.7}{32}{}{equation.3.1.7}{}} +\newlabel{2.13@cref}{{[equation][7][3,1]3.1.7}{[1][32][]32}} +\newlabel{2.14}{{3.1.8}{32}{}{equation.3.1.8}{}} +\newlabel{2.14@cref}{{[equation][8][3,1]3.1.8}{[1][32][]32}} +\citation{da_prato_zabczyk_2002} +\citation{karatzas1991brownian} +\newlabel{(2.19)}{{3.1.10}{33}{Some Preliminaries}{equation.3.1.10}{}} +\newlabel{(2.19)@cref}{{[equation][10][3,1]3.1.10}{[1][33][]33}} +\citation{da_prato_zabczyk_2002} +\@writefile{toc}{\contentsline {section}{\numberline {3.2}Viscosity Solutions}{34}{section.3.2}\protected@file@percent } +\newlabel{sumofusc}{{3.2.3.1}{34}{}{corollary.3.2.3.1}{}} +\newlabel{sumofusc@cref}{{[corollary][1][]3.2.3.1}{[1][34][]34}} +\newlabel{neglsc}{{3.2.3.2}{35}{}{corollary.3.2.3.2}{}} +\newlabel{neglsc@cref}{{[corollary][2][]3.2.3.2}{[1][35][]35}} +\newlabel{negdegel}{{3.2.6}{36}{}{theorem.3.2.6}{}} +\newlabel{negdegel@cref}{{[lemma][6][3,2]3.2.6}{[1][36][]36}} +\newlabel{def:viscsubsolution}{{3.2.7}{36}{Viscosity subsolutions}{theorem.3.2.7}{}} +\newlabel{def:viscsubsolution@cref}{{[definition][7][3,2]3.2.7}{[1][36][]36}} +\newlabel{def:viscsupsolution}{{3.2.8}{36}{Viscosity supersolutions}{theorem.3.2.8}{}} +\newlabel{def:viscsupsolution@cref}{{[definition][8][3,2]3.2.8}{[1][36][]36}} +\newlabel{def:viscsolution}{{3.2.9}{37}{Viscosity solution}{theorem.3.2.9}{}} +\newlabel{def:viscsolution@cref}{{[definition][9][3,2]3.2.9}{[1][37][]37}} +\newlabel{maxviscosity}{{3.2.10}{37}{}{theorem.3.2.10}{}} +\newlabel{maxviscosity@cref}{{[lemma][10][3,2]3.2.10}{[1][37][]37}} +\newlabel{ungeq0}{{3.2.11}{38}{}{theorem.3.2.11}{}} +\newlabel{ungeq0@cref}{{[lemma][11][3,2]3.2.11}{[1][38][]38}} +\newlabel{limitofun}{{3.2.13}{38}{}{equation.3.2.13}{}} +\newlabel{limitofun@cref}{{[equation][13][3,2]3.2.13}{[1][38][]38}} +\newlabel{hessungeq0}{{3.2.15}{38}{}{equation.3.2.15}{}} +\newlabel{hessungeq0@cref}{{[equation][15][3,2]3.2.15}{[1][38][]38}} +\newlabel{phieps}{{3.2.16}{38}{Viscosity Solutions}{equation.3.2.16}{}} +\newlabel{phieps@cref}{{[equation][16][3,2]3.2.16}{[1][38][]38}} +\newlabel{maxphiu}{{3.2.20}{39}{Viscosity Solutions}{equation.3.2.20}{}} +\newlabel{maxphiu@cref}{{[equation][20][3,2]3.2.20}{[1][39][]39}} +\newlabel{unleq0}{{3.2.11.1}{40}{}{corollary.3.2.11.1}{}} +\newlabel{unleq0@cref}{{[corollary][1][]3.2.11.1}{[1][40][]40}} +\newlabel{limitofun}{{3.2.27}{41}{}{equation.3.2.27}{}} +\newlabel{limitofun@cref}{{[equation][27][3,2]3.2.27}{[1][41][]41}} +\newlabel{viscsolutionvn}{{3.2.28}{41}{}{equation.3.2.28}{}} +\newlabel{viscsolutionvn@cref}{{[equation][28][3,2]3.2.28}{[1][41][]41}} +\newlabel{hessungeq0}{{3.2.29}{41}{}{equation.3.2.29}{}} +\newlabel{hessungeq0@cref}{{[equation][29][3,2]3.2.29}{[1][41][]41}} +\newlabel{hgeq0}{{3.2.30}{41}{Viscosity Solutions}{equation.3.2.30}{}} +\newlabel{hgeq0@cref}{{[equation][30][3,2]3.2.30}{[1][41][]41}} +\newlabel{unneq0}{{3.2.11.2}{42}{}{corollary.3.2.11.2}{}} +\newlabel{unneq0@cref}{{[corollary][2][]3.2.11.2}{[1][42][]42}} +\newlabel{absq}{{3.2.12}{42}{}{theorem.3.2.12}{}} +\newlabel{absq@cref}{{[lemma][12][3,2]3.2.12}{[1][42][]42}} +\citation{karatzas1991brownian} +\newlabel{ugoesto0}{{3.2.13}{43}{}{theorem.3.2.13}{}} +\newlabel{ugoesto0@cref}{{[lemma][13][3,2]3.2.13}{[1][43][]43}} +\newlabel{limsupis0}{{3.2.39}{43}{}{equation.3.2.39}{}} +\newlabel{limsupis0@cref}{{[equation][39][3,2]3.2.39}{[1][43][]43}} +\newlabel{xnasintuvxn}{{3.2.40}{43}{}{equation.3.2.40}{}} +\newlabel{xnasintuvxn@cref}{{[equation][40][3,2]3.2.40}{[1][43][]43}} +\newlabel{lipformun}{{3.2.42}{43}{Viscosity Solutions}{equation.3.2.42}{}} +\newlabel{lipformun@cref}{{[equation][42][3,2]3.2.42}{[1][43][]43}} +\newlabel{expofxisbounded}{{3.2.43}{43}{Viscosity Solutions}{equation.3.2.43}{}} +\newlabel{expofxisbounded@cref}{{[equation][43][3,2]3.2.43}{[1][43][]43}} +\newlabel{mathcalxn-mathclx0}{{3.2.44}{44}{Viscosity Solutions}{equation.3.2.44}{}} +\newlabel{mathcalxn-mathclx0@cref}{{[equation][44][3,2]3.2.44}{[1][43][]44}} +\newlabel{2.19}{{3.2.14}{45}{}{theorem.3.2.14}{}} +\newlabel{2.19@cref}{{[lemma][14][3,2]3.2.14}{[1][45][]45}} +\newlabel{2.59}{{3.2.50}{46}{}{equation.3.2.50}{}} +\newlabel{2.59@cref}{{[equation][50][3,2]3.2.50}{[1][46][]46}} +\newlabel{2.60}{{3.2.51}{46}{}{equation.3.2.51}{}} +\newlabel{2.60@cref}{{[equation][51][3,2]3.2.51}{[1][46][]46}} +\newlabel{2.62}{{3.2.53}{46}{Viscosity Solutions}{equation.3.2.53}{}} +\newlabel{2.62@cref}{{[equation][53][3,2]3.2.53}{[1][46][]46}} +\newlabel{2.63}{{3.2.54}{46}{Viscosity Solutions}{equation.3.2.54}{}} +\newlabel{2.63@cref}{{[equation][54][3,2]3.2.54}{[1][46][]46}} +\newlabel{2.64}{{3.2.55}{46}{Viscosity Solutions}{equation.3.2.55}{}} +\newlabel{2.64@cref}{{[equation][55][3,2]3.2.55}{[1][46][]46}} +\citation{BHJ21} +\citation{Beck_2021} +\newlabel{2.65}{{3.2.56}{47}{Viscosity Solutions}{equation.3.2.56}{}} +\newlabel{2.65@cref}{{[equation][56][3,2]3.2.56}{[1][46][]47}} +\newlabel{2.66}{{3.2.57}{47}{Viscosity Solutions}{equation.3.2.57}{}} +\newlabel{2.66@cref}{{[equation][57][3,2]3.2.57}{[1][47][]47}} +\newlabel{ungn}{{3.2.58}{47}{Viscosity Solutions}{equation.3.2.58}{}} +\newlabel{ungn@cref}{{[equation][58][3,2]3.2.58}{[1][47][]47}} +\newlabel{u0gn}{{3.2.59}{47}{Viscosity Solutions}{equation.3.2.59}{}} +\newlabel{u0gn@cref}{{[equation][59][3,2]3.2.59}{[1][47][]47}} +\newlabel{2.70}{{3.2.61}{47}{Viscosity Solutions}{equation.3.2.61}{}} +\newlabel{2.70@cref}{{[equation][61][3,2]3.2.61}{[1][47][]47}} +\newlabel{unu0}{{3.2.62}{48}{Viscosity Solutions}{equation.3.2.62}{}} +\newlabel{unu0@cref}{{[equation][62][3,2]3.2.62}{[1][48][]48}} +\newlabel{2.73}{{3.2.64}{48}{Viscosity Solutions}{equation.3.2.64}{}} +\newlabel{2.73@cref}{{[equation][64][3,2]3.2.64}{[1][48][]48}} +\newlabel{2.74}{{3.2.65}{48}{Viscosity Solutions}{equation.3.2.65}{}} +\newlabel{2.74@cref}{{[equation][65][3,2]3.2.65}{[1][48][]48}} +\newlabel{2.76}{{3.2.67}{49}{Viscosity Solutions}{equation.3.2.67}{}} +\newlabel{2.76@cref}{{[equation][67][3,2]3.2.67}{[1][48][]49}} +\newlabel{2.79}{{3.2.71}{49}{}{equation.3.2.71}{}} +\newlabel{2.79@cref}{{[equation][71][3,2]3.2.71}{[1][49][]49}} +\newlabel{2.81}{{3.2.73}{50}{}{equation.3.2.73}{}} +\newlabel{2.81@cref}{{[equation][73][3,2]3.2.73}{[1][50][]50}} +\newlabel{2.82}{{3.2.74}{50}{Viscosity Solutions}{equation.3.2.74}{}} +\newlabel{2.82@cref}{{[equation][74][3,2]3.2.74}{[1][50][]50}} +\newlabel{2.84}{{3.2.76}{50}{Viscosity Solutions}{equation.3.2.76}{}} +\newlabel{2.84@cref}{{[equation][76][3,2]3.2.76}{[1][50][]50}} +\citation{Beck_2021} +\citation{Beck_2021} +\newlabel{2.86}{{3.2.78}{51}{Viscosity Solutions}{equation.3.2.78}{}} +\newlabel{2.86@cref}{{[equation][78][3,2]3.2.78}{[1][50][]51}} +\newlabel{2.88}{{3.2.80}{51}{Viscosity Solutions}{equation.3.2.80}{}} +\newlabel{2.88@cref}{{[equation][80][3,2]3.2.80}{[1][51][]51}} +\newlabel{2.89}{{3.2.81}{51}{Viscosity Solutions}{equation.3.2.81}{}} +\newlabel{2.89@cref}{{[equation][81][3,2]3.2.81}{[1][51][]51}} +\newlabel{2.90}{{3.2.83}{52}{Viscosity Solutions}{equation.3.2.83}{}} +\newlabel{2.90@cref}{{[equation][83][3,2]3.2.83}{[1][52][]52}} +\newlabel{2.93}{{3.2.85}{52}{Viscosity Solutions}{equation.3.2.85}{}} +\newlabel{2.93@cref}{{[equation][85][3,2]3.2.85}{[1][52][]52}} +\newlabel{2.95}{{3.2.87}{53}{Viscosity Solutions}{equation.3.2.87}{}} +\newlabel{2.95@cref}{{[equation][87][3,2]3.2.87}{[1][52][]53}} +\@writefile{toc}{\contentsline {section}{\numberline {3.3}Solutions, characterization, and computational bounds to the Kolmogorov backward equations}{53}{section.3.3}\protected@file@percent } +\newlabel{thm:3.21}{{3.3.1}{53}{Existence and characterization of $u_d$}{theorem.3.3.1}{}} +\newlabel{thm:3.21@cref}{{[theorem][1][3,3]3.3.1}{[1][53][]53}} +\newlabel{3.3.1}{{3.3.1}{53}{Existence and characterization of $u_d$}{equation.3.3.1}{}} +\newlabel{3.3.1@cref}{{[equation][1][3,3]3.3.1}{[1][53][]53}} +\newlabel{3.102}{{3.3.2}{53}{Existence and characterization of $u_d$}{equation.3.3.2}{}} +\newlabel{3.102@cref}{{[equation][2][3,3]3.3.2}{[1][53][]53}} +\newlabel{lem:3.19}{{3.3.1.1}{54}{}{corollary.3.3.1.1}{}} +\newlabel{lem:3.19@cref}{{[corollary][1][]3.3.1.1}{[1][54][]54}} +\newlabel{3.3.2}{{3.3.2}{54}{}{theorem.3.3.2}{}} +\newlabel{3.3.2@cref}{{[lemma][2][3,3]3.3.2}{[1][54][]54}} +\newlabel{3.3.7}{{3.3.7}{54}{}{equation.3.3.7}{}} +\newlabel{3.3.7@cref}{{[equation][7][3,3]3.3.7}{[1][54][]54}} +\newlabel{3.3.12}{{3.3.12}{55}{Solutions, characterization, and computational bounds to the Kolmogorov backward equations}{equation.3.3.12}{}} +\newlabel{3.3.12@cref}{{[equation][12][3,3]3.3.12}{[1][55][]55}} +\newlabel{3.3.13}{{3.3.13}{55}{Solutions, characterization, and computational bounds to the Kolmogorov backward equations}{equation.3.3.13}{}} +\newlabel{3.3.13@cref}{{[equation][13][3,3]3.3.13}{[1][55][]55}} +\newlabel{3.3.15}{{3.3.15}{56}{Solutions, characterization, and computational bounds to the Kolmogorov backward equations}{equation.3.3.15}{}} +\newlabel{3.3.15@cref}{{[equation][15][3,3]3.3.15}{[1][56][]56}} +\citation{bhj20} +\newlabel{3.3.5}{{3.3.5}{57}{}{theorem.3.3.5}{}} +\newlabel{3.3.5@cref}{{[claim][5][3,3]3.3.5}{[1][57][]57}} +\newlabel{3.2.21}{{3.3.18}{57}{Solutions, characterization, and computational bounds to the Kolmogorov backward equations}{equation.3.3.18}{}} +\newlabel{3.2.21@cref}{{[equation][18][3,3]3.3.18}{[1][57][]57}} +\newlabel{3.3.20}{{3.3.20}{58}{Solutions, characterization, and computational bounds to the Kolmogorov backward equations}{equation.3.3.20}{}} +\newlabel{3.3.20@cref}{{[equation][20][3,3]3.3.20}{[1][58][]58}} +\@setckpt{u_visc_sol}{ +\setcounter{page}{59} +\setcounter{equation}{20} +\setcounter{enumi}{3} +\setcounter{enumii}{0} +\setcounter{enumiii}{0} +\setcounter{enumiv}{0} +\setcounter{footnote}{0} +\setcounter{mpfootnote}{0} +\setcounter{part}{1} +\setcounter{chapter}{3} +\setcounter{section}{3} +\setcounter{subsection}{0} +\setcounter{subsubsection}{0} +\setcounter{paragraph}{0} +\setcounter{subparagraph}{0} +\setcounter{figure}{0} +\setcounter{table}{0} +\setcounter{@pps}{0} +\setcounter{@ppsavesec}{0} +\setcounter{@ppsaveapp}{0} +\setcounter{AM@survey}{0} +\setcounter{parentequation}{0} +\setcounter{section@level}{1} +\setcounter{Item}{55} +\setcounter{Hfootnote}{0} +\setcounter{bookmark@seq@number}{18} +\setcounter{NAT@ctr}{0} +\setcounter{ALG@line}{0} +\setcounter{ALG@rem}{0} +\setcounter{ALG@nested}{0} +\setcounter{ALG@Lnr}{1} +\setcounter{ALG@blocknr}{1} +\setcounter{ALG@storecount}{0} +\setcounter{ALG@tmpcounter}{0} +\setcounter{lstnumber}{1} +\setcounter{theorem}{5} +\setcounter{corollary}{0} +\setcounter{lstlisting}{0} +} diff --git a/Dissertation_unzipped/u_visc_sol.pdf b/Dissertation_unzipped/u_visc_sol.pdf new file mode 100644 index 0000000..afe017a Binary files /dev/null and b/Dissertation_unzipped/u_visc_sol.pdf differ diff --git a/Dissertation_unzipped/u_visc_sol.tex b/Dissertation_unzipped/u_visc_sol.tex new file mode 100644 index 0000000..986bad0 --- /dev/null +++ b/Dissertation_unzipped/u_visc_sol.tex @@ -0,0 +1,1061 @@ +\chapter{That $u$ is a Viscosity Solution} + +We can extend the work for the heat equation to generic parabolic partial differential equations. We do this by first introducing viscosity solutions to Kolmogorov PDEs as given in Crandall \& Lions \cite{crandall_lions} and further extended, esp. in \cite{Beck_2021}. +%\subsection{The case without $f$} +%\subsection{Linear Algebra Preliminaries} +%\begin{lemma} +% For a matrix $A \in \R^{m\times n}$, $A[A]^*$ is symmetric. +%\end{lemma} +%\begin{proof} +% Note that $[A]_{i,j} = [A^*]_{j,i}$, and hence: +% \begin{align} +% [AA^*]_{i,j} = \sum^n_{k=1} [A]_{i,k}[A^*]_{k,j} = [AA^*]_{j,i} +% \end{align} +%\end{proof} +%\begin{lemma} +% A symmetric matrix $A\in \R^{m\times n}$: +% \begin{enumerate}[label = (\roman*)] +% \item Has only real eigenvalues. +% \item Is always diagonalizable. +% \end{enumerate} +%\end{lemma} +%\begin{proof} +% \textit{(i)} Assume $\lambda \in \mathbb{C}$ is an eigenvalue for the symmetric matrix A. This indicates that $Av = \lambda v$, where $v\neq 0$ for some $v$ in our vector space and further that: +% \begin{align} +% v^*Av = \lambda v^*v +% \end{align} +% where $v^* = \overline{v}^T$. +% Note that since $A$ is symmetric we have: +% \begin{align} +% \lambda v^* v = v^*Av = \lp v^*Av\rp^* = \overline{\lambda}v^*v +% \end{align} +% This indicates that $\lambda = \overline{\lambda}$ whence $\lambda$ is real. +% \medskip +% +% \textit{(ii)} Assume $A$ is not diagonalizable. Then there must exist some eigenvalue $\lambda_i$ of order 2 or more. This would indicate that there is some repeated eigenvalue $\lambda$, and $v\neq 0$ such that: +% \begin{align} +% (A-\lambda I)^2v = 0 & \text{ and }(A-\lambda I)v \neq 0 +% \end{align} +% +% But note that: +% \begin{align} +% 0 = v^*(A-\lambda I)^2v = v^*(A-\lambda I)(A - \lambda I) \neq 0 +% \end{align} +% Leading to a contradiction. Thus there are no generalized eigenvectors of order 2 or higher, and so $A$ must be diagonalizable. +%\end{proof} +\section{Some Preliminaries} + We take work previously pioneered by \cite{Ito1942a} and \cite{Ito1946}, and then seek to re-apply concepts first applied in \cite{Beck_2021} and \cite{BHJ21}. + \begin{lemma}\label{lemma:2.7} + Let $d,m \in \N$, $T \in (0,\infty)$. Let $\mu \in C^{1,2}([0,T] \times \R^d, \R^d)$ and $\sigma \in C^{1,2}([0,T] \times \R^d, \R^{d\times m})$ satisfying that they have non-empty compact supports and let $\mathfrak{S}= \supp(\mu)\cup \supp(\sigma) \subseteq [0,T] \times \R^d$. Let $( \Omega, \mathcal{F}, \mathbb{P}, ( \mathbb{F}_t )_{t \in [0,T]})$ be a filtered probability space satisfying usual conditions. Let $W:[0,T ]\times \Omega \rightarrow \R^m$ be a standard $(\mathbb{F}_t)_{t\in [0,T]}$ -Brownian motion, and let $\mathcal{X}:[0,T] \times \Omega \rightarrow \R^d$ be an $(\mathbb{F}_t)_{t\in [0,T]}$-adapted stochastic process with continuous sample paths satisfying for all $t \in [0,T]$ with $\mathbb{P}$-a.s. that: + \begin{align} + \mathcal{X}_t = \mathcal{X}_0 + \int^t_0 \mu(s, \mathcal{X}_s) ds + \int^t_0 \sigma(s, \mathcal{X}_s)dW_s + \end{align} + It then holds that: + \begin{enumerate}[label = (\roman*)] + \item $\lb \lp \mathbb{P} \lp \mathcal{X}_0 \not \in \mathfrak{S} \rp = 1 \rp \implies \lp \mathbb{P} \lp \forall t \in [0,T]: \mathcal{X}_t = \mathcal{X}_0 \rp =1 \rp \rb $ + \item $\lb \lp \mathbb{P} \lp \mathcal{X}_0 \in \mathfrak{S} \rp = 1 \rp \implies \lp \mathbb{P} \lp \forall t \in [0,T]: \mathcal{X}_t \in \mathfrak{S} \rp = 1 \rp \rb$ + \end{enumerate} + \end{lemma} + \begin{proof} + Assume that $\mathbb{P}(\mathcal{X}_0 \not \in \mathfrak{S} ) =1$, meaning that the particle almost surely starts outside $\mathfrak{S}$. It is then the case that $\mathbb{P}( \forall t \in [0, T]: \|\mu(t,\mathcal{X}_0)\|_E + \|\sigma(t,\mathcal{X}_0)\|_F =0)=1$ as the $\mu$ and $\sigma$ are outside their supports, and we integrate over zero over time. + \medskip + + It is then the case that: + \begin{align} + \mathcal{Y}:= \lp \lb 0,T \rb \times \Omega \ni \lp t, \omega \rp \mapsto \mathcal{X}_0(\omega)\in \R^d \rp + \end{align} + is an $(\mathbb{F}_t)_{t \in [0,T]}$ adapted stochastic process with continuous sample paths satisfying that for all $t \in [0,T]$ with $\mathbb{P}$-almost surety that: + \begin{align} + \mathcal{Y}_t = \mathcal{X}_0 + \int^t_0 0 ds + \int^t_0 0 dW_s &= \mathcal{X}_0 + \int^t_0 \mu(s,\mathcal{X}_0)ds + \int^t_0 \sigma(s, \mathcal{X}_0) dW_s \nonumber\\ + &= \mathcal{X}_0 + \int^t_0 \mu(s,\mathcal{Y}_s) ds + \int^t_0 \sigma(s,\mathcal{Y}_s) dW_s + \end{align} + Note that since $\mu \in C^{1,2}([0, T] \times \R^d, \R^d)$ and $\sigma \in C^{1,2}([0, T] \times \R^d, \R^{d \times m})$, and since continuous functions are locally Lipschitz, and since this is especially true in the space variable for $\mu$ and $\sigma$, the fact that $\mathfrak{S}$ is compact and continuous functions over compact sets are Lipschitz and bounded, and \cite[Theorem~5.2.5]{karatzas1991brownian} allows us to conclude that strong uniqueness holds, that is to say: + \begin{align} + \mathbb{P}\lp \forall t \in [0,T]: \mathcal{X}_t = \mathcal{X}_0 \rp = \mathbb{P} \lp \forall t \in [0,T]: \mathcal{X}_t = \mathcal{Y}_t \rp=1 + \end{align} + establishing the case (i). + + Assume now that $\mathbb{P}(\mathcal{X}_0 \in \mathfrak{S})=1$ that is to say that the particle almost surely starts inside $\mathfrak{S}$. We define $\tau: \Omega \rightarrow [0,T]$ as $\tau= \inf\{t \in [0,T]: \mathcal{X}_t \not \in \overline{\mathfrak{S}}\}$. $\tau$ is an $(\mathbb{F}_t)_{t\in [0,T]}$-adapted stopping time. On top of $\tau$ we can define $\mathcal{Y}:[0,T] \times \Omega \rightarrow\R^d$, for all $t\in [0,T]$, $\omega \in \Omega$ as $\mathcal{Y}_t(\omega) =\mathcal{X}_{\min \{t,\tau\}}(\omega)$. $\mathcal{Y}$ is thus an $(\mathbb{F}_t)_{t \in [0,T]}$-adapted stochastic process with continuous sample paths. Note however that for $t > \tau$ it is the case $\|\mu(t, \mathcal{Y}_t)+\sigma(t, \mathcal{Y}_t) \|_E=0$ as we are outside their supports. For $t < \tau$ it is also the case that $\mathcal{Y}_t = \mathcal{X}_t$. This yields with $\mathbb{P}$-a.s. that: + \begin{align} + \mathcal{Y}_t = \mathcal{X}_{\min\{t,\tau \}} &= \mathcal{X}_0 + \int^{\min\{t,\tau\}}_0 \mu(s, \mathcal{X}_s) ds + \int^{\min\{t,\tau\}}_0 \sigma(s,\mathcal{X}_s)dW_s \nonumber \\ + &=\mathcal{X}_0 + \int^t_0 \mathbbm{1}_{\{0 < s \leqslant \tau \}} \mu (s, \mathcal{X}_s) ds+\int^t_0 \mathbbm{1}_{\{0 0$, there exists $\delta > 0$ such that: + \begin{align} + f(x) < f(x_0) + \ve \text{ for all } x \in B\lp x_0, \delta \rp \cap U + \end{align} +\end{definition} +\begin{definition}[Lower semi-continuity] + A function $f: U \rightarrow \R$ is lower semi-continuous at $x_0$ if for every $\varepsilon > 0$, there exists $\delta > 0$ such that: + \begin{align} + f(x) > f(x_0) - \varepsilon \text{ for all } x \in B\lp x_0, \delta \rp \cap U + \end{align} +\end{definition} +\begin{corollary}\label{sumofusc} + Given two upper semi-continuous functions $f,g: \R^d \rightarrow \R$, their sum $(f+g): \R^d \rightarrow \R$ is also upper semi-continuous. +\end{corollary} +\begin{proof} + From definitions, at any given $x_0 \in \R^d$, for any $\ve \in (0, \infty)$ there exist neighborhoods $U$ and $V$ around $x_0$ such that: + \begin{align} + \lp \forall x \in U \rp \lp f(x) \leqslant f(x_0) + \varepsilon \rp \\ + \lp \forall x \in V \rp \lp g(x) \leqslant g(x_0) + \varepsilon \rp + \end{align} + and hence: + \begin{align} + \lp \forall x \in U \cap V \rp \lp f(x) + g(x) \leqslant f(x_0)+g(x_0) + 2\varepsilon \rp + \end{align} +\end{proof} +\begin{corollary}\label{neglsc} + Given an upper semi-continuous function $f:\R^d \rightarrow \R$, it is the case that $(-f):\R^d \rightarrow \R$ is lower semi-continuous. +\end{corollary} + +\begin{proof} + Let $f:\R^d \rightarrow \R$ be upper semi-continuous. At any given $x_0 \in \R^d$, for any $\ve \in (0, \infty)$ there exists a neighborhood $U$ around $x_0$ such that: + \begin{align} + \lp \forall x \in U \rp \lp f(x) \leqslant f(x_0) + \ve \rp + \end{align} + This also means that: + \begin{align} + &\lp \forall x \in U \rp \lp -f(x) \geqslant -f(x_0) - \ve \rp \nonumber\\ + \end{align} + This completes the proof. +\end{proof} + +\begin{definition}[Degenerate Elliptic Functions] Let $d \in \N$, $T \in \lp 0, \infty \rp$, let $\mathcal{O} \subseteq \R^d$ be a non-empty open set, and let $\la \cdot, \cdot \ra: \R^d \times \R^d \rightarrow \R$ be the standard Euclidean inner product on $\R^d$. $G$ is degenerate elliptic on $\lp 0,T \rp \times \mathcal{O} \times \R \times \R^d \times \mathbb{S}_d$ if and only if: +\begin{enumerate}[label = (\roman*)] + \item $G: \lp 0,T \rp \times \mathcal{O} \times \R \times \R^d \times \mathbb{S}_d \rightarrow \R$ is a function, and + \item for all $t \in \lp 0 ,T \rp$, $x \in \mathcal{O}$, $r \in \R$, $p \in \R^d$, $A,B \in \mathbb{S}_d$, with $\forall y \in \R^d$: $\la Ay,y \ra \leqslant \la By, y \ra$ that $G(t,x,r,p,A) \leqslant G(t,x,r,p,B)$. +\end{enumerate} +\end{definition} +\begin{remark} + Let $t \in (0,T)$, $x \in \R^d$, $r\in \R$, $p\in \R^d$, $A \in \mathbb{S}_d$. Let $u \in C^{1,2} ([0,T] \times \R^d, \R)$, and let $\sigma: \R^d \rightarrow \R^{d\times d}$ and $\mu: \R^d \rightarrow \R^d$ be infinitely often differentiable. The function $G:(0,T) \times \R^d \times \R \times \R^d \times \mathbb{S}_d \rightarrow \R$ given by: + \begin{align} + G(t,x,r,p,A) = \frac{1}{2} \Trace \lp \sigma(x) \lb \sigma(x)\rb^* \lp \Hess_x u \rp \lp t,x \rp \rp + \la \mu(t,x), \nabla_xu\lp t,x\rp \ra + \end{align} + where $\lp t,x,u(t,x),\mu(x), \sigma(x) \lb \sigma(x) \rb^* \rp \in \lp 0,T\rp \times \R^d \times \R \times \R^d \times \mathbb{S}_d$, is degenerate elliptic. +\end{remark} + +\begin{lemma}\label{negdegel} + Given a function $G: (0,T) \times \mathcal{O} \times \R \times \R^d \times \mathbb{S}_d \rightarrow \R$ that is degerate elliptic on $(0,T) \times \mathcal{O} \times \R \times \R^d \times \mathbb{S}_d$ it is also the case that $H: (0,T) \times \mathcal{O} \times \R \times \R^d \times \mathbb{S}_d \rightarrow \R$ given by $H(t,x,r,p,A)=-G(t,x,-r, -p,-A)$ is degenerate elliptic on $(0,T) \times \mathcal{O} \times \R \times \R^d \times \mathbb{S}_d$. +\end{lemma} + +\begin{proof} + Note that $H$ is a function. Assume for $y\in \R^d$ it is the case that $\la Ay, y \ra \leqslant \la By,y \ra$ then it is also the case by (\ref{bigsum}) that $\la -Ay,y\ra \geqslant \la -By, y \ra$ for $y\in \R^d$. However since $G$ is monotoically increasing over the subset of $(0,T) \times \mathcal{O} \times \R \times \R^d \times \mathbb{S}_d$ where $\la Ay,y \ra \leqslant \la By,y \ra$ then it is also the case that $H(t,x,r,p,A) =-G(t,x,-r,-p, -A) \geqslant -G(t,x,-r,-p,-B)=H(t,x,r,p,B)$. + + + +\end{proof} + +\begin{definition}[Viscosity subsolutions]\label{def:viscsubsolution} + Let $d \in \N$, $T \in \lp 0, \infty \rp$, let $\mathcal{O} \subseteq \R^d$ be a non-empty open set, and let $G: \lp 0, T \rp \times \mathcal{O} \times \R \times \R^d \times\mathbb{S}_d \rightarrow \R$ be degenrate elliptic. Then we say that $u$ is a viscosity solution of $\lp \frac{\partial}{\partial t} u \rp \lp t,x \rp + G \lp t,x,u(t,x), \lp \nabla_x u \rp \lp t,x \rp, \lp \Hess_x u \rp \lp t,x \rp \rp \geqslant 0$ for $\lp t,x, \rp \in \lp 0,T \rp \times \mathcal{O}$ if and only if there exists a set $A$ such that: + \begin{enumerate}[label = (\roman*)] + \item we have that $\lp 0,T \rp \times \mathcal{O} \subseteq A$. + \item we have that $u: A \rightarrow \R$ is an upper semi-continuous function from $A$ to $\R$, and + \item we have that for all $t\in \lp 0, T \rp$, $x \in \mathcal{O}$, $\phi \in C^{1,2} \lp \lp 0,T \rp \times \mathcal{O}, \R \rp$ with $\phi (t,x) = u (t,x)$ and $\phi \geqslant u$ that: + \begin{align} + \lp \frac{\partial}{\partial t} u_d \rp \lp t,x \rp + G \lp t,x, \phi(t,x), \lp \nabla_x \phi \rp \lp t,x \rp, \lp \Hess_x \phi \rp \lp t,x \rp \rp \geqslant 0 + \end{align} + \end{enumerate} +\end{definition} + +\begin{definition}[Viscosity supersolutions]\label{def:viscsupsolution} + Let $d \in \N$, $T \in \lp 0, \infty \rp$, let $\mathcal{O} \subseteq \R^d$ be a non-empty open set, and let $G: \lp 0, T \rp \times \mathcal{O} \times \R \times \R^d \times\mathbb{S}_d \rightarrow \R$ be degenrate elliptic. Then we say that $u$ is a viscosity solution of $\lp \frac{\partial}{\partial t} u \rp \lp t,x \rp + G \lp t,x,u(t,x), \lp \nabla_x u \rp \lp t,x \rp, \lp \Hess_x u \rp \lp t,x \rp \rp \leqslant 0$ for $\lp t,x, \rp \in \lp 0,T \rp \times \mathcal{O}$ if and only if there exists a set $A$ such that: + \begin{enumerate}[label = (\roman*)] + \item we have that $\lp 0,T \rp \times \mathcal{O} \subseteq A$. + \item we have that $u: A \rightarrow \R$ is an upper semi-continuous function from $A$ to $\R$, and + \item we have that for all $t\in \lp 0, T \rp$, $x \in \mathcal{O}$, $\phi \in C^{1,2} \lp \lp 0,T \rp \times \mathcal{O}, \R \rp$ with $\phi (t,x) = u (t,x)$ and $\phi \leqslant u$ that: + \begin{align} + \lp \frac{\partial}{\partial t} u_d \rp \lp t,x \rp + G \lp t,x, \phi(t,x), \lp \nabla_x \phi \rp \lp t,x \rp, \lp \Hess_x \phi \rp \lp t,x \rp \rp \leqslant 0 + \end{align} + \end{enumerate} +\end{definition} +\begin{definition}[Viscosity solution]\label{def:viscsolution} + Let $d \in \N$, $T \in \lp 0, \infty \rp$, $\mathcal{O} \subseteq \R^d$ be a non-empty open set and let $G: \lp 0, T \rp \times \mathcal{O} \times R \times \R^d \times \mathbb{S}_d \rightarrow \R$ be degenerate elliptic. Then we say that $u_d$ is a viscosity solution to $\lp \frac{\partial }{\partial t} u_d \rp (t,x) + G(t,x,u(t,x), \nabla_x(x,t), (\Hess_x u_d)(t,x))$ if and only if: + \begin{enumerate}[label = (\roman*)] + \item $u$ is a viscosity subsolution of $\lp \frac{\partial }{\partial t} u_d \rp (t,x) + G(t,x,u(t,x), \nabla_x(x,t), (\Hess_x u_d)(t,x))=0$ for $(t,x) \in (0,T) \times \mathcal{O}$ + \item $u$ is a viscosity supersolution of $\lp \frac{\partial }{\partial t} u_d \rp (t,x) + G(t,x,u(t,x), \nabla_x(x,t), (\Hess_x u_d)(t,x))=0$ for $(t,x) \in (0,T) \times \mathcal{O}$ + \end{enumerate} + +\end{definition} + +% +%\begin{lemma} +% Let $T\in (0, \infty)$, let $\left( \Omega, \mathcal{F}, \mathbb{P} \right)$ be a probability space, let $\sigma_d: \R^d \rightarrow \R^{d\times d}$, $d\in \N$, be infinitely often differentiable functions, let $u_d \in C^{1,2} \left( \left[ 0,T \right] \times \R^d, \R \right)$, $d\in \N$, satisfy for all $d\in \N$, $t \in \left[ 0,T \right]$, $x \in \R^d$ that: +% \begin{align} +% \left( \frac{\partial}{\partial t} u_d \right)\left( t,x \right) + \text{Trace} \left( \sigma(x) \left[ \sigma(x) \right]* \left( \text{Hess}_x u_d \right)(t,x) \right) =0 +% \end{align} +% +%Let $W^d: [0,T] \times \Omega \rightarrow \R^d$, $d\in \N$, be standard Brownian motions, and let $\mathcal{X}^{d,t,x}: [t,T] \times \Omega \rightarrow \R^d$, $d \in \N$, $t \in [0,T]$, $x \in \R^d$, be a stochastic process with continuous sample paths satisfying that for all $d\in \N$, $t\in [0,T]$, $s \in [t,T]$, $x \in \R^d$, we have $\mathbb{P}$-a.s. that: +%\begin{align} +% \mathcal{X}^{d,t,x}_s = x + \int^t_s \sqrt{2} \sigma \left( \mathcal{X}^{d,t,x} \right) dW^d_r +%\end{align} +%Then for all $d\in \N$, $t \in [0,T]$, $x \in \R^d$ it holds that: +%\begin{align} +% u_d \left( t,x \right) = \E \left[ u_d \left( T, \mathcal{X}^{d,t,x}_T \right) \right] +%\end{align} +%\end{lemma} +% +%First we consider the case where $\sigma: \R^d \rightarrow \R^{d\times d}$ is the constant function: +%\begin{align*} +%\sigma: \begin{pmatrix} +% x_1 \\ +% x_2 \\ +% \vdots\\ +% x_d +%\end{pmatrix} \rightarrow \begin{pmatrix} +% c_{1,1} & c_{2,2} & \hdots & c_{1,d}\\ +% c_{2,1} & & & \vdots \\ +% \vdots & & \ddots\\ +% c_{d,1} & \hdots & & c_{d,d} +%\end{pmatrix} +%\end{align*} +% +%and hence $\sigma \sigma^*$ is a $d \times d$ matrix where $[\sigma \sigma^*]_{i,j} = \sum^d_{k=1}\left( c_{i,k} \times c_{j,k} \right)$. Observe also that: +%\begin{align*} +% \text{Hess}_x u_d &= \begin{pmatrix} +% \frac{\partial^2 u_d(t,x)}{\partial x_1 \partial x_1} & \cdots & \frac{\partial^2 u_d(t,x)}{\partial x_1 \partial x_d} \\ +% \vdots & & \vdots \\ +% \frac{\partial^2 u_d(t,x)}{\partial x_d \partial x_1} & \cdots & \frac{\partial^2 u_d(t,x )}{\partial x_d^2} +% \end{pmatrix} +%\end{align*} +% +%Their product is the matrix +%\begin{align} +%[(\sigma [\sigma^*])(\text{Hess}_x u)(t,x)]_{i,j} = \sum^d_{l=1}\left( \sum^d_{k=1} \left( c_{i,k} \times c_{l,k} \right) \left(\frac{\partial u_d(t,x)}{\partial x_l \partial x_j} \right) \right) +%\end{align} +%And hence: +%\begin{align} +% \text{Trace}[(\sigma [\sigma^*])(\text{Hess}_x u)(t,x)] +% &= \sum^d_{m=1} \left(\sum^d_{l=1}\left( \sum^d_{k=1} \left( c_{m,k} \times c_{l,k} \right) \left(\frac{\partial u_d(t,x)}{\partial x_l \partial x_m} \right) \right) \right) \nonumber\\ +% &= \sum^d_{m=1} \left(\sum^d_{l=1}\left( \sum^d_{k=1} \left( c_{m,k} \times c_{l,k} \right) \right)\left(\frac{\partial u_d(t,x)}{\partial x_l \partial x_m} \right) \right) \nonumber\\ +% &= \sum^d_{m=1} \sum^d_{l=1}\mathfrak{C}^{m,d,l} \frac{\partial u_d(t,x)}{\partial x_l \partial x_m} +%\end{align} +%\medskip +% +%Where $\mathfrak{C}^{m,d,l} = \sum^d_{k=1} \left( c_{m,k}\times c_{l,k} \right)$ +%\medskip +% +%Note that for each row it is the case that: +% +% +% +%This also renders (2.12) as: +%\begin{align} +%\left( \frac{\partial}{\partial t} u_d \right)\left( t,x \right) + \sum^d_{m=1} \sum^d_{l=1}\mathfrak{C}^{m,d,l} \frac{\partial u_d(t,x)}{\partial x_l \partial x_m} = 0 +%\end{align} +% +%This renders (2.13) as: +% +%\begin{align} +% \mathcal{X}^{d,t,x}_s &= \begin{pmatrix} +% x_1 \\ +% x_2 \\ +% \vdots\\ +% x_d +% \end{pmatrix} + \int^t_s \sqrt{2} \begin{pmatrix} +% c_{1,1} & c_{1,2} & \hdots & c_{1,d}\\ +% c_{2,1} & & & \vdots \\ +% \vdots & & \ddots\\ +% c_{d,1} & \hdots & & c_{d,d} +% \end{pmatrix} dW^d_r \nonumber\\ +% &= \begin{pmatrix} +% x_1 \\ +% x_2 \\ +% \vdots\\ +% x_d +% \end{pmatrix} + \sqrt{2} \begin{pmatrix} +% c_{1,1} & c_{1,2} & \hdots & c_{1,d}\\ +% c_{2,1} & & & \vdots \\ +% \vdots & & \ddots\\ +% c_{d,1} & \hdots & & c_{d,d} +% \end{pmatrix} W^d_{t-s} +%\end{align} +% +%\medskip +% +%Note that $W^d \in \R^d$, and specifically let $W^d_{t-s}$ be the $d$-dimensional vector: +%\begin{align} +% W^d_{t-s} = \begin{pmatrix} +% W_{1,t-s} \\ +% W_{2,t-s} \\ +% \vdots \\ +% W_{d,t-s} +% \end{pmatrix} +%\end{align} +%\medskip +% +%This then renders (2.16) as: +%\begin{align} +% \mathcal{X}^{d,t,x}_s &= +% \begin{pmatrix} +% x_1 \\ +% x_2 \\ +% \vdots\\ +% x_d +% \end{pmatrix} + \sqrt{2} \begin{pmatrix} +% c_{1,1} & c_{1,2} & \hdots & c_{1,d}\\ +% c_{2,1} & & & \vdots \\ +% \vdots & & \ddots\\ +% c_{d,1} & \hdots & & c_{d,d} +% \end{pmatrix} \begin{pmatrix} +% W_{1,t-s} \\ +% W_{2,t-s} \\ +% \vdots \\ +% W_{d,t-s} +% \end{pmatrix} \nonumber \\ +% &= \begin{pmatrix} +% x_1 \\ +% x_2 \\ +% \vdots\\ +% x_d +% \end{pmatrix} + \sqrt{2} \begin{pmatrix} +% \sum^d_{i=1}\left(c_{1,i} W_{i,t-s}\right) \\ +% \sum^d_{i=1}\left(c_{2,i} W_{i,t-s}\right) \\ +% \vdots \\ +% \sum^d_{i=1}\left(c_{d,i} W_{i,t-s}\right) \\ +% \end{pmatrix} \nonumber \\ +% &= \begin{pmatrix} +% x_1 + \sqrt{2}\sum^d_{i=1}\left(c_{1,i} W_{i,t-s}\right) \\ +% x_2 + \sqrt{2}\sum^d_{i=1}\left(c_{2,i} W_{i,t-s}\right) \\ +% \vdots \\ +% x_d + \sqrt{2}\sum^d_{i=1}\left(c_{d,i} W_{i,t-s}\right) \\ +% \end{pmatrix} +%\end{align} +% +%Let $\mathfrak{W}^{i,j,d}_{t-s} = \sum^d_{i=1} \left( c_{j, i} W_{i,t-s}\right)$, given that the product of a Brownian motion with a constant is a Brownian motion and the sum of Brownian motion is also a Brownian motion, we have that: $\mathfrak{W}^{i,j,d}_{t-s} = \sum^d_{i=1} \left( c_{j, i} W_{i,t-s}\right)$ is also a Brownian motion. +%\medskip +% +%For each row $j$ we therefore have $x_k + \sqrt{2} \mathfrak{W}^{i,j,d}_{t-s}$ +% +\begin{lemma} \label{maxviscosity} + Let $d\in \N$, $T \in \lp 0,\infty \rp$, $\mathfrak{t} \in \lp 0,T \rp$, let $\mathcal{O} \subseteq \R^d$ be an open set, let $\mathfrak{r} \in \mathcal{O}$, $\phi \in C^{1,2}\lp \lp 0,T \rp \times \mathcal{O},\R \rp$, let $G: \lp 0,T \rp \times \mathcal{O} \times \R \times \R^d \times \mathbb{S}_d \rightarrow \R$ be degenerate elliptic and let $u_d (0,T) \times \mathcal{O} \rightarrow \R$ be a viscosity solution of $\lp \frac{\partial}{\partial t} u_d \rp \lp t,x \rp + G \lp t,x,u(t,x), \lp \nabla_x u_D \rp \lp t,x \rp, \lp \Hess_x u_d \rp \lp t,x \rp \rp \geqslant 0$ for $(t,x) \in (0,T) \times \mathcal{O}$, and assume that $u-\phi$ has a local maximum at $(\mathfrak{t}, \mathfrak{r}) \in (0,T) \times \mathcal{O}$, then: + \begin{align} + \lp \frac{\partial}{\partial t} \phi \rp \lp \mathfrak{t},\mathfrak{r}\rp + G \lp \mathfrak{t}, \mathfrak{r}, u(\mathfrak{t}, \mathfrak{r}), \lp \nabla _x \phi \rp \lp \mathfrak{t}, \mathfrak{r} \rp, \lp \Hess_x \phi\rp\lp \mathfrak{t}, \mathfrak{r} \rp \rp \geqslant 0 + \end{align} +\end{lemma} +\begin{proof} + That $u$ is upper semi-continuous ensures that there exists as a neighborhood $U$ around $(\mathfrak{t}, \mathfrak{r})$ and $\psi \in C^{1,2} ((0,T) \times \mathcal{O},\R)$ where: + \begin{enumerate}[label = (\roman*)] + \item for all $(t,x) \in (0,T) \times \mathcal{O}$ that $u(\mathfrak{t}, \mathfrak{r}) - \psi(\mathfrak{t}, \mathfrak{r}) \geqslant u(t,x) - \psi(t,x)$ + \item for all $(t,x) \in U$ that $\phi(t,x) = \phi(t,x)$. + \end{enumerate} + We therefore obtain that: + \begin{align} + &\lp \frac{\partial}{\partial t} \phi \rp \lp \mathfrak{t}, \mathfrak{r} \rp + G \lp \mathfrak{t}, \mathfrak{r}, u(\mathfrak{t},\mathfrak{r}), (\nabla_x) (\mathfrak{t}, \mathfrak{r}), (\Hess_x \phi)(\mathfrak{t}, \mathfrak{r}) \rp \nonumber \\ + &= \lp \frac{\partial}{\partial t} \psi \rp \lp \mathfrak{t}, \mathfrak{r} \rp + G \lp \mathfrak{t}, \mathfrak{r}, u(\mathfrak{t},\mathfrak{r}), (\nabla_x) (\mathfrak{t}, \mathfrak{r}), (\Hess_x \psi)(\mathfrak{t}, \mathfrak{r}) \rp \geqslant 0 + \end{align} +\end{proof} +\begin{lemma}\label{ungeq0} + Let $d \in \N$, $T \in (0, \infty)$, let $\mathcal{O} \subseteq \R^d$ be a non-empty open set, let $u_n:(0,T) \times \mathcal{O} \rightarrow \R$, $n \in \N_0$ be functions, let $G_n: (0,T) \times \mathcal{O} \times \R \times \R^d \times \mathbb{S}_d \rightarrow \R$, $n \in \N$ be degenerate elliptic, assume that $G_\infty$ is upper semi-continuous for all non-empty compact $\mathcal{K} \subseteq (0,T) \times \mathcal{O} \times \R \times \R^d \times \mathbb{S}_d$ that: + \begin{align} + \limsup_{n \rightarrow \infty} \lb\sup_{(t,x,r,p,A) \in \mathcal{K}} \lp \lv u_n(t,x) -u_0(t,x) \rv + \lv G_n(t,x,r,p,A) - G_0(t,x,r,p,A) \rv \rp \rb=0 \label{limitofun} + \end{align} + and assume for all $n\in \N$ that $u_n$ is a viscosity solution of: + \begin{align} + \lp \frac{\partial}{\partial t} u_n \rp \lp t,x \rp + G_n \lp t,x,u_n(t,x),(\nabla_x u_n)(t,x), (\Hess_x u_n)(t,x) \rp \geqslant 0 + \end{align} + then $u_0$ is a viscosity solution of: + \begin{align}\label{hessungeq0} + \lp \frac{\partial}{\partial t} u_0 \rp \lp t,x \rp + G_n \lp t,x,u_0(t,x),(\nabla_x u_0)(t,x), (\Hess_x u_0)(t,x) \rp \geqslant 0 + \end{align} +\end{lemma} +\begin{proof} + Let $(t_o, x_o) \in (0,T) \times \mathcal{O}$. Let $\phi_\epsilon \in C^{1,2}((0,T) \times \mathcal{O}, \R)$ satisfy for all $\epsilon \in (0, \infty)$, $s \in (0,T)$, $y \in \mathcal{O}$ that $\phi_0(t_0,x_0) = u_0(t_0,x_0)$, $\phi_0(t_0,x_0) \geqslant u_0(t_0,x_0)$, and: + \begin{align}\label{phieps} + \phi_\varepsilon(s,y) = \phi_o(s,y) + \varepsilon\lp \lv s - t_0 \rv + \| y - x_0 \|_E \rp + \end{align} + Let $\delta \in (0,\infty)$ be such that $\{(s,y) \in \R^d \times \R: \max \lp|s-t_0|^2, \|y-x_0\|_E^2 \rp\leqslant \delta \}$. Note that this and (\ref{limitofun}) + then imply for all $\varepsilon \in (0,\infty)$ there exists an $\nu_\varepsilon \in \N$ such that for all $n \geqslant \nu_\varepsilon$, and $\max \lp|s-t_0|, \|y-x_0\|_E \rp\leqslant \delta$, it is the case that: + \begin{align} + \sup \lp \lv u_n(s,y) - u_0(s,y) \rv \rp \leqslant \frac{ \varepsilon \delta}{2} + \end{align} + Note that this combined with (\ref{phieps}) tells us that for all $\varepsilon \in (0,\infty)$, $n \in \N \cap [\nu_\epsilon, \infty)$, $s\in (0,T)$, $y\in \mathcal{O}$, with $|s-t_0| < \delta$, $\|y-x_0\|_E \leqslant \delta$, $|s-t_0| + \|y-x_0\|_E > \delta$ that: + \begin{align} + u_n(t_0,x_0) - \phi_\varepsilon(t_0,x_0) &= u_n(t_0,x_0) - \phi_0(t_0,x_0) \\ + &= u_n(t_0,x_0) - u_0(t_0,x_0) \nonumber\\ + &\geqslant \frac{-\varepsilon \delta}{2} \nonumber \\ + &\geqslant u_n(s,y) - u_0(s,y)-\varepsilon \lp |s-t_0|+\|y-x_0\|_E\rp \nonumber \\ + &\geqslant u_n(s,y) - \phi_0(s,y)-\varepsilon \lp |s-t_0|+\|y-x_0\|_E\rp \nonumber \\ + &= u_n(s,y) - \phi_\varepsilon (s,y) + \end{align} + \medskip + + Note that Corollary \ref{sumofusc} implies that for all $\epsilon \in (0,\infty)$ and $n\in \N$ that $u_n - \phi_\varepsilon$ is upper semi-continuous. There therefore exists for all $\epsilon \in (0,\infty)$ and $n \in \N$, a $\tau^\varepsilon_n \in (t_0 - \delta, t_0+\delta)$ and a $\rho^\varepsilon_n$, where $\|\rho_n^\varepsilon - x_0 \| \leqslant \delta$ such that: + \begin{align}\label{maxphiu} + u_n(\tau^\varepsilon_n, \rho_n^\varepsilon) - \phi_\epsilon(\tau_n^\varepsilon, \rho^\ve_n) \geqslant u_n(s,y) - \phi_\varepsilon(s,y) + \end{align} + By Lemma \ref{maxviscosity}, it must be the case that for all $\varepsilon \in (0,\infty)$ and $n \in \N \cap [\nu_\varepsilon, \infty)$: + \begin{align} + \lp \frac{\partial}{\partial t} \phi_\varepsilon \rp \lp \tau^\varepsilon_n, \rho^\varepsilon_n \rp + G_n \lp \tau_n^\ve, \rho_n^\ve, u_n \lp \tau_n^\ve, \rho_n^\ve\rp, \lp \nabla_x \phi_\ve \rp \lp \tau^\ve_n, \rho^\ve_n \rp, \lp \Hess_x \phi_\ve \rp \lp \tau^\ve_n, \rho^\ve_n \rp \rp \geqslant 0 + \end{align} + Note however that (\ref{maxphiu}) along with (\ref{phieps}) and (\ref{limitofun}) yields that for all $\ve \in (0,\infty)$ that: + \begin{align} + &\limsup_{n\rightarrow \infty}\lb u_n(\tau_n^\varepsilon, \rho_n^\varepsilon) - \phi_\epsilon(\tau_n^\varepsilon, \rho^\ve_n) \rb \nonumber\\ + &\geqslant \limsup_{n\rightarrow \infty} \lb u_n(\tau^\ve_n,\rho^\ve_n) - \lp\phi_0(\tau^\ve_n,\rho^\ve_n) + \ve \lp |\tau^\ve_n-t_0| + \|\rho^\ve_n- x_0\|_E \rp \rp \rb \nonumber \\ + &\geqslant \limsup_{n\rightarrow \infty} \lb u_n(\tau^\ve_n,\rho^\ve_n) - u_0(\tau^\ve_n,\rho^\ve_n) - \ve \lp |\tau^\ve_n-t_0| + \|\rho^\ve_n- x_0\|_E \rp \rb \nonumber\\ + &= \limsup_{n\rightarrow \infty} \lb - \ve \lp |\tau^\ve_n-t_0| + \|\rho^\ve_n- x_0\|_E \rp \rb \leqslant 0 + \end{align} + + However note also that since $G_0$ is upper semi-continuous, further the fact that, $\phi_0 \in \lp \lp0,T\rp \times \mathcal{O}, \R \rp$, and then $(\ref{limitofun})$, and $(\ref{phieps})$, imply for all $\ve \in (0,\infty)$ we have that: + $\limsup_{n\rightarrow \infty} \lv \lp \frac{\partial}{\partial t}\phi_\ve \rp\lp \tau^\ve_n, \rho^\ve_n \rp - \\ + \lp\frac{\partial}{\partial t} \phi_0\rp \lp t_0,x_0 \rp\rv = 0$ and: + \begin{align} + & G_0 \lp t_0, x_0, \phi_0 \lp t_0, x_0 \rp, \lp \nabla_x \phi_0 \rp \lp t_0,x_0 \rp, \lp \Hess_x \phi_0 \rp \lp t_0,x_0 \rp+ \text{Id}_{\R^d} \rp \nonumber \\ + &= G_0 \lp t_0, x_0, u_0 \lp t_0, x_0 \rp, \lp \nabla_x \phi_\ve \rp \lp t_0,x_0 \rp, \lp \Hess_x \phi_\ve \rp \lp t_0,x_0\rp \rp \nonumber \\ + & \geqslant \limsup_{n \rightarrow \infty} \lb G_0 \lp \tau^\ve_n, \rho^\ve_n, u_n \lp \tau^\ve_n, \rho^\ve_n \rp, \lp \nabla_x \phi_\ve \rp \lp \tau^\ve_n,\rho^\ve_n \rp, \lp \Hess_x \phi_\ve \rp \lp \tau^\ve_n,\rho^\ve_n\rp \rp \rb \\ + &\geqslant \limsup_{n \rightarrow \infty} \lb G_n \lp \tau^\ve_n, \rho^\ve_n, u_n \lp \tau^\ve_n, \rho^\ve_n \rp, \lp \nabla_x \phi_\ve \rp \lp \tau^\ve_n,\rho^\ve_n \rp, \lp \Hess_x \phi_\ve \rp \lp \tau^\ve_n,\rho^\ve_n\rp \rp \rb + \end{align} + + This with (\ref{maxphiu}) assures for all $\epsilon \in (0,\infty)$ that: + \begin{align} + \lp \frac{\partial}{\partial t} \phi_0 \rp \lp t_0,x_0 \rp + G_0 \lp t_0, x_0, \phi_0 \lp t_0, x_0 \rp, \lp \nabla_x \phi_0 \rp \lp t_0, x_0 \rp, \lp \Hess_x \phi_0 \rp \lp t_0, x_0 \rp + \ve \text{Id}_{\R^d} \rp \geqslant 0 + \end{align} + That $G_0$ is upper semi-continuous then yields that: + + \begin{align} + \lp \frac{\partial}{\partial t} \phi_0 \rp \lp t_0,x_0 \rp + G_0 \lp t_0, x_0, \phi_0\lp t_0, x_0 \rp, \lp \nabla_x \phi_0 \rp \lp t_0, x_0 \rp, \lp \Hess_x \phi_0 \rp \lp t_0, x_0 \rp + \ve \text{Id}_{\R^d} \rp \geqslant 0 + \end{align} + This establishes $(\ref{hessungeq0})$ which establishes the lemma. + + + +\end{proof} + +\begin{corollary}\label{unleq0} + Let $d \in \N$, $T \in (0, \infty)$, let $\mathcal{O} \subseteq \R^d$ be a non-empty open set, let $u_n:(0,T) \times \mathcal{O} \rightarrow \R$, $n \in \N_0$ be functions, let $G_n: (0,T) \times \mathcal{O} \times \R \times \R^d \times \mathbb{S}_d \rightarrow \R$, $n \in \N_0$ be degenerate elliptic, assume that $G_0$ is lower semi-continuous for all non-empty compact $\mathcal{K} \subseteq (0,T) \times \mathcal{O} \times \R \times \R^d \times \mathbb{S}_d$ that: + \begin{align} + \limsup_{n \rightarrow \infty} \lb\sup_{(t,x,r,p,A) \in \mathcal{K}} \lp \lv u_n(t,x) -u_0(t,x) \rv + \lv G_n(t,x,r,p,A) - G_0(t,x,r,p,A) \rv \rp \rb = 0 \label{limitofun} + \end{align} + and assume for all $n\in \N$ that $u_n$ is a viscosity solution of: + \begin{align}\label{viscsolutionvn} + \lp \frac{\partial}{\partial t} u_n \rp \lp t,x \rp + G_n \lp t,x,u_n(t,x),(\nabla_x u_n)(t,x), (\Hess_x u_n)(t,x) \rp \leqslant 0 + \end{align} + then $u_0$ is a viscosity solution of: + \begin{align}\label{hessungeq0} + \lp \frac{\partial}{\partial t} u_0 \rp \lp t,x \rp + G_n \lp t,x,u_0(t,x),(\nabla_x u_0)(t,x), (\Hess_x u_0)(t,x) \rp \leqslant 0 + \end{align} +\end{corollary} + +\begin{proof} + Let $v_n:(0,T) \times \mathcal{O} \rightarrow \R$, $n \in \N_0$ and $H_n:(0,T) \times \mathcal{O} \times \R \times \R^d \times \mathbb{S}_d \rightarrow \R$ satisfy for all $n\in \N_0$, $t\in (0,T)$, $x \in \mathcal{O}$, $r\in \R$, $p \in \R^d$, $A \in \mathbb{S}_d$ that $v_n(t,x) = -u_n(t,x)$ and that $H_n(t,x) = -G_n(t,x,-r,-p,-A)$. + \medskip + + Note that Corollary \ref{neglsc} gives us that $H_0$ is upper semi-continuous. Note also that since it is the case that for all $n\in \N_0$, $G_n$ is degenerate elliptic then it is also the case by Lemma \ref{negdegel} that $H_n$ is degenerate elliptic for all $n\in \N_0$. These together with (\ref{viscsolutionvn}) ensure that for all $n\in \N$, $v_n$ is a viscosity solution of: + \begin{align}\label{hgeq0} + \lp \frac{\partial}{\partial t} v_n \rp \lp t,x \rp + H_n \lp t,x,v_n \lp t,x \rp, \lp \nabla_x v_n \rp \lp t,x \rp, \lp \Hess_x v_n \rp \lp t,x \rp \rp \geqslant 0 + \end{align} + This together with (\ref{limitofun}) establish that: + \begin{align} + \limsup_{n \rightarrow \infty} \lb\sup_{(t,x,r,p,A) \in \mathcal{K}} \lp \lv u_n(t,x) -u_0(t,x) \rv + \lv H_n(t,x,r,p,A) - H_0(t,x,r,p,A) \rv \rp \rb = 0 + \end{align} + + This (\ref{hgeq0}) and the fact that $H_0$ is upper semi-continuous then establish that: + \begin{align} + \lp \frac{\partial}{\partial t} v_0 \rp \lp t,x \rp + H_0 \lp t,x,v_0(t,x),(\nabla_x v_0)(t,x), (\Hess_x v_0)(t,x) \rp \geqslant 0 + \end{align} + for $(t,x) \in (0,T) \times \mathcal{O}$. Hence $v_0$ is a viscosity solution of: + \begin{align} + \lp \frac{\partial}{\partial t} u_0 \rp \lp t,x \rp + H_0 \lp t,x,u_0(t,x),(\nabla_x u_0)(t,x), (\Hess_x u_0)(t,x) \rp \leqslant 0 + \end{align} + This completes the proof. +\end{proof} + +\begin{corollary}\label{unneq0} + Let $d \in \N$, $T \in (0,\infty)$, let $\mathcal{O} \subseteq \R^d$ be a non-empty set, let $u_n: (0,T) \times \mathcal{O} \rightarrow \R$, $n \in \N_0$, be functions, let $G_n: (0,T) \times \mathcal{O} \times \R \times \R^d \times \mathbb{S}_d \rightarrow \R$, $n \in \N_0$ be degenerate elliptic, assume also that $G_0: (0,T) \times \mathcal{O} \times \R \times \R^d \times \mathbb{S}_d \rightarrow \R$ be consinuous and assume for all non-empty compact $\mathcal{K} \subseteq (0,T) \times \mathcal{O} \times \R \times \R^d \times \mathbb{S}_d$ it is the case that: + \begin{align} + \limsup_{n\rightarrow \infty} \lb \sup_{(t,x,r,p,A) \in \mathcal{K}} \lp \lv G_n \lp t,x,r,p,A \rp - G_0 \lp t,x,r,p,A \rp \rv + \lv u_n \lp t,x \rp - u_0 \lp t,x \rp \rv \rp \rb = 0 + \end{align} + and further assume for all $n \in \N$, that $u_n$ is a viscosity solution of: + \begin{align} + \lp \frac{\partial}{\partial t} u_n \rp \lp t,x \rp + G_n \lp t,x ,u_n \lp t,x \rp, \lp \nabla_x u_n \rp \lp t,x \rp, \lp \Hess_x u_n \rp \lp t,x \rp \rp = 0 + \end{align} + for $(t,x) \in (0,T) \times \mathcal{O}$, then we have that $u_0$ is a viscosity solution of: + \begin{align} + \lp\frac{\partial}{\partial t} u_0 \rp \lp t,x \rp + G_0 \lp t,x,u_0 \lp t,x \rp, \lp \nabla_x u_0 \rp \lp t,x \rp, \lp \Hess_x u_0 \rp \lp t,x \rp \rp= 0 + \end{align} +\end{corollary} +\begin{proof} + Note that Lemma \ref{ungeq0} gives us that $u_0$ is a viscosity solution of: + \begin{align} + \lp \frac{\partial}{\partial t} u_0 \rp \lp t,x \rp + G_n \lp t,x,u_0(t,x),(\nabla_x u_0)(t,x), (\Hess_x u_0)(t,x) \rp \geqslant 0 + \end{align} + +for $(t,x) \in (0,T) \times \mathcal{O}$. Also note that Corollary \ref{unleq0} ensures that $u_0$ is a viscosity solution of: + \begin{align} + \lp \frac{\partial}{\partial t} u_0 \rp \lp t,x \rp + G_n \lp t,x,u_0(t,x),(\nabla_x u_0)(t,x), (\Hess_x u_0)(t,x) \rp \leqslant 0 + \end{align} +Taken together these prove the corollary. +\end{proof} +\begin{lemma}\label{absq} + For all $a,b \in \R$ it is the case that $(a+b)^2 \leqslant 2a^2+2b^2$. +\end{lemma} +\begin{proof} + Since for all $a,b\in\R$ it is the case that $(a-b)^2 \geqslant 0$ we then have that: + \begin{align} + (a+b)^2 &\leqslant (a+b)^2 + (a-b)^2 \nonumber \\ + &\leqslant a^2 + 2ab + b^2 + a^2 -2ab+b^2 \nonumber\\ + &=2a^2+2b^2 \nonumber + \end{align} + This completes the proof. +\end{proof} + + +\begin{lemma}\label{ugoesto0} + Let $d,m \in \N$, $T \in (0,\infty)$. Let $\mathcal{O} \subseteq \R^d$ be a non-empty compact set, and for all $n\in \N_0$, $\mu_n \in C([0,T] \times \mathcal{O}, \R)$, $\sigma_n \in C([0,T] \times \mathcal{O}, \R^{d \times m})$ +% \begin{align} +% \sup_{t\in [0,T]} \sup_{x\in \R^d} \sup_{y\in \R^d \setminus\{x\}} \lb \frac{\|\mu_n(t,x)-\mu_n(t,y)\|_E+\|\sigma_n(t,x) - \sigma_n(t,y)\|_F}{\|x-y\|_E} \rb < \infty +% \end{align} + assume also: + \begin{align}\label{limsupis0} + \limsup_{n \rightarrow \infty} \lb \sup_{t\in[0,T]} \sup_{x\in \mathcal{O}} \lp \right\|\mu_n(t,x) - \mu_0(t,x)\left\|_E + \left\|\sigma_n(t,x)-\sigma_0(t,x)\right\|_F \rp \rb = 0 + \end{align} + Let $\lp \Omega, \mathcal{F}, \mathbb{R} \rp$ be a stochastic basis and let $W: [0,T] \times \Omega \rightarrow \R^m$ be a standard $(\mathbb{F}_t)_{t\in [0,T]}$-Brownian motion for every $t\in [0,T]$, $x \in \mathcal{O}$, let $\mathcal{X}^{t,x} = (\mathcal{X}^{t,x}_s)_{s\in [t,T]}: [t,T] \times \Omega \rightarrow \R^d$ be an $(\mathbb{F}_s)_{s\in [t,T]}$ adapted stochastic process with continuous sample paths, satisfying for all $s \in [t, T]$ we have $\mathbb{P}$-a.s. + \begin{align}\label{xnasintuvxn} + \mathcal{X}^{n,t,x}_s = x + \int^s_t \mu_n(r,\mathcal{X}^{n,t,x}_s) dr + \int^s_t \sigma_n(r,\mathcal{X}^{n,t,x}_r) dW_r + \end{align} + then it is the case that: + \begin{align} + \limsup_{n\rightarrow \infty} \lb \sup_{t\in[0,T]}\sup_{s \in[t,T]}\sup_{x \in \mathcal{O}} \lp \E \lb \left\|\mathcal{X}^{n,t,x}_s - \mathcal{X}^{0,t,x}_s\right\|_E^2\rb \rp \rb = 0 + \end{align} + for $(t,x) \in (0,T) \times \R^d$. +\end{lemma} + +\begin{proof} + Since $\mathcal{O}$ is compact, let $L \in \R$ be such that for all $t \in [0,T]$, $x,y\in\mathcal{O}$ it is the case that: + \begin{align}\label{lipformun} + \|\mu_0(t,x) - \mu_0(t,y)\|_E - \|\sigma_0(t,x) + \sigma_0(t,y) \|_F \leqslant L\|x-y\|_E + \end{align} + + Furthermore \cite[Theorem~5.2.9]{karatzas1991brownian} tells us that: + \begin{align} \label{expofxisbounded} + \sup_{s\in[t,T]}\E \lb \|\mathcal{X}^{n,t,x}_s\|_E\rb < \infty + \end{align} + Note now that (\ref{xnasintuvxn}) tells us that: + \begin{align}\label{mathcalxn-mathclx0} + \mathcal{X}^{n,t,x}_s - \mathcal{X}^{0,t,x}_s = \int^s_t \mu_n(r,\mathcal{X}^{n,t,x}_s) - \mu_0(r,\mathcal{X}^{0,t,x}_s) dr + \int^s_t \sigma_n(r,\mathcal{X}^{n,t,x}_r) - \sigma_0(r,\mathcal{X}^{0,t,x}_r) dW_r + \end{align} + Minkowski's Inequality applied to (\ref{mathcalxn-mathclx0}) then tells us for all $n\in \N$, $t\in [0,T]$, $s \in [t,T]$, and $x\in \mathcal{O}$ that: + \begin{align} + \lp \E \lb \left\|\mathcal{X}^{n,t,x}_s - \mathcal{X}^{0,t,x}_s\right\|_E\rb \rp^{\frac{1}{2}} &\leqslant \int^s_t\lp \E \lb \left\|\mu_n(r, \mathcal{X}^{n,t,x}_r) - \mu_0(r,\mathcal{X}^{0,t,x}_r) \right\|_E^2 \rb\rp^{\frac{1}{2}} dr + \nonumber\\ + &\lp \E \lb \left\|\int^s_t (\sigma_n(r,\mathcal{X}^{n,t,x}_r)-\sigma_0(r,\mathcal{X}^{0,t,x}_r)) dW_r \right\|_E^2 \rb \rp^{\frac{1}{2}} + \end{align} + It\^o's isometry applied to the second summand yields: + \begin{align} + \lp \E \lb \left\|\mathcal{X}^{n,t,x}_s - \mathcal{X}^{0,t,x}_s \right\|_E\rb \rp^{\frac{1}{2}} &\leqslant \int^s_t\lp \E \lb \left\|\mu_n(r, \mathcal{X}^{n,t,x}_r) - \mu_0(r,\mathcal{X}^{0,t,x}_r)\right\|_E^2 \rb\rp^{\frac{1}{2}} dr + \nonumber\\ + &\lp \int^s_t \E \lb \left\|\sigma_n(r,\mathcal{X}^{n,t,x}_r) - \sigma_0(r,\mathcal{X}^{0,t,x})\right\|_F^2 \rb dr \rp^\frac{1}{2} + \end{align} + Applying Lemma \ref{absq} followed by the Cauchy-Schwarz Inequality then gives us for all $n \in \N$, $t\in[0,T]$, $s \in [t,T]$, and $x\in \mathcal{O}$ that: + \begin{align} + \E \lb \|\mathcal{X}^{n,t,x}_s-\mathcal{X}^{n,t,x}_s \|^2_E\rb &\leqslant 2 \lb \int^s_t \lp \E \lb \left\| \mu_n(r,\mathcal{X}^{n,t,x}_r) - \mu_0(r,\mathcal{X}^{0,t,x}_r)\right\|^2_E \rb \rp^{\frac{1}{2}} dr \rb^2 \nonumber\\ + &+2\int^s_t \E \lb \left\|\sigma_n(r,\mathcal{X}^{nt,x}_r) - \sigma_0(r,\mathcal{X}^{0,t,x}_r)\right\|_F^2 \rb dr \nonumber\\ + &\leqslant 2T \int^s_t \E \lb \left\|\mu_n(r,\mathcal{X}^{n,t,x}_r) -\mu_0(r,\mathcal{X}^{0,t,x}_r) \right\|_E^2\rb dr \nonumber\\ + &+ 2 \int^s_t \E \lb \left\|\sigma_n(r,\mathcal{X}^{n,t,x}_r) - \sigma_0(r,\mathcal{X}^{0,t,x}_r) \right\|_F^2\rb dr + \end{align} + Applying Lemma \ref{absq} again to each summand then yields for all $n\in \N$, $t\in [0,T]$ $s\in [t,T]$, and $x\in \mathcal{O}$ it is the case that: + \begin{align} + &\E \lb \left\|\mathcal{X}^{n,t,x}_s-\mathcal{X}^{0,t,x}_s \right\|^2 \rb \nonumber \\ + &\leqslant 2T \int^s_t \lp 2\E \lb \left\|\mu_n(r,\mathcal{X}^{n,t,x}_r)-\mu_0(r,\mathcal{X}^{n,t,x}_r)\right\|^2_E\rb + 2\E \lb \left\|\mu_0(r,\mathcal{X}^{n,t,x}_r)-\mu_0(r,\mathcal{X}^{0,t,x}_r)\right\|^2_E\rb \rp dr \nonumber \\ + &+2\int^2_t \lp 2\E \lb \left\| \sigma_n(r,\mathcal{X}^{n,t,x}_r) - \sigma_0(r,\mathcal{X}^{n,t,x}_r) \right\|_F^2 \rb + 2\E \lb\left\|\sigma_0(r,\mathcal{X}^{n,t,x}_r)-\sigma_0(r,\mathcal{X}^{0,t,x}_r)\right\|_F\rb \rp dr + \end{align} + However assumption (\ref{lipformun}) then gives us that for all $n\in \N$, $t \in [0,T]$, $s \in [t,T]$, and $x \in \mathcal{O}$ that: + \begin{align} + \E \lb \left\|\mathcal{X}^{n,t,x}_s - \mathcal{X}^{0,t,x}_s \right\|_E^2 \rb &\leqslant 4L^2(T+1) \int^s_t\E\lb \left\|\mathcal{X}^{n,t,x}_r-\mathcal{X}^{0,t,x}_r \right\|_E^2 \rb dr \nonumber \\ + &+4T(T+1) \lb \sup_{r\in [0,T]}\sup_{y\in \R^d} \lp \left\| \mu_n(r,y) - \mu_0(r,y) \right\|_E^2 + \left\| \sigma_n(r,y) - \sigma_0(r,y) \right\|_F^2 \rp \rb \nonumber + \end{align} + + Finally Gronwall's Inequality with assumption (\ref{expofxisbounded}) gives us for all $n\in \N$, $t\in [0,T]$, $s\in [t,T]$, $x \in \mathcal{O}$ that: + \begin{align} + &\E \lb \left\| \mathcal{X}^{n,t,x}_s - \mathcal{X}^{0,t,x}_s \right\|_E^2 \rb \nonumber \\ + &\leqslant 4T(T+1) \lb \sup_{r\in [0,T]}\sup_{y\in \R^d} \lp \| \mu_n(r,y)-\mu_0(r,y) \|_E^2 + \|\sigma_n(r,y) - \sigma_)(r,y) \|_F^2 \rp \rb e^{4L^2T(T+1)} + \end{align} + Applying $\limsup_{n\rightarrow \infty}$ to both sides and applying (\ref{limsupis0}) gives us for all $n \in \N$, $t \in [0,T]$, $s\in [t,T]$, $x \in \mathcal{O}$ that: + \begin{align} + &\limsup_{n\rightarrow \infty} \E \lb \left\| \mathcal{X}^{n,t,x}_s - \mathcal{X}^{0,t,x}_s \right\|_E^2 \rb \nonumber\\ + &\leqslant \limsup_{n\rightarrow \infty} \lb 4T(T+1) \lb \sup_{r\in [0,T]}\sup_{y\in \R^d} \lp \left\| \mu_n(r,y)-\mu_0(r,y) \right\|_E^2 + \left\|\sigma_n(r,y) - \sigma_0(r,y) \right\|_F^2 \rp \rb e^{4L^2T(T+1)} \rb \nonumber \\ + &\leqslant 4T(T+1) \lb \limsup_{n\rightarrow \infty} \lb\sup_{r\in [0,T]}\sup_{y\in \R^d} \lp \left\| \mu_n(r,y)-\mu_0(r,y) \right\|_E^2 + \left\|\sigma_n(r,y) - \sigma_0(r,y) \right\|_F^2 \rp \rb\rb e^{4L^2T(T+1)} \nonumber \\ + &\leqslant 0 \nonumber + \end{align} + This completes the proof. +\end{proof} + +\begin{lemma}\label{2.19} + Let $d,m \in \N$, $T \in (0,\infty)$, let $\mathcal{O} \subseteq [0,T] \times \R^d$, let $\mu \in C([0,T] \times \mathcal{O},\R^d)$ and $\sigma \in C([0,T] \times \mathcal{O}, \R^{d\times m})$ have compact supports such that $\supp(\mu) \cup \supp(\sigma) \subseteq [0,T] \times \mathcal{O}$ + let $g\in C(\R^d,\R)$. Let $\lp \Omega, \mathcal{F}, \mathbb{P}, (\mathbb{F}_t)_{t\in [0,T]} \rp$ be a stochastic basis, let $W:[0,T] \times \Omega \rightarrow \R^m$ be a standard $(\mathbb{F}_t)_{t\in [0,T]}$ Brownian motion, for every $t\in [0,T]$, $x\in \R^d$, let $\mathcal{X}^{t,x} = (\mathcal{X}^{t,x}_s)_{s\in [t,T]}: [t,T] \times \Omega \rightarrow \R^d$ be an $(\mathbb{F}_s)_{s\in [t,T]}$ adapted stochastic process with continuous sample paths satisfying for all $s\in [t,T]$ with $\mathbb{F}$-a.s. that: + \begin{align}\label{2.59} + \mathcal{X}^{t,x}_s = x + \int^s_t \mu \lp r, \mathcal{X}^{t,x}_r \rp dr + \int^s_t \sigma \lp r, \mathcal{X}^{t,x}_r \rp dW_r + \end{align} + and further let $u:[0,T] \times \R^d \rightarrow \R$ satisfy for all $t\in [0,T]$, $x\in \R^d$ that: + \begin{align}\label{2.60} + u(t,x) = \E \lb g \lp \mathcal{X}^{t,x}_T \rp \rb + \end{align} + Then $u$ is a viscosity solution of: + \begin{align} + \lp \frac{\partial}{\partial t} u \rp \lp t,x \rp + \frac{1}{2} \Trace \lp \sigma(t,x)\lb \sigma(t,x) \rb^* \lp \Hess_xu \rp \lp t,x \rp \rp + \la \mu(t,x), \lp \nabla_x u \rp \lp t,x \rp \ra = 0 + \end{align} + and where $u(T,x) = g(x)$ for $(t,x) \in (0,T) \times \mathcal{O}$. +\end{lemma} + +\begin{proof} + Let $\mathcal{S} = \supp(\mu) \cup \supp(\sigma) \subseteq [0,T] \times \mathcal{O}$ be bounded in space by $\rho \in (0,\infty)$, as $\mathcal{S} \subseteq [0,T] \times (-\rho, \rho)^d$. This exists as the supports are compact and thus by Hiene-B\"orel is closed and bounded. Let $\mathfrak{s}_n, \mathfrak{m}_n \in C^\infty([0,T] \times \R^d, \R^{d\times n})$ where $\bigcup_{n\in \N} \lb \supp(\mathfrak{s}_n) \cup \supp(\mathfrak{m}_n) \rb \subseteq [0,T] \times (-\rho, \rho)^d$ satisfy for $n\in \N$ that: + \begin{align}\label{2.62} + \limsup_{n\rightarrow \infty} \lb \sup_{t\in [0,T]} \sup_{x\in \R} \lp \left\| \mathfrak{m}_n(t,x) - \mu(t,x) \right\|_E + \left\|\mathfrak{s}_n - \sigma(t,x)\right\|_F \rp \rb = 0 + \end{align} + We construct a set of degenerate elliptic functions, $G^{n}:(0,T) \times \R^d \times \R \times \R^d \times \mathbb{S}_d \rightarrow \R$ with $n \in \N_0$ such that: + \begin{align} + &G^{0}(t,x,r,p,A) = \frac{1}{2} \Trace\lp \sigma (t,x)[\sigma(t,x)]^*A \rp + \la \mu(t,x),p \ra \label{2.63}\\ + &\text{and} \nonumber\\ + &G^{n}(t,x,r,p,A) = \frac{1}{2} \Trace \lp \mathfrak{s}_n (t,x)[\mathfrak{s}_n(t,x)]^*A \rp + \la \mu(t,x),p \label{2.64}\ra + \end{align} + Also let $\mathfrak{g}_n \in C^\infty(\R^d,\R)$ for $n\in \N$ satisfy for all $n\in \N$ that: + \begin{align}\label{2.65} + \limsup_{n\rightarrow \infty} \sup_{t\in [0,T]} \sup_{x\in \R^d} \lp \| \mathfrak{g}_n(x) - g(x) \|_E \rp = 0 + \end{align} + + Further let $\mathfrak{X}^{n,t,x} = (\mathfrak{X}^{n,t,x}_s)_{s\in [t,T]}:[t,T] \times \Omega \rightarrow \R^d$ be an $(\mathbb{F}_s)_{s\in [t,T]}$-adapted stochastic process with continuous sample paths that satisfy: + \begin{align}\label{2.66} + \mathcal{X}^{n,t,x}_s = x + \int^s_t \mathfrak{m}_n(r, \mathcal{X}^{n,t,x}_r)dr + \int^s_t \mathfrak{s}_n(r,\mathcal{X}^{n,t,x}_r) dW_r + \end{align} + % TODO Need to talk about karatzas and how the proof really isnt there the one it's referencing +% Note that then \cite{karatzas1991brownian} tells us that + Finally let $\mathfrak{u}^n: [0,T] \times \R^d \rightarrow \R$ for $n\in \N$ be: + \begin{align}\label{ungn} + \mathfrak{u}^n = \E \lb \mathfrak{g}_n \lp \mathfrak{X}^{n,t,x}_T \rp \rb + \end{align} + and: + \begin{align}\label{u0gn} + \mathfrak{u}^0 = \E \lb \mathfrak{g}_n \lp \mathcal{X}^{t,x}_T \rp \rb + \end{align} + + Note that \cite[Lemma~2.2]{BHJ21} with $g \curvearrowleft \mathfrak{g}_k$, $\mu \curvearrowleft \mathfrak{m}_n$, $\sigma \curvearrowleft \mathfrak{s}_n$, $\mathcal{X}^{t,x} \curvearrowleft \mathcal{X}^{n,t,x}$ gives us $\mathfrak{u}^n \in C^{1,2}([0,T] \times \R^d, \R)$, and $\mathfrak{u}^n(t,x) = \mathfrak{g}_k(x)$ where: + \begin{align} + \lp \frac{\partial}{\partial t} \mathfrak{u}^n \rp \lp t,x \rp + \frac{1}{2} \Trace \lp \mathfrak{s}_n(t,x)\lb \mathfrak{s}_n(t,x) \rb^* \lp \Hess_x \mathfrak{u}^n \rp \lp t,x \rp \rp + \la \mathfrak{m}_n(t,x), \lp \nabla_x \mathfrak{u}^n \rp \lp t,x \rp \ra = 0 + \end{align} + And by Definitions \ref{def:viscsubsolution}, \ref{def:viscsupsolution}, and \ref{def:viscsolution} we have that $\mathfrak{u}^n$ is a viscosity solution of + \begin{align}\label{2.70} + \lp \frac{\partial}{\partial t} \mathfrak{u}^n \rp \lp t,x \rp + \frac{1}{2} \Trace \lp \mathfrak{s}_n(t,x)\lb \mathfrak{s}_n(t,x) \rb^* \lp \Hess_x \mathfrak{u}^n \rp \lp t,x \rp \rp + \la \mathfrak{m}_n(t,x), \lp \nabla_x \mathfrak{u}^n \rp \lp t,x \rp \ra = 0 + \end{align} + for $(t,x) \in (0,T) \times \R^d$. +\medskip + +Since for all $n\in \N$, it is the case that $\mathcal{S} = \lp \supp(\mathfrak{m}_n)\cup \supp(\mathfrak{s}_n) \cup \supp(\mu) \cup \supp(\sigma) \rp \subseteq [0,T] \times (-\rho, \rho)^d$ and because of (\ref{2.59}) of (\ref{2.66}) we have that \cite[Lemma~3.2, Item~(ii)]{Beck_2021} which yields that for all $n\in \N$, $t\in [0,T]$, $x \in \R^d\setminus(-\rho, \rho)^d$ that $\mathbb{P}(\forall s \in [t,T]: \mathfrak{X}^{n,t,x}_s =x=\mathcal{X}^{t,x}_s)=1$. This in turn shows that for all $n\in \N$, $x \in \R^d \setminus(-\rho,\rho)^d$ that $\mathfrak{u}^n(t,x) = \mathfrak{u}^0(t,x)$ which along with (\ref{ungn}) and (\ref{u0gn}) yields that: + \begin{align}\label{unu0} + \sup_{t\in[0,T]}\sup_{x \in \R^d} \lb \lv \mathfrak{u}^n (t,x) - \mathfrak{u}^0(t,x) \rv \rb &= \sup_{t\in [0,T]} \sup_{x \in (-\rho,\rho)^d} \lb \lv \mathfrak{u}^n(t,x) - \mathfrak{u}^0(t,x) \rv \rb \nonumber\\ + &\leqslant \sup_{t\in [0,T]}\sup_{x \in (-\rho,\rho)^d} \lp \E \lb \lv \mathfrak{g}_k \lp \mathfrak{X}^{n,t,x}_T \rp - \mathfrak{g} \lp \mathcal{X}^{t,x}_T \rp \rv \rb \rp + \end{align} + Note that Lemma \ref{ugoesto0} allows us to conclude that: + + \begin{align} + \limsup_{n\rightarrow \infty} \lb \sup_{t\in[0,T]} \sup_{x\in (-\rho, \rho)^d} \lp \E \lb \|\mathfrak{X}^{n,t,x}_T-\mathcal{X}^{t,x}_s \| \rb \rp \rb = 0 + \end{align} + But then we have that (\ref{unu0}) which yields that: + \begin{align}\label{2.73} + \limsup_{n\rightarrow 0} \lb \sup_{t\in [0,T]} \sup_{x \in \R^d} \lp \lv \mathfrak{u}^n(t,x) - \mathfrak{u}^0(t,x) \rv\rp \rb =0 + \end{align} + However now note that (\ref{2.64}) and (\ref{2.70}) thus yield that for $n \in \N_0$, $\mathfrak{u}^n$ is a viscosity solution to: + \begin{align}\label{2.74} + \lp \frac{\partial}{\partial t} \mathfrak{u}^n \rp \lp t,x \rp + G^n \lp t,x,\mathfrak{u}^n \lp t,x \rp, \lp \nabla_x \mathfrak{u}^n \rp \lp t,x \rp, \lp \Hess_x \mathfrak{u}^n \rp \lp t,x \rp \rp =0 + \end{align} + But since we've established (\ref{2.62}) we have that for a non-empty compact set $\mathcal{C} \subseteq (0,T) \times \mathcal{O} \times \R \times \R^d \times \mathbb{S}_d$ that: + \begin{align} + &\limsup_{n \rightarrow \infty} \lb \sup_{(t,x,r,p,A) \in \mathcal{C}} \lv G^n \lp t,x,r,p,A \rp - G^0 \lp t,x,r,p,A \rp \rv \rb \nonumber \\ + &\leqslant \limsup_{n\rightarrow \infty} \lb \sup_{(t,x,r,p,A) \in \mathcal{C}} \left\|\mu(t,x) - \mathfrak{m}_n(t,x) \|_E \right\| p \|_E \rb \nonumber \\ + &+ \limsup_{n\rightarrow \infty} \lb \sup_{(t,x,r,p,A) \in \mathcal{C}} \left\| \sigma(t,x)\lb \sigma(t,x) \rb^* - \mathfrak{s}_n(t,x) \lb \mathfrak{s}_n(t,x) \rb^* \right\|_F \left\|A\right\|_F \rb = 0 + \end{align} + + This, together with (\ref{2.73}), (\ref{2.74}) and Corollary \ref{unneq0} yields that $\mathfrak{u}^0$ is also a viscosity solution to: + \begin{align}\label{2.76} + \lp \frac{\partial}{\partial t} \mathfrak{u}^0 \rp \lp t,x \rp + G^0 \lp t,x,\mathfrak{u}^0(t,x), \lp \nabla_x \mathfrak{u}^0\rp \lp t,x \rp, \lp \Hess_x \rp \lp t,x \rp \rp =0 + \end{align} + Finally note that (\ref{2.62}), (\ref{2.66}), (\ref{u0gn}), and (\ref{2.76}) yield that $u$ is a viscosity solution of:: + \begin{align} + \lp \frac{\partial}{\partial t} u \rp \lp t,x \rp + \frac{1}{2} \Trace \lp \sigma(t,x) \lb \sigma(t,x) \rb^* \lp \Hess_x u \rp \lp t,x \rp \rp + \la \mu(t,x), \lp \nabla_x \rp \lp t,x \rp \ra = 0 + \end{align} + for $(t,x) \in [0,T] \times \R^d$. Finally (\ref{2.59}) and (\ref{2.60}) allows us to conclude that for all $x \in \R^d$ it is the case that $u(T,x) = g(x)$. This concludes the proof. +\end{proof} + +\begin{lemma} + Let $d,m \in \N$, $T \in (0,\infty)$, further let $\mathcal{O} \subseteq \R^d$ be a non, empty compact set. Let every $r \in (0,\infty)$ satisfy the condition that $O_r \subseteq \mathcal{O}$, where $O_r = \{x \in \mathcal{O}: \lp \|x\|_E \leqslant r \text{ and }\{y \in \R^d: \| y-x\|_E < \frac{1}{r} \} \subseteq \mathcal{O} \rp \}$ let $g \in C(\mathcal{O},\R)$, $\mu \in C([0,T] \times \mathcal{O},\R)$, $V \in C^{1,2}([0,T] \times \mathcal{O},(0,\infty))$, assume that for all $t \in [0,T]$, $x \in \mathcal{O}$ that: + \begin{align} + \sup \lp \left\{ \frac{\| \mu(t,x)-\mu(t,y)\|_E+\|\sigma(t,x)-\sigma(t,y)\|_F}{\|x-y\|_E}:t\in [0,T], x,y\in O_r, x \neq y \right\} \cup \{0\}\rp < \infty + \end{align} + \begin{align} + \lp \frac{\partial}{\partial t} V \rp \lp t,x \rp + \frac{1}{2}\Trace \lp \sigma(t,x)\lb \sigma(t,x) \rb^* \lp \Hess_x V\rp \lp t,x \rp \rp + \la \mu(t,x), \lp \nabla_x V \rp (t,x) \ra \leqslant 0 + \end{align} + assume that $\sup_{r \in (0,\infty)} \lb \inf_{x \in \mathcal{O}\setminus O_r} V(t,x)\rb = \infty$ and $\inf_{r \in (0, \infty)} \lb \sup_{t \in [0,T]} \sup _{x \in \mathcal{O} \setminus O_r} \lp \frac{g(x)}{V(T,x)} \rp \rb = 0$. + Let $\lp \Omega, \mathcal{F}, \mathbb{P}, (\mathbb{F}_t)_{t\in [0,T]} \rp$ be a stochastic basis and let $W: [0,T] \times \Omega \rightarrow \R^m$ be a standard $(\mathbb{F}_t)_{t \in [0,T]}$-Brownian motion, for every $t \in [0,T]$, $x \in \mathcal{O}$ let $\mathcal{X}^{t,x} = (\mathcal{X}^{t,x}_s)_{s\in [t,T]}: [t,T] \times \Omega \rightarrow \mathcal{O}$ be an $(\mathbb{F}_s)_{s\in [t,T]}$-adapted stochastic process with continuous sample paths satisfying that for all $s\in [t, T]$, we have $\mathbb{P}$-a.s. that: + \begin{align}\label{2.79} + \mathcal{X}^{t,x}_s = x+\int^s_t \mu(r,\mathcal{X}^{t,x}_r) dr + \int^s_t \sigma(r, \mathcal{X}^{t,x}_n) dW_r + \end{align} + also let $u:[0,T] \times \R^d \rightarrow \R$ satisfy for all $t \in [0,T]$, $x \in \R^d$ that: + \begin{align} + u(t,x) = \E \lb u(T,\mathcal{X}^{t,x}_T) \rb + \end{align} + It is then the case that $u$ is a viscosity solution to: + \begin{align}\label{2.81} + \lp \frac{\partial}{\partial t} u \rp \lp t,x \rp + \frac{1}{2} \Trace \lp \sigma(t,x) \lb \sigma(t,x) \rb^* \lp \Hess_x u \rp \lp t,x \rp \rp + \la \mu(t,x), \lp \nabla_x \rp \lp t,x \rp \ra = 0 + \end{align} + for $(t,x) \in (0,T) \times \mathcal{O}$ with $u(T,x) = g(x)$. + \end{lemma} +\begin{proof} + Let it be the case, that throughout the proof, for $n\in \N$, we have that $\mathfrak{g}_n \in C(\R^d, \R)$, compactly supported and that $\lb \bigcup_{n\in\N} \supp(\mathfrak{g}_m) \rb \subseteq [0, T] \times \mathcal{O}$ and further that: + \begin{align}\label{2.82} + \limsup_{n\rightarrow \infty} \lb \sup_{t\in [0,T]}\sup_{x\in \mathcal{O}} \lp \frac{|\mathfrak{g}_n(x)-g(x)|}{V(T,x)} \rp \rb = 0 + \end{align} + Let is also be the case that for $n\in \N$, $\mathfrak{m}_n \in C([0,T] \times \R^d, \R^d)$ and $\mathfrak{s}_n \in C([0,T] \times \R^d, \R^{d \times m})$ satisfy: + \begin{enumerate}[label = (\roman*)] + \item for all $n\in \N$: + \begin{align} + \sup_{t \in [0,T]} \sup_{x,y \in \R^d,x\neq y} \lb \frac{\|\mathfrak{m}_n(t,y)-\mathfrak{m}_n(t,y)\|_E + \|\mathfrak{s}_n(t,x)-\mathfrak{s}_n(t,y)\|_E}{\| x-y\|_E} \rb = 0 + \end{align} + \item for all all $n\in \N$, $t \in [0,T]$, $x \in \mathcal{O}$: + \begin{align}\label{2.84} + \mathbbm{1}_{\{V \leqslant n \}}(t,x)\lb \| \mathfrak{m}_n(t,x) - \mu(t,x)\|_E + \| \mathfrak{s}_n(t,x) - \sigma(t,x) \|_F \rb = 0 + \end{align} + and + \item for all $n\in \N$, $t \in [0,T]$, $x \in \R^d \setminus \{V \leqslant n+1\}$ that: + \begin{align} + \| \mathfrak{m}_n(t,x)\|_E + \| \mathfrak{s}_n (t,x) \|_F = 0 + \end{align} + \end{enumerate} + Next for every $n\in \N$, $t\in [0,T]$ and $x\in \R^d$ let it be the case that $\mathfrak{X}^{n,t,x}_s = (\mathfrak{X}^{n,t,x}_s)_{s\in [t,T]}: [t,t] \times \Omega. \rightarrow \R^d$ be a stochastic process with continuous sample paths satisfying: + \begin{align}\label{2.86} + \mathfrak{X}^{n,t,x}_s = x + \int^s_t \mathfrak{m}_n(r, \mathfrak{X}^{n,t,x}_s) dr + \int^s_t \mathfrak{s}_n(r, \mathfrak{X}^{n,t,x}_s) dW_r + \end{align} + Let $\mathfrak{u}^n: [0,T] \times \R^d \rightarrow \R$, $k \in \N$, $n \in \N_0$, satisfy for all $n\in \N$, $t \in [0,T]$, $x \in \R^d$ that: + \begin{align} + \mathfrak{u}^{n,k}(t,x) = \E \lb \mathfrak{g}_k (\mathfrak{X}^{n,t,x}_T) \rb + \end{align} + and + \begin{align}\label{2.88} + \mathfrak{u}^{0,k}(t,x) = \E \lb \mathfrak{g}_k \lp \mathcal{X}^{t,x}_T \rp \rb + \end{align} + and finally let, for every $n\in \N$, $t \in [0,T]$, $x \in \mathcal{O}$, there be $\mathfrak{t}^{t,x}_n: \Omega \rightarrow [t,T]$ which satisfy $\mathfrak{t}^{t,x}_n = \inf \lp \{ s \in [t,T], \max \{V(s,\mathfrak{X}^{t,x}_s),V(s,\mathcal{X}^{t,x}_s)\} \geqslant n \} \cup \{T\} \rp$. We may apply Lemma \ref{2.19} with $\mu \curvearrowleft \mathfrak{m}_n$, $\sigma \curvearrowleft \mathfrak{s}_n$, $g \curvearrowleft \mathfrak{g}_k$ to show that for all $n,k \in \N$ we have that $\mathfrak{u}^{n,k}$ is a viscosity solution to: + \begin{align}\label{2.89} + \lp \frac{\partial}{\partial t} \mathfrak{u}^{n,k} \rp (t,x) + \frac{1}{2} \Trace \lp \mathfrak{s}_n(t,x) \lb \mathfrak{s}_n(t,x) \rb^* \lp \Hess_x \mathfrak{u}^{n,k} \rp (t,x) \rp + \la \mathfrak{m}_n(t,x), \lp \nabla_x(\mathfrak{u}^{n,k} \rp(t,x) \ra = 0 + \end{align} + for $(t,x) \in (0,T) \times \R^d$. But note that items (i)-(iii) and \ref{2.86} give us that, in line with \cite[Lemma~3.5]{Beck_2021}: + \begin{align} + \mathbb{P}\lp \forall s \in [t,T]: \mathbbm{1}_{\{s \leqslant \mathfrak{t}^{t,x}_n\}} \mathfrak{X}^{n,t,x}_s = \mathbbm{1}_{\{s\leqslant \mathfrak{t}^{t,x}_n\}} \mathcal{X}^{t,x}_s \rp =1 + \end{align} + Further this implies that for all $n,k \in \N$, $t \in [0,T]$, $x \in \mathcal{O}$ that: + \begin{align} + \E \lb \lv \mathfrak{g}_k \lp \mathfrak{X}^{n,t,x}_T) - \mathfrak{g}_k(\mathcal{X}^{t,x}_T \rp \rv \rb &= \E \lb \mathbbm{1}_{\{\mathfrak{t}^{t,x}_n < T\}} \lv \mathfrak{g}_k(\mathfrak{X}^{n,t,x}_T) - \mathfrak{g}_k(\mathcal{X}^{t,x}_T) \rv \rb \nonumber\\ + &\leqslant 2 \lb \sup_{y \in \mathcal{O}} \lv \mathfrak{g}_k(y) \rv \rb \mathbb{P} \lp \mathfrak{t}^{t,x}_n < T \rp \nonumber + \end{align} + Note that this combined with \cite[Lemma~3.1]{Beck_2021} implies for all $t \in [0,T]$, $x \in \mathcal{O}$, $n \in \N$ we have that $\E \lb V \lp \mathfrak{t}^{t,x}_n, \mathcal{X}^{t,x}_{\mathfrak{t}^{t,x}_n}\rp \rb \leqslant V(t,x)$, which then further proves that: + \begin{align} + \lv \mathfrak{u}^{n,k}(t,x) - \mathfrak{u}^{0,k}(t,x) \rv &\leqslant 2 \lb \sup_{y\in \mathcal{O}} \lv \mathfrak{g}_k(y) \rv \rb \mathbb{P}\lp \mathfrak{t}^{t,x}_n < T \rp \nonumber\\ + &\leqslant 2 \lb\sup _{y \in \mathcal{O}} \lv \mathfrak{g}_k(y) \rv \rb \mathbb{P} \lp V \lp \mathfrak{t}^{t,x}_n, \mathcal{X}^{t,x}_{\mathfrak{t}^{t,x}_n}\rp \geqslant n\rp \nonumber \\ + %TODO: Ask Dr. Padgett how this came about + &\leqslant \frac{2}{n} \lb \sup_{y\in \mathcal{O}} \lv \mathfrak{g}_k(y) \rv \rb \E \lb V \lp \mathfrak{t}^{t,x}_n, \mathcal{X}^{t,x}_{\mathfrak{t}^{t,x}_n} \rp \rb \nonumber \\ + &\leqslant \frac{2}{n} \lb \sup_{y \in \mathcal{O}} \lv \mathfrak{g}_k(y) \rv \rb V \lp t,x, \rp \nonumber + \end{align} + Together these imply that for all $k\in\N$ and compact $\mathcal{K} \subseteq [0,T] \times \mathcal{O}$: + \begin{align}\label{2.90} + \limsup_{k \rightarrow \infty}\lb \sup_{(t,x) \in \mathcal{K}} \lp \lv \mathfrak{u}^{n,k}(t,x) - \mathfrak{u}^{0,k}(t,x) \rv \rp \rb = 0 + \end{align} + But again note that since have that $\sup_{r\in (0,\infty)}\lb \inf_{t \in [0,T], x \in \R^d \setminus O_r} V(t,x) \rb = \infty$ and (\ref{2.84}) tell us that for all compact $\mathcal{K} \subseteq [0,T] \times \mathcal{O}$ we have that: + \begin{align} + \limsup_{n \rightarrow \infty} \lb \sup_{(t,x) \in \mathcal{K}} \lp \|\mathfrak{m}_n(t,x) - \mu(t,x) \|_E + \| \mathfrak{s}_n(t,x)-\sigma(t,x) \|_F \rp \rb = 0 + \end{align} + Note that (\ref{2.89}), (\ref{2.90}) and Corollary \ref{unneq0} tell us that for all $k \in \N$ we have that $\mathfrak{u}^{0,k}$ is a viscosity solution to: + \begin{align}\label{2.93} + \lp \frac{\partial}{\partial t} \mathfrak{u}^{0,k} \rp \lp t,x \rp + \frac{1}{2} \Trace \lp \sigma(t,x) \lb \sigma(t,x) \rb^* \lp \Hess_x \mathfrak{u}^{0,k} \rp (t,x) \rp + \la \mu(t,x), \lp \nabla_x \mathfrak{u}^{0,k} \rp (t,x) \ra = 0 + \end{align} + for $(t,x) \in (0,T) \times \mathcal{O}$. However note that (\ref{2.79}),(\ref{2.82}), (\ref{2.88}) prove that for all compact $\mathcal{K} \subseteq [0,T] \times \mathcal{O}$ we have: + \begin{align} + \limsup_{k \rightarrow \infty} \lb \sup_{(t,x) \in \mathcal{K}} \lv \mathfrak{u}^{0,k}(t,x) - u(t,x) \rv \rb = 0 + \end{align} + This together with (\ref{2.93}), (\ref{2.82}), Corollary \ref{unneq0} shows that $u_0$ is a viscosity solution to: + \begin{align}\label{2.95} + \lp \frac{\partial}{\partial t} u \rp \lp t,x \rp + \frac{1}{2} \Trace \lp \sigma(t,x) \lb \sigma(t,x) \rb^*\lp \Hess_x u \rp (t,x) \rp + \la \mu(t,x), \lp \nabla_x u \rp \ra = 0 + \end{align} + for $(t,x) \in (0,T) \times \mathcal{O}$. By (\ref{2.81}) we are ensured that for all $x\in \R^d$ we have that $u(T,x) = g(x)$ which together with proves the proposition. + +\end{proof} + + +\section{Solutions, Characterization, and Computational Bounds to the Kolmogorov Backward Equations} +% \begin{proof} +% From Feynman-Kac, especially from \cite[(1.5)]{hutzenthaler_strong_2021} and setting $f=0$ in the notation of \cite[(1.5)]{hutzenthaler_strong_2021} we have that: +% \begin{align} +% u_d(t,x) = \E \left[ u_d \left( 0,x+ \sqrt{2}W^{d}_t \right) \right] +% \end{align} + +% Substituting (2.2) and applying the time reversal property of Brownian motions then gives us: +% \begin{align} +% u_d(t,x) &= \E \left[ u_d \left( 0,x+ \sqrt{2}W^{d}_t \right) \right] \nonumber \\ +% &= \E \left[ u_d \left( 0,x+ \sqrt{2}W^{d}_{-t} \right) \right] \nonumber \\ +% &= \E \left[ u_d \left( 0,x+ \sqrt{2}W^{d}_{0-t} \right) \right] \nonumber \\ +% &= \E \left[ u_d \left( 0, \mathcal{X}^{d,t,x}_{0} \right) \right] +% \end{align} +% Looking closely at (2.3), where according to the notation of (2.2), the time reversal property of Brownian motions, (2.5), and the shift-invariance of Brownian motions we have that: + +% \begin{align} +% u_d(t,x) = \E \left[ u_d \left( T,\mathcal{X}_T^{d,t,x} \right) \right] &= \E \left[ u_d\left( T,x+\sqrt{2}W^{d,\theta}_{T-t}\right) \right] \nonumber \\ +% &= \E \left[ u_d\left( T,x+\sqrt{2}W^{d,\theta}_{t-0}\right) \right] \nonumber \\ +% &= \E \left[ u_d\left( T,x+\sqrt{2}W^{d,\theta}_{0-t}\right) \right] \nonumber \\ +% &= \E \left[ u_d\left(T, \mathcal{X}^{d,t,x}_0\right) \right] +% \end{align} +% The independence of the Brownian motions then indicates that (2.5) and (2.6) are equal. + +% This completes the proof of Lemma 2.1. +% \end{proof} + + + +\begin{theorem}[Existence and characterization of $u_d$]\label{thm:3.21} +Let $T \in (0,\infty)$. Let $\lp \Omega, \mathcal{F}, \mathbb{P} \rp$ be a probability space. Let $\sigma_d \in C \lp \R^d,\R^{d\times d} \rp $ and $\mu_d\in C \lp \R^d, \R^d \rp$ for $d \in \N$, let $u_d \in C^{1,2} \lp \lb 0,T \rb \times \R^d, \R \rp$ satisfy for all $d \in \N$, $t \in \lb 0,T \rb$ , $x \in \R^d$ that: + \begin{align}\label{3.3.1} + \lp \frac{\partial}{\partial t} u_d \rp \lp t,x \rp + \frac{1}{2}\Trace\lp \sigma_d(x) \lb \sigma_d(x) \rb^* \lp \Hess_x u_d \rp (t,x) \rp + \la \mu_d(x), \lp \nabla_x u_d \rp(t,x) \ra = 0 + \end{align} + let $\mathcal{W}^d:[0,T] \times \Omega \rightarrow \R^d$, $d \in \N$ be a standard Brownian motions and let $\mathcal{X}^{d,t,x}: \lb t, T\rb \times \Omega \rightarrow \R^d$, $d \in \N$, $ t\in \lb 0,T \rb$, be a stochastic process with continuous sample paths satisfying for all $d \in \N$, $t \in \lb 0,T \rb$, $s \in \lb t,T \rb$, $x \in \R^d$, we have $\mathbb{P}$-a.s. that: + \begin{align}\label{3.102} + \mathcal{X}^{d,t,x} = x + \int^t_s \mu_d \lp \mathcal{X}^{d,t,x}_r \rp dr + \int^t_s \sigma \lp \mathcal{X}^{d,t,x}_r \rp d\mathcal{W}^d_r + \end{align} + Then for all $d \in N$, $t \in \lb 0,T \rb$, $x \in \R$, it holds that: + \begin{align} + u_d(t,x) = \E \lb u_d \lp T,\mathcal{X}_t^{d,t,x} \rp \rb + \end{align} + Furthermore, $u_d$ is a viscosity solution to (\ref{3.3.1}). +\end{theorem} + + +\begin{proof} + This is a consequence of Lemma \ref{lem:3.4} and \ref{2.19}. +\end{proof} +\newpage +\begin{corollary}\label{lem:3.19} Let $T \in (0,\infty)$, let $\left( \Omega, \mathcal{F}, \mathbb{P} \right)$ be a probability space, let $u_d \in C^{1,2} \left( \left[ 0,T \right] \times \R^d, \R \right)$, $d \in \N$ satisfy for all $d \in \N$, $t \in [0,T]$, $x \in \R^d$ that: +\begin{align} + \left( \frac{\partial}{\partial t} u_d \right) \left(t,x\right) + \frac{1}{2}\left(\nabla^2_x u_d\right) \left(t,x\right) = 0 +\end{align} +Let $\mathcal{W}^d: [0,T] \times \Omega \rightarrow \R^d$, $d \in \N$ be standard Brownian motions, and let $\mathcal{X}^{d,t,x}: [t,T] \times \Omega \rightarrow \R^d$, $d\in \N$, $t \in [0,T]$, $x \in \R^d$, be a stochastic process with continuous sample paths satisfying that for all $d \in N$, $t \in [0,T]$, $s \in [t,T]$, $x \in \R^d$ we have $\mathbb{P}$-a.s. that: +\begin{align} + \mathcal{X}^{d,t,x}_s = x + \int^s_t d\mathcal{W}^d_r = x + \mathcal{W}^d_{t-s} +\end{align} +Then for all $d\in \N$, $t \in [0,T]$, $x \in \R^d$ it holds that: +\begin{align} + u_d(t,x) = \E \left[u_d \left(T,\mathcal{X}^{d,T,x}_t\right)\right] +\end{align} +\end{corollary} +\begin{proof} + This is a special case of Theorem \ref{thm:3.21}. It is the case where $\sigma_d(x) = \mathbb{I}_d$, the uniform identity function where $\mathbb{I}_d$ is the identity matrix in dimension $d$ for $d \in \N$, and $\mu_d(x) = \mymathbb{0}_{d,1}$ where $\mymathbb{0}_d$ is the zero vector in dimension $d$ for $d \in \N$. +\end{proof} + + + +\begin{lemma}\label{3.3.2} + Let $T \in \lp 0,\infty \rp$, let $\lp \Omega, \mathcal{F}, \mathbb{P} \rp$, be a probability space, let $\alpha_d\in C^2_b \lp \R^d,\R \rp$, and $\alpha \in \mathcal{O}\lp x^2 \rp $ for $d \in N$, be infinitey often differentiable function, let $u_d \in C^{1,2} \lp \lb 0,T \rb \times \R^d,\R \rp$, $d \in \N$, satisfy for all $d \in \N$, $t \in \lb 0,T \rb$, $x \in \R^d$, that: + \begin{align}\label{3.3.7} + \lp \frac{\partial}{\partial t} u_d\rp \lp t,x \rp + \frac{1}{2}\lp \nabla^2_x u_d \rp \lp t,x \rp +\alpha_d \lp x \rp u_d \lp t,x \rp = 0 + \end{align} + Let $\mathcal{W}^d: \lb 0,T \rb \times \Omega \rightarrow \R^d$ be standard Brownian motions and let $\mathcal{X}^{d,t,x}: \lb t,T \rb \times \Omega \rightarrow \R^d$, $d \in \N$, $t \in \lb 0,T \rb$, $x \in \R^d$ be a stochastic process with continuous sample paths satisfying that for all $d \in \N$, $ t\in \lb 0,T \rb$, $s \in \lp t,T \rb$, $x \in \R^d$, we have $\mathbb{P}$-a.s. that: + \begin{align} + \mathcal{X}^{d,t,x}_s = x + \int^t_s \frac{1}{2} d \mathcal{W}^d_r =\frac{1}{2} \mathcal{W}^d_{t-r} + \end{align} + Then for all $d \in \N$, $t \in \lb 0,T \rb$, $x \in \R^d$ it holds that: + \begin{align} + u_d \lp t,x \rp = \E \lb \exp \lp \int^T_t \alpha_d \lp \mathcal{X}^{d,t,x}_r \rp dr \rp u_d \lp T, \mathcal{X}^{d,t,x}_T \rp \rb + \end{align} +\end{lemma} +\begin{proof} Let $v_d: \R^d \rightarrow \R$ be continuous. Throughout the proof let $u_d \lp t,x\rp = e^{-t\alpha_d(x)}v_d(t,x)$ for all $d \in \N$, $t \in [0,T]$, $x \in \R^d$. For notational simplicity, we will drop the $d,t,x$ wherever it is obvious. Therefore the derivatives become: +%\begin{align} +% \lp \frac{\partial}{\partial t}u_d \rp \lp t,x \rp &= -\alpha_d(x)e^{-t\alpha_d(x)}v_d(t,x)+e^{-t\alpha_d(x)} v_d^{(1,0)}(t,x) \nonumber\\ +% \lp \nabla_x^2 u_d \rp \lp t,x \rp &= e^{-t\alpha_d(x)} \lb -2t\alpha_d'(x) (\nabla_x v_d) (t,x) + tv(t,x) \lb t\lp \alpha_d'(x) \rp^2 -\alpha_d''(x)\rb + \lp \nabla_x^2v_d \rp (t,x)\rb +%\end{align} +% Substituting this into (\ref{3.3.7}) renders it as: +% \begin{align} +% 0 &= - \cancel{\alpha_d(x)e^{-t\alpha_d(x)}v_d(t,x)}+e^{-t\alpha_d(x)} v_d^{(1,0)} (t,x) \nonumber\\ +% &+ e^{-t\alpha_d(x)} \lb -2t\alpha_d'(x) (\nabla_x v_d) (t,x) + tv(t,x) \lb t\lp \alpha_d'(x) \rp^2 -\alpha_d''(x)\rb + v_d^{(0,2)}(t,x)\rb \nonumber\\ +% &+ \cancel{\alpha_d(x)e^{-t\alpha_d(x)}v_d(t,x)} \nonumber \\ +% &= e^{-t\alpha_d(x)} v_d^{(1,0)}(t,x) \nonumber\\ +% &+ e^{-t\alpha_d(x)} \lb -2t\alpha_d'(x) v_d^{(0,1)} (t,x) + tv(t,x) \lb t\lp \alpha_d'(x) \rp^2 -\alpha_d''(x)\rb + v_d^{(0,2)}(t,x)\rb \nonumber +% \end{align} +% Multiplying both sides by $e^{-t\alpha_d(x)}$ then gives us: +% \begin{align} +% v_d^{(1,0)}(t,x) -2t\alpha'_d(x)v_d^{(0,1)}(t,x)+tv(t,x)\lb t \lp \alpha_d'(x) \rp^2 - \alpha''_d(x) \rb + v_d^{(0,2)}(t,x) &= 0 \nonumber\\ +% v_d^{(1,0)}(t,x) = 2t\alpha'_d(x)v_d^{(0,1)}(t,x)-v(t,x)\lb t^2 \lp \alpha_d'(x) \rp^2 - t\alpha''_d(x) \rb - v_d^{(0,2)}(t,x) \nonumber\\ +% \end{align} +% From the variable substitution observe that: +% \begin{align} +% v_d(t,x) = e^{t \alpha_d(x)}u_d(t,x) \nonumber +% \end{align} +% And hence: +% \begin{align} +% v_d(0,x) = e^{0}u_d(0,x) \nonumber\\ +% v_d(0,x) = u_d(0,x) \nonumber +% \end{align} +\begin{align} + u_t &= -\alpha e^{-t\alpha}v+e^{-t\alpha} v_t \\ + \frac{1}{2}\nabla^2_x u &= \frac{1}{2} \lb e^{-t\alpha} \nabla^2_xv+2\la \nabla_x v, \nabla_x e^{-t\alpha} \ra + v\nabla^2_x e^{-t\alpha} \rb +% u_{xx} &= \frac{1}{2}e^{-t\alpha} \lb -2t\alpha_x v_x + tv \lb t(\alpha_x)^2-\alpha_{xx}\rb + v_{xx}\rb +\end{align} +This then renders (\ref{3.3.7}) as: +\begin{align} + \cancel{-\alpha e^{-t\alpha}v} + e^{-t \alpha}v_t + \frac{1}{2} \lb e^{-t\alpha }\nabla^2_xv + 2\la \nabla_xv,\nabla_xe^{-t\alpha}\ra +v\nabla_x^2e^{-t\alpha} \rb + \cancel{\alpha e^{-t\alpha}v} &= 0 \nonumber\\ + e^{-t \alpha}v_t + \frac{1}{2} \lb e^{-t\alpha }\nabla^2_xv - 2te^{-t\alpha}\la \nabla_x v, \nabla_x \alpha \ra +v\nabla_x^2e^{-t\alpha} \rb &= 0 \nonumber\\ + e^{-t \alpha}v_t + \frac{1}{2} \lb e^{-t\alpha }\nabla^2_xv - 2te^{-t\alpha}\la \nabla_x v, \nabla_x \alpha \ra -tve^{-t\alpha}\nabla^2_x\alpha \rb &= 0 \nonumber\\ + v_t + \frac{1}{2} \lb \nabla_x^2v-2t\la \nabla_xv,\nabla_x\alpha \ra -tv\nabla^2_x\alpha \rb &= 0 \nonumber \\ + v_t + \frac{1}{2} \lb \nabla_x^2v-2t\la \nabla_x \alpha,\nabla_x v \ra -tv\nabla^2_x\alpha \rb &= 0 \nonumber \\ + v_t + \frac{1}{2}\nabla_x^2v+\la -t\nabla_x \alpha,\nabla_x v \ra -\frac{1}{2}tv\nabla^2_x\alpha &= 0 \label{3.3.12} +\end{align} +%\begin{align} +% \cancel{-\alpha e^{-t\alpha}v}+e^{-t\alpha} v_t + \frac{1}{2}e^{-t\alpha} \lb -2t\alpha_xv_x + tv \lb t(\alpha_x)^2-\alpha_{xx}\rb + v_{xx}\rb + \cancel{\alpha e^{-t\alpha}v} &= 0 \nonumber\\ +% e^{-t\alpha}v_t + \frac{1}{2} e^{-t\alpha} \lb -2t\alpha_x v_x + tv \lb t(\alpha_x)^2- \alpha_{xx} \rb + v_{xx} \rb &= 0 \nonumber \\ +% v_t -t\alpha_xv_x+\frac{1}{2}tv\lb t(\alpha_x )^2-\alpha_{xx} \rb + v_{xx} &= 0 \nonumber \\ +% v_t = 2t\alpha_xv_x - tv \lb t(\alpha_x)^2-\alpha_{xx} \rb &-v_{xx} +%\end{align} +Let $\sigma(t,x) = \mathbb{I}_d$, i.e. the uniform identity function. Let $\mu(t,x) = -t\nabla_x \alpha$ for $t \in [0,T], x\in \R^d$, and for fixed $\alpha$. Let $f(t,x,v) = -\frac{1}{2}tv\nabla_x^2 \alpha$ for $t \in [0,T], x \in \R^d$. + +\begin{claim} + It is the case that for for all $x \in \R^d$ and $t \in [0,T]$ that $\la x, \mu(t,x) \ra \leqslant L \lp 1 + \|x\|_E \rp$ for some constant $L \in (0,\infty)$. +\end{claim} +\begin{proof} +Since $\alpha$ has bounded first and second derivatives let: +\begin{align} + \mathfrak{B} = \max \left\{\sup_{x \in \R^d} \| \nabla_x \alpha \|_E, \sup_{x\in \R^d} \lv \nabla_x^2\alpha \rv \right\} \label{3.3.13} + \end{align} + Note that we then have the Cauchy-Schwarz inequality: +\begin{align} + \la x, \mu(t,x) \ra \leqslant \| \la x, -t\nabla_x \alpha \ra \|_E &\leqslant \| x\|_E\|t\nabla_x\alpha\|_E \nonumber\\ + &\leqslant T \lp \| x \|_E \mathfrak{B} \rp \nonumber \\ + &\leqslant T \lp\mathfrak{B} +d \rp \|x\|_E \nonumber\\ + &= L\| x\|_E \leqslant L\lp 1 + \|x \|_E^2 \rp +\end{align} +It also follows that $\|\sigma(t,x) \|_F =\sqrt{d}\leqslant L \leqslant L(1+\|x\|_E)$. +\end{proof} +\begin{claim} + It is the case that for all $x,y \in \R^d$, and $t \in [0,T]$ that: $\|\mu(t,x) - \mu(t,y) \|_E + \| \sigma(t,x) - \sigma(t,y)\|_E \leqslant \mathfrak{C} \lp \|x\|_E+\|y\|_E \rp \lp \|x-y\|_E\rp$ for some constant $\mathfrak{C} \in (0,\infty)$. +\end{claim} +\begin{proof} +The fact that for all $x,y \in \R^d$ and $t \in [0,T]$ it is the case that $\|\sigma(t,x)-\sigma(t,y)\|_F=0$, the fact that for all $x,y \in \R^d$ it is the case that $(\|x\|_E+\|y\|_E)(\|x-y\|_E) \geqslant 0$ and (\ref{3.3.13}) tells us that: +\begin{align} + \| \mu(t,x) - \mu(t,y) \|_E+\|\sigma(t,x) - \sigma(t,y) \|_F &= \| \mu(t,x) - \mu(t,y) \|_E+0 \nonumber\\ + &= \|t\nabla_x\alpha(x) - t\nabla_x \alpha(y) \|_E \nonumber\\ + &\leqslant T\|\nabla_x\alpha(x)-\nabla_x\alpha(y)\|_E \nonumber\\ + &\leqslant 2T\mathfrak{B} \label{3.3.15} +\end{align} +Now consider a function $\mathfrak{f} \in C \lp [0,T] \times \R^d,\R^d \rp$, where for all $x,y \in \R^d$ it is the case that $\mathfrak{f}(x) - \mathfrak{f}(y) \leqslant \mathscr{C}\lp \|x\|_E+\|y\|_E \rp \lp \|x+y\|_e \rp $. Note then that setting $y=x+h$ gives us: +\begin{align} + \left|\frac{\mathfrak{f}(x+h)-\mathfrak{f}(x)}{h} \right| &\leqslant \mathscr{C} \lp \|x\|_E + \|x+h\|_E \rp \nonumber \\ + \lim_{h \rightarrow 0} \left|\frac{\mathfrak{f}(x+h)-\mathfrak{f}(x)}{h} \right| &\leqslant \lim_{h\rightarrow 0}\mathscr{C} \lp \|x\|_E + \|x+h\|_E \rp \nonumber \\ + \left| \nabla_x\mathfrak{f}\lp x \rp \right| &\leqslant 2\mathscr{C}\|x\|_E = \mathscr{K}\|x\|_E +\end{align} +This suggests that $\nabla_x\mathfrak{f} \in O \lp x \rp$ and in particular that $\mathfrak{f} \in O \lp x^2 \rp$. However with $\mathfrak{f} \curvearrowleft \mu$ we first notice that because $\mu \leqslant 2T\mathfrak{B}$ in (\ref{3.3.15}) it must also be that case that $\mu \in O(1)$ by Corollary \ref{1.1.20.1}. However since $O(c) \subseteq O(x) \subseteq O \lp x^2 \rp$ by Corollary \ref{1.1.20.2} it is also the case that $\mu \in O \lp x^2 \rp$, and hence there exists a $\mathfrak{C}$ satisfying the claim. This proves the claim. +\end{proof} +\begin{claim}\label{3.3.5} + It is the case that $\lv f(t,x,v) - f(t,x,w) \rv \leqslant L \lv v-w \rv$ +\end{claim} +\begin{proof} +Note that by the absolute homogeneity property of norms, we have: +\begin{align} + \left|f(t,x,v) -f(t,x,w) \right| &= \left|\frac{1}{2}tv\nabla_x^2 \alpha - \frac{1}{2} tw \nabla_x^2 \alpha \right| \nonumber\\ + &= \left| \frac{1}{2}t\nabla_x^2\alpha \right| \left|v-w \right| \nonumber\\ + &\leqslant \frac{1}{2}T \left| \nabla_x^2 \alpha \right|\left| v-w \right| \nonumber\\ + &\leqslant \frac{1}{2}T \mathfrak{B} \lv v-w \rv \nonumber\\ + &\leqslant T(\mathfrak{B}+d)\lv v-w \rv \nonumber\\ + &=L \lv v-w \rv +\end{align} +\end{proof} + +Note that we may rewrite (\ref{3.3.12}) as: +\begin{align} + \lp \frac{\partial}{\partial t} v\rp \lp t,x \rp + \frac{1}{2}\Trace \lp \sigma \lp t,x \rp\lb \sigma \lp t,x \rp \rb^* \lp \Hess_x v\rp \lp t,x \rp \rp + \la \mu \lp t,x \rp , \lp \nabla_x v \rp \lp t,x \rp \ra \nonumber\\ + + f \lp t,x, v \lp t,x \rp \rp = 0 \nonumber +\end{align} + + + + + +We realize that (\ref{3.3.12}) is a case of \cite[Corollary~3.9]{bhj20} where it is the case that: $u(t,x) \curvearrowleft v(t,x)$, where $\sigma_d(x) = \mathbb{I}_d$ for all $x \in \R^d$, $d \in \N$, where $\mu(t,x) = -t\nabla_x\alpha$ for fixed $\alpha$ and for all $t \in [0,T]$, $x \in \R^d$, and where $f \lp t,x,u \lp t,x \rp \rp = -\frac{1}{2}tu\nabla_x^2\alpha$ for fixed $\alpha$ and for all $t\in [0,T]$, $x \in \R^d$. + +We thus have that there exists a unique, at most polynomially growing viscosity solution $v \in C\lp \lb 0,T \rb \times \R^d, \R \rp$ given as: + +\begin{align} + v(t,x) &= \E \lb v \lp T, \mathcal{Y}^{t,x}_T \rp+ \int^T_t f \lp s,\mathcal{Y}^{t,x}_s, v \lp s,\mathcal{Y}^{t,x}_s \rp \rp ds \rb \label{3.2.21} +\end{align} +Let $\mathcal{V}: \lb 0,T \rb \times \Omega \rightarrow \R^m$ be a standard $\lp \mathbb{F}_t\rp _{t \in \lb 0,T \rb }$-Brownian motion. Note that this also implies that the $\mathcal{Y}$ in (\ref{3.2.21}) is characterized as: +\begin{align} + \mathcal{Y}^{t,x}_s = x + \int^s_t \mu \lp r,\mathcal{Y}^{t,x}_r \rp dr + \int^s_t \sigma\lp s, \mathcal{X}^{t,x}_r \rp d\mathcal{V}_r +\end{align} +With substitution, this is then: +\begin{align} + \mathcal{Y}^{t,x}_s &= x + \int^s_t -r\nabla_x\alpha \lp \mathcal{Y}^{t,x}_r \rp dr + \int^s_t \mathbb{I} d\mathcal{V}_r \nonumber\\ + \mathcal{Y}^{t,x}_s &=x - \int^s_t r\nabla_x\alpha \lp \mathcal{Y}^{t,x}_s \rp dr + \mathcal{V}_{s-t} \nonumber +\end{align} +Note that our initial substitution tells us: $v(t,x) = e^{t\alpha(x)}u(t,x)$. And so we have that: +\begin{align} + v(t,x) &= \E \lb v\lp T, \mathcal{X}_T^{t,x} \rp + \int ^T_t f \lp s, \mathcal{X}^{t,x}_s, v \lp s, \mathcal{X}^{t,x}_s \rp \rp ds\rb \label{3.3.20}\\ + v(t,x)&=\E \lb v\lp T, \mathcal{X}^{t,x}_T \rp -\frac{1}{2} \int^T_ttv\lp s,\mathcal{X}^{t,x}_s \rp \nabla_x^2 \alpha \lp \mathcal{X}^{t,x}_s \rp ds\rb \nonumber\\ + e^{t\alpha(x)} u(t,x)&= \E \lb \exp \lb T\alpha \lp \mathcal{X}^{t,x}_T \rp \rb u\lp T, \mathcal{X}^{t,x}_T \rp -\frac{1}{2} \int^T_t t \exp \lb t\alpha \lp \mathcal{X}^{t,x}_s \rp \rb u\lp t, \mathcal{X}^{t,x}_s \rp \nabla_x^2\alpha \lp \mathcal{X}^{t,x}_s \rp ds\rb \nonumber \\ + u(t,x) &= \E \lb \exp \lb T \alpha\lp \mathcal{X}^{t,x}_T \rp -t\alpha (x)\rb u \lp T, \mathcal{X}^{t,x}_T \rp \rb \nonumber\\ + &- \E \lb\frac{1}{2e^{t\alpha(x)}} \int^T_t t \exp \lb t\alpha \lp \mathcal{X}^{t,x}_s \rp \rb u\lp t,\mathcal{X}^{t,x}_s \rp \nabla_x^2 \alpha \lp \mathcal{X}^{t,x}_s \rp ds \rb \nonumber +\end{align} +\end{proof}