def count_path_recursive(m, n):
    """Count number of paths with the recursive method."""
    def traverse(m, n, location=[1, 1]):
        # return 0 if past edge
        if location[0] > m or location[1] > n:
            return 0
        # return 1 if at end position
        if location == [m, n]:
            return 1
        return traverse(m, n, [location[0] + 1, location[1]]) + traverse(m, n, [location[0], location[1] + 1])

    return traverse(m, n)