added timeLimit option