%%
%% This is file `todonotes.sty',
%% generated with the docstrip utility.
%%
%% The original source files were:
%%
%% todonotes.dtx  (with options: `package')
%% 
%% This is a generated file.
%% 
%% Copyright (C) 2008 by Henrik Skov Midtiby <henrikmidtiby@gmail.com>
%% 
%% This file may be distributed and/or modified under the conditions of
%% the LaTeX Project Public License, either version 1.2 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.2 or later is part of all distributions of LaTeX version
%% 1999/12/01 or later.
%% 
\NeedsTeXFormat{LaTeX2e}[1999/12/01]
\ProvidesPackage{todonotes}
    [2024/01/05 v1.1.7 Todonotes source and documentation.]

\ProvidesPackage{todonotes}[2024/01/05]
\RequirePackage{ifthen}
\RequirePackage{xkeyval}
\RequirePackage{xcolor}
\RequirePackage{tikz}
\usetikzlibrary{positioning}
\RequirePackage{calc}
\newcommand\setuptodonotes[1]{\presetkeys{todonotes}{#1}{}}
\newcommand{\@todonotes@text}{}%
\newcommand{\@todonotes@backgroundcolor}{orange}
\newcommand{\@todonotes@textcolor}{black}
\newcommand{\@todonotes@linecolor}{orange}
\newcommand{\@todonotes@bordercolor}{black}
\newcommand{\@todonotes@tickmarkheight}{unused value}
\newcommand{\@todonotes@textwidth}{\marginparwidth}
\newcommand{\@todonotes@textsize}{\normalsize}
\newcommand{\@todonotes@figwidth}{\linewidth}
\newcommand{\@todonotes@figheight}{4cm}
\newcommand{\@todonotes@figcolor}{black!40}
\AtBeginDocument{
\ifx\undefined\phantomsection
\newcommand{\phantomsection}{}
\fi
\ifdim \marginparwidth < 2cm
\PackageWarning{todonotes}{The length marginparwidth is
less than 2cm and will most likely cause issues with the
appearance of inserted todonotes.
The issue can be solved by adding a line like
\setlength{\marginparwidth}{2cm}
prior to loading the todonotes package.} \else\fi%
}

\newcommand{\@todonotes@todolistname}{Todo list}
\newcommand{\@todonotes@MissingFigureText}{Figure}
\newcommand{\@todonotes@MissingFigureUp}{Missing}
\newcommand{\@todonotes@MissingFigureDown}{figure}
\newcommand{\@todonotes@SetTodoListName}[1]
    {\renewcommand{\@todonotes@todolistname}{#1}}
\newcommand{\@todonotes@SetMissingFigureText}[1]
    {\renewcommand{\@todonotes@MissingFigureText}{#1}}
\newcommand{\@todonotes@SetMissingFigureUp}[1]
    {\renewcommand{\@todonotes@MissingFigureUp}{#1}}
\newcommand{\@todonotes@SetMissingFigureDown}[1]
    {\renewcommand{\@todonotes@MissingFigureDown}{#1}}
\newif{\if@todonotes@reverseMissingFigureTriangle}
\DeclareOptionX{catalan}{
    \@todonotes@SetTodoListName{Llista de feines pendents}%
    \@todonotes@SetMissingFigureText{Figura}%
    \@todonotes@SetMissingFigureUp{Figura}%
    \@todonotes@SetMissingFigureDown{pendent}%
}
\DeclareOptionX{croatian}{%
   \@todonotes@SetTodoListName{Popis obveza}%
   \@todonotes@SetMissingFigureText{Slika}%
   \@todonotes@SetMissingFigureUp{Nedostaje}%
   \@todonotes@SetMissingFigureDown{slika}%
}
\DeclareOptionX{danish}{%
    \@todonotes@SetTodoListName{G\o{}rem\aa{}lsliste}%
    \@todonotes@SetMissingFigureText{Figur}%
    \@todonotes@SetMissingFigureUp{Manglende}%
    \@todonotes@SetMissingFigureDown{figur}%
}
\DeclareOptionX{dutch}{%
   \@todonotes@SetTodoListName{Lijst van onafgewerkte taken}%
   \@todonotes@SetMissingFigureText{Figuur}%
   \@todonotes@SetMissingFigureUp{Ontbrekende}%
   \@todonotes@SetMissingFigureDown{figuur}%
}
\DeclareOptionX{english}{%
   \@todonotes@SetTodoListName{Todo list}%
   \@todonotes@SetMissingFigureText{Figure}%
   \@todonotes@SetMissingFigureUp{Missing}%
   \@todonotes@SetMissingFigureDown{figure}%
}
\DeclareOptionX{french}{%
    \@todonotes@SetTodoListName{Liste des points \`a traiter}%
    \@todonotes@SetMissingFigureText{Figure}%
    \@todonotes@SetMissingFigureUp{Figure}%
    \@todonotes@SetMissingFigureDown{manquante}%
    \@todonotes@reverseMissingFigureTrianglefalse
}
\DeclareOptionX{german}{%
    \@todonotes@SetTodoListName{Liste der noch zu erledigenden Punkte}%
    \@todonotes@SetMissingFigureText{Abbildung}%
    \@todonotes@SetMissingFigureUp{Fehlende}%
    \@todonotes@SetMissingFigureDown{Abbildung}%
}
\DeclareOptionX{italian}{
    \@todonotes@SetTodoListName{Elenco delle cose da fare}%
    \@todonotes@SetMissingFigureText{Figura}%
    \@todonotes@SetMissingFigureUp{Figura}%
    \@todonotes@SetMissingFigureDown{mancante}%
}
\DeclareOptionX{ngerman}{%
    \@todonotes@SetTodoListName{Liste der noch zu erledigenden Punkte}%
    \@todonotes@SetMissingFigureText{Abbildung}%
    \@todonotes@SetMissingFigureUp{Fehlende}%
    \@todonotes@SetMissingFigureDown{Abbildung}%
}
\DeclareOptionX{portuguese}{
    \@todonotes@SetTodoListName{Lista de tarefas pendentes}%
    \@todonotes@SetMissingFigureText{Figura}%
    \@todonotes@SetMissingFigureUp{Figura}%
    \@todonotes@SetMissingFigureDown{pendente}%
}
\DeclareOptionX{spanish}{
    \@todonotes@SetTodoListName{Lista de tareas pendientes}%
    \@todonotes@SetMissingFigureText{Figura}%
    \@todonotes@SetMissingFigureUp{Figura}%
    \@todonotes@SetMissingFigureDown{pendiente}%
}
\DeclareOptionX{swedish}{%
    \@todonotes@SetTodoListName{Att g\"{o}ra-lista}%
    \@todonotes@SetMissingFigureText{Figur}%
    \@todonotes@SetMissingFigureUp{Figur}%
    \@todonotes@SetMissingFigureDown{saknas}%
}
\providecommand{\@tocrmarg}{2.55em}
\providecommand{\@dotsep}{4.5}
\providecommand{\@pnumwidth}{1.55em}
\newcounter{@todonotes@numberoftodonotes}
\newif{\if@todonotes@obeyDraft}
\DeclareOptionX{obeyDraft}{\@todonotes@obeyDrafttrue}
\newif{\if@todonotes@isDraft}
\DeclareOptionX{draft}{\@todonotes@isDrafttrue}
\DeclareOptionX{draftcls}{\@todonotes@isDrafttrue}
\DeclareOptionX{draftclsnofoot}{\@todonotes@isDrafttrue}
\newif{\if@todonotes@obeyFinal}
\DeclareOptionX{obeyFinal}{\@todonotes@obeyFinaltrue}
\newif{\if@todonotes@isFinal}
\DeclareOptionX{final}{\@todonotes@isFinaltrue}
\newif{\if@todonotes@disabled}
\DeclareOptionX{disable}{\@todonotes@disabledtrue}
\newif{\if@todonotes@colorinlistoftodos}
\DeclareOptionX{colorinlistoftodos}{\@todonotes@colorinlistoftodostrue}
\newif{\if@todonotes@dviStyle}
\DeclareOptionX{dvistyle}{\@todonotes@dviStyletrue}
\define@key{todonotes.sty}%
    {color}{
        \renewcommand{\@todonotes@backgroundcolor}{#1}
        \renewcommand{\@todonotes@linecolor}{#1}}
\define@key{todonotes.sty}%
    {backgroundcolor}{\renewcommand{\@todonotes@backgroundcolor}{#1}}
\define@key{todonotes.sty}%
    {textcolor}{\renewcommand{\@todonotes@textcolor}{#1}}
\define@key{todonotes.sty}%
    {linecolor}{\renewcommand{\@todonotes@linecolor}{#1}}
\define@key{todonotes.sty}%
    {bordercolor}{\renewcommand{\@todonotes@bordercolor}{#1}}
\newcommand{\@todonotes@defaulttickmarkheight}{0cm}
\define@key{todonotes.sty}{tickmarkheight}{%
    \renewcommand{\@todonotes@defaulttickmarkheight}{#1}}%
\newif{\if@todonotes@prependcaptionglobal}
\@todonotes@prependcaptionglobalfalse
\DeclareOptionX{prependcaption}{\@todonotes@prependcaptionglobaltrue}
\define@key{todonotes.sty}%
    {textwidth}{\renewcommand{\@todonotes@textwidth}{#1}}
\newcommand{\todoformat}[1]{#1}
\define@key{todonotes.sty}%
    {format}{\renewcommand{\todoformat}{\@nameuse{#1}}}
\define@key{todonotes.sty}%
    {textsize}{\renewcommand{\@todonotes@textsize}{#1}}
\define@key{todonotes.sty}%
    {size}{\renewcommand{\@todonotes@textsize}{#1}}
\newif\if@todonotes@shadowlibraryloaded
\@todonotes@shadowlibraryloadedfalse
\DeclareOptionX{loadshadowlibrary}{%
    \usetikzlibrary{shadows}%
    \@todonotes@shadowlibraryloadedtrue}
\newcommand{\@todonotes@shadowenabledbydefault}{noshadow}
\DeclareOptionX{shadow}{%
    \renewcommand{\@todonotes@shadowenabledbydefault}{shadow}}
\define@key{todonotes.sty}%
    {figwidth}{\renewcommand{\@todonotes@figwidth}{#1}}
\define@key{todonotes.sty}%
    {figheight}{\renewcommand{\@todonotes@figheight}{#1}}
\define@key{todonotes.sty}%
    {figcolor}{\renewcommand{\@todonotes@figcolor}{#1}}
\ProcessOptionsX*
\if@todonotes@disabled
\else
\if@todonotes@obeyDraft
\@todonotes@disabledtrue
\if@todonotes@isDraft
\@todonotes@disabledfalse
\fi
\fi
\if@todonotes@obeyFinal
\@todonotes@disabledfalse
\if@todonotes@isFinal
\@todonotes@disabledtrue
\fi
\fi
\fi

\gdef\@todonotes@currentlinecolor{\@todonotes@linecolor}%
\gdef\@todonotes@currentbackgroundcolor{\@todonotes@backgroundcolor}%
\gdef\@todonotes@currenttextcolor{\@todonotes@textcolor}%
\gdef\@todonotes@currentbordercolor{\@todonotes@bordercolor}%
\define@key{todonotes}{color}{%
    \gdef\@todonotes@currentlinecolor{#1}%
    \gdef\@todonotes@currentbackgroundcolor{#1}}%
\define@key{todonotes}{linecolor}{%
    \gdef\@todonotes@currentlinecolor{#1}}%
\define@key{todonotes}{backgroundcolor}{%
    \gdef\@todonotes@currentbackgroundcolor{#1}}%
\define@key{todonotes}{textcolor}{%
    \gdef\@todonotes@currenttextcolor{#1}}%
\define@key{todonotes}{bordercolor}{%
    \gdef\@todonotes@currentbordercolor{#1}}%
\newif\if@todonotes@useshadow%
\define@key{todonotes}{shadow}[]{\@todonotes@useshadowtrue}%
\define@key{todonotes}{noshadow}[]{\@todonotes@useshadowfalse}%
\define@key{todonotes}{tickmarkheight}{%
    \renewcommand{\@todonotes@tickmarkheight}{#1}}%
\newcommand{\@todonotes@format}{\todoformat}%
\define@key{todonotes}{format}{%
    \renewcommand{\@todonotes@format}{\@nameuse{#1}}}%
\newcommand{\@todonotes@sizecommand}{}%
\define@key{todonotes}{size}{\renewcommand{\@todonotes@sizecommand}{#1}%
}%
\newif\if@todonotes@localdisable%
\define@key{todonotes}{disable}[]{\@todonotes@localdisabletrue}%
\define@key{todonotes}{nodisable}[]{\@todonotes@localdisablefalse}%
\newif\if@todonotes@appendtolistoftodos%
\define@key{todonotes}{list}[]{\@todonotes@appendtolistoftodostrue}%
\define@key{todonotes}{nolist}[]{\@todonotes@appendtolistoftodosfalse}%
\newif\if@todonotes@inlinenote%
\define@key{todonotes}{inline}[]{\@todonotes@inlinenotetrue}%
\define@key{todonotes}{noinline}[]{\@todonotes@inlinenotefalse}%
\newif\if@todonotes@prependcaption%
\define@key{todonotes}{prepend}[]{\@todonotes@prependcaptiontrue}%
\define@key{todonotes}{noprepend}[]{\@todonotes@prependcaptionfalse}%
\newif\if@todonotes@line%
\define@key{todonotes}{line}[]{\@todonotes@linetrue}%
\define@key{todonotes}{noline}[]{\@todonotes@linefalse}%
\newif\if@todonotes@fancyline\@todonotes@fancylinefalse%
\define@key{todonotes}{fancyline}[]{\@todonotes@fancylinetrue}%
\define@key{todonotes}{nofancyline}[]{\@todonotes@fancylinefalse}%
\newcommand{\@todonotes@author}{}%
\newif\if@todonotes@authorgiven%
\define@key{todonotes}{author}{%
    \renewcommand{\@todonotes@author}{#1}%
    \@todonotes@authorgiventrue}%
\define@key{todonotes}{noauthor}[]{\@todonotes@authorgivenfalse}%
\newcommand{\@todonotes@caption}{}%
\newif\if@todonotes@captiongiven%
\define@key{todonotes}{caption}%
    {\renewcommand{\@todonotes@caption}{#1}%
    \@todonotes@captiongiventrue}%
\define@key{todonotes}{nocaption}[]{\@todonotes@captiongivenfalse}%
\newcommand{\@todonotes@currentfigwidth}{\@todonotes@figwidth}
\define@key{todonotes}%
    {figwidth}{\renewcommand{\@todonotes@currentfigwidth}{#1-2pt}}
\newcommand{\@todonotes@currentfigheight}{\@todonotes@figheight}
\define@key{todonotes}%
    {figheight}{\renewcommand{\@todonotes@currentfigheight}{#1-2pt}}
\newcommand{\@todonotes@currentfigcolor}{\@todonotes@figcolor}
\define@key{todonotes}%
    {figcolor}{\renewcommand{\@todonotes@currentfigcolor}{#1}}
\newcommand{\@todonotes@inlinewidth}{\linewidth}%
\define@key{todonotes}%
    {inlinewidth}{\renewcommand{\@todonotes@inlinewidth}{#1}}
\newif\if@todonotes@inlinepar
\@todonotes@inlinepartrue
\define@key{todonotes}{inlinepar}[]{\@todonotes@inlinepartrue}%
\define@key{todonotes}{noinlinepar}[]{\@todonotes@inlineparfalse}%
\presetkeys%
    {todonotes}%
    {linecolor=\@todonotes@linecolor,%
    backgroundcolor=\@todonotes@backgroundcolor,%
    textcolor=\@todonotes@textcolor,%
    bordercolor=\@todonotes@bordercolor,%
    format=todoformat,%
    tickmarkheight=\@todonotes@defaulttickmarkheight,%
    nofancyline,%
    nodisable,%
    noinline,%
    nocaption,%
    noauthor,%
    \@todonotes@shadowenabledbydefault,%
    figwidth=\@todonotes@figwidth,%
    figheight=\@todonotes@figheight,%
    figcolor=\@todonotes@figcolor,%
    line, list,%
    inlinewidth=\linewidth,
    inlinepar}{}%
\@temptokena\expandafter{\@todonotes@textsize}
\edef\next{\noexpand\presetkeys{todonotes}{size=\the\@temptokena}{}}
\next
\if@todonotes@disabled%
    \newcommand{\listoftodos}[1][]{}
    \newcommand{\@todo}[2][]{}
    \newcommand{\missingfigure}[2][]{}
\else % \if@todonotes@disabled
\newcommand{\listoftodos}[1][\@todonotes@todolistname]
    {\@ifundefined{chapter}{\section*{#1}}{\chapter*{#1}} \@starttoc{tdo}}
\newcommand{\l@todo}
    {\@dottedtocline{1}{0em}{2.3em}}
\tikzstyle{notestyleraw} = [
    draw=\@todonotes@currentbordercolor,
    fill=\@todonotes@currentbackgroundcolor,
    text=\@todonotes@currenttextcolor,
    line width=0.5pt,
    text width = \@todonotes@textwidth - 1.6 ex - 1pt,
    inner sep = 0.8 ex,
    rounded corners=4pt]
\newcommand{\@todo}[2][]{%
\if@todonotes@prependcaptionglobal%
\@todonotes@prependcaptiontrue%
\else%
\@todonotes@prependcaptionfalse%
\fi%
\renewcommand{\@todonotes@text}{#2}%
\renewcommand{\@todonotes@caption}{#2}%
\setkeys{todonotes}{#1}%
\if@todonotes@useshadow%
\if@todonotes@shadowlibraryloaded%
\tikzstyle{notestyle} = [notestyleraw,%
    general shadow={shadow xshift=0.5ex, shadow yshift=-0.5ex,%
        opacity=1,fill=black!50}]%
\else%
\PackageWarning{todonotes}{Trying to put a shadow below a todonote,%
but the loadshadowlibrary option was not given when loading%
the todonotes package}%
\tikzstyle{notestyle} = [notestyleraw]%
\fi%
\else%
\tikzstyle{notestyle} = [notestyleraw]%
\fi%
\tikzstyle{notestyleleft} = [%
    notestyle,%
    left]%
\tikzstyle{connectstyle} = [%
    thick,%
    draw=\@todonotes@currentlinecolor]%
\tikzstyle{inlinenotestyle} = [%
    notestyle,%
    text width=\@todonotes@inlinewidth - 1.6 ex - 1 pt]%
\if@todonotes@localdisable%
\else%
\addtocounter{@todonotes@numberoftodonotes}{1}%
\if@todonotes@appendtolistoftodos%
    \phantomsection%
    \if@todonotes@captiongiven%
    \else%
        \renewcommand{\@todonotes@caption}{#2}%
    \fi%
    \@todonotes@addElementToListOfTodos%
\fi%
\if@todonotes@captiongiven%
    \if@todonotes@prependcaption%
        \renewcommand{\@todonotes@text}{\@todonotes@caption: #2}%
    \fi%
\fi%
\if@todonotes@inlinenote%
    \@todonotes@drawInlineNote%
\else%
    \@todonotes@drawMarginNoteWithLine%
\fi%\if@todonotes@inlinenote
\fi%\if@todonotes@localdisable
}%
\newcommand{\@todonotes@drawMarginNoteWithLine}{%
\ifvmode
  \vspace*{-\parskip}%   % backup if we are already in vertical mode
  \vskip-\baselineskip   % (and don't loose that space after a
                         %  pagebreak ...
  \noindent
\fi
\begin{tikzpicture}[remember picture, overlay, baseline=-0.75ex]%
    \node [coordinate] (inText) {};%
\end{tikzpicture}%
\marginpar[{% Draw note in left margin
    \@todonotes@drawMarginNote%
    \@todonotes@drawLineToLeftMargin%
}]{% Draw note in right margin
    \@todonotes@drawMarginNote%
    \@todonotes@drawLineToRightMargin%
}%
}%
\newcommand{\@todonotes@addElementToListOfTodos}{%
    \if@todonotes@colorinlistoftodos%
        \addcontentsline{tdo}{todo}{%
            \fcolorbox{\@todonotes@currentbordercolor}%
                {\@todonotes@currentbackgroundcolor}%
                {\textcolor{\@todonotes@currentbackgroundcolor}{o}}%
            \ \@todonotes@caption}%
    \else%
        \addcontentsline{tdo}{todo}{\@todonotes@caption}%
    \fi}%
\newcommand{\@todonotes@useSizeCommand}{%
\ifcsname \expandafter\string\@todonotes@sizecommand\endcsname
\csname \expandafter\string\@todonotes@sizecommand\endcsname%
\else
\@todonotes@sizecommand
\fi%
}%
\newcommand{\@todonotes@drawInlineNote}{%
    \if@todonotes@dviStyle%
        {\if@todonotes@inlinepar\par\noindent\fi%
         \begin{tikzpicture}[remember picture]%
            \draw node[inlinenotestyle] {};
         \end{tikzpicture}%
         \if@todonotes@inlinepar\par\fi}%
            \if@todonotes@authorgiven%
                {\noindent \@todonotes@useSizeCommand \@todonotes@author:\,\@todonotes@format{\@todonotes@text}}%
            \else%
                {\noindent \@todonotes@useSizeCommand%
                    \@todonotes@format{\@todonotes@text}}%
            \fi
        {\if@todonotes@inlinepar\par\noindent\fi%
         \begin{tikzpicture}[remember picture]%
            \draw node[inlinenotestyle] {};
         \end{tikzpicture}%
         \if@todonotes@inlinepar\par\fi}%
    \else%
        {\if@todonotes@inlinepar\par\noindent\fi%
         \begin{tikzpicture}[remember picture]%
            \draw node[inlinenotestyle,font=\@todonotes@useSizeCommand]{%
                \if@todonotes@authorgiven%
                    {\noindent \@todonotes@author:\,%
                        \@todonotes@format{\@todonotes@text}}%
                \else%
                    {\noindent \@todonotes@format{\@todonotes@text}}%
                \fi};%
         \end{tikzpicture}%
         \if@todonotes@inlinepar\par\fi}%
    \fi}%
\newcommand{\@todonotes@drawMarginNote}{%
\if@todonotes@dviStyle%
    \begin{tikzpicture}[remember picture]%
        \draw node[notestyle] {};%
    \end{tikzpicture}\\%
    \begin{minipage}{\@todonotes@textwidth}%
    \if@todonotes@authorgiven%
      \@todonotes@useSizeCommand \@todonotes@author:\,
         \@todonotes@format{\@todonotes@text}%
    \else%
      \@todonotes@useSizeCommand\@todonotes@format{\@todonotes@text}%
    \fi%
    \end{minipage}\\%
    \begin{tikzpicture}[remember picture]%
        \draw node[notestyle] (inNote) {};%
    \end{tikzpicture}%
\else%
    \let\originalHbadness\hbadness%
    \hbadness 100000%
    \begin{tikzpicture}[remember picture,baseline=(X.base)]%
        \node(X){\vphantom{\@todonotes@useSizeCommand X}};%
        \if@todonotes@authorgiven%
            \draw node[notestyle,font=\@todonotes@useSizeCommand,anchor=north] (inNote) at (X.north)%
                {\@todonotes@author};%
            \node(Y)[below=of X]{};%
            \draw node[notestyle,font=\@todonotes@useSizeCommand,anchor=north] (inNote) at (X.south)%
                {\@todonotes@format{\@todonotes@text}};%
        \else%
            \draw node[notestyle,font=\@todonotes@useSizeCommand,anchor=north] (inNote) at (X.north)%
                {\@todonotes@format{\@todonotes@text}};%
        \fi%
    \end{tikzpicture}%
    \hbadness \originalHbadness%
\fi}%
\newcommand{\@todonotes@drawLineToRightMargin}{%
\if@todonotes@line%
\if@todonotes@fancyline%
\tikz[remember picture,overlay]{%
\tikzstyle{both}=[line width=3pt, draw, opacity=0.15]%
\tikzstyle{line}=[shorten >=5pt, line cap=round]%
\tikzstyle{head}=[shorten >=-1pt, dash pattern=on 0pt off 1pt, ->]%
\foreach \s in {line,head}{%
\draw[both,\s]%
(inNote.north west).. controls +(0:0) and +(90:1.5)..([yshift=1ex] inText);%
}%
}%
\else%
\begin{tikzpicture}[remember picture, overlay]%
\draw[connectstyle]%
([yshift=-0.2cm + \@todonotes@tickmarkheight] inText)%
-| ([yshift=-0.2cm] inText)%
-| ([xshift=-0.2cm] inNote.west)%
-| (inNote.west);%
\end{tikzpicture}%
\fi%
\fi}%
\newcommand{\@todonotes@drawLineToLeftMargin}{%
\if@todonotes@line%
\if@todonotes@fancyline%
\tikz[remember picture,overlay]{%
\tikzstyle{both}=[line width=3pt, draw, opacity=0.15]%
\tikzstyle{line}=[shorten >=5pt, line cap=round]%
\tikzstyle{head}=[shorten >=-1pt, dash pattern=on 0pt off 1pt,->]%
\foreach \s in {line,head}{%
\draw[both,\s]%
(inNote.north east).. controls +(0:0) and +(90:1.5)..([yshift=1ex] inText);%
}%
}%
\else%
\begin{tikzpicture}[remember picture, overlay]%
\draw[connectstyle]%
([yshift=-0.2cm + \@todonotes@tickmarkheight] inText)%
-| ([yshift=-0.2cm] inText)%
-| ([xshift=0.2cm] inNote.east)%
-| (inNote.east);%
\end{tikzpicture}%
\fi%
\fi}%
\newcommand{\missingfigure}[2][]{%
\setkeys{todonotes}{#1}%
\addcontentsline{tdo}{todo}{\@todonotes@MissingFigureText: #2}%
\par
\noindent
\hfill
\begin{tikzpicture}
\draw[fill=\@todonotes@currentfigcolor, draw = black!40, line width=2pt]
    (-2, -0.5*\@todonotes@currentfigheight-0.5cm)
    rectangle +(\@todonotes@currentfigwidth, \@todonotes@currentfigheight);
\draw (2, -0.5) node[right, text
    width=\@todonotes@currentfigwidth-4.5cm, font=\@todonotes@useSizeCommand] {#2};
\draw[red, fill=white, rounded corners = 5pt, line width=10pt]
    (30:2cm) -- (150:2cm) -- (270:2cm) -- cycle;
\draw (0, 0.3) node {\@todonotes@MissingFigureUp};
\draw (0, -0.3) node {\@todonotes@MissingFigureDown};
\end{tikzpicture}\hfill
\null\par
}% Ending \missingfigure command
\fi% Ending \@todonotes@ifdisabled
\newcommand{\todototoc}
{%
    \if@todonotes@disabled
    \else
\addcontentsline{toc}{\@ifundefined{chapter}{section}{chapter}}{\@todonotes@todolistname}%
    \fi
}
\newcommand{\todo}[2][]{%
  % Needed to output any dangling \item of a noskip section (see #36):
  \if@inlabel \leavevmode \fi
  \if@noskipsec \leavevmode \fi
  \if@todonotes@inlinepar
    \ifhmode
      \@bsphack
      \@todonotes@vmodefalse
    \else
      \@savsf\@m
      \@savsk\z@
      \@todonotes@vmodetrue
    \fi
    {\@todo[#1]{#2}}%
    \@esphack%
    \if@todonotes@vmode \par \fi
  \else%
    \@todo[#1]{#2}%
  \fi}
\newif\if@todonotes@vmode
\newcommand*{\todostyle}[2]{%
    \define@key{todonotes}{#1}[]{%
        \setkeys{todonotes}{#2}}}
\endinput
%%
%% End of file `todonotes.sty'.
