1OpCapability Shader 2%1 = OpExtInstImport "GLSL.std.450" 3OpMemoryModel Logical GLSL450 4OpEntryPoint Fragment %main "main" %sk_Clockwise %sk_FragColor 5OpExecutionMode %main OriginUpperLeft 6OpName %_kGuardedDivideEpsilon "$kGuardedDivideEpsilon" 7OpName %sk_Clockwise "sk_Clockwise" 8OpName %sk_FragColor "sk_FragColor" 9OpName %_UniformBuffer "_UniformBuffer" 10OpMemberName %_UniformBuffer 0 "src" 11OpMemberName %_UniformBuffer 1 "dst" 12OpName %blend_color_saturation_Qhh3 "blend_color_saturation_Qhh3" 13OpName %blend_hslc_h4h2h4h4 "blend_hslc_h4h2h4h4" 14OpName %alpha "alpha" 15OpName %sda "sda" 16OpName %dsa "dsa" 17OpName %l "l" 18OpName %r "r" 19OpName %_2_mn "_2_mn" 20OpName %_3_mx "_3_mx" 21OpName %_4_lum "_4_lum" 22OpName %_5_result "_5_result" 23OpName %_6_minComp "_6_minComp" 24OpName %_7_maxComp "_7_maxComp" 25OpName %main "main" 26OpDecorate %_kGuardedDivideEpsilon RelaxedPrecision 27OpDecorate %sk_Clockwise BuiltIn FrontFacing 28OpDecorate %sk_FragColor RelaxedPrecision 29OpDecorate %sk_FragColor Location 0 30OpDecorate %sk_FragColor Index 0 31OpMemberDecorate %_UniformBuffer 0 Offset 0 32OpMemberDecorate %_UniformBuffer 0 RelaxedPrecision 33OpMemberDecorate %_UniformBuffer 1 Offset 16 34OpMemberDecorate %_UniformBuffer 1 RelaxedPrecision 35OpDecorate %_UniformBuffer Block 36OpDecorate %18 Binding 0 37OpDecorate %18 DescriptorSet 0 38OpDecorate %28 RelaxedPrecision 39OpDecorate %29 RelaxedPrecision 40OpDecorate %30 RelaxedPrecision 41OpDecorate %31 RelaxedPrecision 42OpDecorate %32 RelaxedPrecision 43OpDecorate %33 RelaxedPrecision 44OpDecorate %36 RelaxedPrecision 45OpDecorate %37 RelaxedPrecision 46OpDecorate %38 RelaxedPrecision 47OpDecorate %39 RelaxedPrecision 48OpDecorate %40 RelaxedPrecision 49OpDecorate %41 RelaxedPrecision 50OpDecorate %42 RelaxedPrecision 51OpDecorate %alpha RelaxedPrecision 52OpDecorate %53 RelaxedPrecision 53OpDecorate %54 RelaxedPrecision 54OpDecorate %55 RelaxedPrecision 55OpDecorate %56 RelaxedPrecision 56OpDecorate %57 RelaxedPrecision 57OpDecorate %sda RelaxedPrecision 58OpDecorate %59 RelaxedPrecision 59OpDecorate %60 RelaxedPrecision 60OpDecorate %61 RelaxedPrecision 61OpDecorate %62 RelaxedPrecision 62OpDecorate %63 RelaxedPrecision 63OpDecorate %dsa RelaxedPrecision 64OpDecorate %65 RelaxedPrecision 65OpDecorate %66 RelaxedPrecision 66OpDecorate %67 RelaxedPrecision 67OpDecorate %68 RelaxedPrecision 68OpDecorate %69 RelaxedPrecision 69OpDecorate %l RelaxedPrecision 70OpDecorate %71 RelaxedPrecision 71OpDecorate %72 RelaxedPrecision 72OpDecorate %78 RelaxedPrecision 73OpDecorate %r RelaxedPrecision 74OpDecorate %80 RelaxedPrecision 75OpDecorate %81 RelaxedPrecision 76OpDecorate %87 RelaxedPrecision 77OpDecorate %88 RelaxedPrecision 78OpDecorate %89 RelaxedPrecision 79OpDecorate %_2_mn RelaxedPrecision 80OpDecorate %96 RelaxedPrecision 81OpDecorate %97 RelaxedPrecision 82OpDecorate %98 RelaxedPrecision 83OpDecorate %_3_mx RelaxedPrecision 84OpDecorate %107 RelaxedPrecision 85OpDecorate %108 RelaxedPrecision 86OpDecorate %111 RelaxedPrecision 87OpDecorate %112 RelaxedPrecision 88OpDecorate %114 RelaxedPrecision 89OpDecorate %115 RelaxedPrecision 90OpDecorate %117 RelaxedPrecision 91OpDecorate %_4_lum RelaxedPrecision 92OpDecorate %119 RelaxedPrecision 93OpDecorate %124 RelaxedPrecision 94OpDecorate %_5_result RelaxedPrecision 95OpDecorate %126 RelaxedPrecision 96OpDecorate %127 RelaxedPrecision 97OpDecorate %128 RelaxedPrecision 98OpDecorate %129 RelaxedPrecision 99OpDecorate %130 RelaxedPrecision 100OpDecorate %131 RelaxedPrecision 101OpDecorate %_6_minComp RelaxedPrecision 102OpDecorate %135 RelaxedPrecision 103OpDecorate %136 RelaxedPrecision 104OpDecorate %137 RelaxedPrecision 105OpDecorate %_7_maxComp RelaxedPrecision 106OpDecorate %148 RelaxedPrecision 107OpDecorate %149 RelaxedPrecision 108OpDecorate %150 RelaxedPrecision 109OpDecorate %151 RelaxedPrecision 110OpDecorate %152 RelaxedPrecision 111OpDecorate %153 RelaxedPrecision 112OpDecorate %154 RelaxedPrecision 113OpDecorate %155 RelaxedPrecision 114OpDecorate %163 RelaxedPrecision 115OpDecorate %164 RelaxedPrecision 116OpDecorate %165 RelaxedPrecision 117OpDecorate %166 RelaxedPrecision 118OpDecorate %167 RelaxedPrecision 119OpDecorate %168 RelaxedPrecision 120OpDecorate %169 RelaxedPrecision 121OpDecorate %170 RelaxedPrecision 122OpDecorate %171 RelaxedPrecision 123OpDecorate %172 RelaxedPrecision 124OpDecorate %173 RelaxedPrecision 125OpDecorate %174 RelaxedPrecision 126OpDecorate %175 RelaxedPrecision 127OpDecorate %176 RelaxedPrecision 128OpDecorate %177 RelaxedPrecision 129OpDecorate %178 RelaxedPrecision 130OpDecorate %179 RelaxedPrecision 131OpDecorate %180 RelaxedPrecision 132OpDecorate %181 RelaxedPrecision 133OpDecorate %182 RelaxedPrecision 134OpDecorate %183 RelaxedPrecision 135OpDecorate %184 RelaxedPrecision 136OpDecorate %185 RelaxedPrecision 137OpDecorate %186 RelaxedPrecision 138OpDecorate %187 RelaxedPrecision 139OpDecorate %188 RelaxedPrecision 140OpDecorate %189 RelaxedPrecision 141OpDecorate %190 RelaxedPrecision 142OpDecorate %191 RelaxedPrecision 143OpDecorate %192 RelaxedPrecision 144OpDecorate %202 RelaxedPrecision 145OpDecorate %206 RelaxedPrecision 146%float = OpTypeFloat 32 147%_ptr_Private_float = OpTypePointer Private %float 148%_kGuardedDivideEpsilon = OpVariable %_ptr_Private_float Private 149%bool = OpTypeBool 150%false = OpConstantFalse %bool 151%float_9_99999994en09 = OpConstant %float 9.99999994e-09 152%float_0 = OpConstant %float 0 153%_ptr_Input_bool = OpTypePointer Input %bool 154%sk_Clockwise = OpVariable %_ptr_Input_bool Input 155%v4float = OpTypeVector %float 4 156%_ptr_Output_v4float = OpTypePointer Output %v4float 157%sk_FragColor = OpVariable %_ptr_Output_v4float Output 158%_UniformBuffer = OpTypeStruct %v4float %v4float 159%_ptr_Uniform__UniformBuffer = OpTypePointer Uniform %_UniformBuffer 160%18 = OpVariable %_ptr_Uniform__UniformBuffer Uniform 161%v3float = OpTypeVector %float 3 162%_ptr_Function_v3float = OpTypePointer Function %v3float 163%23 = OpTypeFunction %float %_ptr_Function_v3float 164%v2float = OpTypeVector %float 2 165%_ptr_Function_v2float = OpTypePointer Function %v2float 166%_ptr_Function_v4float = OpTypePointer Function %v4float 167%46 = OpTypeFunction %v4float %_ptr_Function_v2float %_ptr_Function_v4float %_ptr_Function_v4float 168%_ptr_Function_float = OpTypePointer Function %float 169%float_1 = OpConstant %float 1 170%116 = OpConstantComposite %v3float %float_0 %float_0 %float_0 171%float_0_300000012 = OpConstant %float 0.300000012 172%float_0_589999974 = OpConstant %float 0.589999974 173%float_0_109999999 = OpConstant %float 0.109999999 174%123 = OpConstantComposite %v3float %float_0_300000012 %float_0_589999974 %float_0_109999999 175%void = OpTypeVoid 176%194 = OpTypeFunction %void 177%196 = OpConstantComposite %v2float %float_0 %float_1 178%_ptr_Uniform_v4float = OpTypePointer Uniform %v4float 179%int = OpTypeInt 32 1 180%int_0 = OpConstant %int 0 181%int_1 = OpConstant %int 1 182%blend_color_saturation_Qhh3 = OpFunction %float None %23 183%24 = OpFunctionParameter %_ptr_Function_v3float 184%25 = OpLabel 185%28 = OpLoad %v3float %24 186%29 = OpCompositeExtract %float %28 0 187%30 = OpLoad %v3float %24 188%31 = OpCompositeExtract %float %30 1 189%27 = OpExtInst %float %1 FMax %29 %31 190%32 = OpLoad %v3float %24 191%33 = OpCompositeExtract %float %32 2 192%26 = OpExtInst %float %1 FMax %27 %33 193%36 = OpLoad %v3float %24 194%37 = OpCompositeExtract %float %36 0 195%38 = OpLoad %v3float %24 196%39 = OpCompositeExtract %float %38 1 197%35 = OpExtInst %float %1 FMin %37 %39 198%40 = OpLoad %v3float %24 199%41 = OpCompositeExtract %float %40 2 200%34 = OpExtInst %float %1 FMin %35 %41 201%42 = OpFSub %float %26 %34 202OpReturnValue %42 203OpFunctionEnd 204%blend_hslc_h4h2h4h4 = OpFunction %v4float None %46 205%47 = OpFunctionParameter %_ptr_Function_v2float 206%48 = OpFunctionParameter %_ptr_Function_v4float 207%49 = OpFunctionParameter %_ptr_Function_v4float 208%50 = OpLabel 209%alpha = OpVariable %_ptr_Function_float Function 210%sda = OpVariable %_ptr_Function_v3float Function 211%dsa = OpVariable %_ptr_Function_v3float Function 212%l = OpVariable %_ptr_Function_v3float Function 213%74 = OpVariable %_ptr_Function_v3float Function 214%r = OpVariable %_ptr_Function_v3float Function 215%83 = OpVariable %_ptr_Function_v3float Function 216%_2_mn = OpVariable %_ptr_Function_float Function 217%_3_mx = OpVariable %_ptr_Function_float Function 218%103 = OpVariable %_ptr_Function_v3float Function 219%109 = OpVariable %_ptr_Function_v3float Function 220%_4_lum = OpVariable %_ptr_Function_float Function 221%_5_result = OpVariable %_ptr_Function_v3float Function 222%_6_minComp = OpVariable %_ptr_Function_float Function 223%_7_maxComp = OpVariable %_ptr_Function_float Function 224%53 = OpLoad %v4float %49 225%54 = OpCompositeExtract %float %53 3 226%55 = OpLoad %v4float %48 227%56 = OpCompositeExtract %float %55 3 228%57 = OpFMul %float %54 %56 229OpStore %alpha %57 230%59 = OpLoad %v4float %48 231%60 = OpVectorShuffle %v3float %59 %59 0 1 2 232%61 = OpLoad %v4float %49 233%62 = OpCompositeExtract %float %61 3 234%63 = OpVectorTimesScalar %v3float %60 %62 235OpStore %sda %63 236%65 = OpLoad %v4float %49 237%66 = OpVectorShuffle %v3float %65 %65 0 1 2 238%67 = OpLoad %v4float %48 239%68 = OpCompositeExtract %float %67 3 240%69 = OpVectorTimesScalar %v3float %66 %68 241OpStore %dsa %69 242%71 = OpLoad %v2float %47 243%72 = OpCompositeExtract %float %71 0 244%73 = OpFUnordNotEqual %bool %72 %float_0 245OpSelectionMerge %77 None 246OpBranchConditional %73 %75 %76 247%75 = OpLabel 248OpStore %74 %69 249OpBranch %77 250%76 = OpLabel 251OpStore %74 %63 252OpBranch %77 253%77 = OpLabel 254%78 = OpLoad %v3float %74 255OpStore %l %78 256%80 = OpLoad %v2float %47 257%81 = OpCompositeExtract %float %80 0 258%82 = OpFUnordNotEqual %bool %81 %float_0 259OpSelectionMerge %86 None 260OpBranchConditional %82 %84 %85 261%84 = OpLabel 262OpStore %83 %63 263OpBranch %86 264%85 = OpLabel 265OpStore %83 %69 266OpBranch %86 267%86 = OpLabel 268%87 = OpLoad %v3float %83 269OpStore %r %87 270%88 = OpLoad %v2float %47 271%89 = OpCompositeExtract %float %88 1 272%90 = OpFUnordNotEqual %bool %89 %float_0 273OpSelectionMerge %92 None 274OpBranchConditional %90 %91 %92 275%91 = OpLabel 276%96 = OpCompositeExtract %float %78 0 277%97 = OpCompositeExtract %float %78 1 278%95 = OpExtInst %float %1 FMin %96 %97 279%98 = OpCompositeExtract %float %78 2 280%94 = OpExtInst %float %1 FMin %95 %98 281OpStore %_2_mn %94 282%101 = OpExtInst %float %1 FMax %96 %97 283%100 = OpExtInst %float %1 FMax %101 %98 284OpStore %_3_mx %100 285%102 = OpFOrdGreaterThan %bool %100 %94 286OpSelectionMerge %106 None 287OpBranchConditional %102 %104 %105 288%104 = OpLabel 289%107 = OpCompositeConstruct %v3float %94 %94 %94 290%108 = OpFSub %v3float %78 %107 291OpStore %109 %87 292%110 = OpFunctionCall %float %blend_color_saturation_Qhh3 %109 293%111 = OpVectorTimesScalar %v3float %108 %110 294%112 = OpFSub %float %100 %94 295%114 = OpFDiv %float %float_1 %112 296%115 = OpVectorTimesScalar %v3float %111 %114 297OpStore %103 %115 298OpBranch %106 299%105 = OpLabel 300OpStore %103 %116 301OpBranch %106 302%106 = OpLabel 303%117 = OpLoad %v3float %103 304OpStore %l %117 305OpStore %r %69 306OpBranch %92 307%92 = OpLabel 308%124 = OpLoad %v3float %r 309%119 = OpDot %float %123 %124 310OpStore %_4_lum %119 311%127 = OpLoad %v3float %l 312%126 = OpDot %float %123 %127 313%128 = OpFSub %float %119 %126 314%129 = OpLoad %v3float %l 315%130 = OpCompositeConstruct %v3float %128 %128 %128 316%131 = OpFAdd %v3float %130 %129 317OpStore %_5_result %131 318%135 = OpCompositeExtract %float %131 0 319%136 = OpCompositeExtract %float %131 1 320%134 = OpExtInst %float %1 FMin %135 %136 321%137 = OpCompositeExtract %float %131 2 322%133 = OpExtInst %float %1 FMin %134 %137 323OpStore %_6_minComp %133 324%140 = OpExtInst %float %1 FMax %135 %136 325%139 = OpExtInst %float %1 FMax %140 %137 326OpStore %_7_maxComp %139 327%141 = OpFOrdLessThan %bool %133 %float_0 328OpSelectionMerge %143 None 329OpBranchConditional %141 %142 %143 330%142 = OpLabel 331%144 = OpFUnordNotEqual %bool %119 %133 332OpBranch %143 333%143 = OpLabel 334%145 = OpPhi %bool %false %92 %144 %142 335OpSelectionMerge %147 None 336OpBranchConditional %145 %146 %147 337%146 = OpLabel 338%148 = OpCompositeConstruct %v3float %119 %119 %119 339%149 = OpFSub %v3float %131 %148 340%150 = OpFSub %float %119 %133 341%151 = OpLoad %float %_kGuardedDivideEpsilon 342%152 = OpFAdd %float %150 %151 343%153 = OpFDiv %float %119 %152 344%154 = OpVectorTimesScalar %v3float %149 %153 345%155 = OpFAdd %v3float %148 %154 346OpStore %_5_result %155 347OpBranch %147 348%147 = OpLabel 349%156 = OpFOrdGreaterThan %bool %139 %57 350OpSelectionMerge %158 None 351OpBranchConditional %156 %157 %158 352%157 = OpLabel 353%159 = OpFUnordNotEqual %bool %139 %119 354OpBranch %158 355%158 = OpLabel 356%160 = OpPhi %bool %false %147 %159 %157 357OpSelectionMerge %162 None 358OpBranchConditional %160 %161 %162 359%161 = OpLabel 360%163 = OpLoad %v3float %_5_result 361%164 = OpCompositeConstruct %v3float %119 %119 %119 362%165 = OpFSub %v3float %163 %164 363%166 = OpFSub %float %57 %119 364%167 = OpVectorTimesScalar %v3float %165 %166 365%168 = OpFSub %float %139 %119 366%169 = OpLoad %float %_kGuardedDivideEpsilon 367%170 = OpFAdd %float %168 %169 368%171 = OpFDiv %float %float_1 %170 369%172 = OpVectorTimesScalar %v3float %167 %171 370%173 = OpFAdd %v3float %164 %172 371OpStore %_5_result %173 372OpBranch %162 373%162 = OpLabel 374%174 = OpLoad %v3float %_5_result 375%175 = OpLoad %v4float %49 376%176 = OpVectorShuffle %v3float %175 %175 0 1 2 377%177 = OpFAdd %v3float %174 %176 378%178 = OpFSub %v3float %177 %69 379%179 = OpLoad %v4float %48 380%180 = OpVectorShuffle %v3float %179 %179 0 1 2 381%181 = OpFAdd %v3float %178 %180 382%182 = OpFSub %v3float %181 %63 383%183 = OpCompositeExtract %float %182 0 384%184 = OpCompositeExtract %float %182 1 385%185 = OpCompositeExtract %float %182 2 386%186 = OpLoad %v4float %48 387%187 = OpCompositeExtract %float %186 3 388%188 = OpLoad %v4float %49 389%189 = OpCompositeExtract %float %188 3 390%190 = OpFAdd %float %187 %189 391%191 = OpFSub %float %190 %57 392%192 = OpCompositeConstruct %v4float %183 %184 %185 %191 393OpReturnValue %192 394OpFunctionEnd 395%main = OpFunction %void None %194 396%195 = OpLabel 397%197 = OpVariable %_ptr_Function_v2float Function 398%203 = OpVariable %_ptr_Function_v4float Function 399%207 = OpVariable %_ptr_Function_v4float Function 400%10 = OpSelect %float %false %float_9_99999994en09 %float_0 401OpStore %_kGuardedDivideEpsilon %10 402OpStore %197 %196 403%198 = OpAccessChain %_ptr_Uniform_v4float %18 %int_0 404%202 = OpLoad %v4float %198 405OpStore %203 %202 406%204 = OpAccessChain %_ptr_Uniform_v4float %18 %int_1 407%206 = OpLoad %v4float %204 408OpStore %207 %206 409%208 = OpFunctionCall %v4float %blend_hslc_h4h2h4h4 %197 %203 %207 410OpStore %sk_FragColor %208 411OpReturn 412OpFunctionEnd 413