typedef int collection_element;
typedef struct collection_node {
collection_element value;
struct collection_node * next;
} collection_node;
typedef struct {
int size;
collection_node *first,*last;
} collection_header;
typedef collection_header *collection;
collection_node * get_node_memory (void);
void return_node_memory (collection_node *);
collection_header * get_header_memory (void);
void return_header_memory (collection_header *);