# -*- CPERL -*-
package LaTeXML::Package::Pool;
use strict;
use LaTeXML::Package;
use LaTeXML::Document;
RequirePackage('LaTeX');
sub remove_tokens_from_list {
  my ($list, $pattern, $math) = @_;
  if (ref $list) {
    my @toks = $list->unlist;
    @toks = grep($_->toString !~ /$pattern/, @toks);
    ($math ? (LaTeXML::MathList->new(@toks)) : (LaTeXML::List)->new(@toks)); }
  else { undef; } }

sub remove_math_commas {
  my ($whatsit, $argno) = @_;
  my @args = $whatsit ? $whatsit->getArgs() : undef;
  $argno--;
  if ($args[$argno]) {
    $args[$argno] = remove_tokens_from_list($args[$argno], ',', 1);
    $whatsit->setArgs(@args);
  }
  return;
}
DefConstructor('\Capply [] {} {}',
               "<ltx:XMApp ?#1(definitionURL='#1')()>#2 #3</ltx:XMApp>");
DefConstructor('\Ccn [] {}',"#2");
DefConstructor('\Cci [] {}',"#2");
DefConstructor('\Ccsymbol [] {}',
               "<ltx:XMTok role='CSYMBOL' meaning='#2' ?#1(definitionURL='#1')()/>");
DefConstructor('\Cccinterval [] {}{}',
               "<ltx:XMApp>"
             . "<ltx:XMTok role='CONSTRUCTOR' meaning='ccinterval' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "<ltx:XMArg>#3</ltx:XMArg></ltx:XMApp>");
DefConstructor('\Ccointerval [] {}{}',
               "<ltx:XMApp>"
             . "<ltx:XMTok role='CONSTRUCTOR' meaning='cointerval' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "<ltx:XMArg>#3</ltx:XMArg></ltx:XMApp>");
DefConstructor('\Cocinterval [] {}{}',
               "<ltx:XMApp>"
             . "<ltx:XMTok role='CONSTRUCTOR' meaning='ocinterval' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "<ltx:XMArg>#3</ltx:XMArg></ltx:XMApp>");
DefConstructor('\Coointerval [] {}{}',
               "<ltx:XMApp>"
             . "<ltx:XMTok role='CONSTRUCTOR' meaning='oointerval' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "<ltx:XMArg>#3</ltx:XMArg></ltx:XMApp>");
DefConstructor('\Cinverse [] {}',
               "<ltx:XMApp>"
             . "<ltx:XMTok meaning='inverse' role='OPFUNCTION' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\Clambda [] {}{}',
               "<ltx:XMApp>"
             . "<ltx:XMTok role='BINDER' meaning='lambda' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\ClambdaDA [] {}{}',
               "<ltx:XMApp>"
             . "<ltx:XMTok role='BINDER' meaning='lambda' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "<ltx:XMArg>#3</ltx:XMArg>"
             . "<ltx:XMArg>#4</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\Crestrict [] {}{}',
               "<ltx:XMApp>"
             . "<ltx:XMTok role='OPFUNCTION' meaning='restrict' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "<ltx:XMArg>#3</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\CcomposeOp []',
               "<ltx:XMTok meaning='compose' role='ID' ?#1(definitionURL='#1')()/>");
DefConstructor('\Ccompose [] {}',
               "<ltx:XMApp>"
             . "<ltx:XMTok role='MULOP' meaning='compose' ?#1(definitionURL='#1')()/>"
             . "#2"
             . "</ltx:XMApp>",
       afterDigest=>sub { remove_math_commas($_[1], 2); });
DefConstructor('\Cident []',
               "<ltx:XMTok meaning='ident' role='ID' ?#1(definitionURL='#1')()/>");
DefConstructor('\Cdomain [] {}',
               "<ltx:XMApp>"
             . "<ltx:XMTok role='OPFUNCTION' meaning='domain' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\Ccodomain [] {}',
               "<ltx:XMApp>"
             . "<ltx:XMTok role='OPFUNCTION' meaning='codomain' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\Cimage [] {}',
               "<ltx:XMApp>"
             . "<ltx:XMTok role='OPFUNCTION' meaning='image' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\Cpiecewise [] {}',
               "<ltx:XMApp>"
             . "<ltx:XMTok role='OPFUNCTION' meaning='piecewise' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\Cpiece [] {}{}',
               "<ltx:XMApp>"
             . "<ltx:XMTok role='OPFUNCTION' meaning='piece' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "<ltx:XMArg>#3</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\Cotherwise [] {}',
               "<ltx:XMApp>"
             . "<ltx:XMTok role='OPFUNCTION' meaning='otherwise' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\Cquotient [] {}{}',
               "<ltx:XMApp>"
             . "<ltx:XMTok role='OPFUNCTION' meaning='quotient' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "<ltx:XMArg>#3</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\CfactorialOp []',
               "<ltx:XMTok meaning='factorial' role='ID' ?#1(definitionURL='#1')()/>");
DefConstructor('\Cfactorial [] {}',
               "<ltx:XMApp>"
             . "<ltx:XMTok role='OPFUNCTION' meaning='factorial' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\CdivideOp []',
               "<ltx:XMTok meaning='divide' role='ID' ?#1(definitionURL='#1')()/>");
DefConstructor('\Cdivide [] {}{}',
               "<ltx:XMApp>"
             . "<ltx:XMTok role='OPFUNCTION' meaning='divide' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "<ltx:XMArg>#3</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\CmaxOp []',
               "<ltx:XMTok meaning='max' role='ID' ?#1(definitionURL='#1')()/>");
DefConstructor('\Cmax [] {}',
               "<ltx:XMApp>"
             . "<ltx:XMTok role='OPFUNCTION' meaning='max' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\CminOp []',
               "<ltx:XMTok meaning='min' role='ID' ?#1(definitionURL='#1')()/>");
DefConstructor('\Cmin [] {}',
               "<ltx:XMApp>"
             . "<ltx:XMTok role='OPFUNCTION' meaning='min' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\CminusOp []',
               "<ltx:XMTok meaning='minus' role='ID' ?#1(definitionURL='#1')()/>");
DefConstructor('\Cminus [] {}{}',
               "<ltx:XMApp>"
             . "<ltx:XMTok role='ADDOP' meaning='minus' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "<ltx:XMArg>#3</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\Cuminus [] {}',
               "<ltx:XMApp>"
             . "<ltx:XMTok role='OPFUNCTION' meaning='uminus' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\CplusOp []',
               "<ltx:XMTok meaning='plus' role='ID' ?#1(definitionURL='#1')()/>");
DefConstructor('\Cplus [] {}',
               "<ltx:XMApp>"
             . "<ltx:XMTok role='ADDOP' meaning='plus' ?#1(definitionURL='#1')()/>"
             . "#2"
             . "</ltx:XMApp>",
       afterDigest=>sub { remove_math_commas($_[1], 2); });
DefConstructor('\Cpower [] {} {}',
               "<ltx:XMApp>"
             . "<ltx:XMTok role='OPFUNCTION' meaning='power' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "<ltx:XMArg>#3</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\CremOp []',
               "<ltx:XMTok meaning='rem' role='ID' ?#1(definitionURL='#1')()/>");
DefConstructor('\Crem [] {}{}',
               "<ltx:XMApp>"
             . "<ltx:XMTok role='OPFUNCTION' meaning='rem' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "<ltx:XMArg>#3</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\CtimesOp []',
               "<ltx:XMTok meaning='times' role='ID' ?#1(definitionURL='#1')()/>");
DefConstructor('\Ctimes [] {}',
               "<ltx:XMApp>"
             . "<ltx:XMTok role='MULOP' meaning='times' ?#1(definitionURL='#1')()/>"
             . "#2"
             . "</ltx:XMApp>",
       afterDigest=>sub { remove_math_commas($_[1], 2); });
DefConstructor('\CrootOp []',
               "<ltx:XMTok meaning='root' role='ID' ?#1(definitionURL='#1')()/>");
DefConstructor('\Croot [] {}{}',
               "<ltx:XMApp>"
             . "<ltx:XMTok role='OPFUNCTION' meaning='root' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "<ltx:XMArg>#3</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\Cgcd [] {}',
               "<ltx:XMApp>"
             . "<ltx:XMTok role='OPFUNCTION' meaning='gcd' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\CandOp []',
               "<ltx:XMTok meaning='and' role='ID' ?#1(definitionURL='#1')()/>");
DefConstructor('\Cand [] {}',
               "<ltx:XMApp>"
             . "<ltx:XMTok role='CONNECTIVE' meaning='and' ?#1(definitionURL='#1')()/>"
             . "#2"
             . "</ltx:XMApp>",
       afterDigest=>sub { remove_math_commas($_[1], 2); });
DefConstructor('\CorOp []',
               "<ltx:XMTok meaning='or' role='ID' ?#1(definitionURL='#1')()/>");
DefConstructor('\Cor [] {}',
               "<ltx:XMApp>"
             . "<ltx:XMTok role='CONNECTIVE' meaning='or' ?#1(definitionURL='#1')()/>"
             . "#2"
             . "</ltx:XMApp>",
       afterDigest=>sub { remove_math_commas($_[1], 2); });
DefConstructor('\CxorOp []',
               "<ltx:XMTok meaning='xor' role='ID' ?#1(definitionURL='#1')()/>");
DefConstructor('\Cxor [] {}',
               "<ltx:XMApp>"
             . "<ltx:XMTok role='CONNECTIVE' meaning='xor' ?#1(definitionURL='#1')()/>"
             . "#2"
             . "</ltx:XMApp>",
       afterDigest=>sub { remove_math_commas($_[1], 2); });
DefConstructor('\CnotOp []',
               "<ltx:XMTok meaning='not' role='ID' ?#1(definitionURL='#1')()/>");
DefConstructor('\Cnot [] {}',
               "<ltx:XMApp>"
             . "<ltx:XMTok role='CONNECTIVE' meaning='not' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\CimpliesOp []',
               "<ltx:XMTok meaning='implies' role='ID' ?#1(definitionURL='#1')()/>");
DefConstructor('\Cimplies [] {}{}',
               "<ltx:XMApp>"
             . "<ltx:XMTok role='CONNECTIVE' meaning='implies' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "<ltx:XMArg>#3</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\CAndDa [] {}{}',
               "<ltx:XMApp>"
             . "<ltx:XMTok role='BIGOP' meaning='and' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "<ltx:XMArg>#3</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\CAndCond [] {}{}{}',
               "<ltx:XMApp>"
             . "<ltx:XMTok role='BIGOP' meaning='and' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "<ltx:XMArg>#3</ltx:XMArg>"
             . "<ltx:XMArg>#4</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\COrDa [] {}{}',
               "<ltx:XMApp>"
             . "<ltx:XMTok role='BIGOP' meaning='or' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "<ltx:XMArg>#3</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\COrCond [] {}{}{}',
               "<ltx:XMApp>"
             . "<ltx:XMTok role='BIGOP' meaning='or' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "<ltx:XMArg>#3</ltx:XMArg>"
             . "<ltx:XMArg>#4</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\CXorDa [] {}{}',
               "<ltx:XMApp>"
             . "<ltx:XMTok role='BIGOP' meaning='xor' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "<ltx:XMArg>#3</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\CXorCond [] {}{}{}',
               "<ltx:XMApp>"
             . "<ltx:XMTok role='BIGOP' meaning='xor' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "<ltx:XMArg>#3</ltx:XMArg>"
             . "<ltx:XMArg>#4</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\Cforall [] {}{}',
               "<ltx:XMApp>"
             . "<ltx:XMTok role='BINDER' meaning='forall' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "<ltx:XMArg>#3</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\CforallCond [] {}{}{}',
               "<ltx:XMApp>"
             . "<ltx:XMTok role='BINDER' meaning='forall' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "<ltx:XMArg>#3</ltx:XMArg>"
             . "<ltx:XMArg>#4</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\Cexists [] {}{}',
               "<ltx:XMApp>"
             . "<ltx:XMTok role='BINDER' meaning='exists' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "<ltx:XMArg>#3</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\CexistsCond [] {}{}{}',
               "<ltx:XMApp>"
             . "<ltx:XMTok role='BINDER' meaning='exists' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "<ltx:XMArg>#3</ltx:XMArg>"
             . "<ltx:XMArg>#4</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\Cabs [] {}',
               "<ltx:XMApp>"
             . "<ltx:XMTok role='OPFUNCTION' meaning='abs' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\Cconjugate [] {}',
               "<ltx:XMApp>"
             . "<ltx:XMTok role='OPFUNCTION' meaning='conjugate' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\Carg [] {}',
               "<ltx:XMApp>"
             . "<ltx:XMTok role='OPFUNCTION' meaning='arg' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\Creal [] {}',
               "<ltx:XMApp>"
             . "<ltx:XMTok role='OPFUNCTION' meaning='real' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\Cimaginary [] {}',
               "<ltx:XMApp>"
             . "<ltx:XMTok role='OPFUNCTION' meaning='imaginary' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\Clcm [] {}',
               "<ltx:XMApp>"
             . "<ltx:XMTok role='OPFUNCTION' meaning='lcm' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\Cfloor [] {}',
               "<ltx:XMApp>"
             . "<ltx:XMTok role='OPFUNCTION' meaning='floor' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\Cceiling [] {}',
               "<ltx:XMApp>"
             . "<ltx:XMTok role='OPFUNCTION' meaning='ceiling' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\CeqOp []',
               "<ltx:XMTok meaning='eq' role='ID' ?#1(definitionURL='#1')()/>");
DefConstructor('\Ceq [] {}',
               "<ltx:XMApp>"
             . "<ltx:XMTok meaning='eq' role='RELOP' ?#1(definitionURL='#1')()/>"
             . "#2"
             . "</ltx:XMApp>",
       afterDigest=>sub { remove_math_commas($_[1], 2); });
DefConstructor('\CneqOp []',
               "<ltx:XMTok meaning='neq' role='ID' ?#1(definitionURL='#1')()/>");
DefConstructor('\Cneq [] {}{}',
               "<ltx:XMApp>"
             . "<ltx:XMTok meaning='neq' role='RELOP' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "<ltx:XMArg>#3</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\CgtOp []',
               "<ltx:XMTok meaning='gt' role='ID' ?#1(definitionURL='#1')()/>");
DefConstructor('\Cgt [] {}',
               "<ltx:XMApp>"
             . "<ltx:XMTok meaning='gt' role='RELOP' ?#1(definitionURL='#1')()/>"
             . "#2"
             . "</ltx:XMApp>",
       afterDigest=>sub { remove_math_commas($_[1], 2); });
DefConstructor('\CltOp []',
               "<ltx:XMTok meaning='lt' role='ID' ?#1(definitionURL='#1')()/>");
DefConstructor('\Clt [] {}',
               "<ltx:XMApp>"
             . "<ltx:XMTok meaning='lt' role='RELOP' ?#1(definitionURL='#1')()/>"
             . "#2"
             . "</ltx:XMApp>",
       afterDigest=>sub { remove_math_commas($_[1], 2); });
DefConstructor('\CgeqOp []',
               "<ltx:XMTok meaning='geq' role='ID' ?#1(definitionURL='#1')()/>");
DefConstructor('\Cgeq [] {}',
               "<ltx:XMApp>"
             . "<ltx:XMTok meaning='geq' role='RELOP' ?#1(definitionURL='#1')()/>"
             . "#2"
             . "</ltx:XMApp>",
       afterDigest=>sub { remove_math_commas($_[1], 2); });
DefConstructor('\CleqOp []',
               "<ltx:XMTok meaning='leq' role='ID' ?#1(definitionURL='#1')()/>");
DefConstructor('\Cleq [] {}',
               "<ltx:XMApp>"
             . "<ltx:XMTok meaning='leq' role='RELOP' ?#1(definitionURL='#1')()/>"
             . "#2"
             . "</ltx:XMApp>",
       afterDigest=>sub { remove_math_commas($_[1], 2); });
DefConstructor('\CequivalentOp []',
               "<ltx:XMTok meaning='equivalent' role='ID' ?#1(definitionURL='#1')()/>");
DefConstructor('\Cequivalent [] {}',
               "<ltx:XMApp>"
             . "<ltx:XMTok meaning='equivalent' role='RELOP' ?#1(definitionURL='#1')()/>"
             . "#2"
             . "</ltx:XMApp>");
DefConstructor('\CapproxOp []',
               "<ltx:XMTok meaning='approx' role='ID' ?#1(definitionURL='#1')()/>");
DefConstructor('\Capprox [] {}{}',
               "<ltx:XMApp>"
             . "<ltx:XMTok meaning='approx' role='RELOP' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "<ltx:XMArg>#3</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\CfactorofOp []',
               "<ltx:XMTok meaning='factorof' role='ID' ?#1(definitionURL='#1')()/>");
DefConstructor('\Cfactorof [] {}{}',
               "<ltx:XMApp>"
             . "<ltx:XMTok meaning='factorof' role='RELOP' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "<ltx:XMArg>#3</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\CintOp []',
               "<ltx:XMTok meaning='int' role='ID' ?#1(definitionURL='#1')()/>");
DefConstructor('\Cint [] {}',
               "<ltx:XMApp>"
             . "<ltx:XMTok meaning='int' role='INTOP' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\CintLimits [] {}{}{}{}',
               "<ltx:XMApp>"
             . "<ltx:XMTok meaning='int' role='INTOP' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "<ltx:XMArg>#3</ltx:XMArg>"
             . "<ltx:XMArg>#4</ltx:XMArg>"
             . "<ltx:XMArg>#5</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\CintDA [] {}{}',
               "<ltx:XMApp>"
             . "<ltx:XMTok meaning='int' role='INTOP' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "<ltx:XMArg>#3</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\CintCond [] {}{}{}',
               "<ltx:XMApp>"
             . "<ltx:XMTok meaning='int' role='INTOP' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "<ltx:XMArg>#3</ltx:XMArg>"
             . "<ltx:XMArg>#4</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\Cdiff [] {}',
               "<ltx:XMApp>"
             . "<ltx:XMTok role='OPFUNCTION' meaning='diff' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\Cddiff [] {}{}',
               "<ltx:XMApp>"
             . "<ltx:XMTok role='OPFUNCTION' meaning='diff' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "<ltx:XMArg>#3</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\Cpartialdiff [] {}{}{}',
               "<ltx:XMApp>"
             . "<ltx:XMTok role='OPFUNCTION' meaning='diff' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#3</ltx:XMArg>"
             . "?#2(<ltx:XMArg>#2</ltx:XMArg>)()"
             . "<ltx:XMArg>#4</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\Cdegree {}{}',
               "<ltx:XMApp>"
             . "<ltx:XMTok role='OPFUNCTION' meaning='degree'/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "<ltx:XMArg>#1</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\Climit [] {}{}{}',
               "<ltx:XMApp>"
             . "<ltx:XMTok role='OPFUNCTION' meaning='limit' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "<ltx:XMArg>#3</ltx:XMArg>"
             . "<ltx:XMArg>#4</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\ClimitCond [] {}{}{}',
               "<ltx:XMApp>"
             . "<ltx:XMTok role='OPFUNCTION' meaning='limit' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "<ltx:XMArg>#3</ltx:XMArg>"
             . "<ltx:XMArg>#4</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\CtendstoOp []',
               "<ltx:XMTok meaning='tendsto' role='ID' ?#1(definitionURL='#1')()/>");
DefConstructor('\Ctendsto [] {}{}',
               "<ltx:XMApp>"
             . "<ltx:XMTok role='RELOP' meaning='tendsto' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "<ltx:XMArg>#3</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\CtendstoAboveOp []',
               "<ltx:XMTok meaning='tendsto' role='ID' ?#1(definitionURL='#1')()/>");
DefConstructor('\CtendstoAbove [] {}{}',
               "<ltx:XMApp>"
             . "<ltx:XMTok role='RELOP'meaning='tendsto' type='above' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "<ltx:XMArg>#3</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\CtendstoBelowOp []',
               "<ltx:XMTok meaning='tendsto' role='ID' ?#1(definitionURL='#1')()/>");
DefConstructor('\CtendstoBelow [] {}{}',
               "<ltx:XMApp>"
             . "<ltx:XMTok role='RELOP' meaning='tendsto' type='below' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "<ltx:XMArg>#3</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\Cdivergence [] {}',
               "<ltx:XMApp>"
             . "<ltx:XMTok role='OPFUNCTION' meaning='divergence' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\Cgrad [] {}',
               "<ltx:XMApp>"
             . "<ltx:XMTok role='OPFUNCTION' meaning='grad' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\Curl [] {}',
               "<ltx:XMApp>"
             . "<ltx:XMTok role='OPFUNCTION' meaning='url' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\Claplacian [] {}',
               "<ltx:XMApp>"
             . "<ltx:XMTok role='OPFUNCTION' meaning='laplacian' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\Cset [] {}',
               "<ltx:XMApp>"
             . "<ltx:XMTok meaning='set' role='CONSTRUCTOR' ?#1(definitionURL='#1')()/>"
             . "#2"
             . "</ltx:XMApp>",
       afterDigest=>sub { remove_math_commas($_[1], 2); });
DefConstructor('\CsetRes [] {}{}',
               "<ltx:XMApp role='BIGOP'>"
               . "<ltx:XMTok role='BIGOP' meaning='set' ?#1(definitionURL='#1')()/>"
               . "<ltx:XMArg role='BVAR'>#2</ltx:XMArg>"
               . "<ltx:XMArg role='CONDITION'>#3</ltx:XMArg>"
               . "<ltx:XMArg role='SCOPE'>#2</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\CsetCond [] {}{}{}',
               "<ltx:XMApp role='BIGOP'>"
               . "<ltx:XMTok role='BIGOP' meaning='set' ?#1(definitionURL='#1')()/>"
               . "<ltx:XMArg role='BVAR'>#2</ltx:XMArg>"
               . "<ltx:XMArg role='CONDITION'>#3</ltx:XMArg>"
               . "<ltx:XMArg role='SCOPE'>#4</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\CsetDA [] {}{}{}',
               "<ltx:XMApp>"
               . "<ltx:XMTok role='BIGOP' meaning='set' ?#1(definitionURL='#1')()/>"
               . "<ltx:XMArg role='BVAR'>#2</ltx:XMArg>"
               . "<ltx:XMArg role='DOMAINOFAPPLICATION'>#3</ltx:XMArg>"
               . "<ltx:XMArg role='SCOPE'>#4</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\ClistOp []',
               "<ltx:XMTok meaning='list' role='ID' ?#1(definitionURL='#1')()/>");
DefConstructor('\Clist [] {}',
               "<ltx:XMApp>"
             . "<ltx:XMTok meaning='list' role='CONSTRUCTOR' ?#1(definitionURL='#1')()/>"
             . "#2"
             . "</ltx:XMApp>",
       afterDigest=>sub { remove_math_commas($_[1], 2); });
DefConstructor('\CunionOp []',
               "<ltx:XMTok meaning='union' role='ID' ?#1(definitionURL='#1')()/>");
DefConstructor('\Cunion [] {}',
               "<ltx:XMApp>"
             . "<ltx:XMTok meaning='union' role='OPFUNCTION' ?#1(definitionURL='#1')()/>"
             . "#2"
             . "</ltx:XMApp>",
       afterDigest=>sub { remove_math_commas($_[1], 2); });
DefConstructor('\CintersectOp []',
               "<ltx:XMTok meaning='intersect' role='ID' ?#1(definitionURL='#1')()/>");
DefConstructor('\Cintersect [] {}',
               "<ltx:XMApp>"
             . "<ltx:XMTok meaning='intersect' role='OPFUNCTION' ?#1(definitionURL='#1')()/>"
             . "#2"
             . "</ltx:XMApp>",
       afterDigest=>sub { remove_math_commas($_[1], 2); });
DefConstructor('\CinOp []',
               "<ltx:XMTok meaning='in' role='ID' ?#1(definitionURL='#1')()/>");
DefConstructor('\Cin [] {}{}',
               "<ltx:XMApp>"
             . "<ltx:XMTok meaning='in' role='RELOP' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "<ltx:XMArg>#3</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\CnotinOp []',
               "<ltx:XMTok meaning='notin' role='ID' ?#1(definitionURL='#1')()/>");
DefConstructor('\Cnotin [] {}{}',
               "<ltx:XMApp>"
             . "<ltx:XMTok meaning='notin' role='RELOP' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\CsubsetOp []',
               "<ltx:XMTok meaning='subset' role='ID' ?#1(definitionURL='#1')()/>");
DefConstructor('\Csubset [] {}',
               "<ltx:XMApp>"
             . "<ltx:XMTok meaning='subset' role='RELOP' ?#1(definitionURL='#1')()/>"
             . "#2"
             . "</ltx:XMApp>",
       afterDigest=>sub { remove_math_commas($_[1], 2); });
DefConstructor('\CprsubsetOp []',
               "<ltx:XMTok meaning='prsubset' role='ID' ?#1(definitionURL='#1')()/>");
DefConstructor('\Cprsubset [] {}',
               "<ltx:XMApp>"
             . "<ltx:XMTok meaning='prsubset' role='RELOP' ?#1(definitionURL='#1')()/>"
             . "#2"
             . "</ltx:XMApp>",
       afterDigest=>sub { remove_math_commas($_[1], 2); });
DefConstructor('\CnotsubsetOp []',
               "<ltx:XMTok meaning='notsubset' role='ID' ?#1(definitionURL='#1')()/>");
DefConstructor('\Cnotsubset [] {}{}',
               "<ltx:XMApp>"
             . "<ltx:XMTok meaning='notsubset' role='RELOP' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "<ltx:XMArg>#3</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\CnotprsubsetOp []',
               "<ltx:XMTok meaning='notprsubset' role='ID' ?#1(definitionURL='#1')()/>");
DefConstructor('\Cnotprsubset [] {}{}',
               "<ltx:XMApp>"
             . "<ltx:XMTok meaning='notprsubset' role='RELOP' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "<ltx:XMArg>#3</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\CsetdiffOp []',
               "<ltx:XMTok meaning='setdiff' role='ID' ?#1(definitionURL='#1')()/>");
DefConstructor('\Csetdiff [] {}{}',
               "<ltx:XMApp>"
             . "<ltx:XMTok meaning='setdiff' role='OPFUNCTION' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "<ltx:XMArg>#3</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\CcardOp []',
               "<ltx:XMTok meaning='card' role='ID' ?#1(definitionURL='#1')()/>");
DefConstructor('\Ccard [] {}',
               "<ltx:XMApp>"
             . "<ltx:XMTok meaning='card' role='OPFUNCTION' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\CcartesianproductOp []',
               "<ltx:XMTok meaning='cartesianproduct' role='ID' ?#1(definitionURL='#1')()/>");
DefConstructor('\Ccartesianproduct [] {}',
               "<ltx:XMApp>"
             . "<ltx:XMTok meaning='cartesianproduct' role='OPFUNCTION' ?#1(definitionURL='#1')()/>"
             . "#2"
             . "</ltx:XMApp>",
       afterDigest=>sub { remove_math_commas($_[1], 2); });
DefConstructor('\CsupsetOp []',
               "<ltx:XMTok meaning='supset' role='ID' ?#1(definitionURL='#1')()/>");
DefConstructor('\CprsupsetOp []',
               "<ltx:XMTok meaning='prsupset' role='ID' ?#1(definitionURL='#1')()/>");
DefConstructor('\CnotsupsetOp []',
               "<ltx:XMTok meaning='notsupset' role='ID' ?#1(definitionURL='#1')()/>");
DefConstructor('\CnotprsupsetOp []',
               "<ltx:XMTok meaning='notprsupset' role='ID' ?#1(definitionURL='#1')()/>");
DefMacro('\Csupset[]{}','\Csubset[#1]{#2}');
DefMacro('\Cprsupset[]{}','\Cprsubset[#1]{#2}');
DefMacro('\Cnotsupset[]{}{}','\Cnotsubset[#1]{#3}{#2}');
DefMacro('\Cnotprsupset[]{}{}','\Cnotprsubset[#1]{#3}{#2}');
DefConstructor('\CUnionDAOp []',
               "<ltx:XMTok meaning='union' role='ID' ?#1(definitionURL='#1')()/>");
DefConstructor('\CUnionDA [] {}{}',
               "<ltx:XMApp>"
             . "<ltx:XMTok role='BIGOP' meaning='union' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "<ltx:XMArg>#3</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\CUnionCond [] {}{}{}',
               "<ltx:XMApp>"
             . "<ltx:XMTok role='BIGOP' meaning='union' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "<ltx:XMArg>#3</ltx:XMArg>"
             . "<ltx:XMArg>#4</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\CIntersectDaOp []',
               "<ltx:XMTok meaning='intersect' role='ID' ?#1(definitionURL='#1')()/>");
DefConstructor('\CIntersectDa [] {}{}',
               "<ltx:XMApp>"
             . "<ltx:XMTok role='BIGOP' meaning='intersect' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "<ltx:XMArg>#3</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\CIntersectCond [] {}{}{}',
               "<ltx:XMApp>"
             . "<ltx:XMTok role='BIGOP' meaning='intersect' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "<ltx:XMArg>#3</ltx:XMArg>"
             . "<ltx:XMArg>#4</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\CCartesianproductDaOp []',
               "<ltx:XMTok meaning='cartesianproduct' role='ID' ?#1(definitionURL='#1')()/>");
DefConstructor('\CCartesianproductDa [] {}{}',
               "<ltx:XMApp>"
             . "<ltx:XMTok role='BIGOP' meaning='cartesianproduct' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "<ltx:XMArg>#3</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\CCartesianproductCond [] {}{}{}',
               "<ltx:XMApp>"
             . "<ltx:XMTok role='BIGOP' meaning='cartesianproduct' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "<ltx:XMArg>#3</ltx:XMArg>"
             . "<ltx:XMArg>#4</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\CsumOp []',
               "<ltx:XMTok meaning='sum' role='ID' ?#1(definitionURL='#1')()/>");
DefConstructor('\CsumLimits [] {}{}{}{}',
                "<ltx:XMApp>"
             . "<ltx:XMTok meaning='sum' role='SUMOP' ?#1(definitionURL='#1')()/>"
              . "<ltx:XMArg>#2</ltx:XMArg>"
              . "<ltx:XMArg>#3</ltx:XMArg>"
              . "<ltx:XMArg>#4</ltx:XMArg>"
              . "#5</ltx:XMApp>");
DefConstructor('\CprodOp []',
               "<ltx:XMTok meaning='prod' role='ID' ?#1(definitionURL='#1')()/>");
DefConstructor('\CprodLimits [] {}{}{}{}',
                "<ltx:XMApp>"
             . "<ltx:XMTok meaning='prod' role='SUMOP' ?#1(definitionURL='#1')()/>"
              . "<ltx:XMArg><ci>#2</ci></ltx:XMArg>"
              . "<ltx:XMArg>#3</ltx:XMArg>"
              . "<ltx:XMArg>#4</ltx:XMArg>"
              . "#5</ltx:XMApp>");
DefConstructor('\Csin [] {}',
               "<ltx:XMApp>"
             . "<ltx:XMTok meaning='sin' role='TRIGFUNCTION' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\Ccos [] {}',
               "<ltx:XMApp>"
             . "<ltx:XMTok meaning='cos' role='TRIGFUNCTION' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\Ctan [] {}',
               "<ltx:XMApp>"
             . "<ltx:XMTok meaning='tan' role='TRIGFUNCTION' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\Csec [] {}',
               "<ltx:XMApp>"
             . "<ltx:XMTok meaning='sec' role='TRIGFUNCTION' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\Ccsc [] {}',
               "<ltx:XMApp>"
             . "<ltx:XMTok meaning='csc' role='TRIGFUNCTION' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\Ccot [] {}',
               "<ltx:XMApp>"
             . "<ltx:XMTok meaning='cot' role='TRIGFUNCTION' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\Csinh [] {}',
               "<ltx:XMApp>"
             . "<ltx:XMTok meaning='sinh' role='TRIGFUNCTION' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\Ccosh [] {}',
               "<ltx:XMApp>"
             . "<ltx:XMTok meaning='cosh' role='TRIGFUNCTION' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\Ctanh [] {}',
               "<ltx:XMApp>"
             . "<ltx:XMTok meaning='tanh' role='TRIGFUNCTION' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\Csech [] {}',
               "<ltx:XMApp>"
             . "<ltx:XMTok meaning='sech' role='TRIGFUNCTION' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\Ccsch [] {}',
               "<ltx:XMApp>"
             . "<ltx:XMTok meaning='csch' role='TRIGFUNCTION' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\Ccoth [] {}',
               "<ltx:XMApp>"
             . "<ltx:XMTok meaning='coth' role='TRIGFUNCTION' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\Carcsin [] {}',
               "<ltx:XMApp>"
             . "<ltx:XMTok meaning='arcsin' role='OPFUNCTION' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\Carccos [] {}',
               "<ltx:XMApp>"
             . "<ltx:XMTok meaning='arccos' role='OPFUNCTION' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\Carctan [] {}',
               "<ltx:XMApp>"
             . "<ltx:XMTok meaning='arctan' role='OPFUNCTION' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\Carcsec [] {}',
               "<ltx:XMApp>"
             . "<ltx:XMTok meaning='arcsec' role='OPFUNCTION' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\Carccsc [] {}',
               "<ltx:XMApp>"
             . "<ltx:XMTok meaning='arccsc' role='OPFUNCTION' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\Carccot [] {}',
               "<ltx:XMApp>"
             . "<ltx:XMTok meaning='arccot' role='OPFUNCTION' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\Carcsinh [] {}',
               "<ltx:XMApp>"
             . "<ltx:XMTok meaning='arcsinh' role='OPFUNCTION' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\Carccosh [] {}',
               "<ltx:XMApp>"
             . "<ltx:XMTok meaning='arccosh' role='OPFUNCTION' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\Carctanh [] {}',
               "<ltx:XMApp>"
             . "<ltx:XMTok meaning='arctanh' role='OPFUNCTION' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\Carcsech [] {}',
               "<ltx:XMApp>"
             . "<ltx:XMTok meaning='arcsech' role='OPFUNCTION' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\Carccsch [] {}',
               "<ltx:XMApp>"
             . "<ltx:XMTok meaning='arccsch' role='OPFUNCTION' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\Carccoth [] {}',
               "<ltx:XMApp>"
             . "<ltx:XMTok meaning='arccoth' role='OPFUNCTION' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\Cexp [] {}',
               "<ltx:XMApp>"
             . "<ltx:XMTok meaning='exp' role='OPFUNCTION' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\Cln [] {}',
               "<ltx:XMApp>"
             . "<ltx:XMTok meaning='ln' role='OPFUNCTION' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\Clog [] {}{}',
               "<ltx:XMApp>"
             . "<ltx:XMTok meaning='log' role='OPFUNCTION' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "<ltx:XMArg>#3</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\Cmean [] {}',
               "<ltx:XMApp>"
             . "<ltx:XMTok meaning='mean' role='OPFUNCTION' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\Csdev [] {}',
               "<ltx:XMApp>"
             . "<ltx:XMTok meaning='sdev' role='OPFUNCTION' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\Cvar [] {}',
               "<ltx:XMApp>"
             . "<ltx:XMTok meaning='var' role='OPFUNCTION' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\Cmedian [] {}',
               "<ltx:XMApp>"
             . "<ltx:XMTok meaning='median' role='OPFUNCTION' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\Cmode [] {}',
               "<ltx:XMApp>"
             . "<ltx:XMTok meaning='mode' role='OPFUNCTION' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\Cmoment [] {}',
               "<ltx:XMApp>"
             . "<ltx:XMTok meaning='moment' role='OPFUNCTION' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\Cvector [] {}',
               "<ltx:XMApp>"
             . "<ltx:XMTok role='CONSTRUCTOR' meaning='vector' ?#1(definitionURL='#1')()/>"
             . "#2"
             . "</ltx:XMApp>",
       afterDigest=>sub { remove_math_commas($_[1], 2); });
DefConstructor('\Cmatrix [] {}{}',
               "<ltx:XMApp>"
             . "<ltx:XMTok role='CONSTRUCTOR' meaning='matrix' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "<ltx:XMArg>#3</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\Cdeterminant [] {}',
               "<ltx:XMApp>"
             . "<ltx:XMTok meaning='determinant' role='OPFUNCTION' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\Ctranspose [] {}',
               "<ltx:XMApp>"
             . "<ltx:XMTok meaning='transpose' role='OPFUNCTION' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\Cselector [] {}{}',
               "<ltx:XMApp>"
             . "<ltx:XMTok meaning='selector' role='OPFUNCTION' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "<ltx:XMArg>#3</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\CvectorproductOp []',
               "<ltx:XMTok meaning='vectorproduct' role='ID' ?#1(definitionURL='#1')()/>");
DefConstructor('\Cvectorproduct [] {}{}',
               "<ltx:XMApp>"
             . "<ltx:XMTok meaning='vectorproduct' role='OPFUNCTION' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "<ltx:XMArg>#3</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\Cscalarproduct [] {}{}',
               "<ltx:XMApp>"
             . "<ltx:XMTok meaning='scalarproduct' role='OPFUNCTION' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "<ltx:XMArg>#3</ltx:XMArg>"
             . "</ltx:XMApp>");
DefConstructor('\CouterproductOp []',
               "<ltx:XMTok meaning='outerproduct' role='ID' ?#1(definitionURL='#1')()/>");
DefConstructor('\Couterproduct [] {}{}',
               "<ltx:XMApp>"
             . "<ltx:XMTok meaning='outerproduct' role='OPFUNCTION' ?#1(definitionURL='#1')()/>"
             . "<ltx:XMArg>#2</ltx:XMArg>"
             . "<ltx:XMArg>#3</ltx:XMArg>"
             . "</ltx:XMApp>");#$
DefConstructor('\Cintegers []',
               "<ltx:XMTok meaning='integers' role='ID' ?#1(definitionURL='#1')()/>");
DefConstructor('\Creals []',
               "<ltx:XMTok meaning='reals' role='ID' ?#1(definitionURL='#1')()/>");
DefConstructor('\Crationals []',
               "<ltx:XMTok meaning='rationals' role='ID' ?#1(definitionURL='#1')()/>");
DefConstructor('\Cnaturalnumbers []',
               "<ltx:XMTok meaning='naturalnumbers' role='ID' ?#1(definitionURL='#1')()/>");
DefConstructor('\Ccomplexes []',
               "<ltx:XMTok meaning='complexes' role='ID' ?#1(definitionURL='#1')()/>");
DefConstructor('\Cprimes []',
               "<ltx:XMTok meaning='primes'  role='ID' ?#1(definitionURL='#1')()/>");
DefConstructor('\Cexponentiale []',
               "<ltx:XMTok meaning='exponentiale' role='ID' ?#1(definitionURL='#1')()/>");
DefConstructor('\Cimaginaryi []',
               "<ltx:XMTok meaning='imaginaryi' role='ID' ?#1(definitionURL='#1')()/>");
DefConstructor('\Cnotanumber []',
               "<ltx:XMTok meaning='notanumber' role='ID' ?#1(definitionURL='#1')()/>");
DefConstructor('\Ctrue []',
               "<ltx:XMTok meaning='true' role='ID' ?#1(definitionURL='#1')()/>");
DefConstructor('\Cfalse []',
               "<ltx:XMTok meaning='false' role='ID' ?#1(definitionURL='#1')()/>");
DefConstructor('\Cemptyset []',
               "<ltx:XMTok meaning='emptyset' role='ID' ?#1(definitionURL='#1')()/>");
DefConstructor('\Cpi []',
               "<ltx:XMTok meaning='pi' role='ID' ?#1(definitionURL='#1')()/>");
DefConstructor('\Ceulergamma []',
               "<ltx:XMTok meaning='eulergamma' role='ID' ?#1(definitionURL='#1')()/>");
DefConstructor('\Cinfinit []',
               "<ltx:XMTok meaning='infinit' role='ID' ?#1(definitionURL='#1')()/>");
1;
