 	return res;
 }
 
-vec3 HSLToRGB(vec3 hsl)
+vec3 HSLToRGB(in vec3 hsl)
 {
 	vec3 rgb;
 	



// Luminosity Blend mode creates the result color by combining the hue and saturation of the base color with the luminance of the blend color.
float BlendLuminosity1(float base, float blend)
{
	return base;
}
vec3 BlendLuminosity3(vec3 base, vec3 blend)
{
	vec3 baseHSL = RGBToHSL(base);
	return HSLToRGB(vec3(baseHSL.r, baseHSL.g, RGBToHSL(blend).b));
}
vec4 BlendLuminosity4(vec4 base, vec4 blend)
{
	vec3 hue = BlendLuminosity3(base.xyz, blend.xyz);
	return vec4(hue.x, hue.y, hue.z, BlendLuminosity1(base.w, blend.w));
}

float BlendLinearLightf(float s1, float s2)
{
	float oColor;
	

** Desaturation
*/

vec4 Desaturate(in vec3 color, in float Desaturation)
{
	vec3 grayXfer = vec3(0.3, 0.59, 0.11);
	vec3 gray = vec3(dot(grayXfer, color));
