RawTeX('
\newif\ifexnotes\exnotesfalse
\newif\ifhints\hintsfalse
\newif\ifsolutions\solutionsfalse
\newif\ifpts\ptsfalse
\newif\ifmin\minfalse
\newif\ifboxed\boxedfalse
\newif\ifextract\extractfalse
');
# -*- CPERL -*-
package LaTeXML::Package::Pool;
use strict;
use LaTeXML::Package;
RequirePackage('sref');
RegisterNamespace('prob'=>"http://omdoc.org/ontology/problems#");
RegisterDocumentNamespace('prob'=>"http://omdoc.org/ontology/problems#");
DefCMPEnvironment('{problem} OptionalKeyVals:problem',
""
. "?&KeyVal(#1,'title')(&KeyVal(#1,'title'))()"
. "?&KeyVal(#1,'min')(&KeyVal(#1,'min'))()"
. "?&KeyVal(#1,'pts')(&KeyVal(#1,'pts'))()"
. "#body"
."\n");
DefKeyVal('soln','id','Semiverbatim');
DefKeyVal('soln','height','Semiverbatim');
DefKeyVal('soln','for','Semiverbatim');
DefCMPEnvironment('{solution} OptionalKeyVals:soln',
""
. "#body"
. "");
DefCMPEnvironment('{exnote}',
""
. ""
. "#body"
."");
DefCMPEnvironment('{hint}',
""
. ""
. "#body"
."");
DefConstructor('\pts{}',"");
DefConstructor('\min{}',"");
DefKeyVal('prob','pts','Semiverbatim');
DefKeyVal('prob','min','Semiverbatim');
DefKeyVal('prob','title','Semiverbatim');
DefConstructor('\includeproblem OptionalKeyVals:prob Semiverbatim',
""
. "?&KeyVal(#1,'title')(&KeyVal(#1,'title'))()"
. "?&KeyVal(#1,'min')(&KeyVal(#1,'min'))()"
. "?&KeyVal(#1,'pts')(&KeyVal(#1,'pts'))()"
."");
Tag('omdoc:exercise',afterOpen=>\&numberIt);
Tag('omdoc:solution',afterOpen=>\&numberIt);
Tag('omdoc:hint',afterOpen=>\&numberIt);
1;