splite refactoring