sleight refactoring