

#include "BUILTIN.h"

#include "Bitset.h"

#include "Nat.h"

#include "Denotation.h"

#include "Char.h"

#include "Int.h"
extern OBJ _AAttributes_2(OBJ,OBJ,OBJ,OBJ,OBJ,OBJ,OBJ);OBJ __AAttributes_2; /* attr */
extern OBJ _AAttributes_3(OBJ);OBJ __AAttributes_3; /* attr? */
extern OBJ _AAttributes_4(OBJ);OBJ __AAttributes_4; /* isUsed4Generated */
extern OBJ _AAttributes_5(OBJ);OBJ __AAttributes_5; /* isUsed4Constr */
extern OBJ _AAttributes_6(OBJ);OBJ __AAttributes_6; /* isUsed4Op */
extern OBJ _AAttributes_7(OBJ);OBJ __AAttributes_7; /* isUnclosed */
extern OBJ _AAttributes_8(OBJ);OBJ __AAttributes_8; /* isClosed */
extern OBJ _AAttributes_9(OBJ);OBJ __AAttributes_9; /* isExported */
extern OBJ _AAttributes_10(OBJ);OBJ __AAttributes_10; /* isParameter */
OBJ __AAttributes_11; /* initAttr */
extern OBJ _AAttributes_12(OBJ,OBJ);OBJ __AAttributes_12; /* + */
extern OBJ _AAttributes_13(OBJ);OBJ __AAttributes_13; /* setParameter */
extern OBJ _AAttributes_14(OBJ);OBJ __AAttributes_14; /* setExported */
extern OBJ _AAttributes_15(OBJ);OBJ __AAttributes_15; /* setClosed */
extern OBJ _AAttributes_16(OBJ);OBJ __AAttributes_16; /* setUnclosed */
extern OBJ _AAttributes_17(OBJ);OBJ __AAttributes_17; /* setUsed4Op */
extern OBJ _AAttributes_18(OBJ);OBJ __AAttributes_18; /* setUsed4Constr */
extern OBJ _AAttributes_19(OBJ);OBJ __AAttributes_19; /* setUsed4Generated */
extern OBJ _AAttributes_20(OBJ);OBJ __AAttributes_20; /* ` */
extern OBJ _AAttributes_21(OBJ);OBJ __AAttributes_21; /* attr,1 */
extern OBJ _AAttributes_23(OBJ);OBJ __AAttributes_23; /* bitset */
OBJ __AAttributes_24; /* parameter */
OBJ __AAttributes_25; /* exported */
OBJ __AAttributes_26; /* closed */
OBJ __AAttributes_27; /* unclosed */
OBJ __AAttributes_28; /* used4Op */
OBJ __AAttributes_29; /* used4Constr */
OBJ __AAttributes_30; /* used4Generated */
OBJ __AAttributes_31; /* closedError */
extern OBJ _AAttributes_32(OBJ);OBJ __AAttributes_32; /* attr'32 */
extern OBJ _AAttributes_33(OBJ);OBJ __AAttributes_33; /* +'33 */
extern OBJ _AAttributes_34(OBJ);OBJ __AAttributes_34; /* setClosed'34 */
extern OBJ _AAttributes_35(OBJ);OBJ __AAttributes_35; /* setUnclosed'35 */
OBJ __AAttributes_36; /* `'36 */
OBJ __AAttributes_37; /* `'37 */
OBJ __AAttributes_38; /* `'38 */
OBJ __AAttributes_39; /* `'39 */
OBJ __AAttributes_40; /* `'40 */
OBJ __AAttributes_41; /* `'41 */
OBJ __AAttributes_42; /* `'42 */
OBJ __AAttributes_43; /* `'43 */
OBJ __AAttributes_44; /* `'44 */
OBJ __AAttributes_45; /* `'45 */
OBJ __AAttributes_46; /* `'46 */

extern OBJ _AAttributes_2(OBJ x1,OBJ x2,OBJ x3,OBJ x4,OBJ x5,OBJ x6,OBJ x7) /* attr */
{OBJ r;
 {OBJ x8;OBJ x9;OBJ x10;OBJ x11;OBJ x12;OBJ x13;
  if(ISTGPRM(x4,1)){
   CPCLS(__AAttributes_32,1);
   x8=(*(OBJ(*)(OBJ,OBJ))METHOD(__AAttributes_32,1))(__AAttributes_32,__ABUILTIN_20);
  }else{
   CPPRD(__ABitset_2,1);
   x8=__ABitset_2;}
  if(ISTGPRM(x3,1)){
   ABitset_3(__AAttributes_26,x8,x9);
  }else{
   x9=x8;}
  if(ISTGPRM(x7,1)){
   ABitset_3(__AAttributes_30,x9,x10);
  }else{
   x10=x9;}
  if(ISTGPRM(x6,1)){
   ABitset_3(__AAttributes_29,x10,x11);
  }else{
   x11=x10;}
  if(ISTGPRM(x5,1)){
   ABitset_3(__AAttributes_28,x11,x12);
  }else{
   x12=x11;}
  if(ISTGPRM(x2,1)){
   ABitset_3(__AAttributes_25,x12,x13);
  }else{
   x13=x12;}
  if(ISTGPRM(x1,1)){
   ABitset_3(__AAttributes_24,x13,r);
  }else{
   r=x13;}}
 return r;}

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

extern OBJ _AAttributes_4(OBJ x1) /* isUsed4Generated */
{OBJ r;
 ABitset_21(__AAttributes_30,x1,r);
 return r;}

extern OBJ _AAttributes_5(OBJ x1) /* isUsed4Constr */
{OBJ r;
 ABitset_21(__AAttributes_29,x1,r);
 return r;}

extern OBJ _AAttributes_6(OBJ x1) /* isUsed4Op */
{OBJ r;
 ABitset_21(__AAttributes_28,x1,r);
 return r;}

extern OBJ _AAttributes_7(OBJ x1) /* isUnclosed */
{OBJ r;
 ABitset_21(__AAttributes_27,x1,r);
 return r;}

extern OBJ _AAttributes_8(OBJ x1) /* isClosed */
{OBJ r;
 ABitset_21(__AAttributes_26,x1,r);
 return r;}

extern OBJ _AAttributes_9(OBJ x1) /* isExported */
{OBJ r;
 ABitset_21(__AAttributes_25,x1,r);
 return r;}

extern OBJ _AAttributes_10(OBJ x1) /* isParameter */
{OBJ r;
 ABitset_21(__AAttributes_24,x1,r);
 return r;}

extern OBJ _AAttributes_12(OBJ x1,OBJ x2) /* + */
{OBJ r;
 {OBJ x3;OBJ x4;OBJ x5;
  ABitset_16(x1,x2,x3);
  CPPRD(x3,1);
  ABitset_21(__AAttributes_26,x3,x4);
  if(ISTGPRM(x4,1)){
   CPPRD(x3,1);
   ABitset_21(__AAttributes_27,x3,x5);
  }else{
   x5=__ABUILTIN_3;}
  if(ISTGPRM(x5,1)){
   FRPRD(x3,1);
   CPCLS(__AAttributes_33,1);
   r=(*(OBJ(*)(OBJ,OBJ))METHOD(__AAttributes_33,1))(__AAttributes_33,__ABUILTIN_20);
  }else{
   r=x3;}}
 return r;}

extern OBJ _AAttributes_13(OBJ x1) /* setParameter */
{OBJ r;
 ABitset_3(__AAttributes_24,x1,r);
 return r;}

extern OBJ _AAttributes_14(OBJ x1) /* setExported */
{OBJ r;
 ABitset_3(__AAttributes_25,x1,r);
 return r;}

extern OBJ _AAttributes_15(OBJ x1) /* setClosed */
{OBJ r;
 CPPRD(x1,1);
 {OBJ x2;
  ABitset_21(__AAttributes_27,x1,x2);
  if(ISTGPRM(x2,1)){
   FRPRD(x1,1);
   CPCLS(__AAttributes_34,1);
   r=(*(OBJ(*)(OBJ,OBJ))METHOD(__AAttributes_34,1))(__AAttributes_34,__ABUILTIN_20);
  }else{
   ABitset_3(__AAttributes_26,x1,r);}}
 return r;}

extern OBJ _AAttributes_16(OBJ x1) /* setUnclosed */
{OBJ r;
 CPPRD(x1,1);
 {OBJ x2;
  ABitset_21(__AAttributes_26,x1,x2);
  if(ISTGPRM(x2,1)){
   FRPRD(x1,1);
   CPCLS(__AAttributes_35,1);
   r=(*(OBJ(*)(OBJ,OBJ))METHOD(__AAttributes_35,1))(__AAttributes_35,__ABUILTIN_20);
  }else{
   ABitset_3(__AAttributes_27,x1,r);}}
 return r;}

extern OBJ _AAttributes_17(OBJ x1) /* setUsed4Op */
{OBJ r;
 ABitset_3(__AAttributes_28,x1,r);
 return r;}

extern OBJ _AAttributes_18(OBJ x1) /* setUsed4Constr */
{OBJ r;
 ABitset_3(__AAttributes_29,x1,r);
 return r;}

extern OBJ _AAttributes_19(OBJ x1) /* setUsed4Generated */
{OBJ r;
 ABitset_3(__AAttributes_30,x1,r);
 return r;}

extern OBJ _AAttributes_20(OBJ x1) /* ` */
{OBJ r;
 CPPRD(x1,6);
 {OBJ x2;OBJ x3;OBJ x4;OBJ x5;OBJ x6;OBJ x7;OBJ x12;OBJ x11;OBJ x10;OBJ x9;OBJ x8;OBJ x14;OBJ x15;OBJ x16;OBJ x17;OBJ x18;OBJ x19;OBJ x20;OBJ x21;OBJ x22;OBJ x23;OBJ x24;OBJ x25;
  ABitset_21(__AAttributes_30,x1,x2);
  ABitset_21(__AAttributes_29,x1,x3);
  ABitset_21(__AAttributes_28,x1,x4);
  ABitset_21(__AAttributes_26,x1,x5);
  ABitset_21(__AAttributes_25,x1,x6);
  ABitset_21(__AAttributes_24,x1,x7);
  if(ISTGPRM(x7,1)){
   CPPRD(__AAttributes_41,1);
   x12=__AAttributes_41;
  }else{
   CPPRD(__AAttributes_37,1);
   x12=__AAttributes_37;}
  if(ISTGPRM(x6,1)){
   CPPRD(__AAttributes_40,1);
   x11=__AAttributes_40;
  }else{
   CPPRD(__AAttributes_37,1);
   x11=__AAttributes_37;}
  if(ISTGPRM(x4,1)){
   CPPRD(__AAttributes_39,1);
   x10=__AAttributes_39;
  }else{
   CPPRD(__AAttributes_37,1);
   x10=__AAttributes_37;}
  if(ISTGPRM(x3,1)){
   CPPRD(__AAttributes_38,1);
   x9=__AAttributes_38;
  }else{
   CPPRD(__AAttributes_37,1);
   x9=__AAttributes_37;}
  if(ISTGPRM(x2,1)){
   CPPRD(__AAttributes_36,1);
   x8=__AAttributes_36;
  }else{
   CPPRD(__AAttributes_37,1);
   x8=__AAttributes_37;}
  if(ISTGPRM(x5,1)){
   FRPRD(x1,1);
   CPPRD(__AAttributes_42,1);
   CPPRD(__AAttributes_44,1);
   CPPRD(__AAttributes_45,5);
   CPPRD(__AAttributes_46,1);
   x14=__AAttributes_42;
  }else{
   {OBJ x13;
    ABitset_21(__AAttributes_27,x1,x13);
    if(ISTGPRM(x13,1)){
     CPPRD(__AAttributes_43,1);
     CPPRD(__AAttributes_44,1);
     CPPRD(__AAttributes_45,5);
     CPPRD(__AAttributes_46,1);
     x14=__AAttributes_43;
    }else{
     CPPRD(__AAttributes_37,1);
     CPPRD(__AAttributes_44,1);
     CPPRD(__AAttributes_45,5);
     CPPRD(__AAttributes_46,1);
     x14=__AAttributes_37;}}}
  ADenotation_4(x8,__AAttributes_44,x15);
  ADenotation_4(__AAttributes_45,x14,x16);
  ADenotation_4(__AAttributes_45,x15,x17);
  ADenotation_4(x11,x16,x18);
  ADenotation_4(x9,x17,x19);
  ADenotation_4(__AAttributes_45,x18,x20);
  ADenotation_4(__AAttributes_45,x19,x21);
  ADenotation_4(x12,x20,x22);
  ADenotation_4(x10,x21,x23);
  ADenotation_4(__AAttributes_46,x22,x24);
  ADenotation_4(__AAttributes_45,x23,x25);
  ADenotation_4(x24,x25,r);}
 return r;}

extern OBJ _AAttributes_21(OBJ x1) /* attr,1 */
{OBJ r;
 r=x1;
 return r;}

extern OBJ _AAttributes_23(OBJ x1) /* bitset */
{OBJ r;
 r=x1;
 return r;}

extern OBJ _AAttributes_32(OBJ x1) /* attr'32 */
{OBJ r;
 CPPRD(__ABitset_2,1);
 ABitset_3(__AAttributes_27,__ABitset_2,r);
 return r;}

extern OBJ _AAttributes_33(OBJ x1) /* +'33 */
{OBJ r;
 CPPRD(__AAttributes_31,1);
 ABUILTIN_12(__AAttributes_31,r);
 return r;}

extern OBJ _AAttributes_34(OBJ x1) /* setClosed'34 */
{OBJ r;
 CPPRD(__AAttributes_31,1);
 ABUILTIN_12(__AAttributes_31,r);
 return r;}

extern OBJ _AAttributes_35(OBJ x1) /* setUnclosed'35 */
{OBJ r;
 CPPRD(__AAttributes_31,1);
 ABUILTIN_12(__AAttributes_31,r);
 return r;}









init_AAttributes()
{
 static int visited=0; if(visited) return; visited=1;
 init_ABitset();
 init_ANat();
 init_ADenotation();
 init_AChar();
 init_AOption();
 init_AInt();
 DEN("The closed and unclosed attribute cannot be set simultanously !",__AAttributes_31);
 CLS(1,_AAttributes_23,__AAttributes_23);
 CLS(1,_AAttributes_21,__AAttributes_21);
 CLS(1,_AAttributes_20,__AAttributes_20);
 CLS(1,_AAttributes_19,__AAttributes_19);
 CLS(1,_AAttributes_18,__AAttributes_18);
 CLS(1,_AAttributes_17,__AAttributes_17);
 CLS(1,_AAttributes_16,__AAttributes_16);
 CLS(1,_AAttributes_15,__AAttributes_15);
 DEN("(",__AAttributes_46);
 CLS(1,_AAttributes_14,__AAttributes_14);
 DEN(",",__AAttributes_45);
 CLS(1,_AAttributes_13,__AAttributes_13);
 DEN(")",__AAttributes_44);
 CLS(2,_AAttributes_12,__AAttributes_12);
 DEN("uncl",__AAttributes_43);
 DEN("cls",__AAttributes_42);
 CLS(1,_AAttributes_10,__AAttributes_10);
 DEN("par",__AAttributes_41);
 CLS(1,_AAttributes_9,__AAttributes_9);
 DEN("exp",__AAttributes_40);
 CLS(1,_AAttributes_8,__AAttributes_8);
 DEN("4Op",__AAttributes_39);
 CLS(1,_AAttributes_7,__AAttributes_7);
 DEN("4Con",__AAttributes_38);
 CLS(1,_AAttributes_6,__AAttributes_6);
 DEN("-",__AAttributes_37);
 CLS(1,_AAttributes_5,__AAttributes_5);
 DEN("4Gen",__AAttributes_36);
 CLS(1,_AAttributes_4,__AAttributes_4);
 LCLS(1,_AAttributes_35,__AAttributes_35);
 CLS(1,_AAttributes_3,__AAttributes_3);
 LCLS(1,_AAttributes_34,__AAttributes_34);
 CLS(7,_AAttributes_2,__AAttributes_2);
 LCLS(1,_AAttributes_33,__AAttributes_33);
 LCLS(1,_AAttributes_32,__AAttributes_32);
 CPPRD(__ABitset_2,1);
 __AAttributes_11=__ABitset_2;
 __AAttributes_24=__ANat_5;
 ANat_2(__AAttributes_24,__AAttributes_25);
 ANat_2(__AAttributes_25,__AAttributes_26);
 ANat_2(__AAttributes_26,__AAttributes_27);
 ANat_2(__AAttributes_27,__AAttributes_28);
 ANat_2(__AAttributes_28,__AAttributes_29);
 ANat_2(__AAttributes_29,__AAttributes_30);}

