CBEffects 3.0 rewrite