diff options
| author | Jason Maskell <[email protected]> | 2016-05-09 10:39:54 +0200 |
|---|---|---|
| committer | Jason Maskell <[email protected]> | 2016-05-09 10:39:54 +0200 |
| commit | 79b3462799c28af8ba586349bd671b1b56e72353 (patch) | |
| tree | 3b06e36c390254c0dc7f3733a0d32af213d87293 /src/generated | |
| download | waveworks_archive-79b3462799c28af8ba586349bd671b1b56e72353.tar.xz waveworks_archive-79b3462799c28af8ba586349bd671b1b56e72353.zip | |
Initial commit with PS4 and XBone stuff trimmed.
Diffstat (limited to 'src/generated')
24 files changed, 8783 insertions, 0 deletions
diff --git a/src/generated/Attributes_map.h b/src/generated/Attributes_map.h new file mode 100644 index 0000000..123d367 --- /dev/null +++ b/src/generated/Attributes_map.h @@ -0,0 +1,63 @@ +LPCSTR nvsf_attr_ps_buffer = "nv_waveworks_attr15"; +LPCSTR nvsf_attr_vs_buffer = "nv_waveworks_attr0"; +LPCSTR nvsf_blend_factor_cascade0123 = "nv_waveworks_attr38"; +LPCSTR nvsf_blendfactors = "nv_waveworks_attr46"; +LPCSTR nvsf_c2c_scale = "nv_waveworks_attr57"; +LPCSTR nvsf_cascade_spatial_size = "nv_waveworks_attr47"; +LPCSTR nvsf_displacement = "nv_waveworks_attr48"; +LPCSTR nvsf_distance = "nv_waveworks_attr41"; +LPCSTR nvsf_eye_dir = "nv_waveworks_attr51"; +LPCSTR nvsf_eye_vec = "nv_waveworks_attr39"; +LPCSTR nvsf_foam_surface_folding = "nv_waveworks_attr59"; +LPCSTR nvsf_foam_turbulent_energy = "nv_waveworks_attr58"; +LPCSTR nvsf_foam_wave_hats = "nv_waveworks_attr62"; +LPCSTR nvsf_g_Cascade1Scale_PS = "nv_waveworks_attr17"; +LPCSTR nvsf_g_Cascade1TexelScale_PS = "nv_waveworks_attr18"; +LPCSTR nvsf_g_Cascade1UVOffset_PS = "nv_waveworks_attr19"; +LPCSTR nvsf_g_Cascade2Scale_PS = "nv_waveworks_attr20"; +LPCSTR nvsf_g_Cascade2TexelScale_PS = "nv_waveworks_attr21"; +LPCSTR nvsf_g_Cascade2UVOffset_PS = "nv_waveworks_attr22"; +LPCSTR nvsf_g_Cascade3Scale_PS = "nv_waveworks_attr23"; +LPCSTR nvsf_g_Cascade3TexelScale_PS = "nv_waveworks_attr24"; +LPCSTR nvsf_g_Cascade3UVOffset_PS = "nv_waveworks_attr25"; +LPCSTR nvsf_g_Pad1 = "nv_waveworks_attr3"; +LPCSTR nvsf_g_TexelLength_x2_PS = "nv_waveworks_attr16"; +LPCSTR nvsf_g_UVScaleCascade0123 = "nv_waveworks_attr4"; +LPCSTR nvsf_g_UseTextureArrays = "nv_waveworks_attr2"; +LPCSTR nvsf_g_WorldEye = "nv_waveworks_attr1"; +LPCSTR nvsf_g_samplerDisplacementMap0 = "nv_waveworks_attr5"; +LPCSTR nvsf_g_samplerDisplacementMap1 = "nv_waveworks_attr7"; +LPCSTR nvsf_g_samplerDisplacementMap2 = "nv_waveworks_attr9"; +LPCSTR nvsf_g_samplerDisplacementMap3 = "nv_waveworks_attr11"; +LPCSTR nvsf_g_samplerDisplacementMapTextureArray = "nv_waveworks_attr13"; +LPCSTR nvsf_g_samplerGradientMap0 = "nv_waveworks_attr26"; +LPCSTR nvsf_g_samplerGradientMap1 = "nv_waveworks_attr28"; +LPCSTR nvsf_g_samplerGradientMap2 = "nv_waveworks_attr30"; +LPCSTR nvsf_g_samplerGradientMap3 = "nv_waveworks_attr32"; +LPCSTR nvsf_g_samplerGradientMapTextureArray = "nv_waveworks_attr34"; +LPCSTR nvsf_g_textureArrayDisplacementMap = "nv_waveworks_attr14"; +LPCSTR nvsf_g_textureArrayGradientMap = "nv_waveworks_attr35"; +LPCSTR nvsf_g_textureDisplacementMap0 = "nv_waveworks_attr6"; +LPCSTR nvsf_g_textureDisplacementMap1 = "nv_waveworks_attr8"; +LPCSTR nvsf_g_textureDisplacementMap2 = "nv_waveworks_attr10"; +LPCSTR nvsf_g_textureDisplacementMap3 = "nv_waveworks_attr12"; +LPCSTR nvsf_g_textureGradientMap0 = "nv_waveworks_attr27"; +LPCSTR nvsf_g_textureGradientMap1 = "nv_waveworks_attr29"; +LPCSTR nvsf_g_textureGradientMap2 = "nv_waveworks_attr31"; +LPCSTR nvsf_g_textureGradientMap3 = "nv_waveworks_attr33"; +LPCSTR nvsf_grad = "nv_waveworks_attr56"; +LPCSTR nvsf_grad_fold0 = "nv_waveworks_attr52"; +LPCSTR nvsf_grad_fold1 = "nv_waveworks_attr53"; +LPCSTR nvsf_grad_fold2 = "nv_waveworks_attr54"; +LPCSTR nvsf_grad_fold3 = "nv_waveworks_attr55"; +LPCSTR nvsf_hats_c2c_scale = "nv_waveworks_attr61"; +LPCSTR nvsf_normal = "nv_waveworks_attr60"; +LPCSTR nvsf_pos_world = "nv_waveworks_attr49"; +LPCSTR nvsf_pos_world_undisplaced = "nv_waveworks_attr40"; +LPCSTR nvsf_tessellated_ws_position = "nv_waveworks_attr50"; +LPCSTR nvsf_tex_coord_cascade01 = "nv_waveworks_attr36"; +LPCSTR nvsf_tex_coord_cascade23 = "nv_waveworks_attr37"; +LPCSTR nvsf_uv_world_cascade0 = "nv_waveworks_attr42"; +LPCSTR nvsf_uv_world_cascade1 = "nv_waveworks_attr43"; +LPCSTR nvsf_uv_world_cascade2 = "nv_waveworks_attr44"; +LPCSTR nvsf_uv_world_cascade3 = "nv_waveworks_attr45"; diff --git a/src/generated/CalcGradient_glsl_ps.h b/src/generated/CalcGradient_glsl_ps.h new file mode 100644 index 0000000..c53d867 --- /dev/null +++ b/src/generated/CalcGradient_glsl_ps.h @@ -0,0 +1,33 @@ +"#version 130\n" +"\t\n" +"\t\n" +"\t\n" +"\t\n" +"\t\n" +"\t\n" +"\t\n" +"\t\n" +"\t\n" +"\t\n" +" \n" +"\t\n" +"\t\n" +"uniform vec4 nv_waveworks_impl_0_1; \n" +"uniform vec4 nv_waveworks_impl_0_2;\n" +"uniform vec4 nv_waveworks_impl_0_3;\n" +"uniform vec4 nv_waveworks_impl_0_4;\n" +"uniform vec4 nv_waveworks_impl_0_5;\n" +"uniform sampler2D nv_waveworks_impl_0_7;\n" +"varying vec2 nv_waveworks_impl_0_8;\n" +"void main()\n" +"{\n" +"\tvec3 nv_waveworks_impl_0_13\t= texture(nv_waveworks_impl_0_7,nv_waveworks_impl_0_8.xy + nv_waveworks_impl_0_2.xy).rgb;\n" +"\tvec3 nv_waveworks_impl_0_14\t= texture(nv_waveworks_impl_0_7,nv_waveworks_impl_0_8.xy + nv_waveworks_impl_0_3.xy).rgb;\n" +"\tvec3 nv_waveworks_impl_0_15\t= texture(nv_waveworks_impl_0_7,nv_waveworks_impl_0_8.xy + nv_waveworks_impl_0_4.xy).rgb;\n" +"\tvec3 nv_waveworks_impl_0_16\t= texture(nv_waveworks_impl_0_7,nv_waveworks_impl_0_8.xy + nv_waveworks_impl_0_5.xy).rgb;\n" +"\tvec2 nv_waveworks_impl_0_17 = vec2(-(nv_waveworks_impl_0_14.z - nv_waveworks_impl_0_13.z) / max(0.01,1.0 + nv_waveworks_impl_0_1.y*(nv_waveworks_impl_0_14.x - nv_waveworks_impl_0_13.x)), -(nv_waveworks_impl_0_16.z - nv_waveworks_impl_0_15.z) / max(0.01,1.0+nv_waveworks_impl_0_1.y*(nv_waveworks_impl_0_16.y - nv_waveworks_impl_0_15.y)));\n" +"\tvec2 nv_waveworks_impl_0_18 = (nv_waveworks_impl_0_14.xy - nv_waveworks_impl_0_13.xy) * nv_waveworks_impl_0_1.x;\n" +"\tvec2 nv_waveworks_impl_0_19 = (nv_waveworks_impl_0_16.xy - nv_waveworks_impl_0_15.xy) * nv_waveworks_impl_0_1.x;\n" +"\tfloat nv_waveworks_impl_0_20 = (1.0f + nv_waveworks_impl_0_18.x) * (1.0f + nv_waveworks_impl_0_19.y) - nv_waveworks_impl_0_18.y * nv_waveworks_impl_0_19.x;\n" +"\tgl_FragColor = vec4(nv_waveworks_impl_0_17, nv_waveworks_impl_0_20, 0);\n" +"}\n" diff --git a/src/generated/CalcGradient_glsl_vs.h b/src/generated/CalcGradient_glsl_vs.h new file mode 100644 index 0000000..adb49d2 --- /dev/null +++ b/src/generated/CalcGradient_glsl_vs.h @@ -0,0 +1,28 @@ +"#version 130\n" +"\t\n" +"\t\n" +"\t\n" +"\t\n" +"\t\n" +"\t\n" +"\t\n" +"\t\n" +"\t\n" +"\t\n" +" \n" +"\t\n" +"\t\n" +"uniform vec4 nv_waveworks_impl_0_1; \n" +"uniform vec4 nv_waveworks_impl_0_2;\n" +"uniform vec4 nv_waveworks_impl_0_3;\n" +"uniform vec4 nv_waveworks_impl_0_4;\n" +"uniform vec4 nv_waveworks_impl_0_5;\n" +"uniform sampler2D nv_waveworks_impl_0_7;\n" +"varying vec2 nv_waveworks_impl_0_8;\n" +"attribute vec4 nv_waveworks_impl_0_9;\n" +"attribute vec2 nv_waveworks_impl_0_10;\n" +"void main()\n" +"{\n" +" gl_Position = nv_waveworks_impl_0_9;\n" +" nv_waveworks_impl_0_8 = nv_waveworks_impl_0_10;\n" +"}\n" diff --git a/src/generated/CalcGradient_map.h b/src/generated/CalcGradient_map.h new file mode 100644 index 0000000..1222ccc --- /dev/null +++ b/src/generated/CalcGradient_map.h @@ -0,0 +1,21 @@ +LPCSTR nvsf_Dx = "nv_waveworks_impl_0_18"; +LPCSTR nvsf_Dy = "nv_waveworks_impl_0_19"; +LPCSTR nvsf_J = "nv_waveworks_impl_0_20"; +LPCSTR nvsf_Output = "nv_waveworks_impl_0_12"; +LPCSTR nvsf_displace_back = "nv_waveworks_impl_0_15"; +LPCSTR nvsf_displace_front = "nv_waveworks_impl_0_16"; +LPCSTR nvsf_displace_left = "nv_waveworks_impl_0_13"; +LPCSTR nvsf_displace_right = "nv_waveworks_impl_0_14"; +LPCSTR nvsf_g_OneTexel_Back = "nv_waveworks_impl_0_4"; +LPCSTR nvsf_g_OneTexel_Front = "nv_waveworks_impl_0_5"; +LPCSTR nvsf_g_OneTexel_Left = "nv_waveworks_impl_0_2"; +LPCSTR nvsf_g_OneTexel_Right = "nv_waveworks_impl_0_3"; +LPCSTR nvsf_g_Scales = "nv_waveworks_impl_0_1"; +LPCSTR nvsf_g_samplerDisplacementMap = "nv_waveworks_impl_0_7"; +LPCSTR nvsf_g_textureDisplacementMap = "nv_waveworks_impl_0_6"; +LPCSTR nvsf_globals = "nv_waveworks_impl_0_0"; +LPCSTR nvsf_gradient = "nv_waveworks_impl_0_17"; +LPCSTR nvsf_vInPos = "nv_waveworks_impl_0_9"; +LPCSTR nvsf_vInTexCoord = "nv_waveworks_impl_0_10"; +LPCSTR nvsf_vInterpTexCoord = "nv_waveworks_impl_0_8"; +LPCSTR nvsf_vOutPos = "nv_waveworks_impl_0_11"; diff --git a/src/generated/CalcGradient_nvsf.fx b/src/generated/CalcGradient_nvsf.fx new file mode 100644 index 0000000..223674d --- /dev/null +++ b/src/generated/CalcGradient_nvsf.fx @@ -0,0 +1,63 @@ +#include "Common.fxh" +#ifdef GFSDK_WAVEWORKS_GL +#define DECLARE_ATTR_CONSTANT(Type,Label,Regoff) uniform Type Label +#define DECLARE_ATTR_SAMPLER(Label,TextureLabel,Regoff) \ + uniform sampler2D TextureLabel +#else +#define DECLARE_ATTR_CONSTANT(Type,Label,Regoff) Type Label : register(c##Regoff) +#define DECLARE_ATTR_SAMPLER(Label,TextureLabel,Regoff) \ + Texture2D Label : register(t##Regoff); \ + SamplerState TextureLabel : register(s##Regoff) +#endif +BEGIN_CBUFFER(nv_waveworks_impl_0_0,0) +DECLARE_ATTR_CONSTANT(float4,nv_waveworks_impl_0_1, 0); +DECLARE_ATTR_CONSTANT(float4,nv_waveworks_impl_0_2, 1); +DECLARE_ATTR_CONSTANT(float4,nv_waveworks_impl_0_3,2); +DECLARE_ATTR_CONSTANT(float4,nv_waveworks_impl_0_4, 3); +DECLARE_ATTR_CONSTANT(float4,nv_waveworks_impl_0_5,4); +END_CBUFFER +DECLARE_ATTR_SAMPLER(nv_waveworks_impl_0_6,nv_waveworks_impl_0_7,0); +#ifdef GFSDK_WAVEWORKS_GL +varying float2 nv_waveworks_impl_0_8; +#endif +#ifndef GFSDK_WAVEWORKS_OMIT_VS +#ifdef GFSDK_WAVEWORKS_GL +attribute float4 nv_waveworks_impl_0_9; +attribute float2 nv_waveworks_impl_0_10; +#define nv_waveworks_impl_0_11 gl_Position +void main() +#else +void vs( + float4 nv_waveworks_impl_0_9 SEMANTIC(POSITION), + float2 nv_waveworks_impl_0_10 SEMANTIC(TEXCOORD0), + out float2 nv_waveworks_impl_0_8 SEMANTIC(TEXCOORD0), + out float4 nv_waveworks_impl_0_11 SEMANTIC(SV_Position) +) +#endif +{ + nv_waveworks_impl_0_11 = nv_waveworks_impl_0_9; + nv_waveworks_impl_0_8 = nv_waveworks_impl_0_10; +} +#endif +#ifndef GFSDK_WAVEWORKS_OMIT_PS +#ifdef GFSDK_WAVEWORKS_GL +#define nv_waveworks_impl_0_12 gl_FragColor +void main() +#else +void ps( + float2 nv_waveworks_impl_0_8 SEMANTIC(TEXCOORD0), + out float4 nv_waveworks_impl_0_12 SEMANTIC(SV_Target) +) +#endif +{ + float3 nv_waveworks_impl_0_13 = SampleTex2D(nv_waveworks_impl_0_6, nv_waveworks_impl_0_7, nv_waveworks_impl_0_8.xy + nv_waveworks_impl_0_2.xy).rgb; + float3 nv_waveworks_impl_0_14 = SampleTex2D(nv_waveworks_impl_0_6, nv_waveworks_impl_0_7, nv_waveworks_impl_0_8.xy + nv_waveworks_impl_0_3.xy).rgb; + float3 nv_waveworks_impl_0_15 = SampleTex2D(nv_waveworks_impl_0_6, nv_waveworks_impl_0_7, nv_waveworks_impl_0_8.xy + nv_waveworks_impl_0_4.xy).rgb; + float3 nv_waveworks_impl_0_16 = SampleTex2D(nv_waveworks_impl_0_6, nv_waveworks_impl_0_7, nv_waveworks_impl_0_8.xy + nv_waveworks_impl_0_5.xy).rgb; + float2 nv_waveworks_impl_0_17 = float2(-(nv_waveworks_impl_0_14.z - nv_waveworks_impl_0_13.z) / max(0.01,1.0 + nv_waveworks_impl_0_1.y*(nv_waveworks_impl_0_14.x - nv_waveworks_impl_0_13.x)), -(nv_waveworks_impl_0_16.z - nv_waveworks_impl_0_15.z) / max(0.01,1.0+nv_waveworks_impl_0_1.y*(nv_waveworks_impl_0_16.y - nv_waveworks_impl_0_15.y))); + float2 nv_waveworks_impl_0_18 = (nv_waveworks_impl_0_14.xy - nv_waveworks_impl_0_13.xy) * nv_waveworks_impl_0_1.x; + float2 nv_waveworks_impl_0_19 = (nv_waveworks_impl_0_16.xy - nv_waveworks_impl_0_15.xy) * nv_waveworks_impl_0_1.x; + float nv_waveworks_impl_0_20 = (1.0f + nv_waveworks_impl_0_18.x) * (1.0f + nv_waveworks_impl_0_19.y) - nv_waveworks_impl_0_18.y * nv_waveworks_impl_0_19.x; + nv_waveworks_impl_0_12 = float4(nv_waveworks_impl_0_17, nv_waveworks_impl_0_20, 0); +} +#endif diff --git a/src/generated/CalcGradient_ps_3_0.h b/src/generated/CalcGradient_ps_3_0.h new file mode 100644 index 0000000..b261254 --- /dev/null +++ b/src/generated/CalcGradient_ps_3_0.h @@ -0,0 +1,207 @@ +#if 0 +// +// Generated by Microsoft (R) HLSL Shader Compiler 6.3.9600.16384 +// +// Parameters: +// +// float4 nv_waveworks_impl_0_1; +// float4 nv_waveworks_impl_0_2; +// float4 nv_waveworks_impl_0_3; +// float4 nv_waveworks_impl_0_4; +// float4 nv_waveworks_impl_0_5; +// sampler2D nv_waveworks_impl_0_7; +// +// +// Registers: +// +// Name Reg Size +// --------------------- ----- ---- +// nv_waveworks_impl_0_1 c0 1 +// nv_waveworks_impl_0_2 c1 1 +// nv_waveworks_impl_0_3 c2 1 +// nv_waveworks_impl_0_4 c3 1 +// nv_waveworks_impl_0_5 c4 1 +// nv_waveworks_impl_0_7 s0 1 +// + + ps_3_0 + def c5, 1, 0.00999999978, 100, 0 + dcl_texcoord v0.xy + dcl_2d s0 + add r0.xy, c1, v0 + texld r0, r0, s0 + add r1.xy, c2, v0 + texld r1, r1, s0 + add r0, -r0.zxxy, r1.zxxy + mov r1.x, c5.x + mad r0.yz, c0.xyxw, r0, r1.x + add r1.y, -r0.y, c5.y + rcp r0.y, r0.y + cmp r0.y, r1.y, c5.z, r0.y + mul oC0.x, r0.y, -r0.x + mul r0.x, r0.w, c0.x + add r0.yw, c3.xxzy, v0.xxzy + texld r2, r0.ywzw, s0 + add r0.yw, c4.xxzy, v0.xxzy + texld r3, r0.ywzw, s0 + add r2, -r2.zyxy, r3.zyxy + mad r0.yw, c0.xyzx, r2, r1.x + add r1.x, -r0.y, c5.y + rcp r0.y, r0.y + cmp r0.y, r1.x, c5.z, r0.y + mul oC0.y, r0.y, -r2.x + mul r0.y, r2.z, c0.x + mul r0.x, r0.y, r0.x + mad oC0.z, r0.z, r0.w, -r0.x + mov oC0.w, c5.w + +// approximately 26 instruction slots used (4 texture, 22 arithmetic) +#endif + +const BYTE g_ps30_ps[] = +{ + 0, 3, 255, 255, 254, 255, + 95, 0, 67, 84, 65, 66, + 28, 0, 0, 0, 67, 1, + 0, 0, 0, 3, 255, 255, + 6, 0, 0, 0, 28, 0, + 0, 0, 0, 1, 0, 0, + 60, 1, 0, 0, 148, 0, + 0, 0, 2, 0, 0, 0, + 1, 0, 2, 0, 172, 0, + 0, 0, 0, 0, 0, 0, + 188, 0, 0, 0, 2, 0, + 1, 0, 1, 0, 6, 0, + 172, 0, 0, 0, 0, 0, + 0, 0, 210, 0, 0, 0, + 2, 0, 2, 0, 1, 0, + 10, 0, 172, 0, 0, 0, + 0, 0, 0, 0, 232, 0, + 0, 0, 2, 0, 3, 0, + 1, 0, 14, 0, 172, 0, + 0, 0, 0, 0, 0, 0, + 254, 0, 0, 0, 2, 0, + 4, 0, 1, 0, 18, 0, + 172, 0, 0, 0, 0, 0, + 0, 0, 20, 1, 0, 0, + 3, 0, 0, 0, 1, 0, + 2, 0, 44, 1, 0, 0, + 0, 0, 0, 0, 110, 118, + 95, 119, 97, 118, 101, 119, + 111, 114, 107, 115, 95, 105, + 109, 112, 108, 95, 48, 95, + 49, 0, 171, 171, 1, 0, + 3, 0, 1, 0, 4, 0, + 1, 0, 0, 0, 0, 0, + 0, 0, 110, 118, 95, 119, + 97, 118, 101, 119, 111, 114, + 107, 115, 95, 105, 109, 112, + 108, 95, 48, 95, 50, 0, + 110, 118, 95, 119, 97, 118, + 101, 119, 111, 114, 107, 115, + 95, 105, 109, 112, 108, 95, + 48, 95, 51, 0, 110, 118, + 95, 119, 97, 118, 101, 119, + 111, 114, 107, 115, 95, 105, + 109, 112, 108, 95, 48, 95, + 52, 0, 110, 118, 95, 119, + 97, 118, 101, 119, 111, 114, + 107, 115, 95, 105, 109, 112, + 108, 95, 48, 95, 53, 0, + 110, 118, 95, 119, 97, 118, + 101, 119, 111, 114, 107, 115, + 95, 105, 109, 112, 108, 95, + 48, 95, 55, 0, 171, 171, + 4, 0, 12, 0, 1, 0, + 1, 0, 1, 0, 0, 0, + 0, 0, 0, 0, 112, 115, + 95, 51, 95, 48, 0, 77, + 105, 99, 114, 111, 115, 111, + 102, 116, 32, 40, 82, 41, + 32, 72, 76, 83, 76, 32, + 83, 104, 97, 100, 101, 114, + 32, 67, 111, 109, 112, 105, + 108, 101, 114, 32, 54, 46, + 51, 46, 57, 54, 48, 48, + 46, 49, 54, 51, 56, 52, + 0, 171, 171, 171, 81, 0, + 0, 5, 5, 0, 15, 160, + 0, 0, 128, 63, 10, 215, + 35, 60, 0, 0, 200, 66, + 0, 0, 0, 0, 31, 0, + 0, 2, 5, 0, 0, 128, + 0, 0, 3, 144, 31, 0, + 0, 2, 0, 0, 0, 144, + 0, 8, 15, 160, 2, 0, + 0, 3, 0, 0, 3, 128, + 1, 0, 228, 160, 0, 0, + 228, 144, 66, 0, 0, 3, + 0, 0, 15, 128, 0, 0, + 228, 128, 0, 8, 228, 160, + 2, 0, 0, 3, 1, 0, + 3, 128, 2, 0, 228, 160, + 0, 0, 228, 144, 66, 0, + 0, 3, 1, 0, 15, 128, + 1, 0, 228, 128, 0, 8, + 228, 160, 2, 0, 0, 3, + 0, 0, 15, 128, 0, 0, + 66, 129, 1, 0, 66, 128, + 1, 0, 0, 2, 1, 0, + 1, 128, 5, 0, 0, 160, + 4, 0, 0, 4, 0, 0, + 6, 128, 0, 0, 196, 160, + 0, 0, 228, 128, 1, 0, + 0, 128, 2, 0, 0, 3, + 1, 0, 2, 128, 0, 0, + 85, 129, 5, 0, 85, 160, + 6, 0, 0, 2, 0, 0, + 2, 128, 0, 0, 85, 128, + 88, 0, 0, 4, 0, 0, + 2, 128, 1, 0, 85, 128, + 5, 0, 170, 160, 0, 0, + 85, 128, 5, 0, 0, 3, + 0, 8, 1, 128, 0, 0, + 85, 128, 0, 0, 0, 129, + 5, 0, 0, 3, 0, 0, + 1, 128, 0, 0, 255, 128, + 0, 0, 0, 160, 2, 0, + 0, 3, 0, 0, 10, 128, + 3, 0, 96, 160, 0, 0, + 96, 144, 66, 0, 0, 3, + 2, 0, 15, 128, 0, 0, + 237, 128, 0, 8, 228, 160, + 2, 0, 0, 3, 0, 0, + 10, 128, 4, 0, 96, 160, + 0, 0, 96, 144, 66, 0, + 0, 3, 3, 0, 15, 128, + 0, 0, 237, 128, 0, 8, + 228, 160, 2, 0, 0, 3, + 2, 0, 15, 128, 2, 0, + 70, 129, 3, 0, 70, 128, + 4, 0, 0, 4, 0, 0, + 10, 128, 0, 0, 36, 160, + 2, 0, 228, 128, 1, 0, + 0, 128, 2, 0, 0, 3, + 1, 0, 1, 128, 0, 0, + 85, 129, 5, 0, 85, 160, + 6, 0, 0, 2, 0, 0, + 2, 128, 0, 0, 85, 128, + 88, 0, 0, 4, 0, 0, + 2, 128, 1, 0, 0, 128, + 5, 0, 170, 160, 0, 0, + 85, 128, 5, 0, 0, 3, + 0, 8, 2, 128, 0, 0, + 85, 128, 2, 0, 0, 129, + 5, 0, 0, 3, 0, 0, + 2, 128, 2, 0, 170, 128, + 0, 0, 0, 160, 5, 0, + 0, 3, 0, 0, 1, 128, + 0, 0, 85, 128, 0, 0, + 0, 128, 4, 0, 0, 4, + 0, 8, 4, 128, 0, 0, + 170, 128, 0, 0, 255, 128, + 0, 0, 0, 129, 1, 0, + 0, 2, 0, 8, 8, 128, + 5, 0, 255, 160, 255, 255, + 0, 0 +}; diff --git a/src/generated/CalcGradient_ps_4_0.h b/src/generated/CalcGradient_ps_4_0.h new file mode 100644 index 0000000..d82787d --- /dev/null +++ b/src/generated/CalcGradient_ps_4_0.h @@ -0,0 +1,213 @@ +#if 0 +// +// Generated by Microsoft (R) D3D Shader Disassembler +// +// +// Input signature: +// +// Name Index Mask Register SysValue Format Used +// -------------------- ----- ------ -------- -------- ------- ------ +// TEXCOORD 0 xy 0 NONE float xy +// +// +// Output signature: +// +// Name Index Mask Register SysValue Format Used +// -------------------- ----- ------ -------- -------- ------- ------ +// SV_Target 0 xyzw 0 TARGET float xyzw +// +ps_4_0 +dcl_constantbuffer cb0[5], immediateIndexed +dcl_sampler s0, mode_default +dcl_resource_texture2d (float,float,float,float) t0 +dcl_input_ps linear v0.xy +dcl_output o0.xyzw +dcl_temps 3 +add r0.xy, v0.xyxx, cb0[1].xyxx +sample r0.xyzw, r0.xyxx, t0.xyzw, s0 +add r1.xy, v0.xyxx, cb0[2].xyxx +sample r1.xyzw, r1.xyxx, t0.xyzw, s0 +add r0.xyzw, -r0.zxxy, r1.zxxy +mul r0.w, r0.w, cb0[0].x +add r1.xy, v0.xyxx, cb0[3].xyxx +sample r1.xyzw, r1.xyxx, t0.xyzw, s0 +add r2.xy, v0.xyxx, cb0[4].xyxx +sample r2.xyzw, r2.xyxx, t0.xyzw, s0 +add r1.xyzw, -r1.zyxy, r2.zyxy +mul r1.z, r1.z, cb0[0].x +mul r0.w, r0.w, r1.z +mad r0.yz, cb0[0].yyxy, r0.yyzy, l(0.000000, 1.000000, 1.000000, 0.000000) +mad r1.yz, cb0[0].yyxy, r1.yywy, l(0.000000, 1.000000, 1.000000, 0.000000) +mad o0.z, r0.z, r1.z, -r0.w +max r0.y, r0.y, l(0.010000) +div o0.x, -r0.x, r0.y +max r0.x, r1.y, l(0.010000) +div o0.y, -r1.x, r0.x +mov o0.w, l(0) +ret +// Approximately 0 instruction slots used +#endif + +const BYTE g_ps[] = +{ + 68, 88, 66, 67, 109, 103, + 112, 61, 77, 134, 241, 207, + 235, 71, 91, 209, 97, 190, + 113, 148, 1, 0, 0, 0, + 188, 3, 0, 0, 3, 0, + 0, 0, 44, 0, 0, 0, + 96, 0, 0, 0, 148, 0, + 0, 0, 73, 83, 71, 78, + 44, 0, 0, 0, 1, 0, + 0, 0, 8, 0, 0, 0, + 32, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 3, 0, 0, 0, 0, 0, + 0, 0, 3, 3, 0, 0, + 84, 69, 88, 67, 79, 79, + 82, 68, 0, 171, 171, 171, + 79, 83, 71, 78, 44, 0, + 0, 0, 1, 0, 0, 0, + 8, 0, 0, 0, 32, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 3, 0, + 0, 0, 0, 0, 0, 0, + 15, 0, 0, 0, 83, 86, + 95, 84, 97, 114, 103, 101, + 116, 0, 171, 171, 83, 72, + 68, 82, 32, 3, 0, 0, + 64, 0, 0, 0, 200, 0, + 0, 0, 89, 0, 0, 4, + 70, 142, 32, 0, 0, 0, + 0, 0, 5, 0, 0, 0, + 90, 0, 0, 3, 0, 96, + 16, 0, 0, 0, 0, 0, + 88, 24, 0, 4, 0, 112, + 16, 0, 0, 0, 0, 0, + 85, 85, 0, 0, 98, 16, + 0, 3, 50, 16, 16, 0, + 0, 0, 0, 0, 101, 0, + 0, 3, 242, 32, 16, 0, + 0, 0, 0, 0, 104, 0, + 0, 2, 3, 0, 0, 0, + 0, 0, 0, 8, 50, 0, + 16, 0, 0, 0, 0, 0, + 70, 16, 16, 0, 0, 0, + 0, 0, 70, 128, 32, 0, + 0, 0, 0, 0, 1, 0, + 0, 0, 69, 0, 0, 9, + 242, 0, 16, 0, 0, 0, + 0, 0, 70, 0, 16, 0, + 0, 0, 0, 0, 70, 126, + 16, 0, 0, 0, 0, 0, + 0, 96, 16, 0, 0, 0, + 0, 0, 0, 0, 0, 8, + 50, 0, 16, 0, 1, 0, + 0, 0, 70, 16, 16, 0, + 0, 0, 0, 0, 70, 128, + 32, 0, 0, 0, 0, 0, + 2, 0, 0, 0, 69, 0, + 0, 9, 242, 0, 16, 0, + 1, 0, 0, 0, 70, 0, + 16, 0, 1, 0, 0, 0, + 70, 126, 16, 0, 0, 0, + 0, 0, 0, 96, 16, 0, + 0, 0, 0, 0, 0, 0, + 0, 8, 242, 0, 16, 0, + 0, 0, 0, 0, 38, 4, + 16, 128, 65, 0, 0, 0, + 0, 0, 0, 0, 38, 4, + 16, 0, 1, 0, 0, 0, + 56, 0, 0, 8, 130, 0, + 16, 0, 0, 0, 0, 0, + 58, 0, 16, 0, 0, 0, + 0, 0, 10, 128, 32, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 8, + 50, 0, 16, 0, 1, 0, + 0, 0, 70, 16, 16, 0, + 0, 0, 0, 0, 70, 128, + 32, 0, 0, 0, 0, 0, + 3, 0, 0, 0, 69, 0, + 0, 9, 242, 0, 16, 0, + 1, 0, 0, 0, 70, 0, + 16, 0, 1, 0, 0, 0, + 70, 126, 16, 0, 0, 0, + 0, 0, 0, 96, 16, 0, + 0, 0, 0, 0, 0, 0, + 0, 8, 50, 0, 16, 0, + 2, 0, 0, 0, 70, 16, + 16, 0, 0, 0, 0, 0, + 70, 128, 32, 0, 0, 0, + 0, 0, 4, 0, 0, 0, + 69, 0, 0, 9, 242, 0, + 16, 0, 2, 0, 0, 0, + 70, 0, 16, 0, 2, 0, + 0, 0, 70, 126, 16, 0, + 0, 0, 0, 0, 0, 96, + 16, 0, 0, 0, 0, 0, + 0, 0, 0, 8, 242, 0, + 16, 0, 1, 0, 0, 0, + 102, 4, 16, 128, 65, 0, + 0, 0, 1, 0, 0, 0, + 102, 4, 16, 0, 2, 0, + 0, 0, 56, 0, 0, 8, + 66, 0, 16, 0, 1, 0, + 0, 0, 42, 0, 16, 0, + 1, 0, 0, 0, 10, 128, + 32, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 56, 0, + 0, 7, 130, 0, 16, 0, + 0, 0, 0, 0, 58, 0, + 16, 0, 0, 0, 0, 0, + 42, 0, 16, 0, 1, 0, + 0, 0, 50, 0, 0, 13, + 98, 0, 16, 0, 0, 0, + 0, 0, 86, 132, 32, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 86, 6, 16, 0, + 0, 0, 0, 0, 2, 64, + 0, 0, 0, 0, 0, 0, + 0, 0, 128, 63, 0, 0, + 128, 63, 0, 0, 0, 0, + 50, 0, 0, 13, 98, 0, + 16, 0, 1, 0, 0, 0, + 86, 132, 32, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 86, 7, 16, 0, 1, 0, + 0, 0, 2, 64, 0, 0, + 0, 0, 0, 0, 0, 0, + 128, 63, 0, 0, 128, 63, + 0, 0, 0, 0, 50, 0, + 0, 10, 66, 32, 16, 0, + 0, 0, 0, 0, 42, 0, + 16, 0, 0, 0, 0, 0, + 42, 0, 16, 0, 1, 0, + 0, 0, 58, 0, 16, 128, + 65, 0, 0, 0, 0, 0, + 0, 0, 52, 0, 0, 7, + 34, 0, 16, 0, 0, 0, + 0, 0, 26, 0, 16, 0, + 0, 0, 0, 0, 1, 64, + 0, 0, 10, 215, 35, 60, + 14, 0, 0, 8, 18, 32, + 16, 0, 0, 0, 0, 0, + 10, 0, 16, 128, 65, 0, + 0, 0, 0, 0, 0, 0, + 26, 0, 16, 0, 0, 0, + 0, 0, 52, 0, 0, 7, + 18, 0, 16, 0, 0, 0, + 0, 0, 26, 0, 16, 0, + 1, 0, 0, 0, 1, 64, + 0, 0, 10, 215, 35, 60, + 14, 0, 0, 8, 34, 32, + 16, 0, 0, 0, 0, 0, + 10, 0, 16, 128, 65, 0, + 0, 0, 1, 0, 0, 0, + 10, 0, 16, 0, 0, 0, + 0, 0, 54, 0, 0, 5, + 130, 32, 16, 0, 0, 0, + 0, 0, 1, 64, 0, 0, + 0, 0, 0, 0, 62, 0, + 0, 1 +}; diff --git a/src/generated/CalcGradient_vs_3_0.h b/src/generated/CalcGradient_vs_3_0.h new file mode 100644 index 0000000..f770788 --- /dev/null +++ b/src/generated/CalcGradient_vs_3_0.h @@ -0,0 +1,47 @@ +#if 0 +// +// Generated by Microsoft (R) HLSL Shader Compiler 6.3.9600.16384 + vs_3_0 + dcl_position v0 + dcl_texcoord v1 + dcl_texcoord o0.xy + dcl_position o1 + mov o0.xy, v1 + mov o1, v0 + +// approximately 2 instruction slots used +#endif + +const BYTE g_vs30_vs[] = +{ + 0, 3, 254, 255, 254, 255, + 23, 0, 67, 84, 65, 66, + 28, 0, 0, 0, 35, 0, + 0, 0, 0, 3, 254, 255, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 1, 0, 0, + 28, 0, 0, 0, 118, 115, + 95, 51, 95, 48, 0, 77, + 105, 99, 114, 111, 115, 111, + 102, 116, 32, 40, 82, 41, + 32, 72, 76, 83, 76, 32, + 83, 104, 97, 100, 101, 114, + 32, 67, 111, 109, 112, 105, + 108, 101, 114, 32, 54, 46, + 51, 46, 57, 54, 48, 48, + 46, 49, 54, 51, 56, 52, + 0, 171, 171, 171, 31, 0, + 0, 2, 0, 0, 0, 128, + 0, 0, 15, 144, 31, 0, + 0, 2, 5, 0, 0, 128, + 1, 0, 15, 144, 31, 0, + 0, 2, 5, 0, 0, 128, + 0, 0, 3, 224, 31, 0, + 0, 2, 0, 0, 0, 128, + 1, 0, 15, 224, 1, 0, + 0, 2, 0, 0, 3, 224, + 1, 0, 228, 144, 1, 0, + 0, 2, 1, 0, 15, 224, + 0, 0, 228, 144, 255, 255, + 0, 0 +}; diff --git a/src/generated/CalcGradient_vs_4_0.h b/src/generated/CalcGradient_vs_4_0.h new file mode 100644 index 0000000..884ace1 --- /dev/null +++ b/src/generated/CalcGradient_vs_4_0.h @@ -0,0 +1,89 @@ +#if 0 +// +// Generated by Microsoft (R) D3D Shader Disassembler +// +// +// Input signature: +// +// Name Index Mask Register SysValue Format Used +// -------------------- ----- ------ -------- -------- ------- ------ +// POSITION 0 xyzw 0 NONE float xyzw +// TEXCOORD 0 xy 1 NONE float xy +// +// +// Output signature: +// +// Name Index Mask Register SysValue Format Used +// -------------------- ----- ------ -------- -------- ------- ------ +// TEXCOORD 0 xy 0 NONE float xy +// SV_Position 0 xyzw 1 POS float xyzw +// +vs_4_0 +dcl_input v0.xyzw +dcl_input v1.xy +dcl_output o0.xy +dcl_output_siv o1.xyzw, position +mov o0.xy, v1.xyxx +mov o1.xyzw, v0.xyzw +ret +// Approximately 0 instruction slots used +#endif + +const BYTE g_vs[] = +{ + 68, 88, 66, 67, 110, 26, + 156, 84, 28, 108, 22, 50, + 32, 85, 186, 213, 4, 30, + 56, 4, 1, 0, 0, 0, + 72, 1, 0, 0, 3, 0, + 0, 0, 44, 0, 0, 0, + 128, 0, 0, 0, 216, 0, + 0, 0, 73, 83, 71, 78, + 76, 0, 0, 0, 2, 0, + 0, 0, 8, 0, 0, 0, + 56, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 3, 0, 0, 0, 0, 0, + 0, 0, 15, 15, 0, 0, + 65, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 3, 0, 0, 0, 1, 0, + 0, 0, 3, 3, 0, 0, + 80, 79, 83, 73, 84, 73, + 79, 78, 0, 84, 69, 88, + 67, 79, 79, 82, 68, 0, + 171, 171, 79, 83, 71, 78, + 80, 0, 0, 0, 2, 0, + 0, 0, 8, 0, 0, 0, + 56, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 3, 0, 0, 0, 0, 0, + 0, 0, 3, 12, 0, 0, + 65, 0, 0, 0, 0, 0, + 0, 0, 1, 0, 0, 0, + 3, 0, 0, 0, 1, 0, + 0, 0, 15, 0, 0, 0, + 84, 69, 88, 67, 79, 79, + 82, 68, 0, 83, 86, 95, + 80, 111, 115, 105, 116, 105, + 111, 110, 0, 171, 171, 171, + 83, 72, 68, 82, 104, 0, + 0, 0, 64, 0, 1, 0, + 26, 0, 0, 0, 95, 0, + 0, 3, 242, 16, 16, 0, + 0, 0, 0, 0, 95, 0, + 0, 3, 50, 16, 16, 0, + 1, 0, 0, 0, 101, 0, + 0, 3, 50, 32, 16, 0, + 0, 0, 0, 0, 103, 0, + 0, 4, 242, 32, 16, 0, + 1, 0, 0, 0, 1, 0, + 0, 0, 54, 0, 0, 5, + 50, 32, 16, 0, 0, 0, + 0, 0, 70, 16, 16, 0, + 1, 0, 0, 0, 54, 0, + 0, 5, 242, 32, 16, 0, + 1, 0, 0, 0, 70, 30, + 16, 0, 0, 0, 0, 0, + 62, 0, 0, 1 +}; diff --git a/src/generated/Common_map.h b/src/generated/Common_map.h new file mode 100644 index 0000000..93c8da3 --- /dev/null +++ b/src/generated/Common_map.h @@ -0,0 +1,4 @@ +LPCSTR nvsf_coords = "nv_waveworks_comm2"; +LPCSTR nvsf_lod = "nv_waveworks_comm3"; +LPCSTR nvsf_sampler = "nv_waveworks_comm1"; +LPCSTR nvsf_texture = "nv_waveworks_comm0"; diff --git a/src/generated/ComputeColumns_cs_5_0.h b/src/generated/ComputeColumns_cs_5_0.h new file mode 100644 index 0000000..09a09c9 --- /dev/null +++ b/src/generated/ComputeColumns_cs_5_0.h @@ -0,0 +1,3228 @@ +#if 0 +// +// Generated by Microsoft (R) D3D Shader Disassembler +// +// +// Input signature: +// +// Name Index Mask Register SysValue Format Used +// -------------------- ----- ------ -------- -------- ------- ------ +// no Input +// +// Output signature: +// +// Name Index Mask Register SysValue Format Used +// -------------------- ----- ------ -------- -------- ------- ------ +// no Output +cs_5_0 +dcl_globalFlags refactoringAllowed +dcl_constantbuffer cb0[5], immediateIndexed +dcl_resource_structured t0, 8 +dcl_resource_structured t1, 16 +dcl_uav_typed_texture2d (float,float,float,float) u0 +dcl_input vThreadID.xy +dcl_temps 7 +dcl_indexableTemp x0[2], 4 +dcl_indexableTemp x1[2], 4 +dcl_indexableTemp x2[2], 4 +dcl_tgsm_structured g0, 8, 256 +dcl_tgsm_structured g1, 8, 256 +dcl_tgsm_structured g2, 8, 256 +dcl_thread_group 256, 1, 1 +ishl r0.x, vThreadID.x, l(1) +bfrev r0.y, r0.x +ushr r0.y, r0.y, cb0[1].y +imad r0.z, r0.y, cb0[0].x, vThreadID.y +iadd r0.y, -r0.y, cb0[0].z +imad r0.y, r0.y, cb0[0].x, vThreadID.y +ult r0.x, r0.x, cb0[0].x +ld_structured_indexable(structured_buffer, stride=8)(mixed,mixed,mixed,mixed) r1.xy, r0.z, l(0), t0.xyxx +ld_structured_indexable(structured_buffer, stride=8)(mixed,mixed,mixed,mixed) r2.xy, r0.y, l(0), t0.xyxx +movc r2.z, r0.x, -r2.y, r2.y +ld_structured_indexable(structured_buffer, stride=16)(mixed,mixed,mixed,mixed) r3.xyzw, r0.z, l(0), t1.xyzw +ld_structured_indexable(structured_buffer, stride=16)(mixed,mixed,mixed,mixed) r4.xyzw, r0.y, l(0), t1.xyzw +mov x0[0].xy, r1.xyxx +mov x0[1].xy, r2.xzxx +mov x1[0].xy, r3.xyxx +mul r5.xyzw, r4.xyzw, l(1.000000, -1.000000, 1.000000, -1.000000) +mov x1[1].xy, r5.xyxx +mov x2[0].xy, r3.zwzz +mov x2[1].xy, r5.zwzz +ult r0.y, vThreadID.x, cb0[0].z +if_nz r0.y + add r0.zw, r1.xxxy, -r2.xxxz + mov x0[1].xy, r0.zwzz + add r1.xy, r1.xyxx, r2.xzxx + mov x0[0].xy, r1.xyxx + mad r2.xyzw, -r4.xyzw, l(1.000000, -1.000000, 1.000000, -1.000000), r3.xyzw + mov x1[1].xy, r2.xyxx + mad r3.xyzw, r4.xyzw, l(1.000000, -1.000000, 1.000000, -1.000000), r3.xyzw + mov x1[0].xy, r3.xyxx + mov x2[1].xy, r2.zwzz + mov x2[0].xy, r3.zwzz + and r4.xyzw, vThreadID.xxxx, l(1, 2, 3, 4) + if_nz r4.x + mov r0.zw, r1.xxxy + mov r2.xyzw, r3.xyzw + endif + store_structured g2.xy, vThreadID.x, l(0), r2.zwzz + store_structured g1.xy, vThreadID.x, l(0), r2.xyxx + store_structured g0.xy, vThreadID.x, l(0), r0.zwzz + sync_g + xor r0.zw, vThreadID.xxxx, l(0, 0, 1, 3) + if_nz r4.x + ld_structured r1.xy, r0.z, l(0), g0.xyxx + mov x0[0].xy, r1.xyxx + ld_structured r1.xy, r0.z, l(0), g1.xyxx + mov x1[0].xy, r1.xyxx + ld_structured r1.xy, r0.z, l(0), g2.xyxx + mov x2[0].xy, r1.xyxx + else + ld_structured r1.xy, r0.z, l(0), g0.xyxx + mov x0[1].xy, r1.xyxx + ld_structured r1.xy, r0.z, l(0), g1.xyxx + mov x1[1].xy, r1.xyxx + ld_structured r1.xy, r0.z, l(0), g2.xyxx + mov x2[1].xy, r1.xyxx + endif + utof r1.xy, r4.xzxx + mul r1.xy, r1.xyxx, l(1.570796, 0.785398, 0.000000, 0.000000) + sincos r1.x, r2.x, r1.x + mov r1.z, x0[1].x + mov r1.w, x0[1].y + mul r2.y, r1.w, r1.x + mad r3.x, r2.x, r1.z, -r2.y + mul r1.w, r1.w, r2.x + mad r3.y, r1.x, r1.z, r1.w + mov r1.z, x1[1].x + mov r1.w, x1[1].y + mul r2.y, r1.w, r1.x + mad r5.x, r2.x, r1.z, -r2.y + mul r1.w, r1.w, r2.x + mad r5.y, r1.x, r1.z, r1.w + mov r1.z, x2[1].x + mov r1.w, x2[1].y + mul r2.y, r1.w, r1.x + mad r6.x, r2.x, r1.z, -r2.y + mul r1.w, r1.w, r2.x + mad r6.y, r1.x, r1.z, r1.w + mov r1.xz, x0[0].xxyx + add r2.xy, -r3.xyxx, r1.xzxx + mov x0[1].xy, r2.xyxx + add r1.xz, r3.xxyx, r1.xxzx + mov x0[0].xy, r1.xzxx + mov r2.zw, x1[0].xxxy + add r3.xy, -r5.xyxx, r2.zwzz + mov x1[1].xy, r3.xyxx + add r2.zw, r5.xxxy, r2.zzzw + mov x1[0].xy, r2.zwzz + mov r3.zw, x2[0].xxxy + add r4.xz, -r6.xxyx, r3.zzwz + mov x2[1].xy, r4.xzxx + add r3.zw, r6.xxxy, r3.zzzw + mov x2[0].xy, r3.zwzz + if_nz r4.y + mov r2.xy, r1.xzxx + mov r3.xy, r2.zwzz + mov r4.xz, r3.zzwz + endif + store_structured g2.xy, r0.z, l(0), r4.xzxx + store_structured g1.xy, r0.z, l(0), r3.xyxx + store_structured g0.xy, r0.z, l(0), r2.xyxx + sync_g + if_nz r4.y + ld_structured r1.xz, r0.w, l(0), g0.xxyx + mov x0[0].xy, r1.xzxx + ld_structured r1.xz, r0.w, l(0), g1.xxyx + mov x1[0].xy, r1.xzxx + ld_structured r1.xz, r0.w, l(0), g2.xxyx + mov x2[0].xy, r1.xzxx + else + ld_structured r1.xz, r0.w, l(0), g0.xxyx + mov x0[1].xy, r1.xzxx + ld_structured r1.xz, r0.w, l(0), g1.xxyx + mov x1[1].xy, r1.xzxx + ld_structured r1.xz, r0.w, l(0), g2.xxyx + mov x2[1].xy, r1.xzxx + endif + sincos r1.x, r2.x, r1.y + mov r0.z, x0[1].x + mov r1.y, x0[1].y + mul r1.z, r1.y, r1.x + mad r3.x, r2.x, r0.z, -r1.z + mul r1.y, r1.y, r2.x + mad r3.y, r1.x, r0.z, r1.y + mov r0.z, x1[1].x + mov r1.y, x1[1].y + mul r1.z, r1.y, r1.x + mad r4.x, r2.x, r0.z, -r1.z + mul r1.y, r1.y, r2.x + mad r4.y, r1.x, r0.z, r1.y + mov r0.z, x2[1].x + mov r1.y, x2[1].y + mul r1.z, r1.y, r1.x + mad r5.x, r2.x, r0.z, -r1.z + mul r1.y, r1.y, r2.x + mad r5.y, r1.x, r0.z, r1.y + mov r1.xy, x0[0].xyxx + add r1.zw, -r3.xxxy, r1.xxxy + mov x0[1].xy, r1.zwzz + add r1.xy, r3.xyxx, r1.xyxx + mov x0[0].xy, r1.xyxx + mov r2.xy, x1[0].xyxx + add r2.zw, -r4.xxxy, r2.xxxy + mov x1[1].xy, r2.zwzz + add r2.xy, r4.xyxx, r2.xyxx + mov x1[0].xy, r2.xyxx + mov r3.xy, x2[0].xyxx + add r3.zw, -r5.xxxy, r3.xxxy + mov x2[1].xy, r3.zwzz + add r3.xy, r5.xyxx, r3.xyxx + mov x2[0].xy, r3.xyxx + ine r0.z, r4.w, l(0) + if_nz r4.w + mov r3.zw, r3.xxxy + mov r2.zw, r2.xxxy + mov r1.zw, r1.xxxy + endif + store_structured g2.xy, r0.w, l(0), r3.zwzz + store_structured g1.xy, r0.w, l(0), r2.zwzz + store_structured g0.xy, r0.w, l(0), r1.zwzz + sync_g + mov r0.w, l(0.392699) +else + mov r0.zw, l(0,0,0,1.570796) +endif +ult r1.x, l(8), cb0[0].x +if_nz r1.x + if_nz r0.y + xor r1.x, vThreadID.x, l(7) + and r1.yz, vThreadID.xxxx, l(0, 7, 8, 0) + if_nz r0.z + ld_structured r2.xy, r1.x, l(0), g0.xyxx + mov x0[0].xy, r2.xyxx + ld_structured r2.xy, r1.x, l(0), g1.xyxx + mov x1[0].xy, r2.xyxx + ld_structured r2.xy, r1.x, l(0), g2.xyxx + mov x2[0].xy, r2.xyxx + else + ld_structured r2.xy, r1.x, l(0), g0.xyxx + mov x0[1].xy, r2.xyxx + ld_structured r2.xy, r1.x, l(0), g1.xyxx + mov x1[1].xy, r2.xyxx + ld_structured r2.xy, r1.x, l(0), g2.xyxx + mov x2[1].xy, r2.xyxx + endif + utof r1.y, r1.y + mul r1.y, r0.w, r1.y + sincos r2.x, r3.x, r1.y + mov r1.y, x0[1].x + mov r1.w, x0[1].y + mul r2.y, r1.w, r2.x + mad r4.x, r3.x, r1.y, -r2.y + mul r1.w, r1.w, r3.x + mad r4.y, r2.x, r1.y, r1.w + mov r1.y, x1[1].x + mov r1.w, x1[1].y + mul r2.y, r1.w, r2.x + mad r5.x, r3.x, r1.y, -r2.y + mul r1.w, r1.w, r3.x + mad r5.y, r2.x, r1.y, r1.w + mov r1.y, x2[1].x + mov r1.w, x2[1].y + mul r2.y, r1.w, r2.x + mad r6.x, r3.x, r1.y, -r2.y + mul r1.w, r1.w, r3.x + mad r6.y, r2.x, r1.y, r1.w + mov r1.yw, x0[0].xxxy + add r2.xy, -r4.xyxx, r1.ywyy + mov x0[1].xy, r2.xyxx + add r1.yw, r4.xxxy, r1.yyyw + mov x0[0].xy, r1.ywyy + mov r2.zw, x1[0].xxxy + add r3.xy, -r5.xyxx, r2.zwzz + mov x1[1].xy, r3.xyxx + add r2.zw, r5.xxxy, r2.zzzw + mov x1[0].xy, r2.zwzz + mov r3.zw, x2[0].xxxy + add r4.xy, -r6.xyxx, r3.zwzz + mov x2[1].xy, r4.xyxx + add r3.zw, r6.xxxy, r3.zzzw + mov x2[0].xy, r3.zwzz + ine r0.z, r1.z, l(0) + if_nz r1.z + mov r2.xy, r1.ywyy + mov r3.xy, r2.zwzz + mov r4.xy, r3.zwzz + endif + store_structured g2.xy, r1.x, l(0), r4.xyxx + store_structured g1.xy, r1.x, l(0), r3.xyxx + store_structured g0.xy, r1.x, l(0), r2.xyxx + endif + sync_g_t + mul r0.w, r0.w, l(0.500000) + mov r1.x, l(16) +else + mov r1.x, l(8) +endif +ult r1.y, r1.x, cb0[0].x +if_nz r1.y + if_nz r0.y + xor r1.z, vThreadID.x, l(15) + and r2.xy, vThreadID.xxxx, l(15, 16, 0, 0) + if_nz r0.z + ld_structured r2.zw, r1.z, l(0), g0.xxxy + mov x0[0].xy, r2.zwzz + ld_structured r2.zw, r1.z, l(0), g1.xxxy + mov x1[0].xy, r2.zwzz + ld_structured r2.zw, r1.z, l(0), g2.xxxy + mov x2[0].xy, r2.zwzz + else + ld_structured r2.zw, r1.z, l(0), g0.xxxy + mov x0[1].xy, r2.zwzz + ld_structured r2.zw, r1.z, l(0), g1.xxxy + mov x1[1].xy, r2.zwzz + ld_structured r2.zw, r1.z, l(0), g2.xxxy + mov x2[1].xy, r2.zwzz + endif + utof r1.w, r2.x + mul r1.w, r0.w, r1.w + sincos r2.x, r3.x, r1.w + mov r1.w, x0[1].x + mov r2.z, x0[1].y + mul r2.w, r2.z, r2.x + mad r4.x, r3.x, r1.w, -r2.w + mul r2.z, r2.z, r3.x + mad r4.y, r2.x, r1.w, r2.z + mov r1.w, x1[1].x + mov r2.z, x1[1].y + mul r2.w, r2.z, r2.x + mad r5.x, r3.x, r1.w, -r2.w + mul r2.z, r2.z, r3.x + mad r5.y, r2.x, r1.w, r2.z + mov r1.w, x2[1].x + mov r2.z, x2[1].y + mul r2.w, r2.z, r2.x + mad r6.x, r3.x, r1.w, -r2.w + mul r2.z, r2.z, r3.x + mad r6.y, r2.x, r1.w, r2.z + mov r2.xz, x0[0].xxyx + add r3.xy, -r4.xyxx, r2.xzxx + mov x0[1].xy, r3.xyxx + add r2.xz, r4.xxyx, r2.xxzx + mov x0[0].xy, r2.xzxx + mov r3.zw, x1[0].xxxy + add r4.xy, -r5.xyxx, r3.zwzz + mov x1[1].xy, r4.xyxx + add r3.zw, r5.xxxy, r3.zzzw + mov x1[0].xy, r3.zwzz + mov r4.zw, x2[0].xxxy + add r5.xy, -r6.xyxx, r4.zwzz + mov x2[1].xy, r5.xyxx + add r4.zw, r6.xxxy, r4.zzzw + mov x2[0].xy, r4.zwzz + ine r0.z, r2.y, l(0) + if_nz r2.y + mov r3.xy, r2.xzxx + mov r4.xy, r3.zwzz + mov r5.xy, r4.zwzz + endif + store_structured g2.xy, r1.z, l(0), r5.xyxx + store_structured g1.xy, r1.z, l(0), r4.xyxx + store_structured g0.xy, r1.z, l(0), r3.xyxx + endif + sync_g_t + mul r0.w, r0.w, l(0.500000) + mov r1.x, l(32) +endif +ult r1.z, r1.x, cb0[0].x +and r1.y, r1.z, r1.y +if_nz r1.y + if_nz r0.y + xor r1.z, vThreadID.x, l(31) + and r2.xy, vThreadID.xxxx, l(31, 32, 0, 0) + if_nz r0.z + ld_structured r2.zw, r1.z, l(0), g0.xxxy + mov x0[0].xy, r2.zwzz + ld_structured r2.zw, r1.z, l(0), g1.xxxy + mov x1[0].xy, r2.zwzz + ld_structured r2.zw, r1.z, l(0), g2.xxxy + mov x2[0].xy, r2.zwzz + else + ld_structured r2.zw, r1.z, l(0), g0.xxxy + mov x0[1].xy, r2.zwzz + ld_structured r2.zw, r1.z, l(0), g1.xxxy + mov x1[1].xy, r2.zwzz + ld_structured r2.zw, r1.z, l(0), g2.xxxy + mov x2[1].xy, r2.zwzz + endif + utof r1.w, r2.x + mul r1.w, r0.w, r1.w + sincos r2.x, r3.x, r1.w + mov r1.w, x0[1].x + mov r2.z, x0[1].y + mul r2.w, r2.z, r2.x + mad r4.x, r3.x, r1.w, -r2.w + mul r2.z, r2.z, r3.x + mad r4.y, r2.x, r1.w, r2.z + mov r1.w, x1[1].x + mov r2.z, x1[1].y + mul r2.w, r2.z, r2.x + mad r5.x, r3.x, r1.w, -r2.w + mul r2.z, r2.z, r3.x + mad r5.y, r2.x, r1.w, r2.z + mov r1.w, x2[1].x + mov r2.z, x2[1].y + mul r2.w, r2.z, r2.x + mad r6.x, r3.x, r1.w, -r2.w + mul r2.z, r2.z, r3.x + mad r6.y, r2.x, r1.w, r2.z + mov r2.xz, x0[0].xxyx + add r3.xy, -r4.xyxx, r2.xzxx + mov x0[1].xy, r3.xyxx + add r2.xz, r4.xxyx, r2.xxzx + mov x0[0].xy, r2.xzxx + mov r3.zw, x1[0].xxxy + add r4.xy, -r5.xyxx, r3.zwzz + mov x1[1].xy, r4.xyxx + add r3.zw, r5.xxxy, r3.zzzw + mov x1[0].xy, r3.zwzz + mov r4.zw, x2[0].xxxy + add r5.xy, -r6.xyxx, r4.zwzz + mov x2[1].xy, r5.xyxx + add r4.zw, r6.xxxy, r4.zzzw + mov x2[0].xy, r4.zwzz + ine r0.z, r2.y, l(0) + if_nz r2.y + mov r3.xy, r2.xzxx + mov r4.xy, r3.zwzz + mov r5.xy, r4.zwzz + endif + store_structured g2.xy, r1.z, l(0), r5.xyxx + store_structured g1.xy, r1.z, l(0), r4.xyxx + store_structured g0.xy, r1.z, l(0), r3.xyxx + endif + sync_g_t + mul r0.w, r0.w, l(0.500000) + mov r1.x, l(64) +endif +ult r1.z, r1.x, cb0[0].x +and r1.y, r1.z, r1.y +if_nz r1.y + if_nz r0.y + xor r1.z, vThreadID.x, l(63) + and r2.xy, vThreadID.xxxx, l(63, 64, 0, 0) + if_nz r0.z + ld_structured r2.zw, r1.z, l(0), g0.xxxy + mov x0[0].xy, r2.zwzz + ld_structured r2.zw, r1.z, l(0), g1.xxxy + mov x1[0].xy, r2.zwzz + ld_structured r2.zw, r1.z, l(0), g2.xxxy + mov x2[0].xy, r2.zwzz + else + ld_structured r2.zw, r1.z, l(0), g0.xxxy + mov x0[1].xy, r2.zwzz + ld_structured r2.zw, r1.z, l(0), g1.xxxy + mov x1[1].xy, r2.zwzz + ld_structured r2.zw, r1.z, l(0), g2.xxxy + mov x2[1].xy, r2.zwzz + endif + utof r1.w, r2.x + mul r1.w, r0.w, r1.w + sincos r2.x, r3.x, r1.w + mov r1.w, x0[1].x + mov r2.z, x0[1].y + mul r2.w, r2.z, r2.x + mad r4.x, r3.x, r1.w, -r2.w + mul r2.z, r2.z, r3.x + mad r4.y, r2.x, r1.w, r2.z + mov r1.w, x1[1].x + mov r2.z, x1[1].y + mul r2.w, r2.z, r2.x + mad r5.x, r3.x, r1.w, -r2.w + mul r2.z, r2.z, r3.x + mad r5.y, r2.x, r1.w, r2.z + mov r1.w, x2[1].x + mov r2.z, x2[1].y + mul r2.w, r2.z, r2.x + mad r6.x, r3.x, r1.w, -r2.w + mul r2.z, r2.z, r3.x + mad r6.y, r2.x, r1.w, r2.z + mov r2.xz, x0[0].xxyx + add r3.xy, -r4.xyxx, r2.xzxx + mov x0[1].xy, r3.xyxx + add r2.xz, r4.xxyx, r2.xxzx + mov x0[0].xy, r2.xzxx + mov r3.zw, x1[0].xxxy + add r4.xy, -r5.xyxx, r3.zwzz + mov x1[1].xy, r4.xyxx + add r3.zw, r5.xxxy, r3.zzzw + mov x1[0].xy, r3.zwzz + mov r4.zw, x2[0].xxxy + add r5.xy, -r6.xyxx, r4.zwzz + mov x2[1].xy, r5.xyxx + add r4.zw, r6.xxxy, r4.zzzw + mov x2[0].xy, r4.zwzz + ine r0.z, r2.y, l(0) + if_nz r2.y + mov r3.xy, r2.xzxx + mov r4.xy, r3.zwzz + mov r5.xy, r4.zwzz + endif + store_structured g2.xy, r1.z, l(0), r5.xyxx + store_structured g1.xy, r1.z, l(0), r4.xyxx + store_structured g0.xy, r1.z, l(0), r3.xyxx + endif + sync_g_t + mul r0.w, r0.w, l(0.500000) + mov r1.x, l(128) +endif +ult r1.z, r1.x, cb0[0].x +and r1.y, r1.z, r1.y +if_nz r1.y + if_nz r0.y + xor r1.z, vThreadID.x, l(127) + and r2.xy, vThreadID.xxxx, l(127, 128, 0, 0) + if_nz r0.z + ld_structured r2.zw, r1.z, l(0), g0.xxxy + mov x0[0].xy, r2.zwzz + ld_structured r2.zw, r1.z, l(0), g1.xxxy + mov x1[0].xy, r2.zwzz + ld_structured r2.zw, r1.z, l(0), g2.xxxy + mov x2[0].xy, r2.zwzz + else + ld_structured r2.zw, r1.z, l(0), g0.xxxy + mov x0[1].xy, r2.zwzz + ld_structured r2.zw, r1.z, l(0), g1.xxxy + mov x1[1].xy, r2.zwzz + ld_structured r2.zw, r1.z, l(0), g2.xxxy + mov x2[1].xy, r2.zwzz + endif + utof r1.w, r2.x + mul r1.w, r0.w, r1.w + sincos r2.x, r3.x, r1.w + mov r1.w, x0[1].x + mov r2.z, x0[1].y + mul r2.w, r2.z, r2.x + mad r4.x, r3.x, r1.w, -r2.w + mul r2.z, r2.z, r3.x + mad r4.y, r2.x, r1.w, r2.z + mov r1.w, x1[1].x + mov r2.z, x1[1].y + mul r2.w, r2.z, r2.x + mad r5.x, r3.x, r1.w, -r2.w + mul r2.z, r2.z, r3.x + mad r5.y, r2.x, r1.w, r2.z + mov r1.w, x2[1].x + mov r2.z, x2[1].y + mul r2.w, r2.z, r2.x + mad r6.x, r3.x, r1.w, -r2.w + mul r2.z, r2.z, r3.x + mad r6.y, r2.x, r1.w, r2.z + mov r2.xz, x0[0].xxyx + add r3.xy, -r4.xyxx, r2.xzxx + mov x0[1].xy, r3.xyxx + add r2.xz, r4.xxyx, r2.xxzx + mov x0[0].x, r2.x + mov r3.zw, x1[0].xxxy + add r4.xy, -r5.xyxx, r3.zwzz + mov x1[1].xy, r4.xyxx + add r3.zw, r5.xxxy, r3.zzzw + mov x1[0].x, r3.z + mov r4.zw, x2[0].xxxy + add r5.xy, -r6.xyxx, r4.zwzz + mov x2[1].xy, r5.xyxx + add r4.zw, r6.xxxy, r4.zzzw + mov x2[0].x, r4.z + ine r0.z, r2.y, l(0) + if_nz r2.y + mov r3.xy, r2.xzxx + mov r4.xy, r3.zwzz + mov r5.xy, r4.zwzz + endif + store_structured g2.xy, r1.z, l(0), r5.xyxx + store_structured g1.xy, r1.z, l(0), r4.xyxx + store_structured g0.xy, r1.z, l(0), r3.xyxx + endif + sync_g_t + mul r0.w, r0.w, l(0.500000) + mov r1.x, l(256) +endif +ult r1.x, r1.x, cb0[0].x +and r1.x, r1.x, r1.y +if_nz r1.x + if_nz r0.y + xor r0.y, vThreadID.x, l(255) + and r1.x, vThreadID.x, l(255) + if_nz r0.z + ld_structured r0.z, r0.y, l(0), g0.xxxx + mov x0[0].x, r0.z + ld_structured r0.z, r0.y, l(0), g1.xxxx + mov x1[0].x, r0.z + ld_structured r0.z, r0.y, l(0), g2.xxxx + mov x2[0].x, r0.z + else + ld_structured r1.yz, r0.y, l(0), g0.xxyx + mov x0[1].xy, r1.yzyy + ld_structured r1.yz, r0.y, l(0), g1.xxyx + mov x1[1].xy, r1.yzyy + ld_structured r0.yz, r0.y, l(0), g2.xxyx + mov x2[1].xy, r0.yzyy + endif + utof r0.y, r1.x + mul r0.y, r0.w, r0.y + sincos r1.x, r2.x, r0.y + mov r0.y, x0[1].x + mov r0.z, x0[1].y + mul r0.z, r0.z, r1.x + mad r0.y, r2.x, r0.y, -r0.z + mov r0.z, x1[1].x + mov r0.w, x1[1].y + mul r0.w, r0.w, r1.x + mad r0.z, r2.x, r0.z, -r0.w + mov r0.w, x2[1].x + mov r1.y, x2[1].y + mul r1.x, r1.y, r1.x + mad r0.w, r2.x, r0.w, -r1.x + mov r1.x, x0[0].x + add r1.y, -r0.y, r1.x + mov x0[1].x, r1.y + add r0.y, r0.y, r1.x + mov x0[0].x, r0.y + mov r0.y, x1[0].x + add r1.x, -r0.z, r0.y + mov x1[1].x, r1.x + add r0.y, r0.z, r0.y + mov x1[0].x, r0.y + mov r0.y, x2[0].x + add r0.z, -r0.w, r0.y + mov x2[1].x, r0.z + add r0.y, r0.w, r0.y + mov x2[0].x, r0.y + endif +endif +if_nz r0.x + mov r0.x, x0[0].x + mov r0.y, x0[1].x + mov r0.z, x1[0].x + mov r0.w, x1[1].x + mov r1.x, x2[0].x + mov r1.y, x2[1].x + iadd r1.z, vThreadID.y, vThreadID.x + and r1.z, r1.z, l(1) + movc r1.z, r1.z, l(-1.000000), l(1.000000) + mul r1.w, r1.z, cb0[4].z + mul r2.y, r1.w, r1.x + mul r2.xz, r0.zzxz, r1.wwzw + mov r2.w, l(0) + store_uav_typed u0.xyzw, vThreadID.yxxx, r2.xyzw + iadd r2.yzw, vThreadID.xxxx, cb0[0].zzzz + mul r3.y, r1.w, r1.y + mul r3.xz, r0.wwyw, r1.wwzw + mov r2.x, vThreadID.y + mov r3.w, l(0) + store_uav_typed u0.xyzw, r2.xyzw, r3.xyzw +endif +ret +// Approximately 0 instruction slots used +#endif + +const BYTE g_ComputeColumns[] = +{ + 68, 88, 66, 67, 6, 6, + 187, 18, 116, 72, 236, 172, + 179, 64, 34, 205, 76, 59, + 238, 35, 1, 0, 0, 0, + 216, 60, 0, 0, 3, 0, + 0, 0, 44, 0, 0, 0, + 60, 0, 0, 0, 76, 0, + 0, 0, 73, 83, 71, 78, + 8, 0, 0, 0, 0, 0, + 0, 0, 8, 0, 0, 0, + 79, 83, 71, 78, 8, 0, + 0, 0, 0, 0, 0, 0, + 8, 0, 0, 0, 83, 72, + 69, 88, 132, 60, 0, 0, + 80, 0, 5, 0, 33, 15, + 0, 0, 106, 8, 0, 1, + 89, 0, 0, 4, 70, 142, + 32, 0, 0, 0, 0, 0, + 5, 0, 0, 0, 162, 0, + 0, 4, 0, 112, 16, 0, + 0, 0, 0, 0, 8, 0, + 0, 0, 162, 0, 0, 4, + 0, 112, 16, 0, 1, 0, + 0, 0, 16, 0, 0, 0, + 156, 24, 0, 4, 0, 224, + 17, 0, 0, 0, 0, 0, + 85, 85, 0, 0, 95, 0, + 0, 2, 50, 0, 2, 0, + 104, 0, 0, 2, 7, 0, + 0, 0, 105, 0, 0, 4, + 0, 0, 0, 0, 2, 0, + 0, 0, 4, 0, 0, 0, + 105, 0, 0, 4, 1, 0, + 0, 0, 2, 0, 0, 0, + 4, 0, 0, 0, 105, 0, + 0, 4, 2, 0, 0, 0, + 2, 0, 0, 0, 4, 0, + 0, 0, 160, 0, 0, 5, + 0, 240, 17, 0, 0, 0, + 0, 0, 8, 0, 0, 0, + 0, 1, 0, 0, 160, 0, + 0, 5, 0, 240, 17, 0, + 1, 0, 0, 0, 8, 0, + 0, 0, 0, 1, 0, 0, + 160, 0, 0, 5, 0, 240, + 17, 0, 2, 0, 0, 0, + 8, 0, 0, 0, 0, 1, + 0, 0, 155, 0, 0, 4, + 0, 1, 0, 0, 1, 0, + 0, 0, 1, 0, 0, 0, + 41, 0, 0, 6, 18, 0, + 16, 0, 0, 0, 0, 0, + 10, 0, 2, 0, 1, 64, + 0, 0, 1, 0, 0, 0, + 141, 0, 0, 5, 34, 0, + 16, 0, 0, 0, 0, 0, + 10, 0, 16, 0, 0, 0, + 0, 0, 85, 0, 0, 8, + 34, 0, 16, 0, 0, 0, + 0, 0, 26, 0, 16, 0, + 0, 0, 0, 0, 26, 128, + 32, 0, 0, 0, 0, 0, + 1, 0, 0, 0, 35, 0, + 0, 9, 66, 0, 16, 0, + 0, 0, 0, 0, 26, 0, + 16, 0, 0, 0, 0, 0, + 10, 128, 32, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 26, 0, 2, 0, 30, 0, + 0, 9, 34, 0, 16, 0, + 0, 0, 0, 0, 26, 0, + 16, 128, 65, 0, 0, 0, + 0, 0, 0, 0, 42, 128, + 32, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 35, 0, + 0, 9, 34, 0, 16, 0, + 0, 0, 0, 0, 26, 0, + 16, 0, 0, 0, 0, 0, + 10, 128, 32, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 26, 0, 2, 0, 79, 0, + 0, 8, 18, 0, 16, 0, + 0, 0, 0, 0, 10, 0, + 16, 0, 0, 0, 0, 0, + 10, 128, 32, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 167, 0, 0, 139, 2, 67, + 0, 128, 131, 153, 25, 0, + 50, 0, 16, 0, 1, 0, + 0, 0, 42, 0, 16, 0, + 0, 0, 0, 0, 1, 64, + 0, 0, 0, 0, 0, 0, + 70, 112, 16, 0, 0, 0, + 0, 0, 167, 0, 0, 139, + 2, 67, 0, 128, 131, 153, + 25, 0, 50, 0, 16, 0, + 2, 0, 0, 0, 26, 0, + 16, 0, 0, 0, 0, 0, + 1, 64, 0, 0, 0, 0, + 0, 0, 70, 112, 16, 0, + 0, 0, 0, 0, 55, 0, + 0, 10, 66, 0, 16, 0, + 2, 0, 0, 0, 10, 0, + 16, 0, 0, 0, 0, 0, + 26, 0, 16, 128, 65, 0, + 0, 0, 2, 0, 0, 0, + 26, 0, 16, 0, 2, 0, + 0, 0, 167, 0, 0, 139, + 2, 131, 0, 128, 131, 153, + 25, 0, 242, 0, 16, 0, + 3, 0, 0, 0, 42, 0, + 16, 0, 0, 0, 0, 0, + 1, 64, 0, 0, 0, 0, + 0, 0, 70, 126, 16, 0, + 1, 0, 0, 0, 167, 0, + 0, 139, 2, 131, 0, 128, + 131, 153, 25, 0, 242, 0, + 16, 0, 4, 0, 0, 0, + 26, 0, 16, 0, 0, 0, + 0, 0, 1, 64, 0, 0, + 0, 0, 0, 0, 70, 126, + 16, 0, 1, 0, 0, 0, + 54, 0, 0, 6, 50, 48, + 32, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 70, 0, + 16, 0, 1, 0, 0, 0, + 54, 0, 0, 6, 50, 48, + 32, 0, 0, 0, 0, 0, + 1, 0, 0, 0, 134, 0, + 16, 0, 2, 0, 0, 0, + 54, 0, 0, 6, 50, 48, + 32, 0, 1, 0, 0, 0, + 0, 0, 0, 0, 70, 0, + 16, 0, 3, 0, 0, 0, + 56, 0, 0, 10, 242, 0, + 16, 0, 5, 0, 0, 0, + 70, 14, 16, 0, 4, 0, + 0, 0, 2, 64, 0, 0, + 0, 0, 128, 63, 0, 0, + 128, 191, 0, 0, 128, 63, + 0, 0, 128, 191, 54, 0, + 0, 6, 50, 48, 32, 0, + 1, 0, 0, 0, 1, 0, + 0, 0, 70, 0, 16, 0, + 5, 0, 0, 0, 54, 0, + 0, 6, 50, 48, 32, 0, + 2, 0, 0, 0, 0, 0, + 0, 0, 230, 10, 16, 0, + 3, 0, 0, 0, 54, 0, + 0, 6, 50, 48, 32, 0, + 2, 0, 0, 0, 1, 0, + 0, 0, 230, 10, 16, 0, + 5, 0, 0, 0, 79, 0, + 0, 7, 34, 0, 16, 0, + 0, 0, 0, 0, 10, 0, + 2, 0, 42, 128, 32, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 31, 0, 4, 3, + 26, 0, 16, 0, 0, 0, + 0, 0, 0, 0, 0, 8, + 194, 0, 16, 0, 0, 0, + 0, 0, 6, 4, 16, 0, + 1, 0, 0, 0, 6, 8, + 16, 128, 65, 0, 0, 0, + 2, 0, 0, 0, 54, 0, + 0, 6, 50, 48, 32, 0, + 0, 0, 0, 0, 1, 0, + 0, 0, 230, 10, 16, 0, + 0, 0, 0, 0, 0, 0, + 0, 7, 50, 0, 16, 0, + 1, 0, 0, 0, 70, 0, + 16, 0, 1, 0, 0, 0, + 134, 0, 16, 0, 2, 0, + 0, 0, 54, 0, 0, 6, + 50, 48, 32, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 70, 0, 16, 0, 1, 0, + 0, 0, 50, 0, 0, 13, + 242, 0, 16, 0, 2, 0, + 0, 0, 70, 14, 16, 128, + 65, 0, 0, 0, 4, 0, + 0, 0, 2, 64, 0, 0, + 0, 0, 128, 63, 0, 0, + 128, 191, 0, 0, 128, 63, + 0, 0, 128, 191, 70, 14, + 16, 0, 3, 0, 0, 0, + 54, 0, 0, 6, 50, 48, + 32, 0, 1, 0, 0, 0, + 1, 0, 0, 0, 70, 0, + 16, 0, 2, 0, 0, 0, + 50, 0, 0, 12, 242, 0, + 16, 0, 3, 0, 0, 0, + 70, 14, 16, 0, 4, 0, + 0, 0, 2, 64, 0, 0, + 0, 0, 128, 63, 0, 0, + 128, 191, 0, 0, 128, 63, + 0, 0, 128, 191, 70, 14, + 16, 0, 3, 0, 0, 0, + 54, 0, 0, 6, 50, 48, + 32, 0, 1, 0, 0, 0, + 0, 0, 0, 0, 70, 0, + 16, 0, 3, 0, 0, 0, + 54, 0, 0, 6, 50, 48, + 32, 0, 2, 0, 0, 0, + 1, 0, 0, 0, 230, 10, + 16, 0, 2, 0, 0, 0, + 54, 0, 0, 6, 50, 48, + 32, 0, 2, 0, 0, 0, + 0, 0, 0, 0, 230, 10, + 16, 0, 3, 0, 0, 0, + 1, 0, 0, 9, 242, 0, + 16, 0, 4, 0, 0, 0, + 6, 0, 2, 0, 2, 64, + 0, 0, 1, 0, 0, 0, + 2, 0, 0, 0, 3, 0, + 0, 0, 4, 0, 0, 0, + 31, 0, 4, 3, 10, 0, + 16, 0, 4, 0, 0, 0, + 54, 0, 0, 5, 194, 0, + 16, 0, 0, 0, 0, 0, + 6, 4, 16, 0, 1, 0, + 0, 0, 54, 0, 0, 5, + 242, 0, 16, 0, 2, 0, + 0, 0, 70, 14, 16, 0, + 3, 0, 0, 0, 21, 0, + 0, 1, 168, 0, 0, 8, + 50, 240, 17, 0, 2, 0, + 0, 0, 10, 0, 2, 0, + 1, 64, 0, 0, 0, 0, + 0, 0, 230, 10, 16, 0, + 2, 0, 0, 0, 168, 0, + 0, 8, 50, 240, 17, 0, + 1, 0, 0, 0, 10, 0, + 2, 0, 1, 64, 0, 0, + 0, 0, 0, 0, 70, 0, + 16, 0, 2, 0, 0, 0, + 168, 0, 0, 8, 50, 240, + 17, 0, 0, 0, 0, 0, + 10, 0, 2, 0, 1, 64, + 0, 0, 0, 0, 0, 0, + 230, 10, 16, 0, 0, 0, + 0, 0, 190, 16, 0, 1, + 87, 0, 0, 9, 194, 0, + 16, 0, 0, 0, 0, 0, + 6, 0, 2, 0, 2, 64, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 1, 0, + 0, 0, 3, 0, 0, 0, + 31, 0, 4, 3, 10, 0, + 16, 0, 4, 0, 0, 0, + 167, 0, 0, 9, 50, 0, + 16, 0, 1, 0, 0, 0, + 42, 0, 16, 0, 0, 0, + 0, 0, 1, 64, 0, 0, + 0, 0, 0, 0, 70, 240, + 17, 0, 0, 0, 0, 0, + 54, 0, 0, 6, 50, 48, + 32, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 70, 0, + 16, 0, 1, 0, 0, 0, + 167, 0, 0, 9, 50, 0, + 16, 0, 1, 0, 0, 0, + 42, 0, 16, 0, 0, 0, + 0, 0, 1, 64, 0, 0, + 0, 0, 0, 0, 70, 240, + 17, 0, 1, 0, 0, 0, + 54, 0, 0, 6, 50, 48, + 32, 0, 1, 0, 0, 0, + 0, 0, 0, 0, 70, 0, + 16, 0, 1, 0, 0, 0, + 167, 0, 0, 9, 50, 0, + 16, 0, 1, 0, 0, 0, + 42, 0, 16, 0, 0, 0, + 0, 0, 1, 64, 0, 0, + 0, 0, 0, 0, 70, 240, + 17, 0, 2, 0, 0, 0, + 54, 0, 0, 6, 50, 48, + 32, 0, 2, 0, 0, 0, + 0, 0, 0, 0, 70, 0, + 16, 0, 1, 0, 0, 0, + 18, 0, 0, 1, 167, 0, + 0, 9, 50, 0, 16, 0, + 1, 0, 0, 0, 42, 0, + 16, 0, 0, 0, 0, 0, + 1, 64, 0, 0, 0, 0, + 0, 0, 70, 240, 17, 0, + 0, 0, 0, 0, 54, 0, + 0, 6, 50, 48, 32, 0, + 0, 0, 0, 0, 1, 0, + 0, 0, 70, 0, 16, 0, + 1, 0, 0, 0, 167, 0, + 0, 9, 50, 0, 16, 0, + 1, 0, 0, 0, 42, 0, + 16, 0, 0, 0, 0, 0, + 1, 64, 0, 0, 0, 0, + 0, 0, 70, 240, 17, 0, + 1, 0, 0, 0, 54, 0, + 0, 6, 50, 48, 32, 0, + 1, 0, 0, 0, 1, 0, + 0, 0, 70, 0, 16, 0, + 1, 0, 0, 0, 167, 0, + 0, 9, 50, 0, 16, 0, + 1, 0, 0, 0, 42, 0, + 16, 0, 0, 0, 0, 0, + 1, 64, 0, 0, 0, 0, + 0, 0, 70, 240, 17, 0, + 2, 0, 0, 0, 54, 0, + 0, 6, 50, 48, 32, 0, + 2, 0, 0, 0, 1, 0, + 0, 0, 70, 0, 16, 0, + 1, 0, 0, 0, 21, 0, + 0, 1, 86, 0, 0, 5, + 50, 0, 16, 0, 1, 0, + 0, 0, 134, 0, 16, 0, + 4, 0, 0, 0, 56, 0, + 0, 10, 50, 0, 16, 0, + 1, 0, 0, 0, 70, 0, + 16, 0, 1, 0, 0, 0, + 2, 64, 0, 0, 219, 15, + 201, 63, 219, 15, 73, 63, + 0, 0, 0, 0, 0, 0, + 0, 0, 77, 0, 0, 7, + 18, 0, 16, 0, 1, 0, + 0, 0, 18, 0, 16, 0, + 2, 0, 0, 0, 10, 0, + 16, 0, 1, 0, 0, 0, + 54, 0, 0, 6, 66, 0, + 16, 0, 1, 0, 0, 0, + 10, 48, 32, 0, 0, 0, + 0, 0, 1, 0, 0, 0, + 54, 0, 0, 6, 130, 0, + 16, 0, 1, 0, 0, 0, + 26, 48, 32, 0, 0, 0, + 0, 0, 1, 0, 0, 0, + 56, 0, 0, 7, 34, 0, + 16, 0, 2, 0, 0, 0, + 58, 0, 16, 0, 1, 0, + 0, 0, 10, 0, 16, 0, + 1, 0, 0, 0, 50, 0, + 0, 10, 18, 0, 16, 0, + 3, 0, 0, 0, 10, 0, + 16, 0, 2, 0, 0, 0, + 42, 0, 16, 0, 1, 0, + 0, 0, 26, 0, 16, 128, + 65, 0, 0, 0, 2, 0, + 0, 0, 56, 0, 0, 7, + 130, 0, 16, 0, 1, 0, + 0, 0, 58, 0, 16, 0, + 1, 0, 0, 0, 10, 0, + 16, 0, 2, 0, 0, 0, + 50, 0, 0, 9, 34, 0, + 16, 0, 3, 0, 0, 0, + 10, 0, 16, 0, 1, 0, + 0, 0, 42, 0, 16, 0, + 1, 0, 0, 0, 58, 0, + 16, 0, 1, 0, 0, 0, + 54, 0, 0, 6, 66, 0, + 16, 0, 1, 0, 0, 0, + 10, 48, 32, 0, 1, 0, + 0, 0, 1, 0, 0, 0, + 54, 0, 0, 6, 130, 0, + 16, 0, 1, 0, 0, 0, + 26, 48, 32, 0, 1, 0, + 0, 0, 1, 0, 0, 0, + 56, 0, 0, 7, 34, 0, + 16, 0, 2, 0, 0, 0, + 58, 0, 16, 0, 1, 0, + 0, 0, 10, 0, 16, 0, + 1, 0, 0, 0, 50, 0, + 0, 10, 18, 0, 16, 0, + 5, 0, 0, 0, 10, 0, + 16, 0, 2, 0, 0, 0, + 42, 0, 16, 0, 1, 0, + 0, 0, 26, 0, 16, 128, + 65, 0, 0, 0, 2, 0, + 0, 0, 56, 0, 0, 7, + 130, 0, 16, 0, 1, 0, + 0, 0, 58, 0, 16, 0, + 1, 0, 0, 0, 10, 0, + 16, 0, 2, 0, 0, 0, + 50, 0, 0, 9, 34, 0, + 16, 0, 5, 0, 0, 0, + 10, 0, 16, 0, 1, 0, + 0, 0, 42, 0, 16, 0, + 1, 0, 0, 0, 58, 0, + 16, 0, 1, 0, 0, 0, + 54, 0, 0, 6, 66, 0, + 16, 0, 1, 0, 0, 0, + 10, 48, 32, 0, 2, 0, + 0, 0, 1, 0, 0, 0, + 54, 0, 0, 6, 130, 0, + 16, 0, 1, 0, 0, 0, + 26, 48, 32, 0, 2, 0, + 0, 0, 1, 0, 0, 0, + 56, 0, 0, 7, 34, 0, + 16, 0, 2, 0, 0, 0, + 58, 0, 16, 0, 1, 0, + 0, 0, 10, 0, 16, 0, + 1, 0, 0, 0, 50, 0, + 0, 10, 18, 0, 16, 0, + 6, 0, 0, 0, 10, 0, + 16, 0, 2, 0, 0, 0, + 42, 0, 16, 0, 1, 0, + 0, 0, 26, 0, 16, 128, + 65, 0, 0, 0, 2, 0, + 0, 0, 56, 0, 0, 7, + 130, 0, 16, 0, 1, 0, + 0, 0, 58, 0, 16, 0, + 1, 0, 0, 0, 10, 0, + 16, 0, 2, 0, 0, 0, + 50, 0, 0, 9, 34, 0, + 16, 0, 6, 0, 0, 0, + 10, 0, 16, 0, 1, 0, + 0, 0, 42, 0, 16, 0, + 1, 0, 0, 0, 58, 0, + 16, 0, 1, 0, 0, 0, + 54, 0, 0, 6, 82, 0, + 16, 0, 1, 0, 0, 0, + 6, 49, 32, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 8, 50, 0, + 16, 0, 2, 0, 0, 0, + 70, 0, 16, 128, 65, 0, + 0, 0, 3, 0, 0, 0, + 134, 0, 16, 0, 1, 0, + 0, 0, 54, 0, 0, 6, + 50, 48, 32, 0, 0, 0, + 0, 0, 1, 0, 0, 0, + 70, 0, 16, 0, 2, 0, + 0, 0, 0, 0, 0, 7, + 82, 0, 16, 0, 1, 0, + 0, 0, 6, 1, 16, 0, + 3, 0, 0, 0, 6, 2, + 16, 0, 1, 0, 0, 0, + 54, 0, 0, 6, 50, 48, + 32, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 134, 0, + 16, 0, 1, 0, 0, 0, + 54, 0, 0, 6, 194, 0, + 16, 0, 2, 0, 0, 0, + 6, 52, 32, 0, 1, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 8, 50, 0, + 16, 0, 3, 0, 0, 0, + 70, 0, 16, 128, 65, 0, + 0, 0, 5, 0, 0, 0, + 230, 10, 16, 0, 2, 0, + 0, 0, 54, 0, 0, 6, + 50, 48, 32, 0, 1, 0, + 0, 0, 1, 0, 0, 0, + 70, 0, 16, 0, 3, 0, + 0, 0, 0, 0, 0, 7, + 194, 0, 16, 0, 2, 0, + 0, 0, 6, 4, 16, 0, + 5, 0, 0, 0, 166, 14, + 16, 0, 2, 0, 0, 0, + 54, 0, 0, 6, 50, 48, + 32, 0, 1, 0, 0, 0, + 0, 0, 0, 0, 230, 10, + 16, 0, 2, 0, 0, 0, + 54, 0, 0, 6, 194, 0, + 16, 0, 3, 0, 0, 0, + 6, 52, 32, 0, 2, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 8, 82, 0, + 16, 0, 4, 0, 0, 0, + 6, 1, 16, 128, 65, 0, + 0, 0, 6, 0, 0, 0, + 166, 11, 16, 0, 3, 0, + 0, 0, 54, 0, 0, 6, + 50, 48, 32, 0, 2, 0, + 0, 0, 1, 0, 0, 0, + 134, 0, 16, 0, 4, 0, + 0, 0, 0, 0, 0, 7, + 194, 0, 16, 0, 3, 0, + 0, 0, 6, 4, 16, 0, + 6, 0, 0, 0, 166, 14, + 16, 0, 3, 0, 0, 0, + 54, 0, 0, 6, 50, 48, + 32, 0, 2, 0, 0, 0, + 0, 0, 0, 0, 230, 10, + 16, 0, 3, 0, 0, 0, + 31, 0, 4, 3, 26, 0, + 16, 0, 4, 0, 0, 0, + 54, 0, 0, 5, 50, 0, + 16, 0, 2, 0, 0, 0, + 134, 0, 16, 0, 1, 0, + 0, 0, 54, 0, 0, 5, + 50, 0, 16, 0, 3, 0, + 0, 0, 230, 10, 16, 0, + 2, 0, 0, 0, 54, 0, + 0, 5, 82, 0, 16, 0, + 4, 0, 0, 0, 166, 11, + 16, 0, 3, 0, 0, 0, + 21, 0, 0, 1, 168, 0, + 0, 9, 50, 240, 17, 0, + 2, 0, 0, 0, 42, 0, + 16, 0, 0, 0, 0, 0, + 1, 64, 0, 0, 0, 0, + 0, 0, 134, 0, 16, 0, + 4, 0, 0, 0, 168, 0, + 0, 9, 50, 240, 17, 0, + 1, 0, 0, 0, 42, 0, + 16, 0, 0, 0, 0, 0, + 1, 64, 0, 0, 0, 0, + 0, 0, 70, 0, 16, 0, + 3, 0, 0, 0, 168, 0, + 0, 9, 50, 240, 17, 0, + 0, 0, 0, 0, 42, 0, + 16, 0, 0, 0, 0, 0, + 1, 64, 0, 0, 0, 0, + 0, 0, 70, 0, 16, 0, + 2, 0, 0, 0, 190, 16, + 0, 1, 31, 0, 4, 3, + 26, 0, 16, 0, 4, 0, + 0, 0, 167, 0, 0, 9, + 82, 0, 16, 0, 1, 0, + 0, 0, 58, 0, 16, 0, + 0, 0, 0, 0, 1, 64, + 0, 0, 0, 0, 0, 0, + 6, 241, 17, 0, 0, 0, + 0, 0, 54, 0, 0, 6, + 50, 48, 32, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 134, 0, 16, 0, 1, 0, + 0, 0, 167, 0, 0, 9, + 82, 0, 16, 0, 1, 0, + 0, 0, 58, 0, 16, 0, + 0, 0, 0, 0, 1, 64, + 0, 0, 0, 0, 0, 0, + 6, 241, 17, 0, 1, 0, + 0, 0, 54, 0, 0, 6, + 50, 48, 32, 0, 1, 0, + 0, 0, 0, 0, 0, 0, + 134, 0, 16, 0, 1, 0, + 0, 0, 167, 0, 0, 9, + 82, 0, 16, 0, 1, 0, + 0, 0, 58, 0, 16, 0, + 0, 0, 0, 0, 1, 64, + 0, 0, 0, 0, 0, 0, + 6, 241, 17, 0, 2, 0, + 0, 0, 54, 0, 0, 6, + 50, 48, 32, 0, 2, 0, + 0, 0, 0, 0, 0, 0, + 134, 0, 16, 0, 1, 0, + 0, 0, 18, 0, 0, 1, + 167, 0, 0, 9, 82, 0, + 16, 0, 1, 0, 0, 0, + 58, 0, 16, 0, 0, 0, + 0, 0, 1, 64, 0, 0, + 0, 0, 0, 0, 6, 241, + 17, 0, 0, 0, 0, 0, + 54, 0, 0, 6, 50, 48, + 32, 0, 0, 0, 0, 0, + 1, 0, 0, 0, 134, 0, + 16, 0, 1, 0, 0, 0, + 167, 0, 0, 9, 82, 0, + 16, 0, 1, 0, 0, 0, + 58, 0, 16, 0, 0, 0, + 0, 0, 1, 64, 0, 0, + 0, 0, 0, 0, 6, 241, + 17, 0, 1, 0, 0, 0, + 54, 0, 0, 6, 50, 48, + 32, 0, 1, 0, 0, 0, + 1, 0, 0, 0, 134, 0, + 16, 0, 1, 0, 0, 0, + 167, 0, 0, 9, 82, 0, + 16, 0, 1, 0, 0, 0, + 58, 0, 16, 0, 0, 0, + 0, 0, 1, 64, 0, 0, + 0, 0, 0, 0, 6, 241, + 17, 0, 2, 0, 0, 0, + 54, 0, 0, 6, 50, 48, + 32, 0, 2, 0, 0, 0, + 1, 0, 0, 0, 134, 0, + 16, 0, 1, 0, 0, 0, + 21, 0, 0, 1, 77, 0, + 0, 7, 18, 0, 16, 0, + 1, 0, 0, 0, 18, 0, + 16, 0, 2, 0, 0, 0, + 26, 0, 16, 0, 1, 0, + 0, 0, 54, 0, 0, 6, + 66, 0, 16, 0, 0, 0, + 0, 0, 10, 48, 32, 0, + 0, 0, 0, 0, 1, 0, + 0, 0, 54, 0, 0, 6, + 34, 0, 16, 0, 1, 0, + 0, 0, 26, 48, 32, 0, + 0, 0, 0, 0, 1, 0, + 0, 0, 56, 0, 0, 7, + 66, 0, 16, 0, 1, 0, + 0, 0, 26, 0, 16, 0, + 1, 0, 0, 0, 10, 0, + 16, 0, 1, 0, 0, 0, + 50, 0, 0, 10, 18, 0, + 16, 0, 3, 0, 0, 0, + 10, 0, 16, 0, 2, 0, + 0, 0, 42, 0, 16, 0, + 0, 0, 0, 0, 42, 0, + 16, 128, 65, 0, 0, 0, + 1, 0, 0, 0, 56, 0, + 0, 7, 34, 0, 16, 0, + 1, 0, 0, 0, 26, 0, + 16, 0, 1, 0, 0, 0, + 10, 0, 16, 0, 2, 0, + 0, 0, 50, 0, 0, 9, + 34, 0, 16, 0, 3, 0, + 0, 0, 10, 0, 16, 0, + 1, 0, 0, 0, 42, 0, + 16, 0, 0, 0, 0, 0, + 26, 0, 16, 0, 1, 0, + 0, 0, 54, 0, 0, 6, + 66, 0, 16, 0, 0, 0, + 0, 0, 10, 48, 32, 0, + 1, 0, 0, 0, 1, 0, + 0, 0, 54, 0, 0, 6, + 34, 0, 16, 0, 1, 0, + 0, 0, 26, 48, 32, 0, + 1, 0, 0, 0, 1, 0, + 0, 0, 56, 0, 0, 7, + 66, 0, 16, 0, 1, 0, + 0, 0, 26, 0, 16, 0, + 1, 0, 0, 0, 10, 0, + 16, 0, 1, 0, 0, 0, + 50, 0, 0, 10, 18, 0, + 16, 0, 4, 0, 0, 0, + 10, 0, 16, 0, 2, 0, + 0, 0, 42, 0, 16, 0, + 0, 0, 0, 0, 42, 0, + 16, 128, 65, 0, 0, 0, + 1, 0, 0, 0, 56, 0, + 0, 7, 34, 0, 16, 0, + 1, 0, 0, 0, 26, 0, + 16, 0, 1, 0, 0, 0, + 10, 0, 16, 0, 2, 0, + 0, 0, 50, 0, 0, 9, + 34, 0, 16, 0, 4, 0, + 0, 0, 10, 0, 16, 0, + 1, 0, 0, 0, 42, 0, + 16, 0, 0, 0, 0, 0, + 26, 0, 16, 0, 1, 0, + 0, 0, 54, 0, 0, 6, + 66, 0, 16, 0, 0, 0, + 0, 0, 10, 48, 32, 0, + 2, 0, 0, 0, 1, 0, + 0, 0, 54, 0, 0, 6, + 34, 0, 16, 0, 1, 0, + 0, 0, 26, 48, 32, 0, + 2, 0, 0, 0, 1, 0, + 0, 0, 56, 0, 0, 7, + 66, 0, 16, 0, 1, 0, + 0, 0, 26, 0, 16, 0, + 1, 0, 0, 0, 10, 0, + 16, 0, 1, 0, 0, 0, + 50, 0, 0, 10, 18, 0, + 16, 0, 5, 0, 0, 0, + 10, 0, 16, 0, 2, 0, + 0, 0, 42, 0, 16, 0, + 0, 0, 0, 0, 42, 0, + 16, 128, 65, 0, 0, 0, + 1, 0, 0, 0, 56, 0, + 0, 7, 34, 0, 16, 0, + 1, 0, 0, 0, 26, 0, + 16, 0, 1, 0, 0, 0, + 10, 0, 16, 0, 2, 0, + 0, 0, 50, 0, 0, 9, + 34, 0, 16, 0, 5, 0, + 0, 0, 10, 0, 16, 0, + 1, 0, 0, 0, 42, 0, + 16, 0, 0, 0, 0, 0, + 26, 0, 16, 0, 1, 0, + 0, 0, 54, 0, 0, 6, + 50, 0, 16, 0, 1, 0, + 0, 0, 70, 48, 32, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 8, + 194, 0, 16, 0, 1, 0, + 0, 0, 6, 4, 16, 128, + 65, 0, 0, 0, 3, 0, + 0, 0, 6, 4, 16, 0, + 1, 0, 0, 0, 54, 0, + 0, 6, 50, 48, 32, 0, + 0, 0, 0, 0, 1, 0, + 0, 0, 230, 10, 16, 0, + 1, 0, 0, 0, 0, 0, + 0, 7, 50, 0, 16, 0, + 1, 0, 0, 0, 70, 0, + 16, 0, 3, 0, 0, 0, + 70, 0, 16, 0, 1, 0, + 0, 0, 54, 0, 0, 6, + 50, 48, 32, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 70, 0, 16, 0, 1, 0, + 0, 0, 54, 0, 0, 6, + 50, 0, 16, 0, 2, 0, + 0, 0, 70, 48, 32, 0, + 1, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 8, + 194, 0, 16, 0, 2, 0, + 0, 0, 6, 4, 16, 128, + 65, 0, 0, 0, 4, 0, + 0, 0, 6, 4, 16, 0, + 2, 0, 0, 0, 54, 0, + 0, 6, 50, 48, 32, 0, + 1, 0, 0, 0, 1, 0, + 0, 0, 230, 10, 16, 0, + 2, 0, 0, 0, 0, 0, + 0, 7, 50, 0, 16, 0, + 2, 0, 0, 0, 70, 0, + 16, 0, 4, 0, 0, 0, + 70, 0, 16, 0, 2, 0, + 0, 0, 54, 0, 0, 6, + 50, 48, 32, 0, 1, 0, + 0, 0, 0, 0, 0, 0, + 70, 0, 16, 0, 2, 0, + 0, 0, 54, 0, 0, 6, + 50, 0, 16, 0, 3, 0, + 0, 0, 70, 48, 32, 0, + 2, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 8, + 194, 0, 16, 0, 3, 0, + 0, 0, 6, 4, 16, 128, + 65, 0, 0, 0, 5, 0, + 0, 0, 6, 4, 16, 0, + 3, 0, 0, 0, 54, 0, + 0, 6, 50, 48, 32, 0, + 2, 0, 0, 0, 1, 0, + 0, 0, 230, 10, 16, 0, + 3, 0, 0, 0, 0, 0, + 0, 7, 50, 0, 16, 0, + 3, 0, 0, 0, 70, 0, + 16, 0, 5, 0, 0, 0, + 70, 0, 16, 0, 3, 0, + 0, 0, 54, 0, 0, 6, + 50, 48, 32, 0, 2, 0, + 0, 0, 0, 0, 0, 0, + 70, 0, 16, 0, 3, 0, + 0, 0, 39, 0, 0, 7, + 66, 0, 16, 0, 0, 0, + 0, 0, 58, 0, 16, 0, + 4, 0, 0, 0, 1, 64, + 0, 0, 0, 0, 0, 0, + 31, 0, 4, 3, 58, 0, + 16, 0, 4, 0, 0, 0, + 54, 0, 0, 5, 194, 0, + 16, 0, 3, 0, 0, 0, + 6, 4, 16, 0, 3, 0, + 0, 0, 54, 0, 0, 5, + 194, 0, 16, 0, 2, 0, + 0, 0, 6, 4, 16, 0, + 2, 0, 0, 0, 54, 0, + 0, 5, 194, 0, 16, 0, + 1, 0, 0, 0, 6, 4, + 16, 0, 1, 0, 0, 0, + 21, 0, 0, 1, 168, 0, + 0, 9, 50, 240, 17, 0, + 2, 0, 0, 0, 58, 0, + 16, 0, 0, 0, 0, 0, + 1, 64, 0, 0, 0, 0, + 0, 0, 230, 10, 16, 0, + 3, 0, 0, 0, 168, 0, + 0, 9, 50, 240, 17, 0, + 1, 0, 0, 0, 58, 0, + 16, 0, 0, 0, 0, 0, + 1, 64, 0, 0, 0, 0, + 0, 0, 230, 10, 16, 0, + 2, 0, 0, 0, 168, 0, + 0, 9, 50, 240, 17, 0, + 0, 0, 0, 0, 58, 0, + 16, 0, 0, 0, 0, 0, + 1, 64, 0, 0, 0, 0, + 0, 0, 230, 10, 16, 0, + 1, 0, 0, 0, 190, 16, + 0, 1, 54, 0, 0, 5, + 130, 0, 16, 0, 0, 0, + 0, 0, 1, 64, 0, 0, + 219, 15, 201, 62, 18, 0, + 0, 1, 54, 0, 0, 8, + 194, 0, 16, 0, 0, 0, + 0, 0, 2, 64, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 219, 15, 201, 63, 21, 0, + 0, 1, 79, 0, 0, 8, + 18, 0, 16, 0, 1, 0, + 0, 0, 1, 64, 0, 0, + 8, 0, 0, 0, 10, 128, + 32, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 31, 0, + 4, 3, 10, 0, 16, 0, + 1, 0, 0, 0, 31, 0, + 4, 3, 26, 0, 16, 0, + 0, 0, 0, 0, 87, 0, + 0, 6, 18, 0, 16, 0, + 1, 0, 0, 0, 10, 0, + 2, 0, 1, 64, 0, 0, + 7, 0, 0, 0, 1, 0, + 0, 9, 98, 0, 16, 0, + 1, 0, 0, 0, 6, 0, + 2, 0, 2, 64, 0, 0, + 0, 0, 0, 0, 7, 0, + 0, 0, 8, 0, 0, 0, + 0, 0, 0, 0, 31, 0, + 4, 3, 42, 0, 16, 0, + 0, 0, 0, 0, 167, 0, + 0, 9, 50, 0, 16, 0, + 2, 0, 0, 0, 10, 0, + 16, 0, 1, 0, 0, 0, + 1, 64, 0, 0, 0, 0, + 0, 0, 70, 240, 17, 0, + 0, 0, 0, 0, 54, 0, + 0, 6, 50, 48, 32, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 70, 0, 16, 0, + 2, 0, 0, 0, 167, 0, + 0, 9, 50, 0, 16, 0, + 2, 0, 0, 0, 10, 0, + 16, 0, 1, 0, 0, 0, + 1, 64, 0, 0, 0, 0, + 0, 0, 70, 240, 17, 0, + 1, 0, 0, 0, 54, 0, + 0, 6, 50, 48, 32, 0, + 1, 0, 0, 0, 0, 0, + 0, 0, 70, 0, 16, 0, + 2, 0, 0, 0, 167, 0, + 0, 9, 50, 0, 16, 0, + 2, 0, 0, 0, 10, 0, + 16, 0, 1, 0, 0, 0, + 1, 64, 0, 0, 0, 0, + 0, 0, 70, 240, 17, 0, + 2, 0, 0, 0, 54, 0, + 0, 6, 50, 48, 32, 0, + 2, 0, 0, 0, 0, 0, + 0, 0, 70, 0, 16, 0, + 2, 0, 0, 0, 18, 0, + 0, 1, 167, 0, 0, 9, + 50, 0, 16, 0, 2, 0, + 0, 0, 10, 0, 16, 0, + 1, 0, 0, 0, 1, 64, + 0, 0, 0, 0, 0, 0, + 70, 240, 17, 0, 0, 0, + 0, 0, 54, 0, 0, 6, + 50, 48, 32, 0, 0, 0, + 0, 0, 1, 0, 0, 0, + 70, 0, 16, 0, 2, 0, + 0, 0, 167, 0, 0, 9, + 50, 0, 16, 0, 2, 0, + 0, 0, 10, 0, 16, 0, + 1, 0, 0, 0, 1, 64, + 0, 0, 0, 0, 0, 0, + 70, 240, 17, 0, 1, 0, + 0, 0, 54, 0, 0, 6, + 50, 48, 32, 0, 1, 0, + 0, 0, 1, 0, 0, 0, + 70, 0, 16, 0, 2, 0, + 0, 0, 167, 0, 0, 9, + 50, 0, 16, 0, 2, 0, + 0, 0, 10, 0, 16, 0, + 1, 0, 0, 0, 1, 64, + 0, 0, 0, 0, 0, 0, + 70, 240, 17, 0, 2, 0, + 0, 0, 54, 0, 0, 6, + 50, 48, 32, 0, 2, 0, + 0, 0, 1, 0, 0, 0, + 70, 0, 16, 0, 2, 0, + 0, 0, 21, 0, 0, 1, + 86, 0, 0, 5, 34, 0, + 16, 0, 1, 0, 0, 0, + 26, 0, 16, 0, 1, 0, + 0, 0, 56, 0, 0, 7, + 34, 0, 16, 0, 1, 0, + 0, 0, 58, 0, 16, 0, + 0, 0, 0, 0, 26, 0, + 16, 0, 1, 0, 0, 0, + 77, 0, 0, 7, 18, 0, + 16, 0, 2, 0, 0, 0, + 18, 0, 16, 0, 3, 0, + 0, 0, 26, 0, 16, 0, + 1, 0, 0, 0, 54, 0, + 0, 6, 34, 0, 16, 0, + 1, 0, 0, 0, 10, 48, + 32, 0, 0, 0, 0, 0, + 1, 0, 0, 0, 54, 0, + 0, 6, 130, 0, 16, 0, + 1, 0, 0, 0, 26, 48, + 32, 0, 0, 0, 0, 0, + 1, 0, 0, 0, 56, 0, + 0, 7, 34, 0, 16, 0, + 2, 0, 0, 0, 58, 0, + 16, 0, 1, 0, 0, 0, + 10, 0, 16, 0, 2, 0, + 0, 0, 50, 0, 0, 10, + 18, 0, 16, 0, 4, 0, + 0, 0, 10, 0, 16, 0, + 3, 0, 0, 0, 26, 0, + 16, 0, 1, 0, 0, 0, + 26, 0, 16, 128, 65, 0, + 0, 0, 2, 0, 0, 0, + 56, 0, 0, 7, 130, 0, + 16, 0, 1, 0, 0, 0, + 58, 0, 16, 0, 1, 0, + 0, 0, 10, 0, 16, 0, + 3, 0, 0, 0, 50, 0, + 0, 9, 34, 0, 16, 0, + 4, 0, 0, 0, 10, 0, + 16, 0, 2, 0, 0, 0, + 26, 0, 16, 0, 1, 0, + 0, 0, 58, 0, 16, 0, + 1, 0, 0, 0, 54, 0, + 0, 6, 34, 0, 16, 0, + 1, 0, 0, 0, 10, 48, + 32, 0, 1, 0, 0, 0, + 1, 0, 0, 0, 54, 0, + 0, 6, 130, 0, 16, 0, + 1, 0, 0, 0, 26, 48, + 32, 0, 1, 0, 0, 0, + 1, 0, 0, 0, 56, 0, + 0, 7, 34, 0, 16, 0, + 2, 0, 0, 0, 58, 0, + 16, 0, 1, 0, 0, 0, + 10, 0, 16, 0, 2, 0, + 0, 0, 50, 0, 0, 10, + 18, 0, 16, 0, 5, 0, + 0, 0, 10, 0, 16, 0, + 3, 0, 0, 0, 26, 0, + 16, 0, 1, 0, 0, 0, + 26, 0, 16, 128, 65, 0, + 0, 0, 2, 0, 0, 0, + 56, 0, 0, 7, 130, 0, + 16, 0, 1, 0, 0, 0, + 58, 0, 16, 0, 1, 0, + 0, 0, 10, 0, 16, 0, + 3, 0, 0, 0, 50, 0, + 0, 9, 34, 0, 16, 0, + 5, 0, 0, 0, 10, 0, + 16, 0, 2, 0, 0, 0, + 26, 0, 16, 0, 1, 0, + 0, 0, 58, 0, 16, 0, + 1, 0, 0, 0, 54, 0, + 0, 6, 34, 0, 16, 0, + 1, 0, 0, 0, 10, 48, + 32, 0, 2, 0, 0, 0, + 1, 0, 0, 0, 54, 0, + 0, 6, 130, 0, 16, 0, + 1, 0, 0, 0, 26, 48, + 32, 0, 2, 0, 0, 0, + 1, 0, 0, 0, 56, 0, + 0, 7, 34, 0, 16, 0, + 2, 0, 0, 0, 58, 0, + 16, 0, 1, 0, 0, 0, + 10, 0, 16, 0, 2, 0, + 0, 0, 50, 0, 0, 10, + 18, 0, 16, 0, 6, 0, + 0, 0, 10, 0, 16, 0, + 3, 0, 0, 0, 26, 0, + 16, 0, 1, 0, 0, 0, + 26, 0, 16, 128, 65, 0, + 0, 0, 2, 0, 0, 0, + 56, 0, 0, 7, 130, 0, + 16, 0, 1, 0, 0, 0, + 58, 0, 16, 0, 1, 0, + 0, 0, 10, 0, 16, 0, + 3, 0, 0, 0, 50, 0, + 0, 9, 34, 0, 16, 0, + 6, 0, 0, 0, 10, 0, + 16, 0, 2, 0, 0, 0, + 26, 0, 16, 0, 1, 0, + 0, 0, 58, 0, 16, 0, + 1, 0, 0, 0, 54, 0, + 0, 6, 162, 0, 16, 0, + 1, 0, 0, 0, 6, 52, + 32, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 8, 50, 0, 16, 0, + 2, 0, 0, 0, 70, 0, + 16, 128, 65, 0, 0, 0, + 4, 0, 0, 0, 214, 5, + 16, 0, 1, 0, 0, 0, + 54, 0, 0, 6, 50, 48, + 32, 0, 0, 0, 0, 0, + 1, 0, 0, 0, 70, 0, + 16, 0, 2, 0, 0, 0, + 0, 0, 0, 7, 162, 0, + 16, 0, 1, 0, 0, 0, + 6, 4, 16, 0, 4, 0, + 0, 0, 86, 13, 16, 0, + 1, 0, 0, 0, 54, 0, + 0, 6, 50, 48, 32, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 214, 5, 16, 0, + 1, 0, 0, 0, 54, 0, + 0, 6, 194, 0, 16, 0, + 2, 0, 0, 0, 6, 52, + 32, 0, 1, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 8, 50, 0, 16, 0, + 3, 0, 0, 0, 70, 0, + 16, 128, 65, 0, 0, 0, + 5, 0, 0, 0, 230, 10, + 16, 0, 2, 0, 0, 0, + 54, 0, 0, 6, 50, 48, + 32, 0, 1, 0, 0, 0, + 1, 0, 0, 0, 70, 0, + 16, 0, 3, 0, 0, 0, + 0, 0, 0, 7, 194, 0, + 16, 0, 2, 0, 0, 0, + 6, 4, 16, 0, 5, 0, + 0, 0, 166, 14, 16, 0, + 2, 0, 0, 0, 54, 0, + 0, 6, 50, 48, 32, 0, + 1, 0, 0, 0, 0, 0, + 0, 0, 230, 10, 16, 0, + 2, 0, 0, 0, 54, 0, + 0, 6, 194, 0, 16, 0, + 3, 0, 0, 0, 6, 52, + 32, 0, 2, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 8, 50, 0, 16, 0, + 4, 0, 0, 0, 70, 0, + 16, 128, 65, 0, 0, 0, + 6, 0, 0, 0, 230, 10, + 16, 0, 3, 0, 0, 0, + 54, 0, 0, 6, 50, 48, + 32, 0, 2, 0, 0, 0, + 1, 0, 0, 0, 70, 0, + 16, 0, 4, 0, 0, 0, + 0, 0, 0, 7, 194, 0, + 16, 0, 3, 0, 0, 0, + 6, 4, 16, 0, 6, 0, + 0, 0, 166, 14, 16, 0, + 3, 0, 0, 0, 54, 0, + 0, 6, 50, 48, 32, 0, + 2, 0, 0, 0, 0, 0, + 0, 0, 230, 10, 16, 0, + 3, 0, 0, 0, 39, 0, + 0, 7, 66, 0, 16, 0, + 0, 0, 0, 0, 42, 0, + 16, 0, 1, 0, 0, 0, + 1, 64, 0, 0, 0, 0, + 0, 0, 31, 0, 4, 3, + 42, 0, 16, 0, 1, 0, + 0, 0, 54, 0, 0, 5, + 50, 0, 16, 0, 2, 0, + 0, 0, 214, 5, 16, 0, + 1, 0, 0, 0, 54, 0, + 0, 5, 50, 0, 16, 0, + 3, 0, 0, 0, 230, 10, + 16, 0, 2, 0, 0, 0, + 54, 0, 0, 5, 50, 0, + 16, 0, 4, 0, 0, 0, + 230, 10, 16, 0, 3, 0, + 0, 0, 21, 0, 0, 1, + 168, 0, 0, 9, 50, 240, + 17, 0, 2, 0, 0, 0, + 10, 0, 16, 0, 1, 0, + 0, 0, 1, 64, 0, 0, + 0, 0, 0, 0, 70, 0, + 16, 0, 4, 0, 0, 0, + 168, 0, 0, 9, 50, 240, + 17, 0, 1, 0, 0, 0, + 10, 0, 16, 0, 1, 0, + 0, 0, 1, 64, 0, 0, + 0, 0, 0, 0, 70, 0, + 16, 0, 3, 0, 0, 0, + 168, 0, 0, 9, 50, 240, + 17, 0, 0, 0, 0, 0, + 10, 0, 16, 0, 1, 0, + 0, 0, 1, 64, 0, 0, + 0, 0, 0, 0, 70, 0, + 16, 0, 2, 0, 0, 0, + 21, 0, 0, 1, 190, 24, + 0, 1, 56, 0, 0, 7, + 130, 0, 16, 0, 0, 0, + 0, 0, 58, 0, 16, 0, + 0, 0, 0, 0, 1, 64, + 0, 0, 0, 0, 0, 63, + 54, 0, 0, 5, 18, 0, + 16, 0, 1, 0, 0, 0, + 1, 64, 0, 0, 16, 0, + 0, 0, 18, 0, 0, 1, + 54, 0, 0, 5, 18, 0, + 16, 0, 1, 0, 0, 0, + 1, 64, 0, 0, 8, 0, + 0, 0, 21, 0, 0, 1, + 79, 0, 0, 8, 34, 0, + 16, 0, 1, 0, 0, 0, + 10, 0, 16, 0, 1, 0, + 0, 0, 10, 128, 32, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 31, 0, 4, 3, + 26, 0, 16, 0, 1, 0, + 0, 0, 31, 0, 4, 3, + 26, 0, 16, 0, 0, 0, + 0, 0, 87, 0, 0, 6, + 66, 0, 16, 0, 1, 0, + 0, 0, 10, 0, 2, 0, + 1, 64, 0, 0, 15, 0, + 0, 0, 1, 0, 0, 9, + 50, 0, 16, 0, 2, 0, + 0, 0, 6, 0, 2, 0, + 2, 64, 0, 0, 15, 0, + 0, 0, 16, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 31, 0, 4, 3, + 42, 0, 16, 0, 0, 0, + 0, 0, 167, 0, 0, 9, + 194, 0, 16, 0, 2, 0, + 0, 0, 42, 0, 16, 0, + 1, 0, 0, 0, 1, 64, + 0, 0, 0, 0, 0, 0, + 6, 244, 17, 0, 0, 0, + 0, 0, 54, 0, 0, 6, + 50, 48, 32, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 230, 10, 16, 0, 2, 0, + 0, 0, 167, 0, 0, 9, + 194, 0, 16, 0, 2, 0, + 0, 0, 42, 0, 16, 0, + 1, 0, 0, 0, 1, 64, + 0, 0, 0, 0, 0, 0, + 6, 244, 17, 0, 1, 0, + 0, 0, 54, 0, 0, 6, + 50, 48, 32, 0, 1, 0, + 0, 0, 0, 0, 0, 0, + 230, 10, 16, 0, 2, 0, + 0, 0, 167, 0, 0, 9, + 194, 0, 16, 0, 2, 0, + 0, 0, 42, 0, 16, 0, + 1, 0, 0, 0, 1, 64, + 0, 0, 0, 0, 0, 0, + 6, 244, 17, 0, 2, 0, + 0, 0, 54, 0, 0, 6, + 50, 48, 32, 0, 2, 0, + 0, 0, 0, 0, 0, 0, + 230, 10, 16, 0, 2, 0, + 0, 0, 18, 0, 0, 1, + 167, 0, 0, 9, 194, 0, + 16, 0, 2, 0, 0, 0, + 42, 0, 16, 0, 1, 0, + 0, 0, 1, 64, 0, 0, + 0, 0, 0, 0, 6, 244, + 17, 0, 0, 0, 0, 0, + 54, 0, 0, 6, 50, 48, + 32, 0, 0, 0, 0, 0, + 1, 0, 0, 0, 230, 10, + 16, 0, 2, 0, 0, 0, + 167, 0, 0, 9, 194, 0, + 16, 0, 2, 0, 0, 0, + 42, 0, 16, 0, 1, 0, + 0, 0, 1, 64, 0, 0, + 0, 0, 0, 0, 6, 244, + 17, 0, 1, 0, 0, 0, + 54, 0, 0, 6, 50, 48, + 32, 0, 1, 0, 0, 0, + 1, 0, 0, 0, 230, 10, + 16, 0, 2, 0, 0, 0, + 167, 0, 0, 9, 194, 0, + 16, 0, 2, 0, 0, 0, + 42, 0, 16, 0, 1, 0, + 0, 0, 1, 64, 0, 0, + 0, 0, 0, 0, 6, 244, + 17, 0, 2, 0, 0, 0, + 54, 0, 0, 6, 50, 48, + 32, 0, 2, 0, 0, 0, + 1, 0, 0, 0, 230, 10, + 16, 0, 2, 0, 0, 0, + 21, 0, 0, 1, 86, 0, + 0, 5, 130, 0, 16, 0, + 1, 0, 0, 0, 10, 0, + 16, 0, 2, 0, 0, 0, + 56, 0, 0, 7, 130, 0, + 16, 0, 1, 0, 0, 0, + 58, 0, 16, 0, 0, 0, + 0, 0, 58, 0, 16, 0, + 1, 0, 0, 0, 77, 0, + 0, 7, 18, 0, 16, 0, + 2, 0, 0, 0, 18, 0, + 16, 0, 3, 0, 0, 0, + 58, 0, 16, 0, 1, 0, + 0, 0, 54, 0, 0, 6, + 130, 0, 16, 0, 1, 0, + 0, 0, 10, 48, 32, 0, + 0, 0, 0, 0, 1, 0, + 0, 0, 54, 0, 0, 6, + 66, 0, 16, 0, 2, 0, + 0, 0, 26, 48, 32, 0, + 0, 0, 0, 0, 1, 0, + 0, 0, 56, 0, 0, 7, + 130, 0, 16, 0, 2, 0, + 0, 0, 42, 0, 16, 0, + 2, 0, 0, 0, 10, 0, + 16, 0, 2, 0, 0, 0, + 50, 0, 0, 10, 18, 0, + 16, 0, 4, 0, 0, 0, + 10, 0, 16, 0, 3, 0, + 0, 0, 58, 0, 16, 0, + 1, 0, 0, 0, 58, 0, + 16, 128, 65, 0, 0, 0, + 2, 0, 0, 0, 56, 0, + 0, 7, 66, 0, 16, 0, + 2, 0, 0, 0, 42, 0, + 16, 0, 2, 0, 0, 0, + 10, 0, 16, 0, 3, 0, + 0, 0, 50, 0, 0, 9, + 34, 0, 16, 0, 4, 0, + 0, 0, 10, 0, 16, 0, + 2, 0, 0, 0, 58, 0, + 16, 0, 1, 0, 0, 0, + 42, 0, 16, 0, 2, 0, + 0, 0, 54, 0, 0, 6, + 130, 0, 16, 0, 1, 0, + 0, 0, 10, 48, 32, 0, + 1, 0, 0, 0, 1, 0, + 0, 0, 54, 0, 0, 6, + 66, 0, 16, 0, 2, 0, + 0, 0, 26, 48, 32, 0, + 1, 0, 0, 0, 1, 0, + 0, 0, 56, 0, 0, 7, + 130, 0, 16, 0, 2, 0, + 0, 0, 42, 0, 16, 0, + 2, 0, 0, 0, 10, 0, + 16, 0, 2, 0, 0, 0, + 50, 0, 0, 10, 18, 0, + 16, 0, 5, 0, 0, 0, + 10, 0, 16, 0, 3, 0, + 0, 0, 58, 0, 16, 0, + 1, 0, 0, 0, 58, 0, + 16, 128, 65, 0, 0, 0, + 2, 0, 0, 0, 56, 0, + 0, 7, 66, 0, 16, 0, + 2, 0, 0, 0, 42, 0, + 16, 0, 2, 0, 0, 0, + 10, 0, 16, 0, 3, 0, + 0, 0, 50, 0, 0, 9, + 34, 0, 16, 0, 5, 0, + 0, 0, 10, 0, 16, 0, + 2, 0, 0, 0, 58, 0, + 16, 0, 1, 0, 0, 0, + 42, 0, 16, 0, 2, 0, + 0, 0, 54, 0, 0, 6, + 130, 0, 16, 0, 1, 0, + 0, 0, 10, 48, 32, 0, + 2, 0, 0, 0, 1, 0, + 0, 0, 54, 0, 0, 6, + 66, 0, 16, 0, 2, 0, + 0, 0, 26, 48, 32, 0, + 2, 0, 0, 0, 1, 0, + 0, 0, 56, 0, 0, 7, + 130, 0, 16, 0, 2, 0, + 0, 0, 42, 0, 16, 0, + 2, 0, 0, 0, 10, 0, + 16, 0, 2, 0, 0, 0, + 50, 0, 0, 10, 18, 0, + 16, 0, 6, 0, 0, 0, + 10, 0, 16, 0, 3, 0, + 0, 0, 58, 0, 16, 0, + 1, 0, 0, 0, 58, 0, + 16, 128, 65, 0, 0, 0, + 2, 0, 0, 0, 56, 0, + 0, 7, 66, 0, 16, 0, + 2, 0, 0, 0, 42, 0, + 16, 0, 2, 0, 0, 0, + 10, 0, 16, 0, 3, 0, + 0, 0, 50, 0, 0, 9, + 34, 0, 16, 0, 6, 0, + 0, 0, 10, 0, 16, 0, + 2, 0, 0, 0, 58, 0, + 16, 0, 1, 0, 0, 0, + 42, 0, 16, 0, 2, 0, + 0, 0, 54, 0, 0, 6, + 82, 0, 16, 0, 2, 0, + 0, 0, 6, 49, 32, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 8, + 50, 0, 16, 0, 3, 0, + 0, 0, 70, 0, 16, 128, + 65, 0, 0, 0, 4, 0, + 0, 0, 134, 0, 16, 0, + 2, 0, 0, 0, 54, 0, + 0, 6, 50, 48, 32, 0, + 0, 0, 0, 0, 1, 0, + 0, 0, 70, 0, 16, 0, + 3, 0, 0, 0, 0, 0, + 0, 7, 82, 0, 16, 0, + 2, 0, 0, 0, 6, 1, + 16, 0, 4, 0, 0, 0, + 6, 2, 16, 0, 2, 0, + 0, 0, 54, 0, 0, 6, + 50, 48, 32, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 134, 0, 16, 0, 2, 0, + 0, 0, 54, 0, 0, 6, + 194, 0, 16, 0, 3, 0, + 0, 0, 6, 52, 32, 0, + 1, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 8, + 50, 0, 16, 0, 4, 0, + 0, 0, 70, 0, 16, 128, + 65, 0, 0, 0, 5, 0, + 0, 0, 230, 10, 16, 0, + 3, 0, 0, 0, 54, 0, + 0, 6, 50, 48, 32, 0, + 1, 0, 0, 0, 1, 0, + 0, 0, 70, 0, 16, 0, + 4, 0, 0, 0, 0, 0, + 0, 7, 194, 0, 16, 0, + 3, 0, 0, 0, 6, 4, + 16, 0, 5, 0, 0, 0, + 166, 14, 16, 0, 3, 0, + 0, 0, 54, 0, 0, 6, + 50, 48, 32, 0, 1, 0, + 0, 0, 0, 0, 0, 0, + 230, 10, 16, 0, 3, 0, + 0, 0, 54, 0, 0, 6, + 194, 0, 16, 0, 4, 0, + 0, 0, 6, 52, 32, 0, + 2, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 8, + 50, 0, 16, 0, 5, 0, + 0, 0, 70, 0, 16, 128, + 65, 0, 0, 0, 6, 0, + 0, 0, 230, 10, 16, 0, + 4, 0, 0, 0, 54, 0, + 0, 6, 50, 48, 32, 0, + 2, 0, 0, 0, 1, 0, + 0, 0, 70, 0, 16, 0, + 5, 0, 0, 0, 0, 0, + 0, 7, 194, 0, 16, 0, + 4, 0, 0, 0, 6, 4, + 16, 0, 6, 0, 0, 0, + 166, 14, 16, 0, 4, 0, + 0, 0, 54, 0, 0, 6, + 50, 48, 32, 0, 2, 0, + 0, 0, 0, 0, 0, 0, + 230, 10, 16, 0, 4, 0, + 0, 0, 39, 0, 0, 7, + 66, 0, 16, 0, 0, 0, + 0, 0, 26, 0, 16, 0, + 2, 0, 0, 0, 1, 64, + 0, 0, 0, 0, 0, 0, + 31, 0, 4, 3, 26, 0, + 16, 0, 2, 0, 0, 0, + 54, 0, 0, 5, 50, 0, + 16, 0, 3, 0, 0, 0, + 134, 0, 16, 0, 2, 0, + 0, 0, 54, 0, 0, 5, + 50, 0, 16, 0, 4, 0, + 0, 0, 230, 10, 16, 0, + 3, 0, 0, 0, 54, 0, + 0, 5, 50, 0, 16, 0, + 5, 0, 0, 0, 230, 10, + 16, 0, 4, 0, 0, 0, + 21, 0, 0, 1, 168, 0, + 0, 9, 50, 240, 17, 0, + 2, 0, 0, 0, 42, 0, + 16, 0, 1, 0, 0, 0, + 1, 64, 0, 0, 0, 0, + 0, 0, 70, 0, 16, 0, + 5, 0, 0, 0, 168, 0, + 0, 9, 50, 240, 17, 0, + 1, 0, 0, 0, 42, 0, + 16, 0, 1, 0, 0, 0, + 1, 64, 0, 0, 0, 0, + 0, 0, 70, 0, 16, 0, + 4, 0, 0, 0, 168, 0, + 0, 9, 50, 240, 17, 0, + 0, 0, 0, 0, 42, 0, + 16, 0, 1, 0, 0, 0, + 1, 64, 0, 0, 0, 0, + 0, 0, 70, 0, 16, 0, + 3, 0, 0, 0, 21, 0, + 0, 1, 190, 24, 0, 1, + 56, 0, 0, 7, 130, 0, + 16, 0, 0, 0, 0, 0, + 58, 0, 16, 0, 0, 0, + 0, 0, 1, 64, 0, 0, + 0, 0, 0, 63, 54, 0, + 0, 5, 18, 0, 16, 0, + 1, 0, 0, 0, 1, 64, + 0, 0, 32, 0, 0, 0, + 21, 0, 0, 1, 79, 0, + 0, 8, 66, 0, 16, 0, + 1, 0, 0, 0, 10, 0, + 16, 0, 1, 0, 0, 0, + 10, 128, 32, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 1, 0, 0, 7, 34, 0, + 16, 0, 1, 0, 0, 0, + 42, 0, 16, 0, 1, 0, + 0, 0, 26, 0, 16, 0, + 1, 0, 0, 0, 31, 0, + 4, 3, 26, 0, 16, 0, + 1, 0, 0, 0, 31, 0, + 4, 3, 26, 0, 16, 0, + 0, 0, 0, 0, 87, 0, + 0, 6, 66, 0, 16, 0, + 1, 0, 0, 0, 10, 0, + 2, 0, 1, 64, 0, 0, + 31, 0, 0, 0, 1, 0, + 0, 9, 50, 0, 16, 0, + 2, 0, 0, 0, 6, 0, + 2, 0, 2, 64, 0, 0, + 31, 0, 0, 0, 32, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 31, 0, + 4, 3, 42, 0, 16, 0, + 0, 0, 0, 0, 167, 0, + 0, 9, 194, 0, 16, 0, + 2, 0, 0, 0, 42, 0, + 16, 0, 1, 0, 0, 0, + 1, 64, 0, 0, 0, 0, + 0, 0, 6, 244, 17, 0, + 0, 0, 0, 0, 54, 0, + 0, 6, 50, 48, 32, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 230, 10, 16, 0, + 2, 0, 0, 0, 167, 0, + 0, 9, 194, 0, 16, 0, + 2, 0, 0, 0, 42, 0, + 16, 0, 1, 0, 0, 0, + 1, 64, 0, 0, 0, 0, + 0, 0, 6, 244, 17, 0, + 1, 0, 0, 0, 54, 0, + 0, 6, 50, 48, 32, 0, + 1, 0, 0, 0, 0, 0, + 0, 0, 230, 10, 16, 0, + 2, 0, 0, 0, 167, 0, + 0, 9, 194, 0, 16, 0, + 2, 0, 0, 0, 42, 0, + 16, 0, 1, 0, 0, 0, + 1, 64, 0, 0, 0, 0, + 0, 0, 6, 244, 17, 0, + 2, 0, 0, 0, 54, 0, + 0, 6, 50, 48, 32, 0, + 2, 0, 0, 0, 0, 0, + 0, 0, 230, 10, 16, 0, + 2, 0, 0, 0, 18, 0, + 0, 1, 167, 0, 0, 9, + 194, 0, 16, 0, 2, 0, + 0, 0, 42, 0, 16, 0, + 1, 0, 0, 0, 1, 64, + 0, 0, 0, 0, 0, 0, + 6, 244, 17, 0, 0, 0, + 0, 0, 54, 0, 0, 6, + 50, 48, 32, 0, 0, 0, + 0, 0, 1, 0, 0, 0, + 230, 10, 16, 0, 2, 0, + 0, 0, 167, 0, 0, 9, + 194, 0, 16, 0, 2, 0, + 0, 0, 42, 0, 16, 0, + 1, 0, 0, 0, 1, 64, + 0, 0, 0, 0, 0, 0, + 6, 244, 17, 0, 1, 0, + 0, 0, 54, 0, 0, 6, + 50, 48, 32, 0, 1, 0, + 0, 0, 1, 0, 0, 0, + 230, 10, 16, 0, 2, 0, + 0, 0, 167, 0, 0, 9, + 194, 0, 16, 0, 2, 0, + 0, 0, 42, 0, 16, 0, + 1, 0, 0, 0, 1, 64, + 0, 0, 0, 0, 0, 0, + 6, 244, 17, 0, 2, 0, + 0, 0, 54, 0, 0, 6, + 50, 48, 32, 0, 2, 0, + 0, 0, 1, 0, 0, 0, + 230, 10, 16, 0, 2, 0, + 0, 0, 21, 0, 0, 1, + 86, 0, 0, 5, 130, 0, + 16, 0, 1, 0, 0, 0, + 10, 0, 16, 0, 2, 0, + 0, 0, 56, 0, 0, 7, + 130, 0, 16, 0, 1, 0, + 0, 0, 58, 0, 16, 0, + 0, 0, 0, 0, 58, 0, + 16, 0, 1, 0, 0, 0, + 77, 0, 0, 7, 18, 0, + 16, 0, 2, 0, 0, 0, + 18, 0, 16, 0, 3, 0, + 0, 0, 58, 0, 16, 0, + 1, 0, 0, 0, 54, 0, + 0, 6, 130, 0, 16, 0, + 1, 0, 0, 0, 10, 48, + 32, 0, 0, 0, 0, 0, + 1, 0, 0, 0, 54, 0, + 0, 6, 66, 0, 16, 0, + 2, 0, 0, 0, 26, 48, + 32, 0, 0, 0, 0, 0, + 1, 0, 0, 0, 56, 0, + 0, 7, 130, 0, 16, 0, + 2, 0, 0, 0, 42, 0, + 16, 0, 2, 0, 0, 0, + 10, 0, 16, 0, 2, 0, + 0, 0, 50, 0, 0, 10, + 18, 0, 16, 0, 4, 0, + 0, 0, 10, 0, 16, 0, + 3, 0, 0, 0, 58, 0, + 16, 0, 1, 0, 0, 0, + 58, 0, 16, 128, 65, 0, + 0, 0, 2, 0, 0, 0, + 56, 0, 0, 7, 66, 0, + 16, 0, 2, 0, 0, 0, + 42, 0, 16, 0, 2, 0, + 0, 0, 10, 0, 16, 0, + 3, 0, 0, 0, 50, 0, + 0, 9, 34, 0, 16, 0, + 4, 0, 0, 0, 10, 0, + 16, 0, 2, 0, 0, 0, + 58, 0, 16, 0, 1, 0, + 0, 0, 42, 0, 16, 0, + 2, 0, 0, 0, 54, 0, + 0, 6, 130, 0, 16, 0, + 1, 0, 0, 0, 10, 48, + 32, 0, 1, 0, 0, 0, + 1, 0, 0, 0, 54, 0, + 0, 6, 66, 0, 16, 0, + 2, 0, 0, 0, 26, 48, + 32, 0, 1, 0, 0, 0, + 1, 0, 0, 0, 56, 0, + 0, 7, 130, 0, 16, 0, + 2, 0, 0, 0, 42, 0, + 16, 0, 2, 0, 0, 0, + 10, 0, 16, 0, 2, 0, + 0, 0, 50, 0, 0, 10, + 18, 0, 16, 0, 5, 0, + 0, 0, 10, 0, 16, 0, + 3, 0, 0, 0, 58, 0, + 16, 0, 1, 0, 0, 0, + 58, 0, 16, 128, 65, 0, + 0, 0, 2, 0, 0, 0, + 56, 0, 0, 7, 66, 0, + 16, 0, 2, 0, 0, 0, + 42, 0, 16, 0, 2, 0, + 0, 0, 10, 0, 16, 0, + 3, 0, 0, 0, 50, 0, + 0, 9, 34, 0, 16, 0, + 5, 0, 0, 0, 10, 0, + 16, 0, 2, 0, 0, 0, + 58, 0, 16, 0, 1, 0, + 0, 0, 42, 0, 16, 0, + 2, 0, 0, 0, 54, 0, + 0, 6, 130, 0, 16, 0, + 1, 0, 0, 0, 10, 48, + 32, 0, 2, 0, 0, 0, + 1, 0, 0, 0, 54, 0, + 0, 6, 66, 0, 16, 0, + 2, 0, 0, 0, 26, 48, + 32, 0, 2, 0, 0, 0, + 1, 0, 0, 0, 56, 0, + 0, 7, 130, 0, 16, 0, + 2, 0, 0, 0, 42, 0, + 16, 0, 2, 0, 0, 0, + 10, 0, 16, 0, 2, 0, + 0, 0, 50, 0, 0, 10, + 18, 0, 16, 0, 6, 0, + 0, 0, 10, 0, 16, 0, + 3, 0, 0, 0, 58, 0, + 16, 0, 1, 0, 0, 0, + 58, 0, 16, 128, 65, 0, + 0, 0, 2, 0, 0, 0, + 56, 0, 0, 7, 66, 0, + 16, 0, 2, 0, 0, 0, + 42, 0, 16, 0, 2, 0, + 0, 0, 10, 0, 16, 0, + 3, 0, 0, 0, 50, 0, + 0, 9, 34, 0, 16, 0, + 6, 0, 0, 0, 10, 0, + 16, 0, 2, 0, 0, 0, + 58, 0, 16, 0, 1, 0, + 0, 0, 42, 0, 16, 0, + 2, 0, 0, 0, 54, 0, + 0, 6, 82, 0, 16, 0, + 2, 0, 0, 0, 6, 49, + 32, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 8, 50, 0, 16, 0, + 3, 0, 0, 0, 70, 0, + 16, 128, 65, 0, 0, 0, + 4, 0, 0, 0, 134, 0, + 16, 0, 2, 0, 0, 0, + 54, 0, 0, 6, 50, 48, + 32, 0, 0, 0, 0, 0, + 1, 0, 0, 0, 70, 0, + 16, 0, 3, 0, 0, 0, + 0, 0, 0, 7, 82, 0, + 16, 0, 2, 0, 0, 0, + 6, 1, 16, 0, 4, 0, + 0, 0, 6, 2, 16, 0, + 2, 0, 0, 0, 54, 0, + 0, 6, 50, 48, 32, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 134, 0, 16, 0, + 2, 0, 0, 0, 54, 0, + 0, 6, 194, 0, 16, 0, + 3, 0, 0, 0, 6, 52, + 32, 0, 1, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 8, 50, 0, 16, 0, + 4, 0, 0, 0, 70, 0, + 16, 128, 65, 0, 0, 0, + 5, 0, 0, 0, 230, 10, + 16, 0, 3, 0, 0, 0, + 54, 0, 0, 6, 50, 48, + 32, 0, 1, 0, 0, 0, + 1, 0, 0, 0, 70, 0, + 16, 0, 4, 0, 0, 0, + 0, 0, 0, 7, 194, 0, + 16, 0, 3, 0, 0, 0, + 6, 4, 16, 0, 5, 0, + 0, 0, 166, 14, 16, 0, + 3, 0, 0, 0, 54, 0, + 0, 6, 50, 48, 32, 0, + 1, 0, 0, 0, 0, 0, + 0, 0, 230, 10, 16, 0, + 3, 0, 0, 0, 54, 0, + 0, 6, 194, 0, 16, 0, + 4, 0, 0, 0, 6, 52, + 32, 0, 2, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 8, 50, 0, 16, 0, + 5, 0, 0, 0, 70, 0, + 16, 128, 65, 0, 0, 0, + 6, 0, 0, 0, 230, 10, + 16, 0, 4, 0, 0, 0, + 54, 0, 0, 6, 50, 48, + 32, 0, 2, 0, 0, 0, + 1, 0, 0, 0, 70, 0, + 16, 0, 5, 0, 0, 0, + 0, 0, 0, 7, 194, 0, + 16, 0, 4, 0, 0, 0, + 6, 4, 16, 0, 6, 0, + 0, 0, 166, 14, 16, 0, + 4, 0, 0, 0, 54, 0, + 0, 6, 50, 48, 32, 0, + 2, 0, 0, 0, 0, 0, + 0, 0, 230, 10, 16, 0, + 4, 0, 0, 0, 39, 0, + 0, 7, 66, 0, 16, 0, + 0, 0, 0, 0, 26, 0, + 16, 0, 2, 0, 0, 0, + 1, 64, 0, 0, 0, 0, + 0, 0, 31, 0, 4, 3, + 26, 0, 16, 0, 2, 0, + 0, 0, 54, 0, 0, 5, + 50, 0, 16, 0, 3, 0, + 0, 0, 134, 0, 16, 0, + 2, 0, 0, 0, 54, 0, + 0, 5, 50, 0, 16, 0, + 4, 0, 0, 0, 230, 10, + 16, 0, 3, 0, 0, 0, + 54, 0, 0, 5, 50, 0, + 16, 0, 5, 0, 0, 0, + 230, 10, 16, 0, 4, 0, + 0, 0, 21, 0, 0, 1, + 168, 0, 0, 9, 50, 240, + 17, 0, 2, 0, 0, 0, + 42, 0, 16, 0, 1, 0, + 0, 0, 1, 64, 0, 0, + 0, 0, 0, 0, 70, 0, + 16, 0, 5, 0, 0, 0, + 168, 0, 0, 9, 50, 240, + 17, 0, 1, 0, 0, 0, + 42, 0, 16, 0, 1, 0, + 0, 0, 1, 64, 0, 0, + 0, 0, 0, 0, 70, 0, + 16, 0, 4, 0, 0, 0, + 168, 0, 0, 9, 50, 240, + 17, 0, 0, 0, 0, 0, + 42, 0, 16, 0, 1, 0, + 0, 0, 1, 64, 0, 0, + 0, 0, 0, 0, 70, 0, + 16, 0, 3, 0, 0, 0, + 21, 0, 0, 1, 190, 24, + 0, 1, 56, 0, 0, 7, + 130, 0, 16, 0, 0, 0, + 0, 0, 58, 0, 16, 0, + 0, 0, 0, 0, 1, 64, + 0, 0, 0, 0, 0, 63, + 54, 0, 0, 5, 18, 0, + 16, 0, 1, 0, 0, 0, + 1, 64, 0, 0, 64, 0, + 0, 0, 21, 0, 0, 1, + 79, 0, 0, 8, 66, 0, + 16, 0, 1, 0, 0, 0, + 10, 0, 16, 0, 1, 0, + 0, 0, 10, 128, 32, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 1, 0, 0, 7, + 34, 0, 16, 0, 1, 0, + 0, 0, 42, 0, 16, 0, + 1, 0, 0, 0, 26, 0, + 16, 0, 1, 0, 0, 0, + 31, 0, 4, 3, 26, 0, + 16, 0, 1, 0, 0, 0, + 31, 0, 4, 3, 26, 0, + 16, 0, 0, 0, 0, 0, + 87, 0, 0, 6, 66, 0, + 16, 0, 1, 0, 0, 0, + 10, 0, 2, 0, 1, 64, + 0, 0, 63, 0, 0, 0, + 1, 0, 0, 9, 50, 0, + 16, 0, 2, 0, 0, 0, + 6, 0, 2, 0, 2, 64, + 0, 0, 63, 0, 0, 0, + 64, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 31, 0, 4, 3, 42, 0, + 16, 0, 0, 0, 0, 0, + 167, 0, 0, 9, 194, 0, + 16, 0, 2, 0, 0, 0, + 42, 0, 16, 0, 1, 0, + 0, 0, 1, 64, 0, 0, + 0, 0, 0, 0, 6, 244, + 17, 0, 0, 0, 0, 0, + 54, 0, 0, 6, 50, 48, + 32, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 230, 10, + 16, 0, 2, 0, 0, 0, + 167, 0, 0, 9, 194, 0, + 16, 0, 2, 0, 0, 0, + 42, 0, 16, 0, 1, 0, + 0, 0, 1, 64, 0, 0, + 0, 0, 0, 0, 6, 244, + 17, 0, 1, 0, 0, 0, + 54, 0, 0, 6, 50, 48, + 32, 0, 1, 0, 0, 0, + 0, 0, 0, 0, 230, 10, + 16, 0, 2, 0, 0, 0, + 167, 0, 0, 9, 194, 0, + 16, 0, 2, 0, 0, 0, + 42, 0, 16, 0, 1, 0, + 0, 0, 1, 64, 0, 0, + 0, 0, 0, 0, 6, 244, + 17, 0, 2, 0, 0, 0, + 54, 0, 0, 6, 50, 48, + 32, 0, 2, 0, 0, 0, + 0, 0, 0, 0, 230, 10, + 16, 0, 2, 0, 0, 0, + 18, 0, 0, 1, 167, 0, + 0, 9, 194, 0, 16, 0, + 2, 0, 0, 0, 42, 0, + 16, 0, 1, 0, 0, 0, + 1, 64, 0, 0, 0, 0, + 0, 0, 6, 244, 17, 0, + 0, 0, 0, 0, 54, 0, + 0, 6, 50, 48, 32, 0, + 0, 0, 0, 0, 1, 0, + 0, 0, 230, 10, 16, 0, + 2, 0, 0, 0, 167, 0, + 0, 9, 194, 0, 16, 0, + 2, 0, 0, 0, 42, 0, + 16, 0, 1, 0, 0, 0, + 1, 64, 0, 0, 0, 0, + 0, 0, 6, 244, 17, 0, + 1, 0, 0, 0, 54, 0, + 0, 6, 50, 48, 32, 0, + 1, 0, 0, 0, 1, 0, + 0, 0, 230, 10, 16, 0, + 2, 0, 0, 0, 167, 0, + 0, 9, 194, 0, 16, 0, + 2, 0, 0, 0, 42, 0, + 16, 0, 1, 0, 0, 0, + 1, 64, 0, 0, 0, 0, + 0, 0, 6, 244, 17, 0, + 2, 0, 0, 0, 54, 0, + 0, 6, 50, 48, 32, 0, + 2, 0, 0, 0, 1, 0, + 0, 0, 230, 10, 16, 0, + 2, 0, 0, 0, 21, 0, + 0, 1, 86, 0, 0, 5, + 130, 0, 16, 0, 1, 0, + 0, 0, 10, 0, 16, 0, + 2, 0, 0, 0, 56, 0, + 0, 7, 130, 0, 16, 0, + 1, 0, 0, 0, 58, 0, + 16, 0, 0, 0, 0, 0, + 58, 0, 16, 0, 1, 0, + 0, 0, 77, 0, 0, 7, + 18, 0, 16, 0, 2, 0, + 0, 0, 18, 0, 16, 0, + 3, 0, 0, 0, 58, 0, + 16, 0, 1, 0, 0, 0, + 54, 0, 0, 6, 130, 0, + 16, 0, 1, 0, 0, 0, + 10, 48, 32, 0, 0, 0, + 0, 0, 1, 0, 0, 0, + 54, 0, 0, 6, 66, 0, + 16, 0, 2, 0, 0, 0, + 26, 48, 32, 0, 0, 0, + 0, 0, 1, 0, 0, 0, + 56, 0, 0, 7, 130, 0, + 16, 0, 2, 0, 0, 0, + 42, 0, 16, 0, 2, 0, + 0, 0, 10, 0, 16, 0, + 2, 0, 0, 0, 50, 0, + 0, 10, 18, 0, 16, 0, + 4, 0, 0, 0, 10, 0, + 16, 0, 3, 0, 0, 0, + 58, 0, 16, 0, 1, 0, + 0, 0, 58, 0, 16, 128, + 65, 0, 0, 0, 2, 0, + 0, 0, 56, 0, 0, 7, + 66, 0, 16, 0, 2, 0, + 0, 0, 42, 0, 16, 0, + 2, 0, 0, 0, 10, 0, + 16, 0, 3, 0, 0, 0, + 50, 0, 0, 9, 34, 0, + 16, 0, 4, 0, 0, 0, + 10, 0, 16, 0, 2, 0, + 0, 0, 58, 0, 16, 0, + 1, 0, 0, 0, 42, 0, + 16, 0, 2, 0, 0, 0, + 54, 0, 0, 6, 130, 0, + 16, 0, 1, 0, 0, 0, + 10, 48, 32, 0, 1, 0, + 0, 0, 1, 0, 0, 0, + 54, 0, 0, 6, 66, 0, + 16, 0, 2, 0, 0, 0, + 26, 48, 32, 0, 1, 0, + 0, 0, 1, 0, 0, 0, + 56, 0, 0, 7, 130, 0, + 16, 0, 2, 0, 0, 0, + 42, 0, 16, 0, 2, 0, + 0, 0, 10, 0, 16, 0, + 2, 0, 0, 0, 50, 0, + 0, 10, 18, 0, 16, 0, + 5, 0, 0, 0, 10, 0, + 16, 0, 3, 0, 0, 0, + 58, 0, 16, 0, 1, 0, + 0, 0, 58, 0, 16, 128, + 65, 0, 0, 0, 2, 0, + 0, 0, 56, 0, 0, 7, + 66, 0, 16, 0, 2, 0, + 0, 0, 42, 0, 16, 0, + 2, 0, 0, 0, 10, 0, + 16, 0, 3, 0, 0, 0, + 50, 0, 0, 9, 34, 0, + 16, 0, 5, 0, 0, 0, + 10, 0, 16, 0, 2, 0, + 0, 0, 58, 0, 16, 0, + 1, 0, 0, 0, 42, 0, + 16, 0, 2, 0, 0, 0, + 54, 0, 0, 6, 130, 0, + 16, 0, 1, 0, 0, 0, + 10, 48, 32, 0, 2, 0, + 0, 0, 1, 0, 0, 0, + 54, 0, 0, 6, 66, 0, + 16, 0, 2, 0, 0, 0, + 26, 48, 32, 0, 2, 0, + 0, 0, 1, 0, 0, 0, + 56, 0, 0, 7, 130, 0, + 16, 0, 2, 0, 0, 0, + 42, 0, 16, 0, 2, 0, + 0, 0, 10, 0, 16, 0, + 2, 0, 0, 0, 50, 0, + 0, 10, 18, 0, 16, 0, + 6, 0, 0, 0, 10, 0, + 16, 0, 3, 0, 0, 0, + 58, 0, 16, 0, 1, 0, + 0, 0, 58, 0, 16, 128, + 65, 0, 0, 0, 2, 0, + 0, 0, 56, 0, 0, 7, + 66, 0, 16, 0, 2, 0, + 0, 0, 42, 0, 16, 0, + 2, 0, 0, 0, 10, 0, + 16, 0, 3, 0, 0, 0, + 50, 0, 0, 9, 34, 0, + 16, 0, 6, 0, 0, 0, + 10, 0, 16, 0, 2, 0, + 0, 0, 58, 0, 16, 0, + 1, 0, 0, 0, 42, 0, + 16, 0, 2, 0, 0, 0, + 54, 0, 0, 6, 82, 0, + 16, 0, 2, 0, 0, 0, + 6, 49, 32, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 8, 50, 0, + 16, 0, 3, 0, 0, 0, + 70, 0, 16, 128, 65, 0, + 0, 0, 4, 0, 0, 0, + 134, 0, 16, 0, 2, 0, + 0, 0, 54, 0, 0, 6, + 50, 48, 32, 0, 0, 0, + 0, 0, 1, 0, 0, 0, + 70, 0, 16, 0, 3, 0, + 0, 0, 0, 0, 0, 7, + 82, 0, 16, 0, 2, 0, + 0, 0, 6, 1, 16, 0, + 4, 0, 0, 0, 6, 2, + 16, 0, 2, 0, 0, 0, + 54, 0, 0, 6, 50, 48, + 32, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 134, 0, + 16, 0, 2, 0, 0, 0, + 54, 0, 0, 6, 194, 0, + 16, 0, 3, 0, 0, 0, + 6, 52, 32, 0, 1, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 8, 50, 0, + 16, 0, 4, 0, 0, 0, + 70, 0, 16, 128, 65, 0, + 0, 0, 5, 0, 0, 0, + 230, 10, 16, 0, 3, 0, + 0, 0, 54, 0, 0, 6, + 50, 48, 32, 0, 1, 0, + 0, 0, 1, 0, 0, 0, + 70, 0, 16, 0, 4, 0, + 0, 0, 0, 0, 0, 7, + 194, 0, 16, 0, 3, 0, + 0, 0, 6, 4, 16, 0, + 5, 0, 0, 0, 166, 14, + 16, 0, 3, 0, 0, 0, + 54, 0, 0, 6, 50, 48, + 32, 0, 1, 0, 0, 0, + 0, 0, 0, 0, 230, 10, + 16, 0, 3, 0, 0, 0, + 54, 0, 0, 6, 194, 0, + 16, 0, 4, 0, 0, 0, + 6, 52, 32, 0, 2, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 8, 50, 0, + 16, 0, 5, 0, 0, 0, + 70, 0, 16, 128, 65, 0, + 0, 0, 6, 0, 0, 0, + 230, 10, 16, 0, 4, 0, + 0, 0, 54, 0, 0, 6, + 50, 48, 32, 0, 2, 0, + 0, 0, 1, 0, 0, 0, + 70, 0, 16, 0, 5, 0, + 0, 0, 0, 0, 0, 7, + 194, 0, 16, 0, 4, 0, + 0, 0, 6, 4, 16, 0, + 6, 0, 0, 0, 166, 14, + 16, 0, 4, 0, 0, 0, + 54, 0, 0, 6, 50, 48, + 32, 0, 2, 0, 0, 0, + 0, 0, 0, 0, 230, 10, + 16, 0, 4, 0, 0, 0, + 39, 0, 0, 7, 66, 0, + 16, 0, 0, 0, 0, 0, + 26, 0, 16, 0, 2, 0, + 0, 0, 1, 64, 0, 0, + 0, 0, 0, 0, 31, 0, + 4, 3, 26, 0, 16, 0, + 2, 0, 0, 0, 54, 0, + 0, 5, 50, 0, 16, 0, + 3, 0, 0, 0, 134, 0, + 16, 0, 2, 0, 0, 0, + 54, 0, 0, 5, 50, 0, + 16, 0, 4, 0, 0, 0, + 230, 10, 16, 0, 3, 0, + 0, 0, 54, 0, 0, 5, + 50, 0, 16, 0, 5, 0, + 0, 0, 230, 10, 16, 0, + 4, 0, 0, 0, 21, 0, + 0, 1, 168, 0, 0, 9, + 50, 240, 17, 0, 2, 0, + 0, 0, 42, 0, 16, 0, + 1, 0, 0, 0, 1, 64, + 0, 0, 0, 0, 0, 0, + 70, 0, 16, 0, 5, 0, + 0, 0, 168, 0, 0, 9, + 50, 240, 17, 0, 1, 0, + 0, 0, 42, 0, 16, 0, + 1, 0, 0, 0, 1, 64, + 0, 0, 0, 0, 0, 0, + 70, 0, 16, 0, 4, 0, + 0, 0, 168, 0, 0, 9, + 50, 240, 17, 0, 0, 0, + 0, 0, 42, 0, 16, 0, + 1, 0, 0, 0, 1, 64, + 0, 0, 0, 0, 0, 0, + 70, 0, 16, 0, 3, 0, + 0, 0, 21, 0, 0, 1, + 190, 24, 0, 1, 56, 0, + 0, 7, 130, 0, 16, 0, + 0, 0, 0, 0, 58, 0, + 16, 0, 0, 0, 0, 0, + 1, 64, 0, 0, 0, 0, + 0, 63, 54, 0, 0, 5, + 18, 0, 16, 0, 1, 0, + 0, 0, 1, 64, 0, 0, + 128, 0, 0, 0, 21, 0, + 0, 1, 79, 0, 0, 8, + 66, 0, 16, 0, 1, 0, + 0, 0, 10, 0, 16, 0, + 1, 0, 0, 0, 10, 128, + 32, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 1, 0, + 0, 7, 34, 0, 16, 0, + 1, 0, 0, 0, 42, 0, + 16, 0, 1, 0, 0, 0, + 26, 0, 16, 0, 1, 0, + 0, 0, 31, 0, 4, 3, + 26, 0, 16, 0, 1, 0, + 0, 0, 31, 0, 4, 3, + 26, 0, 16, 0, 0, 0, + 0, 0, 87, 0, 0, 6, + 66, 0, 16, 0, 1, 0, + 0, 0, 10, 0, 2, 0, + 1, 64, 0, 0, 127, 0, + 0, 0, 1, 0, 0, 9, + 50, 0, 16, 0, 2, 0, + 0, 0, 6, 0, 2, 0, + 2, 64, 0, 0, 127, 0, + 0, 0, 128, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 31, 0, 4, 3, + 42, 0, 16, 0, 0, 0, + 0, 0, 167, 0, 0, 9, + 194, 0, 16, 0, 2, 0, + 0, 0, 42, 0, 16, 0, + 1, 0, 0, 0, 1, 64, + 0, 0, 0, 0, 0, 0, + 6, 244, 17, 0, 0, 0, + 0, 0, 54, 0, 0, 6, + 50, 48, 32, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 230, 10, 16, 0, 2, 0, + 0, 0, 167, 0, 0, 9, + 194, 0, 16, 0, 2, 0, + 0, 0, 42, 0, 16, 0, + 1, 0, 0, 0, 1, 64, + 0, 0, 0, 0, 0, 0, + 6, 244, 17, 0, 1, 0, + 0, 0, 54, 0, 0, 6, + 50, 48, 32, 0, 1, 0, + 0, 0, 0, 0, 0, 0, + 230, 10, 16, 0, 2, 0, + 0, 0, 167, 0, 0, 9, + 194, 0, 16, 0, 2, 0, + 0, 0, 42, 0, 16, 0, + 1, 0, 0, 0, 1, 64, + 0, 0, 0, 0, 0, 0, + 6, 244, 17, 0, 2, 0, + 0, 0, 54, 0, 0, 6, + 50, 48, 32, 0, 2, 0, + 0, 0, 0, 0, 0, 0, + 230, 10, 16, 0, 2, 0, + 0, 0, 18, 0, 0, 1, + 167, 0, 0, 9, 194, 0, + 16, 0, 2, 0, 0, 0, + 42, 0, 16, 0, 1, 0, + 0, 0, 1, 64, 0, 0, + 0, 0, 0, 0, 6, 244, + 17, 0, 0, 0, 0, 0, + 54, 0, 0, 6, 50, 48, + 32, 0, 0, 0, 0, 0, + 1, 0, 0, 0, 230, 10, + 16, 0, 2, 0, 0, 0, + 167, 0, 0, 9, 194, 0, + 16, 0, 2, 0, 0, 0, + 42, 0, 16, 0, 1, 0, + 0, 0, 1, 64, 0, 0, + 0, 0, 0, 0, 6, 244, + 17, 0, 1, 0, 0, 0, + 54, 0, 0, 6, 50, 48, + 32, 0, 1, 0, 0, 0, + 1, 0, 0, 0, 230, 10, + 16, 0, 2, 0, 0, 0, + 167, 0, 0, 9, 194, 0, + 16, 0, 2, 0, 0, 0, + 42, 0, 16, 0, 1, 0, + 0, 0, 1, 64, 0, 0, + 0, 0, 0, 0, 6, 244, + 17, 0, 2, 0, 0, 0, + 54, 0, 0, 6, 50, 48, + 32, 0, 2, 0, 0, 0, + 1, 0, 0, 0, 230, 10, + 16, 0, 2, 0, 0, 0, + 21, 0, 0, 1, 86, 0, + 0, 5, 130, 0, 16, 0, + 1, 0, 0, 0, 10, 0, + 16, 0, 2, 0, 0, 0, + 56, 0, 0, 7, 130, 0, + 16, 0, 1, 0, 0, 0, + 58, 0, 16, 0, 0, 0, + 0, 0, 58, 0, 16, 0, + 1, 0, 0, 0, 77, 0, + 0, 7, 18, 0, 16, 0, + 2, 0, 0, 0, 18, 0, + 16, 0, 3, 0, 0, 0, + 58, 0, 16, 0, 1, 0, + 0, 0, 54, 0, 0, 6, + 130, 0, 16, 0, 1, 0, + 0, 0, 10, 48, 32, 0, + 0, 0, 0, 0, 1, 0, + 0, 0, 54, 0, 0, 6, + 66, 0, 16, 0, 2, 0, + 0, 0, 26, 48, 32, 0, + 0, 0, 0, 0, 1, 0, + 0, 0, 56, 0, 0, 7, + 130, 0, 16, 0, 2, 0, + 0, 0, 42, 0, 16, 0, + 2, 0, 0, 0, 10, 0, + 16, 0, 2, 0, 0, 0, + 50, 0, 0, 10, 18, 0, + 16, 0, 4, 0, 0, 0, + 10, 0, 16, 0, 3, 0, + 0, 0, 58, 0, 16, 0, + 1, 0, 0, 0, 58, 0, + 16, 128, 65, 0, 0, 0, + 2, 0, 0, 0, 56, 0, + 0, 7, 66, 0, 16, 0, + 2, 0, 0, 0, 42, 0, + 16, 0, 2, 0, 0, 0, + 10, 0, 16, 0, 3, 0, + 0, 0, 50, 0, 0, 9, + 34, 0, 16, 0, 4, 0, + 0, 0, 10, 0, 16, 0, + 2, 0, 0, 0, 58, 0, + 16, 0, 1, 0, 0, 0, + 42, 0, 16, 0, 2, 0, + 0, 0, 54, 0, 0, 6, + 130, 0, 16, 0, 1, 0, + 0, 0, 10, 48, 32, 0, + 1, 0, 0, 0, 1, 0, + 0, 0, 54, 0, 0, 6, + 66, 0, 16, 0, 2, 0, + 0, 0, 26, 48, 32, 0, + 1, 0, 0, 0, 1, 0, + 0, 0, 56, 0, 0, 7, + 130, 0, 16, 0, 2, 0, + 0, 0, 42, 0, 16, 0, + 2, 0, 0, 0, 10, 0, + 16, 0, 2, 0, 0, 0, + 50, 0, 0, 10, 18, 0, + 16, 0, 5, 0, 0, 0, + 10, 0, 16, 0, 3, 0, + 0, 0, 58, 0, 16, 0, + 1, 0, 0, 0, 58, 0, + 16, 128, 65, 0, 0, 0, + 2, 0, 0, 0, 56, 0, + 0, 7, 66, 0, 16, 0, + 2, 0, 0, 0, 42, 0, + 16, 0, 2, 0, 0, 0, + 10, 0, 16, 0, 3, 0, + 0, 0, 50, 0, 0, 9, + 34, 0, 16, 0, 5, 0, + 0, 0, 10, 0, 16, 0, + 2, 0, 0, 0, 58, 0, + 16, 0, 1, 0, 0, 0, + 42, 0, 16, 0, 2, 0, + 0, 0, 54, 0, 0, 6, + 130, 0, 16, 0, 1, 0, + 0, 0, 10, 48, 32, 0, + 2, 0, 0, 0, 1, 0, + 0, 0, 54, 0, 0, 6, + 66, 0, 16, 0, 2, 0, + 0, 0, 26, 48, 32, 0, + 2, 0, 0, 0, 1, 0, + 0, 0, 56, 0, 0, 7, + 130, 0, 16, 0, 2, 0, + 0, 0, 42, 0, 16, 0, + 2, 0, 0, 0, 10, 0, + 16, 0, 2, 0, 0, 0, + 50, 0, 0, 10, 18, 0, + 16, 0, 6, 0, 0, 0, + 10, 0, 16, 0, 3, 0, + 0, 0, 58, 0, 16, 0, + 1, 0, 0, 0, 58, 0, + 16, 128, 65, 0, 0, 0, + 2, 0, 0, 0, 56, 0, + 0, 7, 66, 0, 16, 0, + 2, 0, 0, 0, 42, 0, + 16, 0, 2, 0, 0, 0, + 10, 0, 16, 0, 3, 0, + 0, 0, 50, 0, 0, 9, + 34, 0, 16, 0, 6, 0, + 0, 0, 10, 0, 16, 0, + 2, 0, 0, 0, 58, 0, + 16, 0, 1, 0, 0, 0, + 42, 0, 16, 0, 2, 0, + 0, 0, 54, 0, 0, 6, + 82, 0, 16, 0, 2, 0, + 0, 0, 6, 49, 32, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 8, + 50, 0, 16, 0, 3, 0, + 0, 0, 70, 0, 16, 128, + 65, 0, 0, 0, 4, 0, + 0, 0, 134, 0, 16, 0, + 2, 0, 0, 0, 54, 0, + 0, 6, 50, 48, 32, 0, + 0, 0, 0, 0, 1, 0, + 0, 0, 70, 0, 16, 0, + 3, 0, 0, 0, 0, 0, + 0, 7, 82, 0, 16, 0, + 2, 0, 0, 0, 6, 1, + 16, 0, 4, 0, 0, 0, + 6, 2, 16, 0, 2, 0, + 0, 0, 54, 0, 0, 6, + 18, 48, 32, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 10, 0, 16, 0, 2, 0, + 0, 0, 54, 0, 0, 6, + 194, 0, 16, 0, 3, 0, + 0, 0, 6, 52, 32, 0, + 1, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 8, + 50, 0, 16, 0, 4, 0, + 0, 0, 70, 0, 16, 128, + 65, 0, 0, 0, 5, 0, + 0, 0, 230, 10, 16, 0, + 3, 0, 0, 0, 54, 0, + 0, 6, 50, 48, 32, 0, + 1, 0, 0, 0, 1, 0, + 0, 0, 70, 0, 16, 0, + 4, 0, 0, 0, 0, 0, + 0, 7, 194, 0, 16, 0, + 3, 0, 0, 0, 6, 4, + 16, 0, 5, 0, 0, 0, + 166, 14, 16, 0, 3, 0, + 0, 0, 54, 0, 0, 6, + 18, 48, 32, 0, 1, 0, + 0, 0, 0, 0, 0, 0, + 42, 0, 16, 0, 3, 0, + 0, 0, 54, 0, 0, 6, + 194, 0, 16, 0, 4, 0, + 0, 0, 6, 52, 32, 0, + 2, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 8, + 50, 0, 16, 0, 5, 0, + 0, 0, 70, 0, 16, 128, + 65, 0, 0, 0, 6, 0, + 0, 0, 230, 10, 16, 0, + 4, 0, 0, 0, 54, 0, + 0, 6, 50, 48, 32, 0, + 2, 0, 0, 0, 1, 0, + 0, 0, 70, 0, 16, 0, + 5, 0, 0, 0, 0, 0, + 0, 7, 194, 0, 16, 0, + 4, 0, 0, 0, 6, 4, + 16, 0, 6, 0, 0, 0, + 166, 14, 16, 0, 4, 0, + 0, 0, 54, 0, 0, 6, + 18, 48, 32, 0, 2, 0, + 0, 0, 0, 0, 0, 0, + 42, 0, 16, 0, 4, 0, + 0, 0, 39, 0, 0, 7, + 66, 0, 16, 0, 0, 0, + 0, 0, 26, 0, 16, 0, + 2, 0, 0, 0, 1, 64, + 0, 0, 0, 0, 0, 0, + 31, 0, 4, 3, 26, 0, + 16, 0, 2, 0, 0, 0, + 54, 0, 0, 5, 50, 0, + 16, 0, 3, 0, 0, 0, + 134, 0, 16, 0, 2, 0, + 0, 0, 54, 0, 0, 5, + 50, 0, 16, 0, 4, 0, + 0, 0, 230, 10, 16, 0, + 3, 0, 0, 0, 54, 0, + 0, 5, 50, 0, 16, 0, + 5, 0, 0, 0, 230, 10, + 16, 0, 4, 0, 0, 0, + 21, 0, 0, 1, 168, 0, + 0, 9, 50, 240, 17, 0, + 2, 0, 0, 0, 42, 0, + 16, 0, 1, 0, 0, 0, + 1, 64, 0, 0, 0, 0, + 0, 0, 70, 0, 16, 0, + 5, 0, 0, 0, 168, 0, + 0, 9, 50, 240, 17, 0, + 1, 0, 0, 0, 42, 0, + 16, 0, 1, 0, 0, 0, + 1, 64, 0, 0, 0, 0, + 0, 0, 70, 0, 16, 0, + 4, 0, 0, 0, 168, 0, + 0, 9, 50, 240, 17, 0, + 0, 0, 0, 0, 42, 0, + 16, 0, 1, 0, 0, 0, + 1, 64, 0, 0, 0, 0, + 0, 0, 70, 0, 16, 0, + 3, 0, 0, 0, 21, 0, + 0, 1, 190, 24, 0, 1, + 56, 0, 0, 7, 130, 0, + 16, 0, 0, 0, 0, 0, + 58, 0, 16, 0, 0, 0, + 0, 0, 1, 64, 0, 0, + 0, 0, 0, 63, 54, 0, + 0, 5, 18, 0, 16, 0, + 1, 0, 0, 0, 1, 64, + 0, 0, 0, 1, 0, 0, + 21, 0, 0, 1, 79, 0, + 0, 8, 18, 0, 16, 0, + 1, 0, 0, 0, 10, 0, + 16, 0, 1, 0, 0, 0, + 10, 128, 32, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 1, 0, 0, 7, 18, 0, + 16, 0, 1, 0, 0, 0, + 10, 0, 16, 0, 1, 0, + 0, 0, 26, 0, 16, 0, + 1, 0, 0, 0, 31, 0, + 4, 3, 10, 0, 16, 0, + 1, 0, 0, 0, 31, 0, + 4, 3, 26, 0, 16, 0, + 0, 0, 0, 0, 87, 0, + 0, 6, 34, 0, 16, 0, + 0, 0, 0, 0, 10, 0, + 2, 0, 1, 64, 0, 0, + 255, 0, 0, 0, 1, 0, + 0, 6, 18, 0, 16, 0, + 1, 0, 0, 0, 10, 0, + 2, 0, 1, 64, 0, 0, + 255, 0, 0, 0, 31, 0, + 4, 3, 42, 0, 16, 0, + 0, 0, 0, 0, 167, 0, + 0, 9, 66, 0, 16, 0, + 0, 0, 0, 0, 26, 0, + 16, 0, 0, 0, 0, 0, + 1, 64, 0, 0, 0, 0, + 0, 0, 6, 240, 17, 0, + 0, 0, 0, 0, 54, 0, + 0, 6, 18, 48, 32, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 42, 0, 16, 0, + 0, 0, 0, 0, 167, 0, + 0, 9, 66, 0, 16, 0, + 0, 0, 0, 0, 26, 0, + 16, 0, 0, 0, 0, 0, + 1, 64, 0, 0, 0, 0, + 0, 0, 6, 240, 17, 0, + 1, 0, 0, 0, 54, 0, + 0, 6, 18, 48, 32, 0, + 1, 0, 0, 0, 0, 0, + 0, 0, 42, 0, 16, 0, + 0, 0, 0, 0, 167, 0, + 0, 9, 66, 0, 16, 0, + 0, 0, 0, 0, 26, 0, + 16, 0, 0, 0, 0, 0, + 1, 64, 0, 0, 0, 0, + 0, 0, 6, 240, 17, 0, + 2, 0, 0, 0, 54, 0, + 0, 6, 18, 48, 32, 0, + 2, 0, 0, 0, 0, 0, + 0, 0, 42, 0, 16, 0, + 0, 0, 0, 0, 18, 0, + 0, 1, 167, 0, 0, 9, + 98, 0, 16, 0, 1, 0, + 0, 0, 26, 0, 16, 0, + 0, 0, 0, 0, 1, 64, + 0, 0, 0, 0, 0, 0, + 6, 241, 17, 0, 0, 0, + 0, 0, 54, 0, 0, 6, + 50, 48, 32, 0, 0, 0, + 0, 0, 1, 0, 0, 0, + 150, 5, 16, 0, 1, 0, + 0, 0, 167, 0, 0, 9, + 98, 0, 16, 0, 1, 0, + 0, 0, 26, 0, 16, 0, + 0, 0, 0, 0, 1, 64, + 0, 0, 0, 0, 0, 0, + 6, 241, 17, 0, 1, 0, + 0, 0, 54, 0, 0, 6, + 50, 48, 32, 0, 1, 0, + 0, 0, 1, 0, 0, 0, + 150, 5, 16, 0, 1, 0, + 0, 0, 167, 0, 0, 9, + 98, 0, 16, 0, 0, 0, + 0, 0, 26, 0, 16, 0, + 0, 0, 0, 0, 1, 64, + 0, 0, 0, 0, 0, 0, + 6, 241, 17, 0, 2, 0, + 0, 0, 54, 0, 0, 6, + 50, 48, 32, 0, 2, 0, + 0, 0, 1, 0, 0, 0, + 150, 5, 16, 0, 0, 0, + 0, 0, 21, 0, 0, 1, + 86, 0, 0, 5, 34, 0, + 16, 0, 0, 0, 0, 0, + 10, 0, 16, 0, 1, 0, + 0, 0, 56, 0, 0, 7, + 34, 0, 16, 0, 0, 0, + 0, 0, 58, 0, 16, 0, + 0, 0, 0, 0, 26, 0, + 16, 0, 0, 0, 0, 0, + 77, 0, 0, 7, 18, 0, + 16, 0, 1, 0, 0, 0, + 18, 0, 16, 0, 2, 0, + 0, 0, 26, 0, 16, 0, + 0, 0, 0, 0, 54, 0, + 0, 6, 34, 0, 16, 0, + 0, 0, 0, 0, 10, 48, + 32, 0, 0, 0, 0, 0, + 1, 0, 0, 0, 54, 0, + 0, 6, 66, 0, 16, 0, + 0, 0, 0, 0, 26, 48, + 32, 0, 0, 0, 0, 0, + 1, 0, 0, 0, 56, 0, + 0, 7, 66, 0, 16, 0, + 0, 0, 0, 0, 42, 0, + 16, 0, 0, 0, 0, 0, + 10, 0, 16, 0, 1, 0, + 0, 0, 50, 0, 0, 10, + 34, 0, 16, 0, 0, 0, + 0, 0, 10, 0, 16, 0, + 2, 0, 0, 0, 26, 0, + 16, 0, 0, 0, 0, 0, + 42, 0, 16, 128, 65, 0, + 0, 0, 0, 0, 0, 0, + 54, 0, 0, 6, 66, 0, + 16, 0, 0, 0, 0, 0, + 10, 48, 32, 0, 1, 0, + 0, 0, 1, 0, 0, 0, + 54, 0, 0, 6, 130, 0, + 16, 0, 0, 0, 0, 0, + 26, 48, 32, 0, 1, 0, + 0, 0, 1, 0, 0, 0, + 56, 0, 0, 7, 130, 0, + 16, 0, 0, 0, 0, 0, + 58, 0, 16, 0, 0, 0, + 0, 0, 10, 0, 16, 0, + 1, 0, 0, 0, 50, 0, + 0, 10, 66, 0, 16, 0, + 0, 0, 0, 0, 10, 0, + 16, 0, 2, 0, 0, 0, + 42, 0, 16, 0, 0, 0, + 0, 0, 58, 0, 16, 128, + 65, 0, 0, 0, 0, 0, + 0, 0, 54, 0, 0, 6, + 130, 0, 16, 0, 0, 0, + 0, 0, 10, 48, 32, 0, + 2, 0, 0, 0, 1, 0, + 0, 0, 54, 0, 0, 6, + 34, 0, 16, 0, 1, 0, + 0, 0, 26, 48, 32, 0, + 2, 0, 0, 0, 1, 0, + 0, 0, 56, 0, 0, 7, + 18, 0, 16, 0, 1, 0, + 0, 0, 26, 0, 16, 0, + 1, 0, 0, 0, 10, 0, + 16, 0, 1, 0, 0, 0, + 50, 0, 0, 10, 130, 0, + 16, 0, 0, 0, 0, 0, + 10, 0, 16, 0, 2, 0, + 0, 0, 58, 0, 16, 0, + 0, 0, 0, 0, 10, 0, + 16, 128, 65, 0, 0, 0, + 1, 0, 0, 0, 54, 0, + 0, 6, 18, 0, 16, 0, + 1, 0, 0, 0, 10, 48, + 32, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 8, 34, 0, 16, 0, + 1, 0, 0, 0, 26, 0, + 16, 128, 65, 0, 0, 0, + 0, 0, 0, 0, 10, 0, + 16, 0, 1, 0, 0, 0, + 54, 0, 0, 6, 18, 48, + 32, 0, 0, 0, 0, 0, + 1, 0, 0, 0, 26, 0, + 16, 0, 1, 0, 0, 0, + 0, 0, 0, 7, 34, 0, + 16, 0, 0, 0, 0, 0, + 26, 0, 16, 0, 0, 0, + 0, 0, 10, 0, 16, 0, + 1, 0, 0, 0, 54, 0, + 0, 6, 18, 48, 32, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 26, 0, 16, 0, + 0, 0, 0, 0, 54, 0, + 0, 6, 34, 0, 16, 0, + 0, 0, 0, 0, 10, 48, + 32, 0, 1, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 8, 18, 0, 16, 0, + 1, 0, 0, 0, 42, 0, + 16, 128, 65, 0, 0, 0, + 0, 0, 0, 0, 26, 0, + 16, 0, 0, 0, 0, 0, + 54, 0, 0, 6, 18, 48, + 32, 0, 1, 0, 0, 0, + 1, 0, 0, 0, 10, 0, + 16, 0, 1, 0, 0, 0, + 0, 0, 0, 7, 34, 0, + 16, 0, 0, 0, 0, 0, + 42, 0, 16, 0, 0, 0, + 0, 0, 26, 0, 16, 0, + 0, 0, 0, 0, 54, 0, + 0, 6, 18, 48, 32, 0, + 1, 0, 0, 0, 0, 0, + 0, 0, 26, 0, 16, 0, + 0, 0, 0, 0, 54, 0, + 0, 6, 34, 0, 16, 0, + 0, 0, 0, 0, 10, 48, + 32, 0, 2, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 8, 66, 0, 16, 0, + 0, 0, 0, 0, 58, 0, + 16, 128, 65, 0, 0, 0, + 0, 0, 0, 0, 26, 0, + 16, 0, 0, 0, 0, 0, + 54, 0, 0, 6, 18, 48, + 32, 0, 2, 0, 0, 0, + 1, 0, 0, 0, 42, 0, + 16, 0, 0, 0, 0, 0, + 0, 0, 0, 7, 34, 0, + 16, 0, 0, 0, 0, 0, + 58, 0, 16, 0, 0, 0, + 0, 0, 26, 0, 16, 0, + 0, 0, 0, 0, 54, 0, + 0, 6, 18, 48, 32, 0, + 2, 0, 0, 0, 0, 0, + 0, 0, 26, 0, 16, 0, + 0, 0, 0, 0, 21, 0, + 0, 1, 21, 0, 0, 1, + 31, 0, 4, 3, 10, 0, + 16, 0, 0, 0, 0, 0, + 54, 0, 0, 6, 18, 0, + 16, 0, 0, 0, 0, 0, + 10, 48, 32, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 54, 0, 0, 6, 34, 0, + 16, 0, 0, 0, 0, 0, + 10, 48, 32, 0, 0, 0, + 0, 0, 1, 0, 0, 0, + 54, 0, 0, 6, 66, 0, + 16, 0, 0, 0, 0, 0, + 10, 48, 32, 0, 1, 0, + 0, 0, 0, 0, 0, 0, + 54, 0, 0, 6, 130, 0, + 16, 0, 0, 0, 0, 0, + 10, 48, 32, 0, 1, 0, + 0, 0, 1, 0, 0, 0, + 54, 0, 0, 6, 18, 0, + 16, 0, 1, 0, 0, 0, + 10, 48, 32, 0, 2, 0, + 0, 0, 0, 0, 0, 0, + 54, 0, 0, 6, 34, 0, + 16, 0, 1, 0, 0, 0, + 10, 48, 32, 0, 2, 0, + 0, 0, 1, 0, 0, 0, + 30, 0, 0, 5, 66, 0, + 16, 0, 1, 0, 0, 0, + 26, 0, 2, 0, 10, 0, + 2, 0, 1, 0, 0, 7, + 66, 0, 16, 0, 1, 0, + 0, 0, 42, 0, 16, 0, + 1, 0, 0, 0, 1, 64, + 0, 0, 1, 0, 0, 0, + 55, 0, 0, 9, 66, 0, + 16, 0, 1, 0, 0, 0, + 42, 0, 16, 0, 1, 0, + 0, 0, 1, 64, 0, 0, + 0, 0, 128, 191, 1, 64, + 0, 0, 0, 0, 128, 63, + 56, 0, 0, 8, 130, 0, + 16, 0, 1, 0, 0, 0, + 42, 0, 16, 0, 1, 0, + 0, 0, 42, 128, 32, 0, + 0, 0, 0, 0, 4, 0, + 0, 0, 56, 0, 0, 7, + 34, 0, 16, 0, 2, 0, + 0, 0, 58, 0, 16, 0, + 1, 0, 0, 0, 10, 0, + 16, 0, 1, 0, 0, 0, + 56, 0, 0, 7, 82, 0, + 16, 0, 2, 0, 0, 0, + 166, 8, 16, 0, 0, 0, + 0, 0, 246, 14, 16, 0, + 1, 0, 0, 0, 54, 0, + 0, 5, 130, 0, 16, 0, + 2, 0, 0, 0, 1, 64, + 0, 0, 0, 0, 0, 0, + 164, 0, 0, 6, 242, 224, + 17, 0, 0, 0, 0, 0, + 22, 0, 2, 0, 70, 14, + 16, 0, 2, 0, 0, 0, + 30, 0, 0, 7, 226, 0, + 16, 0, 2, 0, 0, 0, + 6, 0, 2, 0, 166, 138, + 32, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 56, 0, + 0, 7, 34, 0, 16, 0, + 3, 0, 0, 0, 58, 0, + 16, 0, 1, 0, 0, 0, + 26, 0, 16, 0, 1, 0, + 0, 0, 56, 0, 0, 7, + 82, 0, 16, 0, 3, 0, + 0, 0, 246, 13, 16, 0, + 0, 0, 0, 0, 246, 14, + 16, 0, 1, 0, 0, 0, + 54, 0, 0, 4, 18, 0, + 16, 0, 2, 0, 0, 0, + 26, 0, 2, 0, 54, 0, + 0, 5, 130, 0, 16, 0, + 3, 0, 0, 0, 1, 64, + 0, 0, 0, 0, 0, 0, + 164, 0, 0, 7, 242, 224, + 17, 0, 0, 0, 0, 0, + 70, 14, 16, 0, 2, 0, + 0, 0, 70, 14, 16, 0, + 3, 0, 0, 0, 21, 0, + 0, 1, 62, 0, 0, 1 +}; diff --git a/src/generated/ComputeH0_cs_5_0.h b/src/generated/ComputeH0_cs_5_0.h new file mode 100644 index 0000000..fd599b4 --- /dev/null +++ b/src/generated/ComputeH0_cs_5_0.h @@ -0,0 +1,316 @@ +#if 0 +// +// Generated by Microsoft (R) D3D Shader Disassembler +// +// +// Input signature: +// +// Name Index Mask Register SysValue Format Used +// -------------------- ----- ------ -------- -------- ------- ------ +// no Input +// +// Output signature: +// +// Name Index Mask Register SysValue Format Used +// -------------------- ----- ------ -------- -------- ------- ------ +// no Output +cs_5_0 +dcl_globalFlags refactoringAllowed +dcl_constantbuffer cb0[4], immediateIndexed +dcl_resource_structured t0, 8 +dcl_uav_structured u0, 8 +dcl_input vThreadID.xy +dcl_temps 2 +dcl_thread_group 512, 1, 1 +ult r0.x, vThreadID.x, cb0[0].x +if_nz r0.x + iadd r0.xy, vThreadID.xyxx, -cb0[0].zzzz + imul null, r0.zw, r0.xxxy, r0.xxxy + iadd r0.z, r0.w, r0.z + itof r0.z, r0.z + sqrt r0.z, r0.z + or r0.w, r0.y, r0.x + ine r0.w, r0.w, l(0) + ge r1.x, r0.z, cb0[1].z + and r0.w, r0.w, r1.x + lt r0.z, r0.z, cb0[1].w + and r0.z, r0.z, r0.w + itof r0.xy, r0.xyxx + mul r0.xy, r0.xyxx, cb0[2].zzzz + mul r1.xy, r0.xyxx, r0.xyxx + add r0.w, r1.y, r1.x + mul r0.xy, r0.xyxx, cb0[2].xyxx + add r0.x, r0.y, r0.x + mul r0.y, r0.x, cb0[2].w + mul r1.x, r0.w, r0.w + mul r1.x, r0.w, r1.x + rsq r1.x, r1.x + mul r0.y, r0.y, r1.x + lt r0.x, r0.x, l(0.000000) + mul r1.x, r0.y, cb0[3].x + movc r0.x, r0.x, r1.x, r0.y + div r0.y, cb0[3].y, r0.w + mad r0.y, cb0[3].z, r0.w, r0.y + mul r0.y, r0.y, l(1.442695) + exp r0.y, r0.y + mul r0.x, r0.y, r0.x + and r0.x, r0.x, r0.z + imad r0.y, vThreadID.y, cb0[0].y, vThreadID.x + iadd r0.z, r0.y, -vThreadID.y + ld_structured_indexable(structured_buffer, stride=8)(mixed,mixed,mixed,mixed) r0.zw, r0.z, l(0), t0.xxxy + mul r0.xz, r0.zzwz, r0.xxxx + store_structured u0.xy, r0.y, l(0), r0.xzxx + ieq r0.xz, vThreadID.yyxy, l(0, 0, 0, 0) + or r0.x, r0.z, r0.x + if_nz r0.x + iadd r0.x, -r0.y, cb0[1].x + store_structured u0.xy, r0.x, l(0), l(0,0,0,0) + endif +endif +ret +// Approximately 0 instruction slots used +#endif + +const BYTE g_ComputeH0[] = +{ + 68, 88, 66, 67, 173, 99, + 70, 182, 150, 238, 12, 102, + 71, 253, 22, 74, 166, 66, + 118, 248, 1, 0, 0, 0, + 160, 5, 0, 0, 3, 0, + 0, 0, 44, 0, 0, 0, + 60, 0, 0, 0, 76, 0, + 0, 0, 73, 83, 71, 78, + 8, 0, 0, 0, 0, 0, + 0, 0, 8, 0, 0, 0, + 79, 83, 71, 78, 8, 0, + 0, 0, 0, 0, 0, 0, + 8, 0, 0, 0, 83, 72, + 69, 88, 76, 5, 0, 0, + 80, 0, 5, 0, 83, 1, + 0, 0, 106, 8, 0, 1, + 89, 0, 0, 4, 70, 142, + 32, 0, 0, 0, 0, 0, + 4, 0, 0, 0, 162, 0, + 0, 4, 0, 112, 16, 0, + 0, 0, 0, 0, 8, 0, + 0, 0, 158, 0, 0, 4, + 0, 224, 17, 0, 0, 0, + 0, 0, 8, 0, 0, 0, + 95, 0, 0, 2, 50, 0, + 2, 0, 104, 0, 0, 2, + 2, 0, 0, 0, 155, 0, + 0, 4, 0, 2, 0, 0, + 1, 0, 0, 0, 1, 0, + 0, 0, 79, 0, 0, 7, + 18, 0, 16, 0, 0, 0, + 0, 0, 10, 0, 2, 0, + 10, 128, 32, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 31, 0, 4, 3, 10, 0, + 16, 0, 0, 0, 0, 0, + 30, 0, 0, 8, 50, 0, + 16, 0, 0, 0, 0, 0, + 70, 0, 2, 0, 166, 138, + 32, 128, 65, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 38, 0, 0, 8, + 0, 208, 0, 0, 194, 0, + 16, 0, 0, 0, 0, 0, + 6, 4, 16, 0, 0, 0, + 0, 0, 6, 4, 16, 0, + 0, 0, 0, 0, 30, 0, + 0, 7, 66, 0, 16, 0, + 0, 0, 0, 0, 58, 0, + 16, 0, 0, 0, 0, 0, + 42, 0, 16, 0, 0, 0, + 0, 0, 43, 0, 0, 5, + 66, 0, 16, 0, 0, 0, + 0, 0, 42, 0, 16, 0, + 0, 0, 0, 0, 75, 0, + 0, 5, 66, 0, 16, 0, + 0, 0, 0, 0, 42, 0, + 16, 0, 0, 0, 0, 0, + 60, 0, 0, 7, 130, 0, + 16, 0, 0, 0, 0, 0, + 26, 0, 16, 0, 0, 0, + 0, 0, 10, 0, 16, 0, + 0, 0, 0, 0, 39, 0, + 0, 7, 130, 0, 16, 0, + 0, 0, 0, 0, 58, 0, + 16, 0, 0, 0, 0, 0, + 1, 64, 0, 0, 0, 0, + 0, 0, 29, 0, 0, 8, + 18, 0, 16, 0, 1, 0, + 0, 0, 42, 0, 16, 0, + 0, 0, 0, 0, 42, 128, + 32, 0, 0, 0, 0, 0, + 1, 0, 0, 0, 1, 0, + 0, 7, 130, 0, 16, 0, + 0, 0, 0, 0, 58, 0, + 16, 0, 0, 0, 0, 0, + 10, 0, 16, 0, 1, 0, + 0, 0, 49, 0, 0, 8, + 66, 0, 16, 0, 0, 0, + 0, 0, 42, 0, 16, 0, + 0, 0, 0, 0, 58, 128, + 32, 0, 0, 0, 0, 0, + 1, 0, 0, 0, 1, 0, + 0, 7, 66, 0, 16, 0, + 0, 0, 0, 0, 42, 0, + 16, 0, 0, 0, 0, 0, + 58, 0, 16, 0, 0, 0, + 0, 0, 43, 0, 0, 5, + 50, 0, 16, 0, 0, 0, + 0, 0, 70, 0, 16, 0, + 0, 0, 0, 0, 56, 0, + 0, 8, 50, 0, 16, 0, + 0, 0, 0, 0, 70, 0, + 16, 0, 0, 0, 0, 0, + 166, 138, 32, 0, 0, 0, + 0, 0, 2, 0, 0, 0, + 56, 0, 0, 7, 50, 0, + 16, 0, 1, 0, 0, 0, + 70, 0, 16, 0, 0, 0, + 0, 0, 70, 0, 16, 0, + 0, 0, 0, 0, 0, 0, + 0, 7, 130, 0, 16, 0, + 0, 0, 0, 0, 26, 0, + 16, 0, 1, 0, 0, 0, + 10, 0, 16, 0, 1, 0, + 0, 0, 56, 0, 0, 8, + 50, 0, 16, 0, 0, 0, + 0, 0, 70, 0, 16, 0, + 0, 0, 0, 0, 70, 128, + 32, 0, 0, 0, 0, 0, + 2, 0, 0, 0, 0, 0, + 0, 7, 18, 0, 16, 0, + 0, 0, 0, 0, 26, 0, + 16, 0, 0, 0, 0, 0, + 10, 0, 16, 0, 0, 0, + 0, 0, 56, 0, 0, 8, + 34, 0, 16, 0, 0, 0, + 0, 0, 10, 0, 16, 0, + 0, 0, 0, 0, 58, 128, + 32, 0, 0, 0, 0, 0, + 2, 0, 0, 0, 56, 0, + 0, 7, 18, 0, 16, 0, + 1, 0, 0, 0, 58, 0, + 16, 0, 0, 0, 0, 0, + 58, 0, 16, 0, 0, 0, + 0, 0, 56, 0, 0, 7, + 18, 0, 16, 0, 1, 0, + 0, 0, 58, 0, 16, 0, + 0, 0, 0, 0, 10, 0, + 16, 0, 1, 0, 0, 0, + 68, 0, 0, 5, 18, 0, + 16, 0, 1, 0, 0, 0, + 10, 0, 16, 0, 1, 0, + 0, 0, 56, 0, 0, 7, + 34, 0, 16, 0, 0, 0, + 0, 0, 26, 0, 16, 0, + 0, 0, 0, 0, 10, 0, + 16, 0, 1, 0, 0, 0, + 49, 0, 0, 7, 18, 0, + 16, 0, 0, 0, 0, 0, + 10, 0, 16, 0, 0, 0, + 0, 0, 1, 64, 0, 0, + 0, 0, 0, 0, 56, 0, + 0, 8, 18, 0, 16, 0, + 1, 0, 0, 0, 26, 0, + 16, 0, 0, 0, 0, 0, + 10, 128, 32, 0, 0, 0, + 0, 0, 3, 0, 0, 0, + 55, 0, 0, 9, 18, 0, + 16, 0, 0, 0, 0, 0, + 10, 0, 16, 0, 0, 0, + 0, 0, 10, 0, 16, 0, + 1, 0, 0, 0, 26, 0, + 16, 0, 0, 0, 0, 0, + 14, 0, 0, 8, 34, 0, + 16, 0, 0, 0, 0, 0, + 26, 128, 32, 0, 0, 0, + 0, 0, 3, 0, 0, 0, + 58, 0, 16, 0, 0, 0, + 0, 0, 50, 0, 0, 10, + 34, 0, 16, 0, 0, 0, + 0, 0, 42, 128, 32, 0, + 0, 0, 0, 0, 3, 0, + 0, 0, 58, 0, 16, 0, + 0, 0, 0, 0, 26, 0, + 16, 0, 0, 0, 0, 0, + 56, 0, 0, 7, 34, 0, + 16, 0, 0, 0, 0, 0, + 26, 0, 16, 0, 0, 0, + 0, 0, 1, 64, 0, 0, + 59, 170, 184, 63, 25, 0, + 0, 5, 34, 0, 16, 0, + 0, 0, 0, 0, 26, 0, + 16, 0, 0, 0, 0, 0, + 56, 0, 0, 7, 18, 0, + 16, 0, 0, 0, 0, 0, + 26, 0, 16, 0, 0, 0, + 0, 0, 10, 0, 16, 0, + 0, 0, 0, 0, 1, 0, + 0, 7, 18, 0, 16, 0, + 0, 0, 0, 0, 10, 0, + 16, 0, 0, 0, 0, 0, + 42, 0, 16, 0, 0, 0, + 0, 0, 35, 0, 0, 8, + 34, 0, 16, 0, 0, 0, + 0, 0, 26, 0, 2, 0, + 26, 128, 32, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 10, 0, 2, 0, 30, 0, + 0, 7, 66, 0, 16, 0, + 0, 0, 0, 0, 26, 0, + 16, 0, 0, 0, 0, 0, + 26, 0, 2, 128, 65, 0, + 0, 0, 167, 0, 0, 139, + 2, 67, 0, 128, 131, 153, + 25, 0, 194, 0, 16, 0, + 0, 0, 0, 0, 42, 0, + 16, 0, 0, 0, 0, 0, + 1, 64, 0, 0, 0, 0, + 0, 0, 6, 116, 16, 0, + 0, 0, 0, 0, 56, 0, + 0, 7, 82, 0, 16, 0, + 0, 0, 0, 0, 166, 11, + 16, 0, 0, 0, 0, 0, + 6, 0, 16, 0, 0, 0, + 0, 0, 168, 0, 0, 9, + 50, 224, 17, 0, 0, 0, + 0, 0, 26, 0, 16, 0, + 0, 0, 0, 0, 1, 64, + 0, 0, 0, 0, 0, 0, + 134, 0, 16, 0, 0, 0, + 0, 0, 32, 0, 0, 9, + 82, 0, 16, 0, 0, 0, + 0, 0, 86, 4, 2, 0, + 2, 64, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 60, 0, 0, 7, + 18, 0, 16, 0, 0, 0, + 0, 0, 42, 0, 16, 0, + 0, 0, 0, 0, 10, 0, + 16, 0, 0, 0, 0, 0, + 31, 0, 4, 3, 10, 0, + 16, 0, 0, 0, 0, 0, + 30, 0, 0, 9, 18, 0, + 16, 0, 0, 0, 0, 0, + 26, 0, 16, 128, 65, 0, + 0, 0, 0, 0, 0, 0, + 10, 128, 32, 0, 0, 0, + 0, 0, 1, 0, 0, 0, + 168, 0, 0, 12, 50, 224, + 17, 0, 0, 0, 0, 0, + 10, 0, 16, 0, 0, 0, + 0, 0, 1, 64, 0, 0, + 0, 0, 0, 0, 2, 64, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 21, 0, 0, 1, 21, 0, + 0, 1, 62, 0, 0, 1 +}; diff --git a/src/generated/ComputeRows_cs_5_0.h b/src/generated/ComputeRows_cs_5_0.h new file mode 100644 index 0000000..60def79 --- /dev/null +++ b/src/generated/ComputeRows_cs_5_0.h @@ -0,0 +1,3605 @@ +#if 0 +// +// Generated by Microsoft (R) D3D Shader Disassembler +// +// +// Note: shader requires additional functionality: +// Double-precision floating point +// +// +// Input signature: +// +// Name Index Mask Register SysValue Format Used +// -------------------- ----- ------ -------- -------- ------- ------ +// no Input +// +// Output signature: +// +// Name Index Mask Register SysValue Format Used +// -------------------- ----- ------ -------- -------- ------- ------ +// no Output +cs_5_0 +dcl_globalFlags refactoringAllowed | enableDoublePrecisionFloatOps +dcl_constantbuffer cb0[5], immediateIndexed +dcl_resource_structured t0, 8 +dcl_resource_structured t1, 4 +dcl_uav_structured u0, 8 +dcl_uav_structured u1, 16 +dcl_input vThreadID.xy +dcl_temps 8 +dcl_indexableTemp x0[2], 4 +dcl_indexableTemp x1[2], 4 +dcl_indexableTemp x2[2], 4 +dcl_indexableTemp x3[2], 4 +dcl_indexableTemp x4[2], 4 +dcl_indexableTemp x5[2], 4 +dcl_tgsm_structured g0, 8, 256 +dcl_tgsm_structured g1, 8, 256 +dcl_tgsm_structured g2, 8, 256 +dcl_thread_group 256, 1, 1 +ishl r0.x, vThreadID.x, l(1) +ult r0.y, r0.x, cb0[0].x +if_nz r0.y + bfrev r0.x, r0.x + ushr r1.y, r0.x, cb0[1].y + iadd r1.x, r1.y, -cb0[0].z + iadd r0.x, vThreadID.y, -cb0[0].z + imad r0.zw, vThreadID.yyyy, cb0[0].yyyw, r1.yyyy + iadd r1.z, r0.z, cb0[0].z + imad r1.w, vThreadID.y, cb0[0].w, cb0[0].z + ld_structured_indexable(structured_buffer, stride=8)(mixed,mixed,mixed,mixed) r2.xy, r0.z, l(0), t0.xyxx + iadd r0.z, -r0.z, cb0[1].x + ld_structured_indexable(structured_buffer, stride=8)(mixed,mixed,mixed,mixed) r2.zw, r0.z, l(0), t0.xxxy + ld_structured_indexable(structured_buffer, stride=4)(mixed,mixed,mixed,mixed) r0.z, r0.w, l(0), t1.xxxx + ftod r0.zw, r0.z + dmul r3.xy, r0.zwzw, cb0[4].xyxy + ld_structured_indexable(structured_buffer, stride=8)(mixed,mixed,mixed,mixed) r0.zw, r1.z, l(0), t0.xxxy + iadd r1.z, -r1.z, cb0[1].x + ld_structured_indexable(structured_buffer, stride=8)(mixed,mixed,mixed,mixed) r4.xy, r1.z, l(0), t0.xyxx + iadd r1.z, -r1.y, r1.w + ld_structured_indexable(structured_buffer, stride=4)(mixed,mixed,mixed,mixed) r1.z, r1.z, l(0), t1.xxxx + ftod r1.zw, r1.z + dmul r3.zw, r1.zwzw, cb0[4].xyxy + dmul r5.xyzw, r3.xyzw, d(0.159155l, 0.159155l) + dtof r1.zw, r5.xyzw + round_ni r1.zw, r1.zzzw + ftod r5.xyzw, r1.zwzz + dmul r5.xyzw, r5.xyzw, d(6.283185l, 6.283185l) + dadd r3.xyzw, r3.xyzw, -r5.xyzw + dtof r1.zw, r3.xyzw + sincos r3.xy, r5.xy, r1.zwzz + add r1.zw, r2.zzzw, r2.xxxy + mul r1.w, r3.x, r1.w + mad r6.y, r1.z, r5.x, -r1.w + mov x0[0].x, r6.y + add r1.zw, r0.zzzw, r4.xxxy + mul r1.w, r3.y, r1.w + mad r7.y, r1.z, r5.y, -r1.w + mov x0[1].x, r7.y + add r1.zw, -r2.zzzw, r2.xxxy + mul r1.w, r5.x, r1.w + mad r1.z, r1.z, r3.x, r1.w + mov x0[0].y, r1.z + add r0.zw, r0.zzzw, -r4.xxxy + mul r0.w, r5.y, r0.w + mad r0.z, r0.z, r3.y, r0.w + mov x0[1].y, r0.z + or r2.xy, r0.xxxx, r1.xyxx + imul null, r0.w, r0.x, r0.x + imad r2.zw, r1.xxxy, r1.xxxy, r0.wwww + itof r2.zw, r2.zzzw + rsq r2.zw, r2.zzzw + movc r2.xy, r2.xyxx, r2.zwzz, l(0,0,0,0) + mov r6.x, -r1.z + mul r1.zw, r2.xxxx, r6.xxxy + mov r7.x, -r0.z + mul r0.zw, r2.yyyy, r7.xxxy + itof r1.xy, r1.xyxx + mul r2.xy, r1.zwzz, r1.xxxx + mov x1[0].xy, r2.xyxx + mul r1.xy, r0.zwzz, r1.yyyy + mov x1[1].xy, r1.xyxx + itof r0.x, r0.x + mul r1.xy, r1.zwzz, r0.xxxx + mov x2[0].xy, r1.xyxx + mul r0.xz, r0.zzwz, r0.xxxx + mov x2[1].xy, r0.xzxx +endif +mov r0.xz, x0[0].xxyx +mov r1.xy, x0[1].xyxx +mov x3[0].xy, r0.xzxx +mov x3[1].xy, r1.xyxx +mov r1.zw, x1[0].xxxy +mov r2.xy, x1[1].xyxx +mov x4[0].xy, r1.zwzz +mov x4[1].xy, r2.xyxx +mov r2.zw, x2[0].xxxy +mov r3.xy, x2[1].xyxx +mov x5[0].xy, r2.zwzz +mov x5[1].xy, r3.xyxx +ult r0.w, vThreadID.x, cb0[0].z +if_nz r0.w + add r3.zw, r0.xxxz, -r1.xxxy + mov x3[1].xy, r3.zwzz + add r0.xz, r0.xxzx, r1.xxyx + mov x3[0].xy, r0.xzxx + add r1.xy, r1.zwzz, -r2.xyxx + mov x4[1].xy, r1.xyxx + add r1.zw, r1.zzzw, r2.xxxy + mov x4[0].xy, r1.zwzz + add r2.xy, r2.zwzz, -r3.xyxx + mov x5[1].xy, r2.xyxx + add r2.zw, r2.zzzw, r3.xxxy + mov x5[0].xy, r2.zwzz + and r4.xyzw, vThreadID.xxxx, l(1, 2, 3, 4) + if_nz r4.x + mov r3.zw, r0.xxxz + mov r1.xy, r1.zwzz + mov r2.xy, r2.zwzz + endif + store_structured g2.xy, vThreadID.x, l(0), r2.xyxx + store_structured g1.xy, vThreadID.x, l(0), r1.xyxx + store_structured g0.xy, vThreadID.x, l(0), r3.zwzz + sync_g + xor r0.xz, vThreadID.xxxx, l(1, 0, 3, 0) + if_nz r4.x + ld_structured r1.xy, r0.x, l(0), g0.xyxx + mov x3[0].xy, r1.xyxx + ld_structured r1.xy, r0.x, l(0), g1.xyxx + mov x4[0].xy, r1.xyxx + ld_structured r1.xy, r0.x, l(0), g2.xyxx + mov x5[0].xy, r1.xyxx + else + ld_structured r1.xy, r0.x, l(0), g0.xyxx + mov x3[1].xy, r1.xyxx + ld_structured r1.xy, r0.x, l(0), g1.xyxx + mov x4[1].xy, r1.xyxx + ld_structured r1.xy, r0.x, l(0), g2.xyxx + mov x5[1].xy, r1.xyxx + endif + utof r1.xy, r4.xzxx + mul r1.xy, r1.xyxx, l(1.570796, 0.785398, 0.000000, 0.000000) + sincos r1.x, r2.x, r1.x + mov r1.z, x3[1].x + mov r1.w, x3[1].y + mul r2.y, r1.w, r1.x + mad r3.x, r2.x, r1.z, -r2.y + mul r1.w, r1.w, r2.x + mad r3.y, r1.x, r1.z, r1.w + mov r1.z, x4[1].x + mov r1.w, x4[1].y + mul r2.y, r1.w, r1.x + mad r5.x, r2.x, r1.z, -r2.y + mul r1.w, r1.w, r2.x + mad r5.y, r1.x, r1.z, r1.w + mov r1.z, x5[1].x + mov r1.w, x5[1].y + mul r2.y, r1.w, r1.x + mad r6.x, r2.x, r1.z, -r2.y + mul r1.w, r1.w, r2.x + mad r6.y, r1.x, r1.z, r1.w + mov r1.xz, x3[0].xxyx + add r2.xy, -r3.xyxx, r1.xzxx + mov x3[1].xy, r2.xyxx + add r1.xz, r3.xxyx, r1.xxzx + mov x3[0].xy, r1.xzxx + mov r2.zw, x4[0].xxxy + add r3.xy, -r5.xyxx, r2.zwzz + mov x4[1].xy, r3.xyxx + add r2.zw, r5.xxxy, r2.zzzw + mov x4[0].xy, r2.zwzz + mov r3.zw, x5[0].xxxy + add r4.xz, -r6.xxyx, r3.zzwz + mov x5[1].xy, r4.xzxx + add r3.zw, r6.xxxy, r3.zzzw + mov x5[0].xy, r3.zwzz + if_nz r4.y + mov r2.xy, r1.xzxx + mov r3.xy, r2.zwzz + mov r4.xz, r3.zzwz + endif + store_structured g2.xy, r0.x, l(0), r4.xzxx + store_structured g1.xy, r0.x, l(0), r3.xyxx + store_structured g0.xy, r0.x, l(0), r2.xyxx + sync_g + if_nz r4.y + ld_structured r1.xz, r0.z, l(0), g0.xxyx + mov x3[0].xy, r1.xzxx + ld_structured r1.xz, r0.z, l(0), g1.xxyx + mov x4[0].xy, r1.xzxx + ld_structured r1.xz, r0.z, l(0), g2.xxyx + mov x5[0].xy, r1.xzxx + else + ld_structured r1.xz, r0.z, l(0), g0.xxyx + mov x3[1].xy, r1.xzxx + ld_structured r1.xz, r0.z, l(0), g1.xxyx + mov x4[1].xy, r1.xzxx + ld_structured r1.xz, r0.z, l(0), g2.xxyx + mov x5[1].xy, r1.xzxx + endif + sincos r0.x, r1.x, r1.y + mov r1.y, x3[1].x + mov r1.z, x3[1].y + mul r1.w, r0.x, r1.z + mad r2.x, r1.x, r1.y, -r1.w + mul r1.z, r1.z, r1.x + mad r2.y, r0.x, r1.y, r1.z + mov r1.y, x4[1].x + mov r1.z, x4[1].y + mul r1.w, r0.x, r1.z + mad r3.x, r1.x, r1.y, -r1.w + mul r1.z, r1.z, r1.x + mad r3.y, r0.x, r1.y, r1.z + mov r1.y, x5[1].x + mov r1.z, x5[1].y + mul r1.w, r0.x, r1.z + mad r4.x, r1.x, r1.y, -r1.w + mul r1.x, r1.z, r1.x + mad r4.y, r0.x, r1.y, r1.x + mov r1.xy, x3[0].xyxx + add r1.zw, -r2.xxxy, r1.xxxy + mov x3[1].xy, r1.zwzz + add r1.xy, r2.xyxx, r1.xyxx + mov x3[0].xy, r1.xyxx + mov r2.xy, x4[0].xyxx + add r2.zw, -r3.xxxy, r2.xxxy + mov x4[1].xy, r2.zwzz + add r2.xy, r3.xyxx, r2.xyxx + mov x4[0].xy, r2.xyxx + mov r3.xy, x5[0].xyxx + add r3.zw, -r4.xxxy, r3.xxxy + mov x5[1].xy, r3.zwzz + add r3.xy, r4.xyxx, r3.xyxx + mov x5[0].xy, r3.xyxx + ine r0.x, r4.w, l(0) + if_nz r4.w + mov r3.zw, r3.xxxy + mov r2.zw, r2.xxxy + mov r1.zw, r1.xxxy + endif + store_structured g2.xy, r0.z, l(0), r3.zwzz + store_structured g1.xy, r0.z, l(0), r2.zwzz + store_structured g0.xy, r0.z, l(0), r1.zwzz + sync_g + mov r0.z, l(0.392699) +else + mov r0.xz, l(0,0,1.570796,0) +endif +ult r1.x, l(8), cb0[0].x +if_nz r1.x + if_nz r0.w + xor r1.x, vThreadID.x, l(7) + and r1.yz, vThreadID.xxxx, l(0, 7, 8, 0) + if_nz r0.x + ld_structured r2.xy, r1.x, l(0), g0.xyxx + mov x3[0].xy, r2.xyxx + ld_structured r2.xy, r1.x, l(0), g1.xyxx + mov x4[0].xy, r2.xyxx + ld_structured r2.xy, r1.x, l(0), g2.xyxx + mov x5[0].xy, r2.xyxx + else + ld_structured r2.xy, r1.x, l(0), g0.xyxx + mov x3[1].xy, r2.xyxx + ld_structured r2.xy, r1.x, l(0), g1.xyxx + mov x4[1].xy, r2.xyxx + ld_structured r2.xy, r1.x, l(0), g2.xyxx + mov x5[1].xy, r2.xyxx + endif + utof r1.y, r1.y + mul r1.y, r0.z, r1.y + sincos r2.x, r3.x, r1.y + mov r1.y, x3[1].x + mov r1.w, x3[1].y + mul r2.y, r1.w, r2.x + mad r4.x, r3.x, r1.y, -r2.y + mul r1.w, r1.w, r3.x + mad r4.y, r2.x, r1.y, r1.w + mov r1.y, x4[1].x + mov r1.w, x4[1].y + mul r2.y, r1.w, r2.x + mad r5.x, r3.x, r1.y, -r2.y + mul r1.w, r1.w, r3.x + mad r5.y, r2.x, r1.y, r1.w + mov r1.y, x5[1].x + mov r1.w, x5[1].y + mul r2.y, r1.w, r2.x + mad r6.x, r3.x, r1.y, -r2.y + mul r1.w, r1.w, r3.x + mad r6.y, r2.x, r1.y, r1.w + mov r1.yw, x3[0].xxxy + add r2.xy, -r4.xyxx, r1.ywyy + mov x3[1].xy, r2.xyxx + add r1.yw, r4.xxxy, r1.yyyw + mov x3[0].xy, r1.ywyy + mov r2.zw, x4[0].xxxy + add r3.xy, -r5.xyxx, r2.zwzz + mov x4[1].xy, r3.xyxx + add r2.zw, r5.xxxy, r2.zzzw + mov x4[0].xy, r2.zwzz + mov r3.zw, x5[0].xxxy + add r4.xy, -r6.xyxx, r3.zwzz + mov x5[1].xy, r4.xyxx + add r3.zw, r6.xxxy, r3.zzzw + mov x5[0].xy, r3.zwzz + ine r0.x, r1.z, l(0) + if_nz r1.z + mov r2.xy, r1.ywyy + mov r3.xy, r2.zwzz + mov r4.xy, r3.zwzz + endif + store_structured g2.xy, r1.x, l(0), r4.xyxx + store_structured g1.xy, r1.x, l(0), r3.xyxx + store_structured g0.xy, r1.x, l(0), r2.xyxx + endif + sync_g_t + mul r0.z, r0.z, l(0.500000) + mov r1.x, l(16) +else + mov r1.x, l(8) +endif +ult r1.y, r1.x, cb0[0].x +if_nz r1.y + if_nz r0.w + xor r1.z, vThreadID.x, l(15) + and r2.xy, vThreadID.xxxx, l(15, 16, 0, 0) + if_nz r0.x + ld_structured r2.zw, r1.z, l(0), g0.xxxy + mov x3[0].xy, r2.zwzz + ld_structured r2.zw, r1.z, l(0), g1.xxxy + mov x4[0].xy, r2.zwzz + ld_structured r2.zw, r1.z, l(0), g2.xxxy + mov x5[0].xy, r2.zwzz + else + ld_structured r2.zw, r1.z, l(0), g0.xxxy + mov x3[1].xy, r2.zwzz + ld_structured r2.zw, r1.z, l(0), g1.xxxy + mov x4[1].xy, r2.zwzz + ld_structured r2.zw, r1.z, l(0), g2.xxxy + mov x5[1].xy, r2.zwzz + endif + utof r1.w, r2.x + mul r1.w, r0.z, r1.w + sincos r2.x, r3.x, r1.w + mov r1.w, x3[1].x + mov r2.z, x3[1].y + mul r2.w, r2.z, r2.x + mad r4.x, r3.x, r1.w, -r2.w + mul r2.z, r2.z, r3.x + mad r4.y, r2.x, r1.w, r2.z + mov r1.w, x4[1].x + mov r2.z, x4[1].y + mul r2.w, r2.z, r2.x + mad r5.x, r3.x, r1.w, -r2.w + mul r2.z, r2.z, r3.x + mad r5.y, r2.x, r1.w, r2.z + mov r1.w, x5[1].x + mov r2.z, x5[1].y + mul r2.w, r2.z, r2.x + mad r6.x, r3.x, r1.w, -r2.w + mul r2.z, r2.z, r3.x + mad r6.y, r2.x, r1.w, r2.z + mov r2.xz, x3[0].xxyx + add r3.xy, -r4.xyxx, r2.xzxx + mov x3[1].xy, r3.xyxx + add r2.xz, r4.xxyx, r2.xxzx + mov x3[0].xy, r2.xzxx + mov r3.zw, x4[0].xxxy + add r4.xy, -r5.xyxx, r3.zwzz + mov x4[1].xy, r4.xyxx + add r3.zw, r5.xxxy, r3.zzzw + mov x4[0].xy, r3.zwzz + mov r4.zw, x5[0].xxxy + add r5.xy, -r6.xyxx, r4.zwzz + mov x5[1].xy, r5.xyxx + add r4.zw, r6.xxxy, r4.zzzw + mov x5[0].xy, r4.zwzz + ine r0.x, r2.y, l(0) + if_nz r2.y + mov r3.xy, r2.xzxx + mov r4.xy, r3.zwzz + mov r5.xy, r4.zwzz + endif + store_structured g2.xy, r1.z, l(0), r5.xyxx + store_structured g1.xy, r1.z, l(0), r4.xyxx + store_structured g0.xy, r1.z, l(0), r3.xyxx + endif + sync_g_t + mul r0.z, r0.z, l(0.500000) + mov r1.x, l(32) +endif +ult r1.z, r1.x, cb0[0].x +and r1.y, r1.z, r1.y +if_nz r1.y + if_nz r0.w + xor r1.z, vThreadID.x, l(31) + and r2.xy, vThreadID.xxxx, l(31, 32, 0, 0) + if_nz r0.x + ld_structured r2.zw, r1.z, l(0), g0.xxxy + mov x3[0].xy, r2.zwzz + ld_structured r2.zw, r1.z, l(0), g1.xxxy + mov x4[0].xy, r2.zwzz + ld_structured r2.zw, r1.z, l(0), g2.xxxy + mov x5[0].xy, r2.zwzz + else + ld_structured r2.zw, r1.z, l(0), g0.xxxy + mov x3[1].xy, r2.zwzz + ld_structured r2.zw, r1.z, l(0), g1.xxxy + mov x4[1].xy, r2.zwzz + ld_structured r2.zw, r1.z, l(0), g2.xxxy + mov x5[1].xy, r2.zwzz + endif + utof r1.w, r2.x + mul r1.w, r0.z, r1.w + sincos r2.x, r3.x, r1.w + mov r1.w, x3[1].x + mov r2.z, x3[1].y + mul r2.w, r2.z, r2.x + mad r4.x, r3.x, r1.w, -r2.w + mul r2.z, r2.z, r3.x + mad r4.y, r2.x, r1.w, r2.z + mov r1.w, x4[1].x + mov r2.z, x4[1].y + mul r2.w, r2.z, r2.x + mad r5.x, r3.x, r1.w, -r2.w + mul r2.z, r2.z, r3.x + mad r5.y, r2.x, r1.w, r2.z + mov r1.w, x5[1].x + mov r2.z, x5[1].y + mul r2.w, r2.z, r2.x + mad r6.x, r3.x, r1.w, -r2.w + mul r2.z, r2.z, r3.x + mad r6.y, r2.x, r1.w, r2.z + mov r2.xz, x3[0].xxyx + add r3.xy, -r4.xyxx, r2.xzxx + mov x3[1].xy, r3.xyxx + add r2.xz, r4.xxyx, r2.xxzx + mov x3[0].xy, r2.xzxx + mov r3.zw, x4[0].xxxy + add r4.xy, -r5.xyxx, r3.zwzz + mov x4[1].xy, r4.xyxx + add r3.zw, r5.xxxy, r3.zzzw + mov x4[0].xy, r3.zwzz + mov r4.zw, x5[0].xxxy + add r5.xy, -r6.xyxx, r4.zwzz + mov x5[1].xy, r5.xyxx + add r4.zw, r6.xxxy, r4.zzzw + mov x5[0].xy, r4.zwzz + ine r0.x, r2.y, l(0) + if_nz r2.y + mov r3.xy, r2.xzxx + mov r4.xy, r3.zwzz + mov r5.xy, r4.zwzz + endif + store_structured g2.xy, r1.z, l(0), r5.xyxx + store_structured g1.xy, r1.z, l(0), r4.xyxx + store_structured g0.xy, r1.z, l(0), r3.xyxx + endif + sync_g_t + mul r0.z, r0.z, l(0.500000) + mov r1.x, l(64) +endif +ult r1.z, r1.x, cb0[0].x +and r1.y, r1.z, r1.y +if_nz r1.y + if_nz r0.w + xor r1.z, vThreadID.x, l(63) + and r2.xy, vThreadID.xxxx, l(63, 64, 0, 0) + if_nz r0.x + ld_structured r2.zw, r1.z, l(0), g0.xxxy + mov x3[0].xy, r2.zwzz + ld_structured r2.zw, r1.z, l(0), g1.xxxy + mov x4[0].xy, r2.zwzz + ld_structured r2.zw, r1.z, l(0), g2.xxxy + mov x5[0].xy, r2.zwzz + else + ld_structured r2.zw, r1.z, l(0), g0.xxxy + mov x3[1].xy, r2.zwzz + ld_structured r2.zw, r1.z, l(0), g1.xxxy + mov x4[1].xy, r2.zwzz + ld_structured r2.zw, r1.z, l(0), g2.xxxy + mov x5[1].xy, r2.zwzz + endif + utof r1.w, r2.x + mul r1.w, r0.z, r1.w + sincos r2.x, r3.x, r1.w + mov r1.w, x3[1].x + mov r2.z, x3[1].y + mul r2.w, r2.z, r2.x + mad r4.x, r3.x, r1.w, -r2.w + mul r2.z, r2.z, r3.x + mad r4.y, r2.x, r1.w, r2.z + mov r1.w, x4[1].x + mov r2.z, x4[1].y + mul r2.w, r2.z, r2.x + mad r5.x, r3.x, r1.w, -r2.w + mul r2.z, r2.z, r3.x + mad r5.y, r2.x, r1.w, r2.z + mov r1.w, x5[1].x + mov r2.z, x5[1].y + mul r2.w, r2.z, r2.x + mad r6.x, r3.x, r1.w, -r2.w + mul r2.z, r2.z, r3.x + mad r6.y, r2.x, r1.w, r2.z + mov r2.xz, x3[0].xxyx + add r3.xy, -r4.xyxx, r2.xzxx + mov x3[1].xy, r3.xyxx + add r2.xz, r4.xxyx, r2.xxzx + mov x3[0].xy, r2.xzxx + mov r3.zw, x4[0].xxxy + add r4.xy, -r5.xyxx, r3.zwzz + mov x4[1].xy, r4.xyxx + add r3.zw, r5.xxxy, r3.zzzw + mov x4[0].xy, r3.zwzz + mov r4.zw, x5[0].xxxy + add r5.xy, -r6.xyxx, r4.zwzz + mov x5[1].xy, r5.xyxx + add r4.zw, r6.xxxy, r4.zzzw + mov x5[0].xy, r4.zwzz + ine r0.x, r2.y, l(0) + if_nz r2.y + mov r3.xy, r2.xzxx + mov r4.xy, r3.zwzz + mov r5.xy, r4.zwzz + endif + store_structured g2.xy, r1.z, l(0), r5.xyxx + store_structured g1.xy, r1.z, l(0), r4.xyxx + store_structured g0.xy, r1.z, l(0), r3.xyxx + endif + sync_g_t + mul r0.z, r0.z, l(0.500000) + mov r1.x, l(128) +endif +ult r1.z, r1.x, cb0[0].x +and r1.y, r1.z, r1.y +if_nz r1.y + if_nz r0.w + xor r1.z, vThreadID.x, l(127) + and r2.xy, vThreadID.xxxx, l(127, 128, 0, 0) + if_nz r0.x + ld_structured r2.zw, r1.z, l(0), g0.xxxy + mov x3[0].xy, r2.zwzz + ld_structured r2.zw, r1.z, l(0), g1.xxxy + mov x4[0].xy, r2.zwzz + ld_structured r2.zw, r1.z, l(0), g2.xxxy + mov x5[0].xy, r2.zwzz + else + ld_structured r2.zw, r1.z, l(0), g0.xxxy + mov x3[1].xy, r2.zwzz + ld_structured r2.zw, r1.z, l(0), g1.xxxy + mov x4[1].xy, r2.zwzz + ld_structured r2.zw, r1.z, l(0), g2.xxxy + mov x5[1].xy, r2.zwzz + endif + utof r1.w, r2.x + mul r1.w, r0.z, r1.w + sincos r2.x, r3.x, r1.w + mov r1.w, x3[1].x + mov r2.z, x3[1].y + mul r2.w, r2.z, r2.x + mad r4.x, r3.x, r1.w, -r2.w + mul r2.z, r2.z, r3.x + mad r4.y, r2.x, r1.w, r2.z + mov r1.w, x4[1].x + mov r2.z, x4[1].y + mul r2.w, r2.z, r2.x + mad r5.x, r3.x, r1.w, -r2.w + mul r2.z, r2.z, r3.x + mad r5.y, r2.x, r1.w, r2.z + mov r1.w, x5[1].x + mov r2.z, x5[1].y + mul r2.w, r2.z, r2.x + mad r6.x, r3.x, r1.w, -r2.w + mul r2.z, r2.z, r3.x + mad r6.y, r2.x, r1.w, r2.z + mov r2.xz, x3[0].xxyx + add r3.xy, -r4.xyxx, r2.xzxx + mov x3[1].xy, r3.xyxx + add r2.xz, r4.xxyx, r2.xxzx + mov x3[0].xy, r2.xzxx + mov r3.zw, x4[0].xxxy + add r4.xy, -r5.xyxx, r3.zwzz + mov x4[1].xy, r4.xyxx + add r3.zw, r5.xxxy, r3.zzzw + mov x4[0].xy, r3.zwzz + mov r4.zw, x5[0].xxxy + add r5.xy, -r6.xyxx, r4.zwzz + mov x5[1].xy, r5.xyxx + add r4.zw, r6.xxxy, r4.zzzw + mov x5[0].xy, r4.zwzz + ine r0.x, r2.y, l(0) + if_nz r2.y + mov r3.xy, r2.xzxx + mov r4.xy, r3.zwzz + mov r5.xy, r4.zwzz + endif + store_structured g2.xy, r1.z, l(0), r5.xyxx + store_structured g1.xy, r1.z, l(0), r4.xyxx + store_structured g0.xy, r1.z, l(0), r3.xyxx + endif + sync_g_t + mul r0.z, r0.z, l(0.500000) + mov r1.x, l(256) +endif +ult r1.x, r1.x, cb0[0].x +and r1.x, r1.x, r1.y +if_nz r1.x + if_nz r0.w + xor r0.w, vThreadID.x, l(255) + and r1.x, vThreadID.x, l(255) + if_nz r0.x + ld_structured r1.yz, r0.w, l(0), g0.xxyx + mov x3[0].xy, r1.yzyy + ld_structured r1.yz, r0.w, l(0), g1.xxyx + mov x4[0].xy, r1.yzyy + ld_structured r1.yz, r0.w, l(0), g2.xxyx + mov x5[0].xy, r1.yzyy + else + ld_structured r1.yz, r0.w, l(0), g0.xxyx + mov x3[1].xy, r1.yzyy + ld_structured r1.yz, r0.w, l(0), g1.xxyx + mov x4[1].xy, r1.yzyy + ld_structured r0.xw, r0.w, l(0), g2.xxxy + mov x5[1].xy, r0.xwxx + endif + utof r0.x, r1.x + mul r0.x, r0.z, r0.x + sincos r0.x, r1.x, r0.x + mov r0.z, x3[1].x + mov r0.w, x3[1].y + mul r1.y, r0.w, r0.x + mad r2.x, r1.x, r0.z, -r1.y + mul r0.w, r0.w, r1.x + mad r2.y, r0.x, r0.z, r0.w + mov r0.z, x4[1].x + mov r0.w, x4[1].y + mul r1.y, r0.w, r0.x + mad r3.x, r1.x, r0.z, -r1.y + mul r0.w, r0.w, r1.x + mad r3.y, r0.x, r0.z, r0.w + mov r0.z, x5[1].x + mov r0.w, x5[1].y + mul r1.y, r0.w, r0.x + mad r4.x, r1.x, r0.z, -r1.y + mul r0.w, r0.w, r1.x + mad r4.y, r0.x, r0.z, r0.w + mov r0.xz, x3[0].xxyx + add r1.xy, -r2.xyxx, r0.xzxx + mov x3[1].xy, r1.xyxx + add r0.xz, r2.xxyx, r0.xxzx + mov x3[0].xy, r0.xzxx + mov r0.xz, x4[0].xxyx + add r1.xy, -r3.xyxx, r0.xzxx + mov x4[1].xy, r1.xyxx + add r0.xz, r3.xxyx, r0.xxzx + mov x4[0].xy, r0.xzxx + mov r0.xz, x5[0].xxyx + add r1.xy, -r4.xyxx, r0.xzxx + mov x5[1].xy, r1.xyxx + add r0.xz, r4.xxyx, r0.xxzx + mov x5[0].xy, r0.xzxx + endif +endif +if_nz r0.y + mov r0.xy, x3[0].xyxx + mov r0.zw, x3[1].xxxy + mov r1.xy, x4[0].xyxx + mov r2.xy, x4[1].xyxx + mov r1.zw, x5[0].xxxy + mov r2.zw, x5[1].xxxy + imad r3.x, vThreadID.y, cb0[0].x, vThreadID.x + store_structured u0.xy, r3.x, l(0), r0.xyxx + iadd r0.x, r3.x, cb0[0].z + store_structured u0.xy, r0.x, l(0), r0.zwzz + store_structured u1.xyzw, r3.x, l(0), r1.xyzw + store_structured u1.xyzw, r0.x, l(0), r2.xyzw +endif +ret +// Approximately 0 instruction slots used +#endif + +const BYTE g_ComputeRows[] = +{ + 68, 88, 66, 67, 65, 212, + 60, 194, 214, 177, 202, 197, + 242, 147, 44, 128, 42, 58, + 109, 213, 1, 0, 0, 0, + 8, 68, 0, 0, 4, 0, + 0, 0, 48, 0, 0, 0, + 64, 0, 0, 0, 80, 0, + 0, 0, 248, 67, 0, 0, + 73, 83, 71, 78, 8, 0, + 0, 0, 0, 0, 0, 0, + 8, 0, 0, 0, 79, 83, + 71, 78, 8, 0, 0, 0, + 0, 0, 0, 0, 8, 0, + 0, 0, 83, 72, 69, 88, + 160, 67, 0, 0, 80, 0, + 5, 0, 232, 16, 0, 0, + 106, 24, 0, 1, 89, 0, + 0, 4, 70, 142, 32, 0, + 0, 0, 0, 0, 5, 0, + 0, 0, 162, 0, 0, 4, + 0, 112, 16, 0, 0, 0, + 0, 0, 8, 0, 0, 0, + 162, 0, 0, 4, 0, 112, + 16, 0, 1, 0, 0, 0, + 4, 0, 0, 0, 158, 0, + 0, 4, 0, 224, 17, 0, + 0, 0, 0, 0, 8, 0, + 0, 0, 158, 0, 0, 4, + 0, 224, 17, 0, 1, 0, + 0, 0, 16, 0, 0, 0, + 95, 0, 0, 2, 50, 0, + 2, 0, 104, 0, 0, 2, + 8, 0, 0, 0, 105, 0, + 0, 4, 0, 0, 0, 0, + 2, 0, 0, 0, 4, 0, + 0, 0, 105, 0, 0, 4, + 1, 0, 0, 0, 2, 0, + 0, 0, 4, 0, 0, 0, + 105, 0, 0, 4, 2, 0, + 0, 0, 2, 0, 0, 0, + 4, 0, 0, 0, 105, 0, + 0, 4, 3, 0, 0, 0, + 2, 0, 0, 0, 4, 0, + 0, 0, 105, 0, 0, 4, + 4, 0, 0, 0, 2, 0, + 0, 0, 4, 0, 0, 0, + 105, 0, 0, 4, 5, 0, + 0, 0, 2, 0, 0, 0, + 4, 0, 0, 0, 160, 0, + 0, 5, 0, 240, 17, 0, + 0, 0, 0, 0, 8, 0, + 0, 0, 0, 1, 0, 0, + 160, 0, 0, 5, 0, 240, + 17, 0, 1, 0, 0, 0, + 8, 0, 0, 0, 0, 1, + 0, 0, 160, 0, 0, 5, + 0, 240, 17, 0, 2, 0, + 0, 0, 8, 0, 0, 0, + 0, 1, 0, 0, 155, 0, + 0, 4, 0, 1, 0, 0, + 1, 0, 0, 0, 1, 0, + 0, 0, 41, 0, 0, 6, + 18, 0, 16, 0, 0, 0, + 0, 0, 10, 0, 2, 0, + 1, 64, 0, 0, 1, 0, + 0, 0, 79, 0, 0, 8, + 34, 0, 16, 0, 0, 0, + 0, 0, 10, 0, 16, 0, + 0, 0, 0, 0, 10, 128, + 32, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 31, 0, + 4, 3, 26, 0, 16, 0, + 0, 0, 0, 0, 141, 0, + 0, 5, 18, 0, 16, 0, + 0, 0, 0, 0, 10, 0, + 16, 0, 0, 0, 0, 0, + 85, 0, 0, 8, 34, 0, + 16, 0, 1, 0, 0, 0, + 10, 0, 16, 0, 0, 0, + 0, 0, 26, 128, 32, 0, + 0, 0, 0, 0, 1, 0, + 0, 0, 30, 0, 0, 9, + 18, 0, 16, 0, 1, 0, + 0, 0, 26, 0, 16, 0, + 1, 0, 0, 0, 42, 128, + 32, 128, 65, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 30, 0, 0, 8, + 18, 0, 16, 0, 0, 0, + 0, 0, 26, 0, 2, 0, + 42, 128, 32, 128, 65, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 35, 0, + 0, 9, 194, 0, 16, 0, + 0, 0, 0, 0, 86, 5, + 2, 0, 86, 141, 32, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 86, 5, 16, 0, + 1, 0, 0, 0, 30, 0, + 0, 8, 66, 0, 16, 0, + 1, 0, 0, 0, 42, 0, + 16, 0, 0, 0, 0, 0, + 42, 128, 32, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 35, 0, 0, 10, 130, 0, + 16, 0, 1, 0, 0, 0, + 26, 0, 2, 0, 58, 128, + 32, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 42, 128, + 32, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 167, 0, + 0, 139, 2, 67, 0, 128, + 131, 153, 25, 0, 50, 0, + 16, 0, 2, 0, 0, 0, + 42, 0, 16, 0, 0, 0, + 0, 0, 1, 64, 0, 0, + 0, 0, 0, 0, 70, 112, + 16, 0, 0, 0, 0, 0, + 30, 0, 0, 9, 66, 0, + 16, 0, 0, 0, 0, 0, + 42, 0, 16, 128, 65, 0, + 0, 0, 0, 0, 0, 0, + 10, 128, 32, 0, 0, 0, + 0, 0, 1, 0, 0, 0, + 167, 0, 0, 139, 2, 67, + 0, 128, 131, 153, 25, 0, + 194, 0, 16, 0, 2, 0, + 0, 0, 42, 0, 16, 0, + 0, 0, 0, 0, 1, 64, + 0, 0, 0, 0, 0, 0, + 6, 116, 16, 0, 0, 0, + 0, 0, 167, 0, 0, 139, + 2, 35, 0, 128, 131, 153, + 25, 0, 66, 0, 16, 0, + 0, 0, 0, 0, 58, 0, + 16, 0, 0, 0, 0, 0, + 1, 64, 0, 0, 0, 0, + 0, 0, 6, 112, 16, 0, + 1, 0, 0, 0, 202, 0, + 0, 5, 194, 0, 16, 0, + 0, 0, 0, 0, 42, 0, + 16, 0, 0, 0, 0, 0, + 194, 0, 0, 8, 50, 0, + 16, 0, 3, 0, 0, 0, + 230, 14, 16, 0, 0, 0, + 0, 0, 70, 132, 32, 0, + 0, 0, 0, 0, 4, 0, + 0, 0, 167, 0, 0, 139, + 2, 67, 0, 128, 131, 153, + 25, 0, 194, 0, 16, 0, + 0, 0, 0, 0, 42, 0, + 16, 0, 1, 0, 0, 0, + 1, 64, 0, 0, 0, 0, + 0, 0, 6, 116, 16, 0, + 0, 0, 0, 0, 30, 0, + 0, 9, 66, 0, 16, 0, + 1, 0, 0, 0, 42, 0, + 16, 128, 65, 0, 0, 0, + 1, 0, 0, 0, 10, 128, + 32, 0, 0, 0, 0, 0, + 1, 0, 0, 0, 167, 0, + 0, 139, 2, 67, 0, 128, + 131, 153, 25, 0, 50, 0, + 16, 0, 4, 0, 0, 0, + 42, 0, 16, 0, 1, 0, + 0, 0, 1, 64, 0, 0, + 0, 0, 0, 0, 70, 112, + 16, 0, 0, 0, 0, 0, + 30, 0, 0, 8, 66, 0, + 16, 0, 1, 0, 0, 0, + 26, 0, 16, 128, 65, 0, + 0, 0, 1, 0, 0, 0, + 58, 0, 16, 0, 1, 0, + 0, 0, 167, 0, 0, 139, + 2, 35, 0, 128, 131, 153, + 25, 0, 66, 0, 16, 0, + 1, 0, 0, 0, 42, 0, + 16, 0, 1, 0, 0, 0, + 1, 64, 0, 0, 0, 0, + 0, 0, 6, 112, 16, 0, + 1, 0, 0, 0, 202, 0, + 0, 5, 194, 0, 16, 0, + 1, 0, 0, 0, 42, 0, + 16, 0, 1, 0, 0, 0, + 194, 0, 0, 8, 194, 0, + 16, 0, 3, 0, 0, 0, + 230, 14, 16, 0, 1, 0, + 0, 0, 70, 132, 32, 0, + 0, 0, 0, 0, 4, 0, + 0, 0, 194, 0, 0, 10, + 242, 0, 16, 0, 5, 0, + 0, 0, 70, 14, 16, 0, + 3, 0, 0, 0, 2, 80, + 0, 0, 0, 0, 0, 96, + 48, 95, 196, 63, 0, 0, + 0, 96, 48, 95, 196, 63, + 201, 0, 0, 5, 194, 0, + 16, 0, 1, 0, 0, 0, + 70, 14, 16, 0, 5, 0, + 0, 0, 65, 0, 0, 5, + 194, 0, 16, 0, 1, 0, + 0, 0, 166, 14, 16, 0, + 1, 0, 0, 0, 202, 0, + 0, 5, 242, 0, 16, 0, + 5, 0, 0, 0, 230, 10, + 16, 0, 1, 0, 0, 0, + 194, 0, 0, 10, 242, 0, + 16, 0, 5, 0, 0, 0, + 70, 14, 16, 0, 5, 0, + 0, 0, 2, 80, 0, 0, + 0, 0, 0, 96, 251, 33, + 25, 64, 0, 0, 0, 96, + 251, 33, 25, 64, 191, 0, + 0, 8, 242, 0, 16, 0, + 3, 0, 0, 0, 70, 14, + 16, 0, 3, 0, 0, 0, + 70, 14, 16, 128, 65, 0, + 0, 0, 5, 0, 0, 0, + 201, 0, 0, 5, 194, 0, + 16, 0, 1, 0, 0, 0, + 70, 14, 16, 0, 3, 0, + 0, 0, 77, 0, 0, 7, + 50, 0, 16, 0, 3, 0, + 0, 0, 50, 0, 16, 0, + 5, 0, 0, 0, 230, 10, + 16, 0, 1, 0, 0, 0, + 0, 0, 0, 7, 194, 0, + 16, 0, 1, 0, 0, 0, + 166, 14, 16, 0, 2, 0, + 0, 0, 6, 4, 16, 0, + 2, 0, 0, 0, 56, 0, + 0, 7, 130, 0, 16, 0, + 1, 0, 0, 0, 10, 0, + 16, 0, 3, 0, 0, 0, + 58, 0, 16, 0, 1, 0, + 0, 0, 50, 0, 0, 10, + 34, 0, 16, 0, 6, 0, + 0, 0, 42, 0, 16, 0, + 1, 0, 0, 0, 10, 0, + 16, 0, 5, 0, 0, 0, + 58, 0, 16, 128, 65, 0, + 0, 0, 1, 0, 0, 0, + 54, 0, 0, 6, 18, 48, + 32, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 26, 0, + 16, 0, 6, 0, 0, 0, + 0, 0, 0, 7, 194, 0, + 16, 0, 1, 0, 0, 0, + 166, 14, 16, 0, 0, 0, + 0, 0, 6, 4, 16, 0, + 4, 0, 0, 0, 56, 0, + 0, 7, 130, 0, 16, 0, + 1, 0, 0, 0, 26, 0, + 16, 0, 3, 0, 0, 0, + 58, 0, 16, 0, 1, 0, + 0, 0, 50, 0, 0, 10, + 34, 0, 16, 0, 7, 0, + 0, 0, 42, 0, 16, 0, + 1, 0, 0, 0, 26, 0, + 16, 0, 5, 0, 0, 0, + 58, 0, 16, 128, 65, 0, + 0, 0, 1, 0, 0, 0, + 54, 0, 0, 6, 18, 48, + 32, 0, 0, 0, 0, 0, + 1, 0, 0, 0, 26, 0, + 16, 0, 7, 0, 0, 0, + 0, 0, 0, 8, 194, 0, + 16, 0, 1, 0, 0, 0, + 166, 14, 16, 128, 65, 0, + 0, 0, 2, 0, 0, 0, + 6, 4, 16, 0, 2, 0, + 0, 0, 56, 0, 0, 7, + 130, 0, 16, 0, 1, 0, + 0, 0, 10, 0, 16, 0, + 5, 0, 0, 0, 58, 0, + 16, 0, 1, 0, 0, 0, + 50, 0, 0, 9, 66, 0, + 16, 0, 1, 0, 0, 0, + 42, 0, 16, 0, 1, 0, + 0, 0, 10, 0, 16, 0, + 3, 0, 0, 0, 58, 0, + 16, 0, 1, 0, 0, 0, + 54, 0, 0, 6, 34, 48, + 32, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 42, 0, + 16, 0, 1, 0, 0, 0, + 0, 0, 0, 8, 194, 0, + 16, 0, 0, 0, 0, 0, + 166, 14, 16, 0, 0, 0, + 0, 0, 6, 4, 16, 128, + 65, 0, 0, 0, 4, 0, + 0, 0, 56, 0, 0, 7, + 130, 0, 16, 0, 0, 0, + 0, 0, 26, 0, 16, 0, + 5, 0, 0, 0, 58, 0, + 16, 0, 0, 0, 0, 0, + 50, 0, 0, 9, 66, 0, + 16, 0, 0, 0, 0, 0, + 42, 0, 16, 0, 0, 0, + 0, 0, 26, 0, 16, 0, + 3, 0, 0, 0, 58, 0, + 16, 0, 0, 0, 0, 0, + 54, 0, 0, 6, 34, 48, + 32, 0, 0, 0, 0, 0, + 1, 0, 0, 0, 42, 0, + 16, 0, 0, 0, 0, 0, + 60, 0, 0, 7, 50, 0, + 16, 0, 2, 0, 0, 0, + 6, 0, 16, 0, 0, 0, + 0, 0, 70, 0, 16, 0, + 1, 0, 0, 0, 38, 0, + 0, 8, 0, 208, 0, 0, + 130, 0, 16, 0, 0, 0, + 0, 0, 10, 0, 16, 0, + 0, 0, 0, 0, 10, 0, + 16, 0, 0, 0, 0, 0, + 35, 0, 0, 9, 194, 0, + 16, 0, 2, 0, 0, 0, + 6, 4, 16, 0, 1, 0, + 0, 0, 6, 4, 16, 0, + 1, 0, 0, 0, 246, 15, + 16, 0, 0, 0, 0, 0, + 43, 0, 0, 5, 194, 0, + 16, 0, 2, 0, 0, 0, + 166, 14, 16, 0, 2, 0, + 0, 0, 68, 0, 0, 5, + 194, 0, 16, 0, 2, 0, + 0, 0, 166, 14, 16, 0, + 2, 0, 0, 0, 55, 0, + 0, 12, 50, 0, 16, 0, + 2, 0, 0, 0, 70, 0, + 16, 0, 2, 0, 0, 0, + 230, 10, 16, 0, 2, 0, + 0, 0, 2, 64, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 54, 0, + 0, 6, 18, 0, 16, 0, + 6, 0, 0, 0, 42, 0, + 16, 128, 65, 0, 0, 0, + 1, 0, 0, 0, 56, 0, + 0, 7, 194, 0, 16, 0, + 1, 0, 0, 0, 6, 0, + 16, 0, 2, 0, 0, 0, + 6, 4, 16, 0, 6, 0, + 0, 0, 54, 0, 0, 6, + 18, 0, 16, 0, 7, 0, + 0, 0, 42, 0, 16, 128, + 65, 0, 0, 0, 0, 0, + 0, 0, 56, 0, 0, 7, + 194, 0, 16, 0, 0, 0, + 0, 0, 86, 5, 16, 0, + 2, 0, 0, 0, 6, 4, + 16, 0, 7, 0, 0, 0, + 43, 0, 0, 5, 50, 0, + 16, 0, 1, 0, 0, 0, + 70, 0, 16, 0, 1, 0, + 0, 0, 56, 0, 0, 7, + 50, 0, 16, 0, 2, 0, + 0, 0, 230, 10, 16, 0, + 1, 0, 0, 0, 6, 0, + 16, 0, 1, 0, 0, 0, + 54, 0, 0, 6, 50, 48, + 32, 0, 1, 0, 0, 0, + 0, 0, 0, 0, 70, 0, + 16, 0, 2, 0, 0, 0, + 56, 0, 0, 7, 50, 0, + 16, 0, 1, 0, 0, 0, + 230, 10, 16, 0, 0, 0, + 0, 0, 86, 5, 16, 0, + 1, 0, 0, 0, 54, 0, + 0, 6, 50, 48, 32, 0, + 1, 0, 0, 0, 1, 0, + 0, 0, 70, 0, 16, 0, + 1, 0, 0, 0, 43, 0, + 0, 5, 18, 0, 16, 0, + 0, 0, 0, 0, 10, 0, + 16, 0, 0, 0, 0, 0, + 56, 0, 0, 7, 50, 0, + 16, 0, 1, 0, 0, 0, + 230, 10, 16, 0, 1, 0, + 0, 0, 6, 0, 16, 0, + 0, 0, 0, 0, 54, 0, + 0, 6, 50, 48, 32, 0, + 2, 0, 0, 0, 0, 0, + 0, 0, 70, 0, 16, 0, + 1, 0, 0, 0, 56, 0, + 0, 7, 82, 0, 16, 0, + 0, 0, 0, 0, 166, 11, + 16, 0, 0, 0, 0, 0, + 6, 0, 16, 0, 0, 0, + 0, 0, 54, 0, 0, 6, + 50, 48, 32, 0, 2, 0, + 0, 0, 1, 0, 0, 0, + 134, 0, 16, 0, 0, 0, + 0, 0, 21, 0, 0, 1, + 54, 0, 0, 6, 82, 0, + 16, 0, 0, 0, 0, 0, + 6, 49, 32, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 54, 0, 0, 6, 50, 0, + 16, 0, 1, 0, 0, 0, + 70, 48, 32, 0, 0, 0, + 0, 0, 1, 0, 0, 0, + 54, 0, 0, 6, 50, 48, + 32, 0, 3, 0, 0, 0, + 0, 0, 0, 0, 134, 0, + 16, 0, 0, 0, 0, 0, + 54, 0, 0, 6, 50, 48, + 32, 0, 3, 0, 0, 0, + 1, 0, 0, 0, 70, 0, + 16, 0, 1, 0, 0, 0, + 54, 0, 0, 6, 194, 0, + 16, 0, 1, 0, 0, 0, + 6, 52, 32, 0, 1, 0, + 0, 0, 0, 0, 0, 0, + 54, 0, 0, 6, 50, 0, + 16, 0, 2, 0, 0, 0, + 70, 48, 32, 0, 1, 0, + 0, 0, 1, 0, 0, 0, + 54, 0, 0, 6, 50, 48, + 32, 0, 4, 0, 0, 0, + 0, 0, 0, 0, 230, 10, + 16, 0, 1, 0, 0, 0, + 54, 0, 0, 6, 50, 48, + 32, 0, 4, 0, 0, 0, + 1, 0, 0, 0, 70, 0, + 16, 0, 2, 0, 0, 0, + 54, 0, 0, 6, 194, 0, + 16, 0, 2, 0, 0, 0, + 6, 52, 32, 0, 2, 0, + 0, 0, 0, 0, 0, 0, + 54, 0, 0, 6, 50, 0, + 16, 0, 3, 0, 0, 0, + 70, 48, 32, 0, 2, 0, + 0, 0, 1, 0, 0, 0, + 54, 0, 0, 6, 50, 48, + 32, 0, 5, 0, 0, 0, + 0, 0, 0, 0, 230, 10, + 16, 0, 2, 0, 0, 0, + 54, 0, 0, 6, 50, 48, + 32, 0, 5, 0, 0, 0, + 1, 0, 0, 0, 70, 0, + 16, 0, 3, 0, 0, 0, + 79, 0, 0, 7, 130, 0, + 16, 0, 0, 0, 0, 0, + 10, 0, 2, 0, 42, 128, + 32, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 31, 0, + 4, 3, 58, 0, 16, 0, + 0, 0, 0, 0, 0, 0, + 0, 8, 194, 0, 16, 0, + 3, 0, 0, 0, 6, 8, + 16, 0, 0, 0, 0, 0, + 6, 4, 16, 128, 65, 0, + 0, 0, 1, 0, 0, 0, + 54, 0, 0, 6, 50, 48, + 32, 0, 3, 0, 0, 0, + 1, 0, 0, 0, 230, 10, + 16, 0, 3, 0, 0, 0, + 0, 0, 0, 7, 82, 0, + 16, 0, 0, 0, 0, 0, + 6, 2, 16, 0, 0, 0, + 0, 0, 6, 1, 16, 0, + 1, 0, 0, 0, 54, 0, + 0, 6, 50, 48, 32, 0, + 3, 0, 0, 0, 0, 0, + 0, 0, 134, 0, 16, 0, + 0, 0, 0, 0, 0, 0, + 0, 8, 50, 0, 16, 0, + 1, 0, 0, 0, 230, 10, + 16, 0, 1, 0, 0, 0, + 70, 0, 16, 128, 65, 0, + 0, 0, 2, 0, 0, 0, + 54, 0, 0, 6, 50, 48, + 32, 0, 4, 0, 0, 0, + 1, 0, 0, 0, 70, 0, + 16, 0, 1, 0, 0, 0, + 0, 0, 0, 7, 194, 0, + 16, 0, 1, 0, 0, 0, + 166, 14, 16, 0, 1, 0, + 0, 0, 6, 4, 16, 0, + 2, 0, 0, 0, 54, 0, + 0, 6, 50, 48, 32, 0, + 4, 0, 0, 0, 0, 0, + 0, 0, 230, 10, 16, 0, + 1, 0, 0, 0, 0, 0, + 0, 8, 50, 0, 16, 0, + 2, 0, 0, 0, 230, 10, + 16, 0, 2, 0, 0, 0, + 70, 0, 16, 128, 65, 0, + 0, 0, 3, 0, 0, 0, + 54, 0, 0, 6, 50, 48, + 32, 0, 5, 0, 0, 0, + 1, 0, 0, 0, 70, 0, + 16, 0, 2, 0, 0, 0, + 0, 0, 0, 7, 194, 0, + 16, 0, 2, 0, 0, 0, + 166, 14, 16, 0, 2, 0, + 0, 0, 6, 4, 16, 0, + 3, 0, 0, 0, 54, 0, + 0, 6, 50, 48, 32, 0, + 5, 0, 0, 0, 0, 0, + 0, 0, 230, 10, 16, 0, + 2, 0, 0, 0, 1, 0, + 0, 9, 242, 0, 16, 0, + 4, 0, 0, 0, 6, 0, + 2, 0, 2, 64, 0, 0, + 1, 0, 0, 0, 2, 0, + 0, 0, 3, 0, 0, 0, + 4, 0, 0, 0, 31, 0, + 4, 3, 10, 0, 16, 0, + 4, 0, 0, 0, 54, 0, + 0, 5, 194, 0, 16, 0, + 3, 0, 0, 0, 6, 8, + 16, 0, 0, 0, 0, 0, + 54, 0, 0, 5, 50, 0, + 16, 0, 1, 0, 0, 0, + 230, 10, 16, 0, 1, 0, + 0, 0, 54, 0, 0, 5, + 50, 0, 16, 0, 2, 0, + 0, 0, 230, 10, 16, 0, + 2, 0, 0, 0, 21, 0, + 0, 1, 168, 0, 0, 8, + 50, 240, 17, 0, 2, 0, + 0, 0, 10, 0, 2, 0, + 1, 64, 0, 0, 0, 0, + 0, 0, 70, 0, 16, 0, + 2, 0, 0, 0, 168, 0, + 0, 8, 50, 240, 17, 0, + 1, 0, 0, 0, 10, 0, + 2, 0, 1, 64, 0, 0, + 0, 0, 0, 0, 70, 0, + 16, 0, 1, 0, 0, 0, + 168, 0, 0, 8, 50, 240, + 17, 0, 0, 0, 0, 0, + 10, 0, 2, 0, 1, 64, + 0, 0, 0, 0, 0, 0, + 230, 10, 16, 0, 3, 0, + 0, 0, 190, 16, 0, 1, + 87, 0, 0, 9, 82, 0, + 16, 0, 0, 0, 0, 0, + 6, 0, 2, 0, 2, 64, + 0, 0, 1, 0, 0, 0, + 0, 0, 0, 0, 3, 0, + 0, 0, 0, 0, 0, 0, + 31, 0, 4, 3, 10, 0, + 16, 0, 4, 0, 0, 0, + 167, 0, 0, 9, 50, 0, + 16, 0, 1, 0, 0, 0, + 10, 0, 16, 0, 0, 0, + 0, 0, 1, 64, 0, 0, + 0, 0, 0, 0, 70, 240, + 17, 0, 0, 0, 0, 0, + 54, 0, 0, 6, 50, 48, + 32, 0, 3, 0, 0, 0, + 0, 0, 0, 0, 70, 0, + 16, 0, 1, 0, 0, 0, + 167, 0, 0, 9, 50, 0, + 16, 0, 1, 0, 0, 0, + 10, 0, 16, 0, 0, 0, + 0, 0, 1, 64, 0, 0, + 0, 0, 0, 0, 70, 240, + 17, 0, 1, 0, 0, 0, + 54, 0, 0, 6, 50, 48, + 32, 0, 4, 0, 0, 0, + 0, 0, 0, 0, 70, 0, + 16, 0, 1, 0, 0, 0, + 167, 0, 0, 9, 50, 0, + 16, 0, 1, 0, 0, 0, + 10, 0, 16, 0, 0, 0, + 0, 0, 1, 64, 0, 0, + 0, 0, 0, 0, 70, 240, + 17, 0, 2, 0, 0, 0, + 54, 0, 0, 6, 50, 48, + 32, 0, 5, 0, 0, 0, + 0, 0, 0, 0, 70, 0, + 16, 0, 1, 0, 0, 0, + 18, 0, 0, 1, 167, 0, + 0, 9, 50, 0, 16, 0, + 1, 0, 0, 0, 10, 0, + 16, 0, 0, 0, 0, 0, + 1, 64, 0, 0, 0, 0, + 0, 0, 70, 240, 17, 0, + 0, 0, 0, 0, 54, 0, + 0, 6, 50, 48, 32, 0, + 3, 0, 0, 0, 1, 0, + 0, 0, 70, 0, 16, 0, + 1, 0, 0, 0, 167, 0, + 0, 9, 50, 0, 16, 0, + 1, 0, 0, 0, 10, 0, + 16, 0, 0, 0, 0, 0, + 1, 64, 0, 0, 0, 0, + 0, 0, 70, 240, 17, 0, + 1, 0, 0, 0, 54, 0, + 0, 6, 50, 48, 32, 0, + 4, 0, 0, 0, 1, 0, + 0, 0, 70, 0, 16, 0, + 1, 0, 0, 0, 167, 0, + 0, 9, 50, 0, 16, 0, + 1, 0, 0, 0, 10, 0, + 16, 0, 0, 0, 0, 0, + 1, 64, 0, 0, 0, 0, + 0, 0, 70, 240, 17, 0, + 2, 0, 0, 0, 54, 0, + 0, 6, 50, 48, 32, 0, + 5, 0, 0, 0, 1, 0, + 0, 0, 70, 0, 16, 0, + 1, 0, 0, 0, 21, 0, + 0, 1, 86, 0, 0, 5, + 50, 0, 16, 0, 1, 0, + 0, 0, 134, 0, 16, 0, + 4, 0, 0, 0, 56, 0, + 0, 10, 50, 0, 16, 0, + 1, 0, 0, 0, 70, 0, + 16, 0, 1, 0, 0, 0, + 2, 64, 0, 0, 219, 15, + 201, 63, 219, 15, 73, 63, + 0, 0, 0, 0, 0, 0, + 0, 0, 77, 0, 0, 7, + 18, 0, 16, 0, 1, 0, + 0, 0, 18, 0, 16, 0, + 2, 0, 0, 0, 10, 0, + 16, 0, 1, 0, 0, 0, + 54, 0, 0, 6, 66, 0, + 16, 0, 1, 0, 0, 0, + 10, 48, 32, 0, 3, 0, + 0, 0, 1, 0, 0, 0, + 54, 0, 0, 6, 130, 0, + 16, 0, 1, 0, 0, 0, + 26, 48, 32, 0, 3, 0, + 0, 0, 1, 0, 0, 0, + 56, 0, 0, 7, 34, 0, + 16, 0, 2, 0, 0, 0, + 58, 0, 16, 0, 1, 0, + 0, 0, 10, 0, 16, 0, + 1, 0, 0, 0, 50, 0, + 0, 10, 18, 0, 16, 0, + 3, 0, 0, 0, 10, 0, + 16, 0, 2, 0, 0, 0, + 42, 0, 16, 0, 1, 0, + 0, 0, 26, 0, 16, 128, + 65, 0, 0, 0, 2, 0, + 0, 0, 56, 0, 0, 7, + 130, 0, 16, 0, 1, 0, + 0, 0, 58, 0, 16, 0, + 1, 0, 0, 0, 10, 0, + 16, 0, 2, 0, 0, 0, + 50, 0, 0, 9, 34, 0, + 16, 0, 3, 0, 0, 0, + 10, 0, 16, 0, 1, 0, + 0, 0, 42, 0, 16, 0, + 1, 0, 0, 0, 58, 0, + 16, 0, 1, 0, 0, 0, + 54, 0, 0, 6, 66, 0, + 16, 0, 1, 0, 0, 0, + 10, 48, 32, 0, 4, 0, + 0, 0, 1, 0, 0, 0, + 54, 0, 0, 6, 130, 0, + 16, 0, 1, 0, 0, 0, + 26, 48, 32, 0, 4, 0, + 0, 0, 1, 0, 0, 0, + 56, 0, 0, 7, 34, 0, + 16, 0, 2, 0, 0, 0, + 58, 0, 16, 0, 1, 0, + 0, 0, 10, 0, 16, 0, + 1, 0, 0, 0, 50, 0, + 0, 10, 18, 0, 16, 0, + 5, 0, 0, 0, 10, 0, + 16, 0, 2, 0, 0, 0, + 42, 0, 16, 0, 1, 0, + 0, 0, 26, 0, 16, 128, + 65, 0, 0, 0, 2, 0, + 0, 0, 56, 0, 0, 7, + 130, 0, 16, 0, 1, 0, + 0, 0, 58, 0, 16, 0, + 1, 0, 0, 0, 10, 0, + 16, 0, 2, 0, 0, 0, + 50, 0, 0, 9, 34, 0, + 16, 0, 5, 0, 0, 0, + 10, 0, 16, 0, 1, 0, + 0, 0, 42, 0, 16, 0, + 1, 0, 0, 0, 58, 0, + 16, 0, 1, 0, 0, 0, + 54, 0, 0, 6, 66, 0, + 16, 0, 1, 0, 0, 0, + 10, 48, 32, 0, 5, 0, + 0, 0, 1, 0, 0, 0, + 54, 0, 0, 6, 130, 0, + 16, 0, 1, 0, 0, 0, + 26, 48, 32, 0, 5, 0, + 0, 0, 1, 0, 0, 0, + 56, 0, 0, 7, 34, 0, + 16, 0, 2, 0, 0, 0, + 58, 0, 16, 0, 1, 0, + 0, 0, 10, 0, 16, 0, + 1, 0, 0, 0, 50, 0, + 0, 10, 18, 0, 16, 0, + 6, 0, 0, 0, 10, 0, + 16, 0, 2, 0, 0, 0, + 42, 0, 16, 0, 1, 0, + 0, 0, 26, 0, 16, 128, + 65, 0, 0, 0, 2, 0, + 0, 0, 56, 0, 0, 7, + 130, 0, 16, 0, 1, 0, + 0, 0, 58, 0, 16, 0, + 1, 0, 0, 0, 10, 0, + 16, 0, 2, 0, 0, 0, + 50, 0, 0, 9, 34, 0, + 16, 0, 6, 0, 0, 0, + 10, 0, 16, 0, 1, 0, + 0, 0, 42, 0, 16, 0, + 1, 0, 0, 0, 58, 0, + 16, 0, 1, 0, 0, 0, + 54, 0, 0, 6, 82, 0, + 16, 0, 1, 0, 0, 0, + 6, 49, 32, 0, 3, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 8, 50, 0, + 16, 0, 2, 0, 0, 0, + 70, 0, 16, 128, 65, 0, + 0, 0, 3, 0, 0, 0, + 134, 0, 16, 0, 1, 0, + 0, 0, 54, 0, 0, 6, + 50, 48, 32, 0, 3, 0, + 0, 0, 1, 0, 0, 0, + 70, 0, 16, 0, 2, 0, + 0, 0, 0, 0, 0, 7, + 82, 0, 16, 0, 1, 0, + 0, 0, 6, 1, 16, 0, + 3, 0, 0, 0, 6, 2, + 16, 0, 1, 0, 0, 0, + 54, 0, 0, 6, 50, 48, + 32, 0, 3, 0, 0, 0, + 0, 0, 0, 0, 134, 0, + 16, 0, 1, 0, 0, 0, + 54, 0, 0, 6, 194, 0, + 16, 0, 2, 0, 0, 0, + 6, 52, 32, 0, 4, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 8, 50, 0, + 16, 0, 3, 0, 0, 0, + 70, 0, 16, 128, 65, 0, + 0, 0, 5, 0, 0, 0, + 230, 10, 16, 0, 2, 0, + 0, 0, 54, 0, 0, 6, + 50, 48, 32, 0, 4, 0, + 0, 0, 1, 0, 0, 0, + 70, 0, 16, 0, 3, 0, + 0, 0, 0, 0, 0, 7, + 194, 0, 16, 0, 2, 0, + 0, 0, 6, 4, 16, 0, + 5, 0, 0, 0, 166, 14, + 16, 0, 2, 0, 0, 0, + 54, 0, 0, 6, 50, 48, + 32, 0, 4, 0, 0, 0, + 0, 0, 0, 0, 230, 10, + 16, 0, 2, 0, 0, 0, + 54, 0, 0, 6, 194, 0, + 16, 0, 3, 0, 0, 0, + 6, 52, 32, 0, 5, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 8, 82, 0, + 16, 0, 4, 0, 0, 0, + 6, 1, 16, 128, 65, 0, + 0, 0, 6, 0, 0, 0, + 166, 11, 16, 0, 3, 0, + 0, 0, 54, 0, 0, 6, + 50, 48, 32, 0, 5, 0, + 0, 0, 1, 0, 0, 0, + 134, 0, 16, 0, 4, 0, + 0, 0, 0, 0, 0, 7, + 194, 0, 16, 0, 3, 0, + 0, 0, 6, 4, 16, 0, + 6, 0, 0, 0, 166, 14, + 16, 0, 3, 0, 0, 0, + 54, 0, 0, 6, 50, 48, + 32, 0, 5, 0, 0, 0, + 0, 0, 0, 0, 230, 10, + 16, 0, 3, 0, 0, 0, + 31, 0, 4, 3, 26, 0, + 16, 0, 4, 0, 0, 0, + 54, 0, 0, 5, 50, 0, + 16, 0, 2, 0, 0, 0, + 134, 0, 16, 0, 1, 0, + 0, 0, 54, 0, 0, 5, + 50, 0, 16, 0, 3, 0, + 0, 0, 230, 10, 16, 0, + 2, 0, 0, 0, 54, 0, + 0, 5, 82, 0, 16, 0, + 4, 0, 0, 0, 166, 11, + 16, 0, 3, 0, 0, 0, + 21, 0, 0, 1, 168, 0, + 0, 9, 50, 240, 17, 0, + 2, 0, 0, 0, 10, 0, + 16, 0, 0, 0, 0, 0, + 1, 64, 0, 0, 0, 0, + 0, 0, 134, 0, 16, 0, + 4, 0, 0, 0, 168, 0, + 0, 9, 50, 240, 17, 0, + 1, 0, 0, 0, 10, 0, + 16, 0, 0, 0, 0, 0, + 1, 64, 0, 0, 0, 0, + 0, 0, 70, 0, 16, 0, + 3, 0, 0, 0, 168, 0, + 0, 9, 50, 240, 17, 0, + 0, 0, 0, 0, 10, 0, + 16, 0, 0, 0, 0, 0, + 1, 64, 0, 0, 0, 0, + 0, 0, 70, 0, 16, 0, + 2, 0, 0, 0, 190, 16, + 0, 1, 31, 0, 4, 3, + 26, 0, 16, 0, 4, 0, + 0, 0, 167, 0, 0, 9, + 82, 0, 16, 0, 1, 0, + 0, 0, 42, 0, 16, 0, + 0, 0, 0, 0, 1, 64, + 0, 0, 0, 0, 0, 0, + 6, 241, 17, 0, 0, 0, + 0, 0, 54, 0, 0, 6, + 50, 48, 32, 0, 3, 0, + 0, 0, 0, 0, 0, 0, + 134, 0, 16, 0, 1, 0, + 0, 0, 167, 0, 0, 9, + 82, 0, 16, 0, 1, 0, + 0, 0, 42, 0, 16, 0, + 0, 0, 0, 0, 1, 64, + 0, 0, 0, 0, 0, 0, + 6, 241, 17, 0, 1, 0, + 0, 0, 54, 0, 0, 6, + 50, 48, 32, 0, 4, 0, + 0, 0, 0, 0, 0, 0, + 134, 0, 16, 0, 1, 0, + 0, 0, 167, 0, 0, 9, + 82, 0, 16, 0, 1, 0, + 0, 0, 42, 0, 16, 0, + 0, 0, 0, 0, 1, 64, + 0, 0, 0, 0, 0, 0, + 6, 241, 17, 0, 2, 0, + 0, 0, 54, 0, 0, 6, + 50, 48, 32, 0, 5, 0, + 0, 0, 0, 0, 0, 0, + 134, 0, 16, 0, 1, 0, + 0, 0, 18, 0, 0, 1, + 167, 0, 0, 9, 82, 0, + 16, 0, 1, 0, 0, 0, + 42, 0, 16, 0, 0, 0, + 0, 0, 1, 64, 0, 0, + 0, 0, 0, 0, 6, 241, + 17, 0, 0, 0, 0, 0, + 54, 0, 0, 6, 50, 48, + 32, 0, 3, 0, 0, 0, + 1, 0, 0, 0, 134, 0, + 16, 0, 1, 0, 0, 0, + 167, 0, 0, 9, 82, 0, + 16, 0, 1, 0, 0, 0, + 42, 0, 16, 0, 0, 0, + 0, 0, 1, 64, 0, 0, + 0, 0, 0, 0, 6, 241, + 17, 0, 1, 0, 0, 0, + 54, 0, 0, 6, 50, 48, + 32, 0, 4, 0, 0, 0, + 1, 0, 0, 0, 134, 0, + 16, 0, 1, 0, 0, 0, + 167, 0, 0, 9, 82, 0, + 16, 0, 1, 0, 0, 0, + 42, 0, 16, 0, 0, 0, + 0, 0, 1, 64, 0, 0, + 0, 0, 0, 0, 6, 241, + 17, 0, 2, 0, 0, 0, + 54, 0, 0, 6, 50, 48, + 32, 0, 5, 0, 0, 0, + 1, 0, 0, 0, 134, 0, + 16, 0, 1, 0, 0, 0, + 21, 0, 0, 1, 77, 0, + 0, 7, 18, 0, 16, 0, + 0, 0, 0, 0, 18, 0, + 16, 0, 1, 0, 0, 0, + 26, 0, 16, 0, 1, 0, + 0, 0, 54, 0, 0, 6, + 34, 0, 16, 0, 1, 0, + 0, 0, 10, 48, 32, 0, + 3, 0, 0, 0, 1, 0, + 0, 0, 54, 0, 0, 6, + 66, 0, 16, 0, 1, 0, + 0, 0, 26, 48, 32, 0, + 3, 0, 0, 0, 1, 0, + 0, 0, 56, 0, 0, 7, + 130, 0, 16, 0, 1, 0, + 0, 0, 10, 0, 16, 0, + 0, 0, 0, 0, 42, 0, + 16, 0, 1, 0, 0, 0, + 50, 0, 0, 10, 18, 0, + 16, 0, 2, 0, 0, 0, + 10, 0, 16, 0, 1, 0, + 0, 0, 26, 0, 16, 0, + 1, 0, 0, 0, 58, 0, + 16, 128, 65, 0, 0, 0, + 1, 0, 0, 0, 56, 0, + 0, 7, 66, 0, 16, 0, + 1, 0, 0, 0, 42, 0, + 16, 0, 1, 0, 0, 0, + 10, 0, 16, 0, 1, 0, + 0, 0, 50, 0, 0, 9, + 34, 0, 16, 0, 2, 0, + 0, 0, 10, 0, 16, 0, + 0, 0, 0, 0, 26, 0, + 16, 0, 1, 0, 0, 0, + 42, 0, 16, 0, 1, 0, + 0, 0, 54, 0, 0, 6, + 34, 0, 16, 0, 1, 0, + 0, 0, 10, 48, 32, 0, + 4, 0, 0, 0, 1, 0, + 0, 0, 54, 0, 0, 6, + 66, 0, 16, 0, 1, 0, + 0, 0, 26, 48, 32, 0, + 4, 0, 0, 0, 1, 0, + 0, 0, 56, 0, 0, 7, + 130, 0, 16, 0, 1, 0, + 0, 0, 10, 0, 16, 0, + 0, 0, 0, 0, 42, 0, + 16, 0, 1, 0, 0, 0, + 50, 0, 0, 10, 18, 0, + 16, 0, 3, 0, 0, 0, + 10, 0, 16, 0, 1, 0, + 0, 0, 26, 0, 16, 0, + 1, 0, 0, 0, 58, 0, + 16, 128, 65, 0, 0, 0, + 1, 0, 0, 0, 56, 0, + 0, 7, 66, 0, 16, 0, + 1, 0, 0, 0, 42, 0, + 16, 0, 1, 0, 0, 0, + 10, 0, 16, 0, 1, 0, + 0, 0, 50, 0, 0, 9, + 34, 0, 16, 0, 3, 0, + 0, 0, 10, 0, 16, 0, + 0, 0, 0, 0, 26, 0, + 16, 0, 1, 0, 0, 0, + 42, 0, 16, 0, 1, 0, + 0, 0, 54, 0, 0, 6, + 34, 0, 16, 0, 1, 0, + 0, 0, 10, 48, 32, 0, + 5, 0, 0, 0, 1, 0, + 0, 0, 54, 0, 0, 6, + 66, 0, 16, 0, 1, 0, + 0, 0, 26, 48, 32, 0, + 5, 0, 0, 0, 1, 0, + 0, 0, 56, 0, 0, 7, + 130, 0, 16, 0, 1, 0, + 0, 0, 10, 0, 16, 0, + 0, 0, 0, 0, 42, 0, + 16, 0, 1, 0, 0, 0, + 50, 0, 0, 10, 18, 0, + 16, 0, 4, 0, 0, 0, + 10, 0, 16, 0, 1, 0, + 0, 0, 26, 0, 16, 0, + 1, 0, 0, 0, 58, 0, + 16, 128, 65, 0, 0, 0, + 1, 0, 0, 0, 56, 0, + 0, 7, 18, 0, 16, 0, + 1, 0, 0, 0, 42, 0, + 16, 0, 1, 0, 0, 0, + 10, 0, 16, 0, 1, 0, + 0, 0, 50, 0, 0, 9, + 34, 0, 16, 0, 4, 0, + 0, 0, 10, 0, 16, 0, + 0, 0, 0, 0, 26, 0, + 16, 0, 1, 0, 0, 0, + 10, 0, 16, 0, 1, 0, + 0, 0, 54, 0, 0, 6, + 50, 0, 16, 0, 1, 0, + 0, 0, 70, 48, 32, 0, + 3, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 8, + 194, 0, 16, 0, 1, 0, + 0, 0, 6, 4, 16, 128, + 65, 0, 0, 0, 2, 0, + 0, 0, 6, 4, 16, 0, + 1, 0, 0, 0, 54, 0, + 0, 6, 50, 48, 32, 0, + 3, 0, 0, 0, 1, 0, + 0, 0, 230, 10, 16, 0, + 1, 0, 0, 0, 0, 0, + 0, 7, 50, 0, 16, 0, + 1, 0, 0, 0, 70, 0, + 16, 0, 2, 0, 0, 0, + 70, 0, 16, 0, 1, 0, + 0, 0, 54, 0, 0, 6, + 50, 48, 32, 0, 3, 0, + 0, 0, 0, 0, 0, 0, + 70, 0, 16, 0, 1, 0, + 0, 0, 54, 0, 0, 6, + 50, 0, 16, 0, 2, 0, + 0, 0, 70, 48, 32, 0, + 4, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 8, + 194, 0, 16, 0, 2, 0, + 0, 0, 6, 4, 16, 128, + 65, 0, 0, 0, 3, 0, + 0, 0, 6, 4, 16, 0, + 2, 0, 0, 0, 54, 0, + 0, 6, 50, 48, 32, 0, + 4, 0, 0, 0, 1, 0, + 0, 0, 230, 10, 16, 0, + 2, 0, 0, 0, 0, 0, + 0, 7, 50, 0, 16, 0, + 2, 0, 0, 0, 70, 0, + 16, 0, 3, 0, 0, 0, + 70, 0, 16, 0, 2, 0, + 0, 0, 54, 0, 0, 6, + 50, 48, 32, 0, 4, 0, + 0, 0, 0, 0, 0, 0, + 70, 0, 16, 0, 2, 0, + 0, 0, 54, 0, 0, 6, + 50, 0, 16, 0, 3, 0, + 0, 0, 70, 48, 32, 0, + 5, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 8, + 194, 0, 16, 0, 3, 0, + 0, 0, 6, 4, 16, 128, + 65, 0, 0, 0, 4, 0, + 0, 0, 6, 4, 16, 0, + 3, 0, 0, 0, 54, 0, + 0, 6, 50, 48, 32, 0, + 5, 0, 0, 0, 1, 0, + 0, 0, 230, 10, 16, 0, + 3, 0, 0, 0, 0, 0, + 0, 7, 50, 0, 16, 0, + 3, 0, 0, 0, 70, 0, + 16, 0, 4, 0, 0, 0, + 70, 0, 16, 0, 3, 0, + 0, 0, 54, 0, 0, 6, + 50, 48, 32, 0, 5, 0, + 0, 0, 0, 0, 0, 0, + 70, 0, 16, 0, 3, 0, + 0, 0, 39, 0, 0, 7, + 18, 0, 16, 0, 0, 0, + 0, 0, 58, 0, 16, 0, + 4, 0, 0, 0, 1, 64, + 0, 0, 0, 0, 0, 0, + 31, 0, 4, 3, 58, 0, + 16, 0, 4, 0, 0, 0, + 54, 0, 0, 5, 194, 0, + 16, 0, 3, 0, 0, 0, + 6, 4, 16, 0, 3, 0, + 0, 0, 54, 0, 0, 5, + 194, 0, 16, 0, 2, 0, + 0, 0, 6, 4, 16, 0, + 2, 0, 0, 0, 54, 0, + 0, 5, 194, 0, 16, 0, + 1, 0, 0, 0, 6, 4, + 16, 0, 1, 0, 0, 0, + 21, 0, 0, 1, 168, 0, + 0, 9, 50, 240, 17, 0, + 2, 0, 0, 0, 42, 0, + 16, 0, 0, 0, 0, 0, + 1, 64, 0, 0, 0, 0, + 0, 0, 230, 10, 16, 0, + 3, 0, 0, 0, 168, 0, + 0, 9, 50, 240, 17, 0, + 1, 0, 0, 0, 42, 0, + 16, 0, 0, 0, 0, 0, + 1, 64, 0, 0, 0, 0, + 0, 0, 230, 10, 16, 0, + 2, 0, 0, 0, 168, 0, + 0, 9, 50, 240, 17, 0, + 0, 0, 0, 0, 42, 0, + 16, 0, 0, 0, 0, 0, + 1, 64, 0, 0, 0, 0, + 0, 0, 230, 10, 16, 0, + 1, 0, 0, 0, 190, 16, + 0, 1, 54, 0, 0, 5, + 66, 0, 16, 0, 0, 0, + 0, 0, 1, 64, 0, 0, + 219, 15, 201, 62, 18, 0, + 0, 1, 54, 0, 0, 8, + 82, 0, 16, 0, 0, 0, + 0, 0, 2, 64, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 219, 15, 201, 63, + 0, 0, 0, 0, 21, 0, + 0, 1, 79, 0, 0, 8, + 18, 0, 16, 0, 1, 0, + 0, 0, 1, 64, 0, 0, + 8, 0, 0, 0, 10, 128, + 32, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 31, 0, + 4, 3, 10, 0, 16, 0, + 1, 0, 0, 0, 31, 0, + 4, 3, 58, 0, 16, 0, + 0, 0, 0, 0, 87, 0, + 0, 6, 18, 0, 16, 0, + 1, 0, 0, 0, 10, 0, + 2, 0, 1, 64, 0, 0, + 7, 0, 0, 0, 1, 0, + 0, 9, 98, 0, 16, 0, + 1, 0, 0, 0, 6, 0, + 2, 0, 2, 64, 0, 0, + 0, 0, 0, 0, 7, 0, + 0, 0, 8, 0, 0, 0, + 0, 0, 0, 0, 31, 0, + 4, 3, 10, 0, 16, 0, + 0, 0, 0, 0, 167, 0, + 0, 9, 50, 0, 16, 0, + 2, 0, 0, 0, 10, 0, + 16, 0, 1, 0, 0, 0, + 1, 64, 0, 0, 0, 0, + 0, 0, 70, 240, 17, 0, + 0, 0, 0, 0, 54, 0, + 0, 6, 50, 48, 32, 0, + 3, 0, 0, 0, 0, 0, + 0, 0, 70, 0, 16, 0, + 2, 0, 0, 0, 167, 0, + 0, 9, 50, 0, 16, 0, + 2, 0, 0, 0, 10, 0, + 16, 0, 1, 0, 0, 0, + 1, 64, 0, 0, 0, 0, + 0, 0, 70, 240, 17, 0, + 1, 0, 0, 0, 54, 0, + 0, 6, 50, 48, 32, 0, + 4, 0, 0, 0, 0, 0, + 0, 0, 70, 0, 16, 0, + 2, 0, 0, 0, 167, 0, + 0, 9, 50, 0, 16, 0, + 2, 0, 0, 0, 10, 0, + 16, 0, 1, 0, 0, 0, + 1, 64, 0, 0, 0, 0, + 0, 0, 70, 240, 17, 0, + 2, 0, 0, 0, 54, 0, + 0, 6, 50, 48, 32, 0, + 5, 0, 0, 0, 0, 0, + 0, 0, 70, 0, 16, 0, + 2, 0, 0, 0, 18, 0, + 0, 1, 167, 0, 0, 9, + 50, 0, 16, 0, 2, 0, + 0, 0, 10, 0, 16, 0, + 1, 0, 0, 0, 1, 64, + 0, 0, 0, 0, 0, 0, + 70, 240, 17, 0, 0, 0, + 0, 0, 54, 0, 0, 6, + 50, 48, 32, 0, 3, 0, + 0, 0, 1, 0, 0, 0, + 70, 0, 16, 0, 2, 0, + 0, 0, 167, 0, 0, 9, + 50, 0, 16, 0, 2, 0, + 0, 0, 10, 0, 16, 0, + 1, 0, 0, 0, 1, 64, + 0, 0, 0, 0, 0, 0, + 70, 240, 17, 0, 1, 0, + 0, 0, 54, 0, 0, 6, + 50, 48, 32, 0, 4, 0, + 0, 0, 1, 0, 0, 0, + 70, 0, 16, 0, 2, 0, + 0, 0, 167, 0, 0, 9, + 50, 0, 16, 0, 2, 0, + 0, 0, 10, 0, 16, 0, + 1, 0, 0, 0, 1, 64, + 0, 0, 0, 0, 0, 0, + 70, 240, 17, 0, 2, 0, + 0, 0, 54, 0, 0, 6, + 50, 48, 32, 0, 5, 0, + 0, 0, 1, 0, 0, 0, + 70, 0, 16, 0, 2, 0, + 0, 0, 21, 0, 0, 1, + 86, 0, 0, 5, 34, 0, + 16, 0, 1, 0, 0, 0, + 26, 0, 16, 0, 1, 0, + 0, 0, 56, 0, 0, 7, + 34, 0, 16, 0, 1, 0, + 0, 0, 42, 0, 16, 0, + 0, 0, 0, 0, 26, 0, + 16, 0, 1, 0, 0, 0, + 77, 0, 0, 7, 18, 0, + 16, 0, 2, 0, 0, 0, + 18, 0, 16, 0, 3, 0, + 0, 0, 26, 0, 16, 0, + 1, 0, 0, 0, 54, 0, + 0, 6, 34, 0, 16, 0, + 1, 0, 0, 0, 10, 48, + 32, 0, 3, 0, 0, 0, + 1, 0, 0, 0, 54, 0, + 0, 6, 130, 0, 16, 0, + 1, 0, 0, 0, 26, 48, + 32, 0, 3, 0, 0, 0, + 1, 0, 0, 0, 56, 0, + 0, 7, 34, 0, 16, 0, + 2, 0, 0, 0, 58, 0, + 16, 0, 1, 0, 0, 0, + 10, 0, 16, 0, 2, 0, + 0, 0, 50, 0, 0, 10, + 18, 0, 16, 0, 4, 0, + 0, 0, 10, 0, 16, 0, + 3, 0, 0, 0, 26, 0, + 16, 0, 1, 0, 0, 0, + 26, 0, 16, 128, 65, 0, + 0, 0, 2, 0, 0, 0, + 56, 0, 0, 7, 130, 0, + 16, 0, 1, 0, 0, 0, + 58, 0, 16, 0, 1, 0, + 0, 0, 10, 0, 16, 0, + 3, 0, 0, 0, 50, 0, + 0, 9, 34, 0, 16, 0, + 4, 0, 0, 0, 10, 0, + 16, 0, 2, 0, 0, 0, + 26, 0, 16, 0, 1, 0, + 0, 0, 58, 0, 16, 0, + 1, 0, 0, 0, 54, 0, + 0, 6, 34, 0, 16, 0, + 1, 0, 0, 0, 10, 48, + 32, 0, 4, 0, 0, 0, + 1, 0, 0, 0, 54, 0, + 0, 6, 130, 0, 16, 0, + 1, 0, 0, 0, 26, 48, + 32, 0, 4, 0, 0, 0, + 1, 0, 0, 0, 56, 0, + 0, 7, 34, 0, 16, 0, + 2, 0, 0, 0, 58, 0, + 16, 0, 1, 0, 0, 0, + 10, 0, 16, 0, 2, 0, + 0, 0, 50, 0, 0, 10, + 18, 0, 16, 0, 5, 0, + 0, 0, 10, 0, 16, 0, + 3, 0, 0, 0, 26, 0, + 16, 0, 1, 0, 0, 0, + 26, 0, 16, 128, 65, 0, + 0, 0, 2, 0, 0, 0, + 56, 0, 0, 7, 130, 0, + 16, 0, 1, 0, 0, 0, + 58, 0, 16, 0, 1, 0, + 0, 0, 10, 0, 16, 0, + 3, 0, 0, 0, 50, 0, + 0, 9, 34, 0, 16, 0, + 5, 0, 0, 0, 10, 0, + 16, 0, 2, 0, 0, 0, + 26, 0, 16, 0, 1, 0, + 0, 0, 58, 0, 16, 0, + 1, 0, 0, 0, 54, 0, + 0, 6, 34, 0, 16, 0, + 1, 0, 0, 0, 10, 48, + 32, 0, 5, 0, 0, 0, + 1, 0, 0, 0, 54, 0, + 0, 6, 130, 0, 16, 0, + 1, 0, 0, 0, 26, 48, + 32, 0, 5, 0, 0, 0, + 1, 0, 0, 0, 56, 0, + 0, 7, 34, 0, 16, 0, + 2, 0, 0, 0, 58, 0, + 16, 0, 1, 0, 0, 0, + 10, 0, 16, 0, 2, 0, + 0, 0, 50, 0, 0, 10, + 18, 0, 16, 0, 6, 0, + 0, 0, 10, 0, 16, 0, + 3, 0, 0, 0, 26, 0, + 16, 0, 1, 0, 0, 0, + 26, 0, 16, 128, 65, 0, + 0, 0, 2, 0, 0, 0, + 56, 0, 0, 7, 130, 0, + 16, 0, 1, 0, 0, 0, + 58, 0, 16, 0, 1, 0, + 0, 0, 10, 0, 16, 0, + 3, 0, 0, 0, 50, 0, + 0, 9, 34, 0, 16, 0, + 6, 0, 0, 0, 10, 0, + 16, 0, 2, 0, 0, 0, + 26, 0, 16, 0, 1, 0, + 0, 0, 58, 0, 16, 0, + 1, 0, 0, 0, 54, 0, + 0, 6, 162, 0, 16, 0, + 1, 0, 0, 0, 6, 52, + 32, 0, 3, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 8, 50, 0, 16, 0, + 2, 0, 0, 0, 70, 0, + 16, 128, 65, 0, 0, 0, + 4, 0, 0, 0, 214, 5, + 16, 0, 1, 0, 0, 0, + 54, 0, 0, 6, 50, 48, + 32, 0, 3, 0, 0, 0, + 1, 0, 0, 0, 70, 0, + 16, 0, 2, 0, 0, 0, + 0, 0, 0, 7, 162, 0, + 16, 0, 1, 0, 0, 0, + 6, 4, 16, 0, 4, 0, + 0, 0, 86, 13, 16, 0, + 1, 0, 0, 0, 54, 0, + 0, 6, 50, 48, 32, 0, + 3, 0, 0, 0, 0, 0, + 0, 0, 214, 5, 16, 0, + 1, 0, 0, 0, 54, 0, + 0, 6, 194, 0, 16, 0, + 2, 0, 0, 0, 6, 52, + 32, 0, 4, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 8, 50, 0, 16, 0, + 3, 0, 0, 0, 70, 0, + 16, 128, 65, 0, 0, 0, + 5, 0, 0, 0, 230, 10, + 16, 0, 2, 0, 0, 0, + 54, 0, 0, 6, 50, 48, + 32, 0, 4, 0, 0, 0, + 1, 0, 0, 0, 70, 0, + 16, 0, 3, 0, 0, 0, + 0, 0, 0, 7, 194, 0, + 16, 0, 2, 0, 0, 0, + 6, 4, 16, 0, 5, 0, + 0, 0, 166, 14, 16, 0, + 2, 0, 0, 0, 54, 0, + 0, 6, 50, 48, 32, 0, + 4, 0, 0, 0, 0, 0, + 0, 0, 230, 10, 16, 0, + 2, 0, 0, 0, 54, 0, + 0, 6, 194, 0, 16, 0, + 3, 0, 0, 0, 6, 52, + 32, 0, 5, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 8, 50, 0, 16, 0, + 4, 0, 0, 0, 70, 0, + 16, 128, 65, 0, 0, 0, + 6, 0, 0, 0, 230, 10, + 16, 0, 3, 0, 0, 0, + 54, 0, 0, 6, 50, 48, + 32, 0, 5, 0, 0, 0, + 1, 0, 0, 0, 70, 0, + 16, 0, 4, 0, 0, 0, + 0, 0, 0, 7, 194, 0, + 16, 0, 3, 0, 0, 0, + 6, 4, 16, 0, 6, 0, + 0, 0, 166, 14, 16, 0, + 3, 0, 0, 0, 54, 0, + 0, 6, 50, 48, 32, 0, + 5, 0, 0, 0, 0, 0, + 0, 0, 230, 10, 16, 0, + 3, 0, 0, 0, 39, 0, + 0, 7, 18, 0, 16, 0, + 0, 0, 0, 0, 42, 0, + 16, 0, 1, 0, 0, 0, + 1, 64, 0, 0, 0, 0, + 0, 0, 31, 0, 4, 3, + 42, 0, 16, 0, 1, 0, + 0, 0, 54, 0, 0, 5, + 50, 0, 16, 0, 2, 0, + 0, 0, 214, 5, 16, 0, + 1, 0, 0, 0, 54, 0, + 0, 5, 50, 0, 16, 0, + 3, 0, 0, 0, 230, 10, + 16, 0, 2, 0, 0, 0, + 54, 0, 0, 5, 50, 0, + 16, 0, 4, 0, 0, 0, + 230, 10, 16, 0, 3, 0, + 0, 0, 21, 0, 0, 1, + 168, 0, 0, 9, 50, 240, + 17, 0, 2, 0, 0, 0, + 10, 0, 16, 0, 1, 0, + 0, 0, 1, 64, 0, 0, + 0, 0, 0, 0, 70, 0, + 16, 0, 4, 0, 0, 0, + 168, 0, 0, 9, 50, 240, + 17, 0, 1, 0, 0, 0, + 10, 0, 16, 0, 1, 0, + 0, 0, 1, 64, 0, 0, + 0, 0, 0, 0, 70, 0, + 16, 0, 3, 0, 0, 0, + 168, 0, 0, 9, 50, 240, + 17, 0, 0, 0, 0, 0, + 10, 0, 16, 0, 1, 0, + 0, 0, 1, 64, 0, 0, + 0, 0, 0, 0, 70, 0, + 16, 0, 2, 0, 0, 0, + 21, 0, 0, 1, 190, 24, + 0, 1, 56, 0, 0, 7, + 66, 0, 16, 0, 0, 0, + 0, 0, 42, 0, 16, 0, + 0, 0, 0, 0, 1, 64, + 0, 0, 0, 0, 0, 63, + 54, 0, 0, 5, 18, 0, + 16, 0, 1, 0, 0, 0, + 1, 64, 0, 0, 16, 0, + 0, 0, 18, 0, 0, 1, + 54, 0, 0, 5, 18, 0, + 16, 0, 1, 0, 0, 0, + 1, 64, 0, 0, 8, 0, + 0, 0, 21, 0, 0, 1, + 79, 0, 0, 8, 34, 0, + 16, 0, 1, 0, 0, 0, + 10, 0, 16, 0, 1, 0, + 0, 0, 10, 128, 32, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 31, 0, 4, 3, + 26, 0, 16, 0, 1, 0, + 0, 0, 31, 0, 4, 3, + 58, 0, 16, 0, 0, 0, + 0, 0, 87, 0, 0, 6, + 66, 0, 16, 0, 1, 0, + 0, 0, 10, 0, 2, 0, + 1, 64, 0, 0, 15, 0, + 0, 0, 1, 0, 0, 9, + 50, 0, 16, 0, 2, 0, + 0, 0, 6, 0, 2, 0, + 2, 64, 0, 0, 15, 0, + 0, 0, 16, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 31, 0, 4, 3, + 10, 0, 16, 0, 0, 0, + 0, 0, 167, 0, 0, 9, + 194, 0, 16, 0, 2, 0, + 0, 0, 42, 0, 16, 0, + 1, 0, 0, 0, 1, 64, + 0, 0, 0, 0, 0, 0, + 6, 244, 17, 0, 0, 0, + 0, 0, 54, 0, 0, 6, + 50, 48, 32, 0, 3, 0, + 0, 0, 0, 0, 0, 0, + 230, 10, 16, 0, 2, 0, + 0, 0, 167, 0, 0, 9, + 194, 0, 16, 0, 2, 0, + 0, 0, 42, 0, 16, 0, + 1, 0, 0, 0, 1, 64, + 0, 0, 0, 0, 0, 0, + 6, 244, 17, 0, 1, 0, + 0, 0, 54, 0, 0, 6, + 50, 48, 32, 0, 4, 0, + 0, 0, 0, 0, 0, 0, + 230, 10, 16, 0, 2, 0, + 0, 0, 167, 0, 0, 9, + 194, 0, 16, 0, 2, 0, + 0, 0, 42, 0, 16, 0, + 1, 0, 0, 0, 1, 64, + 0, 0, 0, 0, 0, 0, + 6, 244, 17, 0, 2, 0, + 0, 0, 54, 0, 0, 6, + 50, 48, 32, 0, 5, 0, + 0, 0, 0, 0, 0, 0, + 230, 10, 16, 0, 2, 0, + 0, 0, 18, 0, 0, 1, + 167, 0, 0, 9, 194, 0, + 16, 0, 2, 0, 0, 0, + 42, 0, 16, 0, 1, 0, + 0, 0, 1, 64, 0, 0, + 0, 0, 0, 0, 6, 244, + 17, 0, 0, 0, 0, 0, + 54, 0, 0, 6, 50, 48, + 32, 0, 3, 0, 0, 0, + 1, 0, 0, 0, 230, 10, + 16, 0, 2, 0, 0, 0, + 167, 0, 0, 9, 194, 0, + 16, 0, 2, 0, 0, 0, + 42, 0, 16, 0, 1, 0, + 0, 0, 1, 64, 0, 0, + 0, 0, 0, 0, 6, 244, + 17, 0, 1, 0, 0, 0, + 54, 0, 0, 6, 50, 48, + 32, 0, 4, 0, 0, 0, + 1, 0, 0, 0, 230, 10, + 16, 0, 2, 0, 0, 0, + 167, 0, 0, 9, 194, 0, + 16, 0, 2, 0, 0, 0, + 42, 0, 16, 0, 1, 0, + 0, 0, 1, 64, 0, 0, + 0, 0, 0, 0, 6, 244, + 17, 0, 2, 0, 0, 0, + 54, 0, 0, 6, 50, 48, + 32, 0, 5, 0, 0, 0, + 1, 0, 0, 0, 230, 10, + 16, 0, 2, 0, 0, 0, + 21, 0, 0, 1, 86, 0, + 0, 5, 130, 0, 16, 0, + 1, 0, 0, 0, 10, 0, + 16, 0, 2, 0, 0, 0, + 56, 0, 0, 7, 130, 0, + 16, 0, 1, 0, 0, 0, + 42, 0, 16, 0, 0, 0, + 0, 0, 58, 0, 16, 0, + 1, 0, 0, 0, 77, 0, + 0, 7, 18, 0, 16, 0, + 2, 0, 0, 0, 18, 0, + 16, 0, 3, 0, 0, 0, + 58, 0, 16, 0, 1, 0, + 0, 0, 54, 0, 0, 6, + 130, 0, 16, 0, 1, 0, + 0, 0, 10, 48, 32, 0, + 3, 0, 0, 0, 1, 0, + 0, 0, 54, 0, 0, 6, + 66, 0, 16, 0, 2, 0, + 0, 0, 26, 48, 32, 0, + 3, 0, 0, 0, 1, 0, + 0, 0, 56, 0, 0, 7, + 130, 0, 16, 0, 2, 0, + 0, 0, 42, 0, 16, 0, + 2, 0, 0, 0, 10, 0, + 16, 0, 2, 0, 0, 0, + 50, 0, 0, 10, 18, 0, + 16, 0, 4, 0, 0, 0, + 10, 0, 16, 0, 3, 0, + 0, 0, 58, 0, 16, 0, + 1, 0, 0, 0, 58, 0, + 16, 128, 65, 0, 0, 0, + 2, 0, 0, 0, 56, 0, + 0, 7, 66, 0, 16, 0, + 2, 0, 0, 0, 42, 0, + 16, 0, 2, 0, 0, 0, + 10, 0, 16, 0, 3, 0, + 0, 0, 50, 0, 0, 9, + 34, 0, 16, 0, 4, 0, + 0, 0, 10, 0, 16, 0, + 2, 0, 0, 0, 58, 0, + 16, 0, 1, 0, 0, 0, + 42, 0, 16, 0, 2, 0, + 0, 0, 54, 0, 0, 6, + 130, 0, 16, 0, 1, 0, + 0, 0, 10, 48, 32, 0, + 4, 0, 0, 0, 1, 0, + 0, 0, 54, 0, 0, 6, + 66, 0, 16, 0, 2, 0, + 0, 0, 26, 48, 32, 0, + 4, 0, 0, 0, 1, 0, + 0, 0, 56, 0, 0, 7, + 130, 0, 16, 0, 2, 0, + 0, 0, 42, 0, 16, 0, + 2, 0, 0, 0, 10, 0, + 16, 0, 2, 0, 0, 0, + 50, 0, 0, 10, 18, 0, + 16, 0, 5, 0, 0, 0, + 10, 0, 16, 0, 3, 0, + 0, 0, 58, 0, 16, 0, + 1, 0, 0, 0, 58, 0, + 16, 128, 65, 0, 0, 0, + 2, 0, 0, 0, 56, 0, + 0, 7, 66, 0, 16, 0, + 2, 0, 0, 0, 42, 0, + 16, 0, 2, 0, 0, 0, + 10, 0, 16, 0, 3, 0, + 0, 0, 50, 0, 0, 9, + 34, 0, 16, 0, 5, 0, + 0, 0, 10, 0, 16, 0, + 2, 0, 0, 0, 58, 0, + 16, 0, 1, 0, 0, 0, + 42, 0, 16, 0, 2, 0, + 0, 0, 54, 0, 0, 6, + 130, 0, 16, 0, 1, 0, + 0, 0, 10, 48, 32, 0, + 5, 0, 0, 0, 1, 0, + 0, 0, 54, 0, 0, 6, + 66, 0, 16, 0, 2, 0, + 0, 0, 26, 48, 32, 0, + 5, 0, 0, 0, 1, 0, + 0, 0, 56, 0, 0, 7, + 130, 0, 16, 0, 2, 0, + 0, 0, 42, 0, 16, 0, + 2, 0, 0, 0, 10, 0, + 16, 0, 2, 0, 0, 0, + 50, 0, 0, 10, 18, 0, + 16, 0, 6, 0, 0, 0, + 10, 0, 16, 0, 3, 0, + 0, 0, 58, 0, 16, 0, + 1, 0, 0, 0, 58, 0, + 16, 128, 65, 0, 0, 0, + 2, 0, 0, 0, 56, 0, + 0, 7, 66, 0, 16, 0, + 2, 0, 0, 0, 42, 0, + 16, 0, 2, 0, 0, 0, + 10, 0, 16, 0, 3, 0, + 0, 0, 50, 0, 0, 9, + 34, 0, 16, 0, 6, 0, + 0, 0, 10, 0, 16, 0, + 2, 0, 0, 0, 58, 0, + 16, 0, 1, 0, 0, 0, + 42, 0, 16, 0, 2, 0, + 0, 0, 54, 0, 0, 6, + 82, 0, 16, 0, 2, 0, + 0, 0, 6, 49, 32, 0, + 3, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 8, + 50, 0, 16, 0, 3, 0, + 0, 0, 70, 0, 16, 128, + 65, 0, 0, 0, 4, 0, + 0, 0, 134, 0, 16, 0, + 2, 0, 0, 0, 54, 0, + 0, 6, 50, 48, 32, 0, + 3, 0, 0, 0, 1, 0, + 0, 0, 70, 0, 16, 0, + 3, 0, 0, 0, 0, 0, + 0, 7, 82, 0, 16, 0, + 2, 0, 0, 0, 6, 1, + 16, 0, 4, 0, 0, 0, + 6, 2, 16, 0, 2, 0, + 0, 0, 54, 0, 0, 6, + 50, 48, 32, 0, 3, 0, + 0, 0, 0, 0, 0, 0, + 134, 0, 16, 0, 2, 0, + 0, 0, 54, 0, 0, 6, + 194, 0, 16, 0, 3, 0, + 0, 0, 6, 52, 32, 0, + 4, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 8, + 50, 0, 16, 0, 4, 0, + 0, 0, 70, 0, 16, 128, + 65, 0, 0, 0, 5, 0, + 0, 0, 230, 10, 16, 0, + 3, 0, 0, 0, 54, 0, + 0, 6, 50, 48, 32, 0, + 4, 0, 0, 0, 1, 0, + 0, 0, 70, 0, 16, 0, + 4, 0, 0, 0, 0, 0, + 0, 7, 194, 0, 16, 0, + 3, 0, 0, 0, 6, 4, + 16, 0, 5, 0, 0, 0, + 166, 14, 16, 0, 3, 0, + 0, 0, 54, 0, 0, 6, + 50, 48, 32, 0, 4, 0, + 0, 0, 0, 0, 0, 0, + 230, 10, 16, 0, 3, 0, + 0, 0, 54, 0, 0, 6, + 194, 0, 16, 0, 4, 0, + 0, 0, 6, 52, 32, 0, + 5, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 8, + 50, 0, 16, 0, 5, 0, + 0, 0, 70, 0, 16, 128, + 65, 0, 0, 0, 6, 0, + 0, 0, 230, 10, 16, 0, + 4, 0, 0, 0, 54, 0, + 0, 6, 50, 48, 32, 0, + 5, 0, 0, 0, 1, 0, + 0, 0, 70, 0, 16, 0, + 5, 0, 0, 0, 0, 0, + 0, 7, 194, 0, 16, 0, + 4, 0, 0, 0, 6, 4, + 16, 0, 6, 0, 0, 0, + 166, 14, 16, 0, 4, 0, + 0, 0, 54, 0, 0, 6, + 50, 48, 32, 0, 5, 0, + 0, 0, 0, 0, 0, 0, + 230, 10, 16, 0, 4, 0, + 0, 0, 39, 0, 0, 7, + 18, 0, 16, 0, 0, 0, + 0, 0, 26, 0, 16, 0, + 2, 0, 0, 0, 1, 64, + 0, 0, 0, 0, 0, 0, + 31, 0, 4, 3, 26, 0, + 16, 0, 2, 0, 0, 0, + 54, 0, 0, 5, 50, 0, + 16, 0, 3, 0, 0, 0, + 134, 0, 16, 0, 2, 0, + 0, 0, 54, 0, 0, 5, + 50, 0, 16, 0, 4, 0, + 0, 0, 230, 10, 16, 0, + 3, 0, 0, 0, 54, 0, + 0, 5, 50, 0, 16, 0, + 5, 0, 0, 0, 230, 10, + 16, 0, 4, 0, 0, 0, + 21, 0, 0, 1, 168, 0, + 0, 9, 50, 240, 17, 0, + 2, 0, 0, 0, 42, 0, + 16, 0, 1, 0, 0, 0, + 1, 64, 0, 0, 0, 0, + 0, 0, 70, 0, 16, 0, + 5, 0, 0, 0, 168, 0, + 0, 9, 50, 240, 17, 0, + 1, 0, 0, 0, 42, 0, + 16, 0, 1, 0, 0, 0, + 1, 64, 0, 0, 0, 0, + 0, 0, 70, 0, 16, 0, + 4, 0, 0, 0, 168, 0, + 0, 9, 50, 240, 17, 0, + 0, 0, 0, 0, 42, 0, + 16, 0, 1, 0, 0, 0, + 1, 64, 0, 0, 0, 0, + 0, 0, 70, 0, 16, 0, + 3, 0, 0, 0, 21, 0, + 0, 1, 190, 24, 0, 1, + 56, 0, 0, 7, 66, 0, + 16, 0, 0, 0, 0, 0, + 42, 0, 16, 0, 0, 0, + 0, 0, 1, 64, 0, 0, + 0, 0, 0, 63, 54, 0, + 0, 5, 18, 0, 16, 0, + 1, 0, 0, 0, 1, 64, + 0, 0, 32, 0, 0, 0, + 21, 0, 0, 1, 79, 0, + 0, 8, 66, 0, 16, 0, + 1, 0, 0, 0, 10, 0, + 16, 0, 1, 0, 0, 0, + 10, 128, 32, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 1, 0, 0, 7, 34, 0, + 16, 0, 1, 0, 0, 0, + 42, 0, 16, 0, 1, 0, + 0, 0, 26, 0, 16, 0, + 1, 0, 0, 0, 31, 0, + 4, 3, 26, 0, 16, 0, + 1, 0, 0, 0, 31, 0, + 4, 3, 58, 0, 16, 0, + 0, 0, 0, 0, 87, 0, + 0, 6, 66, 0, 16, 0, + 1, 0, 0, 0, 10, 0, + 2, 0, 1, 64, 0, 0, + 31, 0, 0, 0, 1, 0, + 0, 9, 50, 0, 16, 0, + 2, 0, 0, 0, 6, 0, + 2, 0, 2, 64, 0, 0, + 31, 0, 0, 0, 32, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 31, 0, + 4, 3, 10, 0, 16, 0, + 0, 0, 0, 0, 167, 0, + 0, 9, 194, 0, 16, 0, + 2, 0, 0, 0, 42, 0, + 16, 0, 1, 0, 0, 0, + 1, 64, 0, 0, 0, 0, + 0, 0, 6, 244, 17, 0, + 0, 0, 0, 0, 54, 0, + 0, 6, 50, 48, 32, 0, + 3, 0, 0, 0, 0, 0, + 0, 0, 230, 10, 16, 0, + 2, 0, 0, 0, 167, 0, + 0, 9, 194, 0, 16, 0, + 2, 0, 0, 0, 42, 0, + 16, 0, 1, 0, 0, 0, + 1, 64, 0, 0, 0, 0, + 0, 0, 6, 244, 17, 0, + 1, 0, 0, 0, 54, 0, + 0, 6, 50, 48, 32, 0, + 4, 0, 0, 0, 0, 0, + 0, 0, 230, 10, 16, 0, + 2, 0, 0, 0, 167, 0, + 0, 9, 194, 0, 16, 0, + 2, 0, 0, 0, 42, 0, + 16, 0, 1, 0, 0, 0, + 1, 64, 0, 0, 0, 0, + 0, 0, 6, 244, 17, 0, + 2, 0, 0, 0, 54, 0, + 0, 6, 50, 48, 32, 0, + 5, 0, 0, 0, 0, 0, + 0, 0, 230, 10, 16, 0, + 2, 0, 0, 0, 18, 0, + 0, 1, 167, 0, 0, 9, + 194, 0, 16, 0, 2, 0, + 0, 0, 42, 0, 16, 0, + 1, 0, 0, 0, 1, 64, + 0, 0, 0, 0, 0, 0, + 6, 244, 17, 0, 0, 0, + 0, 0, 54, 0, 0, 6, + 50, 48, 32, 0, 3, 0, + 0, 0, 1, 0, 0, 0, + 230, 10, 16, 0, 2, 0, + 0, 0, 167, 0, 0, 9, + 194, 0, 16, 0, 2, 0, + 0, 0, 42, 0, 16, 0, + 1, 0, 0, 0, 1, 64, + 0, 0, 0, 0, 0, 0, + 6, 244, 17, 0, 1, 0, + 0, 0, 54, 0, 0, 6, + 50, 48, 32, 0, 4, 0, + 0, 0, 1, 0, 0, 0, + 230, 10, 16, 0, 2, 0, + 0, 0, 167, 0, 0, 9, + 194, 0, 16, 0, 2, 0, + 0, 0, 42, 0, 16, 0, + 1, 0, 0, 0, 1, 64, + 0, 0, 0, 0, 0, 0, + 6, 244, 17, 0, 2, 0, + 0, 0, 54, 0, 0, 6, + 50, 48, 32, 0, 5, 0, + 0, 0, 1, 0, 0, 0, + 230, 10, 16, 0, 2, 0, + 0, 0, 21, 0, 0, 1, + 86, 0, 0, 5, 130, 0, + 16, 0, 1, 0, 0, 0, + 10, 0, 16, 0, 2, 0, + 0, 0, 56, 0, 0, 7, + 130, 0, 16, 0, 1, 0, + 0, 0, 42, 0, 16, 0, + 0, 0, 0, 0, 58, 0, + 16, 0, 1, 0, 0, 0, + 77, 0, 0, 7, 18, 0, + 16, 0, 2, 0, 0, 0, + 18, 0, 16, 0, 3, 0, + 0, 0, 58, 0, 16, 0, + 1, 0, 0, 0, 54, 0, + 0, 6, 130, 0, 16, 0, + 1, 0, 0, 0, 10, 48, + 32, 0, 3, 0, 0, 0, + 1, 0, 0, 0, 54, 0, + 0, 6, 66, 0, 16, 0, + 2, 0, 0, 0, 26, 48, + 32, 0, 3, 0, 0, 0, + 1, 0, 0, 0, 56, 0, + 0, 7, 130, 0, 16, 0, + 2, 0, 0, 0, 42, 0, + 16, 0, 2, 0, 0, 0, + 10, 0, 16, 0, 2, 0, + 0, 0, 50, 0, 0, 10, + 18, 0, 16, 0, 4, 0, + 0, 0, 10, 0, 16, 0, + 3, 0, 0, 0, 58, 0, + 16, 0, 1, 0, 0, 0, + 58, 0, 16, 128, 65, 0, + 0, 0, 2, 0, 0, 0, + 56, 0, 0, 7, 66, 0, + 16, 0, 2, 0, 0, 0, + 42, 0, 16, 0, 2, 0, + 0, 0, 10, 0, 16, 0, + 3, 0, 0, 0, 50, 0, + 0, 9, 34, 0, 16, 0, + 4, 0, 0, 0, 10, 0, + 16, 0, 2, 0, 0, 0, + 58, 0, 16, 0, 1, 0, + 0, 0, 42, 0, 16, 0, + 2, 0, 0, 0, 54, 0, + 0, 6, 130, 0, 16, 0, + 1, 0, 0, 0, 10, 48, + 32, 0, 4, 0, 0, 0, + 1, 0, 0, 0, 54, 0, + 0, 6, 66, 0, 16, 0, + 2, 0, 0, 0, 26, 48, + 32, 0, 4, 0, 0, 0, + 1, 0, 0, 0, 56, 0, + 0, 7, 130, 0, 16, 0, + 2, 0, 0, 0, 42, 0, + 16, 0, 2, 0, 0, 0, + 10, 0, 16, 0, 2, 0, + 0, 0, 50, 0, 0, 10, + 18, 0, 16, 0, 5, 0, + 0, 0, 10, 0, 16, 0, + 3, 0, 0, 0, 58, 0, + 16, 0, 1, 0, 0, 0, + 58, 0, 16, 128, 65, 0, + 0, 0, 2, 0, 0, 0, + 56, 0, 0, 7, 66, 0, + 16, 0, 2, 0, 0, 0, + 42, 0, 16, 0, 2, 0, + 0, 0, 10, 0, 16, 0, + 3, 0, 0, 0, 50, 0, + 0, 9, 34, 0, 16, 0, + 5, 0, 0, 0, 10, 0, + 16, 0, 2, 0, 0, 0, + 58, 0, 16, 0, 1, 0, + 0, 0, 42, 0, 16, 0, + 2, 0, 0, 0, 54, 0, + 0, 6, 130, 0, 16, 0, + 1, 0, 0, 0, 10, 48, + 32, 0, 5, 0, 0, 0, + 1, 0, 0, 0, 54, 0, + 0, 6, 66, 0, 16, 0, + 2, 0, 0, 0, 26, 48, + 32, 0, 5, 0, 0, 0, + 1, 0, 0, 0, 56, 0, + 0, 7, 130, 0, 16, 0, + 2, 0, 0, 0, 42, 0, + 16, 0, 2, 0, 0, 0, + 10, 0, 16, 0, 2, 0, + 0, 0, 50, 0, 0, 10, + 18, 0, 16, 0, 6, 0, + 0, 0, 10, 0, 16, 0, + 3, 0, 0, 0, 58, 0, + 16, 0, 1, 0, 0, 0, + 58, 0, 16, 128, 65, 0, + 0, 0, 2, 0, 0, 0, + 56, 0, 0, 7, 66, 0, + 16, 0, 2, 0, 0, 0, + 42, 0, 16, 0, 2, 0, + 0, 0, 10, 0, 16, 0, + 3, 0, 0, 0, 50, 0, + 0, 9, 34, 0, 16, 0, + 6, 0, 0, 0, 10, 0, + 16, 0, 2, 0, 0, 0, + 58, 0, 16, 0, 1, 0, + 0, 0, 42, 0, 16, 0, + 2, 0, 0, 0, 54, 0, + 0, 6, 82, 0, 16, 0, + 2, 0, 0, 0, 6, 49, + 32, 0, 3, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 8, 50, 0, 16, 0, + 3, 0, 0, 0, 70, 0, + 16, 128, 65, 0, 0, 0, + 4, 0, 0, 0, 134, 0, + 16, 0, 2, 0, 0, 0, + 54, 0, 0, 6, 50, 48, + 32, 0, 3, 0, 0, 0, + 1, 0, 0, 0, 70, 0, + 16, 0, 3, 0, 0, 0, + 0, 0, 0, 7, 82, 0, + 16, 0, 2, 0, 0, 0, + 6, 1, 16, 0, 4, 0, + 0, 0, 6, 2, 16, 0, + 2, 0, 0, 0, 54, 0, + 0, 6, 50, 48, 32, 0, + 3, 0, 0, 0, 0, 0, + 0, 0, 134, 0, 16, 0, + 2, 0, 0, 0, 54, 0, + 0, 6, 194, 0, 16, 0, + 3, 0, 0, 0, 6, 52, + 32, 0, 4, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 8, 50, 0, 16, 0, + 4, 0, 0, 0, 70, 0, + 16, 128, 65, 0, 0, 0, + 5, 0, 0, 0, 230, 10, + 16, 0, 3, 0, 0, 0, + 54, 0, 0, 6, 50, 48, + 32, 0, 4, 0, 0, 0, + 1, 0, 0, 0, 70, 0, + 16, 0, 4, 0, 0, 0, + 0, 0, 0, 7, 194, 0, + 16, 0, 3, 0, 0, 0, + 6, 4, 16, 0, 5, 0, + 0, 0, 166, 14, 16, 0, + 3, 0, 0, 0, 54, 0, + 0, 6, 50, 48, 32, 0, + 4, 0, 0, 0, 0, 0, + 0, 0, 230, 10, 16, 0, + 3, 0, 0, 0, 54, 0, + 0, 6, 194, 0, 16, 0, + 4, 0, 0, 0, 6, 52, + 32, 0, 5, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 8, 50, 0, 16, 0, + 5, 0, 0, 0, 70, 0, + 16, 128, 65, 0, 0, 0, + 6, 0, 0, 0, 230, 10, + 16, 0, 4, 0, 0, 0, + 54, 0, 0, 6, 50, 48, + 32, 0, 5, 0, 0, 0, + 1, 0, 0, 0, 70, 0, + 16, 0, 5, 0, 0, 0, + 0, 0, 0, 7, 194, 0, + 16, 0, 4, 0, 0, 0, + 6, 4, 16, 0, 6, 0, + 0, 0, 166, 14, 16, 0, + 4, 0, 0, 0, 54, 0, + 0, 6, 50, 48, 32, 0, + 5, 0, 0, 0, 0, 0, + 0, 0, 230, 10, 16, 0, + 4, 0, 0, 0, 39, 0, + 0, 7, 18, 0, 16, 0, + 0, 0, 0, 0, 26, 0, + 16, 0, 2, 0, 0, 0, + 1, 64, 0, 0, 0, 0, + 0, 0, 31, 0, 4, 3, + 26, 0, 16, 0, 2, 0, + 0, 0, 54, 0, 0, 5, + 50, 0, 16, 0, 3, 0, + 0, 0, 134, 0, 16, 0, + 2, 0, 0, 0, 54, 0, + 0, 5, 50, 0, 16, 0, + 4, 0, 0, 0, 230, 10, + 16, 0, 3, 0, 0, 0, + 54, 0, 0, 5, 50, 0, + 16, 0, 5, 0, 0, 0, + 230, 10, 16, 0, 4, 0, + 0, 0, 21, 0, 0, 1, + 168, 0, 0, 9, 50, 240, + 17, 0, 2, 0, 0, 0, + 42, 0, 16, 0, 1, 0, + 0, 0, 1, 64, 0, 0, + 0, 0, 0, 0, 70, 0, + 16, 0, 5, 0, 0, 0, + 168, 0, 0, 9, 50, 240, + 17, 0, 1, 0, 0, 0, + 42, 0, 16, 0, 1, 0, + 0, 0, 1, 64, 0, 0, + 0, 0, 0, 0, 70, 0, + 16, 0, 4, 0, 0, 0, + 168, 0, 0, 9, 50, 240, + 17, 0, 0, 0, 0, 0, + 42, 0, 16, 0, 1, 0, + 0, 0, 1, 64, 0, 0, + 0, 0, 0, 0, 70, 0, + 16, 0, 3, 0, 0, 0, + 21, 0, 0, 1, 190, 24, + 0, 1, 56, 0, 0, 7, + 66, 0, 16, 0, 0, 0, + 0, 0, 42, 0, 16, 0, + 0, 0, 0, 0, 1, 64, + 0, 0, 0, 0, 0, 63, + 54, 0, 0, 5, 18, 0, + 16, 0, 1, 0, 0, 0, + 1, 64, 0, 0, 64, 0, + 0, 0, 21, 0, 0, 1, + 79, 0, 0, 8, 66, 0, + 16, 0, 1, 0, 0, 0, + 10, 0, 16, 0, 1, 0, + 0, 0, 10, 128, 32, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 1, 0, 0, 7, + 34, 0, 16, 0, 1, 0, + 0, 0, 42, 0, 16, 0, + 1, 0, 0, 0, 26, 0, + 16, 0, 1, 0, 0, 0, + 31, 0, 4, 3, 26, 0, + 16, 0, 1, 0, 0, 0, + 31, 0, 4, 3, 58, 0, + 16, 0, 0, 0, 0, 0, + 87, 0, 0, 6, 66, 0, + 16, 0, 1, 0, 0, 0, + 10, 0, 2, 0, 1, 64, + 0, 0, 63, 0, 0, 0, + 1, 0, 0, 9, 50, 0, + 16, 0, 2, 0, 0, 0, + 6, 0, 2, 0, 2, 64, + 0, 0, 63, 0, 0, 0, + 64, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 31, 0, 4, 3, 10, 0, + 16, 0, 0, 0, 0, 0, + 167, 0, 0, 9, 194, 0, + 16, 0, 2, 0, 0, 0, + 42, 0, 16, 0, 1, 0, + 0, 0, 1, 64, 0, 0, + 0, 0, 0, 0, 6, 244, + 17, 0, 0, 0, 0, 0, + 54, 0, 0, 6, 50, 48, + 32, 0, 3, 0, 0, 0, + 0, 0, 0, 0, 230, 10, + 16, 0, 2, 0, 0, 0, + 167, 0, 0, 9, 194, 0, + 16, 0, 2, 0, 0, 0, + 42, 0, 16, 0, 1, 0, + 0, 0, 1, 64, 0, 0, + 0, 0, 0, 0, 6, 244, + 17, 0, 1, 0, 0, 0, + 54, 0, 0, 6, 50, 48, + 32, 0, 4, 0, 0, 0, + 0, 0, 0, 0, 230, 10, + 16, 0, 2, 0, 0, 0, + 167, 0, 0, 9, 194, 0, + 16, 0, 2, 0, 0, 0, + 42, 0, 16, 0, 1, 0, + 0, 0, 1, 64, 0, 0, + 0, 0, 0, 0, 6, 244, + 17, 0, 2, 0, 0, 0, + 54, 0, 0, 6, 50, 48, + 32, 0, 5, 0, 0, 0, + 0, 0, 0, 0, 230, 10, + 16, 0, 2, 0, 0, 0, + 18, 0, 0, 1, 167, 0, + 0, 9, 194, 0, 16, 0, + 2, 0, 0, 0, 42, 0, + 16, 0, 1, 0, 0, 0, + 1, 64, 0, 0, 0, 0, + 0, 0, 6, 244, 17, 0, + 0, 0, 0, 0, 54, 0, + 0, 6, 50, 48, 32, 0, + 3, 0, 0, 0, 1, 0, + 0, 0, 230, 10, 16, 0, + 2, 0, 0, 0, 167, 0, + 0, 9, 194, 0, 16, 0, + 2, 0, 0, 0, 42, 0, + 16, 0, 1, 0, 0, 0, + 1, 64, 0, 0, 0, 0, + 0, 0, 6, 244, 17, 0, + 1, 0, 0, 0, 54, 0, + 0, 6, 50, 48, 32, 0, + 4, 0, 0, 0, 1, 0, + 0, 0, 230, 10, 16, 0, + 2, 0, 0, 0, 167, 0, + 0, 9, 194, 0, 16, 0, + 2, 0, 0, 0, 42, 0, + 16, 0, 1, 0, 0, 0, + 1, 64, 0, 0, 0, 0, + 0, 0, 6, 244, 17, 0, + 2, 0, 0, 0, 54, 0, + 0, 6, 50, 48, 32, 0, + 5, 0, 0, 0, 1, 0, + 0, 0, 230, 10, 16, 0, + 2, 0, 0, 0, 21, 0, + 0, 1, 86, 0, 0, 5, + 130, 0, 16, 0, 1, 0, + 0, 0, 10, 0, 16, 0, + 2, 0, 0, 0, 56, 0, + 0, 7, 130, 0, 16, 0, + 1, 0, 0, 0, 42, 0, + 16, 0, 0, 0, 0, 0, + 58, 0, 16, 0, 1, 0, + 0, 0, 77, 0, 0, 7, + 18, 0, 16, 0, 2, 0, + 0, 0, 18, 0, 16, 0, + 3, 0, 0, 0, 58, 0, + 16, 0, 1, 0, 0, 0, + 54, 0, 0, 6, 130, 0, + 16, 0, 1, 0, 0, 0, + 10, 48, 32, 0, 3, 0, + 0, 0, 1, 0, 0, 0, + 54, 0, 0, 6, 66, 0, + 16, 0, 2, 0, 0, 0, + 26, 48, 32, 0, 3, 0, + 0, 0, 1, 0, 0, 0, + 56, 0, 0, 7, 130, 0, + 16, 0, 2, 0, 0, 0, + 42, 0, 16, 0, 2, 0, + 0, 0, 10, 0, 16, 0, + 2, 0, 0, 0, 50, 0, + 0, 10, 18, 0, 16, 0, + 4, 0, 0, 0, 10, 0, + 16, 0, 3, 0, 0, 0, + 58, 0, 16, 0, 1, 0, + 0, 0, 58, 0, 16, 128, + 65, 0, 0, 0, 2, 0, + 0, 0, 56, 0, 0, 7, + 66, 0, 16, 0, 2, 0, + 0, 0, 42, 0, 16, 0, + 2, 0, 0, 0, 10, 0, + 16, 0, 3, 0, 0, 0, + 50, 0, 0, 9, 34, 0, + 16, 0, 4, 0, 0, 0, + 10, 0, 16, 0, 2, 0, + 0, 0, 58, 0, 16, 0, + 1, 0, 0, 0, 42, 0, + 16, 0, 2, 0, 0, 0, + 54, 0, 0, 6, 130, 0, + 16, 0, 1, 0, 0, 0, + 10, 48, 32, 0, 4, 0, + 0, 0, 1, 0, 0, 0, + 54, 0, 0, 6, 66, 0, + 16, 0, 2, 0, 0, 0, + 26, 48, 32, 0, 4, 0, + 0, 0, 1, 0, 0, 0, + 56, 0, 0, 7, 130, 0, + 16, 0, 2, 0, 0, 0, + 42, 0, 16, 0, 2, 0, + 0, 0, 10, 0, 16, 0, + 2, 0, 0, 0, 50, 0, + 0, 10, 18, 0, 16, 0, + 5, 0, 0, 0, 10, 0, + 16, 0, 3, 0, 0, 0, + 58, 0, 16, 0, 1, 0, + 0, 0, 58, 0, 16, 128, + 65, 0, 0, 0, 2, 0, + 0, 0, 56, 0, 0, 7, + 66, 0, 16, 0, 2, 0, + 0, 0, 42, 0, 16, 0, + 2, 0, 0, 0, 10, 0, + 16, 0, 3, 0, 0, 0, + 50, 0, 0, 9, 34, 0, + 16, 0, 5, 0, 0, 0, + 10, 0, 16, 0, 2, 0, + 0, 0, 58, 0, 16, 0, + 1, 0, 0, 0, 42, 0, + 16, 0, 2, 0, 0, 0, + 54, 0, 0, 6, 130, 0, + 16, 0, 1, 0, 0, 0, + 10, 48, 32, 0, 5, 0, + 0, 0, 1, 0, 0, 0, + 54, 0, 0, 6, 66, 0, + 16, 0, 2, 0, 0, 0, + 26, 48, 32, 0, 5, 0, + 0, 0, 1, 0, 0, 0, + 56, 0, 0, 7, 130, 0, + 16, 0, 2, 0, 0, 0, + 42, 0, 16, 0, 2, 0, + 0, 0, 10, 0, 16, 0, + 2, 0, 0, 0, 50, 0, + 0, 10, 18, 0, 16, 0, + 6, 0, 0, 0, 10, 0, + 16, 0, 3, 0, 0, 0, + 58, 0, 16, 0, 1, 0, + 0, 0, 58, 0, 16, 128, + 65, 0, 0, 0, 2, 0, + 0, 0, 56, 0, 0, 7, + 66, 0, 16, 0, 2, 0, + 0, 0, 42, 0, 16, 0, + 2, 0, 0, 0, 10, 0, + 16, 0, 3, 0, 0, 0, + 50, 0, 0, 9, 34, 0, + 16, 0, 6, 0, 0, 0, + 10, 0, 16, 0, 2, 0, + 0, 0, 58, 0, 16, 0, + 1, 0, 0, 0, 42, 0, + 16, 0, 2, 0, 0, 0, + 54, 0, 0, 6, 82, 0, + 16, 0, 2, 0, 0, 0, + 6, 49, 32, 0, 3, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 8, 50, 0, + 16, 0, 3, 0, 0, 0, + 70, 0, 16, 128, 65, 0, + 0, 0, 4, 0, 0, 0, + 134, 0, 16, 0, 2, 0, + 0, 0, 54, 0, 0, 6, + 50, 48, 32, 0, 3, 0, + 0, 0, 1, 0, 0, 0, + 70, 0, 16, 0, 3, 0, + 0, 0, 0, 0, 0, 7, + 82, 0, 16, 0, 2, 0, + 0, 0, 6, 1, 16, 0, + 4, 0, 0, 0, 6, 2, + 16, 0, 2, 0, 0, 0, + 54, 0, 0, 6, 50, 48, + 32, 0, 3, 0, 0, 0, + 0, 0, 0, 0, 134, 0, + 16, 0, 2, 0, 0, 0, + 54, 0, 0, 6, 194, 0, + 16, 0, 3, 0, 0, 0, + 6, 52, 32, 0, 4, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 8, 50, 0, + 16, 0, 4, 0, 0, 0, + 70, 0, 16, 128, 65, 0, + 0, 0, 5, 0, 0, 0, + 230, 10, 16, 0, 3, 0, + 0, 0, 54, 0, 0, 6, + 50, 48, 32, 0, 4, 0, + 0, 0, 1, 0, 0, 0, + 70, 0, 16, 0, 4, 0, + 0, 0, 0, 0, 0, 7, + 194, 0, 16, 0, 3, 0, + 0, 0, 6, 4, 16, 0, + 5, 0, 0, 0, 166, 14, + 16, 0, 3, 0, 0, 0, + 54, 0, 0, 6, 50, 48, + 32, 0, 4, 0, 0, 0, + 0, 0, 0, 0, 230, 10, + 16, 0, 3, 0, 0, 0, + 54, 0, 0, 6, 194, 0, + 16, 0, 4, 0, 0, 0, + 6, 52, 32, 0, 5, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 8, 50, 0, + 16, 0, 5, 0, 0, 0, + 70, 0, 16, 128, 65, 0, + 0, 0, 6, 0, 0, 0, + 230, 10, 16, 0, 4, 0, + 0, 0, 54, 0, 0, 6, + 50, 48, 32, 0, 5, 0, + 0, 0, 1, 0, 0, 0, + 70, 0, 16, 0, 5, 0, + 0, 0, 0, 0, 0, 7, + 194, 0, 16, 0, 4, 0, + 0, 0, 6, 4, 16, 0, + 6, 0, 0, 0, 166, 14, + 16, 0, 4, 0, 0, 0, + 54, 0, 0, 6, 50, 48, + 32, 0, 5, 0, 0, 0, + 0, 0, 0, 0, 230, 10, + 16, 0, 4, 0, 0, 0, + 39, 0, 0, 7, 18, 0, + 16, 0, 0, 0, 0, 0, + 26, 0, 16, 0, 2, 0, + 0, 0, 1, 64, 0, 0, + 0, 0, 0, 0, 31, 0, + 4, 3, 26, 0, 16, 0, + 2, 0, 0, 0, 54, 0, + 0, 5, 50, 0, 16, 0, + 3, 0, 0, 0, 134, 0, + 16, 0, 2, 0, 0, 0, + 54, 0, 0, 5, 50, 0, + 16, 0, 4, 0, 0, 0, + 230, 10, 16, 0, 3, 0, + 0, 0, 54, 0, 0, 5, + 50, 0, 16, 0, 5, 0, + 0, 0, 230, 10, 16, 0, + 4, 0, 0, 0, 21, 0, + 0, 1, 168, 0, 0, 9, + 50, 240, 17, 0, 2, 0, + 0, 0, 42, 0, 16, 0, + 1, 0, 0, 0, 1, 64, + 0, 0, 0, 0, 0, 0, + 70, 0, 16, 0, 5, 0, + 0, 0, 168, 0, 0, 9, + 50, 240, 17, 0, 1, 0, + 0, 0, 42, 0, 16, 0, + 1, 0, 0, 0, 1, 64, + 0, 0, 0, 0, 0, 0, + 70, 0, 16, 0, 4, 0, + 0, 0, 168, 0, 0, 9, + 50, 240, 17, 0, 0, 0, + 0, 0, 42, 0, 16, 0, + 1, 0, 0, 0, 1, 64, + 0, 0, 0, 0, 0, 0, + 70, 0, 16, 0, 3, 0, + 0, 0, 21, 0, 0, 1, + 190, 24, 0, 1, 56, 0, + 0, 7, 66, 0, 16, 0, + 0, 0, 0, 0, 42, 0, + 16, 0, 0, 0, 0, 0, + 1, 64, 0, 0, 0, 0, + 0, 63, 54, 0, 0, 5, + 18, 0, 16, 0, 1, 0, + 0, 0, 1, 64, 0, 0, + 128, 0, 0, 0, 21, 0, + 0, 1, 79, 0, 0, 8, + 66, 0, 16, 0, 1, 0, + 0, 0, 10, 0, 16, 0, + 1, 0, 0, 0, 10, 128, + 32, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 1, 0, + 0, 7, 34, 0, 16, 0, + 1, 0, 0, 0, 42, 0, + 16, 0, 1, 0, 0, 0, + 26, 0, 16, 0, 1, 0, + 0, 0, 31, 0, 4, 3, + 26, 0, 16, 0, 1, 0, + 0, 0, 31, 0, 4, 3, + 58, 0, 16, 0, 0, 0, + 0, 0, 87, 0, 0, 6, + 66, 0, 16, 0, 1, 0, + 0, 0, 10, 0, 2, 0, + 1, 64, 0, 0, 127, 0, + 0, 0, 1, 0, 0, 9, + 50, 0, 16, 0, 2, 0, + 0, 0, 6, 0, 2, 0, + 2, 64, 0, 0, 127, 0, + 0, 0, 128, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 31, 0, 4, 3, + 10, 0, 16, 0, 0, 0, + 0, 0, 167, 0, 0, 9, + 194, 0, 16, 0, 2, 0, + 0, 0, 42, 0, 16, 0, + 1, 0, 0, 0, 1, 64, + 0, 0, 0, 0, 0, 0, + 6, 244, 17, 0, 0, 0, + 0, 0, 54, 0, 0, 6, + 50, 48, 32, 0, 3, 0, + 0, 0, 0, 0, 0, 0, + 230, 10, 16, 0, 2, 0, + 0, 0, 167, 0, 0, 9, + 194, 0, 16, 0, 2, 0, + 0, 0, 42, 0, 16, 0, + 1, 0, 0, 0, 1, 64, + 0, 0, 0, 0, 0, 0, + 6, 244, 17, 0, 1, 0, + 0, 0, 54, 0, 0, 6, + 50, 48, 32, 0, 4, 0, + 0, 0, 0, 0, 0, 0, + 230, 10, 16, 0, 2, 0, + 0, 0, 167, 0, 0, 9, + 194, 0, 16, 0, 2, 0, + 0, 0, 42, 0, 16, 0, + 1, 0, 0, 0, 1, 64, + 0, 0, 0, 0, 0, 0, + 6, 244, 17, 0, 2, 0, + 0, 0, 54, 0, 0, 6, + 50, 48, 32, 0, 5, 0, + 0, 0, 0, 0, 0, 0, + 230, 10, 16, 0, 2, 0, + 0, 0, 18, 0, 0, 1, + 167, 0, 0, 9, 194, 0, + 16, 0, 2, 0, 0, 0, + 42, 0, 16, 0, 1, 0, + 0, 0, 1, 64, 0, 0, + 0, 0, 0, 0, 6, 244, + 17, 0, 0, 0, 0, 0, + 54, 0, 0, 6, 50, 48, + 32, 0, 3, 0, 0, 0, + 1, 0, 0, 0, 230, 10, + 16, 0, 2, 0, 0, 0, + 167, 0, 0, 9, 194, 0, + 16, 0, 2, 0, 0, 0, + 42, 0, 16, 0, 1, 0, + 0, 0, 1, 64, 0, 0, + 0, 0, 0, 0, 6, 244, + 17, 0, 1, 0, 0, 0, + 54, 0, 0, 6, 50, 48, + 32, 0, 4, 0, 0, 0, + 1, 0, 0, 0, 230, 10, + 16, 0, 2, 0, 0, 0, + 167, 0, 0, 9, 194, 0, + 16, 0, 2, 0, 0, 0, + 42, 0, 16, 0, 1, 0, + 0, 0, 1, 64, 0, 0, + 0, 0, 0, 0, 6, 244, + 17, 0, 2, 0, 0, 0, + 54, 0, 0, 6, 50, 48, + 32, 0, 5, 0, 0, 0, + 1, 0, 0, 0, 230, 10, + 16, 0, 2, 0, 0, 0, + 21, 0, 0, 1, 86, 0, + 0, 5, 130, 0, 16, 0, + 1, 0, 0, 0, 10, 0, + 16, 0, 2, 0, 0, 0, + 56, 0, 0, 7, 130, 0, + 16, 0, 1, 0, 0, 0, + 42, 0, 16, 0, 0, 0, + 0, 0, 58, 0, 16, 0, + 1, 0, 0, 0, 77, 0, + 0, 7, 18, 0, 16, 0, + 2, 0, 0, 0, 18, 0, + 16, 0, 3, 0, 0, 0, + 58, 0, 16, 0, 1, 0, + 0, 0, 54, 0, 0, 6, + 130, 0, 16, 0, 1, 0, + 0, 0, 10, 48, 32, 0, + 3, 0, 0, 0, 1, 0, + 0, 0, 54, 0, 0, 6, + 66, 0, 16, 0, 2, 0, + 0, 0, 26, 48, 32, 0, + 3, 0, 0, 0, 1, 0, + 0, 0, 56, 0, 0, 7, + 130, 0, 16, 0, 2, 0, + 0, 0, 42, 0, 16, 0, + 2, 0, 0, 0, 10, 0, + 16, 0, 2, 0, 0, 0, + 50, 0, 0, 10, 18, 0, + 16, 0, 4, 0, 0, 0, + 10, 0, 16, 0, 3, 0, + 0, 0, 58, 0, 16, 0, + 1, 0, 0, 0, 58, 0, + 16, 128, 65, 0, 0, 0, + 2, 0, 0, 0, 56, 0, + 0, 7, 66, 0, 16, 0, + 2, 0, 0, 0, 42, 0, + 16, 0, 2, 0, 0, 0, + 10, 0, 16, 0, 3, 0, + 0, 0, 50, 0, 0, 9, + 34, 0, 16, 0, 4, 0, + 0, 0, 10, 0, 16, 0, + 2, 0, 0, 0, 58, 0, + 16, 0, 1, 0, 0, 0, + 42, 0, 16, 0, 2, 0, + 0, 0, 54, 0, 0, 6, + 130, 0, 16, 0, 1, 0, + 0, 0, 10, 48, 32, 0, + 4, 0, 0, 0, 1, 0, + 0, 0, 54, 0, 0, 6, + 66, 0, 16, 0, 2, 0, + 0, 0, 26, 48, 32, 0, + 4, 0, 0, 0, 1, 0, + 0, 0, 56, 0, 0, 7, + 130, 0, 16, 0, 2, 0, + 0, 0, 42, 0, 16, 0, + 2, 0, 0, 0, 10, 0, + 16, 0, 2, 0, 0, 0, + 50, 0, 0, 10, 18, 0, + 16, 0, 5, 0, 0, 0, + 10, 0, 16, 0, 3, 0, + 0, 0, 58, 0, 16, 0, + 1, 0, 0, 0, 58, 0, + 16, 128, 65, 0, 0, 0, + 2, 0, 0, 0, 56, 0, + 0, 7, 66, 0, 16, 0, + 2, 0, 0, 0, 42, 0, + 16, 0, 2, 0, 0, 0, + 10, 0, 16, 0, 3, 0, + 0, 0, 50, 0, 0, 9, + 34, 0, 16, 0, 5, 0, + 0, 0, 10, 0, 16, 0, + 2, 0, 0, 0, 58, 0, + 16, 0, 1, 0, 0, 0, + 42, 0, 16, 0, 2, 0, + 0, 0, 54, 0, 0, 6, + 130, 0, 16, 0, 1, 0, + 0, 0, 10, 48, 32, 0, + 5, 0, 0, 0, 1, 0, + 0, 0, 54, 0, 0, 6, + 66, 0, 16, 0, 2, 0, + 0, 0, 26, 48, 32, 0, + 5, 0, 0, 0, 1, 0, + 0, 0, 56, 0, 0, 7, + 130, 0, 16, 0, 2, 0, + 0, 0, 42, 0, 16, 0, + 2, 0, 0, 0, 10, 0, + 16, 0, 2, 0, 0, 0, + 50, 0, 0, 10, 18, 0, + 16, 0, 6, 0, 0, 0, + 10, 0, 16, 0, 3, 0, + 0, 0, 58, 0, 16, 0, + 1, 0, 0, 0, 58, 0, + 16, 128, 65, 0, 0, 0, + 2, 0, 0, 0, 56, 0, + 0, 7, 66, 0, 16, 0, + 2, 0, 0, 0, 42, 0, + 16, 0, 2, 0, 0, 0, + 10, 0, 16, 0, 3, 0, + 0, 0, 50, 0, 0, 9, + 34, 0, 16, 0, 6, 0, + 0, 0, 10, 0, 16, 0, + 2, 0, 0, 0, 58, 0, + 16, 0, 1, 0, 0, 0, + 42, 0, 16, 0, 2, 0, + 0, 0, 54, 0, 0, 6, + 82, 0, 16, 0, 2, 0, + 0, 0, 6, 49, 32, 0, + 3, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 8, + 50, 0, 16, 0, 3, 0, + 0, 0, 70, 0, 16, 128, + 65, 0, 0, 0, 4, 0, + 0, 0, 134, 0, 16, 0, + 2, 0, 0, 0, 54, 0, + 0, 6, 50, 48, 32, 0, + 3, 0, 0, 0, 1, 0, + 0, 0, 70, 0, 16, 0, + 3, 0, 0, 0, 0, 0, + 0, 7, 82, 0, 16, 0, + 2, 0, 0, 0, 6, 1, + 16, 0, 4, 0, 0, 0, + 6, 2, 16, 0, 2, 0, + 0, 0, 54, 0, 0, 6, + 50, 48, 32, 0, 3, 0, + 0, 0, 0, 0, 0, 0, + 134, 0, 16, 0, 2, 0, + 0, 0, 54, 0, 0, 6, + 194, 0, 16, 0, 3, 0, + 0, 0, 6, 52, 32, 0, + 4, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 8, + 50, 0, 16, 0, 4, 0, + 0, 0, 70, 0, 16, 128, + 65, 0, 0, 0, 5, 0, + 0, 0, 230, 10, 16, 0, + 3, 0, 0, 0, 54, 0, + 0, 6, 50, 48, 32, 0, + 4, 0, 0, 0, 1, 0, + 0, 0, 70, 0, 16, 0, + 4, 0, 0, 0, 0, 0, + 0, 7, 194, 0, 16, 0, + 3, 0, 0, 0, 6, 4, + 16, 0, 5, 0, 0, 0, + 166, 14, 16, 0, 3, 0, + 0, 0, 54, 0, 0, 6, + 50, 48, 32, 0, 4, 0, + 0, 0, 0, 0, 0, 0, + 230, 10, 16, 0, 3, 0, + 0, 0, 54, 0, 0, 6, + 194, 0, 16, 0, 4, 0, + 0, 0, 6, 52, 32, 0, + 5, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 8, + 50, 0, 16, 0, 5, 0, + 0, 0, 70, 0, 16, 128, + 65, 0, 0, 0, 6, 0, + 0, 0, 230, 10, 16, 0, + 4, 0, 0, 0, 54, 0, + 0, 6, 50, 48, 32, 0, + 5, 0, 0, 0, 1, 0, + 0, 0, 70, 0, 16, 0, + 5, 0, 0, 0, 0, 0, + 0, 7, 194, 0, 16, 0, + 4, 0, 0, 0, 6, 4, + 16, 0, 6, 0, 0, 0, + 166, 14, 16, 0, 4, 0, + 0, 0, 54, 0, 0, 6, + 50, 48, 32, 0, 5, 0, + 0, 0, 0, 0, 0, 0, + 230, 10, 16, 0, 4, 0, + 0, 0, 39, 0, 0, 7, + 18, 0, 16, 0, 0, 0, + 0, 0, 26, 0, 16, 0, + 2, 0, 0, 0, 1, 64, + 0, 0, 0, 0, 0, 0, + 31, 0, 4, 3, 26, 0, + 16, 0, 2, 0, 0, 0, + 54, 0, 0, 5, 50, 0, + 16, 0, 3, 0, 0, 0, + 134, 0, 16, 0, 2, 0, + 0, 0, 54, 0, 0, 5, + 50, 0, 16, 0, 4, 0, + 0, 0, 230, 10, 16, 0, + 3, 0, 0, 0, 54, 0, + 0, 5, 50, 0, 16, 0, + 5, 0, 0, 0, 230, 10, + 16, 0, 4, 0, 0, 0, + 21, 0, 0, 1, 168, 0, + 0, 9, 50, 240, 17, 0, + 2, 0, 0, 0, 42, 0, + 16, 0, 1, 0, 0, 0, + 1, 64, 0, 0, 0, 0, + 0, 0, 70, 0, 16, 0, + 5, 0, 0, 0, 168, 0, + 0, 9, 50, 240, 17, 0, + 1, 0, 0, 0, 42, 0, + 16, 0, 1, 0, 0, 0, + 1, 64, 0, 0, 0, 0, + 0, 0, 70, 0, 16, 0, + 4, 0, 0, 0, 168, 0, + 0, 9, 50, 240, 17, 0, + 0, 0, 0, 0, 42, 0, + 16, 0, 1, 0, 0, 0, + 1, 64, 0, 0, 0, 0, + 0, 0, 70, 0, 16, 0, + 3, 0, 0, 0, 21, 0, + 0, 1, 190, 24, 0, 1, + 56, 0, 0, 7, 66, 0, + 16, 0, 0, 0, 0, 0, + 42, 0, 16, 0, 0, 0, + 0, 0, 1, 64, 0, 0, + 0, 0, 0, 63, 54, 0, + 0, 5, 18, 0, 16, 0, + 1, 0, 0, 0, 1, 64, + 0, 0, 0, 1, 0, 0, + 21, 0, 0, 1, 79, 0, + 0, 8, 18, 0, 16, 0, + 1, 0, 0, 0, 10, 0, + 16, 0, 1, 0, 0, 0, + 10, 128, 32, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 1, 0, 0, 7, 18, 0, + 16, 0, 1, 0, 0, 0, + 10, 0, 16, 0, 1, 0, + 0, 0, 26, 0, 16, 0, + 1, 0, 0, 0, 31, 0, + 4, 3, 10, 0, 16, 0, + 1, 0, 0, 0, 31, 0, + 4, 3, 58, 0, 16, 0, + 0, 0, 0, 0, 87, 0, + 0, 6, 130, 0, 16, 0, + 0, 0, 0, 0, 10, 0, + 2, 0, 1, 64, 0, 0, + 255, 0, 0, 0, 1, 0, + 0, 6, 18, 0, 16, 0, + 1, 0, 0, 0, 10, 0, + 2, 0, 1, 64, 0, 0, + 255, 0, 0, 0, 31, 0, + 4, 3, 10, 0, 16, 0, + 0, 0, 0, 0, 167, 0, + 0, 9, 98, 0, 16, 0, + 1, 0, 0, 0, 58, 0, + 16, 0, 0, 0, 0, 0, + 1, 64, 0, 0, 0, 0, + 0, 0, 6, 241, 17, 0, + 0, 0, 0, 0, 54, 0, + 0, 6, 50, 48, 32, 0, + 3, 0, 0, 0, 0, 0, + 0, 0, 150, 5, 16, 0, + 1, 0, 0, 0, 167, 0, + 0, 9, 98, 0, 16, 0, + 1, 0, 0, 0, 58, 0, + 16, 0, 0, 0, 0, 0, + 1, 64, 0, 0, 0, 0, + 0, 0, 6, 241, 17, 0, + 1, 0, 0, 0, 54, 0, + 0, 6, 50, 48, 32, 0, + 4, 0, 0, 0, 0, 0, + 0, 0, 150, 5, 16, 0, + 1, 0, 0, 0, 167, 0, + 0, 9, 98, 0, 16, 0, + 1, 0, 0, 0, 58, 0, + 16, 0, 0, 0, 0, 0, + 1, 64, 0, 0, 0, 0, + 0, 0, 6, 241, 17, 0, + 2, 0, 0, 0, 54, 0, + 0, 6, 50, 48, 32, 0, + 5, 0, 0, 0, 0, 0, + 0, 0, 150, 5, 16, 0, + 1, 0, 0, 0, 18, 0, + 0, 1, 167, 0, 0, 9, + 98, 0, 16, 0, 1, 0, + 0, 0, 58, 0, 16, 0, + 0, 0, 0, 0, 1, 64, + 0, 0, 0, 0, 0, 0, + 6, 241, 17, 0, 0, 0, + 0, 0, 54, 0, 0, 6, + 50, 48, 32, 0, 3, 0, + 0, 0, 1, 0, 0, 0, + 150, 5, 16, 0, 1, 0, + 0, 0, 167, 0, 0, 9, + 98, 0, 16, 0, 1, 0, + 0, 0, 58, 0, 16, 0, + 0, 0, 0, 0, 1, 64, + 0, 0, 0, 0, 0, 0, + 6, 241, 17, 0, 1, 0, + 0, 0, 54, 0, 0, 6, + 50, 48, 32, 0, 4, 0, + 0, 0, 1, 0, 0, 0, + 150, 5, 16, 0, 1, 0, + 0, 0, 167, 0, 0, 9, + 146, 0, 16, 0, 0, 0, + 0, 0, 58, 0, 16, 0, + 0, 0, 0, 0, 1, 64, + 0, 0, 0, 0, 0, 0, + 6, 244, 17, 0, 2, 0, + 0, 0, 54, 0, 0, 6, + 50, 48, 32, 0, 5, 0, + 0, 0, 1, 0, 0, 0, + 198, 0, 16, 0, 0, 0, + 0, 0, 21, 0, 0, 1, + 86, 0, 0, 5, 18, 0, + 16, 0, 0, 0, 0, 0, + 10, 0, 16, 0, 1, 0, + 0, 0, 56, 0, 0, 7, + 18, 0, 16, 0, 0, 0, + 0, 0, 42, 0, 16, 0, + 0, 0, 0, 0, 10, 0, + 16, 0, 0, 0, 0, 0, + 77, 0, 0, 7, 18, 0, + 16, 0, 0, 0, 0, 0, + 18, 0, 16, 0, 1, 0, + 0, 0, 10, 0, 16, 0, + 0, 0, 0, 0, 54, 0, + 0, 6, 66, 0, 16, 0, + 0, 0, 0, 0, 10, 48, + 32, 0, 3, 0, 0, 0, + 1, 0, 0, 0, 54, 0, + 0, 6, 130, 0, 16, 0, + 0, 0, 0, 0, 26, 48, + 32, 0, 3, 0, 0, 0, + 1, 0, 0, 0, 56, 0, + 0, 7, 34, 0, 16, 0, + 1, 0, 0, 0, 58, 0, + 16, 0, 0, 0, 0, 0, + 10, 0, 16, 0, 0, 0, + 0, 0, 50, 0, 0, 10, + 18, 0, 16, 0, 2, 0, + 0, 0, 10, 0, 16, 0, + 1, 0, 0, 0, 42, 0, + 16, 0, 0, 0, 0, 0, + 26, 0, 16, 128, 65, 0, + 0, 0, 1, 0, 0, 0, + 56, 0, 0, 7, 130, 0, + 16, 0, 0, 0, 0, 0, + 58, 0, 16, 0, 0, 0, + 0, 0, 10, 0, 16, 0, + 1, 0, 0, 0, 50, 0, + 0, 9, 34, 0, 16, 0, + 2, 0, 0, 0, 10, 0, + 16, 0, 0, 0, 0, 0, + 42, 0, 16, 0, 0, 0, + 0, 0, 58, 0, 16, 0, + 0, 0, 0, 0, 54, 0, + 0, 6, 66, 0, 16, 0, + 0, 0, 0, 0, 10, 48, + 32, 0, 4, 0, 0, 0, + 1, 0, 0, 0, 54, 0, + 0, 6, 130, 0, 16, 0, + 0, 0, 0, 0, 26, 48, + 32, 0, 4, 0, 0, 0, + 1, 0, 0, 0, 56, 0, + 0, 7, 34, 0, 16, 0, + 1, 0, 0, 0, 58, 0, + 16, 0, 0, 0, 0, 0, + 10, 0, 16, 0, 0, 0, + 0, 0, 50, 0, 0, 10, + 18, 0, 16, 0, 3, 0, + 0, 0, 10, 0, 16, 0, + 1, 0, 0, 0, 42, 0, + 16, 0, 0, 0, 0, 0, + 26, 0, 16, 128, 65, 0, + 0, 0, 1, 0, 0, 0, + 56, 0, 0, 7, 130, 0, + 16, 0, 0, 0, 0, 0, + 58, 0, 16, 0, 0, 0, + 0, 0, 10, 0, 16, 0, + 1, 0, 0, 0, 50, 0, + 0, 9, 34, 0, 16, 0, + 3, 0, 0, 0, 10, 0, + 16, 0, 0, 0, 0, 0, + 42, 0, 16, 0, 0, 0, + 0, 0, 58, 0, 16, 0, + 0, 0, 0, 0, 54, 0, + 0, 6, 66, 0, 16, 0, + 0, 0, 0, 0, 10, 48, + 32, 0, 5, 0, 0, 0, + 1, 0, 0, 0, 54, 0, + 0, 6, 130, 0, 16, 0, + 0, 0, 0, 0, 26, 48, + 32, 0, 5, 0, 0, 0, + 1, 0, 0, 0, 56, 0, + 0, 7, 34, 0, 16, 0, + 1, 0, 0, 0, 58, 0, + 16, 0, 0, 0, 0, 0, + 10, 0, 16, 0, 0, 0, + 0, 0, 50, 0, 0, 10, + 18, 0, 16, 0, 4, 0, + 0, 0, 10, 0, 16, 0, + 1, 0, 0, 0, 42, 0, + 16, 0, 0, 0, 0, 0, + 26, 0, 16, 128, 65, 0, + 0, 0, 1, 0, 0, 0, + 56, 0, 0, 7, 130, 0, + 16, 0, 0, 0, 0, 0, + 58, 0, 16, 0, 0, 0, + 0, 0, 10, 0, 16, 0, + 1, 0, 0, 0, 50, 0, + 0, 9, 34, 0, 16, 0, + 4, 0, 0, 0, 10, 0, + 16, 0, 0, 0, 0, 0, + 42, 0, 16, 0, 0, 0, + 0, 0, 58, 0, 16, 0, + 0, 0, 0, 0, 54, 0, + 0, 6, 82, 0, 16, 0, + 0, 0, 0, 0, 6, 49, + 32, 0, 3, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 8, 50, 0, 16, 0, + 1, 0, 0, 0, 70, 0, + 16, 128, 65, 0, 0, 0, + 2, 0, 0, 0, 134, 0, + 16, 0, 0, 0, 0, 0, + 54, 0, 0, 6, 50, 48, + 32, 0, 3, 0, 0, 0, + 1, 0, 0, 0, 70, 0, + 16, 0, 1, 0, 0, 0, + 0, 0, 0, 7, 82, 0, + 16, 0, 0, 0, 0, 0, + 6, 1, 16, 0, 2, 0, + 0, 0, 6, 2, 16, 0, + 0, 0, 0, 0, 54, 0, + 0, 6, 50, 48, 32, 0, + 3, 0, 0, 0, 0, 0, + 0, 0, 134, 0, 16, 0, + 0, 0, 0, 0, 54, 0, + 0, 6, 82, 0, 16, 0, + 0, 0, 0, 0, 6, 49, + 32, 0, 4, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 8, 50, 0, 16, 0, + 1, 0, 0, 0, 70, 0, + 16, 128, 65, 0, 0, 0, + 3, 0, 0, 0, 134, 0, + 16, 0, 0, 0, 0, 0, + 54, 0, 0, 6, 50, 48, + 32, 0, 4, 0, 0, 0, + 1, 0, 0, 0, 70, 0, + 16, 0, 1, 0, 0, 0, + 0, 0, 0, 7, 82, 0, + 16, 0, 0, 0, 0, 0, + 6, 1, 16, 0, 3, 0, + 0, 0, 6, 2, 16, 0, + 0, 0, 0, 0, 54, 0, + 0, 6, 50, 48, 32, 0, + 4, 0, 0, 0, 0, 0, + 0, 0, 134, 0, 16, 0, + 0, 0, 0, 0, 54, 0, + 0, 6, 82, 0, 16, 0, + 0, 0, 0, 0, 6, 49, + 32, 0, 5, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 8, 50, 0, 16, 0, + 1, 0, 0, 0, 70, 0, + 16, 128, 65, 0, 0, 0, + 4, 0, 0, 0, 134, 0, + 16, 0, 0, 0, 0, 0, + 54, 0, 0, 6, 50, 48, + 32, 0, 5, 0, 0, 0, + 1, 0, 0, 0, 70, 0, + 16, 0, 1, 0, 0, 0, + 0, 0, 0, 7, 82, 0, + 16, 0, 0, 0, 0, 0, + 6, 1, 16, 0, 4, 0, + 0, 0, 6, 2, 16, 0, + 0, 0, 0, 0, 54, 0, + 0, 6, 50, 48, 32, 0, + 5, 0, 0, 0, 0, 0, + 0, 0, 134, 0, 16, 0, + 0, 0, 0, 0, 21, 0, + 0, 1, 21, 0, 0, 1, + 31, 0, 4, 3, 26, 0, + 16, 0, 0, 0, 0, 0, + 54, 0, 0, 6, 50, 0, + 16, 0, 0, 0, 0, 0, + 70, 48, 32, 0, 3, 0, + 0, 0, 0, 0, 0, 0, + 54, 0, 0, 6, 194, 0, + 16, 0, 0, 0, 0, 0, + 6, 52, 32, 0, 3, 0, + 0, 0, 1, 0, 0, 0, + 54, 0, 0, 6, 50, 0, + 16, 0, 1, 0, 0, 0, + 70, 48, 32, 0, 4, 0, + 0, 0, 0, 0, 0, 0, + 54, 0, 0, 6, 50, 0, + 16, 0, 2, 0, 0, 0, + 70, 48, 32, 0, 4, 0, + 0, 0, 1, 0, 0, 0, + 54, 0, 0, 6, 194, 0, + 16, 0, 1, 0, 0, 0, + 6, 52, 32, 0, 5, 0, + 0, 0, 0, 0, 0, 0, + 54, 0, 0, 6, 194, 0, + 16, 0, 2, 0, 0, 0, + 6, 52, 32, 0, 5, 0, + 0, 0, 1, 0, 0, 0, + 35, 0, 0, 8, 18, 0, + 16, 0, 3, 0, 0, 0, + 26, 0, 2, 0, 10, 128, + 32, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 10, 0, + 2, 0, 168, 0, 0, 9, + 50, 224, 17, 0, 0, 0, + 0, 0, 10, 0, 16, 0, + 3, 0, 0, 0, 1, 64, + 0, 0, 0, 0, 0, 0, + 70, 0, 16, 0, 0, 0, + 0, 0, 30, 0, 0, 8, + 18, 0, 16, 0, 0, 0, + 0, 0, 10, 0, 16, 0, + 3, 0, 0, 0, 42, 128, + 32, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 168, 0, + 0, 9, 50, 224, 17, 0, + 0, 0, 0, 0, 10, 0, + 16, 0, 0, 0, 0, 0, + 1, 64, 0, 0, 0, 0, + 0, 0, 230, 10, 16, 0, + 0, 0, 0, 0, 168, 0, + 0, 9, 242, 224, 17, 0, + 1, 0, 0, 0, 10, 0, + 16, 0, 3, 0, 0, 0, + 1, 64, 0, 0, 0, 0, + 0, 0, 70, 14, 16, 0, + 1, 0, 0, 0, 168, 0, + 0, 9, 242, 224, 17, 0, + 1, 0, 0, 0, 10, 0, + 16, 0, 0, 0, 0, 0, + 1, 64, 0, 0, 0, 0, + 0, 0, 70, 14, 16, 0, + 2, 0, 0, 0, 21, 0, + 0, 1, 62, 0, 0, 1, + 83, 70, 73, 48, 8, 0, + 0, 0, 1, 0, 0, 0, + 0, 0, 0, 0 +}; diff --git a/src/generated/FoamGeneration_glsl_ps.h b/src/generated/FoamGeneration_glsl_ps.h new file mode 100644 index 0000000..28f10d2 --- /dev/null +++ b/src/generated/FoamGeneration_glsl_ps.h @@ -0,0 +1,31 @@ +"#version 130\n" +"\t\n" +"\t\n" +"\t\n" +"\t\n" +"\t\n" +"\t\n" +"\t\n" +"\t\n" +"\t\n" +"\t\n" +" \n" +"\t\n" +"\t\n" +"uniform vec4 nv_waveworks_impl_0_1; \n" +"uniform vec4 nv_waveworks_impl_0_2; \n" +"uniform vec4 nv_waveworks_impl_0_3; \n" +"uniform sampler2D nv_waveworks_impl_0_5;\n" +"varying vec2 nv_waveworks_impl_0_6;\n" +"void main()\n" +"{\n" +"\tvec2 nv_waveworks_impl_0_11 = nv_waveworks_impl_0_3.xy*nv_waveworks_impl_0_1.x;\n" +"\tfloat nv_waveworks_impl_0_12\t= dot(nv_waveworks_impl_0_2, texture(nv_waveworks_impl_0_5,nv_waveworks_impl_0_6.xy + nv_waveworks_impl_0_11));\n" +"\tfloat nv_waveworks_impl_0_13\t= dot(nv_waveworks_impl_0_2, texture(nv_waveworks_impl_0_5,nv_waveworks_impl_0_6.xy - nv_waveworks_impl_0_11));\n" +"\tfloat nv_waveworks_impl_0_14\t= dot(nv_waveworks_impl_0_2, texture(nv_waveworks_impl_0_5,nv_waveworks_impl_0_6.xy + nv_waveworks_impl_0_11*2.0));\n" +"\tfloat nv_waveworks_impl_0_15\t= dot(nv_waveworks_impl_0_2, texture(nv_waveworks_impl_0_5,nv_waveworks_impl_0_6.xy - nv_waveworks_impl_0_11*2.0));\n" +"\tfloat nv_waveworks_impl_0_16 = max(0,texture(nv_waveworks_impl_0_5,nv_waveworks_impl_0_6.xy).z);\n" +"\tfloat nv_waveworks_impl_0_17 = nv_waveworks_impl_0_1.y*((nv_waveworks_impl_0_12 + nv_waveworks_impl_0_13 + nv_waveworks_impl_0_14 + nv_waveworks_impl_0_15)*0.25 + max(0,(1.0-nv_waveworks_impl_0_16-nv_waveworks_impl_0_1.w))*nv_waveworks_impl_0_1.z);\n" +"\tnv_waveworks_impl_0_17 = min(1.0,nv_waveworks_impl_0_17);\n" +"\tgl_FragColor = vec4(nv_waveworks_impl_0_17,nv_waveworks_impl_0_17,nv_waveworks_impl_0_17,nv_waveworks_impl_0_17);\n" +"}\n" diff --git a/src/generated/FoamGeneration_glsl_vs.h b/src/generated/FoamGeneration_glsl_vs.h new file mode 100644 index 0000000..f4df454 --- /dev/null +++ b/src/generated/FoamGeneration_glsl_vs.h @@ -0,0 +1,26 @@ +"#version 130\n" +"\t\n" +"\t\n" +"\t\n" +"\t\n" +"\t\n" +"\t\n" +"\t\n" +"\t\n" +"\t\n" +"\t\n" +" \n" +"\t\n" +"\t\n" +"uniform vec4 nv_waveworks_impl_0_1; \n" +"uniform vec4 nv_waveworks_impl_0_2; \n" +"uniform vec4 nv_waveworks_impl_0_3; \n" +"uniform sampler2D nv_waveworks_impl_0_5;\n" +"varying vec2 nv_waveworks_impl_0_6;\n" +"attribute vec4 nv_waveworks_impl_0_7;\n" +"attribute vec2 nv_waveworks_impl_0_8;\n" +"void main()\n" +"{\n" +" gl_Position = nv_waveworks_impl_0_7;\n" +" nv_waveworks_impl_0_6 = nv_waveworks_impl_0_8;\n" +"}\n" diff --git a/src/generated/FoamGeneration_map.h b/src/generated/FoamGeneration_map.h new file mode 100644 index 0000000..e705736 --- /dev/null +++ b/src/generated/FoamGeneration_map.h @@ -0,0 +1,18 @@ +LPCSTR nvsf_Output = "nv_waveworks_impl_0_10"; +LPCSTR nvsf_UVoffset = "nv_waveworks_impl_0_11"; +LPCSTR nvsf_energy = "nv_waveworks_impl_0_17"; +LPCSTR nvsf_foamenergy1 = "nv_waveworks_impl_0_12"; +LPCSTR nvsf_foamenergy2 = "nv_waveworks_impl_0_13"; +LPCSTR nvsf_foamenergy3 = "nv_waveworks_impl_0_14"; +LPCSTR nvsf_foamenergy4 = "nv_waveworks_impl_0_15"; +LPCSTR nvsf_folding = "nv_waveworks_impl_0_16"; +LPCSTR nvsf_g_DissipationFactors = "nv_waveworks_impl_0_1"; +LPCSTR nvsf_g_SourceComponents = "nv_waveworks_impl_0_2"; +LPCSTR nvsf_g_UVOffsets = "nv_waveworks_impl_0_3"; +LPCSTR nvsf_g_samplerEnergyMap = "nv_waveworks_impl_0_5"; +LPCSTR nvsf_g_textureEnergyMap = "nv_waveworks_impl_0_4"; +LPCSTR nvsf_globals = "nv_waveworks_impl_0_0"; +LPCSTR nvsf_vInPos = "nv_waveworks_impl_0_7"; +LPCSTR nvsf_vInTexCoord = "nv_waveworks_impl_0_8"; +LPCSTR nvsf_vInterpTexCoord = "nv_waveworks_impl_0_6"; +LPCSTR nvsf_vOutPos = "nv_waveworks_impl_0_9"; diff --git a/src/generated/FoamGeneration_nvsf.fx b/src/generated/FoamGeneration_nvsf.fx new file mode 100644 index 0000000..eeb56b8 --- /dev/null +++ b/src/generated/FoamGeneration_nvsf.fx @@ -0,0 +1,61 @@ +#include "Common.fxh" +#ifdef GFSDK_WAVEWORKS_GL +#define DECLARE_ATTR_CONSTANT(Type,Label,Regoff) uniform Type Label +#define DECLARE_ATTR_SAMPLER(Label,TextureLabel,Regoff) \ + uniform sampler2D TextureLabel +#else +#define DECLARE_ATTR_CONSTANT(Type,Label,Regoff) Type Label : register(c##Regoff) +#define DECLARE_ATTR_SAMPLER(Label,TextureLabel,Regoff) \ + Texture2D Label : register(t##Regoff); \ + SamplerState TextureLabel : register(s##Regoff) +#endif +BEGIN_CBUFFER(nv_waveworks_impl_0_0,0) +DECLARE_ATTR_CONSTANT(float4,nv_waveworks_impl_0_1,0); +DECLARE_ATTR_CONSTANT(float4,nv_waveworks_impl_0_2 ,1); +DECLARE_ATTR_CONSTANT(float4,nv_waveworks_impl_0_3 ,2); +END_CBUFFER +DECLARE_ATTR_SAMPLER(nv_waveworks_impl_0_4,nv_waveworks_impl_0_5,0); +#ifdef GFSDK_WAVEWORKS_GL +varying float2 nv_waveworks_impl_0_6; +#endif +#ifndef GFSDK_WAVEWORKS_OMIT_VS +#ifdef GFSDK_WAVEWORKS_GL +attribute float4 nv_waveworks_impl_0_7; +attribute float2 nv_waveworks_impl_0_8; +#define nv_waveworks_impl_0_9 gl_Position +void main() +#else +void vs( + float4 nv_waveworks_impl_0_7 SEMANTIC(POSITION), + float2 nv_waveworks_impl_0_8 SEMANTIC(TEXCOORD0), + out float2 nv_waveworks_impl_0_6 SEMANTIC(TEXCOORD0), + out float4 nv_waveworks_impl_0_9 SEMANTIC(SV_Position) +) +#endif +{ + nv_waveworks_impl_0_9 = nv_waveworks_impl_0_7; + nv_waveworks_impl_0_6 = nv_waveworks_impl_0_8; +} +#endif +#ifndef GFSDK_WAVEWORKS_OMIT_PS +#ifdef GFSDK_WAVEWORKS_GL +#define nv_waveworks_impl_0_10 gl_FragColor +void main() +#else +void ps( + float2 nv_waveworks_impl_0_6 SEMANTIC(TEXCOORD0), + out float4 nv_waveworks_impl_0_10 SEMANTIC(SV_Target) +) +#endif +{ + float2 nv_waveworks_impl_0_11 = nv_waveworks_impl_0_3.xy*nv_waveworks_impl_0_1.x; + float nv_waveworks_impl_0_12 = dot(nv_waveworks_impl_0_2, SampleTex2D(nv_waveworks_impl_0_4, nv_waveworks_impl_0_5, nv_waveworks_impl_0_6.xy + nv_waveworks_impl_0_11)); + float nv_waveworks_impl_0_13 = dot(nv_waveworks_impl_0_2, SampleTex2D(nv_waveworks_impl_0_4, nv_waveworks_impl_0_5, nv_waveworks_impl_0_6.xy - nv_waveworks_impl_0_11)); + float nv_waveworks_impl_0_14 = dot(nv_waveworks_impl_0_2, SampleTex2D(nv_waveworks_impl_0_4, nv_waveworks_impl_0_5, nv_waveworks_impl_0_6.xy + nv_waveworks_impl_0_11*2.0)); + float nv_waveworks_impl_0_15 = dot(nv_waveworks_impl_0_2, SampleTex2D(nv_waveworks_impl_0_4, nv_waveworks_impl_0_5, nv_waveworks_impl_0_6.xy - nv_waveworks_impl_0_11*2.0)); + float nv_waveworks_impl_0_16 = max(0,SampleTex2D(nv_waveworks_impl_0_4, nv_waveworks_impl_0_5, nv_waveworks_impl_0_6.xy).z); + float nv_waveworks_impl_0_17 = nv_waveworks_impl_0_1.y*((nv_waveworks_impl_0_12 + nv_waveworks_impl_0_13 + nv_waveworks_impl_0_14 + nv_waveworks_impl_0_15)*0.25 + max(0,(1.0-nv_waveworks_impl_0_16-nv_waveworks_impl_0_1.w))*nv_waveworks_impl_0_1.z); + nv_waveworks_impl_0_17 = min(1.0,nv_waveworks_impl_0_17); + nv_waveworks_impl_0_10 = float4(nv_waveworks_impl_0_17,nv_waveworks_impl_0_17,nv_waveworks_impl_0_17,nv_waveworks_impl_0_17); +} +#endif
\ No newline at end of file diff --git a/src/generated/FoamGeneration_ps_3_0.h b/src/generated/FoamGeneration_ps_3_0.h new file mode 100644 index 0000000..9374c64 --- /dev/null +++ b/src/generated/FoamGeneration_ps_3_0.h @@ -0,0 +1,192 @@ +#if 0 +// +// Generated by Microsoft (R) HLSL Shader Compiler 6.3.9600.16384 +// +// Parameters: +// +// float4 nv_waveworks_impl_0_1; +// float4 nv_waveworks_impl_0_2; +// float4 nv_waveworks_impl_0_3; +// sampler2D nv_waveworks_impl_0_5; +// +// +// Registers: +// +// Name Reg Size +// --------------------- ----- ---- +// nv_waveworks_impl_0_1 c0 1 +// nv_waveworks_impl_0_2 c1 1 +// nv_waveworks_impl_0_3 c2 1 +// nv_waveworks_impl_0_5 s0 1 +// + + ps_3_0 + def c3, 2, 1, 0, 0.25 + dcl_texcoord v0.xy + dcl_2d s0 + mov r0.x, c0.x + mad r0.yz, c2.xxyw, r0.x, v0.xxyw + texld r1, r0.yzzw, s0 + dp4 r0.y, c1, r1 + mad r0.zw, c2.xyxy, -r0.x, v0.xyxy + texld r1, r0.zwzw, s0 + dp4 r0.z, c1, r1 + add r0.y, r0.z, r0.y + mul r0.xz, r0.x, c2.xyyw + mad r1.xy, r0.xzzw, c3.x, v0 + mad r0.xz, r0, -c3.x, v0.xyyw + texld r2, r0.xzzw, s0 + dp4 r0.x, c1, r2 + texld r1, r1, s0 + dp4 r0.z, c1, r1 + add r0.y, r0.z, r0.y + add r0.x, r0.x, r0.y + texld r1, v0, s0 + add r0.y, -r1.z, c3.y + cmp r0.y, r1.z, r0.y, c3.y + add r0.y, r0.y, -c0.w + mul r0.z, r0.y, c0.z + cmp r0.y, r0.y, r0.z, c3.z + mad r0.x, r0.x, c3.w, r0.y + mul r0.x, r0.x, c0.y + min oC0, r0.x, c3.y + +// approximately 26 instruction slots used (5 texture, 21 arithmetic) +#endif + +const BYTE g_ps30_ps[] = +{ + 0, 3, 255, 255, 254, 255, + 74, 0, 67, 84, 65, 66, + 28, 0, 0, 0, 239, 0, + 0, 0, 0, 3, 255, 255, + 4, 0, 0, 0, 28, 0, + 0, 0, 0, 1, 0, 0, + 232, 0, 0, 0, 108, 0, + 0, 0, 2, 0, 0, 0, + 1, 0, 2, 0, 132, 0, + 0, 0, 0, 0, 0, 0, + 148, 0, 0, 0, 2, 0, + 1, 0, 1, 0, 6, 0, + 132, 0, 0, 0, 0, 0, + 0, 0, 170, 0, 0, 0, + 2, 0, 2, 0, 1, 0, + 10, 0, 132, 0, 0, 0, + 0, 0, 0, 0, 192, 0, + 0, 0, 3, 0, 0, 0, + 1, 0, 2, 0, 216, 0, + 0, 0, 0, 0, 0, 0, + 110, 118, 95, 119, 97, 118, + 101, 119, 111, 114, 107, 115, + 95, 105, 109, 112, 108, 95, + 48, 95, 49, 0, 171, 171, + 1, 0, 3, 0, 1, 0, + 4, 0, 1, 0, 0, 0, + 0, 0, 0, 0, 110, 118, + 95, 119, 97, 118, 101, 119, + 111, 114, 107, 115, 95, 105, + 109, 112, 108, 95, 48, 95, + 50, 0, 110, 118, 95, 119, + 97, 118, 101, 119, 111, 114, + 107, 115, 95, 105, 109, 112, + 108, 95, 48, 95, 51, 0, + 110, 118, 95, 119, 97, 118, + 101, 119, 111, 114, 107, 115, + 95, 105, 109, 112, 108, 95, + 48, 95, 53, 0, 171, 171, + 4, 0, 12, 0, 1, 0, + 1, 0, 1, 0, 0, 0, + 0, 0, 0, 0, 112, 115, + 95, 51, 95, 48, 0, 77, + 105, 99, 114, 111, 115, 111, + 102, 116, 32, 40, 82, 41, + 32, 72, 76, 83, 76, 32, + 83, 104, 97, 100, 101, 114, + 32, 67, 111, 109, 112, 105, + 108, 101, 114, 32, 54, 46, + 51, 46, 57, 54, 48, 48, + 46, 49, 54, 51, 56, 52, + 0, 171, 171, 171, 81, 0, + 0, 5, 3, 0, 15, 160, + 0, 0, 0, 64, 0, 0, + 128, 63, 0, 0, 0, 0, + 0, 0, 128, 62, 31, 0, + 0, 2, 5, 0, 0, 128, + 0, 0, 3, 144, 31, 0, + 0, 2, 0, 0, 0, 144, + 0, 8, 15, 160, 1, 0, + 0, 2, 0, 0, 1, 128, + 0, 0, 0, 160, 4, 0, + 0, 4, 0, 0, 6, 128, + 2, 0, 208, 160, 0, 0, + 0, 128, 0, 0, 208, 144, + 66, 0, 0, 3, 1, 0, + 15, 128, 0, 0, 233, 128, + 0, 8, 228, 160, 9, 0, + 0, 3, 0, 0, 2, 128, + 1, 0, 228, 160, 1, 0, + 228, 128, 4, 0, 0, 4, + 0, 0, 12, 128, 2, 0, + 68, 160, 0, 0, 0, 129, + 0, 0, 68, 144, 66, 0, + 0, 3, 1, 0, 15, 128, + 0, 0, 238, 128, 0, 8, + 228, 160, 9, 0, 0, 3, + 0, 0, 4, 128, 1, 0, + 228, 160, 1, 0, 228, 128, + 2, 0, 0, 3, 0, 0, + 2, 128, 0, 0, 170, 128, + 0, 0, 85, 128, 5, 0, + 0, 3, 0, 0, 5, 128, + 0, 0, 0, 128, 2, 0, + 212, 160, 4, 0, 0, 4, + 1, 0, 3, 128, 0, 0, + 232, 128, 3, 0, 0, 160, + 0, 0, 228, 144, 4, 0, + 0, 4, 0, 0, 5, 128, + 0, 0, 228, 128, 3, 0, + 0, 161, 0, 0, 212, 144, + 66, 0, 0, 3, 2, 0, + 15, 128, 0, 0, 232, 128, + 0, 8, 228, 160, 9, 0, + 0, 3, 0, 0, 1, 128, + 1, 0, 228, 160, 2, 0, + 228, 128, 66, 0, 0, 3, + 1, 0, 15, 128, 1, 0, + 228, 128, 0, 8, 228, 160, + 9, 0, 0, 3, 0, 0, + 4, 128, 1, 0, 228, 160, + 1, 0, 228, 128, 2, 0, + 0, 3, 0, 0, 2, 128, + 0, 0, 170, 128, 0, 0, + 85, 128, 2, 0, 0, 3, + 0, 0, 1, 128, 0, 0, + 0, 128, 0, 0, 85, 128, + 66, 0, 0, 3, 1, 0, + 15, 128, 0, 0, 228, 144, + 0, 8, 228, 160, 2, 0, + 0, 3, 0, 0, 2, 128, + 1, 0, 170, 129, 3, 0, + 85, 160, 88, 0, 0, 4, + 0, 0, 2, 128, 1, 0, + 170, 128, 0, 0, 85, 128, + 3, 0, 85, 160, 2, 0, + 0, 3, 0, 0, 2, 128, + 0, 0, 85, 128, 0, 0, + 255, 161, 5, 0, 0, 3, + 0, 0, 4, 128, 0, 0, + 85, 128, 0, 0, 170, 160, + 88, 0, 0, 4, 0, 0, + 2, 128, 0, 0, 85, 128, + 0, 0, 170, 128, 3, 0, + 170, 160, 4, 0, 0, 4, + 0, 0, 1, 128, 0, 0, + 0, 128, 3, 0, 255, 160, + 0, 0, 85, 128, 5, 0, + 0, 3, 0, 0, 1, 128, + 0, 0, 0, 128, 0, 0, + 85, 160, 10, 0, 0, 3, + 0, 8, 15, 128, 0, 0, + 0, 128, 3, 0, 85, 160, + 255, 255, 0, 0 +}; diff --git a/src/generated/FoamGeneration_ps_4_0.h b/src/generated/FoamGeneration_ps_4_0.h new file mode 100644 index 0000000..930614e --- /dev/null +++ b/src/generated/FoamGeneration_ps_4_0.h @@ -0,0 +1,245 @@ +#if 0 +// +// Generated by Microsoft (R) D3D Shader Disassembler +// +// +// Input signature: +// +// Name Index Mask Register SysValue Format Used +// -------------------- ----- ------ -------- -------- ------- ------ +// TEXCOORD 0 xy 0 NONE float xy +// +// +// Output signature: +// +// Name Index Mask Register SysValue Format Used +// -------------------- ----- ------ -------- -------- ------- ------ +// SV_Target 0 xyzw 0 TARGET float xyzw +// +ps_4_0 +dcl_constantbuffer cb0[3], immediateIndexed +dcl_sampler s0, mode_default +dcl_resource_texture2d (float,float,float,float) t0 +dcl_input_ps linear v0.xy +dcl_output o0.xyzw +dcl_temps 3 +mad r0.xy, cb0[2].xyxx, cb0[0].xxxx, v0.xyxx +sample r0.xyzw, r0.xyxx, t0.xyzw, s0 +dp4 r0.x, cb0[1].xyzw, r0.xyzw +mad r0.yz, -cb0[2].xxyx, cb0[0].xxxx, v0.xxyx +sample r1.xyzw, r0.yzyy, t0.xyzw, s0 +dp4 r0.y, cb0[1].xyzw, r1.xyzw +add r0.x, r0.y, r0.x +mul r0.yz, cb0[0].xxxx, cb0[2].xxyx +mad r1.xy, r0.yzyy, l(2.000000, 2.000000, 0.000000, 0.000000), v0.xyxx +mad r0.yz, -r0.yyzy, l(0.000000, 2.000000, 2.000000, 0.000000), v0.xxyx +sample r2.xyzw, r0.yzyy, t0.xyzw, s0 +dp4 r0.y, cb0[1].xyzw, r2.xyzw +sample r1.xyzw, r1.xyxx, t0.xyzw, s0 +dp4 r0.z, cb0[1].xyzw, r1.xyzw +add r0.x, r0.z, r0.x +add r0.x, r0.y, r0.x +sample r1.xyzw, v0.xyxx, t0.xyzw, s0 +max r0.y, r1.z, l(0.000000) +add r0.y, -r0.y, l(1.000000) +add r0.y, r0.y, -cb0[0].w +max r0.y, r0.y, l(0.000000) +mul r0.y, r0.y, cb0[0].z +mad r0.x, r0.x, l(0.250000), r0.y +mul r0.x, r0.x, cb0[0].y +min o0.xyzw, r0.xxxx, l(1.000000, 1.000000, 1.000000, 1.000000) +ret +// Approximately 0 instruction slots used +#endif + +const BYTE g_ps[] = +{ + 68, 88, 66, 67, 6, 160, + 229, 98, 49, 138, 133, 223, + 77, 131, 21, 240, 147, 229, + 63, 245, 1, 0, 0, 0, + 104, 4, 0, 0, 3, 0, + 0, 0, 44, 0, 0, 0, + 96, 0, 0, 0, 148, 0, + 0, 0, 73, 83, 71, 78, + 44, 0, 0, 0, 1, 0, + 0, 0, 8, 0, 0, 0, + 32, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 3, 0, 0, 0, 0, 0, + 0, 0, 3, 3, 0, 0, + 84, 69, 88, 67, 79, 79, + 82, 68, 0, 171, 171, 171, + 79, 83, 71, 78, 44, 0, + 0, 0, 1, 0, 0, 0, + 8, 0, 0, 0, 32, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 3, 0, + 0, 0, 0, 0, 0, 0, + 15, 0, 0, 0, 83, 86, + 95, 84, 97, 114, 103, 101, + 116, 0, 171, 171, 83, 72, + 68, 82, 204, 3, 0, 0, + 64, 0, 0, 0, 243, 0, + 0, 0, 89, 0, 0, 4, + 70, 142, 32, 0, 0, 0, + 0, 0, 3, 0, 0, 0, + 90, 0, 0, 3, 0, 96, + 16, 0, 0, 0, 0, 0, + 88, 24, 0, 4, 0, 112, + 16, 0, 0, 0, 0, 0, + 85, 85, 0, 0, 98, 16, + 0, 3, 50, 16, 16, 0, + 0, 0, 0, 0, 101, 0, + 0, 3, 242, 32, 16, 0, + 0, 0, 0, 0, 104, 0, + 0, 2, 3, 0, 0, 0, + 50, 0, 0, 11, 50, 0, + 16, 0, 0, 0, 0, 0, + 70, 128, 32, 0, 0, 0, + 0, 0, 2, 0, 0, 0, + 6, 128, 32, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 70, 16, 16, 0, 0, 0, + 0, 0, 69, 0, 0, 9, + 242, 0, 16, 0, 0, 0, + 0, 0, 70, 0, 16, 0, + 0, 0, 0, 0, 70, 126, + 16, 0, 0, 0, 0, 0, + 0, 96, 16, 0, 0, 0, + 0, 0, 17, 0, 0, 8, + 18, 0, 16, 0, 0, 0, + 0, 0, 70, 142, 32, 0, + 0, 0, 0, 0, 1, 0, + 0, 0, 70, 14, 16, 0, + 0, 0, 0, 0, 50, 0, + 0, 12, 98, 0, 16, 0, + 0, 0, 0, 0, 6, 129, + 32, 128, 65, 0, 0, 0, + 0, 0, 0, 0, 2, 0, + 0, 0, 6, 128, 32, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 6, 17, 16, 0, + 0, 0, 0, 0, 69, 0, + 0, 9, 242, 0, 16, 0, + 1, 0, 0, 0, 150, 5, + 16, 0, 0, 0, 0, 0, + 70, 126, 16, 0, 0, 0, + 0, 0, 0, 96, 16, 0, + 0, 0, 0, 0, 17, 0, + 0, 8, 34, 0, 16, 0, + 0, 0, 0, 0, 70, 142, + 32, 0, 0, 0, 0, 0, + 1, 0, 0, 0, 70, 14, + 16, 0, 1, 0, 0, 0, + 0, 0, 0, 7, 18, 0, + 16, 0, 0, 0, 0, 0, + 26, 0, 16, 0, 0, 0, + 0, 0, 10, 0, 16, 0, + 0, 0, 0, 0, 56, 0, + 0, 9, 98, 0, 16, 0, + 0, 0, 0, 0, 6, 128, + 32, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 6, 129, + 32, 0, 0, 0, 0, 0, + 2, 0, 0, 0, 50, 0, + 0, 12, 50, 0, 16, 0, + 1, 0, 0, 0, 150, 5, + 16, 0, 0, 0, 0, 0, + 2, 64, 0, 0, 0, 0, + 0, 64, 0, 0, 0, 64, + 0, 0, 0, 0, 0, 0, + 0, 0, 70, 16, 16, 0, + 0, 0, 0, 0, 50, 0, + 0, 13, 98, 0, 16, 0, + 0, 0, 0, 0, 86, 6, + 16, 128, 65, 0, 0, 0, + 0, 0, 0, 0, 2, 64, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 64, 0, 0, + 0, 64, 0, 0, 0, 0, + 6, 17, 16, 0, 0, 0, + 0, 0, 69, 0, 0, 9, + 242, 0, 16, 0, 2, 0, + 0, 0, 150, 5, 16, 0, + 0, 0, 0, 0, 70, 126, + 16, 0, 0, 0, 0, 0, + 0, 96, 16, 0, 0, 0, + 0, 0, 17, 0, 0, 8, + 34, 0, 16, 0, 0, 0, + 0, 0, 70, 142, 32, 0, + 0, 0, 0, 0, 1, 0, + 0, 0, 70, 14, 16, 0, + 2, 0, 0, 0, 69, 0, + 0, 9, 242, 0, 16, 0, + 1, 0, 0, 0, 70, 0, + 16, 0, 1, 0, 0, 0, + 70, 126, 16, 0, 0, 0, + 0, 0, 0, 96, 16, 0, + 0, 0, 0, 0, 17, 0, + 0, 8, 66, 0, 16, 0, + 0, 0, 0, 0, 70, 142, + 32, 0, 0, 0, 0, 0, + 1, 0, 0, 0, 70, 14, + 16, 0, 1, 0, 0, 0, + 0, 0, 0, 7, 18, 0, + 16, 0, 0, 0, 0, 0, + 42, 0, 16, 0, 0, 0, + 0, 0, 10, 0, 16, 0, + 0, 0, 0, 0, 0, 0, + 0, 7, 18, 0, 16, 0, + 0, 0, 0, 0, 26, 0, + 16, 0, 0, 0, 0, 0, + 10, 0, 16, 0, 0, 0, + 0, 0, 69, 0, 0, 9, + 242, 0, 16, 0, 1, 0, + 0, 0, 70, 16, 16, 0, + 0, 0, 0, 0, 70, 126, + 16, 0, 0, 0, 0, 0, + 0, 96, 16, 0, 0, 0, + 0, 0, 52, 0, 0, 7, + 34, 0, 16, 0, 0, 0, + 0, 0, 42, 0, 16, 0, + 1, 0, 0, 0, 1, 64, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 8, 34, 0, + 16, 0, 0, 0, 0, 0, + 26, 0, 16, 128, 65, 0, + 0, 0, 0, 0, 0, 0, + 1, 64, 0, 0, 0, 0, + 128, 63, 0, 0, 0, 9, + 34, 0, 16, 0, 0, 0, + 0, 0, 26, 0, 16, 0, + 0, 0, 0, 0, 58, 128, + 32, 128, 65, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 52, 0, 0, 7, + 34, 0, 16, 0, 0, 0, + 0, 0, 26, 0, 16, 0, + 0, 0, 0, 0, 1, 64, + 0, 0, 0, 0, 0, 0, + 56, 0, 0, 8, 34, 0, + 16, 0, 0, 0, 0, 0, + 26, 0, 16, 0, 0, 0, + 0, 0, 42, 128, 32, 0, + 0, 0, 0, 0, 0, 0, + 0, 0, 50, 0, 0, 9, + 18, 0, 16, 0, 0, 0, + 0, 0, 10, 0, 16, 0, + 0, 0, 0, 0, 1, 64, + 0, 0, 0, 0, 128, 62, + 26, 0, 16, 0, 0, 0, + 0, 0, 56, 0, 0, 8, + 18, 0, 16, 0, 0, 0, + 0, 0, 10, 0, 16, 0, + 0, 0, 0, 0, 26, 128, + 32, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 51, 0, + 0, 10, 242, 32, 16, 0, + 0, 0, 0, 0, 6, 0, + 16, 0, 0, 0, 0, 0, + 2, 64, 0, 0, 0, 0, + 128, 63, 0, 0, 128, 63, + 0, 0, 128, 63, 0, 0, + 128, 63, 62, 0, 0, 1 +}; diff --git a/src/generated/FoamGeneration_vs_3_0.h b/src/generated/FoamGeneration_vs_3_0.h new file mode 100644 index 0000000..f770788 --- /dev/null +++ b/src/generated/FoamGeneration_vs_3_0.h @@ -0,0 +1,47 @@ +#if 0 +// +// Generated by Microsoft (R) HLSL Shader Compiler 6.3.9600.16384 + vs_3_0 + dcl_position v0 + dcl_texcoord v1 + dcl_texcoord o0.xy + dcl_position o1 + mov o0.xy, v1 + mov o1, v0 + +// approximately 2 instruction slots used +#endif + +const BYTE g_vs30_vs[] = +{ + 0, 3, 254, 255, 254, 255, + 23, 0, 67, 84, 65, 66, + 28, 0, 0, 0, 35, 0, + 0, 0, 0, 3, 254, 255, + 0, 0, 0, 0, 0, 0, + 0, 0, 0, 1, 0, 0, + 28, 0, 0, 0, 118, 115, + 95, 51, 95, 48, 0, 77, + 105, 99, 114, 111, 115, 111, + 102, 116, 32, 40, 82, 41, + 32, 72, 76, 83, 76, 32, + 83, 104, 97, 100, 101, 114, + 32, 67, 111, 109, 112, 105, + 108, 101, 114, 32, 54, 46, + 51, 46, 57, 54, 48, 48, + 46, 49, 54, 51, 56, 52, + 0, 171, 171, 171, 31, 0, + 0, 2, 0, 0, 0, 128, + 0, 0, 15, 144, 31, 0, + 0, 2, 5, 0, 0, 128, + 1, 0, 15, 144, 31, 0, + 0, 2, 5, 0, 0, 128, + 0, 0, 3, 224, 31, 0, + 0, 2, 0, 0, 0, 128, + 1, 0, 15, 224, 1, 0, + 0, 2, 0, 0, 3, 224, + 1, 0, 228, 144, 1, 0, + 0, 2, 1, 0, 15, 224, + 0, 0, 228, 144, 255, 255, + 0, 0 +}; diff --git a/src/generated/FoamGeneration_vs_4_0.h b/src/generated/FoamGeneration_vs_4_0.h new file mode 100644 index 0000000..884ace1 --- /dev/null +++ b/src/generated/FoamGeneration_vs_4_0.h @@ -0,0 +1,89 @@ +#if 0 +// +// Generated by Microsoft (R) D3D Shader Disassembler +// +// +// Input signature: +// +// Name Index Mask Register SysValue Format Used +// -------------------- ----- ------ -------- -------- ------- ------ +// POSITION 0 xyzw 0 NONE float xyzw +// TEXCOORD 0 xy 1 NONE float xy +// +// +// Output signature: +// +// Name Index Mask Register SysValue Format Used +// -------------------- ----- ------ -------- -------- ------- ------ +// TEXCOORD 0 xy 0 NONE float xy +// SV_Position 0 xyzw 1 POS float xyzw +// +vs_4_0 +dcl_input v0.xyzw +dcl_input v1.xy +dcl_output o0.xy +dcl_output_siv o1.xyzw, position +mov o0.xy, v1.xyxx +mov o1.xyzw, v0.xyzw +ret +// Approximately 0 instruction slots used +#endif + +const BYTE g_vs[] = +{ + 68, 88, 66, 67, 110, 26, + 156, 84, 28, 108, 22, 50, + 32, 85, 186, 213, 4, 30, + 56, 4, 1, 0, 0, 0, + 72, 1, 0, 0, 3, 0, + 0, 0, 44, 0, 0, 0, + 128, 0, 0, 0, 216, 0, + 0, 0, 73, 83, 71, 78, + 76, 0, 0, 0, 2, 0, + 0, 0, 8, 0, 0, 0, + 56, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 3, 0, 0, 0, 0, 0, + 0, 0, 15, 15, 0, 0, + 65, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 3, 0, 0, 0, 1, 0, + 0, 0, 3, 3, 0, 0, + 80, 79, 83, 73, 84, 73, + 79, 78, 0, 84, 69, 88, + 67, 79, 79, 82, 68, 0, + 171, 171, 79, 83, 71, 78, + 80, 0, 0, 0, 2, 0, + 0, 0, 8, 0, 0, 0, + 56, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 3, 0, 0, 0, 0, 0, + 0, 0, 3, 12, 0, 0, + 65, 0, 0, 0, 0, 0, + 0, 0, 1, 0, 0, 0, + 3, 0, 0, 0, 1, 0, + 0, 0, 15, 0, 0, 0, + 84, 69, 88, 67, 79, 79, + 82, 68, 0, 83, 86, 95, + 80, 111, 115, 105, 116, 105, + 111, 110, 0, 171, 171, 171, + 83, 72, 68, 82, 104, 0, + 0, 0, 64, 0, 1, 0, + 26, 0, 0, 0, 95, 0, + 0, 3, 242, 16, 16, 0, + 0, 0, 0, 0, 95, 0, + 0, 3, 50, 16, 16, 0, + 1, 0, 0, 0, 101, 0, + 0, 3, 50, 32, 16, 0, + 0, 0, 0, 0, 103, 0, + 0, 4, 242, 32, 16, 0, + 1, 0, 0, 0, 1, 0, + 0, 0, 54, 0, 0, 5, + 50, 32, 16, 0, 0, 0, + 0, 0, 70, 16, 16, 0, + 1, 0, 0, 0, 54, 0, + 0, 5, 242, 32, 16, 0, + 1, 0, 0, 0, 70, 30, + 16, 0, 0, 0, 0, 0, + 62, 0, 0, 1 +}; diff --git a/src/generated/Quadtree_SM4_sig.h b/src/generated/Quadtree_SM4_sig.h new file mode 100644 index 0000000..5caefcb --- /dev/null +++ b/src/generated/Quadtree_SM4_sig.h @@ -0,0 +1,65 @@ +#if 0 +// +// Generated by Microsoft (R) D3D Shader Disassembler +// +// +// Input signature: +// +// Name Index Mask Register SysValue Format Used +// -------------------- ----- ------ -------- -------- ------- ------ +// POSITION 0 xyzw 0 NONE float xyzw +// +// +// Output signature: +// +// Name Index Mask Register SysValue Format Used +// -------------------- ----- ------ -------- -------- ------- ------ +// SV_Position 0 xyzw 0 POS float xyzw +// +vs_4_0 +dcl_input v0.xyzw +dcl_output_siv o0.xyzw, position +mov o0.xyzw, v0.xyzw +ret +// Approximately 0 instruction slots used +#endif + +const BYTE g_GFSDK_WAVEWORKS_VERTEX_INPUT_Sig[] = +{ + 68, 88, 66, 67, 144, 117, + 118, 146, 167, 219, 166, 6, + 178, 120, 224, 10, 246, 184, + 94, 123, 1, 0, 0, 0, + 216, 0, 0, 0, 3, 0, + 0, 0, 44, 0, 0, 0, + 96, 0, 0, 0, 148, 0, + 0, 0, 73, 83, 71, 78, + 44, 0, 0, 0, 1, 0, + 0, 0, 8, 0, 0, 0, + 32, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 3, 0, 0, 0, 0, 0, + 0, 0, 15, 15, 0, 0, + 80, 79, 83, 73, 84, 73, + 79, 78, 0, 171, 171, 171, + 79, 83, 71, 78, 44, 0, + 0, 0, 1, 0, 0, 0, + 8, 0, 0, 0, 32, 0, + 0, 0, 0, 0, 0, 0, + 1, 0, 0, 0, 3, 0, + 0, 0, 0, 0, 0, 0, + 15, 0, 0, 0, 83, 86, + 95, 80, 111, 115, 105, 116, + 105, 111, 110, 0, 83, 72, + 68, 82, 60, 0, 0, 0, + 64, 0, 1, 0, 15, 0, + 0, 0, 95, 0, 0, 3, + 242, 16, 16, 0, 0, 0, + 0, 0, 103, 0, 0, 4, + 242, 32, 16, 0, 0, 0, + 0, 0, 1, 0, 0, 0, + 54, 0, 0, 5, 242, 32, + 16, 0, 0, 0, 0, 0, + 70, 30, 16, 0, 0, 0, + 0, 0, 62, 0, 0, 1 +}; diff --git a/src/generated/Quadtree_SM5_sig.h b/src/generated/Quadtree_SM5_sig.h new file mode 100644 index 0000000..185a11e --- /dev/null +++ b/src/generated/Quadtree_SM5_sig.h @@ -0,0 +1,67 @@ +#if 0 +// +// Generated by Microsoft (R) D3D Shader Disassembler +// +// +// Input signature: +// +// Name Index Mask Register SysValue Format Used +// -------------------- ----- ------ -------- -------- ------- ------ +// POSITION 0 xyzw 0 NONE float xyzw +// +// +// Output signature: +// +// Name Index Mask Register SysValue Format Used +// -------------------- ----- ------ -------- -------- ------- ------ +// SV_Position 0 xyzw 0 POS float xyzw +// +vs_5_0 +dcl_globalFlags refactoringAllowed +dcl_input v0.xyzw +dcl_output_siv o0.xyzw, position +mov o0.xyzw, v0.xyzw +ret +// Approximately 0 instruction slots used +#endif + +const BYTE g_GFSDK_WAVEWORKS_VERTEX_INPUT_Sig[] = +{ + 68, 88, 66, 67, 53, 192, + 8, 24, 97, 223, 48, 192, + 236, 66, 223, 132, 46, 54, + 142, 252, 1, 0, 0, 0, + 220, 0, 0, 0, 3, 0, + 0, 0, 44, 0, 0, 0, + 96, 0, 0, 0, 148, 0, + 0, 0, 73, 83, 71, 78, + 44, 0, 0, 0, 1, 0, + 0, 0, 8, 0, 0, 0, + 32, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, + 3, 0, 0, 0, 0, 0, + 0, 0, 15, 15, 0, 0, + 80, 79, 83, 73, 84, 73, + 79, 78, 0, 171, 171, 171, + 79, 83, 71, 78, 44, 0, + 0, 0, 1, 0, 0, 0, + 8, 0, 0, 0, 32, 0, + 0, 0, 0, 0, 0, 0, + 1, 0, 0, 0, 3, 0, + 0, 0, 0, 0, 0, 0, + 15, 0, 0, 0, 83, 86, + 95, 80, 111, 115, 105, 116, + 105, 111, 110, 0, 83, 72, + 69, 88, 64, 0, 0, 0, + 80, 0, 1, 0, 16, 0, + 0, 0, 106, 8, 0, 1, + 95, 0, 0, 3, 242, 16, + 16, 0, 0, 0, 0, 0, + 103, 0, 0, 4, 242, 32, + 16, 0, 0, 0, 0, 0, + 1, 0, 0, 0, 54, 0, + 0, 5, 242, 32, 16, 0, + 0, 0, 0, 0, 70, 30, + 16, 0, 0, 0, 0, 0, + 62, 0, 0, 1 +}; diff --git a/src/generated/Quadtree_map.h b/src/generated/Quadtree_map.h new file mode 100644 index 0000000..72cbf1c --- /dev/null +++ b/src/generated/Quadtree_map.h @@ -0,0 +1,25 @@ +LPCSTR nvsf_d = "nv_waveworks_quad19"; +LPCSTR nvsf_edge_center = "nv_waveworks_quad21"; +LPCSTR nvsf_edge_distance = "nv_waveworks_quad23"; +LPCSTR nvsf_edge_length = "nv_waveworks_quad22"; +LPCSTR nvsf_eyepos_buffer = "nv_waveworks_quad0"; +LPCSTR nvsf_eyevec = "nv_waveworks_quad18"; +LPCSTR nvsf_g_MorphParam = "nv_waveworks_quad6"; +LPCSTR nvsf_g_hsWorldEye = "nv_waveworks_quad1"; +LPCSTR nvsf_g_matLocalWorld = "nv_waveworks_quad4"; +LPCSTR nvsf_g_tessellationParams = "nv_waveworks_quad2"; +LPCSTR nvsf_g_vsEyePos = "nv_waveworks_quad5"; +LPCSTR nvsf_geom_buffer = "nv_waveworks_quad3"; +LPCSTR nvsf_geomorph_amount = "nv_waveworks_quad13"; +LPCSTR nvsf_geomorph_level = "nv_waveworks_quad14"; +LPCSTR nvsf_geomorph_offset = "nv_waveworks_quad10"; +LPCSTR nvsf_geomorph_scale = "nv_waveworks_quad9"; +LPCSTR nvsf_geomorph_target_level = "nv_waveworks_quad20"; +LPCSTR nvsf_intpart = "nv_waveworks_quad15"; +LPCSTR nvsf_mirror = "nv_waveworks_quad17"; +LPCSTR nvsf_rempart = "nv_waveworks_quad16"; +LPCSTR nvsf_vPos = "nv_waveworks_quad7"; +LPCSTR nvsf_vertex_distance = "nv_waveworks_quad24"; +LPCSTR nvsf_vpos = "nv_waveworks_quad8"; +LPCSTR nvsf_vpos_src = "nv_waveworks_quad11"; +LPCSTR nvsf_vpos_target = "nv_waveworks_quad12"; |