revise the base case