%%
%% This is file `contracard.sty',
%% generated with the docstrip utility.
%%
%% The original source files were:
%%
%% contracard.dtx  (with options: `contracard-pkg')
%% 
%%   Copyright 2012 Samuel Whited
%% 
%%   This file may be distributed and/or modified under the
%%   conditions of the LaTeX Project Public License, either
%%   version 1.3c 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.3c or later is part of all distributions of
%%   LaTeX version 2008/05/04 or later.
%% 
%%   For the maintenance status and other document metadata,
%%   see the end of this document.
%% 
\NeedsTeXFormat{LaTeX2e}[1995/12/01]
\ProvidesPackage{contracard}[2013/09/16 Package for typesetting called dances]
\RequirePackage{calc,intcalc}
\RequirePackage{ifthen}
\RequirePackage{tocloft}
\RequirePackage{textcomp}
\DeclareOption{showcountafter}{\showcountafter}
\DeclareOption{showcountbefore}{\showcountbefore}
\DeclareOption{enableidx}{\AtEndOfPackage{\enableidx}}
\newcommand*{\defaultcontraenv}{flushleft}
\newcommand*{\dancetitleenv}{flushleft}
\newcommand*{\dancetitleformat}{\section*}
\newcommand*{\danceauthorformat}{\subsection*}
\newcommand*{\danceformformat}{\hspace{\fill}}
\newcommand*{\movedelimiter}{,}
\newcommand*{\partdelimiter}{.}
\newcommand*{\midpartdelimiter}{;}
\newlength{\phrasevspace}
\setlength{\phrasevspace}{1em}
\newcommand*{\phraseseparator}{\vspace{\phrasevspace}}
\newcommand*{\showcountbefore}{\def\@showcountbefore{}}
\newcommand*{\showcountafter}{\def\@showcountafter{}}
\newcommand*{\hidecountbefore}{\let\@showcountbefore\undefined}
\newcommand*{\hidecountafter}{\let\@showcountafter\undefined}

\def\cc@countleftbracket{(}
\def\cc@countrightbracket{)}
\newcommand*{\countleftbracket}[1]{\def\cc@countleftbracket{#1}}
\newcommand*{\countrightbracket}[1]{\def\cc@countrightbracket{#1}}
\def\cc@defaultnotesenv{flushleft}
\newcommand*{\setdefaultnotesenv}[1]{\def\cc@defaultnotesenv{#1}}
\newlength{\prenotevspace}
\setlength{\prenotevspace}{\fill}
\newcounter{dancecount}
\newcounter{partcount}
\newcounter{phrasecount}
\newcounter{dancepart}
\newcounter{dancephrase}
\newcounter{dancepartlength}
\newcounter{dancephraselength}
\newcommand*{\resetdancepartlength}{\setcounter{dancepartlength}{16}}
\newcommand*{\resetdancephraselength}{\setcounter{dancephraselength}{32}}
\resetdancepartlength
\resetdancephraselength
\newcommand*{\resetdancephrase}{%
  \ifthenelse{\value{partcount}=16}{\newline}{}%
  \@ifstar{\@resetdancephraseStar}{\@resetdancephraseNoStar}%
}
\newcommand*{\@resetdancephraseStar}{%
  \setcounter{dancephrase}{1}%
  \setcounter{phrasecount}{0}%
  \setcounter{phrasemovenum}{0}%
  \resetdancepart*%
}
\newcommand*{\@resetdancephraseNoStar}{%
  \ifthenelse{\value{dancephrase}=1}{}{%
    \setcounter{dancephrase}{1}%
    \setcounter{phrasecount}{0}%
    \setcounter{phrasemovenum}{0}%
    \resetdancepart%
  }%
}
\newcommand*{\resetdancepart}{%
  \@ifstar{\@resetdancepartStar}{\@resetdancepartNoStar}%
}
\newcommand*{\@resetdancepartStar}{%
  \setcounter{dancepart}{1}%
  \setcounter{partcount}{0}%
  \setcounter{partmovenum}{0}%
  \setcounter{halfpartmovenum}{0}%
}
\newcommand*{\@resetdancepartNoStar}{%
  \ifthenelse{\value{dancepart}=1}{}{%
    \setcounter{dancepart}{1}%
    \setcounter{partcount}{0}%
    \setcounter{partmovenum}{0}%
    \setcounter{halfpartmovenum}{0}%
  }%
}
\newcommand*{\newdancephrase}{%
  \ifthenelse{\NOT\value{phrasecount}=0}{\par\phraseseparator\par}{}%
  \addtocounter{dancephrase}{1}%
  \setcounter{phrasecount}{0}%
  \setcounter{phrasemovenum}{0}%
  \resetdancepart*%
}
\newcommand*{\newdancepart}{%
  \par\nopagebreak%
  \addtocounter{dancepart}{1}%
  \setcounter{partcount}{0}%
  \setcounter{partmovenum}{0}%
  \setcounter{halfpartmovenum}{0}%
}

\newcounter{phrasemovenum}
\newcounter{partmovenum}
\newcounter{halfpartmovenum}
\newcounter{dancemovenum}
\setcounter{phrasemovenum}{0}
\setcounter{partmovenum}{0}
\setcounter{halfpartmovenum}{0}
\setcounter{dancemovenum}{0}
\newenvironment{contra}[4][\defaultcontraenv]{%
  \global\def\dancetitle{\ignorespaces#2\unskip}
  \global\def\danceauthor{\ignorespaces#3\unskip}
  \global\def\danceform{\ignorespaces#4\unskip}
  \setlength{\parskip}{0.3em plus 0.2em minus 0.3em}
  \refstepcounter{dance}
  \addcontentsline{lod}{dance}{\protect\numberline{\thedance}\ignorespaces#2\unskip}
  \setcounter{dancecount}{0}
  \setcounter{dancemovenum}{0}
  \resetdancepart*
  \resetdancephrase*
  \ifdefined\@ccisclass\clearpage\fi%
  \ifthenelse{\isundefined{\imki@wrindexentry}}{%
    \index{\ignorespaces#4\unskip}
  }{%
    \index[dbt]{\ignorespaces#4\unskip}
    \index[dba]{\ignorespaces#3\unskip}
  }%
  \begin{\dancetitleenv}
    \ifdefined\@ccisclass%
      \pagestyle{myheadings}
      \thispagestyle{myheadings}
      \markboth{}{\danceformformat{\ignorespaces#4\unskip}}
    \else%
      {\danceformformat{\ignorespaces#4\unskip}}%
    \fi%
    {\dancetitleformat{\ignorespaces#2\unskip}}%
    {\danceauthorformat{\ignorespaces#3\unskip}}%
  \end{\dancetitleenv}
  \newcommand*{\@contraenv}{#1}
  \begin{\@contraenv}
  \catcode10=9\relax % New line
  \catcode11=9\relax % Vertical Tab
  \catcode12=9\relax % Form Feed
}{%
  \end{\@contraenv}
}
\newcommand*{\move}{\@ifstar\@moveStar\@moveNoStar}
\newcommand*{\@moveStar}[2][8]{%
  \def\cc@moveStar{}\@moveNoStar[#1]{#2}\let\cc@moveStar\undefined%
}
\newlength{\cc@partsepwidth}%
\newcommand*{\@moveNoStar}[2][8]{%
  \setlength{\parindent}{0pt}%
  \setlength{\cc@partsepwidth}{\widthof{\Alph{dancephrase}\arabic{dancepart}%
    \partdelimiter\ }}%
  \setlength{\hangindent}{\cc@partsepwidth}%
  \ifthenelse{\value{phrasecount}=\value{dancephraselength}}{%
    \ifthenelse{\NOT\(#1=0\)}{%
      \newdancephrase%
    }{}%
  }{%
    \ifthenelse{\(\value{partcount}=\value{dancepartlength}\)%
      \AND\NOT\(#1=0\)}{%
      \newdancepart%
    }{}%
  }%
  \ifthenelse{\value{partmovenum}=0}{%
    \Alph{dancephrase}\arabic{dancepart}\partdelimiter\ %
  }{}%
  \addtocounter{dancecount}{#1}%
  \addtocounter{phrasecount}{#1}%
  \addtocounter{partcount}{#1}%
  \addtocounter{phrasemovenum}{1}%
  \addtocounter{partmovenum}{1}%
  \addtocounter{halfpartmovenum}{1}%
  \addtocounter{dancemovenum}{1}%
  \ifthenelse{\isundefined{\@showcountbefore}\OR\(#1=0\)}{%
    \relax%
  }{\cc@countleftbracket\ignorespaces#1\unskip\cc@countrightbracket~}%
  \ignorespaces#2\unskip%
  \ifthenelse{\isundefined{\@showcountafter}\OR\(#1=0\)}{%
    \relax%
  }{~\cc@countleftbracket\ignorespaces#1\unskip\cc@countrightbracket}%
  \ifthenelse{\NOT\(#1=0\)}{%
    \ifthenelse{\value{partcount}=\intcalcDiv{\value{dancepartlength}}{2}}{%
      \setcounter{halfpartmovenum}{0}%
    }{}%
    \ifx\cc@moveStar\undefined%
      \ifthenelse{\value{partcount}=\intcalcDiv{\value{dancepartlength}}{2}}{%
        \midpartdelimiter\looseness=-1\linebreak[1]\space\nopagebreak\ignorespaces%
      }{%
        \ifthenelse{\NOT\value{partcount}=\value{dancepartlength}}{%
          \movedelimiter\nolinebreak[2]\space\nopagebreak\ignorespaces%
        }{}%
      }%
    \fi%
  }{}%
}
\newcommand*{\allemande}{%
  \moveindex{Allemande}%
  \@ifstar\@allemandeStar\@allemandeNoStar%
}
\newcommand*{\@allemandeNoStar}[3][\unskip]{%
  \move[#2]{Allemande \ignorespaces#3\unskip\ \ignorespaces#1\unskip}%
}
\newcommand*{\@allemandeStar}[3][%
  \expandafter\expandafter\expandafter\MakeUppercase\@gobbletwo]{%
  \move[#2]{\ignorespaces#1\unskip\ allemande \ignorespaces#3\unskip}%
}
\newcommand*{\balance}{%
  \moveindex{Balance}%
  \@ifstar\@balanceStar\@balanceNoStar%
}
\newcommand*{\@balanceNoStar}[1][\unskip]{%
  \move[4]{Balance \ignorespaces#1\unskip}%
}
\newcommand*{\@balanceStar}[1][%
  \expandafter\expandafter\expandafter\MakeUppercase\@gobbletwo]{%
  \move[4]{\ignorespaces#1\unskip\ balance}%
}
\newcommand*{\balanceand}{%
  \cc@checkphrasestart%
  \moveindex{Balance}%
  \@ifstar\@balanceandStar\@balanceandNoStar%
}
\newcommand*{\@balanceandNoStar}[1][]{%
  \move*[0]{Balance and \ignorespaces#1\unskip\ \ \ignorespaces}%
}
\newcommand*{\@balanceandStar}[1][%
  \expandafter\expandafter\expandafter\MakeUppercase\@gobbletwo]{%
  \move*[0]{\ignorespaces#1\unskip\ balance and\ \ \ignorespaces}%
}
\newcommand*{\butterflywhirl}{%
  \moveindex{Butterfly Whirl}%
  \@ifstar\@butterflyStar\@butterflyNoStar%
}
\newcommand*{\@butterflyNoStar}[2][\unskip]{%
  \move[#2]{Butterfly whirl \ignorespaces#1\unskip}%
}
\newcommand*{\@butterflyStar}[2][%
  \expandafter\expandafter\expandafter\MakeUppercase\@gobbletwo]{%
  \move[#2]{\ignorespaces#1\unskip\ butterfly whirl}%
}
\newcommand*{\circleleft}{%
  \moveindex{Circle Left}%
  \def\cc@dir{left}%
  \@ifstar\@circleStar\@circleNoStar%
}
\newcommand*{\circleright}{%
  \moveindex{Circle Right}%
  \def\cc@dir{right}%
  \@ifstar\@circleStar\@circleNoStar%
}
\newcommand*{\@circleNoStar}[2][\unskip]{%
  \move[#2]{Circle \cc@dir\ \ignorespaces#1\unskip}%
}
\newcommand*{\@circleStar}[2][%
  \expandafter\expandafter\expandafter\MakeUppercase\@gobbletwo]{%
  \move[#2]{\ignorespaces#1\unskip\ circle \cc@dir}%
}
\newcommand*{\courtesyturn}{%
  \moveindex{Courtesy Turn}%
  \@ifstar\@courtesyturnStar\@courtesyturnNoStar%
}
\newcommand*{\@courtesyturnNoStar}[2][\unskip]{%
  \move[#2]{Courtesy turn \ignorespaces#1\unskip}%
}
\newcommand*{\@courtesyturnStar}[2][%
  \expandafter\expandafter\expandafter\MakeUppercase\@gobbletwo]{%
  \move[#2]{\ignorespaces#1\unskip\ courtesy turn}%
}
\newcommand*{\dosido}{%
  \moveindex{\spellDosido}%
  \@ifstar\@dosidoStar\@dosidoNoStar%
}
\newcommand*{\@dosidoNoStar}[2][\unskip]{%
  \move[#2]{\spellDosido\ \ignorespaces#1\unskip}%
}
\newcommand*{\@dosidoStar}[2][%
  \expandafter\expandafter\expandafter\MakeUppercase\@gobbletwo]{%
  \move[#2]{\ignorespaces#1\unskip\ \spelldosido}%
}
\newcommand*{\seesaw}{%
  \moveindex{See Saw}%
  \@ifstar\@seesawStar\@seesawNoStar%
}
\newcommand*{\@seesawNoStar}[2][\unskip]{%
  \move[#2]{See saw \ignorespaces#1\unskip}%
}
\newcommand*{\@seesawStar}[2][%
  \expandafter\expandafter\expandafter\MakeUppercase\@gobbletwo]{%
  \move[#2]{\ignorespaces#1\unskip\ see saw}%
}
\newcommand*{\gypsy}{%
  \moveindex{Gypsy}%
  \@ifstar\@gypsyStar\@gypsyNoStar%
}
\newcommand*{\gypsyright}{%
  \moveindex{Gypsy}%
  \moveindex{Gypsy Right}%
  \def\cc@thedir{right}%
  \@ifstar\@gypsyDirStar\@gypsyDirNoStar%
}
\newcommand*{\gypsyleft}{%
  \moveindex{Gypsy}%
  \moveindex{Gypsy Left}%
  \def\cc@thedir{left}%
  \@ifstar\@gypsyDirStar\@gypsyDirNoStar%
}
\newcommand*{\@gypsyNoStar}[2][\unskip]{%
  \move[#2]{Gypsy \ignorespaces#1\unskip}
}
\newcommand*{\@gypsyStar}[2][%
  \expandafter\expandafter\expandafter\MakeUppercase\@gobbletwo]{%
  \move[#2]{\ignorespaces#1\unskip\ gypsy}
}
\newcommand*{\@gypsyDirNoStar}[2][\unskip]{%
  \move[#2]{Gypsy \cc@thedir\ \ignorespaces#1\unskip}
}
\newcommand*{\@gypsyDirStar}[2][%
  \expandafter\expandafter\expandafter\MakeUppercase\@gobbletwo]{%
  \move[#2]{\ignorespaces#1\unskip\ \cc@thedir\ gypsy}
}
\newcommand*{\heyforfour}{%
  \moveindex{Hey}%
  \moveindex{Hey for Four}%
  \moveindex{Full Hey}%
  \@ifstar\@heyforfourStar\@heyforfourNoStar%
}
\newcommand*{\@heyforfourNoStar}[1][\unskip]{%
  \move[16]{Hey for four \ignorespaces#1\unskip}
}
\newcommand*{\@heyforfourStar}[1][%
  \expandafter\expandafter\expandafter\MakeUppercase\@gobbletwo]{%
  \move[16]{\ignorespaces#1\unskip\ hey for four}
}
\newcommand*{\halfhey}{%
  \moveindex{Hey}%
  \moveindex{Hey for Four}%
  \moveindex{Half Hey}%
  \@ifstar\@halfheyStar\@halfheyNoStar%
}
\newcommand*{\@halfheyNoStar}[1][\unskip]{%
  \move[8]{Half a hey \ignorespaces#1\unskip}
}
\newcommand*{\@halfheyStar}[1][%
  \expandafter\expandafter\expandafter\MakeUppercase\@gobbletwo]{%
  \move[8]{\ignorespaces#1\unskip\ half a hey}
}
\newcommand*{\halfheyricochet}{%
  \moveindex{Hey}%
  \moveindex{Hey for Four}%
  \moveindex{Half Hey}%
  \moveindex{Half Hey Ricochet}%
  \@ifstar\@halfheyricochetStar\@halfheyricochetNoStar%
}
\newcommand*{\@halfheyricochetNoStar}[1][\unskip]{%
  \move[8]{Half hey ricochet \ignorespaces#1\unskip}
}
\newcommand*{\@halfheyricochetStar}[1][%
  \expandafter\expandafter\expandafter\MakeUppercase\@gobbletwo]{%
  \move[8]{\ignorespaces#1\unskip\ half hey ricochet}
}
\newcommand*{\fullhey}{%
  \moveindex{Hey}%
  \moveindex{Hey for Four}%
  \moveindex{Full Hey}%
  \@ifstar\@fullheyStar\@fullheyNoStar%
}
\newcommand*{\@fullheyNoStar}[1][\unskip]{%
  \move[16]{Full hey \ignorespaces#1\unskip}
}
\newcommand*{\@fullheyStar}[1][%
  \expandafter\expandafter\expandafter\MakeUppercase\@gobbletwo]{%
  \move[16]{\ignorespaces#1\unskip\ full hey}
}
\newcommand*{\ladieschain}{%
  \moveindex{Ladies Chain}%
  \def\cc@who{ladies}%
  \@ifstar\@chainStar\@chainNoStar%
}
\newcommand*{\menchain}{%
  \moveindex{Men Chain}%
  \def\cc@who{men}%
  \@ifstar\@chainStar\@chainNoStar%
}
\newcommand*{\@chainNoStar}[1][\unskip]{%
  \move[8]{\expandafter\MakeUppercase\cc@who\ chain \ignorespaces#1\unskip}%
}
\newcommand*{\@chainStar}[1][%
  \expandafter\expandafter\expandafter\MakeUppercase\@gobbletwo]{%
  \move[8]{\ignorespaces#1\unskip\ \cc@who\ chain}%
}
\newcommand*{\halfladieschain}{%
  \moveindex{Half Ladies Chain}%
  \def\cc@who{ladies}%
  \@ifstar\@halfchainStar\@halfchainNoStar%
}
\newcommand*{\halfmenchain}{%
  \moveindex{Half Men Chain}%
  \def\cc@who{men}%
  \@ifstar\@halfchainStar\@halfchainNoStar%
}
\newcommand*{\@halfchainNoStar}[1][\unskip]{%
  \move[8]{\expandafter\MakeUppercase\cc@who\ half chain \ignorespaces#1\unskip}%
}
\newcommand*{\@halfchainStar}[1][%
  \expandafter\expandafter\expandafter\MakeUppercase\@gobbletwo]{%
  \move[8]{\ignorespaces#1\unskip\ \cc@who\ half chain}%
}
\newcommand*{\fullladieschain}{%
  \moveindex{Full Ladies Chain}%
  \def\cc@who{ladies}%
  \@ifstar\@fullchainStar\@fullchainNoStar%
}
\newcommand*{\fullmenchain}{%
  \moveindex{Full Men Chain}%
  \def\cc@who{men}%
  \@ifstar\@fullchainStar\@fullchainNoStar%
}
\newcommand*{\@fullchainNoStar}[1][\unskip]{%
  \move[16]{\expandafter\MakeUppercase\cc@who\ full chain \ignorespaces#1\unskip}%
}
\newcommand*{\@fullchainStar}[1][%
  \expandafter\expandafter\expandafter\MakeUppercase\@gobbletwo]{%
  \move[16]{\ignorespaces#1\unskip\ \cc@who\ full chain}%
}
\newcommand*{\lines}{%
  \moveindex{Lines Forward and Back}%
  \@ifstar\@linesStar\@linesNoStar%
}
\newcommand*{\@linesNoStar}[1][%
  \expandafter\expandafter\expandafter\MakeUppercase\@gobbletwo]{%
  \move[8]{\ignorespaces#1\unskip\ lines forward and back}%
}
\newcommand*{\@linesStar}[1][lines]{%
  \move[4]{\ignorespaces#1\unskip\ lines forward}%
}
\newcommand*{\longlines}{%
  \moveindex{Long Lines Forward and Back\ \seealso{Lines Forward and Back}{X}}%
  \@ifstar\@longlinesStar\@longlinesNoStar%
}
\newcommand*{\@longlinesNoStar}{%
  \lines[Long]%
}
\newcommand*{\@longlinesStar}{%
  \lines*[Long]%
}
\newcommand*{\petronella}{%
  \moveindex{Petronella}%
  \@ifstar\@petronellaStar\@petronellaNoStar%
}
\newcommand*{\@petronellaNoStar}[1][\unskip]{%
  \move[4]{Petronella \ignorespaces#1\unskip}%
}
\newcommand*{\@petronellaStar}[1][%
  \expandafter\expandafter\expandafter\MakeUppercase\@gobbletwo]{%
  \move[4]{\ignorespaces#1\unskip\ petronella}%
}
\newcommand*{\longpetronella}{%
  \moveindex{Petronella}%
  \@ifstar\@longpetronellaStar\@longpetronellaNoStar%
}
\newcommand*{\@longpetronellaNoStar}[1][\unskip]{%
  \move[8]{Petronella \ignorespaces#1\unskip}%
}
\newcommand*{\@longpetronellaStar}[1][%
  \expandafter\expandafter\expandafter\MakeUppercase\@gobbletwo]{%
  \move[8]{\ignorespaces#1\unskip\ petronella}%
}
\newcommand*{\promenade}{%
  \moveindex{Promenade}
  \@ifstar\@promenadeStar\@promenadeNoStar%
}
\newcommand*{\@promenadeNoStar}[2][\unskip]{%
  \move[#2]{Promenade \ignorespaces#1\unskip}%
}
\newcommand*{\@promenadeStar}[2][%
  \expandafter\expandafter\expandafter\MakeUppercase\@gobbletwo]{%
  \move[#2]{\ignorespaces#1\unskip\ promenade}%
}
\newcommand*{\halfpromenade}{%
  \moveindex{Promenade}%
  \moveindex{Half Promenade}%
  \@ifstar\@halfpromenadeStar\@halfpromenadeNoStar%
}
\newcommand*{\@halfpromenadeNoStar}[1][\unskip]{%
  \move[8]{Half promenade \ignorespaces#1\unskip}%
}
\newcommand*{\@halfpromenadeStar}[1][%
  \expandafter\expandafter\expandafter\MakeUppercase\@gobbletwo]{%
  \move[8]{\ignorespaces#1\unskip\ half promenade}%
}
\newcommand*{\rightandleftthrough}{%
  \moveindex{Right and left through}%
  \moveindex{Rights and lefts|seealso{Right and left through}}%
  \@ifstar\@rlStar\@rlNoStar%
}
\newcommand*{\rightsandlefts}{%
  \moveindex{Right and left through}%
  \moveindex{Rights and lefts|seealso{Right and left through}}%
  \@ifstar\@rlStar\@rlNoStar%
}
\newcommand*{\@rlNoStar}[1][\unskip]{%
  \move[8]{Right and left through \ignorespaces#1\unskip}%
}
\newcommand*{\@rlStar}[1][%
  \expandafter\expandafter\expandafter\MakeUppercase\@gobbletwo]{%
  \move[8]{\ignorespaces#1\unskip\ right and left through}%
}
\newcommand*{\rollaway}{%
  \moveindex{Roll away}%
  \@ifstar\@rollawayStar\@rollawayNoStar%
}
\newcommand*{\rawhs}{\rollawayhalfsashay}
\newcommand*{\rollawayhalfsashay}{%
  \moveindex{Roll Away}%
  \moveindex{Roll Away with a Half Sashay}%
  \moveindex{Half Sashay}%
  \@ifstar\@rawhsStar\@rawhsNoStar%
}
\newcommand*{\@rollawayNoStar}[1][\unskip]{%
  \move[4]{Roll away \ignorespaces#1\unskip}%
}
\newcommand*{\@rollawayStar}[1][%
  \expandafter\expandafter\expandafter\MakeUppercase\@gobbletwo]{%
  \move[4]{\ignorespaces#1\unskip\ roll away}%
}
\newcommand*{\@rawhsNoStar}[1][\unskip]{%
  \move[4]{Roll \ignorespaces#1\unskip\ away with a half sashay}%
}
\newcommand*{\@rawhsStar}[2][\unskip]{%
  \move[4]{\ignorespaces#2\unskip\ roll \ignorespaces#1\unskip\ away with a half sashay}%
}
\newcommand*{\starleft}{%
  \moveindex{Star}%
  \moveindex{Left hand star}%
  \def\cc@dir{Left}%
  \@ifstar\@starStar\@starNoStar%
}
\newcommand*{\starright}{%
  \moveindex{Star}%
  \moveindex{Right hand star}%
  \def\cc@dir{right}%
  \@ifstar\@starStar\@starNoStar%
}
\newcommand*{\@starNoStar}[1]{%
  \move[#1]{\cc@dir\ hand star}%
}
\newcommand*{\@starStar}[1]{%
  \move[#1]{Star \cc@dir}%
}
\newcommand*{\sashay}{%
  \moveindex{Sashay}%
  \@ifstar\@sashayStar\@sashayNoStar%
}
\newcommand*{\@sashayNoStar}[2][\unskip]{%
  \move[#2]{Sashay \ignorespaces#1\unskip}%
}
\newcommand*{\@sashayStar}[3][\unskip]{%
  \move[#2]{\ignorespaces#3\unskip\ sashay \ignorespaces#1\unskip}%
}
\newcommand*{\swing}{%
  \moveindex{Swing}%
  \@ifstar\@swingStar\@swingNoStar%
}
\newcommand*{\@swingNoStar}[2][\unskip]{%
  \move[#2]{Swing \ignorespaces#1\unskip}%
}
\newcommand*{\@swingStar}[2][%
  \expandafter\expandafter\expandafter\MakeUppercase\@gobbletwo]{%
  \move[#2]{\ignorespaces#1\unskip\ swing}%
}
\newcommand*{\turnalone}{%
  \moveindex{Turn Alone}%
  \def\cc@who{alone}%
  \@ifstar\@turnStar\@turnNoStar%
}
\newcommand*{\turncouple}{%
  \moveindex{Turn as a Couple}%
  \moveindex{Turn Together|see{Turn as a Couple}}%
  \def\cc@who{as a couple}%
  \@ifstar\@turnStar\@turnNoStar%
}
\newcommand*{\turntogether}{%
  \moveindex{Turn as a Couple}%
  \moveindex{Turn Together|see{Turn as a Couple}}%
  \def\cc@who{together}%
  \@ifstar\@turnStar\@turnNoStar%
}
\newcommand*{\@turnNoStar}[1][\unskip]{%
  \cc@checkphrasestart%
  \move*[0]{Turn \cc@who\ \ignorespaces#1\unskip\ \ \ignorespaces}%
}
\newcommand*{\@turnStar}[2][\unskip]{%
  \move[#2]{Turn \cc@who\ \ignorespaces#1\unskip}%
}
\newcommand*{\twirltoswap}{%
  \moveindex{Twirl to Swap}%
  \move[4]{Twirl to swap}%
}
\newcommand*{\californiatwirl}{%
  \moveindex{California Twirl}%
  \move[4]{California twirl}%
}
\newcommand*{\starthrough}{%
  \moveindex{Star Through}%
  \move[4]{Star through}%
}
\newcommand*{\starthru}{%
  \moveindex{Star Thru|see{Star Through}}%
  \moveindex{Star Through}%
  \move[4]{Star thru}%
}
\newcommand*{\boxthegnat}{%
  \moveindex{Box the Gnat}%
  \move[4]{Box the gnat}%
}
\newcommand*{\swattheflea}{%
  \moveindex{Swat the Flea}%
  \move[4]{Swat the flea}%
}
\newcommand*{\jerseytwirl}{%
  \moveindex{Jersey Twirl}%
  \move[4]{Jersey twirl}%
}
\newcommand*{\arizonatwirl}{%
  \moveindex{Arizona Twirl}%
  \move[4]{Arizona twirl}%
}
\newcommand*{\downthehall}{%
  \moveindex{Down the Hall}%
  \def\cc@dir{down}%
  \@ifstar\@walkthehallStar\@walkthehallNoStar%
}
\newcommand*{\upthehall}{%
  \moveindex{Up the Hall}%
  \def\cc@dir{up}%
  \@ifstar\@walkthehallStar\@walkthehallNoStar%
}
\newcommand*{\@walkthehallNoStar}[2][\unskip]{%
  \move[#2]{\expandafter\MakeUppercase\cc@dir\ the hall\ \ignorespaces#1\unskip}%
}
\newcommand*{\@walkthehallStar}[2][%
  \expandafter\expandafter\expandafter\MakeUppercase\@gobbletwo]{%
  \move[#2]{\ignorespaces#1\unskip\ \cc@dir\ the hall}%
}
\newcommand*{\dancetitle}{}
\newcommand*{\danceauthor}{}
\newcommand*{\danceform}{}
\newlistof{dance}{lod}{\cfttoctitlefont\lodtitle}
\newcommand*{\listofdances}{\listofdance}
\newcommand*{\lodtitle}{List of Dances}
\newcommand*{\enableidx}{%
  \PassOptionsToPackage{splitindex}{imakeidx}
  \RequirePackage{imakeidx}
  \cc@createindices
}%
\newcommand*{\cc@createindices}{%
  \makeindex[name=\cc@dbt,title=\dbtname]
  \makeindex[name=\cc@dba,title=\dbaname]
  \makeindex[name=\cc@mvp,title=\mvpname]
  \makeindex[name=\cc@mvd,title=\mvdname]
}%
\newcommand*{\pauseindexing}{\def\cc@indexingpaused{}}
\newcommand*{\resumeindexing}{\let\cc@indexingpaused\undefined}
\newcommand*{\cc@dbt}{dbt}
\newcommand*{\cc@dba}{dba}
\newcommand*{\cc@mvp}{mvp}
\newcommand*{\cc@mvd}{mvd}
\newcommand*{\dbtname}{Dances by Type}
\newcommand*{\dbaname}{Dances by Author}
\newcommand*{\mvpname}{Moves by Page}
\newcommand*{\mvdname}{Moves by Dance}
\newcommand*{\moveindex}{\@ifstar\moveindexStar\moveindexNoStar}
\newcommand*{\moveindexStar}[1]{%
  #1%
  \ifthenelse{\isundefined{\cc@indexingpaused}}{%
    \ifthenelse{\isundefined{\imki@wrindexentry}}{%
      \index{#1}%
    }{%
      \index[mvp]{#1}%
      \imki@wrindexentry{mvd}{#1}{\arabic{dance}}%
    }%
  }{}%
}
\newcommand*{\moveindexNoStar}[1]{%
  \ifthenelse{\isundefined{\cc@indexingpaused}}{%
    \ifthenelse{\isundefined{\imki@wrindexentry}}{%
      \index{#1}%
    }{%
      \index[mvp]{#1}%
      \imki@wrindexentry{mvd}{#1}{\arabic{dance}}%
    }%
  }{}%
}

\newcommand*{\timesaround}[2]{%
  \newcounter{timesaround}%
  \setcounter{timesaround}{\intcalcDiv{\intcalcNum{#2}}{\intcalcNum{#1}}}%
  \newcounter{quartertimesaround}%
  \setcounter{quartertimesaround}{%
    \intcalcMod{\intcalcNum{#2}}{\intcalcNum{#1}}%
  }%
  \ifthenelse{\value{timesaround}>0}{\arabic{timesaround}}{}%
  \ifthenelse{\value{quartertimesaround}=1}{\textonequarter}{%
    \ifthenelse{\value{quartertimesaround}=2}{\textonehalf}{%
      \ifthenelse{\value{quartertimesaround}=3}{\textthreequarters}{}%
    }%
  }%
  \ifthenelse{%
    \value{timesaround}>1\OR%
    \(\value{timesaround}=1\AND\NOT\value{quartertimesaround}=0\)%
  }{\ times}{%
    \ifthenelse{\value{timesaround}=1}{\ time}{}%
  }%
}%
\newcommand*{\notes}[2][\cc@defaultnotesenv]{%
  \par\nopagebreak\vspace*{\prenotevspace}
  \begin{\cc@defaultnotesenv}
    \setlength{\baselineskip}{1.1em plus 0.1em minus 0.2em}
    \def\cc@notestitle{\textbf{\ignorespaces Notes\unskip}}%
    \setlength{\parindent}{0pt}%
    \setlength{\cc@partsepwidth}{\widthof{\footnotesize \cc@notestitle~}}%
    \setlength{\hangindent}{\cc@partsepwidth}%
    {\footnotesize \cc@notestitle~\ignorespaces#2\unskip}%
  \end{\cc@defaultnotesenv}
}
\def\spelldosido{do-si-do}
\def\spellDosido{Do-si-do}
\newcommand*{\setdosidospelling}[1]{%
  \protected@edef\spelldosido{\expandafter\MakeLowercase#1}
  \protected@edef\spellDosido{\expandafter\MakeUppercase#1}
}
\newcommand*{\cc@checkphrasestart}{%
  \ifthenelse{\value{phrasecount}=\value{dancephraselength}}{%
    \newdancephrase%
  }{%
    \ifthenelse{\(\value{partcount}=\value{dancepartlength}\)}{%
     \newdancepart%
    }{}%
  }%
}
\ProcessOptions\relax
%% 
%%   ___________
%%   This work has the LPPL maintenance status `maintained'.
%% 
%%   Author:     Sam Whited
%%   Maintainer: Sam Whited
%%   Website:    https://samwhited.com
%%   Contact:    sam@samwhited.com
%%   Public key: 0xEC2C9934
%% 
%%   This work consists of this file contracard.dtx
%%             and the derived files contracard.sty
%%                               and contracard.cls
%%                               and contracard.pdf
%%                               and README.md
%%                               and README
%% 
%%
%% End of file `contracard.sty'.
