context analysis: move read_clause to tts::next_clause