I spotted a bug in all 5 types of gradients which led to thin lines in the output image being transparent if looping was used: