WIP: refactoring blending