

#include "BUILTIN.h"

#include "Nat.h"

#include "Char.h"

#include "Int.h"

#include "Array.h"
extern OBJ _ATypeAn_2(OBJ,OBJ,OBJ);OBJ __ATypeAn_2; /* foreign */
extern OBJ _ATypeAn_3(OBJ);OBJ __ATypeAn_3; /* foreign? */
extern OBJ _ATypeAn_4(OBJ);OBJ __ATypeAn_4; /* store */
extern OBJ _ATypeAn_5(OBJ);OBJ __ATypeAn_5; /* order */
extern OBJ _ATypeAn_6(OBJ);OBJ __ATypeAn_6; /* ide */
extern OBJ _ATypeAn_7(OBJ,OBJ);OBJ __ATypeAn_7; /* binding */
extern OBJ _ATypeAn_8(OBJ);OBJ __ATypeAn_8; /* binding? */
extern OBJ _ATypeAn_9(OBJ);OBJ __ATypeAn_9; /* def */
extern OBJ _ATypeAn_11(OBJ);OBJ __ATypeAn_11; /* hidden */
extern OBJ _ATypeAn_12(OBJ);OBJ __ATypeAn_12; /* hidden? */
extern OBJ _ATypeAn_15(OBJ,OBJ);OBJ __ATypeAn_15; /* gen */
extern OBJ _ATypeAn_16(OBJ);OBJ __ATypeAn_16; /* gen? */
extern OBJ _ATypeAn_17(OBJ);OBJ __ATypeAn_17; /* scope */
extern OBJ _ATypeAn_18(OBJ);OBJ __ATypeAn_18; /* vars */
extern OBJ _ATypeAn_19(OBJ,OBJ);OBJ __ATypeAn_19; /* spec */
extern OBJ _ATypeAn_20(OBJ);OBJ __ATypeAn_20; /* spec? */
extern OBJ _ATypeAn_21(OBJ);OBJ __ATypeAn_21; /* subs */
extern OBJ _ATypeAn_22(OBJ);OBJ __ATypeAn_22; /* gen,1 */
extern OBJ _ATypeAn_23(OBJ);OBJ __ATypeAn_23; /* sum */
extern OBJ _ATypeAn_24(OBJ);OBJ __ATypeAn_24; /* sum? */
extern OBJ _ATypeAn_25(OBJ);OBJ __ATypeAn_25; /* members */
extern OBJ _ATypeAn_26(OBJ,OBJ);OBJ __ATypeAn_26; /* prod */
extern OBJ _ATypeAn_27(OBJ);OBJ __ATypeAn_27; /* prod? */
extern OBJ _ATypeAn_28(OBJ);OBJ __ATypeAn_28; /* comps */
extern OBJ _ATypeAn_29(OBJ);OBJ __ATypeAn_29; /* cons */
extern OBJ _ATypeAn_30(OBJ,OBJ);OBJ __ATypeAn_30; /* fun */
extern OBJ _ATypeAn_31(OBJ);OBJ __ATypeAn_31; /* fun? */
extern OBJ _ATypeAn_32(OBJ);OBJ __ATypeAn_32; /* res */
extern OBJ _ATypeAn_33(OBJ);OBJ __ATypeAn_33; /* args */
extern OBJ _ATypeAn_34(OBJ);OBJ __ATypeAn_34; /* tup */
extern OBJ _ATypeAn_35(OBJ);OBJ __ATypeAn_35; /* tup? */
extern OBJ _ATypeAn_37(OBJ);OBJ __ATypeAn_37; /* ide,1 */
extern OBJ _ATypeAn_38(OBJ);OBJ __ATypeAn_38; /* ide? */
extern OBJ _ATypeAn_39(OBJ);OBJ __ATypeAn_39; /* ide,2 */
OBJ __ATypeAn_40; /* some */
extern OBJ _ATypeAn_41(OBJ);OBJ __ATypeAn_41; /* some? */
extern OBJ _ATypeAn_43(OBJ);OBJ __ATypeAn_43; /* typeDecs */
extern OBJ _ATypeAn_44(OBJ);OBJ __ATypeAn_44; /* typeDecs? */
extern OBJ _ATypeAn_45(OBJ);OBJ __ATypeAn_45; /* decs */
extern OBJ _ATypeAn_46(OBJ);OBJ __ATypeAn_46; /* spec,1 */
extern OBJ _ATypeAn_47(OBJ);OBJ __ATypeAn_47; /* spec?,1 */
extern OBJ _ATypeAn_48(OBJ);OBJ __ATypeAn_48; /* subs,1 */
extern OBJ _ATypeAn_49(OBJ);OBJ __ATypeAn_49; /* typing */
extern OBJ _ATypeAn_50(OBJ);OBJ __ATypeAn_50; /* typing? */
extern OBJ _ATypeAn_51(OBJ);OBJ __ATypeAn_51; /* type */
OBJ __ATypeAn_52; /* none */
extern OBJ _ATypeAn_53(OBJ);OBJ __ATypeAn_53; /* none? */

extern OBJ _ATypeAn_2(OBJ x1,OBJ x2,OBJ x3) /* foreign */
{OBJ r;
 PRD(3,2,r);FLD(r,1)=x1;FLD(r,2)=x2;FLD(r,3)=x3;
 return r;}

extern OBJ _ATypeAn_3(OBJ x1) /* foreign? */
{OBJ r;
 if(ISTGPRD(x1,2)){
  if(EXPRD(x1,1)){
   DSPRD(x1);
  }else{
   DCPRD(x1,1);}
  r=__ABUILTIN_5;
 }else{
  FRPRD(x1,1);
  r=__ABUILTIN_3;}
 return r;}

extern OBJ _ATypeAn_4(OBJ x1) /* store */
{OBJ r;
 if(ISTGPRD(x1,2)){
  {OBJ x4=FLD(x1,3);
   if(EXPRD(x1,1)){
    r=x4;
    FRPRD(FLD(x1,1),1);DSPRDF(x1);
   }else{
    COPY(x4,1);
    r=x4;
    FRPRD(x1,1);}}
 }else{
  HLT("TypeAn at <unknown> : undefined selection store\'TypeAn:typeDec->store");}
 return r;}

extern OBJ _ATypeAn_5(OBJ x1) /* order */
{OBJ r;
 if(ISTGPRD(x1,2)){
  {OBJ x3=FLD(x1,2);
   if(EXPRD(x1,1)){
    r=x3;
    DSPRD(x1);
   }else{
    r=x3;
    FRPRD(x1,1);}}
 }else{
  HLT("TypeAn at <unknown> : undefined selection order\'TypeAn:typeDec->nat");}
 return r;}

extern OBJ _ATypeAn_6(OBJ x1) /* ide */
{OBJ r;
 {OBJ x2=FLD(x1,1);
  if(EXPRD(x1,1)){
   r=x2;
   FLD(x1,1)=NIL;DSPRD(x1);
  }else{
   CPPRD(x2,1);
   r=x2;
   FRPRD(x1,1);}}
 return r;}

extern OBJ _ATypeAn_7(OBJ x1,OBJ x2) /* binding */
{OBJ r;
 PRD(2,1,r);FLD(r,1)=x1;FLD(r,2)=x2;
 return r;}

extern OBJ _ATypeAn_8(OBJ x1) /* binding? */
{OBJ r;
 if(ISTGPRD(x1,1)){
  if(EXPRD(x1,1)){
   DSPRD(x1);
  }else{
   DCPRD(x1,1);}
  r=__ABUILTIN_5;
 }else{
  FRPRD(x1,1);
  r=__ABUILTIN_3;}
 return r;}

extern OBJ _ATypeAn_9(OBJ x1) /* def */
{OBJ r;
 if(ISTGPRD(x1,1)){
  {OBJ x3=FLD(x1,2);
   if(EXPRD(x1,1)){
    r=x3;
    FRPRD(FLD(x1,1),1);DSPRDF(x1);
   }else{
    COPY(x3,1);
    r=x3;
    FRPRD(x1,1);}}
 }else{
  HLT("TypeAn at <unknown> : undefined selection def\'TypeAn:typeDec->type");}
 return r;}

extern OBJ _ATypeAn_11(OBJ x1) /* hidden */
{OBJ r;
 PRD(1,0,r);FLD(r,1)=x1;
 return r;}

extern OBJ _ATypeAn_12(OBJ x1) /* hidden? */
{OBJ r;
 if(ISTGPRD(x1,0)){
  if(EXPRD(x1,1)){
   FRPRD(FLD(x1,1),1);DSPRDF(x1);
  }else{
   DCPRD(x1,1);}
  r=__ABUILTIN_5;
 }else{
  FRPRD(x1,1);
  r=__ABUILTIN_3;}
 return r;}

extern OBJ _ATypeAn_15(OBJ x1,OBJ x2) /* gen */
{OBJ r;
 PRD(2,7,r);FLD(r,1)=x1;FLD(r,2)=x2;
 return r;}

extern OBJ _ATypeAn_16(OBJ x1) /* gen? */
{OBJ r;
 if(ISPRD(x1)&&(ISTGPRD(x1,7))){
  if(EXPRD(x1,1)){
   DSPRD(x1);
  }else{
   DCPRD(x1,1);}
  r=__ABUILTIN_5;
 }else{
  FREE(x1,1);
  r=__ABUILTIN_3;}
 return r;}

extern OBJ _ATypeAn_17(OBJ x1) /* scope */
{OBJ r;
 if(ISPRD(x1)&&(ISTGPRD(x1,7))){
  {OBJ x3=FLD(x1,2);
   if(EXPRD(x1,1)){
    r=x3;
    FREE(FLD(x1,1),1);DSPRDF(x1);
   }else{
    COPY(x3,1);
    r=x3;
    FRPRD(x1,1);}}
 }else{
  HLT("TypeAn at <unknown> : undefined selection scope\'TypeAn:type->type");}
 return r;}

extern OBJ _ATypeAn_18(OBJ x1) /* vars */
{OBJ r;
 if(ISPRD(x1)&&(ISTGPRD(x1,7))){
  {OBJ x2=FLD(x1,1);
   if(EXPRD(x1,1)){
    r=x2;
    FREE(FLD(x1,2),1);DSPRDF(x1);
   }else{
    COPY(x2,1);
    r=x2;
    FRPRD(x1,1);}}
 }else{
  HLT("TypeAn at <unknown> : undefined selection vars\'TypeAn:type->seq");}
 return r;}

extern OBJ _ATypeAn_19(OBJ x1,OBJ x2) /* spec */
{OBJ r;
 PRD(2,6,r);FLD(r,1)=x1;FLD(r,2)=x2;
 return r;}

extern OBJ _ATypeAn_20(OBJ x1) /* spec? */
{OBJ r;
 if(ISPRD(x1)&&(ISTGPRD(x1,6))){
  if(EXPRD(x1,1)){
   DSPRD(x1);
  }else{
   DCPRD(x1,1);}
  r=__ABUILTIN_5;
 }else{
  FREE(x1,1);
  r=__ABUILTIN_3;}
 return r;}

extern OBJ _ATypeAn_21(OBJ x1) /* subs */
{OBJ r;
 if(ISPRD(x1)&&(ISTGPRD(x1,6))){
  {OBJ x3=FLD(x1,2);
   if(EXPRD(x1,1)){
    r=x3;
    FREE(FLD(x1,1),1);DSPRDF(x1);
   }else{
    COPY(x3,1);
    r=x3;
    FRPRD(x1,1);}}
 }else{
  HLT("TypeAn at <unknown> : undefined selection subs\'TypeAn:type->seq");}
 return r;}

extern OBJ _ATypeAn_22(OBJ x1) /* gen,1 */
{OBJ r;
 if(ISPRD(x1)&&(ISTGPRD(x1,6))){
  {OBJ x2=FLD(x1,1);
   if(EXPRD(x1,1)){
    r=x2;
    FREE(FLD(x1,2),1);DSPRDF(x1);
   }else{
    COPY(x2,1);
    r=x2;
    FRPRD(x1,1);}}
 }else{
  HLT("TypeAn at <unknown> : undefined selection gen\'TypeAn:type->type");}
 return r;}

extern OBJ _ATypeAn_23(OBJ x1) /* sum */
{OBJ r;
 PRD(1,5,r);FLD(r,1)=x1;
 return r;}

extern OBJ _ATypeAn_24(OBJ x1) /* sum? */
{OBJ r;
 if(ISPRD(x1)&&(ISTGPRD(x1,5))){
  if(EXPRD(x1,1)){
   FREE(FLD(x1,1),1);DSPRDF(x1);
  }else{
   DCPRD(x1,1);}
  r=__ABUILTIN_5;
 }else{
  FREE(x1,1);
  r=__ABUILTIN_3;}
 return r;}

extern OBJ _ATypeAn_25(OBJ x1) /* members */
{OBJ r;
 if(ISPRD(x1)&&(ISTGPRD(x1,5))){
  {OBJ x2=FLD(x1,1);
   if(EXPRD(x1,1)){
    r=x2;
    DSPRDF(x1);
   }else{
    COPY(x2,1);
    r=x2;
    FRPRD(x1,1);}}
 }else{
  HLT("TypeAn at <unknown> : undefined selection members\'TypeAn:type->seq");}
 return r;}

extern OBJ _ATypeAn_26(OBJ x1,OBJ x2) /* prod */
{OBJ r;
 PRD(2,4,r);FLD(r,1)=x1;FLD(r,2)=x2;
 return r;}

extern OBJ _ATypeAn_27(OBJ x1) /* prod? */
{OBJ r;
 if(ISPRD(x1)&&(ISTGPRD(x1,4))){
  if(EXPRD(x1,1)){
   DSPRD(x1);
  }else{
   DCPRD(x1,1);}
  r=__ABUILTIN_5;
 }else{
  FREE(x1,1);
  r=__ABUILTIN_3;}
 return r;}

extern OBJ _ATypeAn_28(OBJ x1) /* comps */
{OBJ r;
 if(ISPRD(x1)&&(ISTGPRD(x1,2))){
  {OBJ x2=FLD(x1,1);
   if(EXPRD(x1,1)){
    r=x2;
    DSPRDF(x1);
   }else{
    COPY(x2,1);
    r=x2;
    FRPRD(x1,1);}}
 }else{
  if(ISPRD(x1)&&(ISTGPRD(x1,4))){
   {OBJ x4=FLD(x1,2);
    if(EXPRD(x1,1)){
     r=x4;
     FRPRD(FLD(x1,1),1);DSPRDF(x1);
    }else{
     COPY(x4,1);
     r=x4;
     FRPRD(x1,1);}}
  }else{
   HLT("TypeAn at <unknown> : undefined selection comps\'TypeAn:type->seq");}}
 return r;}

extern OBJ _ATypeAn_29(OBJ x1) /* cons */
{OBJ r;
 if(ISPRD(x1)&&(ISTGPRD(x1,4))){
  {OBJ x2=FLD(x1,1);
   if(EXPRD(x1,1)){
    r=x2;
    FREE(FLD(x1,2),1);DSPRDF(x1);
   }else{
    CPPRD(x2,1);
    r=x2;
    FRPRD(x1,1);}}
 }else{
  HLT("TypeAn at <unknown> : undefined selection cons\'TypeAn:type->ide");}
 return r;}

extern OBJ _ATypeAn_30(OBJ x1,OBJ x2) /* fun */
{OBJ r;
 PRD(2,3,r);FLD(r,1)=x1;FLD(r,2)=x2;
 return r;}

extern OBJ _ATypeAn_31(OBJ x1) /* fun? */
{OBJ r;
 if(ISPRD(x1)&&(ISTGPRD(x1,3))){
  if(EXPRD(x1,1)){
   DSPRD(x1);
  }else{
   DCPRD(x1,1);}
  r=__ABUILTIN_5;
 }else{
  FREE(x1,1);
  r=__ABUILTIN_3;}
 return r;}

extern OBJ _ATypeAn_32(OBJ x1) /* res */
{OBJ r;
 if(ISPRD(x1)&&(ISTGPRD(x1,3))){
  {OBJ x3=FLD(x1,2);
   if(EXPRD(x1,1)){
    r=x3;
    FREE(FLD(x1,1),1);DSPRDF(x1);
   }else{
    COPY(x3,1);
    r=x3;
    FRPRD(x1,1);}}
 }else{
  HLT("TypeAn at <unknown> : undefined selection res\'TypeAn:type->type");}
 return r;}

extern OBJ _ATypeAn_33(OBJ x1) /* args */
{OBJ r;
 if(ISPRD(x1)&&(ISTGPRD(x1,3))){
  {OBJ x2=FLD(x1,1);
   if(EXPRD(x1,1)){
    r=x2;
    FREE(FLD(x1,2),1);DSPRDF(x1);
   }else{
    COPY(x2,1);
    r=x2;
    FRPRD(x1,1);}}
 }else{
  HLT("TypeAn at <unknown> : undefined selection args\'TypeAn:type->seq");}
 return r;}

extern OBJ _ATypeAn_34(OBJ x1) /* tup */
{OBJ r;
 PRD(1,2,r);FLD(r,1)=x1;
 return r;}

extern OBJ _ATypeAn_35(OBJ x1) /* tup? */
{OBJ r;
 if(ISPRD(x1)&&(ISTGPRD(x1,2))){
  if(EXPRD(x1,1)){
   FREE(FLD(x1,1),1);DSPRDF(x1);
  }else{
   DCPRD(x1,1);}
  r=__ABUILTIN_5;
 }else{
  FREE(x1,1);
  r=__ABUILTIN_3;}
 return r;}

extern OBJ _ATypeAn_37(OBJ x1) /* ide,1 */
{OBJ r;
 PRD(1,1,r);FLD(r,1)=x1;
 return r;}

extern OBJ _ATypeAn_38(OBJ x1) /* ide? */
{OBJ r;
 if(ISPRD(x1)&&(ISTGPRD(x1,1))){
  if(EXPRD(x1,1)){
   FRPRD(FLD(x1,1),1);DSPRDF(x1);
  }else{
   DCPRD(x1,1);}
  r=__ABUILTIN_5;
 }else{
  FREE(x1,1);
  r=__ABUILTIN_3;}
 return r;}

extern OBJ _ATypeAn_39(OBJ x1) /* ide,2 */
{OBJ r;
 if(ISPRD(x1)&&(ISTGPRD(x1,1))){
  {OBJ x2=FLD(x1,1);
   if(EXPRD(x1,1)){
    r=x2;
    DSPRDF(x1);
   }else{
    CPPRD(x2,1);
    r=x2;
    FRPRD(x1,1);}}
 }else{
  HLT("TypeAn at <unknown> : undefined selection ide\'TypeAn:type->ide");}
 return r;}

extern OBJ _ATypeAn_41(OBJ x1) /* some? */
{OBJ r;
 if(ISPRM(x1)){
  r=__ABUILTIN_5;
 }else{
  FREE(x1,1);
  r=__ABUILTIN_3;}
 return r;}

extern OBJ _ATypeAn_43(OBJ x1) /* typeDecs */
{OBJ r;
 PRD(1,3,r);FLD(r,1)=x1;
 return r;}

extern OBJ _ATypeAn_44(OBJ x1) /* typeDecs? */
{OBJ r;
 if(ISPRD(x1)&&(ISTGPRD(x1,3))){
  if(EXPRD(x1,1)){
   FRPRD(FLD(x1,1),1);DSPRDF(x1);
  }else{
   DCPRD(x1,1);}
  r=__ABUILTIN_5;
 }else{
  FREE(x1,1);
  r=__ABUILTIN_3;}
 return r;}

extern OBJ _ATypeAn_45(OBJ x1) /* decs */
{OBJ r;
 if(ISPRD(x1)&&(ISTGPRD(x1,3))){
  {OBJ x2=FLD(x1,1);
   if(EXPRD(x1,1)){
    r=x2;
    DSPRDF(x1);
   }else{
    CPPRD(x2,1);
    r=x2;
    FRPRD(x1,1);}}
 }else{
  HLT("TypeAn at <unknown> : undefined selection decs\'TypeAn:typeAn->natMap");}
 return r;}

extern OBJ _ATypeAn_46(OBJ x1) /* spec,1 */
{OBJ r;
 PRD(1,2,r);FLD(r,1)=x1;
 return r;}

extern OBJ _ATypeAn_47(OBJ x1) /* spec?,1 */
{OBJ r;
 if(ISPRD(x1)&&(ISTGPRD(x1,2))){
  if(EXPRD(x1,1)){
   FREE(FLD(x1,1),1);DSPRDF(x1);
  }else{
   DCPRD(x1,1);}
  r=__ABUILTIN_5;
 }else{
  FREE(x1,1);
  r=__ABUILTIN_3;}
 return r;}

extern OBJ _ATypeAn_48(OBJ x1) /* subs,1 */
{OBJ r;
 if(ISPRD(x1)&&(ISTGPRD(x1,2))){
  {OBJ x2=FLD(x1,1);
   if(EXPRD(x1,1)){
    r=x2;
    DSPRDF(x1);
   }else{
    COPY(x2,1);
    r=x2;
    FRPRD(x1,1);}}
 }else{
  HLT("TypeAn at <unknown> : undefined selection subs\'TypeAn:typeAn->seq");}
 return r;}

extern OBJ _ATypeAn_49(OBJ x1) /* typing */
{OBJ r;
 PRD(1,1,r);FLD(r,1)=x1;
 return r;}

extern OBJ _ATypeAn_50(OBJ x1) /* typing? */
{OBJ r;
 if(ISPRD(x1)&&(ISTGPRD(x1,1))){
  if(EXPRD(x1,1)){
   FREE(FLD(x1,1),1);DSPRDF(x1);
  }else{
   DCPRD(x1,1);}
  r=__ABUILTIN_5;
 }else{
  FREE(x1,1);
  r=__ABUILTIN_3;}
 return r;}

extern OBJ _ATypeAn_51(OBJ x1) /* type */
{OBJ r;
 if(ISPRD(x1)&&(ISTGPRD(x1,1))){
  {OBJ x2=FLD(x1,1);
   if(EXPRD(x1,1)){
    r=x2;
    DSPRDF(x1);
   }else{
    COPY(x2,1);
    r=x2;
    FRPRD(x1,1);}}
 }else{
  HLT("TypeAn at <unknown> : undefined selection type\'TypeAn:typeAn->type");}
 return r;}

extern OBJ _ATypeAn_53(OBJ x1) /* none? */
{OBJ r;
 if(ISPRM(x1)){
  r=__ABUILTIN_5;
 }else{
  FREE(x1,1);
  r=__ABUILTIN_3;}
 return r;}



init_ATypeAn()
{
 static int visited=0; if(visited) return; visited=1;
 init_ANat();
 init_ASeq();
 init_ANatMap();
 init_AIde();
 init_AStore();
 init_AOption();
 init_AFormat();
 init_AString();
 init_ACom();
 init_AStream();
 init_AVoid();
 init_AFmt();
 init_AChar();
 init_AFile();
 init_AInt();
 init_ASet();
 init_APair();
 init_AArray();
 init_AMap();
 init_ASetByBST();
 init_ABSTree();
 init_ATree();
 CLS(1,_ATypeAn_31,__ATypeAn_31);
 CLS(2,_ATypeAn_30,__ATypeAn_30);
 CLS(1,_ATypeAn_29,__ATypeAn_29);
 CLS(1,_ATypeAn_28,__ATypeAn_28);
 CLS(1,_ATypeAn_27,__ATypeAn_27);
 CLS(2,_ATypeAn_26,__ATypeAn_26);
 CLS(1,_ATypeAn_25,__ATypeAn_25);
 CLS(1,_ATypeAn_24,__ATypeAn_24);
 CLS(1,_ATypeAn_23,__ATypeAn_23);
 CLS(1,_ATypeAn_22,__ATypeAn_22);
 CLS(1,_ATypeAn_21,__ATypeAn_21);
 CLS(1,_ATypeAn_53,__ATypeAn_53);
 CLS(1,_ATypeAn_20,__ATypeAn_20);
 CLS(2,_ATypeAn_19,__ATypeAn_19);
 CLS(1,_ATypeAn_51,__ATypeAn_51);
 CLS(1,_ATypeAn_18,__ATypeAn_18);
 CLS(1,_ATypeAn_50,__ATypeAn_50);
 CLS(1,_ATypeAn_17,__ATypeAn_17);
 CLS(1,_ATypeAn_49,__ATypeAn_49);
 CLS(1,_ATypeAn_16,__ATypeAn_16);
 CLS(1,_ATypeAn_48,__ATypeAn_48);
 CLS(2,_ATypeAn_15,__ATypeAn_15);
 CLS(1,_ATypeAn_47,__ATypeAn_47);
 CLS(1,_ATypeAn_46,__ATypeAn_46);
 CLS(1,_ATypeAn_45,__ATypeAn_45);
 CLS(1,_ATypeAn_12,__ATypeAn_12);
 CLS(1,_ATypeAn_44,__ATypeAn_44);
 CLS(1,_ATypeAn_11,__ATypeAn_11);
 CLS(1,_ATypeAn_43,__ATypeAn_43);
 CLS(1,_ATypeAn_9,__ATypeAn_9);
 CLS(1,_ATypeAn_41,__ATypeAn_41);
 CLS(1,_ATypeAn_8,__ATypeAn_8);
 CLS(2,_ATypeAn_7,__ATypeAn_7);
 CLS(1,_ATypeAn_39,__ATypeAn_39);
 CLS(1,_ATypeAn_6,__ATypeAn_6);
 CLS(1,_ATypeAn_38,__ATypeAn_38);
 CLS(1,_ATypeAn_5,__ATypeAn_5);
 CLS(1,_ATypeAn_37,__ATypeAn_37);
 CLS(1,_ATypeAn_4,__ATypeAn_4);
 CLS(1,_ATypeAn_3,__ATypeAn_3);
 CLS(1,_ATypeAn_35,__ATypeAn_35);
 CLS(3,_ATypeAn_2,__ATypeAn_2);
 CLS(1,_ATypeAn_34,__ATypeAn_34);
 CLS(1,_ATypeAn_33,__ATypeAn_33);
 CLS(1,_ATypeAn_32,__ATypeAn_32);
 PRM1(__ATypeAn_40);
 PRM1(__ATypeAn_52);}

