add timeout setting