From 135226e205b87ac316d7360b9347dc28dae9bf69 Mon Sep 17 00:00:00 2001 From: Jamie Date: Sat, 4 Nov 2017 02:44:51 -0700 Subject: [PATCH 01/34] Clarity GFX Added HDR + lumashapening to the same Shader, Everything now should work as intended, Thank you Navras for helping means alot. --- .../BreathOfTheWild_ClarityGFX/ReadME.txt | 10 - .../bd8bba59e2149449_00000000000003c9_ps.txt | 195 ++++++++++--- ...59e2149449_00000000000003c9_ps.txt.FakeHDR | 265 ----------------- ...9449_00000000000003c9_ps.txt.lumashapening | 273 ------------------ .../BreathOfTheWild_ClarityGFX/rules.txt | 2 +- 5 files changed, 162 insertions(+), 583 deletions(-) delete mode 100644 Enhancement/BreathOfTheWild_ClarityGFX/ReadME.txt delete mode 100644 Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.txt.FakeHDR delete mode 100644 Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.txt.lumashapening diff --git a/Enhancement/BreathOfTheWild_ClarityGFX/ReadME.txt b/Enhancement/BreathOfTheWild_ClarityGFX/ReadME.txt deleted file mode 100644 index e3ea48f3..00000000 --- a/Enhancement/BreathOfTheWild_ClarityGFX/ReadME.txt +++ /dev/null @@ -1,10 +0,0 @@ -There is currently 3 releases of Clarity in this pack, -The default is with No lumasharpening or HDR. -The second titled.lumasharpening is the same file as above but with lumashapening. -The third FakeHDR is the same but with Faked HDR - -You cannot Enable all 3 packs at once , so you need to rename the file by removing the ending extention .lumasharpening or FakeHDR . -The Origional File I would back upto its name.txt.origional case you want to revert for any reason. - -Please Note sword effect's are slightly off in Faked HDR .. Looking for a solution. -lumasharpening and FakeHDR were Brought over from SweetFX, Reshade to be used as a 1- pass shader .. They cannot be enabled or used at the same time.. \ No newline at end of file diff --git a/Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.txt b/Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.txt index dcdad402..3a6fc795 100644 --- a/Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.txt +++ b/Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.txt @@ -10,7 +10,8 @@ // Changelog V0.1 // Changed from shader f14bb_ps.txt to bd8bb_ps.txt -// Credit to NAVras for merging to a better shader. +// Credit to NAVras for merging to a better shader.(specal Note Thank you NAVras, For Helping Debug and answering silly questions.) +// Could not have got this far without you. // Credit to getdls for adding exposure & Original Contrasty. // Clarity GFX @@ -19,21 +20,34 @@ // Credit to Serfrost for preset values. // Original shader dumped using cemu 1.10.0f, BotW 1.3.1 -// Changelog v0.5 +// Changelog v0.7 //########################################################## -// Contrast, saturation, Gamma , Vibrance , Defog. +//ToneMapping +const float bloomFactor = 0.0; //Default is 1.0 +const float gamma = 1.00; //Default is 1.0 +const float Bleach = 0.2; //Default is 0.0 +const float vibrance = 0.015; // 0.0 is neutral -//Adjustable Values: - -const float con = 0.80; // [0.0 ~ 1.5] [0.5 Default] Contrast Adjustment - or + values work -const float sat = 0.00; // [0.1 ~ 1.5] [0.0 Default] Color Saturation Adjustment. - or + values work -const float gamma = 1.43; // [0.0 ~ 2.5] [1.0 Default] Gamma Adjustment - or + values work -//Luma Values for changing color. Machinima tool mostly. -const float AvgLumR = 0.0; // [0.0 ~ 1.5] [0.0 Default] Use very small increments, as it changes RGB values. -const float AvgLumG = -0.003; // [0.0 ~ 1.5] [0.0 Default] Use very small increments, as it changes RGB values. -const float AvgLumB = 0.0; // [0.0 ~ 1.5] [0.0 Default] Use very small increments, as it changes RGB values. +//LumaShapening +#define sharp_strength 0.25 //[0.10 to 3.00] Strength of the sharpening Default is 0.65 +#define sharp_clamp 0.085 //[0.000 to 1.000] Limits maximum amount of sharpening a pixel recieves - Default is 0.035 +//Advanced sharpening settings +#define offset_bias 1.0 //[0.0 to 6.0] Offset bias adjusts the radius of the sampling pattern. + +//Technicolor2 +#define Technicolor2_Red_Strength 0.0 //Default is 0.0 +#define Technicolor2_Green_Strength 0.0 //Default is 0.0 +#define Technicolor2_Blue_Strength 0.0 //Default is 0.0 +#define Technicolor2_Brightness 1.0 //Default is 1.0 +#define Technicolor2_Strength 0.40 //Default is 1.0 +#define Technicolor2_Saturation 0.51 //Default is 1.0 + +//Fake High Dynamic Range. +#define HDRPower 1.20 // 0.0 to 8.0 "Raising this seems to make the effect stronger and also brighter , Default 1.30." +#define radius1 0.50 // 0.0 to 8.0 "Default 0.793 , will affect FX." +#define radius2 0.50 // 0.0 to 8.0 "Default 0.87 , will affect FX." //----------------------------------------------------------- //End of adjustable values @@ -41,11 +55,8 @@ const float AvgLumB = 0.0; // [0.0 ~ 1.5] [0.0 Default] Use very small incr //########################################################### //Do not edit under this line. - -const float exposure = 0.00; -const float Bleach = 0.0; -const float brt = 0.0; -const vec3 FogColor = vec3(0.0, 0.0, 0.0); //defog Color"; +const float sat = 0.0; + uniform ivec4 uf_remappedPS[1]; layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0xf46ac800 res 320x180x1 dim 1 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x5) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 2 2 2 border: 1 @@ -63,16 +74,19 @@ return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); } float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -//----------------------------------------------------------- -// Based on CeeJay.dk's original GLSL/HLSL. -//----------------------------------------------------------- +float exposure(vec3 eye, vec3 L, float low, float high) { + return mix( + low, + high, + pow((1.0 - dot(normalize(eye), L)) / 2.0, 10.0) + ); +} + +//ToneMapping vec3 TonemapPass(vec3 inputColor) { vec3 color = inputColor; - //color = clamp(color - defog * FogColor * 2.55, 0.0, 1.0); // defog - color *= pow(2.0f, exposure); // exposure - color = pow(color, vec3(gamma)); // Gamma - + const vec3 coefLuma = vec3(0.2126, 0.7152, 0.0722); float lum = dot(coefLuma, color); @@ -93,8 +107,116 @@ vec3 TonemapPass(vec3 inputColor) { return color; } -vec3 brightnessContrast(vec3 color, float brt, float con){ - return (color - 0.5) * con + 0.5 + brt; +//TECHNICOLOR2 + +vec3 Technicolor2(vec3 inputColor) { + vec3 color = inputColor; + vec3 Color_Strength = vec3(Technicolor2_Red_Strength, Technicolor2_Green_Strength, Technicolor2_Blue_Strength); + vec3 source = clamp(color, 0.0, 1.0); + vec3 temp = 1.0 - source; + vec3 target = temp.grg; + vec3 target2 = temp.bbr; + vec3 temp2 = source * target; + temp2 *= target2; + + temp = temp2 * Color_Strength; + temp2 *= Technicolor2_Brightness; + + target = temp.grg; + target2 = temp.bbr; + + temp = source - target; + temp += temp2; + temp2 = temp - target2; + + color = mix(source, temp2, Technicolor2_Strength); + + color = mix(vec3(dot(color, vec3(0.333))), color, Technicolor2_Saturation); + + return clamp (color, 0.0, 1.0); +} + +//LumaShapening + +#define px (1.0/1280.0*uf_fragCoordScale.x) +#define py (1.0/720.0*uf_fragCoordScale.y) +#define CoefLuma vec3(0.2126, 0.7152, 0.0722) + +float lumasharping(sampler2D tex, vec2 pos){ + vec4 colorInput = texture(tex, pos); + + vec3 ori = colorInput.rgb; + + // -- Combining the strength and luma multipliers -- + vec3 sharp_strength_luma = (CoefLuma * sharp_strength); + + // -- Gaussian filter -- + // [ .25, .50, .25] [ 1 , 2 , 1 ] + // [ .50, 1, .50] = [ 2 , 4 , 2 ] + // [ .25, .50, .25] [ 1 , 2 , 1 ] + + + //float px = 1.0/tex_size[0]; + //float py = 1.0/tex_size[1]; + + vec3 blur_ori = texture(tex, pos + vec2(px,-py) * 0.5 * offset_bias).rgb; // South East + blur_ori += texture(tex, pos + vec2(-px,-py) * 0.5 * offset_bias).rgb; // South West + blur_ori += texture(tex, pos + vec2(px,py) * 0.5 * offset_bias).rgb; // North East + blur_ori += texture(tex, pos + vec2(-px,py) * 0.5 * offset_bias).rgb; // North West + + blur_ori *= 0.25; // ( /= 4) Divide by the number of texture fetches + + // -- Calculate the sharpening -- + vec3 sharp = ori - blur_ori; //Subtracting the blurred image from the original image + + // -- Adjust strength of the sharpening and clamp it-- + vec4 sharp_strength_luma_clamp = vec4(sharp_strength_luma * (0.5 / sharp_clamp),0.5); //Roll part of the clamp into the dot + + float sharp_luma = clamp((dot(vec4(sharp,1.0), sharp_strength_luma_clamp)), 0.0,1.0 ); //Calculate the luma, adjust the strength, scale up and clamp + sharp_luma = (sharp_clamp * 2.0) * sharp_luma - sharp_clamp; //scale down + + + // -- Combining the values to get the final sharpened pixel -- + + //colorInput.rgb = colorInput.rgb + sharp_luma; // Add the sharpening to the input color. + return sharp_luma; +} + +//Fake High Dynamic Range. + +vec3 HDRPass(sampler2D tex, vec2 pos){ + vec4 colorInput = texture(tex, pos); + vec3 color = colorInput.rgb; + + vec3 bloom_sum1 = texture(tex, pos + vec2(1.5, -1.5) * radius1).rgb; + bloom_sum1 += texture(tex, pos + vec2(-1.5, -1.5) * radius1).rgb; + bloom_sum1 += texture(tex, pos + vec2( 1.5, 1.5) * radius1).rgb; + bloom_sum1 += texture(tex, pos + vec2(-1.5, 1.5) * radius1).rgb; + bloom_sum1 += texture(tex, pos + vec2( 0.0, -2.5) * radius1).rgb; + bloom_sum1 += texture(tex, pos + vec2( 0.0, 2.5) * radius1).rgb; + bloom_sum1 += texture(tex, pos + vec2(-2.5, 0.0) * radius1).rgb; + bloom_sum1 += texture(tex, pos + vec2( 2.5, 0.0) * radius1).rgb; + + bloom_sum1 *= 0.005; + + vec3 bloom_sum2 = texture(tex, pos + vec2(1.5, -1.5) * radius2).rgb; + bloom_sum2 += texture(tex, pos + vec2(-1.5, -1.5) * radius2).rgb; + bloom_sum2 += texture(tex, pos + vec2( 1.5, 1.5) * radius2).rgb; + bloom_sum2 += texture(tex, pos + vec2(-1.5, 1.5) * radius2).rgb; + bloom_sum2 += texture(tex, pos + vec2( 0.0, -2.5) * radius2).rgb; + bloom_sum2 += texture(tex, pos + vec2( 0.0, 2.5) * radius2).rgb; + bloom_sum2 += texture(tex, pos + vec2(-2.5, 0.0) * radius2).rgb; + bloom_sum2 += texture(tex, pos + vec2( 2.5, 0.0) * radius2).rgb; + + bloom_sum2 *= 0.010; + + float dist = radius1 - radius2; + vec3 HDR = (colorInput.rgb + (bloom_sum2 - bloom_sum1)) * dist; + + vec3 blend = HDR + colorInput.rgb; + colorInput.rgb = pow(abs(blend), vec3(abs(HDRPower)) + HDR); + + return clamp(colorInput.rgb, 0.0,1.0); } void main() @@ -117,7 +239,10 @@ vec3 cubeMapSTM; int cubeMapFaceId; R0f = passParameterSem0; R1f.xyz = (texture(textureUnitPS0, R0f.xy).xyz); -R0f.xyz = (texture(textureUnitPS1, R0f.xy).xyz); +R1f.xyz *= bloomFactor; +R0f.xyz = HDRPass(textureUnitPS1, passParameterSem0.xy); +float smask = lumasharping(textureUnitPS1, passParameterSem0.xy); +R0f.xyz += vec3(smask); // 0 R126f.x = R1f.x + R0f.x; PV0f.x = R126f.x; @@ -213,12 +338,14 @@ R0f.z = (mul_nonIEEE(R126f.x,R126f.y) + PV1f.w); passPixelColor0 = vec4(R0f.x, R0f.y, R0f.z, R0f.w); vec3 color = (passPixelColor0.xyz); +float luminance = color.r*intBitsToFloat(0x3e99096c) + color.g*intBitsToFloat(0x3f162b6b) + color.b*intBitsToFloat(0x3dea4a8c); +float mn = min(min(color.r, color.g), color.b); +float mx = max(max(color.r, color.g), color.b); +float sat = (1.0-(mx - mn)) * (1.0-mx) * luminance * 5.0; +vec3 lightness = vec3((mn + mx)/2.0); color = TonemapPass(color); -const vec3 LumCoeff = vec3(0.2125, 0.7154, 0.0721); -vec3 AvgLumin = vec3(AvgLumR, AvgLumG, AvgLumB); -vec3 brtColor = color * brt; -vec3 intensity = vec3(dot(color, LumCoeff)); -vec3 satColor = mix(intensity, color, 1.); -vec3 conColor = mix(AvgLumin, satColor, con); -passPixelColor0 = vec4(conColor, R0f.w); +color = Technicolor2(color); +color = pow(color, vec3(1.0 / gamma)); +color = mix(color, mix(color, lightness, -vibrance), sat); +passPixelColor0 = vec4(color, R0f.w); } \ No newline at end of file diff --git a/Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.txt.FakeHDR b/Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.txt.FakeHDR deleted file mode 100644 index a6e5e8da..00000000 --- a/Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.txt.FakeHDR +++ /dev/null @@ -1,265 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable - -// shader bd8bba59e2149449 - -// Possible problems -// Being below 1.3.0 will give you double-vision with recent graphic packs. Update to 1.3.0 or above. -// If you're experiencing any issues (due to having the previous Clarity shaders installed), please remove and redownload all of the BotW packs. - -// Changelog V0.1 -// Changed from shader f14bb_ps.txt to bd8bb_ps.txt - -// Credit to NAVras for merging to a better shader. -// Credit to getdls for adding exposure & Original Contrasty. - -// Clarity GFX -// Credit to Jamie for main coding. -// Credit to Kiri coding & Reshade logic. -// Credit to Serfrost for preset values. -// Original shader dumped using cemu 1.10.0f, BotW 1.3.1 - -// Changelog v0.5 - -//########################################################## - -// Contrast, saturation, Gamma. - -//Adjustable Values: -const float gamma = 1.00; // [0.0 ~ 2.5] [1.0 Default] Gamma Adjustment - or + values work -const float bloomFactor = 0.7; // 1.0 is neutral -const float brt = 1.0; -const float con = 0.75; -const float sat = 0.0; -//Luma Values for changing color. Machinima tool mostly. -const float AvgLumR = 0.0; // [0.0 ~ 1.5] [0.0 Default] Use very small increments, as it changes RGB values. -const float AvgLumG = -0.003; // [0.0 ~ 1.5] [0.0 Default] Use very small increments, as it changes RGB values. -const float AvgLumB = 0.0; // [0.0 ~ 1.5] [0.0 Default] Use very small increments, as it changes RGB values. -//----------------------------------------------------------- - -//End of adjustable values - -//########################################################### - -//Do not edit under this line. - -const float exposure = 0.00; -const float Bleach = 0.0; - -const vec3 FogColor = vec3(0.0, 0.0, 0.0); //defog Color"; - -uniform ivec4 uf_remappedPS[1]; -layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0xf46ac800 res 320x180x1 dim 1 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x5) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 2 2 2 border: 1 -layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0xf5c7b800 res 1280x720x1 dim 1 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in vec4 passParameterSem0; -layout(location = 0) out vec4 passPixelColor0; -uniform vec2 uf_fragCoordScale; -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } - -//----------------------------------------------------------- -// Based on CeeJay.dk's original GLSL/HLSL. -//----------------------------------------------------------- - -vec3 TonemapPass(vec3 inputColor) { - vec3 color = inputColor; - color *= pow(2.0f, exposure); // exposure - color = pow(color, vec3(gamma)); // Gamma - - const vec3 coefLuma = vec3(0.2126, 0.7152, 0.0722); - float lum = dot(coefLuma, color); - - float L = clamp(10.0 * (lum - 0.45), 0.0, 1.0); - vec3 A2 = Bleach * color; - - vec3 result1 = 2.0f * color * lum; - vec3 result2 = 1.0f - 2.0f * (1.0f - lum) * (1.0f - color); - - vec3 newColor = mix(result1, result2, L); - vec3 mixRGB = A2 * newColor; - color += ((1.0f - A2) * mixRGB); - - vec3 middlegray = vec3(dot(color, vec3(1.0 / 3.0))); - vec3 diffcolor = color - middlegray; - color = (color + diffcolor * sat) / (1 + (diffcolor * sat)); // saturation - - return color; -} - -vec3 brightnessContrast(vec3 color, float brt, float con){ - return (color - 0.5) * con + 0.5 + brt; -} - -//Fake High Dynamic Range. -#define HDRPower 1.30 // 0.0 to 8.0 "Raising this seems to make the effect stronger and also brighter." -#define radius1 0.793 // 0.0 to 8.0 "Raising this seems to make the effect stronger and also brighter." -#define radius2 0.87 // 0.0 to 8.0 "Raising this seems to make the effect stronger and also brighter." - -vec3 HDRPass(sampler2D tex, vec2 pos){ - vec4 colorInput = texture(tex, pos); - vec3 color = colorInput.rgb; - - vec3 bloom_sum1 = texture(tex, pos + vec2(1.5, -1.5) * radius1).rgb; - bloom_sum1 += texture(tex, pos + vec2(-1.5, -1.5) * radius1).rgb; - bloom_sum1 += texture(tex, pos + vec2( 1.5, 1.5) * radius1).rgb; - bloom_sum1 += texture(tex, pos + vec2(-1.5, 1.5) * radius1).rgb; - bloom_sum1 += texture(tex, pos + vec2( 0.0, -2.5) * radius1).rgb; - bloom_sum1 += texture(tex, pos + vec2( 0.0, 2.5) * radius1).rgb; - bloom_sum1 += texture(tex, pos + vec2(-2.5, 0.0) * radius1).rgb; - bloom_sum1 += texture(tex, pos + vec2( 2.5, 0.0) * radius1).rgb; - - bloom_sum1 *= 0.005; - - vec3 bloom_sum2 = texture(tex, pos + vec2(1.5, -1.5) * radius2).rgb; - bloom_sum2 += texture(tex, pos + vec2(-1.5, -1.5) * radius2).rgb; - bloom_sum2 += texture(tex, pos + vec2( 1.5, 1.5) * radius2).rgb; - bloom_sum2 += texture(tex, pos + vec2(-1.5, 1.5) * radius2).rgb; - bloom_sum2 += texture(tex, pos + vec2( 0.0, -2.5) * radius2).rgb; - bloom_sum2 += texture(tex, pos + vec2( 0.0, 2.5) * radius2).rgb; - bloom_sum2 += texture(tex, pos + vec2(-2.5, 0.0) * radius2).rgb; - bloom_sum2 += texture(tex, pos + vec2( 2.5, 0.0) * radius2).rgb; - - bloom_sum2 *= 0.010; - - float dist = radius1 - radius2; - vec3 HDR = (colorInput.rgb + (bloom_sum2 - bloom_sum1)) * dist; - - vec3 blend = HDR + colorInput.rgb; - colorInput.rgb = pow(abs(blend), vec3(abs(HDRPower)) + HDR); - - return clamp(colorInput.rgb, 0.0,1.0); -} - -void main() -{ -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); -vec4 R123f = vec4(0.0); -vec4 R125f = vec4(0.0); -vec4 R126f = vec4(0.0); -vec4 R127f = vec4(0.0); -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0f = passParameterSem0; -R1f.xyz = (texture(textureUnitPS0, R0f.xy).xyz); -R1f.xyz *= bloomFactor; -R0f.xyz = HDRPass(textureUnitPS1, R0f.xy); -// 0 -R126f.x = R1f.x + R0f.x; -PV0f.x = R126f.x; -R127f.y = R1f.y + R0f.y; -PV0f.y = R127f.y; -R126f.z = R1f.z + R0f.z; -PV0f.z = R126f.z; -R125f.w = 1.0; -// 1 -tempf.x = dot(vec4(PV0f.x,PV0f.y,PV0f.z,-0.0),vec4(intBitsToFloat(0x3e99096c),intBitsToFloat(0x3f162b6b),intBitsToFloat(0x3dea4a8c),0.0)); -PV1f.x = tempf.x; -PV1f.y = tempf.x; -PV1f.z = tempf.x; -PV1f.w = tempf.x; -// 2 -R127f.x = -(R127f.y) * intBitsToFloat(0x3fb8aa3b); -PV0f.y = -(PV1f.x) * intBitsToFloat(0x3fb8aa3b); -R127f.z = -(R126f.x) * intBitsToFloat(0x3fb8aa3b); -R127f.w = -(R126f.z) * intBitsToFloat(0x3fb8aa3b); -R126f.w = 1.0 / PV1f.x; -PS0f = R126f.w; -// 3 -PS1f = exp2(PV0f.y); -// 4 -PV0f.x = -(PS1f) + 1.0; -PS0f = exp2(R127f.x); -// 5 -R127f.x = -(PS0f) + 1.0; -R126f.y = mul_nonIEEE(PV0f.x, PV0f.x); -PV1f.z = PV0f.x * R126f.w; -PS1f = exp2(R127f.w); -// 6 -backupReg0f = R126f.x; -backupReg1f = R127f.z; -R126f.x = mul_nonIEEE(backupReg0f, PV1f.z); -PV0f.y = -(PS1f) + 1.0; -R127f.z = mul_nonIEEE(R126f.z, PV1f.z); -PV0f.z = R127f.z; -R127f.w = mul_nonIEEE(R127f.y, PV1f.z); -PV0f.w = R127f.w; -PS0f = exp2(backupReg1f); -// 7 -PV1f.x = R127f.x + -(PV0f.w); -PV1f.y = PV0f.y + -(PV0f.z); -PV1f.w = -(PS0f) + 1.0; -// 8 -backupReg0f = R127f.z; -R127f.x = (mul_nonIEEE(PV1f.x,R126f.y) + R127f.w); -R127f.x = clamp(R127f.x, 0.0, 1.0); -PV0f.x = R127f.x; -PV0f.y = PV1f.w + -(R126f.x); -R127f.z = (mul_nonIEEE(PV1f.y,R126f.y) + backupReg0f); -R127f.z = clamp(R127f.z, 0.0, 1.0); -PV0f.z = R127f.z; -// 9 -backupReg0f = R126f.x; -R126f.x = (mul_nonIEEE(PV0f.y,R126f.y) + backupReg0f); -R126f.x = clamp(R126f.x, 0.0, 1.0); -PV1f.x = R126f.x; -R126f.y = max(PV0f.x, PV0f.z); -PV1f.w = min(PV0f.x, PV0f.z); -// 10 -tempf.x = dot(vec4(PV1f.x,R127f.x,R127f.z,R125f.w),vec4(intBitsToFloat(0x3f2aaaab),intBitsToFloat(0x3f2aaaab),intBitsToFloat(0x3f2aaaab),-(1.0))); -PV0f.x = tempf.x; -PV0f.y = tempf.x; -PV0f.z = tempf.x; -PV0f.w = tempf.x; -R126f.z = min(PV1f.x, PV1f.w); -PS0f = R126f.z; -// 11 -backupReg0f = R127f.x; -backupReg1f = R127f.z; -R127f.x = max(R126f.x, R126f.y); -PV1f.x = R127f.x; -R123f.y = (mul_nonIEEE(-(PV0f.x),PV0f.x) + 1.0); -PV1f.y = R123f.y; -R127f.z = backupReg0f + -(PS0f); -R125f.w = R126f.x + -(PS0f); -R126f.y = backupReg1f + -(PS0f); -PS1f = R126f.y; -// 12 -R126f.x = (mul_nonIEEE(PV1f.y,intBitsToFloat(uf_remappedPS[0].y)) + intBitsToFloat(uf_remappedPS[0].x)); -PV0f.x = R126f.x; -PV0f.y = -(R126f.z) + PV1f.x; -// 13 -R123f.w = (mul_nonIEEE(-(PV0f.x),PV0f.y) + R127f.x); -PV1f.w = R123f.w; -// 14 -R0f.x = (mul_nonIEEE(R126f.x,R125f.w) + PV1f.w); -R0f.y = (mul_nonIEEE(R126f.x,R127f.z) + PV1f.w); -R0f.z = (mul_nonIEEE(R126f.x,R126f.y) + PV1f.w); - -passPixelColor0 = vec4(R0f.x, R0f.y, R0f.z, R0f.w); - -vec3 color = (passPixelColor0.xyz); -color = TonemapPass(color); -const vec3 LumCoeff = vec3(0.2125, 0.7154, 0.0721); -vec3 AvgLumin = vec3(AvgLumR, AvgLumG, AvgLumB); -vec3 brtColor = color * brt; -vec3 intensity = vec3(dot(color, LumCoeff)); -vec3 satColor = mix(intensity, color, 1.); -vec3 conColor = mix(AvgLumin, satColor, con); -passPixelColor0 = vec4(conColor, R0f.w); -} \ No newline at end of file diff --git a/Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.txt.lumashapening b/Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.txt.lumashapening deleted file mode 100644 index f4916430..00000000 --- a/Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.txt.lumashapening +++ /dev/null @@ -1,273 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable - -// shader bd8bba59e2149449 - -// Possible problems -// Being below 1.3.0 will give you double-vision with recent graphic packs. Update to 1.3.0 or above. -// If you're experiencing any issues (due to having the previous Clarity shaders installed), please remove and redownload all of the BotW packs. - -// Changelog V0.1 -// Changed from shader f14bb_ps.txt to bd8bb_ps.txt - -// Credit to NAVras for merging to a better shader. -// Credit to getdls for adding exposure & Original Contrasty. - -// Clarity GFX -// Credit to Jamie for main coding. -// Credit to Kiri coding & Reshade logic. -// Credit to Serfrost for preset values. -// Original shader dumped using cemu 1.10.0f, BotW 1.3.1 - -// Changelog v0.5 - -//########################################################## - -// Contrast, saturation, Gamma. - -//Adjustable Values: - -const float con = 0.80; // [0.0 ~ 1.5] [0.5 Default] Contrast Adjustment - or + values work -const float sat = 0.00; // [0.1 ~ 1.5] [0.0 Default] Color Saturation Adjustment. - or + values work -const float gamma = 1.43; // [0.0 ~ 2.5] [1.0 Default] Gamma Adjustment - or + values work -//Luma Values for changing color. Machinima tool mostly. -const float AvgLumR = 0.0; // [0.0 ~ 1.5] [0.0 Default] Use very small increments, as it changes RGB values. -const float AvgLumG = -0.003; // [0.0 ~ 1.5] [0.0 Default] Use very small increments, as it changes RGB values. -const float AvgLumB = 0.0; // [0.0 ~ 1.5] [0.0 Default] Use very small increments, as it changes RGB values. -//----------------------------------------------------------- - -//End of adjustable values - -//########################################################### - -//Do not edit under this line. - -const float exposure = 0.00; -const float Bleach = 0.0; -uniform float brt; -const vec3 FogColor = vec3(0.0, 0.0, 0.0); //defog Color"; - -uniform ivec4 uf_remappedPS[1]; -layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0xf46ac800 res 320x180x1 dim 1 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x5) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 2 2 2 border: 1 -layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0xf5c7b800 res 1280x720x1 dim 1 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in vec4 passParameterSem0; -layout(location = 0) out vec4 passPixelColor0; -uniform vec2 uf_fragCoordScale; -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } - -//----------------------------------------------------------- -// Based on CeeJay.dk's original GLSL/HLSL. -//----------------------------------------------------------- - -vec3 TonemapPass(vec3 inputColor) { - vec3 color = inputColor; - color *= pow(2.0f, exposure); // exposure - color = pow(color, vec3(gamma)); // Gamma - - const vec3 coefLuma = vec3(0.2126, 0.7152, 0.0722); - float lum = dot(coefLuma, color); - - float L = clamp(10.0 * (lum - 0.45), 0.0, 1.0); - vec3 A2 = Bleach * color; - - vec3 result1 = 2.0f * color * lum; - vec3 result2 = 1.0f - 2.0f * (1.0f - lum) * (1.0f - color); - - vec3 newColor = mix(result1, result2, L); - vec3 mixRGB = A2 * newColor; - color += ((1.0f - A2) * mixRGB); - - vec3 middlegray = vec3(dot(color, vec3(1.0 / 3.0))); - vec3 diffcolor = color - middlegray; - color = (color + diffcolor * sat) / (1 + (diffcolor * sat)); // saturation - - return color; -} - -vec3 brightnessContrast(vec3 color, float brt, float con){ - return (color - 0.5) * con + 0.5 + brt; -} - -// -- Sharpening -- -#define px (1.0/1280.0*uf_fragCoordScale.x) -#define py (1.0/720.0*uf_fragCoordScale.y) - -#define sharp_strength 0.65 //[0.10 to 3.00] Strength of the sharpening -#define sharp_clamp 0.035 //[0.000 to 1.000] Limits maximum amount of sharpening a pixel recieves - Default is 0.035 -// -- Advanced sharpening settings -- -#define offset_bias 1.0 //[0.0 to 6.0] Offset bias adjusts the radius of the sampling pattern. -#define CoefLuma vec3(0.2126, 0.7152, 0.0722) - -vec3 lumasharping(sampler2D tex, vec2 pos){ - vec4 colorInput = texture(tex, pos); - - vec3 ori = colorInput.rgb; - - // -- Combining the strength and luma multipliers -- - vec3 sharp_strength_luma = (CoefLuma * sharp_strength); - - // -- Gaussian filter -- - // [ .25, .50, .25] [ 1 , 2 , 1 ] - // [ .50, 1, .50] = [ 2 , 4 , 2 ] - // [ .25, .50, .25] [ 1 , 2 , 1 ] - - - //float px = 1.0/tex_size[0]; - //float py = 1.0/tex_size[1]; - - vec3 blur_ori = texture(tex, pos + vec2(px,-py) * 0.5 * offset_bias).rgb; // South East - blur_ori += texture(tex, pos + vec2(-px,-py) * 0.5 * offset_bias).rgb; // South West - blur_ori += texture(tex, pos + vec2(px,py) * 0.5 * offset_bias).rgb; // North East - blur_ori += texture(tex, pos + vec2(-px,py) * 0.5 * offset_bias).rgb; // North West - - blur_ori *= 0.25; // ( /= 4) Divide by the number of texture fetches - - // -- Calculate the sharpening -- - vec3 sharp = ori - blur_ori; //Subtracting the blurred image from the original image - - // -- Adjust strength of the sharpening and clamp it-- - vec4 sharp_strength_luma_clamp = vec4(sharp_strength_luma * (0.5 / sharp_clamp),0.5); //Roll part of the clamp into the dot - - float sharp_luma = clamp((dot(vec4(sharp,1.0), sharp_strength_luma_clamp)), 0.0,1.0 ); //Calculate the luma, adjust the strength, scale up and clamp - sharp_luma = (sharp_clamp * 2.0) * sharp_luma - sharp_clamp; //scale down - - - // -- Combining the values to get the final sharpened pixel -- - - colorInput.rgb = colorInput.rgb + sharp_luma; // Add the sharpening to the input color. - return clamp(colorInput.rgb, 0.0,1.0); -} - -void main() -{ -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); -vec4 R123f = vec4(0.0); -vec4 R125f = vec4(0.0); -vec4 R126f = vec4(0.0); -vec4 R127f = vec4(0.0); -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0f = passParameterSem0; -R1f.xyz = (texture(textureUnitPS0, R0f.xy).xyz); -R0f.xyz = lumasharping(textureUnitPS1, R0f.xy); -// 0 -R126f.x = R1f.x + R0f.x; -PV0f.x = R126f.x; -R127f.y = R1f.y + R0f.y; -PV0f.y = R127f.y; -R126f.z = R1f.z + R0f.z; -PV0f.z = R126f.z; -R125f.w = 1.0; -// 1 -tempf.x = dot(vec4(PV0f.x,PV0f.y,PV0f.z,-0.0),vec4(intBitsToFloat(0x3e99096c),intBitsToFloat(0x3f162b6b),intBitsToFloat(0x3dea4a8c),0.0)); -PV1f.x = tempf.x; -PV1f.y = tempf.x; -PV1f.z = tempf.x; -PV1f.w = tempf.x; -// 2 -R127f.x = -(R127f.y) * intBitsToFloat(0x3fb8aa3b); -PV0f.y = -(PV1f.x) * intBitsToFloat(0x3fb8aa3b); -R127f.z = -(R126f.x) * intBitsToFloat(0x3fb8aa3b); -R127f.w = -(R126f.z) * intBitsToFloat(0x3fb8aa3b); -R126f.w = 1.0 / PV1f.x; -PS0f = R126f.w; -// 3 -PS1f = exp2(PV0f.y); -// 4 -PV0f.x = -(PS1f) + 1.0; -PS0f = exp2(R127f.x); -// 5 -R127f.x = -(PS0f) + 1.0; -R126f.y = mul_nonIEEE(PV0f.x, PV0f.x); -PV1f.z = PV0f.x * R126f.w; -PS1f = exp2(R127f.w); -// 6 -backupReg0f = R126f.x; -backupReg1f = R127f.z; -R126f.x = mul_nonIEEE(backupReg0f, PV1f.z); -PV0f.y = -(PS1f) + 1.0; -R127f.z = mul_nonIEEE(R126f.z, PV1f.z); -PV0f.z = R127f.z; -R127f.w = mul_nonIEEE(R127f.y, PV1f.z); -PV0f.w = R127f.w; -PS0f = exp2(backupReg1f); -// 7 -PV1f.x = R127f.x + -(PV0f.w); -PV1f.y = PV0f.y + -(PV0f.z); -PV1f.w = -(PS0f) + 1.0; -// 8 -backupReg0f = R127f.z; -R127f.x = (mul_nonIEEE(PV1f.x,R126f.y) + R127f.w); -R127f.x = clamp(R127f.x, 0.0, 1.0); -PV0f.x = R127f.x; -PV0f.y = PV1f.w + -(R126f.x); -R127f.z = (mul_nonIEEE(PV1f.y,R126f.y) + backupReg0f); -R127f.z = clamp(R127f.z, 0.0, 1.0); -PV0f.z = R127f.z; -// 9 -backupReg0f = R126f.x; -R126f.x = (mul_nonIEEE(PV0f.y,R126f.y) + backupReg0f); -R126f.x = clamp(R126f.x, 0.0, 1.0); -PV1f.x = R126f.x; -R126f.y = max(PV0f.x, PV0f.z); -PV1f.w = min(PV0f.x, PV0f.z); -// 10 -tempf.x = dot(vec4(PV1f.x,R127f.x,R127f.z,R125f.w),vec4(intBitsToFloat(0x3f2aaaab),intBitsToFloat(0x3f2aaaab),intBitsToFloat(0x3f2aaaab),-(1.0))); -PV0f.x = tempf.x; -PV0f.y = tempf.x; -PV0f.z = tempf.x; -PV0f.w = tempf.x; -R126f.z = min(PV1f.x, PV1f.w); -PS0f = R126f.z; -// 11 -backupReg0f = R127f.x; -backupReg1f = R127f.z; -R127f.x = max(R126f.x, R126f.y); -PV1f.x = R127f.x; -R123f.y = (mul_nonIEEE(-(PV0f.x),PV0f.x) + 1.0); -PV1f.y = R123f.y; -R127f.z = backupReg0f + -(PS0f); -R125f.w = R126f.x + -(PS0f); -R126f.y = backupReg1f + -(PS0f); -PS1f = R126f.y; -// 12 -R126f.x = (mul_nonIEEE(PV1f.y,intBitsToFloat(uf_remappedPS[0].y)) + intBitsToFloat(uf_remappedPS[0].x)); -PV0f.x = R126f.x; -PV0f.y = -(R126f.z) + PV1f.x; -// 13 -R123f.w = (mul_nonIEEE(-(PV0f.x),PV0f.y) + R127f.x); -PV1f.w = R123f.w; -// 14 -R0f.x = (mul_nonIEEE(R126f.x,R125f.w) + PV1f.w); -R0f.y = (mul_nonIEEE(R126f.x,R127f.z) + PV1f.w); -R0f.z = (mul_nonIEEE(R126f.x,R126f.y) + PV1f.w); - -passPixelColor0 = vec4(R0f.x, R0f.y, R0f.z, R0f.w); - -vec3 color = (passPixelColor0.xyz); -color = TonemapPass(color); -const vec3 LumCoeff = vec3(0.2125, 0.7154, 0.0721); -vec3 AvgLumin = vec3(AvgLumR, AvgLumG, AvgLumB); -vec3 brtColor = color * brt; -vec3 intensity = vec3(dot(color, LumCoeff)); -vec3 satColor = mix(intensity, color, 1.); -vec3 conColor = mix(AvgLumin, satColor, con); -passPixelColor0 = vec4(conColor, R0f.w); -} \ No newline at end of file diff --git a/Enhancement/BreathOfTheWild_ClarityGFX/rules.txt b/Enhancement/BreathOfTheWild_ClarityGFX/rules.txt index 38a9dd25..93eda7ef 100644 --- a/Enhancement/BreathOfTheWild_ClarityGFX/rules.txt +++ b/Enhancement/BreathOfTheWild_ClarityGFX/rules.txt @@ -1,4 +1,4 @@ [Definition] titleIds = 00050000101C9300,00050000101C9400,00050000101C9500 -name = "The Legend of Zelda: Breath of the Wild - Clarity GFX" +name = "The Legend of Zelda: Breath of the Wild - Clarity GFX UHD" version = 2 \ No newline at end of file From f1b1da3ca38bc444ea12d49f7ca03a123e8f5b4c Mon Sep 17 00:00:00 2001 From: Milan Date: Sat, 4 Nov 2017 14:16:58 +0100 Subject: [PATCH 02/34] Fix failing builds Description is now fully enclosed, so there's nothing escaping it. Previously (discovered by NAVras), the brackets (and possibly other stuff) wouldn't be escaped and would result it a failed build. --- appveyor.yml | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/appveyor.yml b/appveyor.yml index c899d487..c745d56c 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -4,7 +4,6 @@ skip_tags: true environment: # It's prefered to have the GithubAuthToken (encrypted) set in the UI. Follow this guide for the instructions https://www.appveyor.com/docs/deployment/github/#provider-settings. CommitTimestamp: 0 - CommitDescription: 'No description was added to this commit.' CYG_MIRROR: http://cygwin.mirror.constant.com CYG_PACKAGES: bash,php,dos2unix matrix: @@ -35,7 +34,7 @@ init: # Install needed build dependencies install: - - if defined appveyor_repo_commit_message_extended (set CommitDescription=%appveyor_repo_commit_message_extended%) # If there's is a description set it to that, otherwise leave it. + - if defined appveyor_repo_commit_message_extended (echo "Found commit description!") else (set appveyor_repo_commit_message_extended='No description was added to this commit.') # If there's is a description set it to that, otherwise leave it. - ps: $env:CommitTimestamp=[System.DateTime]::UtcNow # Readable timestamp - ps: if (Test-Path Env:\CYG_ROOT) { Start-FileDownload "http://cygwin.com/$env:CYG_SETUP" -FileName "cygsetup.exe" -Timeout 30000 } - ps: if ((Get-Content "cygsetup.exe") -eq $Null) { Copy-Item "$env:CYG_SETUP" -Destination "cygsetup.exe" -Force } else { Copy-Item "cygsetup.exe" -Destination "$env:CYG_SETUP" -Force } @@ -62,7 +61,7 @@ deploy: tag: "appveyor$(appveyor_build_version)" # Tag needs to be the same otherwise it won't overwrite. release: "Graphic Packs: version 2-$(appveyor_build_version)" - description: "Updated to **v2-$(appveyor_build_version)** at $(CommitTimestamp) (UTC)\n\n### Changelog:\n**$(appveyor_repo_commit_message)** - Commit $(appveyor_repo_commit) by $(appveyor_repo_commit_author):\n```\n$(CommitDescription)\n```\n#### [Installation instructions](https://$(appveyor_account_name).github.io/$(appveyor_project_name)/) - [Previous versions](https://ci.appveyor.com/project/$(appveyor_account_name)/cemu-graphic-packs/history)" + description: "Updated to **v2-$(appveyor_build_version)** at $(CommitTimestamp) (UTC)\n\n### Changelog:\n**$(appveyor_repo_commit_message)** - Commit $(appveyor_repo_commit) by $(appveyor_repo_commit_author):\n```\n$(appveyor_repo_commit_message_extended)\n```\n#### [Installation instructions](https://$(appveyor_account_name).github.io/$(appveyor_project_name)/) - [Previous versions](https://ci.appveyor.com/project/$(appveyor_account_name)/cemu-graphic-packs/history)" provider: GitHub # Auth token is generated by using https://www.appveyor.com/docs/deployment/github/#provider-settings auth_token: $(GithubAuthToken) From 5fa4b2a7fe2ddbb0a885239d6b0f93c2598540be Mon Sep 17 00:00:00 2001 From: Alex Chirila Date: Sat, 4 Nov 2017 11:41:30 +0200 Subject: [PATCH 03/34] [BotW] Added experimental shadow blur fix for the AMDShadows pack --- .../ffe0e8c84f6e8da9_000003c000009269_ps.txt | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/Workaround/BreathOfTheWild_!AMDShadows/ffe0e8c84f6e8da9_000003c000009269_ps.txt b/Workaround/BreathOfTheWild_!AMDShadows/ffe0e8c84f6e8da9_000003c000009269_ps.txt index 38f4ab9b..910ead73 100644 --- a/Workaround/BreathOfTheWild_!AMDShadows/ffe0e8c84f6e8da9_000003c000009269_ps.txt +++ b/Workaround/BreathOfTheWild_!AMDShadows/ffe0e8c84f6e8da9_000003c000009269_ps.txt @@ -374,10 +374,10 @@ R2i.y = floatBitsToInt(intBitsToFloat(0x3da22222) * intBitsToFloat(PS1i)); R2i.z = floatBitsToInt(intBitsToFloat(0x3da22222) * intBitsToFloat(PS1i)); R13i.w = PV1i.y - R127i.x; PV0i.w = R13i.w; -PS0i = floatBitsToInt(uf_blockPS6[53].y); +PS0i = floatBitsToInt(uf_blockPS6[53].y * uf_fragCoordScale.y); PS0i = floatBitsToInt(intBitsToFloat(PS0i) / 2.0); // 3 -R6i.x = floatBitsToInt(uf_blockPS6[53].x); +R6i.x = floatBitsToInt(uf_blockPS6[53].x * uf_fragCoordScale.x); R6i.x = floatBitsToInt(intBitsToFloat(R6i.x) / 2.0); PV1i.y = PV0i.w << 0x00000002; R6i.z = floatBitsToInt(-(intBitsToFloat(PS0i))); @@ -493,7 +493,7 @@ PV0i.y = floatBitsToInt(intBitsToFloat(R0i.w) + intBitsToFloat(PV1i.w)); R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.y), intBitsToFloat(PS1i))); PV0i.z = R127i.z; // 13 -R7i.x = floatBitsToInt((uf_blockPS6[53].x * 0.5 + intBitsToFloat(PV0i.z))); +R7i.x = floatBitsToInt((uf_blockPS6[53].x * uf_fragCoordScale.x * 0.5 + intBitsToFloat(PV0i.z))); R127i.y = floatBitsToInt(intBitsToFloat(PV0i.x) + intBitsToFloat(0xbb03126f)); R127i.y = clampFI32(R127i.y); PV1i.y = R127i.y; @@ -503,18 +503,18 @@ R8i.x = floatBitsToInt(intBitsToFloat(PV0i.z) + intBitsToFloat(R6i.x)); PS1i = R8i.x; // 14 R1i.x = floatBitsToInt(intBitsToFloat(R127i.z) + intBitsToFloat(R126i.w)); -R7i.y = floatBitsToInt((uf_blockPS6[53].y * 0.5 + intBitsToFloat(PV1i.w))); +R7i.y = floatBitsToInt((uf_blockPS6[53].y * uf_fragCoordScale.y * 0.5 + intBitsToFloat(PV1i.w))); R7i.w = PV1i.y; R8i.y = floatBitsToInt(intBitsToFloat(PV1i.w) + intBitsToFloat(R6i.z)); PS0i = R8i.y; // 15 -R9i.x = floatBitsToInt((-(uf_blockPS6[53].x) * 0.5 + intBitsToFloat(R127i.z))); +R9i.x = floatBitsToInt((-(uf_blockPS6[53].x) * uf_fragCoordScale.x * 0.5 + intBitsToFloat(R127i.z))); R1i.y = floatBitsToInt(intBitsToFloat(R127i.w) + intBitsToFloat(R2i.w)); R8i.w = R127i.y; R1i.w = R127i.y; PS1i = R1i.w; // 16 -R9i.y = floatBitsToInt((-(uf_blockPS6[53].y) * 0.5 + intBitsToFloat(R127i.w))); +R9i.y = floatBitsToInt((-(uf_blockPS6[53].y) * uf_fragCoordScale.y * 0.5 + intBitsToFloat(R127i.w))); R9i.w = R127i.y; } if( activeMaskStackC[2] == true ) { From 5531e638a2ba5d55e552ebdbf395a7fc314303da Mon Sep 17 00:00:00 2001 From: Michael Date: Sat, 4 Nov 2017 11:57:44 -0700 Subject: [PATCH 04/34] remove problematic graphic pack --- Modifications/MarioKart8_TheVoid/patches.txt | 17 ----------------- Modifications/MarioKart8_TheVoid/rules.txt | 4 ---- 2 files changed, 21 deletions(-) delete mode 100644 Modifications/MarioKart8_TheVoid/patches.txt delete mode 100644 Modifications/MarioKart8_TheVoid/rules.txt diff --git a/Modifications/MarioKart8_TheVoid/patches.txt b/Modifications/MarioKart8_TheVoid/patches.txt deleted file mode 100644 index dc319e33..00000000 --- a/Modifications/MarioKart8_TheVoid/patches.txt +++ /dev/null @@ -1,17 +0,0 @@ -[Turbo64] -moduleMatches = 0xD09700CE - -0x10180618 = .string "Invalid ,Gu_Menu ,Test ,Reserved01 ,Reserved02 ,Reserved03 ,Reserved04 ,Reserved05 ,Reserved06 ,Reserved07 ,Reserved08 ,Reserved09 ,Reserved10 ,Reserved11 ,Reserved12 ,Reserved13 ,Reserved14 ,Gu_MarioCircuit ,Gu_DossunIseki ,Gu_City ,Gu_Cake ,Gu_HorrorHouse ,Gu_Expert ,Gu_Desert ,Gu_Cloud ,Gu_SnowMountain ,Gu_Techno ,Gu_Airport ,Gu_Menu ,Gu_WaterPark ,Gu_Ocean ,Gu_BowserCastle ,Gu_RainbowRoad ,G3ds_DKJungle ,Gwii_MooMooMeadows ,G64_PeachCircuit ,G64_KinopioHighway ,Gds_PukupukuBeach ,Ggc_SherbetLand ,Gagb_MarioCircuit ,G3ds_MusicPark ,Gwii_GrumbleVolcano ,Gsfc_DonutsPlain3 ,Ggc_DryDryDesert ,G3ds_PackunSlider ,Gds_TickTockClock ,G64_YoshiValley ,Gds_WarioStadium ,G64_RainbowRoad ,Du_Metro ,Du_MuteCity ,Du_DragonRoad ,Du_Hyrule ,Du_Animal_Summer ,Du_ExciteBike ,Du_Woods ,Du_IcePark ,Dgc_YoshiCircuit ,Dwii_WariosMine ,Dsfc_RainbowRoad ,Dagb_RibbonRoad ,D3ds_NeoBowserCity ,Dgc_BabyPark ,Dagb_CheeseLand ,Du_BigBlue ,Du_Animal_Spring ,Du_Animal_Autumn ,Du_Animal_Winter ,UnderConstruction20 ,UnderConstruction21 ,UnderConstruction22 ,UnderConstruction23 ,UnderConstruction24 ,UnderConstruction25 ,UnderConstruction26 ,UnderConstruction27 ,UnderConstruction28 ,UnderConstruction29 ,UnderConstruction30 ,UnderConstruction31 ,UnderConstruction32" -0x10180F38 = .string "Invalid ,Gu_Menu ,Test ,Reserved01 ,Reserved02 ,Reserved03 ,Reserved04 ,Reserved05 ,Reserved06 ,Reserved07 ,Reserved08 ,Reserved09 ,Reserved10 ,Reserved11 ,Reserved12 ,Reserved13 ,Reserved14 ,Gu_MarioCircuit ,Gu_DossunIseki ,Gu_City ,Gu_Cake ,Gu_HorrorHouse ,Gu_Expert ,Gu_Desert ,Gu_Cloud ,Gu_SnowMountain ,Gu_Techno ,Gu_Airport ,Gu_Menu ,Gu_WaterPark ,Gu_Ocean ,Gu_BowserCastle ,Gu_RainbowRoad ,G3ds_DKJungle ,Gwii_MooMooMeadows ,G64_PeachCircuit ,G64_KinopioHighway ,Gds_PukupukuBeach ,Ggc_SherbetLand ,Gagb_MarioCircuit ,G3ds_MusicPark ,Gwii_GrumbleVolcano ,Gsfc_DonutsPlain3 ,Ggc_DryDryDesert ,G3ds_PackunSlider ,Gds_TickTockClock ,G64_YoshiValley ,Gds_WarioStadium ,G64_RainbowRoad ,Du_Metro ,Du_MuteCity ,Du_DragonRoad ,Du_Hyrule ,Du_Animal_Summer ,Du_ExciteBike ,Du_Woods ,Du_IcePark ,Dgc_YoshiCircuit ,Dwii_WariosMine ,Dsfc_RainbowRoad ,Dagb_RibbonRoad ,D3ds_NeoBowserCity ,Dgc_BabyPark ,Dagb_CheeseLand ,Du_BigBlue ,Du_Animal_Spring ,Du_Animal_Autumn ,Du_Animal_Winter ,UnderConstruction20 ,UnderConstruction21 ,UnderConstruction22 ,UnderConstruction23 ,UnderConstruction24 ,UnderConstruction25 ,UnderConstruction26 ,UnderConstruction27 ,UnderConstruction28 ,UnderConstruction29 ,UnderConstruction30 ,UnderConstruction31 ,UnderConstruction32" -0x101814F8 = .string "Invalid ,Gu_Menu ,Test ,Reserved01 ,Reserved02 ,Reserved03 ,Reserved04 ,Reserved05 ,Reserved06 ,Reserved07 ,Reserved08 ,Reserved09 ,Reserved10 ,Reserved11 ,Reserved12 ,Reserved13 ,Reserved14 ,Gu_MarioCircuit ,Gu_DossunIseki ,Gu_City ,Gu_Cake ,Gu_HorrorHouse ,Gu_Expert ,Gu_Desert ,Gu_Cloud ,Gu_SnowMountain ,Gu_Techno ,Gu_Airport ,Gu_Menu ,Gu_WaterPark ,Gu_Ocean ,Gu_BowserCastle ,Gu_RainbowRoad ,G3ds_DKJungle ,Gwii_MooMooMeadows ,G64_PeachCircuit ,G64_KinopioHighway ,Gds_PukupukuBeach ,Ggc_SherbetLand ,Gagb_MarioCircuit ,G3ds_MusicPark ,Gwii_GrumbleVolcano ,Gsfc_DonutsPlain3 ,Ggc_DryDryDesert ,G3ds_PackunSlider ,Gds_TickTockClock ,G64_YoshiValley ,Gds_WarioStadium ,G64_RainbowRoad ,Du_Metro ,Du_MuteCity ,Du_DragonRoad ,Du_Hyrule ,Du_Animal_Summer ,Du_ExciteBike ,Du_Woods ,Du_IcePark ,Dgc_YoshiCircuit ,Dwii_WariosMine ,Dsfc_RainbowRoad ,Dagb_RibbonRoad ,D3ds_NeoBowserCity ,Dgc_BabyPark ,Dagb_CheeseLand ,Du_BigBlue ,Du_Animal_Spring ,Du_Animal_Autumn ,Du_Animal_Winter ,UnderConstruction20 ,UnderConstruction21 ,UnderConstruction22 ,UnderConstruction23 ,UnderConstruction24 ,UnderConstruction25 ,UnderConstruction26 ,UnderConstruction27 ,UnderConstruction28 ,UnderConstruction29 ,UnderConstruction30 ,UnderConstruction31 ,UnderConstruction32" -0x10183EF0 = .string "Invalid ,Gu_Menu ,Test ,Reserved01 ,Reserved02 ,Reserved03 ,Reserved04 ,Reserved05 ,Reserved06 ,Reserved07 ,Reserved08 ,Reserved09 ,Reserved10 ,Reserved11 ,Reserved12 ,Reserved13 ,Reserved14 ,Gu_MarioCircuit ,Gu_DossunIseki ,Gu_City ,Gu_Cake ,Gu_HorrorHouse ,Gu_Expert ,Gu_Desert ,Gu_Cloud ,Gu_SnowMountain ,Gu_Techno ,Gu_Airport ,Gu_Menu ,Gu_WaterPark ,Gu_Ocean ,Gu_BowserCastle ,Gu_RainbowRoad ,G3ds_DKJungle ,Gwii_MooMooMeadows ,G64_PeachCircuit ,G64_KinopioHighway ,Gds_PukupukuBeach ,Ggc_SherbetLand ,Gagb_MarioCircuit ,G3ds_MusicPark ,Gwii_GrumbleVolcano ,Gsfc_DonutsPlain3 ,Ggc_DryDryDesert ,G3ds_PackunSlider ,Gds_TickTockClock ,G64_YoshiValley ,Gds_WarioStadium ,G64_RainbowRoad ,Du_Metro ,Du_MuteCity ,Du_DragonRoad ,Du_Hyrule ,Du_Animal_Summer ,Du_ExciteBike ,Du_Woods ,Du_IcePark ,Dgc_YoshiCircuit ,Dwii_WariosMine ,Dsfc_RainbowRoad ,Dagb_RibbonRoad ,D3ds_NeoBowserCity ,Dgc_BabyPark ,Dagb_CheeseLand ,Du_BigBlue ,Du_Animal_Spring ,Du_Animal_Autumn ,Du_Animal_Winter ,UnderConstruction20 ,UnderConstruction21 ,UnderConstruction22 ,UnderConstruction23 ,UnderConstruction24 ,UnderConstruction25 ,UnderConstruction26 ,UnderConstruction27 ,UnderConstruction28 ,UnderConstruction29 ,UnderConstruction30 ,UnderConstruction31 ,UnderConstruction32" -0x10184410 = .string "Invalid ,Gu_Menu ,Test ,Reserved01 ,Reserved02 ,Reserved03 ,Reserved04 ,Reserved05 ,Reserved06 ,Reserved07 ,Reserved08 ,Reserved09 ,Reserved10 ,Reserved11 ,Reserved12 ,Reserved13 ,Reserved14 ,Gu_MarioCircuit ,Gu_DossunIseki ,Gu_City ,Gu_Cake ,Gu_HorrorHouse ,Gu_Expert ,Gu_Desert ,Gu_Cloud ,Gu_SnowMountain ,Gu_Techno ,Gu_Airport ,Gu_Menu ,Gu_WaterPark ,Gu_Ocean ,Gu_BowserCastle ,Gu_RainbowRoad ,G3ds_DKJungle ,Gwii_MooMooMeadows ,G64_PeachCircuit ,G64_KinopioHighway ,Gds_PukupukuBeach ,Ggc_SherbetLand ,Gagb_MarioCircuit ,G3ds_MusicPark ,Gwii_GrumbleVolcano ,Gsfc_DonutsPlain3 ,Ggc_DryDryDesert ,G3ds_PackunSlider ,Gds_TickTockClock ,G64_YoshiValley ,Gds_WarioStadium ,G64_RainbowRoad ,Du_Metro ,Du_MuteCity ,Du_DragonRoad ,Du_Hyrule ,Du_Animal_Summer ,Du_ExciteBike ,Du_Woods ,Du_IcePark ,Dgc_YoshiCircuit ,Dwii_WariosMine ,Dsfc_RainbowRoad ,Dagb_RibbonRoad ,D3ds_NeoBowserCity ,Dgc_BabyPark ,Dagb_CheeseLand ,Du_BigBlue ,Du_Animal_Spring ,Du_Animal_Autumn ,Du_Animal_Winter ,UnderConstruction20 ,UnderConstruction21 ,UnderConstruction22 ,UnderConstruction23 ,UnderConstruction24 ,UnderConstruction25 ,UnderConstruction26 ,UnderConstruction27 ,UnderConstruction28 ,UnderConstruction29 ,UnderConstruction30 ,UnderConstruction31 ,UnderConstruction32" -0x10184904 = .string "Invalid ,Gu_Menu ,Test ,Reserved01 ,Reserved02 ,Reserved03 ,Reserved04 ,Reserved05 ,Reserved06 ,Reserved07 ,Reserved08 ,Reserved09 ,Reserved10 ,Reserved11 ,Reserved12 ,Reserved13 ,Reserved14 ,Gu_MarioCircuit ,Gu_DossunIseki ,Gu_City ,Gu_Cake ,Gu_HorrorHouse ,Gu_Expert ,Gu_Desert ,Gu_Cloud ,Gu_SnowMountain ,Gu_Techno ,Gu_Airport ,Gu_Menu ,Gu_WaterPark ,Gu_Ocean ,Gu_BowserCastle ,Gu_RainbowRoad ,G3ds_DKJungle ,Gwii_MooMooMeadows ,G64_PeachCircuit ,G64_KinopioHighway ,Gds_PukupukuBeach ,Ggc_SherbetLand ,Gagb_MarioCircuit ,G3ds_MusicPark ,Gwii_GrumbleVolcano ,Gsfc_DonutsPlain3 ,Ggc_DryDryDesert ,G3ds_PackunSlider ,Gds_TickTockClock ,G64_YoshiValley ,Gds_WarioStadium ,G64_RainbowRoad ,Du_Metro ,Du_MuteCity ,Du_DragonRoad ,Du_Hyrule ,Du_Animal_Summer ,Du_ExciteBike ,Du_Woods ,Du_IcePark ,Dgc_YoshiCircuit ,Dwii_WariosMine ,Dsfc_RainbowRoad ,Dagb_RibbonRoad ,D3ds_NeoBowserCity ,Dgc_BabyPark ,Dagb_CheeseLand ,Du_BigBlue ,Du_Animal_Spring ,Du_Animal_Autumn ,Du_Animal_Winter ,UnderConstruction20 ,UnderConstruction21 ,UnderConstruction22 ,UnderConstruction23 ,UnderConstruction24 ,UnderConstruction25 ,UnderConstruction26 ,UnderConstruction27 ,UnderConstruction28 ,UnderConstruction29 ,UnderConstruction30 ,UnderConstruction31 ,UnderConstruction32" -0x10187ECC = .string "Invalid ,Gu_Menu ,Test ,Reserved01 ,Reserved02 ,Reserved03 ,Reserved04 ,Reserved05 ,Reserved06 ,Reserved07 ,Reserved08 ,Reserved09 ,Reserved10 ,Reserved11 ,Reserved12 ,Reserved13 ,Reserved14 ,Gu_MarioCircuit ,Gu_DossunIseki ,Gu_City ,Gu_Cake ,Gu_HorrorHouse ,Gu_Expert ,Gu_Desert ,Gu_Cloud ,Gu_SnowMountain ,Gu_Techno ,Gu_Airport ,Gu_Menu ,Gu_WaterPark ,Gu_Ocean ,Gu_BowserCastle ,Gu_RainbowRoad ,G3ds_DKJungle ,Gwii_MooMooMeadows ,G64_PeachCircuit ,G64_KinopioHighway ,Gds_PukupukuBeach ,Ggc_SherbetLand ,Gagb_MarioCircuit ,G3ds_MusicPark ,Gwii_GrumbleVolcano ,Gsfc_DonutsPlain3 ,Ggc_DryDryDesert ,G3ds_PackunSlider ,Gds_TickTockClock ,G64_YoshiValley ,Gds_WarioStadium ,G64_RainbowRoad ,Du_Metro ,Du_MuteCity ,Du_DragonRoad ,Du_Hyrule ,Du_Animal_Summer ,Du_ExciteBike ,Du_Woods ,Du_IcePark ,Dgc_YoshiCircuit ,Dwii_WariosMine ,Dsfc_RainbowRoad ,Dagb_RibbonRoad ,D3ds_NeoBowserCity ,Dgc_BabyPark ,Dagb_CheeseLand ,Du_BigBlue ,Du_Animal_Spring ,Du_Animal_Autumn ,Du_Animal_Winter ,UnderConstruction20 ,UnderConstruction21 ,UnderConstruction22 ,UnderConstruction23 ,UnderConstruction24 ,UnderConstruction25 ,UnderConstruction26 ,UnderConstruction27 ,UnderConstruction28 ,UnderConstruction29 ,UnderConstruction30 ,UnderConstruction31 ,UnderConstruction32" -0x10188960 = .string "Invalid ,Gu_Menu ,Test ,Reserved01 ,Reserved02 ,Reserved03 ,Reserved04 ,Reserved05 ,Reserved06 ,Reserved07 ,Reserved08 ,Reserved09 ,Reserved10 ,Reserved11 ,Reserved12 ,Reserved13 ,Reserved14 ,Gu_MarioCircuit ,Gu_DossunIseki ,Gu_City ,Gu_Cake ,Gu_HorrorHouse ,Gu_Expert ,Gu_Desert ,Gu_Cloud ,Gu_SnowMountain ,Gu_Techno ,Gu_Airport ,Gu_Menu ,Gu_WaterPark ,Gu_Ocean ,Gu_BowserCastle ,Gu_RainbowRoad ,G3ds_DKJungle ,Gwii_MooMooMeadows ,G64_PeachCircuit ,G64_KinopioHighway ,Gds_PukupukuBeach ,Ggc_SherbetLand ,Gagb_MarioCircuit ,G3ds_MusicPark ,Gwii_GrumbleVolcano ,Gsfc_DonutsPlain3 ,Ggc_DryDryDesert ,G3ds_PackunSlider ,Gds_TickTockClock ,G64_YoshiValley ,Gds_WarioStadium ,G64_RainbowRoad ,Du_Metro ,Du_MuteCity ,Du_DragonRoad ,Du_Hyrule ,Du_Animal_Summer ,Du_ExciteBike ,Du_Woods ,Du_IcePark ,Dgc_YoshiCircuit ,Dwii_WariosMine ,Dsfc_RainbowRoad ,Dagb_RibbonRoad ,D3ds_NeoBowserCity ,Dgc_BabyPark ,Dagb_CheeseLand ,Du_BigBlue ,Du_Animal_Spring ,Du_Animal_Autumn ,Du_Animal_Winter ,UnderConstruction20 ,UnderConstruction21 ,UnderConstruction22 ,UnderConstruction23 ,UnderConstruction24 ,UnderConstruction25 ,UnderConstruction26 ,UnderConstruction27 ,UnderConstruction28 ,UnderConstruction29 ,UnderConstruction30 ,UnderConstruction31 ,UnderConstruction32" -0x1018921C = .string "Invalid ,Gu_Menu ,Test ,Reserved01 ,Reserved02 ,Reserved03 ,Reserved04 ,Reserved05 ,Reserved06 ,Reserved07 ,Reserved08 ,Reserved09 ,Reserved10 ,Reserved11 ,Reserved12 ,Reserved13 ,Reserved14 ,Gu_MarioCircuit ,Gu_DossunIseki ,Gu_City ,Gu_Cake ,Gu_HorrorHouse ,Gu_Expert ,Gu_Desert ,Gu_Cloud ,Gu_SnowMountain ,Gu_Techno ,Gu_Airport ,Gu_Menu ,Gu_WaterPark ,Gu_Ocean ,Gu_BowserCastle ,Gu_RainbowRoad ,G3ds_DKJungle ,Gwii_MooMooMeadows ,G64_PeachCircuit ,G64_KinopioHighway ,Gds_PukupukuBeach ,Ggc_SherbetLand ,Gagb_MarioCircuit ,G3ds_MusicPark ,Gwii_GrumbleVolcano ,Gsfc_DonutsPlain3 ,Ggc_DryDryDesert ,G3ds_PackunSlider ,Gds_TickTockClock ,G64_YoshiValley ,Gds_WarioStadium ,G64_RainbowRoad ,Du_Metro ,Du_MuteCity ,Du_DragonRoad ,Du_Hyrule ,Du_Animal_Summer ,Du_ExciteBike ,Du_Woods ,Du_IcePark ,Dgc_YoshiCircuit ,Dwii_WariosMine ,Dsfc_RainbowRoad ,Dagb_RibbonRoad ,D3ds_NeoBowserCity ,Dgc_BabyPark ,Dagb_CheeseLand ,Du_BigBlue ,Du_Animal_Spring ,Du_Animal_Autumn ,Du_Animal_Winter ,UnderConstruction20 ,UnderConstruction21 ,UnderConstruction22 ,UnderConstruction23 ,UnderConstruction24 ,UnderConstruction25 ,UnderConstruction26 ,UnderConstruction27 ,UnderConstruction28 ,UnderConstruction29 ,UnderConstruction30 ,UnderConstruction31 ,UnderConstruction32" -0x1018AA9C = .string "Invalid ,Gu_Menu ,Test ,Reserved01 ,Reserved02 ,Reserved03 ,Reserved04 ,Reserved05 ,Reserved06 ,Reserved07 ,Reserved08 ,Reserved09 ,Reserved10 ,Reserved11 ,Reserved12 ,Reserved13 ,Reserved14 ,Gu_MarioCircuit ,Gu_DossunIseki ,Gu_City ,Gu_Cake ,Gu_HorrorHouse ,Gu_Expert ,Gu_Desert ,Gu_Cloud ,Gu_SnowMountain ,Gu_Techno ,Gu_Airport ,Gu_Menu ,Gu_WaterPark ,Gu_Ocean ,Gu_BowserCastle ,Gu_RainbowRoad ,G3ds_DKJungle ,Gwii_MooMooMeadows ,G64_PeachCircuit ,G64_KinopioHighway ,Gds_PukupukuBeach ,Ggc_SherbetLand ,Gagb_MarioCircuit ,G3ds_MusicPark ,Gwii_GrumbleVolcano ,Gsfc_DonutsPlain3 ,Ggc_DryDryDesert ,G3ds_PackunSlider ,Gds_TickTockClock ,G64_YoshiValley ,Gds_WarioStadium ,G64_RainbowRoad ,Du_Metro ,Du_MuteCity ,Du_DragonRoad ,Du_Hyrule ,Du_Animal_Summer ,Du_ExciteBike ,Du_Woods ,Du_IcePark ,Dgc_YoshiCircuit ,Dwii_WariosMine ,Dsfc_RainbowRoad ,Dagb_RibbonRoad ,D3ds_NeoBowserCity ,Dgc_BabyPark ,Dagb_CheeseLand ,Du_BigBlue ,Du_Animal_Spring ,Du_Animal_Autumn ,Du_Animal_Winter ,UnderConstruction20 ,UnderConstruction21 ,UnderConstruction22 ,UnderConstruction23 ,UnderConstruction24 ,UnderConstruction25 ,UnderConstruction26 ,UnderConstruction27 ,UnderConstruction28 ,UnderConstruction29 ,UnderConstruction30 ,UnderConstruction31 ,UnderConstruction32" -0x1018BB64 = .string "Invalid ,Gu_Menu ,Test ,Reserved01 ,Reserved02 ,Reserved03 ,Reserved04 ,Reserved05 ,Reserved06 ,Reserved07 ,Reserved08 ,Reserved09 ,Reserved10 ,Reserved11 ,Reserved12 ,Reserved13 ,Reserved14 ,Gu_MarioCircuit ,Gu_DossunIseki ,Gu_City ,Gu_Cake ,Gu_HorrorHouse ,Gu_Expert ,Gu_Desert ,Gu_Cloud ,Gu_SnowMountain ,Gu_Techno ,Gu_Airport ,Gu_Menu ,Gu_WaterPark ,Gu_Ocean ,Gu_BowserCastle ,Gu_RainbowRoad ,G3ds_DKJungle ,Gwii_MooMooMeadows ,G64_PeachCircuit ,G64_KinopioHighway ,Gds_PukupukuBeach ,Ggc_SherbetLand ,Gagb_MarioCircuit ,G3ds_MusicPark ,Gwii_GrumbleVolcano ,Gsfc_DonutsPlain3 ,Ggc_DryDryDesert ,G3ds_PackunSlider ,Gds_TickTockClock ,G64_YoshiValley ,Gds_WarioStadium ,G64_RainbowRoad ,Du_Metro ,Du_MuteCity ,Du_DragonRoad ,Du_Hyrule ,Du_Animal_Summer ,Du_ExciteBike ,Du_Woods ,Du_IcePark ,Dgc_YoshiCircuit ,Dwii_WariosMine ,Dsfc_RainbowRoad ,Dagb_RibbonRoad ,D3ds_NeoBowserCity ,Dgc_BabyPark ,Dagb_CheeseLand ,Du_BigBlue ,Du_Animal_Spring ,Du_Animal_Autumn ,Du_Animal_Winter ,UnderConstruction20 ,UnderConstruction21 ,UnderConstruction22 ,UnderConstruction23 ,UnderConstruction24 ,UnderConstruction25 ,UnderConstruction26 ,UnderConstruction27 ,UnderConstruction28 ,UnderConstruction29 ,UnderConstruction30 ,UnderConstruction31 ,UnderConstruction32" - -#Original: -#.string "Invalid ,Gu_Menu ,Test ,Reserved01 ,Reserved02 ,Reserved03 ,Reserved04 ,Reserved05 ,Reserved06 ,Reserved07 ,Reserved08 ,Reserved09 ,Reserved10 ,Reserved11 ,Reserved12 ,Reserved13 ,Reserved14 ,Gu_MarioCircuit ,Gu_DossunIseki ,Gu_City ,Gu_Cake ,Gu_HorrorHouse ,Gu_Expert ,Gu_Desert ,Gu_Cloud ,Gu_SnowMountain ,Gu_Techno ,Gu_Airport ,Gu_FirstCircuit ,Gu_WaterPark ,Gu_Ocean ,Gu_BowserCastle ,Gu_RainbowRoad ,G3ds_DKJungle ,Gwii_MooMooMeadows ,G64_PeachCircuit ,G64_KinopioHighway ,Gds_PukupukuBeach ,Ggc_SherbetLand ,Gagb_MarioCircuit ,G3ds_MusicPark ,Gwii_GrumbleVolcano ,Gsfc_DonutsPlain3 ,Ggc_DryDryDesert ,G3ds_PackunSlider ,Gds_TickTockClock ,G64_YoshiValley ,Gds_WarioStadium ,G64_RainbowRoad ,Du_Metro ,Du_MuteCity ,Du_DragonRoad ,Du_Hyrule ,Du_Animal_Summer ,Du_ExciteBike ,Du_Woods ,Du_IcePark ,Dgc_YoshiCircuit ,Dwii_WariosMine ,Dsfc_RainbowRoad ,Dagb_RibbonRoad ,D3ds_NeoBowserCity ,Dgc_BabyPark ,Dagb_CheeseLand ,Du_BigBlue ,Du_Animal_Spring ,Du_Animal_Autumn ,Du_Animal_Winter ,UnderConstruction20 ,UnderConstruction21 ,UnderConstruction22 ,UnderConstruction23 ,UnderConstruction24 ,UnderConstruction25 ,UnderConstruction26 ,UnderConstruction27 ,UnderConstruction28 ,UnderConstruction29 ,UnderConstruction30 ,UnderConstruction31 ,UnderConstruction32" \ No newline at end of file diff --git a/Modifications/MarioKart8_TheVoid/rules.txt b/Modifications/MarioKart8_TheVoid/rules.txt deleted file mode 100644 index 3074d638..00000000 --- a/Modifications/MarioKart8_TheVoid/rules.txt +++ /dev/null @@ -1,4 +0,0 @@ -[Definition] -titleIds = 000500001010ec00,000500001010ed00,000500001010eb00 -name = "Mario Kart 8 - The Void" -version = 2 \ No newline at end of file From 600e35054a485f592e790dbdf330d6fccbe4102d Mon Sep 17 00:00:00 2001 From: NAVras-Z Date: Sun, 5 Nov 2017 16:47:50 +0800 Subject: [PATCH 05/34] [BotW] minor bugfix for blurs h horizontal X v vertical Y --- .../BreathOfTheWild/0b9b8f5dfa16ad58_0000000000000000_vs.txt | 2 +- .../BreathOfTheWild/0d6127fbed646d2b_0000000000000000_vs.txt | 2 +- .../BreathOfTheWild/5c1761d13feccdff_0000000000000000_vs.txt | 2 +- .../BreathOfTheWild/81eb264a750163d9_0000000000000000_vs.txt | 2 +- .../BreathOfTheWild/8cab2ed476b991ea_0000000000000000_vs.txt | 4 ++-- .../BreathOfTheWild/ea9a49a6185cf1e5_0000000000000000_vs.txt | 4 ++-- .../BreathOfTheWild/f69e84515ae56e70_0000000000000000_vs.txt | 2 +- .../BreathOfTheWild/fc3e63a2007625f8_0000000000000000_vs.txt | 4 ++-- 8 files changed, 11 insertions(+), 11 deletions(-) diff --git a/Source/BreathOfTheWild/0b9b8f5dfa16ad58_0000000000000000_vs.txt b/Source/BreathOfTheWild/0b9b8f5dfa16ad58_0000000000000000_vs.txt index 0095ee57..3c03f763 100644 --- a/Source/BreathOfTheWild/0b9b8f5dfa16ad58_0000000000000000_vs.txt +++ b/Source/BreathOfTheWild/0b9b8f5dfa16ad58_0000000000000000_vs.txt @@ -10,7 +10,7 @@ $scaleFactorY = always_decimal_format($fullHeight / 720.0); #extension GL_ARB_shading_language_packing : enable // shader 0b9b8f5dfa16ad58 // Fixed radius blur -// main menu v +// main menu h const float resXScale = ; const float resYScale = ; diff --git a/Source/BreathOfTheWild/0d6127fbed646d2b_0000000000000000_vs.txt b/Source/BreathOfTheWild/0d6127fbed646d2b_0000000000000000_vs.txt index 6757b2c9..cac4d263 100644 --- a/Source/BreathOfTheWild/0d6127fbed646d2b_0000000000000000_vs.txt +++ b/Source/BreathOfTheWild/0d6127fbed646d2b_0000000000000000_vs.txt @@ -129,7 +129,7 @@ PV0i.w = floatBitsToInt(intBitsToFloat(PV0i.w) / 2.0); R125i.z = floatBitsToInt(intBitsToFloat(R1i.w) + -(0.5)); PS0i = R125i.z; // 1 -R123i.x = floatBitsToInt((intBitsToFloat(uf_remappedVS[3].w) * 2.0 / resXScale + intBitsToFloat(PV0i.y))); +R123i.x = floatBitsToInt((intBitsToFloat(uf_remappedVS[3].w) * 2.0 / resYScale + intBitsToFloat(PV0i.y))); PV1i.x = R123i.x; R126i.y = floatBitsToInt(-(intBitsToFloat(uf_remappedVS[4].x))); R126i.y = floatBitsToInt(intBitsToFloat(R126i.y) * 2.0); diff --git a/Source/BreathOfTheWild/5c1761d13feccdff_0000000000000000_vs.txt b/Source/BreathOfTheWild/5c1761d13feccdff_0000000000000000_vs.txt index c048bd48..e16f6c6b 100644 --- a/Source/BreathOfTheWild/5c1761d13feccdff_0000000000000000_vs.txt +++ b/Source/BreathOfTheWild/5c1761d13feccdff_0000000000000000_vs.txt @@ -73,7 +73,7 @@ PS0f = R2f.x + -(intBitsToFloat(uf_remappedVS[0].x)/resXScale); backupReg0f = R2f.y; backupReg1f = R2f.x; PV1f.x = R2f.y + -(intBitsToFloat(uf_remappedVS[0].y)/resYScale); -R2f.y = backupReg0f + intBitsToFloat(uf_remappedVS[0].y)/resXScale; +R2f.y = backupReg0f + intBitsToFloat(uf_remappedVS[0].y)/resYScale; R2f.z = PS0f; R2f.x = backupReg1f + intBitsToFloat(uf_remappedVS[0].x)/resXScale; PS1f = R2f.x; diff --git a/Source/BreathOfTheWild/81eb264a750163d9_0000000000000000_vs.txt b/Source/BreathOfTheWild/81eb264a750163d9_0000000000000000_vs.txt index 59f1ebe7..8f4c085f 100644 --- a/Source/BreathOfTheWild/81eb264a750163d9_0000000000000000_vs.txt +++ b/Source/BreathOfTheWild/81eb264a750163d9_0000000000000000_vs.txt @@ -10,7 +10,7 @@ $scaleFactorY = always_decimal_format($fullHeight / 720.0); #extension GL_ARB_shading_language_packing : enable // shader 81eb264a750163d9 // Fixed radius blur -// volumetric light blur h +// volumetric light blur v const float resXScale = ; const float resYScale = ; diff --git a/Source/BreathOfTheWild/8cab2ed476b991ea_0000000000000000_vs.txt b/Source/BreathOfTheWild/8cab2ed476b991ea_0000000000000000_vs.txt index 72ecfa3b..8c436eb4 100644 --- a/Source/BreathOfTheWild/8cab2ed476b991ea_0000000000000000_vs.txt +++ b/Source/BreathOfTheWild/8cab2ed476b991ea_0000000000000000_vs.txt @@ -73,9 +73,9 @@ PV0f.w = R0f.w; R0f.y = R2f.y; PS0f = R0f.y; // 1 -PV1f.x = -(intBitsToFloat(uf_remappedVS[0].w)/resXScale); +PV1f.x = -(intBitsToFloat(uf_remappedVS[0].w)/resYScale); PV1f.x /= 2.0; -PV1f.y = -(intBitsToFloat(uf_remappedVS[0].z)/resYScale); +PV1f.y = -(intBitsToFloat(uf_remappedVS[0].z)/resXScale); PV1f.y /= 2.0; R2f.x = (mul_nonIEEE(PV0f.w,intBitsToFloat(uf_remappedVS[0].x)*resXScale) + 0.5); PS1f = R2f.x; diff --git a/Source/BreathOfTheWild/ea9a49a6185cf1e5_0000000000000000_vs.txt b/Source/BreathOfTheWild/ea9a49a6185cf1e5_0000000000000000_vs.txt index 4b002066..75abc69e 100644 --- a/Source/BreathOfTheWild/ea9a49a6185cf1e5_0000000000000000_vs.txt +++ b/Source/BreathOfTheWild/ea9a49a6185cf1e5_0000000000000000_vs.txt @@ -85,9 +85,9 @@ PV0f.w = R127f.w; R127f.x = PV1f.x * 1.0; PS0f = R127f.x; // 3 -R126f.x = (intBitsToFloat(uf_remappedVS[0].y) * 2.0 / resXScale + PV0f.w); +R126f.x = (intBitsToFloat(uf_remappedVS[0].y) * 2.0 / resYScale + PV0f.w); R0f.y = PV0f.z + 0.5; -R123f.z = (intBitsToFloat(uf_remappedVS[0].x) * 2.0 / resYScale + PV0f.y); +R123f.z = (intBitsToFloat(uf_remappedVS[0].x) * 2.0 / resXScale + PV0f.y); PV1f.z = R123f.z; PV1f.w = PV0f.w; R0f.x = PV0f.x + 0.5; diff --git a/Source/BreathOfTheWild/f69e84515ae56e70_0000000000000000_vs.txt b/Source/BreathOfTheWild/f69e84515ae56e70_0000000000000000_vs.txt index 033b3445..9b23500b 100644 --- a/Source/BreathOfTheWild/f69e84515ae56e70_0000000000000000_vs.txt +++ b/Source/BreathOfTheWild/f69e84515ae56e70_0000000000000000_vs.txt @@ -10,7 +10,7 @@ $scaleFactorY = always_decimal_format($fullHeight / 720.0); #extension GL_ARB_shading_language_packing : enable // shader f69e84515ae56e70 // Fixed radius blur -// bloom blur h +// bloom blur v const float resXScale = ; const float resYScale = ; diff --git a/Source/BreathOfTheWild/fc3e63a2007625f8_0000000000000000_vs.txt b/Source/BreathOfTheWild/fc3e63a2007625f8_0000000000000000_vs.txt index b62d6012..b55ca267 100644 --- a/Source/BreathOfTheWild/fc3e63a2007625f8_0000000000000000_vs.txt +++ b/Source/BreathOfTheWild/fc3e63a2007625f8_0000000000000000_vs.txt @@ -10,7 +10,7 @@ $scaleFactorY = always_decimal_format($fullHeight / 720.0); #extension GL_ARB_shading_language_packing : enable // shader fc3e63a2007625f8 // Fixed radius blur -// main menu h +// main menu v const float resXScale = ; const float resYScale = ; @@ -63,7 +63,7 @@ R126f.z = (0.0 > R1f.x)?1.0:0.0; R126f.z /= 2.0; R127f.w = 1.0; PV0f.w = R127f.w; -R126f.x = intBitsToFloat(uf_remappedVS[0].w) / resXScale * intBitsToFloat(0x3fae8a72); +R126f.x = intBitsToFloat(uf_remappedVS[0].w) / resYScale * intBitsToFloat(0x3fae8a72); PS0f = R126f.x; // 1 R0f.x = dot(vec4(R1f.x,R1f.y,R1f.z,PV0f.w),vec4(intBitsToFloat(uf_remappedVS[1].x),intBitsToFloat(uf_remappedVS[1].y),intBitsToFloat(uf_remappedVS[1].z),intBitsToFloat(uf_remappedVS[1].w))); From ed34a8efc34f6b21117e10f1767535d680eef108 Mon Sep 17 00:00:00 2001 From: Crementif Date: Sun, 5 Nov 2017 22:42:04 +0100 Subject: [PATCH 06/34] Added CleanCameraRune Pack Check the documentation out in this graphic pack for the customizability. --- .../156a8a37bc669fec_0000000000001e49_ps.txt | 102 ++ .../5431383136d7b11b_0000000000000000_vs.txt | 1421 +++++++++++++++++ .../156a8a37bc669fec_0000000000001e49_ps.txt | 102 ++ .../5431383136d7b11b_0000000000000000_vs.txt | 1421 +++++++++++++++++ .../cb83a22cf0961e1a_000000000000007d_ps.txt | 93 ++ .../569ebe93f1ae5799_0000000000000079_ps.txt | 43 + .../156a8a37bc669fec_0000000000001e49_ps.txt | 102 ++ .../2d0ed5b8778b1709_0000000000000000_vs.txt | 1209 ++++++++++++++ .../5431383136d7b11b_0000000000000000_vs.txt | 1421 +++++++++++++++++ .../569ebe93f1ae5799_0000000000000079_ps.txt | 43 + .../7751959c9083eebb_000000000000007d_ps.txt | 82 + .../a15e2a77cef4c5e3_000000000000007d_ps.txt | 84 + .../cb83a22cf0961e1a_000000000000007d_ps.txt | 93 ++ .../ededcf8bdc3384ef_0000000000000079_ps.txt | 56 + .../Presets/preset-minimal.png | Bin 0 -> 1211145 bytes .../Presets/preset-photo.png | Bin 0 -> 581174 bytes .../cb83a22cf0961e1a_000000000000007d_ps.txt | 93 ++ .../BreathOfTheWild_CleanCameraRune/rules.txt | 42 + 18 files changed, 6407 insertions(+) create mode 100644 Enhancement/BreathOfTheWild_CleanCameraRune/156a8a37bc669fec_0000000000001e49_ps.txt create mode 100644 Enhancement/BreathOfTheWild_CleanCameraRune/5431383136d7b11b_0000000000000000_vs.txt create mode 100644 Enhancement/BreathOfTheWild_CleanCameraRune/Presets/Minimal-Preset/156a8a37bc669fec_0000000000001e49_ps.txt create mode 100644 Enhancement/BreathOfTheWild_CleanCameraRune/Presets/Minimal-Preset/5431383136d7b11b_0000000000000000_vs.txt create mode 100644 Enhancement/BreathOfTheWild_CleanCameraRune/Presets/Minimal-Preset/cb83a22cf0961e1a_000000000000007d_ps.txt create mode 100644 Enhancement/BreathOfTheWild_CleanCameraRune/Presets/Not Usable/569ebe93f1ae5799_0000000000000079_ps.txt create mode 100644 Enhancement/BreathOfTheWild_CleanCameraRune/Presets/Photo-Preset/156a8a37bc669fec_0000000000001e49_ps.txt create mode 100644 Enhancement/BreathOfTheWild_CleanCameraRune/Presets/Photo-Preset/2d0ed5b8778b1709_0000000000000000_vs.txt create mode 100644 Enhancement/BreathOfTheWild_CleanCameraRune/Presets/Photo-Preset/5431383136d7b11b_0000000000000000_vs.txt create mode 100644 Enhancement/BreathOfTheWild_CleanCameraRune/Presets/Photo-Preset/569ebe93f1ae5799_0000000000000079_ps.txt create mode 100644 Enhancement/BreathOfTheWild_CleanCameraRune/Presets/Photo-Preset/7751959c9083eebb_000000000000007d_ps.txt create mode 100644 Enhancement/BreathOfTheWild_CleanCameraRune/Presets/Photo-Preset/a15e2a77cef4c5e3_000000000000007d_ps.txt create mode 100644 Enhancement/BreathOfTheWild_CleanCameraRune/Presets/Photo-Preset/cb83a22cf0961e1a_000000000000007d_ps.txt create mode 100644 Enhancement/BreathOfTheWild_CleanCameraRune/Presets/Photo-Preset/ededcf8bdc3384ef_0000000000000079_ps.txt create mode 100644 Enhancement/BreathOfTheWild_CleanCameraRune/Presets/preset-minimal.png create mode 100644 Enhancement/BreathOfTheWild_CleanCameraRune/Presets/preset-photo.png create mode 100644 Enhancement/BreathOfTheWild_CleanCameraRune/cb83a22cf0961e1a_000000000000007d_ps.txt create mode 100644 Enhancement/BreathOfTheWild_CleanCameraRune/rules.txt diff --git a/Enhancement/BreathOfTheWild_CleanCameraRune/156a8a37bc669fec_0000000000001e49_ps.txt b/Enhancement/BreathOfTheWild_CleanCameraRune/156a8a37bc669fec_0000000000001e49_ps.txt new file mode 100644 index 00000000..5e79235e --- /dev/null +++ b/Enhancement/BreathOfTheWild_CleanCameraRune/156a8a37bc669fec_0000000000001e49_ps.txt @@ -0,0 +1,102 @@ +#version 420 +#extension GL_ARB_texture_gather : enable +// shader 156a8a37bc669fec +// Used for: Black transparent tint edge +uniform ivec4 uf_remappedPS[5]; +layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0x22456000 res 128x128x1 dim 1 tm: 4 format 0035 compSel: 0 0 0 1 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 0 0 2 border: 0 +layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0x22572000 res 256x256x1 dim 1 tm: 4 format 0034 compSel: 0 0 0 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 1 1 2 border: 0 +layout(binding = 2) uniform sampler2D textureUnitPS2;// Tex2 addr 0x23c69000 res 128x128x1 dim 1 tm: 4 format 0034 compSel: 5 5 5 0 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler2 ClampX/Y/Z: 2 2 2 border: 0 +layout(location = 0) in vec4 passParameterSem1; +layout(location = 1) in vec4 passParameterSem0; +layout(location = 2) in vec4 passParameterSem2; +layout(location = 0) out vec4 passPixelColor0; +uniform vec2 uf_fragCoordScale; +int clampFI32(int v) +{ +if( v == 0x7FFFFFFF ) + return floatBitsToInt(1.0); +else if( v == 0xFFFFFFFF ) + return floatBitsToInt(0.0); +return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); +} +float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } +void main() +{ +ivec4 R0i = ivec4(0); +ivec4 R1i = ivec4(0); +ivec4 R2i = ivec4(0); +ivec4 R3i = ivec4(0); +ivec4 R4i = ivec4(0); +ivec4 R123i = ivec4(0); +ivec4 R127i = ivec4(0); +int backupReg0i, backupReg1i, backupReg2i, backupReg3i, backupReg4i; +ivec4 PV0i = ivec4(0), PV1i = ivec4(0); +int PS0i = 0, PS1i = 0; +ivec4 tempi = ivec4(0); +float tempResultf; +int tempResulti; +ivec4 ARi = ivec4(0); +bool predResult = true; +vec3 cubeMapSTM; +int cubeMapFaceId; +R0i = floatBitsToInt(passParameterSem1); +R1i = floatBitsToInt(passParameterSem0); +R2i = floatBitsToInt(passParameterSem2); +R0i.xyzw = floatBitsToInt(texture(textureUnitPS1, intBitsToFloat(R0i.xy)).xyzw); +R4i.xyzw = floatBitsToInt(texture(textureUnitPS2, intBitsToFloat(R2i.xy)).xyzw); +// 0 +R3i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.x), intBitsToFloat(R4i.w))); +R3i.y = floatBitsToInt(-(intBitsToFloat(R4i.w)) + 1.0); +R3i.z = uf_remappedPS[0].x & 0x00008000; +R127i.w = 0x3f800000; +PV0i.w = R127i.w; +R1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.y), intBitsToFloat(R4i.w))); +PS0i = R1i.w; +// 1 +backupReg0i = R0i.x; +backupReg1i = R0i.y; +backupReg2i = R0i.z; +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),intBitsToFloat(backupReg2i),intBitsToFloat(PV0i.w)),vec4(intBitsToFloat(uf_remappedPS[1].x),intBitsToFloat(uf_remappedPS[1].y),intBitsToFloat(uf_remappedPS[1].z),intBitsToFloat(uf_remappedPS[1].w)))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.z), intBitsToFloat(R4i.w))); +PS1i = R1i.z; +// 2 +backupReg0i = R0i.x; +backupReg1i = R0i.y; +backupReg2i = R0i.z; +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),intBitsToFloat(backupReg2i),intBitsToFloat(R127i.w)),vec4(intBitsToFloat(uf_remappedPS[2].x),intBitsToFloat(uf_remappedPS[2].y),intBitsToFloat(uf_remappedPS[2].z),intBitsToFloat(uf_remappedPS[2].w)))); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +R2i.x = floatBitsToInt(intBitsToFloat(R1i.x) + intBitsToFloat(PV1i.x)); +PS0i = R2i.x; +// 3 +R2i.y = floatBitsToInt(intBitsToFloat(R1i.y) + intBitsToFloat(PV0i.x)); +R2i.xyzw = floatBitsToInt(texture(textureUnitPS0, intBitsToFloat(R2i.xy)).xyzw); +// 0 +backupReg0i = R0i.w; +R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.y),intBitsToFloat(R3i.y)) + intBitsToFloat(R1i.w))); +PV0i.x = R123i.x; +R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.x),intBitsToFloat(R3i.y)) + intBitsToFloat(R3i.x))); +PV0i.y = R123i.y; +R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.z),intBitsToFloat(R3i.y)) + intBitsToFloat(R1i.z))); +PV0i.w = floatBitsToInt(min(intBitsToFloat(backupReg0i), intBitsToFloat(R2i.w))); +// 1 +R4i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.y),intBitsToFloat(uf_remappedPS[3].x)) + intBitsToFloat(uf_remappedPS[4].x))); +PV1i.y = floatBitsToInt(min(intBitsToFloat(PV0i.w), intBitsToFloat(R4i.w))); +PV1i.z = floatBitsToInt(max(intBitsToFloat(PV0i.w), intBitsToFloat(R4i.w))); +R4i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),intBitsToFloat(uf_remappedPS[3].y)) + intBitsToFloat(uf_remappedPS[4].y))); +PS1i = R4i.y; +// 2 +R123i.x = ((R3i.z == 0)?(PV1i.z):(PV1i.y)); +PV0i.x = R123i.x; +R4i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(uf_remappedPS[3].z)) + intBitsToFloat(uf_remappedPS[4].z))); +// 3 +R4i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),intBitsToFloat(uf_remappedPS[3].w)) + intBitsToFloat(uf_remappedPS[4].w))); +// export +passPixelColor0 = vec4(intBitsToFloat(R4i.x), intBitsToFloat(R4i.y), intBitsToFloat(R4i.z), 0.0); +} diff --git a/Enhancement/BreathOfTheWild_CleanCameraRune/5431383136d7b11b_0000000000000000_vs.txt b/Enhancement/BreathOfTheWild_CleanCameraRune/5431383136d7b11b_0000000000000000_vs.txt new file mode 100644 index 00000000..f3a6d204 --- /dev/null +++ b/Enhancement/BreathOfTheWild_CleanCameraRune/5431383136d7b11b_0000000000000000_vs.txt @@ -0,0 +1,1421 @@ +#version 420 +#extension GL_ARB_texture_gather : enable +#extension GL_ARB_shading_language_packing : enable +// shader 5431383136d7b11b +// Used for: Main Lines +uniform ivec4 uf_uniformRegisterVS[256]; +uniform vec2 uf_windowSpaceToClipSpaceTransform; +layout(location = 0) in uvec4 attrDataSem0; +out gl_PerVertex +{ + vec4 gl_Position; + float gl_PointSize; +}; +layout(location = 0) out vec4 passParameterSem0; +layout(location = 2) out vec4 passParameterSem1; +layout(location = 1) out vec4 passParameterSem2; +layout(location = 3) out vec4 passParameterSem3; +int clampFI32(int v) +{ +if( v == 0x7FFFFFFF ) + return floatBitsToInt(1.0); +else if( v == 0xFFFFFFFF ) + return floatBitsToInt(0.0); +return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); +} +float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } +void main() +{ +ivec4 R0i = ivec4(0); +ivec4 R1i = ivec4(0); +ivec4 R2i = ivec4(0); +ivec4 R3i = ivec4(0); +ivec4 R4i = ivec4(0); +ivec4 R5i = ivec4(0); +ivec4 R6i = ivec4(0); +ivec4 R7i = ivec4(0); +ivec4 R8i = ivec4(0); +ivec4 R9i = ivec4(0); +ivec4 R122i = ivec4(0); +ivec4 R123i = ivec4(0); +ivec4 R124i = ivec4(0); +ivec4 R125i = ivec4(0); +ivec4 R126i = ivec4(0); +ivec4 R127i = ivec4(0); +uvec4 attrDecoder; +int backupReg0i, backupReg1i, backupReg2i, backupReg3i, backupReg4i; +ivec4 PV0i = ivec4(0), PV1i = ivec4(0); +int PS0i = 0, PS1i = 0; +ivec4 tempi = ivec4(0); +float tempResultf; +int tempResulti; +ivec4 ARi = ivec4(0); +bool predResult = true; +bool activeMaskStack[14]; +bool activeMaskStackC[15]; +activeMaskStack[0] = false; +activeMaskStack[1] = false; +activeMaskStack[2] = false; +activeMaskStack[3] = false; +activeMaskStack[4] = false; +activeMaskStack[5] = false; +activeMaskStack[6] = false; +activeMaskStack[7] = false; +activeMaskStack[8] = false; +activeMaskStack[9] = false; +activeMaskStack[10] = false; +activeMaskStack[11] = false; +activeMaskStack[12] = false; +activeMaskStackC[0] = false; +activeMaskStackC[1] = false; +activeMaskStackC[2] = false; +activeMaskStackC[3] = false; +activeMaskStackC[4] = false; +activeMaskStackC[5] = false; +activeMaskStackC[6] = false; +activeMaskStackC[7] = false; +activeMaskStackC[8] = false; +activeMaskStackC[9] = false; +activeMaskStackC[10] = false; +activeMaskStackC[11] = false; +activeMaskStackC[12] = false; +activeMaskStackC[13] = false; +activeMaskStack[0] = true; +activeMaskStackC[0] = true; +activeMaskStackC[1] = true; +vec3 cubeMapSTM; +int cubeMapFaceId; +R0i = ivec4(gl_VertexID, 0, 0, gl_InstanceID); +attrDecoder.xy = attrDataSem0.xy; +attrDecoder.xy = (attrDecoder.xy>>24)|((attrDecoder.xy>>8)&0xFF00)|((attrDecoder.xy<<8)&0xFF0000)|((attrDecoder.xy<<24)); +attrDecoder.z = 0; +attrDecoder.w = 0; +R1i = ivec4(int(attrDecoder.x), int(attrDecoder.y), floatBitsToInt(0.0), floatBitsToInt(1.0)); +if( activeMaskStackC[1] == true ) { +activeMaskStack[1] = activeMaskStack[0]; +activeMaskStackC[2] = activeMaskStackC[1]; +// 0 +PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), intBitsToFloat(uf_uniformRegisterVS[19].x))); +R0i.y = floatBitsToInt(-(intBitsToFloat(R1i.y))); +PV0i.y = R0i.y; +R1i.z = 0; +R1i.w = 0x3f800000; +R127i.w = floatBitsToInt(1.0); +PS0i = R127i.w; +// 1 +R0i.x = floatBitsToInt(intBitsToFloat(PV0i.x) + intBitsToFloat(uf_uniformRegisterVS[19].z)); +PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(uf_uniformRegisterVS[19].y))); +// 2 +R0i.y = floatBitsToInt(intBitsToFloat(PV1i.z) + intBitsToFloat(uf_uniformRegisterVS[19].w)); +PV0i.y = R0i.y; +R0i.w = uf_uniformRegisterVS[2].x & 0x40000000; +// 3 +R127i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(R1i.z),intBitsToFloat(R1i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[4].x),intBitsToFloat(uf_uniformRegisterVS[4].y),intBitsToFloat(uf_uniformRegisterVS[4].z),intBitsToFloat(uf_uniformRegisterVS[4].w)))); +PV1i.x = R127i.x; +PV1i.y = R127i.x; +PV1i.z = R127i.x; +PV1i.w = R127i.x; +// 4 +backupReg0i = R0i.x; +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(R0i.y),intBitsToFloat(R1i.z),intBitsToFloat(R1i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[5].x),intBitsToFloat(uf_uniformRegisterVS[5].y),intBitsToFloat(uf_uniformRegisterVS[5].z),intBitsToFloat(uf_uniformRegisterVS[5].w)))); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +R127i.y = tempi.x; +// 5 +backupReg0i = R0i.x; +backupReg1i = R0i.y; +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),intBitsToFloat(R1i.z),intBitsToFloat(R1i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[6].x),intBitsToFloat(uf_uniformRegisterVS[6].y),intBitsToFloat(uf_uniformRegisterVS[6].z),intBitsToFloat(uf_uniformRegisterVS[6].w)))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R127i.z = tempi.x; +// 6 +R4i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R127i.x),intBitsToFloat(R127i.y),intBitsToFloat(PV1i.x),intBitsToFloat(R127i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[8].x),intBitsToFloat(uf_uniformRegisterVS[8].y),intBitsToFloat(uf_uniformRegisterVS[8].z),intBitsToFloat(uf_uniformRegisterVS[8].w)))); +PV0i.x = R4i.x; +PV0i.y = R4i.x; +PV0i.z = R4i.x; +PV0i.w = R4i.x; +// 7 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R127i.x),intBitsToFloat(R127i.y),intBitsToFloat(R127i.z),intBitsToFloat(R127i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[9].x),intBitsToFloat(uf_uniformRegisterVS[9].y),intBitsToFloat(uf_uniformRegisterVS[9].z),intBitsToFloat(uf_uniformRegisterVS[9].w)))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R4i.y = tempi.x; +// 8 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R127i.x),intBitsToFloat(R127i.y),intBitsToFloat(R127i.z),intBitsToFloat(R127i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[10].x),intBitsToFloat(uf_uniformRegisterVS[10].y),intBitsToFloat(uf_uniformRegisterVS[10].z),intBitsToFloat(uf_uniformRegisterVS[10].w)))); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +R4i.z = tempi.x; +// 9 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R127i.x),intBitsToFloat(R127i.y),intBitsToFloat(R127i.z),intBitsToFloat(R127i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[11].x),intBitsToFloat(uf_uniformRegisterVS[11].y),intBitsToFloat(uf_uniformRegisterVS[11].z),intBitsToFloat(uf_uniformRegisterVS[11].w)))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R4i.w = tempi.x; +// 10 +R2i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_uniformRegisterVS[19].x), intBitsToFloat(uf_uniformRegisterVS[12].x))); +R2i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_uniformRegisterVS[19].y), intBitsToFloat(uf_uniformRegisterVS[12].y))); +R3i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_uniformRegisterVS[19].x), intBitsToFloat(uf_uniformRegisterVS[12].y))); +PS0i = R3i.x; +// 11 +R3i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_uniformRegisterVS[19].y), intBitsToFloat(uf_uniformRegisterVS[12].x))); +// 12 +predResult = (0 != R0i.w); +activeMaskStack[1] = predResult; +activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; +} +else { +activeMaskStack[1] = false; +activeMaskStackC[2] = false; +} +if( activeMaskStackC[2] == true ) { +activeMaskStack[2] = activeMaskStack[1]; +activeMaskStackC[3] = activeMaskStackC[2]; +// 0 +R0i.z = uf_uniformRegisterVS[2].x & 0x00000002; +// 1 +predResult = (0 != R0i.z); +activeMaskStack[2] = predResult; +activeMaskStackC[3] = predResult == true && activeMaskStackC[2] == true; +} +else { +activeMaskStack[2] = false; +activeMaskStackC[3] = false; +} +if( activeMaskStackC[3] == true ) { +// 0 +backupReg0i = R1i.y; +R1i.y = backupReg0i; +PV0i.y = R1i.y; +R0i.z = 0; +PV0i.z = R0i.z; +R0i.w = 0x3f800000; +PV0i.w = R0i.w; +// 1 +R6i.xyz = ivec3(R1i.x,PV0i.y,PV0i.z); +PV1i.x = R6i.x; +PV1i.y = R6i.y; +PV1i.z = R6i.z; +R6i.w = PV0i.w; +PV1i.w = R6i.w; +// 2 +R7i.xyz = ivec3(PV1i.x,PV1i.y,PV1i.z); +PV0i.x = R7i.x; +PV0i.y = R7i.y; +PV0i.z = R7i.z; +R7i.w = PV1i.w; +PV0i.w = R7i.w; +// 3 +R5i.xyz = ivec3(PV0i.x,PV0i.y,PV0i.z); +R5i.w = PV0i.w; +} +activeMaskStack[2] = activeMaskStack[2] == false; +activeMaskStackC[3] = activeMaskStack[2] == true && activeMaskStackC[2] == true; +if( activeMaskStackC[3] == true ) { +// 0 +PS0i = int(intBitsToFloat(R1i.y)); +// 1 +PV1i.x = PS0i << int(1); +PS1i = int(intBitsToFloat(R1i.x)); +// 2 +R124i.z = PV1i.x + PS1i; +PV0i.z = R124i.z; +// 3 +R127i.x = (PV0i.z == 0x00000002)?int(0xFFFFFFFF):int(0x0); +PV1i.x = R127i.x; +R127i.y = (PV0i.z == 0x00000002)?int(0xFFFFFFFF):int(0x0); +R127i.z = (PV0i.z == 0x00000002)?int(0xFFFFFFFF):int(0x0); +R126i.w = (PV0i.z == int(1))?int(0xFFFFFFFF):int(0x0); +R124i.w = (PV0i.z == int(1))?int(0xFFFFFFFF):int(0x0); +PS1i = R124i.w; +// 4 +R124i.y = (R124i.z == int(1))?int(0xFFFFFFFF):int(0x0); +R126i.z = ((PV1i.x == 0)?(uf_uniformRegisterVS[27].y):(uf_uniformRegisterVS[26].y)); +R127i.w = ((PV1i.x == 0)?(uf_uniformRegisterVS[27].x):(uf_uniformRegisterVS[26].x)); +// 5 +backupReg0i = R127i.x; +backupReg0i = R127i.x; +R127i.x = ((backupReg0i == 0)?(uf_uniformRegisterVS[27].w):(uf_uniformRegisterVS[26].w)); +R126i.y = ((backupReg0i == 0)?(uf_uniformRegisterVS[27].z):(uf_uniformRegisterVS[26].z)); +// 6 +R126i.x = ((R127i.z == 0)?(uf_uniformRegisterVS[31].y):(uf_uniformRegisterVS[30].y)); +R125i.y = ((R127i.z == 0)?(uf_uniformRegisterVS[31].x):(uf_uniformRegisterVS[30].x)); +// 7 +backupReg0i = R127i.z; +backupReg0i = R127i.z; +R127i.z = ((backupReg0i == 0)?(uf_uniformRegisterVS[31].w):(uf_uniformRegisterVS[30].w)); +R125i.w = ((backupReg0i == 0)?(uf_uniformRegisterVS[31].z):(uf_uniformRegisterVS[30].z)); +// 8 +R125i.z = ((R127i.y == 0)?(uf_uniformRegisterVS[35].y):(uf_uniformRegisterVS[34].y)); +R0i.w = ((R127i.y == 0)?(uf_uniformRegisterVS[35].x):(uf_uniformRegisterVS[34].x)); +// 9 +backupReg0i = R127i.y; +R125i.x = ((R127i.y == 0)?(uf_uniformRegisterVS[35].w):(uf_uniformRegisterVS[34].w)); +R127i.y = ((backupReg0i == 0)?(uf_uniformRegisterVS[35].z):(uf_uniformRegisterVS[34].z)); +// 10 +backupReg0i = R127i.x; +backupReg1i = R126i.y; +backupReg2i = R126i.z; +backupReg3i = R127i.w; +R127i.x = ((R126i.w == 0)?(backupReg0i):(uf_uniformRegisterVS[25].w)); +R126i.y = ((R126i.w == 0)?(backupReg1i):(uf_uniformRegisterVS[25].z)); +R126i.z = ((R126i.w == 0)?(backupReg2i):(uf_uniformRegisterVS[25].y)); +R127i.w = ((R126i.w == 0)?(backupReg3i):(uf_uniformRegisterVS[25].x)); +// 11 +backupReg0i = R126i.x; +backupReg1i = R125i.y; +backupReg2i = R127i.z; +backupReg3i = R125i.w; +R126i.x = ((R124i.w == 0)?(backupReg0i):(uf_uniformRegisterVS[29].y)); +R125i.y = ((R124i.w == 0)?(backupReg1i):(uf_uniformRegisterVS[29].x)); +R127i.z = ((R124i.w == 0)?(backupReg2i):(uf_uniformRegisterVS[29].w)); +R125i.w = ((R124i.w == 0)?(backupReg3i):(uf_uniformRegisterVS[29].z)); +// 12 +backupReg0i = R125i.x; +backupReg1i = R127i.y; +backupReg2i = R125i.z; +R125i.x = ((R124i.y == 0)?(backupReg0i):(uf_uniformRegisterVS[33].w)); +R127i.y = ((R124i.y == 0)?(backupReg1i):(uf_uniformRegisterVS[33].z)); +R125i.z = ((R124i.y == 0)?(backupReg2i):(uf_uniformRegisterVS[33].y)); +R124i.w = ((R124i.y == 0)?(R0i.w):(uf_uniformRegisterVS[33].x)); +// 13 +R6i.x = ((R124i.z == 0)?(uf_uniformRegisterVS[24].x):(R127i.w)); +R6i.y = ((R124i.z == 0)?(uf_uniformRegisterVS[24].y):(R126i.z)); +R6i.z = ((R124i.z == 0)?(uf_uniformRegisterVS[24].z):(R126i.y)); +R6i.w = ((R124i.z == 0)?(uf_uniformRegisterVS[24].w):(R127i.x)); +// 14 +R7i.x = ((R124i.z == 0)?(uf_uniformRegisterVS[28].x):(R125i.y)); +R7i.y = ((R124i.z == 0)?(uf_uniformRegisterVS[28].y):(R126i.x)); +R7i.z = ((R124i.z == 0)?(uf_uniformRegisterVS[28].z):(R125i.w)); +R7i.w = ((R124i.z == 0)?(uf_uniformRegisterVS[28].w):(R127i.z)); +// 15 +R5i.x = ((R124i.z == 0)?(uf_uniformRegisterVS[32].x):(R124i.w)); +R5i.y = ((R124i.z == 0)?(uf_uniformRegisterVS[32].y):(R125i.z)); +R5i.z = ((R124i.z == 0)?(uf_uniformRegisterVS[32].z):(R127i.y)); +R5i.w = ((R124i.z == 0)?(uf_uniformRegisterVS[32].w):(R125i.x)); +} +activeMaskStackC[2] = activeMaskStack[1] == true && activeMaskStackC[1] == true; +if( activeMaskStackC[2] == true ) { +// 0 +R8i.xyz = ivec3(0x437f0000,0x437f0000,0x437f0000); +R8i.w = 0x437f0000; +} +activeMaskStack[1] = activeMaskStack[1] == false; +activeMaskStackC[2] = activeMaskStack[1] == true && activeMaskStackC[1] == true; +if( activeMaskStackC[2] == true ) { +activeMaskStack[2] = activeMaskStack[1]; +activeMaskStackC[3] = activeMaskStackC[2]; +// 0 +PV0i.x = uf_uniformRegisterVS[2].x >> 0x00000008; +R5i.y = uf_uniformRegisterVS[2].x & 0x00000002; +// 1 +R0i.z = PV0i.x & 0x0000000f; +// 2 +predResult = (0 != R5i.y); +activeMaskStack[2] = predResult; +activeMaskStackC[3] = predResult == true && activeMaskStackC[2] == true; +} +else { +activeMaskStack[2] = false; +activeMaskStackC[3] = false; +} +if( activeMaskStackC[3] == true ) { +activeMaskStack[3] = activeMaskStack[2]; +activeMaskStackC[4] = activeMaskStackC[3]; +// 0 +R6i.y = R1i.y; +R3i.z = 0; +R0i.w = 0x3f800000; +PS0i = floatBitsToInt(1.0 / intBitsToFloat(uf_uniformRegisterVS[7].x)); +// 1 +R5i.x = floatBitsToInt(intBitsToFloat(PS0i) * intBitsToFloat(uf_uniformRegisterVS[1].x)); +PV1i.x = R5i.x; +R5i.y = floatBitsToInt(intBitsToFloat(PS0i) * intBitsToFloat(uf_uniformRegisterVS[1].y)); +PS1i = floatBitsToInt(1.0 / intBitsToFloat(uf_uniformRegisterVS[7].y)); +// 2 +R6i.x = floatBitsToInt(intBitsToFloat(uf_uniformRegisterVS[1].z) * intBitsToFloat(PS1i)); +PV0i.x = R6i.x; +R7i.y = floatBitsToInt(intBitsToFloat(uf_uniformRegisterVS[1].w) * intBitsToFloat(PS1i)); +R7i.x = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + 1.0); +PS0i = R7i.x; +// 3 +R8i.x = floatBitsToInt(-(intBitsToFloat(R5i.y)) + intBitsToFloat(PS0i)); +R2i.z = floatBitsToInt(-(intBitsToFloat(PV0i.x)) + 1.0); +PV1i.z = R2i.z; +R9i.x = floatBitsToInt(-(intBitsToFloat(R5i.y)) + 1.0); +PS1i = R9i.x; +// 4 +R5i.z = floatBitsToInt(-(intBitsToFloat(R7i.y)) + 1.0); +R2i.w = floatBitsToInt(-(intBitsToFloat(R7i.y)) + intBitsToFloat(PV1i.z)); +// 5 +predResult = (R0i.z == 0); +activeMaskStack[3] = predResult; +activeMaskStackC[4] = predResult == true && activeMaskStackC[3] == true; +} +else { +activeMaskStack[3] = false; +activeMaskStackC[4] = false; +} +if( activeMaskStackC[4] == true ) { +// 0 +backupReg0i = R5i.x; +R5i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), intBitsToFloat(backupReg0i))); +R5i.y = R6i.x; +PV0i.y = R5i.y; +// 1 +R5i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.y), intBitsToFloat(PV0i.y))); +} +activeMaskStack[3] = activeMaskStack[3] == false; +activeMaskStackC[4] = activeMaskStack[3] == true && activeMaskStackC[3] == true; +if( activeMaskStackC[4] == true ) { +activeMaskStack[4] = activeMaskStack[3]; +activeMaskStackC[5] = activeMaskStackC[4]; +// 0 +predResult = (R0i.z == int(1)); +activeMaskStack[4] = predResult; +activeMaskStackC[5] = predResult == true && activeMaskStackC[4] == true; +} +else { +activeMaskStack[4] = false; +activeMaskStackC[5] = false; +} +if( activeMaskStackC[5] == true ) { +// 0 +backupReg0i = R5i.y; +R5i.y = 0; +PV0i.y = R5i.y; +PV0i.z = R6i.x; +PV0i.w = backupReg0i; +// 1 +R5i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(PV0i.w)) + intBitsToFloat(R9i.x))); +R5i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(PV0i.z)) + intBitsToFloat(PV0i.y))); +} +activeMaskStack[4] = activeMaskStack[4] == false; +activeMaskStackC[5] = activeMaskStack[4] == true && activeMaskStackC[4] == true; +if( activeMaskStackC[5] == true ) { +activeMaskStack[5] = activeMaskStack[4]; +activeMaskStackC[6] = activeMaskStackC[5]; +// 0 +predResult = (R0i.z == 0x00000002); +activeMaskStack[5] = predResult; +activeMaskStackC[6] = predResult == true && activeMaskStackC[5] == true; +} +else { +activeMaskStack[5] = false; +activeMaskStackC[6] = false; +} +if( activeMaskStackC[6] == true ) { +// 0 +backupReg0i = R7i.y; +R7i.y = backupReg0i; +PV0i.y = R7i.y; +PV0i.z = R5i.z; +PV0i.w = 0; +// 1 +backupReg0i = R5i.x; +R5i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(backupReg0i)) + intBitsToFloat(PV0i.w))); +R5i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(PV0i.y)) + intBitsToFloat(PV0i.z))); +} +activeMaskStack[5] = activeMaskStack[5] == false; +activeMaskStackC[6] = activeMaskStack[5] == true && activeMaskStackC[5] == true; +if( activeMaskStackC[6] == true ) { +activeMaskStack[6] = activeMaskStack[5]; +activeMaskStackC[7] = activeMaskStackC[6]; +// 0 +predResult = (R0i.z == 0x00000003); +activeMaskStack[6] = predResult; +activeMaskStackC[7] = predResult == true && activeMaskStackC[6] == true; +} +else { +activeMaskStack[6] = false; +activeMaskStackC[7] = false; +} +if( activeMaskStackC[7] == true ) { +// 0 +backupReg0i = R5i.y; +R5i.y = R5i.z; +PV0i.y = R5i.y; +PV0i.z = R7i.y; +PV0i.w = backupReg0i; +// 1 +R5i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(PV0i.w)) + intBitsToFloat(R9i.x))); +R5i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(PV0i.z)) + intBitsToFloat(PV0i.y))); +} +activeMaskStack[6] = activeMaskStack[6] == false; +activeMaskStackC[7] = activeMaskStack[6] == true && activeMaskStackC[6] == true; +if( activeMaskStackC[7] == true ) { +activeMaskStack[7] = activeMaskStack[6]; +activeMaskStackC[8] = activeMaskStackC[7]; +// 0 +predResult = (R0i.z == 0x00000004); +activeMaskStack[7] = predResult; +activeMaskStackC[8] = predResult == true && activeMaskStackC[7] == true; +} +else { +activeMaskStack[7] = false; +activeMaskStackC[8] = false; +} +if( activeMaskStackC[8] == true ) { +// 0 +R5i.y = R2i.w; +PV0i.y = R5i.y; +PV0i.z = R6i.x; +PV0i.w = 0; +// 1 +backupReg0i = R5i.x; +R5i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(backupReg0i)) + intBitsToFloat(PV0i.w))); +R5i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(PV0i.y)) + intBitsToFloat(PV0i.z))); +} +activeMaskStack[7] = activeMaskStack[7] == false; +activeMaskStackC[8] = activeMaskStack[7] == true && activeMaskStackC[7] == true; +if( activeMaskStackC[8] == true ) { +activeMaskStack[8] = activeMaskStack[7]; +activeMaskStackC[9] = activeMaskStackC[8]; +// 0 +predResult = (R0i.z == 0x00000005); +activeMaskStack[8] = predResult; +activeMaskStackC[9] = predResult == true && activeMaskStackC[8] == true; +} +else { +activeMaskStack[8] = false; +activeMaskStackC[9] = false; +} +if( activeMaskStackC[9] == true ) { +// 0 +backupReg0i = R5i.y; +R5i.y = R6i.x; +PV0i.y = R5i.y; +PV0i.z = R2i.w; +PV0i.w = backupReg0i; +// 1 +R5i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(PV0i.w)) + intBitsToFloat(R9i.x))); +R5i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(PV0i.z)) + intBitsToFloat(PV0i.y))); +} +activeMaskStack[8] = activeMaskStack[8] == false; +activeMaskStackC[9] = activeMaskStack[8] == true && activeMaskStackC[8] == true; +if( activeMaskStackC[9] == true ) { +activeMaskStack[9] = activeMaskStack[8]; +activeMaskStackC[10] = activeMaskStackC[9]; +// 0 +predResult = (R0i.z == 0x00000006); +activeMaskStack[9] = predResult; +activeMaskStackC[10] = predResult == true && activeMaskStackC[9] == true; +} +else { +activeMaskStack[9] = false; +activeMaskStackC[10] = false; +} +if( activeMaskStackC[10] == true ) { +// 0 +R5i.y = R6i.x; +PV0i.y = R5i.y; +R7i.y = 0; +PS0i = R7i.y; +// 1 +backupReg0i = R5i.x; +R5i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(R8i.x)) + intBitsToFloat(backupReg0i))); +R5i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(PV0i.y)) + intBitsToFloat(PS0i))); +} +activeMaskStack[9] = activeMaskStack[9] == false; +activeMaskStackC[10] = activeMaskStack[9] == true && activeMaskStackC[9] == true; +if( activeMaskStackC[10] == true ) { +activeMaskStack[10] = activeMaskStack[9]; +activeMaskStackC[11] = activeMaskStackC[10]; +// 0 +predResult = (R0i.z == 0x00000007); +activeMaskStack[10] = predResult; +activeMaskStackC[11] = predResult == true && activeMaskStackC[10] == true; +} +else { +activeMaskStack[10] = false; +activeMaskStackC[11] = false; +} +if( activeMaskStackC[11] == true ) { +// 0 +backupReg0i = R5i.x; +R5i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(R8i.x)) + intBitsToFloat(backupReg0i))); +R5i.y = R7i.y; +PV0i.y = R5i.y; +R7i.y = R5i.z; +PS0i = R7i.y; +// 1 +R5i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(PV0i.y)) + intBitsToFloat(PS0i))); +} +activeMaskStack[10] = activeMaskStack[10] == false; +activeMaskStackC[11] = activeMaskStack[10] == true && activeMaskStackC[10] == true; +if( activeMaskStackC[11] == true ) { +activeMaskStack[11] = activeMaskStack[10]; +activeMaskStackC[12] = activeMaskStackC[11]; +// 0 +predResult = (R0i.z == 0x00000008); +activeMaskStack[11] = predResult; +activeMaskStackC[12] = predResult == true && activeMaskStackC[11] == true; +} +else { +activeMaskStack[11] = false; +activeMaskStackC[12] = false; +} +if( activeMaskStackC[12] == true ) { +// 0 +R5i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), intBitsToFloat(R9i.x))); +R5i.y = R6i.x; +PV0i.y = R5i.y; +// 1 +R5i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.y), intBitsToFloat(PV0i.y))); +} +activeMaskStack[11] = activeMaskStack[11] == false; +activeMaskStackC[12] = activeMaskStack[11] == true && activeMaskStackC[11] == true; +if( activeMaskStackC[12] == true ) { +activeMaskStack[12] = activeMaskStack[11]; +activeMaskStackC[13] = activeMaskStackC[12]; +// 0 +predResult = (R0i.z == 0x00000009); +activeMaskStack[12] = predResult; +activeMaskStackC[13] = predResult == true && activeMaskStackC[12] == true; +} +else { +activeMaskStack[12] = false; +activeMaskStackC[13] = false; +} +if( activeMaskStackC[13] == true ) { +// 0 +backupReg0i = R5i.y; +R5i.y = 0; +PV0i.y = R5i.y; +PV0i.z = R5i.z; +PV0i.w = backupReg0i; +// 1 +R5i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(PV0i.w)) + intBitsToFloat(R9i.x))); +R5i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(PV0i.z)) + intBitsToFloat(PV0i.y))); +} +activeMaskStack[12] = activeMaskStack[12] == false; +activeMaskStackC[13] = activeMaskStack[12] == true && activeMaskStackC[12] == true; +if( activeMaskStackC[13] == true ) { +activeMaskStack[13] = activeMaskStack[12]; +activeMaskStackC[14] = activeMaskStackC[13]; +// 0 +predResult = (R0i.z == 0x0000000a); +activeMaskStack[13] = predResult; +activeMaskStackC[14] = predResult == true && activeMaskStackC[13] == true; +} +else { +activeMaskStack[13] = false; +activeMaskStackC[14] = false; +} +if( activeMaskStackC[14] == true ) { +// 0 +R5i.y = R2i.z; +PV0i.y = R5i.y; +PV0i.z = R6i.x; +PV0i.w = 0; +// 1 +backupReg0i = R5i.x; +R5i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(backupReg0i)) + intBitsToFloat(PV0i.w))); +R5i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(PV0i.y)) + intBitsToFloat(PV0i.z))); +} +activeMaskStack[13] = activeMaskStack[13] == false; +activeMaskStackC[14] = activeMaskStack[13] == true && activeMaskStackC[13] == true; +if( activeMaskStackC[14] == true ) { +// 0 +PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), intBitsToFloat(R9i.x))); +R5i.y = R2i.w; +PV0i.y = R5i.y; +R127i.z = (R0i.z == 0x0000000c)?int(0xFFFFFFFF):int(0x0); +PV0i.z = R127i.z; +R127i.w = (R0i.z == 0x0000000b)?int(0xFFFFFFFF):int(0x0); +// 1 +PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.y), intBitsToFloat(PV0i.y))); +R5i.y = R5i.z; +PV1i.y = R5i.y; +R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(R7i.x)) + intBitsToFloat(R5i.x))); +PV1i.z = R123i.z; +R123i.w = ((PV0i.z == 0)?(0):(PV0i.x)); +PV1i.w = R123i.w; +// 2 +R5i.x = ((R127i.w == 0)?(PV1i.w):(PV1i.z)); +R123i.z = ((R127i.z == 0)?(0):(PV1i.x)); +PV0i.z = R123i.z; +R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(R7i.y)) + intBitsToFloat(PV1i.y))); +PV0i.w = R123i.w; +// 3 +R5i.y = ((R127i.w == 0)?(PV0i.z):(PV0i.w)); +} +activeMaskStackC[13] = activeMaskStack[12] == true && activeMaskStackC[12] == true; +activeMaskStackC[11] = activeMaskStack[10] == true && activeMaskStackC[10] == true; +activeMaskStackC[9] = activeMaskStack[8] == true && activeMaskStackC[8] == true; +activeMaskStackC[7] = activeMaskStack[6] == true && activeMaskStackC[6] == true; +activeMaskStackC[5] = activeMaskStack[4] == true && activeMaskStackC[4] == true; +activeMaskStackC[3] = activeMaskStack[2] == true && activeMaskStackC[2] == true; +if( activeMaskStackC[3] == true ) { +// 0 +R127i.x = floatBitsToInt(-(intBitsToFloat(R5i.y)) + 1.0); +PV0i.x = R127i.x; +R126i.y = floatBitsToInt(-(intBitsToFloat(R5i.x)) + 1.0); +// 1 +PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(uf_uniformRegisterVS[20].w))); +PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(uf_uniformRegisterVS[20].z))); +PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(uf_uniformRegisterVS[20].y))); +PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(uf_uniformRegisterVS[20].x))); +// 2 +R126i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),intBitsToFloat(uf_uniformRegisterVS[22].w)) + intBitsToFloat(PV1i.x))); +R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),intBitsToFloat(uf_uniformRegisterVS[22].z)) + intBitsToFloat(PV1i.y))); +R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),intBitsToFloat(uf_uniformRegisterVS[22].y)) + intBitsToFloat(PV1i.z))); +R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),intBitsToFloat(uf_uniformRegisterVS[22].x)) + intBitsToFloat(PV1i.w))); +PV0i.w = R123i.w; +// 3 +PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(uf_uniformRegisterVS[21].w))); +PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(uf_uniformRegisterVS[21].z))); +PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(uf_uniformRegisterVS[21].y))); +PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(uf_uniformRegisterVS[21].x))); +R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(PV0i.w))); +PS1i = R127i.w; +// 4 +backupReg0i = R127i.z; +R127i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),intBitsToFloat(uf_uniformRegisterVS[23].w)) + intBitsToFloat(PV1i.x))); +R125i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),intBitsToFloat(uf_uniformRegisterVS[23].z)) + intBitsToFloat(PV1i.y))); +R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),intBitsToFloat(uf_uniformRegisterVS[23].y)) + intBitsToFloat(PV1i.z))); +R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),intBitsToFloat(uf_uniformRegisterVS[23].x)) + intBitsToFloat(PV1i.w))); +PV0i.w = R123i.w; +R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(backupReg0i))); +PS0i = R126i.z; +// 5 +PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(R126i.x))); +PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(R127i.y))); +R8i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.x),intBitsToFloat(PV0i.w)) + intBitsToFloat(R127i.w))); +PS1i = R8i.x; +// 6 +R8i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.x),intBitsToFloat(R127i.z)) + intBitsToFloat(R126i.z))); +R8i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.x),intBitsToFloat(R125i.y)) + intBitsToFloat(PV1i.y))); +R8i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.x),intBitsToFloat(R127i.x)) + intBitsToFloat(PV1i.x))); +// 7 +backupReg0i = R6i.y; +R6i.xyz = ivec3(R1i.x,backupReg0i,R3i.z); +PV1i.x = R6i.x; +PV1i.y = R6i.y; +PV1i.z = R6i.z; +R6i.w = R0i.w; +PV1i.w = R6i.w; +// 8 +R7i.xyz = ivec3(PV1i.x,PV1i.y,PV1i.z); +PV0i.x = R7i.x; +PV0i.y = R7i.y; +PV0i.z = R7i.z; +R7i.w = PV1i.w; +PV0i.w = R7i.w; +// 9 +R5i.xyz = ivec3(PV0i.x,PV0i.y,PV0i.z); +R5i.w = PV0i.w; +} +activeMaskStack[2] = activeMaskStack[2] == false; +activeMaskStackC[3] = activeMaskStack[2] == true && activeMaskStackC[2] == true; +if( activeMaskStackC[3] == true ) { +activeMaskStack[3] = activeMaskStack[2]; +activeMaskStackC[4] = activeMaskStackC[3]; +// 0 +PS0i = int(intBitsToFloat(R1i.y)); +// 1 +PV1i.z = PS0i << int(1); +PS1i = int(intBitsToFloat(R1i.x)); +// 2 +R2i.z = PV1i.z + PS1i; +PV0i.z = R2i.z; +// 3 +R127i.x = (PV0i.z == 0x00000002)?int(0xFFFFFFFF):int(0x0); +PV1i.x = R127i.x; +R127i.y = (PV0i.z == 0x00000002)?int(0xFFFFFFFF):int(0x0); +R127i.z = (PV0i.z == 0x00000002)?int(0xFFFFFFFF):int(0x0); +R126i.w = (PV0i.z == int(1))?int(0xFFFFFFFF):int(0x0); +R124i.w = (PV0i.z == int(1))?int(0xFFFFFFFF):int(0x0); +PS1i = R124i.w; +// 4 +R124i.y = (R2i.z == int(1))?int(0xFFFFFFFF):int(0x0); +R126i.z = ((PV1i.x == 0)?(uf_uniformRegisterVS[27].y):(uf_uniformRegisterVS[26].y)); +R127i.w = ((PV1i.x == 0)?(uf_uniformRegisterVS[27].x):(uf_uniformRegisterVS[26].x)); +// 5 +backupReg0i = R127i.x; +backupReg0i = R127i.x; +R127i.x = ((backupReg0i == 0)?(uf_uniformRegisterVS[27].w):(uf_uniformRegisterVS[26].w)); +R126i.y = ((backupReg0i == 0)?(uf_uniformRegisterVS[27].z):(uf_uniformRegisterVS[26].z)); +// 6 +R126i.x = ((R127i.z == 0)?(uf_uniformRegisterVS[31].y):(uf_uniformRegisterVS[30].y)); +R125i.y = ((R127i.z == 0)?(uf_uniformRegisterVS[31].x):(uf_uniformRegisterVS[30].x)); +// 7 +backupReg0i = R127i.z; +backupReg0i = R127i.z; +R127i.z = ((backupReg0i == 0)?(uf_uniformRegisterVS[31].w):(uf_uniformRegisterVS[30].w)); +R125i.w = ((backupReg0i == 0)?(uf_uniformRegisterVS[31].z):(uf_uniformRegisterVS[30].z)); +// 8 +R125i.z = ((R127i.y == 0)?(uf_uniformRegisterVS[35].y):(uf_uniformRegisterVS[34].y)); +R0i.w = ((R127i.y == 0)?(uf_uniformRegisterVS[35].x):(uf_uniformRegisterVS[34].x)); +// 9 +backupReg0i = R127i.y; +R125i.x = ((R127i.y == 0)?(uf_uniformRegisterVS[35].w):(uf_uniformRegisterVS[34].w)); +R127i.y = ((backupReg0i == 0)?(uf_uniformRegisterVS[35].z):(uf_uniformRegisterVS[34].z)); +// 10 +backupReg0i = R127i.x; +backupReg1i = R126i.y; +backupReg2i = R126i.z; +backupReg3i = R127i.w; +R127i.x = ((R126i.w == 0)?(backupReg0i):(uf_uniformRegisterVS[25].w)); +R126i.y = ((R126i.w == 0)?(backupReg1i):(uf_uniformRegisterVS[25].z)); +R126i.z = ((R126i.w == 0)?(backupReg2i):(uf_uniformRegisterVS[25].y)); +R127i.w = ((R126i.w == 0)?(backupReg3i):(uf_uniformRegisterVS[25].x)); +// 11 +backupReg0i = R126i.x; +backupReg1i = R125i.y; +backupReg2i = R127i.z; +backupReg3i = R125i.w; +R126i.x = ((R124i.w == 0)?(backupReg0i):(uf_uniformRegisterVS[29].y)); +R125i.y = ((R124i.w == 0)?(backupReg1i):(uf_uniformRegisterVS[29].x)); +R127i.z = ((R124i.w == 0)?(backupReg2i):(uf_uniformRegisterVS[29].w)); +R125i.w = ((R124i.w == 0)?(backupReg3i):(uf_uniformRegisterVS[29].z)); +// 12 +backupReg0i = R125i.x; +backupReg1i = R127i.y; +backupReg2i = R125i.z; +R125i.x = ((R124i.y == 0)?(backupReg0i):(uf_uniformRegisterVS[33].w)); +R127i.y = ((R124i.y == 0)?(backupReg1i):(uf_uniformRegisterVS[33].z)); +R125i.z = ((R124i.y == 0)?(backupReg2i):(uf_uniformRegisterVS[33].y)); +R124i.w = ((R124i.y == 0)?(R0i.w):(uf_uniformRegisterVS[33].x)); +// 13 +R6i.x = ((R2i.z == 0)?(uf_uniformRegisterVS[24].x):(R127i.w)); +R6i.y = ((R2i.z == 0)?(uf_uniformRegisterVS[24].y):(R126i.z)); +R6i.z = ((R2i.z == 0)?(uf_uniformRegisterVS[24].z):(R126i.y)); +R6i.w = ((R2i.z == 0)?(uf_uniformRegisterVS[24].w):(R127i.x)); +// 14 +R7i.x = ((R2i.z == 0)?(uf_uniformRegisterVS[28].x):(R125i.y)); +R7i.y = ((R2i.z == 0)?(uf_uniformRegisterVS[28].y):(R126i.x)); +R7i.z = ((R2i.z == 0)?(uf_uniformRegisterVS[28].z):(R125i.w)); +R7i.w = ((R2i.z == 0)?(uf_uniformRegisterVS[28].w):(R127i.z)); +// 15 +R5i.x = ((R2i.z == 0)?(uf_uniformRegisterVS[32].x):(R124i.w)); +R5i.y = ((R2i.z == 0)?(uf_uniformRegisterVS[32].y):(R125i.z)); +R5i.z = ((R2i.z == 0)?(uf_uniformRegisterVS[32].z):(R127i.y)); +R5i.w = ((R2i.z == 0)?(uf_uniformRegisterVS[32].w):(R125i.x)); +// 16 +predResult = (R0i.z == 0x0000000d); +activeMaskStack[3] = predResult; +activeMaskStackC[4] = predResult == true && activeMaskStackC[3] == true; +} +else { +activeMaskStack[3] = false; +activeMaskStackC[4] = false; +} +if( activeMaskStackC[4] == true ) { +// 0 +PS0i = floatBitsToInt(1.0 / intBitsToFloat(uf_uniformRegisterVS[7].y)); +// 1 +PV1i.z = floatBitsToInt(intBitsToFloat(uf_uniformRegisterVS[1].w) * intBitsToFloat(PS0i)); +PV1i.w = floatBitsToInt(intBitsToFloat(uf_uniformRegisterVS[1].z) * intBitsToFloat(PS0i)); +PS1i = floatBitsToInt(1.0 / intBitsToFloat(uf_uniformRegisterVS[7].x)); +// 2 +R127i.x = PV1i.z; +R127i.y = PV1i.w; +PV0i.y = R127i.y; +R127i.z = floatBitsToInt(intBitsToFloat(PS1i) * intBitsToFloat(uf_uniformRegisterVS[1].x)); +PV0i.z = R127i.z; +R127i.w = floatBitsToInt(intBitsToFloat(PS1i) * intBitsToFloat(uf_uniformRegisterVS[1].y)); +// 3 +PV1i.z = floatBitsToInt(-(intBitsToFloat(PV0i.y)) + 1.0); +PV1i.w = floatBitsToInt(-(intBitsToFloat(PV0i.z)) + 1.0); +// 4 +PV0i.x = floatBitsToInt(-(intBitsToFloat(R127i.x)) + intBitsToFloat(PV1i.z)); +PV0i.y = floatBitsToInt(-(intBitsToFloat(R127i.w)) + intBitsToFloat(PV1i.w)); +// 5 +backupReg0i = R127i.z; +R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(PV0i.x)) + intBitsToFloat(R127i.y))); +PV1i.z = R127i.z; +R126i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(PV0i.y)) + intBitsToFloat(backupReg0i))); +PV1i.w = R126i.w; +// 6 +R127i.x = floatBitsToInt(-(intBitsToFloat(PV1i.z)) + 1.0); +PV0i.x = R127i.x; +R126i.y = floatBitsToInt(-(intBitsToFloat(PV1i.w)) + 1.0); +// 7 +PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(uf_uniformRegisterVS[20].w))); +PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(uf_uniformRegisterVS[20].z))); +PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(uf_uniformRegisterVS[20].y))); +PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(uf_uniformRegisterVS[20].x))); +// 8 +R126i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(uf_uniformRegisterVS[22].w)) + intBitsToFloat(PV1i.x))); +R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(uf_uniformRegisterVS[22].z)) + intBitsToFloat(PV1i.y))); +R126i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(uf_uniformRegisterVS[22].y)) + intBitsToFloat(PV1i.z))); +R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(uf_uniformRegisterVS[22].x)) + intBitsToFloat(PV1i.w))); +PV0i.w = R123i.w; +// 9 +PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(uf_uniformRegisterVS[21].w))); +PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(uf_uniformRegisterVS[21].z))); +PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(uf_uniformRegisterVS[21].y))); +PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(uf_uniformRegisterVS[21].x))); +R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(PV0i.w))); +PS1i = R127i.w; +// 10 +backupReg0i = R127i.z; +backupReg0i = R127i.z; +backupReg1i = R126i.z; +R127i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(uf_uniformRegisterVS[23].w)) + intBitsToFloat(PV1i.x))); +R125i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(uf_uniformRegisterVS[23].z)) + intBitsToFloat(PV1i.y))); +R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(uf_uniformRegisterVS[23].y)) + intBitsToFloat(PV1i.z))); +R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(uf_uniformRegisterVS[23].x)) + intBitsToFloat(PV1i.w))); +PV0i.w = R123i.w; +R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(backupReg1i))); +PS0i = R126i.z; +// 11 +PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(R126i.x))); +PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(R127i.y))); +R8i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.w),intBitsToFloat(PV0i.w)) + intBitsToFloat(R127i.w))); +PS1i = R8i.x; +// 12 +R8i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.w),intBitsToFloat(R127i.z)) + intBitsToFloat(R126i.z))); +R8i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.w),intBitsToFloat(R125i.y)) + intBitsToFloat(PV1i.y))); +R8i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.w),intBitsToFloat(R127i.x)) + intBitsToFloat(PV1i.x))); +} +activeMaskStack[3] = activeMaskStack[3] == false; +activeMaskStackC[4] = activeMaskStack[3] == true && activeMaskStackC[3] == true; +if( activeMaskStackC[4] == true ) { +// 0 +R127i.x = floatBitsToInt(float(R2i.z)); +PS0i = R127i.x; +// 1 +tempResultf = intBitsToFloat(PS0i); +tempResultf = floor(tempResultf); +tempResultf = clamp(tempResultf, -256.0, 255.0); +ARi.x = int(tempResultf); +PV1i.x = floatBitsToInt(tempResultf); +// 2 +R8i.xyz = ivec3(uf_uniformRegisterVS[ARi.x+20].x,uf_uniformRegisterVS[ARi.x+20].y,uf_uniformRegisterVS[ARi.x+20].z); +R8i.w = uf_uniformRegisterVS[ARi.x+20].w; +} +activeMaskStackC[3] = activeMaskStack[2] == true && activeMaskStackC[2] == true; +activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; +if( activeMaskStackC[1] == true ) { +activeMaskStack[1] = activeMaskStack[0]; +activeMaskStackC[2] = activeMaskStackC[1]; +// 0 +predResult = (0 != uf_uniformRegisterVS[3].x); +activeMaskStack[1] = predResult; +activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; +} +else { +activeMaskStack[1] = false; +activeMaskStackC[2] = false; +} +if( activeMaskStackC[2] == true ) { +// 0 +backupReg0i = R0i.y; +R6i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R0i.x),intBitsToFloat(backupReg0i),intBitsToFloat(R1i.z),intBitsToFloat(R1i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[24].x),intBitsToFloat(uf_uniformRegisterVS[24].y),intBitsToFloat(uf_uniformRegisterVS[24].z),intBitsToFloat(uf_uniformRegisterVS[24].w)))); +PV0i.x = R6i.x; +PV0i.y = R6i.x; +PV0i.z = R6i.x; +PV0i.w = R6i.x; +// 1 +backupReg0i = R0i.x; +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(R0i.y),intBitsToFloat(R1i.z),intBitsToFloat(R1i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[25].x),intBitsToFloat(uf_uniformRegisterVS[25].y),intBitsToFloat(uf_uniformRegisterVS[25].z),intBitsToFloat(uf_uniformRegisterVS[25].w)))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R6i.y = tempi.x; +// 2 +backupReg0i = R0i.x; +backupReg1i = R0i.y; +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),intBitsToFloat(R1i.z),intBitsToFloat(R1i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[26].x),intBitsToFloat(uf_uniformRegisterVS[26].y),intBitsToFloat(uf_uniformRegisterVS[26].z),intBitsToFloat(uf_uniformRegisterVS[26].w)))); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +R6i.z = tempi.x; +// 3 +backupReg0i = R0i.x; +backupReg1i = R0i.y; +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),intBitsToFloat(R1i.z),intBitsToFloat(R1i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[27].x),intBitsToFloat(uf_uniformRegisterVS[27].y),intBitsToFloat(uf_uniformRegisterVS[27].z),intBitsToFloat(uf_uniformRegisterVS[27].w)))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R6i.w = tempi.x; +} +activeMaskStack[1] = activeMaskStack[1] == false; +activeMaskStackC[2] = activeMaskStack[1] == true && activeMaskStackC[1] == true; +if( activeMaskStackC[2] == true ) { +activeMaskStack[2] = activeMaskStack[1]; +activeMaskStackC[3] = activeMaskStackC[2]; +// 0 +R0i.z = uf_uniformRegisterVS[2].x & int(1); +// 1 +predResult = (0 != R0i.z); +activeMaskStack[2] = predResult; +activeMaskStackC[3] = predResult == true && activeMaskStackC[2] == true; +} +else { +activeMaskStack[2] = false; +activeMaskStackC[3] = false; +} +if( activeMaskStackC[3] == true ) { +activeMaskStack[3] = activeMaskStack[2]; +activeMaskStackC[4] = activeMaskStackC[3]; +// 0 +R1i.y = uf_uniformRegisterVS[2].x & 0x00000002; +// 1 +predResult = (0 != R1i.y); +activeMaskStack[3] = predResult; +activeMaskStackC[4] = predResult == true && activeMaskStackC[3] == true; +} +else { +activeMaskStack[3] = false; +activeMaskStackC[4] = false; +} +if( activeMaskStackC[4] == true ) { +// 0 +PV0i.x = uf_uniformRegisterVS[2].x & 0x00010000; +R127i.y = uf_uniformRegisterVS[2].x & 0x00000010; +PV0i.y = R127i.y; +R125i.z = uf_uniformRegisterVS[2].x & 0x00000004; +R127i.w = uf_uniformRegisterVS[2].x & 0x00000020; +// 1 +R123i.x = ((PV0i.y == 0)?(R6i.w):(R6i.w)); +PV1i.x = R123i.x; +R123i.y = ((PV0i.y == 0)?(R6i.z):(R6i.z)); +PV1i.y = R123i.y; +R126i.z = ((PV0i.x == 0)?(R2i.y):(R3i.y)); +PV1i.z = R126i.z; +R123i.w = ((PV0i.x == 0)?(R2i.x):(R3i.x)); +PV1i.w = R123i.w; +R127i.z = ((PV0i.y == 0)?(R6i.y):(R6i.y)); +PS1i = R127i.z; +// 2 +R1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.x), intBitsToFloat(PV1i.w))); +PV0i.x = R1i.x; +R126i.y = floatBitsToInt(-(intBitsToFloat(PV1i.w)) + 1.0); +PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS1i), intBitsToFloat(PV1i.z))); +R123i.w = ((R127i.w == 0)?(PV1i.y):(PV1i.y)); +PV0i.w = R123i.w; +R122i.x = ((R127i.w == 0)?(PV1i.x):(PV1i.x)); +PS0i = R122i.x; +// 3 +backupReg0i = R127i.y; +R123i.x = ((R127i.w == 0)?(R127i.z):(PV0i.z)); +PV1i.x = R123i.x; +R127i.y = floatBitsToInt(-(intBitsToFloat(R126i.z)) + 1.0); +R127i.z = ((R125i.z == 0)?(PV0i.w):(PV0i.w)); +R123i.w = ((backupReg0i == 0)?(R6i.x):(PV0i.x)); +PV1i.w = R123i.w; +R124i.z = ((R125i.z == 0)?(PS0i):(PS0i)); +PS1i = R124i.z; +// 4 +R127i.x = ((R125i.z == 0)?(PV1i.x):(PV1i.x)); +PV0i.x = R127i.x; +R125i.y = ((R127i.w == 0)?(PV1i.w):(PV1i.w)); +PV0i.y = R125i.y; +R126i.z = uf_uniformRegisterVS[2].x & 0x00000008; +// 5 +R126i.x = floatBitsToInt(intBitsToFloat(PV0i.x) + intBitsToFloat(R127i.y)); +PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.y) + intBitsToFloat(R126i.y)); +// 6 +R123i.y = ((R125i.z == 0)?(R125i.y):(PV1i.z)); +PV0i.y = R123i.y; +// 7 +R6i.x = ((R126i.z == 0)?(PV0i.y):(PV0i.y)); +R6i.y = ((R126i.z == 0)?(R127i.x):(R126i.x)); +R6i.z = ((R126i.z == 0)?(R127i.z):(R127i.z)); +// 8 +R6i.w = ((R126i.z == 0)?(R124i.z):(R124i.z)); +} +activeMaskStackC[3] = activeMaskStack[2] == true && activeMaskStackC[2] == true; +if( activeMaskStackC[3] == true ) { +// 0 +R1i.x = floatBitsToInt(-(intBitsToFloat(R6i.x)) + 1.0); +PV0i.x = R1i.x; +R126i.y = uf_uniformRegisterVS[2].x & 0x00010000; +R127i.z = uf_uniformRegisterVS[2].x & 0x00040000; +PV0i.w = uf_uniformRegisterVS[2].x & 0x00020000; +// 1 +R123i.x = ((PV0i.w == 0)?(R6i.z):(R6i.z)); +PV1i.x = R123i.x; +R127i.y = ((PV0i.w == 0)?(R6i.y):(R6i.y)); +PV1i.y = R127i.y; +R123i.z = ((PV0i.w == 0)?(R6i.x):(PV0i.x)); +PV1i.z = R123i.z; +R123i.w = ((PV0i.w == 0)?(R6i.w):(R6i.w)); +PV1i.w = R123i.w; +// 2 +R127i.x = ((R127i.z == 0)?(PV1i.z):(PV1i.z)); +PV0i.y = floatBitsToInt(-(intBitsToFloat(PV1i.y)) + 1.0); +R126i.z = ((R127i.z == 0)?(PV1i.x):(PV1i.x)); +R127i.w = ((R127i.z == 0)?(PV1i.w):(PV1i.w)); +// 3 +R123i.w = ((R127i.z == 0)?(R127i.y):(PV0i.y)); +PV1i.w = R123i.w; +// 4 +R6i.x = ((R126i.y == 0)?(R127i.x):(PV1i.w)); +R6i.y = ((R126i.y == 0)?(PV1i.w):(R127i.x)); +R6i.z = ((R126i.y == 0)?(R126i.z):(R126i.z)); +R6i.w = ((R126i.y == 0)?(R127i.w):(R127i.w)); +} +activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; +if( activeMaskStackC[1] == true ) { +activeMaskStack[1] = activeMaskStack[0]; +activeMaskStackC[2] = activeMaskStackC[1]; +// 0 +R127i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R6i.x),intBitsToFloat(R6i.y),intBitsToFloat(R6i.z),intBitsToFloat(R6i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[14].x),intBitsToFloat(uf_uniformRegisterVS[14].y),intBitsToFloat(uf_uniformRegisterVS[14].z),intBitsToFloat(uf_uniformRegisterVS[14].w)))); +PV0i.x = R127i.x; +PV0i.y = R127i.x; +PV0i.z = R127i.x; +PV0i.w = R127i.x; +// 1 +backupReg0i = R6i.x; +R6i.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(R6i.y),intBitsToFloat(R6i.z),intBitsToFloat(R6i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[13].x),intBitsToFloat(uf_uniformRegisterVS[13].y),intBitsToFloat(uf_uniformRegisterVS[13].z),intBitsToFloat(uf_uniformRegisterVS[13].w)))); +PV1i.x = R6i.x; +PV1i.y = R6i.x; +PV1i.z = R6i.x; +PV1i.w = R6i.x; +R1i.y = PV0i.x; +PS1i = R1i.y; +// 2 +R6i.y = floatBitsToInt(-(intBitsToFloat(PS1i)) + 1.0); +R6i.w = R127i.x; +// 3 +predResult = (0 != uf_uniformRegisterVS[3].y); +activeMaskStack[1] = predResult; +activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; +} +else { +activeMaskStack[1] = false; +activeMaskStackC[2] = false; +} +if( activeMaskStackC[2] == true ) { +// 0 +backupReg0i = R0i.y; +R7i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R0i.x),intBitsToFloat(backupReg0i),intBitsToFloat(R1i.z),intBitsToFloat(R1i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[28].x),intBitsToFloat(uf_uniformRegisterVS[28].y),intBitsToFloat(uf_uniformRegisterVS[28].z),intBitsToFloat(uf_uniformRegisterVS[28].w)))); +PV0i.x = R7i.x; +PV0i.y = R7i.x; +PV0i.z = R7i.x; +PV0i.w = R7i.x; +// 1 +backupReg0i = R0i.x; +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(R0i.y),intBitsToFloat(R1i.z),intBitsToFloat(R1i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[29].x),intBitsToFloat(uf_uniformRegisterVS[29].y),intBitsToFloat(uf_uniformRegisterVS[29].z),intBitsToFloat(uf_uniformRegisterVS[29].w)))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R7i.y = tempi.x; +// 2 +backupReg0i = R0i.x; +backupReg1i = R0i.y; +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),intBitsToFloat(R1i.z),intBitsToFloat(R1i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[30].x),intBitsToFloat(uf_uniformRegisterVS[30].y),intBitsToFloat(uf_uniformRegisterVS[30].z),intBitsToFloat(uf_uniformRegisterVS[30].w)))); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +R7i.z = tempi.x; +// 3 +backupReg0i = R0i.x; +backupReg1i = R0i.y; +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),intBitsToFloat(R1i.z),intBitsToFloat(R1i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[31].x),intBitsToFloat(uf_uniformRegisterVS[31].y),intBitsToFloat(uf_uniformRegisterVS[31].z),intBitsToFloat(uf_uniformRegisterVS[31].w)))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R7i.w = tempi.x; +} +activeMaskStack[1] = activeMaskStack[1] == false; +activeMaskStackC[2] = activeMaskStack[1] == true && activeMaskStackC[1] == true; +if( activeMaskStackC[2] == true ) { +activeMaskStack[2] = activeMaskStack[1]; +activeMaskStackC[3] = activeMaskStackC[2]; +// 0 +R0i.w = uf_uniformRegisterVS[2].x & int(1); +// 1 +predResult = (0 != R0i.w); +activeMaskStack[2] = predResult; +activeMaskStackC[3] = predResult == true && activeMaskStackC[2] == true; +} +else { +activeMaskStack[2] = false; +activeMaskStackC[3] = false; +} +if( activeMaskStackC[3] == true ) { +activeMaskStack[3] = activeMaskStack[2]; +activeMaskStackC[4] = activeMaskStackC[3]; +// 0 +R0i.z = uf_uniformRegisterVS[2].x & 0x00000002; +// 1 +predResult = (0 != R0i.z); +activeMaskStack[3] = predResult; +activeMaskStackC[4] = predResult == true && activeMaskStackC[3] == true; +} +else { +activeMaskStack[3] = false; +activeMaskStackC[4] = false; +} +if( activeMaskStackC[4] == true ) { +// 0 +R127i.x = uf_uniformRegisterVS[2].x & 0x00000020; +R127i.y = uf_uniformRegisterVS[2].x & 0x00000010; +PV0i.y = R127i.y; +R125i.z = uf_uniformRegisterVS[2].x & 0x00000004; +PV0i.w = uf_uniformRegisterVS[2].x & 0x00010000; +// 1 +R123i.x = ((PV0i.w == 0)?(R2i.y):(R3i.y)); +PV1i.x = R123i.x; +R123i.z = ((PV0i.w == 0)?(R2i.x):(R3i.x)); +PV1i.z = R123i.z; +R125i.w = uf_uniformRegisterVS[2].x & 0x00000008; +R127i.z = ((PV0i.y == 0)?(R7i.y):(R7i.y)); +PS1i = R127i.z; +// 2 +R1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R7i.x), intBitsToFloat(PV1i.z))); +PV0i.x = R1i.x; +PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS1i), intBitsToFloat(PV1i.x))); +R126i.z = floatBitsToInt(-(intBitsToFloat(PV1i.z)) + 1.0); +R127i.w = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + 1.0); +// 3 +R123i.z = ((R127i.x == 0)?(R127i.z):(PV0i.y)); +PV1i.z = R123i.z; +R123i.w = ((R127i.y == 0)?(R7i.x):(PV0i.x)); +PV1i.w = R123i.w; +// 4 +backupReg0i = R127i.x; +R127i.x = ((R125i.z == 0)?(PV1i.z):(PV1i.z)); +PV0i.x = R127i.x; +R126i.w = ((backupReg0i == 0)?(PV1i.w):(PV1i.w)); +PV0i.w = R126i.w; +// 5 +R126i.x = floatBitsToInt(intBitsToFloat(PV0i.x) + intBitsToFloat(R127i.w)); +PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.w) + intBitsToFloat(R126i.z)); +// 6 +R123i.y = ((R125i.z == 0)?(R126i.w):(PV1i.z)); +PV0i.y = R123i.y; +// 7 +R7i.x = ((R125i.w == 0)?(PV0i.y):(PV0i.y)); +R7i.y = ((R125i.w == 0)?(R127i.x):(R126i.x)); +} +activeMaskStackC[3] = activeMaskStack[2] == true && activeMaskStackC[2] == true; +if( activeMaskStackC[3] == true ) { +// 0 +R1i.x = floatBitsToInt(-(intBitsToFloat(R7i.x)) + 1.0); +PV0i.x = R1i.x; +PV0i.y = uf_uniformRegisterVS[2].x & 0x00020000; +R127i.z = uf_uniformRegisterVS[2].x & 0x00040000; +R126i.w = uf_uniformRegisterVS[2].x & 0x00010000; +// 1 +R123i.x = ((PV0i.y == 0)?(R7i.x):(PV0i.x)); +PV1i.x = R123i.x; +R127i.w = ((PV0i.y == 0)?(R7i.y):(R7i.y)); +PV1i.w = R127i.w; +// 2 +R127i.x = ((R127i.z == 0)?(PV1i.x):(PV1i.x)); +PV0i.y = floatBitsToInt(-(intBitsToFloat(PV1i.w)) + 1.0); +// 3 +R123i.w = ((R127i.z == 0)?(R127i.w):(PV0i.y)); +PV1i.w = R123i.w; +// 4 +R7i.x = ((R126i.w == 0)?(R127i.x):(PV1i.w)); +R7i.y = ((R126i.w == 0)?(PV1i.w):(R127i.x)); +} +activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; +if( activeMaskStackC[1] == true ) { +activeMaskStack[1] = activeMaskStack[0]; +activeMaskStackC[2] = activeMaskStackC[1]; +// 0 +R127i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R7i.x),intBitsToFloat(R7i.y),intBitsToFloat(R7i.z),intBitsToFloat(R7i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[16].x),intBitsToFloat(uf_uniformRegisterVS[16].y),intBitsToFloat(uf_uniformRegisterVS[16].z),intBitsToFloat(uf_uniformRegisterVS[16].w)))); +PV0i.x = R127i.x; +PV0i.y = R127i.x; +PV0i.z = R127i.x; +PV0i.w = R127i.x; +// 1 +backupReg0i = R7i.x; +R7i.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(R7i.y),intBitsToFloat(R7i.z),intBitsToFloat(R7i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[15].x),intBitsToFloat(uf_uniformRegisterVS[15].y),intBitsToFloat(uf_uniformRegisterVS[15].z),intBitsToFloat(uf_uniformRegisterVS[15].w)))); +PV1i.x = R7i.x; +PV1i.y = R7i.x; +PV1i.z = R7i.x; +PV1i.w = R7i.x; +R1i.y = PV0i.x; +PS1i = R1i.y; +// 2 +R7i.y = floatBitsToInt(-(intBitsToFloat(PS1i)) + 1.0); +R7i.w = R127i.x; +// 3 +predResult = (0 != uf_uniformRegisterVS[3].z); +activeMaskStack[1] = predResult; +activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; +} +else { +activeMaskStack[1] = false; +activeMaskStackC[2] = false; +} +if( activeMaskStackC[2] == true ) { +// 0 +backupReg0i = R0i.y; +R5i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R0i.x),intBitsToFloat(backupReg0i),intBitsToFloat(R1i.z),intBitsToFloat(R1i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[32].x),intBitsToFloat(uf_uniformRegisterVS[32].y),intBitsToFloat(uf_uniformRegisterVS[32].z),intBitsToFloat(uf_uniformRegisterVS[32].w)))); +PV0i.x = R5i.x; +PV0i.y = R5i.x; +PV0i.z = R5i.x; +PV0i.w = R5i.x; +// 1 +backupReg0i = R0i.x; +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(R0i.y),intBitsToFloat(R1i.z),intBitsToFloat(R1i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[33].x),intBitsToFloat(uf_uniformRegisterVS[33].y),intBitsToFloat(uf_uniformRegisterVS[33].z),intBitsToFloat(uf_uniformRegisterVS[33].w)))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R5i.y = tempi.x; +// 2 +backupReg0i = R0i.x; +backupReg1i = R0i.y; +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),intBitsToFloat(R1i.z),intBitsToFloat(R1i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[34].x),intBitsToFloat(uf_uniformRegisterVS[34].y),intBitsToFloat(uf_uniformRegisterVS[34].z),intBitsToFloat(uf_uniformRegisterVS[34].w)))); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +R5i.z = tempi.x; +// 3 +backupReg0i = R0i.x; +backupReg1i = R0i.y; +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),intBitsToFloat(R1i.z),intBitsToFloat(R1i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[35].x),intBitsToFloat(uf_uniformRegisterVS[35].y),intBitsToFloat(uf_uniformRegisterVS[35].z),intBitsToFloat(uf_uniformRegisterVS[35].w)))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R5i.w = tempi.x; +} +activeMaskStack[1] = activeMaskStack[1] == false; +activeMaskStackC[2] = activeMaskStack[1] == true && activeMaskStackC[1] == true; +if( activeMaskStackC[2] == true ) { +activeMaskStack[2] = activeMaskStack[1]; +activeMaskStackC[3] = activeMaskStackC[2]; +// 0 +R0i.x = uf_uniformRegisterVS[2].x & int(1); +// 1 +backupReg0i = R0i.x; +predResult = (0 != backupReg0i); +activeMaskStack[2] = predResult; +activeMaskStackC[3] = predResult == true && activeMaskStackC[2] == true; +} +else { +activeMaskStack[2] = false; +activeMaskStackC[3] = false; +} +if( activeMaskStackC[3] == true ) { +activeMaskStack[3] = activeMaskStack[2]; +activeMaskStackC[4] = activeMaskStackC[3]; +// 0 +R0i.w = uf_uniformRegisterVS[2].x & 0x00000002; +// 1 +predResult = (0 != R0i.w); +activeMaskStack[3] = predResult; +activeMaskStackC[4] = predResult == true && activeMaskStackC[3] == true; +} +else { +activeMaskStack[3] = false; +activeMaskStackC[4] = false; +} +if( activeMaskStackC[4] == true ) { +// 0 +R127i.x = uf_uniformRegisterVS[2].x & 0x00000020; +R127i.y = uf_uniformRegisterVS[2].x & 0x00000010; +PV0i.y = R127i.y; +R125i.z = uf_uniformRegisterVS[2].x & 0x00000004; +PV0i.w = uf_uniformRegisterVS[2].x & 0x00010000; +// 1 +R123i.x = ((PV0i.w == 0)?(R2i.y):(R3i.y)); +PV1i.x = R123i.x; +R123i.z = ((PV0i.w == 0)?(R2i.x):(R3i.x)); +PV1i.z = R123i.z; +R125i.w = uf_uniformRegisterVS[2].x & 0x00000008; +R127i.z = ((PV0i.y == 0)?(R5i.y):(R5i.y)); +PS1i = R127i.z; +// 2 +R0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.x), intBitsToFloat(PV1i.z))); +PV0i.x = R0i.x; +PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS1i), intBitsToFloat(PV1i.x))); +R126i.z = floatBitsToInt(-(intBitsToFloat(PV1i.z)) + 1.0); +R127i.w = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + 1.0); +// 3 +R123i.z = ((R127i.x == 0)?(R127i.z):(PV0i.y)); +PV1i.z = R123i.z; +R123i.w = ((R127i.y == 0)?(R5i.x):(PV0i.x)); +PV1i.w = R123i.w; +// 4 +backupReg0i = R127i.x; +R127i.x = ((R125i.z == 0)?(PV1i.z):(PV1i.z)); +PV0i.x = R127i.x; +R126i.w = ((backupReg0i == 0)?(PV1i.w):(PV1i.w)); +PV0i.w = R126i.w; +// 5 +R126i.x = floatBitsToInt(intBitsToFloat(PV0i.x) + intBitsToFloat(R127i.w)); +PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.w) + intBitsToFloat(R126i.z)); +// 6 +R123i.y = ((R125i.z == 0)?(R126i.w):(PV1i.z)); +PV0i.y = R123i.y; +// 7 +R5i.x = ((R125i.w == 0)?(PV0i.y):(PV0i.y)); +R5i.y = ((R125i.w == 0)?(R127i.x):(R126i.x)); +} +activeMaskStackC[3] = activeMaskStack[2] == true && activeMaskStackC[2] == true; +if( activeMaskStackC[3] == true ) { +// 0 +R0i.x = floatBitsToInt(-(intBitsToFloat(R5i.x)) + 1.0); +PV0i.x = R0i.x; +PV0i.y = uf_uniformRegisterVS[2].x & 0x00020000; +R127i.z = uf_uniformRegisterVS[2].x & 0x00040000; +R126i.w = uf_uniformRegisterVS[2].x & 0x00010000; +// 1 +R123i.x = ((PV0i.y == 0)?(R5i.x):(PV0i.x)); +PV1i.x = R123i.x; +R127i.w = ((PV0i.y == 0)?(R5i.y):(R5i.y)); +PV1i.w = R127i.w; +// 2 +R127i.x = ((R127i.z == 0)?(PV1i.x):(PV1i.x)); +PV0i.y = floatBitsToInt(-(intBitsToFloat(PV1i.w)) + 1.0); +// 3 +R123i.w = ((R127i.z == 0)?(R127i.w):(PV0i.y)); +PV1i.w = R123i.w; +// 4 +R5i.x = ((R126i.w == 0)?(R127i.x):(PV1i.w)); +R5i.y = ((R126i.w == 0)?(PV1i.w):(R127i.x)); +} +activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; +if( activeMaskStackC[1] == true ) { +// 0 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R5i.x),intBitsToFloat(R5i.y),intBitsToFloat(R5i.z),intBitsToFloat(R5i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[18].x),intBitsToFloat(uf_uniformRegisterVS[18].y),intBitsToFloat(uf_uniformRegisterVS[18].z),intBitsToFloat(uf_uniformRegisterVS[18].w)))); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +// 1 +PV1i.x = PV0i.x; +R0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.y), intBitsToFloat(uf_uniformRegisterVS[0].y))); +R0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.z), intBitsToFloat(uf_uniformRegisterVS[0].z))); +R1i.w = PV0i.x; +R0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.x), intBitsToFloat(uf_uniformRegisterVS[0].x))); +PS1i = R0i.x; +// 2 +R1i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R5i.x),intBitsToFloat(R5i.y),intBitsToFloat(R5i.z),intBitsToFloat(R5i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[17].x),intBitsToFloat(uf_uniformRegisterVS[17].y),intBitsToFloat(uf_uniformRegisterVS[17].z),intBitsToFloat(uf_uniformRegisterVS[17].w)))); +PV0i.x = R1i.x; +PV0i.y = R1i.x; +PV0i.z = R1i.x; +PV0i.w = R1i.x; +R1i.y = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + 1.0); +PS0i = R1i.y; +// 3 +R0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.w), intBitsToFloat(uf_uniformRegisterVS[0].w))); +} +// export +gl_Position = vec4(intBitsToFloat(R4i.x), intBitsToFloat(R4i.y), intBitsToFloat(R4i.z), 0.0); +// export +passParameterSem0 = vec4(intBitsToFloat(R0i.x), intBitsToFloat(R0i.y), intBitsToFloat(R0i.z), intBitsToFloat(R0i.w)); +// export +passParameterSem1 = vec4(intBitsToFloat(R6i.x), intBitsToFloat(R6i.y), intBitsToFloat(R6i.x), intBitsToFloat(R6i.w)); +// export +passParameterSem2 = vec4(intBitsToFloat(R7i.x), intBitsToFloat(R7i.y), intBitsToFloat(R7i.x), intBitsToFloat(R7i.w)); +// export +passParameterSem3 = vec4(intBitsToFloat(R1i.x), intBitsToFloat(R1i.y), intBitsToFloat(R1i.x), intBitsToFloat(R1i.w)); +} diff --git a/Enhancement/BreathOfTheWild_CleanCameraRune/Presets/Minimal-Preset/156a8a37bc669fec_0000000000001e49_ps.txt b/Enhancement/BreathOfTheWild_CleanCameraRune/Presets/Minimal-Preset/156a8a37bc669fec_0000000000001e49_ps.txt new file mode 100644 index 00000000..5e79235e --- /dev/null +++ b/Enhancement/BreathOfTheWild_CleanCameraRune/Presets/Minimal-Preset/156a8a37bc669fec_0000000000001e49_ps.txt @@ -0,0 +1,102 @@ +#version 420 +#extension GL_ARB_texture_gather : enable +// shader 156a8a37bc669fec +// Used for: Black transparent tint edge +uniform ivec4 uf_remappedPS[5]; +layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0x22456000 res 128x128x1 dim 1 tm: 4 format 0035 compSel: 0 0 0 1 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 0 0 2 border: 0 +layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0x22572000 res 256x256x1 dim 1 tm: 4 format 0034 compSel: 0 0 0 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 1 1 2 border: 0 +layout(binding = 2) uniform sampler2D textureUnitPS2;// Tex2 addr 0x23c69000 res 128x128x1 dim 1 tm: 4 format 0034 compSel: 5 5 5 0 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler2 ClampX/Y/Z: 2 2 2 border: 0 +layout(location = 0) in vec4 passParameterSem1; +layout(location = 1) in vec4 passParameterSem0; +layout(location = 2) in vec4 passParameterSem2; +layout(location = 0) out vec4 passPixelColor0; +uniform vec2 uf_fragCoordScale; +int clampFI32(int v) +{ +if( v == 0x7FFFFFFF ) + return floatBitsToInt(1.0); +else if( v == 0xFFFFFFFF ) + return floatBitsToInt(0.0); +return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); +} +float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } +void main() +{ +ivec4 R0i = ivec4(0); +ivec4 R1i = ivec4(0); +ivec4 R2i = ivec4(0); +ivec4 R3i = ivec4(0); +ivec4 R4i = ivec4(0); +ivec4 R123i = ivec4(0); +ivec4 R127i = ivec4(0); +int backupReg0i, backupReg1i, backupReg2i, backupReg3i, backupReg4i; +ivec4 PV0i = ivec4(0), PV1i = ivec4(0); +int PS0i = 0, PS1i = 0; +ivec4 tempi = ivec4(0); +float tempResultf; +int tempResulti; +ivec4 ARi = ivec4(0); +bool predResult = true; +vec3 cubeMapSTM; +int cubeMapFaceId; +R0i = floatBitsToInt(passParameterSem1); +R1i = floatBitsToInt(passParameterSem0); +R2i = floatBitsToInt(passParameterSem2); +R0i.xyzw = floatBitsToInt(texture(textureUnitPS1, intBitsToFloat(R0i.xy)).xyzw); +R4i.xyzw = floatBitsToInt(texture(textureUnitPS2, intBitsToFloat(R2i.xy)).xyzw); +// 0 +R3i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.x), intBitsToFloat(R4i.w))); +R3i.y = floatBitsToInt(-(intBitsToFloat(R4i.w)) + 1.0); +R3i.z = uf_remappedPS[0].x & 0x00008000; +R127i.w = 0x3f800000; +PV0i.w = R127i.w; +R1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.y), intBitsToFloat(R4i.w))); +PS0i = R1i.w; +// 1 +backupReg0i = R0i.x; +backupReg1i = R0i.y; +backupReg2i = R0i.z; +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),intBitsToFloat(backupReg2i),intBitsToFloat(PV0i.w)),vec4(intBitsToFloat(uf_remappedPS[1].x),intBitsToFloat(uf_remappedPS[1].y),intBitsToFloat(uf_remappedPS[1].z),intBitsToFloat(uf_remappedPS[1].w)))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.z), intBitsToFloat(R4i.w))); +PS1i = R1i.z; +// 2 +backupReg0i = R0i.x; +backupReg1i = R0i.y; +backupReg2i = R0i.z; +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),intBitsToFloat(backupReg2i),intBitsToFloat(R127i.w)),vec4(intBitsToFloat(uf_remappedPS[2].x),intBitsToFloat(uf_remappedPS[2].y),intBitsToFloat(uf_remappedPS[2].z),intBitsToFloat(uf_remappedPS[2].w)))); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +R2i.x = floatBitsToInt(intBitsToFloat(R1i.x) + intBitsToFloat(PV1i.x)); +PS0i = R2i.x; +// 3 +R2i.y = floatBitsToInt(intBitsToFloat(R1i.y) + intBitsToFloat(PV0i.x)); +R2i.xyzw = floatBitsToInt(texture(textureUnitPS0, intBitsToFloat(R2i.xy)).xyzw); +// 0 +backupReg0i = R0i.w; +R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.y),intBitsToFloat(R3i.y)) + intBitsToFloat(R1i.w))); +PV0i.x = R123i.x; +R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.x),intBitsToFloat(R3i.y)) + intBitsToFloat(R3i.x))); +PV0i.y = R123i.y; +R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.z),intBitsToFloat(R3i.y)) + intBitsToFloat(R1i.z))); +PV0i.w = floatBitsToInt(min(intBitsToFloat(backupReg0i), intBitsToFloat(R2i.w))); +// 1 +R4i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.y),intBitsToFloat(uf_remappedPS[3].x)) + intBitsToFloat(uf_remappedPS[4].x))); +PV1i.y = floatBitsToInt(min(intBitsToFloat(PV0i.w), intBitsToFloat(R4i.w))); +PV1i.z = floatBitsToInt(max(intBitsToFloat(PV0i.w), intBitsToFloat(R4i.w))); +R4i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),intBitsToFloat(uf_remappedPS[3].y)) + intBitsToFloat(uf_remappedPS[4].y))); +PS1i = R4i.y; +// 2 +R123i.x = ((R3i.z == 0)?(PV1i.z):(PV1i.y)); +PV0i.x = R123i.x; +R4i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(uf_remappedPS[3].z)) + intBitsToFloat(uf_remappedPS[4].z))); +// 3 +R4i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),intBitsToFloat(uf_remappedPS[3].w)) + intBitsToFloat(uf_remappedPS[4].w))); +// export +passPixelColor0 = vec4(intBitsToFloat(R4i.x), intBitsToFloat(R4i.y), intBitsToFloat(R4i.z), 0.0); +} diff --git a/Enhancement/BreathOfTheWild_CleanCameraRune/Presets/Minimal-Preset/5431383136d7b11b_0000000000000000_vs.txt b/Enhancement/BreathOfTheWild_CleanCameraRune/Presets/Minimal-Preset/5431383136d7b11b_0000000000000000_vs.txt new file mode 100644 index 00000000..f3a6d204 --- /dev/null +++ b/Enhancement/BreathOfTheWild_CleanCameraRune/Presets/Minimal-Preset/5431383136d7b11b_0000000000000000_vs.txt @@ -0,0 +1,1421 @@ +#version 420 +#extension GL_ARB_texture_gather : enable +#extension GL_ARB_shading_language_packing : enable +// shader 5431383136d7b11b +// Used for: Main Lines +uniform ivec4 uf_uniformRegisterVS[256]; +uniform vec2 uf_windowSpaceToClipSpaceTransform; +layout(location = 0) in uvec4 attrDataSem0; +out gl_PerVertex +{ + vec4 gl_Position; + float gl_PointSize; +}; +layout(location = 0) out vec4 passParameterSem0; +layout(location = 2) out vec4 passParameterSem1; +layout(location = 1) out vec4 passParameterSem2; +layout(location = 3) out vec4 passParameterSem3; +int clampFI32(int v) +{ +if( v == 0x7FFFFFFF ) + return floatBitsToInt(1.0); +else if( v == 0xFFFFFFFF ) + return floatBitsToInt(0.0); +return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); +} +float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } +void main() +{ +ivec4 R0i = ivec4(0); +ivec4 R1i = ivec4(0); +ivec4 R2i = ivec4(0); +ivec4 R3i = ivec4(0); +ivec4 R4i = ivec4(0); +ivec4 R5i = ivec4(0); +ivec4 R6i = ivec4(0); +ivec4 R7i = ivec4(0); +ivec4 R8i = ivec4(0); +ivec4 R9i = ivec4(0); +ivec4 R122i = ivec4(0); +ivec4 R123i = ivec4(0); +ivec4 R124i = ivec4(0); +ivec4 R125i = ivec4(0); +ivec4 R126i = ivec4(0); +ivec4 R127i = ivec4(0); +uvec4 attrDecoder; +int backupReg0i, backupReg1i, backupReg2i, backupReg3i, backupReg4i; +ivec4 PV0i = ivec4(0), PV1i = ivec4(0); +int PS0i = 0, PS1i = 0; +ivec4 tempi = ivec4(0); +float tempResultf; +int tempResulti; +ivec4 ARi = ivec4(0); +bool predResult = true; +bool activeMaskStack[14]; +bool activeMaskStackC[15]; +activeMaskStack[0] = false; +activeMaskStack[1] = false; +activeMaskStack[2] = false; +activeMaskStack[3] = false; +activeMaskStack[4] = false; +activeMaskStack[5] = false; +activeMaskStack[6] = false; +activeMaskStack[7] = false; +activeMaskStack[8] = false; +activeMaskStack[9] = false; +activeMaskStack[10] = false; +activeMaskStack[11] = false; +activeMaskStack[12] = false; +activeMaskStackC[0] = false; +activeMaskStackC[1] = false; +activeMaskStackC[2] = false; +activeMaskStackC[3] = false; +activeMaskStackC[4] = false; +activeMaskStackC[5] = false; +activeMaskStackC[6] = false; +activeMaskStackC[7] = false; +activeMaskStackC[8] = false; +activeMaskStackC[9] = false; +activeMaskStackC[10] = false; +activeMaskStackC[11] = false; +activeMaskStackC[12] = false; +activeMaskStackC[13] = false; +activeMaskStack[0] = true; +activeMaskStackC[0] = true; +activeMaskStackC[1] = true; +vec3 cubeMapSTM; +int cubeMapFaceId; +R0i = ivec4(gl_VertexID, 0, 0, gl_InstanceID); +attrDecoder.xy = attrDataSem0.xy; +attrDecoder.xy = (attrDecoder.xy>>24)|((attrDecoder.xy>>8)&0xFF00)|((attrDecoder.xy<<8)&0xFF0000)|((attrDecoder.xy<<24)); +attrDecoder.z = 0; +attrDecoder.w = 0; +R1i = ivec4(int(attrDecoder.x), int(attrDecoder.y), floatBitsToInt(0.0), floatBitsToInt(1.0)); +if( activeMaskStackC[1] == true ) { +activeMaskStack[1] = activeMaskStack[0]; +activeMaskStackC[2] = activeMaskStackC[1]; +// 0 +PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), intBitsToFloat(uf_uniformRegisterVS[19].x))); +R0i.y = floatBitsToInt(-(intBitsToFloat(R1i.y))); +PV0i.y = R0i.y; +R1i.z = 0; +R1i.w = 0x3f800000; +R127i.w = floatBitsToInt(1.0); +PS0i = R127i.w; +// 1 +R0i.x = floatBitsToInt(intBitsToFloat(PV0i.x) + intBitsToFloat(uf_uniformRegisterVS[19].z)); +PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(uf_uniformRegisterVS[19].y))); +// 2 +R0i.y = floatBitsToInt(intBitsToFloat(PV1i.z) + intBitsToFloat(uf_uniformRegisterVS[19].w)); +PV0i.y = R0i.y; +R0i.w = uf_uniformRegisterVS[2].x & 0x40000000; +// 3 +R127i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(R1i.z),intBitsToFloat(R1i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[4].x),intBitsToFloat(uf_uniformRegisterVS[4].y),intBitsToFloat(uf_uniformRegisterVS[4].z),intBitsToFloat(uf_uniformRegisterVS[4].w)))); +PV1i.x = R127i.x; +PV1i.y = R127i.x; +PV1i.z = R127i.x; +PV1i.w = R127i.x; +// 4 +backupReg0i = R0i.x; +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(R0i.y),intBitsToFloat(R1i.z),intBitsToFloat(R1i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[5].x),intBitsToFloat(uf_uniformRegisterVS[5].y),intBitsToFloat(uf_uniformRegisterVS[5].z),intBitsToFloat(uf_uniformRegisterVS[5].w)))); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +R127i.y = tempi.x; +// 5 +backupReg0i = R0i.x; +backupReg1i = R0i.y; +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),intBitsToFloat(R1i.z),intBitsToFloat(R1i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[6].x),intBitsToFloat(uf_uniformRegisterVS[6].y),intBitsToFloat(uf_uniformRegisterVS[6].z),intBitsToFloat(uf_uniformRegisterVS[6].w)))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R127i.z = tempi.x; +// 6 +R4i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R127i.x),intBitsToFloat(R127i.y),intBitsToFloat(PV1i.x),intBitsToFloat(R127i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[8].x),intBitsToFloat(uf_uniformRegisterVS[8].y),intBitsToFloat(uf_uniformRegisterVS[8].z),intBitsToFloat(uf_uniformRegisterVS[8].w)))); +PV0i.x = R4i.x; +PV0i.y = R4i.x; +PV0i.z = R4i.x; +PV0i.w = R4i.x; +// 7 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R127i.x),intBitsToFloat(R127i.y),intBitsToFloat(R127i.z),intBitsToFloat(R127i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[9].x),intBitsToFloat(uf_uniformRegisterVS[9].y),intBitsToFloat(uf_uniformRegisterVS[9].z),intBitsToFloat(uf_uniformRegisterVS[9].w)))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R4i.y = tempi.x; +// 8 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R127i.x),intBitsToFloat(R127i.y),intBitsToFloat(R127i.z),intBitsToFloat(R127i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[10].x),intBitsToFloat(uf_uniformRegisterVS[10].y),intBitsToFloat(uf_uniformRegisterVS[10].z),intBitsToFloat(uf_uniformRegisterVS[10].w)))); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +R4i.z = tempi.x; +// 9 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R127i.x),intBitsToFloat(R127i.y),intBitsToFloat(R127i.z),intBitsToFloat(R127i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[11].x),intBitsToFloat(uf_uniformRegisterVS[11].y),intBitsToFloat(uf_uniformRegisterVS[11].z),intBitsToFloat(uf_uniformRegisterVS[11].w)))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R4i.w = tempi.x; +// 10 +R2i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_uniformRegisterVS[19].x), intBitsToFloat(uf_uniformRegisterVS[12].x))); +R2i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_uniformRegisterVS[19].y), intBitsToFloat(uf_uniformRegisterVS[12].y))); +R3i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_uniformRegisterVS[19].x), intBitsToFloat(uf_uniformRegisterVS[12].y))); +PS0i = R3i.x; +// 11 +R3i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_uniformRegisterVS[19].y), intBitsToFloat(uf_uniformRegisterVS[12].x))); +// 12 +predResult = (0 != R0i.w); +activeMaskStack[1] = predResult; +activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; +} +else { +activeMaskStack[1] = false; +activeMaskStackC[2] = false; +} +if( activeMaskStackC[2] == true ) { +activeMaskStack[2] = activeMaskStack[1]; +activeMaskStackC[3] = activeMaskStackC[2]; +// 0 +R0i.z = uf_uniformRegisterVS[2].x & 0x00000002; +// 1 +predResult = (0 != R0i.z); +activeMaskStack[2] = predResult; +activeMaskStackC[3] = predResult == true && activeMaskStackC[2] == true; +} +else { +activeMaskStack[2] = false; +activeMaskStackC[3] = false; +} +if( activeMaskStackC[3] == true ) { +// 0 +backupReg0i = R1i.y; +R1i.y = backupReg0i; +PV0i.y = R1i.y; +R0i.z = 0; +PV0i.z = R0i.z; +R0i.w = 0x3f800000; +PV0i.w = R0i.w; +// 1 +R6i.xyz = ivec3(R1i.x,PV0i.y,PV0i.z); +PV1i.x = R6i.x; +PV1i.y = R6i.y; +PV1i.z = R6i.z; +R6i.w = PV0i.w; +PV1i.w = R6i.w; +// 2 +R7i.xyz = ivec3(PV1i.x,PV1i.y,PV1i.z); +PV0i.x = R7i.x; +PV0i.y = R7i.y; +PV0i.z = R7i.z; +R7i.w = PV1i.w; +PV0i.w = R7i.w; +// 3 +R5i.xyz = ivec3(PV0i.x,PV0i.y,PV0i.z); +R5i.w = PV0i.w; +} +activeMaskStack[2] = activeMaskStack[2] == false; +activeMaskStackC[3] = activeMaskStack[2] == true && activeMaskStackC[2] == true; +if( activeMaskStackC[3] == true ) { +// 0 +PS0i = int(intBitsToFloat(R1i.y)); +// 1 +PV1i.x = PS0i << int(1); +PS1i = int(intBitsToFloat(R1i.x)); +// 2 +R124i.z = PV1i.x + PS1i; +PV0i.z = R124i.z; +// 3 +R127i.x = (PV0i.z == 0x00000002)?int(0xFFFFFFFF):int(0x0); +PV1i.x = R127i.x; +R127i.y = (PV0i.z == 0x00000002)?int(0xFFFFFFFF):int(0x0); +R127i.z = (PV0i.z == 0x00000002)?int(0xFFFFFFFF):int(0x0); +R126i.w = (PV0i.z == int(1))?int(0xFFFFFFFF):int(0x0); +R124i.w = (PV0i.z == int(1))?int(0xFFFFFFFF):int(0x0); +PS1i = R124i.w; +// 4 +R124i.y = (R124i.z == int(1))?int(0xFFFFFFFF):int(0x0); +R126i.z = ((PV1i.x == 0)?(uf_uniformRegisterVS[27].y):(uf_uniformRegisterVS[26].y)); +R127i.w = ((PV1i.x == 0)?(uf_uniformRegisterVS[27].x):(uf_uniformRegisterVS[26].x)); +// 5 +backupReg0i = R127i.x; +backupReg0i = R127i.x; +R127i.x = ((backupReg0i == 0)?(uf_uniformRegisterVS[27].w):(uf_uniformRegisterVS[26].w)); +R126i.y = ((backupReg0i == 0)?(uf_uniformRegisterVS[27].z):(uf_uniformRegisterVS[26].z)); +// 6 +R126i.x = ((R127i.z == 0)?(uf_uniformRegisterVS[31].y):(uf_uniformRegisterVS[30].y)); +R125i.y = ((R127i.z == 0)?(uf_uniformRegisterVS[31].x):(uf_uniformRegisterVS[30].x)); +// 7 +backupReg0i = R127i.z; +backupReg0i = R127i.z; +R127i.z = ((backupReg0i == 0)?(uf_uniformRegisterVS[31].w):(uf_uniformRegisterVS[30].w)); +R125i.w = ((backupReg0i == 0)?(uf_uniformRegisterVS[31].z):(uf_uniformRegisterVS[30].z)); +// 8 +R125i.z = ((R127i.y == 0)?(uf_uniformRegisterVS[35].y):(uf_uniformRegisterVS[34].y)); +R0i.w = ((R127i.y == 0)?(uf_uniformRegisterVS[35].x):(uf_uniformRegisterVS[34].x)); +// 9 +backupReg0i = R127i.y; +R125i.x = ((R127i.y == 0)?(uf_uniformRegisterVS[35].w):(uf_uniformRegisterVS[34].w)); +R127i.y = ((backupReg0i == 0)?(uf_uniformRegisterVS[35].z):(uf_uniformRegisterVS[34].z)); +// 10 +backupReg0i = R127i.x; +backupReg1i = R126i.y; +backupReg2i = R126i.z; +backupReg3i = R127i.w; +R127i.x = ((R126i.w == 0)?(backupReg0i):(uf_uniformRegisterVS[25].w)); +R126i.y = ((R126i.w == 0)?(backupReg1i):(uf_uniformRegisterVS[25].z)); +R126i.z = ((R126i.w == 0)?(backupReg2i):(uf_uniformRegisterVS[25].y)); +R127i.w = ((R126i.w == 0)?(backupReg3i):(uf_uniformRegisterVS[25].x)); +// 11 +backupReg0i = R126i.x; +backupReg1i = R125i.y; +backupReg2i = R127i.z; +backupReg3i = R125i.w; +R126i.x = ((R124i.w == 0)?(backupReg0i):(uf_uniformRegisterVS[29].y)); +R125i.y = ((R124i.w == 0)?(backupReg1i):(uf_uniformRegisterVS[29].x)); +R127i.z = ((R124i.w == 0)?(backupReg2i):(uf_uniformRegisterVS[29].w)); +R125i.w = ((R124i.w == 0)?(backupReg3i):(uf_uniformRegisterVS[29].z)); +// 12 +backupReg0i = R125i.x; +backupReg1i = R127i.y; +backupReg2i = R125i.z; +R125i.x = ((R124i.y == 0)?(backupReg0i):(uf_uniformRegisterVS[33].w)); +R127i.y = ((R124i.y == 0)?(backupReg1i):(uf_uniformRegisterVS[33].z)); +R125i.z = ((R124i.y == 0)?(backupReg2i):(uf_uniformRegisterVS[33].y)); +R124i.w = ((R124i.y == 0)?(R0i.w):(uf_uniformRegisterVS[33].x)); +// 13 +R6i.x = ((R124i.z == 0)?(uf_uniformRegisterVS[24].x):(R127i.w)); +R6i.y = ((R124i.z == 0)?(uf_uniformRegisterVS[24].y):(R126i.z)); +R6i.z = ((R124i.z == 0)?(uf_uniformRegisterVS[24].z):(R126i.y)); +R6i.w = ((R124i.z == 0)?(uf_uniformRegisterVS[24].w):(R127i.x)); +// 14 +R7i.x = ((R124i.z == 0)?(uf_uniformRegisterVS[28].x):(R125i.y)); +R7i.y = ((R124i.z == 0)?(uf_uniformRegisterVS[28].y):(R126i.x)); +R7i.z = ((R124i.z == 0)?(uf_uniformRegisterVS[28].z):(R125i.w)); +R7i.w = ((R124i.z == 0)?(uf_uniformRegisterVS[28].w):(R127i.z)); +// 15 +R5i.x = ((R124i.z == 0)?(uf_uniformRegisterVS[32].x):(R124i.w)); +R5i.y = ((R124i.z == 0)?(uf_uniformRegisterVS[32].y):(R125i.z)); +R5i.z = ((R124i.z == 0)?(uf_uniformRegisterVS[32].z):(R127i.y)); +R5i.w = ((R124i.z == 0)?(uf_uniformRegisterVS[32].w):(R125i.x)); +} +activeMaskStackC[2] = activeMaskStack[1] == true && activeMaskStackC[1] == true; +if( activeMaskStackC[2] == true ) { +// 0 +R8i.xyz = ivec3(0x437f0000,0x437f0000,0x437f0000); +R8i.w = 0x437f0000; +} +activeMaskStack[1] = activeMaskStack[1] == false; +activeMaskStackC[2] = activeMaskStack[1] == true && activeMaskStackC[1] == true; +if( activeMaskStackC[2] == true ) { +activeMaskStack[2] = activeMaskStack[1]; +activeMaskStackC[3] = activeMaskStackC[2]; +// 0 +PV0i.x = uf_uniformRegisterVS[2].x >> 0x00000008; +R5i.y = uf_uniformRegisterVS[2].x & 0x00000002; +// 1 +R0i.z = PV0i.x & 0x0000000f; +// 2 +predResult = (0 != R5i.y); +activeMaskStack[2] = predResult; +activeMaskStackC[3] = predResult == true && activeMaskStackC[2] == true; +} +else { +activeMaskStack[2] = false; +activeMaskStackC[3] = false; +} +if( activeMaskStackC[3] == true ) { +activeMaskStack[3] = activeMaskStack[2]; +activeMaskStackC[4] = activeMaskStackC[3]; +// 0 +R6i.y = R1i.y; +R3i.z = 0; +R0i.w = 0x3f800000; +PS0i = floatBitsToInt(1.0 / intBitsToFloat(uf_uniformRegisterVS[7].x)); +// 1 +R5i.x = floatBitsToInt(intBitsToFloat(PS0i) * intBitsToFloat(uf_uniformRegisterVS[1].x)); +PV1i.x = R5i.x; +R5i.y = floatBitsToInt(intBitsToFloat(PS0i) * intBitsToFloat(uf_uniformRegisterVS[1].y)); +PS1i = floatBitsToInt(1.0 / intBitsToFloat(uf_uniformRegisterVS[7].y)); +// 2 +R6i.x = floatBitsToInt(intBitsToFloat(uf_uniformRegisterVS[1].z) * intBitsToFloat(PS1i)); +PV0i.x = R6i.x; +R7i.y = floatBitsToInt(intBitsToFloat(uf_uniformRegisterVS[1].w) * intBitsToFloat(PS1i)); +R7i.x = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + 1.0); +PS0i = R7i.x; +// 3 +R8i.x = floatBitsToInt(-(intBitsToFloat(R5i.y)) + intBitsToFloat(PS0i)); +R2i.z = floatBitsToInt(-(intBitsToFloat(PV0i.x)) + 1.0); +PV1i.z = R2i.z; +R9i.x = floatBitsToInt(-(intBitsToFloat(R5i.y)) + 1.0); +PS1i = R9i.x; +// 4 +R5i.z = floatBitsToInt(-(intBitsToFloat(R7i.y)) + 1.0); +R2i.w = floatBitsToInt(-(intBitsToFloat(R7i.y)) + intBitsToFloat(PV1i.z)); +// 5 +predResult = (R0i.z == 0); +activeMaskStack[3] = predResult; +activeMaskStackC[4] = predResult == true && activeMaskStackC[3] == true; +} +else { +activeMaskStack[3] = false; +activeMaskStackC[4] = false; +} +if( activeMaskStackC[4] == true ) { +// 0 +backupReg0i = R5i.x; +R5i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), intBitsToFloat(backupReg0i))); +R5i.y = R6i.x; +PV0i.y = R5i.y; +// 1 +R5i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.y), intBitsToFloat(PV0i.y))); +} +activeMaskStack[3] = activeMaskStack[3] == false; +activeMaskStackC[4] = activeMaskStack[3] == true && activeMaskStackC[3] == true; +if( activeMaskStackC[4] == true ) { +activeMaskStack[4] = activeMaskStack[3]; +activeMaskStackC[5] = activeMaskStackC[4]; +// 0 +predResult = (R0i.z == int(1)); +activeMaskStack[4] = predResult; +activeMaskStackC[5] = predResult == true && activeMaskStackC[4] == true; +} +else { +activeMaskStack[4] = false; +activeMaskStackC[5] = false; +} +if( activeMaskStackC[5] == true ) { +// 0 +backupReg0i = R5i.y; +R5i.y = 0; +PV0i.y = R5i.y; +PV0i.z = R6i.x; +PV0i.w = backupReg0i; +// 1 +R5i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(PV0i.w)) + intBitsToFloat(R9i.x))); +R5i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(PV0i.z)) + intBitsToFloat(PV0i.y))); +} +activeMaskStack[4] = activeMaskStack[4] == false; +activeMaskStackC[5] = activeMaskStack[4] == true && activeMaskStackC[4] == true; +if( activeMaskStackC[5] == true ) { +activeMaskStack[5] = activeMaskStack[4]; +activeMaskStackC[6] = activeMaskStackC[5]; +// 0 +predResult = (R0i.z == 0x00000002); +activeMaskStack[5] = predResult; +activeMaskStackC[6] = predResult == true && activeMaskStackC[5] == true; +} +else { +activeMaskStack[5] = false; +activeMaskStackC[6] = false; +} +if( activeMaskStackC[6] == true ) { +// 0 +backupReg0i = R7i.y; +R7i.y = backupReg0i; +PV0i.y = R7i.y; +PV0i.z = R5i.z; +PV0i.w = 0; +// 1 +backupReg0i = R5i.x; +R5i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(backupReg0i)) + intBitsToFloat(PV0i.w))); +R5i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(PV0i.y)) + intBitsToFloat(PV0i.z))); +} +activeMaskStack[5] = activeMaskStack[5] == false; +activeMaskStackC[6] = activeMaskStack[5] == true && activeMaskStackC[5] == true; +if( activeMaskStackC[6] == true ) { +activeMaskStack[6] = activeMaskStack[5]; +activeMaskStackC[7] = activeMaskStackC[6]; +// 0 +predResult = (R0i.z == 0x00000003); +activeMaskStack[6] = predResult; +activeMaskStackC[7] = predResult == true && activeMaskStackC[6] == true; +} +else { +activeMaskStack[6] = false; +activeMaskStackC[7] = false; +} +if( activeMaskStackC[7] == true ) { +// 0 +backupReg0i = R5i.y; +R5i.y = R5i.z; +PV0i.y = R5i.y; +PV0i.z = R7i.y; +PV0i.w = backupReg0i; +// 1 +R5i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(PV0i.w)) + intBitsToFloat(R9i.x))); +R5i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(PV0i.z)) + intBitsToFloat(PV0i.y))); +} +activeMaskStack[6] = activeMaskStack[6] == false; +activeMaskStackC[7] = activeMaskStack[6] == true && activeMaskStackC[6] == true; +if( activeMaskStackC[7] == true ) { +activeMaskStack[7] = activeMaskStack[6]; +activeMaskStackC[8] = activeMaskStackC[7]; +// 0 +predResult = (R0i.z == 0x00000004); +activeMaskStack[7] = predResult; +activeMaskStackC[8] = predResult == true && activeMaskStackC[7] == true; +} +else { +activeMaskStack[7] = false; +activeMaskStackC[8] = false; +} +if( activeMaskStackC[8] == true ) { +// 0 +R5i.y = R2i.w; +PV0i.y = R5i.y; +PV0i.z = R6i.x; +PV0i.w = 0; +// 1 +backupReg0i = R5i.x; +R5i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(backupReg0i)) + intBitsToFloat(PV0i.w))); +R5i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(PV0i.y)) + intBitsToFloat(PV0i.z))); +} +activeMaskStack[7] = activeMaskStack[7] == false; +activeMaskStackC[8] = activeMaskStack[7] == true && activeMaskStackC[7] == true; +if( activeMaskStackC[8] == true ) { +activeMaskStack[8] = activeMaskStack[7]; +activeMaskStackC[9] = activeMaskStackC[8]; +// 0 +predResult = (R0i.z == 0x00000005); +activeMaskStack[8] = predResult; +activeMaskStackC[9] = predResult == true && activeMaskStackC[8] == true; +} +else { +activeMaskStack[8] = false; +activeMaskStackC[9] = false; +} +if( activeMaskStackC[9] == true ) { +// 0 +backupReg0i = R5i.y; +R5i.y = R6i.x; +PV0i.y = R5i.y; +PV0i.z = R2i.w; +PV0i.w = backupReg0i; +// 1 +R5i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(PV0i.w)) + intBitsToFloat(R9i.x))); +R5i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(PV0i.z)) + intBitsToFloat(PV0i.y))); +} +activeMaskStack[8] = activeMaskStack[8] == false; +activeMaskStackC[9] = activeMaskStack[8] == true && activeMaskStackC[8] == true; +if( activeMaskStackC[9] == true ) { +activeMaskStack[9] = activeMaskStack[8]; +activeMaskStackC[10] = activeMaskStackC[9]; +// 0 +predResult = (R0i.z == 0x00000006); +activeMaskStack[9] = predResult; +activeMaskStackC[10] = predResult == true && activeMaskStackC[9] == true; +} +else { +activeMaskStack[9] = false; +activeMaskStackC[10] = false; +} +if( activeMaskStackC[10] == true ) { +// 0 +R5i.y = R6i.x; +PV0i.y = R5i.y; +R7i.y = 0; +PS0i = R7i.y; +// 1 +backupReg0i = R5i.x; +R5i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(R8i.x)) + intBitsToFloat(backupReg0i))); +R5i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(PV0i.y)) + intBitsToFloat(PS0i))); +} +activeMaskStack[9] = activeMaskStack[9] == false; +activeMaskStackC[10] = activeMaskStack[9] == true && activeMaskStackC[9] == true; +if( activeMaskStackC[10] == true ) { +activeMaskStack[10] = activeMaskStack[9]; +activeMaskStackC[11] = activeMaskStackC[10]; +// 0 +predResult = (R0i.z == 0x00000007); +activeMaskStack[10] = predResult; +activeMaskStackC[11] = predResult == true && activeMaskStackC[10] == true; +} +else { +activeMaskStack[10] = false; +activeMaskStackC[11] = false; +} +if( activeMaskStackC[11] == true ) { +// 0 +backupReg0i = R5i.x; +R5i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(R8i.x)) + intBitsToFloat(backupReg0i))); +R5i.y = R7i.y; +PV0i.y = R5i.y; +R7i.y = R5i.z; +PS0i = R7i.y; +// 1 +R5i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(PV0i.y)) + intBitsToFloat(PS0i))); +} +activeMaskStack[10] = activeMaskStack[10] == false; +activeMaskStackC[11] = activeMaskStack[10] == true && activeMaskStackC[10] == true; +if( activeMaskStackC[11] == true ) { +activeMaskStack[11] = activeMaskStack[10]; +activeMaskStackC[12] = activeMaskStackC[11]; +// 0 +predResult = (R0i.z == 0x00000008); +activeMaskStack[11] = predResult; +activeMaskStackC[12] = predResult == true && activeMaskStackC[11] == true; +} +else { +activeMaskStack[11] = false; +activeMaskStackC[12] = false; +} +if( activeMaskStackC[12] == true ) { +// 0 +R5i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), intBitsToFloat(R9i.x))); +R5i.y = R6i.x; +PV0i.y = R5i.y; +// 1 +R5i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.y), intBitsToFloat(PV0i.y))); +} +activeMaskStack[11] = activeMaskStack[11] == false; +activeMaskStackC[12] = activeMaskStack[11] == true && activeMaskStackC[11] == true; +if( activeMaskStackC[12] == true ) { +activeMaskStack[12] = activeMaskStack[11]; +activeMaskStackC[13] = activeMaskStackC[12]; +// 0 +predResult = (R0i.z == 0x00000009); +activeMaskStack[12] = predResult; +activeMaskStackC[13] = predResult == true && activeMaskStackC[12] == true; +} +else { +activeMaskStack[12] = false; +activeMaskStackC[13] = false; +} +if( activeMaskStackC[13] == true ) { +// 0 +backupReg0i = R5i.y; +R5i.y = 0; +PV0i.y = R5i.y; +PV0i.z = R5i.z; +PV0i.w = backupReg0i; +// 1 +R5i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(PV0i.w)) + intBitsToFloat(R9i.x))); +R5i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(PV0i.z)) + intBitsToFloat(PV0i.y))); +} +activeMaskStack[12] = activeMaskStack[12] == false; +activeMaskStackC[13] = activeMaskStack[12] == true && activeMaskStackC[12] == true; +if( activeMaskStackC[13] == true ) { +activeMaskStack[13] = activeMaskStack[12]; +activeMaskStackC[14] = activeMaskStackC[13]; +// 0 +predResult = (R0i.z == 0x0000000a); +activeMaskStack[13] = predResult; +activeMaskStackC[14] = predResult == true && activeMaskStackC[13] == true; +} +else { +activeMaskStack[13] = false; +activeMaskStackC[14] = false; +} +if( activeMaskStackC[14] == true ) { +// 0 +R5i.y = R2i.z; +PV0i.y = R5i.y; +PV0i.z = R6i.x; +PV0i.w = 0; +// 1 +backupReg0i = R5i.x; +R5i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(backupReg0i)) + intBitsToFloat(PV0i.w))); +R5i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(PV0i.y)) + intBitsToFloat(PV0i.z))); +} +activeMaskStack[13] = activeMaskStack[13] == false; +activeMaskStackC[14] = activeMaskStack[13] == true && activeMaskStackC[13] == true; +if( activeMaskStackC[14] == true ) { +// 0 +PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), intBitsToFloat(R9i.x))); +R5i.y = R2i.w; +PV0i.y = R5i.y; +R127i.z = (R0i.z == 0x0000000c)?int(0xFFFFFFFF):int(0x0); +PV0i.z = R127i.z; +R127i.w = (R0i.z == 0x0000000b)?int(0xFFFFFFFF):int(0x0); +// 1 +PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.y), intBitsToFloat(PV0i.y))); +R5i.y = R5i.z; +PV1i.y = R5i.y; +R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(R7i.x)) + intBitsToFloat(R5i.x))); +PV1i.z = R123i.z; +R123i.w = ((PV0i.z == 0)?(0):(PV0i.x)); +PV1i.w = R123i.w; +// 2 +R5i.x = ((R127i.w == 0)?(PV1i.w):(PV1i.z)); +R123i.z = ((R127i.z == 0)?(0):(PV1i.x)); +PV0i.z = R123i.z; +R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(R7i.y)) + intBitsToFloat(PV1i.y))); +PV0i.w = R123i.w; +// 3 +R5i.y = ((R127i.w == 0)?(PV0i.z):(PV0i.w)); +} +activeMaskStackC[13] = activeMaskStack[12] == true && activeMaskStackC[12] == true; +activeMaskStackC[11] = activeMaskStack[10] == true && activeMaskStackC[10] == true; +activeMaskStackC[9] = activeMaskStack[8] == true && activeMaskStackC[8] == true; +activeMaskStackC[7] = activeMaskStack[6] == true && activeMaskStackC[6] == true; +activeMaskStackC[5] = activeMaskStack[4] == true && activeMaskStackC[4] == true; +activeMaskStackC[3] = activeMaskStack[2] == true && activeMaskStackC[2] == true; +if( activeMaskStackC[3] == true ) { +// 0 +R127i.x = floatBitsToInt(-(intBitsToFloat(R5i.y)) + 1.0); +PV0i.x = R127i.x; +R126i.y = floatBitsToInt(-(intBitsToFloat(R5i.x)) + 1.0); +// 1 +PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(uf_uniformRegisterVS[20].w))); +PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(uf_uniformRegisterVS[20].z))); +PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(uf_uniformRegisterVS[20].y))); +PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(uf_uniformRegisterVS[20].x))); +// 2 +R126i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),intBitsToFloat(uf_uniformRegisterVS[22].w)) + intBitsToFloat(PV1i.x))); +R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),intBitsToFloat(uf_uniformRegisterVS[22].z)) + intBitsToFloat(PV1i.y))); +R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),intBitsToFloat(uf_uniformRegisterVS[22].y)) + intBitsToFloat(PV1i.z))); +R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),intBitsToFloat(uf_uniformRegisterVS[22].x)) + intBitsToFloat(PV1i.w))); +PV0i.w = R123i.w; +// 3 +PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(uf_uniformRegisterVS[21].w))); +PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(uf_uniformRegisterVS[21].z))); +PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(uf_uniformRegisterVS[21].y))); +PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(uf_uniformRegisterVS[21].x))); +R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(PV0i.w))); +PS1i = R127i.w; +// 4 +backupReg0i = R127i.z; +R127i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),intBitsToFloat(uf_uniformRegisterVS[23].w)) + intBitsToFloat(PV1i.x))); +R125i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),intBitsToFloat(uf_uniformRegisterVS[23].z)) + intBitsToFloat(PV1i.y))); +R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),intBitsToFloat(uf_uniformRegisterVS[23].y)) + intBitsToFloat(PV1i.z))); +R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),intBitsToFloat(uf_uniformRegisterVS[23].x)) + intBitsToFloat(PV1i.w))); +PV0i.w = R123i.w; +R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(backupReg0i))); +PS0i = R126i.z; +// 5 +PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(R126i.x))); +PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(R127i.y))); +R8i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.x),intBitsToFloat(PV0i.w)) + intBitsToFloat(R127i.w))); +PS1i = R8i.x; +// 6 +R8i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.x),intBitsToFloat(R127i.z)) + intBitsToFloat(R126i.z))); +R8i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.x),intBitsToFloat(R125i.y)) + intBitsToFloat(PV1i.y))); +R8i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.x),intBitsToFloat(R127i.x)) + intBitsToFloat(PV1i.x))); +// 7 +backupReg0i = R6i.y; +R6i.xyz = ivec3(R1i.x,backupReg0i,R3i.z); +PV1i.x = R6i.x; +PV1i.y = R6i.y; +PV1i.z = R6i.z; +R6i.w = R0i.w; +PV1i.w = R6i.w; +// 8 +R7i.xyz = ivec3(PV1i.x,PV1i.y,PV1i.z); +PV0i.x = R7i.x; +PV0i.y = R7i.y; +PV0i.z = R7i.z; +R7i.w = PV1i.w; +PV0i.w = R7i.w; +// 9 +R5i.xyz = ivec3(PV0i.x,PV0i.y,PV0i.z); +R5i.w = PV0i.w; +} +activeMaskStack[2] = activeMaskStack[2] == false; +activeMaskStackC[3] = activeMaskStack[2] == true && activeMaskStackC[2] == true; +if( activeMaskStackC[3] == true ) { +activeMaskStack[3] = activeMaskStack[2]; +activeMaskStackC[4] = activeMaskStackC[3]; +// 0 +PS0i = int(intBitsToFloat(R1i.y)); +// 1 +PV1i.z = PS0i << int(1); +PS1i = int(intBitsToFloat(R1i.x)); +// 2 +R2i.z = PV1i.z + PS1i; +PV0i.z = R2i.z; +// 3 +R127i.x = (PV0i.z == 0x00000002)?int(0xFFFFFFFF):int(0x0); +PV1i.x = R127i.x; +R127i.y = (PV0i.z == 0x00000002)?int(0xFFFFFFFF):int(0x0); +R127i.z = (PV0i.z == 0x00000002)?int(0xFFFFFFFF):int(0x0); +R126i.w = (PV0i.z == int(1))?int(0xFFFFFFFF):int(0x0); +R124i.w = (PV0i.z == int(1))?int(0xFFFFFFFF):int(0x0); +PS1i = R124i.w; +// 4 +R124i.y = (R2i.z == int(1))?int(0xFFFFFFFF):int(0x0); +R126i.z = ((PV1i.x == 0)?(uf_uniformRegisterVS[27].y):(uf_uniformRegisterVS[26].y)); +R127i.w = ((PV1i.x == 0)?(uf_uniformRegisterVS[27].x):(uf_uniformRegisterVS[26].x)); +// 5 +backupReg0i = R127i.x; +backupReg0i = R127i.x; +R127i.x = ((backupReg0i == 0)?(uf_uniformRegisterVS[27].w):(uf_uniformRegisterVS[26].w)); +R126i.y = ((backupReg0i == 0)?(uf_uniformRegisterVS[27].z):(uf_uniformRegisterVS[26].z)); +// 6 +R126i.x = ((R127i.z == 0)?(uf_uniformRegisterVS[31].y):(uf_uniformRegisterVS[30].y)); +R125i.y = ((R127i.z == 0)?(uf_uniformRegisterVS[31].x):(uf_uniformRegisterVS[30].x)); +// 7 +backupReg0i = R127i.z; +backupReg0i = R127i.z; +R127i.z = ((backupReg0i == 0)?(uf_uniformRegisterVS[31].w):(uf_uniformRegisterVS[30].w)); +R125i.w = ((backupReg0i == 0)?(uf_uniformRegisterVS[31].z):(uf_uniformRegisterVS[30].z)); +// 8 +R125i.z = ((R127i.y == 0)?(uf_uniformRegisterVS[35].y):(uf_uniformRegisterVS[34].y)); +R0i.w = ((R127i.y == 0)?(uf_uniformRegisterVS[35].x):(uf_uniformRegisterVS[34].x)); +// 9 +backupReg0i = R127i.y; +R125i.x = ((R127i.y == 0)?(uf_uniformRegisterVS[35].w):(uf_uniformRegisterVS[34].w)); +R127i.y = ((backupReg0i == 0)?(uf_uniformRegisterVS[35].z):(uf_uniformRegisterVS[34].z)); +// 10 +backupReg0i = R127i.x; +backupReg1i = R126i.y; +backupReg2i = R126i.z; +backupReg3i = R127i.w; +R127i.x = ((R126i.w == 0)?(backupReg0i):(uf_uniformRegisterVS[25].w)); +R126i.y = ((R126i.w == 0)?(backupReg1i):(uf_uniformRegisterVS[25].z)); +R126i.z = ((R126i.w == 0)?(backupReg2i):(uf_uniformRegisterVS[25].y)); +R127i.w = ((R126i.w == 0)?(backupReg3i):(uf_uniformRegisterVS[25].x)); +// 11 +backupReg0i = R126i.x; +backupReg1i = R125i.y; +backupReg2i = R127i.z; +backupReg3i = R125i.w; +R126i.x = ((R124i.w == 0)?(backupReg0i):(uf_uniformRegisterVS[29].y)); +R125i.y = ((R124i.w == 0)?(backupReg1i):(uf_uniformRegisterVS[29].x)); +R127i.z = ((R124i.w == 0)?(backupReg2i):(uf_uniformRegisterVS[29].w)); +R125i.w = ((R124i.w == 0)?(backupReg3i):(uf_uniformRegisterVS[29].z)); +// 12 +backupReg0i = R125i.x; +backupReg1i = R127i.y; +backupReg2i = R125i.z; +R125i.x = ((R124i.y == 0)?(backupReg0i):(uf_uniformRegisterVS[33].w)); +R127i.y = ((R124i.y == 0)?(backupReg1i):(uf_uniformRegisterVS[33].z)); +R125i.z = ((R124i.y == 0)?(backupReg2i):(uf_uniformRegisterVS[33].y)); +R124i.w = ((R124i.y == 0)?(R0i.w):(uf_uniformRegisterVS[33].x)); +// 13 +R6i.x = ((R2i.z == 0)?(uf_uniformRegisterVS[24].x):(R127i.w)); +R6i.y = ((R2i.z == 0)?(uf_uniformRegisterVS[24].y):(R126i.z)); +R6i.z = ((R2i.z == 0)?(uf_uniformRegisterVS[24].z):(R126i.y)); +R6i.w = ((R2i.z == 0)?(uf_uniformRegisterVS[24].w):(R127i.x)); +// 14 +R7i.x = ((R2i.z == 0)?(uf_uniformRegisterVS[28].x):(R125i.y)); +R7i.y = ((R2i.z == 0)?(uf_uniformRegisterVS[28].y):(R126i.x)); +R7i.z = ((R2i.z == 0)?(uf_uniformRegisterVS[28].z):(R125i.w)); +R7i.w = ((R2i.z == 0)?(uf_uniformRegisterVS[28].w):(R127i.z)); +// 15 +R5i.x = ((R2i.z == 0)?(uf_uniformRegisterVS[32].x):(R124i.w)); +R5i.y = ((R2i.z == 0)?(uf_uniformRegisterVS[32].y):(R125i.z)); +R5i.z = ((R2i.z == 0)?(uf_uniformRegisterVS[32].z):(R127i.y)); +R5i.w = ((R2i.z == 0)?(uf_uniformRegisterVS[32].w):(R125i.x)); +// 16 +predResult = (R0i.z == 0x0000000d); +activeMaskStack[3] = predResult; +activeMaskStackC[4] = predResult == true && activeMaskStackC[3] == true; +} +else { +activeMaskStack[3] = false; +activeMaskStackC[4] = false; +} +if( activeMaskStackC[4] == true ) { +// 0 +PS0i = floatBitsToInt(1.0 / intBitsToFloat(uf_uniformRegisterVS[7].y)); +// 1 +PV1i.z = floatBitsToInt(intBitsToFloat(uf_uniformRegisterVS[1].w) * intBitsToFloat(PS0i)); +PV1i.w = floatBitsToInt(intBitsToFloat(uf_uniformRegisterVS[1].z) * intBitsToFloat(PS0i)); +PS1i = floatBitsToInt(1.0 / intBitsToFloat(uf_uniformRegisterVS[7].x)); +// 2 +R127i.x = PV1i.z; +R127i.y = PV1i.w; +PV0i.y = R127i.y; +R127i.z = floatBitsToInt(intBitsToFloat(PS1i) * intBitsToFloat(uf_uniformRegisterVS[1].x)); +PV0i.z = R127i.z; +R127i.w = floatBitsToInt(intBitsToFloat(PS1i) * intBitsToFloat(uf_uniformRegisterVS[1].y)); +// 3 +PV1i.z = floatBitsToInt(-(intBitsToFloat(PV0i.y)) + 1.0); +PV1i.w = floatBitsToInt(-(intBitsToFloat(PV0i.z)) + 1.0); +// 4 +PV0i.x = floatBitsToInt(-(intBitsToFloat(R127i.x)) + intBitsToFloat(PV1i.z)); +PV0i.y = floatBitsToInt(-(intBitsToFloat(R127i.w)) + intBitsToFloat(PV1i.w)); +// 5 +backupReg0i = R127i.z; +R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(PV0i.x)) + intBitsToFloat(R127i.y))); +PV1i.z = R127i.z; +R126i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(PV0i.y)) + intBitsToFloat(backupReg0i))); +PV1i.w = R126i.w; +// 6 +R127i.x = floatBitsToInt(-(intBitsToFloat(PV1i.z)) + 1.0); +PV0i.x = R127i.x; +R126i.y = floatBitsToInt(-(intBitsToFloat(PV1i.w)) + 1.0); +// 7 +PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(uf_uniformRegisterVS[20].w))); +PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(uf_uniformRegisterVS[20].z))); +PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(uf_uniformRegisterVS[20].y))); +PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(uf_uniformRegisterVS[20].x))); +// 8 +R126i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(uf_uniformRegisterVS[22].w)) + intBitsToFloat(PV1i.x))); +R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(uf_uniformRegisterVS[22].z)) + intBitsToFloat(PV1i.y))); +R126i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(uf_uniformRegisterVS[22].y)) + intBitsToFloat(PV1i.z))); +R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(uf_uniformRegisterVS[22].x)) + intBitsToFloat(PV1i.w))); +PV0i.w = R123i.w; +// 9 +PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(uf_uniformRegisterVS[21].w))); +PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(uf_uniformRegisterVS[21].z))); +PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(uf_uniformRegisterVS[21].y))); +PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(uf_uniformRegisterVS[21].x))); +R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(PV0i.w))); +PS1i = R127i.w; +// 10 +backupReg0i = R127i.z; +backupReg0i = R127i.z; +backupReg1i = R126i.z; +R127i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(uf_uniformRegisterVS[23].w)) + intBitsToFloat(PV1i.x))); +R125i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(uf_uniformRegisterVS[23].z)) + intBitsToFloat(PV1i.y))); +R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(uf_uniformRegisterVS[23].y)) + intBitsToFloat(PV1i.z))); +R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(uf_uniformRegisterVS[23].x)) + intBitsToFloat(PV1i.w))); +PV0i.w = R123i.w; +R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(backupReg1i))); +PS0i = R126i.z; +// 11 +PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(R126i.x))); +PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(R127i.y))); +R8i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.w),intBitsToFloat(PV0i.w)) + intBitsToFloat(R127i.w))); +PS1i = R8i.x; +// 12 +R8i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.w),intBitsToFloat(R127i.z)) + intBitsToFloat(R126i.z))); +R8i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.w),intBitsToFloat(R125i.y)) + intBitsToFloat(PV1i.y))); +R8i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.w),intBitsToFloat(R127i.x)) + intBitsToFloat(PV1i.x))); +} +activeMaskStack[3] = activeMaskStack[3] == false; +activeMaskStackC[4] = activeMaskStack[3] == true && activeMaskStackC[3] == true; +if( activeMaskStackC[4] == true ) { +// 0 +R127i.x = floatBitsToInt(float(R2i.z)); +PS0i = R127i.x; +// 1 +tempResultf = intBitsToFloat(PS0i); +tempResultf = floor(tempResultf); +tempResultf = clamp(tempResultf, -256.0, 255.0); +ARi.x = int(tempResultf); +PV1i.x = floatBitsToInt(tempResultf); +// 2 +R8i.xyz = ivec3(uf_uniformRegisterVS[ARi.x+20].x,uf_uniformRegisterVS[ARi.x+20].y,uf_uniformRegisterVS[ARi.x+20].z); +R8i.w = uf_uniformRegisterVS[ARi.x+20].w; +} +activeMaskStackC[3] = activeMaskStack[2] == true && activeMaskStackC[2] == true; +activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; +if( activeMaskStackC[1] == true ) { +activeMaskStack[1] = activeMaskStack[0]; +activeMaskStackC[2] = activeMaskStackC[1]; +// 0 +predResult = (0 != uf_uniformRegisterVS[3].x); +activeMaskStack[1] = predResult; +activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; +} +else { +activeMaskStack[1] = false; +activeMaskStackC[2] = false; +} +if( activeMaskStackC[2] == true ) { +// 0 +backupReg0i = R0i.y; +R6i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R0i.x),intBitsToFloat(backupReg0i),intBitsToFloat(R1i.z),intBitsToFloat(R1i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[24].x),intBitsToFloat(uf_uniformRegisterVS[24].y),intBitsToFloat(uf_uniformRegisterVS[24].z),intBitsToFloat(uf_uniformRegisterVS[24].w)))); +PV0i.x = R6i.x; +PV0i.y = R6i.x; +PV0i.z = R6i.x; +PV0i.w = R6i.x; +// 1 +backupReg0i = R0i.x; +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(R0i.y),intBitsToFloat(R1i.z),intBitsToFloat(R1i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[25].x),intBitsToFloat(uf_uniformRegisterVS[25].y),intBitsToFloat(uf_uniformRegisterVS[25].z),intBitsToFloat(uf_uniformRegisterVS[25].w)))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R6i.y = tempi.x; +// 2 +backupReg0i = R0i.x; +backupReg1i = R0i.y; +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),intBitsToFloat(R1i.z),intBitsToFloat(R1i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[26].x),intBitsToFloat(uf_uniformRegisterVS[26].y),intBitsToFloat(uf_uniformRegisterVS[26].z),intBitsToFloat(uf_uniformRegisterVS[26].w)))); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +R6i.z = tempi.x; +// 3 +backupReg0i = R0i.x; +backupReg1i = R0i.y; +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),intBitsToFloat(R1i.z),intBitsToFloat(R1i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[27].x),intBitsToFloat(uf_uniformRegisterVS[27].y),intBitsToFloat(uf_uniformRegisterVS[27].z),intBitsToFloat(uf_uniformRegisterVS[27].w)))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R6i.w = tempi.x; +} +activeMaskStack[1] = activeMaskStack[1] == false; +activeMaskStackC[2] = activeMaskStack[1] == true && activeMaskStackC[1] == true; +if( activeMaskStackC[2] == true ) { +activeMaskStack[2] = activeMaskStack[1]; +activeMaskStackC[3] = activeMaskStackC[2]; +// 0 +R0i.z = uf_uniformRegisterVS[2].x & int(1); +// 1 +predResult = (0 != R0i.z); +activeMaskStack[2] = predResult; +activeMaskStackC[3] = predResult == true && activeMaskStackC[2] == true; +} +else { +activeMaskStack[2] = false; +activeMaskStackC[3] = false; +} +if( activeMaskStackC[3] == true ) { +activeMaskStack[3] = activeMaskStack[2]; +activeMaskStackC[4] = activeMaskStackC[3]; +// 0 +R1i.y = uf_uniformRegisterVS[2].x & 0x00000002; +// 1 +predResult = (0 != R1i.y); +activeMaskStack[3] = predResult; +activeMaskStackC[4] = predResult == true && activeMaskStackC[3] == true; +} +else { +activeMaskStack[3] = false; +activeMaskStackC[4] = false; +} +if( activeMaskStackC[4] == true ) { +// 0 +PV0i.x = uf_uniformRegisterVS[2].x & 0x00010000; +R127i.y = uf_uniformRegisterVS[2].x & 0x00000010; +PV0i.y = R127i.y; +R125i.z = uf_uniformRegisterVS[2].x & 0x00000004; +R127i.w = uf_uniformRegisterVS[2].x & 0x00000020; +// 1 +R123i.x = ((PV0i.y == 0)?(R6i.w):(R6i.w)); +PV1i.x = R123i.x; +R123i.y = ((PV0i.y == 0)?(R6i.z):(R6i.z)); +PV1i.y = R123i.y; +R126i.z = ((PV0i.x == 0)?(R2i.y):(R3i.y)); +PV1i.z = R126i.z; +R123i.w = ((PV0i.x == 0)?(R2i.x):(R3i.x)); +PV1i.w = R123i.w; +R127i.z = ((PV0i.y == 0)?(R6i.y):(R6i.y)); +PS1i = R127i.z; +// 2 +R1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.x), intBitsToFloat(PV1i.w))); +PV0i.x = R1i.x; +R126i.y = floatBitsToInt(-(intBitsToFloat(PV1i.w)) + 1.0); +PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS1i), intBitsToFloat(PV1i.z))); +R123i.w = ((R127i.w == 0)?(PV1i.y):(PV1i.y)); +PV0i.w = R123i.w; +R122i.x = ((R127i.w == 0)?(PV1i.x):(PV1i.x)); +PS0i = R122i.x; +// 3 +backupReg0i = R127i.y; +R123i.x = ((R127i.w == 0)?(R127i.z):(PV0i.z)); +PV1i.x = R123i.x; +R127i.y = floatBitsToInt(-(intBitsToFloat(R126i.z)) + 1.0); +R127i.z = ((R125i.z == 0)?(PV0i.w):(PV0i.w)); +R123i.w = ((backupReg0i == 0)?(R6i.x):(PV0i.x)); +PV1i.w = R123i.w; +R124i.z = ((R125i.z == 0)?(PS0i):(PS0i)); +PS1i = R124i.z; +// 4 +R127i.x = ((R125i.z == 0)?(PV1i.x):(PV1i.x)); +PV0i.x = R127i.x; +R125i.y = ((R127i.w == 0)?(PV1i.w):(PV1i.w)); +PV0i.y = R125i.y; +R126i.z = uf_uniformRegisterVS[2].x & 0x00000008; +// 5 +R126i.x = floatBitsToInt(intBitsToFloat(PV0i.x) + intBitsToFloat(R127i.y)); +PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.y) + intBitsToFloat(R126i.y)); +// 6 +R123i.y = ((R125i.z == 0)?(R125i.y):(PV1i.z)); +PV0i.y = R123i.y; +// 7 +R6i.x = ((R126i.z == 0)?(PV0i.y):(PV0i.y)); +R6i.y = ((R126i.z == 0)?(R127i.x):(R126i.x)); +R6i.z = ((R126i.z == 0)?(R127i.z):(R127i.z)); +// 8 +R6i.w = ((R126i.z == 0)?(R124i.z):(R124i.z)); +} +activeMaskStackC[3] = activeMaskStack[2] == true && activeMaskStackC[2] == true; +if( activeMaskStackC[3] == true ) { +// 0 +R1i.x = floatBitsToInt(-(intBitsToFloat(R6i.x)) + 1.0); +PV0i.x = R1i.x; +R126i.y = uf_uniformRegisterVS[2].x & 0x00010000; +R127i.z = uf_uniformRegisterVS[2].x & 0x00040000; +PV0i.w = uf_uniformRegisterVS[2].x & 0x00020000; +// 1 +R123i.x = ((PV0i.w == 0)?(R6i.z):(R6i.z)); +PV1i.x = R123i.x; +R127i.y = ((PV0i.w == 0)?(R6i.y):(R6i.y)); +PV1i.y = R127i.y; +R123i.z = ((PV0i.w == 0)?(R6i.x):(PV0i.x)); +PV1i.z = R123i.z; +R123i.w = ((PV0i.w == 0)?(R6i.w):(R6i.w)); +PV1i.w = R123i.w; +// 2 +R127i.x = ((R127i.z == 0)?(PV1i.z):(PV1i.z)); +PV0i.y = floatBitsToInt(-(intBitsToFloat(PV1i.y)) + 1.0); +R126i.z = ((R127i.z == 0)?(PV1i.x):(PV1i.x)); +R127i.w = ((R127i.z == 0)?(PV1i.w):(PV1i.w)); +// 3 +R123i.w = ((R127i.z == 0)?(R127i.y):(PV0i.y)); +PV1i.w = R123i.w; +// 4 +R6i.x = ((R126i.y == 0)?(R127i.x):(PV1i.w)); +R6i.y = ((R126i.y == 0)?(PV1i.w):(R127i.x)); +R6i.z = ((R126i.y == 0)?(R126i.z):(R126i.z)); +R6i.w = ((R126i.y == 0)?(R127i.w):(R127i.w)); +} +activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; +if( activeMaskStackC[1] == true ) { +activeMaskStack[1] = activeMaskStack[0]; +activeMaskStackC[2] = activeMaskStackC[1]; +// 0 +R127i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R6i.x),intBitsToFloat(R6i.y),intBitsToFloat(R6i.z),intBitsToFloat(R6i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[14].x),intBitsToFloat(uf_uniformRegisterVS[14].y),intBitsToFloat(uf_uniformRegisterVS[14].z),intBitsToFloat(uf_uniformRegisterVS[14].w)))); +PV0i.x = R127i.x; +PV0i.y = R127i.x; +PV0i.z = R127i.x; +PV0i.w = R127i.x; +// 1 +backupReg0i = R6i.x; +R6i.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(R6i.y),intBitsToFloat(R6i.z),intBitsToFloat(R6i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[13].x),intBitsToFloat(uf_uniformRegisterVS[13].y),intBitsToFloat(uf_uniformRegisterVS[13].z),intBitsToFloat(uf_uniformRegisterVS[13].w)))); +PV1i.x = R6i.x; +PV1i.y = R6i.x; +PV1i.z = R6i.x; +PV1i.w = R6i.x; +R1i.y = PV0i.x; +PS1i = R1i.y; +// 2 +R6i.y = floatBitsToInt(-(intBitsToFloat(PS1i)) + 1.0); +R6i.w = R127i.x; +// 3 +predResult = (0 != uf_uniformRegisterVS[3].y); +activeMaskStack[1] = predResult; +activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; +} +else { +activeMaskStack[1] = false; +activeMaskStackC[2] = false; +} +if( activeMaskStackC[2] == true ) { +// 0 +backupReg0i = R0i.y; +R7i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R0i.x),intBitsToFloat(backupReg0i),intBitsToFloat(R1i.z),intBitsToFloat(R1i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[28].x),intBitsToFloat(uf_uniformRegisterVS[28].y),intBitsToFloat(uf_uniformRegisterVS[28].z),intBitsToFloat(uf_uniformRegisterVS[28].w)))); +PV0i.x = R7i.x; +PV0i.y = R7i.x; +PV0i.z = R7i.x; +PV0i.w = R7i.x; +// 1 +backupReg0i = R0i.x; +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(R0i.y),intBitsToFloat(R1i.z),intBitsToFloat(R1i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[29].x),intBitsToFloat(uf_uniformRegisterVS[29].y),intBitsToFloat(uf_uniformRegisterVS[29].z),intBitsToFloat(uf_uniformRegisterVS[29].w)))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R7i.y = tempi.x; +// 2 +backupReg0i = R0i.x; +backupReg1i = R0i.y; +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),intBitsToFloat(R1i.z),intBitsToFloat(R1i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[30].x),intBitsToFloat(uf_uniformRegisterVS[30].y),intBitsToFloat(uf_uniformRegisterVS[30].z),intBitsToFloat(uf_uniformRegisterVS[30].w)))); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +R7i.z = tempi.x; +// 3 +backupReg0i = R0i.x; +backupReg1i = R0i.y; +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),intBitsToFloat(R1i.z),intBitsToFloat(R1i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[31].x),intBitsToFloat(uf_uniformRegisterVS[31].y),intBitsToFloat(uf_uniformRegisterVS[31].z),intBitsToFloat(uf_uniformRegisterVS[31].w)))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R7i.w = tempi.x; +} +activeMaskStack[1] = activeMaskStack[1] == false; +activeMaskStackC[2] = activeMaskStack[1] == true && activeMaskStackC[1] == true; +if( activeMaskStackC[2] == true ) { +activeMaskStack[2] = activeMaskStack[1]; +activeMaskStackC[3] = activeMaskStackC[2]; +// 0 +R0i.w = uf_uniformRegisterVS[2].x & int(1); +// 1 +predResult = (0 != R0i.w); +activeMaskStack[2] = predResult; +activeMaskStackC[3] = predResult == true && activeMaskStackC[2] == true; +} +else { +activeMaskStack[2] = false; +activeMaskStackC[3] = false; +} +if( activeMaskStackC[3] == true ) { +activeMaskStack[3] = activeMaskStack[2]; +activeMaskStackC[4] = activeMaskStackC[3]; +// 0 +R0i.z = uf_uniformRegisterVS[2].x & 0x00000002; +// 1 +predResult = (0 != R0i.z); +activeMaskStack[3] = predResult; +activeMaskStackC[4] = predResult == true && activeMaskStackC[3] == true; +} +else { +activeMaskStack[3] = false; +activeMaskStackC[4] = false; +} +if( activeMaskStackC[4] == true ) { +// 0 +R127i.x = uf_uniformRegisterVS[2].x & 0x00000020; +R127i.y = uf_uniformRegisterVS[2].x & 0x00000010; +PV0i.y = R127i.y; +R125i.z = uf_uniformRegisterVS[2].x & 0x00000004; +PV0i.w = uf_uniformRegisterVS[2].x & 0x00010000; +// 1 +R123i.x = ((PV0i.w == 0)?(R2i.y):(R3i.y)); +PV1i.x = R123i.x; +R123i.z = ((PV0i.w == 0)?(R2i.x):(R3i.x)); +PV1i.z = R123i.z; +R125i.w = uf_uniformRegisterVS[2].x & 0x00000008; +R127i.z = ((PV0i.y == 0)?(R7i.y):(R7i.y)); +PS1i = R127i.z; +// 2 +R1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R7i.x), intBitsToFloat(PV1i.z))); +PV0i.x = R1i.x; +PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS1i), intBitsToFloat(PV1i.x))); +R126i.z = floatBitsToInt(-(intBitsToFloat(PV1i.z)) + 1.0); +R127i.w = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + 1.0); +// 3 +R123i.z = ((R127i.x == 0)?(R127i.z):(PV0i.y)); +PV1i.z = R123i.z; +R123i.w = ((R127i.y == 0)?(R7i.x):(PV0i.x)); +PV1i.w = R123i.w; +// 4 +backupReg0i = R127i.x; +R127i.x = ((R125i.z == 0)?(PV1i.z):(PV1i.z)); +PV0i.x = R127i.x; +R126i.w = ((backupReg0i == 0)?(PV1i.w):(PV1i.w)); +PV0i.w = R126i.w; +// 5 +R126i.x = floatBitsToInt(intBitsToFloat(PV0i.x) + intBitsToFloat(R127i.w)); +PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.w) + intBitsToFloat(R126i.z)); +// 6 +R123i.y = ((R125i.z == 0)?(R126i.w):(PV1i.z)); +PV0i.y = R123i.y; +// 7 +R7i.x = ((R125i.w == 0)?(PV0i.y):(PV0i.y)); +R7i.y = ((R125i.w == 0)?(R127i.x):(R126i.x)); +} +activeMaskStackC[3] = activeMaskStack[2] == true && activeMaskStackC[2] == true; +if( activeMaskStackC[3] == true ) { +// 0 +R1i.x = floatBitsToInt(-(intBitsToFloat(R7i.x)) + 1.0); +PV0i.x = R1i.x; +PV0i.y = uf_uniformRegisterVS[2].x & 0x00020000; +R127i.z = uf_uniformRegisterVS[2].x & 0x00040000; +R126i.w = uf_uniformRegisterVS[2].x & 0x00010000; +// 1 +R123i.x = ((PV0i.y == 0)?(R7i.x):(PV0i.x)); +PV1i.x = R123i.x; +R127i.w = ((PV0i.y == 0)?(R7i.y):(R7i.y)); +PV1i.w = R127i.w; +// 2 +R127i.x = ((R127i.z == 0)?(PV1i.x):(PV1i.x)); +PV0i.y = floatBitsToInt(-(intBitsToFloat(PV1i.w)) + 1.0); +// 3 +R123i.w = ((R127i.z == 0)?(R127i.w):(PV0i.y)); +PV1i.w = R123i.w; +// 4 +R7i.x = ((R126i.w == 0)?(R127i.x):(PV1i.w)); +R7i.y = ((R126i.w == 0)?(PV1i.w):(R127i.x)); +} +activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; +if( activeMaskStackC[1] == true ) { +activeMaskStack[1] = activeMaskStack[0]; +activeMaskStackC[2] = activeMaskStackC[1]; +// 0 +R127i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R7i.x),intBitsToFloat(R7i.y),intBitsToFloat(R7i.z),intBitsToFloat(R7i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[16].x),intBitsToFloat(uf_uniformRegisterVS[16].y),intBitsToFloat(uf_uniformRegisterVS[16].z),intBitsToFloat(uf_uniformRegisterVS[16].w)))); +PV0i.x = R127i.x; +PV0i.y = R127i.x; +PV0i.z = R127i.x; +PV0i.w = R127i.x; +// 1 +backupReg0i = R7i.x; +R7i.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(R7i.y),intBitsToFloat(R7i.z),intBitsToFloat(R7i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[15].x),intBitsToFloat(uf_uniformRegisterVS[15].y),intBitsToFloat(uf_uniformRegisterVS[15].z),intBitsToFloat(uf_uniformRegisterVS[15].w)))); +PV1i.x = R7i.x; +PV1i.y = R7i.x; +PV1i.z = R7i.x; +PV1i.w = R7i.x; +R1i.y = PV0i.x; +PS1i = R1i.y; +// 2 +R7i.y = floatBitsToInt(-(intBitsToFloat(PS1i)) + 1.0); +R7i.w = R127i.x; +// 3 +predResult = (0 != uf_uniformRegisterVS[3].z); +activeMaskStack[1] = predResult; +activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; +} +else { +activeMaskStack[1] = false; +activeMaskStackC[2] = false; +} +if( activeMaskStackC[2] == true ) { +// 0 +backupReg0i = R0i.y; +R5i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R0i.x),intBitsToFloat(backupReg0i),intBitsToFloat(R1i.z),intBitsToFloat(R1i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[32].x),intBitsToFloat(uf_uniformRegisterVS[32].y),intBitsToFloat(uf_uniformRegisterVS[32].z),intBitsToFloat(uf_uniformRegisterVS[32].w)))); +PV0i.x = R5i.x; +PV0i.y = R5i.x; +PV0i.z = R5i.x; +PV0i.w = R5i.x; +// 1 +backupReg0i = R0i.x; +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(R0i.y),intBitsToFloat(R1i.z),intBitsToFloat(R1i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[33].x),intBitsToFloat(uf_uniformRegisterVS[33].y),intBitsToFloat(uf_uniformRegisterVS[33].z),intBitsToFloat(uf_uniformRegisterVS[33].w)))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R5i.y = tempi.x; +// 2 +backupReg0i = R0i.x; +backupReg1i = R0i.y; +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),intBitsToFloat(R1i.z),intBitsToFloat(R1i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[34].x),intBitsToFloat(uf_uniformRegisterVS[34].y),intBitsToFloat(uf_uniformRegisterVS[34].z),intBitsToFloat(uf_uniformRegisterVS[34].w)))); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +R5i.z = tempi.x; +// 3 +backupReg0i = R0i.x; +backupReg1i = R0i.y; +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),intBitsToFloat(R1i.z),intBitsToFloat(R1i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[35].x),intBitsToFloat(uf_uniformRegisterVS[35].y),intBitsToFloat(uf_uniformRegisterVS[35].z),intBitsToFloat(uf_uniformRegisterVS[35].w)))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R5i.w = tempi.x; +} +activeMaskStack[1] = activeMaskStack[1] == false; +activeMaskStackC[2] = activeMaskStack[1] == true && activeMaskStackC[1] == true; +if( activeMaskStackC[2] == true ) { +activeMaskStack[2] = activeMaskStack[1]; +activeMaskStackC[3] = activeMaskStackC[2]; +// 0 +R0i.x = uf_uniformRegisterVS[2].x & int(1); +// 1 +backupReg0i = R0i.x; +predResult = (0 != backupReg0i); +activeMaskStack[2] = predResult; +activeMaskStackC[3] = predResult == true && activeMaskStackC[2] == true; +} +else { +activeMaskStack[2] = false; +activeMaskStackC[3] = false; +} +if( activeMaskStackC[3] == true ) { +activeMaskStack[3] = activeMaskStack[2]; +activeMaskStackC[4] = activeMaskStackC[3]; +// 0 +R0i.w = uf_uniformRegisterVS[2].x & 0x00000002; +// 1 +predResult = (0 != R0i.w); +activeMaskStack[3] = predResult; +activeMaskStackC[4] = predResult == true && activeMaskStackC[3] == true; +} +else { +activeMaskStack[3] = false; +activeMaskStackC[4] = false; +} +if( activeMaskStackC[4] == true ) { +// 0 +R127i.x = uf_uniformRegisterVS[2].x & 0x00000020; +R127i.y = uf_uniformRegisterVS[2].x & 0x00000010; +PV0i.y = R127i.y; +R125i.z = uf_uniformRegisterVS[2].x & 0x00000004; +PV0i.w = uf_uniformRegisterVS[2].x & 0x00010000; +// 1 +R123i.x = ((PV0i.w == 0)?(R2i.y):(R3i.y)); +PV1i.x = R123i.x; +R123i.z = ((PV0i.w == 0)?(R2i.x):(R3i.x)); +PV1i.z = R123i.z; +R125i.w = uf_uniformRegisterVS[2].x & 0x00000008; +R127i.z = ((PV0i.y == 0)?(R5i.y):(R5i.y)); +PS1i = R127i.z; +// 2 +R0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.x), intBitsToFloat(PV1i.z))); +PV0i.x = R0i.x; +PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS1i), intBitsToFloat(PV1i.x))); +R126i.z = floatBitsToInt(-(intBitsToFloat(PV1i.z)) + 1.0); +R127i.w = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + 1.0); +// 3 +R123i.z = ((R127i.x == 0)?(R127i.z):(PV0i.y)); +PV1i.z = R123i.z; +R123i.w = ((R127i.y == 0)?(R5i.x):(PV0i.x)); +PV1i.w = R123i.w; +// 4 +backupReg0i = R127i.x; +R127i.x = ((R125i.z == 0)?(PV1i.z):(PV1i.z)); +PV0i.x = R127i.x; +R126i.w = ((backupReg0i == 0)?(PV1i.w):(PV1i.w)); +PV0i.w = R126i.w; +// 5 +R126i.x = floatBitsToInt(intBitsToFloat(PV0i.x) + intBitsToFloat(R127i.w)); +PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.w) + intBitsToFloat(R126i.z)); +// 6 +R123i.y = ((R125i.z == 0)?(R126i.w):(PV1i.z)); +PV0i.y = R123i.y; +// 7 +R5i.x = ((R125i.w == 0)?(PV0i.y):(PV0i.y)); +R5i.y = ((R125i.w == 0)?(R127i.x):(R126i.x)); +} +activeMaskStackC[3] = activeMaskStack[2] == true && activeMaskStackC[2] == true; +if( activeMaskStackC[3] == true ) { +// 0 +R0i.x = floatBitsToInt(-(intBitsToFloat(R5i.x)) + 1.0); +PV0i.x = R0i.x; +PV0i.y = uf_uniformRegisterVS[2].x & 0x00020000; +R127i.z = uf_uniformRegisterVS[2].x & 0x00040000; +R126i.w = uf_uniformRegisterVS[2].x & 0x00010000; +// 1 +R123i.x = ((PV0i.y == 0)?(R5i.x):(PV0i.x)); +PV1i.x = R123i.x; +R127i.w = ((PV0i.y == 0)?(R5i.y):(R5i.y)); +PV1i.w = R127i.w; +// 2 +R127i.x = ((R127i.z == 0)?(PV1i.x):(PV1i.x)); +PV0i.y = floatBitsToInt(-(intBitsToFloat(PV1i.w)) + 1.0); +// 3 +R123i.w = ((R127i.z == 0)?(R127i.w):(PV0i.y)); +PV1i.w = R123i.w; +// 4 +R5i.x = ((R126i.w == 0)?(R127i.x):(PV1i.w)); +R5i.y = ((R126i.w == 0)?(PV1i.w):(R127i.x)); +} +activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; +if( activeMaskStackC[1] == true ) { +// 0 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R5i.x),intBitsToFloat(R5i.y),intBitsToFloat(R5i.z),intBitsToFloat(R5i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[18].x),intBitsToFloat(uf_uniformRegisterVS[18].y),intBitsToFloat(uf_uniformRegisterVS[18].z),intBitsToFloat(uf_uniformRegisterVS[18].w)))); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +// 1 +PV1i.x = PV0i.x; +R0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.y), intBitsToFloat(uf_uniformRegisterVS[0].y))); +R0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.z), intBitsToFloat(uf_uniformRegisterVS[0].z))); +R1i.w = PV0i.x; +R0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.x), intBitsToFloat(uf_uniformRegisterVS[0].x))); +PS1i = R0i.x; +// 2 +R1i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R5i.x),intBitsToFloat(R5i.y),intBitsToFloat(R5i.z),intBitsToFloat(R5i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[17].x),intBitsToFloat(uf_uniformRegisterVS[17].y),intBitsToFloat(uf_uniformRegisterVS[17].z),intBitsToFloat(uf_uniformRegisterVS[17].w)))); +PV0i.x = R1i.x; +PV0i.y = R1i.x; +PV0i.z = R1i.x; +PV0i.w = R1i.x; +R1i.y = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + 1.0); +PS0i = R1i.y; +// 3 +R0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.w), intBitsToFloat(uf_uniformRegisterVS[0].w))); +} +// export +gl_Position = vec4(intBitsToFloat(R4i.x), intBitsToFloat(R4i.y), intBitsToFloat(R4i.z), 0.0); +// export +passParameterSem0 = vec4(intBitsToFloat(R0i.x), intBitsToFloat(R0i.y), intBitsToFloat(R0i.z), intBitsToFloat(R0i.w)); +// export +passParameterSem1 = vec4(intBitsToFloat(R6i.x), intBitsToFloat(R6i.y), intBitsToFloat(R6i.x), intBitsToFloat(R6i.w)); +// export +passParameterSem2 = vec4(intBitsToFloat(R7i.x), intBitsToFloat(R7i.y), intBitsToFloat(R7i.x), intBitsToFloat(R7i.w)); +// export +passParameterSem3 = vec4(intBitsToFloat(R1i.x), intBitsToFloat(R1i.y), intBitsToFloat(R1i.x), intBitsToFloat(R1i.w)); +} diff --git a/Enhancement/BreathOfTheWild_CleanCameraRune/Presets/Minimal-Preset/cb83a22cf0961e1a_000000000000007d_ps.txt b/Enhancement/BreathOfTheWild_CleanCameraRune/Presets/Minimal-Preset/cb83a22cf0961e1a_000000000000007d_ps.txt new file mode 100644 index 00000000..2de63421 --- /dev/null +++ b/Enhancement/BreathOfTheWild_CleanCameraRune/Presets/Minimal-Preset/cb83a22cf0961e1a_000000000000007d_ps.txt @@ -0,0 +1,93 @@ +#version 420 +#extension GL_ARB_texture_gather : enable +// shader cb83a22cf0961e1a +// Used for: Zoom Text +uniform ivec4 uf_remappedPS[4]; +layout(binding = 0) uniform sampler2DArray textureUnitPS0;// Tex0 addr 0x20340000 res 1024x1024x1 dim 5 tm: 4 format 0001 compSel: 5 5 5 0 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 0 0 0 border: 0 +layout(location = 0) in vec4 passParameterSem0; +layout(location = 1) in vec4 passParameterSem1; +layout(location = 0) out vec4 passPixelColor0; +uniform vec2 uf_fragCoordScale; +int clampFI32(int v) +{ +if( v == 0x7FFFFFFF ) + return floatBitsToInt(1.0); +else if( v == 0xFFFFFFFF ) + return floatBitsToInt(0.0); +return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); +} +float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } +void main() +{ +ivec4 R0i = ivec4(0); +ivec4 R1i = ivec4(0); +ivec4 R2i = ivec4(0); +ivec4 R123i = ivec4(0); +ivec4 R126i = ivec4(0); +ivec4 R127i = ivec4(0); +int backupReg0i, backupReg1i, backupReg2i, backupReg3i, backupReg4i; +ivec4 PV0i = ivec4(0), PV1i = ivec4(0); +int PS0i = 0, PS1i = 0; +ivec4 tempi = ivec4(0); +float tempResultf; +int tempResulti; +ivec4 ARi = ivec4(0); +bool predResult = true; +vec3 cubeMapSTM; +int cubeMapFaceId; +R0i = floatBitsToInt(passParameterSem0); +R1i = floatBitsToInt(passParameterSem1); +// 0 +backupReg0i = R1i.z; +R2i.x = ((intBitsToFloat(R0i.w) > 0.0)?int(0xFFFFFFFF):int(0x0)); +R1i.z = floatBitsToInt(roundEven(intBitsToFloat(backupReg0i))); +R1i.w = floatBitsToInt(texture(textureUnitPS0, vec3(intBitsToFloat(R1i.x),intBitsToFloat(R1i.y),intBitsToFloat(R1i.z))).w); +// 0 +PV0i.x = R1i.w; +PV0i.x = floatBitsToInt(intBitsToFloat(PV0i.x) * 2.0); +PV0i.y = ((intBitsToFloat(0x3f0a3d71) > intBitsToFloat(R1i.w))?int(0xFFFFFFFF):int(0x0)); +PV0i.w = floatBitsToInt(intBitsToFloat(R1i.w) + -(0.5)); +PV0i.w = floatBitsToInt(intBitsToFloat(PV0i.w) * 2.0); +// 1 +R127i.y = ((PV0i.y == 0)?(0x3f800000):(PV0i.x)); +R127i.z = ((PV0i.y == 0)?(PV0i.w):(0)); +PV1i.z = R127i.z; +// 2 +R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.z),intBitsToFloat(uf_remappedPS[0].y)) + intBitsToFloat(uf_remappedPS[1].y))); +PV0i.z = R123i.z; +R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.z),intBitsToFloat(uf_remappedPS[0].x)) + intBitsToFloat(uf_remappedPS[1].x))); +PV0i.w = R123i.w; +// 3 +backupReg0i = R0i.x; +PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), intBitsToFloat(uf_remappedPS[0].w))); +R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(uf_remappedPS[0].z)) + intBitsToFloat(uf_remappedPS[1].z))); +PV1i.y = R123i.y; +R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PV0i.w))); +R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.y), intBitsToFloat(PV0i.z))); +// 4 +R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.z), intBitsToFloat(PV1i.y))); +R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.w), intBitsToFloat(PV1i.x))); +R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(uf_remappedPS[2].y)) + intBitsToFloat(uf_remappedPS[3].y))); +PV0i.z = R123i.z; +R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(uf_remappedPS[2].x)) + intBitsToFloat(uf_remappedPS[3].x))); +PV0i.w = R123i.w; +// 5 +backupReg0i = R0i.x; +PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), intBitsToFloat(uf_remappedPS[2].w))); +R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(uf_remappedPS[2].z)) + intBitsToFloat(uf_remappedPS[3].z))); +PV1i.y = R123i.y; +PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PV0i.w))); +PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.y), intBitsToFloat(PV0i.z))); +// 6 +backupReg0i = R0i.z; +PV0i.x = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(R0i.w)), intBitsToFloat(PV1i.x))); +R0i.y = ((R2i.x == 0)?(PV1i.w):(R127i.w)); +PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PV1i.y))); +R0i.x = ((R2i.x == 0)?(PV1i.z):(R126i.z)); +PS0i = R0i.x; +// 7 +R0i.z = ((R2i.x == 0)?(PV0i.z):(R127i.x)); +R0i.w = ((R2i.x == 0)?(PV0i.x):(R126i.y)); +// export +passPixelColor0 = vec4(intBitsToFloat(R0i.x), intBitsToFloat(R0i.y), intBitsToFloat(R0i.z), 0.0); +} diff --git a/Enhancement/BreathOfTheWild_CleanCameraRune/Presets/Not Usable/569ebe93f1ae5799_0000000000000079_ps.txt b/Enhancement/BreathOfTheWild_CleanCameraRune/Presets/Not Usable/569ebe93f1ae5799_0000000000000079_ps.txt new file mode 100644 index 00000000..73d64072 --- /dev/null +++ b/Enhancement/BreathOfTheWild_CleanCameraRune/Presets/Not Usable/569ebe93f1ae5799_0000000000000079_ps.txt @@ -0,0 +1,43 @@ +#version 420 +#extension GL_ARB_texture_gather : enable +// shader 569ebe93f1ae5799 +// Used for: Vintage, Remove buttons, Edge Textures, Edge Background, Middle GUI +uniform ivec4 uf_remappedPS[2]; +layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0x22b12000 res 854x480x1 dim 1 tm: 4 format 0034 compSel: 0 0 0 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 2 2 2 border: 0 +layout(location = 0) in vec4 passParameterSem0; +layout(location = 0) out vec4 passPixelColor0; +uniform vec2 uf_fragCoordScale; +int clampFI32(int v) +{ +if( v == 0x7FFFFFFF ) + return floatBitsToInt(1.0); +else if( v == 0xFFFFFFFF ) + return floatBitsToInt(0.0); +return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); +} +float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } +void main() +{ +vec4 R0f = vec4(0.0); +vec4 R1f = vec4(0.0); +float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; +vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); +float PS0f = 0.0, PS1f = 0.0; +vec4 tempf = vec4(0.0); +float tempResultf; +int tempResulti; +ivec4 ARi = ivec4(0); +bool predResult = true; +vec3 cubeMapSTM; +int cubeMapFaceId; +R0f = passParameterSem0; +R0f.xyzw = (texture(textureUnitPS0, R0f.xy).xyzw); +// 0 +R1f.x = (mul_nonIEEE(R0f.x,intBitsToFloat(uf_remappedPS[0].x)) + intBitsToFloat(uf_remappedPS[1].x)); +R1f.y = (mul_nonIEEE(R0f.y,intBitsToFloat(uf_remappedPS[0].y)) + intBitsToFloat(uf_remappedPS[1].y)); +// 1 +R1f.z = (mul_nonIEEE(R0f.z,intBitsToFloat(uf_remappedPS[0].z)) + intBitsToFloat(uf_remappedPS[1].z)); +R1f.w = (mul_nonIEEE(R0f.w,intBitsToFloat(uf_remappedPS[0].w)) + intBitsToFloat(uf_remappedPS[1].w)); +// export +passPixelColor0 = vec4(R1f.x, R1f.y, R1f.z, 0.0); +} \ No newline at end of file diff --git a/Enhancement/BreathOfTheWild_CleanCameraRune/Presets/Photo-Preset/156a8a37bc669fec_0000000000001e49_ps.txt b/Enhancement/BreathOfTheWild_CleanCameraRune/Presets/Photo-Preset/156a8a37bc669fec_0000000000001e49_ps.txt new file mode 100644 index 00000000..5e79235e --- /dev/null +++ b/Enhancement/BreathOfTheWild_CleanCameraRune/Presets/Photo-Preset/156a8a37bc669fec_0000000000001e49_ps.txt @@ -0,0 +1,102 @@ +#version 420 +#extension GL_ARB_texture_gather : enable +// shader 156a8a37bc669fec +// Used for: Black transparent tint edge +uniform ivec4 uf_remappedPS[5]; +layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0x22456000 res 128x128x1 dim 1 tm: 4 format 0035 compSel: 0 0 0 1 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 0 0 2 border: 0 +layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0x22572000 res 256x256x1 dim 1 tm: 4 format 0034 compSel: 0 0 0 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 1 1 2 border: 0 +layout(binding = 2) uniform sampler2D textureUnitPS2;// Tex2 addr 0x23c69000 res 128x128x1 dim 1 tm: 4 format 0034 compSel: 5 5 5 0 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler2 ClampX/Y/Z: 2 2 2 border: 0 +layout(location = 0) in vec4 passParameterSem1; +layout(location = 1) in vec4 passParameterSem0; +layout(location = 2) in vec4 passParameterSem2; +layout(location = 0) out vec4 passPixelColor0; +uniform vec2 uf_fragCoordScale; +int clampFI32(int v) +{ +if( v == 0x7FFFFFFF ) + return floatBitsToInt(1.0); +else if( v == 0xFFFFFFFF ) + return floatBitsToInt(0.0); +return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); +} +float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } +void main() +{ +ivec4 R0i = ivec4(0); +ivec4 R1i = ivec4(0); +ivec4 R2i = ivec4(0); +ivec4 R3i = ivec4(0); +ivec4 R4i = ivec4(0); +ivec4 R123i = ivec4(0); +ivec4 R127i = ivec4(0); +int backupReg0i, backupReg1i, backupReg2i, backupReg3i, backupReg4i; +ivec4 PV0i = ivec4(0), PV1i = ivec4(0); +int PS0i = 0, PS1i = 0; +ivec4 tempi = ivec4(0); +float tempResultf; +int tempResulti; +ivec4 ARi = ivec4(0); +bool predResult = true; +vec3 cubeMapSTM; +int cubeMapFaceId; +R0i = floatBitsToInt(passParameterSem1); +R1i = floatBitsToInt(passParameterSem0); +R2i = floatBitsToInt(passParameterSem2); +R0i.xyzw = floatBitsToInt(texture(textureUnitPS1, intBitsToFloat(R0i.xy)).xyzw); +R4i.xyzw = floatBitsToInt(texture(textureUnitPS2, intBitsToFloat(R2i.xy)).xyzw); +// 0 +R3i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.x), intBitsToFloat(R4i.w))); +R3i.y = floatBitsToInt(-(intBitsToFloat(R4i.w)) + 1.0); +R3i.z = uf_remappedPS[0].x & 0x00008000; +R127i.w = 0x3f800000; +PV0i.w = R127i.w; +R1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.y), intBitsToFloat(R4i.w))); +PS0i = R1i.w; +// 1 +backupReg0i = R0i.x; +backupReg1i = R0i.y; +backupReg2i = R0i.z; +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),intBitsToFloat(backupReg2i),intBitsToFloat(PV0i.w)),vec4(intBitsToFloat(uf_remappedPS[1].x),intBitsToFloat(uf_remappedPS[1].y),intBitsToFloat(uf_remappedPS[1].z),intBitsToFloat(uf_remappedPS[1].w)))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.z), intBitsToFloat(R4i.w))); +PS1i = R1i.z; +// 2 +backupReg0i = R0i.x; +backupReg1i = R0i.y; +backupReg2i = R0i.z; +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),intBitsToFloat(backupReg2i),intBitsToFloat(R127i.w)),vec4(intBitsToFloat(uf_remappedPS[2].x),intBitsToFloat(uf_remappedPS[2].y),intBitsToFloat(uf_remappedPS[2].z),intBitsToFloat(uf_remappedPS[2].w)))); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +R2i.x = floatBitsToInt(intBitsToFloat(R1i.x) + intBitsToFloat(PV1i.x)); +PS0i = R2i.x; +// 3 +R2i.y = floatBitsToInt(intBitsToFloat(R1i.y) + intBitsToFloat(PV0i.x)); +R2i.xyzw = floatBitsToInt(texture(textureUnitPS0, intBitsToFloat(R2i.xy)).xyzw); +// 0 +backupReg0i = R0i.w; +R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.y),intBitsToFloat(R3i.y)) + intBitsToFloat(R1i.w))); +PV0i.x = R123i.x; +R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.x),intBitsToFloat(R3i.y)) + intBitsToFloat(R3i.x))); +PV0i.y = R123i.y; +R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.z),intBitsToFloat(R3i.y)) + intBitsToFloat(R1i.z))); +PV0i.w = floatBitsToInt(min(intBitsToFloat(backupReg0i), intBitsToFloat(R2i.w))); +// 1 +R4i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.y),intBitsToFloat(uf_remappedPS[3].x)) + intBitsToFloat(uf_remappedPS[4].x))); +PV1i.y = floatBitsToInt(min(intBitsToFloat(PV0i.w), intBitsToFloat(R4i.w))); +PV1i.z = floatBitsToInt(max(intBitsToFloat(PV0i.w), intBitsToFloat(R4i.w))); +R4i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),intBitsToFloat(uf_remappedPS[3].y)) + intBitsToFloat(uf_remappedPS[4].y))); +PS1i = R4i.y; +// 2 +R123i.x = ((R3i.z == 0)?(PV1i.z):(PV1i.y)); +PV0i.x = R123i.x; +R4i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(uf_remappedPS[3].z)) + intBitsToFloat(uf_remappedPS[4].z))); +// 3 +R4i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),intBitsToFloat(uf_remappedPS[3].w)) + intBitsToFloat(uf_remappedPS[4].w))); +// export +passPixelColor0 = vec4(intBitsToFloat(R4i.x), intBitsToFloat(R4i.y), intBitsToFloat(R4i.z), 0.0); +} diff --git a/Enhancement/BreathOfTheWild_CleanCameraRune/Presets/Photo-Preset/2d0ed5b8778b1709_0000000000000000_vs.txt b/Enhancement/BreathOfTheWild_CleanCameraRune/Presets/Photo-Preset/2d0ed5b8778b1709_0000000000000000_vs.txt new file mode 100644 index 00000000..1f67bc4e --- /dev/null +++ b/Enhancement/BreathOfTheWild_CleanCameraRune/Presets/Photo-Preset/2d0ed5b8778b1709_0000000000000000_vs.txt @@ -0,0 +1,1209 @@ +#version 420 +#extension GL_ARB_texture_gather : enable +#extension GL_ARB_shading_language_packing : enable +// shader 2d0ed5b8778b1709 +// Used for: Edge Bloom 2 +uniform ivec4 uf_uniformRegisterVS[256]; +uniform vec2 uf_windowSpaceToClipSpaceTransform; +layout(location = 0) in uvec4 attrDataSem0; +out gl_PerVertex +{ + vec4 gl_Position; + float gl_PointSize; +}; +layout(location = 0) out vec4 passParameterSem0; +layout(location = 2) out vec4 passParameterSem1; +layout(location = 1) out vec4 passParameterSem2; +int clampFI32(int v) +{ +if( v == 0x7FFFFFFF ) + return floatBitsToInt(1.0); +else if( v == 0xFFFFFFFF ) + return floatBitsToInt(0.0); +return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); +} +float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } +void main() +{ +ivec4 R0i = ivec4(0); +ivec4 R1i = ivec4(0); +ivec4 R2i = ivec4(0); +ivec4 R3i = ivec4(0); +ivec4 R4i = ivec4(0); +ivec4 R5i = ivec4(0); +ivec4 R6i = ivec4(0); +ivec4 R7i = ivec4(0); +ivec4 R8i = ivec4(0); +ivec4 R9i = ivec4(0); +ivec4 R10i = ivec4(0); +ivec4 R122i = ivec4(0); +ivec4 R123i = ivec4(0); +ivec4 R124i = ivec4(0); +ivec4 R125i = ivec4(0); +ivec4 R126i = ivec4(0); +ivec4 R127i = ivec4(0); +uvec4 attrDecoder; +int backupReg0i, backupReg1i, backupReg2i, backupReg3i, backupReg4i; +ivec4 PV0i = ivec4(0), PV1i = ivec4(0); +int PS0i = 0, PS1i = 0; +ivec4 tempi = ivec4(0); +float tempResultf; +int tempResulti; +ivec4 ARi = ivec4(0); +bool predResult = true; +bool activeMaskStack[14]; +bool activeMaskStackC[15]; +activeMaskStack[0] = false; +activeMaskStack[1] = false; +activeMaskStack[2] = false; +activeMaskStack[3] = false; +activeMaskStack[4] = false; +activeMaskStack[5] = false; +activeMaskStack[6] = false; +activeMaskStack[7] = false; +activeMaskStack[8] = false; +activeMaskStack[9] = false; +activeMaskStack[10] = false; +activeMaskStack[11] = false; +activeMaskStack[12] = false; +activeMaskStackC[0] = false; +activeMaskStackC[1] = false; +activeMaskStackC[2] = false; +activeMaskStackC[3] = false; +activeMaskStackC[4] = false; +activeMaskStackC[5] = false; +activeMaskStackC[6] = false; +activeMaskStackC[7] = false; +activeMaskStackC[8] = false; +activeMaskStackC[9] = false; +activeMaskStackC[10] = false; +activeMaskStackC[11] = false; +activeMaskStackC[12] = false; +activeMaskStackC[13] = false; +activeMaskStack[0] = true; +activeMaskStackC[0] = true; +activeMaskStackC[1] = true; +vec3 cubeMapSTM; +int cubeMapFaceId; +R0i = ivec4(gl_VertexID, 0, 0, gl_InstanceID); +attrDecoder.xy = attrDataSem0.xy; +attrDecoder.xy = (attrDecoder.xy>>24)|((attrDecoder.xy>>8)&0xFF00)|((attrDecoder.xy<<8)&0xFF0000)|((attrDecoder.xy<<24)); +attrDecoder.z = 0; +attrDecoder.w = 0; +R1i = ivec4(int(attrDecoder.x), int(attrDecoder.y), floatBitsToInt(0.0), floatBitsToInt(1.0)); +if( activeMaskStackC[1] == true ) { +activeMaskStack[1] = activeMaskStack[0]; +activeMaskStackC[2] = activeMaskStackC[1]; +// 0 +PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), intBitsToFloat(uf_uniformRegisterVS[17].x))); +R0i.yzw = ivec3(floatBitsToInt(-(intBitsToFloat(R1i.y))),0,0x3f800000); +PV0i.y = R0i.y; +R127i.w = floatBitsToInt(1.0); +PS0i = R127i.w; +// 1 +R0i.x = floatBitsToInt(intBitsToFloat(PV0i.x) + intBitsToFloat(uf_uniformRegisterVS[17].z)); +PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(uf_uniformRegisterVS[17].y))); +// 2 +R0i.y = floatBitsToInt(intBitsToFloat(PV1i.z) + intBitsToFloat(uf_uniformRegisterVS[17].w)); +PV0i.y = R0i.y; +R1i.w = uf_uniformRegisterVS[2].x & 0x40000000; +// 3 +backupReg0i = R0i.z; +backupReg1i = R0i.w; +R127i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i)),vec4(intBitsToFloat(uf_uniformRegisterVS[4].x),intBitsToFloat(uf_uniformRegisterVS[4].y),intBitsToFloat(uf_uniformRegisterVS[4].z),intBitsToFloat(uf_uniformRegisterVS[4].w)))); +PV1i.x = R127i.x; +PV1i.y = R127i.x; +PV1i.z = R127i.x; +PV1i.w = R127i.x; +// 4 +backupReg0i = R0i.x; +backupReg1i = R0i.z; +backupReg2i = R0i.w; +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(R0i.y),intBitsToFloat(backupReg1i),intBitsToFloat(backupReg2i)),vec4(intBitsToFloat(uf_uniformRegisterVS[5].x),intBitsToFloat(uf_uniformRegisterVS[5].y),intBitsToFloat(uf_uniformRegisterVS[5].z),intBitsToFloat(uf_uniformRegisterVS[5].w)))); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +R127i.y = tempi.x; +// 5 +backupReg0i = R0i.x; +backupReg1i = R0i.y; +backupReg2i = R0i.w; +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),intBitsToFloat(R0i.z),intBitsToFloat(backupReg2i)),vec4(intBitsToFloat(uf_uniformRegisterVS[6].x),intBitsToFloat(uf_uniformRegisterVS[6].y),intBitsToFloat(uf_uniformRegisterVS[6].z),intBitsToFloat(uf_uniformRegisterVS[6].w)))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R127i.z = tempi.x; +// 6 +R9i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R127i.x),intBitsToFloat(R127i.y),intBitsToFloat(PV1i.x),intBitsToFloat(R127i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[8].x),intBitsToFloat(uf_uniformRegisterVS[8].y),intBitsToFloat(uf_uniformRegisterVS[8].z),intBitsToFloat(uf_uniformRegisterVS[8].w)))); +PV0i.x = R9i.x; +PV0i.y = R9i.x; +PV0i.z = R9i.x; +PV0i.w = R9i.x; +// 7 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R127i.x),intBitsToFloat(R127i.y),intBitsToFloat(R127i.z),intBitsToFloat(R127i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[9].x),intBitsToFloat(uf_uniformRegisterVS[9].y),intBitsToFloat(uf_uniformRegisterVS[9].z),intBitsToFloat(uf_uniformRegisterVS[9].w)))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R9i.y = tempi.x; +// 8 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R127i.x),intBitsToFloat(R127i.y),intBitsToFloat(R127i.z),intBitsToFloat(R127i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[10].x),intBitsToFloat(uf_uniformRegisterVS[10].y),intBitsToFloat(uf_uniformRegisterVS[10].z),intBitsToFloat(uf_uniformRegisterVS[10].w)))); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +R9i.z = tempi.x; +// 9 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R127i.x),intBitsToFloat(R127i.y),intBitsToFloat(R127i.z),intBitsToFloat(R127i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[11].x),intBitsToFloat(uf_uniformRegisterVS[11].y),intBitsToFloat(uf_uniformRegisterVS[11].z),intBitsToFloat(uf_uniformRegisterVS[11].w)))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R9i.w = tempi.x; +// 10 +R2i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_uniformRegisterVS[17].x), intBitsToFloat(uf_uniformRegisterVS[12].x))); +R2i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_uniformRegisterVS[17].y), intBitsToFloat(uf_uniformRegisterVS[12].y))); +R3i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_uniformRegisterVS[17].x), intBitsToFloat(uf_uniformRegisterVS[12].y))); +PS0i = R3i.x; +// 11 +R3i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_uniformRegisterVS[17].y), intBitsToFloat(uf_uniformRegisterVS[12].x))); +// 12 +predResult = (0 != R1i.w); +activeMaskStack[1] = predResult; +activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; +} +else { +activeMaskStack[1] = false; +activeMaskStackC[2] = false; +} +if( activeMaskStackC[2] == true ) { +activeMaskStack[2] = activeMaskStack[1]; +activeMaskStackC[3] = activeMaskStackC[2]; +// 0 +R1i.z = uf_uniformRegisterVS[2].x & 0x00000002; +// 1 +predResult = (0 != R1i.z); +activeMaskStack[2] = predResult; +activeMaskStackC[3] = predResult == true && activeMaskStackC[2] == true; +} +else { +activeMaskStack[2] = false; +activeMaskStackC[3] = false; +} +if( activeMaskStackC[3] == true ) { +// 0 +backupReg0i = R1i.y; +R1i.yzw = ivec3(backupReg0i,0,0x3f800000); +PV0i.y = R1i.y; +PV0i.z = R1i.z; +PV0i.w = R1i.w; +// 1 +R5i.xyz = ivec3(R1i.x,PV0i.y,PV0i.z); +PV1i.x = R5i.x; +PV1i.y = R5i.y; +PV1i.z = R5i.z; +R5i.w = PV0i.w; +PV1i.w = R5i.w; +// 2 +R6i.xyz = ivec3(PV1i.x,PV1i.y,PV1i.z); +R6i.w = PV1i.w; +} +activeMaskStack[2] = activeMaskStack[2] == false; +activeMaskStackC[3] = activeMaskStack[2] == true && activeMaskStackC[2] == true; +if( activeMaskStackC[3] == true ) { +// 0 +PS0i = int(intBitsToFloat(R1i.y)); +// 1 +PV1i.z = PS0i << int(1); +PS1i = int(intBitsToFloat(R1i.x)); +// 2 +R125i.x = PV1i.z + PS1i; +PV0i.x = R125i.x; +// 3 +R127i.x = (PV0i.x == 0x00000002)?int(0xFFFFFFFF):int(0x0); +R125i.y = (PV0i.x == int(1))?int(0xFFFFFFFF):int(0x0); +R127i.z = (PV0i.x == 0x00000002)?int(0xFFFFFFFF):int(0x0); +PV1i.z = R127i.z; +R126i.w = (PV0i.x == int(1))?int(0xFFFFFFFF):int(0x0); +// 4 +R126i.x = ((PV1i.z == 0)?(uf_uniformRegisterVS[25].y):(uf_uniformRegisterVS[24].y)); +R127i.y = ((PV1i.z == 0)?(uf_uniformRegisterVS[25].x):(uf_uniformRegisterVS[24].x)); +// 5 +backupReg0i = R127i.z; +backupReg0i = R127i.z; +R127i.z = ((backupReg0i == 0)?(uf_uniformRegisterVS[25].w):(uf_uniformRegisterVS[24].w)); +R127i.w = ((backupReg0i == 0)?(uf_uniformRegisterVS[25].z):(uf_uniformRegisterVS[24].z)); +// 6 +R126i.z = ((R127i.x == 0)?(uf_uniformRegisterVS[29].y):(uf_uniformRegisterVS[28].y)); +R125i.w = ((R127i.x == 0)?(uf_uniformRegisterVS[29].x):(uf_uniformRegisterVS[28].x)); +// 7 +backupReg0i = R127i.x; +backupReg0i = R127i.x; +R127i.x = ((backupReg0i == 0)?(uf_uniformRegisterVS[29].w):(uf_uniformRegisterVS[28].w)); +R126i.y = ((backupReg0i == 0)?(uf_uniformRegisterVS[29].z):(uf_uniformRegisterVS[28].z)); +// 8 +backupReg0i = R126i.x; +backupReg1i = R127i.y; +backupReg2i = R127i.z; +backupReg3i = R127i.w; +R126i.x = ((R126i.w == 0)?(backupReg0i):(uf_uniformRegisterVS[23].y)); +R127i.y = ((R126i.w == 0)?(backupReg1i):(uf_uniformRegisterVS[23].x)); +R127i.z = ((R126i.w == 0)?(backupReg2i):(uf_uniformRegisterVS[23].w)); +R127i.w = ((R126i.w == 0)?(backupReg3i):(uf_uniformRegisterVS[23].z)); +// 9 +backupReg0i = R127i.x; +backupReg1i = R126i.y; +backupReg2i = R126i.z; +backupReg3i = R125i.w; +R127i.x = ((R125i.y == 0)?(backupReg0i):(uf_uniformRegisterVS[27].w)); +R126i.y = ((R125i.y == 0)?(backupReg1i):(uf_uniformRegisterVS[27].z)); +R126i.z = ((R125i.y == 0)?(backupReg2i):(uf_uniformRegisterVS[27].y)); +R125i.w = ((R125i.y == 0)?(backupReg3i):(uf_uniformRegisterVS[27].x)); +// 10 +R5i.x = ((R125i.x == 0)?(uf_uniformRegisterVS[22].x):(R127i.y)); +R5i.y = ((R125i.x == 0)?(uf_uniformRegisterVS[22].y):(R126i.x)); +R5i.z = ((R125i.x == 0)?(uf_uniformRegisterVS[22].z):(R127i.w)); +R5i.w = ((R125i.x == 0)?(uf_uniformRegisterVS[22].w):(R127i.z)); +// 11 +R6i.x = ((R125i.x == 0)?(uf_uniformRegisterVS[26].x):(R125i.w)); +R6i.y = ((R125i.x == 0)?(uf_uniformRegisterVS[26].y):(R126i.z)); +R6i.z = ((R125i.x == 0)?(uf_uniformRegisterVS[26].z):(R126i.y)); +R6i.w = ((R125i.x == 0)?(uf_uniformRegisterVS[26].w):(R127i.x)); +} +activeMaskStackC[2] = activeMaskStack[1] == true && activeMaskStackC[1] == true; +if( activeMaskStackC[2] == true ) { +// 0 +R4i.xyz = ivec3(0x437f0000,0x437f0000,0x437f0000); +R4i.w = 0x437f0000; +} +activeMaskStack[1] = activeMaskStack[1] == false; +activeMaskStackC[2] = activeMaskStack[1] == true && activeMaskStackC[1] == true; +if( activeMaskStackC[2] == true ) { +activeMaskStack[2] = activeMaskStack[1]; +activeMaskStackC[3] = activeMaskStackC[2]; +// 0 +PV0i.y = uf_uniformRegisterVS[2].x >> 0x00000008; +R1i.w = uf_uniformRegisterVS[2].x & 0x00000002; +// 1 +R4i.x = PV0i.y & 0x0000000f; +// 2 +predResult = (0 != R1i.w); +activeMaskStack[2] = predResult; +activeMaskStackC[3] = predResult == true && activeMaskStackC[2] == true; +} +else { +activeMaskStack[2] = false; +activeMaskStackC[3] = false; +} +if( activeMaskStackC[3] == true ) { +activeMaskStack[3] = activeMaskStack[2]; +activeMaskStackC[4] = activeMaskStackC[3]; +// 0 +R6i.y = R1i.y; +R2i.z = 0; +R1i.w = 0x3f800000; +PS0i = floatBitsToInt(1.0 / intBitsToFloat(uf_uniformRegisterVS[7].x)); +// 1 +R5i.x = floatBitsToInt(intBitsToFloat(PS0i) * intBitsToFloat(uf_uniformRegisterVS[1].x)); +PV1i.x = R5i.x; +R4i.y = floatBitsToInt(intBitsToFloat(PS0i) * intBitsToFloat(uf_uniformRegisterVS[1].y)); +PS1i = floatBitsToInt(1.0 / intBitsToFloat(uf_uniformRegisterVS[7].y)); +// 2 +R6i.x = floatBitsToInt(intBitsToFloat(uf_uniformRegisterVS[1].z) * intBitsToFloat(PS1i)); +PV0i.x = R6i.x; +R5i.y = floatBitsToInt(intBitsToFloat(uf_uniformRegisterVS[1].w) * intBitsToFloat(PS1i)); +R7i.x = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + 1.0); +PS0i = R7i.x; +// 3 +R8i.x = floatBitsToInt(-(intBitsToFloat(R4i.y)) + intBitsToFloat(PS0i)); +R1i.z = floatBitsToInt(-(intBitsToFloat(PV0i.x)) + 1.0); +PV1i.z = R1i.z; +R10i.x = floatBitsToInt(-(intBitsToFloat(R4i.y)) + 1.0); +PS1i = R10i.x; +// 4 +R3i.z = floatBitsToInt(-(intBitsToFloat(R5i.y)) + 1.0); +R2i.w = floatBitsToInt(-(intBitsToFloat(R5i.y)) + intBitsToFloat(PV1i.z)); +// 5 +predResult = (R4i.x == 0); +activeMaskStack[3] = predResult; +activeMaskStackC[4] = predResult == true && activeMaskStackC[3] == true; +} +else { +activeMaskStack[3] = false; +activeMaskStackC[4] = false; +} +if( activeMaskStackC[4] == true ) { +// 0 +backupReg0i = R5i.x; +R5i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), intBitsToFloat(backupReg0i))); +R4i.y = R6i.x; +PV0i.y = R4i.y; +// 1 +R5i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.y), intBitsToFloat(PV0i.y))); +} +activeMaskStack[3] = activeMaskStack[3] == false; +activeMaskStackC[4] = activeMaskStack[3] == true && activeMaskStackC[3] == true; +if( activeMaskStackC[4] == true ) { +activeMaskStack[4] = activeMaskStack[3]; +activeMaskStackC[5] = activeMaskStackC[4]; +// 0 +predResult = (R4i.x == int(1)); +activeMaskStack[4] = predResult; +activeMaskStackC[5] = predResult == true && activeMaskStackC[4] == true; +} +else { +activeMaskStack[4] = false; +activeMaskStackC[5] = false; +} +if( activeMaskStackC[5] == true ) { +// 0 +backupReg0i = R4i.y; +R4i.y = 0; +PV0i.y = R4i.y; +PV0i.z = R6i.x; +PV0i.w = backupReg0i; +// 1 +R5i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(PV0i.w)) + intBitsToFloat(R10i.x))); +R5i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(PV0i.z)) + intBitsToFloat(PV0i.y))); +} +activeMaskStack[4] = activeMaskStack[4] == false; +activeMaskStackC[5] = activeMaskStack[4] == true && activeMaskStackC[4] == true; +if( activeMaskStackC[5] == true ) { +activeMaskStack[5] = activeMaskStack[4]; +activeMaskStackC[6] = activeMaskStackC[5]; +// 0 +predResult = (R4i.x == 0x00000002); +activeMaskStack[5] = predResult; +activeMaskStackC[6] = predResult == true && activeMaskStackC[5] == true; +} +else { +activeMaskStack[5] = false; +activeMaskStackC[6] = false; +} +if( activeMaskStackC[6] == true ) { +// 0 +backupReg0i = R5i.y; +R5i.y = backupReg0i; +PV0i.y = R5i.y; +PV0i.z = R3i.z; +PV0i.w = 0; +// 1 +backupReg0i = R5i.x; +R5i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(backupReg0i)) + intBitsToFloat(PV0i.w))); +R5i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(PV0i.y)) + intBitsToFloat(PV0i.z))); +} +activeMaskStack[5] = activeMaskStack[5] == false; +activeMaskStackC[6] = activeMaskStack[5] == true && activeMaskStackC[5] == true; +if( activeMaskStackC[6] == true ) { +activeMaskStack[6] = activeMaskStack[5]; +activeMaskStackC[7] = activeMaskStackC[6]; +// 0 +predResult = (R4i.x == 0x00000003); +activeMaskStack[6] = predResult; +activeMaskStackC[7] = predResult == true && activeMaskStackC[6] == true; +} +else { +activeMaskStack[6] = false; +activeMaskStackC[7] = false; +} +if( activeMaskStackC[7] == true ) { +// 0 +backupReg0i = R4i.y; +R4i.y = R3i.z; +PV0i.y = R4i.y; +PV0i.z = R5i.y; +PV0i.w = backupReg0i; +// 1 +R5i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(PV0i.w)) + intBitsToFloat(R10i.x))); +R5i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(PV0i.z)) + intBitsToFloat(PV0i.y))); +} +activeMaskStack[6] = activeMaskStack[6] == false; +activeMaskStackC[7] = activeMaskStack[6] == true && activeMaskStackC[6] == true; +if( activeMaskStackC[7] == true ) { +activeMaskStack[7] = activeMaskStack[6]; +activeMaskStackC[8] = activeMaskStackC[7]; +// 0 +predResult = (R4i.x == 0x00000004); +activeMaskStack[7] = predResult; +activeMaskStackC[8] = predResult == true && activeMaskStackC[7] == true; +} +else { +activeMaskStack[7] = false; +activeMaskStackC[8] = false; +} +if( activeMaskStackC[8] == true ) { +// 0 +R4i.y = R2i.w; +PV0i.y = R4i.y; +PV0i.z = R6i.x; +PV0i.w = 0; +// 1 +backupReg0i = R5i.x; +R5i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(backupReg0i)) + intBitsToFloat(PV0i.w))); +R5i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(PV0i.y)) + intBitsToFloat(PV0i.z))); +} +activeMaskStack[7] = activeMaskStack[7] == false; +activeMaskStackC[8] = activeMaskStack[7] == true && activeMaskStackC[7] == true; +if( activeMaskStackC[8] == true ) { +activeMaskStack[8] = activeMaskStack[7]; +activeMaskStackC[9] = activeMaskStackC[8]; +// 0 +predResult = (R4i.x == 0x00000005); +activeMaskStack[8] = predResult; +activeMaskStackC[9] = predResult == true && activeMaskStackC[8] == true; +} +else { +activeMaskStack[8] = false; +activeMaskStackC[9] = false; +} +if( activeMaskStackC[9] == true ) { +// 0 +backupReg0i = R4i.y; +R4i.y = R6i.x; +PV0i.y = R4i.y; +PV0i.z = R2i.w; +PV0i.w = backupReg0i; +// 1 +R5i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(PV0i.w)) + intBitsToFloat(R10i.x))); +R5i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(PV0i.z)) + intBitsToFloat(PV0i.y))); +} +activeMaskStack[8] = activeMaskStack[8] == false; +activeMaskStackC[9] = activeMaskStack[8] == true && activeMaskStackC[8] == true; +if( activeMaskStackC[9] == true ) { +activeMaskStack[9] = activeMaskStack[8]; +activeMaskStackC[10] = activeMaskStackC[9]; +// 0 +predResult = (R4i.x == 0x00000006); +activeMaskStack[9] = predResult; +activeMaskStackC[10] = predResult == true && activeMaskStackC[9] == true; +} +else { +activeMaskStack[9] = false; +activeMaskStackC[10] = false; +} +if( activeMaskStackC[10] == true ) { +// 0 +R4i.y = R6i.x; +PV0i.y = R4i.y; +R5i.y = 0; +PS0i = R5i.y; +// 1 +backupReg0i = R5i.x; +R5i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(R8i.x)) + intBitsToFloat(backupReg0i))); +R5i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(PV0i.y)) + intBitsToFloat(PS0i))); +} +activeMaskStack[9] = activeMaskStack[9] == false; +activeMaskStackC[10] = activeMaskStack[9] == true && activeMaskStackC[9] == true; +if( activeMaskStackC[10] == true ) { +activeMaskStack[10] = activeMaskStack[9]; +activeMaskStackC[11] = activeMaskStackC[10]; +// 0 +predResult = (R4i.x == 0x00000007); +activeMaskStack[10] = predResult; +activeMaskStackC[11] = predResult == true && activeMaskStackC[10] == true; +} +else { +activeMaskStack[10] = false; +activeMaskStackC[11] = false; +} +if( activeMaskStackC[11] == true ) { +// 0 +backupReg0i = R5i.x; +R5i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(R8i.x)) + intBitsToFloat(backupReg0i))); +R4i.y = R5i.y; +PV0i.y = R4i.y; +R5i.y = R3i.z; +PS0i = R5i.y; +// 1 +R5i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(PV0i.y)) + intBitsToFloat(PS0i))); +} +activeMaskStack[10] = activeMaskStack[10] == false; +activeMaskStackC[11] = activeMaskStack[10] == true && activeMaskStackC[10] == true; +if( activeMaskStackC[11] == true ) { +activeMaskStack[11] = activeMaskStack[10]; +activeMaskStackC[12] = activeMaskStackC[11]; +// 0 +predResult = (R4i.x == 0x00000008); +activeMaskStack[11] = predResult; +activeMaskStackC[12] = predResult == true && activeMaskStackC[11] == true; +} +else { +activeMaskStack[11] = false; +activeMaskStackC[12] = false; +} +if( activeMaskStackC[12] == true ) { +// 0 +R5i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), intBitsToFloat(R10i.x))); +R4i.y = R6i.x; +PV0i.y = R4i.y; +// 1 +R5i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.y), intBitsToFloat(PV0i.y))); +} +activeMaskStack[11] = activeMaskStack[11] == false; +activeMaskStackC[12] = activeMaskStack[11] == true && activeMaskStackC[11] == true; +if( activeMaskStackC[12] == true ) { +activeMaskStack[12] = activeMaskStack[11]; +activeMaskStackC[13] = activeMaskStackC[12]; +// 0 +predResult = (R4i.x == 0x00000009); +activeMaskStack[12] = predResult; +activeMaskStackC[13] = predResult == true && activeMaskStackC[12] == true; +} +else { +activeMaskStack[12] = false; +activeMaskStackC[13] = false; +} +if( activeMaskStackC[13] == true ) { +// 0 +backupReg0i = R4i.y; +R4i.y = 0; +PV0i.y = R4i.y; +PV0i.z = R3i.z; +PV0i.w = backupReg0i; +// 1 +R5i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(PV0i.w)) + intBitsToFloat(R10i.x))); +R5i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(PV0i.z)) + intBitsToFloat(PV0i.y))); +} +activeMaskStack[12] = activeMaskStack[12] == false; +activeMaskStackC[13] = activeMaskStack[12] == true && activeMaskStackC[12] == true; +if( activeMaskStackC[13] == true ) { +activeMaskStack[13] = activeMaskStack[12]; +activeMaskStackC[14] = activeMaskStackC[13]; +// 0 +predResult = (R4i.x == 0x0000000a); +activeMaskStack[13] = predResult; +activeMaskStackC[14] = predResult == true && activeMaskStackC[13] == true; +} +else { +activeMaskStack[13] = false; +activeMaskStackC[14] = false; +} +if( activeMaskStackC[14] == true ) { +// 0 +R4i.y = R1i.z; +PV0i.y = R4i.y; +PV0i.z = R6i.x; +PV0i.w = 0; +// 1 +backupReg0i = R5i.x; +R5i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(backupReg0i)) + intBitsToFloat(PV0i.w))); +R5i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(PV0i.y)) + intBitsToFloat(PV0i.z))); +} +activeMaskStack[13] = activeMaskStack[13] == false; +activeMaskStackC[14] = activeMaskStack[13] == true && activeMaskStackC[13] == true; +if( activeMaskStackC[14] == true ) { +// 0 +PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), intBitsToFloat(R10i.x))); +R4i.y = R2i.w; +PV0i.y = R4i.y; +R127i.z = (R4i.x == 0x0000000c)?int(0xFFFFFFFF):int(0x0); +PV0i.z = R127i.z; +R127i.w = (R4i.x == 0x0000000b)?int(0xFFFFFFFF):int(0x0); +// 1 +PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.y), intBitsToFloat(PV0i.y))); +R4i.y = R3i.z; +PV1i.y = R4i.y; +R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(R7i.x)) + intBitsToFloat(R5i.x))); +PV1i.z = R123i.z; +R123i.w = ((PV0i.z == 0)?(0):(PV0i.x)); +PV1i.w = R123i.w; +// 2 +R5i.x = ((R127i.w == 0)?(PV1i.w):(PV1i.z)); +R123i.z = ((R127i.z == 0)?(0):(PV1i.x)); +PV0i.z = R123i.z; +R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(R5i.y)) + intBitsToFloat(PV1i.y))); +PV0i.w = R123i.w; +// 3 +R5i.y = ((R127i.w == 0)?(PV0i.z):(PV0i.w)); +} +activeMaskStackC[13] = activeMaskStack[12] == true && activeMaskStackC[12] == true; +activeMaskStackC[11] = activeMaskStack[10] == true && activeMaskStackC[10] == true; +activeMaskStackC[9] = activeMaskStack[8] == true && activeMaskStackC[8] == true; +activeMaskStackC[7] = activeMaskStack[6] == true && activeMaskStackC[6] == true; +activeMaskStackC[5] = activeMaskStack[4] == true && activeMaskStackC[4] == true; +activeMaskStackC[3] = activeMaskStack[2] == true && activeMaskStackC[2] == true; +if( activeMaskStackC[3] == true ) { +// 0 +R127i.x = floatBitsToInt(-(intBitsToFloat(R5i.y)) + 1.0); +PV0i.x = R127i.x; +R126i.y = floatBitsToInt(-(intBitsToFloat(R5i.x)) + 1.0); +// 1 +PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(uf_uniformRegisterVS[18].w))); +PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(uf_uniformRegisterVS[18].z))); +PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(uf_uniformRegisterVS[18].y))); +PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(uf_uniformRegisterVS[18].x))); +// 2 +R126i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),intBitsToFloat(uf_uniformRegisterVS[20].w)) + intBitsToFloat(PV1i.x))); +R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),intBitsToFloat(uf_uniformRegisterVS[20].z)) + intBitsToFloat(PV1i.y))); +R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),intBitsToFloat(uf_uniformRegisterVS[20].y)) + intBitsToFloat(PV1i.z))); +R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),intBitsToFloat(uf_uniformRegisterVS[20].x)) + intBitsToFloat(PV1i.w))); +PV0i.w = R123i.w; +// 3 +PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(uf_uniformRegisterVS[19].w))); +PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(uf_uniformRegisterVS[19].z))); +PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(uf_uniformRegisterVS[19].y))); +PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(uf_uniformRegisterVS[19].x))); +R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(PV0i.w))); +PS1i = R127i.w; +// 4 +backupReg0i = R127i.z; +R127i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),intBitsToFloat(uf_uniformRegisterVS[21].w)) + intBitsToFloat(PV1i.x))); +R125i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),intBitsToFloat(uf_uniformRegisterVS[21].z)) + intBitsToFloat(PV1i.y))); +R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),intBitsToFloat(uf_uniformRegisterVS[21].y)) + intBitsToFloat(PV1i.z))); +R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),intBitsToFloat(uf_uniformRegisterVS[21].x)) + intBitsToFloat(PV1i.w))); +PV0i.w = R123i.w; +R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(backupReg0i))); +PS0i = R126i.z; +// 5 +PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(R126i.x))); +PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(R127i.y))); +R4i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.x),intBitsToFloat(PV0i.w)) + intBitsToFloat(R127i.w))); +PS1i = R4i.x; +// 6 +R4i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.x),intBitsToFloat(R127i.z)) + intBitsToFloat(R126i.z))); +R4i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.x),intBitsToFloat(R125i.y)) + intBitsToFloat(PV1i.y))); +R4i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.x),intBitsToFloat(R127i.x)) + intBitsToFloat(PV1i.x))); +// 7 +R5i.xyz = ivec3(R1i.x,R6i.y,R2i.z); +PV1i.x = R5i.x; +PV1i.y = R5i.y; +PV1i.z = R5i.z; +R5i.w = R1i.w; +PV1i.w = R5i.w; +// 8 +R6i.xyz = ivec3(PV1i.x,PV1i.y,PV1i.z); +R6i.w = PV1i.w; +} +activeMaskStack[2] = activeMaskStack[2] == false; +activeMaskStackC[3] = activeMaskStack[2] == true && activeMaskStackC[2] == true; +if( activeMaskStackC[3] == true ) { +activeMaskStack[3] = activeMaskStack[2]; +activeMaskStackC[4] = activeMaskStackC[3]; +// 0 +PS0i = int(intBitsToFloat(R1i.y)); +// 1 +PV1i.z = PS0i << int(1); +PS1i = int(intBitsToFloat(R1i.x)); +// 2 +R7i.x = PV1i.z + PS1i; +PV0i.x = R7i.x; +// 3 +R127i.x = (PV0i.x == 0x00000002)?int(0xFFFFFFFF):int(0x0); +R125i.y = (PV0i.x == int(1))?int(0xFFFFFFFF):int(0x0); +R127i.z = (PV0i.x == 0x00000002)?int(0xFFFFFFFF):int(0x0); +PV1i.z = R127i.z; +R126i.w = (PV0i.x == int(1))?int(0xFFFFFFFF):int(0x0); +// 4 +R126i.x = ((PV1i.z == 0)?(uf_uniformRegisterVS[25].y):(uf_uniformRegisterVS[24].y)); +R127i.y = ((PV1i.z == 0)?(uf_uniformRegisterVS[25].x):(uf_uniformRegisterVS[24].x)); +// 5 +backupReg0i = R127i.z; +backupReg0i = R127i.z; +R127i.z = ((backupReg0i == 0)?(uf_uniformRegisterVS[25].w):(uf_uniformRegisterVS[24].w)); +R127i.w = ((backupReg0i == 0)?(uf_uniformRegisterVS[25].z):(uf_uniformRegisterVS[24].z)); +// 6 +R126i.z = ((R127i.x == 0)?(uf_uniformRegisterVS[29].y):(uf_uniformRegisterVS[28].y)); +R125i.w = ((R127i.x == 0)?(uf_uniformRegisterVS[29].x):(uf_uniformRegisterVS[28].x)); +// 7 +backupReg0i = R127i.x; +backupReg0i = R127i.x; +R127i.x = ((backupReg0i == 0)?(uf_uniformRegisterVS[29].w):(uf_uniformRegisterVS[28].w)); +R126i.y = ((backupReg0i == 0)?(uf_uniformRegisterVS[29].z):(uf_uniformRegisterVS[28].z)); +// 8 +backupReg0i = R126i.x; +backupReg1i = R127i.y; +backupReg2i = R127i.z; +backupReg3i = R127i.w; +R126i.x = ((R126i.w == 0)?(backupReg0i):(uf_uniformRegisterVS[23].y)); +R127i.y = ((R126i.w == 0)?(backupReg1i):(uf_uniformRegisterVS[23].x)); +R127i.z = ((R126i.w == 0)?(backupReg2i):(uf_uniformRegisterVS[23].w)); +R127i.w = ((R126i.w == 0)?(backupReg3i):(uf_uniformRegisterVS[23].z)); +// 9 +backupReg0i = R127i.x; +backupReg1i = R126i.y; +backupReg2i = R126i.z; +backupReg3i = R125i.w; +R127i.x = ((R125i.y == 0)?(backupReg0i):(uf_uniformRegisterVS[27].w)); +R126i.y = ((R125i.y == 0)?(backupReg1i):(uf_uniformRegisterVS[27].z)); +R126i.z = ((R125i.y == 0)?(backupReg2i):(uf_uniformRegisterVS[27].y)); +R125i.w = ((R125i.y == 0)?(backupReg3i):(uf_uniformRegisterVS[27].x)); +// 10 +R5i.x = ((R7i.x == 0)?(uf_uniformRegisterVS[22].x):(R127i.y)); +R5i.y = ((R7i.x == 0)?(uf_uniformRegisterVS[22].y):(R126i.x)); +R5i.z = ((R7i.x == 0)?(uf_uniformRegisterVS[22].z):(R127i.w)); +R5i.w = ((R7i.x == 0)?(uf_uniformRegisterVS[22].w):(R127i.z)); +// 11 +R6i.x = ((R7i.x == 0)?(uf_uniformRegisterVS[26].x):(R125i.w)); +R6i.y = ((R7i.x == 0)?(uf_uniformRegisterVS[26].y):(R126i.z)); +R6i.z = ((R7i.x == 0)?(uf_uniformRegisterVS[26].z):(R126i.y)); +R6i.w = ((R7i.x == 0)?(uf_uniformRegisterVS[26].w):(R127i.x)); +// 12 +predResult = (R4i.x == 0x0000000d); +activeMaskStack[3] = predResult; +activeMaskStackC[4] = predResult == true && activeMaskStackC[3] == true; +} +else { +activeMaskStack[3] = false; +activeMaskStackC[4] = false; +} +if( activeMaskStackC[4] == true ) { +// 0 +PS0i = floatBitsToInt(1.0 / intBitsToFloat(uf_uniformRegisterVS[7].y)); +// 1 +PV1i.z = floatBitsToInt(intBitsToFloat(uf_uniformRegisterVS[1].w) * intBitsToFloat(PS0i)); +PV1i.w = floatBitsToInt(intBitsToFloat(uf_uniformRegisterVS[1].z) * intBitsToFloat(PS0i)); +PS1i = floatBitsToInt(1.0 / intBitsToFloat(uf_uniformRegisterVS[7].x)); +// 2 +R127i.x = PV1i.z; +R127i.y = PV1i.w; +PV0i.y = R127i.y; +R127i.z = floatBitsToInt(intBitsToFloat(PS1i) * intBitsToFloat(uf_uniformRegisterVS[1].x)); +PV0i.z = R127i.z; +R127i.w = floatBitsToInt(intBitsToFloat(PS1i) * intBitsToFloat(uf_uniformRegisterVS[1].y)); +// 3 +PV1i.z = floatBitsToInt(-(intBitsToFloat(PV0i.y)) + 1.0); +PV1i.w = floatBitsToInt(-(intBitsToFloat(PV0i.z)) + 1.0); +// 4 +PV0i.x = floatBitsToInt(-(intBitsToFloat(R127i.x)) + intBitsToFloat(PV1i.z)); +PV0i.y = floatBitsToInt(-(intBitsToFloat(R127i.w)) + intBitsToFloat(PV1i.w)); +// 5 +backupReg0i = R127i.z; +R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(PV0i.x)) + intBitsToFloat(R127i.y))); +PV1i.z = R127i.z; +R126i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(PV0i.y)) + intBitsToFloat(backupReg0i))); +PV1i.w = R126i.w; +// 6 +R127i.x = floatBitsToInt(-(intBitsToFloat(PV1i.z)) + 1.0); +PV0i.x = R127i.x; +R126i.y = floatBitsToInt(-(intBitsToFloat(PV1i.w)) + 1.0); +// 7 +PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(uf_uniformRegisterVS[18].w))); +PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(uf_uniformRegisterVS[18].z))); +PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(uf_uniformRegisterVS[18].y))); +PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(uf_uniformRegisterVS[18].x))); +// 8 +R126i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(uf_uniformRegisterVS[20].w)) + intBitsToFloat(PV1i.x))); +R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(uf_uniformRegisterVS[20].z)) + intBitsToFloat(PV1i.y))); +R126i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(uf_uniformRegisterVS[20].y)) + intBitsToFloat(PV1i.z))); +R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(uf_uniformRegisterVS[20].x)) + intBitsToFloat(PV1i.w))); +PV0i.w = R123i.w; +// 9 +PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(uf_uniformRegisterVS[19].w))); +PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(uf_uniformRegisterVS[19].z))); +PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(uf_uniformRegisterVS[19].y))); +PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(uf_uniformRegisterVS[19].x))); +R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(PV0i.w))); +PS1i = R127i.w; +// 10 +backupReg0i = R127i.z; +backupReg0i = R127i.z; +backupReg1i = R126i.z; +R127i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(uf_uniformRegisterVS[21].w)) + intBitsToFloat(PV1i.x))); +R125i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(uf_uniformRegisterVS[21].z)) + intBitsToFloat(PV1i.y))); +R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(uf_uniformRegisterVS[21].y)) + intBitsToFloat(PV1i.z))); +R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(uf_uniformRegisterVS[21].x)) + intBitsToFloat(PV1i.w))); +PV0i.w = R123i.w; +R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(backupReg1i))); +PS0i = R126i.z; +// 11 +PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(R126i.x))); +PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(R127i.y))); +R4i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.w),intBitsToFloat(PV0i.w)) + intBitsToFloat(R127i.w))); +PS1i = R4i.x; +// 12 +R4i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.w),intBitsToFloat(R127i.z)) + intBitsToFloat(R126i.z))); +R4i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.w),intBitsToFloat(R125i.y)) + intBitsToFloat(PV1i.y))); +R4i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.w),intBitsToFloat(R127i.x)) + intBitsToFloat(PV1i.x))); +} +activeMaskStack[3] = activeMaskStack[3] == false; +activeMaskStackC[4] = activeMaskStack[3] == true && activeMaskStackC[3] == true; +if( activeMaskStackC[4] == true ) { +// 0 +R127i.x = floatBitsToInt(float(R7i.x)); +PS0i = R127i.x; +// 1 +tempResultf = intBitsToFloat(PS0i); +tempResultf = floor(tempResultf); +tempResultf = clamp(tempResultf, -256.0, 255.0); +ARi.x = int(tempResultf); +PV1i.x = floatBitsToInt(tempResultf); +// 2 +R4i.xyz = ivec3(uf_uniformRegisterVS[ARi.x+18].x,uf_uniformRegisterVS[ARi.x+18].y,uf_uniformRegisterVS[ARi.x+18].z); +R4i.w = uf_uniformRegisterVS[ARi.x+18].w; +} +activeMaskStackC[3] = activeMaskStack[2] == true && activeMaskStackC[2] == true; +activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; +if( activeMaskStackC[1] == true ) { +activeMaskStack[1] = activeMaskStack[0]; +activeMaskStackC[2] = activeMaskStackC[1]; +// 0 +predResult = (0 != uf_uniformRegisterVS[3].x); +activeMaskStack[1] = predResult; +activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; +} +else { +activeMaskStack[1] = false; +activeMaskStackC[2] = false; +} +if( activeMaskStackC[2] == true ) { +// 0 +backupReg0i = R0i.y; +backupReg1i = R0i.z; +backupReg2i = R0i.w; +R5i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R0i.x),intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),intBitsToFloat(backupReg2i)),vec4(intBitsToFloat(uf_uniformRegisterVS[22].x),intBitsToFloat(uf_uniformRegisterVS[22].y),intBitsToFloat(uf_uniformRegisterVS[22].z),intBitsToFloat(uf_uniformRegisterVS[22].w)))); +PV0i.x = R5i.x; +PV0i.y = R5i.x; +PV0i.z = R5i.x; +PV0i.w = R5i.x; +// 1 +backupReg0i = R0i.x; +backupReg1i = R0i.z; +backupReg2i = R0i.w; +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(R0i.y),intBitsToFloat(backupReg1i),intBitsToFloat(backupReg2i)),vec4(intBitsToFloat(uf_uniformRegisterVS[23].x),intBitsToFloat(uf_uniformRegisterVS[23].y),intBitsToFloat(uf_uniformRegisterVS[23].z),intBitsToFloat(uf_uniformRegisterVS[23].w)))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R5i.y = tempi.x; +// 2 +backupReg0i = R0i.x; +backupReg1i = R0i.y; +backupReg2i = R0i.w; +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),intBitsToFloat(R0i.z),intBitsToFloat(backupReg2i)),vec4(intBitsToFloat(uf_uniformRegisterVS[24].x),intBitsToFloat(uf_uniformRegisterVS[24].y),intBitsToFloat(uf_uniformRegisterVS[24].z),intBitsToFloat(uf_uniformRegisterVS[24].w)))); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +R5i.z = tempi.x; +// 3 +backupReg0i = R0i.x; +backupReg1i = R0i.y; +backupReg2i = R0i.z; +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),intBitsToFloat(backupReg2i),intBitsToFloat(R0i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[25].x),intBitsToFloat(uf_uniformRegisterVS[25].y),intBitsToFloat(uf_uniformRegisterVS[25].z),intBitsToFloat(uf_uniformRegisterVS[25].w)))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R5i.w = tempi.x; +} +activeMaskStack[1] = activeMaskStack[1] == false; +activeMaskStackC[2] = activeMaskStack[1] == true && activeMaskStackC[1] == true; +if( activeMaskStackC[2] == true ) { +activeMaskStack[2] = activeMaskStack[1]; +activeMaskStackC[3] = activeMaskStackC[2]; +// 0 +R1i.z = uf_uniformRegisterVS[2].x & int(1); +// 1 +predResult = (0 != R1i.z); +activeMaskStack[2] = predResult; +activeMaskStackC[3] = predResult == true && activeMaskStackC[2] == true; +} +else { +activeMaskStack[2] = false; +activeMaskStackC[3] = false; +} +if( activeMaskStackC[3] == true ) { +activeMaskStack[3] = activeMaskStack[2]; +activeMaskStackC[4] = activeMaskStackC[3]; +// 0 +R1i.y = uf_uniformRegisterVS[2].x & 0x00000002; +// 1 +predResult = (0 != R1i.y); +activeMaskStack[3] = predResult; +activeMaskStackC[4] = predResult == true && activeMaskStackC[3] == true; +} +else { +activeMaskStack[3] = false; +activeMaskStackC[4] = false; +} +if( activeMaskStackC[4] == true ) { +// 0 +PV0i.x = uf_uniformRegisterVS[2].x & 0x00010000; +R127i.y = uf_uniformRegisterVS[2].x & 0x00000010; +PV0i.y = R127i.y; +R125i.z = uf_uniformRegisterVS[2].x & 0x00000004; +R127i.w = uf_uniformRegisterVS[2].x & 0x00000020; +// 1 +R123i.x = ((PV0i.y == 0)?(R5i.w):(R5i.w)); +PV1i.x = R123i.x; +R123i.y = ((PV0i.y == 0)?(R5i.z):(R5i.z)); +PV1i.y = R123i.y; +R126i.z = ((PV0i.x == 0)?(R2i.y):(R3i.y)); +PV1i.z = R126i.z; +R123i.w = ((PV0i.x == 0)?(R2i.x):(R3i.x)); +PV1i.w = R123i.w; +R127i.z = ((PV0i.y == 0)?(R5i.y):(R5i.y)); +PS1i = R127i.z; +// 2 +R1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.x), intBitsToFloat(PV1i.w))); +PV0i.x = R1i.x; +R126i.y = floatBitsToInt(-(intBitsToFloat(PV1i.w)) + 1.0); +PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS1i), intBitsToFloat(PV1i.z))); +R123i.w = ((R127i.w == 0)?(PV1i.y):(PV1i.y)); +PV0i.w = R123i.w; +R122i.x = ((R127i.w == 0)?(PV1i.x):(PV1i.x)); +PS0i = R122i.x; +// 3 +backupReg0i = R127i.y; +R123i.x = ((R127i.w == 0)?(R127i.z):(PV0i.z)); +PV1i.x = R123i.x; +R127i.y = floatBitsToInt(-(intBitsToFloat(R126i.z)) + 1.0); +R127i.z = ((R125i.z == 0)?(PV0i.w):(PV0i.w)); +R123i.w = ((backupReg0i == 0)?(R5i.x):(PV0i.x)); +PV1i.w = R123i.w; +R124i.z = ((R125i.z == 0)?(PS0i):(PS0i)); +PS1i = R124i.z; +// 4 +R127i.x = ((R125i.z == 0)?(PV1i.x):(PV1i.x)); +PV0i.x = R127i.x; +R125i.y = ((R127i.w == 0)?(PV1i.w):(PV1i.w)); +PV0i.y = R125i.y; +R126i.z = uf_uniformRegisterVS[2].x & 0x00000008; +// 5 +R126i.x = floatBitsToInt(intBitsToFloat(PV0i.x) + intBitsToFloat(R127i.y)); +PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.y) + intBitsToFloat(R126i.y)); +// 6 +R123i.y = ((R125i.z == 0)?(R125i.y):(PV1i.z)); +PV0i.y = R123i.y; +// 7 +R5i.x = ((R126i.z == 0)?(PV0i.y):(PV0i.y)); +R5i.y = ((R126i.z == 0)?(R127i.x):(R126i.x)); +R5i.z = ((R126i.z == 0)?(R127i.z):(R127i.z)); +// 8 +R5i.w = ((R126i.z == 0)?(R124i.z):(R124i.z)); +} +activeMaskStackC[3] = activeMaskStack[2] == true && activeMaskStackC[2] == true; +if( activeMaskStackC[3] == true ) { +// 0 +R1i.x = floatBitsToInt(-(intBitsToFloat(R5i.x)) + 1.0); +PV0i.x = R1i.x; +R126i.y = uf_uniformRegisterVS[2].x & 0x00010000; +R127i.z = uf_uniformRegisterVS[2].x & 0x00040000; +PV0i.w = uf_uniformRegisterVS[2].x & 0x00020000; +// 1 +R123i.x = ((PV0i.w == 0)?(R5i.z):(R5i.z)); +PV1i.x = R123i.x; +R127i.y = ((PV0i.w == 0)?(R5i.y):(R5i.y)); +PV1i.y = R127i.y; +R123i.z = ((PV0i.w == 0)?(R5i.x):(PV0i.x)); +PV1i.z = R123i.z; +R123i.w = ((PV0i.w == 0)?(R5i.w):(R5i.w)); +PV1i.w = R123i.w; +// 2 +R127i.x = ((R127i.z == 0)?(PV1i.z):(PV1i.z)); +PV0i.y = floatBitsToInt(-(intBitsToFloat(PV1i.y)) + 1.0); +R126i.z = ((R127i.z == 0)?(PV1i.x):(PV1i.x)); +R127i.w = ((R127i.z == 0)?(PV1i.w):(PV1i.w)); +// 3 +R123i.w = ((R127i.z == 0)?(R127i.y):(PV0i.y)); +PV1i.w = R123i.w; +// 4 +R5i.x = ((R126i.y == 0)?(R127i.x):(PV1i.w)); +R5i.y = ((R126i.y == 0)?(PV1i.w):(R127i.x)); +R5i.z = ((R126i.y == 0)?(R126i.z):(R126i.z)); +R5i.w = ((R126i.y == 0)?(R127i.w):(R127i.w)); +} +activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; +if( activeMaskStackC[1] == true ) { +activeMaskStack[1] = activeMaskStack[0]; +activeMaskStackC[2] = activeMaskStackC[1]; +// 0 +R127i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R5i.x),intBitsToFloat(R5i.y),intBitsToFloat(R5i.z),intBitsToFloat(R5i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[14].x),intBitsToFloat(uf_uniformRegisterVS[14].y),intBitsToFloat(uf_uniformRegisterVS[14].z),intBitsToFloat(uf_uniformRegisterVS[14].w)))); +PV0i.x = R127i.x; +PV0i.y = R127i.x; +PV0i.z = R127i.x; +PV0i.w = R127i.x; +// 1 +backupReg0i = R5i.x; +R5i.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(R5i.y),intBitsToFloat(R5i.z),intBitsToFloat(R5i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[13].x),intBitsToFloat(uf_uniformRegisterVS[13].y),intBitsToFloat(uf_uniformRegisterVS[13].z),intBitsToFloat(uf_uniformRegisterVS[13].w)))); +PV1i.x = R5i.x; +PV1i.y = R5i.x; +PV1i.z = R5i.x; +PV1i.w = R5i.x; +R1i.y = PV0i.x; +PS1i = R1i.y; +// 2 +R5i.y = floatBitsToInt(-(intBitsToFloat(PS1i)) + 1.0); +R5i.w = R127i.x; +// 3 +predResult = (0 != uf_uniformRegisterVS[3].y); +activeMaskStack[1] = predResult; +activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; +} +else { +activeMaskStack[1] = false; +activeMaskStackC[2] = false; +} +if( activeMaskStackC[2] == true ) { +// 0 +backupReg0i = R0i.y; +backupReg1i = R0i.z; +backupReg2i = R0i.w; +R6i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R0i.x),intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),intBitsToFloat(backupReg2i)),vec4(intBitsToFloat(uf_uniformRegisterVS[26].x),intBitsToFloat(uf_uniformRegisterVS[26].y),intBitsToFloat(uf_uniformRegisterVS[26].z),intBitsToFloat(uf_uniformRegisterVS[26].w)))); +PV0i.x = R6i.x; +PV0i.y = R6i.x; +PV0i.z = R6i.x; +PV0i.w = R6i.x; +// 1 +backupReg0i = R0i.x; +backupReg1i = R0i.z; +backupReg2i = R0i.w; +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(R0i.y),intBitsToFloat(backupReg1i),intBitsToFloat(backupReg2i)),vec4(intBitsToFloat(uf_uniformRegisterVS[27].x),intBitsToFloat(uf_uniformRegisterVS[27].y),intBitsToFloat(uf_uniformRegisterVS[27].z),intBitsToFloat(uf_uniformRegisterVS[27].w)))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R6i.y = tempi.x; +// 2 +backupReg0i = R0i.x; +backupReg1i = R0i.y; +backupReg2i = R0i.w; +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),intBitsToFloat(R0i.z),intBitsToFloat(backupReg2i)),vec4(intBitsToFloat(uf_uniformRegisterVS[28].x),intBitsToFloat(uf_uniformRegisterVS[28].y),intBitsToFloat(uf_uniformRegisterVS[28].z),intBitsToFloat(uf_uniformRegisterVS[28].w)))); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +R6i.z = tempi.x; +// 3 +backupReg0i = R0i.x; +backupReg1i = R0i.y; +backupReg2i = R0i.z; +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),intBitsToFloat(backupReg2i),intBitsToFloat(R0i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[29].x),intBitsToFloat(uf_uniformRegisterVS[29].y),intBitsToFloat(uf_uniformRegisterVS[29].z),intBitsToFloat(uf_uniformRegisterVS[29].w)))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R6i.w = tempi.x; +} +activeMaskStack[1] = activeMaskStack[1] == false; +activeMaskStackC[2] = activeMaskStack[1] == true && activeMaskStackC[1] == true; +if( activeMaskStackC[2] == true ) { +activeMaskStack[2] = activeMaskStack[1]; +activeMaskStackC[3] = activeMaskStackC[2]; +// 0 +R0i.w = uf_uniformRegisterVS[2].x & int(1); +// 1 +predResult = (0 != R0i.w); +activeMaskStack[2] = predResult; +activeMaskStackC[3] = predResult == true && activeMaskStackC[2] == true; +} +else { +activeMaskStack[2] = false; +activeMaskStackC[3] = false; +} +if( activeMaskStackC[3] == true ) { +activeMaskStack[3] = activeMaskStack[2]; +activeMaskStackC[4] = activeMaskStackC[3]; +// 0 +R0i.z = uf_uniformRegisterVS[2].x & 0x00000002; +// 1 +predResult = (0 != R0i.z); +activeMaskStack[3] = predResult; +activeMaskStackC[4] = predResult == true && activeMaskStackC[3] == true; +} +else { +activeMaskStack[3] = false; +activeMaskStackC[4] = false; +} +if( activeMaskStackC[4] == true ) { +// 0 +R127i.x = uf_uniformRegisterVS[2].x & 0x00000020; +R127i.y = uf_uniformRegisterVS[2].x & 0x00000010; +PV0i.y = R127i.y; +R125i.z = uf_uniformRegisterVS[2].x & 0x00000004; +PV0i.w = uf_uniformRegisterVS[2].x & 0x00010000; +// 1 +R123i.x = ((PV0i.w == 0)?(R2i.y):(R3i.y)); +PV1i.x = R123i.x; +R123i.z = ((PV0i.w == 0)?(R2i.x):(R3i.x)); +PV1i.z = R123i.z; +R125i.w = uf_uniformRegisterVS[2].x & 0x00000008; +R127i.z = ((PV0i.y == 0)?(R6i.y):(R6i.y)); +PS1i = R127i.z; +// 2 +R0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.x), intBitsToFloat(PV1i.z))); +PV0i.x = R0i.x; +PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS1i), intBitsToFloat(PV1i.x))); +R126i.z = floatBitsToInt(-(intBitsToFloat(PV1i.z)) + 1.0); +R127i.w = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + 1.0); +// 3 +R123i.z = ((R127i.x == 0)?(R127i.z):(PV0i.y)); +PV1i.z = R123i.z; +R123i.w = ((R127i.y == 0)?(R6i.x):(PV0i.x)); +PV1i.w = R123i.w; +// 4 +backupReg0i = R127i.x; +R127i.x = ((R125i.z == 0)?(PV1i.z):(PV1i.z)); +PV0i.x = R127i.x; +R126i.w = ((backupReg0i == 0)?(PV1i.w):(PV1i.w)); +PV0i.w = R126i.w; +// 5 +R126i.x = floatBitsToInt(intBitsToFloat(PV0i.x) + intBitsToFloat(R127i.w)); +PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.w) + intBitsToFloat(R126i.z)); +// 6 +R123i.y = ((R125i.z == 0)?(R126i.w):(PV1i.z)); +PV0i.y = R123i.y; +// 7 +R6i.x = ((R125i.w == 0)?(PV0i.y):(PV0i.y)); +R6i.y = ((R125i.w == 0)?(R127i.x):(R126i.x)); +} +activeMaskStackC[3] = activeMaskStack[2] == true && activeMaskStackC[2] == true; +if( activeMaskStackC[3] == true ) { +// 0 +R0i.x = floatBitsToInt(-(intBitsToFloat(R6i.x)) + 1.0); +PV0i.x = R0i.x; +PV0i.y = uf_uniformRegisterVS[2].x & 0x00020000; +R127i.z = uf_uniformRegisterVS[2].x & 0x00040000; +R126i.w = uf_uniformRegisterVS[2].x & 0x00010000; +// 1 +R123i.x = ((PV0i.y == 0)?(R6i.x):(PV0i.x)); +PV1i.x = R123i.x; +R127i.w = ((PV0i.y == 0)?(R6i.y):(R6i.y)); +PV1i.w = R127i.w; +// 2 +R127i.x = ((R127i.z == 0)?(PV1i.x):(PV1i.x)); +PV0i.y = floatBitsToInt(-(intBitsToFloat(PV1i.w)) + 1.0); +// 3 +R123i.w = ((R127i.z == 0)?(R127i.w):(PV0i.y)); +PV1i.w = R123i.w; +// 4 +R6i.x = ((R126i.w == 0)?(R127i.x):(PV1i.w)); +R6i.y = ((R126i.w == 0)?(PV1i.w):(R127i.x)); +} +activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; +if( activeMaskStackC[1] == true ) { +// 0 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R6i.x),intBitsToFloat(R6i.y),intBitsToFloat(R6i.z),intBitsToFloat(R6i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[16].x),intBitsToFloat(uf_uniformRegisterVS[16].y),intBitsToFloat(uf_uniformRegisterVS[16].z),intBitsToFloat(uf_uniformRegisterVS[16].w)))); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +// 1 +PV1i.x = PV0i.x; +R0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.y), intBitsToFloat(uf_uniformRegisterVS[0].y))); +R0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.z), intBitsToFloat(uf_uniformRegisterVS[0].z))); +R1i.w = PV0i.x; +R0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.x), intBitsToFloat(uf_uniformRegisterVS[0].x))); +PS1i = R0i.x; +// 2 +R1i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R6i.x),intBitsToFloat(R6i.y),intBitsToFloat(R6i.z),intBitsToFloat(R6i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[15].x),intBitsToFloat(uf_uniformRegisterVS[15].y),intBitsToFloat(uf_uniformRegisterVS[15].z),intBitsToFloat(uf_uniformRegisterVS[15].w)))); +PV0i.x = R1i.x; +PV0i.y = R1i.x; +PV0i.z = R1i.x; +PV0i.w = R1i.x; +R1i.y = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + 1.0); +PS0i = R1i.y; +// 3 +R0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.w), intBitsToFloat(uf_uniformRegisterVS[0].w))); +} +// export +gl_Position = vec4(intBitsToFloat(R9i.x), intBitsToFloat(R9i.y), intBitsToFloat(R9i.z), 0.0); +// export +passParameterSem0 = vec4(intBitsToFloat(R0i.x), intBitsToFloat(R0i.y), intBitsToFloat(R0i.z), 0.0); +// export +passParameterSem1 = vec4(intBitsToFloat(R5i.x), intBitsToFloat(R5i.y), intBitsToFloat(R5i.x), 0.0); +// export +passParameterSem2 = vec4(intBitsToFloat(R1i.x), intBitsToFloat(R1i.y), intBitsToFloat(R1i.x), 0.0); +} diff --git a/Enhancement/BreathOfTheWild_CleanCameraRune/Presets/Photo-Preset/5431383136d7b11b_0000000000000000_vs.txt b/Enhancement/BreathOfTheWild_CleanCameraRune/Presets/Photo-Preset/5431383136d7b11b_0000000000000000_vs.txt new file mode 100644 index 00000000..f3a6d204 --- /dev/null +++ b/Enhancement/BreathOfTheWild_CleanCameraRune/Presets/Photo-Preset/5431383136d7b11b_0000000000000000_vs.txt @@ -0,0 +1,1421 @@ +#version 420 +#extension GL_ARB_texture_gather : enable +#extension GL_ARB_shading_language_packing : enable +// shader 5431383136d7b11b +// Used for: Main Lines +uniform ivec4 uf_uniformRegisterVS[256]; +uniform vec2 uf_windowSpaceToClipSpaceTransform; +layout(location = 0) in uvec4 attrDataSem0; +out gl_PerVertex +{ + vec4 gl_Position; + float gl_PointSize; +}; +layout(location = 0) out vec4 passParameterSem0; +layout(location = 2) out vec4 passParameterSem1; +layout(location = 1) out vec4 passParameterSem2; +layout(location = 3) out vec4 passParameterSem3; +int clampFI32(int v) +{ +if( v == 0x7FFFFFFF ) + return floatBitsToInt(1.0); +else if( v == 0xFFFFFFFF ) + return floatBitsToInt(0.0); +return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); +} +float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } +void main() +{ +ivec4 R0i = ivec4(0); +ivec4 R1i = ivec4(0); +ivec4 R2i = ivec4(0); +ivec4 R3i = ivec4(0); +ivec4 R4i = ivec4(0); +ivec4 R5i = ivec4(0); +ivec4 R6i = ivec4(0); +ivec4 R7i = ivec4(0); +ivec4 R8i = ivec4(0); +ivec4 R9i = ivec4(0); +ivec4 R122i = ivec4(0); +ivec4 R123i = ivec4(0); +ivec4 R124i = ivec4(0); +ivec4 R125i = ivec4(0); +ivec4 R126i = ivec4(0); +ivec4 R127i = ivec4(0); +uvec4 attrDecoder; +int backupReg0i, backupReg1i, backupReg2i, backupReg3i, backupReg4i; +ivec4 PV0i = ivec4(0), PV1i = ivec4(0); +int PS0i = 0, PS1i = 0; +ivec4 tempi = ivec4(0); +float tempResultf; +int tempResulti; +ivec4 ARi = ivec4(0); +bool predResult = true; +bool activeMaskStack[14]; +bool activeMaskStackC[15]; +activeMaskStack[0] = false; +activeMaskStack[1] = false; +activeMaskStack[2] = false; +activeMaskStack[3] = false; +activeMaskStack[4] = false; +activeMaskStack[5] = false; +activeMaskStack[6] = false; +activeMaskStack[7] = false; +activeMaskStack[8] = false; +activeMaskStack[9] = false; +activeMaskStack[10] = false; +activeMaskStack[11] = false; +activeMaskStack[12] = false; +activeMaskStackC[0] = false; +activeMaskStackC[1] = false; +activeMaskStackC[2] = false; +activeMaskStackC[3] = false; +activeMaskStackC[4] = false; +activeMaskStackC[5] = false; +activeMaskStackC[6] = false; +activeMaskStackC[7] = false; +activeMaskStackC[8] = false; +activeMaskStackC[9] = false; +activeMaskStackC[10] = false; +activeMaskStackC[11] = false; +activeMaskStackC[12] = false; +activeMaskStackC[13] = false; +activeMaskStack[0] = true; +activeMaskStackC[0] = true; +activeMaskStackC[1] = true; +vec3 cubeMapSTM; +int cubeMapFaceId; +R0i = ivec4(gl_VertexID, 0, 0, gl_InstanceID); +attrDecoder.xy = attrDataSem0.xy; +attrDecoder.xy = (attrDecoder.xy>>24)|((attrDecoder.xy>>8)&0xFF00)|((attrDecoder.xy<<8)&0xFF0000)|((attrDecoder.xy<<24)); +attrDecoder.z = 0; +attrDecoder.w = 0; +R1i = ivec4(int(attrDecoder.x), int(attrDecoder.y), floatBitsToInt(0.0), floatBitsToInt(1.0)); +if( activeMaskStackC[1] == true ) { +activeMaskStack[1] = activeMaskStack[0]; +activeMaskStackC[2] = activeMaskStackC[1]; +// 0 +PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), intBitsToFloat(uf_uniformRegisterVS[19].x))); +R0i.y = floatBitsToInt(-(intBitsToFloat(R1i.y))); +PV0i.y = R0i.y; +R1i.z = 0; +R1i.w = 0x3f800000; +R127i.w = floatBitsToInt(1.0); +PS0i = R127i.w; +// 1 +R0i.x = floatBitsToInt(intBitsToFloat(PV0i.x) + intBitsToFloat(uf_uniformRegisterVS[19].z)); +PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(uf_uniformRegisterVS[19].y))); +// 2 +R0i.y = floatBitsToInt(intBitsToFloat(PV1i.z) + intBitsToFloat(uf_uniformRegisterVS[19].w)); +PV0i.y = R0i.y; +R0i.w = uf_uniformRegisterVS[2].x & 0x40000000; +// 3 +R127i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(R1i.z),intBitsToFloat(R1i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[4].x),intBitsToFloat(uf_uniformRegisterVS[4].y),intBitsToFloat(uf_uniformRegisterVS[4].z),intBitsToFloat(uf_uniformRegisterVS[4].w)))); +PV1i.x = R127i.x; +PV1i.y = R127i.x; +PV1i.z = R127i.x; +PV1i.w = R127i.x; +// 4 +backupReg0i = R0i.x; +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(R0i.y),intBitsToFloat(R1i.z),intBitsToFloat(R1i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[5].x),intBitsToFloat(uf_uniformRegisterVS[5].y),intBitsToFloat(uf_uniformRegisterVS[5].z),intBitsToFloat(uf_uniformRegisterVS[5].w)))); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +R127i.y = tempi.x; +// 5 +backupReg0i = R0i.x; +backupReg1i = R0i.y; +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),intBitsToFloat(R1i.z),intBitsToFloat(R1i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[6].x),intBitsToFloat(uf_uniformRegisterVS[6].y),intBitsToFloat(uf_uniformRegisterVS[6].z),intBitsToFloat(uf_uniformRegisterVS[6].w)))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R127i.z = tempi.x; +// 6 +R4i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R127i.x),intBitsToFloat(R127i.y),intBitsToFloat(PV1i.x),intBitsToFloat(R127i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[8].x),intBitsToFloat(uf_uniformRegisterVS[8].y),intBitsToFloat(uf_uniformRegisterVS[8].z),intBitsToFloat(uf_uniformRegisterVS[8].w)))); +PV0i.x = R4i.x; +PV0i.y = R4i.x; +PV0i.z = R4i.x; +PV0i.w = R4i.x; +// 7 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R127i.x),intBitsToFloat(R127i.y),intBitsToFloat(R127i.z),intBitsToFloat(R127i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[9].x),intBitsToFloat(uf_uniformRegisterVS[9].y),intBitsToFloat(uf_uniformRegisterVS[9].z),intBitsToFloat(uf_uniformRegisterVS[9].w)))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R4i.y = tempi.x; +// 8 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R127i.x),intBitsToFloat(R127i.y),intBitsToFloat(R127i.z),intBitsToFloat(R127i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[10].x),intBitsToFloat(uf_uniformRegisterVS[10].y),intBitsToFloat(uf_uniformRegisterVS[10].z),intBitsToFloat(uf_uniformRegisterVS[10].w)))); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +R4i.z = tempi.x; +// 9 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R127i.x),intBitsToFloat(R127i.y),intBitsToFloat(R127i.z),intBitsToFloat(R127i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[11].x),intBitsToFloat(uf_uniformRegisterVS[11].y),intBitsToFloat(uf_uniformRegisterVS[11].z),intBitsToFloat(uf_uniformRegisterVS[11].w)))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R4i.w = tempi.x; +// 10 +R2i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_uniformRegisterVS[19].x), intBitsToFloat(uf_uniformRegisterVS[12].x))); +R2i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_uniformRegisterVS[19].y), intBitsToFloat(uf_uniformRegisterVS[12].y))); +R3i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_uniformRegisterVS[19].x), intBitsToFloat(uf_uniformRegisterVS[12].y))); +PS0i = R3i.x; +// 11 +R3i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_uniformRegisterVS[19].y), intBitsToFloat(uf_uniformRegisterVS[12].x))); +// 12 +predResult = (0 != R0i.w); +activeMaskStack[1] = predResult; +activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; +} +else { +activeMaskStack[1] = false; +activeMaskStackC[2] = false; +} +if( activeMaskStackC[2] == true ) { +activeMaskStack[2] = activeMaskStack[1]; +activeMaskStackC[3] = activeMaskStackC[2]; +// 0 +R0i.z = uf_uniformRegisterVS[2].x & 0x00000002; +// 1 +predResult = (0 != R0i.z); +activeMaskStack[2] = predResult; +activeMaskStackC[3] = predResult == true && activeMaskStackC[2] == true; +} +else { +activeMaskStack[2] = false; +activeMaskStackC[3] = false; +} +if( activeMaskStackC[3] == true ) { +// 0 +backupReg0i = R1i.y; +R1i.y = backupReg0i; +PV0i.y = R1i.y; +R0i.z = 0; +PV0i.z = R0i.z; +R0i.w = 0x3f800000; +PV0i.w = R0i.w; +// 1 +R6i.xyz = ivec3(R1i.x,PV0i.y,PV0i.z); +PV1i.x = R6i.x; +PV1i.y = R6i.y; +PV1i.z = R6i.z; +R6i.w = PV0i.w; +PV1i.w = R6i.w; +// 2 +R7i.xyz = ivec3(PV1i.x,PV1i.y,PV1i.z); +PV0i.x = R7i.x; +PV0i.y = R7i.y; +PV0i.z = R7i.z; +R7i.w = PV1i.w; +PV0i.w = R7i.w; +// 3 +R5i.xyz = ivec3(PV0i.x,PV0i.y,PV0i.z); +R5i.w = PV0i.w; +} +activeMaskStack[2] = activeMaskStack[2] == false; +activeMaskStackC[3] = activeMaskStack[2] == true && activeMaskStackC[2] == true; +if( activeMaskStackC[3] == true ) { +// 0 +PS0i = int(intBitsToFloat(R1i.y)); +// 1 +PV1i.x = PS0i << int(1); +PS1i = int(intBitsToFloat(R1i.x)); +// 2 +R124i.z = PV1i.x + PS1i; +PV0i.z = R124i.z; +// 3 +R127i.x = (PV0i.z == 0x00000002)?int(0xFFFFFFFF):int(0x0); +PV1i.x = R127i.x; +R127i.y = (PV0i.z == 0x00000002)?int(0xFFFFFFFF):int(0x0); +R127i.z = (PV0i.z == 0x00000002)?int(0xFFFFFFFF):int(0x0); +R126i.w = (PV0i.z == int(1))?int(0xFFFFFFFF):int(0x0); +R124i.w = (PV0i.z == int(1))?int(0xFFFFFFFF):int(0x0); +PS1i = R124i.w; +// 4 +R124i.y = (R124i.z == int(1))?int(0xFFFFFFFF):int(0x0); +R126i.z = ((PV1i.x == 0)?(uf_uniformRegisterVS[27].y):(uf_uniformRegisterVS[26].y)); +R127i.w = ((PV1i.x == 0)?(uf_uniformRegisterVS[27].x):(uf_uniformRegisterVS[26].x)); +// 5 +backupReg0i = R127i.x; +backupReg0i = R127i.x; +R127i.x = ((backupReg0i == 0)?(uf_uniformRegisterVS[27].w):(uf_uniformRegisterVS[26].w)); +R126i.y = ((backupReg0i == 0)?(uf_uniformRegisterVS[27].z):(uf_uniformRegisterVS[26].z)); +// 6 +R126i.x = ((R127i.z == 0)?(uf_uniformRegisterVS[31].y):(uf_uniformRegisterVS[30].y)); +R125i.y = ((R127i.z == 0)?(uf_uniformRegisterVS[31].x):(uf_uniformRegisterVS[30].x)); +// 7 +backupReg0i = R127i.z; +backupReg0i = R127i.z; +R127i.z = ((backupReg0i == 0)?(uf_uniformRegisterVS[31].w):(uf_uniformRegisterVS[30].w)); +R125i.w = ((backupReg0i == 0)?(uf_uniformRegisterVS[31].z):(uf_uniformRegisterVS[30].z)); +// 8 +R125i.z = ((R127i.y == 0)?(uf_uniformRegisterVS[35].y):(uf_uniformRegisterVS[34].y)); +R0i.w = ((R127i.y == 0)?(uf_uniformRegisterVS[35].x):(uf_uniformRegisterVS[34].x)); +// 9 +backupReg0i = R127i.y; +R125i.x = ((R127i.y == 0)?(uf_uniformRegisterVS[35].w):(uf_uniformRegisterVS[34].w)); +R127i.y = ((backupReg0i == 0)?(uf_uniformRegisterVS[35].z):(uf_uniformRegisterVS[34].z)); +// 10 +backupReg0i = R127i.x; +backupReg1i = R126i.y; +backupReg2i = R126i.z; +backupReg3i = R127i.w; +R127i.x = ((R126i.w == 0)?(backupReg0i):(uf_uniformRegisterVS[25].w)); +R126i.y = ((R126i.w == 0)?(backupReg1i):(uf_uniformRegisterVS[25].z)); +R126i.z = ((R126i.w == 0)?(backupReg2i):(uf_uniformRegisterVS[25].y)); +R127i.w = ((R126i.w == 0)?(backupReg3i):(uf_uniformRegisterVS[25].x)); +// 11 +backupReg0i = R126i.x; +backupReg1i = R125i.y; +backupReg2i = R127i.z; +backupReg3i = R125i.w; +R126i.x = ((R124i.w == 0)?(backupReg0i):(uf_uniformRegisterVS[29].y)); +R125i.y = ((R124i.w == 0)?(backupReg1i):(uf_uniformRegisterVS[29].x)); +R127i.z = ((R124i.w == 0)?(backupReg2i):(uf_uniformRegisterVS[29].w)); +R125i.w = ((R124i.w == 0)?(backupReg3i):(uf_uniformRegisterVS[29].z)); +// 12 +backupReg0i = R125i.x; +backupReg1i = R127i.y; +backupReg2i = R125i.z; +R125i.x = ((R124i.y == 0)?(backupReg0i):(uf_uniformRegisterVS[33].w)); +R127i.y = ((R124i.y == 0)?(backupReg1i):(uf_uniformRegisterVS[33].z)); +R125i.z = ((R124i.y == 0)?(backupReg2i):(uf_uniformRegisterVS[33].y)); +R124i.w = ((R124i.y == 0)?(R0i.w):(uf_uniformRegisterVS[33].x)); +// 13 +R6i.x = ((R124i.z == 0)?(uf_uniformRegisterVS[24].x):(R127i.w)); +R6i.y = ((R124i.z == 0)?(uf_uniformRegisterVS[24].y):(R126i.z)); +R6i.z = ((R124i.z == 0)?(uf_uniformRegisterVS[24].z):(R126i.y)); +R6i.w = ((R124i.z == 0)?(uf_uniformRegisterVS[24].w):(R127i.x)); +// 14 +R7i.x = ((R124i.z == 0)?(uf_uniformRegisterVS[28].x):(R125i.y)); +R7i.y = ((R124i.z == 0)?(uf_uniformRegisterVS[28].y):(R126i.x)); +R7i.z = ((R124i.z == 0)?(uf_uniformRegisterVS[28].z):(R125i.w)); +R7i.w = ((R124i.z == 0)?(uf_uniformRegisterVS[28].w):(R127i.z)); +// 15 +R5i.x = ((R124i.z == 0)?(uf_uniformRegisterVS[32].x):(R124i.w)); +R5i.y = ((R124i.z == 0)?(uf_uniformRegisterVS[32].y):(R125i.z)); +R5i.z = ((R124i.z == 0)?(uf_uniformRegisterVS[32].z):(R127i.y)); +R5i.w = ((R124i.z == 0)?(uf_uniformRegisterVS[32].w):(R125i.x)); +} +activeMaskStackC[2] = activeMaskStack[1] == true && activeMaskStackC[1] == true; +if( activeMaskStackC[2] == true ) { +// 0 +R8i.xyz = ivec3(0x437f0000,0x437f0000,0x437f0000); +R8i.w = 0x437f0000; +} +activeMaskStack[1] = activeMaskStack[1] == false; +activeMaskStackC[2] = activeMaskStack[1] == true && activeMaskStackC[1] == true; +if( activeMaskStackC[2] == true ) { +activeMaskStack[2] = activeMaskStack[1]; +activeMaskStackC[3] = activeMaskStackC[2]; +// 0 +PV0i.x = uf_uniformRegisterVS[2].x >> 0x00000008; +R5i.y = uf_uniformRegisterVS[2].x & 0x00000002; +// 1 +R0i.z = PV0i.x & 0x0000000f; +// 2 +predResult = (0 != R5i.y); +activeMaskStack[2] = predResult; +activeMaskStackC[3] = predResult == true && activeMaskStackC[2] == true; +} +else { +activeMaskStack[2] = false; +activeMaskStackC[3] = false; +} +if( activeMaskStackC[3] == true ) { +activeMaskStack[3] = activeMaskStack[2]; +activeMaskStackC[4] = activeMaskStackC[3]; +// 0 +R6i.y = R1i.y; +R3i.z = 0; +R0i.w = 0x3f800000; +PS0i = floatBitsToInt(1.0 / intBitsToFloat(uf_uniformRegisterVS[7].x)); +// 1 +R5i.x = floatBitsToInt(intBitsToFloat(PS0i) * intBitsToFloat(uf_uniformRegisterVS[1].x)); +PV1i.x = R5i.x; +R5i.y = floatBitsToInt(intBitsToFloat(PS0i) * intBitsToFloat(uf_uniformRegisterVS[1].y)); +PS1i = floatBitsToInt(1.0 / intBitsToFloat(uf_uniformRegisterVS[7].y)); +// 2 +R6i.x = floatBitsToInt(intBitsToFloat(uf_uniformRegisterVS[1].z) * intBitsToFloat(PS1i)); +PV0i.x = R6i.x; +R7i.y = floatBitsToInt(intBitsToFloat(uf_uniformRegisterVS[1].w) * intBitsToFloat(PS1i)); +R7i.x = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + 1.0); +PS0i = R7i.x; +// 3 +R8i.x = floatBitsToInt(-(intBitsToFloat(R5i.y)) + intBitsToFloat(PS0i)); +R2i.z = floatBitsToInt(-(intBitsToFloat(PV0i.x)) + 1.0); +PV1i.z = R2i.z; +R9i.x = floatBitsToInt(-(intBitsToFloat(R5i.y)) + 1.0); +PS1i = R9i.x; +// 4 +R5i.z = floatBitsToInt(-(intBitsToFloat(R7i.y)) + 1.0); +R2i.w = floatBitsToInt(-(intBitsToFloat(R7i.y)) + intBitsToFloat(PV1i.z)); +// 5 +predResult = (R0i.z == 0); +activeMaskStack[3] = predResult; +activeMaskStackC[4] = predResult == true && activeMaskStackC[3] == true; +} +else { +activeMaskStack[3] = false; +activeMaskStackC[4] = false; +} +if( activeMaskStackC[4] == true ) { +// 0 +backupReg0i = R5i.x; +R5i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), intBitsToFloat(backupReg0i))); +R5i.y = R6i.x; +PV0i.y = R5i.y; +// 1 +R5i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.y), intBitsToFloat(PV0i.y))); +} +activeMaskStack[3] = activeMaskStack[3] == false; +activeMaskStackC[4] = activeMaskStack[3] == true && activeMaskStackC[3] == true; +if( activeMaskStackC[4] == true ) { +activeMaskStack[4] = activeMaskStack[3]; +activeMaskStackC[5] = activeMaskStackC[4]; +// 0 +predResult = (R0i.z == int(1)); +activeMaskStack[4] = predResult; +activeMaskStackC[5] = predResult == true && activeMaskStackC[4] == true; +} +else { +activeMaskStack[4] = false; +activeMaskStackC[5] = false; +} +if( activeMaskStackC[5] == true ) { +// 0 +backupReg0i = R5i.y; +R5i.y = 0; +PV0i.y = R5i.y; +PV0i.z = R6i.x; +PV0i.w = backupReg0i; +// 1 +R5i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(PV0i.w)) + intBitsToFloat(R9i.x))); +R5i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(PV0i.z)) + intBitsToFloat(PV0i.y))); +} +activeMaskStack[4] = activeMaskStack[4] == false; +activeMaskStackC[5] = activeMaskStack[4] == true && activeMaskStackC[4] == true; +if( activeMaskStackC[5] == true ) { +activeMaskStack[5] = activeMaskStack[4]; +activeMaskStackC[6] = activeMaskStackC[5]; +// 0 +predResult = (R0i.z == 0x00000002); +activeMaskStack[5] = predResult; +activeMaskStackC[6] = predResult == true && activeMaskStackC[5] == true; +} +else { +activeMaskStack[5] = false; +activeMaskStackC[6] = false; +} +if( activeMaskStackC[6] == true ) { +// 0 +backupReg0i = R7i.y; +R7i.y = backupReg0i; +PV0i.y = R7i.y; +PV0i.z = R5i.z; +PV0i.w = 0; +// 1 +backupReg0i = R5i.x; +R5i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(backupReg0i)) + intBitsToFloat(PV0i.w))); +R5i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(PV0i.y)) + intBitsToFloat(PV0i.z))); +} +activeMaskStack[5] = activeMaskStack[5] == false; +activeMaskStackC[6] = activeMaskStack[5] == true && activeMaskStackC[5] == true; +if( activeMaskStackC[6] == true ) { +activeMaskStack[6] = activeMaskStack[5]; +activeMaskStackC[7] = activeMaskStackC[6]; +// 0 +predResult = (R0i.z == 0x00000003); +activeMaskStack[6] = predResult; +activeMaskStackC[7] = predResult == true && activeMaskStackC[6] == true; +} +else { +activeMaskStack[6] = false; +activeMaskStackC[7] = false; +} +if( activeMaskStackC[7] == true ) { +// 0 +backupReg0i = R5i.y; +R5i.y = R5i.z; +PV0i.y = R5i.y; +PV0i.z = R7i.y; +PV0i.w = backupReg0i; +// 1 +R5i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(PV0i.w)) + intBitsToFloat(R9i.x))); +R5i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(PV0i.z)) + intBitsToFloat(PV0i.y))); +} +activeMaskStack[6] = activeMaskStack[6] == false; +activeMaskStackC[7] = activeMaskStack[6] == true && activeMaskStackC[6] == true; +if( activeMaskStackC[7] == true ) { +activeMaskStack[7] = activeMaskStack[6]; +activeMaskStackC[8] = activeMaskStackC[7]; +// 0 +predResult = (R0i.z == 0x00000004); +activeMaskStack[7] = predResult; +activeMaskStackC[8] = predResult == true && activeMaskStackC[7] == true; +} +else { +activeMaskStack[7] = false; +activeMaskStackC[8] = false; +} +if( activeMaskStackC[8] == true ) { +// 0 +R5i.y = R2i.w; +PV0i.y = R5i.y; +PV0i.z = R6i.x; +PV0i.w = 0; +// 1 +backupReg0i = R5i.x; +R5i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(backupReg0i)) + intBitsToFloat(PV0i.w))); +R5i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(PV0i.y)) + intBitsToFloat(PV0i.z))); +} +activeMaskStack[7] = activeMaskStack[7] == false; +activeMaskStackC[8] = activeMaskStack[7] == true && activeMaskStackC[7] == true; +if( activeMaskStackC[8] == true ) { +activeMaskStack[8] = activeMaskStack[7]; +activeMaskStackC[9] = activeMaskStackC[8]; +// 0 +predResult = (R0i.z == 0x00000005); +activeMaskStack[8] = predResult; +activeMaskStackC[9] = predResult == true && activeMaskStackC[8] == true; +} +else { +activeMaskStack[8] = false; +activeMaskStackC[9] = false; +} +if( activeMaskStackC[9] == true ) { +// 0 +backupReg0i = R5i.y; +R5i.y = R6i.x; +PV0i.y = R5i.y; +PV0i.z = R2i.w; +PV0i.w = backupReg0i; +// 1 +R5i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(PV0i.w)) + intBitsToFloat(R9i.x))); +R5i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(PV0i.z)) + intBitsToFloat(PV0i.y))); +} +activeMaskStack[8] = activeMaskStack[8] == false; +activeMaskStackC[9] = activeMaskStack[8] == true && activeMaskStackC[8] == true; +if( activeMaskStackC[9] == true ) { +activeMaskStack[9] = activeMaskStack[8]; +activeMaskStackC[10] = activeMaskStackC[9]; +// 0 +predResult = (R0i.z == 0x00000006); +activeMaskStack[9] = predResult; +activeMaskStackC[10] = predResult == true && activeMaskStackC[9] == true; +} +else { +activeMaskStack[9] = false; +activeMaskStackC[10] = false; +} +if( activeMaskStackC[10] == true ) { +// 0 +R5i.y = R6i.x; +PV0i.y = R5i.y; +R7i.y = 0; +PS0i = R7i.y; +// 1 +backupReg0i = R5i.x; +R5i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(R8i.x)) + intBitsToFloat(backupReg0i))); +R5i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(PV0i.y)) + intBitsToFloat(PS0i))); +} +activeMaskStack[9] = activeMaskStack[9] == false; +activeMaskStackC[10] = activeMaskStack[9] == true && activeMaskStackC[9] == true; +if( activeMaskStackC[10] == true ) { +activeMaskStack[10] = activeMaskStack[9]; +activeMaskStackC[11] = activeMaskStackC[10]; +// 0 +predResult = (R0i.z == 0x00000007); +activeMaskStack[10] = predResult; +activeMaskStackC[11] = predResult == true && activeMaskStackC[10] == true; +} +else { +activeMaskStack[10] = false; +activeMaskStackC[11] = false; +} +if( activeMaskStackC[11] == true ) { +// 0 +backupReg0i = R5i.x; +R5i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(R8i.x)) + intBitsToFloat(backupReg0i))); +R5i.y = R7i.y; +PV0i.y = R5i.y; +R7i.y = R5i.z; +PS0i = R7i.y; +// 1 +R5i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(PV0i.y)) + intBitsToFloat(PS0i))); +} +activeMaskStack[10] = activeMaskStack[10] == false; +activeMaskStackC[11] = activeMaskStack[10] == true && activeMaskStackC[10] == true; +if( activeMaskStackC[11] == true ) { +activeMaskStack[11] = activeMaskStack[10]; +activeMaskStackC[12] = activeMaskStackC[11]; +// 0 +predResult = (R0i.z == 0x00000008); +activeMaskStack[11] = predResult; +activeMaskStackC[12] = predResult == true && activeMaskStackC[11] == true; +} +else { +activeMaskStack[11] = false; +activeMaskStackC[12] = false; +} +if( activeMaskStackC[12] == true ) { +// 0 +R5i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), intBitsToFloat(R9i.x))); +R5i.y = R6i.x; +PV0i.y = R5i.y; +// 1 +R5i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.y), intBitsToFloat(PV0i.y))); +} +activeMaskStack[11] = activeMaskStack[11] == false; +activeMaskStackC[12] = activeMaskStack[11] == true && activeMaskStackC[11] == true; +if( activeMaskStackC[12] == true ) { +activeMaskStack[12] = activeMaskStack[11]; +activeMaskStackC[13] = activeMaskStackC[12]; +// 0 +predResult = (R0i.z == 0x00000009); +activeMaskStack[12] = predResult; +activeMaskStackC[13] = predResult == true && activeMaskStackC[12] == true; +} +else { +activeMaskStack[12] = false; +activeMaskStackC[13] = false; +} +if( activeMaskStackC[13] == true ) { +// 0 +backupReg0i = R5i.y; +R5i.y = 0; +PV0i.y = R5i.y; +PV0i.z = R5i.z; +PV0i.w = backupReg0i; +// 1 +R5i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(PV0i.w)) + intBitsToFloat(R9i.x))); +R5i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(PV0i.z)) + intBitsToFloat(PV0i.y))); +} +activeMaskStack[12] = activeMaskStack[12] == false; +activeMaskStackC[13] = activeMaskStack[12] == true && activeMaskStackC[12] == true; +if( activeMaskStackC[13] == true ) { +activeMaskStack[13] = activeMaskStack[12]; +activeMaskStackC[14] = activeMaskStackC[13]; +// 0 +predResult = (R0i.z == 0x0000000a); +activeMaskStack[13] = predResult; +activeMaskStackC[14] = predResult == true && activeMaskStackC[13] == true; +} +else { +activeMaskStack[13] = false; +activeMaskStackC[14] = false; +} +if( activeMaskStackC[14] == true ) { +// 0 +R5i.y = R2i.z; +PV0i.y = R5i.y; +PV0i.z = R6i.x; +PV0i.w = 0; +// 1 +backupReg0i = R5i.x; +R5i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(backupReg0i)) + intBitsToFloat(PV0i.w))); +R5i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(PV0i.y)) + intBitsToFloat(PV0i.z))); +} +activeMaskStack[13] = activeMaskStack[13] == false; +activeMaskStackC[14] = activeMaskStack[13] == true && activeMaskStackC[13] == true; +if( activeMaskStackC[14] == true ) { +// 0 +PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), intBitsToFloat(R9i.x))); +R5i.y = R2i.w; +PV0i.y = R5i.y; +R127i.z = (R0i.z == 0x0000000c)?int(0xFFFFFFFF):int(0x0); +PV0i.z = R127i.z; +R127i.w = (R0i.z == 0x0000000b)?int(0xFFFFFFFF):int(0x0); +// 1 +PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.y), intBitsToFloat(PV0i.y))); +R5i.y = R5i.z; +PV1i.y = R5i.y; +R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(R7i.x)) + intBitsToFloat(R5i.x))); +PV1i.z = R123i.z; +R123i.w = ((PV0i.z == 0)?(0):(PV0i.x)); +PV1i.w = R123i.w; +// 2 +R5i.x = ((R127i.w == 0)?(PV1i.w):(PV1i.z)); +R123i.z = ((R127i.z == 0)?(0):(PV1i.x)); +PV0i.z = R123i.z; +R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(R7i.y)) + intBitsToFloat(PV1i.y))); +PV0i.w = R123i.w; +// 3 +R5i.y = ((R127i.w == 0)?(PV0i.z):(PV0i.w)); +} +activeMaskStackC[13] = activeMaskStack[12] == true && activeMaskStackC[12] == true; +activeMaskStackC[11] = activeMaskStack[10] == true && activeMaskStackC[10] == true; +activeMaskStackC[9] = activeMaskStack[8] == true && activeMaskStackC[8] == true; +activeMaskStackC[7] = activeMaskStack[6] == true && activeMaskStackC[6] == true; +activeMaskStackC[5] = activeMaskStack[4] == true && activeMaskStackC[4] == true; +activeMaskStackC[3] = activeMaskStack[2] == true && activeMaskStackC[2] == true; +if( activeMaskStackC[3] == true ) { +// 0 +R127i.x = floatBitsToInt(-(intBitsToFloat(R5i.y)) + 1.0); +PV0i.x = R127i.x; +R126i.y = floatBitsToInt(-(intBitsToFloat(R5i.x)) + 1.0); +// 1 +PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(uf_uniformRegisterVS[20].w))); +PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(uf_uniformRegisterVS[20].z))); +PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(uf_uniformRegisterVS[20].y))); +PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(uf_uniformRegisterVS[20].x))); +// 2 +R126i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),intBitsToFloat(uf_uniformRegisterVS[22].w)) + intBitsToFloat(PV1i.x))); +R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),intBitsToFloat(uf_uniformRegisterVS[22].z)) + intBitsToFloat(PV1i.y))); +R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),intBitsToFloat(uf_uniformRegisterVS[22].y)) + intBitsToFloat(PV1i.z))); +R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),intBitsToFloat(uf_uniformRegisterVS[22].x)) + intBitsToFloat(PV1i.w))); +PV0i.w = R123i.w; +// 3 +PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(uf_uniformRegisterVS[21].w))); +PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(uf_uniformRegisterVS[21].z))); +PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(uf_uniformRegisterVS[21].y))); +PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(uf_uniformRegisterVS[21].x))); +R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(PV0i.w))); +PS1i = R127i.w; +// 4 +backupReg0i = R127i.z; +R127i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),intBitsToFloat(uf_uniformRegisterVS[23].w)) + intBitsToFloat(PV1i.x))); +R125i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),intBitsToFloat(uf_uniformRegisterVS[23].z)) + intBitsToFloat(PV1i.y))); +R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),intBitsToFloat(uf_uniformRegisterVS[23].y)) + intBitsToFloat(PV1i.z))); +R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),intBitsToFloat(uf_uniformRegisterVS[23].x)) + intBitsToFloat(PV1i.w))); +PV0i.w = R123i.w; +R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(backupReg0i))); +PS0i = R126i.z; +// 5 +PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(R126i.x))); +PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(R127i.y))); +R8i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.x),intBitsToFloat(PV0i.w)) + intBitsToFloat(R127i.w))); +PS1i = R8i.x; +// 6 +R8i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.x),intBitsToFloat(R127i.z)) + intBitsToFloat(R126i.z))); +R8i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.x),intBitsToFloat(R125i.y)) + intBitsToFloat(PV1i.y))); +R8i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.x),intBitsToFloat(R127i.x)) + intBitsToFloat(PV1i.x))); +// 7 +backupReg0i = R6i.y; +R6i.xyz = ivec3(R1i.x,backupReg0i,R3i.z); +PV1i.x = R6i.x; +PV1i.y = R6i.y; +PV1i.z = R6i.z; +R6i.w = R0i.w; +PV1i.w = R6i.w; +// 8 +R7i.xyz = ivec3(PV1i.x,PV1i.y,PV1i.z); +PV0i.x = R7i.x; +PV0i.y = R7i.y; +PV0i.z = R7i.z; +R7i.w = PV1i.w; +PV0i.w = R7i.w; +// 9 +R5i.xyz = ivec3(PV0i.x,PV0i.y,PV0i.z); +R5i.w = PV0i.w; +} +activeMaskStack[2] = activeMaskStack[2] == false; +activeMaskStackC[3] = activeMaskStack[2] == true && activeMaskStackC[2] == true; +if( activeMaskStackC[3] == true ) { +activeMaskStack[3] = activeMaskStack[2]; +activeMaskStackC[4] = activeMaskStackC[3]; +// 0 +PS0i = int(intBitsToFloat(R1i.y)); +// 1 +PV1i.z = PS0i << int(1); +PS1i = int(intBitsToFloat(R1i.x)); +// 2 +R2i.z = PV1i.z + PS1i; +PV0i.z = R2i.z; +// 3 +R127i.x = (PV0i.z == 0x00000002)?int(0xFFFFFFFF):int(0x0); +PV1i.x = R127i.x; +R127i.y = (PV0i.z == 0x00000002)?int(0xFFFFFFFF):int(0x0); +R127i.z = (PV0i.z == 0x00000002)?int(0xFFFFFFFF):int(0x0); +R126i.w = (PV0i.z == int(1))?int(0xFFFFFFFF):int(0x0); +R124i.w = (PV0i.z == int(1))?int(0xFFFFFFFF):int(0x0); +PS1i = R124i.w; +// 4 +R124i.y = (R2i.z == int(1))?int(0xFFFFFFFF):int(0x0); +R126i.z = ((PV1i.x == 0)?(uf_uniformRegisterVS[27].y):(uf_uniformRegisterVS[26].y)); +R127i.w = ((PV1i.x == 0)?(uf_uniformRegisterVS[27].x):(uf_uniformRegisterVS[26].x)); +// 5 +backupReg0i = R127i.x; +backupReg0i = R127i.x; +R127i.x = ((backupReg0i == 0)?(uf_uniformRegisterVS[27].w):(uf_uniformRegisterVS[26].w)); +R126i.y = ((backupReg0i == 0)?(uf_uniformRegisterVS[27].z):(uf_uniformRegisterVS[26].z)); +// 6 +R126i.x = ((R127i.z == 0)?(uf_uniformRegisterVS[31].y):(uf_uniformRegisterVS[30].y)); +R125i.y = ((R127i.z == 0)?(uf_uniformRegisterVS[31].x):(uf_uniformRegisterVS[30].x)); +// 7 +backupReg0i = R127i.z; +backupReg0i = R127i.z; +R127i.z = ((backupReg0i == 0)?(uf_uniformRegisterVS[31].w):(uf_uniformRegisterVS[30].w)); +R125i.w = ((backupReg0i == 0)?(uf_uniformRegisterVS[31].z):(uf_uniformRegisterVS[30].z)); +// 8 +R125i.z = ((R127i.y == 0)?(uf_uniformRegisterVS[35].y):(uf_uniformRegisterVS[34].y)); +R0i.w = ((R127i.y == 0)?(uf_uniformRegisterVS[35].x):(uf_uniformRegisterVS[34].x)); +// 9 +backupReg0i = R127i.y; +R125i.x = ((R127i.y == 0)?(uf_uniformRegisterVS[35].w):(uf_uniformRegisterVS[34].w)); +R127i.y = ((backupReg0i == 0)?(uf_uniformRegisterVS[35].z):(uf_uniformRegisterVS[34].z)); +// 10 +backupReg0i = R127i.x; +backupReg1i = R126i.y; +backupReg2i = R126i.z; +backupReg3i = R127i.w; +R127i.x = ((R126i.w == 0)?(backupReg0i):(uf_uniformRegisterVS[25].w)); +R126i.y = ((R126i.w == 0)?(backupReg1i):(uf_uniformRegisterVS[25].z)); +R126i.z = ((R126i.w == 0)?(backupReg2i):(uf_uniformRegisterVS[25].y)); +R127i.w = ((R126i.w == 0)?(backupReg3i):(uf_uniformRegisterVS[25].x)); +// 11 +backupReg0i = R126i.x; +backupReg1i = R125i.y; +backupReg2i = R127i.z; +backupReg3i = R125i.w; +R126i.x = ((R124i.w == 0)?(backupReg0i):(uf_uniformRegisterVS[29].y)); +R125i.y = ((R124i.w == 0)?(backupReg1i):(uf_uniformRegisterVS[29].x)); +R127i.z = ((R124i.w == 0)?(backupReg2i):(uf_uniformRegisterVS[29].w)); +R125i.w = ((R124i.w == 0)?(backupReg3i):(uf_uniformRegisterVS[29].z)); +// 12 +backupReg0i = R125i.x; +backupReg1i = R127i.y; +backupReg2i = R125i.z; +R125i.x = ((R124i.y == 0)?(backupReg0i):(uf_uniformRegisterVS[33].w)); +R127i.y = ((R124i.y == 0)?(backupReg1i):(uf_uniformRegisterVS[33].z)); +R125i.z = ((R124i.y == 0)?(backupReg2i):(uf_uniformRegisterVS[33].y)); +R124i.w = ((R124i.y == 0)?(R0i.w):(uf_uniformRegisterVS[33].x)); +// 13 +R6i.x = ((R2i.z == 0)?(uf_uniformRegisterVS[24].x):(R127i.w)); +R6i.y = ((R2i.z == 0)?(uf_uniformRegisterVS[24].y):(R126i.z)); +R6i.z = ((R2i.z == 0)?(uf_uniformRegisterVS[24].z):(R126i.y)); +R6i.w = ((R2i.z == 0)?(uf_uniformRegisterVS[24].w):(R127i.x)); +// 14 +R7i.x = ((R2i.z == 0)?(uf_uniformRegisterVS[28].x):(R125i.y)); +R7i.y = ((R2i.z == 0)?(uf_uniformRegisterVS[28].y):(R126i.x)); +R7i.z = ((R2i.z == 0)?(uf_uniformRegisterVS[28].z):(R125i.w)); +R7i.w = ((R2i.z == 0)?(uf_uniformRegisterVS[28].w):(R127i.z)); +// 15 +R5i.x = ((R2i.z == 0)?(uf_uniformRegisterVS[32].x):(R124i.w)); +R5i.y = ((R2i.z == 0)?(uf_uniformRegisterVS[32].y):(R125i.z)); +R5i.z = ((R2i.z == 0)?(uf_uniformRegisterVS[32].z):(R127i.y)); +R5i.w = ((R2i.z == 0)?(uf_uniformRegisterVS[32].w):(R125i.x)); +// 16 +predResult = (R0i.z == 0x0000000d); +activeMaskStack[3] = predResult; +activeMaskStackC[4] = predResult == true && activeMaskStackC[3] == true; +} +else { +activeMaskStack[3] = false; +activeMaskStackC[4] = false; +} +if( activeMaskStackC[4] == true ) { +// 0 +PS0i = floatBitsToInt(1.0 / intBitsToFloat(uf_uniformRegisterVS[7].y)); +// 1 +PV1i.z = floatBitsToInt(intBitsToFloat(uf_uniformRegisterVS[1].w) * intBitsToFloat(PS0i)); +PV1i.w = floatBitsToInt(intBitsToFloat(uf_uniformRegisterVS[1].z) * intBitsToFloat(PS0i)); +PS1i = floatBitsToInt(1.0 / intBitsToFloat(uf_uniformRegisterVS[7].x)); +// 2 +R127i.x = PV1i.z; +R127i.y = PV1i.w; +PV0i.y = R127i.y; +R127i.z = floatBitsToInt(intBitsToFloat(PS1i) * intBitsToFloat(uf_uniformRegisterVS[1].x)); +PV0i.z = R127i.z; +R127i.w = floatBitsToInt(intBitsToFloat(PS1i) * intBitsToFloat(uf_uniformRegisterVS[1].y)); +// 3 +PV1i.z = floatBitsToInt(-(intBitsToFloat(PV0i.y)) + 1.0); +PV1i.w = floatBitsToInt(-(intBitsToFloat(PV0i.z)) + 1.0); +// 4 +PV0i.x = floatBitsToInt(-(intBitsToFloat(R127i.x)) + intBitsToFloat(PV1i.z)); +PV0i.y = floatBitsToInt(-(intBitsToFloat(R127i.w)) + intBitsToFloat(PV1i.w)); +// 5 +backupReg0i = R127i.z; +R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(PV0i.x)) + intBitsToFloat(R127i.y))); +PV1i.z = R127i.z; +R126i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(PV0i.y)) + intBitsToFloat(backupReg0i))); +PV1i.w = R126i.w; +// 6 +R127i.x = floatBitsToInt(-(intBitsToFloat(PV1i.z)) + 1.0); +PV0i.x = R127i.x; +R126i.y = floatBitsToInt(-(intBitsToFloat(PV1i.w)) + 1.0); +// 7 +PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(uf_uniformRegisterVS[20].w))); +PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(uf_uniformRegisterVS[20].z))); +PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(uf_uniformRegisterVS[20].y))); +PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(uf_uniformRegisterVS[20].x))); +// 8 +R126i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(uf_uniformRegisterVS[22].w)) + intBitsToFloat(PV1i.x))); +R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(uf_uniformRegisterVS[22].z)) + intBitsToFloat(PV1i.y))); +R126i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(uf_uniformRegisterVS[22].y)) + intBitsToFloat(PV1i.z))); +R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(uf_uniformRegisterVS[22].x)) + intBitsToFloat(PV1i.w))); +PV0i.w = R123i.w; +// 9 +PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(uf_uniformRegisterVS[21].w))); +PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(uf_uniformRegisterVS[21].z))); +PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(uf_uniformRegisterVS[21].y))); +PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(uf_uniformRegisterVS[21].x))); +R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(PV0i.w))); +PS1i = R127i.w; +// 10 +backupReg0i = R127i.z; +backupReg0i = R127i.z; +backupReg1i = R126i.z; +R127i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(uf_uniformRegisterVS[23].w)) + intBitsToFloat(PV1i.x))); +R125i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(uf_uniformRegisterVS[23].z)) + intBitsToFloat(PV1i.y))); +R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(uf_uniformRegisterVS[23].y)) + intBitsToFloat(PV1i.z))); +R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(uf_uniformRegisterVS[23].x)) + intBitsToFloat(PV1i.w))); +PV0i.w = R123i.w; +R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(backupReg1i))); +PS0i = R126i.z; +// 11 +PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(R126i.x))); +PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(R127i.y))); +R8i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.w),intBitsToFloat(PV0i.w)) + intBitsToFloat(R127i.w))); +PS1i = R8i.x; +// 12 +R8i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.w),intBitsToFloat(R127i.z)) + intBitsToFloat(R126i.z))); +R8i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.w),intBitsToFloat(R125i.y)) + intBitsToFloat(PV1i.y))); +R8i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.w),intBitsToFloat(R127i.x)) + intBitsToFloat(PV1i.x))); +} +activeMaskStack[3] = activeMaskStack[3] == false; +activeMaskStackC[4] = activeMaskStack[3] == true && activeMaskStackC[3] == true; +if( activeMaskStackC[4] == true ) { +// 0 +R127i.x = floatBitsToInt(float(R2i.z)); +PS0i = R127i.x; +// 1 +tempResultf = intBitsToFloat(PS0i); +tempResultf = floor(tempResultf); +tempResultf = clamp(tempResultf, -256.0, 255.0); +ARi.x = int(tempResultf); +PV1i.x = floatBitsToInt(tempResultf); +// 2 +R8i.xyz = ivec3(uf_uniformRegisterVS[ARi.x+20].x,uf_uniformRegisterVS[ARi.x+20].y,uf_uniformRegisterVS[ARi.x+20].z); +R8i.w = uf_uniformRegisterVS[ARi.x+20].w; +} +activeMaskStackC[3] = activeMaskStack[2] == true && activeMaskStackC[2] == true; +activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; +if( activeMaskStackC[1] == true ) { +activeMaskStack[1] = activeMaskStack[0]; +activeMaskStackC[2] = activeMaskStackC[1]; +// 0 +predResult = (0 != uf_uniformRegisterVS[3].x); +activeMaskStack[1] = predResult; +activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; +} +else { +activeMaskStack[1] = false; +activeMaskStackC[2] = false; +} +if( activeMaskStackC[2] == true ) { +// 0 +backupReg0i = R0i.y; +R6i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R0i.x),intBitsToFloat(backupReg0i),intBitsToFloat(R1i.z),intBitsToFloat(R1i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[24].x),intBitsToFloat(uf_uniformRegisterVS[24].y),intBitsToFloat(uf_uniformRegisterVS[24].z),intBitsToFloat(uf_uniformRegisterVS[24].w)))); +PV0i.x = R6i.x; +PV0i.y = R6i.x; +PV0i.z = R6i.x; +PV0i.w = R6i.x; +// 1 +backupReg0i = R0i.x; +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(R0i.y),intBitsToFloat(R1i.z),intBitsToFloat(R1i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[25].x),intBitsToFloat(uf_uniformRegisterVS[25].y),intBitsToFloat(uf_uniformRegisterVS[25].z),intBitsToFloat(uf_uniformRegisterVS[25].w)))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R6i.y = tempi.x; +// 2 +backupReg0i = R0i.x; +backupReg1i = R0i.y; +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),intBitsToFloat(R1i.z),intBitsToFloat(R1i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[26].x),intBitsToFloat(uf_uniformRegisterVS[26].y),intBitsToFloat(uf_uniformRegisterVS[26].z),intBitsToFloat(uf_uniformRegisterVS[26].w)))); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +R6i.z = tempi.x; +// 3 +backupReg0i = R0i.x; +backupReg1i = R0i.y; +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),intBitsToFloat(R1i.z),intBitsToFloat(R1i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[27].x),intBitsToFloat(uf_uniformRegisterVS[27].y),intBitsToFloat(uf_uniformRegisterVS[27].z),intBitsToFloat(uf_uniformRegisterVS[27].w)))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R6i.w = tempi.x; +} +activeMaskStack[1] = activeMaskStack[1] == false; +activeMaskStackC[2] = activeMaskStack[1] == true && activeMaskStackC[1] == true; +if( activeMaskStackC[2] == true ) { +activeMaskStack[2] = activeMaskStack[1]; +activeMaskStackC[3] = activeMaskStackC[2]; +// 0 +R0i.z = uf_uniformRegisterVS[2].x & int(1); +// 1 +predResult = (0 != R0i.z); +activeMaskStack[2] = predResult; +activeMaskStackC[3] = predResult == true && activeMaskStackC[2] == true; +} +else { +activeMaskStack[2] = false; +activeMaskStackC[3] = false; +} +if( activeMaskStackC[3] == true ) { +activeMaskStack[3] = activeMaskStack[2]; +activeMaskStackC[4] = activeMaskStackC[3]; +// 0 +R1i.y = uf_uniformRegisterVS[2].x & 0x00000002; +// 1 +predResult = (0 != R1i.y); +activeMaskStack[3] = predResult; +activeMaskStackC[4] = predResult == true && activeMaskStackC[3] == true; +} +else { +activeMaskStack[3] = false; +activeMaskStackC[4] = false; +} +if( activeMaskStackC[4] == true ) { +// 0 +PV0i.x = uf_uniformRegisterVS[2].x & 0x00010000; +R127i.y = uf_uniformRegisterVS[2].x & 0x00000010; +PV0i.y = R127i.y; +R125i.z = uf_uniformRegisterVS[2].x & 0x00000004; +R127i.w = uf_uniformRegisterVS[2].x & 0x00000020; +// 1 +R123i.x = ((PV0i.y == 0)?(R6i.w):(R6i.w)); +PV1i.x = R123i.x; +R123i.y = ((PV0i.y == 0)?(R6i.z):(R6i.z)); +PV1i.y = R123i.y; +R126i.z = ((PV0i.x == 0)?(R2i.y):(R3i.y)); +PV1i.z = R126i.z; +R123i.w = ((PV0i.x == 0)?(R2i.x):(R3i.x)); +PV1i.w = R123i.w; +R127i.z = ((PV0i.y == 0)?(R6i.y):(R6i.y)); +PS1i = R127i.z; +// 2 +R1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.x), intBitsToFloat(PV1i.w))); +PV0i.x = R1i.x; +R126i.y = floatBitsToInt(-(intBitsToFloat(PV1i.w)) + 1.0); +PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS1i), intBitsToFloat(PV1i.z))); +R123i.w = ((R127i.w == 0)?(PV1i.y):(PV1i.y)); +PV0i.w = R123i.w; +R122i.x = ((R127i.w == 0)?(PV1i.x):(PV1i.x)); +PS0i = R122i.x; +// 3 +backupReg0i = R127i.y; +R123i.x = ((R127i.w == 0)?(R127i.z):(PV0i.z)); +PV1i.x = R123i.x; +R127i.y = floatBitsToInt(-(intBitsToFloat(R126i.z)) + 1.0); +R127i.z = ((R125i.z == 0)?(PV0i.w):(PV0i.w)); +R123i.w = ((backupReg0i == 0)?(R6i.x):(PV0i.x)); +PV1i.w = R123i.w; +R124i.z = ((R125i.z == 0)?(PS0i):(PS0i)); +PS1i = R124i.z; +// 4 +R127i.x = ((R125i.z == 0)?(PV1i.x):(PV1i.x)); +PV0i.x = R127i.x; +R125i.y = ((R127i.w == 0)?(PV1i.w):(PV1i.w)); +PV0i.y = R125i.y; +R126i.z = uf_uniformRegisterVS[2].x & 0x00000008; +// 5 +R126i.x = floatBitsToInt(intBitsToFloat(PV0i.x) + intBitsToFloat(R127i.y)); +PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.y) + intBitsToFloat(R126i.y)); +// 6 +R123i.y = ((R125i.z == 0)?(R125i.y):(PV1i.z)); +PV0i.y = R123i.y; +// 7 +R6i.x = ((R126i.z == 0)?(PV0i.y):(PV0i.y)); +R6i.y = ((R126i.z == 0)?(R127i.x):(R126i.x)); +R6i.z = ((R126i.z == 0)?(R127i.z):(R127i.z)); +// 8 +R6i.w = ((R126i.z == 0)?(R124i.z):(R124i.z)); +} +activeMaskStackC[3] = activeMaskStack[2] == true && activeMaskStackC[2] == true; +if( activeMaskStackC[3] == true ) { +// 0 +R1i.x = floatBitsToInt(-(intBitsToFloat(R6i.x)) + 1.0); +PV0i.x = R1i.x; +R126i.y = uf_uniformRegisterVS[2].x & 0x00010000; +R127i.z = uf_uniformRegisterVS[2].x & 0x00040000; +PV0i.w = uf_uniformRegisterVS[2].x & 0x00020000; +// 1 +R123i.x = ((PV0i.w == 0)?(R6i.z):(R6i.z)); +PV1i.x = R123i.x; +R127i.y = ((PV0i.w == 0)?(R6i.y):(R6i.y)); +PV1i.y = R127i.y; +R123i.z = ((PV0i.w == 0)?(R6i.x):(PV0i.x)); +PV1i.z = R123i.z; +R123i.w = ((PV0i.w == 0)?(R6i.w):(R6i.w)); +PV1i.w = R123i.w; +// 2 +R127i.x = ((R127i.z == 0)?(PV1i.z):(PV1i.z)); +PV0i.y = floatBitsToInt(-(intBitsToFloat(PV1i.y)) + 1.0); +R126i.z = ((R127i.z == 0)?(PV1i.x):(PV1i.x)); +R127i.w = ((R127i.z == 0)?(PV1i.w):(PV1i.w)); +// 3 +R123i.w = ((R127i.z == 0)?(R127i.y):(PV0i.y)); +PV1i.w = R123i.w; +// 4 +R6i.x = ((R126i.y == 0)?(R127i.x):(PV1i.w)); +R6i.y = ((R126i.y == 0)?(PV1i.w):(R127i.x)); +R6i.z = ((R126i.y == 0)?(R126i.z):(R126i.z)); +R6i.w = ((R126i.y == 0)?(R127i.w):(R127i.w)); +} +activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; +if( activeMaskStackC[1] == true ) { +activeMaskStack[1] = activeMaskStack[0]; +activeMaskStackC[2] = activeMaskStackC[1]; +// 0 +R127i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R6i.x),intBitsToFloat(R6i.y),intBitsToFloat(R6i.z),intBitsToFloat(R6i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[14].x),intBitsToFloat(uf_uniformRegisterVS[14].y),intBitsToFloat(uf_uniformRegisterVS[14].z),intBitsToFloat(uf_uniformRegisterVS[14].w)))); +PV0i.x = R127i.x; +PV0i.y = R127i.x; +PV0i.z = R127i.x; +PV0i.w = R127i.x; +// 1 +backupReg0i = R6i.x; +R6i.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(R6i.y),intBitsToFloat(R6i.z),intBitsToFloat(R6i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[13].x),intBitsToFloat(uf_uniformRegisterVS[13].y),intBitsToFloat(uf_uniformRegisterVS[13].z),intBitsToFloat(uf_uniformRegisterVS[13].w)))); +PV1i.x = R6i.x; +PV1i.y = R6i.x; +PV1i.z = R6i.x; +PV1i.w = R6i.x; +R1i.y = PV0i.x; +PS1i = R1i.y; +// 2 +R6i.y = floatBitsToInt(-(intBitsToFloat(PS1i)) + 1.0); +R6i.w = R127i.x; +// 3 +predResult = (0 != uf_uniformRegisterVS[3].y); +activeMaskStack[1] = predResult; +activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; +} +else { +activeMaskStack[1] = false; +activeMaskStackC[2] = false; +} +if( activeMaskStackC[2] == true ) { +// 0 +backupReg0i = R0i.y; +R7i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R0i.x),intBitsToFloat(backupReg0i),intBitsToFloat(R1i.z),intBitsToFloat(R1i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[28].x),intBitsToFloat(uf_uniformRegisterVS[28].y),intBitsToFloat(uf_uniformRegisterVS[28].z),intBitsToFloat(uf_uniformRegisterVS[28].w)))); +PV0i.x = R7i.x; +PV0i.y = R7i.x; +PV0i.z = R7i.x; +PV0i.w = R7i.x; +// 1 +backupReg0i = R0i.x; +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(R0i.y),intBitsToFloat(R1i.z),intBitsToFloat(R1i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[29].x),intBitsToFloat(uf_uniformRegisterVS[29].y),intBitsToFloat(uf_uniformRegisterVS[29].z),intBitsToFloat(uf_uniformRegisterVS[29].w)))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R7i.y = tempi.x; +// 2 +backupReg0i = R0i.x; +backupReg1i = R0i.y; +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),intBitsToFloat(R1i.z),intBitsToFloat(R1i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[30].x),intBitsToFloat(uf_uniformRegisterVS[30].y),intBitsToFloat(uf_uniformRegisterVS[30].z),intBitsToFloat(uf_uniformRegisterVS[30].w)))); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +R7i.z = tempi.x; +// 3 +backupReg0i = R0i.x; +backupReg1i = R0i.y; +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),intBitsToFloat(R1i.z),intBitsToFloat(R1i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[31].x),intBitsToFloat(uf_uniformRegisterVS[31].y),intBitsToFloat(uf_uniformRegisterVS[31].z),intBitsToFloat(uf_uniformRegisterVS[31].w)))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R7i.w = tempi.x; +} +activeMaskStack[1] = activeMaskStack[1] == false; +activeMaskStackC[2] = activeMaskStack[1] == true && activeMaskStackC[1] == true; +if( activeMaskStackC[2] == true ) { +activeMaskStack[2] = activeMaskStack[1]; +activeMaskStackC[3] = activeMaskStackC[2]; +// 0 +R0i.w = uf_uniformRegisterVS[2].x & int(1); +// 1 +predResult = (0 != R0i.w); +activeMaskStack[2] = predResult; +activeMaskStackC[3] = predResult == true && activeMaskStackC[2] == true; +} +else { +activeMaskStack[2] = false; +activeMaskStackC[3] = false; +} +if( activeMaskStackC[3] == true ) { +activeMaskStack[3] = activeMaskStack[2]; +activeMaskStackC[4] = activeMaskStackC[3]; +// 0 +R0i.z = uf_uniformRegisterVS[2].x & 0x00000002; +// 1 +predResult = (0 != R0i.z); +activeMaskStack[3] = predResult; +activeMaskStackC[4] = predResult == true && activeMaskStackC[3] == true; +} +else { +activeMaskStack[3] = false; +activeMaskStackC[4] = false; +} +if( activeMaskStackC[4] == true ) { +// 0 +R127i.x = uf_uniformRegisterVS[2].x & 0x00000020; +R127i.y = uf_uniformRegisterVS[2].x & 0x00000010; +PV0i.y = R127i.y; +R125i.z = uf_uniformRegisterVS[2].x & 0x00000004; +PV0i.w = uf_uniformRegisterVS[2].x & 0x00010000; +// 1 +R123i.x = ((PV0i.w == 0)?(R2i.y):(R3i.y)); +PV1i.x = R123i.x; +R123i.z = ((PV0i.w == 0)?(R2i.x):(R3i.x)); +PV1i.z = R123i.z; +R125i.w = uf_uniformRegisterVS[2].x & 0x00000008; +R127i.z = ((PV0i.y == 0)?(R7i.y):(R7i.y)); +PS1i = R127i.z; +// 2 +R1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R7i.x), intBitsToFloat(PV1i.z))); +PV0i.x = R1i.x; +PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS1i), intBitsToFloat(PV1i.x))); +R126i.z = floatBitsToInt(-(intBitsToFloat(PV1i.z)) + 1.0); +R127i.w = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + 1.0); +// 3 +R123i.z = ((R127i.x == 0)?(R127i.z):(PV0i.y)); +PV1i.z = R123i.z; +R123i.w = ((R127i.y == 0)?(R7i.x):(PV0i.x)); +PV1i.w = R123i.w; +// 4 +backupReg0i = R127i.x; +R127i.x = ((R125i.z == 0)?(PV1i.z):(PV1i.z)); +PV0i.x = R127i.x; +R126i.w = ((backupReg0i == 0)?(PV1i.w):(PV1i.w)); +PV0i.w = R126i.w; +// 5 +R126i.x = floatBitsToInt(intBitsToFloat(PV0i.x) + intBitsToFloat(R127i.w)); +PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.w) + intBitsToFloat(R126i.z)); +// 6 +R123i.y = ((R125i.z == 0)?(R126i.w):(PV1i.z)); +PV0i.y = R123i.y; +// 7 +R7i.x = ((R125i.w == 0)?(PV0i.y):(PV0i.y)); +R7i.y = ((R125i.w == 0)?(R127i.x):(R126i.x)); +} +activeMaskStackC[3] = activeMaskStack[2] == true && activeMaskStackC[2] == true; +if( activeMaskStackC[3] == true ) { +// 0 +R1i.x = floatBitsToInt(-(intBitsToFloat(R7i.x)) + 1.0); +PV0i.x = R1i.x; +PV0i.y = uf_uniformRegisterVS[2].x & 0x00020000; +R127i.z = uf_uniformRegisterVS[2].x & 0x00040000; +R126i.w = uf_uniformRegisterVS[2].x & 0x00010000; +// 1 +R123i.x = ((PV0i.y == 0)?(R7i.x):(PV0i.x)); +PV1i.x = R123i.x; +R127i.w = ((PV0i.y == 0)?(R7i.y):(R7i.y)); +PV1i.w = R127i.w; +// 2 +R127i.x = ((R127i.z == 0)?(PV1i.x):(PV1i.x)); +PV0i.y = floatBitsToInt(-(intBitsToFloat(PV1i.w)) + 1.0); +// 3 +R123i.w = ((R127i.z == 0)?(R127i.w):(PV0i.y)); +PV1i.w = R123i.w; +// 4 +R7i.x = ((R126i.w == 0)?(R127i.x):(PV1i.w)); +R7i.y = ((R126i.w == 0)?(PV1i.w):(R127i.x)); +} +activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; +if( activeMaskStackC[1] == true ) { +activeMaskStack[1] = activeMaskStack[0]; +activeMaskStackC[2] = activeMaskStackC[1]; +// 0 +R127i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R7i.x),intBitsToFloat(R7i.y),intBitsToFloat(R7i.z),intBitsToFloat(R7i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[16].x),intBitsToFloat(uf_uniformRegisterVS[16].y),intBitsToFloat(uf_uniformRegisterVS[16].z),intBitsToFloat(uf_uniformRegisterVS[16].w)))); +PV0i.x = R127i.x; +PV0i.y = R127i.x; +PV0i.z = R127i.x; +PV0i.w = R127i.x; +// 1 +backupReg0i = R7i.x; +R7i.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(R7i.y),intBitsToFloat(R7i.z),intBitsToFloat(R7i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[15].x),intBitsToFloat(uf_uniformRegisterVS[15].y),intBitsToFloat(uf_uniformRegisterVS[15].z),intBitsToFloat(uf_uniformRegisterVS[15].w)))); +PV1i.x = R7i.x; +PV1i.y = R7i.x; +PV1i.z = R7i.x; +PV1i.w = R7i.x; +R1i.y = PV0i.x; +PS1i = R1i.y; +// 2 +R7i.y = floatBitsToInt(-(intBitsToFloat(PS1i)) + 1.0); +R7i.w = R127i.x; +// 3 +predResult = (0 != uf_uniformRegisterVS[3].z); +activeMaskStack[1] = predResult; +activeMaskStackC[2] = predResult == true && activeMaskStackC[1] == true; +} +else { +activeMaskStack[1] = false; +activeMaskStackC[2] = false; +} +if( activeMaskStackC[2] == true ) { +// 0 +backupReg0i = R0i.y; +R5i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R0i.x),intBitsToFloat(backupReg0i),intBitsToFloat(R1i.z),intBitsToFloat(R1i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[32].x),intBitsToFloat(uf_uniformRegisterVS[32].y),intBitsToFloat(uf_uniformRegisterVS[32].z),intBitsToFloat(uf_uniformRegisterVS[32].w)))); +PV0i.x = R5i.x; +PV0i.y = R5i.x; +PV0i.z = R5i.x; +PV0i.w = R5i.x; +// 1 +backupReg0i = R0i.x; +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(R0i.y),intBitsToFloat(R1i.z),intBitsToFloat(R1i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[33].x),intBitsToFloat(uf_uniformRegisterVS[33].y),intBitsToFloat(uf_uniformRegisterVS[33].z),intBitsToFloat(uf_uniformRegisterVS[33].w)))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R5i.y = tempi.x; +// 2 +backupReg0i = R0i.x; +backupReg1i = R0i.y; +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),intBitsToFloat(R1i.z),intBitsToFloat(R1i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[34].x),intBitsToFloat(uf_uniformRegisterVS[34].y),intBitsToFloat(uf_uniformRegisterVS[34].z),intBitsToFloat(uf_uniformRegisterVS[34].w)))); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +R5i.z = tempi.x; +// 3 +backupReg0i = R0i.x; +backupReg1i = R0i.y; +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),intBitsToFloat(R1i.z),intBitsToFloat(R1i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[35].x),intBitsToFloat(uf_uniformRegisterVS[35].y),intBitsToFloat(uf_uniformRegisterVS[35].z),intBitsToFloat(uf_uniformRegisterVS[35].w)))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R5i.w = tempi.x; +} +activeMaskStack[1] = activeMaskStack[1] == false; +activeMaskStackC[2] = activeMaskStack[1] == true && activeMaskStackC[1] == true; +if( activeMaskStackC[2] == true ) { +activeMaskStack[2] = activeMaskStack[1]; +activeMaskStackC[3] = activeMaskStackC[2]; +// 0 +R0i.x = uf_uniformRegisterVS[2].x & int(1); +// 1 +backupReg0i = R0i.x; +predResult = (0 != backupReg0i); +activeMaskStack[2] = predResult; +activeMaskStackC[3] = predResult == true && activeMaskStackC[2] == true; +} +else { +activeMaskStack[2] = false; +activeMaskStackC[3] = false; +} +if( activeMaskStackC[3] == true ) { +activeMaskStack[3] = activeMaskStack[2]; +activeMaskStackC[4] = activeMaskStackC[3]; +// 0 +R0i.w = uf_uniformRegisterVS[2].x & 0x00000002; +// 1 +predResult = (0 != R0i.w); +activeMaskStack[3] = predResult; +activeMaskStackC[4] = predResult == true && activeMaskStackC[3] == true; +} +else { +activeMaskStack[3] = false; +activeMaskStackC[4] = false; +} +if( activeMaskStackC[4] == true ) { +// 0 +R127i.x = uf_uniformRegisterVS[2].x & 0x00000020; +R127i.y = uf_uniformRegisterVS[2].x & 0x00000010; +PV0i.y = R127i.y; +R125i.z = uf_uniformRegisterVS[2].x & 0x00000004; +PV0i.w = uf_uniformRegisterVS[2].x & 0x00010000; +// 1 +R123i.x = ((PV0i.w == 0)?(R2i.y):(R3i.y)); +PV1i.x = R123i.x; +R123i.z = ((PV0i.w == 0)?(R2i.x):(R3i.x)); +PV1i.z = R123i.z; +R125i.w = uf_uniformRegisterVS[2].x & 0x00000008; +R127i.z = ((PV0i.y == 0)?(R5i.y):(R5i.y)); +PS1i = R127i.z; +// 2 +R0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.x), intBitsToFloat(PV1i.z))); +PV0i.x = R0i.x; +PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS1i), intBitsToFloat(PV1i.x))); +R126i.z = floatBitsToInt(-(intBitsToFloat(PV1i.z)) + 1.0); +R127i.w = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + 1.0); +// 3 +R123i.z = ((R127i.x == 0)?(R127i.z):(PV0i.y)); +PV1i.z = R123i.z; +R123i.w = ((R127i.y == 0)?(R5i.x):(PV0i.x)); +PV1i.w = R123i.w; +// 4 +backupReg0i = R127i.x; +R127i.x = ((R125i.z == 0)?(PV1i.z):(PV1i.z)); +PV0i.x = R127i.x; +R126i.w = ((backupReg0i == 0)?(PV1i.w):(PV1i.w)); +PV0i.w = R126i.w; +// 5 +R126i.x = floatBitsToInt(intBitsToFloat(PV0i.x) + intBitsToFloat(R127i.w)); +PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.w) + intBitsToFloat(R126i.z)); +// 6 +R123i.y = ((R125i.z == 0)?(R126i.w):(PV1i.z)); +PV0i.y = R123i.y; +// 7 +R5i.x = ((R125i.w == 0)?(PV0i.y):(PV0i.y)); +R5i.y = ((R125i.w == 0)?(R127i.x):(R126i.x)); +} +activeMaskStackC[3] = activeMaskStack[2] == true && activeMaskStackC[2] == true; +if( activeMaskStackC[3] == true ) { +// 0 +R0i.x = floatBitsToInt(-(intBitsToFloat(R5i.x)) + 1.0); +PV0i.x = R0i.x; +PV0i.y = uf_uniformRegisterVS[2].x & 0x00020000; +R127i.z = uf_uniformRegisterVS[2].x & 0x00040000; +R126i.w = uf_uniformRegisterVS[2].x & 0x00010000; +// 1 +R123i.x = ((PV0i.y == 0)?(R5i.x):(PV0i.x)); +PV1i.x = R123i.x; +R127i.w = ((PV0i.y == 0)?(R5i.y):(R5i.y)); +PV1i.w = R127i.w; +// 2 +R127i.x = ((R127i.z == 0)?(PV1i.x):(PV1i.x)); +PV0i.y = floatBitsToInt(-(intBitsToFloat(PV1i.w)) + 1.0); +// 3 +R123i.w = ((R127i.z == 0)?(R127i.w):(PV0i.y)); +PV1i.w = R123i.w; +// 4 +R5i.x = ((R126i.w == 0)?(R127i.x):(PV1i.w)); +R5i.y = ((R126i.w == 0)?(PV1i.w):(R127i.x)); +} +activeMaskStackC[1] = activeMaskStack[0] == true && activeMaskStackC[0] == true; +if( activeMaskStackC[1] == true ) { +// 0 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R5i.x),intBitsToFloat(R5i.y),intBitsToFloat(R5i.z),intBitsToFloat(R5i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[18].x),intBitsToFloat(uf_uniformRegisterVS[18].y),intBitsToFloat(uf_uniformRegisterVS[18].z),intBitsToFloat(uf_uniformRegisterVS[18].w)))); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +// 1 +PV1i.x = PV0i.x; +R0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.y), intBitsToFloat(uf_uniformRegisterVS[0].y))); +R0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.z), intBitsToFloat(uf_uniformRegisterVS[0].z))); +R1i.w = PV0i.x; +R0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.x), intBitsToFloat(uf_uniformRegisterVS[0].x))); +PS1i = R0i.x; +// 2 +R1i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R5i.x),intBitsToFloat(R5i.y),intBitsToFloat(R5i.z),intBitsToFloat(R5i.w)),vec4(intBitsToFloat(uf_uniformRegisterVS[17].x),intBitsToFloat(uf_uniformRegisterVS[17].y),intBitsToFloat(uf_uniformRegisterVS[17].z),intBitsToFloat(uf_uniformRegisterVS[17].w)))); +PV0i.x = R1i.x; +PV0i.y = R1i.x; +PV0i.z = R1i.x; +PV0i.w = R1i.x; +R1i.y = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + 1.0); +PS0i = R1i.y; +// 3 +R0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.w), intBitsToFloat(uf_uniformRegisterVS[0].w))); +} +// export +gl_Position = vec4(intBitsToFloat(R4i.x), intBitsToFloat(R4i.y), intBitsToFloat(R4i.z), 0.0); +// export +passParameterSem0 = vec4(intBitsToFloat(R0i.x), intBitsToFloat(R0i.y), intBitsToFloat(R0i.z), intBitsToFloat(R0i.w)); +// export +passParameterSem1 = vec4(intBitsToFloat(R6i.x), intBitsToFloat(R6i.y), intBitsToFloat(R6i.x), intBitsToFloat(R6i.w)); +// export +passParameterSem2 = vec4(intBitsToFloat(R7i.x), intBitsToFloat(R7i.y), intBitsToFloat(R7i.x), intBitsToFloat(R7i.w)); +// export +passParameterSem3 = vec4(intBitsToFloat(R1i.x), intBitsToFloat(R1i.y), intBitsToFloat(R1i.x), intBitsToFloat(R1i.w)); +} diff --git a/Enhancement/BreathOfTheWild_CleanCameraRune/Presets/Photo-Preset/569ebe93f1ae5799_0000000000000079_ps.txt b/Enhancement/BreathOfTheWild_CleanCameraRune/Presets/Photo-Preset/569ebe93f1ae5799_0000000000000079_ps.txt new file mode 100644 index 00000000..73d64072 --- /dev/null +++ b/Enhancement/BreathOfTheWild_CleanCameraRune/Presets/Photo-Preset/569ebe93f1ae5799_0000000000000079_ps.txt @@ -0,0 +1,43 @@ +#version 420 +#extension GL_ARB_texture_gather : enable +// shader 569ebe93f1ae5799 +// Used for: Vintage, Remove buttons, Edge Textures, Edge Background, Middle GUI +uniform ivec4 uf_remappedPS[2]; +layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0x22b12000 res 854x480x1 dim 1 tm: 4 format 0034 compSel: 0 0 0 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 2 2 2 border: 0 +layout(location = 0) in vec4 passParameterSem0; +layout(location = 0) out vec4 passPixelColor0; +uniform vec2 uf_fragCoordScale; +int clampFI32(int v) +{ +if( v == 0x7FFFFFFF ) + return floatBitsToInt(1.0); +else if( v == 0xFFFFFFFF ) + return floatBitsToInt(0.0); +return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); +} +float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } +void main() +{ +vec4 R0f = vec4(0.0); +vec4 R1f = vec4(0.0); +float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; +vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); +float PS0f = 0.0, PS1f = 0.0; +vec4 tempf = vec4(0.0); +float tempResultf; +int tempResulti; +ivec4 ARi = ivec4(0); +bool predResult = true; +vec3 cubeMapSTM; +int cubeMapFaceId; +R0f = passParameterSem0; +R0f.xyzw = (texture(textureUnitPS0, R0f.xy).xyzw); +// 0 +R1f.x = (mul_nonIEEE(R0f.x,intBitsToFloat(uf_remappedPS[0].x)) + intBitsToFloat(uf_remappedPS[1].x)); +R1f.y = (mul_nonIEEE(R0f.y,intBitsToFloat(uf_remappedPS[0].y)) + intBitsToFloat(uf_remappedPS[1].y)); +// 1 +R1f.z = (mul_nonIEEE(R0f.z,intBitsToFloat(uf_remappedPS[0].z)) + intBitsToFloat(uf_remappedPS[1].z)); +R1f.w = (mul_nonIEEE(R0f.w,intBitsToFloat(uf_remappedPS[0].w)) + intBitsToFloat(uf_remappedPS[1].w)); +// export +passPixelColor0 = vec4(R1f.x, R1f.y, R1f.z, 0.0); +} \ No newline at end of file diff --git a/Enhancement/BreathOfTheWild_CleanCameraRune/Presets/Photo-Preset/7751959c9083eebb_000000000000007d_ps.txt b/Enhancement/BreathOfTheWild_CleanCameraRune/Presets/Photo-Preset/7751959c9083eebb_000000000000007d_ps.txt new file mode 100644 index 00000000..27143773 --- /dev/null +++ b/Enhancement/BreathOfTheWild_CleanCameraRune/Presets/Photo-Preset/7751959c9083eebb_000000000000007d_ps.txt @@ -0,0 +1,82 @@ +#version 420 +#extension GL_ARB_texture_gather : enable +// shader 7751959c9083eebb +// Used for: Font Edge +uniform ivec4 uf_remappedPS[4]; +layout(binding = 0) uniform sampler2DArray textureUnitPS0;// Tex0 addr 0x201f6000 res 512x1024x1 dim 5 tm: 4 format 0034 compSel: 5 5 5 0 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 0 0 0 border: 0 +layout(location = 0) in vec4 passParameterSem0; +layout(location = 1) in vec4 passParameterSem1; +layout(location = 0) out vec4 passPixelColor0; +uniform vec2 uf_fragCoordScale; +int clampFI32(int v) +{ +if( v == 0x7FFFFFFF ) + return floatBitsToInt(1.0); +else if( v == 0xFFFFFFFF ) + return floatBitsToInt(0.0); +return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); +} +float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } +void main() +{ +ivec4 R0i = ivec4(0); +ivec4 R1i = ivec4(0); +ivec4 R2i = ivec4(0); +ivec4 R123i = ivec4(0); +ivec4 R127i = ivec4(0); +int backupReg0i, backupReg1i, backupReg2i, backupReg3i, backupReg4i; +ivec4 PV0i = ivec4(0), PV1i = ivec4(0); +int PS0i = 0, PS1i = 0; +ivec4 tempi = ivec4(0); +float tempResultf; +int tempResulti; +ivec4 ARi = ivec4(0); +bool predResult = true; +vec3 cubeMapSTM; +int cubeMapFaceId; +R0i = floatBitsToInt(passParameterSem0); +R1i = floatBitsToInt(passParameterSem1); +// 0 +backupReg0i = R1i.z; +R2i.x = ((intBitsToFloat(R0i.w) > 0.0)?int(0xFFFFFFFF):int(0x0)); +R1i.z = floatBitsToInt(roundEven(intBitsToFloat(backupReg0i))); +R1i.xyzw = floatBitsToInt(texture(textureUnitPS0, vec3(intBitsToFloat(R1i.x),intBitsToFloat(R1i.y),intBitsToFloat(R1i.z))).xyzw); +// 0 +R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(uf_remappedPS[0].y)) + intBitsToFloat(uf_remappedPS[1].y))); +PV0i.z = R123i.z; +R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(uf_remappedPS[0].x)) + intBitsToFloat(uf_remappedPS[1].x))); +PV0i.w = R123i.w; +// 1 +backupReg0i = R0i.x; +PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.w), intBitsToFloat(uf_remappedPS[0].w))); +R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.z),intBitsToFloat(uf_remappedPS[0].z)) + intBitsToFloat(uf_remappedPS[1].z))); +PV1i.y = R123i.y; +R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PV0i.w))); +R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.y), intBitsToFloat(PV0i.z))); +// 2 +R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.z), intBitsToFloat(PV1i.y))); +R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.w), intBitsToFloat(PV1i.x))); +R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(uf_remappedPS[2].y)) + intBitsToFloat(uf_remappedPS[3].y))); +PV0i.z = R123i.z; +R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(uf_remappedPS[2].x)) + intBitsToFloat(uf_remappedPS[3].x))); +PV0i.w = R123i.w; +// 3 +backupReg0i = R0i.x; +PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.w), intBitsToFloat(uf_remappedPS[2].w))); +R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.z),intBitsToFloat(uf_remappedPS[2].z)) + intBitsToFloat(uf_remappedPS[3].z))); +PV1i.y = R123i.y; +PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PV0i.w))); +PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.y), intBitsToFloat(PV0i.z))); +// 4 +backupReg0i = R0i.z; +PV0i.x = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(R0i.w)), intBitsToFloat(PV1i.x))); +R0i.y = ((R2i.x == 0)?(PV1i.w):(R127i.w)); +PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PV1i.y))); +R0i.x = ((R2i.x == 0)?(PV1i.z):(R127i.z)); +PS0i = R0i.x; +// 5 +R0i.z = ((R2i.x == 0)?(PV0i.z):(R127i.x)); +R0i.w = ((R2i.x == 0)?(PV0i.x):(R127i.y)); +// export +passPixelColor0 = vec4(intBitsToFloat(R0i.x), intBitsToFloat(R0i.y), intBitsToFloat(R0i.z), 0.0); +} diff --git a/Enhancement/BreathOfTheWild_CleanCameraRune/Presets/Photo-Preset/a15e2a77cef4c5e3_000000000000007d_ps.txt b/Enhancement/BreathOfTheWild_CleanCameraRune/Presets/Photo-Preset/a15e2a77cef4c5e3_000000000000007d_ps.txt new file mode 100644 index 00000000..3b76f014 --- /dev/null +++ b/Enhancement/BreathOfTheWild_CleanCameraRune/Presets/Photo-Preset/a15e2a77cef4c5e3_000000000000007d_ps.txt @@ -0,0 +1,84 @@ +#version 420 +#extension GL_ARB_texture_gather : enable +// shader a15e2a77cef4c5e3 +// Used for: Text Edge +uniform ivec4 uf_remappedPS[4]; +layout(binding = 0) uniform sampler2DArray textureUnitPS0;// Tex0 addr 0x20340000 res 1024x1024x1 dim 5 tm: 4 format 0001 compSel: 5 5 5 0 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 0 0 0 border: 0 +layout(location = 0) in vec4 passParameterSem0; +layout(location = 1) in vec4 passParameterSem1; +layout(location = 0) out vec4 passPixelColor0; +uniform vec2 uf_fragCoordScale; +int clampFI32(int v) +{ +if( v == 0x7FFFFFFF ) + return floatBitsToInt(1.0); +else if( v == 0xFFFFFFFF ) + return floatBitsToInt(0.0); +return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); +} +float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } +void main() +{ +ivec4 R0i = ivec4(0); +ivec4 R1i = ivec4(0); +ivec4 R2i = ivec4(0); +ivec4 R123i = ivec4(0); +ivec4 R126i = ivec4(0); +ivec4 R127i = ivec4(0); +int backupReg0i, backupReg1i, backupReg2i, backupReg3i, backupReg4i; +ivec4 PV0i = ivec4(0), PV1i = ivec4(0); +int PS0i = 0, PS1i = 0; +ivec4 tempi = ivec4(0); +float tempResultf; +int tempResulti; +ivec4 ARi = ivec4(0); +bool predResult = true; +vec3 cubeMapSTM; +int cubeMapFaceId; +R0i = floatBitsToInt(passParameterSem0); +R1i = floatBitsToInt(passParameterSem1); +// 0 +backupReg0i = R1i.z; +R2i.x = floatBitsToInt(intBitsToFloat(uf_remappedPS[0].y) + intBitsToFloat(uf_remappedPS[1].y)); +R2i.y = ((intBitsToFloat(R0i.w) > 0.0)?int(0xFFFFFFFF):int(0x0)); +R1i.z = floatBitsToInt(roundEven(intBitsToFloat(backupReg0i))); +R2i.w = floatBitsToInt(intBitsToFloat(uf_remappedPS[0].x) + intBitsToFloat(uf_remappedPS[1].x)); +R1i.w = floatBitsToInt(texture(textureUnitPS0, vec3(intBitsToFloat(R1i.x),intBitsToFloat(R1i.y),intBitsToFloat(R1i.z))).w); +// 0 +backupReg0i = R0i.y; +R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.x), intBitsToFloat(R2i.w))); +PV0i.y = floatBitsToInt(intBitsToFloat(uf_remappedPS[0].z) + intBitsToFloat(uf_remappedPS[1].z)); +PV0i.z = floatBitsToInt(intBitsToFloat(R1i.w) + -(0.5)); +PV0i.z = floatBitsToInt(intBitsToFloat(PV0i.z) * 2.0); +PV0i.w = ((intBitsToFloat(0x3f0a3d71) > intBitsToFloat(R1i.w))?int(0xFFFFFFFF):int(0x0)); +R126i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(R2i.x))); +PS0i = R126i.w; +// 1 +R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.z), intBitsToFloat(PV0i.y))); +R123i.y = ((PV0i.w == 0)?(PV0i.z):(0)); +PV1i.y = R123i.y; +PV1i.z = floatBitsToInt(intBitsToFloat(uf_remappedPS[2].y) + intBitsToFloat(uf_remappedPS[3].y)); +PV1i.w = floatBitsToInt(intBitsToFloat(uf_remappedPS[2].x) + intBitsToFloat(uf_remappedPS[3].x)); +// 2 +backupReg0i = R0i.x; +backupReg1i = R0i.y; +PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.y), intBitsToFloat(uf_remappedPS[3].w))); +PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.y), intBitsToFloat(uf_remappedPS[1].w))); +PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PV1i.w))); +R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg1i), intBitsToFloat(PV1i.z))); +// 3 +PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.w), intBitsToFloat(PV0i.y))); +PV1i.y = floatBitsToInt(intBitsToFloat(uf_remappedPS[2].z) + intBitsToFloat(uf_remappedPS[3].z)); +PV1i.z = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(R0i.w)), intBitsToFloat(PV0i.x))); +R1i.x = ((R2i.y == 0)?(PV0i.z):(R127i.x)); +PS1i = R1i.x; +// 4 +backupReg0i = R0i.z; +R1i.y = ((R2i.y == 0)?(R127i.w):(R126i.w)); +PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PV1i.y))); +R1i.w = ((R2i.y == 0)?(PV1i.z):(PV1i.x)); +// 5 +R1i.z = ((R2i.y == 0)?(PV0i.z):(R126i.x)); +// export +passPixelColor0 = vec4(intBitsToFloat(R1i.x), intBitsToFloat(R1i.y), intBitsToFloat(R1i.z), 0.0); +} diff --git a/Enhancement/BreathOfTheWild_CleanCameraRune/Presets/Photo-Preset/cb83a22cf0961e1a_000000000000007d_ps.txt b/Enhancement/BreathOfTheWild_CleanCameraRune/Presets/Photo-Preset/cb83a22cf0961e1a_000000000000007d_ps.txt new file mode 100644 index 00000000..2de63421 --- /dev/null +++ b/Enhancement/BreathOfTheWild_CleanCameraRune/Presets/Photo-Preset/cb83a22cf0961e1a_000000000000007d_ps.txt @@ -0,0 +1,93 @@ +#version 420 +#extension GL_ARB_texture_gather : enable +// shader cb83a22cf0961e1a +// Used for: Zoom Text +uniform ivec4 uf_remappedPS[4]; +layout(binding = 0) uniform sampler2DArray textureUnitPS0;// Tex0 addr 0x20340000 res 1024x1024x1 dim 5 tm: 4 format 0001 compSel: 5 5 5 0 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 0 0 0 border: 0 +layout(location = 0) in vec4 passParameterSem0; +layout(location = 1) in vec4 passParameterSem1; +layout(location = 0) out vec4 passPixelColor0; +uniform vec2 uf_fragCoordScale; +int clampFI32(int v) +{ +if( v == 0x7FFFFFFF ) + return floatBitsToInt(1.0); +else if( v == 0xFFFFFFFF ) + return floatBitsToInt(0.0); +return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); +} +float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } +void main() +{ +ivec4 R0i = ivec4(0); +ivec4 R1i = ivec4(0); +ivec4 R2i = ivec4(0); +ivec4 R123i = ivec4(0); +ivec4 R126i = ivec4(0); +ivec4 R127i = ivec4(0); +int backupReg0i, backupReg1i, backupReg2i, backupReg3i, backupReg4i; +ivec4 PV0i = ivec4(0), PV1i = ivec4(0); +int PS0i = 0, PS1i = 0; +ivec4 tempi = ivec4(0); +float tempResultf; +int tempResulti; +ivec4 ARi = ivec4(0); +bool predResult = true; +vec3 cubeMapSTM; +int cubeMapFaceId; +R0i = floatBitsToInt(passParameterSem0); +R1i = floatBitsToInt(passParameterSem1); +// 0 +backupReg0i = R1i.z; +R2i.x = ((intBitsToFloat(R0i.w) > 0.0)?int(0xFFFFFFFF):int(0x0)); +R1i.z = floatBitsToInt(roundEven(intBitsToFloat(backupReg0i))); +R1i.w = floatBitsToInt(texture(textureUnitPS0, vec3(intBitsToFloat(R1i.x),intBitsToFloat(R1i.y),intBitsToFloat(R1i.z))).w); +// 0 +PV0i.x = R1i.w; +PV0i.x = floatBitsToInt(intBitsToFloat(PV0i.x) * 2.0); +PV0i.y = ((intBitsToFloat(0x3f0a3d71) > intBitsToFloat(R1i.w))?int(0xFFFFFFFF):int(0x0)); +PV0i.w = floatBitsToInt(intBitsToFloat(R1i.w) + -(0.5)); +PV0i.w = floatBitsToInt(intBitsToFloat(PV0i.w) * 2.0); +// 1 +R127i.y = ((PV0i.y == 0)?(0x3f800000):(PV0i.x)); +R127i.z = ((PV0i.y == 0)?(PV0i.w):(0)); +PV1i.z = R127i.z; +// 2 +R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.z),intBitsToFloat(uf_remappedPS[0].y)) + intBitsToFloat(uf_remappedPS[1].y))); +PV0i.z = R123i.z; +R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.z),intBitsToFloat(uf_remappedPS[0].x)) + intBitsToFloat(uf_remappedPS[1].x))); +PV0i.w = R123i.w; +// 3 +backupReg0i = R0i.x; +PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), intBitsToFloat(uf_remappedPS[0].w))); +R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(uf_remappedPS[0].z)) + intBitsToFloat(uf_remappedPS[1].z))); +PV1i.y = R123i.y; +R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PV0i.w))); +R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.y), intBitsToFloat(PV0i.z))); +// 4 +R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.z), intBitsToFloat(PV1i.y))); +R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.w), intBitsToFloat(PV1i.x))); +R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(uf_remappedPS[2].y)) + intBitsToFloat(uf_remappedPS[3].y))); +PV0i.z = R123i.z; +R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(uf_remappedPS[2].x)) + intBitsToFloat(uf_remappedPS[3].x))); +PV0i.w = R123i.w; +// 5 +backupReg0i = R0i.x; +PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), intBitsToFloat(uf_remappedPS[2].w))); +R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(uf_remappedPS[2].z)) + intBitsToFloat(uf_remappedPS[3].z))); +PV1i.y = R123i.y; +PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PV0i.w))); +PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.y), intBitsToFloat(PV0i.z))); +// 6 +backupReg0i = R0i.z; +PV0i.x = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(R0i.w)), intBitsToFloat(PV1i.x))); +R0i.y = ((R2i.x == 0)?(PV1i.w):(R127i.w)); +PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PV1i.y))); +R0i.x = ((R2i.x == 0)?(PV1i.z):(R126i.z)); +PS0i = R0i.x; +// 7 +R0i.z = ((R2i.x == 0)?(PV0i.z):(R127i.x)); +R0i.w = ((R2i.x == 0)?(PV0i.x):(R126i.y)); +// export +passPixelColor0 = vec4(intBitsToFloat(R0i.x), intBitsToFloat(R0i.y), intBitsToFloat(R0i.z), 0.0); +} diff --git a/Enhancement/BreathOfTheWild_CleanCameraRune/Presets/Photo-Preset/ededcf8bdc3384ef_0000000000000079_ps.txt b/Enhancement/BreathOfTheWild_CleanCameraRune/Presets/Photo-Preset/ededcf8bdc3384ef_0000000000000079_ps.txt new file mode 100644 index 00000000..b554ffb8 --- /dev/null +++ b/Enhancement/BreathOfTheWild_CleanCameraRune/Presets/Photo-Preset/ededcf8bdc3384ef_0000000000000079_ps.txt @@ -0,0 +1,56 @@ +#version 420 +#extension GL_ARB_texture_gather : enable +// shader ededcf8bdc3384ef +// Used for: Glow, Frame +uniform ivec4 uf_remappedPS[2]; +layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0x240ff800 res 1280x720x1 dim 1 tm: 4 format 0008 compSel: 2 1 0 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 2 2 2 border: 0 +layout(location = 0) in vec4 passParameterSem0; +layout(location = 1) in vec4 passParameterSem1; +layout(location = 0) out vec4 passPixelColor0; +uniform vec2 uf_fragCoordScale; +int clampFI32(int v) +{ +if( v == 0x7FFFFFFF ) + return floatBitsToInt(1.0); +else if( v == 0xFFFFFFFF ) + return floatBitsToInt(0.0); +return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); +} +float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } +void main() +{ +vec4 R0f = vec4(0.0); +vec4 R1f = vec4(0.0); +vec4 R123f = vec4(0.0); +vec4 R127f = vec4(0.0); +float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; +vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); +float PS0f = 0.0, PS1f = 0.0; +vec4 tempf = vec4(0.0); +float tempResultf; +int tempResulti; +ivec4 ARi = ivec4(0); +bool predResult = true; +vec3 cubeMapSTM; +int cubeMapFaceId; +R0f = passParameterSem0; +R1f = passParameterSem1; +R1f.xyzw = (texture(textureUnitPS0, R1f.xy).xyzw); +// 0 +R127f.z = (mul_nonIEEE(R1f.y,intBitsToFloat(uf_remappedPS[0].y)) + intBitsToFloat(uf_remappedPS[1].y)); +R123f.w = (mul_nonIEEE(R1f.x,intBitsToFloat(uf_remappedPS[0].x)) + intBitsToFloat(uf_remappedPS[1].x)); +PV0f.w = R123f.w; +// 1 +R123f.x = (mul_nonIEEE(R1f.w,intBitsToFloat(uf_remappedPS[0].w)) + intBitsToFloat(uf_remappedPS[1].w)); +PV1f.x = R123f.x; +R123f.y = (mul_nonIEEE(R1f.z,intBitsToFloat(uf_remappedPS[0].z)) + intBitsToFloat(uf_remappedPS[1].z)); +PV1f.y = R123f.y; +R1f.x = mul_nonIEEE(R0f.x, PV0f.w); +PS1f = R1f.x; +// 2 +R1f.y = mul_nonIEEE(R0f.y, R127f.z); +R1f.z = mul_nonIEEE(R0f.z, PV1f.y); +R1f.w = mul_nonIEEE(R0f.w, PV1f.x); +// export +passPixelColor0 = vec4(R1f.x, R1f.y, R1f.z, 0.0); +} diff --git a/Enhancement/BreathOfTheWild_CleanCameraRune/Presets/preset-minimal.png b/Enhancement/BreathOfTheWild_CleanCameraRune/Presets/preset-minimal.png new file mode 100644 index 0000000000000000000000000000000000000000..575784269c1cec288ba328236a24249df0f59b97 GIT binary patch literal 1211145 zcmb@sbx>Pt)IN$7C|-&cFAl}sp?Gl$#frNYcY?G*iWDypoTA08I0Scs6?b=nhhVv! z@6I=K&hO5hxqsX>lfARwE$_;*_gT+Qq^7zeE*3c!5)u-w(g!&$BqTHxBqY=qFQ2za zj=bYF&pTufEkzlmN(kk_^T7*SX*Fpiq?$PF2XnONV@%f%1|CRAcs>7okOy2!tdNip zg-UYLpL|V@AALOO6|?uESA(G$t*sotaoS;$f6KZy%H+CRq};#9-mm9Kd_%{6 z`7Z%Pz2evZ_ciOxj_;xx6F~bvdZX2xb3!@0WI-LV!m;_!%_w@8A z>XQCz;#aS3nfny&&M?;QPJ{2I5aWouHA$3h`1;Zs#p~#}a?ZE^k~1kP#N$^thD+#A z)5lHHrG?`Jxez&a(Zt*M=edLL#n$exO%dSApqnMJ9K`Gv*Tcr2R4L!hKQ2!fsfc?p zq80quh}c~V0pGWR18=f&LNM&kLVIC{;329i#FLB3HPy%&eqZknKH@$Y;d-wxD%`Oj z1cH0MM%?JECCG;y4@IOhGu(qd#2bqyp3oq7;Nkx{z+5Xsq>TG*zQZ?#3^0O?c{T9g zm=H5ah5#xWq{QKJnS&dbGP>fK?$s*~1|6orJW6{8w3FNY&jT4_kK|K9KR;NzU(%RJ zwq1o%F&FNTQ!iX?JieRX4+?*XVkxeEpg-HQlNz*%OU@LtfPdbZT?}pp$3-+WnRY+5 zVC?KT25J87IjhlyTR{bLa&-sbE7*Q%x^n7v(#l<{Q@5^Sjl+Q&${nGA+>-9H>$A_y zPy+D&1k(*6G~flb4K%ix61*>IATppG+p{M!|C>-xBymp|w)AR&z}-n5;=y2z*okE3 zA$?X*|7yth4BkT1+;RdPA&_(i+5Lc1iPUl~yjs1I+IvO{W^cGVN9$bj=+y|^h^MY&7MmF@`o%a04fB2434M-Qv_XP?XPh4OWogW zM!P)0a}YOch!aGkCQ$1B56y}O&|d0(U2-qrdS(s28<=Ud2J6AsI0R7{Uv-W)kzEM& zSqkaZ65Y#8;c;*rFH>&x$~@)Wz6i@{(*}<#Yu%~=+SCm@bRUNN=MSmYQoEBMK$}b3 zL6%J#K=GOcqMLcFjYjv91xgK(Y`za|8BH#9$%_$ z9Cj3_B!Y}IZ2-C1NqpmK%zE6gRX4%$5Y}j_3 zPDdu8_C9r16GvuMrd&cHOoA1SmHBT2_hXP>=Q#?DP>L>Ca=fR&tdE{_rKkLwn-z`% ziV!VneyQU=6?LBjUnMDfzsRD=?cyWH$`uD4+SUem_ z86X%QvGx_+rS0~|;7TJ^V@{*wb<8zL!UTv|0n?r%p0oN^G5BFoqa*Ma`gBlFg5fSS z4r94LmP?e!V}k=eDAB~t7%U{g8yt$kezyXDHha@B^iN{)T1}~9=ovEQ+C-lF&7RWN zZ3NH>1~lEtO>heKEjbf^j(=2gEpt%wJ7Y*-n|r)_L4E^xcmo6+-saomoA7Ko*y12t zhAy(Ri%11~dMI8}I-P$QK9>zFD2dph)q@+aevy=}h`kge(eh1?&1vfP>x3TXeW4OP zM!OtHB`L_%TdtjWtRt_x=RQRC(JW{{M%`$~hc&6qC*jyi(kJ;=)-8wRDOZiO;5etZN9B@h z2$>nNH-(+D3LC|GuD}3MICEjw+o}$5D=IKz%IxvaIK-sAqQy=7@^9tSLYXK38$4A- zAowiRG+<8;nqA(7W(=o4i?)l$X}%`}gfJO1!QKaXBWP>B-7h2r7-s*kl{>Ieuv(e6 zt-FljK|e)&7taQP)6J~)Gjpp@~>EPT%3=DBonV=PbAj8E$^JoONBAw}9C5(8f zzs;EuQ`pL!C8G&rR6`ymncYM|PiJ{WN7T-Zxo3+*J8hx3G1F0ci9SD6hoTMtB2 zmS$Og#+FBxCxa4Y>E6ag!bO5tXY_;j!NWO`C_WaxJLk?t1jdYH$JKW7)*jLH<9zU3 z3nF2h*!STjrIcpab@2(@Tnh`I!1!utSR`9!FHZ9xmlks4BVLnv2#B9EB#H}5UTv5> zrBQOhd%sXEOau)-9SA3%Nc*J3wXspT-1uQB%X+s|7*T$@-53@(sd=2KfdMjx#>~8e z6hDZ-$aHzS#u#6WDbwFmPlG`zqeUfwg>aeu zNlv3iZi*arZ`yMHyle7uVZzQPzfCmN_cB6jv)!Uu@JSG+F zs;jM|L~DKu<1kaHoF?$f*2#$^RL~C#i&=hGW8&#o{vT0ukLJ+j&v4?nnM*skAN8jQ z;K?otmBx^*LXvPj=TLmvJH%^8YN={wnnQXn>}d^kap4PizUT4F?bG8&|ZJV%Brzvll?nx7>*n!88Pzf1N`V#N= z#6L-lO-eN^i@ojmvkJbUqe&X{RA4x|k%|BAQZu}V7!|{ZFo;9+Dfm|Sj5Wf>otR$H z4{U`6u0LC+Waj`VX}l7N1&G|M;8XpBf4(BV#`~1q44%?Zp z#*fn^eHQMfQns!=Cf31hx6Wq>_}UZOt$uzNz+ZY>N=C9Njyel$8ZL8tmE>YMK$?{X z?>+r+YAqcUBuRr2cIFdEj$e9-*&2NNKI<(A?J}936<>cRl*}piAy`I)VJFw0nTChA zr|Kzw?|i$L5Ff?V$y_jqx|mT&!_N#Ce~*C`E}RTv-x(S50mk-J1$lC~%E`nEWyDR# z-}oerd$Tb5yvOsF0y~=vN=l>_SD$r@nsrp;g{;AV#v`PIIfG2TS)m{z#*+(y=ZT@pI z$p>zq)7awe$9G^7B{_STy(PZt(24uTNcR=6*D`|6bUjirB*ox^xnqIaqq)|;c$kT2 zPI=}QD_Vf3tNw*p82nzRhXf5YRFpye~=@yBK{ z`uGn_4*3QaXESx(73|qQQy@_n@hHuOuJ0m*&sqnQb6zk<#XKq3rJlgDuc5 z#JuK})Jy(xrSQ&{gX@#<^BRfCH%|#i*on|!N-)9cFaOtv2JS3NPY-#Suzc5w`$EdE z)J^n}ey5H0{@*UR;)F6ZCgN{2HWP@R&Ser^?N;dTe@dlA@KHv}in-T^KBg*8!BQ^- zL>febJ~~HxPDZj4wFHFi&^TS?J~iWJ&A-8FR1q;EU+M1B8XgLhD#^TeJ{86{9FHiG zrBx)?m)seQ90dNA#ZCOXeTzq}A;NN)dx3U<5jg;}19uX}y_Yo1j%Ze(cAW`XCb*T` z5pUWShiB1U!VGpav*RQq2LZyazOg?6n+;e(a;)NQ@Yx`i^IQ8x4G}xv2rLo5r@@x1 zogi%SbXHzHL6#&LfN~P&YciF@Eza3SdO!6luacMT;Xs6d3Yl5|8h~RO6vTlo^u;ws-mj>Y>NgV z{|sVo)*f5I2o1zJ^yw6;{@3ii^Vxk)Lt-ihm?XgNeg2t^_a@+}Qsec|V#FyRxqC_9 zoL2F<6p73aKYh6vJOpF|DGtvI8F*3^us2lL2ECo0Zcm}m6(uj0OfDnFIdjqHjLc6q zg`KH#QW$Kw4&jG5eaCSpqHc_njDu;kLI0_|;E$ubwGtuSxGP*?3?@MWdc0t&zqG-p zSas)Q)o&Z?o(&9vo@;xH@0eYGDHF|K0p;LVzT(?P6HdON;NvLYwB(*LspHQyW!o~hg$xuR@c6rk z3qX0&cNBPXM7haExH}^eCu7;!5w-CSJ;iFm1M}$K?2byl?M*K^H3Xi^YyXj%n&myd zung)BpnV@ddW`g{Hw)(Pi2VWM3(CD}Ook^_Y zwUL^*SAEM`?rZXttI~<^vr`)Ng(@ZUir6m+MP@3VS%5EbG=&c>5m?LP-Ve+Q)bE{X zuthiVJ*YKQ#XC5aM1Jcsoa@ga8ro%y-LEDWg?o`7HQ%aC-g~Vv1x$4|Az*t<) zcY53deNaTHPl4V5&985%_eUhUyP8jrICj2@qFDvomJvLrO1-Fyf;k;)Z3I?+k`j%5 z-!d^+BMz1Dy`6g0I%cy9W5*fa^$_&8jUEUUJ^Z*24GI~U=TV-SO?gS>jdKeMXgMrXMNChKR%hc{QfzLS@)=Dvw^N|O{(dbWXkQoL=6Xp8S%7WebJ;?J5mQS$@%<@bc{U3L4Y7;%{_MZpJ zygX-(!f-s(Lq&{8e|LGf0V8h0(-1kPa<)NxEc1f{Ea$mQV3@Ec(e14;#Z!c+rd5PT z0$WwJ30#eGVVQYe)YNIctXYrYdDV8Vsb1dl3b<`D1r2Nw9*;0bZ&CPn79l1b82_W) zLr<@w!x^+07H5Gs4FB-wk*16?$LR?1%4=8PvQsrUU<(~2#nQaqN%cPy7|6485^Vrz znSXk_uTV>3jr2YcpmN0|H9Q4G{=ZIu(8p!M@*4DyWu%Nn)C`{wH9WP>!GkagtG6E> z62=0*Ra}+DZ@&}XymD(A#rO%syxB?WJI9qUn?~6EdHo;zJ(+JlV*$xR zGlGw#h?DWjwnlc6;%jNF3JKZbxnfQI=^Oi@Mjy%14COMbC-3J%%deFh z)n~=reste$@8RoR?2kl5F26%_T&+68_%jGZ#|W{<2%EvE^V{>FGD#M!=)$8t?O2!dB&T&(N=`o0 zRZKLRs`-T8M?ZFPmJ8o3Dc;yBEzOHSN1diwO!$9X^F5gET+ERhB$9q$`NBX9iXA3T zJW3-hACw<W&TnC1PDMRVc5g%sjmv8cv==BC zGfNr|flqR?(iOMzR=c5xnE$CUh~CXE@&_sI*s|}hWB?CuXYb;+3S^>*|E1}7gvh2e zx$3|lEc(WE8W#7kY$8NK0i9m)w?U3u#mHr*IC9&r<?a=v47QcZc zGg_TcAA8YT%fuD-8pF9rmdnT#48jApE~)r5CJBvmh3w_%2R=gjFXyH;Y?CM`Tf5-> z-^LMTKXNin5M7pKYk_}Z!^3eD){E_Ynq3$YnmCKG2AOQ4D{WCeC3&f zDPA!eZiiHf-HH;+1xry7 zF5~+kgY|3Pn?9`Fq0iG>xczJ#=^i~r9&|djf!=urB&B4q#$lAPq^A}))1FYUH=QPP z^i^5v;!l;V%ioec&86_mKj~u*CpMAZW%Is;!+^qtz}7h*Tb4UO@b=}&*Ku9{oHFc= z+n4v<3+p2S33}1ZT$w9(N((s1=< z^w6)SiBe_Ky=e)eiz=qIMy|Fqp`c*DjVfvp#HHdm;+QW(Dqwp#CrcEO8fSbfuekmP zUXy1~GcPL9aGGTbD^1B9X53p&)RyK}V^Fh9&PsD|>8mEpLS-Gef<(brf3B-XEg06F zuzwcpDH@BXJxJq-Y7Z(J@U-a;R&WxTu98@h^ec5c^VC@aO)VyLP!E~qSg0Orsxh^N zht8#WQY2AFF&^+S1Qv}odGOh+ncx=m#CnEy`qd|&5DV@7{bm({{JZ*x2ZgqIz`IQx z5u6vTDLh98Kz=fBYf>tuDkiIJo8--SbMYPBf;MeRzHXlUG)&NdOwmWxIsyq>s?Bl> ztTH-R1?bZ}MfWo3_JiD*wVCAH>2BY&Mn@xgcG$JF(jA!&5^cW?uP{#A=(lI^17l44 zK#a-tJ|u7XY(dLWWH-Fd3Ig3F3I>n-6Kc3eMGCUsYJhYXvR=0%gj3Y5GAT$~a6@&VUB9J$ z^F?M)8Z%)Hl7bkja9LEMv3oweMwhtjmsP!cHYi>v;mV)|Y@iz&=YHo6}ajWipB@C}j?V9%OZ6goRcL72{W&^5s%}MUe zfrn!ym<9SC!?reR4x_nUgb%`+$Ijtna$l02Mib7rj`g{djBl)d#ZsE9FgcAeNwn_C zfa3WG<NWcO$RNB~S0zZc*~;_959tIpEvftm2HDNh z5OE0Ez%?=fOVX{xkmzeIy@lNr4yOU-yd0gWtZeK-5sOfrlu4*ROn%nn6)dg2DYVp$9aL`#9?aS|wpFHUa$Q6tbUVSz)_e3Gt#V8a(i1jWd zx>NEb+hdF<;U8uI(`-RxE4NNDz2Ga@n>r<-^uS>k)r1tMzGRQ1#$UTDj7O)5jD-9N zD)WVEq5@)Uc+||DI-RE2B3hEQTWLynosf?Glkac@<;QM`xXiJ~9(>up&?OnVwuED-pOGf6DLy zSo}jUBKEzZ*reBxFF<5p9mz4WU}pM?TFUVz_4ssQW#hP=Cx8Z25U?C;xEzEap{D9!61oTrIN&nEcj?P&D5Ut|2>q*+){m(I z?496#TSf3gAR66Jw1vX(Get&v*%A3s#^*!w3`2R~NxsJy`lwhQYsCJi@pXNlHCI@t zzR&o34TPNw)C`(i&>CEC_*abkEj4B0)zuB`3jgK`_xTGgUlCnGiOOGz`8lb-Qrv%~ zg!#Ey2w(|8rA?;a<_2e$7*C-;WAIcMEC<;S4~e|I%#Lt5zTk44Wm}nutNGwfKU1_nBMrlxBXnmRhh+J=Uab2>T#0s_Ru#Mai*JA!+X$$vR zU!eBx5VFo`Ysp1BT3zs}+Jv+aX7yw^LZUMd=xm#7c6ZjujK+kJ6N9pP$qh=Hu=zuTw?=}%TJ+L{#<5g=~^P-D7lm#hs;_v#3w~4 zP}V5C#Fvq0D+pX*k@B$K0I@~dRz!p#bfFTfzEU7rxkg zZ+%3g>uOpa*JeBv2zR=}C|pjxzbhJupk?AyKLN~_;u_ABQJ-vKrwGJ3jPdz+EL=2~ z!%mnSqR;j`gWt<@6BupCYdviK5{8O z_7PfO)`k=dq0aF=9f8dH_W&Dr7e{j>&PAwY!j_YOctL!;MBLqYuH?c|NlAgJTkO_j z&^8dJ?YGzr(5oV)S%2CMllC zyAFl;mS_6br&C{Rn0^L4eZCvEn76g*JQ&r07(H0KZHmdSPgQ-M*;DMt$q%Qx)YK-kyO~h(@>&~q)oq&8vyc{5c>+H31`m#fFFQ8@_q5K;$bFtrQ zy)4F?*ddBmM#J4zn@4g|CT8c~;C_{v zQXQ$<__{I>mx**{Wh9ccve<7nuS;lrz@#bL{}Iw$T!$@8w%*^o?>LuOb;9W)_lO-G zx1{YNQTx>M{Ki#sC-|EGto@<{@kcwaQQZS7UVHb5wQKOJ3;6D!L|K&AHd_ZHrlnvG z1tT0Y2Ycxmi2LE104^7BS3`k+zh08JH6)Y81~*%sVC)=8m0W>!PXP^yezlNliQOjA ztp#Vj!oy-x^5S1QTV03e@7wubIuzukD^=R~OBa}&Oj;}N@%}9JAWp}&Uc@fE8)4ja z>}$x7zcDN}_K6PUN=7%S#Olx@0~Cr}d`3*AM)kPpxViW+b$lWTI;xq-$cY3a=KFG_ zY9EhG9612wqa^W1M``})M&?0al?@;v99_VC~r-TZrSY4@(sbhR!3Df z3$`JD@10T+*7>YBxDD!YiZRoQ{I^=F!9zkBbL$Lz4F^9@D)wo60E!+gJDF8b=r)d9u=U3KNR_qorKU|2y47?KGq`yLrcmi6ChcnQLbEiQT zN4FD?Y{wmfiaHPdQGhocK%pvFxw_=u<}P+Kob)ld^N=>PuJs7gKDNGUW9BjqZnq0T zw-xco1V!?>+i~;peGquls__-QhjU^>7Lh&rLZ=Or5H}pP&L5L!!`ep3ddav(hIqYa z-(LF7?E|m=sqSb!F(2>c{vw3IfTQfEOt`kW<2wr#xB$Zn{~xl((@MYfo+Xu(6UHO& z#Er~4P&{TsidqXVK|mrS%@->|Rd2>LHMrYsEgSp13FdBOKn19Yxo#cRt!ixS%~ms0LM_REbGB5VvMZ4;mmA96@EidL2}9eG<8o(qR>!yJks_G#A4y3J^79mzNR zV)`4;!EZ-I5wVx^1~ac*x|L0U5z^g)k*nPP^Sz~UlW1^OJy*)|Xp-MB7bT**nHWvjFBUjSQ`O#c#iK0GcZ2I1vSpbn2-6&Z7h=bIzxTtoDAIvZFM%=Y*Fr31YDTR zkc59`dST(kFyUgT*Bla+Df#LAE)laz*lOwYbVRf5ZEGdgKs$SS8-1TO^qu+C$BIN^ zs5;3A<=`!61V7}{UqaYCU*!A5OLr5B_k!EDR5r8b=VBZnG(iFe-b`aWtJJmydA)bX zp^rr(7_8=B!E`c^3N#Go+-+I9VgfZZ^5aHi{&yFXO3T&?Ngg>jKryLgsv!2U?< z%HUVo;0C+r2)1f&urR>4`;Oka%cbyx)RIYKEIVpHsGr`D>dKVtOw^8lvtwb1Ru-UCZFsTG3e6LRZ-9GiS^t~EovzH z@QM!CnkH^5EB>CQTdW@>@9&uEAhW__gCE#ks{}5%3R*##IuI^wr9h{6?nalRs@rlZ1$(6@!IcFf&#Y$=!_vpQK?0wEJ04wpkyWG- zV9njYnn9R@&RNAp?_61$*e4)NZGL-VU%0 ziM7V+SD)#PvD^Uq{ct4IMqTJEs039*)W=~QQQ&Z1rn5|1O7EgKu*&)wVg4I&-G+Wt zY?Db|Xd>8mXj6hNMJ=>!Bxs7oBAI&q9_Uh@mfN*ZeX*e8Z33(aAO(nF-k&DY6MM!i zKxV?TtF+k#N>j*f^RM|5KKIEa`4_U@Sa@h#x_IcgcoY_t;gOe998LZ3s=bsb|0Ol1 zzQyEaFYWV1`o4P$IqeKvtgAI6JGIh-%Q#K~bg?ZUyfyIk`XjD-jq`a0qTTV@P+-U< zg)^uQ0AG?HS!3vl2|8;la9kci6$oNVLnc!JdFG8dFRXGFi}5qz)49>i2l$4O|EfUXD~9 ze7bJ$X`APCq*&HPVmJ8YBcjaqn+u8jnxE5SM4WZdlvo}ATU`~!J@f7fvuIwax5uIA z5fz{9xGCQlX<)bttbVqJsrh1(16VguMn?2hgr3U9uUDR#VBY&_;uH$1-4l`%_~F8* z$5E}5E14hcpZUmsXKg!JPu?B)K8{-au_(0RnHj4mla$(`<+SGCV^y&c2vbi}0nrEG|?0j<%C!!x>xF+?-*7I4`<4m?1;q$eF(YEML#Tezb7&vj)EE<1eBt9<%7S$G3=*S7A z33H$A*QuNqEXAw&32u$soU{%_V*2$3#Li6P&@f)f)2FX`*MV^3Pz(OUSnEqt|Mvy-!Zj zGh{)^;&{m|U@puJ0H$*v5Tg+z@#0`Gkv}j@uCMUdkxl1LgIiD6snXKUZhrBMfO5M; zNK{#?UcVx2Q2ppi>AuyDOkAWicYONJ{g8VF$MJ$Z6SIW2J<}ScpxvVY{KrnYZn)_S zI^JkTb)*CL-D5Q?UHwRqCyXb_wakrL$Z~fq%^I5N1Eo|^^A$Q74IOPg%3i@~ZC+nC za<$c_t!^b4uJon#YTZMD)w01jIlffgHtM15U!5@>Gg2*7vz?mb@uxv|JlK19(N~im z)13RoLxo2~RYlwJ@J1JL_E|hk*!Fx}s@C88O}J0-NbPYK%HrJZ^zuDJbh!!of!KKD zlCe;1rZ$kP1r|n;BoeN=zrZUqx*i^MJXP_C84KlOq0>P}?)jw)^Op9*rbfcP3HNK833`Oujn4$9E*H!@ye+$90yhVg@AYxCkwV) z^IRA9Xm02o(Q!6I8eX0(Z}>g|5A3*)g^qIancAY6aFKTf-W=^xz0t(&CvrUD+|@1C z!wAFT{)8NlOF724_X40f~^(A1cO@d?!zZ8kbv$u3xWP5PTt-M(;rj{m~cz#yYjy&KX2htXlR>QC{-A8CaEtrF@5KMqM4FhX7B=lBNOhU}g&8Gw6onIuMx4yW zIcAc`UB6C=*9ZrhDZ}u``e9QISv%}@@rOrO!CLxN*Bi3Y&KD0c4G z?Z%=}_pL9tcJ?9GW8)Mpa|_ZHTNXQ ziH@{B9c_!s{hZ%MUBtrFGg8YKf3frRaYUd!%$eULlI|~w|D=S9JD<6)XnY`yv zM7|HCf9KqsedYb!vM&_GS$eKTU*G9y&s^99$1#!(yX1$)S7dq6BTrnQb%(9rWcS+ zmLZruL6Jwi=!4vj+BLJF_IheFA-DH80`r}lfve{4#XJWCx^y*HC-n_=j1A|crfCmd zj$i53|Ioc+$?f{{I&h|-+1;sQxQX4tA>Nz7ta~chEXJQ`{ z)a<=+^k|7QW40RVh4&-74rJbq_oqJ}G|<92n|P7V)n_#Bq`=vinL^fA+tbuO`b?fC zu74H~i+5^nU$={=D=z1$x(5Jz@~=1?dw!x~m+Yq|B2#Zb4JB?~|q`NPTg$ zXEoU1d1gPPnWoh>%KdjIEvou(Q&E&lyK+Waa+>#jcYjfl11$Th8xLA)97fP_7r5&( zJPW%|d6pEuoOyUn*P!oMwA1wyR_Sog^qZ7=t=KsqLBCX{c+T{Mg6uCaQEU$*&p0am%N?a_QAo1TGs0nkw6nEn!n#x%DOvQhzAo_x^avtur zaM5^}Nb`v^P&4tt8@{U%#r5E%p8*l$uIhSX8!_MPjOqDOqlMAYLTP||&&i2?V0V_j zrlfX@#&Z4|8#mlm8u+L{^luadqn#9mUxh~KOy6MzAE@4r6!(}) z5+nT2yM?GDgP#`*sHB88>Z5yZdgkTfU%|qDm#OD|=7lfY#y89)`w&dS>jyhmE8DNn ziTI|?HIQt1#UvCH9K?LtO~^J*s8wZbxJdH~udRW~^bB6g^>D=plJaA?C{#ps$;N97 zVmiCC{Q5jmTfn==9&hN##QN7Rzn`iV>6t=hX5FO~C2VGYLn}mG16P72s0#4qWr04w zo|^%_RJt&7oFX9XP$*cd@u^*Tu8uLqa3-8hC%wYKy2#(V(1yu?&D1H)z#+}RDbx7y zQ&ofGtm7vTiKTaDyU6HjWxd40eo)I;aMduZd9#yEXYZ+G^N>rq@?rCM#?+BXhp18E zXm(UvW*8o?{5UuR4muuop>DpQ5I&<9M{HhHNqWFj-S==ov}2Cdp{c8=xJ7sm;5;vr zyB%B3rwjasp!5AOu+#UTAzlgl>}0u5TSTqyukln3Yy}9mh^o4*Sf1IfMm^k5K+}bW zOBC@)`$RG&ks_^15nX|li;^Vg9Z0RCZJ62}?VIpl^Nz)Rv3#-(7v|byA*JOWn@)ky zgLFuP;DsDN6)uxd2BVOwFcrV8_UUmHp-@Z~(W$F~f6@{Y%`EwJWx_Fds^jKLf!153L7GHnQTw(6=-x$(gA}-YRxu-NoKk{ExfGI zzq)cizkT;7TKLXG!ITx`(Cvq-E?RUW;QJl)+B`fKReN7{@)K~#4EjVkiIhbx`qGtw zid^;UBUAad-^UBPdgE}lXS_+2#!Zb}My^-MpQBC1{Z` z_eQ;`qJKS`bmqD0i*`!U-Gi@>&RjiTA7ehA2p%B&agy_n!Z#)Ln8?51OJt5iYP{(h z+2!V55UQhp=WtOlZXJtdX5e(TxYI?%zj%H zxs#|b!$oFd3W1#aKSzHnH4?4DP#k*M?LoP%-ZH)?JaGVUIQmKQQKq9&f`PxZhfih+i@C zr#*X`jEVHa8<3myxkl0jQ;a=|Lc2@%pscGJv++ei02Wi`kFrkPPf6}W-%*Q?AMC0n zTkRH&ePrCTB{k4PCm{#_#0hK`^HaD;duZC(FCM})`Z%p6^X}mlFG4EYtpU_M@44f0 zZ(j2pWJ8{&0jJ@z-Et45h}Tp*D+2fk&HC6nRT~-qwgWd3*7L?|q=CT=rv>={@5z)+ zqw2K^H0=46GeQi!1sQe6Wf$f+Xv-BDual!CM;m5qg*~JXyBb?WWLBD(l$;W_K#2Ta z-JdDe`$#cP%8IWWHswac`yR+6OC5!09Q zvHmLGx?cI2z-zRyIebQ0{T&R(qIbglly5qH&B32Su&vVsAPkS_rO${-m{4#dYD?<$ zZ{iW>j&z`mde%n)j;#35GlbmeS94Sf^idl5 z5c$D`*N%nSshSJNDq$j>9>6aV+) zV%0YmqcV!Xaid#Y{wB{IMS!&nrZHq|?qV8l!cuY2`=Q$`9f5jceC#+l`#H4PzcN#<EVBBS=)MWiTIMuy8K-fgvn0Xyfn9q5;^Z!cD5%dfIB+wz}#F1%3|9{I;} z_3VobUtFgAE(~%?I&#(BM!;YSeQYa7Gkv`Mgff4cc(5G5J`dwZ)gKf(?hwhGSl)^C zl`*q)K0@5sblyx_!n*h@xd@^zO5Hwj9&tL9SdC`OwwY zgI8pX-up1#MLAS|uKbFLI+i?D z@e#Fr#K4oM44DbwlT`GDOS)X7$b#Yi>-|v#Ob^G582rA_ zZ$214XVqRl3mI4<10YYG+pxm}-xa4eH_p{xF*D;Ckm%kTp9o0~kgWfk`F_kA> zx$jEblv3c0LL#S+ahgcx+N!rOe0aU>&Q#`_TQiPT=C<<#(XT?fF-{tbp7pJBwbnt0Og<>-nYj<=$h`{{;>~@xC6a z!TdwfR;s}}i{87JqIWOFa?eF4d{19WTuH##i3Yn}%Qe|w)~^3a>GB^Jul}Iu;;%|0 zU(AmN=QWs)2E%^gz;3+`K!ZbOBQ$s;%r3Y+(BQ(+U|xfNS(N$_G`KYJt+wTFwJv=C z4KCu|KO4zua4~V$cX|6I^GK}RALFg!-UD=imx?aH47FTP8zmW#QWhaISW3#_-m8ng zS05#MOieha!9`2oC`o>!H2FVd3>>H=fMIuAo6IM4r5`xDgJz zJm(+V{If@vzx`O`%clcxoDIJDXz;B^gKs~!_WeiK|FnI2v9o7xd_*N5S8Jw-a3&aI zf-!{6y0BThlXRT(GhjRJ0z0dC8w!7JckzuoYj0d%dScmoA#8tQ*>`u@dExx)4d=dJ z&c0aYxLam?yi$9qUUQ*Zxn47ys#mPk!G~v;>*rP*=Q9nO&01ZyTEAUwf2zjybc_G< zT}$sYZ~gGh`X7~V{b~7?Uk+KbQi%diZdPeR76YK~2q80Ci7sr?hD{nCwP|w3G&$Ad zdA51+tDWIDl;P)FmcH@7Wq=v6_%xGC3}xbW8n*%T>20{fVVdzwWjwOo zga$MGN8`#Yr$dK{bE5NP;=Hyn>uvWuUK)S>?1=mHu)TOd+c2oC?i@Q+-T6pGi>Rwx z)YT&$>UC%*9l9y{4NT59M?OYPIN-FTpXW3(dPOQ|-cGTc$BceF*j;8p(rZe34V+cY z*>o1=lx1$xVU&Ypm`R4s&=vA#Red~b7Z5cu^Y#02!CsVls>vlK|cmP#Z68JXl6b?8C#>ECxkpG z6H~yd#5zga{DYln%Y2V!T66xpz^trR>9uWb~K~!_W zlyJ{FRAZ!<4>RG^n6h&NJcGcmlVrT}l%!2g9*)g@E0W+=4kejs{(F^{I5Pn_+Zbn) z6mL5G`fO zhc54YDquwKBolSw>|jcI>QOsD=LW zbXLZs$4lfS-xKCX1467llk|nW7NdGT?lt8}1`Wxeo;-49o?}fEWhTgwcCt^%p#&N9 zUE*fetRPs(lyhmJ1dLXW8FYQzhH1A^4p@tlz~@Z5v<@|FjdXPQuSzN?sfZ~RHtlZs zpg`$>1@@Z`+P0TH*%k8fO(u@MKD-D@uVk5dVA0N5vv$%j1at&D;gsVlpt?(pchP|Mobt$1ZZvFT(#eZ7k6R_?U!v(MIJ2BHPxDhb zGuy{E^)Y6)morF#11Wk5tCtw%{l@7&;Furf>~p{|Kf)O%Xf}{U&zRLXwBrt)H1~id zpDpQC?JhG(pME#xCVlH=mVBV&vxi(3z(1=Jq^*~4#vYCZUXEoQRwfznBm-_T4f>Em z(>WiTj0FfB3*ZK+m^T$;2~l=;J(3Dpw-y|%b)IaFJoe1+?H?F*vr`J`IHQ>cXhN(} zWmHVbC1XZ~j8RPk)ue<`O|h1_JPw`Qp_`%a&-{a+``~iOLzl98f=ln#&E`7&-UBu{ z)9#96Gsck7V9u5dn8=;NsrOsv!R~4ZuvRr`xBP?6FdX1F&y(*G2W^><4K5L~C~&hN z7!>dy>?2lT84XAU%-GpfkV%DXagQY(wWni{XLp=6XCl^2P|bh3r%E`c681@uZ^M8z z5|4ZF$tW*f`l`Btv0%uO3Qz=2)GW!lCKzlkq4huu4`X0!gcwz`xsb zM)GxH7%v?P#teP>nrblao0~xet0P}b$j0?(!)d<~YzCBjDf^~>E~Fhool!&bq>^QV z)Z95k+j%Ca0k7Ox*jZ*WtVTZ8SJlu_-qc@C^k$|^Y$%=Z7E68Q>{FtO&xk4>5mld- zw3n%d>X@lk|NJ2NNO!s)N&^iB7ebl~A?>v#D}4lPomGQu)R<;Wp%9R5>zYotlUl5 z+Ml}`xpy^~T?=H-EjDd^t8v2CFk!Bf=<3C@HKLJ<#`d=M9?8%UGcP9}RY#aq#G3M3 zchK`*3*Nh$+`F12>#m2BVONUtW>+KGR2Vb6TM3X^^l@$`8FB&su?SZ-6@VLOSG>FD z{5u)Ky=#j*>+H@N3iP8#M@YLj!`96(vv(z!4x9WY{+%{#APt6piUHH?5-?|%teDx` z@NaTvwB)@FpIa;6T(I8TiGl<5jhQlGQ;3-*AN_<)37^)Xkvp`r*%fDqQH7X!(vpKV zKcj-`E2gCu^$ep^a$Zwr!NX|eiit6Y$>7k>gRO)s6=FD#achA*76h`X(B`5)9e1Z= zj`V_uHS4lVZrmMcm*d_BLq3;@xiV4mdl2L+FxCmYhu_;~$s-R-I$)metg5c7Z|Z31 z5Z8A}YJ220gNo{r`RYkyU82-%S4xMw4FQ@t?FUt`{L%Y zv`4;|vFv56FFzh4Y)4+&jy#!mT?`w~x#m4u^pWP{RxP^g38yjPG}pPFtB$?b5P7>f z@KS~M`3mogRlzr^7v3**J>Na3qsS-Jib<_vQZpx2&q?RqI&>kd{D7g|tu{3=IXL{EokQ*3`FRcBBLIMVoI-&+xl(S$~S&ooBU=u_r;3voAun=)zL4NuYR{A z{r!3g+tVu>AD*(zC<6NVWtV>0rPWT2Z}2Vlc8a;WV7Rm4053lt*h@RW_JVeA-A*3O z2cq)hhZ!ZwfkIc_=Vc(SdBc=s*H80Vzsl;+POr%YNbB@TFbb-t*&OErCus( zkoI+OYB8rCV3njNmgQ!X_VH|B_V${Ehq-&sefOOA$tCC0=X_6}4?TT8eCIrO=R)j- zEAgA@;DwNT!EPdqs=Tu5XuR|FV4Ln-k+E)2t=PI8%W@D&SuY_^%|Rt3hAT z=2#7SucjgZR(UlQzPikAL>xG1Nr&Zv-$C&k^bWP=f*&c^8I4-52TB#&?t11-=1)&; z{>9nsZ<{=y)5vBtGPy^s+zMH?BKBMB!L5kn)_UlLD@#{b16NmrH_yeO!B3ux@x)jB zE+D@0i>?blElqx}Xz6>WxBlu(;v0Pf8Za@gQ_mQ5a|WG47qVF$dPBlt1vteZ#8_4X z?x)Wut|TK1F4uzF%WLrYmw46_$>PnwEKdI^8DUO*t1|IHZQ>i{v9Fcz4@DP~@AQ&K zqtAxlCBDiJE0jLl&C=NW#XMzLC-zQp;;UyvUpy23Vp;eLqJ=MGdOGxl;>bG< z3-7fiKWI#T(CK?sfSm4P_f@p9kun`W;B)|B`#!nuLef1Rg&S|Q_{x?pCzErgS z<9h#F(BOdqB}`Z|J+GNkdNdkn@LIqM6GopE_Iqp93#bNzLJfukKX)s5-iN=3R#b*_B=e3gE?%Dh`;f2zXsxrXrT zb(enHaP=2;%YRt5`rYz{_o|s2RC;+0R?}Y#NH|T@eldT2)syj?F%6sMO_TDdRYkGQ zP20%W@1(&LHCd92;f&Fm0&eG;$(&T`7Tu1OImhK;+fGC;1FKHO#h{Kt1$f0d4vA3@90)f0o-B*MR%O^YGwLcDvYhGHoNbprR@Zl`qWQ7X`mU~?>ZWdys82pVBA*zc zog3X0>}!ti<d2(U~tE*l<{4U6TH zVN#TITrQok7<3kc)}kDjP0CfX^KP?2C0DqOYR+R)Oh^O^q8wHYx2Z-&D*23iemLo#A-$7*4W=ecWf%fXtsu=R0CC_&^6V(>XS3>@ z12dBy01m7YH&Ecfc`UL6@(v7O8gLH^y@A1jp#e$fEHrp88_Xt|&9H7~#lE*0*jctE z+%pN+j6*f*P>tv$UAnO@bmhtSQY7tp)RIn~EuD@-iW(I_@!SB^;DwP=}5?99SinDWnpf zF(4Zq0Tz`E7-yu$nF*sD!XwemP3V-9WI8v2t_lBhS<{N~Q59i?Oee;qLqj@+RHvB0 z)S;PjXr^Jpz@m}@G-FIt5i@Wbl$fUdW(Y9g9HwN*o?Y>i?!Mo|TI9MJDf~nym+&ol zKsG)p8<&!bDWyn(3_FzLj=6D%Y7!{MN0|9Zl+S3U808eBl4Hu*RA}37v&N`Y7}Xk< zJTGU^spfPlrD8^irY5W!Xn+G_D($WSy2&;G%LVej zTA&c;U}i`PT|_k)mkbJr2B*E)kc^sY+BcK-&HA-szZRW%5i{M*S;qj}hSy*i!c5w) z*jsmi?S!6aup7;L063Hb@_|-|vL8T$foiZF$oiWsGySsuW}p~sfdE5>72(@>9zWc{780W|dvARh*u@}V~QP`gDjY?&LiD90?S@gzG> zG?+ZBYtF>o*_A+M(GT54CqBfwL#!*c5KKmVtjj@x{i^3R|8xX>cQ>ZVpdRRECW!{)4R9a% zxI``iM1vu~Kr%>vGXt$!IyA_)?FqSL6gYI#fP8V$2vr^>Gite8L#8Upm>V~2tWJJx zV+?xW*3R(LY1T-91GB~{`h#$AU}!Bl6r2qX41G<9?Yg-szeSx6+xU-fpd9YK^Wg+* zN%*V@FB$O*IZQ_7Y{)Wel#j{B1_%>l@`+KSQf5?58Ruv78jQmW4JHm8g#x+LoHgz> z#69|Wz^T(~6Mn{T(-0GOOvP>F!#*@H0Q;pT45+?3rbWOw*(o1vlK0oj#jU!DPH9(> zPSOk%gSE_52f&Pav^kG%yjj{?O=Xz;G>&nEYA}7G0e20^FdUeg@Xn%PchRsJQjs4% zv`u0fXC~uzqPWmtGDI9ug><7v8BuYgOk|XGJ7&8bb7IoYU5ZRli+6rFFxB8?hqAh{ zqpEeFqJ6BQd!}N@SRrN0rb6YuJG=&eCa=LDuffdpV9HKS*bEK6z3#rY#9WH#FLFkz z!P%(k#)?g~^zNhCzd4ioanbS*iq?KyvhsrxIB@d&m6!gSYOonyg?$aa5Kv!Uu;exP zx$WS!l;v8=`pV6vdsqG0RieSI8((jpv^7nbn>;}$6|lj9chZr2J1gXi-++9lz@1&?QXE>l4>Osi0NA~_h|3Bc59HyzwqzK2f^f@B z%no+eefO>{@jrT+*je*sqBbZEA?@1R_CtpEwu8ItZV0g7r~u>>M*f!+IlC(E21;Ir zExZHg;9Iynr@`bYXft^d%0nJC;xPfD!CE=qcpX}tFDv~WIOCkmZ<{B>yk0FG7FNh7 z;lP~F=Flr0dQ~D|%C35O2R4!K`7b!qVe&gEY0ibaMmlQCt~lZzYusfZABNgy=?CAr z#}mlNIr#+*#$=$M`|S502)i+bW}>6IzO}lgzdOzr?L?hdVt_|hJgm(PTOy%9T&s;C7Z&dm3y?a(BPer zg=+B4q-VhWOcD2$vd~*(pve0|mH(yY$m`|tuM{tSP;0mb2Ob^O%cXE&-RKaJVY5PS zp4XXGTF7w13C(j}NO&o*UvPEV2Oz)~;+_j}FQ6JMpXaLC7mL&1FF*H#3hql);Ww*7 zZ&XL#YDs*ha`Pu;$qyux_M8UGXL1_s)M%$9L4!P~pMnP8*>F+^zO!N5*I?atLI>yH z+i;SvJ+J!iT_itWqH&~}xR;vbv3hx=ekNQu6RDlyYUUQ|mC5>rH>xKC18q$M?JY!u zdvPD>a!mK?BqH6Ih`bLtq*Q}n-VMF?xwX$-^?mkg;ImhQPcFH)g0|fxyA^WpCIh?% z2QGwM(BSf|pBAnC@!6$sm9GD=?#eI6)GIj+w&M8s7u@dEfbU9@3)&r5lHse#5U;`E zRiA6k=Y#1mWzVW|M@}t4|!QR?vPJr`y9)_AI8Ahg( zjG~Aq^UqZ0G&pXZd3-?^x1z1jSZ1cdgm@h6k5Upkeb1kXef4zwYiHwMI}>@QjQcVi zuQ>QtN#Kp<=ocGfU#duatuFaN+2RNPa_PH|EPb~};_d611~B3A5v5+P1_85SC+W_F z$(XQ5r=|`J?ra9$cyjI5st=Gc;V09#&qudIo;9=i_Il*Wbq*%{WM<*Dy>lCp@J2MY zv5+iU{N|%DVeXwX!MBP+Z$IXL<81H?73)8IH1ji&ahDDVkB?$H3lmN-#;_$fAWX-B zp~2_;%;$F(c@y^StopAnd!M@)dHwn_)!?U>-NlLmyGvnwyNgO zSEx3sR2wzw^NogVt>H?U@miVvPPymvMdyE1cKI*Lwtq1%89u+0+R;67EN>C$Pw5S4FxovhbY>?AL zXmHF36P|+u!-rwN&u;pzELZ_Q4lG}CsxNT{BEUQg)@f+))r5v03O4Z$Om1(ue?x=6 z@MLs%QJe9SQN%06Wq6^?k)PZABFg z<#laTgGJrFKt4_+R@^_Ro1V~3O97)(ke*G#nO(%&I+Koi$ZxB9aX(-fJscRqJ0_D% zi2BD+h-_q7)ZH)Y9uW17h`M@ZqeC+3lxT25)Y_~X7O93h#UqpAA;`}JEJEDgC~m70 zx7MILEAD6%x7W-18fCrpvY{T?Ksy|mEFBsb503CZb~?#w#AH}FtfN4N^FzU~0thhP z+AxI-=N(u#A)*3If&Ge`iYU^K3IGSjR3Zf_v^G%8Y!cEf&+lYP>jHfcAE zqO-ZaLDt(Y>uVQ_8pWa}Ox4mJ#dsgD!4oN;I_a6ugiYwLWD?{nz7Sx}ZRXs><>IV~ zn6O1BK_`5CS~8=T$aSL8If)EiZmDEaDVb7BrZq?e;we2)%^TpuMx!O(eg?}(^xRMa~vlSo8eXxl^5!G7sLA4S~TM;%5yFszuEP)MbWYKEDg zB?1iTot{(3mAZKq@4zalY(_jLSIj8Iqtm#!(5mJAjq;Ixac7IDrA9W`Dw8W@(whd#uC&62zZ186XXYA_uTrsKd6;9Q&MHJE~z z)Pc#Owj3~FnnD*rgLxC~i!Dx(f8YAP4E)d0m%yJ85g z+bZpEmG;z1d+W#>LR%d#!|l?pdV;7?Dr$lQi(1JPz=1`rb)x2Ka$x)0WrLlf<|f%t zFQcAHdR62jk0AQ!PPF#yYLp9jQgMIC3){6bj1Bgy)0&9fYRzi3Uai)tHAaUO_N(Vl zBTlSAq0%cbJ0?r$pMOa;wb3--8MmtAs^Z-$4h ztW^PYvoh%@72q-Pz>v5<2Q(OMLxT6mL9wW_7bZ-abZ5_g+s6B9Kb2u|Z$BKELav4G zewAbt*Q9EaK$gOUQFvcJrmBfi-Smibs1H;0_!Dj|YgQ1g^_s}j+5z&k4$El$R;^Ac z*D0s`WL#HGG&t$mJI^J2jGr+w8fC(74>`>^1Skr~C1L{kxKkpRl23M^!AA8gqnu6! zEW8HW<6b82C11IWyN$Z}nYdfSe`gY2Z6S}77*q+zw0mBxn`m__d&v_ARw)E{cai*1 zIo`}edNI(ApsCcsKcT_mwqj{_6*QQdaIVn~)&k5xfN2UG7(j-p2D7RGYQhj;KutL3 zzzIEo0|PiP851VIh&~jz$ynV;2x!G{V4bX6+J_cc4HL#xF^I<5029tGm@^^W&a$01 zVOz$h1(o&fWsQBMt)pckdAZn7EAurdxaz>&QudCbt*CG`n3?Lyc&7a7VQ4U?lhD!N zYfF|(5#8-|4>Xu}VEwb3PG~TQXs1tI{?}(N{dMs&1o*?Ur4NgjzE8NA(_oKQ8Z#)M z!B3_fw^KG~@Xd7_`MCU&3mUw)>3Z%;cyB9k?`j~s7McrQ?OcDiR$^%!H?_-*(BPKV zuD0e@Nq@Iwupe(_A?sW=9Sk`wtksl?_;xaJOp_50%jlC~Cq$PxFz00q#*oX#xh$N^ zoLOYa@1na+TCu$y+J zLwc&g%-ke^WMXO|NMXVtWKx8TIo!G#>F^MycyEX6LVz&^#@X=@qX5QPi908u`u+BVZFwYy@dNX7=;dHG8TyCxLLc#~&#;ZXm zxVr480!*KUh696*o;eq6rt?aJtvpurWv*Q>*C)J4D8y!h41%|ESle-;7^CWa=7 z2J2K8Ip!i~*$C=_hUuVQwh>VA4jjC*VaML(9XRci?<^YjHXJ)E?xfGLz2x3bdXdxqHt0(vz{5o{UoszH^?V8vOi~g`4Tng^;`I{7;I~xZM7* z;>xcZG^1b5AzXfN{|K-_>zb@bYZL9Zla9{|qN3BZO^<*eGWZBnXGA7JBa2y(Z^IY`F zbKKR09~%7Hoz2f@$$)V4#*Z2={JbPdG`JWheCgNqQ%m^)VQ8>Up{Jw4&|os!A9LT# z1gQq2^3dStudP9YKX+~8bJsQ@z#44?)5>!{J+t{2XP5uDXz4q}i4RKR-zbWHtvLGC z;sOn(gSwR*nZjDDx%Zmm??Z#(wD~*_1GQf|IE)!;!k|!t^)O+u!MgBL618-IZ-!2Qhb=vplsqnjxabKJ`sa3+KD)aNUb~$k1HxS7$;;)KRKQGlQYqGiz8n?6L=Gx3cYh?{U`077duAXWI%XyPBT64)@VH%jYSF65Ya^k z9S~*#Gz{ugi>t4l%50If?XfW=V{6o<$@<3NY0~3Y@Ly5@~(YRm6ZTy#WLfKS& z!gb+HLw0s&`T%Ar4tjP0SR&4oK#5v8JZN0%;F_)yw&32 z2`CULyt^xxLa5^BdHt&`LAMo-ms>hGg3g?7vI9VaS@j?t4bE#Y{Vgj@iT&~e2!#Eo zE&&WdfsP9gl>v&V>N7{kYcMroI`T#}n3Ti+37ND{Ni=wgXz*S($ZE#D=mNuvudaVQ&C+xp&nF-o9hTokdsjK##5w2V>XHfweB3b)muQ>%=6Eljw1bRLMtRH9L(s9ypfCTDh3AsSNx@uY?@ zp;D=IQn}WsH$Z~{V^k3gbHHs@5EF(559KwOH(?QF07%6{M1Y6joP%UhpIFq>ClYm| zb5F=?@IIoBZuA&LotSoux&az6`9Ozi1K%bG(FcMFlhNQX^vnbkCO`7ALVm-R3~L0f zfVIv6_=$9Mj8vwpPt-F^OqkL=C=w0wiq2052Z_xBv`_JvVsc6`IgKf!o>RbRr)G^B ztwIh5R!XHZscaSy#T}g@O`To>&E?{*c5!3=_q>k6O2)t4B0rp3j)jq*<>`xFjmHDW%z*57NC~O=cO|mAf8l< zrSrKKJ_Xcb**vCFxlTHxBj&6%DHKZJwwl})Bj>Y258%MNDI&ly;ka85hy%||N=L@f z%*6d-0yH=epCanw+a948GEAT|-2(s)j8>hy7AW*W;6D;NlujXUS9%8l7^QXNo@LOupg2%x2;q2(aH~V)S|#kx{LYjtl~FRf7Iu zK-x1H9EA*14Tb|}SAr~Kj(hEKH~G6zI@OfhAcq6%4E$FrOnOE?m+Q!Xw4gyarD*z4G&C3vd~J!zYw)w1E~>%0h#6G z9+h*-kr8O{`JnDXQ2S)c4h??pk_Q^R9?)WXEoFfQUt49K+llcHMF)N1bbabeHDjiF ziLqf^TPK#6*0#1aw@dnabdw{gkRcT^W!J;07`)fY+N^NkRD@-1MwT(qDLMd*UdI^C zjM2nswQxVq&0vQA4u~EO%z3Pt1rIcs{Jvnui;e_qQtYJN1pdjsr!PmK!AYBTXU(yb zb|vlP*PeA#6XME4*ZSOXJQ$PDH=6aRa{77EAM-CFZXzC2a2Tu(gC%5R9C{;tD7rv{1FHcK_TqfhPk$^L8k~P9 zy5jtwpWXO*(efV`FMX$U@mu8!->i&(y^Q~{=)AtdSE&gX=O2*ff7+@w{?&Y*hk<^J z7@)wyG2xsBr&;Zlgl%ur_u}IVFJ50j|9d;?N;@nb^?br+ytV32*i8JNK{Bp+Fk{*Z zG8SV@W4oyK-Y$)O^-T1ur^8<^4}ZDH_r{~%*U$Lg_>BMUMDbuT>g$%5~f2`YWKxa;?GkWVvmxk^Ou}^sR=AKkHa{cmEf#bO|^4 zn_V%x$)Z$Qlu8h@8{&4n+35&2gGZ+%Xy?L4O*U$yta=RD7`#`Pjam3_?`X48%xG7g z^VtQob90GC6m%OT}6=d74!{nM{(+n+gSz!dhIjjA)gxlBNv@oTmhtlNu@?UlgRV!-bW z47)EugW1OhxIot%-5Px9ktW1=1+zzyA_ z4LxHGq7lq=^hug~CC&ZP-of$SK5=h%cW+BgFZ%tBr4(sTji|m%R97NutP(X)QLGS+ z&6M;_iv}l&Ytp??JO+yWgx}~A6p`pI9p`lsS z(JJa}7qvDJ4QOhpuCA-Dss#;AZFtEmK~qOZr&QddlaI0bS@J>kYA79JIiG{I>R78* zJ~Jbqk&lc_j*Li|dF{x=+=Og)VsfT!Sbn-|;%wi{+1A0+%>$?V70pA6+8#-D`#@3q za7ovA$B-OIr3%p~^mrCs3UqoLT7^R`Px$n}Z<|LaeqeAEQ0WELt^Lhy1BCWLP}?z3 z+s;2t&^uJy+F#q+SKHEq?m}BYM zorKc5HtEo?Ze~I^Gma^`JG&`&!fi~r&AY2?!e?a+s_k?L7*#V4qk3RKGB7aK+$C=A z9BdX1m$na8cM!-YI{;!#8aWZ;j-FATF(4kAAaV>q%E<};wJlAs=I1Cq`PO7WS0)m-$M-r6&uq4+VZ2;8$G^4oh}yqlT%Up|*IGu=Sa zQw0X<%LW?C2I`7{q_Ye#(pE;+6KCXm=UrPdecU>o<@9p2xAA`6cpsX2b$Qw0HeYoF z^5IcCXcTueO8Yvc{aw<&4$PpP^R$V(+Iw4DdfQri+uC|tn%Wu~3H1#?)Yb}Wt7~do zyWzmK6=kBvnwr{1v8YoqHozFw~eGTnA9sLdM z{nc%~KqTr0was0Cd;rwZ-PX}VXz#(b&@1Zg=;&!~>**Es4RrT5Hn$J-4gyivU{`y$ zVq%Cj&9VkX!eiWAuqV8xqzCpg$7mJO@d@b|53ds{*{Itz2boC*Y}wUdb~Qx){58u= zO^hpK6N;(H=C0x9t|3s58PRZa_Xwt^>N=&PV~kpnS@a}=Od@2n=(U#V?xfF&%Yo6W z$cChoQmJfYY*MF~)6J=LV;!u1oW*-7|M6wQCIh>RjBT!8Kh@z-i751IEQKG?P^6-2 zAgU_@9hHv()ldVFf9*<2|;$sk6CCHqbOR*sL4xuuh3M{YZvNCFCh-p+e**P=ZJS}eG%;Vi{Wu1++>akAsXq$SpT{YIyT2tClTLkLM&l)G& zjZ@u5d4I}1m-5W*CY`%U7iW}lrm5=2&ho~d(w5;0(R7tqS1t8aPKC-RgB8A~8;bw8 z0u63+EBcw~KEHMtz-N-o_y#+Bd&NQ@ioU(>xwd3`e2IDXlJD6|e%M09H0=yMaXS0k zGugi>TK#cx>c{2T-5;o*AY|YAEfIHaE95H?@s)cc^D&sgRX?!8H*`MZM%V z5m~!xUZa{<>y-02ak3dLP|Ru+vuYlVLa7l?%_|ft#oWAlZkBaeSeu@;=`wx`k2&Kv zWtV+%ubJR6Bz;EyXV`3e8-DUvkqBzQ8e}rbkZgPuC?q2k^3hNC0RM>(nUbe+_y=>^ z+Q}`Tp|u-erjYz&JLJh7kw`4+Ce!X7asMcR7S%T(?&;M{k8$Q%@)L%Owgi7g=;mfY z$gbOrGuhQ}b~TcU*i%vW?plC6DrHk-Lh7Vv4m||cBxjA2x=GPUckM`Lc|+NwqN+#8 zr|Lt~Q-^BNLtf3RWqWjozPavjCIDv zYMG7Hx4l!^)2)fy?lM)g`Loy^PX!d=Be}S zOV^VxU0;48?cGiLZY3Q=gKdU{%@TE4TAk07Mc=Inzg^>hrOf+csprK~@5^Pr*GnVs zz-Q`0U+9{S%OyGHa;PZ^QE;dA8 zZjc2VrhJXl{x(IZc{W@-8?Bc|>%%YC^eUU1aW7~R_p~vJVMZ~;YDWl~VOBGmv`U}b zbX{A}Ut2Idx9NT=13XVo?p_Gry}(^v@UD7olJN88+rKJ3 z_an%#OchnnnB|iOmyUrno{#yiEC(;dycYtVo9mIMvkO<_zKe_gi;KRS=VM?iWOr!P zU|=@hyz=d;?cWq_|F-zzFN-e!b@3*w^26elACzQ&bN0etb#PxC9oAT8=Pk3Uut5uA z4r81r?X!SIhi)h716xtoovkRiwt`LjZbE~X!#B>wZ>&W?f8@2(7k>o}KE3$evrFHr z%>Js{_v(biKrt%K9+S;$V!S4c+hBDY$WK*YO?aMIkMMB2>#_5Tq3yMW>lac_UERE$ zP2avu=wADyvzLAa4K7N4uX^d*t;s)ZPkzw2K)xQF*H`!|>=(*f8-1^w9}qrGe3(dV zJ`W^0|4m>jx-{Dv9-0}TsQn+!$|*7O=QQ|Af`JC}ChUg>^CY%ou0@+3CVXqvw-s?f zgD*vGm!fu%u;^jJ05fjAror?4W3jIl#lKz@!G^zhD)81LzPBD_-+VOk{v)w(ekSqV zjv*&CVL%j-F?lo^m@qUrW;4WXdhpC=d(4TH!2t2FTVH}^9pbNhoGUsThL&ek$2!ZvX6G%xv=G2*zD2G z@eZsYKRm!_!^Zhl7tGTNe1df3N_*$3 zd*x*<;xkok(BL!0+Y(XbIjG(k^L$!FQ+?&y~F-uzM2m#!aVjGGdOx=hxyFdS+)Mx-im2KHN4g9C-OLC-Ia z+oO*@iuuygQXINR9(e@wj}%vxbc}R}r$obYpiruz!Bl`Ldm90VUVi%2DO3_Wh!s(> z!NEc75z53=BoZM7bw;tMEmE*kWLNit>?eO%5Ofjt3x@~?nYI}uB9I63n3gqkN{7d! zqrNqA?RMXZ!ARZ?} z@kXM-?zvv7!Hh~wHJCy*xVH3kT}5ea(Z8Y^3~+W`AK3Cv&@aKva$ zs`(>E>qF~+zznTPeetP%4esVOSjn5PDdnAGaC*BNE6Yer!x2D~6c=~alu!+pbXD*g zJhK%yY%Q4ac9D%5=0^H(y0O2gLvHJQpag6k=?GdHjw;gek`!A~g8A0gR!sTrkU%2x z&}*lqrDbGfWNd5<`-Mf=1kw@ofFlDEak6TwYQ){>1d9|?Gn~(vinvk{cZ&0*I4{xQ zIgM;aDVv%qYwa&<7ne2n7MGNQqT&+z&cJWB^lVWvQuszk8Ux)BqPVU@G$~Q&QRVh-7L+GCeXbAL$jbx-s%2 zh`a`G2G!7DOku*X-|nVLG}ip?W12q>*iGymW{{HKM;wjfqO+}4#Vrjrjn!q4VZXXp zEoq}e&E#2Y{Rm*DM9^URun+lTUBP*1FmJ*$g#V2P-KvrMEsO3LoCoBxrv$+~7yO>2K;`)EZs(cr2HPpQ;jJQ*%wp}~IuP0Ei3 zLxcU=A-`sb{Dp8vay2&3o3P^cx{H1{`1ZQ@@g?iCmsn`<<4bmE@UtmP*d#xD`EQCY z|4r?cf8DwBuVuUgv)XA^D_`|$;lNLxbG`I?(U%)oN#KX32!giLpBXDVWk2Z3<2gf*p^-6c2n+5+{I|593#(Z zu#?g0wYtf!k(2X`Q6RqTLP0#gYJTj`mFJF&CgYRs* z-hMLi!cOF=^WMA$uX^>1jP_R2NqYV^%iZ&#nA=hk{Yq8r-O|A8<-S*{yf0S3hyAaW z2i~lVex*F|L2>NsoytsJgS!VcybSA(XfPZ&ufax@S!ugay!yxG>)$VnzgHfG1An24 z`$7%(g^K8x%3|-7CqF3P_({q6pLXiEr~{kibEavzRzAgRu=*lrT4&X8;O8!SZmz+B z&D4Qk*$&)DGdI?4TS0A-QD@^O@&n!L!3^i(ypCXSq1pdTBeT;m>8q1^>n6PoQ*3RI zzP8uY(9bk-uhq`P(4Iw|onjor$suCGv*M&}D#=V{T(hiN%sViz!5c(_pWlf-9ydL{ zV1Widy&2kFX5pD{Tu+jxO)qfJV14|BitS&PZ2zi0`7O2FKt3Q)nyChZ3o-V}a^UKM z|LTH|*I+i~v8CKLYQj{5%}lar^UsPe{qoG}4~v)oxMcZ{OP4>aSoyH>{GS(J{_FDO zw+6JEI=LE94csSw#Y`(}BG00Nt*8TvPBoaCFboJ9e04dL*Wjqz#Rkt8ZT;fx z%J)z48eDSWFUwLN_KEfCDHAX%EekI1g3HZoFar&a*=;c4HNSVw&!YZRgKu0|zH{YV zp$3mcUoYAI?b+oI&m_NhcJbS#i4Q6lzEKhTT6y$fq_>Rxg(UJUG&NX=E3_6AJ`@e( zrGve2T};a(W(i(hMuy-%$e*-*$K4NkMVy-nXs*W*-!!B)iPnOE`8 z5Bu(3;;yf;6kG;3lOAfqR}*$%b1ds4&(6hOsZV_EZ1nxdd~cody?Kg#^ReJNkl_aR ziz4GLOqj^<$PA#rT;nqUU*Pp&{^ZfFS_2mU_ITl+lPk(q8S4H&QdhUxIu`iwBzEZmIjneaf-YZ`m5YLm* z;7OHPrRFtw)@#%!9EL@Qo|WEPZR$cH5ue-VC1eXGa>r1w~=e>8&doG0ZOD@&*Wd<|2;lYHT-Sk{bm?6NILOO75 z*+Rb~LD>$@J#)^=W4W=Q%KE2nEX+N7&Om>BH5)VRF59;g%&m;?-u7Z95!y;}TPrb% zYqKu)a`}Y6deU1wWGd;MBfntT++S4FeyXJU)Y;NgXNymrDMIH4Rs+dF7YC8^!-@t` zC%L;221nHL$z<5IwGzPe-WC7errm2(pDC+G=L4%yDWVFE8FY`(H=>QKQd894P~BNq(%3-6k9Nmtx0rS~&O(BFho$}9`x;y@6g(?} z{nDp8fqJl+lGk96a>=f(=!gl=_oJtdt)p(}AYv1!bH2i;ZN=GBz4d1lz18`l;G71> z4I!fpCd_Mak9wpTsD>L>{wUG?0RvG?C^(4-dUwbn^1)C=F9uEM`y|O2$08hR8!tANGi5pc_TW*lV~n zB(18IJZUT)9*|0>Sc{(XTKBf%dlwheaX)J_%I8#arKW9gs;qOQv~{4osT=2!vk1M1yf`uB{X$+^bAYKM(I#6Kz9f5 ze|yPJzN4t0+a`aKEuCHTYZX)2G-`#)V7n*{FL6jwJ}QPPk#TIm)Y{)q|H9)#Y*b1#bDv7`*U`NGuZ8e=E z17gX*kW{Cd)v1+qG&sfo$=^Z^){J%ZwxVj(4M^JTYXuPL{v&O7!JG}H$a1PmxEzqxTmqSf*cT> zsLqO)&QQm{p& z;NW1s4p&NbO&96FwoDE6K-SA5)BvDCBc!@cbWriKjw#z*@Cql8KsT5h^w?FwoiA ziB)ld7V|}6rx2()*;)K6t?23Qt!r%S?j7tK91{&qD`sRZ9et%0wGABu{bH$1Hajpf zC7qgOOeTIn7#d7QgJHtE>!Ev(FD&}?9i2TQKCnf4G%zK{oDWnRTSUX4#|JO52tiK` zGWYfMiN)gn{(c-W+OBXgQEj|YpiBrhRzzS$x)f`bS2yM~SU(8?2GoR;9-~D))7m%E z(B9M0J6zS+QC8d1(LE?08Ws-?sb*)~u$L(Ll_R3ToYSYD!7;$qfdhhrgTUb>N2aK> zp{-XsI!Z=^wetzrbS5&NiKyVfXpI)FYGgzr5%)I1llvzcyGI+kkN_DbCajw$zfD!B z!K_wH{tkRhL9r@C<|&b4prNO+Lex+$BGZbl`m(P2(xLV$Q=yWHV5#q}xb6`$T6i!Z+ym2w z2}6T7SvlBXXExZ`OOf1j(X?a04+#68%y{6y;F**aCY-j*4U-bXv<( z6b#<`+#0XJp&Kjaj8}0rVcJ=;zH)Q<)`j@ya)L`=j<=KjeV(P(w&a81WxZKt@reXyxl z(j*#c>Yo@Ini!GHsFicTNKAN&%CJQ}Z&9l(dJ|-r{2?O0DVu->69)!%{cN3R7)>4R znKo$zS}z(it_!4KhF%DmM+)B1a66+jhe1`AWV2OX5j~f75r~yLxaQFR4~OkcT=uR#K1ArhcL) z`M9opis>AXibVa=&KliBZ_+dZ6Ar0*@*12U4dyjC4h;q`?1Y~>@8LB#x$4n)RI)`z zb1UgcFov7U=yQfZFY`pv5_I<~6_C~7tM$QGD}67Q`(7*ezgZT3ry}}ZY5eOIfw#Mq z>(qhyscw8!3#bVPjaI6`x)~!JxZAW{8hfvF?Ze90d)3h|RdQdfio6X0E?@qjEc1hk zjX$YA|7T_EKP>gW&^Isx2c{bAnV&*c6+$uWDN!Rt0c z#<>+X?rk_o|0?avF8er-ZP&<3yXm(Yw_*1#qD&GIxsN!Z@}13uYA8``FrI{-!4ylP`>cZ(%9EZ z4{7jMnqu#_FMJg$i}^|}_dGMm=PBa9@tc=qx)fqeXDC=&!M%raTH-{5Q5rIULmK=P z9Qg70-lqRb)ItAp>8(}oR)m3?f=f|`#|90i4vZf;1|zwU;WI&A9mXBj>+8gH>)T(H*ny64JIZ`w{?BRLwV!LwO60Y+`E!^ z=Y{QeUbu4iQtWP)e1ZGv?Uftpr5l;m8ygvR>GtW(pPr6?y^?#UHA?=naar^$MH_!6 zGG1%!Rt<<%^tou$tR}C)bU+wDgTbY^=Th7Y2c{Z)ZP|A%?gkrvZei)(nR9ZF=CqyawxTui5zd?e>QI_J)gcXTw4M zPCC(G8`a>XX>>cNc;=h|8l3gZFx}<$Fy6|fC zq`zw1akgJ`rem_GWu&OKtEjT+G_S#@&lcn6fuL4{F3uy5Jc5~=_Ea>8dwU53!|JIC zs=-@vW74Z6KNe-52zzwm-tO{-4rHb#OampHEvss5=>+I7_V@O8_YRN;>V_H=;(Fag zGpp*RzvPMDk51YKFf-X(-P)Mz!=Xx;!h%IzebV+4XfQiZ{?-w7U`{WF29vKf=AV(P zE6STNbzrc?siDCX^NffpB0872QK1hi2n1$D1FXvGBt+VBoM0n6Q#odv1XVELg zPT?iy(Nm|LbtGa2DY%1T2DfdgREj+4Un1zDd>{{2L1|>={b5q<2+WRFV9T08r};K0zxu!NbFFf(K5!2_3OLNe6T+a>B~ZNss{F~Jd|M;N=0 zR~tt2a3_Yf#{hLI#AP!8*mgYils!Y=VUeceHh2m$92P zP%9iaoHgtn4lGho)uPh!wwAWG_8ysJl$nCT-lQbF0W-fF9>RnD#a@?{mDZJ>#w9=lG1c5f+IwjYOt`C@ zk@Y}>$wje1{^0ZbPp)Ja9OV_H+2df+u{)e5>^@e(d}9OZR}Bnf@n+8Ud1uDjaX zrbhb}6T=GW2&0-HC*7c73|fvga;%B-nG~~AaO2vhj=q60*`%C|d`^)+!9q+p6Xu_b zW?{njt|ih@%PMD;Ps*A_gE%SJcLcVMvxAEl{dLUKR)HDp0*()@9s>D$dwZe5$cezI zFR!ewtgdZtX>af7ZfzG0_Tqh3gf`sM4zKOhjSqIUb%@&9r^W^q6Jm4(S>w!RoY`IX z0HVQeHWk z@)1K3{J*)Qshv15qaZ(M0UY-3~sNOuEsRz30zyU!i3koD$HDr z7|Hi13p5x&gL$UGs#gcrcn#(q*!l9~;oIlz?|p6+5EI@FL6fd7F*{34CTzWRp4(hm z+C0DAy!2|*jJsjdGN`cD!ED=mNBa9mMkm$ES&p%oC@1Gm$9u+QeM+Qnuv5HYU%3l8yp_!AHlm>fB!H#4kN>3G*bv?)F~y~UOBFK+ zI)m#16~kQsft(1u#GM7#GU|y8c!@knM}7n`VETwbeT%rKPd7CJwig*1 z9Sy#*VulIdSg}BZU)TxK0bywH^|bSev}@I)h6a1)67n?$igtagku;aZ-+`w}$x+JgSM4Hwnm7k0SkcVf@)#GgpIpIG+bqJHtp;v3hK zyaq?0!7YL3i!c3U@#de_p8KI(s)Yl?grUI;E(duWI_6#VJK?}r<1k^&IH&{j-v`!G z4eqvGKa>6Sne1;bZcg^pG313_Y?ykpfUP#=yu(Z9lu)VgF)8K4+J+WAE?kA@<{u~-#yYffX$#0h} ze6uL_wX+2p46Uu^-h&B4aiOyG4+x(Qf8~+TyZJmwr(?yCTjZyHn}_;yc_jDuglRVV zyfhMX8jSbEyITPO4SxPAw|9>H{7w`+lMQV}Z2X`0(NQvf2J9w1U@OGH8=u=*d?For zA|1x`GG||N>cPKS`1UF8YiC1Wt`C2)B=Ci@z!y$&@BfSF*L(f1%#6(BG09b&&B)md zTTxfktRot%CQk_8%7pic+`SZe<4&6L!u91lTZuat7oXcnJ-fZKySBKyzOuV2H>p)d{R9%uACa5^XLt0A!aRP4O!}TNsh|qFCcYB?| zlzy!H)}6)AT@65kU%nnj9!%f99s;=G-Aq|u-VHr>-gSG$LZ<5$@Z3cwxD;1^eg`L) zaAVDMW6hX$O|gnT-hn5R%t$scwdtGQ%iyXo?X1`{VasmHx4RzAB*IBQn+ycb#9u9n zy;3s477bg@^v$1bm7HxFJX_sQ(RNm1`Y0L z?=1_~;K%Nog0qsfG+L;Rc2qNkvWLNKY&M5uk*P|GTOD zcYq!91E9M26sRhCtfuJE=E}#!?G->V*vydOTsa_L4_?saG0pVBwa|e>PY(M?Rfj0t zsXvgkRR9P1GcBT!aV*8oLWaqgflZ?-NvlfICLd~%54SXzooX&U)!R^%qp?)lUS^SX z$L*8Zq-8JT23rx$R>GzI|5Ns#?`<6kx-a_moV(AoElXkmK>{E^fFJ>qAVGl0naDXu zB9aIs2olT?DN>}UM9T`aY)i7*LAKR)yL0ZIc6U$M6ZXuW)IEFlKKD8Mp69v$$9-#+ zg!at+vQIs)N`+dLSFN?`$6Bk(X2cMj{v8_Gp+P6d6?a6VrG-|Y%dQ{P_HZmB{C%nM*IKEg7x&E zk#W}g2L{K)64|7TEM3lEc`0gdX8pU>D0F^p>2xD~wt@R?ytCvvBP&~`nH{!LM9fyD zbbVUIIFB>xO|~#QY=+ibtbFc#C&*ZCelwwEi$sXG_w`zZiNV)nTQ$9JLkqH zMh1g=@swzAj`^bux_#EE#03H&0LJvN^S(KZ&tUkRAuU;Ys?Vzt=6!OA&WX{~P`qZ+ z03EH6rHSauSXq}W?@{Hwnr6mM_WUT?hzjOu5ou@n=m7Z!nEU~2q8iaxBN|A|=|z9_ z>O{C?R8xYK&(f)fpI)zjdA@$InsgfU?17iBE7SJGU{Q!s?C`KlD+%c*$<|^*%EswM6Uo$Og9%Fc zJt@C85elE|R8F=_C)>qaTTp?#iLjhL+bOGcmO=3}+5uNRngR}-DITA|?I2IU;)%r4 zX|YT-CY6mzr^hE`QrWajq4GNHDUUAYpC>DRfyuqLl*d9<3E3(kYs#UAgZzO2V*Xe_ zcGZsATZJ%mYb*cs#_H44RoIP;$7)ndq!VBngF+7JyrJ$Cq=T9IZ+)k>Yfk6^@mVeo= z9`n!f{VI{yt``Z&EZ?M9sM1?idS*QZm7o%OwZub6Rb^H|r=rgVDm(?CgC*j?AuuF* zej{$EM#vVyupzSM7W1%x4i@cC_frrYG_^`t1<@xC6Aa)b@Q^k+XetcZYQyDs zWb6wvK2IxRK_Q(WWt}Q{6)D?v$|m0}*mn!gx3<&IZ#N(AE!=Fyp!Kx%PAkUjr<%Fl zO3)9l-rCHaEGHgp<)F2N;EmPP$!c=16gXK;JU(sQ+sQt=xx{Gk`GZyH(McIPs)wH3 zUVU=6)2@};OH1wM7Q6YeVD%$`Ehn}nCQJd|w1HU|U#ry^LS9EJ@9#8HtzxuQjGe4y zEgChr5gio|Wq{?_*f=^Q08cV89dbLMSNp)Dvw2I2F!?)UGIp|C_stteL}IyItDIy0 z#-}#9>|WQryPAuTg*?}bC#@{*>Yu#1{K;FbPwuX6RpXFFt1zqO$PS$Z`BK)Mot*__ zVz`2z)W8$KESJlvzeFN|1D-g9pSY&rpeax{t}pl_0PI2jm~3j&u2*J*CTMFZc+yTW z`w}OKqn*N46Y|Wv9FRR5b_3emi}6xA9GahL7aZtpx7vw=YOtLnLo%cZLvzQ~0obNL zr{o&D)t(LF>hQMH2D(o*7;JuSj5|ESADtYXREcB;{LW`F(r{mVby>M^*meu}>-TpOaxAyZ~unf`AgBt_fpZC+vLrA19`8%;PDnb?u6TsaNBD!Pc7z3y6j1( zbv@<%__+9R3q#_SZ$IAt_T#OivZLWs!iLVa;s-VF*>>V=H`k0i&bKq?yM?3WR64sn z-2Q<`nVvDEXY>ittbb(MBTxqU<^`Um#I-IBZ~buGQC4cL5Lwbvqc&?ac(RlNwsy|h z&e+=7`H*HNq@LNy+V3=j&yGvaj?3?#EPnBz{r1($t#;v7yLf)J_Th2k!{g=as|$by zN#=h4$shXn|I6srzcFe9`A{!Q?tfc(HI;$yXDpo2_ztAybVfm`}2a$i6cH z-&Qudm5o7~>W8eOf9AA*WzOD?I|E&1L*Ygyo(+a}Dw)nwW+fA&la2tljeL~6N#XM@ zXTU*O*gMsQh=$Y8{fT9{qptt55IBn4-)qtFjzU~ zAsB4(Dpig`I0h1~rJ{vUc&!iv2H)LUJYFe6?;fwy)xF<6-k|HbJ?K<{!M(@-%3k`C zUHW7o|4r_~)4}XxR_=Xv;Uo6$U-s?&HEZoxcBAJd1J8Q{HaB_wz~Lc(bScKJEXD}~ zGZ_5#e(CM~;*Dk;dTYDz)^`4SEpfe;+$#o)UTe{7*(>;um*bRyVN(Epep&c6*_006`O z^3lpCcPm{CE_r53-dPMl+i5)+TQB*~_ZJQt$+NA}+0Ig&B+)pV8ZZhk~=3`JqC7V%zggcEq z)Le)V5{BJ~6AX@;I*nu{=}m>~UFCyLO2Tk7GX8csLjC|BGqx9O%+^OPknqcW_R98l zj`&b{jT2mEbjan8YG=kM250AGT?~d4Qa*;%C_I_)>FXQj4vM)wl!VQ4UYCR^0H0qg z5qme4^{c1GM^RHc_c+Yz9qGT+WnhRhFe6tNgU9*o5q4iM^TsT)!@o%ZYkH(#F6=i; z`V*Fkghh(s5nIi-Z!<$e4hq z7#EOLapVf6R3w`ipPrhOP0vhAm=$ql6KaJ@GbvWdXVfaSR;|TDUpB3ro>5NA=ccD* zhB=u*tuQF340F>H(#eS_xlAfe1dL>(RJS(aQYYM+lvfvVsJs@XXjFnhfKI2wfIvKB zP|ca_dLvm#(`8~XxB`{p!8iH_DfLlF4%gtZcJg~j!nPz+Bawl7Y2rfGL1}OP-%_PV4zhDy~1FkwQBN>e)5+W;1HVh zjs78#R3VY;L;hgY$H?t!mB_9eoqDRX6aofgsDu&u>1K9!(NDfOU5!7z)c_2)3to$A z)}&Glame4}VFtm#*sFCJFO0Kfz#(;b=NkC>{WqmXops7?{Ceb;vZ6 z_ZhkvoS2`Ooe)dMMqEn1N;2r06NJnXvfs>-8?w)l4|K=5JrmqZstHcYXYH)!p5APK z`OYqMu$FO}EPZ|CYQ;%MSDX-!j`O)-V2Z(6w~A~L?9sGxwoX0NX~ZhYAQ+hZDJ1Jp z1zeSw`{|n-N9`QcX~y#rXFlrAhkzvxs9p5J?v&|Pg6?M0mGC>K<=Vj^u6)j{QX80E zpf#z0<)D=V0G}VNf`rM=qP0jiXwC*LS&x>HF6+@V0IW;7G>!E9R>eow$%{Eb!pxe_ zxb>A!+O^ZY#_me#beH+GJ{vb0^r$`|;R&T#Z)B#w%(yy0!cDT))JqILKd7A_RL`~w zm29Mvi&b*bd?xr(*>ETn2nGEizdPi25u#w!sm7{VKT$4J&3Lye!L6ml)?&1p1fB(& zX@4{AgIWt-Mm~^mdjYY6?R=oU;DJvm<~UeMLcm}`!l$dS8!5YRL{y2*HTBoi zA7VdGZ6wLn&lrjG`6S1>TMvk{p`B~z))*SzSrT~Q3CBn)(U&=GaO)WNGA#D#u*HrF8LI|;N61bt?kUi-G%+K zXTR(Q1|L_0fCNgyC(E(N2PJ0xk@)^n1X^DR?k|Pk>J(3!3GzN#Cyzl0Nci4P=G%{2 zgn^HXk4{RDt}mh+ytTjh*5S(0=5o7IZm;ePEPpUyUf`HB#&FpgD{v;%WSz@domQ<2 zxviCmy;X>G8fkQ%ll6tCw>DtAjC#A(V7Hn5UbjCG#O)dY+^$60O9{|2SqY*T#dCpl zhIpu5T>u83tQR6a7oI+Yg7J|lHF@F1;8v2w@IBRBw2Q&GbDnN3KxcbP&{j187zW;_ zgI1+-PN`JR%*@Ts%+AeeR2KiNLM@+B$Y)i`InB(p!md-AD7qVovfiSiIerz)>5cl2>^rJ zm0&61AsB48bTPQSlq!YwA=@-rW4xWXwUJ~nc!py3$WZ^(a9_$UnUX0cC#I!fV3Pq1 z47JO#lZKZH7%bqhhXo?()U0$`EuJ>=XH3IN8%OKm7(*OmkZXyKs$D9b-DS0s4eFhS zM$BAtO;Z4d4wf99g6+{xsA{72m4C!Er!gA5N3Eq!~q`X#6O z-J$At*-PIYsD8h%Ml^r{_R^O_OJ8!AzRj|g=XdP(uf(-49Ii^% z=g<0s)d(}I8TJ?4u3F3w2Hq`&Zm%ZR(*C5=l608XQ?7?w$tOp}=XaNZ!QXz+JSsb> zN-jmoqdBMt&vr6o`Ri2Rr~!n@#PeIcjURHSWBlomNbVogghj@Lz>pj^r1|E8z)}%z z{gCf#EA@7>-a-}!(dx26N7ipC1??v*k&;(e@@RLnw%x217`&5p+*^y?TT6WLVEz4* zC1CLR)unH~xq7QzI$h12uI3tvNFx!mmLCjV|9$_#-?Mi9%&7Id%waGvV7Q#f5C&c> z0EYLgh5c$CBwURrTj?leUfQhQf!)9A+4-xU zYk%P6zxfh_=i?!FA{$CAC9?Slo}`3?uW!}fJ#IqR)|My+-`H7x>uURSXYIJPe66+m z*3}(g@ZJ3b!R}x7Uj64kZkx3Fi~i=%x`@kWz6zdQ|LMf)Pv|5t)Ki20_);_&xC_AG zTLgnB=yrWzBMgfP1~=tlsEff1l!4*+{K4k!^<)==fADw=xPlFdv|x~TaR|%+^vBgLBb3Mr*GEMN2~kaX#M&dji0{0_}$k^pFc)0)K;o;*OJ7>G= zhr5TD5B@9n%3sSje?CzA&Nr66yj=fY|JA=AseC~(*r@X<)ox&LJ{)Tm617yEk}zdp zIvb3N+`rPecV(GkFc=slys-XZ@6o^XEq<3({B$7y!9ebPR`&hD{Dlvpa90RGMKKrv3>$iWwge1* zezpib+>JfCmObB%-dXj5fdRn4VCa*(WrlscWd}aoe%L4{W2PgwWbOwNGYLa>1xbL!N zf~%MD1cSY-{>#FlUW&n#grR1_+$CX(B2X!;?Y=?hniEn0hB^iJNi$3_7(CpFX$S)g zd1xQez-7@uk7;&9KQkiXvp9on9+x{UWC4Q-37aK^gkzRwoWL-_;GNX@c49X_kHJl6 z!QR2he!k(d5OVFgWYH$`+T~L7_w|tQd{Ntt*z2gGwiWzy|&p@K(A4Z88s87h_)2RkjPB- ziG>|=o~vg26Y};W*h@41|0EzayTEhJ5~ZF&**;+Qk%xQ?11;0-x1V6#e>a@X2PbvzUl_?NQHs)NKhlv;=(}I*8;_47N*92xskN zH4g@E=0dx*#OZcn7XywRvad#GIn` zR)d`-KY>hKyo=sW(Zfvtx>L4EvwS#eo~VYku)Ax&0fRxmU3{fi3P>0N1ONYHu!zqa z;c+ASaWHT@N~X)YLKymXC>&s5ior;n&Ze%lq_DGi~n_tet`d7_3sw&5f~C zWBsnV5tm8~20q`*K){AZRMp?tJI3uN7%b^mO>k4_hxPEmdj89Ib`I9E2h9jZjbYpL z%qTZHFLPxmiq>GSS_7{`{o9yIdgK$Po;V zS*f%qr%W;U>`LXVQ_kn& zAYmM0KATKX3`P~GPFB_RsN6i!fnAjRR{xvx5{CN!0=|yqMMyJC>kjzgTZFf2#iVzm&q`kYIDrI<`#Z~Vmqu0!0Kcv6{Cp`ehYLqOtL`5h?&nLCb9(?*@NdB z#ppcnvzrx+D8Rrs*J3x<;x{)kM=PnL^-8-OZ`aBMgI6|$E5P8~fH67iO1onPfmA`( zz?V#D=hSwSF6Gjr&vdHcPBn6}QKlH&NClZ4fSE6Qt66gMuVooHOq^X=Zk6KD!Ri88 zV0^cBerppVQ@(3?`K*pv!a%?hPVr|g{5gkAX9o#;nWd$x>2Nh2q9n`!aN=yQ3OgTj zf`m_+$$ZpK{#F>YLf-raZVD zaIv?t?pDqVJ36mR_zazzuTu*od`9$n`ryb0Ox2VV=v&SBQUM$D_JjlWNju#tN5R0Y zas&>Hd`{YV@|r{5alT&y2A}VjZ?%)a;Hjx8{nW5^h6e^F@>?MWfYH^x?P8d`0sb`% z7L5o-#S(#NTqv0xnbdP9bX>WaqjnDIeQc1hB_>kNs|@a!6T)r_gTXT;rwk+v20q&i zGq3C0fWgdcaOqAfw3jnO*H@w-;hnq(?e_Lz<>LpN=Z8zX$siEm!#nE?3D*xR32*9v zRsX?2)cFia$BZ1A`x3A-g3#+RwC7^FY>C+R@5-kE+3=TC|xCr~F=Zbc?_C zUA`v6pAPU90g)j-YKZf7F|IDbH)I9I!bt0jG2fcf;51u(X5+lyW^N>LmvfeIIu_g| zuRf%oF1rZ{?+_6TCbPlEmG@5;KX`NH{OTew`21=O82sV!@`uMO*H;V8?1E_LcS8q% z$J_oLFxaRKfP^UquP@|)!SP_Cnn;6zA;54x5PY@$s-H6OwUr!f&~H~ewd~45f~t{$ z;yabh*Jpz%1~10LN7ZD)?+aMxp)Lk*l{3I#5Ed}_T8nJA$ge z|GH=AuP>kc8*BCF6oZ4FRLGNhg~17igrgwgomvSD{Labho1MnZ?fN@6b{^f>`{v!F zXLqhVyL0vZJ4bh~b{_2SrWz0Xj{lXl{htTce>1TDYj*3G{mq~M5pf$o5-k5%vHr7> zl^;m%4ZY|IqZjYAY zAYlr_N6WdVw^r}&RsqAHM}~yU5HOgio_W3X>(`cl_ImAyZG_la;ZS3uGy_Vhk8u3wwdVYZ>p2wd8}n+}ryFq64DqwIrDeZe*@EvJX4? zqJO^V!}H0%p7#NR*B3m5d+WiwZA!WE=cl>#ob$L5c(@zCx1Bn!2Ov0b=)I%d^SevX zw}}>^XV-Gye$<4XT+KqDU+AP_2MK@kRuLF{e=mNr;@MrWf`s4N3B%D&>+rk;1BYyi zcFxt#d)lSw!Ah>vEH}zUU~s2Zy|DagfAZ#_wa(V%M8>pGv;mhWOoaPr^0p(@B$78I@~}Oo$0M{qivm9ne68gl)2~&jxqZ#bAg5V1genF}Ub} zQmz@VeoQ<(z#d?E^VuJyixCb)N5k~ ziBN*ITBqZEOrGie8Sc=Zm&lAfOI+X?_tdE95t;NjNYLSre&Gqve zYbSe+lf8N>9Zlshd`SR<+l3@VUfnDw84RwRZ5Ig!Zx=fCXiDPI;{4?NGln<#Uvxj#6a46f!|gvVmEWknn=P6t@F|jdMz~Mq@S@%|^3XZvY8X z2Cig%lC?R3bdqMNGcv| z6cXer$OYhk+K${>i?p-WgC*a=a*CM^Mo;sULI49d>Ca$b*vu=?RNX!dg-m4OH`v|T zV5+ZQFSs<&|63U=L>bsJGa?!$lfVGr|A4{trD(dPDjalf`PGiuWGc8yHd(dhy}FP^ zK}i?@49Um&V`8yttdC%@N~n_Zsu4XQ;Z6>q;?)Ty+}?Nd}k~eKDGJqyo;6(}EM~GH5Gt zZzUP7Bt!XlFdz3fE6L7Uu3d??i@tV=>|z1{W=J?hV0bA43{C_+10zzE)&k11nk*pU zkY~P{u!Dg?!k}M*!5Hq>BJGU3opv%9>}6hgbv1H+oWW|syH$%}q>k}=vy^U@GazAz zVc`5}r`aeb$!xIE$Y#FM=ka)K4p01YPMG-~5-{xdwyPk7)UBQB!P;V_KuEZ<5C;k8 zGoiC9<$N}pPx}#okT6K2lK3MAFGVO1oHP@-_D|Y{t;Oh8C3Lc$J6cI%+z%UL092us zb7Sb=%6S05P#Zt1frI4)L|=-g7+i|lOJR$6OyaVrT$VZVx#KGaCTgSrw=TPlU~tOU zE(hDSbSZ=Te3&)F2Lq>q7AqbBU|>8I&7P1kkX62$u<>;uG#}|%{Nu@FcFnD-E$C)w@%=!kki9yTafUVA2d_vxf1__H; z_8AT^7-~c{xDZOd*)9g}m!0b=6NAC#v-d+U2QKdv`hK1l@G+r?~gf) z0&9k?^6`|85t&XlF43yAT7|-HRHvL;h;*bziu}Q4qfGwzvYsQabU_4zbD&>f@cBWp zT?rqo<_}thRwdmkM%uMPyHQtEc=VH3qn+w; zx)32xFv=B9j!fwIlZN4GD{s!hHTXH^2-gx9%{f#ize-D*CFQY~0_KuiUUD&FNSIYsdpQ#@cxS=!aIf%?eB4+5_(2;ad;<@ldiwmzBF6uxjqLSC9vBRn%1_wM zpA9yD#;$#jTm8;h?F(Mz#X#vZZuwI#gSfm3aSxY19b0?>pMm111b|DQu}GK~W7W@j zi=T69-{CgC&t3k}(Dt7VuK!Br?Q1bzRTWROnZuWdDb-t53YNV2WpQ7-lxbj4#PV%)$fi5o6 z$Ar3wKo^Bus80*^3!>#u#{KI`gNwYaX7l?Uc05*q!R@>+WLA|tT8zHRE)6jFPSXzz zJ}$a}!S~jZ6oWr_v-$bstYL~Cc)s=PXj!d!1@m?_T{Q2{Qov5{4NJPJn>{!xV!H;UGx3osU64 zEnqMJn89H0PBmXkMYhUW=-S%icCEZ!TRhuo0)y#PFvVa`@h<1|-}s%s5qAE1=;}XQ zKKMuaUbKBa!AuAzLBeDKa6-Z{kT5V90s{kvfx#c#-GBLBG{NBgdsnxg-nj-0hQ#eZ zWgY+PK>N1?WJ35?eXGCd;wxwQ#~|SzAY}CiedKFi`l0U+MJs>YROx?3px=R4Yh^)Q z$4d;xedpu5&GUm2^#17*)#neI-@LPYzFUILXytsje5;X$eYBLm)mpf}SGnJ*+&`#& zdcO1Y=KB4E# z`$p^6(#V~eY4Ub76n1!Uk_zEKA>>auT(wvL7)(CkuBY$sFMf1)?W4Qv_pj6mte&oZ zcz5G)rS#@bgS;Ajy7kVrjlkLm7Y_cRcl8&n`uEtiFIn~P_AdWu@aP|9(c5&}B%|6J zuz3OADQ_t42{7^(V&VJS<+XhB{&wZ4wRme|>E=cadbnSEuwTEqQHH&>`$2yP82lM) z;bV6CeNN)>VD5R}=AX|NKU6A7-?f{9`CzP7NCAU)s_9#85OwyTp4h-xwh-CPhu0IX zy?pTD_5yTsHGXq7v0n`Cm!s8tcy-};B}GWsKVJ?z_e#FKqI)$pznOF2*^EPn z4gd9J|HI7~weM`k-~)Rr>%h-_#)jV8Pk-|?5BvGu#V7mOZ$IAr^nMe1Ya{knJBk|| z?59VmFCUa)KRrsG*4_6v!cX_pIJA|uY~^gFpbkU)e8}3Vg*(g1PIKX;Rm!Gw*>v{O z%BL3_ANQFS*`~sfE;FJI4$e3R#hR!!M>ZwWNkbMj`CGVihK_Qe?l2t!o%(g-(;}{FY{)u2Y?TcqtP=2N zXUTiEnSxE0sd%}}33;)t6jDLv8J=ilSjs1Zm)^!u*PqWx?$MAeLI>DnrA zwDZ=ND$Fy(k=c@W#--v*1!O7IiIH9mkD`W&YDilR>pKO{NgeWGtcLOKxNulDauG65 z^?Ow!2m^hT3as18%%9Y~2zj&|JX#4hlhz}$JgL94ghx1rCjQ-`i@ZR)kviMRJUv}` zdb)bLRXE)$KE2jDX)Ti;3=686U^N9KMpJvqJGZ-)Mg|Y^7@7GYf2|KUFmNx2 z8yR;gVrHhoAYefFjC`t^-mOMpmtyX5sf_$-V{}$IXHY72UK3hCoA>MK%3fzXrSts~ zp4=xZz--)nT_>$1m>fF4S~yq^A2j3VN0qa!g|n?ZVbq<<`Qh?8F6?Bql#FaO@+X^1 zCz};GIx7oq=X_5eOFBI#o7T9jMwiP|N=MI*R*4Q*pp(7o$==e*e)D91<)Bq*l^4kL z?@pz&lC0)}ush4KQrh2HNigrnMiOpABjrf=9F3H7Ythdrcz#$S6)gLAD?u`8yov`2 z0LBNqnemoF^SeudllA!Sa`Nn8397`vv|5Ng#FfisA&XY4lxr0;A&UkhdjL;kA=Jo+ z+e=BPnsU?m1PqVJp3V4MwZW=5Sf&>T-Y&JqsxX~+687N^U| zm4Ywl#HiW@b63pbJp`2@yMm7anTR)NofV{P;*w7eH4+B8*iYUqgSu;FL3EQaDtaZl z)Pj_2wiGsaO){@R>NQNbH{~NXGGh;6 zbc=CwB_8$L*~23Kglb~epi=24X4D3iBI+?jJ-SAAp7{d`_}K$Bvfh;6+*k-U@{v;1 zN8a^KL`ty$5Vw(wr()4mES8G+Qt?PC7AB5>mnal~LN52DLN~yCt`D^1a=CqjT<-WR z`QB0i=^?XeKIHe7a>-IAmQRH9i4cevb~YS1*<5Uuli8rRvz)6g;C`O%EN95u7E2Jo zI0+PK=KXXAxSDhk7-mH81C_WPcDv%shb{St6=MEmW+#`7$IwQXW|R%sQ!aDLp-tH} zX4R~4RN^wsx(o`~yG#DFoix#2o?PHtd4dx@dp_dbYNXGu*7G4}(q)!SP9+^WDB(3F zyyiw0*9D;hqM+JuB)wESBh(r#BIyj;0Sz)LofS{1R2s8aC46~%kE*EV6=Y2#@@>oT zSl^gZrqs%26l8~OVXs-rHcQFM3%G~d6+;kuG9&W08>()nHB6B2-n&8+=;i+K%&x+( zgr6^^61*<#|4*-Gfoe*i zQ%va1Hoaay%oni0^*q6tbb3;*(U{zFqknkL&(Xx##ypE)@MCuM{Rz$m@(z)dZJpvJ zERzY#R3oI#duH<d zF8n(!rpe!NDhus$rd@(kjdHwE49+|3{NW6iXW=R=OM6kHQ}r#-FRvc`gNI=vvZSDnaiYe8C0d9 z{iv0BdVTq5HCc(fTZPa;YvF7&eNgw~-o?n7cg$L3!!x5p^wX^nE&-PfB?LC_E=DU+ zcg3gPt%S%OCTmXF$slKpKfvV<3q@kd#Ppa{E*MvF$F;*#rg5!Ts0*_7F^+9PG@lh2 zLn^CZrMG$K?OuzCtSahOw$nx`27@itkg^(9wPOb8?ndOvHL}Fav(wV^yY=@^D_=a` z`{2#B+v^MGSL;VhnY&w+qiXgDrzsP;-ppNJEx3wr^K0K>wf=N)sv9l??Glm6XOEb7Et$uQM<>`&3v+Xn)%v8edth>G7Z|8&lU|PKL zLa137(Psp@q{Nhv&!=RT*oZdFQ%5Aml+0QX)js5hugK(Ta@WQ~G@DJms|2lK+m5cYpnKbLH(D`{y?f zKYnlmZ6Chhd-89r&A%8}|4r}uS3O^w4eqJ`7!2IUfGg-1c0ZZX{h@H>j~gcauLu$8 zYtqBZKjJTw<+9-Z<7_YmV5+xv@?8=J15~UhwUyx!hSDExZwBHVt!z7mxRd&!&mAMF!;$y^T|mIB>dvu-aAKY>7~Q| z!++$h{c3Re2LrV)`=G`TSXcjUGV|!=?!mJjhY=*~3D|sTZ*VaYSxkh1!C>H{l?9^K z;!&&e?!ofCy~e}+Dgc<0Ft_nN27_O))88CSK4s^g4`iSBZ2y%kddH{@8Z~~qDUc6F zcWT+4YNnNsZ7jqO>dC9M*hVh2n-8re+}G+cXg%ZDuY?#3j_nuyH(Qzg>cV<9v{TI< zw+hG2R4L#{x~)mKr5v>El{{NnC&b{c9RPg38H27b`wkmK3=I2jGCIiG=}}6;z+ei% zADvb{yT9_$%?ia}=&b2KYxG^d{U2O z(-~m!#p(x_jpYH$BG-^*t7H9gFMGl?G_D#DNc%ZL))1dP#A9|aB0GX$6!P-rXJ&U3>z$v^hTYk)CmZo+L$0XT zX1Ca)*2$<%=2A&qs&TE>sGS@!ObHAIi$O7MkW1}asa-Q}pW{O%zw+fciNWATSSR2P zsw8}wkozAnxJ$wSV9LW3gCV1g`9gHyGB6lYjS>>BL{(5DqV19}qCjBa-ID!eEkqfZ z!C<*dGYSSCAL`|DID>tcWWpZEJT=TN?RBV_BNB2^Mfpd!OTmr^gURNJHf#1_-@&Ewn;GfbhB`}xd8iQEq}6B01Q99 zwsx{n*{WypOx;?Fb(T|P#UL_DPGR`V{DC}%p-H0<#SozswSt84%xEO$>73Z^QV@W> zyA-YfFhWM@#0;Cw?ircl$&5<1MXA(#4N8oF!IKOIllMx$FPMe3BvIMHINRTE?(RESg&AXAP~I#5cwU1o#JYEF1PyLx3k|3m#U)@c zS`2yvY`NMZSLj?OlU$*3nT^cqK^B+Q>bE=m4yS+K<~PoT<`ra3ofN>{5H(FyBifgG z#lTkCuy%YvJq8T!7jgz=f&sG(%sB+cXeP8&z~H=J-W6qFx@!73r*CL*&?@JHhbabw zfnQ;;rHjFGVGos7I?$C%%_qVopcQ+K6JFz_Qq->$b0!63bt`}k46pBvmn1yN1qM?R zh8#0wrEYTZ^l)lJnoRg;<8y?PPc0wdClA1KD)PA(zXblh4es`QuuZ3bN|; zR)ZlC_Mzi}f&HdQziA2>teqOt%DDXkvRDxe$cIe!5)3xc+hg7%rwr^>3q^eHD6?`t zk1=rYMYh|TI}_4PsneZ9Q?3*5d7oW2X(-q#2Qi#WhwKI?*z^_qNi zKt9fwj}1xqY>7xH5e$tDvstWxF|uG3*}Hgha#AE36^@RH#wPh<*@VI*(>VDGmp~ig z=`(E0BFnzYT6zKuCM5hd42JR^1tsA|OrQ76MGdm3ai$S7ZDyTI5dy;?;lr|@>`9UH z+*wZ@R>JFP54ABwxw#s7w4ZylpCt@@NEjIQy-w=189QBD=u`{jPmQHat5$6-EtXO_ zQT>TvzBFRVh)jtoQ%I)wh^7sF{D~pav}9VRn$=l#28M(!z~HFMhFc=@r_R!_4~j z;Nj6JHF#U4b;v-%HaEdwmpkO~5Eyp5AVR;Dcq!q*la2x~?1XRrYZx4(7z_rk#O&>2 z;AAaxvX%zzkVW!*7V?*39E#fkz`Kpe*=~k1FoVH1GNrr}1_MW(R>Ht;3q~~~!qJII zxok>7NZ6zU{T{87-9TZN;!a@j!E)rFfyYgHtKi5xIVP3#utD-p7!76c5AS*Q4XzIbe$S#Cl)HX+AV$e+-2rVQL!8&~Dx=pr0Tn(r#} zEGgA|NM-hTEx4#vrGUDfHb5npBBULU8b+%jMbtP39hL2GZG?}?&L`J$^zR_g@76%V zUp(G@`|9HD_1xQ6m)_be-Q6lbz1e(vbG4lgpEfhl^=7tFTye!aqS|-HYhQ9(zog== z{+zq|^P$zBvtiQ>Z&rRfxcc+q^S*UYWTk_AP#W12tb8gkE1^4*-43F@E4Ce z&mU|8n%+CEQ4D_fX!+fv6=1Nd`Y!AE_q|vDVa8ORRR&&>aJ-(%0E6MMTf@uw97Dp3 zo8|mwc>((1#^#F$S11V|w#s1Oy+#=VXWrYcU0*G?a;fX9rD{3}wF_yA!Iemaf#DU0fP@)^}|*J7`zzIPp|%H;N)Lf zTYuTJ^%s|qem~gyDTBc&yFKOirv09j-4^k?A|T;>Bt|j#aHRkY{@~8$y@S=a4qCwA z8yoevZ*-o$b@KjOr(ob)2Ro2@`&aCfe;a83u5bM-R_m8te0`(-BUa-_!^=PBG3?sU zpe%J`yq*hh`@-JJsZ4Fmwb z-AHvOgu7IHZ7GG5dTl8U82-Vt{iiouz~JvcJ9zfy=B;-5;nn7|H@BbNT7B_o@7eA3 zhkHwhOIfJ3`Ha2#i%Yd1yk2;5vH0Rb>5FeH|Fkk`o`l2AU~ph9 zNhX9DWsvx-b_E#x?&<22;}wwbn>+Qx=F&SyEs*fwmA@VC{AbD9PjMmj*S=%{Ul0Gj z=h{C{2M$5P4x`VgrW-Z+7ZcG|Aq5hq419mPLT7_11|PPTfWa>wY`uSLm5}ht0&DMY zScPw~vmXzEgtH&BHhNyh|n)#;N>qLZ~XZ2##`+OL_WsLzSP;O|Fq#@ z7}(w^I&QThx7K1?1#c;8&&LD#WF()AW>e|Ok+8BoXjFBfy=BR#-i^AwM~Q^&w?$RG)sWC9)sV`>@i5=g*0%_SrpH&7C$7~Ed4 zLtiIh^9&DTQ5J?L7ytJz22&CyuYfWn41s>Zz^^bk+%DKkJ{2Q*$t$zY@_Lzha!&7s zR~XC#2GgNDo#TZ)H^!CA}ItKu12}$p_3p%Jzc$WHk=8^PZEnECvwFY)`P7f@H86N+Od*%g$!FE1 zuq(Vc0q~)RmBZd4R?0y?lva@c6iF zbVSB|9VAR&-AvdfAb~+5DaGKgvr~{e%%;IxDwQp*E5m3S@(xRw+)t*!Mc(yrUEQ7&D*kE99cks9}DI~PRM1{v$!HQe{4uRt5vJ527iz6{Vp`GMw6|;na zr9-NT!Cs!2R-b$(J&5i#iBqW(vsK~&^iT4K!dLy4&Ja=nh7CZ113nUogzNx2&?n&q=yg&5pfc!AyvT7zMg^JO9MR@gd7&D2U%R~=aSXn5FW)uu@MW27>F?{=TzfT zvTN6@+9a7ZvZt&Zg>O(D9WoULt<{0z+r#B|DGAGXmqEh7B4BXTAdMO(!N3?ZL=96e z1vp36h#9M4<5CzfOy-2|tS9zzF6glAJFEonwv$ix$%>oI#)^^Wx2pt(2>@qru0(*r zPi~e@Tba{#<#elY)@dDVwpw{SEE2-nV^Q_p5nBNmJZ6ll?XelXXMDymKBeM{CM8oE zl^hqBN;Na*x9R-zMzdN4MZNB**OQI-vQa-6*yZwuf}v0_Y_@yMc5le?U`3jVa`| zlNZY3?o!;9@Y#s`c3^NS;9|afu|bu%gD7SX*|nvhjoB41fX+;n56nY&{E@$4La})| z4;-D>N9T3bgq<=l#bA|EEfA6|&8HX)enrBnO2l^5N<+*i06qqTLt91HR?$f@c$7E9 zALfY%EJ(ug^xvIWf+x7TJXd8bcmu98a*28PVC0ZPJT^Q4UsFqrB+ z=1(Eev(xg2Z#KIm{Kca-Ncic^6=3jt2W9BpgUY*Cm*_^S&~kZAnEzm8;hAOO-hA%O zY<}Mu-W_cJ1{&Y`9jE=9{&~UBEs3o zh@mRVKA4)%G4J5m%_e8a=?vND8!<=8Z!Y-^DTkWbqRa>wKCbzI!QXz+dUjH#82rhD zjc?vw1qQ!&RDJiT4h*KV!Lh{3!12FuPJTa?x%agRVE}M46G%Zo%2Xhk3M7ERceWdw zvT34y0O1Ec(MSqm|*a3g<|mGQf_(s(+kT#d#(2UH;N1i7hk-- z{L?qqzMAkID&;RpI7|STY$Hrb7#K`Rm`(_Tgqhjk_KUk4hs(t$C#z3RTJIb-LBgK( z=L3iTIJo+={`&X&t6vV(zsp+vS>N%$@RDRg*r@gbgB=Ef!6|PD7@YP5zK+4~9yFkP zdku7gn;S&{FfjP$MmZIXuy+26!QhXEG9Pe@pAByP*<|`1uG4e?A@;bgF_E@3lFz553eAXN;?;6W+Kf(u9?p?lU@P?K36O2 zt_00n3m%4qfx(X5ydA>xY&SoDM5cnH&{5qB^u1O09%O8=-`h`7eR8+_bU*!cKSN0v z82r)AGP58J0GRovlxV(FgdC^Kfz##S)5F5k!_uvGW~&^@rvShyO<-jxd)8C?h!r^$ zJF4TZ>WHPlQpMSdz_8rKn>0=-jX=;L{uqWbEHLm8hlnwF>eFdq7`S_0tr`tO8JHS6 zrop2N}!NUgkcQNPc||n;}2M694O_K(WOBl`bIP* zVLH1@F_^_7)gkufZy@Wgx^L3~hUpv8%=X35Tu3+0Na9k9COEx)mzn*9dwY33|EY_? z{3rc39HE~0Wz~% z3K>cv0Hm#52r#d^dkF?-1Jz_OeyLnCt5_MU0E{mRgLl_UH;*n}T zz17HV)wARcy47+t=n8n}$u7GxtxT>136ocaEjE|Um5+tmwS`h9T1tn=G+;bPcJW<^ zl%k%f%S^u7C2z|qWmD5KnOrt!no{T|WpgAEV6f7}z>irqJExjegsgf-Iw<8fGeX@h zWOLwG82oDEE_1-F0Rz)+OwEXBOemH@s#zJ4V%lX=hb-EVMMtABFFZS4b}OpscUb*S zn@T>ZnjV#jxw28VOl6eJVC*O(TL9tmA)6i#u*h=3!$X2`mT-zCoCFC&s#y(r+Yq*F zR;8R!&5o+3`XJipsVD%0b%)t~7`$V6jf?Km#f!4BF|yt0*D#oh0`S+xAGkaw#3eN( z;q*YjU^*2H28K=NfvwZSqa3n#G1A9)R4f)FJe$=k;`9jF7sP%48^K^vA9xr5%wt{V zvdN0sO#R5X9|jHB*V`-O_Ye#oVaY^1nOGI12nRhbGf2Q} zHkr&OquFRM8wuH)4O+8a0}M8+<*8?#MPC0Uc7M+xt8b9ly@-Vr02nku zR1F1y!HK|65o4$i4TjqwNDMRrFr!hB!pj1`+R6@zAUY`!1JbZ*--es|cXNb4+$gp} zp_EO_#pBZH**Ue|CY!SeXDov=PPRJA(Wg1Kr9o?b=xZ3vkT4%|%?k6LS@JrxR~0qN zTne#EDb0Jx9;$fgU{C=V-pe_!FNYzJ@ZENTA>jnHS9IQ74KoVeTnPh%I}5Ix&DfLM zOQ&lK_m5XkcbW$q%~oS2v$QQ(d{?;mj>ujS*%n4j$x%Z@s`W~hwh4tvZ+5u70ik3@ zB9W8ZluSHK{EiVe$<>^BF&6HWCsB z|Cn`Jm&E`KCQmDif%!v~nf%epNLDTc27`ggL-Q5=QssS?mrn<$fqtwG5dgMn&2zJ6 zm4ehut0RBv((06Q<*-nSUP1bUNJ=r7kg!34=c&uAsYK?1!L3rXm24AU||h}$0d0kmw9g=08AK|br~Jzr9lT2j`D?Lz~B+7N-(MC z&sew$2S*p=7-Pfs1+J?!>@2G0!)B|`>+&TmV=rfeF+zAX8_c{K4Ga!~gr8i?G8mkB zc3J=oKRYemSx;do`@x&5AmR6K)S=HGZ9cuZ{N6$FB?*5GgWGxX!7$ZP1;gVIRLLwY zCE}~;mujV>7&gBW1Hi8^c&8AfB)n4yt>qJI`8bqz+5zzkp8253yjSvrf$whRfWaT$ zZ9YG(?&Zuk8{S8|$&-Tpq-cL@HSpd+`n;2Sdb)JhP7((&n2>NC7~Ia-Lw5aSaAS1k zxxi55>vN-qwi1&BE6)m;*vN`Tg+HXWiN0 zOd#!d0)x{~GMENcf`pgz`OR{X5lFaj*jhYnRiGCSt^k86318o;-`lQ(gu57gvsI=f z3;>Qh{fzAc1N;5e`Gqr`txPdEfDu$ENJBDn$SH!s_3C!L1`KB2h+f|)E-l7Omif#; z`Lq7x-*dM9g17bOuvtgH=VabhXj29w#Jn19i-F$b{y6zUI7lXhyBG`sgFm>l^XPQ@ zEhM|Y@$9Xa3=G{m*qK`Y`Q_vPc6t4Gm)HJ?!Q*Q`=dAo>X!*ySLmu3!hvQcwp-2;EhUduGi%w%(Q5i?HHLl$ zy+_`H&Yv_>WYJ^dNOtY>gUb2ABJ|Pi)%Q*t_d8XpyW5KpnXuhny17=~DW!MHnf>N^ zb?wP(D?h(b|KX*=rwO)q-a>pG0VmRE&rV1f{YaxEWQzyEz^zL!vX1feJz1b>0?9^U7 z*nH5b-)j|EyMNQu{tY|#e5mj#)W7jtW%ga8)^9fk{I*cs6{^H=#YV{I`^iW%5o{*> zSIQBxc-?C9b~Ev?lZWoKVs~26y>ei$5;$JTo*ysY=`=c(M7vsOFD>LVnS9WK>#7tD zg)FL)S6^~#+Zo$QBLHos4baKrJW(_9>N67i*;)i@B@G9QuCrDU=zG=*bc(jOHX;xM z!)Y1@I;uJe`W9@>q%rSPH{O!_+?0#4cG}O0UF%)>w5RgqqM_Vx zDh*l6{rUyAD&8~WACNglrY)n>MvN>61=0boa9|Jv%0c!Zd7RUSJ&V}{h(6l89|_ZU zq%T~!02s!z0U>dSk|9P32-(}uy385r7flXeFe;rDPb$SzYOzcsmSKpg6N|=1hj~bv z)8EVP>t**|euDw(i;O|C6tIym9tSAQ=+I>`o4mtDKkFiz>Ko%-22>!gzMdWoeHaqB zpd8~^=Y(`&k`h_7>ZKZ98RSy(Ow+?CJYr!GgYH_j;A0QUJVXj zzIcJ#|0goR1&F|~n9aAr9-9ClQH+q^w;6RY;mJ>sc^7eN_QIB&hkPw9?HgoJp-Ix z)*xtbRB08<4TNCz008C#T8EF=I#tLx7qS>bHcQBep@~c~F(sLp#87f*M0%Mk21w&X zz@YR%pnlObcU&ox8)Z{!+2ovAttJ}-Dre0~xl1?a(kfh9rAj_S+&UEz+E$}5Ym^3! zip3#486AU;dU49gCBWtL1mhFqQYxf_;gMuwni(E3e9r*fpj1(#$u)**^4_FqXFx#n#yqk+g`RnF;gQH)K@_6w(IBD6>} z5&Dz*Q-hM=B83e^?&XiOMx+2O_UJU)nI{?o0zKofNje-JS19EO zBx1oB#N&&}WV>`qHX##>r^RE_V(A>j70+<^qphVUpn3IGE)5`+Wg?;7d}L)|dsG&B7Zp2%^0e0+LF zJ}#Xcm&#KNBt;M(h)^1FkT_f&!lO2H+wl&u`;gKbxdncW{` zA$0!-oZ8wnyAfLF)re)GG+1N1s7JW|CFBt5l{gc!e4#CK(`$A4gB#i{?0rV}UwfqSVfZv=&duF;D&uo|^A0dK+7r?vIC?XVJheA@W4X_3`bMk8d|I_&>i| zJ-=EzzgoYwn!CTd^zQZ6z1`YQISbv~tdL!E>cwk~(oP`<`&yG|r;^*LWOs6jgG%b! zau)VcW1&^Z95vvddiQv}nT#atj)dJ_2)ZBaEnQp5tmOjrsG}a8PdfE`MbBY9^l&f5 zC;<$9e!8@ib-c9^JKxXU*@&K0eJ54_>1w326u5sS`}Cynm?;0ry~Zc^S3bF3tmm`h z=5t}>P+%*$~Qul#NQ?q5n&QOID5`yI)cH%;V8#{9_;V8|YaV=0@3w(F(s zTJgr(;*Hi~HJyPC^xdl!Dv1;v?_8~4YZg{g$(2+hABc7p_XeqSI=3wK=FtA%_1^e@ zUq1amXXDp(DzY#WRE>w|N5$Kf{PtpTd$F{&Sh>2o{Py8C)LB_>ma7&=VKD!!@7nL# zn}0sA@jLd$?*!NWWnkwoWu7gAIr&niguxhFh-dThOxzb=$z_v-{WHKHC1|(aG~iH=f=-escG8W%u!=Yk#=B_g{K8{;Z3yL#sa@ zT>0tXGMNg7fU7MI`yXb5NnqylV9Lo54fYa)S277;Ct!Fb6JN{4 zK*Ed?2eri2TAaf0Ni*FgVG6+8g)kiF2jv^B3}BeSVDRMPt#N59eetkSxVO8!oljLZp7%C?(bxDoAtF!-oh00yJjz+ja5-j&+38!I5;_iwC1z~IBZ zcP?-LMPKO)ZsF6x{3m_w-*hn;3RwLqe>mj}wo;L`WC$31r4qeT4igM+5MOp86{%4K8ek~aJLY~+&6b9rK(Eip(H7SW`- zpEusa=J&ICbZX`64|O_>gBy>0P%h{c=nEVE@O3 z;4*{3L%?9FkcBK71i?Wu*d`}KA3BslniwdlPCok?8&Hk0LBix?X5EzCAnzL>BQ^xXNQjP&5SPQc z$Q^h?G}I&JTow;q6m$C~MusK??1_=V34WiDeOa#1%O|Jg!a*^IEgl&Kv#Atw5}As; z`6-o2W)0*mP`RGivN>Qd**H;SP|nVhj|}B1nOqHcAg?qlG)lQrIirwF%}FMelF@OA zXjCj@UPPCHhbOdhsa7#PH#G)qLD^`HP(peNdRT+t0pYk@I5wl5oz~7s4YM*NDw#lP z09y^woIyTkl&MTIwRv)8u2(1%NM|qdB$ozw7YBHtN|9)6R4froWMY|yOc$7(sc@iE z&j5h45w}5Sy3{{}Q;%l6JTlcMp6#2^Qve`umTGO}OIoFl?1qfGXsk+^Oe~q~86Lkh zC_o8OPV}O#jTXij0#!h_0e|vDQ{2(%37K+YN--gwnvgOt>d#O!IM5U57#hjKMwz>Y88DOSVqAmZg8rUMy_eqLvM!Hs**xw` zen8xAI^9HIFmf8^50f{0kzH?3f6wKCzTQDHJ=cSy=!A5dh0eMR4YD~suMJ)P6Tq-i z*yGjkDFd5lc_SPa9evWF7%n{+IABmhG!8W+J7zIc9EFW6P!d{x7!(qLsZFEPGBYJ5 zS04>S8kT7p?jT#h?&0^n#vi~%F(~E^sV4X;B}S!Mm&FDK9+u3KH$-~L)rYu91Sumr ze!|dn;D8M`4AO+54q6NtI1m?MdivSiVUcW9I3g6%!qe)&fdB}J0#p7O7~~Fc_$&^; ze~9156%CF~vxfvIF)ahqN2bUEKWSb_oEnn-*9;8+gSLf17Vv>VF1S4+BOF4eXe(M6 z_;bWE?u2?|TF09<3YE5tGP7_(Da6QIDo1N@MrFLQ8NN(ABvlEe%KqW8L1tTQq^4uc z%*+fDL7GSnLvY%kVY=;r9C3)8UFHNK3~q*iJ=*z6b1-ipBQS?MJTf{C3?`ZZ?aYzy zhqYSf&zkC~8O4Bb5_Rk*h*)SAE??Zkm*S%C1!FU_#4zy3#SRC2=!rv-VAJR*73~%9 zq)EZRf#Okvl+jjjAOJ$5B{doiNEn5u`NE*qC_fAwqz+6kg+XBWP&a}h5qcEqz|ipB z6u{Up-4x(}K^U3~ZN{&s05_6F$!X!ch6YBxx<3(eL@4483%GpI@W|M(Xo@FM4NsYe zW}Iw=pQBH6ZHrvzilF*rr1p&dVV9W`?$M49G8jB<*GSFNf{;O4a%)O%Rj2Ijl-$jj z5j`|+5w7Jq; zTA~=tFFz7i-WE7(0&7uVNR6n1qB+mltW7dw7?sWnM#-O1grZSA?wKdPsBe(h&lL(r zMgqLGMQvO!p-HlXQJ@Vd4&pelpG#PIARc!K6t%=N77bJaw3BN{%>+ z(%`bdmeo3_56)?es?K-+AiMTU4-7fz6uh?h2J}JJnnfT;- zp-^h_8y|6vC7z+c)1`(rktt(HVQ@=lEh7_J(WG8FW1Unu#d5De86Qz)MY;Q8=d5f00tsp_z`&5*l7Q%|(LqnzV^0FN0mCt0I_67l*UKQ`^-|%++R}cl1QOn> z6`@KZ4P9#%84(f&{e~O?D$p+&SQ)v}xAPa5kN;cm;lK3m{%!B||1s430ma~IJlM)5 z4p+*I7H@2m4SsKIubytNU0JT*+FrZ0y}nYZR+1HE;nC%ze_?I@S%3St5WD@m!E3+g z)W0LwB_IZalYUovA-=F$EG}mkR^~5d;Sr{U2rU!@@2jd zrc4V$rh-33WvH7D=$F1PO&PcwrNHe&<^M(LeRA{gPmC?Mv3u7yZlM?>YL1(bT(S17U^RsByoV4UPbV z3*i7Tn3C|j$1f*@kCqEB9&9`$yCv12d#(KG)@k4NU$9DFa0;IeEIjXRe`BC-nxM75CG3$ zgha(*XpM-ud=VH-UKS88D=JpGu{lnvI4xc?XOCGEI zaT$noT0w@YQ!`=-qp>ORgko4Ufd?yRhzs>$Ko1RYSQyq14WlAx5Y&!o!j~U`!=U|f zYT)17*UuM>2}b}`L8`vQ!eN0#D3%DvBvK_vSU#&J7_8I}43GDW&s|_vN~1)IlZd!5 zw4u-f>|rr^5nyiKY<5D~SRfnq8+5onbO?aFkT0nyn~iZ*-NgB99CkQ6yPj6v}brVnR?H`>P&_Y6xUvN_50+|cMW zMmAiD0%br$5(s4s3PAfmVxgRfPTJwsSf8d0AB5>+zS#GPaB5E z<=ioOpI`zZ(T232&=g?ciAF|taMRSfh9(OK(nR@DPUJ{q(ZVA<4E*7y^`&lV5DNzW zI^XSC>*FbY~+GNG#0WWR}MpWGzBIT0^Zag20w8WHjRR^;at$T@MLn}&<=oG z6K;A;{x4tI1vY>gFseo;$NdDsP#0QqIABmDFrn3IMF50{4=pM};t;6_hl3m$fFW&y zeBnd0K;W;ZgRwq98fBwL5oJ`uU@&ekauqWPrlk|?C^@}XP(z!Y8rm695~PNV$c^vS z8WRXc+lK~&4L1xeFbv8@OM+6-GQiN{!5{#lz@DC-Mq8mv!xPnnLDi_CO$0;hj$+`N zLPZb~KS}GqxC7gkx8U z?CNo?3{SLSvs@f9&6GSE!oW#;-lfUgXHyR4R?51Swr!=Yjfl0g=s8{u!ER@)owEB* zJKQO|c8lKKl7DwGzFSQgVKt|CP&A}pHgYPV9-OTLBpa2&<+%CY5Snc^b{aGJ(Y0d5NrfSEPDFTJrD~& z;fXLX^eByj@Q4lrPZ}NJ-EOzf=R+8r7x?2S{9zCU`JyoB67ZyNRwEII!x4!@kR2Ky zC)Z}P;pu>gGztm~L-JtiMRUPX9HIsZA}QD~Gz!U#DHwN*Az>*_r9voC2&HpcjZP?; z6-uX3DO^PKbubu&N6IvD_#;OY41ER#rX3i`!lnjc@RQ46Fkd*%6HX3|$fi{`jWs0E z__(T|z?9@$b9~q0u)8{}32N&x$5UwQ9(^Zst-)@A_$Q{37ty?f9& zuICvo95)v*(!RS_*(s-XvXNWuh2!NEbZa%YTS-E<$gUO(5EwWyZ&}L)pld71Yb%L* z#F}(yk`8q}VtTlje7KhY11IfjIu8t$T#8QCcD4}*1D|ci?{_lyJL&sZ7Vclky|oc} ze7x}ZB!5!#wzAGdWna+vkZ&&YO$$6tR50rnE9_&lRy<0^rgbAy&CHzL;!Mn0GsE)e zh$11%zQvudsf;d_!C}QP-D*tOwF%o?C2YWW8yMV(7-1(}s=bsM7<{K0`{MB~F!;fh zGBB8#4PH2H=D&`?6V*=!fx)|f#XA1|^x}tvgbfMEZcR~n?5S8F0~iJygM_#0mF;?E zy;R(ZW3@Ny~@cSqu`FvVb--U9)HrK{h)boxK~PX2A^;2-+-{VxU;gdQmIvvmAU+R@6o>u zZ2Yc&{i~j}uX@&h+rRra1K0i_irjuh!fC%dvk=cO#Itc<5+rWKf74?^tICGudn>bGJIS^{c+a|JuL&!-49TtSZ6a{-b{o zmOh)DaY0IjlVUJLUW$H&!S_3LVDPPW2^Z)6E7fN=RzSip9&9qR!Fg}_-q7w}4{v_O zDSXnGd(K+_HJuHnZ$t;Ieg=aB0f#5;1p`wI_5g#gl>)b$@h7J>VDND*00us(dOAhd z$#UY(Zn;wkoV080YSA3uoK9VpXOAX*%Vv|!Y_^*({NZ`PoosP2+9^)H2azz+` z0pJAmf?zNpCCW>b8DJ2Snl1*@aTNl?jg%3FCPj0Efdfw$TG`n;Jx+v1lSR7WIJ}4n#+ICROs63&zd-WIS;cVGxn{P~Kzq zi>5w!awDe;J*-Q891L{(Iii7)$sx(yrM|%nZ(M|4zksuellhW_DF!1E*l0AIqsuG~ z2F=VHo>sBKVlX)jM!Qa}9~zrQ7_=b*qrkLHhB#cDOPp;~Q!JUpQM3}u3`08r=^U?C zWrK|@kjU$=zfKc@CuxzvL5!AAa^#M7!y(j#w3}dDJSr87#s`=-qiqETJv%sGFw_$U z5z*R61a2gV;?Xi7J2VT<1;$KBA3tApNi-+1qMIJ(y_ej-hzhQu+LgUudbaaos# z``>_geHXZ_9vU774#YzEZUfQ;X{G2-S_U`}tXm$~w1n`d<-sB9poW$fVPGQ|!lOxH zcY`4j_#jOb62+!bVBp_vRUAbMaHC-n06yL5Ff>g#;E7yd;Gjh!&Bqvel-jhKs1&N) zwW&c>Nnj=<9PmMrkQCgAf)0SV@PticAq!f5gzsiYn}ueC_D4vhKofx{435H0dLDD< z#0^2K)f$aP^e!AibOc6R+7*#09a!ThO$`p%2!ObHyF%ID`Q3L3S9mBN&H2N-=nV&HR~wxv}89bUQf;jJm_7CksUd zmZL5}0{ld3IIXBG+^8MgNCDxgK~qo%3V=${^igFW59L4pD>b5C(;Z4L5vHca26vi$^`FKin{gi^AilH}T zy1*a7(BN}(b8yg*_^H-tr4!^ea)C&~7t4kvDxS`a^x-q@JP)N8D3@PAjf=l6#pU9nNidZyF1b{z|;;O+R7!Rb%qS###dF#XGw9pvQ+JY`mz~yjI3Z5f1QNcrnP)^` z`0i#2I(ZGkZ{u-D+o{IVRyU(G`d180f$^KWh9 zXaqLK;q`^&Nd21vdrf363RF?STu`d@O{kqRwQYLNG&-#xm0QG0$BZeWv1bgfl2nr# zNuTjNZLtOz>{My3ew(Edb5*6cB^{c_vUvQc~;}R17aesp>91R8r33tQ%uZTh~h2gILh{1G2s;D~%#ohjD zI8+M_86>ae5XX9iKKmBwr}Xsy~gX1!T;%Axlg zm432P(R@B+YouNIpqXsQ;m|eWwsy|hh|ib&xMBHDs$SU4^UO(Jf2#NzS^wEahHNcc zi-3(0nAmx5DdKDw0;QNI6<_3c3e2zROzwa&YYn-h6FHpJS;Ky)*vH()o)b z%_YHXFK@DkBkpAjdRd&l0q!uy38GOv*XiBA`_#uxnckY|kPbfd){oI1#yS*5DA^(a zo{P-$kvt&rld>+3QU@3bg98i^Ko0PMKO8Vfgc33w$N~lqgoFd0-C)QOgDqqS0|&-Z z^eKV_5fVSC!B12H13ILOkO%`GR0mHT6dnQKiS*%vCov3skTMN}=Mb$Xej+@6!U01w zLXnsp$jlz<2!AAnz-SPJ#N(LPf3d%ZU>J_#$%+JF5DV$UAQ8lc4MUScG0;#Rj|btY zPd6|eNE1(J*l@!jDU^ZM0x3`j@&V&9f`n(fj@juNa{~*cw)qWbkLos zdF{2=XcU?VZ4CrKAEtkvr>%++7)H8qFm3RX+-S?t!oVOFqR_W4X*#4Fj6oL28ij|! zPt+aR!O%j&2M*eLFlZ~JhLE%*FmNDKT@CGz$X22R024gVTWv0jV*?d^sLPUEm1^&Na=QmJK-~P5eY^2nkQv2#J(wd1#SP zLJVQyLkj~>S{|5g^$`pXR38Z<04*~$h)7dI7#KKcNW|^7A&rQV&@56;b}u5O$0-} z2t!(yxlzzUA|$N{&AnS4nitv=1qKw+n*;SnQWzQIbig10+!&^#*TIdWXaU$XcVvO+ zbYze7h!a7F)bNB4&J<$dhK5ohahfJA6@H>F$OvwfmZ=;mIs6d|Nx^}1(Dx9A`onYs z(=x+=B~WtQtmw@IrDD$5%RjME2W)hB)EaI?M=Q}Y4j-i1y_AqF{E-Me(GD<30XFr) zp>8p#K}Ap<6cY7M!qwE8Fp(m}hyAK4*mG$VY-m!EvW z5KqYFi3f!;o>a@5G7p1rR3V-&$<}6utX2KSbLakdCfeVY@h+OhgXXazv&KBZ8xV8Z zswt^zQj!V=N^xH)?y=ik_PGh`%&6a@A$tM1^(C*l3n2V9^^) zlT*{=<>JXn)B=X~K-$MpS=0{IL=S`~-1G*E_Cagl8Aq|O+hS-vdV&y=o)@$^b;BQh z46)E+@Tc7yM_~{PHauwuKvIYTo0bH*AS67+TRco5s^4G2nHWi z0pN=0NEVl#+wG=*ghF_lDdHj|4ctuuHA4Ex3t@1gX?LQzASBX63J3{9W5K{plcG`3 zVGs)`z#p+ta#|hOXaQ6lKD=Q*hbI^oj84erre?JwnUOnb8J_hGtHUGa^oT9bcP&9& zeN<+ND)nx!!&UOndv!B;*K9MUX+|}jf~B3-mAo^|a#^;ciu1G?xZVuj*^J#>i|s82 z_7;OT*AsWvlTWVI9(D?kkLzz=t=wMEzSQc%IswsLd{q0`pF zdpBD5_iIN>nWLrjS|-LQ`bv>&wd8}{g$MiP2m2)ea4}#>I`t3NGY{9(57$$7w=#FP z(tAZ0RCKA^DRVnzYJ_x+kYOupKiiCM<(Nfq%HGqJ(EY8%c_(>mJ$!y8eQQ1PbSDf| z!`f;@@5t@(mp>F($^vbAL=zpE3y4)N@*;!WI6k8tol=8@N8~n%HlVO1OL zg4lKOj9ICIOlG4k;Wm_lx`abn^3QFhEVr7$o6X>p{oJ$T;(J$e@9yUxZe>2cyZrIp zmG`bM-CE6nWo~Yj-#u==bFzB1UV`|=ZvulaxBj$e?N3>If5W-{-=?norL^`fnJznT z&8ZA2s(D*B=F3{GDF_a~Gx0~+!(G{p{;n*6bzbd@zN3G+eDiIDFYyW!b*8k)j z{Jp&Xz|Ywfj4a*5mg;o!A@9@zNp@aAvW?XP;*f78?cZQsE^^d0`QzQV4;B z2@Ip}?&hIeD?sH12pCLAxV3PrRd~2xf4IMVXS4F|wH8Qtf2Fp3^?PqLenb|^Dty{s zdcj)#nY8c`#bC3_o^X1*BwPsiCbhMfS14H0piorKq z)pu^JbuqZV{Tp841$W{3K>joF_MZcT)oQhyk-%BoWMovx_eoR7E~*&tEc-$(};q>=Gjmjbx9%=L_a;JYtE@ zXi_{)@$|)T0gkRe5{E%7cv4iuPo#@4gkXr?4GDvc=ugDLNyLB{9lm?IQBGPOxKUIX zRD}A&4V(4^l!0c7kf;=VkQ72vgF~?4i7LRLU^q&v15eZuHVjIFvcVHJtv+>7PZ(qe z8xd*8rfDKN@`a6)PN5oArgek^hcMd1Swp2T=7XEb>gBtI2!NU*3fvgB!bV8iXhJ5`COu-{!(>Dj`9tgCA{ZRvakzYFkTX2Q9p(_hhx~N`5m5l9_QW75{6z6^ z25C8AXoJA+27rTBhm@X4q#FhWz#&ut1_5YAXv;7;kkgG5jb4XSLraT{&>L|UkOGdv zM&Cx415VJEr&%B{5=06(BZ!VD^n4*TTn-42+X&7z{BdVS3P={EMMV$>ZkjbxpasJr zc+zB%0t^Bm7DoR_4gR!(FmU4#!Xq6N66qrV3V_^k6y>L;dwyy4QEO`cLpvZH)adIG z@v~b^*eDMSa)eEDM>&xfZ3HwLih*FL7m`94WCsVW0z%S65C(?+L{f-Iqr(UOG$gGT zHMBLTCyIn}!V{UopB5Dv!HwLJI1P_>wif)gsea>C~&IIS8St^`R*#~-i zfWcz!ATZeF4o5xqsNZL|IaL#*);YP~s!2sdDYv%dvygQS=Zzt|89!a>X|i6FMh;Jx zZZ2fgg=_||%`#eiFthZw)ZOII*GBA1()k6cB|WYWkIuRIlSZCIB^XzXN@t{#(-V`j zQSsQggm5paj|$S7(x!t0t%O^O)9J(w8MQW;>Efcy{14rbp)#4BKi_l&rSPYnx4$Vr`dRX=WgFn2x z^5Na(yPF_kCuQJH(cTD?okR%+Z^e$t?kE1IhvoZQaggw>cKo0kI#}`^EV>B*Q$@7A z#didOoe|@LP@fiP!XtBD;f!TuN;@J|ilnonlLUiD74u_i-3|@;m;UqgSm;6eK!CNWYW@;W7{Oq{&{B|7}{P?8wU}xdMPT~G;@zz$6 z`BJ)hb9;$mu(|T6@93ZVfWfU_vDf}oy!o5Cn|~19{O?pZs_Bo&TGA=l@m|pP2QY@Vvh( zvV-irH!$xjh9aA#{57&`?9yhr1Ps1=r3LyuZm+^_mFvLZR(Tm1Jh=9YfouQV+x{)9 z{nhZsZ-zF0)3^Sc{*6CpUHij`hrwWTW>S@4FgTeBXF$T+#lm(m4-5taQxXOSe{gpn z0to|yADwPf5(WlCz~E&4yo;}__HQ}szaDD+a-jM1zLlT$G=9?C_%XZjGzJ8K*C3j%r|d0LBeECc)$McQIlZsM!A)VZSB2xdG(jQ z%Rge3KI<*LxV-Yy-u17h{fC5vRraq>2m^x?b_c~^O2W_1wq9wQ!Qj0Q?{0i>ck^bm zpxOM{<-`BlTl?-n^^3lx&-?1%>tFrZrQ<)0`mZS!4q))qj1>%Ai$#FJ0ASef9n>FP zU+t3c{Z5@?@Xb~Y7<{;tHRT_&*1zHuK4a&e_h+9Eu79OVocT>*F!1E8i_QkulHpn+ z2n=qf{8x%0VDRlm?D=Vd(E`QbcFuX)jNadleR8Mv$=UKjBh}exjjz7nU;E}@_<*m8 z4JyNZE1&eWzf?_5s-|RQ6NzcLYF0@!r}eu$QJ0-;Oy~1A$_tH!L}MXYO2!+xIN5o) znr-IOyNkrLT}hL#j*F30JlrT{8Ve!taJv{T#k^!eV3&)?>0~w`APhXT{Ui3q_t>@u z+f*6UWk!wZVO3~A<`|M1`hPWy_`{802n;tpitsoD zPZ+piCvoU#Dynp z{Dgs<{zL#;ep*w+#ZUOd2L=%_j>O;tqX!ISa1_B15xocz;lKz3J}4)CA~1~t8|{oC z5l$}c*a(K`G%yT3U(^jlf6^AlI0iXlsDwml@n9oOYT!wWhpcJU5C#5dD|o_9YDM3i zXU-Z7!q60GHIWfI0CIr?HpXEXE#ZXH#8CzqIB2Q5WrG9JVc?(v;0XtQqEayM!O)P7 z0@1s0loXd)r3nLBq>oH7{6f|669LeF=)5-^2#nHVpoVtFa1bdVStN*HWOO+-h3GV2 zS_T+Y3W>uL4%jqDM1jH2ZtieU1Ain72RzXlNTKUb8TW46P=7s3#0!!A6cW zQv_hV5sJ_+cUUyY6%KM?j}G$0LoX%ba7P3qA`GzUeGCy10S0A8-$2!1zV1MSpjl{O zln}vSkQa5+=A|8#DJC&EL>mVMLxFG<(Mk0fDnkHd*A0n7G(jA~*}+-E4Tp~P5fKK( zfQ^s{0|S4Qr+WxJ(`+{5+~I5@A`YR<^KjBG>f#@VOpUm}f z`63QqJS32^g)>}#2<+ILvg>y6EZ79W<|)Rmto)`6_XX$)iWyTn0aP`Y|-b^g{)e3 z;Q@Q$9?x3kSu0#~o^MDC4e{YQKVR+;PMi2r_3)UStScb^vK`hujf{RQPL#W{Qw_nt-%%$3|(pO#y$zf=$z>wWTN5st@-TK*G?6 zZ#F3me|)$8aHl|ExS4(T2qe7BkZ@wR6ndL{JGlb;_S(XO{mSDTE3g5;AKzH{_;lsL zZt1~p_T$r+HrZ+9e9>=6I@Bvs%R?addg4bP9RP#h+Dvu|_C`ooa?O=oN@hY> z-v}Fz8osmb#Qm)VvlN^QMZL9=xV0WWAYZ(jt6>cz^?3X$cj*a#zA7>ogoYF_SU77J zO&h_$LWz8ILLrjK1ybdh!fNtneDOtvAug17CuTwuiBs{ML#CcrYHVcBcFnBUG)uPm z@S_-tt(5g9nGg;=+)4n0-`&rDe7k z>Mx}mzm{!(CEEB6d-KnFkN?2h`VD*WQ?Yx8!Y}~1D~iEXQdfH-dw-<$NNw)S=ZR|Mj4FZEJu_*KsgXg^fU`EkuBC}a4 z9<{1(U1`2`W%cfrHHLu+4AZILR%K-&zu$ZCUwgLylDrPR_Upm*U$fWAgmCZ1pY>h) zgTQk|q{>Wa(i7^J6T+Erww}(_(^-)4&5b%p7jK1n={V8a%XXR%-;Kb#hu>OCHy@z+)*Olk_2khD7B$7yl$_YRL zDC9y$Arw%^1)u;FG732Zg$#lK2rz;oDUzZRl_<%I?QGdrrbNk-lbqV_wma=~_c*(I zW_PEjXQz$*yx#>&wCtU;_dLFH-+ec|Q1#xIzpBF2%f}|ZLQ&rkzVo+&DW4hp(r47S zg;kLUzZ$Q)nl+}?=knr*G zE|Bm*vmYcp-`OzVQ7_MgPlf})V0k8dKGJ(-BP>Yx+Q!HW*H^C|AJbs)^#1ZVU>F#@ z6 z4sWci)Gj|{n|{hs6pYPoKAP1G6252gbFnL5@}#ADIPY@{Dk|$d**O)Z<^I|h?axBi zw6*tz`v$|k{gXpO;l6OVe`IE$8)j{4I5OH7?&_KB?EoH!diq11ouOc0axfGbY7f-b zt3Utk^?Uv8-ja$yO|^0T>-yD~^^0H7DGWSfF6+y!9n2{2)MwTh(#qoOxp5Y^!K(fu z$S04)f9f9fd1g89qs0A2JBHMI@!f=+n&Vuq2;5_&8NIL~K`!@x2qDftsS((TraVrB z04)F&Y9WQOG}1i%(PyM_i-ab&kfb60-amv#D4Nk;Ij-;nFBdXw z@xVERoU=zxN|Z%k&L<{>E>6D2#>T3uDvmS>iU%3HoR{dMhI4oVp(D}no;`RZ*lKAW zK6^wc6N`>CB{9iCrJ@l$UDOb27DiCZ#($PHW4KuCsY(uIUrat#91amAr2_ZT#_X;Z{DM`{Ri;F}wqYkBJ+Nn{7=!J(cp_eX5TtVtDz3B`( zy+vnq7_4aqTZYb>sk3J5Y&jHzJtxIokXKMvSnPGBy49C6Emo$Vv0zKh1|T15W=05J zM$Ljsuc(nHBu(MP2}5H7QAR?N+BnpAV(}22Thyq<8<|7c3dyz%;8|a~*p18^X#k!D5|A+K&YmYU9)J*RKY3Gy5MquYffxdS z8AEnBHH1$xku*?~SAi^tOd9@CAOu2YLk7i!2!jMGGKbhyU=M1PB_cIEV}U1saV0~8 zp-E6`B&Z?87C%UY7y^TmkBH*|f?+s9(aC|qoMhl}B@+uTLXnG*aEw>pRWk@>0UWi%xG){nUaz$y43wDfW44LY|sVPi3p8 zyxCJ!?eTSZbJE?ZDee^YU2ac`9RTe2q zCk>VfHJa2AYHX5AcnH@>+0$Ny?8?|q3Pwk;3b1Hfmmo55~E8< znqGU^ZDrG~ zrQ1WbSLfTGyf{g@wA8UN=+lsJA^4M8!QepAaTfG)6*^LFV`$~YM+Y^ zoEWYF01vnMT%FtI$tR4}Q`Yh!XT^Y{IB3sruw+$P(+aK0nf7G2Dy}ShnkPB8vZA&F z9M{kswkFrxT@8-5y~O-hx2H1KQ&w0|>MhLk7Gwc~>r32!1cR5_pFTeZ45nOJ?a`hF z_si4ZJ0FTxFu1L;!#8lRg2D4|#Lm8&w)93)T9m8ffv@^w(pizZL@wp8V?3iLXcj<${DiJ*Lp_(ZiztijsWzSs3+4 zm9*cK2Kvf#U)QQIl(E*f!9deoPupBi z>s(LE&RFNpSVxo3*X*kbxA^C~>%%QR%6xa-)>td`z02Lv?+H^L*d2L5)nhj=M!xv? z?qmDQtKq@b;nBg+K;O{Dr{-S2XX>j*!q3NzycoCe>Zg`(r@JdDrTNvA>ayx!O{oMJ$ZF|nsRD3JlEA4yZPO?jrZfHzZ^gQ zV%+HSabqvWOn*6c`@`Ix2b0q(@-i!`3w<5h)8N&i&b6TqN;ufG*59!^)w4U*`{3^6 z)g8*z)t%|9J2NLI`zU?kotgD#51r_ia%rLE#@^uGOvm0_@3rmG3-iqz{dJMm zv-*iA^{rcR+07u~*xZ(*Ie~<^XS24y;n;fBlkHKbSDyMSsowgK-`}W8U7)_TFElt8 z3NM7ZM*_W*;qm$K_*{5&x-B%+)*1?Tb%(qA+B*8$T7%(U_|8yseWUHNcAX}_s3=qhb<oMaHE2u3!c2U9=3V4H<2d*73+I~?VGLPnbcP2te zBy;rP@gpSusUgClgCD%XiyU6Y&PqYdl{jbVSwY!0n4rVWgNqJAE>g@k5-k@M6n!+= zPSQjlC*nuaAS+=YqTq*pg)5xUMKV|kkpMy%oWMtijFl_|R_rc3a9v{u(#1AFPA^1I zYCK>oav>x#I`rY`f=42~BBUvd@DMtph6EFCdtB+{6#=nJ<^IRmNrpX!4y(p3li6ds zutkVD^FU(JC}fBxR^*QaxugL_6M$&SqN7PHn)sn9DZywKO2`~S(!}I$($?W4VxAHb zjXJ$mXG+moG7QfAL}!sMxlET*p>tKnCztC}%I)dpc}3NQCB7tAmimL7R=d$eL^Yps z4TTt;Fc5NTGDHZWgXC}w8bu|d&lnkktR16}fgop?%q?|vqELgmdrlzaVk;v;hb53X zK@LMENF)=QFrZn0E6ybx$%y{l#7c49XYC{kR=lgo6&w?}ptHm2V$ll=3qb{3?xUf_ zrx>z183k(cNo;gD5vb8&|7)*iMd+i$8nJdPA`*IKDQQNR5{3luj87843JJr<8-!dK zNX9EfO4LZ04Tb=NCOPo(VT;1BlVzjI>j-5shnOXV=!gd-;tg|I2qdJz%%DjZap@&P zSq>P4kmyH8ft)CKW=={=ONovj+!eV%Vx)?Nj%p0=}!xTaAkjx>=2ak|N zM}gUpUWlEBP&Pk=zN`pytIdjN2*h0J_SXqdTff`-7rG|Jp2&{!C zTM-)>%EVj9;1Hh%EH5^#;&gPo}X;Hy4?NX<^bjDa@YP$3+2hv zqc2^V`^v+skDVDiJKwR;>z@r457uT;_GcQdZFGRcDJrGOhP}yp?T=$;gvvAK+RIMQ zHQ(49xUn;OX|a80y8F`Vz=fHn3zIb$CaWotc8|Sp-!gO4;GZ%3#_UxiNo65tVZfH{ zGpCi9lXEOd8CGYSBRSoXl98NIkeOeZTT)+H-(6YLWlgCE2`9JhnhF}-`94p6nb(u= zFD~#G=7g&AL%y7u*5b8(-`+$6Wq+dSrR%dVU7y>ZXgxX6dFA-fmE-CI;n#O3x2Fc~ z-<^5l;>z`n(b>MP(%??a=J!C7akH=57hX5czX~3Xouj-KGynS0`8Q1)A0+R5Kk59> zo%?@dIQR4T(|;Aa^P^)Ye-wNEZ=Lu4z3bvX#BcxL$ntw}tKZbEf1um^uI}vL=r8<3 z?D6-TgUju{X3B6NI2>#r4pIjr{hia@hh=@VZ?3CzWw`I`#^h{Q_duHhjqf8KP)UI`r&7ad>mRoseVlwNPJBDacOi8VX$lM-K5pqrloh{M?Y`ryk9V| zz+gebz~G>Idfp5e9t<=L1e!p?1I_gy;hK`NV09%(SPC%sunf0?gzsJI1qR={+;d^2 z_vXcU%46r}zxepxh2^Q$;gJ*bGa%vY$>%;9dFvB1FCQKMeC*^Gk1pLx3Y--f47Lo` z)DO0{fP{g;Cq}y{f`oy=z*ms))s1lt22VbDaUIkO430bT-Pnz9B}{)=H~G1Qu@_>; zUQC?+lJVq+*@HKuFu1y~s>5H4hnb#MLBbja?zy-+1Pneg(|2N~|G6vc&t2Jg?&8w@ zCnn~)f&(*;#LvB&(0emw=(CQY=VKP$%ImrU3|2_Ew7$dN2n-%?Z|-eu=xrq1T7khA zmpUHV9RLPjoNrMucncUDxUt)NZL{~nO8>PJ;R}(DjlS9oXHJD?FUC#WOvr9d%n8J0 z2Vy;K$MRZrh3%i7efCpZuX}v$p1fjDzSonT=PfGqcFlRaBPA`PC9Pwj$rJS>o8I1K zZ_i?2cquTn=<8qcwGOv+4k$d_HPqJG*A@)=C`fpYCEk=d2{>cWqzR+${&(Pwpb>67)Zh?7yuv^*Q6c_O13_sJMv)legjyJJ z0?{jSQ6n@LDT0y`n1OtdAg5O{Au&!YjxJ0%NI2U#X*i)d(qQO?NB~1lCJs5yNQR7% z8dr>$iQ+P)x$a2NDA9#by0C>o0iJM}h%1rMB{K$*2FJFXi)a!{eyD}PISI&+@ktsOavNixU`3Zo zMI&^?B-(@*q8ZH)qDvHn5h08OLX&J61-!gKAZCNO2vMU(jt+#7s~fKrc*e^RV9}V-CzpFsgBS}WL2=GYiBYjDh${dCx0q8) zQ`QA@yut7ifOzS#pM~&%4km;aWjvD%A!y1FBsYmjN_e9dLL$jyPE(uY!)N0#2ssyk zQVc<5ujMZ~yuK#LpgtGvb6xi z@*gE^42XGP6f!4xKnMTSQ67fSAn}62qO6>}s_NSGoDyAfp*5@8oYP<^Xg8Gf8mdP0 z)uXz+W}DNUGR`KfWh)~_p#HXl&dQ}l&7!EKYVKRvE3p0@bE*&`>wBd@6QCDJUs%U z{>sBE6b%WtZ-y%=VZVE>EuS<%!q1!^xpurmgTW1xZN-zpGBEI5hj*@{{B)!P7`!vq z6zQ$mnF?K)Zd3rcvw&jj+c(cXZEA=ZYo@G~!wzqsy{OHa+dS}bz0M#9GNZ2!Cg~fv%A2jzD}55;LXcb->5H15BYL|!85HT zAYsarXNT1P3tXRj;_T=`R}(P!=J^?c!Pj@EqcE5<6`qM%|JJdk+X=I;sjt7zzH)5l z75&_+y7|}Q=3djyzaBgP#*u|L6C!V=uH6Qv#RCNw-#)VVPU6aY){PI$8{djud;gx} z-}%hmPmb>Y{XO^oC-csS?un;zi-H1x7y5gmFnD{sf1y7F0G1y`K07xA1{N5+JwI|r zm9gXFL%`tCuKwlm@ul&}k?v8!!1aA+;*Nhi=JYoKDd1s!>aXKY|19qKcjA`bNmzV4Vc`vsaKh{>fZ?N4 zU(-#0%`pA4e(I~1>6aZdFUu#NqtG{sgrgsU77VN&3u}*v={khL#^u}2)!XUo?;1eD zi>hRWpDJuv6&Ng~&DS{C5)dRj5NHMoH&y$aeAU&Z6(C`GCcHJ)1^|9|clh4rZeTFw z-lZOp@Xll#<-$rI!0*Dsz=g=rg~hQ8D{~K?j6ArzG&nFFSo_jv=3o8P#1|8$zNA}x z<1>qI=adfSW>tZNfx&YF!I4}`C6jA?wo28O2;3|_evyZ4j$wcCkP zUyL7nDR%Tl{nQurJ0B*V{NWuKtT1p#jbFpS?dnnRQ2WKzFy*1$@rQONfWhNEZOZqv)29I|(cliCi4K={v z?cwI_;YNjoPxb?YFU<#@K0l&fz#Ac8@QuB`YujTt&Mn@!aQwpQy$ctw>L#Al1x|p3 z<8oROassh=t)Izh`E*Xpr{0T-c zZ+S;fy8E}hLtEbPrh>r(Yrf8DPuG&KW5O5c_citU>f1}I8k0`Fr{8`%Ywxye?JKdB zGw#Ou%!VmrSw9$9m)`~kPDrn`Wq9453TJx$u|#{k-WI1b9*t3V_xJ?$2Ui8jz{nBK zjT1(WZQg>_S)`p45R7(MsGknvq=8W5LIYta41{O7^x#ua5P(F`F9a`035o(LVK77) z6Crh7y7N6@2nM&3u;{~(5=RJW(2QQQXmX%(+#=yv;y@xj&MJf)Ipiym1T{7T z{!t?V$wV}Yhy|&) zj63&B2)8l{Sp|qFD8NXmC~7b#>1`Q0N50NgX~<~Q zWw-0{dgAj3;tPi23x{=uLx}|gru^=lir&hG{@mgQYf6F9mTs~po2^cx*_NnRKcfW{ zwb~p&PI*eqi^i;QtPzBqs5e?|PP-%7MzJSZY)+cg29p(iU?w=1i!0+|6bza7O;CU< zH4TK0ZMr+d>n$%SEz2(`NO!wY5T8bq1@KE;EwueGxt4LH_?LYF^&nyiqEAvdv#^Xi~4lFM(hrtlJtUHEmgW}?17F4b7oj>4&6&`TK za*LeMGCD$(m6d@IU{Hf#xaH#(Lqek_nh?t*uf*ufoGv1w3?rUlv;nChK*B?0sCJS@ z@C1^rC~6|7Nf(<${J?{Ac=x93ZV!wFIrD&!8Xi{ygXNVj$-v`~QJ{|%O^7ZC24#VE zxP@dIWm?p})JRMG@ZA`Pl7N=4B5Wa1&}PnVFj-VFJM@-hOH!sSIm?`qXG$$HfrQ-^ zhAj1M;l#X_`23E<;y!&zUt-x%V(E~+Vp3l|sjr+e`KC?2DRcFd**{~U)XwPr)B4I$ zL*=NsYSiW%qnN5jjg=!t?|`{{&|21OEAB}4hHUvwDFt=O`L(XRs+63vq>MtdGsB+j zPI9@EQc|5sDHa=3%_ONetB(-_hZu;=5@TdU(fMaqWqNtffnnYlC$lPytOdPNLu?+P zpf($7eIXWzjZG6B3`Iypnj)kbt%)d;iD%M4B1s~_mYpVVV#p!!L*^*Zq*oBNgeDC_ z3knQAJz95Pr1jKj!y}tL*Ec$z zJR1fHQyx1zq!mEm?9=DRF0OP@U|za17cGyR8rh!+Jgu1FtIM4f?WdJ{uCI4Jd3spN zV`oOc^6>IwXGVa*`!fv`4F-Gm#{Cp-(a-FU+&IxgQBQ*_b3&E5bDfo^=Ue7_nl7#O z@63iHWBrkV<_pse7bbmR;QZ$4#F?k{4NC^!l%;CiTH0eR3W9+xSyg6No+C9oDK*<< zOV*ogY3?jfVQF@LX?9U{a#nd}er;M#z1`j9%njPwc1`XIw>#J4Db=0^=LgCQ0;O(X zaJV*4knr9_V-yCzczyoL@xiCgPoJFV-kIpVurl=I#fbJZM$7Uv*yn9Y9Qy3BtslnE zzGj|(EphhM*qK*!bFTu46XssCMcznWdQ%s96C@1Ow4C^E!tRgb&i&1iE5A&*_AC9h zU&UVe#gU8u7<=&__1oXdT6#IX_eySlb6=qS%tWsMVEF?`3;kW~4Xt2ckTB?XeY8)? z_B=?q9}K)QJg_-FxX_PPpF9l)29IXDcz^fyDXCosIY|Y-hy!^Fic7ef9US5BEf8)gX#Kn!pdpA}D22%o44;MtfdTjfL zG21^l21JeA0txHpUQ_>NF#UDi%-8kPU(;(y*f6DjMB1P|5C-4MXPyP_f_^D?gkOqL zO{GTp2nL&$Z>O%ktNl;II|)ng7?$6OTYNh`bTv1(<`4-N)eg3_w)q-B!gIaBC=#wN ztqfMHXTlm1ZU6~`fkDDx;Q5Za`Hp&!@X5(mc_942?&#y^=2m-y3JFI>9z3}S5 zTDQ%0wM-7o=1<&=+5TR_%B{HZ&&7?sq?`O=!rV9FPyVpP+pEFgN-*$vuvvXJzoB-f zJFqqs+?(v$o$TJ7>H!IBFt~NBH+Xet`ud46`CK$GSf|0@`0gj-d!LG(eKle6ox5Rh zb#Zk^P2J&#qP3^Nz~F^;pZ2-v;O>ZjccfbTILD}h!RsA2PIg_}8oqIEiE?50_{Q-w zg`3aEj^B*UXaotz=L8ZxZO3w2?#XHSOkUe(@`9ht?>G{9!EpZlqx;`>w@iCN5qH;$ z+Z%At-d{3#!8?1|J#oQ3cHTXD*3-M@8QcZ~qvPpV@U%{O+Gi8be9L(Hef{cJ4K?!) z|E$S3qbnQIm-Z$WcBqnFuXk7KGph8iB11~PDJk2Q!BSU;`)x zy>Lh21}_J;+*U=0CL|0(b@9}$o}z$0@6^0a)0E2%y_m~ghf5D=gc=^_0%fVyqhXEU z!3=^NAT*_k8cwhhbJ8P8^x?(7C~LVK{%R3T7$FQH)F6`N9HNF~2r#4_O%;iZnnR0P z4j#@h)EG6k$l(PK;}%1#gh2sYh@j+v5S|)Maf>(Ur74$1NfkmO37{ZZ(S*lml!u}N ziOxAbrA8Aq(WDEKuBftP!Vu6wf|?9a{6p}lAw)tg;iyrDq1Ki~O*KBzXK54&)<{;6 z;UE_^Sz;lPuzZXib9l8d8sQegP z6WG$kil#6`7X_|6+%u>dI7CEl+_7$%1t zNCuMRu_dl_At3}poUn_~6whLUT>KzG9&NI?G^J*w1SPt3VJJ?h@sAU^w-GLCPKHA0 zXnCnXaswj}O*}JR_J%~!7D0`UJF7Is9A!4Gj2%r3$%NaUmV)|`VWtZm(U(mkYLbSi z(G(%dOg{cmlN^NTRl&5Kj5kOO#R-}uFLMZqrZA!g0Vee(yTRr*Bo!v4R2s5d(!7KA zvQho!SK^=hZNjSuiEkblUp+9s@H_L?S97XIs$0g3syglNa!azu;>@%<-4vrWHPMuk zXi73#0LGLgv&CU|q$IoCDXE#su1uRV-Qu9Q9m$y#vpt=nB=$73J=JV;VP!Ns3`PZC zDJF{}B{jp9o((=Xn1RWe`Guvqo+4**y4{&#GTW81*=e?=SnV#O1sx~Fs1=of&1JH> z63r=Qdm5qb&NPH3i&J@4Ul&x9#@LxamXal4qJ)shjhvaJ$@J38-I}#y{@H{A{Mc74 zx2UnoYz8(Go1cp~D=tFbwYajQhC^9yHVHL6Zef7acw?DZ5eW?u0=KeEsNo7mUK%7E z-6x`qt+s|Akv0fL=!iLLQj-`%AQ^H)f)1`kll9y(64^qGlx$(BWgs$#%(iS85kd@&L9xM@D0DDHDDx(7CO8qd zG*J*a+X)H1!m}G?BVmq2JWCERGNlmum?MF~3StkF5)ybE(u)ZjRdx-`XamY~GYp4ht zYsRdFEjEiI%a-6yJPHgB6x)HpU|`Bvvxfru1qn+H3>GAOVWtTftd;uvB5nKg^&nx& z{=E7~@a{z8<&{prFn8UHE1^Mu8A$lC)5Dk7yLM-qsjsdamZz^Ms0;v>`pMHnl$Wl| z?9ViwoeMsGX5_06FGYHNC&Cpc!sTIq+FV;+BveQN13$ArdgDaz-c(bdGCNR}7pn4v zdepdaX~H%VDhgGmMLP4dLR;>IXA3*lT(wgsZ`fKGB+0yd0 zul~6Uib^UfeL1=L$!S@xjQr%R5=&~aHN$7hZgS=YQ#>6>?R%y)uO}s;YlZ?I1_olVD*vwDNjCv*`j zVN(5WmO{J}>L;>b0KoF>7hrr$!^VPv?|K@%_D%ijdxq8bbSv-1FW)wC_9lUs?Q7wdy{XQ%p|*!k4Bou7@WAfW^}X5arxzdGTROKicXoMkY5I8k>X+`B z`P!#Ozwqg?FMMXum zpsyzA^L5l#b@(gC+Z)zKg5zzC<84j5Gu^v0JtxL{=XyeOJze`NqnB3(F0Tx(4tMw` zo>Kn_(f_o*=Luc+6LI~|vKSS0bJa!uqC9_XS*`q<*Fc~V7(CulKhaTlWw~dfwR*Lu z{_1k)#ifp?FOEEPvWN1_<>_bco4Ij%=*HQxhfmKvd|~t9`_5iCdw%cCmBg{fb(2rU zXEw!UH5)vwmcn3MUaPSrq%ZFLG+@{hJXX+g&*F<9;m=(9&^>d-J%8Oe|B!p}5l`eH z&%$-v%>ADE`#t@ep1$Lro;6R`vb%dN@%;A^&wbah{<5xWR#!P?^G#SPM$D!C#$xpZ zI5DqTpIw*et}vu~O|C+HQf{0%EzX#fnUkNFUlbdknBq$H`Fvc7fGb?qAsFt^yyx5~M^k3YmnE zV2d&i$w3T7hx!wr_yng2=MbsVD`9BndtSLN<5IO??SPnFiU@P9J5yDUth`Ev_gC`k+Ld-Tz7`h-#AarCn z(#3EzT?H@65H)&fQbXbpA(==lYHl;d#l_4p3iLvFLlbje4qQaIg%FyW4Zv#wIrABv zaOP01P+};Vhyrr?%FdQU=jyhrNnoHG$Cl(3N#Dm5`q#D9-pG49BH;9K{LuT;SdfPGOr-IAlZj(QQjFCApS8&f?INf*Sso3iXr<` z5=Mfi*a{((_YfGuK``i`i4*XZyt2eOge^pqsgT(~sD)BF!;5m1a43w(MNyZikJp)i ziw37B(N(F-2p9|cGyJnDpZl-IcMlBj9vI&{&{MyApuc@!zJ1{Q{C`a;9Z1R#+Oujc zsb%Kme3LWJmXdFC6`GRr6Ky$(wk)$V%i_#1*;1{JbXR&_R$ggpW|7^MZ%rvs#Z^eL zq!dWO%9NDnNaeBxsLn80QcTtqKrFc0?8vkx=a`(iMn|qW$zx8+Gdr_&<}`yf4LEIf zWEgE3CP$VvIoD{<(pfTe7PrBcVYE{+4fgCrTXv#7mke_XstQV~lhQnTi%V~ET5U<{ zQ{37cGHax!@-AXZSq0Wn9%QjtESWrLl6@j->_&P~mL?1vn0MFQ++6PTY!8}jY?cfL z5AZNi6Ilgt0#T$%&3aJF{-GB}y4dsbLV#y0O0OuxKqMI@ti%wCN(f5AB*5#mq@;xO zbJ6tW|PH6u{vDVq;xZT$&saVl1RgQ3Ond?doH(1?|S7E^|q@xwJ=$skFyh+G8y4G8T52iaN|i z?dF0OQ+|svuhEoKXUwWLxGRilC8o5Zl&oT>o0mX_#oPE|2Xq6n}aQ#g}2Ew3Rr+ zHSUdJ|73fSl(`O7PK;Dvm~XkU*|pJEr4^uN;fW#NwYBcEvn?9~)sul@>ixx*jiK88 z`CzBdGui5WWV2Vw{#@&&g;tpDp_)jj^y*6M)2Dl-eq^&}f3Ag^f~)J>{m)#SIX4>! z*Lxye<>7`R>Yb75P-W)Mc;mI@;Emmp8@r=(JvE_*vXI|HQ9lqp64;w)TJEXX8>?OJ zt=j7=+v_W7ZD_F$TyYLwNv)rERt{N;Lsn0-Ew?r)yWE~$XiLeqCaEXq?u^XbJP#9Q zOG?YgDRO0%*t09_`Hj|Glw0jN!KC0GuM2l}QEqObw=h3YT@vsWg#)GG#=L+xEl{2w zuFu;YslLA1d403%>5F4eUz~XH%H-Ze>)u3gZ=z$duXQ}wG}hh{>F-(}>KkqA8V&Z0 z2K$oczi!z6VZ!X|v9qto&%PQrtG*$u2L^9_*LLpb#uMLj%)RUxf2yS|(%LdT-8VYY zH56>_8|ey2%*{>vNVl#PkLlQTmPY|TEfHAi{jk-e9nyZZbiXP$fH>|^JSKYD)a!dm3Q+S2;` z0;P2PsrVD$kKYE6zZX&a*fWh%gZzoTGEhBVIV6Y(JwmOA` zgSCyoU>0>e*f8JIOi{m(9BMp1(mK%W(*W>c(O_@~Fqm>-aqz;@$OF5RH}6}0aChOs z-Nkc@Gpl10y)zFTjl88W@Yol0i*GtQ?*{`@N((BxYHP;>4Zz@$)+Q+{y@C6?n{N)Z zoM~?W34?)mr#p9NK-z)DuE4oa;GvGD^Mh+iCw~yX_l=IhpFbDAaeDZxpFIv3zHw&w+4~nBKDYd(hfaNQ|LmhDPM_I-NI&spLPk?u zW>Z3T03;lr*P33^Iaw53&JT3twZ!DNe+DF67>Zf>+>y&aNVxjr(B=8}-LuuY%W ztjny?rFj!wMe4T%Q#?jzmfn_{XikdNnUYe{Gcq$lH)-i^zu(WBGWdk+2yd@I1qg=s zXijV1d^rYqN0v8YIq#|EQi}<_ygSPoj}A?)uz1rjwF1N3@@YbXc#+_rCOlo}2vSl{ z74Lv30Z8b`4TC5gEjULF1^iAIUR zp$mnmz6^&U(-c?Kgr-IUqjsV8nF5r#mlPEhap%BFb~}dnBo|Y z_(YBnO+uqd7ZQ4zBH6c)_z@EsFGBJ}2w?~zmoA7dSt%jp)ab;;C#c70i8j48(~wfC zb2sSnx(y}cwlDp6>w5=g%Co;QF8xJf<)S`(U4P|6(_07D+XuSmeifV1V#ug>Wch9G zDpOje#qG0X)acWy6J1q$SA{v%YfUXNC4+Jc9qzKEtV&0w&z$aa=F}(WHQKZ5t(kQc ziz>Ayx8I)WcNf&B=hawT#Rf+%2o}(bxiO{0oK|j1t1_hdtQj?q%owN#&4VsKX)Gb+_zf5@saWczj5^@%wRhTH~g zesfZBtI5-3F9_sRb-GGgO?gemoLW=1-;z^n&#AU#`ONN8b6SzXRbWiYF(qXsrR6$Y znE-E#J=tn^3IL{%7^#vK8-Us7EsL}zb0Nk{7mLD7qDB)TJcKP0U?IRy<`Xp}@DL15 z^iiY9Ou~qhXpIR(FI`YHB5)A~iOemw5P2eD?Qn|~5^54=8;~$v_>{5W898ag;0Fm! zb}~DsrKN>z#Sf<{`jRT!8xYIhAR<<5Fnme~$rC?F;Hfc@xTMOYp$v+KNSj_Hk_pOU zi@qdJ6d3f$0f+GPQVW9`q>a_0H<~lEa&z-bEJ>M(jvRfe*OJppX_`JR|0Qv=Fh8qeL3?8kW zX)6g;W$%nPpN@3h*c-dCHxX(q3)SY&byv=HRcs75f`ONN%9ne*V~zQtigb#r=bUN! znVi64nt#$z)Whx9n&UTRlsnu-$!?D`HH+)6Gda~_wexC%DJm(;EA*OOdG@SwV6e^8 zY|U+Ra{&0Sun+ zr~?L%2kRq!!6*!V{LI4I@X*@uNJrnMZu7$gpxx|i@iVW+&H(LR)vtdmaqIi`u@`); ztF^TQZ4H9}U@1$Z6JX$AbMNxV=dKxJZ}@?@wGU!8zb8mIKJr%V{2Q@zuc;5`&U_Z`&U?iEOE zp887i?8}Lo#5kpT4`J|ZcNe9ibFX0d@j&DYi3$MUrq(aLld$x5!s6SBi*IKQJXTuR zC@{Fz+Xxb_Evr*VxUn82Jm1r@Hq7uq&s>>%VrS&%i+z76E0x~gw}vK$9@J0VOvr3b$ZC$y4vghA z{i^WJc#DePDy%Ka58hMId9<{rxP0KPvH(Kq{Z&czSmjWRZ#>R7k>Hy&`)9^0Mt)W5 zKeR0_xmDIwmfxYz3+O!ojygk1K9}*VoXm`@49+vX-EDNF>r4)V`t+SmZ{SVbl9A!c z&Q5c?0RZavgydZqkic~%)#b>^Nk_qA;eb&vjDuW`YTk-D-?OsPva(W9hqrUOAZ5#Vvr=)6tz3^VhcrL&T#)F(Ij12> z3J@Y;ZN|*lW@n}4)HF;a6VazewPM)Gpja*mP%=ONxmiQ|@ul7kZ- z1$r4H5_-{rm(!i0K?td}162{q_$PndVuAz{h=@Xx5<`$FqLwwnP+R00gG#MH>;8`T-Ba|@;p^pLylZNOZ6dmNzoFURihb|-{lv z9$Z1(4zXn(=#p^M!k`}|B&;~|AUx4!fW#sw=17nu~(Hv(;PIP$mX+C{UyRLA^c;ELd@2Q8tx+_1> zS1u-cXXA?}bj72F;t})6HS-$>#_QiVWVf2Lo0B{Ndv3s%*Jkx}81p(4b2{}o9hSUy zYfg(byAhz9oZH~cYqICHSo4C`{E)4%$5Gs8FYYrJ^qMI7J;|m0X=VM+!fr=Fhb_0o z=&m)URwkx+6|~Oqn=%`X*)7K0c4Ka*EkBf86modl%-Kzrta=I|EZNQWyf#w~r4@!` zEZI%Q%m!0dlQPUvK`r@R_JXeT(k@$0voXzQOer?lvvj5;gUP1-rk6qyET}9Z1S3lz zn}j9`Ff`dJT*`S@kqJivF_X+EYTWhn^YiIN4TfDROnG^EU0q#GO%3=Hgv|RIShT*r zUjEDs65uh)@>YODSwz-LUP1Vm+~DcuRRd2iHJeuCYNhY|*OII+L{rj(@PL0_5dd#? zJL6>tNZ4Au^a#i6LeMXC_iI5&jZ-`9BolZT2sLskW!>iEp}#Cq!rdVa%(KvK694Onq94TSHhhMmKnVV^K+1}pj~Log^qQ3*s-{!3ThNVUaL2$L?FLP$^`1VUz# zsV0yR8-vxy2|8%Ph#YS!utx9@nvgVkU7&*@M6?*fB8ju;Az zKTj162B(JW-GYIsH~K0C15+ZM`4k{4Wuw39#>wsrk!JPRj9N=KhWt_{gGKvuEmEQ| zcw1rMz%!@2DUo2&Bb(in{kgzoTj9n)rIZJ@`}Ria174T*i_q>+eI+n>rlV#iR3B=p zIK9|?V{e>#xTSQiyJD`(JJ(e{)&y?P9cwBIRb+sH)2fHeV>c|VCu(|D3meBR`K?w@ zlQXBvnOT~VSC*MmXmh&ER(o7b>y`J zgKc$-?p$wfUP)nop|_+E7#t|iIE2C4)8I%~=|-sJ>|}%XKzRJY?cRls8tp5h4dcPO z#lE%^6TN5EuOp3KSQ&r(%;Mu`mM+eZS?9iypgj=QsjmmWdUW}{V>^FoAAKGGOd07M zielhXv(u**W`oWBz~GUtK@A2|Mn*e(`r3MC`}@GaAYtuka9Bga1G9Ytn`1*-2@3|M zrU(F*QXW{ck3D;I_oqkB|HF|}Ka1V|kzwUMaQLxPe|7BK-zBWQ=Z<{6x%UL6spmwX zYpu6;zIFVHef2HF?vE3;e-IaWODnhHx4s{{{X;|jmeJEIFu1I|3m6=%?~(_?XBJ0> zgCOA!RodFy{mp`ePtFWIdSL}5{K6x9&p&edv2$yG@!0+wpT7YTj>6#e`Gtz!3-_#l zD{k|93CF*qp43KeslR2bzAF4`;_Nq^^RHNEzmYKYvi9ldmyOde$7(RxJpEPU)K^XF zm$bfWomQWkKBj(FT78%J5C(6J^a&D%8SGu@8$5+~-I9XAv5RlVs~@Vqm9Y4Zb?VE` zmUAV5;evXQaA|%mNO+)$rEQ+;QGa}BrYj&wc%Zok7(CO_AV?Styf>wu34?@hUYvd4 zSms3vtt5GS7T5Vdg7_oe#fX zJM~d7wnasMSzUhLd@to^t^PlZRfCj|!gH#Yqc41AZuABsypY*;Lvf8Ez| z_Ct>sSJ5uYkG*9~!bGbd7<_d(^miTpgW`{R|4>r=_k)cf;hU$1|E9f`X0(eCKObE% zjz5v$Zc4~#iqCBRetzXgy(;J8?-f=T<+T+Rb$+kNPxJ2H@0TWxNpQs)le)`j&20RiMOh};@wS)xqT~P5%ba1b-&2*taTrNC1 zU7XnBmS)s5i~vqZP!mI-OUo*i^oYy7g)@Ysh~&{%!;zdbU5tX$NX{gplbEt)P};cU ze+{^!FefIXg5{V*rvh6H>0-##%2s+c1(XeX^&m@9a;Ga>hU3Z0%*jqCXH4)c&V|u5 zRg+XXuwgLg0OVYh3n<5}q$>I_ba8gdsfoUvmJEbm4qf@M7HV>PKv~Q&K|$2eXU@eZ zH8~JeNS0C65na1o+U%_vA7UQ8fqqRBi^OK3ifhHtYH0eT_i13&oghv5}d}OOo;}$h|h6Y2I zY%sBs@zRSo%(=#~IVGqhK#iJAAYBk+7c0p`=7(MgeT3pIO5#Cn3yrkVD3UorpCwCi zr6%aDamKWGd!gQ4Z^-XWESb>1eqea-!0`G1rmtK|D4Eg~4#(&9>TXB8 z7+9ClY{_X!D(J8mcG-#tOx@=UtAC+i|AKz%QETa_qjbnx*y}9nPAlzofpSX+ttBIt zvTEbHSjs>++ z^AZpe9SAFSk?d+-BP=Lr6XN|Jxjgu#uBfQcPK0E5-dNz#0Vn%>J{aN>hy`Npq9oCU zAuDXDNtJw%BaAL9LN*=}l<5+p31Pzi0Zy=yWaA+re^SMv=tM~idl)xLVghNyRV1@S z7d1}U@a!mrbV)wqfu?wqJRucBBf7AK5x1z(D-xQ~t&S`47F`-;tm#Cp*y`wzfX9;$ zVp5-x)_#ZFXwm*7o7&20o?^77B-+v~$=Qz7Je}38Ps+2U7rAo0o>G5-w-$J8Nh>s^ z7U)y*6O%mF^de_wiQQf7OwYHva*avZ_S8IUa;C}YwkM^fy0h~O3X_sktu|*$YPvHC zT&j>Ev&vLUo-7B;goIbF5DJV!)MPj!hheZ7iY@EH_Fy;&X+lvo;ZYL_GtXvYJAoTn zUxJDsJP=y+nI(jh5Bk*bq6v`+u`m%K`r@1<;pr6;p8~ce|ELaxysD~-{fu+=7+nOV z7deSV{YVIcGIlW+3C^*?gb*Da9lRpQll&0^iK)>P6XevmqKP3jYP@#9%)wx=zP?@p zF?FI$KIlN?fI3?u(O^=)(&tPyJ2GtQGXf=vX%&W?21jv+-P>=e2wQ5#47F3b{MO`@ zZ1qf7!@yFaFnF@P5E!f>;X;t`WOKe0@UXz(6XD8ppyG%sfMHd_HIpqRlne8%7v`GP zGu}ZTcz9>XM~Q?K6KN~l8>*tFXuZW+4GgZ(U@&#X-be%R5|A0F%nns$hbl8?dV@QY zt*4iIPcILgUg!h{Zwxm8fPujqLvvL;{9o&52U z^M8Nj#P^Rb-lmQ{^YeuLe~8=pk$dTtlCJYZ9W%qhiQ`iX(Q+HlOoSHQ{flV1fVAHv`ZE0dI!?!KL|;l1f0 z`E+>G#8ZjteveoP7TNwR1~T zI}-!*{ewMAFMekE?PIgA99?_Q)4E%l?+f~CgMR-&pq|pvP}k8=`#=FTI>H`?-XPztErf;NMIB2vSmjuiy4p{h+JykFcm#{zqBqeH+71 zo|(G5GPFGs`X41FA5#Dc-|E3e&Mz}KGu)X9{c0H4tv$9)=l)=}I?PsX6()m`%Y;rqoxnmtXq?@g)G$bZ zXPI{}r$K-CAJrVy+8ez=Oq96>@G#+`P6%n<-NntEJ1d5m0|4~;c!7n~8fr}ezJg-n z;*PlHlyXs!;Ory8}}5vL#r73Rb}wAIYf zxnq0yNL*RrQ+u?|JcASDkRvYUxZ?2RY5;fccEX56kQg4AQizmT9S!Fm0$oTX@_!SMfMH0~ zgwTOF+6gUt14BWE5dIO8un=;Z(o2&Z;E9eJ*^&N$-E-}ro zPxl+rYxU{1iD2fe7LzArUUscn;-u>Yw3ukWW*48*6`(j zCm%egy?>DZ!GZnOf&StLxHadsTQmG=+2vU|MHyMSHoJpmV6K=w)`B@>rvqlqQ2^II^Q4*)!1{jurmV z)I2FZswO18j0F=I_AsLW^G7uy(Ue^WL-eQ|pI9NGH>v=`=x~S}KagZ7DTxH4S3)C% zhoU*7EPnI`Ba2HhnQcbiY@Er?lr)PyS!c8-7@c~nixOu{PPC+2k}{Irp0un&M_Qga zIos&WG$&CqEXkRcq)ekd&16rtIMa2{1!qzU=$8=MQoBk^OPK*l zn2o^<%NXSyKoW+b34=cKF9ShBeK(=NYKrEe=nkpH(A)~cnpRX)R903J4im;sm+U}s zOD&{~?|fDnw~#h-YQKS0sp%EZnA1zDqQHd1BV=goUIC@3;RiXAyu3Vlb)Z8pJbuKM z^mwI+6ZBD#sgOWO*!Gw(8|)t@L>yv87bd7lbS+;+c*6;DmK(weRt4HO-l^q3q2zUk zvb>xn6Ct*3QgVtT$z`!6IaA!u)EsMSfg!EbkWppIYc>^i+A9W~)guPqsG(-uQaxtK zsZX;z+=fp|@i=2B{wyP9tkK=$by7zBz5(E#cI^2*QZpevrS6o}~ z-kYfp2mCXkny^17Q0xknWd|CX!$CjLcVno&zuDhkTM+3ekF=LYIxAtqb=f{oaz$mm zYv4j^kEvZAs}iM~cN}w^-HGu?nfFX{?zm zH9ajO*OHuNOE0u#RaoGkzg zW(4w+DPg}mtp3n(&Qi#`J5hgfvhm9C{*#k|`R<1Mjt@V%zi@eTe0yTx^2YQN`)iku z&rc2v432JFc77DUcsq9XjhKz^>XvU8SN2y`4^X;VhbimRa~IZDHl}7MOG8uJv$N;d z7q@3-`a8o7^*sZfgNtKh1HoQOV|C|1TQ^8pm2u#4&umvue{*|dWecUfp*323m2FAG zkD4~WWxn*!@uz=wWaa%MTR)6B_jmfezqGHsnL7B0Ke!TX9t?*@!=dqT*Tm**WOH`u z%<4L2|2Spi_{2P=V&cj43xB6yd@E*w@@7ortz#$u^2qV;B>GnMIbF$~ZclM{iMPY= z>ujy>YO4+Q1VTN5j-KZBmFc0e-p=LG-jfR>Cl^L9uT4I2dF>0&oO|N(#G+vf;%2^abo%SZroI*f9-jVM>?C;jWq>gyPOD?JT0i}@Lm2$P-oo{0 z*_Z|iFLd{Sgu6x`Y?=Rj+~PZ+-$aFkZ|T%y;kOeaw^BPV=jYZ^n#voZNO*Oqb0pYQ z<|zjTpPTI(4>qg~s-Mde7)%Wk1_QrvWp-^Scy6Kh@pChepPvT?KeoSg-_po@Utj0Y z{;{?9;uhaLvhq&M&}V_cWx3wk;z|t$*NwC{jkGuZTj|H49R(2kr+AX`-zr;5=byvbcK>e3qH(;9UdP5f!cKv@V{&P7O6}dCg?*QO*4FjuUG;xgb=6(2X`w_I$;F$nCE=6E7 zfn=IogN2!?AO&vl+~b9~cK(rqh6B0JW61F#CWi`H%9cyN+y=O>2n+^uqO3rmhO_~( z>1hfBYZ6VUVOo8nx-iK#0$T+sHK=*0sVQS9`1x)OOd$|)$yPFt!eB}?JrF5{V=FH& z10<}3YARd|kXr~R69>;9&6P4t6HRw|vfx;RctE1@*s5W2uyG9I#B9>vu~nhfz_Zho zZTca8j&_MH_j_ffUA&kynw+WJHMtGIBVj6JLXZ%Mp;1SL7z%MfYU_N6V>vs~k2V<^ zQN$aU*Q%;2k#I_2D6W+8ogBmpIRwwdLeiv{HKJyo!M$KSQUdIK;uD{s2_A+72FpUg zpbwD`c?u@PoGwUoB%=7ImjS{=2P<+ENSHh!F+{>Jsl|z?p-(JnB8Qg*a4Q!qVv!zB z_Nt}F0ck2KQZ2IEASs(Z-)AgU4Ui`1NZyr#rn=hLyBc{p) zQ`M45`%Q2 zR~_#j*syx>zgVyTmG#MgvH)e@J1~CsHxB=*)4yu;t&%FhTjAt456mzAOX7n+F_es3 z=589^(SFeDi~l|8p})?1@f}PRq~8%1d#jaYJXu zAZDI-4`!H|l%<5=nR#CIyx7@ST(afK8`BQYHp7JN&CQ#pEFy#x&Wtndt+fQo3;fEox zg$P6%5QfMhoQOW-g@@4`D-Z%7C3Fyq&nRh=bcmhE94NxTQA3$z$OIj=oA3J11tBEl zgM{HgXu^w{i~@p3hdc>^e^Nz)COMFQbi7fw@VJtiF4VZtn=R_kcadXuPHt|V$6&H0 zBpUTbtHJC@G}=wpWRo>1(VV0+J9Q=}K-XwZHalF7USy`x&hD4DyrC0or350~2uBeVA7WFCnfi5;1q3IGQ$RQNyV)ICs zSizvo?uBTQ0ISb7KoeV;7D!Ey#*={f!5p8WEU1+kW9*`Xgjz!LT9ZJSAR!!#><#gQ zkXqgwaY%Z|2}c6RAs9&pO(x2dpKrA}%~rcJInClsH#jmaX@%zWGE=4xBy2Bkw|o2a zrTrjbW6ij!X53KHt;-8oGAen22@Dn_3VM|!IE=G)gMyJmWt!;Ri>b79C| z5UMK!fAoX2#-k?!c1MH(@OsvK4mN z@>{Gqwbl%;+2u*j$WKnsu{&LM_3?hzNWJ1%0wzWVh9-g`2PC+TT>w6)P>iK+doQ}dqaI7 zdFqP-g9QW64NVFR9_t+k2A^MF5*U2{-s$r1&8@Ksk%;}#UyZ0aCPW`2G;#q(DYGX}@_VBhh+&K&q zo*SN;8<_?M-`GESW_1l1eD%~8NO*T)2^c&(dD3+1Ckbos3k;53cr$+SR^0ASVo!XJ zV+$BuRo+um-3<)(t6wEi(U%`%f-B zdu1CW{JAIZ1qnZRYV(0pCjSGzj|3aWgN^5B zL+58Z*9HS?eSy8n4hmrSg)1`@`MIpe&rZB>ZSnbQ%Yfng7Ke5w21C88z~Gp*_dc`o z&e8c-6%5WP0|p0ce8HNkjs`z4_`CkfKZ{!bw4ipod(Y8v$`v}D*s`med+D2bg&+I$ z^8Z)C_Q#zK_icm)25*mqKJ-`r;m@JUKP~DBb5(g12Cok^{GjRocg`gxAC4|L#~#x) zZYHEP7&DvSRZo3CuJ&gOYPWMsV_fC2spWAluOqkmy^_j5Yx^+(tV$-wGiQ&wi9#Hx zX6?zX!fy)rrRLuJP<|=075v9898M+@ln%;tRgD4JD^wTM>ElEIWD=@$lVSn zOuN#Q-a9Z@{HSJ*He=cxa(W7K!4Pwtz>qwrBPSxqCtcze2}Ew3pfu$~l)Dr>Z}$*9 ztIYAqQHnBhS$E`6G(#8;22N$^MN``#inJiAi5x;1x74zlvLX-+Fi$3##RB>Y)Kt%c z?-1}$5FlOBOA|)q*pduF2UQEbSMkkjfmJGLoC0KoyTUG%=2cn59Ss;Ye!e~2IeX%gACQC^m*#>l> zCbrU~i=eW;NNA#uE%_j1CZ#3^*%RE(WHwI(S3+>6i`Eg z6Q%+p99^g}UgRVrgz_PG2NIwhU886(T}G2tZ%WqLa}!g2hTINA$ymZ8KTmw`K>zwd zV)?wGWYnD3nV9AW{igSW{kC%3zb2gtg zH=Rj;`5@z42lglbIk{mot#Q*`FH^&=ss5y? ze#i8R0<^{(e`~8*HCM0L{p-oM4(#t8IJaJPG@r6IsbU*>6bNnn=0Vc>moi#TCN*xu zt872_e;cZn%oTIS(s6y!h^chk^yPm~T>XN+dfnQv<7zo$Z$4xC^8W-0Cq4cT&hl}K zrvqSba}{Lg^5&n*J&)yMR+&TQpGjs>*qmI@fvl{Ke5#pwhCrJTUCcQvg&GRfY~cL- ze6}C63L(tX{uq+BmDHz0Wj~;aoXa}AT-@nmCzO|$S65dfk&QtwRVQoD%sk{V%h%;LDZ1rfjt8ugz!ubI41{q0Sw5=nUoNsFB?)`O&F@w?}Eg_h)_tP z%chlx_>@u5l>8CWlv#zrExaf*hcp?EXu_a_L+M40aB2V=$y~w63lLkDL$akNs7$_i zgMpX|YV?)&M4UU*-5F@>4Q3tioGGz6xc9qK(;d!alf`DSIZYOag1c6`&7S0NrT~?I zOqyB}HPgVm1utlgQAD0ZBp-N|i5Vt;h>?;QjHD-d3QyY1HoO{@_Nte$KnR6LD01}0 zp%6`pOYfoR4l!34(#4QziUKtfqF~6^&ct|U{3oL@c&yP)3D>wm z!rC)ocSm_D1q=)lj$&Z&Fc3FdK)-YCrBV+!RP^}M1C_}E zUs_LHR=6=Q+~^566-I_bYh$f@DI+m+$r! z=K4J8NmXIf@cq`ItI4%f_Np;!*`TGM!<-k$Ds6G)Ra?`F?Wwu;6!lqX;I7@F{%1#) zgPOIYvN@76vpqTarS>#WR#COr*P5B<&nOJ!SM=D@+Dr|bDFwjbLiIGbtRNipgrLl4F8e(%`5|3~ckzmGff^VqAu zj=%VSShn6z?L6!Aw)(s+VBjbWo*y2cAD#$@Mo-MnZO$%S**$(`ck{m86TslBr?v$N zFOJOUmfwom`-%F!Xa$4cP=8JdoOtT542!RVfdvM)*7x+a^!2s$_Ox_2`r0P@`#{1= zqx~lrMl~4Rvpw7m65bx}1q=g&PtJ}A5`O5^+C!(-A3U{j@7m&(t<|mRIYGj}U`iyi z9~ZfG&&mf!7vGHo3@_XQpT^Cn%eT(6p@&5U~ zzJZ0OKC}4Nk(qDAF2Ah{-U|$-C>UH_2@GBwY~5D>v|X)w5E zqP2RWrSf85-LIiMU_KLfu7;0e|ehLeK#Yu*T`c|V1C?@ms(D`=;oI0XW84nGyF zfZ1J7Tsd?Ew`lM|;Si2tY&GWsgSB$VA6khAhaEgdO!eGSKnNhnW>v`WqjDFBJ&dbK zh)YmGM;d}qJi@~ecfPEv@#>NCVbNePr#X3Q;SLcREzV!jkzq0|AAxx-e;GJx+%_PF z$wYB1afWe@-_cY_ivArxhjT>}Ti#_EuXd|H1WpJ=IT~8fFHLzW&dk%a+e~DNElYzf zhMa}bYa*nsK6lUyY8;jvrN}uQk%$hqH0fonwJU-8?_{iSf-4yD4@F&}DY2x+TnKNN zFnm#<34?^Gq?QbYLBc#s7t8diPkl-j>ysME(_knHiRnTgf)PZ`N{O7NteWT$f>fhA z)X~rkgySEEQ6Pli(P0Q&DWYQ}ZEAYyQoBGSJd+iEm>fn*R)iA;gyKI+m@|#cHauPO z+CfMYx1>Qh7D5093S^587abUgUP7Qu2=r-^FlrJ@7LE%II`DL%CTqm#)Kq}G{;NV9k{Gvt zoiQoal5I?{w&sTv48HMq>O;}59_WC<#UqBC_QbTBL}w8g*yzYI*s~2zk0GVhkX~cS zZA&Q&o69B=$`>5;ClXFUCq0x%{#XGEika@n+KMK7p;xE zAYps+Y4+s=>Pf!SWOW*?$p(9d$(dnNru7+j$+Fq)CJ0_{<7 zaZg>2g27D%k=~kcS8%4keQ#}iZEiH&+7KvC_7~*^d}X0fPk((e060*Z9VjpK6&Lt& zlS=FQlG=|O!dH!h_gQPk9llX(*?_sA!{TW%X8K)uH7Qx8=A`VT)NEH;W@>uo;fMUS zJ*K8e_G&Uhm&NK(f89MP(_K*IZ|p4h1+z<9(@VOnIUz^zl%=H4n_u9~%k$=D*O%mU z_zTAZg<~y+U|^W#&O%`D*-1Yz`02|tSC98Rb$Ry6@qS?Ne0Rg$4}|4&(E@|B!jC6z z{V-wnjiXyXG>km|r!cs!Wte(>YWDp4auf-lURvxA4GR)Jy)<=t35kNiTNA^5ZC!$d zLBE253)*)Q_CCDl{@)!v^EXG&{oT>)zmGflp>FtzjDi5@H(H_?cxz;MYi8=i%nV5Q z#O&;&`#ZqkNB2+O*x$Wyd^L)Mfx(5dFUFqzx%$cIg*T5aym55?4fW~hm2VzB^)q+R zHDGW_d6zs81_n`j-X>bD%}HKhf$?Ntqwp2o(>P|NC2=Tv7?Z=JuUuxxRlX>p+O{9H%0 zTw3mX2uQr#zc&_QH{9Hxzj+~Y^TN`#weYpI;cM%o1EZ(oR^B1M*p=J5sV@~|6i^yU z$_D&3T{V>>ZME}#fm1!rzpktN!(Bf*^|3dv!usc(i7CLL>`u)Bki9H{+Ht==luNOol{)i ze|gKM*53UOpL2r8G?4ZYs8c0F;aK1S5Cs?$1u#gs=m@IRFrffE4H+uDcPIhZp~(@; z$qge&L$CpN48gjBS``y5+Ou4%)d)C|paK{K8i8KuLP0ZBKl`kid<28(lDOzcNp9HG zDy{}Z|4b3w?obcJye|Es0@B zTs9REB?Ow(a%932nrjEQ8SW?uaR{M6O)pkB#~X}Xm58gROA}t0=wQXC*$5miG@*zIBlF z{J+{7_bm0>=DIBbtERccW3T)k>N^|txxUt8ZiaC~rJd;h@s!9miqze%l`w-@)DGU|-U zg_$|P;7s5U^TvV-u~hYJa?!E+qJY#9X!qa(t>)yR%y$a)9V6FE5whED#e> zpbK7fK1K|LE_8^+Fi90#nuK5!5=%xwI2B2IEubkRX+T(^hCaPCQ9BH9heSdbTbi+J zMjxq>0|{eG0$?5)yW}sKqe%|((x!BW3$SxsBi26I6PiTi>>vkR@sfm)V90Be^l&9B$N~}0rhXK_tRC_^lJ#asa$0s; zc2QDBacXX5O0Lh4={M#y7z={>;%-CPfWADOST$;@8nO9C%$39Xbe}Wklc~l}dQ)Pg zgvy*!Dl!rQz*2mfMkJH_c!-Fjx@Q2%)!nJvU(xgzRE6^4SwKh!lg(ioFDS;AKsH?A{A=KCyp!iFQ{KfhH zqFjGg4ErlJ1+<+<5Z+4fPT*a1@9E;O!w!6|Z zvNJNXQ&ZEjxNN1RF;TJ{%&oR44)w>AtV!17%(Ogjer2Gjw%b|MmR!_X(KuEybkSBi z;Lh=SGO{Z2J)!F2P*q+>WsbifxuYVpqdX(*&pkWeLV0Aje}68pKiB&3-r$SZBTwv4 z-@7z$VL5zZd1z;9;K_>{Ph8x5;^K)*tK*d3f%TZp@5e3Pj@$mRY3!wvvR;sIapgc; z^YE$JNMv+&xNnlOHNUVqxiB|0rIpFa{;^TRvyc7PDzLY)7ReH7wqm2cFhhBMurEs=f=0^#v()g z)1AT9fo`qzM7n~JuJ%*&g8h8*8mrgu-X=`(G{@V81)$NVN z@a$8UPB%|J9J~JQ*tKsRTm9h3(tG!)a+?wpxuw1~td;nMTjr&=6C<}&V$@nWgu&ZW z;U_L0-(Q)eK07yjW^Uxl=Jb`#nM)hfl%3g8knq&tG)P!|I$DFl35##L*WY!{zf$0v z00s*Z?rCi5ZERQ_3at)xEDp5x*3~QyG=qe%toJ{>JA7rmkD_7VJ`D_yTstv(?Znu% z6XVymCSEu<0}S38?b#aZRWNwvcFg?iM^Qr>LxyB5-q12rM|jTlg%%# zcKu7!|L1e;-#6F2cy8^+gI9LWUX7f6%rJaIm)dAbZ%8i)+H&fLGAnc7Tur zQNg)8z$}W*D0FejA>mhd+9OjTX|(Z>URV32TE*6KK?%K31l zsvPp_sW@F+3$c}J0Sv^c#(BexF^7NrO!yEIGj+gVy714OPz!?xW|;S1oXA{}o@S`b z6@O={nJcCUHR47+K7EU2xjaWg}lwO2r z%6>p1y9*w-vRDwk_$NJhR)Ou~Su_7gcG75R0p(`2@E3R&IN&ZL(fuZCH zBTi5t5SLLHBq&2TfmCK%6lo%tky48s{dk=rUT=>#XX;($mfSXL$#CNKH-N#3?;RwL z-bgH)HWv*VbJ}(3^@*uIpt2>S#+q4g%xuzU2X&rabJ>LJ><|8p z<+HyxeQ;oY?q4m9d*=Eba4)?eVe{Ox&ic)ih70m7N=XCuFdHl=GYJ@AS%p{#Sqr*ked%STXv*v{=e*WfVm2XwRz4I;7q)aU z=a`_60&>tYyMivv1&!bhD=zC8a=EXqt!->LrZNXjYIcE9pTr z!H}S907W$ZM?1V(})gpg=^U%gmFf`UjOgqX{? zVCaI-frs!T5(rH-DlMV_Cy|SPQW7itNEez+l*|Ao> z7-}Svp7?=aM3cp3|M2F9AC=snz+kL|Cx1vJ>>|wZi9SsnvhnaHTTc9-5RJtfDQ~uP zv1!F2454{1!U@|_7zigcQI?%dI7lW0219ftGzt)YfUNT0Kv>~N28)U4Qh7b-1z}=>;}-sUfY*oaHlT`%RvJsj%Ikz;M6SHzLJSIb_JJNr*WH z5*9EF`lSdG2K`2hNTdLRqot=Rg)-KX+f(HVRVD?B%>JxIe`U2l-{SX}z3GV_M~pXB z7pQ9pGzY=MURRvIu`>|t4m33eT0^R|_fr~MyBZstD|`(VMTP$20)LSwGvAlmzODoM zPT#Z-Uv*TE*ek;hZ=a*A+ffp-7q*#m>cGJ2(RWI&EjiPcl%{?yEIBnL#YJI{G5^dM z3&eb~9BNnD9d>83*_NDuQdBEVtGEb<= z0}Sq{%pPtkh;;dY!OPv1f`s?ynjhI4pa6rv{Mh;v`!kR4&jN$5@6KJ{oxguKa{u0v zz~IqPw|(J_xUC;00E1^OVdzNb#B&GHi3a7eIY5K=8oz9-l_gR zknm_n&usqyWefbdzj5)zB1rhL{mn946f zH9zpc-YiIXWpDr_{KS>D`*tJOc9+gA&!1afIJdlbZF?0YOxc@@T-{s(2|FggaL@94 zajPH1u6}TA`I|>5i|XkOv2*zgv5Rj5hSS&HObngVBp?6cXx<4O5P5rh3CDMQ;@Te^Glv;-obc>&qcYlbN_~5xTXtGkt;hAxx6ZL zch}?GsI91B%e@Dpi8+LXI}kPSfLzpb-8;4v^(@z}el|(;#fe}fNTDc=KKzfS
  • C{*ufp$ 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�TKT)S;lD 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

    {y*cgQM56z7SP5{{axd{pD zzo6--q!^qaZU%!Bzv#qVtf)NeSj_AahUc{N1BSzGKja7+^sf2W6N7mTaLITU%YlHg zVPN6pmNjZg&$EXFejc5o86``RIK^P9t2)8pgoFi#pTuC9ob_l2PL;!8H2@(bam&?Nj zptn4zm%Al$uQITzS1}}v#IQ|)d%INz%`=0+4UYJ&fSZBAwZN~sc6Hd`(iv6$u&hXB!fZCGmv{TfMZEl6$1LbhCrN3{50(I~qt_=Or80 zx?!aqmfB&t6L2bOowvF-uJ&WWU>bpI!+CwU5Y6fU;Qm-N;eg@cr0LEE!?@*6Ic*8L zO6cS2w<5K;@(y8eEZptwLD&+k9nk%FPBK)ZZny-dx?oy+jOVN)giOOP09dKdp7c0m zm*KT~v}XzigDQce0*yn)$D(gAp7OpLegpbK_b2->M)#U~QC{U}Vb+XlS)Q)NKu4s} zgH*F>y!EB4M_a3d7lU|)C~U_&f3gc>&Wgm^!0@a=suclr0gz%$7BD7-t{`^e6Du(e zSwhRK8DtCfpreUnL4tTpQrq z@A?IG_d3`%;@O@(U4xK!7#U#d6*Iy238lB;eCZsvy=L~#}wi?t5peSC@ z31tb{nx9%y#59ST7_9bHKpN#QIe!wVjCdy2X57f)*MRF8w+Z@xd@?MD-ntKsw)E*( zzMO7eFSc)%+qbLz`_1;E_My{U5!$ z`O#tbe&sE|fsV^1O``-+CHy7bI&3^fI5Y$Iz6`SEvxP@07;M5*sZ%%d<4ZrjbjOEa zw0FYoFuEK}4lxbjjQbVHNl+`g?QSM682GU9mi!8ULuOP3#-=8k3JDX=rG7^f@(GOR zCpuWs!3nY4JEH@H{bCi)o`(~NhK+Y2?svLIuZHo?)9((bVRGUoaRiQ0@Z!yc8TtOoFUO4bg^yWmxilKob6~z;FVbpGUdMKUqXX zil$vM@JyEc?qGcV^*|F8(H9tuOid4Dcrf~wKnZW&6%4K$43=Qg zw7$|B3=&RYm|?MGZ16D})*TF%31u~**5Cw#E5Kcvg=MHP^TERwSghPdVNwr~xS=!D zYQ&`^?$Rj|1DlI2r_`pTHm}z9YfNzFVF21iZBVQYs{mk-WCnvPv;cPtVh{!lpO?EA z<$k@~uX2{7evJU!IcK!zqcs?bGg(`w`L|Oj_8SCX&Juh^1_l5(zbrLhR0fqsXgA!J z#Iibvs=W&=QCqQFDO&xDUK2oD>{g4mbJ1(jEZn*v6*EyRfRH=Y!f;sVwJsWG^*#e) z$^5_?4x03XrAwe~SPkU2Y~V3YYqMq7>ES%&m|<*%B>+`1m}D!f zXdjjWCX_U3oFjzsXW+jC4>v9HaD&8)k|o7pY%cJOwEpq*kroo>|B64JSBYD0;(wL6 z(BNS(uwHYx5c^@X$E&txk88cK+5rZKv<&y6${=o7lg0p`8`=p^YtIP`Z%n-H97k6RMfRe_f9HXOA%`ghc};*K-s5LRo1+pI^M z@N7soU63&Ph%-wK#Y9uCr6o2(Pm#FGoL~XM@$eJOhEA;ltqMI|K=1T08i_-)AR;If zT*rPeNR^#nFscA5cQMEFk^N(}qmm@K6+6o8zw+&Z*9;zNY!7xfzn+Z5-CC)YRk1tE z;8;koUr1MKVPiHJy$3P*%Ir$IcT^5^pB}==jlueM~0bc;h`u z7^~1QHc4aNi2pW9D)|E^4(}F3UuEE>Zy0tvsKK83+zE>1vKM-<=H=2oQu zoH8&cWYT$wIURArz*CumNaIei|A9VS!hu;CK73dSd72(!R!P^;^kZ0z9UaA56v$U) zWGc*5Yc^3+uq}aeWb=n=_((k$fK`9`#Mt1E7cn@b9T;zVie^l)9|D{d6zNr)*m%Ks zLWw3v`O080H?cI6_F*XrfgS;G$fRjh<_d;DVps)Mq~-%$w9$$mr}%kjPxoN;69xwR z+u{5=UffRBuV!9+el-U|uV2qsx6{Md>(RlD4>VTe5h2HdW&ryIgK>Mxf#5lbhVdx@^flyZhgz_5!ITmP&pF;Q^I8zTiSozN7&b!>Xs|c&~eCnywNMp#+^DHNXgRUjba|Pj% zg}tC8Dx4nh1PHk6H3w!#(O;rvN^3IBd)?ep|8tovD%=QouioSvCfC+8<6 zy+pZf?E03#4Z)*`eRBqqiH(!j236IK&=L&8}N zfWZJc@)$NzV<5^ap3P)b@NS?#nIkUQkeG$L!6OWue0aS_xsuONO0b`%Ty4*hY$dNP z83LV1fA%>6ugt;gN|-C0I)6a`78o|uBVm~`Ff#cUB>zh)o>fq2a(X!?eD)LutJ1#- z)GGgoq1jXhbfLBdO)1)q(}d<{R+(M%r!GmzczUC=?aq3sDOjw*{Olq=3&da$1TeTC zH29OoVYLPe27`f0b0$@L zB^eJ~uJ$U`E;trkO5<>S04gpu$-p%Ks$VptOzU7^oLTxp;~x^UFo*lnL7Kt0Xi}Cy zSp;2LhUHJ?j7p?m7B(0x!-?^C;*Up#MIAXT%Szj3JZfAh_%Az*5zPscQVec8RbGg$ zT$CIwO!My`s`cV(H>?1IyQ6A%ROv=#T7$v8i-x^u*~{i&&Vj)|UwhUZ&Ke+LYfk$x z6SKNCZ4AeCYtnLY|1XEQ^Z5v%-4)#?7x-#Jao6RNk6mZdMPjt}XeU{K0Xzm<7P18` zGq6^S`^}8(RVv1|;AeYG5>}fqRyk6@Crb~++~H035kL+dJ20)(Kuf7F-ojcxsTCbc z!Db_tBne|JyN~FUmk(hLlPpn!@!U-unsd81|A6mN6S+N zzTXrq@8Fbvvr6C4$1Zh7(m_djFs3)7n0l1yg3BtI?nwGl&wyA{xe+$OMZ)h63c%S0 z>+3oF$(+-w?v>V%zTKat&y2yQGlA4?rbDE(y6+COv^BT;?&w>en@Abv z1D-d2j7JtjNu$}^3tGq}hYd%9>&|!|f|gMpTk&wr-uZa~tG*Kw&fc){!RYi>`V`&g zDgBWQOxcs0rMN~fna;0$T2C_Y<2K<>MQB5qQ&A2zQ=B_WGP7kqkGN|q)ijg7)8KEd zgnpl+({1lGJEQ!GN|d}i67iDLi}omBuFevEX;^rq*pdp-)_rw$Be2bjV6`TaM8uPXjK>4}wdE0f!GpNqlrpQhYPL%rDQ zm3~bEOY-fJb!q<9#4*1m(zF5Kj5;_Q=z=QxW=WWy2onwx?lT$|BW4XFI!miNv`XnW zn@%ve-t{2GV4+{3Vy2JQV1Z!+z#v}a6J!K~X$=PESfd6<{3Z_4z+h4my<(3T3=xCr zFe~(=QzZ>6AX_dKk3nZ3FDA+qIk`}`>l8T4sd4bIRmxy+`G~>8Cf%XcAUvp*=pbDe zQ}7wlw_hXr0)y!e-7L02zefx%4cfE=_iD%iW`luiz4KDHQuVB|U@!o66ymCglzl842jOXvmPT6CF~+7yE|STvwl zzFQ25!5kGV@uhK1;QGKnEnhoO2@T6?7A6Ke*cYy(ddsf#d|YIVLf&*t#4KKmZdIlx zW*QghAgm3-`Y^8dW2M~o002C$0&9W6{b?;&^#(JVe+P3JCp>L{gzY&o*q%3oU-m-eeci6iEkZj{BA2zFh(y zIoSf``g2QTZbh4b7FrIDMYTX{v4~2JRyCzBG!Ya9)ar`@==>=FV~^;=0c+7W1sp<= zbWdrFCD1ZR6#Cvi3b()D9o1v)X5j8 ziLFha7HmG*0j(`yEsh9h57f=*);pbIifk{&VRVJjWhX!iJ<_FIMp4p<6iXfmJ-2QA z9PgdY>*?Xc(l9V(oT7=rGzc3E-qI;rF<6vkU?>ww>lqlF+JT9|WZ;`n7&u&9(j9u1 zH3cgM%iCApvL_7rv@)IS z=~Cpy{7=y5#9+g~fpi5Fg9VU?X8=4gd(xs9(JPqwY7|wP!cQ!bgZq*ACl=Aw%Xoej zz52=i=9?`l(XGf`;5wl%WRmxmVn)VZ=)xyjb=`FbA_fzQ!N8(TpOfxx2b|9-oFzuvxEk9Wc9W-{Ifi<@|L zJDD6fo)#E9yA1i+XzSpbjB&dig86j_43=r1K(@w8ET&Z4ytKhGAtWjBrEzFXV95!h z{n4gi)gh!c_~o9K;oPdvp-;9ID?dN5xlmk!!6e}f+I^fpaoeON z3HNfc_wNXRb2=qn)ieHgHamN@+^Zw^-qrE)njF)h36_*OBonl6c2!!!Z0IaB_ymu8KEP8DXzIfzd0EO*1|$o91je5-W>-gGas2i z!4;^F;iHr9wj^6D@$QqE@Ez$$$Xl4weg!q=$Yk@1lou${BGmJYca|dV{49FxVJ`Stn_hwqHfxl!1>j7<|l}q^l_Wr(&!!V}n)5!8JLI zIp&c8u{do~%O0yKxNel9Z%V?(8mv+nPK>~Yhf@p|5;gz~c#+J+8q9&8c6m4=*C^mXs`&#(v*ZWEI6Qyifa5*7xA%7Vc(Mw%QZkSXTLexYX7YgUa;(O6nlld$WG z!4SFby*8bOaU zFpbTI-D&~NtInV*0kN9Hn&PY4Y&%Ya zZqJIrGIg+y-31AwKvOnpu}qytW2=V3KwJ%!Rp*>cWL@QFf-YHCd047aYcO+)baEbY zY;eow+NR9`QFgVZGb(|EB{cLPYLkTdCB|H! zynJJtg@LlTrH7N+aMB!38Zuol0GLC92eT?PWN<7jnGZShhKpNn(sX7m!tk^yy}BXp zF?l+0kV!B{M@ssplYxvez~h)SOG72$)&UFyR>!*t-C}X5#uJ406S_c)Z!>=a@D_kW zJbW3J8K{OFltd*chBAtF$OPpI>@i+6NKZ;~l_6O6DG7?KP`snjH3Z6vHJFBCrAMCICcSv2{(v$0sDOHuM;ehIo<}SmL^IWuez`nBTi>zuG(YQx61i<_{TD^*efrm0|gtI8&B!D^joRoz47&8=hdO`$)EgkDi z`c=v3UuSOH+qrjj@b?QD^veRIR^eo9h%)LsZBGZRS%6mjqRFlv?|RyMdH!j6#z}Ss zgBhS(D}k66a@GRDO8Hs-JJi6W?9ZoXGjOI@?ou&2UQU_I?@<{B#-ozvUtwU<@0>v~m4t%@9;E0n z@OyN;wI_RYS5Vk6Ffo|Z)tUsBIzkmnk&HwnPR{oNFl4NJY2l;Qx8tv+9;w0AxyL#2 z_#niea-;8AiMfSi;dyiL3TA|kOT3gdR0q=L=S)6Tvx6ZoO7qf`_ok3A-hk$gK0XKV zGjscAaW|*5j8VFIUh;-bWy-7JS6qa6fZ}!zw#-RES5Addx=JWCEkIt)qHmJWGszkZ z29tYpGMhXg)Syde+BR*#f3#xce>C98z*rh87WB>7fi<0gu3~UYS0M)#VwpAu9TK(~ z?NDQja9030b$-@N z8h!(8NRMU3Ugv=bUk3g^31qTplNEld@+JO@cE&}c#hK9yZ0b|C6w(8YkO?{zR zKoiKpszF6D_{174QKLz}SQ-qj<}g_4mmbcYVyWLO4O;bnq2V;^ZktZp1Hj-JJ+7T$ zv0I~n!QEO}W?JG1UUIDXHa86hgN-l9v|nhLEA@6pBT+-$>sGq78yAwT)H@ml0KLWL zm%w09F_wzKg`+jt9aOzxZCK-}vDy{S1q{~%w`R8hy3HtPgke4KIc(S+GAx!1^kuj# z5UI;F>k7yNfn{ zg0E1XQ_pb_Anwl|9Y_{!4kQLA&-y?|iBshcM}~n1A#W-GIVV`+97|nij2n!h_GH-; zODyS^ZiEst8fAioGg|rR+tJlo%sv!Znq|VJi}ds`iqZ4q%s>ECPY~3iNf~Im5g+WO zIwup4(Q<)dLzo0w4Woq~JSR^hSh5SqHxp`ba0p~ba;Abbjkf?@bz0VH!Lid_IN5Pl zVYLPmza=y@ddBEDVsjMZ9?>ukCuUV-S~h?PEoNbwj#bDP(>D%~+^&km@{A=`k%R&B zYX|k{fyjn^jw}MfVvpiVjW#naR&gO)oDd|uc!O6I+GdY;5dELA`E>7%_W)pylqTc@ zg9+Px2_7xZ)hZ>qr3{gGg>nu2Zh zh?e^_T$6GQ+Rd4Ucnb&v<7(6#+}C1b^wr^(j{2*iJ8$D!UB8@O{cyW`yI9?hLBFGo zjWbU(>}3E>#!osgpyRk4q6bC>UK#ZDH=ti5e@jm`V(_-Vyq)adua`IA-s$G`Y%JD2=q*IdOh!}!TB4uD(vn{fUK!=`Nlw~Wgr zeGXPS%(5#nWo`H<(hVi)OT*s%J`+_`|WI=y}%-W{jX`^BuyDY=&u7=A=4 zffy3b@^Fr7ppPYCk;9pjKC3}k$?z^8K3@-SYcMsdEWTaGRCBHsTNwzdo199;#UR;GM4cnokmNaoQLOx&^&qfr}mnM1_ zQ2O4)36Zy$xvB3y1hU+#%C1$NJ|#}xgZEWP01jnhxs+q?m*VcdWyEYwn=seXbj;JJ z;F<+sl@cblBDm5KTHlW*Kb3ASn{b&$Yw?H8 z*uFqf4 zxCQ{mS_8x42(1{b^s6w;!Mb7!79VN#jxG(Oh9(F1^SukkpzQ#7nMP^0`4`5J7a^77<^XlmnAxMnIxRY;1)5seOBt0m>7VH+jW{n zFB)#EAsAe4pH(`*;Bv_tfPR6&;@b>(E?roIVy{u`lrIKddOt7iShH6f|3^bQyP=R$n#zip5wkxLD~F zm?Qah0I)D{)6y8!91_gG%1kfJ4;!^!0sjFC1B06!^lOC62v-j-J6<;~ecYR3*;fV@ zn=meyinvMR5^T1dDj2xw6uUtM7jD-D05?zrF4jTRfH<<3ombpNEe;qS*M`&faM~J< zfy6BfchtP4!-F}060N~)dJ8XUDFrhRr%ifR;8wwtW!Z98ZFkkS7ftXmP>qjrpw|kI zbsOjl=%wLT!exnLGk?-?TEaN{=xm|irZ_49jC?Hpg>8?8`aq|IWEo{g%c{aEy`zDq z=yQX6Q4b|f(NZU1!$EmqFz|T14P=Zl4X^-FVkdoxIm3{cm(la<(Jo3x71P$V7c&}` zu_vQ|K=M$WifL>C>$1)BA$rneVA_p2P8d5?at7Q^_w<=04>O7t2NG*-$eHYXU^6PA zcl4IAtO&FM!wK2q%=ER9Xe}gMibG>Q8!5iovM-e9>l3GlM+CsevCGs-z-&E5C`=xf zxtg#$sSw9PEMZe6T$a3md2V&@GAy|lEc#$(Fe*rx0Q}WbjKFi+fw@!+=2Bz=N8dxj zx}+pn^eGRE(z%gT!oZp6(1O8UGB7w}3WlW1!mf$FTytFz?X?_p*h|j7H6i5d3tnH+ z6zb%3i`Wa_-(2!tF8ssSxqQ_=tt6GchL6He)_L?ROW)Hc#Z*Zpsw@vE~d0LrG`i)5IPI?nku)J5!oKkpKV#rEmj+cm>;Vc{4ORfoh5C(ACkcxGcG3 zxF!#W!%y{iF)zrp;kLJZGe^H_e#PmmnZw4rk{j#}YX zoTv$_;7KfT8tv)O*)F`RgSVYZENEI{QHFy=ScVu(lobr-zUXK@0M?GS0iK-5WNq9; zNEmIP`IqT7d@t{Nisqh&!RhPKVF6v zzXcOMy6ur#Qz__XAr^XO1GHF9xiZj6fja=4`}xUjU+U3?XSdsnvxfEURU`B)q6I4SyM&u@hy+J~_% zUS2$b>Dx1Nr{|sn_eviQCtID0t1?1gPR=Axru20m7EXwq6Dpg|d()+gB&<_0 zO*?pp;{4ELg^MJ`;Fuw@WEL1+Y{=mtVKT4@j+HF$Vz7{K7K6nLn&cvu;T{7utM4jk z#jN7b1cpJmU5@}PNX(z0p`Kq=3{FTmgTbjgbV9-zYjA?W{Q_Z)2H_He6ZZ;P46fdT z!RgrG7v&+RN-6<^dnG2!JV_;@Z{iePPOZTVm&Gx|C(Fv_P4OwkBT64t2E z-{;Rpiorbsq#!HZl4+IgBT*oo4jDe0gL`GNU!Wa(STej8Ht*w{ zq8OHm<(=nO(6@KNN`_jJ(Xhnrxzc8BwFG)g^&$687#2<@5BHHcr$HEdxA?E~^Twdq zamyW-*5I}a)&&)FiERPEY#s-c8xjT>LtVes@#@{M+H#8>zXXcLMTRS~7u5Pu9hWgzb-agvDPAIcFm}&Co;+9 z-4Cz3>(}x6^>_ogeKXy?osoePD&F5q!cbxpKEm*`7+5ek$H4r|OgAlq!9v1hLeoc4 zV!TIOmG(>YH7r67D&b3-Vj}&FjTgD1uMrA}kF<7co)$ae*e^Db0Kq^$zmZXV{hJ;D z-`Nkybl=%#9-SPin7*@OODyS%Y5BayqFkoYDF#2S+~$eoB=m9FILWABm!D|_qJ+Wd zl*?<3H)U7xY9I=b|h zo#k~X7>pWloexIf+if?X1^5JmQOV}@ba6cb1_!%7I(%I2`{7{#4Bot50E4HOA*g%* zVTH^1)z2=kez+a&EeIQ;%=YbKemz>=#$a6#?+5_Q5&p#BnNTrs9lb!@5wlBTu#6BU zQW79}9?(33B9?e+0cEkoQL9xJYXw9dtAQB?3Qj&aoki0fVs@G34^!VYP;(ao2;=d1%-pKQ;18A8pk5<4Ebu z!9$6MBXwfwfT)StOKZII=>)`YZM0=QN4Y+0skj~946{~_fHKdsbk`>^HqyOMcd zoLn2K4*iP6BO3iZgILN=Sqx^_r&-ru_5(05-d1?Y3Ioq?!sYAH;yRT1*j+Ud zk3hM20bP3Y+i-Rhq1Y7kdlgJBgYki3=fgE;J|_l?*G%&H7!OQaUV@pM6nA$vedkWs z%vAS2BGN}kD*8VI=|OjTyn5j2;omDcCzQN~PSTKiMCYV~b+N5fYe*Y~HJ#8eXf{nB zW$eR9n}#V)^FLxeU|{yrLAHv)*o1qO#&DA~p*zjeZz|-N^a%!QFC9YtgHbC=F_;Xj zHsO|Be#mSCbp54xN9)wVP#__)3=(HBI7`BJFc@q+95tA)+-sm$z{HTSVPFjhEv(C* zGAS%)Q8L_{SBk+Zk}xp1P7Ib|r$SXK(65n#F)(;gy$^%WX!tdvBQymh9@N0b42}i# z1qlOvMP%R%1}p0}h6TgGVhyg@t#bFG)Re;Aa*@{HDnn;keJn59MdTO^9(GH8@U8ec z>wLc&1-kx4sr4mluJzB6D7U{Xsv~p;eN!0=u+jGo2B+5GhTCsAU4Sd;bl9r7{kl7- zdqb$^4(sl)9Xd_l>O@XE7<8N_gIziGrUk6WzuS@^SamQkD7VJ2SYS@9<=|m)iY7dh zZ;8+}`Re4r^#LHZ0RU!jtO5QxdQAg;wWJt<@vlfkX!3c1ST4m{GWc8nX`~f~aZS)Z z?D884V3;AYAi0JlQ8Og$){*9Q7BFH~$1iiRu~+Uz^+DVkj$4DcIT$wv<7RJE8^p+L z0EThb;c1Bb4GcV-Hr#nknxbduci?OmKVwSaN+KZOAYJ-Zs z1*sB!EPIYLAFSwF4WiZ{YCGeuKNI35(Gh5Ytct<$E(#V-xNy8F$rk-%RDyfbo#9dF z2?nd(co2%smc~zUX?7&|mUgB!A{Y1*{Svi;0`Ta|NAzX2$iyauOh#1Z)Jk%Kr8Oe)60Ma&!H^(rhz$_TRv5-lsfsYH)?mR@L2ic5BIw36 z2&2=9Hv~iM$R>31WVOIoHiq^t@r71Xuo62ub_x%k(lYJ3VhzSYNmGfwEX+V(I0WX9 zz&Rfh!JbC%#H6fgtm27Xq3_!Z=~>M$1!{SgI){_J6CC>9uIul+9xgSLvwS%M z34yJ6$)}v`xftDe!AoK<(LUPi3i?p?CE0)OT092eD z0CTVd4EItD_P4$DtMTmM2a3T;!ocAD0L$&085nqRJKnxqUVpQD`IE!DUtHh*c)NZ* ziw?ulo+FCaucp&Oz}Q;X5lEO3lJ*=JjGyS|p^vz_jd9K6N+t#aVmUK8pcMBPp94&D zRD#D*3A=C%YT8G5MiE5mJ3RnT8YrEkFk#i(ue__hyBXu`IWyYQ1xIN)CkE5ri+h}u zOM*?jrhPm*wxNs)X1>`Slh7(6Pjf;m_LeK+y7H(&t~PjTa0S$!8AD zWP)wx&|>_=wy}`#c#kDr9-gDSUD#~z_O5c9KcvhBtRJ2T!>Z(dIV#7)85lmLqkCj0 z2H{njnZv)&sB{;P=%Mo2{G77IRJj5<@Kx+eCQ>YTlI=E_`JYpu1&m2&GNN_F?`xg^LTL4Fy`?F(>* z0}Ock{!c!ynMdTxwMCt(>h2*37y=$19v<4=o-lLs9vHlC0?9Ow(XZr=cY?aWuYamv zlP|yeleXe(VzDa3z$jXZTouswOaeNdi1VbeWe^8lPn=~&68T6wRigbm{aQUr2!MmA z0EHtHaWDnP37yp`2HU9MV63u3JfDEq|3bWmFEKbsM8C*fr>gVe-CJn7;KsPXYa{oB zi7>c6EY=0XG6HuO<@&JDTPUCNsYTrTEew`?4TDL8wd^8yXn99l*rR6>_6d_L-Arjb z@UvA#=}6b#fV07QKV>R;0S|bYcM!w^Z0mNXwXc|l{AB}Gn$Y%4e?gfVl1HX}C|=cy znnFn!{1q`%a3l`HBw}lDuGh-9irK21lezeOzndHMisM1H-%WSg>0XCKVKm70+Sx`P zf<=JgN~c(C<%-QL&|BoHG=CC^E01W69Ih)6bjHGNxo@-hmZjZpUlkS0{2M|>v&sFX zSp}Y1x{Vqb78T1Ttg51c;4%monpefvwS|4w{LwyMTo^1zXwFJ+k27$o4XXzSY0{Nm zq1e+bN-`#QlEr?qJ}FiQxym3@9j0aY9p(6bs>7_t25Tna0`OxWm_BS-iKl5uxG~K& zrg`wmhu6!edS0$;ZsA;8>M7qd6b(67`s*G_5+5y^qN2}h0=hcQqKFqAOV(Nq17;Oz zj>^q3%@&;m+Avhv(|}$Q!c-`+CxvV##cQzcfoDKw)8nmc!sOgK?T_ov#$P14?%?D5GEQm!VMOEt4_^z#_EFNfhEzzJXt3qqo6`Ah) z;6@l7NT;VVW;E8hDPA;3M~CCi z&;g*K29|JrnmWbC8Yip^F`*t==VSqveVD5d1`iawOBg)bb|GP^HO*V+$ z=|0%)iZPfppn?Fv?QOZUD|a@f*0R(BPPXOs<0!`96B72J!Y@fU7Q^7}sVO+N14pJ{ zi;QIqd}<2b!GR*cAR^&dV&aXqo{5zS=qSBJs!814N@YRW+O-ve>(DdtKiTx(>bza8 z`C>2ev+4}h%7$P|#A%#E3+h?NZ&7b^}IlPm6s3-`g#%1zUDL^~@` zR+XFp?KkC14F0y9p5dAJ`*;qmHWynQ!^ejopEbN}o9_<6m3yEuGWjcyymo7&)} z<|bcsKJ)tHJ3_1D^d!@p-s)krdpBQE-~a}rc3R2ZK7?yLg znNk%%i%mjP{r+oqmR&`MzS$~azZL9$%C}kAY}R03wl%0&hh)CEN zSOgM9jqWbgn-A7jMv=4v1|uCC80;3#;aXLhLD*cQfnl^S@aYTmbs_(mft|9vAzer} z3$iTt)>Y|gG{|NOhJn2kbfYfNJKXWH%ghS{1HCkcE)KvZ6zfn-7`$o9p6nP*YpKW% zC{CzDFTwSsLy0B+gwG5AC9$!@8rR1C;gWT+CvtiR&Lx7$Q{enc;-#EoFrY{!j=>Z* z{aIFDL9cATIxg@Dg7#K5W%_B@as8}L&dnIu_BD$3)o?_sITAZ(+e^gz9SmlZ36;3( zR=KyVLb+ft%kax!>qALxnC~rR6P77h(SkNuM&H2LLS)5a z80;eGjnfcsrDv1EHj;Ufj>Zfd2D=0jc5yy>F>kQ^XA@btw~-DaBu>jy+QtS`GFXEv z0$@=d7%V4WjYw4j60W6_3hiVD;qoQWn`-10S-O@;SKg${7a(r7RY(ED<*TF&!j!y7 z)${pod$MwTlQS^;DqXu)plKdb<&t|EgS4KR+3^(|yhRz7dN~Y(&GM}OCA>fxiD7WL zoz1l0mWxjtY<8Uuo?x#xqRBe>44m0IJ%40`ssYJFm&OyIGFOXcF zWWeCM0!L@-lWcvQ(+tCtynZari}h&^5~dk#%_3SKC$R_##4(HUWalf+M2IW}xSY12kARdl(vBI*g ziF=K}xq+y*tm@<^JGo&~rajYNWO-XTwF34ua0^A@8mu5Rih*Y>7?{1x|5?g(xJ*UE zLMImYQk70@RvlT4Yr7{pRZEC%z~J$&(cajEG@GK_fmS6}7x#Tdlm4){`LJYpO2V;x z!N9RKIC6(pe5^ADK8uVMVXzrOPb8Q|&vIlmK9#tb!|*fKK6kxRg||(xGm3brP{07E z{liwtAdZ?wn?lyefE>{DR-uc1ea7q+(L=y3NM8c=n za#GdF8Gc>PF!g=kJd#ti$3OqL()7ajBjA>t&D+`VwhjpoZ|Z|X zePI@0?*Et<@&JB!mbU|5?8C<;%h^qrd%{PmYg}ohE}s~m9!oQvs%0B)dgKo^i?1*k z7S&ecTN1iyW(w}@7d|Rjz{%2XtRPu`>y!>8ET?D=*Jek3+Pd4yA+19zu9b|#J|5Uu zT6>9pZT=+AL3VrdzHxETH82i1ZOG0rBu0Or8PVms1K(hy7aO5xDjTzW6n3BR^D@Fkr zcp#Hb88ZdzC^QRvhG!qFCD6@Iti)gNt;@F}X1VxQjR%H-bvGigjO2S59LZ_t z@|=!WPZOv42)kQC%X6Ep0qwjz+BFB;#^Sc$UR0ESdguv=>y}}I-g%i-!(evzoN%C* zHT&+*xND--$Q@erYdflPB}D9c>pF88do3t*ffqvwn-8fz%Cl^YmEf)O0=1zc3O%DQ z>1g$9*5DX}$$5^L<;#~C{7k=yr5-Pl&HA^oKtYCl& z#2VAeikk$04Qmrwiwo^ktRD$>2Q%_{wqgdr7EBA2l{HxPSFWhJ+{tqYRTzdGUqixF zUTo(o-2$5oiP>EwOtB2lpmf2Br5dl(&DWXMYo1)P@jBIdO%7?^hHU#yrgf37y~#E& zNZaco045=6rLvt13S^pZNMzd=uo3Iii zcsSdb+LXfMv}PDKNLD_0JQgQc$86HvOMJ%l5#OGTv!~`+uDJk}^Nm@dvn+RLn@~Fr zD15d0xJXaX7?oR-U=s!%Nux10hN!}A^O{Ce(X6%>UQ1RcRIZUlx)QSiW){quUC_w} zGIt1lsYggWMWxpK!>}tk=%9e;WXHZn!svx6CQ^m{q{hiytTL)l6kRd`C%k(pJ zV&N+EkHBt))mG)4mCq^JSy?ejf5rW$e7(P^w^wEjc7yP`ynQ=`fsY?0hYvoh@UwTc zFjyoU!LVVlF>t_O#fTOFYnEU!@Nw{xfz1SJ80yJJS72aj)?a*%yCq+y13nz7U*?oy zyMKJV|8=+jxLiL@ckdSKhso+;yndRlA1A|OwGRm&YLM{c(6sT%3SL424BkAB_wVML zr}6v-t+CA|2Mpd=_<9q7Q`TTb7Eo{jSz_&90Gpgtb!WifRj+&8b#8W@m7?)+)6Dd$ zKL}At-9tCticu{G#ugrj`z)bmHfihzux*W-=X2<;jpsz?~(w+ zXP;z{*rs=eG-o36*>y+vyD_rso^3sq6QcXJoWNmBq~8~a?kwk9@&W?CEq_(vZ-`yO zw=eB9|LiV(DW`>BRB|Sv%nO>0B;Fe2>=6I%!iy9v`a*EcEY#){x zZ4DUQHWH4VqPsRim~?-|=V_)zBtUPF7=x)n3>^HfWpJji@hBUcyS@gYm>U!rJUm2{ zd)J>MP%fR0u`bQ#VACE_nD&$YE-JZhzCFq(u$vP4~UnBU}^GZhtU`m3nsP)w^P+Sd)dG4wt& za1d>!PT_Q0hG@;nLQjpB&TGT10E1=nwV=7R0ST9AwV&tBX^snZ(uTo^(QojGuDG0H zu#>R)KZ}PuCsh25!GVNNoT8OzjB-VT7sba?B4BV##j*@rP^2Kn!0s@c*U(X@idCCG z>3OKIL2uOu1G|vc@Zbo8UrL-`(K1uL$ki@|!A)5oN#q;wHu;w%;9mJc7i?f~@im3X zlr%xV3&0rMg??daElc9th=GF$VjX3_keFb7Y_R51%Kw-wzOwm&qheoBZY<8mUlxcl zSaTqy$_iTrl!}2h0TTC4VXKPGbiSSfZd2t;pwwKTa~?X2y^7-7WT{P#<~@>8S5din z4DvhARy7||v6b}#G8dPq#|_1*98obHG+;LMS9@i^*d3&0F*a{%0kAMQk!`&OgR`C2 z`SwMs`8q8Oew7gzzsYvBOgAN3ZE0z7)lxYJU^uz)hIG1dVI+J>rWly5^@~F1y4XpA zz7>r}=WWi&M|zYkDpQe2w}!3efUd*7^l>JBx``?@UoIx`QPc z*#X$3_Q^+A_E?oy)a5n_*q9u+RF+aX6&tJyS!HmB_gFRL(d+jR?KDJ_ zay}H}E$gjGiGD(jtn^5!o^0jl6yR7KntT8iZ4%vaV)3!07n-#P-JLUW!W7~<(+Whz z(wvNudBxnY#pfy$)JGw!pUH6B(W%bs=0&MMth$Pbc-ch$>@bWmSlX&cLjcT0si)ca zLFML6F?oP58<4PZwQ937QNoVsXUk~|X*hYfy{{8K<#P!qiP|^VG!Sp=+Z#nQ+PNCVtRwY!x1_M8DZ)mhUYWU zakud5^AXM3VB)Km!-*LKtHR~&$f7Q>94&5#lIRe#1LB@$=9K&0QO92bt>kMVvYwTX zujYrXfq~IBcvXbH79-mFS~(XOAc@@EkjSgswvf>sKFMI8G~4E)IXj4fdFx)(&)txR zvwKP_F+Fs-K*M0(K)!w6bGmc;H9nV1f-u-;OIm66OP8697z$?!1A8D-MB{%+`>85VFPp8V2iqJ!ub^U^Eony1>S1KqT;p0$sC!E#h)f>3^m%{?8Anms?f~NI)p|7gWP>VY&aj@nZ8v; z0R`xeP+T<5sd}{mr&+ZeJxW{k_*<3^A|77Kwme`{Xv%E-#jbN^`8j>5Vu`nYT~2h| zc!=Ox4d0UIN+LNc@GQ|+`4`36*uU8mX^f7`(fxjOGky7E%fr<9*Zn;?gR~R66IK33 zj*W|bRn7{3NB*k9k{7^(Ho+74A7;u zv>rAx1sm&%c;zE4KsBA@)D$dnLoRp*lf*_~q+>&Zoo6IQeZk>B}4^JQ`WJ1D$hb7M+ehj@|N?gXohXm`!+THNWKQ{;m z`24P%ld!2e&vKfnMEED`P^vM#(cm48;^F37_%T#p3z}2eO55qn%o|yZNdw6+a6n=$ z*(z#9RTk3A-C9R+yRMyNSbYJ#Ck$-6l=On3BC0AWiqawVx20Sk$q~9HiMiL7{UFso z44l*Nm2nXUuA|=DR;ORXV2crbg2AxvGYN;BSRxG8*kEC>@oc% zd~0fWI;VX$GRn}QKd2rLq|0mEkLwciFx1HeUKxS1)p^B}P> z)j~k$YUxZhDaUC!HY;SbhW^%gTCxU%!O0@`D`6q8cmP*$ZyFM&S{obeR$sW6%Kf0` z0v#Nr^_*I7QuWu#+Us=VH3=A4(tbrc+j)~R%P@p&@+R8`hF|Bq7n#nReCHzH1B2h> zSQQ&zr0W-%rUV`afJtOqm&I;UWq&lZq76~L4P!D!T@v0K#kV)NPs2i z*qT&eU@`4N@HSd^QRYC_ws|;K>UB4ieBez-QR&*;Z_2JRLCjgi9lZSO#H=$-rya=_Kr^DOX!| z-wJ49VA59QuIr$B9ar3h%s0i)v9jaa)4pEZ)`MU?T9xsOiSx; zS3~~Nwko*dRa|r50DfUGFBSJ(7G?=AJole#k#0nS+ipY4g4pIRTKGuh;scvev;5K)p`zX1>$L=bj|po{B1Bk12)Ms6@OI% zj-EpAml7BIx0G+7=Ghf}RU8qy4`=u1RJ7HL{r{5qDFxZO&}x0Hj7U%K052PDm$jB^ zFxA7_GJvi@uWZFO3JDFwF}UM|Y#0p30#qc_@J1L+rgB!n0r;yJEC4p?FDs!jU)J5UA+tGnUmadP*0Nw-cH&r*>W z9!4v=@&^)Q+DUqI%6rdviot<+O`a!E*m(aHntc~D4(n7Mcah$*rm5QG94GNiFB6F{ znA_-g!_DC53>-@gy{G9D`JPQUUJc?HYyfOxWb1vC%(iMKhv*Sed9D2uJad2x96GynjAA4=}!v95E+5x z=WG}(GjD+5h;oCVuJisFB!7v)O1!{eTUzL>ml)hLr|3w8!9wE58f+4+iig47ayOWN z5%O#OtYdKA{h}ozUM*`%I0l)m$~94>C^HeQ(aS)x@jaFhwYUTc>h z;c8&p?ZXn=^rd*d7dSHr2MmTY*^25`VZH& zACardkJpt~8rEA+2ivbarG?E|fL2b6rN!7_N(c(+w?CHKSrMxS_3?<{NTA<#gi>W*R`R zticp`PSh{bwSd9pPPW)d@s5^w=ekLjG6?JS&6Im-q|%3nvn6iWKyxhBhj}mz^p!_+ zgu%6O*2&f&nGZ~^&OOcWA&ZS7NKdm3&8w7a&hxU~%!+)~y%l|cFj)GW0Wi=7+=|~8 zO<#8B&8{IXFbNYH4-3yopjDeyRsoIKG(d+#4?_`@t8-;!e#?`aK3icwQ`a0m1C*kJ za!|^c#YS$=HY<`8N8>$tW~%Q&+ulgYqYRCa4re^H?yC!7H$Yv&JbkpD|txOx-O9C$9 z9*(x1(GFFZ4nt1VJr|CyGBshXU5MQrsk6f^=d51|y3ZnN?yXsnbk#CqL*T+-O)_kT zohAPutRU`a_nL`3Z@ky^a=L{5l~sqHZlmGkg(yR5@wa{2EG+`8pkRKQ*7M5TM0?msLyZ>Mnb?%fnf zUfvDu=ZMT8THeSraDME%iFkNZ-G7+#O3MlGrn|URq$oFy@)416{v2(|@9_N!gB8C@ zWUJ;P_>Z*v+j0A5*WRz)cy6DkZW;{^l~7e|rzIirVqQr^q{D5$Zy2l!Mco~zS)=au zNY>!4ru=nJ6R*=6A8VZ?oF|Xio*IpVHE4b&x*|Pj(mY(-sy~u$ST+Dw8*6dzDbl!hq^h2K*ECIAe6Kz+$8H-UoKP`9&)tUC4)l zV{zyOfT3B(U{)Q2Wi5;t*d@YXZS|7W06&NRZqu9{)D_Z+tnd1p`~K?KQ#8tBe+3L5 zI*0cY_j&fH_;cDlS$zj;0QD1aw0)W!-iv{c9~ZlKVDQ9#XDgBd?WY@%CANz?(1VjH>?46=3~r^s zU@~I>4#evKT)Xnv(Sl^R2D>TP2LOL5BC<5&u@ z%hSOrT5RkEv|4y=UemGzdzq^UgPnmb@#9tQNBGuRS2?*?S3XaY163O%S=@a z%*i+dpTh08?AB>Zx`-;lkZ;0HQGtI@x})LE8P_Ok`@xz zjDhP)OPUwOR$AlNdBZwMy{zCaud?3ed}CNHb~VW`icVSod-CO8s@l)gM|s(ACq?Mj zW?ItkqSmb7V9a+SYw(ayvC!YN8`C@t+?vZN+AuiRoE0?LiT;zp!0z%v11FPj4>fCA zg+*b-(WX1v^xUipG1{21t0AZ` zn5{m1*P2mzLm8J8?~0Mh6yX(=T-Rg<=4ed;+Szcba%Prg7!LPMQn)>gtsq=WqhevOSXT_MgYuwd z5SD>jLe1P9dMSFJ+lYka8Z8WdhGDrze+7f}|M&!h zU%Ep_Kx@!wxagw%7vpc0HVmeNClT)=abi5FM}4q+I13rY2w2-dMF8bckY6+mtRF5dDNGPA>d~&{&T{BOg6F-IDwH$1^VvYP z@u4HxcVzyxX_g`+4gl;?qfKHAu6VHM{$BQBWU#NT?k8>uS=^6y?-$#5Gmu!ZvhK%v zUbkq9dP~K+htA?|V3m|b!u#szwl42$sf;S=4UWD+OF*8mrG^L71VP0ZE}WWNK9NY z*XetAIWZBR$a&`X2>FC^^&c&+`3pHcx=T2#_&ooT#P=k=Ki`tmz5ZiG%_)zvzo;}s zI~r-(T2$K0icOXw8Qz*FOC+>u-9@!ADF>NatYE=O6*Mw4fMKwf;v5--g}X8vB96hQ zFznL>cV?yjBA9}mZ+*}kPWABX?5Y8Z{2S<+6LB^jX}dR`$e z?RhW)2LLvI?4FDJH#rXngD_vH^**R5G(N3)-K2qNx;Rr{Y?gAB6e?SE=teXmS`2JK zm;($4Sp97x&DM$36DEOs0}00%EYU8os4|^_5qT|f32Vc3yZM6+jeLE&hvbcZ=jHyU z>KH70uM9<2p@A#)JTtHvgk#)&DdC(&;JhR@e__M!gW6|xzQXC|xFG*|-I-GiRvfI5 zc;;b^3Z^@zBn%v5aIglS@^HZ53>a(_E&63iX5!TcpaQc-a z^fLyFkVV3cq*b0#$mm$i>U)xi#Mn4saO4Fo7&Z{gMAHRZ&SfBB_lQ0d_lu4&I8GS% z2Fi^YI2MXQyr6HYtW^?J1>y!Umc=;G@3VluCV_ihPL0F)fWeu{8_KI5w;l&O@NXjF z5FV$7Jn?WaG!{27D{lmHD^!!)5+=7daUCheY{@%aTagg&dn>DS2J} zFC##uPr{->zpjcZ?ZiZd((AsFL-Ru&l(aeoHjdf zy80$vyGU2f6kIo3aZ^#UDxGY}Y{I2(Cf`jUz_9)4fqS$107wt`PWaL)Wf_OlwV|d{ zYEBFE0q912ghF4rN!uvmQ9K`8jW7I@YytdioPwG3`@@xqOshU8%gXb+#s` zn{HK$O}+rITX%&Mz^%Fmc>$FLx?7*U6QQKtPx&Qk<|>7Z-t{!nST-eHKIb5pX~SUI z*<^xaFJZQ{Sc73s(pRZd2hurc6B>!IS%G|Yffh5Pef+qDfn$TPxkj%vNceqh6Ltsb z;1_)|HuxNa{_51lNBrI#KO}Ycz8holR z7u=p%dg<(sY>F}1BqrfVA`CvU2FoF>tKE&9#nP%rRh<&=SLFnQ{aP&H_U&*Lj=^ZX z0B~z+Vw@}t4vGZ~{8bD_V)TvW#a1D!{Uxy;8ZAx6K!uLuoiy8~(=Tr_ETnh4Wn+W+ z9?kgKnjYHbQ@~qSqoZ{UHWF6+Qdb%PT?_aue{Xc7*-gjZG+Bc!1iJhk(4yQbi;(aL zSnjqr+P6ju^wKaMHY4!q5)$4?VAr1EYb3&8Bu=2uE$@fMz_RfooQdAg+dk@G|At*u zgDRo6U1fNvE^d1$i?f?9=VK;T*>4eu5$+vsdq%&qrivQ{w2Hl~!5y?|+_Yu8d$a8x z_nn1)sKt)u=5nGN%Pz9?3NJO;5(%%LO^Bz*dm17OPi>PnlL*M|CR{xinTt&nJq zk+0r?v&=6g-u+b0%KV#(JwbaXX{-VRo25?l3j?Dn*pk)3PUZFJWdW|gU|_>w2WFZ0 z=9T_N-K$26cyK{Ar1FvqaU{>@dpe-O_U)MT=5YcH%MScN zJ}sVnc39efVfA|IG_Bt>8}b0k^+?eY^}PBqE&A1uVEbi!V}pHy?@u=(VQ&zmZnd8= zI7pkuO06g*(XZ4y$Rj$!V5i?$Vz>>7v-F7wXk7y0vW(;ugHJOp4wihI;0S}YY(_{NTZZZ7d2L8MW3Y2?kjNSw zoT4+8Xkf6wL0c{D^lL`oSYigIOw7RNBJXIKg58Epj!zM67;IAq#~2*)B{B}jPSKGy z*q5YnI+`lJGP7l8)sWgQ>JC;uQwB)7P!*>-uXg zn@U_Yl2?t?Rq4k>^*T|zPLy8*z?a3}A&JVxRWo=iOuMGZnt@?GAs$<*Fz9A`oqQt$GiUqR^st`p6;iD? zvR8MD$zC7W}BCp`lVs;Wwvoy>E_BvFPrNm@|{awcfOfQKU*L24QQZmZCEHP zhL&QfSB45G9YxQ|YDn-T&#L)I=i*FxddzA4b8?545m*C*8*UROJ%@^A6Q;eO;ow8< zE=0c_#V&TT1>xlRYy>FvOMGa=h$hz~ZO+dYUz%@K-3jIU3v_)2JC!OXo2N8L%F7D6 z4k{pZ8l$QEA8AU%kT>lHW=2wYE!My1&vf; z&S(BaG;lOVTqD>s1~#!Wu^0x2S(kJm60FkkQ!=jnFU$RSc|Rc`AivSPwYmg}C3G#i z1XtR4K=#*Pcg*fd8w}P~R0^Iu5@E10KwyvGAZE7J+(r5s%k~K2*#n+;a@pIALSpT_9m(aH#q~Uqp!rj0X}!;zL;W z5#wYlV7nheB_iQ{_2$!p_ZfX|c|YKijVE;z2KocV6&btQbjo7UO-Fz0q7Pr+{$|)Y z9@@JFv?=4cnby4?66~uWd?2nYvHFmyT=409YbD8nZw0Z&v{o&*PL9gnItg?&Z*X_C zAGlvMwZ&DbfsM@gh{j?l+_#p>u>&ETo=(QD!c5s@nxWV$F<)!ahQaOez870;{wnd8 z^Gi7`@cois7iXIj+g%J)f0yued!Vdc?*xNQ54PoBC1<-lALX~nDHsb-&n4jQmjE0w z@QdKWRwxD**$5Io!C;m#1ADM& z(hj=4U=2ou!9u=>fe~Pa3Q2HLbO-Z8dwHXI2laEHuiQP3 z$JYGP#?noj2!k!^J{@0wb*GWQ2E8&7vkPj#YH`_}Yflowc;WllK{1 z1MqBEp7cuna(Ub>k2|Gau{7zIrh{@XSDti=qfW7tclxy%i86&&s?{bC(1R`Cm5W_`q)+Qs-6~M)iarTRt&5V#byweh#dNEjt|bkU zFRtswt4j8&l(;HhUdawDi|$qNDp3S5(}{Xna|jm`iF)O#oJ|z2?94AL;MPU9kxEsQ z*X2~AQB5>z$yWWkSxZ!M6iXBmhQU8x7OpQFjmuI-QmvzPhAMZIxR&R>wod$EAW z0fVm_*U84kb@j)q>JQ0Q8t%QWzqxKEA>pg~>qMR7r7ufAUey8PWD-KI{wQf&Bs0~-dXh9m&scE)nF+An9j z@}ss`&u;oFmb^%(X9VRInVR<@q2x za4Ed^!yGWoH&Y#@!CiP*L8K>HUQ<3Q8XdkyeU>)QaDAG!zi34xVT}rwgS0Rh9yXa5 z+N%nXsUKY$EiA(_sx#0fVg!$P5;(6{QtfVF9Ao0e!-LTGK0xufMTm9y2cP&_ORk2278NqYIx{BTy~-lhr(3wqb`WA%Fm{wcd z`)vM|^_#TLM}@g4Js?GpmMW?CT}tz^ZX*EEcbjy0Hy;KHOGAGL^yo2* zo+54xy*Sx0y_0%Fcn3(>C!ncoO%%?AS9+kibATmY5!%4YjLHQJ&yIuj)AZ)k z>hNi`{jg-y?6&6&90M>AJGiOzZ>ob+F&I8&;~0+x#=a@W;C=Z-sI5A`)vL=33~&ks z`S5qLyJ}$YPKI1WLw0Rcu(PgNeTA(3n`Q6rrn4R?u(si)9OenV;o9!`0s^XBGYpatg*Lmfmm43&cIE>Ti~CIe{?0A#t&9$XT5(Ve45{XA&3t zixPIx+rk?q%b3T*7fKn^x=lDX1uFp#X}~aT6pdAE3J%zOO247Jp^Ia%+S0NH8!syW zo9LHaVhlFiCE@7na7zLh?l}*y0tUMYl!S@}43;Svp>-W^8!LL%LuY;L(PP?Vgivv3 zecSi(M{;ptjKM3nm#27W0q06#Nu#Kzz*^ea_xC2w{fu7KH0IC5#0=N;WseRgQ0 zpZL?KZ!(KQmAA+TUIFvVW1l{n+dkPfGyqLDVVGGMjM}M}fu}r=9iioAt#=IWjg7!& z2Nvhs5>3^^Xm#{6n#Nfs=*9@pb^3LMZ+@OwV8qC{Ot5A0Pa1Tf6G(D;9ltjgL{U-*%AzlbPI;TnrpWx47Rvg&6Leu zTre&!V_};NgF)X$R^gT!nH*A2QXt#RDr9scozV=n za#|J%!@%`i+Gh5FfzwT4ZCY>}k#IR-44g=kZo<711K<+em+w}{ysj0lO9?qkmo8G& z)~Y0%-3m;e>Xnm&M!NYXS$~si z@KoL;Yp+s+dTP{4*00G)wJwo#JE3$vk?NLHl<#L0E3178>t>p7GMx(z8*clg!6q&8 zLE_*G4GgDivI%Efm-+Tpsht6XVPK@#zbf=(JudZ9^6&3!GGT?z>Zkd5s*07RnUiXe z@F3F|=j{h%vB?K!pI>X5Z_f)2S&6eOq2h>#(k!p?gk#FVLwwehw`KKLrfU1MEVrP#^Kw}p` zp(f7hO*LlE^DXd$#q@G^HMSH>2!>64j2Kw_xj`?_Sl}@wWhbt?c0gTbmxPJ-p^wa{+dBJ@{4|UjqY2Q97Oiv z6EKdj)-gEd+d#JTod&~Z4YmUFgLZr_rjl`CiNkOpVZmXH!Tr!f8_`{Ry3X5iI>k+4ZfScO`Bn64kEz%Z*+XcOu>0}Je>F38Zz3!}fz z11@COncq!TkCU6vHym9^X@AxcS)~8R|7H9?{;v~rmX`R);Ydsobf|ExuG)uSsad~8 zYV^%A1ID`_b=kMZ;QEM;ctBJDrS zZ-3U*N4K9h$j!&)Xx|*|Thn7Vz%9^w3^Kf}4p|;+!`s^MSRw6O<@}5|4@1A2H`wjN z&oDgLml358mG%4a+dtnfj$Jh@Hg8hCR!AK2_=5UWSmYX)KcUbN z%UOYM$=P0CmlNzcW2(PhcKy-aZgjs>OLDg9o{Bt~ZV0Mpa!(cf@ z!(bW%eA}OF+uMiX`mRskN6)ByjppcYAl^GVU-?Dv-;TZaT->T_b`mzjuUMD9SX~bt ztN&>=Pi6%dwDG_&@JiwIHJoJkZZ-j`HIs0&ziSR@*pb`bgwwd~?>@{yWh;-2*XsDZ z>$LGl8sx&h{lTs$5~fw5k)f9{9(D|djaj8Rl4GzQlY^oeflom9`w{@y60VMlbg z-LAR8%lTOZYf)oeEZlU-4ZkSQqFinMP~!2%@v%dtY0CH!A8PDT;2-1 zCvDzIHu*~u0WcyY78U1hR;0XgAm>GeguvL0!7Ej9^^ zkzC_CrzPl{&T544RkoP}dIJVG&EK|>5e8Qi8DVfnv6*BFzD(DWpl`aGO4riqWiRXuan%wN?muWE0St$ebXO;i$z(vR2WA7$ok z=JM@wwprA&RU(mXabT{c=yX?Sp}oaW#TOLbCdP!^K!7zTI1;5WkHjbb3WI^= zEZxv18H5q#2Mm^vbW@33_p;c#%5{L@M6R2Vk2E~oNfdflW*N>_HH%WFG2+|ERuRo4 zENgI$?@glVg8f@DRY8bv6=7;m1|KSn#*x(Vt&zP(KW)92B~7GVwNeLOv+hvcBAQb>3C>Oq%{gw zRWp1DCvyU{8fsqz$#VWwl&o!)Mi3I_w0pFDMvttr)YxEDJ@G0{q!`=vKOH@oRplei z8M^6Jr)Op~pS9SEQP{LqnT08D7FXkHBTwZx1N&8b4bnf=D^K zbWq!Uyp_K<5Wap`nmS7x4JLJk!GUA)(d4z>dLj!ed8ABpfC~@_*azkQ|6KAg-rR z#EPjSSAv{~g!Q*u6HW+*5%;6^GH&t}{kq8Bi$nk%SEZUKF!1_m77W6-a=S(6Kx__S zrOn7Z9BjL?&Mh@`e6D@RELV@q@lMYO9Hr-$JKX>6f1Ul`|KC0g%mR{i=$_%#XZL9f zYa{?hNN>O%nLAq3ig{s?Uza+lv_3AQEO58yP{)$Y?yA1NAE-8oDr9L+gNW!?3G*T3 z#6-fHQbIo<^grcBUUQr?WqS5!otKlsb`>oxcP-wB&Er^;{rB`3V;oCRX`^u0PZQ?mH!KFkGauK;rHd9pg)pfuwTp=!i;aoX_;8g%6v=C_WHWK#GW&p z`x|A`8r`mB5SCx`7h7K*(d91|K+ekiof2cPWQITnCquF*813O&8nUS>J8vx+ddzX(?1up`(UVKCRV1b1(GH}9sa+diU>K;4|r zteH_tOlAuqQtMh|QyL8a>VwBOaUPE8&cQgoPCM0%`X!YiX!R#{L zznhMQvT$sR)&L&X%)>VW{jac_4P3D5Q&@<(f0PGevfBVit;|Lm|{Rr${r;K&ZF6SGl! z)-~845KWMIa^Ws!`0XzAdf0fzB3SN(OwCTnfqrdyVhYYvC$9~w>~8N~2^{Uri`{vt zx2!y4uw0{!gbjmb0d{L}pyG&uU3!J`s8Jr&OR)@X*#&epPFOLq0tU+z3=(Um;(or^ z%2ayFmtV9wMZ5Xe{GwwFP9Yi?3{^P>*ROJ|ob1Cg0zNT%uMM41>X?WU^Hk1{V@6ud7)^j??Z?O|deB z><-UAUKX!K#V(cnWxX!ruwk%x*!-eTFu0LOwytCchHP8ut7cl}--eA4R+OyQAn`Ss z%1=v$@$wXO!rVCJRzg--5S!R39tQ?{1 zg5g>+0}r=qxppa2P55KWcAMFLSC6DqzXqGTsbtqMxc(;9FJ(rxOc&gJogT{?oNisp z0^F;nhON|~nd+n!H>*=l51Yc^=9_#!k#5=;;06pV*JzCsu3Z%RiJZKn6LOY@gxw<= z46a?~8kezaw9pqAZYHwL1SAXqd(bQ}xX``wIg@IdL_5nTR2^hAbJ9?wg3*ffT@8wS zZ*^dJRBYQ%toE|llF7Hwn#(Ub$gD8jHkymzBi+zeYkd}cwDcuq)HpHQrcd{PmIlVHh7dnp1|XL9Jf(Ulw&FN&eVNdsFp&^4u*%~7wVgjo&J2o-h<1<^c>9U#qBSdpvT z>?wCa(--YGTiMK;B1R1L!21q~Q%+Hfu>VSbjcZHz*Nr^;XR(sp%j!q5c9sU$-J$J-b^d<4#4Q$xOT4{O zKqBxw;Z4I_fSrIop6cwP8bIWiXC2RXAzv#`qh912bBrIG6dSd_{Ea@+8 z0){}sXX2D=7z{+kA|wtl97N_*Ltj}Moq?b8U+gPWun*sLK#eij!~ykGC_oqPz4&wC zFPJ$l9E8F_v~OHP%)p`i!*ugB+dOGTA4-xFbF~tlz8x!S+E$D=<6hlO$Vb%(f77?! z$zh<2HGj6n|KopK{XhRVG#hUF>Yl>-qmRfHO{2VcdB7Nt5_FrUW!*nw=R0qwypz^-B%s|b3PX)@Bg$M-Jn!5zpsjR}bzAFMP{ zgz{3~Z5AcY5aH3IpK%GBC&BQ|=hgA^8o1rPpKssUoYfzf$l>$y_|xY0CkT19eLF#` zo8I(!8}}a;cfam#eqOEKjmCGi(H+EFfBfVA?VpZs|8#i&pYDL+$3IA*=nwyN|Mt(f zAO7j#@sG#HKOF9V-I2fluv|Y*X1D$MZ65%(`9h@L8E=odd^HHmXhL0sSS=A@FrOz| zjTo&3>+I&On_Xu&^Zy8josrNGnRhYIceL#d)|w1SwFQo~cE;eAc1%l1TV@j)H`(ev z)Rx*eG$+}F#kbHnh3!eHjD+^bPLGG^wRz2ck{pP7TCw*Qf1hpj7SDFkD*4Lf z1ZaCLbl<=tW_aOrOlr`*3NXM25JBIY@Ry}ws(W*Q#+gtl5$l$L{Lb-#tOI;I7QSfZU42ZGU|~*xV2IZ^t068G$?7hY`&$ zyQsgol{MJN)_>;GUxaX02x&zVi~?eLWUQ4KSmTEe?`J@-1uyK44?QJJ=%l9fQ}?6A z!)W<9K73xRpEQMpdO!tw&>v*Fu<3C)z8TPkDXjgjC$sRjM>Ew~$qpPuO^q-(z7?k= z96h*~;#S{C%>Nm!)f2Xyl{zwh$QPR1KHTcvFe7jcvW0sm+t%{7hZY3-a+kPW+(0yk zku*IO9&eg+1?BE>lM!~*Tv@XU`UV)xQF!k53YqA2(kO1ktig5_I#ss-hb34`4K6UV zlRwYbFWE(RV5FeXbkk_#b;sa!O`9NLXJ8E&_IZO%Wa$+ThZ;tCnY)aQZBrQWOQJT& zH77>Mi;|!>mMBEliDftnk=4tWCw;j_o0LpKdfYAbi?R=!iC7qHJj}jeaG|AyVQ|{; zI90H?Spr}uVUL*Al)YEz+en*OxGcxu#wiA8GV;=mF*u=^!H}?HaNRJt0S1eEQzSrQ zEsLp2Qn*`ArkdqKzgFm1sXSG-5LxAGxkJ~B2;7@0y=LE}g^QA7b1kp2!R1R0C$43) zjTD>2v1T;RG&0$4J=bgKRK>urjg!k)^@@i6<~2hSOrC5v*aezRwrV~$SWeLtC?*p% zO6CoNVc^tdttJbw3k+N-Sbp;ITNr%ZxVkF8(i}(}zIv(HSCv=h2>pZnpKGtp*n4?Z zzfid5x-zxe$X_)wG6=IHU@Rd&aotK^xAL+H7k|jq()muM*sJH-6_79ovkIB{#sY&H(P`j>NTvxA?jieGSt~QsdzsU|u=}|4+Nr`pa*<>f5f^U1} z%&3v-l~X;I^;Gpux}8aPbLq~NXc?w$CW@0cg((=EkSJDGLI&aXC957F+9j9$y>jK~x)!4VFzfctj_1jRY91L?@7Nad^cNxUKec8a8YW($zsuiGggwl|j1N%kede zf%)Ei_`!&8m2VitEp%4p&a%{A#8V{|ormi)4I4IR>Ad1j3xjEKXywtj#9*jd`cW!w z6ayQEg(1Ox;LsQtl!d;g#}Qjen99hGD3>%tHdT_({2@LRU28{}GcssU0Csgv&NM<% zr4;>HMaC=5KU5v;>KZz0KYG#Rs97LAuMD?sNZ5Yqae5lisOgcORYO@_OozZPoJ~|RJB~SXD&YcQX4sgsva{8nNb2O0yw1h;`swHm{!P!=Lm zFCIGbmxV!Dmw>*i&?Tnd4NKcSK2{I_`*FH?yV$;6h=k=DEt{}yveUSi$rpWM!fT*; zzq(5f@iM^f74<)+<-AQQ^ict$Ppu9MW>6>RhcyPrWq;mI@$X_vvANd0-N4|HiuO+XXIYkfGjqzT3hF&(!ekm1g{UHBmO>Xpdy8kfW zK5=t2AkCbm=l8#^Z-3t0|9%exb8mO=W{|2vJ>QS^?-!u#hkv|-Z*PCufWf1?#@j#L zJpS>u{HKS{|M|ni9}YnE{@t7-E_tPGKr&Bu^E6#O za_7PF>F&cE3f}65p}EOU|CcUzD@m zza?jTeO1nO`KAO6R#bdpt#MSKsS}TAL;zy|yi%Mbn?K1zJ%?fefRROvzS=8FSDG_X zR-m=1Ou^2*EHyu{A+ZB6%;STHsoXMkJ_4RdU?J@lnSy=aQw*MLo8a#5N#SXD8-M|}cyf#ZP=&Sx$y<}kEDAJXJMN?8R{4l=# zw3r=-v!iAnp4(4h1+BOp&XBv&>~1)J7%rd2E86f+Gg@*4c&2xgL0Hz{ffuv0h08zls{ zx&#@4xdhT?@OKQ>uM-6W)7W6SUfNW^cD(^&heb1KR4K`-TbMZ|%Ew`%%?Nxdku`V} z=1+PEaX`9=^}3$09^H$Sdl5%d05LyPZ&IGl!tYsG+;?uQX2P4<94Z& zHw=!0NUIXLK+6;?|7RCrux1j5do4JYGjNQ-pl{PKIJO42z+g8KYrwF^18Xem83wyG zSoAA*=zzhARF%Cl0^?dbrKxQ%IDt~HQ0(S2&AftRmF4-Yh*|Yqs+y)`rhc8NzR5MN z-1|DkjtV{fCRG80MZeeJG=$vDW$TwVwbE6&TdaqZMY{kXvM7=D-FML}_Xh?9iWTxP(mZgk2NdKT=!(YYVRO9Np zesx`Yl_=S4z!fO>hbS%IWnE$hK62%{{*u`PEmbhv`$SE)w zfsHl)ux3KK(#%QqY_`*oLAaUcf>VQ35)7^;IOuh+a@DP6`Uwu2to@j3zDhPmt{`%nvTj zJNhzXzR*gvfLm7GM_OT`Wet}3m%U7kigPL!S%b|WT##JlTUUk76#%T!0yER^rA{X(V7)niz3pP=UtkbSlH$kp5*ylZ8WTG zt!QaLqlrh0ky<7dO?sHwB&Ff`Jj1SdQAS2!h!@UbIasxUVRk_qGssjW0HF|6NJ)zZ z7j>ze-Brf&<*qCzWSO35JNnz26n(kApaqhn0eJFAkzTIzM9fnZdZfZ;Z-Ig?Qw(Qf z)(;tNNV`gEDyC|)a}WkQ;d??5%5zpED4=`de$hs!_D4_{%tb-MRv6$9 zK*G_dAk9W1eN=~T(5iB1->PHDx=Wn^2}i7sc4*0pg$V!a5GHoqI-0AXdJ%$qQQ>II zJsfL8PB94yAI|6}BS-DORu1-pu{ahs9c2SFQVFOVZp2RP*s3=}F8)OjYjUMQ3cJDjTfm z)VbHlQ*oOS<;bopj(sx17vxW!gcVNnZnOcAg2z{|7(=}00_buFo_~iwV=%|vJk56R z7Tb3VU>Fi+b&YTolhxyNaX+0N2fX%^1H{#VicvDi*}R=CA12a2xO?1c5Rtq6VRrLB z|9>Q(SBFo_&3k3e=)!NhZrGgP^+!8s%DyT6YC*S)F}T8;4+gs;s1K7D+x#HRUXkc#EZ~#W=p$B1>;EJY;m}?Uc3k^dg!(+1eSO^bMe_KS+dP{kT^CKLk z5n1RWqYZDA2B(3$8yNV#`9jMYEH68Aw_D!+w7&a!BS+;AOLQ{sFyJ~n_DLVKb@T4e zx5&qTd~{#v_y2H9;{Mm|10?**_WtMX(;sd=|MTO+ANC|3e%(g_k$fx*8O08Kd^DaZVK*i?zP<6c;Eh)? z2u+{5X(0A!QwkgOsynvXk`Uuz_3uYvuoxHswqL+wnTw%Z`;9BdrH9etaRde1f_R77?wi@rFK4^jZvF~gjM{{|W=|?;bnl)w8^jNy?fldVjvqVDV zXCq--a#jYtvK~p?_G`lP4Ge4-C?_o52VLDr42-7DOJaH*OS^V3cwKALS&MslH#B85 z?+>p5<#mgkgulSxM#R8cbrOy+xWTHWEml@=hn6@JE2M6geWBv^yePkD^N|i1JR6CG zd%4I*+HAjO{w<9*?!Z>%2m2q%82zYD1+D>OR^F}zht`Te7cofJ1>XiaSr{xYU zJ8)L>274&!ysW|LZc`YX{V`d51sjKXgKgOGWep6@UMihTXe4mfEW;rpbdX~5vi^+0 zNWkDkEpgpQTvdg^m&M=7x?4*pYU!)GyrZv8oqg&M!H#0ys~b<;6ksN=SI{Ou$y~*-Atyst!%%2-7O|H zIq<7w^_7MM4;p6mEhZbUv*Xv9Nj)`gLGQ_SCDW;=s*b@ez&PEl$SJy=$u!@{;klE5 zgo{&QaJDUbuQ0fAAOO^TvfaB`Juzm*kFC|>KNz)Xl?-GvPf9@!eBmr z2#wlcv%ZF;I_S1g??`}HP@?EpN|-RRZ7#%UV3U2HOj%CMI6OiNbf0ADny#)%3^hf< z4wkHf%8rhvw>8YfstJ>Zn$wS^B0o`pdQ7=&bqurB<{AL&3}rr5tRN#{F}xcasoD8c zeyXw(%O0XLH=H&FS0rghX->v1!_~G}nwoV!oFwJ#^kjh5Ih#AQ8;5PH^4W`Kk=r8H zwaa7|dUPSHT$j60jStM@GVQn(C|!4qn(fB{bqavD+A0`^ftL#6-COHlfX+&%XBx9v zinwaa7oTvwx&w9^B+t)kLV*OARBL>P1#_DzJ|o0qY10dz_N0Sg0^o>o~L&~(EJj^zMsPJKNK4NZZ* z%^s|0q%Y2f2k&?s&G`){{?-|wIPc)0s@3qK!! z**^SX`|$hi+dtj?{D1oR`1>6dQXWD+d|Z$~jWdHVH=p+bB$g@I-xdzUt-kwpzj^?V z2b2AfMoiOs!;L~mz92p{E>mwKucBVO-K2MW=-h17AV8HG2EtWa+hv$4iK0L&)7nPu z$QNhx9%;a^%@}8n9vUQUZ@9Z;cYKq$R7+LTw;{oZvoV=|Afaz?Z`LnGYig{KG>Rra z#^4|{vu3*{O)Er0=af!)k-s@_&wt*0FO z_s9tasRj7U5+h$Mf3d(zX^ieRG6w6M?{0dQZ(%TUdNO}e z&Th#6f5^$z34>{E41gVLoq>^O0QR&P*kvh$Fb$@Yun}^gUy(4P^huOy+XVNy&L(n`l?Xx`BjYU~=fzZ$B*s zv=$LVe5)ZpVqnMM`Tb}~J;uQ6w-b6FmLLAOqt2yaunp?zIRM8Z65e+En|4naOru)o z7U>zC-WJ2)=)s+cvF{A_flP0Q{1Hg~6PvpT7gJ8GdD3Lc6vrRoe2= z#Ms2r5LaTJeN~ki7kQI;kyxUZw|P&fJdTfL#4CYd6+t?}Uzu4-X{uQ4SdH%!S0|jxe|~=~a4p#mX8rOVfcy1%taSkvtgOOlKRZYa1kdU3h(6PSz&93Jg|=tTG8X zR9BK!xN)x-zHeD~ib)Z0HLT8wN`nbu9}C zWV|h3K)(s3VI*uYtW~6zazE!lyrth=)!tk+vp{d6p4Y^}FxcKy1MPc_~oo9R@)p6oZ$y>hzo zCOdkSs=v<8>)Ays)w~k@_G+1WCe^AWyRBsTBGa#?2TeT~nS9@*S+->dPPN`-8gIz+?(QqIt8v2=moUnGd(%4ifmuQDp81l4vI|OFZ1=nFJ z7io1Sq$xQ-3v^wRmQ;#9{f)dgIeDlFvQ_2M|7Y9QAH`7}%V~GMnfGIGme#%`od{P7eyu>ii=NM&u*y*l)aQ{0W>$$T2Zn zF=eb~Y7?4Tc}|af)uxcq=%5NwGu&x5V^f7y3^9dU80=0vG}AQb-F4OCftfC@Uk_mf zwdQ<6&jW;fFt#hZ@{Z;NWDsVRw8H%EfS9d>c z@BigrMZ!OAEuIs#Eq6fm(+rYy&t5>08>P3}UUJ?Lo1206T+=4$t+Q9LC2O!eY(1>8 zIYRS%>vDCrz|OH+MvgPEyF+`XUIR1sYLgtKd69xOSOczZHPI9=5}7h7s~8Vao8&dU zZA}%JbZEZNa4EcceE*M+aO{&3_rUG#&l`}Ktr~UqG?lyE;}}Mj`gQCB%=f=+Dg5D| zpPv4BB*A@vf$x96J^sAWzModxck{^}YTTMaY*u(C{ zB=(j=a4ZGrT9OX~qd|gsqup?1AZiS0&LFa&`uGC-#&^^1@zB{X$mDLb)ISJ)#okcp zKNJ|OFIU4K$Yd{3EA<%4ij9qXoBm=e?fhwTERFXAUTn9}QUE#~ZoAfqQSGz4wON3b zwqp8o$D#dj9EdYW)0E8#^$IPB?4Yp_Z6*;N5gXvX%sN9`69IzhtBfYCC4zBy#h}6^ti>J^ku?e=Uat?<+(@1dkVm@`8Q7c z8QKpHy)e8~hQTH>^E&Q^oN0+;QCJslaLa+{XB~reA6#q~3P706NkMa+%9*ikz7TwQrEFtm9Y)QtzQQD>p_5{L?jWIfZp|zbfR|8)7=AzYHj~c5{ zZ8@q<>s5$))~U=oO-aKcxE31>tl(HSU9d=42H_AQE2dv_jgB$6ktQd$ z2It$kZ2j8k_bV8zgsinP5vQwH=|(=?%%?Tk64aA&0CqM`)i{JQfnE*hZDvU1I0vx2 zSK%o6b{b|TAp>&5f>d{_`F@RMwo^?uN{XQ+^u4~S6|buq@ohDk>o-KdxDbi0 zUKM`~QcYw!^>m|d@`Sz3~;|Cnz5kgcUs-BNZ`PPMMneG8FQeVwYm$_;-^ zH(qCZuhOG>deq9auTouMaJrEy4IAlhJInQsnwep<)Gg*ZZ?Z`HA~$-K>A%*rN%f0L zp9i1F_cV=g2B4LRnDj+)2=QLz8*Tx~5pA9lm-Q@hdK+}>UXo{Bz4aKWHrL{7JObjd$o-G>k5tT+|3ZkiNrm;z_H;fe5 z2_RKiimAL!&94 zWbL>XW0v#pp%9xQ%L#LgsopJ52WMKPX8OZQ(t z8h8p2H3h_#$pbe*^nMfqjYW{0h_W_MlG>~48Mngvw`3C7$KJTv&9k2c2lr3 zaIgSJ7(5XM8z*z}0I<)ByqEcL1()vLE}ov|e|((&@p1C;Nv!+!?F{a9A^q;{?BmdxU{KJz&hb4N_?%n*uKi+-#hdZG6=}))s{^9Q9 ze|mcS!;Ocwy8UTmv7;3|3&ch1Ld`PAX|yppMc@CjdHntE<3Bx8$%6t-?;ieecwpZ@ z-aP*CaPvvFViJ_09_}jj=qP`_;a=_E&pjZPURwED%hmxlbBN=oHA@OC@B8!H-grM8 zZfOSwQr&2{_*xAqJNlN@QURRZ{jzs=>~2OznWV_E=jWC#x%ZOKYVEqTQzi-}R z@B;Jp#@5%C5;6tH##k+Ru~pcM1)S!a)thf=kv7$$S$b{k(pk1UyLo%R?i@BQ-5X@9 z<#E?L?z+cq_ps_L^>dBS$AfrvXsB(KMtG#*_p~`YxYlsrr1gV-#|Mum@38|y5CJ|< z|L549B>c=U{`vpAN_;FkoS#4tW$uRx7JXcpE6R() ze^Fj==}UjnIkjo+eZ9*qowit~Kz-Wc{Q+ z$n-e0lbg5nQ!`cgcKYzk`r|(w^pjCPD~BjBK<{wZjRDwJdjmPw)Vo`G&(U|l{36B^ z68;JX%lG(1*d-RjVCdIKSbAxfPAWJqX?lX`P7$8zjHFa-TY#~w=;k^uJr)LLX&9`f zqHP61xmDtXc+Vu*eq&LlowJGFLt|hhhF)FTNY-GgW!2vS3i!0i@GV>GM!Z^;;aBAw zlS0tRV{5Ru*I;<48G0RqZP;TpHW&%%9OWYn26vxr!l19yuO%|ozNF&L(y|ZdfZon_ z(p$BG;rhH&pOmZfeq}M#gshWxdD1EM3#Cp9Df&|W(&$oh>#NFTq5>P6R1??bSJ&0+Ye=~KT38F*mM#+2WTKqBtY#Cne4>1r zD7}$`G^^FLgaRt|M(J8s^D0TQxlT3TYvx;poK2XNZRYhPT0dke`U8<_mXTz?n(P#l z^~+>CpX}F@+=5Oq)y`{X;F`ig%LTeqNkhN=Dw*X$HPdTnhL!BNL1u<4s=Ud;z@1BT zgucvxyS2+SPp+59c5KXWBVop2O&Xl*XqlxL&$V-r@7oCB1_JRK3G--;fh8Itd{yWG z##d!t_d!k=+`5(+1{XWmg-(EBNEoS(vh}g%4Q@Vw3_%? zp}EM1Fj|X}4@{+XYmUopbuAUN#_3@+*$?DhteDRl3)honSoQ~WIBA4#S`i0=UVtdA zIpsYVOt6azdNrI?NGWYEB1Y|QUd?nlV6ZwKjk)zu%py+#lI$m)@wPiX45hB2XbMv` zpqDbJwjxqfTdgn(C|Is@L#F$_;g&*G``LoZR*524dl`ddDaS^|eqt!NB23P(BLfi_ zEc)fNZAm`o=Hw}$^$AOCsVhb4q!F z;z+*yhq)(XdpctUG18^+pwZ*GF848(y;t7Cfq`QT4(Uh5aNfRk0G`XNDkJS?_W?{= z-n^YZnAP|8X?lD+JCnP&v-`KQ13$iI;XzF)rkxO(~s zU5k779}Kh2EX;w(gn{8(O`Q8l_Rr0``Ql#o>XpuI!7e(_w{x~q4A{H-7db^M{nOTA z`2LsO@$(vrGc9Mr{Rb2$hn_5iydkpv8Uu&N2g`|Uop{j_CeoZ_+Jyv84ZrTxhjKRD zC_lnrCuIF^G9$3ctMIbQYs0g1W3T+p_Vz%xP??5W!O4hOgWJh6DSTFB~htF$Gr1W|7>;L)V=l}Gm zoAB%Y{Xg72{pqN2!hgOI75^S2-pPdi^TuAw8M{3F@$m5L?(k{Fs|Z?i$2N}|F3ugJ z%<5^1ZimhX4FB{$JkF2Z(Qcp#lN7niS}HRI^ES%W!brHgYIhIo?(I!))7KBORVyB7 zt(VpTRYP#?bJI6&pRnZ%jBOVKS6<-O&_YRz5*400P_Z>K`uoGGJhUxxHP6%lTc5Tc zPK6a}L1|8SyzTcl{XU?3chf$AzPsM74PZWOk?wIH1U6pxbwqQf80p_1?VAQ-bQU~5 z&61)Wycssb;4TAv2yW#zQ zxa&XLg#SHlzh6oKC#53*4m57UO}IY{Z&#zu-!eQn@aNxc`~AM?vmy~4?mKdJdf$^1 zlKgw*tG7B54RZOKoE7^k#n0SMo(4^b`xOip!3Gj`k=Za%F8JC#@rWkhA=v@gs92jK z2B!Y!nn5+Q{VFULt)+=Z2)ij5Hgi%E)EVGK68I;UQw*jO17Krdb=GQiX;I;~rG+(K z*bEDkoro8fgMYr~*Y*S*vGv6^ zZGrwu_og>Jd2EsSps~T;Ji@o$kg}9_(uXB-_jyH|DH47^yZ?Ff;m`XW4JjCWI|QM} z0fU`^V-oImSG1)SIt$rUo@vm;$J3f$v`E-*wfjOxw>@C6v8yG7vYtai`p=5?mgbRL z$9IiRRa@MsV>0^fb{3WCzAX)w!dkMI7}&JjVDCMn-$o=LYe;yG12AGyvR*K-j|#SH zF*|VJVK?*og=>x#3l{ChUSnW4ASqZ6>A<~XWwMI^IF1)B7ic#HpJ1?Yuf)?fZ*X@} zChZQ=)e{VMBQOA5=>otOGFn4|ZRrK(!`ggM8`WyFL2cG;Oez&Hcs?u}2A7at&KOvp z&&9Sd_$0wHsip8ZS?nZ@jm`VoLKIa7xm+V7J8=Cv+ej(VxX#uRnjQ)6{n8p-)4aj5 z=r&~d1$`BHtCKBsbA@ic(8=XH`CL1jYh|-0N{Fj3h2NcgzKay{oq`gbd{*&{vyiQ( zM=B?-i?Hs6<_fMAuBzE9GAmg`j?mR?vYvu3DREVNbLrOI!Vg#F zSBXke0F0C_FY~{<%>Qsn0um;tLM1<%HTXvrs~6oV8cDUPnnqZ+p1W4k%t>Hy7ynMbtEkfc=yW0`FQzzR&Yk$TP9>U!-0NkG5Uz{zkd z+gEo64YlhQA)8-9Y+)bwM8?(FK%)GhiqFk+U2BtsuFdJa7G;$fhQL=-rO!|5-k88Be@H?rJKCm{RuZ5)YCB69iX$D^E+};bWz~KFd&Hm%|@Nskau-d;{?CJ8kA~P4u zVhk`#%zgSP+GMgfQ5s~0scuJ;8%=jKC;c?N`MeSOepqhbYiuxSTa{%P3_g5XgSgO| z8Fe?D()wv(&eCA>0s`b_Qs($s7!2&)|I5GL{g;2e`x#I)23F)J5*tdwZ;HtEp53SD zF5D}gHRQ%p*1RpR5btdRtVL;qU1j!nI+bEAFbJmLbxlf`*))2Zy`#cb$781jih07) z0gv@QNE9Cn)}>lVTQ8L?$#OTK0I$jtMBjHf=b!)c#}EH>50}3C^N|Dspx&GDR*|uO zS_7+s*k8BD&np?~Er!bse3miJ&VFT)&#X}kx6_2pas><g9d@tz(gVCdzzO^f@+KO zIP=Y*w;du~j$$%C&gE&mAIcOAXMPKVe=`XO1d8Nr>v!a2m+&Ur90$RpK|?U^_oKV5 zEa4}Gf1?EW{CCFS6Nx>pzalz~=#;(`JINQP>U4c}MW=FBLnObEX5(UCm9xTsi|{mQ zg}#BoNEqB}92;Sy`*%FQ|7m^q(~1Ob=I!V8yFcyeQdjpHX)?L#L%ak1N)rP|;j#q7 zy|sqzaBuaqAi`k%Ux+YL0PG`#<0tsiARI6_BH^|>MU#jy*c{xdC_)n(^gBOjNU*Hv zhc@{yOu^2;3u<#CZ9v}_5t$pIL#lW`J$K6$+}cK!(JG(DhRE#;U6*kG8KgftlJ z_F+wiWFokA0QS((%8~6i0I+37BrFf=rW~Zjz$_ho1MBv4^??d><|Xn214|;rwK;^v zz$P&ULkb4Nl5($5nRKh8YIWMLOgfc*sXXmh7eh{?JZ=>GCAR}>V6aFS+!X*9Tv|z! zRKaIUlBqUX=wt-0?W~p(c1)IgvL2VZsd6t_>L!cbWT_8bCyTvov70eY$>zJl;8K?y z4s>NEUo-r|z4E9Hl5K}&wpC!0!e7b!OR-$8Th4UK=~gM#EGb?zVzVV(L%hW|!eCi_ z6T;wn3BJ9qm$ht^LD_Vxl5OX6jjQYY>+8a6%_Lk-U1<(sLt-}tYwFfa_Fgjcze^N; zCqgd1Nfa+t*nv53BwV_5!*aToO;yvW@+G3E(Y0%1-~`KzNccjVs@YWKI#uGb-zY>@ z{mpefm1=3Kq;w>y#szSm>0E0_cSF#dZe6B(*>pFVXL zC=o4W?xL@wZg$9tFc=2wkuMXC zc?Oc^%tu>uA(pE%petlmSZPCOikB$dT#1{VQN0LeVNoPp`f zw}($+D%l}5=2r2U{Qoy;bDUlveo-R)Ckw0^`g^UbvUE z!eS|Ev|;dj&tL36!o$Guii6&M-cp8>goG)^8FCt&kNZF0{j$6NW%uwe|NZ`7{=2Nf zMs#<-I1h(&=C*@#i~I5NVKUx#xdZwD*G=AkR!8zPZ^)dxte{$an9t;zHO4(H)nhOj|Z8=+j5p(+z)xycfTsm zv$*${?T3H7efs16@sE2hL^fWTdDr*9Zn>g|-)oLvXqNjU82-TR;?B$uAC}w@nHhsc+<*S(r?-E;d-}uv;n%G{CXc6e{Jg&VWsUwPz?L0j!I|iMZU^$> z(_pqf4?=^4-}07f0^!F$?yQ;OtJF{kHD6|HRkJqNFkpSu>wf1(4#rNrww2G21gkC% z!`7Z`d%&%V*uRlAZ18=^K-LNAnKlqXuMO*!R z-NSurbla29^Ksu^xMvOLW?`|^nhDw|DRN%6;8J#HRSmVx-o!^lKBTRmef#c2BfUA3 zW`AGrAL@c(k03ysu}A(TJj2>d#=nU~#X6o>v%b3{0~L$8yjUaFPXBVnap^m=P&j zXjv|1{tc}zVm~7FcZRoxr9wSzTU#3y?9s619s%pvqrKH64i;$=26h31ttZvo0buar z9uWqMgkA3X8@WA;hrwM)cxfYq`IhM^2HO^2^!BYFnO$fSy$7T#)Q?5$6KO(`n-7co zpXqwQ;MMKt)!RSp=u(&WsPsYg405{Jc}3x19JhdSSBmf z_&Z@R^lKs#&i#-q!N!Kf!d(}N8U4m$JnRF5bG7Si^@?S>4EH8r-L#Mx;=M=}xm25i zS@POMBrF)NzfLt@r|Pdc4GHIilwPOHZ*uK7sm7ah)5H=2;P#tr?;_KYmDou5LSdr8 z+O9Ad++`_yuS~v|g>FJixYsge?A4^f3X~=9XyLJZp?Nd(u1Es<`m3gd0kAUl&KU-q z6gtWHKcylqsZF;(WNM)_K*DXs^>L0wP43e^b^=1Cn7ow5RN$OV(u*2|@;yBc(S!uX za()&GOOKSMh(cCx&mdS&$Qq39rD)Q|it-A!QNho$XxQLem7!U&8WfxvWz^eEfti7{ zTxWqFND|`Jai!|PPNPj*VO@4zYMbu5tja#NfxdbaGv&|B*K?>qEJ{8nFC1OU1|rQ; zYN*bHL$G9%?8X{G+=Ys1b5W-#W6E*BU`JdJ$ZVGe5?8!&=W=|h0=7x~Y+l(W<^isJ zojgk}5E7;rk(u2`d+I3rFn|>QkRgPcg&9!$X!9yn4I?hJh=KO{K6LZOCEwZVm$`@9FpnEa7BBzgfWp)ixEi&R5alkb9_)%$)OXo|%{@<=oNHqi3)-EZO{8w}p0JClXj(cs z%Qe9LqHV$?VX#cW!eCxY{Zf%bLB|~3o7_G5C;wjN-`ig_3|KLuKWT;}UD~gT^DMLQ zFC_Nw{&YacGK2Z@@L6%Kcoxv?{jdASKOElv`S|$919$J~Pckh3^q=2;{vY1L!w8V9 z_*?&QtNDcge57U`xBYQYRjbFbTZ4Hy%{y8akEO!Hj5cqlveJKE+CLWq)Cga>pB|cy zgueIn0M6_m*MdfaOhK=4uf$L@psz8fQ>Zc>Vr{4}B3rIO@8mFoa^r(i%$gvX@dpql zoOx&u_fT$g0Fmxx>L-(LYP8W`4={D0O|8+PGrVaJ9@oQnH-lqGKhB_BzI|On4Ky97 zVbQz6>k6NfPgU*Em_V~~lU7Sh6SSk{=|RGigBh;(H9HC?-9-^s7a>FW`RxuvLG zq6>Qw%gQ7|6kBzs6`2GWMun)#CQOc5dL_=l-^bvEVX%z{b^wlr)&5Eq8Yww4IXj7j zjd(SHD`2p~Yk6iE416jyp?a6>H|5M`^ii1TyS`gB6$k5Ks8Cpk?sV5#-Sz-HIYk=` zI|k2=U2s?^qV-3%_AEW*$L>3wsjmgf3FG-AqJxZ4T!*ZG23cmxw z;OKb?GTj;+9$%o}Qwby-C8UV1svV65(^N@57>C}6*JiqJa>u57w6zXM%nghHIGBQ+ zsNEe}64S2|oIvyhgM<^a*Cskc^tw1xzdVYdIPZfhkq>+b^$hfigh$2kjvj#vcMLWX z4%XlpdQAo zl{O51A<O`k`&_eC$X&cvyD;i1cOf*IHF%o8XU`25VO)nVk0^YURat9?+fu! zp8u*6n{!CEE@uTtz) z5GVU!U?*hW#*KkNUkuG1z)3|z(6&34hId4`kbB@8k zOXQ4o;adaU69#7WB?ikrtbE5{h*}t2y%qyI{kj+f+bC+?od|>9Bx|pe)mO>dD-8(- zhU;(At=F0MYgvYyuhZuIEC41S1~#*>yqY^;u+qX{1OP?^!^XPKz!CR4^oo0<36liF z9UCXyR=BLp$!S|VA4%^=KI6fFhD zeB^ce>dZHT_M%!JTmPZHp#}iJPMSAZRv;Pf#ulo_bU`U|V#t8O;$8?xDu`xFk`-6f z=T=$6KQ~qYv@9vvnpDs}DMl-!0%$O{dtcy(Rw1(OaTL={;Xv_^TtJ0zrY54Gcih}+ zAm=7cH(W?1Wp}0Fc?&B|ngWm>nYDeVZQoEIFK1aCe8E2}>x$ zozYRG%&Av~jcs5|MSnv4KbSd<=`d&_m{4!f2wrfqb0H3S%*yak4v zlbg;$#@q4yI5d^rPe4A;ZtP;;(Y6Nz)1j&!qhIpbsxH=|h`D9hZey@S*#IXEvXuqc z5LBacMZXKP21Aczu5N$cBgfA>V^>9)wm;tifF1H9;Cv=wUE|$Ip}coJ;9;^Kpackm z;a;CH7zQ?1=gr%ta^A@Zyfq}_9QJVa$MvlOWvvxQ`u&PCv=f-iD;V5`evNx&4gRnH z9Sk-*s!XZmI|j>KEEv`gi0#`s%pV2HYU+Rdu8V#%-tztkSrPOP)JGH%pw#IXWeZg@ zFtD`%X6PvMj)@r}21cZr88Z(zYyxq$Nt(S3XmzasT-H9gmDOhr9b}Ew28sFc)Zr zQJshJZ`0YKZ~s2#`ib*?ar@I!4VT1!A?c$=$g!rN(cX-^w};+-MvnbW(H7bF ztB+c5ps}vE3Cc10(xb7US^oCgQtr?iVXI-l{?o?-)NLC*?)hHBamB!g7A!hEGzJGj zsr_nf3~!*{=IEw1JdmJpV{p^%Kdwgaj+5K|@TM`ktt&h@hnCbPdmlaCP#o+{M?;!* zb*hRo9GC0$b0&vP`i*kX1Wx?}`0cO_b#np;aNhD96VftV+vlmJAGEt__ixty`(tlA zTHMX#q@xl34#OurY;p=e|K>vdys;YTtrO$Ic_1*&C zBsjOzl+h9$~QAkOKy*Le>0|fmu4` zeofk@Yk}N=uAaWd7gAI%e$caHXg5F^M4VGR@ z7pzyU3eF=_uQj3y3crg0>HBC zo&d1N%?jKri5NIu&B40R@0)b_HHaHyaKbQ{bRs8Bqj8MEurBoL7@V%k zHfzqwvcy`rFxdElv*&uUwF_Y|49p=R+X#b=e!n3l6}v9|h~#S5x$0HEo-8)fx!M&Z ztnt9*OE6eVNEik#1P116W&VYJtFN7b#l1pb(XU*in{0X&?7+$~3~s;4b|q;!MGJ#n z3Oz7baiJ9}OJFR&=wd&S@5|Vm560mTDLU6pI3Ab!3a{m{vNY3@|5MRWVZChzy^g`p zqWOg7cp#@}nAZPL(ipku>(x+Ug|OqR*3y~@iXpV=v_xn~HYF(^WTieTw#*!=k-d9V z2ecmn%=Bi2w$Ypj`JlKk#gS~M#=s^X1qzx1At=+H)jKnEYg0W@1Wmt`{c}pgAunhU zPE<)_x92EsIF-_7hEq6PhY;g!TC}_tZ&|fzG9*>VCYfv8((C0ZOrr^SQ$VNW4%m_I zi%3beRnvWC`X+}}jz~S`t4s}Qc_YzyW&l;%6-&*`Bn-B+AeQ?kqxZH$kBB1JnpWKb zn;of>Q<87Csoi$Y=Eo?bkh8i~dm_fMUbB8wcV&Mz9@eUQ1;OpgG1#m<9?4A3=N;cY zwh2?%R;fYI&e5kgvH*`2DMzOyL%p#4`F8_nr9p!{zFiY6gxtVjdFRS3IT~)bOoWFk zG<6ZC8U}M|F$Nn6Hz$v+nf;$;lihHzIUqs2Bdlx0OBd@ooI^)o90k*MJf@^$u=}Pi zZf)o+2r3t7!RPKB-L~c#0#L=kKke^+J>30rxcz0n`><9#Etyqi&4zfzz#5=yp{nG* zs{y_0^&b^ZQ~y?EG^6A1Pj3dZ<7j2o1_q9o#=slY2r$@f!XK8=xav|3NTf zU*3G$2z`G&X!*-Q2^jdl{_FiO&?7__FxUjTWB2d_LQc^K{dDI(aOYv**%9OrvKqBk zCoqheg588m+8MaFh(-mIuox}E-ALCY%^PB?(m|!7Sw1;(k2gFvLbd~0tWGc(bwq)q z_ia?JsYL~U_oq89Rxl6re&Q)8pqjjqA7zP^XMv68z5Pjk(XjF1uY~omj&1xhh2MUQQZ67 z>W$)5k*V_$(aBB=36J*8@o_kM+Kk@cjP6iC+v6j!Dr!}eOM9YkM8XLe59>Txa-N37 zoIDAM2-f~6jcuwVaeJWOGZ7m@>?qKjA?0=LcCR=}7_NM@aAMn0XgvhUiha$8!%K38 zL;pTfLx$$7&t;lVO|S;rm(uC)C%yZd{>{?c7M=x{EMFLb-&s}P5hJ~r7=N>z0q4Jm zJlla|1~v>naf<%BoSx(f&Hin2cDsU{!0m6B&@?%q%HIlJbs({XdcZZGstWM9WdxS^ z0N`qyt`L6qse?(FEis1PbD22$1`KvV5mLg{rLc8lq|X4+-RJzra*rf z8VO5Q4>WYo)?i_<0kEywCiA17+xZA#k2K4W z@J}lmWbz$@XGe_58y(B#&GPw~Ft0|Kn;`cS)cW7iL+tyS8#yZ2bqF0dVF7edq7)%W>06WHDV_@L+`K;Ve+v1|x z*|NJP6y(r6EGo2Nz(w-qt{lv~QlafKt)6j_KG%Cy-Xa~sI2jS~1`G~M<-`nZLILU- ztaaaPYlOj(9T@rrZkyu*C!mPs792|+(Sds*-V&sI(NgjPgChoR zCC{YPNpY;dfWanT$KZHe=Q-<|1e0%^6WM_+f>MORLf=>d{RR?t=naY3GAt`@5LttR zkF*Dieu29#fq~8c`NvH44akX5El8NK(9rH0Eso9o06z!%wN))8&lpT*oYv|W1(1Nj z#=5$G-JR;Cv%b8sb<(djSyNHgU=exwwOfNP3qK@_KVI9=->c#e$?}iM(vQznY{F_R zhSnn9bmdaHjP-+kTx!z~GvJ zF(N7!_h!N1wq^|WvB8<9B4C9?>$1>`%)gxrp>NmRo`GKSd$RpPyun=D697|2^eb-x zxf3`HTevL4U4QeSU*0z3VF~#bD62Ut)hB#Qa@(j43IMH|>`9UDN8cD9n}us{+rSB$ zZwui7WeI%|c4^8cT+#P7l;;nbXj+DC8rs^R{y{!!6lBYlEmYcMV_*P7Q{@=UF473i z1QF?xG!`mP6Gk!UiwZSZ6jW1m6Im+yiaMzB;2HF29UJ-j%L|@?!GhIYZ+15^f|W^A zht^0i^fS}OOw8IW+a^5ex~aKCTc9jE8Oj)!suG!P%{0pSgT!Xhts5VjL0D?8L9el; z-7b&-HbC)`71x)Pp~ZylIjC85rF~MfPESLQ(Ra~(8>p}dt6YWO0c!L9SfIkidZZjX zkkHqDi)xUtc}>$X7zUH6;YJRRcZRFu z`BK1QFKK3DowMIwH=lwNoBOF|Jkrdfx>3ScQ|`G6G*0z`+*P;LM;L5UpFA}u4`#*X zp4%S>zr%1Z2?g#pqbpr33OcvW%**BxZNb3VYWQcQZ6s`uLodVfVH_L!NbKKfMxyo8 z)L0i-+TZ_rb8jSk__$d=&DM`|V3;zLhwVX4i0k3kJpv2^a^zb`%$_qaXEnVUx+!>Z zKXLlqytRSB2EcIdR)-FL(Fi>JpuotE!7}QCzOv|2?7apCLv&8U2E%(X@V|h;V&DjX zBM}B`812sfLCkK4+y`W|>n!ibqaAkuj^$+#pt@Pu+}cqZf*qI~XJ8k~ka>#1zEsXe z42&A;BurwuZx2@PBdt{`G;1*LiR{BDWHx|&Y<>Z~cYnTr_oo}~r<5vFtsU&WOmb6z?jD|#b9P0GDE5*$82>v6@385t zG{PFmqPEm9n7gN2x*PN#Zu`fT`HfrX>>X4v8gDJ~Ij{W}6`o6ki~lBa3ZmbUv%S8Q z)57N%ECxO^1zV0~zT7<&`vPnKTKVFpnHbjoRiYM29?^2IwV?_^3-PK!R9VJeO)h8= zqyqq-icv8=sljj?45lAkX$juMe$l6*?$tyPYa9#P0CLX2h@+IFFXH$l_t(I^A>rk1 zsT$1nCj5W2ghr;&uIkR)9}0LF+%<=1C|7gQ!NA+c@f=ds%t>9FMM?Ba0ovH*-C+Bu ze}Z#y>~Qr61}p5d!*B$>B*eXL1oj*wVfrt4RUxJ=U;C~e$GZE4>P7U~OP zXooyA@KWQyLL?NaF;Y!Mq%r`|4bcS20zBL_M{6Z?I0N7ah64ucxToSLU?yK)9^NQ4 zTXO6PhOL2$&E$I~@U52PA}<(vZ;Zj{)f$>)ohFJjtHDzmu|QdYevO1%R28!^s<`<% z_t#ZwhPSmT@`yGDmLs%VgSnY~{Te8~ey^u>{bK#O6kNW?kX#N!nMP3LSl) z#fUdhu1$~hHIeOC5{(mf26lPDz!F)8b3an812CdWim$WP%S6u0h=c>v1|zViHT#i+ zZj87w8%O0snYaKFS%Y;W#QoV?B4;79(-5f!P-dEX_??6a)rCl@OPcv#h}~K9^Cj1jDqXGK17?OtL)sXzawX`qOWtl-G^+rr26b z+9no;TH{)WTlwgoVlbK+YEaww+<;tO)2O`WFKtK`NKZy%cw5D!iGtI@Gfs?ZDJgW< zkYKJt9Uh5*!Qy`n^=bWb;&D%G-@3A{#>XBxD@~g43^rbcv=Eu+4oolSExa!WV-bU8U&SIdf#9etJOPGlZ{Xu#(~3es&0Gr9j)y4#WvofW5Ev zT#SVKEVs4cu|9cJdDK&B(knf(8I=2g(k#0fIXo{HczbzNaAx#rD+ z=->8a^)Q|s+hSl17?$(%?)~as=GK700IF@(q(>z7AJ&IY8yO^j-9P^RfIy@^nwQO#TAxld$w>@g$&}>D++q|7FZZ(O>{sWJL zC$6cy*tC5ImT$Ko=A5d(X@+xJ@?JUdb{5U{e%U_myBmp9 z*VPKxiz-Bvan)R=4VeAa6$X#C`q!gXvq@5z0%onH5(7&Gi#9K7S#h7G$CqdYM*G3! z@n-P$W{Bzu@dCFu@U1P8TL8Gj67J<&m>BeqZ@P#e`KG7Q#Rr9khJhsp!-E?$1s@O* zuN#3Q9z6;i1PL)lxfqsj)I=NK5#Ngj3rzrIo zh1ZxaLzY0qIuV2?YkwbTue$yFo5AgNsK0fz7~H%i2x ze?iXn`i`jlOAL0*P8lhs5z5pUGFqW(p3H$ zZJW}+tEkb2!LY7K*f7{hSaRYNy*>*D9YL-&`2`h~LEWX4-F z7d!OEqI_S%v`XmwN%wi9bX>2qXuT?$Ewx$nEGJ#zhNsJ%knCW2X+Sbge}Fo&y*Vq1OWCj-^SonRpW2d zwKpld3z^!bdq+d9B2_ThFUf`@b3IpiYW&@G;djaE>r|E7WFFL&3(&XR$yK|>oc>j$ zYz*x+WJn@YPh`AKDsNoHcU(I<2Fn5*N5+z*>aR2^SZ>eAYp35N+-t^RkudZt9)1n( zrt5DqhQYbcoBT;+tekwIFLHgO-);zzCFxv>fhp6pz|j^WEAPJ0VqlAs)e`X*M~a~( zo3Jr(xho>=%__A4A7rIDu8M(q5e|PI#-q=Ghf8GALh%i=90+<*k~DJ< z1<>T2pil>$hs9cpMoYt$X(FLA8H6cdMo8HuWPO#rr3OU#Xk^H_Y}Yuow5-orwv#uJVS{e@A?jJ%9LS8Lzm5VDiH0vXmTd$ zPeZ^=3~z>6kkZbURoZ&*p6!Z+!9z}41Y3rF+0jCOsU%BXi^2a$GozsU%AHtaDK$f{ zyqo4nErDS>mVB+LYOn!QV}r2%Qj?%I>t=MfWsy@?0lsS0@L1>~NR}J6A6Ld|^64i6 z3ENdn_WFBj7%aDKA9ABxVY5QXwr>~5&pR>julxOnl})N7Jl?#W!@4)0w%{xIa9V`H z3M&n9!L-vG`uhPr{p@zMf_UY%pVxOk@9u*sIEn~u z@vc0rg!pzZJFv00FxWz58T5WZ!X7eOmCu(C6SR;O(D*p9(YzYU>qcO3x3{cJ4=BO< zGfkK5{i|Ccf-1JG$jRA4XN_#?V8dOv1EUt38XDP$$&|*d*F!3)Y7+@tpKZah=0`NG zF~Er~#Y=Vgv^ac_)%X3Mj&iR1c>~8jDDbuH?H&T!?(p*XlVU_$q?W-#2;E=XjMGrA z_WJ$q!$00X{psf2pAO(O1go3y>u&d90TQpDCL51>WnR|Xcj$16l*SX`pvOgTqtgVRQZg+^ti0VkpyDB>>`|3TnL#tZbs!ZcahhhH^ z$l=gx&9=SXaXWat8|_DwRBUI3*XoRJI)i-!=;gwpUmH$Lek6zX;Lrqghn7DO`Zmdt z$XqN#F==OG->QTLBug|hnJZFALII@6U!kY%S~lI@&ANYg>}&>n`{GZ;Vc`i? z{s)V^nk8rXr)TvYQQ=bz-Z};c5&Z@{)=1PZ3xvym!MDFr!Xx-nUc&8fl)%8|->#kx zH3Nmjds`pz+p}qejf#aa4l|yJCFIZ@qs+*PsL6!Iz=lcG*_u^P_l>d5MOu(eZX{aM zFfpy76uCHA$!y?M78!w+u#(TK(xz08hhibYr8&&l?@RgG@HnP>4Ge~R&GWgpdpp^` z9n&Pzj%{h{9!BH6#s*Js6dX$;d{3qPf`o*X2!STg+Vx$ za6@DPR-Yw81k) z8v}FsbgVu53&U13Pgd5JOY-9nU0gW`gN{m3@o|SGT1&N21X2n zO=5@V7Z~i`&R-WeQPHqs82(Kd?3wAxYk5JNMONoixnM6UR9X!DDv^_9AWer`r`#YX zRQx3ayEq10=2tK{)40;SMBpV%3z}9Fse1allHh8^^rhG7s)Af=_9vb3kBQ>%617ym zTPSqW`CdNP&Zlcvsb)6Q%4O?U*-j?g&SqQ5Y(sPN0*ASFD%&e%`{i^ODP_79B-gK` z+ofdnn%kYNU1xbVjdZ?SNoq!^N}9s`ax^MD>baq_JPMg_DGe2$SXU*KanH?kbY&Q)9d&DfxHaBUg zKtB!rYHV;XnHyHK!*;ft&-bo0U2ylRInLMm=|V5TYgZU1s{KNxS72EmmCL<+xtHTI z%cEpzd|lEqQyQg8!(@4ssZ0x%ez`iVR)>}9EMJ{wB(rpt?_^l6jqB}2vo&wlC$;*t z)|l5xx8`-V6nt-@-&}1}u1y-XaaDhzka4v>Z8gE*Ip8NCq$Dl7l)p{CkF1)_F%5wV z^fsE!(sU+zIE_9Rc&vec>V}OKoo|Jdva$*+#g>X6X7RCLV}Z1=Q#h&yU2_yu6%`626?&J|y5=j| z`YEAI=#M7do^Fd7Z~N=&aLe5gX2UR4OJ+Ez%}GE>R)Jx}f0r5wtBa*_zlw0e7Fkid zMy3IH;;EGl+5LWoROY`dMvHIT_g7##Kf(VV;hHfun-Q zs`ge&c{me;VVj`Hc=f{y=A7R5y4z}dU0&Reoq?mES+LUvPJaBu&Hb-31>byz)3)RT zy$g9kkAdL`fXxN^y^O$n&4(mETT1TUuQVpvh9yH>AS(=PxGSc0ajZRB=FKPZuwk$a zq>AulPSGdatED#C>a7nCR{ST~Gv%QEem*;L6HpYyzzC0?G`;c+q}jQNn0G?}EU{@Y zQBYV4o=-GR$6!&h`%&AU6y+=Kv@+3>N!ULZhi%v7>b$N}tt?tNSPlk1{(g@-1>ZjX ze#a8ll^y$|Vum62zbfprMaI%NbMTnV)%|#hT6QG}k^q_JCM)HEC~} zFmtT*{m8}57r^uCVZ1S8ucDgWTWIL_^X0ATG#fQ4;P9Xk;H&#z)^eM-Ul=?-9^%_S zA9-P%b-h7Adh2%gxb5G`8f@fg1AqmkG$vX_>{Zlw+TO}vLLUoY)?>aJbNF{u9&9y# z?`S6JzbB>f_^a|i|WCbP*#9oMup80G`frggV}x9i*P@RJ5{~FsnKtfMp`mpNgKa;uLN_~Hj(t!xARL-g<(&Q8 z`1+;?9n>zF7N9r0+X0!~?bts+T1!J^jsLfhT@4w8dBKd1&Nvof(+dp#p1eRr#H;0P z^atb&%pK$QYCdN@8vFII>5U$52loefSijQt0I(uyk1QU+TzFU1;}zg7YR%N_c}6s*qI z9HF7C0Kmq;Vd>C&BEG66Od>DY0KiDR>0}otH({_N96;i$!Xy!INIb*UiMg01L(L$G(ilkg%D5#nneRR+eP;g@oOAdUmU!!i)Ri>T$G%z-{UT$6%JXpH?t1 zJq{fZ7))1a7_2~9`XjdMAoTLaz=pw6Gb$asX?6#mG1%ZUqyb2_>Tc*(n9^eXi*-Hv zAPsc@1^W-s|aPLbgqa&d*p}U^R_ZaxOnABt7nX}akU<6AJ z=<6?!E?KeD&N0}-WpTX$gGZ${oyDfbzNkGcYr|q41$$hpLBeJbZp~`7NwYpGqG0#8 zJ!#{kN^RVzkGQ}J<;A@+1xufY2&CsvTGer@B579o#mb;mfe|7ME)U8=hC#J7YWX}# zN_2}wq?3EL26uABVY4`DlMn!R@`XXG&?%D0w=w~MU+{1;C%N{eN790OsZa?r0pNOy zr5v;2_I|#M^m3(cuFwL)DXFo?!eGr~lt|T5sai5sxwJ$|7%U`|FEA3Imz>I#+@Z@C z$$CD_8{8;fH}c7H;u(WW7uU7CCKE1Q1`;lkle?yH3KfrZe;%S5e|Xf$3*JyEYEir2AUG{oz3COJHdqFq?c z{&rk(t(0}1DP5c^erT*;0) zxk)ECZs)og6;lkYt77ZAIm#9LTn?-3dsXOP)ds+DQSbLe+*=%87su(+Bqs)*q|1|h zd6usr(*hrl($idZnyyUJwRx^GEhDvsq`D|W!p(WJF>lnT^~RLWrlfyY<4R-N5C$WB zfnczGgw1iKIc>D&8vELwRvMFPZ`+q_dMJ_l_+i&wv%POMw$0YAA#hz4AU9*$qDXSt z09;A5mPHb@p)6a=LVI1HwPlsIwY4cojCJwh>p66>8!iG#}aOM`++2WYw0Yvy9Npc=ty6?R4Eqs(|GgRu9<(4gCmQ5K;} zwflm8Umpqv*DoZ6S*KcuNmAGNUWHptxEmxszFVu&s|Zu?^Mg=mWHhO>=(K zj3y8=3_RKEl&o(S8~5ZFO^z(aU`YhwRU=p_4U~j+&330#r8ZOtJ3Yf-GY(sVE=S?G zhr(%{KS0H)h6~ZeQBti0y(UuDIUK!|e#T1#41(cjLH*^@?A}78Y;_E7_I6d!S02&3 z>fpvlKS~6^J6OVY*W-}RZPlt~j;MzsbF|l{p_LLFJUlX=M(wD$pyJ-XjK-|$G@z7` zZf|S-IO}dJsQBY!ue+(XSJn2if`G>|1%KWxpC&Uv?%j0zac*AI0fWKR!>7&q?QD7+ z%SQvZ&RJd#E^-be)zikOwyY6~vbZVeVT3y-O@u2;zCpx)Ne(oouFH{I3!@aE%+#M2)S zH|Fik8M3_nX{`XxKf4Wl?NcSmLHhH0|8Dm1drhY#U+4&fAAskdx9i6VLJd!Ux~0JF z&s$A^sUg0z-A4_&=Gu395E@qu@$$%a`ZX{S6+cZ3gJ&pz>jwyVG(Qd~&x1gdJABgU zVx5m>Z`zB=|8Stf{f7l#fuX74DByIv?;p3~;W)UIBJJ^N@q+PkYH0~b&nQc8FS{Ey zd;EO8$?_SN$q~@n4D{`6DyE5fUeo($94QRIyD$xaeBMK!>#@~ z3h+1qor6QQ(ANe74-f6WKv%)ccz^8J;w4T98v4c}r|6|HnD?0rw04!QRzq8tfT)FuCb7C7?B9+J zfV=lUt!dEYH7&2PK(H*QfsIAB&c-iSuXzV7g`UAZkp(qOV(|%JL9*`?pt7B zyCJ$8q4%+gl*!TUHH$8w+gb2{eA=XE2DYKU;mJOW4&e{NPNURFwnfAm5k>gJtcYo7i+6gIkL>7)+u%uFKQ2m#qwn)ls9Wr7#!kf)rYSsk^?y+UbNHw-S8dSGx{7~Crt2Tf?G*h-6s#lRiOpjl|A3!Oq? z*e-NRkZ``=6bZ)+tb{-p=#{p)l*nK)NZX6tE$N^;E%OQoABifLvh zPM`~Er_ul*^lLWJR6QfV-D*;^1iM*S41Afa=aSWwF>o$s;7B0hONGVqtt;-=~lBqU*lRX&=Cfw>JVi;-N*^BTeVE9z#+0d$KW5YiWiA$G0_b4d-*JN zBjIYIkcbSw0f1w<%*GM|O)E1WVQ{K`ooyx4P0f^>X{Xce6luUR)sm?;SxH@2l2@hI zSEa;N>FUbH3Fq6%d?$ocCQDFbs^Cs1}NLDYdt8Z8)8>wWw2z4hbuT!-*soI4iLie(n zQ8hEnLchRpx|2({F4#At)3BIWZILR=Z0CwZ7U9sHt871?pEa_BQdUv2D3i>#uR-+u ztexu@bNviRT$og3&6db7I@?I(+lfLqQ5+-+Juvtx-%9|Zg+Zdy%hmdY>Nr&%C5r@!v&}n7@pj8=6C3b7H|u4GlR2KHz6(^j|TmY+|p~h<7jO*VZ&h2 zBb(4iWzrEUch$11Q>4sf*EK4ZN!DzzHQPj=4Vnr>sRaFUyz5$L08und#~N~!@r`C! zMK2le+cvyb)?oQa>nJRR!I}ZWEa8HgU1Mxw_3J2LFc88C(0Q1FHxe@lQ-*vxa{H?a zw+QBSo^Y>CZ$nzwXr9l~PL?$w9GJIj(P&RLAwJYu=3*yCs6f5DYN&s`=?-pSEg6l`N;M?g@Yn_vDX4~3A}>%C5c--nPor;-#=yXg z^BVOX+^}^52EaWtJ9j~Snf*Dvra9F&NJy#Ow>z71cUuz!FUzF0)Fl7|-Pzr6a_lc3 zCz}uREd={+CSDZ=%PATR26X3lG6Juj%)eS8xI7s3+UG!u0eEjiQmI72u`C}#CQUtt z#Ovdy5Q&=I$rqT}6it!US5DDiV(<(337GV%gl#;a3BaRqy#5otY$RNr9$HhIF<6SljW^#2|*(Wc41wY*bkD`!_g z7o|=2@YCw{7iiNWf&D5QxH*9f_z`XWNwf_5axEg^hY^|FLj`ueAMW1G-u+oIwBG*t z=JAhv4T`pyTQZyfe$NBqKos6VupgIu&Euuf!XPoCp>7{$noz_n$!LM-aGW73;P&0@ zPO!bd`(>v|iET$tlI7vU+>l8i>f=cJ#|=CTQ1KobT*>Fz1<;C7&{=B$3a&(4v9OhV z7jc(agN=&2lms0^F|SI$ndEM*H-FQe97ZZ&t2&(ib_FA+ka*SY-fSlC?)%#TyHG8p z9iJHN%3i8gHeOkS2fL>JH(8Kp@*Q`D;zDcvGtyPquPDx$qv*JD$yS32&GM-_Vfx1o zy#uG$M_vEZh0NTGn&H?yTURu@iQ?7c30c41MrRhTRltQ zVe6H4p>l3%ocIEIzm#+Ojm629wj%gsX~0Xw!_VA%E+aPu%g*KiY+ajv^=druxqv-! z!a&Gb$P@8ukU&8%cC`P?4!{UU)Gnl*W*yTb zCNT_yxGriNZ{;jAa||{gI&-(Sl4c)vp~A^gow#GLMZ@aR-FrL{W8jE>V~M=MCC|4} z^y?T*zT#%v&smvd-EtfKUpQTLF(i&iIOg6{Iepd<>%I_>)s}-z-MpaVOb6N*5<_oH zym3NlXId%7O3)#C4$_^K={LDjip5URBy2C4f?aqAz~I)j*3p#mvIY-#o#wPsAITPF ziZ`rVg?P;%Ovw_YtpmwiT=@S|_Mc6%97~!e_?MQG;zK^PTMC1XgdR9cm#oXN7oSW(6s;1VS*ITm)3?5bueJdD* zhjqAjSjNq>j~Q9Z8iZV^3xmf|wO_>`JZw}aF&Nw}RJwV5p*wjb&Q*G~^019fn0bpduC%$aPvoK>0n4c6nD zm5fT+W*)n7JuL=K*K?_QF4L~2>e*EFF4e52Y67}Us#!_Z^EQz9O}>e5wisK9R9Ue7 zy_mVs#M+##-QE?o`lq`}8U_{;7vJ6%-`o`5+-O;Rb6fcSwvxFK2G>i*z+mu=mal_C z-{d@@O!J*4j`W`b2InJjZwhp5zsYqoxlT$*2?IxW>E@esD~(5V^}AH{_O5z&TmJs8 z^mjU4ZdoT&=w$L*cC+PvzSPZ^I{8AJ_K~#WUM;g=a7}cbYu#jZ@1krj%G(csyIfO+ zYuRQoTf56g0^oYOnPQTp=69J+Iuobyd}bJMS{R&(@|pT~8Qqj9&)IhKct>~g!u4#w zk&O#k9jlYmDd{RQ&D(5TEDQ_E&vlDoelEHy7pRqS{;*oAX>_Q6fDm z)kVLndUIKBE~|}oQ#9LJS6kaUg_nhBTa7lgNW{CYN846w+lV%;)+Q1jN04w8zh$@F zu8R0JZ;J5_)&+w%MXj2*vn{pNh*wPO!m2>m?7bi{TT76zWR_sC$|GfE#_O_(ZgPyH zS=o?G3Y_VP^G3WWt23sCMN!4@yEZ}|N?SsCBH}SnY5>_^M#Ml?0rQBqiJjDA^=y}b zqskF@h*Z@j2vb!?3H1bmJ+qV72gcqKf@AHO@1!r?ZYLgQ3IugLIB%N+Gr*|?0*LB- zM8eu@f)lkx$uhraV_GT180F6ApoFuoovIRSCErRaQ?=?HhIijiJIj0w`HM6Fn8mtx&B2J7vGjnOkKI9AU#x$m?Rm|To_4MolgNJGm& z#h|Yb4932sRlO4GiTPn~-uQYbi&KC14#E`5E*NY!{_xvr^)wI$OYTMN*mBppBB3T% zq{L6#r=NH4{(OJ>A`%uM@3^tL!|$dCrkGkv+tWv}A|TfC@h5;;)T(-fvclkJ8)mH4 z!{-H#&<`WV&M^*LTc>N4VSY=-8}C2ZoJkgcYxy`50P9#fy$`=V2!K`R%dbb>NgYB+ ztm8iXxN%c3;I!#63+`#t#X>9oWYDSG81;5t3%i(I*Zps;fL=oCArYiK#1U7ZH8c$F z^$8pmsd6p#WzjV8e+q{Pav(P`Fin%v94NrBorAuVWxIRY44)r{R-rcWP2mLLfrX1%;lj9-D<-ef=UO8gRZdbDpYs*^8KA3pmEcL!(m#p5H^b=mFe_V3sI zr_*3RmOgEkWKLB_oE-T1B^hoz<9&CvZLhb%PkY2jeu4#b){PE{Cd*x;w{H$MWOjYI zrwp=dOt#H=0@B8iZOL%k<~M;q3wuB`RytMlTDLL4-T9Nyw>Ns)kKa9x4inl*^8SZRqz3*tAS|7|&j{ncrZr zm((s{$7EkX*Kk)kUeB3|9fQ^Ox~OTTnKi#?p46eeJoOLnXS?@={aYOIh2Fi4m-l)< zqoJDLy@i55#DY~VCr31gAg4r>#y!WxXGH>rwR(Z!#l7g)nnY_G5rbhj3+vDUgG~g$ zW-IREOJWf>bQ;27eR1})K4IYBV{o{Qbv+0Y+@)Y+4>!>6h8~1^E+Ot2cmEA><1qg1 z&b=&G1-JtGjx7F8 zAYtsl(Kt9o$1`GOq0-PyVR&fITdhgmOu-GJ&yK6DX`?Z$G>D8ZR*W?`st&5PUcNf0RmX94(5Ut* zmGjtOVQ{xx88i%oi&%rjz}*V=;eNe5?2tD4Ep;o`7+k{qYo=f&-0FKR2FAEa;|_g? zDHse+1q@~&s?w=kBbBR5?sCL1zR9%;;xcW@HnKU1@>{ulyTEwkb~Yd7ayF0{X{Mpy zRzZ@9${FEq^|lxnup~Fq>1IjjOPu3+I@7LY8rf7Wdnfv>W>b}0CGM)ZyGrV=QBF7V zDrWA}Z&KCFT`i}a0!HAx5|X=W_O8U(U_xX$23PY~hP7JGkS>0YX}6rl8eA)$F<8q4 zfZ<-l;Q!_A6$Tq5e;+V7*AX;|SKk!dX-vTa%YeZtFgQx5M8fs&QjObG^Db4>xqf$7 z`aavr=i9|xTn0FMr9!7v)I;i3OFa>0D&Ml`Q?1*4oXhuW`F56ht~#Y$r4?Z4qxaE8gxE8ATjrv;9_X6d|4%w(^5AgMoX(;AXy876#|rw|SlUsErGBpPWK` z3l&e=g>k1as1@Rr2g(vHm-;CtL$axoO1(QHUP&4mrpkjiYrNB6fHX`9-v@To?=+&|i zFqln%apbmNZFPh2Qm`uAJ%et^L}?h<2$_U{7D6^u7752IVn<8U8eqVzi`j^(zwIbf zy{VL>cw3ReBvOs$<+F6>Qtr_a2TWi~Y%Q^|${0H0NDN*YbB=ah&s4XK-TNjC z-&CwKQx7MGWai}FLR&?=gV|v?KlD{IotejX#a~fi>`u|nzy`nx1}jsr!L)b`^$h2r zLnEFxr)!WnxH_wgrDs*zMO%|iAhB=Kd2;?s^bbFIQ$bXxp|3kgn?V@vwYaakWT_*z z7Z}W#-d#LC^sq89b5cu7xO9uw5-?aK1{(OdV+?y2EDopbso?!CCO)r%5E?$O-sE+!}Kj(old^pURBKwEE29Vk<6*HexApR z+UOWB-;Ec~#kw2 z9zBujY{p6@2Cli`J|8gK$%THS|u;6z6GTwh=b|r~GR|=VQI3cdiVb8RdljYM$ zG%FHjATi_Igy<8TrQZ=kTqwT#IM+RV`nrGr+k+YBiQskr<5tIg`Srjnr0;GW_XLCw z$KGizQWXQY=M6Un3kU;?8g5yR-Z!IM!7abi;!eVl4#Pr0;n@faWZ&$Q4E;4)3pGfr zLS(Yh4#QlxCea`28bey`O)jw+Ot5fpG zc4{$3dmJy#GK`;gZ-*T?)~C9xo4*DC%!F{FU-9t1p?u}2CF$;){ewPv68mjy2?p!r zV;dnkUOr9jPU@<46^NzzH!*~P)lw0{hvC`6;P;QC!+3Ta%}-;4VZ<0%iJneXk6?Bh z2?*!A_IlS|?wFetw!D_@YgPmo8GiDI5@_~y;s2*{DSw5*3HN>@+GHbv1N|lp{Mrjz z82l{*n`l$mC2^&;E4>`6{7ro=Z*uv-4J%%?1XaQ5H+4O(|yyU|0>K za~*gS7?^zR<+N<1$I@BX8P9XhY2PFOra`uN!U2P~s1WUWg}I#s+ZN86ufQFz>?i&( zAz_!Xp3$K*Ibaq(%Y}Z=nMcHUI8ZSpY|$JXgWX43tMe0shc9w%F;+rt?EPS7R%rhj zjUCu#tKyumeW3%IlD1oiisB3`twRvYJuy#d9-omd;xillj(fim_}R-#d^O1BiHk_D zUJr!Xt(f;H$QAvXQ09WQ$T>!|u-0Ch|D(XG?En<*HZlipaR>jN-YZ%c2}9vug*Svy*^qgh)F+!_mg zix%AHjKTHBG;WTn(X7#$#X@42+MsMs(SUJ?l{KhWN3mcSk7zJB$ME1`yE2O5USeWp z;ND?e9(6GV_Zy`sQ|gqk26u$Pl~))H@j3(B*x;rCFd?7?z)8Mga9#}D5&*k3IE@9k zna(vcK^o~??Uvbm%o?1-NSVtu0|sZCc?emnO>tbh+)lNGOE9wtu2SmPi*df#x)lIt zqDrQoP1g*AYuQxk`&2cRY8n03au|WdwB>-oscKpnEbe8ruqaoXn)SP8)&?b~c8o9*0TC~jpk{d%UG!(`o3W;zqyWIFjwoX&O)gS*9C^d=kK z<@&{Jw~%cYMd^}!uL=ow3&P;spqc9cy~S?6FpBbnM!s8w*agO|n?mP~vCaK@VH6j7 zWx&`ln3;hEz@6Jt@3!2(D-G_1zKD1@2*%;+G+!Bk!BxTSxF8I!&2j)R+$$a~Hs)Zk z619mKxKtgLjeGO;dAYu*S^%vQiCM9^$ccU%%SK~f5FrN)URLY#Mq^S?qOq(uR5)O8 ztF^@ExwR^`R@K(BjQ{got94OvdtVjVMk{lT7U-I&Kx_u#kb@(%C2);SjKd)^mf^02 ziN9ErIKR z$>{nbVdF_5qL@}aS-m?Gc-Syno1RxBAl*Venc0M+$wBHPKs%BKwrWeM8t;1QW|WXD zPUFSHe7f%mg9X6DoiXrUx`HrIFbwPoeK`|I*x1+{q@|tAk7EOMxL4f_=3Hl8YgRiKZNvSlyb*lCh;>2 zZZU)I!)Sc$=qd!m!(C?}R^PSyTU@54%Svt4&14=0Y_n3YUDb|tABeBx)?H~orl!NX zoTuy75uTY!NLylxW>8#elSR^EFJWy*`O1`LjIMxFv@`~OPHUG{lli5cnbGyz=7Qdy z-;WmeBa!f6-=3U$!)>Q)=_$}PoSu3<`SA7=0>^${kZ=aJCAQ)-5`S49epu|kEcc&R zO7B(pBcp;Pr!RtAW9E;`H8G_{!eFq-Sr}|i*I|S(1Bu@Y9f4jj_`m%Rk>M5hdNk>a zU*Zm@uWMj>`VyrLp_OLo zt6J)n<|ukS>~Em2>}Py?vSD{>My6Q=#d*Uk@+8?1i#o;N=5kdoX4e*(y`) z{rKZ<{W8&`Iex*atkY1L_0#13hn32#Z8A)pqTe&FSe&eqHfR~U^#0RQXZXa)tiS&I z56*`Yac1}7ICx-euo*V>=8Gz&%Ij@BW3d0q;V;i3K@{kaCZ;7E^H>Dx*fp+n2kxFFeGf>a{tim=v!7BvTNZq zsCI0N<8*Itejl6WX^S6Sv*A~{<`LnjQ56rX_tX(>lR5MXcM}E%aoq@PPSMuh zUW7Um5|*feRoknCT4ONSqVeml&i1j6$kDZwtek|sYvZ>v24Ny=UX!psB^&(pJ05-| zM#4&5ldween@D0AHUKuWa7gE zc+IrfcuCk}{kH@VJqyp&)8V0CT%E5ZV6ZLE^!u8J1O3`EtOgP`QKo9vTVXt$WFi$k zHEKvAU`h0F`B$RajC&>Eu7NR`V}=R~g9XW2m2ze622Rw3h8|a$$%Va&ZV-;FFrIEi zwx@}1F;rWsq>Yn5yUR>czWejU5Y# zQ?v?{1-*@%dKoWhk#IGSp%|xVtieKDU^t1AWlLqAN%&8Rck~qo=Q_8!_^#Z};wIj> zD>l>E#Oqnzj!ac|Dwo5_+b5E`#YbEhjI~-@-((3c{iYCQD!n3(&3s{41 z3UPseSgmZPDatLSn;BwIcgyK0osRBOy3Pm;W+tT8TV@GvXS4lE#<({-tSLcctkzo$ z)G8Ah2FE(Y+jQ+a?88KmR)II!b~e+gLA)y5e3PjY>01drv72x6aW+4Sa-#7#pX)bs zahcPL^QB2A*D2w}-L#R+S}I@CDHKNSe6MyjUGSYnjlM03fh9e>qt6Unn-~L641>qT z$}nR*Ebh&^3v_josn0~S#kyf|byC6tl4&?*YaN< zJzL5*moJt!m0J4im;f76vSA5h4A=P4ifk1H-C@`h9VW!}3h}3IdX~LP>UIBwS#J06~K%)|E z9(60;&xFCkTA`^h7zX|d2HTl~osU27UVc4c{+qGS-214BMXVKP|YQKXE2ZNBnV4@akU=&woCgJ}(XY@K)%q!C-TW=1t=r=6y>> z=bkYb%+m+L7*wEZO<`36soFfiyzPws(i_O|U5P;>V}q&0#0vA0OH|U##mv&=ZrFY} zmFL_7b9Q^{UhlXW2|G6oZ57{&fem+s5PTG%ph);IPy!>cQ8(bnP}rUdSj|kyP9wmF zrnktyM2z9i#t^S@uTDuv=>fgsZKq;j*zSN~vzGUp{?q;FIMXJ5*HX33xY}ie|EeWL zT+I#|Jbp21{rdb+uxWl->dW2vKP;*KO_qGZu#*y^VkhL?HWCAKo>r#>M@{U^7_@bD zi^r+1di6M2K8*DcMcrD8c*C47`u2svFAw9xP+ zKG0g2iX-<~lVdH-{fd3mL{4M%^BkEu1MtSSb z7;GebHVz}g;C8&knZm)zX|}E2R<8%nw@i8z`1UL!lW%g)0tE%=HDT4w!cI+|FJS8} z9fKuKae%8~FqU4moDN_HaeJ?ezTJ1UUns}>A{#A}Rxlf>ePtzK^DOe4uP5}CK zQTLiygZ(RTSUNMX^`^(X8Iz^>o9vRrIR@4FRyviZr^6 z4Q@^vt$Ey@)ofI-%^{o!7#zk18v}Q23Z+5g94VS`&|NIUAx1P~gOh|wz~DiqFUMr7<($bdyRsd|! z_cq%wKJR2o?UYt=?`_?QgjLuJq^o!7W;tE^27?*mYi8k$TZ4tf!6{nwi?{RlBr53? zR$t33ewVGjv1y5HMkQ?mn=M3EHDK^fB}ZuJT9KGotrm%Er)a}qv-f(iXf4h5OXmM# z0Q@@)&SJLB=)MSp3+-Yd$_G<;Ba_8+4hE+yZ!`5wwvo-&#Qoyce5RfwlabTutafQ- zV8!Sz7w06|)(r@X+-BPaY~@iU+pZ9FyPitLrBo|@SHA^=TbXqIPnkHK?pD+7bSBPb z41+WAU8Yw}N5bGVU>xU}B{;gxbjq22!{SBXW$QkT@NFipWV($^T+KG_vMLti6rJsv zDA6h9+L?Sm%C<{6A+%v|xvz^&<$Lw~D9#VsL@H}K2B%dZKkO7IQ6bJ2%^C~<$I0;E zo)|bK5&D(~VT7>FmZWs5G8P6Gum%fpg~4;-t_6!8XKNFz!8L+r36jgzk>2SX7(6c5 zC;7&*&=A>TT@u-Y1ZK8CTcDUV&LYY z(pcUQq**J5Hx&C-%plt_qF zSZL#N#beTg4LCi9hc)qH%l-5G_-?tp?@z>srf^`gLu*lmn2zHqqlE>-(y`E41(tYR zw=t+5Vv*!*-&2=%4a1fobe5AadZf7;s=~>RfL`i{AX{{FPKoZ^X5Le#P)DnXS%Y~ZB&o|Yrtux2l8I1%&9`D=hcPnha2EG2fy1$M3 zdo%Csn#vay_cu6a+D$`$MWM$6OoiiJXT0m`Zb(m64oH9kB-I~-TOb73K>9H};5kMD zkxe=!@NlKyFxUirS{LPZU`RM(jsdBgR$dCaw1;?8?JVmX5s^{o{u3~^d>O4?rh;A( z@9y)Qp~4?A9sp%a?{eSrv5+;}{5y7zYFz(O-MRz)IMjhhh z>~>u^R_`8q6->(}3yx)Cp|e!Lad)((fJ&lFOR3^_kLB1_v)-7?v>~y|%yFgbN-fr^ zBeWNjcDp2&)l?`e1{QpN`0ccLH|9P-o0xnbELimOpYKJ#V%qnAxfcv`Q9o^uUu;^b zue;Od&Gx+;c&86PtO)XqD%M{;j~~7gWJ~2C;l~k*n$3Q+Qu<*qJ9W)GP8_n+4>&yU zKFkHi!rk?|sSc{=vU;AH+xAF=jQ91&g-Yt6VsBMWS2+^Dc52@C2D+#d7(CdIIaRYEo3bu7op1mu zJQWG=7+A>ILjNg-ff|h0DQW8r|Kx6e!&lrF?rvJ$ttD2F0Jyaaz&Y?}0?KE+BGZXe ziFrO771J{4lLvrz5(8i}!cU$L)Ax)G=BJ*T-(5$?)h3;cF)$d+3GXPse3;ztd!Kfl z&%2oAzVpMr`@_ETao>5`c21jkziDqb@n#*b*X`B1y_Brlt5sX85~XK)G1TU)BFRLJ z_E|i~GN+a^Hi3QsH z9wXaVnI@LW5(%u!NMIif?1^dR>?Tcj=^?3!{edaig^?zRMQ@^HnDxgvmcm-9X?51^ zik3ZLlsj0~hO62&82cvW4DjEn4VHDAn4KmUz!rY1@InFx8v_TYXubJ9;OGj2je+gs z3K&dyv#zMv(w6u`5`N_)-Ag>8aeF>vur;t3gRmOgxlLtkvs$2dm>rl;(ww5r2kl#f za6sP+11CBBM?jKDSFact40hx2w=f(Y<+qt(l;~n=ve#xFv!$>oGRr zQKiWs;YMrPu=59l<5k?A)|%r+ecbd&(F_S5*w|n~Kvx@*!qVbN7EFcyWBZ+`u`Jz)ru0!Dnl5z+i2C6EHZ> z?GpqFgWu+(e6gL+H&Z3dssdo~a9$(~@z-^;lmLUV1{(&aYpIMNxs}fl_$p(r#ra%2 zmv8GXzsc0UH*;|+(<)_J4{rc(_igu&@l{ZHw3D&4K5eHOhnN*#YK;KD$NYMm{&eZ4S>O>y{ z7+lrI1HNX>TwKA-I}-zE>yun#CM3ow8a5UZ&x_(=cZz2G@T6X!mW0stNu#-rn)70F zS!ym@lGY}QmJR51)94=B?F~-RV%;`Dp_8G%z^X-io=MCa4AU|^Sec0DsKBb&+gF@~ zgKSD2_kvb2@%F6Lni~eMOVP}6S4eFB&(6JSe{E)__RN;+vRFFaiG+p07>8MI%Tlwz zQE^>}>eN9EMZi(fsmNi@41Q9faNqKtd$?(BA1C{l#rk2iJPnxn;C?8TVzQV1iejpL zJ2Md4bg$m*exRO7SSu8?DLq?L^CeHuEF@B>)-G-{=F z%&L&konRPF&H!y^SLtl4Qk2QTOavZCU3UAJZl;bdjakaN6mF^1QelPk!eA1{z$&JF zp#t*w*o2lqaYH}9uwi^;sz-Q!2Y;`o^X!#1FIdCx7b4$550 zGu^t)`!(7YfKcAj3N9$QEpMDYjZkV_E>&Au_j~{wB@x#Y|{~H+W)?nT%y=H=2Fj%^~{hiUv$*ZV0Q=h8P4h+_th9TFO)@6-H^mso^ z48j;=fm_1DNt?uI>@P5G##mzce0*TAjpGF=O=7+O@bN#OOCY?VVesI7+kZR_4^viY8I0R$>+pQBoYc=G>}=!7an#>*EkxGCXg{>S zZ;a!RaFWb`YL?-H`Rs5r*>`?F`r**~>%RMsht5A8y8q$O`49WfKkhrf?c!gy@z-tq z)5fL!!>0Yk=S}pp<$PGTpV#e&b^G3yF8Ax`eic2eqQ`agjI^ID^RSL~>-G+` zMwHlX+xu<%U~=5Fk5=ZijvhDd)21y5f7rzLn|QT}XPbDw>#X*j&7r$Jb~nfF`p`Mc z>Xmenqf2k4ekzgWu`5{!m2s$!XFxUbnuIYv2N=G{)x=ld3XP0JZG}jf_TOS<*$W>e z;bCo6Qx7!>mW*wnCUKxB6yy+#0-|9P^zscD8~I#`mARx75{8aQv$Psq+-q08n-W4? z+Q7BVf^(?^5z1=mOnc^AEw3@Szj$RF#=M-A3=J~BlACrRW@iop|x{aQB#$ZHO>IH<02?HzB2-(DL%PaAl|4pWe3cIlC#f)q( zkep=V8l7;jS!;dMD*%>Im9eh!b+(>x1~y@@L<{j4?W1F>fm|*arS{pTm!L3n2 zA5m-3sS`KLFxW*H941VPYAW2z*M@aMWc5nd7;N6ri?>z+e#f3WK3v3y~Gf!j&{*fZ2MJYE|!Ab&SI*R=yJk z-<~nJ^e4DitIfu3=?2g(|B*HL3WJsSLkuQTw501H<55($IBpeDnN-)8FH3rd-hx%M_) zev>9H_V=mkEi)-Mgu%C|sE~=XX<=~lj+j`TRJxsohnu)en|(N&ZU}?RU@(r;s?g3* zc-*gRnH41W>V(KrW(`MZNwN91EOu?Z%{PM-hMB@NDvWT7F7%tlZn+fQ7Ngrj$X5H=mH>E~t&QQ{+9+F>2!qFB;Cy3V zYb?$f9L5GW*Nw)k&=4d`M)~?M-x%kkWxg>jG*|U#-)ybR(N2jdT4TJ0d);QcD70n; zEiwF>ceLZKZ8AKTXjPe0gWE;1X$ci*Ghn!s#Lyza>O%Bu1;o9xk~vNjiQ4_2eUNYr z0|#p`3CG}7Io^nb%iUcCgRs&%)ip-u?yfwriGM|F!*x76^d>td5VmO2_D|H7PzQ4w zu~eHlJ9b3Eo5#uadAfcWuO5a%VrIkN3kA{4FioJVG1yo*x_BC?)569}@R&&SJ3o!) z#3_{$#(&?*QG4Ncr(;Qn5S>~l#Gxgk^r89J;kS$e;oK|u0d&>KItGKs{I#`lze=kH z`-yAzVevV*t9+>`fZ`U~_cJsG<`7D#|I_)aGw!Wxoo$(a2jX6d{W~yoIyv#CioR<~ zv((Veu1fw!s*JO%s_LSqZ>zf7{O4XrSYXVS@esK7a6JZIqhpTOYb4{Il6(enBovj4bx{Car)k3= z-KeElbn|YCmH6ZANVqKS#_==Qspa#}#CbjtO&Cj zN*n95*Dw3~A6ENMbLnlOUm>xMsC%M&`1JGsS@P@2gJ7*+#@i3m#~-&3Uw7|+yB9fc zahzt*vU0@0@BjMX(=|Q)yz|?uL+g}u6uk+jFPqiVgn(P0*2^!?&;Rhl!_S9@uUmVg z?DvZ4>qvOt^u2&vLQ^L?y|fAaf_8(o*@1ULtkL)|GE=bACX{Gghj+9?FF;%TXUbL zX3l|6#o)%TZTyehw&WiqoA$rkM*n`(mi*Hu`uk1$&ql>x*IFW9C2Orl zKd+-ducN=NTYuZMep^Ssu3JBCqA#21^QQf2-Tt8E8LGFcB>HU={cRKd)#Tr8qQ9^y z{&^SwwClXvcAj?Kr+xR`q4(+7`*P}iJoerlyDx{%S)LA^$3yo)ax^*h66rtO_wOZY z4^RE$v3ERl_lM4YA4_)oc)O1``*^+YEcfw3vTM(`(aeH%PfbL{2-86a%P>uZ|DMB) z5B++FrF6hx6MK2UDtlua>X<;Ld94iwV+}SK7C4z@*g4i97Epm;6Y@DHUP&mNq|Z4f zZWA`MuvaeNaS~2`0%8i*fm%W!m`W_Mk>L;;kSFjx@Hr0&`rcfKI2+!3=HtAystU~hxG3;*zWdO3^;!$ z{?o*sg*qlJg9X^d(f1D}6o6FqfYdo^6`CCjfZ1g9>xIjDKsrNT+S_7yZ0M_E?$4}* zI#WCdtWIqb54TmDfj1+B%^FN>4)2sV_&H+)9@h+mE5yfg9v+%g^h9-*+OtM`$)Ml% zyxE*M2D>kGz~K4-431{4<}3z-&0o6S&r9H5oT61Mst+wv^aX?K)ls`D^aX=0TvoqE zq7Mdx$D>%x9F2?BZniZp;u;;iqsyg%Fu05zI7EszG2&I?;st#zj=@cv9x2R_l=wme zv=Sq`#3`D2k`fFqwDZNdz}7}4ALWJODwe6d!J-M%fpzBj{Qb2x_=3SjiATT+PSF<( zR_0j}49>O+sa72x79_VCqTf_CV6d2$=+FUfgXgnqdxgO^HW-6&@ihj!Q}hLcZNel; z?(YHy<5VnRO5X33NH=fNjqlS+w9@I;9fNq`;qS?B-lpp+_I)PGWuk1RaRd5;!P-5S z?-UEI+gy~*w{wNooiI4tc$=;pAvg2cRxw@AGf9-BQA#y*r_35$Po-+#Wq{stx?N1i z#Z;%l(FNXdIW1|IGM#FsmEpKL&nTa13!W?ZMMo)edNm5fC5foG*t#JeT3pI^D*0|j z%c7Q}YJS|z^$Phek)jKOQZc$Iv@?ZnwJ@v|C#}LXF7%6qezrJm1I&Xu(#hMfVZ-1U zfqo5uk?vh>nqju20a2riaf;c4hhp7A8P?6$r-kY`Ppqr~%Nk*#i`7A{HV`BiE5mX{ zOQcjC6$Qq%smZA1BYs8EOpml6F0^?{*Bi59V_9x(8_ij@F|XFgmBv^+oUc#HjajWR zuebND)}|3{O3a_Mi=u5aS~ps&dJFev5wANx8}~{qwsYX#nKp&h<``RXXU{}R;$awg zC8jO59hLE;Hp8#d*ntg$-FG^HWC2)rTkh{0{at;qZ*-RGY|1f~VY3e}jDa@-;}UjY z7#No89x6t^h*T&;UodsDliI32Uh0(k1L238WTQTMu=)m|6caJMPP~33>W>&$vbrD5 z)#VUwMBP|-`7~9hf@kt3QpYf~Orfu804zb%z8D>&$tl*-;${J#>ii%OMrLB6bxmR* z9eQDI(gejpnHJ)js$qO93HIK){eGsuQ5rTjNJb&PxHAF60$|5r5ftYpy=0DSw2q}~ z(P=9O65ceyTHUd={Xtk&pxJdLwjT=oYXF8}0lVVw*kQ0 zqlcUR1O`9+m;WIQb^tcv+$5weQ!kRVOg$7mFSryN3m9x%O2B64MGicrrWoH^ShT zi7@zNuzLC|1a;2TwG%7Lt-HE3r%>H471Iq|JPc=t?&DY8na%QXG&^b@G^Nyh0AI00#-N)to-yWWSIX+m7 zF`+v&{>g%MgV{Jm>x4HiBT@AFd9-?-Ek~sNO-V&=8bF-h; zI3Zh1W?`@ji`hI(G`t#IsR^CMj)Xjb(zQB1AIoYMFssh

    ;U1uIe=0)%R#i6KcbD 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%0A-PAU0To)%C)_)(1nj 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

    C;pLMr&+pfjB`XkleuG)=hy=>K>H3s`e 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�R~r3I^`4burau@cl-y|U@>sQV3|S> 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

    a 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∋Zx(Szt9;X{;5 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

    $6 z05b=W*24UL5M-5#0c_sBi{HoaPgv0ll_{7P`G~4`FJ^NWJWwv=wP-m~xA}0n(svPx zl!G1OA;DqCQn%&gUkyj<$F0u-T4^k(&ZE;B?2DE;b!y?ZRiQLZE+kg0%Qi5qu~%n` zMD5Z`B|{iiT}4C8U=RhUg4ycA$@CR;eU#zAxO8-n8s1U#X*@IuIuqX3bRDbIAsvx- z>T}^evRkGwT;0`}eXUAt zpWH=RjCX107n^(M>w6dLyUN;Df(GxLEp*Nr7*2SL%o%Ph!+@)v(iKx$%^r9*v8

    ;#GcT9oMmq=t0^y<3Ot33*i*4CZlP8e@S# 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

    &d5lfY9*L$L-gb}P@7f&& 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

    QI7sNdf14F_x<+qQT&TlkXvPnxe9RbEN==unj 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

    lb_a4zM(UWOOF7?Sox-o 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 FV1jQVFH`^k literal 0 HcmV?d00001 diff --git a/Enhancement/BreathOfTheWild_CleanCameraRune/Presets/preset-photo.png b/Enhancement/BreathOfTheWild_CleanCameraRune/Presets/preset-photo.png new file mode 100644 index 0000000000000000000000000000000000000000..90b7b15bc12f862a769aac2aa3b467fbcd3e3da9 GIT binary patch literal 581174 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

    g8Pz_#jL*Ifg!ZF0L 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

    c30ljN!eqoUFTmOUe<+iwNM;IN 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%0Avv+4WbZ2O}yFDGDhAl&X+#Q7OJj|^X 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

    Z+zl=E>AnvxN{qCA^$k4e0t%zb`vJ{-6 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

    oGM1CQj{*loVkc28(}I5Mvl|f6p@bE5_oH4 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
    sv^#P&HhDQTdOb3BEiwjhB{Wv=AH5J9yA_{o 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�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 s 0.0)?int(0xFFFFFFFF):int(0x0)); +R1i.z = floatBitsToInt(roundEven(intBitsToFloat(backupReg0i))); +R1i.w = floatBitsToInt(texture(textureUnitPS0, vec3(intBitsToFloat(R1i.x),intBitsToFloat(R1i.y),intBitsToFloat(R1i.z))).w); +// 0 +PV0i.x = R1i.w; +PV0i.x = floatBitsToInt(intBitsToFloat(PV0i.x) * 2.0); +PV0i.y = ((intBitsToFloat(0x3f0a3d71) > intBitsToFloat(R1i.w))?int(0xFFFFFFFF):int(0x0)); +PV0i.w = floatBitsToInt(intBitsToFloat(R1i.w) + -(0.5)); +PV0i.w = floatBitsToInt(intBitsToFloat(PV0i.w) * 2.0); +// 1 +R127i.y = ((PV0i.y == 0)?(0x3f800000):(PV0i.x)); +R127i.z = ((PV0i.y == 0)?(PV0i.w):(0)); +PV1i.z = R127i.z; +// 2 +R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.z),intBitsToFloat(uf_remappedPS[0].y)) + intBitsToFloat(uf_remappedPS[1].y))); +PV0i.z = R123i.z; +R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.z),intBitsToFloat(uf_remappedPS[0].x)) + intBitsToFloat(uf_remappedPS[1].x))); +PV0i.w = R123i.w; +// 3 +backupReg0i = R0i.x; +PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), intBitsToFloat(uf_remappedPS[0].w))); +R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(uf_remappedPS[0].z)) + intBitsToFloat(uf_remappedPS[1].z))); +PV1i.y = R123i.y; +R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PV0i.w))); +R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.y), intBitsToFloat(PV0i.z))); +// 4 +R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.z), intBitsToFloat(PV1i.y))); +R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.w), intBitsToFloat(PV1i.x))); +R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(uf_remappedPS[2].y)) + intBitsToFloat(uf_remappedPS[3].y))); +PV0i.z = R123i.z; +R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(uf_remappedPS[2].x)) + intBitsToFloat(uf_remappedPS[3].x))); +PV0i.w = R123i.w; +// 5 +backupReg0i = R0i.x; +PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), intBitsToFloat(uf_remappedPS[2].w))); +R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(uf_remappedPS[2].z)) + intBitsToFloat(uf_remappedPS[3].z))); +PV1i.y = R123i.y; +PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PV0i.w))); +PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.y), intBitsToFloat(PV0i.z))); +// 6 +backupReg0i = R0i.z; +PV0i.x = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(R0i.w)), intBitsToFloat(PV1i.x))); +R0i.y = ((R2i.x == 0)?(PV1i.w):(R127i.w)); +PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PV1i.y))); +R0i.x = ((R2i.x == 0)?(PV1i.z):(R126i.z)); +PS0i = R0i.x; +// 7 +R0i.z = ((R2i.x == 0)?(PV0i.z):(R127i.x)); +R0i.w = ((R2i.x == 0)?(PV0i.x):(R126i.y)); +// export +passPixelColor0 = vec4(intBitsToFloat(R0i.x), intBitsToFloat(R0i.y), intBitsToFloat(R0i.z), 0.0); +} diff --git a/Enhancement/BreathOfTheWild_CleanCameraRune/rules.txt b/Enhancement/BreathOfTheWild_CleanCameraRune/rules.txt new file mode 100644 index 00000000..23b1f68c --- /dev/null +++ b/Enhancement/BreathOfTheWild_CleanCameraRune/rules.txt @@ -0,0 +1,42 @@ +[Definition] +titleIds = 00050000101C9300,00050000101C9400,00050000101C9500 # ALZP01 +name = "The Legend of Zelda: Breath of the Wild - Clean Camera Rune (configurable)" +version = 2 + +# This pack is configurable, which could make the pack more playable with some compromises. +# You can disable shaders if you want to to remove graphical bugs that this will bring. Everything shader has a comment with the results of my limited research. +# Here's a list with all the different parts, which you can disable (just rename the extension to .bak). +# Installing/changing preset's should be as easy as just moving the files next towards the rules.txt file. + +# The default presets (that are used when you've downloaded this) is Minimal mode, which doesn't have any drawback. +# Photo mode however is much more obtrusive and has a significant impact on the menu's. You'll need to browse the menu's blindly. +# As always, I don't discourage changing some of these out by yourself as it's all limited testing. +# Included are screenshots of both of these presets to help you decide. + +# Tested: +# 5431383136d7b11b_0000000000000000_vs.txt // Main Lines // No drawbacks +# cb83a22cf0961e1a_000000000000007d_ps.txt // "Zoom" Text // No drawbacks +# 156a8a37bc669fec_0000000000001e49_ps.txt // Black tint edge // No drawbacks +# 2d0ed5b8778b1709_0000000000000000_vs.txt // Edge Bloom 1 // No drawbacks +# 7751959c9083eebb_000000000000007d_ps.txt // Sheikah letters left&right, menu button prompts // Removes most text from menu +# a15e2a77cef4c5e3_000000000000007d_ps.txt // Text Frame // Removes text from menu +# ededcf8bdc3384ef_0000000000000079_ps.txt // Glow, Frame GUI // Clear UI, Removes fade on main menu, removes inventory icons, removes hearts + +# Don't use this! +# 569ebe93f1ae5799_0000000000000079_ps.txt // Vintage, Remove buttons, Edge Textures, Edge Background // MASSIVE ACNE OR BLACK SCREEN + +# ================================= +# Presets: +# - Minimal +# 5431383136d7b11b_0000000000000000_vs.txt +# cb83a22cf0961e1a_000000000000007d_ps.txt +# 156a8a37bc669fec_0000000000001e49_ps.txt + +# - Photo +# 569ebe93f1ae5799_0000000000000079_ps.txt +# 7751959c9083eebb_000000000000007d_ps.txt +# ededcf8bdc3384ef_0000000000000079_ps.txt +# 2d0ed5b8778b1709_0000000000000000_vs.txt +# a15e2a77cef4c5e3_000000000000007d_ps.txt + +# There's improvements to be made so give some feedback if you find anything. You can create a new issue on the github repository and it'll be looked at. \ No newline at end of file From f425378e686f2a17745a5f744bd51c8f879d3860 Mon Sep 17 00:00:00 2001 From: Jamie Date: Sun, 5 Nov 2017 15:51:11 -0800 Subject: [PATCH 07/34] Clarity GFX Fixed Problem with Bloom and normalzied / Unnormalized values, Removed some Clamp values from the pipleline that were just there to simulate Saturate. --- .../bd8bba59e2149449_00000000000003c9_ps.txt | 71 +++++++++---------- 1 file changed, 33 insertions(+), 38 deletions(-) diff --git a/Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.txt b/Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.txt index 3a6fc795..615d67b8 100644 --- a/Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.txt +++ b/Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.txt @@ -28,7 +28,9 @@ const float bloomFactor = 0.0; //Default is 1.0 const float gamma = 1.00; //Default is 1.0 const float Bleach = 0.2; //Default is 0.0 -const float vibrance = 0.015; // 0.0 is neutral +float exposure = 1.5; //Default is 1.0 +const float defog = 0.12; //Default is 0.0 How much of the far distance fog to "remove." +const float vibrance = 0.015; //Default is 0.0 //LumaShapening #define sharp_strength 0.25 //[0.10 to 3.00] Strength of the sharpening Default is 0.65 @@ -45,9 +47,9 @@ const float vibrance = 0.015; // 0.0 is neutral #define Technicolor2_Saturation 0.51 //Default is 1.0 //Fake High Dynamic Range. -#define HDRPower 1.20 // 0.0 to 8.0 "Raising this seems to make the effect stronger and also brighter , Default 1.30." -#define radius1 0.50 // 0.0 to 8.0 "Default 0.793 , will affect FX." -#define radius2 0.50 // 0.0 to 8.0 "Default 0.87 , will affect FX." +#define HDRPower 1.20 // 0.0 to 8.0 "Raising this seems to make the effect stronger and also darker , Default 1.30." +#define radius1 0.793 // 0.0 to 8.0 "Default 0.793 , will affect FX." +#define radius2 0.87 // 0.0 to 8.0 "Default 0.87 , will affect FX." //----------------------------------------------------------- //End of adjustable values @@ -56,7 +58,7 @@ const float vibrance = 0.015; // 0.0 is neutral //Do not edit under this line. const float sat = 0.0; - +const vec3 FogColor = vec3(0.0, 0.0, 0.0); //defog Color"; uniform ivec4 uf_remappedPS[1]; layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0xf46ac800 res 320x180x1 dim 1 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x5) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 2 2 2 border: 1 @@ -74,18 +76,12 @@ return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); } float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } -float exposure(vec3 eye, vec3 L, float low, float high) { - return mix( - low, - high, - pow((1.0 - dot(normalize(eye), L)) / 2.0, 10.0) - ); -} - //ToneMapping vec3 TonemapPass(vec3 inputColor) { vec3 color = inputColor; + color = clamp(color - defog * FogColor * 2.55, 0.0, 1.0); // defog + color *= exposure/(1.0+ color / exposure); const vec3 coefLuma = vec3(0.2126, 0.7152, 0.0722); float lum = dot(coefLuma, color); @@ -112,7 +108,7 @@ vec3 TonemapPass(vec3 inputColor) { vec3 Technicolor2(vec3 inputColor) { vec3 color = inputColor; vec3 Color_Strength = vec3(Technicolor2_Red_Strength, Technicolor2_Green_Strength, Technicolor2_Blue_Strength); - vec3 source = clamp(color, 0.0, 1.0); + vec3 source = color; vec3 temp = 1.0 - source; vec3 target = temp.grg; vec3 target2 = temp.bbr; @@ -133,7 +129,7 @@ vec3 Technicolor2(vec3 inputColor) { color = mix(vec3(dot(color, vec3(0.333))), color, Technicolor2_Saturation); - return clamp (color, 0.0, 1.0); + return color; } //LumaShapening @@ -185,38 +181,37 @@ float lumasharping(sampler2D tex, vec2 pos){ //Fake High Dynamic Range. vec3 HDRPass(sampler2D tex, vec2 pos){ - vec4 colorInput = texture(tex, pos); - vec3 color = colorInput.rgb; + vec3 color = texture(tex, pos).rgb; - vec3 bloom_sum1 = texture(tex, pos + vec2(1.5, -1.5) * radius1).rgb; - bloom_sum1 += texture(tex, pos + vec2(-1.5, -1.5) * radius1).rgb; - bloom_sum1 += texture(tex, pos + vec2( 1.5, 1.5) * radius1).rgb; - bloom_sum1 += texture(tex, pos + vec2(-1.5, 1.5) * radius1).rgb; - bloom_sum1 += texture(tex, pos + vec2( 0.0, -2.5) * radius1).rgb; - bloom_sum1 += texture(tex, pos + vec2( 0.0, 2.5) * radius1).rgb; - bloom_sum1 += texture(tex, pos + vec2(-2.5, 0.0) * radius1).rgb; - bloom_sum1 += texture(tex, pos + vec2( 2.5, 0.0) * radius1).rgb; + vec3 bloom_sum1 = texture(tex, pos + vec2(1.5, -1.5) * radius1 * vec2(px,py)).rgb; + bloom_sum1 += texture(tex, pos + vec2(-1.5, -1.5) * radius1 * vec2(px,py)).rgb; + bloom_sum1 += texture(tex, pos + vec2( 1.5, 1.5) * radius1 * vec2(px,py)).rgb; + bloom_sum1 += texture(tex, pos + vec2(-1.5, 1.5) * radius1 * vec2(px,py)).rgb; + bloom_sum1 += texture(tex, pos + vec2( 0.0, -2.5) * radius1 * vec2(px,py)).rgb; + bloom_sum1 += texture(tex, pos + vec2( 0.0, 2.5) * radius1 * vec2(px,py)).rgb; + bloom_sum1 += texture(tex, pos + vec2(-2.5, 0.0) * radius1 * vec2(px,py)).rgb; + bloom_sum1 += texture(tex, pos + vec2( 2.5, 0.0) * radius1 * vec2(px,py)).rgb; bloom_sum1 *= 0.005; - vec3 bloom_sum2 = texture(tex, pos + vec2(1.5, -1.5) * radius2).rgb; - bloom_sum2 += texture(tex, pos + vec2(-1.5, -1.5) * radius2).rgb; - bloom_sum2 += texture(tex, pos + vec2( 1.5, 1.5) * radius2).rgb; - bloom_sum2 += texture(tex, pos + vec2(-1.5, 1.5) * radius2).rgb; - bloom_sum2 += texture(tex, pos + vec2( 0.0, -2.5) * radius2).rgb; - bloom_sum2 += texture(tex, pos + vec2( 0.0, 2.5) * radius2).rgb; - bloom_sum2 += texture(tex, pos + vec2(-2.5, 0.0) * radius2).rgb; - bloom_sum2 += texture(tex, pos + vec2( 2.5, 0.0) * radius2).rgb; + vec3 bloom_sum2 = texture(tex, pos + vec2(1.5, -1.5) * radius2 * vec2(px,py)).rgb; + bloom_sum2 += texture(tex, pos + vec2(-1.5, -1.5) * radius2 * vec2(px,py)).rgb; + bloom_sum2 += texture(tex, pos + vec2( 1.5, 1.5) * radius2 * vec2(px,py)).rgb; + bloom_sum2 += texture(tex, pos + vec2(-1.5, 1.5) * radius2 * vec2(px,py)).rgb; + bloom_sum2 += texture(tex, pos + vec2( 0.0, -2.5) * radius2 * vec2(px,py)).rgb; + bloom_sum2 += texture(tex, pos + vec2( 0.0, 2.5) * radius2 * vec2(px,py)).rgb; + bloom_sum2 += texture(tex, pos + vec2(-2.5, 0.0) * radius2 * vec2(px,py)).rgb; + bloom_sum2 += texture(tex, pos + vec2( 2.5, 0.0) * radius2 * vec2(px,py)).rgb; bloom_sum2 *= 0.010; - float dist = radius1 - radius2; - vec3 HDR = (colorInput.rgb + (bloom_sum2 - bloom_sum1)) * dist; + float dist = radius2 - radius1; + vec3 HDR = (color + (bloom_sum2 - bloom_sum1)) * dist; - vec3 blend = HDR + colorInput.rgb; - colorInput.rgb = pow(abs(blend), vec3(abs(HDRPower)) + HDR); + vec3 blend = HDR + color; + color = pow(abs(blend), vec3(abs(HDRPower))) + HDR; - return clamp(colorInput.rgb, 0.0,1.0); + return color; } void main() From 5da2653bae89fb8373f60deb5ec81bd1aa07f002 Mon Sep 17 00:00:00 2001 From: Jamie Date: Sun, 5 Nov 2017 19:55:03 -0800 Subject: [PATCH 08/34] Clarity GFX Added 2 preset values Default's to SerFrost's values the other sheet is Jamie's Values. --- .../bd8bba59e2149449_00000000000003c9_ps.txt | 62 ++-- ...49449_00000000000003c9_ps.txt.Jamie Preset | 346 ++++++++++++++++++ 2 files changed, 379 insertions(+), 29 deletions(-) create mode 100644 Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.txt.Jamie Preset diff --git a/Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.txt b/Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.txt index 615d67b8..27253b56 100644 --- a/Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.txt +++ b/Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.txt @@ -3,15 +3,12 @@ // shader bd8bba59e2149449 -// Possible problems -// Being below 1.3.0 will give you double-vision with recent graphic packs. Update to 1.3.0 or above. // If you're experiencing any issues (due to having the previous Clarity shaders installed), please remove and redownload all of the BotW packs. -// Changelog V0.1 -// Changed from shader f14bb_ps.txt to bd8bb_ps.txt - -// Credit to NAVras for merging to a better shader.(specal Note Thank you NAVras, For Helping Debug and answering silly questions.) +// Credit to NAVras for merging to a better shader. +// (Special thanks to NAVras for helping debug and answer silly questions.) // Could not have got this far without you. + // Credit to getdls for adding exposure & Original Contrasty. // Clarity GFX @@ -20,44 +17,51 @@ // Credit to Serfrost for preset values. // Original shader dumped using cemu 1.10.0f, BotW 1.3.1 -// Changelog v0.7 +// Changelog v0.8 //########################################################## //ToneMapping -const float bloomFactor = 0.0; //Default is 1.0 -const float gamma = 1.00; //Default is 1.0 -const float Bleach = 0.2; //Default is 0.0 -float exposure = 1.5; //Default is 1.0 -const float defog = 0.12; //Default is 0.0 How much of the far distance fog to "remove." -const float vibrance = 0.015; //Default is 0.0 +const float bloomFactor = 0.2; //Default is 1.0 +const float gamma = 0.80; //Default is 1.0 +const float Bleach = 0.0; //Default is 0.0 +float exposure = 1.1; //Default is 1.0 +const float defog = 0.12; //Default is 0.0 +const float vibrance = 0.0; //Default is 0.0 //LumaShapening -#define sharp_strength 0.25 //[0.10 to 3.00] Strength of the sharpening Default is 0.65 -#define sharp_clamp 0.085 //[0.000 to 1.000] Limits maximum amount of sharpening a pixel recieves - Default is 0.035 +#define sharp_strength 0.65 //[0.10 to 3.00] Default 0.65 , Strength of the sharpening. +#define sharp_clamp 0.085 //[0.000 to 1.000] Default 0.035 , Limits maximum amount of sharpening a pixel recieves. + //Advanced sharpening settings -#define offset_bias 1.0 //[0.0 to 6.0] Offset bias adjusts the radius of the sampling pattern. +#define offset_bias 1.0 //[0.0 to 6.0] Offset bias adjusts the radius of the sampling pattern. //Technicolor2 -#define Technicolor2_Red_Strength 0.0 //Default is 0.0 -#define Technicolor2_Green_Strength 0.0 //Default is 0.0 -#define Technicolor2_Blue_Strength 0.0 //Default is 0.0 -#define Technicolor2_Brightness 1.0 //Default is 1.0 -#define Technicolor2_Strength 0.40 //Default is 1.0 -#define Technicolor2_Saturation 0.51 //Default is 1.0 +#define Technicolor2_Red_Strength 0.0 //Default is 0.0 +#define Technicolor2_Green_Strength -0.2 //Default is 0.0 +#define Technicolor2_Blue_Strength 0.0 //Default is 0.0 +#define Technicolor2_Brightness 0.38 //Default is 1.0 +#define Technicolor2_Strength 1.0 //Default is 1.0 +#define Technicolor2_Saturation 0.52 //Default is 1.0 //Fake High Dynamic Range. -#define HDRPower 1.20 // 0.0 to 8.0 "Raising this seems to make the effect stronger and also darker , Default 1.30." -#define radius1 0.793 // 0.0 to 8.0 "Default 0.793 , will affect FX." -#define radius2 0.87 // 0.0 to 8.0 "Default 0.87 , will affect FX." -//----------------------------------------------------------- - -//End of adjustable values +#define HDRPower 1.75 //0.0 to 8.0 Default 1.30 , Raising this seems to make the effect stronger and also darker. +#define radius1 0.793 //0.0 to 8.0 Default 0.793 , will affect FX. +#define radius2 0.870 //0.0 to 8.0 Default 0.870 , will affect FX. //########################################################### + + + + //Do not edit under this line. -const float sat = 0.0; + + + + + +const float sat = 1.0; const vec3 FogColor = vec3(0.0, 0.0, 0.0); //defog Color"; uniform ivec4 uf_remappedPS[1]; diff --git a/Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.txt.Jamie Preset b/Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.txt.Jamie Preset new file mode 100644 index 00000000..615d67b8 --- /dev/null +++ b/Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.txt.Jamie Preset @@ -0,0 +1,346 @@ +#version 420 +#extension GL_ARB_texture_gather : enable + +// shader bd8bba59e2149449 + +// Possible problems +// Being below 1.3.0 will give you double-vision with recent graphic packs. Update to 1.3.0 or above. +// If you're experiencing any issues (due to having the previous Clarity shaders installed), please remove and redownload all of the BotW packs. + +// Changelog V0.1 +// Changed from shader f14bb_ps.txt to bd8bb_ps.txt + +// Credit to NAVras for merging to a better shader.(specal Note Thank you NAVras, For Helping Debug and answering silly questions.) +// Could not have got this far without you. +// Credit to getdls for adding exposure & Original Contrasty. + +// Clarity GFX +// Credit to Jamie for main coding. +// Credit to Kiri coding & Reshade logic. +// Credit to Serfrost for preset values. +// Original shader dumped using cemu 1.10.0f, BotW 1.3.1 + +// Changelog v0.7 + +//########################################################## + +//ToneMapping +const float bloomFactor = 0.0; //Default is 1.0 +const float gamma = 1.00; //Default is 1.0 +const float Bleach = 0.2; //Default is 0.0 +float exposure = 1.5; //Default is 1.0 +const float defog = 0.12; //Default is 0.0 How much of the far distance fog to "remove." +const float vibrance = 0.015; //Default is 0.0 + +//LumaShapening +#define sharp_strength 0.25 //[0.10 to 3.00] Strength of the sharpening Default is 0.65 +#define sharp_clamp 0.085 //[0.000 to 1.000] Limits maximum amount of sharpening a pixel recieves - Default is 0.035 +//Advanced sharpening settings +#define offset_bias 1.0 //[0.0 to 6.0] Offset bias adjusts the radius of the sampling pattern. + +//Technicolor2 +#define Technicolor2_Red_Strength 0.0 //Default is 0.0 +#define Technicolor2_Green_Strength 0.0 //Default is 0.0 +#define Technicolor2_Blue_Strength 0.0 //Default is 0.0 +#define Technicolor2_Brightness 1.0 //Default is 1.0 +#define Technicolor2_Strength 0.40 //Default is 1.0 +#define Technicolor2_Saturation 0.51 //Default is 1.0 + +//Fake High Dynamic Range. +#define HDRPower 1.20 // 0.0 to 8.0 "Raising this seems to make the effect stronger and also darker , Default 1.30." +#define radius1 0.793 // 0.0 to 8.0 "Default 0.793 , will affect FX." +#define radius2 0.87 // 0.0 to 8.0 "Default 0.87 , will affect FX." +//----------------------------------------------------------- + +//End of adjustable values + +//########################################################### + +//Do not edit under this line. +const float sat = 0.0; +const vec3 FogColor = vec3(0.0, 0.0, 0.0); //defog Color"; + +uniform ivec4 uf_remappedPS[1]; +layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0xf46ac800 res 320x180x1 dim 1 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x5) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0xf5c7b800 res 1280x720x1 dim 1 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 2 2 2 border: 1 +layout(location = 0) in vec4 passParameterSem0; +layout(location = 0) out vec4 passPixelColor0; +uniform vec2 uf_fragCoordScale; +int clampFI32(int v) +{ +if( v == 0x7FFFFFFF ) + return floatBitsToInt(1.0); +else if( v == 0xFFFFFFFF ) + return floatBitsToInt(0.0); +return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); +} +float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } + +//ToneMapping + +vec3 TonemapPass(vec3 inputColor) { + vec3 color = inputColor; + color = clamp(color - defog * FogColor * 2.55, 0.0, 1.0); // defog + color *= exposure/(1.0+ color / exposure); + + const vec3 coefLuma = vec3(0.2126, 0.7152, 0.0722); + float lum = dot(coefLuma, color); + + float L = clamp(10.0 * (lum - 0.45), 0.0, 1.0); + vec3 A2 = Bleach * color; + + vec3 result1 = 2.0f * color * lum; + vec3 result2 = 1.0f - 2.0f * (1.0f - lum) * (1.0f - color); + + vec3 newColor = mix(result1, result2, L); + vec3 mixRGB = A2 * newColor; + color += ((1.0f - A2) * mixRGB); + + vec3 middlegray = vec3(dot(color, vec3(1.0 / 3.0))); + vec3 diffcolor = color - middlegray; + color = (color + diffcolor * sat) / (1 + (diffcolor * sat)); // saturation + + return color; +} + +//TECHNICOLOR2 + +vec3 Technicolor2(vec3 inputColor) { + vec3 color = inputColor; + vec3 Color_Strength = vec3(Technicolor2_Red_Strength, Technicolor2_Green_Strength, Technicolor2_Blue_Strength); + vec3 source = color; + vec3 temp = 1.0 - source; + vec3 target = temp.grg; + vec3 target2 = temp.bbr; + vec3 temp2 = source * target; + temp2 *= target2; + + temp = temp2 * Color_Strength; + temp2 *= Technicolor2_Brightness; + + target = temp.grg; + target2 = temp.bbr; + + temp = source - target; + temp += temp2; + temp2 = temp - target2; + + color = mix(source, temp2, Technicolor2_Strength); + + color = mix(vec3(dot(color, vec3(0.333))), color, Technicolor2_Saturation); + + return color; +} + +//LumaShapening + +#define px (1.0/1280.0*uf_fragCoordScale.x) +#define py (1.0/720.0*uf_fragCoordScale.y) +#define CoefLuma vec3(0.2126, 0.7152, 0.0722) + +float lumasharping(sampler2D tex, vec2 pos){ + vec4 colorInput = texture(tex, pos); + + vec3 ori = colorInput.rgb; + + // -- Combining the strength and luma multipliers -- + vec3 sharp_strength_luma = (CoefLuma * sharp_strength); + + // -- Gaussian filter -- + // [ .25, .50, .25] [ 1 , 2 , 1 ] + // [ .50, 1, .50] = [ 2 , 4 , 2 ] + // [ .25, .50, .25] [ 1 , 2 , 1 ] + + + //float px = 1.0/tex_size[0]; + //float py = 1.0/tex_size[1]; + + vec3 blur_ori = texture(tex, pos + vec2(px,-py) * 0.5 * offset_bias).rgb; // South East + blur_ori += texture(tex, pos + vec2(-px,-py) * 0.5 * offset_bias).rgb; // South West + blur_ori += texture(tex, pos + vec2(px,py) * 0.5 * offset_bias).rgb; // North East + blur_ori += texture(tex, pos + vec2(-px,py) * 0.5 * offset_bias).rgb; // North West + + blur_ori *= 0.25; // ( /= 4) Divide by the number of texture fetches + + // -- Calculate the sharpening -- + vec3 sharp = ori - blur_ori; //Subtracting the blurred image from the original image + + // -- Adjust strength of the sharpening and clamp it-- + vec4 sharp_strength_luma_clamp = vec4(sharp_strength_luma * (0.5 / sharp_clamp),0.5); //Roll part of the clamp into the dot + + float sharp_luma = clamp((dot(vec4(sharp,1.0), sharp_strength_luma_clamp)), 0.0,1.0 ); //Calculate the luma, adjust the strength, scale up and clamp + sharp_luma = (sharp_clamp * 2.0) * sharp_luma - sharp_clamp; //scale down + + + // -- Combining the values to get the final sharpened pixel -- + + //colorInput.rgb = colorInput.rgb + sharp_luma; // Add the sharpening to the input color. + return sharp_luma; +} + +//Fake High Dynamic Range. + +vec3 HDRPass(sampler2D tex, vec2 pos){ + vec3 color = texture(tex, pos).rgb; + + vec3 bloom_sum1 = texture(tex, pos + vec2(1.5, -1.5) * radius1 * vec2(px,py)).rgb; + bloom_sum1 += texture(tex, pos + vec2(-1.5, -1.5) * radius1 * vec2(px,py)).rgb; + bloom_sum1 += texture(tex, pos + vec2( 1.5, 1.5) * radius1 * vec2(px,py)).rgb; + bloom_sum1 += texture(tex, pos + vec2(-1.5, 1.5) * radius1 * vec2(px,py)).rgb; + bloom_sum1 += texture(tex, pos + vec2( 0.0, -2.5) * radius1 * vec2(px,py)).rgb; + bloom_sum1 += texture(tex, pos + vec2( 0.0, 2.5) * radius1 * vec2(px,py)).rgb; + bloom_sum1 += texture(tex, pos + vec2(-2.5, 0.0) * radius1 * vec2(px,py)).rgb; + bloom_sum1 += texture(tex, pos + vec2( 2.5, 0.0) * radius1 * vec2(px,py)).rgb; + + bloom_sum1 *= 0.005; + + vec3 bloom_sum2 = texture(tex, pos + vec2(1.5, -1.5) * radius2 * vec2(px,py)).rgb; + bloom_sum2 += texture(tex, pos + vec2(-1.5, -1.5) * radius2 * vec2(px,py)).rgb; + bloom_sum2 += texture(tex, pos + vec2( 1.5, 1.5) * radius2 * vec2(px,py)).rgb; + bloom_sum2 += texture(tex, pos + vec2(-1.5, 1.5) * radius2 * vec2(px,py)).rgb; + bloom_sum2 += texture(tex, pos + vec2( 0.0, -2.5) * radius2 * vec2(px,py)).rgb; + bloom_sum2 += texture(tex, pos + vec2( 0.0, 2.5) * radius2 * vec2(px,py)).rgb; + bloom_sum2 += texture(tex, pos + vec2(-2.5, 0.0) * radius2 * vec2(px,py)).rgb; + bloom_sum2 += texture(tex, pos + vec2( 2.5, 0.0) * radius2 * vec2(px,py)).rgb; + + bloom_sum2 *= 0.010; + + float dist = radius2 - radius1; + vec3 HDR = (color + (bloom_sum2 - bloom_sum1)) * dist; + + vec3 blend = HDR + color; + color = pow(abs(blend), vec3(abs(HDRPower))) + HDR; + + return color; +} + +void main() +{ +vec4 R0f = vec4(0.0); +vec4 R1f = vec4(0.0); +vec4 R123f = vec4(0.0); +vec4 R125f = vec4(0.0); +vec4 R126f = vec4(0.0); +vec4 R127f = vec4(0.0); +float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; +vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); +float PS0f = 0.0, PS1f = 0.0; +vec4 tempf = vec4(0.0); +float tempResultf; +int tempResulti; +ivec4 ARi = ivec4(0); +bool predResult = true; +vec3 cubeMapSTM; +int cubeMapFaceId; +R0f = passParameterSem0; +R1f.xyz = (texture(textureUnitPS0, R0f.xy).xyz); +R1f.xyz *= bloomFactor; +R0f.xyz = HDRPass(textureUnitPS1, passParameterSem0.xy); +float smask = lumasharping(textureUnitPS1, passParameterSem0.xy); +R0f.xyz += vec3(smask); +// 0 +R126f.x = R1f.x + R0f.x; +PV0f.x = R126f.x; +R127f.y = R1f.y + R0f.y; +PV0f.y = R127f.y; +R126f.z = R1f.z + R0f.z; +PV0f.z = R126f.z; +R125f.w = 1.0; +// 1 +tempf.x = dot(vec4(PV0f.x,PV0f.y,PV0f.z,-0.0),vec4(intBitsToFloat(0x3e99096c),intBitsToFloat(0x3f162b6b),intBitsToFloat(0x3dea4a8c),0.0)); +PV1f.x = tempf.x; +PV1f.y = tempf.x; +PV1f.z = tempf.x; +PV1f.w = tempf.x; +// 2 +R127f.x = -(R127f.y) * intBitsToFloat(0x3fb8aa3b); +PV0f.y = -(PV1f.x) * intBitsToFloat(0x3fb8aa3b); +R127f.z = -(R126f.x) * intBitsToFloat(0x3fb8aa3b); +R127f.w = -(R126f.z) * intBitsToFloat(0x3fb8aa3b); +R126f.w = 1.0 / PV1f.x; +PS0f = R126f.w; +// 3 +PS1f = exp2(PV0f.y); +// 4 +PV0f.x = -(PS1f) + 1.0; +PS0f = exp2(R127f.x); +// 5 +R127f.x = -(PS0f) + 1.0; +R126f.y = mul_nonIEEE(PV0f.x, PV0f.x); +PV1f.z = PV0f.x * R126f.w; +PS1f = exp2(R127f.w); +// 6 +backupReg0f = R126f.x; +backupReg1f = R127f.z; +R126f.x = mul_nonIEEE(backupReg0f, PV1f.z); +PV0f.y = -(PS1f) + 1.0; +R127f.z = mul_nonIEEE(R126f.z, PV1f.z); +PV0f.z = R127f.z; +R127f.w = mul_nonIEEE(R127f.y, PV1f.z); +PV0f.w = R127f.w; +PS0f = exp2(backupReg1f); +// 7 +PV1f.x = R127f.x + -(PV0f.w); +PV1f.y = PV0f.y + -(PV0f.z); +PV1f.w = -(PS0f) + 1.0; +// 8 +backupReg0f = R127f.z; +R127f.x = (mul_nonIEEE(PV1f.x,R126f.y) + R127f.w); +R127f.x = clamp(R127f.x, 0.0, 1.0); +PV0f.x = R127f.x; +PV0f.y = PV1f.w + -(R126f.x); +R127f.z = (mul_nonIEEE(PV1f.y,R126f.y) + backupReg0f); +R127f.z = clamp(R127f.z, 0.0, 1.0); +PV0f.z = R127f.z; +// 9 +backupReg0f = R126f.x; +R126f.x = (mul_nonIEEE(PV0f.y,R126f.y) + backupReg0f); +R126f.x = clamp(R126f.x, 0.0, 1.0); +PV1f.x = R126f.x; +R126f.y = max(PV0f.x, PV0f.z); +PV1f.w = min(PV0f.x, PV0f.z); +// 10 +tempf.x = dot(vec4(PV1f.x,R127f.x,R127f.z,R125f.w),vec4(intBitsToFloat(0x3f2aaaab),intBitsToFloat(0x3f2aaaab),intBitsToFloat(0x3f2aaaab),-(1.0))); +PV0f.x = tempf.x; +PV0f.y = tempf.x; +PV0f.z = tempf.x; +PV0f.w = tempf.x; +R126f.z = min(PV1f.x, PV1f.w); +PS0f = R126f.z; +// 11 +backupReg0f = R127f.x; +backupReg1f = R127f.z; +R127f.x = max(R126f.x, R126f.y); +PV1f.x = R127f.x; +R123f.y = (mul_nonIEEE(-(PV0f.x),PV0f.x) + 1.0); +PV1f.y = R123f.y; +R127f.z = backupReg0f + -(PS0f); +R125f.w = R126f.x + -(PS0f); +R126f.y = backupReg1f + -(PS0f); +PS1f = R126f.y; +// 12 +R126f.x = (mul_nonIEEE(PV1f.y,intBitsToFloat(uf_remappedPS[0].y)) + intBitsToFloat(uf_remappedPS[0].x)); +PV0f.x = R126f.x; +PV0f.y = -(R126f.z) + PV1f.x; +// 13 +R123f.w = (mul_nonIEEE(-(PV0f.x),PV0f.y) + R127f.x); +PV1f.w = R123f.w; +// 14 +R0f.x = (mul_nonIEEE(R126f.x,R125f.w) + PV1f.w); +R0f.y = (mul_nonIEEE(R126f.x,R127f.z) + PV1f.w); +R0f.z = (mul_nonIEEE(R126f.x,R126f.y) + PV1f.w); + +passPixelColor0 = vec4(R0f.x, R0f.y, R0f.z, R0f.w); + +vec3 color = (passPixelColor0.xyz); +float luminance = color.r*intBitsToFloat(0x3e99096c) + color.g*intBitsToFloat(0x3f162b6b) + color.b*intBitsToFloat(0x3dea4a8c); +float mn = min(min(color.r, color.g), color.b); +float mx = max(max(color.r, color.g), color.b); +float sat = (1.0-(mx - mn)) * (1.0-mx) * luminance * 5.0; +vec3 lightness = vec3((mn + mx)/2.0); +color = TonemapPass(color); +color = Technicolor2(color); +color = pow(color, vec3(1.0 / gamma)); +color = mix(color, mix(color, lightness, -vibrance), sat); +passPixelColor0 = vec4(color, R0f.w); +} \ No newline at end of file From 65a07ce78dc61ed088b8a742f4cd123d12ebe1e4 Mon Sep 17 00:00:00 2001 From: Alex Chirila Date: Tue, 7 Nov 2017 02:17:25 +0200 Subject: [PATCH 09/34] [BotW] Added Monochromia - Sin City inspired Mod --- .../10a2a18d2a9a02d8_000000007924d249_ps.txt | 818 ++++++++++++++++++ .../1cf7d93fabd9e8e3_000000007924d249_ps.txt | 789 +++++++++++++++++ .../3c49f88069390494_0000000079249749_ps.txt | 626 ++++++++++++++ .../49ce4bf04a654e80_00000003c9249749_ps.txt | 668 ++++++++++++++ .../4c324d20f5b6de3b_000000007924d249_ps.txt | 505 +++++++++++ .../53422d4f43914447_0000000000000079_ps.txt | 128 +++ .../81bbc347eb4b6dbc_0000000079249749_ps.txt | 592 +++++++++++++ .../8daf3642d5942233_000000007924d249_ps.txt | 778 +++++++++++++++++ .../a2986482c342660f_000000007924d249_ps.txt | 649 ++++++++++++++ .../a5b3a5e5ab2938bc_0000000000001e49_ps.txt | 102 +++ .../bd8bba59e2149449_00000000000003c9_ps.txt | 253 ++++++ .../bdc96b6928e88c78_0000000079249749_ps.txt | 692 +++++++++++++++ .../bff17056bfac28dd_0000000079249749_ps.txt | 722 ++++++++++++++++ .../de2bafbeb363afb3_0000000079249749_ps.txt | 686 +++++++++++++++ .../dee484f174698fba_000000007924d249_ps.txt | 534 ++++++++++++ .../eabf1e8268c0acf2_0000000079249749_ps.txt | 664 ++++++++++++++ .../BreathOfTheWild_Monochromia/readMe.txt | 48 + .../BreathOfTheWild_Monochromia/rules.txt | 9 + 18 files changed, 9263 insertions(+) create mode 100644 Modifications/BreathOfTheWild_Monochromia/10a2a18d2a9a02d8_000000007924d249_ps.txt create mode 100644 Modifications/BreathOfTheWild_Monochromia/1cf7d93fabd9e8e3_000000007924d249_ps.txt create mode 100644 Modifications/BreathOfTheWild_Monochromia/3c49f88069390494_0000000079249749_ps.txt create mode 100644 Modifications/BreathOfTheWild_Monochromia/49ce4bf04a654e80_00000003c9249749_ps.txt create mode 100644 Modifications/BreathOfTheWild_Monochromia/4c324d20f5b6de3b_000000007924d249_ps.txt create mode 100644 Modifications/BreathOfTheWild_Monochromia/53422d4f43914447_0000000000000079_ps.txt create mode 100644 Modifications/BreathOfTheWild_Monochromia/81bbc347eb4b6dbc_0000000079249749_ps.txt create mode 100644 Modifications/BreathOfTheWild_Monochromia/8daf3642d5942233_000000007924d249_ps.txt create mode 100644 Modifications/BreathOfTheWild_Monochromia/a2986482c342660f_000000007924d249_ps.txt create mode 100644 Modifications/BreathOfTheWild_Monochromia/a5b3a5e5ab2938bc_0000000000001e49_ps.txt create mode 100644 Modifications/BreathOfTheWild_Monochromia/bd8bba59e2149449_00000000000003c9_ps.txt create mode 100644 Modifications/BreathOfTheWild_Monochromia/bdc96b6928e88c78_0000000079249749_ps.txt create mode 100644 Modifications/BreathOfTheWild_Monochromia/bff17056bfac28dd_0000000079249749_ps.txt create mode 100644 Modifications/BreathOfTheWild_Monochromia/de2bafbeb363afb3_0000000079249749_ps.txt create mode 100644 Modifications/BreathOfTheWild_Monochromia/dee484f174698fba_000000007924d249_ps.txt create mode 100644 Modifications/BreathOfTheWild_Monochromia/eabf1e8268c0acf2_0000000079249749_ps.txt create mode 100644 Modifications/BreathOfTheWild_Monochromia/readMe.txt create mode 100644 Modifications/BreathOfTheWild_Monochromia/rules.txt diff --git a/Modifications/BreathOfTheWild_Monochromia/10a2a18d2a9a02d8_000000007924d249_ps.txt b/Modifications/BreathOfTheWild_Monochromia/10a2a18d2a9a02d8_000000007924d249_ps.txt new file mode 100644 index 00000000..26fa5fed --- /dev/null +++ b/Modifications/BreathOfTheWild_Monochromia/10a2a18d2a9a02d8_000000007924d249_ps.txt @@ -0,0 +1,818 @@ +#version 420 +#extension GL_ARB_texture_gather : enable +// shader 10a2a18d2a9a02d8 +// Monochromia +// Link's face +// original shader dumped using cemu 1.11.c, BotW 1.3.1 +uniform ivec4 uf_remappedPS[9]; +layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0xf45c6000 res 1280x720x1 dim 1 tm: 4 format 041a compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 2) uniform sampler2D textureUnitPS2;// Tex2 addr 0xf494a800 res 1280x720x1 dim 1 tm: 4 format 001a compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler2 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 4) uniform sampler2D textureUnitPS4;// Tex4 addr 0xf4e91800 res 1280x720x1 dim 1 tm: 4 format 0806 compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler4 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 6) uniform sampler2D textureUnitPS6;// Tex6 addr 0xf5054000 res 640x360x1 dim 1 tm: 4 format 080e compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler6 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 8) uniform sampler2DArray textureUnitPS8;// Tex8 addr 0xf5593000 res 640x360x2 dim 5 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x2) Sampler8 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 9) uniform sampler2D textureUnitPS9;// Tex9 addr 0xf575f800 res 640x360x1 dim 1 tm: 4 format 001a compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler9 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 11) uniform sampler2D textureUnitPS11;// Tex11 addr 0xf5977800 res 640x360x1 dim 1 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler11 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 12) uniform sampler2D textureUnitPS12;// Tex12 addr 0xf4240800 res 1280x720x1 dim 1 tm: 4 format 080e compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler12 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 13) uniform sampler2D textureUnitPS13;// Tex13 addr 0xf528a800 res 640x360x1 dim 1 tm: 4 format 001a compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler13 ClampX/Y/Z: 2 2 2 border: 1 +layout(location = 0) in vec4 passParameterSem0; +layout(location = 1) in vec4 passParameterSem1; +layout(location = 2) in vec4 passParameterSem2; +layout(location = 3) in vec4 passParameterSem4; +layout(location = 4) in vec4 passParameterSem6; +layout(location = 0) out vec4 passPixelColor0; +uniform vec2 uf_fragCoordScale; +int clampFI32(int v) +{ +if( v == 0x7FFFFFFF ) + return floatBitsToInt(1.0); +else if( v == 0xFFFFFFFF ) + return floatBitsToInt(0.0); +return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); +} +float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } +void main() +{ +ivec4 R0i = ivec4(0); +ivec4 R1i = ivec4(0); +ivec4 R2i = ivec4(0); +ivec4 R3i = ivec4(0); +ivec4 R4i = ivec4(0); +ivec4 R5i = ivec4(0); +ivec4 R6i = ivec4(0); +ivec4 R7i = ivec4(0); +ivec4 R8i = ivec4(0); +ivec4 R9i = ivec4(0); +ivec4 R10i = ivec4(0); +ivec4 R11i = ivec4(0); +ivec4 R12i = ivec4(0); +ivec4 R13i = ivec4(0); +ivec4 R14i = ivec4(0); +ivec4 R15i = ivec4(0); +ivec4 R16i = ivec4(0); +ivec4 R17i = ivec4(0); +ivec4 R18i = ivec4(0); +ivec4 R122i = ivec4(0); +ivec4 R123i = ivec4(0); +ivec4 R124i = ivec4(0); +ivec4 R125i = ivec4(0); +ivec4 R126i = ivec4(0); +ivec4 R127i = ivec4(0); +int backupReg0i, backupReg1i, backupReg2i, backupReg3i, backupReg4i; +ivec4 PV0i = ivec4(0), PV1i = ivec4(0); +int PS0i = 0, PS1i = 0; +ivec4 tempi = ivec4(0); +float tempResultf; +int tempResulti; +ivec4 ARi = ivec4(0); +bool predResult = true; +vec3 cubeMapSTM; +int cubeMapFaceId; +R0i = floatBitsToInt(passParameterSem0); +R1i = floatBitsToInt(passParameterSem1); +R2i = floatBitsToInt(passParameterSem2); +R3i = floatBitsToInt(passParameterSem4); +R4i = floatBitsToInt(passParameterSem6); +R15i.xyzw = floatBitsToInt(texture(textureUnitPS1, intBitsToFloat(R4i.zw)).xyzw); +R7i.xyzw = floatBitsToInt(texture(textureUnitPS2, intBitsToFloat(R4i.zw)).xyzw); +R4i.w = floatBitsToInt(texture(textureUnitPS12, intBitsToFloat(R0i.xy)).x); +R5i.xyzw = floatBitsToInt(textureGather(textureUnitPS6, intBitsToFloat(R0i.xy)).xyzw); +// 0 +backupReg0i = R4i.w; +PV0i.x = floatBitsToInt(intBitsToFloat(R15i.w) * intBitsToFloat(0x437f0000)); +R126i.y = floatBitsToInt((intBitsToFloat(R7i.x) * 2.0 + -(1.0))); +PV0i.y = R126i.y; +R127i.z = floatBitsToInt((intBitsToFloat(R7i.y) * 2.0 + -(1.0))); +PV0i.z = R127i.z; +R4i.w = floatBitsToInt((intBitsToFloat(R7i.z) * 2.0 + -(1.0))); +PV0i.w = R4i.w; +R127i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(backupReg0i)),intBitsToFloat(uf_remappedPS[0].w)) + 1.0)); +PS0i = R127i.y; +// 1 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),intBitsToFloat(PV0i.w),-0.0),vec4(intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),intBitsToFloat(PV0i.w),0.0))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R16i.w = int(intBitsToFloat(PV0i.x)); +PS1i = R16i.w; +// 2 +R127i.x = 0x358637bd; +R6i.y = 0; +PV0i.z = PS1i >> 0x00000005; +PV0i.w = floatBitsToInt(floor(intBitsToFloat(R3i.x))); +R6i.x = floatBitsToInt(sqrt(intBitsToFloat(PV1i.x))); +PS0i = R6i.x; +// 3 +backupReg0i = R127i.y; +PV1i.x = floatBitsToInt(floor(intBitsToFloat(R3i.y))); +R127i.y = PV0i.z & 0x00000007; +R125i.z = floatBitsToInt(intBitsToFloat(PV0i.w) + -(0.5)); +R124i.w = floatBitsToInt(intBitsToFloat(R3i.x) + -(intBitsToFloat(PV0i.w))); +PS1i = floatBitsToInt(1.0 / intBitsToFloat(backupReg0i)); +// 4 +R124i.x = floatBitsToInt(intBitsToFloat(PV1i.x) + -(0.5)); +R124i.y = floatBitsToInt(intBitsToFloat(R3i.y) + -(intBitsToFloat(PV1i.x))); +R9i.z = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(uf_remappedPS[0].x)), intBitsToFloat(PS1i))); +PV0i.z = R9i.z; +R11i.w = floatBitsToInt(roundEven(0.0)); +R6i.w = floatBitsToInt(1.0 / intBitsToFloat(R6i.x)); +PS0i = R6i.w; +// 5 +R4i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(PS0i))); +R8i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PS0i))); +R127i.z = floatBitsToInt(intBitsToFloat(uf_remappedPS[0].x) + intBitsToFloat(PV0i.z)); +PV1i.z = R127i.z; +PV1i.w = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(PV0i.z)), intBitsToFloat(uf_remappedPS[1].y))); +PS1i = floatBitsToInt(float(R127i.y)); +// 6 +R126i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.z),intBitsToFloat(uf_remappedPS[2].x)) + intBitsToFloat(R5i.y))); +PV0i.y = floatBitsToInt(intBitsToFloat(PS1i) + intBitsToFloat(0xc0000000)); +R126i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.z),intBitsToFloat(uf_remappedPS[2].x)) + intBitsToFloat(R5i.w))); +R127i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.z),intBitsToFloat(uf_remappedPS[2].x)) + intBitsToFloat(R5i.x))); +R4i.y = floatBitsToInt(1.0 / intBitsToFloat(PV1i.w)); +PS0i = R4i.y; +// 7 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R4i.x),intBitsToFloat(R8i.y),intBitsToFloat(R127i.x),-0.0),vec4(intBitsToFloat(R4i.x),intBitsToFloat(R8i.y),intBitsToFloat(R127i.x),0.0))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +PS1i = floatBitsToInt(exp2(intBitsToFloat(PV0i.y))); +// 8 +backupReg0i = R127i.z; +R5i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.y), intBitsToFloat(PS1i))); +PV0i.x = R5i.x; +R127i.y = floatBitsToInt(max(intBitsToFloat(R126i.x), -(intBitsToFloat(R126i.x)))); +R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(uf_remappedPS[2].x)) + intBitsToFloat(R5i.z))); +R126i.w = floatBitsToInt(max(intBitsToFloat(R126i.z), -(intBitsToFloat(R126i.z)))); +tempResultf = 1.0 / sqrt(intBitsToFloat(PV1i.x)); +PS0i = floatBitsToInt(tempResultf); +// 9 +backupReg0i = R127i.w; +backupReg0i = R127i.w; +PV1i.x = floatBitsToInt(min(intBitsToFloat(PV0i.x), 2.0)); +PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.y), intBitsToFloat(PS0i))); +R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.x), intBitsToFloat(PS0i))); +R125i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.y), intBitsToFloat(uf_remappedPS[3].x))); +PV1i.w = R125i.w; +R127i.w = floatBitsToInt(max(intBitsToFloat(backupReg0i), -(intBitsToFloat(backupReg0i)))); +PS1i = R127i.w; +// 10 +backupReg0i = R127i.y; +R126i.x = floatBitsToInt(intBitsToFloat(PV1i.x) * intBitsToFloat(0x40c00000)); +PV0i.x = R126i.x; +R127i.y = floatBitsToInt(max(intBitsToFloat(R127i.z), -(intBitsToFloat(R127i.z)))); +R127i.z = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(uf_remappedPS[4].w)), intBitsToFloat(PV1i.y))); +PV0i.z = R127i.z; +PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PV1i.w))); +PS0i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.w), intBitsToFloat(PV1i.w))); +// 11 +R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[4].z), intBitsToFloat(R126i.z))); +PV1i.x = R127i.x; +R125i.y = R5i.x; +R125i.y = clampFI32(R125i.y); +PV1i.y = R125i.y; +R126i.z = floatBitsToInt(-(intBitsToFloat(PV0i.w)) + intBitsToFloat(PS0i)); +PV1i.z = R126i.z; +PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), intBitsToFloat(PV0i.x))); +R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.w), intBitsToFloat(R125i.w))); +PS1i = R126i.y; +// 12 +backupReg0i = R126i.x; +R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), intBitsToFloat(R125i.w))); +PV0i.x = R126i.x; +PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(backupReg0i))); +PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.w) * intBitsToFloat(0x3e4ccccd)); +PV0i.w = PV1i.y; +PV0i.w = floatBitsToInt(intBitsToFloat(PV0i.w) * 2.0); +R125i.x = floatBitsToInt(-(intBitsToFloat(PS1i)) + intBitsToFloat(PV1i.z)); +PS0i = R125i.x; +// 13 +R9i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.x),intBitsToFloat(PV0i.w)) + intBitsToFloat(R0i.x))); +R9i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(PV0i.w)) + intBitsToFloat(R0i.y))); +PV1i.z = floatBitsToInt(-(intBitsToFloat(PV0i.x)) + intBitsToFloat(R126i.z)); +R10i.w = floatBitsToInt(intBitsToFloat(R0i.x) + intBitsToFloat(PV0i.y)); +R10i.y = floatBitsToInt(intBitsToFloat(R0i.y) + intBitsToFloat(PV0i.z)); +PS1i = R10i.y; +// 14 +backupReg0i = R0i.w; +R8i.x = floatBitsToInt(intBitsToFloat(R125i.y) * intBitsToFloat(0x40400000)); +PV0i.y = floatBitsToInt(intBitsToFloat(R126i.x) + intBitsToFloat(R125i.x)); +R8i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.z), intBitsToFloat(R9i.z))); +PV0i.w = floatBitsToInt(intBitsToFloat(R126i.y) + intBitsToFloat(PV1i.z)); +R13i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(R9i.z))); +PS0i = R13i.y; +// 15 +PV1i.x = floatBitsToInt(intBitsToFloat(PV0i.y) + intBitsToFloat(R124i.y)); +PV1i.x = clampFI32(PV1i.x); +R5i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.w), intBitsToFloat(R6i.w))); +PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.w) + intBitsToFloat(R124i.w)); +PV1i.z = clampFI32(PV1i.z); +R6i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(R9i.x)) + intBitsToFloat(R1i.z))); +R4i.w = 0; +PS1i = R4i.w; +// 16 +PV0i.x = floatBitsToInt(intBitsToFloat(PV1i.x) + intBitsToFloat(R124i.x)); +R12i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(R9i.y)) + intBitsToFloat(R1i.w))); +R4i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(R10i.w)) + intBitsToFloat(R1i.z))); +PV0i.w = floatBitsToInt(intBitsToFloat(PV1i.z) + intBitsToFloat(R125i.z)); +R6i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(R10i.y)) + intBitsToFloat(R1i.w))); +PS0i = R6i.z; +// 17 +R11i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.z), intBitsToFloat(PV0i.w))); +R11i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.w), intBitsToFloat(PV0i.x))); +R13i.z = floatBitsToInt(intBitsToFloat(0x3df5c28f) * intBitsToFloat(uf_remappedPS[1].z)); +PV1i.w = R16i.w >> int(1); +R3i.z = floatBitsToInt(intBitsToFloat(R5i.x) * intBitsToFloat(0x40c00000)); +PS1i = R3i.z; +// 18 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R8i.z),intBitsToFloat(R13i.y),intBitsToFloat(R9i.z),-0.0),vec4(intBitsToFloat(R8i.z),intBitsToFloat(R13i.y),intBitsToFloat(R9i.z),0.0))); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +R125i.z = PV1i.w & 0x0000000f; +PS0i = R125i.z; +// 19 +R124i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R7i.w), intBitsToFloat(R7i.w))); +R7i.y = floatBitsToInt(max(intBitsToFloat(R15i.y), intBitsToFloat(R15i.z))); +R5i.z = floatBitsToInt((intBitsToFloat(R4i.y) * intBitsToFloat(0x3dcccccd) + 1.0)); +R124i.w = floatBitsToInt(intBitsToFloat(R3i.z) * intBitsToFloat(0x3e4ccccd)); +R124i.w = clampFI32(R124i.w); +PS1i = floatBitsToInt(sqrt(intBitsToFloat(PV0i.x))); +// 20 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R4i.x),intBitsToFloat(R8i.y),intBitsToFloat(R5i.y),-0.0),vec4(intBitsToFloat(uf_remappedPS[5].x),intBitsToFloat(uf_remappedPS[5].y),intBitsToFloat(uf_remappedPS[5].z),0.0))); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +R7i.z = tempi.x; +PS0i = floatBitsToInt(1.0 / intBitsToFloat(PS1i)); +// 21 +R10i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.z), intBitsToFloat(PS0i))); +R3i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R13i.y), intBitsToFloat(PS0i))); +R10i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R9i.z), intBitsToFloat(PS0i))); +R8i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.w), intBitsToFloat(R124i.x))); +R4i.y = floatBitsToInt(float(R125i.z)); +PS1i = R4i.y; +// 0 +backupReg0i = R4i.y; +backupReg1i = R7i.z; +R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[5].x), intBitsToFloat(uf_remappedPS[6].w))); +PV0i.x = R127i.x; +R4i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[5].y), intBitsToFloat(uf_remappedPS[6].w))); +PV0i.y = R4i.y; +R7i.z = floatBitsToInt(intBitsToFloat(backupReg0i) * intBitsToFloat(0x3d888889)); +R127i.w = floatBitsToInt(max(-(intBitsToFloat(backupReg1i)), 0.0)); +R13i.x = floatBitsToInt(max(intBitsToFloat(R15i.x), intBitsToFloat(R7i.y))); +PS0i = R13i.x; +// 1 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(R6i.y),-0.0),vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(R6i.y),0.0))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R124i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[5].z), intBitsToFloat(uf_remappedPS[6].w))); +PS1i = R124i.z; +// 2 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R4i.x),intBitsToFloat(R8i.y),intBitsToFloat(R5i.y),-0.0),vec4(intBitsToFloat(R10i.x),intBitsToFloat(R3i.y),intBitsToFloat(R10i.z),0.0))); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +tempResultf = 1.0 / sqrt(intBitsToFloat(PV1i.x)); +PS0i = floatBitsToInt(tempResultf); +// 3 +R7i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(PS0i))); +R6i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.y), intBitsToFloat(PS0i))); +R125i.z = floatBitsToInt((intBitsToFloat(R10i.x) * intBitsToFloat(0xbe99999a) + -(intBitsToFloat(R127i.x)))); +R3i.w = floatBitsToInt(intBitsToFloat(PV0i.x) + 1.0); +R3i.w = clampFI32(R3i.w); +PV1i.w = R3i.w; +R124i.y = floatBitsToInt((intBitsToFloat(R3i.y) * intBitsToFloat(0xbe99999a) + -(intBitsToFloat(R4i.y)))); +PS1i = R124i.y; +// 4 +R124i.x = floatBitsToInt((intBitsToFloat(R10i.z) * intBitsToFloat(0xbe99999a) + -(intBitsToFloat(R124i.z)))); +PV0i.x = R124i.x; +R125i.y = floatBitsToInt(intBitsToFloat(R10i.x) + intBitsToFloat(R127i.x)); +PV0i.z = floatBitsToInt(-(intBitsToFloat(PV1i.w)) + 1.0); +R125i.w = floatBitsToInt(intBitsToFloat(R3i.y) + intBitsToFloat(R4i.y)); +R127i.z = floatBitsToInt(intBitsToFloat(R10i.z) + intBitsToFloat(R124i.z)); +PS0i = R127i.z; +// 5 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R125i.z),intBitsToFloat(R124i.y),intBitsToFloat(PV0i.x),-0.0),vec4(intBitsToFloat(R125i.z),intBitsToFloat(R124i.y),intBitsToFloat(PV0i.x),0.0))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +tempResultf = log2(intBitsToFloat(PV0i.z)); +if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; +R126i.y = floatBitsToInt(tempResultf); +PS1i = R126i.y; +// 6 +R125i.x = floatBitsToInt((intBitsToFloat(R127i.x) * intBitsToFloat(0xbf4ccccd) + intBitsToFloat(R10i.x))); +R127i.y = floatBitsToInt((intBitsToFloat(R4i.y) * intBitsToFloat(0xbf4ccccd) + intBitsToFloat(R3i.y))); +R126i.z = floatBitsToInt((intBitsToFloat(R124i.z) * intBitsToFloat(0xbf4ccccd) + intBitsToFloat(R10i.z))); +PV0i.w = floatBitsToInt(intBitsToFloat(PS1i) * intBitsToFloat(0x3e4ccccd)); +tempResultf = 1.0 / sqrt(intBitsToFloat(PV1i.x)); +R124i.w = floatBitsToInt(tempResultf); +PS0i = R124i.w; +// 7 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R125i.y),intBitsToFloat(R125i.w),intBitsToFloat(R127i.z),-0.0),vec4(intBitsToFloat(R125i.y),intBitsToFloat(R125i.w),intBitsToFloat(R127i.z),0.0))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R3i.x = floatBitsToInt(exp2(intBitsToFloat(PV0i.w))); +PS1i = R3i.x; +// 8 +PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.z), intBitsToFloat(R124i.w))); +PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.y), intBitsToFloat(R124i.w))); +PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.x), intBitsToFloat(R124i.w))); +R126i.w = floatBitsToInt(intBitsToFloat(R126i.y) * intBitsToFloat(0x41000000)); +tempResultf = 1.0 / sqrt(intBitsToFloat(PV1i.x)); +R124i.w = floatBitsToInt(tempResultf); +PS0i = R124i.w; +// 9 +R126i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R4i.x),intBitsToFloat(R8i.y),intBitsToFloat(R5i.y),-0.0),vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),0.0))); +R126i.x = clampFI32(R126i.x); +PV1i.x = R126i.x; +PV1i.y = R126i.x; +PV1i.z = R126i.x; +PV1i.w = R126i.x; +R124i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.y), intBitsToFloat(PS0i))); +PS1i = R124i.x; +// 10 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R125i.x),intBitsToFloat(R127i.y),intBitsToFloat(R126i.z),-0.0),vec4(intBitsToFloat(R125i.x),intBitsToFloat(R127i.y),intBitsToFloat(R126i.z),0.0))); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +R125i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.w), intBitsToFloat(R124i.w))); +PS0i = R125i.y; +// 11 +R12i.x = R5i.x; +R12i.x = floatBitsToInt(intBitsToFloat(R12i.x) * 4.0); +R12i.x = clampFI32(R12i.x); +R7i.y = R3i.z; +R7i.y = clampFI32(R7i.y); +PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(R124i.w))); +R5i.w = floatBitsToInt(min(intBitsToFloat(R127i.w), 1.0)); +tempResultf = 1.0 / sqrt(intBitsToFloat(PV0i.x)); +R127i.w = floatBitsToInt(tempResultf); +PS1i = R127i.w; +// 12 +backupReg0i = R126i.x; +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R4i.x),intBitsToFloat(R8i.y),intBitsToFloat(R5i.y),-0.0),vec4(intBitsToFloat(R124i.x),intBitsToFloat(R125i.y),intBitsToFloat(PV1i.z),0.0))); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +R124i.w = tempi.x; +tempResultf = log2(intBitsToFloat(backupReg0i)); +if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; +R126i.x = floatBitsToInt(tempResultf); +PS0i = R126i.x; +// 13 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R4i.x),intBitsToFloat(R8i.y),intBitsToFloat(R5i.y),intBitsToFloat(R5i.y)),vec4(-(intBitsToFloat(R127i.x)),-(intBitsToFloat(R4i.y)),-(intBitsToFloat(R124i.z)),-(intBitsToFloat(R4i.w))))); +tempi.x = clampFI32(tempi.x); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R11i.z = tempi.x; +R3i.z = floatBitsToInt(exp2(intBitsToFloat(R126i.w))); +PS1i = R3i.z; +// 14 +PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.x), intBitsToFloat(R127i.w))); +PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), intBitsToFloat(R127i.w))); +PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.z), intBitsToFloat(R127i.w))); +PV0i.w = floatBitsToInt(max(-(intBitsToFloat(R124i.w)), 0.0)); +R127i.w = floatBitsToInt(intBitsToFloat(R126i.x) * intBitsToFloat(0x41a00000)); +PS0i = R127i.w; +// 15 +R126i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R4i.x),intBitsToFloat(R8i.y),intBitsToFloat(R5i.y),-0.0),vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),0.0))); +PV1i.x = R126i.x; +PV1i.y = R126i.x; +PV1i.z = R126i.x; +PV1i.w = R126i.x; +R127i.y = floatBitsToInt(min(intBitsToFloat(PV0i.w), 1.0)); +PS1i = R127i.y; +// 16 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R10i.x),intBitsToFloat(R3i.y),intBitsToFloat(R10i.z),-0.0),vec4(intBitsToFloat(R127i.x),intBitsToFloat(R4i.y),intBitsToFloat(R124i.z),0.0))); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +R12i.z = floatBitsToInt(exp2(intBitsToFloat(R127i.w))); +PS0i = R12i.z; +// 17 +R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R7i.z),intBitsToFloat(R127i.y)) + -(0.5))); +PV1i.x = R123i.x; +R4i.y = floatBitsToInt((-(intBitsToFloat(PV0i.x)) * intBitsToFloat(0x40a00000) + intBitsToFloat(0x40a00000))); +R4i.y = clampFI32(R4i.y); +PV1i.z = floatBitsToInt(max(-(intBitsToFloat(PV0i.x)), 0.0)); +R7i.w = floatBitsToInt(intBitsToFloat(R126i.x) + 1.0); +R7i.w = clampFI32(R7i.w); +R8i.y = floatBitsToInt(intBitsToFloat(R5i.z) * intBitsToFloat(0x42960000)); +PS1i = R8i.y; +// 18 +PV0i.x = floatBitsToInt(intBitsToFloat(PV1i.x) * intBitsToFloat(0x42200000)); +PV0i.x = clampFI32(PV0i.x); +PV0i.y = floatBitsToInt(min(intBitsToFloat(R15i.y), intBitsToFloat(R15i.z))); +PV0i.z = floatBitsToInt(intBitsToFloat(R13i.x) + intBitsToFloat(0x2edbe6ff)); +R14i.w = floatBitsToInt(min(intBitsToFloat(PV1i.z), 1.0)); +PV0i.w = R14i.w; +R4i.x = floatBitsToInt(intBitsToFloat(R2i.x) * intBitsToFloat(0x3f4ccccd)); +PS0i = R4i.x; +// 19 +backupReg0i = R6i.x; +R6i.x = floatBitsToInt((intBitsToFloat(backupReg0i) * 4.0 + intBitsToFloat(0xc0400000))); +R6i.x = clampFI32(R6i.x); +R14i.y = floatBitsToInt(min(intBitsToFloat(R15i.x), intBitsToFloat(PV0i.y))); +PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(PV0i.x))); +R12i.w = floatBitsToInt(intBitsToFloat(R2i.y) * intBitsToFloat(0x3f4ccccd)); +PV1i.w = R12i.w; +R14i.z = floatBitsToInt(1.0 / intBitsToFloat(PV0i.z)); +PS1i = R14i.z; +// 20 +backupReg0i = R5i.x; +R5i.x = floatBitsToInt(intBitsToFloat(uf_remappedPS[7].x) + -(intBitsToFloat(R4i.x))); +R5i.y = floatBitsToInt(intBitsToFloat(PV1i.z) * intBitsToFloat(0x3e19999a)); +R5i.z = backupReg0i; +R5i.z = floatBitsToInt(intBitsToFloat(R5i.z) * 2.0); +R5i.z = clampFI32(R5i.z); +R9i.w = floatBitsToInt(intBitsToFloat(uf_remappedPS[7].y) + -(intBitsToFloat(PV1i.w))); +R7i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.w), intBitsToFloat(R14i.w))); +PS0i = R7i.z; +// 0 +backupReg0i = R6i.x; +backupReg1i = R6i.y; +R6i.x = floatBitsToInt(intBitsToFloat(backupReg0i) + -(0.5)); +R6i.x = floatBitsToInt(intBitsToFloat(R6i.x) * 4.0); +R6i.x = clampFI32(R6i.x); +R6i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R14i.y)),intBitsToFloat(R14i.z)) + 1.0)); +PV0i.z = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(uf_remappedPS[4].w)), intBitsToFloat(backupReg1i))); +PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[4].z), intBitsToFloat(R7i.x))); +tempResultf = log2(intBitsToFloat(R13i.x)); +if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; +PS0i = floatBitsToInt(tempResultf); +// 1 +backupReg0i = R0i.x; +backupReg1i = R0i.y; +R0i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.w),intBitsToFloat(R8i.x)) + intBitsToFloat(backupReg0i))); +R0i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.z),intBitsToFloat(R8i.x)) + intBitsToFloat(backupReg1i))); +R0i.z = floatBitsToInt(intBitsToFloat(PS0i) * intBitsToFloat(0x3f19999a)); +R13i.w = floatBitsToInt(intBitsToFloat(R5i.z) * 0.25); +R5i.z = floatBitsToInt(intBitsToFloat(R2i.z) * intBitsToFloat(0x3f4ccccd)); +PS1i = R5i.z; +R0i.w = floatBitsToInt(texture(textureUnitPS4, intBitsToFloat(R9i.xy)).x); +R9i.x = floatBitsToInt(texture(textureUnitPS4, intBitsToFloat(R10i.wy)).x); +R10i.w = floatBitsToInt(texture(textureUnitPS4, intBitsToFloat(R0i.xy)).x); +R4i.w = floatBitsToInt(texture(textureUnitPS13, intBitsToFloat(R11i.xy)).w); +R17i.xyz = floatBitsToInt(texture(textureUnitPS9, intBitsToFloat(R11i.xy)).xyz); +R16i.xyz = floatBitsToInt(texture(textureUnitPS8, vec3(intBitsToFloat(R11i.x),intBitsToFloat(R11i.y),intBitsToFloat(R11i.w))).xyz); +R18i.xyz = floatBitsToInt(texture(textureUnitPS11, intBitsToFloat(R11i.xy)).xyz); +// 0 +R126i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(R0i.x)) + intBitsToFloat(R1i.z))); +R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[3].x),intBitsToFloat(R9i.x)) + intBitsToFloat(uf_remappedPS[0].x))); +PV0i.y = R127i.y; +R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[3].x),intBitsToFloat(R0i.w)) + intBitsToFloat(uf_remappedPS[0].x))); +PV0i.z = R123i.z; +R127i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(R0i.y)) + intBitsToFloat(R1i.w))); +R126i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[3].x),intBitsToFloat(R10i.w)) + intBitsToFloat(uf_remappedPS[0].x))); +PS0i = R126i.y; +// 1 +PV1i.x = floatBitsToInt(-(intBitsToFloat(PV0i.z))); +R125i.y = floatBitsToInt(-(intBitsToFloat(PV0i.y))); +PV1i.z = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(PV0i.z)), intBitsToFloat(R6i.w))); +PV1i.w = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(PV0i.z)), intBitsToFloat(R12i.y))); +PS1i = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(PV0i.y)), intBitsToFloat(R4i.z))); +// 2 +PV0i.x = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(R127i.y)), intBitsToFloat(R6i.z))); +R127i.y = floatBitsToInt(-(intBitsToFloat(R8i.z)) + intBitsToFloat(PV1i.z)); +R126i.z = floatBitsToInt(-(intBitsToFloat(R13i.y)) + intBitsToFloat(PV1i.w)); +R124i.w = floatBitsToInt(-(intBitsToFloat(R9i.z)) + intBitsToFloat(PV1i.x)); +R125i.x = floatBitsToInt(-(intBitsToFloat(R8i.z)) + intBitsToFloat(PS1i)); +PS0i = R125i.x; +// 3 +backupReg0i = R126i.y; +backupReg0i = R126i.y; +backupReg1i = R127i.w; +R127i.x = floatBitsToInt(-(intBitsToFloat(R126i.y))); +R126i.y = floatBitsToInt(-(intBitsToFloat(R13i.y)) + intBitsToFloat(PV0i.x)); +R124i.z = floatBitsToInt(-(intBitsToFloat(R9i.z)) + intBitsToFloat(R125i.y)); +R127i.w = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(backupReg0i)), intBitsToFloat(R126i.x))); +R126i.x = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(backupReg0i)), intBitsToFloat(backupReg1i))); +PS1i = R126i.x; +// 4 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R10i.x),intBitsToFloat(R3i.y),intBitsToFloat(R10i.z),-0.0),vec4(intBitsToFloat(R127i.y),intBitsToFloat(R126i.z),intBitsToFloat(R124i.w),0.0))); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +R125i.y = tempi.x; +R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.w), intBitsToFloat(R3i.x))); +PS0i = R127i.z; +// 5 +backupReg0i = R127i.w; +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R10i.x),intBitsToFloat(R3i.y),intBitsToFloat(R10i.z),-0.0),vec4(intBitsToFloat(R125i.x),intBitsToFloat(R126i.y),intBitsToFloat(R124i.z),0.0))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R127i.w = tempi.x; +R124i.x = floatBitsToInt(-(intBitsToFloat(R8i.z)) + intBitsToFloat(backupReg0i)); +PS1i = R124i.x; +// 6 +backupReg0i = R127i.x; +backupReg1i = R124i.w; +backupReg2i = R124i.z; +R127i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R10i.x)),intBitsToFloat(R125i.y)) + intBitsToFloat(R127i.y))); +R127i.y = floatBitsToInt(-(intBitsToFloat(R13i.y)) + intBitsToFloat(R126i.x)); +R125i.z = floatBitsToInt(-(intBitsToFloat(R9i.z)) + intBitsToFloat(backupReg0i)); +R124i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R10i.z)),intBitsToFloat(R125i.y)) + intBitsToFloat(backupReg1i))); +R124i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R10i.z)),intBitsToFloat(PV1i.x)) + intBitsToFloat(backupReg2i))); +PS0i = R124i.z; +// 7 +backupReg0i = R125i.x; +backupReg1i = R127i.z; +backupReg1i = R127i.z; +R125i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R10i.x)),intBitsToFloat(R127i.w)) + intBitsToFloat(backupReg0i))); +R123i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R3i.y)),intBitsToFloat(R125i.y)) + intBitsToFloat(R126i.z))); +PV1i.y = R123i.y; +R127i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R3i.y)),intBitsToFloat(R127i.w)) + intBitsToFloat(R126i.y))); +PV1i.w = floatBitsToInt(intBitsToFloat(backupReg1i) + intBitsToFloat(0xbf400000)); +R126i.y = floatBitsToInt((intBitsToFloat(backupReg1i) * intBitsToFloat(0x3e99999a) + intBitsToFloat(0xbecccccd))); +PS1i = R126i.y; +// 8 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R127i.x),intBitsToFloat(PV1i.y),intBitsToFloat(R124i.w),-0.0),vec4(intBitsToFloat(R127i.x),intBitsToFloat(PV1i.y),intBitsToFloat(R124i.w),0.0))); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +R4i.w = floatBitsToInt(intBitsToFloat(PV1i.w) * intBitsToFloat(0x41800000)); +R4i.w = clampFI32(R4i.w); +PS0i = R4i.w; +// 9 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R125i.x),intBitsToFloat(R127i.z),intBitsToFloat(R124i.z),-0.0),vec4(intBitsToFloat(R125i.x),intBitsToFloat(R127i.z),intBitsToFloat(R124i.z),0.0))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +tempResultf = 1.0 / sqrt(intBitsToFloat(PV0i.x)); +R127i.z = floatBitsToInt(tempResultf); +PS1i = R127i.z; +// 10 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R10i.x),intBitsToFloat(R3i.y),intBitsToFloat(R10i.z),-0.0),vec4(intBitsToFloat(R124i.x),intBitsToFloat(R127i.y),intBitsToFloat(R125i.z),0.0))); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +R124i.w = tempi.x; +tempResultf = 1.0 / sqrt(intBitsToFloat(PV1i.x)); +PS0i = floatBitsToInt(tempResultf); +// 11 +backupReg0i = R127i.w; +R123i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R10i.x)),intBitsToFloat(PV0i.x)) + intBitsToFloat(R124i.x))); +PV1i.x = R123i.x; +R123i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R3i.y)),intBitsToFloat(PV0i.x)) + intBitsToFloat(R127i.y))); +PV1i.y = R123i.y; +R123i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R10i.z)),intBitsToFloat(PV0i.x)) + intBitsToFloat(R125i.z))); +PV1i.z = R123i.z; +R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.y), intBitsToFloat(R127i.z))); +R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PS0i))); +PS1i = R127i.z; +// 12 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),-0.0),vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),0.0))); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +R126i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.w), intBitsToFloat(R3i.z))); +R126i.w = clampFI32(R126i.w); +PS0i = R126i.w; +// 13 +PV1i.x = floatBitsToInt(intBitsToFloat(R17i.x) + intBitsToFloat(0xbecccccd)); +PV1i.y = floatBitsToInt(intBitsToFloat(R127i.z) * intBitsToFloat(0x3c23d70a)); +PV1i.y = clampFI32(PV1i.y); +R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R13i.z), intBitsToFloat(R127i.w))); +R127i.z = clampFI32(R127i.z); +PV1i.w = floatBitsToInt(intBitsToFloat(R126i.y) + intBitsToFloat(R11i.z)); +tempResultf = 1.0 / sqrt(intBitsToFloat(PV0i.x)); +PS1i = floatBitsToInt(tempResultf); +// 14 +PV0i.x = floatBitsToInt(intBitsToFloat(PV1i.w) * intBitsToFloat(0x42960000)); +PV0i.x = clampFI32(PV0i.x); +PV0i.y = floatBitsToInt(intBitsToFloat(R126i.w) + intBitsToFloat(R12i.z)); +PV0i.y = clampFI32(PV0i.y); +PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.x) * intBitsToFloat(0x41200000)); +PV0i.z = clampFI32(PV0i.z); +PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.w), intBitsToFloat(PS1i))); +R125i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.y), intBitsToFloat(R7i.w))); +PS0i = R125i.z; +// 15 +PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.w), intBitsToFloat(R127i.z))); +R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R17i.y), intBitsToFloat(PV0i.z))); +PV1i.y = R127i.y; +PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.y), intBitsToFloat(PV0i.x))); +R124i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.w), intBitsToFloat(PV0i.y))); +PS1i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R13i.z), intBitsToFloat(PV0i.w))); +PS1i = clampFI32(PS1i); +// 16 +PV0i.x = floatBitsToInt(intBitsToFloat(PV1i.y) + -(1.0)); +R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.z)) + intBitsToFloat(0xbecccccd))); +PV0i.y = R123i.y; +R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.z),intBitsToFloat(R14i.w)) + intBitsToFloat(0xbecccccd))); +PV0i.z = R123i.z; +PV0i.w = floatBitsToInt(intBitsToFloat(R2i.w) + -(intBitsToFloat(R4i.w))); +PV0i.w = clampFI32(PV0i.w); +R124i.x = floatBitsToInt(intBitsToFloat(PS1i) + -(0.5)); +PS0i = R124i.x; +// 17 +R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.w),intBitsToFloat(R8i.w)) + intBitsToFloat(0xbd4ccccd))); +PV1i.x = R123i.x; +R4i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.w)) + 1.0)); +PV1i.z = floatBitsToInt(intBitsToFloat(R126i.y) + intBitsToFloat(R5i.w)); +PV1i.w = floatBitsToInt(intBitsToFloat(PV0i.y) * intBitsToFloat(0x42960000)); +PV1i.w = clampFI32(PV1i.w); +PS1i = floatBitsToInt(intBitsToFloat(PV0i.z) * intBitsToFloat(0x42960000)); +PS1i = clampFI32(PS1i); +// 18 +backupReg0i = R12i.x; +R12i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(PS1i)) + intBitsToFloat(R5i.y))); +R12i.x = clampFI32(R12i.x); +R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.z), intBitsToFloat(R8i.y))); +R126i.y = clampFI32(R126i.y); +R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.w),intBitsToFloat(R8i.w)) + intBitsToFloat(0xbc23d70a))); +PV0i.z = R123i.z; +PV0i.w = floatBitsToInt(intBitsToFloat(PV1i.x) * intBitsToFloat(0x41a00000)); +PV0i.w = clampFI32(PV0i.w); +R124i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R7i.y), intBitsToFloat(PV1i.w))); +R124i.w = floatBitsToInt(intBitsToFloat(R124i.w) * 2.0); +PS0i = R124i.w; +// 19 +PV1i.x = floatBitsToInt(intBitsToFloat(PV0i.w) * intBitsToFloat(0x3df5c28f)); +PV1i.y = floatBitsToInt(intBitsToFloat(PV0i.z) * intBitsToFloat(0x42480000)); +PV1i.y = clampFI32(PV1i.y); +PV1i.z = floatBitsToInt(intBitsToFloat(R4i.y) + intBitsToFloat(0x3da3d70a)); +PV1i.w = floatBitsToInt(intBitsToFloat(R124i.x) * intBitsToFloat(0x42200000)); +PV1i.w = clampFI32(PV1i.w); +R8i.y = floatBitsToInt(intBitsToFloat(R2i.w) + intBitsToFloat(R127i.y)); +R8i.y = clampFI32(R8i.y); +PS1i = R8i.y; +// 20 +R10i.x = floatBitsToInt(intBitsToFloat(PV1i.w) * intBitsToFloat(0x41000000)); +R5i.y = floatBitsToInt(intBitsToFloat(R126i.w) + intBitsToFloat(PV1i.z)); +R5i.y = clampFI32(R5i.y); +R13i.z = floatBitsToInt(intBitsToFloat(R124i.w) * intBitsToFloat(0x3e4ccccd)); +R8i.w = floatBitsToInt((intBitsToFloat(PV1i.y) * intBitsToFloat(0x3d4ccccd) + intBitsToFloat(PV1i.x))); +R8i.w = clampFI32(R8i.w); +R7i.y = floatBitsToInt(intBitsToFloat(R4i.w) + intBitsToFloat(R126i.y)); +R7i.y = clampFI32(R7i.y); +PS0i = R7i.y; +// 0 +PV0i.x = floatBitsToInt(-(intBitsToFloat(R12i.x)) + intBitsToFloat(R4i.y)); +R126i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),intBitsToFloat(R8i.w)) + intBitsToFloat(R13i.z))); +R126i.y = clampFI32(R126i.y); +R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.x),intBitsToFloat(R8i.y)) + intBitsToFloat(R4i.x))); +PV0i.z = R123i.z; +R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R9i.w),intBitsToFloat(R8i.y)) + intBitsToFloat(R12i.w))); +PV0i.w = R123i.w; +R127i.y = floatBitsToInt(exp2(intBitsToFloat(R0i.z))); +PS0i = R127i.y; +// 1 +PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R7i.z), intBitsToFloat(R10i.x))); +PV1i.x = clampFI32(PV1i.x); +R124i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(uf_remappedPS[8].y))); +R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), intBitsToFloat(uf_remappedPS[8].x))); +R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),intBitsToFloat(R7i.y)) + intBitsToFloat(R12i.x))); +PV1i.w = R123i.w; +R122i.x = floatBitsToInt((-(intBitsToFloat(R6i.y)) * intBitsToFloat(0x40400000) + intBitsToFloat(0x40400000))); +PS1i = R122i.x; +// 2 +R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.x), intBitsToFloat(PV1i.w))); +PV0i.x = R127i.x; +PV0i.y = floatBitsToInt(intBitsToFloat(R6i.y) + intBitsToFloat(0x2edbe6ff)); +R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.x),intBitsToFloat(R13i.w)) + intBitsToFloat(R126i.y))); +R127i.z = clampFI32(R127i.z); +PV0i.z = R127i.z; +R126i.w = floatBitsToInt(intBitsToFloat(R6i.x) + intBitsToFloat(0x3f4ccccd)); +R126i.w = clampFI32(R126i.w); +R125i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PS1i),intBitsToFloat(R127i.y)) + intBitsToFloat(R127i.y))); +PS0i = R125i.x; +// 3 +R123i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R6i.y)),intBitsToFloat(PV0i.z)) + intBitsToFloat(R6i.y))); +R123i.x = clampFI32(R123i.x); +PV1i.x = R123i.x; +R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.w),-(intBitsToFloat(PV0i.x))) + intBitsToFloat(R2i.w))); +PV1i.z = floatBitsToInt(intBitsToFloat(uf_remappedPS[7].z) + -(intBitsToFloat(R5i.z))); +R124i.w = floatBitsToInt(intBitsToFloat(R126i.z) * intBitsToFloat(0x3da3d70a)); +PS1i = floatBitsToInt(1.0 / intBitsToFloat(PV0i.y)); +// 4 +R124i.x = floatBitsToInt(intBitsToFloat(R124i.y) * intBitsToFloat(0x3d23d70a)); +R126i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.z),intBitsToFloat(R8i.y)) + intBitsToFloat(R5i.z))); +R125i.z = floatBitsToInt(intBitsToFloat(R126i.w) + -(1.0)); +R126i.w = floatBitsToInt(intBitsToFloat(R14i.w) * intBitsToFloat(0x40a00000)); +R126i.w = clampFI32(R126i.w); +R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(PS1i))); +PS0i = R126i.x; +// 5 +backupReg0i = R124i.w; +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R16i.x),intBitsToFloat(R16i.y),intBitsToFloat(R16i.z),-0.0),vec4(intBitsToFloat(0x3e99096c),intBitsToFloat(0x3f162b6b),intBitsToFloat(0x3dea4a8c),0.0))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R124i.z = tempi.x; +R124i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.y),intBitsToFloat(backupReg0i)) + intBitsToFloat(R2i.x))); +PS1i = R124i.w; +// 6 +backupReg0i = R127i.z; +PV0i.x = floatBitsToInt(-(intBitsToFloat(R14i.y)) + intBitsToFloat(R13i.x)); +R125i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.z),intBitsToFloat(R126i.w)) + 1.0)); +R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.y),intBitsToFloat(R124i.x)) + intBitsToFloat(R2i.y))); +R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(R125i.x)) + intBitsToFloat(R13i.x))); +R123i.w = clampFI32(R123i.w); +PV0i.w = R123i.w; +R127i.y = ((intBitsToFloat(PV1i.x) > 0.0)?int(0xFFFFFFFF):int(0x0)); +PS0i = R127i.y; +// 7 +backupReg0i = R126i.y; +R125i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R14i.z), intBitsToFloat(PV0i.w))); +R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(uf_remappedPS[8].z))); +PV1i.z = floatBitsToInt(intBitsToFloat(R15i.x) + -(intBitsToFloat(R14i.y))); +R126i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R126i.x)),intBitsToFloat(PV0i.x)) + intBitsToFloat(R13i.x))); +PV1i.w = R126i.w; +PS1i = floatBitsToInt(1.0 / intBitsToFloat(R124i.z)); +// 8 +backupReg0i = R127i.x; +backupReg1i = R127i.y; +R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[6].w), intBitsToFloat(backupReg0i))); +R127i.y = floatBitsToInt(intBitsToFloat(R15i.z) + -(intBitsToFloat(R14i.y))); +PV0i.z = floatBitsToInt(intBitsToFloat(R15i.y) + -(intBitsToFloat(R14i.y))); +R123i.w = ((backupReg1i == 0)?(0):(PS1i)); +PV0i.w = R123i.w; +R124i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.x),intBitsToFloat(PV1i.z)) + intBitsToFloat(PV1i.w))); +PS0i = R124i.z; +// 9 +backupReg0i = R125i.y; +backupReg0i = R125i.y; +PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.w), intBitsToFloat(R125i.y))); +R125i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.w), intBitsToFloat(PV0i.w))); +PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.z), intBitsToFloat(backupReg0i))); +PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(backupReg0i))); +R2i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.x),intBitsToFloat(PV0i.z)) + intBitsToFloat(R126i.w))); +PS1i = R2i.y; +// 10 +R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.y),intBitsToFloat(R127i.x)) + intBitsToFloat(PV1i.w))); +PV0i.x = R123i.x; +R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.z),intBitsToFloat(R127i.x)) + intBitsToFloat(PV1i.x))); +PV0i.y = R123i.y; +R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.x),intBitsToFloat(R127i.y)) + intBitsToFloat(R126i.w))); +R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.y),intBitsToFloat(R127i.x)) + intBitsToFloat(PV1i.z))); +PV0i.w = R123i.w; +R126i.z = floatBitsToInt(intBitsToFloat(0x3f895ef0) * intBitsToFloat(R125i.x)); +PS0i = R126i.z; +// 11 +R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R16i.y),intBitsToFloat(R125i.y)) + intBitsToFloat(PV0i.x))); +PV1i.x = R123i.x; +R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R16i.x),intBitsToFloat(R125i.y)) + intBitsToFloat(PV0i.y))); +PV1i.y = R123i.y; +R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PS0i),intBitsToFloat(R124i.z)) + intBitsToFloat(0xba0a8ec8))); +R123i.z = clampFI32(R123i.z); +PV1i.z = R123i.z; +R126i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R16i.z),intBitsToFloat(R125i.y)) + intBitsToFloat(PV0i.w))); +R122i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PS0i),intBitsToFloat(R2i.y)) + intBitsToFloat(0xba0a8ec8))); +R122i.x = clampFI32(R122i.x); +PS1i = R122i.x; +// 12 +PV0i.x = R16i.w & int(1); +PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(PS1i))); +PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.y), intBitsToFloat(PV1i.z))); +R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.z),intBitsToFloat(R127i.z)) + intBitsToFloat(0xba0a8ec8))); +R123i.w = clampFI32(R123i.w); +PV0i.w = R123i.w; +R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R17i.z), intBitsToFloat(R17i.z))); +PS0i = R127i.x; +// 13 +PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.w), intBitsToFloat(PV0i.w))); +R123i.z = floatBitsToInt((intBitsToFloat(PV0i.y) * intBitsToFloat(0x3f6e896b) + intBitsToFloat(0x3a011b1e))); +PV1i.z = R123i.z; +R123i.w = floatBitsToInt((intBitsToFloat(PV0i.z) * intBitsToFloat(0x3f6e896b) + intBitsToFloat(0x3a011b1e))); +PV1i.w = R123i.w; +PS1i = floatBitsToInt(float(PV0i.x)); +// 14 +R16i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R17i.z),intBitsToFloat(PV1i.w)) + intBitsToFloat(R18i.x))); +R123i.y = floatBitsToInt((intBitsToFloat(PV1i.x) * intBitsToFloat(0x3f6e896b) + intBitsToFloat(0x3a011b1e))); +PV0i.y = R123i.y; +R16i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS1i), intBitsToFloat(R127i.x))); +R16i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R17i.z),intBitsToFloat(PV1i.z)) + intBitsToFloat(R18i.y))); +PS0i = R16i.y; +// 15 +R16i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R17i.z),intBitsToFloat(PV0i.y)) + intBitsToFloat(R18i.z))); +// export +passPixelColor0 = vec4(intBitsToFloat(R16i.x), intBitsToFloat(R16i.y), intBitsToFloat(R16i.z), intBitsToFloat(R16i.w)); +float luma = dot(passPixelColor0.rgb, vec3(0.2126, 0.7152, 0.0722)); +passPixelColor0.rgb = vec3(luma); +} diff --git a/Modifications/BreathOfTheWild_Monochromia/1cf7d93fabd9e8e3_000000007924d249_ps.txt b/Modifications/BreathOfTheWild_Monochromia/1cf7d93fabd9e8e3_000000007924d249_ps.txt new file mode 100644 index 00000000..e43ef9ca --- /dev/null +++ b/Modifications/BreathOfTheWild_Monochromia/1cf7d93fabd9e8e3_000000007924d249_ps.txt @@ -0,0 +1,789 @@ +#version 420 +#extension GL_ARB_texture_gather : enable +// shader 1cf7d93fabd9e8e3 +// Monochromia +// Link's hair +// original shader dumped using cemu 1.11.c, BotW 1.3.1 +uniform ivec4 uf_remappedPS[9]; +layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0xf45c6000 res 1280x720x1 dim 1 tm: 4 format 041a compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 2) uniform sampler2D textureUnitPS2;// Tex2 addr 0xf494a800 res 1280x720x1 dim 1 tm: 4 format 001a compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler2 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 4) uniform sampler2D textureUnitPS4;// Tex4 addr 0xf4e91800 res 1280x720x1 dim 1 tm: 4 format 0806 compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler4 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 6) uniform sampler2D textureUnitPS6;// Tex6 addr 0xf5054000 res 640x360x1 dim 1 tm: 4 format 080e compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler6 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 8) uniform sampler2DArray textureUnitPS8;// Tex8 addr 0xf5593000 res 640x360x2 dim 5 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x2) Sampler8 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 9) uniform sampler2D textureUnitPS9;// Tex9 addr 0xf575f800 res 640x360x1 dim 1 tm: 4 format 001a compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler9 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 11) uniform sampler2D textureUnitPS11;// Tex11 addr 0xf5977800 res 640x360x1 dim 1 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler11 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 12) uniform sampler2D textureUnitPS12;// Tex12 addr 0xf4240800 res 1280x720x1 dim 1 tm: 4 format 080e compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler12 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 13) uniform sampler2D textureUnitPS13;// Tex13 addr 0xf528a800 res 640x360x1 dim 1 tm: 4 format 001a compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler13 ClampX/Y/Z: 2 2 2 border: 1 +layout(location = 0) in vec4 passParameterSem0; +layout(location = 1) in vec4 passParameterSem1; +layout(location = 2) in vec4 passParameterSem2; +layout(location = 3) in vec4 passParameterSem4; +layout(location = 4) in vec4 passParameterSem6; +layout(location = 0) out vec4 passPixelColor0; +uniform vec2 uf_fragCoordScale; +int clampFI32(int v) +{ +if( v == 0x7FFFFFFF ) + return floatBitsToInt(1.0); +else if( v == 0xFFFFFFFF ) + return floatBitsToInt(0.0); +return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); +} +float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } +void main() +{ +ivec4 R0i = ivec4(0); +ivec4 R1i = ivec4(0); +ivec4 R2i = ivec4(0); +ivec4 R3i = ivec4(0); +ivec4 R4i = ivec4(0); +ivec4 R5i = ivec4(0); +ivec4 R6i = ivec4(0); +ivec4 R7i = ivec4(0); +ivec4 R8i = ivec4(0); +ivec4 R9i = ivec4(0); +ivec4 R10i = ivec4(0); +ivec4 R11i = ivec4(0); +ivec4 R12i = ivec4(0); +ivec4 R13i = ivec4(0); +ivec4 R14i = ivec4(0); +ivec4 R15i = ivec4(0); +ivec4 R16i = ivec4(0); +ivec4 R17i = ivec4(0); +ivec4 R18i = ivec4(0); +ivec4 R19i = ivec4(0); +ivec4 R20i = ivec4(0); +ivec4 R21i = ivec4(0); +ivec4 R22i = ivec4(0); +ivec4 R123i = ivec4(0); +ivec4 R124i = ivec4(0); +ivec4 R125i = ivec4(0); +ivec4 R126i = ivec4(0); +ivec4 R127i = ivec4(0); +int backupReg0i, backupReg1i, backupReg2i, backupReg3i, backupReg4i; +ivec4 PV0i = ivec4(0), PV1i = ivec4(0); +int PS0i = 0, PS1i = 0; +ivec4 tempi = ivec4(0); +float tempResultf; +int tempResulti; +ivec4 ARi = ivec4(0); +bool predResult = true; +vec3 cubeMapSTM; +int cubeMapFaceId; +R0i = floatBitsToInt(passParameterSem0); +R1i = floatBitsToInt(passParameterSem1); +R2i = floatBitsToInt(passParameterSem2); +R3i = floatBitsToInt(passParameterSem4); +R4i = floatBitsToInt(passParameterSem6); +R8i.xyzw = floatBitsToInt(texture(textureUnitPS1, intBitsToFloat(R4i.zw)).xyzw); +R6i.xyzw = floatBitsToInt(texture(textureUnitPS2, intBitsToFloat(R4i.zw)).xyzw); +R4i.w = floatBitsToInt(texture(textureUnitPS12, intBitsToFloat(R0i.xy)).x); +R5i.xyzw = floatBitsToInt(textureGather(textureUnitPS6, intBitsToFloat(R0i.xy)).xyzw); +// 0 +R126i.x = floatBitsToInt((intBitsToFloat(R6i.x) * 2.0 + -(1.0))); +PV0i.x = R126i.x; +R126i.y = floatBitsToInt((intBitsToFloat(R6i.y) * 2.0 + -(1.0))); +PV0i.y = R126i.y; +PV0i.z = floatBitsToInt(intBitsToFloat(R8i.w) * intBitsToFloat(0x437f0000)); +R125i.w = floatBitsToInt((intBitsToFloat(R6i.z) * 2.0 + -(1.0))); +PV0i.w = R125i.w; +R127i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R4i.w)),intBitsToFloat(uf_remappedPS[0].w)) + 1.0)); +PS0i = R127i.y; +// 1 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.w),-0.0),vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.w),0.0))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R9i.w = int(intBitsToFloat(PV0i.z)); +PS1i = R9i.w; +// 2 +R4i.x = 0; +PV0i.y = PS1i >> 0x00000005; +R127i.z = 0x358637bd; +PV0i.w = floatBitsToInt(floor(intBitsToFloat(R3i.x))); +R4i.w = floatBitsToInt(sqrt(intBitsToFloat(PV1i.x))); +PS0i = R4i.w; +// 3 +R127i.x = PV0i.y & 0x00000007; +R125i.y = floatBitsToInt(intBitsToFloat(PV0i.w) + -(0.5)); +R125i.z = floatBitsToInt(intBitsToFloat(R3i.x) + -(intBitsToFloat(PV0i.w))); +PV1i.w = floatBitsToInt(floor(intBitsToFloat(R3i.y))); +PS1i = floatBitsToInt(1.0 / intBitsToFloat(R127i.y)); +// 4 +R125i.x = floatBitsToInt(intBitsToFloat(PV1i.w) + -(0.5)); +R127i.y = floatBitsToInt(intBitsToFloat(R3i.y) + -(intBitsToFloat(PV1i.w))); +R7i.z = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(uf_remappedPS[0].x)), intBitsToFloat(PS1i))); +PV0i.z = R7i.z; +R11i.w = floatBitsToInt(roundEven(0.0)); +R124i.z = floatBitsToInt(1.0 / intBitsToFloat(R4i.w)); +PS0i = R124i.z; +// 5 +R7i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.x), intBitsToFloat(PS0i))); +R7i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(PS0i))); +PV1i.z = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(PV0i.z)), intBitsToFloat(uf_remappedPS[1].y))); +R127i.w = floatBitsToInt(intBitsToFloat(uf_remappedPS[0].x) + intBitsToFloat(PV0i.z)); +PV1i.w = R127i.w; +PS1i = floatBitsToInt(float(R127i.x)); +// 6 +R127i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.w),intBitsToFloat(uf_remappedPS[2].x)) + intBitsToFloat(R5i.w))); +R126i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.w),intBitsToFloat(uf_remappedPS[2].x)) + intBitsToFloat(R5i.y))); +R126i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.w),intBitsToFloat(uf_remappedPS[2].x)) + intBitsToFloat(R5i.x))); +PV0i.w = floatBitsToInt(intBitsToFloat(PS1i) + intBitsToFloat(0xc0000000)); +R4i.y = floatBitsToInt(1.0 / intBitsToFloat(PV1i.z)); +PS0i = R4i.y; +// 7 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R7i.x),intBitsToFloat(R7i.y),intBitsToFloat(R127i.z),-0.0),vec4(intBitsToFloat(R7i.x),intBitsToFloat(R7i.y),intBitsToFloat(R127i.z),0.0))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +PS1i = floatBitsToInt(exp2(intBitsToFloat(PV0i.w))); +// 8 +R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.w),intBitsToFloat(uf_remappedPS[2].x)) + intBitsToFloat(R5i.z))); +PV0i.x = R123i.x; +R5i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.y), intBitsToFloat(PS1i))); +PV0i.y = R5i.y; +R127i.z = floatBitsToInt(max(intBitsToFloat(R126i.y), -(intBitsToFloat(R126i.y)))); +R127i.w = floatBitsToInt(max(intBitsToFloat(R127i.x), -(intBitsToFloat(R127i.x)))); +tempResultf = 1.0 / sqrt(intBitsToFloat(PV1i.x)); +R126i.w = floatBitsToInt(tempResultf); +PS0i = R126i.w; +// 9 +PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R7i.y), intBitsToFloat(PS0i))); +R126i.y = floatBitsToInt(max(intBitsToFloat(R126i.z), -(intBitsToFloat(R126i.z)))); +R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.y), intBitsToFloat(uf_remappedPS[3].x))); +PV1i.z = R126i.z; +PV1i.w = floatBitsToInt(min(intBitsToFloat(PV0i.y), 2.0)); +R127i.x = floatBitsToInt(max(intBitsToFloat(PV0i.x), -(intBitsToFloat(PV0i.x)))); +PS1i = R127i.x; +// 10 +PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PV1i.z))); +PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R7i.x), intBitsToFloat(R126i.w))); +PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.w), intBitsToFloat(PV1i.z))); +R126i.w = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(uf_remappedPS[4].w)), intBitsToFloat(PV1i.x))); +PV0i.w = R126i.w; +R127i.z = floatBitsToInt(intBitsToFloat(PV1i.w) * intBitsToFloat(0x40c00000)); +PS0i = R127i.z; +// 11 +backupReg0i = R127i.x; +backupReg1i = R126i.z; +R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(R126i.z))); +PV1i.x = R127i.x; +PV1i.y = floatBitsToInt(-(intBitsToFloat(PV0i.x)) + intBitsToFloat(PV0i.z)); +R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[4].z), intBitsToFloat(PV0i.y))); +PV1i.z = R126i.z; +R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(backupReg1i))); +PV1i.w = R127i.w; +PS1i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(PS0i))); +// 12 +PV0i.x = floatBitsToInt(-(intBitsToFloat(PV1i.w)) + intBitsToFloat(PV1i.y)); +R126i.y = R5i.y; +R126i.y = clampFI32(R126i.y); +PV0i.y = R126i.y; +PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.z), intBitsToFloat(R127i.z))); +PV0i.w = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + intBitsToFloat(PV1i.y)); +PS0i = floatBitsToInt(intBitsToFloat(PS1i) * intBitsToFloat(0x3e4ccccd)); +// 13 +backupReg0i = R0i.x; +backupReg1i = R0i.y; +PV1i.x = PV0i.y; +PV1i.x = floatBitsToInt(intBitsToFloat(PV1i.x) * 2.0); +PV1i.y = floatBitsToInt(intBitsToFloat(R127i.w) + intBitsToFloat(PV0i.w)); +PV1i.z = floatBitsToInt(intBitsToFloat(R127i.x) + intBitsToFloat(PV0i.x)); +R10i.w = floatBitsToInt(intBitsToFloat(backupReg0i) + intBitsToFloat(PV0i.z)); +R10i.y = floatBitsToInt(intBitsToFloat(backupReg1i) + intBitsToFloat(PS0i)); +PS1i = R10i.y; +// 14 +backupReg0i = R0i.x; +PV0i.x = floatBitsToInt(intBitsToFloat(PV1i.z) + intBitsToFloat(R125i.z)); +PV0i.x = clampFI32(PV0i.x); +R9i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.w),intBitsToFloat(PV1i.x)) + intBitsToFloat(R0i.y))); +R9i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.z),intBitsToFloat(PV1i.x)) + intBitsToFloat(backupReg0i))); +PV0i.w = floatBitsToInt(intBitsToFloat(PV1i.y) + intBitsToFloat(R127i.y)); +PV0i.w = clampFI32(PV0i.w); +R7i.w = floatBitsToInt(intBitsToFloat(R126i.y) * intBitsToFloat(0x40400000)); +PS0i = R7i.w; +// 15 +PV1i.x = floatBitsToInt(intBitsToFloat(PV0i.w) + intBitsToFloat(R125i.x)); +R13i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.z), intBitsToFloat(R7i.z))); +R10i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.w), intBitsToFloat(R7i.z))); +PV1i.w = floatBitsToInt(intBitsToFloat(PV0i.x) + intBitsToFloat(R125i.y)); +R5i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.w), intBitsToFloat(R124i.z))); +PS1i = R5i.z; +// 16 +R11i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.z), intBitsToFloat(PV1i.w))); +R11i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.w), intBitsToFloat(PV1i.x))); +R4i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(R10i.w)) + intBitsToFloat(R1i.z))); +R12i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(R10i.y)) + intBitsToFloat(R1i.w))); +R12i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(R9i.z)) + intBitsToFloat(R1i.z))); +PS0i = R12i.y; +// 17 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R13i.y),intBitsToFloat(R10i.z),intBitsToFloat(R7i.z),-0.0),vec4(intBitsToFloat(R13i.y),intBitsToFloat(R10i.z),intBitsToFloat(R7i.z),0.0))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R5i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(R9i.y)) + intBitsToFloat(R1i.w))); +PS1i = R5i.x; +// 18 +R125i.x = R9i.w & 0x0000001c; +R3i.y = 0; +R3i.z = R9i.w & 0x00000002; +PV0i.w = floatBitsToInt(max(intBitsToFloat(R8i.y), intBitsToFloat(R8i.z))); +PS0i = floatBitsToInt(sqrt(intBitsToFloat(PV1i.x))); +// 19 +backupReg0i = R6i.w; +backupReg0i = R6i.w; +R3i.x = floatBitsToInt(min(intBitsToFloat(R8i.y), intBitsToFloat(R8i.z))); +R18i.y = floatBitsToInt(max(intBitsToFloat(R8i.x), intBitsToFloat(PV0i.w))); +PV1i.y = R18i.y; +R12i.z = floatBitsToInt(intBitsToFloat(R5i.y) * intBitsToFloat(0x40c00000)); +R12i.z = clampFI32(R12i.z); +R6i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(backupReg0i))); +PS1i = floatBitsToInt(1.0 / intBitsToFloat(PS0i)); +// 20 +R9i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R13i.y), intBitsToFloat(PS1i))); +PV0i.x = R9i.x; +R14i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R10i.z), intBitsToFloat(PS1i))); +PV0i.y = R14i.y; +R6i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R7i.z), intBitsToFloat(PS1i))); +PV0i.z = R6i.z; +R3i.w = floatBitsToInt(intBitsToFloat(PV1i.y) + intBitsToFloat(0x2edbe6ff)); +PS0i = floatBitsToInt(float(R125i.x)); +// 21 +R6i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R7i.x),intBitsToFloat(R7i.y),intBitsToFloat(R5i.z),-0.0),vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),0.0))); +PV1i.x = R6i.x; +PV1i.y = R6i.x; +PV1i.z = R6i.x; +PV1i.w = R6i.x; +R13i.x = floatBitsToInt(intBitsToFloat(PS0i) * intBitsToFloat(0x3d124925)); +PS1i = R13i.x; +// 0 +R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[5].x), intBitsToFloat(uf_remappedPS[6].w))); +PV0i.x = R127i.x; +R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[5].y), intBitsToFloat(uf_remappedPS[6].w))); +PV0i.y = R126i.y; +R11i.z = floatBitsToInt(intBitsToFloat(R6i.x) + 1.0); +R11i.z = clampFI32(R11i.z); +R127i.w = floatBitsToInt(min(intBitsToFloat(R8i.x), intBitsToFloat(R3i.x))); +R20i.w = floatBitsToInt(float(R3i.z)); +R20i.w = floatBitsToInt(intBitsToFloat(R20i.w) / 2.0); +PS0i = R20i.w; +// 1 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(R4i.x),-0.0),vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(R4i.x),0.0))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R3i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[5].z), intBitsToFloat(uf_remappedPS[6].w))); +PS1i = R3i.z; +// 2 +PV0i.x = floatBitsToInt(-(intBitsToFloat(R11i.z)) + 1.0); +R125i.y = floatBitsToInt((intBitsToFloat(R9i.x) * intBitsToFloat(0xbe99999a) + -(intBitsToFloat(R127i.x)))); +R126i.z = floatBitsToInt((intBitsToFloat(R14i.y) * intBitsToFloat(0xbe99999a) + -(intBitsToFloat(R126i.y)))); +R126i.w = floatBitsToInt((intBitsToFloat(R6i.z) * intBitsToFloat(0xbe99999a) + -(intBitsToFloat(PS1i)))); +tempResultf = 1.0 / sqrt(intBitsToFloat(PV1i.x)); +PS0i = floatBitsToInt(tempResultf); +// 3 +R125i.x = floatBitsToInt((intBitsToFloat(R127i.x) * intBitsToFloat(0xbf4ccccd) + intBitsToFloat(R9i.x))); +R6i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(PS0i))); +R125i.z = floatBitsToInt((intBitsToFloat(R126i.y) * intBitsToFloat(0xbf4ccccd) + intBitsToFloat(R14i.y))); +R5i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(PS0i))); +tempResultf = log2(intBitsToFloat(PV0i.x)); +if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; +R125i.w = floatBitsToInt(tempResultf); +PS1i = R125i.w; +// 4 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R125i.y),intBitsToFloat(R126i.z),intBitsToFloat(R126i.w),-0.0),vec4(intBitsToFloat(R125i.y),intBitsToFloat(R126i.z),intBitsToFloat(R126i.w),0.0))); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +R124i.z = floatBitsToInt(intBitsToFloat(PS1i) * intBitsToFloat(0x3e4ccccd)); +PS0i = R124i.z; +// 5 +R6i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R13i.x),-(intBitsToFloat(R20i.w))) + intBitsToFloat(R13i.x))); +R127i.y = floatBitsToInt(intBitsToFloat(R125i.w) * intBitsToFloat(0x41000000)); +R127i.z = floatBitsToInt((intBitsToFloat(R3i.z) * intBitsToFloat(0xbf4ccccd) + intBitsToFloat(R6i.z))); +R125i.w = floatBitsToInt((intBitsToFloat(R4i.y) * intBitsToFloat(0x3dcccccd) + 1.0)); +tempResultf = 1.0 / sqrt(intBitsToFloat(PV0i.x)); +PS1i = floatBitsToInt(tempResultf); +// 6 +PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.y), intBitsToFloat(PS1i))); +PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.z), intBitsToFloat(PS1i))); +PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.w), intBitsToFloat(PS1i))); +R13i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R12i.z), intBitsToFloat(R6i.w))); +R4i.y = floatBitsToInt(exp2(intBitsToFloat(R124i.z))); +PS0i = R4i.y; +// 7 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R7i.x),intBitsToFloat(R7i.y),intBitsToFloat(R5i.z),-0.0),vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),0.0))); +tempi.x = clampFI32(tempi.x); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R3i.x = floatBitsToInt(exp2(intBitsToFloat(R127i.y))); +PS1i = R3i.x; +// 8 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R125i.x),intBitsToFloat(R125i.z),intBitsToFloat(R127i.z),-0.0),vec4(intBitsToFloat(R125i.x),intBitsToFloat(R125i.z),intBitsToFloat(R127i.z),0.0))); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +tempResultf = log2(intBitsToFloat(PV1i.x)); +if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; +PS0i = floatBitsToInt(tempResultf); +// 9 +R126i.x = floatBitsToInt((intBitsToFloat(0x3ff33333) * intBitsToFloat(R18i.y) + intBitsToFloat(0x3dcccccd))); +R16i.y = floatBitsToInt(intBitsToFloat(R125i.w) * intBitsToFloat(0x42960000)); +PV1i.z = floatBitsToInt(intBitsToFloat(PS0i) * intBitsToFloat(0x40c00000)); +R15i.w = R5i.y; +R15i.w = floatBitsToInt(intBitsToFloat(R15i.w) * 4.0); +R15i.w = clampFI32(R15i.w); +tempResultf = 1.0 / sqrt(intBitsToFloat(PV0i.x)); +PS1i = floatBitsToInt(tempResultf); +// 10 +PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.x), intBitsToFloat(PS1i))); +PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.z), intBitsToFloat(PS1i))); +PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PS1i))); +R126i.w = floatBitsToInt((intBitsToFloat(R4i.w) * 4.0 + intBitsToFloat(0xc0400000))); +R126i.w = clampFI32(R126i.w); +R15i.y = floatBitsToInt(exp2(intBitsToFloat(PV1i.z))); +PS0i = R15i.y; +// 11 +R125i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R7i.x),intBitsToFloat(R7i.y),intBitsToFloat(R5i.z),-0.0),vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),0.0))); +PV1i.x = R125i.x; +PV1i.y = R125i.x; +PV1i.z = R125i.x; +PV1i.w = R125i.x; +R16i.z = floatBitsToInt(1.0 / intBitsToFloat(R3i.w)); +PS1i = R16i.z; +// 12 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R9i.x),intBitsToFloat(R14i.y),intBitsToFloat(R6i.z),-0.0),vec4(intBitsToFloat(R127i.x),intBitsToFloat(R126i.y),intBitsToFloat(R3i.z),0.0))); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +R125i.w = tempi.x; +R21i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R127i.w)),intBitsToFloat(PS1i)) + 1.0)); +PS0i = R21i.w; +// 13 +R4i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R7i.x),intBitsToFloat(R7i.y),intBitsToFloat(R5i.z),intBitsToFloat(R5i.z)),vec4(-(intBitsToFloat(R127i.x)),-(intBitsToFloat(R126i.y)),-(intBitsToFloat(R3i.z)),-(intBitsToFloat(R3i.y))))); +R4i.x = clampFI32(R4i.x); +PV1i.x = R4i.x; +PV1i.y = R4i.x; +PV1i.z = R4i.x; +PV1i.w = R4i.x; +R6i.w = floatBitsToInt(intBitsToFloat(R125i.x) + 1.0); +R6i.w = clampFI32(R6i.w); +PS1i = R6i.w; +// 14 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R7i.x),intBitsToFloat(R7i.y),intBitsToFloat(R5i.z),-0.0),vec4(intBitsToFloat(uf_remappedPS[5].x),intBitsToFloat(uf_remappedPS[5].y),intBitsToFloat(uf_remappedPS[5].z),0.0))); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +PS0i = floatBitsToInt(max(-(intBitsToFloat(R125i.w)), 0.0)); +// 15 +PV1i.x = floatBitsToInt(max(-(intBitsToFloat(PV0i.x)), 0.0)); +R7i.y = floatBitsToInt((-(intBitsToFloat(R125i.w)) * intBitsToFloat(0x40a00000) + intBitsToFloat(0x40a00000))); +R7i.y = clampFI32(R7i.y); +PV1i.z = floatBitsToInt(-(intBitsToFloat(R21i.w)) + 1.0); +PV1i.z = clampFI32(PV1i.z); +R14i.w = floatBitsToInt(min(intBitsToFloat(PS0i), 1.0)); +R17i.w = floatBitsToInt(intBitsToFloat(R21i.w) + intBitsToFloat(R126i.x)); +R17i.w = clampFI32(R17i.w); +PS1i = R17i.w; +// 16 +R7i.x = floatBitsToInt(min(intBitsToFloat(PV1i.x), 1.0)); +PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R18i.y), intBitsToFloat(PV1i.z))); +R5i.z = floatBitsToInt(intBitsToFloat(R2i.x) * intBitsToFloat(0x3f4ccccd)); +PV0i.z = R5i.z; +R19i.w = floatBitsToInt(intBitsToFloat(R2i.y) * intBitsToFloat(0x3f4ccccd)); +PV0i.w = R19i.w; +R13i.z = floatBitsToInt(intBitsToFloat(R2i.z) * intBitsToFloat(0x3f4ccccd)); +PS0i = R13i.z; +// 17 +R10i.x = floatBitsToInt(intBitsToFloat(uf_remappedPS[7].x) + -(intBitsToFloat(PV0i.z))); +R17i.y = floatBitsToInt(intBitsToFloat(R126i.w) + -(0.5)); +R17i.y = floatBitsToInt(intBitsToFloat(R17i.y) * 4.0); +R17i.y = clampFI32(R17i.y); +PV1i.z = R5i.y; +PV1i.z = floatBitsToInt(intBitsToFloat(PV1i.z) * 2.0); +PV1i.z = clampFI32(PV1i.z); +R16i.w = floatBitsToInt(intBitsToFloat(PV0i.y) * intBitsToFloat(0x40400000)); +R16i.w = clampFI32(R16i.w); +R18i.w = floatBitsToInt(intBitsToFloat(uf_remappedPS[7].y) + -(intBitsToFloat(PV0i.w))); +PS1i = R18i.w; +// 18 +R12i.x = floatBitsToInt(intBitsToFloat(PV1i.z) * 0.25); +R3i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R11i.z), intBitsToFloat(R14i.w))); +R3i.z = floatBitsToInt(intBitsToFloat(uf_remappedPS[7].z) + -(intBitsToFloat(R13i.z))); +R3i.w = floatBitsToInt((-(intBitsToFloat(R21i.w)) * intBitsToFloat(0x40400000) + intBitsToFloat(0x40400000))); +tempResultf = log2(intBitsToFloat(R18i.y)); +if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; +PS0i = floatBitsToInt(tempResultf); +// 19 +PV1i.x = floatBitsToInt(intBitsToFloat(PS0i) * intBitsToFloat(0x3f19999a)); +R5i.y = floatBitsToInt(intBitsToFloat(R21i.w) + intBitsToFloat(0x2edbe6ff)); +PV1i.z = floatBitsToInt(intBitsToFloat(R17i.y) + intBitsToFloat(0x3f4ccccd)); +PV1i.z = clampFI32(PV1i.z); +R4i.w = floatBitsToInt(intBitsToFloat(R14i.w) * intBitsToFloat(0x40a00000)); +R4i.w = clampFI32(R4i.w); +R15i.z = floatBitsToInt(-(intBitsToFloat(R127i.w)) + intBitsToFloat(R18i.y)); +PS1i = R15i.z; +// 20 +backupReg0i = R8i.x; +backupReg1i = R8i.z; +R8i.xyz = floatBitsToInt(vec3(intBitsToFloat(R8i.y),intBitsToFloat(backupReg0i),intBitsToFloat(PV1i.z)) + vec3(-(intBitsToFloat(R127i.w)),-(intBitsToFloat(R127i.w)),-(1.0))); +R22i.w = floatBitsToInt(intBitsToFloat(backupReg1i) + -(intBitsToFloat(R127i.w))); +R8i.w = floatBitsToInt(exp2(intBitsToFloat(PV1i.x))); +PS0i = R8i.w; +// 0 +backupReg0i = R3i.w; +PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[4].z), intBitsToFloat(R5i.w))); +PV0i.z = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(uf_remappedPS[4].w)), intBitsToFloat(R6i.y))); +R3i.w = floatBitsToInt(intBitsToFloat(0x3df5c28f) * intBitsToFloat(uf_remappedPS[1].z)); +R14i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(R8i.w)) + intBitsToFloat(R8i.w))); +PS0i = R14i.z; +// 1 +backupReg0i = R0i.x; +backupReg1i = R0i.y; +backupReg2i = R9i.w; +R0i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),intBitsToFloat(R7i.w)) + intBitsToFloat(backupReg0i))); +R0i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.z),intBitsToFloat(R7i.w)) + intBitsToFloat(backupReg1i))); +R0i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.z),intBitsToFloat(R4i.w)) + 1.0)); +R9i.w = backupReg2i & int(1); +R7i.w = floatBitsToInt(1.0 / intBitsToFloat(R5i.y)); +PS1i = R7i.w; +R10i.w = floatBitsToInt(texture(textureUnitPS4, intBitsToFloat(R10i.wy)).x); +R0i.w = floatBitsToInt(texture(textureUnitPS4, intBitsToFloat(R9i.zy)).x); +R9i.z = floatBitsToInt(texture(textureUnitPS13, intBitsToFloat(R11i.xy)).w); +R4i.w = floatBitsToInt(texture(textureUnitPS4, intBitsToFloat(R0i.xy)).x); +R20i.xyz = floatBitsToInt(texture(textureUnitPS9, intBitsToFloat(R11i.xy)).xyz); +R19i.xyz = floatBitsToInt(texture(textureUnitPS8, vec3(intBitsToFloat(R11i.x),intBitsToFloat(R11i.y),intBitsToFloat(R11i.w))).xyz); +R21i.xyz = floatBitsToInt(texture(textureUnitPS11, intBitsToFloat(R11i.xy)).xyz); +// 0 +R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R9i.z), intBitsToFloat(R4i.y))); +R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[3].x),intBitsToFloat(R10i.w)) + intBitsToFloat(uf_remappedPS[0].x))); +PV0i.y = R123i.y; +R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[3].x),intBitsToFloat(R0i.w)) + intBitsToFloat(uf_remappedPS[0].x))); +PV0i.z = R127i.z; +R126i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(R0i.x)) + intBitsToFloat(R1i.z))); +R125i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(R0i.y)) + intBitsToFloat(R1i.w))); +PS0i = R125i.w; +// 1 +PV1i.x = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(PV0i.y)), intBitsToFloat(R12i.w))); +PV1i.y = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(PV0i.y)), intBitsToFloat(R4i.z))); +R125i.z = floatBitsToInt(-(intBitsToFloat(PV0i.z))); +PV1i.w = floatBitsToInt(-(intBitsToFloat(PV0i.y))); +PS1i = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(PV0i.z)), intBitsToFloat(R12i.y))); +// 2 +R127i.x = floatBitsToInt(-(intBitsToFloat(R13i.y)) + intBitsToFloat(PV1i.y)); +PV0i.y = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(R127i.z)), intBitsToFloat(R5i.x))); +R127i.z = floatBitsToInt(-(intBitsToFloat(R10i.z)) + intBitsToFloat(PV1i.x)); +R127i.w = floatBitsToInt(-(intBitsToFloat(R7i.z)) + intBitsToFloat(PV1i.w)); +R125i.x = floatBitsToInt(-(intBitsToFloat(R13i.y)) + intBitsToFloat(PS1i)); +PS0i = R125i.x; +// 3 +backupReg0i = R126i.x; +backupReg0i = R126i.x; +R126i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[3].x),intBitsToFloat(R4i.w)) + intBitsToFloat(uf_remappedPS[0].x))); +PV1i.x = R126i.x; +R127i.y = floatBitsToInt(-(intBitsToFloat(R10i.z)) + intBitsToFloat(PV0i.y)); +R126i.z = floatBitsToInt(-(intBitsToFloat(R7i.z)) + intBitsToFloat(R125i.z)); +R124i.w = floatBitsToInt(intBitsToFloat(backupReg0i) + intBitsToFloat(0xbf400000)); +R124i.y = floatBitsToInt((intBitsToFloat(backupReg0i) * intBitsToFloat(0x3e99999a) + intBitsToFloat(0xbecccccd))); +PS1i = R124i.y; +// 4 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R9i.x),intBitsToFloat(R14i.y),intBitsToFloat(R6i.z),-0.0),vec4(intBitsToFloat(R127i.x),intBitsToFloat(R127i.z),intBitsToFloat(R127i.w),0.0))); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +R4i.w = tempi.x; +R125i.z = floatBitsToInt(-(intBitsToFloat(PV1i.x))); +PS0i = R125i.z; +// 5 +backupReg0i = R127i.x; +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R9i.x),intBitsToFloat(R14i.y),intBitsToFloat(R6i.z),-0.0),vec4(intBitsToFloat(R125i.x),intBitsToFloat(R127i.y),intBitsToFloat(R126i.z),0.0))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R12i.w = tempi.x; +R127i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R9i.x)),intBitsToFloat(PV0i.x)) + intBitsToFloat(backupReg0i))); +PS1i = R127i.x; +// 6 +PV0i.x = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(R126i.x)), intBitsToFloat(R126i.w))); +R126i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R14i.y)),intBitsToFloat(R4i.w)) + intBitsToFloat(R127i.z))); +R127i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R6i.z)),intBitsToFloat(R4i.w)) + intBitsToFloat(R127i.w))); +R127i.w = floatBitsToInt(intBitsToFloat(R124i.y) + intBitsToFloat(R4i.x)); +R126i.w = floatBitsToInt(intBitsToFloat(R20i.x) + intBitsToFloat(0xbecccccd)); +PS0i = R126i.w; +// 7 +backupReg0i = R125i.z; +PV1i.x = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(R126i.x)), intBitsToFloat(R125i.w))); +R125i.y = floatBitsToInt(-(intBitsToFloat(R13i.y)) + intBitsToFloat(PV0i.x)); +R125i.z = floatBitsToInt(-(intBitsToFloat(R7i.z)) + intBitsToFloat(backupReg0i)); +R1i.w = floatBitsToInt(intBitsToFloat(R124i.w) * intBitsToFloat(0x41800000)); +R1i.w = clampFI32(R1i.w); +R126i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R9i.x)),intBitsToFloat(R12i.w)) + intBitsToFloat(R125i.x))); +PS1i = R126i.x; +// 8 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R127i.x),intBitsToFloat(R126i.y),intBitsToFloat(R127i.z),-0.0),vec4(intBitsToFloat(R127i.x),intBitsToFloat(R126i.y),intBitsToFloat(R127i.z),0.0))); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +R126i.y = floatBitsToInt(-(intBitsToFloat(R10i.z)) + intBitsToFloat(PV1i.x)); +PS0i = R126i.y; +// 9 +R127i.x = floatBitsToInt(intBitsToFloat(R127i.w) * intBitsToFloat(0x42960000)); +R127i.x = clampFI32(R127i.x); +R123i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R14i.y)),intBitsToFloat(R12i.w)) + intBitsToFloat(R127i.y))); +PV1i.y = R123i.y; +R123i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R6i.z)),intBitsToFloat(R12i.w)) + intBitsToFloat(R126i.z))); +PV1i.z = R123i.z; +R0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.w), intBitsToFloat(R3i.x))); +R0i.w = clampFI32(R0i.w); +tempResultf = 1.0 / sqrt(intBitsToFloat(PV0i.x)); +PS1i = floatBitsToInt(tempResultf); +// 10 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R126i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),-0.0),vec4(intBitsToFloat(R126i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),0.0))); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.w), intBitsToFloat(PS1i))); +PS0i = R126i.z; +// 11 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R9i.x),intBitsToFloat(R14i.y),intBitsToFloat(R6i.z),-0.0),vec4(intBitsToFloat(R125i.y),intBitsToFloat(R126i.y),intBitsToFloat(R125i.z),0.0))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R127i.w = tempi.x; +tempResultf = 1.0 / sqrt(intBitsToFloat(PV0i.x)); +PS1i = floatBitsToInt(tempResultf); +// 12 +backupReg0i = R126i.y; +backupReg1i = R126i.z; +R126i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R9i.x)),intBitsToFloat(PV1i.x)) + intBitsToFloat(R125i.y))); +R126i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R14i.y)),intBitsToFloat(PV1i.x)) + intBitsToFloat(backupReg0i))); +R126i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R6i.z)),intBitsToFloat(PV1i.x)) + intBitsToFloat(R125i.z))); +PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R12i.w), intBitsToFloat(PS1i))); +PS0i = floatBitsToInt(intBitsToFloat(backupReg1i) * intBitsToFloat(0x3c23d70a)); +PS0i = clampFI32(PS0i); +// 13 +backupReg0i = R124i.y; +PV1i.x = floatBitsToInt(intBitsToFloat(R0i.w) + intBitsToFloat(R15i.y)); +PV1i.x = clampFI32(PV1i.x); +R124i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.w), intBitsToFloat(PV0i.w))); +R124i.y = clampFI32(R124i.y); +R125i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS0i), intBitsToFloat(R6i.w))); +R124i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R7i.y), intBitsToFloat(R127i.x))); +R6i.w = floatBitsToInt(intBitsToFloat(backupReg0i) + intBitsToFloat(R7i.x)); +PS1i = R6i.w; +// 14 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R126i.x),intBitsToFloat(R126i.y),intBitsToFloat(R126i.z),-0.0),vec4(intBitsToFloat(R126i.x),intBitsToFloat(R126i.y),intBitsToFloat(R126i.z),0.0))); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +R125i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R13i.w), intBitsToFloat(PV1i.x))); +PS0i = R125i.w; +// 15 +R126i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.z),intBitsToFloat(R14i.w)) + intBitsToFloat(0xbecccccd))); +PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R11i.z), intBitsToFloat(R124i.y))); +PV1i.z = floatBitsToInt(intBitsToFloat(R126i.w) * intBitsToFloat(0x41200000)); +PV1i.z = clampFI32(PV1i.z); +PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.x), intBitsToFloat(PS0i))); +tempResultf = 1.0 / sqrt(intBitsToFloat(PV0i.x)); +PS1i = floatBitsToInt(tempResultf); +// 16 +R6i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R20i.y), intBitsToFloat(PV1i.z))); +PV0i.x = R6i.x; +PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.w), intBitsToFloat(PS1i))); +PV0i.z = floatBitsToInt(intBitsToFloat(R125i.w) + intBitsToFloat(0xbe0f5c29)); +R127i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R12i.z),intBitsToFloat(PV1i.w)) + intBitsToFloat(0xbe0f5c29))); +R124i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.y),intBitsToFloat(R124i.w)) + intBitsToFloat(0xbecccccd))); +PS0i = R124i.y; +// 17 +PV1i.x = floatBitsToInt(intBitsToFloat(R126i.x) * intBitsToFloat(0x42960000)); +PV1i.x = clampFI32(PV1i.x); +R125i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.w), intBitsToFloat(PV0i.y))); +R125i.y = clampFI32(R125i.y); +PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.x) + -(1.0)); +PV1i.w = floatBitsToInt(intBitsToFloat(R2i.w) + -(intBitsToFloat(R1i.w))); +PV1i.w = clampFI32(PV1i.w); +R126i.y = floatBitsToInt(intBitsToFloat(PV0i.z) * intBitsToFloat(0x428c0000)); +R126i.y = clampFI32(R126i.y); +PS1i = R126i.y; +// 18 +R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.w), intBitsToFloat(R16i.y))); +R126i.x = clampFI32(R126i.x); +PV0i.y = floatBitsToInt(intBitsToFloat(R127i.w) * intBitsToFloat(0x428c0000)); +PV0i.y = clampFI32(PV0i.y); +R11i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R15i.w), intBitsToFloat(PV1i.x))); +R127i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.z),intBitsToFloat(PV1i.w)) + 1.0)); +PV0i.w = R127i.w; +PS0i = floatBitsToInt(intBitsToFloat(R124i.y) * intBitsToFloat(0x42960000)); +PS0i = clampFI32(PS0i); +// 19 +PV1i.x = floatBitsToInt(intBitsToFloat(R126i.y) * intBitsToFloat(0x3f333333)); +PV1i.x = clampFI32(PV1i.x); +R7i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R12i.z), intBitsToFloat(PS0i))); +R7i.y = floatBitsToInt(intBitsToFloat(R7i.y) * 2.0); +R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.y),-(intBitsToFloat(R16i.w))) + intBitsToFloat(PV0i.y))); +PV1i.z = R123i.z; +PV1i.w = floatBitsToInt(intBitsToFloat(R125i.y) + -(0.5)); +R6i.w = floatBitsToInt(intBitsToFloat(PV0i.w) + 0.5); +PS1i = R6i.w; +// 20 +R7i.x = floatBitsToInt(intBitsToFloat(PV1i.w) * intBitsToFloat(0x42200000)); +R7i.x = clampFI32(R7i.x); +R16i.y = floatBitsToInt(intBitsToFloat(PV1i.z) * intBitsToFloat(0x3e19999a)); +R12i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(R17i.w))); +R16i.w = floatBitsToInt(intBitsToFloat(R1i.w) + intBitsToFloat(R126i.x)); +R16i.w = clampFI32(R16i.w); +R17i.w = floatBitsToInt(-(intBitsToFloat(R11i.z)) + intBitsToFloat(R127i.w)); +PS0i = R17i.w; +// 0 +R126i.x = floatBitsToInt((intBitsToFloat(R12i.z) * intBitsToFloat(0x3dcccccd) + intBitsToFloat(R16i.y))); +R126i.y = floatBitsToInt(intBitsToFloat(R2i.w) + intBitsToFloat(R6i.x)); +R126i.y = clampFI32(R126i.y); +PV0i.y = R126i.y; +R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R17i.w),intBitsToFloat(R16i.w)) + intBitsToFloat(R11i.z))); +PV0i.z = R123i.z; +R127i.w = floatBitsToInt(intBitsToFloat(R7i.y) * intBitsToFloat(0x3e4ccccd)); +PS0i = floatBitsToInt(intBitsToFloat(R7i.x) * intBitsToFloat(0x41000000)); +// 1 +R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.y), intBitsToFloat(PS0i))); +R127i.x = clampFI32(R127i.x); +R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R10i.x),intBitsToFloat(PV0i.y)) + intBitsToFloat(R5i.z))); +PV1i.y = R123i.y; +PV1i.z = floatBitsToInt(intBitsToFloat(R0i.w) + intBitsToFloat(R6i.w)); +PV1i.z = clampFI32(PV1i.z); +R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.z),intBitsToFloat(PV0i.y)) + intBitsToFloat(R13i.z))); +PV1i.w = R123i.w; +R125i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R17i.y), intBitsToFloat(PV0i.z))); +PS1i = R125i.y; +// 2 +R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.x),intBitsToFloat(PV1i.z)) + intBitsToFloat(R127i.w))); +R123i.x = clampFI32(R123i.x); +PV0i.x = R123i.x; +R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R18i.w),intBitsToFloat(R126i.y)) + intBitsToFloat(R19i.w))); +PV0i.y = R123i.y; +R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.y), intBitsToFloat(uf_remappedPS[8].x))); +PV0i.z = R126i.z; +R125i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(uf_remappedPS[8].z))); +PV0i.w = R125i.w; +R125i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R20i.z), intBitsToFloat(R20i.z))); +PS0i = R125i.x; +// 3 +R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R13i.x),intBitsToFloat(R20i.w)) + intBitsToFloat(R125i.y))); +R123i.x = clampFI32(R123i.x); +PV1i.x = R123i.x; +R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.x),intBitsToFloat(R12i.x)) + intBitsToFloat(PV0i.x))); +R123i.y = clampFI32(R123i.y); +PV1i.y = R123i.y; +R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(uf_remappedPS[8].y))); +PV1i.z = R127i.z; +R127i.w = floatBitsToInt(intBitsToFloat(PV0i.z) * intBitsToFloat(0x3da3d70a)); +R125i.y = floatBitsToInt(intBitsToFloat(PV0i.w) * intBitsToFloat(0x3da3d70a)); +PS1i = R125i.y; +// 4 +R127i.x = floatBitsToInt(intBitsToFloat(PV1i.z) * intBitsToFloat(0x3da3d70a)); +R126i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.y),intBitsToFloat(R14i.z)) + intBitsToFloat(R18i.y))); +R126i.y = clampFI32(R126i.y); +R123i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R21i.w)),intBitsToFloat(PV1i.y)) + intBitsToFloat(R21i.w))); +R123i.z = clampFI32(R123i.z); +PV0i.z = R123i.z; +R124i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[6].w), intBitsToFloat(PV1i.x))); +R126i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.w),-(intBitsToFloat(PV1i.x))) + intBitsToFloat(R2i.w))); +PS0i = R126i.x; +// 5 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R19i.x),intBitsToFloat(R19i.y),intBitsToFloat(R19i.z),-0.0),vec4(intBitsToFloat(0x3e99096c),intBitsToFloat(0x3f162b6b),intBitsToFloat(0x3dea4a8c),0.0))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R124i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), intBitsToFloat(R7i.w))); +PS1i = R124i.z; +// 6 +backupReg0i = R127i.x; +R127i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.x),intBitsToFloat(R127i.w)) + intBitsToFloat(R2i.x))); +PV0i.y = ((intBitsToFloat(PV1i.x) > 0.0)?int(0xFFFFFFFF):int(0x0)); +R125i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.x),intBitsToFloat(R125i.y)) + intBitsToFloat(R2i.z))); +R127i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.x),intBitsToFloat(backupReg0i)) + intBitsToFloat(R2i.y))); +PS0i = floatBitsToInt(1.0 / intBitsToFloat(PV1i.x)); +// 7 +R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R16i.z), intBitsToFloat(R126i.y))); +R126i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R124i.z)),intBitsToFloat(R15i.z)) + intBitsToFloat(R18i.y))); +PV1i.y = R126i.y; +R123i.w = ((PV0i.y == 0)?(0):(PS0i)); +PV1i.w = R123i.w; +R126i.w = floatBitsToInt(float(R9i.w)); +PS1i = R126i.w; +// 8 +backupReg0i = R0i.z; +backupReg0i = R0i.z; +PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(R0i.z))); +R125i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.w), intBitsToFloat(PV1i.w))); +PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.z), intBitsToFloat(backupReg0i))); +PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.w), intBitsToFloat(backupReg0i))); +R127i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.z),intBitsToFloat(R8i.y)) + intBitsToFloat(PV1i.y))); +PS0i = R127i.x; +// 9 +R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(R124i.w)) + intBitsToFloat(PV0i.w))); +PV1i.x = R123i.x; +R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.z),intBitsToFloat(R124i.w)) + intBitsToFloat(PV0i.x))); +PV1i.y = R123i.y; +R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.z),intBitsToFloat(R8i.x)) + intBitsToFloat(R126i.y))); +R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.w),intBitsToFloat(R124i.w)) + intBitsToFloat(PV0i.z))); +PV1i.w = R123i.w; +R126i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.z),intBitsToFloat(R22i.w)) + intBitsToFloat(R126i.y))); +PS1i = R126i.z; +// 10 +backupReg0i = R125i.y; +backupReg1i = R126i.x; +backupReg0i = R125i.y; +backupReg2i = R126i.w; +R126i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R19i.y),intBitsToFloat(R125i.y)) + intBitsToFloat(PV1i.x))); +R125i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R19i.x),intBitsToFloat(backupReg0i)) + intBitsToFloat(PV1i.y))); +PV0i.z = floatBitsToInt(intBitsToFloat(0x3f895ef0) * intBitsToFloat(backupReg1i)); +R126i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R19i.z),intBitsToFloat(backupReg0i)) + intBitsToFloat(PV1i.w))); +R19i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg2i), intBitsToFloat(R125i.x))); +PS0i = R19i.w; +// 11 +R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.z),intBitsToFloat(R127i.z)) + intBitsToFloat(0xba0a8ec8))); +R123i.x = clampFI32(R123i.x); +PV1i.x = R123i.x; +R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.z),intBitsToFloat(R127i.x)) + intBitsToFloat(0xba0a8ec8))); +R123i.y = clampFI32(R123i.y); +PV1i.y = R123i.y; +R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.z),intBitsToFloat(R126i.z)) + intBitsToFloat(0xba0a8ec8))); +R123i.w = clampFI32(R123i.w); +PV1i.w = R123i.w; +// 12 +PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.w), intBitsToFloat(PV1i.w))); +PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.x), intBitsToFloat(PV1i.x))); +PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.y), intBitsToFloat(PV1i.y))); +// 13 +R123i.y = floatBitsToInt((intBitsToFloat(PV0i.x) * intBitsToFloat(0x3f6e896b) + intBitsToFloat(0x3a011b1e))); +PV1i.y = R123i.y; +R123i.z = floatBitsToInt((intBitsToFloat(PV0i.y) * intBitsToFloat(0x3f6e896b) + intBitsToFloat(0x3a011b1e))); +PV1i.z = R123i.z; +R123i.w = floatBitsToInt((intBitsToFloat(PV0i.z) * intBitsToFloat(0x3f6e896b) + intBitsToFloat(0x3a011b1e))); +PV1i.w = R123i.w; +// 14 +R19i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R20i.z),intBitsToFloat(PV1i.w)) + intBitsToFloat(R21i.x))); +R19i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R20i.z),intBitsToFloat(PV1i.z)) + intBitsToFloat(R21i.y))); +R19i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R20i.z),intBitsToFloat(PV1i.y)) + intBitsToFloat(R21i.z))); +// export +passPixelColor0 = vec4(intBitsToFloat(R19i.x), intBitsToFloat(R19i.y), intBitsToFloat(R19i.z), intBitsToFloat(R19i.w)); +float luma = dot(passPixelColor0.rgb, vec3(0.2126, 0.7152, 0.0722)); +passPixelColor0.rgb = vec3(luma); +} diff --git a/Modifications/BreathOfTheWild_Monochromia/3c49f88069390494_0000000079249749_ps.txt b/Modifications/BreathOfTheWild_Monochromia/3c49f88069390494_0000000079249749_ps.txt new file mode 100644 index 00000000..cf3c8196 --- /dev/null +++ b/Modifications/BreathOfTheWild_Monochromia/3c49f88069390494_0000000079249749_ps.txt @@ -0,0 +1,626 @@ +#version 420 +#extension GL_ARB_texture_gather : enable +// shader 3c49f88069390494 +// Monochromia +// Plants - rainy weather +// original shader dumped using cemu 1.11.c, BotW 1.3.1 +#define ENABLE_COLOR_FADE 0 // set this to 1 to enable, 0 to disable the effect + +uniform ivec4 uf_remappedPS[10]; +layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0xf45c6000 res 1280x720x1 dim 1 tm: 4 format 041a compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 2) uniform sampler2D textureUnitPS2;// Tex2 addr 0xf494a800 res 1280x720x1 dim 1 tm: 4 format 001a compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler2 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 4) uniform sampler2D textureUnitPS4;// Tex4 addr 0xf4e91800 res 1280x720x1 dim 1 tm: 4 format 0806 compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler4 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 6) uniform sampler2D textureUnitPS6;// Tex6 addr 0xf5054000 res 640x360x1 dim 1 tm: 4 format 080e compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler6 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 7) uniform sampler2D textureUnitPS7;// Tex7 addr 0xf5846000 res 640x360x1 dim 1 tm: 4 format 0001 compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler7 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 8) uniform samplerCubeArray textureUnitPS8;// Tex8 addr 0x3db66800 res 64x64x1 dim 3 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x4) sliceView: 0x0 (num 0x6) Sampler8 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 10) uniform sampler2DArray textureUnitPS10;// Tex10 addr 0xf5593000 res 640x360x2 dim 5 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x2) Sampler10 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 11) uniform sampler2D textureUnitPS11;// Tex11 addr 0xf575f800 res 640x360x1 dim 1 tm: 4 format 001a compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler11 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 13) uniform sampler2D textureUnitPS13;// Tex13 addr 0xf5977800 res 640x360x1 dim 1 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler13 ClampX/Y/Z: 2 2 2 border: 1 +layout(location = 0) in vec4 passParameterSem0; +layout(location = 1) in vec4 passParameterSem4; +layout(location = 2) in vec4 passParameterSem6; +layout(location = 0) out vec4 passPixelColor0; +uniform vec2 uf_fragCoordScale; +void redcCUBE(vec4 src0, vec4 src1, out vec3 stm, out int faceId) +{ +// stm -> x .. s, y .. t, z .. MajorAxis*2.0 +vec3 inputCoord = normalize(vec3(src1.y, src1.x, src0.x)); +float rx = inputCoord.x; +float ry = inputCoord.y; +float rz = inputCoord.z; +if( abs(rx) > abs(ry) && abs(rx) > abs(rz) ) +{ +stm.z = rx*2.0; +stm.xy = vec2(ry,rz); +if( rx >= 0.0 ) +{ +faceId = 0; +} +else +{ +faceId = 1; +} +} +else if( abs(ry) > abs(rx) && abs(ry) > abs(rz) ) +{ +stm.z = ry*2.0; +stm.xy = vec2(rx,rz); +if( ry >= 0.0 ) +{ +faceId = 2; +} +else +{ +faceId = 3; +} +} +else //if( abs(rz) > abs(ry) && abs(rz) > abs(rx) ) +{ +stm.z = rz*2.0; +stm.xy = vec2(rx,ry); +if( rz >= 0.0 ) +{ +faceId = 4; +} +else +{ +faceId = 5; +} +} +} +vec3 redcCUBEReverse(vec2 st, int faceId) +{ +st.yx = st.xy; +vec3 v; +float majorAxis = 1.0; +if( faceId == 0 ) +{ +v.yz = (st-vec2(1.5))*(majorAxis*2.0); +v.x = 1.0; +} +else if( faceId == 1 ) +{ +v.yz = (st-vec2(1.5))*(majorAxis*2.0); +v.x = -1.0; +} +else if( faceId == 2 ) +{ +v.xz = (st-vec2(1.5))*(majorAxis*2.0); +v.y = 1.0; +} +else if( faceId == 3 ) +{ +v.xz = (st-vec2(1.5))*(majorAxis*2.0); +v.y = -1.0; +} +else if( faceId == 4 ) +{ +v.xy = (st-vec2(1.5))*(majorAxis*2.0); +v.z = 1.0; +} +else +{ +v.xy = (st-vec2(1.5))*(majorAxis*2.0); +v.z = -1.0; +} +return v; +} +int clampFI32(int v) +{ +if( v == 0x7FFFFFFF ) + return floatBitsToInt(1.0); +else if( v == 0xFFFFFFFF ) + return floatBitsToInt(0.0); +return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); +} +float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } +void main() +{ +ivec4 R0i = ivec4(0); +ivec4 R1i = ivec4(0); +ivec4 R2i = ivec4(0); +ivec4 R3i = ivec4(0); +ivec4 R4i = ivec4(0); +ivec4 R5i = ivec4(0); +ivec4 R6i = ivec4(0); +ivec4 R7i = ivec4(0); +ivec4 R8i = ivec4(0); +ivec4 R9i = ivec4(0); +ivec4 R10i = ivec4(0); +ivec4 R11i = ivec4(0); +ivec4 R12i = ivec4(0); +ivec4 R122i = ivec4(0); +ivec4 R123i = ivec4(0); +ivec4 R124i = ivec4(0); +ivec4 R125i = ivec4(0); +ivec4 R126i = ivec4(0); +ivec4 R127i = ivec4(0); +int backupReg0i, backupReg1i, backupReg2i, backupReg3i, backupReg4i; +ivec4 PV0i = ivec4(0), PV1i = ivec4(0); +int PS0i = 0, PS1i = 0; +ivec4 tempi = ivec4(0); +float tempResultf; +int tempResulti; +ivec4 ARi = ivec4(0); +bool predResult = true; +vec3 cubeMapSTM; +int cubeMapFaceId; +float cubeMapArrayIndex8 = 0.0; +R0i = floatBitsToInt(passParameterSem0); +R1i = floatBitsToInt(passParameterSem4); +R2i = floatBitsToInt(passParameterSem6); +R3i.w = floatBitsToInt(texture(textureUnitPS4, intBitsToFloat(R0i.xy)).x); +R6i.xyzw = floatBitsToInt(texture(textureUnitPS2, intBitsToFloat(R2i.zw)).xyzw); +R4i.xyzw = floatBitsToInt(textureGather(textureUnitPS6, intBitsToFloat(R0i.xy)).xyzw); +R5i.xyzw = floatBitsToInt(textureGather(textureUnitPS7, intBitsToFloat(R0i.xy)).xyzw); +R10i.xyzw = floatBitsToInt(texture(textureUnitPS1, intBitsToFloat(R2i.zw)).xyzw); +// 0 +R124i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.w),intBitsToFloat(uf_remappedPS[0].x)) + intBitsToFloat(uf_remappedPS[1].x))); +PV0i.x = R124i.x; +PV0i.y = floatBitsToInt(-(intBitsToFloat(R3i.w)) + intBitsToFloat(R4i.y)); +PV0i.z = floatBitsToInt(-(intBitsToFloat(R3i.w)) + intBitsToFloat(R4i.x)); +PV0i.w = floatBitsToInt(-(intBitsToFloat(R3i.w)) + intBitsToFloat(R4i.w)); +PS0i = floatBitsToInt(-(intBitsToFloat(R3i.w)) + intBitsToFloat(R4i.z)); +// 1 +R127i.x = floatBitsToInt(max(intBitsToFloat(PV0i.y), -(intBitsToFloat(PV0i.y)))); +PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(uf_remappedPS[2].y))); +R127i.z = floatBitsToInt(max(intBitsToFloat(PV0i.z), -(intBitsToFloat(PV0i.z)))); +R127i.w = floatBitsToInt(max(intBitsToFloat(PV0i.w), -(intBitsToFloat(PV0i.w)))); +R126i.x = floatBitsToInt(max(intBitsToFloat(PS0i), -(intBitsToFloat(PS0i)))); +PS1i = R126i.x; +// 2 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R6i.x),intBitsToFloat(R6i.y),intBitsToFloat(R6i.z),-0.0),vec4(intBitsToFloat(0x3eaaaaab),intBitsToFloat(0x3eaaaaab),intBitsToFloat(0x3eaaaaab),0.0))); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +PS0i = floatBitsToInt(1.0 / intBitsToFloat(PV1i.y)); +// 3 +PV1i.x = floatBitsToInt(-(intBitsToFloat(PV0i.x)) + intBitsToFloat(R5i.y)); +R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].x), intBitsToFloat(PS0i))); +PV1i.z = floatBitsToInt(-(intBitsToFloat(PV0i.x)) + intBitsToFloat(R5i.w)); +PV1i.w = floatBitsToInt(-(intBitsToFloat(PV0i.x)) + intBitsToFloat(R5i.x)); +PS1i = floatBitsToInt(-(intBitsToFloat(PV0i.x)) + intBitsToFloat(R5i.z)); +// 4 +PV0i.x = floatBitsToInt(max(intBitsToFloat(PV1i.x), -(intBitsToFloat(PV1i.x)))); +PV0i.x = floatBitsToInt(intBitsToFloat(PV0i.x) * 4.0); +PV0i.y = floatBitsToInt(max(intBitsToFloat(PV1i.w), -(intBitsToFloat(PV1i.w)))); +PV0i.y = floatBitsToInt(intBitsToFloat(PV0i.y) * 4.0); +PV0i.z = floatBitsToInt(max(intBitsToFloat(PV1i.z), -(intBitsToFloat(PV1i.z)))); +PV0i.z = floatBitsToInt(intBitsToFloat(PV0i.z) * 4.0); +PV0i.w = floatBitsToInt(max(intBitsToFloat(PS1i), -(intBitsToFloat(PS1i)))); +PV0i.w = floatBitsToInt(intBitsToFloat(PV0i.w) * 4.0); +R125i.x = floatBitsToInt(floor(intBitsToFloat(R1i.x))); +PS0i = R125i.x; +// 5 +backupReg0i = R127i.y; +backupReg0i = R127i.y; +backupReg0i = R127i.y; +R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.x),intBitsToFloat(R127i.y)) + intBitsToFloat(PV0i.x))); +PV1i.x = R123i.x; +R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(backupReg0i)) + intBitsToFloat(PV0i.y))); +R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.w),intBitsToFloat(backupReg0i)) + intBitsToFloat(PV0i.z))); +PV1i.z = R123i.z; +R127i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.x),intBitsToFloat(backupReg0i)) + intBitsToFloat(PV0i.w))); +PS1i = floatBitsToInt(floor(intBitsToFloat(R1i.y))); +// 6 +backupReg0i = R125i.x; +backupReg0i = R125i.x; +R125i.x = floatBitsToInt(intBitsToFloat(R1i.y) + -(intBitsToFloat(PS1i))); +PV0i.y = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + intBitsToFloat(PV1i.z)); +R127i.z = floatBitsToInt(intBitsToFloat(R1i.x) + -(intBitsToFloat(backupReg0i))); +R126i.w = floatBitsToInt(intBitsToFloat(backupReg0i) + -(0.5)); +R126i.y = floatBitsToInt(intBitsToFloat(PS1i) + -(0.5)); +PS0i = R126i.y; +// 7 +PV1i.x = floatBitsToInt(-(intBitsToFloat(R127i.w)) + intBitsToFloat(PV0i.y)); +PV1i.y = floatBitsToInt(intBitsToFloat(R6i.w) * intBitsToFloat(0x437f0000)); +R4i.z = floatBitsToInt(-(intBitsToFloat(R124i.x))); +PV1i.w = floatBitsToInt(-(intBitsToFloat(R127i.y)) + intBitsToFloat(PV0i.y)); +R5i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.z), -(intBitsToFloat(R124i.x)))); +PS1i = R5i.x; +// 8 +R4i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.w), -(intBitsToFloat(R124i.x)))); +PV0i.y = floatBitsToInt(intBitsToFloat(R127i.w) + intBitsToFloat(PV1i.w)); +PV0i.z = floatBitsToInt(intBitsToFloat(R127i.y) + intBitsToFloat(PV1i.x)); +R0i.w = floatBitsToInt((intBitsToFloat(R6i.x) * 2.0 + -(1.0))); +PS0i = int(intBitsToFloat(PV1i.y)); +// 9 +PV1i.x = floatBitsToInt(intBitsToFloat(PV0i.z) + intBitsToFloat(R127i.z)); +PV1i.x = clampFI32(PV1i.x); +R5i.y = floatBitsToInt((intBitsToFloat(R6i.y) * 2.0 + -(1.0))); +R5i.z = floatBitsToInt((intBitsToFloat(R6i.z) * 2.0 + -(1.0))); +PV1i.w = floatBitsToInt(intBitsToFloat(PV0i.y) + intBitsToFloat(R125i.x)); +PV1i.w = clampFI32(PV1i.w); +PS1i = PS0i & int(1); +// 10 +PV0i.x = floatBitsToInt(intBitsToFloat(PV1i.x) + intBitsToFloat(R126i.w)); +R123i.y = ((PS1i == 0)?(0):(0x3f800000)); +PV0i.y = R123i.y; +R2i.z = floatBitsToInt(-(intBitsToFloat(R6i.w)) + intBitsToFloat(0x3f400000)); +PV0i.w = floatBitsToInt(intBitsToFloat(PV1i.w) + intBitsToFloat(R126i.y)); +R0i.z = floatBitsToInt(roundEven(0.0)); +PS0i = R0i.z; +// 11 +R0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.z), intBitsToFloat(PV0i.x))); +R0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.w), intBitsToFloat(PV0i.w))); +R1i.z = floatBitsToInt((intBitsToFloat(0x3ecccccd) * intBitsToFloat(PV0i.y) + intBitsToFloat(0x3dcccccd))); +R1i.w = floatBitsToInt(intBitsToFloat(R10i.w) * intBitsToFloat(0x437f0000)); +R5i.w = 0; +PS1i = R5i.w; +R11i.xyzw = floatBitsToInt(texture(textureUnitPS11, intBitsToFloat(R0i.xy)).xyzw); +R9i.xyz = floatBitsToInt(texture(textureUnitPS10, vec3(intBitsToFloat(R0i.x),intBitsToFloat(R0i.y),intBitsToFloat(R0i.z))).xyz); +R12i.xyz = floatBitsToInt(texture(textureUnitPS13, intBitsToFloat(R0i.xy)).xyz); +// 0 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R5i.x),intBitsToFloat(R4i.x),intBitsToFloat(R4i.z),-0.0),vec4(intBitsToFloat(R5i.x),intBitsToFloat(R4i.x),intBitsToFloat(R4i.z),0.0))); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +R127i.z = floatBitsToInt((intBitsToFloat(R11i.w) * 2.0 + -(1.0))); +R127i.z = clampFI32(R127i.z); +PS0i = R127i.z; +// 1 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R0i.w),intBitsToFloat(R5i.y),intBitsToFloat(R5i.z),-0.0),vec4(intBitsToFloat(R0i.w),intBitsToFloat(R5i.y),intBitsToFloat(R5i.z),0.0))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R126i.z = floatBitsToInt(sqrt(intBitsToFloat(PV0i.x))); +PS1i = R126i.z; +// 2 +R125i.x = R11i.w; +R125i.x = floatBitsToInt(intBitsToFloat(R125i.x) * 2.0); +PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[3].x), intBitsToFloat(R127i.z))); +R0i.z = floatBitsToInt((intBitsToFloat(R11i.y) * 0.5 + 0.5)); +R3i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R11i.x), intBitsToFloat(uf_remappedPS[4].x))); +tempResultf = 1.0 / sqrt(intBitsToFloat(PV1i.x)); +PS0i = floatBitsToInt(tempResultf); +// 3 +R0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.w), intBitsToFloat(PS0i))); +R124i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.y), intBitsToFloat(PS0i))); +R124i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.z), intBitsToFloat(PS0i))); +R126i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(R1i.z))); +PS1i = floatBitsToInt(1.0 / intBitsToFloat(R126i.z)); +// 4 +R124i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.x), intBitsToFloat(PS1i))); +PV0i.x = R124i.x; +R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.x), intBitsToFloat(PS1i))); +PV0i.y = R127i.y; +R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.z), intBitsToFloat(PS1i))); +PV0i.z = R127i.z; +PV0i.w = R125i.x; +PV0i.w = clampFI32(PV0i.w); +R4i.w = int(intBitsToFloat(R1i.w)); +PS0i = R4i.w; +// 5 +R125i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),intBitsToFloat(R126i.w)) + intBitsToFloat(R0i.x))); +PV1i.x = R125i.x; +R126i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.y),intBitsToFloat(R126i.w)) + intBitsToFloat(R124i.y))); +PV1i.y = R126i.y; +R126i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.z),intBitsToFloat(R126i.w)) + intBitsToFloat(R124i.z))); +PV1i.z = R126i.z; +R127i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.z),intBitsToFloat(PV0i.w)) + intBitsToFloat(R6i.w))); +PV1i.w = R127i.w; +R127i.x = floatBitsToInt(intBitsToFloat(PV0i.x) + intBitsToFloat(uf_remappedPS[5].x)); +PS1i = R127i.x; +// 6 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),-0.0),vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),0.0))); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +R7i.w = floatBitsToInt((-(intBitsToFloat(PV1i.w)) * intBitsToFloat(0x40400000) + intBitsToFloat(0x40400000))); +PS0i = R7i.w; +// 7 +R126i.x = floatBitsToInt(-(intBitsToFloat(R127i.w)) + 1.0); +R125i.y = floatBitsToInt(intBitsToFloat(R127i.y) + intBitsToFloat(uf_remappedPS[5].y)); +R125i.z = floatBitsToInt(intBitsToFloat(R127i.z) + intBitsToFloat(uf_remappedPS[5].z)); +R126i.w = R4i.w & 0x000000fc; +tempResultf = 1.0 / sqrt(intBitsToFloat(PV0i.x)); +PS1i = floatBitsToInt(tempResultf); +// 8 +backupReg0i = R125i.x; +R125i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PS1i))); +PV0i.x = R125i.x; +R5i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(PS1i))); +PV0i.y = R5i.y; +R2i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.z), intBitsToFloat(PS1i))); +PV0i.z = R2i.z; +R125i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[5].x), intBitsToFloat(uf_remappedPS[3].w))); +R6i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[5].y), intBitsToFloat(uf_remappedPS[3].w))); +PS0i = R6i.y; +// 9 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R124i.x),intBitsToFloat(R127i.y),intBitsToFloat(R127i.z),-0.0),vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),0.0))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R126i.y = tempi.x; +PS1i = PV0i.x; +PS1i = floatBitsToInt(intBitsToFloat(PS1i) * 2.0); +// 10 +R6i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV1i.x)),intBitsToFloat(PS1i)) + intBitsToFloat(R124i.x))); +PV0i.y = R5i.y; +PV0i.y = floatBitsToInt(intBitsToFloat(PV0i.y) * 2.0); +PV0i.z = floatBitsToInt(max(-(intBitsToFloat(PV1i.x)), 0.0)); +PV0i.w = R2i.z; +PV0i.w = floatBitsToInt(intBitsToFloat(PV0i.w) * 2.0); +R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[5].z), intBitsToFloat(uf_remappedPS[3].w))); +PS0i = R126i.z; +// 11 +R123i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R127i.w)),intBitsToFloat(R126i.x)) + intBitsToFloat(R126i.x))); +PV1i.x = R123i.x; +R0i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R126i.y)),intBitsToFloat(PV0i.y)) + intBitsToFloat(R127i.y))); +R6i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R126i.y)),intBitsToFloat(PV0i.w)) + intBitsToFloat(R127i.z))); +R124i.w = floatBitsToInt(min(intBitsToFloat(PV0i.z), 1.0)); +R127i.y = floatBitsToInt(float(R126i.w)); +PS1i = R127i.y; +// 12 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R127i.x),intBitsToFloat(R125i.y),intBitsToFloat(R125i.z),-0.0),vec4(intBitsToFloat(R127i.x),intBitsToFloat(R125i.y),intBitsToFloat(R125i.z),0.0))); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +PS0i = floatBitsToInt(intBitsToFloat(PV1i.x) + intBitsToFloat(0x3c23d70a)); +PS0i = clampFI32(PS0i); +// 13 +R1i.x = floatBitsToInt(intBitsToFloat(R127i.y) * intBitsToFloat(0x3b820821)); +PV1i.y = floatBitsToInt(-(intBitsToFloat(R124i.w)) + 1.0); +R8i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS0i), intBitsToFloat(PS0i))); +R126i.w = R4i.w & 0x00000002; +tempResultf = 1.0 / sqrt(intBitsToFloat(PV0i.x)); +PS1i = floatBitsToInt(tempResultf); +// 14 +backupReg0i = R125i.y; +PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.z), intBitsToFloat(PS1i))); +R125i.y = floatBitsToInt((intBitsToFloat(R126i.x) * 0.5 + 0.5)); +PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PS1i))); +PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(PS1i))); +R126i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R124i.w)),intBitsToFloat(PV1i.y)) + intBitsToFloat(PV1i.y))); +PS0i = R126i.x; +// 15 +R127i.x = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(PV0i.w)), intBitsToFloat(uf_remappedPS[3].w))); +PV1i.x = R127i.x; +R127i.y = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(PV0i.z)), intBitsToFloat(uf_remappedPS[3].w))); +PV1i.y = R127i.y; +R125i.z = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(PV0i.x)), intBitsToFloat(uf_remappedPS[3].w))); +PV1i.z = R125i.z; +R1i.w = floatBitsToInt((intBitsToFloat(R1i.x) * 0.25 + 0.25)); +R3i.z = floatBitsToInt(float(R126i.w)); +R3i.z = floatBitsToInt(intBitsToFloat(R3i.z) / 2.0); +PS1i = R3i.z; +// 16 +tempi.x = floatBitsToInt(dot(vec4(-(intBitsToFloat(R125i.w)),-(intBitsToFloat(R6i.y)),-(intBitsToFloat(R126i.z)),-0.0),vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),0.0))); +tempi.x = clampFI32(tempi.x); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +R6i.w = tempi.x; +R5i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.y), intBitsToFloat(R125i.y))); +R5i.x = floatBitsToInt(intBitsToFloat(R5i.x) / 2.0); +PS0i = R5i.x; +// 17 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R127i.x),intBitsToFloat(R127i.y),intBitsToFloat(R125i.z),-0.0),vec4(intBitsToFloat(R125i.x),intBitsToFloat(R5i.y),intBitsToFloat(R2i.z),0.0))); +tempi.x = clampFI32(tempi.x); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R127i.y = floatBitsToInt(-(intBitsToFloat(PV0i.x)) + 1.0); +PS1i = R127i.y; +// 18 +backupReg0i = R0i.x; +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(R124i.y),intBitsToFloat(R124i.z),intBitsToFloat(R124i.z)),vec4(-(intBitsToFloat(R125i.w)),-(intBitsToFloat(R6i.y)),-(intBitsToFloat(R126i.z)),-(intBitsToFloat(R5i.w))))); +tempi.x = clampFI32(tempi.x); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +R5i.z = tempi.x; +PS0i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(PV1i.x))); +// 19 +R4i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R6i.w)),intBitsToFloat(R127i.y)) + intBitsToFloat(R127i.y))); +R2i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R11i.x), intBitsToFloat(PV0i.x))); +PV1i.y = R2i.y; +R4i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.z),intBitsToFloat(PS0i)) + -(intBitsToFloat(PS0i)))); +PV1i.z = R4i.z; +R123i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R124i.w)),intBitsToFloat(R126i.x)) + intBitsToFloat(R126i.x))); +PV1i.w = R123i.w; +R1i.y = floatBitsToInt((-(intBitsToFloat(R127i.w)) * intBitsToFloat(0x40400000) + 4.0)); +PS1i = R1i.y; +// 20 +R0i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R11i.y),-(intBitsToFloat(R1i.w))) + intBitsToFloat(R11i.y))); +R4i.y = floatBitsToInt(intBitsToFloat(R3i.z) * intBitsToFloat(0x3e19999a)); +R1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.x), intBitsToFloat(PV1i.w))); +R5i.w = floatBitsToInt(-(intBitsToFloat(PV1i.y)) + 1.0); +R3i.y = floatBitsToInt(intBitsToFloat(PV1i.z) + 1.0); +PS0i = R3i.y; +// 21 +backupReg0i = R2i.z; +tempi.x = floatBitsToInt(dot(vec4(-(intBitsToFloat(R125i.w)),-(intBitsToFloat(R6i.y)),-(intBitsToFloat(R126i.z)),-0.0),vec4(intBitsToFloat(R125i.x),intBitsToFloat(R5i.y),intBitsToFloat(backupReg0i),0.0))); +tempi.x = clampFI32(tempi.x); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R2i.z = tempi.x; +R0i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.w),-(intBitsToFloat(R5i.x))) + intBitsToFloat(R124i.w))); +PS1i = R0i.w; +// 0 +backupReg0i = R0i.y; +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(uf_remappedPS[6].x),intBitsToFloat(uf_remappedPS[6].y),intBitsToFloat(uf_remappedPS[6].z),-0.0),vec4(intBitsToFloat(R6i.x),intBitsToFloat(backupReg0i),intBitsToFloat(R6i.z),0.0))); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +R124i.w = floatBitsToInt((-(intBitsToFloat(R1i.x)) * intBitsToFloat(0x3d23d70a) + intBitsToFloat(0x3d23d70a))); +PS0i = R124i.w; +// 1 +backupReg0i = R0i.y; +R126i.x = floatBitsToInt(dot(vec4(intBitsToFloat(uf_remappedPS[7].x),intBitsToFloat(uf_remappedPS[7].y),intBitsToFloat(uf_remappedPS[7].z),-0.0),vec4(intBitsToFloat(R6i.x),intBitsToFloat(backupReg0i),intBitsToFloat(R6i.z),0.0))); +PV1i.x = R126i.x; +PV1i.y = R126i.x; +PV1i.z = R126i.x; +PV1i.w = R126i.x; +R126i.z = floatBitsToInt(-(intBitsToFloat(PV0i.x))); +PS1i = R126i.z; +// 2 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(uf_remappedPS[8].x),intBitsToFloat(uf_remappedPS[8].y),intBitsToFloat(uf_remappedPS[8].z),-0.0),vec4(intBitsToFloat(R6i.x),intBitsToFloat(R0i.y),intBitsToFloat(R6i.z),0.0))); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +R126i.y = tempi.x; +R125i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R6i.w)),intBitsToFloat(R4i.x)) + intBitsToFloat(R4i.x))); +PS0i = R125i.w; +// 3 +backupReg0i = R126i.x; +backupReg0i = R126i.x; +backupReg1i = R126i.z; +backupReg1i = R126i.z; +redcCUBE(vec4(intBitsToFloat(R126i.z),intBitsToFloat(R126i.z),intBitsToFloat(backupReg0i),intBitsToFloat(PV0i.x)),vec4(intBitsToFloat(PV0i.x),intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),intBitsToFloat(backupReg1i)),cubeMapSTM,cubeMapFaceId); +R126i.x = floatBitsToInt(cubeMapSTM.x); +R126i.y = floatBitsToInt(cubeMapSTM.y); +R126i.z = floatBitsToInt(cubeMapSTM.z); +R126i.w = cubeMapFaceId; +PV1i.x = R126i.x; +PV1i.y = R126i.y; +PV1i.z = R126i.z; +PV1i.w = R126i.w; +R125i.x = floatBitsToInt(1.0 / intBitsToFloat(R1i.y)); +PS1i = R125i.x; +// 4 +backupReg0i = R0i.x; +R0i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.w),intBitsToFloat(R4i.y)) + intBitsToFloat(R2i.y))); +R2i.y = floatBitsToInt(intBitsToFloat(R1i.w) + intBitsToFloat(backupReg0i)); +R7i.z = PV1i.w; +R1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.x), intBitsToFloat(R125i.w))); +PS0i = floatBitsToInt(1.0 / abs(intBitsToFloat(PV1i.z))); +// 5 +R6i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.z),intBitsToFloat(R3i.y)) + intBitsToFloat(R3i.y))); +R3i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.z), intBitsToFloat(R125i.x))); +R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.x),intBitsToFloat(PS0i)) + 1.5)); +PV1i.z = R123i.z; +R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.y),intBitsToFloat(PS0i)) + 1.5)); +PV1i.w = R123i.w; +R1i.z = floatBitsToInt(intBitsToFloat(R5i.x) + intBitsToFloat(R0i.w)); +PS1i = R1i.z; +// 6 +backupReg0i = R0i.z; +R7i.x = PV1i.w; +R7i.y = PV1i.z; +R0i.z = floatBitsToInt(intBitsToFloat(R5i.z) + intBitsToFloat(backupReg0i)); +R0i.z = clampFI32(R0i.z); +R0i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R10i.x),intBitsToFloat(R1i.x)) + intBitsToFloat(R124i.w))); +R4i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.z),-(intBitsToFloat(R5i.x))) + intBitsToFloat(R2i.z))); +PS0i = R4i.x; +R7i.xyz = floatBitsToInt(textureLod(textureUnitPS8, vec4(redcCUBEReverse(intBitsToFloat(R7i.xy),R7i.z),cubeMapArrayIndex8),intBitsToFloat(R7i.w)).xyz); +// 0 +R125i.x = floatBitsToInt(intBitsToFloat(R5i.x) + intBitsToFloat(R4i.x)); +R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.w),-(intBitsToFloat(R3i.z))) + intBitsToFloat(R3i.w))); +PV0i.y = R123i.y; +R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.y),-(intBitsToFloat(R3i.z))) + intBitsToFloat(R2i.y))); +PV0i.z = R123i.z; +R124i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.x), intBitsToFloat(R0i.z))); +R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[3].w), intBitsToFloat(uf_remappedPS[3].w))); +PS0i = R126i.x; +// 1 +R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R0i.w),-(intBitsToFloat(R3i.y))) + intBitsToFloat(R0i.w))); +PV1i.x = R123i.x; +R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(R2i.z))); +R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R0i.w),-(intBitsToFloat(R1i.w))) + intBitsToFloat(R0i.w))); +PV1i.z = R123i.z; +R126i.w = floatBitsToInt(intBitsToFloat(PV0i.z) * intBitsToFloat(0x3f400000)); +PS1i = floatBitsToInt(1.0 / intBitsToFloat(R6i.x)); +// 2 +backupReg0i = R126i.x; +backupReg0i = R126i.x; +R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(backupReg0i))); +R127i.y = floatBitsToInt(intBitsToFloat(R1i.w) + intBitsToFloat(PV1i.z)); +R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.z), intBitsToFloat(PS1i))); +R125i.w = floatBitsToInt(intBitsToFloat(R3i.y) + intBitsToFloat(PV1i.x)); +PS0i = floatBitsToInt(1.0 / intBitsToFloat(R1i.z)); +// 3 +backupReg0i = R124i.w; +R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[9].x),intBitsToFloat(R124i.w)) + intBitsToFloat(R9i.x))); +PV1i.x = R123i.x; +R124i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[9].y),intBitsToFloat(R124i.w)) + intBitsToFloat(R9i.y))); +PV1i.z = floatBitsToInt(0.25 * intBitsToFloat(PS0i)); +R124i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[9].z),intBitsToFloat(backupReg0i)) + intBitsToFloat(R9i.z))); +PS1i = floatBitsToInt(1.0 / intBitsToFloat(R125i.x)); +// 4 +backupReg0i = R126i.x; +backupReg1i = R125i.w; +R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), intBitsToFloat(PV1i.z))); +R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS1i), intBitsToFloat(R126i.z))); +R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(backupReg0i))); +R125i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.w), intBitsToFloat(backupReg1i))); +R126i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R1i.x)),intBitsToFloat(PV1i.x)) + intBitsToFloat(PV1i.x))); +PS0i = R126i.w; +// 5 +R123i.x = floatBitsToInt((intBitsToFloat(R10i.x) * intBitsToFloat(0x3f895ef0) + intBitsToFloat(0xba0a8ec8))); +R123i.x = clampFI32(R123i.x); +PV1i.x = R123i.x; +R123i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R1i.x)),intBitsToFloat(R124i.w)) + intBitsToFloat(R124i.w))); +PV1i.y = R123i.y; +R123i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R1i.x)),intBitsToFloat(R124i.y)) + intBitsToFloat(R124i.y))); +PV1i.z = R123i.z; +R123i.w = floatBitsToInt((intBitsToFloat(R10i.y) * intBitsToFloat(0x3f895ef0) + intBitsToFloat(0xba0a8ec8))); +R123i.w = clampFI32(R123i.w); +PV1i.w = R123i.w; +R122i.x = floatBitsToInt((intBitsToFloat(R10i.z) * intBitsToFloat(0x3f895ef0) + intBitsToFloat(0xba0a8ec8))); +R122i.x = clampFI32(R122i.x); +PS1i = R122i.x; +// 6 +R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.z), intBitsToFloat(R127i.y))); +R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.w), intBitsToFloat(PV1i.x))); +R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.z), intBitsToFloat(PV1i.w))); +R126i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.y), intBitsToFloat(PS1i))); +R125i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[9].x), intBitsToFloat(R126i.x))); +PS0i = R125i.x; +// 7 +PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R7i.x), intBitsToFloat(R125i.w))); +PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R7i.y), intBitsToFloat(R125i.w))); +PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[9].z), intBitsToFloat(R126i.x))); +PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[9].y), intBitsToFloat(R126i.x))); +PS1i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R7i.z), intBitsToFloat(R125i.w))); +// 8 +backupReg0i = R127i.x; +backupReg0i = R127i.x; +backupReg0i = R127i.x; +R127i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.w),intBitsToFloat(backupReg0i)) + intBitsToFloat(PV1i.y))); +R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.x),intBitsToFloat(backupReg0i)) + intBitsToFloat(PV1i.x))); +PV0i.y = R123i.y; +PV0i.z = R4i.w & int(1); +R125i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.z),intBitsToFloat(backupReg0i)) + intBitsToFloat(PS1i))); +R122i.x = floatBitsToInt((intBitsToFloat(R127i.y) * intBitsToFloat(0x3f6e896b) + intBitsToFloat(0x3a011b1e))); +PS0i = R122i.x; +// 9 +R123i.x = floatBitsToInt((intBitsToFloat(R126i.w) * intBitsToFloat(0x3f6e896b) + intBitsToFloat(0x3a011b1e))); +PV1i.x = R123i.x; +R123i.y = floatBitsToInt((intBitsToFloat(R126i.z) * intBitsToFloat(0x3f6e896b) + intBitsToFloat(0x3a011b1e))); +PV1i.y = R123i.y; +PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R11i.z), intBitsToFloat(R11i.z))); +PV1i.w = floatBitsToInt(intBitsToFloat(PV0i.y) + intBitsToFloat(PS0i)); +PS1i = floatBitsToInt(float(PV0i.z)); +// 10 +R4i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R11i.z),intBitsToFloat(PV1i.w)) + intBitsToFloat(R12i.x))); +PV0i.y = floatBitsToInt(intBitsToFloat(R125i.w) + intBitsToFloat(PV1i.x)); +PV0i.z = floatBitsToInt(intBitsToFloat(R127i.x) + intBitsToFloat(PV1i.y)); +R4i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS1i), intBitsToFloat(PV1i.z))); +// 11 +R4i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R11i.z),intBitsToFloat(PV0i.z)) + intBitsToFloat(R12i.y))); +R4i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R11i.z),intBitsToFloat(PV0i.y)) + intBitsToFloat(R12i.z))); +// export +passPixelColor0 = vec4(intBitsToFloat(R4i.x), intBitsToFloat(R4i.y), intBitsToFloat(R4i.z), intBitsToFloat(R4i.w)); +float luma = dot(passPixelColor0.rgb, vec3(0.2126, 0.7152, 0.0722)); +#if (ENABLE_COLOR_FADE == 1) +float depth = texture(textureUnitPS4, passParameterSem0.xy).x; +float factor = smoothstep(0.0005, 0.00075, depth); +passPixelColor0.rgb = mix(passPixelColor0.rgb, vec3(luma), factor); +#else +passPixelColor0.rgb = vec3(luma); +#endif +} diff --git a/Modifications/BreathOfTheWild_Monochromia/49ce4bf04a654e80_00000003c9249749_ps.txt b/Modifications/BreathOfTheWild_Monochromia/49ce4bf04a654e80_00000003c9249749_ps.txt new file mode 100644 index 00000000..e6b7a496 --- /dev/null +++ b/Modifications/BreathOfTheWild_Monochromia/49ce4bf04a654e80_00000003c9249749_ps.txt @@ -0,0 +1,668 @@ +#version 420 +#extension GL_ARB_texture_gather : enable +// shader 49ce4bf04a654e80 +// Monochromia +// Shrine interiors +// original shader dumped using cemu 1.11.c, BotW 1.3.1 +#define ENABLE_COLOR_FADE 0 // set this to 1 to enable, 0 to disable the effect + +uniform ivec4 uf_remappedPS[10]; +layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0xf45c6000 res 1280x720x1 dim 1 tm: 4 format 041a compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 2) uniform sampler2D textureUnitPS2;// Tex2 addr 0xf513a800 res 320x180x1 dim 1 tm: 4 format 001a compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler2 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 3) uniform sampler2D textureUnitPS3;// Tex3 addr 0xf494a800 res 1280x720x1 dim 1 tm: 4 format 001a compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler3 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 5) uniform sampler2D textureUnitPS5;// Tex5 addr 0xf4e91800 res 1280x720x1 dim 1 tm: 4 format 0806 compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler5 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 7) uniform sampler2D textureUnitPS7;// Tex7 addr 0xf5054000 res 640x360x1 dim 1 tm: 4 format 080e compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler7 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 8) uniform sampler2D textureUnitPS8;// Tex8 addr 0xf5846000 res 640x360x1 dim 1 tm: 4 format 0001 compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler8 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 9) uniform samplerCubeArray textureUnitPS9;// Tex9 addr 0x3db66800 res 64x64x1 dim 3 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x4) sliceView: 0x0 (num 0x6) Sampler9 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 11) uniform sampler2DArray textureUnitPS11;// Tex11 addr 0xf5593000 res 640x360x2 dim 5 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x2) Sampler11 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 12) uniform sampler2D textureUnitPS12;// Tex12 addr 0xf575f800 res 640x360x1 dim 1 tm: 4 format 001a compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler12 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 14) uniform sampler2D textureUnitPS14;// Tex14 addr 0xf5977800 res 640x360x1 dim 1 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler14 ClampX/Y/Z: 2 2 2 border: 1 +layout(location = 0) in vec4 passParameterSem0; +layout(location = 1) in vec4 passParameterSem1; +layout(location = 2) in vec4 passParameterSem3; +layout(location = 3) in vec4 passParameterSem4; +layout(location = 4) in vec4 passParameterSem6; +layout(location = 0) out vec4 passPixelColor0; +uniform vec2 uf_fragCoordScale; +void redcCUBE(vec4 src0, vec4 src1, out vec3 stm, out int faceId) +{ +// stm -> x .. s, y .. t, z .. MajorAxis*2.0 +vec3 inputCoord = normalize(vec3(src1.y, src1.x, src0.x)); +float rx = inputCoord.x; +float ry = inputCoord.y; +float rz = inputCoord.z; +if( abs(rx) > abs(ry) && abs(rx) > abs(rz) ) +{ +stm.z = rx*2.0; +stm.xy = vec2(ry,rz); +if( rx >= 0.0 ) +{ +faceId = 0; +} +else +{ +faceId = 1; +} +} +else if( abs(ry) > abs(rx) && abs(ry) > abs(rz) ) +{ +stm.z = ry*2.0; +stm.xy = vec2(rx,rz); +if( ry >= 0.0 ) +{ +faceId = 2; +} +else +{ +faceId = 3; +} +} +else //if( abs(rz) > abs(ry) && abs(rz) > abs(rx) ) +{ +stm.z = rz*2.0; +stm.xy = vec2(rx,ry); +if( rz >= 0.0 ) +{ +faceId = 4; +} +else +{ +faceId = 5; +} +} +} +vec3 redcCUBEReverse(vec2 st, int faceId) +{ +st.yx = st.xy; +vec3 v; +float majorAxis = 1.0; +if( faceId == 0 ) +{ +v.yz = (st-vec2(1.5))*(majorAxis*2.0); +v.x = 1.0; +} +else if( faceId == 1 ) +{ +v.yz = (st-vec2(1.5))*(majorAxis*2.0); +v.x = -1.0; +} +else if( faceId == 2 ) +{ +v.xz = (st-vec2(1.5))*(majorAxis*2.0); +v.y = 1.0; +} +else if( faceId == 3 ) +{ +v.xz = (st-vec2(1.5))*(majorAxis*2.0); +v.y = -1.0; +} +else if( faceId == 4 ) +{ +v.xy = (st-vec2(1.5))*(majorAxis*2.0); +v.z = 1.0; +} +else +{ +v.xy = (st-vec2(1.5))*(majorAxis*2.0); +v.z = -1.0; +} +return v; +} +int clampFI32(int v) +{ +if( v == 0x7FFFFFFF ) + return floatBitsToInt(1.0); +else if( v == 0xFFFFFFFF ) + return floatBitsToInt(0.0); +return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); +} +float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } +void main() +{ +ivec4 R0i = ivec4(0); +ivec4 R1i = ivec4(0); +ivec4 R2i = ivec4(0); +ivec4 R3i = ivec4(0); +ivec4 R4i = ivec4(0); +ivec4 R5i = ivec4(0); +ivec4 R6i = ivec4(0); +ivec4 R7i = ivec4(0); +ivec4 R8i = ivec4(0); +ivec4 R9i = ivec4(0); +ivec4 R10i = ivec4(0); +ivec4 R11i = ivec4(0); +ivec4 R12i = ivec4(0); +ivec4 R13i = ivec4(0); +ivec4 R123i = ivec4(0); +ivec4 R124i = ivec4(0); +ivec4 R125i = ivec4(0); +ivec4 R126i = ivec4(0); +ivec4 R127i = ivec4(0); +int backupReg0i, backupReg1i, backupReg2i, backupReg3i, backupReg4i; +ivec4 PV0i = ivec4(0), PV1i = ivec4(0); +int PS0i = 0, PS1i = 0; +ivec4 tempi = ivec4(0); +float tempResultf; +int tempResulti; +ivec4 ARi = ivec4(0); +bool predResult = true; +vec3 cubeMapSTM; +int cubeMapFaceId; +float cubeMapArrayIndex9 = 0.0; +R0i = floatBitsToInt(passParameterSem0); +R1i = floatBitsToInt(passParameterSem1); +R2i = floatBitsToInt(passParameterSem3); +R3i = floatBitsToInt(passParameterSem4); +R4i = floatBitsToInt(passParameterSem6); +R7i.xyzw = floatBitsToInt(texture(textureUnitPS3, intBitsToFloat(R4i.zw)).xyzw); +R2i.w = floatBitsToInt(texture(textureUnitPS5, intBitsToFloat(R0i.xy)).x); +R5i.xyzw = floatBitsToInt(textureGather(textureUnitPS7, intBitsToFloat(R0i.xy)).xyzw); +R6i.xyzw = floatBitsToInt(textureGather(textureUnitPS8, intBitsToFloat(R0i.xy)).xyzw); +R4i.xyzw = floatBitsToInt(texture(textureUnitPS1, intBitsToFloat(R4i.zw)).xyzw); +// 0 +R127i.x = floatBitsToInt((intBitsToFloat(R7i.x) * 2.0 + -(1.0))); +PV0i.x = R127i.x; +R127i.y = floatBitsToInt((intBitsToFloat(R7i.y) * 2.0 + -(1.0))); +PV0i.y = R127i.y; +R124i.z = floatBitsToInt((intBitsToFloat(R7i.z) * 2.0 + -(1.0))); +PV0i.z = R124i.z; +R127i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.w),intBitsToFloat(uf_remappedPS[0].x)) + intBitsToFloat(uf_remappedPS[1].x))); +PV0i.w = R127i.w; +R126i.w = floatBitsToInt(-(intBitsToFloat(R2i.w)) + intBitsToFloat(R5i.y)); +PS0i = R126i.w; +// 1 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),-0.0),vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),0.0))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R8i.z = floatBitsToInt(-(intBitsToFloat(PV0i.w))); +PS1i = R8i.z; +// 2 +R10i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.z), -(intBitsToFloat(R127i.w)))); +R9i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.w), -(intBitsToFloat(R127i.w)))); +R125i.z = floatBitsToInt(-(intBitsToFloat(R2i.w)) + intBitsToFloat(R5i.x)); +PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.w), intBitsToFloat(uf_remappedPS[2].y))); +tempResultf = 1.0 / sqrt(intBitsToFloat(PV1i.x)); +R125i.x = floatBitsToInt(tempResultf); +PS0i = R125i.x; +// 3 +R5i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(PS0i))); +PV1i.x = R5i.x; +R5i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), intBitsToFloat(PS0i))); +R127i.z = floatBitsToInt(-(intBitsToFloat(R2i.w)) + intBitsToFloat(R5i.w)); +R127i.w = floatBitsToInt(-(intBitsToFloat(R2i.w)) + intBitsToFloat(R5i.z)); +R126i.z = floatBitsToInt(1.0 / intBitsToFloat(PV0i.w)); +PS1i = R126i.z; +// 4 +backupReg0i = R0i.x; +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R10i.x),intBitsToFloat(R9i.y),intBitsToFloat(R8i.z),-0.0),vec4(intBitsToFloat(R10i.x),intBitsToFloat(R9i.y),intBitsToFloat(R8i.z),0.0))); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +R8i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.x),intBitsToFloat(PV1i.x)) + intBitsToFloat(backupReg0i))); +PS0i = R8i.x; +// 5 +backupReg0i = R126i.w; +backupReg0i = R126i.w; +R127i.x = floatBitsToInt(max(intBitsToFloat(R127i.z), -(intBitsToFloat(R127i.z)))); +R8i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.y),intBitsToFloat(R5i.y)) + intBitsToFloat(R0i.y))); +R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].x), intBitsToFloat(R126i.z))); +R126i.w = floatBitsToInt(max(intBitsToFloat(backupReg0i), -(intBitsToFloat(backupReg0i)))); +PS1i = floatBitsToInt(sqrt(intBitsToFloat(PV0i.x))); +// 6 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R7i.x),intBitsToFloat(R7i.y),intBitsToFloat(R7i.z),-0.0),vec4(intBitsToFloat(0x3eaaaaab),intBitsToFloat(0x3eaaaaab),intBitsToFloat(0x3eaaaaab),0.0))); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +R127i.y = tempi.x; +PS0i = floatBitsToInt(1.0 / intBitsToFloat(PS1i)); +// 7 +PV1i.x = floatBitsToInt(-(intBitsToFloat(PV0i.x)) + intBitsToFloat(R6i.w)); +R10i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R10i.x), intBitsToFloat(PS0i))); +PV1i.z = floatBitsToInt(-(intBitsToFloat(PV0i.x)) + intBitsToFloat(R6i.y)); +R2i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R9i.y), intBitsToFloat(PS0i))); +R9i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.z), intBitsToFloat(PS0i))); +PS1i = R9i.z; +// 8 +PV0i.x = floatBitsToInt(max(intBitsToFloat(PV1i.x), -(intBitsToFloat(PV1i.x)))); +PV0i.x = floatBitsToInt(intBitsToFloat(PV0i.x) * 4.0); +PV0i.y = floatBitsToInt(-(intBitsToFloat(R127i.y)) + intBitsToFloat(R6i.z)); +PV0i.z = floatBitsToInt(max(intBitsToFloat(PV1i.z), -(intBitsToFloat(PV1i.z)))); +PV0i.z = floatBitsToInt(intBitsToFloat(PV0i.z) * 4.0); +PV0i.w = floatBitsToInt(-(intBitsToFloat(R127i.y)) + intBitsToFloat(R6i.x)); +R126i.x = floatBitsToInt(max(intBitsToFloat(R125i.z), -(intBitsToFloat(R125i.z)))); +PS0i = R126i.x; +// 9 +R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.x),intBitsToFloat(R127i.z)) + intBitsToFloat(PV0i.x))); +PV1i.x = R123i.x; +PV1i.y = floatBitsToInt(max(intBitsToFloat(R127i.w), -(intBitsToFloat(R127i.w)))); +R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.w),intBitsToFloat(R127i.z)) + intBitsToFloat(PV0i.z))); +PV1i.z = R123i.z; +PV1i.w = floatBitsToInt(max(intBitsToFloat(PV0i.w), -(intBitsToFloat(PV0i.w)))); +PV1i.w = floatBitsToInt(intBitsToFloat(PV1i.w) * 4.0); +PS1i = floatBitsToInt(max(intBitsToFloat(PV0i.y), -(intBitsToFloat(PV0i.y)))); +PS1i = floatBitsToInt(intBitsToFloat(PS1i) * 4.0); +// 10 +backupReg0i = R126i.x; +R126i.x = floatBitsToInt(-(intBitsToFloat(PV1i.z)) + intBitsToFloat(PV1i.x)); +PV0i.x = R126i.x; +R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.y),intBitsToFloat(R127i.z)) + intBitsToFloat(PS1i))); +PV0i.y = R127i.y; +R6i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.z), intBitsToFloat(R125i.x))); +PV0i.z = R6i.z; +R127i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(R127i.z)) + intBitsToFloat(PV1i.w))); +R127i.z = floatBitsToInt(floor(intBitsToFloat(R3i.x))); +PS0i = R127i.z; +// 11 +R125i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R5i.x),intBitsToFloat(R5i.y),intBitsToFloat(PV0i.z),-0.0),vec4(intBitsToFloat(R10i.y),intBitsToFloat(R2i.w),intBitsToFloat(R9i.z),0.0))); +PV1i.x = R125i.x; +PV1i.y = R125i.x; +PV1i.z = R125i.x; +PV1i.w = R125i.x; +PS1i = floatBitsToInt(-(intBitsToFloat(PV0i.y)) + intBitsToFloat(PV0i.x)); +// 12 +PV0i.x = floatBitsToInt(floor(intBitsToFloat(R3i.y))); +PV0i.y = floatBitsToInt(-(intBitsToFloat(R127i.w)) + intBitsToFloat(R126i.x)); +PV0i.z = floatBitsToInt(intBitsToFloat(R127i.w) + intBitsToFloat(PS1i)); +PV0i.w = floatBitsToInt(intBitsToFloat(R3i.x) + -(intBitsToFloat(R127i.z))); +R126i.x = floatBitsToInt(intBitsToFloat(R127i.z) + -(0.5)); +PS0i = R126i.x; +// 13 +backupReg0i = R127i.y; +PV1i.x = floatBitsToInt(intBitsToFloat(R3i.y) + -(intBitsToFloat(PV0i.x))); +R127i.y = floatBitsToInt(intBitsToFloat(PV0i.x) + -(0.5)); +PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.z) + intBitsToFloat(PV0i.w)); +PV1i.z = clampFI32(PV1i.z); +PV1i.w = floatBitsToInt(intBitsToFloat(backupReg0i) + intBitsToFloat(PV0i.y)); +PS1i = R5i.x; +PS1i = floatBitsToInt(intBitsToFloat(PS1i) * 2.0); +// 14 +PV0i.x = R5i.y; +PV0i.x = floatBitsToInt(intBitsToFloat(PV0i.x) * 2.0); +PV0i.y = floatBitsToInt(intBitsToFloat(PV1i.w) + intBitsToFloat(PV1i.x)); +PV0i.y = clampFI32(PV0i.y); +PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.z) + intBitsToFloat(R126i.x)); +PV0i.w = R6i.z; +PV0i.w = floatBitsToInt(intBitsToFloat(PV0i.w) * 2.0); +R126i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R125i.x)),intBitsToFloat(PS1i)) + intBitsToFloat(R10i.y))); +PS0i = R126i.x; +// 15 +backupReg0i = R127i.y; +R2i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.z), intBitsToFloat(PV0i.z))); +R127i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R125i.x)),intBitsToFloat(PV0i.x)) + intBitsToFloat(R2i.w))); +R127i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R125i.x)),intBitsToFloat(PV0i.w)) + intBitsToFloat(R9i.z))); +PV1i.w = floatBitsToInt(intBitsToFloat(PV0i.y) + intBitsToFloat(backupReg0i)); +R2i.z = floatBitsToInt(roundEven(0.0)); +PS1i = R2i.z; +// 16 +R9i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(R8i.x)) + intBitsToFloat(R1i.z))); +R2i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.w), intBitsToFloat(PV1i.w))); +R5i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(R8i.y)) + intBitsToFloat(R1i.w))); +R0i.w = floatBitsToInt((-(intBitsToFloat(R7i.w)) * intBitsToFloat(0x40400000) + intBitsToFloat(0x40400000))); +R1i.x = floatBitsToInt(intBitsToFloat(R10i.y) + intBitsToFloat(uf_remappedPS[3].x)); +PS0i = R1i.x; +// 17 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(uf_remappedPS[4].x),intBitsToFloat(uf_remappedPS[4].y),intBitsToFloat(uf_remappedPS[4].z),-0.0),vec4(intBitsToFloat(R126i.x),intBitsToFloat(R127i.y),intBitsToFloat(R127i.z),0.0))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R127i.w = floatBitsToInt(intBitsToFloat(R4i.w) * intBitsToFloat(0x437f0000)); +PS1i = R127i.w; +// 18 +R124i.x = floatBitsToInt(dot(vec4(intBitsToFloat(uf_remappedPS[5].x),intBitsToFloat(uf_remappedPS[5].y),intBitsToFloat(uf_remappedPS[5].z),-0.0),vec4(intBitsToFloat(R126i.x),intBitsToFloat(R127i.y),intBitsToFloat(R127i.z),0.0))); +PV0i.x = R124i.x; +PV0i.y = R124i.x; +PV0i.z = R124i.x; +PV0i.w = R124i.x; +R124i.z = floatBitsToInt(-(intBitsToFloat(PV1i.x))); +PS0i = R124i.z; +// 19 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(uf_remappedPS[6].x),intBitsToFloat(uf_remappedPS[6].y),intBitsToFloat(uf_remappedPS[6].z),-0.0),vec4(intBitsToFloat(R126i.x),intBitsToFloat(R127i.y),intBitsToFloat(R127i.z),0.0))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R124i.y = tempi.x; +R127i.z = floatBitsToInt(max(-(intBitsToFloat(R125i.x)), 0.0)); +PS1i = R127i.z; +// 20 +backupReg0i = R124i.x; +backupReg0i = R124i.x; +backupReg1i = R124i.z; +backupReg1i = R124i.z; +redcCUBE(vec4(intBitsToFloat(R124i.z),intBitsToFloat(R124i.z),intBitsToFloat(backupReg0i),intBitsToFloat(PV1i.x)),vec4(intBitsToFloat(PV1i.x),intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),intBitsToFloat(backupReg1i)),cubeMapSTM,cubeMapFaceId); +R124i.x = floatBitsToInt(cubeMapSTM.x); +R124i.y = floatBitsToInt(cubeMapSTM.y); +R124i.z = floatBitsToInt(cubeMapSTM.z); +R124i.w = cubeMapFaceId; +PV0i.x = R124i.x; +PV0i.y = R124i.y; +PV0i.z = R124i.z; +PV0i.w = R124i.w; +R3i.y = floatBitsToInt(intBitsToFloat(R2i.w) + intBitsToFloat(uf_remappedPS[3].y)); +PS0i = R3i.y; +// 21 +R3i.x = floatBitsToInt(intBitsToFloat(R9i.z) + intBitsToFloat(uf_remappedPS[3].z)); +R6i.y = floatBitsToInt(-(intBitsToFloat(R7i.w)) + 1.0); +PV1i.y = R6i.y; +R0i.z = PV0i.w; +R3i.w = 0; +PS1i = floatBitsToInt(1.0 / abs(intBitsToFloat(PV0i.z))); +// 22 +R6i.x = floatBitsToInt(min(intBitsToFloat(R127i.z), 1.0)); +R1i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.y),intBitsToFloat(PS1i)) + 1.5)); +R1i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R7i.w)),intBitsToFloat(PV1i.y)) + intBitsToFloat(PV1i.y))); +R1i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.x),intBitsToFloat(PS1i)) + 1.5)); +R3i.z = int(intBitsToFloat(R127i.w)); +PS0i = R3i.z; +// 0 +R0i.x = R1i.y; +R0i.y = R1i.w; +R127i.z = floatBitsToInt(intBitsToFloat(R7i.w) * intBitsToFloat(0x437f0000)); +R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[3].x), intBitsToFloat(uf_remappedPS[7].w))); +R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[3].y), intBitsToFloat(uf_remappedPS[7].w))); +PS0i = R127i.y; +// 1 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R1i.x),intBitsToFloat(R3i.y),intBitsToFloat(R3i.x),-0.0),vec4(intBitsToFloat(R1i.x),intBitsToFloat(R3i.y),intBitsToFloat(R3i.x),0.0))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R125i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[3].z), intBitsToFloat(uf_remappedPS[7].w))); +PS1i = R125i.z; +// 2 +PV0i.x = floatBitsToInt(intBitsToFloat(R1i.z) + intBitsToFloat(0x3c23d70a)); +PV0i.x = clampFI32(PV0i.x); +R124i.y = R3i.z & 0x000000fc; +R124i.z = floatBitsToInt(-(intBitsToFloat(R6i.x)) + 1.0); +R124i.w = 0; +tempResultf = 1.0 / sqrt(intBitsToFloat(PV1i.x)); +PS0i = floatBitsToInt(tempResultf); +// 3 +PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.y), intBitsToFloat(PS0i))); +PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), intBitsToFloat(PS0i))); +R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(PV0i.x))); +PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.x), intBitsToFloat(PS0i))); +R126i.y = int(intBitsToFloat(R127i.z)); +PS1i = R126i.y; +// 4 +backupReg0i = R124i.y; +R124i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.y), intBitsToFloat(uf_remappedPS[7].w))); +PV0i.x = R124i.x; +R124i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(uf_remappedPS[7].w))); +PV0i.y = R124i.y; +R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(uf_remappedPS[7].w))); +PV0i.z = R127i.z; +R126i.w = floatBitsToInt((intBitsToFloat(R6i.y) * 0.5 + 0.5)); +R126i.x = floatBitsToInt(float(backupReg0i)); +PS0i = R126i.x; +// 5 +tempi.x = floatBitsToInt(dot(vec4(-(intBitsToFloat(R127i.w)),-(intBitsToFloat(R127i.y)),-(intBitsToFloat(R125i.z)),-0.0),vec4(-(intBitsToFloat(PV0i.x)),-(intBitsToFloat(PV0i.y)),-(intBitsToFloat(PV0i.z)),0.0))); +tempi.x = clampFI32(tempi.x); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R125i.w = tempi.x; +R125i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R6i.x)),intBitsToFloat(R124i.z)) + intBitsToFloat(R124i.z))); +PS1i = R125i.y; +// 6 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R5i.x),intBitsToFloat(R5i.y),intBitsToFloat(R6i.z),intBitsToFloat(R6i.z)),vec4(-(intBitsToFloat(R124i.x)),-(intBitsToFloat(R124i.y)),-(intBitsToFloat(R127i.z)),-(intBitsToFloat(R3i.w))))); +tempi.x = clampFI32(tempi.x); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +R127i.z = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + 1.0); +PS0i = R127i.z; +// 7 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R5i.x),intBitsToFloat(R5i.y),intBitsToFloat(R6i.z),intBitsToFloat(R6i.z)),vec4(-(intBitsToFloat(R127i.w)),-(intBitsToFloat(R127i.y)),-(intBitsToFloat(R125i.z)),-(intBitsToFloat(R124i.w))))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R127i.w = tempi.x; +PS1i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(PV0i.x))); +// 8 +PV0i.x = R126i.y & int(1); +R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.z),intBitsToFloat(PS1i)) + -(intBitsToFloat(PS1i)))); +R125i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.w), intBitsToFloat(R126i.w))); +R125i.z = floatBitsToInt(intBitsToFloat(R125i.z) / 2.0); +R6i.w = floatBitsToInt(intBitsToFloat(R126i.x) * intBitsToFloat(0x3b820821)); +PV0i.w = R6i.w; +R124i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R125i.w)),intBitsToFloat(R127i.z)) + intBitsToFloat(R127i.z))); +PS0i = R124i.y; +// 9 +R123i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R6i.x)),intBitsToFloat(R125i.y)) + intBitsToFloat(R125i.y))); +PV1i.x = R123i.x; +R126i.y = R127i.w; +R126i.y = floatBitsToInt(intBitsToFloat(R126i.y) * 2.0); +R127i.z = floatBitsToInt((-(intBitsToFloat(R7i.w)) * intBitsToFloat(0x40400000) + 4.0)); +R7i.w = floatBitsToInt((intBitsToFloat(PV0i.w) * 0.25 + 0.25)); +R7i.y = ((PV0i.x == 0)?(0):(0x3f800000)); +PS1i = R7i.y; +// 10 +backupReg0i = R6i.x; +backupReg0i = R6i.x; +backupReg1i = R125i.y; +R6i.x = R127i.w; +R6i.x = clampFI32(R6i.x); +PV0i.x = R6i.x; +R125i.y = floatBitsToInt(intBitsToFloat(R127i.y) + 1.0); +R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),-(intBitsToFloat(R125i.z))) + intBitsToFloat(backupReg0i))); +PV0i.z = R123i.z; +R126i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg1i), intBitsToFloat(PV1i.x))); +R124i.z = floatBitsToInt((-(intBitsToFloat(R6i.w)) * intBitsToFloat(0x3d23d70a) + intBitsToFloat(0x3d23d70a))); +PS0i = R124i.z; +// 11 +backupReg0i = R127i.w; +backupReg1i = R126i.y; +R126i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R125i.w)),intBitsToFloat(R124i.y)) + intBitsToFloat(R124i.y))); +R126i.y = floatBitsToInt(intBitsToFloat(R125i.z) + intBitsToFloat(PV0i.z)); +R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),-(intBitsToFloat(R125i.z))) + intBitsToFloat(PV0i.x))); +PV1i.z = R123i.z; +R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(backupReg1i))); +PS1i = floatBitsToInt(1.0 / intBitsToFloat(R127i.z)); +// 12 +backupReg0i = R127i.y; +backupReg1i = R125i.z; +R125i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.w), intBitsToFloat(PS1i))); +R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.x),intBitsToFloat(R6i.w)) + intBitsToFloat(R124i.z))); +R125i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.z),intBitsToFloat(R6i.w)) + intBitsToFloat(R124i.z))); +R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(R125i.y)) + intBitsToFloat(R125i.y))); +PV0i.w = R123i.w; +R127i.z = floatBitsToInt(intBitsToFloat(backupReg1i) + intBitsToFloat(PV1i.z)); +PS0i = R127i.z; +// 13 +backupReg0i = R124i.y; +backupReg1i = R126i.x; +R126i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.y),intBitsToFloat(R6i.w)) + intBitsToFloat(R124i.z))); +PV1i.x = R126i.x; +R124i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[7].w), intBitsToFloat(uf_remappedPS[7].w))); +R10i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R7i.y), intBitsToFloat(R127i.w))); +R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(backupReg1i))); +PV1i.w = R127i.w; +R124i.z = floatBitsToInt(1.0 / intBitsToFloat(PV0i.w)); +PS1i = R124i.z; +// 14 +backupReg0i = R127i.y; +backupReg0i = R127i.y; +R124i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.y),-(intBitsToFloat(R125i.x))) + intBitsToFloat(R127i.y))); +R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.z),-(intBitsToFloat(PV1i.w))) + intBitsToFloat(R125i.z))); +R7i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.x),-(intBitsToFloat(PV1i.w))) + intBitsToFloat(PV1i.x))); +R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),-(intBitsToFloat(PV1i.w))) + intBitsToFloat(backupReg0i))); +PV0i.w = R123i.w; +R127i.x = floatBitsToInt(1.0 / intBitsToFloat(R126i.y)); +PS0i = R127i.x; +// 15 +R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.x),-(intBitsToFloat(R125i.x))) + intBitsToFloat(R126i.x))); +PV1i.x = R123i.x; +R126i.y = floatBitsToInt(intBitsToFloat(R127i.w) + intBitsToFloat(PV0i.w)); +R6i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.y), intBitsToFloat(R124i.y))); +R126i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.z),-(intBitsToFloat(R125i.x))) + intBitsToFloat(R125i.z))); +R124i.y = floatBitsToInt(1.0 / intBitsToFloat(R127i.z)); +PS1i = R124i.y; +// 16 +backupReg0i = R127i.w; +R7i.x = floatBitsToInt(intBitsToFloat(R125i.x) + intBitsToFloat(R124i.x)); +PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.z), intBitsToFloat(R124i.z))); +R126i.z = floatBitsToInt(intBitsToFloat(R127i.w) + intBitsToFloat(R127i.y)); +R127i.w = floatBitsToInt(intBitsToFloat(backupReg0i) + intBitsToFloat(R7i.z)); +R7i.y = floatBitsToInt(intBitsToFloat(R125i.x) + intBitsToFloat(PV1i.x)); +PS0i = R7i.y; +// 17 +R5i.x = floatBitsToInt(intBitsToFloat(R125i.x) + intBitsToFloat(R126i.w)); +R5i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.y), intBitsToFloat(PV0i.y))); +R12i.z = floatBitsToInt((intBitsToFloat(R4i.x) * intBitsToFloat(0x3f895ef0) + intBitsToFloat(0xba0a8ec8))); +R12i.z = clampFI32(R12i.z); +PV1i.w = floatBitsToInt(0.25 * intBitsToFloat(R127i.x)); +R5i.w = floatBitsToInt((intBitsToFloat(R4i.y) * intBitsToFloat(0x3f895ef0) + intBitsToFloat(0xba0a8ec8))); +R5i.w = clampFI32(R5i.w); +PS1i = R5i.w; +// 18 +PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.z), intBitsToFloat(PV1i.w))); +PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.w), intBitsToFloat(PV1i.w))); +PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(PV1i.w))); +R8i.w = floatBitsToInt((intBitsToFloat(R4i.z) * intBitsToFloat(0x3f895ef0) + intBitsToFloat(0xba0a8ec8))); +R8i.w = clampFI32(R8i.w); +PS0i = R3i.z & int(1); +// 19 +R4i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[8].z), intBitsToFloat(PV0i.x))); +R7i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[8].y), intBitsToFloat(PV0i.y))); +R3i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[8].x), intBitsToFloat(PV0i.z))); +R4i.z = floatBitsToInt(float(PS0i)); +PS1i = R4i.z; +// 20 +R3i.x = R2i.x; +R3i.y = R2i.y; +R3i.z = floatBitsToInt(roundEven(1.0)); +R4i.w = floatBitsToInt(texture(textureUnitPS5, intBitsToFloat(R8i.xy)).x); +R13i.xyz = floatBitsToInt(texture(textureUnitPS12, intBitsToFloat(R2i.xy)).xyz); +R11i.xyz = floatBitsToInt(texture(textureUnitPS11, vec3(intBitsToFloat(R2i.x),intBitsToFloat(R2i.y),intBitsToFloat(R2i.z))).xyz); +R1i.xyzw = floatBitsToInt(textureLod(textureUnitPS2, intBitsToFloat(R2i.xy),0.0).xyzw); +R3i.xyz = floatBitsToInt(texture(textureUnitPS11, vec3(intBitsToFloat(R3i.x),intBitsToFloat(R3i.y),intBitsToFloat(R3i.z))).xyz); +R0i.xyz = floatBitsToInt(textureLod(textureUnitPS9, vec4(redcCUBEReverse(intBitsToFloat(R0i.xy),R0i.z),cubeMapArrayIndex9),intBitsToFloat(R0i.w)).xyz); +R2i.xyz = floatBitsToInt(texture(textureUnitPS14, intBitsToFloat(R2i.xy)).xyz); +// 0 +R123i.x = floatBitsToInt((intBitsToFloat(R13i.y) * 0.5 + 0.5)); +PV0i.x = R123i.x; +R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R13i.y),-(intBitsToFloat(R7i.w))) + intBitsToFloat(R13i.y))); +PV0i.y = R123i.y; +R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].x),intBitsToFloat(R4i.w)) + intBitsToFloat(uf_remappedPS[1].x))); +PV0i.z = R123i.z; +R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R13i.x), intBitsToFloat(R6i.x))); +R126i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.z),intBitsToFloat(R5i.x)) + intBitsToFloat(R3i.z))); +PS0i = R126i.w; +// 1 +PV1i.x = floatBitsToInt(-(intBitsToFloat(PV0i.z))); +PV1i.y = floatBitsToInt(intBitsToFloat(R6i.x) + intBitsToFloat(PV0i.x)); +PV1i.y = clampFI32(PV1i.y); +PV1i.z = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(PV0i.z)), intBitsToFloat(R5i.z))); +PV1i.w = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(PV0i.z)), intBitsToFloat(R9i.x))); +PS1i = floatBitsToInt(intBitsToFloat(R7i.w) + intBitsToFloat(PV0i.y)); +// 2 +R127i.x = floatBitsToInt(-(intBitsToFloat(R10i.x)) + intBitsToFloat(PV1i.w)); +PV0i.x = R127i.x; +R126i.y = floatBitsToInt(-(intBitsToFloat(R9i.y)) + intBitsToFloat(PV1i.z)); +PV0i.y = R126i.y; +PV0i.z = floatBitsToInt(-(intBitsToFloat(R8i.z)) + intBitsToFloat(PV1i.x)); +R7i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.w), intBitsToFloat(PV1i.y))); +R124i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PS1i),-(intBitsToFloat(R1i.w))) + intBitsToFloat(PS1i))); +PS0i = R124i.y; +// 3 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R10i.y),intBitsToFloat(R2i.w),intBitsToFloat(R9i.z),-0.0),vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),0.0))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R125i.y = tempi.x; +PS1i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[9].x), intBitsToFloat(R127i.w))); +// 4 +backupReg0i = R126i.y; +R123i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R10i.y)),intBitsToFloat(PV1i.x)) + intBitsToFloat(R127i.x))); +PV0i.x = R123i.x; +R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS1i), intBitsToFloat(R6i.z))); +PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R13i.z), intBitsToFloat(R13i.z))); +R127i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R2i.w)),intBitsToFloat(PV1i.x)) + intBitsToFloat(backupReg0i))); +// 5 +R127i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(R7i.y)) + intBitsToFloat(R3i.y))); +R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(R7i.x)) + intBitsToFloat(R3i.x))); +PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(PV0i.x))); +R1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.z), intBitsToFloat(PV0i.z))); +// 6 +PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.y), intBitsToFloat(R7i.x))); +R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.w),intBitsToFloat(R127i.w)) + intBitsToFloat(PV1i.z))); +PV0i.y = R123i.y; +PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.y), intBitsToFloat(R5i.x))); +R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.y), intBitsToFloat(R7i.y))); +// 7 +R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R0i.z),intBitsToFloat(PV0i.z)) + intBitsToFloat(R126i.w))); +PV1i.x = R123i.x; +R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R0i.x),intBitsToFloat(PV0i.x)) + intBitsToFloat(R127i.y))); +PV1i.z = R123i.z; +R126i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(R5i.y))); +PV1i.w = R126i.w; +tempResultf = 1.0 / sqrt(intBitsToFloat(PV0i.y)); +PS1i = floatBitsToInt(tempResultf); +// 8 +R5i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.w),intBitsToFloat(PV1i.w)) + intBitsToFloat(PV1i.z))); +R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R0i.y),intBitsToFloat(R127i.w)) + intBitsToFloat(R127i.x))); +PV0i.y = R123i.y; +R0i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.y),intBitsToFloat(PV1i.w)) + intBitsToFloat(PV1i.x))); +PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.y), intBitsToFloat(PS1i))); +// 9 +R7i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R7i.z),intBitsToFloat(R126i.w)) + intBitsToFloat(PV0i.y))); +PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[2].z), intBitsToFloat(PV0i.w))); +// 10 +PV0i.y = floatBitsToInt(intBitsToFloat(PV1i.z) * intBitsToFloat(0x3ced9168)); +PV0i.y = clampFI32(PV0i.y); +// 11 +R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.y),intBitsToFloat(R10i.z)) + 1.0)); +PV1i.y = R123i.y; +// 12 +R0i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R6i.w)),intBitsToFloat(PV1i.y)) + intBitsToFloat(PV1i.y))); +// 0 +R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[8].x),intBitsToFloat(R7i.w)) + intBitsToFloat(R11i.x))); +PV0i.x = R123i.x; +R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[8].z),intBitsToFloat(R7i.w)) + intBitsToFloat(R11i.z))); +PV0i.z = R123i.z; +R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[8].y),intBitsToFloat(R7i.w)) + intBitsToFloat(R11i.y))); +PV0i.w = R123i.w; +// 1 +PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), intBitsToFloat(R0i.x))); +PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(R0i.x))); +PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(R0i.x))); +// 2 +PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.z), intBitsToFloat(R5i.w))); +PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(R12i.z))); +PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.y), intBitsToFloat(R8i.w))); +// 3 +R123i.x = floatBitsToInt((intBitsToFloat(PV0i.w) * intBitsToFloat(0x3f6e896b) + intBitsToFloat(0x3a011b1e))); +PV1i.x = R123i.x; +R123i.y = floatBitsToInt((intBitsToFloat(PV0i.x) * intBitsToFloat(0x3f6e896b) + intBitsToFloat(0x3a011b1e))); +PV1i.y = R123i.y; +R123i.z = floatBitsToInt((intBitsToFloat(PV0i.y) * intBitsToFloat(0x3f6e896b) + intBitsToFloat(0x3a011b1e))); +PV1i.z = R123i.z; +// 4 +PV0i.y = floatBitsToInt(intBitsToFloat(R0i.z) + intBitsToFloat(PV1i.x)); +PV0i.z = floatBitsToInt(intBitsToFloat(R7i.x) + intBitsToFloat(PV1i.y)); +PV0i.w = floatBitsToInt(intBitsToFloat(R5i.x) + intBitsToFloat(PV1i.z)); +// 5 +R1i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R13i.z),intBitsToFloat(PV0i.w)) + intBitsToFloat(R2i.x))); +R1i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R13i.z),intBitsToFloat(PV0i.z)) + intBitsToFloat(R2i.y))); +R1i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R13i.z),intBitsToFloat(PV0i.y)) + intBitsToFloat(R2i.z))); +// export +passPixelColor0 = vec4(intBitsToFloat(R1i.x), intBitsToFloat(R1i.y), intBitsToFloat(R1i.z), intBitsToFloat(R1i.w)); +float luma = dot(passPixelColor0.rgb, vec3(0.2126, 0.7152, 0.0722)); +#if (ENABLE_COLOR_FADE == 1) +float depth = texture(textureUnitPS5, passParameterSem0.xy).x; +float factor = smoothstep(0.0005, 0.00075, depth); +passPixelColor0.rgb = mix(passPixelColor0.rgb, vec3(luma), factor); +#else +passPixelColor0.rgb = vec3(luma); +#endif +} diff --git a/Modifications/BreathOfTheWild_Monochromia/4c324d20f5b6de3b_000000007924d249_ps.txt b/Modifications/BreathOfTheWild_Monochromia/4c324d20f5b6de3b_000000007924d249_ps.txt new file mode 100644 index 00000000..ca1df12f --- /dev/null +++ b/Modifications/BreathOfTheWild_Monochromia/4c324d20f5b6de3b_000000007924d249_ps.txt @@ -0,0 +1,505 @@ +#version 420 +#extension GL_ARB_texture_gather : enable +// shader 4c324d20f5b6de3b +// Monochromia +// Link's and other human character's eyes +// original shader dumped using cemu 1.11.c, BotW 1.3.1 +uniform ivec4 uf_remappedPS[9]; +layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0xf45c6000 res 1280x720x1 dim 1 tm: 4 format 041a compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 2) uniform sampler2D textureUnitPS2;// Tex2 addr 0xf494a800 res 1280x720x1 dim 1 tm: 4 format 001a compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler2 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 4) uniform sampler2D textureUnitPS4;// Tex4 addr 0xf4e91800 res 1280x720x1 dim 1 tm: 4 format 0806 compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler4 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 6) uniform sampler2D textureUnitPS6;// Tex6 addr 0xf5054000 res 640x360x1 dim 1 tm: 4 format 080e compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler6 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 8) uniform sampler2DArray textureUnitPS8;// Tex8 addr 0xf5593000 res 640x360x2 dim 5 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x2) Sampler8 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 9) uniform sampler2D textureUnitPS9;// Tex9 addr 0xf575f800 res 640x360x1 dim 1 tm: 4 format 001a compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler9 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 11) uniform sampler2D textureUnitPS11;// Tex11 addr 0xf5977800 res 640x360x1 dim 1 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler11 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 12) uniform sampler2D textureUnitPS12;// Tex12 addr 0xf4240800 res 1280x720x1 dim 1 tm: 4 format 080e compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler12 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 13) uniform sampler2D textureUnitPS13;// Tex13 addr 0xf528a800 res 640x360x1 dim 1 tm: 4 format 001a compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler13 ClampX/Y/Z: 2 2 2 border: 1 +layout(location = 0) in vec4 passParameterSem0; +layout(location = 1) in vec4 passParameterSem1; +layout(location = 2) in vec4 passParameterSem2; +layout(location = 3) in vec4 passParameterSem4; +layout(location = 4) in vec4 passParameterSem6; +layout(location = 0) out vec4 passPixelColor0; +uniform vec2 uf_fragCoordScale; +int clampFI32(int v) +{ +if( v == 0x7FFFFFFF ) + return floatBitsToInt(1.0); +else if( v == 0xFFFFFFFF ) + return floatBitsToInt(0.0); +return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); +} +float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } +void main() +{ +ivec4 R0i = ivec4(0); +ivec4 R1i = ivec4(0); +ivec4 R2i = ivec4(0); +ivec4 R3i = ivec4(0); +ivec4 R4i = ivec4(0); +ivec4 R5i = ivec4(0); +ivec4 R6i = ivec4(0); +ivec4 R7i = ivec4(0); +ivec4 R8i = ivec4(0); +ivec4 R9i = ivec4(0); +ivec4 R10i = ivec4(0); +ivec4 R11i = ivec4(0); +ivec4 R12i = ivec4(0); +ivec4 R13i = ivec4(0); +ivec4 R122i = ivec4(0); +ivec4 R123i = ivec4(0); +ivec4 R124i = ivec4(0); +ivec4 R125i = ivec4(0); +ivec4 R126i = ivec4(0); +ivec4 R127i = ivec4(0); +int backupReg0i, backupReg1i, backupReg2i, backupReg3i, backupReg4i; +ivec4 PV0i = ivec4(0), PV1i = ivec4(0); +int PS0i = 0, PS1i = 0; +ivec4 tempi = ivec4(0); +float tempResultf; +int tempResulti; +ivec4 ARi = ivec4(0); +bool predResult = true; +vec3 cubeMapSTM; +int cubeMapFaceId; +R0i = floatBitsToInt(passParameterSem0); +R1i = floatBitsToInt(passParameterSem1); +R2i = floatBitsToInt(passParameterSem2); +R3i = floatBitsToInt(passParameterSem4); +R4i = floatBitsToInt(passParameterSem6); +R5i.xyzw = floatBitsToInt(texture(textureUnitPS2, intBitsToFloat(R4i.zw)).xyzw); +R6i.w = floatBitsToInt(texture(textureUnitPS12, intBitsToFloat(R0i.xy)).x); +R7i.xyzw = floatBitsToInt(textureGather(textureUnitPS6, intBitsToFloat(R0i.xy)).xyzw); +R8i.xyzw = floatBitsToInt(texture(textureUnitPS1, intBitsToFloat(R4i.zw)).xyzw); +// 0 +R127i.x = floatBitsToInt((intBitsToFloat(R5i.x) * 2.0 + -(1.0))); +PV0i.x = R127i.x; +R127i.y = floatBitsToInt((intBitsToFloat(R5i.y) * 2.0 + -(1.0))); +PV0i.y = R127i.y; +R124i.z = floatBitsToInt((intBitsToFloat(R5i.z) * 2.0 + -(1.0))); +PV0i.z = R124i.z; +R123i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R6i.w)),intBitsToFloat(uf_remappedPS[0].w)) + 1.0)); +PV0i.w = R123i.w; +R127i.z = 0x358637bd; +PS0i = R127i.z; +// 1 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),-0.0),vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),0.0))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +PS1i = floatBitsToInt(1.0 / intBitsToFloat(PV0i.w)); +// 2 +R124i.x = floatBitsToInt(floor(intBitsToFloat(R3i.y))); +PV0i.x = R124i.x; +R5i.y = floatBitsToInt(intBitsToFloat(R2i.x) * intBitsToFloat(0x3f4ccccd)); +R5i.z = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(uf_remappedPS[0].x)), intBitsToFloat(PS1i))); +PV0i.z = R5i.z; +R125i.w = floatBitsToInt(floor(intBitsToFloat(R3i.x))); +PV0i.w = R125i.w; +R5i.w = floatBitsToInt(sqrt(intBitsToFloat(PV1i.x))); +PS0i = R5i.w; +// 3 +PV1i.x = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(PV0i.z)), intBitsToFloat(uf_remappedPS[1].y))); +R125i.y = floatBitsToInt(intBitsToFloat(R3i.x) + -(intBitsToFloat(PV0i.w))); +R126i.z = floatBitsToInt(intBitsToFloat(uf_remappedPS[0].x) + intBitsToFloat(PV0i.z)); +PV1i.z = R126i.z; +R124i.w = floatBitsToInt(intBitsToFloat(R3i.y) + -(intBitsToFloat(PV0i.x))); +R124i.y = floatBitsToInt(1.0 / intBitsToFloat(PS0i)); +PS1i = R124i.y; +// 4 +R9i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(PS1i))); +PV0i.x = R9i.x; +R6i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), intBitsToFloat(PS1i))); +PV0i.y = R6i.y; +R125i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.z),intBitsToFloat(uf_remappedPS[2].x)) + intBitsToFloat(R7i.y))); +R127i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.z),intBitsToFloat(uf_remappedPS[2].x)) + intBitsToFloat(R7i.w))); +R126i.y = floatBitsToInt(1.0 / intBitsToFloat(PV1i.x)); +PS0i = R126i.y; +// 5 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(R127i.z),-0.0),vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(R127i.z),0.0))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R5i.x = floatBitsToInt(intBitsToFloat(PS0i) * 0.25); +PS1i = R5i.x; +// 6 +R127i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.z),intBitsToFloat(uf_remappedPS[2].x)) + intBitsToFloat(R7i.x))); +R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.z),intBitsToFloat(uf_remappedPS[2].x)) + intBitsToFloat(R7i.z))); +R126i.z = floatBitsToInt(max(intBitsToFloat(R125i.z), -(intBitsToFloat(R125i.z)))); +PV0i.w = floatBitsToInt(min(intBitsToFloat(PS1i), 2.0)); +tempResultf = 1.0 / sqrt(intBitsToFloat(PV1i.x)); +PS0i = floatBitsToInt(tempResultf); +// 7 +backupReg0i = R127i.w; +backupReg0i = R127i.w; +R126i.x = floatBitsToInt(intBitsToFloat(PV0i.w) * intBitsToFloat(0x40c00000)); +PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.y), intBitsToFloat(PS0i))); +PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R9i.x), intBitsToFloat(PS0i))); +R127i.w = floatBitsToInt(max(intBitsToFloat(backupReg0i), -(intBitsToFloat(backupReg0i)))); +R125i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(uf_remappedPS[3].x))); +PS1i = R125i.x; +// 8 +PV0i.x = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(uf_remappedPS[4].w)), intBitsToFloat(PV1i.y))); +PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[4].z), intBitsToFloat(PV1i.z))); +PV0i.z = floatBitsToInt(max(intBitsToFloat(R127i.x), -(intBitsToFloat(R127i.x)))); +PV0i.w = floatBitsToInt(max(intBitsToFloat(R127i.y), -(intBitsToFloat(R127i.y)))); +R126i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.z), intBitsToFloat(PS1i))); +PS0i = R126i.w; +// 9 +PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.w), intBitsToFloat(R125i.x))); +PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(R126i.x))); +R125i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), intBitsToFloat(R125i.x))); +PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(R126i.x))); +R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(R125i.x))); +PS1i = R126i.z; +// 10 +R7i.x = floatBitsToInt(intBitsToFloat(R0i.x) + intBitsToFloat(PV1i.y)); +PV0i.y = floatBitsToInt(-(intBitsToFloat(R126i.w)) + intBitsToFloat(PV1i.x)); +PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.w) * intBitsToFloat(0x3e4ccccd)); +R126i.w = floatBitsToInt(intBitsToFloat(R125i.w) + -(0.5)); +R127i.y = floatBitsToInt(intBitsToFloat(R124i.x) + -(0.5)); +PS0i = R127i.y; +// 11 +R6i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.w), intBitsToFloat(R5i.z))); +R7i.y = floatBitsToInt(intBitsToFloat(R0i.y) + intBitsToFloat(PV0i.z)); +PV1i.y = R7i.y; +PV1i.z = floatBitsToInt(-(intBitsToFloat(R125i.z)) + intBitsToFloat(PV0i.y)); +PV1i.w = floatBitsToInt(-(intBitsToFloat(R126i.z)) + intBitsToFloat(PV0i.y)); +R4i.z = floatBitsToInt(roundEven(0.0)); +PS1i = R4i.z; +// 12 +backupReg0i = R1i.z; +PV0i.x = floatBitsToInt(intBitsToFloat(R125i.z) + intBitsToFloat(PV1i.w)); +PV0i.y = floatBitsToInt(intBitsToFloat(R126i.z) + intBitsToFloat(PV1i.z)); +R1i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(PV1i.y)) + intBitsToFloat(R1i.w))); +R1i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(R7i.x)) + intBitsToFloat(backupReg0i))); +R126i.z = floatBitsToInt((intBitsToFloat(R126i.y) * intBitsToFloat(0x3dcccccd) + 1.0)); +PS0i = R126i.z; +// 13 +R0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.z), intBitsToFloat(R5i.z))); +R9i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.z), intBitsToFloat(R124i.y))); +PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.y) + intBitsToFloat(R124i.w)); +PV1i.z = clampFI32(PV1i.z); +PV1i.w = floatBitsToInt(intBitsToFloat(PV0i.x) + intBitsToFloat(R125i.y)); +PV1i.w = clampFI32(PV1i.w); +R124i.w = floatBitsToInt((intBitsToFloat(R5i.w) * 4.0 + intBitsToFloat(0xc0400000))); +R124i.w = clampFI32(R124i.w); +PS1i = R124i.w; +// 14 +PV0i.x = floatBitsToInt(intBitsToFloat(PV1i.z) + intBitsToFloat(R127i.y)); +R0i.y = floatBitsToInt(intBitsToFloat(R5i.x) * intBitsToFloat(0x40c00000)); +R0i.z = R5i.x; +R0i.z = floatBitsToInt(intBitsToFloat(R0i.z) * 4.0); +R0i.z = clampFI32(R0i.z); +PV0i.w = floatBitsToInt(intBitsToFloat(PV1i.w) + intBitsToFloat(R126i.w)); +R1i.y = floatBitsToInt(intBitsToFloat(R126i.z) * intBitsToFloat(0x42960000)); +PS0i = R1i.y; +// 15 +R4i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.z), intBitsToFloat(PV0i.w))); +R4i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.w), intBitsToFloat(PV0i.x))); +R3i.z = floatBitsToInt(intBitsToFloat(R2i.y) * intBitsToFloat(0x3f4ccccd)); +R0i.w = floatBitsToInt(intBitsToFloat(R124i.w) + -(0.5)); +R0i.w = floatBitsToInt(intBitsToFloat(R0i.w) * 4.0); +R0i.w = clampFI32(R0i.w); +R3i.x = floatBitsToInt(intBitsToFloat(R2i.z) * intBitsToFloat(0x3f4ccccd)); +PS1i = R3i.x; +R7i.y = floatBitsToInt(texture(textureUnitPS4, intBitsToFloat(R7i.xy)).x); +R11i.xyz = floatBitsToInt(texture(textureUnitPS9, intBitsToFloat(R4i.xy)).xyz); +R3i.w = floatBitsToInt(texture(textureUnitPS13, intBitsToFloat(R4i.xy)).w); +R10i.xyz = floatBitsToInt(texture(textureUnitPS8, vec3(intBitsToFloat(R4i.x),intBitsToFloat(R4i.y),intBitsToFloat(R4i.z))).xyz); +R12i.xyz = floatBitsToInt(texture(textureUnitPS11, intBitsToFloat(R4i.xy)).xyz); +// 0 +backupReg0i = R0i.x; +backupReg0i = R0i.x; +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(R6i.x),intBitsToFloat(R5i.z),-0.0),vec4(intBitsToFloat(backupReg0i),intBitsToFloat(R6i.x),intBitsToFloat(R5i.z),0.0))); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +R122i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[3].x),intBitsToFloat(R7i.y)) + intBitsToFloat(uf_remappedPS[0].x))); +PS0i = R122i.x; +// 1 +PV1i.x = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(PS0i)), intBitsToFloat(R1i.w))); +PV1i.y = floatBitsToInt(-(intBitsToFloat(PS0i))); +PV1i.z = floatBitsToInt(intBitsToFloat(R11i.x) + intBitsToFloat(0xbecccccd)); +PV1i.w = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(PS0i)), intBitsToFloat(R1i.z))); +PS1i = floatBitsToInt(sqrt(intBitsToFloat(PV0i.x))); +// 2 +R124i.x = floatBitsToInt(-(intBitsToFloat(R0i.x)) + intBitsToFloat(PV1i.x)); +R127i.y = floatBitsToInt(-(intBitsToFloat(R6i.x)) + intBitsToFloat(PV1i.w)); +R126i.z = floatBitsToInt(-(intBitsToFloat(R5i.z)) + intBitsToFloat(PV1i.y)); +PV0i.w = floatBitsToInt(intBitsToFloat(PV1i.z) * intBitsToFloat(0x41200000)); +PV0i.w = clampFI32(PV0i.w); +PS0i = floatBitsToInt(1.0 / intBitsToFloat(PS1i)); +// 3 +backupReg0i = R6i.x; +backupReg1i = R5i.z; +R6i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.x), intBitsToFloat(PS0i))); +PV1i.x = R6i.x; +R7i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PS0i))); +PV1i.y = R7i.y; +R5i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg1i), intBitsToFloat(PS0i))); +PV1i.z = R5i.z; +R124i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R11i.y), intBitsToFloat(PV0i.w))); +PV1i.w = R124i.w; +R124i.z = floatBitsToInt(intBitsToFloat(R0i.y) * intBitsToFloat(0x3dcccccd)); +R124i.z = clampFI32(R124i.z); +PS1i = R124i.z; +// 4 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R9i.x),intBitsToFloat(R6i.y),intBitsToFloat(R9i.y),-0.0),vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),0.0))); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +R125i.x = floatBitsToInt(intBitsToFloat(PV1i.w) + -(1.0)); +PS0i = R125i.x; +// 5 +PV1i.x = floatBitsToInt(intBitsToFloat(PV0i.x) + 1.0); +PV1i.x = clampFI32(PV1i.x); +R125i.y = floatBitsToInt(intBitsToFloat(uf_remappedPS[5].y) + -(intBitsToFloat(R3i.z))); +R125i.z = floatBitsToInt(intBitsToFloat(uf_remappedPS[5].x) + -(intBitsToFloat(R5i.y))); +R126i.w = floatBitsToInt(intBitsToFloat(R2i.w) + intBitsToFloat(R124i.w)); +R126i.w = clampFI32(R126i.w); +R126i.x = floatBitsToInt(intBitsToFloat(uf_remappedPS[5].z) + -(intBitsToFloat(R3i.x))); +PS1i = R126i.x; +// 6 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R6i.x),intBitsToFloat(R7i.y),intBitsToFloat(R5i.z),-0.0),vec4(intBitsToFloat(R124i.x),intBitsToFloat(R127i.y),intBitsToFloat(R126i.z),0.0))); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +R124i.w = tempi.x; +PS0i = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + 1.0); +// 7 +R123i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R6i.x)),intBitsToFloat(PV0i.x)) + intBitsToFloat(R124i.x))); +PV1i.x = R123i.x; +R123i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R7i.y)),intBitsToFloat(PV0i.x)) + intBitsToFloat(R127i.y))); +PV1i.y = R123i.y; +R123i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R5i.z)),intBitsToFloat(PV0i.x)) + intBitsToFloat(R126i.z))); +PV1i.z = R123i.z; +R1i.w = floatBitsToInt((intBitsToFloat(0x3f19999a) * intBitsToFloat(R124i.z) + intBitsToFloat(0x3ecccccd))); +tempResultf = log2(intBitsToFloat(PS0i)); +if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; +PS1i = floatBitsToInt(tempResultf); +// 8 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),-0.0),vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),0.0))); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +R127i.y = floatBitsToInt(intBitsToFloat(PS1i) * intBitsToFloat(0x3e4ccccd)); +PS0i = R127i.y; +// 9 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R9i.x),intBitsToFloat(R6i.y),intBitsToFloat(R9i.y),-0.0),vec4(intBitsToFloat(uf_remappedPS[6].x),intBitsToFloat(uf_remappedPS[6].y),intBitsToFloat(uf_remappedPS[6].z),0.0))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +tempResultf = 1.0 / sqrt(intBitsToFloat(PV0i.x)); +PS1i = floatBitsToInt(tempResultf); +// 10 +backupReg0i = R127i.y; +PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.w), intBitsToFloat(PS1i))); +R127i.y = floatBitsToInt(intBitsToFloat(R0i.w) + intBitsToFloat(0x3f4ccccd)); +R127i.y = clampFI32(R127i.y); +PV0i.z = floatBitsToInt(max(-(intBitsToFloat(PV1i.x)), 0.0)); +R124i.w = floatBitsToInt(intBitsToFloat(R0i.y) * intBitsToFloat(0x3d4ccccd)); +R124i.w = clampFI32(R124i.w); +PS0i = floatBitsToInt(exp2(intBitsToFloat(backupReg0i))); +// 11 +backupReg0i = R3i.z; +R0i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.z),intBitsToFloat(R126i.w)) + intBitsToFloat(R5i.y))); +PV1i.y = floatBitsToInt(min(intBitsToFloat(PV0i.z), 1.0)); +R1i.z = floatBitsToInt(intBitsToFloat(PV0i.x) * intBitsToFloat(0x3c23d70a)); +R1i.z = clampFI32(R1i.z); +PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.w), intBitsToFloat(PS0i))); +R3i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.y),intBitsToFloat(R126i.w)) + intBitsToFloat(backupReg0i))); +PS1i = R3i.z; +// 12 +R123i.x = floatBitsToInt((intBitsToFloat(PV1i.w) * intBitsToFloat(0x3e99999a) + intBitsToFloat(PV1i.y))); +PV0i.x = R123i.x; +R5i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.x),intBitsToFloat(R126i.w)) + intBitsToFloat(R3i.x))); +PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.w) + intBitsToFloat(0xbf400000)); +R126i.w = floatBitsToInt(intBitsToFloat(R1i.w) * intBitsToFloat(0x3fe66666)); +PV0i.w = R126i.w; +R3i.x = floatBitsToInt(intBitsToFloat(R127i.y) + -(1.0)); +PS0i = R3i.x; +// 13 +PV1i.x = floatBitsToInt(intBitsToFloat(R8i.w) * intBitsToFloat(0x437f0000)); +R127i.y = floatBitsToInt(intBitsToFloat(PV0i.z) * intBitsToFloat(0x41800000)); +R127i.y = clampFI32(R127i.y); +PV1i.y = R127i.y; +R4i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.x), intBitsToFloat(PV0i.w))); +PV1i.w = floatBitsToInt(intBitsToFloat(PV0i.x) + intBitsToFloat(0xbecccccd)); +R4i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.y), intBitsToFloat(PV0i.w))); +PS1i = R4i.x; +// 14 +backupReg0i = R2i.z; +PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(R1i.y))); +PV0i.x = clampFI32(PV0i.x); +PV0i.y = floatBitsToInt(intBitsToFloat(R2i.w) + -(intBitsToFloat(PV1i.y))); +PV0i.y = clampFI32(PV0i.y); +R2i.z = floatBitsToInt((intBitsToFloat(R8i.x) * intBitsToFloat(0x3f895ef0) + intBitsToFloat(0xba0a8ec8))); +R2i.z = clampFI32(R2i.z); +R2i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(R126i.w))); +R126i.x = int(intBitsToFloat(PV1i.x)); +PS0i = R126i.x; +// 15 +backupReg0i = R8i.y; +backupReg1i = R8i.z; +PV1i.x = PS0i & 0x000000fc; +R8i.y = floatBitsToInt((intBitsToFloat(backupReg0i) * intBitsToFloat(0x3f895ef0) + intBitsToFloat(0xba0a8ec8))); +R8i.y = clampFI32(R8i.y); +R8i.z = floatBitsToInt(intBitsToFloat(R127i.y) + intBitsToFloat(PV0i.x)); +R8i.z = clampFI32(R8i.z); +R8i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.x),intBitsToFloat(PV0i.y)) + 1.0)); +R7i.z = floatBitsToInt((intBitsToFloat(backupReg1i) * intBitsToFloat(0x3f895ef0) + intBitsToFloat(0xba0a8ec8))); +R7i.z = clampFI32(R7i.z); +PS1i = R7i.z; +// 16 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R10i.x),intBitsToFloat(R10i.y),intBitsToFloat(R10i.z),-0.0),vec4(intBitsToFloat(0x3e99096c),intBitsToFloat(0x3f162b6b),intBitsToFloat(0x3dea4a8c),0.0))); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +PS0i = floatBitsToInt(float(PV1i.x)); +// 17 +R123i.x = floatBitsToInt((intBitsToFloat(0x3f19999a) * intBitsToFloat(R124i.w) + intBitsToFloat(0x3ecccccd))); +PV1i.x = R123i.x; +PV1i.y = R126i.x & int(1); +PV1i.z = floatBitsToInt(intBitsToFloat(PS0i) * intBitsToFloat(0x3b820821)); +PV1i.w = ((intBitsToFloat(PV0i.x) > 0.0)?int(0xFFFFFFFF):int(0x0)); +PS1i = floatBitsToInt(1.0 / intBitsToFloat(PV0i.x)); +// 18 +PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R11i.z), intBitsToFloat(R11i.z))); +R123i.y = ((PV1i.w == 0)?(0):(PS1i)); +PV0i.y = R123i.y; +R6i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.z), intBitsToFloat(PV1i.x))); +PS0i = floatBitsToInt(float(PV1i.y)); +// 19 +R8i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), intBitsToFloat(PV0i.y))); +R13i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS0i), intBitsToFloat(PV0i.x))); +// 0 +R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[6].x), intBitsToFloat(uf_remappedPS[7].w))); +PV0i.x = R126i.x; +R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[6].y), intBitsToFloat(uf_remappedPS[7].w))); +PV0i.y = R127i.y; +// 1 +R125i.x = floatBitsToInt((intBitsToFloat(PV0i.x) * intBitsToFloat(0xbf4ccccd) + intBitsToFloat(R6i.x))); +R125i.y = floatBitsToInt((intBitsToFloat(PV0i.y) * intBitsToFloat(0xbf4ccccd) + intBitsToFloat(R7i.y))); +PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[6].z), intBitsToFloat(uf_remappedPS[7].w))); +// 2 +R124i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.x), intBitsToFloat(uf_remappedPS[8].x))); +R124i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.y), intBitsToFloat(uf_remappedPS[8].z))); +R125i.z = floatBitsToInt((intBitsToFloat(PV1i.z) * intBitsToFloat(0xbf4ccccd) + intBitsToFloat(R5i.z))); +PV0i.z = R125i.z; +R124i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.z), intBitsToFloat(uf_remappedPS[8].y))); +PS0i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.z), intBitsToFloat(PV1i.z))); +// 3 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R125i.x),intBitsToFloat(R125i.y),intBitsToFloat(PV0i.z),-0.0),vec4(intBitsToFloat(R125i.x),intBitsToFloat(R125i.y),intBitsToFloat(PV0i.z),0.0))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R122i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R7i.y),intBitsToFloat(R127i.y)) + intBitsToFloat(PS0i))); +PS1i = R122i.x; +// 4 +backupReg0i = R126i.x; +R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[7].w), intBitsToFloat(R124i.w))); +R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[7].w), intBitsToFloat(R124i.x))); +R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.x),intBitsToFloat(backupReg0i)) + intBitsToFloat(PS1i))); +PV0i.z = R123i.z; +R126i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[7].w), intBitsToFloat(R124i.y))); +tempResultf = 1.0 / sqrt(intBitsToFloat(PV1i.x)); +PS0i = floatBitsToInt(tempResultf); +// 5 +PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.x), intBitsToFloat(PS0i))); +PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.y), intBitsToFloat(PS0i))); +PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.z), intBitsToFloat(PS0i))); +PV1i.w = floatBitsToInt(max(-(intBitsToFloat(PV0i.z)), 0.0)); +R126i.y = floatBitsToInt((intBitsToFloat(R124i.x) * intBitsToFloat(0x3f4ccccd) + intBitsToFloat(0x3e4ccccd))); +PS1i = R126i.y; +// 6 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R9i.x),intBitsToFloat(R6i.y),intBitsToFloat(R9i.y),-0.0),vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),0.0))); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +R125i.y = floatBitsToInt(min(intBitsToFloat(PV1i.w), 1.0)); +PS0i = R125i.y; +// 7 +PV1i.x = floatBitsToInt(intBitsToFloat(PV0i.x) + 1.0); +PV1i.x = clampFI32(PV1i.x); +PV1i.y = floatBitsToInt(intBitsToFloat(PS0i) * intBitsToFloat(0x40a00000)); +PV1i.y = clampFI32(PV1i.y); +R124i.z = floatBitsToInt((intBitsToFloat(R124i.w) * intBitsToFloat(0x3f4ccccd) + intBitsToFloat(0x3e4ccccd))); +R125i.w = floatBitsToInt((intBitsToFloat(R124i.y) * intBitsToFloat(0x3f4ccccd) + intBitsToFloat(0x3e4ccccd))); +// 8 +R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.x),intBitsToFloat(PV1i.y)) + 1.0)); +PV0i.x = R123i.x; +PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.z), intBitsToFloat(PV1i.x))); +// 9 +R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.w),intBitsToFloat(R125i.y)) + intBitsToFloat(0xbecccccd))); +PV1i.x = R123i.x; +R125i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.x), intBitsToFloat(PV0i.x))); +R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.z), intBitsToFloat(PV0i.x))); +R124i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.w), intBitsToFloat(PV0i.x))); +// 10 +PV0i.w = floatBitsToInt(intBitsToFloat(PV1i.x) * intBitsToFloat(0x42960000)); +PV0i.w = clampFI32(PV0i.w); +// 11 +R125i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.z), intBitsToFloat(PV0i.w))); +PV1i.z = R125i.z; +// 12 +PV0i.y = floatBitsToInt(-(intBitsToFloat(PV1i.z)) + intBitsToFloat(R8i.w)); +// 13 +R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.y),intBitsToFloat(R8i.z)) + intBitsToFloat(R125i.z))); +PV1i.x = R123i.x; +// 14 +backupReg0i = R0i.w; +PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PV1i.x))); +// 15 +PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(R1i.w))); +// 16 +R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.w),intBitsToFloat(PV1i.z)) + intBitsToFloat(R124i.w))); +PV0i.y = R123i.y; +R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.x),intBitsToFloat(PV1i.z)) + intBitsToFloat(R125i.y))); +PV0i.z = R123i.z; +R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.y),intBitsToFloat(PV1i.z)) + intBitsToFloat(R126i.z))); +PV0i.w = R123i.w; +// 17 +R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R10i.z),intBitsToFloat(R8i.x)) + intBitsToFloat(PV0i.y))); +PV1i.y = R123i.y; +R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R10i.y),intBitsToFloat(R8i.x)) + intBitsToFloat(PV0i.z))); +PV1i.z = R123i.z; +R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R10i.x),intBitsToFloat(R8i.x)) + intBitsToFloat(PV0i.w))); +PV1i.w = R123i.w; +// 18 +PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.z), intBitsToFloat(R8i.y))); +PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(R2i.z))); +PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.y), intBitsToFloat(R7i.z))); +// 19 +R123i.x = floatBitsToInt((intBitsToFloat(PV0i.w) * intBitsToFloat(0x3f6e896b) + intBitsToFloat(0x3a011b1e))); +PV1i.x = R123i.x; +R123i.y = floatBitsToInt((intBitsToFloat(PV0i.x) * intBitsToFloat(0x3f6e896b) + intBitsToFloat(0x3a011b1e))); +PV1i.y = R123i.y; +R123i.z = floatBitsToInt((intBitsToFloat(PV0i.y) * intBitsToFloat(0x3f6e896b) + intBitsToFloat(0x3a011b1e))); +PV1i.z = R123i.z; +// 20 +R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.z),intBitsToFloat(R125i.w)) + intBitsToFloat(PV1i.x))); +PV0i.y = R123i.y; +R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.z),intBitsToFloat(R124i.z)) + intBitsToFloat(PV1i.y))); +PV0i.z = R123i.z; +R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.z),intBitsToFloat(R126i.y)) + intBitsToFloat(PV1i.z))); +PV0i.w = R123i.w; +// 21 +R13i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R11i.z),intBitsToFloat(PV0i.w)) + intBitsToFloat(R12i.x))); +R13i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R11i.z),intBitsToFloat(PV0i.z)) + intBitsToFloat(R12i.y))); +R13i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R11i.z),intBitsToFloat(PV0i.y)) + intBitsToFloat(R12i.z))); +// export +passPixelColor0 = vec4(intBitsToFloat(R13i.x), intBitsToFloat(R13i.y), intBitsToFloat(R13i.z), intBitsToFloat(R13i.w)); +float luma = dot(passPixelColor0.rgb, vec3(0.2126, 0.7152, 0.0722)); +passPixelColor0.rgb = vec3(luma); +} diff --git a/Modifications/BreathOfTheWild_Monochromia/53422d4f43914447_0000000000000079_ps.txt b/Modifications/BreathOfTheWild_Monochromia/53422d4f43914447_0000000000000079_ps.txt new file mode 100644 index 00000000..f90c20a8 --- /dev/null +++ b/Modifications/BreathOfTheWild_Monochromia/53422d4f43914447_0000000000000079_ps.txt @@ -0,0 +1,128 @@ +#version 420 +#extension GL_ARB_texture_gather : enable +// shader 53422d4f43914447 +// Monochromia +// Sky +// original shader dumped using cemu 1.11.c, BotW 1.3.1 +uniform ivec4 uf_remappedPS[5]; +layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0x3da26000 res 256x256x1 dim 1 tm: 4 format 0820 compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 2 2 2 border: 1 +layout(location = 0) in vec4 passParameterSem0; +layout(location = 1) in vec4 passParameterSem6; +layout(location = 0) out vec4 passPixelColor0; +uniform vec2 uf_fragCoordScale; +int clampFI32(int v) +{ +if( v == 0x7FFFFFFF ) + return floatBitsToInt(1.0); +else if( v == 0xFFFFFFFF ) + return floatBitsToInt(0.0); +return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); +} +float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } +void main() +{ +vec4 R0f = vec4(0.0); +vec4 R1f = vec4(0.0); +vec4 R2f = vec4(0.0); +vec4 R123f = vec4(0.0); +vec4 R126f = vec4(0.0); +vec4 R127f = vec4(0.0); +float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; +vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); +float PS0f = 0.0, PS1f = 0.0; +vec4 tempf = vec4(0.0); +float tempResultf; +int tempResulti; +ivec4 ARi = ivec4(0); +bool predResult = true; +vec3 cubeMapSTM; +int cubeMapFaceId; +R0f = passParameterSem0; +R1f = passParameterSem6; +// 0 +tempf.x = dot(vec4(R1f.x,R1f.y,R1f.z,-0.0),vec4(R1f.x,R1f.y,R1f.z,0.0)); +PV0f.x = tempf.x; +PV0f.y = tempf.x; +PV0f.z = tempf.x; +PV0f.w = tempf.x; +R126f.x = intBitsToFloat(uf_remappedPS[0].z) + -(intBitsToFloat(uf_remappedPS[0].w)); +PS0f = R126f.x; +// 1 +R2f.w = 1.0; +tempResultf = 1.0 / sqrt(PV0f.x); +PS1f = tempResultf; +// 2 +PV0f.x = mul_nonIEEE(R1f.x, PS1f); +R127f.y = mul_nonIEEE(R1f.y, PS1f); +PV0f.y = R127f.y; +PV0f.z = mul_nonIEEE(R1f.z, PS1f); +// 3 +tempf.x = dot(vec4(intBitsToFloat(uf_remappedPS[1].x),intBitsToFloat(uf_remappedPS[1].y),intBitsToFloat(uf_remappedPS[1].z),-0.0),vec4(PV0f.x,PV0f.y,PV0f.z,0.0)); +tempf.x /= 2.0; +PV1f.x = tempf.x; +PV1f.y = tempf.x; +PV1f.z = tempf.x; +PV1f.w = tempf.x; +PS1f = PV0f.y; +PS1f /= 2.0; +// 4 +R127f.x = PV1f.x + 0.5; +PV0f.x = R127f.x; +PV0f.y = R127f.y; +PV0f.y = clamp(PV0f.y, 0.0, 1.0); +R1f.z = PS1f + 0.5; +// 5 +R123f.x = (PV0f.x * intBitsToFloat(0xbc996e30) + intBitsToFloat(0x3d981626)); +PV1f.x = R123f.x; +PV1f.w = -(PV0f.x) + 1.0; +tempResultf = log2(PV0f.y); +if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; +PS1f = tempResultf; +// 6 +PV0f.x = mul_nonIEEE(PS1f, intBitsToFloat(uf_remappedPS[0].y)); +R123f.z = (mul_nonIEEE(R127f.x,PV1f.x) + intBitsToFloat(0xbe593484)); +PV0f.z = R123f.z; +PS0f = sqrt(PV1f.w); +// 7 +PV1f.x = PS0f * intBitsToFloat(0x3f22f983); +R123f.y = (mul_nonIEEE(R127f.x,PV0f.z) + intBitsToFloat(0x3fc90da4)); +PV1f.y = R123f.y; +PS1f = exp2(PV0f.x); +// 8 +R1f.x = (mul_nonIEEE(PV1f.x,-(PV1f.y)) + 1.0); +R0f.w = (mul_nonIEEE(R126f.x,PS1f) + intBitsToFloat(uf_remappedPS[0].w)); +R1f.xyzw = (texture(textureUnitPS0, R1f.xz).xyzw); +// 0 +R126f.x = R1f.w + intBitsToFloat(uf_remappedPS[2].w); +R126f.x = clamp(R126f.x, 0.0, 1.0); +R127f.y = (mul_nonIEEE(R1f.z,intBitsToFloat(uf_remappedPS[3].x)) + -(intBitsToFloat(uf_remappedPS[2].z))); +R126f.z = mul_nonIEEE(R0f.x, R0f.w); +// 1 +R123f.z = (mul_nonIEEE(R1f.y,intBitsToFloat(uf_remappedPS[3].x)) + -(intBitsToFloat(uf_remappedPS[2].y))); +PV1f.z = R123f.z; +R123f.w = (mul_nonIEEE(R1f.x,intBitsToFloat(uf_remappedPS[3].x)) + -(intBitsToFloat(uf_remappedPS[2].x))); +PV1f.w = R123f.w; +// 2 +backupReg0f = R126f.x; +backupReg1f = R127f.y; +backupReg0f = R126f.x; +backupReg0f = R126f.x; +R126f.x = (mul_nonIEEE(PV1f.w,backupReg0f) + intBitsToFloat(uf_remappedPS[2].x)); +PV0f.x = R126f.x; +R127f.y = (mul_nonIEEE(backupReg1f,backupReg0f) + intBitsToFloat(uf_remappedPS[2].z)); +PV0f.y = R127f.y; +R127f.z = (mul_nonIEEE(PV1f.z,backupReg0f) + intBitsToFloat(uf_remappedPS[2].y)); +PV0f.z = R127f.z; +// 3 +PV1f.x = -(PV0f.z) + intBitsToFloat(uf_remappedPS[4].y); +PV1f.y = -(PV0f.x) + intBitsToFloat(uf_remappedPS[4].x); +PV1f.w = -(PV0f.y) + intBitsToFloat(uf_remappedPS[4].z); +// 4 +R2f.x = (mul_nonIEEE(PV1f.y,R126f.z) + R126f.x); +R2f.y = (mul_nonIEEE(PV1f.x,R126f.z) + R127f.z); +R2f.z = (mul_nonIEEE(PV1f.w,R126f.z) + R127f.y); +// export +passPixelColor0 = vec4(R2f.x, R2f.y, R2f.z, R2f.w); +float luma = dot(passPixelColor0.rgb, vec3(0.2126, 0.7152, 0.0722)); +passPixelColor0.rgb = vec3(luma); +} diff --git a/Modifications/BreathOfTheWild_Monochromia/81bbc347eb4b6dbc_0000000079249749_ps.txt b/Modifications/BreathOfTheWild_Monochromia/81bbc347eb4b6dbc_0000000079249749_ps.txt new file mode 100644 index 00000000..f7302295 --- /dev/null +++ b/Modifications/BreathOfTheWild_Monochromia/81bbc347eb4b6dbc_0000000079249749_ps.txt @@ -0,0 +1,592 @@ +#version 420 +#extension GL_ARB_texture_gather : enable +// shader 81bbc347eb4b6dbc +// Monochromia +// Plants - normal weather +// original shader dumped using cemu 1.11.c, BotW 1.3.1 +#define ENABLE_COLOR_FADE 0 // set this to 1 to enable, 0 to disable the effect + +uniform ivec4 uf_remappedPS[10]; +layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0xf45c6000 res 1280x720x1 dim 1 tm: 4 format 041a compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 2) uniform sampler2D textureUnitPS2;// Tex2 addr 0xf494a800 res 1280x720x1 dim 1 tm: 4 format 001a compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler2 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 4) uniform sampler2D textureUnitPS4;// Tex4 addr 0xf4e91800 res 1280x720x1 dim 1 tm: 4 format 0806 compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler4 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 6) uniform sampler2D textureUnitPS6;// Tex6 addr 0xf5054000 res 640x360x1 dim 1 tm: 4 format 080e compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler6 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 7) uniform sampler2D textureUnitPS7;// Tex7 addr 0xf5846000 res 640x360x1 dim 1 tm: 4 format 0001 compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler7 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 8) uniform samplerCubeArray textureUnitPS8;// Tex8 addr 0x3db66800 res 64x64x1 dim 3 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x4) sliceView: 0x0 (num 0x6) Sampler8 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 10) uniform sampler2DArray textureUnitPS10;// Tex10 addr 0xf5593000 res 640x360x2 dim 5 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x2) Sampler10 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 11) uniform sampler2D textureUnitPS11;// Tex11 addr 0xf575f800 res 640x360x1 dim 1 tm: 4 format 001a compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler11 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 13) uniform sampler2D textureUnitPS13;// Tex13 addr 0xf5977800 res 640x360x1 dim 1 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler13 ClampX/Y/Z: 2 2 2 border: 1 +layout(location = 0) in vec4 passParameterSem0; +layout(location = 1) in vec4 passParameterSem4; +layout(location = 2) in vec4 passParameterSem6; +layout(location = 0) out vec4 passPixelColor0; +uniform vec2 uf_fragCoordScale; +void redcCUBE(vec4 src0, vec4 src1, out vec3 stm, out int faceId) +{ +// stm -> x .. s, y .. t, z .. MajorAxis*2.0 +vec3 inputCoord = normalize(vec3(src1.y, src1.x, src0.x)); +float rx = inputCoord.x; +float ry = inputCoord.y; +float rz = inputCoord.z; +if( abs(rx) > abs(ry) && abs(rx) > abs(rz) ) +{ +stm.z = rx*2.0; +stm.xy = vec2(ry,rz); +if( rx >= 0.0 ) +{ +faceId = 0; +} +else +{ +faceId = 1; +} +} +else if( abs(ry) > abs(rx) && abs(ry) > abs(rz) ) +{ +stm.z = ry*2.0; +stm.xy = vec2(rx,rz); +if( ry >= 0.0 ) +{ +faceId = 2; +} +else +{ +faceId = 3; +} +} +else //if( abs(rz) > abs(ry) && abs(rz) > abs(rx) ) +{ +stm.z = rz*2.0; +stm.xy = vec2(rx,ry); +if( rz >= 0.0 ) +{ +faceId = 4; +} +else +{ +faceId = 5; +} +} +} +vec3 redcCUBEReverse(vec2 st, int faceId) +{ +st.yx = st.xy; +vec3 v; +float majorAxis = 1.0; +if( faceId == 0 ) +{ +v.yz = (st-vec2(1.5))*(majorAxis*2.0); +v.x = 1.0; +} +else if( faceId == 1 ) +{ +v.yz = (st-vec2(1.5))*(majorAxis*2.0); +v.x = -1.0; +} +else if( faceId == 2 ) +{ +v.xz = (st-vec2(1.5))*(majorAxis*2.0); +v.y = 1.0; +} +else if( faceId == 3 ) +{ +v.xz = (st-vec2(1.5))*(majorAxis*2.0); +v.y = -1.0; +} +else if( faceId == 4 ) +{ +v.xy = (st-vec2(1.5))*(majorAxis*2.0); +v.z = 1.0; +} +else +{ +v.xy = (st-vec2(1.5))*(majorAxis*2.0); +v.z = -1.0; +} +return v; +} +int clampFI32(int v) +{ +if( v == 0x7FFFFFFF ) + return floatBitsToInt(1.0); +else if( v == 0xFFFFFFFF ) + return floatBitsToInt(0.0); +return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); +} +float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } +void main() +{ +ivec4 R0i = ivec4(0); +ivec4 R1i = ivec4(0); +ivec4 R2i = ivec4(0); +ivec4 R3i = ivec4(0); +ivec4 R4i = ivec4(0); +ivec4 R5i = ivec4(0); +ivec4 R6i = ivec4(0); +ivec4 R7i = ivec4(0); +ivec4 R8i = ivec4(0); +ivec4 R9i = ivec4(0); +ivec4 R10i = ivec4(0); +ivec4 R123i = ivec4(0); +ivec4 R124i = ivec4(0); +ivec4 R125i = ivec4(0); +ivec4 R126i = ivec4(0); +ivec4 R127i = ivec4(0); +int backupReg0i, backupReg1i, backupReg2i, backupReg3i, backupReg4i; +ivec4 PV0i = ivec4(0), PV1i = ivec4(0); +int PS0i = 0, PS1i = 0; +ivec4 tempi = ivec4(0); +float tempResultf; +int tempResulti; +ivec4 ARi = ivec4(0); +bool predResult = true; +vec3 cubeMapSTM; +int cubeMapFaceId; +float cubeMapArrayIndex8 = 0.0; +R0i = floatBitsToInt(passParameterSem0); +R1i = floatBitsToInt(passParameterSem4); +R2i = floatBitsToInt(passParameterSem6); +R3i.w = floatBitsToInt(texture(textureUnitPS4, intBitsToFloat(R0i.xy)).x); +R7i.xyzw = floatBitsToInt(texture(textureUnitPS2, intBitsToFloat(R2i.zw)).xyzw); +R4i.xyzw = floatBitsToInt(textureGather(textureUnitPS6, intBitsToFloat(R0i.xy)).xyzw); +R5i.xyzw = floatBitsToInt(textureGather(textureUnitPS7, intBitsToFloat(R0i.xy)).xyzw); +R9i.xyzw = floatBitsToInt(texture(textureUnitPS1, intBitsToFloat(R2i.zw)).xyzw); +// 0 +R127i.x = floatBitsToInt(-(intBitsToFloat(R3i.w)) + intBitsToFloat(R4i.y)); +R127i.y = floatBitsToInt(-(intBitsToFloat(R3i.w)) + intBitsToFloat(R4i.w)); +R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.w),intBitsToFloat(uf_remappedPS[0].x)) + intBitsToFloat(uf_remappedPS[1].x))); +PV0i.z = R123i.z; +R124i.w = floatBitsToInt((intBitsToFloat(R7i.x) * 2.0 + -(1.0))); +R2i.y = floatBitsToInt((intBitsToFloat(R7i.y) * 2.0 + -(1.0))); +PS0i = R2i.y; +// 1 +R125i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.z), -(intBitsToFloat(PV0i.z)))); +PV1i.x = R125i.x; +R124i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.w), -(intBitsToFloat(PV0i.z)))); +PV1i.y = R124i.y; +R127i.z = floatBitsToInt(-(intBitsToFloat(PV0i.z))); +PV1i.z = R127i.z; +PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), intBitsToFloat(uf_remappedPS[2].y))); +R124i.z = floatBitsToInt((intBitsToFloat(R7i.z) * 2.0 + -(1.0))); +PS1i = R124i.z; +// 2 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),-0.0),vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),0.0))); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +R126i.y = floatBitsToInt(1.0 / intBitsToFloat(PV1i.w)); +PS0i = R126i.y; +// 3 +R126i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R7i.x),intBitsToFloat(R7i.y),intBitsToFloat(R7i.z),-0.0),vec4(intBitsToFloat(0x3eaaaaab),intBitsToFloat(0x3eaaaaab),intBitsToFloat(0x3eaaaaab),0.0))); +PV1i.x = R126i.x; +PV1i.y = R126i.x; +PV1i.z = R126i.x; +PV1i.w = R126i.x; +PS1i = floatBitsToInt(sqrt(intBitsToFloat(PV0i.x))); +// 4 +R124i.x = floatBitsToInt(-(intBitsToFloat(R3i.w)) + intBitsToFloat(R4i.x)); +R125i.y = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + intBitsToFloat(R5i.y)); +R125i.z = floatBitsToInt(-(intBitsToFloat(R3i.w)) + intBitsToFloat(R4i.z)); +R127i.w = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + intBitsToFloat(R5i.w)); +R126i.w = floatBitsToInt(1.0 / intBitsToFloat(PS1i)); +PS0i = R126i.w; +// 5 +backupReg0i = R127i.x; +backupReg0i = R127i.x; +backupReg1i = R126i.x; +R127i.x = floatBitsToInt(max(intBitsToFloat(R127i.y), -(intBitsToFloat(R127i.y)))); +R127i.y = floatBitsToInt(-(intBitsToFloat(R126i.x)) + intBitsToFloat(R5i.x)); +R126i.z = floatBitsToInt(max(intBitsToFloat(backupReg0i), -(intBitsToFloat(backupReg0i)))); +R125i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].x), intBitsToFloat(R126i.y))); +R126i.x = floatBitsToInt(-(intBitsToFloat(backupReg1i)) + intBitsToFloat(R5i.z)); +PS1i = R126i.x; +// 6 +backupReg0i = R125i.x; +backupReg1i = R127i.z; +R125i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(R126i.w))); +PV0i.y = floatBitsToInt(max(intBitsToFloat(R125i.y), -(intBitsToFloat(R125i.y)))); +PV0i.y = floatBitsToInt(intBitsToFloat(PV0i.y) * 4.0); +R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.y), intBitsToFloat(R126i.w))); +PV0i.w = floatBitsToInt(max(intBitsToFloat(R127i.w), -(intBitsToFloat(R127i.w)))); +PV0i.w = floatBitsToInt(intBitsToFloat(PV0i.w) * 4.0); +R5i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg1i), intBitsToFloat(R126i.w))); +PS0i = R5i.z; +// 7 +backupReg0i = R125i.z; +backupReg0i = R125i.z; +backupReg1i = R127i.x; +backupReg2i = R127i.y; +backupReg2i = R127i.y; +R127i.x = floatBitsToInt(max(intBitsToFloat(R124i.x), -(intBitsToFloat(R124i.x)))); +R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.z),intBitsToFloat(R125i.w)) + intBitsToFloat(PV0i.y))); +R125i.z = floatBitsToInt(max(intBitsToFloat(backupReg0i), -(intBitsToFloat(backupReg0i)))); +R127i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg1i),intBitsToFloat(R125i.w)) + intBitsToFloat(PV0i.w))); +R126i.z = floatBitsToInt(max(intBitsToFloat(backupReg2i), -(intBitsToFloat(backupReg2i)))); +R126i.z = floatBitsToInt(intBitsToFloat(R126i.z) * 4.0); +PS1i = R126i.z; +// 8 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R124i.w),intBitsToFloat(R2i.y),intBitsToFloat(R124i.z),-0.0),vec4(intBitsToFloat(R124i.w),intBitsToFloat(R2i.y),intBitsToFloat(R124i.z),0.0))); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +PS0i = floatBitsToInt(max(intBitsToFloat(R126i.x), -(intBitsToFloat(R126i.x)))); +PS0i = floatBitsToInt(intBitsToFloat(PS0i) * 4.0); +// 9 +backupReg0i = R127i.x; +backupReg1i = R126i.z; +R127i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.z),intBitsToFloat(R125i.w)) + intBitsToFloat(PS0i))); +PV1i.x = R127i.x; +PV1i.y = floatBitsToInt(-(intBitsToFloat(R127i.y)) + intBitsToFloat(R127i.w)); +R126i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(R125i.w)) + intBitsToFloat(backupReg1i))); +PV1i.z = R126i.z; +R127i.w = floatBitsToInt(floor(intBitsToFloat(R1i.x))); +tempResultf = 1.0 / sqrt(intBitsToFloat(PV0i.x)); +PS1i = floatBitsToInt(tempResultf); +// 10 +R6i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.w), intBitsToFloat(PS1i))); +R4i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.y), intBitsToFloat(PS1i))); +R4i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.z), intBitsToFloat(PS1i))); +PV0i.w = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + intBitsToFloat(PV1i.y)); +PS0i = floatBitsToInt(-(intBitsToFloat(PV1i.z)) + intBitsToFloat(PV1i.y)); +// 11 +backupReg0i = R127i.x; +backupReg1i = R126i.z; +backupReg2i = R127i.w; +R127i.x = floatBitsToInt(floor(intBitsToFloat(R1i.y))); +PV1i.x = R127i.x; +R127i.y = floatBitsToInt(intBitsToFloat(R1i.x) + -(intBitsToFloat(R127i.w))); +R126i.z = floatBitsToInt(intBitsToFloat(backupReg0i) + intBitsToFloat(PS0i)); +R127i.w = floatBitsToInt(intBitsToFloat(backupReg1i) + intBitsToFloat(PV0i.w)); +R124i.w = floatBitsToInt(intBitsToFloat(backupReg2i) + -(0.5)); +PS1i = R124i.w; +// 12 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R6i.x),intBitsToFloat(R4i.y),intBitsToFloat(R4i.z),-0.0),vec4(intBitsToFloat(R125i.x),intBitsToFloat(R127i.z),intBitsToFloat(R5i.z),0.0))); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +R125i.w = tempi.x; +PS0i = floatBitsToInt(intBitsToFloat(R1i.y) + -(intBitsToFloat(PV1i.x))); +// 13 +PV1i.x = floatBitsToInt(intBitsToFloat(R126i.z) + intBitsToFloat(PS0i)); +PV1i.x = clampFI32(PV1i.x); +PV1i.y = floatBitsToInt(intBitsToFloat(R127i.w) + intBitsToFloat(R127i.y)); +PV1i.y = clampFI32(PV1i.y); +PV1i.z = floatBitsToInt(intBitsToFloat(R127i.x) + -(0.5)); +PV1i.w = R6i.x; +PV1i.w = floatBitsToInt(intBitsToFloat(PV1i.w) * 2.0); +PS1i = R4i.y; +PS1i = floatBitsToInt(intBitsToFloat(PS1i) * 2.0); +// 14 +PV0i.x = R4i.z; +PV0i.x = floatBitsToInt(intBitsToFloat(PV0i.x) * 2.0); +PV0i.y = floatBitsToInt(intBitsToFloat(PV1i.y) + intBitsToFloat(R124i.w)); +R126i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R125i.w)),intBitsToFloat(PV1i.w)) + intBitsToFloat(R125i.x))); +PV0i.w = floatBitsToInt(intBitsToFloat(PV1i.x) + intBitsToFloat(PV1i.z)); +R127i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R125i.w)),intBitsToFloat(PS1i)) + intBitsToFloat(R127i.z))); +PS0i = R127i.y; +// 15 +R3i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.z), intBitsToFloat(PV0i.y))); +R3i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.w), intBitsToFloat(PV0i.w))); +R124i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R125i.w)),intBitsToFloat(PV0i.x)) + intBitsToFloat(R5i.z))); +PV1i.z = R124i.z; +R3i.w = floatBitsToInt(roundEven(0.0)); +R2i.w = floatBitsToInt((-(intBitsToFloat(R7i.w)) * intBitsToFloat(0x40400000) + intBitsToFloat(0x40400000))); +PS1i = R2i.w; +// 16 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(uf_remappedPS[3].x),intBitsToFloat(uf_remappedPS[3].y),intBitsToFloat(uf_remappedPS[3].z),-0.0),vec4(intBitsToFloat(R126i.z),intBitsToFloat(R127i.y),intBitsToFloat(PV1i.z),0.0))); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +R125i.z = floatBitsToInt(intBitsToFloat(R9i.w) * intBitsToFloat(0x437f0000)); +PS0i = R125i.z; +// 17 +R1i.x = floatBitsToInt(dot(vec4(intBitsToFloat(uf_remappedPS[4].x),intBitsToFloat(uf_remappedPS[4].y),intBitsToFloat(uf_remappedPS[4].z),-0.0),vec4(intBitsToFloat(R126i.z),intBitsToFloat(R127i.y),intBitsToFloat(R124i.z),0.0))); +PV1i.x = R1i.x; +PV1i.y = R1i.x; +PV1i.z = R1i.x; +PV1i.w = R1i.x; +R1i.z = floatBitsToInt(-(intBitsToFloat(PV0i.x))); +PS1i = R1i.z; +// 18 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(uf_remappedPS[5].x),intBitsToFloat(uf_remappedPS[5].y),intBitsToFloat(uf_remappedPS[5].z),-0.0),vec4(intBitsToFloat(R126i.z),intBitsToFloat(R127i.y),intBitsToFloat(R124i.z),0.0))); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +R1i.y = tempi.x; +R6i.y = int(intBitsToFloat(R125i.z)); +PS0i = R6i.y; +// 19 +redcCUBE(vec4(intBitsToFloat(R1i.z),intBitsToFloat(R1i.z),intBitsToFloat(R1i.x),intBitsToFloat(PV0i.x)),vec4(intBitsToFloat(PV0i.x),intBitsToFloat(R1i.x),intBitsToFloat(R1i.z),intBitsToFloat(R1i.z)),cubeMapSTM,cubeMapFaceId); +R126i.x = floatBitsToInt(cubeMapSTM.x); +R126i.y = floatBitsToInt(cubeMapSTM.y); +R126i.z = floatBitsToInt(cubeMapSTM.z); +R126i.w = cubeMapFaceId; +PV1i.x = R126i.x; +PV1i.y = R126i.y; +PV1i.z = R126i.z; +PV1i.w = R126i.w; +R1i.x = floatBitsToInt(intBitsToFloat(R125i.x) + intBitsToFloat(uf_remappedPS[6].x)); +PS1i = R1i.x; +// 20 +R5i.x = floatBitsToInt(intBitsToFloat(R5i.z) + intBitsToFloat(uf_remappedPS[6].z)); +R1i.y = floatBitsToInt(intBitsToFloat(R127i.z) + intBitsToFloat(uf_remappedPS[6].y)); +R2i.z = PV1i.w; +R5i.w = floatBitsToInt(max(-(intBitsToFloat(R125i.w)), 0.0)); +PS0i = floatBitsToInt(1.0 / abs(intBitsToFloat(PV1i.z))); +// 21 +R0i.x = floatBitsToInt(-(intBitsToFloat(R7i.w)) + 1.0); +R5i.y = 0; +R5i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.x),intBitsToFloat(PS0i)) + 1.5)); +R1i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.y),intBitsToFloat(PS0i)) + 1.5)); +R4i.x = R6i.y & 0x000000fc; +PS1i = R4i.x; +// 0 +R2i.x = R1i.w; +R2i.y = R5i.z; +R5i.z = floatBitsToInt(min(intBitsToFloat(R5i.w), 1.0)); +R1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[6].x), intBitsToFloat(uf_remappedPS[7].w))); +R0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[6].y), intBitsToFloat(uf_remappedPS[7].w))); +PS0i = R0i.y; +R10i.xyz = floatBitsToInt(texture(textureUnitPS11, intBitsToFloat(R3i.xy)).xyz); +R8i.xyz = floatBitsToInt(texture(textureUnitPS10, vec3(intBitsToFloat(R3i.x),intBitsToFloat(R3i.y),intBitsToFloat(R3i.w))).xyz); +R2i.xyz = floatBitsToInt(textureLod(textureUnitPS8, vec4(redcCUBEReverse(intBitsToFloat(R2i.xy),R2i.z),cubeMapArrayIndex8),intBitsToFloat(R2i.w)).xyz); +R3i.xyz = floatBitsToInt(texture(textureUnitPS13, intBitsToFloat(R3i.xy)).xyz); +// 0 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R1i.x),intBitsToFloat(R1i.y),intBitsToFloat(R5i.x),-0.0),vec4(intBitsToFloat(R1i.x),intBitsToFloat(R1i.y),intBitsToFloat(R5i.x),0.0))); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[6].z), intBitsToFloat(uf_remappedPS[7].w))); +PS0i = R127i.z; +// 1 +R125i.x = floatBitsToInt(-(intBitsToFloat(R5i.z)) + 1.0); +R123i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R7i.w)),intBitsToFloat(R0i.x)) + intBitsToFloat(R0i.x))); +PV1i.y = R123i.y; +R125i.z = R6i.y & 0x00000002; +R126i.w = 0; +tempResultf = 1.0 / sqrt(intBitsToFloat(PV0i.x)); +PS1i = floatBitsToInt(tempResultf); +// 2 +PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), intBitsToFloat(PS1i))); +PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.x), intBitsToFloat(PS1i))); +PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.y) + intBitsToFloat(0x3c23d70a)); +PV0i.z = clampFI32(PV0i.z); +PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.y), intBitsToFloat(PS1i))); +PS0i = floatBitsToInt(float(R4i.x)); +// 3 +R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(uf_remappedPS[7].w))); +PV1i.x = R126i.x; +R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(uf_remappedPS[7].w))); +PV1i.y = R126i.y; +R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(uf_remappedPS[7].w))); +PV1i.z = R126i.z; +R127i.w = floatBitsToInt(intBitsToFloat(PS0i) * intBitsToFloat(0x3b820821)); +R1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), intBitsToFloat(PV0i.z))); +PS1i = R1i.x; +// 4 +backupReg0i = R0i.y; +backupReg1i = R0i.x; +tempi.x = floatBitsToInt(dot(vec4(-(intBitsToFloat(R1i.w)),-(intBitsToFloat(backupReg0i)),-(intBitsToFloat(R127i.z)),-0.0),vec4(-(intBitsToFloat(PV1i.x)),-(intBitsToFloat(PV1i.y)),-(intBitsToFloat(PV1i.z)),0.0))); +tempi.x = clampFI32(tempi.x); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +R124i.z = tempi.x; +R127i.y = floatBitsToInt((intBitsToFloat(backupReg1i) * 0.5 + 0.5)); +PS0i = R127i.y; +// 5 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R6i.x),intBitsToFloat(R4i.y),intBitsToFloat(R4i.z),intBitsToFloat(R4i.z)),vec4(-(intBitsToFloat(R126i.x)),-(intBitsToFloat(R126i.y)),-(intBitsToFloat(R126i.z)),-(intBitsToFloat(R5i.y))))); +tempi.x = clampFI32(tempi.x); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R126i.y = floatBitsToInt(-(intBitsToFloat(PV0i.x)) + 1.0); +PS1i = R126i.y; +// 6 +backupReg0i = R0i.y; +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R6i.x),intBitsToFloat(R4i.y),intBitsToFloat(R4i.z),intBitsToFloat(R4i.z)),vec4(-(intBitsToFloat(R1i.w)),-(intBitsToFloat(backupReg0i)),-(intBitsToFloat(R127i.z)),-(intBitsToFloat(R126i.w))))); +tempi.x = clampFI32(tempi.x); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +R124i.w = tempi.x; +R126i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(PV1i.x))); +PS0i = R126i.w; +// 7 +backupReg0i = R125i.x; +backupReg0i = R125i.x; +backupReg1i = R127i.y; +backupReg1i = R127i.y; +R125i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R5i.z)),intBitsToFloat(backupReg0i)) + intBitsToFloat(backupReg0i))); +PV1i.x = R125i.x; +R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R10i.x), intBitsToFloat(PV0i.x))); +R4i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg1i), intBitsToFloat(backupReg1i))); +R4i.z = floatBitsToInt(intBitsToFloat(R4i.z) / 2.0); +R125i.w = floatBitsToInt((intBitsToFloat(R127i.w) * 0.25 + 0.25)); +PV1i.w = R125i.w; +R127i.x = floatBitsToInt(float(R125i.z)); +R127i.x = floatBitsToInt(intBitsToFloat(R127i.x) / 2.0); +PS1i = R127i.x; +// 8 +R126i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R124i.z)),intBitsToFloat(R126i.y)) + intBitsToFloat(R126i.y))); +R126i.y = floatBitsToInt((-(intBitsToFloat(R7i.w)) * intBitsToFloat(0x40400000) + 4.0)); +R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(R126i.w)) + -(intBitsToFloat(R126i.w)))); +PV0i.z = R127i.z; +R123i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R5i.z)),intBitsToFloat(PV1i.x)) + intBitsToFloat(PV1i.x))); +PV0i.w = R123i.w; +R125i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R10i.y),-(intBitsToFloat(PV1i.w))) + intBitsToFloat(R10i.y))); +PS0i = R125i.z; +// 9 +PV1i.x = floatBitsToInt(intBitsToFloat(R127i.x) * intBitsToFloat(0x3e19999a)); +R124i.y = floatBitsToInt((intBitsToFloat(R10i.y) * 0.5 + 0.5)); +R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.x), intBitsToFloat(PV0i.w))); +PV1i.w = floatBitsToInt(-(intBitsToFloat(R127i.y)) + 1.0); +R125i.y = floatBitsToInt(intBitsToFloat(PV0i.z) + 1.0); +PS1i = R125i.y; +// 10 +backupReg0i = R127i.y; +backupReg1i = R5i.z; +backupReg1i = R5i.z; +R123i.x = floatBitsToInt((-(intBitsToFloat(R127i.w)) * intBitsToFloat(0x3d23d70a) + intBitsToFloat(0x3d23d70a))); +PV0i.x = R123i.x; +R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R10i.x), intBitsToFloat(uf_remappedPS[8].x))); +R5i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.w),intBitsToFloat(PV1i.x)) + intBitsToFloat(backupReg0i))); +R126i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg1i),-(intBitsToFloat(R4i.z))) + intBitsToFloat(backupReg1i))); +R125i.x = floatBitsToInt(1.0 / intBitsToFloat(R126i.y)); +PS0i = R125i.x; +// 11 +backupReg0i = R125i.y; +backupReg0i = R125i.y; +R124i.x = floatBitsToInt(intBitsToFloat(R125i.w) + intBitsToFloat(R125i.z)); +R125i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(backupReg0i)) + intBitsToFloat(backupReg0i))); +R127i.z = floatBitsToInt(intBitsToFloat(R124i.w) + intBitsToFloat(R124i.y)); +R127i.z = clampFI32(R127i.z); +R123i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R124i.z)),intBitsToFloat(R126i.x)) + intBitsToFloat(R126i.x))); +PV1i.w = R123i.w; +R125i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R9i.x),intBitsToFloat(R127i.w)) + intBitsToFloat(PV0i.x))); +PS1i = R125i.z; +// 12 +backupReg0i = R126i.x; +backupReg1i = R126i.z; +R126i.x = floatBitsToInt(intBitsToFloat(R4i.z) + intBitsToFloat(R126i.w)); +R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.w),-(intBitsToFloat(R4i.z))) + intBitsToFloat(R124i.w))); +PV0i.y = R123i.y; +R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PV1i.w))); +R126i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg1i), intBitsToFloat(R125i.x))); +R125i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.y),-(intBitsToFloat(R127i.x))) + intBitsToFloat(R127i.y))); +PS0i = R125i.x; +// 13 +backupReg0i = R127i.x; +backupReg1i = R127i.z; +backupReg2i = R125i.y; +R127i.x = floatBitsToInt(intBitsToFloat(R4i.z) + intBitsToFloat(PV0i.y)); +R125i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.x),-(intBitsToFloat(backupReg0i))) + intBitsToFloat(R124i.x))); +R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[7].w), intBitsToFloat(uf_remappedPS[7].w))); +R125i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.z), intBitsToFloat(backupReg1i))); +PS1i = floatBitsToInt(1.0 / intBitsToFloat(backupReg2i)); +// 14 +R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.z),-(intBitsToFloat(R126i.w))) + intBitsToFloat(R125i.z))); +PV0i.x = R123i.x; +R124i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.w), intBitsToFloat(R125i.x))); +R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.z),-(intBitsToFloat(R126i.z))) + intBitsToFloat(R125i.z))); +PV0i.z = R123i.z; +R124i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), intBitsToFloat(PS1i))); +R127i.y = floatBitsToInt(1.0 / intBitsToFloat(R126i.x)); +PS0i = R127i.y; +// 15 +backupReg0i = R125i.y; +backupReg1i = R126i.w; +PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(R127i.z))); +R125i.y = floatBitsToInt(intBitsToFloat(R126i.z) + intBitsToFloat(PV0i.z)); +R126i.z = floatBitsToInt(intBitsToFloat(backupReg0i) * intBitsToFloat(0x3f400000)); +R126i.w = floatBitsToInt(intBitsToFloat(backupReg1i) + intBitsToFloat(PV0i.x)); +R127i.z = floatBitsToInt(1.0 / intBitsToFloat(R127i.x)); +PS1i = R127i.z; +// 16 +backupReg0i = R125i.w; +R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[9].x),intBitsToFloat(R125i.w)) + intBitsToFloat(R8i.x))); +PV0i.x = R123i.x; +R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[9].y),intBitsToFloat(R125i.w)) + intBitsToFloat(R8i.y))); +PV0i.y = R123i.y; +PV0i.z = floatBitsToInt(0.25 * intBitsToFloat(R127i.y)); +R125i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[9].z),intBitsToFloat(backupReg0i)) + intBitsToFloat(R8i.z))); +R125i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.y), intBitsToFloat(PV1i.x))); +PS0i = R125i.z; +// 17 +backupReg0i = R126i.z; +R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.y), intBitsToFloat(PV0i.z))); +PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(R124i.w))); +R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(R126i.w))); +R126i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R127i.w)),intBitsToFloat(PV0i.x)) + intBitsToFloat(PV0i.x))); +R127i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R127i.w)),intBitsToFloat(PV0i.y)) + intBitsToFloat(PV0i.y))); +PS1i = R127i.z; +// 18 +R123i.x = floatBitsToInt((intBitsToFloat(R9i.x) * intBitsToFloat(0x3f895ef0) + intBitsToFloat(0xba0a8ec8))); +R123i.x = clampFI32(R123i.x); +PV0i.x = R123i.x; +R123i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R127i.w)),intBitsToFloat(R125i.w)) + intBitsToFloat(R125i.w))); +PV0i.y = R123i.y; +R123i.z = floatBitsToInt((intBitsToFloat(R9i.z) * intBitsToFloat(0x3f895ef0) + intBitsToFloat(0xba0a8ec8))); +R123i.z = clampFI32(R123i.z); +PV0i.z = R123i.z; +R123i.w = floatBitsToInt((intBitsToFloat(R9i.y) * intBitsToFloat(0x3f895ef0) + intBitsToFloat(0xba0a8ec8))); +R123i.w = clampFI32(R123i.w); +PV0i.w = R123i.w; +R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.z), intBitsToFloat(PV1i.y))); +PS0i = R126i.x; +// 19 +R125i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PV0i.w))); +R125i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.w), intBitsToFloat(PV0i.x))); +R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[9].x), intBitsToFloat(R127i.x))); +R9i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(PV0i.z))); +R126i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[9].y), intBitsToFloat(R127i.x))); +PS1i = R126i.w; +// 20 +PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.x), intBitsToFloat(R126i.z))); +PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.z), intBitsToFloat(R126i.z))); +PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[9].z), intBitsToFloat(R127i.x))); +PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.y), intBitsToFloat(R126i.z))); +R9i.x = R6i.y & int(1); +PS0i = R9i.x; +// 21 +R2i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.w),intBitsToFloat(R126i.x)) + intBitsToFloat(PV0i.w))); +R2i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(R126i.x)) + intBitsToFloat(PV0i.x))); +R2i.z = floatBitsToInt((intBitsToFloat(R125i.y) * intBitsToFloat(0x3f6e896b) + intBitsToFloat(0x3a011b1e))); +R7i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.z),intBitsToFloat(R126i.x)) + intBitsToFloat(PV0i.y))); +R6i.y = floatBitsToInt((intBitsToFloat(R125i.x) * intBitsToFloat(0x3f6e896b) + intBitsToFloat(0x3a011b1e))); +PS1i = R6i.y; +// 0 +R123i.x = floatBitsToInt((intBitsToFloat(R9i.w) * intBitsToFloat(0x3f6e896b) + intBitsToFloat(0x3a011b1e))); +PV0i.x = R123i.x; +PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R10i.z), intBitsToFloat(R10i.z))); +PV0i.z = floatBitsToInt(intBitsToFloat(R2i.x) + intBitsToFloat(R6i.y)); +PV0i.w = floatBitsToInt(intBitsToFloat(R2i.y) + intBitsToFloat(R2i.z)); +PS0i = floatBitsToInt(float(R9i.x)); +// 1 +R7i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R10i.z),intBitsToFloat(PV0i.w)) + intBitsToFloat(R3i.x))); +PV1i.y = floatBitsToInt(intBitsToFloat(R7i.w) + intBitsToFloat(PV0i.x)); +R7i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS0i), intBitsToFloat(PV0i.y))); +R7i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R10i.z),intBitsToFloat(PV0i.z)) + intBitsToFloat(R3i.y))); +PS1i = R7i.y; +// 2 +R7i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R10i.z),intBitsToFloat(PV1i.y)) + intBitsToFloat(R3i.z))); +// export +passPixelColor0 = vec4(intBitsToFloat(R7i.x), intBitsToFloat(R7i.y), intBitsToFloat(R7i.z), intBitsToFloat(R7i.w)); +float luma = dot(passPixelColor0.rgb, vec3(0.2126, 0.7152, 0.0722)); +#if (ENABLE_COLOR_FADE == 1) +float depth = texture(textureUnitPS4, passParameterSem0.xy).x; +float factor = smoothstep(0.0005, 0.00075, depth); +passPixelColor0.rgb = mix(passPixelColor0.rgb, vec3(luma), factor); +#else +passPixelColor0.rgb = vec3(luma); +#endif +} diff --git a/Modifications/BreathOfTheWild_Monochromia/8daf3642d5942233_000000007924d249_ps.txt b/Modifications/BreathOfTheWild_Monochromia/8daf3642d5942233_000000007924d249_ps.txt new file mode 100644 index 00000000..36769909 --- /dev/null +++ b/Modifications/BreathOfTheWild_Monochromia/8daf3642d5942233_000000007924d249_ps.txt @@ -0,0 +1,778 @@ +#version 420 +#extension GL_ARB_texture_gather : enable +// shader 8daf3642d5942233 +// Monochromia +// Link's equipment +// original shader dumped using cemu 1.11.c, BotW 1.3.1 +uniform ivec4 uf_remappedPS[9]; +layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0xf45c6000 res 1280x720x1 dim 1 tm: 4 format 041a compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 2) uniform sampler2D textureUnitPS2;// Tex2 addr 0xf494a800 res 1280x720x1 dim 1 tm: 4 format 001a compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler2 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 4) uniform sampler2D textureUnitPS4;// Tex4 addr 0xf4e91800 res 1280x720x1 dim 1 tm: 4 format 0806 compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler4 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 6) uniform sampler2D textureUnitPS6;// Tex6 addr 0xf5054000 res 640x360x1 dim 1 tm: 4 format 080e compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler6 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 8) uniform sampler2DArray textureUnitPS8;// Tex8 addr 0xf5593000 res 640x360x2 dim 5 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x2) Sampler8 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 9) uniform sampler2D textureUnitPS9;// Tex9 addr 0xf575f800 res 640x360x1 dim 1 tm: 4 format 001a compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler9 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 11) uniform sampler2D textureUnitPS11;// Tex11 addr 0xf5977800 res 640x360x1 dim 1 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler11 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 12) uniform sampler2D textureUnitPS12;// Tex12 addr 0xf4240800 res 1280x720x1 dim 1 tm: 4 format 080e compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler12 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 13) uniform sampler2D textureUnitPS13;// Tex13 addr 0xf528a800 res 640x360x1 dim 1 tm: 4 format 001a compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler13 ClampX/Y/Z: 2 2 2 border: 1 +layout(location = 0) in vec4 passParameterSem0; +layout(location = 1) in vec4 passParameterSem1; +layout(location = 2) in vec4 passParameterSem2; +layout(location = 3) in vec4 passParameterSem4; +layout(location = 4) in vec4 passParameterSem6; +layout(location = 0) out vec4 passPixelColor0; +uniform vec2 uf_fragCoordScale; +int clampFI32(int v) +{ +if( v == 0x7FFFFFFF ) + return floatBitsToInt(1.0); +else if( v == 0xFFFFFFFF ) + return floatBitsToInt(0.0); +return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); +} +float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } +void main() +{ +ivec4 R0i = ivec4(0); +ivec4 R1i = ivec4(0); +ivec4 R2i = ivec4(0); +ivec4 R3i = ivec4(0); +ivec4 R4i = ivec4(0); +ivec4 R5i = ivec4(0); +ivec4 R6i = ivec4(0); +ivec4 R7i = ivec4(0); +ivec4 R8i = ivec4(0); +ivec4 R9i = ivec4(0); +ivec4 R10i = ivec4(0); +ivec4 R11i = ivec4(0); +ivec4 R12i = ivec4(0); +ivec4 R13i = ivec4(0); +ivec4 R14i = ivec4(0); +ivec4 R15i = ivec4(0); +ivec4 R16i = ivec4(0); +ivec4 R17i = ivec4(0); +ivec4 R18i = ivec4(0); +ivec4 R19i = ivec4(0); +ivec4 R20i = ivec4(0); +ivec4 R21i = ivec4(0); +ivec4 R22i = ivec4(0); +ivec4 R23i = ivec4(0); +ivec4 R24i = ivec4(0); +ivec4 R122i = ivec4(0); +ivec4 R123i = ivec4(0); +ivec4 R124i = ivec4(0); +ivec4 R125i = ivec4(0); +ivec4 R126i = ivec4(0); +ivec4 R127i = ivec4(0); +int backupReg0i, backupReg1i, backupReg2i, backupReg3i, backupReg4i; +ivec4 PV0i = ivec4(0), PV1i = ivec4(0); +int PS0i = 0, PS1i = 0; +ivec4 tempi = ivec4(0); +float tempResultf; +int tempResulti; +ivec4 ARi = ivec4(0); +bool predResult = true; +vec3 cubeMapSTM; +int cubeMapFaceId; +R0i = floatBitsToInt(passParameterSem0); +R1i = floatBitsToInt(passParameterSem1); +R2i = floatBitsToInt(passParameterSem2); +R3i = floatBitsToInt(passParameterSem4); +R4i = floatBitsToInt(passParameterSem6); +R8i.xyzw = floatBitsToInt(texture(textureUnitPS1, intBitsToFloat(R4i.zw)).xyzw); +R7i.xyzw = floatBitsToInt(texture(textureUnitPS2, intBitsToFloat(R4i.zw)).xyzw); +R4i.w = floatBitsToInt(texture(textureUnitPS12, intBitsToFloat(R0i.xy)).x); +R5i.xyzw = floatBitsToInt(textureGather(textureUnitPS6, intBitsToFloat(R0i.xy)).xyzw); +// 0 +backupReg0i = R4i.w; +PV0i.x = floatBitsToInt(intBitsToFloat(R8i.w) * intBitsToFloat(0x437f0000)); +R126i.y = floatBitsToInt((intBitsToFloat(R7i.x) * 2.0 + -(1.0))); +PV0i.y = R126i.y; +R127i.z = floatBitsToInt((intBitsToFloat(R7i.y) * 2.0 + -(1.0))); +PV0i.z = R127i.z; +R4i.w = floatBitsToInt((intBitsToFloat(R7i.z) * 2.0 + -(1.0))); +PV0i.w = R4i.w; +R127i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(backupReg0i)),intBitsToFloat(uf_remappedPS[0].w)) + 1.0)); +PS0i = R127i.y; +// 1 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),intBitsToFloat(PV0i.w),-0.0),vec4(intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),intBitsToFloat(PV0i.w),0.0))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R10i.w = int(intBitsToFloat(PV0i.x)); +PS1i = R10i.w; +// 2 +R127i.x = 0x358637bd; +R4i.y = 0; +PV0i.z = PS1i >> 0x00000005; +PV0i.w = floatBitsToInt(floor(intBitsToFloat(R3i.x))); +R4i.x = floatBitsToInt(sqrt(intBitsToFloat(PV1i.x))); +PS0i = R4i.x; +// 3 +backupReg0i = R127i.y; +PV1i.x = floatBitsToInt(floor(intBitsToFloat(R3i.y))); +R127i.y = PV0i.z & 0x00000007; +R125i.z = floatBitsToInt(intBitsToFloat(PV0i.w) + -(0.5)); +R124i.w = floatBitsToInt(intBitsToFloat(R3i.x) + -(intBitsToFloat(PV0i.w))); +PS1i = floatBitsToInt(1.0 / intBitsToFloat(backupReg0i)); +// 4 +R125i.x = floatBitsToInt(intBitsToFloat(PV1i.x) + -(0.5)); +R125i.y = floatBitsToInt(intBitsToFloat(R3i.y) + -(intBitsToFloat(PV1i.x))); +R14i.z = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(uf_remappedPS[0].x)), intBitsToFloat(PS1i))); +PV0i.z = R14i.z; +R9i.w = floatBitsToInt(roundEven(0.0)); +R6i.w = floatBitsToInt(1.0 / intBitsToFloat(R4i.x)); +PS0i = R6i.w; +// 5 +R6i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(PS0i))); +R6i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PS0i))); +R127i.z = floatBitsToInt(intBitsToFloat(uf_remappedPS[0].x) + intBitsToFloat(PV0i.z)); +PV1i.z = R127i.z; +PV1i.w = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(PV0i.z)), intBitsToFloat(uf_remappedPS[1].y))); +PS1i = floatBitsToInt(float(R127i.y)); +// 6 +R126i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.z),intBitsToFloat(uf_remappedPS[2].x)) + intBitsToFloat(R5i.w))); +R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.z),intBitsToFloat(uf_remappedPS[2].x)) + intBitsToFloat(R5i.y))); +R126i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.z),intBitsToFloat(uf_remappedPS[2].x)) + intBitsToFloat(R5i.x))); +PV0i.w = floatBitsToInt(intBitsToFloat(PS1i) + intBitsToFloat(0xc0000000)); +R124i.y = floatBitsToInt(1.0 / intBitsToFloat(PV1i.w)); +PS0i = R124i.y; +// 7 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R6i.x),intBitsToFloat(R6i.y),intBitsToFloat(R127i.x),-0.0),vec4(intBitsToFloat(R6i.x),intBitsToFloat(R6i.y),intBitsToFloat(R127i.x),0.0))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +PS1i = floatBitsToInt(exp2(intBitsToFloat(PV0i.w))); +// 8 +backupReg0i = R127i.y; +backupReg0i = R127i.y; +R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(uf_remappedPS[2].x)) + intBitsToFloat(R5i.z))); +PV0i.x = R123i.x; +R127i.y = floatBitsToInt(max(intBitsToFloat(backupReg0i), -(intBitsToFloat(backupReg0i)))); +R6i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.y), intBitsToFloat(PS1i))); +PV0i.z = R6i.z; +R127i.w = floatBitsToInt(max(intBitsToFloat(R126i.x), -(intBitsToFloat(R126i.x)))); +tempResultf = 1.0 / sqrt(intBitsToFloat(PV1i.x)); +R126i.w = floatBitsToInt(tempResultf); +PS0i = R126i.w; +// 9 +R126i.x = floatBitsToInt(max(intBitsToFloat(R126i.z), -(intBitsToFloat(R126i.z)))); +PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.y), intBitsToFloat(PS0i))); +R126i.z = floatBitsToInt(min(intBitsToFloat(PV0i.z), 2.0)); +R125i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.y), intBitsToFloat(uf_remappedPS[3].x))); +PV1i.w = R125i.w; +R127i.z = floatBitsToInt(max(intBitsToFloat(PV0i.x), -(intBitsToFloat(PV0i.x)))); +PS1i = R127i.z; +// 10 +PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.x), intBitsToFloat(R126i.w))); +R126i.y = R6i.z; +R126i.y = clampFI32(R126i.y); +PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), intBitsToFloat(PV1i.w))); +PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.w), intBitsToFloat(PV1i.w))); +R127i.y = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(uf_remappedPS[4].w)), intBitsToFloat(PV1i.y))); +PS0i = R127i.y; +// 11 +backupReg0i = R125i.w; +PV1i.x = floatBitsToInt(-(intBitsToFloat(PV0i.z)) + intBitsToFloat(PV0i.w)); +PV1i.y = floatBitsToInt(intBitsToFloat(R126i.z) * intBitsToFloat(0x40c00000)); +R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.x), intBitsToFloat(R125i.w))); +PV1i.z = R126i.z; +R125i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(backupReg0i))); +PV1i.w = R125i.w; +R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[4].z), intBitsToFloat(PV0i.x))); +PS1i = R127i.z; +// 12 +PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), intBitsToFloat(PV1i.y))); +PV0i.y = floatBitsToInt(-(intBitsToFloat(PV1i.z)) + intBitsToFloat(PV1i.x)); +PV0i.z = floatBitsToInt(-(intBitsToFloat(PV1i.w)) + intBitsToFloat(PV1i.x)); +PV0i.w = R126i.y; +PV0i.w = floatBitsToInt(intBitsToFloat(PV0i.w) * 2.0); +R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS1i), intBitsToFloat(PV1i.y))); +PS0i = R127i.w; +// 13 +backupReg0i = R0i.y; +R10i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(PV0i.w)) + intBitsToFloat(R0i.x))); +PV1i.y = floatBitsToInt(intBitsToFloat(PV0i.x) * intBitsToFloat(0x3e4ccccd)); +R10i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.y),intBitsToFloat(PV0i.w)) + intBitsToFloat(backupReg0i))); +PV1i.w = floatBitsToInt(intBitsToFloat(R125i.w) + intBitsToFloat(PV0i.y)); +PS1i = floatBitsToInt(intBitsToFloat(R126i.z) + intBitsToFloat(PV0i.z)); +// 14 +R5i.x = floatBitsToInt(intBitsToFloat(R0i.x) + intBitsToFloat(R127i.w)); +R5i.y = floatBitsToInt(intBitsToFloat(R0i.y) + intBitsToFloat(PV1i.y)); +R9i.z = floatBitsToInt(intBitsToFloat(R126i.y) * intBitsToFloat(0x40400000)); +PV0i.w = floatBitsToInt(intBitsToFloat(PS1i) + intBitsToFloat(R124i.w)); +PV0i.w = clampFI32(PV0i.w); +PS0i = floatBitsToInt(intBitsToFloat(PV1i.w) + intBitsToFloat(R125i.y)); +PS0i = clampFI32(PS0i); +// 15 +PV1i.x = floatBitsToInt(intBitsToFloat(PS0i) + intBitsToFloat(R125i.x)); +R10i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.z), intBitsToFloat(R14i.z))); +R13i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.w), intBitsToFloat(R14i.z))); +PV1i.w = floatBitsToInt(intBitsToFloat(PV0i.w) + intBitsToFloat(R125i.z)); +R4i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.w), intBitsToFloat(R6i.w))); +PS1i = R4i.z; +// 16 +R9i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.z), intBitsToFloat(PV1i.w))); +R9i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.w), intBitsToFloat(PV1i.x))); +R11i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(R10i.z)) + intBitsToFloat(R1i.w))); +R4i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(R10i.x)) + intBitsToFloat(R1i.z))); +R12i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(R5i.x)) + intBitsToFloat(R1i.z))); +PS0i = R12i.z; +// 17 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R10i.y),intBitsToFloat(R13i.z),intBitsToFloat(R14i.z),-0.0),vec4(intBitsToFloat(R10i.y),intBitsToFloat(R13i.z),intBitsToFloat(R14i.z),0.0))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R6i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(R5i.y)) + intBitsToFloat(R1i.w))); +PS1i = R6i.w; +// 18 +R11i.x = floatBitsToInt(intBitsToFloat(0x3df5c28f) * intBitsToFloat(uf_remappedPS[1].z)); +PV0i.y = floatBitsToInt(intBitsToFloat(R6i.z) * intBitsToFloat(0x40c00000)); +R125i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R7i.w), intBitsToFloat(R7i.w))); +R7i.w = 0; +PS0i = floatBitsToInt(sqrt(intBitsToFloat(PV1i.x))); +// 19 +PV1i.x = floatBitsToInt(intBitsToFloat(PV0i.y) * intBitsToFloat(0x3e4ccccd)); +PV1i.x = clampFI32(PV1i.x); +PV1i.y = floatBitsToInt(max(intBitsToFloat(R8i.y), intBitsToFloat(R8i.z))); +R3i.z = floatBitsToInt((intBitsToFloat(R124i.y) * intBitsToFloat(0x3dcccccd) + 1.0)); +R11i.w = PV0i.y; +R11i.w = clampFI32(R11i.w); +PS1i = floatBitsToInt(1.0 / intBitsToFloat(PS0i)); +// 20 +R3i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R10i.y), intBitsToFloat(PS1i))); +PV0i.x = R3i.x; +R11i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R13i.z), intBitsToFloat(PS1i))); +PV0i.y = R11i.y; +R15i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R14i.z), intBitsToFloat(PS1i))); +PV0i.z = R15i.z; +R5i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(R125i.z))); +R18i.w = floatBitsToInt(max(intBitsToFloat(R8i.x), intBitsToFloat(PV1i.y))); +PS0i = R18i.w; +// 21 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R6i.x),intBitsToFloat(R6i.y),intBitsToFloat(R4i.z),-0.0),vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),0.0))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R7i.z = tempi.x; +R5i.z = floatBitsToInt(min(intBitsToFloat(R8i.y), intBitsToFloat(R8i.z))); +PS1i = R5i.z; +// 0 +backupReg0i = R7i.z; +R7i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[5].x), intBitsToFloat(uf_remappedPS[6].w))); +PV0i.x = R7i.x; +R124i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[5].y), intBitsToFloat(uf_remappedPS[6].w))); +PV0i.y = R124i.y; +R7i.z = floatBitsToInt(intBitsToFloat(backupReg0i) + 1.0); +R7i.z = clampFI32(R7i.z); +R125i.w = floatBitsToInt(intBitsToFloat(R18i.w) + intBitsToFloat(0x2edbe6ff)); +R18i.z = R6i.z; +R18i.z = floatBitsToInt(intBitsToFloat(R18i.z) * 4.0); +R18i.z = clampFI32(R18i.z); +PS0i = R18i.z; +// 1 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(R4i.y),-0.0),vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(R4i.y),0.0))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R124i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[5].z), intBitsToFloat(uf_remappedPS[6].w))); +PS1i = R124i.z; +// 2 +R126i.x = floatBitsToInt((intBitsToFloat(R3i.x) * intBitsToFloat(0xbe99999a) + -(intBitsToFloat(R7i.x)))); +PV0i.y = floatBitsToInt(-(intBitsToFloat(R7i.z)) + 1.0); +R125i.z = floatBitsToInt((intBitsToFloat(R11i.y) * intBitsToFloat(0xbe99999a) + -(intBitsToFloat(R124i.y)))); +R124i.w = floatBitsToInt((intBitsToFloat(R15i.z) * intBitsToFloat(0xbe99999a) + -(intBitsToFloat(PS1i)))); +tempResultf = 1.0 / sqrt(intBitsToFloat(PV1i.x)); +PS0i = floatBitsToInt(tempResultf); +// 3 +R124i.x = floatBitsToInt((intBitsToFloat(R7i.x) * intBitsToFloat(0xbf4ccccd) + intBitsToFloat(R3i.x))); +R4i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R7i.x), intBitsToFloat(PS0i))); +R127i.z = floatBitsToInt((intBitsToFloat(R124i.y) * intBitsToFloat(0xbf4ccccd) + intBitsToFloat(R11i.y))); +R3i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.y), intBitsToFloat(PS0i))); +tempResultf = log2(intBitsToFloat(PV0i.y)); +if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; +R127i.w = floatBitsToInt(tempResultf); +PS1i = R127i.w; +// 4 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R126i.x),intBitsToFloat(R125i.z),intBitsToFloat(R124i.w),-0.0),vec4(intBitsToFloat(R126i.x),intBitsToFloat(R125i.z),intBitsToFloat(R124i.w),0.0))); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +R125i.x = floatBitsToInt(intBitsToFloat(PS1i) * intBitsToFloat(0x3e4ccccd)); +PS0i = R125i.x; +// 5 +R127i.x = floatBitsToInt(intBitsToFloat(R127i.w) * intBitsToFloat(0x41000000)); +R125i.y = R10i.w & 0x0000001c; +R126i.z = floatBitsToInt((intBitsToFloat(R124i.z) * intBitsToFloat(0xbf4ccccd) + intBitsToFloat(R15i.z))); +R12i.w = floatBitsToInt(intBitsToFloat(R3i.z) * intBitsToFloat(0x42960000)); +tempResultf = 1.0 / sqrt(intBitsToFloat(PV0i.x)); +PS1i = floatBitsToInt(tempResultf); +// 6 +PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.x), intBitsToFloat(PS1i))); +PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.z), intBitsToFloat(PS1i))); +PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.w), intBitsToFloat(PS1i))); +R127i.w = floatBitsToInt((intBitsToFloat(R4i.x) * 4.0 + intBitsToFloat(0xc0400000))); +R127i.w = clampFI32(R127i.w); +R3i.z = floatBitsToInt(exp2(intBitsToFloat(R125i.x))); +PS0i = R3i.z; +// 7 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R6i.x),intBitsToFloat(R6i.y),intBitsToFloat(R4i.z),-0.0),vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),0.0))); +tempi.x = clampFI32(tempi.x); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R3i.y = floatBitsToInt(exp2(intBitsToFloat(R127i.x))); +PS1i = R3i.y; +// 8 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R124i.x),intBitsToFloat(R127i.z),intBitsToFloat(R126i.z),-0.0),vec4(intBitsToFloat(R124i.x),intBitsToFloat(R127i.z),intBitsToFloat(R126i.z),0.0))); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +tempResultf = log2(intBitsToFloat(PV1i.x)); +if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; +R124i.w = floatBitsToInt(tempResultf); +PS0i = R124i.w; +// 9 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R6i.x),intBitsToFloat(R6i.y),intBitsToFloat(R4i.z),intBitsToFloat(R4i.z)),vec4(-(intBitsToFloat(R7i.x)),-(intBitsToFloat(R124i.y)),-(intBitsToFloat(R124i.z)),-(intBitsToFloat(R7i.w))))); +tempi.x = clampFI32(tempi.x); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R12i.y = tempi.x; +tempResultf = 1.0 / sqrt(intBitsToFloat(PV0i.x)); +PS1i = floatBitsToInt(tempResultf); +// 10 +R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.x), intBitsToFloat(PS1i))); +R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PS1i))); +PV0i.z = floatBitsToInt(intBitsToFloat(R124i.w) * intBitsToFloat(0x41400000)); +R124i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.z), intBitsToFloat(PS1i))); +tempResultf = log2(intBitsToFloat(R7i.z)); +if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; +R124i.x = floatBitsToInt(tempResultf); +PS0i = R124i.x; +// 11 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R3i.x),intBitsToFloat(R11i.y),intBitsToFloat(R15i.z),-0.0),vec4(intBitsToFloat(R7i.x),intBitsToFloat(R124i.y),intBitsToFloat(R124i.z),0.0))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R13i.y = floatBitsToInt(exp2(intBitsToFloat(PV0i.z))); +PS1i = R13i.y; +// 12 +backupReg0i = R124i.x; +R124i.x = floatBitsToInt(max(-(intBitsToFloat(PV1i.x)), 0.0)); +R7i.y = floatBitsToInt(min(intBitsToFloat(R8i.x), intBitsToFloat(R5i.z))); +R5i.z = floatBitsToInt((-(intBitsToFloat(PV1i.x)) * intBitsToFloat(0x40a00000) + intBitsToFloat(0x40a00000))); +R5i.z = clampFI32(R5i.z); +PV0i.w = floatBitsToInt(intBitsToFloat(backupReg0i) * intBitsToFloat(0x3ecccccd)); +R16i.y = floatBitsToInt(1.0 / intBitsToFloat(R125i.w)); +PS0i = R16i.y; +// 13 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R6i.x),intBitsToFloat(R6i.y),intBitsToFloat(R4i.z),-0.0),vec4(intBitsToFloat(R127i.x),intBitsToFloat(R126i.y),intBitsToFloat(R124i.w),0.0))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R16i.z = floatBitsToInt(exp2(intBitsToFloat(PV0i.w))); +PS1i = R16i.z; +// 14 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R6i.x),intBitsToFloat(R6i.y),intBitsToFloat(R4i.z),-0.0),vec4(intBitsToFloat(uf_remappedPS[5].x),intBitsToFloat(uf_remappedPS[5].y),intBitsToFloat(uf_remappedPS[5].z),0.0))); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +R4i.z = floatBitsToInt(intBitsToFloat(PV1i.x) + 1.0); +R4i.z = clampFI32(R4i.z); +PS0i = R4i.z; +// 15 +R7i.x = floatBitsToInt(intBitsToFloat(R127i.w) + -(0.5)); +R7i.x = floatBitsToInt(intBitsToFloat(R7i.x) * 4.0); +R7i.x = clampFI32(R7i.x); +PV1i.y = R6i.z; +PV1i.y = floatBitsToInt(intBitsToFloat(PV1i.y) * 2.0); +PV1i.y = clampFI32(PV1i.y); +R17i.z = floatBitsToInt(min(intBitsToFloat(R124i.x), 1.0)); +PV1i.z = R17i.z; +PV1i.w = floatBitsToInt(max(-(intBitsToFloat(PV0i.x)), 0.0)); +tempResultf = log2(intBitsToFloat(R18i.w)); +if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; +PS1i = floatBitsToInt(tempResultf); +// 16 +R6i.x = floatBitsToInt(min(intBitsToFloat(PV1i.w), 1.0)); +R6i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R7i.y)),intBitsToFloat(R16i.y)) + 1.0)); +R19i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R7i.z), intBitsToFloat(PV1i.z))); +R13i.w = floatBitsToInt(intBitsToFloat(PV1i.y) * 0.25); +R126i.y = floatBitsToInt(intBitsToFloat(PS1i) * intBitsToFloat(0x3f19999a)); +PS0i = R126i.y; +// 17 +R124i.x = R10i.w & 0x00000002; +R15i.y = floatBitsToInt(intBitsToFloat(R2i.z) * intBitsToFloat(0x3f4ccccd)); +R21i.z = floatBitsToInt(intBitsToFloat(R2i.y) * intBitsToFloat(0x3f4ccccd)); +R14i.w = floatBitsToInt(intBitsToFloat(R2i.x) * intBitsToFloat(0x3f4ccccd)); +PS1i = floatBitsToInt(float(R125i.y)); +// 18 +backupReg0i = R126i.y; +R123i.x = floatBitsToInt((-(intBitsToFloat(R6i.y)) * intBitsToFloat(0x40400000) + intBitsToFloat(0x40400000))); +PV0i.x = R123i.x; +R126i.y = floatBitsToInt(intBitsToFloat(R6i.y) + intBitsToFloat(0x2edbe6ff)); +R124i.z = floatBitsToInt(intBitsToFloat(R7i.x) + intBitsToFloat(0x3f4ccccd)); +R124i.z = clampFI32(R124i.z); +R15i.w = floatBitsToInt(intBitsToFloat(PS1i) * intBitsToFloat(0x3d124925)); +PS0i = floatBitsToInt(exp2(intBitsToFloat(backupReg0i))); +// 19 +R4i.x = floatBitsToInt(intBitsToFloat(uf_remappedPS[7].x) + -(intBitsToFloat(R14i.w))); +R14i.y = floatBitsToInt(intBitsToFloat(uf_remappedPS[7].z) + -(intBitsToFloat(R15i.y))); +R20i.z = floatBitsToInt(intBitsToFloat(uf_remappedPS[7].y) + -(intBitsToFloat(R21i.z))); +R17i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),intBitsToFloat(PS0i)) + intBitsToFloat(PS0i))); +R16i.w = floatBitsToInt(float(R124i.x)); +R16i.w = floatBitsToInt(intBitsToFloat(R16i.w) / 2.0); +PS1i = R16i.w; +// 20 +R13i.x = floatBitsToInt(-(intBitsToFloat(R7i.y)) + intBitsToFloat(R18i.w)); +R17i.y = floatBitsToInt(intBitsToFloat(R8i.x) + -(intBitsToFloat(R7i.y))); +R6i.z = floatBitsToInt(intBitsToFloat(R124i.z) + -(1.0)); +R7i.w = floatBitsToInt(intBitsToFloat(R17i.z) * intBitsToFloat(0x40a00000)); +R7i.w = clampFI32(R7i.w); +R12i.x = floatBitsToInt(1.0 / intBitsToFloat(R126i.y)); +PS0i = R12i.x; +// 0 +PV0i.x = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(uf_remappedPS[4].w)), intBitsToFloat(R3i.w))); +R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.z),intBitsToFloat(R7i.w)) + 1.0)); +PV0i.y = R123i.y; +PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[4].z), intBitsToFloat(R4i.y))); +R19i.w = floatBitsToInt(intBitsToFloat(R8i.y) + -(intBitsToFloat(R7i.y))); +R8i.x = floatBitsToInt(intBitsToFloat(R8i.z) + -(intBitsToFloat(R7i.y))); +PS0i = R8i.x; +// 1 +backupReg0i = R0i.x; +backupReg1i = R0i.y; +R0i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.z),intBitsToFloat(R9i.z)) + intBitsToFloat(backupReg0i))); +R0i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),intBitsToFloat(R9i.z)) + intBitsToFloat(backupReg1i))); +R0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.x), intBitsToFloat(PV0i.y))); +R8i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.y), intBitsToFloat(PV0i.y))); +R9i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.z), intBitsToFloat(PV0i.y))); +PS1i = R9i.z; +R0i.w = floatBitsToInt(texture(textureUnitPS4, intBitsToFloat(R10i.xz)).x); +R5i.x = floatBitsToInt(texture(textureUnitPS4, intBitsToFloat(R5i.xy)).x); +R3i.w = floatBitsToInt(texture(textureUnitPS4, intBitsToFloat(R0i.xy)).x); +R7i.w = floatBitsToInt(texture(textureUnitPS13, intBitsToFloat(R9i.xy)).w); +R23i.xyz = floatBitsToInt(texture(textureUnitPS9, intBitsToFloat(R9i.xy)).xyz); +R22i.xyz = floatBitsToInt(texture(textureUnitPS8, vec3(intBitsToFloat(R9i.x),intBitsToFloat(R9i.y),intBitsToFloat(R9i.w))).xyz); +R24i.xyz = floatBitsToInt(texture(textureUnitPS11, intBitsToFloat(R9i.xy)).xyz); +// 0 +R124i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[3].x),intBitsToFloat(R5i.x)) + intBitsToFloat(uf_remappedPS[0].x))); +PV0i.x = R124i.x; +R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[3].x),intBitsToFloat(R0i.w)) + intBitsToFloat(uf_remappedPS[0].x))); +PV0i.y = R123i.y; +R124i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(R0i.y)) + intBitsToFloat(R1i.w))); +R127i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(R0i.x)) + intBitsToFloat(R1i.z))); +R126i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[3].x),intBitsToFloat(R3i.w)) + intBitsToFloat(uf_remappedPS[0].x))); +PS0i = R126i.x; +// 1 +R127i.x = floatBitsToInt(-(intBitsToFloat(PV0i.x))); +PV1i.y = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(PV0i.y)), intBitsToFloat(R4i.w))); +PV1i.z = floatBitsToInt(-(intBitsToFloat(PV0i.y))); +PV1i.w = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(PV0i.y)), intBitsToFloat(R11i.z))); +PS1i = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(PV0i.x)), intBitsToFloat(R12i.z))); +// 2 +backupReg0i = R124i.x; +R124i.x = floatBitsToInt(-(intBitsToFloat(R10i.y)) + intBitsToFloat(PV1i.y)); +PV0i.x = R124i.x; +R126i.y = floatBitsToInt(-(intBitsToFloat(R13i.z)) + intBitsToFloat(PV1i.w)); +PV0i.y = R126i.y; +R127i.z = floatBitsToInt(-(intBitsToFloat(R14i.z)) + intBitsToFloat(PV1i.z)); +PV0i.z = R127i.z; +PV0i.w = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(backupReg0i)), intBitsToFloat(R6i.w))); +R125i.x = floatBitsToInt(-(intBitsToFloat(R10i.y)) + intBitsToFloat(PS1i)); +PS0i = R125i.x; +// 3 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R3i.x),intBitsToFloat(R11i.y),intBitsToFloat(R15i.z),-0.0),vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),0.0))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R124i.w = tempi.x; +R124i.y = floatBitsToInt(-(intBitsToFloat(R13i.z)) + intBitsToFloat(PV0i.w)); +PS1i = R124i.y; +// 4 +backupReg0i = R124i.z; +PV0i.x = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(R126i.x)), intBitsToFloat(R127i.w))); +PV0i.y = floatBitsToInt(-(intBitsToFloat(R126i.x))); +R124i.z = floatBitsToInt(-(intBitsToFloat(R14i.z)) + intBitsToFloat(R127i.x)); +PV0i.w = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(R126i.x)), intBitsToFloat(backupReg0i))); +R125i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R7i.w), intBitsToFloat(R3i.z))); +PS0i = R125i.y; +// 5 +backupReg0i = R124i.x; +backupReg1i = R126i.y; +R124i.x = floatBitsToInt(-(intBitsToFloat(R10i.y)) + intBitsToFloat(PV0i.x)); +R127i.y = floatBitsToInt(-(intBitsToFloat(R13i.z)) + intBitsToFloat(PV0i.w)); +R126i.z = floatBitsToInt(-(intBitsToFloat(R14i.z)) + intBitsToFloat(PV0i.y)); +R127i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R3i.x)),intBitsToFloat(R124i.w)) + intBitsToFloat(backupReg0i))); +R126i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R11i.y)),intBitsToFloat(R124i.w)) + intBitsToFloat(backupReg1i))); +PS1i = R126i.y; +// 6 +backupReg0i = R127i.z; +backupReg1i = R125i.y; +R127i.x = floatBitsToInt((intBitsToFloat(R125i.y) * intBitsToFloat(0x3e99999a) + intBitsToFloat(0xbecccccd))); +R125i.y = floatBitsToInt(intBitsToFloat(R23i.x) + intBitsToFloat(0xbecccccd)); +R127i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R15i.z)),intBitsToFloat(R124i.w)) + intBitsToFloat(backupReg0i))); +PV0i.w = floatBitsToInt(intBitsToFloat(backupReg1i) + intBitsToFloat(0xbf400000)); +R14i.z = R10i.w & int(1); +PS0i = R14i.z; +// 7 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R3i.x),intBitsToFloat(R11i.y),intBitsToFloat(R15i.z),-0.0),vec4(intBitsToFloat(R125i.x),intBitsToFloat(R124i.y),intBitsToFloat(R124i.z),0.0))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R125i.z = tempi.x; +R0i.x = floatBitsToInt(intBitsToFloat(PV0i.w) * intBitsToFloat(0x41800000)); +R0i.x = clampFI32(R0i.x); +PS1i = R0i.x; +// 8 +backupReg0i = R127i.z; +backupReg0i = R127i.z; +backupReg1i = R125i.x; +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R127i.w),intBitsToFloat(R126i.y),intBitsToFloat(backupReg0i),-0.0),vec4(intBitsToFloat(R127i.w),intBitsToFloat(R126i.y),intBitsToFloat(backupReg0i),0.0))); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +R127i.z = tempi.x; +R125i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R3i.x)),intBitsToFloat(PV1i.x)) + intBitsToFloat(backupReg1i))); +PS0i = R125i.x; +// 9 +backupReg0i = R124i.y; +backupReg1i = R124i.z; +R126i.x = floatBitsToInt(intBitsToFloat(R2i.w) + -(intBitsToFloat(R0i.x))); +R126i.x = clampFI32(R126i.x); +R124i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R11i.y)),intBitsToFloat(R125i.z)) + intBitsToFloat(backupReg0i))); +R124i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R15i.z)),intBitsToFloat(R125i.z)) + intBitsToFloat(backupReg1i))); +R125i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.x), intBitsToFloat(R3i.y))); +R125i.w = clampFI32(R125i.w); +R13i.z = floatBitsToInt(intBitsToFloat(R127i.x) + intBitsToFloat(R6i.x)); +PS1i = R13i.z; +// 10 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R3i.x),intBitsToFloat(R11i.y),intBitsToFloat(R15i.z),-0.0),vec4(intBitsToFloat(R124i.x),intBitsToFloat(R127i.y),intBitsToFloat(R126i.z),0.0))); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +R127i.w = tempi.x; +tempResultf = 1.0 / sqrt(intBitsToFloat(R127i.z)); +R126i.y = floatBitsToInt(tempResultf); +PS0i = R126i.y; +// 11 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R125i.x),intBitsToFloat(R124i.y),intBitsToFloat(R124i.z),-0.0),vec4(intBitsToFloat(R125i.x),intBitsToFloat(R124i.y),intBitsToFloat(R124i.z),0.0))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R125i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R3i.x)),intBitsToFloat(PV0i.x)) + intBitsToFloat(R124i.x))); +PS1i = R125i.x; +// 12 +backupReg0i = R124i.w; +R1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R23i.z), intBitsToFloat(R23i.z))); +R123i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R11i.y)),intBitsToFloat(R127i.w)) + intBitsToFloat(R127i.y))); +PV0i.y = R123i.y; +R123i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R15i.z)),intBitsToFloat(R127i.w)) + intBitsToFloat(R126i.z))); +PV0i.z = R123i.z; +R124i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(R126i.y))); +tempResultf = 1.0 / sqrt(intBitsToFloat(PV1i.x)); +R127i.y = floatBitsToInt(tempResultf); +PS0i = R127i.y; +// 13 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R125i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),-0.0),vec4(intBitsToFloat(R125i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),0.0))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +PS1i = floatBitsToInt(intBitsToFloat(R127i.x) + intBitsToFloat(R12i.y)); +// 14 +backupReg0i = R125i.z; +PV0i.x = floatBitsToInt(intBitsToFloat(PS1i) * intBitsToFloat(0x42960000)); +PV0i.x = clampFI32(PV0i.x); +PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R11i.x), intBitsToFloat(R124i.w))); +PV0i.y = clampFI32(PV0i.y); +R125i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(R127i.y))); +PV0i.w = floatBitsToInt(intBitsToFloat(R125i.y) * intBitsToFloat(0x41200000)); +PV0i.w = clampFI32(PV0i.w); +tempResultf = 1.0 / sqrt(intBitsToFloat(PV1i.x)); +PS0i = floatBitsToInt(tempResultf); +// 15 +PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.w), intBitsToFloat(PS0i))); +PV1i.y = floatBitsToInt(intBitsToFloat(R125i.w) + intBitsToFloat(R13i.y)); +PV1i.y = clampFI32(PV1i.y); +PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R7i.z), intBitsToFloat(PV0i.y))); +PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.z), intBitsToFloat(PV0i.x))); +R6i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R23i.y), intBitsToFloat(PV0i.w))); +PS1i = R6i.x; +// 16 +PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R16i.z), intBitsToFloat(PV1i.y))); +R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R11i.x), intBitsToFloat(PV1i.x))); +R127i.y = clampFI32(R127i.y); +PV0i.z = floatBitsToInt(intBitsToFloat(R125i.z) * intBitsToFloat(0x3c23d70a)); +PV0i.z = clampFI32(PV0i.z); +R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.z),intBitsToFloat(PV1i.w)) + intBitsToFloat(0xbecccccd))); +PV0i.w = R123i.w; +PS0i = floatBitsToInt(intBitsToFloat(PS1i) + -(1.0)); +// 17 +R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),intBitsToFloat(R5i.w)) + intBitsToFloat(0xbd4ccccd))); +PV1i.x = R123i.x; +PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), intBitsToFloat(R4i.z))); +R4i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PS0i),intBitsToFloat(R126i.x)) + 1.0)); +PV1i.z = R4i.z; +PV1i.w = floatBitsToInt(intBitsToFloat(PV0i.w) * intBitsToFloat(0x42960000)); +PV1i.w = clampFI32(PV1i.w); +R125i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),intBitsToFloat(R5i.w)) + intBitsToFloat(0xbc23d70a))); +PS1i = R125i.z; +// 18 +PV0i.x = floatBitsToInt(intBitsToFloat(R127i.y) + -(0.5)); +R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.y),intBitsToFloat(R17i.z)) + intBitsToFloat(0xbecccccd))); +PV0i.y = R123i.y; +R124i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R11i.w), intBitsToFloat(PV1i.w))); +R124i.z = floatBitsToInt(intBitsToFloat(R124i.z) * 2.0); +PV0i.w = floatBitsToInt(intBitsToFloat(PV1i.x) * intBitsToFloat(0x41a00000)); +PV0i.w = clampFI32(PV0i.w); +R126i.z = floatBitsToInt(intBitsToFloat(PV1i.z) + intBitsToFloat(0x3da3d70a)); +PS0i = R126i.z; +// 19 +PV1i.x = floatBitsToInt(intBitsToFloat(PV0i.y) * intBitsToFloat(0x42960000)); +PV1i.x = clampFI32(PV1i.x); +PV1i.y = floatBitsToInt(intBitsToFloat(R125i.z) * intBitsToFloat(0x42480000)); +PV1i.y = clampFI32(PV1i.y); +PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.w) * intBitsToFloat(0x3df5c28f)); +PV1i.w = floatBitsToInt(intBitsToFloat(PV0i.x) * intBitsToFloat(0x42200000)); +PV1i.w = clampFI32(PV1i.w); +R3i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R13i.z), intBitsToFloat(R12i.w))); +R3i.x = clampFI32(R3i.x); +PS1i = R3i.x; +// 20 +backupReg0i = R18i.z; +R11i.x = floatBitsToInt((intBitsToFloat(PV1i.y) * intBitsToFloat(0x3d4ccccd) + intBitsToFloat(PV1i.z))); +R11i.x = clampFI32(R11i.x); +R13i.y = floatBitsToInt(intBitsToFloat(R125i.w) + intBitsToFloat(R126i.z)); +R13i.y = clampFI32(R13i.y); +R18i.z = floatBitsToInt(intBitsToFloat(R124i.z) * intBitsToFloat(0x3e4ccccd)); +R12i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PV1i.x))); +R12i.y = floatBitsToInt(intBitsToFloat(PV1i.w) * intBitsToFloat(0x41000000)); +PS0i = R12i.y; +// 0 +backupReg0i = R0i.x; +PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R19i.z), intBitsToFloat(R12i.y))); +PV0i.x = clampFI32(PV0i.x); +R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R13i.y),intBitsToFloat(R11i.x)) + intBitsToFloat(R18i.z))); +R123i.y = clampFI32(R123i.y); +PV0i.y = R123i.y; +PV0i.z = floatBitsToInt(intBitsToFloat(backupReg0i) + intBitsToFloat(R3i.x)); +PV0i.z = clampFI32(PV0i.z); +PV0i.w = floatBitsToInt(-(intBitsToFloat(R12i.w)) + intBitsToFloat(R4i.z)); +PS0i = floatBitsToInt(intBitsToFloat(R22i.y) * intBitsToFloat(0x3f162b6b)); +// 1 +R126i.x = floatBitsToInt(intBitsToFloat(R2i.w) + intBitsToFloat(R6i.x)); +R126i.x = clampFI32(R126i.x); +PV1i.x = R126i.x; +R126i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),intBitsToFloat(R13i.w)) + intBitsToFloat(PV0i.y))); +R126i.z = clampFI32(R126i.z); +PV1i.z = R126i.z; +R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.w),intBitsToFloat(PV0i.z)) + intBitsToFloat(R12i.w))); +PV1i.w = R123i.w; +R122i.x = floatBitsToInt((intBitsToFloat(R22i.z) * intBitsToFloat(0x3dea4a8c) + intBitsToFloat(PS0i))); +PS1i = R122i.x; +// 2 +R123i.x = floatBitsToInt((intBitsToFloat(R22i.x) * intBitsToFloat(0x3e99096c) + intBitsToFloat(PS1i))); +PV0i.x = R123i.x; +R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.x),intBitsToFloat(PV1i.x)) + intBitsToFloat(R14i.w))); +PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R7i.x), intBitsToFloat(PV1i.w))); +R123i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R6i.y)),intBitsToFloat(PV1i.z)) + intBitsToFloat(R6i.y))); +R123i.w = clampFI32(R123i.w); +PV0i.w = R123i.w; +R125i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R20i.z),intBitsToFloat(PV1i.x)) + intBitsToFloat(R21i.z))); +PS0i = R125i.w; +// 3 +PV1i.x = ((intBitsToFloat(PV0i.x) > 0.0)?int(0xFFFFFFFF):int(0x0)); +R125i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R15i.w),intBitsToFloat(R16i.w)) + intBitsToFloat(PV0i.z))); +R125i.y = clampFI32(R125i.y); +R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R14i.y),intBitsToFloat(R126i.x)) + intBitsToFloat(R15i.y))); +PV1i.z = R123i.z; +R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(R12i.x))); +PS1i = floatBitsToInt(1.0 / intBitsToFloat(PV0i.x)); +// 4 +backupReg0i = R127i.y; +R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.w), intBitsToFloat(uf_remappedPS[8].y))); +R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(uf_remappedPS[8].x))); +R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.z),intBitsToFloat(R17i.w)) + intBitsToFloat(R18i.w))); +R123i.z = clampFI32(R123i.z); +PV0i.z = R123i.z; +R123i.w = ((PV1i.x == 0)?(0):(PS1i)); +PV0i.w = R123i.w; +R125i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.z), intBitsToFloat(uf_remappedPS[8].z))); +PS0i = R125i.w; +// 5 +R127i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R127i.w)),intBitsToFloat(R13i.x)) + intBitsToFloat(R18i.w))); +PV1i.x = R127i.x; +PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[6].w), intBitsToFloat(R125i.y))); +R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R16i.y), intBitsToFloat(PV0i.z))); +R124i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.x), intBitsToFloat(PV0i.w))); +R125i.x = floatBitsToInt(float(R14i.z)); +PS1i = R125i.x; +// 6 +R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.x),intBitsToFloat(PV1i.y)) + intBitsToFloat(R8i.w))); +PV0i.x = R123i.x; +R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.y),intBitsToFloat(PV1i.y)) + intBitsToFloat(R0i.z))); +PV0i.y = R123i.y; +R124i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.w),intBitsToFloat(R17i.y)) + intBitsToFloat(PV1i.x))); +R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.w),intBitsToFloat(PV1i.y)) + intBitsToFloat(R9i.z))); +PV0i.w = R123i.w; +R125i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.w),intBitsToFloat(R8i.x)) + intBitsToFloat(PV1i.x))); +PS0i = R125i.w; +// 7 +backupReg0i = R124i.w; +R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.w),intBitsToFloat(R19i.w)) + intBitsToFloat(R127i.x))); +PV1i.x = R123i.x; +R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R22i.x),intBitsToFloat(R124i.w)) + intBitsToFloat(PV0i.y))); +PV1i.z = floatBitsToInt(intBitsToFloat(0x3f895ef0) * intBitsToFloat(R126i.z)); +R127i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R22i.y),intBitsToFloat(R124i.w)) + intBitsToFloat(PV0i.x))); +R124i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R22i.z),intBitsToFloat(backupReg0i)) + intBitsToFloat(PV0i.w))); +PS1i = R124i.w; +// 8 +R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.z),intBitsToFloat(PV1i.x)) + intBitsToFloat(0xba0a8ec8))); +R123i.x = clampFI32(R123i.x); +PV0i.x = R123i.x; +R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.z),intBitsToFloat(R124i.z)) + intBitsToFloat(0xba0a8ec8))); +R123i.y = clampFI32(R123i.y); +PV0i.y = R123i.y; +R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.z),intBitsToFloat(R125i.w)) + intBitsToFloat(0xba0a8ec8))); +R123i.w = clampFI32(R123i.w); +PV0i.w = R123i.w; +R1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.x), intBitsToFloat(R1i.x))); +PS0i = R1i.w; +// 9 +PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.w), intBitsToFloat(PV0i.w))); +PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.w), intBitsToFloat(PV0i.x))); +PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), intBitsToFloat(PV0i.y))); +// 10 +R123i.y = floatBitsToInt((intBitsToFloat(PV1i.x) * intBitsToFloat(0x3f6e896b) + intBitsToFloat(0x3a011b1e))); +PV0i.y = R123i.y; +R123i.z = floatBitsToInt((intBitsToFloat(PV1i.y) * intBitsToFloat(0x3f6e896b) + intBitsToFloat(0x3a011b1e))); +PV0i.z = R123i.z; +R123i.w = floatBitsToInt((intBitsToFloat(PV1i.z) * intBitsToFloat(0x3f6e896b) + intBitsToFloat(0x3a011b1e))); +PV0i.w = R123i.w; +// 11 +R1i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R23i.z),intBitsToFloat(PV0i.w)) + intBitsToFloat(R24i.x))); +R1i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R23i.z),intBitsToFloat(PV0i.z)) + intBitsToFloat(R24i.y))); +R1i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R23i.z),intBitsToFloat(PV0i.y)) + intBitsToFloat(R24i.z))); +// export +passPixelColor0 = vec4(intBitsToFloat(R1i.x), intBitsToFloat(R1i.y), intBitsToFloat(R1i.z), intBitsToFloat(R1i.w)); +float luma = dot(passPixelColor0.rgb, vec3(0.2126, 0.7152, 0.0722)); +passPixelColor0.rgb = vec3(luma); +} diff --git a/Modifications/BreathOfTheWild_Monochromia/a2986482c342660f_000000007924d249_ps.txt b/Modifications/BreathOfTheWild_Monochromia/a2986482c342660f_000000007924d249_ps.txt new file mode 100644 index 00000000..02dccd09 --- /dev/null +++ b/Modifications/BreathOfTheWild_Monochromia/a2986482c342660f_000000007924d249_ps.txt @@ -0,0 +1,649 @@ +#version 420 +#extension GL_ARB_texture_gather : enable +// shader a2986482c342660f +// Monochromia +// Link's Sheikah Slate +// original shader dumped using cemu 1.11.c, BotW 1.3.1 +uniform ivec4 uf_remappedPS[9]; +layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0xf45c6000 res 1280x720x1 dim 1 tm: 4 format 041a compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 2) uniform sampler2D textureUnitPS2;// Tex2 addr 0xf494a800 res 1280x720x1 dim 1 tm: 4 format 001a compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler2 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 4) uniform sampler2D textureUnitPS4;// Tex4 addr 0xf4e91800 res 1280x720x1 dim 1 tm: 4 format 0806 compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler4 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 6) uniform sampler2D textureUnitPS6;// Tex6 addr 0xf5054000 res 640x360x1 dim 1 tm: 4 format 080e compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler6 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 8) uniform sampler2DArray textureUnitPS8;// Tex8 addr 0xf5593000 res 640x360x2 dim 5 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x2) Sampler8 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 9) uniform sampler2D textureUnitPS9;// Tex9 addr 0xf575f800 res 640x360x1 dim 1 tm: 4 format 001a compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler9 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 11) uniform sampler2D textureUnitPS11;// Tex11 addr 0xf5977800 res 640x360x1 dim 1 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler11 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 12) uniform sampler2D textureUnitPS12;// Tex12 addr 0xf4240800 res 1280x720x1 dim 1 tm: 4 format 080e compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler12 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 13) uniform sampler2D textureUnitPS13;// Tex13 addr 0xf528a800 res 640x360x1 dim 1 tm: 4 format 001a compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler13 ClampX/Y/Z: 2 2 2 border: 1 +layout(location = 0) in vec4 passParameterSem0; +layout(location = 1) in vec4 passParameterSem1; +layout(location = 2) in vec4 passParameterSem2; +layout(location = 3) in vec4 passParameterSem4; +layout(location = 4) in vec4 passParameterSem6; +layout(location = 0) out vec4 passPixelColor0; +uniform vec2 uf_fragCoordScale; +int clampFI32(int v) +{ +if( v == 0x7FFFFFFF ) + return floatBitsToInt(1.0); +else if( v == 0xFFFFFFFF ) + return floatBitsToInt(0.0); +return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); +} +float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } +void main() +{ +ivec4 R0i = ivec4(0); +ivec4 R1i = ivec4(0); +ivec4 R2i = ivec4(0); +ivec4 R3i = ivec4(0); +ivec4 R4i = ivec4(0); +ivec4 R5i = ivec4(0); +ivec4 R6i = ivec4(0); +ivec4 R7i = ivec4(0); +ivec4 R8i = ivec4(0); +ivec4 R9i = ivec4(0); +ivec4 R10i = ivec4(0); +ivec4 R11i = ivec4(0); +ivec4 R12i = ivec4(0); +ivec4 R13i = ivec4(0); +ivec4 R14i = ivec4(0); +ivec4 R15i = ivec4(0); +ivec4 R16i = ivec4(0); +ivec4 R17i = ivec4(0); +ivec4 R18i = ivec4(0); +ivec4 R19i = ivec4(0); +ivec4 R20i = ivec4(0); +ivec4 R21i = ivec4(0); +ivec4 R122i = ivec4(0); +ivec4 R123i = ivec4(0); +ivec4 R124i = ivec4(0); +ivec4 R125i = ivec4(0); +ivec4 R126i = ivec4(0); +ivec4 R127i = ivec4(0); +int backupReg0i, backupReg1i, backupReg2i, backupReg3i, backupReg4i; +ivec4 PV0i = ivec4(0), PV1i = ivec4(0); +int PS0i = 0, PS1i = 0; +ivec4 tempi = ivec4(0); +float tempResultf; +int tempResulti; +ivec4 ARi = ivec4(0); +bool predResult = true; +vec3 cubeMapSTM; +int cubeMapFaceId; +R0i = floatBitsToInt(passParameterSem0); +R1i = floatBitsToInt(passParameterSem1); +R2i = floatBitsToInt(passParameterSem2); +R3i = floatBitsToInt(passParameterSem4); +R4i = floatBitsToInt(passParameterSem6); +R8i.xyzw = floatBitsToInt(texture(textureUnitPS1, intBitsToFloat(R4i.zw)).xyzw); +R6i.xyzw = floatBitsToInt(texture(textureUnitPS2, intBitsToFloat(R4i.zw)).xyzw); +R4i.w = floatBitsToInt(texture(textureUnitPS12, intBitsToFloat(R0i.xy)).x); +R5i.xyzw = floatBitsToInt(textureGather(textureUnitPS6, intBitsToFloat(R0i.xy)).xyzw); +// 0 +R127i.x = floatBitsToInt((intBitsToFloat(R6i.x) * 2.0 + -(1.0))); +PV0i.x = R127i.x; +R127i.y = floatBitsToInt((intBitsToFloat(R6i.y) * 2.0 + -(1.0))); +PV0i.y = R127i.y; +PV0i.z = floatBitsToInt(intBitsToFloat(R8i.w) * intBitsToFloat(0x437f0000)); +R124i.w = floatBitsToInt((intBitsToFloat(R6i.z) * 2.0 + -(1.0))); +PV0i.w = R124i.w; +R127i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R4i.w)),intBitsToFloat(uf_remappedPS[0].w)) + 1.0)); +PS0i = R127i.z; +// 1 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.w),-0.0),vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.w),0.0))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R9i.y = int(intBitsToFloat(PV0i.z)); +PS1i = R9i.y; +// 2 +PV0i.x = PS1i >> 0x00000005; +R4i.y = 0; +R126i.z = 0x358637bd; +PV0i.w = floatBitsToInt(floor(intBitsToFloat(R3i.x))); +R7i.x = floatBitsToInt(sqrt(intBitsToFloat(PV1i.x))); +PS0i = R7i.x; +// 3 +R126i.x = floatBitsToInt(intBitsToFloat(R3i.x) + -(intBitsToFloat(PV0i.w))); +PV1i.y = floatBitsToInt(floor(intBitsToFloat(R3i.y))); +R125i.z = floatBitsToInt(intBitsToFloat(PV0i.w) + -(0.5)); +R127i.w = PV0i.x & 0x00000007; +PS1i = floatBitsToInt(1.0 / intBitsToFloat(R127i.z)); +// 4 +R125i.x = floatBitsToInt(intBitsToFloat(R3i.y) + -(intBitsToFloat(PV1i.y))); +R126i.y = floatBitsToInt(intBitsToFloat(PV1i.y) + -(0.5)); +R4i.z = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(uf_remappedPS[0].x)), intBitsToFloat(PS1i))); +PV0i.z = R4i.z; +R11i.w = floatBitsToInt(roundEven(0.0)); +R4i.w = floatBitsToInt(1.0 / intBitsToFloat(R7i.x)); +PS0i = R4i.w; +// 5 +R4i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(PS0i))); +R7i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), intBitsToFloat(PS0i))); +R127i.z = floatBitsToInt(intBitsToFloat(uf_remappedPS[0].x) + intBitsToFloat(PV0i.z)); +PV1i.z = R127i.z; +PV1i.w = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(PV0i.z)), intBitsToFloat(uf_remappedPS[1].y))); +PS1i = floatBitsToInt(float(R127i.w)); +// 6 +R127i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.z),intBitsToFloat(uf_remappedPS[2].x)) + intBitsToFloat(R5i.y))); +R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.z),intBitsToFloat(uf_remappedPS[2].x)) + intBitsToFloat(R5i.w))); +PV0i.z = floatBitsToInt(intBitsToFloat(PS1i) + intBitsToFloat(0xc0000000)); +R127i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.z),intBitsToFloat(uf_remappedPS[2].x)) + intBitsToFloat(R5i.x))); +R124i.x = floatBitsToInt(1.0 / intBitsToFloat(PV1i.w)); +PS0i = R124i.x; +// 7 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R4i.x),intBitsToFloat(R7i.y),intBitsToFloat(R126i.z),-0.0),vec4(intBitsToFloat(R4i.x),intBitsToFloat(R7i.y),intBitsToFloat(R126i.z),0.0))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +PS1i = floatBitsToInt(exp2(intBitsToFloat(PV0i.z))); +// 8 +backupReg0i = R127i.z; +backupReg1i = R127i.y; +backupReg1i = R127i.y; +R5i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.x), intBitsToFloat(PS1i))); +PV0i.x = R5i.x; +R127i.y = floatBitsToInt(max(intBitsToFloat(R127i.x), -(intBitsToFloat(R127i.x)))); +R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(uf_remappedPS[2].x)) + intBitsToFloat(R5i.z))); +R126i.w = floatBitsToInt(max(intBitsToFloat(backupReg1i), -(intBitsToFloat(backupReg1i)))); +tempResultf = 1.0 / sqrt(intBitsToFloat(PV1i.x)); +PS0i = floatBitsToInt(tempResultf); +// 9 +PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.x), intBitsToFloat(PS0i))); +PV1i.y = floatBitsToInt(min(intBitsToFloat(PV0i.x), 2.0)); +PV1i.z = PV0i.x; +PV1i.z = clampFI32(PV1i.z); +PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R7i.y), intBitsToFloat(PS0i))); +R125i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.x), intBitsToFloat(uf_remappedPS[3].x))); +PS1i = R125i.w; +// 10 +backupReg0i = R127i.w; +backupReg0i = R127i.w; +PV0i.x = floatBitsToInt(intBitsToFloat(PV1i.y) * intBitsToFloat(0x40c00000)); +R5i.y = floatBitsToInt(intBitsToFloat(PV1i.z) * intBitsToFloat(0x40400000)); +PV0i.z = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(uf_remappedPS[4].w)), intBitsToFloat(PV1i.w))); +PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[4].z), intBitsToFloat(PV1i.x))); +R127i.w = floatBitsToInt(max(intBitsToFloat(backupReg0i), -(intBitsToFloat(backupReg0i)))); +PS0i = R127i.w; +// 11 +PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), intBitsToFloat(R125i.w))); +PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), intBitsToFloat(PV0i.x))); +PV1i.z = floatBitsToInt(max(intBitsToFloat(R127i.z), -(intBitsToFloat(R127i.z)))); +PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(PV0i.x))); +PS1i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.w), intBitsToFloat(R125i.w))); +// 12 +backupReg0i = R0i.x; +backupReg1i = R127i.w; +PV0i.x = floatBitsToInt(intBitsToFloat(PV1i.y) * intBitsToFloat(0x3e4ccccd)); +PV0i.y = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + intBitsToFloat(PS1i)); +R10i.z = floatBitsToInt(intBitsToFloat(backupReg0i) + intBitsToFloat(PV1i.w)); +R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg1i), intBitsToFloat(R125i.w))); +PV0i.w = R127i.w; +R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.z), intBitsToFloat(R125i.w))); +PS0i = R127i.y; +// 13 +backupReg0i = R0i.z; +PV1i.x = floatBitsToInt(-(intBitsToFloat(PV0i.w)) + intBitsToFloat(PV0i.y)); +R10i.y = floatBitsToInt(intBitsToFloat(R0i.y) + intBitsToFloat(PV0i.x)); +PV1i.z = floatBitsToInt(-(intBitsToFloat(PS0i)) + intBitsToFloat(PV0i.y)); +R5i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(R4i.z))); +R13i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.w), intBitsToFloat(R4i.z))); +PS1i = R13i.y; +// 14 +PV0i.x = floatBitsToInt(intBitsToFloat(R127i.y) + intBitsToFloat(PV1i.x)); +R12i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(R10i.z)) + intBitsToFloat(R1i.z))); +R5i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.w), intBitsToFloat(R4i.w))); +PV0i.w = floatBitsToInt(intBitsToFloat(R127i.w) + intBitsToFloat(PV1i.z)); +PS0i = R9i.y & 0x0000001c; +// 15 +PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.w), intBitsToFloat(R6i.w))); +PV1i.y = floatBitsToInt(intBitsToFloat(PV0i.x) + intBitsToFloat(R125i.x)); +PV1i.y = clampFI32(PV1i.y); +PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.w) + intBitsToFloat(R126i.x)); +PV1i.z = clampFI32(PV1i.z); +R4i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(R10i.y)) + intBitsToFloat(R1i.w))); +R126i.x = floatBitsToInt(float(PS0i)); +PS1i = R126i.x; +// 16 +PV0i.x = floatBitsToInt(intBitsToFloat(PV1i.y) + intBitsToFloat(R126i.y)); +R6i.y = floatBitsToInt((intBitsToFloat(PV1i.x) * 1.5 + 1.0)); +PV0i.z = R9i.y & 0x00000002; +PV0i.w = floatBitsToInt(intBitsToFloat(PV1i.z) + intBitsToFloat(R125i.z)); +R125i.z = floatBitsToInt(intBitsToFloat(R6i.w) * intBitsToFloat(0x437f0000)); +PS0i = R125i.z; +// 17 +R11i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.z), intBitsToFloat(PV0i.w))); +R11i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.w), intBitsToFloat(PV0i.x))); +R127i.z = floatBitsToInt(max(intBitsToFloat(R8i.y), intBitsToFloat(R8i.z))); +R16i.w = floatBitsToInt(intBitsToFloat(R126i.x) * intBitsToFloat(0x3d124925)); +R16i.y = floatBitsToInt(float(PV0i.z)); +R16i.y = floatBitsToInt(intBitsToFloat(R16i.y) / 2.0); +PS1i = R16i.y; +// 18 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R5i.w),intBitsToFloat(R13i.y),intBitsToFloat(R4i.z),-0.0),vec4(intBitsToFloat(R5i.w),intBitsToFloat(R13i.y),intBitsToFloat(R4i.z),0.0))); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +R3i.y = int(intBitsToFloat(R125i.z)); +PS0i = R3i.y; +// 19 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R4i.x),intBitsToFloat(R7i.y),intBitsToFloat(R5i.z),-0.0),vec4(intBitsToFloat(uf_remappedPS[5].x),intBitsToFloat(uf_remappedPS[5].y),intBitsToFloat(uf_remappedPS[5].z),0.0))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +PS1i = floatBitsToInt(sqrt(intBitsToFloat(PV0i.x))); +// 20 +R3i.x = floatBitsToInt(max(-(intBitsToFloat(PV1i.x)), 0.0)); +R17i.y = floatBitsToInt(max(intBitsToFloat(R8i.x), intBitsToFloat(R127i.z))); +R3i.z = floatBitsToInt((intBitsToFloat(R124i.x) * intBitsToFloat(0x3dcccccd) + 1.0)); +R6i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R16i.w),-(intBitsToFloat(R16i.y))) + intBitsToFloat(R16i.w))); +R3i.w = floatBitsToInt(1.0 / intBitsToFloat(PS1i)); +PS0i = R3i.w; +// 0 +backupReg0i = R3i.w; +backupReg0i = R3i.w; +R124i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[5].x), intBitsToFloat(uf_remappedPS[6].w))); +PV0i.x = R124i.x; +R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[5].y), intBitsToFloat(uf_remappedPS[6].w))); +PV0i.y = R127i.y; +R7i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.w), intBitsToFloat(R3i.w))); +R3i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R13i.y), intBitsToFloat(backupReg0i))); +R9i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.z), intBitsToFloat(backupReg0i))); +PS0i = R9i.z; +// 1 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(R4i.y),-0.0),vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(R4i.y),0.0))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R125i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[5].z), intBitsToFloat(uf_remappedPS[6].w))); +PS1i = R125i.z; +// 2 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R4i.x),intBitsToFloat(R7i.y),intBitsToFloat(R5i.z),-0.0),vec4(intBitsToFloat(R7i.z),intBitsToFloat(R3i.w),intBitsToFloat(R9i.z),0.0))); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +tempResultf = 1.0 / sqrt(intBitsToFloat(PV1i.x)); +PS0i = floatBitsToInt(tempResultf); +// 3 +R6i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), intBitsToFloat(PS0i))); +R4i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.x), intBitsToFloat(PS0i))); +R124i.z = floatBitsToInt(intBitsToFloat(PV0i.x) + 1.0); +R124i.z = clampFI32(R124i.z); +PV1i.z = R124i.z; +R127i.w = floatBitsToInt((intBitsToFloat(R124i.x) * intBitsToFloat(0xbf4ccccd) + intBitsToFloat(R7i.z))); +R126i.y = floatBitsToInt((intBitsToFloat(R127i.y) * intBitsToFloat(0xbf4ccccd) + intBitsToFloat(R3i.w))); +PS1i = R126i.y; +// 4 +backupReg0i = R6i.w; +R126i.x = R3i.y & int(1); +PV0i.y = floatBitsToInt(-(intBitsToFloat(PV1i.z)) + 1.0); +R127i.z = floatBitsToInt((intBitsToFloat(R125i.z) * intBitsToFloat(0xbf4ccccd) + intBitsToFloat(R9i.z))); +PV0i.z = R127i.z; +R6i.w = floatBitsToInt(min(intBitsToFloat(R3i.x), 1.0)); +R126i.z = floatBitsToInt(intBitsToFloat(backupReg0i) * 0.25); +PS0i = R126i.z; +// 5 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R127i.w),intBitsToFloat(R126i.y),intBitsToFloat(PV0i.z),-0.0),vec4(intBitsToFloat(R127i.w),intBitsToFloat(R126i.y),intBitsToFloat(PV0i.z),0.0))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +tempResultf = log2(intBitsToFloat(PV0i.y)); +if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; +PS1i = floatBitsToInt(tempResultf); +// 6 +R125i.x = floatBitsToInt(min(intBitsToFloat(R8i.y), intBitsToFloat(R8i.z))); +R125i.y = floatBitsToInt(intBitsToFloat(R17i.y) + intBitsToFloat(0x2edbe6ff)); +R11i.z = R5i.x; +R11i.z = floatBitsToInt(intBitsToFloat(R11i.z) * 4.0); +R11i.z = clampFI32(R11i.z); +PV0i.w = floatBitsToInt(intBitsToFloat(PS1i) * intBitsToFloat(0x3e4ccccd)); +tempResultf = 1.0 / sqrt(intBitsToFloat(PV1i.x)); +PS0i = floatBitsToInt(tempResultf); +// 7 +PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.w), intBitsToFloat(PS0i))); +PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(PS0i))); +PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PS0i))); +R127i.w = R5i.x; +R127i.w = floatBitsToInt(intBitsToFloat(R127i.w) * 2.0); +R127i.w = clampFI32(R127i.w); +R6i.z = floatBitsToInt(exp2(intBitsToFloat(PV0i.w))); +PS1i = R6i.z; +// 8 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R4i.x),intBitsToFloat(R7i.y),intBitsToFloat(R5i.z),-0.0),vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),0.0))); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +R9i.w = floatBitsToInt(intBitsToFloat(R3i.z) * intBitsToFloat(0x42960000)); +PS0i = R9i.w; +// 9 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R7i.z),intBitsToFloat(R3i.w),intBitsToFloat(R9i.z),-0.0),vec4(intBitsToFloat(R124i.x),intBitsToFloat(R127i.y),intBitsToFloat(R125i.z),0.0))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R7i.w = floatBitsToInt(intBitsToFloat(PV0i.x) + 1.0); +R7i.w = clampFI32(R7i.w); +PS1i = R7i.w; +// 10 +PV0i.x = floatBitsToInt(-(intBitsToFloat(R126i.z)) + intBitsToFloat(0x3f4ccccd)); +PV0i.y = floatBitsToInt(max(-(intBitsToFloat(PV1i.x)), 0.0)); +R125i.z = floatBitsToInt((intBitsToFloat(R7i.x) * 4.0 + intBitsToFloat(0xc0400000))); +R125i.z = clampFI32(R125i.z); +R123i.w = ((R126i.x == 0)?(0):(0x3f800000)); +PV0i.w = R123i.w; +R17i.w = floatBitsToInt(1.0 / intBitsToFloat(R125i.y)); +PS0i = R17i.w; +// 11 +R7i.x = floatBitsToInt(min(intBitsToFloat(PV0i.y), 1.0)); +PV1i.x = R7i.x; +R14i.y = floatBitsToInt(intBitsToFloat(R127i.w) * 0.25); +R5i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.w)) + intBitsToFloat(R126i.z))); +R127i.w = floatBitsToInt(min(intBitsToFloat(R8i.x), intBitsToFloat(R125i.x))); +PV1i.w = R127i.w; +tempResultf = log2(intBitsToFloat(R17i.y)); +if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; +PS1i = floatBitsToInt(tempResultf); +// 12 +PV0i.x = floatBitsToInt(intBitsToFloat(PS1i) * intBitsToFloat(0x3f19999a)); +R15i.y = floatBitsToInt(intBitsToFloat(R125i.z) + -(0.5)); +R15i.y = floatBitsToInt(intBitsToFloat(R15i.y) * 4.0); +R15i.y = clampFI32(R15i.y); +R12i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV1i.w)),intBitsToFloat(R17i.w)) + 1.0)); +PV0i.z = R12i.z; +R14i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.z), intBitsToFloat(PV1i.x))); +R3i.y = floatBitsToInt(intBitsToFloat(R2i.x) * intBitsToFloat(0x3f4ccccd)); +PS0i = R3i.y; +// 13 +R4i.x = floatBitsToInt(intBitsToFloat(R2i.y) * intBitsToFloat(0x3f4ccccd)); +PV1i.x = R4i.x; +R123i.y = floatBitsToInt((-(intBitsToFloat(PV0i.z)) * intBitsToFloat(0x40400000) + intBitsToFloat(0x40400000))); +PV1i.y = R123i.y; +R125i.z = floatBitsToInt(intBitsToFloat(PV0i.z) + intBitsToFloat(0x2edbe6ff)); +R13i.w = floatBitsToInt(intBitsToFloat(R2i.z) * intBitsToFloat(0x3f4ccccd)); +PV1i.w = R13i.w; +PS1i = floatBitsToInt(exp2(intBitsToFloat(PV0i.x))); +// 14 +PV0i.x = floatBitsToInt(intBitsToFloat(R15i.y) + intBitsToFloat(0x3f4ccccd)); +PV0i.x = clampFI32(PV0i.x); +R7i.y = floatBitsToInt(intBitsToFloat(uf_remappedPS[7].x) + -(intBitsToFloat(R3i.y))); +R3i.z = floatBitsToInt(intBitsToFloat(uf_remappedPS[7].y) + -(intBitsToFloat(PV1i.x))); +R15i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.y),intBitsToFloat(PS1i)) + intBitsToFloat(PS1i))); +R12i.w = floatBitsToInt(intBitsToFloat(uf_remappedPS[7].z) + -(intBitsToFloat(PV1i.w))); +PS0i = R12i.w; +// 15 +R3i.x = floatBitsToInt(-(intBitsToFloat(R127i.w)) + intBitsToFloat(R17i.y)); +R18i.y = floatBitsToInt(intBitsToFloat(R8i.x) + -(intBitsToFloat(R127i.w))); +PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.x) + -(1.0)); +PV1i.w = floatBitsToInt(intBitsToFloat(R7i.x) * intBitsToFloat(0x40a00000)); +PV1i.w = clampFI32(PV1i.w); +R5i.x = floatBitsToInt(1.0 / intBitsToFloat(R125i.z)); +PS1i = R5i.x; +// 16 +R9i.x = floatBitsToInt(intBitsToFloat(R8i.y) + -(intBitsToFloat(R127i.w))); +R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.z),intBitsToFloat(PV1i.w)) + 1.0)); +PV0i.y = R123i.y; +R14i.z = floatBitsToInt(intBitsToFloat(R8i.z) + -(intBitsToFloat(R127i.w))); +PV0i.w = R9i.y & int(1); +// 17 +R8i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.x), intBitsToFloat(PV0i.y))); +R13i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.z), intBitsToFloat(PV0i.y))); +R8i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.y), intBitsToFloat(PV0i.y))); +R8i.z = floatBitsToInt(float(PV0i.w)); +PS1i = R8i.z; +// 0 +PV0i.z = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(uf_remappedPS[4].w)), intBitsToFloat(R6i.x))); +PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[4].z), intBitsToFloat(R4i.y))); +// 1 +backupReg0i = R0i.x; +backupReg1i = R0i.y; +R0i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.w),intBitsToFloat(R5i.y)) + intBitsToFloat(backupReg0i))); +R0i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.z),intBitsToFloat(R5i.y)) + intBitsToFloat(backupReg1i))); +R0i.z = floatBitsToInt(texture(textureUnitPS4, intBitsToFloat(R0i.xy)).x); +R0i.w = floatBitsToInt(texture(textureUnitPS4, intBitsToFloat(R10i.zy)).x); +R10i.yw = floatBitsToInt(texture(textureUnitPS13, intBitsToFloat(R11i.xy)).yw); +R20i.xyz = floatBitsToInt(texture(textureUnitPS9, intBitsToFloat(R11i.xy)).xyz); +R19i.xyz = floatBitsToInt(texture(textureUnitPS8, vec3(intBitsToFloat(R11i.x),intBitsToFloat(R11i.y),intBitsToFloat(R11i.w))).xyz); +R21i.xyz = floatBitsToInt(texture(textureUnitPS11, intBitsToFloat(R11i.xy)).xyz); +// 0 +R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(R0i.x)) + intBitsToFloat(R1i.z))); +PV0i.x = R123i.x; +R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[3].x),intBitsToFloat(R0i.z)) + intBitsToFloat(uf_remappedPS[0].x))); +PV0i.y = R123i.y; +R125i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[3].x),intBitsToFloat(R0i.w)) + intBitsToFloat(uf_remappedPS[0].x))); +PV0i.z = R125i.z; +R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(R0i.y)) + intBitsToFloat(R1i.w))); +PV0i.w = R123i.w; +R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R10i.w), intBitsToFloat(R6i.z))); +PS0i = R126i.y; +// 1 +PV1i.x = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(PV0i.y)), intBitsToFloat(PV0i.w))); +PV1i.y = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(PV0i.y)), intBitsToFloat(PV0i.x))); +PV1i.z = floatBitsToInt(-(intBitsToFloat(PV0i.y))); +R127i.w = floatBitsToInt(-(intBitsToFloat(PV0i.z))); +PS1i = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(PV0i.z)), intBitsToFloat(R12i.y))); +// 2 +backupReg0i = R125i.z; +R125i.xyz = floatBitsToInt(vec3(-(intBitsToFloat(R5i.w)),-(intBitsToFloat(R13i.y)),-(intBitsToFloat(R4i.z))) + vec3(intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.z))); +PV0i.w = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(backupReg0i)), intBitsToFloat(R4i.w))); +R126i.x = floatBitsToInt(-(intBitsToFloat(R5i.w)) + intBitsToFloat(PS1i)); +PS0i = R126i.x; +// 3 +PV1i.x = floatBitsToInt(intBitsToFloat(R20i.x) + intBitsToFloat(0xbecccccd)); +R127i.y = floatBitsToInt(-(intBitsToFloat(R13i.y)) + intBitsToFloat(PV0i.w)); +R124i.z = floatBitsToInt(-(intBitsToFloat(R4i.z)) + intBitsToFloat(R127i.w)); +R125i.w = floatBitsToInt(intBitsToFloat(R126i.y) + intBitsToFloat(0xbf400000)); +tempResultf = log2(intBitsToFloat(R10i.y)); +if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; +R124i.x = floatBitsToInt(tempResultf); +PS1i = R124i.x; +// 4 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R7i.z),intBitsToFloat(R3i.w),intBitsToFloat(R9i.z),-0.0),vec4(intBitsToFloat(R125i.x),intBitsToFloat(R125i.y),intBitsToFloat(R125i.z),0.0))); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +R124i.w = tempi.x; +R127i.w = floatBitsToInt(intBitsToFloat(PV1i.x) * intBitsToFloat(0x41200000)); +R127i.w = clampFI32(R127i.w); +PS0i = R127i.w; +// 5 +backupReg0i = R125i.x; +R127i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R7i.z),intBitsToFloat(R3i.w),intBitsToFloat(R9i.z),-0.0),vec4(intBitsToFloat(R126i.x),intBitsToFloat(R127i.y),intBitsToFloat(R124i.z),0.0))); +PV1i.x = R127i.x; +PV1i.y = R127i.x; +PV1i.z = R127i.x; +PV1i.w = R127i.x; +R125i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R7i.z)),intBitsToFloat(PV0i.x)) + intBitsToFloat(backupReg0i))); +PS1i = R125i.x; +// 6 +backupReg0i = R126i.x; +backupReg1i = R127i.w; +R126i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R7i.z)),intBitsToFloat(PV1i.x)) + intBitsToFloat(backupReg0i))); +R123i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R3i.w)),intBitsToFloat(R124i.w)) + intBitsToFloat(R125i.y))); +PV0i.y = R123i.y; +R123i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R9i.z)),intBitsToFloat(R124i.w)) + intBitsToFloat(R125i.z))); +PV0i.z = R123i.z; +R127i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R3i.w)),intBitsToFloat(PV1i.x)) + intBitsToFloat(R127i.y))); +R125i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R20i.y), intBitsToFloat(backupReg1i))); +PS0i = R125i.z; +// 7 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R125i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),-0.0),vec4(intBitsToFloat(R125i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),0.0))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R122i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R9i.z)),intBitsToFloat(R127i.x)) + intBitsToFloat(R124i.z))); +PS1i = R122i.x; +// 8 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R126i.x),intBitsToFloat(R127i.w),intBitsToFloat(PS1i),-0.0),vec4(intBitsToFloat(R126i.x),intBitsToFloat(R127i.w),intBitsToFloat(PS1i),0.0))); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +tempResultf = 1.0 / sqrt(intBitsToFloat(PV1i.x)); +PS0i = floatBitsToInt(tempResultf); +// 9 +backupReg0i = R124i.x; +R124i.x = floatBitsToInt(intBitsToFloat(R125i.w) * intBitsToFloat(0x41800000)); +R124i.x = clampFI32(R124i.x); +PV1i.x = R124i.x; +PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.w), intBitsToFloat(PS0i))); +R124i.z = floatBitsToInt(intBitsToFloat(R125i.z) + -(1.0)); +PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.y), intBitsToFloat(backupReg0i))); +tempResultf = 1.0 / sqrt(intBitsToFloat(PV0i.x)); +PS1i = floatBitsToInt(tempResultf); +// 10 +R123i.x = floatBitsToInt((intBitsToFloat(R126i.y) * intBitsToFloat(0x3e99999a) + intBitsToFloat(R6i.w))); +PV0i.x = R123i.x; +PV0i.y = floatBitsToInt(intBitsToFloat(R2i.w) + -(intBitsToFloat(PV1i.x))); +PV0i.y = clampFI32(PV0i.y); +PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[1].z), intBitsToFloat(PV1i.y))); +PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(PS1i))); +PS0i = floatBitsToInt(exp2(intBitsToFloat(PV1i.w))); +// 11 +PV1i.x = floatBitsToInt(intBitsToFloat(PV0i.x) + intBitsToFloat(0xbecccccd)); +PV1i.y = floatBitsToInt(intBitsToFloat(PV0i.z) * intBitsToFloat(0x3df5c28f)); +PV1i.y = clampFI32(PV1i.y); +R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.z),intBitsToFloat(PV0i.y)) + 1.0)); +PV1i.z = R123i.z; +PV1i.w = floatBitsToInt(intBitsToFloat(PV0i.w) * intBitsToFloat(0x3c23d70a)); +PV1i.w = clampFI32(PV1i.w); +PS1i = floatBitsToInt(intBitsToFloat(PS0i) + intBitsToFloat(0xbecccccd)); +// 12 +PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(R9i.w))); +PV0i.x = clampFI32(PV0i.x); +PV0i.y = floatBitsToInt(intBitsToFloat(PV1i.y) + -(0.5)); +PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(R7i.w))); +PV0i.w = floatBitsToInt(intBitsToFloat(PS1i) * intBitsToFloat(0x42960000)); +PV0i.w = clampFI32(PV0i.w); +R125i.w = floatBitsToInt((0.5 * intBitsToFloat(PV1i.z) + 0.5)); +PS0i = R125i.w; +// 13 +backupReg0i = R125i.z; +PV1i.x = floatBitsToInt(intBitsToFloat(PV0i.y) * intBitsToFloat(0x42200000)); +PV1i.x = clampFI32(PV1i.x); +R126i.y = floatBitsToInt(intBitsToFloat(R124i.x) + intBitsToFloat(PV0i.x)); +R126i.y = clampFI32(R126i.y); +R125i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(PS0i))); +R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.z),intBitsToFloat(R7i.x)) + intBitsToFloat(0xbecccccd))); +PV1i.w = R123i.w; +PS1i = floatBitsToInt(intBitsToFloat(R2i.w) + intBitsToFloat(backupReg0i)); +PS1i = clampFI32(PS1i); +// 14 +PV0i.x = floatBitsToInt(intBitsToFloat(PV1i.x) * intBitsToFloat(0x41000000)); +R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R7i.y),intBitsToFloat(PS1i)) + intBitsToFloat(R3i.y))); +PV0i.y = R123i.y; +PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.w) * intBitsToFloat(0x42960000)); +PV0i.z = clampFI32(PV0i.z); +R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.z),intBitsToFloat(PS1i)) + intBitsToFloat(R4i.x))); +PV0i.w = R123i.w; +R122i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R12i.w),intBitsToFloat(PS1i)) + intBitsToFloat(R13i.w))); +PS0i = R122i.x; +// 15 +PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R14i.w), intBitsToFloat(PV0i.x))); +PV1i.x = clampFI32(PV1i.x); +R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R11i.z), intBitsToFloat(PV0i.z))); +PV1i.y = R127i.y; +R124i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(uf_remappedPS[8].y))); +R124i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(uf_remappedPS[8].x))); +R125i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS0i), intBitsToFloat(uf_remappedPS[8].z))); +PS1i = R125i.y; +// 16 +PV0i.x = floatBitsToInt(-(intBitsToFloat(PV1i.y)) + intBitsToFloat(R125i.w)); +PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R20i.z), intBitsToFloat(R20i.z))); +PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(R14i.y))); +PS0i = floatBitsToInt(intBitsToFloat(R19i.z) * intBitsToFloat(0x3dea4a8c)); +// 17 +R123i.x = floatBitsToInt((intBitsToFloat(R19i.y) * intBitsToFloat(0x3f162b6b) + intBitsToFloat(PS0i))); +PV1i.x = R123i.x; +R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.z),intBitsToFloat(R125i.z)) + intBitsToFloat(PV0i.w))); +R123i.z = clampFI32(R123i.z); +PV1i.z = R123i.z; +R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),intBitsToFloat(R126i.y)) + intBitsToFloat(R127i.y))); +PV1i.w = R123i.w; +R11i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.z), intBitsToFloat(PV0i.y))); +PS1i = R11i.w; +// 18 +R123i.x = floatBitsToInt((intBitsToFloat(R19i.x) * intBitsToFloat(0x3e99096c) + intBitsToFloat(PV1i.x))); +PV0i.x = R123i.x; +R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.z),intBitsToFloat(R15i.w)) + intBitsToFloat(R17i.y))); +R123i.y = clampFI32(R123i.y); +PV0i.y = R123i.y; +PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R15i.y), intBitsToFloat(PV1i.w))); +R123i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R12i.z)),intBitsToFloat(PV1i.z)) + intBitsToFloat(R12i.z))); +R123i.w = clampFI32(R123i.w); +PV0i.w = R123i.w; +// 19 +PV1i.x = ((intBitsToFloat(PV0i.x) > 0.0)?int(0xFFFFFFFF):int(0x0)); +R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R16i.w),intBitsToFloat(R16i.y)) + intBitsToFloat(PV0i.z))); +R123i.y = clampFI32(R123i.y); +PV1i.y = R123i.y; +PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R17i.w), intBitsToFloat(PV0i.y))); +R16i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(R5i.x))); +PV1i.w = R16i.w; +PS1i = floatBitsToInt(1.0 / intBitsToFloat(PV0i.x)); +// 20 +backupReg0i = R3i.x; +R3i.x = floatBitsToInt(intBitsToFloat(0x3f895ef0) * intBitsToFloat(PV1i.z)); +PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[6].w), intBitsToFloat(PV1i.y))); +R12i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV1i.w)),intBitsToFloat(backupReg0i)) + intBitsToFloat(R17i.y))); +PV0i.z = R12i.z; +R123i.w = ((PV1i.x == 0)?(0):(PS1i)); +PV0i.w = R123i.w; +// 21 +backupReg0i = R8i.x; +backupReg1i = R13i.z; +backupReg2i = R18i.y; +R8i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.z),intBitsToFloat(PV0i.y)) + intBitsToFloat(R8i.w))); +R18i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.w),intBitsToFloat(PV0i.y)) + intBitsToFloat(backupReg0i))); +R13i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.x), intBitsToFloat(PV0i.w))); +R8i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.y),intBitsToFloat(PV0i.y)) + intBitsToFloat(backupReg1i))); +R17i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R16i.w),intBitsToFloat(backupReg2i)) + intBitsToFloat(PV0i.z))); +PS1i = R17i.y; +// 0 +R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R16i.w),intBitsToFloat(R9i.x)) + intBitsToFloat(R12i.z))); +PV0i.x = R123i.x; +R125i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R19i.x),intBitsToFloat(R13i.z)) + intBitsToFloat(R18i.y))); +R124i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R19i.y),intBitsToFloat(R13i.z)) + intBitsToFloat(R8i.x))); +R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R16i.w),intBitsToFloat(R14i.z)) + intBitsToFloat(R12i.z))); +PV0i.w = R123i.w; +// 1 +R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.x),intBitsToFloat(PV0i.x)) + intBitsToFloat(0xba0a8ec8))); +R123i.x = clampFI32(R123i.x); +PV1i.x = R123i.x; +R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.x),intBitsToFloat(R17i.y)) + intBitsToFloat(0xba0a8ec8))); +R123i.y = clampFI32(R123i.y); +PV1i.y = R123i.y; +R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.x),intBitsToFloat(PV0i.w)) + intBitsToFloat(0xba0a8ec8))); +R123i.z = clampFI32(R123i.z); +PV1i.z = R123i.z; +R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R19i.z),intBitsToFloat(R13i.z)) + intBitsToFloat(R8i.w))); +PV1i.w = R123i.w; +// 2 +PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(PV1i.z))); +PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.z), intBitsToFloat(PV1i.x))); +PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.y), intBitsToFloat(PV1i.y))); +// 3 +R123i.y = floatBitsToInt((intBitsToFloat(PV0i.x) * intBitsToFloat(0x3f6e896b) + intBitsToFloat(0x3a011b1e))); +PV1i.y = R123i.y; +R123i.z = floatBitsToInt((intBitsToFloat(PV0i.y) * intBitsToFloat(0x3f6e896b) + intBitsToFloat(0x3a011b1e))); +PV1i.z = R123i.z; +R123i.w = floatBitsToInt((intBitsToFloat(PV0i.z) * intBitsToFloat(0x3f6e896b) + intBitsToFloat(0x3a011b1e))); +PV1i.w = R123i.w; +// 4 +R11i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R20i.z),intBitsToFloat(PV1i.w)) + intBitsToFloat(R21i.x))); +R11i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R20i.z),intBitsToFloat(PV1i.z)) + intBitsToFloat(R21i.y))); +R11i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R20i.z),intBitsToFloat(PV1i.y)) + intBitsToFloat(R21i.z))); +// export +passPixelColor0 = vec4(intBitsToFloat(R11i.x), intBitsToFloat(R11i.y), intBitsToFloat(R11i.z), intBitsToFloat(R11i.w)); +float luma = dot(passPixelColor0.rgb, vec3(0.2126, 0.7152, 0.0722)); +passPixelColor0.rgb = vec3(luma); +} diff --git a/Modifications/BreathOfTheWild_Monochromia/a5b3a5e5ab2938bc_0000000000001e49_ps.txt b/Modifications/BreathOfTheWild_Monochromia/a5b3a5e5ab2938bc_0000000000001e49_ps.txt new file mode 100644 index 00000000..71467195 --- /dev/null +++ b/Modifications/BreathOfTheWild_Monochromia/a5b3a5e5ab2938bc_0000000000001e49_ps.txt @@ -0,0 +1,102 @@ +#version 420 +#extension GL_ARB_texture_gather : enable +// shader a5b3a5e5ab2938bc +// Monochromia + AARestore v2 +// Clouds and other effects +// original shader dumped using cemu 1.11.c, BotW 1.3.1 +uniform ivec4 uf_remappedPS[3]; +layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0xf46ad000 res 640x360x1 dim 1 tm: 4 format 0820 compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0xf4e91800 res 1280x720x1 dim 1 tm: 4 format 0806 compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 2) uniform sampler2D textureUnitPS2;// Tex2 addr 0xf5054000 res 640x360x1 dim 1 tm: 4 format 080e compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler2 ClampX/Y/Z: 2 2 2 border: 1 +layout(location = 0) in vec4 passParameterSem0; +layout(location = 1) in vec4 passParameterSem1; +layout(location = 0) out vec4 passPixelColor0; +uniform vec2 uf_fragCoordScale; +int clampFI32(int v) +{ +if( v == 0x7FFFFFFF ) + return floatBitsToInt(1.0); +else if( v == 0xFFFFFFFF ) + return floatBitsToInt(0.0); +return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); +} +float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } +void main() +{ +vec4 R0f = vec4(0.0); +vec4 R1f = vec4(0.0); +vec4 R2f = vec4(0.0); +vec4 R123f = vec4(0.0); +vec4 R125f = vec4(0.0); +vec4 R126f = vec4(0.0); +vec4 R127f = vec4(0.0); +float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; +vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); +float PS0f = 0.0, PS1f = 0.0; +vec4 tempf = vec4(0.0); +float tempResultf; +int tempResulti; +ivec4 ARi = ivec4(0); +bool predResult = true; +vec3 cubeMapSTM; +int cubeMapFaceId; +R0f = passParameterSem0; +R1f = passParameterSem1; +R2f.w = (texture(textureUnitPS1, R0f.xy).x); +R0f.xyzw = (textureGather(textureUnitPS2, R0f.xy).xyzw); +// 0 +backupReg0f = R0f.y; +backupReg1f = R0f.x; +PV0f.x = -(R2f.w) + R0f.w; +PV0f.y = -(R2f.w) + R0f.z; +PV0f.z = -(R2f.w) + backupReg0f; +PV0f.w = -(R2f.w) + backupReg1f; +PS0f = R2f.w + intBitsToFloat(uf_remappedPS[0].x); +// 1 +R127f.x = max(PV0f.w, -(PV0f.w)); +PV1f.y = max(PV0f.z, -(PV0f.z)); +R127f.z = max(PV0f.y, -(PV0f.y)); +R127f.w = max(PV0f.x, -(PV0f.x)); +PS1f = 1.0 / PS0f; +// 2 +R126f.x = intBitsToFloat(uf_remappedPS[1].w) * PS1f; +R127f.y = PV1f.y * -(1.0); +R126f.z = floor(R1f.y); +R125f.w = floor(R1f.x); +PV0f.w = R125f.w; +PS0f = PV1f.y * -(1.0); +// 3 +tempf.x = dot(vec4(R127f.w,R127f.z,R127f.x,PS0f),vec4(1.0,-(1.0),1.0,1.0)); +PV1f.x = tempf.x; +PV1f.y = tempf.x; +PV1f.z = tempf.x; +PV1f.w = tempf.x; +R126f.w = tempf.x; +R126f.y = R1f.x + -(PV0f.w); +PS1f = R126f.y; +// 4 +tempf.x = dot(vec4(R127f.w,R127f.x,R127f.z,R127f.y),vec4(1.0,-(1.0),1.0,1.0)); +PV0f.x = tempf.x; +PV0f.y = tempf.x; +PV0f.z = tempf.x; +PV0f.w = tempf.x; +PS0f = R1f.y + -(R126f.z); +// 5 +R123f.x = (mul_nonIEEE(R126f.x,PV0f.x) + PS0f); +R123f.x = clamp(R123f.x, 0.0, 1.0); +PV1f.x = R123f.x; +R123f.y = (mul_nonIEEE(R126f.x,R126f.w) + R126f.y); +R123f.y = clamp(R123f.y, 0.0, 1.0); +PV1f.y = R123f.y; +// 6 +PV0f.z = R126f.z + PV1f.x; +PV0f.w = R125f.w + PV1f.y; +// 7 +R1f.x = (mul_nonIEEE(PV0f.w,intBitsToFloat(uf_remappedPS[2].z)*uf_fragCoordScale.x) + R1f.z); +R1f.y = (mul_nonIEEE(PV0f.z,intBitsToFloat(uf_remappedPS[2].w)*uf_fragCoordScale.y) + R1f.w); +R1f.xyzw = (texture(textureUnitPS0, R1f.xy).xyzw); +// export +passPixelColor0 = vec4(R1f.x, R1f.y, R1f.z, R1f.w); +float luma = dot(passPixelColor0.rgb, vec3(0.2126, 0.7152, 0.0722)); +passPixelColor0.rgb = vec3(luma); +} diff --git a/Modifications/BreathOfTheWild_Monochromia/bd8bba59e2149449_00000000000003c9_ps.txt b/Modifications/BreathOfTheWild_Monochromia/bd8bba59e2149449_00000000000003c9_ps.txt new file mode 100644 index 00000000..df2700fc --- /dev/null +++ b/Modifications/BreathOfTheWild_Monochromia/bd8bba59e2149449_00000000000003c9_ps.txt @@ -0,0 +1,253 @@ +#version 420 +#extension GL_ARB_texture_gather : enable +// shader bd8bba59e2149449 +// Monochromia +// Simple Levels + Curves + LumaSharpening +// Credits to Jamie, NAVras for LumaSharpening; CeeJay.dk for Levels, Curves +// original shader dumped using cemu 1.11.c, BotW 1.3.1 + +// Levels controls +const int BlackPoint = 3; //[0, 255] The black point is the new black - literally. Everything darker than this will become completely black +const int WhitePoint = 252; //[0, 255] The new white point. Everything brighter than this becomes completely white + +// Curves controls +const float Contrast = 0.25; //[-1.0, 1.0] The amount of contrast you want + +//LumaShapening +#define sharp_strength 2.5 //[0.10 to 3.00] Default 0.65 , Strength of the sharpening. +#define sharp_clamp 0.085 //[0.000 to 1.000] Default 0.035 , Limits maximum amount of sharpening a pixel recieves. +//Advanced sharpening settings +#define offset_bias 1.0 //[0.0 to 6.0] Offset bias adjusts the radius of the sampling pattern. + +//Others +const float bloomFactor = 0.9; //Default is 1.0 + +uniform ivec4 uf_remappedPS[1]; +layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0xf46ac800 res 320x180x1 dim 1 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x5) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0xf5c7b800 res 1280x720x1 dim 1 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 2 2 2 border: 1 +layout(location = 0) in vec4 passParameterSem0; +layout(location = 0) out vec4 passPixelColor0; +uniform vec2 uf_fragCoordScale; +int clampFI32(int v) +{ +if( v == 0x7FFFFFFF ) + return floatBitsToInt(1.0); +else if( v == 0xFFFFFFFF ) + return floatBitsToInt(0.0); +return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); +} +float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } + +/** +* Levels version 1.2 +* by Christian Cann Schuldt Jensen ~ CeeJay.dk +* +* Allows you to set a new black and a white level. +* This increases contrast, but clips any colors outside the new range to either black or white +* and so some details in the shadows or highlights can be lost. +* +* The shader is very useful for expanding the 16-235 TV range to 0-255 PC range. +* You might need it if you're playing a game meant to display on a TV with an emulator that does not do this. +* But it's also a quick and easy way to uniformly increase the contrast of an image. +* +* -- Version 1.0 -- +* First release +* -- Version 1.1 -- +* Optimized to only use 1 instruction (down from 2 - a 100% performance increase :) ) +* -- Version 1.2 -- +* Added the ability to highlight clipping regions of the image with #define HighlightClipping 1 +*/ +vec3 LevelsPass(vec3 inputColor) { + float black_point_float = BlackPoint / 255.0; + float white_point_float = WhitePoint == BlackPoint ? (255.0 / 0.00025) : (255.0 / (WhitePoint - BlackPoint)); // Avoid division by zero if the white and black point are the same + + vec3 color = inputColor; + color = color * white_point_float - (black_point_float * white_point_float); + + return color; +} + +/** +* Curves +* by Christian Cann Schuldt Jensen ~ CeeJay.dk +* +* Curves, uses S-curves to increase contrast, without clipping highlights and shadows. +*/ +vec3 CurvesPass(vec3 inputColor) { + vec3 colorInput = inputColor; + float Contrast_blend = Contrast * 2.0; //I multiply by two to give it a strength closer to the other curves. + vec3 x = colorInput.rgb; //if the curve should be applied to both Luma and Chroma + x = x * (x * (1.5 - x) + 0.5); //horner form - fastest version + vec3 color = x; //if the curve should be applied to both Luma and Chroma + colorInput.rgb = mix(colorInput.rgb, color, Contrast_blend); //Blend by Contrast + return colorInput; +} + +//LumaSharpening + +#define px (1.0/1280.0*uf_fragCoordScale.x) +#define py (1.0/720.0*uf_fragCoordScale.y) +#define CoefLuma vec3(0.2126, 0.7152, 0.0722) + +float lumaSharpening(sampler2D tex, vec2 pos){ + vec4 colorInput = texture(tex, pos); + + vec3 ori = colorInput.rgb; + + // -- Combining the strength and luma multipliers -- + vec3 sharp_strength_luma = (CoefLuma * sharp_strength); + + // -- Gaussian filter -- + // [ .25, .50, .25] [ 1 , 2 , 1 ] + // [ .50, 1, .50] = [ 2 , 4 , 2 ] + // [ .25, .50, .25] [ 1 , 2 , 1 ] + + + //float px = 1.0/tex_size[0]; + //float py = 1.0/tex_size[1]; + + vec3 blur_ori = texture(tex, pos + vec2(px,-py) * 0.5 * offset_bias).rgb; // South East + blur_ori += texture(tex, pos + vec2(-px,-py) * 0.5 * offset_bias).rgb; // South West + blur_ori += texture(tex, pos + vec2(px,py) * 0.5 * offset_bias).rgb; // North East + blur_ori += texture(tex, pos + vec2(-px,py) * 0.5 * offset_bias).rgb; // North West + + blur_ori *= 0.25; // ( /= 4) Divide by the number of texture fetches + + // -- Calculate the sharpening -- + vec3 sharp = ori - blur_ori; //Subtracting the blurred image from the original image + + // -- Adjust strength of the sharpening and clamp it-- + vec4 sharp_strength_luma_clamp = vec4(sharp_strength_luma * (0.5 / sharp_clamp),0.5); //Roll part of the clamp into the dot + + float sharp_luma = clamp((dot(vec4(sharp,1.0), sharp_strength_luma_clamp)), 0.0,1.0 ); //Calculate the luma, adjust the strength, scale up and clamp + sharp_luma = (sharp_clamp * 2.0) * sharp_luma - sharp_clamp; //scale down + + + // -- Combining the values to get the final sharpened pixel -- + + //colorInput.rgb = colorInput.rgb + sharp_luma; // Add the sharpening to the input color. + return sharp_luma; +} + +void main() +{ +vec4 R0f = vec4(0.0); +vec4 R1f = vec4(0.0); +vec4 R123f = vec4(0.0); +vec4 R125f = vec4(0.0); +vec4 R126f = vec4(0.0); +vec4 R127f = vec4(0.0); +float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; +vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); +float PS0f = 0.0, PS1f = 0.0; +vec4 tempf = vec4(0.0); +float tempResultf; +int tempResulti; +ivec4 ARi = ivec4(0); +bool predResult = true; +vec3 cubeMapSTM; +int cubeMapFaceId; +R0f = passParameterSem0; +R1f.xyz = (texture(textureUnitPS0, R0f.xy).xyz); +R1f.xyz *= bloomFactor; +R0f.xyz = texture(textureUnitPS1, passParameterSem0.xy).xyz; +float smask = lumaSharpening(textureUnitPS1, passParameterSem0.xy); +R0f.xyz += vec3(smask); +// 0 +R126f.x = R1f.x + R0f.x; +PV0f.x = R126f.x; +R127f.y = R1f.y + R0f.y; +PV0f.y = R127f.y; +R126f.z = R1f.z + R0f.z; +PV0f.z = R126f.z; +R125f.w = 1.0; +// 1 +tempf.x = dot(vec4(PV0f.x,PV0f.y,PV0f.z,-0.0),vec4(intBitsToFloat(0x3e99096c),intBitsToFloat(0x3f162b6b),intBitsToFloat(0x3dea4a8c),0.0)); +PV1f.x = tempf.x; +PV1f.y = tempf.x; +PV1f.z = tempf.x; +PV1f.w = tempf.x; +// 2 +R127f.x = -(R127f.y) * intBitsToFloat(0x3fb8aa3b); +PV0f.y = -(PV1f.x) * intBitsToFloat(0x3fb8aa3b); +R127f.z = -(R126f.x) * intBitsToFloat(0x3fb8aa3b); +R127f.w = -(R126f.z) * intBitsToFloat(0x3fb8aa3b); +R126f.w = 1.0 / PV1f.x; +PS0f = R126f.w; +// 3 +PS1f = exp2(PV0f.y); +// 4 +PV0f.x = -(PS1f) + 1.0; +PS0f = exp2(R127f.x); +// 5 +R127f.x = -(PS0f) + 1.0; +R126f.y = mul_nonIEEE(PV0f.x, PV0f.x); +PV1f.z = PV0f.x * R126f.w; +PS1f = exp2(R127f.w); +// 6 +backupReg0f = R126f.x; +backupReg1f = R127f.z; +R126f.x = mul_nonIEEE(backupReg0f, PV1f.z); +PV0f.y = -(PS1f) + 1.0; +R127f.z = mul_nonIEEE(R126f.z, PV1f.z); +PV0f.z = R127f.z; +R127f.w = mul_nonIEEE(R127f.y, PV1f.z); +PV0f.w = R127f.w; +PS0f = exp2(backupReg1f); +// 7 +PV1f.x = R127f.x + -(PV0f.w); +PV1f.y = PV0f.y + -(PV0f.z); +PV1f.w = -(PS0f) + 1.0; +// 8 +backupReg0f = R127f.z; +R127f.x = (mul_nonIEEE(PV1f.x,R126f.y) + R127f.w); +R127f.x = clamp(R127f.x, 0.0, 1.0); +PV0f.x = R127f.x; +PV0f.y = PV1f.w + -(R126f.x); +R127f.z = (mul_nonIEEE(PV1f.y,R126f.y) + backupReg0f); +R127f.z = clamp(R127f.z, 0.0, 1.0); +PV0f.z = R127f.z; +// 9 +backupReg0f = R126f.x; +R126f.x = (mul_nonIEEE(PV0f.y,R126f.y) + backupReg0f); +R126f.x = clamp(R126f.x, 0.0, 1.0); +PV1f.x = R126f.x; +R126f.y = max(PV0f.x, PV0f.z); +PV1f.w = min(PV0f.x, PV0f.z); +// 10 +tempf.x = dot(vec4(PV1f.x,R127f.x,R127f.z,R125f.w),vec4(intBitsToFloat(0x3f2aaaab),intBitsToFloat(0x3f2aaaab),intBitsToFloat(0x3f2aaaab),-(1.0))); +PV0f.x = tempf.x; +PV0f.y = tempf.x; +PV0f.z = tempf.x; +PV0f.w = tempf.x; +R126f.z = min(PV1f.x, PV1f.w); +PS0f = R126f.z; +// 11 +backupReg0f = R127f.x; +backupReg1f = R127f.z; +R127f.x = max(R126f.x, R126f.y); +PV1f.x = R127f.x; +R123f.y = (mul_nonIEEE(-(PV0f.x),PV0f.x) + 1.0); +PV1f.y = R123f.y; +R127f.z = backupReg0f + -(PS0f); +R125f.w = R126f.x + -(PS0f); +R126f.y = backupReg1f + -(PS0f); +PS1f = R126f.y; +// 12 +R126f.x = (mul_nonIEEE(PV1f.y,intBitsToFloat(uf_remappedPS[0].y)) + intBitsToFloat(uf_remappedPS[0].x)); +PV0f.x = R126f.x; +PV0f.y = -(R126f.z) + PV1f.x; +// 13 +R123f.w = (mul_nonIEEE(-(PV0f.x),PV0f.y) + R127f.x); +PV1f.w = R123f.w; +// 14 +R0f.x = (mul_nonIEEE(R126f.x,R125f.w) + PV1f.w); +R0f.y = (mul_nonIEEE(R126f.x,R127f.z) + PV1f.w); +R0f.z = (mul_nonIEEE(R126f.x,R126f.y) + PV1f.w); +// export +passPixelColor0 = vec4(R0f.x, R0f.y, R0f.z, R0f.w); +vec3 color = (passPixelColor0.xyz); +color = LevelsPass(color); +color = CurvesPass(color); +passPixelColor0 = vec4(color, R0f.w); +} diff --git a/Modifications/BreathOfTheWild_Monochromia/bdc96b6928e88c78_0000000079249749_ps.txt b/Modifications/BreathOfTheWild_Monochromia/bdc96b6928e88c78_0000000079249749_ps.txt new file mode 100644 index 00000000..0f951f8a --- /dev/null +++ b/Modifications/BreathOfTheWild_Monochromia/bdc96b6928e88c78_0000000079249749_ps.txt @@ -0,0 +1,692 @@ +#version 420 +#extension GL_ARB_texture_gather : enable +// shader bdc96b6928e88c78 +// Monochromia +// Terrain - rainy weather +// original shader dumped using cemu 1.11.c, BotW 1.3.1 +#define ENABLE_COLOR_FADE 0 // set this to 1 to enable, 0 to disable the effect + +uniform ivec4 uf_remappedPS[10]; +layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0xf45c6000 res 1280x720x1 dim 1 tm: 4 format 041a compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 2) uniform sampler2D textureUnitPS2;// Tex2 addr 0xf494a800 res 1280x720x1 dim 1 tm: 4 format 001a compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler2 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 4) uniform sampler2D textureUnitPS4;// Tex4 addr 0xf4e91800 res 1280x720x1 dim 1 tm: 4 format 0806 compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler4 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 6) uniform sampler2D textureUnitPS6;// Tex6 addr 0xf5054000 res 640x360x1 dim 1 tm: 4 format 080e compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler6 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 7) uniform sampler2D textureUnitPS7;// Tex7 addr 0xf5846000 res 640x360x1 dim 1 tm: 4 format 0001 compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler7 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 8) uniform samplerCubeArray textureUnitPS8;// Tex8 addr 0x3db66800 res 64x64x1 dim 3 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x4) sliceView: 0x0 (num 0x6) Sampler8 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 10) uniform sampler2DArray textureUnitPS10;// Tex10 addr 0xf5593000 res 640x360x2 dim 5 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x2) Sampler10 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 11) uniform sampler2D textureUnitPS11;// Tex11 addr 0xf575f800 res 640x360x1 dim 1 tm: 4 format 001a compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler11 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 13) uniform sampler2D textureUnitPS13;// Tex13 addr 0xf5977800 res 640x360x1 dim 1 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler13 ClampX/Y/Z: 2 2 2 border: 1 +layout(location = 0) in vec4 passParameterSem0; +layout(location = 1) in vec4 passParameterSem1; +layout(location = 2) in vec4 passParameterSem3; +layout(location = 3) in vec4 passParameterSem4; +layout(location = 4) in vec4 passParameterSem6; +layout(location = 0) out vec4 passPixelColor0; +uniform vec2 uf_fragCoordScale; +void redcCUBE(vec4 src0, vec4 src1, out vec3 stm, out int faceId) +{ +// stm -> x .. s, y .. t, z .. MajorAxis*2.0 +vec3 inputCoord = normalize(vec3(src1.y, src1.x, src0.x)); +float rx = inputCoord.x; +float ry = inputCoord.y; +float rz = inputCoord.z; +if( abs(rx) > abs(ry) && abs(rx) > abs(rz) ) +{ +stm.z = rx*2.0; +stm.xy = vec2(ry,rz); +if( rx >= 0.0 ) +{ +faceId = 0; +} +else +{ +faceId = 1; +} +} +else if( abs(ry) > abs(rx) && abs(ry) > abs(rz) ) +{ +stm.z = ry*2.0; +stm.xy = vec2(rx,rz); +if( ry >= 0.0 ) +{ +faceId = 2; +} +else +{ +faceId = 3; +} +} +else //if( abs(rz) > abs(ry) && abs(rz) > abs(rx) ) +{ +stm.z = rz*2.0; +stm.xy = vec2(rx,ry); +if( rz >= 0.0 ) +{ +faceId = 4; +} +else +{ +faceId = 5; +} +} +} +vec3 redcCUBEReverse(vec2 st, int faceId) +{ +st.yx = st.xy; +vec3 v; +float majorAxis = 1.0; +if( faceId == 0 ) +{ +v.yz = (st-vec2(1.5))*(majorAxis*2.0); +v.x = 1.0; +} +else if( faceId == 1 ) +{ +v.yz = (st-vec2(1.5))*(majorAxis*2.0); +v.x = -1.0; +} +else if( faceId == 2 ) +{ +v.xz = (st-vec2(1.5))*(majorAxis*2.0); +v.y = 1.0; +} +else if( faceId == 3 ) +{ +v.xz = (st-vec2(1.5))*(majorAxis*2.0); +v.y = -1.0; +} +else if( faceId == 4 ) +{ +v.xy = (st-vec2(1.5))*(majorAxis*2.0); +v.z = 1.0; +} +else +{ +v.xy = (st-vec2(1.5))*(majorAxis*2.0); +v.z = -1.0; +} +return v; +} +int clampFI32(int v) +{ +if( v == 0x7FFFFFFF ) + return floatBitsToInt(1.0); +else if( v == 0xFFFFFFFF ) + return floatBitsToInt(0.0); +return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); +} +float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } +void main() +{ +ivec4 R0i = ivec4(0); +ivec4 R1i = ivec4(0); +ivec4 R2i = ivec4(0); +ivec4 R3i = ivec4(0); +ivec4 R4i = ivec4(0); +ivec4 R5i = ivec4(0); +ivec4 R6i = ivec4(0); +ivec4 R7i = ivec4(0); +ivec4 R8i = ivec4(0); +ivec4 R9i = ivec4(0); +ivec4 R10i = ivec4(0); +ivec4 R11i = ivec4(0); +ivec4 R12i = ivec4(0); +ivec4 R13i = ivec4(0); +ivec4 R14i = ivec4(0); +ivec4 R15i = ivec4(0); +ivec4 R16i = ivec4(0); +ivec4 R17i = ivec4(0); +ivec4 R122i = ivec4(0); +ivec4 R123i = ivec4(0); +ivec4 R124i = ivec4(0); +ivec4 R125i = ivec4(0); +ivec4 R126i = ivec4(0); +ivec4 R127i = ivec4(0); +int backupReg0i, backupReg1i, backupReg2i, backupReg3i, backupReg4i; +ivec4 PV0i = ivec4(0), PV1i = ivec4(0); +int PS0i = 0, PS1i = 0; +ivec4 tempi = ivec4(0); +float tempResultf; +int tempResulti; +ivec4 ARi = ivec4(0); +bool predResult = true; +vec3 cubeMapSTM; +int cubeMapFaceId; +float cubeMapArrayIndex8 = 0.0; +R0i = floatBitsToInt(passParameterSem0); +R1i = floatBitsToInt(passParameterSem1); +R2i = floatBitsToInt(passParameterSem3); +R3i = floatBitsToInt(passParameterSem4); +R4i = floatBitsToInt(passParameterSem6); +R2i.w = floatBitsToInt(texture(textureUnitPS4, intBitsToFloat(R0i.xy)).x); +R7i.xyzw = floatBitsToInt(texture(textureUnitPS2, intBitsToFloat(R4i.zw)).xyzw); +R5i.xyzw = floatBitsToInt(textureGather(textureUnitPS6, intBitsToFloat(R0i.xy)).xyzw); +R6i.xyzw = floatBitsToInt(textureGather(textureUnitPS7, intBitsToFloat(R0i.xy)).xyzw); +R15i.xyzw = floatBitsToInt(texture(textureUnitPS1, intBitsToFloat(R4i.zw)).xyzw); +// 0 +PV0i.x = floatBitsToInt(-(intBitsToFloat(R2i.w)) + intBitsToFloat(R5i.x)); +PV0i.y = floatBitsToInt(-(intBitsToFloat(R2i.w)) + intBitsToFloat(R5i.w)); +R124i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.w),intBitsToFloat(uf_remappedPS[0].x)) + intBitsToFloat(uf_remappedPS[1].x))); +PV0i.z = R124i.z; +PV0i.w = floatBitsToInt(-(intBitsToFloat(R2i.w)) + intBitsToFloat(R5i.y)); +PS0i = floatBitsToInt(-(intBitsToFloat(R2i.w)) + intBitsToFloat(R5i.z)); +// 1 +R127i.x = floatBitsToInt(max(intBitsToFloat(PV0i.w), -(intBitsToFloat(PV0i.w)))); +R127i.y = floatBitsToInt(max(intBitsToFloat(PV0i.y), -(intBitsToFloat(PV0i.y)))); +R127i.z = floatBitsToInt(max(intBitsToFloat(PV0i.x), -(intBitsToFloat(PV0i.x)))); +PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), intBitsToFloat(uf_remappedPS[2].y))); +R126i.z = floatBitsToInt(max(intBitsToFloat(PS0i), -(intBitsToFloat(PS0i)))); +PS1i = R126i.z; +// 2 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R7i.x),intBitsToFloat(R7i.y),intBitsToFloat(R7i.z),-0.0),vec4(intBitsToFloat(0x3eaaaaab),intBitsToFloat(0x3eaaaaab),intBitsToFloat(0x3eaaaaab),0.0))); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +PS0i = floatBitsToInt(1.0 / intBitsToFloat(PV1i.w)); +// 3 +PV1i.x = floatBitsToInt(-(intBitsToFloat(PV0i.x)) + intBitsToFloat(R6i.w)); +R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].x), intBitsToFloat(PS0i))); +PV1i.z = floatBitsToInt(-(intBitsToFloat(PV0i.x)) + intBitsToFloat(R6i.y)); +PV1i.w = floatBitsToInt(-(intBitsToFloat(PV0i.x)) + intBitsToFloat(R6i.x)); +PS1i = floatBitsToInt(-(intBitsToFloat(PV0i.x)) + intBitsToFloat(R6i.z)); +// 4 +PV0i.x = floatBitsToInt(max(intBitsToFloat(PV1i.x), -(intBitsToFloat(PV1i.x)))); +PV0i.x = floatBitsToInt(intBitsToFloat(PV0i.x) * 4.0); +PV0i.y = floatBitsToInt(max(intBitsToFloat(PS1i), -(intBitsToFloat(PS1i)))); +PV0i.y = floatBitsToInt(intBitsToFloat(PV0i.y) * 4.0); +PV0i.z = floatBitsToInt(max(intBitsToFloat(PV1i.z), -(intBitsToFloat(PV1i.z)))); +PV0i.z = floatBitsToInt(intBitsToFloat(PV0i.z) * 4.0); +PV0i.w = floatBitsToInt(max(intBitsToFloat(PV1i.w), -(intBitsToFloat(PV1i.w)))); +PV0i.w = floatBitsToInt(intBitsToFloat(PV0i.w) * 4.0); +R125i.z = floatBitsToInt(floor(intBitsToFloat(R3i.x))); +PS0i = R125i.z; +// 5 +R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.y),intBitsToFloat(R126i.y)) + intBitsToFloat(PV0i.x))); +PV1i.x = R123i.x; +R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.z),intBitsToFloat(R126i.y)) + intBitsToFloat(PV0i.y))); +R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.x),intBitsToFloat(R126i.y)) + intBitsToFloat(PV0i.z))); +PV1i.z = R123i.z; +R127i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(R126i.y)) + intBitsToFloat(PV0i.w))); +PS1i = floatBitsToInt(floor(intBitsToFloat(R3i.y))); +// 6 +backupReg0i = R125i.z; +R127i.x = floatBitsToInt(intBitsToFloat(R3i.x) + -(intBitsToFloat(R125i.z))); +R126i.y = floatBitsToInt(intBitsToFloat(R3i.y) + -(intBitsToFloat(PS1i))); +R125i.z = floatBitsToInt(intBitsToFloat(backupReg0i) + -(0.5)); +PV0i.w = floatBitsToInt(-(intBitsToFloat(PV1i.z)) + intBitsToFloat(PV1i.x)); +R126i.w = floatBitsToInt(intBitsToFloat(PS1i) + -(0.5)); +PS0i = R126i.w; +// 7 +R126i.x = floatBitsToInt(intBitsToFloat(R7i.w) * intBitsToFloat(0x437f0000)); +PV1i.y = floatBitsToInt(-(intBitsToFloat(R127i.w)) + intBitsToFloat(PV0i.w)); +PV1i.z = floatBitsToInt(-(intBitsToFloat(R127i.y)) + intBitsToFloat(PV0i.w)); +R6i.w = floatBitsToInt((intBitsToFloat(R7i.x) * 2.0 + -(1.0))); +R6i.y = floatBitsToInt((intBitsToFloat(R7i.y) * 2.0 + -(1.0))); +PS1i = R6i.y; +// 8 +PV0i.x = floatBitsToInt(intBitsToFloat(R127i.w) + intBitsToFloat(PV1i.z)); +R8i.y = floatBitsToInt(-(intBitsToFloat(R124i.z))); +R6i.z = floatBitsToInt((intBitsToFloat(R7i.z) * 2.0 + -(1.0))); +PV0i.w = floatBitsToInt(intBitsToFloat(R127i.y) + intBitsToFloat(PV1i.y)); +R6i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.z), -(intBitsToFloat(R124i.z)))); +PS0i = R6i.x; +// 9 +R8i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.w), -(intBitsToFloat(R124i.z)))); +PV1i.y = floatBitsToInt(intBitsToFloat(PV0i.w) + intBitsToFloat(R126i.y)); +PV1i.y = clampFI32(PV1i.y); +PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.x) + intBitsToFloat(R127i.x)); +PV1i.z = clampFI32(PV1i.z); +R2i.w = floatBitsToInt(-(intBitsToFloat(R7i.w)) + intBitsToFloat(0x3f400000)); +PS1i = int(intBitsToFloat(R126i.x)); +// 10 +PV0i.x = floatBitsToInt(intBitsToFloat(PV1i.y) + intBitsToFloat(R126i.w)); +PV0i.y = floatBitsToInt(intBitsToFloat(R15i.w) * intBitsToFloat(0x437f0000)); +PV0i.z = PS1i & int(1); +PV0i.w = floatBitsToInt(intBitsToFloat(PV1i.z) + intBitsToFloat(R125i.z)); +R4i.z = floatBitsToInt(roundEven(0.0)); +PS0i = R4i.z; +// 11 +R4i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.z), intBitsToFloat(PV0i.w))); +R4i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.w), intBitsToFloat(PV0i.x))); +R3i.z = ((PV0i.z == 0)?(0):(0x3f800000)); +R3i.w = 0; +R11i.y = int(intBitsToFloat(PV0i.y)); +PS1i = R11i.y; +R16i.xyzw = floatBitsToInt(texture(textureUnitPS11, intBitsToFloat(R4i.xy)).xyzw); +R14i.xyz = floatBitsToInt(texture(textureUnitPS10, vec3(intBitsToFloat(R4i.x),intBitsToFloat(R4i.y),intBitsToFloat(R4i.z))).xyz); +R17i.xyz = floatBitsToInt(texture(textureUnitPS13, intBitsToFloat(R4i.xy)).xyz); +// 0 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R6i.w),intBitsToFloat(R6i.y),intBitsToFloat(R6i.z),-0.0),vec4(intBitsToFloat(R6i.w),intBitsToFloat(R6i.y),intBitsToFloat(R6i.z),0.0))); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +R125i.z = floatBitsToInt((intBitsToFloat(R16i.w) * 2.0 + -(1.0))); +R125i.z = clampFI32(R125i.z); +PS0i = R125i.z; +// 1 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R6i.x),intBitsToFloat(R8i.x),intBitsToFloat(R8i.y),-0.0),vec4(intBitsToFloat(R6i.x),intBitsToFloat(R8i.x),intBitsToFloat(R8i.y),0.0))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +tempResultf = 1.0 / sqrt(intBitsToFloat(PV0i.x)); +R126i.w = floatBitsToInt(tempResultf); +PS1i = R126i.w; +// 2 +R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.w), intBitsToFloat(PS1i))); +PV0i.x = R126i.x; +R125i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.y), intBitsToFloat(PS1i))); +PV0i.y = R125i.y; +R123i.z = floatBitsToInt((intBitsToFloat(0x3ecccccd) * intBitsToFloat(R3i.z) + intBitsToFloat(0x3dcccccd))); +PV0i.z = R123i.z; +PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[3].x), intBitsToFloat(R125i.z))); +PS0i = floatBitsToInt(sqrt(intBitsToFloat(PV1i.x))); +// 3 +backupReg0i = R6i.z; +R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(PV0i.z))); +R6i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.y),intBitsToFloat(PV0i.y)) + intBitsToFloat(R0i.y))); +R6i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.x),intBitsToFloat(PV0i.x)) + intBitsToFloat(R0i.x))); +R125i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(R126i.w))); +PS1i = floatBitsToInt(1.0 / intBitsToFloat(PS0i)); +// 4 +R3i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.x), intBitsToFloat(PS1i))); +PV0i.x = R3i.x; +R9i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.x), intBitsToFloat(PS1i))); +PV0i.y = R9i.y; +R2i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.y), intBitsToFloat(PS1i))); +PV0i.z = R2i.z; +PV0i.w = R16i.w; +PV0i.w = floatBitsToInt(intBitsToFloat(PV0i.w) * 2.0); +R4i.z = floatBitsToInt(roundEven(1.0)); +PS0i = R4i.z; +// 5 +backupReg0i = R127i.x; +backupReg0i = R127i.x; +backupReg0i = R127i.x; +R127i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),intBitsToFloat(backupReg0i)) + intBitsToFloat(R126i.x))); +PV1i.x = R127i.x; +R126i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.y),intBitsToFloat(backupReg0i)) + intBitsToFloat(R125i.y))); +PV1i.y = R126i.y; +R125i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.z),intBitsToFloat(backupReg0i)) + intBitsToFloat(R125i.w))); +PV1i.z = R125i.z; +PV1i.w = PV0i.w; +PV1i.w = clampFI32(PV1i.w); +R3i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(R6i.z)) + intBitsToFloat(R1i.z))); +PS1i = R3i.y; +// 6 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),-0.0),vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),0.0))); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +R125i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.w),intBitsToFloat(PV1i.w)) + intBitsToFloat(R7i.w))); +PS0i = R125i.x; +// 7 +R0i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(R6i.y)) + intBitsToFloat(R1i.w))); +R127i.y = floatBitsToInt(intBitsToFloat(R3i.x) + intBitsToFloat(uf_remappedPS[4].x)); +R124i.z = floatBitsToInt(intBitsToFloat(R9i.y) + intBitsToFloat(uf_remappedPS[4].y)); +R5i.w = floatBitsToInt((-(intBitsToFloat(PS0i)) * intBitsToFloat(0x40400000) + intBitsToFloat(0x40400000))); +tempResultf = 1.0 / sqrt(intBitsToFloat(PV0i.x)); +PS1i = floatBitsToInt(tempResultf); +// 8 +R10i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(PS1i))); +PV0i.x = R10i.x; +R10i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(PS1i))); +PV0i.y = R10i.y; +R10i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.z), intBitsToFloat(PS1i))); +PV0i.z = R10i.z; +R127i.w = floatBitsToInt(intBitsToFloat(R2i.z) + intBitsToFloat(uf_remappedPS[4].z)); +R126i.y = floatBitsToInt(-(intBitsToFloat(R125i.x)) + 1.0); +PS0i = R126i.y; +// 9 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R3i.x),intBitsToFloat(R9i.y),intBitsToFloat(R2i.z),-0.0),vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),0.0))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R126i.w = tempi.x; +PS1i = PV0i.x; +PS1i = floatBitsToInt(intBitsToFloat(PS1i) * 2.0); +// 10 +PV0i.x = R10i.z; +PV0i.x = floatBitsToInt(intBitsToFloat(PV0i.x) * 2.0); +R1i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV1i.x)),intBitsToFloat(PS1i)) + intBitsToFloat(R3i.x))); +PV0i.z = floatBitsToInt(max(-(intBitsToFloat(PV1i.x)), 0.0)); +PV0i.w = R10i.y; +PV0i.w = floatBitsToInt(intBitsToFloat(PV0i.w) * 2.0); +R9i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[4].x), intBitsToFloat(uf_remappedPS[3].w))); +PS0i = R9i.x; +// 11 +R11i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[4].y), intBitsToFloat(uf_remappedPS[3].w))); +R7i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R126i.w)),intBitsToFloat(PV0i.w)) + intBitsToFloat(R9i.y))); +R1i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R126i.w)),intBitsToFloat(PV0i.x)) + intBitsToFloat(R2i.z))); +R124i.w = floatBitsToInt(min(intBitsToFloat(PV0i.z), 1.0)); +R127i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R125i.x)),intBitsToFloat(R126i.y)) + intBitsToFloat(R126i.y))); +PS1i = R127i.x; +// 12 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R127i.y),intBitsToFloat(R124i.z),intBitsToFloat(R127i.w),-0.0),vec4(intBitsToFloat(R127i.y),intBitsToFloat(R124i.z),intBitsToFloat(R127i.w),0.0))); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +R9i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[4].z), intBitsToFloat(uf_remappedPS[3].w))); +PS0i = R9i.z; +// 13 +PV1i.x = R11i.y & 0x000000fc; +PV1i.y = floatBitsToInt(intBitsToFloat(R127i.x) + intBitsToFloat(0x3c23d70a)); +PV1i.y = clampFI32(PV1i.y); +R125i.z = floatBitsToInt((intBitsToFloat(R126i.y) * 0.5 + 0.5)); +R126i.w = floatBitsToInt(-(intBitsToFloat(R124i.w)) + 1.0); +tempResultf = 1.0 / sqrt(intBitsToFloat(PV0i.x)); +PS1i = floatBitsToInt(tempResultf); +// 14 +PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.z), intBitsToFloat(PS1i))); +PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), intBitsToFloat(PS1i))); +R8i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.y), intBitsToFloat(PV1i.y))); +PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.w), intBitsToFloat(PS1i))); +PS0i = floatBitsToInt(float(PV1i.x)); +// 15 +R127i.x = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(PV0i.y)), intBitsToFloat(uf_remappedPS[3].w))); +PV1i.x = R127i.x; +R127i.y = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(PV0i.x)), intBitsToFloat(uf_remappedPS[3].w))); +PV1i.y = R127i.y; +R124i.z = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(PV0i.w)), intBitsToFloat(uf_remappedPS[3].w))); +PV1i.z = R124i.z; +R127i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R124i.w)),intBitsToFloat(R126i.w)) + intBitsToFloat(R126i.w))); +R6i.w = floatBitsToInt(intBitsToFloat(PS0i) * intBitsToFloat(0x3b820821)); +PS1i = R6i.w; +// 16 +tempi.x = floatBitsToInt(dot(vec4(-(intBitsToFloat(R9i.x)),-(intBitsToFloat(R11i.x)),-(intBitsToFloat(R9i.z)),-0.0),vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),0.0))); +tempi.x = clampFI32(tempi.x); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +R1i.w = tempi.x; +R13i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.z), intBitsToFloat(R125i.z))); +R13i.x = floatBitsToInt(intBitsToFloat(R13i.x) / 2.0); +PS0i = R13i.x; +// 17 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R127i.x),intBitsToFloat(R127i.y),intBitsToFloat(R124i.z),-0.0),vec4(intBitsToFloat(R10i.x),intBitsToFloat(R10i.y),intBitsToFloat(R10i.z),0.0))); +tempi.x = clampFI32(tempi.x); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R126i.w = floatBitsToInt(-(intBitsToFloat(PV0i.x)) + 1.0); +PS1i = R126i.w; +// 18 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R126i.x),intBitsToFloat(R125i.y),intBitsToFloat(R125i.w),intBitsToFloat(R125i.w)),vec4(-(intBitsToFloat(R9i.x)),-(intBitsToFloat(R11i.x)),-(intBitsToFloat(R9i.z)),-(intBitsToFloat(R3i.w))))); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +R2i.w = tempi.x; +PS0i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(PV1i.x))); +// 19 +R7i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R1i.w)),intBitsToFloat(R126i.w)) + intBitsToFloat(R126i.w))); +R2i.y = floatBitsToInt((intBitsToFloat(R16i.y) * 0.5 + 0.5)); +R124i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.z),intBitsToFloat(PS0i)) + -(intBitsToFloat(PS0i)))); +PV1i.z = R124i.z; +R3i.w = floatBitsToInt((-(intBitsToFloat(R125i.x)) * intBitsToFloat(0x40400000) + 4.0)); +R12i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R16i.x), intBitsToFloat(uf_remappedPS[5].x))); +PS1i = R12i.x; +// 20 +PV0i.x = floatBitsToInt(intBitsToFloat(PV1i.z) + 1.0); +R123i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R124i.w)),intBitsToFloat(R127i.w)) + intBitsToFloat(R127i.w))); +PV0i.y = R123i.y; +R0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[3].w), intBitsToFloat(uf_remappedPS[3].w))); +R4i.w = floatBitsToInt((intBitsToFloat(R15i.x) * intBitsToFloat(0x3f895ef0) + intBitsToFloat(0xba0a8ec8))); +R4i.w = clampFI32(R4i.w); +R7i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.w),-(intBitsToFloat(R13i.x))) + intBitsToFloat(R124i.w))); +PS0i = R7i.w; +// 21 +R1i.x = R2i.w; +R1i.x = floatBitsToInt(intBitsToFloat(R1i.x) * 2.0); +R0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.w), intBitsToFloat(PV0i.y))); +R7i.z = R2i.w; +R7i.z = clampFI32(R7i.z); +R0i.w = floatBitsToInt((-(intBitsToFloat(R6i.w)) * intBitsToFloat(0x3d23d70a) + intBitsToFloat(0x3d23d70a))); +R2i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.z),intBitsToFloat(PV0i.x)) + intBitsToFloat(PV0i.x))); +PS1i = R2i.x; +// 0 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(uf_remappedPS[6].x),intBitsToFloat(uf_remappedPS[6].y),intBitsToFloat(uf_remappedPS[6].z),-0.0),vec4(intBitsToFloat(R1i.y),intBitsToFloat(R7i.y),intBitsToFloat(R1i.z),0.0))); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +R125i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R1i.w)),intBitsToFloat(R7i.x)) + intBitsToFloat(R7i.x))); +PS0i = R125i.y; +// 1 +R124i.x = floatBitsToInt(dot(vec4(intBitsToFloat(uf_remappedPS[7].x),intBitsToFloat(uf_remappedPS[7].y),intBitsToFloat(uf_remappedPS[7].z),-0.0),vec4(intBitsToFloat(R1i.y),intBitsToFloat(R7i.y),intBitsToFloat(R1i.z),0.0))); +PV1i.x = R124i.x; +PV1i.y = R124i.x; +PV1i.z = R124i.x; +PV1i.w = R124i.x; +R124i.z = floatBitsToInt(-(intBitsToFloat(PV0i.x))); +PS1i = R124i.z; +// 2 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(uf_remappedPS[8].x),intBitsToFloat(uf_remappedPS[8].y),intBitsToFloat(uf_remappedPS[8].z),-0.0),vec4(intBitsToFloat(R1i.y),intBitsToFloat(R7i.y),intBitsToFloat(R1i.z),0.0))); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +R124i.y = tempi.x; +R125i.z = floatBitsToInt(1.0 / intBitsToFloat(R3i.w)); +PS0i = R125i.z; +// 3 +backupReg0i = R124i.x; +backupReg0i = R124i.x; +backupReg1i = R124i.z; +backupReg1i = R124i.z; +redcCUBE(vec4(intBitsToFloat(R124i.z),intBitsToFloat(R124i.z),intBitsToFloat(backupReg0i),intBitsToFloat(PV0i.x)),vec4(intBitsToFloat(PV0i.x),intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),intBitsToFloat(backupReg1i)),cubeMapSTM,cubeMapFaceId); +R124i.x = floatBitsToInt(cubeMapSTM.x); +R124i.y = floatBitsToInt(cubeMapSTM.y); +R124i.z = floatBitsToInt(cubeMapSTM.z); +R124i.w = cubeMapFaceId; +PV1i.x = R124i.x; +PV1i.y = R124i.y; +PV1i.z = R124i.z; +PV1i.w = R124i.w; +PS1i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.w), intBitsToFloat(R1i.x))); +// 4 +R1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R7i.x), intBitsToFloat(R125i.y))); +R7i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.y), intBitsToFloat(R125i.z))); +R5i.z = PV1i.w; +R3i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.z), intBitsToFloat(PS1i))); +PS0i = floatBitsToInt(1.0 / abs(intBitsToFloat(PV1i.z))); +// 5 +backupReg0i = R2i.y; +R7i.x = floatBitsToInt((intBitsToFloat(R6i.w) * 0.25 + 0.25)); +R2i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R16i.x), intBitsToFloat(R7i.z))); +R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.x),intBitsToFloat(PS0i)) + 1.5)); +PV1i.z = R123i.z; +R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.y),intBitsToFloat(PS0i)) + 1.5)); +PV1i.w = R123i.w; +R0i.y = floatBitsToInt(intBitsToFloat(R7i.z) + intBitsToFloat(backupReg0i)); +R0i.y = clampFI32(R0i.y); +PS1i = R0i.y; +// 6 +R5i.x = PV1i.w; +R5i.y = PV1i.z; +R7i.z = floatBitsToInt(intBitsToFloat(R13i.x) + intBitsToFloat(R7i.w)); +R2i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R15i.x),intBitsToFloat(R6i.w)) + intBitsToFloat(R0i.w))); +R1i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R15i.y),intBitsToFloat(R6i.w)) + intBitsToFloat(R0i.w))); +PS0i = R1i.y; +R7i.w = floatBitsToInt(texture(textureUnitPS4, intBitsToFloat(R6i.zy)).x); +R5i.xyz = floatBitsToInt(textureLod(textureUnitPS8, vec4(redcCUBEReverse(intBitsToFloat(R5i.xy),R5i.z),cubeMapArrayIndex8),intBitsToFloat(R5i.w)).xyz); +R4i.xyz = floatBitsToInt(texture(textureUnitPS10, vec3(intBitsToFloat(R4i.x),intBitsToFloat(R4i.y),intBitsToFloat(R4i.z))).xyz); +// 0 +backupReg0i = R0i.y; +R125i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R15i.z),intBitsToFloat(R6i.w)) + intBitsToFloat(R0i.w))); +R0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.y), intBitsToFloat(backupReg0i))); +R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].x),intBitsToFloat(R7i.w)) + intBitsToFloat(uf_remappedPS[1].x))); +PV0i.z = R123i.z; +R126i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.z), intBitsToFloat(R0i.z))); +R124i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R16i.y),-(intBitsToFloat(R7i.x))) + intBitsToFloat(R16i.y))); +PS0i = R124i.z; +// 1 +backupReg0i = R0i.x; +PV1i.x = floatBitsToInt(-(intBitsToFloat(PV0i.z))); +R125i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.w),-(intBitsToFloat(R1i.x))) + intBitsToFloat(R2i.w))); +PV1i.z = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(PV0i.z)), intBitsToFloat(backupReg0i))); +PV1i.w = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(PV0i.z)), intBitsToFloat(R3i.y))); +R124i.w = floatBitsToInt(1.0 / intBitsToFloat(R2i.x)); +PS1i = R124i.w; +// 2 +R124i.x = floatBitsToInt(-(intBitsToFloat(R6i.x)) + intBitsToFloat(PV1i.w)); +PV0i.x = R124i.x; +R124i.y = floatBitsToInt(-(intBitsToFloat(R8i.x)) + intBitsToFloat(PV1i.z)); +PV0i.y = R124i.y; +PV0i.z = floatBitsToInt(-(intBitsToFloat(R8i.y)) + intBitsToFloat(PV1i.x)); +R127i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),-(intBitsToFloat(R1i.x))) + intBitsToFloat(R1i.y))); +R126i.y = floatBitsToInt(1.0 / intBitsToFloat(R7i.z)); +PS0i = R126i.y; +// 3 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R3i.x),intBitsToFloat(R9i.y),intBitsToFloat(R2i.z),-0.0),vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),0.0))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R127i.y = tempi.x; +R125i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.x),-(intBitsToFloat(R1i.x))) + intBitsToFloat(R125i.x))); +PS1i = R125i.z; +// 4 +backupReg0i = R124i.y; +R123i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R3i.x)),intBitsToFloat(PV1i.x)) + intBitsToFloat(R124i.x))); +PV0i.x = R123i.x; +R124i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.z), intBitsToFloat(R124i.w))); +R127i.z = floatBitsToInt(intBitsToFloat(R7i.x) + intBitsToFloat(R124i.z)); +R124i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R9i.y)),intBitsToFloat(PV1i.x)) + intBitsToFloat(backupReg0i))); +R8i.z = floatBitsToInt((intBitsToFloat(R15i.z) * intBitsToFloat(0x3f895ef0) + intBitsToFloat(0xba0a8ec8))); +R8i.z = clampFI32(R8i.z); +PS0i = R8i.z; +// 5 +backupReg0i = R127i.w; +R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.w),-(intBitsToFloat(R7i.y))) + intBitsToFloat(R2i.w))); +PV1i.x = R123i.x; +R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),-(intBitsToFloat(R7i.y))) + intBitsToFloat(R1i.y))); +PV1i.y = R123i.y; +PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(PV0i.x))); +R127i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.x),-(intBitsToFloat(R7i.y))) + intBitsToFloat(R125i.x))); +R124i.x = floatBitsToInt(intBitsToFloat(R1i.x) + intBitsToFloat(backupReg0i)); +PS1i = R124i.x; +// 6 +backupReg0i = R125i.z; +R125i.x = floatBitsToInt(intBitsToFloat(R1i.x) + intBitsToFloat(R125i.y)); +R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.w),intBitsToFloat(R124i.w)) + intBitsToFloat(PV1i.z))); +PV0i.y = R123i.y; +R125i.z = floatBitsToInt(intBitsToFloat(R7i.y) + intBitsToFloat(PV1i.x)); +R124i.w = floatBitsToInt(intBitsToFloat(R1i.x) + intBitsToFloat(backupReg0i)); +R124i.z = floatBitsToInt(intBitsToFloat(R7i.y) + intBitsToFloat(PV1i.y)); +PS0i = R124i.z; +// 7 +tempi.x = floatBitsToInt(dot(vec4(-(intBitsToFloat(R9i.x)),-(intBitsToFloat(R11i.x)),-(intBitsToFloat(R9i.z)),-0.0),vec4(intBitsToFloat(R10i.x),intBitsToFloat(R10i.y),intBitsToFloat(R10i.z),0.0))); +tempi.x = clampFI32(tempi.x); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +tempResultf = 1.0 / sqrt(intBitsToFloat(PV0i.y)); +PS1i = floatBitsToInt(tempResultf); +// 8 +R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.x),-(intBitsToFloat(R13i.x))) + intBitsToFloat(PV1i.x))); +PV0i.x = R123i.x; +PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R12i.x), intBitsToFloat(PV1i.x))); +R126i.z = floatBitsToInt(intBitsToFloat(R7i.y) + intBitsToFloat(R127i.w)); +PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), intBitsToFloat(PS1i))); +R126i.x = floatBitsToInt(0.25 * intBitsToFloat(R126i.y)); +PS0i = R126i.x; +// 9 +R127i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[9].x),intBitsToFloat(R0i.y)) + intBitsToFloat(R14i.x))); +R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[9].y),intBitsToFloat(R0i.y)) + intBitsToFloat(R14i.y))); +PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[2].z), intBitsToFloat(PV0i.w))); +PV1i.w = floatBitsToInt(intBitsToFloat(R13i.x) + intBitsToFloat(PV0i.x)); +R9i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(R126i.w))); +PS1i = R9i.z; +// 10 +backupReg0i = R0i.y; +backupReg1i = R14i.z; +backupReg2i = R125i.x; +R125i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.x), intBitsToFloat(R126i.x))); +PV0i.y = floatBitsToInt(intBitsToFloat(PV1i.z) * intBitsToFloat(0x3ced9168)); +PV0i.y = clampFI32(PV0i.y); +R14i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[9].z),intBitsToFloat(backupReg0i)) + intBitsToFloat(backupReg1i))); +R126i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg2i), intBitsToFloat(R126i.x))); +PS0i = floatBitsToInt(1.0 / intBitsToFloat(PV1i.w)); +// 11 +backupReg0i = R126i.x; +backupReg1i = R125i.z; +R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS0i), intBitsToFloat(R124i.y))); +R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.y),intBitsToFloat(R3i.w)) + 1.0)); +PV1i.y = R123i.y; +R125i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.w), intBitsToFloat(backupReg0i))); +PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(backupReg1i))); +PS1i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(R124i.z))); +// 12 +backupReg0i = R127i.z; +R123i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R6i.w)),intBitsToFloat(PV1i.y)) + intBitsToFloat(PV1i.y))); +PV0i.x = R123i.x; +R124i.y = floatBitsToInt((intBitsToFloat(R15i.y) * intBitsToFloat(0x3f895ef0) + intBitsToFloat(0xba0a8ec8))); +R124i.y = clampFI32(R124i.y); +R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.x),intBitsToFloat(PV1i.w)) + intBitsToFloat(R4i.x))); +PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(R126i.z))); +R126i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.y),intBitsToFloat(PS1i)) + intBitsToFloat(R4i.y))); +PS0i = R126i.y; +// 13 +R124i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.z),intBitsToFloat(PV0i.w)) + intBitsToFloat(R4i.z))); +PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R14i.z), intBitsToFloat(PV0i.x))); +PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), intBitsToFloat(PV0i.x))); +PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(PV0i.x))); +R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[9].x), intBitsToFloat(R126i.w))); +PS1i = R127i.x; +// 14 +backupReg0i = R126i.x; +R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R9i.z), intBitsToFloat(backupReg0i))); +PV0i.x = R126i.x; +PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(R4i.w))); +R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.z), intBitsToFloat(R124i.y))); +R126i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.y), intBitsToFloat(R8i.z))); +PS0i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[9].y), intBitsToFloat(R125i.x))); +// 15 +backupReg0i = R127i.x; +R127i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PS0i),intBitsToFloat(PV0i.x)) + intBitsToFloat(R126i.y))); +PV1i.y = R11i.y & int(1); +PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[9].z), intBitsToFloat(R125i.z))); +R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(PV0i.x)) + intBitsToFloat(R127i.z))); +PV1i.w = R123i.w; +R122i.x = floatBitsToInt((intBitsToFloat(PV0i.y) * intBitsToFloat(0x3f6e896b) + intBitsToFloat(0x3a011b1e))); +PS1i = R122i.x; +// 16 +R123i.x = floatBitsToInt((intBitsToFloat(R126i.z) * intBitsToFloat(0x3f6e896b) + intBitsToFloat(0x3a011b1e))); +PV0i.x = R123i.x; +R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.z),intBitsToFloat(R126i.x)) + intBitsToFloat(R124i.x))); +PV0i.y = R123i.y; +R123i.z = floatBitsToInt((intBitsToFloat(R126i.w) * intBitsToFloat(0x3f6e896b) + intBitsToFloat(0x3a011b1e))); +PV0i.z = R123i.z; +PV0i.w = floatBitsToInt(intBitsToFloat(PV1i.w) + intBitsToFloat(PS1i)); +R126i.y = floatBitsToInt(float(PV1i.y)); +PS0i = R126i.y; +// 17 +PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R16i.z), intBitsToFloat(R16i.z))); +PV1i.y = floatBitsToInt(intBitsToFloat(PV0i.y) + intBitsToFloat(PV0i.z)); +PV1i.z = floatBitsToInt(intBitsToFloat(R127i.x) + intBitsToFloat(PV0i.x)); +R11i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R16i.z),intBitsToFloat(PV0i.w)) + intBitsToFloat(R17i.x))); +PS1i = R11i.x; +// 18 +R11i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R16i.z),intBitsToFloat(PV1i.z)) + intBitsToFloat(R17i.y))); +R11i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R16i.z),intBitsToFloat(PV1i.y)) + intBitsToFloat(R17i.z))); +R11i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(PV1i.x))); +// export +passPixelColor0 = vec4(intBitsToFloat(R11i.x), intBitsToFloat(R11i.y), intBitsToFloat(R11i.z), intBitsToFloat(R11i.w)); +float luma = dot(passPixelColor0.rgb, vec3(0.2126, 0.7152, 0.0722)); +#if (ENABLE_COLOR_FADE == 1) +float depth = texture(textureUnitPS4, passParameterSem0.xy).x; +float factor = smoothstep(0.0005, 0.00075, depth); +passPixelColor0.rgb = mix(passPixelColor0.rgb, vec3(luma), factor); +#else +passPixelColor0.rgb = vec3(luma); +#endif +} diff --git a/Modifications/BreathOfTheWild_Monochromia/bff17056bfac28dd_0000000079249749_ps.txt b/Modifications/BreathOfTheWild_Monochromia/bff17056bfac28dd_0000000079249749_ps.txt new file mode 100644 index 00000000..ae8ef282 --- /dev/null +++ b/Modifications/BreathOfTheWild_Monochromia/bff17056bfac28dd_0000000079249749_ps.txt @@ -0,0 +1,722 @@ +#version 420 +#extension GL_ARB_texture_gather : enable +// shader bff17056bfac28dd +// Monochromia +// Water - rainy weather +// original shader dumped using cemu 1.11.c, BotW 1.3.1 +#define ENABLE_COLOR_FADE 0 // set this to 1 to enable, 0 to disable the effect + +uniform ivec4 uf_remappedPS[14]; +layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0xf45c6000 res 1280x720x1 dim 1 tm: 4 format 041a compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 2) uniform sampler2D textureUnitPS2;// Tex2 addr 0xf494a800 res 1280x720x1 dim 1 tm: 4 format 001a compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler2 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 4) uniform sampler2D textureUnitPS4;// Tex4 addr 0xf4e91800 res 1280x720x1 dim 1 tm: 4 format 0806 compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler4 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 6) uniform sampler2D textureUnitPS6;// Tex6 addr 0xf5054000 res 640x360x1 dim 1 tm: 4 format 080e compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler6 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 7) uniform sampler2D textureUnitPS7;// Tex7 addr 0xf5846000 res 640x360x1 dim 1 tm: 4 format 0001 compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler7 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 8) uniform samplerCubeArray textureUnitPS8;// Tex8 addr 0x3db66800 res 64x64x1 dim 3 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x4) sliceView: 0x0 (num 0x6) Sampler8 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 10) uniform sampler2DArray textureUnitPS10;// Tex10 addr 0xf5593000 res 640x360x2 dim 5 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x2) Sampler10 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 11) uniform sampler2D textureUnitPS11;// Tex11 addr 0xf575f800 res 640x360x1 dim 1 tm: 4 format 001a compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler11 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 13) uniform sampler2D textureUnitPS13;// Tex13 addr 0xf5977800 res 640x360x1 dim 1 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler13 ClampX/Y/Z: 2 2 2 border: 1 +layout(location = 0) in vec4 passParameterSem0; +layout(location = 1) in vec4 passParameterSem4; +layout(location = 2) in vec4 passParameterSem6; +layout(location = 0) out vec4 passPixelColor0; +uniform vec2 uf_fragCoordScale; +void redcCUBE(vec4 src0, vec4 src1, out vec3 stm, out int faceId) +{ +// stm -> x .. s, y .. t, z .. MajorAxis*2.0 +vec3 inputCoord = normalize(vec3(src1.y, src1.x, src0.x)); +float rx = inputCoord.x; +float ry = inputCoord.y; +float rz = inputCoord.z; +if( abs(rx) > abs(ry) && abs(rx) > abs(rz) ) +{ +stm.z = rx*2.0; +stm.xy = vec2(ry,rz); +if( rx >= 0.0 ) +{ +faceId = 0; +} +else +{ +faceId = 1; +} +} +else if( abs(ry) > abs(rx) && abs(ry) > abs(rz) ) +{ +stm.z = ry*2.0; +stm.xy = vec2(rx,rz); +if( ry >= 0.0 ) +{ +faceId = 2; +} +else +{ +faceId = 3; +} +} +else //if( abs(rz) > abs(ry) && abs(rz) > abs(rx) ) +{ +stm.z = rz*2.0; +stm.xy = vec2(rx,ry); +if( rz >= 0.0 ) +{ +faceId = 4; +} +else +{ +faceId = 5; +} +} +} +vec3 redcCUBEReverse(vec2 st, int faceId) +{ +st.yx = st.xy; +vec3 v; +float majorAxis = 1.0; +if( faceId == 0 ) +{ +v.yz = (st-vec2(1.5))*(majorAxis*2.0); +v.x = 1.0; +} +else if( faceId == 1 ) +{ +v.yz = (st-vec2(1.5))*(majorAxis*2.0); +v.x = -1.0; +} +else if( faceId == 2 ) +{ +v.xz = (st-vec2(1.5))*(majorAxis*2.0); +v.y = 1.0; +} +else if( faceId == 3 ) +{ +v.xz = (st-vec2(1.5))*(majorAxis*2.0); +v.y = -1.0; +} +else if( faceId == 4 ) +{ +v.xy = (st-vec2(1.5))*(majorAxis*2.0); +v.z = 1.0; +} +else +{ +v.xy = (st-vec2(1.5))*(majorAxis*2.0); +v.z = -1.0; +} +return v; +} +int clampFI32(int v) +{ +if( v == 0x7FFFFFFF ) + return floatBitsToInt(1.0); +else if( v == 0xFFFFFFFF ) + return floatBitsToInt(0.0); +return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); +} +float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } +void main() +{ +ivec4 R0i = ivec4(0); +ivec4 R1i = ivec4(0); +ivec4 R2i = ivec4(0); +ivec4 R3i = ivec4(0); +ivec4 R4i = ivec4(0); +ivec4 R5i = ivec4(0); +ivec4 R6i = ivec4(0); +ivec4 R7i = ivec4(0); +ivec4 R8i = ivec4(0); +ivec4 R9i = ivec4(0); +ivec4 R10i = ivec4(0); +ivec4 R11i = ivec4(0); +ivec4 R12i = ivec4(0); +ivec4 R13i = ivec4(0); +ivec4 R14i = ivec4(0); +ivec4 R15i = ivec4(0); +ivec4 R16i = ivec4(0); +ivec4 R17i = ivec4(0); +ivec4 R122i = ivec4(0); +ivec4 R123i = ivec4(0); +ivec4 R124i = ivec4(0); +ivec4 R125i = ivec4(0); +ivec4 R126i = ivec4(0); +ivec4 R127i = ivec4(0); +int backupReg0i, backupReg1i, backupReg2i, backupReg3i, backupReg4i; +ivec4 PV0i = ivec4(0), PV1i = ivec4(0); +int PS0i = 0, PS1i = 0; +ivec4 tempi = ivec4(0); +float tempResultf; +int tempResulti; +ivec4 ARi = ivec4(0); +bool predResult = true; +vec3 cubeMapSTM; +int cubeMapFaceId; +float cubeMapArrayIndex8 = 0.0; +R0i = floatBitsToInt(passParameterSem0); +R1i = floatBitsToInt(passParameterSem4); +R2i = floatBitsToInt(passParameterSem6); +R3i.w = floatBitsToInt(texture(textureUnitPS4, intBitsToFloat(R0i.xy)).x); +R6i.xyzw = floatBitsToInt(texture(textureUnitPS2, intBitsToFloat(R2i.zw)).xyzw); +R4i.xyzw = floatBitsToInt(textureGather(textureUnitPS6, intBitsToFloat(R0i.xy)).xyzw); +R5i.xyzw = floatBitsToInt(textureGather(textureUnitPS7, intBitsToFloat(R0i.xy)).xyzw); +R7i.xyzw = floatBitsToInt(texture(textureUnitPS1, intBitsToFloat(R2i.zw)).xyzw); +// 0 +PV0i.x = floatBitsToInt(-(intBitsToFloat(R3i.w)) + intBitsToFloat(R4i.w)); +R124i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.w),intBitsToFloat(uf_remappedPS[0].x)) + intBitsToFloat(uf_remappedPS[1].x))); +PV0i.y = R124i.y; +PV0i.z = floatBitsToInt(-(intBitsToFloat(R3i.w)) + intBitsToFloat(R4i.y)); +PV0i.w = floatBitsToInt(-(intBitsToFloat(R3i.w)) + intBitsToFloat(R4i.x)); +PS0i = floatBitsToInt(-(intBitsToFloat(R3i.w)) + intBitsToFloat(R4i.z)); +// 1 +R127i.x = floatBitsToInt(max(intBitsToFloat(PV0i.z), -(intBitsToFloat(PV0i.z)))); +R127i.y = floatBitsToInt(max(intBitsToFloat(PV0i.x), -(intBitsToFloat(PV0i.x)))); +PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(uf_remappedPS[2].y))); +R127i.w = floatBitsToInt(max(intBitsToFloat(PV0i.w), -(intBitsToFloat(PV0i.w)))); +R126i.y = floatBitsToInt(max(intBitsToFloat(PS0i), -(intBitsToFloat(PS0i)))); +PS1i = R126i.y; +// 2 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R6i.x),intBitsToFloat(R6i.y),intBitsToFloat(R6i.z),-0.0),vec4(intBitsToFloat(0x3eaaaaab),intBitsToFloat(0x3eaaaaab),intBitsToFloat(0x3eaaaaab),0.0))); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +R4i.y = floatBitsToInt(1.0 / intBitsToFloat(PV1i.z)); +PS0i = R4i.y; +// 3 +R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].x), intBitsToFloat(PS0i))); +PV1i.y = floatBitsToInt(-(intBitsToFloat(PV0i.x)) + intBitsToFloat(R5i.y)); +PV1i.z = floatBitsToInt(-(intBitsToFloat(PV0i.x)) + intBitsToFloat(R5i.x)); +PV1i.w = floatBitsToInt(-(intBitsToFloat(PV0i.x)) + intBitsToFloat(R5i.w)); +PS1i = floatBitsToInt(-(intBitsToFloat(PV0i.x)) + intBitsToFloat(R5i.z)); +// 4 +PV0i.x = floatBitsToInt(max(intBitsToFloat(PS1i), -(intBitsToFloat(PS1i)))); +PV0i.x = floatBitsToInt(intBitsToFloat(PV0i.x) * 4.0); +PV0i.y = floatBitsToInt(max(intBitsToFloat(PV1i.y), -(intBitsToFloat(PV1i.y)))); +PV0i.y = floatBitsToInt(intBitsToFloat(PV0i.y) * 4.0); +PV0i.z = floatBitsToInt(max(intBitsToFloat(PV1i.z), -(intBitsToFloat(PV1i.z)))); +PV0i.z = floatBitsToInt(intBitsToFloat(PV0i.z) * 4.0); +PV0i.w = floatBitsToInt(max(intBitsToFloat(PV1i.w), -(intBitsToFloat(PV1i.w)))); +PV0i.w = floatBitsToInt(intBitsToFloat(PV0i.w) * 4.0); +R125i.y = floatBitsToInt(floor(intBitsToFloat(R1i.x))); +PS0i = R125i.y; +// 5 +backupReg0i = R127i.x; +R127i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.y),intBitsToFloat(R126i.x)) + intBitsToFloat(PV0i.x))); +R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(R126i.x)) + intBitsToFloat(PV0i.y))); +PV1i.y = R123i.y; +R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.w),intBitsToFloat(R126i.x)) + intBitsToFloat(PV0i.z))); +R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.y),intBitsToFloat(R126i.x)) + intBitsToFloat(PV0i.w))); +PV1i.w = R123i.w; +PS1i = floatBitsToInt(floor(intBitsToFloat(R1i.y))); +// 6 +backupReg0i = R125i.y; +backupReg0i = R125i.y; +R126i.x = floatBitsToInt(intBitsToFloat(R1i.y) + -(intBitsToFloat(PS1i))); +R125i.y = floatBitsToInt(intBitsToFloat(backupReg0i) + -(0.5)); +PV0i.z = floatBitsToInt(-(intBitsToFloat(PV1i.y)) + intBitsToFloat(PV1i.w)); +R127i.w = floatBitsToInt(intBitsToFloat(R1i.x) + -(intBitsToFloat(backupReg0i))); +R126i.z = floatBitsToInt(intBitsToFloat(PS1i) + -(0.5)); +PS0i = R126i.z; +// 7 +PV1i.x = floatBitsToInt(-(intBitsToFloat(R127i.z)) + intBitsToFloat(PV0i.z)); +PV1i.y = floatBitsToInt(-(intBitsToFloat(R127i.x)) + intBitsToFloat(PV0i.z)); +R5i.z = floatBitsToInt((intBitsToFloat(R6i.x) * 2.0 + -(1.0))); +R5i.w = floatBitsToInt((intBitsToFloat(R6i.y) * 2.0 + -(1.0))); +R4i.z = floatBitsToInt((intBitsToFloat(R6i.z) * 2.0 + -(1.0))); +PS1i = R4i.z; +// 8 +R5i.x = uf_remappedPS[3].y; +R2i.y = uf_remappedPS[4].y; +PV0i.z = floatBitsToInt(intBitsToFloat(R127i.x) + intBitsToFloat(PV1i.x)); +PV0i.w = floatBitsToInt(intBitsToFloat(R127i.z) + intBitsToFloat(PV1i.y)); +R3i.z = floatBitsToInt(-(intBitsToFloat(R124i.y))); +PS0i = R3i.z; +// 9 +backupReg0i = R0i.w; +PV1i.x = floatBitsToInt(intBitsToFloat(PV0i.z) + intBitsToFloat(R126i.x)); +PV1i.x = clampFI32(PV1i.x); +PV1i.y = floatBitsToInt(intBitsToFloat(PV0i.w) + intBitsToFloat(R127i.w)); +PV1i.y = clampFI32(PV1i.y); +R8i.z = uf_remappedPS[5].y; +R0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.z), -(intBitsToFloat(R124i.y)))); +PV1i.w = R0i.w; +R5i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), -(intBitsToFloat(R124i.y)))); +PS1i = R5i.y; +// 10 +PV0i.x = floatBitsToInt(intBitsToFloat(PV1i.x) + intBitsToFloat(R126i.z)); +R0i.y = floatBitsToInt(intBitsToFloat(PV1i.w) + -(intBitsToFloat(uf_remappedPS[6].x))); +R0i.z = floatBitsToInt(intBitsToFloat(PS1i) + -(intBitsToFloat(uf_remappedPS[6].y))); +PV0i.w = floatBitsToInt(intBitsToFloat(PV1i.y) + intBitsToFloat(R125i.y)); +R2i.z = floatBitsToInt(intBitsToFloat(R3i.z) + -(intBitsToFloat(uf_remappedPS[6].z))); +PS0i = R2i.z; +// 11 +R1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.z), intBitsToFloat(PV0i.w))); +R1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.w), intBitsToFloat(PV0i.x))); +R1i.z = floatBitsToInt(roundEven(1.0)); +R9i.w = 0x40400000; +R10i.w = floatBitsToInt((-(intBitsToFloat(R6i.w)) * intBitsToFloat(0x40400000) + intBitsToFloat(0x40400000))); +PS1i = R10i.w; +R16i.xyzw = floatBitsToInt(texture(textureUnitPS11, intBitsToFloat(R1i.xy)).xyzw); +R14i.xyz = floatBitsToInt(texture(textureUnitPS10, vec3(intBitsToFloat(R1i.x),intBitsToFloat(R1i.y),intBitsToFloat(R1i.z))).xyz); +R17i.xyz = floatBitsToInt(texture(textureUnitPS13, intBitsToFloat(R1i.xy)).xyz); +// 0 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R5i.z),intBitsToFloat(R5i.w),intBitsToFloat(R4i.z),-0.0),vec4(intBitsToFloat(R5i.z),intBitsToFloat(R5i.w),intBitsToFloat(R4i.z),0.0))); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +R122i.x = floatBitsToInt((intBitsToFloat(R16i.w) * 2.0 + -(1.0))); +R122i.x = clampFI32(R122i.x); +PS0i = R122i.x; +// 1 +PV1i.x = floatBitsToInt(intBitsToFloat(R4i.y) * intBitsToFloat(0x41c80000)); +PV1i.x = clampFI32(PV1i.x); +PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[7].x), intBitsToFloat(PS0i))); +PV1i.y = floatBitsToInt(intBitsToFloat(PV1i.y) * 2.0); +R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R16i.x), intBitsToFloat(R16i.y))); +R126i.w = floatBitsToInt(-(intBitsToFloat(R6i.w)) + 1.0); +tempResultf = 1.0 / sqrt(intBitsToFloat(PV0i.x)); +PS1i = floatBitsToInt(tempResultf); +// 2 +backupReg0i = R4i.z; +R1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.z), intBitsToFloat(PS1i))); +PV0i.x = R1i.x; +R4i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.w), intBitsToFloat(PS1i))); +PV0i.y = R4i.y; +R4i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PS1i))); +PV0i.z = R4i.z; +R127i.w = floatBitsToInt(intBitsToFloat(PV1i.y) * intBitsToFloat(0x3f4ccccd)); +R125i.w = floatBitsToInt((intBitsToFloat(PV1i.x) * 0.5 + 0.5)); +PS0i = R125i.w; +// 3 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R5i.x),intBitsToFloat(R2i.y),intBitsToFloat(R8i.z),-0.0),vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),0.0))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R3i.x = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(uf_remappedPS[8].x)), intBitsToFloat(uf_remappedPS[7].w))); +PS1i = R3i.x; +// 4 +R127i.x = floatBitsToInt((intBitsToFloat(R126i.w) * 0.5 + 0.5)); +R3i.y = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(uf_remappedPS[8].y)), intBitsToFloat(uf_remappedPS[7].w))); +R126i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(R127i.w))); +PV0i.z = R126i.z; +R5i.w = floatBitsToInt(intBitsToFloat(R127i.z) + intBitsToFloat(0x3f4ccccd)); +R5i.w = clampFI32(R5i.w); +R127i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R6i.w)),intBitsToFloat(R126i.w)) + intBitsToFloat(R126i.w))); +PS0i = R127i.w; +// 5 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R0i.w),intBitsToFloat(R5i.y),intBitsToFloat(R3i.z),-0.0),vec4(intBitsToFloat(R0i.w),intBitsToFloat(R5i.y),intBitsToFloat(R3i.z),0.0))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R126i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R5i.x)),intBitsToFloat(PV0i.z)) + intBitsToFloat(R1i.x))); +PS1i = R126i.x; +// 6 +backupReg0i = R126i.z; +R4i.x = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(uf_remappedPS[8].z)), intBitsToFloat(uf_remappedPS[7].w))); +R125i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R2i.y)),intBitsToFloat(R126i.z)) + intBitsToFloat(R4i.y))); +PV0i.y = R125i.y; +R126i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R8i.z)),intBitsToFloat(backupReg0i)) + intBitsToFloat(R4i.z))); +PV0i.z = R126i.z; +R126i.w = floatBitsToInt(intBitsToFloat(R127i.w) + intBitsToFloat(0x3c23d70a)); +R126i.w = clampFI32(R126i.w); +R127i.w = floatBitsToInt(sqrt(intBitsToFloat(PV1i.x))); +PS0i = R127i.w; +// 7 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R126i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),-0.0),vec4(intBitsToFloat(R126i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),0.0))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +PS1i = floatBitsToInt(1.0 / intBitsToFloat(PS0i)); +// 8 +backupReg0i = R127i.w; +R0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.w), intBitsToFloat(PS1i))); +PV0i.x = R0i.x; +R1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.y), intBitsToFloat(PS1i))); +PV0i.y = R1i.y; +R5i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.z), intBitsToFloat(PS1i))); +R127i.w = floatBitsToInt(intBitsToFloat(backupReg0i) + intBitsToFloat(0x43480000)); +tempResultf = 1.0 / sqrt(intBitsToFloat(PV1i.x)); +PS0i = floatBitsToInt(tempResultf); +// 9 +backupReg0i = R126i.x; +R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PS0i))); +PV1i.x = R126i.x; +R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.y), intBitsToFloat(PS0i))); +PV1i.y = R127i.y; +R125i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.z), intBitsToFloat(PS0i))); +PV1i.z = R125i.z; +R6i.w = floatBitsToInt(intBitsToFloat(PV0i.x) + intBitsToFloat(uf_remappedPS[8].x)); +R6i.y = floatBitsToInt(intBitsToFloat(PV0i.y) + intBitsToFloat(uf_remappedPS[8].y)); +PS1i = R6i.y; +// 10 +backupReg0i = R0i.x; +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(R1i.y),intBitsToFloat(R5i.z),-0.0),vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),0.0))); +tempi.x = floatBitsToInt(intBitsToFloat(tempi.x) * 2.0); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +R6i.z = floatBitsToInt(intBitsToFloat(R5i.z) + intBitsToFloat(uf_remappedPS[8].z)); +PS0i = R6i.z; +// 11 +backupReg0i = R127i.x; +backupReg0i = R127i.x; +R127i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV0i.x)),intBitsToFloat(R126i.x)) + intBitsToFloat(R0i.x))); +R124i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV0i.x)),intBitsToFloat(R127i.y)) + intBitsToFloat(R1i.y))); +R126i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV0i.x)),intBitsToFloat(R125i.z)) + intBitsToFloat(R5i.z))); +R1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.w), intBitsToFloat(R126i.w))); +R8i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(backupReg0i))); +R8i.y = floatBitsToInt(intBitsToFloat(R8i.y) / 2.0); +PS1i = R8i.y; +// 12 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R0i.y),intBitsToFloat(R0i.z),intBitsToFloat(R2i.z),-0.0),vec4(intBitsToFloat(R0i.y),intBitsToFloat(R0i.z),intBitsToFloat(R2i.z),0.0))); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +R8i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[9].x), intBitsToFloat(R127i.z))); +PS0i = R8i.x; +// 13 +backupReg0i = R127i.w; +backupReg0i = R127i.w; +R11i.x = floatBitsToInt(intBitsToFloat(R127i.z) + 0.25); +R11i.x = clampFI32(R11i.x); +PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[7].w), intBitsToFloat(uf_remappedPS[7].w))); +R127i.z = floatBitsToInt(intBitsToFloat(R7i.w) * intBitsToFloat(0x437f0000)); +R127i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(backupReg0i)),intBitsToFloat(backupReg0i)) + intBitsToFloat(PV0i.x))); +R13i.x = floatBitsToInt((intBitsToFloat(R7i.x) * intBitsToFloat(0x3f895ef0) + intBitsToFloat(0xba0a8ec8))); +R13i.x = clampFI32(R13i.x); +PS1i = R13i.x; +// 14 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R127i.x),intBitsToFloat(R124i.y),intBitsToFloat(R126i.z),-0.0),vec4(intBitsToFloat(R0i.y),intBitsToFloat(R0i.z),intBitsToFloat(R2i.z),0.0))); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +R125i.y = tempi.x; +R12i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.y), intBitsToFloat(PV1i.y))); +PS0i = R12i.x; +// 15 +backupReg0i = R7i.y; +R15i.x = floatBitsToInt((intBitsToFloat(R7i.z) * intBitsToFloat(0x3f895ef0) + intBitsToFloat(0xba0a8ec8))); +R15i.x = clampFI32(R15i.x); +R7i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R16i.z), intBitsToFloat(R16i.z))); +R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.x)) + -(intBitsToFloat(R127i.w)))); +PV1i.z = R123i.z; +R7i.w = floatBitsToInt((intBitsToFloat(backupReg0i) * intBitsToFloat(0x3f895ef0) + intBitsToFloat(0xba0a8ec8))); +R7i.w = clampFI32(R7i.w); +R127i.w = int(intBitsToFloat(R127i.z)); +PS1i = R127i.w; +// 16 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R5i.x),intBitsToFloat(R2i.y),intBitsToFloat(R8i.z),-0.0),vec4(intBitsToFloat(R126i.x),intBitsToFloat(R127i.y),intBitsToFloat(R125i.z),0.0))); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +PS0i = floatBitsToInt(sqrt(intBitsToFloat(PV1i.z))); +// 17 +PV1i.x = floatBitsToInt(-(intBitsToFloat(R125i.y)) + intBitsToFloat(PS0i)); +R125i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R125i.w)),intBitsToFloat(PV0i.x)) + intBitsToFloat(PV0i.x))); +PV1i.y = R125i.y; +R0i.z = R127i.w & int(1); +PS1i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.z), intBitsToFloat(R6i.z))); +// 18 +R6i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.x),-(intBitsToFloat(PV1i.y))) + intBitsToFloat(R126i.x))); +R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.z),intBitsToFloat(PV1i.x)) + intBitsToFloat(R3i.z))); +PV0i.y = R123i.y; +R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.y),intBitsToFloat(PV1i.x)) + intBitsToFloat(R5i.y))); +PV0i.z = R123i.z; +R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.x),intBitsToFloat(PV1i.x)) + intBitsToFloat(R0i.w))); +PV0i.w = R123i.w; +R127i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.y),intBitsToFloat(R6i.y)) + intBitsToFloat(PS1i))); +PS0i = R127i.x; +// 19 +backupReg0i = R2i.y; +backupReg1i = R8i.z; +R7i.x = floatBitsToInt(-(intBitsToFloat(uf_remappedPS[6].x)) + intBitsToFloat(PV0i.w)); +PV1i.x = R7i.x; +R2i.y = floatBitsToInt(-(intBitsToFloat(uf_remappedPS[6].y)) + intBitsToFloat(PV0i.z)); +PV1i.y = R2i.y; +R8i.z = floatBitsToInt(-(intBitsToFloat(uf_remappedPS[6].z)) + intBitsToFloat(PV0i.y)); +PV1i.z = R8i.z; +R0i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),-(intBitsToFloat(R125i.y))) + intBitsToFloat(R127i.y))); +R7i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg1i),-(intBitsToFloat(R125i.y))) + intBitsToFloat(R125i.z))); +PS1i = R7i.z; +// 20 +R5i.x = floatBitsToInt(dot(vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),-0.0),vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),0.0))); +PV0i.x = R5i.x; +PV0i.y = R5i.x; +PV0i.z = R5i.x; +PV0i.w = R5i.x; +R3i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.w),intBitsToFloat(R6i.w)) + intBitsToFloat(R127i.x))); +PS0i = R3i.z; +// 0 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R1i.x),intBitsToFloat(R4i.y),intBitsToFloat(R4i.z),-0.0),vec4(intBitsToFloat(uf_remappedPS[10].x),intBitsToFloat(uf_remappedPS[10].y),intBitsToFloat(uf_remappedPS[10].z),0.0))); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +tempResultf = 1.0 / sqrt(intBitsToFloat(R5i.x)); +R127i.w = floatBitsToInt(tempResultf); +PS0i = R127i.w; +// 1 +R127i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R1i.x),intBitsToFloat(R4i.y),intBitsToFloat(R4i.z),-0.0),vec4(intBitsToFloat(uf_remappedPS[11].x),intBitsToFloat(uf_remappedPS[11].y),intBitsToFloat(uf_remappedPS[11].z),0.0))); +PV1i.x = R127i.x; +PV1i.y = R127i.x; +PV1i.z = R127i.x; +PV1i.w = R127i.x; +R127i.z = floatBitsToInt(-(intBitsToFloat(PV0i.x))); +PS1i = R127i.z; +// 2 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R1i.x),intBitsToFloat(R4i.y),intBitsToFloat(R4i.z),-0.0),vec4(intBitsToFloat(uf_remappedPS[12].x),intBitsToFloat(uf_remappedPS[12].y),intBitsToFloat(uf_remappedPS[12].z),0.0))); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +R127i.y = tempi.x; +R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R7i.x), intBitsToFloat(R127i.w))); +PS0i = R126i.x; +// 3 +PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R7i.z), intBitsToFloat(R7i.z))); +R125i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.y), intBitsToFloat(R127i.w))); +R125i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.z), intBitsToFloat(R127i.w))); +tempResultf = 1.0 / sqrt(intBitsToFloat(R3i.z)); +R126i.y = floatBitsToInt(tempResultf); +PS1i = R126i.y; +// 4 +redcCUBE(vec4(intBitsToFloat(R127i.z),intBitsToFloat(R127i.z),intBitsToFloat(R127i.x),intBitsToFloat(R127i.y)),vec4(intBitsToFloat(R127i.y),intBitsToFloat(R127i.x),intBitsToFloat(R127i.z),intBitsToFloat(R127i.z)),cubeMapSTM,cubeMapFaceId); +R124i.x = floatBitsToInt(cubeMapSTM.x); +R124i.y = floatBitsToInt(cubeMapSTM.y); +R124i.z = floatBitsToInt(cubeMapSTM.z); +R124i.w = cubeMapFaceId; +PV0i.x = R124i.x; +PV0i.y = R124i.y; +PV0i.z = R124i.z; +PV0i.w = R124i.w; +R127i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R0i.w),intBitsToFloat(R0i.w)) + intBitsToFloat(PV1i.x))); +PS0i = R127i.x; +// 5 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(uf_remappedPS[10].x),intBitsToFloat(uf_remappedPS[10].y),intBitsToFloat(uf_remappedPS[10].z),-0.0),vec4(intBitsToFloat(R126i.x),intBitsToFloat(R125i.y),intBitsToFloat(R125i.z),0.0))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R127i.z = floatBitsToInt(1.0 / abs(intBitsToFloat(PV0i.z))); +PS1i = R127i.z; +// 6 +R2i.x = floatBitsToInt(dot(vec4(intBitsToFloat(uf_remappedPS[11].x),intBitsToFloat(uf_remappedPS[11].y),intBitsToFloat(uf_remappedPS[11].z),-0.0),vec4(intBitsToFloat(R126i.x),intBitsToFloat(R125i.y),intBitsToFloat(R125i.z),0.0))); +PV0i.x = R2i.x; +PV0i.y = R2i.x; +PV0i.z = R2i.x; +PV0i.w = R2i.x; +R2i.z = floatBitsToInt(-(intBitsToFloat(PV1i.x))); +PS0i = R2i.z; +// 7 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(uf_remappedPS[12].x),intBitsToFloat(uf_remappedPS[12].y),intBitsToFloat(uf_remappedPS[12].z),-0.0),vec4(intBitsToFloat(R126i.x),intBitsToFloat(R125i.y),intBitsToFloat(R125i.z),0.0))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R2i.y = tempi.x; +R122i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.x),intBitsToFloat(R127i.z)) + 1.5)); +PS1i = R122i.x; +// 8 +R126i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.x),intBitsToFloat(R6i.x)) + intBitsToFloat(R127i.x))); +R9i.y = PS1i; +R9i.z = R124i.w; +R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.y),intBitsToFloat(R127i.z)) + 1.5)); +PV0i.w = R123i.w; +R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.w), intBitsToFloat(R126i.y))); +PS0i = R127i.x; +// 9 +redcCUBE(vec4(intBitsToFloat(R2i.z),intBitsToFloat(R2i.z),intBitsToFloat(R2i.x),intBitsToFloat(R2i.y)),vec4(intBitsToFloat(R2i.y),intBitsToFloat(R2i.x),intBitsToFloat(R2i.z),intBitsToFloat(R2i.z)),cubeMapSTM,cubeMapFaceId); +R124i.x = floatBitsToInt(cubeMapSTM.x); +R124i.y = floatBitsToInt(cubeMapSTM.y); +R124i.z = floatBitsToInt(cubeMapSTM.z); +R124i.w = cubeMapFaceId; +PV1i.x = R124i.x; +PV1i.y = R124i.y; +PV1i.z = R124i.z; +PV1i.w = R124i.w; +R9i.x = PV0i.w; +PS1i = R9i.x; +// 10 +backupReg0i = R6i.y; +PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.z), intBitsToFloat(R126i.y))); +R6i.y = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(R127i.x)), intBitsToFloat(uf_remappedPS[7].w))); +R10i.z = PV1i.w; +PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(R126i.y))); +PS0i = floatBitsToInt(1.0 / abs(intBitsToFloat(PV1i.z))); +// 11 +R2i.x = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(PV0i.w)), intBitsToFloat(uf_remappedPS[7].w))); +R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.x),intBitsToFloat(PS0i)) + 1.5)); +PV1i.y = R123i.y; +R6i.z = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(PV0i.x)), intBitsToFloat(uf_remappedPS[7].w))); +R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.y),intBitsToFloat(PS0i)) + 1.5)); +PV1i.w = R123i.w; +tempResultf = 1.0 / sqrt(intBitsToFloat(R126i.x)); +PS1i = floatBitsToInt(tempResultf); +// 12 +backupReg0i = R0i.w; +backupReg1i = R7i.z; +R10i.x = PV1i.w; +R10i.y = PV1i.y; +R2i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.x), intBitsToFloat(PS1i))); +R0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PS1i))); +R7i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg1i), intBitsToFloat(PS1i))); +PS0i = R7i.z; +R9i.xyz = floatBitsToInt(textureLod(textureUnitPS8, vec4(redcCUBEReverse(intBitsToFloat(R9i.xy),R9i.z),cubeMapArrayIndex8),intBitsToFloat(R9i.w)).xyz); +R10i.xyz = floatBitsToInt(textureLod(textureUnitPS8, vec4(redcCUBEReverse(intBitsToFloat(R10i.xy),R10i.z),cubeMapArrayIndex8),intBitsToFloat(R10i.w)).xyz); +// 0 +backupReg0i = R0i.x; +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(R1i.y),intBitsToFloat(R5i.z),-0.0),vec4(intBitsToFloat(R2i.z),intBitsToFloat(R0i.w),intBitsToFloat(R7i.z),0.0))); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +PS0i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.y), intBitsToFloat(R2i.x))); +// 1 +R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.x),intBitsToFloat(R6i.z)) + intBitsToFloat(PS0i))); +PV1i.x = R123i.x; +PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.z), intBitsToFloat(R7i.z))); +R124i.z = floatBitsToInt(max(-(intBitsToFloat(PV0i.x)), 0.0)); +R124i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.x), intBitsToFloat(R7i.z))); +R124i.y = floatBitsToInt(float(R0i.z)); +PS1i = R124i.y; +// 2 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R6i.y),intBitsToFloat(R2i.x),intBitsToFloat(PV1i.y),-0.0),vec4(intBitsToFloat(R2i.z),intBitsToFloat(R0i.w),1.0,0.0))); +tempi.x = clampFI32(tempi.x); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +R126i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.x),intBitsToFloat(R6i.y)) + intBitsToFloat(PV1i.x))); +R126i.x = clampFI32(R126i.x); +PS0i = R126i.x; +// 3 +backupReg0i = R124i.y; +backupReg1i = R0i.w; +PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(PV0i.x))); +R124i.y = floatBitsToInt(min(intBitsToFloat(R124i.z), 1.0)); +PV1i.y = R124i.y; +PV1i.z = floatBitsToInt(-(intBitsToFloat(PS0i)) + 1.0); +R0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(R7i.y))); +R122i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.y),intBitsToFloat(backupReg1i)) + intBitsToFloat(R124i.w))); +PS1i = R122i.x; +// 4 +PV0i.x = floatBitsToInt(-(intBitsToFloat(PV1i.y)) + 1.0); +R126i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R126i.x)),intBitsToFloat(PV1i.z)) + intBitsToFloat(PV1i.z))); +PV0i.y = R126i.y; +R124i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.x),intBitsToFloat(R2i.z)) + intBitsToFloat(PS1i))); +R124i.z = clampFI32(R124i.z); +PV0i.z = R124i.z; +R124i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.w),intBitsToFloat(PV1i.x)) + -(intBitsToFloat(PV1i.x)))); +PV0i.w = R124i.w; +R122i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.y),-(intBitsToFloat(R8i.y))) + intBitsToFloat(PV1i.y))); +PS0i = R122i.x; +// 5 +R123i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R126i.x)),intBitsToFloat(PV0i.y)) + intBitsToFloat(PV0i.y))); +PV1i.x = R123i.x; +PV1i.y = floatBitsToInt(intBitsToFloat(R8i.y) + intBitsToFloat(PS0i)); +PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.w) + 1.0); +R127i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R124i.y)),intBitsToFloat(PV0i.x)) + intBitsToFloat(PV0i.x))); +PV1i.w = R127i.w; +R122i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.z),-(intBitsToFloat(R8i.y))) + intBitsToFloat(PV0i.z))); +PS1i = R122i.x; +// 6 +R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(PV1i.x))); +PV0i.x = R126i.x; +R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.w),intBitsToFloat(PV1i.z)) + intBitsToFloat(PV1i.z))); +PV0i.y = R123i.y; +R123i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R124i.y)),intBitsToFloat(PV1i.w)) + intBitsToFloat(PV1i.w))); +PV0i.z = R123i.z; +R124i.w = floatBitsToInt(intBitsToFloat(R8i.y) + intBitsToFloat(PS1i)); +PS0i = floatBitsToInt(1.0 / intBitsToFloat(PV1i.y)); +// 7 +R124i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.x), intBitsToFloat(R124i.z))); +PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.w), intBitsToFloat(PV0i.z))); +R123i.z = floatBitsToInt((-(intBitsToFloat(PV0i.x)) * intBitsToFloat(0x3ca3d70a) + intBitsToFloat(0x3ca3d70a))); +PV1i.z = R123i.z; +R127i.w = floatBitsToInt(0.25 * intBitsToFloat(PS0i)); +PS1i = floatBitsToInt(1.0 / intBitsToFloat(PV0i.y)); +// 8 +backupReg0i = R124i.w; +PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.w), intBitsToFloat(PS1i))); +R126i.y = floatBitsToInt(intBitsToFloat(R126i.x) + intBitsToFloat(PV1i.z)); +R124i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R11i.x),-(intBitsToFloat(R126i.x))) + intBitsToFloat(R11i.x))); +R124i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.y), intBitsToFloat(R5i.w))); +PV0i.w = R124i.w; +PS0i = floatBitsToInt(1.0 / intBitsToFloat(backupReg0i)); +// 9 +R123i.x = floatBitsToInt((-(intBitsToFloat(PV0i.w)) * intBitsToFloat(0x3ca3d70a) + intBitsToFloat(0x3ca3d70a))); +PV1i.x = R123i.x; +R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R9i.y),-(intBitsToFloat(PV0i.w))) + intBitsToFloat(R9i.y))); +PV1i.y = R123i.y; +R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R9i.x),-(intBitsToFloat(PV0i.w))) + intBitsToFloat(R9i.x))); +PV1i.z = R123i.z; +R125i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R9i.z),-(intBitsToFloat(PV0i.w))) + intBitsToFloat(R9i.z))); +R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS0i), intBitsToFloat(PV0i.x))); +PS1i = R127i.z; +// 10 +backupReg0i = R126i.y; +backupReg1i = R124i.x; +R124i.x = floatBitsToInt(intBitsToFloat(R124i.w) + intBitsToFloat(PV1i.x)); +PV0i.x = R124i.x; +R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(R127i.w))); +R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[13].x),intBitsToFloat(R124i.z)) + intBitsToFloat(PV1i.z))); +PV0i.z = R123i.z; +PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg1i), intBitsToFloat(R12i.x))); +R125i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[13].y),intBitsToFloat(R124i.z)) + intBitsToFloat(PV1i.y))); +PS0i = R125i.z; +// 11 +R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(R127i.z))); +R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[13].z),intBitsToFloat(R124i.z)) + intBitsToFloat(R125i.w))); +PV1i.y = R123i.y; +R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R10i.x),intBitsToFloat(PV0i.x)) + intBitsToFloat(R14i.x))); +R125i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R10i.y),intBitsToFloat(PV0i.x)) + intBitsToFloat(R14i.y))); +R124i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), intBitsToFloat(R13i.x))); +PS1i = R124i.y; +// 12 +PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.z), intBitsToFloat(R7i.w))); +R125i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.y), intBitsToFloat(R15i.x))); +PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[13].x), intBitsToFloat(R126i.y))); +R127i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R10i.z),intBitsToFloat(R124i.x)) + intBitsToFloat(R14i.z))); +PS0i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[13].y), intBitsToFloat(R126i.y))); +// 13 +R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.z),intBitsToFloat(R126i.x)) + intBitsToFloat(R127i.z))); +PV1i.x = R123i.x; +R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PS0i),intBitsToFloat(R126i.x)) + intBitsToFloat(R125i.w))); +PV1i.y = R123i.y; +PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[13].z), intBitsToFloat(R126i.y))); +R123i.w = floatBitsToInt((intBitsToFloat(R124i.y) * intBitsToFloat(0x3f6e896b) + intBitsToFloat(0x3a011b1e))); +PV1i.w = R123i.w; +R122i.x = floatBitsToInt((intBitsToFloat(PV0i.x) * intBitsToFloat(0x3f6e896b) + intBitsToFloat(0x3a011b1e))); +PS1i = R122i.x; +// 14 +R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.z),intBitsToFloat(R126i.x)) + intBitsToFloat(R127i.w))); +PV0i.x = R123i.x; +R123i.y = floatBitsToInt((intBitsToFloat(R125i.y) * intBitsToFloat(0x3f6e896b) + intBitsToFloat(0x3a011b1e))); +PV0i.y = R123i.y; +PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.y) + intBitsToFloat(PS1i)); +PV0i.w = floatBitsToInt(intBitsToFloat(PV1i.x) + intBitsToFloat(PV1i.w)); +// 15 +R0i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R16i.z),intBitsToFloat(PV0i.w)) + intBitsToFloat(R17i.x))); +PV1i.y = floatBitsToInt(intBitsToFloat(PV0i.x) + intBitsToFloat(PV0i.y)); +R0i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R16i.z),intBitsToFloat(PV0i.z)) + intBitsToFloat(R17i.y))); +PS1i = R0i.y; +// 16 +R0i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R16i.z),intBitsToFloat(PV1i.y)) + intBitsToFloat(R17i.z))); +// export +passPixelColor0 = vec4(intBitsToFloat(R0i.x), intBitsToFloat(R0i.y), intBitsToFloat(R0i.z), intBitsToFloat(R0i.w)); +float luma = dot(passPixelColor0.rgb, vec3(0.2126, 0.7152, 0.0722)); +#if (ENABLE_COLOR_FADE == 1) +float depth = texture(textureUnitPS4, passParameterSem0.xy).x; +float factor = smoothstep(0.0005, 0.00075, depth); +passPixelColor0.rgb = mix(passPixelColor0.rgb, vec3(luma), factor); +#else +passPixelColor0.rgb = vec3(luma); +#endif +} diff --git a/Modifications/BreathOfTheWild_Monochromia/de2bafbeb363afb3_0000000079249749_ps.txt b/Modifications/BreathOfTheWild_Monochromia/de2bafbeb363afb3_0000000079249749_ps.txt new file mode 100644 index 00000000..d67347c2 --- /dev/null +++ b/Modifications/BreathOfTheWild_Monochromia/de2bafbeb363afb3_0000000079249749_ps.txt @@ -0,0 +1,686 @@ +#version 420 +#extension GL_ARB_texture_gather : enable +// shader de2bafbeb363afb3 +// Monochromia +// Water - normal weather +// original shader dumped using cemu 1.11.c, BotW 1.3.1 +#define ENABLE_COLOR_FADE 0 // set this to 1 to enable, 0 to disable the effect + +uniform ivec4 uf_remappedPS[14]; +layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0xf45c6000 res 1280x720x1 dim 1 tm: 4 format 041a compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 2) uniform sampler2D textureUnitPS2;// Tex2 addr 0xf494a800 res 1280x720x1 dim 1 tm: 4 format 001a compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler2 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 4) uniform sampler2D textureUnitPS4;// Tex4 addr 0xf4e91800 res 1280x720x1 dim 1 tm: 4 format 0806 compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler4 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 6) uniform sampler2D textureUnitPS6;// Tex6 addr 0xf5054000 res 640x360x1 dim 1 tm: 4 format 080e compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler6 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 7) uniform sampler2D textureUnitPS7;// Tex7 addr 0xf5846000 res 640x360x1 dim 1 tm: 4 format 0001 compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler7 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 8) uniform samplerCubeArray textureUnitPS8;// Tex8 addr 0x3db66800 res 64x64x1 dim 3 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x4) sliceView: 0x0 (num 0x6) Sampler8 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 10) uniform sampler2DArray textureUnitPS10;// Tex10 addr 0xf5593000 res 640x360x2 dim 5 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x2) Sampler10 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 11) uniform sampler2D textureUnitPS11;// Tex11 addr 0xf575f800 res 640x360x1 dim 1 tm: 4 format 001a compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler11 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 13) uniform sampler2D textureUnitPS13;// Tex13 addr 0xf5977800 res 640x360x1 dim 1 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler13 ClampX/Y/Z: 2 2 2 border: 1 +layout(location = 0) in vec4 passParameterSem0; +layout(location = 1) in vec4 passParameterSem4; +layout(location = 2) in vec4 passParameterSem6; +layout(location = 0) out vec4 passPixelColor0; +uniform vec2 uf_fragCoordScale; +void redcCUBE(vec4 src0, vec4 src1, out vec3 stm, out int faceId) +{ +// stm -> x .. s, y .. t, z .. MajorAxis*2.0 +vec3 inputCoord = normalize(vec3(src1.y, src1.x, src0.x)); +float rx = inputCoord.x; +float ry = inputCoord.y; +float rz = inputCoord.z; +if( abs(rx) > abs(ry) && abs(rx) > abs(rz) ) +{ +stm.z = rx*2.0; +stm.xy = vec2(ry,rz); +if( rx >= 0.0 ) +{ +faceId = 0; +} +else +{ +faceId = 1; +} +} +else if( abs(ry) > abs(rx) && abs(ry) > abs(rz) ) +{ +stm.z = ry*2.0; +stm.xy = vec2(rx,rz); +if( ry >= 0.0 ) +{ +faceId = 2; +} +else +{ +faceId = 3; +} +} +else //if( abs(rz) > abs(ry) && abs(rz) > abs(rx) ) +{ +stm.z = rz*2.0; +stm.xy = vec2(rx,ry); +if( rz >= 0.0 ) +{ +faceId = 4; +} +else +{ +faceId = 5; +} +} +} +vec3 redcCUBEReverse(vec2 st, int faceId) +{ +st.yx = st.xy; +vec3 v; +float majorAxis = 1.0; +if( faceId == 0 ) +{ +v.yz = (st-vec2(1.5))*(majorAxis*2.0); +v.x = 1.0; +} +else if( faceId == 1 ) +{ +v.yz = (st-vec2(1.5))*(majorAxis*2.0); +v.x = -1.0; +} +else if( faceId == 2 ) +{ +v.xz = (st-vec2(1.5))*(majorAxis*2.0); +v.y = 1.0; +} +else if( faceId == 3 ) +{ +v.xz = (st-vec2(1.5))*(majorAxis*2.0); +v.y = -1.0; +} +else if( faceId == 4 ) +{ +v.xy = (st-vec2(1.5))*(majorAxis*2.0); +v.z = 1.0; +} +else +{ +v.xy = (st-vec2(1.5))*(majorAxis*2.0); +v.z = -1.0; +} +return v; +} +int clampFI32(int v) +{ +if( v == 0x7FFFFFFF ) + return floatBitsToInt(1.0); +else if( v == 0xFFFFFFFF ) + return floatBitsToInt(0.0); +return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); +} +float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } +void main() +{ +ivec4 R0i = ivec4(0); +ivec4 R1i = ivec4(0); +ivec4 R2i = ivec4(0); +ivec4 R3i = ivec4(0); +ivec4 R4i = ivec4(0); +ivec4 R5i = ivec4(0); +ivec4 R6i = ivec4(0); +ivec4 R7i = ivec4(0); +ivec4 R8i = ivec4(0); +ivec4 R9i = ivec4(0); +ivec4 R10i = ivec4(0); +ivec4 R11i = ivec4(0); +ivec4 R12i = ivec4(0); +ivec4 R13i = ivec4(0); +ivec4 R122i = ivec4(0); +ivec4 R123i = ivec4(0); +ivec4 R124i = ivec4(0); +ivec4 R125i = ivec4(0); +ivec4 R126i = ivec4(0); +ivec4 R127i = ivec4(0); +int backupReg0i, backupReg1i, backupReg2i, backupReg3i, backupReg4i; +ivec4 PV0i = ivec4(0), PV1i = ivec4(0); +int PS0i = 0, PS1i = 0; +ivec4 tempi = ivec4(0); +float tempResultf; +int tempResulti; +ivec4 ARi = ivec4(0); +bool predResult = true; +vec3 cubeMapSTM; +int cubeMapFaceId; +float cubeMapArrayIndex8 = 0.0; +R0i = floatBitsToInt(passParameterSem0); +R1i = floatBitsToInt(passParameterSem4); +R2i = floatBitsToInt(passParameterSem6); +R3i.w = floatBitsToInt(texture(textureUnitPS4, intBitsToFloat(R0i.xy)).x); +R6i.xyzw = floatBitsToInt(texture(textureUnitPS2, intBitsToFloat(R2i.zw)).xyzw); +R4i.xyzw = floatBitsToInt(textureGather(textureUnitPS6, intBitsToFloat(R0i.xy)).xyzw); +R5i.xyzw = floatBitsToInt(textureGather(textureUnitPS7, intBitsToFloat(R0i.xy)).xyzw); +R2i.xyzw = floatBitsToInt(texture(textureUnitPS1, intBitsToFloat(R2i.zw)).xyzw); +// 0 +R127i.x = floatBitsToInt((intBitsToFloat(R6i.x) * 2.0 + -(1.0))); +R126i.y = floatBitsToInt((intBitsToFloat(R6i.y) * 2.0 + -(1.0))); +R127i.z = floatBitsToInt((intBitsToFloat(R6i.z) * 2.0 + -(1.0))); +R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.w),intBitsToFloat(uf_remappedPS[0].x)) + intBitsToFloat(uf_remappedPS[1].x))); +PV0i.w = R123i.w; +R127i.w = floatBitsToInt(-(intBitsToFloat(R3i.w)) + intBitsToFloat(R4i.y)); +PS0i = R127i.w; +// 1 +R124i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.z), -(intBitsToFloat(PV0i.w)))); +PV1i.x = R124i.x; +R0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.w), -(intBitsToFloat(PV0i.w)))); +PV1i.y = R0i.y; +R124i.z = floatBitsToInt(-(intBitsToFloat(PV0i.w))); +PV1i.z = R124i.z; +PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(uf_remappedPS[2].y))); +R125i.y = floatBitsToInt(-(intBitsToFloat(R3i.w)) + intBitsToFloat(R4i.w)); +PS1i = R125i.y; +// 2 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),-0.0),vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),0.0))); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +R0i.z = floatBitsToInt(1.0 / intBitsToFloat(PV1i.w)); +PS0i = R0i.z; +// 3 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R127i.x),intBitsToFloat(R126i.y),intBitsToFloat(R127i.z),-0.0),vec4(intBitsToFloat(R127i.x),intBitsToFloat(R126i.y),intBitsToFloat(R127i.z),0.0))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R127i.y = floatBitsToInt(sqrt(intBitsToFloat(PV0i.x))); +PS1i = R127i.y; +// 4 +R126i.x = floatBitsToInt(intBitsToFloat(R124i.x) + -(intBitsToFloat(uf_remappedPS[3].x))); +R124i.y = floatBitsToInt(intBitsToFloat(R0i.y) + -(intBitsToFloat(uf_remappedPS[3].y))); +R126i.z = floatBitsToInt(intBitsToFloat(R124i.z) + -(intBitsToFloat(uf_remappedPS[3].z))); +R125i.w = floatBitsToInt(intBitsToFloat(PS1i) + intBitsToFloat(0x43480000)); +tempResultf = 1.0 / sqrt(intBitsToFloat(PV1i.x)); +PS0i = floatBitsToInt(tempResultf); +// 5 +R9i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(PS0i))); +R9i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(PS0i))); +R10i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PS0i))); +R126i.w = floatBitsToInt(-(intBitsToFloat(R3i.w)) + intBitsToFloat(R4i.x)); +PS1i = floatBitsToInt(1.0 / intBitsToFloat(R127i.y)); +// 6 +backupReg0i = R127i.w; +backupReg0i = R127i.w; +R10i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.x), intBitsToFloat(PS1i))); +PV0i.x = R10i.x; +R10i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.y), intBitsToFloat(PS1i))); +PV0i.y = R10i.y; +R11i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.z), intBitsToFloat(PS1i))); +PV0i.z = R11i.z; +R127i.w = floatBitsToInt(-(intBitsToFloat(R3i.w)) + intBitsToFloat(R4i.z)); +R124i.w = floatBitsToInt(max(intBitsToFloat(backupReg0i), -(intBitsToFloat(backupReg0i)))); +PS0i = R124i.w; +// 7 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R9i.x),intBitsToFloat(R9i.y),intBitsToFloat(R10i.z),-0.0),vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),0.0))); +tempi.x = floatBitsToInt(intBitsToFloat(tempi.x) * 2.0); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R127i.y = floatBitsToInt(max(intBitsToFloat(R125i.y), -(intBitsToFloat(R125i.y)))); +PS1i = R127i.y; +// 8 +backupReg0i = R126i.w; +backupReg0i = R126i.w; +R125i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV1i.x)),intBitsToFloat(R9i.x)) + intBitsToFloat(R10i.x))); +R126i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV1i.x)),intBitsToFloat(R9i.y)) + intBitsToFloat(R10i.y))); +R125i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(PV1i.x)),intBitsToFloat(R10i.z)) + intBitsToFloat(R11i.z))); +R126i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].x), intBitsToFloat(R0i.z))); +R127i.x = floatBitsToInt(max(intBitsToFloat(backupReg0i), -(intBitsToFloat(backupReg0i)))); +PS0i = R127i.x; +// 9 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R126i.x),intBitsToFloat(R124i.y),intBitsToFloat(R126i.z),-0.0),vec4(intBitsToFloat(R126i.x),intBitsToFloat(R124i.y),intBitsToFloat(R126i.z),0.0))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R127i.z = floatBitsToInt(max(intBitsToFloat(R127i.w), -(intBitsToFloat(R127i.w)))); +PS1i = R127i.z; +// 10 +backupReg0i = R125i.w; +backupReg0i = R125i.w; +R0i.x = uf_remappedPS[4].y; +R4i.y = floatBitsToInt(floor(intBitsToFloat(R1i.y))); +R4i.z = floatBitsToInt(floor(intBitsToFloat(R1i.x))); +PV0i.z = R4i.z; +R125i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(backupReg0i)),intBitsToFloat(backupReg0i)) + intBitsToFloat(PV1i.x))); +R7i.w = 0x40400000; +PS0i = R7i.w; +// 11 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R6i.x),intBitsToFloat(R6i.y),intBitsToFloat(R6i.z),-0.0),vec4(intBitsToFloat(0x3eaaaaab),intBitsToFloat(0x3eaaaaab),intBitsToFloat(0x3eaaaaab),0.0))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R125i.y = tempi.x; +R4i.x = floatBitsToInt(intBitsToFloat(R1i.x) + -(intBitsToFloat(PV0i.z))); +PS1i = R4i.x; +// 12 +backupReg0i = R124i.y; +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R125i.x),intBitsToFloat(R126i.y),intBitsToFloat(R125i.z),-0.0),vec4(intBitsToFloat(R126i.x),intBitsToFloat(backupReg0i),intBitsToFloat(R126i.z),0.0))); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +R124i.y = tempi.x; +PS0i = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + intBitsToFloat(R5i.w)); +// 13 +R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.x)) + -(intBitsToFloat(R125i.w)))); +PV1i.x = R123i.x; +PV1i.y = floatBitsToInt(-(intBitsToFloat(R125i.y)) + intBitsToFloat(R5i.z)); +PV1i.z = floatBitsToInt(-(intBitsToFloat(R125i.y)) + intBitsToFloat(R5i.y)); +PV1i.w = floatBitsToInt(-(intBitsToFloat(R125i.y)) + intBitsToFloat(R5i.x)); +PS1i = floatBitsToInt(max(intBitsToFloat(PS0i), -(intBitsToFloat(PS0i)))); +PS1i = floatBitsToInt(intBitsToFloat(PS1i) * 4.0); +// 14 +R126i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.y),intBitsToFloat(R126i.w)) + intBitsToFloat(PS1i))); +PV0i.y = floatBitsToInt(max(intBitsToFloat(PV1i.y), -(intBitsToFloat(PV1i.y)))); +PV0i.y = floatBitsToInt(intBitsToFloat(PV0i.y) * 4.0); +PV0i.z = floatBitsToInt(max(intBitsToFloat(PV1i.z), -(intBitsToFloat(PV1i.z)))); +PV0i.z = floatBitsToInt(intBitsToFloat(PV0i.z) * 4.0); +PV0i.w = floatBitsToInt(max(intBitsToFloat(PV1i.w), -(intBitsToFloat(PV1i.w)))); +PV0i.w = floatBitsToInt(intBitsToFloat(PV0i.w) * 4.0); +PS0i = floatBitsToInt(sqrt(intBitsToFloat(PV1i.x))); +// 15 +backupReg0i = R126i.w; +PV1i.x = floatBitsToInt(-(intBitsToFloat(R124i.y)) + intBitsToFloat(PS0i)); +R124i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(R126i.w)) + intBitsToFloat(PV0i.y))); +R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.w),intBitsToFloat(R126i.w)) + intBitsToFloat(PV0i.z))); +PV1i.z = R123i.z; +R126i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.x),intBitsToFloat(backupReg0i)) + intBitsToFloat(PV0i.w))); +R124i.w = floatBitsToInt(intBitsToFloat(R1i.y) + -(intBitsToFloat(R4i.y))); +PS1i = R124i.w; +// 16 +R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.x),intBitsToFloat(PV1i.x)) + intBitsToFloat(R124i.x))); +PV0i.x = R123i.x; +R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.z),intBitsToFloat(PV1i.x)) + intBitsToFloat(R124i.z))); +PV0i.y = R123i.y; +R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.y),intBitsToFloat(PV1i.x)) + intBitsToFloat(R0i.y))); +PV0i.z = R123i.z; +PV0i.w = floatBitsToInt(-(intBitsToFloat(PV1i.z)) + intBitsToFloat(R126i.x)); +R126i.x = floatBitsToInt(intBitsToFloat(R4i.z) + -(0.5)); +PS0i = R126i.x; +// 17 +R5i.x = floatBitsToInt(-(intBitsToFloat(uf_remappedPS[3].x)) + intBitsToFloat(PV0i.x)); +PV1i.y = floatBitsToInt(-(intBitsToFloat(R126i.w)) + intBitsToFloat(PV0i.w)); +PV1i.z = floatBitsToInt(-(intBitsToFloat(R124i.y)) + intBitsToFloat(PV0i.w)); +R5i.w = floatBitsToInt(-(intBitsToFloat(uf_remappedPS[3].y)) + intBitsToFloat(PV0i.z)); +R5i.z = floatBitsToInt(-(intBitsToFloat(uf_remappedPS[3].z)) + intBitsToFloat(PV0i.y)); +PS1i = R5i.z; +// 18 +backupReg0i = R124i.y; +PV0i.x = floatBitsToInt(intBitsToFloat(R126i.w) + intBitsToFloat(PV1i.z)); +R124i.y = floatBitsToInt(intBitsToFloat(R4i.y) + -(0.5)); +R3i.z = floatBitsToInt(roundEven(1.0)); +R126i.w = floatBitsToInt(intBitsToFloat(backupReg0i) + intBitsToFloat(PV1i.y)); +R8i.w = floatBitsToInt((-(intBitsToFloat(R6i.w)) * intBitsToFloat(0x40400000) + intBitsToFloat(0x40400000))); +PS0i = R8i.w; +// 19 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R5i.x),intBitsToFloat(R5i.w),intBitsToFloat(R5i.z),-0.0),vec4(intBitsToFloat(R5i.x),intBitsToFloat(R5i.w),intBitsToFloat(R5i.z),0.0))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +PS1i = floatBitsToInt(intBitsToFloat(PV0i.x) + intBitsToFloat(R4i.x)); +PS1i = clampFI32(PS1i); +// 20 +R4i.x = uf_remappedPS[5].y; +PV0i.y = floatBitsToInt(intBitsToFloat(R126i.w) + intBitsToFloat(R124i.w)); +PV0i.y = clampFI32(PV0i.y); +R9i.z = uf_remappedPS[6].y; +R4i.w = floatBitsToInt(intBitsToFloat(PS1i) + intBitsToFloat(R126i.x)); +tempResultf = 1.0 / sqrt(intBitsToFloat(PV1i.x)); +R3i.w = floatBitsToInt(tempResultf); +PS0i = R3i.w; +// 21 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R9i.x),intBitsToFloat(R9i.y),intBitsToFloat(R10i.z),-0.0),vec4(intBitsToFloat(uf_remappedPS[7].x),intBitsToFloat(uf_remappedPS[7].y),intBitsToFloat(uf_remappedPS[7].z),0.0))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R4i.z = tempi.x; +R0i.w = floatBitsToInt(intBitsToFloat(PV0i.y) + intBitsToFloat(R124i.y)); +PS1i = R0i.w; +// 0 +R124i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R9i.x),intBitsToFloat(R9i.y),intBitsToFloat(R10i.z),-0.0),vec4(intBitsToFloat(uf_remappedPS[8].x),intBitsToFloat(uf_remappedPS[8].y),intBitsToFloat(uf_remappedPS[8].z),0.0))); +PV0i.x = R124i.x; +PV0i.y = R124i.x; +PV0i.z = R124i.x; +PV0i.w = R124i.x; +R124i.z = floatBitsToInt(-(intBitsToFloat(R4i.z))); +PS0i = R124i.z; +// 1 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R9i.x),intBitsToFloat(R9i.y),intBitsToFloat(R10i.z),-0.0),vec4(intBitsToFloat(uf_remappedPS[9].x),intBitsToFloat(uf_remappedPS[9].y),intBitsToFloat(uf_remappedPS[9].z),0.0))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R124i.y = tempi.x; +R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.x), intBitsToFloat(R3i.w))); +PS1i = R126i.x; +// 2 +R3i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.z), intBitsToFloat(R4i.w))); +R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.w), intBitsToFloat(R3i.w))); +R125i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.z), intBitsToFloat(R3i.w))); +PV0i.w = floatBitsToInt(intBitsToFloat(R0i.z) * intBitsToFloat(0x41c80000)); +PV0i.w = clampFI32(PV0i.w); +R5i.x = floatBitsToInt(intBitsToFloat(R10i.x) + intBitsToFloat(uf_remappedPS[10].x)); +PS0i = R5i.x; +// 3 +R1i.x = floatBitsToInt(intBitsToFloat(R10i.y) + intBitsToFloat(uf_remappedPS[10].y)); +R3i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.w), intBitsToFloat(R0i.w))); +R1i.z = floatBitsToInt(intBitsToFloat(R11i.z) + intBitsToFloat(uf_remappedPS[10].z)); +R0i.w = floatBitsToInt((intBitsToFloat(PV0i.w) * 0.5 + 0.5)); +R124i.w = floatBitsToInt(-(intBitsToFloat(R6i.w)) + 1.0); +PS1i = R124i.w; +// 4 +redcCUBE(vec4(intBitsToFloat(R124i.z),intBitsToFloat(R124i.z),intBitsToFloat(R124i.x),intBitsToFloat(R124i.y)),vec4(intBitsToFloat(R124i.y),intBitsToFloat(R124i.x),intBitsToFloat(R124i.z),intBitsToFloat(R124i.z)),cubeMapSTM,cubeMapFaceId); +R127i.x = floatBitsToInt(cubeMapSTM.x); +R127i.y = floatBitsToInt(cubeMapSTM.y); +R127i.z = floatBitsToInt(cubeMapSTM.z); +R127i.w = cubeMapFaceId; +PV0i.x = R127i.x; +PV0i.y = R127i.y; +PV0i.z = R127i.z; +PV0i.w = R127i.w; +R126i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R6i.w)),intBitsToFloat(PS1i)) + intBitsToFloat(PS1i))); +PS0i = R126i.w; +// 5 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(uf_remappedPS[7].x),intBitsToFloat(uf_remappedPS[7].y),intBitsToFloat(uf_remappedPS[7].z),-0.0),vec4(intBitsToFloat(R126i.x),intBitsToFloat(R126i.y),intBitsToFloat(R125i.z),0.0))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R124i.x = floatBitsToInt(1.0 / abs(intBitsToFloat(PV0i.z))); +PS1i = R124i.x; +// 6 +R6i.x = floatBitsToInt(dot(vec4(intBitsToFloat(uf_remappedPS[8].x),intBitsToFloat(uf_remappedPS[8].y),intBitsToFloat(uf_remappedPS[8].z),-0.0),vec4(intBitsToFloat(R126i.x),intBitsToFloat(R126i.y),intBitsToFloat(R125i.z),0.0))); +PV0i.x = R6i.x; +PV0i.y = R6i.x; +PV0i.z = R6i.x; +PV0i.w = R6i.x; +R6i.z = floatBitsToInt(-(intBitsToFloat(PV1i.x))); +PS0i = R6i.z; +// 7 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(uf_remappedPS[9].x),intBitsToFloat(uf_remappedPS[9].y),intBitsToFloat(uf_remappedPS[9].z),-0.0),vec4(intBitsToFloat(R126i.x),intBitsToFloat(R126i.y),intBitsToFloat(R125i.z),0.0))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R6i.y = tempi.x; +R122i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.x),intBitsToFloat(R124i.x)) + 1.5)); +PS1i = R122i.x; +// 8 +backupReg0i = R127i.w; +R127i.x = floatBitsToInt(intBitsToFloat(R126i.w) + intBitsToFloat(0x3c23d70a)); +R127i.x = clampFI32(R127i.x); +R7i.y = PS1i; +R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.y),intBitsToFloat(R124i.x)) + 1.5)); +PV0i.z = R123i.z; +R127i.w = floatBitsToInt((intBitsToFloat(R124i.w) * 0.5 + 0.5)); +R7i.z = backupReg0i; +PS0i = R7i.z; +// 9 +redcCUBE(vec4(intBitsToFloat(R6i.z),intBitsToFloat(R6i.z),intBitsToFloat(R6i.x),intBitsToFloat(R6i.y)),vec4(intBitsToFloat(R6i.y),intBitsToFloat(R6i.x),intBitsToFloat(R6i.z),intBitsToFloat(R6i.z)),cubeMapSTM,cubeMapFaceId); +R126i.x = floatBitsToInt(cubeMapSTM.x); +R126i.y = floatBitsToInt(cubeMapSTM.y); +R126i.z = floatBitsToInt(cubeMapSTM.z); +R126i.w = cubeMapFaceId; +PV1i.x = R126i.x; +PV1i.y = R126i.y; +PV1i.z = R126i.z; +PV1i.w = R126i.w; +R7i.x = PV0i.z; +PS1i = R7i.x; +// 10 +R6i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.w), intBitsToFloat(R127i.w))); +R6i.x = floatBitsToInt(intBitsToFloat(R6i.x) / 2.0); +R6i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(R127i.x))); +R8i.z = PV1i.w; +R127i.w = floatBitsToInt(intBitsToFloat(R2i.w) * intBitsToFloat(0x437f0000)); +PS0i = floatBitsToInt(1.0 / abs(intBitsToFloat(PV1i.z))); +// 11 +backupReg0i = R2i.x; +R2i.x = floatBitsToInt((intBitsToFloat(backupReg0i) * intBitsToFloat(0x3f895ef0) + intBitsToFloat(0xba0a8ec8))); +R2i.x = clampFI32(R2i.x); +R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.x),intBitsToFloat(PS0i)) + 1.5)); +PV1i.y = R123i.y; +R6i.z = floatBitsToInt((intBitsToFloat(R2i.y) * intBitsToFloat(0x3f895ef0) + intBitsToFloat(0xba0a8ec8))); +R6i.z = clampFI32(R6i.z); +R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.y),intBitsToFloat(PS0i)) + 1.5)); +PV1i.w = R123i.w; +R0i.z = floatBitsToInt((intBitsToFloat(R2i.z) * intBitsToFloat(0x3f895ef0) + intBitsToFloat(0xba0a8ec8))); +R0i.z = clampFI32(R0i.z); +PS1i = R0i.z; +// 12 +R8i.x = PV1i.w; +R8i.y = PV1i.y; +R2i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R9i.z), intBitsToFloat(R10i.z))); +R2i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.z), intBitsToFloat(R1i.z))); +R2i.y = int(intBitsToFloat(R127i.w)); +PS0i = R2i.y; +R13i.xyz = floatBitsToInt(texture(textureUnitPS11, intBitsToFloat(R3i.xy)).xyz); +R7i.xyz = floatBitsToInt(textureLod(textureUnitPS8, vec4(redcCUBEReverse(intBitsToFloat(R7i.xy),R7i.z),cubeMapArrayIndex8),intBitsToFloat(R7i.w)).xyz); +R8i.xyz = floatBitsToInt(textureLod(textureUnitPS8, vec4(redcCUBEReverse(intBitsToFloat(R8i.xy),R8i.z),cubeMapArrayIndex8),intBitsToFloat(R8i.w)).xyz); +R12i.xyz = floatBitsToInt(texture(textureUnitPS10, vec3(intBitsToFloat(R3i.x),intBitsToFloat(R3i.y),intBitsToFloat(R3i.z))).xyz); +R3i.xyz = floatBitsToInt(texture(textureUnitPS13, intBitsToFloat(R3i.xy)).xyz); +// 0 +backupReg0i = R0i.x; +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(backupReg0i),intBitsToFloat(R4i.x),intBitsToFloat(R2i.z),-0.0),vec4(intBitsToFloat(R9i.x),intBitsToFloat(R9i.y),1.0,0.0))); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +R125i.x = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(uf_remappedPS[10].x)), intBitsToFloat(uf_remappedPS[11].w))); +PS0i = R125i.x; +// 1 +R126i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(R1i.x)) + intBitsToFloat(R2i.w))); +R123i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R0i.w)),intBitsToFloat(PV0i.x)) + intBitsToFloat(PV0i.x))); +PV1i.y = R123i.y; +R125i.z = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(uf_remappedPS[10].y)), intBitsToFloat(uf_remappedPS[11].w))); +R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R13i.x), intBitsToFloat(R13i.y))); +PV1i.w = R127i.w; +R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[11].w), intBitsToFloat(uf_remappedPS[11].w))); +PS1i = R126i.y; +// 2 +R127i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R0i.x),-(intBitsToFloat(PV1i.y))) + intBitsToFloat(R9i.x))); +PV0i.x = R127i.x; +R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.x),-(intBitsToFloat(PV1i.y))) + intBitsToFloat(R9i.y))); +PV0i.y = R127i.y; +R126i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R9i.z),-(intBitsToFloat(PV1i.y))) + intBitsToFloat(R10i.z))); +PV0i.z = R126i.z; +R124i.w = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(uf_remappedPS[10].z)), intBitsToFloat(uf_remappedPS[11].w))); +R4i.x = floatBitsToInt(intBitsToFloat(PV1i.w) + intBitsToFloat(0x3f4ccccd)); +R4i.x = clampFI32(R4i.x); +PS0i = R4i.x; +// 3 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),-0.0),vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),0.0))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R126i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.x),intBitsToFloat(R5i.x)) + intBitsToFloat(R126i.x))); +PS1i = R126i.w; +// 4 +R9i.x = floatBitsToInt(intBitsToFloat(R127i.w) + 0.25); +R9i.x = clampFI32(R9i.x); +R125i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[12].x), intBitsToFloat(R127i.w))); +R124i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(R126i.y))); +R127i.w = R2i.y & int(1); +tempResultf = 1.0 / sqrt(intBitsToFloat(PV1i.x)); +PS0i = floatBitsToInt(tempResultf); +// 5 +backupReg0i = R126i.w; +R0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(PS0i))); +PV1i.x = R0i.x; +R124i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), intBitsToFloat(PS0i))); +PV1i.y = R124i.y; +R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.z), intBitsToFloat(PS0i))); +PV1i.z = R127i.z; +R126i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R13i.z), intBitsToFloat(R13i.z))); +tempResultf = 1.0 / sqrt(intBitsToFloat(backupReg0i)); +R126i.z = floatBitsToInt(tempResultf); +PS1i = R126i.z; +// 6 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R10i.x),intBitsToFloat(R10i.y),intBitsToFloat(R11i.z),-0.0),vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),0.0))); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +PS0i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.x), intBitsToFloat(PS1i))); +// 7 +PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.x), intBitsToFloat(R126i.z))); +R127i.y = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(PS0i)), intBitsToFloat(uf_remappedPS[11].w))); +PV1i.z = floatBitsToInt(max(-(intBitsToFloat(PV0i.x)), 0.0)); +PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.z), intBitsToFloat(R126i.z))); +PS1i = floatBitsToInt(float(R127i.w)); +// 8 +R124i.x = floatBitsToInt(min(intBitsToFloat(PV1i.z), 1.0)); +PV0i.x = R124i.x; +R126i.y = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(PV1i.x)), intBitsToFloat(uf_remappedPS[11].w))); +PV0i.y = R126i.y; +R126i.z = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(PV1i.w)), intBitsToFloat(uf_remappedPS[11].w))); +PV0i.z = R126i.z; +R1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS1i), intBitsToFloat(R126i.w))); +R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.w), intBitsToFloat(R127i.z))); +PS0i = R126i.x; +// 9 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R125i.x),intBitsToFloat(R125i.z),intBitsToFloat(R124i.w),-0.0),vec4(intBitsToFloat(R127i.y),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),0.0))); +tempi.x = clampFI32(tempi.x); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R124i.w = tempi.x; +R127i.x = floatBitsToInt(-(intBitsToFloat(PV0i.x)) + 1.0); +PS1i = R127i.x; +// 10 +backupReg0i = R0i.x; +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R127i.y),intBitsToFloat(R126i.y),intBitsToFloat(R126i.z),-0.0),vec4(intBitsToFloat(backupReg0i),intBitsToFloat(R124i.y),intBitsToFloat(R127i.z),0.0))); +tempi.x = clampFI32(tempi.x); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +PS0i = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + 1.0); +// 11 +PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(PV0i.x))); +R127i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R124i.x)),intBitsToFloat(R127i.x)) + intBitsToFloat(R127i.x))); +PV1i.y = R127i.y; +R126i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R124i.w)),intBitsToFloat(PS0i)) + intBitsToFloat(PS0i))); +PV1i.w = R126i.w; +// 12 +R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.z),intBitsToFloat(R124i.y)) + intBitsToFloat(R126i.x))); +PV0i.x = R123i.x; +R123i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R124i.x)),intBitsToFloat(PV1i.y)) + intBitsToFloat(PV1i.y))); +PV0i.y = R123i.y; +R123i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R124i.w)),intBitsToFloat(PV1i.w)) + intBitsToFloat(PV1i.w))); +PV0i.z = R123i.z; +R124i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.y),intBitsToFloat(PV1i.x)) + -(intBitsToFloat(PV1i.x)))); +PV0i.w = R124i.w; +R122i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.x),-(intBitsToFloat(R6i.x))) + intBitsToFloat(R124i.x))); +PS0i = R122i.x; +// 13 +backupReg0i = R125i.x; +backupReg1i = R127i.y; +R125i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(R0i.x)) + intBitsToFloat(PV0i.x))); +R125i.x = clampFI32(R125i.x); +PV1i.x = R125i.x; +R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.w), intBitsToFloat(PV0i.z))); +PV1i.y = R127i.y; +PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.w) + 1.0); +PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg1i), intBitsToFloat(PV0i.y))); +PS1i = floatBitsToInt(intBitsToFloat(R6i.x) + intBitsToFloat(PS0i)); +// 14 +R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.x),-(intBitsToFloat(R6i.x))) + intBitsToFloat(PV1i.x))); +PV0i.x = R123i.x; +R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.w),intBitsToFloat(PV1i.z)) + intBitsToFloat(PV1i.z))); +PV0i.y = R123i.y; +R123i.z = floatBitsToInt((-(intBitsToFloat(PV1i.y)) * intBitsToFloat(0x3ca3d70a) + intBitsToFloat(0x3ca3d70a))); +PV0i.z = R123i.z; +R124i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(R4i.x))); +PV0i.w = R124i.w; +R125i.z = floatBitsToInt(1.0 / intBitsToFloat(PS1i)); +PS0i = R125i.z; +// 15 +backupReg0i = R125i.y; +PV1i.x = floatBitsToInt(intBitsToFloat(R6i.x) + intBitsToFloat(PV0i.x)); +R125i.y = floatBitsToInt(intBitsToFloat(R127i.y) + intBitsToFloat(PV0i.z)); +R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(R125i.x))); +R126i.w = floatBitsToInt((-(intBitsToFloat(PV0i.w)) * intBitsToFloat(0x3ca3d70a) + intBitsToFloat(0x3ca3d70a))); +PS1i = floatBitsToInt(1.0 / intBitsToFloat(PV0i.y)); +// 16 +R125i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R9i.x),-(intBitsToFloat(R127i.y))) + intBitsToFloat(R9i.x))); +R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R7i.z),-(intBitsToFloat(R124i.w))) + intBitsToFloat(R7i.z))); +PV0i.z = floatBitsToInt(0.25 * intBitsToFloat(R125i.z)); +PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.y), intBitsToFloat(PS1i))); +PS0i = floatBitsToInt(1.0 / intBitsToFloat(PV1i.x)); +// 17 +backupReg0i = R125i.y; +PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS0i), intBitsToFloat(PV0i.w))); +R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R7i.y),-(intBitsToFloat(R124i.w))) + intBitsToFloat(R7i.y))); +PV1i.y = R123i.y; +R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R7i.x),-(intBitsToFloat(R124i.w))) + intBitsToFloat(R7i.x))); +PV1i.z = R123i.z; +PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(R124i.z))); +R125i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PV0i.z))); +PS1i = R125i.y; +// 18 +backupReg0i = R127i.y; +R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[13].x),intBitsToFloat(R125i.x)) + intBitsToFloat(PV1i.z))); +PV0i.x = R123i.x; +R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[13].z),intBitsToFloat(R125i.x)) + intBitsToFloat(backupReg0i))); +R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[13].y),intBitsToFloat(R125i.x)) + intBitsToFloat(PV1i.y))); +PV0i.z = R123i.z; +PV0i.w = floatBitsToInt(intBitsToFloat(R124i.w) + intBitsToFloat(R126i.w)); +R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(PV1i.x))); +PS0i = R126i.y; +// 19 +R125i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.y),intBitsToFloat(PV0i.w)) + intBitsToFloat(R12i.y))); +R124i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.x),intBitsToFloat(PV0i.w)) + intBitsToFloat(R12i.x))); +PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(R2i.x))); +R126i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.z),intBitsToFloat(PV0i.w)) + intBitsToFloat(R12i.z))); +R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), intBitsToFloat(R6i.z))); +PS1i = R126i.x; +// 20 +backupReg0i = R0i.z; +PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[13].x), intBitsToFloat(R125i.y))); +PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[13].y), intBitsToFloat(R125i.y))); +PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[13].z), intBitsToFloat(R125i.y))); +PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), intBitsToFloat(backupReg0i))); +R127i.z = floatBitsToInt((intBitsToFloat(PV1i.z) * intBitsToFloat(0x3f6e896b) + intBitsToFloat(0x3a011b1e))); +PS0i = R127i.z; +// 21 +R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.z),intBitsToFloat(R126i.y)) + intBitsToFloat(R126i.w))); +PV1i.x = R123i.x; +R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.y),intBitsToFloat(R126i.y)) + intBitsToFloat(R125i.x))); +PV1i.y = R123i.y; +R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),intBitsToFloat(R126i.y)) + intBitsToFloat(R124i.y))); +PV1i.z = R123i.z; +R123i.w = floatBitsToInt((intBitsToFloat(R126i.x) * intBitsToFloat(0x3f6e896b) + intBitsToFloat(0x3a011b1e))); +PV1i.w = R123i.w; +R122i.x = floatBitsToInt((intBitsToFloat(PV0i.w) * intBitsToFloat(0x3f6e896b) + intBitsToFloat(0x3a011b1e))); +PS1i = R122i.x; +// 22 +R8i.y = floatBitsToInt(intBitsToFloat(PV1i.x) + intBitsToFloat(PS1i)); +R0i.z = floatBitsToInt(intBitsToFloat(PV1i.y) + intBitsToFloat(PV1i.w)); +R0i.w = floatBitsToInt(intBitsToFloat(PV1i.z) + intBitsToFloat(R127i.z)); +// 23 +R1i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R13i.z),intBitsToFloat(R0i.w)) + intBitsToFloat(R3i.x))); +R1i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R13i.z),intBitsToFloat(R0i.z)) + intBitsToFloat(R3i.y))); +R1i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R13i.z),intBitsToFloat(R8i.y)) + intBitsToFloat(R3i.z))); +// export +passPixelColor0 = vec4(intBitsToFloat(R1i.x), intBitsToFloat(R1i.y), intBitsToFloat(R1i.z), intBitsToFloat(R1i.w)); +float luma = dot(passPixelColor0.rgb, vec3(0.2126, 0.7152, 0.0722)); +#if (ENABLE_COLOR_FADE == 1) +float depth = texture(textureUnitPS4, passParameterSem0.xy).x; +float factor = smoothstep(0.0005, 0.00075, depth); +passPixelColor0.rgb = mix(passPixelColor0.rgb, vec3(luma), factor); +#else +passPixelColor0.rgb = vec3(luma); +#endif +} diff --git a/Modifications/BreathOfTheWild_Monochromia/dee484f174698fba_000000007924d249_ps.txt b/Modifications/BreathOfTheWild_Monochromia/dee484f174698fba_000000007924d249_ps.txt new file mode 100644 index 00000000..b2bbc9eb --- /dev/null +++ b/Modifications/BreathOfTheWild_Monochromia/dee484f174698fba_000000007924d249_ps.txt @@ -0,0 +1,534 @@ +#version 420 +#extension GL_ARB_texture_gather : enable +// shader dee484f174698fba +// Monochromia +// Link and other characters +// original shader dumped using cemu 1.11.c, BotW 1.3.1 +uniform ivec4 uf_remappedPS[9]; +layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0xf45c6000 res 1280x720x1 dim 1 tm: 4 format 041a compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 2) uniform sampler2D textureUnitPS2;// Tex2 addr 0xf494a800 res 1280x720x1 dim 1 tm: 4 format 001a compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler2 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 4) uniform sampler2D textureUnitPS4;// Tex4 addr 0xf4e91800 res 1280x720x1 dim 1 tm: 4 format 0806 compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler4 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 6) uniform sampler2D textureUnitPS6;// Tex6 addr 0xf5054000 res 640x360x1 dim 1 tm: 4 format 080e compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler6 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 8) uniform sampler2DArray textureUnitPS8;// Tex8 addr 0xf5593000 res 640x360x2 dim 5 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x2) Sampler8 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 9) uniform sampler2D textureUnitPS9;// Tex9 addr 0xf575f800 res 640x360x1 dim 1 tm: 4 format 001a compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler9 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 11) uniform sampler2D textureUnitPS11;// Tex11 addr 0xf5977800 res 640x360x1 dim 1 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler11 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 12) uniform sampler2D textureUnitPS12;// Tex12 addr 0xf4240800 res 1280x720x1 dim 1 tm: 4 format 080e compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler12 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 13) uniform sampler2D textureUnitPS13;// Tex13 addr 0xf528a800 res 640x360x1 dim 1 tm: 4 format 001a compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler13 ClampX/Y/Z: 2 2 2 border: 1 +layout(location = 0) in vec4 passParameterSem0; +layout(location = 1) in vec4 passParameterSem1; +layout(location = 2) in vec4 passParameterSem2; +layout(location = 3) in vec4 passParameterSem4; +layout(location = 4) in vec4 passParameterSem6; +layout(location = 0) out vec4 passPixelColor0; +uniform vec2 uf_fragCoordScale; +int clampFI32(int v) +{ +if( v == 0x7FFFFFFF ) + return floatBitsToInt(1.0); +else if( v == 0xFFFFFFFF ) + return floatBitsToInt(0.0); +return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); +} +float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } +void main() +{ +ivec4 R0i = ivec4(0); +ivec4 R1i = ivec4(0); +ivec4 R2i = ivec4(0); +ivec4 R3i = ivec4(0); +ivec4 R4i = ivec4(0); +ivec4 R5i = ivec4(0); +ivec4 R6i = ivec4(0); +ivec4 R7i = ivec4(0); +ivec4 R8i = ivec4(0); +ivec4 R9i = ivec4(0); +ivec4 R10i = ivec4(0); +ivec4 R11i = ivec4(0); +ivec4 R12i = ivec4(0); +ivec4 R13i = ivec4(0); +ivec4 R14i = ivec4(0); +ivec4 R15i = ivec4(0); +ivec4 R16i = ivec4(0); +ivec4 R17i = ivec4(0); +ivec4 R122i = ivec4(0); +ivec4 R123i = ivec4(0); +ivec4 R124i = ivec4(0); +ivec4 R125i = ivec4(0); +ivec4 R126i = ivec4(0); +ivec4 R127i = ivec4(0); +int backupReg0i, backupReg1i, backupReg2i, backupReg3i, backupReg4i; +ivec4 PV0i = ivec4(0), PV1i = ivec4(0); +int PS0i = 0, PS1i = 0; +ivec4 tempi = ivec4(0); +float tempResultf; +int tempResulti; +ivec4 ARi = ivec4(0); +bool predResult = true; +vec3 cubeMapSTM; +int cubeMapFaceId; +R0i = floatBitsToInt(passParameterSem0); +R1i = floatBitsToInt(passParameterSem1); +R2i = floatBitsToInt(passParameterSem2); +R3i = floatBitsToInt(passParameterSem4); +R4i = floatBitsToInt(passParameterSem6); +R7i.xyzw = floatBitsToInt(texture(textureUnitPS1, intBitsToFloat(R4i.zw)).xyzw); +R5i.w = floatBitsToInt(texture(textureUnitPS12, intBitsToFloat(R0i.xy)).x); +R6i.xyzw = floatBitsToInt(textureGather(textureUnitPS6, intBitsToFloat(R0i.xy)).xyzw); +R4i.xyzw = floatBitsToInt(texture(textureUnitPS2, intBitsToFloat(R4i.zw)).xyzw); +// 0 +R127i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R5i.w)),intBitsToFloat(uf_remappedPS[0].w)) + 1.0)); +PV0i.y = floatBitsToInt(floor(intBitsToFloat(R3i.x))); +R8i.z = 0; +PV0i.w = floatBitsToInt(intBitsToFloat(R7i.w) * intBitsToFloat(0x437f0000)); +PS0i = floatBitsToInt(floor(intBitsToFloat(R3i.y))); +// 1 +R126i.x = floatBitsToInt(intBitsToFloat(R3i.y) + -(intBitsToFloat(PS0i))); +R125i.y = floatBitsToInt(intBitsToFloat(R3i.x) + -(intBitsToFloat(PV0i.y))); +R126i.z = floatBitsToInt(intBitsToFloat(PV0i.y) + -(0.5)); +R127i.w = floatBitsToInt(intBitsToFloat(PS0i) + -(0.5)); +R5i.z = int(intBitsToFloat(PV0i.w)); +PS1i = R5i.z; +// 2 +R125i.x = floatBitsToInt((intBitsToFloat(R4i.x) * 2.0 + -(1.0))); +PV0i.y = PS1i >> 0x00000005; +R10i.z = floatBitsToInt(roundEven(0.0)); +R126i.w = floatBitsToInt((intBitsToFloat(R4i.y) * 2.0 + -(1.0))); +PS0i = floatBitsToInt(1.0 / intBitsToFloat(R127i.x)); +// 3 +PV1i.x = PV0i.y & 0x00000007; +R124i.y = floatBitsToInt((intBitsToFloat(R4i.z) * 2.0 + -(1.0))); +R11i.z = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(uf_remappedPS[0].x)), intBitsToFloat(PS0i))); +PV1i.z = R11i.z; +R5i.w = 0x3f19999a; +R9i.z = floatBitsToInt(1.0); +PS1i = R9i.z; +// 4 +R5i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.z), intBitsToFloat(PV1i.z))); +PV0i.y = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(PV1i.z)), intBitsToFloat(uf_remappedPS[1].y))); +R127i.z = floatBitsToInt(intBitsToFloat(uf_remappedPS[0].x) + intBitsToFloat(PV1i.z)); +PV0i.z = R127i.z; +R8i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.w), intBitsToFloat(PV1i.z))); +PS0i = floatBitsToInt(float(PV1i.x)); +// 5 +R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.z),intBitsToFloat(uf_remappedPS[2].x)) + intBitsToFloat(R6i.y))); +PV1i.x = R123i.x; +R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.z),intBitsToFloat(uf_remappedPS[2].x)) + intBitsToFloat(R6i.x))); +R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.z),intBitsToFloat(uf_remappedPS[2].x)) + intBitsToFloat(R6i.w))); +PV1i.z = R123i.z; +PV1i.w = floatBitsToInt(intBitsToFloat(PS0i) + intBitsToFloat(0xc0000000)); +R127i.x = floatBitsToInt(1.0 / intBitsToFloat(PV0i.y)); +PS1i = R127i.x; +// 6 +PV0i.x = floatBitsToInt(max(intBitsToFloat(PV1i.x), -(intBitsToFloat(PV1i.x)))); +R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PS1i), intBitsToFloat(uf_remappedPS[3].x))); +PV0i.y = R126i.y; +PV0i.z = floatBitsToInt(max(intBitsToFloat(PV1i.z), -(intBitsToFloat(PV1i.z)))); +R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(uf_remappedPS[2].x)) + intBitsToFloat(R6i.z))); +PV0i.w = R123i.w; +PS0i = floatBitsToInt(exp2(intBitsToFloat(PV1i.w))); +// 7 +PV1i.x = floatBitsToInt(max(intBitsToFloat(R127i.y), -(intBitsToFloat(R127i.y)))); +R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(PS0i))); +PV1i.y = R127i.y; +PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(PV0i.y))); +PV1i.w = floatBitsToInt(max(intBitsToFloat(PV0i.w), -(intBitsToFloat(PV0i.w)))); +PS1i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), intBitsToFloat(PV0i.y))); +// 8 +backupReg0i = R126i.y; +backupReg0i = R126i.y; +PV0i.x = floatBitsToInt(-(intBitsToFloat(PV1i.z)) + intBitsToFloat(PS1i)); +R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(backupReg0i))); +PV0i.y = R126i.y; +R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(backupReg0i))); +PV0i.z = R127i.z; +PV0i.w = PV1i.y; +PV0i.w = clampFI32(PV0i.w); +R125i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.w), intBitsToFloat(R4i.w))); +PS0i = R125i.z; +// 9 +PV1i.x = floatBitsToInt(-(intBitsToFloat(PV0i.z)) + intBitsToFloat(PV0i.x)); +PV1i.y = floatBitsToInt(intBitsToFloat(PS0i) + intBitsToFloat(0x40400000)); +PV1i.z = floatBitsToInt(-(intBitsToFloat(PV0i.y)) + intBitsToFloat(PV0i.x)); +R6i.w = floatBitsToInt(intBitsToFloat(PV0i.w) * intBitsToFloat(0x40400000)); +R122i.x = floatBitsToInt((intBitsToFloat(R127i.x) * intBitsToFloat(0x3dcccccd) + 1.0)); +PS1i = R122i.x; +// 10 +PV0i.x = floatBitsToInt(intBitsToFloat(R127i.z) + intBitsToFloat(PV1i.z)); +PV0i.y = floatBitsToInt(intBitsToFloat(R126i.y) + intBitsToFloat(PV1i.x)); +PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.y) * intBitsToFloat(0x3fb8aa3b)); +R9i.w = floatBitsToInt(intBitsToFloat(PS1i) * intBitsToFloat(0x42960000)); +R4i.w = 0; +PS0i = R4i.w; +// 11 +backupReg0i = R127i.y; +PV1i.x = R5i.z & 0x0000001c; +R127i.y = backupReg0i; +R127i.y = floatBitsToInt(intBitsToFloat(R127i.y) * 2.0); +R127i.y = clampFI32(R127i.y); +PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.x) + intBitsToFloat(R126i.x)); +PV1i.z = clampFI32(PV1i.z); +PV1i.w = floatBitsToInt(intBitsToFloat(PV0i.y) + intBitsToFloat(R125i.y)); +PV1i.w = clampFI32(PV1i.w); +R4i.x = floatBitsToInt(exp2(intBitsToFloat(PV0i.z))); +PS1i = R4i.x; +// 12 +PV0i.x = floatBitsToInt(intBitsToFloat(PV1i.z) + intBitsToFloat(R127i.w)); +PV0i.y = R5i.z & 0x00000002; +R4i.z = floatBitsToInt(intBitsToFloat(R125i.z) * intBitsToFloat(0x41000000)); +PV0i.w = floatBitsToInt(intBitsToFloat(PV1i.w) + intBitsToFloat(R126i.z)); +PS0i = floatBitsToInt(float(PV1i.x)); +// 13 +R10i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.z), intBitsToFloat(PV0i.w))); +R10i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.w), intBitsToFloat(PV0i.x))); +R16i.z = floatBitsToInt(intBitsToFloat(R127i.y) * 0.25); +R10i.w = floatBitsToInt(intBitsToFloat(PS0i) * intBitsToFloat(0x3d124925)); +R14i.z = floatBitsToInt(float(PV0i.y)); +R14i.z = floatBitsToInt(intBitsToFloat(R14i.z) / 2.0); +PS1i = R14i.z; +// 14 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R125i.x),intBitsToFloat(R126i.w),intBitsToFloat(R124i.y),-0.0),vec4(intBitsToFloat(R125i.x),intBitsToFloat(R126i.w),intBitsToFloat(R124i.y),0.0))); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +R13i.z = floatBitsToInt(intBitsToFloat(R2i.x) * intBitsToFloat(0x3f4ccccd)); +PS0i = R13i.z; +// 15 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R5i.x),intBitsToFloat(R8i.w),intBitsToFloat(R11i.z),-0.0),vec4(intBitsToFloat(R5i.x),intBitsToFloat(R8i.w),intBitsToFloat(R11i.z),0.0))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R127i.y = floatBitsToInt(sqrt(intBitsToFloat(PV0i.x))); +PS1i = R127i.y; +// 16 +R9i.x = floatBitsToInt(intBitsToFloat(R2i.z) * intBitsToFloat(0x3f4ccccd)); +PV0i.x = R9i.x; +R8i.y = floatBitsToInt(intBitsToFloat(R2i.y) * intBitsToFloat(0x3f4ccccd)); +PV0i.y = R8i.y; +R12i.z = floatBitsToInt(intBitsToFloat(uf_remappedPS[4].x) + -(intBitsToFloat(R13i.z))); +R123i.w = floatBitsToInt((intBitsToFloat(PS1i) * 4.0 + intBitsToFloat(0xc0400000))); +R123i.w = clampFI32(R123i.w); +PV0i.w = R123i.w; +R126i.x = floatBitsToInt(sqrt(intBitsToFloat(PV1i.x))); +PS0i = R126i.x; +// 17 +R8i.x = floatBitsToInt(intBitsToFloat(uf_remappedPS[4].y) + -(intBitsToFloat(PV0i.y))); +R5i.y = floatBitsToInt(intBitsToFloat(PV0i.w) + -(0.5)); +R5i.y = floatBitsToInt(intBitsToFloat(R5i.y) * 4.0); +R5i.y = clampFI32(R5i.y); +PV1i.y = R5i.y; +R15i.z = floatBitsToInt(intBitsToFloat(uf_remappedPS[4].z) + -(intBitsToFloat(PV0i.x))); +R11i.w = floatBitsToInt((intBitsToFloat(R7i.x) * intBitsToFloat(0x3f895ef0) + intBitsToFloat(0xba0a8ec8))); +R11i.w = clampFI32(R11i.w); +PS1i = floatBitsToInt(1.0 / intBitsToFloat(R127i.y)); +// 18 +R3i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.x), intBitsToFloat(PS1i))); +R3i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.w), intBitsToFloat(PS1i))); +R3i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.y), intBitsToFloat(PS1i))); +PV0i.w = floatBitsToInt(intBitsToFloat(PV1i.y) + intBitsToFloat(0x3f4ccccd)); +PV0i.w = clampFI32(PV0i.w); +PS0i = floatBitsToInt(1.0 / intBitsToFloat(R126i.x)); +// 19 +R6i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.x), intBitsToFloat(PS0i))); +PV1i.x = R6i.x; +R6i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.w), intBitsToFloat(PS0i))); +PV1i.y = R6i.y; +R6i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R11i.z), intBitsToFloat(PS0i))); +PV1i.z = R6i.z; +R3i.w = floatBitsToInt(intBitsToFloat(PV0i.w) + -(1.0)); +R11i.x = floatBitsToInt((intBitsToFloat(R7i.y) * intBitsToFloat(0x3f895ef0) + intBitsToFloat(0xba0a8ec8))); +R11i.x = clampFI32(R11i.x); +PS1i = R11i.x; +// 20 +backupReg0i = R7i.z; +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R3i.x),intBitsToFloat(R3i.y),intBitsToFloat(R3i.z),-0.0),vec4(intBitsToFloat(PV1i.x),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.z),0.0))); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +R7i.z = tempi.x; +R12i.w = floatBitsToInt((intBitsToFloat(backupReg0i) * intBitsToFloat(0x3f895ef0) + intBitsToFloat(0xba0a8ec8))); +R12i.w = clampFI32(R12i.w); +PS0i = R12i.w; +// 0 +R127i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[5].x), intBitsToFloat(uf_remappedPS[6].w))); +PV0i.x = R127i.x; +R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[5].y), intBitsToFloat(uf_remappedPS[6].w))); +PV0i.y = R127i.y; +R127i.z = floatBitsToInt(intBitsToFloat(R7i.z) + 1.0); +R127i.z = clampFI32(R127i.z); +R126i.w = R5i.z & int(1); +R126i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.y), intBitsToFloat(uf_remappedPS[5].y))); +PS0i = R126i.x; +// 1 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(R8i.z),-0.0),vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(R8i.z),0.0))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R125i.x = floatBitsToInt(-(intBitsToFloat(PV0i.x)) * 1.5); +PS1i = R125i.x; +// 2 +PV0i.x = floatBitsToInt(-(intBitsToFloat(R127i.z)) + 1.0); +R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.z),intBitsToFloat(uf_remappedPS[5].z)) + intBitsToFloat(R126i.x))); +PV0i.y = R123i.y; +R125i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[5].z), intBitsToFloat(uf_remappedPS[6].w))); +PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R9i.z), intBitsToFloat(R9i.z))); +tempResultf = 1.0 / sqrt(intBitsToFloat(PV1i.x)); +PS0i = floatBitsToInt(tempResultf); +// 3 +R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R5i.w),intBitsToFloat(R5i.w)) + intBitsToFloat(PV0i.w))); +PV1i.x = R123i.x; +R7i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), intBitsToFloat(PS0i))); +R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.x),intBitsToFloat(uf_remappedPS[5].x)) + intBitsToFloat(PV0i.y))); +PV1i.z = R123i.z; +R7i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(PS0i))); +tempResultf = log2(intBitsToFloat(PV0i.x)); +if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; +PS1i = floatBitsToInt(tempResultf); +// 4 +PV0i.x = floatBitsToInt(max(-(intBitsToFloat(PV1i.z)), 0.0)); +R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.x),intBitsToFloat(R125i.x)) + intBitsToFloat(PV1i.x))); +PV0i.y = R123i.y; +R126i.z = floatBitsToInt(intBitsToFloat(PS1i) * intBitsToFloat(0x3e4ccccd)); +PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.z), intBitsToFloat(R125i.z))); +R9i.z = floatBitsToInt(float(R126i.w)); +PS0i = R9i.z; +// 5 +R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.y),intBitsToFloat(R127i.y)) + intBitsToFloat(PV0i.w))); +PV1i.x = R123i.x; +R124i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.z), -(intBitsToFloat(R4i.w)))); +R4i.w = floatBitsToInt(min(intBitsToFloat(PV0i.x), 1.0)); +tempResultf = 1.0 / sqrt(intBitsToFloat(PV0i.y)); +PS1i = floatBitsToInt(tempResultf); +// 6 +PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.x), intBitsToFloat(PS1i))); +PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.w), intBitsToFloat(PS1i))); +PV0i.z = PS1i; +R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.x),intBitsToFloat(R127i.x)) + intBitsToFloat(PV1i.x))); +PV0i.w = R123i.w; +R4i.y = floatBitsToInt(exp2(intBitsToFloat(R126i.z))); +PS0i = R4i.y; +// 7 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R3i.x),intBitsToFloat(R3i.y),intBitsToFloat(R3i.z),-0.0),vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),0.0))); +tempi.x = clampFI32(tempi.x); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +PS1i = floatBitsToInt(max(-(intBitsToFloat(PV0i.w)), 0.0)); +// 8 +R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.z),-(intBitsToFloat(R125i.z))) + intBitsToFloat(R124i.y))); +PV0i.x = R123i.x; +PV0i.z = floatBitsToInt(min(intBitsToFloat(PS1i), 1.0)); +tempResultf = log2(intBitsToFloat(PV1i.x)); +if( isinf(tempResultf) == true ) tempResultf = -3.40282347E+38F; +PS0i = floatBitsToInt(tempResultf); +// 9 +R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.y),-(intBitsToFloat(R127i.y))) + intBitsToFloat(PV0i.x))); +PV1i.x = R123i.x; +PV1i.y = floatBitsToInt(intBitsToFloat(PV0i.z) * intBitsToFloat(0x40a00000)); +PV1i.y = clampFI32(PV1i.y); +PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.x), intBitsToFloat(PS0i))); +R5i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PV0i.z))); +// 10 +backupReg0i = R127i.x; +R127i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.w),intBitsToFloat(PV1i.y)) + 1.0)); +PV0i.x = R127i.x; +R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.x),-(intBitsToFloat(backupReg0i))) + intBitsToFloat(PV1i.x))); +PV0i.w = R123i.w; +PS0i = floatBitsToInt(exp2(intBitsToFloat(PV1i.z))); +// 11 +PV1i.x = floatBitsToInt(intBitsToFloat(PS0i) + intBitsToFloat(0xbe0f5c29)); +R3i.y = floatBitsToInt(intBitsToFloat(PV0i.w) + intBitsToFloat(0x3f666666)); +R3i.y = clampFI32(R3i.y); +PV1i.z = floatBitsToInt(intBitsToFloat(PS0i) + intBitsToFloat(0xbba3d70a)); +R3i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.x), intBitsToFloat(PV0i.x))); +R3i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.y), intBitsToFloat(PV0i.x))); +PS1i = R3i.z; +// 12 +R3i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R2i.z), intBitsToFloat(R127i.x))); +R127i.y = floatBitsToInt(intBitsToFloat(PV1i.z) * intBitsToFloat(0x42c80000)); +R127i.y = clampFI32(R127i.y); +PV0i.w = floatBitsToInt(intBitsToFloat(PV1i.x) * intBitsToFloat(0x428c0000)); +PV0i.w = clampFI32(PV0i.w); +// 13 +PV1i.x = floatBitsToInt(intBitsToFloat(PV0i.w) * intBitsToFloat(0x3e99999a)); +// 14 +R123i.w = floatBitsToInt((intBitsToFloat(R127i.y) * intBitsToFloat(0x3e4ccccd) + intBitsToFloat(PV1i.x))); +R123i.w = clampFI32(R123i.w); +PV0i.w = R123i.w; +// 15 +R9i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(R4i.z))); +// 0 +PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[7].z), intBitsToFloat(R7i.w))); +PV0i.z = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(uf_remappedPS[7].w)), intBitsToFloat(R7i.y))); +// 1 +backupReg0i = R0i.x; +backupReg1i = R0i.y; +R0i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.x),intBitsToFloat(R6i.w)) + intBitsToFloat(backupReg0i))); +R0i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.z),intBitsToFloat(R6i.w)) + intBitsToFloat(backupReg1i))); +R0i.w = floatBitsToInt(texture(textureUnitPS4, intBitsToFloat(R0i.xy)).x); +R6i.w = floatBitsToInt(texture(textureUnitPS13, intBitsToFloat(R10i.xy)).w); +R17i.xyz = floatBitsToInt(texture(textureUnitPS9, intBitsToFloat(R10i.xy)).xyz); +R7i.xyz = floatBitsToInt(texture(textureUnitPS8, vec3(intBitsToFloat(R10i.x),intBitsToFloat(R10i.y),intBitsToFloat(R10i.z))).xyz); +R10i.xyz = floatBitsToInt(texture(textureUnitPS11, intBitsToFloat(R10i.xy)).xyz); +// 0 +R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(R0i.y)) + intBitsToFloat(R1i.w))); +PV0i.x = R123i.x; +R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(R0i.x)) + intBitsToFloat(R1i.z))); +PV0i.y = R123i.y; +R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[3].x),intBitsToFloat(R0i.w)) + intBitsToFloat(uf_remappedPS[0].x))); +PV0i.z = R123i.z; +R126i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.w), intBitsToFloat(R4i.y))); +PV0i.w = R126i.w; +PS0i = floatBitsToInt(intBitsToFloat(R17i.x) + intBitsToFloat(0xbecccccd)); +// 1 +PV1i.x = floatBitsToInt(intBitsToFloat(PV0i.w) + intBitsToFloat(0xbf400000)); +PV1i.y = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(PV0i.z)), intBitsToFloat(PV0i.x))); +PV1i.z = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(PV0i.z)), intBitsToFloat(PV0i.y))); +PV1i.w = floatBitsToInt(-(intBitsToFloat(PV0i.z))); +PS1i = floatBitsToInt(intBitsToFloat(PS0i) * intBitsToFloat(0x41200000)); +PS1i = clampFI32(PS1i); +// 2 +R127i.xyz = floatBitsToInt(vec3(-(intBitsToFloat(R5i.x)),-(intBitsToFloat(R8i.w)),-(intBitsToFloat(R11i.z))) + vec3(intBitsToFloat(PV1i.z),intBitsToFloat(PV1i.y),intBitsToFloat(PV1i.w))); +PV0i.x = R127i.x; +PV0i.y = R127i.y; +PV0i.z = R127i.z; +R124i.w = floatBitsToInt(intBitsToFloat(PV1i.x) * intBitsToFloat(0x41800000)); +R124i.w = clampFI32(R124i.w); +R125i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R17i.y), intBitsToFloat(PS1i))); +PS0i = R125i.w; +// 3 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R6i.x),intBitsToFloat(R6i.y),intBitsToFloat(R6i.z),-0.0),vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),0.0))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R127i.w = tempi.x; +R122i.x = floatBitsToInt((intBitsToFloat(R126i.w) * intBitsToFloat(0x3e99999a) + intBitsToFloat(R4i.w))); +PS1i = R122i.x; +// 4 +R123i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R6i.x)),intBitsToFloat(PV1i.x)) + intBitsToFloat(R127i.x))); +PV0i.x = R123i.x; +R123i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R6i.y)),intBitsToFloat(PV1i.x)) + intBitsToFloat(R127i.y))); +PV0i.y = R123i.y; +R123i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R6i.z)),intBitsToFloat(PV1i.x)) + intBitsToFloat(R127i.z))); +PV0i.z = R123i.z; +R126i.w = floatBitsToInt(intBitsToFloat(PS1i) + intBitsToFloat(0xbecccccd)); +R127i.y = floatBitsToInt(intBitsToFloat(R2i.w) + -(intBitsToFloat(R124i.w))); +R127i.y = clampFI32(R127i.y); +PS0i = R127i.y; +// 5 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),-0.0),vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),0.0))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +PS1i = floatBitsToInt(intBitsToFloat(R125i.w) + -(1.0)); +// 6 +PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R17i.z), intBitsToFloat(R17i.z))); +PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.w), intBitsToFloat(R9i.w))); +PV0i.y = clampFI32(PV0i.y); +PV0i.z = floatBitsToInt(intBitsToFloat(R7i.z) * intBitsToFloat(0x3dea4a8c)); +R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PS1i),intBitsToFloat(R127i.y)) + 1.0)); +PV0i.w = R123i.w; +tempResultf = 1.0 / sqrt(intBitsToFloat(PV1i.x)); +PS0i = floatBitsToInt(tempResultf); +// 7 +R123i.x = floatBitsToInt((intBitsToFloat(R7i.y) * intBitsToFloat(0x3f162b6b) + intBitsToFloat(PV0i.z))); +PV1i.x = R123i.x; +PV1i.y = floatBitsToInt(intBitsToFloat(R124i.w) + intBitsToFloat(PV0i.y)); +PV1i.y = clampFI32(PV1i.y); +PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.w), intBitsToFloat(PS0i))); +R123i.w = floatBitsToInt((0.5 * intBitsToFloat(PV0i.w) + 0.5)); +PV1i.w = R123i.w; +R6i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R9i.z), intBitsToFloat(PV0i.x))); +PS1i = R6i.w; +// 8 +backupReg0i = R125i.w; +PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(PV1i.y))); +PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[1].z), intBitsToFloat(PV1i.z))); +R125i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(R3i.y))); +R123i.w = floatBitsToInt((intBitsToFloat(R7i.x) * intBitsToFloat(0x3e99096c) + intBitsToFloat(PV1i.x))); +PV0i.w = R123i.w; +R125i.w = floatBitsToInt(intBitsToFloat(R2i.w) + intBitsToFloat(backupReg0i)); +R125i.w = clampFI32(R125i.w); +PS0i = R125i.w; +// 9 +PV1i.x = floatBitsToInt(intBitsToFloat(PV0i.y) * intBitsToFloat(0x3df5c28f)); +PV1i.x = clampFI32(PV1i.x); +PV1i.y = ((intBitsToFloat(PV0i.w) > 0.0)?int(0xFFFFFFFF):int(0x0)); +R127i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R12i.z),intBitsToFloat(PS0i)) + intBitsToFloat(R13i.z))); +PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.y), intBitsToFloat(PV0i.x))); +PS1i = floatBitsToInt(1.0 / intBitsToFloat(PV0i.w)); +// 10 +R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R8i.x),intBitsToFloat(R125i.w)) + intBitsToFloat(R8i.y))); +PV0i.x = R123i.x; +PV0i.y = floatBitsToInt(intBitsToFloat(PV1i.x) + -(0.5)); +R126i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R10i.w),intBitsToFloat(R14i.z)) + intBitsToFloat(PV1i.w))); +R126i.z = clampFI32(R126i.z); +R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R15i.z),intBitsToFloat(R125i.w)) + intBitsToFloat(R9i.x))); +PV0i.w = R123i.w; +R122i.x = ((PV1i.y == 0)?(0):(PS1i)); +PS0i = R122i.x; +// 11 +backupReg0i = R124i.w; +PV1i.x = floatBitsToInt(intBitsToFloat(PV0i.y) * intBitsToFloat(0x42200000)); +PV1i.x = clampFI32(PV1i.x); +R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(uf_remappedPS[8].x))); +R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(uf_remappedPS[8].z))); +R124i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(uf_remappedPS[8].y))); +R124i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PS0i))); +PS1i = R124i.y; +// 12 +PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.x) * intBitsToFloat(0x41000000)); +// 13 +PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R5i.w), intBitsToFloat(PV0i.z))); +PV1i.y = clampFI32(PV1i.y); +// 14 +PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.y), intBitsToFloat(R16i.z))); +// 15 +R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.z),intBitsToFloat(R9i.y)) + intBitsToFloat(PV0i.w))); +R123i.z = clampFI32(R123i.z); +PV1i.z = R123i.z; +// 16 +R123i.y = floatBitsToInt((intBitsToFloat(PV1i.z) * intBitsToFloat(0x40400000) + intBitsToFloat(R126i.z))); +PV0i.y = R123i.y; +// 17 +PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[6].w), intBitsToFloat(PV0i.y))); +// 18 +R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.y),intBitsToFloat(PV1i.x)) + intBitsToFloat(R3i.w))); +PV0i.x = R123i.x; +R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.z),intBitsToFloat(PV1i.x)) + intBitsToFloat(R3i.x))); +PV0i.z = R123i.z; +R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.w),intBitsToFloat(PV1i.x)) + intBitsToFloat(R3i.z))); +PV0i.w = R123i.w; +// 19 +R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R7i.x),intBitsToFloat(R124i.y)) + intBitsToFloat(PV0i.x))); +PV1i.x = R123i.x; +R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R7i.z),intBitsToFloat(R124i.y)) + intBitsToFloat(PV0i.z))); +PV1i.z = R123i.z; +R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R7i.y),intBitsToFloat(R124i.y)) + intBitsToFloat(PV0i.w))); +PV1i.w = R123i.w; +// 20 +PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.z), intBitsToFloat(R12i.w))); +PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(R11i.x))); +PV0i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(R11i.w))); +// 21 +R123i.y = floatBitsToInt((intBitsToFloat(PV0i.x) * intBitsToFloat(0x3f6e896b) + intBitsToFloat(0x3a011b1e))); +PV1i.y = R123i.y; +R123i.z = floatBitsToInt((intBitsToFloat(PV0i.y) * intBitsToFloat(0x3f6e896b) + intBitsToFloat(0x3a011b1e))); +PV1i.z = R123i.z; +R123i.w = floatBitsToInt((intBitsToFloat(PV0i.z) * intBitsToFloat(0x3f6e896b) + intBitsToFloat(0x3a011b1e))); +PV1i.w = R123i.w; +// 22 +R6i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R17i.z),intBitsToFloat(PV1i.w)) + intBitsToFloat(R10i.x))); +R6i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R17i.z),intBitsToFloat(PV1i.z)) + intBitsToFloat(R10i.y))); +R6i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R17i.z),intBitsToFloat(PV1i.y)) + intBitsToFloat(R10i.z))); +// export +passPixelColor0 = vec4(intBitsToFloat(R6i.x), intBitsToFloat(R6i.y), intBitsToFloat(R6i.z), intBitsToFloat(R6i.w)); +float luma = dot(passPixelColor0.rgb, vec3(0.2126, 0.7152, 0.0722)); +passPixelColor0.rgb = vec3(luma); +} diff --git a/Modifications/BreathOfTheWild_Monochromia/eabf1e8268c0acf2_0000000079249749_ps.txt b/Modifications/BreathOfTheWild_Monochromia/eabf1e8268c0acf2_0000000079249749_ps.txt new file mode 100644 index 00000000..12d6005f --- /dev/null +++ b/Modifications/BreathOfTheWild_Monochromia/eabf1e8268c0acf2_0000000079249749_ps.txt @@ -0,0 +1,664 @@ +#version 420 +#extension GL_ARB_texture_gather : enable +// shader eabf1e8268c0acf2 +// Monochromia +// Terrain - normal weather +// original shader dumped using cemu 1.11.c, BotW 1.3.1 +#define ENABLE_COLOR_FADE 0 // set this to 1 to enable, 0 to disable the effect + +uniform ivec4 uf_remappedPS[10]; +layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0xf45c6000 res 1280x720x1 dim 1 tm: 4 format 041a compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 2) uniform sampler2D textureUnitPS2;// Tex2 addr 0xf494a800 res 1280x720x1 dim 1 tm: 4 format 001a compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler2 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 4) uniform sampler2D textureUnitPS4;// Tex4 addr 0xf4e91800 res 1280x720x1 dim 1 tm: 4 format 0806 compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler4 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 6) uniform sampler2D textureUnitPS6;// Tex6 addr 0xf5054000 res 640x360x1 dim 1 tm: 4 format 080e compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler6 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 7) uniform sampler2D textureUnitPS7;// Tex7 addr 0xf5846000 res 640x360x1 dim 1 tm: 4 format 0001 compSel: 0 4 4 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler7 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 8) uniform samplerCubeArray textureUnitPS8;// Tex8 addr 0x3db66800 res 64x64x1 dim 3 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x4) sliceView: 0x0 (num 0x6) Sampler8 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 10) uniform sampler2DArray textureUnitPS10;// Tex10 addr 0xf5593000 res 640x360x2 dim 5 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x2) Sampler10 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 11) uniform sampler2D textureUnitPS11;// Tex11 addr 0xf575f800 res 640x360x1 dim 1 tm: 4 format 001a compSel: 0 1 2 3 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler11 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 13) uniform sampler2D textureUnitPS13;// Tex13 addr 0xf5977800 res 640x360x1 dim 1 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler13 ClampX/Y/Z: 2 2 2 border: 1 +layout(location = 0) in vec4 passParameterSem0; +layout(location = 1) in vec4 passParameterSem1; +layout(location = 2) in vec4 passParameterSem3; +layout(location = 3) in vec4 passParameterSem4; +layout(location = 4) in vec4 passParameterSem6; +layout(location = 0) out vec4 passPixelColor0; +uniform vec2 uf_fragCoordScale; +void redcCUBE(vec4 src0, vec4 src1, out vec3 stm, out int faceId) +{ +// stm -> x .. s, y .. t, z .. MajorAxis*2.0 +vec3 inputCoord = normalize(vec3(src1.y, src1.x, src0.x)); +float rx = inputCoord.x; +float ry = inputCoord.y; +float rz = inputCoord.z; +if( abs(rx) > abs(ry) && abs(rx) > abs(rz) ) +{ +stm.z = rx*2.0; +stm.xy = vec2(ry,rz); +if( rx >= 0.0 ) +{ +faceId = 0; +} +else +{ +faceId = 1; +} +} +else if( abs(ry) > abs(rx) && abs(ry) > abs(rz) ) +{ +stm.z = ry*2.0; +stm.xy = vec2(rx,rz); +if( ry >= 0.0 ) +{ +faceId = 2; +} +else +{ +faceId = 3; +} +} +else //if( abs(rz) > abs(ry) && abs(rz) > abs(rx) ) +{ +stm.z = rz*2.0; +stm.xy = vec2(rx,ry); +if( rz >= 0.0 ) +{ +faceId = 4; +} +else +{ +faceId = 5; +} +} +} +vec3 redcCUBEReverse(vec2 st, int faceId) +{ +st.yx = st.xy; +vec3 v; +float majorAxis = 1.0; +if( faceId == 0 ) +{ +v.yz = (st-vec2(1.5))*(majorAxis*2.0); +v.x = 1.0; +} +else if( faceId == 1 ) +{ +v.yz = (st-vec2(1.5))*(majorAxis*2.0); +v.x = -1.0; +} +else if( faceId == 2 ) +{ +v.xz = (st-vec2(1.5))*(majorAxis*2.0); +v.y = 1.0; +} +else if( faceId == 3 ) +{ +v.xz = (st-vec2(1.5))*(majorAxis*2.0); +v.y = -1.0; +} +else if( faceId == 4 ) +{ +v.xy = (st-vec2(1.5))*(majorAxis*2.0); +v.z = 1.0; +} +else +{ +v.xy = (st-vec2(1.5))*(majorAxis*2.0); +v.z = -1.0; +} +return v; +} +int clampFI32(int v) +{ +if( v == 0x7FFFFFFF ) + return floatBitsToInt(1.0); +else if( v == 0xFFFFFFFF ) + return floatBitsToInt(0.0); +return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); +} +float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } +void main() +{ +ivec4 R0i = ivec4(0); +ivec4 R1i = ivec4(0); +ivec4 R2i = ivec4(0); +ivec4 R3i = ivec4(0); +ivec4 R4i = ivec4(0); +ivec4 R5i = ivec4(0); +ivec4 R6i = ivec4(0); +ivec4 R7i = ivec4(0); +ivec4 R8i = ivec4(0); +ivec4 R9i = ivec4(0); +ivec4 R10i = ivec4(0); +ivec4 R11i = ivec4(0); +ivec4 R12i = ivec4(0); +ivec4 R13i = ivec4(0); +ivec4 R122i = ivec4(0); +ivec4 R123i = ivec4(0); +ivec4 R124i = ivec4(0); +ivec4 R125i = ivec4(0); +ivec4 R126i = ivec4(0); +ivec4 R127i = ivec4(0); +int backupReg0i, backupReg1i, backupReg2i, backupReg3i, backupReg4i; +ivec4 PV0i = ivec4(0), PV1i = ivec4(0); +int PS0i = 0, PS1i = 0; +ivec4 tempi = ivec4(0); +float tempResultf; +int tempResulti; +ivec4 ARi = ivec4(0); +bool predResult = true; +vec3 cubeMapSTM; +int cubeMapFaceId; +float cubeMapArrayIndex8 = 0.0; +R0i = floatBitsToInt(passParameterSem0); +R1i = floatBitsToInt(passParameterSem1); +R2i = floatBitsToInt(passParameterSem3); +R3i = floatBitsToInt(passParameterSem4); +R4i = floatBitsToInt(passParameterSem6); +R7i.xyzw = floatBitsToInt(texture(textureUnitPS2, intBitsToFloat(R4i.zw)).xyzw); +R2i.w = floatBitsToInt(texture(textureUnitPS4, intBitsToFloat(R0i.xy)).x); +R5i.xyzw = floatBitsToInt(textureGather(textureUnitPS6, intBitsToFloat(R0i.xy)).xyzw); +R6i.xyzw = floatBitsToInt(textureGather(textureUnitPS7, intBitsToFloat(R0i.xy)).xyzw); +R4i.xyzw = floatBitsToInt(texture(textureUnitPS1, intBitsToFloat(R4i.zw)).xyzw); +// 0 +R127i.x = floatBitsToInt((intBitsToFloat(R7i.x) * 2.0 + -(1.0))); +PV0i.x = R127i.x; +R127i.y = floatBitsToInt((intBitsToFloat(R7i.y) * 2.0 + -(1.0))); +PV0i.y = R127i.y; +R124i.z = floatBitsToInt((intBitsToFloat(R7i.z) * 2.0 + -(1.0))); +PV0i.z = R124i.z; +R127i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.w),intBitsToFloat(uf_remappedPS[0].x)) + intBitsToFloat(uf_remappedPS[1].x))); +PV0i.w = R127i.w; +R126i.w = floatBitsToInt(-(intBitsToFloat(R2i.w)) + intBitsToFloat(R5i.y)); +PS0i = R126i.w; +// 1 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),-0.0),vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),0.0))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R8i.z = floatBitsToInt(-(intBitsToFloat(PV0i.w))); +PS1i = R8i.z; +// 2 +R10i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.z), -(intBitsToFloat(R127i.w)))); +R9i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R0i.w), -(intBitsToFloat(R127i.w)))); +R125i.z = floatBitsToInt(-(intBitsToFloat(R2i.w)) + intBitsToFloat(R5i.x)); +PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.w), intBitsToFloat(uf_remappedPS[2].y))); +tempResultf = 1.0 / sqrt(intBitsToFloat(PV1i.x)); +R125i.x = floatBitsToInt(tempResultf); +PS0i = R125i.x; +// 3 +R5i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.x), intBitsToFloat(PS0i))); +PV1i.x = R5i.x; +R5i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.y), intBitsToFloat(PS0i))); +R127i.z = floatBitsToInt(-(intBitsToFloat(R2i.w)) + intBitsToFloat(R5i.w)); +R127i.w = floatBitsToInt(-(intBitsToFloat(R2i.w)) + intBitsToFloat(R5i.z)); +R126i.z = floatBitsToInt(1.0 / intBitsToFloat(PV0i.w)); +PS1i = R126i.z; +// 4 +backupReg0i = R0i.x; +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R10i.x),intBitsToFloat(R9i.y),intBitsToFloat(R8i.z),-0.0),vec4(intBitsToFloat(R10i.x),intBitsToFloat(R9i.y),intBitsToFloat(R8i.z),0.0))); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +R8i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.x),intBitsToFloat(PV1i.x)) + intBitsToFloat(backupReg0i))); +PS0i = R8i.x; +// 5 +backupReg0i = R126i.w; +backupReg0i = R126i.w; +R127i.x = floatBitsToInt(max(intBitsToFloat(R127i.z), -(intBitsToFloat(R127i.z)))); +R8i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R2i.y),intBitsToFloat(R5i.y)) + intBitsToFloat(R0i.y))); +R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].x), intBitsToFloat(R126i.z))); +R126i.w = floatBitsToInt(max(intBitsToFloat(backupReg0i), -(intBitsToFloat(backupReg0i)))); +PS1i = floatBitsToInt(sqrt(intBitsToFloat(PV0i.x))); +// 6 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R7i.x),intBitsToFloat(R7i.y),intBitsToFloat(R7i.z),-0.0),vec4(intBitsToFloat(0x3eaaaaab),intBitsToFloat(0x3eaaaaab),intBitsToFloat(0x3eaaaaab),0.0))); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +R127i.y = tempi.x; +PS0i = floatBitsToInt(1.0 / intBitsToFloat(PS1i)); +// 7 +PV1i.x = floatBitsToInt(-(intBitsToFloat(PV0i.x)) + intBitsToFloat(R6i.w)); +R10i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R10i.x), intBitsToFloat(PS0i))); +PV1i.z = floatBitsToInt(-(intBitsToFloat(PV0i.x)) + intBitsToFloat(R6i.y)); +R2i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R9i.y), intBitsToFloat(PS0i))); +R9i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R8i.z), intBitsToFloat(PS0i))); +PS1i = R9i.z; +// 8 +PV0i.x = floatBitsToInt(max(intBitsToFloat(PV1i.x), -(intBitsToFloat(PV1i.x)))); +PV0i.x = floatBitsToInt(intBitsToFloat(PV0i.x) * 4.0); +PV0i.y = floatBitsToInt(-(intBitsToFloat(R127i.y)) + intBitsToFloat(R6i.z)); +PV0i.z = floatBitsToInt(max(intBitsToFloat(PV1i.z), -(intBitsToFloat(PV1i.z)))); +PV0i.z = floatBitsToInt(intBitsToFloat(PV0i.z) * 4.0); +PV0i.w = floatBitsToInt(-(intBitsToFloat(R127i.y)) + intBitsToFloat(R6i.x)); +R126i.x = floatBitsToInt(max(intBitsToFloat(R125i.z), -(intBitsToFloat(R125i.z)))); +PS0i = R126i.x; +// 9 +R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.x),intBitsToFloat(R127i.z)) + intBitsToFloat(PV0i.x))); +PV1i.x = R123i.x; +PV1i.y = floatBitsToInt(max(intBitsToFloat(R127i.w), -(intBitsToFloat(R127i.w)))); +R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R126i.w),intBitsToFloat(R127i.z)) + intBitsToFloat(PV0i.z))); +PV1i.z = R123i.z; +PV1i.w = floatBitsToInt(max(intBitsToFloat(PV0i.w), -(intBitsToFloat(PV0i.w)))); +PV1i.w = floatBitsToInt(intBitsToFloat(PV1i.w) * 4.0); +PS1i = floatBitsToInt(max(intBitsToFloat(PV0i.y), -(intBitsToFloat(PV0i.y)))); +PS1i = floatBitsToInt(intBitsToFloat(PS1i) * 4.0); +// 10 +backupReg0i = R126i.x; +R126i.x = floatBitsToInt(-(intBitsToFloat(PV1i.z)) + intBitsToFloat(PV1i.x)); +PV0i.x = R126i.x; +R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.y),intBitsToFloat(R127i.z)) + intBitsToFloat(PS1i))); +PV0i.y = R127i.y; +R6i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.z), intBitsToFloat(R125i.x))); +PV0i.z = R6i.z; +R127i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(R127i.z)) + intBitsToFloat(PV1i.w))); +R127i.z = floatBitsToInt(floor(intBitsToFloat(R3i.x))); +PS0i = R127i.z; +// 11 +R125i.x = floatBitsToInt(dot(vec4(intBitsToFloat(R5i.x),intBitsToFloat(R5i.y),intBitsToFloat(PV0i.z),-0.0),vec4(intBitsToFloat(R10i.y),intBitsToFloat(R2i.w),intBitsToFloat(R9i.z),0.0))); +PV1i.x = R125i.x; +PV1i.y = R125i.x; +PV1i.z = R125i.x; +PV1i.w = R125i.x; +PS1i = floatBitsToInt(-(intBitsToFloat(PV0i.y)) + intBitsToFloat(PV0i.x)); +// 12 +PV0i.x = floatBitsToInt(floor(intBitsToFloat(R3i.y))); +PV0i.y = floatBitsToInt(-(intBitsToFloat(R127i.w)) + intBitsToFloat(R126i.x)); +PV0i.z = floatBitsToInt(intBitsToFloat(R127i.w) + intBitsToFloat(PS1i)); +PV0i.w = floatBitsToInt(intBitsToFloat(R3i.x) + -(intBitsToFloat(R127i.z))); +R126i.x = floatBitsToInt(intBitsToFloat(R127i.z) + -(0.5)); +PS0i = R126i.x; +// 13 +backupReg0i = R127i.y; +PV1i.x = floatBitsToInt(intBitsToFloat(R3i.y) + -(intBitsToFloat(PV0i.x))); +R127i.y = floatBitsToInt(intBitsToFloat(PV0i.x) + -(0.5)); +PV1i.z = floatBitsToInt(intBitsToFloat(PV0i.z) + intBitsToFloat(PV0i.w)); +PV1i.z = clampFI32(PV1i.z); +PV1i.w = floatBitsToInt(intBitsToFloat(backupReg0i) + intBitsToFloat(PV0i.y)); +PS1i = R5i.x; +PS1i = floatBitsToInt(intBitsToFloat(PS1i) * 2.0); +// 14 +PV0i.x = R5i.y; +PV0i.x = floatBitsToInt(intBitsToFloat(PV0i.x) * 2.0); +PV0i.y = floatBitsToInt(intBitsToFloat(PV1i.w) + intBitsToFloat(PV1i.x)); +PV0i.y = clampFI32(PV0i.y); +PV0i.z = floatBitsToInt(intBitsToFloat(PV1i.z) + intBitsToFloat(R126i.x)); +PV0i.w = R6i.z; +PV0i.w = floatBitsToInt(intBitsToFloat(PV0i.w) * 2.0); +R126i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R125i.x)),intBitsToFloat(PS1i)) + intBitsToFloat(R10i.y))); +PS0i = R126i.x; +// 15 +backupReg0i = R127i.y; +R2i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.z), intBitsToFloat(PV0i.z))); +R127i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R125i.x)),intBitsToFloat(PV0i.x)) + intBitsToFloat(R2i.w))); +R127i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R125i.x)),intBitsToFloat(PV0i.w)) + intBitsToFloat(R9i.z))); +PV1i.w = floatBitsToInt(intBitsToFloat(PV0i.y) + intBitsToFloat(backupReg0i)); +R2i.z = floatBitsToInt(roundEven(0.0)); +PS1i = R2i.z; +// 16 +R9i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.x),intBitsToFloat(R8i.x)) + intBitsToFloat(R1i.z))); +R2i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.w), intBitsToFloat(PV1i.w))); +R5i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.y),intBitsToFloat(R8i.y)) + intBitsToFloat(R1i.w))); +R0i.w = floatBitsToInt((-(intBitsToFloat(R7i.w)) * intBitsToFloat(0x40400000) + intBitsToFloat(0x40400000))); +R3i.x = floatBitsToInt(intBitsToFloat(R10i.y) + intBitsToFloat(uf_remappedPS[3].x)); +PS0i = R3i.x; +// 17 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(uf_remappedPS[4].x),intBitsToFloat(uf_remappedPS[4].y),intBitsToFloat(uf_remappedPS[4].z),-0.0),vec4(intBitsToFloat(R126i.x),intBitsToFloat(R127i.y),intBitsToFloat(R127i.z),0.0))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R127i.w = floatBitsToInt(intBitsToFloat(R4i.w) * intBitsToFloat(0x437f0000)); +PS1i = R127i.w; +// 18 +R124i.x = floatBitsToInt(dot(vec4(intBitsToFloat(uf_remappedPS[5].x),intBitsToFloat(uf_remappedPS[5].y),intBitsToFloat(uf_remappedPS[5].z),-0.0),vec4(intBitsToFloat(R126i.x),intBitsToFloat(R127i.y),intBitsToFloat(R127i.z),0.0))); +PV0i.x = R124i.x; +PV0i.y = R124i.x; +PV0i.z = R124i.x; +PV0i.w = R124i.x; +R124i.z = floatBitsToInt(-(intBitsToFloat(PV1i.x))); +PS0i = R124i.z; +// 19 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(uf_remappedPS[6].x),intBitsToFloat(uf_remappedPS[6].y),intBitsToFloat(uf_remappedPS[6].z),-0.0),vec4(intBitsToFloat(R126i.x),intBitsToFloat(R127i.y),intBitsToFloat(R127i.z),0.0))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R124i.y = tempi.x; +R127i.z = floatBitsToInt(max(-(intBitsToFloat(R125i.x)), 0.0)); +PS1i = R127i.z; +// 20 +backupReg0i = R124i.x; +backupReg0i = R124i.x; +backupReg1i = R124i.z; +backupReg1i = R124i.z; +redcCUBE(vec4(intBitsToFloat(R124i.z),intBitsToFloat(R124i.z),intBitsToFloat(backupReg0i),intBitsToFloat(PV1i.x)),vec4(intBitsToFloat(PV1i.x),intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i),intBitsToFloat(backupReg1i)),cubeMapSTM,cubeMapFaceId); +R124i.x = floatBitsToInt(cubeMapSTM.x); +R124i.y = floatBitsToInt(cubeMapSTM.y); +R124i.z = floatBitsToInt(cubeMapSTM.z); +R124i.w = cubeMapFaceId; +PV0i.x = R124i.x; +PV0i.y = R124i.y; +PV0i.z = R124i.z; +PV0i.w = R124i.w; +R1i.y = floatBitsToInt(intBitsToFloat(R2i.w) + intBitsToFloat(uf_remappedPS[3].y)); +PS0i = R1i.y; +// 21 +R6i.x = floatBitsToInt(intBitsToFloat(R9i.z) + intBitsToFloat(uf_remappedPS[3].z)); +R3i.y = floatBitsToInt(-(intBitsToFloat(R7i.w)) + 1.0); +PV1i.y = R3i.y; +R0i.z = PV0i.w; +R3i.w = 0; +PS1i = floatBitsToInt(1.0 / abs(intBitsToFloat(PV0i.z))); +// 22 +R1i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R7i.w)),intBitsToFloat(PV1i.y)) + intBitsToFloat(PV1i.y))); +R6i.y = floatBitsToInt(min(intBitsToFloat(R127i.z), 1.0)); +R1i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.x),intBitsToFloat(PS1i)) + 1.5)); +R1i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.y),intBitsToFloat(PS1i)) + 1.5)); +R3i.z = int(intBitsToFloat(R127i.w)); +PS0i = R3i.z; +// 0 +R0i.x = R1i.w; +R0i.y = R1i.z; +R127i.z = floatBitsToInt(intBitsToFloat(R7i.w) * intBitsToFloat(0x437f0000)); +R127i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[3].x), intBitsToFloat(uf_remappedPS[7].w))); +R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[3].y), intBitsToFloat(uf_remappedPS[7].w))); +PS0i = R127i.y; +// 1 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R3i.x),intBitsToFloat(R1i.y),intBitsToFloat(R6i.x),-0.0),vec4(intBitsToFloat(R3i.x),intBitsToFloat(R1i.y),intBitsToFloat(R6i.x),0.0))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R125i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[3].z), intBitsToFloat(uf_remappedPS[7].w))); +PS1i = R125i.z; +// 2 +PV0i.x = floatBitsToInt(intBitsToFloat(R1i.x) + intBitsToFloat(0x3c23d70a)); +PV0i.x = clampFI32(PV0i.x); +R124i.y = R3i.z & 0x000000fc; +R124i.z = floatBitsToInt(-(intBitsToFloat(R6i.y)) + 1.0); +R124i.w = 0; +tempResultf = 1.0 / sqrt(intBitsToFloat(PV1i.x)); +PS0i = floatBitsToInt(tempResultf); +// 3 +PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.y), intBitsToFloat(PS0i))); +PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R3i.x), intBitsToFloat(PS0i))); +R1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(PV0i.x))); +PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R6i.x), intBitsToFloat(PS0i))); +R126i.y = int(intBitsToFloat(R127i.z)); +PS1i = R126i.y; +// 4 +backupReg0i = R124i.y; +R124i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.y), intBitsToFloat(uf_remappedPS[7].w))); +PV0i.x = R124i.x; +R124i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(uf_remappedPS[7].w))); +PV0i.y = R124i.y; +R127i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(uf_remappedPS[7].w))); +PV0i.z = R127i.z; +R126i.w = floatBitsToInt((intBitsToFloat(R3i.y) * 0.5 + 0.5)); +R126i.x = floatBitsToInt(float(backupReg0i)); +PS0i = R126i.x; +// 5 +backupReg0i = R124i.z; +backupReg0i = R124i.z; +tempi.x = floatBitsToInt(dot(vec4(-(intBitsToFloat(R127i.w)),-(intBitsToFloat(R127i.y)),-(intBitsToFloat(R125i.z)),-0.0),vec4(-(intBitsToFloat(PV0i.x)),-(intBitsToFloat(PV0i.y)),-(intBitsToFloat(PV0i.z)),0.0))); +tempi.x = clampFI32(tempi.x); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R1i.w = tempi.x; +R124i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R6i.y)),intBitsToFloat(backupReg0i)) + intBitsToFloat(backupReg0i))); +PS1i = R124i.z; +// 6 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R5i.x),intBitsToFloat(R5i.y),intBitsToFloat(R6i.z),intBitsToFloat(R6i.z)),vec4(-(intBitsToFloat(R124i.x)),-(intBitsToFloat(R124i.y)),-(intBitsToFloat(R127i.z)),-(intBitsToFloat(R3i.w))))); +tempi.x = clampFI32(tempi.x); +PV0i.x = tempi.x; +PV0i.y = tempi.x; +PV0i.z = tempi.x; +PV0i.w = tempi.x; +R125i.w = floatBitsToInt(-(intBitsToFloat(PV1i.x)) + 1.0); +PS0i = R125i.w; +// 7 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R5i.x),intBitsToFloat(R5i.y),intBitsToFloat(R6i.z),intBitsToFloat(R6i.z)),vec4(-(intBitsToFloat(R127i.w)),-(intBitsToFloat(R127i.y)),-(intBitsToFloat(R125i.z)),-(intBitsToFloat(R124i.w))))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R127i.w = tempi.x; +PS1i = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(PV0i.x))); +// 8 +PV0i.x = R126i.y & int(1); +R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.w), intBitsToFloat(R126i.w))); +R126i.y = floatBitsToInt(intBitsToFloat(R126i.y) / 2.0); +R125i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R1i.z),intBitsToFloat(PS1i)) + -(intBitsToFloat(PS1i)))); +R6i.w = floatBitsToInt(intBitsToFloat(R126i.x) * intBitsToFloat(0x3b820821)); +R127i.z = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R1i.w)),intBitsToFloat(R125i.w)) + intBitsToFloat(R125i.w))); +PS0i = R127i.z; +// 9 +R126i.x = R127i.w; +R126i.x = floatBitsToInt(intBitsToFloat(R126i.x) * 2.0); +R123i.y = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R6i.y)),intBitsToFloat(R124i.z)) + intBitsToFloat(R124i.z))); +PV1i.y = R123i.y; +R126i.z = ((PV0i.x == 0)?(0):(0x3f800000)); +R126i.w = floatBitsToInt((-(intBitsToFloat(R7i.w)) * intBitsToFloat(0x40400000) + 4.0)); +R7i.x = R127i.w; +R7i.x = clampFI32(R7i.x); +PS1i = R7i.x; +// 10 +R124i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.z), intBitsToFloat(PV1i.y))); +PV0i.y = floatBitsToInt(intBitsToFloat(R125i.z) + 1.0); +R124i.z = floatBitsToInt((-(intBitsToFloat(R6i.w)) * intBitsToFloat(0x3d23d70a) + intBitsToFloat(0x3d23d70a))); +R125i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.y),-(intBitsToFloat(R126i.y))) + intBitsToFloat(R6i.y))); +R122i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R1i.w)),intBitsToFloat(R127i.z)) + intBitsToFloat(R127i.z))); +PS0i = R122i.x; +// 11 +backupReg0i = R126i.x; +R126i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.z),intBitsToFloat(PV0i.y)) + intBitsToFloat(PV0i.y))); +R124i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.z), intBitsToFloat(PS0i))); +R7i.z = floatBitsToInt((intBitsToFloat(R6i.w) * 0.25 + 0.25)); +PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R127i.w), intBitsToFloat(backupReg0i))); +PS1i = floatBitsToInt(1.0 / intBitsToFloat(R126i.w)); +// 12 +backupReg0i = R124i.x; +R124i.x = floatBitsToInt(intBitsToFloat(R126i.y) + intBitsToFloat(R125i.w)); +R125i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(backupReg0i), intBitsToFloat(PS1i))); +R10i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.z), intBitsToFloat(PV1i.w))); +R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R7i.x),-(intBitsToFloat(R126i.y))) + intBitsToFloat(R7i.x))); +PV0i.w = R123i.w; +R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.y),intBitsToFloat(R6i.w)) + intBitsToFloat(R124i.z))); +PS0i = R127i.y; +// 13 +backupReg0i = R124i.z; +backupReg1i = R126i.y; +backupReg2i = R126i.x; +R126i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.z),intBitsToFloat(R6i.w)) + intBitsToFloat(R124i.z))); +PV1i.x = R126i.x; +R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[7].w), intBitsToFloat(uf_remappedPS[7].w))); +R124i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.x),intBitsToFloat(R6i.w)) + intBitsToFloat(backupReg0i))); +PV1i.z = R124i.z; +R125i.w = floatBitsToInt(intBitsToFloat(backupReg1i) + intBitsToFloat(PV0i.w)); +PS1i = floatBitsToInt(1.0 / intBitsToFloat(backupReg2i)); +// 14 +backupReg0i = R124i.x; +R124i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.z),-(intBitsToFloat(R124i.y))) + intBitsToFloat(PV1i.z))); +R6i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R1i.z), intBitsToFloat(PS1i))); +R126i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.x),-(intBitsToFloat(R124i.y))) + intBitsToFloat(PV1i.x))); +R127i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R127i.y),-(intBitsToFloat(R124i.y))) + intBitsToFloat(R127i.y))); +PS0i = floatBitsToInt(1.0 / intBitsToFloat(backupReg0i)); +// 15 +backupReg0i = R126i.x; +backupReg0i = R126i.x; +backupReg1i = R127i.y; +backupReg1i = R127i.y; +backupReg2i = R125i.w; +R126i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),-(intBitsToFloat(R125i.y))) + intBitsToFloat(backupReg0i))); +R127i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg1i),-(intBitsToFloat(R125i.y))) + intBitsToFloat(backupReg1i))); +R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R124i.z),-(intBitsToFloat(R125i.y))) + intBitsToFloat(R124i.z))); +PV1i.z = R123i.z; +R125i.w = floatBitsToInt(0.25 * intBitsToFloat(PS0i)); +R124i.z = floatBitsToInt(1.0 / intBitsToFloat(backupReg2i)); +PS1i = R124i.z; +// 16 +backupReg0i = R126i.z; +PV0i.x = floatBitsToInt(intBitsToFloat(R124i.y) + intBitsToFloat(R127i.w)); +PV0i.y = floatBitsToInt(intBitsToFloat(R124i.y) + intBitsToFloat(R124i.x)); +R126i.z = floatBitsToInt(intBitsToFloat(R124i.y) + intBitsToFloat(backupReg0i)); +R7i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.y), intBitsToFloat(R126i.y))); +R1i.w = floatBitsToInt(intBitsToFloat(R125i.y) + intBitsToFloat(PV1i.z)); +PS0i = R1i.w; +// 17 +R5i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.z), intBitsToFloat(R6i.y))); +R6i.y = floatBitsToInt(intBitsToFloat(R125i.y) + intBitsToFloat(R126i.x)); +R1i.z = floatBitsToInt(intBitsToFloat(R125i.y) + intBitsToFloat(R127i.y)); +PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.y), intBitsToFloat(R125i.w))); +R124i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(R125i.w))); +PS1i = R124i.z; +// 18 +R6i.x = floatBitsToInt((intBitsToFloat(R4i.x) * intBitsToFloat(0x3f895ef0) + intBitsToFloat(0xba0a8ec8))); +R6i.x = clampFI32(R6i.x); +PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R126i.z), intBitsToFloat(R125i.w))); +R12i.z = floatBitsToInt((intBitsToFloat(R4i.z) * intBitsToFloat(0x3f895ef0) + intBitsToFloat(0xba0a8ec8))); +R12i.z = clampFI32(R12i.z); +R5i.w = floatBitsToInt((intBitsToFloat(R4i.y) * intBitsToFloat(0x3f895ef0) + intBitsToFloat(0xba0a8ec8))); +R5i.w = clampFI32(R5i.w); +R4i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[8].x), intBitsToFloat(PV1i.w))); +PS0i = R4i.x; +// 19 +PV1i.x = R3i.z & int(1); +R3i.y = R2i.y; +R6i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[8].z), intBitsToFloat(PV0i.y))); +R3i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[8].y), intBitsToFloat(R124i.z))); +R3i.z = floatBitsToInt(roundEven(1.0)); +PS1i = R3i.z; +// 20 +R3i.x = R2i.x; +R4i.z = floatBitsToInt(float(PV1i.x)); +PS0i = R4i.z; +R4i.w = floatBitsToInt(texture(textureUnitPS4, intBitsToFloat(R8i.xy)).x); +R13i.xyz = floatBitsToInt(texture(textureUnitPS11, intBitsToFloat(R2i.xy)).xyz); +R11i.xyz = floatBitsToInt(texture(textureUnitPS10, vec3(intBitsToFloat(R2i.x),intBitsToFloat(R2i.y),intBitsToFloat(R2i.z))).xyz); +R3i.xyz = floatBitsToInt(texture(textureUnitPS10, vec3(intBitsToFloat(R3i.x),intBitsToFloat(R3i.y),intBitsToFloat(R3i.z))).xyz); +R0i.xyz = floatBitsToInt(textureLod(textureUnitPS8, vec4(redcCUBEReverse(intBitsToFloat(R0i.xy),R0i.z),cubeMapArrayIndex8),intBitsToFloat(R0i.w)).xyz); +R2i.xyz = floatBitsToInt(texture(textureUnitPS13, intBitsToFloat(R2i.xy)).xyz); +// 0 +R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R13i.y),-(intBitsToFloat(R7i.z))) + intBitsToFloat(R13i.y))); +PV0i.x = R123i.x; +R123i.y = floatBitsToInt((intBitsToFloat(R13i.y) * 0.5 + 0.5)); +PV0i.y = R123i.y; +R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[0].x),intBitsToFloat(R4i.w)) + intBitsToFloat(uf_remappedPS[1].x))); +PV0i.z = R123i.z; +R125i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R13i.x), intBitsToFloat(R7i.x))); +R124i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R13i.z), intBitsToFloat(R13i.z))); +PS0i = R124i.x; +// 1 +PV1i.x = floatBitsToInt(-(intBitsToFloat(PV0i.z))); +PV1i.y = floatBitsToInt(intBitsToFloat(R7i.x) + intBitsToFloat(PV0i.y)); +PV1i.y = clampFI32(PV1i.y); +PV1i.z = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(PV0i.z)), intBitsToFloat(R5i.z))); +PV1i.w = floatBitsToInt(mul_nonIEEE(-(intBitsToFloat(PV0i.z)), intBitsToFloat(R9i.x))); +R125i.x = floatBitsToInt(intBitsToFloat(R7i.z) + intBitsToFloat(PV0i.x)); +PS1i = R125i.x; +// 2 +R126i.x = floatBitsToInt(-(intBitsToFloat(R10i.x)) + intBitsToFloat(PV1i.w)); +PV0i.x = R126i.x; +R127i.y = floatBitsToInt(-(intBitsToFloat(R9i.y)) + intBitsToFloat(PV1i.z)); +PV0i.y = R127i.y; +PV0i.z = floatBitsToInt(-(intBitsToFloat(R8i.z)) + intBitsToFloat(PV1i.x)); +R4i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.w), intBitsToFloat(PV1i.y))); +R125i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[9].x), intBitsToFloat(R125i.w))); +PS0i = R125i.y; +// 3 +tempi.x = floatBitsToInt(dot(vec4(intBitsToFloat(R10i.y),intBitsToFloat(R2i.w),intBitsToFloat(R9i.z),-0.0),vec4(intBitsToFloat(PV0i.x),intBitsToFloat(PV0i.y),intBitsToFloat(PV0i.z),0.0))); +PV1i.x = tempi.x; +PV1i.y = tempi.x; +PV1i.z = tempi.x; +PV1i.w = tempi.x; +R124i.y = tempi.x; +R126i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.x), intBitsToFloat(R1i.w))); +PS1i = R126i.y; +// 4 +backupReg0i = R127i.y; +R123i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R10i.y)),intBitsToFloat(PV1i.x)) + intBitsToFloat(R126i.x))); +PV0i.x = R123i.x; +R127i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.x), intBitsToFloat(R1i.z))); +R125i.w = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R2i.w)),intBitsToFloat(PV1i.x)) + intBitsToFloat(backupReg0i))); +R1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R4i.z), intBitsToFloat(R124i.x))); +PS0i = R1i.w; +// 5 +backupReg0i = R0i.x; +backupReg1i = R126i.y; +PV1i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.y), intBitsToFloat(R7i.w))); +R126i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(backupReg0i),intBitsToFloat(backupReg1i)) + intBitsToFloat(R3i.x))); +PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(PV0i.x))); +PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R125i.x), intBitsToFloat(R6i.y))); +// 6 +PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.x), intBitsToFloat(R5i.x))); +R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R125i.w),intBitsToFloat(R125i.w)) + intBitsToFloat(PV1i.z))); +PV0i.y = R123i.y; +R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R0i.y),intBitsToFloat(R127i.y)) + intBitsToFloat(R3i.y))); +PV0i.z = R123i.z; +R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R0i.z),intBitsToFloat(PV1i.w)) + intBitsToFloat(R3i.z))); +PV0i.w = R123i.w; +// 7 +R0i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R6i.z),intBitsToFloat(PV0i.x)) + intBitsToFloat(PV0i.w))); +R6i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R3i.w),intBitsToFloat(PV0i.x)) + intBitsToFloat(PV0i.z))); +R3i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R4i.x),intBitsToFloat(PV0i.x)) + intBitsToFloat(R126i.y))); +tempResultf = 1.0 / sqrt(intBitsToFloat(PV0i.y)); +PS1i = floatBitsToInt(tempResultf); +// 8 +PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(R124i.y), intBitsToFloat(PS1i))); +// 9 +PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(uf_remappedPS[2].z), intBitsToFloat(PV0i.w))); +// 10 +PV0i.y = floatBitsToInt(intBitsToFloat(PV1i.z) * intBitsToFloat(0x3ced9168)); +PV0i.y = clampFI32(PV0i.y); +// 11 +R123i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.y),intBitsToFloat(R10i.z)) + 1.0)); +PV1i.y = R123i.y; +// 12 +R4i.x = floatBitsToInt((mul_nonIEEE(-(intBitsToFloat(R6i.w)),intBitsToFloat(PV1i.y)) + intBitsToFloat(PV1i.y))); +// 0 +R123i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[8].x),intBitsToFloat(R4i.w)) + intBitsToFloat(R11i.x))); +PV0i.x = R123i.x; +R123i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[8].z),intBitsToFloat(R4i.w)) + intBitsToFloat(R11i.z))); +PV0i.z = R123i.z; +R123i.w = floatBitsToInt((mul_nonIEEE(intBitsToFloat(uf_remappedPS[8].y),intBitsToFloat(R4i.w)) + intBitsToFloat(R11i.y))); +PV0i.w = R123i.w; +// 1 +PV1i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.z), intBitsToFloat(R4i.x))); +PV1i.z = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.w), intBitsToFloat(R4i.x))); +PV1i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV0i.x), intBitsToFloat(R4i.x))); +// 2 +PV0i.x = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.z), intBitsToFloat(R5i.w))); +PV0i.y = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.w), intBitsToFloat(R6i.x))); +PV0i.w = floatBitsToInt(mul_nonIEEE(intBitsToFloat(PV1i.y), intBitsToFloat(R12i.z))); +// 3 +R123i.x = floatBitsToInt((intBitsToFloat(PV0i.w) * intBitsToFloat(0x3f6e896b) + intBitsToFloat(0x3a011b1e))); +PV1i.x = R123i.x; +R123i.y = floatBitsToInt((intBitsToFloat(PV0i.x) * intBitsToFloat(0x3f6e896b) + intBitsToFloat(0x3a011b1e))); +PV1i.y = R123i.y; +R123i.z = floatBitsToInt((intBitsToFloat(PV0i.y) * intBitsToFloat(0x3f6e896b) + intBitsToFloat(0x3a011b1e))); +PV1i.z = R123i.z; +// 4 +backupReg0i = R0i.y; +PV0i.y = floatBitsToInt(intBitsToFloat(backupReg0i) + intBitsToFloat(PV1i.x)); +PV0i.z = floatBitsToInt(intBitsToFloat(R6i.z) + intBitsToFloat(PV1i.y)); +PV0i.w = floatBitsToInt(intBitsToFloat(R3i.w) + intBitsToFloat(PV1i.z)); +// 5 +R1i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R13i.z),intBitsToFloat(PV0i.w)) + intBitsToFloat(R2i.x))); +R1i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R13i.z),intBitsToFloat(PV0i.z)) + intBitsToFloat(R2i.y))); +R1i.z = floatBitsToInt((mul_nonIEEE(intBitsToFloat(R13i.z),intBitsToFloat(PV0i.y)) + intBitsToFloat(R2i.z))); +// export +passPixelColor0 = vec4(intBitsToFloat(R1i.x), intBitsToFloat(R1i.y), intBitsToFloat(R1i.z), intBitsToFloat(R1i.w)); +float luma = dot(passPixelColor0.rgb, vec3(0.2126, 0.7152, 0.0722)); +#if (ENABLE_COLOR_FADE == 1) +float depth = texture(textureUnitPS4, passParameterSem0.xy).x; +float factor = smoothstep(0.0005, 0.00075, depth); +passPixelColor0.rgb = mix(passPixelColor0.rgb, vec3(luma), factor); +#else +passPixelColor0.rgb = vec3(luma); +#endif +} diff --git a/Modifications/BreathOfTheWild_Monochromia/readMe.txt b/Modifications/BreathOfTheWild_Monochromia/readMe.txt new file mode 100644 index 00000000..e2dc7735 --- /dev/null +++ b/Modifications/BreathOfTheWild_Monochromia/readMe.txt @@ -0,0 +1,48 @@ +Monochromia - Sin City inspired Mod +This mod makes almost everything in the game black and white. Only the bright lights and other special effects remain with full color. + +!!! Important !!! +Delete/rename the a5b3a5e5ab2938bc file from your resolution pack, otherwise it gets overriden and the clouds will appear coloured. +The AA fix is implemented in this pack as well. Remember to restore the file in your resolution pack when not using this mod. +This mod is not compatible with Clarity/Contrasty, as this mod uses custom postprocessing. Delete bd8bba59e2149449 from this pack if you wish to use those. + +The full color can be restored on certain elements as well, such as characters or trees/plants. +You can do that by renaming/deleting the corresponding shader files (effectively disabling the overide) listed below. +Some shaders also have a color fade effect implemented. This effect keeps full color nearby, and fades to black and white with distance. +This can be enabled by setting ENABLE_COLOR_FADE to 1. Only the first 7 shaders in the list have this flag. + + +Listed below are the customizable elements, with the corresponding shader files below: + +Shrine interiors +49ce4bf04a654e80 + +Terrain and buildings +eabf1e8268c0acf2, bdc96b6928e88c78 + +Trees and plants +81bbc347eb4b6dbc, 3c49f88069390494 + +Water +bff17056bfac28dd, de2bafbeb363afb3 + +Link and other characters +dee484f174698fba + +Link +1cf7d93fabd9e8e3, a2986482c342660f, 10a2a18d2a9a02d8, 8daf3642d5942233 + +Link's and other human character's eyes +4c324d20f5b6de3b + +Clouds and other effects +a5b3a5e5ab2938bc + +Simple Levels + Curves + LumaSharpening +bd8bba59e2149449 +This is a postprocessing shader, a preset I created that is tuned for black/white. You can adjust the some values, or you can replace it entirely with the one from Clarity + + +Shaders dumped from Cemu 1.11.0b and BotW 1.3.1 +Pack made by Kiri +Have fun with it \ No newline at end of file diff --git a/Modifications/BreathOfTheWild_Monochromia/rules.txt b/Modifications/BreathOfTheWild_Monochromia/rules.txt new file mode 100644 index 00000000..89f94301 --- /dev/null +++ b/Modifications/BreathOfTheWild_Monochromia/rules.txt @@ -0,0 +1,9 @@ +[Definition] +titleIds = 00050000101C9300,00050000101C9400,00050000101C9500 +name = "The Legend of Zelda: Breath of the Wild - Monochromia - Sin City inspired Mod" +version = 2 + +# Shaders dumped from Cemu 1.11.0b and BotW 1.3.1 +# Pack made by Kiri +# Check the readMe file for info on how to customize +# Have fun with it \ No newline at end of file From a5e693e25b3ce3c255b89e4b9fc7126fdfe74d27 Mon Sep 17 00:00:00 2001 From: Jamie Date: Mon, 6 Nov 2017 18:30:52 -0800 Subject: [PATCH 10/34] ClarityGFX Just another version of Clarity with Diffrent color controls. --- ...59e2149449_00000000000003c9_ps.txt.avgluma | 310 ++++++++++++++++++ 1 file changed, 310 insertions(+) create mode 100644 Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.txt.avgluma diff --git a/Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.txt.avgluma b/Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.txt.avgluma new file mode 100644 index 00000000..1f1847df --- /dev/null +++ b/Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.txt.avgluma @@ -0,0 +1,310 @@ +#version 420 +#extension GL_ARB_texture_gather : enable + +// shader bd8bba59e2149449 + +// Possible problems +// Being below 1.3.0 will give you double-vision with recent graphic packs. Update to 1.3.0 or above. +// If you're experiencing any issues (due to having the previous Clarity shaders installed), please remove and redownload all of the BotW packs. + +// Credit to NAVras for merging to a better shader. +// Credit to getdls for adding exposure & Original Contrasty. + +// Clarity GFX +// Credit to Jamie for main coding. +// Credit to Kiri coding & Reshade logic. +// Credit to Serfrost for preset values. +// Original shader dumped using cemu 1.10.0f, BotW 1.3.1 + +// Changelog v0.0 -- Special Very Special Edition. + +//########################################################## + +//Control Pannel +float bloomFactor = 0.4; //Default is 1.0 Affacts Games bloom +float exposure = 2.0; +float brt = 0.0; //Default is 0.0 Now much brightness to add to the RGB color. +float con = 0.75; // [0.0 ~ 1.5] [0.5 Default] Contrast Adjustment - or + values work +float sat = 0.50; // [0.1 ~ 1.5] [0.0 Default] Color Saturation Adjustment. - or + values work +float gamma = 0.60; // [0.0 ~ 2.5] [1.0 Default] Gamma Adjustment - or + values work +float defog = 0.0; // [0.0 ~ 1.0] [0.0 Default] How much of the far distance fog to "remove." + +//Luma Values +float AvgLumR = 0.0; // [0.0 ~ 1.5] [0.0 Default] Use very small increments, as it changes RGB values. +float AvgLumG = -0.003; // [0.0 ~ 1.5] [0.0 Default] Use very small increments, as it changes RGB values. +float AvgLumB = 0.0; // [0.0 ~ 1.5] [0.0 Default] Use very small increments, as it changes RGB values. + +//LumaShapening +#define sharp_strength 0.25 //[0.10 to 3.00] Strength of the sharpening Default is 0.65 +#define sharp_clamp 0.085 //[0.000 to 1.000] Limits maximum amount of sharpening a pixel recieves - Default is 0.035 +//Advanced sharpening settings +#define offset_bias 1.0 //[0.0 to 6.0] Offset bias adjusts the radius of the sampling pattern. + +//Fake High Dynamic Range. +#define HDRPower 1.20 // 0.0 to 8.0 "Raising this seems to make the effect stronger and also darker , Default 1.30." +#define radius1 0.793 // 0.0 to 8.0 "Default 0.793 , will affect FX." +#define radius2 0.87 // 0.0 to 8.0 "Default 0.87 , will affect FX." +//----------------------------------------------------------- + +//End of adjustable values + +//########################################################### + +//Do not edit under this line. +const vec3 FogColor = vec3(0.0, 0.0, 0.0); //defog Color"; + +uniform ivec4 uf_remappedPS[1]; +layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0xf46ac800 res 320x180x1 dim 1 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x5) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0xf5c7b800 res 1280x720x1 dim 1 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 2 2 2 border: 1 +layout(location = 0) in vec4 passParameterSem0; +layout(location = 0) out vec4 passPixelColor0; +uniform vec2 uf_fragCoordScale; +int clampFI32(int v) +{ +if( v == 0x7FFFFFFF ) + return floatBitsToInt(1.0); +else if( v == 0xFFFFFFFF ) + return floatBitsToInt(0.0); +return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); +} +float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } + +//----------------------------------------------------------- +// Based on CeeJay.dk's original GLSL/HLSL. +//----------------------------------------------------------- + +vec3 ContrastSaturationBrightness( vec3 color, float brt, float sat, float con) { + + //Luminace Coefficients for brightness of image + vec3 LuminaceCoeff = vec3(0.2125,0.7154,0.0721); + + //Brigntess calculations + vec3 AvgLumin = vec3(AvgLumR, AvgLumG, AvgLumB); + vec3 brtColor = color * brt; + float intensityf = dot(brtColor, LuminaceCoeff); + vec3 intensity = vec3(intensityf, intensityf, intensityf); + + //Saturation calculation + vec3 satColor = mix(intensity, brtColor, sat); + + //Contrast calculations + vec3 conColor = mix(AvgLumin, satColor, con); + + return color; +} + +vec3 claritytonemap(vec3 color) { + color = max(vec3(0.), color - vec3(0.004)); + color = (color * (6.2 * color + .5)) / (color * (6.2 * color + 1.7) + 0.06); + float luma = dot(color, vec3(0.2126, 0.7152, 0.0722)); + float toneMappedLuma = luma / (1. + luma); + color *= toneMappedLuma / luma; + color *= exposure/(1. + color / exposure); + return color; +} + +//LumaShapening + +#define px (1.0/1280.0*uf_fragCoordScale.x) +#define py (1.0/720.0*uf_fragCoordScale.y) +#define CoefLuma vec3(0.2126, 0.7152, 0.0722) + +float lumasharping(sampler2D tex, vec2 pos){ + vec4 colorInput = texture(tex, pos); + + vec3 ori = colorInput.rgb; + + // -- Combining the strength and luma multipliers -- + vec3 sharp_strength_luma = (CoefLuma * sharp_strength); + + // -- Gaussian filter -- + // [ .25, .50, .25] [ 1 , 2 , 1 ] + // [ .50, 1, .50] = [ 2 , 4 , 2 ] + // [ .25, .50, .25] [ 1 , 2 , 1 ] + + + //float px = 1.0/tex_size[0]; + //float py = 1.0/tex_size[1]; + + vec3 blur_ori = texture(tex, pos + vec2(px,-py) * 0.5 * offset_bias).rgb; // South East + blur_ori += texture(tex, pos + vec2(-px,-py) * 0.5 * offset_bias).rgb; // South West + blur_ori += texture(tex, pos + vec2(px,py) * 0.5 * offset_bias).rgb; // North East + blur_ori += texture(tex, pos + vec2(-px,py) * 0.5 * offset_bias).rgb; // North West + + blur_ori *= 0.25; // ( /= 4) Divide by the number of texture fetches + + // -- Calculate the sharpening -- + vec3 sharp = ori - blur_ori; //Subtracting the blurred image from the original image + + // -- Adjust strength of the sharpening and clamp it-- + vec4 sharp_strength_luma_clamp = vec4(sharp_strength_luma * (0.5 / sharp_clamp),0.5); //Roll part of the clamp into the dot + + float sharp_luma = clamp((dot(vec4(sharp,1.0), sharp_strength_luma_clamp)), 0.0,1.0 ); //Calculate the luma, adjust the strength, scale up and clamp + sharp_luma = (sharp_clamp * 2.0) * sharp_luma - sharp_clamp; //scale down + + + // -- Combining the values to get the final sharpened pixel -- + + //colorInput.rgb = colorInput.rgb + sharp_luma; // Add the sharpening to the input color. + return sharp_luma; +} + +//Fake High Dynamic Range. + +vec3 HDRPass(sampler2D tex, vec2 pos){ + vec3 color = texture(tex, pos).rgb; + + vec3 bloom_sum1 = texture(tex, pos + vec2(1.5, -1.5) * radius1 * vec2(px,py)).rgb; + bloom_sum1 += texture(tex, pos + vec2(-1.5, -1.5) * radius1 * vec2(px,py)).rgb; + bloom_sum1 += texture(tex, pos + vec2( 1.5, 1.5) * radius1 * vec2(px,py)).rgb; + bloom_sum1 += texture(tex, pos + vec2(-1.5, 1.5) * radius1 * vec2(px,py)).rgb; + bloom_sum1 += texture(tex, pos + vec2( 0.0, -2.5) * radius1 * vec2(px,py)).rgb; + bloom_sum1 += texture(tex, pos + vec2( 0.0, 2.5) * radius1 * vec2(px,py)).rgb; + bloom_sum1 += texture(tex, pos + vec2(-2.5, 0.0) * radius1 * vec2(px,py)).rgb; + bloom_sum1 += texture(tex, pos + vec2( 2.5, 0.0) * radius1 * vec2(px,py)).rgb; + + bloom_sum1 *= 0.005; + + vec3 bloom_sum2 = texture(tex, pos + vec2(1.5, -1.5) * radius2 * vec2(px,py)).rgb; + bloom_sum2 += texture(tex, pos + vec2(-1.5, -1.5) * radius2 * vec2(px,py)).rgb; + bloom_sum2 += texture(tex, pos + vec2( 1.5, 1.5) * radius2 * vec2(px,py)).rgb; + bloom_sum2 += texture(tex, pos + vec2(-1.5, 1.5) * radius2 * vec2(px,py)).rgb; + bloom_sum2 += texture(tex, pos + vec2( 0.0, -2.5) * radius2 * vec2(px,py)).rgb; + bloom_sum2 += texture(tex, pos + vec2( 0.0, 2.5) * radius2 * vec2(px,py)).rgb; + bloom_sum2 += texture(tex, pos + vec2(-2.5, 0.0) * radius2 * vec2(px,py)).rgb; + bloom_sum2 += texture(tex, pos + vec2( 2.5, 0.0) * radius2 * vec2(px,py)).rgb; + + bloom_sum2 *= 0.010; + + float dist = radius2 - radius1; + vec3 HDR = (color + (bloom_sum2 - bloom_sum1)) * dist; + + vec3 blend = HDR + color; + color = pow(abs(blend), vec3(abs(HDRPower))) + HDR; + + return color; +} +void main() +{ +vec4 R0f = vec4(0.0); +vec4 R1f = vec4(0.0); +vec4 R123f = vec4(0.0); +vec4 R125f = vec4(0.0); +vec4 R126f = vec4(0.0); +vec4 R127f = vec4(0.0); +float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; +vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); +float PS0f = 0.0, PS1f = 0.0; +vec4 tempf = vec4(0.0); +float tempResultf; +int tempResulti; +ivec4 ARi = ivec4(0); +bool predResult = true; +vec3 cubeMapSTM; +int cubeMapFaceId; +R0f = passParameterSem0; +R1f.xyz = (texture(textureUnitPS0, R0f.xy).xyz); +R1f.xyz *= bloomFactor; +R0f.xyz = HDRPass(textureUnitPS1, passParameterSem0.xy); +float smask = lumasharping(textureUnitPS1, passParameterSem0.xy); +R0f.xyz += vec3(smask); +// 0 +R126f.x = R1f.x + R0f.x; +PV0f.x = R126f.x; +R127f.y = R1f.y + R0f.y; +PV0f.y = R127f.y; +R126f.z = R1f.z + R0f.z; +PV0f.z = R126f.z; +R125f.w = 1.0; +// 1 +tempf.x = dot(vec4(PV0f.x,PV0f.y,PV0f.z,-0.0),vec4(intBitsToFloat(0x3e99096c),intBitsToFloat(0x3f162b6b),intBitsToFloat(0x3dea4a8c),0.0)); +PV1f.x = tempf.x; +PV1f.y = tempf.x; +PV1f.z = tempf.x; +PV1f.w = tempf.x; +// 2 +R127f.x = -(R127f.y) * intBitsToFloat(0x3fb8aa3b); +PV0f.y = -(PV1f.x) * intBitsToFloat(0x3fb8aa3b); +R127f.z = -(R126f.x) * intBitsToFloat(0x3fb8aa3b); +R127f.w = -(R126f.z) * intBitsToFloat(0x3fb8aa3b); +R126f.w = 1.0 / PV1f.x; +PS0f = R126f.w; +// 3 +PS1f = exp2(PV0f.y); +// 4 +PV0f.x = -(PS1f) + 1.0; +PS0f = exp2(R127f.x); +// 5 +R127f.x = -(PS0f) + 1.0; +R126f.y = mul_nonIEEE(PV0f.x, PV0f.x); +PV1f.z = PV0f.x * R126f.w; +PS1f = exp2(R127f.w); +// 6 +backupReg0f = R126f.x; +backupReg1f = R127f.z; +R126f.x = mul_nonIEEE(backupReg0f, PV1f.z); +PV0f.y = -(PS1f) + 1.0; +R127f.z = mul_nonIEEE(R126f.z, PV1f.z); +PV0f.z = R127f.z; +R127f.w = mul_nonIEEE(R127f.y, PV1f.z); +PV0f.w = R127f.w; +PS0f = exp2(backupReg1f); +// 7 +PV1f.x = R127f.x + -(PV0f.w); +PV1f.y = PV0f.y + -(PV0f.z); +PV1f.w = -(PS0f) + 1.0; +// 8 +backupReg0f = R127f.z; +R127f.x = (mul_nonIEEE(PV1f.x,R126f.y) + R127f.w); +R127f.x = clamp(R127f.x, 0.0, 1.0); +PV0f.x = R127f.x; +PV0f.y = PV1f.w + -(R126f.x); +R127f.z = (mul_nonIEEE(PV1f.y,R126f.y) + backupReg0f); +R127f.z = clamp(R127f.z, 0.0, 1.0); +PV0f.z = R127f.z; +// 9 +backupReg0f = R126f.x; +R126f.x = (mul_nonIEEE(PV0f.y,R126f.y) + backupReg0f); +R126f.x = clamp(R126f.x, 0.0, 1.0); +PV1f.x = R126f.x; +R126f.y = max(PV0f.x, PV0f.z); +PV1f.w = min(PV0f.x, PV0f.z); +// 10 +tempf.x = dot(vec4(PV1f.x,R127f.x,R127f.z,R125f.w),vec4(intBitsToFloat(0x3f2aaaab),intBitsToFloat(0x3f2aaaab),intBitsToFloat(0x3f2aaaab),-(1.0))); +PV0f.x = tempf.x; +PV0f.y = tempf.x; +PV0f.z = tempf.x; +PV0f.w = tempf.x; +R126f.z = min(PV1f.x, PV1f.w); +PS0f = R126f.z; +// 11 +backupReg0f = R127f.x; +backupReg1f = R127f.z; +R127f.x = max(R126f.x, R126f.y); +PV1f.x = R127f.x; +R123f.y = (mul_nonIEEE(-(PV0f.x),PV0f.x) + 1.0); +PV1f.y = R123f.y; +R127f.z = backupReg0f + -(PS0f); +R125f.w = R126f.x + -(PS0f); +R126f.y = backupReg1f + -(PS0f); +PS1f = R126f.y; +// 12 +R126f.x = (mul_nonIEEE(PV1f.y,intBitsToFloat(uf_remappedPS[0].y)) + intBitsToFloat(uf_remappedPS[0].x)); +PV0f.x = R126f.x; +PV0f.y = -(R126f.z) + PV1f.x; +// 13 +R123f.w = (mul_nonIEEE(-(PV0f.x),PV0f.y) + R127f.x); +PV1f.w = R123f.w; +// 14 +R0f.x = (mul_nonIEEE(R126f.x,R125f.w) + PV1f.w); +R0f.y = (mul_nonIEEE(R126f.x,R127f.z) + PV1f.w); +R0f.z = (mul_nonIEEE(R126f.x,R126f.y) + PV1f.w); + +passPixelColor0 = vec4(R0f.x, R0f.y, R0f.z, R0f.w); + +vec3 color = (passPixelColor0.xyz); +color = claritytonemap(color); +color = ContrastSaturationBrightness(color, brt, sat, con); +color = pow(color, vec3(1.0 / gamma)); +passPixelColor0 = vec4(color, R0f.w); +} \ No newline at end of file From 0b6816a490a42ebc39854de46291949bbff13b6d Mon Sep 17 00:00:00 2001 From: Jamie Date: Tue, 7 Nov 2017 00:19:14 -0800 Subject: [PATCH 11/34] Clarity GFX Some Code addtion's , Per request a brighter Preset. --- ...9e2149449_00000000000003c9_ps.txt.brighter | 404 ++++++++++++++++++ 1 file changed, 404 insertions(+) create mode 100644 Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.txt.brighter diff --git a/Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.txt.brighter b/Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.txt.brighter new file mode 100644 index 00000000..b4c0f52b --- /dev/null +++ b/Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.txt.brighter @@ -0,0 +1,404 @@ +#version 420 +#extension GL_ARB_texture_gather : enable + +// shader bd8bba59e2149449 + +// Possible problems +// Being below 1.3.0 will give you double-vision with recent graphic packs. Update to 1.3.0 or above. +// If you're experiencing any issues (due to having the previous Clarity shaders installed), please remove and redownload all of the BotW packs. + +// Credit to NAVras for merging to a better shader. +// Thank you NAVras for debugging and answering silly questions. +// Thank you to Kiri for everything. +// Credit to getdls for adding exposure & Original Contrasty. + +// Clarity GFX +// Credit to Jamie for main coding / Porting SweetFX/Reshade to Cemu. +// Credit to Kiri coding & logic. +// Credit to Serfrost for preset values. +// Credit to Sweet FX Reshade Team for there shaders which this is based on. +// Original shader dumped using cemu 1.10.0f, BotW 1.3.1 +//v0.9 + +//########################################################## + +//ToneMapping +float bloomFactor = 0.30; //Default is 1.0 +float Bleach = 0.0002; //Default is 0.0 +float exposure = 1.20; //Default is 1.0 +float defog = 0.003; //Default is 0.0 +float vibrance = -0.165; //Default is 0.0 + +//Lift Gamma Gain +#define RGB_Lift vec3(1.00, 1.00, 1.00) //[0.0 to 2.0] Adjust shadows for Red, Green and Blue. +#define RGB_Gamma vec3(0.90, 0.90, 0.90) //[0.0 to 2.0] Adjust midtones for Red, Green and Blue +#define RGB_Gain vec3(1.00, 1.00, 1.00) //[0.0 to 2.0] Adjust highlights for Red, Green and Blue +//Note that a value of 1.0 is a neutral setting that leave the color unchanged. + +//Curves +float Contrast = 0.80; //[-1.0, 1.0] The amount of contrast you want + +// Levels controls +const int BlackPoint = 0; //[0, 255] The black point is the new black - literally. Everything darker than this will become completely black +const int WhitePoint = 255; //[0, 255] The new white point. Everything brighter than this becomes completely white + +//LumaSharpening +#define sharp_strength 0.60 //[0.10 to 3.00] Strength of the sharpening Default is 0.65 +#define sharp_clamp 0.060 //[0.000 to 1.000] Limits maximum amount of sharpening a pixel recieves - Default is 0.035 + +//Advanced sharpening settings +#define offset_bias 1.0 //[0.0 to 6.0] Offset bias adjusts the radius of the sampling pattern. + +//Technicolor2 +#define Technicolor2_Red_Strength 0.0 //Default is 0.0 +#define Technicolor2_Green_Strength 0.0 //Default is 0.0 +#define Technicolor2_Blue_Strength 0.0 //Default is 0.0 +#define Technicolor2_Brightness 0.95 //Default is 1.0 +#define Technicolor2_Strength 0.40 //Default is 1.0 +#define Technicolor2_Saturation 0.75 //Default is 1.0 + +//Fake High Dynamic Range. +#define HDRPower 1.20 // 0.0 to 8.0 "Raising this seems to make the effect stronger and also darker , Default 1.30." +#define radius1 0.793 // 0.0 to 8.0 "Default 0.793 , will affect FX." +#define radius2 0.87 // 0.0 to 8.0 "Default 0.87 , will affect FX." + +//########################################################### + +//Do not edit under this line. + +float sat = 0.0; + +const vec3 FogColor = vec3(0.0, 1.03, 0.0); //defog Color"; + +uniform ivec4 uf_remappedPS[1]; +layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0xf46ac800 res 320x180x1 dim 1 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x5) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0xf5c7b800 res 1280x720x1 dim 1 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 2 2 2 border: 1 +layout(location = 0) in vec4 passParameterSem0; +layout(location = 0) out vec4 passPixelColor0; +uniform vec2 uf_fragCoordScale; +int clampFI32(int v) +{ +if( v == 0x7FFFFFFF ) + return floatBitsToInt(1.0); +else if( v == 0xFFFFFFFF ) + return floatBitsToInt(0.0); +return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); +} +float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } + +//ToneMapping + +vec3 TonemapPass(vec3 inputColor) { + vec3 color = inputColor; + color = clamp(color - defog * FogColor * 2.55, 0.0, 1.0); // defog + color *= exposure/(1.0+ color / exposure); + + const vec3 coefLuma = vec3(0.2126, 0.7152, 0.0722); + float lum = dot(coefLuma, color); + + float L = clamp(10.0 * (lum - 0.45), 0.0, 1.0); + vec3 A2 = Bleach * color; + + vec3 result1 = 2.0f * color * lum; + vec3 result2 = 1.0f - 2.0f * (1.0f - lum) * (1.0f - color); + + vec3 newColor = mix(result1, result2, L); + vec3 mixRGB = A2 * newColor; + color += ((1.0f - A2) * mixRGB); + + vec3 middlegray = vec3(dot(color, vec3(1.0 / 3.0))); + vec3 diffcolor = color - middlegray; + color = (color + diffcolor * sat) / (1 + (diffcolor * sat)); // saturation + + return color; +} + +vec3 LevelsPass(vec3 inputColor) { + float black_point_float = BlackPoint / 255.0; + float white_point_float = WhitePoint == BlackPoint ? (255.0 / 0.00025) : (255.0 / (WhitePoint - BlackPoint)); // Avoid division by zero if the white and black point are the same + + vec3 color = inputColor; + color = color * white_point_float - (black_point_float * white_point_float); + + return color; +} + +//Curves + +vec3 CurvesPass(vec3 inputColor) { + vec3 colorInput = inputColor; + float Contrast_blend = Contrast * 2.0; //I multiply by two to give it a strength closer to the other curves. + vec3 x = colorInput.rgb; //if the curve should be applied to both Luma and Chroma + x = x * (x * (1.5 - x) + 0.5); //horner form - fastest version + vec3 color = x; //if the curve should be applied to both Luma and Chroma + colorInput.rgb = mix(colorInput.rgb, color, Contrast_blend); //Blend by Contrast + return colorInput; +} + + +//TECHNICOLOR2 + +vec3 Technicolor2(vec3 inputColor) { + vec3 color = inputColor; + vec3 Color_Strength = vec3(Technicolor2_Red_Strength, Technicolor2_Green_Strength, Technicolor2_Blue_Strength); + vec3 source = color; + vec3 temp = 1.0 - source; + vec3 target = temp.grg; + vec3 target2 = temp.bbr; + vec3 temp2 = source * target; + temp2 *= target2; + + temp = temp2 * Color_Strength; + temp2 *= Technicolor2_Brightness; + + target = temp.grg; + target2 = temp.bbr; + + temp = source - target; + temp += temp2; + temp2 = temp - target2; + + color = mix(source, temp2, Technicolor2_Strength); + + color = mix(vec3(dot(color, vec3(0.333))), color, Technicolor2_Saturation); + + return color; +} + +//Lift Gamma Gain + + vec3 LiftGammaGainPass( vec3 colorInput ) +{ + // -- Get input -- + vec3 color = colorInput.rgb; + + // -- Lift -- + //color = color + (RGB_Lift / 2.0 - 0.5) * (1.0 - color); + color = color * (1.5-0.5 * RGB_Lift) + 0.5 * RGB_Lift - 0.5; + color = clamp(color, 0.0, 1. ); //isn't strictly necessary, but doesn't cost performance. + + // -- Gain -- + color *= RGB_Gain; + + // -- Gamma -- + colorInput.rgb = pow(color, 1.0 / RGB_Gamma); //Gamma + + // -- Return output -- + //return (colorInput); + return clamp(color, 0.0, 1. ); +} + + +//LumaShapening + +#define px (1.0/1280.0*uf_fragCoordScale.x) +#define py (1.0/720.0*uf_fragCoordScale.y) +#define CoefLuma vec3(0.2126, 0.7152, 0.0722) + +float lumasharping(sampler2D tex, vec2 pos){ + vec4 colorInput = texture(tex, pos); + + vec3 ori = colorInput.rgb; + + // -- Combining the strength and luma multipliers -- + vec3 sharp_strength_luma = (CoefLuma * sharp_strength); + + // -- Gaussian filter -- + // [ .25, .50, .25] [ 1 , 2 , 1 ] + // [ .50, 1, .50] = [ 2 , 4 , 2 ] + // [ .25, .50, .25] [ 1 , 2 , 1 ] + + + //float px = 1.0/tex_size[0]; + //float py = 1.0/tex_size[1]; + + vec3 blur_ori = texture(tex, pos + vec2(px,-py) * 0.5 * offset_bias).rgb; // South East + blur_ori += texture(tex, pos + vec2(-px,-py) * 0.5 * offset_bias).rgb; // South West + blur_ori += texture(tex, pos + vec2(px,py) * 0.5 * offset_bias).rgb; // North East + blur_ori += texture(tex, pos + vec2(-px,py) * 0.5 * offset_bias).rgb; // North West + + blur_ori *= 0.25; // ( /= 4) Divide by the number of texture fetches + + // -- Calculate the sharpening -- + vec3 sharp = ori - blur_ori; //Subtracting the blurred image from the original image + + // -- Adjust strength of the sharpening and clamp it-- + vec4 sharp_strength_luma_clamp = vec4(sharp_strength_luma * (0.5 / sharp_clamp),0.5); //Roll part of the clamp into the dot + + float sharp_luma = clamp((dot(vec4(sharp,1.0), sharp_strength_luma_clamp)), 0.0,1.0 ); //Calculate the luma, adjust the strength, scale up and clamp + sharp_luma = (sharp_clamp * 2.0) * sharp_luma - sharp_clamp; //scale down + + + // -- Combining the values to get the final sharpened pixel -- + + //colorInput.rgb = colorInput.rgb + sharp_luma; // Add the sharpening to the input color. + return sharp_luma; +} + +//Fake High Dynamic Range. + +vec3 HDRPass(sampler2D tex, vec2 pos){ + vec3 color = texture(tex, pos).rgb; + + vec3 bloom_sum1 = texture(tex, pos + vec2(1.5, -1.5) * radius1 * vec2(px,py)).rgb; + bloom_sum1 += texture(tex, pos + vec2(-1.5, -1.5) * radius1 * vec2(px,py)).rgb; + bloom_sum1 += texture(tex, pos + vec2( 1.5, 1.5) * radius1 * vec2(px,py)).rgb; + bloom_sum1 += texture(tex, pos + vec2(-1.5, 1.5) * radius1 * vec2(px,py)).rgb; + bloom_sum1 += texture(tex, pos + vec2( 0.0, -2.5) * radius1 * vec2(px,py)).rgb; + bloom_sum1 += texture(tex, pos + vec2( 0.0, 2.5) * radius1 * vec2(px,py)).rgb; + bloom_sum1 += texture(tex, pos + vec2(-2.5, 0.0) * radius1 * vec2(px,py)).rgb; + bloom_sum1 += texture(tex, pos + vec2( 2.5, 0.0) * radius1 * vec2(px,py)).rgb; + + bloom_sum1 *= 0.005; + + vec3 bloom_sum2 = texture(tex, pos + vec2(1.5, -1.5) * radius2 * vec2(px,py)).rgb; + bloom_sum2 += texture(tex, pos + vec2(-1.5, -1.5) * radius2 * vec2(px,py)).rgb; + bloom_sum2 += texture(tex, pos + vec2( 1.5, 1.5) * radius2 * vec2(px,py)).rgb; + bloom_sum2 += texture(tex, pos + vec2(-1.5, 1.5) * radius2 * vec2(px,py)).rgb; + bloom_sum2 += texture(tex, pos + vec2( 0.0, -2.5) * radius2 * vec2(px,py)).rgb; + bloom_sum2 += texture(tex, pos + vec2( 0.0, 2.5) * radius2 * vec2(px,py)).rgb; + bloom_sum2 += texture(tex, pos + vec2(-2.5, 0.0) * radius2 * vec2(px,py)).rgb; + bloom_sum2 += texture(tex, pos + vec2( 2.5, 0.0) * radius2 * vec2(px,py)).rgb; + + bloom_sum2 *= 0.010; + + float dist = radius2 - radius1; + vec3 HDR = (color + (bloom_sum2 - bloom_sum1)) * dist; + + vec3 blend = HDR + color; + color = pow(abs(blend), vec3(abs(HDRPower))) + HDR; + + return color; +} + +void main() +{ +vec4 R0f = vec4(0.0); +vec4 R1f = vec4(0.0); +vec4 R123f = vec4(0.0); +vec4 R125f = vec4(0.0); +vec4 R126f = vec4(0.0); +vec4 R127f = vec4(0.0); +float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; +vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); +float PS0f = 0.0, PS1f = 0.0; +vec4 tempf = vec4(0.0); +float tempResultf; +int tempResulti; +ivec4 ARi = ivec4(0); +bool predResult = true; +vec3 cubeMapSTM; +int cubeMapFaceId; +R0f = passParameterSem0; +R1f.xyz = (texture(textureUnitPS0, R0f.xy).xyz); +R1f.xyz *= bloomFactor; +R0f.xyz = HDRPass(textureUnitPS1, passParameterSem0.xy); +float smask = lumasharping(textureUnitPS1, passParameterSem0.xy); +R0f.xyz += vec3(smask); +// 0 +R126f.x = R1f.x + R0f.x; +PV0f.x = R126f.x; +R127f.y = R1f.y + R0f.y; +PV0f.y = R127f.y; +R126f.z = R1f.z + R0f.z; +PV0f.z = R126f.z; +R125f.w = 1.0; +// 1 +tempf.x = dot(vec4(PV0f.x,PV0f.y,PV0f.z,-0.0),vec4(intBitsToFloat(0x3e99096c),intBitsToFloat(0x3f162b6b),intBitsToFloat(0x3dea4a8c),0.0)); +PV1f.x = tempf.x; +PV1f.y = tempf.x; +PV1f.z = tempf.x; +PV1f.w = tempf.x; +// 2 +R127f.x = -(R127f.y) * intBitsToFloat(0x3fb8aa3b); +PV0f.y = -(PV1f.x) * intBitsToFloat(0x3fb8aa3b); +R127f.z = -(R126f.x) * intBitsToFloat(0x3fb8aa3b); +R127f.w = -(R126f.z) * intBitsToFloat(0x3fb8aa3b); +R126f.w = 1.0 / PV1f.x; +PS0f = R126f.w; +// 3 +PS1f = exp2(PV0f.y); +// 4 +PV0f.x = -(PS1f) + 1.0; +PS0f = exp2(R127f.x); +// 5 +R127f.x = -(PS0f) + 1.0; +R126f.y = mul_nonIEEE(PV0f.x, PV0f.x); +PV1f.z = PV0f.x * R126f.w; +PS1f = exp2(R127f.w); +// 6 +backupReg0f = R126f.x; +backupReg1f = R127f.z; +R126f.x = mul_nonIEEE(backupReg0f, PV1f.z); +PV0f.y = -(PS1f) + 1.0; +R127f.z = mul_nonIEEE(R126f.z, PV1f.z); +PV0f.z = R127f.z; +R127f.w = mul_nonIEEE(R127f.y, PV1f.z); +PV0f.w = R127f.w; +PS0f = exp2(backupReg1f); +// 7 +PV1f.x = R127f.x + -(PV0f.w); +PV1f.y = PV0f.y + -(PV0f.z); +PV1f.w = -(PS0f) + 1.0; +// 8 +backupReg0f = R127f.z; +R127f.x = (mul_nonIEEE(PV1f.x,R126f.y) + R127f.w); +R127f.x = clamp(R127f.x, 0.0, 1.0); +PV0f.x = R127f.x; +PV0f.y = PV1f.w + -(R126f.x); +R127f.z = (mul_nonIEEE(PV1f.y,R126f.y) + backupReg0f); +R127f.z = clamp(R127f.z, 0.0, 1.0); +PV0f.z = R127f.z; +// 9 +backupReg0f = R126f.x; +R126f.x = (mul_nonIEEE(PV0f.y,R126f.y) + backupReg0f); +R126f.x = clamp(R126f.x, 0.0, 1.0); +PV1f.x = R126f.x; +R126f.y = max(PV0f.x, PV0f.z); +PV1f.w = min(PV0f.x, PV0f.z); +// 10 +tempf.x = dot(vec4(PV1f.x,R127f.x,R127f.z,R125f.w),vec4(intBitsToFloat(0x3f2aaaab),intBitsToFloat(0x3f2aaaab),intBitsToFloat(0x3f2aaaab),-(1.0))); +PV0f.x = tempf.x; +PV0f.y = tempf.x; +PV0f.z = tempf.x; +PV0f.w = tempf.x; +R126f.z = min(PV1f.x, PV1f.w); +PS0f = R126f.z; +// 11 +backupReg0f = R127f.x; +backupReg1f = R127f.z; +R127f.x = max(R126f.x, R126f.y); +PV1f.x = R127f.x; +R123f.y = (mul_nonIEEE(-(PV0f.x),PV0f.x) + 1.0); +PV1f.y = R123f.y; +R127f.z = backupReg0f + -(PS0f); +R125f.w = R126f.x + -(PS0f); +R126f.y = backupReg1f + -(PS0f); +PS1f = R126f.y; +// 12 +R126f.x = (mul_nonIEEE(PV1f.y,intBitsToFloat(uf_remappedPS[0].y)) + intBitsToFloat(uf_remappedPS[0].x)); +PV0f.x = R126f.x; +PV0f.y = -(R126f.z) + PV1f.x; +// 13 +R123f.w = (mul_nonIEEE(-(PV0f.x),PV0f.y) + R127f.x); +PV1f.w = R123f.w; +// 14 +R0f.x = (mul_nonIEEE(R126f.x,R125f.w) + PV1f.w); +R0f.y = (mul_nonIEEE(R126f.x,R127f.z) + PV1f.w); +R0f.z = (mul_nonIEEE(R126f.x,R126f.y) + PV1f.w); + +passPixelColor0 = vec4(R0f.x, R0f.y, R0f.z, R0f.w); + +vec3 color = (passPixelColor0.xyz); +float luminance = color.r*intBitsToFloat(0x3e99096c) + color.g*intBitsToFloat(0x3f162b6b) + color.b*intBitsToFloat(0x3dea4a8c); +float mn = min(min(color.r, color.g), color.b); +float mx = max(max(color.r, color.g), color.b); +vec3 lightness = vec3((mn + mx)/2.0); +color = TonemapPass(color); +color = Technicolor2(color); +color = LevelsPass(color); +color = CurvesPass(color); +color = mix(color, mix(color, lightness, -vibrance), sat); +color = LiftGammaGainPass(color); +passPixelColor0 = vec4(color, R0f.w); +} \ No newline at end of file From 870a70f169337068fd31370267c50b395e1ca5ae Mon Sep 17 00:00:00 2001 From: NAVras-Z Date: Tue, 7 Nov 2017 19:52:21 +0800 Subject: [PATCH 12/34] [BotW] update contrasty SkalFate edition --- .../bd8bba59e2149449_00000000000003c9_ps.txt | 317 +++++++++--------- .../BreathOfTheWild_Contrasty/rules.txt | 2 +- 2 files changed, 165 insertions(+), 154 deletions(-) diff --git a/Enhancement/BreathOfTheWild_Contrasty/bd8bba59e2149449_00000000000003c9_ps.txt b/Enhancement/BreathOfTheWild_Contrasty/bd8bba59e2149449_00000000000003c9_ps.txt index 15af86b3..f50cec15 100644 --- a/Enhancement/BreathOfTheWild_Contrasty/bd8bba59e2149449_00000000000003c9_ps.txt +++ b/Enhancement/BreathOfTheWild_Contrasty/bd8bba59e2149449_00000000000003c9_ps.txt @@ -1,181 +1,192 @@ #version 420 #extension GL_ARB_texture_gather : enable -// shader bd8bba59e2149449 -// Contrasty + Adjustable Bloom + Adjust Saturation -// original shader dumped using cemu 1.10.0f, BotW 1.3.1 +// Adjustable Bloom + Tone Mapping + Adjustable Vibrance(Contrasty) -//----------------------------settings------------------------------------- - -#define adjust_bloom 1 -#define adjust_saturation 1 -#define contrasty 1 -// 0: disable, 1: enable. +/*=============================Settings=====================================*/ +#define adjust_bloom 1 // 0: disable, 1: enable. const float bloomFactor = 0.7; // 1.0 is neutral -const float satFactor = 1.3; // 1.0 is neutral. Experimental, adjust native saturation +#define tone_mapping 0 +// -1: disable, clamp bright detail but keep [0,1] intact, however clamping could lead to desaturation as well +// 0: (Wii U) BotW original +// 1: ACES Filmic +// 2: Reshade/Sweetfx Tonemap, also allow color adjusting during tone mapping +//-----------------"Reshade Tonemap" Parameters---------------// +const float Gamma = 1.0; // [ 0.0, 2.0] 1.000 is neutral +const float Exposure = 0.0; // [-1.0, 1.0] Adjust exposure +const float Saturation = 0.0; // [-1.0, 1.0] Adjust saturation +const float Bleach = 0.0; // [ 0.0, 1.0] Brightens the shadows and fades the colors +const float Detint = 0.0; // [ 0.0, 1.0+] How much of the color tint to remove +const vec3 tintColor = vec3(0.0, 0.0, 0.0); // [ 0.0, 1.0+] Which color tint to remove +//---------------------------------------------------------------// -const float gamma = 0.81; // 1.0 is neutral. Botw is already colour graded at this stage -const float exposure = 1.17; // 1.0 is neutral -const float vibrance = 0.008; // 0.0 is neutral +#define post_process 2 +// -1: disable +// 0: (Wii U) BotW original, only vibrance +// 1: Reshade Vibrance +// 2: Contrasty +// 3: experiment, convert rgb to hsv then adjust s +//----------------"BotW original" vibrance adjust-------------// +const float satFactor = 1.1; // 1.0 is neutral. Experimental, adjust native saturation +//---------------------------------------------------------------// +//-----------------"Reshade Vibrance" Parameters--------------// +const float Vibrance = 0.40; // Saturates (or desaturates if you use negative values) the pixels depending on their original saturation. +const vec3 VibranceRGBBalance = vec3(1.0,1.0,1.0); // A per channel multiplier to the Vibrance strength so you can give more boost to certain colors over others. +//---------------------------------------------------------------// +//---------------------"Contrasty" Parameters-----------------// +const float gamma = 0.81; // 1.0 is neutral. Botw is already colour graded at this stage +const float exposure = 1.17; // 1.0 is neutral +const float vibrance = 0.45; // 0.0 is neutral const float crushContrast = 0.004; // 0.0 is neutral. Use small increments, loss of shadow detail +//---------------------------------------------------------------// +//------------------------"hsv experiment"---------------------// +const float satScale = 1.5; +//---------------------------------------------------------------// -//-------------------------------------------------------------------------- +/*==========================================================================*/ + +// shader bd8bba59e2149449 // bloom(add), tonemap, saturate uniform ivec4 uf_remappedPS[1]; -layout(binding = 0) uniform sampler2D textureUnitPS0; -layout(binding = 1) uniform sampler2D textureUnitPS1; +layout(binding = 0) uniform sampler2D textureUnitPS0; //bloom +layout(binding = 1) uniform sampler2D textureUnitPS1; //texture, hdr layout(location = 0) in vec4 passParameterSem0; layout(location = 0) out vec4 passPixelColor0; uniform vec2 uf_fragCoordScale; -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); + +float getL601(vec3 rgb) { + return dot(rgb,vec3(0.2989,0.5866,0.1145)); } -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } + +float getL709(vec3 rgb) { + return dot(rgb,vec3(0.2126,0.7152,0.0722)); +} + +vec3 BotWToneMap(vec3 color) { + float Lumn = getL601(color); + vec4 exptm = 1.0 - exp(-vec4(color,Lumn)); + vec3 cpre = exptm.w / Lumn * color; + vec3 colorldr = mix(cpre,exptm.rgb,vec3(pow(exptm.w,2.0)));//refine + return colorldr; +} + +vec3 ACESFilm(vec3 color) { + color *= 0.6; + return (color*(2.51*color+0.03))/(color*(2.43*color+0.59)+0.14); +} + +vec3 ReshadeTM(vec3 color) { + color = clamp(color - Detint * tintColor,0.0,1.0); // Detint, removed 2.55 + color *= pow(2.0f, Exposure); // Exposure + color = pow(color, vec3(1.0/Gamma)); // Reciprocal Gamma, like contrasty, more intuitive, not exactly midtone anyway + + float lum = getL709(color); + + float L = clamp(10.0 * (lum - 0.45),0.0,1.0); + vec3 A2 = Bleach * color; + + vec3 result1 = 2.0 * color * lum; + vec3 result2 = 1.0 - 2.0 * (1.0 - lum) * (1.0 - color); + + vec3 newColor = mix(result1, result2, L); + vec3 mixRGB = A2 * newColor; + color += ((1.0 - A2) * mixRGB); + + vec3 middlegray = vec3(dot(color, vec3(1.0 / 3.0))); + vec3 diffcolor = color - middlegray; + color = (color + diffcolor * Saturation) / (1.0 + (diffcolor * Saturation)); // Saturation + + return color; +} + +vec3 BotWVibrance(vec3 color) { + float avg = (color.r + color.g + color.b)/3.0; + float maxc = max(color.r, max(color.g,color.b)); + float w = 1.0 - pow(1.0 - 2.0 * avg, 2.0); + float weight = intBitsToFloat(uf_remappedPS[0].x) + w * intBitsToFloat(uf_remappedPS[0].y); + weight *= satFactor; + vec3 satcolor = mix(vec3(maxc), color, weight); + return satcolor; +} + +vec3 ReshadeVibrance(vec3 color) { + float max_color = max(color.r, max(color.g, color.b)); // Find the strongest color + float min_color = min(color.r, min(color.g, color.b)); // Find the weakest color + float luma = getL709(color); + float color_saturation = max_color - min_color; // The difference between the two is the saturation + vec3 coeffVibrance = VibranceRGBBalance * Vibrance; + color = mix(vec3(luma), color, 1.0 + (coeffVibrance * (1.0 - (sign(coeffVibrance) * color_saturation)))); + return color; +} + +vec3 Contrasty(vec3 fColour) { + fColour = max(vec3(0.0), fColour - vec3(crushContrast)); + fColour = clamp(exposure * fColour, 0.0, 1.0); + fColour = pow(fColour, vec3(1.0 / gamma)); + float luminance = getL601(fColour); + float mn = min(min(fColour.r, fColour.g), fColour.b); + float mx = max(max(fColour.r, fColour.g), fColour.b); + float sat = (1.0-(mx - mn)) * (1.0-mx) * luminance * 5.0; + vec3 lightness = vec3((mn + mx)/2.0); + // vibrance + fColour = mix(fColour, mix(fColour, lightness, -vibrance), sat); + return fColour; +} + +vec3 rgb2hsv(vec3 c) { + vec4 K = vec4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0); + vec4 p = mix(vec4(c.bg, K.wz), vec4(c.gb, K.xy), step(c.b, c.g)); + vec4 q = mix(vec4(p.xyw, c.r), vec4(c.r, p.yzx), step(p.x, c.r)); + + float d = q.x - min(q.w, q.y); + float e = 1.0e-10; + return vec3(abs(q.z + (q.w - q.y) / (6.0 * d + e)), d / (q.x + e), q.x); +} +vec3 hsv2rgb(vec3 c) { + vec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0); + vec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www); + return c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y); +} + +vec3 HSV(vec3 color) { + vec3 hsv = rgb2hsv(color); + hsv.y = pow(hsv.y, 1.0/satScale); + color = hsv2rgb(hsv); + return color; +} + void main() { -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); -vec4 R123f = vec4(0.0); -vec4 R125f = vec4(0.0); -vec4 R126f = vec4(0.0); -vec4 R127f = vec4(0.0); -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0f = passParameterSem0; -R1f.xyz = (texture(textureUnitPS0, R0f.xy).xyz); +vec3 bloom = texture(textureUnitPS0, passParameterSem0.xy).xyz; +vec3 color = texture(textureUnitPS1, passParameterSem0.xy).xyz; #if (adjust_bloom == 1) -R1f.xyz *= bloomFactor; +bloom *= bloomFactor; #endif -R0f.xyz = (texture(textureUnitPS1, R0f.xy).xyz); -// 0 -R126f.x = R1f.x + R0f.x; -R127f.y = R1f.y + R0f.y; -R126f.z = R1f.z + R0f.z; -PV0f.xyz = vec3(R126f.x,R127f.y,R126f.z); -R125f.w = 1.0; +color += bloom; -// 1 -tempf.x = dot(vec4(PV0f.x,PV0f.y,PV0f.z,-0.0),vec4(intBitsToFloat(0x3e99096c),intBitsToFloat(0x3f162b6b),intBitsToFloat(0x3dea4a8c),0.0)); -PV1f.x = tempf.x; -PV1f.y = tempf.x; -PV1f.z = tempf.x; -PV1f.w = tempf.x; -// 2 -R127f.x = -(R127f.y) * intBitsToFloat(0x3fb8aa3b); -PV0f.y = -(PV1f.x) * intBitsToFloat(0x3fb8aa3b); -R127f.z = -(R126f.x) * intBitsToFloat(0x3fb8aa3b); -R127f.w = -(R126f.z) * intBitsToFloat(0x3fb8aa3b); -R126f.w = 1.0 / PV1f.x; -PS0f = R126f.w; -// 3 -PS1f = exp2(PV0f.y); -// 4 -PV0f.x = -(PS1f) + 1.0; -PS0f = exp2(R127f.x); -// 5 -R127f.x = -(PS0f) + 1.0; -R126f.y = mul_nonIEEE(PV0f.x, PV0f.x); -PV1f.z = PV0f.x * R126f.w; -PS1f = exp2(R127f.w); -// 6 -backupReg0f = R126f.x; -backupReg1f = R127f.z; -R126f.x = mul_nonIEEE(backupReg0f, PV1f.z); -PV0f.y = -(PS1f) + 1.0; -R127f.z = mul_nonIEEE(R126f.z, PV1f.z); -PV0f.z = R127f.z; -R127f.w = mul_nonIEEE(R127f.y, PV1f.z); -PV0f.w = R127f.w; -PS0f = exp2(backupReg1f); -// 7 -PV1f.x = R127f.x + -(PV0f.w); -PV1f.y = PV0f.y + -(PV0f.z); -PV1f.w = -(PS0f) + 1.0; -// 8 -backupReg0f = R127f.z; -R127f.x = (mul_nonIEEE(PV1f.x,R126f.y) + R127f.w); -R127f.x = clamp(R127f.x, 0.0, 1.0); -PV0f.x = R127f.x; -PV0f.y = PV1f.w + -(R126f.x); -R127f.z = (mul_nonIEEE(PV1f.y,R126f.y) + backupReg0f); -R127f.z = clamp(R127f.z, 0.0, 1.0); -PV0f.z = R127f.z; -// 9 -backupReg0f = R126f.x; -R126f.x = (mul_nonIEEE(PV0f.y,R126f.y) + backupReg0f); -R126f.x = clamp(R126f.x, 0.0, 1.0); -PV1f.x = R126f.x; -R126f.y = max(PV0f.x, PV0f.z); -PV1f.w = min(PV0f.x, PV0f.z); -// 10 -tempf.x = dot(vec4(PV1f.x,R127f.x,R127f.z,R125f.w),vec4(intBitsToFloat(0x3f2aaaab),intBitsToFloat(0x3f2aaaab),intBitsToFloat(0x3f2aaaab),-(1.0))); -PV0f.x = tempf.x; -PV0f.y = tempf.x; -PV0f.z = tempf.x; -PV0f.w = tempf.x; -R126f.z = min(PV1f.x, PV1f.w); -PS0f = R126f.z; -// 11 -backupReg0f = R127f.x; -backupReg1f = R127f.z; -R127f.x = max(R126f.x, R126f.y); -PV1f.x = R127f.x; -R123f.y = (mul_nonIEEE(-(PV0f.x),PV0f.x) + 1.0); -PV1f.y = R123f.y; -R127f.z = backupReg0f + -(PS0f); -R125f.w = R126f.x + -(PS0f); -R126f.y = backupReg1f + -(PS0f); -PS1f = R126f.y; -// 12 - -#if (adjust_saturation == 1) -R126f.x = satFactor * (mul_nonIEEE(PV1f.y,intBitsToFloat(uf_remappedPS[0].y)) + intBitsToFloat(uf_remappedPS[0].x)); -#else -R126f.x = (mul_nonIEEE(PV1f.y,intBitsToFloat(uf_remappedPS[0].y)) + intBitsToFloat(uf_remappedPS[0].x)); +#if (tone_mapping == -1) +color = clamp(color,0.0,1.0); +#elif (tone_mapping == 0) +color = BotWToneMap(color); +#elif (tone_mapping == 1) +color = ACESFilm(color); +#elif (tone_mapping == 2) +color = ReshadeTM(color); #endif -PV0f.x = R126f.x; -PV0f.y = -(R126f.z) + PV1f.x; -// 13 -R123f.w = (mul_nonIEEE(-(PV0f.x),PV0f.y) + R127f.x); -PV1f.w = R123f.w; -// 14 -R0f.x = (mul_nonIEEE(R126f.x,R125f.w) + PV1f.w); -R0f.y = (mul_nonIEEE(R126f.x,R127f.z) + PV1f.w); -R0f.z = (mul_nonIEEE(R126f.x,R126f.y) + PV1f.w); - -#if (contrasty == 1) -vec3 fColour = R0f.xyz; -fColour = max(vec3(0.0), fColour - vec3(crushContrast)); -fColour = clamp(exposure * fColour, 0.0, 1.0); -fColour = pow(fColour, vec3(1.0 / gamma)); -float luminance = fColour.r*intBitsToFloat(0x3e99096c) + fColour.g*intBitsToFloat(0x3f162b6b) + fColour.b*intBitsToFloat(0x3dea4a8c); -float mn = min(min(fColour.r, fColour.g), fColour.b); -float mx = max(max(fColour.r, fColour.g), fColour.b); -float sat = (1.0-(mx - mn)) * (1.0-mx) * luminance * 5.0; -vec3 lightness = vec3((mn + mx)/2.0); -// vibrance -fColour = mix(fColour, mix(fColour, lightness, -vibrance), sat); - -R0f.xyz = fColour; +#if (post_process == 0) +color = BotWVibrance(color); +#elif (post_process == 1) +color = ReshadeVibrance(color); +#elif (post_process == 2) +color = Contrasty(color); +#elif (post_process == 3) +color = HSV(color); #endif // export -passPixelColor0 = vec4(R0f.x, R0f.y, R0f.z, R0f.w); +passPixelColor0 = vec4(color, passParameterSem0.w); } diff --git a/Enhancement/BreathOfTheWild_Contrasty/rules.txt b/Enhancement/BreathOfTheWild_Contrasty/rules.txt index d63193e2..13f47ffa 100644 --- a/Enhancement/BreathOfTheWild_Contrasty/rules.txt +++ b/Enhancement/BreathOfTheWild_Contrasty/rules.txt @@ -6,7 +6,7 @@ version = 2 # Credit: # getdls for contrasty # lihe@bestminr.com for vibrance logic -# kiri, navras for tone mapping +# kiri hsv saturation # navras seperate contrasty from AARemoval # approximate ACES Filmic ~ https://knarkowicz.wordpress.com/2016/01/06/aces-filmic-tone-mapping-curve/ From 1a2f99f1d609fbd2a85278b386c0474616c50076 Mon Sep 17 00:00:00 2001 From: NAVras-Z Date: Tue, 7 Nov 2017 20:42:49 +0800 Subject: [PATCH 13/34] [BotW] update contrasty... again this one does not seem to make a different in my test, assume it's safe to change it like this --- .../bd8bba59e2149449_00000000000003c9_ps.txt | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/Enhancement/BreathOfTheWild_Contrasty/bd8bba59e2149449_00000000000003c9_ps.txt b/Enhancement/BreathOfTheWild_Contrasty/bd8bba59e2149449_00000000000003c9_ps.txt index f50cec15..4d017f5b 100644 --- a/Enhancement/BreathOfTheWild_Contrasty/bd8bba59e2149449_00000000000003c9_ps.txt +++ b/Enhancement/BreathOfTheWild_Contrasty/bd8bba59e2149449_00000000000003c9_ps.txt @@ -28,7 +28,7 @@ const vec3 tintColor = vec3(0.0, 0.0, 0.0); // [ 0.0, 1.0+] Which color tint to // 2: Contrasty // 3: experiment, convert rgb to hsv then adjust s //----------------"BotW original" vibrance adjust-------------// -const float satFactor = 1.1; // 1.0 is neutral. Experimental, adjust native saturation +const float satFactor = 0.29; // 0.18 is neutral. Experimental, adjust native saturation //---------------------------------------------------------------// //-----------------"Reshade Vibrance" Parameters--------------// const float Vibrance = 0.40; // Saturates (or desaturates if you use negative values) the pixels depending on their original saturation. @@ -104,8 +104,7 @@ vec3 BotWVibrance(vec3 color) { float avg = (color.r + color.g + color.b)/3.0; float maxc = max(color.r, max(color.g,color.b)); float w = 1.0 - pow(1.0 - 2.0 * avg, 2.0); - float weight = intBitsToFloat(uf_remappedPS[0].x) + w * intBitsToFloat(uf_remappedPS[0].y); - weight *= satFactor; + float weight = 1.0 + w * satFactor; vec3 satcolor = mix(vec3(maxc), color, weight); return satcolor; } From d94fba8560b3f50201b84919540df618a2ac4c9f Mon Sep 17 00:00:00 2001 From: NAVras-Z Date: Wed, 8 Nov 2017 07:48:11 +0800 Subject: [PATCH 14/34] [BotW] add cloud vs this should fix misplaced cloud in 1.2.x and beofre --- .../01bef64ec0cccd53_0000000000000000_vs.txt | 105 ++++++++++++++++++ 1 file changed, 105 insertions(+) create mode 100644 Source/BreathOfTheWild/01bef64ec0cccd53_0000000000000000_vs.txt diff --git a/Source/BreathOfTheWild/01bef64ec0cccd53_0000000000000000_vs.txt b/Source/BreathOfTheWild/01bef64ec0cccd53_0000000000000000_vs.txt new file mode 100644 index 00000000..7bb06371 --- /dev/null +++ b/Source/BreathOfTheWild/01bef64ec0cccd53_0000000000000000_vs.txt @@ -0,0 +1,105 @@ + +#version 420 +#extension GL_ARB_texture_gather : enable +#extension GL_ARB_shading_language_packing : enable +// shader 01bef64ec0cccd53 // cloud vs +const float resXScale = ; +const float resYScale = ; + +uniform ivec4 uf_remappedVS[1]; +uniform vec2 uf_windowSpaceToClipSpaceTransform; +layout(binding = 32) uniform sampler2D textureUnitVS0; +layout(location = 0) in uvec4 attrDataSem0; +layout(location = 1) in uvec4 attrDataSem1; +out gl_PerVertex +{ + vec4 gl_Position; + float gl_PointSize; +}; +layout(location = 1) out vec4 passParameterSem1; +layout(location = 0) out vec4 passParameterSem0; +int clampFI32(int v) +{ +if( v == 0x7FFFFFFF ) + return floatBitsToInt(1.0); +else if( v == 0xFFFFFFFF ) + return floatBitsToInt(0.0); +return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); +} +float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } +void main() +{ +ivec4 R0i = ivec4(0); +ivec4 R1i = ivec4(0); +ivec4 R2i = ivec4(0); +ivec4 R3i = ivec4(0); +ivec4 R127i = ivec4(0); +uvec4 attrDecoder; +int backupReg0i, backupReg1i, backupReg2i, backupReg3i, backupReg4i; +ivec4 PV0i = ivec4(0), PV1i = ivec4(0); +int PS0i = 0, PS1i = 0; +ivec4 tempi = ivec4(0); +float tempResultf; +int tempResulti; +ivec4 ARi = ivec4(0); +bool predResult = true; +vec3 cubeMapSTM; +int cubeMapFaceId; +R0i = ivec4(gl_VertexID, 0, 0, gl_InstanceID); +attrDecoder.xyz = attrDataSem0.xyz; +attrDecoder.xyz = (attrDecoder.xyz>>24)|((attrDecoder.xyz>>8)&0xFF00)|((attrDecoder.xyz<<8)&0xFF0000)|((attrDecoder.xyz<<24)); +attrDecoder.w = 0; +R1i = ivec4(int(attrDecoder.x), int(attrDecoder.y), int(attrDecoder.z), floatBitsToInt(1.0)); +attrDecoder.xy = attrDataSem1.xy; +attrDecoder.xy = (attrDecoder.xy>>24)|((attrDecoder.xy>>8)&0xFF00)|((attrDecoder.xy<<8)&0xFF0000)|((attrDecoder.xy<<24)); +attrDecoder.z = 0; +attrDecoder.w = 0; +R2i = ivec4(int(attrDecoder.x), int(attrDecoder.y), floatBitsToInt(0.0), floatBitsToInt(1.0)); +// 0 +backupReg0i = R1i.x; +backupReg1i = R1i.y; +R1i.x = backupReg0i; +R1i.x = floatBitsToInt(intBitsToFloat(R1i.x) * 2.0); +R1i.y = backupReg1i; +R1i.y = floatBitsToInt(intBitsToFloat(R1i.y) * 2.0); +R1i.z = 0x3f800000; +R0i.w = 0; +R0i.y = floatBitsToInt(-(intBitsToFloat(uf_remappedVS[0].z)/resXScale)); +R0i.y = floatBitsToInt(intBitsToFloat(R0i.y) / 2.0); +PS0i = R0i.y; +R3i.xy = ivec4(textureSize(textureUnitVS0, 0),1,1).xy; +// export +gl_Position = vec4(intBitsToFloat(R1i.x), intBitsToFloat(R1i.y), intBitsToFloat(R1i.z), intBitsToFloat(R1i.z)); +// 0 +PV0i.x = floatBitsToInt(-(intBitsToFloat(uf_remappedVS[0].w)/resYScale)); +PV0i.x = floatBitsToInt(intBitsToFloat(PV0i.x) / 2.0); +R0i.z = R0i.y; +R127i.w = floatBitsToInt(float(R3i.x)); +PS0i = R127i.w; +// 1 +R0i.w = PV0i.x; +R127i.z = floatBitsToInt(float(R3i.y)); +PS1i = R127i.z; +// 2 +PS0i = floatBitsToInt(1.0 / intBitsToFloat(R127i.w)); +// 3 +R3i.x = floatBitsToInt((-(intBitsToFloat(PS0i)) * intBitsToFloat(0x3c23d70a) + intBitsToFloat(R2i.x))); +PV1i.x = R3i.x; +PS1i = floatBitsToInt(1.0 / intBitsToFloat(R127i.z)); +// 4 +R0i.x = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV1i.x),intBitsToFloat(uf_remappedVS[0].x)*resXScale) + 0.5)); +R3i.y = floatBitsToInt((-(intBitsToFloat(PS1i)) * intBitsToFloat(0x3c23d70a) + intBitsToFloat(R2i.y))); +PV0i.y = R3i.y; +// 5 +R0i.y = floatBitsToInt((mul_nonIEEE(intBitsToFloat(PV0i.y),intBitsToFloat(uf_remappedVS[0].y)*resYScale) + 0.5)); +// export +passParameterSem1 = vec4(intBitsToFloat(R0i.x), intBitsToFloat(R0i.y), intBitsToFloat(R0i.z), intBitsToFloat(R0i.w)); +// export +passParameterSem0 = vec4(intBitsToFloat(R3i.x), intBitsToFloat(R3i.y), intBitsToFloat(R3i.z), intBitsToFloat(R3i.z)); +} From abc63dd890058b42595144b44afcdb533440cfb5 Mon Sep 17 00:00:00 2001 From: Jamie Date: Tue, 7 Nov 2017 19:25:07 -0800 Subject: [PATCH 15/34] Clarity GFX Updated values , added in its own bloom / fog effects . --- .../38d70ed9280bb3bc_0000000000000079_ps.txt | 44 ++++++ .../bd8bba59e2149449_00000000000003c9_ps.txt | 129 ++++++++++++------ 2 files changed, 135 insertions(+), 38 deletions(-) create mode 100644 Enhancement/BreathOfTheWild_ClarityGFX/38d70ed9280bb3bc_0000000000000079_ps.txt diff --git a/Enhancement/BreathOfTheWild_ClarityGFX/38d70ed9280bb3bc_0000000000000079_ps.txt b/Enhancement/BreathOfTheWild_ClarityGFX/38d70ed9280bb3bc_0000000000000079_ps.txt new file mode 100644 index 00000000..2c8db3e2 --- /dev/null +++ b/Enhancement/BreathOfTheWild_ClarityGFX/38d70ed9280bb3bc_0000000000000079_ps.txt @@ -0,0 +1,44 @@ +#version 420 +#extension GL_ARB_texture_gather : enable +float fogFactor = 1.0; +// shader 38d70ed9280bb3bc +uniform ivec4 uf_remappedPS[1]; +layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0xf46ac800 res 320x180x1 dim 1 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x5) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 2 2 2 border: 1 +layout(location = 0) in vec4 passParameterSem0; +layout(location = 0) out vec4 passPixelColor0; +uniform vec2 uf_fragCoordScale; +int clampFI32(int v) +{ +if( v == 0x7FFFFFFF ) + return floatBitsToInt(1.0); +else if( v == 0xFFFFFFFF ) + return floatBitsToInt(0.0); +return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); +} +float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } +void main() +{ +vec4 R0f = vec4(0.0); +float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; +vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); +float PS0f = 0.0, PS1f = 0.0; +vec4 tempf = vec4(0.0); +float tempResultf; +int tempResulti; +ivec4 ARi = ivec4(0); +bool predResult = true; +vec3 cubeMapSTM; +int cubeMapFaceId; +R0f = passParameterSem0; +R0f.xyz = (texture(textureUnitPS0, R0f.xy).xyz); +// 0 +backupReg0f = R0f.x; +backupReg1f = R0f.y; +backupReg2f = R0f.z; +R0f.x = mul_nonIEEE(backupReg0f, intBitsToFloat(uf_remappedPS[0].x) * fogFactor); +R0f.y = mul_nonIEEE(backupReg1f, intBitsToFloat(uf_remappedPS[0].y) * fogFactor); +R0f.z = mul_nonIEEE(backupReg2f, intBitsToFloat(uf_remappedPS[0].z) * fogFactor); +R0f.w = 0.0; +// export +passPixelColor0 = vec4(R0f.x, R0f.y, R0f.z, R0f.w); +} diff --git a/Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.txt b/Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.txt index 27253b56..a9b1fca6 100644 --- a/Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.txt +++ b/Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.txt @@ -3,11 +3,13 @@ // shader bd8bba59e2149449 +// Possible problems +// Being below 1.3.0 will give you double-vision with recent graphic packs. Update to 1.3.0 or above. // If you're experiencing any issues (due to having the previous Clarity shaders installed), please remove and redownload all of the BotW packs. // Credit to NAVras for merging to a better shader. -// (Special thanks to NAVras for helping debug and answer silly questions.) -// Could not have got this far without you. +//(Thank you NAVras for debugging and answering silly questions.) +// Couldn't have got this far without you. // Credit to getdls for adding exposure & Original Contrasty. @@ -17,52 +19,56 @@ // Credit to Serfrost for preset values. // Original shader dumped using cemu 1.10.0f, BotW 1.3.1 -// Changelog v0.8 +//v0.9 //########################################################## //ToneMapping -const float bloomFactor = 0.2; //Default is 1.0 -const float gamma = 0.80; //Default is 1.0 -const float Bleach = 0.0; //Default is 0.0 -float exposure = 1.1; //Default is 1.0 -const float defog = 0.12; //Default is 0.0 -const float vibrance = 0.0; //Default is 0.0 +float bloomFactor = 0.35; //Default is 1.0 +float Bleach = 0.0002; //Default is 0.0 +float exposure = 1.25; //Default is 1.0 +float defog = 0.003; //Default is 0.0 + +//Lift Gamma Gain +#define RGB_Lift vec3(1.0, 1.0, 1.0) //[0.000 to 2.000] Adjust shadows for Red, Green and Blue. +#define RGB_Gamma vec3(0.90, 0.90, 0.90) //[0.000 to 2.000] Adjust midtones for Red, Green and Blue +#define RGB_Gain vec3(1.0, 1.0, 1.0) //[0.000 to 2.000] Adjust highlights for Red, Green and Blue +//Note that a value of 1.0 is a neutral setting that leave the color unchanged. + +//Curves +float Contrast = 0.80; //[-1.0, 1.0] The amount of contrast you want + +//Levels Control +const int BlackPoint = 0; //[0, 255] The black point is the new black - literally. Everything darker than this will become completely black +const int WhitePoint = 255; //[0, 255] The new white point. Everything brighter than this becomes completely white //LumaShapening -#define sharp_strength 0.65 //[0.10 to 3.00] Default 0.65 , Strength of the sharpening. -#define sharp_clamp 0.085 //[0.000 to 1.000] Default 0.035 , Limits maximum amount of sharpening a pixel recieves. +#define sharp_strength 0.60 //[0.10 to 3.00] Strength of the sharpening Default is 0.65 +#define sharp_clamp 0.060 //[0.000 to 1.000] Limits maximum amount of sharpening a pixel recieves - Default is 0.035 //Advanced sharpening settings -#define offset_bias 1.0 //[0.0 to 6.0] Offset bias adjusts the radius of the sampling pattern. +#define offset_bias 1.0 //[0.0 to 6.0] Offset bias adjusts the radius of the sampling pattern. //Technicolor2 -#define Technicolor2_Red_Strength 0.0 //Default is 0.0 -#define Technicolor2_Green_Strength -0.2 //Default is 0.0 -#define Technicolor2_Blue_Strength 0.0 //Default is 0.0 -#define Technicolor2_Brightness 0.38 //Default is 1.0 -#define Technicolor2_Strength 1.0 //Default is 1.0 -#define Technicolor2_Saturation 0.52 //Default is 1.0 +#define Technicolor2_Red_Strength 0.0 //Default is 0.0 +#define Technicolor2_Green_Strength 0.0 //Default is 0.0 +#define Technicolor2_Blue_Strength 0.0 //Default is 0.0 +#define Technicolor2_Brightness 0.95 //Default is 1.0 +#define Technicolor2_Strength 0.40 //Default is 1.0 +#define Technicolor2_Saturation 0.85 //Default is 1.0 //Fake High Dynamic Range. -#define HDRPower 1.75 //0.0 to 8.0 Default 1.30 , Raising this seems to make the effect stronger and also darker. -#define radius1 0.793 //0.0 to 8.0 Default 0.793 , will affect FX. -#define radius2 0.870 //0.0 to 8.0 Default 0.870 , will affect FX. +#define HDRPower 1.20 // 0.0 to 8.0 "Raising this seems to make the effect stronger and also darker , Default 1.30." +#define radius1 0.793 // 0.0 to 8.0 "Default 0.793 , will affect FX." +#define radius2 0.87 // 0.0 to 8.0 "Default 0.87 , will affect FX." //########################################################### - - - - //Do not edit under this line. +float sat = 0.0; - - - -const float sat = 1.0; -const vec3 FogColor = vec3(0.0, 0.0, 0.0); //defog Color"; +const vec3 FogColor = vec3(0.0, 1.03, 0.0); //defog Color"; uniform ivec4 uf_remappedPS[1]; layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0xf46ac800 res 320x180x1 dim 1 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x5) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 2 2 2 border: 1 @@ -107,6 +113,31 @@ vec3 TonemapPass(vec3 inputColor) { return color; } +// Levels + +vec3 LevelsPass(vec3 inputColor) { + float black_point_float = BlackPoint / 255.0; + float white_point_float = WhitePoint == BlackPoint ? (255.0 / 0.00025) : (255.0 / (WhitePoint - BlackPoint)); // Avoid division by zero if the white and black point are the same + + vec3 color = inputColor; + color = color * white_point_float - (black_point_float * white_point_float); + + return color; +} + +//Curves + +vec3 CurvesPass(vec3 inputColor) { + vec3 colorInput = inputColor; + float Contrast_blend = Contrast * 2.0; //I multiply by two to give it a strength closer to the other curves. + vec3 x = colorInput.rgb; //if the curve should be applied to both Luma and Chroma + x = x * (x * (1.5 - x) + 0.5); //horner form - fastest version + vec3 color = x; //if the curve should be applied to both Luma and Chroma + colorInput.rgb = mix(colorInput.rgb, color, Contrast_blend); //Blend by Contrast + return colorInput; +} + + //TECHNICOLOR2 vec3 Technicolor2(vec3 inputColor) { @@ -136,6 +167,30 @@ vec3 Technicolor2(vec3 inputColor) { return color; } + +//Lift Gamma Gain + + vec3 LiftGammaGainPass( vec3 colorInput ) +{ + // -- Get input -- + vec3 color = colorInput.rgb; + + // -- Lift -- + + color = color * (1.5-0.5 * RGB_Lift) + 0.5 * RGB_Lift - 0.5; + color = clamp(color, 0.0, 1. ); //isn't strictly necessary, but doesn't cost performance. + + // -- Gain -- + color *= RGB_Gain; + + // -- Gamma -- + colorInput.rgb = pow(color, 1.0 / RGB_Gamma); //Gamma + + // -- Return output -- + //return (colorInput); + return clamp(color, 0.0, 1. ); +} + //LumaShapening #define px (1.0/1280.0*uf_fragCoordScale.x) @@ -238,7 +293,8 @@ vec3 cubeMapSTM; int cubeMapFaceId; R0f = passParameterSem0; R1f.xyz = (texture(textureUnitPS0, R0f.xy).xyz); -R1f.xyz *= bloomFactor; +vec3 bloom = texture(textureUnitPS0, passParameterSem0.xy).xyz; +bloom *= bloomFactor; R0f.xyz = HDRPass(textureUnitPS1, passParameterSem0.xy); float smask = lumasharping(textureUnitPS1, passParameterSem0.xy); R0f.xyz += vec3(smask); @@ -337,14 +393,11 @@ R0f.z = (mul_nonIEEE(R126f.x,R126f.y) + PV1f.w); passPixelColor0 = vec4(R0f.x, R0f.y, R0f.z, R0f.w); vec3 color = (passPixelColor0.xyz); -float luminance = color.r*intBitsToFloat(0x3e99096c) + color.g*intBitsToFloat(0x3f162b6b) + color.b*intBitsToFloat(0x3dea4a8c); -float mn = min(min(color.r, color.g), color.b); -float mx = max(max(color.r, color.g), color.b); -float sat = (1.0-(mx - mn)) * (1.0-mx) * luminance * 5.0; -vec3 lightness = vec3((mn + mx)/2.0); +color += bloom; color = TonemapPass(color); color = Technicolor2(color); -color = pow(color, vec3(1.0 / gamma)); -color = mix(color, mix(color, lightness, -vibrance), sat); +color = LevelsPass(color); +color = CurvesPass(color); +color = LiftGammaGainPass(color); passPixelColor0 = vec4(color, R0f.w); } \ No newline at end of file From 26f9bcfaaa2ba6539cb3fed99958020e35756f11 Mon Sep 17 00:00:00 2001 From: NAVras-Z Date: Wed, 8 Nov 2017 15:09:43 +0800 Subject: [PATCH 16/34] [BotW] contrasty remove reshade tonemap Turns out it's not tonemap Credit SkalFate on discord ACES now with a simple exposure that can be tweaked, default 0.6 to match original curve according the author --- .../bd8bba59e2149449_00000000000003c9_ps.txt | 42 +++---------------- 1 file changed, 5 insertions(+), 37 deletions(-) diff --git a/Enhancement/BreathOfTheWild_Contrasty/bd8bba59e2149449_00000000000003c9_ps.txt b/Enhancement/BreathOfTheWild_Contrasty/bd8bba59e2149449_00000000000003c9_ps.txt index 4d017f5b..82a882a7 100644 --- a/Enhancement/BreathOfTheWild_Contrasty/bd8bba59e2149449_00000000000003c9_ps.txt +++ b/Enhancement/BreathOfTheWild_Contrasty/bd8bba59e2149449_00000000000003c9_ps.txt @@ -11,14 +11,8 @@ const float bloomFactor = 0.7; // 1.0 is neutral // -1: disable, clamp bright detail but keep [0,1] intact, however clamping could lead to desaturation as well // 0: (Wii U) BotW original // 1: ACES Filmic -// 2: Reshade/Sweetfx Tonemap, also allow color adjusting during tone mapping -//-----------------"Reshade Tonemap" Parameters---------------// -const float Gamma = 1.0; // [ 0.0, 2.0] 1.000 is neutral -const float Exposure = 0.0; // [-1.0, 1.0] Adjust exposure -const float Saturation = 0.0; // [-1.0, 1.0] Adjust saturation -const float Bleach = 0.0; // [ 0.0, 1.0] Brightens the shadows and fades the colors -const float Detint = 0.0; // [ 0.0, 1.0+] How much of the color tint to remove -const vec3 tintColor = vec3(0.0, 0.0, 0.0); // [ 0.0, 1.0+] Which color tint to remove +//--------------------"ACES Filmic" Parameters-----------------// +const float Exposure = 0.6; // [0.0, 1.0+] Adjust exposure //---------------------------------------------------------------// #define post_process 2 @@ -26,7 +20,7 @@ const vec3 tintColor = vec3(0.0, 0.0, 0.0); // [ 0.0, 1.0+] Which color tint to // 0: (Wii U) BotW original, only vibrance // 1: Reshade Vibrance // 2: Contrasty -// 3: experiment, convert rgb to hsv then adjust s +// 3: Experimental, convert rgb to hsv then adjust saturation directly //----------------"BotW original" vibrance adjust-------------// const float satFactor = 0.29; // 0.18 is neutral. Experimental, adjust native saturation //---------------------------------------------------------------// @@ -41,7 +35,7 @@ const float vibrance = 0.45; // 0.0 is neutral const float crushContrast = 0.004; // 0.0 is neutral. Use small increments, loss of shadow detail //---------------------------------------------------------------// //------------------------"hsv experiment"---------------------// -const float satScale = 1.5; +const float satScale = 1.5; // 1.0 is neutral //---------------------------------------------------------------// /*==========================================================================*/ @@ -72,34 +66,10 @@ vec3 BotWToneMap(vec3 color) { } vec3 ACESFilm(vec3 color) { - color *= 0.6; + color *= Exposure; return (color*(2.51*color+0.03))/(color*(2.43*color+0.59)+0.14); } -vec3 ReshadeTM(vec3 color) { - color = clamp(color - Detint * tintColor,0.0,1.0); // Detint, removed 2.55 - color *= pow(2.0f, Exposure); // Exposure - color = pow(color, vec3(1.0/Gamma)); // Reciprocal Gamma, like contrasty, more intuitive, not exactly midtone anyway - - float lum = getL709(color); - - float L = clamp(10.0 * (lum - 0.45),0.0,1.0); - vec3 A2 = Bleach * color; - - vec3 result1 = 2.0 * color * lum; - vec3 result2 = 1.0 - 2.0 * (1.0 - lum) * (1.0 - color); - - vec3 newColor = mix(result1, result2, L); - vec3 mixRGB = A2 * newColor; - color += ((1.0 - A2) * mixRGB); - - vec3 middlegray = vec3(dot(color, vec3(1.0 / 3.0))); - vec3 diffcolor = color - middlegray; - color = (color + diffcolor * Saturation) / (1.0 + (diffcolor * Saturation)); // Saturation - - return color; -} - vec3 BotWVibrance(vec3 color) { float avg = (color.r + color.g + color.b)/3.0; float maxc = max(color.r, max(color.g,color.b)); @@ -172,8 +142,6 @@ color = clamp(color,0.0,1.0); color = BotWToneMap(color); #elif (tone_mapping == 1) color = ACESFilm(color); -#elif (tone_mapping == 2) -color = ReshadeTM(color); #endif #if (post_process == 0) From 7f7db477f326b9cf5abc4ffd7af1e129af00f461 Mon Sep 17 00:00:00 2001 From: Jamie Date: Tue, 7 Nov 2017 23:22:16 -0800 Subject: [PATCH 17/34] Clarity GFX Removed old presets , fixed some ToneMapping. --- .../bd8bba59e2149449_00000000000003c9_ps.txt | 4 +- ...49449_00000000000003c9_ps.txt.Jamie Preset | 346 --------------- ...9e2149449_00000000000003c9_ps.txt.brighter | 404 ------------------ 3 files changed, 2 insertions(+), 752 deletions(-) delete mode 100644 Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.txt.Jamie Preset delete mode 100644 Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.txt.brighter diff --git a/Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.txt b/Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.txt index a9b1fca6..dae9c082 100644 --- a/Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.txt +++ b/Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.txt @@ -90,13 +90,13 @@ float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; retu vec3 TonemapPass(vec3 inputColor) { vec3 color = inputColor; - color = clamp(color - defog * FogColor * 2.55, 0.0, 1.0); // defog + color = (color - defog * FogColor * 2.55); color *= exposure/(1.0+ color / exposure); const vec3 coefLuma = vec3(0.2126, 0.7152, 0.0722); float lum = dot(coefLuma, color); - float L = clamp(10.0 * (lum - 0.45), 0.0, 1.0); + float L = (10.0 * (lum - 0.45)); vec3 A2 = Bleach * color; vec3 result1 = 2.0f * color * lum; diff --git a/Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.txt.Jamie Preset b/Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.txt.Jamie Preset deleted file mode 100644 index 615d67b8..00000000 --- a/Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.txt.Jamie Preset +++ /dev/null @@ -1,346 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable - -// shader bd8bba59e2149449 - -// Possible problems -// Being below 1.3.0 will give you double-vision with recent graphic packs. Update to 1.3.0 or above. -// If you're experiencing any issues (due to having the previous Clarity shaders installed), please remove and redownload all of the BotW packs. - -// Changelog V0.1 -// Changed from shader f14bb_ps.txt to bd8bb_ps.txt - -// Credit to NAVras for merging to a better shader.(specal Note Thank you NAVras, For Helping Debug and answering silly questions.) -// Could not have got this far without you. -// Credit to getdls for adding exposure & Original Contrasty. - -// Clarity GFX -// Credit to Jamie for main coding. -// Credit to Kiri coding & Reshade logic. -// Credit to Serfrost for preset values. -// Original shader dumped using cemu 1.10.0f, BotW 1.3.1 - -// Changelog v0.7 - -//########################################################## - -//ToneMapping -const float bloomFactor = 0.0; //Default is 1.0 -const float gamma = 1.00; //Default is 1.0 -const float Bleach = 0.2; //Default is 0.0 -float exposure = 1.5; //Default is 1.0 -const float defog = 0.12; //Default is 0.0 How much of the far distance fog to "remove." -const float vibrance = 0.015; //Default is 0.0 - -//LumaShapening -#define sharp_strength 0.25 //[0.10 to 3.00] Strength of the sharpening Default is 0.65 -#define sharp_clamp 0.085 //[0.000 to 1.000] Limits maximum amount of sharpening a pixel recieves - Default is 0.035 -//Advanced sharpening settings -#define offset_bias 1.0 //[0.0 to 6.0] Offset bias adjusts the radius of the sampling pattern. - -//Technicolor2 -#define Technicolor2_Red_Strength 0.0 //Default is 0.0 -#define Technicolor2_Green_Strength 0.0 //Default is 0.0 -#define Technicolor2_Blue_Strength 0.0 //Default is 0.0 -#define Technicolor2_Brightness 1.0 //Default is 1.0 -#define Technicolor2_Strength 0.40 //Default is 1.0 -#define Technicolor2_Saturation 0.51 //Default is 1.0 - -//Fake High Dynamic Range. -#define HDRPower 1.20 // 0.0 to 8.0 "Raising this seems to make the effect stronger and also darker , Default 1.30." -#define radius1 0.793 // 0.0 to 8.0 "Default 0.793 , will affect FX." -#define radius2 0.87 // 0.0 to 8.0 "Default 0.87 , will affect FX." -//----------------------------------------------------------- - -//End of adjustable values - -//########################################################### - -//Do not edit under this line. -const float sat = 0.0; -const vec3 FogColor = vec3(0.0, 0.0, 0.0); //defog Color"; - -uniform ivec4 uf_remappedPS[1]; -layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0xf46ac800 res 320x180x1 dim 1 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x5) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 2 2 2 border: 1 -layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0xf5c7b800 res 1280x720x1 dim 1 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in vec4 passParameterSem0; -layout(location = 0) out vec4 passPixelColor0; -uniform vec2 uf_fragCoordScale; -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } - -//ToneMapping - -vec3 TonemapPass(vec3 inputColor) { - vec3 color = inputColor; - color = clamp(color - defog * FogColor * 2.55, 0.0, 1.0); // defog - color *= exposure/(1.0+ color / exposure); - - const vec3 coefLuma = vec3(0.2126, 0.7152, 0.0722); - float lum = dot(coefLuma, color); - - float L = clamp(10.0 * (lum - 0.45), 0.0, 1.0); - vec3 A2 = Bleach * color; - - vec3 result1 = 2.0f * color * lum; - vec3 result2 = 1.0f - 2.0f * (1.0f - lum) * (1.0f - color); - - vec3 newColor = mix(result1, result2, L); - vec3 mixRGB = A2 * newColor; - color += ((1.0f - A2) * mixRGB); - - vec3 middlegray = vec3(dot(color, vec3(1.0 / 3.0))); - vec3 diffcolor = color - middlegray; - color = (color + diffcolor * sat) / (1 + (diffcolor * sat)); // saturation - - return color; -} - -//TECHNICOLOR2 - -vec3 Technicolor2(vec3 inputColor) { - vec3 color = inputColor; - vec3 Color_Strength = vec3(Technicolor2_Red_Strength, Technicolor2_Green_Strength, Technicolor2_Blue_Strength); - vec3 source = color; - vec3 temp = 1.0 - source; - vec3 target = temp.grg; - vec3 target2 = temp.bbr; - vec3 temp2 = source * target; - temp2 *= target2; - - temp = temp2 * Color_Strength; - temp2 *= Technicolor2_Brightness; - - target = temp.grg; - target2 = temp.bbr; - - temp = source - target; - temp += temp2; - temp2 = temp - target2; - - color = mix(source, temp2, Technicolor2_Strength); - - color = mix(vec3(dot(color, vec3(0.333))), color, Technicolor2_Saturation); - - return color; -} - -//LumaShapening - -#define px (1.0/1280.0*uf_fragCoordScale.x) -#define py (1.0/720.0*uf_fragCoordScale.y) -#define CoefLuma vec3(0.2126, 0.7152, 0.0722) - -float lumasharping(sampler2D tex, vec2 pos){ - vec4 colorInput = texture(tex, pos); - - vec3 ori = colorInput.rgb; - - // -- Combining the strength and luma multipliers -- - vec3 sharp_strength_luma = (CoefLuma * sharp_strength); - - // -- Gaussian filter -- - // [ .25, .50, .25] [ 1 , 2 , 1 ] - // [ .50, 1, .50] = [ 2 , 4 , 2 ] - // [ .25, .50, .25] [ 1 , 2 , 1 ] - - - //float px = 1.0/tex_size[0]; - //float py = 1.0/tex_size[1]; - - vec3 blur_ori = texture(tex, pos + vec2(px,-py) * 0.5 * offset_bias).rgb; // South East - blur_ori += texture(tex, pos + vec2(-px,-py) * 0.5 * offset_bias).rgb; // South West - blur_ori += texture(tex, pos + vec2(px,py) * 0.5 * offset_bias).rgb; // North East - blur_ori += texture(tex, pos + vec2(-px,py) * 0.5 * offset_bias).rgb; // North West - - blur_ori *= 0.25; // ( /= 4) Divide by the number of texture fetches - - // -- Calculate the sharpening -- - vec3 sharp = ori - blur_ori; //Subtracting the blurred image from the original image - - // -- Adjust strength of the sharpening and clamp it-- - vec4 sharp_strength_luma_clamp = vec4(sharp_strength_luma * (0.5 / sharp_clamp),0.5); //Roll part of the clamp into the dot - - float sharp_luma = clamp((dot(vec4(sharp,1.0), sharp_strength_luma_clamp)), 0.0,1.0 ); //Calculate the luma, adjust the strength, scale up and clamp - sharp_luma = (sharp_clamp * 2.0) * sharp_luma - sharp_clamp; //scale down - - - // -- Combining the values to get the final sharpened pixel -- - - //colorInput.rgb = colorInput.rgb + sharp_luma; // Add the sharpening to the input color. - return sharp_luma; -} - -//Fake High Dynamic Range. - -vec3 HDRPass(sampler2D tex, vec2 pos){ - vec3 color = texture(tex, pos).rgb; - - vec3 bloom_sum1 = texture(tex, pos + vec2(1.5, -1.5) * radius1 * vec2(px,py)).rgb; - bloom_sum1 += texture(tex, pos + vec2(-1.5, -1.5) * radius1 * vec2(px,py)).rgb; - bloom_sum1 += texture(tex, pos + vec2( 1.5, 1.5) * radius1 * vec2(px,py)).rgb; - bloom_sum1 += texture(tex, pos + vec2(-1.5, 1.5) * radius1 * vec2(px,py)).rgb; - bloom_sum1 += texture(tex, pos + vec2( 0.0, -2.5) * radius1 * vec2(px,py)).rgb; - bloom_sum1 += texture(tex, pos + vec2( 0.0, 2.5) * radius1 * vec2(px,py)).rgb; - bloom_sum1 += texture(tex, pos + vec2(-2.5, 0.0) * radius1 * vec2(px,py)).rgb; - bloom_sum1 += texture(tex, pos + vec2( 2.5, 0.0) * radius1 * vec2(px,py)).rgb; - - bloom_sum1 *= 0.005; - - vec3 bloom_sum2 = texture(tex, pos + vec2(1.5, -1.5) * radius2 * vec2(px,py)).rgb; - bloom_sum2 += texture(tex, pos + vec2(-1.5, -1.5) * radius2 * vec2(px,py)).rgb; - bloom_sum2 += texture(tex, pos + vec2( 1.5, 1.5) * radius2 * vec2(px,py)).rgb; - bloom_sum2 += texture(tex, pos + vec2(-1.5, 1.5) * radius2 * vec2(px,py)).rgb; - bloom_sum2 += texture(tex, pos + vec2( 0.0, -2.5) * radius2 * vec2(px,py)).rgb; - bloom_sum2 += texture(tex, pos + vec2( 0.0, 2.5) * radius2 * vec2(px,py)).rgb; - bloom_sum2 += texture(tex, pos + vec2(-2.5, 0.0) * radius2 * vec2(px,py)).rgb; - bloom_sum2 += texture(tex, pos + vec2( 2.5, 0.0) * radius2 * vec2(px,py)).rgb; - - bloom_sum2 *= 0.010; - - float dist = radius2 - radius1; - vec3 HDR = (color + (bloom_sum2 - bloom_sum1)) * dist; - - vec3 blend = HDR + color; - color = pow(abs(blend), vec3(abs(HDRPower))) + HDR; - - return color; -} - -void main() -{ -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); -vec4 R123f = vec4(0.0); -vec4 R125f = vec4(0.0); -vec4 R126f = vec4(0.0); -vec4 R127f = vec4(0.0); -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0f = passParameterSem0; -R1f.xyz = (texture(textureUnitPS0, R0f.xy).xyz); -R1f.xyz *= bloomFactor; -R0f.xyz = HDRPass(textureUnitPS1, passParameterSem0.xy); -float smask = lumasharping(textureUnitPS1, passParameterSem0.xy); -R0f.xyz += vec3(smask); -// 0 -R126f.x = R1f.x + R0f.x; -PV0f.x = R126f.x; -R127f.y = R1f.y + R0f.y; -PV0f.y = R127f.y; -R126f.z = R1f.z + R0f.z; -PV0f.z = R126f.z; -R125f.w = 1.0; -// 1 -tempf.x = dot(vec4(PV0f.x,PV0f.y,PV0f.z,-0.0),vec4(intBitsToFloat(0x3e99096c),intBitsToFloat(0x3f162b6b),intBitsToFloat(0x3dea4a8c),0.0)); -PV1f.x = tempf.x; -PV1f.y = tempf.x; -PV1f.z = tempf.x; -PV1f.w = tempf.x; -// 2 -R127f.x = -(R127f.y) * intBitsToFloat(0x3fb8aa3b); -PV0f.y = -(PV1f.x) * intBitsToFloat(0x3fb8aa3b); -R127f.z = -(R126f.x) * intBitsToFloat(0x3fb8aa3b); -R127f.w = -(R126f.z) * intBitsToFloat(0x3fb8aa3b); -R126f.w = 1.0 / PV1f.x; -PS0f = R126f.w; -// 3 -PS1f = exp2(PV0f.y); -// 4 -PV0f.x = -(PS1f) + 1.0; -PS0f = exp2(R127f.x); -// 5 -R127f.x = -(PS0f) + 1.0; -R126f.y = mul_nonIEEE(PV0f.x, PV0f.x); -PV1f.z = PV0f.x * R126f.w; -PS1f = exp2(R127f.w); -// 6 -backupReg0f = R126f.x; -backupReg1f = R127f.z; -R126f.x = mul_nonIEEE(backupReg0f, PV1f.z); -PV0f.y = -(PS1f) + 1.0; -R127f.z = mul_nonIEEE(R126f.z, PV1f.z); -PV0f.z = R127f.z; -R127f.w = mul_nonIEEE(R127f.y, PV1f.z); -PV0f.w = R127f.w; -PS0f = exp2(backupReg1f); -// 7 -PV1f.x = R127f.x + -(PV0f.w); -PV1f.y = PV0f.y + -(PV0f.z); -PV1f.w = -(PS0f) + 1.0; -// 8 -backupReg0f = R127f.z; -R127f.x = (mul_nonIEEE(PV1f.x,R126f.y) + R127f.w); -R127f.x = clamp(R127f.x, 0.0, 1.0); -PV0f.x = R127f.x; -PV0f.y = PV1f.w + -(R126f.x); -R127f.z = (mul_nonIEEE(PV1f.y,R126f.y) + backupReg0f); -R127f.z = clamp(R127f.z, 0.0, 1.0); -PV0f.z = R127f.z; -// 9 -backupReg0f = R126f.x; -R126f.x = (mul_nonIEEE(PV0f.y,R126f.y) + backupReg0f); -R126f.x = clamp(R126f.x, 0.0, 1.0); -PV1f.x = R126f.x; -R126f.y = max(PV0f.x, PV0f.z); -PV1f.w = min(PV0f.x, PV0f.z); -// 10 -tempf.x = dot(vec4(PV1f.x,R127f.x,R127f.z,R125f.w),vec4(intBitsToFloat(0x3f2aaaab),intBitsToFloat(0x3f2aaaab),intBitsToFloat(0x3f2aaaab),-(1.0))); -PV0f.x = tempf.x; -PV0f.y = tempf.x; -PV0f.z = tempf.x; -PV0f.w = tempf.x; -R126f.z = min(PV1f.x, PV1f.w); -PS0f = R126f.z; -// 11 -backupReg0f = R127f.x; -backupReg1f = R127f.z; -R127f.x = max(R126f.x, R126f.y); -PV1f.x = R127f.x; -R123f.y = (mul_nonIEEE(-(PV0f.x),PV0f.x) + 1.0); -PV1f.y = R123f.y; -R127f.z = backupReg0f + -(PS0f); -R125f.w = R126f.x + -(PS0f); -R126f.y = backupReg1f + -(PS0f); -PS1f = R126f.y; -// 12 -R126f.x = (mul_nonIEEE(PV1f.y,intBitsToFloat(uf_remappedPS[0].y)) + intBitsToFloat(uf_remappedPS[0].x)); -PV0f.x = R126f.x; -PV0f.y = -(R126f.z) + PV1f.x; -// 13 -R123f.w = (mul_nonIEEE(-(PV0f.x),PV0f.y) + R127f.x); -PV1f.w = R123f.w; -// 14 -R0f.x = (mul_nonIEEE(R126f.x,R125f.w) + PV1f.w); -R0f.y = (mul_nonIEEE(R126f.x,R127f.z) + PV1f.w); -R0f.z = (mul_nonIEEE(R126f.x,R126f.y) + PV1f.w); - -passPixelColor0 = vec4(R0f.x, R0f.y, R0f.z, R0f.w); - -vec3 color = (passPixelColor0.xyz); -float luminance = color.r*intBitsToFloat(0x3e99096c) + color.g*intBitsToFloat(0x3f162b6b) + color.b*intBitsToFloat(0x3dea4a8c); -float mn = min(min(color.r, color.g), color.b); -float mx = max(max(color.r, color.g), color.b); -float sat = (1.0-(mx - mn)) * (1.0-mx) * luminance * 5.0; -vec3 lightness = vec3((mn + mx)/2.0); -color = TonemapPass(color); -color = Technicolor2(color); -color = pow(color, vec3(1.0 / gamma)); -color = mix(color, mix(color, lightness, -vibrance), sat); -passPixelColor0 = vec4(color, R0f.w); -} \ No newline at end of file diff --git a/Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.txt.brighter b/Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.txt.brighter deleted file mode 100644 index b4c0f52b..00000000 --- a/Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.txt.brighter +++ /dev/null @@ -1,404 +0,0 @@ -#version 420 -#extension GL_ARB_texture_gather : enable - -// shader bd8bba59e2149449 - -// Possible problems -// Being below 1.3.0 will give you double-vision with recent graphic packs. Update to 1.3.0 or above. -// If you're experiencing any issues (due to having the previous Clarity shaders installed), please remove and redownload all of the BotW packs. - -// Credit to NAVras for merging to a better shader. -// Thank you NAVras for debugging and answering silly questions. -// Thank you to Kiri for everything. -// Credit to getdls for adding exposure & Original Contrasty. - -// Clarity GFX -// Credit to Jamie for main coding / Porting SweetFX/Reshade to Cemu. -// Credit to Kiri coding & logic. -// Credit to Serfrost for preset values. -// Credit to Sweet FX Reshade Team for there shaders which this is based on. -// Original shader dumped using cemu 1.10.0f, BotW 1.3.1 -//v0.9 - -//########################################################## - -//ToneMapping -float bloomFactor = 0.30; //Default is 1.0 -float Bleach = 0.0002; //Default is 0.0 -float exposure = 1.20; //Default is 1.0 -float defog = 0.003; //Default is 0.0 -float vibrance = -0.165; //Default is 0.0 - -//Lift Gamma Gain -#define RGB_Lift vec3(1.00, 1.00, 1.00) //[0.0 to 2.0] Adjust shadows for Red, Green and Blue. -#define RGB_Gamma vec3(0.90, 0.90, 0.90) //[0.0 to 2.0] Adjust midtones for Red, Green and Blue -#define RGB_Gain vec3(1.00, 1.00, 1.00) //[0.0 to 2.0] Adjust highlights for Red, Green and Blue -//Note that a value of 1.0 is a neutral setting that leave the color unchanged. - -//Curves -float Contrast = 0.80; //[-1.0, 1.0] The amount of contrast you want - -// Levels controls -const int BlackPoint = 0; //[0, 255] The black point is the new black - literally. Everything darker than this will become completely black -const int WhitePoint = 255; //[0, 255] The new white point. Everything brighter than this becomes completely white - -//LumaSharpening -#define sharp_strength 0.60 //[0.10 to 3.00] Strength of the sharpening Default is 0.65 -#define sharp_clamp 0.060 //[0.000 to 1.000] Limits maximum amount of sharpening a pixel recieves - Default is 0.035 - -//Advanced sharpening settings -#define offset_bias 1.0 //[0.0 to 6.0] Offset bias adjusts the radius of the sampling pattern. - -//Technicolor2 -#define Technicolor2_Red_Strength 0.0 //Default is 0.0 -#define Technicolor2_Green_Strength 0.0 //Default is 0.0 -#define Technicolor2_Blue_Strength 0.0 //Default is 0.0 -#define Technicolor2_Brightness 0.95 //Default is 1.0 -#define Technicolor2_Strength 0.40 //Default is 1.0 -#define Technicolor2_Saturation 0.75 //Default is 1.0 - -//Fake High Dynamic Range. -#define HDRPower 1.20 // 0.0 to 8.0 "Raising this seems to make the effect stronger and also darker , Default 1.30." -#define radius1 0.793 // 0.0 to 8.0 "Default 0.793 , will affect FX." -#define radius2 0.87 // 0.0 to 8.0 "Default 0.87 , will affect FX." - -//########################################################### - -//Do not edit under this line. - -float sat = 0.0; - -const vec3 FogColor = vec3(0.0, 1.03, 0.0); //defog Color"; - -uniform ivec4 uf_remappedPS[1]; -layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0xf46ac800 res 320x180x1 dim 1 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x5) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 2 2 2 border: 1 -layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0xf5c7b800 res 1280x720x1 dim 1 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 2 2 2 border: 1 -layout(location = 0) in vec4 passParameterSem0; -layout(location = 0) out vec4 passPixelColor0; -uniform vec2 uf_fragCoordScale; -int clampFI32(int v) -{ -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); -} -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } - -//ToneMapping - -vec3 TonemapPass(vec3 inputColor) { - vec3 color = inputColor; - color = clamp(color - defog * FogColor * 2.55, 0.0, 1.0); // defog - color *= exposure/(1.0+ color / exposure); - - const vec3 coefLuma = vec3(0.2126, 0.7152, 0.0722); - float lum = dot(coefLuma, color); - - float L = clamp(10.0 * (lum - 0.45), 0.0, 1.0); - vec3 A2 = Bleach * color; - - vec3 result1 = 2.0f * color * lum; - vec3 result2 = 1.0f - 2.0f * (1.0f - lum) * (1.0f - color); - - vec3 newColor = mix(result1, result2, L); - vec3 mixRGB = A2 * newColor; - color += ((1.0f - A2) * mixRGB); - - vec3 middlegray = vec3(dot(color, vec3(1.0 / 3.0))); - vec3 diffcolor = color - middlegray; - color = (color + diffcolor * sat) / (1 + (diffcolor * sat)); // saturation - - return color; -} - -vec3 LevelsPass(vec3 inputColor) { - float black_point_float = BlackPoint / 255.0; - float white_point_float = WhitePoint == BlackPoint ? (255.0 / 0.00025) : (255.0 / (WhitePoint - BlackPoint)); // Avoid division by zero if the white and black point are the same - - vec3 color = inputColor; - color = color * white_point_float - (black_point_float * white_point_float); - - return color; -} - -//Curves - -vec3 CurvesPass(vec3 inputColor) { - vec3 colorInput = inputColor; - float Contrast_blend = Contrast * 2.0; //I multiply by two to give it a strength closer to the other curves. - vec3 x = colorInput.rgb; //if the curve should be applied to both Luma and Chroma - x = x * (x * (1.5 - x) + 0.5); //horner form - fastest version - vec3 color = x; //if the curve should be applied to both Luma and Chroma - colorInput.rgb = mix(colorInput.rgb, color, Contrast_blend); //Blend by Contrast - return colorInput; -} - - -//TECHNICOLOR2 - -vec3 Technicolor2(vec3 inputColor) { - vec3 color = inputColor; - vec3 Color_Strength = vec3(Technicolor2_Red_Strength, Technicolor2_Green_Strength, Technicolor2_Blue_Strength); - vec3 source = color; - vec3 temp = 1.0 - source; - vec3 target = temp.grg; - vec3 target2 = temp.bbr; - vec3 temp2 = source * target; - temp2 *= target2; - - temp = temp2 * Color_Strength; - temp2 *= Technicolor2_Brightness; - - target = temp.grg; - target2 = temp.bbr; - - temp = source - target; - temp += temp2; - temp2 = temp - target2; - - color = mix(source, temp2, Technicolor2_Strength); - - color = mix(vec3(dot(color, vec3(0.333))), color, Technicolor2_Saturation); - - return color; -} - -//Lift Gamma Gain - - vec3 LiftGammaGainPass( vec3 colorInput ) -{ - // -- Get input -- - vec3 color = colorInput.rgb; - - // -- Lift -- - //color = color + (RGB_Lift / 2.0 - 0.5) * (1.0 - color); - color = color * (1.5-0.5 * RGB_Lift) + 0.5 * RGB_Lift - 0.5; - color = clamp(color, 0.0, 1. ); //isn't strictly necessary, but doesn't cost performance. - - // -- Gain -- - color *= RGB_Gain; - - // -- Gamma -- - colorInput.rgb = pow(color, 1.0 / RGB_Gamma); //Gamma - - // -- Return output -- - //return (colorInput); - return clamp(color, 0.0, 1. ); -} - - -//LumaShapening - -#define px (1.0/1280.0*uf_fragCoordScale.x) -#define py (1.0/720.0*uf_fragCoordScale.y) -#define CoefLuma vec3(0.2126, 0.7152, 0.0722) - -float lumasharping(sampler2D tex, vec2 pos){ - vec4 colorInput = texture(tex, pos); - - vec3 ori = colorInput.rgb; - - // -- Combining the strength and luma multipliers -- - vec3 sharp_strength_luma = (CoefLuma * sharp_strength); - - // -- Gaussian filter -- - // [ .25, .50, .25] [ 1 , 2 , 1 ] - // [ .50, 1, .50] = [ 2 , 4 , 2 ] - // [ .25, .50, .25] [ 1 , 2 , 1 ] - - - //float px = 1.0/tex_size[0]; - //float py = 1.0/tex_size[1]; - - vec3 blur_ori = texture(tex, pos + vec2(px,-py) * 0.5 * offset_bias).rgb; // South East - blur_ori += texture(tex, pos + vec2(-px,-py) * 0.5 * offset_bias).rgb; // South West - blur_ori += texture(tex, pos + vec2(px,py) * 0.5 * offset_bias).rgb; // North East - blur_ori += texture(tex, pos + vec2(-px,py) * 0.5 * offset_bias).rgb; // North West - - blur_ori *= 0.25; // ( /= 4) Divide by the number of texture fetches - - // -- Calculate the sharpening -- - vec3 sharp = ori - blur_ori; //Subtracting the blurred image from the original image - - // -- Adjust strength of the sharpening and clamp it-- - vec4 sharp_strength_luma_clamp = vec4(sharp_strength_luma * (0.5 / sharp_clamp),0.5); //Roll part of the clamp into the dot - - float sharp_luma = clamp((dot(vec4(sharp,1.0), sharp_strength_luma_clamp)), 0.0,1.0 ); //Calculate the luma, adjust the strength, scale up and clamp - sharp_luma = (sharp_clamp * 2.0) * sharp_luma - sharp_clamp; //scale down - - - // -- Combining the values to get the final sharpened pixel -- - - //colorInput.rgb = colorInput.rgb + sharp_luma; // Add the sharpening to the input color. - return sharp_luma; -} - -//Fake High Dynamic Range. - -vec3 HDRPass(sampler2D tex, vec2 pos){ - vec3 color = texture(tex, pos).rgb; - - vec3 bloom_sum1 = texture(tex, pos + vec2(1.5, -1.5) * radius1 * vec2(px,py)).rgb; - bloom_sum1 += texture(tex, pos + vec2(-1.5, -1.5) * radius1 * vec2(px,py)).rgb; - bloom_sum1 += texture(tex, pos + vec2( 1.5, 1.5) * radius1 * vec2(px,py)).rgb; - bloom_sum1 += texture(tex, pos + vec2(-1.5, 1.5) * radius1 * vec2(px,py)).rgb; - bloom_sum1 += texture(tex, pos + vec2( 0.0, -2.5) * radius1 * vec2(px,py)).rgb; - bloom_sum1 += texture(tex, pos + vec2( 0.0, 2.5) * radius1 * vec2(px,py)).rgb; - bloom_sum1 += texture(tex, pos + vec2(-2.5, 0.0) * radius1 * vec2(px,py)).rgb; - bloom_sum1 += texture(tex, pos + vec2( 2.5, 0.0) * radius1 * vec2(px,py)).rgb; - - bloom_sum1 *= 0.005; - - vec3 bloom_sum2 = texture(tex, pos + vec2(1.5, -1.5) * radius2 * vec2(px,py)).rgb; - bloom_sum2 += texture(tex, pos + vec2(-1.5, -1.5) * radius2 * vec2(px,py)).rgb; - bloom_sum2 += texture(tex, pos + vec2( 1.5, 1.5) * radius2 * vec2(px,py)).rgb; - bloom_sum2 += texture(tex, pos + vec2(-1.5, 1.5) * radius2 * vec2(px,py)).rgb; - bloom_sum2 += texture(tex, pos + vec2( 0.0, -2.5) * radius2 * vec2(px,py)).rgb; - bloom_sum2 += texture(tex, pos + vec2( 0.0, 2.5) * radius2 * vec2(px,py)).rgb; - bloom_sum2 += texture(tex, pos + vec2(-2.5, 0.0) * radius2 * vec2(px,py)).rgb; - bloom_sum2 += texture(tex, pos + vec2( 2.5, 0.0) * radius2 * vec2(px,py)).rgb; - - bloom_sum2 *= 0.010; - - float dist = radius2 - radius1; - vec3 HDR = (color + (bloom_sum2 - bloom_sum1)) * dist; - - vec3 blend = HDR + color; - color = pow(abs(blend), vec3(abs(HDRPower))) + HDR; - - return color; -} - -void main() -{ -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); -vec4 R123f = vec4(0.0); -vec4 R125f = vec4(0.0); -vec4 R126f = vec4(0.0); -vec4 R127f = vec4(0.0); -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0f = passParameterSem0; -R1f.xyz = (texture(textureUnitPS0, R0f.xy).xyz); -R1f.xyz *= bloomFactor; -R0f.xyz = HDRPass(textureUnitPS1, passParameterSem0.xy); -float smask = lumasharping(textureUnitPS1, passParameterSem0.xy); -R0f.xyz += vec3(smask); -// 0 -R126f.x = R1f.x + R0f.x; -PV0f.x = R126f.x; -R127f.y = R1f.y + R0f.y; -PV0f.y = R127f.y; -R126f.z = R1f.z + R0f.z; -PV0f.z = R126f.z; -R125f.w = 1.0; -// 1 -tempf.x = dot(vec4(PV0f.x,PV0f.y,PV0f.z,-0.0),vec4(intBitsToFloat(0x3e99096c),intBitsToFloat(0x3f162b6b),intBitsToFloat(0x3dea4a8c),0.0)); -PV1f.x = tempf.x; -PV1f.y = tempf.x; -PV1f.z = tempf.x; -PV1f.w = tempf.x; -// 2 -R127f.x = -(R127f.y) * intBitsToFloat(0x3fb8aa3b); -PV0f.y = -(PV1f.x) * intBitsToFloat(0x3fb8aa3b); -R127f.z = -(R126f.x) * intBitsToFloat(0x3fb8aa3b); -R127f.w = -(R126f.z) * intBitsToFloat(0x3fb8aa3b); -R126f.w = 1.0 / PV1f.x; -PS0f = R126f.w; -// 3 -PS1f = exp2(PV0f.y); -// 4 -PV0f.x = -(PS1f) + 1.0; -PS0f = exp2(R127f.x); -// 5 -R127f.x = -(PS0f) + 1.0; -R126f.y = mul_nonIEEE(PV0f.x, PV0f.x); -PV1f.z = PV0f.x * R126f.w; -PS1f = exp2(R127f.w); -// 6 -backupReg0f = R126f.x; -backupReg1f = R127f.z; -R126f.x = mul_nonIEEE(backupReg0f, PV1f.z); -PV0f.y = -(PS1f) + 1.0; -R127f.z = mul_nonIEEE(R126f.z, PV1f.z); -PV0f.z = R127f.z; -R127f.w = mul_nonIEEE(R127f.y, PV1f.z); -PV0f.w = R127f.w; -PS0f = exp2(backupReg1f); -// 7 -PV1f.x = R127f.x + -(PV0f.w); -PV1f.y = PV0f.y + -(PV0f.z); -PV1f.w = -(PS0f) + 1.0; -// 8 -backupReg0f = R127f.z; -R127f.x = (mul_nonIEEE(PV1f.x,R126f.y) + R127f.w); -R127f.x = clamp(R127f.x, 0.0, 1.0); -PV0f.x = R127f.x; -PV0f.y = PV1f.w + -(R126f.x); -R127f.z = (mul_nonIEEE(PV1f.y,R126f.y) + backupReg0f); -R127f.z = clamp(R127f.z, 0.0, 1.0); -PV0f.z = R127f.z; -// 9 -backupReg0f = R126f.x; -R126f.x = (mul_nonIEEE(PV0f.y,R126f.y) + backupReg0f); -R126f.x = clamp(R126f.x, 0.0, 1.0); -PV1f.x = R126f.x; -R126f.y = max(PV0f.x, PV0f.z); -PV1f.w = min(PV0f.x, PV0f.z); -// 10 -tempf.x = dot(vec4(PV1f.x,R127f.x,R127f.z,R125f.w),vec4(intBitsToFloat(0x3f2aaaab),intBitsToFloat(0x3f2aaaab),intBitsToFloat(0x3f2aaaab),-(1.0))); -PV0f.x = tempf.x; -PV0f.y = tempf.x; -PV0f.z = tempf.x; -PV0f.w = tempf.x; -R126f.z = min(PV1f.x, PV1f.w); -PS0f = R126f.z; -// 11 -backupReg0f = R127f.x; -backupReg1f = R127f.z; -R127f.x = max(R126f.x, R126f.y); -PV1f.x = R127f.x; -R123f.y = (mul_nonIEEE(-(PV0f.x),PV0f.x) + 1.0); -PV1f.y = R123f.y; -R127f.z = backupReg0f + -(PS0f); -R125f.w = R126f.x + -(PS0f); -R126f.y = backupReg1f + -(PS0f); -PS1f = R126f.y; -// 12 -R126f.x = (mul_nonIEEE(PV1f.y,intBitsToFloat(uf_remappedPS[0].y)) + intBitsToFloat(uf_remappedPS[0].x)); -PV0f.x = R126f.x; -PV0f.y = -(R126f.z) + PV1f.x; -// 13 -R123f.w = (mul_nonIEEE(-(PV0f.x),PV0f.y) + R127f.x); -PV1f.w = R123f.w; -// 14 -R0f.x = (mul_nonIEEE(R126f.x,R125f.w) + PV1f.w); -R0f.y = (mul_nonIEEE(R126f.x,R127f.z) + PV1f.w); -R0f.z = (mul_nonIEEE(R126f.x,R126f.y) + PV1f.w); - -passPixelColor0 = vec4(R0f.x, R0f.y, R0f.z, R0f.w); - -vec3 color = (passPixelColor0.xyz); -float luminance = color.r*intBitsToFloat(0x3e99096c) + color.g*intBitsToFloat(0x3f162b6b) + color.b*intBitsToFloat(0x3dea4a8c); -float mn = min(min(color.r, color.g), color.b); -float mx = max(max(color.r, color.g), color.b); -vec3 lightness = vec3((mn + mx)/2.0); -color = TonemapPass(color); -color = Technicolor2(color); -color = LevelsPass(color); -color = CurvesPass(color); -color = mix(color, mix(color, lightness, -vibrance), sat); -color = LiftGammaGainPass(color); -passPixelColor0 = vec4(color, R0f.w); -} \ No newline at end of file From b95938b9f319e21c112d6ba1a9962762c1b4e020 Mon Sep 17 00:00:00 2001 From: Jamie Date: Wed, 8 Nov 2017 01:41:23 -0800 Subject: [PATCH 18/34] Clarity GFX Fixed Bloom issues and a few other things with ToneMapping and Clamping. --- .../bd8bba59e2149449_00000000000003c9_ps.txt | 18 ++++++++---------- 1 file changed, 8 insertions(+), 10 deletions(-) diff --git a/Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.txt b/Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.txt index dae9c082..54098889 100644 --- a/Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.txt +++ b/Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.txt @@ -24,9 +24,9 @@ //########################################################## //ToneMapping -float bloomFactor = 0.35; //Default is 1.0 +float bloomFactor = 0.30; //Default is 1.0 float Bleach = 0.0002; //Default is 0.0 -float exposure = 1.25; //Default is 1.0 +float exposure = 2.00; //Default is 1.0 float defog = 0.003; //Default is 0.0 //Lift Gamma Gain @@ -36,7 +36,7 @@ float defog = 0.003; //Default is 0.0 //Note that a value of 1.0 is a neutral setting that leave the color unchanged. //Curves -float Contrast = 0.80; //[-1.0, 1.0] The amount of contrast you want +float Contrast = 0.00; //[-1.0, 1.0] The amount of contrast you want //Levels Control const int BlackPoint = 0; //[0, 255] The black point is the new black - literally. Everything darker than this will become completely black @@ -55,10 +55,10 @@ const int WhitePoint = 255; //[0, 255] The new white point. Everything brighter #define Technicolor2_Blue_Strength 0.0 //Default is 0.0 #define Technicolor2_Brightness 0.95 //Default is 1.0 #define Technicolor2_Strength 0.40 //Default is 1.0 -#define Technicolor2_Saturation 0.85 //Default is 1.0 +#define Technicolor2_Saturation 0.75 //Default is 1.0 //Fake High Dynamic Range. -#define HDRPower 1.20 // 0.0 to 8.0 "Raising this seems to make the effect stronger and also darker , Default 1.30." +#define HDRPower 1.25 // 0.0 to 8.0 "Raising this seems to make the effect stronger and also darker , Default 1.30." #define radius1 0.793 // 0.0 to 8.0 "Default 0.793 , will affect FX." #define radius2 0.87 // 0.0 to 8.0 "Default 0.87 , will affect FX." @@ -90,7 +90,7 @@ float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; retu vec3 TonemapPass(vec3 inputColor) { vec3 color = inputColor; - color = (color - defog * FogColor * 2.55); + color = (color - defog * FogColor * 2.55); color *= exposure/(1.0+ color / exposure); const vec3 coefLuma = vec3(0.2126, 0.7152, 0.0722); @@ -292,9 +292,7 @@ bool predResult = true; vec3 cubeMapSTM; int cubeMapFaceId; R0f = passParameterSem0; -R1f.xyz = (texture(textureUnitPS0, R0f.xy).xyz); -vec3 bloom = texture(textureUnitPS0, passParameterSem0.xy).xyz; -bloom *= bloomFactor; +vec4 colorBloom = texture(textureUnitPS0, passParameterSem0.xy); R0f.xyz = HDRPass(textureUnitPS1, passParameterSem0.xy); float smask = lumasharping(textureUnitPS1, passParameterSem0.xy); R0f.xyz += vec3(smask); @@ -393,7 +391,7 @@ R0f.z = (mul_nonIEEE(R126f.x,R126f.y) + PV1f.w); passPixelColor0 = vec4(R0f.x, R0f.y, R0f.z, R0f.w); vec3 color = (passPixelColor0.xyz); -color += bloom; +color += vec3(colorBloom) * bloomFactor; color = TonemapPass(color); color = Technicolor2(color); color = LevelsPass(color); From d8e6907007c3be208962432f597c92e25631f89c Mon Sep 17 00:00:00 2001 From: Jamie Date: Wed, 8 Nov 2017 02:16:52 -0800 Subject: [PATCH 19/34] Clarity GFX Uploaded with the wrong Values Corrected. --- .../bd8bba59e2149449_00000000000003c9_ps.txt | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.txt b/Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.txt index 54098889..c226854d 100644 --- a/Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.txt +++ b/Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.txt @@ -24,9 +24,9 @@ //########################################################## //ToneMapping -float bloomFactor = 0.30; //Default is 1.0 +float bloomFactor = 0.35; //Default is 1.0 float Bleach = 0.0002; //Default is 0.0 -float exposure = 2.00; //Default is 1.0 +float exposure = 1.25; //Default is 1.0 float defog = 0.003; //Default is 0.0 //Lift Gamma Gain @@ -55,10 +55,10 @@ const int WhitePoint = 255; //[0, 255] The new white point. Everything brighter #define Technicolor2_Blue_Strength 0.0 //Default is 0.0 #define Technicolor2_Brightness 0.95 //Default is 1.0 #define Technicolor2_Strength 0.40 //Default is 1.0 -#define Technicolor2_Saturation 0.75 //Default is 1.0 +#define Technicolor2_Saturation 0.85 //Default is 1.0 //Fake High Dynamic Range. -#define HDRPower 1.25 // 0.0 to 8.0 "Raising this seems to make the effect stronger and also darker , Default 1.30." +#define HDRPower 1.20 // 0.0 to 8.0 "Raising this seems to make the effect stronger and also darker , Default 1.30." #define radius1 0.793 // 0.0 to 8.0 "Default 0.793 , will affect FX." #define radius2 0.87 // 0.0 to 8.0 "Default 0.87 , will affect FX." From 82f206c67f8f0fed4deb510896b990c5ba20cb92 Mon Sep 17 00:00:00 2001 From: NAVras-Z Date: Wed, 8 Nov 2017 21:33:33 +0800 Subject: [PATCH 20/34] [BotW] update contrasty clamp now also with exposure... filmic refine the same way as botw contrasty use reshade vibrance because they look almost identical --- .../bd8bba59e2149449_00000000000003c9_ps.txt | 82 +++++++------------ 1 file changed, 29 insertions(+), 53 deletions(-) diff --git a/Enhancement/BreathOfTheWild_Contrasty/bd8bba59e2149449_00000000000003c9_ps.txt b/Enhancement/BreathOfTheWild_Contrasty/bd8bba59e2149449_00000000000003c9_ps.txt index 82a882a7..2bb14fbe 100644 --- a/Enhancement/BreathOfTheWild_Contrasty/bd8bba59e2149449_00000000000003c9_ps.txt +++ b/Enhancement/BreathOfTheWild_Contrasty/bd8bba59e2149449_00000000000003c9_ps.txt @@ -5,37 +5,29 @@ /*=============================Settings=====================================*/ #define adjust_bloom 1 // 0: disable, 1: enable. -const float bloomFactor = 0.7; // 1.0 is neutral +const float bloomFactor = 0.7; // 1.0 is neutral [0,1+] -#define tone_mapping 0 -// -1: disable, clamp bright detail but keep [0,1] intact, however clamping could lead to desaturation as well +#define tone_mapping 1 +// -1: disable, loss of bright detail/color but keep [0,1] intact // 0: (Wii U) BotW original // 1: ACES Filmic -//--------------------"ACES Filmic" Parameters-----------------// +//---------------"ACES Filmic","disable" Parameters-------------// const float Exposure = 0.6; // [0.0, 1.0+] Adjust exposure //---------------------------------------------------------------// -#define post_process 2 +#define post_process 0 // -1: disable // 0: (Wii U) BotW original, only vibrance -// 1: Reshade Vibrance -// 2: Contrasty -// 3: Experimental, convert rgb to hsv then adjust saturation directly +// 1: Contrasty //----------------"BotW original" vibrance adjust-------------// -const float satFactor = 0.29; // 0.18 is neutral. Experimental, adjust native saturation -//---------------------------------------------------------------// -//-----------------"Reshade Vibrance" Parameters--------------// -const float Vibrance = 0.40; // Saturates (or desaturates if you use negative values) the pixels depending on their original saturation. -const vec3 VibranceRGBBalance = vec3(1.0,1.0,1.0); // A per channel multiplier to the Vibrance strength so you can give more boost to certain colors over others. +const float satFactor = 0.25; // 0.18 is neutral. Experimental, adjust native saturation //---------------------------------------------------------------// //---------------------"Contrasty" Parameters-----------------// const float gamma = 0.81; // 1.0 is neutral. Botw is already colour graded at this stage const float exposure = 1.17; // 1.0 is neutral -const float vibrance = 0.45; // 0.0 is neutral -const float crushContrast = 0.004; // 0.0 is neutral. Use small increments, loss of shadow detail -//---------------------------------------------------------------// -//------------------------"hsv experiment"---------------------// -const float satScale = 1.5; // 1.0 is neutral +const float vibrance = 0.40; // >0: saturate <0: desaturate +const vec3 vibrance_RGB_balance = vec3(1.0,1.0,1.0); // A per channel multiplier to the Vibrance strength so you can give more boost to certain colors over others. +const float crushContrast = 0.000; // 0.0 is neutral. Use small increments, loss of shadow detail //---------------------------------------------------------------// /*==========================================================================*/ @@ -67,7 +59,12 @@ vec3 BotWToneMap(vec3 color) { vec3 ACESFilm(vec3 color) { color *= Exposure; - return (color*(2.51*color+0.03))/(color*(2.43*color+0.59)+0.14); + float Lumn = getL709(color); + vec4 tm = vec4(color,Lumn); + tm = (tm*(2.51*tm+0.03))/(tm*(2.43*tm+0.59)+0.14); // tonemap + vec3 cpre = tm.w / Lumn * color; + vec3 colorldr = mix(cpre,tm.rgb,vec3(pow(tm.w,2.0)));//refine + return colorldr; } vec3 BotWVibrance(vec3 color) { @@ -84,7 +81,7 @@ vec3 ReshadeVibrance(vec3 color) { float min_color = min(color.r, min(color.g, color.b)); // Find the weakest color float luma = getL709(color); float color_saturation = max_color - min_color; // The difference between the two is the saturation - vec3 coeffVibrance = VibranceRGBBalance * Vibrance; + vec3 coeffVibrance = vibrance_RGB_balance * vibrance; color = mix(vec3(luma), color, 1.0 + (coeffVibrance * (1.0 - (sign(coeffVibrance) * color_saturation)))); return color; } @@ -93,37 +90,20 @@ vec3 Contrasty(vec3 fColour) { fColour = max(vec3(0.0), fColour - vec3(crushContrast)); fColour = clamp(exposure * fColour, 0.0, 1.0); fColour = pow(fColour, vec3(1.0 / gamma)); - float luminance = getL601(fColour); - float mn = min(min(fColour.r, fColour.g), fColour.b); - float mx = max(max(fColour.r, fColour.g), fColour.b); - float sat = (1.0-(mx - mn)) * (1.0-mx) * luminance * 5.0; - vec3 lightness = vec3((mn + mx)/2.0); - // vibrance - fColour = mix(fColour, mix(fColour, lightness, -vibrance), sat); + fColour = ReshadeVibrance(fColour); // reshade's identical, only a little stronger when at same setting return fColour; } -vec3 rgb2hsv(vec3 c) { - vec4 K = vec4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0); - vec4 p = mix(vec4(c.bg, K.wz), vec4(c.gb, K.xy), step(c.b, c.g)); - vec4 q = mix(vec4(p.xyw, c.r), vec4(c.r, p.yzx), step(p.x, c.r)); - - float d = q.x - min(q.w, q.y); - float e = 1.0e-10; - return vec3(abs(q.z + (q.w - q.y) / (6.0 * d + e)), d / (q.x + e), q.x); -} -vec3 hsv2rgb(vec3 c) { - vec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0); - vec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www); - return c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y); -} - -vec3 HSV(vec3 color) { - vec3 hsv = rgb2hsv(color); - hsv.y = pow(hsv.y, 1.0/satScale); - color = hsv2rgb(hsv); - return color; -} +// bad curve, see reshade curves.fx +//vec3 Contrasty2(vec3 color) { +// color = clamp(color,0.0,1.0); +// vec3 dark = pow(color,vec3(1.0/dark_thr)); +// vec3 bright = pow(color,vec3(1.0/bright_thr)); +// float lumn = getL709(color); +// color = mix(dark,bright,lumn); +// color = ReshadeVibrance(color); +// return color; +//} void main() { @@ -137,7 +117,7 @@ bloom *= bloomFactor; color += bloom; #if (tone_mapping == -1) -color = clamp(color,0.0,1.0); +color = clamp(color*Exposure,0.0,1.0); #elif (tone_mapping == 0) color = BotWToneMap(color); #elif (tone_mapping == 1) @@ -147,11 +127,7 @@ color = ACESFilm(color); #if (post_process == 0) color = BotWVibrance(color); #elif (post_process == 1) -color = ReshadeVibrance(color); -#elif (post_process == 2) color = Contrasty(color); -#elif (post_process == 3) -color = HSV(color); #endif // export From 9bb46a31b9964cf80017bde4e74d22ad1747c54b Mon Sep 17 00:00:00 2001 From: Jamie Date: Wed, 8 Nov 2017 17:09:41 -0800 Subject: [PATCH 21/34] Clarity GFX Reversion Tell I can rework a few things with bloom. --- .../bd8bba59e2149449_00000000000003c9_ps.txt | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.txt b/Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.txt index c226854d..a9b1fca6 100644 --- a/Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.txt +++ b/Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.txt @@ -36,7 +36,7 @@ float defog = 0.003; //Default is 0.0 //Note that a value of 1.0 is a neutral setting that leave the color unchanged. //Curves -float Contrast = 0.00; //[-1.0, 1.0] The amount of contrast you want +float Contrast = 0.80; //[-1.0, 1.0] The amount of contrast you want //Levels Control const int BlackPoint = 0; //[0, 255] The black point is the new black - literally. Everything darker than this will become completely black @@ -90,13 +90,13 @@ float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; retu vec3 TonemapPass(vec3 inputColor) { vec3 color = inputColor; - color = (color - defog * FogColor * 2.55); + color = clamp(color - defog * FogColor * 2.55, 0.0, 1.0); // defog color *= exposure/(1.0+ color / exposure); const vec3 coefLuma = vec3(0.2126, 0.7152, 0.0722); float lum = dot(coefLuma, color); - float L = (10.0 * (lum - 0.45)); + float L = clamp(10.0 * (lum - 0.45), 0.0, 1.0); vec3 A2 = Bleach * color; vec3 result1 = 2.0f * color * lum; @@ -292,7 +292,9 @@ bool predResult = true; vec3 cubeMapSTM; int cubeMapFaceId; R0f = passParameterSem0; -vec4 colorBloom = texture(textureUnitPS0, passParameterSem0.xy); +R1f.xyz = (texture(textureUnitPS0, R0f.xy).xyz); +vec3 bloom = texture(textureUnitPS0, passParameterSem0.xy).xyz; +bloom *= bloomFactor; R0f.xyz = HDRPass(textureUnitPS1, passParameterSem0.xy); float smask = lumasharping(textureUnitPS1, passParameterSem0.xy); R0f.xyz += vec3(smask); @@ -391,7 +393,7 @@ R0f.z = (mul_nonIEEE(R126f.x,R126f.y) + PV1f.w); passPixelColor0 = vec4(R0f.x, R0f.y, R0f.z, R0f.w); vec3 color = (passPixelColor0.xyz); -color += vec3(colorBloom) * bloomFactor; +color += bloom; color = TonemapPass(color); color = Technicolor2(color); color = LevelsPass(color); From 500b81c09f615224db014dfb7e863e624eab99c3 Mon Sep 17 00:00:00 2001 From: Milan Date: Thu, 9 Nov 2017 21:35:25 +0100 Subject: [PATCH 22/34] [WindWakerHD] Added half res scaling By popular requests. Needs to be tested first. --- Source/WindWakerHD/rules.txt | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/Source/WindWakerHD/rules.txt b/Source/WindWakerHD/rules.txt index e842a391..49b49706 100644 --- a/Source/WindWakerHD/rules.txt +++ b/Source/WindWakerHD/rules.txt @@ -19,6 +19,12 @@ formatsExcluded = 0x41A # exclude the intro background texture overwriteWidth = overwriteHeight = +[TextureRedefine] # game halfres upscaling +width = 960 +height = 540 +overwriteWidth = +overwriteHeight = + [TextureRedefine] # gamepad rendering resolution width = 854 height = 480 From 1d5ae33a01321cf35ca1a2125a48243bf2804b0d Mon Sep 17 00:00:00 2001 From: Milan Date: Thu, 9 Nov 2017 22:47:48 +0100 Subject: [PATCH 23/34] [WindWakerHD] Add optional half res scaling. Off by default, so be sure to enable it if you want it. --- Source/WindWakerHD/rules.txt | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/Source/WindWakerHD/rules.txt b/Source/WindWakerHD/rules.txt index e842a391..bf5bd6e9 100644 --- a/Source/WindWakerHD/rules.txt +++ b/Source/WindWakerHD/rules.txt @@ -19,6 +19,14 @@ formatsExcluded = 0x41A # exclude the intro background texture overwriteWidth = overwriteHeight = +# Remove the #'s before the overwriteWidth and overwriteHeight to enable this. +# Will affect blurred area's which will result in looking darker. +[TextureRedefine] # game halfres upscaling +width = 960 +height = 540 +#overwriteWidth = +#overwriteHeight = + [TextureRedefine] # gamepad rendering resolution width = 854 height = 480 From 20ea9b085a33237d9442a7e2e2f1a869328924dc Mon Sep 17 00:00:00 2001 From: Jamie Date: Thu, 9 Nov 2017 20:55:21 -0800 Subject: [PATCH 24/34] ClarityGFX Skyrim Preset Upload. --- ...9_00000000000003c9_ps.txt.skyrimpresetbotw | 335 ++++++++++++++++++ 1 file changed, 335 insertions(+) create mode 100644 Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.txt.skyrimpresetbotw diff --git a/Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.txt.skyrimpresetbotw b/Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.txt.skyrimpresetbotw new file mode 100644 index 00000000..5786740b --- /dev/null +++ b/Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.txt.skyrimpresetbotw @@ -0,0 +1,335 @@ +#version 420 +#extension GL_ARB_texture_gather : enable + +// shader bd8bba59e2149449 + +// Possible problems +// Being below 1.3.0 will give you double-vision with recent graphic packs. Update to 1.3.0 or above. +// If you're experiencing any issues (due to having the previous Clarity shaders installed), please remove and redownload all of the BotW packs. + +// Changelog V0.1 +// Changed from shader f14bb_ps.txt to bd8bb_ps.txt + +// Credit to NAVras for merging to a better shader.(specal Note Thank you NAVras, For Helping Debug and answering silly questions.) +// Could not have got this far without you. +// Credit to getdls for adding exposure & Original Contrasty. + +// Clarity GFX +// Credit to Jamie for main coding. +// Credit to Kiri coding & Reshade logic. +// Credit to Serfrost for preset values. +// Original shader dumped using cemu 1.10.0f, BotW 1.3.1 + +// Changelog v0.7 + +//########################################################## + +//ToneMapping +float bloomFactor = 0.33; //Default is 1.0 + +//LumaShapening +#define sharp_strength 0.25 //[0.10 to 3.00] Strength of the sharpening Default is 0.65 +#define sharp_clamp 0.085 //[0.000 to 1.000] Limits maximum amount of sharpening a pixel recieves - Default is 0.035 +//Advanced sharpening settings +#define offset_bias 1.0 //[0.0 to 6.0] Offset bias adjusts the radius of the sampling pattern. + +//Technicolor2 +#define Technicolor2_Red_Strength 0.0 //Default is 0.0 +#define Technicolor2_Green_Strength 0.0 //Default is 0.0 +#define Technicolor2_Blue_Strength 0.0 //Default is 0.0 +#define Technicolor2_Brightness 1.00 //Default is 1.0 +#define Technicolor2_Strength 0.40 //Default is 1.0 +#define Technicolor2_Saturation 0.51 //Default is 1.0 + +//Lift Gamma Gain +#define RGB_Lift vec3(1.0, 1.0, 1.0) //[0.000 to 2.000] Adjust shadows for Red, Green and Blue. +#define RGB_Gamma vec3(0.60, 0.60, 0.60) //[0.000 to 2.000] Adjust midtones for Red, Green and Blue +#define RGB_Gain vec3(1.0, 1.0, 1.0) //[0.000 to 2.000] Adjust highlights for Red, Green and Blue +//Note that a value of 1.0 is a neutral setting that leave the color unchanged. + +//Fake High Dynamic Range. +#define HDRPower 1.20 // 0.0 to 8.0 "Raising this seems to make the effect stronger and also darker , Default 1.30." +#define radius1 0.793 // 0.0 to 8.0 "Default 0.793 , will affect FX." +#define radius2 0.87 // 0.0 to 8.0 "Default 0.87 , will affect FX." +//----------------------------------------------------------- + +//End of adjustable values + +//########################################################### + +//Do not edit under this line. + +uniform ivec4 uf_remappedPS[1]; +layout(binding = 0) uniform sampler2D textureUnitPS0;// Bloom +layout(binding = 1) uniform sampler2D textureUnitPS1;// LumaShapening, HDR +layout(location = 0) in vec4 passParameterSem0; +layout(location = 0) out vec4 passPixelColor0; +uniform vec2 uf_fragCoordScale; +int clampFI32(int v) +{ +if( v == 0x7FFFFFFF ) + return floatBitsToInt(1.0); +else if( v == 0xFFFFFFFF ) + return floatBitsToInt(0.0); +return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); +} +float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } + +//TECHNICOLOR2 + +vec3 Technicolor2(vec3 inputColor) { + vec3 color = inputColor; + vec3 Color_Strength = vec3(Technicolor2_Red_Strength, Technicolor2_Green_Strength, Technicolor2_Blue_Strength); + vec3 source = color; + vec3 temp = 1.0 - source; + vec3 target = temp.grg; + vec3 target2 = temp.bbr; + vec3 temp2 = source * target; + temp2 *= target2; + + temp = temp2 * Color_Strength; + temp2 *= Technicolor2_Brightness; + + target = temp.grg; + target2 = temp.bbr; + + temp = source - target; + temp += temp2; + temp2 = temp - target2; + + color = mix(source, temp2, Technicolor2_Strength); + + color = mix(vec3(dot(color, vec3(0.333))), color, Technicolor2_Saturation); + + return color; +} + +//Lift Gamma Gain + + vec3 LiftGammaGainPass( vec3 colorInput ) +{ + // -- Get input -- + vec3 color = colorInput; + + // -- Lift -- + + color = color * (1.5-0.5 * RGB_Lift) + 0.5 * RGB_Lift - 0.5; + color = clamp(color, 0.0, 1.0); //isn't strictly necessary, but doesn't cost performance. + + // -- Gain -- + color *= RGB_Gain; + + // -- Gamma -- + color = pow(color, 1.0 / RGB_Gamma); //Gamma + + // -- Return output -- + + return clamp(color, 0.0, 1.0); +} + +//LumaShapening + +#define px (1.0/1280.0*uf_fragCoordScale.x) +#define py (1.0/720.0*uf_fragCoordScale.y) +#define CoefLuma vec3(0.2126, 0.7152, 0.0722) + +float lumasharping(sampler2D tex, vec2 pos){ + vec4 colorInput = texture(tex, pos); + + vec3 ori = colorInput.rgb; + + // -- Combining the strength and luma multipliers -- + vec3 sharp_strength_luma = (CoefLuma * sharp_strength); + + // -- Gaussian filter -- + // [ .25, .50, .25] [ 1 , 2 , 1 ] + // [ .50, 1, .50] = [ 2 , 4 , 2 ] + // [ .25, .50, .25] [ 1 , 2 , 1 ] + + + //float px = 1.0/tex_size[0]; + //float py = 1.0/tex_size[1]; + + vec3 blur_ori = texture(tex, pos + vec2(px,-py) * 0.5 * offset_bias).rgb; // South East + blur_ori += texture(tex, pos + vec2(-px,-py) * 0.5 * offset_bias).rgb; // South West + blur_ori += texture(tex, pos + vec2(px,py) * 0.5 * offset_bias).rgb; // North East + blur_ori += texture(tex, pos + vec2(-px,py) * 0.5 * offset_bias).rgb; // North West + + blur_ori *= 0.25; // ( /= 4) Divide by the number of texture fetches + + // -- Calculate the sharpening -- + vec3 sharp = ori - blur_ori; //Subtracting the blurred image from the original image + + // -- Adjust strength of the sharpening and clamp it-- + vec4 sharp_strength_luma_clamp = vec4(sharp_strength_luma * (0.5 / sharp_clamp),0.5); //Roll part of the clamp into the dot + + float sharp_luma = clamp((dot(vec4(sharp,1.0), sharp_strength_luma_clamp)), 0.0,1.0 ); //Calculate the luma, adjust the strength, scale up and clamp + sharp_luma = (sharp_clamp * 2.0) * sharp_luma - sharp_clamp; //scale down + + + // -- Combining the values to get the final sharpened pixel -- + + //colorInput.rgb = colorInput.rgb + sharp_luma; // Add the sharpening to the input color. + return sharp_luma; +} + +//Fake High Dynamic Range. + +vec3 HDRPass(sampler2D tex, vec2 pos){ + vec3 color = texture(tex, pos).rgb; + + vec3 bloom_sum1 = texture(tex, pos + vec2(1.5, -1.5) * radius1 * vec2(px,py)).rgb; + bloom_sum1 += texture(tex, pos + vec2(-1.5, -1.5) * radius1 * vec2(px,py)).rgb; + bloom_sum1 += texture(tex, pos + vec2( 1.5, 1.5) * radius1 * vec2(px,py)).rgb; + bloom_sum1 += texture(tex, pos + vec2(-1.5, 1.5) * radius1 * vec2(px,py)).rgb; + bloom_sum1 += texture(tex, pos + vec2( 0.0, -2.5) * radius1 * vec2(px,py)).rgb; + bloom_sum1 += texture(tex, pos + vec2( 0.0, 2.5) * radius1 * vec2(px,py)).rgb; + bloom_sum1 += texture(tex, pos + vec2(-2.5, 0.0) * radius1 * vec2(px,py)).rgb; + bloom_sum1 += texture(tex, pos + vec2( 2.5, 0.0) * radius1 * vec2(px,py)).rgb; + + bloom_sum1 *= 0.005; + + vec3 bloom_sum2 = texture(tex, pos + vec2(1.5, -1.5) * radius2 * vec2(px,py)).rgb; + bloom_sum2 += texture(tex, pos + vec2(-1.5, -1.5) * radius2 * vec2(px,py)).rgb; + bloom_sum2 += texture(tex, pos + vec2( 1.5, 1.5) * radius2 * vec2(px,py)).rgb; + bloom_sum2 += texture(tex, pos + vec2(-1.5, 1.5) * radius2 * vec2(px,py)).rgb; + bloom_sum2 += texture(tex, pos + vec2( 0.0, -2.5) * radius2 * vec2(px,py)).rgb; + bloom_sum2 += texture(tex, pos + vec2( 0.0, 2.5) * radius2 * vec2(px,py)).rgb; + bloom_sum2 += texture(tex, pos + vec2(-2.5, 0.0) * radius2 * vec2(px,py)).rgb; + bloom_sum2 += texture(tex, pos + vec2( 2.5, 0.0) * radius2 * vec2(px,py)).rgb; + + bloom_sum2 *= 0.010; + + float dist = radius2 - radius1; + vec3 HDR = (color + (bloom_sum2 - bloom_sum1)) * dist; + + vec3 blend = HDR + color; + color = pow(abs(blend), vec3(abs(HDRPower))) + HDR; + + return color; +} + +void main() +{ +vec4 R0f = vec4(0.0); +vec4 R1f = vec4(0.0); +vec4 R123f = vec4(0.0); +vec4 R125f = vec4(0.0); +vec4 R126f = vec4(0.0); +vec4 R127f = vec4(0.0); +float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; +vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); +float PS0f = 0.0, PS1f = 0.0; +vec4 tempf = vec4(0.0); +float tempResultf; +int tempResulti; +ivec4 ARi = ivec4(0); +bool predResult = true; +vec3 cubeMapSTM; +int cubeMapFaceId; +R0f = passParameterSem0; +R1f.xyz = (texture(textureUnitPS0, R0f.xy).xyz); +vec3 bloom = texture(textureUnitPS0, passParameterSem0.xy).xyz; +bloom *= bloomFactor; +R0f.xyz = HDRPass(textureUnitPS1, passParameterSem0.xy); +float smask = lumasharping(textureUnitPS1, passParameterSem0.xy); +R0f.xyz += vec3(smask); +// 0 +R126f.x = R1f.x + R0f.x; +PV0f.x = R126f.x; +R127f.y = R1f.y + R0f.y; +PV0f.y = R127f.y; +R126f.z = R1f.z + R0f.z; +PV0f.z = R126f.z; +R125f.w = 1.0; +// 1 +tempf.x = dot(vec4(PV0f.x,PV0f.y,PV0f.z,-0.0),vec4(intBitsToFloat(0x3e99096c),intBitsToFloat(0x3f162b6b),intBitsToFloat(0x3dea4a8c),0.0)); +PV1f.x = tempf.x; +PV1f.y = tempf.x; +PV1f.z = tempf.x; +PV1f.w = tempf.x; +// 2 +R127f.x = -(R127f.y) * intBitsToFloat(0x3fb8aa3b); +PV0f.y = -(PV1f.x) * intBitsToFloat(0x3fb8aa3b); +R127f.z = -(R126f.x) * intBitsToFloat(0x3fb8aa3b); +R127f.w = -(R126f.z) * intBitsToFloat(0x3fb8aa3b); +R126f.w = 1.0 / PV1f.x; +PS0f = R126f.w; +// 3 +PS1f = exp2(PV0f.y); +// 4 +PV0f.x = -(PS1f) + 1.0; +PS0f = exp2(R127f.x); +// 5 +R127f.x = -(PS0f) + 1.0; +R126f.y = mul_nonIEEE(PV0f.x, PV0f.x); +PV1f.z = PV0f.x * R126f.w; +PS1f = exp2(R127f.w); +// 6 +backupReg0f = R126f.x; +backupReg1f = R127f.z; +R126f.x = mul_nonIEEE(backupReg0f, PV1f.z); +PV0f.y = -(PS1f) + 1.0; +R127f.z = mul_nonIEEE(R126f.z, PV1f.z); +PV0f.z = R127f.z; +R127f.w = mul_nonIEEE(R127f.y, PV1f.z); +PV0f.w = R127f.w; +PS0f = exp2(backupReg1f); +// 7 +PV1f.x = R127f.x + -(PV0f.w); +PV1f.y = PV0f.y + -(PV0f.z); +PV1f.w = -(PS0f) + 1.0; +// 8 +backupReg0f = R127f.z; +R127f.x = (mul_nonIEEE(PV1f.x,R126f.y) + R127f.w); +R127f.x = clamp(R127f.x, 0.0, 1.0); +PV0f.x = R127f.x; +PV0f.y = PV1f.w + -(R126f.x); +R127f.z = (mul_nonIEEE(PV1f.y,R126f.y) + backupReg0f); +R127f.z = clamp(R127f.z, 0.0, 1.0); +PV0f.z = R127f.z; +// 9 +backupReg0f = R126f.x; +R126f.x = (mul_nonIEEE(PV0f.y,R126f.y) + backupReg0f); +R126f.x = clamp(R126f.x, 0.0, 1.0); +PV1f.x = R126f.x; +R126f.y = max(PV0f.x, PV0f.z); +PV1f.w = min(PV0f.x, PV0f.z); +// 10 +tempf.x = dot(vec4(PV1f.x,R127f.x,R127f.z,R125f.w),vec4(intBitsToFloat(0x3f2aaaab),intBitsToFloat(0x3f2aaaab),intBitsToFloat(0x3f2aaaab),-(1.0))); +PV0f.x = tempf.x; +PV0f.y = tempf.x; +PV0f.z = tempf.x; +PV0f.w = tempf.x; +R126f.z = min(PV1f.x, PV1f.w); +PS0f = R126f.z; +// 11 +backupReg0f = R127f.x; +backupReg1f = R127f.z; +R127f.x = max(R126f.x, R126f.y); +PV1f.x = R127f.x; +R123f.y = (mul_nonIEEE(-(PV0f.x),PV0f.x) + 1.0); +PV1f.y = R123f.y; +R127f.z = backupReg0f + -(PS0f); +R125f.w = R126f.x + -(PS0f); +R126f.y = backupReg1f + -(PS0f); +PS1f = R126f.y; +// 12 +R126f.x = (mul_nonIEEE(PV1f.y,intBitsToFloat(uf_remappedPS[0].y)) + intBitsToFloat(uf_remappedPS[0].x)); +PV0f.x = R126f.x; +PV0f.y = -(R126f.z) + PV1f.x; +// 13 +R123f.w = (mul_nonIEEE(-(PV0f.x),PV0f.y) + R127f.x); +PV1f.w = R123f.w; +// 14 +R0f.x = (mul_nonIEEE(R126f.x,R125f.w) + PV1f.w); +R0f.y = (mul_nonIEEE(R126f.x,R127f.z) + PV1f.w); +R0f.z = (mul_nonIEEE(R126f.x,R126f.y) + PV1f.w); + +passPixelColor0 = vec4(R0f.x, R0f.y, R0f.z, R0f.w); +vec3 color = (passPixelColor0.xyz); +color += bloom; +color = Technicolor2(color); +color = LiftGammaGainPass(color); +passPixelColor0 = vec4(color, R0f.w); +} \ No newline at end of file From a1f07fb370aa4fa3ebefc6d39e256958bf9f2c39 Mon Sep 17 00:00:00 2001 From: Jamie Date: Thu, 9 Nov 2017 22:46:06 -0800 Subject: [PATCH 25/34] ClarityGFX Fixed a issue where Gamma would not return any value. --- .../bd8bba59e2149449_00000000000003c9_ps.txt | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.txt b/Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.txt index a9b1fca6..d7a1459a 100644 --- a/Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.txt +++ b/Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.txt @@ -173,22 +173,22 @@ vec3 Technicolor2(vec3 inputColor) { vec3 LiftGammaGainPass( vec3 colorInput ) { // -- Get input -- - vec3 color = colorInput.rgb; + vec3 color = colorInput; // -- Lift -- color = color * (1.5-0.5 * RGB_Lift) + 0.5 * RGB_Lift - 0.5; - color = clamp(color, 0.0, 1. ); //isn't strictly necessary, but doesn't cost performance. + color = clamp(color, 0.0, 1.0); //isn't strictly necessary, but doesn't cost performance. // -- Gain -- color *= RGB_Gain; // -- Gamma -- - colorInput.rgb = pow(color, 1.0 / RGB_Gamma); //Gamma + color = pow(color, 1.0 / RGB_Gamma); //Gamma // -- Return output -- - //return (colorInput); - return clamp(color, 0.0, 1. ); + + return clamp(color, 0.0, 1.0); } //LumaShapening From fa114060eb258105599173ff605757c487d34e20 Mon Sep 17 00:00:00 2001 From: Jamie Date: Fri, 10 Nov 2017 00:27:42 -0800 Subject: [PATCH 26/34] ClarityGFX Uppdated With Tonemap --- ...9_00000000000003c9_ps.txt.skyrimpresetbotw | 35 ++++++++++++++++++- 1 file changed, 34 insertions(+), 1 deletion(-) diff --git a/Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.txt.skyrimpresetbotw b/Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.txt.skyrimpresetbotw index 5786740b..a0d0f948 100644 --- a/Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.txt.skyrimpresetbotw +++ b/Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.txt.skyrimpresetbotw @@ -24,8 +24,11 @@ //########################################################## -//ToneMapping +///ToneMapping float bloomFactor = 0.33; //Default is 1.0 +float Bleach = 0.0002; //Default is 0.0 +float exposure = 1.25; //Default is 1.0 +float defog = 0.003; //Default is 0.0 //LumaShapening #define sharp_strength 0.25 //[0.10 to 3.00] Strength of the sharpening Default is 0.65 @@ -58,6 +61,8 @@ float bloomFactor = 0.33; //Default is 1.0 //########################################################### //Do not edit under this line. +float sat = 0.0; +const vec3 FogColor = vec3(0.0, 1.03, 0.0); //defog Color"; uniform ivec4 uf_remappedPS[1]; layout(binding = 0) uniform sampler2D textureUnitPS0;// Bloom @@ -75,6 +80,33 @@ return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); } float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } +//ToneMapping + +vec3 TonemapPass(vec3 inputColor) { + vec3 color = inputColor; + color = clamp(color - defog * FogColor * 2.55, 0.0, 1.0); // defog + color *= exposure/(1.0+ color / exposure); + + const vec3 coefLuma = vec3(0.2126, 0.7152, 0.0722); + float lum = dot(coefLuma, color); + + float L = clamp(10.0 * (lum - 0.45), 0.0, 1.0); + vec3 A2 = Bleach * color; + + vec3 result1 = 2.0f * color * lum; + vec3 result2 = 1.0f - 2.0f * (1.0f - lum) * (1.0f - color); + + vec3 newColor = mix(result1, result2, L); + vec3 mixRGB = A2 * newColor; + color += ((1.0f - A2) * mixRGB); + + vec3 middlegray = vec3(dot(color, vec3(1.0 / 3.0))); + vec3 diffcolor = color - middlegray; + color = (color + diffcolor * sat) / (1 + (diffcolor * sat)); // saturation + + return color; +} + //TECHNICOLOR2 vec3 Technicolor2(vec3 inputColor) { @@ -329,6 +361,7 @@ R0f.z = (mul_nonIEEE(R126f.x,R126f.y) + PV1f.w); passPixelColor0 = vec4(R0f.x, R0f.y, R0f.z, R0f.w); vec3 color = (passPixelColor0.xyz); color += bloom; +color = TonemapPass(color); color = Technicolor2(color); color = LiftGammaGainPass(color); passPixelColor0 = vec4(color, R0f.w); From d0d4cc57e879cf7312e831093d735793924df659 Mon Sep 17 00:00:00 2001 From: Jamie Date: Fri, 10 Nov 2017 03:07:43 -0800 Subject: [PATCH 27/34] ClarityGFX Updated with Serfrost's Defaults for Public. --- .../bd8bba59e2149449_00000000000003c9_ps.txt | 397 +++++++++--------- 1 file changed, 198 insertions(+), 199 deletions(-) diff --git a/Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.txt b/Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.txt index d7a1459a..dc191834 100644 --- a/Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.txt +++ b/Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.txt @@ -19,32 +19,32 @@ // Credit to Serfrost for preset values. // Original shader dumped using cemu 1.10.0f, BotW 1.3.1 -//v0.9 +//v0.9b //########################################################## //ToneMapping -float bloomFactor = 0.35; //Default is 1.0 -float Bleach = 0.0002; //Default is 0.0 -float exposure = 1.25; //Default is 1.0 -float defog = 0.003; //Default is 0.0 +float bloomFactor = 0.25; //Default is 1.0 +float Bleach = 0.3; //Default is 0.0 +float exposure = 1.13; //Default is 1.0 +float defog = 0.004; //Default is 0.0 //Lift Gamma Gain -#define RGB_Lift vec3(1.0, 1.0, 1.0) //[0.000 to 2.000] Adjust shadows for Red, Green and Blue. -#define RGB_Gamma vec3(0.90, 0.90, 0.90) //[0.000 to 2.000] Adjust midtones for Red, Green and Blue -#define RGB_Gain vec3(1.0, 1.0, 1.0) //[0.000 to 2.000] Adjust highlights for Red, Green and Blue +#define RGB_Lift vec3(1.05, 1.10, 1.05) //[0.000 to 2.000] Adjust shadows for Red, Green and Blue. +#define RGB_Gamma vec3(0.70, 0.70, 0.70) //[0.000 to 2.000] Adjust midtones for Red, Green and Blue +#define RGB_Gain vec3(1.10, 0.95, 1.15) //[0.000 to 2.000] Adjust highlights for Red, Green and Blue //Note that a value of 1.0 is a neutral setting that leave the color unchanged. //Curves -float Contrast = 0.80; //[-1.0, 1.0] The amount of contrast you want +float Contrast = 0.50; //[-1.0, 1.0] The amount of contrast you want //Levels Control const int BlackPoint = 0; //[0, 255] The black point is the new black - literally. Everything darker than this will become completely black -const int WhitePoint = 255; //[0, 255] The new white point. Everything brighter than this becomes completely white +const int WhitePoint = 245; //[0, 255] The new white point. Everything brighter than this becomes completely white //LumaShapening -#define sharp_strength 0.60 //[0.10 to 3.00] Strength of the sharpening Default is 0.65 -#define sharp_clamp 0.060 //[0.000 to 1.000] Limits maximum amount of sharpening a pixel recieves - Default is 0.035 +#define sharp_strength 0.65 //[0.10 to 3.00] Strength of the sharpening Default is 0.65 +#define sharp_clamp 0.035 //[0.000 to 1.000] Limits maximum amount of sharpening a pixel recieves - Default is 0.035 //Advanced sharpening settings #define offset_bias 1.0 //[0.0 to 6.0] Offset bias adjusts the radius of the sampling pattern. @@ -53,12 +53,12 @@ const int WhitePoint = 255; //[0, 255] The new white point. Everything brighter #define Technicolor2_Red_Strength 0.0 //Default is 0.0 #define Technicolor2_Green_Strength 0.0 //Default is 0.0 #define Technicolor2_Blue_Strength 0.0 //Default is 0.0 -#define Technicolor2_Brightness 0.95 //Default is 1.0 -#define Technicolor2_Strength 0.40 //Default is 1.0 -#define Technicolor2_Saturation 0.85 //Default is 1.0 +#define Technicolor2_Brightness 0.50 //Default is 1.0 +#define Technicolor2_Strength 1.0 //Default is 1.0 +#define Technicolor2_Saturation 0.67 //Default is 1.0 //Fake High Dynamic Range. -#define HDRPower 1.20 // 0.0 to 8.0 "Raising this seems to make the effect stronger and also darker , Default 1.30." +#define HDRPower 1.15 // 0.0 to 8.0 "Raising this seems to make the effect stronger and also darker , Default 1.30." #define radius1 0.793 // 0.0 to 8.0 "Default 0.793 , will affect FX." #define radius2 0.87 // 0.0 to 8.0 "Default 0.87 , will affect FX." @@ -68,7 +68,7 @@ const int WhitePoint = 255; //[0, 255] The new white point. Everything brighter float sat = 0.0; -const vec3 FogColor = vec3(0.0, 1.03, 0.0); //defog Color"; +const vec3 FogColor = vec3(1.0, 1.5, 1.0); //defog Color"; uniform ivec4 uf_remappedPS[1]; layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0xf46ac800 res 320x180x1 dim 1 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x5) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 2 2 2 border: 1 @@ -78,38 +78,38 @@ layout(location = 0) out vec4 passPixelColor0; uniform vec2 uf_fragCoordScale; int clampFI32(int v) { -if( v == 0x7FFFFFFF ) - return floatBitsToInt(1.0); -else if( v == 0xFFFFFFFF ) - return floatBitsToInt(0.0); -return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); + if (v == 0x7FFFFFFF) + return floatBitsToInt(1.0); + else if (v == 0xFFFFFFFF) + return floatBitsToInt(0.0); + return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); } -float mul_nonIEEE(float a, float b){ if( a == 0.0 || b == 0.0 ) return 0.0; return a*b; } +float mul_nonIEEE(float a, float b) { if (a == 0.0 || b == 0.0) return 0.0; return a*b; } //ToneMapping vec3 TonemapPass(vec3 inputColor) { vec3 color = inputColor; color = clamp(color - defog * FogColor * 2.55, 0.0, 1.0); // defog - color *= exposure/(1.0+ color / exposure); - + color *= exposure / (1.0 + color / exposure); + const vec3 coefLuma = vec3(0.2126, 0.7152, 0.0722); float lum = dot(coefLuma, color); - + float L = clamp(10.0 * (lum - 0.45), 0.0, 1.0); vec3 A2 = Bleach * color; vec3 result1 = 2.0f * color * lum; vec3 result2 = 1.0f - 2.0f * (1.0f - lum) * (1.0f - color); - + vec3 newColor = mix(result1, result2, L); vec3 mixRGB = A2 * newColor; color += ((1.0f - A2) * mixRGB); - + vec3 middlegray = vec3(dot(color, vec3(1.0 / 3.0))); vec3 diffcolor = color - middlegray; color = (color + diffcolor * sat) / (1 + (diffcolor * sat)); // saturation - + return color; } @@ -143,7 +143,7 @@ vec3 CurvesPass(vec3 inputColor) { vec3 Technicolor2(vec3 inputColor) { vec3 color = inputColor; vec3 Color_Strength = vec3(Technicolor2_Red_Strength, Technicolor2_Green_Strength, Technicolor2_Blue_Strength); - vec3 source = color; + vec3 source = color; vec3 temp = 1.0 - source; vec3 target = temp.grg; vec3 target2 = temp.bbr; @@ -163,31 +163,30 @@ vec3 Technicolor2(vec3 inputColor) { color = mix(source, temp2, Technicolor2_Strength); color = mix(vec3(dot(color, vec3(0.333))), color, Technicolor2_Saturation); - - return color; + + return color; } //Lift Gamma Gain - vec3 LiftGammaGainPass( vec3 colorInput ) +vec3 LiftGammaGainPass(vec3 colorInput) { // -- Get input -- vec3 color = colorInput; - + // -- Lift -- - - color = color * (1.5-0.5 * RGB_Lift) + 0.5 * RGB_Lift - 0.5; + + color = color * (1.5 - 0.5 * RGB_Lift) + 0.5 * RGB_Lift - 0.5; color = clamp(color, 0.0, 1.0); //isn't strictly necessary, but doesn't cost performance. - + // -- Gain -- - color *= RGB_Gain; - + color *= RGB_Gain; + // -- Gamma -- color = pow(color, 1.0 / RGB_Gamma); //Gamma - + // -- Return output -- - return clamp(color, 0.0, 1.0); } @@ -197,27 +196,27 @@ vec3 Technicolor2(vec3 inputColor) { #define py (1.0/720.0*uf_fragCoordScale.y) #define CoefLuma vec3(0.2126, 0.7152, 0.0722) -float lumasharping(sampler2D tex, vec2 pos){ +float lumasharping(sampler2D tex, vec2 pos) { vec4 colorInput = texture(tex, pos); - + vec3 ori = colorInput.rgb; // -- Combining the strength and luma multipliers -- - vec3 sharp_strength_luma = (CoefLuma * sharp_strength); - + vec3 sharp_strength_luma = (CoefLuma * sharp_strength); + // -- Gaussian filter -- // [ .25, .50, .25] [ 1 , 2 , 1 ] // [ .50, 1, .50] = [ 2 , 4 , 2 ] - // [ .25, .50, .25] [ 1 , 2 , 1 ] + // [ .25, .50, .25] [ 1 , 2 , 1 ] - //float px = 1.0/tex_size[0]; + //float px = 1.0/tex_size[0]; //float py = 1.0/tex_size[1]; - vec3 blur_ori = texture(tex, pos + vec2(px,-py) * 0.5 * offset_bias).rgb; // South East - blur_ori += texture(tex, pos + vec2(-px,-py) * 0.5 * offset_bias).rgb; // South West - blur_ori += texture(tex, pos + vec2(px,py) * 0.5 * offset_bias).rgb; // North East - blur_ori += texture(tex, pos + vec2(-px,py) * 0.5 * offset_bias).rgb; // North West + vec3 blur_ori = texture(tex, pos + vec2(px, -py) * 0.5 * offset_bias).rgb; // South East + blur_ori += texture(tex, pos + vec2(-px, -py) * 0.5 * offset_bias).rgb; // South West + blur_ori += texture(tex, pos + vec2(px, py) * 0.5 * offset_bias).rgb; // North East + blur_ori += texture(tex, pos + vec2(-px, py) * 0.5 * offset_bias).rgb; // North West blur_ori *= 0.25; // ( /= 4) Divide by the number of texture fetches @@ -225,179 +224,179 @@ float lumasharping(sampler2D tex, vec2 pos){ vec3 sharp = ori - blur_ori; //Subtracting the blurred image from the original image // -- Adjust strength of the sharpening and clamp it-- - vec4 sharp_strength_luma_clamp = vec4(sharp_strength_luma * (0.5 / sharp_clamp),0.5); //Roll part of the clamp into the dot + vec4 sharp_strength_luma_clamp = vec4(sharp_strength_luma * (0.5 / sharp_clamp), 0.5); //Roll part of the clamp into the dot - float sharp_luma = clamp((dot(vec4(sharp,1.0), sharp_strength_luma_clamp)), 0.0,1.0 ); //Calculate the luma, adjust the strength, scale up and clamp + float sharp_luma = clamp((dot(vec4(sharp, 1.0), sharp_strength_luma_clamp)), 0.0, 1.0); //Calculate the luma, adjust the strength, scale up and clamp sharp_luma = (sharp_clamp * 2.0) * sharp_luma - sharp_clamp; //scale down // -- Combining the values to get the final sharpened pixel -- - //colorInput.rgb = colorInput.rgb + sharp_luma; // Add the sharpening to the input color. - return sharp_luma; + //colorInput.rgb = colorInput.rgb + sharp_luma; // Add the sharpening to the input color. + return sharp_luma; } //Fake High Dynamic Range. -vec3 HDRPass(sampler2D tex, vec2 pos){ - vec3 color = texture(tex, pos).rgb; - - vec3 bloom_sum1 = texture(tex, pos + vec2(1.5, -1.5) * radius1 * vec2(px,py)).rgb; - bloom_sum1 += texture(tex, pos + vec2(-1.5, -1.5) * radius1 * vec2(px,py)).rgb; - bloom_sum1 += texture(tex, pos + vec2( 1.5, 1.5) * radius1 * vec2(px,py)).rgb; - bloom_sum1 += texture(tex, pos + vec2(-1.5, 1.5) * radius1 * vec2(px,py)).rgb; - bloom_sum1 += texture(tex, pos + vec2( 0.0, -2.5) * radius1 * vec2(px,py)).rgb; - bloom_sum1 += texture(tex, pos + vec2( 0.0, 2.5) * radius1 * vec2(px,py)).rgb; - bloom_sum1 += texture(tex, pos + vec2(-2.5, 0.0) * radius1 * vec2(px,py)).rgb; - bloom_sum1 += texture(tex, pos + vec2( 2.5, 0.0) * radius1 * vec2(px,py)).rgb; +vec3 HDRPass(sampler2D tex, vec2 pos) { + vec3 color = texture(tex, pos).rgb; + + vec3 bloom_sum1 = texture(tex, pos + vec2(1.5, -1.5) * radius1 * vec2(px, py)).rgb; + bloom_sum1 += texture(tex, pos + vec2(-1.5, -1.5) * radius1 * vec2(px, py)).rgb; + bloom_sum1 += texture(tex, pos + vec2(1.5, 1.5) * radius1 * vec2(px, py)).rgb; + bloom_sum1 += texture(tex, pos + vec2(-1.5, 1.5) * radius1 * vec2(px, py)).rgb; + bloom_sum1 += texture(tex, pos + vec2(0.0, -2.5) * radius1 * vec2(px, py)).rgb; + bloom_sum1 += texture(tex, pos + vec2(0.0, 2.5) * radius1 * vec2(px, py)).rgb; + bloom_sum1 += texture(tex, pos + vec2(-2.5, 0.0) * radius1 * vec2(px, py)).rgb; + bloom_sum1 += texture(tex, pos + vec2(2.5, 0.0) * radius1 * vec2(px, py)).rgb; bloom_sum1 *= 0.005; - vec3 bloom_sum2 = texture(tex, pos + vec2(1.5, -1.5) * radius2 * vec2(px,py)).rgb; - bloom_sum2 += texture(tex, pos + vec2(-1.5, -1.5) * radius2 * vec2(px,py)).rgb; - bloom_sum2 += texture(tex, pos + vec2( 1.5, 1.5) * radius2 * vec2(px,py)).rgb; - bloom_sum2 += texture(tex, pos + vec2(-1.5, 1.5) * radius2 * vec2(px,py)).rgb; - bloom_sum2 += texture(tex, pos + vec2( 0.0, -2.5) * radius2 * vec2(px,py)).rgb; - bloom_sum2 += texture(tex, pos + vec2( 0.0, 2.5) * radius2 * vec2(px,py)).rgb; - bloom_sum2 += texture(tex, pos + vec2(-2.5, 0.0) * radius2 * vec2(px,py)).rgb; - bloom_sum2 += texture(tex, pos + vec2( 2.5, 0.0) * radius2 * vec2(px,py)).rgb; + vec3 bloom_sum2 = texture(tex, pos + vec2(1.5, -1.5) * radius2 * vec2(px, py)).rgb; + bloom_sum2 += texture(tex, pos + vec2(-1.5, -1.5) * radius2 * vec2(px, py)).rgb; + bloom_sum2 += texture(tex, pos + vec2(1.5, 1.5) * radius2 * vec2(px, py)).rgb; + bloom_sum2 += texture(tex, pos + vec2(-1.5, 1.5) * radius2 * vec2(px, py)).rgb; + bloom_sum2 += texture(tex, pos + vec2(0.0, -2.5) * radius2 * vec2(px, py)).rgb; + bloom_sum2 += texture(tex, pos + vec2(0.0, 2.5) * radius2 * vec2(px, py)).rgb; + bloom_sum2 += texture(tex, pos + vec2(-2.5, 0.0) * radius2 * vec2(px, py)).rgb; + bloom_sum2 += texture(tex, pos + vec2(2.5, 0.0) * radius2 * vec2(px, py)).rgb; bloom_sum2 *= 0.010; float dist = radius2 - radius1; vec3 HDR = (color + (bloom_sum2 - bloom_sum1)) * dist; - + vec3 blend = HDR + color; color = pow(abs(blend), vec3(abs(HDRPower))) + HDR; - + return color; } void main() { -vec4 R0f = vec4(0.0); -vec4 R1f = vec4(0.0); -vec4 R123f = vec4(0.0); -vec4 R125f = vec4(0.0); -vec4 R126f = vec4(0.0); -vec4 R127f = vec4(0.0); -float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; -vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); -float PS0f = 0.0, PS1f = 0.0; -vec4 tempf = vec4(0.0); -float tempResultf; -int tempResulti; -ivec4 ARi = ivec4(0); -bool predResult = true; -vec3 cubeMapSTM; -int cubeMapFaceId; -R0f = passParameterSem0; -R1f.xyz = (texture(textureUnitPS0, R0f.xy).xyz); -vec3 bloom = texture(textureUnitPS0, passParameterSem0.xy).xyz; -bloom *= bloomFactor; -R0f.xyz = HDRPass(textureUnitPS1, passParameterSem0.xy); -float smask = lumasharping(textureUnitPS1, passParameterSem0.xy); -R0f.xyz += vec3(smask); -// 0 -R126f.x = R1f.x + R0f.x; -PV0f.x = R126f.x; -R127f.y = R1f.y + R0f.y; -PV0f.y = R127f.y; -R126f.z = R1f.z + R0f.z; -PV0f.z = R126f.z; -R125f.w = 1.0; -// 1 -tempf.x = dot(vec4(PV0f.x,PV0f.y,PV0f.z,-0.0),vec4(intBitsToFloat(0x3e99096c),intBitsToFloat(0x3f162b6b),intBitsToFloat(0x3dea4a8c),0.0)); -PV1f.x = tempf.x; -PV1f.y = tempf.x; -PV1f.z = tempf.x; -PV1f.w = tempf.x; -// 2 -R127f.x = -(R127f.y) * intBitsToFloat(0x3fb8aa3b); -PV0f.y = -(PV1f.x) * intBitsToFloat(0x3fb8aa3b); -R127f.z = -(R126f.x) * intBitsToFloat(0x3fb8aa3b); -R127f.w = -(R126f.z) * intBitsToFloat(0x3fb8aa3b); -R126f.w = 1.0 / PV1f.x; -PS0f = R126f.w; -// 3 -PS1f = exp2(PV0f.y); -// 4 -PV0f.x = -(PS1f) + 1.0; -PS0f = exp2(R127f.x); -// 5 -R127f.x = -(PS0f) + 1.0; -R126f.y = mul_nonIEEE(PV0f.x, PV0f.x); -PV1f.z = PV0f.x * R126f.w; -PS1f = exp2(R127f.w); -// 6 -backupReg0f = R126f.x; -backupReg1f = R127f.z; -R126f.x = mul_nonIEEE(backupReg0f, PV1f.z); -PV0f.y = -(PS1f) + 1.0; -R127f.z = mul_nonIEEE(R126f.z, PV1f.z); -PV0f.z = R127f.z; -R127f.w = mul_nonIEEE(R127f.y, PV1f.z); -PV0f.w = R127f.w; -PS0f = exp2(backupReg1f); -// 7 -PV1f.x = R127f.x + -(PV0f.w); -PV1f.y = PV0f.y + -(PV0f.z); -PV1f.w = -(PS0f) + 1.0; -// 8 -backupReg0f = R127f.z; -R127f.x = (mul_nonIEEE(PV1f.x,R126f.y) + R127f.w); -R127f.x = clamp(R127f.x, 0.0, 1.0); -PV0f.x = R127f.x; -PV0f.y = PV1f.w + -(R126f.x); -R127f.z = (mul_nonIEEE(PV1f.y,R126f.y) + backupReg0f); -R127f.z = clamp(R127f.z, 0.0, 1.0); -PV0f.z = R127f.z; -// 9 -backupReg0f = R126f.x; -R126f.x = (mul_nonIEEE(PV0f.y,R126f.y) + backupReg0f); -R126f.x = clamp(R126f.x, 0.0, 1.0); -PV1f.x = R126f.x; -R126f.y = max(PV0f.x, PV0f.z); -PV1f.w = min(PV0f.x, PV0f.z); -// 10 -tempf.x = dot(vec4(PV1f.x,R127f.x,R127f.z,R125f.w),vec4(intBitsToFloat(0x3f2aaaab),intBitsToFloat(0x3f2aaaab),intBitsToFloat(0x3f2aaaab),-(1.0))); -PV0f.x = tempf.x; -PV0f.y = tempf.x; -PV0f.z = tempf.x; -PV0f.w = tempf.x; -R126f.z = min(PV1f.x, PV1f.w); -PS0f = R126f.z; -// 11 -backupReg0f = R127f.x; -backupReg1f = R127f.z; -R127f.x = max(R126f.x, R126f.y); -PV1f.x = R127f.x; -R123f.y = (mul_nonIEEE(-(PV0f.x),PV0f.x) + 1.0); -PV1f.y = R123f.y; -R127f.z = backupReg0f + -(PS0f); -R125f.w = R126f.x + -(PS0f); -R126f.y = backupReg1f + -(PS0f); -PS1f = R126f.y; -// 12 -R126f.x = (mul_nonIEEE(PV1f.y,intBitsToFloat(uf_remappedPS[0].y)) + intBitsToFloat(uf_remappedPS[0].x)); -PV0f.x = R126f.x; -PV0f.y = -(R126f.z) + PV1f.x; -// 13 -R123f.w = (mul_nonIEEE(-(PV0f.x),PV0f.y) + R127f.x); -PV1f.w = R123f.w; -// 14 -R0f.x = (mul_nonIEEE(R126f.x,R125f.w) + PV1f.w); -R0f.y = (mul_nonIEEE(R126f.x,R127f.z) + PV1f.w); -R0f.z = (mul_nonIEEE(R126f.x,R126f.y) + PV1f.w); + vec4 R0f = vec4(0.0); + vec4 R1f = vec4(0.0); + vec4 R123f = vec4(0.0); + vec4 R125f = vec4(0.0); + vec4 R126f = vec4(0.0); + vec4 R127f = vec4(0.0); + float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; + vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); + float PS0f = 0.0, PS1f = 0.0; + vec4 tempf = vec4(0.0); + float tempResultf; + int tempResulti; + ivec4 ARi = ivec4(0); + bool predResult = true; + vec3 cubeMapSTM; + int cubeMapFaceId; + R0f = passParameterSem0; + R1f.xyz = (texture(textureUnitPS0, R0f.xy).xyz); + vec3 bloom = texture(textureUnitPS0, passParameterSem0.xy).xyz; + bloom *= bloomFactor; + R0f.xyz = HDRPass(textureUnitPS1, passParameterSem0.xy); + float smask = lumasharping(textureUnitPS1, passParameterSem0.xy); + R0f.xyz += vec3(smask); + // 0 + R126f.x = R1f.x + R0f.x; + PV0f.x = R126f.x; + R127f.y = R1f.y + R0f.y; + PV0f.y = R127f.y; + R126f.z = R1f.z + R0f.z; + PV0f.z = R126f.z; + R125f.w = 1.0; + // 1 + tempf.x = dot(vec4(PV0f.x, PV0f.y, PV0f.z, -0.0), vec4(intBitsToFloat(0x3e99096c), intBitsToFloat(0x3f162b6b), intBitsToFloat(0x3dea4a8c), 0.0)); + PV1f.x = tempf.x; + PV1f.y = tempf.x; + PV1f.z = tempf.x; + PV1f.w = tempf.x; + // 2 + R127f.x = -(R127f.y) * intBitsToFloat(0x3fb8aa3b); + PV0f.y = -(PV1f.x) * intBitsToFloat(0x3fb8aa3b); + R127f.z = -(R126f.x) * intBitsToFloat(0x3fb8aa3b); + R127f.w = -(R126f.z) * intBitsToFloat(0x3fb8aa3b); + R126f.w = 1.0 / PV1f.x; + PS0f = R126f.w; + // 3 + PS1f = exp2(PV0f.y); + // 4 + PV0f.x = -(PS1f)+1.0; + PS0f = exp2(R127f.x); + // 5 + R127f.x = -(PS0f)+1.0; + R126f.y = mul_nonIEEE(PV0f.x, PV0f.x); + PV1f.z = PV0f.x * R126f.w; + PS1f = exp2(R127f.w); + // 6 + backupReg0f = R126f.x; + backupReg1f = R127f.z; + R126f.x = mul_nonIEEE(backupReg0f, PV1f.z); + PV0f.y = -(PS1f)+1.0; + R127f.z = mul_nonIEEE(R126f.z, PV1f.z); + PV0f.z = R127f.z; + R127f.w = mul_nonIEEE(R127f.y, PV1f.z); + PV0f.w = R127f.w; + PS0f = exp2(backupReg1f); + // 7 + PV1f.x = R127f.x + -(PV0f.w); + PV1f.y = PV0f.y + -(PV0f.z); + PV1f.w = -(PS0f)+1.0; + // 8 + backupReg0f = R127f.z; + R127f.x = (mul_nonIEEE(PV1f.x, R126f.y) + R127f.w); + R127f.x = clamp(R127f.x, 0.0, 1.0); + PV0f.x = R127f.x; + PV0f.y = PV1f.w + -(R126f.x); + R127f.z = (mul_nonIEEE(PV1f.y, R126f.y) + backupReg0f); + R127f.z = clamp(R127f.z, 0.0, 1.0); + PV0f.z = R127f.z; + // 9 + backupReg0f = R126f.x; + R126f.x = (mul_nonIEEE(PV0f.y, R126f.y) + backupReg0f); + R126f.x = clamp(R126f.x, 0.0, 1.0); + PV1f.x = R126f.x; + R126f.y = max(PV0f.x, PV0f.z); + PV1f.w = min(PV0f.x, PV0f.z); + // 10 + tempf.x = dot(vec4(PV1f.x, R127f.x, R127f.z, R125f.w), vec4(intBitsToFloat(0x3f2aaaab), intBitsToFloat(0x3f2aaaab), intBitsToFloat(0x3f2aaaab), -(1.0))); + PV0f.x = tempf.x; + PV0f.y = tempf.x; + PV0f.z = tempf.x; + PV0f.w = tempf.x; + R126f.z = min(PV1f.x, PV1f.w); + PS0f = R126f.z; + // 11 + backupReg0f = R127f.x; + backupReg1f = R127f.z; + R127f.x = max(R126f.x, R126f.y); + PV1f.x = R127f.x; + R123f.y = (mul_nonIEEE(-(PV0f.x), PV0f.x) + 1.0); + PV1f.y = R123f.y; + R127f.z = backupReg0f + -(PS0f); + R125f.w = R126f.x + -(PS0f); + R126f.y = backupReg1f + -(PS0f); + PS1f = R126f.y; + // 12 + R126f.x = (mul_nonIEEE(PV1f.y, intBitsToFloat(uf_remappedPS[0].y)) + intBitsToFloat(uf_remappedPS[0].x)); + PV0f.x = R126f.x; + PV0f.y = -(R126f.z) + PV1f.x; + // 13 + R123f.w = (mul_nonIEEE(-(PV0f.x), PV0f.y) + R127f.x); + PV1f.w = R123f.w; + // 14 + R0f.x = (mul_nonIEEE(R126f.x, R125f.w) + PV1f.w); + R0f.y = (mul_nonIEEE(R126f.x, R127f.z) + PV1f.w); + R0f.z = (mul_nonIEEE(R126f.x, R126f.y) + PV1f.w); -passPixelColor0 = vec4(R0f.x, R0f.y, R0f.z, R0f.w); + passPixelColor0 = vec4(R0f.x, R0f.y, R0f.z, R0f.w); -vec3 color = (passPixelColor0.xyz); -color += bloom; -color = TonemapPass(color); -color = Technicolor2(color); -color = LevelsPass(color); -color = CurvesPass(color); -color = LiftGammaGainPass(color); -passPixelColor0 = vec4(color, R0f.w); + vec3 color = (passPixelColor0.xyz); + color += bloom; + color = TonemapPass(color); + color = Technicolor2(color); + color = LevelsPass(color); + color = CurvesPass(color); + color = LiftGammaGainPass(color); + passPixelColor0 = vec4(color, R0f.w); } \ No newline at end of file From 4f96c9ab453fa53b2172bbc673b14b76f74606ec Mon Sep 17 00:00:00 2001 From: Jamie Date: Fri, 10 Nov 2017 04:50:55 -0800 Subject: [PATCH 28/34] ClarityGFX Added Gamma Gain to AVG Luma Build. --- ...59e2149449_00000000000003c9_ps.txt.avgluma | 46 +++++++++++++++---- 1 file changed, 38 insertions(+), 8 deletions(-) diff --git a/Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.txt.avgluma b/Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.txt.avgluma index 1f1847df..3410aca3 100644 --- a/Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.txt.avgluma +++ b/Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.txt.avgluma @@ -21,13 +21,18 @@ //########################################################## //Control Pannel -float bloomFactor = 0.4; //Default is 1.0 Affacts Games bloom -float exposure = 2.0; -float brt = 0.0; //Default is 0.0 Now much brightness to add to the RGB color. -float con = 0.75; // [0.0 ~ 1.5] [0.5 Default] Contrast Adjustment - or + values work -float sat = 0.50; // [0.1 ~ 1.5] [0.0 Default] Color Saturation Adjustment. - or + values work -float gamma = 0.60; // [0.0 ~ 2.5] [1.0 Default] Gamma Adjustment - or + values work -float defog = 0.0; // [0.0 ~ 1.0] [0.0 Default] How much of the far distance fog to "remove." +float bloomFactor = 0.4; //Default is 1.0 Affacts Games bloom +float exposure = 2.0; // Exposure setting +float brt = 0.0; //Default is 0.0 Now much brightness to add to the RGB color. +float con = 0.75; // [0.0 ~ 1.5] [0.5 Default] Contrast Adjustment - or + values work +float sat = 0.50; // [0.1 ~ 1.5] [0.0 Default] Color Saturation Adjustment. - or + values work +float defog = 0.0; // [0.0 ~ 1.0] [0.0 Default] How much of the far distance fog to "remove." + +//Lift Gamma Gain +#define RGB_Lift vec3(1.0, 1.0, 1.0) //[0.000 to 2.000] Adjust shadows for Red, Green and Blue. +#define RGB_Gamma vec3(0.60, 0.60, 0.60) //[0.000 to 2.000] Adjust midtones for Red, Green and Blue +#define RGB_Gain vec3(1.0, 1.0, 1.0) //[0.000 to 2.000] Adjust highlights for Red, Green and Blue +//Note that a value of 1.0 is a neutral setting that leave the color unchanged. //Luma Values float AvgLumR = 0.0; // [0.0 ~ 1.5] [0.0 Default] Use very small increments, as it changes RGB values. @@ -93,6 +98,8 @@ vec3 ContrastSaturationBrightness( vec3 color, float brt, float sat, float con) return color; } +//Clarity Tone Map + vec3 claritytonemap(vec3 color) { color = max(vec3(0.), color - vec3(0.004)); color = (color * (6.2 * color + .5)) / (color * (6.2 * color + 1.7) + 0.06); @@ -103,6 +110,29 @@ vec3 claritytonemap(vec3 color) { return color; } +//Lift Gamma Gain + + vec3 LiftGammaGainPass( vec3 colorInput ) +{ + // -- Get input -- + vec3 color = colorInput; + + // -- Lift -- + + color = color * (1.5-0.5 * RGB_Lift) + 0.5 * RGB_Lift - 0.5; + color = clamp(color, 0.0, 1.0); //isn't strictly necessary, but doesn't cost performance. + + // -- Gain -- + color *= RGB_Gain; + + // -- Gamma -- + color = pow(color, 1.0 / RGB_Gamma); //Gamma + + // -- Return output -- + + return clamp(color, 0.0, 1.0); +} + //LumaShapening #define px (1.0/1280.0*uf_fragCoordScale.x) @@ -305,6 +335,6 @@ passPixelColor0 = vec4(R0f.x, R0f.y, R0f.z, R0f.w); vec3 color = (passPixelColor0.xyz); color = claritytonemap(color); color = ContrastSaturationBrightness(color, brt, sat, con); -color = pow(color, vec3(1.0 / gamma)); +color = LiftGammaGainPass(color); passPixelColor0 = vec4(color, R0f.w); } \ No newline at end of file From a8a64de1fe1dace796c4c3fe23d415212ee1acda Mon Sep 17 00:00:00 2001 From: Jamie Date: Fri, 10 Nov 2017 12:08:50 -0800 Subject: [PATCH 29/34] ClarityGFX Updated main one with SerFrost's Fixed Settings. --- .../bd8bba59e2149449_00000000000003c9_ps.txt | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.txt b/Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.txt index dc191834..a2f4d74d 100644 --- a/Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.txt +++ b/Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.txt @@ -24,15 +24,15 @@ //########################################################## //ToneMapping -float bloomFactor = 0.25; //Default is 1.0 +float bloomFactor = 0.2; //Default is 1.0 float Bleach = 0.3; //Default is 0.0 float exposure = 1.13; //Default is 1.0 float defog = 0.004; //Default is 0.0 //Lift Gamma Gain -#define RGB_Lift vec3(1.05, 1.10, 1.05) //[0.000 to 2.000] Adjust shadows for Red, Green and Blue. +#define RGB_Lift vec3(1.05, 1.05, 1.05) //[0.000 to 2.000] Adjust shadows for Red, Green and Blue. #define RGB_Gamma vec3(0.70, 0.70, 0.70) //[0.000 to 2.000] Adjust midtones for Red, Green and Blue -#define RGB_Gain vec3(1.10, 0.95, 1.15) //[0.000 to 2.000] Adjust highlights for Red, Green and Blue +#define RGB_Gain vec3(1.05, 1.00, 1.05) //[0.000 to 2.000] Adjust highlights for Red, Green and Blue //Note that a value of 1.0 is a neutral setting that leave the color unchanged. //Curves @@ -40,7 +40,7 @@ float Contrast = 0.50; //[-1.0, 1.0] The amount of contrast you want //Levels Control const int BlackPoint = 0; //[0, 255] The black point is the new black - literally. Everything darker than this will become completely black -const int WhitePoint = 245; //[0, 255] The new white point. Everything brighter than this becomes completely white +const int WhitePoint = 255; //[0, 255] The new white point. Everything brighter than this becomes completely white //LumaShapening #define sharp_strength 0.65 //[0.10 to 3.00] Strength of the sharpening Default is 0.65 @@ -55,7 +55,7 @@ const int WhitePoint = 245; //[0, 255] The new white point. Everything brighter #define Technicolor2_Blue_Strength 0.0 //Default is 0.0 #define Technicolor2_Brightness 0.50 //Default is 1.0 #define Technicolor2_Strength 1.0 //Default is 1.0 -#define Technicolor2_Saturation 0.67 //Default is 1.0 +#define Technicolor2_Saturation 0.70 //Default is 1.0 //Fake High Dynamic Range. #define HDRPower 1.15 // 0.0 to 8.0 "Raising this seems to make the effect stronger and also darker , Default 1.30." From 69df0e76f60510bb6359cf3887ce8a05edeb9049 Mon Sep 17 00:00:00 2001 From: Milan Date: Fri, 10 Nov 2017 23:49:14 +0100 Subject: [PATCH 30/34] Add quarter resolution scaling Doesn't have any camera bugs anymore so made everything on by default. --- Source/WindWakerHD/rules.txt | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/Source/WindWakerHD/rules.txt b/Source/WindWakerHD/rules.txt index bf5bd6e9..af664247 100644 --- a/Source/WindWakerHD/rules.txt +++ b/Source/WindWakerHD/rules.txt @@ -19,16 +19,20 @@ formatsExcluded = 0x41A # exclude the intro background texture overwriteWidth = overwriteHeight = -# Remove the #'s before the overwriteWidth and overwriteHeight to enable this. -# Will affect blurred area's which will result in looking darker. -[TextureRedefine] # game halfres upscaling +[TextureRedefine] # game half res upscaling width = 960 height = 540 -#overwriteWidth = -#overwriteHeight = +overwriteWidth = +overwriteHeight = + +[TextureRedefine] # game quarter res upscaling +width = 480 +height = 270 +overwriteWidth = +overwriteHeight = [TextureRedefine] # gamepad rendering resolution width = 854 height = 480 -overwriteWidth = -overwriteHeight = +overwriteWidth = +overwriteHeight = From 97a504d9b17f2a60cb68453bcf0834b768c5b3d9 Mon Sep 17 00:00:00 2001 From: Jamie Date: Fri, 10 Nov 2017 19:51:30 -0800 Subject: [PATCH 31/34] ClarityGFX New Presets added, Name Adjustment on some of the presets. --- ...9e2149449_00000000000003c9_ps.avgluma.txt} | 0 ...9449_00000000000003c9_ps.skyrim.Jamie.txt} | 0 ...49449_00000000000003c9_ps.skyrim.frost.txt | 402 ++++++++++++++++++ 3 files changed, 402 insertions(+) rename Enhancement/BreathOfTheWild_ClarityGFX/{bd8bba59e2149449_00000000000003c9_ps.txt.avgluma => bd8bba59e2149449_00000000000003c9_ps.avgluma.txt} (100%) rename Enhancement/BreathOfTheWild_ClarityGFX/{bd8bba59e2149449_00000000000003c9_ps.txt.skyrimpresetbotw => bd8bba59e2149449_00000000000003c9_ps.skyrim.Jamie.txt} (100%) create mode 100644 Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.skyrim.frost.txt diff --git a/Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.txt.avgluma b/Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.avgluma.txt similarity index 100% rename from Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.txt.avgluma rename to Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.avgluma.txt diff --git a/Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.txt.skyrimpresetbotw b/Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.skyrim.Jamie.txt similarity index 100% rename from Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.txt.skyrimpresetbotw rename to Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.skyrim.Jamie.txt diff --git a/Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.skyrim.frost.txt b/Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.skyrim.frost.txt new file mode 100644 index 00000000..175ef32d --- /dev/null +++ b/Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.skyrim.frost.txt @@ -0,0 +1,402 @@ +#version 420 +#extension GL_ARB_texture_gather : enable + +// shader bd8bba59e2149449 + +// Possible problems +// Being below 1.3.0 will give you double-vision with recent graphic packs. Update to 1.3.0 or above. +// If you're experiencing any issues (due to having the previous Clarity shaders installed), please remove and redownload all of the BotW packs. + +// Credit to NAVras for merging to a better shader. +//(Thank you NAVras for debugging and answering silly questions.) +// Couldn't have got this far without you. + +// Credit to getdls for adding exposure & Original Contrasty. + +// Clarity GFX +// Credit to Jamie for main coding. +// Credit to Kiri coding & Reshade logic. +// Credit to Serfrost for preset values. +// Original shader dumped using cemu 1.10.0f, BotW 1.3.1 + +//v0.9b + +//########################################################## + +//ToneMapping +float bloomFactor = 0.15; //Default is 1.0 +float Bleach = 0.3; //Default is 0.0 +float exposure = 1.10; //Default is 1.0 +float defog = 0.001; //Default is 0.0 + +//Lift Gamma Gain +#define RGB_Lift vec3(1.00, 1.00, 1.00) //[0.000 to 2.000] Adjust shadows for Red, Green and Blue. +#define RGB_Gamma vec3(0.70, 0.70, 0.70) //[0.000 to 2.000] Adjust midtones for Red, Green and Blue +#define RGB_Gain vec3(1.00, 1.00, 1.00) //[0.000 to 2.000] Adjust highlights for Red, Green and Blue +//Note that a value of 1.0 is a neutral setting that leave the color unchanged. + +//Curves +float Contrast = 0.30; //[-1.0, 1.0] The amount of contrast you want + +//Levels Control +const int BlackPoint = 0; //[0, 255] The black point is the new black - literally. Everything darker than this will become completely black +const int WhitePoint = 255; //[0, 255] The new white point. Everything brighter than this becomes completely white + +//LumaShapening +#define sharp_strength 0.65 //[0.10 to 3.00] Strength of the sharpening Default is 0.65 +#define sharp_clamp 0.035 //[0.000 to 1.000] Limits maximum amount of sharpening a pixel recieves - Default is 0.035 + +//Advanced sharpening settings +#define offset_bias 1.0 //[0.0 to 6.0] Offset bias adjusts the radius of the sampling pattern. + +//Technicolor2 +#define Technicolor2_Red_Strength -0.40 //Default is 0.0 +#define Technicolor2_Green_Strength -0.40 //Default is 0.0 +#define Technicolor2_Blue_Strength -0.40 //Default is 0.0 +#define Technicolor2_Brightness 0.10 //Default is 1.0 +#define Technicolor2_Strength 1.0 //Default is 1.0 +#define Technicolor2_Saturation 0.80 //Default is 1.0 + +//Fake High Dynamic Range. +#define HDRPower 1.05 // 0.0 to 8.0 "Raising this seems to make the effect stronger and also darker , Default 1.30." +#define radius1 0.793 // 0.0 to 8.0 "Default 0.793 , will affect FX." +#define radius2 0.87 // 0.0 to 8.0 "Default 0.87 , will affect FX." + +//########################################################### + +//Do not edit under this line. + +float sat = 0.0; + +const vec3 FogColor = vec3(1.0, 1.5, 1.0); //defog Color"; + +uniform ivec4 uf_remappedPS[1]; +layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0xf46ac800 res 320x180x1 dim 1 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x5) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0xf5c7b800 res 1280x720x1 dim 1 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 2 2 2 border: 1 +layout(location = 0) in vec4 passParameterSem0; +layout(location = 0) out vec4 passPixelColor0; +uniform vec2 uf_fragCoordScale; +int clampFI32(int v) +{ + if (v == 0x7FFFFFFF) + return floatBitsToInt(1.0); + else if (v == 0xFFFFFFFF) + return floatBitsToInt(0.0); + return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); +} +float mul_nonIEEE(float a, float b) { if (a == 0.0 || b == 0.0) return 0.0; return a*b; } + +//ToneMapping + +vec3 TonemapPass(vec3 inputColor) { + vec3 color = inputColor; + color = clamp(color - defog * FogColor * 2.55, 0.0, 1.0); // defog + color *= exposure / (1.0 + color / exposure); + + const vec3 coefLuma = vec3(0.2126, 0.7152, 0.0722); + float lum = dot(coefLuma, color); + + float L = clamp(10.0 * (lum - 0.45), 0.0, 1.0); + vec3 A2 = Bleach * color; + + vec3 result1 = 2.0f * color * lum; + vec3 result2 = 1.0f - 2.0f * (1.0f - lum) * (1.0f - color); + + vec3 newColor = mix(result1, result2, L); + vec3 mixRGB = A2 * newColor; + color += ((1.0f - A2) * mixRGB); + + vec3 middlegray = vec3(dot(color, vec3(1.0 / 3.0))); + vec3 diffcolor = color - middlegray; + color = (color + diffcolor * sat) / (1 + (diffcolor * sat)); // saturation + + return color; +} + +// Levels + +vec3 LevelsPass(vec3 inputColor) { + float black_point_float = BlackPoint / 255.0; + float white_point_float = WhitePoint == BlackPoint ? (255.0 / 0.00025) : (255.0 / (WhitePoint - BlackPoint)); // Avoid division by zero if the white and black point are the same + + vec3 color = inputColor; + color = color * white_point_float - (black_point_float * white_point_float); + + return color; +} + +//Curves + +vec3 CurvesPass(vec3 inputColor) { + vec3 colorInput = inputColor; + float Contrast_blend = Contrast * 2.0; //I multiply by two to give it a strength closer to the other curves. + vec3 x = colorInput.rgb; //if the curve should be applied to both Luma and Chroma + x = x * (x * (1.5 - x) + 0.5); //horner form - fastest version + vec3 color = x; //if the curve should be applied to both Luma and Chroma + colorInput.rgb = mix(colorInput.rgb, color, Contrast_blend); //Blend by Contrast + return colorInput; +} + + +//TECHNICOLOR2 + +vec3 Technicolor2(vec3 inputColor) { + vec3 color = inputColor; + vec3 Color_Strength = vec3(Technicolor2_Red_Strength, Technicolor2_Green_Strength, Technicolor2_Blue_Strength); + vec3 source = color; + vec3 temp = 1.0 - source; + vec3 target = temp.grg; + vec3 target2 = temp.bbr; + vec3 temp2 = source * target; + temp2 *= target2; + + temp = temp2 * Color_Strength; + temp2 *= Technicolor2_Brightness; + + target = temp.grg; + target2 = temp.bbr; + + temp = source - target; + temp += temp2; + temp2 = temp - target2; + + color = mix(source, temp2, Technicolor2_Strength); + + color = mix(vec3(dot(color, vec3(0.333))), color, Technicolor2_Saturation); + + return color; +} + + +//Lift Gamma Gain + +vec3 LiftGammaGainPass(vec3 colorInput) +{ + // -- Get input -- + vec3 color = colorInput; + + // -- Lift -- + + color = color * (1.5 - 0.5 * RGB_Lift) + 0.5 * RGB_Lift - 0.5; + color = clamp(color, 0.0, 1.0); //isn't strictly necessary, but doesn't cost performance. + + // -- Gain -- + color *= RGB_Gain; + + // -- Gamma -- + color = pow(color, 1.0 / RGB_Gamma); //Gamma + + // -- Return output -- + return clamp(color, 0.0, 1.0); +} + +//LumaShapening + +#define px (1.0/1280.0*uf_fragCoordScale.x) +#define py (1.0/720.0*uf_fragCoordScale.y) +#define CoefLuma vec3(0.2126, 0.7152, 0.0722) + +float lumasharping(sampler2D tex, vec2 pos) { + vec4 colorInput = texture(tex, pos); + + vec3 ori = colorInput.rgb; + + // -- Combining the strength and luma multipliers -- + vec3 sharp_strength_luma = (CoefLuma * sharp_strength); + + // -- Gaussian filter -- + // [ .25, .50, .25] [ 1 , 2 , 1 ] + // [ .50, 1, .50] = [ 2 , 4 , 2 ] + // [ .25, .50, .25] [ 1 , 2 , 1 ] + + + //float px = 1.0/tex_size[0]; + //float py = 1.0/tex_size[1]; + + vec3 blur_ori = texture(tex, pos + vec2(px, -py) * 0.5 * offset_bias).rgb; // South East + blur_ori += texture(tex, pos + vec2(-px, -py) * 0.5 * offset_bias).rgb; // South West + blur_ori += texture(tex, pos + vec2(px, py) * 0.5 * offset_bias).rgb; // North East + blur_ori += texture(tex, pos + vec2(-px, py) * 0.5 * offset_bias).rgb; // North West + + blur_ori *= 0.25; // ( /= 4) Divide by the number of texture fetches + + // -- Calculate the sharpening -- + vec3 sharp = ori - blur_ori; //Subtracting the blurred image from the original image + + // -- Adjust strength of the sharpening and clamp it-- + vec4 sharp_strength_luma_clamp = vec4(sharp_strength_luma * (0.5 / sharp_clamp), 0.5); //Roll part of the clamp into the dot + + float sharp_luma = clamp((dot(vec4(sharp, 1.0), sharp_strength_luma_clamp)), 0.0, 1.0); //Calculate the luma, adjust the strength, scale up and clamp + sharp_luma = (sharp_clamp * 2.0) * sharp_luma - sharp_clamp; //scale down + + + // -- Combining the values to get the final sharpened pixel -- + + //colorInput.rgb = colorInput.rgb + sharp_luma; // Add the sharpening to the input color. + return sharp_luma; +} + +//Fake High Dynamic Range. + +vec3 HDRPass(sampler2D tex, vec2 pos) { + vec3 color = texture(tex, pos).rgb; + + vec3 bloom_sum1 = texture(tex, pos + vec2(1.5, -1.5) * radius1 * vec2(px, py)).rgb; + bloom_sum1 += texture(tex, pos + vec2(-1.5, -1.5) * radius1 * vec2(px, py)).rgb; + bloom_sum1 += texture(tex, pos + vec2(1.5, 1.5) * radius1 * vec2(px, py)).rgb; + bloom_sum1 += texture(tex, pos + vec2(-1.5, 1.5) * radius1 * vec2(px, py)).rgb; + bloom_sum1 += texture(tex, pos + vec2(0.0, -2.5) * radius1 * vec2(px, py)).rgb; + bloom_sum1 += texture(tex, pos + vec2(0.0, 2.5) * radius1 * vec2(px, py)).rgb; + bloom_sum1 += texture(tex, pos + vec2(-2.5, 0.0) * radius1 * vec2(px, py)).rgb; + bloom_sum1 += texture(tex, pos + vec2(2.5, 0.0) * radius1 * vec2(px, py)).rgb; + + bloom_sum1 *= 0.005; + + vec3 bloom_sum2 = texture(tex, pos + vec2(1.5, -1.5) * radius2 * vec2(px, py)).rgb; + bloom_sum2 += texture(tex, pos + vec2(-1.5, -1.5) * radius2 * vec2(px, py)).rgb; + bloom_sum2 += texture(tex, pos + vec2(1.5, 1.5) * radius2 * vec2(px, py)).rgb; + bloom_sum2 += texture(tex, pos + vec2(-1.5, 1.5) * radius2 * vec2(px, py)).rgb; + bloom_sum2 += texture(tex, pos + vec2(0.0, -2.5) * radius2 * vec2(px, py)).rgb; + bloom_sum2 += texture(tex, pos + vec2(0.0, 2.5) * radius2 * vec2(px, py)).rgb; + bloom_sum2 += texture(tex, pos + vec2(-2.5, 0.0) * radius2 * vec2(px, py)).rgb; + bloom_sum2 += texture(tex, pos + vec2(2.5, 0.0) * radius2 * vec2(px, py)).rgb; + + bloom_sum2 *= 0.010; + + float dist = radius2 - radius1; + vec3 HDR = (color + (bloom_sum2 - bloom_sum1)) * dist; + + vec3 blend = HDR + color; + color = pow(abs(blend), vec3(abs(HDRPower))) + HDR; + + return color; +} + +void main() +{ + vec4 R0f = vec4(0.0); + vec4 R1f = vec4(0.0); + vec4 R123f = vec4(0.0); + vec4 R125f = vec4(0.0); + vec4 R126f = vec4(0.0); + vec4 R127f = vec4(0.0); + float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; + vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); + float PS0f = 0.0, PS1f = 0.0; + vec4 tempf = vec4(0.0); + float tempResultf; + int tempResulti; + ivec4 ARi = ivec4(0); + bool predResult = true; + vec3 cubeMapSTM; + int cubeMapFaceId; + R0f = passParameterSem0; + R1f.xyz = (texture(textureUnitPS0, R0f.xy).xyz); + vec3 bloom = texture(textureUnitPS0, passParameterSem0.xy).xyz; + bloom *= bloomFactor; + R0f.xyz = HDRPass(textureUnitPS1, passParameterSem0.xy); + float smask = lumasharping(textureUnitPS1, passParameterSem0.xy); + R0f.xyz += vec3(smask); + // 0 + R126f.x = R1f.x + R0f.x; + PV0f.x = R126f.x; + R127f.y = R1f.y + R0f.y; + PV0f.y = R127f.y; + R126f.z = R1f.z + R0f.z; + PV0f.z = R126f.z; + R125f.w = 1.0; + // 1 + tempf.x = dot(vec4(PV0f.x, PV0f.y, PV0f.z, -0.0), vec4(intBitsToFloat(0x3e99096c), intBitsToFloat(0x3f162b6b), intBitsToFloat(0x3dea4a8c), 0.0)); + PV1f.x = tempf.x; + PV1f.y = tempf.x; + PV1f.z = tempf.x; + PV1f.w = tempf.x; + // 2 + R127f.x = -(R127f.y) * intBitsToFloat(0x3fb8aa3b); + PV0f.y = -(PV1f.x) * intBitsToFloat(0x3fb8aa3b); + R127f.z = -(R126f.x) * intBitsToFloat(0x3fb8aa3b); + R127f.w = -(R126f.z) * intBitsToFloat(0x3fb8aa3b); + R126f.w = 1.0 / PV1f.x; + PS0f = R126f.w; + // 3 + PS1f = exp2(PV0f.y); + // 4 + PV0f.x = -(PS1f)+1.0; + PS0f = exp2(R127f.x); + // 5 + R127f.x = -(PS0f)+1.0; + R126f.y = mul_nonIEEE(PV0f.x, PV0f.x); + PV1f.z = PV0f.x * R126f.w; + PS1f = exp2(R127f.w); + // 6 + backupReg0f = R126f.x; + backupReg1f = R127f.z; + R126f.x = mul_nonIEEE(backupReg0f, PV1f.z); + PV0f.y = -(PS1f)+1.0; + R127f.z = mul_nonIEEE(R126f.z, PV1f.z); + PV0f.z = R127f.z; + R127f.w = mul_nonIEEE(R127f.y, PV1f.z); + PV0f.w = R127f.w; + PS0f = exp2(backupReg1f); + // 7 + PV1f.x = R127f.x + -(PV0f.w); + PV1f.y = PV0f.y + -(PV0f.z); + PV1f.w = -(PS0f)+1.0; + // 8 + backupReg0f = R127f.z; + R127f.x = (mul_nonIEEE(PV1f.x, R126f.y) + R127f.w); + R127f.x = clamp(R127f.x, 0.0, 1.0); + PV0f.x = R127f.x; + PV0f.y = PV1f.w + -(R126f.x); + R127f.z = (mul_nonIEEE(PV1f.y, R126f.y) + backupReg0f); + R127f.z = clamp(R127f.z, 0.0, 1.0); + PV0f.z = R127f.z; + // 9 + backupReg0f = R126f.x; + R126f.x = (mul_nonIEEE(PV0f.y, R126f.y) + backupReg0f); + R126f.x = clamp(R126f.x, 0.0, 1.0); + PV1f.x = R126f.x; + R126f.y = max(PV0f.x, PV0f.z); + PV1f.w = min(PV0f.x, PV0f.z); + // 10 + tempf.x = dot(vec4(PV1f.x, R127f.x, R127f.z, R125f.w), vec4(intBitsToFloat(0x3f2aaaab), intBitsToFloat(0x3f2aaaab), intBitsToFloat(0x3f2aaaab), -(1.0))); + PV0f.x = tempf.x; + PV0f.y = tempf.x; + PV0f.z = tempf.x; + PV0f.w = tempf.x; + R126f.z = min(PV1f.x, PV1f.w); + PS0f = R126f.z; + // 11 + backupReg0f = R127f.x; + backupReg1f = R127f.z; + R127f.x = max(R126f.x, R126f.y); + PV1f.x = R127f.x; + R123f.y = (mul_nonIEEE(-(PV0f.x), PV0f.x) + 1.0); + PV1f.y = R123f.y; + R127f.z = backupReg0f + -(PS0f); + R125f.w = R126f.x + -(PS0f); + R126f.y = backupReg1f + -(PS0f); + PS1f = R126f.y; + // 12 + R126f.x = (mul_nonIEEE(PV1f.y, intBitsToFloat(uf_remappedPS[0].y)) + intBitsToFloat(uf_remappedPS[0].x)); + PV0f.x = R126f.x; + PV0f.y = -(R126f.z) + PV1f.x; + // 13 + R123f.w = (mul_nonIEEE(-(PV0f.x), PV0f.y) + R127f.x); + PV1f.w = R123f.w; + // 14 + R0f.x = (mul_nonIEEE(R126f.x, R125f.w) + PV1f.w); + R0f.y = (mul_nonIEEE(R126f.x, R127f.z) + PV1f.w); + R0f.z = (mul_nonIEEE(R126f.x, R126f.y) + PV1f.w); + + passPixelColor0 = vec4(R0f.x, R0f.y, R0f.z, R0f.w); + + vec3 color = (passPixelColor0.xyz); + color += bloom; + color = TonemapPass(color); + color = Technicolor2(color); + color = LevelsPass(color); + color = CurvesPass(color); + color = LiftGammaGainPass(color); + passPixelColor0 = vec4(color, R0f.w); +} \ No newline at end of file From 8aedceadac504526ca2227556f3311434473730c Mon Sep 17 00:00:00 2001 From: Jamie Date: Sat, 11 Nov 2017 17:33:30 -0800 Subject: [PATCH 32/34] ClarityGFXq Fixed the file names so they don't all activate at once. --- ...8bba59e2149449_00000000000003c9_ps.HDR OFF | 402 ++++++++++++++++++ ...bba59e2149449_00000000000003c9_ps.avgluma} | 0 ...e2149449_00000000000003c9_ps.skyrim.Jamie} | 0 ...e2149449_00000000000003c9_ps.skyrim.frost} | 0 4 files changed, 402 insertions(+) create mode 100644 Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.HDR OFF rename Enhancement/BreathOfTheWild_ClarityGFX/{bd8bba59e2149449_00000000000003c9_ps.avgluma.txt => bd8bba59e2149449_00000000000003c9_ps.avgluma} (100%) rename Enhancement/BreathOfTheWild_ClarityGFX/{bd8bba59e2149449_00000000000003c9_ps.skyrim.Jamie.txt => bd8bba59e2149449_00000000000003c9_ps.skyrim.Jamie} (100%) rename Enhancement/BreathOfTheWild_ClarityGFX/{bd8bba59e2149449_00000000000003c9_ps.skyrim.frost.txt => bd8bba59e2149449_00000000000003c9_ps.skyrim.frost} (100%) diff --git a/Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.HDR OFF b/Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.HDR OFF new file mode 100644 index 00000000..70ac2910 --- /dev/null +++ b/Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.HDR OFF @@ -0,0 +1,402 @@ +#version 420 +#extension GL_ARB_texture_gather : enable + +// shader bd8bba59e2149449 + +// Possible problems +// Being below 1.3.0 will give you double-vision with recent graphic packs. Update to 1.3.0 or above. +// If you're experiencing any issues (due to having the previous Clarity shaders installed), please remove and redownload all of the BotW packs. + +// Credit to NAVras for merging to a better shader. +//(Thank you NAVras for debugging and answering silly questions.) +// Couldn't have got this far without you. + +// Credit to getdls for adding exposure & Original Contrasty. + +// Clarity GFX +// Credit to Jamie for main coding. +// Credit to Kiri coding & Reshade logic. +// Credit to Serfrost for preset values. +// Original shader dumped using cemu 1.10.0f, BotW 1.3.1 + +//v0.9b + +//########################################################## + +//ToneMapping +float bloomFactor = 0.15; //Default is 1.0 +float Bleach = 0.2; //Default is 0.0 +float exposure = 1.25; //Default is 1.0 +float defog = 0.004; //Default is 0.0 + +//Lift Gamma Gain +#define RGB_Lift vec3(1.00, 1.00, 1.00) //[0.000 to 2.000] Adjust shadows for Red, Green and Blue. +#define RGB_Gamma vec3(0.67, 0.67, 0.67) //[0.000 to 2.000] Adjust midtones for Red, Green and Blue +#define RGB_Gain vec3(1.00, 0.95, 1.00) //[0.000 to 2.000] Adjust highlights for Red, Green and Blue +//Note that a value of 1.0 is a neutral setting that leave the color unchanged. + +//Curves +float Contrast = 0.15; //[-1.0, 1.0] The amount of contrast you want + +//Levels Control +const int BlackPoint = 0; //[0, 255] The black point is the new black - literally. Everything darker than this will become completely black +const int WhitePoint = 255; //[0, 255] The new white point. Everything brighter than this becomes completely white + +//LumaShapening +#define sharp_strength 0.35 //[0.10 to 3.00] Strength of the sharpening Default is 0.65 +#define sharp_clamp 0.015 //[0.000 to 1.000] Limits maximum amount of sharpening a pixel recieves - Default is 0.035 + +//Advanced sharpening settings +#define offset_bias 0.5 //[0.0 to 6.0] Offset bias adjusts the radius of the sampling pattern. + +//Technicolor2 +#define Technicolor2_Red_Strength 0.12 //Default is 0.0 +#define Technicolor2_Green_Strength 0.20 //Default is 0.0 +#define Technicolor2_Blue_Strength 0.12 //Default is 0.0 +#define Technicolor2_Brightness 0.45 //Default is 1.0 +#define Technicolor2_Strength 1.0 //Default is 1.0 +#define Technicolor2_Saturation 0.70 //Default is 1.0 + +//Fake High Dynamic Range. +#define HDRPower 1.0 // 0.0 to 8.0 "Raising this seems to make the effect stronger and also darker , Default 1.15" +#define radius1 0.00 // 0.0 to 8.0 "Default 0.793 , will affect FX." +#define radius2 0.00 // 0.0 to 8.0 "Default 0.87 , will affect FX." + +//########################################################### + +//Do not edit under this line. + +float sat = 0.0; + +const vec3 FogColor = vec3(1.0, 1.5, 1.0); //defog Color"; + +uniform ivec4 uf_remappedPS[1]; +layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0xf46ac800 res 320x180x1 dim 1 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x5) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 2 2 2 border: 1 +layout(binding = 1) uniform sampler2D textureUnitPS1;// Tex1 addr 0xf5c7b800 res 1280x720x1 dim 1 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler1 ClampX/Y/Z: 2 2 2 border: 1 +layout(location = 0) in vec4 passParameterSem0; +layout(location = 0) out vec4 passPixelColor0; +uniform vec2 uf_fragCoordScale; +int clampFI32(int v) +{ + if (v == 0x7FFFFFFF) + return floatBitsToInt(1.0); + else if (v == 0xFFFFFFFF) + return floatBitsToInt(0.0); + return floatBitsToInt(clamp(intBitsToFloat(v), 0.0, 1.0)); +} +float mul_nonIEEE(float a, float b) { if (a == 0.0 || b == 0.0) return 0.0; return a*b; } + +//ToneMapping + +vec3 TonemapPass(vec3 inputColor) { + vec3 color = inputColor; + color = clamp(color - defog * FogColor * 2.55, 0.0, 1.0); // defog + color *= exposure / (1.0 + color / exposure); + + const vec3 coefLuma = vec3(0.2126, 0.7152, 0.0722); + float lum = dot(coefLuma, color); + + float L = clamp(10.0 * (lum - 0.45), 0.0, 1.0); + vec3 A2 = Bleach * color; + + vec3 result1 = 2.0f * color * lum; + vec3 result2 = 1.0f - 2.0f * (1.0f - lum) * (1.0f - color); + + vec3 newColor = mix(result1, result2, L); + vec3 mixRGB = A2 * newColor; + color += ((1.0f - A2) * mixRGB); + + vec3 middlegray = vec3(dot(color, vec3(1.0 / 3.0))); + vec3 diffcolor = color - middlegray; + color = (color + diffcolor * sat) / (1 + (diffcolor * sat)); // saturation + + return color; +} + +// Levels + +vec3 LevelsPass(vec3 inputColor) { + float black_point_float = BlackPoint / 255.0; + float white_point_float = WhitePoint == BlackPoint ? (255.0 / 0.00025) : (255.0 / (WhitePoint - BlackPoint)); // Avoid division by zero if the white and black point are the same + + vec3 color = inputColor; + color = color * white_point_float - (black_point_float * white_point_float); + + return color; +} + +//Curves + +vec3 CurvesPass(vec3 inputColor) { + vec3 colorInput = inputColor; + float Contrast_blend = Contrast * 2.0; //I multiply by two to give it a strength closer to the other curves. + vec3 x = colorInput.rgb; //if the curve should be applied to both Luma and Chroma + x = x * (x * (1.5 - x) + 0.5); //horner form - fastest version + vec3 color = x; //if the curve should be applied to both Luma and Chroma + colorInput.rgb = mix(colorInput.rgb, color, Contrast_blend); //Blend by Contrast + return colorInput; +} + + +//TECHNICOLOR2 + +vec3 Technicolor2(vec3 inputColor) { + vec3 color = inputColor; + vec3 Color_Strength = vec3(Technicolor2_Red_Strength, Technicolor2_Green_Strength, Technicolor2_Blue_Strength); + vec3 source = color; + vec3 temp = 1.0 - source; + vec3 target = temp.grg; + vec3 target2 = temp.bbr; + vec3 temp2 = source * target; + temp2 *= target2; + + temp = temp2 * Color_Strength; + temp2 *= Technicolor2_Brightness; + + target = temp.grg; + target2 = temp.bbr; + + temp = source - target; + temp += temp2; + temp2 = temp - target2; + + color = mix(source, temp2, Technicolor2_Strength); + + color = mix(vec3(dot(color, vec3(0.333))), color, Technicolor2_Saturation); + + return color; +} + + +//Lift Gamma Gain + +vec3 LiftGammaGainPass(vec3 colorInput) +{ + // -- Get input -- + vec3 color = colorInput; + + // -- Lift -- + + color = color * (1.5 - 0.5 * RGB_Lift) + 0.5 * RGB_Lift - 0.5; + color = clamp(color, 0.0, 1.0); //isn't strictly necessary, but doesn't cost performance. + + // -- Gain -- + color *= RGB_Gain; + + // -- Gamma -- + color = pow(color, 1.0 / RGB_Gamma); //Gamma + + // -- Return output -- + return clamp(color, 0.0, 1.0); +} + +//LumaShapening + +#define px (1.0/1280.0*uf_fragCoordScale.x) +#define py (1.0/720.0*uf_fragCoordScale.y) +#define CoefLuma vec3(0.2126, 0.7152, 0.0722) + +float lumasharping(sampler2D tex, vec2 pos) { + vec4 colorInput = texture(tex, pos); + + vec3 ori = colorInput.rgb; + + // -- Combining the strength and luma multipliers -- + vec3 sharp_strength_luma = (CoefLuma * sharp_strength); + + // -- Gaussian filter -- + // [ .25, .50, .25] [ 1 , 2 , 1 ] + // [ .50, 1, .50] = [ 2 , 4 , 2 ] + // [ .25, .50, .25] [ 1 , 2 , 1 ] + + + //float px = 1.0/tex_size[0]; + //float py = 1.0/tex_size[1]; + + vec3 blur_ori = texture(tex, pos + vec2(px, -py) * 0.5 * offset_bias).rgb; // South East + blur_ori += texture(tex, pos + vec2(-px, -py) * 0.5 * offset_bias).rgb; // South West + blur_ori += texture(tex, pos + vec2(px, py) * 0.5 * offset_bias).rgb; // North East + blur_ori += texture(tex, pos + vec2(-px, py) * 0.5 * offset_bias).rgb; // North West + + blur_ori *= 0.25; // ( /= 4) Divide by the number of texture fetches + + // -- Calculate the sharpening -- + vec3 sharp = ori - blur_ori; //Subtracting the blurred image from the original image + + // -- Adjust strength of the sharpening and clamp it-- + vec4 sharp_strength_luma_clamp = vec4(sharp_strength_luma * (0.5 / sharp_clamp), 0.5); //Roll part of the clamp into the dot + + float sharp_luma = clamp((dot(vec4(sharp, 1.0), sharp_strength_luma_clamp)), 0.0, 1.0); //Calculate the luma, adjust the strength, scale up and clamp + sharp_luma = (sharp_clamp * 2.0) * sharp_luma - sharp_clamp; //scale down + + + // -- Combining the values to get the final sharpened pixel -- + + //colorInput.rgb = colorInput.rgb + sharp_luma; // Add the sharpening to the input color. + return sharp_luma; +} + +//Fake High Dynamic Range. + +vec3 HDRPass(sampler2D tex, vec2 pos) { + vec3 color = texture(tex, pos).rgb; + + vec3 bloom_sum1 = texture(tex, pos + vec2(1.5, -1.5) * radius1 * vec2(px, py)).rgb; + bloom_sum1 += texture(tex, pos + vec2(-1.5, -1.5) * radius1 * vec2(px, py)).rgb; + bloom_sum1 += texture(tex, pos + vec2(1.5, 1.5) * radius1 * vec2(px, py)).rgb; + bloom_sum1 += texture(tex, pos + vec2(-1.5, 1.5) * radius1 * vec2(px, py)).rgb; + bloom_sum1 += texture(tex, pos + vec2(0.0, -2.5) * radius1 * vec2(px, py)).rgb; + bloom_sum1 += texture(tex, pos + vec2(0.0, 2.5) * radius1 * vec2(px, py)).rgb; + bloom_sum1 += texture(tex, pos + vec2(-2.5, 0.0) * radius1 * vec2(px, py)).rgb; + bloom_sum1 += texture(tex, pos + vec2(2.5, 0.0) * radius1 * vec2(px, py)).rgb; + + bloom_sum1 *= 0.005; + + vec3 bloom_sum2 = texture(tex, pos + vec2(1.5, -1.5) * radius2 * vec2(px, py)).rgb; + bloom_sum2 += texture(tex, pos + vec2(-1.5, -1.5) * radius2 * vec2(px, py)).rgb; + bloom_sum2 += texture(tex, pos + vec2(1.5, 1.5) * radius2 * vec2(px, py)).rgb; + bloom_sum2 += texture(tex, pos + vec2(-1.5, 1.5) * radius2 * vec2(px, py)).rgb; + bloom_sum2 += texture(tex, pos + vec2(0.0, -2.5) * radius2 * vec2(px, py)).rgb; + bloom_sum2 += texture(tex, pos + vec2(0.0, 2.5) * radius2 * vec2(px, py)).rgb; + bloom_sum2 += texture(tex, pos + vec2(-2.5, 0.0) * radius2 * vec2(px, py)).rgb; + bloom_sum2 += texture(tex, pos + vec2(2.5, 0.0) * radius2 * vec2(px, py)).rgb; + + bloom_sum2 *= 0.010; + + float dist = radius2 - radius1; + vec3 HDR = (color + (bloom_sum2 - bloom_sum1)) * dist; + + vec3 blend = HDR + color; + color = pow(abs(blend), vec3(abs(HDRPower))) + HDR; + + return color; +} + +void main() +{ + vec4 R0f = vec4(0.0); + vec4 R1f = vec4(0.0); + vec4 R123f = vec4(0.0); + vec4 R125f = vec4(0.0); + vec4 R126f = vec4(0.0); + vec4 R127f = vec4(0.0); + float backupReg0f, backupReg1f, backupReg2f, backupReg3f, backupReg4f; + vec4 PV0f = vec4(0.0), PV1f = vec4(0.0); + float PS0f = 0.0, PS1f = 0.0; + vec4 tempf = vec4(0.0); + float tempResultf; + int tempResulti; + ivec4 ARi = ivec4(0); + bool predResult = true; + vec3 cubeMapSTM; + int cubeMapFaceId; + R0f = passParameterSem0; + R1f.xyz = (texture(textureUnitPS0, R0f.xy).xyz); + vec3 bloom = texture(textureUnitPS0, passParameterSem0.xy).xyz; + bloom *= bloomFactor; + R0f.xyz = HDRPass(textureUnitPS1, passParameterSem0.xy); + float smask = lumasharping(textureUnitPS1, passParameterSem0.xy); + R0f.xyz += vec3(smask); + // 0 + R126f.x = R1f.x + R0f.x; + PV0f.x = R126f.x; + R127f.y = R1f.y + R0f.y; + PV0f.y = R127f.y; + R126f.z = R1f.z + R0f.z; + PV0f.z = R126f.z; + R125f.w = 1.0; + // 1 + tempf.x = dot(vec4(PV0f.x, PV0f.y, PV0f.z, -0.0), vec4(intBitsToFloat(0x3e99096c), intBitsToFloat(0x3f162b6b), intBitsToFloat(0x3dea4a8c), 0.0)); + PV1f.x = tempf.x; + PV1f.y = tempf.x; + PV1f.z = tempf.x; + PV1f.w = tempf.x; + // 2 + R127f.x = -(R127f.y) * intBitsToFloat(0x3fb8aa3b); + PV0f.y = -(PV1f.x) * intBitsToFloat(0x3fb8aa3b); + R127f.z = -(R126f.x) * intBitsToFloat(0x3fb8aa3b); + R127f.w = -(R126f.z) * intBitsToFloat(0x3fb8aa3b); + R126f.w = 1.0 / PV1f.x; + PS0f = R126f.w; + // 3 + PS1f = exp2(PV0f.y); + // 4 + PV0f.x = -(PS1f)+1.0; + PS0f = exp2(R127f.x); + // 5 + R127f.x = -(PS0f)+1.0; + R126f.y = mul_nonIEEE(PV0f.x, PV0f.x); + PV1f.z = PV0f.x * R126f.w; + PS1f = exp2(R127f.w); + // 6 + backupReg0f = R126f.x; + backupReg1f = R127f.z; + R126f.x = mul_nonIEEE(backupReg0f, PV1f.z); + PV0f.y = -(PS1f)+1.0; + R127f.z = mul_nonIEEE(R126f.z, PV1f.z); + PV0f.z = R127f.z; + R127f.w = mul_nonIEEE(R127f.y, PV1f.z); + PV0f.w = R127f.w; + PS0f = exp2(backupReg1f); + // 7 + PV1f.x = R127f.x + -(PV0f.w); + PV1f.y = PV0f.y + -(PV0f.z); + PV1f.w = -(PS0f)+1.0; + // 8 + backupReg0f = R127f.z; + R127f.x = (mul_nonIEEE(PV1f.x, R126f.y) + R127f.w); + R127f.x = clamp(R127f.x, 0.0, 1.0); + PV0f.x = R127f.x; + PV0f.y = PV1f.w + -(R126f.x); + R127f.z = (mul_nonIEEE(PV1f.y, R126f.y) + backupReg0f); + R127f.z = clamp(R127f.z, 0.0, 1.0); + PV0f.z = R127f.z; + // 9 + backupReg0f = R126f.x; + R126f.x = (mul_nonIEEE(PV0f.y, R126f.y) + backupReg0f); + R126f.x = clamp(R126f.x, 0.0, 1.0); + PV1f.x = R126f.x; + R126f.y = max(PV0f.x, PV0f.z); + PV1f.w = min(PV0f.x, PV0f.z); + // 10 + tempf.x = dot(vec4(PV1f.x, R127f.x, R127f.z, R125f.w), vec4(intBitsToFloat(0x3f2aaaab), intBitsToFloat(0x3f2aaaab), intBitsToFloat(0x3f2aaaab), -(1.0))); + PV0f.x = tempf.x; + PV0f.y = tempf.x; + PV0f.z = tempf.x; + PV0f.w = tempf.x; + R126f.z = min(PV1f.x, PV1f.w); + PS0f = R126f.z; + // 11 + backupReg0f = R127f.x; + backupReg1f = R127f.z; + R127f.x = max(R126f.x, R126f.y); + PV1f.x = R127f.x; + R123f.y = (mul_nonIEEE(-(PV0f.x), PV0f.x) + 1.0); + PV1f.y = R123f.y; + R127f.z = backupReg0f + -(PS0f); + R125f.w = R126f.x + -(PS0f); + R126f.y = backupReg1f + -(PS0f); + PS1f = R126f.y; + // 12 + R126f.x = (mul_nonIEEE(PV1f.y, intBitsToFloat(uf_remappedPS[0].y)) + intBitsToFloat(uf_remappedPS[0].x)); + PV0f.x = R126f.x; + PV0f.y = -(R126f.z) + PV1f.x; + // 13 + R123f.w = (mul_nonIEEE(-(PV0f.x), PV0f.y) + R127f.x); + PV1f.w = R123f.w; + // 14 + R0f.x = (mul_nonIEEE(R126f.x, R125f.w) + PV1f.w); + R0f.y = (mul_nonIEEE(R126f.x, R127f.z) + PV1f.w); + R0f.z = (mul_nonIEEE(R126f.x, R126f.y) + PV1f.w); + + passPixelColor0 = vec4(R0f.x, R0f.y, R0f.z, R0f.w); + + vec3 color = (passPixelColor0.xyz); + color += bloom; + color = TonemapPass(color); + color = Technicolor2(color); + color = LevelsPass(color); + color = CurvesPass(color); + color = LiftGammaGainPass(color); + passPixelColor0 = vec4(color, R0f.w); +} \ No newline at end of file diff --git a/Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.avgluma.txt b/Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.avgluma similarity index 100% rename from Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.avgluma.txt rename to Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.avgluma diff --git a/Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.skyrim.Jamie.txt b/Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.skyrim.Jamie similarity index 100% rename from Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.skyrim.Jamie.txt rename to Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.skyrim.Jamie diff --git a/Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.skyrim.frost.txt b/Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.skyrim.frost similarity index 100% rename from Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.skyrim.frost.txt rename to Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.skyrim.frost From 024bcc55fd302f527daecc8028803b775f207596 Mon Sep 17 00:00:00 2001 From: Jamie Date: Sat, 11 Nov 2017 22:38:14 -0800 Subject: [PATCH 33/34] ClarityGFX Added Directions . --- .../BreathOfTheWild_ClarityGFX/#..Use only 1 preset version | 1 + .../#.Rename a preset to [shaderID]_ps.txt in order to use it | 1 + ...o rename the one you're using before renaming the new preset | 1 + .../38d70ed9280bb3bc_0000000000000079_ps.txt | 2 +- 4 files changed, 4 insertions(+), 1 deletion(-) create mode 100644 Enhancement/BreathOfTheWild_ClarityGFX/#..Use only 1 preset version create mode 100644 Enhancement/BreathOfTheWild_ClarityGFX/#.Rename a preset to [shaderID]_ps.txt in order to use it create mode 100644 Enhancement/BreathOfTheWild_ClarityGFX/#Make sure to rename the one you're using before renaming the new preset diff --git a/Enhancement/BreathOfTheWild_ClarityGFX/#..Use only 1 preset version b/Enhancement/BreathOfTheWild_ClarityGFX/#..Use only 1 preset version new file mode 100644 index 00000000..08778d7a --- /dev/null +++ b/Enhancement/BreathOfTheWild_ClarityGFX/#..Use only 1 preset version @@ -0,0 +1 @@ +{\rtf1} \ No newline at end of file diff --git a/Enhancement/BreathOfTheWild_ClarityGFX/#.Rename a preset to [shaderID]_ps.txt in order to use it b/Enhancement/BreathOfTheWild_ClarityGFX/#.Rename a preset to [shaderID]_ps.txt in order to use it new file mode 100644 index 00000000..08778d7a --- /dev/null +++ b/Enhancement/BreathOfTheWild_ClarityGFX/#.Rename a preset to [shaderID]_ps.txt in order to use it @@ -0,0 +1 @@ +{\rtf1} \ No newline at end of file diff --git a/Enhancement/BreathOfTheWild_ClarityGFX/#Make sure to rename the one you're using before renaming the new preset b/Enhancement/BreathOfTheWild_ClarityGFX/#Make sure to rename the one you're using before renaming the new preset new file mode 100644 index 00000000..08778d7a --- /dev/null +++ b/Enhancement/BreathOfTheWild_ClarityGFX/#Make sure to rename the one you're using before renaming the new preset @@ -0,0 +1 @@ +{\rtf1} \ No newline at end of file diff --git a/Enhancement/BreathOfTheWild_ClarityGFX/38d70ed9280bb3bc_0000000000000079_ps.txt b/Enhancement/BreathOfTheWild_ClarityGFX/38d70ed9280bb3bc_0000000000000079_ps.txt index 2c8db3e2..b8d9c07a 100644 --- a/Enhancement/BreathOfTheWild_ClarityGFX/38d70ed9280bb3bc_0000000000000079_ps.txt +++ b/Enhancement/BreathOfTheWild_ClarityGFX/38d70ed9280bb3bc_0000000000000079_ps.txt @@ -1,6 +1,6 @@ #version 420 #extension GL_ARB_texture_gather : enable -float fogFactor = 1.0; +float fogFactor = 0.2; // shader 38d70ed9280bb3bc uniform ivec4 uf_remappedPS[1]; layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0xf46ac800 res 320x180x1 dim 1 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x5) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 2 2 2 border: 1 From ef1d1a093cbd67d18858fd5c2fddf5fe62a5a2f9 Mon Sep 17 00:00:00 2001 From: Jamie Date: Sat, 11 Nov 2017 23:13:30 -0800 Subject: [PATCH 34/34] ClarityGFX Renamed files so they wont over write one another... 4th time a charm? --- ...ma => Preset_Avgluma_bd8bba59e2149449_00000000000003c9_ps.txt} | 0 ...OFF => Preset_HDROFF_bd8bba59e2149449_00000000000003c9_ps.txt} | 0 ... Preset_Skyrim_Frost_bd8bba59e2149449_00000000000003c9_ps.txt} | 0 ... Preset_Skyrim_Jamie_bd8bba59e2149449_00000000000003c9_ps.txt} | 0 4 files changed, 0 insertions(+), 0 deletions(-) rename Enhancement/BreathOfTheWild_ClarityGFX/{bd8bba59e2149449_00000000000003c9_ps.avgluma => Preset_Avgluma_bd8bba59e2149449_00000000000003c9_ps.txt} (100%) rename Enhancement/BreathOfTheWild_ClarityGFX/{bd8bba59e2149449_00000000000003c9_ps.HDR OFF => Preset_HDROFF_bd8bba59e2149449_00000000000003c9_ps.txt} (100%) rename Enhancement/BreathOfTheWild_ClarityGFX/{bd8bba59e2149449_00000000000003c9_ps.skyrim.frost => Preset_Skyrim_Frost_bd8bba59e2149449_00000000000003c9_ps.txt} (100%) rename Enhancement/BreathOfTheWild_ClarityGFX/{bd8bba59e2149449_00000000000003c9_ps.skyrim.Jamie => Preset_Skyrim_Jamie_bd8bba59e2149449_00000000000003c9_ps.txt} (100%) diff --git a/Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.avgluma b/Enhancement/BreathOfTheWild_ClarityGFX/Preset_Avgluma_bd8bba59e2149449_00000000000003c9_ps.txt similarity index 100% rename from Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.avgluma rename to Enhancement/BreathOfTheWild_ClarityGFX/Preset_Avgluma_bd8bba59e2149449_00000000000003c9_ps.txt diff --git a/Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.HDR OFF b/Enhancement/BreathOfTheWild_ClarityGFX/Preset_HDROFF_bd8bba59e2149449_00000000000003c9_ps.txt similarity index 100% rename from Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.HDR OFF rename to Enhancement/BreathOfTheWild_ClarityGFX/Preset_HDROFF_bd8bba59e2149449_00000000000003c9_ps.txt diff --git a/Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.skyrim.frost b/Enhancement/BreathOfTheWild_ClarityGFX/Preset_Skyrim_Frost_bd8bba59e2149449_00000000000003c9_ps.txt similarity index 100% rename from Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.skyrim.frost rename to Enhancement/BreathOfTheWild_ClarityGFX/Preset_Skyrim_Frost_bd8bba59e2149449_00000000000003c9_ps.txt diff --git a/Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.skyrim.Jamie b/Enhancement/BreathOfTheWild_ClarityGFX/Preset_Skyrim_Jamie_bd8bba59e2149449_00000000000003c9_ps.txt similarity index 100% rename from Enhancement/BreathOfTheWild_ClarityGFX/bd8bba59e2149449_00000000000003c9_ps.skyrim.Jamie rename to Enhancement/BreathOfTheWild_ClarityGFX/Preset_Skyrim_Jamie_bd8bba59e2149449_00000000000003c9_ps.txt

    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