adaptive language selection