npuzzle refactoring