Added timeout option