
/* module: workspace */


/* module: /lib/libc.sa.1.8 */


/* module: /home/chainsaw4/ts/E/lib/as/as_costcomp.c */

int as_costcomp(struct as_node **, struct as_node **);

/* module: /home/chainsaw4/ts/E/lib/as/as_delete.c */

void as_reset(struct as_data *);
void as_delete(struct as_data *);

/* module: /home/chainsaw4/ts/E/lib/as/as_extend.c */

struct as_queue *as_extend(struct as_data *);

/* module: /home/chainsaw4/ts/E/lib/as/as_hash.c */

struct as_coord {
    int x;
    int y;
} ;
struct as_queue *as_iscinq(struct as_data *, struct as_coord);
void as_setcinq(struct as_data *, struct as_coord, struct as_queue *);
void as_free_hashtab(struct as_data *);

/* module: /home/chainsaw4/ts/E/lib/as/as_init.c */

struct as_data *as_init(int, int, int (*)(), int (*)(), double (*)(), double (*)(), double (*)(), char *);

/* module: /home/chainsaw4/ts/E/lib/as/as_merge.c */

struct as_queue *as_merge(struct as_data *, struct as_queue *, struct as_node **);

/* module: /home/chainsaw4/ts/E/lib/as/as_search.c */

int as_search(struct as_data *);

/* module: /home/chainsaw4/ts/E/lib/as/as_stats.c */

int as_stats(struct as_data *, struct _iobuf *);

/* module: /home/chainsaw4/ts/E/lib/as/as_winnow.c */

int as_winnow(struct as_data *, struct as_coord *, int);

/* module: /home/chainsaw4/ts/E/lib/client/removewants.c */

int update_removewants(void);

/* module: /home/chainsaw4/ts/E/lib/client/tm_natmod.c */

int natmod(char *, int *);

/* module: /home/chainsaw4/ts/E/lib/client/tm_news.c */

int nreport(unsigned char, int, unsigned char, int);
int sendreport(int, int, int, int);

/* module: /home/chainsaw4/ts/E/lib/client/tm_subr.c */

int tm_connect(void);
int tm_close(void);
int tm_lock(int);
int tm_unlock(int);
int tm_waitlock(int, int, char *);
int tm_input(struct iop *, int, char *);
/*VARARGS*/
int nat_value(int);
int setrel(unsigned char, unsigned char, int);
int setrej(unsigned char, unsigned char, int, int);
int tm_updatecheck(void);

/* module: /home/chainsaw4/ts/E/lib/common/bestpath.c */

char *bestpath(int, int, int, int, char *);
int navigable(int, int, char *);
char *bestownedpath(int, int, int, int, char *, int, int);
int owned_and_navigable(int, int, char *, int);

/* module: /home/chainsaw4/ts/E/lib/common/bigmap.c */

int openbigmap(int);
int closebigmap(void);
int writebigmap(void);
int forcebigmap(int, int, char);
int setbigmap(int, int, char);
int setbig(int, int, char, int);
char getbigmap(int, int);

/* module: /home/chainsaw4/ts/E/lib/common/bridgefall.c */

int bridgefall(struct sctstr *);

/* module: /home/chainsaw4/ts/E/lib/common/damage.c */

int shipdamage(struct shpstr *, int);
int landdamage(struct lndstr *, int);
int planedamage(struct plnstr *, int);
int nukedamage(struct nchrstr *, int, int);
int damage(int, int);

/* module: /home/chainsaw4/ts/E/lib/common/file.c */

int ef_open(int, int, int);
int ef_close(int);
char *ef_ptr(int, int);
int ef_read(int, int, char *);
int ef_nbread(int, int, char *);
int ef_nbwrite(int, int, char *);
int ef_zapcache(int);
struct castr *ef_cadef(int);
int ef_nelem(int);
int ef_flags(int);
int ef_lock(int);
int ef_unlock(int);
int ef_mtime(int);
int ef_vars(int, char *, unsigned char **, unsigned char **, unsigned short **);
int ef_byname(char *);
char *ef_nameof(int);

/* module: /home/chainsaw4/ts/E/lib/common/fmt.c */

/*VARARGS*/
char *fmt(int);

/* module: /home/chainsaw4/ts/E/lib/common/fsize.c */

int fsize(int);
int blksize(int);
int fdate(int);
int filetruncate(char *);

/* module: /home/chainsaw4/ts/E/lib/common/getvar.c */

int getvar(int, char *, int);
int getvec(int, int *, char *, int);
int putvar(int, int, char *, int);
int putvec(int, int *, char *, int);

/* module: /home/chainsaw4/ts/E/lib/common/hours.c */

int gamehours(int, int *);

/* module: /home/chainsaw4/ts/E/lib/common/keyword.c */

int kw_read(struct _iobuf *);
char *kw_find(char *);
char *kw_parse(int, char *, int *);
char *weekday(char *, int *);
char *get_time(char *, int *);

/* module: /home/chainsaw4/ts/E/lib/common/land.c */

int has_units(short, short, unsigned char);
int has_units_with_mob(short, short, unsigned char);

/* module: /home/chainsaw4/ts/E/lib/common/log.c */

int loginit(void);
/*VARARGS*/
int logerror(int);
/*VARARGS*/
int filelogerror(int);

/* module: /home/chainsaw4/ts/E/lib/common/mailbox.c */

char *mailbox(unsigned char);
char *wirebox(unsigned char);

/* module: /home/chainsaw4/ts/E/lib/common/move.c */

double sector_mcost(int, int);

/* module: /home/chainsaw4/ts/E/lib/common/nat.c */

char *cname(unsigned char);
char *relatename(struct natstr *, unsigned char);
char *rejectname(struct natstr *, unsigned char);
char *natstate(struct natstr *);
int getrel(struct natstr *, unsigned char);
int getrejects(unsigned char, struct natstr *);
int putrel(struct natstr *, unsigned char, int);
int putreject(struct natstr *, unsigned char, int, int);

/* module: /home/chainsaw4/ts/E/lib/common/natfield.c */

struct fixnat *natfield(int);
int natassign(struct fixnat *, char *, char *, int, int);

/* module: /home/chainsaw4/ts/E/lib/common/nstr_subs.c */

int nstr_exec(struct nscstr *, int, char *, int);
int decode(int, char *, int);

/* module: /home/chainsaw4/ts/E/lib/common/path.c */

char *bp_init(void);
int best_path(struct sctstr *, struct sctstr *, char *);
char *BestDistPath(struct sctstr *, struct sctstr *, double *);
char *BestLandPath(struct sctstr *, struct sctstr *, double *);
double pathcost(struct sctstr *, char *);

/* module: /home/chainsaw4/ts/E/lib/common/res_pop.c */

int max_pop(double);

/* module: /home/chainsaw4/ts/E/lib/common/sectdamage.c */

int sectdamage(struct sctstr *, int);

/* module: /home/chainsaw4/ts/E/lib/common/snxtit_subs.c */

int snxtitem_area(struct nstr_item *, int, struct range *);
int snxtitem_dist(struct nstr_item *, int, int, int, int);
int snxtitem_xy(struct nstr_item *, int, short, short);
int snxtitem_all(struct nstr_item *, int);
int snxtitem_group(struct nstr_item *, int, char);
int snxtitem_rewind(struct nstr_item *);
int snxtitem_list(struct nstr_item *, int, int *, int);

/* module: /home/chainsaw4/ts/E/lib/common/snxtsct_subs.c */

int snxtsct_all(struct nstr_sect *);
int snxtsct_area(struct nstr_sect *, struct range *);
int snxtsct_rewind(struct nstr_sect *);
int snxtsct_dist(struct nstr_sect *, short, short, int);
int xysize_range(struct range *);
int xydist_range(short, short, int, struct range *);

/* module: /home/chainsaw4/ts/E/lib/common/stmtch.c */

int stmtch(char *, char *, int, int);
int mineq(char *, char *);

/* module: /home/chainsaw4/ts/E/lib/common/tfact.c */

double tfact(unsigned char, double);
double techfact(int, double);
double reltech(int, int, double);

/* module: /home/chainsaw4/ts/E/lib/common/type.c */

int typematch(char *, int);

/* module: /home/chainsaw4/ts/E/lib/common/vlist.c */

int vl_find(int, unsigned char *, unsigned short *, int);
int vl_set(int, unsigned int, unsigned char *, unsigned short *, unsigned char *, int);
int vl_damage(int, unsigned char *, unsigned short *, int);
int vl_getvec(unsigned char *, unsigned short *, int, int, int *);
int vl_setvec(unsigned char *, unsigned short *, unsigned char *, int, int, int *);

/* module: /home/chainsaw4/ts/E/lib/common/wantupd.c */

int demand_update_want(int *, int *, int);
int demandupdatecheck(void);
int update_maxmissed(void);
int update_between(void);
int updatetime(int *);
int demand_update_info(int *, int *, int *, int *);
int next_update_time(int *, int *, int *);
int next_update_check_time(int *, int *, int *);
int updates_disabled(void);

/* module: /home/chainsaw4/ts/E/lib/common/xy.c */

char *xyas(short, short, unsigned char);
char *ownxy(struct sctstr *);
char *xyfmt(char *, short, short, unsigned char);
short xrel(struct natstr *, short);
short yrel(struct natstr *, short);
int xyrelrange(struct natstr *, struct range *, struct range *);
int xyabsrange(struct natstr *, struct range *, struct range *);
int inputxy(short *, short *, unsigned char);
short xabs(struct natstr *, short);
short yabs(struct natstr *, short);
int sctoff(short, short);
short xnorm(short);
short ynorm(short);
int xyinrange(short, short, struct range *);

/* module: /home/chainsaw4/ts/E/lib/gen/atoip.c */

int atoip(char **);

/* module: /home/chainsaw4/ts/E/lib/gen/atopi.c */

int atopi(char *);

/* module: /home/chainsaw4/ts/E/lib/gen/bit.c */

unsigned int *bit_newfdmask(void);
int bit_zero(unsigned int *);
int bit_not(unsigned int *);
int bit_copy(unsigned int *, unsigned int *);
int bit_or(unsigned int *, unsigned int *);
int bit_or3(unsigned int *, unsigned int *, unsigned int *);
int bit_and(unsigned int *, unsigned int *);
int bit_and3(unsigned int *, unsigned int *, unsigned int *);
int bit_fd(unsigned int *);

/* module: /home/chainsaw4/ts/E/lib/gen/chance.c */

int chance(double);
int roll(int);
int roundavg(double);

/* module: /home/chainsaw4/ts/E/lib/gen/copy.c */

char *copy(char *, char *);
int blankfill(char *, struct range *, int);

/* module: /home/chainsaw4/ts/E/lib/gen/disassoc.c */

int disassoc(void);

/* module: /home/chainsaw4/ts/E/lib/gen/dtable.c */

int setfdtablesize(int, int);
int getfdtablesize(void);

/* module: /home/chainsaw4/ts/E/lib/gen/getstarg.c */

char *getstarg(char *, char *);

/* module: /home/chainsaw4/ts/E/lib/gen/getstring.c */

char *getstring(char *);

/* module: /home/chainsaw4/ts/E/lib/gen/hpux.c */


/* module: /home/chainsaw4/ts/E/lib/gen/iceil.c */

int iceil(double);
int ifloor(double);

/* module: /home/chainsaw4/ts/E/lib/gen/inet.c */

struct in_addr {
    union /* unnamed */ {
        struct /* unnamed */ {
            unsigned char s_b1;
            unsigned char s_b2;
            unsigned char s_b3;
            unsigned char s_b4;
        } S_un_b;
        struct /* unnamed */ {
            unsigned short s_w1;
            unsigned short s_w2;
        } S_un_w;
        unsigned int S_addr;
    } S_un;
} ;
char *inet_ntoa(struct in_addr);

/* module: /home/chainsaw4/ts/E/lib/gen/io.c */

int io_init(void);
struct iop *io_open(int, int, int, int (*)(), char *);
int io_close(struct iop *);
int io_input(struct iop *);
int io_output(struct iop *);
int io_select(struct timeval *);
int io_flush(void);
int io_peek(struct iop *, char *, int);
int io_read(struct iop *, char *, int);
int io_write(struct iop *, char *, int);
int io_gets(struct iop *, char *, int);
int io_puts(struct iop *, char *);
int io_shutdown(struct iop *, int);
int io_noblocking(struct iop *, int);
int io_conn(struct iop *);
int io_error(struct iop *);
int io_eof(struct iop *);
int io_fileno(struct iop *);
struct iop *io_iopfromfd(int);

/* module: /home/chainsaw4/ts/E/lib/gen/io_mask.c */

struct io_mask *iom_create(int);
int iom_getmask(struct io_mask *, int *, unsigned int **, unsigned int **);
int iom_set(struct io_mask *, int, int);
int iom_clear(struct io_mask *, int, int);
int iom_zero(struct io_mask *, int);

/* module: /home/chainsaw4/ts/E/lib/gen/ioqueue.c */

struct ioqueue *ioq_create(int);
int ioq_destroy(struct ioqueue *);
int ioq_drain(struct ioqueue *);
int ioq_makeiov(struct ioqueue *, struct iovec *, int);
int ioq_peek(struct ioqueue *, char *, int);
int ioq_dequeue(struct ioqueue *, int);
int ioq_append(struct ioqueue *, char *, int);
int ioq_qsize(struct ioqueue *);
int ioq_gets(struct ioqueue *, char *, int);
int ioq_puts(struct ioqueue *, char *);

/* module: /home/chainsaw4/ts/E/lib/gen/lock.c */

int file_lock(int);
int file_unlock(int);

/* module: /home/chainsaw4/ts/E/lib/gen/mapdist.c */

int deltax(int, int);
int deltay(int, int);
int mapdist(int, int, int, int);
int mapdsq(int, int, int, int);

/* module: /home/chainsaw4/ts/E/lib/gen/minmax.c */

double dmax(double, double);
double dmin(double, double);
int max(int, int);
int min(int, int);

/* module: /home/chainsaw4/ts/E/lib/gen/numstr.c */

char *numstr(int);
char *effadv(int);

/* module: /home/chainsaw4/ts/E/lib/gen/onearg.c */

int onearg(char *, char *);

/* module: /home/chainsaw4/ts/E/lib/gen/parse.c */

int parse(char *, char **, char **, char *, char **);

/* module: /home/chainsaw4/ts/E/lib/gen/plur.c */

char *plur(int, char *, char *);
char *splur(int);
char *esplur(int);
char *iesplur(int);

/* module: /home/chainsaw4/ts/E/lib/gen/queue.c */

int insque(struct qelem *, struct qelem *);
int remque(struct qelem *);
int initque(struct qelem *);

/* module: /home/chainsaw4/ts/E/lib/gen/round.c */

int round(int, int);
int ldround(double, int);

/* module: /home/chainsaw4/ts/E/lib/gen/same.c */

int same(char *, char *);

/* module: /home/chainsaw4/ts/E/lib/gen/scthash.c */

int scthash(int, int, int);

/* module: /home/chainsaw4/ts/E/lib/gen/send_mail.c */

int send_mail(char *, int);

/* module: /home/chainsaw4/ts/E/lib/gen/sendtext.c */

int sendtext(char *, char *);

/* module: /home/chainsaw4/ts/E/lib/gen/signal.c */

int blocksig(void);
int unblocksig(void);
char *signame(int);

/* module: /home/chainsaw4/ts/E/lib/gen/strscan.c */

int strscan(char *, char *);

/* module: /home/chainsaw4/ts/E/lib/gen/vsprintf.c */

int vsprintf(char *, char *, char *);

/* module: /home/chainsaw4/ts/E/lib/global/constants.c */


/* module: /home/chainsaw4/ts/E/lib/global/dir.c */


/* module: /home/chainsaw4/ts/E/lib/global/file.c */


/* module: /home/chainsaw4/ts/E/lib/global/item.c */


/* module: /home/chainsaw4/ts/E/lib/global/land.c */


/* module: /home/chainsaw4/ts/E/lib/global/misc.c */


/* module: /home/chainsaw4/ts/E/lib/global/news.c */


/* module: /home/chainsaw4/ts/E/lib/global/nsc.c */


/* module: /home/chainsaw4/ts/E/lib/global/nuke.c */


/* module: /home/chainsaw4/ts/E/lib/global/numnames.c */


/* module: /home/chainsaw4/ts/E/lib/global/path.c */


/* module: /home/chainsaw4/ts/E/lib/global/plane.c */


/* module: /home/chainsaw4/ts/E/lib/global/product.c */


/* module: /home/chainsaw4/ts/E/lib/global/sect.c */


/* module: /home/chainsaw4/ts/E/lib/global/ship.c */


/* module: /home/chainsaw4/ts/E/lib/global/treaty.c */

