

#include "BUILTIN.h"

#include "Nat.h"

#include "Array.h"
extern OBJ _ATransAn_2(OBJ);OBJ __ATransAn_2; /* typeStores */
extern OBJ _ATransAn_3(OBJ);OBJ __ATransAn_3; /* typeStores? */
extern OBJ _ATransAn_4(OBJ);OBJ __ATransAn_4; /* stores */
extern OBJ _ATransAn_5(OBJ);OBJ __ATransAn_5; /* constructorAn */
extern OBJ _ATransAn_6(OBJ);OBJ __ATransAn_6; /* constructorAn? */
extern OBJ _ATransAn_7(OBJ);OBJ __ATransAn_7; /* store */
OBJ __ATransAn_8; /* none */
extern OBJ _ATransAn_9(OBJ);OBJ __ATransAn_9; /* none? */

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

extern OBJ _ATransAn_3(OBJ x1) /* typeStores? */
{OBJ r;
 if(ISPRD(x1)&&(ISTGPRD(x1,2))){
  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 _ATransAn_4(OBJ x1) /* stores */
{OBJ r;
 if(ISPRD(x1)&&(ISTGPRD(x1,2))){
  {OBJ x2=FLD(x1,1);
   if(EXPRD(x1,1)){
    r=x2;
    DSPRDF(x1);
   }else{
    CPPRD(x2,1);
    r=x2;
    FRPRD(x1,1);}}
 }else{
  HLT("TransAn at <unknown> : undefined selection stores\'TransAn:transAn->natMap");}
 return r;}

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

extern OBJ _ATransAn_6(OBJ x1) /* constructorAn? */
{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 _ATransAn_7(OBJ x1) /* store */
{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("TransAn at <unknown> : undefined selection store\'TransAn:transAn->store");}
 return r;}

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


init_ATransAn()
{
 static int visited=0; if(visited) return; visited=1;
 init_AStore();
 init_ANatMap();
 init_ANat();
 init_AOption();
 init_ASet();
 init_ASeq();
 init_APair();
 init_AArray();
 init_AMap();
 init_ASetByBST();
 init_ABSTree();
 init_ATree();
 CLS(1,_ATransAn_9,__ATransAn_9);
 CLS(1,_ATransAn_7,__ATransAn_7);
 CLS(1,_ATransAn_6,__ATransAn_6);
 CLS(1,_ATransAn_5,__ATransAn_5);
 CLS(1,_ATransAn_4,__ATransAn_4);
 CLS(1,_ATransAn_3,__ATransAn_3);
 CLS(1,_ATransAn_2,__ATransAn_2);
 PRM1(__ATransAn_8);}

