language router infinite loop fix