\ProvidesClass{homework} \LoadClass[fontsize=10pt]{scrartcl} \RequirePackage{tex-macros} \RequirePackage[T1]{fontenc} \RequirePackage{textcomp} \RequirePackage{stmaryrd} \SetSymbolFont{stmry}{bold}{U}{stmry}{m}{n} \RequirePackage{url} \RequirePackage{float} \RequirePackage{booktabs} \RequirePackage{emptypage} \RequirePackage{subcaption} \RequirePackage{multicol} \RequirePackage{cancel} \RequirePackage{mathrsfs} \RequirePackage{minted} \RequirePackage{listings} \RequirePackage{systeme} \RequirePackage{amsfonts, amsmath, mathtools, amssymb, amsthm} \RequirePackage{enumitem} \RequirePackage{bm} \RequirePackage{listings} \RequirePackage{geometry} \RequirePackage{graphicx} \RequirePackage[usenames,dvipsnames]{xcolor} \RequirePackage{bm} \RequirePackage{siunitx}[=v2] \RequirePackage{physics} \RenewCommandCopy\qty\SI% \RequirePackage{etoolbox} \RequirePackage{xifthen} \RequirePackage{import} \RequirePackage{pdfpages} \RequirePackage{fancyhdr} \RequirePackage{tikz} \RequirePackage{tikz-cd} \RequirePackage{pgfplots} \RequirePackage{algpseudocode} \RequirePackage{algorithm} \pgfplotsset{ compat=newest, } \usepgfplotslibrary{fillbetween} \usetikzlibrary{patterns, intersections, angles, quotes, calc, positioning} \usetikzlibrary{arrows.meta} \RequirePackage{thmtools} \RequirePackage[framemethod=TikZ]{mdframed} \mdfsetup{skipabove=1em, skipbelow=0em, innertopmargin=5pt, innerbottommargin=6pt} \geometry{top=20mm,bottom=20mm} \theoremstyle{definition} \makeatletter \usemintedstyle{bw} \declaretheoremstyle[ headfont=\bfseries\sffamily, bodyfont=\normalfont, mdframed={nobreak} ]{thmboxed} \declaretheoremstyle[ headfont=\bfseries\sffamily, bodyfont=\normalfont, ]{thmsimple} \declaretheoremstyle[ headfont=\bfseries\sffamily, bodyfont=\normalfont, numbered=no, mdframed={ rightline=false, topline=false, bottomline=false, }, qed=\qedsymbol, ]{thmproof} \declaretheoremstyle[ headfont=\bfseries\sffamily, bodyfont=\normalfont, numbered=no, mdframed={ rightline=false, topline=false, bottomline=false, } ]{thmline} \declaretheorem[style=thmboxed, name=Definition]{definition} \declaretheorem[style=thmboxed, name=Lemma]{lemma} \declaretheorem[style=thmboxed, name=Theorem]{theorem} \declaretheorem[style=thmboxed, name=Proposition]{proposition} \declaretheorem[style=thmboxed, numbered=no, name=Corollary]{corollary} \declaretheorem[style=thmsimple, numbered=no, name=Example]{eg} \AtEndEnvironment{eg}{\null\hfill$\diamond$} \declaretheorem[style=thmproof, name=Proof]{thmproof} \renewenvironment{proof}[1][\proofname]{\begin{thmproof}}{\end{thmproof}} \declaretheorem[style=thmline, numbered=no, name=Proof]{expl} \declaretheorem[style=thmline, numbered=no, name=Solution]{answ} \declaretheorem[style=thmsimple, numbered=no, name=Remark]{remark} \declaretheorem[style=thmsimple, numbered=no, name=Note]{note} \newenvironment{code}[1]{\VerbatimEnvironment\begin{minted}[fontfamily=courier, frame=lines,framesep=7pt, linenos, breaklines]{#1}}{\end{minted}} \newcommand{\inlinecode}[2]{\mintinline{#1}|#2|} \newcommand{\importcode}[2]{\inputminted[fontfamily=courier, frame=lines, framesep=7pt, linenos, breaklines]{#1}{#2}} \newcommand{\specialquote}[2] { \begin{flushright} \begin{tikzpicture} \draw (0,0) node [right,text width=8.75cm] { \begin{mdframed}[ linecolor=black, rightline=false, topline=false, bottomline=false, backgroundcolor=black!5, linewidth=2pt ] {``#1''} \vspace{1mm} \hfill-- \small{#2} \end{mdframed} }; \end{tikzpicture} \end{flushright} } \newcommand{\specialnoquote}[2] { \begin{flushright} \begin{tikzpicture} \draw (0,0) node [right,text width=8.75cm] { \begin{mdframed}[ linecolor=black, rightline=false, topline=false, bottomline=false, backgroundcolor=black!5, linewidth=2pt ] {#1} \vspace{1mm} \hfill-- \small{#2} \end{mdframed} }; \end{tikzpicture} \end{flushright} } \newcommand{\exercise}[2][]{% \def\@exercise{#2}% \subsection*{Exercise #2. #1} } \newcommand{\subexercise}[2][]{% \subsubsection*{Exercise \@exercise.#2. #1} } \newcommand{\sect}[1]{ \def\@section{#1} \section*{#1} } \newcommand{\subsect}[1]{ \def\@subsection{#1} \subsection*{#1} } \makeatother