

#include "BUILTIN.h"

#include "Bitset.h"
extern OBJ _AAc_20(OBJ);extern OBJ __AAc_20;
extern OBJ _AAc_21(OBJ);extern OBJ __AAc_21;
extern OBJ _AAc_22(OBJ);extern OBJ __AAc_22;
extern OBJ __ATransAn_8;
extern OBJ __AOption_5;

#include "Nat.h"
extern OBJ _AFmt_28(OBJ);extern OBJ __AFmt_28;

#include "Char.h"

#include "Int.h"
extern OBJ __ANatMap_3;
extern OBJ _ANatMap_4(OBJ,OBJ,OBJ);extern OBJ __ANatMap_4;
extern OBJ _ANatMap_15(OBJ,OBJ);extern OBJ __ANatMap_15;
extern OBJ _AAn_9(OBJ,OBJ);extern OBJ __AAn_9;
extern OBJ _AAcFun_10(OBJ,OBJ);extern OBJ __AAcFun_10;
extern OBJ _AAcFun_12(OBJ,OBJ,OBJ);extern OBJ __AAcFun_12;
extern OBJ _AAcFun_17(OBJ,OBJ);extern OBJ __AAcFun_17;
extern OBJ _AAcFun_18(OBJ,OBJ,OBJ);extern OBJ __AAcFun_18;

#include "Array.h"
extern OBJ _ATransAnFun_1(OBJ,OBJ);OBJ __ATransAnFun_1; /* typeStore? */
extern OBJ _ATransAnFun_2(OBJ,OBJ,OBJ);OBJ __ATransAnFun_2; /* setTypeStore */
extern OBJ _ATransAnFun_3(OBJ,OBJ);OBJ __ATransAnFun_3; /* constructorStore */
extern OBJ _ATransAnFun_4(OBJ,OBJ,OBJ);OBJ __ATransAnFun_4; /* setConstructorStore */
extern OBJ _ATransAnFun_5(OBJ);OBJ __ATransAnFun_5; /* format */
extern OBJ _ATransAnFun_6(OBJ,OBJ,OBJ);OBJ __ATransAnFun_6; /* newTypeStore */
extern OBJ _ATransAnFun_7(OBJ,OBJ);OBJ __ATransAnFun_7; /* newConsStore */
OBJ __ATransAnFun_8; /* format'8 */
extern OBJ _ATransAnFun_9(OBJ);OBJ __ATransAnFun_9; /* format'9 */

extern OBJ _ATransAnFun_1(OBJ x1,OBJ x2) /* typeStore? */
{OBJ r;
 {OBJ x11;OBJ x7;OBJ x12;OBJ x18;
  if(ISTGPRD(x2,0)){
   {OBJ x27=FLD(x2,1);OBJ x28=FLD(x2,2);
    if(EXPRD(x2,1)){
     x11=x27;x7=x28;
     DSPRDF(x2);
    }else{
     x11=x27;x7=x28;
     FRPRD(x2,1);}}
  }else{
   HLT("Ide at <unknown> : undefined selection origin\'Ide:ide->origin");}
  x12=_AAcFun_17(x1,x7);
  if(ISPRM(x12)){
   x18=__ATransAn_8;
  }else{
   {OBJ x16=FLD1(x12,4);
    if(EXPRD(x12,1)){
     x18=x16;
     FLD1(x12,4)=NIL;DSPRD(x12);
    }else{
     COPY(x16,1);
     x18=x16;
     FRPRD(x12,1);}}}
  if(ISPRD(x18)&&(ISTGPRD(x18,2))){
   {OBJ x23=FLD(x18,1);
    if(EXPRD(x18,1)){
     DSPRDF(x18);
    }else{
     CPPRD(x23,1);
     FRPRD(x18,1);}
    r=_ANatMap_15(x23,x11);}
  }else{
   FREE(x18,1);
   r=__AOption_5;}}
 return r;}

extern OBJ _ATransAnFun_2(OBJ x1,OBJ x2,OBJ x3) /* setTypeStore */
{OBJ r;
 {OBJ x8;OBJ x9;
  if(ISTGPRD(x2,0)){
   {OBJ x5=FLD(x2,2);
    x8=x5;
    CPCLS(__ATransAnFun_6,1);}
  }else{
   HLT("Ide at <unknown> : undefined selection origin\'Ide:ide->origin");}
  x9=(*(OBJ(*)(OBJ,OBJ,OBJ))METHOD(__ATransAnFun_6,2))(__ATransAnFun_6,x2,x3);
  r=_AAcFun_18(x1,x8,x9);}
 return r;}

extern OBJ _ATransAnFun_3(OBJ x1,OBJ x2) /* constructorStore */
{OBJ r;
 {OBJ x3;OBJ x4;OBJ x10;
  x3=_AAcFun_10(x1,x2);
  x4=_AAc_22(x3);
  if(ISPRM(x4)){
   x10=__ATransAn_8;
  }else{
   {OBJ x8=FLD1(x4,4);
    if(EXPRD(x4,1)){
     x10=x8;
     FLD1(x4,4)=NIL;DSPRD(x4);
    }else{
     COPY(x8,1);
     x10=x8;
     FRPRD(x4,1);}}}
  if(ISPRD(x10)&&(ISTGPRD(x10,1))){
   {OBJ x11=FLD(x10,1);
    if(EXPRD(x10,1)){
     r=x11;
     DSPRDF(x10);
    }else{
     COPY(x11,1);
     r=x11;
     FRPRD(x10,1);}}
  }else{
   HLT("TransAn at <unknown> : undefined selection store\'TransAn:transAn->store");}}
 return r;}

extern OBJ _ATransAnFun_4(OBJ x1,OBJ x2,OBJ x3) /* setConstructorStore */
{OBJ r;
 CPCLS(__ATransAnFun_7,1);
 {OBJ x4;
  x4=(*(OBJ(*)(OBJ,OBJ))METHOD(__ATransAnFun_7,1))(__ATransAnFun_7,x3);
  r=_AAcFun_12(x1,x2,x4);}
 return r;}

extern OBJ _ATransAnFun_5(OBJ x1) /* format */
{OBJ r;
 CPCLS(__ATransAnFun_9,1);
 FREE(x1,1);
 r=(*(OBJ(*)(OBJ,OBJ))METHOD(__ATransAnFun_9,1))(__ATransAnFun_9,__ABUILTIN_20);
 return r;}

extern OBJ _ATransAnFun_6(OBJ x1,OBJ x2,OBJ x3) /* newTypeStore */
{OBJ r;
 {OBJ x9;OBJ x13;OBJ x15;OBJ x20;
  if(ISPRM(x3)){
   x9=__ATransAn_8;
  }else{
   {OBJ x7=FLD1(x3,4);
    COPY(x7,1);
    x9=x7;}}
  {OBJ x10=FLD(x1,1);
   if(EXPRD(x1,1)){
    x13=x10;
    DSPRD(x1);
   }else{
    x13=x10;
    FRPRD(x1,1);}}
  if(ISPRD(x9)&&(ISTGPRD(x9,2))){
   x15=__ABUILTIN_5;
  }else{
   x15=__ABUILTIN_3;}
  if(ISTGPRM(x15,1)){
   if(ISPRD(x9)&&(ISTGPRD(x9,2))){
    {OBJ x16=FLD(x9,1);
     if(EXPRD(x9,1)){
      {OBJ x17;
       x17=x16;
       RPRD(x9,x20);
       FLD(x20,1)=_ANatMap_4(x13,x2,x17);}
     }else{
      CPPRD(x16,1);
      {OBJ x17;
       x17=x16;
       FRPRD(x9,1);PRD(1,2,x20);
       FLD(x20,1)=_ANatMap_4(x13,x2,x17);}}}
   }else{
    HLT("TransAn at <unknown> : undefined selection stores\'TransAn:transAn->natMap");}
  }else{
   FREE(x9,1);
   CPPRD(__ANatMap_3,1);
   {OBJ x19;
    x19=_ANatMap_4(x13,x2,__ANatMap_3);
    PRD(1,2,x20);FLD(x20,1)=x19;}}
  r=_AAn_9(x3,x20);}
 return r;}

extern OBJ _ATransAnFun_7(OBJ x1,OBJ x2) /* newConsStore */
{OBJ r;
 CPPRD(x2,3);
 {OBJ x3;OBJ x4;OBJ x5;OBJ x6;
  x3=_AAc_22(x2);
  PRD(1,1,x4);FLD(x4,1)=x1;
  x5=_AAc_21(x2);
  x6=_AAc_20(x2);
  if(ISTGPRD(x2,3)){
   {OBJ x10=FLD(x2,4);
    if(EXPRD(x2,1)){
     {OBJ x11;
      x11=x10;
      RPRD(x2,r);FREE(FLD(r,1),1);FRPRD(FLD(r,2),1);FLD(r,2)=x5;FLD(r,3)=x6;FLD(r,4)=x11;
      FLD(r,1)=_AAn_9(x3,x4);}
    }else{
     {OBJ x11;
      x11=x10;
      FRPRD(x2,1);PRD(4,3,r);FLD(r,2)=x5;FLD(r,3)=x6;FLD(r,4)=x11;
      FLD(r,1)=_AAn_9(x3,x4);}}}
  }else{
   HLT("Ac at <unknown> : undefined selection order\'Ac:dec->nat");}}
 return r;}

extern OBJ _ATransAnFun_9(OBJ x1) /* format'9 */
{OBJ r;
 CPPRD(__ATransAnFun_8,1);
 r=_AFmt_28(__ATransAnFun_8);
 return r;}

init_ATransAnFun()
{
 static int visited=0; if(visited) return; visited=1;
 init_AMap();
 init_ASetByBST();
 init_ABSTree();
 init_ATree();
 init_AIde();
 init_ABitset();
 init_AStore();
 init_AAc();
 init_ATransAn();
 init_AOption();
 init_AFormat();
 init_ANat();
 init_AString();
 init_ASeq();
 init_ACom();
 init_AStream();
 init_AVoid();
 init_AFmt();
 init_AChar();
 init_AFile();
 init_AInt();
 init_ANatMap();
 init_ASet();
 init_APair();
 init_AAn();
 init_ATypeAn();
 init_ASourceAn();
 init_AOptimAn();
 init_APragmaAn();
 init_AIdeMap();
 init_AAcFun();
 init_APreparedOptions();
 init_AOcOptions();
 init_AArray();
 LCLS(1,_ATransAnFun_9,__ATransAnFun_9);
 DEN("",__ATransAnFun_8);
 CLS(2,_ATransAnFun_7,__ATransAnFun_7);
 CLS(3,_ATransAnFun_6,__ATransAnFun_6);
 CLS(1,_ATransAnFun_5,__ATransAnFun_5);
 CLS(3,_ATransAnFun_4,__ATransAnFun_4);
 CLS(2,_ATransAnFun_3,__ATransAnFun_3);
 CLS(3,_ATransAnFun_2,__ATransAnFun_2);
 CLS(2,_ATransAnFun_1,__ATransAnFun_1);}

