Added contracts to shaders