progress on multiling refactoring