#ifndef GROUP_H
#define GROUP_H
typedef struct stim_elt
{
char *s;
struct stim_elt *left, *right;
} stim_elt;
typedef struct stim
{
stim_elt *tree;
struct stim *next;
} stim;
typedef struct stim_list
{
stim *head, *tail;
int size;
} stim_list;
typedef struct resp
{
int lowerflag, upperflag, lower, upper, status_change, priority;
char *response;
struct resp *next;
} resp;
typedef struct resp_list
{
resp *head, *tail;
int size, priority_total;
} resp_list;
typedef struct group
{
char *name;
stim_list *s;
resp_list *r;
struct group *next;
} group;
typedef struct group_list
{
group *head, *tail;
int size;
} group_list;
group_list *group_load (char *);
void group_save (group_list *, char *);
void group_burn (group_list *);
void group_add (group_list *, char *);
void group_delete (group_list *, group *);
group *group_find (group_list *, char *);
#endif