//fwn/typedefs.h
#include <stdio.h>
#include <stdlib.h>

typedef size_t st$    typedef st¢ nst$  st stl, nstl$
typedef div_t dt$     typedef dt¢ ndt$  st dtl, ndtl$
typedef clock_t ct$   typedef ct¢ nct$  st ctl, nctl$
typedef FILE¢ fd$     typedef fd¢ nfd$  st fdl, nfdl$
typedef void¢ p$      typedef p¢ np$    st pl, npl$
typedef void n$

ᴤ nc is used as the type name for a standard C-style string.
  s is used in String.h as a type name for a string with more functionality. ¢/
typedef char c$       typedef c¢ nc$    st cl, ncl$

typedef unsigned char¢ b$   typedef b¢ nb$  st bl, nbl$
typedef int d$              typedef d¢ nd$  st dl, ndl$
typedef int tf$             typedef tf¢ ntf$  st tfl, ntfl$
typedef unsigned int u$     typedef u¢ nu$  st ul, nul$
typedef long ld$            typedef ld¢ nld$  st ldl, nldl$
typedef unsigned long lu$   typedef lu¢ nlu$  st lul, nlul$
typedef double f$           typedef f¢ nf$  st fl, nfl$
typedef long double lf$     typedef lf¢ nlf$  st lfl, nlfl$

#define Typedefs_Q \
  stl = sizeof(st)$  nstl = sizeof(nst)$ \
\
  dtl = sizeof(dt)$  ndtl = sizeof(ndt)$ \
  ctl = sizeof(ct)$  nctl = sizeof(nct)$ \
  fdl = sizeof(fd)$  nfdl = sizeof(nfd)$ \
  pl = sizeof(p)$  npl = sizeof(np)$ \
\
  cl = sizeof(c)$  ncl = sizeof(nc)$ \
  bl = sizeof(b)$  nbl = sizeof(nb)$ \
  dl = sizeof(d)$  ndl = sizeof(nd)$ \
  tfl = sizeof(tf)$  ntfl = sizeof(ntf)$ \
  ul = sizeof(u)$  nul = sizeof(nu)$ \
  ldl = sizeof(nd)$  nldl = sizeof(nld)$ \
  lul = sizeof(lu)$  nlul = sizeof(nlu)$ \
  fl = sizeof(f)$  nfl = sizeof(nf)$ \
  lfl = sizeof(lf)$  nlfl = sizeof(nlf)$

#define begin d main(d argc, nc¢ argv){ Typedefs_Q
#define end }
#define m(a) malloc(a)
#define f(p) free(p)
#define tstr typedef struct