implemented langolier thread