typedef struct stack_s { void *element; struct stack_s *next; } stack; stack* stack_newEmptyStack(); stack* stack_newByCopyingStack(stack* theStack); void stack_delete(stack* theStack); void* stack_pop(stack* theStack); void stack_push(stack* theStack, void *element); int stack_size(stack* theStack);