inorder traverse with stack