add overload for timeout