/**
*
* This header file defines the information used by the standard I/O
* package.   VERSION 2
*
**/
#define _BUFSIZ 512           /* standard buffer size */
#define _NFILE 16             /* maximum number of files */

struct _iobuf
{
char *_ptr;         /* current buffer pointer */
int _cnt;           /* current byte count */
char *_base;        /* base address of I/O buffer */
char _flag;         /* control flags */
char _file;         /* file number */
};

extern struct _iobuf _iob[_NFILE];

#define _IOREAD 1             /* read flag */
#define _IOWRT 2              /* write flag */
#define _IONBF 4              /* non-buffered flag */
#define _IOMYBUF 8
#define _IOEOF 16             /* end-of-file flag */
#define _IOERR 32             /* error flag */
#define _IOSTR§ 64
#define _IORW 128

#define NULL 0                /* null pointer value */
#define FILE struct _iobuf      /* shorthand */
#define EOF (-1)              /* end-of-file code */

#define stdin (&_iob[0])        /* standard input file pointer */
#define stdout (&_iob[1])       /* standard output file pointer */
#define stderr (&_iob[2])       /* standard error file pointer */

#define getc(p) (--(p)->_cnt>=0? *(p0þÊJIÌ* Ô(VroLú)ter */

#defgs ()
#defi#defi)ter */

darfic,ne getc(p) (--(p)->_(( fi)(cnt>=0? *(p0=icú))Ì* lsVroicú,Lú)ter */

darfgs (cú
darfic,#defin)ter */

 nofine g(nt>=0?* er&#defin)!)-)ter */

 nandaine g(nt>=0?* er&#defin)!)-)ter */

  er  ine gt>=0?* erter */

onw
d(fne f  ek(fn,0L,-)ter */

 * rmh(fne * lsVrone,fneinte#defi*s pr ();te#defi*son pr ();tel  rrfil  ();teunt */f#des();teter */

abs(xe g(xe<->-(xe:(xe)ter */

   (a,be g(a)>(be?(a):(be)ter */

 
(a,be g(a)<=(be?(a):(be)tete