

#include "BUILTIN.h"

#include "Real.h"

#include "SmallReal.h"

#define __ASmallReal_Asign_L132 __ASmallReal_132
#define _ASmallReal_Asign_L132 _ASmallReal_132
#define ASmallReal_132 ASmallReal_Asign_L132
extern OBJ __ASmallReal_Asign_L132;
extern OBJ _ASmallReal_Asign_L132(OBJ);
OBJ __ASmallReal_A0; /* 0 */
OBJ __ASmallReal_A1; /* 1 */
OBJ __ASmallReal_A2; /* 2 */
OBJ __ASmallReal_A3; /* 3 */
OBJ __ASmallReal_A4; /* 4 */
OBJ __ASmallReal_A5; /* 5 */
OBJ __ASmallReal_A6; /* 6 */
OBJ __ASmallReal_A7; /* 7 */
OBJ __ASmallReal_A8; /* 8 */
OBJ __ASmallReal_A9; /* 9 */
OBJ __ASmallReal_A10; /* 10 */
OBJ __ASmallReal_A11; /* 11 */
OBJ __ASmallReal_A12; /* 12 */
OBJ __ASmallReal_A13; /* 13 */
OBJ __ASmallReal_A14; /* 14 */
OBJ __ASmallReal_A15; /* 15 */
OBJ __ASmallReal_A16; /* 16 */
OBJ __ASmallReal_A17; /* 17 */
OBJ __ASmallReal_A18; /* 18 */
OBJ __ASmallReal_A19; /* 19 */
OBJ __ASmallReal_A20; /* 20 */
OBJ __ASmallReal_A21; /* 21 */
OBJ __ASmallReal_A22; /* 22 */
OBJ __ASmallReal_A23; /* 23 */
OBJ __ASmallReal_A24; /* 24 */
OBJ __ASmallReal_A25; /* 25 */
OBJ __ASmallReal_A26; /* 26 */
OBJ __ASmallReal_A27; /* 27 */
OBJ __ASmallReal_A28; /* 28 */
OBJ __ASmallReal_A29; /* 29 */
OBJ __ASmallReal_A30; /* 30 */
OBJ __ASmallReal_A31; /* 31 */
OBJ __ASmallReal_A32; /* 32 */
OBJ __ASmallReal_A64; /* 64 */
OBJ __ASmallReal_A128; /* 128 */
OBJ __ASmallReal_A256; /* 256 */
OBJ __ASmallReal_A512; /* 512 */
OBJ __ASmallReal_A1024; /* 1024 */
OBJ __ASmallReal_A100; /* 100 */
OBJ __ASmallReal_A1000; /* 1000 */
OBJ __ASmallReal_A10000; /* 10000 */
OBJ __ASmallReal_A100000; /* 100000 */
OBJ __ASmallReal_A1000000; /* 1000000 */
OBJ __ASmallReal_Amin; /* min */
OBJ __ASmallReal_Amax; /* max */
OBJ __ASmallReal_Aeps; /* eps */
OBJ __ASmallReal_Api; /* pi */
OBJ __ASmallReal_Ae; /* e */
extern OBJ _ASmallReal_Sp(OBJ,OBJ);OBJ __ASmallReal_Sp; /* + */
extern OBJ _ASmallReal_Sm(OBJ,OBJ);OBJ __ASmallReal_Sm; /* - */
extern OBJ _ASmallReal_S8(OBJ,OBJ);OBJ __ASmallReal_S8; /* * */
extern OBJ _ASmallReal_Ss(OBJ,OBJ);OBJ __ASmallReal_Ss; /* / */
extern OBJ _ASmallReal_Apow(OBJ,OBJ);OBJ __ASmallReal_Apow; /* pow */
extern OBJ _ASmallReal_Aexp(OBJ);OBJ __ASmallReal_Aexp; /* exp */
extern OBJ _ASmallReal_Asqrt(OBJ);OBJ __ASmallReal_Asqrt; /* sqrt */
extern OBJ _ASmallReal_Aln(OBJ);OBJ __ASmallReal_Aln; /* ln */
extern OBJ _ASmallReal_Alog(OBJ);OBJ __ASmallReal_Alog; /* log */
extern OBJ _ASmallReal_Sm_O1(OBJ);OBJ __ASmallReal_Sm_O1; /* -,1 */
extern OBJ _ASmallReal_Aabs(OBJ);OBJ __ASmallReal_Aabs; /* abs */
extern OBJ _ASmallReal_Aceil(OBJ);OBJ __ASmallReal_Aceil; /* ceil */
extern OBJ _ASmallReal_Afloor(OBJ);OBJ __ASmallReal_Afloor; /* floor */
extern OBJ _ASmallReal_Asign(OBJ);OBJ __ASmallReal_Asign; /* sign */
extern OBJ _ASmallReal_Amin_O1(OBJ,OBJ);OBJ __ASmallReal_Amin_O1; /* min,1 */
extern OBJ _ASmallReal_Amax_O1(OBJ,OBJ);OBJ __ASmallReal_Amax_O1; /* max,1 */
extern OBJ _ASmallReal_Apos_(OBJ);OBJ __ASmallReal_Apos_; /* pos? */
extern OBJ _ASmallReal_Aneg_(OBJ);OBJ __ASmallReal_Aneg_; /* neg? */
extern OBJ _ASmallReal_Azero_(OBJ);OBJ __ASmallReal_Azero_; /* zero? */
extern OBJ _ASmallReal_Sle(OBJ,OBJ);OBJ __ASmallReal_Sle; /* <= */
extern OBJ _ASmallReal_Se(OBJ,OBJ);OBJ __ASmallReal_Se; /* = */
extern OBJ _ASmallReal_Sge(OBJ,OBJ);OBJ __ASmallReal_Sge; /* >= */
extern OBJ _ASmallReal_Sl(OBJ,OBJ);OBJ __ASmallReal_Sl; /* < */
extern OBJ _ASmallReal_Sg(OBJ,OBJ);OBJ __ASmallReal_Sg; /* > */
extern OBJ _ASmallReal_SSe(OBJ,OBJ);OBJ __ASmallReal_SSe; /* |= */
extern OBJ _ASmallReal_Asin(OBJ);OBJ __ASmallReal_Asin; /* sin */
extern OBJ _ASmallReal_Acos(OBJ);OBJ __ASmallReal_Acos; /* cos */
extern OBJ _ASmallReal_Atan(OBJ);OBJ __ASmallReal_Atan; /* tan */
extern OBJ _ASmallReal_Aarcsin(OBJ);OBJ __ASmallReal_Aarcsin; /* arcsin */
extern OBJ _ASmallReal_Aarccos(OBJ);OBJ __ASmallReal_Aarccos; /* arccos */
extern OBJ _ASmallReal_Aarctan(OBJ);OBJ __ASmallReal_Aarctan; /* arctan */
extern OBJ _ASmallReal_Aarctan2(OBJ,OBJ);OBJ __ASmallReal_Aarctan2; /* arctan2 */
extern OBJ _ASmallReal_Asinh(OBJ);OBJ __ASmallReal_Asinh; /* sinh */
extern OBJ _ASmallReal_Acosh(OBJ);OBJ __ASmallReal_Acosh; /* cosh */
extern OBJ _ASmallReal_Atanh(OBJ);OBJ __ASmallReal_Atanh; /* tanh */
extern OBJ _ASmallReal_S1(OBJ);OBJ __ASmallReal_S1; /* ! */
extern OBJ _ASmallReal_AasReal(OBJ);OBJ __ASmallReal_AasReal; /* asReal */
OBJ __ASmallReal_Aprimitive; /* primitive */
extern OBJ _ASmallReal_Aprimitive_(OBJ);OBJ __ASmallReal_Aprimitive_; /* primitive? */
OBJ __ASmallReal_Aprimitive_O1; /* primitive,1 */
extern OBJ _ASmallReal_Aprimitive__O1(OBJ);OBJ __ASmallReal_Aprimitive__O1; /* primitive?,1 */
extern OBJ _ASmallReal_Apack(OBJ);OBJ __ASmallReal_Apack; /* pack */
extern OBJ _ASmallReal_Aunpack(OBJ);OBJ __ASmallReal_Aunpack; /* unpack */
OBJ __ASmallReal_S_A0; /* _0 */
OBJ __ASmallReal_S_Ae; /* _e */
OBJ __ASmallReal_S_Api; /* _pi */
OBJ __ASmallReal_S_Amaxval; /* _maxval */
OBJ __ASmallReal_S_Aminval; /* _minval */
OBJ __ASmallReal_S_Aeps; /* _eps */
extern OBJ _ASmallReal_S_Aadd(OBJ,OBJ);OBJ __ASmallReal_S_Aadd; /* _add */
extern OBJ _ASmallReal_S_Asub(OBJ,OBJ);OBJ __ASmallReal_S_Asub; /* _sub */
extern OBJ _ASmallReal_S_Amul(OBJ,OBJ);OBJ __ASmallReal_S_Amul; /* _mul */
extern OBJ _ASmallReal_S_Adiv(OBJ,OBJ);OBJ __ASmallReal_S_Adiv; /* _div */
extern OBJ _ASmallReal_S_Apow(OBJ,OBJ);OBJ __ASmallReal_S_Apow; /* _pow */
extern OBJ _ASmallReal_S_Amin(OBJ,OBJ);OBJ __ASmallReal_S_Amin; /* _min */
extern OBJ _ASmallReal_S_Amax(OBJ,OBJ);OBJ __ASmallReal_S_Amax; /* _max */
extern OBJ _ASmallReal_S_Aexp(OBJ);OBJ __ASmallReal_S_Aexp; /* _exp */
extern OBJ _ASmallReal_S_Asqrt(OBJ);OBJ __ASmallReal_S_Asqrt; /* _sqrt */
extern OBJ _ASmallReal_S_Aln(OBJ);OBJ __ASmallReal_S_Aln; /* _ln */
extern OBJ _ASmallReal_S_Alog(OBJ);OBJ __ASmallReal_S_Alog; /* _log */
extern OBJ _ASmallReal_S_Aneg(OBJ);OBJ __ASmallReal_S_Aneg; /* _neg */
extern OBJ _ASmallReal_S_Aabs(OBJ);OBJ __ASmallReal_S_Aabs; /* _abs */
extern OBJ _ASmallReal_S_Aceil(OBJ);OBJ __ASmallReal_S_Aceil; /* _ceil */
extern OBJ _ASmallReal_S_Afloor(OBJ);OBJ __ASmallReal_S_Afloor; /* _floor */
extern OBJ _ASmallReal_S_AasReal(OBJ);OBJ __ASmallReal_S_AasReal; /* _asReal */
extern OBJ _ASmallReal_S_Ale(OBJ,OBJ);OBJ __ASmallReal_S_Ale; /* _le */
extern OBJ _ASmallReal_S_Alt(OBJ,OBJ);OBJ __ASmallReal_S_Alt; /* _lt */
extern OBJ _ASmallReal_S_Aeq(OBJ,OBJ);OBJ __ASmallReal_S_Aeq; /* _eq */
extern OBJ _ASmallReal_S_Apos_(OBJ);OBJ __ASmallReal_S_Apos_; /* _pos? */
extern OBJ _ASmallReal_S_Aneg_(OBJ);OBJ __ASmallReal_S_Aneg_; /* _neg? */
extern OBJ _ASmallReal_S_Azero_(OBJ);OBJ __ASmallReal_S_Azero_; /* _zero? */
extern OBJ _ASmallReal_S_Asin(OBJ);OBJ __ASmallReal_S_Asin; /* _sin */
extern OBJ _ASmallReal_S_Acos(OBJ);OBJ __ASmallReal_S_Acos; /* _cos */
extern OBJ _ASmallReal_S_Atan(OBJ);OBJ __ASmallReal_S_Atan; /* _tan */
extern OBJ _ASmallReal_S_Aarcsin(OBJ);OBJ __ASmallReal_S_Aarcsin; /* _arcsin */
extern OBJ _ASmallReal_S_Aarccos(OBJ);OBJ __ASmallReal_S_Aarccos; /* _arccos */
extern OBJ _ASmallReal_S_Aarctan(OBJ);OBJ __ASmallReal_S_Aarctan; /* _arctan */
extern OBJ _ASmallReal_S_Aarctan2(OBJ,OBJ);OBJ __ASmallReal_S_Aarctan2; /* _arctan2 */
extern OBJ _ASmallReal_S_Asinh(OBJ);OBJ __ASmallReal_S_Asinh; /* _sinh */
extern OBJ _ASmallReal_S_Acosh(OBJ);OBJ __ASmallReal_S_Acosh; /* _cosh */
extern OBJ _ASmallReal_S_Atanh(OBJ);OBJ __ASmallReal_S_Atanh; /* _tanh */
extern OBJ _ASmallReal_Asign_L132(OBJ);OBJ __ASmallReal_Asign_L132; /* sign'132 */

#include "SmallReal.hc.c"

extern OBJ _ASmallReal_Sp(OBJ x1,OBJ x2) /* + */
{OBJ r;
 {OBJ x3;OBJ x4;OBJ x5;
  ASmallReal_Aunpack(x1,x3);
  ASmallReal_Aunpack(x2,x4);
  ASmallReal_S_Aadd(x3,x4,x5);
  ASmallReal_Apack(x5,r);}
 return r;}

extern OBJ _ASmallReal_Sm(OBJ x1,OBJ x2) /* - */
{OBJ r;
 {OBJ x3;OBJ x4;OBJ x5;
  ASmallReal_Aunpack(x1,x3);
  ASmallReal_Aunpack(x2,x4);
  ASmallReal_S_Asub(x3,x4,x5);
  ASmallReal_Apack(x5,r);}
 return r;}

extern OBJ _ASmallReal_S8(OBJ x1,OBJ x2) /* * */
{OBJ r;
 {OBJ x3;OBJ x4;OBJ x5;
  ASmallReal_Aunpack(x1,x3);
  ASmallReal_Aunpack(x2,x4);
  ASmallReal_S_Amul(x3,x4,x5);
  ASmallReal_Apack(x5,r);}
 return r;}

extern OBJ _ASmallReal_Ss(OBJ x1,OBJ x2) /* / */
{OBJ r;
 {OBJ x3;OBJ x4;OBJ x5;
  ASmallReal_Aunpack(x1,x3);
  ASmallReal_Aunpack(x2,x4);
  ASmallReal_S_Adiv(x3,x4,x5);
  ASmallReal_Apack(x5,r);}
 return r;}

extern OBJ _ASmallReal_Apow(OBJ x1,OBJ x2) /* pow */
{OBJ r;
 {OBJ x3;OBJ x4;OBJ x5;
  ASmallReal_Aunpack(x1,x3);
  ASmallReal_Aunpack(x2,x4);
  ASmallReal_S_Apow(x3,x4,x5);
  ASmallReal_Apack(x5,r);}
 return r;}

extern OBJ _ASmallReal_Aexp(OBJ x1) /* exp */
{OBJ r;
 {OBJ x2;OBJ x3;
  ASmallReal_Aunpack(x1,x2);
  ASmallReal_S_Aexp(x2,x3);
  ASmallReal_Apack(x3,r);}
 return r;}

extern OBJ _ASmallReal_Asqrt(OBJ x1) /* sqrt */
{OBJ r;
 {OBJ x2;OBJ x3;
  ASmallReal_Aunpack(x1,x2);
  ASmallReal_S_Asqrt(x2,x3);
  ASmallReal_Apack(x3,r);}
 return r;}

extern OBJ _ASmallReal_Aln(OBJ x1) /* ln */
{OBJ r;
 {OBJ x2;OBJ x3;
  ASmallReal_Aunpack(x1,x2);
  ASmallReal_S_Aln(x2,x3);
  ASmallReal_Apack(x3,r);}
 return r;}

extern OBJ _ASmallReal_Alog(OBJ x1) /* log */
{OBJ r;
 {OBJ x2;OBJ x3;
  ASmallReal_Aunpack(x1,x2);
  ASmallReal_S_Alog(x2,x3);
  ASmallReal_Apack(x3,r);}
 return r;}

extern OBJ _ASmallReal_Sm_O1(OBJ x1) /* -,1 */
{OBJ r;
 {OBJ x2;OBJ x3;
  ASmallReal_Aunpack(x1,x2);
  ASmallReal_S_Aneg(x2,x3);
  ASmallReal_Apack(x3,r);}
 return r;}

extern OBJ _ASmallReal_Aabs(OBJ x1) /* abs */
{OBJ r;
 {OBJ x2;OBJ x3;
  ASmallReal_Aunpack(x1,x2);
  ASmallReal_S_Aabs(x2,x3);
  ASmallReal_Apack(x3,r);}
 return r;}

extern OBJ _ASmallReal_Aceil(OBJ x1) /* ceil */
{OBJ r;
 {OBJ x2;OBJ x3;
  ASmallReal_Aunpack(x1,x2);
  ASmallReal_S_Aceil(x2,x3);
  ASmallReal_Apack(x3,r);}
 return r;}

extern OBJ _ASmallReal_Afloor(OBJ x1) /* floor */
{OBJ r;
 {OBJ x2;OBJ x3;
  ASmallReal_Aunpack(x1,x2);
  ASmallReal_S_Afloor(x2,x3);
  ASmallReal_Apack(x3,r);}
 return r;}

extern OBJ _ASmallReal_Asign(OBJ x1) /* sign */
{OBJ r;
 {OBJ x2;OBJ x3;
  ASmallReal_Aunpack(x1,x2);
  ASmallReal_S_Apos_(x2,x3);
  if(ISTGPRM(x3,1)){
   r=__ASmallReal_A1;
  }else{
   {OBJ x4;
    ASmallReal_S_Aneg_(x2,x4);
    if(ISTGPRM(x4,1)){
     CPCLS(__ASmallReal_Asign_L132,1);
     r=(*(OBJ(*)(OBJ,OBJ))METHOD(__ASmallReal_Asign_L132,1))(__ASmallReal_Asign_L132,__ABUILTIN_20);
    }else{
     {OBJ x5;
      ASmallReal_S_Azero_(x2,x5);
      if(ISTGPRM(x5,1)){
       r=__ASmallReal_A0;
      }else{
       HLT("SmallReal at <93,19-95,31> : missing else in sign\'SmallReal:sreal->sreal");}}}}}}
 return r;}

extern OBJ _ASmallReal_Amin_O1(OBJ x1,OBJ x2) /* min,1 */
{OBJ r;
 {OBJ x3;OBJ x4;OBJ x5;
  ASmallReal_Aunpack(x1,x3);
  ASmallReal_Aunpack(x2,x4);
  ASmallReal_S_Amin(x3,x4,x5);
  ASmallReal_Apack(x5,r);}
 return r;}

extern OBJ _ASmallReal_Amax_O1(OBJ x1,OBJ x2) /* max,1 */
{OBJ r;
 {OBJ x3;OBJ x4;OBJ x5;
  ASmallReal_Aunpack(x1,x3);
  ASmallReal_Aunpack(x2,x4);
  ASmallReal_S_Amax(x3,x4,x5);
  ASmallReal_Apack(x5,r);}
 return r;}

extern OBJ _ASmallReal_Apos_(OBJ x1) /* pos? */
{OBJ r;
 {OBJ x2;
  ASmallReal_Aunpack(x1,x2);
  ASmallReal_S_Apos_(x2,r);}
 return r;}

extern OBJ _ASmallReal_Aneg_(OBJ x1) /* neg? */
{OBJ r;
 {OBJ x2;
  ASmallReal_Aunpack(x1,x2);
  ASmallReal_S_Aneg_(x2,r);}
 return r;}

extern OBJ _ASmallReal_Azero_(OBJ x1) /* zero? */
{OBJ r;
 {OBJ x2;
  ASmallReal_Aunpack(x1,x2);
  ASmallReal_S_Azero_(x2,r);}
 return r;}

extern OBJ _ASmallReal_Sle(OBJ x1,OBJ x2) /* <= */
{OBJ r;
 {OBJ x3;OBJ x4;
  ASmallReal_Aunpack(x1,x3);
  ASmallReal_Aunpack(x2,x4);
  ASmallReal_S_Ale(x3,x4,r);}
 return r;}

extern OBJ _ASmallReal_Se(OBJ x1,OBJ x2) /* = */
{OBJ r;
 {OBJ x3;OBJ x4;
  ASmallReal_Aunpack(x1,x3);
  ASmallReal_Aunpack(x2,x4);
  ASmallReal_S_Aeq(x3,x4,r);}
 return r;}

extern OBJ _ASmallReal_Sge(OBJ x1,OBJ x2) /* >= */
{OBJ r;
 {OBJ x3;OBJ x4;
  ASmallReal_Aunpack(x2,x3);
  ASmallReal_Aunpack(x1,x4);
  ASmallReal_S_Ale(x3,x4,r);}
 return r;}

extern OBJ _ASmallReal_Sl(OBJ x1,OBJ x2) /* < */
{OBJ r;
 {OBJ x3;OBJ x4;
  ASmallReal_Aunpack(x1,x3);
  ASmallReal_Aunpack(x2,x4);
  ASmallReal_S_Alt(x3,x4,r);}
 return r;}

extern OBJ _ASmallReal_Sg(OBJ x1,OBJ x2) /* > */
{OBJ r;
 {OBJ x3;OBJ x4;
  ASmallReal_Aunpack(x2,x3);
  ASmallReal_Aunpack(x1,x4);
  ASmallReal_S_Alt(x3,x4,r);}
 return r;}

extern OBJ _ASmallReal_SSe(OBJ x1,OBJ x2) /* |= */
{OBJ r;
 {OBJ x3;OBJ x4;OBJ x5;
  ASmallReal_Aunpack(x1,x3);
  ASmallReal_Aunpack(x2,x4);
  ASmallReal_S_Aeq(x3,x4,x5);
  if(ISTGPRM(x5,1)){
   r=__ABUILTIN_3;
  }else{
   r=__ABUILTIN_5;}}
 return r;}

extern OBJ _ASmallReal_Asin(OBJ x1) /* sin */
{OBJ r;
 {OBJ x2;OBJ x3;
  ASmallReal_Aunpack(x1,x2);
  ASmallReal_S_Asin(x2,x3);
  ASmallReal_Apack(x3,r);}
 return r;}

extern OBJ _ASmallReal_Acos(OBJ x1) /* cos */
{OBJ r;
 {OBJ x2;OBJ x3;
  ASmallReal_Aunpack(x1,x2);
  ASmallReal_S_Acos(x2,x3);
  ASmallReal_Apack(x3,r);}
 return r;}

extern OBJ _ASmallReal_Atan(OBJ x1) /* tan */
{OBJ r;
 {OBJ x2;OBJ x3;
  ASmallReal_Aunpack(x1,x2);
  ASmallReal_S_Atan(x2,x3);
  ASmallReal_Apack(x3,r);}
 return r;}

extern OBJ _ASmallReal_Aarcsin(OBJ x1) /* arcsin */
{OBJ r;
 {OBJ x2;OBJ x3;
  ASmallReal_Aunpack(x1,x2);
  ASmallReal_S_Aarcsin(x2,x3);
  ASmallReal_Apack(x3,r);}
 return r;}

extern OBJ _ASmallReal_Aarccos(OBJ x1) /* arccos */
{OBJ r;
 {OBJ x2;OBJ x3;
  ASmallReal_Aunpack(x1,x2);
  ASmallReal_S_Aarccos(x2,x3);
  ASmallReal_Apack(x3,r);}
 return r;}

extern OBJ _ASmallReal_Aarctan(OBJ x1) /* arctan */
{OBJ r;
 {OBJ x2;OBJ x3;
  ASmallReal_Aunpack(x1,x2);
  ASmallReal_S_Aarctan(x2,x3);
  ASmallReal_Apack(x3,r);}
 return r;}

extern OBJ _ASmallReal_Aarctan2(OBJ x1,OBJ x2) /* arctan2 */
{OBJ r;
 {OBJ x3;OBJ x4;OBJ x5;
  ASmallReal_Aunpack(x1,x3);
  ASmallReal_Aunpack(x2,x4);
  ASmallReal_S_Aarctan2(x3,x4,x5);
  ASmallReal_Apack(x5,r);}
 return r;}

extern OBJ _ASmallReal_Asinh(OBJ x1) /* sinh */
{OBJ r;
 {OBJ x2;OBJ x3;
  ASmallReal_Aunpack(x1,x2);
  ASmallReal_S_Asinh(x2,x3);
  ASmallReal_Apack(x3,r);}
 return r;}

extern OBJ _ASmallReal_Acosh(OBJ x1) /* cosh */
{OBJ r;
 {OBJ x2;OBJ x3;
  ASmallReal_Aunpack(x1,x2);
  ASmallReal_S_Acosh(x2,x3);
  ASmallReal_Apack(x3,r);}
 return r;}

extern OBJ _ASmallReal_Atanh(OBJ x1) /* tanh */
{OBJ r;
 {OBJ x2;OBJ x3;
  ASmallReal_Aunpack(x1,x2);
  ASmallReal_S_Atanh(x2,x3);
  ASmallReal_Apack(x3,r);}
 return r;}

extern OBJ _ASmallReal_S1(OBJ x1) /* ! */
{OBJ r;
 {OBJ x2;
  x2=inline_opal_sreal(x1);
  ASmallReal_Apack(x2,r);}
 return r;}

extern OBJ _ASmallReal_AasReal(OBJ x1) /* asReal */
{OBJ r;
 {OBJ x2;
  ASmallReal_Aunpack(x1,x2);
  ASmallReal_S_AasReal(x2,r);}
 return r;}

extern OBJ _ASmallReal_Aprimitive_(OBJ x1) /* primitive? */
{OBJ r;
 r=__ABUILTIN_5;
 return r;}

extern OBJ _ASmallReal_Aprimitive__O1(OBJ x1) /* primitive?,1 */
{OBJ r;
 r=__ABUILTIN_5;
 return r;}

extern OBJ _ASmallReal_Asign_L132(OBJ x1) /* sign'132 */
{OBJ r;
 ASmallReal_Sm_O1(__ASmallReal_A1,r);
 return r;}


static void ___ASmallReal_3()
{
 /* __ASmallReal_A1 */
 {OBJ x1;
  x1=inline_c_sreal((float)(1));
  ASmallReal_Apack(x1,__ASmallReal_A1);}}

static void ___ASmallReal_4()
{
 /* __ASmallReal_A2 */
 {OBJ x1;
  x1=inline_c_sreal((float)(2));
  ASmallReal_Apack(x1,__ASmallReal_A2);}}

static void ___ASmallReal_5()
{
 /* __ASmallReal_A3 */
 {OBJ x1;
  x1=inline_c_sreal((float)(3));
  ASmallReal_Apack(x1,__ASmallReal_A3);}}

static void ___ASmallReal_6()
{
 /* __ASmallReal_A4 */
 {OBJ x1;
  x1=inline_c_sreal((float)(4));
  ASmallReal_Apack(x1,__ASmallReal_A4);}}

static void ___ASmallReal_7()
{
 /* __ASmallReal_A5 */
 {OBJ x1;
  x1=inline_c_sreal((float)(5));
  ASmallReal_Apack(x1,__ASmallReal_A5);}}

static void ___ASmallReal_8()
{
 /* __ASmallReal_A6 */
 {OBJ x1;
  x1=inline_c_sreal((float)(6));
  ASmallReal_Apack(x1,__ASmallReal_A6);}}

static void ___ASmallReal_9()
{
 /* __ASmallReal_A7 */
 {OBJ x1;
  x1=inline_c_sreal((float)(7));
  ASmallReal_Apack(x1,__ASmallReal_A7);}}

static void ___ASmallReal_10()
{
 /* __ASmallReal_A8 */
 {OBJ x1;
  x1=inline_c_sreal((float)(8));
  ASmallReal_Apack(x1,__ASmallReal_A8);}}

static void ___ASmallReal_11()
{
 /* __ASmallReal_A9 */
 {OBJ x1;
  x1=inline_c_sreal((float)(9));
  ASmallReal_Apack(x1,__ASmallReal_A9);}}

static void ___ASmallReal_12()
{
 /* __ASmallReal_A10 */
 {OBJ x1;
  x1=inline_c_sreal((float)(10));
  ASmallReal_Apack(x1,__ASmallReal_A10);}}

static void ___ASmallReal_13()
{
 /* __ASmallReal_A11 */
 {OBJ x1;
  x1=inline_c_sreal((float)(11));
  ASmallReal_Apack(x1,__ASmallReal_A11);}}

static void ___ASmallReal_14()
{
 /* __ASmallReal_A12 */
 {OBJ x1;
  x1=inline_c_sreal((float)(12));
  ASmallReal_Apack(x1,__ASmallReal_A12);}}

static void ___ASmallReal_15()
{
 /* __ASmallReal_A13 */
 {OBJ x1;
  x1=inline_c_sreal((float)(13));
  ASmallReal_Apack(x1,__ASmallReal_A13);}}

static void ___ASmallReal_16()
{
 /* __ASmallReal_A14 */
 {OBJ x1;
  x1=inline_c_sreal((float)(14));
  ASmallReal_Apack(x1,__ASmallReal_A14);}}

static void ___ASmallReal_17()
{
 /* __ASmallReal_A15 */
 {OBJ x1;
  x1=inline_c_sreal((float)(15));
  ASmallReal_Apack(x1,__ASmallReal_A15);}}

static void ___ASmallReal_18()
{
 /* __ASmallReal_A16 */
 {OBJ x1;
  x1=inline_c_sreal((float)(16));
  ASmallReal_Apack(x1,__ASmallReal_A16);}}

static void ___ASmallReal_19()
{
 /* __ASmallReal_A17 */
 {OBJ x1;
  x1=inline_c_sreal((float)(17));
  ASmallReal_Apack(x1,__ASmallReal_A17);}}

static void ___ASmallReal_20()
{
 /* __ASmallReal_A18 */
 {OBJ x1;
  x1=inline_c_sreal((float)(18));
  ASmallReal_Apack(x1,__ASmallReal_A18);}}

static void ___ASmallReal_21()
{
 /* __ASmallReal_A19 */
 {OBJ x1;
  x1=inline_c_sreal((float)(19));
  ASmallReal_Apack(x1,__ASmallReal_A19);}}

static void ___ASmallReal_22()
{
 /* __ASmallReal_A20 */
 {OBJ x1;
  x1=inline_c_sreal((float)(20));
  ASmallReal_Apack(x1,__ASmallReal_A20);}}

static void ___ASmallReal_23()
{
 /* __ASmallReal_A21 */
 {OBJ x1;
  x1=inline_c_sreal((float)(21));
  ASmallReal_Apack(x1,__ASmallReal_A21);}}

static void ___ASmallReal_24()
{
 /* __ASmallReal_A22 */
 {OBJ x1;
  x1=inline_c_sreal((float)(22));
  ASmallReal_Apack(x1,__ASmallReal_A22);}}

static void ___ASmallReal_25()
{
 /* __ASmallReal_A23 */
 {OBJ x1;
  x1=inline_c_sreal((float)(23));
  ASmallReal_Apack(x1,__ASmallReal_A23);}}

static void ___ASmallReal_26()
{
 /* __ASmallReal_A24 */
 {OBJ x1;
  x1=inline_c_sreal((float)(24));
  ASmallReal_Apack(x1,__ASmallReal_A24);}}

static void ___ASmallReal_27()
{
 /* __ASmallReal_A25 */
 {OBJ x1;
  x1=inline_c_sreal((float)(25));
  ASmallReal_Apack(x1,__ASmallReal_A25);}}

static void ___ASmallReal_28()
{
 /* __ASmallReal_A26 */
 {OBJ x1;
  x1=inline_c_sreal((float)(26));
  ASmallReal_Apack(x1,__ASmallReal_A26);}}

static void ___ASmallReal_29()
{
 /* __ASmallReal_A27 */
 {OBJ x1;
  x1=inline_c_sreal((float)(27));
  ASmallReal_Apack(x1,__ASmallReal_A27);}}

static void ___ASmallReal_30()
{
 /* __ASmallReal_A28 */
 {OBJ x1;
  x1=inline_c_sreal((float)(28));
  ASmallReal_Apack(x1,__ASmallReal_A28);}}

static void ___ASmallReal_31()
{
 /* __ASmallReal_A29 */
 {OBJ x1;
  x1=inline_c_sreal((float)(29));
  ASmallReal_Apack(x1,__ASmallReal_A29);}}

static void ___ASmallReal_32()
{
 /* __ASmallReal_A30 */
 {OBJ x1;
  x1=inline_c_sreal((float)(30));
  ASmallReal_Apack(x1,__ASmallReal_A30);}}

static void ___ASmallReal_33()
{
 /* __ASmallReal_A31 */
 {OBJ x1;
  x1=inline_c_sreal((float)(31));
  ASmallReal_Apack(x1,__ASmallReal_A31);}}

static void ___ASmallReal_34()
{
 /* __ASmallReal_A32 */
 {OBJ x1;
  x1=inline_c_sreal((float)(32));
  ASmallReal_Apack(x1,__ASmallReal_A32);}}

static void ___ASmallReal_35()
{
 /* __ASmallReal_A64 */
 {OBJ x1;
  x1=inline_c_sreal((float)(64));
  ASmallReal_Apack(x1,__ASmallReal_A64);}}

static void ___ASmallReal_36()
{
 /* __ASmallReal_A128 */
 {OBJ x1;
  x1=inline_c_sreal((float)(128));
  ASmallReal_Apack(x1,__ASmallReal_A128);}}

static void ___ASmallReal_37()
{
 /* __ASmallReal_A256 */
 {OBJ x1;
  x1=inline_c_sreal((float)(256));
  ASmallReal_Apack(x1,__ASmallReal_A256);}}

static void ___ASmallReal_38()
{
 /* __ASmallReal_A512 */
 {OBJ x1;
  x1=inline_c_sreal((float)(512));
  ASmallReal_Apack(x1,__ASmallReal_A512);}}

static void ___ASmallReal_39()
{
 /* __ASmallReal_A1024 */
 {OBJ x1;
  x1=inline_c_sreal((float)(1024));
  ASmallReal_Apack(x1,__ASmallReal_A1024);}}

static void ___ASmallReal_40()
{
 /* __ASmallReal_A100 */
 {OBJ x1;
  x1=inline_c_sreal((float)(100));
  ASmallReal_Apack(x1,__ASmallReal_A100);}}

static void ___ASmallReal_41()
{
 /* __ASmallReal_A1000 */
 {OBJ x1;
  x1=inline_c_sreal((float)(1000));
  ASmallReal_Apack(x1,__ASmallReal_A1000);}}

static void ___ASmallReal_42()
{
 /* __ASmallReal_A10000 */
 {OBJ x1;
  x1=inline_c_sreal((float)(10000));
  ASmallReal_Apack(x1,__ASmallReal_A10000);}}

static void ___ASmallReal_43()
{
 /* __ASmallReal_A100000 */
 {OBJ x1;
  x1=inline_c_sreal((float)(100000));
  ASmallReal_Apack(x1,__ASmallReal_A100000);}}

static void ___ASmallReal_44()
{
 /* __ASmallReal_A1000000 */
 {OBJ x1;
  x1=inline_c_sreal((float)(1000000));
  ASmallReal_Apack(x1,__ASmallReal_A1000000);}}








init_ASmallReal()
{
 static int visited=0; if(visited) return; visited=1;
 init_AReal();
 CLS(1,_ASmallReal_127,__ASmallReal_127);
 CLS(1,_ASmallReal_63,__ASmallReal_63);
 CLS(1,_ASmallReal_126,__ASmallReal_126);
 CLS(1,_ASmallReal_62,__ASmallReal_62);
 CLS(1,_ASmallReal_125,__ASmallReal_125);
 CLS(1,_ASmallReal_93,__ASmallReal_93);
 CLS(1,_ASmallReal_61,__ASmallReal_61);
 CLS(1,_ASmallReal_124,__ASmallReal_124);
 CLS(1,_ASmallReal_92,__ASmallReal_92);
 CLS(1,_ASmallReal_60,__ASmallReal_60);
 CLS(1,_ASmallReal_91,__ASmallReal_91);
 CLS(1,_ASmallReal_123,__ASmallReal_123);
 CLS(1,_ASmallReal_59,__ASmallReal_59);
 CLS(1,_ASmallReal_122,__ASmallReal_122);
 CLS(1,_ASmallReal_58,__ASmallReal_58);
 CLS(1,_ASmallReal_121,__ASmallReal_121);
 CLS(1,_ASmallReal_89,__ASmallReal_89);
 CLS(1,_ASmallReal_57,__ASmallReal_57);
 CLS(1,_ASmallReal_120,__ASmallReal_120);
 CLS(1,_ASmallReal_56,__ASmallReal_56);
 CLS(1,_ASmallReal_119,__ASmallReal_119);
 CLS(1,_ASmallReal_55,__ASmallReal_55);
 CLS(2,_ASmallReal_118,__ASmallReal_118);
 CLS(1,_ASmallReal_86,__ASmallReal_86);
 CLS(2,_ASmallReal_54,__ASmallReal_54);
 CLS(2,_ASmallReal_117,__ASmallReal_117);
 CLS(1,_ASmallReal_85,__ASmallReal_85);
 CLS(2,_ASmallReal_53,__ASmallReal_53);
 CLS(2,_ASmallReal_116,__ASmallReal_116);
 CLS(1,_ASmallReal_84,__ASmallReal_84);
 CLS(2,_ASmallReal_52,__ASmallReal_52);
 CLS(1,_ASmallReal_115,__ASmallReal_115);
 CLS(1,_ASmallReal_83,__ASmallReal_83);
 CLS(2,_ASmallReal_51,__ASmallReal_51);
 CLS(1,_ASmallReal_114,__ASmallReal_114);
 CLS(1,_ASmallReal_82,__ASmallReal_82);
 CLS(2,_ASmallReal_50,__ASmallReal_50);
 CLS(1,_ASmallReal_113,__ASmallReal_113);
 CLS(2,_ASmallReal_81,__ASmallReal_81);
 CLS(1,_ASmallReal_112,__ASmallReal_112);
 CLS(1,_ASmallReal_80,__ASmallReal_80);
 CLS(1,_ASmallReal_111,__ASmallReal_111);
 CLS(1,_ASmallReal_79,__ASmallReal_79);
 CLS(1,_ASmallReal_110,__ASmallReal_110);
 CLS(1,_ASmallReal_78,__ASmallReal_78);
 CLS(1,_ASmallReal_109,__ASmallReal_109);
 CLS(1,_ASmallReal_77,__ASmallReal_77);
 CLS(1,_ASmallReal_108,__ASmallReal_108);
 CLS(1,_ASmallReal_76,__ASmallReal_76);
 CLS(1,_ASmallReal_107,__ASmallReal_107);
 CLS(1,_ASmallReal_75,__ASmallReal_75);
 CLS(2,_ASmallReal_106,__ASmallReal_106);
 CLS(2,_ASmallReal_74,__ASmallReal_74);
 CLS(2,_ASmallReal_105,__ASmallReal_105);
 CLS(2,_ASmallReal_73,__ASmallReal_73);
 CLS(2,_ASmallReal_104,__ASmallReal_104);
 CLS(2,_ASmallReal_72,__ASmallReal_72);
 CLS(2,_ASmallReal_103,__ASmallReal_103);
 CLS(2,_ASmallReal_71,__ASmallReal_71);
 CLS(2,_ASmallReal_102,__ASmallReal_102);
 CLS(2,_ASmallReal_70,__ASmallReal_70);
 CLS(2,_ASmallReal_101,__ASmallReal_101);
 CLS(2,_ASmallReal_69,__ASmallReal_69);
 LCLS(1,_ASmallReal_132,__ASmallReal_132);
 CLS(1,_ASmallReal_68,__ASmallReal_68);
 CLS(2,_ASmallReal_100,__ASmallReal_100);
 CLS(1,_ASmallReal_131,__ASmallReal_131);
 CLS(1,_ASmallReal_67,__ASmallReal_67);
 CLS(1,_ASmallReal_130,__ASmallReal_130);
 CLS(1,_ASmallReal_66,__ASmallReal_66);
 CLS(1,_ASmallReal_129,__ASmallReal_129);
 CLS(2,_ASmallReal_65,__ASmallReal_65);
 CLS(2,_ASmallReal_128,__ASmallReal_128);
 CLS(2,_ASmallReal_64,__ASmallReal_64);
 init_const_ASmallReal();
 /* __ASmallReal_A0 */
 ASmallReal_Apack(__ASmallReal_S_A0,__ASmallReal_A0);
 ___ASmallReal_3();
 ___ASmallReal_4();
 ___ASmallReal_5();
 ___ASmallReal_6();
 ___ASmallReal_7();
 ___ASmallReal_8();
 ___ASmallReal_9();
 ___ASmallReal_10();
 ___ASmallReal_11();
 ___ASmallReal_12();
 ___ASmallReal_13();
 ___ASmallReal_14();
 ___ASmallReal_15();
 ___ASmallReal_16();
 ___ASmallReal_17();
 ___ASmallReal_18();
 ___ASmallReal_19();
 ___ASmallReal_20();
 ___ASmallReal_21();
 ___ASmallReal_22();
 ___ASmallReal_23();
 ___ASmallReal_24();
 ___ASmallReal_25();
 ___ASmallReal_26();
 ___ASmallReal_27();
 ___ASmallReal_28();
 ___ASmallReal_29();
 ___ASmallReal_30();
 ___ASmallReal_31();
 ___ASmallReal_32();
 ___ASmallReal_33();
 ___ASmallReal_34();
 ___ASmallReal_35();
 ___ASmallReal_36();
 ___ASmallReal_37();
 ___ASmallReal_38();
 ___ASmallReal_39();
 ___ASmallReal_40();
 ___ASmallReal_41();
 ___ASmallReal_42();
 ___ASmallReal_43();
 ___ASmallReal_44();
 /* __ASmallReal_Amin */
 ASmallReal_Apack(__ASmallReal_S_Aminval,__ASmallReal_Amin);
 /* __ASmallReal_Amax */
 ASmallReal_Apack(__ASmallReal_S_Amaxval,__ASmallReal_Amax);
 /* __ASmallReal_Aeps */
 ASmallReal_Apack(__ASmallReal_S_Aeps,__ASmallReal_Aeps);
 /* __ASmallReal_Api */
 ASmallReal_Apack(__ASmallReal_S_Api,__ASmallReal_Api);
 /* __ASmallReal_Ae */
 ASmallReal_Apack(__ASmallReal_S_Ae,__ASmallReal_Ae);
 /* __ASmallReal_Aprimitive */
 PRM1(__ASmallReal_Aprimitive);
 /* __ASmallReal_Aprimitive_O1 */
 PRM1(__ASmallReal_Aprimitive_O1);}

