]> git.parisson.com Git - telemeta-doc.git/commitdiff
WAC2015: update TimeSide column
authorThomas Fillon <thomas@parisson.com>
Fri, 23 Jan 2015 15:05:25 +0000 (16:05 +0100)
committerThomas Fillon <thomas@parisson.com>
Fri, 23 Jan 2015 15:05:25 +0000 (16:05 +0100)
Common/img/misc/GitHub-Mark-120px-plus.png [new file with mode: 0644]
Common/img/misc/django-logo-negative.png [new file with mode: 0644]
Common/img/misc/django-logo-positive.png [new file with mode: 0644]
Common/img/misc/python-logo-master-v3-TM.png [new file with mode: 0644]
Common/latex/tcolorbox.sty [new file with mode: 0644]
Conferences/2015_WAC/poster/beamerthemeParisson.sty
Conferences/2015_WAC/poster/poster_WAC2015.pdf
Conferences/2015_WAC/poster/poster_WAC2015.tex

diff --git a/Common/img/misc/GitHub-Mark-120px-plus.png b/Common/img/misc/GitHub-Mark-120px-plus.png
new file mode 100644 (file)
index 0000000..ea6ff54
Binary files /dev/null and b/Common/img/misc/GitHub-Mark-120px-plus.png differ
diff --git a/Common/img/misc/django-logo-negative.png b/Common/img/misc/django-logo-negative.png
new file mode 100644 (file)
index 0000000..2a1d873
Binary files /dev/null and b/Common/img/misc/django-logo-negative.png differ
diff --git a/Common/img/misc/django-logo-positive.png b/Common/img/misc/django-logo-positive.png
new file mode 100644 (file)
index 0000000..7196dce
Binary files /dev/null and b/Common/img/misc/django-logo-positive.png differ
diff --git a/Common/img/misc/python-logo-master-v3-TM.png b/Common/img/misc/python-logo-master-v3-TM.png
new file mode 100644 (file)
index 0000000..71f9420
Binary files /dev/null and b/Common/img/misc/python-logo-master-v3-TM.png differ
diff --git a/Common/latex/tcolorbox.sty b/Common/latex/tcolorbox.sty
new file mode 100644 (file)
index 0000000..13d6b24
--- /dev/null
@@ -0,0 +1,1716 @@
+%% The LaTeX package tcolorbox - version 3.40 (2015/01/14)
+%% tcolorbox.sty: Text color boxes
+%%
+%% -------------------------------------------------------------------------------------------
+%% Copyright (c) 2006-2014 by Prof. Dr. Dr. Thomas F. Sturm <thomas dot sturm at unibw dot de>
+%% -------------------------------------------------------------------------------------------
+%%
+%% This work may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either version 1.3
+%% of this license or (at your option) any later version.
+%% The latest version of this license is in
+%%   http://www.latex-project.org/lppl.txt
+%% and version 1.3 or later is part of all distributions of LaTeX
+%% version 2005/12/01 or later.
+%%
+%% This work has the LPPL maintenance status `author-maintained'.
+%%
+%% This work consists of all files listed in README
+%%
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesPackage{tcolorbox}[2015/01/14 version 3.40 text color boxes]
+\def\tcb@version{3.40}
+
+\RequirePackage{pgf}[2008/01/15]
+\RequirePackage{verbatim}[2003/08/22]
+\RequirePackage{environ}[2013/04/01]
+\RequirePackage{etoolbox}[2011/01/03]
+
+% register
+\newif\iftcb@lowerignored
+\newif\iftcb@lowervisible
+\newif\iftcb@uppervisible
+\newif\iftcb@hasTitle
+\newif\iftcb@hasLower
+\newif\iftcb@lowerspace
+\newif\iftcb@sidebyside
+\newif\iftcb@hasPhantom
+\newif\iftcb@lowerseparated
+\newif\iftcb@titlefilled
+\newif\iftcb@fixedheight
+\newif\iftcb@ignorenobreak
+
+\newbox\tcb@titlebox
+\newbox\tcb@upperbox
+\newbox\tcb@lowerbox
+\newbox\tcb@phantombox
+
+\newcounter{tcbbreakpart}
+\newcounter{tcblayer}
+
+\def\tcb@warning#1{\PackageWarning{tcolorbox}{#1}}
+\def\tcb@error#1#2{\PackageError{tcolorbox}{#1}{#2}}
+
+% key management
+\pgfkeys{/tcb/.is family}
+
+\def\tcbset{\pgfqkeys{/tcb}}
+\long\def\tcbset@late@options#1{\appto\tcb@lateoptions@hook{\tcbset{#1}}}
+
+\def\tcb@dim@to#1#2{\def#1{\the\dimexpr#2\relax}}
+\def\tcbdimto#1#2{\edef#1{\the\dimexpr#2\relax}}
+
+\def\tcb@defToTotalHeightStandard#1#2{\tcbdimto#1{\ht#2+\dp#2}}
+\let\tcb@defToTotalHeight\tcb@defToTotalHeightStandard
+
+\def\tcb@zpt{0pt}
+
+\def\tcb@comp@arc@auto{%
+  \let\tcb@outer@arc=\kvtcb@top@rule@stand%
+  \ifdim\kvtcb@bottom@rule@stand<\tcb@outer@arc\relax%
+    \let\tcb@outer@arc=\kvtcb@bottom@rule@stand\fi%
+  \ifdim\kvtcb@left@rule<\tcb@outer@arc\relax%
+    \let\tcb@outer@arc=\kvtcb@left@rule\fi%
+  \ifdim\kvtcb@right@rule<\tcb@outer@arc\relax%
+    \let\tcb@outer@arc=\kvtcb@right@rule\fi%
+  \tcbdimto\tcb@outer@arc{\tcb@outer@arc+\kvtcb@arc}%
+}
+
+\def\tcb@comp@arc@fix{%
+  \tcbdimto\tcb@outer@arc{\kvtcb@outerarc}%
+}
+
+\def\tcb@use@auto@parskip{%
+  \tcbset{autoparskip}%
+}
+
+\def\tcb@hack@currenvir{\edef\tcb@temp{\noexpand\def\noexpand\@currenvir{\kvtcb@savedelimiter}}\tcb@temp}
+
+\def\tcb@sbs@quota@leftwidth{%
+  \tcbdimto\tcb@w@upper{\kvtcb@sbs@ratio}%
+  \tcbdimto\tcb@w@lower{\tcb@w@sbs-\tcb@w@upper}%
+}
+
+\def\tcb@sbs@quota@rightwidth{%
+  \tcbdimto\tcb@w@lower{\kvtcb@sbs@ratio}%
+  \tcbdimto\tcb@w@upper{\tcb@w@sbs-\tcb@w@lower}%
+}
+
+\def\tcb@sbs@quota@leftratio{%
+  \tcbdimto\tcb@w@upper{\kvtcb@sbs@ratio\dimexpr\tcb@w@sbs}%
+  \tcbdimto\tcb@w@lower{\tcb@w@sbs-\tcb@w@upper}%
+}
+
+\def\tcb@sbs@quota@rightratio{%
+  \tcbdimto\tcb@w@lower{\kvtcb@sbs@ratio\dimexpr\tcb@w@sbs}%
+  \tcbdimto\tcb@w@upper{\tcb@w@sbs-\tcb@w@lower}%
+}
+
+\def\tcb@shield@@externalize{%
+  \ifdefined\tikzexternaldisable%
+    \ifdefined\pgfpictureid%
+    \else%
+      \tikzexternaldisable%
+    \fi%
+  \fi}
+
+\def\tcb@new@skin#1#2{\tcbset{skin@#1/.style={#2}}}
+\newcommand{\tcbsubskin}[3]{\tcb@new@skin{#1}{skin@#2,#3}}
+
+\pgfkeys{/handlers/.dimstore in/.code=\pgfkeysalso{\pgfkeyscurrentpath/.code=\def#1{\the\dimexpr##1\relax}}}
+\pgfkeys{/handlers/.colorlet/.code=\pgfkeysalso{\pgfkeyscurrentpath/.code=\colorlet{#1}{##1}}}
+
+\newcommand\tcbtitle{\ifx\tcbtitletext\@empty\else%
+  {\color{tcbcol@title}\kvtcb@fonttitle\kvtcb@before@title\tcbtitletext\kvtcb@after@title}\fi}
+
+\def\tcb@detach@title@code@{%
+  \let\tcbtitletext\kvtcb@title%
+  \let\kvtcb@title\@empty%
+  \tcbset{title/.store in=\tcbtitletext}%
+  \let\tcb@detach@title@code\@empty%
+  \let\tcb@attach@title@code\tcb@attach@title@code@%
+  \let\tcb@specialtitle@hook\@empty%
+}
+
+\def\tcb@attach@title@code@{%
+  \let\kvtcb@title\tcbtitletext%
+  \let\tcbtitletext\@empty%
+  \tcbset{title/.store in=\kvtcb@title}%
+  \let\tcb@attach@title@code\@empty%
+  \let\tcb@detach@title@code\tcb@detach@title@code@%
+  \let\tcb@specialtitle@hook\@empty%
+}
+
+\tcbset{%
+  title/.store in=\kvtcb@title,
+  notitle/.style={title=},
+  adjust text/.store in=\kvtcb@adjusttext,
+  adjusted title/.style={title={#1\vphantom{\kvtcb@adjusttext}}},
+  squeezed title/.style={title={%
+    \setbox\z@=\color@hbox#1\color@endbox%
+    \ifdim\wd\z@>\linewidth\relax%
+      \resizebox{\linewidth}{\height}{\unhbox\z@}%
+    \else%
+      \unhbox\z@%
+    \fi%
+  }},
+  squeezed title*/.style={squeezed title={#1\vphantom{\kvtcb@adjusttext}}},%
+  detach title/.code=\tcb@detach@title@code,%
+  attach title/.code=\tcb@attach@title@code,%
+  attach title to upper/.style={detach title,before upper={\tcbtitle#1}},
+  attach title to upper/.default=,
+  subtitle style/.store in=\kvtcb@subtitle@style,%
+  width/.store in=\kvtcb@width,
+  text width/.style={width={#1+\kvtcb@left@rule+\kvtcb@right@rule+\kvtcb@boxsep*2+\kvtcb@leftupper+\kvtcb@rightupper}},%
+  add to width/.code={\tcbdimto\kvtcb@width{\kvtcb@width+(#1)}},%
+  boxsep/.store in=\kvtcb@boxsep,
+  toprule/.code={%
+    \def\kvtcb@top@rule@stand{#1}%
+    \let\kvtcb@top@rule@break=\kvtcb@top@rule@stand%
+    },
+  bottomrule/.code={%
+    \def\kvtcb@bottom@rule@stand{#1}%
+    \let\kvtcb@bottom@rule@break=\kvtcb@bottom@rule@stand%
+    },
+  leftrule/.store in=\kvtcb@left@rule,
+  rightrule/.store in=\kvtcb@right@rule,
+  titlerule/.store in=\kvtcb@title@rule,
+  boxrule/.code={
+    \def\kvtcb@top@rule@stand{#1}%
+    \let\kvtcb@top@rule@break=\kvtcb@top@rule@stand%
+    \let\kvtcb@bottom@rule@stand=\kvtcb@top@rule@stand%
+    \let\kvtcb@bottom@rule@break=\kvtcb@top@rule@stand%
+    \let\kvtcb@left@rule=\kvtcb@top@rule@stand%
+    \let\kvtcb@right@rule=\kvtcb@top@rule@stand%
+    \let\kvtcb@title@rule=\kvtcb@top@rule@stand%
+    },
+  arc/.store in=\kvtcb@arc,
+  outer arc/.code={\def\kvtcb@outerarc{#1}\let\tcb@comp@arc=\tcb@comp@arc@fix},
+  auto outer arc/.code={\let\tcb@comp@arc=\tcb@comp@arc@auto},
+  sharpish corners/.style={arc=0pt,outer arc=0pt},
+  lefttitle/.store in=\kvtcb@lefttitle,
+  leftupper/.store in=\kvtcb@leftupper,
+  leftlower/.store in=\kvtcb@leftlower,
+  left/.style={lefttitle=#1,leftupper=#1,leftlower=#1},
+  righttitle/.store in=\kvtcb@righttitle,
+  rightupper/.store in=\kvtcb@rightupper,
+  rightlower/.store in=\kvtcb@rightlower,
+  right/.style={righttitle=#1,rightupper=#1,rightlower=#1},
+  top/.store in=\kvtcb@top,
+  toptitle/.store in=\kvtcb@toptitle,
+  bottom/.store in=\kvtcb@bottom,
+  bottomtitle/.store in=\kvtcb@bottomtitle,
+  middle/.store in=\kvtcb@middle,
+  colback/.colorlet=tcbcol@back,
+  colframe/.colorlet=tcbcol@frame,
+  colupper/.colorlet=tcbcol@upper,
+  collower/.colorlet=tcbcol@lower,
+  coltext/.style={colupper=#1,collower=#1},
+  coltitle/.colorlet=tcbcol@title,
+  fonttitle/.store in=\kvtcb@fonttitle,
+  fontupper/.store in=\kvtcb@fontupper,
+  fontlower/.store in=\kvtcb@fontlower,
+  tempfile/.store in=\kvtcb@tempfile,
+  savelowerto/.store in=\kvtcb@savelowerto,
+  savedelimiter/.estore in=\kvtcb@savedelimiter,
+  floatplacement/.store in=\kvtcb@floatplacement,
+  float/.code={\def\kvtcb@float{#1}\def\tcb@float@env@begin{\@float}\def\tcb@float@env@end{\end@float}},
+  float/.default=\kvtcb@floatplacement,
+  float*/.code={\def\kvtcb@float{#1}\def\tcb@float@env@begin{\@dblfloat}\def\tcb@float@env@end{\end@dblfloat}},
+  float*/.default=\kvtcb@floatplacement,
+  every float/.store in=\kvtcb@everyfloat,%
+  nofloat/.style={float=},
+  before/.code={\def\kvtcb@beforebox{#1}\let\tcb@use@autoparskip=\relax},
+  after/.code={\def\kvtcb@afterbox{#1}\let\tcb@use@autoparskip=\relax},
+  autoparskip/.code={\let\tcb@use@autoparskip=\tcb@use@auto@parskip},
+  parskip/.style={before={\par\pagebreak[0]\parindent=0pt},after={\par}},
+  noparskip/.style={before={\par\smallskip\pagebreak[0]\parindent=0pt},after={\par\smallskip}},
+  nobeforeafter/.style={before=,after=},
+  before skip/.style={before={%
+    \par\nointerlineskip\lineskip=0pt%
+    \addvspace{\glueexpr#1-\parskip}%
+    \noindent%
+    }},
+  after skip/.style={after={%
+    \par\nointerlineskip%
+    \addvspace{\glueexpr#1-\parskip}%
+    }},
+  beforeafter skip/.style={before skip={#1},after skip={#1}},
+  before nobreak/.store in=\kvtcb@beforebox@nobreak,
+  lowerbox/.is choice,
+  lowerbox/visible/.code={\tcb@lowerignoredfalse\tcb@lowervisibletrue},
+  lowerbox/invisible/.code={\tcb@lowerignoredfalse\tcb@lowervisiblefalse},
+  lowerbox/ignored/.code={\tcb@lowerignoredtrue\tcb@lowervisiblefalse},
+  upperbox/.is choice,
+  upperbox/visible/.code={\tcb@uppervisibletrue},
+  upperbox/invisible/.code={\tcb@uppervisiblefalse},
+  visible/.style={upperbox=visible,lowerbox=visible},
+  invisible/.style={upperbox=invisible,lowerbox=invisible},
+  natural height/.code={\tcb@fixedheightfalse\let\tcb@ch=\tcb@ch@natural\let\tcb@height@adjust\@empty},
+  height/.code={\tcb@fixedheighttrue\tcb@dim@to\kvtcb@height@fixed{#1}\let\tcb@ch=\tcb@ch@fixed\let\tcb@height@adjust\@empty},
+  text height/.code={\tcb@fixedheighttrue\tcb@dim@to\kvtcb@height@fixed{#1}\let\tcb@ch=\tcb@ch@innerfixed\let\tcb@height@adjust\@empty},
+  add to height/.code={\ifdefined\kvtcb@height@fixed\tcbdimto\kvtcb@height@fixed{\kvtcb@height@fixed+(#1)}\fi},
+  height plus/.dimstore in=\kvtcb@height@fixed@plus,%
+  height from/.style args={#1 to #2}{height={#1},height plus={#2-#1}},%
+  height fill/.is choice,%
+  height fill/false/.code={\let\tcb@height@adjust\@empty},%
+  equal height group/.code={\edef\tcb@ehgid{#1}\let\tcb@ch=\tcb@ch@equalheight},
+  minimum for equal height group/.code args={#1:#2}{\edef\tcb@ehgid{#1}\tcb@ehgadd{#2}},
+  space/.code={\def\tcb@height@fraction{#1}\let\tcb@ch@fixed@both=\tcb@ch@fixed@space},
+  space to upper/.style={space=1},
+  space to lower/.style={space=0},
+  space to both/.style={space=0.5},
+  split/.code={\def\tcb@height@fraction{#1}\let\tcb@ch@fixed@both=\tcb@ch@fixed@split},
+  valign/.store in=\kvtcb@valign,
+  valign lower/.store in=\kvtcb@valignlower,
+  enlarge top initially by/.store in=\kvtcb@bbtop@stand,%
+  enlarge top at break by/.store in=\kvtcb@bbtop@break,%
+  enlarge top by/.style={enlarge top initially by={#1},enlarge top at break by={#1}},%
+  enlarge bottom finally by/.store in=\kvtcb@bbbottom@stand,%
+  enlarge bottom at break by/.store in=\kvtcb@bbbottom@break,%
+  enlarge bottom by/.style={enlarge bottom finally by={#1},enlarge bottom at break by={#1}},%
+  enlarge left by/.store in=\kvtcb@bbleft,
+  enlarge right by/.store in=\kvtcb@bbright,
+  enlarge by/.style={enlarge top by={#1},enlarge bottom by={#1},enlarge left by={#1},enlarge right by={#1}},%
+  grow to left by/.code={%
+    \tcbdimto\kvtcb@width{\kvtcb@width+#1}%
+    \pgfkeysalso{enlarge left by={-\the\dimexpr#1\relax}}},%
+  grow to right by/.code={%
+    \tcbdimto\kvtcb@width{\kvtcb@width+#1}%
+    \pgfkeysalso{enlarge right by={-\the\dimexpr#1\relax}}},%
+  left skip/.style={grow to left by={-#1}},
+  right skip/.style={grow to right by={-#1}},
+  leftright skip/.style={left skip={#1},right skip={#1}},
+  toggle enlargement/.is choice,
+  toggle enlargement/none/.code={\let\tcb@setbb@toggle=\tcb@setbb@toggle@none},
+  toggle enlargement/evenpage/.code={\let\tcb@setbb@toggle=\tcb@setbb@toggle@evenpage},
+  toggle enlargement/forced/.code={\let\tcb@setbb@toggle=\tcb@setbb@toggle@forced},
+  toggle enlargement/.default=evenpage,
+  toggle left and right/.is choice,
+  toggle left and right/none/.code={\let\tcb@lrtoggle=\tcb@lrtoggle@none},
+  toggle left and right/evenpage/.code={\let\tcb@lrtoggle=\tcb@lrtoggle@evenpage},
+  toggle left and right/forced/.code={\let\tcb@lrtoggle=\tcb@lrtoggle@forced},
+  toggle left and right/.default=evenpage,
+  graphical environment/.store in=\kvtcb@graphenv,
+  %
+  frame engine/.is choice,
+  frame engine/standard/.style={frame code=\tcb@drawframe@standard},
+  frame engine/standardjigsaw/.style={frame code=\tcb@drawframe@standardjigsaw},
+  frame code/.code={\def\tcb@frame@code{#1}},%
+  frame code/.default=\tcb@drawframe@standard,%
+  frame empty/.style={frame code=},
+  %
+  interior titled engine/.is choice,
+  interior titled engine/standard/.style={interior titled code=\tcb@drawwithtitle@standard},
+  interior titled code/.code={\def\tcb@interiortitled@code{#1}},%
+  interior titled code/.default=\tcb@drawwithtitle@standard,%
+  interior titled empty/.style={interior titled code=},
+  %
+  interior engine/.is choice,
+  interior engine/standard/.style={interior code=\tcb@drawwithouttitle@standard},
+  interior code/.code={\def\tcb@interior@code{#1}},%
+  interior code/.default=\tcb@drawwithouttitle@standard,%
+  interior empty/.style={interior code=},
+  %
+  segmentation engine/.is choice,
+  segmentation engine/standard/.style={segmentation code=\tcb@drawlower@standard},
+  segmentation code/.code={\def\tcb@segmentation@code{#1}},%
+  segmentation code/.default=\tcb@drawlower@standard,%
+  segmentation empty/.style={segmentation code=},
+  %
+  title engine/.is choice,
+  title engine/standard/.style={@title code=\tcb@drawtitle@standard},
+  @title code/.code={\def\tcb@title@code{#1}},%
+  @title code/.default=\tcb@drawtitle@standard,%
+  title code/.style={title filled,@title code={#1}},%
+  title code/.default=\tcb@drawtitle@standard,%
+  title empty/.style={@title code=},
+  %
+  geometry nodes/.store in=\kvtcv@geonodes,
+  geometry nodes/.default=true,%
+  set@extensions@preframe/.store in=\tcb@extensions@preframe,%
+  set@extensions@postframe/.store in=\tcb@extensions@postframe,%
+  set@extensions@final/.store in=\tcb@extensions@final,%
+  set@outerboundary/.store in=\tcb@outerboundary,%
+  skin first/.store in=\kvtcb@skin@first,
+  skin middle/.store in=\kvtcb@skin@middle,
+  skin last/.store in=\kvtcb@skin@last,
+  skin/.style={skin@#1},
+  skin first is subskin of/.style 2 args={skin@local@first/.style={skin@#1,#2},skin first=local@first},%
+  skin middle is subskin of/.style 2 args={skin@local@middle/.style={skin@#1,#2},skin middle=local@middle},%
+  skin last is subskin of/.style 2 args={skin@local@last/.style={skin@#1,#2},skin last=local@last},%
+  parbox/.store in=\kvtcv@parbox,
+  parbox/.default=true,%
+  hyphenationfix/.is choice,%
+  hyphenationfix/.default=true,%
+  hyphenationfix/true/.code={\def\tcb@hyph@fix{\everypar=\expandafter{\the\everypar\everypar{\hspace{0pt}}\hspace{0pt}}}},%
+  hyphenationfix/false/.code={\let\tcb@hyph@fix=\@empty},%
+  overlay unbroken/.code={\def\tcb@overlay@unbroken{#1}},%
+  overlay first/.code={\def\tcb@overlay@first{#1}},%
+  overlay middle/.code={\def\tcb@overlay@middle{#1}},%
+  overlay last/.code={\def\tcb@overlay@last{#1}},%
+  overlay/.code={\def\tcb@overlay@temp{#1}%
+    \let\tcb@overlay@unbroken=\tcb@overlay@temp%
+    \let\tcb@overlay@first=\tcb@overlay@temp%
+    \let\tcb@overlay@middle=\tcb@overlay@temp%
+    \let\tcb@overlay@last=\tcb@overlay@temp},%
+  overlay broken/.code={\def\tcb@overlay@temp{#1}%
+    \let\tcb@overlay@first=\tcb@overlay@temp%
+    \let\tcb@overlay@middle=\tcb@overlay@temp%
+    \let\tcb@overlay@last=\tcb@overlay@temp},%
+  overlay unbroken and first/.code={\def\tcb@overlay@temp{#1}%
+    \let\tcb@overlay@unbroken=\tcb@overlay@temp%
+    \let\tcb@overlay@first=\tcb@overlay@temp},%
+  overlay unbroken and last/.code={\def\tcb@overlay@temp{#1}%
+    \let\tcb@overlay@unbroken=\tcb@overlay@temp%
+    \let\tcb@overlay@last=\tcb@overlay@temp},%
+  overlay middle and last/.code={\def\tcb@overlay@temp{#1}%
+    \let\tcb@overlay@middle=\tcb@overlay@temp%
+    \let\tcb@overlay@last=\tcb@overlay@temp},%
+  overlay first and middle/.code={\def\tcb@overlay@temp{#1}%
+    \let\tcb@overlay@first=\tcb@overlay@temp%
+    \let\tcb@overlay@middle=\tcb@overlay@temp},%
+  no overlay/.style={overlay=},%
+  standard/.style={skin=standard},%
+  standard jigsaw/.style={skin=standard jigsaw},%
+  before title/.store in=\kvtcb@before@title,%
+  after title/.store in=\kvtcb@after@title,%
+  before upper/.store in=\kvtcb@before@upper,%
+  after upper/.store in=\kvtcb@after@upper,%
+  before lower/.store in=\kvtcb@before@lower,%
+  after lower/.store in=\kvtcb@after@lower,%
+  center title/.style={before title=\centering},%
+  center upper/.style={before upper=\centering},%
+  center lower/.style={before lower=\centering},%
+  flushleft title/.style={before title=\raggedright},%
+  flushleft upper/.style={before upper=\raggedright},%
+  flushleft lower/.style={before lower=\raggedright},%
+  flushright title/.style={before title=\raggedleft},%
+  flushright upper/.style={before upper=\raggedleft},%
+  flushright lower/.style={before lower=\raggedleft},%
+  tabularx*/.style 2 args={%
+    boxsep=0pt,top=0pt,bottom=0pt,leftupper=0pt,rightupper=0pt,
+    toptitle=1mm,bottomtitle=1mm,boxrule=0.5mm,
+    before upper={\arrayrulecolor{tcbcol@frame}\def\arraystretch{1.1}#1%
+      \tcb@hack@currenvir\tabularx{\linewidth}{#2}},
+    after upper=\endtabularx\arrayrulecolor{black}},
+  tabularx/.style={tabularx*={}{#1}},
+  tikz upper/.style={before upper=\centering\tcb@shield@externalize\begin{tikzpicture}[#1],after upper=\end{tikzpicture}},%
+  tikz lower/.style={before lower=\centering\tcb@shield@externalize\begin{tikzpicture}[#1],after lower=\end{tikzpicture}},%
+  tikznode upper/.style={before upper={\centering\tcb@shield@externalize\begin{tikzpicture}\node[align=center,inner sep=0pt,outer sep=0pt,#1]\bgroup},after upper={\egroup;\end{tikzpicture}}},%
+  tikznode lower/.style={before lower={\centering\tcb@shield@externalize\begin{tikzpicture}\node[align=center,inner sep=0pt,outer sep=0pt,#1]\bgroup},after lower={\egroup;\end{tikzpicture}}},%
+  tikznode/.style={tikznode upper={#1},tikznode lower={#1}},%
+  varwidth upper/.style={before upper={\tcbdimto\tcb@w@upper{#1-\kvtcb@left@rule-\kvtcb@right@rule-\kvtcb@boxsep*2-\kvtcb@leftupper-\kvtcb@rightupper}%
+    \begin{varwidth}{\tcb@w@upper}},after upper={\end{varwidth}}},%
+  varwidth upper/.default=\kvtcb@width,
+  oversize/.style={%
+    width=\the\dimexpr\dimexpr\linewidth+#1+\kvtcb@left@rule+\kvtcb@leftupper+\kvtcb@boxsep*2+\kvtcb@rightupper+\kvtcb@right@rule\relax,%
+    enlarge left by=\the\dimexpr-\kvtcb@left@rule-\kvtcb@leftupper-\kvtcb@boxsep-#1/2\relax,%
+    enlarge right by=\the\dimexpr-\kvtcb@boxsep-\kvtcb@rightupper-\kvtcb@right@rule-#1/2\relax},%
+  oversize/.default=0pt,%
+  baseline/.store in=\kvtcb@baseline,%
+  tcbox raise/.style={baseline=-#1},%
+  tcbox raise base/.style={baseline=\tcb@val@raisebase},%
+  box align/.is choice,%
+  box align/bottom/.style={baseline=0pt},%
+  box align/top/.style={baseline=\tcb@height},%
+  box align/center/.style={baseline=\tcb@height/2},%
+  box align/base/.style={baseline=\tcb@val@raisebase},%
+  shrink tight/.style={boxsep=0mm,top=-\kvtcb@top@rule@stand,bottom=-\kvtcb@bottom@rule@stand,left=-\kvtcb@left@rule,right=-\kvtcb@right@rule},%
+  extrude left by/.code={\tcbdimto\kvtcb@leftupper{\kvtcb@leftupper+#1}\tcbdimto\kvtcb@bbleft{\kvtcb@bbleft-#1}\tcbdimto\kvtcb@width{\kvtcb@width+#1}},%
+  extrude right by/.code={\tcbdimto\kvtcb@rightupper{\kvtcb@rightupper+#1}\tcbdimto\kvtcb@bbright{\kvtcb@bbright-#1}\tcbdimto\kvtcb@width{\kvtcb@width+#1}},%
+  extrude top by/.code={\tcbdimto\kvtcb@top{\kvtcb@top+#1}\tcbdimto\kvtcb@bbtop@stand{\kvtcb@bbtop@stand-#1}},%
+  extrude bottom by/.code={\tcbdimto\kvtcb@bottom{\kvtcb@bottom+#1}\tcbdimto\kvtcb@bbbottom@stand{\kvtcb@bbbottom@stand-#1}},%
+  extrude by/.style={extrude left by=#1,extrude right by=#1,extrude top by=#1,extrude bottom by=#1},%
+  sidebyside/.is if=tcb@sidebyside,%
+  sidebyside align/.store in=\kvtcb@sbs@align,%
+  sidebyside gap/.dimstore in=\kvtcb@sbs@gap,%
+  lefthand width/.code={\def\kvtcb@sbs@ratio{#1}\let\tcb@sbs@quota=\tcb@sbs@quota@leftwidth},
+  righthand width/.code={\def\kvtcb@sbs@ratio{#1}\let\tcb@sbs@quota=\tcb@sbs@quota@rightwidth},
+  lefthand ratio/.code={\def\kvtcb@sbs@ratio{#1}\let\tcb@sbs@quota=\tcb@sbs@quota@leftratio},
+  righthand ratio/.code={\def\kvtcb@sbs@ratio{#1}\let\tcb@sbs@quota=\tcb@sbs@quota@rightratio},
+  breakable@false/.code={%
+    \let\tcb@savebox=\tcb@lrbox%
+    \let\endtcb@savebox=\endtcb@lrbox%
+    \let\tcb@defToTotalHeight=\tcb@defToTotalHeightStandard%
+    \let\tcb@drawcolorbox=\tcb@drawcolorbox@standalone},
+  code/.code={#1},
+  capture/.store in=\kvtcb@capture,%
+  hbox/.style={capture=hbox},%
+  minipage/.style={capture=minipage},%
+  check odd page/.is choice,
+  check odd page/true/.code={\let\tcb@checkoddpage=\checkoddpage%
+    \def\tcb@evenoddmode{strict}%
+    },
+  check odd page/false/.code={\let\tcb@checkoddpage=\relax%
+    \def\tcb@evenoddmode{easy}%
+    },
+  check odd page/.default=true,
+  phantom/.code={\appto\kvtcb@phantom{#1}},
+  step and label/.style 2 args={phantom={\refstepcounter{#1}\tcb@set@label{#2}}},%
+  step/.style={phantom={\refstepcounter{#1}}},%
+  label/.style={phantom={\tcb@set@label{#1}}},%
+  phantomlabel/.style={phantom={\ifdefined\phantomsection\phantomsection\fi\tcb@set@label{#1}}},%
+  label type/.store in=\kvtcb@label@type,%
+  no label type/.style={label type=},%
+  add to list/.style 2 args={phantom={\tcb@addcontentsline{#1}{#2}}},
+  nophantom/.code={\def\kvtcb@phantom{}},%
+  shield externalize/.is choice,
+  shield externalize/true/.code={\let\tcb@shield@externalize=\tcb@shield@@externalize},
+  shield externalize/false/.code={\let\tcb@shield@externalize=\relax},
+  shield externalize/.default=true,
+  external/.code={\tikzsetnextfilename{#1}},
+  remake/.code={\tikzset{external/remake next={#1}}},
+  remake/.default=true,
+  lower separated/.is if=tcb@lowerseparated,
+  options@for/.code={\letcs\tcb@new@colop{tcb@opt@#1}\pgfkeysalsofrom\tcb@new@colop},
+  list entry/.store in=\kvtcb@listentry,
+  list text/.style={list entry={\protect\numberline{\thetcbcounter}{\ignorespaces #1}}},
+  title filled/.is if=tcb@titlefilled,%
+  @colbacktitle/.colorlet=tcbcol@backtitle,
+  colbacktitle/.style={title filled,@colbacktitle={#1}},
+  opacityupper/.store in=\kvtcb@opacityupper,
+  opacitylower/.store in=\kvtcb@opacitylower,
+  opacitytitle/.store in=\kvtcb@opacitytitle,
+  opacityframe/.store in=\kvtcb@opacityframe,
+  opacityback/.store in=\kvtcb@opacityback,
+  @opacitybacktitle/.store in=\kvtcb@opacitybacktitle,
+  opacitybacktitle/.style={title filled,@opacitybacktitle={#1}},
+  opacityfill/.style={opacityframe={#1},opacityback={#1},@opacitybacktitle={#1}},
+  opacitytext/.style={opacityupper={#1},opacitylower={#1}},
+  spartan@fit/.code={},%
+  %
+  size/.is choice,
+  size/normal/.style={boxrule=0.5mm,boxsep=1mm,left=4mm,right=4mm,top=2mm,bottom=2mm,toptitle=0pt,bottomtitle=0pt,
+    middle=2mm,arc=1mm,auto outer arc},
+  size/title/.style={boxrule=0.4mm,boxsep=1mm,left=2mm,right=2mm,top=0.25mm,bottom=0.25mm,toptitle=0pt,bottomtitle=0pt,
+    middle=0.75mm,arc=0.75mm,auto outer arc},
+  size/small/.style={boxrule=0.3mm,boxsep=1mm,left=1mm,right=1mm,top=0pt,bottom=0pt,toptitle=0pt,bottomtitle=0pt,
+    middle=0.5mm,arc=0.5mm,auto outer arc},
+  size/fbox/.style={boxrule=0.4pt,boxsep=3pt,left=0pt,right=0pt,top=0pt,bottom=0pt,toptitle=0pt,bottomtitle=0pt,
+    middle=1pt,arc=1pt,auto outer arc},
+  size/tight/.style={boxrule=0.4pt,boxsep=0pt,left=0pt,right=0pt,top=0pt,bottom=0pt,toptitle=0pt,bottomtitle=0pt,
+    middle=0.2pt,arc=0pt,outer arc=0pt},
+  size/minimal/.style={boxrule=0pt,boxsep=0pt,left=0pt,right=0pt,top=0pt,bottom=0pt,toptitle=0pt,bottomtitle=0pt,
+    middle=0pt,arc=0pt,outer arc=0pt},
+  on line/.style={tcbox raise base,nobeforeafter},
+  shape@of@skin/.store in=\tcb@shapeofskin,
+  ignore nobreak/.is if=tcb@ignorenobreak,%
+  only/.code args={<#1>#2}{\only<#1>{\tcbset{#2}}},%
+  }
+
+\def\kvtcb@beforebox{}
+\def\kvtcb@afterbox{}
+
+\tcbset{%
+  autoparskip,minipage,savedelimiter=tcolorbox,%
+  set@extensions@preframe=,set@extensions@postframe=,set@extensions@final=,%
+}%
+
+\def\tcb@set@label#1{%
+  \ifx\kvtcb@label@type\@empty%
+    \label{#1}%
+  \else%
+    \label[\kvtcb@label@type]{#1}%
+  \fi%
+}
+
+\let\tcb@parboxrestore=\@parboxrestore
+
+\def\tcb@parbox@use@false{%
+  \def\@parboxrestore{\noindent\linewidth\hsize\let\@parboxrestore=\tcb@parboxrestore\leavevmode}%
+}
+
+\let\tcb@afteroptions@hook\@empty
+\let\tcb@parbox@use@true\relax%
+
+\def\tcb@minipage@top{\minipage[t]}
+\let\tcb@minipage@center=\minipage
+\def\tcb@minipage@bottom{\minipage[b]}
+\let\tcb@minipage=\tcb@minipage@center
+
+% lrbox with integrated minipage
+\def\tcb@lrbox#1#2{%
+  \edef\reserved@a{%
+    \endgroup
+    \setbox#1\hbox{%
+      \begingroup\aftergroup}%
+    \def\noexpand\@currenvir{\@currenvir}%
+    \def\noexpand\@currenvline{\on@line}}%
+  \reserved@a
+    \@endpefalse
+    \csname tcb@parbox@use@\kvtcv@parbox\endcsname%
+    \tcb@minipage#2\tcb@hyph@fix\ignorespaces}
+\def\endtcb@lrbox{\unskip\endminipage}
+
+\let\tcb@savebox=\tcb@lrbox
+\let\endtcb@savebox=\endtcb@lrbox
+
+\def\tcb@saveupperbox{%
+\begin{tcb@savebox}{\tcb@upperbox}{\tcb@w@upper}\kvtcb@fontupper\kvtcb@before@upper\ignorespaces}
+
+\def\tcb@savelowerbox{%
+\begin{tcb@savebox}{\tcb@lowerbox}{\tcb@w@lower}\kvtcb@fontlower\kvtcb@before@lower\ignorespaces}
+
+
+% counter for float
+\AtBeginDocument{%
+\@ifundefined{c@float@type}%
+    {\edef\ftype@tcbfloat{\ifx\c@figure\@undefined 1\else 4\fi}}%
+    {\edef\ftype@tcbfloat{\the\c@float@type}%
+     \addtocounter{float@type}{\value{float@type}}}%
+\def\c@tcbfloat{\c@float@type}% tricking the caption package
+\ifdim\parskip>0pt%
+  \tcbset{autoparskip/.style=parskip}%
+\else%
+  \tcbset{autoparskip/.style=noparskip}%
+\fi%
+\tcb@use@autoparskip%
+}
+
+\long\def\tcb@colorbox{%
+  \@ifnextchar[{\tcb@@icolorbox}{\tcb@@icolorbox[]}}
+
+
+\def\tcb@set@@phantom{%
+  \ifx\kvtcb@phantom\@empty\tcb@hasPhantomfalse\else%
+    \tcb@hasPhantomtrue%
+    \sbox\tcb@phantombox{\kvtcb@phantom}%
+  \fi%
+}
+
+\def\tcb@set@@title{%
+  \ifx\kvtcb@title\@empty\tcb@hasTitlefalse\tcb@specialtitle@hook\else%
+    \tcb@hasTitletrue%
+    \tcbdimto\tcb@w@title{\kvtcb@width-(\kvtcb@left@rule)-(\kvtcb@right@rule)-(\kvtcb@boxsep)*2-(\kvtcb@lefttitle)-(\kvtcb@righttitle)}%
+    \begin{tcb@savebox}{\tcb@titlebox}{\tcb@w@title}\color{tcbcol@title}\kvtcb@fonttitle\kvtcb@before@title\kvtcb@title\kvtcb@after@title\end{tcb@savebox}%
+  \fi%
+}
+
+\def\tcb@set@@dimensions{%
+  % sanitize
+  \tcbdimto\kvtcb@arc{\kvtcb@arc}%
+  \tcbdimto\kvtcb@left@rule{\kvtcb@left@rule}%
+  \tcbdimto\kvtcb@right@rule{\kvtcb@right@rule}%
+  \tcbdimto\kvtcb@title@rule{\kvtcb@title@rule}%
+  \tcbdimto\kvtcb@top@rule@stand{\kvtcb@top@rule@stand}%
+  \tcbdimto\kvtcb@top@rule@break{\kvtcb@top@rule@break}%
+  \tcbdimto\kvtcb@bottom@rule@stand{\kvtcb@bottom@rule@stand}%
+  \tcbdimto\kvtcb@bottom@rule@break{\kvtcb@bottom@rule@break}%
+  \tcbdimto\kvtcb@boxsep{\kvtcb@boxsep}%
+  \tcbdimto\kvtcb@lefttitle{\kvtcb@lefttitle}%
+  \tcbdimto\kvtcb@leftupper{\kvtcb@leftupper}%
+  \tcbdimto\kvtcb@leftlower{\kvtcb@leftlower}%
+  \tcbdimto\kvtcb@righttitle{\kvtcb@righttitle}%
+  \tcbdimto\kvtcb@rightupper{\kvtcb@rightupper}%
+  \tcbdimto\kvtcb@rightlower{\kvtcb@rightlower}%
+  \tcbdimto\kvtcb@top{\kvtcb@top}%
+  \tcbdimto\kvtcb@toptitle{\kvtcb@toptitle}%
+  \tcbdimto\kvtcb@bottom{\kvtcb@bottom}%
+  \tcbdimto\kvtcb@bottomtitle{\kvtcb@bottomtitle}%
+  \tcbdimto\kvtcb@middle{\kvtcb@middle}%
+  % computation of text width
+  \tcbdimto\tcb@width{\kvtcb@width}%
+  \tcbdimto\tcb@innerwidth{\tcb@width-\kvtcb@left@rule-\kvtcb@right@rule}%
+  \tcbdimto\tcb@w@upper{\tcb@innerwidth-\kvtcb@boxsep*2-\kvtcb@leftupper-\kvtcb@rightupper}%
+}
+
+\def\tcb@set@@sidebyside{%
+  \iftcb@sidebyside%
+    \tcbset{breakable@false}%
+    \def\tcb@minipage{\csname tcb@minipage@\kvtcb@sbs@align\endcsname}%
+    \tcbdimto\tcb@w@upper@real{\tcb@w@upper}%
+    \tcbdimto\kvtcb@sbs@gap{\kvtcb@sbs@gap}%
+    \tcbdimto\tcb@w@sbs{\tcb@w@upper@real-\kvtcb@sbs@gap}%
+    \tcb@sbs@quota%
+  \fi%
+}
+
+\def\tcb@set@@upper@and@lower{%
+  \colorlet{tcbcol@origin}{.}%
+  \let\tcb@after@box=\kvtcb@after@upper%
+  % switch for lower box
+  \def\tcblower{%
+    \unskip\tcb@after@box%
+    \end{tcb@savebox}%
+    \letcs{\current@color}{\string\color@tcbcol@lower}%
+    \unless\iftcb@sidebyside%
+      \tcbdimto\tcb@w@lower{\tcb@innerwidth-\kvtcb@boxsep*2-\kvtcb@leftlower-\kvtcb@rightlower}%
+    \fi%
+    \tcb@hasLowertrue%
+    \let\tcb@after@box=\kvtcb@after@lower%
+    \ifx\kvtcb@savelowerto\@empty%
+      \let\tcb@startbox\tcb@savelowerbox%
+      \let\endtcolorbox\tcb@endboxanddraw%
+    \else%
+      \let\tcb@startbox\tcb@lowerverbatim%
+      \expandafter\let\csname end\kvtcb@savedelimiter\expandafter\endcsname\csname tcb@endlowerverbatimanddraw\endcsname%
+    \fi%
+    \tcb@startbox}%
+  % start of upper box
+  \let\endtcolorbox\tcb@endboxanddraw%
+  \letcs{\current@color}{\string\color@tcbcol@upper}%
+  \tcb@saveupperbox%
+}
+
+
+\def\tcb@@capture@minipage{%
+  \let\tcb@val@raisebase=\tcb@zpt%
+  \tcb@set@@phantom%
+  \tcb@set@@title%
+  \tcb@set@@dimensions%
+  \tcb@set@@sidebyside%
+  \tcb@set@@upper@and@lower%
+}
+
+\def\tcb@@capture@hbox{%
+  \let\endtcolorbox=\relax%
+  \Collect@Body\tcbox@inner@hbox@collected%
+}
+
+\long\def\tcbox@inner@hbox@collected#1{%
+  \tcbox@inner@hbox{#1}%
+  \tcb@finalize@environment%
+}
+
+
+\def\tcb@managed@layers@max{0}
+\def\tcbsetmanagedlayers#1{%
+  \setcounter{tcblayer}{\tcb@managed@layers@max}%
+  \ifnum\c@tcblayer<#1\relax%
+    \loop
+      \stepcounter{tcblayer}%
+      \newbox\tcb@temp%
+      \cslet{tcb@footnote@\romannumeral\c@tcblayer}{\tcb@temp}%
+      \tcbset{every box on layer \number\c@tcblayer/.style={reset,every box}}
+    \ifnum\c@tcblayer<#1\repeat%
+  \else%
+  \fi%
+  \xdef\tcb@managed@layers@max{#1}%
+  \setcounter{tcblayer}{0}%
+}
+\@onlypreamble\tcbsetmanagedlayers
+\tcbsetmanagedlayers{4}%
+
+\tcbset{%
+  every box/.style={},
+  every box on layer 1/.style={every box},
+  every box on higher layers/.style={reset,every box},
+}
+
+\def\tcb@layer@inc{%
+  \stepcounter{tcblayer}%
+  \ifnum\c@tcblayer>1%
+    \tcbset{breakable@true/.code=}%
+  \fi%
+  \ifnum\c@tcblayer>\tcb@managed@layers@max%
+    \tcbset{every box on higher layers}%
+  \else%
+    \expandafter\setbox\csname tcb@footnote@\romannumeral\c@tcblayer\endcsname\box\@mpfootins%
+    \csedef{tcb@footnote@cnt@\romannumeral\c@tcblayer}{\the\c@mpfootnote}%
+    \tcbset{every box on layer \number\c@tcblayer}%
+  \fi%
+}
+
+\def\tcb@layer@pushup{%
+  \stepcounter{tcblayer}%
+  \ifnum\c@tcblayer>1%
+    \tcbset{breakable@true/.code=}%
+  \fi%
+  \ifnum\c@tcblayer>\tcb@managed@layers@max%
+    \tcbset{every box on higher layers}%
+    \tcbset{every box on higher layers/.code=}%
+  \else%
+    \tcbset{every box on layer \number\c@tcblayer}%
+    \tcbset{every box on layer \number\c@tcblayer/.code=}%
+  \fi%
+  \addtocounter{tcblayer}{-1}%
+}
+
+\def\tcb@layer@dec{%
+  \ifnum\c@tcblayer>\tcb@managed@layers@max%
+  \else%
+    \expandafter\global\setbox\@mpfootins\box\csname tcb@footnote@\romannumeral\c@tcblayer\endcsname%
+    \setcounter{mpfootnote}{\csname tcb@footnote@cnt@\romannumeral\c@tcblayer\endcsname}%
+  \fi%
+  \addtocounter{tcblayer}{-1}%
+}
+
+\long\def\tcb@apply@box@options#1{%
+  \tcbset{#1}\tcb@lateoptions@hook\tcb@afteroptions@hook%
+}
+
+\long\def\tcb@@icolorbox[#1]{%
+  \tcb@layer@inc%
+  \tcb@apply@box@options{capture=minipage,#1}\tcb@height@adjust%
+  \tcb@hasLowerfalse%
+  \csname tcb@@capture@\kvtcb@capture\endcsname%
+}
+
+\let\tcolorbox\tcb@colorbox
+
+\def\tcb@endboxanddraw{%
+  \unskip\tcb@after@box%
+  \end{tcb@savebox}%
+  \letcs{\current@color}{\string\color@tcbcol@origin}%
+  \tcb@draw@color@box%
+  \tcb@finalize@environment%
+}
+
+\def\tcb@finalize@environment{%
+  %\color{.}% hack for some special cases
+  \tcb@layer@dec%
+}
+
+\let\endtcolorbox=\tcb@endboxanddraw
+
+% height computations
+\def\tcb@ch@natural{%
+  \edef\tcb@height{\tcb@natheight}%
+  \tcbdimto\tcb@height@upper{\ht\tcb@upperbox+\dp\tcb@upperbox}%
+  \iftcb@lowerspace%
+  \tcbdimto\tcb@height@lower{\ht\tcb@lowerbox+\dp\tcb@lowerbox}%
+  \fi%
+}
+
+\def\tcb@ch@fixed@upper{%
+  \tcbdimto\tcb@height@upper{\ht\tcb@upperbox+\dp\tcb@upperbox+\tcb@height-\tcb@natheight}%
+}
+
+\def\tcb@ch@fixed@space{%
+  \tcbdimto\tcb@height@space{\tcb@height-\tcb@natheight}%
+  \tcbdimto\tcb@height@spaceupper{\tcb@height@fraction\dimexpr\tcb@height@space\relax}%
+  \tcbdimto\tcb@height@upper{\ht\tcb@upperbox+\dp\tcb@upperbox+\tcb@height@spaceupper}%
+  \tcbdimto\tcb@height@lower{\ht\tcb@lowerbox+\dp\tcb@lowerbox+\tcb@height@space-\tcb@height@spaceupper}%
+}
+
+\def\tcb@ch@fixed@split{%
+  \tcbdimto\tcb@height@space{\tcb@height-\tcb@natheight+\ht\tcb@upperbox+\dp\tcb@upperbox+\ht\tcb@lowerbox+\dp\tcb@lowerbox}%
+  \tcbdimto\tcb@height@upper{\tcb@height@fraction\dimexpr\tcb@height@space\relax}%
+  \tcbdimto\tcb@height@lower{\tcb@height@space-\tcb@height@upper}%
+}
+
+\def\tcb@ch@fixed{%
+  \ifdim\tcb@natheight<\dimexpr\kvtcb@height@fixed\relax%
+    \edef\tcb@height{\kvtcb@height@fixed}%
+  \else%
+    \tcbdimto\tcb@temp{\kvtcb@height@fixed+\kvtcb@height@fixed@plus}%
+    \ifdim\tcb@natheight>\tcb@temp%
+      \edef\tcb@height{\tcb@temp}%
+    \else%
+      \edef\tcb@height{\tcb@natheight}%
+    \fi%
+  \fi%
+  \iftcb@lowerspace\tcb@ch@fixed@both\else\tcb@ch@fixed@upper\fi%
+}
+
+\def\tcb@ch@innerfixed{%
+  \tcbdimto\kvtcb@height@fixed{\kvtcb@height@fixed+\kvtcb@top@rule+\kvtcb@bottom@rule+\tcb@h@padtitle+\kvtcb@boxsep*2+\kvtcb@top+\kvtcb@bottom}%
+  \tcb@ch@fixed%
+}
+
+\def\tcb@saveehg#1{%
+  \immediate\write\@auxout{\string\csgdef{tcb@ehg@height@#1}{\csuse{tcb@ehg@current@#1}}}%
+}
+
+\def\tcb@ehgadd#1{%
+  \ifcsdef{tcb@ehg@current@\tcb@ehgid}{%
+    \ifdim\csuse{tcb@ehg@current@\tcb@ehgid}<#1\relax%
+      \csxdef{tcb@ehg@current@\tcb@ehgid}{#1}%
+    \fi%
+  }{%
+    \csxdef{tcb@ehg@current@\tcb@ehgid}{#1}%
+    \edef\tcb@temp{\noexpand\AtEndDocument{\noexpand\tcb@saveehg{\tcb@ehgid}}}%
+    \tcb@temp%
+  }%
+}
+
+\def\tcb@ch@equalheight{%
+  \tcb@ehgadd{\tcb@natheight}%
+  \ifcsdef{tcb@ehg@height@\tcb@ehgid}{%
+    \ifdim\csuse{tcb@ehg@height@\tcb@ehgid}<\tcb@natheight\relax%
+      \edef\tcb@height{\tcb@natheight}%
+    \else%
+      \letcs{\tcb@height}{tcb@ehg@height@\tcb@ehgid}%
+    \fi%
+  }{%
+    \edef\tcb@height{\tcb@natheight}%
+  }%
+  \iftcb@lowerspace\tcb@ch@fixed@both\else\tcb@ch@fixed@upper\fi%
+}
+
+\def\tcb@dbox@top#1#2#3#4#5{\pgftext[x=#1,y=#2+#3,left,top]{\color{#5}\box#4}}%
+
+\def\tcb@dbox@bottom#1#2#3#4#5{\pgftext[x=#1,y=#2,left,bottom]{\color{#5}\box#4}}%
+
+\def\tcb@dbox@center#1#2#3#4#5{\pgftext[x=#1,y=#2+#3/2,left]{\color{#5}\box#4}}%
+
+\def\tcb@arc@zpt{\pgfsetcornersarced{\pgfpointorigin}}%
+\def\tcb@arc@ins{\pgfsetcornersarced{\pgfqpoint{\kvtcb@arc}{\kvtcb@arc}}}%
+\def\tcb@arc@out{\pgfsetcornersarced{\pgfqpoint{\tcb@outer@arc}{\tcb@outer@arc}}}%
+
+\def\tcb@define@corner@mode#1{%
+\tcbset{%
+  #1 corners/.is choice,%
+  #1 corners/northwest/.code={\edef\tcb@corner@mode@NW{#1}},%
+  #1 corners/northeast/.code={\edef\tcb@corner@mode@NE{#1}},%
+  #1 corners/southwest/.code={\edef\tcb@corner@mode@SW{#1}},%
+  #1 corners/southeast/.code={\edef\tcb@corner@mode@SE{#1}},%
+  #1 corners/north/.code={\edef\tcb@corner@mode@NW{#1}\edef\tcb@corner@mode@NE{#1}},%
+  #1 corners/south/.code={\edef\tcb@corner@mode@SW{#1}\edef\tcb@corner@mode@SE{#1}},%
+  #1 corners/east/.code={\edef\tcb@corner@mode@NE{#1}\edef\tcb@corner@mode@SE{#1}},%
+  #1 corners/west/.code={\edef\tcb@corner@mode@NW{#1}\edef\tcb@corner@mode@SW{#1}},%
+  #1 corners/downhill/.code={\edef\tcb@corner@mode@NW{#1}\edef\tcb@corner@mode@SE{#1}},%
+  #1 corners/uphill/.code={\edef\tcb@corner@mode@NE{#1}\edef\tcb@corner@mode@SW{#1}},%
+  #1 corners/all/.code={\edef\tcb@corner@mode@NW{#1}\edef\tcb@corner@mode@NE{#1}\edef\tcb@corner@mode@SW{#1}\edef\tcb@corner@mode@SE{#1}},%
+  #1 corners/.default=all}}%
+
+\tcb@define@corner@mode{rounded}
+\tcb@define@corner@mode{sharp}
+
+\def\tcb@arc@out@NW{\csname tcb@arc@out@NW@\tcb@corner@mode@NW\endcsname}
+\def\tcb@arc@out@NE{\csname tcb@arc@out@NE@\tcb@corner@mode@NE\endcsname}
+\def\tcb@arc@out@SW{\csname tcb@arc@out@SW@\tcb@corner@mode@SW\endcsname}
+\def\tcb@arc@out@SE{\csname tcb@arc@out@SE@\tcb@corner@mode@SE\endcsname}
+
+\def\tcb@arc@ins@NW{\csname tcb@arc@ins@NW@\tcb@corner@mode@NW\endcsname}
+\def\tcb@arc@ins@NE{\csname tcb@arc@ins@NE@\tcb@corner@mode@NE\endcsname}
+\def\tcb@arc@ins@SW{\csname tcb@arc@ins@SW@\tcb@corner@mode@SW\endcsname}
+\def\tcb@arc@ins@SE{\csname tcb@arc@ins@SE@\tcb@corner@mode@SE\endcsname}
+
+\let\tcb@arc@out@NW@sharp\tcb@arc@zpt
+\let\tcb@arc@out@NE@sharp\tcb@arc@zpt
+\let\tcb@arc@out@SW@sharp\tcb@arc@zpt
+\let\tcb@arc@out@SE@sharp\tcb@arc@zpt
+
+\let\tcb@arc@ins@NW@sharp\tcb@arc@zpt
+\let\tcb@arc@ins@NE@sharp\tcb@arc@zpt
+\let\tcb@arc@ins@SW@sharp\tcb@arc@zpt
+\let\tcb@arc@ins@SE@sharp\tcb@arc@zpt
+
+\let\tcb@arc@out@NW@rounded\tcb@arc@out
+\let\tcb@arc@out@NE@rounded\tcb@arc@out
+\let\tcb@arc@out@SW@rounded\tcb@arc@out
+\let\tcb@arc@out@SE@rounded\tcb@arc@out
+
+\let\tcb@arc@ins@NW@rounded\tcb@arc@ins
+\let\tcb@arc@ins@NE@rounded\tcb@arc@ins
+\let\tcb@arc@ins@SW@rounded\tcb@arc@ins
+\let\tcb@arc@ins@SE@rounded\tcb@arc@ins
+
+
+% boundaries
+\def\tcb@boundary@base#1#2#3#4#5#6#7#8{%
+  \tcbdimto\tcb@xa{#1}%
+  \tcbdimto\tcb@ya{#2}%
+  \tcbdimto\tcb@xb{#3}%
+  \tcbdimto\tcb@yb{#4}%
+  \pgfpathmoveto{\pgfqpoint{\tcb@xa}{\tcb@ya}}%
+  #6\pgfpathlineto{\pgfqpoint{\tcb@xa}{\tcb@yb}}%
+  #7\pgfpathlineto{\pgfqpoint{\tcb@xb}{\tcb@yb}}%
+  #8\pgfpathlineto{\pgfqpoint{\tcb@xb}{\tcb@ya}}%
+  #5\pgfpathclose%
+}
+
+\def\tcb@boundaryframe@standard{%
+  \tcb@boundary@base{0pt}{0pt}%
+    {\tcb@width}{\tcb@height}%
+    {\tcb@arc@out@SW}{\tcb@arc@out@NW}{\tcb@arc@out@NE}{\tcb@arc@out@SE}%
+}
+
+\def\tcb@boundaryframe@standardjigsaw{%
+  \pgfseteorule%
+  \tcb@boundaryframe@standard%
+  \iftcb@hasTitle%
+    \tcb@boundaryinterior@title@standard%
+    \iftcb@titlefilled%
+      \tcb@boundarytitle@standard%
+    \fi%
+  \else%
+    \tcb@boundaryinterior@notitle@standard%
+  \fi%
+}
+
+\def\tcb@boundaryinterior@title@standard{%
+  \tcb@boundary@base{\kvtcb@left@rule}{\kvtcb@bottom@rule}%
+    {\tcb@width-\kvtcb@right@rule}{\kvtcb@bottom@rule+\tcb@innerheight}%
+    {\tcb@arc@ins@SW}{\tcb@arc@zpt}{\tcb@arc@zpt}{\tcb@arc@ins@SE}%
+}
+
+\def\tcb@boundaryinterior@notitle@standard{%
+  \tcb@boundary@base{\kvtcb@left@rule}{\kvtcb@bottom@rule}%
+    {\tcb@width-\kvtcb@right@rule}{\tcb@height-\kvtcb@top@rule}%
+    {\tcb@arc@ins@SW}{\tcb@arc@ins@NW}{\tcb@arc@ins@NE}{\tcb@arc@ins@SE}%
+}
+
+\def\tcb@boundarytitle@standard{%
+  \tcb@boundary@base{\kvtcb@left@rule}{\kvtcb@bottom@rule+\tcb@innerheight+\kvtcb@title@rule}%
+    {\tcb@width-\kvtcb@right@rule}{\tcb@height-\kvtcb@top@rule}%
+    {\tcb@arc@zpt}{\tcb@arc@ins@NW}{\tcb@arc@ins@NE}{\tcb@arc@zpt}%
+}
+
+% fill frame
+\def\tcb@drawframe@standard{%
+  \begin{pgfscope}%
+  \tcb@boundaryframe@standard%
+  \pgfsetfillcolor{tcbcol@frame}%
+  \pgfsetfillopacity{\kvtcb@opacityframe}%
+  \pgfusepath{fill}%
+  \end{pgfscope}%
+}
+
+% fill frame
+\def\tcb@drawframe@standardjigsaw{%
+  \begin{pgfscope}%
+  \tcb@boundaryframe@standardjigsaw%
+  \pgfsetfillcolor{tcbcol@frame}%
+  \pgfsetfillopacity{\kvtcb@opacityframe}%
+  \pgfusepath{fill}%
+  \end{pgfscope}%
+}
+
+% fill inner box with title
+\def\tcb@drawwithtitle@standard{%
+  \begin{pgfscope}%
+  \tcb@boundaryinterior@title@standard%
+  \pgfsetfillcolor{tcbcol@back}%
+  \pgfsetfillopacity{\kvtcb@opacityback}%
+  \pgfusepath{fill}%
+  \end{pgfscope}%
+}
+
+% fill inner box without title
+\def\tcb@drawwithouttitle@standard{%
+  \begin{pgfscope}%
+  \tcb@boundaryinterior@notitle@standard%
+  \pgfsetfillcolor{tcbcol@back}%
+  \pgfsetfillopacity{\kvtcb@opacityback}%
+  \pgfusepath{fill}%
+  \end{pgfscope}%
+}
+
+% draw title box
+\def\tcb@drawtitle@standard{%
+  \begin{pgfscope}%
+  \tcb@boundarytitle@standard%
+  \pgfsetfillcolor{tcbcol@backtitle}%
+  \pgfsetfillopacity{\kvtcb@opacitybacktitle}%
+  \pgfusepath{fill}%
+  \end{pgfscope}%
+}
+
+% draw segmentation line
+\def\tcb@drawlower@standard{%
+  \begin{pgfscope}%
+  \pgfsetdash{{1mm}{1mm}}{0.5mm}%
+  \iftcb@sidebyside%
+  \tcbdimto\tcb@seg@pos{\kvtcb@left@rule+\kvtcb@boxsep+\kvtcb@leftupper+\tcb@w@upper+\kvtcb@sbs@gap/2}%
+  \pgfpathmoveto{\pgfqpoint{\tcb@seg@pos}{\the\dimexpr\kvtcb@bottom@rule+\tcb@innerheight\relax}}%
+  \pgfpathlineto{\pgfqpoint{\tcb@seg@pos}{\kvtcb@bottom@rule}}%
+  \else%
+  \tcbdimto\tcb@seg@pos{\kvtcb@bottom@rule+\kvtcb@boxsep*2+\tcb@break@bottomsep+\kvtcb@middle+\kvtcb@bottom+\tcb@height@lower}%
+  \pgfpathmoveto{\pgfqpoint{\kvtcb@left@rule}{\tcb@seg@pos}}%
+  \pgfpathlineto{\pgfqpoint{\the\dimexpr\tcb@width-\kvtcb@right@rule\relax}{\tcb@seg@pos}}%
+  \fi%
+  \pgfsetcolor{tcbcol@frame}%
+  \pgfsetstrokeopacity{\kvtcb@opacityframe}%
+  \pgfusepath{stroke}%
+  \end{pgfscope}%
+}
+
+
+\def\tcb@setbb@toggle@none{%
+  \pgfpathrectanglecorners{\pgfqpoint{\the\dimexpr0pt-\kvtcb@bbleft\relax}{\the\dimexpr0pt-\kvtcb@bbbottom\relax}}%
+     {\pgfqpoint{\the\dimexpr\tcb@width+\kvtcb@bbright\relax}{\the\dimexpr\tcb@height+\kvtcb@bbtop\relax}}%
+}
+
+\def\tcb@setbb@toggle@forced{%
+  \pgfpathrectanglecorners{\pgfqpoint{\the\dimexpr0pt-\kvtcb@bbright\relax}{\the\dimexpr0pt-\kvtcb@bbbottom\relax}}%
+    {\pgfqpoint{\the\dimexpr\tcb@width+\kvtcb@bbleft\relax}{\the\dimexpr\tcb@height+\kvtcb@bbtop\relax}}%
+}
+
+\def\tcb@setbb@toggle@evenpage@easy{%
+  \ifodd\thepage\tcb@setbb@toggle@none\else\tcb@setbb@toggle@forced\fi%
+}
+
+\def\tcb@setbb@toggle@evenpage@strict{%
+  \ifoddpage\tcb@setbb@toggle@none\else\tcb@setbb@toggle@forced\fi%
+}
+
+\def\tcb@setbb@toggle@evenpage{%
+  \csname tcb@setbb@toggle@evenpage@\tcb@evenoddmode\endcsname%
+}
+
+\def\tcb@creategeonodes@false{}
+
+\def\tcb@swap#1#2{%
+  \let\tcb@temp=#1%
+  \let#1=#2%
+  \let#2=\tcb@temp%
+}
+
+\let\tcb@lrtoggle@none=\relax
+
+\def\tcb@lrtoggle@forced{%
+  \tcb@swap{\kvtcb@left@rule}{\kvtcb@right@rule}%
+  \tcb@swap{\kvtcb@lefttitle}{\kvtcb@righttitle}%
+  \tcb@swap{\kvtcb@leftupper}{\kvtcb@rightupper}%
+  \tcb@swap{\kvtcb@leftlower}{\kvtcb@rightlower}%
+}
+
+\def\tcb@lrtoggle@evenpage@easy{%
+  \unless\ifodd\thepage\tcb@lrtoggle@forced\fi%
+}
+
+\def\tcb@lrtoggle@evenpage@strict{%
+  \unless\ifoddpage\tcb@lrtoggle@forced\fi%
+}
+
+\def\tcb@lrtoggle@evenpage{%
+  \csname tcb@lrtoggle@evenpage@\tcb@evenoddmode\endcsname%
+}
+
+\def\tcb@bbdraw{%
+  \tcb@checkoddpage%
+  \tcb@lrtoggle%
+  \tcb@setbb@toggle%
+  \pgfusepath{use as bounding box}%
+  \iftcb@hasPhantom%
+    \pgftext[x=0pt,y=\tcb@height-\baselineskip,left,top]{\box\tcb@phantombox}%
+    \tcb@hasPhantomfalse%
+  \fi%
+  \csname tcb@creategeonodes@\kvtcv@geonodes\endcsname%
+}
+
+\def\tcb@tdraw@title@core{%
+  \iftcb@hasTitle%
+    \begin{pgfscope}%
+    \pgfsetfillopacity{\kvtcb@opacitytitle}%
+    \pgftext[x=\the\dimexpr\kvtcb@left@rule+\kvtcb@boxsep+\kvtcb@lefttitle\relax,
+             y=\the\dimexpr\tcb@height-\kvtcb@top@rule-\kvtcb@boxsep-\kvtcb@toptitle\relax,
+             left,top]{\color{tcbcol@title}\box\tcb@titlebox}%
+    \end{pgfscope}%
+  \fi%
+}
+\let\tcb@tdraw@title=\tcb@tdraw@title@core
+
+\def\tcb@tdraw@upper@core{%
+  \iftcb@uppervisible%
+    \begin{pgfscope}%
+    \pgfsetfillopacity{\kvtcb@opacityupper}%
+    \csname tcb@dbox@\kvtcb@valign\endcsname{\the\dimexpr\kvtcb@left@rule+\kvtcb@boxsep+\kvtcb@leftupper\relax}%
+            {\the\dimexpr\tcb@innerheight+\kvtcb@bottom@rule-\kvtcb@boxsep-\tcb@break@topsep-\kvtcb@top-\tcb@height@upper\relax}%
+            {\tcb@height@upper}{\tcb@upperbox}{tcbcol@upper}%
+    \end{pgfscope}%
+  \fi%
+}
+\let\tcb@tdraw@upper=\tcb@tdraw@upper@core
+
+\def\tcb@tdraw@lower@core{%
+  \iftcb@lowervisible%
+    \begin{pgfscope}%
+    \pgfsetfillopacity{\kvtcb@opacitylower}%
+    \csname tcb@dbox@\kvtcb@valignlower\endcsname{\the\dimexpr\kvtcb@left@rule+\kvtcb@boxsep+\kvtcb@leftlower\relax}%
+            {\the\dimexpr\kvtcb@bottom@rule+\kvtcb@boxsep+\tcb@break@bottomsep+\kvtcb@bottom\relax}%
+            {\tcb@height@lower}{\tcb@lowerbox}{tcbcol@lower}%
+    \end{pgfscope}%
+  \fi%
+}
+\let\tcb@tdraw@lower=\tcb@tdraw@lower@core
+
+\def\tcb@sbs@mix{%
+  \begin{tcb@savebox}{\tcb@upperbox}{\tcb@w@upper@real}%
+    \iftcb@uppervisible%
+      \tcbdimto{\tcb@temp@wd}{\tcb@w@upper-\wd\tcb@upperbox+\kvtcb@sbs@gap}%
+      \noindent\unhbox\tcb@upperbox\kern\tcb@temp@wd%
+    \else%
+      \tcbdimto{\tcb@temp@wd}{\tcb@w@upper+\kvtcb@sbs@gap}%
+      \noindent\kern\tcb@temp@wd%
+      \rule[-\dp\tcb@upperbox]{0pt}{\the\dimexpr\ht\tcb@upperbox+\dp\tcb@upperbox\relax}%
+    \fi%
+    \iftcb@hasLower%
+      \iftcb@lowervisible\color{tcbcol@lower}\unhbox\tcb@lowerbox%
+      \else%
+        \iftcb@lowerignored\else\rule[-\dp\tcb@lowerbox]{0pt}{\the\dimexpr\ht\tcb@lowerbox+\dp\tcb@lowerbox\relax}\fi%
+      \fi%
+    \fi%
+  \end{tcb@savebox}%
+  \tcb@hasLowerfalse%
+  \tcb@uppervisibletrue%
+}
+
+\def\tcb@draw@color@box{%
+  \iftcb@sidebyside\tcb@sbs@mix\fi%
+  \tcb@comp@arc%
+  \iftcb@hasTitle%
+    \tcbdimto\tcb@h@title{\ht\tcb@titlebox+\dp\tcb@titlebox}%
+    \tcbdimto\tcb@h@padtitle{\kvtcb@title@rule+\kvtcb@boxsep*2+\kvtcb@toptitle+\kvtcb@bottomtitle+\tcb@h@title}%
+  \else%
+    \let\tcb@h@title=\tcb@zpt%
+    \let\tcb@h@padtitle=\tcb@zpt%
+  \fi%
+  %
+  \tcb@defToTotalHeight\tcb@h@upper{\tcb@upperbox}%
+  %
+  \iftcb@hasLower%
+  \iftcb@lowerignored\tcb@lowerspacefalse\else\tcb@lowerspacetrue\fi%
+  \else\tcb@lowerspacefalse\fi%
+  \iftcb@lowerspace%
+    \tcbdimto\tcb@h@segment{\kvtcb@boxsep*2+\kvtcb@middle*2}%
+    \tcb@defToTotalHeight\tcb@h@lower{\tcb@lowerbox}%
+  \else
+    \let\tcb@h@segment=\tcb@zpt%
+    \let\tcb@h@lower=\tcb@zpt%
+  \fi%
+  %
+  \tcb@shield@externalize%
+  \tcb@drawcolorbox%
+}
+
+\def\tcb@apply@overlay{\csname tcb@overlay@\tcb@split@state\endcsname}%
+
+\def\tcb@adraw@frame{%
+  \tcb@frame@code%
+}
+
+\def\tcb@adraw@interior{%
+  \iftcb@hasTitle%
+    \tcb@interiortitled@code%
+  \else%
+    \tcb@interior@code%
+  \fi%
+}
+
+\def\tcb@adraw@title{%
+  \iftcb@hasTitle%
+    \iftcb@titlefilled%
+      \tcb@title@code%
+    \fi%
+  \fi%
+}
+
+\def\tcb@drawing@env@begin{%
+  \csname tcb@before@\tcb@split@state\endcsname%
+  \begin{\kvtcb@graphenv}%
+  \tcb@bbdraw%
+}
+
+\def\tcb@drawing@env@end{%
+  \end{\kvtcb@graphenv}%
+  \csname tcb@after@\tcb@split@state\endcsname%
+}
+
+
+\def\tcb@drawcolorbox{%
+  \edef\tcb@split@state{unbroken}%
+  \let\kvtcb@top@rule=\kvtcb@top@rule@stand%
+  \let\kvtcb@bottom@rule=\kvtcb@bottom@rule@stand%
+  \let\kvtcb@bbtop=\kvtcb@bbtop@stand%
+  \let\kvtcb@bbbottom=\kvtcb@bbbottom@stand%
+  \let\tcb@break@topsep=\tcb@zpt%
+  \let\tcb@break@bottomsep=\tcb@zpt%
+  % floats
+  \ifx\kvtcb@float\@empty%
+    \let\tcb@before@unbroken=\kvtcb@beforebox%
+    \if@nobreak%
+      \iftcb@ignorenobreak\else%
+        \let\tcb@before@unbroken=\kvtcb@beforebox@nobreak%
+      \fi%
+    \fi%
+    \let\tcb@after@unbroken=\kvtcb@afterbox%
+  \else%
+    \edef\tcb@before@unbroken{\noexpand\tcb@float@env@begin{tcbfloat}[\kvtcb@float]\noexpand\kvtcb@everyfloat}%
+    \let\tcb@after@unbroken=\tcb@float@env@end%
+  \fi%
+  \setcounter{tcbbreakpart}{1}%
+  % computation of total height
+  \tcbdimto\tcb@natheight{\tcb@h@padtitle+\kvtcb@top@rule+\kvtcb@bottom@rule+\kvtcb@boxsep*2+\kvtcb@top+\kvtcb@bottom+\tcb@h@upper}%
+  \iftcb@lowerspace%
+    \tcbdimto\tcb@natheight{\tcb@natheight+\tcb@h@segment+\tcb@h@lower}%
+    \def\tcb@segment@state{1}%
+  \else%
+    \def\tcb@segment@state{0}%
+  \fi%
+  \tcb@ch%
+  \tcbdimto\tcb@innerheight{\tcb@height-\kvtcb@top@rule-\kvtcb@bottom@rule-\tcb@h@padtitle}%
+  \tcb@drawing@env@begin%
+    \pgfsetbaseline{\the\dimexpr\kvtcb@baseline-\kvtcb@bbbottom\relax}%
+    \tcb@extensions@preframe%
+    % draw frame and interior
+    \tcb@adraw@frame%
+    \tcb@adraw@interior%
+    \iftcb@lowerseparated%
+      \iftcb@lowerspace%
+        \tcb@segmentation@code%
+      \else\iftcb@sidebyside%
+        \tcb@segmentation@code%
+      \fi\fi%
+    \fi%
+    \tcb@adraw@title%
+    \tcb@extensions@postframe%
+    % draw text boxes
+    \tcb@tdraw@title%
+    \tcb@tdraw@upper%
+    \iftcb@hasLower\tcb@tdraw@lower\fi%
+    \tcb@extensions@final%
+  \tcb@drawing@env@end%
+}
+
+\let\tcb@drawcolorbox@standalone=\tcb@drawcolorbox
+
+\def\tcb@draw@border#1{}
+
+\long\def\tcbox@inner@hbox#1{%
+  \tcbset{breakable@false,sidebyside=false}%
+  \tcb@set@@phantom%
+  \sbox\tcb@upperbox{\color{tcbcol@upper}\kvtcb@fontupper\kvtcb@before@upper\ignorespaces#1\unskip\kvtcb@after@upper}%
+  \tcbdimto\tcb@val@raisebase{\the\dimexpr\dp\tcb@upperbox+\kvtcb@bottom+\kvtcb@boxsep+\kvtcb@bottom@rule@stand+\kvtcb@bbbottom@stand\relax}%
+  \tcbdimto\kvtcb@width{\wd\tcb@upperbox+\kvtcb@left@rule+\kvtcb@leftupper+\kvtcb@boxsep*2+\kvtcb@rightupper+\kvtcb@right@rule}%
+  \tcb@hasLowerfalse%
+  \tcb@set@@title%
+  \tcb@set@@dimensions%
+  \tcb@draw@color@box%
+}
+
+\long\def\tcbox@inner@minipage#1{%
+  \tcbset{breakable@false,sidebyside=false}%
+  \let\tcb@val@raisebase=\tcb@zpt%
+  \tcb@set@@phantom%
+  \tcb@set@@title%
+  \tcb@set@@dimensions%
+  \begin{tcb@savebox}{\tcb@upperbox}{\tcb@w@upper}\color{tcbcol@upper}\kvtcb@fontupper\kvtcb@before@upper\ignorespaces#1\unskip\kvtcb@after@upper\end{tcb@savebox}%
+  \tcb@hasLowerfalse%
+  \tcb@draw@color@box%
+}
+
+
+\long\def\tcb@ox#1#2{%
+  \begingroup%
+  \tcb@layer@inc%
+  \tcb@apply@box@options{#1}\tcb@height@adjust%
+  \csname tcbox@inner@\kvtcb@capture\endcsname{#2}%
+  \tcb@layer@dec%
+  \endgroup%
+}
+
+\newcommand{\tcbox}[2][]{%
+  \tcb@ox{capture=hbox,#1}{#2}%
+}
+
+\newcommand{\tcbsubtitle}[2][]{%
+  \begingroup%
+  \colorlet{tcbtranscol@frame}{tcbcol@frame}%
+  \iftcb@titlefilled%
+    \colorlet{tcbtranscol@back}{tcbcol@backtitle}%
+  \else%
+    \colorlet{tcbtranscol@back}{tcbcol@frame}%
+  \fi%
+  \colorlet{tcbtranscol@upper}{tcbcol@title}%
+  \let\tcb@trans@fontupper\kvtcb@fonttitle%
+  \let\tcb@trans@boxsep\kvtcb@boxsep%
+  \let\tcb@trans@left\kvtcb@leftupper%
+  \let\tcb@trans@right\kvtcb@rightupper%
+  \let\tcb@trans@top\kvtcb@toptitle%
+  \let\tcb@trans@bottom\kvtcb@bottomtitle%
+  \let\tcb@trans@rule\kvtcb@title@rule%
+  \let\tcb@trans@style\kvtcb@subtitle@style%
+  \begin{tcolorbox}[sharp corners,
+    before skip={0.5\baselineskip},after skip={0.5\baselineskip},
+    colframe=tcbtranscol@frame,colback=tcbtranscol@back,
+    colupper=tcbtranscol@upper,fontupper=\tcb@trans@fontupper,
+    boxsep=\tcb@trans@boxsep,left=\tcb@trans@left,right=\tcb@trans@right,
+    top=\tcb@trans@top,bottom=\tcb@trans@bottom,
+    boxrule=\tcb@trans@rule,leftrule=0pt,rightrule=0pt,oversize,
+    code={\pgfkeysalsofrom\tcb@trans@style},#1]%
+  #2%
+  \end{tcolorbox}%
+  \endgroup%
+}
+
+
+\def\tcb@new@label@type{\begingroup\edef\x{\endgroup\noexpand\appto\noexpand\tcb@new@colopt{,label type=\tcb@new@boxname}}\x}
+
+\tcbset{%
+  new/.cd,%
+  use counter/.code={\edef\kvtcb@new@counter{#1}\let\tcb@proc@counter=\tcb@proc@counter@use},
+  use counter*/.code={\edef\kvtcb@new@counter{#1}\let\tcb@proc@counter=\tcb@proc@counter@from},
+  auto counter/.code={\let\tcb@proc@counter=\tcb@proc@counter@auto},
+  use counter from/.code={\edef\kvtcb@new@counter{\csname tcb@cnt@#1\endcsname}\let\tcb@proc@counter=\tcb@proc@counter@from},
+  no counter/.code={\let\tcb@proc@counter=\tcb@proc@counter@no},
+  %
+  number within/.store in=\kvtcb@new@numberwithin,
+  number format/.store in=\kvtcb@new@format,
+  number freestyle/.store in=\kvtcb@new@freestyle,
+  %
+  list inside/.store in=\kvtcb@new@listof,
+  list type/.store in=\kvtcb@new@listtype,
+  %
+  init@hook@clear/.code={\def\kvtcb@init@hook{}},
+  crefname/.code 2 args={\begingroup\edef\x{\endgroup\noexpand\crefname{\tcb@new@boxname}}\x{#1}{#2}\tcb@new@label@type},
+  Crefname/.code 2 args={\begingroup\edef\x{\endgroup\noexpand\Crefname{\tcb@new@boxname}}\x{#1}{#2}\tcb@new@label@type},
+  %
+  blend into/.is choice,%
+  blend into/figures/.style={use counter*=figure,list inside=lof,/tcb/code={\appto\tcb@new@colopt{,before title={\fnum@figure:\ }}}},%
+  blend into/tables/.style={use counter*=table,list inside=lot,/tcb/code={\appto\tcb@new@colopt{,before title={\fnum@table:\ }}}},%
+  blend into/listings/.style={use counter*=lstlisting,list inside=lol,/tcb/code={\appto\tcb@new@colopt{,before title={\lstlistingname~\thetcbcounter:\ }}}},%
+  %
+  reset@new/.style={no counter,number within=,number format=\arabic,number freestyle=,list inside=,list type=tcolorbox,init@hook@clear},
+}
+
+\def\tcb@proc@counter@autoanduse#1{%
+  \letcs\tcbcounter{tcb@cnt@#1}%
+  \ifx\kvtcb@new@numberwithin\@empty%
+    \csxdef{the\tcbcounter}{\expandafter\noexpand\kvtcb@new@format{\tcbcounter}}%
+  \else%
+    \@addtoreset{\tcbcounter}{\kvtcb@new@numberwithin}%
+    \csxdef{the\tcbcounter}{\expandafter\noexpand\csname the\kvtcb@new@numberwithin\endcsname .\expandafter\noexpand\kvtcb@new@format{\tcbcounter}}%
+  \fi%
+  \ifx\kvtcb@new@freestyle\@empty%
+  \else%
+    \csxdef{the\tcbcounter}{\kvtcb@new@freestyle}%
+  \fi%
+  \global\csletcs{thetcb@cnt@#1}{the\tcbcounter}%
+  \appto\tcb@new@colopt{,code={\letcs\tcbcounter{tcb@cnt@#1}\letcs\thetcbcounter{thetcb@cnt@#1}\stepcounter{\tcbcounter}\preto\kvtcb@phantom{\addtocounter{\tcbcounter}{-1}\refstepcounter{\tcbcounter}}}}%
+}
+
+\def\tcb@proc@counter@auto#1{%
+  \newcounter{tcb@cnt@#1}%
+  \csxdef{tcb@cnt@#1}{tcb@cnt@#1}%
+  \tcb@proc@counter@autoanduse{#1}%
+}
+
+\def\tcb@proc@counter@use#1{%
+  \csxdef{tcb@cnt@#1}{\kvtcb@new@counter}%
+  \tcb@proc@counter@autoanduse{#1}%
+}
+
+\def\tcb@proc@counter@from#1{%
+  \csxdef{tcb@cnt@#1}{\kvtcb@new@counter}%
+  \global\csletcs{thetcb@cnt@#1}{the\kvtcb@new@counter}%
+  \appto\tcb@new@colopt{,code={\letcs\tcbcounter{tcb@cnt@#1}\letcs\thetcbcounter{thetcb@cnt@#1}\stepcounter{\tcbcounter}\preto\kvtcb@phantom{\addtocounter{\tcbcounter}{-1}\refstepcounter{\tcbcounter}}}}%
+}
+
+\def\tcb@proc@counter@no#1{%
+  \appto\tcb@new@colopt{,code={\let\tcbcounter=\@empty\let\thetcbcounter=\@empty}}%
+}%
+
+\long\def\tcb@proc@options@init#1#2{%
+  \tcbset{new/.cd,reset@new,#1}%
+  \tcb@proc@counter{#2}%
+  \ifx\kvtcb@new@listof\@empty%
+  \else%
+    \csedef{tcb@lstof@#2}{\kvtcb@new@listof}%
+    \csedef{tcb@lsttp@#2}{\kvtcb@new@listtype}%
+    \appto\tcb@new@colopt{,add to list={\csname tcb@lstof@#2\endcsname}{\csname tcb@lsttp@#2\endcsname}}%
+  \fi%
+  \kvtcb@init@hook%
+}%
+
+\long\def\tcb@process@newtcolorbox#1#2{%
+  \edef\tcb@new@boxname{#1}%
+  \def\tcb@new@colopt{}%
+  \long\def\temp@a{#2}%
+  \ifx\temp@a\@empty\relax%
+  \else%
+    \tcb@proc@options@init{#2}{#1}%
+  \fi%
+  \preto\tcb@new@colopt{savedelimiter=#1}%
+  \cslet{tcb@opt@#1}{\tcb@new@colopt}%
+  \tcb@process@newtcolorbox@continue{#1}%
+}
+
+\newcommand\tcb@process@newenvironment[2][]{%
+  \tcb@process@newtcolorbox{#2}{#1}%
+}
+
+\long\def\tcb@newtcolorbox#1#2{\tcb@newenvironment{#1}{\tcolorbox[#2,options@for=#1]}{\endtcolorbox}}
+
+\long\def\tcb@newtcolorbox@#1[#2]#3{\tcb@newenvironment{#1}[#2]{\tcolorbox[#3,options@for=#1]}{\endtcolorbox}}
+
+\long\def\tcb@newtcolorbox@@#1[#2][#3]#4{\tcb@newenvironment{#1}[#2][#3]{\tcolorbox[#4,options@for=#1]}{\endtcolorbox}}
+
+\long\def\tcb@new@tcolorbox@#1[#2]{%
+  \@ifnextchar[{\tcb@newtcolorbox@@{#1}[#2]}{\tcb@newtcolorbox@{#1}[#2]}}
+
+\def\tcb@new@tcolorbox#1{%
+  \@ifnextchar[{\tcb@new@tcolorbox@{#1}}{\tcb@newtcolorbox{#1}}}
+
+\def\newtcolorbox{%
+  \let\tcb@newenvironment\newenvironment%
+  \let\tcb@process@newtcolorbox@continue\tcb@new@tcolorbox%
+  \tcb@process@newenvironment}
+
+\def\renewtcolorbox{%
+  \let\tcb@newenvironment\renewenvironment%
+  \let\tcb@process@newtcolorbox@continue\tcb@new@tcolorbox%
+  \tcb@process@newenvironment}
+
+\newcommand{\tcolorboxenvironment}[2]{%
+  \BeforeBeginEnvironment{#1}{\begin{tcolorbox}[savedelimiter={#1},#2]}%
+  \AfterEndEnvironment{#1}{\end{tcolorbox}}%
+}
+
+% auxiliary code to remove a leading backspace
+\newcommand{\tcb@remove@bs}[1]{%
+  \ifcat\relax\noexpand#1%
+    \expandafter\tcb@remove@bs@aux@i%
+  \fi
+  #1}
+\newcommand*{\tcb@remove@bs@aux@i}{%
+  \romannumeral%
+    \if\string\ \tcb@remove@bs@aux@ii\fi%
+    \expandafter\tcb@remove@bs@aux@iii\string}
+\newcommand{\tcb@remove@bs@aux@ii}{}
+\long\def\tcb@remove@bs@aux@ii#1\tcb@remove@bs@aux@iii{%
+  -\number\fi\expandafter\z@}
+\newcommand{\tcb@remove@bs@aux@iii}[1]{\z@}
+
+\newcommand\tcb@process@newcommand[2][]{%
+  \begingroup\edef\x{\endgroup\noexpand\tcb@process@newtcolorbox{\tcb@remove@bs{#2}}}\x{#1}%
+}
+
+\long\def\tcb@newtcbox#1#2{\expandafter\tcb@newcommand\csname#1\endcsname{\tcbox[#2,options@for=#1]}}
+
+\long\def\tcb@newtcbox@#1[#2]#3{\expandafter\tcb@newcommand\csname#1\endcsname[#2]{\tcbox[#3,options@for=#1]}}
+
+\long\def\tcb@newtcbox@@#1[#2][#3]#4{\expandafter\tcb@newcommand\csname#1\endcsname[#2][#3]{\tcbox[#4,options@for=#1]}}
+
+\long\def\tcb@new@tcbox@#1[#2]{%
+  \@ifnextchar[{\tcb@newtcbox@@{#1}[#2]}{\tcb@newtcbox@{#1}[#2]}}
+
+\def\tcb@new@tcbox#1{%
+  \@ifnextchar[{\tcb@new@tcbox@{#1}}{\tcb@newtcbox{#1}}}
+
+\def\newtcbox{%
+  \let\tcb@newcommand\newcommand%
+  \let\tcb@process@newtcolorbox@continue\tcb@new@tcbox%
+  \tcb@process@newcommand}
+
+\def\renewtcbox{%
+  \let\tcb@newcommand\renewcommand%
+  \let\tcb@process@newtcolorbox@continue\tcb@new@tcbox%
+  \tcb@process@newcommand}
+
+
+\def\tcb@addcontentsline#1#2{%
+  \ifx\kvtcb@listentry\@empty%
+    \ifx\kvtcb@title\@empty%
+      \ifx\tcbtitletext\@empty%
+        \addcontentsline{#1}{#2}{\protect\numberline{\thetcbcounter}{\ignorespaces\kvtcb@savedelimiter}}%
+      \else%
+        \addcontentsline{#1}{#2}{\protect\numberline{\thetcbcounter}{\ignorespaces\tcbtitletext}}%
+      \fi%
+    \else%
+      \addcontentsline{#1}{#2}{\protect\numberline{\thetcbcounter}{\ignorespaces\kvtcb@title}}%
+    \fi%
+  \else%
+    \addcontentsline{#1}{#2}{\kvtcb@listentry}%
+  \fi%
+}
+
+\newcommand*\l@tcolorbox{\@dottedtocline{1}{1.5em}{2.3em}}
+
+\newcommand{\tcblistof}[3][\section]{%
+  #1{#3}%
+  \@starttoc{#2}%
+}
+
+
+
+% verbatim output as in 'verbatim'
+
+\newwrite\tcb@out
+
+\def\tcbverbatimwrite#1{%
+  \@bsphack
+  \immediate\openout \tcb@out #1
+  \let\do\@makeother\dospecials
+  \catcode`\^^M\active \catcode`\^^I=12
+  \def\verbatim@processline{%
+    \immediate\write\tcb@out
+      {\the\verbatim@line}}%
+  \verbatim@start}%'
+
+
+\def\endtcbverbatimwrite{%
+  \immediate\closeout\tcb@out
+  \@esphack%
+}
+
+
+% saving of the lower box
+
+\def\tcb@endlowerverbatimanddraw{%
+  \tcb@endlowerverbatim%
+  \IfFileExists{\kvtcb@savelowerto}{%
+    \tcb@savelowerbox\input{\kvtcb@savelowerto}\end{tcb@savebox}}{}%
+  \tcb@draw@color@box%
+  \tcb@finalize@environment%
+}
+
+\def\tcb@lowerverbatim{%
+  \begingroup%
+  \tcbverbatimwrite\kvtcb@savelowerto}
+
+\def\tcb@endlowerverbatim{%
+  \endtcbverbatimwrite%
+  \endgroup%
+}
+
+% saving of the upper box
+
+\def\tcbwritetemp{%
+  \begingroup%
+  \tcbverbatimwrite\kvtcb@tempfile}
+
+\def\endtcbwritetemp{%
+  \endtcbverbatimwrite%
+  \endgroup%
+}
+
+\def\tcbusetemp{\input{\kvtcb@tempfile}}
+
+% recording
+
+\newwrite\tcb@record@out
+
+\def\tcb@null#1{}
+\newcommand{\tcb@record}[1]{\immediate\write\tcb@record@out{#1}}
+
+\newcommand{\tcbstartrecording}[1][\jobname.records]{%
+  \let\tcbrecord\tcb@record%
+  \edef\tcb@record@file{#1}%
+  \immediate\openout\tcb@record@out\tcb@record@file%
+}
+
+\newcommand{\tcbstoprecording}{%
+  \immediate\closeout\tcb@record@out%
+  \let\tcbrecord\tcb@null%
+}
+
+\tcbset{%
+  record/.style={phantom={\tcbrecord{#1}}},
+  no recording/.code={\let\tcbrecord\tcb@null},
+  no recording
+}
+
+\newcommand{\tcbinputrecords}[1][\tcb@record@file]{%
+  \IfFileExists{#1}{\input{#1}}{\tcb@error{record file `#1' not found}{The record file `#1' was not found}}%
+}
+
+\tcb@new@skin{standard}{frame engine=standard,interior titled engine=standard,
+  interior engine=standard,segmentation engine=standard,title engine=standard,
+  graphical environment=pgfpicture,geometry nodes=false,
+  set@extensions@preframe=,set@extensions@postframe={\tcb@apply@overlay},set@extensions@final=,%
+  set@outerboundary=\tcb@boundaryframe@standard,%
+  shape@of@skin=unbroken,
+  skin first=standard,skin middle=standard,skin last=standard%
+}
+
+\tcb@new@skin{standard jigsaw}{skin@standard,frame engine=standardjigsaw,%
+  skin first=standard jigsaw,skin middle=standard jigsaw,skin last=standard jigsaw}
+
+\def\tcb@reset{}%
+\tcbset{%
+  initialize@reset/.code={\tcbset{#1}\appto\tcb@reset{\tcbset{#1}}},%
+  reset/.code={\tcb@reset},%
+  reset@core/.style={code={\let\tcbtitletext\@empty\tcb@attach@title@code@%
+    \let\tcb@lateoptions@hook\@empty},
+    width=\linewidth,autoparskip,
+    natural height,height plus=0pt,space to lower,valign=top,valign lower=top,
+    size=normal,rounded corners,
+    enlarge top by=0mm,enlarge bottom by=0mm,enlarge left by=0mm,enlarge right by=0mm,
+    toggle enlargement=none,toggle left and right=none,
+    baseline=0pt,adjust text={\"Apgjy},upperbox=visible,lowerbox=visible,lower separated,
+    colback=black!5!white,colframe=black!75!white,@colbacktitle=black!50!white,coltext=black,coltitle=white,
+    fonttitle=,fontupper=,fontlower=,floatplacement=htb,nofloat,savelowerto=,
+    tempfile={\jobname.tcbtemp},
+    standard,parbox,hyphenationfix=false,overlay=,
+    before title=,after title=,before upper=,after upper=,before lower=,after lower=,
+    sidebyside=false,sidebyside align=center,sidebyside gap=10mm,
+    lefthand ratio=0.5,check odd page=false,nophantom,
+    shield externalize=false,list entry=,no label type,
+    opacityupper=1.0,opacitylower=1.0,opacitytitle=1.0,opacityframe=1.0,opacityback=1.0,@opacitybacktitle=1.0,
+    subtitle style=,title filled=false,every float=,ignore nobreak=false,before nobreak=\noindent,
+  },
+  initialize@reset=reset@core,
+}
+
+\def\tcbsetforeverylayer#1{\tcbset{initialize@reset={#1}}}
+
+% libraries
+\def\tcb@optionlist{}
+
+\def\tcb@set@library@version#1{%
+  \def\tcb@library@version{#1}%
+  \typeout{Library (tcolorbox): '\tcb@library@inload' version '\tcb@library@version'}
+  \tcb@check@library@version%
+}
+
+\def\tcb@check@library@version{%
+  \ifx\tcb@library@version\tcb@version\else%
+  \tcb@error{tcolorbox version '\tcb@version' loads library '\tcb@library@inload' with version '\tcb@library@version'}%
+    {tcolorbox is not installed correctly. At least one library is not compatible to the main package.}%
+  \fi%
+}
+
+\def\tcbuselibrary#1{\tcbset{library/.cd,#1}}
+\@onlypreamble\tcbuselibrary
+
+\providecommand{\tcbpkgprefix}{}
+
+\def\tcb@input@library@in#1{%
+  \input\tcbpkgprefix#1\relax%
+}
+
+\let\tcb@input@library=\tcb@input@library@in%
+
+\def\tcb@input@library@ex#1{%
+  \let\tcb@input@library=\tcb@input@library@in%
+  \edef\tcb@at@catcode{\the\catcode`@}%
+  \catcode`\@11\relax%
+  \tcb@input@library@in{#1}%
+  \catcode`\@\tcb@at@catcode\relax%
+  \let\tcb@input@library=\tcb@input@library@ex%
+}
+
+\def\tcb@load@library#1#2{%
+  \pgfkeysifdefined{/tcb/libload/#1}{}{%
+    \pgfkeyssetvalue{/tcb/libload/#1}{}%
+    \def\tcb@library@inload{#2}%
+    \def\tcb@library@version{-}%
+    \tcb@input@library{#2}%
+    \tcb@check@library@version}%
+}
+
+\def\tcb@add@library#1#2{%
+  \tcbset{library/#1/.code={\tcb@load@library{#1}{#2}}}%
+  \DeclareOption{#1}{\appto\tcb@optionlist{,#1}}%
+}
+\def\tcb@add@library@style#1#2{%
+  \tcbset{library/#1/.style={#2}}%
+  \DeclareOption{#1}{\appto\tcb@optionlist{,#1}}%
+}
+
+\tcb@add@library{listings@core}{tcblistingscore.code.tex}
+\tcb@add@library{listings}{tcblistings.code.tex}
+\tcb@add@library{listingsutf8}{tcblistingsutf8.code.tex}
+\tcb@add@library{minted}{tcbminted.code.tex}
+\tcb@add@library{theorems}{tcbtheorems.code.tex}
+\tcb@add@library{documentation}{tcbdocumentation.code.tex}
+\tcb@add@library{raster}{tcbraster.code.tex}
+\tcb@add@library{skins@jigsaw}{tcbskinsjigsaw.code.tex}
+\tcb@add@library{skins}{tcbskins.code.tex}
+\tcb@add@library{breakable}{tcbbreakable.code.tex}
+\tcb@add@library{hooks}{tcbhooks.code.tex}
+\tcb@add@library{fitting}{tcbfitting.code.tex}
+\tcb@add@library{xparse}{tcbxparse.code.tex}
+
+\tcb@add@library@style{many}{raster,skins,breakable,hooks,theorems,fitting,xparse}
+\tcb@add@library@style{most}{many,listingsutf8}
+\tcb@add@library@style{all}{many,minted,listingsutf8,documentation}
+
+\ProcessOptions*
+\edef\tcb@temp{\noexpand\tcbuselibrary{\tcb@optionlist}}
+\tcb@temp
+\let\tcb@input@library=\tcb@input@library@ex%
index a0f7db0b115ecfd943fa4d3c5d3a3ff1df1cf832..b4d2639ca8c22661719cad4dde4eab37a6b63026 100644 (file)
       \begin{column}{.02\paperwidth}
       \end{column}
        % -- Left Column - Logo --
-      \begin{column}{.25\paperwidth}
+      \begin{column}{.2\paperwidth}
         \vskip1cm
         \begin{center}
-          \vspace{-5pt}\includegraphics[width=1.05\linewidth]{img/parisson_logo_FINALE_com.pdf}
+          \vskip1cm
+          \includegraphics[width=1.05\linewidth]{img/parisson_logo_FINALE_com.pdf}
+          \vfill
         \end{center}
         \vskip1.5cm
       \end{column}
       % -- Center column - Title --
-      \begin{column}{.70\paperwidth}
+      \begin{column}{.75\paperwidth}
         \vskip4ex \raggedleft
         \usebeamercolor{title in
           headline}{\color{fg}\textbf{{\LARGE \inserttitle}\\{\large \insertsubtitle}}\\[1ex]}
index 3aa4210ff1897a85218db68c829b8f50a6a6a13e..cbc1630776b0985907fe4e8b1a8d841d73abcf6e 100644 (file)
Binary files a/Conferences/2015_WAC/poster/poster_WAC2015.pdf and b/Conferences/2015_WAC/poster/poster_WAC2015.pdf differ
index eb5031ea4a2583b42189ddf9d88374bb91724608..39fc0c29df85cb1f1a00d9588d7f7e5f251e76b6 100644 (file)
 \usepackage{listings}
 \usepackage{xcolor}
 \usepackage[orientation=portrait,size=a0,scale=1.4]{beamerposter}
-\usepackage{mdframed}
+
+\usepackage{latex/tcolorbox}
+
+
+
 % Display a grid to help align images
 %\beamertemplategridbackground[1cm]
 
           is \alert{flexible} and can easily be adapted to particular database
           organization of a given sound archives.
         \end{itemize}
-        
+        \begin{center}
+          \includegraphics[height=3cm]{img/misc/python-logo-master-v3-TM.png}\hspace{3cm}
+          \includegraphics[height=3cm]{img/misc/django-logo-negative.png}
+        \end{center}
+
         The main features of \emph{Telemeta} are:
 \vspace{-0.5cm}
 \begin{multicols}{2}[]
 \subsection{TimeSide architecture}
   \begin{block}{TimeSide : open web audio processing framework}
 
-\begin{beamerboxesrounded}%
-        [upper=red, shadow=true]%
-        {}
-  \url{https://github.com/Parisson/TimeSide/}
-   \end{beamerboxesrounded}
-
+\tcbset{colback=red!30!white,colframe=red!70!black, leftrule=5mm, width=0.8\linewidth}
 \begin{center}
-  \colorbox{red!30}{\includegraphics[width=1.5cm]{img/misc/GitHub-Mark-120px-plus.png} \bf \hskip3ex \url{https://github.com/Parisson/TimeSide/} \hskip3ex  }
+  \begin{tcolorbox}[]\normalsize
+    \href{https://github.com/Parisson/TimeSide/}{\raisebox{-.2\height}{\includegraphics[width=1.5cm]{img/misc/GitHub-Mark-120px-plus.png}}\hskip2ex
+      \textbf{\texttt{https://github.com/Parisson/TimeSide/}}}
+  \end{tcolorbox}
 \end{center}
-\begin{columns}[T]
+
+
+
+%\begin{columns}[T]
   %\begin{minipage}{0.34\linewidth}
-  \begin{column}{.36\linewidth}
-    \begin{beamerboxesrounded}[shadow=true]{Functionality}
+ % \begin{column}{.36\linewidth}
+\hskip2ex
+    \begin{beamerboxesrounded}[shadow=true, width=0.95\linewidth]{Functionality}
        \begin{itemize}
        \item \alert{Do} asynchronous and fast audio processing with
          Python.
       \end{itemize}
     \end{beamerboxesrounded}
 
-  \end{column}
+  %\end{column}
 
   %\end{minipage}
   %\begin{minipage}{0.65\linewidth}
-  \begin{column}[T]{0.6\linewidth}
-    \begin{beamerboxesrounded}[shadow=true]{TimeSide Architecture}
+  %\begin{column}[T]{0.6\linewidth}
+    \hskip2ex
+    \begin{beamerboxesrounded}[shadow=true, width=0.9\linewidth]{TimeSide \emph{processing pipe}}
        \centering
-        \includegraphics[width=\linewidth]{img/timeside_schema_v3.pdf}
+        %\includegraphics[width=\linewidth]{img/timeside_schema_v3.pdf}
+ \includegraphics[width=0.9\linewidth]{img/TimeSide_pipe.pdf}
       \end{beamerboxesrounded}
 
-  \end{column}
+  %\end{column}
 
   %\end{minipage}
-\end{columns}
+%\end{columns}
 
 \begin{beamerboxesrounded}%
        [shadow=true]%
 
 
 \end{block}
-
-\begin{block}{Code Example (Python)}
-\begin{columns}[T]
-  \begin{column}[T]{0.6\linewidth}
-    \lstinputlisting{code_example.py}
-  \end{column}
+\begin{block}{Automatic audio analysis}
+  \begin{center}
+    \includegraphics[width=0.9\linewidth]{img/results/IRIT_Speech4Hz.png}\\
+    \includegraphics[width=0.9\linewidth]{img/results/SOLO_DUOdetection.png}
+  \end{center}
+\end{block}
+% \begin{block}{Code Example (Python)}
+% \begin{columns}[T]
+%   \begin{column}[T]{0.6\linewidth}
+%     \lstinputlisting{code_example.py}
+%   \end{column}
  
-  \begin{column}[T]{0.35\linewidth}
-    \begin{beamerboxesrounded}[shadow=true]{Results}
-      \begin{figure}
-        \centering
-        \includegraphics[width=\linewidth]{img/spectrogram.png}
-        \caption{Spectrogram (sweep signal)}
-      \end{figure}
-        \vskip5ex
-    \begin{lstlisting}
- Level Analyzer Max:[-6.021] 
- Level Analyzer RMS:[-9.856]
-    \end{lstlisting}
-\end{beamerboxesrounded}
-  \end{column}
-\end{columns}
-  \end{block}
+  \begin{column}[T]{0.35\linewidth}
+    \begin{beamerboxesrounded}[shadow=true]{Results}
+      \begin{figure}
+        \centering
+        \includegraphics[width=\linewidth]{img/spectrogram.png}
+        \caption{Spectrogram (sweep signal)}
+      \end{figure}
+        \vskip5ex
+    \begin{lstlisting}
+ Level Analyzer Max:[-6.021] 
+ Level Analyzer RMS:[-9.856]
+    \end{lstlisting}
+\end{beamerboxesrounded}
+  \end{column}
+\end{columns}
+  \end{block}
 
   \begin{block}{Ongoing developments}
 \vspace{-1cm}