% Turabian Formatting for LaTeX
%
% Based on the Chicago Manual of Style (16th edition) and Kate Turabian's A
% Manual for Writers of Research Papers, Theses, and Dissertations (8th edition)
%
% ==============================
% Copyright 2013-2016 Omar Abdool
%
% This work may be distributed and/or modified under the conditions of the LaTeX
% Project Public License (LPPL), either version 1.3 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.3 or later is part of all distributions of LaTeX version
% 2005/12/01 or later.
%
% LPPL Maintenance Status: maintained (by Omar Abdool)
%
% This work consists of the files: turabian-formatting.sty,
% turabian-researchpaper.cls, turabian-thesis.cls, turabian-formatting-doc.tex,
% and turabian-formatting-doc.pdf (in addition to the README file).
%
% ==============================
%
%


\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{turabian-formatting}[2016/07/12 Turabian Formatting]


% Flags adjusted with package options

\newif\if@optraggedright\@optraggedrightfalse

\newif\if@authordateformat\@authordateformatfalse

\newif\if@appendbibformat\@appendbibformattrue

\newif\if@endnotesformat\@endnotesformatfalse


% Declare package options

\DeclareOption{raggedright}{\@optraggedrighttrue}

\DeclareOption{authordate}{\@authordateformattrue}

\DeclareOption{noadjustbib}{\@appendbibformatfalse}

\DeclareOption{endnotes}{\@endnotesformattrue}


\ProcessOptions\relax


\RequirePackage{etoolbox}


% Default margin size of 1 inch on all sides
\setlength\textwidth{\paperwidth}
	\addtolength\textwidth{-2in}
\setlength\hoffset{\z@}

\setlength\textheight{\paperheight}
	\addtolength\textheight{-2in}
\setlength\voffset{\z@}

\setlength\oddsidemargin{\z@}
\setlength\evensidemargin{\z@}

% Default header height set to height of 1 line of text
\ifcase \@ptsize
	\setlength\headheight{10pt}
\or
	\setlength\headheight{11pt}
\or
	\setlength\headheight{12pt}
\fi

% Set header top and footer baseline to 0.5in from page edges
\setlength\topmargin{-0.5in}
\setlength\headsep{0.5in}
	\addtolength\headsep{-\headheight}

\setlength\footskip{0.5in}


% Set default text spacing as double spaced
\RequirePackage{setspace}
\setstretch{2}

% Preserve length of one line of text for subsequent use
\newlength\tf@singlelineskip
\setlength\tf@singlelineskip{0.5\baselineskip}

% Set default paragraph indent
\setlength\parindent{0.5in}

% Renew \raggedright to preserve paragraph indent and set \@optraggedright to true
\def\raggedright{%
	\let\\\@centercr\@rightskip\@flushglue \rightskip\@rightskip
	\leftskip\z@skip
	\@optraggedrighttrue}

% Set \raggedright if raggedright option true
\if@optraggedright
	\raggedright
\fi

% Prevent widowed text with 2 line default
\PassOptionsToPackage{defaultlines=2, all}{nowidow}
\AtEndPreamble{%
	\@ifpackageloaded{nowidow}%
		{}%
		{\RequirePackage{nowidow}}}


% Footnote layout and formatting

\PassOptionsToPackage{bottom, marginal}{footmisc}
\if@endnotesformat
	\PassOptionsToPackage{perpage}{footmisc}
\fi

\RequirePackage{footmisc}

\setlength\footnotemargin{\parindent}

% Chicago symbols used when needed
\setfnsymbol{chicago}

% Separation between footnotes based on text size
\ifcase \@ptsize
	\setlength\footnotesep{16.65pt}
\or
	\setlength\footnotesep{18.7pt}
\or
	\setlength\footnotesep{20.4pt}
\fi

\setlength{\skip\footins}{\footnotesep}

% Readjust default footnote rule size and placement
\renewcommand{\footnoterule}{%
	\vspace*{-3pt}
	\hrule width 2in height 0.4pt
	\vspace*{-4pt}}

% Command to set footnote punctuation
\newcommand{\tf@setfnpunct}[1]{\def\tf@thefnpunct{#1\,\,}}
\tf@setfnpunct{.}

% Renew command for typesetting footnotes
\renewcommand{\@makefntext}[1]{%
	\if@optraggedright
		\raggedright%
	\fi
	\setlength\parindent{\footnotemargin}%
	\@thefnmark\tf@thefnpunct#1}


% Redefine headings page style (places page number in header)
\def\ps@headings{%
	\let\@oddfoot\@empty
	\let\@evenfoot\@empty
	\def\@evenhead{\thepage\hfil\slshape\leftmark}
	\def\@oddhead{{\slshape\rightmark}\hfil\thepage}
	\let\@mkboth\@gobbletwo
	\let\markboth\@mkboth
	\let\chaptermark\@gobble
	\let\sectionmark\@gobble}

% Set myheadings page style to be the same as the headings page style 
\let\ps@myheadings\ps@headings

% Set default page style and page numbering
\pagestyle{headings}
\pagenumbering{arabic}

% Adjust empty page style if twoside option used
\if@twoside
	\def\cleardoublepage{%
		\clearpage
		\ifodd\c@page
		\else
			\hbox{}
			\thispagestyle{empty}
			\newpage
		\fi}
\fi


% Thesis-related document structure formatting

\ifcsdef{chapter}%
	{%
		\providebool{@mainmatter}
		\@mainmattertrue
	
		\def\frontmatter{%
			\cleardoublepage
			\@mainmatterfalse
			\pagenumbering{roman}
			\pagestyle{empty}}

		\def\mainmatter{%
			\cleardoublepage
			\@mainmattertrue
			\pagenumbering{arabic}
			\pagestyle{headings}
			\addtocontents{toc}{\protect\addvspace{1\baselineskip}}}

		\def\backmatter{%
			\if@openright
				\cleardoublepage
			\else
				\clearpage
			\fi
			\@mainmatterfalse
			\setcounter{chapter}{0}%
			\setcounter{figure}{0}%
			\setcounter{table}{0}%
			\addtocontents{toc}{\protect\addvspace{1\baselineskip}}}
	}%
	{}


% Headings formatting of \chapter, \section, \subsection, and \subsubsection

% Top section command name (chapter or section?)
\ifcsdef{chapter}%
	{\def\tf@topsecname{chapter}}%
	{\def\tf@topsecname{section}}

\setcounter{secnumdepth}{0}

% \section and \chapter formatting

\ifcsdef{chapter}%
	{%	If \chapter defined...
		% \chapter formatting
		\def\tf@chapformat{\normalfont\bfseries\normalsize\singlespacing\centering}
		\def\tf@chapcounter{\refstepcounter{chapter}}
		\def\@chapter[#1]#2{%
			\ifnum \c@secnumdepth >\m@ne
				\if@mainmatter
					\tf@chapcounter
					\typeout{\@chapapp\space\thechapter.}%
					\addcontentsline{toc}{chapter}%
						{\protect\numberline{\@chapapp\space\thechapter.}#1}%
				\else
					\addcontentsline{toc}{chapter}{#1}%
				\fi
			\else
				\addcontentsline{toc}{chapter}{#1}%
			\fi
			\chaptermark{#1}%
			\@makechapterhead{#2}%
			\@afterheading}
		\def\@makechapterhead#1{%
			{	\tf@chapformat
				\ifnum \c@secnumdepth >\m@ne
					\if@mainmatter
						\@chapapp\space \thechapter
						\par\nobreak
						\vspace*{1\baselineskip}%
					\fi
				\fi
				\interlinepenalty\@M
				\ifstrempty{#1}%
					{}%
					{%
						#1\par\nobreak
						\vspace{1\baselineskip}%
					}}}
		% \chapter* formatting
		\def\@makeschapterhead#1{%
			{	\tf@chapformat
				\interlinepenalty\@M
				#1\par\nobreak
				\vspace{1\baselineskip}}}
	}%
	{%	If \chapter not defined, differentiate and reformat \section*

		% \section* adjustment to space after heading
		\newif\if@adjustssection\@adjustssectiontrue

		\newlength\tf@ssectafterskip
		\setlength\tf@ssectafterskip{1\p@}

		% Command to disable differentiate and reformat \section*
		\gdef\noadjustssect{\@adjustssectionfalse}

		% \section adjustment to space after heading
		\newif\if@tf@adjustsection\@tf@adjustsectionfalse

		\newlength\tf@sectafterskip
		\setlength\tf@sectafterskip{1\p@}

		% Redefine \@startsection to differentiate starred version
		\def\@startsection#1#2#3#4#5#6{%
			\if@noskipsec \leavevmode \fi
			\par
			\@tempskipa #4\relax
			\@afterindenttrue
			\ifdim \@tempskipa <\z@
				\@tempskipa -\@tempskipa \@afterindentfalse
			\fi
			\if@nobreak
				\everypar{}%
			\else
				\addpenalty\@secpenalty\addvspace\@tempskipa
			\fi
			\setlength\tf@ssectafterskip{#5}
			\if@adjustssection
				\ifstrequal{#1}{section}%
					{\setlength\tf@ssectafterskip{\tf@singlelineskip}}%
					{}%
			\fi
			\setlength\tf@sectafterskip{#5}
			\if@tf@adjustsection
				\ifstrequal{#1}{section}%
					{\setlength\tf@sectafterskip{\tf@singlelineskip}}%
					{}%
			\fi
			\@ifstar
				{\@ssect{#3}{#4}{\tf@ssectafterskip}{#6}}%
				{\@dblarg{\@sect{#1}{#2}{#3}{#4}{\tf@sectafterskip}{#6}}}}

		% Default formatting between \@svsec and heading
		\protected@edef\tf@secsep#1#2{\@empty}
		
		% Default formatting of TOC \addcontentsline
		\def\tf@tocline#1{%
			\protect\numberline{\csname the#1\endcsname\quad}}

		% Redefine \@sect to support variable formatting (i.e. appendixes)
		\def\@sect#1#2#3#4#5#6[#7]#8{%
			\ifnum #2>\c@secnumdepth
				\let\@svsec\@empty
			\else
				\refstepcounter{#1}%
				\protected@edef\@svsec{\@seccntformat{#1}\relax}%
			\fi
			\@tempskipa #5\relax
			\ifdim \@tempskipa>\z@
				\begingroup
					#6{%
						\@hangfrom{\hskip #3\relax\@svsec}%
						\interlinepenalty \@M \tf@secsep{#1}{#8}#8\@@par}%
				\endgroup
				\csname #1mark\endcsname{#7}%
				\addcontentsline{toc}{#1}{%
					\ifnum #2>\c@secnumdepth \else
						\tf@tocline{#1}%
					\fi
					#7}%
			\else
				\def\@svsechd{%
					#6{\hskip #3\relax\@svsec #8}%
					\csname #1mark\endcsname{#7}%
					\addcontentsline{toc}{#1}{%
						\ifnum #2>\c@secnumdepth \else
							\protect\numberline{\csname the#1\endcsname\quad}%
						\fi
						#7}}%
			\fi
			\@xsect{#5}}
	}

% \subsection and \subsubsection formatting

\renewcommand{\section}{%
	\@startsection{section}{1}%
		{\z@}%
		{-\tf@singlelineskip}%
		{1\p@}%
		{\normalfont\bfseries\normalsize\singlespacing\centering}}

\renewcommand{\subsection}{%
	\@startsection{subsection}{2}%
		{\z@}%
		{-\tf@singlelineskip}%
		{1\p@}%
		{\normalfont\mdseries\normalsize\singlespacing\centering}}

\renewcommand{\subsubsection}{%
	\@startsection{subsubsection}{3}%
		{\z@}%
		{-\tf@singlelineskip}%
		{1\p@}%
		{\normalfont\bfseries\normalsize\singlespacing\raggedright}}


% Title page commands for use with \maketitle

\newcommand{\subtitle}[1]{\gdef\tf@subtitle{#1}}
\subtitle{\@empty}

\newcommand{\submissioninfo}[1]{\gdef\tf@submissioninfo{#1}}
\submissioninfo{\@empty}

\newcommand{\course}[1]{\gdef\tf@course{#1}}
\course{\@empty}

\newcommand{\institution}[1]{\gdef\tf@institution{#1}}
\institution{\@empty}

\newcommand{\department}[1]{\gdef\tf@department{#1}}
\department{\@empty}

\newcommand{\location}[1]{\gdef\tf@location{#1}}
\location{\@empty}

% Renew \maketitle (for research papers default)
\if@titlepage
	% Formatting for titlepage option
	\renewcommand{\maketitle}{%
		\begin{titlepage}%
			\tf@setfnpunct{}
			\renewcommand*{\thefootnote}{\fnsymbol{footnote}}
			\let\footnoterule\relax
			\normalfont\normalsize\centering\singlespacing
			\parskip=1\baselineskip
			\vspace*{-2\baselineskip}
			\vspace*{0.333\paperheight}
			\vspace*{-1in}
			{	\bfseries\@title\par%
				\tf@subtitle\par}%
			\vspace*{2.35in}
			\@author\@thanks\par
			\tf@course\par
			\tf@submissioninfo\par
			\@date\par
			\parskip=\z@
		\end{titlepage}%
		\tf@emptymaketitle
		\cleardoublepage}
\else
	% Formatting for notitlepage option
	\renewcommand{\maketitle}{%
		\thispagestyle{plain}
		{	\renewcommand*{\thefootnote}{\fnsymbol{footnote}}
			\normalfont\normalsize\centering\singlespacing
			\parskip=1\baselineskip
			\vspace*{0.5in}
			\vspace*{-1.5\baselineskip}
			{	\bfseries\@title\par%
				\tf@subtitle\par}%
			\vspace*{1\baselineskip}
			\@author\@thanks\par
			\tf@course\par
			\tf@submissioninfo\par
			\@date\par
			\vspace*{0.5in}
			\vspace*{-1\baselineskip}}
		\tf@emptymaketitle}
\fi

% Command for emptying/completing \maketitle
\newcommand{\tf@emptymaketitle}{%
	% if not endnotes, reset footnote counter
	\if@endnotesformat
	\else
		\setcounter{footnote}{0}
	\fi

	% Clear command content at end of \maketitle
	\global\let\thanks\relax
	\global\let\maketitle\relax

	\global\let\@thanks\@empty
	\global\let\@author\@empty
	\global\let\@date\@empty
	\global\let\@title\@empty
	\global\let\tf@subtitle\@empty
	\global\let\tf@course\@empty
	\global\let\tf@institution\@empty
	\global\let\tf@department\@empty
	\global\let\tf@location\@empty
	\global\let\tf@submissioninfo\@empty

	\global\let\title\relax
	\global\let\author\relax
	\global\let\date\relax
	\global\let\subtitle\relax
	\global\let\course\relax
	\global\let\institution\relax
	\global\let\department\relax
	\global\let\location\relax
	\global\let\submissioninfo\relax}


% Table of Contents formatting

% Renew \tableofcontents with single spacing support

\renewcommand{\tableofcontents}{%
	\ifstrequal{\tf@topsecname}{chapter}%
		{\pagestyle{plain}}%
		{\thispagestyle{plain}}%
	\expandafter\csname \tf@topsecname\endcsname*{\contentsname}%
	\@mkboth{\MakeUppercase\contentsname}{\MakeUppercase\contentsname}%
	\if@optraggedright
		\let\tf@tocrmarg\@tocrmarg
		\def\@tocrmarg{\tf@tocrmarg plus1fil}
	\fi
	\singlespacing%
	\vspace{-1\baselineskip}
	\@starttoc{toc}%
	\setstretch{2}}%

% Right margin and number width formatting
\def\@tocrmarg{0.5in}
\def\@pnumwidth{0.2in}

\ifcsdef{chapter}%
	{%	If \chapter defined...
		\setcounter{tocdepth}{0}	

		\renewcommand*{\l@chapter}[2]{%
			\ifnum \c@tocdepth >\m@ne
				\addpenalty{-\@highpenalty}%
				\setlength\@tempdima{7.5em}%
				\vskip 1\baselineskip
				{	\parindent \z@
					\rightskip \@tocrmarg
					\parfillskip -\rightskip
					\leavevmode
					\ifnum \c@tocdepth >\z@ \bfseries \fi
					\advance\leftskip\@tempdima
					\hskip -\leftskip
					#1\nobreak\hfil \nobreak\hb@xt@\@pnumwidth{\hss #2}\par
					\penalty\@highpenalty}
			\fi}

		\renewcommand*{\l@section}{%
			\ifnum \c@tocdepth >\z@ \vskip 1\baselineskip \fi
			\@dottedtocline{1}{1.5in}{\z@}}

		\renewcommand*{\l@subsection}{%
			\ifnum \c@tocdepth >1 \vskip 1\baselineskip \fi
			\@dottedtocline{2}{2.0in}{\z@}}

		\renewcommand*{\l@subsubsection}{%
			\ifnum \c@tocdepth >2 \vskip 1\baselineskip \fi
			\@dottedtocline{3}{2.5in}{\z@}}
	}%
	{%	If \chapter not defined, \section used instead
		\setcounter{tocdepth}{1}

		\renewcommand*{\l@section}[2]{%
			\ifnum \c@tocdepth >\z@
				\addpenalty\@secpenalty
				\addvspace{1\baselineskip}%
				\setlength\@tempdima{\z@}%
				{	\parindent \z@
					\rightskip \@tocrmarg
					\parfillskip -\rightskip
					\leavevmode
					\ifnum \c@tocdepth >\@ne \bfseries \fi
					\advance\leftskip\@tempdima
					\hskip -\leftskip
					#1\nobreak\hfil \nobreak\hb@xt@\@pnumwidth{\hss #2}\par}
			\fi}

		\renewcommand*{\l@subsection}{%
			\ifnum \c@tocdepth >1 \vskip 1\baselineskip \fi
			\@dottedtocline{2}{0.5in}{\z@}}

		\renewcommand*{\l@subsubsection}{%
			\ifnum \c@tocdepth >2 \vskip 1\baselineskip \fi
			\@dottedtocline{3}{1.0in}{\z@}}
	}


% Figures, Tables, and Illustrations formatting

% List label names of Figures and Tables
\renewcommand{\listfigurename}{Figures}
\renewcommand{\listtablename}{Tables}

\AtEndPreamble{
	\@ifpackageloaded{polyglosia}%
		{%
			\addto\captionsenglish{%
				\renewcommand{\listfigurename}{Figures}
				\renewcommand{\listtablename}{Tables}}%
		}{}
	\@ifpackageloaded{babel}%
		{%
			\addto\captionsenglish{%
				\renewcommand{\listfigurename}{Figures}
				\renewcommand{\listtablename}{Tables}}%
		}{}}

% List of Figures
\renewcommand{\listoffigures}{%
	\expandafter\csname \tf@topsecname\endcsname*{\listfigurename}%
	\@mkboth{\MakeUppercase\listfigurename}{\MakeUppercase\listfigurename}%
	\singlespacing%
	\vspace{-1\baselineskip}
	\@starttoc{lof}
	\setstretch{2}}

\renewcommand*{\l@figure}[2]{%
	\addpenalty{-\@highpenalty}%
	\setlength\@tempdima{0.5in}%
	\vskip 1\baselineskip
	{	\parindent \z@
		\rightskip \@tocrmarg
		\parfillskip -\rightskip
		\leavevmode
		\advance\leftskip\@tempdima
		\hskip -\leftskip
		#1\nobreak\hfil \nobreak\hb@xt@\@pnumwidth{\hss #2}\par
		\penalty\@highpenalty}}

% List of Tables
\renewcommand{\listoftables}{%
	\expandafter\csname \tf@topsecname\endcsname*{\listtablename}%
	\@mkboth{\MakeUppercase\listtablename}{\MakeUppercase\listtablename}%
	\singlespacing%
	\vspace{-1\baselineskip}
	\@starttoc{lot}
	\setstretch{2}}

\def\l@table{\l@figure}

% List of Illustrations
\newcommand{\listillustrationname}{Illustrations}
\def\tf@illustrsection{\normalfont\bfseries\normalsize\singlespacing\noindent}

\newcommand{\listofillustrations}{%
	\expandafter\csname \tf@topsecname\endcsname*{\listillustrationname}%
	\@mkboth{\MakeUppercase\listillustrationname}{\MakeUppercase\listillustrationname}%
	\singlespacing%
	\vspace{-1\baselineskip}
	{\tf@illustrsection Figures}\par\nopagebreak
	\@starttoc{lof}
	\vspace{1\baselineskip}
	{\tf@illustrsection Tables}\par\nopagebreak
	\@starttoc{lot}
	\setstretch{2}}


% Figures and Tables: float positioning

\setlength\textfloatsep{2\tf@singlelineskip}
\setlength\floatsep{2\tf@singlelineskip minus 0.5\tf@singlelineskip}
\setlength\intextsep{2\tf@singlelineskip minus 0.25\tf@singlelineskip}

\def\fps@table{!htb}
\def\fps@figure{!htb}


% Figures and Tables: caption formatting

\setlength\abovecaptionskip{\z@}
\setlength\belowcaptionskip{\z@}

\long\def\@makecaption#1#2{%
	\vskip\abovecaptionskip
	\if@optraggedright
		\raggedright%
	\fi
	\small#1. #2\par
	\vskip\belowcaptionskip}


% Lists: enumerate and itemize

\setlength\leftmargini{1.5\parindent}
\setlength\leftmargin{\leftmargini}
\setlength\leftmarginii{\parindent}
\setlength\leftmarginiii{\parindent}
\setlength\leftmarginiv{\parindent}
\setlength\labelsep{.65em}
\setlength\labelwidth{\parindent}
\addtolength\labelwidth{-\labelsep}

% Formatting command for both enumerate and itemize
\def\tf@listformat{%
	\setlength\topsep{\z@}
	\setlength\itemsep{\z@}
	\setlength\parsep{\z@}
	\setlength\listparindent{\parindent}}

% Format of enumerate list labels
\renewcommand{\labelenumi}{\arabic{enumi}.}
\renewcommand{\labelenumii}{\alph{enumii})}
\renewcommand{\labelenumiii}{(\arabic{enumiii})}
\renewcommand{\labelenumiv}{(\alph{enumiv})}

% Redefine enumerate to include formatting command hook
\def\tf@enumerateformat{\tf@listformat}
\def\enumerate{%
	\ifnum
		\@enumdepth >\thr@@\@toodeep
	\else
		\advance\@enumdepth\@ne
		\edef\@enumctr{enum\romannumeral\the\@enumdepth}%
		\expandafter
		\list
			\csname label\@enumctr\endcsname
			{\usecounter\@enumctr%
			\def\makelabel##1{\hss\llap{##1}}%
			\tf@enumerateformat}%
	\fi}

% Redefine itemize to include formatting command hook
\def\tf@itemizeformat{\tf@listformat}
\def\itemize{%
	\ifnum
		\@itemdepth >\thr@@\@toodeep
	\else
		\advance\@itemdepth\@ne
		\edef\@itemitem{labelitem\romannumeral\the\@itemdepth}%
		\expandafter
		\list
			\csname\@itemitem\endcsname
			{\def\makelabel##1{\hss\llap{##1}}%
			\tf@itemizeformat}%
	\fi}


% Block quotation formatting

\renewenvironment{quotation}
	{	\list{}{%
			\setlength\listparindent{\parindent}
			\setlength\itemindent{\listparindent}
			\setlength\leftmargin{\parindent}
			% Adjust right margin based on raggedright option
			\if@optraggedright
				\setlength\rightmargin{\z@}
			\else
				\setlength\rightmargin{\leftmargin}
			\fi
			\setlength\parsep{\z@}
			% Place line spacing between text and quotation
			\ifnumequal{\baselinestretch}{1}%
				{\setlength\topsep{\baselineskip}}%
				{\setlength\topsep{\z@}}}%
		\singlespacing%
		\item\relax}
	{\endlist}

% Set quote environment to be the same as the quotation environment
\def\quote{\quotation}


% Appendixes formatting

\AtEndPreamble{%
	\let\tf@appendix\appendix
	\def\appendix{\@empty}}

\newif\if@appendixes\@appendixesfalse

% New appendixes environment
\ifcsdef{chapter}%
	{%	If \chapter defined...
		\newcounter{appendix}
	
		% appendixes environment resets figure and tables counts with "A." prefix
		\newenvironment{appendixes}%
			{%
				\@appendixestrue
				\@mainmattertrue
				\tf@appendix
				\def\tf@chapcounter{%
					\refstepcounter{appendix}
					\gdef\thechapter{\@Alph\c@appendix}}
				\setcounter{figure}{0}
				\setcounter{table}{0}
				\renewcommand{\thefigure}{A.\@arabic\c@figure}
				\renewcommand{\thetable}{A.\@arabic\c@table}
			}%
			{}%
	}%
	{%	If \chapter not defined, using \section...
		% Adjust formatting of section headings for appendixes environment
		\def\tf@appendixsecfrmt{%
			\DeclareRobustCommand{\@seccntformat}[1]{%
				\ifstrequal{##1}{section}%
					{\appendixname\space \csname the##1\endcsname}%
					{\csname the##1\endcsname\quad}}
			\DeclareRobustCommand{\tf@secsep}[2]{%
				\ifstrequal{##1}{section}%
					{%
						\ifstrempty{##2}%
							{}%
							{%
								\par\nobreak
								\vspace{1\baselineskip}%
							}%
					}%
					{\@empty}}
			\def\tf@tocline##1{\appendixname\space \csname the##1\endcsname.\quad}
			\@tf@adjustsectiontrue}

		% Make appendixes environment
		\newenvironment{appendixes}%
			{%
				\@appendixestrue
				\setcounter{secnumdepth}{1}
				\tf@appendixsecfrmt
				\tf@appendix
			}%
			{%
				\setcounter{secnumdepth}{0}%
				\setcounter{section}{0}%
				\gdef\thesection{\@arabic\c@section}%
			}%
	}


% thebibliography environment formatting (adjust \@openbib@code hook default)

\setlength\bibindent{\parindent}

\renewcommand\@openbib@code{%
	\singlespacing
	\setlength\leftmargin{\bibindent}
	\setlength\itemindent{-\bibindent}
	\addtolength\itemindent{\labelsep}
	\addtolength\itemindent{\labelwidth}
	\setlength\itemsep{\tf@singlelineskip}
	\setlength\parsep{\z@}}


% biblatex-chicago: set formatting defaults

% Provide warning if biblatex-chicago loaded before turabian-formatting
\@ifpackageloaded{biblatex-chicago}%
	{%
		\PackageWarningNoLine{turabian-formatting}{Loading the 'biblatex-chicago' package after the 'turabian-formatting' package is recommended. See documentation for more information}%
	}%
	{}

\PassOptionsToPackage%
	{isbn=false, autolang=other, footmarkoff, backend=biber}%
	{biblatex-chicago}

\if@authordateformat
	\PassOptionsToPackage{authordate}{biblatex-chicago}
\fi

% Adjustments to \printbibliography formatting
\if@appendbibformat
	\AtEndPreamble{%
		\@ifpackageloaded{biblatex}%
			{%
				\if@authordateformat
					\DefineBibliographyStrings{english}{%
						bibliography = {References}}
				\else
					\DefineBibliographyStrings{english}{%
						references = {Bibliography}}
				\fi
				\renewcommand{\bibsetup}{\singlespacing}
				\renewcommand{\bibitemsep}{1\baselineskip}
				\renewcommand{\bibhang}{0.5in}
			}%
			{}}
\fi


% endnotes package support: formatting

\if@endnotesformat

	\RequirePackage{endnotes, xparse}

	% Changes footnote marker type and formatting
	\tf@setfnpunct{}
	\renewcommand*{\thefootnote}{\fnsymbol{footnote}}

	\PassOptionsToPackage{notetype=endonly}{biblatex-chicago}
	
	% Endnotes layout and formatting (based on if chapter is defined)
	\ifcsdef{chapter}%
		{%	If \chapter defined...
			\let\tf@chapter\chapter

			\@addtoreset{endnote}{chapter}

			% Renew Notes heading formatted as \chapter* (also added to Table of Content)
			\renewcommand{\enoteheading}{%
				\tf@chapter*{\notesname}%
				\@mkboth{\MakeUppercase\notesname}{\MakeUppercase\notesname}%
				\addcontentsline{toc}{chapter}{\notesname}%
				\mbox{}\par%
				\vspace{-1.5\baselineskip}%
				\let\@afterindentfalse\@afterindenttrue
				\singlespacing}%

			% Renew \chapter command to: (1) reset endnotes counter at each chapter, and (2) add subheadings for each chapter in \endnotes formatting.
			\RenewDocumentCommand{\chapter}{som}{%
				\IfBooleanTF{#1}%
					{%	if \chapter*
						\tf@chapter*{#3}%
						\setcounter{endnote}{0}%
						\addtoendnotes{%
							\noexpand\tf@enotedivider%
								{\noexpand\section*}{\unexpanded{#3}}}%
					}%
					{%	if \chapter
						\IfNoValueTF{#2}%
							{\tf@chapter{#3}}%
							{\tf@chapter[#2]{#3}}%
						\if@mainmatter
							\addtoendnotes{%
								\noexpand\tf@enotedivider%
									{\noexpand\section*}{\@chapapp\space \thechapter}}%
						\else
							\addtoendnotes{%
								\noexpand\tf@enotedivider%
									{\noexpand\section*}{\unexpanded{#3}}}%
						\fi
					}}
			
			% Empty subheading divider before \theendnotes for use with \tf@enotedivider
			\preto{\theendnotes}{%
				\addtoendnotes{\noexpand\tf@enotedivider{}{}}}

			% Make endnote divider if not followed by another endnote divider
			\def\tf@enotedivider#1#2{\@ifnextchar\tf@enotedivider{}{#1{#2}}}%
		}%
		{%	If \chapter not defined, Notes heading formatted as \section*
			\renewcommand{\enoteheading}{%
				\section*{\notesname}%
				\markboth{\notesname}{\notesname}%
				\addcontentsline{toc}{section}{\notesname}%
				\mbox{}\par%
				\vspace{-1.5\baselineskip}%
				\let\@afterindentfalse\@afterindenttrue
				\singlespacing}%
		}%

	% Make endnotes use of "_" not a special character when in text mode
	\appto{\enoteheading}{%
		\catcode`_=12
		\begingroup\lccode`~=`_
		\lowercase{\endgroup\let~}\sb
		\mathcode`_="8000}

	% Create \jobname.ent if not already defined to avoid missing file error
	\preto{\theendnotes}{%
		\IfFileExists{./\jobname.ent}%
			{}%
			{%
				\immediate\openout\@enotes=\jobname.ent\relax
				\immediate\write\@enotes{}%
     		}}

	% Set default endnotes formatting
	\renewcommand{\enotesize}{\normalsize}
	\renewcommand{\enoteformat}{%
		\if@optraggedright
			\raggedright%
		\fi
		\setlength\parindent{\footnotemargin}
		\vspace{1\baselineskip}
		\theenmark.\,\,}

\else

	% Define \theendnotes if endnotes package not loaded
	\@ifpackageloaded{endnotes}%
		{}%
		{\def\theendnotes{\@empty}}

\fi


