adding readTimeOut as additional arg to assist retry