FIX: work with max_iter=1, though it does not make sense