\ExplSyntaxOn
\int_new:N \g_lauf_int
\int_zero:N \g_lauf_int

\seq_new:N \l_einlauf_seq
\clist_new:N \l_einlaufReihenfolge_clist
\clist_new:N \l_einlaufZusammen_clist
\seq_new:N \l_zeiten_seq
\seq_new:N \l_zeitenZeilen_seq
\int_new:N \l_bahn_int

\NewDocumentCommand\lauf{+m +m}{
    \int_incr:N \g_lauf_int
    \int_set:Nn \l_bahn_int {1}
    \seq_set_split:Nnn \l_einlauf_seq {\\} {#1}
    \seq_map_inline:Nn \l_einlauf_seq {
        \str_if_empty:nF {##1} {
            \zieleinlaufKarte {\int_use:N \g_lauf_int} {##1}
        }
    }

    \par

    \seq_set_split:Nnn \l_zeiten_seq {\\} {#2}
    \seq_map_inline:Nn \l_zeiten_seq {
        \str_if_empty:nF {##1} {
            \zeitKarte {\int_use:N \g_lauf_int}{\int_use:N \l_bahn_int} {##1}
            \int_incr:N \l_bahn_int
        }
    }
    \clearpage
}
\NewDocumentCommand\zeitenSplitten{+m}{
    \seq_set_split:Nnn \l_zeitenZeilen_seq {;} {#1}
    \seq_map_inline:Nn \l_zeitenZeilen_seq {
        \str_if_empty:nF {##1} {
            ##1 \\
        }
    }
}

\cs_new_nopar:Npe \__cs_laufzeile:n #1 {1 \& 1 \\}

\NewDocumentCommand\zieleinlaufTabelle{+m}{
    \clist_set:Nn \l_einlaufReihenfolge_clist {#1}
    \clist_map_inline:Nn \l_einlaufReihenfolge_clist {\tl_if_novalue:nF{##1} {##1 \,\newline}}
}


\NewDocumentCommand\platzZusammen{m}{
    \clist_set:Nn \l_einlaufZusammen_clist {#1}
    \begin{tabular}{|l}
        \clist_use:Nn \l_einlaufZusammen_clist {\\}
    \end{tabular}
}


\ExplSyntaxOff

\NewDocumentCommand\zieleinlaufKarte{m +m}{
    \begin{tcolorbox}[tcbox raise base, nobeforeafter, width=0.325\linewidth,height=0.23\textheight,height plus=0.2\textheight,title={Zieleinlauf},colbacktitle=yellow!10!white,coltitle=black,colframe=black,colback=yellow!10!white,sharp corners]
        Lauf: #1

        \vspace{0.4cm}

        \zieleinlaufTabelle{#2}
    \end{tcolorbox}
}

\NewDocumentCommand\zeitKarte{m m +m}{
    \begin{tcolorbox}[tcbox raise base, nobeforeafter, width=0.325\linewidth,height=0.18\textheight,title={Startkarte},colback=white,colbacktitle=white,coltitle=black,sharp corners]
        \begin{tabbing}
            \hspace{2cm}\=b\kill
            Lauf #1 \> Bahn #2
        \end{tabbing}

        \zeitenSplitten{#3}
    \end{tcolorbox}
}
