addIfSleep now will do its own post request to the server. so it does double post requests.  not the most efficient. refactor later