\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{ngutils}[2025/12/24 Never's LaTeX utils]

\RequirePackage[ngerman]{babel}
\RequirePackage{hyperref}
\RequirePackage{graphicx}
\RequirePackage{tabularx}
\RequirePackage{booktabs}

\newcommand\NN{\ensuremath{\mathbb{N}}}
\newcommand\ZZ{\ensuremath{\mathbb{Z}}}
\newcommand\QQ{\ensuremath{\mathbb{Q}}}
\newcommand\RR{\ensuremath{\mathbb{R}}}
\newcommand\CC{\ensuremath{\mathbb{C}}}

\newcommand\Oh{\ensuremath{\mathcal{O}}}
\newcommand\oh{\ensuremath{\scriptstyle{\mathcal{O}}}}

\newcommand\tup[1]{\ensuremath{\left(#1\right)}}
\newcommand\set[1]{\ensuremath{\{#1\}}}
\newcommand\abs[1]{\ensuremath{\lvert#1\rvert}}
\newcommand\norm[1]{\ensuremath{\lVert#1\rVert}}
\newcommand\ceil[1]{\ensuremath{\lceil#1\rceil}}
\newcommand\floor[1]{\ensuremath{\lfloor#1\rfloor}}
\newcommand\arr[1]{\ensuremath{\langle#1\rangle}}

\newcommand\alg[1]{\normalfont \scshape #1}
\newcommand\com[1]{\normalfont \itshape /\!\!/ #1 }

\newenvironment{algorithmic}[1][\quad]{
	\begin{minipage}[t]{\dimexpr\linewidth}
		\bfseries
		\begin{tabbing}
			#1\=#1\=#1\=#1\=\kill
			}{%
		\end{tabbing}
	\end{minipage}
}

\newenvironment{algorithm}[1][\quad]{
	\begin{center}
		\begin{minipage}[t]{\dimexpr\linewidth}
			\bfseries
			\begin{tabbing}
				#1\=#1\=#1\=#1\=\kill
				}{%
			\end{tabbing}
		\end{minipage}
	\end{center}
}
