typedef struct dynagg { /* a listset header */
LBS_NODE_PTR front; /* first element */
LBS_NODE_PTR back; /* last element */
int numel; /* number of elements */
} LBS, *LBS_PTR;
extern LBS_PTR lbs_init(); /* create an empty list/bag/set */
extern int lbs_empty(); /* TRUE iff arg is empty */
extern LBS_NODE_PTR lbs_prepend(); /* add element at front */
extern LBS_NODE_PTR lbs_append(); /* add element at back */
extern LBS_NODE_PTR lbs_insert(); /* add element after */
extern LBS_NODE_PTR lbs_remove(); /* remove el at pos */
extern LBS_NODE_PTR lbs_get_first(); /* the first el */
extern LBS_NODE_PTR lbs_get_last(); /* the last el */
extern LBS_NODE_PTR lbs_get_nth(); /* the n'th el */
extern LBS_NODE_PTR lbs_get_next_el(); /* the next el */
extern void free_lbsnode(); /* free an el */