uniform half4 colorGreen, colorRed;

half4 helper();

half4 main(float2 coords) {
    return helper();
}

enum class E {
    kBlack = 0,
    kGray  = 1,
    kWhite = 2
};

half4 helper() {
    E temp = E::kGray;
    switch (temp) {
        case E::kBlack: return colorRed;
        case E::kGray:  return colorGreen;
        case E::kWhite: return colorRed;
        default:        return colorRed;
    }
}
