updated for Sparrow 2.0; missing: blend functions