

#include "BUILTIN.h"

#include "Nat.h"

#include "Char.h"

#include "Int.h"

#include "Array.h"
extern OBJ _AParameterTranslation_2(OBJ,OBJ,OBJ);OBJ __AParameterTranslation_2; /* sortInfo */
extern OBJ _AParameterTranslation_3(OBJ);OBJ __AParameterTranslation_3; /* sortInfo? */
extern OBJ _AParameterTranslation_4(OBJ);OBJ __AParameterTranslation_4; /* sortParamTypes */
extern OBJ _AParameterTranslation_5(OBJ);OBJ __AParameterTranslation_5; /* sortParamIdes */
extern OBJ _AParameterTranslation_6(OBJ);OBJ __AParameterTranslation_6; /* noParameters */
extern OBJ _AParameterTranslation_7(OBJ,OBJ,OBJ,OBJ);OBJ __AParameterTranslation_7; /* restrictedInfo */
extern OBJ _AParameterTranslation_8(OBJ);OBJ __AParameterTranslation_8; /* restrictedInfo? */
extern OBJ _AParameterTranslation_9(OBJ);OBJ __AParameterTranslation_9; /* opParamTypes */
extern OBJ _AParameterTranslation_13(OBJ,OBJ,OBJ,OBJ,OBJ,OBJ);OBJ __AParameterTranslation_13; /* fullInfo */
extern OBJ _AParameterTranslation_14(OBJ);OBJ __AParameterTranslation_14; /* fullInfo? */
extern OBJ _AParameterTranslation_15(OBJ);OBJ __AParameterTranslation_15; /* opParamDecs */
extern OBJ _AParameterTranslation_17(OBJ);OBJ __AParameterTranslation_17; /* opParamIdes */
extern OBJ _AParameterTranslation_21(OBJ);OBJ __AParameterTranslation_21; /* opParams? */

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

extern OBJ _AParameterTranslation_3(OBJ x1) /* sortInfo? */
{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 _AParameterTranslation_4(OBJ x1) /* sortParamTypes */
{OBJ r;
 {OBJ x4=FLD(x1,3);
  if(EXPRD(x1,1)){
   r=x4;
   FLD(x1,3)=NIL;DSPRD(x1);
  }else{
   COPY(x4,1);
   r=x4;
   FRPRD(x1,1);}}
 return r;}

extern OBJ _AParameterTranslation_5(OBJ x1) /* sortParamIdes */
{OBJ r;
 {OBJ x3=FLD(x1,2);
  if(EXPRD(x1,1)){
   r=x3;
   FLD(x1,2)=NIL;DSPRD(x1);
  }else{
   COPY(x3,1);
   r=x3;
   FRPRD(x1,1);}}
 return r;}

extern OBJ _AParameterTranslation_6(OBJ x1) /* noParameters */
{OBJ r;
 {OBJ x2=FLD(x1,1);
  if(EXPRD(x1,1)){
   r=x2;
   DSPRD(x1);
  }else{
   r=x2;
   FRPRD(x1,1);}}
 return r;}

extern OBJ _AParameterTranslation_7(OBJ x1,OBJ x2,OBJ x3,OBJ x4) /* restrictedInfo */
{OBJ r;
 PRD(4,1,r);FLD(r,1)=x1;FLD(r,2)=x2;FLD(r,3)=x3;FLD(r,4)=x4;
 return r;}

extern OBJ _AParameterTranslation_8(OBJ x1) /* restrictedInfo? */
{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 _AParameterTranslation_9(OBJ x1) /* opParamTypes */
{OBJ r;
 switch(TGPRD(x1)){
  case 1:
   {OBJ x11=FLD(x1,4);
    if(EXPRD(x1,1)){
     r=x11;
     FLD(x1,4)=NIL;DSPRD(x1);
    }else{
     COPY(x11,1);
     r=x11;
     FRPRD(x1,1);}}break;
  case 2:
   HLT("ParameterTranslation at <unknown> : undefined selection opParamTypes\'ParameterTranslation:info->seq");break;
  default: 
   {OBJ x6=FLD(x1,5);
    if(EXPRD(x1,1)){
     r=x6;
     FLD(x1,5)=NIL;DSPRD(x1);
    }else{
     COPY(x6,1);
     r=x6;
     FRPRD(x1,1);}}}
 return r;}

extern OBJ _AParameterTranslation_13(OBJ x1,OBJ x2,OBJ x3,OBJ x4,OBJ x5,OBJ x6) /* fullInfo */
{OBJ r;
 PRD(6,0,r);FLD(r,1)=x1;FLD(r,2)=x2;FLD(r,3)=x3;FLD(r,4)=x4;FLD(r,5)=x5;FLD(r,6)=x6;
 return r;}

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

extern OBJ _AParameterTranslation_15(OBJ x1) /* opParamDecs */
{OBJ r;
 if(ISTGPRD(x1,0)){
  {OBJ x7=FLD(x1,6);
   if(EXPRD(x1,1)){
    r=x7;
    FLD(x1,6)=NIL;DSPRD(x1);
   }else{
    COPY(x7,1);
    r=x7;
    FRPRD(x1,1);}}
 }else{
  HLT("ParameterTranslation at <unknown> : undefined selection opParamDecs\'ParameterTranslation:info->seq");}
 return r;}

extern OBJ _AParameterTranslation_17(OBJ x1) /* opParamIdes */
{OBJ r;
 if(ISTGPRD(x1,0)){
  {OBJ x5=FLD(x1,4);
   if(EXPRD(x1,1)){
    r=x5;
    FLD(x1,4)=NIL;DSPRD(x1);
   }else{
    COPY(x5,1);
    r=x5;
    FRPRD(x1,1);}}
 }else{
  HLT("ParameterTranslation at <unknown> : undefined selection opParamIdes\'ParameterTranslation:info->seq");}
 return r;}

extern OBJ _AParameterTranslation_21(OBJ x1) /* opParams? */
{OBJ r;
 {OBJ x18;
  switch(TGPRD(x1)){
   case 1:
    {OBJ x11=FLD(x1,4);
     if(EXPRD(x1,1)){
      x18=x11;
      FLD(x1,4)=NIL;DSPRD(x1);
     }else{
      COPY(x11,1);
      x18=x11;
      FRPRD(x1,1);}}break;
   case 2:
    HLT("ParameterTranslation at <unknown> : undefined selection opParamTypes\'ParameterTranslation:info->seq");break;
   default: 
    {OBJ x6=FLD(x1,5);
     if(EXPRD(x1,1)){
      x18=x6;
      FLD(x1,5)=NIL;DSPRD(x1);
     }else{
      COPY(x6,1);
      x18=x6;
      FRPRD(x1,1);}}}
  if(ISPRM(x18)){
   r=__ABUILTIN_3;
  }else{
   if(EXPRD(x18,1)){
    DSPRD(x18);
   }else{
    DCPRD(x18,1);}
   r=__ABUILTIN_5;}}
 return r;}

init_AParameterTranslation()
{
 static int visited=0; if(visited) return; visited=1;
 init_ATree();
 init_ANat();
 init_ASeq();
 init_ATypeAn();
 init_AIde();
 init_AAc();
 init_ANatMap();
 init_AAn();
 init_ASourceAn();
 init_AOptimAn();
 init_ATransAn();
 init_APragmaAn();
 init_AOption();
 init_AStore();
 init_AFormat();
 init_AString();
 init_ACom();
 init_AStream();
 init_AVoid();
 init_AFmt();
 init_AChar();
 init_AFile();
 init_AInt();
 init_ASet();
 init_APair();
 init_AIdeMap();
 init_AArray();
 init_AMap();
 init_ASetByBST();
 init_ABSTree();
 CLS(1,_AParameterTranslation_21,__AParameterTranslation_21);
 CLS(1,_AParameterTranslation_17,__AParameterTranslation_17);
 CLS(1,_AParameterTranslation_15,__AParameterTranslation_15);
 CLS(1,_AParameterTranslation_14,__AParameterTranslation_14);
 CLS(6,_AParameterTranslation_13,__AParameterTranslation_13);
 CLS(1,_AParameterTranslation_9,__AParameterTranslation_9);
 CLS(1,_AParameterTranslation_8,__AParameterTranslation_8);
 CLS(4,_AParameterTranslation_7,__AParameterTranslation_7);
 CLS(1,_AParameterTranslation_6,__AParameterTranslation_6);
 CLS(1,_AParameterTranslation_5,__AParameterTranslation_5);
 CLS(1,_AParameterTranslation_4,__AParameterTranslation_4);
 CLS(1,_AParameterTranslation_3,__AParameterTranslation_3);
 CLS(3,_AParameterTranslation_2,__AParameterTranslation_2);}

