implemented time out after 30 min's inactivity