add min stack for O(1) min function