there is no need to use a stack