

#include "BUILTIN.h"
extern OBJ __AOcPos_35;

#include "Nat.h"

#include "Char.h"
extern OBJ _AObjects_2(OBJ,OBJ);OBJ __AObjects_2; /* instPN */
extern OBJ _AObjects_3(OBJ);OBJ __AObjects_3; /* instPN? */
extern OBJ _AObjects_4(OBJ);OBJ __AObjects_4; /* pos */
extern OBJ _AObjects_5(OBJ);OBJ __AObjects_5; /* no */
extern OBJ _AObjects_7(OBJ,OBJ);OBJ __AObjects_7; /* sortPN */
extern OBJ _AObjects_8(OBJ);OBJ __AObjects_8; /* sortPN? */
extern OBJ _AObjects_9(OBJ);OBJ __AObjects_9; /* pos,1 */
extern OBJ _AObjects_10(OBJ);OBJ __AObjects_10; /* no,1 */
extern OBJ _AObjects_12(OBJ);OBJ __AObjects_12; /* inst */
extern OBJ _AObjects_13(OBJ);OBJ __AObjects_13; /* inst? */
extern OBJ _AObjects_14(OBJ);OBJ __AObjects_14; /* no,2 */
extern OBJ _AObjects_16(OBJ);OBJ __AObjects_16; /* struct */
extern OBJ _AObjects_17(OBJ);OBJ __AObjects_17; /* struct? */
extern OBJ _AObjects_18(OBJ);OBJ __AObjects_18; /* no,3 */
extern OBJ _AObjects_20(OBJ);OBJ __AObjects_20; /* impDecl */
extern OBJ _AObjects_21(OBJ);OBJ __AObjects_21; /* impDecl? */
extern OBJ _AObjects_22(OBJ);OBJ __AObjects_22; /* no,4 */
extern OBJ _AObjects_24(OBJ);OBJ __AObjects_24; /* decl */
extern OBJ _AObjects_25(OBJ);OBJ __AObjects_25; /* decl? */
extern OBJ _AObjects_26(OBJ);OBJ __AObjects_26; /* no,5 */
extern OBJ _AObjects_27(OBJ,OBJ);OBJ __AObjects_27; /* = */
extern OBJ _AObjects_28(OBJ,OBJ);OBJ __AObjects_28; /* =,1 */
OBJ __AObjects_29; /* mainStruct */
OBJ __AObjects_30; /* unparam */
extern OBJ _AObjects_31(OBJ,OBJ);OBJ __AObjects_31; /* =,2 */
extern OBJ _AObjects_32(OBJ,OBJ);OBJ __AObjects_32; /* =,3 */
OBJ __AObjects_33; /* noSortPN */
OBJ __AObjects_34; /* noInstPN */
extern OBJ _AObjects_35(OBJ);OBJ __AObjects_35; /* errInstPN */
extern OBJ _AObjects_36(OBJ,OBJ);OBJ __AObjects_36; /* =,4 */
extern OBJ _AObjects_37(OBJ,OBJ);OBJ __AObjects_37; /* =,5 */

extern OBJ _AObjects_2(OBJ x1,OBJ x2) /* instPN */
{OBJ r;
 PRD1(2,r);FLD1(r,1)=x1;FLD1(r,2)=x2;
 return r;}

extern OBJ _AObjects_3(OBJ x1) /* instPN? */
{OBJ r;
 FRPRD(x1,1);
 r=__ABUILTIN_5;
 return r;}

extern OBJ _AObjects_4(OBJ x1) /* pos */
{OBJ r;
 {OBJ x3=FLD1(x1,2);
  if(EXPRD(x1,1)){
   r=x3;
   DSPRDF(x1);
  }else{
   COPY(x3,1);
   r=x3;
   FRPRD(x1,1);}}
 return r;}

extern OBJ _AObjects_5(OBJ x1) /* no */
{OBJ r;
 {OBJ x2=FLD1(x1,1);
  if(EXPRD(x1,1)){
   r=x2;
   FREE(FLD1(x1,2),1);DSPRDF(x1);
  }else{
   r=x2;
   FRPRD(x1,1);}}
 return r;}

extern OBJ _AObjects_7(OBJ x1,OBJ x2) /* sortPN */
{OBJ r;
 PRD1(2,r);FLD1(r,1)=x1;FLD1(r,2)=x2;
 return r;}

extern OBJ _AObjects_8(OBJ x1) /* sortPN? */
{OBJ r;
 FRPRD(x1,1);
 r=__ABUILTIN_5;
 return r;}

extern OBJ _AObjects_9(OBJ x1) /* pos,1 */
{OBJ r;
 {OBJ x3=FLD1(x1,2);
  if(EXPRD(x1,1)){
   r=x3;
   DSPRDF(x1);
  }else{
   COPY(x3,1);
   r=x3;
   FRPRD(x1,1);}}
 return r;}

extern OBJ _AObjects_10(OBJ x1) /* no,1 */
{OBJ r;
 {OBJ x2=FLD1(x1,1);
  if(EXPRD(x1,1)){
   r=x2;
   FREE(FLD1(x1,2),1);DSPRDF(x1);
  }else{
   r=x2;
   FRPRD(x1,1);}}
 return r;}

extern OBJ _AObjects_12(OBJ x1) /* inst */
{OBJ r;
 r=x1;
 return r;}

extern OBJ _AObjects_13(OBJ x1) /* inst? */
{OBJ r;
 r=__ABUILTIN_5;
 return r;}

extern OBJ _AObjects_14(OBJ x1) /* no,2 */
{OBJ r;
 r=x1;
 return r;}

extern OBJ _AObjects_16(OBJ x1) /* struct */
{OBJ r;
 r=x1;
 return r;}

extern OBJ _AObjects_17(OBJ x1) /* struct? */
{OBJ r;
 r=__ABUILTIN_5;
 return r;}

extern OBJ _AObjects_18(OBJ x1) /* no,3 */
{OBJ r;
 r=x1;
 return r;}

extern OBJ _AObjects_20(OBJ x1) /* impDecl */
{OBJ r;
 r=x1;
 return r;}

extern OBJ _AObjects_21(OBJ x1) /* impDecl? */
{OBJ r;
 r=__ABUILTIN_5;
 return r;}

extern OBJ _AObjects_22(OBJ x1) /* no,4 */
{OBJ r;
 r=x1;
 return r;}

extern OBJ _AObjects_24(OBJ x1) /* decl */
{OBJ r;
 r=x1;
 return r;}

extern OBJ _AObjects_25(OBJ x1) /* decl? */
{OBJ r;
 r=__ABUILTIN_5;
 return r;}

extern OBJ _AObjects_26(OBJ x1) /* no,5 */
{OBJ r;
 r=x1;
 return r;}

extern OBJ _AObjects_27(OBJ x1,OBJ x2) /* = */
{OBJ r;
 ANat_76(x1,x2,r);
 return r;}

extern OBJ _AObjects_28(OBJ x1,OBJ x2) /* =,1 */
{OBJ r;
 ANat_76(x1,x2,r);
 return r;}

extern OBJ _AObjects_31(OBJ x1,OBJ x2) /* =,2 */
{OBJ r;
 ANat_76(x1,x2,r);
 return r;}

extern OBJ _AObjects_32(OBJ x1,OBJ x2) /* =,3 */
{OBJ r;
 ANat_76(x1,x2,r);
 return r;}

extern OBJ _AObjects_35(OBJ x1) /* errInstPN */
{OBJ r;
 PRD1(2,r);FLD1(r,1)=__ANat_5;FLD1(r,2)=x1;
 return r;}

extern OBJ _AObjects_36(OBJ x1,OBJ x2) /* =,4 */
{OBJ r;
 {OBJ x9=FLD1(x1,1);
  if(EXPRD(x1,1)){
   FREE(FLD1(x1,2),1);DSPRDF(x1);
  }else{
   FRPRD(x1,1);}
  {OBJ x11=FLD1(x2,1);
   if(EXPRD(x2,1)){
    FREE(FLD1(x2,2),1);DSPRDF(x2);
   }else{
    FRPRD(x2,1);}
   {OBJ x13;
    x13=x11;
    ANat_76(x9,x13,r);}}}
 return r;}

extern OBJ _AObjects_37(OBJ x1,OBJ x2) /* =,5 */
{OBJ r;
 {OBJ x9=FLD1(x1,1);
  if(EXPRD(x1,1)){
   FREE(FLD1(x1,2),1);DSPRDF(x1);
  }else{
   FRPRD(x1,1);}
  {OBJ x11=FLD1(x2,1);
   if(EXPRD(x2,1)){
    FREE(FLD1(x2,2),1);DSPRDF(x2);
   }else{
    FRPRD(x2,1);}
   {OBJ x13;
    x13=x11;
    ANat_76(x9,x13,r);}}}
 return r;}





init_AObjects()
{
 static int visited=0; if(visited) return; visited=1;
 init_AOcPos();
 init_ANat();
 init_AChar();
 init_ASeq();
 init_AOption();
 init_ASeqReduce();
 CLS(2,_AObjects_31,__AObjects_31);
 CLS(2,_AObjects_28,__AObjects_28);
 CLS(2,_AObjects_27,__AObjects_27);
 CLS(1,_AObjects_26,__AObjects_26);
 CLS(1,_AObjects_25,__AObjects_25);
 CLS(1,_AObjects_24,__AObjects_24);
 CLS(1,_AObjects_22,__AObjects_22);
 CLS(1,_AObjects_21,__AObjects_21);
 CLS(1,_AObjects_20,__AObjects_20);
 CLS(1,_AObjects_18,__AObjects_18);
 CLS(1,_AObjects_17,__AObjects_17);
 CLS(1,_AObjects_16,__AObjects_16);
 CLS(1,_AObjects_14,__AObjects_14);
 CLS(1,_AObjects_13,__AObjects_13);
 CLS(1,_AObjects_12,__AObjects_12);
 CLS(1,_AObjects_10,__AObjects_10);
 CLS(1,_AObjects_9,__AObjects_9);
 CLS(1,_AObjects_8,__AObjects_8);
 CLS(2,_AObjects_7,__AObjects_7);
 CLS(1,_AObjects_5,__AObjects_5);
 CLS(2,_AObjects_37,__AObjects_37);
 CLS(1,_AObjects_4,__AObjects_4);
 CLS(2,_AObjects_36,__AObjects_36);
 CLS(1,_AObjects_3,__AObjects_3);
 CLS(1,_AObjects_35,__AObjects_35);
 CLS(2,_AObjects_2,__AObjects_2);
 CLS(2,_AObjects_32,__AObjects_32);
 __AObjects_29=__ANat_5;
 __AObjects_30=__ANat_5;
 COPY(__AOcPos_35,1);
 PRD1(2,__AObjects_33);FLD1(__AObjects_33,1)=__ANat_5;FLD1(__AObjects_33,2)=__AOcPos_35;
 COPY(__AOcPos_35,1);
 PRD1(2,__AObjects_34);FLD1(__AObjects_34,1)=__ANat_5;FLD1(__AObjects_34,2)=__AOcPos_35;}

