anchor.diff:  		bottomRightOffset + vec2(radius),
   		topLeftOffset + vec2(radius));
   
  -	float maxDist = max(distanceFromShrunkRect.x, distanceFromShrunkRect.y);
  +	highp float maxDist = max(distanceFromShrunkRect.x, distanceFromShrunkRect.y);
   
   	// Inside the shrunk rectangle
   	if (maxDist <= 0.0)
  
positive.code: 
  float distanceFromDrawingRect()
  {
  	vec2 topLeftOffset = v_TexRect.xy - v_TexCoord;
  	topLeftOffset = vec2(
  		v_BlendRange.x > 0.0 ? topLeftOffset.x / v_BlendRange.x : 0.0,
  		v_BlendRange.y > 0.0 ? topLeftOffset.y / v_BlendRange.y : 0.0);
  
  	vec2 bottomRightOffset = v_TexCoord - v_TexRect.zw;
  	bottomRightOffset = vec2(
  		v_BlendRange.x > 0.0 ? bottomRightOffset.x / v_BlendRange.x : 0.0,
  		v_BlendRange.y > 0.0 ? bottomRightOffset.y / v_BlendRange.y : 0.0);
  
  	vec2 xyDistance = max(topLeftOffset, bottomRightOffset);
  	return max(xyDistance.x, xyDistance.y);
  }
  
  void main(void)
  {
  	float dist = distanceFromRoundedRect(vec2(0.0), g_CornerRadius);
  	float alphaFactor = 1.0;
  	vec4 texel = texture2D(m_Sampler, v_TexCoord, -0.9);
  
  	// Discard inner pixels
  	if (g_DiscardInner)
  	{
  		float innerDist = (g_EdgeOffset == vec2(0.0) && g_InnerCornerRadius == g_CornerRadius) ?
  			dist : distanceFromRoundedRect(g_EdgeOffset, g_InnerCornerRadius);
  
  		// v_BlendRange is set from outside in a hacky way to tell us the g_MaskingBlendRange used for the rounded
  		// corners of the edge effect container itself. We can then derive the alpha factor for smooth inner edge
  		// effect from that.
  		float innerBlendFactor = (g_InnerCornerRadius - g_MaskingBlendRange - innerDist) / v_BlendRange.x;
  		if (innerBlendFactor > 1.0)
  		{
  			gl_FragColor = vec4(0.0);
  
negative.code: 	// This ends up softening glow without negatively affecting edge smoothness much.
  	alphaFactor = pow(alphaFactor, g_AlphaExponent);
  
  	highp float borderStart = 1.0 + fadeStart - g_BorderThickness;
  	lowp float colourWeight = min(borderStart - dist, 1.0);
  	
  	if (colourWeight <= 0.0)
  	{
  		gl_FragColor = toSRGB(vec4(g_BorderColour.rgb, g_BorderColour.a * alphaFactor));
  