refactoring class ip
refactoring class ip ended