; SPIR-V
; Version: 1.3
; Generator: Google Tint Compiler; 0
; Bound: 107
; Schema: 0
               OpCapability Shader
         %54 = OpExtInstImport "GLSL.std.450"
               OpMemoryModel Logical GLSL450
               OpEntryPoint Fragment %main "main" %tint_symbol_1
               OpExecutionMode %main OriginUpperLeft
               OpName %buf0 "buf0"
               OpMemberName %buf0 0 "x_GLF_uniform_int_values"
               OpName %x_6 "x_6"
               OpName %buf1 "buf1"
               OpMemberName %buf1 0 "x_GLF_uniform_float_values"
               OpName %x_9 "x_9"
               OpName %x_GLF_color "x_GLF_color"
               OpName %tint_symbol_1 "tint_symbol_1"
               OpName %main_1 "main_1"
               OpName %I "I"
               OpName %N "N"
               OpName %R "R"
               OpName %ref "ref"
               OpName %main_out "main_out"
               OpMemberName %main_out 0 "x_GLF_color_1"
               OpName %tint_symbol_2 "tint_symbol_2"
               OpName %tint_symbol "tint_symbol"
               OpName %main "main"
               OpDecorate %buf0 Block
               OpMemberDecorate %buf0 0 Offset 0
               OpDecorate %_arr_int_uint_5 ArrayStride 16
               OpDecorate %x_6 NonWritable
               OpDecorate %x_6 DescriptorSet 0
               OpDecorate %x_6 Binding 0
               OpDecorate %buf1 Block
               OpMemberDecorate %buf1 0 Offset 0
               OpDecorate %_arr_float_uint_3 ArrayStride 16
               OpDecorate %x_9 NonWritable
               OpDecorate %x_9 DescriptorSet 0
               OpDecorate %x_9 Binding 1
               OpDecorate %tint_symbol_1 Location 0
               OpMemberDecorate %main_out 0 Offset 0
        %int = OpTypeInt 32 1
       %uint = OpTypeInt 32 0
     %uint_5 = OpConstant %uint 5
%_arr_int_uint_5 = OpTypeArray %int %uint_5
       %buf0 = OpTypeStruct %_arr_int_uint_5
%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
        %x_6 = OpVariable %_ptr_Uniform_buf0 Uniform
      %float = OpTypeFloat 32
     %uint_3 = OpConstant %uint 3
%_arr_float_uint_3 = OpTypeArray %float %uint_3
       %buf1 = OpTypeStruct %_arr_float_uint_3
%_ptr_Uniform_buf1 = OpTypePointer Uniform %buf1
        %x_9 = OpVariable %_ptr_Uniform_buf1 Uniform
    %v4float = OpTypeVector %float 4
%_ptr_Private_v4float = OpTypePointer Private %v4float
         %17 = OpConstantNull %v4float
%x_GLF_color = OpVariable %_ptr_Private_v4float Private %17
%_ptr_Output_v4float = OpTypePointer Output %v4float
%tint_symbol_1 = OpVariable %_ptr_Output_v4float Output %17
       %void = OpTypeVoid
         %20 = OpTypeFunction %void
%_ptr_Function_v4float = OpTypePointer Function %v4float
     %uint_0 = OpConstant %uint 0
      %int_2 = OpConstant %int 2
%_ptr_Uniform_int = OpTypePointer Uniform %int
      %int_3 = OpConstant %int 3
      %int_4 = OpConstant %int 4
     %v4uint = OpTypeVector %uint 4
 %uint_92985 = OpConstant %uint 92985
      %int_1 = OpConstant %int 1
%_ptr_Uniform_float = OpTypePointer Uniform %float
  %float_0_5 = OpConstant %float 0.5
         %56 = OpConstantComposite %v4float %float_0_5 %float_0_5 %float_0_5 %float_0_5
      %int_0 = OpConstant %int 0
       %bool = OpTypeBool
   %main_out = OpTypeStruct %v4float
         %95 = OpTypeFunction %void %main_out
     %main_1 = OpFunction %void None %20
         %23 = OpLabel
          %I = OpVariable %_ptr_Function_v4float Function %17
          %N = OpVariable %_ptr_Function_v4float Function %17
          %R = OpVariable %_ptr_Function_v4float Function %17
        %ref = OpVariable %_ptr_Function_v4float Function %17
         %32 = OpAccessChain %_ptr_Uniform_int %x_6 %uint_0 %int_2
         %33 = OpLoad %int %32
         %35 = OpAccessChain %_ptr_Uniform_int %x_6 %uint_0 %int_3
         %36 = OpLoad %int %35
         %38 = OpAccessChain %_ptr_Uniform_int %x_6 %uint_0 %int_4
         %39 = OpLoad %int %38
         %42 = OpBitcast %uint %33
         %43 = OpBitcast %uint %36
         %44 = OpBitcast %uint %39
         %46 = OpCompositeConstruct %v4uint %42 %43 %44 %uint_92985
         %40 = OpBitcast %v4float %46
               OpStore %I %40
         %49 = OpAccessChain %_ptr_Uniform_float %x_9 %uint_0 %int_1
         %50 = OpLoad %float %49
         %51 = OpCompositeConstruct %v4float %50 %50 %50 %50
               OpStore %N %51
         %52 = OpLoad %v4float %I
         %53 = OpExtInst %v4float %54 Reflect %52 %56
               OpStore %R %53
         %57 = OpLoad %v4float %I
         %58 = OpAccessChain %_ptr_Uniform_float %x_9 %uint_0 %int_2
         %59 = OpLoad %float %58
         %60 = OpLoad %v4float %N
         %61 = OpLoad %v4float %I
         %62 = OpLoad %v4float %N
         %63 = OpDot %float %60 %61
         %64 = OpFMul %float %59 %63
         %65 = OpVectorTimesScalar %v4float %62 %64
         %66 = OpFSub %v4float %57 %65
               OpStore %ref %66
         %67 = OpLoad %v4float %R
         %68 = OpLoad %v4float %ref
         %70 = OpAccessChain %_ptr_Uniform_float %x_9 %uint_0 %int_0
         %71 = OpLoad %float %70
         %72 = OpExtInst %float %54 Distance %67 %68
         %73 = OpFOrdLessThan %bool %72 %71
               OpSelectionMerge %75 None
               OpBranchConditional %73 %76 %77
         %76 = OpLabel
         %78 = OpAccessChain %_ptr_Uniform_int %x_6 %uint_0 %int_0
         %79 = OpLoad %int %78
         %80 = OpAccessChain %_ptr_Uniform_int %x_6 %uint_0 %int_1
         %81 = OpLoad %int %80
         %82 = OpAccessChain %_ptr_Uniform_int %x_6 %uint_0 %int_1
         %83 = OpLoad %int %82
         %84 = OpAccessChain %_ptr_Uniform_int %x_6 %uint_0 %int_0
         %85 = OpLoad %int %84
         %86 = OpConvertSToF %float %79
         %87 = OpConvertSToF %float %81
         %88 = OpConvertSToF %float %83
         %89 = OpConvertSToF %float %85
         %90 = OpCompositeConstruct %v4float %86 %87 %88 %89
               OpStore %x_GLF_color %90
               OpBranch %75
         %77 = OpLabel
         %91 = OpAccessChain %_ptr_Uniform_int %x_6 %uint_0 %int_1
         %92 = OpLoad %int %91
         %93 = OpConvertSToF %float %92
         %94 = OpCompositeConstruct %v4float %93 %93 %93 %93
               OpStore %x_GLF_color %94
               OpBranch %75
         %75 = OpLabel
               OpReturn
               OpFunctionEnd
%tint_symbol_2 = OpFunction %void None %95
%tint_symbol = OpFunctionParameter %main_out
         %99 = OpLabel
        %100 = OpCompositeExtract %v4float %tint_symbol 0
               OpStore %tint_symbol_1 %100
               OpReturn
               OpFunctionEnd
       %main = OpFunction %void None %20
        %102 = OpLabel
        %103 = OpFunctionCall %void %main_1
        %105 = OpLoad %v4float %x_GLF_color
        %106 = OpCompositeConstruct %main_out %105
        %104 = OpFunctionCall %void %tint_symbol_2 %106
               OpReturn
               OpFunctionEnd
