#if 0 // // Generated by Microsoft (R) D3D Shader Disassembler // // // Input signature: // // Name Index Mask Register SysValue Format Used // -------------------- ----- ------ -------- -------- ------- ------ // SV_POSITION 0 xyzw 0 POS float // COLOR 0 xyzw 1 NONE float xyzw // TEXCOORD 0 xy 2 NONE float // TEXCOORD 1 xyz 3 NONE float xyz // TEXCOORD 2 xyz 4 NONE float // TEXCOORD 3 xyz 5 NONE float xyz // TEXCOORD 4 xyzw 6 NONE float // TEXCOORD 5 xyz 7 NONE float // // // Output signature: // // Name Index Mask Register SysValue Format Used // -------------------- ----- ------ -------- -------- ------- ------ // SV_Target 0 xyzw 0 TARGET float xyzw // // // Constant buffer to DX9 shader constant mappings: // // Target Reg Buffer Start Reg # of Regs Data Conversion // ---------- ------- --------- --------- ---------------------- // c0 cb0 0 1 ( FLT, FLT, FLT, FLT) // c1 cb0 2 1 ( FLT, FLT, FLT, FLT) // c2 cb0 4 1 ( FLT, FLT, FLT, FLT) // c3 cb1 0 4 ( FLT, FLT, FLT, FLT) // c7 cb1 9 3 ( FLT, FLT, FLT, FLT) // c10 cb1 13 3 ( FLT, FLT, FLT, FLT) // // // Level9 shader bytecode: // ps_2_0 def c13, -1, -0, 9.99999975e-005, 0 dcl t0 // pixel<4,5,6,7> dcl t2.xyz // pixel<10,11,12> dcl t4.xyz // pixel<16,17,18> #line 158 "C:\Users\ChuckW\Desktop\D3D11 Projects\DirectXTK\Src\Shaders\DGSLPhong.hlsl" mul r0.w, t0.w, t0.w cmp r0, -r0.w, c13.x, c13.y texkill r0 #line 144 dp3 r0.x, t4, t4 rsq r0.x, r0.x #line 101 mad r1.xyz, t4, r0.x, c9 nrm r2.xyz, r1 // ::vHalf<0,1,2> #line 143 nrm r1.xyz, t2 // ::worldNormal<0,1,2> #line 102 dp3_sat r1.w, r1, r2 // ::specularAmount<0> #line 82 dp3_sat r0.y, c7, r1 // ::diffuseAmount<0> mul r0.yzw, r0.y, c4.wzyx mul r0.yzw, r0, t0.wzyx // ::diffuse<2,1,0> #line 151 mov r2.xyz, c0 // MaterialVars::MaterialAmbient<0,1,2> mad r0.yzw, r2.wzyx, c3.wzyx, r0 // ::local1<2,1,0> #line 103 mov r2.z, c13.z max r3.w, c2.x, r2.z #line 82 dp3_sat r2.x, c8, r1 // ::diffuseAmount<0> mul r2.xyz, r2.x, c5 #line 151 mad r0.yzw, r2.wzyx, t0.wzyx, r0 // ::local1<2,1,0> #line 82 dp3_sat r2.x, c9, r1 // ::diffuseAmount<0> mul r2.xyz, r2.x, c6 #line 151 mad_sat r0.yzw, r2.wzyx, t0.wzyx, r0 // ::local1<2,1,0> #line 103 pow r2.x, r1.w, r3.w mul r1.w, r2.x, c12.x // ::specularAmount<0> mad r2.xyz, t4, r0.x, c8 nrm r3.xyz, r2 // ::vHalf<0,1,2> dp3_sat r2.x, r1, r3 // ::specularAmount<0> pow r4.w, r2.x, r3.w mul r2.x, r4.w, c11.x // ::specularAmount<0> mad r3.xyz, t4, r0.x, c7 nrm r4.xyz, r3 // ::vHalf<0,1,2> dp3_sat r0.x, r1, r4 // ::specularAmount<0> pow r1.x, r0.x, r3.w mul r0.x, r1.x, c10.x // ::specularAmount<0> mov r1.xyz, c1 // MaterialVars::MaterialSpecular<0,1,2> mul r2.yzw, r1.wzyx, c5.wzyx mul r2.xyz, r2.x, r2.wzyx // ::specular<0,1,2> mul r3.xyz, r1, c4 #line 152 mad r2.xyz, r3, r0.x, r2 // ::local4<0,1,2> #line 104 mul r1.xyz, r1, c6 #line 152 mad r1.xyz, r1, r1.w, r2 // ::local4<0,1,2> #line 156 add r0.xyz, r0.wzyx, r1 // CombineRGBWithAlpha::rgb<0,1,2> #line 160 mov r0.w, t0.w mov oC0, r0 // ::mainTk<0,1,2,3> // approximately 58 instruction slots used ps_4_0 dcl_constantbuffer CB0[5], immediateIndexed dcl_constantbuffer CB1[16], immediateIndexed dcl_input_ps linear v1.xyzw dcl_input_ps linear v3.xyz dcl_input_ps linear v5.xyz dcl_output o0.xyzw dcl_temps 4 eq r0.x, v1.w, l(0.000000) discard_nz r0.x dp3 r0.x, v3.xyzx, v3.xyzx rsq r0.x, r0.x mul r0.xyz, r0.xxxx, v3.xyzx dp3 r0.w, v5.xyzx, v5.xyzx rsq r0.w, r0.w dp3_sat r1.x, cb1[9].xyzx, r0.xyzx mul r1.xyz, r1.xxxx, cb1[1].xyzx mul r1.xyz, r1.xyzx, v1.xyzx mad r1.xyz, cb0[0].xyzx, cb1[0].xyzx, r1.xyzx mad r2.xyz, v5.xyzx, r0.wwww, cb1[9].xyzx dp3 r1.w, r2.xyzx, r2.xyzx rsq r1.w, r1.w mul r2.xyz, r1.wwww, r2.xyzx dp3_sat r1.w, r0.xyzx, r2.xyzx max r2.x, cb0[4].x, l(0.000100) log r1.w, r1.w mul r1.w, r1.w, r2.x exp r1.w, r1.w mul r1.w, r1.w, cb1[13].x mul r2.yzw, cb0[2].xxyz, cb1[1].xxyz dp3_sat r3.x, cb1[10].xyzx, r0.xyzx mul r3.xyz, r3.xxxx, cb1[2].xyzx mad r1.xyz, r3.xyzx, v1.xyzx, r1.xyzx mad r3.xyz, v5.xyzx, r0.wwww, cb1[10].xyzx dp3 r3.w, r3.xyzx, r3.xyzx rsq r3.w, r3.w mul r3.xyz, r3.wwww, r3.xyzx dp3_sat r3.x, r0.xyzx, r3.xyzx log r3.x, r3.x mul r3.x, r2.x, r3.x exp r3.x, r3.x mul r3.x, r3.x, cb1[14].x mul r3.yzw, cb0[2].xxyz, cb1[2].xxyz mul r3.xyz, r3.xxxx, r3.yzwy mad r2.yzw, r2.yyzw, r1.wwww, r3.xxyz dp3_sat r1.w, cb1[11].xyzx, r0.xyzx mul r3.xyz, r1.wwww, cb1[3].xyzx mad_sat r1.xyz, r3.xyzx, v1.xyzx, r1.xyzx mad r3.xyz, v5.xyzx, r0.wwww, cb1[11].xyzx dp3 r0.w, r3.xyzx, r3.xyzx rsq r0.w, r0.w mul r3.xyz, r0.wwww, r3.xyzx dp3_sat r0.x, r0.xyzx, r3.xyzx log r0.x, r0.x mul r0.x, r0.x, r2.x exp r0.x, r0.x mul r0.x, r0.x, cb1[15].x mul r0.yzw, cb0[2].xxyz, cb1[3].xxyz mad r0.xyz, r0.yzwy, r0.xxxx, r2.yzwy add o0.xyz, r0.xyzx, r1.xyzx mov o0.w, v1.w ret // Approximately 0 instruction slots used #endif const BYTE DGSLPhong_mainTk[] = { 68, 88, 66, 67, 139, 247, 29, 159, 167, 201, 253, 90, 91, 112, 202, 229, 17, 73, 54, 176, 1, 0, 0, 0, 44, 17, 0, 0, 4, 0, 0, 0, 48, 0, 0, 0, 176, 9, 0, 0, 12, 16, 0, 0, 248, 16, 0, 0, 65, 111, 110, 57, 120, 9, 0, 0, 120, 9, 0, 0, 0, 2, 255, 255, 12, 9, 0, 0, 108, 0, 0, 0, 6, 0, 36, 0, 0, 0, 108, 0, 0, 0, 108, 0, 0, 0, 36, 0, 0, 0, 108, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 4, 0, 1, 0, 2, 0, 0, 0, 0, 0, 1, 0, 0, 0, 4, 0, 3, 0, 0, 0, 0, 0, 1, 0, 9, 0, 3, 0, 7, 0, 0, 0, 0, 0, 1, 0, 13, 0, 3, 0, 10, 0, 0, 0, 0, 0, 0, 2, 255, 255, 254, 255, 132, 1, 68, 66, 85, 71, 40, 0, 0, 0, 228, 5, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 116, 0, 0, 0, 48, 0, 0, 0, 120, 0, 0, 0, 13, 0, 0, 0, 224, 4, 0, 0, 8, 3, 0, 0, 67, 58, 92, 85, 115, 101, 114, 115, 92, 67, 104, 117, 99, 107, 87, 92, 68, 101, 115, 107, 116, 111, 112, 92, 68, 51, 68, 49, 49, 32, 80, 114, 111, 106, 101, 99, 116, 115, 92, 68, 105, 114, 101, 99, 116, 88, 84, 75, 92, 83, 114, 99, 92, 83, 104, 97, 100, 101, 114, 115, 92, 68, 71, 83, 76, 80, 104, 111, 110, 103, 46, 104, 108, 115, 108, 0, 40, 0, 0, 0, 0, 0, 255, 255, 24, 6, 0, 0, 0, 0, 255, 255, 48, 6, 0, 0, 0, 0, 255, 255, 60, 6, 0, 0, 0, 0, 255, 255, 72, 6, 0, 0, 158, 0, 0, 0, 84, 6, 0, 0, 158, 0, 0, 0, 100, 6, 0, 0, 158, 0, 0, 0, 120, 6, 0, 0, 144, 0, 0, 0, 128, 6, 0, 0, 144, 0, 0, 0, 144, 6, 0, 0, 101, 0, 0, 0, 156, 6, 0, 0, 101, 0, 0, 0, 176, 6, 0, 0, 143, 0, 0, 0, 188, 6, 0, 0, 102, 0, 0, 0, 200, 6, 0, 0, 82, 0, 0, 0, 216, 6, 0, 0, 83, 0, 0, 0, 232, 6, 0, 0, 83, 0, 0, 0, 248, 6, 0, 0, 151, 0, 0, 0, 8, 7, 0, 0, 151, 0, 0, 0, 20, 7, 0, 0, 103, 0, 0, 0, 40, 7, 0, 0, 103, 0, 0, 0, 52, 7, 0, 0, 82, 0, 0, 0, 68, 7, 0, 0, 83, 0, 0, 0, 84, 7, 0, 0, 151, 0, 0, 0, 100, 7, 0, 0, 82, 0, 0, 0, 120, 7, 0, 0, 83, 0, 0, 0, 136, 7, 0, 0, 151, 0, 0, 0, 152, 7, 0, 0, 103, 0, 0, 0, 172, 7, 0, 0, 103, 0, 0, 0, 188, 7, 0, 0, 101, 0, 0, 0, 204, 7, 0, 0, 101, 0, 0, 0, 224, 7, 0, 0, 102, 0, 0, 0, 236, 7, 0, 0, 103, 0, 0, 0, 252, 7, 0, 0, 103, 0, 0, 0, 12, 8, 0, 0, 101, 0, 0, 0, 28, 8, 0, 0, 101, 0, 0, 0, 48, 8, 0, 0, 102, 0, 0, 0, 60, 8, 0, 0, 103, 0, 0, 0, 76, 8, 0, 0, 103, 0, 0, 0, 92, 8, 0, 0, 104, 0, 0, 0, 108, 8, 0, 0, 104, 0, 0, 0, 120, 8, 0, 0, 104, 0, 0, 0, 136, 8, 0, 0, 104, 0, 0, 0, 152, 8, 0, 0, 152, 0, 0, 0, 168, 8, 0, 0, 104, 0, 0, 0, 188, 8, 0, 0, 152, 0, 0, 0, 204, 8, 0, 0, 156, 0, 0, 0, 224, 8, 0, 0, 160, 0, 0, 0, 240, 8, 0, 0, 160, 0, 0, 0, 252, 8, 0, 0, 77, 97, 116, 101, 114, 105, 97, 108, 86, 97, 114, 115, 0, 77, 97, 116, 101, 114, 105, 97, 108, 65, 109, 98, 105, 101, 110, 116, 0, 171, 171, 171, 1, 0, 3, 0, 1, 0, 4, 0, 1, 0, 0, 0, 0, 0, 0, 0, 16, 0, 0, 0, 0, 0, 1, 0, 2, 0, 255, 255, 77, 97, 116, 101, 114, 105, 97, 108, 83, 112, 101, 99, 117, 108, 97, 114, 0, 171, 171, 171, 38, 0, 0, 0, 0, 0, 1, 0, 2, 0, 255, 255, 100, 105, 102, 102, 117, 115, 101, 0, 1, 0, 3, 0, 1, 0, 3, 0, 1, 0, 0, 0, 0, 0, 0, 0, 15, 0, 0, 0, 255, 255, 2, 0, 1, 0, 0, 0, 100, 105, 102, 102, 117, 115, 101, 65, 109, 111, 117, 110, 116, 0, 171, 171, 0, 0, 3, 0, 1, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 13, 0, 0, 0, 255, 255, 0, 0, 255, 255, 255, 255, 20, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 23, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 108, 111, 99, 97, 108, 49, 0, 171, 17, 0, 0, 0, 255, 255, 2, 0, 1, 0, 0, 0, 22, 0, 0, 0, 255, 255, 2, 0, 1, 0, 0, 0, 25, 0, 0, 0, 255, 255, 2, 0, 1, 0, 0, 0, 108, 111, 99, 97, 108, 52, 0, 171, 42, 0, 0, 0, 0, 0, 1, 0, 2, 0, 255, 255, 44, 0, 0, 0, 0, 0, 1, 0, 2, 0, 255, 255, 109, 97, 105, 110, 84, 107, 0, 102, 114, 97, 103, 109, 101, 110, 116, 0, 1, 0, 3, 0, 1, 0, 4, 0, 1, 0, 0, 0, 0, 0, 0, 0, 15, 3, 0, 0, 24, 3, 0, 0, 5, 0, 0, 0, 1, 0, 4, 0, 1, 0, 1, 0, 40, 3, 0, 0, 47, 0, 0, 0, 0, 0, 1, 0, 2, 0, 3, 0, 112, 105, 120, 101, 108, 0, 112, 111, 115, 0, 117, 118, 0, 171, 171, 171, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0, 0, 0, 0, 0, 0, 0, 119, 111, 114, 108, 100, 78, 111, 114, 109, 0, 119, 111, 114, 108, 100, 80, 111, 115, 0, 116, 111, 69, 121, 101, 0, 116, 97, 110, 103, 101, 110, 116, 0, 110, 111, 114, 109, 97, 108, 0, 82, 3, 0, 0, 24, 3, 0, 0, 84, 2, 0, 0, 24, 3, 0, 0, 86, 3, 0, 0, 92, 3, 0, 0, 108, 3, 0, 0, 92, 2, 0, 0, 118, 3, 0, 0, 92, 2, 0, 0, 127, 3, 0, 0, 92, 2, 0, 0, 133, 3, 0, 0, 24, 3, 0, 0, 141, 3, 0, 0, 92, 2, 0, 0, 5, 0, 0, 0, 1, 0, 26, 0, 1, 0, 8, 0, 148, 3, 0, 0, 1, 0, 0, 0, 4, 0, 5, 0, 6, 0, 7, 0, 2, 0, 0, 0, 10, 0, 11, 0, 12, 0, 255, 255, 3, 0, 0, 0, 16, 0, 17, 0, 18, 0, 255, 255, 67, 111, 109, 98, 105, 110, 101, 82, 71, 66, 87, 105, 116, 104, 65, 108, 112, 104, 97, 0, 114, 103, 98, 0, 45, 0, 0, 0, 0, 0, 1, 0, 2, 0, 255, 255, 115, 112, 101, 99, 117, 108, 97, 114, 0, 171, 171, 171, 40, 0, 0, 0, 0, 0, 1, 0, 2, 0, 255, 255, 115, 112, 101, 99, 117, 108, 97, 114, 65, 109, 111, 117, 110, 116, 0, 171, 12, 0, 0, 0, 255, 255, 255, 255, 255, 255, 0, 0, 27, 0, 0, 0, 255, 255, 255, 255, 255, 255, 0, 0, 30, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 32, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 35, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 37, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 118, 72, 97, 108, 102, 0, 171, 171, 10, 0, 0, 0, 0, 0, 1, 0, 2, 0, 255, 255, 29, 0, 0, 0, 0, 0, 1, 0, 2, 0, 255, 255, 34, 0, 0, 0, 0, 0, 1, 0, 2, 0, 255, 255, 119, 111, 114, 108, 100, 78, 111, 114, 109, 97, 108, 0, 11, 0, 0, 0, 0, 0, 1, 0, 2, 0, 255, 255, 248, 1, 0, 0, 5, 2, 0, 0, 24, 2, 0, 0, 1, 0, 0, 0, 40, 2, 0, 0, 248, 1, 0, 0, 52, 2, 0, 0, 24, 2, 0, 0, 1, 0, 0, 0, 72, 2, 0, 0, 0, 0, 0, 0, 84, 2, 0, 0, 92, 2, 0, 0, 1, 0, 0, 0, 108, 2, 0, 0, 0, 0, 0, 0, 120, 2, 0, 0, 136, 2, 0, 0, 3, 0, 0, 0, 152, 2, 0, 0, 0, 0, 0, 0, 188, 2, 0, 0, 92, 2, 0, 0, 3, 0, 0, 0, 196, 2, 0, 0, 0, 0, 0, 0, 232, 2, 0, 0, 92, 2, 0, 0, 2, 0, 0, 0, 240, 2, 0, 0, 0, 0, 0, 0, 8, 3, 0, 0, 48, 3, 0, 0, 1, 0, 0, 0, 64, 3, 0, 0, 8, 3, 0, 0, 76, 3, 0, 0, 212, 3, 0, 0, 3, 0, 0, 0, 228, 3, 0, 0, 8, 4, 0, 0, 28, 4, 0, 0, 92, 2, 0, 0, 1, 0, 0, 0, 32, 4, 0, 0, 0, 0, 0, 0, 44, 4, 0, 0, 92, 2, 0, 0, 1, 0, 0, 0, 56, 4, 0, 0, 0, 0, 0, 0, 68, 4, 0, 0, 136, 2, 0, 0, 6, 0, 0, 0, 84, 4, 0, 0, 0, 0, 0, 0, 156, 4, 0, 0, 92, 2, 0, 0, 3, 0, 0, 0, 164, 4, 0, 0, 0, 0, 0, 0, 200, 4, 0, 0, 92, 2, 0, 0, 1, 0, 0, 0, 212, 4, 0, 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, 49, 48, 46, 49, 0, 81, 0, 0, 5, 13, 0, 15, 160, 0, 0, 128, 191, 0, 0, 0, 128, 23, 183, 209, 56, 0, 0, 0, 0, 31, 0, 0, 2, 0, 0, 0, 128, 0, 0, 15, 176, 31, 0, 0, 2, 0, 0, 0, 128, 2, 0, 7, 176, 31, 0, 0, 2, 0, 0, 0, 128, 4, 0, 7, 176, 5, 0, 0, 3, 0, 0, 8, 128, 0, 0, 255, 176, 0, 0, 255, 176, 88, 0, 0, 4, 0, 0, 15, 128, 0, 0, 255, 129, 13, 0, 0, 160, 13, 0, 85, 160, 65, 0, 0, 1, 0, 0, 15, 128, 8, 0, 0, 3, 0, 0, 1, 128, 4, 0, 228, 176, 4, 0, 228, 176, 7, 0, 0, 2, 0, 0, 1, 128, 0, 0, 0, 128, 4, 0, 0, 4, 1, 0, 7, 128, 4, 0, 228, 176, 0, 0, 0, 128, 9, 0, 228, 160, 36, 0, 0, 2, 2, 0, 7, 128, 1, 0, 228, 128, 36, 0, 0, 2, 1, 0, 7, 128, 2, 0, 228, 176, 8, 0, 0, 3, 1, 0, 24, 128, 1, 0, 228, 128, 2, 0, 228, 128, 8, 0, 0, 3, 0, 0, 18, 128, 7, 0, 228, 160, 1, 0, 228, 128, 5, 0, 0, 3, 0, 0, 14, 128, 0, 0, 85, 128, 4, 0, 27, 160, 5, 0, 0, 3, 0, 0, 14, 128, 0, 0, 228, 128, 0, 0, 27, 176, 1, 0, 0, 2, 2, 0, 7, 128, 0, 0, 228, 160, 4, 0, 0, 4, 0, 0, 14, 128, 2, 0, 27, 128, 3, 0, 27, 160, 0, 0, 228, 128, 1, 0, 0, 2, 2, 0, 4, 128, 13, 0, 170, 160, 11, 0, 0, 3, 3, 0, 8, 128, 2, 0, 0, 160, 2, 0, 170, 128, 8, 0, 0, 3, 2, 0, 17, 128, 8, 0, 228, 160, 1, 0, 228, 128, 5, 0, 0, 3, 2, 0, 7, 128, 2, 0, 0, 128, 5, 0, 228, 160, 4, 0, 0, 4, 0, 0, 14, 128, 2, 0, 27, 128, 0, 0, 27, 176, 0, 0, 228, 128, 8, 0, 0, 3, 2, 0, 17, 128, 9, 0, 228, 160, 1, 0, 228, 128, 5, 0, 0, 3, 2, 0, 7, 128, 2, 0, 0, 128, 6, 0, 228, 160, 4, 0, 0, 4, 0, 0, 30, 128, 2, 0, 27, 128, 0, 0, 27, 176, 0, 0, 228, 128, 32, 0, 0, 3, 2, 0, 1, 128, 1, 0, 255, 128, 3, 0, 255, 128, 5, 0, 0, 3, 1, 0, 8, 128, 2, 0, 0, 128, 12, 0, 0, 160, 4, 0, 0, 4, 2, 0, 7, 128, 4, 0, 228, 176, 0, 0, 0, 128, 8, 0, 228, 160, 36, 0, 0, 2, 3, 0, 7, 128, 2, 0, 228, 128, 8, 0, 0, 3, 2, 0, 17, 128, 1, 0, 228, 128, 3, 0, 228, 128, 32, 0, 0, 3, 4, 0, 8, 128, 2, 0, 0, 128, 3, 0, 255, 128, 5, 0, 0, 3, 2, 0, 1, 128, 4, 0, 255, 128, 11, 0, 0, 160, 4, 0, 0, 4, 3, 0, 7, 128, 4, 0, 228, 176, 0, 0, 0, 128, 7, 0, 228, 160, 36, 0, 0, 2, 4, 0, 7, 128, 3, 0, 228, 128, 8, 0, 0, 3, 0, 0, 17, 128, 1, 0, 228, 128, 4, 0, 228, 128, 32, 0, 0, 3, 1, 0, 1, 128, 0, 0, 0, 128, 3, 0, 255, 128, 5, 0, 0, 3, 0, 0, 1, 128, 1, 0, 0, 128, 10, 0, 0, 160, 1, 0, 0, 2, 1, 0, 7, 128, 1, 0, 228, 160, 5, 0, 0, 3, 2, 0, 14, 128, 1, 0, 27, 128, 5, 0, 27, 160, 5, 0, 0, 3, 2, 0, 7, 128, 2, 0, 0, 128, 2, 0, 27, 128, 5, 0, 0, 3, 3, 0, 7, 128, 1, 0, 228, 128, 4, 0, 228, 160, 4, 0, 0, 4, 2, 0, 7, 128, 3, 0, 228, 128, 0, 0, 0, 128, 2, 0, 228, 128, 5, 0, 0, 3, 1, 0, 7, 128, 1, 0, 228, 128, 6, 0, 228, 160, 4, 0, 0, 4, 1, 0, 7, 128, 1, 0, 228, 128, 1, 0, 255, 128, 2, 0, 228, 128, 2, 0, 0, 3, 0, 0, 7, 128, 0, 0, 27, 128, 1, 0, 228, 128, 1, 0, 0, 2, 0, 0, 8, 128, 0, 0, 255, 176, 1, 0, 0, 2, 0, 8, 15, 128, 0, 0, 228, 128, 255, 255, 0, 0, 83, 72, 68, 82, 84, 6, 0, 0, 64, 0, 0, 0, 149, 1, 0, 0, 89, 0, 0, 4, 70, 142, 32, 0, 0, 0, 0, 0, 5, 0, 0, 0, 89, 0, 0, 4, 70, 142, 32, 0, 1, 0, 0, 0, 16, 0, 0, 0, 98, 16, 0, 3, 242, 16, 16, 0, 1, 0, 0, 0, 98, 16, 0, 3, 114, 16, 16, 0, 3, 0, 0, 0, 98, 16, 0, 3, 114, 16, 16, 0, 5, 0, 0, 0, 101, 0, 0, 3, 242, 32, 16, 0, 0, 0, 0, 0, 104, 0, 0, 2, 4, 0, 0, 0, 24, 0, 0, 7, 18, 0, 16, 0, 0, 0, 0, 0, 58, 16, 16, 0, 1, 0, 0, 0, 1, 64, 0, 0, 0, 0, 0, 0, 13, 0, 4, 3, 10, 0, 16, 0, 0, 0, 0, 0, 16, 0, 0, 7, 18, 0, 16, 0, 0, 0, 0, 0, 70, 18, 16, 0, 3, 0, 0, 0, 70, 18, 16, 0, 3, 0, 0, 0, 68, 0, 0, 5, 18, 0, 16, 0, 0, 0, 0, 0, 10, 0, 16, 0, 0, 0, 0, 0, 56, 0, 0, 7, 114, 0, 16, 0, 0, 0, 0, 0, 6, 0, 16, 0, 0, 0, 0, 0, 70, 18, 16, 0, 3, 0, 0, 0, 16, 0, 0, 7, 130, 0, 16, 0, 0, 0, 0, 0, 70, 18, 16, 0, 5, 0, 0, 0, 70, 18, 16, 0, 5, 0, 0, 0, 68, 0, 0, 5, 130, 0, 16, 0, 0, 0, 0, 0, 58, 0, 16, 0, 0, 0, 0, 0, 16, 32, 0, 8, 18, 0, 16, 0, 1, 0, 0, 0, 70, 130, 32, 0, 1, 0, 0, 0, 9, 0, 0, 0, 70, 2, 16, 0, 0, 0, 0, 0, 56, 0, 0, 8, 114, 0, 16, 0, 1, 0, 0, 0, 6, 0, 16, 0, 1, 0, 0, 0, 70, 130, 32, 0, 1, 0, 0, 0, 1, 0, 0, 0, 56, 0, 0, 7, 114, 0, 16, 0, 1, 0, 0, 0, 70, 2, 16, 0, 1, 0, 0, 0, 70, 18, 16, 0, 1, 0, 0, 0, 50, 0, 0, 11, 114, 0, 16, 0, 1, 0, 0, 0, 70, 130, 32, 0, 0, 0, 0, 0, 0, 0, 0, 0, 70, 130, 32, 0, 1, 0, 0, 0, 0, 0, 0, 0, 70, 2, 16, 0, 1, 0, 0, 0, 50, 0, 0, 10, 114, 0, 16, 0, 2, 0, 0, 0, 70, 18, 16, 0, 5, 0, 0, 0, 246, 15, 16, 0, 0, 0, 0, 0, 70, 130, 32, 0, 1, 0, 0, 0, 9, 0, 0, 0, 16, 0, 0, 7, 130, 0, 16, 0, 1, 0, 0, 0, 70, 2, 16, 0, 2, 0, 0, 0, 70, 2, 16, 0, 2, 0, 0, 0, 68, 0, 0, 5, 130, 0, 16, 0, 1, 0, 0, 0, 58, 0, 16, 0, 1, 0, 0, 0, 56, 0, 0, 7, 114, 0, 16, 0, 2, 0, 0, 0, 246, 15, 16, 0, 1, 0, 0, 0, 70, 2, 16, 0, 2, 0, 0, 0, 16, 32, 0, 7, 130, 0, 16, 0, 1, 0, 0, 0, 70, 2, 16, 0, 0, 0, 0, 0, 70, 2, 16, 0, 2, 0, 0, 0, 52, 0, 0, 8, 18, 0, 16, 0, 2, 0, 0, 0, 10, 128, 32, 0, 0, 0, 0, 0, 4, 0, 0, 0, 1, 64, 0, 0, 23, 183, 209, 56, 47, 0, 0, 5, 130, 0, 16, 0, 1, 0, 0, 0, 58, 0, 16, 0, 1, 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, 25, 0, 0, 5, 130, 0, 16, 0, 1, 0, 0, 0, 58, 0, 16, 0, 1, 0, 0, 0, 56, 0, 0, 8, 130, 0, 16, 0, 1, 0, 0, 0, 58, 0, 16, 0, 1, 0, 0, 0, 10, 128, 32, 0, 1, 0, 0, 0, 13, 0, 0, 0, 56, 0, 0, 9, 226, 0, 16, 0, 2, 0, 0, 0, 6, 137, 32, 0, 0, 0, 0, 0, 2, 0, 0, 0, 6, 137, 32, 0, 1, 0, 0, 0, 1, 0, 0, 0, 16, 32, 0, 8, 18, 0, 16, 0, 3, 0, 0, 0, 70, 130, 32, 0, 1, 0, 0, 0, 10, 0, 0, 0, 70, 2, 16, 0, 0, 0, 0, 0, 56, 0, 0, 8, 114, 0, 16, 0, 3, 0, 0, 0, 6, 0, 16, 0, 3, 0, 0, 0, 70, 130, 32, 0, 1, 0, 0, 0, 2, 0, 0, 0, 50, 0, 0, 9, 114, 0, 16, 0, 1, 0, 0, 0, 70, 2, 16, 0, 3, 0, 0, 0, 70, 18, 16, 0, 1, 0, 0, 0, 70, 2, 16, 0, 1, 0, 0, 0, 50, 0, 0, 10, 114, 0, 16, 0, 3, 0, 0, 0, 70, 18, 16, 0, 5, 0, 0, 0, 246, 15, 16, 0, 0, 0, 0, 0, 70, 130, 32, 0, 1, 0, 0, 0, 10, 0, 0, 0, 16, 0, 0, 7, 130, 0, 16, 0, 3, 0, 0, 0, 70, 2, 16, 0, 3, 0, 0, 0, 70, 2, 16, 0, 3, 0, 0, 0, 68, 0, 0, 5, 130, 0, 16, 0, 3, 0, 0, 0, 58, 0, 16, 0, 3, 0, 0, 0, 56, 0, 0, 7, 114, 0, 16, 0, 3, 0, 0, 0, 246, 15, 16, 0, 3, 0, 0, 0, 70, 2, 16, 0, 3, 0, 0, 0, 16, 32, 0, 7, 18, 0, 16, 0, 3, 0, 0, 0, 70, 2, 16, 0, 0, 0, 0, 0, 70, 2, 16, 0, 3, 0, 0, 0, 47, 0, 0, 5, 18, 0, 16, 0, 3, 0, 0, 0, 10, 0, 16, 0, 3, 0, 0, 0, 56, 0, 0, 7, 18, 0, 16, 0, 3, 0, 0, 0, 10, 0, 16, 0, 2, 0, 0, 0, 10, 0, 16, 0, 3, 0, 0, 0, 25, 0, 0, 5, 18, 0, 16, 0, 3, 0, 0, 0, 10, 0, 16, 0, 3, 0, 0, 0, 56, 0, 0, 8, 18, 0, 16, 0, 3, 0, 0, 0, 10, 0, 16, 0, 3, 0, 0, 0, 10, 128, 32, 0, 1, 0, 0, 0, 14, 0, 0, 0, 56, 0, 0, 9, 226, 0, 16, 0, 3, 0, 0, 0, 6, 137, 32, 0, 0, 0, 0, 0, 2, 0, 0, 0, 6, 137, 32, 0, 1, 0, 0, 0, 2, 0, 0, 0, 56, 0, 0, 7, 114, 0, 16, 0, 3, 0, 0, 0, 6, 0, 16, 0, 3, 0, 0, 0, 150, 7, 16, 0, 3, 0, 0, 0, 50, 0, 0, 9, 226, 0, 16, 0, 2, 0, 0, 0, 86, 14, 16, 0, 2, 0, 0, 0, 246, 15, 16, 0, 1, 0, 0, 0, 6, 9, 16, 0, 3, 0, 0, 0, 16, 32, 0, 8, 130, 0, 16, 0, 1, 0, 0, 0, 70, 130, 32, 0, 1, 0, 0, 0, 11, 0, 0, 0, 70, 2, 16, 0, 0, 0, 0, 0, 56, 0, 0, 8, 114, 0, 16, 0, 3, 0, 0, 0, 246, 15, 16, 0, 1, 0, 0, 0, 70, 130, 32, 0, 1, 0, 0, 0, 3, 0, 0, 0, 50, 32, 0, 9, 114, 0, 16, 0, 1, 0, 0, 0, 70, 2, 16, 0, 3, 0, 0, 0, 70, 18, 16, 0, 1, 0, 0, 0, 70, 2, 16, 0, 1, 0, 0, 0, 50, 0, 0, 10, 114, 0, 16, 0, 3, 0, 0, 0, 70, 18, 16, 0, 5, 0, 0, 0, 246, 15, 16, 0, 0, 0, 0, 0, 70, 130, 32, 0, 1, 0, 0, 0, 11, 0, 0, 0, 16, 0, 0, 7, 130, 0, 16, 0, 0, 0, 0, 0, 70, 2, 16, 0, 3, 0, 0, 0, 70, 2, 16, 0, 3, 0, 0, 0, 68, 0, 0, 5, 130, 0, 16, 0, 0, 0, 0, 0, 58, 0, 16, 0, 0, 0, 0, 0, 56, 0, 0, 7, 114, 0, 16, 0, 3, 0, 0, 0, 246, 15, 16, 0, 0, 0, 0, 0, 70, 2, 16, 0, 3, 0, 0, 0, 16, 32, 0, 7, 18, 0, 16, 0, 0, 0, 0, 0, 70, 2, 16, 0, 0, 0, 0, 0, 70, 2, 16, 0, 3, 0, 0, 0, 47, 0, 0, 5, 18, 0, 16, 0, 0, 0, 0, 0, 10, 0, 16, 0, 0, 0, 0, 0, 56, 0, 0, 7, 18, 0, 16, 0, 0, 0, 0, 0, 10, 0, 16, 0, 0, 0, 0, 0, 10, 0, 16, 0, 2, 0, 0, 0, 25, 0, 0, 5, 18, 0, 16, 0, 0, 0, 0, 0, 10, 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, 10, 128, 32, 0, 1, 0, 0, 0, 15, 0, 0, 0, 56, 0, 0, 9, 226, 0, 16, 0, 0, 0, 0, 0, 6, 137, 32, 0, 0, 0, 0, 0, 2, 0, 0, 0, 6, 137, 32, 0, 1, 0, 0, 0, 3, 0, 0, 0, 50, 0, 0, 9, 114, 0, 16, 0, 0, 0, 0, 0, 150, 7, 16, 0, 0, 0, 0, 0, 6, 0, 16, 0, 0, 0, 0, 0, 150, 7, 16, 0, 2, 0, 0, 0, 0, 0, 0, 7, 114, 32, 16, 0, 0, 0, 0, 0, 70, 2, 16, 0, 0, 0, 0, 0, 70, 2, 16, 0, 1, 0, 0, 0, 54, 0, 0, 5, 130, 32, 16, 0, 0, 0, 0, 0, 58, 16, 16, 0, 1, 0, 0, 0, 62, 0, 0, 1, 73, 83, 71, 78, 228, 0, 0, 0, 8, 0, 0, 0, 8, 0, 0, 0, 200, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 15, 0, 0, 0, 212, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 1, 0, 0, 0, 15, 15, 0, 0, 218, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 2, 0, 0, 0, 3, 0, 0, 0, 218, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 3, 0, 0, 0, 7, 7, 0, 0, 218, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 4, 0, 0, 0, 7, 0, 0, 0, 218, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 5, 0, 0, 0, 7, 7, 0, 0, 218, 0, 0, 0, 4, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 6, 0, 0, 0, 15, 0, 0, 0, 218, 0, 0, 0, 5, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 7, 0, 0, 0, 7, 0, 0, 0, 83, 86, 95, 80, 79, 83, 73, 84, 73, 79, 78, 0, 67, 79, 76, 79, 82, 0, 84, 69, 88, 67, 79, 79, 82, 68, 0, 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 };