

#include "BUILTIN.h"
extern OBJ __AFmt_25;
extern OBJ _AFmt_28(OBJ);extern OBJ __AFmt_28;
extern OBJ __AFmt_32;

#include "Nat.h"

#include "Char.h"
extern OBJ _AFmtSeq_2(OBJ,OBJ,OBJ,OBJ,OBJ);OBJ __AFmtSeq_2; /* list */
extern OBJ _AFmtSeq_3(OBJ,OBJ,OBJ,OBJ,OBJ);OBJ __AFmtSeq_3; /* list? */
extern OBJ _AFmtSeq_4(OBJ,OBJ,OBJ);OBJ __AFmtSeq_4; /* list,1 */
extern OBJ _AFmtSeq_5(OBJ,OBJ);OBJ __AFmtSeq_5; /* fmtSeq */
OBJ __AFmtSeq_6; /* list'6 */
OBJ __AFmtSeq_7; /* fmtSeq'7 */
extern OBJ _AFmtSeq_8(OBJ);OBJ __AFmtSeq_8; /* fmtSeq'8 */
OBJ __AFmtSeq_9; /* fmtSeq'9 */
extern OBJ _AFmtSeq_10(OBJ);OBJ __AFmtSeq_10; /* fmtSeq'10 */
OBJ __AFmtSeq_11; /* fmtSeq'11 */
OBJ __AFmtSeq_12; /* fmtSeq'12 */
extern OBJ _AFmtSeq_13(OBJ);OBJ __AFmtSeq_13; /* fmtSeq'13 */

extern OBJ _AFmtSeq_2(register OBJ x1,register OBJ x2,register OBJ x3,register OBJ x4,register OBJ x5) /* list */
{OBJ r;
 for(;;){
  if(ISPRM(x5)){
   FRCLS(x1,1);
   FREE(x3,1);
   COPY(__AFmtSeq_6,1);
   COPY(__AFmt_32,1);
   {OBJ x34;OBJ x35;
    PRD(2,7,x34);FLD(x34,1)=x4;FLD(x34,2)=__AFmt_32;
    PRD(2,7,x35);FLD(x35,1)=x2;FLD(x35,2)=x34;
    PRD(2,7,r);FLD(r,1)=__AFmtSeq_6;FLD(r,2)=x35;}
  }else{
   {OBJ x36=FLD1(x5,1);OBJ x37=FLD1(x5,2);
    if(EXPRD(x5,1)){
     DSPRDF(x5);
    }else{
     COPY(x36,1);COPY(x37,1);
     FRPRD(x5,1);}
    {OBJ x42;OBJ x39;OBJ x43;OBJ x44;
     if(ISPRM(x37)){
      CPCLS(x1,1);
      COPY(__AFmtSeq_6,1);
      COPY(__AFmt_32,1);
      x42=__ABUILTIN_5;
     }else{
      CPCLS(x1,1);
      COPY(__AFmtSeq_6,1);
      COPY(__AFmt_32,1);
      x42=__ABUILTIN_3;}
     x39=(*(OBJ(*)(OBJ,OBJ))METHOD(x1,1))(x1,x36);
     PRD(2,7,x43);FLD(x43,1)=x39;FLD(x43,2)=__AFmt_32;
     PRD(2,7,x44);FLD(x44,1)=__AFmtSeq_6;FLD(x44,2)=x43;
     if(ISTGPRM(x42,1)){
      FRCLS(x1,1);
      FREE(x3,1);
      FREE(x37,1);
      {OBJ x45;
       PRD(2,7,x45);FLD(x45,1)=x44;FLD(x45,2)=x4;
       PRD(2,7,r);FLD(r,1)=x2;FLD(r,2)=x45;}
     }else{
      COPY(x3,1);
      {OBJ x46;OBJ x47;
       PRD(2,7,x46);FLD(x46,1)=x44;FLD(x46,2)=x3;
       PRD(2,7,x47);FLD(x47,1)=x2;FLD(x47,2)=x46;
       x2=x47;x5=x37;continue;}}}}}
  break;}
 return r;}

extern OBJ _AFmtSeq_3(OBJ x1,OBJ x2,OBJ x3,OBJ x4,OBJ x5) /* list? */
{OBJ r;
 if(ISPRM(x5)){
  FRCLS(x1,1);
  FREE(x2,1);
  FREE(x3,1);
  FREE(x4,1);
  COPY(__AFmt_25,1);
  r=__AFmt_25;
 }else{
  r=_AFmtSeq_2(x1,x2,x3,x4,x5);}
 return r;}

extern OBJ _AFmtSeq_4(OBJ x1,OBJ x2,OBJ x3) /* list,1 */
{OBJ r;
 COPY(__AFmt_25,2);
 r=_AFmtSeq_2(x1,__AFmt_25,x2,__AFmt_25,x3);
 return r;}

extern OBJ _AFmtSeq_5(OBJ x1,OBJ x2) /* fmtSeq */
{OBJ r;
 CPCLS(__AFmtSeq_8,1);
 CPCLS(__AFmtSeq_10,1);
 COPY(__AFmtSeq_11,1);
 CPCLS(__AFmtSeq_13,1);
 {OBJ x3;OBJ x4;OBJ x5;OBJ x6;
  x3=(*(OBJ(*)(OBJ,OBJ))METHOD(__AFmtSeq_8,1))(__AFmtSeq_8,__ABUILTIN_20);
  x4=(*(OBJ(*)(OBJ,OBJ))METHOD(__AFmtSeq_10,1))(__AFmtSeq_10,__ABUILTIN_20);
  x5=(*(OBJ(*)(OBJ,OBJ))METHOD(__AFmtSeq_13,1))(__AFmtSeq_13,__ABUILTIN_20);
  PRD(2,7,x6);FLD(x6,1)=x4;FLD(x6,2)=__AFmtSeq_11;
  r=_AFmtSeq_2(x1,x3,x6,x5,x2);}
 return r;}

extern OBJ _AFmtSeq_8(OBJ x1) /* fmtSeq'8 */
{OBJ r;
 CPPRD(__AFmtSeq_7,1);
 r=_AFmt_28(__AFmtSeq_7);
 return r;}

extern OBJ _AFmtSeq_10(OBJ x1) /* fmtSeq'10 */
{OBJ r;
 CPPRD(__AFmtSeq_9,1);
 r=_AFmt_28(__AFmtSeq_9);
 return r;}

extern OBJ _AFmtSeq_13(OBJ x1) /* fmtSeq'13 */
{OBJ r;
 CPPRD(__AFmtSeq_12,1);
 r=_AFmt_28(__AFmtSeq_12);
 return r;}



init_AFmtSeq()
{
 static int visited=0; if(visited) return; visited=1;
 init_ASeq();
 init_AFmt();
 init_AVoid();
 init_ANat();
 init_AString();
 init_AOption();
 init_AChar();
 init_ASeqReduce();
 LCLS(1,_AFmtSeq_13,__AFmtSeq_13);
 DEN(">",__AFmtSeq_12);
 LCLS(1,_AFmtSeq_10,__AFmtSeq_10);
 DEN(",",__AFmtSeq_9);
 LCLS(1,_AFmtSeq_8,__AFmtSeq_8);
 DEN("<",__AFmtSeq_7);
 CLS(2,_AFmtSeq_5,__AFmtSeq_5);
 CLS(3,_AFmtSeq_4,__AFmtSeq_4);
 CLS(5,_AFmtSeq_3,__AFmtSeq_3);
 CLS(5,_AFmtSeq_2,__AFmtSeq_2);
 PRDF(1,14,__AFmtSeq_6);FLD(__AFmtSeq_6,1)=__ANat_5;
 PRDF(1,1,__AFmtSeq_11);FLD(__AFmtSeq_11,1)=__ANat_8;}

