Add sift task, refactoring continues