The dual language model to explain code- switching