lan refactoring iteration