\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{coursetemplate54}[2023/02/15]

\newcommand*{\@coursename}{}
\newcommand*{\coursename}[1]{\renewcommand*{\@coursename}{#1}}

\newcommand*{\@coursenumber}{}
\newcommand*{\coursenumber}[1]{\renewcommand*{\@coursenumber}{#1}}

\newcommand*{\@profname}{}
\newcommand*{\profname}[1]{\renewcommand*{\@profname}{#1}}

\newcommand*{\@semester}{}
\newcommand*{\semester}[1]{\renewcommand*{\@semester}{#1}}

\coursename{Discrete Math \& Functional Programming}
\coursenumber{CSCI 54}
\semester{Fall 2024}
\profname{Osborn}

\newcommand{\problem}[2]{ 
  {\bf [#1 points] #2}
}

\newenvironment{header}{\begin{center}} {\end{center}}

\newcommand{\psheader}[4]{
   {\bf \@coursename --- \@coursenumber --- \@semester \\
    Instructor: \@profname } \\
    Homework #1 (#2 points) \\
    Due: #3 on #4 \\
    \vspace*{.5cm}
}


\DeclareOption{nostamp}{\PassOptionsToPackage{nostamp}{draftwatermark}}
\DeclareOption*{
  \ClassWarning{cs54}{Unknown option '\CurrentOption'}
}
\ProcessOptions\relax

\RequirePackage{draftwatermark}
\RequirePackage{amsmath}
\RequirePackage{amsthm}
\RequirePackage{amsfonts}
\RequirePackage{graphicx}
\RequirePackage{geometry}
\RequirePackage{verbatim}
\RequirePackage{latexsym}
\RequirePackage{algpseudocode}
\RequirePackage{hyperref}
\RequirePackage{framed}
\RequirePackage[T1]{fontenc}
\RequirePackage[os=mac, mackeys=symbols]{menukeys}
\RequirePackage{upquote}
\RequirePackage{multirow}
\RequirePackage{enumitem}
\RequirePackage{tabulary}
\RequirePackage{mathrsfs}
