WB smoothing + refactor