--- source: render/naga-agal/tests/wgsl.rs assertion_line: 105 expression: output --- struct FragmentOutput { @location(0) member: vec4, } @group(0) @binding(1) var constant_registers: array,28u>; @group(0) @binding(2) var sampler0_: sampler; @group(0) @binding(3) var sampler1_: sampler; @group(0) @binding(4) var sampler2_: sampler; @group(0) @binding(5) var sampler3_: sampler; @group(0) @binding(6) var sampler4_: sampler; @group(0) @binding(7) var sampler5_: sampler; @group(0) @binding(8) var sampler6_: sampler; @group(0) @binding(9) var sampler7_: sampler; @group(0) @binding(10) var texture0_: texture_cube; @fragment fn main(@location(0) param: vec4) -> FragmentOutput { var dest_temp: vec4; var temporary0_: vec4; var temporary1_: vec4; var temporary2_: vec4; var temporary4_: vec4; var temporary3_: vec4; var temporary5_: vec4; var temporary6_: vec4; var temporary7_: vec4; var temporary8_: vec4; var temporary10_: vec4; var temporary9_: vec4; var temporary11_: vec4; var temporary12_: vec4; var temporary13_: vec4; var temporary14_: vec4; var temporary15_: vec4; var temporary16_: vec4; var temporary20_: vec4; var temporary18_: vec4; var temporary17_: vec4; var temporary19_: vec4; let _e12: vec4 = constant_registers[16u]; temporary0_ = _e12.xxxy; let _e19: vec4 = constant_registers[3u]; temporary1_.x = (param.xxxx * _e19.xxxx).x; temporary1_.y = param.yyyy.x; let _e30: vec4 = constant_registers[1u]; let _e31: vec4 = _e30.xxxx; temporary1_.z = _e31.z; temporary1_.w = _e31.w; let _e36: vec4 = temporary1_; let _e40: vec4 = constant_registers[16u]; let _e42: vec4 = (_e36.zzzw * _e40.zzzz); temporary1_.z = _e42.z; temporary1_.w = _e42.w; let _e47: vec4 = temporary1_; temporary1_.z = cos(_e47.zzzz).x; let _e52: vec4 = temporary1_; let _e56: vec4 = constant_registers[16u]; temporary2_.x = (_e52.zzzz * _e56.wwww).x; let _e64: vec4 = constant_registers[1u]; temporary1_.z = _e64.yyyy.x; let _e68: vec4 = temporary1_; let _e72: vec4 = constant_registers[16u]; temporary1_.z = (_e68.zzzz + _e72.yyyy).x; let _e77: vec4 = temporary1_; let _e81: vec4 = constant_registers[17u]; temporary1_.z = (_e77.zzzz * _e81.xxxx).x; let _e86: vec4 = temporary1_; let _e90: vec4 = constant_registers[17u]; temporary1_.z = max(_e86.zzzz, _e90.yyyy).x; let _e95: vec4 = temporary1_; temporary1_.w = sin(_e95.wwww).x; let _e100: vec4 = temporary1_; let _e104: vec4 = constant_registers[16u]; temporary2_.z = (_e100.wwww * _e104.wwww).x; let _e109: vec4 = temporary1_; temporary2_.y = _e109.zzzz.x; let _e115: vec4 = constant_registers[16u]; let _e116: vec4 = _e115.xxxx; temporary4_.x = _e116.x; temporary4_.z = _e116.z; let _e124: vec4 = constant_registers[17u]; temporary4_.y = _e124.zzzz.x; let _e130: vec4 = constant_registers[16u]; temporary1_.w = _e130.yyyy.x; let _e134: vec4 = temporary4_; let _e136: vec4 = temporary2_; let _e138: vec4 = (_e134.xyzz - _e136.xyzz); temporary3_.x = _e138.x; temporary3_.y = _e138.y; temporary3_.z = _e138.z; let _e146: vec4 = temporary3_; let _e148: vec3 = normalize(_e146.xyz); temporary3_.x = _e148.x; temporary3_.y = _e148.y; temporary3_.z = _e148.z; let _e157: vec4 = constant_registers[16u]; let _e159: vec4 = temporary3_; let _e161: vec3 = cross(_e157.xyx, _e159.xyz); let _e166: vec4 = vec4(_e161.x, _e161.y, _e161.z, 1.0); temporary5_.x = _e166.x; temporary5_.y = _e166.y; temporary5_.z = _e166.z; let _e174: vec4 = temporary5_; let _e176: vec3 = normalize(_e174.xyz); temporary6_.x = _e176.x; temporary6_.y = _e176.y; temporary6_.z = _e176.z; let _e184: vec4 = temporary3_; let _e186: vec4 = temporary6_; let _e188: vec3 = cross(_e184.xyz, _e186.xyz); let _e193: vec4 = vec4(_e188.x, _e188.y, _e188.z, 1.0); temporary5_.x = _e193.x; temporary5_.y = _e193.y; temporary5_.z = _e193.z; let _e200: vec4 = temporary3_; let _e202: vec4 = temporary1_; let _e204: vec4 = (_e200.xyzz * _e202.wwww); temporary3_.x = _e204.x; temporary3_.y = _e204.y; temporary3_.z = _e204.z; let _e211: vec4 = temporary6_; let _e213: vec4 = temporary1_; let _e215: vec4 = (_e211.xyzz * _e213.xxxx); temporary6_.x = _e215.x; temporary6_.y = _e215.y; temporary6_.z = _e215.z; let _e222: vec4 = temporary3_; let _e224: vec4 = temporary6_; let _e226: vec4 = (_e222.xyzz + _e224.xyzz); temporary7_.x = _e226.x; temporary7_.y = _e226.y; temporary7_.z = _e226.z; let _e234: vec4 = temporary5_; let _e236: vec4 = temporary1_; let _e238: vec4 = (_e234.xyzz * _e236.yyyy); temporary5_.x = _e238.x; temporary5_.y = _e238.y; temporary5_.z = _e238.z; let _e245: vec4 = temporary7_; let _e247: vec4 = temporary5_; let _e249: vec4 = (_e245.xyzz + _e247.xyzz); temporary5_.x = _e249.x; temporary5_.y = _e249.y; temporary5_.z = _e249.z; let _e256: vec4 = temporary5_; let _e258: vec3 = normalize(_e256.xyz); temporary8_.x = _e258.x; temporary8_.y = _e258.y; temporary8_.z = _e258.z; let _e266: vec4 = temporary8_; let _e267: vec4 = _e266.xyzz; temporary10_.x = _e267.x; temporary10_.y = _e267.y; temporary10_.z = _e267.z; let _e275: vec4 = temporary10_; let _e276: vec4 = _e275.xyzz; temporary9_.x = _e276.x; temporary9_.y = _e276.y; temporary9_.z = _e276.z; let _e286: vec4 = constant_registers[16u]; let _e287: vec4 = _e286.yxxx; temporary11_.x = _e287.x; temporary11_.y = _e287.y; temporary11_.z = _e287.z; let _e295: vec4 = temporary11_; let _e299: vec4 = constant_registers[16u]; if all((_e295.xxxx != _e299.xxxx)) { let _e305: vec4 = constant_registers[16u]; temporary1_.z = _e305.xxxx.x; let _e311: vec4 = constant_registers[17u]; temporary4_.z = _e311.wwww.x; let _e317: vec4 = constant_registers[16u]; let _e318: vec4 = _e317.xyxx; temporary3_.x = _e318.x; temporary3_.y = _e318.y; temporary3_.z = _e318.z; let _e325: vec4 = temporary3_; let _e326: vec4 = _e325.xyzz; temporary12_.x = _e326.x; temporary12_.y = _e326.y; temporary12_.z = _e326.z; let _e336: vec4 = constant_registers[17u]; temporary1_.x = _e336.wwww.x; let _e340: vec4 = temporary2_; let _e344: vec4 = constant_registers[16u]; let _e346: vec4 = (_e340.xyzz - _e344.xxxx); temporary13_.x = _e346.x; temporary13_.y = _e346.y; temporary13_.z = _e346.z; let _e354: vec4 = temporary13_; let _e356: vec4 = temporary12_; temporary1_.y = dot(_e354.xyz, _e356.xyz); let _e360: vec4 = temporary1_; temporary1_.y = -(_e360.yyyy).x; let _e365: vec4 = temporary9_; let _e367: vec4 = temporary12_; temporary12_.x = dot(_e365.xyz, _e367.xyz); let _e371: vec4 = temporary1_; let _e373: vec4 = temporary12_; temporary12_.y = (_e371.yyyy / _e373.xxxx).x; let _e378: vec4 = temporary12_; temporary1_.y = _e378.yyyy.x; let _e384: vec4 = constant_registers[16u]; let _e386: vec4 = temporary1_; temporary1_.w = vec4((_e384.xxxx < _e386.yyyy)).x; let _e392: vec4 = temporary1_; let _e396: vec4 = constant_registers[16u]; if all((_e392.wwww != _e396.xxxx)) { let _e400: vec4 = temporary1_; temporary1_.x = _e400.yyyy.x; } let _e404: vec4 = temporary1_; temporary4_.y = _e404.xxxx.x; let _e408: vec4 = temporary4_; let _e410: vec4 = temporary4_; temporary1_.x = vec4((_e408.yyyy < _e410.zzzz)).x; let _e416: vec4 = temporary1_; let _e420: vec4 = constant_registers[16u]; if all((_e416.xxxx != _e420.xxxx)) { let _e424: vec4 = temporary4_; temporary4_.z = _e424.yyyy.x; let _e428: vec4 = temporary3_; let _e429: vec4 = _e428.xyzz; temporary6_.x = _e429.x; temporary6_.y = _e429.y; temporary6_.z = _e429.z; let _e438: vec4 = constant_registers[16u]; temporary1_.z = _e438.yyyy.x; } let _e442: vec4 = temporary2_; let _e443: vec4 = _e442.xyzz; temporary5_.x = _e443.x; temporary5_.y = _e443.y; temporary5_.z = _e443.z; let _e450: vec4 = temporary9_; let _e451: vec4 = _e450.xyzz; temporary10_.x = _e451.x; temporary10_.y = _e451.y; temporary10_.z = _e451.z; let _e460: vec4 = constant_registers[4u]; let _e461: vec4 = _e460.xyzz; temporary8_.x = _e461.x; temporary8_.y = _e461.y; temporary8_.z = _e461.z; let _e470: vec4 = constant_registers[6u]; temporary14_.x = _e470.xxxx.x; let _e475: vec4 = temporary3_; let _e476: vec4 = _e475.xyzz; temporary15_.x = _e476.x; temporary15_.y = _e476.y; temporary15_.z = _e476.z; let _e486: vec4 = constant_registers[17u]; temporary1_.x = _e486.wwww.x; let _e490: vec4 = temporary5_; let _e492: vec4 = temporary8_; let _e494: vec4 = (_e490.xyzz - _e492.xyzz); temporary16_.x = _e494.x; temporary16_.y = _e494.y; temporary16_.z = _e494.z; let _e502: vec4 = temporary16_; let _e504: vec4 = temporary10_; temporary14_.z = dot(_e502.xyz, _e504.xyz); let _e508: vec4 = temporary14_; let _e510: vec4 = temporary14_; let _e512: vec4 = (_e508.zzzx * _e510.zzzx); temporary4_.x = _e512.x; temporary4_.w = _e512.w; let _e517: vec4 = temporary16_; let _e519: vec4 = temporary16_; temporary1_.y = dot(_e517.xyz, _e519.xyz); let _e523: vec4 = temporary4_; let _e525: vec4 = temporary1_; temporary1_.w = (_e523.xxxx - _e525.yyyy).x; let _e530: vec4 = temporary1_; let _e532: vec4 = temporary4_; temporary13_.x = (_e530.wwww + _e532.wwww).x; let _e537: vec4 = temporary13_; temporary1_.w = _e537.xxxx.x; let _e543: vec4 = constant_registers[16u]; let _e545: vec4 = temporary1_; temporary2_.w = vec4((_e543.xxxx < _e545.wwww)).x; let _e551: vec4 = temporary2_; let _e555: vec4 = constant_registers[16u]; if all((_e551.wwww != _e555.xxxx)) { let _e559: vec4 = temporary1_; temporary1_.w = sqrt(_e559.wwww).x; let _e564: vec4 = temporary14_; temporary1_.y = -(_e564.zzzz).x; let _e569: vec4 = temporary1_; let _e571: vec4 = temporary1_; temporary2_.w = (_e569.yyyy - _e571.wwww).x; let _e578: vec4 = constant_registers[16u]; let _e580: vec4 = temporary2_; temporary1_.y = vec4((_e578.xxxx < _e580.wwww)).x; let _e586: vec4 = temporary1_; let _e590: vec4 = constant_registers[16u]; if all((_e586.yyyy != _e590.xxxx)) { let _e594: vec4 = temporary2_; temporary1_.x = _e594.wwww.x; let _e598: vec4 = temporary10_; let _e600: vec4 = temporary2_; let _e602: vec4 = (_e598.xyzz * _e600.wwww); temporary13_.x = _e602.x; temporary13_.y = _e602.y; temporary13_.z = _e602.z; let _e609: vec4 = temporary5_; let _e611: vec4 = temporary13_; let _e613: vec4 = (_e609.xyzz + _e611.xyzz); temporary12_.x = _e613.x; temporary12_.y = _e613.y; temporary12_.z = _e613.z; let _e620: vec4 = temporary12_; let _e622: vec4 = temporary8_; let _e624: vec4 = (_e620.xyzz - _e622.xyzz); temporary14_.x = _e624.x; temporary14_.y = _e624.y; temporary14_.z = _e624.z; let _e631: vec4 = temporary14_; let _e633: vec3 = normalize(_e631.xyz); temporary16_.x = _e633.x; temporary16_.y = _e633.y; temporary16_.z = _e633.z; let _e640: vec4 = temporary16_; let _e641: vec4 = _e640.xyzz; temporary20_.x = _e641.x; temporary20_.y = _e641.y; temporary20_.z = _e641.z; let _e649: vec4 = temporary20_; let _e650: vec4 = _e649.xyzz; temporary15_.x = _e650.x; temporary15_.y = _e650.y; temporary15_.z = _e650.z; } } let _e657: vec4 = temporary1_; temporary4_.y = _e657.xxxx.x; let _e661: vec4 = temporary15_; let _e662: vec4 = _e661.xyzz; temporary3_.x = _e662.x; temporary3_.y = _e662.y; temporary3_.z = _e662.z; let _e669: vec4 = temporary4_; let _e671: vec4 = temporary4_; temporary1_.x = vec4((_e669.yyyy < _e671.zzzz)).x; let _e677: vec4 = temporary1_; let _e681: vec4 = constant_registers[16u]; if all((_e677.xxxx != _e681.xxxx)) { let _e685: vec4 = temporary4_; temporary4_.z = _e685.yyyy.x; let _e689: vec4 = temporary3_; let _e690: vec4 = _e689.xyzz; temporary6_.x = _e690.x; temporary6_.y = _e690.y; temporary6_.z = _e690.z; let _e699: vec4 = constant_registers[5u]; let _e700: vec4 = _e699.xyzz; temporary7_.x = _e700.x; temporary7_.y = _e700.y; temporary7_.z = _e700.z; let _e709: vec4 = constant_registers[18u]; temporary1_.z = _e709.xxxx.x; } let _e713: vec4 = temporary2_; let _e714: vec4 = _e713.xyzz; temporary5_.x = _e714.x; temporary5_.y = _e714.y; temporary5_.z = _e714.z; let _e721: vec4 = temporary9_; let _e722: vec4 = _e721.xyzz; temporary10_.x = _e722.x; temporary10_.y = _e722.y; temporary10_.z = _e722.z; let _e731: vec4 = constant_registers[7u]; let _e732: vec4 = _e731.xyzz; temporary8_.x = _e732.x; temporary8_.y = _e732.y; temporary8_.z = _e732.z; let _e741: vec4 = constant_registers[9u]; temporary15_.x = _e741.xxxx.x; let _e745: vec4 = temporary3_; let _e746: vec4 = _e745.xyzz; temporary18_.x = _e746.x; temporary18_.y = _e746.y; temporary18_.z = _e746.z; let _e756: vec4 = constant_registers[17u]; temporary1_.x = _e756.wwww.x; let _e760: vec4 = temporary5_; let _e762: vec4 = temporary8_; let _e764: vec4 = (_e760.xyzz - _e762.xyzz); temporary17_.x = _e764.x; temporary17_.y = _e764.y; temporary17_.z = _e764.z; let _e772: vec4 = temporary17_; let _e774: vec4 = temporary10_; temporary15_.z = dot(_e772.xyz, _e774.xyz); let _e778: vec4 = temporary15_; let _e780: vec4 = temporary15_; let _e782: vec4 = (_e778.zzzx * _e780.zzzx); temporary4_.x = _e782.x; temporary4_.w = _e782.w; let _e787: vec4 = temporary17_; let _e789: vec4 = temporary17_; temporary1_.y = dot(_e787.xyz, _e789.xyz); let _e793: vec4 = temporary4_; let _e795: vec4 = temporary1_; temporary1_.w = (_e793.xxxx - _e795.yyyy).x; let _e800: vec4 = temporary1_; let _e802: vec4 = temporary4_; temporary13_.x = (_e800.wwww + _e802.wwww).x; let _e807: vec4 = temporary13_; temporary1_.w = _e807.xxxx.x; let _e813: vec4 = constant_registers[16u]; let _e815: vec4 = temporary1_; temporary2_.w = vec4((_e813.xxxx < _e815.wwww)).x; let _e821: vec4 = temporary2_; let _e825: vec4 = constant_registers[16u]; if all((_e821.wwww != _e825.xxxx)) { let _e829: vec4 = temporary1_; temporary1_.w = sqrt(_e829.wwww).x; let _e834: vec4 = temporary15_; temporary1_.y = -(_e834.zzzz).x; let _e839: vec4 = temporary1_; let _e841: vec4 = temporary1_; temporary2_.w = (_e839.yyyy - _e841.wwww).x; let _e848: vec4 = constant_registers[16u]; let _e850: vec4 = temporary2_; temporary1_.y = vec4((_e848.xxxx < _e850.wwww)).x; let _e856: vec4 = temporary1_; let _e860: vec4 = constant_registers[16u]; if all((_e856.yyyy != _e860.xxxx)) { let _e864: vec4 = temporary2_; temporary1_.x = _e864.wwww.x; let _e868: vec4 = temporary10_; let _e870: vec4 = temporary2_; let _e872: vec4 = (_e868.xyzz * _e870.wwww); temporary13_.x = _e872.x; temporary13_.y = _e872.y; temporary13_.z = _e872.z; let _e879: vec4 = temporary5_; let _e881: vec4 = temporary13_; let _e883: vec4 = (_e879.xyzz + _e881.xyzz); temporary12_.x = _e883.x; temporary12_.y = _e883.y; temporary12_.z = _e883.z; let _e890: vec4 = temporary12_; let _e892: vec4 = temporary8_; let _e894: vec4 = (_e890.xyzz - _e892.xyzz); temporary14_.x = _e894.x; temporary14_.y = _e894.y; temporary14_.z = _e894.z; let _e901: vec4 = temporary14_; let _e903: vec3 = normalize(_e901.xyz); temporary16_.x = _e903.x; temporary16_.y = _e903.y; temporary16_.z = _e903.z; let _e910: vec4 = temporary16_; let _e911: vec4 = _e910.xyzz; temporary20_.x = _e911.x; temporary20_.y = _e911.y; temporary20_.z = _e911.z; let _e918: vec4 = temporary20_; let _e919: vec4 = _e918.xyzz; temporary18_.x = _e919.x; temporary18_.y = _e919.y; temporary18_.z = _e919.z; } } let _e926: vec4 = temporary1_; temporary4_.y = _e926.xxxx.x; let _e930: vec4 = temporary18_; let _e931: vec4 = _e930.xyzz; temporary3_.x = _e931.x; temporary3_.y = _e931.y; temporary3_.z = _e931.z; let _e938: vec4 = temporary4_; let _e940: vec4 = temporary4_; temporary1_.x = vec4((_e938.yyyy < _e940.zzzz)).x; let _e946: vec4 = temporary1_; let _e950: vec4 = constant_registers[16u]; if all((_e946.xxxx != _e950.xxxx)) { let _e954: vec4 = temporary4_; temporary4_.z = _e954.yyyy.x; let _e958: vec4 = temporary3_; let _e959: vec4 = _e958.xyzz; temporary6_.x = _e959.x; temporary6_.y = _e959.y; temporary6_.z = _e959.z; let _e968: vec4 = constant_registers[8u]; let _e969: vec4 = _e968.xyzz; temporary7_.x = _e969.x; temporary7_.y = _e969.y; temporary7_.z = _e969.z; let _e978: vec4 = constant_registers[18u]; temporary1_.z = _e978.xxxx.x; } let _e982: vec4 = temporary2_; let _e983: vec4 = _e982.xyzz; temporary5_.x = _e983.x; temporary5_.y = _e983.y; temporary5_.z = _e983.z; let _e990: vec4 = temporary9_; let _e991: vec4 = _e990.xyzz; temporary10_.x = _e991.x; temporary10_.y = _e991.y; temporary10_.z = _e991.z; let _e1000: vec4 = constant_registers[10u]; let _e1001: vec4 = _e1000.xyzz; temporary8_.x = _e1001.x; temporary8_.y = _e1001.y; temporary8_.z = _e1001.z; let _e1010: vec4 = constant_registers[12u]; temporary15_.x = _e1010.xxxx.x; let _e1014: vec4 = temporary3_; let _e1015: vec4 = _e1014.xyzz; temporary17_.x = _e1015.x; temporary17_.y = _e1015.y; temporary17_.z = _e1015.z; let _e1024: vec4 = constant_registers[17u]; temporary15_.y = _e1024.wwww.x; let _e1028: vec4 = temporary5_; let _e1030: vec4 = temporary8_; let _e1032: vec4 = (_e1028.xyzz - _e1030.xyzz); temporary18_.x = _e1032.x; temporary18_.y = _e1032.y; temporary18_.z = _e1032.z; let _e1039: vec4 = temporary18_; let _e1041: vec4 = temporary10_; temporary15_.z = dot(_e1039.xyz, _e1041.xyz); let _e1045: vec4 = temporary15_; let _e1047: vec4 = temporary15_; let _e1049: vec4 = (_e1045.zzzx * _e1047.zzzx); temporary1_.x = _e1049.x; temporary1_.w = _e1049.w; let _e1054: vec4 = temporary18_; let _e1056: vec4 = temporary18_; temporary19_.y = dot(_e1054.xyz, _e1056.xyz); let _e1061: vec4 = temporary1_; let _e1063: vec4 = temporary19_; temporary19_.z = (_e1061.xxxx - _e1063.yyyy).x; let _e1068: vec4 = temporary19_; let _e1070: vec4 = temporary1_; temporary13_.x = (_e1068.zzzz + _e1070.wwww).x; let _e1075: vec4 = temporary13_; temporary1_.x = _e1075.xxxx.x; let _e1081: vec4 = constant_registers[16u]; let _e1083: vec4 = temporary1_; temporary19_.x = vec4((_e1081.xxxx < _e1083.xxxx)).x; let _e1089: vec4 = temporary19_; let _e1093: vec4 = constant_registers[16u]; if all((_e1089.xxxx != _e1093.xxxx)) { let _e1097: vec4 = temporary1_; temporary1_.x = sqrt(_e1097.xxxx).x; let _e1102: vec4 = temporary15_; temporary19_.y = -(_e1102.zzzz).x; let _e1107: vec4 = temporary19_; let _e1109: vec4 = temporary1_; temporary19_.z = (_e1107.yyyy - _e1109.xxxx).x; let _e1114: vec4 = temporary19_; temporary19_.x = _e1114.zzzz.x; let _e1120: vec4 = constant_registers[16u]; let _e1122: vec4 = temporary19_; temporary19_.y = vec4((_e1120.xxxx < _e1122.xxxx)).x; let _e1128: vec4 = temporary19_; let _e1132: vec4 = constant_registers[16u]; if all((_e1128.yyyy != _e1132.xxxx)) { let _e1136: vec4 = temporary19_; temporary15_.y = _e1136.xxxx.x; let _e1140: vec4 = temporary10_; let _e1142: vec4 = temporary19_; let _e1144: vec4 = (_e1140.xyzz * _e1142.xxxx); temporary13_.x = _e1144.x; temporary13_.y = _e1144.y; temporary13_.z = _e1144.z; let _e1151: vec4 = temporary5_; let _e1153: vec4 = temporary13_; let _e1155: vec4 = (_e1151.xyzz + _e1153.xyzz); temporary12_.x = _e1155.x; temporary12_.y = _e1155.y; temporary12_.z = _e1155.z; let _e1162: vec4 = temporary12_; let _e1164: vec4 = temporary8_; let _e1166: vec4 = (_e1162.xyzz - _e1164.xyzz); temporary14_.x = _e1166.x; temporary14_.y = _e1166.y; temporary14_.z = _e1166.z; let _e1173: vec4 = temporary14_; let _e1175: vec3 = normalize(_e1173.xyz); temporary16_.x = _e1175.x; temporary16_.y = _e1175.y; temporary16_.z = _e1175.z; let _e1182: vec4 = temporary16_; let _e1183: vec4 = _e1182.xyzz; temporary20_.x = _e1183.x; temporary20_.y = _e1183.y; temporary20_.z = _e1183.z; let _e1190: vec4 = temporary20_; let _e1191: vec4 = _e1190.xyzz; temporary17_.x = _e1191.x; temporary17_.y = _e1191.y; temporary17_.z = _e1191.z; } } let _e1198: vec4 = temporary15_; temporary4_.y = _e1198.yyyy.x; let _e1202: vec4 = temporary17_; let _e1203: vec4 = _e1202.xyzz; temporary3_.x = _e1203.x; temporary3_.y = _e1203.y; temporary3_.z = _e1203.z; let _e1210: vec4 = temporary4_; let _e1212: vec4 = temporary4_; temporary1_.y = vec4((_e1210.yyyy < _e1212.zzzz)).x; let _e1218: vec4 = temporary1_; let _e1222: vec4 = constant_registers[16u]; if all((_e1218.yyyy != _e1222.xxxx)) { let _e1226: vec4 = temporary4_; temporary4_.z = _e1226.yyyy.x; let _e1230: vec4 = temporary3_; let _e1231: vec4 = _e1230.xyzz; temporary6_.x = _e1231.x; temporary6_.y = _e1231.y; temporary6_.z = _e1231.z; let _e1240: vec4 = constant_registers[11u]; let _e1241: vec4 = _e1240.xyzz; temporary7_.x = _e1241.x; temporary7_.y = _e1241.y; temporary7_.z = _e1241.z; let _e1250: vec4 = constant_registers[18u]; temporary1_.z = _e1250.xxxx.x; } let _e1254: vec4 = temporary11_; let _e1258: vec4 = constant_registers[16u]; temporary11_.y = (_e1254.yyyy + _e1258.yyyy).x; let _e1263: vec4 = temporary1_; let _e1267: vec4 = constant_registers[16u]; temporary1_.y = vec4((_e1263.zzzz == _e1267.xxxx)).x; let _e1273: vec4 = temporary1_; let _e1277: vec4 = constant_registers[16u]; if all((_e1273.yyyy != _e1277.xxxx)) { let _e1283: vec4 = constant_registers[16u]; let _e1284: vec4 = _e1283.xyyy; temporary11_.x = _e1284.x; temporary11_.z = _e1284.z; } else { let _e1289: vec4 = temporary9_; let _e1291: vec4 = temporary4_; let _e1293: vec4 = (_e1289.xyzz * _e1291.zzzz); temporary5_.x = _e1293.x; temporary5_.y = _e1293.y; temporary5_.z = _e1293.z; let _e1300: vec4 = temporary2_; let _e1302: vec4 = temporary5_; let _e1304: vec4 = (_e1300.xyzz + _e1302.xyzz); temporary2_.x = _e1304.x; temporary2_.y = _e1304.y; temporary2_.z = _e1304.z; let _e1311: vec4 = temporary9_; let _e1313: vec4 = temporary6_; temporary1_.y = dot(_e1311.xyz, _e1313.xyz); let _e1317: vec4 = temporary1_; let _e1321: vec4 = constant_registers[18u]; temporary5_.x = (_e1317.yyyy * _e1321.xxxx).x; let _e1326: vec4 = temporary5_; let _e1328: vec4 = temporary6_; let _e1330: vec4 = (_e1326.xxxx * _e1328.xyzz); temporary10_.x = _e1330.x; temporary10_.y = _e1330.y; temporary10_.z = _e1330.z; let _e1337: vec4 = temporary9_; let _e1339: vec4 = temporary10_; let _e1341: vec4 = (_e1337.xyzz - _e1339.xyzz); temporary9_.x = _e1341.x; temporary9_.y = _e1341.y; temporary9_.z = _e1341.z; let _e1348: vec4 = temporary9_; let _e1352: vec4 = constant_registers[18u]; let _e1354: vec4 = (_e1348.xyzz * _e1352.yyyy); temporary5_.x = _e1354.x; temporary5_.y = _e1354.y; temporary5_.z = _e1354.z; let _e1361: vec4 = temporary2_; let _e1363: vec4 = temporary5_; let _e1365: vec4 = (_e1361.xyzz + _e1363.xyzz); temporary2_.x = _e1365.x; temporary2_.y = _e1365.y; temporary2_.z = _e1365.z; let _e1374: vec4 = constant_registers[15u]; let _e1376: vec4 = temporary2_; let _e1378: vec4 = (_e1374.xyzz - _e1376.xyzz); temporary5_.x = _e1378.x; temporary5_.y = _e1378.y; temporary5_.z = _e1378.z; let _e1385: vec4 = temporary5_; let _e1387: vec3 = normalize(_e1385.xyz); temporary10_.x = _e1387.x; temporary10_.y = _e1387.y; temporary10_.z = _e1387.z; let _e1394: vec4 = temporary5_; let _e1396: vec4 = temporary5_; temporary8_.x = dot(_e1394.xyz, _e1396.xyz); let _e1400: vec4 = temporary8_; temporary1_.y = sqrt(_e1400.xxxx).x; let _e1405: vec4 = temporary6_; let _e1407: vec4 = temporary10_; temporary8_.y = dot(_e1405.xyz, _e1407.xyz); let _e1411: vec4 = temporary8_; temporary8_.z = saturate(_e1411.yyyy).x; let _e1416: vec4 = temporary1_; let _e1418: vec4 = temporary1_; temporary2_.w = (_e1416.yyyy * _e1418.yyyy).x; let _e1423: vec4 = temporary2_; let _e1427: vec4 = constant_registers[18u]; temporary15_.x = (_e1423.wwww * _e1427.zzzz).x; let _e1434: vec4 = constant_registers[18u]; let _e1436: vec4 = temporary15_; temporary15_.y = (_e1434.wwww + _e1436.xxxx).x; let _e1441: vec4 = temporary8_; let _e1443: vec4 = temporary15_; temporary8_.x = (_e1441.zzzz / _e1443.yyyy).x; let _e1450: vec4 = constant_registers[6u]; temporary8_.z = _e1450.xxxx.x; let _e1456: vec4 = constant_registers[17u]; temporary2_.w = _e1456.wwww.x; let _e1460: vec4 = temporary2_; let _e1464: vec4 = constant_registers[4u]; let _e1466: vec4 = (_e1460.xyzz - _e1464.xyzz); temporary19_.x = _e1466.x; temporary19_.y = _e1466.y; temporary19_.z = _e1466.z; let _e1473: vec4 = temporary19_; let _e1475: vec4 = temporary10_; temporary13_.x = dot(_e1473.xyz, _e1475.xyz); let _e1479: vec4 = temporary13_; let _e1481: vec4 = temporary13_; temporary13_.z = (_e1479.xxxx * _e1481.xxxx).x; let _e1486: vec4 = temporary19_; let _e1488: vec4 = temporary19_; temporary3_.w = dot(_e1486.xyz, _e1488.xyz); let _e1492: vec4 = temporary13_; let _e1494: vec4 = temporary3_; temporary12_.x = (_e1492.zzzz - _e1494.wwww).x; let _e1499: vec4 = temporary8_; let _e1501: vec4 = temporary8_; temporary12_.y = (_e1499.zzzz * _e1501.zzzz).x; let _e1506: vec4 = temporary12_; let _e1508: vec4 = temporary12_; temporary13_.y = (_e1506.xxxx + _e1508.yyyy).x; let _e1515: vec4 = constant_registers[16u]; let _e1517: vec4 = temporary13_; temporary13_.z = vec4((_e1515.xxxx < _e1517.yyyy)).x; let _e1523: vec4 = temporary13_; let _e1527: vec4 = constant_registers[16u]; if all((_e1523.zzzz != _e1527.xxxx)) { let _e1531: vec4 = temporary13_; temporary13_.y = sqrt(_e1531.yyyy).x; let _e1536: vec4 = temporary13_; temporary3_.w = -(_e1536.xxxx).x; let _e1541: vec4 = temporary3_; let _e1543: vec4 = temporary13_; temporary13_.z = (_e1541.wwww - _e1543.yyyy).x; let _e1550: vec4 = constant_registers[16u]; let _e1552: vec4 = temporary13_; temporary3_.w = vec4((_e1550.xxxx < _e1552.zzzz)).x; let _e1558: vec4 = temporary3_; let _e1562: vec4 = constant_registers[16u]; if all((_e1558.wwww != _e1562.xxxx)) { let _e1566: vec4 = temporary13_; temporary2_.w = _e1566.zzzz.x; } } let _e1570: vec4 = temporary2_; let _e1572: vec4 = temporary1_; temporary8_.y = vec4((_e1570.wwww < _e1572.yyyy)).x; let _e1578: vec4 = temporary8_; let _e1582: vec4 = constant_registers[16u]; if all((_e1578.yyyy != _e1582.xxxx)) { let _e1588: vec4 = constant_registers[16u]; temporary8_.x = _e1588.xxxx.x; } let _e1594: vec4 = constant_registers[9u]; temporary8_.z = _e1594.xxxx.x; let _e1600: vec4 = constant_registers[17u]; temporary2_.w = _e1600.wwww.x; let _e1604: vec4 = temporary2_; let _e1608: vec4 = constant_registers[7u]; let _e1610: vec4 = (_e1604.xyzz - _e1608.xyzz); temporary19_.x = _e1610.x; temporary19_.y = _e1610.y; temporary19_.z = _e1610.z; let _e1617: vec4 = temporary19_; let _e1619: vec4 = temporary10_; temporary13_.x = dot(_e1617.xyz, _e1619.xyz); let _e1623: vec4 = temporary13_; let _e1625: vec4 = temporary13_; temporary13_.z = (_e1623.xxxx * _e1625.xxxx).x; let _e1630: vec4 = temporary19_; let _e1632: vec4 = temporary19_; temporary3_.w = dot(_e1630.xyz, _e1632.xyz); let _e1636: vec4 = temporary13_; let _e1638: vec4 = temporary3_; temporary12_.x = (_e1636.zzzz - _e1638.wwww).x; let _e1643: vec4 = temporary8_; let _e1645: vec4 = temporary8_; temporary12_.y = (_e1643.zzzz * _e1645.zzzz).x; let _e1650: vec4 = temporary12_; let _e1652: vec4 = temporary12_; temporary13_.y = (_e1650.xxxx + _e1652.yyyy).x; let _e1659: vec4 = constant_registers[16u]; let _e1661: vec4 = temporary13_; temporary13_.z = vec4((_e1659.xxxx < _e1661.yyyy)).x; let _e1667: vec4 = temporary13_; let _e1671: vec4 = constant_registers[16u]; if all((_e1667.zzzz != _e1671.xxxx)) { let _e1675: vec4 = temporary13_; temporary13_.y = sqrt(_e1675.yyyy).x; let _e1680: vec4 = temporary13_; temporary3_.w = -(_e1680.xxxx).x; let _e1685: vec4 = temporary3_; let _e1687: vec4 = temporary13_; temporary13_.z = (_e1685.wwww - _e1687.yyyy).x; let _e1694: vec4 = constant_registers[16u]; let _e1696: vec4 = temporary13_; temporary3_.w = vec4((_e1694.xxxx < _e1696.zzzz)).x; let _e1702: vec4 = temporary3_; let _e1706: vec4 = constant_registers[16u]; if all((_e1702.wwww != _e1706.xxxx)) { let _e1710: vec4 = temporary13_; temporary2_.w = _e1710.zzzz.x; } } let _e1714: vec4 = temporary2_; let _e1716: vec4 = temporary1_; temporary8_.y = vec4((_e1714.wwww < _e1716.yyyy)).x; let _e1722: vec4 = temporary8_; let _e1726: vec4 = constant_registers[16u]; if all((_e1722.yyyy != _e1726.xxxx)) { let _e1732: vec4 = constant_registers[16u]; temporary8_.x = _e1732.xxxx.x; } let _e1736: vec4 = temporary2_; let _e1737: vec4 = _e1736.xyzz; temporary15_.x = _e1737.x; temporary15_.y = _e1737.y; temporary15_.z = _e1737.z; let _e1744: vec4 = temporary10_; let _e1745: vec4 = _e1744.xyzz; temporary17_.x = _e1745.x; temporary17_.y = _e1745.y; temporary17_.z = _e1745.z; let _e1754: vec4 = constant_registers[10u]; let _e1755: vec4 = _e1754.xyzz; temporary18_.x = _e1755.x; temporary18_.y = _e1755.y; temporary18_.z = _e1755.z; let _e1764: vec4 = constant_registers[12u]; temporary8_.z = _e1764.xxxx.x; let _e1770: vec4 = constant_registers[17u]; temporary2_.w = _e1770.wwww.x; let _e1774: vec4 = temporary15_; let _e1776: vec4 = temporary18_; let _e1778: vec4 = (_e1774.xyzz - _e1776.xyzz); temporary19_.x = _e1778.x; temporary19_.y = _e1778.y; temporary19_.z = _e1778.z; let _e1785: vec4 = temporary19_; let _e1787: vec4 = temporary17_; temporary13_.x = dot(_e1785.xyz, _e1787.xyz); let _e1791: vec4 = temporary13_; let _e1793: vec4 = temporary13_; temporary13_.z = (_e1791.xxxx * _e1793.xxxx).x; let _e1798: vec4 = temporary19_; let _e1800: vec4 = temporary19_; temporary3_.w = dot(_e1798.xyz, _e1800.xyz); let _e1804: vec4 = temporary13_; let _e1806: vec4 = temporary3_; temporary12_.x = (_e1804.zzzz - _e1806.wwww).x; let _e1811: vec4 = temporary8_; let _e1813: vec4 = temporary8_; temporary12_.y = (_e1811.zzzz * _e1813.zzzz).x; let _e1818: vec4 = temporary12_; let _e1820: vec4 = temporary12_; temporary12_.z = (_e1818.xxxx + _e1820.yyyy).x; let _e1825: vec4 = temporary12_; temporary13_.y = _e1825.zzzz.x; let _e1831: vec4 = constant_registers[16u]; let _e1833: vec4 = temporary13_; temporary13_.z = vec4((_e1831.xxxx < _e1833.yyyy)).x; let _e1839: vec4 = temporary13_; let _e1843: vec4 = constant_registers[16u]; if all((_e1839.zzzz != _e1843.xxxx)) { let _e1847: vec4 = temporary13_; temporary13_.y = sqrt(_e1847.yyyy).x; let _e1852: vec4 = temporary13_; temporary3_.w = -(_e1852.xxxx).x; let _e1857: vec4 = temporary3_; let _e1859: vec4 = temporary13_; temporary12_.x = (_e1857.wwww - _e1859.yyyy).x; let _e1864: vec4 = temporary12_; temporary13_.z = _e1864.xxxx.x; let _e1870: vec4 = constant_registers[16u]; let _e1872: vec4 = temporary13_; temporary3_.w = vec4((_e1870.xxxx < _e1872.zzzz)).x; let _e1878: vec4 = temporary3_; let _e1882: vec4 = constant_registers[16u]; if all((_e1878.wwww != _e1882.xxxx)) { let _e1886: vec4 = temporary13_; temporary2_.w = _e1886.zzzz.x; } } let _e1890: vec4 = temporary2_; temporary4_.y = _e1890.wwww.x; let _e1894: vec4 = temporary4_; let _e1896: vec4 = temporary1_; temporary8_.y = vec4((_e1894.yyyy < _e1896.yyyy)).x; let _e1902: vec4 = temporary8_; let _e1906: vec4 = constant_registers[16u]; if all((_e1902.yyyy != _e1906.xxxx)) { let _e1912: vec4 = constant_registers[16u]; temporary8_.x = _e1912.xxxx.x; } let _e1916: vec4 = temporary6_; temporary8_.y = saturate(_e1916.yyyy).x; let _e1921: vec4 = temporary8_; let _e1925: vec4 = constant_registers[19u]; temporary8_.z = (_e1921.yyyy * _e1925.xxxx).x; let _e1930: vec4 = temporary8_; let _e1932: vec4 = temporary8_; temporary8_.x = (_e1930.xxxx + _e1932.zzzz).x; let _e1937: vec4 = temporary8_; let _e1941: vec4 = constant_registers[19u]; temporary8_.z = (_e1937.xxxx * _e1941.yyyy).x; let _e1948: vec4 = constant_registers[19u]; let _e1950: vec4 = temporary8_; temporary2_.w = (_e1948.zzzz + _e1950.zzzz).x; let _e1955: vec4 = temporary2_; temporary8_.y = _e1955.wwww.x; let _e1959: vec4 = temporary1_; let _e1963: vec4 = constant_registers[16u]; temporary8_.z = vec4((_e1959.zzzz == _e1963.yyyy)).x; let _e1969: vec4 = temporary8_; let _e1973: vec4 = constant_registers[16u]; if all((_e1969.zzzz != _e1973.xxxx)) { let _e1977: vec4 = temporary2_; temporary8_.z = fract(_e1977.xxxx).x; let _e1982: vec4 = temporary2_; let _e1984: vec4 = temporary8_; temporary2_.w = (_e1982.xxxx - _e1984.zzzz).x; let _e1989: vec4 = temporary2_; temporary15_.x = fract(_e1989.zzzz).x; let _e1994: vec4 = temporary2_; let _e1996: vec4 = temporary15_; temporary15_.y = (_e1994.zzzz - _e1996.xxxx).x; let _e2001: vec4 = temporary2_; let _e2003: vec4 = temporary15_; temporary15_.z = (_e2001.wwww + _e2003.yyyy).x; let _e2008: vec4 = temporary15_; let _e2012: vec4 = constant_registers[18u]; temporary1_.x = (_e2008.zzzz / _e2012.xxxx).x; let _e2017: vec4 = temporary1_; temporary17_.x = fract(_e2017.xxxx).x; let _e2022: vec4 = temporary17_; let _e2026: vec4 = constant_registers[18u]; temporary17_.y = (_e2022.xxxx * _e2026.xxxx).x; let _e2031: vec4 = temporary17_; let _e2035: vec4 = constant_registers[16u]; temporary17_.z = vec4((_e2031.yyyy == _e2035.yyyy)).x; let _e2041: vec4 = temporary17_; let _e2045: vec4 = constant_registers[16u]; if all((_e2041.zzzz != _e2045.xxxx)) { let _e2051: vec4 = constant_registers[13u]; let _e2053: vec4 = temporary8_; let _e2055: vec4 = (_e2051.xyzz * _e2053.yyyy); temporary15_.x = _e2055.x; temporary15_.y = _e2055.y; temporary15_.z = _e2055.z; let _e2062: vec4 = temporary0_; let _e2064: vec4 = temporary15_; let _e2066: vec4 = (_e2062.xyzz + _e2064.xyzz); temporary0_.x = _e2066.x; temporary0_.y = _e2066.y; temporary0_.z = _e2066.z; } else { let _e2075: vec4 = constant_registers[14u]; let _e2077: vec4 = temporary8_; let _e2079: vec4 = (_e2075.xyzz * _e2077.yyyy); temporary15_.x = _e2079.x; temporary15_.y = _e2079.y; temporary15_.z = _e2079.z; let _e2086: vec4 = temporary0_; let _e2088: vec4 = temporary15_; let _e2090: vec4 = (_e2086.xyzz + _e2088.xyzz); temporary0_.x = _e2090.x; temporary0_.y = _e2090.y; temporary0_.z = _e2090.z; } } let _e2097: vec4 = temporary1_; let _e2101: vec4 = constant_registers[18u]; temporary8_.z = vec4((_e2097.zzzz == _e2101.xxxx)).x; let _e2107: vec4 = temporary8_; let _e2111: vec4 = constant_registers[16u]; if all((_e2107.zzzz != _e2111.xxxx)) { let _e2115: vec4 = temporary7_; let _e2117: vec4 = temporary8_; let _e2119: vec4 = (_e2115.xyzz * _e2117.yyyy); temporary15_.x = _e2119.x; temporary15_.y = _e2119.y; temporary15_.z = _e2119.z; let _e2126: vec4 = temporary0_; let _e2128: vec4 = temporary15_; let _e2130: vec4 = (_e2126.xyzz + _e2128.xyzz); temporary0_.x = _e2130.x; temporary0_.y = _e2130.y; temporary0_.z = _e2130.z; } let _e2139: vec4 = constant_registers[16u]; temporary11_.x = _e2139.yyyy.x; } } let _e2143: vec4 = temporary11_; let _e2147: vec4 = constant_registers[16u]; if all((_e2143.xxxx != _e2147.xxxx)) { let _e2153: vec4 = constant_registers[16u]; temporary1_.z = _e2153.xxxx.x; let _e2159: vec4 = constant_registers[17u]; temporary4_.z = _e2159.wwww.x; let _e2165: vec4 = constant_registers[16u]; let _e2166: vec4 = _e2165.xyxx; temporary3_.x = _e2166.x; temporary3_.y = _e2166.y; temporary3_.z = _e2166.z; let _e2173: vec4 = temporary3_; let _e2174: vec4 = _e2173.xyzz; temporary12_.x = _e2174.x; temporary12_.y = _e2174.y; temporary12_.z = _e2174.z; let _e2183: vec4 = constant_registers[17u]; temporary2_.w = _e2183.wwww.x; let _e2187: vec4 = temporary2_; let _e2191: vec4 = constant_registers[16u]; let _e2193: vec4 = (_e2187.xyzz - _e2191.xxxx); temporary20_.x = _e2193.x; temporary20_.y = _e2193.y; temporary20_.z = _e2193.z; let _e2200: vec4 = temporary20_; let _e2202: vec4 = temporary12_; temporary14_.y = dot(_e2200.xyz, _e2202.xyz); let _e2206: vec4 = temporary14_; temporary14_.z = -(_e2206.yyyy).x; let _e2211: vec4 = temporary9_; let _e2213: vec4 = temporary12_; temporary4_.x = dot(_e2211.xyz, _e2213.xyz); let _e2217: vec4 = temporary14_; let _e2219: vec4 = temporary4_; temporary16_.x = (_e2217.zzzz / _e2219.xxxx).x; let _e2224: vec4 = temporary16_; temporary14_.x = _e2224.xxxx.x; let _e2230: vec4 = constant_registers[16u]; let _e2232: vec4 = temporary14_; temporary14_.y = vec4((_e2230.xxxx < _e2232.xxxx)).x; let _e2238: vec4 = temporary14_; let _e2242: vec4 = constant_registers[16u]; if all((_e2238.yyyy != _e2242.xxxx)) { let _e2246: vec4 = temporary14_; temporary2_.w = _e2246.xxxx.x; } let _e2250: vec4 = temporary2_; temporary4_.y = _e2250.wwww.x; let _e2254: vec4 = temporary4_; let _e2256: vec4 = temporary4_; temporary8_.z = vec4((_e2254.yyyy < _e2256.zzzz)).x; let _e2262: vec4 = temporary8_; let _e2266: vec4 = constant_registers[16u]; if all((_e2262.zzzz != _e2266.xxxx)) { let _e2270: vec4 = temporary4_; temporary4_.z = _e2270.yyyy.x; let _e2274: vec4 = temporary3_; let _e2275: vec4 = _e2274.xyzz; temporary6_.x = _e2275.x; temporary6_.y = _e2275.y; temporary6_.z = _e2275.z; let _e2284: vec4 = constant_registers[16u]; temporary1_.z = _e2284.yyyy.x; } let _e2288: vec4 = temporary2_; let _e2289: vec4 = _e2288.xyzz; temporary15_.x = _e2289.x; temporary15_.y = _e2289.y; temporary15_.z = _e2289.z; let _e2296: vec4 = temporary9_; let _e2297: vec4 = _e2296.xyzz; temporary17_.x = _e2297.x; temporary17_.y = _e2297.y; temporary17_.z = _e2297.z; let _e2306: vec4 = constant_registers[4u]; let _e2307: vec4 = _e2306.xyzz; temporary18_.x = _e2307.x; temporary18_.y = _e2307.y; temporary18_.z = _e2307.z; let _e2316: vec4 = constant_registers[6u]; temporary2_.w = _e2316.xxxx.x; let _e2320: vec4 = temporary3_; let _e2321: vec4 = _e2320.xyzz; temporary19_.x = _e2321.x; temporary19_.y = _e2321.y; temporary19_.z = _e2321.z; let _e2330: vec4 = constant_registers[17u]; temporary13_.x = _e2330.wwww.x; let _e2334: vec4 = temporary15_; let _e2336: vec4 = temporary18_; let _e2338: vec4 = (_e2334.xyzz - _e2336.xyzz); temporary12_.x = _e2338.x; temporary12_.y = _e2338.y; temporary12_.z = _e2338.z; let _e2345: vec4 = temporary12_; let _e2347: vec4 = temporary17_; temporary13_.y = dot(_e2345.xyz, _e2347.xyz); let _e2351: vec4 = temporary13_; let _e2353: vec4 = temporary13_; temporary3_.w = (_e2351.yyyy * _e2353.yyyy).x; let _e2358: vec4 = temporary12_; let _e2360: vec4 = temporary12_; temporary14_.x = dot(_e2358.xyz, _e2360.xyz); let _e2364: vec4 = temporary3_; let _e2366: vec4 = temporary14_; temporary14_.y = (_e2364.wwww - _e2366.xxxx).x; let _e2371: vec4 = temporary2_; let _e2373: vec4 = temporary2_; temporary14_.z = (_e2371.wwww * _e2373.wwww).x; let _e2378: vec4 = temporary14_; let _e2380: vec4 = temporary14_; temporary13_.z = (_e2378.yyyy + _e2380.zzzz).x; let _e2387: vec4 = constant_registers[16u]; let _e2389: vec4 = temporary13_; temporary3_.w = vec4((_e2387.xxxx < _e2389.zzzz)).x; let _e2395: vec4 = temporary3_; let _e2399: vec4 = constant_registers[16u]; if all((_e2395.wwww != _e2399.xxxx)) { let _e2403: vec4 = temporary13_; temporary13_.z = sqrt(_e2403.zzzz).x; let _e2408: vec4 = temporary13_; temporary14_.x = -(_e2408.yyyy).x; let _e2413: vec4 = temporary14_; let _e2415: vec4 = temporary13_; temporary14_.y = (_e2413.xxxx - _e2415.zzzz).x; let _e2420: vec4 = temporary14_; temporary3_.w = _e2420.yyyy.x; let _e2426: vec4 = constant_registers[16u]; let _e2428: vec4 = temporary3_; temporary14_.x = vec4((_e2426.xxxx < _e2428.wwww)).x; let _e2434: vec4 = temporary14_; let _e2438: vec4 = constant_registers[16u]; if all((_e2434.xxxx != _e2438.xxxx)) { let _e2442: vec4 = temporary3_; temporary13_.x = _e2442.wwww.x; let _e2446: vec4 = temporary17_; let _e2448: vec4 = temporary3_; let _e2450: vec4 = (_e2446.xyzz * _e2448.wwww); temporary14_.x = _e2450.x; temporary14_.y = _e2450.y; temporary14_.z = _e2450.z; let _e2457: vec4 = temporary15_; let _e2459: vec4 = temporary14_; let _e2461: vec4 = (_e2457.xyzz + _e2459.xyzz); temporary20_.x = _e2461.x; temporary20_.y = _e2461.y; temporary20_.z = _e2461.z; let _e2468: vec4 = temporary20_; let _e2470: vec4 = temporary18_; let _e2472: vec4 = (_e2468.xyzz - _e2470.xyzz); temporary16_.x = _e2472.x; temporary16_.y = _e2472.y; temporary16_.z = _e2472.z; let _e2479: vec4 = temporary16_; let _e2481: vec3 = normalize(_e2479.xyz); temporary19_.x = _e2481.x; temporary19_.y = _e2481.y; temporary19_.z = _e2481.z; } } let _e2488: vec4 = temporary13_; temporary4_.y = _e2488.xxxx.x; let _e2492: vec4 = temporary19_; let _e2493: vec4 = _e2492.xyzz; temporary3_.x = _e2493.x; temporary3_.y = _e2493.y; temporary3_.z = _e2493.z; let _e2500: vec4 = temporary4_; let _e2502: vec4 = temporary4_; temporary8_.z = vec4((_e2500.yyyy < _e2502.zzzz)).x; let _e2508: vec4 = temporary8_; let _e2512: vec4 = constant_registers[16u]; if all((_e2508.zzzz != _e2512.xxxx)) { let _e2516: vec4 = temporary4_; temporary4_.z = _e2516.yyyy.x; let _e2520: vec4 = temporary3_; let _e2521: vec4 = _e2520.xyzz; temporary6_.x = _e2521.x; temporary6_.y = _e2521.y; temporary6_.z = _e2521.z; let _e2530: vec4 = constant_registers[5u]; let _e2531: vec4 = _e2530.xyzz; temporary7_.x = _e2531.x; temporary7_.y = _e2531.y; temporary7_.z = _e2531.z; let _e2540: vec4 = constant_registers[18u]; temporary1_.z = _e2540.xxxx.x; } let _e2544: vec4 = temporary2_; let _e2545: vec4 = _e2544.xyzz; temporary15_.x = _e2545.x; temporary15_.y = _e2545.y; temporary15_.z = _e2545.z; let _e2552: vec4 = temporary9_; let _e2553: vec4 = _e2552.xyzz; temporary17_.x = _e2553.x; temporary17_.y = _e2553.y; temporary17_.z = _e2553.z; let _e2562: vec4 = constant_registers[7u]; let _e2563: vec4 = _e2562.xyzz; temporary18_.x = _e2563.x; temporary18_.y = _e2563.y; temporary18_.z = _e2563.z; let _e2572: vec4 = constant_registers[9u]; temporary2_.w = _e2572.xxxx.x; let _e2576: vec4 = temporary3_; let _e2577: vec4 = _e2576.xyzz; temporary19_.x = _e2577.x; temporary19_.y = _e2577.y; temporary19_.z = _e2577.z; let _e2586: vec4 = constant_registers[17u]; temporary13_.x = _e2586.wwww.x; let _e2590: vec4 = temporary15_; let _e2592: vec4 = temporary18_; let _e2594: vec4 = (_e2590.xyzz - _e2592.xyzz); temporary12_.x = _e2594.x; temporary12_.y = _e2594.y; temporary12_.z = _e2594.z; let _e2601: vec4 = temporary12_; let _e2603: vec4 = temporary17_; temporary13_.y = dot(_e2601.xyz, _e2603.xyz); let _e2607: vec4 = temporary13_; let _e2609: vec4 = temporary13_; temporary3_.w = (_e2607.yyyy * _e2609.yyyy).x; let _e2614: vec4 = temporary12_; let _e2616: vec4 = temporary12_; temporary14_.x = dot(_e2614.xyz, _e2616.xyz); let _e2620: vec4 = temporary3_; let _e2622: vec4 = temporary14_; temporary14_.y = (_e2620.wwww - _e2622.xxxx).x; let _e2627: vec4 = temporary2_; let _e2629: vec4 = temporary2_; temporary14_.z = (_e2627.wwww * _e2629.wwww).x; let _e2634: vec4 = temporary14_; let _e2636: vec4 = temporary14_; temporary13_.z = (_e2634.yyyy + _e2636.zzzz).x; let _e2643: vec4 = constant_registers[16u]; let _e2645: vec4 = temporary13_; temporary3_.w = vec4((_e2643.xxxx < _e2645.zzzz)).x; let _e2651: vec4 = temporary3_; let _e2655: vec4 = constant_registers[16u]; if all((_e2651.wwww != _e2655.xxxx)) { let _e2659: vec4 = temporary13_; temporary13_.z = sqrt(_e2659.zzzz).x; let _e2664: vec4 = temporary13_; temporary14_.x = -(_e2664.yyyy).x; let _e2669: vec4 = temporary14_; let _e2671: vec4 = temporary13_; temporary14_.y = (_e2669.xxxx - _e2671.zzzz).x; let _e2676: vec4 = temporary14_; temporary3_.w = _e2676.yyyy.x; let _e2682: vec4 = constant_registers[16u]; let _e2684: vec4 = temporary3_; temporary14_.x = vec4((_e2682.xxxx < _e2684.wwww)).x; let _e2690: vec4 = temporary14_; let _e2694: vec4 = constant_registers[16u]; if all((_e2690.xxxx != _e2694.xxxx)) { let _e2698: vec4 = temporary3_; temporary13_.x = _e2698.wwww.x; let _e2702: vec4 = temporary17_; let _e2704: vec4 = temporary3_; let _e2706: vec4 = (_e2702.xyzz * _e2704.wwww); temporary14_.x = _e2706.x; temporary14_.y = _e2706.y; temporary14_.z = _e2706.z; let _e2713: vec4 = temporary15_; let _e2715: vec4 = temporary14_; let _e2717: vec4 = (_e2713.xyzz + _e2715.xyzz); temporary20_.x = _e2717.x; temporary20_.y = _e2717.y; temporary20_.z = _e2717.z; let _e2724: vec4 = temporary20_; let _e2726: vec4 = temporary18_; let _e2728: vec4 = (_e2724.xyzz - _e2726.xyzz); temporary16_.x = _e2728.x; temporary16_.y = _e2728.y; temporary16_.z = _e2728.z; let _e2735: vec4 = temporary16_; let _e2737: vec3 = normalize(_e2735.xyz); temporary19_.x = _e2737.x; temporary19_.y = _e2737.y; temporary19_.z = _e2737.z; } } let _e2744: vec4 = temporary13_; temporary4_.y = _e2744.xxxx.x; let _e2748: vec4 = temporary19_; let _e2749: vec4 = _e2748.xyzz; temporary3_.x = _e2749.x; temporary3_.y = _e2749.y; temporary3_.z = _e2749.z; let _e2756: vec4 = temporary4_; let _e2758: vec4 = temporary4_; temporary8_.z = vec4((_e2756.yyyy < _e2758.zzzz)).x; let _e2764: vec4 = temporary8_; let _e2768: vec4 = constant_registers[16u]; if all((_e2764.zzzz != _e2768.xxxx)) { let _e2772: vec4 = temporary4_; temporary4_.z = _e2772.yyyy.x; let _e2776: vec4 = temporary3_; let _e2777: vec4 = _e2776.xyzz; temporary6_.x = _e2777.x; temporary6_.y = _e2777.y; temporary6_.z = _e2777.z; let _e2786: vec4 = constant_registers[8u]; let _e2787: vec4 = _e2786.xyzz; temporary7_.x = _e2787.x; temporary7_.y = _e2787.y; temporary7_.z = _e2787.z; let _e2796: vec4 = constant_registers[18u]; temporary1_.z = _e2796.xxxx.x; } let _e2800: vec4 = temporary2_; let _e2801: vec4 = _e2800.xyzz; temporary15_.x = _e2801.x; temporary15_.y = _e2801.y; temporary15_.z = _e2801.z; let _e2808: vec4 = temporary9_; let _e2809: vec4 = _e2808.xyzz; temporary17_.x = _e2809.x; temporary17_.y = _e2809.y; temporary17_.z = _e2809.z; let _e2818: vec4 = constant_registers[10u]; let _e2819: vec4 = _e2818.xyzz; temporary18_.x = _e2819.x; temporary18_.y = _e2819.y; temporary18_.z = _e2819.z; let _e2828: vec4 = constant_registers[12u]; temporary2_.w = _e2828.xxxx.x; let _e2832: vec4 = temporary3_; let _e2833: vec4 = _e2832.xyzz; temporary19_.x = _e2833.x; temporary19_.y = _e2833.y; temporary19_.z = _e2833.z; let _e2842: vec4 = constant_registers[17u]; temporary13_.x = _e2842.wwww.x; let _e2846: vec4 = temporary15_; let _e2848: vec4 = temporary18_; let _e2850: vec4 = (_e2846.xyzz - _e2848.xyzz); temporary12_.x = _e2850.x; temporary12_.y = _e2850.y; temporary12_.z = _e2850.z; let _e2857: vec4 = temporary12_; let _e2859: vec4 = temporary17_; temporary13_.y = dot(_e2857.xyz, _e2859.xyz); let _e2863: vec4 = temporary13_; let _e2865: vec4 = temporary13_; temporary3_.w = (_e2863.yyyy * _e2865.yyyy).x; let _e2870: vec4 = temporary12_; let _e2872: vec4 = temporary12_; temporary14_.x = dot(_e2870.xyz, _e2872.xyz); let _e2876: vec4 = temporary3_; let _e2878: vec4 = temporary14_; temporary14_.y = (_e2876.wwww - _e2878.xxxx).x; let _e2883: vec4 = temporary2_; let _e2885: vec4 = temporary2_; temporary14_.z = (_e2883.wwww * _e2885.wwww).x; let _e2890: vec4 = temporary14_; let _e2892: vec4 = temporary14_; temporary4_.x = (_e2890.yyyy + _e2892.zzzz).x; let _e2897: vec4 = temporary4_; temporary13_.z = _e2897.xxxx.x; let _e2903: vec4 = constant_registers[16u]; let _e2905: vec4 = temporary13_; temporary3_.w = vec4((_e2903.xxxx < _e2905.zzzz)).x; let _e2911: vec4 = temporary3_; let _e2915: vec4 = constant_registers[16u]; if all((_e2911.wwww != _e2915.xxxx)) { let _e2919: vec4 = temporary13_; temporary13_.z = sqrt(_e2919.zzzz).x; let _e2924: vec4 = temporary13_; temporary14_.x = -(_e2924.yyyy).x; let _e2929: vec4 = temporary14_; let _e2931: vec4 = temporary13_; temporary14_.y = (_e2929.xxxx - _e2931.zzzz).x; let _e2936: vec4 = temporary14_; temporary3_.w = _e2936.yyyy.x; let _e2942: vec4 = constant_registers[16u]; let _e2944: vec4 = temporary3_; temporary14_.x = vec4((_e2942.xxxx < _e2944.wwww)).x; let _e2950: vec4 = temporary14_; let _e2954: vec4 = constant_registers[16u]; if all((_e2950.xxxx != _e2954.xxxx)) { let _e2958: vec4 = temporary3_; temporary13_.x = _e2958.wwww.x; let _e2962: vec4 = temporary17_; let _e2964: vec4 = temporary3_; let _e2966: vec4 = (_e2962.xyzz * _e2964.wwww); temporary14_.x = _e2966.x; temporary14_.y = _e2966.y; temporary14_.z = _e2966.z; let _e2973: vec4 = temporary15_; let _e2975: vec4 = temporary14_; let _e2977: vec4 = (_e2973.xyzz + _e2975.xyzz); temporary20_.x = _e2977.x; temporary20_.y = _e2977.y; temporary20_.z = _e2977.z; let _e2984: vec4 = temporary20_; let _e2986: vec4 = temporary18_; let _e2988: vec4 = (_e2984.xyzz - _e2986.xyzz); temporary16_.x = _e2988.x; temporary16_.y = _e2988.y; temporary16_.z = _e2988.z; let _e2995: vec4 = temporary16_; let _e2997: vec3 = normalize(_e2995.xyz); temporary19_.x = _e2997.x; temporary19_.y = _e2997.y; temporary19_.z = _e2997.z; } } let _e3004: vec4 = temporary13_; temporary4_.y = _e3004.xxxx.x; let _e3008: vec4 = temporary19_; let _e3009: vec4 = _e3008.xyzz; temporary3_.x = _e3009.x; temporary3_.y = _e3009.y; temporary3_.z = _e3009.z; let _e3016: vec4 = temporary4_; let _e3018: vec4 = temporary4_; temporary8_.z = vec4((_e3016.yyyy < _e3018.zzzz)).x; let _e3024: vec4 = temporary8_; let _e3028: vec4 = constant_registers[16u]; if all((_e3024.zzzz != _e3028.xxxx)) { let _e3032: vec4 = temporary4_; temporary4_.z = _e3032.yyyy.x; let _e3036: vec4 = temporary3_; let _e3037: vec4 = _e3036.xyzz; temporary6_.x = _e3037.x; temporary6_.y = _e3037.y; temporary6_.z = _e3037.z; let _e3046: vec4 = constant_registers[11u]; let _e3047: vec4 = _e3046.xyzz; temporary7_.x = _e3047.x; temporary7_.y = _e3047.y; temporary7_.z = _e3047.z; let _e3056: vec4 = constant_registers[18u]; temporary1_.z = _e3056.xxxx.x; } let _e3060: vec4 = temporary11_; let _e3064: vec4 = constant_registers[16u]; temporary11_.y = (_e3060.yyyy + _e3064.yyyy).x; let _e3069: vec4 = temporary1_; let _e3073: vec4 = constant_registers[16u]; temporary8_.z = vec4((_e3069.zzzz == _e3073.xxxx)).x; let _e3079: vec4 = temporary8_; let _e3083: vec4 = constant_registers[16u]; if all((_e3079.zzzz != _e3083.xxxx)) { let _e3089: vec4 = constant_registers[16u]; let _e3090: vec4 = _e3089.xyyy; temporary11_.x = _e3090.x; temporary11_.z = _e3090.z; } else { let _e3095: vec4 = temporary9_; let _e3097: vec4 = temporary4_; let _e3099: vec4 = (_e3095.xyzz * _e3097.zzzz); temporary15_.x = _e3099.x; temporary15_.y = _e3099.y; temporary15_.z = _e3099.z; let _e3106: vec4 = temporary2_; let _e3108: vec4 = temporary15_; let _e3110: vec4 = (_e3106.xyzz + _e3108.xyzz); temporary2_.x = _e3110.x; temporary2_.y = _e3110.y; temporary2_.z = _e3110.z; let _e3117: vec4 = temporary9_; let _e3119: vec4 = temporary6_; temporary8_.z = dot(_e3117.xyz, _e3119.xyz); let _e3123: vec4 = temporary8_; let _e3127: vec4 = constant_registers[18u]; temporary2_.w = (_e3123.zzzz * _e3127.xxxx).x; let _e3132: vec4 = temporary2_; let _e3134: vec4 = temporary6_; let _e3136: vec4 = (_e3132.wwww * _e3134.xyzz); temporary15_.x = _e3136.x; temporary15_.y = _e3136.y; temporary15_.z = _e3136.z; let _e3143: vec4 = temporary9_; let _e3145: vec4 = temporary15_; let _e3147: vec4 = (_e3143.xyzz - _e3145.xyzz); temporary9_.x = _e3147.x; temporary9_.y = _e3147.y; temporary9_.z = _e3147.z; let _e3154: vec4 = temporary9_; let _e3158: vec4 = constant_registers[18u]; let _e3160: vec4 = (_e3154.xyzz * _e3158.yyyy); temporary15_.x = _e3160.x; temporary15_.y = _e3160.y; temporary15_.z = _e3160.z; let _e3167: vec4 = temporary2_; let _e3169: vec4 = temporary15_; let _e3171: vec4 = (_e3167.xyzz + _e3169.xyzz); temporary2_.x = _e3171.x; temporary2_.y = _e3171.y; temporary2_.z = _e3171.z; let _e3180: vec4 = constant_registers[15u]; let _e3182: vec4 = temporary2_; let _e3184: vec4 = (_e3180.xyzz - _e3182.xyzz); temporary5_.x = _e3184.x; temporary5_.y = _e3184.y; temporary5_.z = _e3184.z; let _e3191: vec4 = temporary5_; let _e3193: vec3 = normalize(_e3191.xyz); temporary10_.x = _e3193.x; temporary10_.y = _e3193.y; temporary10_.z = _e3193.z; let _e3200: vec4 = temporary5_; let _e3202: vec4 = temporary5_; temporary8_.z = dot(_e3200.xyz, _e3202.xyz); let _e3206: vec4 = temporary8_; temporary1_.y = sqrt(_e3206.zzzz).x; let _e3211: vec4 = temporary6_; let _e3213: vec4 = temporary10_; temporary8_.z = dot(_e3211.xyz, _e3213.xyz); let _e3217: vec4 = temporary8_; temporary2_.w = saturate(_e3217.zzzz).x; let _e3222: vec4 = temporary1_; let _e3224: vec4 = temporary1_; temporary15_.x = (_e3222.yyyy * _e3224.yyyy).x; let _e3229: vec4 = temporary15_; let _e3233: vec4 = constant_registers[18u]; temporary15_.y = (_e3229.xxxx * _e3233.zzzz).x; let _e3240: vec4 = constant_registers[18u]; let _e3242: vec4 = temporary15_; temporary15_.z = (_e3240.wwww + _e3242.yyyy).x; let _e3247: vec4 = temporary2_; let _e3249: vec4 = temporary15_; temporary1_.x = (_e3247.wwww / _e3249.zzzz).x; let _e3254: vec4 = temporary1_; temporary8_.x = _e3254.xxxx.x; let _e3260: vec4 = constant_registers[6u]; temporary2_.w = _e3260.xxxx.x; let _e3266: vec4 = constant_registers[17u]; temporary19_.x = _e3266.wwww.x; let _e3270: vec4 = temporary2_; let _e3274: vec4 = constant_registers[4u]; let _e3276: vec4 = (_e3270.xyzz - _e3274.xyzz); temporary13_.x = _e3276.x; temporary13_.y = _e3276.y; temporary13_.z = _e3276.z; let _e3283: vec4 = temporary13_; let _e3285: vec4 = temporary10_; temporary19_.y = dot(_e3283.xyz, _e3285.xyz); let _e3289: vec4 = temporary19_; let _e3291: vec4 = temporary19_; temporary1_.w = (_e3289.yyyy * _e3291.yyyy).x; let _e3296: vec4 = temporary13_; let _e3298: vec4 = temporary13_; temporary12_.x = dot(_e3296.xyz, _e3298.xyz); let _e3302: vec4 = temporary1_; let _e3304: vec4 = temporary12_; temporary12_.y = (_e3302.wwww - _e3304.xxxx).x; let _e3309: vec4 = temporary2_; let _e3311: vec4 = temporary2_; temporary12_.z = (_e3309.wwww * _e3311.wwww).x; let _e3316: vec4 = temporary12_; let _e3318: vec4 = temporary12_; temporary19_.z = (_e3316.yyyy + _e3318.zzzz).x; let _e3325: vec4 = constant_registers[16u]; let _e3327: vec4 = temporary19_; temporary1_.w = vec4((_e3325.xxxx < _e3327.zzzz)).x; let _e3333: vec4 = temporary1_; let _e3337: vec4 = constant_registers[16u]; if all((_e3333.wwww != _e3337.xxxx)) { let _e3341: vec4 = temporary19_; temporary19_.z = sqrt(_e3341.zzzz).x; let _e3346: vec4 = temporary19_; temporary12_.x = -(_e3346.yyyy).x; let _e3351: vec4 = temporary12_; let _e3353: vec4 = temporary19_; temporary1_.w = (_e3351.xxxx - _e3353.zzzz).x; let _e3360: vec4 = constant_registers[16u]; let _e3362: vec4 = temporary1_; temporary12_.x = vec4((_e3360.xxxx < _e3362.wwww)).x; let _e3368: vec4 = temporary12_; let _e3372: vec4 = constant_registers[16u]; if all((_e3368.xxxx != _e3372.xxxx)) { let _e3376: vec4 = temporary1_; temporary19_.x = _e3376.wwww.x; } } let _e3380: vec4 = temporary19_; let _e3382: vec4 = temporary1_; temporary8_.z = vec4((_e3380.xxxx < _e3382.yyyy)).x; let _e3388: vec4 = temporary8_; let _e3392: vec4 = constant_registers[16u]; if all((_e3388.zzzz != _e3392.xxxx)) { let _e3398: vec4 = constant_registers[16u]; temporary8_.x = _e3398.xxxx.x; } let _e3404: vec4 = constant_registers[9u]; temporary2_.w = _e3404.xxxx.x; let _e3410: vec4 = constant_registers[17u]; temporary19_.x = _e3410.wwww.x; let _e3414: vec4 = temporary2_; let _e3418: vec4 = constant_registers[7u]; let _e3420: vec4 = (_e3414.xyzz - _e3418.xyzz); temporary13_.x = _e3420.x; temporary13_.y = _e3420.y; temporary13_.z = _e3420.z; let _e3427: vec4 = temporary13_; let _e3429: vec4 = temporary10_; temporary19_.y = dot(_e3427.xyz, _e3429.xyz); let _e3433: vec4 = temporary19_; let _e3435: vec4 = temporary19_; temporary1_.w = (_e3433.yyyy * _e3435.yyyy).x; let _e3440: vec4 = temporary13_; let _e3442: vec4 = temporary13_; temporary12_.x = dot(_e3440.xyz, _e3442.xyz); let _e3446: vec4 = temporary1_; let _e3448: vec4 = temporary12_; temporary12_.y = (_e3446.wwww - _e3448.xxxx).x; let _e3453: vec4 = temporary2_; let _e3455: vec4 = temporary2_; temporary12_.z = (_e3453.wwww * _e3455.wwww).x; let _e3460: vec4 = temporary12_; let _e3462: vec4 = temporary12_; temporary19_.z = (_e3460.yyyy + _e3462.zzzz).x; let _e3469: vec4 = constant_registers[16u]; let _e3471: vec4 = temporary19_; temporary1_.w = vec4((_e3469.xxxx < _e3471.zzzz)).x; let _e3477: vec4 = temporary1_; let _e3481: vec4 = constant_registers[16u]; if all((_e3477.wwww != _e3481.xxxx)) { let _e3485: vec4 = temporary19_; temporary19_.z = sqrt(_e3485.zzzz).x; let _e3490: vec4 = temporary19_; temporary12_.x = -(_e3490.yyyy).x; let _e3495: vec4 = temporary12_; let _e3497: vec4 = temporary19_; temporary1_.w = (_e3495.xxxx - _e3497.zzzz).x; let _e3504: vec4 = constant_registers[16u]; let _e3506: vec4 = temporary1_; temporary12_.x = vec4((_e3504.xxxx < _e3506.wwww)).x; let _e3512: vec4 = temporary12_; let _e3516: vec4 = constant_registers[16u]; if all((_e3512.xxxx != _e3516.xxxx)) { let _e3520: vec4 = temporary1_; temporary19_.x = _e3520.wwww.x; } } let _e3524: vec4 = temporary19_; let _e3526: vec4 = temporary1_; temporary8_.z = vec4((_e3524.xxxx < _e3526.yyyy)).x; let _e3532: vec4 = temporary8_; let _e3536: vec4 = constant_registers[16u]; if all((_e3532.zzzz != _e3536.xxxx)) { let _e3542: vec4 = constant_registers[16u]; temporary8_.x = _e3542.xxxx.x; } let _e3546: vec4 = temporary2_; let _e3547: vec4 = _e3546.xyzz; temporary15_.x = _e3547.x; temporary15_.y = _e3547.y; temporary15_.z = _e3547.z; let _e3554: vec4 = temporary10_; let _e3555: vec4 = _e3554.xyzz; temporary17_.x = _e3555.x; temporary17_.y = _e3555.y; temporary17_.z = _e3555.z; let _e3564: vec4 = constant_registers[10u]; let _e3565: vec4 = _e3564.xyzz; temporary18_.x = _e3565.x; temporary18_.y = _e3565.y; temporary18_.z = _e3565.z; let _e3574: vec4 = constant_registers[12u]; temporary2_.w = _e3574.xxxx.x; let _e3580: vec4 = constant_registers[17u]; temporary19_.x = _e3580.wwww.x; let _e3584: vec4 = temporary15_; let _e3586: vec4 = temporary18_; let _e3588: vec4 = (_e3584.xyzz - _e3586.xyzz); temporary13_.x = _e3588.x; temporary13_.y = _e3588.y; temporary13_.z = _e3588.z; let _e3595: vec4 = temporary13_; let _e3597: vec4 = temporary17_; temporary19_.y = dot(_e3595.xyz, _e3597.xyz); let _e3601: vec4 = temporary19_; let _e3603: vec4 = temporary19_; temporary1_.w = (_e3601.yyyy * _e3603.yyyy).x; let _e3608: vec4 = temporary13_; let _e3610: vec4 = temporary13_; temporary12_.x = dot(_e3608.xyz, _e3610.xyz); let _e3614: vec4 = temporary1_; let _e3616: vec4 = temporary12_; temporary12_.y = (_e3614.wwww - _e3616.xxxx).x; let _e3621: vec4 = temporary2_; let _e3623: vec4 = temporary2_; temporary12_.z = (_e3621.wwww * _e3623.wwww).x; let _e3628: vec4 = temporary12_; let _e3630: vec4 = temporary12_; temporary19_.z = (_e3628.yyyy + _e3630.zzzz).x; let _e3637: vec4 = constant_registers[16u]; let _e3639: vec4 = temporary19_; temporary1_.w = vec4((_e3637.xxxx < _e3639.zzzz)).x; let _e3645: vec4 = temporary1_; let _e3649: vec4 = constant_registers[16u]; if all((_e3645.wwww != _e3649.xxxx)) { let _e3653: vec4 = temporary19_; temporary19_.z = sqrt(_e3653.zzzz).x; let _e3658: vec4 = temporary19_; temporary12_.x = -(_e3658.yyyy).x; let _e3663: vec4 = temporary12_; let _e3665: vec4 = temporary19_; temporary12_.y = (_e3663.xxxx - _e3665.zzzz).x; let _e3670: vec4 = temporary12_; temporary1_.w = _e3670.yyyy.x; let _e3676: vec4 = constant_registers[16u]; let _e3678: vec4 = temporary1_; temporary12_.x = vec4((_e3676.xxxx < _e3678.wwww)).x; let _e3684: vec4 = temporary12_; let _e3688: vec4 = constant_registers[16u]; if all((_e3684.xxxx != _e3688.xxxx)) { let _e3692: vec4 = temporary1_; temporary19_.x = _e3692.wwww.x; } } let _e3696: vec4 = temporary19_; temporary4_.y = _e3696.xxxx.x; let _e3700: vec4 = temporary4_; let _e3702: vec4 = temporary1_; temporary8_.z = vec4((_e3700.yyyy < _e3702.yyyy)).x; let _e3708: vec4 = temporary8_; let _e3712: vec4 = constant_registers[16u]; if all((_e3708.zzzz != _e3712.xxxx)) { let _e3718: vec4 = constant_registers[16u]; temporary8_.x = _e3718.xxxx.x; } let _e3722: vec4 = temporary6_; temporary8_.z = saturate(_e3722.yyyy).x; let _e3727: vec4 = temporary8_; let _e3731: vec4 = constant_registers[19u]; temporary2_.w = (_e3727.zzzz * _e3731.xxxx).x; let _e3736: vec4 = temporary8_; let _e3738: vec4 = temporary2_; temporary8_.x = (_e3736.xxxx + _e3738.wwww).x; let _e3743: vec4 = temporary8_; let _e3747: vec4 = constant_registers[19u]; temporary8_.z = (_e3743.xxxx * _e3747.yyyy).x; let _e3754: vec4 = constant_registers[19u]; let _e3756: vec4 = temporary8_; temporary2_.w = (_e3754.zzzz + _e3756.zzzz).x; let _e3761: vec4 = temporary2_; temporary8_.y = _e3761.wwww.x; let _e3765: vec4 = temporary1_; let _e3769: vec4 = constant_registers[16u]; temporary8_.z = vec4((_e3765.zzzz == _e3769.yyyy)).x; let _e3775: vec4 = temporary8_; let _e3779: vec4 = constant_registers[16u]; if all((_e3775.zzzz != _e3779.xxxx)) { let _e3783: vec4 = temporary2_; temporary8_.z = fract(_e3783.xxxx).x; let _e3788: vec4 = temporary2_; let _e3790: vec4 = temporary8_; temporary2_.w = (_e3788.xxxx - _e3790.zzzz).x; let _e3795: vec4 = temporary2_; temporary15_.x = fract(_e3795.zzzz).x; let _e3800: vec4 = temporary2_; let _e3802: vec4 = temporary15_; temporary15_.y = (_e3800.zzzz - _e3802.xxxx).x; let _e3807: vec4 = temporary2_; let _e3809: vec4 = temporary15_; temporary15_.z = (_e3807.wwww + _e3809.yyyy).x; let _e3814: vec4 = temporary15_; let _e3818: vec4 = constant_registers[18u]; temporary1_.x = (_e3814.zzzz / _e3818.xxxx).x; let _e3823: vec4 = temporary1_; temporary17_.x = fract(_e3823.xxxx).x; let _e3828: vec4 = temporary17_; let _e3832: vec4 = constant_registers[18u]; temporary17_.y = (_e3828.xxxx * _e3832.xxxx).x; let _e3837: vec4 = temporary17_; let _e3841: vec4 = constant_registers[16u]; temporary17_.z = vec4((_e3837.yyyy == _e3841.yyyy)).x; let _e3847: vec4 = temporary17_; let _e3851: vec4 = constant_registers[16u]; if all((_e3847.zzzz != _e3851.xxxx)) { let _e3857: vec4 = constant_registers[13u]; let _e3859: vec4 = temporary8_; let _e3861: vec4 = (_e3857.xyzz * _e3859.yyyy); temporary15_.x = _e3861.x; temporary15_.y = _e3861.y; temporary15_.z = _e3861.z; let _e3868: vec4 = temporary0_; let _e3870: vec4 = temporary15_; let _e3872: vec4 = (_e3868.xyzz + _e3870.xyzz); temporary0_.x = _e3872.x; temporary0_.y = _e3872.y; temporary0_.z = _e3872.z; } else { let _e3881: vec4 = constant_registers[14u]; let _e3883: vec4 = temporary8_; let _e3885: vec4 = (_e3881.xyzz * _e3883.yyyy); temporary15_.x = _e3885.x; temporary15_.y = _e3885.y; temporary15_.z = _e3885.z; let _e3892: vec4 = temporary0_; let _e3894: vec4 = temporary15_; let _e3896: vec4 = (_e3892.xyzz + _e3894.xyzz); temporary0_.x = _e3896.x; temporary0_.y = _e3896.y; temporary0_.z = _e3896.z; } } let _e3903: vec4 = temporary1_; let _e3907: vec4 = constant_registers[18u]; temporary8_.z = vec4((_e3903.zzzz == _e3907.xxxx)).x; let _e3913: vec4 = temporary8_; let _e3917: vec4 = constant_registers[16u]; if all((_e3913.zzzz != _e3917.xxxx)) { let _e3921: vec4 = temporary7_; let _e3923: vec4 = temporary8_; let _e3925: vec4 = (_e3921.xyzz * _e3923.yyyy); temporary15_.x = _e3925.x; temporary15_.y = _e3925.y; temporary15_.z = _e3925.z; let _e3932: vec4 = temporary0_; let _e3934: vec4 = temporary15_; let _e3936: vec4 = (_e3932.xyzz + _e3934.xyzz); temporary0_.x = _e3936.x; temporary0_.y = _e3936.y; temporary0_.z = _e3936.z; } let _e3945: vec4 = constant_registers[16u]; temporary11_.x = _e3945.yyyy.x; } } let _e3949: vec4 = temporary11_; let _e3953: vec4 = constant_registers[16u]; if all((_e3949.xxxx != _e3953.xxxx)) { let _e3959: vec4 = constant_registers[16u]; temporary1_.z = _e3959.xxxx.x; let _e3965: vec4 = constant_registers[17u]; temporary4_.z = _e3965.wwww.x; let _e3971: vec4 = constant_registers[16u]; let _e3972: vec4 = _e3971.xyxx; temporary3_.x = _e3972.x; temporary3_.y = _e3972.y; temporary3_.z = _e3972.z; let _e3979: vec4 = temporary3_; let _e3980: vec4 = _e3979.xyzz; temporary12_.x = _e3980.x; temporary12_.y = _e3980.y; temporary12_.z = _e3980.z; let _e3989: vec4 = constant_registers[17u]; temporary2_.w = _e3989.wwww.x; let _e3993: vec4 = temporary2_; let _e3997: vec4 = constant_registers[16u]; let _e3999: vec4 = (_e3993.xyzz - _e3997.xxxx); temporary20_.x = _e3999.x; temporary20_.y = _e3999.y; temporary20_.z = _e3999.z; let _e4006: vec4 = temporary20_; let _e4008: vec4 = temporary12_; temporary14_.y = dot(_e4006.xyz, _e4008.xyz); let _e4012: vec4 = temporary14_; temporary14_.z = -(_e4012.yyyy).x; let _e4017: vec4 = temporary9_; let _e4019: vec4 = temporary12_; temporary4_.x = dot(_e4017.xyz, _e4019.xyz); let _e4023: vec4 = temporary14_; let _e4025: vec4 = temporary4_; temporary16_.x = (_e4023.zzzz / _e4025.xxxx).x; let _e4030: vec4 = temporary16_; temporary14_.x = _e4030.xxxx.x; let _e4036: vec4 = constant_registers[16u]; let _e4038: vec4 = temporary14_; temporary14_.y = vec4((_e4036.xxxx < _e4038.xxxx)).x; let _e4044: vec4 = temporary14_; let _e4048: vec4 = constant_registers[16u]; if all((_e4044.yyyy != _e4048.xxxx)) { let _e4052: vec4 = temporary14_; temporary2_.w = _e4052.xxxx.x; } let _e4056: vec4 = temporary2_; temporary4_.y = _e4056.wwww.x; let _e4060: vec4 = temporary4_; let _e4062: vec4 = temporary4_; temporary8_.z = vec4((_e4060.yyyy < _e4062.zzzz)).x; let _e4068: vec4 = temporary8_; let _e4072: vec4 = constant_registers[16u]; if all((_e4068.zzzz != _e4072.xxxx)) { let _e4076: vec4 = temporary4_; temporary4_.z = _e4076.yyyy.x; let _e4080: vec4 = temporary3_; let _e4081: vec4 = _e4080.xyzz; temporary6_.x = _e4081.x; temporary6_.y = _e4081.y; temporary6_.z = _e4081.z; let _e4090: vec4 = constant_registers[16u]; temporary1_.z = _e4090.yyyy.x; } let _e4094: vec4 = temporary2_; let _e4095: vec4 = _e4094.xyzz; temporary15_.x = _e4095.x; temporary15_.y = _e4095.y; temporary15_.z = _e4095.z; let _e4102: vec4 = temporary9_; let _e4103: vec4 = _e4102.xyzz; temporary17_.x = _e4103.x; temporary17_.y = _e4103.y; temporary17_.z = _e4103.z; let _e4112: vec4 = constant_registers[4u]; let _e4113: vec4 = _e4112.xyzz; temporary18_.x = _e4113.x; temporary18_.y = _e4113.y; temporary18_.z = _e4113.z; let _e4122: vec4 = constant_registers[6u]; temporary2_.w = _e4122.xxxx.x; let _e4126: vec4 = temporary3_; let _e4127: vec4 = _e4126.xyzz; temporary19_.x = _e4127.x; temporary19_.y = _e4127.y; temporary19_.z = _e4127.z; let _e4136: vec4 = constant_registers[17u]; temporary13_.x = _e4136.wwww.x; let _e4140: vec4 = temporary15_; let _e4142: vec4 = temporary18_; let _e4144: vec4 = (_e4140.xyzz - _e4142.xyzz); temporary12_.x = _e4144.x; temporary12_.y = _e4144.y; temporary12_.z = _e4144.z; let _e4151: vec4 = temporary12_; let _e4153: vec4 = temporary17_; temporary13_.y = dot(_e4151.xyz, _e4153.xyz); let _e4157: vec4 = temporary13_; let _e4159: vec4 = temporary13_; temporary3_.w = (_e4157.yyyy * _e4159.yyyy).x; let _e4164: vec4 = temporary12_; let _e4166: vec4 = temporary12_; temporary14_.x = dot(_e4164.xyz, _e4166.xyz); let _e4170: vec4 = temporary3_; let _e4172: vec4 = temporary14_; temporary14_.y = (_e4170.wwww - _e4172.xxxx).x; let _e4177: vec4 = temporary2_; let _e4179: vec4 = temporary2_; temporary14_.z = (_e4177.wwww * _e4179.wwww).x; let _e4184: vec4 = temporary14_; let _e4186: vec4 = temporary14_; temporary13_.z = (_e4184.yyyy + _e4186.zzzz).x; let _e4193: vec4 = constant_registers[16u]; let _e4195: vec4 = temporary13_; temporary3_.w = vec4((_e4193.xxxx < _e4195.zzzz)).x; let _e4201: vec4 = temporary3_; let _e4205: vec4 = constant_registers[16u]; if all((_e4201.wwww != _e4205.xxxx)) { let _e4209: vec4 = temporary13_; temporary13_.z = sqrt(_e4209.zzzz).x; let _e4214: vec4 = temporary13_; temporary14_.x = -(_e4214.yyyy).x; let _e4219: vec4 = temporary14_; let _e4221: vec4 = temporary13_; temporary14_.y = (_e4219.xxxx - _e4221.zzzz).x; let _e4226: vec4 = temporary14_; temporary3_.w = _e4226.yyyy.x; let _e4232: vec4 = constant_registers[16u]; let _e4234: vec4 = temporary3_; temporary14_.x = vec4((_e4232.xxxx < _e4234.wwww)).x; let _e4240: vec4 = temporary14_; let _e4244: vec4 = constant_registers[16u]; if all((_e4240.xxxx != _e4244.xxxx)) { let _e4248: vec4 = temporary3_; temporary13_.x = _e4248.wwww.x; let _e4252: vec4 = temporary17_; let _e4254: vec4 = temporary3_; let _e4256: vec4 = (_e4252.xyzz * _e4254.wwww); temporary14_.x = _e4256.x; temporary14_.y = _e4256.y; temporary14_.z = _e4256.z; let _e4263: vec4 = temporary15_; let _e4265: vec4 = temporary14_; let _e4267: vec4 = (_e4263.xyzz + _e4265.xyzz); temporary20_.x = _e4267.x; temporary20_.y = _e4267.y; temporary20_.z = _e4267.z; let _e4274: vec4 = temporary20_; let _e4276: vec4 = temporary18_; let _e4278: vec4 = (_e4274.xyzz - _e4276.xyzz); temporary16_.x = _e4278.x; temporary16_.y = _e4278.y; temporary16_.z = _e4278.z; let _e4285: vec4 = temporary16_; let _e4287: vec3 = normalize(_e4285.xyz); temporary19_.x = _e4287.x; temporary19_.y = _e4287.y; temporary19_.z = _e4287.z; } } let _e4294: vec4 = temporary13_; temporary4_.y = _e4294.xxxx.x; let _e4298: vec4 = temporary19_; let _e4299: vec4 = _e4298.xyzz; temporary3_.x = _e4299.x; temporary3_.y = _e4299.y; temporary3_.z = _e4299.z; let _e4306: vec4 = temporary4_; let _e4308: vec4 = temporary4_; temporary8_.z = vec4((_e4306.yyyy < _e4308.zzzz)).x; let _e4314: vec4 = temporary8_; let _e4318: vec4 = constant_registers[16u]; if all((_e4314.zzzz != _e4318.xxxx)) { let _e4322: vec4 = temporary4_; temporary4_.z = _e4322.yyyy.x; let _e4326: vec4 = temporary3_; let _e4327: vec4 = _e4326.xyzz; temporary6_.x = _e4327.x; temporary6_.y = _e4327.y; temporary6_.z = _e4327.z; let _e4336: vec4 = constant_registers[5u]; let _e4337: vec4 = _e4336.xyzz; temporary7_.x = _e4337.x; temporary7_.y = _e4337.y; temporary7_.z = _e4337.z; let _e4346: vec4 = constant_registers[18u]; temporary1_.z = _e4346.xxxx.x; } let _e4350: vec4 = temporary2_; let _e4351: vec4 = _e4350.xyzz; temporary15_.x = _e4351.x; temporary15_.y = _e4351.y; temporary15_.z = _e4351.z; let _e4358: vec4 = temporary9_; let _e4359: vec4 = _e4358.xyzz; temporary17_.x = _e4359.x; temporary17_.y = _e4359.y; temporary17_.z = _e4359.z; let _e4368: vec4 = constant_registers[7u]; let _e4369: vec4 = _e4368.xyzz; temporary18_.x = _e4369.x; temporary18_.y = _e4369.y; temporary18_.z = _e4369.z; let _e4378: vec4 = constant_registers[9u]; temporary2_.w = _e4378.xxxx.x; let _e4382: vec4 = temporary3_; let _e4383: vec4 = _e4382.xyzz; temporary19_.x = _e4383.x; temporary19_.y = _e4383.y; temporary19_.z = _e4383.z; let _e4392: vec4 = constant_registers[17u]; temporary13_.x = _e4392.wwww.x; let _e4396: vec4 = temporary15_; let _e4398: vec4 = temporary18_; let _e4400: vec4 = (_e4396.xyzz - _e4398.xyzz); temporary12_.x = _e4400.x; temporary12_.y = _e4400.y; temporary12_.z = _e4400.z; let _e4407: vec4 = temporary12_; let _e4409: vec4 = temporary17_; temporary13_.y = dot(_e4407.xyz, _e4409.xyz); let _e4413: vec4 = temporary13_; let _e4415: vec4 = temporary13_; temporary3_.w = (_e4413.yyyy * _e4415.yyyy).x; let _e4420: vec4 = temporary12_; let _e4422: vec4 = temporary12_; temporary14_.x = dot(_e4420.xyz, _e4422.xyz); let _e4426: vec4 = temporary3_; let _e4428: vec4 = temporary14_; temporary14_.y = (_e4426.wwww - _e4428.xxxx).x; let _e4433: vec4 = temporary2_; let _e4435: vec4 = temporary2_; temporary14_.z = (_e4433.wwww * _e4435.wwww).x; let _e4440: vec4 = temporary14_; let _e4442: vec4 = temporary14_; temporary13_.z = (_e4440.yyyy + _e4442.zzzz).x; let _e4449: vec4 = constant_registers[16u]; let _e4451: vec4 = temporary13_; temporary3_.w = vec4((_e4449.xxxx < _e4451.zzzz)).x; let _e4457: vec4 = temporary3_; let _e4461: vec4 = constant_registers[16u]; if all((_e4457.wwww != _e4461.xxxx)) { let _e4465: vec4 = temporary13_; temporary13_.z = sqrt(_e4465.zzzz).x; let _e4470: vec4 = temporary13_; temporary14_.x = -(_e4470.yyyy).x; let _e4475: vec4 = temporary14_; let _e4477: vec4 = temporary13_; temporary14_.y = (_e4475.xxxx - _e4477.zzzz).x; let _e4482: vec4 = temporary14_; temporary3_.w = _e4482.yyyy.x; let _e4488: vec4 = constant_registers[16u]; let _e4490: vec4 = temporary3_; temporary14_.x = vec4((_e4488.xxxx < _e4490.wwww)).x; let _e4496: vec4 = temporary14_; let _e4500: vec4 = constant_registers[16u]; if all((_e4496.xxxx != _e4500.xxxx)) { let _e4504: vec4 = temporary3_; temporary13_.x = _e4504.wwww.x; let _e4508: vec4 = temporary17_; let _e4510: vec4 = temporary3_; let _e4512: vec4 = (_e4508.xyzz * _e4510.wwww); temporary14_.x = _e4512.x; temporary14_.y = _e4512.y; temporary14_.z = _e4512.z; let _e4519: vec4 = temporary15_; let _e4521: vec4 = temporary14_; let _e4523: vec4 = (_e4519.xyzz + _e4521.xyzz); temporary20_.x = _e4523.x; temporary20_.y = _e4523.y; temporary20_.z = _e4523.z; let _e4530: vec4 = temporary20_; let _e4532: vec4 = temporary18_; let _e4534: vec4 = (_e4530.xyzz - _e4532.xyzz); temporary16_.x = _e4534.x; temporary16_.y = _e4534.y; temporary16_.z = _e4534.z; let _e4541: vec4 = temporary16_; let _e4543: vec3 = normalize(_e4541.xyz); temporary19_.x = _e4543.x; temporary19_.y = _e4543.y; temporary19_.z = _e4543.z; } } let _e4550: vec4 = temporary13_; temporary4_.y = _e4550.xxxx.x; let _e4554: vec4 = temporary19_; let _e4555: vec4 = _e4554.xyzz; temporary3_.x = _e4555.x; temporary3_.y = _e4555.y; temporary3_.z = _e4555.z; let _e4562: vec4 = temporary4_; let _e4564: vec4 = temporary4_; temporary8_.z = vec4((_e4562.yyyy < _e4564.zzzz)).x; let _e4570: vec4 = temporary8_; let _e4574: vec4 = constant_registers[16u]; if all((_e4570.zzzz != _e4574.xxxx)) { let _e4578: vec4 = temporary4_; temporary4_.z = _e4578.yyyy.x; let _e4582: vec4 = temporary3_; let _e4583: vec4 = _e4582.xyzz; temporary6_.x = _e4583.x; temporary6_.y = _e4583.y; temporary6_.z = _e4583.z; let _e4592: vec4 = constant_registers[8u]; let _e4593: vec4 = _e4592.xyzz; temporary7_.x = _e4593.x; temporary7_.y = _e4593.y; temporary7_.z = _e4593.z; let _e4602: vec4 = constant_registers[18u]; temporary1_.z = _e4602.xxxx.x; } let _e4606: vec4 = temporary2_; let _e4607: vec4 = _e4606.xyzz; temporary15_.x = _e4607.x; temporary15_.y = _e4607.y; temporary15_.z = _e4607.z; let _e4614: vec4 = temporary9_; let _e4615: vec4 = _e4614.xyzz; temporary17_.x = _e4615.x; temporary17_.y = _e4615.y; temporary17_.z = _e4615.z; let _e4624: vec4 = constant_registers[10u]; let _e4625: vec4 = _e4624.xyzz; temporary18_.x = _e4625.x; temporary18_.y = _e4625.y; temporary18_.z = _e4625.z; let _e4634: vec4 = constant_registers[12u]; temporary2_.w = _e4634.xxxx.x; let _e4638: vec4 = temporary3_; let _e4639: vec4 = _e4638.xyzz; temporary19_.x = _e4639.x; temporary19_.y = _e4639.y; temporary19_.z = _e4639.z; let _e4648: vec4 = constant_registers[17u]; temporary13_.x = _e4648.wwww.x; let _e4652: vec4 = temporary15_; let _e4654: vec4 = temporary18_; let _e4656: vec4 = (_e4652.xyzz - _e4654.xyzz); temporary12_.x = _e4656.x; temporary12_.y = _e4656.y; temporary12_.z = _e4656.z; let _e4663: vec4 = temporary12_; let _e4665: vec4 = temporary17_; temporary13_.y = dot(_e4663.xyz, _e4665.xyz); let _e4669: vec4 = temporary13_; let _e4671: vec4 = temporary13_; temporary3_.w = (_e4669.yyyy * _e4671.yyyy).x; let _e4676: vec4 = temporary12_; let _e4678: vec4 = temporary12_; temporary14_.x = dot(_e4676.xyz, _e4678.xyz); let _e4682: vec4 = temporary3_; let _e4684: vec4 = temporary14_; temporary14_.y = (_e4682.wwww - _e4684.xxxx).x; let _e4689: vec4 = temporary2_; let _e4691: vec4 = temporary2_; temporary14_.z = (_e4689.wwww * _e4691.wwww).x; let _e4696: vec4 = temporary14_; let _e4698: vec4 = temporary14_; temporary13_.z = (_e4696.yyyy + _e4698.zzzz).x; let _e4705: vec4 = constant_registers[16u]; let _e4707: vec4 = temporary13_; temporary3_.w = vec4((_e4705.xxxx < _e4707.zzzz)).x; let _e4713: vec4 = temporary3_; let _e4717: vec4 = constant_registers[16u]; if all((_e4713.wwww != _e4717.xxxx)) { let _e4721: vec4 = temporary13_; temporary13_.z = sqrt(_e4721.zzzz).x; let _e4726: vec4 = temporary13_; temporary14_.x = -(_e4726.yyyy).x; let _e4731: vec4 = temporary14_; let _e4733: vec4 = temporary13_; temporary14_.y = (_e4731.xxxx - _e4733.zzzz).x; let _e4738: vec4 = temporary14_; temporary3_.w = _e4738.yyyy.x; let _e4744: vec4 = constant_registers[16u]; let _e4746: vec4 = temporary3_; temporary14_.x = vec4((_e4744.xxxx < _e4746.wwww)).x; let _e4752: vec4 = temporary14_; let _e4756: vec4 = constant_registers[16u]; if all((_e4752.xxxx != _e4756.xxxx)) { let _e4760: vec4 = temporary3_; temporary13_.x = _e4760.wwww.x; let _e4764: vec4 = temporary17_; let _e4766: vec4 = temporary3_; let _e4768: vec4 = (_e4764.xyzz * _e4766.wwww); temporary14_.x = _e4768.x; temporary14_.y = _e4768.y; temporary14_.z = _e4768.z; let _e4775: vec4 = temporary15_; let _e4777: vec4 = temporary14_; let _e4779: vec4 = (_e4775.xyzz + _e4777.xyzz); temporary20_.x = _e4779.x; temporary20_.y = _e4779.y; temporary20_.z = _e4779.z; let _e4786: vec4 = temporary20_; let _e4788: vec4 = temporary18_; let _e4790: vec4 = (_e4786.xyzz - _e4788.xyzz); temporary16_.x = _e4790.x; temporary16_.y = _e4790.y; temporary16_.z = _e4790.z; let _e4797: vec4 = temporary16_; let _e4799: vec3 = normalize(_e4797.xyz); temporary19_.x = _e4799.x; temporary19_.y = _e4799.y; temporary19_.z = _e4799.z; } } let _e4806: vec4 = temporary13_; temporary4_.y = _e4806.xxxx.x; let _e4810: vec4 = temporary19_; let _e4811: vec4 = _e4810.xyzz; temporary3_.x = _e4811.x; temporary3_.y = _e4811.y; temporary3_.z = _e4811.z; let _e4818: vec4 = temporary4_; let _e4820: vec4 = temporary4_; temporary8_.z = vec4((_e4818.yyyy < _e4820.zzzz)).x; let _e4826: vec4 = temporary8_; let _e4830: vec4 = constant_registers[16u]; if all((_e4826.zzzz != _e4830.xxxx)) { let _e4834: vec4 = temporary4_; temporary4_.z = _e4834.yyyy.x; let _e4838: vec4 = temporary3_; let _e4839: vec4 = _e4838.xyzz; temporary6_.x = _e4839.x; temporary6_.y = _e4839.y; temporary6_.z = _e4839.z; let _e4848: vec4 = constant_registers[11u]; let _e4849: vec4 = _e4848.xyzz; temporary7_.x = _e4849.x; temporary7_.y = _e4849.y; temporary7_.z = _e4849.z; let _e4858: vec4 = constant_registers[18u]; temporary1_.z = _e4858.xxxx.x; } let _e4862: vec4 = temporary11_; let _e4866: vec4 = constant_registers[16u]; temporary11_.y = (_e4862.yyyy + _e4866.yyyy).x; let _e4871: vec4 = temporary1_; let _e4875: vec4 = constant_registers[16u]; temporary8_.z = vec4((_e4871.zzzz == _e4875.xxxx)).x; let _e4881: vec4 = temporary8_; let _e4885: vec4 = constant_registers[16u]; if all((_e4881.zzzz != _e4885.xxxx)) { let _e4891: vec4 = constant_registers[16u]; temporary11_.z = _e4891.yyyy.x; } else { let _e4895: vec4 = temporary9_; let _e4897: vec4 = temporary4_; let _e4899: vec4 = (_e4895.xyzz * _e4897.zzzz); temporary15_.x = _e4899.x; temporary15_.y = _e4899.y; temporary15_.z = _e4899.z; let _e4906: vec4 = temporary2_; let _e4908: vec4 = temporary15_; let _e4910: vec4 = (_e4906.xyzz + _e4908.xyzz); temporary2_.x = _e4910.x; temporary2_.y = _e4910.y; temporary2_.z = _e4910.z; let _e4917: vec4 = temporary9_; let _e4919: vec4 = temporary6_; temporary8_.z = dot(_e4917.xyz, _e4919.xyz); let _e4923: vec4 = temporary8_; let _e4927: vec4 = constant_registers[18u]; temporary2_.w = (_e4923.zzzz * _e4927.xxxx).x; let _e4932: vec4 = temporary2_; let _e4934: vec4 = temporary6_; let _e4936: vec4 = (_e4932.wwww * _e4934.xyzz); temporary15_.x = _e4936.x; temporary15_.y = _e4936.y; temporary15_.z = _e4936.z; let _e4943: vec4 = temporary9_; let _e4945: vec4 = temporary15_; let _e4947: vec4 = (_e4943.xyzz - _e4945.xyzz); temporary9_.x = _e4947.x; temporary9_.y = _e4947.y; temporary9_.z = _e4947.z; let _e4954: vec4 = temporary9_; let _e4958: vec4 = constant_registers[18u]; let _e4960: vec4 = (_e4954.xyzz * _e4958.yyyy); temporary15_.x = _e4960.x; temporary15_.y = _e4960.y; temporary15_.z = _e4960.z; let _e4967: vec4 = temporary2_; let _e4969: vec4 = temporary15_; let _e4971: vec4 = (_e4967.xyzz + _e4969.xyzz); temporary2_.x = _e4971.x; temporary2_.y = _e4971.y; temporary2_.z = _e4971.z; let _e4980: vec4 = constant_registers[15u]; let _e4982: vec4 = temporary2_; let _e4984: vec4 = (_e4980.xyzz - _e4982.xyzz); temporary5_.x = _e4984.x; temporary5_.y = _e4984.y; temporary5_.z = _e4984.z; let _e4991: vec4 = temporary5_; let _e4993: vec3 = normalize(_e4991.xyz); temporary10_.x = _e4993.x; temporary10_.y = _e4993.y; temporary10_.z = _e4993.z; let _e5000: vec4 = temporary5_; let _e5002: vec4 = temporary5_; temporary8_.z = dot(_e5000.xyz, _e5002.xyz); let _e5006: vec4 = temporary8_; temporary1_.y = sqrt(_e5006.zzzz).x; let _e5011: vec4 = temporary6_; let _e5013: vec4 = temporary10_; temporary8_.z = dot(_e5011.xyz, _e5013.xyz); let _e5017: vec4 = temporary8_; temporary2_.w = saturate(_e5017.zzzz).x; let _e5022: vec4 = temporary1_; let _e5024: vec4 = temporary1_; temporary15_.x = (_e5022.yyyy * _e5024.yyyy).x; let _e5029: vec4 = temporary15_; let _e5033: vec4 = constant_registers[18u]; temporary15_.y = (_e5029.xxxx * _e5033.zzzz).x; let _e5040: vec4 = constant_registers[18u]; let _e5042: vec4 = temporary15_; temporary15_.z = (_e5040.wwww + _e5042.yyyy).x; let _e5047: vec4 = temporary2_; let _e5049: vec4 = temporary15_; temporary1_.x = (_e5047.wwww / _e5049.zzzz).x; let _e5054: vec4 = temporary1_; temporary8_.x = _e5054.xxxx.x; let _e5060: vec4 = constant_registers[6u]; temporary2_.w = _e5060.xxxx.x; let _e5066: vec4 = constant_registers[17u]; temporary19_.x = _e5066.wwww.x; let _e5070: vec4 = temporary2_; let _e5074: vec4 = constant_registers[4u]; let _e5076: vec4 = (_e5070.xyzz - _e5074.xyzz); temporary13_.x = _e5076.x; temporary13_.y = _e5076.y; temporary13_.z = _e5076.z; let _e5083: vec4 = temporary13_; let _e5085: vec4 = temporary10_; temporary19_.y = dot(_e5083.xyz, _e5085.xyz); let _e5089: vec4 = temporary19_; let _e5091: vec4 = temporary19_; temporary1_.w = (_e5089.yyyy * _e5091.yyyy).x; let _e5096: vec4 = temporary13_; let _e5098: vec4 = temporary13_; temporary12_.x = dot(_e5096.xyz, _e5098.xyz); let _e5102: vec4 = temporary1_; let _e5104: vec4 = temporary12_; temporary12_.y = (_e5102.wwww - _e5104.xxxx).x; let _e5109: vec4 = temporary2_; let _e5111: vec4 = temporary2_; temporary12_.z = (_e5109.wwww * _e5111.wwww).x; let _e5116: vec4 = temporary12_; let _e5118: vec4 = temporary12_; temporary19_.z = (_e5116.yyyy + _e5118.zzzz).x; let _e5125: vec4 = constant_registers[16u]; let _e5127: vec4 = temporary19_; temporary1_.w = vec4((_e5125.xxxx < _e5127.zzzz)).x; let _e5133: vec4 = temporary1_; let _e5137: vec4 = constant_registers[16u]; if all((_e5133.wwww != _e5137.xxxx)) { let _e5141: vec4 = temporary19_; temporary19_.z = sqrt(_e5141.zzzz).x; let _e5146: vec4 = temporary19_; temporary12_.x = -(_e5146.yyyy).x; let _e5151: vec4 = temporary12_; let _e5153: vec4 = temporary19_; temporary1_.w = (_e5151.xxxx - _e5153.zzzz).x; let _e5160: vec4 = constant_registers[16u]; let _e5162: vec4 = temporary1_; temporary12_.x = vec4((_e5160.xxxx < _e5162.wwww)).x; let _e5168: vec4 = temporary12_; let _e5172: vec4 = constant_registers[16u]; if all((_e5168.xxxx != _e5172.xxxx)) { let _e5176: vec4 = temporary1_; temporary19_.x = _e5176.wwww.x; } } let _e5180: vec4 = temporary19_; let _e5182: vec4 = temporary1_; temporary8_.z = vec4((_e5180.xxxx < _e5182.yyyy)).x; let _e5188: vec4 = temporary8_; let _e5192: vec4 = constant_registers[16u]; if all((_e5188.zzzz != _e5192.xxxx)) { let _e5198: vec4 = constant_registers[16u]; temporary8_.x = _e5198.xxxx.x; } let _e5204: vec4 = constant_registers[9u]; temporary2_.w = _e5204.xxxx.x; let _e5210: vec4 = constant_registers[17u]; temporary19_.x = _e5210.wwww.x; let _e5214: vec4 = temporary2_; let _e5218: vec4 = constant_registers[7u]; let _e5220: vec4 = (_e5214.xyzz - _e5218.xyzz); temporary13_.x = _e5220.x; temporary13_.y = _e5220.y; temporary13_.z = _e5220.z; let _e5227: vec4 = temporary13_; let _e5229: vec4 = temporary10_; temporary19_.y = dot(_e5227.xyz, _e5229.xyz); let _e5233: vec4 = temporary19_; let _e5235: vec4 = temporary19_; temporary1_.w = (_e5233.yyyy * _e5235.yyyy).x; let _e5240: vec4 = temporary13_; let _e5242: vec4 = temporary13_; temporary12_.x = dot(_e5240.xyz, _e5242.xyz); let _e5246: vec4 = temporary1_; let _e5248: vec4 = temporary12_; temporary12_.y = (_e5246.wwww - _e5248.xxxx).x; let _e5253: vec4 = temporary2_; let _e5255: vec4 = temporary2_; temporary12_.z = (_e5253.wwww * _e5255.wwww).x; let _e5260: vec4 = temporary12_; let _e5262: vec4 = temporary12_; temporary19_.z = (_e5260.yyyy + _e5262.zzzz).x; let _e5269: vec4 = constant_registers[16u]; let _e5271: vec4 = temporary19_; temporary1_.w = vec4((_e5269.xxxx < _e5271.zzzz)).x; let _e5277: vec4 = temporary1_; let _e5281: vec4 = constant_registers[16u]; if all((_e5277.wwww != _e5281.xxxx)) { let _e5285: vec4 = temporary19_; temporary19_.z = sqrt(_e5285.zzzz).x; let _e5290: vec4 = temporary19_; temporary12_.x = -(_e5290.yyyy).x; let _e5295: vec4 = temporary12_; let _e5297: vec4 = temporary19_; temporary1_.w = (_e5295.xxxx - _e5297.zzzz).x; let _e5304: vec4 = constant_registers[16u]; let _e5306: vec4 = temporary1_; temporary12_.x = vec4((_e5304.xxxx < _e5306.wwww)).x; let _e5312: vec4 = temporary12_; let _e5316: vec4 = constant_registers[16u]; if all((_e5312.xxxx != _e5316.xxxx)) { let _e5320: vec4 = temporary1_; temporary19_.x = _e5320.wwww.x; } } let _e5324: vec4 = temporary19_; let _e5326: vec4 = temporary1_; temporary8_.z = vec4((_e5324.xxxx < _e5326.yyyy)).x; let _e5332: vec4 = temporary8_; let _e5336: vec4 = constant_registers[16u]; if all((_e5332.zzzz != _e5336.xxxx)) { let _e5342: vec4 = constant_registers[16u]; temporary8_.x = _e5342.xxxx.x; } let _e5346: vec4 = temporary2_; let _e5347: vec4 = _e5346.xyzz; temporary15_.x = _e5347.x; temporary15_.y = _e5347.y; temporary15_.z = _e5347.z; let _e5354: vec4 = temporary10_; let _e5355: vec4 = _e5354.xyzz; temporary17_.x = _e5355.x; temporary17_.y = _e5355.y; temporary17_.z = _e5355.z; let _e5364: vec4 = constant_registers[12u]; temporary2_.w = _e5364.xxxx.x; let _e5370: vec4 = constant_registers[17u]; temporary19_.x = _e5370.wwww.x; let _e5374: vec4 = temporary15_; let _e5378: vec4 = constant_registers[10u]; let _e5380: vec4 = (_e5374.xyzz - _e5378.xyzz); temporary13_.x = _e5380.x; temporary13_.y = _e5380.y; temporary13_.z = _e5380.z; let _e5387: vec4 = temporary13_; let _e5389: vec4 = temporary17_; temporary19_.y = dot(_e5387.xyz, _e5389.xyz); let _e5393: vec4 = temporary19_; let _e5395: vec4 = temporary19_; temporary1_.w = (_e5393.yyyy * _e5395.yyyy).x; let _e5400: vec4 = temporary13_; let _e5402: vec4 = temporary13_; temporary12_.x = dot(_e5400.xyz, _e5402.xyz); let _e5406: vec4 = temporary1_; let _e5408: vec4 = temporary12_; temporary12_.y = (_e5406.wwww - _e5408.xxxx).x; let _e5413: vec4 = temporary2_; let _e5415: vec4 = temporary2_; temporary12_.z = (_e5413.wwww * _e5415.wwww).x; let _e5420: vec4 = temporary12_; let _e5422: vec4 = temporary12_; temporary19_.z = (_e5420.yyyy + _e5422.zzzz).x; let _e5429: vec4 = constant_registers[16u]; let _e5431: vec4 = temporary19_; temporary1_.w = vec4((_e5429.xxxx < _e5431.zzzz)).x; let _e5437: vec4 = temporary1_; let _e5441: vec4 = constant_registers[16u]; if all((_e5437.wwww != _e5441.xxxx)) { let _e5445: vec4 = temporary19_; temporary19_.z = sqrt(_e5445.zzzz).x; let _e5450: vec4 = temporary19_; temporary12_.x = -(_e5450.yyyy).x; let _e5455: vec4 = temporary12_; let _e5457: vec4 = temporary19_; temporary1_.w = (_e5455.xxxx - _e5457.zzzz).x; let _e5464: vec4 = constant_registers[16u]; let _e5466: vec4 = temporary1_; temporary12_.x = vec4((_e5464.xxxx < _e5466.wwww)).x; let _e5472: vec4 = temporary12_; let _e5476: vec4 = constant_registers[16u]; if all((_e5472.xxxx != _e5476.xxxx)) { let _e5480: vec4 = temporary1_; temporary19_.x = _e5480.wwww.x; } } let _e5484: vec4 = temporary19_; let _e5486: vec4 = temporary1_; temporary8_.z = vec4((_e5484.xxxx < _e5486.yyyy)).x; let _e5492: vec4 = temporary8_; let _e5496: vec4 = constant_registers[16u]; if all((_e5492.zzzz != _e5496.xxxx)) { let _e5502: vec4 = constant_registers[16u]; temporary8_.x = _e5502.xxxx.x; } let _e5506: vec4 = temporary6_; temporary8_.z = saturate(_e5506.yyyy).x; let _e5511: vec4 = temporary8_; let _e5515: vec4 = constant_registers[19u]; temporary2_.w = (_e5511.zzzz * _e5515.xxxx).x; let _e5520: vec4 = temporary8_; let _e5522: vec4 = temporary2_; temporary8_.x = (_e5520.xxxx + _e5522.wwww).x; let _e5527: vec4 = temporary8_; let _e5531: vec4 = constant_registers[19u]; temporary8_.z = (_e5527.xxxx * _e5531.yyyy).x; let _e5538: vec4 = constant_registers[19u]; let _e5540: vec4 = temporary8_; temporary2_.w = (_e5538.zzzz + _e5540.zzzz).x; let _e5545: vec4 = temporary2_; temporary8_.y = _e5545.wwww.x; let _e5549: vec4 = temporary1_; let _e5553: vec4 = constant_registers[16u]; temporary8_.z = vec4((_e5549.zzzz == _e5553.yyyy)).x; let _e5559: vec4 = temporary8_; let _e5563: vec4 = constant_registers[16u]; if all((_e5559.zzzz != _e5563.xxxx)) { let _e5567: vec4 = temporary2_; temporary8_.z = fract(_e5567.xxxx).x; let _e5572: vec4 = temporary2_; let _e5574: vec4 = temporary8_; temporary2_.w = (_e5572.xxxx - _e5574.zzzz).x; let _e5579: vec4 = temporary2_; temporary15_.x = fract(_e5579.zzzz).x; let _e5584: vec4 = temporary2_; let _e5586: vec4 = temporary15_; temporary15_.y = (_e5584.zzzz - _e5586.xxxx).x; let _e5591: vec4 = temporary2_; let _e5593: vec4 = temporary15_; temporary15_.z = (_e5591.wwww + _e5593.yyyy).x; let _e5598: vec4 = temporary15_; let _e5602: vec4 = constant_registers[18u]; temporary1_.x = (_e5598.zzzz / _e5602.xxxx).x; let _e5607: vec4 = temporary1_; temporary17_.x = fract(_e5607.xxxx).x; let _e5612: vec4 = temporary17_; let _e5616: vec4 = constant_registers[18u]; temporary17_.y = (_e5612.xxxx * _e5616.xxxx).x; let _e5621: vec4 = temporary17_; let _e5625: vec4 = constant_registers[16u]; temporary17_.z = vec4((_e5621.yyyy == _e5625.yyyy)).x; let _e5631: vec4 = temporary17_; let _e5635: vec4 = constant_registers[16u]; if all((_e5631.zzzz != _e5635.xxxx)) { let _e5641: vec4 = constant_registers[13u]; let _e5643: vec4 = temporary8_; let _e5645: vec4 = (_e5641.xyzz * _e5643.yyyy); temporary15_.x = _e5645.x; temporary15_.y = _e5645.y; temporary15_.z = _e5645.z; let _e5652: vec4 = temporary0_; let _e5654: vec4 = temporary15_; let _e5656: vec4 = (_e5652.xyzz + _e5654.xyzz); temporary0_.x = _e5656.x; temporary0_.y = _e5656.y; temporary0_.z = _e5656.z; } else { let _e5665: vec4 = constant_registers[14u]; let _e5667: vec4 = temporary8_; let _e5669: vec4 = (_e5665.xyzz * _e5667.yyyy); temporary15_.x = _e5669.x; temporary15_.y = _e5669.y; temporary15_.z = _e5669.z; let _e5676: vec4 = temporary0_; let _e5678: vec4 = temporary15_; let _e5680: vec4 = (_e5676.xyzz + _e5678.xyzz); temporary0_.x = _e5680.x; temporary0_.y = _e5680.y; temporary0_.z = _e5680.z; } } let _e5687: vec4 = temporary1_; let _e5691: vec4 = constant_registers[18u]; temporary8_.z = vec4((_e5687.zzzz == _e5691.xxxx)).x; let _e5697: vec4 = temporary8_; let _e5701: vec4 = constant_registers[16u]; if all((_e5697.zzzz != _e5701.xxxx)) { let _e5705: vec4 = temporary7_; let _e5707: vec4 = temporary8_; let _e5709: vec4 = (_e5705.xyzz * _e5707.yyyy); temporary15_.x = _e5709.x; temporary15_.y = _e5709.y; temporary15_.z = _e5709.z; let _e5716: vec4 = temporary0_; let _e5718: vec4 = temporary15_; let _e5720: vec4 = (_e5716.xyzz + _e5718.xyzz); temporary0_.x = _e5720.x; temporary0_.y = _e5720.y; temporary0_.z = _e5720.z; } } } let _e5727: vec4 = temporary9_; let _e5731: vec4 = textureSample(texture0_, sampler2_, _e5727.xyzz.xyz); temporary1_ = _e5731; let _e5732: vec4 = temporary11_; let _e5736: vec4 = constant_registers[16u]; if all((_e5732.zzzz != _e5736.xxxx)) { let _e5740: vec4 = temporary0_; let _e5742: vec4 = temporary1_; let _e5744: vec4 = (_e5740.xyzz + _e5742.xyzz); temporary0_.x = _e5744.x; temporary0_.y = _e5744.y; temporary0_.z = _e5744.z; } let _e5751: vec4 = temporary0_; let _e5753: vec4 = temporary11_; let _e5755: vec4 = (_e5751.xyzz / _e5753.yyyy); temporary0_.x = _e5755.x; temporary0_.y = _e5755.y; temporary0_.z = _e5755.z; let _e5762: vec4 = temporary0_; dest_temp = _e5762; let _e5763: vec4 = dest_temp; return FragmentOutput(_e5763); }