add stack_trace function