GLES Shader not working

is there anyway to make this shader actually work?
I’m having an error
Shader error in ‘’: Parse error: syntax error, unexpected TVAL_ID, expecting TOK_SETTEXTURE or ‘}’ at line 14

Shader "TurboChilli/Unlit/Color/Advanced/Fogless Alpha +10" {
Properties {
_Color ("Color", Color) = (1,1,1,1)
_Alpha ("Alpha", Float) = 0.75
}
SubShader {
LOD 200
Tags { "LIGHTMODE"="Always" "QUEUE"="Transparent+10" "IGNOREPROJECTOR"="true" }
Pass {
  Name "FORWARD"
  Tags { "LIGHTMODE"="Always" "QUEUE"="Transparent+10" "IGNOREPROJECTOR"="true" }
  Fog { Mode Off }
  Blend SrcAlpha OneMinusSrcAlpha
Program "vp" {
SubProgram "gles " {
"!!GLES


#ifdef VERTEX

attribute vec4 _glesVertex;
attribute vec4 _glesMultiTexCoord0;
uniform highp mat4 glstate_matrix_mvp;
uniform highp mat4 glstate_matrix_texture0;
varying mediump vec2 xlv_TEXCOORD0;
void main ()
{
  mediump vec2 tmpvar_1;
  tmpvar_1 = _glesMultiTexCoord0.xy;
  mediump vec2 tmpvar_2;
  highp vec2 tmpvar_3;
  highp vec2 inUV_4;
  inUV_4 = tmpvar_1;
  highp vec4 tmpvar_5;
  tmpvar_5.zw = vec2(0.0, 0.0);
  tmpvar_5.xy = inUV_4;
  tmpvar_3 = (glstate_matrix_texture0 * tmpvar_5).xy;
  tmpvar_2 = tmpvar_3;
  gl_Position = (glstate_matrix_mvp * _glesVertex);
  xlv_TEXCOORD0 = tmpvar_2;
}



#endif
#ifdef FRAGMENT

uniform lowp vec4 _Color;
uniform lowp float _Alpha;
void main ()
{
  lowp vec4 colr_1;
  colr_1.xyz = _Color.xyz;
  colr_1.w = (_Color.w * _Alpha);
  gl_FragData[0] = colr_1;
}



#endif"
}
SubProgram "gles3 " {
"!!GLES3#version 300 es


#ifdef VERTEX


in vec4 _glesVertex;
in vec4 _glesMultiTexCoord0;
uniform highp mat4 glstate_matrix_mvp;
uniform highp mat4 glstate_matrix_texture0;
out mediump vec2 xlv_TEXCOORD0;
void main ()
{
  mediump vec2 tmpvar_1;
  tmpvar_1 = _glesMultiTexCoord0.xy;
  mediump vec2 tmpvar_2;
  highp vec2 tmpvar_3;
  highp vec2 inUV_4;
  inUV_4 = tmpvar_1;
  highp vec4 tmpvar_5;
  tmpvar_5.zw = vec2(0.0, 0.0);
  tmpvar_5.xy = inUV_4;
  tmpvar_3 = (glstate_matrix_texture0 * tmpvar_5).xy;
  tmpvar_2 = tmpvar_3;
  gl_Position = (glstate_matrix_mvp * _glesVertex);
  xlv_TEXCOORD0 = tmpvar_2;
}



#endif
#ifdef FRAGMENT


layout(location=0) out mediump vec4 _glesFragData[4];
uniform lowp vec4 _Color;
uniform lowp float _Alpha;
void main ()
{
  lowp vec4 colr_1;
  colr_1.xyz = _Color.xyz;
  colr_1.w = (_Color.w * _Alpha);
  _glesFragData[0] = colr_1;
}



#endif"
}
}
Program "fp" {
SubProgram "gles " {
"!!GLES"
}
SubProgram "gles3 " {
"!!GLES3"
}
}
}
}
Fallback "Unlit/Transparent Cutout"
}

I’m not sure but it’s looks like precompiled shader,
current version of Unity don’t support them.

What I did tried was to bring the gles shader codes to GLSLPROGRAM
but it didnt behave very well.