added blend mode support