add stack_implementation