

#include "BUILTIN.h"
extern OBJ _ARel_7(OBJ,OBJ);extern OBJ __ARel_7;
extern OBJ _ARel_8(OBJ,OBJ,OBJ,OBJ,OBJ,OBJ);extern OBJ __ARel_8;
extern OBJ __ASeq_6;
extern TUP3 _ATriple_10(OBJ);extern OBJ __ATriple_10;
extern OBJ _AString_49(OBJ);extern OBJ __AString_49;

#include "Nat.h"

#include "Char.h"
extern OBJ _ARelReduce_7(OBJ,OBJ,OBJ,OBJ,OBJ);extern OBJ __ARelReduce_7;
extern OBJ _ASeqReduce_3(OBJ,OBJ,OBJ);extern OBJ __ASeqReduce_3;

#include "Denotation.h"
extern OBJ _AStringConv_1(OBJ);extern OBJ __AStringConv_1;
extern OBJ _ACompose_4(OBJ,OBJ,OBJ);extern OBJ __ACompose_4;
extern OBJ _ASeqConv_3(OBJ,OBJ,OBJ,OBJ,OBJ);extern OBJ __ASeqConv_3;
extern OBJ __ASeqConv_8;

#include "Int.h"
extern OBJ _ARelConv_6(OBJ,OBJ,OBJ);OBJ __ARelConv_6; /* asSeq */
extern OBJ _ARelConv_7(OBJ,OBJ,OBJ);OBJ __ARelConv_7; /* asRel */
extern OBJ _ARelConv_8(OBJ,OBJ,OBJ,OBJ,OBJ,OBJ,OBJ,OBJ,OBJ);OBJ __ARelConv_8; /* ` */
extern OBJ _ARelConv_9(OBJ,OBJ,OBJ,OBJ,OBJ,OBJ,OBJ);OBJ __ARelConv_9; /* `,1 */
extern OBJ _ARelConv_10(OBJ,OBJ,OBJ,OBJ,OBJ,OBJ,OBJ,OBJ,OBJ);OBJ __ARelConv_10; /* `,2 */
extern OBJ _ARelConv_11(OBJ,OBJ,OBJ,OBJ,OBJ,OBJ,OBJ);OBJ __ARelConv_11; /* `,3 */
extern OBJ _ARelConv_12(OBJ,OBJ,OBJ,OBJ,OBJ,OBJ);OBJ __ARelConv_12; /* `,4 */
extern OBJ _ARelConv_13(OBJ,OBJ,OBJ,OBJ,OBJ,OBJ);OBJ __ARelConv_13; /* `,5 */
extern OBJ _ARelConv_14(OBJ,OBJ,OBJ,OBJ);OBJ __ARelConv_14; /* asSeq'14 */
extern OBJ _ARelConv_15(OBJ,OBJ,OBJ,OBJ);OBJ __ARelConv_15; /* asRel'15 */
extern OBJ _ARelConv_16(OBJ,OBJ);OBJ __ARelConv_16; /* `,1'16 */
OBJ __ARelConv_17; /* `'17 */
OBJ __ARelConv_18; /* `'18 */
OBJ __ARelConv_19; /* `'19 */
OBJ __ARelConv_20; /* `'20 */
extern OBJ _ARelConv_21(OBJ,OBJ,OBJ,OBJ,OBJ,OBJ);OBJ __ARelConv_21; /* `'21 */
extern OBJ _ARelConv_22(OBJ,OBJ,OBJ,OBJ);OBJ __ARelConv_22; /* `,3'22 */
OBJ __ARelConv_23; /* `,4'23 */
OBJ __ARelConv_24; /* `,4'24 */

extern OBJ _ARelConv_6(OBJ x1,OBJ x2,OBJ x3) /* asSeq */
{OBJ r;
 CPCLS(__ARelConv_14,1);
 r=_ARelReduce_7(x1,x2,__ARelConv_14,__ASeq_6,x3);
 return r;}

extern OBJ _ARelConv_7(OBJ x1,OBJ x2,OBJ x3) /* asRel */
{OBJ r;
 CPCLS(__ARelConv_15,1);
 CPCLS(x1,1);
 CPCLS(x2,1);
 {OBJ x4;OBJ x5;
  x4=_ARel_7(x1,x2);
  x5=(*(OBJ(*)(OBJ,OBJ,OBJ))METHOD(__ARelConv_15,2))(__ARelConv_15,x1,x2);
  r=_ASeqReduce_3(x5,x4,x3);}
 return r;}

extern OBJ _ARelConv_8(OBJ x1,OBJ x2,OBJ x3,OBJ x4,OBJ x5,OBJ x6,OBJ x7,OBJ x8,OBJ x9) /* ` */
{OBJ r;
 CPCLS(__ARelConv_21,1);
 {OBJ x10;
  x10=(*(OBJ(*)(OBJ,OBJ,OBJ,OBJ))METHOD(__ARelConv_21,3))(__ARelConv_21,x6,x7,x8);
  r=_ARelConv_9(x1,x2,x3,x4,x5,x10,x9);}
 return r;}

extern OBJ _ARelConv_9(OBJ x1,OBJ x2,OBJ x3,OBJ x4,OBJ x5,OBJ x6,OBJ x7) /* `,1 */
{OBJ r;
 CPCLS(__ARelConv_14,1);
 CPCLS(__ARelConv_16,1);
 {OBJ x8;OBJ x9;
  x8=_ARelReduce_7(x1,x2,__ARelConv_14,__ASeq_6,x7);
  x9=(*(OBJ(*)(OBJ,OBJ))METHOD(__ARelConv_16,1))(__ARelConv_16,x6);
  r=_ASeqConv_3(x3,x4,x5,x9,x8);}
 return r;}

extern OBJ _ARelConv_10(OBJ x1,OBJ x2,OBJ x3,OBJ x4,OBJ x5,OBJ x6,OBJ x7,OBJ x8,OBJ x9) /* `,2 */
{OBJ r;
 CPCLS(__ARelConv_21,1);
 CPCLS(__AStringConv_1,3);
 CPCLS(__ACompose_4,3);
 {OBJ x10;OBJ x11;OBJ x12;OBJ x13;OBJ x14;
  x10=(*(OBJ(*)(OBJ,OBJ,OBJ))METHOD(__ACompose_4,2))(__ACompose_4,__AStringConv_1,x6);
  x11=(*(OBJ(*)(OBJ,OBJ,OBJ))METHOD(__ACompose_4,2))(__ACompose_4,__AStringConv_1,x7);
  x12=(*(OBJ(*)(OBJ,OBJ,OBJ))METHOD(__ACompose_4,2))(__ACompose_4,__AStringConv_1,x8);
  x13=(*(OBJ(*)(OBJ,OBJ,OBJ,OBJ))METHOD(__ARelConv_21,3))(__ARelConv_21,x10,x11,x12);
  x14=_ARelConv_9(x1,x2,x3,x4,x5,x13,x9);
  r=_AString_49(x14);}
 return r;}

extern OBJ _ARelConv_11(OBJ x1,OBJ x2,OBJ x3,OBJ x4,OBJ x5,OBJ x6,OBJ x7) /* `,3 */
{OBJ r;
 CPCLS(__ARelConv_22,1);
 {OBJ x8;OBJ x9;
  x8=(*(OBJ(*)(OBJ,OBJ))METHOD(__ARelConv_22,1))(__ARelConv_22,x6);
  x9=_ARelConv_9(x1,x2,x3,x4,x5,x8,x7);
  r=_AString_49(x9);}
 return r;}

extern OBJ _ARelConv_12(OBJ x1,OBJ x2,OBJ x3,OBJ x4,OBJ x5,OBJ x6) /* `,4 */
{OBJ r;
 CPCLS(__ARelConv_21,1);
 CPPRD(__ARelConv_23,1);
 CPPRD(__ARelConv_24,1);
 CPPRD(__ASeqConv_8,1);
 {OBJ x7;
  x7=(*(OBJ(*)(OBJ,OBJ,OBJ,OBJ))METHOD(__ARelConv_21,3))(__ARelConv_21,x3,x4,x5);
  r=_ARelConv_9(x1,x2,__ARelConv_23,__ASeqConv_8,__ARelConv_24,x7,x6);}
 return r;}

extern OBJ _ARelConv_13(OBJ x1,OBJ x2,OBJ x3,OBJ x4,OBJ x5,OBJ x6) /* `,5 */
{OBJ r;
 CPPRD(__ARelConv_23,1);
 CPPRD(__ARelConv_24,1);
 CPPRD(__ASeqConv_8,1);
 r=_ARelConv_10(x1,x2,__ARelConv_23,__ASeqConv_8,__ARelConv_24,x3,x4,x5,x6);
 return r;}

extern OBJ _ARelConv_14(OBJ x1,OBJ x2,OBJ x3,OBJ x4) /* asSeq'14 */
{OBJ r;
 {OBJ x5;
  PRD1(3,x5);FLD1(x5,1)=x1;FLD1(x5,2)=x2;FLD1(x5,3)=x3;
  PRD1(2,r);FLD1(r,1)=x5;FLD1(r,2)=x4;}
 return r;}

extern OBJ _ARelConv_15(OBJ x1,OBJ x2,OBJ x3,OBJ x4) /* asRel'15 */
{OBJ r;
 {TUP3 x14;
  x14=_ATriple_10(x3);
  r=_ARel_8(x1,x2,x14.c1,x14.c2,x14.c3,x4);}
 return r;}

extern OBJ _ARelConv_16(OBJ x1,OBJ x2) /* `,1'16 */
{OBJ r;
 {TUP3 x4;
  x4=_ATriple_10(x2);
  r=(*(OBJ(*)(OBJ,OBJ,OBJ,OBJ))METHOD(x1,3))(x1,x4.c1,x4.c2,x4.c3);}
 return r;}

extern OBJ _ARelConv_21(OBJ x1,OBJ x2,OBJ x3,OBJ x4,OBJ x5,OBJ x6) /* `'21 */
{OBJ r;
 CPPRD(__ARelConv_17,1);
 CPPRD(__ARelConv_18,1);
 CPPRD(__ARelConv_19,1);
 CPPRD(__ARelConv_20,1);
 {OBJ x7;OBJ x8;OBJ x9;OBJ x10;OBJ x11;OBJ x12;OBJ x13;OBJ x14;
  x7=(*(OBJ(*)(OBJ,OBJ))METHOD(x1,1))(x1,x4);
  x8=(*(OBJ(*)(OBJ,OBJ))METHOD(x2,1))(x2,x5);
  x9=(*(OBJ(*)(OBJ,OBJ))METHOD(x3,1))(x3,x6);
  ADenotation_4(x9,__ARelConv_17,x10);
  ADenotation_4(__ARelConv_18,x10,x11);
  ADenotation_4(x8,x11,x12);
  ADenotation_4(__ARelConv_19,x12,x13);
  ADenotation_4(x7,x13,x14);
  ADenotation_4(__ARelConv_20,x14,r);}
 return r;}

extern OBJ _ARelConv_22(OBJ x1,OBJ x2,OBJ x3,OBJ x4) /* `,3'22 */
{OBJ r;
 {OBJ x5;
  x5=(*(OBJ(*)(OBJ,OBJ,OBJ,OBJ))METHOD(x1,3))(x1,x2,x3,x4);
  r=_AStringConv_1(x5);}
 return r;}

static OBJ _mt_6_0_3(OBJ t,OBJ t1,OBJ t2,OBJ t3) 
{OBJ r;
 DPCLS(t,r);
 INCCLS(r,0,3);
 FLDCLS(r,1)=t1;
 FLDCLS(r,2)=t2;
 FLDCLS(r,3)=t3;
 return r;}

static OBJ _mt_6_0_5(OBJ t,OBJ t1,OBJ t2,OBJ t3,OBJ t4,OBJ t5) 
{OBJ r;
 DPCLS(t,r);
 INCCLS(r,0,5);
 FLDCLS(r,1)=t1;
 FLDCLS(r,2)=t2;
 FLDCLS(r,3)=t3;
 FLDCLS(r,4)=t4;
 FLDCLS(r,5)=t5;
 return r;}

static OBJ _mt_6_2_3(OBJ t,OBJ t1,OBJ t2,OBJ t3) 
{OBJ r;
 if(EXCLS(t)){
  r=t;
 }else{
  DPCLS(t,r);
  FLDCLS(r,1)=FLDCLS(t,1);
  FLDCLS(r,2)=FLDCLS(t,2);
  COPY(FLDCLS(r,1),1);
  COPY(FLDCLS(r,2),1);}
 INCCLS(r,2,3);
 FLDCLS(r,3)=t1;
 FLDCLS(r,4)=t2;
 FLDCLS(r,5)=t3;
 return r;}

static OBJ _mt_6_3_3(OBJ t,OBJ t1,OBJ t2,OBJ t3) 
{OBJ r;
 if(EXCLS(t)){
  DSCLSF(t);
 }else{
  COPY(FLDCLS(t,1),1);
  COPY(FLDCLS(t,2),1);
  COPY(FLDCLS(t,3),1);
  DCCLS(t,1);}
 r=(*(OBJ(*)(OBJ,OBJ,OBJ,OBJ,OBJ,OBJ))ENTRY(t))(FLDCLS(t,1),FLDCLS(t,2),FLDCLS(t,3),t1,t2,t3);
 return r;}

static OBJ _mt_6_5_1(OBJ t,OBJ t1) 
{OBJ r;
 if(EXCLS(t)){
  DSCLSF(t);
 }else{
  COPY(FLDCLS(t,1),1);
  COPY(FLDCLS(t,2),1);
  COPY(FLDCLS(t,3),1);
  COPY(FLDCLS(t,4),1);
  COPY(FLDCLS(t,5),1);
  DCCLS(t,1);}
 r=(*(OBJ(*)(OBJ,OBJ,OBJ,OBJ,OBJ,OBJ))ENTRY(t))(FLDCLS(t,1),FLDCLS(t,2),FLDCLS(t,3),FLDCLS(t,4),FLDCLS(t,5),t1);
 return r;}
static OBJ _mt_6_5_1_l(OBJ t,OBJ t1) 
{OBJ r;
 r=(*(OBJ(*)(OBJ,OBJ,OBJ,OBJ,OBJ,OBJ))ENTRY(t))(FLDCLS(t,1),FLDCLS(t,2),FLDCLS(t,3),FLDCLS(t,4),FLDCLS(t,5),t1);
 if(EXCLS(t)){
  DSCLSF(t);
 }else{
  DCCLS(t,1);
  FLDCLS(t,1)=NIL;FLDCLS(t,2)=NIL;FLDCLS(t,3)=NIL;FLDCLS(t,4)=NIL;FLDCLS(t,5)=NIL;
  COPY(r,1);LZYCLS(t,r);}
 return r;}

static OBJ _mt_7_0_2(OBJ t,OBJ t1,OBJ t2) 
{OBJ r;
 DPCLS(t,r);
 INCCLS(r,0,2);
 FLDCLS(r,1)=t1;
 FLDCLS(r,2)=t2;
 return r;}

static OBJ _mt_7_0_5(OBJ t,OBJ t1,OBJ t2,OBJ t3,OBJ t4,OBJ t5) 
{OBJ r;
 DPCLS(t,r);
 INCCLS(r,0,5);
 FLDCLS(r,1)=t1;
 FLDCLS(r,2)=t2;
 FLDCLS(r,3)=t3;
 FLDCLS(r,4)=t4;
 FLDCLS(r,5)=t5;
 return r;}

static OBJ _mt_7_0_6(OBJ t,OBJ t1,OBJ t2,OBJ t3,OBJ t4,OBJ t5,OBJ t6) 
{OBJ r;
 DPCLS(t,r);
 INCCLS(r,0,6);
 FLDCLS(r,1)=t1;
 FLDCLS(r,2)=t2;
 FLDCLS(r,3)=t3;
 FLDCLS(r,4)=t4;
 FLDCLS(r,5)=t5;
 FLDCLS(r,6)=t6;
 return r;}

static OBJ _mt_7_2_3(OBJ t,OBJ t1,OBJ t2,OBJ t3) 
{OBJ r;
 if(EXCLS(t)){
  r=t;
 }else{
  DPCLS(t,r);
  FLDCLS(r,1)=FLDCLS(t,1);
  FLDCLS(r,2)=FLDCLS(t,2);
  COPY(FLDCLS(r,1),1);
  COPY(FLDCLS(r,2),1);}
 INCCLS(r,2,3);
 FLDCLS(r,3)=t1;
 FLDCLS(r,4)=t2;
 FLDCLS(r,5)=t3;
 return r;}

static OBJ _mt_7_2_4(OBJ t,OBJ t1,OBJ t2,OBJ t3,OBJ t4) 
{OBJ r;
 if(EXCLS(t)){
  r=t;
 }else{
  DPCLS(t,r);
  FLDCLS(r,1)=FLDCLS(t,1);
  FLDCLS(r,2)=FLDCLS(t,2);
  COPY(FLDCLS(r,1),1);
  COPY(FLDCLS(r,2),1);}
 INCCLS(r,2,4);
 FLDCLS(r,3)=t1;
 FLDCLS(r,4)=t2;
 FLDCLS(r,5)=t3;
 FLDCLS(r,6)=t4;
 return r;}

static OBJ _mt_7_2_5(OBJ t,OBJ t1,OBJ t2,OBJ t3,OBJ t4,OBJ t5) 
{OBJ r;
 if(EXCLS(t)){
  DSCLSF(t);
 }else{
  COPY(FLDCLS(t,1),1);
  COPY(FLDCLS(t,2),1);
  DCCLS(t,1);}
 r=(*(OBJ(*)(OBJ,OBJ,OBJ,OBJ,OBJ,OBJ,OBJ))ENTRY(t))(FLDCLS(t,1),FLDCLS(t,2),t1,t2,t3,t4,t5);
 return r;}

static OBJ _mt_7_5_1(OBJ t,OBJ t1) 
{OBJ r;
 if(EXCLS(t)){
  r=t;
 }else{
  DPCLS(t,r);
  FLDCLS(r,1)=FLDCLS(t,1);
  FLDCLS(r,2)=FLDCLS(t,2);
  FLDCLS(r,3)=FLDCLS(t,3);
  FLDCLS(r,4)=FLDCLS(t,4);
  FLDCLS(r,5)=FLDCLS(t,5);
  COPY(FLDCLS(r,1),1);
  COPY(FLDCLS(r,2),1);
  COPY(FLDCLS(r,3),1);
  COPY(FLDCLS(r,4),1);
  COPY(FLDCLS(r,5),1);}
 INCCLS(r,5,1);
 FLDCLS(r,6)=t1;
 return r;}

static OBJ _mt_7_5_2(OBJ t,OBJ t1,OBJ t2) 
{OBJ r;
 if(EXCLS(t)){
  DSCLSF(t);
 }else{
  COPY(FLDCLS(t,1),1);
  COPY(FLDCLS(t,2),1);
  COPY(FLDCLS(t,3),1);
  COPY(FLDCLS(t,4),1);
  COPY(FLDCLS(t,5),1);
  DCCLS(t,1);}
 r=(*(OBJ(*)(OBJ,OBJ,OBJ,OBJ,OBJ,OBJ,OBJ))ENTRY(t))(FLDCLS(t,1),FLDCLS(t,2),FLDCLS(t,3),FLDCLS(t,4),FLDCLS(t,5),t1,t2);
 return r;}

static OBJ _mt_7_6_1(OBJ t,OBJ t1) 
{OBJ r;
 if(EXCLS(t)){
  DSCLSF(t);
 }else{
  COPY(FLDCLS(t,1),1);
  COPY(FLDCLS(t,2),1);
  COPY(FLDCLS(t,3),1);
  COPY(FLDCLS(t,4),1);
  COPY(FLDCLS(t,5),1);
  COPY(FLDCLS(t,6),1);
  DCCLS(t,1);}
 r=(*(OBJ(*)(OBJ,OBJ,OBJ,OBJ,OBJ,OBJ,OBJ))ENTRY(t))(FLDCLS(t,1),FLDCLS(t,2),FLDCLS(t,3),FLDCLS(t,4),FLDCLS(t,5),FLDCLS(t,6),t1);
 return r;}
static OBJ _mt_7_6_1_l(OBJ t,OBJ t1) 
{OBJ r;
 r=(*(OBJ(*)(OBJ,OBJ,OBJ,OBJ,OBJ,OBJ,OBJ))ENTRY(t))(FLDCLS(t,1),FLDCLS(t,2),FLDCLS(t,3),FLDCLS(t,4),FLDCLS(t,5),FLDCLS(t,6),t1);
 if(EXCLS(t)){
  DSCLSF(t);
 }else{
  DCCLS(t,1);
  FLDCLS(t,1)=NIL;FLDCLS(t,2)=NIL;FLDCLS(t,3)=NIL;FLDCLS(t,4)=NIL;FLDCLS(t,5)=NIL;FLDCLS(t,6)=NIL;
  COPY(r,1);LZYCLS(t,r);}
 return r;}

static OBJ _mt_9_0_2(OBJ t,OBJ t1,OBJ t2) 
{OBJ r;
 DPCLS(t,r);
 INCCLS(r,0,2);
 FLDCLS(r,1)=t1;
 FLDCLS(r,2)=t2;
 return r;}

static OBJ _mt_9_0_5(OBJ t,OBJ t1,OBJ t2,OBJ t3,OBJ t4,OBJ t5) 
{OBJ r;
 DPCLS(t,r);
 INCCLS(r,0,5);
 FLDCLS(r,1)=t1;
 FLDCLS(r,2)=t2;
 FLDCLS(r,3)=t3;
 FLDCLS(r,4)=t4;
 FLDCLS(r,5)=t5;
 return r;}

static OBJ _mt_9_0_8(OBJ t,OBJ t1,OBJ t2,OBJ t3,OBJ t4,OBJ t5,OBJ t6,OBJ t7,OBJ t8) 
{OBJ r;
 DPCLS(t,r);
 INCCLS(r,0,8);
 FLDCLS(r,1)=t1;
 FLDCLS(r,2)=t2;
 FLDCLS(r,3)=t3;
 FLDCLS(r,4)=t4;
 FLDCLS(r,5)=t5;
 FLDCLS(r,6)=t6;
 FLDCLS(r,7)=t7;
 FLDCLS(r,8)=t8;
 return r;}

static OBJ _mt_9_0_9(OBJ t,OBJ t1,OBJ t2,OBJ t3,OBJ t4,OBJ t5,OBJ t6,OBJ t7,OBJ t8,OBJ t9) 
{OBJ r;
 DCCLS(t,1);
 r=(*(OBJ(*)(OBJ,OBJ,OBJ,OBJ,OBJ,OBJ,OBJ,OBJ,OBJ))ENTRY(t))(t1,t2,t3,t4,t5,t6,t7,t8,t9);
 return r;}

static OBJ _mt_9_2_3(OBJ t,OBJ t1,OBJ t2,OBJ t3) 
{OBJ r;
 if(EXCLS(t)){
  r=t;
 }else{
  DPCLS(t,r);
  FLDCLS(r,1)=FLDCLS(t,1);
  FLDCLS(r,2)=FLDCLS(t,2);
  COPY(FLDCLS(r,1),1);
  COPY(FLDCLS(r,2),1);}
 INCCLS(r,2,3);
 FLDCLS(r,3)=t1;
 FLDCLS(r,4)=t2;
 FLDCLS(r,5)=t3;
 return r;}

static OBJ _mt_9_2_6(OBJ t,OBJ t1,OBJ t2,OBJ t3,OBJ t4,OBJ t5,OBJ t6) 
{OBJ r;
 if(EXCLS(t)){
  r=t;
 }else{
  DPCLS(t,r);
  FLDCLS(r,1)=FLDCLS(t,1);
  FLDCLS(r,2)=FLDCLS(t,2);
  COPY(FLDCLS(r,1),1);
  COPY(FLDCLS(r,2),1);}
 INCCLS(r,2,6);
 FLDCLS(r,3)=t1;
 FLDCLS(r,4)=t2;
 FLDCLS(r,5)=t3;
 FLDCLS(r,6)=t4;
 FLDCLS(r,7)=t5;
 FLDCLS(r,8)=t6;
 return r;}

static OBJ _mt_9_2_7(OBJ t,OBJ t1,OBJ t2,OBJ t3,OBJ t4,OBJ t5,OBJ t6,OBJ t7) 
{OBJ r;
 if(EXCLS(t)){
  DSCLSF(t);
 }else{
  COPY(FLDCLS(t,1),1);
  COPY(FLDCLS(t,2),1);
  DCCLS(t,1);}
 r=(*(OBJ(*)(OBJ,OBJ,OBJ,OBJ,OBJ,OBJ,OBJ,OBJ,OBJ))ENTRY(t))(FLDCLS(t,1),FLDCLS(t,2),t1,t2,t3,t4,t5,t6,t7);
 return r;}

static OBJ _mt_9_5_3(OBJ t,OBJ t1,OBJ t2,OBJ t3) 
{OBJ r;
 if(EXCLS(t)){
  r=t;
 }else{
  DPCLS(t,r);
  FLDCLS(r,1)=FLDCLS(t,1);
  FLDCLS(r,2)=FLDCLS(t,2);
  FLDCLS(r,3)=FLDCLS(t,3);
  FLDCLS(r,4)=FLDCLS(t,4);
  FLDCLS(r,5)=FLDCLS(t,5);
  COPY(FLDCLS(r,1),1);
  COPY(FLDCLS(r,2),1);
  COPY(FLDCLS(r,3),1);
  COPY(FLDCLS(r,4),1);
  COPY(FLDCLS(r,5),1);}
 INCCLS(r,5,3);
 FLDCLS(r,6)=t1;
 FLDCLS(r,7)=t2;
 FLDCLS(r,8)=t3;
 return r;}

static OBJ _mt_9_5_4(OBJ t,OBJ t1,OBJ t2,OBJ t3,OBJ t4) 
{OBJ r;
 if(EXCLS(t)){
  DSCLSF(t);
 }else{
  COPY(FLDCLS(t,1),1);
  COPY(FLDCLS(t,2),1);
  COPY(FLDCLS(t,3),1);
  COPY(FLDCLS(t,4),1);
  COPY(FLDCLS(t,5),1);
  DCCLS(t,1);}
 r=(*(OBJ(*)(OBJ,OBJ,OBJ,OBJ,OBJ,OBJ,OBJ,OBJ,OBJ))ENTRY(t))(FLDCLS(t,1),FLDCLS(t,2),FLDCLS(t,3),FLDCLS(t,4),FLDCLS(t,5),t1,t2,t3,t4);
 return r;}

static OBJ _mt_9_8_1(OBJ t,OBJ t1) 
{OBJ r;
 if(EXCLS(t)){
  DSCLSF(t);
 }else{
  COPY(FLDCLS(t,1),1);
  COPY(FLDCLS(t,2),1);
  COPY(FLDCLS(t,3),1);
  COPY(FLDCLS(t,4),1);
  COPY(FLDCLS(t,5),1);
  COPY(FLDCLS(t,6),1);
  COPY(FLDCLS(t,7),1);
  COPY(FLDCLS(t,8),1);
  DCCLS(t,1);}
 r=(*(OBJ(*)(OBJ,OBJ,OBJ,OBJ,OBJ,OBJ,OBJ,OBJ,OBJ))ENTRY(t))(FLDCLS(t,1),FLDCLS(t,2),FLDCLS(t,3),FLDCLS(t,4),FLDCLS(t,5),FLDCLS(t,6),FLDCLS(t,7),FLDCLS(t,8),t1);
 return r;}
static OBJ _mt_9_8_1_l(OBJ t,OBJ t1) 
{OBJ r;
 r=(*(OBJ(*)(OBJ,OBJ,OBJ,OBJ,OBJ,OBJ,OBJ,OBJ,OBJ))ENTRY(t))(FLDCLS(t,1),FLDCLS(t,2),FLDCLS(t,3),FLDCLS(t,4),FLDCLS(t,5),FLDCLS(t,6),FLDCLS(t,7),FLDCLS(t,8),t1);
 if(EXCLS(t)){
  DSCLSF(t);
 }else{
  DCCLS(t,1);
  FLDCLS(t,1)=NIL;FLDCLS(t,2)=NIL;FLDCLS(t,3)=NIL;FLDCLS(t,4)=NIL;FLDCLS(t,5)=NIL;FLDCLS(t,6)=NIL;FLDCLS(t,7)=NIL;FLDCLS(t,8)=NIL;
  COPY(r,1);LZYCLS(t,r);}
 return r;}

init_ARelConv()
{
 static int visited=0; if(visited) return; visited=1;
 init_ARel();
 init_ASeq();
 init_ATriple();
 init_AString();
 init_ANat();
 init_AChar();
 init_AOption();
 init_ASet();
 init_APair();
 init_ARelReduce();
 init_ASeqReduce();
 init_ADenotation();
 init_AStringConv();
 init_ACompose();
 init_ASeqConv();
 init_AMap();
 init_AMapFilter();
 init_ASetByBST();
 init_ABSTree();
 init_ATree();
 init_AInt();
 init_AStringMapSeq();
 DEN("}",__ARelConv_24);
 DEN("{",__ARelConv_23);
 CLS(4,_ARelConv_22,__ARelConv_22);
 CLS(6,_ARelConv_21,__ARelConv_21);
 DEN("(",__ARelConv_20);
 DEN(":->",__ARelConv_19);
 DEN(")(",__ARelConv_18);
 DEN(")",__ARelConv_17);
 CLS(2,_ARelConv_16,__ARelConv_16);
 CLS(4,_ARelConv_15,__ARelConv_15);
 CLS(4,_ARelConv_14,__ARelConv_14);
 CLS(6,_ARelConv_13,__ARelConv_13);
 CLS(6,_ARelConv_12,__ARelConv_12);
 CLS(7,_ARelConv_11,__ARelConv_11);
 CLS(9,_ARelConv_10,__ARelConv_10);
 CLS(7,_ARelConv_9,__ARelConv_9);
 CLS(9,_ARelConv_8,__ARelConv_8);
 CLS(3,_ARelConv_7,__ARelConv_7);
 CLS(3,_ARelConv_6,__ARelConv_6);
 MTH(6,0,3,_mt_6_0_3);LZYMTH(6,0,3,_mt_6_0_3);
 MTH(6,0,5,_mt_6_0_5);LZYMTH(6,0,5,_mt_6_0_5);
 MTH(6,2,3,_mt_6_2_3);LZYMTH(6,2,3,_mt_6_2_3);
 MTH(6,3,3,_mt_6_3_3);LZYMTH(6,3,3,_mt_6_3_3);
 MTH(6,5,1,_mt_6_5_1);LZYMTH(6,5,1,_mt_6_5_1_l);
 MTH(7,0,2,_mt_7_0_2);LZYMTH(7,0,2,_mt_7_0_2);
 MTH(7,0,5,_mt_7_0_5);LZYMTH(7,0,5,_mt_7_0_5);
 MTH(7,0,6,_mt_7_0_6);LZYMTH(7,0,6,_mt_7_0_6);
 MTH(7,2,3,_mt_7_2_3);LZYMTH(7,2,3,_mt_7_2_3);
 MTH(7,2,4,_mt_7_2_4);LZYMTH(7,2,4,_mt_7_2_4);
 MTH(7,2,5,_mt_7_2_5);LZYMTH(7,2,5,_mt_7_2_5);
 MTH(7,5,1,_mt_7_5_1);LZYMTH(7,5,1,_mt_7_5_1);
 MTH(7,5,2,_mt_7_5_2);LZYMTH(7,5,2,_mt_7_5_2);
 MTH(7,6,1,_mt_7_6_1);LZYMTH(7,6,1,_mt_7_6_1_l);
 MTH(9,0,2,_mt_9_0_2);LZYMTH(9,0,2,_mt_9_0_2);
 MTH(9,0,5,_mt_9_0_5);LZYMTH(9,0,5,_mt_9_0_5);
 MTH(9,0,8,_mt_9_0_8);LZYMTH(9,0,8,_mt_9_0_8);
 MTH(9,0,9,_mt_9_0_9);LZYMTH(9,0,9,_mt_9_0_9);
 MTH(9,2,3,_mt_9_2_3);LZYMTH(9,2,3,_mt_9_2_3);
 MTH(9,2,6,_mt_9_2_6);LZYMTH(9,2,6,_mt_9_2_6);
 MTH(9,2,7,_mt_9_2_7);LZYMTH(9,2,7,_mt_9_2_7);
 MTH(9,5,3,_mt_9_5_3);LZYMTH(9,5,3,_mt_9_5_3);
 MTH(9,5,4,_mt_9_5_4);LZYMTH(9,5,4,_mt_9_5_4);
 MTH(9,8,1,_mt_9_8_1);LZYMTH(9,8,1,_mt_9_8_1_l);}

