use timeout gem