

#include "BUILTIN.h"
extern OBJ _AString_49(OBJ);extern OBJ __AString_49;

#include "Nat.h"

#include "Char.h"

#include "DEBUG.h"
extern OBJ _ADEBUG_APRINT(OBJ,OBJ,OBJ);OBJ __ADEBUG_APRINT; /* PRINT */
extern OBJ _ADEBUG_APRINT_O1(OBJ,OBJ,OBJ);OBJ __ADEBUG_APRINT_O1; /* PRINT,1 */
extern OBJ _ADEBUG_APRINT_O2(OBJ,OBJ,OBJ);OBJ __ADEBUG_APRINT_O2; /* PRINT,2 */
extern OBJ _ADEBUG_APRINT_O3(OBJ,OBJ,OBJ);OBJ __ADEBUG_APRINT_O3; /* PRINT,3 */
extern OBJ _ADEBUG_APRINT_O4(OBJ,OBJ,OBJ);OBJ __ADEBUG_APRINT_O4; /* PRINT,4 */
extern OBJ _ADEBUG_APRINT_O5(OBJ,OBJ,OBJ);OBJ __ADEBUG_APRINT_O5; /* PRINT,5 */
extern OBJ _ADEBUG_APRINT_O6(OBJ,OBJ,OBJ);OBJ __ADEBUG_APRINT_O6; /* PRINT,6 */
extern OBJ _ADEBUG_APRINT_O7(OBJ,OBJ,OBJ);OBJ __ADEBUG_APRINT_O7; /* PRINT,7 */
extern OBJ _ADEBUG_AFIELD_(OBJ);OBJ __ADEBUG_AFIELD_; /* FIELD? */
extern OBJ _ADEBUG_Aprint(OBJ,OBJ);OBJ __ADEBUG_Aprint; /* print */

#include "DEBUG.hc.c"

extern OBJ _ADEBUG_APRINT(OBJ x1,OBJ x2,OBJ x3) /* PRINT */
{OBJ r;
 if(ISTGPRM(x1,1)){
  {OBJ x4;OBJ x5;
   x4=(*(OBJ(*)(OBJ,OBJ))METHOD(x2,1))(x2,__ABUILTIN_20);
   x5=_AString_49(x4);
   ADEBUG_Aprint(x3,x5,r);}
 }else{
  FRCLS(x2,1);
  r=x3;}
 return r;}

extern OBJ _ADEBUG_APRINT_O1(OBJ x1,OBJ x2,OBJ x3) /* PRINT,1 */
{OBJ r;
 if(ISTGPRM(x1,1)){
  {OBJ x4;
   x4=(*(OBJ(*)(OBJ,OBJ))METHOD(x2,1))(x2,__ABUILTIN_20);
   ADEBUG_Aprint(x3,x4,r);}
 }else{
  FRCLS(x2,1);
  r=x3;}
 return r;}

extern OBJ _ADEBUG_APRINT_O2(OBJ x1,OBJ x2,OBJ x3) /* PRINT,2 */
{OBJ r;
 if(ISTGPRM(x1,1)){
  {OBJ x4;
   x4=_AString_49(x2);
   ADEBUG_Aprint(x3,x4,r);}
 }else{
  FRPRD(x2,1);
  r=x3;}
 return r;}

extern OBJ _ADEBUG_APRINT_O3(OBJ x1,OBJ x2,OBJ x3) /* PRINT,3 */
{OBJ r;
 if(ISTGPRM(x1,1)){
  ADEBUG_Aprint(x3,x2,r);
 }else{
  FREE(x2,1);
  r=x3;}
 return r;}

extern OBJ _ADEBUG_APRINT_O4(OBJ x1,OBJ x2,OBJ x3) /* PRINT,4 */
{OBJ r;
 {OBJ x4;
  ADEBUG_AFIELD_(x1,x4);
  if(ISTGPRM(x4,1)){
   {OBJ x5;OBJ x6;
    x5=(*(OBJ(*)(OBJ,OBJ))METHOD(x2,1))(x2,__ABUILTIN_20);
    x6=_AString_49(x5);
    ADEBUG_Aprint(x3,x6,r);}
  }else{
   FRCLS(x2,1);
   r=x3;}}
 return r;}

extern OBJ _ADEBUG_APRINT_O5(OBJ x1,OBJ x2,OBJ x3) /* PRINT,5 */
{OBJ r;
 {OBJ x4;
  ADEBUG_AFIELD_(x1,x4);
  if(ISTGPRM(x4,1)){
   {OBJ x5;
    x5=(*(OBJ(*)(OBJ,OBJ))METHOD(x2,1))(x2,__ABUILTIN_20);
    ADEBUG_Aprint(x3,x5,r);}
  }else{
   FRCLS(x2,1);
   r=x3;}}
 return r;}

extern OBJ _ADEBUG_APRINT_O6(OBJ x1,OBJ x2,OBJ x3) /* PRINT,6 */
{OBJ r;
 {OBJ x4;
  ADEBUG_AFIELD_(x1,x4);
  if(ISTGPRM(x4,1)){
   {OBJ x5;
    x5=_AString_49(x2);
    ADEBUG_Aprint(x3,x5,r);}
  }else{
   FRPRD(x2,1);
   r=x3;}}
 return r;}

extern OBJ _ADEBUG_APRINT_O7(OBJ x1,OBJ x2,OBJ x3) /* PRINT,7 */
{OBJ r;
 {OBJ x4;
  ADEBUG_AFIELD_(x1,x4);
  if(ISTGPRM(x4,1)){
   ADEBUG_Aprint(x3,x2,r);
  }else{
   FREE(x2,1);
   r=x3;}}
 return r;}

init_ADEBUG()
{
 static int visited=0; if(visited) return; visited=1;
 init_AString();
 init_ANat();
 init_AChar();
 init_ASeq();
 init_AOption();
 CLS(2,_ADEBUG_11,__ADEBUG_11);
 CLS(1,_ADEBUG_10,__ADEBUG_10);
 CLS(3,_ADEBUG_9,__ADEBUG_9);
 CLS(3,_ADEBUG_8,__ADEBUG_8);
 CLS(3,_ADEBUG_7,__ADEBUG_7);
 CLS(3,_ADEBUG_6,__ADEBUG_6);
 CLS(3,_ADEBUG_5,__ADEBUG_5);
 CLS(3,_ADEBUG_4,__ADEBUG_4);
 CLS(3,_ADEBUG_3,__ADEBUG_3);
 CLS(3,_ADEBUG_2,__ADEBUG_2);
 init_const_ADEBUG();}

