private void setGYRColorRange() {

		float red = 0.0f;
		float green = 1.0f;
		float blue = 0.0f;

		// since we are stepping through 2 colors, we double the rate of the step
		float step = (1.0f / (colors.length - 1)) * 10.0f;

		// red stays constant; green grows from 0.0 -> 1.0;
		for (int i = 0; i < colors.length; ++i) {

			colors[i] = new Color(red, green, blue);
			if (green == 1.0 && red < 1.0) {
				red += step;
				if (red > 1.0f)
					red = 1.0f;
			}
			else {
				// initially, green increases and the others stay constant.
				green -= step;
				if (green < 0.0)
					green = 0.0f;
			}
		}
	}
Establish the indexed color range; this is done 1 time.
<p>
<ul><li>
Index 0:                 Green
</li><li>
Index colors.length / 2: Yellow
</li><li>
Index colors.length:     Red
</li></ul>
<p>
<ul><li>
Red: 1.0,0.0,0.0
</li><li>
Green: 0.0, 1.0, 0.0
</li><li>
Yellow: 1.0, 1.0, 0.0
</li></ul>
Ghidra/Features/DecompilerDependent/src/main/java/ghidra/app/plugin/core/decompiler/taint/TaintCTokenHighlighterPalette.java