Bug 1874684 - Part 17: Fix uninitialised variable warnings from clang-tidy. r=allstarschh
[gecko.git] / gfx / 2d / ShadersD2D1.h
blob9df2858da5185c794a4349a02ac699f7bd6c46a1
1 #if 0
2 //
3 // Generated by Microsoft (R) HLSL Shader Compiler 6.3.9600.16384
4 //
5 //
6 // Buffer Definitions:
7 //
8 // cbuffer radialGradientConstants
9 // {
11 // float3 diff; // Offset: 0 Size: 12
12 // float2 center1; // Offset: 16 Size: 8
13 // float A; // Offset: 24 Size: 4
14 // float radius1; // Offset: 28 Size: 4
15 // float sq_radius1; // Offset: 32 Size: 4
16 // float repeat_correct; // Offset: 36 Size: 4
17 // float allow_odd; // Offset: 40 Size: 4
18 // float3x2 transform; // Offset: 48 Size: 28
20 // }
23 // Resource Bindings:
25 // Name Type Format Dim Slot Elements
26 // ------------------------------ ---------- ------- ----------- ---- --------
27 // InputSampler sampler NA NA 0 1
28 // GradientSampler sampler NA NA 1 1
29 // InputTexture texture float4 2d 0 1
30 // GradientTexture texture float4 2d 1 1
31 // radialGradientConstants cbuffer NA NA 0 1
35 // Input signature:
37 // Name Index Mask Register SysValue Format Used
38 // -------------------- ----- ------ -------- -------- ------- ------
39 // SV_POSITION 0 xyzw 0 POS float
40 // SCENE_POSITION 0 xyzw 1 NONE float xy
41 // TEXCOORD 0 xyzw 2 NONE float xy
44 // Output signature:
46 // Name Index Mask Register SysValue Format Used
47 // -------------------- ----- ------ -------- -------- ------- ------
48 // SV_Target 0 xyzw 0 TARGET float xyzw
51 // Constant buffer to DX9 shader constant mappings:
53 // Target Reg Buffer Start Reg # of Regs Data Conversion
54 // ---------- ------- --------- --------- ----------------------
55 // c0 cb0 0 5 ( FLT, FLT, FLT, FLT)
58 // Sampler/Resource to DX9 shader sampler mappings:
60 // Target Sampler Source Sampler Source Resource
61 // -------------- --------------- ----------------
62 // s0 s0 t0
63 // s1 s1 t1
66 // Level9 shader bytecode:
68 ps_2_x
69 def c5, 0.5, 1, 0, 0
70 def c6, 1, -1, 0, -0
71 dcl t0
72 dcl t1
73 dcl_2d s0
74 dcl_2d s1
75 dp2add r0.x, t0, c3, c3.z
76 dp2add r0.y, t0, c4, c4.z
77 add r0.xy, r0, -c1
78 dp2add r0.w, r0, r0, -c2.x
79 mul r0.w, r0.w, c1.z
80 mov r0.z, c1.w
81 dp3 r0.x, r0, c0
82 mad r0.y, r0.x, r0.x, -r0.w
83 abs r0.z, r0.y
84 cmp r0.y, r0.y, c5.y, c5.z
85 rsq r0.z, r0.z
86 rcp r1.x, r0.z
87 mov r1.yz, -r1.x
88 add r0.xzw, r0.x, r1.xyyz
89 rcp r1.x, c1.z
90 mul r0.xzw, r0, r1.x
91 mov r1.w, c1.w
92 mad r1.xyz, r0.xzww, c0.z, r1.w
93 cmp r1.w, r1.x, r0.x, r0.w
94 cmp r0.xzw, r1.xyyz, c6.xyxy, c6.zyzw
95 frc r1.x, r1.w
96 add r1.x, -r1.x, r1.w
97 mul r1.y, r1.x, c5.x
98 abs r1.y, r1.y
99 frc r1.y, r1.y
100 cmp r1.y, r1.x, r1.y, -r1.y
101 add r1.x, -r1.x, r1.w
102 add r1.y, r1.y, r1.y
103 abs r1.y, r1.y
104 mul r1.y, r1.y, c2.z
105 frc r1.z, -r1.w
106 lrp r2.w, r1.y, r1.z, r1.x
107 lrp r3.x, c2.y, r2.w, r1.w
108 mov r3.y, c5.x
109 texld r1, t1, s0
110 texld r2, r3, s1
111 mul r2.xyz, r2.w, r2
112 mul r1, r1, r2
113 add r0.w, r0.w, r0.x
114 cmp r0.x, r0.w, r0.x, r0.z
115 mul r1, r0.x, r1
116 mul r0, r0.y, r1
117 mov oC0, r0
119 // approximately 46 instruction slots used (2 texture, 44 arithmetic)
120 ps_4_0
121 dcl_constantbuffer cb0[5], immediateIndexed
122 dcl_sampler s0, mode_default
123 dcl_sampler s1, mode_default
124 dcl_resource_texture2d (float,float,float,float) t0
125 dcl_resource_texture2d (float,float,float,float) t1
126 dcl_input_ps linear v1.xy
127 dcl_input_ps linear v2.xy
128 dcl_output o0.xyzw
129 dcl_temps 3
130 dp2 r0.x, v1.xyxx, cb0[3].xyxx
131 add r0.x, r0.x, cb0[3].z
132 dp2 r0.z, v1.xyxx, cb0[4].xyxx
133 add r0.y, r0.z, cb0[4].z
134 add r0.xy, r0.xyxx, -cb0[1].xyxx
135 dp2 r0.w, r0.xyxx, r0.xyxx
136 add r0.w, r0.w, -cb0[2].x
137 mul r0.w, r0.w, cb0[1].z
138 mov r0.z, cb0[1].w
139 dp3 r0.x, r0.xyzx, cb0[0].xyzx
140 mad r0.y, r0.x, r0.x, -r0.w
141 sqrt r1.x, |r0.y|
142 ge r0.y, r0.y, l(0.000000)
143 and r0.y, r0.y, l(0x3f800000)
144 mov r1.y, -r1.x
145 add r0.xz, r0.xxxx, r1.xxyx
146 div r0.xz, r0.xxzx, cb0[1].zzzz
147 add r0.w, -r0.z, r0.x
148 mul r1.xy, r0.xzxx, cb0[0].zzzz
149 ge r1.xy, r1.xyxx, -cb0[1].wwww
150 and r1.xy, r1.xyxx, l(0x3f800000, 0x3f800000, 0, 0)
151 mad r0.x, r1.x, r0.w, r0.z
152 max r0.z, r1.y, r1.x
153 ge r0.z, l(0.000000), r0.z
154 movc r0.z, r0.z, l(-0.000000), l(1.000000)
155 round_pi r0.w, r0.x
156 add r0.w, -r0.x, r0.w
157 round_ni r1.x, r0.x
158 mul r1.y, r1.x, l(0.500000)
159 add r1.x, r0.x, -r1.x
160 ge r1.z, r1.y, -r1.y
161 frc r1.y, |r1.y|
162 movc r1.y, r1.z, r1.y, -r1.y
163 add r1.y, r1.y, r1.y
164 mul r1.z, |r1.y|, cb0[2].z
165 mad r1.y, -|r1.y|, cb0[2].z, l(1.000000)
166 mul r0.w, r0.w, r1.z
167 mad r0.w, r1.x, r1.y, r0.w
168 mul r0.w, r0.w, cb0[2].y
169 add r1.x, l(1.000000), -cb0[2].y
170 mad r1.x, r0.x, r1.x, r0.w
171 mov r1.y, l(0.500000)
172 sample r1.xyzw, r1.xyxx, t1.xyzw, s1
173 mul r1.xyz, r1.wwww, r1.xyzx
174 sample r2.xyzw, v2.xyxx, t0.xyzw, s0
175 mul r1.xyzw, r1.xyzw, r2.xyzw
176 mul r1.xyzw, r0.zzzz, r1.xyzw
177 mul o0.xyzw, r0.yyyy, r1.xyzw
179 // Approximately 49 instruction slots used
180 #endif
182 const BYTE SampleRadialGradientPS[] = {
183 68, 88, 66, 67, 221, 203, 207, 240, 164, 242, 31, 220, 34, 19, 29,
184 61, 18, 184, 230, 185, 1, 0, 0, 0, 196, 13, 0, 0, 6, 0,
185 0, 0, 56, 0, 0, 0, 136, 3, 0, 0, 232, 9, 0, 0, 100,
186 10, 0, 0, 20, 13, 0, 0, 144, 13, 0, 0, 65, 111, 110, 57,
187 72, 3, 0, 0, 72, 3, 0, 0, 0, 2, 255, 255, 16, 3, 0,
188 0, 56, 0, 0, 0, 1, 0, 44, 0, 0, 0, 56, 0, 0, 0,
189 56, 0, 2, 0, 36, 0, 0, 0, 56, 0, 0, 0, 0, 0, 1,
190 1, 1, 0, 0, 0, 0, 0, 5, 0, 0, 0, 0, 0, 0, 0,
191 1, 2, 255, 255, 81, 0, 0, 5, 5, 0, 15, 160, 0, 0, 0,
192 63, 0, 0, 128, 63, 0, 0, 0, 0, 0, 0, 0, 0, 81, 0,
193 0, 5, 6, 0, 15, 160, 0, 0, 128, 63, 0, 0, 128, 191, 0,
194 0, 0, 0, 0, 0, 0, 128, 31, 0, 0, 2, 0, 0, 0, 128,
195 0, 0, 15, 176, 31, 0, 0, 2, 0, 0, 0, 128, 1, 0, 15,
196 176, 31, 0, 0, 2, 0, 0, 0, 144, 0, 8, 15, 160, 31, 0,
197 0, 2, 0, 0, 0, 144, 1, 8, 15, 160, 90, 0, 0, 4, 0,
198 0, 1, 128, 0, 0, 228, 176, 3, 0, 228, 160, 3, 0, 170, 160,
199 90, 0, 0, 4, 0, 0, 2, 128, 0, 0, 228, 176, 4, 0, 228,
200 160, 4, 0, 170, 160, 2, 0, 0, 3, 0, 0, 3, 128, 0, 0,
201 228, 128, 1, 0, 228, 161, 90, 0, 0, 4, 0, 0, 8, 128, 0,
202 0, 228, 128, 0, 0, 228, 128, 2, 0, 0, 161, 5, 0, 0, 3,
203 0, 0, 8, 128, 0, 0, 255, 128, 1, 0, 170, 160, 1, 0, 0,
204 2, 0, 0, 4, 128, 1, 0, 255, 160, 8, 0, 0, 3, 0, 0,
205 1, 128, 0, 0, 228, 128, 0, 0, 228, 160, 4, 0, 0, 4, 0,
206 0, 2, 128, 0, 0, 0, 128, 0, 0, 0, 128, 0, 0, 255, 129,
207 35, 0, 0, 2, 0, 0, 4, 128, 0, 0, 85, 128, 88, 0, 0,
208 4, 0, 0, 2, 128, 0, 0, 85, 128, 5, 0, 85, 160, 5, 0,
209 170, 160, 7, 0, 0, 2, 0, 0, 4, 128, 0, 0, 170, 128, 6,
210 0, 0, 2, 1, 0, 1, 128, 0, 0, 170, 128, 1, 0, 0, 2,
211 1, 0, 6, 128, 1, 0, 0, 129, 2, 0, 0, 3, 0, 0, 13,
212 128, 0, 0, 0, 128, 1, 0, 148, 128, 6, 0, 0, 2, 1, 0,
213 1, 128, 1, 0, 170, 160, 5, 0, 0, 3, 0, 0, 13, 128, 0,
214 0, 228, 128, 1, 0, 0, 128, 1, 0, 0, 2, 1, 0, 8, 128,
215 1, 0, 255, 160, 4, 0, 0, 4, 1, 0, 7, 128, 0, 0, 248,
216 128, 0, 0, 170, 160, 1, 0, 255, 128, 88, 0, 0, 4, 1, 0,
217 8, 128, 1, 0, 0, 128, 0, 0, 0, 128, 0, 0, 255, 128, 88,
218 0, 0, 4, 0, 0, 13, 128, 1, 0, 148, 128, 6, 0, 68, 160,
219 6, 0, 230, 160, 19, 0, 0, 2, 1, 0, 1, 128, 1, 0, 255,
220 128, 2, 0, 0, 3, 1, 0, 1, 128, 1, 0, 0, 129, 1, 0,
221 255, 128, 5, 0, 0, 3, 1, 0, 2, 128, 1, 0, 0, 128, 5,
222 0, 0, 160, 35, 0, 0, 2, 1, 0, 2, 128, 1, 0, 85, 128,
223 19, 0, 0, 2, 1, 0, 2, 128, 1, 0, 85, 128, 88, 0, 0,
224 4, 1, 0, 2, 128, 1, 0, 0, 128, 1, 0, 85, 128, 1, 0,
225 85, 129, 2, 0, 0, 3, 1, 0, 1, 128, 1, 0, 0, 129, 1,
226 0, 255, 128, 2, 0, 0, 3, 1, 0, 2, 128, 1, 0, 85, 128,
227 1, 0, 85, 128, 35, 0, 0, 2, 1, 0, 2, 128, 1, 0, 85,
228 128, 5, 0, 0, 3, 1, 0, 2, 128, 1, 0, 85, 128, 2, 0,
229 170, 160, 19, 0, 0, 2, 1, 0, 4, 128, 1, 0, 255, 129, 18,
230 0, 0, 4, 2, 0, 8, 128, 1, 0, 85, 128, 1, 0, 170, 128,
231 1, 0, 0, 128, 18, 0, 0, 4, 3, 0, 1, 128, 2, 0, 85,
232 160, 2, 0, 255, 128, 1, 0, 255, 128, 1, 0, 0, 2, 3, 0,
233 2, 128, 5, 0, 0, 160, 66, 0, 0, 3, 1, 0, 15, 128, 1,
234 0, 228, 176, 0, 8, 228, 160, 66, 0, 0, 3, 2, 0, 15, 128,
235 3, 0, 228, 128, 1, 8, 228, 160, 5, 0, 0, 3, 2, 0, 7,
236 128, 2, 0, 255, 128, 2, 0, 228, 128, 5, 0, 0, 3, 1, 0,
237 15, 128, 1, 0, 228, 128, 2, 0, 228, 128, 2, 0, 0, 3, 0,
238 0, 8, 128, 0, 0, 255, 128, 0, 0, 0, 128, 88, 0, 0, 4,
239 0, 0, 1, 128, 0, 0, 255, 128, 0, 0, 0, 128, 0, 0, 170,
240 128, 5, 0, 0, 3, 1, 0, 15, 128, 0, 0, 0, 128, 1, 0,
241 228, 128, 5, 0, 0, 3, 0, 0, 15, 128, 0, 0, 85, 128, 1,
242 0, 228, 128, 1, 0, 0, 2, 0, 8, 15, 128, 0, 0, 228, 128,
243 255, 255, 0, 0, 83, 72, 68, 82, 88, 6, 0, 0, 64, 0, 0,
244 0, 150, 1, 0, 0, 89, 0, 0, 4, 70, 142, 32, 0, 0, 0,
245 0, 0, 5, 0, 0, 0, 90, 0, 0, 3, 0, 96, 16, 0, 0,
246 0, 0, 0, 90, 0, 0, 3, 0, 96, 16, 0, 1, 0, 0, 0,
247 88, 24, 0, 4, 0, 112, 16, 0, 0, 0, 0, 0, 85, 85, 0,
248 0, 88, 24, 0, 4, 0, 112, 16, 0, 1, 0, 0, 0, 85, 85,
249 0, 0, 98, 16, 0, 3, 50, 16, 16, 0, 1, 0, 0, 0, 98,
250 16, 0, 3, 50, 16, 16, 0, 2, 0, 0, 0, 101, 0, 0, 3,
251 242, 32, 16, 0, 0, 0, 0, 0, 104, 0, 0, 2, 3, 0, 0,
252 0, 15, 0, 0, 8, 18, 0, 16, 0, 0, 0, 0, 0, 70, 16,
253 16, 0, 1, 0, 0, 0, 70, 128, 32, 0, 0, 0, 0, 0, 3,
254 0, 0, 0, 0, 0, 0, 8, 18, 0, 16, 0, 0, 0, 0, 0,
255 10, 0, 16, 0, 0, 0, 0, 0, 42, 128, 32, 0, 0, 0, 0,
256 0, 3, 0, 0, 0, 15, 0, 0, 8, 66, 0, 16, 0, 0, 0,
257 0, 0, 70, 16, 16, 0, 1, 0, 0, 0, 70, 128, 32, 0, 0,
258 0, 0, 0, 4, 0, 0, 0, 0, 0, 0, 8, 34, 0, 16, 0,
259 0, 0, 0, 0, 42, 0, 16, 0, 0, 0, 0, 0, 42, 128, 32,
260 0, 0, 0, 0, 0, 4, 0, 0, 0, 0, 0, 0, 9, 50, 0,
261 16, 0, 0, 0, 0, 0, 70, 0, 16, 0, 0, 0, 0, 0, 70,
262 128, 32, 128, 65, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0,
263 15, 0, 0, 7, 130, 0, 16, 0, 0, 0, 0, 0, 70, 0, 16,
264 0, 0, 0, 0, 0, 70, 0, 16, 0, 0, 0, 0, 0, 0, 0,
265 0, 9, 130, 0, 16, 0, 0, 0, 0, 0, 58, 0, 16, 0, 0,
266 0, 0, 0, 10, 128, 32, 128, 65, 0, 0, 0, 0, 0, 0, 0,
267 2, 0, 0, 0, 56, 0, 0, 8, 130, 0, 16, 0, 0, 0, 0,
268 0, 58, 0, 16, 0, 0, 0, 0, 0, 42, 128, 32, 0, 0, 0,
269 0, 0, 1, 0, 0, 0, 54, 0, 0, 6, 66, 0, 16, 0, 0,
270 0, 0, 0, 58, 128, 32, 0, 0, 0, 0, 0, 1, 0, 0, 0,
271 16, 0, 0, 8, 18, 0, 16, 0, 0, 0, 0, 0, 70, 2, 16,
272 0, 0, 0, 0, 0, 70, 130, 32, 0, 0, 0, 0, 0, 0, 0,
273 0, 0, 50, 0, 0, 10, 34, 0, 16, 0, 0, 0, 0, 0, 10,
274 0, 16, 0, 0, 0, 0, 0, 10, 0, 16, 0, 0, 0, 0, 0,
275 58, 0, 16, 128, 65, 0, 0, 0, 0, 0, 0, 0, 75, 0, 0,
276 6, 18, 0, 16, 0, 1, 0, 0, 0, 26, 0, 16, 128, 129, 0,
277 0, 0, 0, 0, 0, 0, 29, 0, 0, 7, 34, 0, 16, 0, 0,
278 0, 0, 0, 26, 0, 16, 0, 0, 0, 0, 0, 1, 64, 0, 0,
279 0, 0, 0, 0, 1, 0, 0, 7, 34, 0, 16, 0, 0, 0, 0,
280 0, 26, 0, 16, 0, 0, 0, 0, 0, 1, 64, 0, 0, 0, 0,
281 128, 63, 54, 0, 0, 6, 34, 0, 16, 0, 1, 0, 0, 0, 10,
282 0, 16, 128, 65, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 7,
283 82, 0, 16, 0, 0, 0, 0, 0, 6, 0, 16, 0, 0, 0, 0,
284 0, 6, 1, 16, 0, 1, 0, 0, 0, 14, 0, 0, 8, 82, 0,
285 16, 0, 0, 0, 0, 0, 6, 2, 16, 0, 0, 0, 0, 0, 166,
286 138, 32, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 8,
287 130, 0, 16, 0, 0, 0, 0, 0, 42, 0, 16, 128, 65, 0, 0,
288 0, 0, 0, 0, 0, 10, 0, 16, 0, 0, 0, 0, 0, 56, 0,
289 0, 8, 50, 0, 16, 0, 1, 0, 0, 0, 134, 0, 16, 0, 0,
290 0, 0, 0, 166, 138, 32, 0, 0, 0, 0, 0, 0, 0, 0, 0,
291 29, 0, 0, 9, 50, 0, 16, 0, 1, 0, 0, 0, 70, 0, 16,
292 0, 1, 0, 0, 0, 246, 143, 32, 128, 65, 0, 0, 0, 0, 0,
293 0, 0, 1, 0, 0, 0, 1, 0, 0, 10, 50, 0, 16, 0, 1,
294 0, 0, 0, 70, 0, 16, 0, 1, 0, 0, 0, 2, 64, 0, 0,
295 0, 0, 128, 63, 0, 0, 128, 63, 0, 0, 0, 0, 0, 0, 0,
296 0, 50, 0, 0, 9, 18, 0, 16, 0, 0, 0, 0, 0, 10, 0,
297 16, 0, 1, 0, 0, 0, 58, 0, 16, 0, 0, 0, 0, 0, 42,
298 0, 16, 0, 0, 0, 0, 0, 52, 0, 0, 7, 66, 0, 16, 0,
299 0, 0, 0, 0, 26, 0, 16, 0, 1, 0, 0, 0, 10, 0, 16,
300 0, 1, 0, 0, 0, 29, 0, 0, 7, 66, 0, 16, 0, 0, 0,
301 0, 0, 1, 64, 0, 0, 0, 0, 0, 0, 42, 0, 16, 0, 0,
302 0, 0, 0, 55, 0, 0, 9, 66, 0, 16, 0, 0, 0, 0, 0,
303 42, 0, 16, 0, 0, 0, 0, 0, 1, 64, 0, 0, 0, 0, 0,
304 128, 1, 64, 0, 0, 0, 0, 128, 63, 66, 0, 0, 5, 130, 0,
305 16, 0, 0, 0, 0, 0, 10, 0, 16, 0, 0, 0, 0, 0, 0,
306 0, 0, 8, 130, 0, 16, 0, 0, 0, 0, 0, 10, 0, 16, 128,
307 65, 0, 0, 0, 0, 0, 0, 0, 58, 0, 16, 0, 0, 0, 0,
308 0, 65, 0, 0, 5, 18, 0, 16, 0, 1, 0, 0, 0, 10, 0,
309 16, 0, 0, 0, 0, 0, 56, 0, 0, 7, 34, 0, 16, 0, 1,
310 0, 0, 0, 10, 0, 16, 0, 1, 0, 0, 0, 1, 64, 0, 0,
311 0, 0, 0, 63, 0, 0, 0, 8, 18, 0, 16, 0, 1, 0, 0,
312 0, 10, 0, 16, 0, 0, 0, 0, 0, 10, 0, 16, 128, 65, 0,
313 0, 0, 1, 0, 0, 0, 29, 0, 0, 8, 66, 0, 16, 0, 1,
314 0, 0, 0, 26, 0, 16, 0, 1, 0, 0, 0, 26, 0, 16, 128,
315 65, 0, 0, 0, 1, 0, 0, 0, 26, 0, 0, 6, 34, 0, 16,
316 0, 1, 0, 0, 0, 26, 0, 16, 128, 129, 0, 0, 0, 1, 0,
317 0, 0, 55, 0, 0, 10, 34, 0, 16, 0, 1, 0, 0, 0, 42,
318 0, 16, 0, 1, 0, 0, 0, 26, 0, 16, 0, 1, 0, 0, 0,
319 26, 0, 16, 128, 65, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0,
320 7, 34, 0, 16, 0, 1, 0, 0, 0, 26, 0, 16, 0, 1, 0,
321 0, 0, 26, 0, 16, 0, 1, 0, 0, 0, 56, 0, 0, 9, 66,
322 0, 16, 0, 1, 0, 0, 0, 26, 0, 16, 128, 129, 0, 0, 0,
323 1, 0, 0, 0, 42, 128, 32, 0, 0, 0, 0, 0, 2, 0, 0,
324 0, 50, 0, 0, 11, 34, 0, 16, 0, 1, 0, 0, 0, 26, 0,
325 16, 128, 193, 0, 0, 0, 1, 0, 0, 0, 42, 128, 32, 0, 0,
326 0, 0, 0, 2, 0, 0, 0, 1, 64, 0, 0, 0, 0, 128, 63,
327 56, 0, 0, 7, 130, 0, 16, 0, 0, 0, 0, 0, 58, 0, 16,
328 0, 0, 0, 0, 0, 42, 0, 16, 0, 1, 0, 0, 0, 50, 0,
329 0, 9, 130, 0, 16, 0, 0, 0, 0, 0, 10, 0, 16, 0, 1,
330 0, 0, 0, 26, 0, 16, 0, 1, 0, 0, 0, 58, 0, 16, 0,
331 0, 0, 0, 0, 56, 0, 0, 8, 130, 0, 16, 0, 0, 0, 0,
332 0, 58, 0, 16, 0, 0, 0, 0, 0, 26, 128, 32, 0, 0, 0,
333 0, 0, 2, 0, 0, 0, 0, 0, 0, 9, 18, 0, 16, 0, 1,
334 0, 0, 0, 1, 64, 0, 0, 0, 0, 128, 63, 26, 128, 32, 128,
335 65, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 50, 0, 0,
336 9, 18, 0, 16, 0, 1, 0, 0, 0, 10, 0, 16, 0, 0, 0,
337 0, 0, 10, 0, 16, 0, 1, 0, 0, 0, 58, 0, 16, 0, 0,
338 0, 0, 0, 54, 0, 0, 5, 34, 0, 16, 0, 1, 0, 0, 0,
339 1, 64, 0, 0, 0, 0, 0, 63, 69, 0, 0, 9, 242, 0, 16,
340 0, 1, 0, 0, 0, 70, 0, 16, 0, 1, 0, 0, 0, 70, 126,
341 16, 0, 1, 0, 0, 0, 0, 96, 16, 0, 1, 0, 0, 0, 56,
342 0, 0, 7, 114, 0, 16, 0, 1, 0, 0, 0, 246, 15, 16, 0,
343 1, 0, 0, 0, 70, 2, 16, 0, 1, 0, 0, 0, 69, 0, 0,
344 9, 242, 0, 16, 0, 2, 0, 0, 0, 70, 16, 16, 0, 2, 0,
345 0, 0, 70, 126, 16, 0, 0, 0, 0, 0, 0, 96, 16, 0, 0,
346 0, 0, 0, 56, 0, 0, 7, 242, 0, 16, 0, 1, 0, 0, 0,
347 70, 14, 16, 0, 1, 0, 0, 0, 70, 14, 16, 0, 2, 0, 0,
348 0, 56, 0, 0, 7, 242, 0, 16, 0, 1, 0, 0, 0, 166, 10,
349 16, 0, 0, 0, 0, 0, 70, 14, 16, 0, 1, 0, 0, 0, 56,
350 0, 0, 7, 242, 32, 16, 0, 0, 0, 0, 0, 86, 5, 16, 0,
351 0, 0, 0, 0, 70, 14, 16, 0, 1, 0, 0, 0, 62, 0, 0,
352 1, 83, 84, 65, 84, 116, 0, 0, 0, 49, 0, 0, 0, 3, 0,
353 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 40, 0, 0, 0, 0,
354 0, 0, 0, 2, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0,
355 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
356 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0,
357 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 2,
358 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
359 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
360 0, 0, 0, 0, 0, 82, 68, 69, 70, 168, 2, 0, 0, 1, 0,
361 0, 0, 16, 1, 0, 0, 5, 0, 0, 0, 28, 0, 0, 0, 0,
362 4, 255, 255, 0, 1, 0, 0, 116, 2, 0, 0, 188, 0, 0, 0,
363 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
364 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 201, 0,
365 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
366 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0,
367 217, 0, 0, 0, 2, 0, 0, 0, 5, 0, 0, 0, 4, 0, 0,
368 0, 255, 255, 255, 255, 0, 0, 0, 0, 1, 0, 0, 0, 13, 0,
369 0, 0, 230, 0, 0, 0, 2, 0, 0, 0, 5, 0, 0, 0, 4,
370 0, 0, 0, 255, 255, 255, 255, 1, 0, 0, 0, 1, 0, 0, 0,
371 13, 0, 0, 0, 246, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
372 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0,
373 0, 0, 1, 0, 0, 0, 73, 110, 112, 117, 116, 83, 97, 109, 112,
374 108, 101, 114, 0, 71, 114, 97, 100, 105, 101, 110, 116, 83, 97, 109,
375 112, 108, 101, 114, 0, 73, 110, 112, 117, 116, 84, 101, 120, 116, 117,
376 114, 101, 0, 71, 114, 97, 100, 105, 101, 110, 116, 84, 101, 120, 116,
377 117, 114, 101, 0, 114, 97, 100, 105, 97, 108, 71, 114, 97, 100, 105,
378 101, 110, 116, 67, 111, 110, 115, 116, 97, 110, 116, 115, 0, 171, 171,
379 246, 0, 0, 0, 8, 0, 0, 0, 40, 1, 0, 0, 80, 0, 0,
380 0, 0, 0, 0, 0, 0, 0, 0, 0, 232, 1, 0, 0, 0, 0,
381 0, 0, 12, 0, 0, 0, 2, 0, 0, 0, 240, 1, 0, 0, 0,
382 0, 0, 0, 0, 2, 0, 0, 16, 0, 0, 0, 8, 0, 0, 0,
383 2, 0, 0, 0, 8, 2, 0, 0, 0, 0, 0, 0, 24, 2, 0,
384 0, 24, 0, 0, 0, 4, 0, 0, 0, 2, 0, 0, 0, 28, 2,
385 0, 0, 0, 0, 0, 0, 44, 2, 0, 0, 28, 0, 0, 0, 4,
386 0, 0, 0, 2, 0, 0, 0, 28, 2, 0, 0, 0, 0, 0, 0,
387 52, 2, 0, 0, 32, 0, 0, 0, 4, 0, 0, 0, 2, 0, 0,
388 0, 28, 2, 0, 0, 0, 0, 0, 0, 63, 2, 0, 0, 36, 0,
389 0, 0, 4, 0, 0, 0, 2, 0, 0, 0, 28, 2, 0, 0, 0,
390 0, 0, 0, 78, 2, 0, 0, 40, 0, 0, 0, 4, 0, 0, 0,
391 2, 0, 0, 0, 28, 2, 0, 0, 0, 0, 0, 0, 88, 2, 0,
392 0, 48, 0, 0, 0, 28, 0, 0, 0, 2, 0, 0, 0, 100, 2,
393 0, 0, 0, 0, 0, 0, 100, 105, 102, 102, 0, 171, 171, 171, 1,
394 0, 3, 0, 1, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0,
395 99, 101, 110, 116, 101, 114, 49, 0, 1, 0, 3, 0, 1, 0, 2,
396 0, 0, 0, 0, 0, 0, 0, 0, 0, 65, 0, 171, 171, 0, 0,
397 3, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 114,
398 97, 100, 105, 117, 115, 49, 0, 115, 113, 95, 114, 97, 100, 105, 117,
399 115, 49, 0, 114, 101, 112, 101, 97, 116, 95, 99, 111, 114, 114, 101,
400 99, 116, 0, 97, 108, 108, 111, 119, 95, 111, 100, 100, 0, 116, 114,
401 97, 110, 115, 102, 111, 114, 109, 0, 171, 171, 3, 0, 3, 0, 3,
402 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 77, 105, 99, 114,
403 111, 115, 111, 102, 116, 32, 40, 82, 41, 32, 72, 76, 83, 76, 32,
404 83, 104, 97, 100, 101, 114, 32, 67, 111, 109, 112, 105, 108, 101, 114,
405 32, 54, 46, 51, 46, 57, 54, 48, 48, 46, 49, 54, 51, 56, 52,
406 0, 171, 171, 73, 83, 71, 78, 116, 0, 0, 0, 3, 0, 0, 0,
407 8, 0, 0, 0, 80, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0,
408 0, 3, 0, 0, 0, 0, 0, 0, 0, 15, 0, 0, 0, 92, 0,
409 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 1,
410 0, 0, 0, 15, 3, 0, 0, 107, 0, 0, 0, 0, 0, 0, 0,
411 0, 0, 0, 0, 3, 0, 0, 0, 2, 0, 0, 0, 15, 3, 0,
412 0, 83, 86, 95, 80, 79, 83, 73, 84, 73, 79, 78, 0, 83, 67,
413 69, 78, 69, 95, 80, 79, 83, 73, 84, 73, 79, 78, 0, 84, 69,
414 88, 67, 79, 79, 82, 68, 0, 79, 83, 71, 78, 44, 0, 0, 0,
415 1, 0, 0, 0, 8, 0, 0, 0, 32, 0, 0, 0, 0, 0, 0,
416 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 15, 0,
417 0, 0, 83, 86, 95, 84, 97, 114, 103, 101, 116, 0, 171, 171};
418 #if 0
420 // Generated by Microsoft (R) HLSL Shader Compiler 6.3.9600.16384
423 // Buffer Definitions:
425 // cbuffer radialGradientConstants
426 // {
428 // float3 diff; // Offset: 0 Size: 12
429 // float2 center1; // Offset: 16 Size: 8
430 // float A; // Offset: 24 Size: 4 [unused]
431 // float radius1; // Offset: 28 Size: 4
432 // float sq_radius1; // Offset: 32 Size: 4 [unused]
433 // float repeat_correct; // Offset: 36 Size: 4
434 // float allow_odd; // Offset: 40 Size: 4
435 // float3x2 transform; // Offset: 48 Size: 28
437 // }
440 // Resource Bindings:
442 // Name Type Format Dim Slot Elements
443 // ------------------------------ ---------- ------- ----------- ---- --------
444 // InputSampler sampler NA NA 0 1
445 // GradientSampler sampler NA NA 1 1
446 // InputTexture texture float4 2d 0 1
447 // GradientTexture texture float4 2d 1 1
448 // radialGradientConstants cbuffer NA NA 0 1
452 // Input signature:
454 // Name Index Mask Register SysValue Format Used
455 // -------------------- ----- ------ -------- -------- ------- ------
456 // SV_POSITION 0 xyzw 0 POS float
457 // SCENE_POSITION 0 xyzw 1 NONE float xy
458 // TEXCOORD 0 xyzw 2 NONE float xy
461 // Output signature:
463 // Name Index Mask Register SysValue Format Used
464 // -------------------- ----- ------ -------- -------- ------- ------
465 // SV_Target 0 xyzw 0 TARGET float xyzw
468 // Constant buffer to DX9 shader constant mappings:
470 // Target Reg Buffer Start Reg # of Regs Data Conversion
471 // ---------- ------- --------- --------- ----------------------
472 // c0 cb0 0 5 ( FLT, FLT, FLT, FLT)
475 // Sampler/Resource to DX9 shader sampler mappings:
477 // Target Sampler Source Sampler Source Resource
478 // -------------- --------------- ----------------
479 // s0 s0 t0
480 // s1 s1 t1
483 // Level9 shader bytecode:
485 ps_2_x
486 def c5, 0.5, -0, 1, 0
487 dcl t0
488 dcl t1
489 dcl_2d s0
490 dcl_2d s1
491 dp2add r0.x, t0, c3, c3.z
492 dp2add r0.y, t0, c4, c4.z
493 add r0.xy, r0, -c1
494 mul r0.w, c1.w, c1.w
495 dp2add r0.w, r0, r0, -r0.w
496 mul r0.w, r0.w, c5.x
497 mov r0.z, c1.w
498 dp3 r0.x, r0, c0
499 rcp r0.x, r0.x
500 mul r0.y, r0.x, r0.w
501 frc r0.z, r0.y
502 add r0.z, -r0.z, r0.y
503 mul r1.w, r0.z, c5.x
504 abs r1.x, r1.w
505 frc r1.x, r1.x
506 cmp r1.x, r0.z, r1.x, -r1.x
507 mad r0.x, r0.w, r0.x, -r0.z
508 add r0.z, r1.x, r1.x
509 abs r0.z, r0.z
510 mul r0.z, r0.z, c2.z
511 frc r0.w, -r0.y
512 lrp r1.x, r0.z, r0.w, r0.x
513 lrp r2.x, c2.y, r1.x, r0.y
514 mov r0.w, c1.w
515 mad r0.x, r0.y, -c0.z, -r0.w
516 cmp r0.x, r0.x, c5.y, c5.z
517 mov r2.y, c5.x
518 texld r1, t1, s0
519 texld r2, r2, s1
520 mul r2.xyz, r2.w, r2
521 mul r1, r1, r2
522 mul r0, r0.x, r1
523 mov oC0, r0
525 // approximately 36 instruction slots used (2 texture, 34 arithmetic)
526 ps_4_0
527 dcl_constantbuffer cb0[5], immediateIndexed
528 dcl_sampler s0, mode_default
529 dcl_sampler s1, mode_default
530 dcl_resource_texture2d (float,float,float,float) t0
531 dcl_resource_texture2d (float,float,float,float) t1
532 dcl_input_ps linear v1.xy
533 dcl_input_ps linear v2.xy
534 dcl_output o0.xyzw
535 dcl_temps 3
536 dp2 r0.x, v1.xyxx, cb0[3].xyxx
537 add r0.x, r0.x, cb0[3].z
538 dp2 r0.z, v1.xyxx, cb0[4].xyxx
539 add r0.y, r0.z, cb0[4].z
540 add r0.xy, r0.xyxx, -cb0[1].xyxx
541 dp2 r0.w, r0.xyxx, r0.xyxx
542 mad r0.w, -cb0[1].w, cb0[1].w, r0.w
543 mul r0.w, r0.w, l(0.500000)
544 mov r0.z, cb0[1].w
545 dp3 r0.x, r0.xyzx, cb0[0].xyzx
546 div r0.x, r0.w, r0.x
547 round_pi r0.y, r0.x
548 round_ni r0.z, r0.x
549 mul r0.w, r0.z, l(0.500000)
550 add r0.yz, -r0.xxzx, r0.yyxy
551 ge r1.x, r0.w, -r0.w
552 frc r0.w, |r0.w|
553 movc r0.w, r1.x, r0.w, -r0.w
554 add r0.w, r0.w, r0.w
555 mul r1.x, |r0.w|, cb0[2].z
556 mad r0.w, -|r0.w|, cb0[2].z, l(1.000000)
557 mul r0.y, r0.y, r1.x
558 mad r0.y, r0.z, r0.w, r0.y
559 mul r0.y, r0.y, cb0[2].y
560 add r0.z, l(1.000000), -cb0[2].y
561 mad r1.x, r0.x, r0.z, r0.y
562 mul r0.x, r0.x, cb0[0].z
563 ge r0.x, -cb0[1].w, r0.x
564 movc r0.x, r0.x, l(-0.000000), l(1.000000)
565 mov r1.y, l(0.500000)
566 sample r1.xyzw, r1.xyxx, t1.xyzw, s1
567 mul r1.xyz, r1.wwww, r1.xyzx
568 sample r2.xyzw, v2.xyxx, t0.xyzw, s0
569 mul r1.xyzw, r1.xyzw, r2.xyzw
570 mul o0.xyzw, r0.xxxx, r1.xyzw
572 // Approximately 36 instruction slots used
573 #endif
575 const BYTE SampleRadialGradientA0PS[] = {
576 68, 88, 66, 67, 251, 98, 227, 203, 98, 180, 0, 199, 88, 100, 39,
577 81, 223, 130, 11, 15, 1, 0, 0, 0, 136, 11, 0, 0, 6, 0,
578 0, 0, 56, 0, 0, 0, 212, 2, 0, 0, 172, 7, 0, 0, 40,
579 8, 0, 0, 216, 10, 0, 0, 84, 11, 0, 0, 65, 111, 110, 57,
580 148, 2, 0, 0, 148, 2, 0, 0, 0, 2, 255, 255, 92, 2, 0,
581 0, 56, 0, 0, 0, 1, 0, 44, 0, 0, 0, 56, 0, 0, 0,
582 56, 0, 2, 0, 36, 0, 0, 0, 56, 0, 0, 0, 0, 0, 1,
583 1, 1, 0, 0, 0, 0, 0, 5, 0, 0, 0, 0, 0, 0, 0,
584 1, 2, 255, 255, 81, 0, 0, 5, 5, 0, 15, 160, 0, 0, 0,
585 63, 0, 0, 0, 128, 0, 0, 128, 63, 0, 0, 0, 0, 31, 0,
586 0, 2, 0, 0, 0, 128, 0, 0, 15, 176, 31, 0, 0, 2, 0,
587 0, 0, 128, 1, 0, 15, 176, 31, 0, 0, 2, 0, 0, 0, 144,
588 0, 8, 15, 160, 31, 0, 0, 2, 0, 0, 0, 144, 1, 8, 15,
589 160, 90, 0, 0, 4, 0, 0, 1, 128, 0, 0, 228, 176, 3, 0,
590 228, 160, 3, 0, 170, 160, 90, 0, 0, 4, 0, 0, 2, 128, 0,
591 0, 228, 176, 4, 0, 228, 160, 4, 0, 170, 160, 2, 0, 0, 3,
592 0, 0, 3, 128, 0, 0, 228, 128, 1, 0, 228, 161, 5, 0, 0,
593 3, 0, 0, 8, 128, 1, 0, 255, 160, 1, 0, 255, 160, 90, 0,
594 0, 4, 0, 0, 8, 128, 0, 0, 228, 128, 0, 0, 228, 128, 0,
595 0, 255, 129, 5, 0, 0, 3, 0, 0, 8, 128, 0, 0, 255, 128,
596 5, 0, 0, 160, 1, 0, 0, 2, 0, 0, 4, 128, 1, 0, 255,
597 160, 8, 0, 0, 3, 0, 0, 1, 128, 0, 0, 228, 128, 0, 0,
598 228, 160, 6, 0, 0, 2, 0, 0, 1, 128, 0, 0, 0, 128, 5,
599 0, 0, 3, 0, 0, 2, 128, 0, 0, 0, 128, 0, 0, 255, 128,
600 19, 0, 0, 2, 0, 0, 4, 128, 0, 0, 85, 128, 2, 0, 0,
601 3, 0, 0, 4, 128, 0, 0, 170, 129, 0, 0, 85, 128, 5, 0,
602 0, 3, 1, 0, 8, 128, 0, 0, 170, 128, 5, 0, 0, 160, 35,
603 0, 0, 2, 1, 0, 1, 128, 1, 0, 255, 128, 19, 0, 0, 2,
604 1, 0, 1, 128, 1, 0, 0, 128, 88, 0, 0, 4, 1, 0, 1,
605 128, 0, 0, 170, 128, 1, 0, 0, 128, 1, 0, 0, 129, 4, 0,
606 0, 4, 0, 0, 1, 128, 0, 0, 255, 128, 0, 0, 0, 128, 0,
607 0, 170, 129, 2, 0, 0, 3, 0, 0, 4, 128, 1, 0, 0, 128,
608 1, 0, 0, 128, 35, 0, 0, 2, 0, 0, 4, 128, 0, 0, 170,
609 128, 5, 0, 0, 3, 0, 0, 4, 128, 0, 0, 170, 128, 2, 0,
610 170, 160, 19, 0, 0, 2, 0, 0, 8, 128, 0, 0, 85, 129, 18,
611 0, 0, 4, 1, 0, 1, 128, 0, 0, 170, 128, 0, 0, 255, 128,
612 0, 0, 0, 128, 18, 0, 0, 4, 2, 0, 1, 128, 2, 0, 85,
613 160, 1, 0, 0, 128, 0, 0, 85, 128, 1, 0, 0, 2, 0, 0,
614 8, 128, 1, 0, 255, 160, 4, 0, 0, 4, 0, 0, 1, 128, 0,
615 0, 85, 128, 0, 0, 170, 161, 0, 0, 255, 129, 88, 0, 0, 4,
616 0, 0, 1, 128, 0, 0, 0, 128, 5, 0, 85, 160, 5, 0, 170,
617 160, 1, 0, 0, 2, 2, 0, 2, 128, 5, 0, 0, 160, 66, 0,
618 0, 3, 1, 0, 15, 128, 1, 0, 228, 176, 0, 8, 228, 160, 66,
619 0, 0, 3, 2, 0, 15, 128, 2, 0, 228, 128, 1, 8, 228, 160,
620 5, 0, 0, 3, 2, 0, 7, 128, 2, 0, 255, 128, 2, 0, 228,
621 128, 5, 0, 0, 3, 1, 0, 15, 128, 1, 0, 228, 128, 2, 0,
622 228, 128, 5, 0, 0, 3, 0, 0, 15, 128, 0, 0, 0, 128, 1,
623 0, 228, 128, 1, 0, 0, 2, 0, 8, 15, 128, 0, 0, 228, 128,
624 255, 255, 0, 0, 83, 72, 68, 82, 208, 4, 0, 0, 64, 0, 0,
625 0, 52, 1, 0, 0, 89, 0, 0, 4, 70, 142, 32, 0, 0, 0,
626 0, 0, 5, 0, 0, 0, 90, 0, 0, 3, 0, 96, 16, 0, 0,
627 0, 0, 0, 90, 0, 0, 3, 0, 96, 16, 0, 1, 0, 0, 0,
628 88, 24, 0, 4, 0, 112, 16, 0, 0, 0, 0, 0, 85, 85, 0,
629 0, 88, 24, 0, 4, 0, 112, 16, 0, 1, 0, 0, 0, 85, 85,
630 0, 0, 98, 16, 0, 3, 50, 16, 16, 0, 1, 0, 0, 0, 98,
631 16, 0, 3, 50, 16, 16, 0, 2, 0, 0, 0, 101, 0, 0, 3,
632 242, 32, 16, 0, 0, 0, 0, 0, 104, 0, 0, 2, 3, 0, 0,
633 0, 15, 0, 0, 8, 18, 0, 16, 0, 0, 0, 0, 0, 70, 16,
634 16, 0, 1, 0, 0, 0, 70, 128, 32, 0, 0, 0, 0, 0, 3,
635 0, 0, 0, 0, 0, 0, 8, 18, 0, 16, 0, 0, 0, 0, 0,
636 10, 0, 16, 0, 0, 0, 0, 0, 42, 128, 32, 0, 0, 0, 0,
637 0, 3, 0, 0, 0, 15, 0, 0, 8, 66, 0, 16, 0, 0, 0,
638 0, 0, 70, 16, 16, 0, 1, 0, 0, 0, 70, 128, 32, 0, 0,
639 0, 0, 0, 4, 0, 0, 0, 0, 0, 0, 8, 34, 0, 16, 0,
640 0, 0, 0, 0, 42, 0, 16, 0, 0, 0, 0, 0, 42, 128, 32,
641 0, 0, 0, 0, 0, 4, 0, 0, 0, 0, 0, 0, 9, 50, 0,
642 16, 0, 0, 0, 0, 0, 70, 0, 16, 0, 0, 0, 0, 0, 70,
643 128, 32, 128, 65, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0,
644 15, 0, 0, 7, 130, 0, 16, 0, 0, 0, 0, 0, 70, 0, 16,
645 0, 0, 0, 0, 0, 70, 0, 16, 0, 0, 0, 0, 0, 50, 0,
646 0, 12, 130, 0, 16, 0, 0, 0, 0, 0, 58, 128, 32, 128, 65,
647 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 58, 128, 32, 0,
648 0, 0, 0, 0, 1, 0, 0, 0, 58, 0, 16, 0, 0, 0, 0,
649 0, 56, 0, 0, 7, 130, 0, 16, 0, 0, 0, 0, 0, 58, 0,
650 16, 0, 0, 0, 0, 0, 1, 64, 0, 0, 0, 0, 0, 63, 54,
651 0, 0, 6, 66, 0, 16, 0, 0, 0, 0, 0, 58, 128, 32, 0,
652 0, 0, 0, 0, 1, 0, 0, 0, 16, 0, 0, 8, 18, 0, 16,
653 0, 0, 0, 0, 0, 70, 2, 16, 0, 0, 0, 0, 0, 70, 130,
654 32, 0, 0, 0, 0, 0, 0, 0, 0, 0, 14, 0, 0, 7, 18,
655 0, 16, 0, 0, 0, 0, 0, 58, 0, 16, 0, 0, 0, 0, 0,
656 10, 0, 16, 0, 0, 0, 0, 0, 66, 0, 0, 5, 34, 0, 16,
657 0, 0, 0, 0, 0, 10, 0, 16, 0, 0, 0, 0, 0, 65, 0,
658 0, 5, 66, 0, 16, 0, 0, 0, 0, 0, 10, 0, 16, 0, 0,
659 0, 0, 0, 56, 0, 0, 7, 130, 0, 16, 0, 0, 0, 0, 0,
660 42, 0, 16, 0, 0, 0, 0, 0, 1, 64, 0, 0, 0, 0, 0,
661 63, 0, 0, 0, 8, 98, 0, 16, 0, 0, 0, 0, 0, 6, 2,
662 16, 128, 65, 0, 0, 0, 0, 0, 0, 0, 86, 4, 16, 0, 0,
663 0, 0, 0, 29, 0, 0, 8, 18, 0, 16, 0, 1, 0, 0, 0,
664 58, 0, 16, 0, 0, 0, 0, 0, 58, 0, 16, 128, 65, 0, 0,
665 0, 0, 0, 0, 0, 26, 0, 0, 6, 130, 0, 16, 0, 0, 0,
666 0, 0, 58, 0, 16, 128, 129, 0, 0, 0, 0, 0, 0, 0, 55,
667 0, 0, 10, 130, 0, 16, 0, 0, 0, 0, 0, 10, 0, 16, 0,
668 1, 0, 0, 0, 58, 0, 16, 0, 0, 0, 0, 0, 58, 0, 16,
669 128, 65, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7, 130, 0,
670 16, 0, 0, 0, 0, 0, 58, 0, 16, 0, 0, 0, 0, 0, 58,
671 0, 16, 0, 0, 0, 0, 0, 56, 0, 0, 9, 18, 0, 16, 0,
672 1, 0, 0, 0, 58, 0, 16, 128, 129, 0, 0, 0, 0, 0, 0,
673 0, 42, 128, 32, 0, 0, 0, 0, 0, 2, 0, 0, 0, 50, 0,
674 0, 11, 130, 0, 16, 0, 0, 0, 0, 0, 58, 0, 16, 128, 193,
675 0, 0, 0, 0, 0, 0, 0, 42, 128, 32, 0, 0, 0, 0, 0,
676 2, 0, 0, 0, 1, 64, 0, 0, 0, 0, 128, 63, 56, 0, 0,
677 7, 34, 0, 16, 0, 0, 0, 0, 0, 26, 0, 16, 0, 0, 0,
678 0, 0, 10, 0, 16, 0, 1, 0, 0, 0, 50, 0, 0, 9, 34,
679 0, 16, 0, 0, 0, 0, 0, 42, 0, 16, 0, 0, 0, 0, 0,
680 58, 0, 16, 0, 0, 0, 0, 0, 26, 0, 16, 0, 0, 0, 0,
681 0, 56, 0, 0, 8, 34, 0, 16, 0, 0, 0, 0, 0, 26, 0,
682 16, 0, 0, 0, 0, 0, 26, 128, 32, 0, 0, 0, 0, 0, 2,
683 0, 0, 0, 0, 0, 0, 9, 66, 0, 16, 0, 0, 0, 0, 0,
684 1, 64, 0, 0, 0, 0, 128, 63, 26, 128, 32, 128, 65, 0, 0,
685 0, 0, 0, 0, 0, 2, 0, 0, 0, 50, 0, 0, 9, 18, 0,
686 16, 0, 1, 0, 0, 0, 10, 0, 16, 0, 0, 0, 0, 0, 42,
687 0, 16, 0, 0, 0, 0, 0, 26, 0, 16, 0, 0, 0, 0, 0,
688 56, 0, 0, 8, 18, 0, 16, 0, 0, 0, 0, 0, 10, 0, 16,
689 0, 0, 0, 0, 0, 42, 128, 32, 0, 0, 0, 0, 0, 0, 0,
690 0, 0, 29, 0, 0, 9, 18, 0, 16, 0, 0, 0, 0, 0, 58,
691 128, 32, 128, 65, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0,
692 10, 0, 16, 0, 0, 0, 0, 0, 55, 0, 0, 9, 18, 0, 16,
693 0, 0, 0, 0, 0, 10, 0, 16, 0, 0, 0, 0, 0, 1, 64,
694 0, 0, 0, 0, 0, 128, 1, 64, 0, 0, 0, 0, 128, 63, 54,
695 0, 0, 5, 34, 0, 16, 0, 1, 0, 0, 0, 1, 64, 0, 0,
696 0, 0, 0, 63, 69, 0, 0, 9, 242, 0, 16, 0, 1, 0, 0,
697 0, 70, 0, 16, 0, 1, 0, 0, 0, 70, 126, 16, 0, 1, 0,
698 0, 0, 0, 96, 16, 0, 1, 0, 0, 0, 56, 0, 0, 7, 114,
699 0, 16, 0, 1, 0, 0, 0, 246, 15, 16, 0, 1, 0, 0, 0,
700 70, 2, 16, 0, 1, 0, 0, 0, 69, 0, 0, 9, 242, 0, 16,
701 0, 2, 0, 0, 0, 70, 16, 16, 0, 2, 0, 0, 0, 70, 126,
702 16, 0, 0, 0, 0, 0, 0, 96, 16, 0, 0, 0, 0, 0, 56,
703 0, 0, 7, 242, 0, 16, 0, 1, 0, 0, 0, 70, 14, 16, 0,
704 1, 0, 0, 0, 70, 14, 16, 0, 2, 0, 0, 0, 56, 0, 0,
705 7, 242, 32, 16, 0, 0, 0, 0, 0, 6, 0, 16, 0, 0, 0,
706 0, 0, 70, 14, 16, 0, 1, 0, 0, 0, 62, 0, 0, 1, 83,
707 84, 65, 84, 116, 0, 0, 0, 36, 0, 0, 0, 3, 0, 0, 0,
708 0, 0, 0, 0, 3, 0, 0, 0, 29, 0, 0, 0, 0, 0, 0,
709 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0,
710 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
711 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
712 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 2, 0, 0,
713 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
714 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
715 0, 0, 0, 82, 68, 69, 70, 168, 2, 0, 0, 1, 0, 0, 0,
716 16, 1, 0, 0, 5, 0, 0, 0, 28, 0, 0, 0, 0, 4, 255,
717 255, 0, 1, 0, 0, 116, 2, 0, 0, 188, 0, 0, 0, 3, 0,
718 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
719 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 201, 0, 0, 0,
720 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
721 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 217, 0,
722 0, 0, 2, 0, 0, 0, 5, 0, 0, 0, 4, 0, 0, 0, 255,
723 255, 255, 255, 0, 0, 0, 0, 1, 0, 0, 0, 13, 0, 0, 0,
724 230, 0, 0, 0, 2, 0, 0, 0, 5, 0, 0, 0, 4, 0, 0,
725 0, 255, 255, 255, 255, 1, 0, 0, 0, 1, 0, 0, 0, 13, 0,
726 0, 0, 246, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
727 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0,
728 1, 0, 0, 0, 73, 110, 112, 117, 116, 83, 97, 109, 112, 108, 101,
729 114, 0, 71, 114, 97, 100, 105, 101, 110, 116, 83, 97, 109, 112, 108,
730 101, 114, 0, 73, 110, 112, 117, 116, 84, 101, 120, 116, 117, 114, 101,
731 0, 71, 114, 97, 100, 105, 101, 110, 116, 84, 101, 120, 116, 117, 114,
732 101, 0, 114, 97, 100, 105, 97, 108, 71, 114, 97, 100, 105, 101, 110,
733 116, 67, 111, 110, 115, 116, 97, 110, 116, 115, 0, 171, 171, 246, 0,
734 0, 0, 8, 0, 0, 0, 40, 1, 0, 0, 80, 0, 0, 0, 0,
735 0, 0, 0, 0, 0, 0, 0, 232, 1, 0, 0, 0, 0, 0, 0,
736 12, 0, 0, 0, 2, 0, 0, 0, 240, 1, 0, 0, 0, 0, 0,
737 0, 0, 2, 0, 0, 16, 0, 0, 0, 8, 0, 0, 0, 2, 0,
738 0, 0, 8, 2, 0, 0, 0, 0, 0, 0, 24, 2, 0, 0, 24,
739 0, 0, 0, 4, 0, 0, 0, 0, 0, 0, 0, 28, 2, 0, 0,
740 0, 0, 0, 0, 44, 2, 0, 0, 28, 0, 0, 0, 4, 0, 0,
741 0, 2, 0, 0, 0, 28, 2, 0, 0, 0, 0, 0, 0, 52, 2,
742 0, 0, 32, 0, 0, 0, 4, 0, 0, 0, 0, 0, 0, 0, 28,
743 2, 0, 0, 0, 0, 0, 0, 63, 2, 0, 0, 36, 0, 0, 0,
744 4, 0, 0, 0, 2, 0, 0, 0, 28, 2, 0, 0, 0, 0, 0,
745 0, 78, 2, 0, 0, 40, 0, 0, 0, 4, 0, 0, 0, 2, 0,
746 0, 0, 28, 2, 0, 0, 0, 0, 0, 0, 88, 2, 0, 0, 48,
747 0, 0, 0, 28, 0, 0, 0, 2, 0, 0, 0, 100, 2, 0, 0,
748 0, 0, 0, 0, 100, 105, 102, 102, 0, 171, 171, 171, 1, 0, 3,
749 0, 1, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 99, 101,
750 110, 116, 101, 114, 49, 0, 1, 0, 3, 0, 1, 0, 2, 0, 0,
751 0, 0, 0, 0, 0, 0, 0, 65, 0, 171, 171, 0, 0, 3, 0,
752 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 114, 97, 100,
753 105, 117, 115, 49, 0, 115, 113, 95, 114, 97, 100, 105, 117, 115, 49,
754 0, 114, 101, 112, 101, 97, 116, 95, 99, 111, 114, 114, 101, 99, 116,
755 0, 97, 108, 108, 111, 119, 95, 111, 100, 100, 0, 116, 114, 97, 110,
756 115, 102, 111, 114, 109, 0, 171, 171, 3, 0, 3, 0, 3, 0, 2,
757 0, 0, 0, 0, 0, 0, 0, 0, 0, 77, 105, 99, 114, 111, 115,
758 111, 102, 116, 32, 40, 82, 41, 32, 72, 76, 83, 76, 32, 83, 104,
759 97, 100, 101, 114, 32, 67, 111, 109, 112, 105, 108, 101, 114, 32, 54,
760 46, 51, 46, 57, 54, 48, 48, 46, 49, 54, 51, 56, 52, 0, 171,
761 171, 73, 83, 71, 78, 116, 0, 0, 0, 3, 0, 0, 0, 8, 0,
762 0, 0, 80, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 3,
763 0, 0, 0, 0, 0, 0, 0, 15, 0, 0, 0, 92, 0, 0, 0,
764 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 1, 0, 0,
765 0, 15, 3, 0, 0, 107, 0, 0, 0, 0, 0, 0, 0, 0, 0,
766 0, 0, 3, 0, 0, 0, 2, 0, 0, 0, 15, 3, 0, 0, 83,
767 86, 95, 80, 79, 83, 73, 84, 73, 79, 78, 0, 83, 67, 69, 78,
768 69, 95, 80, 79, 83, 73, 84, 73, 79, 78, 0, 84, 69, 88, 67,
769 79, 79, 82, 68, 0, 79, 83, 71, 78, 44, 0, 0, 0, 1, 0,
770 0, 0, 8, 0, 0, 0, 32, 0, 0, 0, 0, 0, 0, 0, 0,
771 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 15, 0, 0, 0,
772 83, 86, 95, 84, 97, 114, 103, 101, 116, 0, 171, 171};
773 #if 0
775 // Generated by Microsoft (R) HLSL Shader Compiler 6.3.9600.16384
778 // Buffer Definitions:
780 // cbuffer conicGradientConstants
781 // {
783 // float2 center; // Offset: 0 Size: 8
784 // float angle; // Offset: 8 Size: 4
785 // float start_offset; // Offset: 12 Size: 4
786 // float end_offset; // Offset: 16 Size: 4
787 // float repeat_correct_conic; // Offset: 20 Size: 4 [unused]
788 // float allow_odd_conic; // Offset: 24 Size: 4 [unused]
789 // float3x2 transform_conic; // Offset: 32 Size: 28
791 // }
794 // Resource Bindings:
796 // Name Type Format Dim Slot Elements
797 // ------------------------------ ---------- ------- ----------- ---- --------
798 // InputSampler sampler NA NA 0 1
799 // GradientSampler sampler NA NA 1 1
800 // InputTexture texture float4 2d 0 1
801 // GradientTexture texture float4 2d 1 1
802 // conicGradientConstants cbuffer NA NA 0 1
806 // Input signature:
808 // Name Index Mask Register SysValue Format Used
809 // -------------------- ----- ------ -------- -------- ------- ------
810 // SV_POSITION 0 xyzw 0 POS float
811 // SCENE_POSITION 0 xyzw 1 NONE float xy
812 // TEXCOORD 0 xyzw 2 NONE float xy
815 // Output signature:
817 // Name Index Mask Register SysValue Format Used
818 // -------------------- ----- ------ -------- -------- ------- ------
819 // SV_Target 0 xyzw 0 TARGET float xyzw
822 // Constant buffer to DX9 shader constant mappings:
824 // Target Reg Buffer Start Reg # of Regs Data Conversion
825 // ---------- ------- --------- --------- ----------------------
826 // c0 cb0 0 4 ( FLT, FLT, FLT, FLT)
829 // Sampler/Resource to DX9 shader sampler mappings:
831 // Target Sampler Source Sampler Source Resource
832 // -------------- --------------- ----------------
833 // s0 s0 t0
834 // s1 s1 t1
837 // Level9 shader bytecode:
839 ps_2_x
840 def c4, 0.0208350997, -0.0851330012, 0.180141002, -0.330299497
841 def c5, 0.999866009, 0, 1, 3.14159274
842 def c6, -2, 1.57079637, 0.159154937, 0.5
843 dcl t0
844 dcl t1
845 dcl_2d s0
846 dcl_2d s1
847 dp2add r0.w, t0, c2, c2.z
848 add r0.x, -r0.w, c0.x
849 dp2add r0.z, t0, c3, c3.z
850 add r0.z, -r0.z, c0.y
851 abs r0.yw, r0.xxzz
852 max r1.w, r0.y, r0.w
853 rcp r1.x, r1.w
854 min r1.y, r0.w, r0.y
855 add r0.y, -r0.y, r0.w
856 cmp r0.y, r0.y, c5.y, c5.z
857 mul r0.w, r1.x, r1.y
858 mul r1.x, r0.w, r0.w
859 mad r1.y, r1.x, c4.x, c4.y
860 mad r1.y, r1.x, r1.y, c4.z
861 mad r1.y, r1.x, r1.y, c4.w
862 mad r1.x, r1.x, r1.y, c5.x
863 mul r0.w, r0.w, r1.x
864 mad r1.x, r0.w, c6.x, c6.y
865 mad r0.y, r1.x, r0.y, r0.w
866 cmp r0.w, -r0.z, -c5.y, -c5.w
867 add r0.y, r0.w, r0.y
868 add r0.w, r0.y, r0.y
869 max r1.x, r0.x, -r0.z
870 min r1.y, -r0.z, r0.x
871 cmp r0.x, r1.x, c5.z, c5.y
872 cmp r0.x, r1.y, c5.y, r0.x
873 mad r0.x, r0.x, -r0.w, r0.y
874 add r0.x, r0.x, -c0.z
875 mov r0.w, c0.w
876 add r0.y, -r0.w, c1.x
877 rcp r0.y, r0.y
878 mul r0.x, r0.x, r0.y
879 mov r0.z, c6.z
880 mad r0.x, r0.x, r0.z, c1.x
881 add r0.x, r0.x, -c0.w
882 add r0.x, r0.x, c6.w
883 abs r0.y, r0.x
884 frc r0.y, r0.y
885 cmp r0.x, r0.x, r0.y, -r0.y
886 mov r0.y, c6.w
887 texld r1, t1, s0
888 texld r0, r0, s1
889 mul r0.xyz, r0.w, r0
890 mul r0, r1, r0
891 mov oC0, r0
893 // approximately 47 instruction slots used (2 texture, 45 arithmetic)
894 ps_4_0
895 dcl_constantbuffer cb0[4], immediateIndexed
896 dcl_sampler s0, mode_default
897 dcl_sampler s1, mode_default
898 dcl_resource_texture2d (float,float,float,float) t0
899 dcl_resource_texture2d (float,float,float,float) t1
900 dcl_input_ps linear v1.xy
901 dcl_input_ps linear v2.xy
902 dcl_output o0.xyzw
903 dcl_temps 2
904 dp2 r0.x, v1.xyxx, cb0[2].xyxx
905 add r0.x, r0.x, cb0[2].z
906 dp2 r0.y, v1.xyxx, cb0[3].xyxx
907 add r0.y, r0.y, cb0[3].z
908 add r0.xy, -r0.xyxx, cb0[0].xyxx
909 max r0.z, |r0.y|, |r0.x|
910 div r0.z, l(1.000000, 1.000000, 1.000000, 1.000000), r0.z
911 min r0.w, |r0.y|, |r0.x|
912 mul r0.z, r0.z, r0.w
913 mul r0.w, r0.z, r0.z
914 mad r1.x, r0.w, l(0.020835), l(-0.085133)
915 mad r1.x, r0.w, r1.x, l(0.180141)
916 mad r1.x, r0.w, r1.x, l(-0.330299)
917 mad r0.w, r0.w, r1.x, l(0.999866)
918 mul r1.x, r0.w, r0.z
919 mad r1.x, r1.x, l(-2.000000), l(1.570796)
920 lt r1.y, |r0.y|, |r0.x|
921 and r1.x, r1.y, r1.x
922 mad r0.z, r0.z, r0.w, r1.x
923 lt r0.w, -r0.y, r0.y
924 and r0.w, r0.w, l(0xc0490fdb)
925 add r0.z, r0.w, r0.z
926 min r0.w, -r0.y, r0.x
927 max r0.x, -r0.y, r0.x
928 ge r0.x, r0.x, -r0.x
929 lt r0.y, r0.w, -r0.w
930 and r0.x, r0.x, r0.y
931 movc r0.x, r0.x, -r0.z, r0.z
932 add r0.x, r0.x, -cb0[0].z
933 add r0.y, -cb0[0].w, cb0[1].x
934 div r0.y, l(1.000000, 1.000000, 1.000000, 1.000000), r0.y
935 mul r0.x, r0.x, r0.y
936 mad r0.x, r0.x, l(0.159155), cb0[1].x
937 add r0.x, r0.x, -cb0[0].w
938 add r0.x, r0.x, l(0.500000)
939 ge r0.y, r0.x, -r0.x
940 frc r0.x, |r0.x|
941 movc r0.x, r0.y, r0.x, -r0.x
942 mov r0.y, l(0.500000)
943 sample r0.xyzw, r0.xyxx, t1.xyzw, s1
944 mul r0.xyz, r0.wwww, r0.xyzx
945 sample r1.xyzw, v2.xyxx, t0.xyzw, s0
946 mul o0.xyzw, r0.xyzw, r1.xyzw
948 // Approximately 44 instruction slots used
949 #endif
951 const BYTE SampleConicGradientPS[] = {
952 68, 88, 66, 67, 111, 210, 133, 71, 96, 114, 123, 208, 6, 154, 50,
953 242, 194, 61, 177, 240, 1, 0, 0, 0, 184, 13, 0, 0, 6, 0,
954 0, 0, 56, 0, 0, 0, 224, 3, 0, 0, 240, 9, 0, 0, 108,
955 10, 0, 0, 8, 13, 0, 0, 132, 13, 0, 0, 65, 111, 110, 57,
956 160, 3, 0, 0, 160, 3, 0, 0, 0, 2, 255, 255, 104, 3, 0,
957 0, 56, 0, 0, 0, 1, 0, 44, 0, 0, 0, 56, 0, 0, 0,
958 56, 0, 2, 0, 36, 0, 0, 0, 56, 0, 0, 0, 0, 0, 1,
959 1, 1, 0, 0, 0, 0, 0, 4, 0, 0, 0, 0, 0, 0, 0,
960 1, 2, 255, 255, 81, 0, 0, 5, 4, 0, 15, 160, 95, 174, 170,
961 60, 54, 90, 174, 189, 226, 118, 56, 62, 4, 29, 169, 190, 81, 0,
962 0, 5, 5, 0, 15, 160, 56, 247, 127, 63, 0, 0, 0, 0, 0,
963 0, 128, 63, 219, 15, 73, 64, 81, 0, 0, 5, 6, 0, 15, 160,
964 0, 0, 0, 192, 219, 15, 201, 63, 131, 249, 34, 62, 0, 0, 0,
965 63, 31, 0, 0, 2, 0, 0, 0, 128, 0, 0, 15, 176, 31, 0,
966 0, 2, 0, 0, 0, 128, 1, 0, 15, 176, 31, 0, 0, 2, 0,
967 0, 0, 144, 0, 8, 15, 160, 31, 0, 0, 2, 0, 0, 0, 144,
968 1, 8, 15, 160, 90, 0, 0, 4, 0, 0, 8, 128, 0, 0, 228,
969 176, 2, 0, 228, 160, 2, 0, 170, 160, 2, 0, 0, 3, 0, 0,
970 1, 128, 0, 0, 255, 129, 0, 0, 0, 160, 90, 0, 0, 4, 0,
971 0, 4, 128, 0, 0, 228, 176, 3, 0, 228, 160, 3, 0, 170, 160,
972 2, 0, 0, 3, 0, 0, 4, 128, 0, 0, 170, 129, 0, 0, 85,
973 160, 35, 0, 0, 2, 0, 0, 10, 128, 0, 0, 160, 128, 11, 0,
974 0, 3, 1, 0, 8, 128, 0, 0, 85, 128, 0, 0, 255, 128, 6,
975 0, 0, 2, 1, 0, 1, 128, 1, 0, 255, 128, 10, 0, 0, 3,
976 1, 0, 2, 128, 0, 0, 255, 128, 0, 0, 85, 128, 2, 0, 0,
977 3, 0, 0, 2, 128, 0, 0, 85, 129, 0, 0, 255, 128, 88, 0,
978 0, 4, 0, 0, 2, 128, 0, 0, 85, 128, 5, 0, 85, 160, 5,
979 0, 170, 160, 5, 0, 0, 3, 0, 0, 8, 128, 1, 0, 0, 128,
980 1, 0, 85, 128, 5, 0, 0, 3, 1, 0, 1, 128, 0, 0, 255,
981 128, 0, 0, 255, 128, 4, 0, 0, 4, 1, 0, 2, 128, 1, 0,
982 0, 128, 4, 0, 0, 160, 4, 0, 85, 160, 4, 0, 0, 4, 1,
983 0, 2, 128, 1, 0, 0, 128, 1, 0, 85, 128, 4, 0, 170, 160,
984 4, 0, 0, 4, 1, 0, 2, 128, 1, 0, 0, 128, 1, 0, 85,
985 128, 4, 0, 255, 160, 4, 0, 0, 4, 1, 0, 1, 128, 1, 0,
986 0, 128, 1, 0, 85, 128, 5, 0, 0, 160, 5, 0, 0, 3, 0,
987 0, 8, 128, 0, 0, 255, 128, 1, 0, 0, 128, 4, 0, 0, 4,
988 1, 0, 1, 128, 0, 0, 255, 128, 6, 0, 0, 160, 6, 0, 85,
989 160, 4, 0, 0, 4, 0, 0, 2, 128, 1, 0, 0, 128, 0, 0,
990 85, 128, 0, 0, 255, 128, 88, 0, 0, 4, 0, 0, 8, 128, 0,
991 0, 170, 129, 5, 0, 85, 161, 5, 0, 255, 161, 2, 0, 0, 3,
992 0, 0, 2, 128, 0, 0, 255, 128, 0, 0, 85, 128, 2, 0, 0,
993 3, 0, 0, 8, 128, 0, 0, 85, 128, 0, 0, 85, 128, 11, 0,
994 0, 3, 1, 0, 1, 128, 0, 0, 0, 128, 0, 0, 170, 129, 10,
995 0, 0, 3, 1, 0, 2, 128, 0, 0, 170, 129, 0, 0, 0, 128,
996 88, 0, 0, 4, 0, 0, 1, 128, 1, 0, 0, 128, 5, 0, 170,
997 160, 5, 0, 85, 160, 88, 0, 0, 4, 0, 0, 1, 128, 1, 0,
998 85, 128, 5, 0, 85, 160, 0, 0, 0, 128, 4, 0, 0, 4, 0,
999 0, 1, 128, 0, 0, 0, 128, 0, 0, 255, 129, 0, 0, 85, 128,
1000 2, 0, 0, 3, 0, 0, 1, 128, 0, 0, 0, 128, 0, 0, 170,
1001 161, 1, 0, 0, 2, 0, 0, 8, 128, 0, 0, 255, 160, 2, 0,
1002 0, 3, 0, 0, 2, 128, 0, 0, 255, 129, 1, 0, 0, 160, 6,
1003 0, 0, 2, 0, 0, 2, 128, 0, 0, 85, 128, 5, 0, 0, 3,
1004 0, 0, 1, 128, 0, 0, 0, 128, 0, 0, 85, 128, 1, 0, 0,
1005 2, 0, 0, 4, 128, 6, 0, 170, 160, 4, 0, 0, 4, 0, 0,
1006 1, 128, 0, 0, 0, 128, 0, 0, 170, 128, 1, 0, 0, 160, 2,
1007 0, 0, 3, 0, 0, 1, 128, 0, 0, 0, 128, 0, 0, 255, 161,
1008 2, 0, 0, 3, 0, 0, 1, 128, 0, 0, 0, 128, 6, 0, 255,
1009 160, 35, 0, 0, 2, 0, 0, 2, 128, 0, 0, 0, 128, 19, 0,
1010 0, 2, 0, 0, 2, 128, 0, 0, 85, 128, 88, 0, 0, 4, 0,
1011 0, 1, 128, 0, 0, 0, 128, 0, 0, 85, 128, 0, 0, 85, 129,
1012 1, 0, 0, 2, 0, 0, 2, 128, 6, 0, 255, 160, 66, 0, 0,
1013 3, 1, 0, 15, 128, 1, 0, 228, 176, 0, 8, 228, 160, 66, 0,
1014 0, 3, 0, 0, 15, 128, 0, 0, 228, 128, 1, 8, 228, 160, 5,
1015 0, 0, 3, 0, 0, 7, 128, 0, 0, 255, 128, 0, 0, 228, 128,
1016 5, 0, 0, 3, 0, 0, 15, 128, 1, 0, 228, 128, 0, 0, 228,
1017 128, 1, 0, 0, 2, 0, 8, 15, 128, 0, 0, 228, 128, 255, 255,
1018 0, 0, 83, 72, 68, 82, 8, 6, 0, 0, 64, 0, 0, 0, 130,
1019 1, 0, 0, 89, 0, 0, 4, 70, 142, 32, 0, 0, 0, 0, 0,
1020 4, 0, 0, 0, 90, 0, 0, 3, 0, 96, 16, 0, 0, 0, 0,
1021 0, 90, 0, 0, 3, 0, 96, 16, 0, 1, 0, 0, 0, 88, 24,
1022 0, 4, 0, 112, 16, 0, 0, 0, 0, 0, 85, 85, 0, 0, 88,
1023 24, 0, 4, 0, 112, 16, 0, 1, 0, 0, 0, 85, 85, 0, 0,
1024 98, 16, 0, 3, 50, 16, 16, 0, 1, 0, 0, 0, 98, 16, 0,
1025 3, 50, 16, 16, 0, 2, 0, 0, 0, 101, 0, 0, 3, 242, 32,
1026 16, 0, 0, 0, 0, 0, 104, 0, 0, 2, 2, 0, 0, 0, 15,
1027 0, 0, 8, 18, 0, 16, 0, 0, 0, 0, 0, 70, 16, 16, 0,
1028 1, 0, 0, 0, 70, 128, 32, 0, 0, 0, 0, 0, 2, 0, 0,
1029 0, 0, 0, 0, 8, 18, 0, 16, 0, 0, 0, 0, 0, 10, 0,
1030 16, 0, 0, 0, 0, 0, 42, 128, 32, 0, 0, 0, 0, 0, 2,
1031 0, 0, 0, 15, 0, 0, 8, 34, 0, 16, 0, 0, 0, 0, 0,
1032 70, 16, 16, 0, 1, 0, 0, 0, 70, 128, 32, 0, 0, 0, 0,
1033 0, 3, 0, 0, 0, 0, 0, 0, 8, 34, 0, 16, 0, 0, 0,
1034 0, 0, 26, 0, 16, 0, 0, 0, 0, 0, 42, 128, 32, 0, 0,
1035 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 9, 50, 0, 16, 0,
1036 0, 0, 0, 0, 70, 0, 16, 128, 65, 0, 0, 0, 0, 0, 0,
1037 0, 70, 128, 32, 0, 0, 0, 0, 0, 0, 0, 0, 0, 52, 0,
1038 0, 9, 66, 0, 16, 0, 0, 0, 0, 0, 26, 0, 16, 128, 129,
1039 0, 0, 0, 0, 0, 0, 0, 10, 0, 16, 128, 129, 0, 0, 0,
1040 0, 0, 0, 0, 14, 0, 0, 10, 66, 0, 16, 0, 0, 0, 0,
1041 0, 2, 64, 0, 0, 0, 0, 128, 63, 0, 0, 128, 63, 0, 0,
1042 128, 63, 0, 0, 128, 63, 42, 0, 16, 0, 0, 0, 0, 0, 51,
1043 0, 0, 9, 130, 0, 16, 0, 0, 0, 0, 0, 26, 0, 16, 128,
1044 129, 0, 0, 0, 0, 0, 0, 0, 10, 0, 16, 128, 129, 0, 0,
1045 0, 0, 0, 0, 0, 56, 0, 0, 7, 66, 0, 16, 0, 0, 0,
1046 0, 0, 42, 0, 16, 0, 0, 0, 0, 0, 58, 0, 16, 0, 0,
1047 0, 0, 0, 56, 0, 0, 7, 130, 0, 16, 0, 0, 0, 0, 0,
1048 42, 0, 16, 0, 0, 0, 0, 0, 42, 0, 16, 0, 0, 0, 0,
1049 0, 50, 0, 0, 9, 18, 0, 16, 0, 1, 0, 0, 0, 58, 0,
1050 16, 0, 0, 0, 0, 0, 1, 64, 0, 0, 95, 174, 170, 60, 1,
1051 64, 0, 0, 54, 90, 174, 189, 50, 0, 0, 9, 18, 0, 16, 0,
1052 1, 0, 0, 0, 58, 0, 16, 0, 0, 0, 0, 0, 10, 0, 16,
1053 0, 1, 0, 0, 0, 1, 64, 0, 0, 226, 118, 56, 62, 50, 0,
1054 0, 9, 18, 0, 16, 0, 1, 0, 0, 0, 58, 0, 16, 0, 0,
1055 0, 0, 0, 10, 0, 16, 0, 1, 0, 0, 0, 1, 64, 0, 0,
1056 4, 29, 169, 190, 50, 0, 0, 9, 130, 0, 16, 0, 0, 0, 0,
1057 0, 58, 0, 16, 0, 0, 0, 0, 0, 10, 0, 16, 0, 1, 0,
1058 0, 0, 1, 64, 0, 0, 56, 247, 127, 63, 56, 0, 0, 7, 18,
1059 0, 16, 0, 1, 0, 0, 0, 58, 0, 16, 0, 0, 0, 0, 0,
1060 42, 0, 16, 0, 0, 0, 0, 0, 50, 0, 0, 9, 18, 0, 16,
1061 0, 1, 0, 0, 0, 10, 0, 16, 0, 1, 0, 0, 0, 1, 64,
1062 0, 0, 0, 0, 0, 192, 1, 64, 0, 0, 219, 15, 201, 63, 49,
1063 0, 0, 9, 34, 0, 16, 0, 1, 0, 0, 0, 26, 0, 16, 128,
1064 129, 0, 0, 0, 0, 0, 0, 0, 10, 0, 16, 128, 129, 0, 0,
1065 0, 0, 0, 0, 0, 1, 0, 0, 7, 18, 0, 16, 0, 1, 0,
1066 0, 0, 26, 0, 16, 0, 1, 0, 0, 0, 10, 0, 16, 0, 1,
1067 0, 0, 0, 50, 0, 0, 9, 66, 0, 16, 0, 0, 0, 0, 0,
1068 42, 0, 16, 0, 0, 0, 0, 0, 58, 0, 16, 0, 0, 0, 0,
1069 0, 10, 0, 16, 0, 1, 0, 0, 0, 49, 0, 0, 8, 130, 0,
1070 16, 0, 0, 0, 0, 0, 26, 0, 16, 128, 65, 0, 0, 0, 0,
1071 0, 0, 0, 26, 0, 16, 0, 0, 0, 0, 0, 1, 0, 0, 7,
1072 130, 0, 16, 0, 0, 0, 0, 0, 58, 0, 16, 0, 0, 0, 0,
1073 0, 1, 64, 0, 0, 219, 15, 73, 192, 0, 0, 0, 7, 66, 0,
1074 16, 0, 0, 0, 0, 0, 58, 0, 16, 0, 0, 0, 0, 0, 42,
1075 0, 16, 0, 0, 0, 0, 0, 51, 0, 0, 8, 130, 0, 16, 0,
1076 0, 0, 0, 0, 26, 0, 16, 128, 65, 0, 0, 0, 0, 0, 0,
1077 0, 10, 0, 16, 0, 0, 0, 0, 0, 52, 0, 0, 8, 18, 0,
1078 16, 0, 0, 0, 0, 0, 26, 0, 16, 128, 65, 0, 0, 0, 0,
1079 0, 0, 0, 10, 0, 16, 0, 0, 0, 0, 0, 29, 0, 0, 8,
1080 18, 0, 16, 0, 0, 0, 0, 0, 10, 0, 16, 0, 0, 0, 0,
1081 0, 10, 0, 16, 128, 65, 0, 0, 0, 0, 0, 0, 0, 49, 0,
1082 0, 8, 34, 0, 16, 0, 0, 0, 0, 0, 58, 0, 16, 0, 0,
1083 0, 0, 0, 58, 0, 16, 128, 65, 0, 0, 0, 0, 0, 0, 0,
1084 1, 0, 0, 7, 18, 0, 16, 0, 0, 0, 0, 0, 10, 0, 16,
1085 0, 0, 0, 0, 0, 26, 0, 16, 0, 0, 0, 0, 0, 55, 0,
1086 0, 10, 18, 0, 16, 0, 0, 0, 0, 0, 10, 0, 16, 0, 0,
1087 0, 0, 0, 42, 0, 16, 128, 65, 0, 0, 0, 0, 0, 0, 0,
1088 42, 0, 16, 0, 0, 0, 0, 0, 0, 0, 0, 9, 18, 0, 16,
1089 0, 0, 0, 0, 0, 10, 0, 16, 0, 0, 0, 0, 0, 42, 128,
1090 32, 128, 65, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1091 0, 0, 10, 34, 0, 16, 0, 0, 0, 0, 0, 58, 128, 32, 128,
1092 65, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 10, 128, 32,
1093 0, 0, 0, 0, 0, 1, 0, 0, 0, 14, 0, 0, 10, 34, 0,
1094 16, 0, 0, 0, 0, 0, 2, 64, 0, 0, 0, 0, 128, 63, 0,
1095 0, 128, 63, 0, 0, 128, 63, 0, 0, 128, 63, 26, 0, 16, 0,
1096 0, 0, 0, 0, 56, 0, 0, 7, 18, 0, 16, 0, 0, 0, 0,
1097 0, 10, 0, 16, 0, 0, 0, 0, 0, 26, 0, 16, 0, 0, 0,
1098 0, 0, 50, 0, 0, 10, 18, 0, 16, 0, 0, 0, 0, 0, 10,
1099 0, 16, 0, 0, 0, 0, 0, 1, 64, 0, 0, 131, 249, 34, 62,
1100 10, 128, 32, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0,
1101 9, 18, 0, 16, 0, 0, 0, 0, 0, 10, 0, 16, 0, 0, 0,
1102 0, 0, 58, 128, 32, 128, 65, 0, 0, 0, 0, 0, 0, 0, 0,
1103 0, 0, 0, 0, 0, 0, 7, 18, 0, 16, 0, 0, 0, 0, 0,
1104 10, 0, 16, 0, 0, 0, 0, 0, 1, 64, 0, 0, 0, 0, 0,
1105 63, 29, 0, 0, 8, 34, 0, 16, 0, 0, 0, 0, 0, 10, 0,
1106 16, 0, 0, 0, 0, 0, 10, 0, 16, 128, 65, 0, 0, 0, 0,
1107 0, 0, 0, 26, 0, 0, 6, 18, 0, 16, 0, 0, 0, 0, 0,
1108 10, 0, 16, 128, 129, 0, 0, 0, 0, 0, 0, 0, 55, 0, 0,
1109 10, 18, 0, 16, 0, 0, 0, 0, 0, 26, 0, 16, 0, 0, 0,
1110 0, 0, 10, 0, 16, 0, 0, 0, 0, 0, 10, 0, 16, 128, 65,
1111 0, 0, 0, 0, 0, 0, 0, 54, 0, 0, 5, 34, 0, 16, 0,
1112 0, 0, 0, 0, 1, 64, 0, 0, 0, 0, 0, 63, 69, 0, 0,
1113 9, 242, 0, 16, 0, 0, 0, 0, 0, 70, 0, 16, 0, 0, 0,
1114 0, 0, 70, 126, 16, 0, 1, 0, 0, 0, 0, 96, 16, 0, 1,
1115 0, 0, 0, 56, 0, 0, 7, 114, 0, 16, 0, 0, 0, 0, 0,
1116 246, 15, 16, 0, 0, 0, 0, 0, 70, 2, 16, 0, 0, 0, 0,
1117 0, 69, 0, 0, 9, 242, 0, 16, 0, 1, 0, 0, 0, 70, 16,
1118 16, 0, 2, 0, 0, 0, 70, 126, 16, 0, 0, 0, 0, 0, 0,
1119 96, 16, 0, 0, 0, 0, 0, 56, 0, 0, 7, 242, 32, 16, 0,
1120 0, 0, 0, 0, 70, 14, 16, 0, 0, 0, 0, 0, 70, 14, 16,
1121 0, 1, 0, 0, 0, 62, 0, 0, 1, 83, 84, 65, 84, 116, 0,
1122 0, 0, 44, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 3,
1123 0, 0, 0, 35, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0,
1124 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1125 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0,
1126 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1127 0, 0, 0, 1, 0, 0, 0, 2, 0, 0, 0, 1, 0, 0, 0,
1128 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1129 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 82, 68,
1130 69, 70, 148, 2, 0, 0, 1, 0, 0, 0, 16, 1, 0, 0, 5,
1131 0, 0, 0, 28, 0, 0, 0, 0, 4, 255, 255, 0, 1, 0, 0,
1132 96, 2, 0, 0, 188, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0,
1133 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0,
1134 0, 0, 1, 0, 0, 0, 201, 0, 0, 0, 3, 0, 0, 0, 0,
1135 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0,
1136 1, 0, 0, 0, 1, 0, 0, 0, 217, 0, 0, 0, 2, 0, 0,
1137 0, 5, 0, 0, 0, 4, 0, 0, 0, 255, 255, 255, 255, 0, 0,
1138 0, 0, 1, 0, 0, 0, 13, 0, 0, 0, 230, 0, 0, 0, 2,
1139 0, 0, 0, 5, 0, 0, 0, 4, 0, 0, 0, 255, 255, 255, 255,
1140 1, 0, 0, 0, 1, 0, 0, 0, 13, 0, 0, 0, 246, 0, 0,
1141 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1142 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 73,
1143 110, 112, 117, 116, 83, 97, 109, 112, 108, 101, 114, 0, 71, 114, 97,
1144 100, 105, 101, 110, 116, 83, 97, 109, 112, 108, 101, 114, 0, 73, 110,
1145 112, 117, 116, 84, 101, 120, 116, 117, 114, 101, 0, 71, 114, 97, 100,
1146 105, 101, 110, 116, 84, 101, 120, 116, 117, 114, 101, 0, 99, 111, 110,
1147 105, 99, 71, 114, 97, 100, 105, 101, 110, 116, 67, 111, 110, 115, 116,
1148 97, 110, 116, 115, 0, 171, 171, 171, 246, 0, 0, 0, 7, 0, 0,
1149 0, 40, 1, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1150 0, 0, 208, 1, 0, 0, 0, 0, 0, 0, 8, 0, 0, 0, 2,
1151 0, 0, 0, 216, 1, 0, 0, 0, 0, 0, 0, 232, 1, 0, 0,
1152 8, 0, 0, 0, 4, 0, 0, 0, 2, 0, 0, 0, 240, 1, 0,
1153 0, 0, 0, 0, 0, 0, 2, 0, 0, 12, 0, 0, 0, 4, 0,
1154 0, 0, 2, 0, 0, 0, 240, 1, 0, 0, 0, 0, 0, 0, 13,
1155 2, 0, 0, 16, 0, 0, 0, 4, 0, 0, 0, 2, 0, 0, 0,
1156 240, 1, 0, 0, 0, 0, 0, 0, 24, 2, 0, 0, 20, 0, 0,
1157 0, 4, 0, 0, 0, 0, 0, 0, 0, 240, 1, 0, 0, 0, 0,
1158 0, 0, 45, 2, 0, 0, 24, 0, 0, 0, 4, 0, 0, 0, 0,
1159 0, 0, 0, 240, 1, 0, 0, 0, 0, 0, 0, 61, 2, 0, 0,
1160 32, 0, 0, 0, 28, 0, 0, 0, 2, 0, 0, 0, 80, 2, 0,
1161 0, 0, 0, 0, 0, 99, 101, 110, 116, 101, 114, 0, 171, 1, 0,
1162 3, 0, 1, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 97,
1163 110, 103, 108, 101, 0, 171, 171, 0, 0, 3, 0, 1, 0, 1, 0,
1164 0, 0, 0, 0, 0, 0, 0, 0, 115, 116, 97, 114, 116, 95, 111,
1165 102, 102, 115, 101, 116, 0, 101, 110, 100, 95, 111, 102, 102, 115, 101,
1166 116, 0, 114, 101, 112, 101, 97, 116, 95, 99, 111, 114, 114, 101, 99,
1167 116, 95, 99, 111, 110, 105, 99, 0, 97, 108, 108, 111, 119, 95, 111,
1168 100, 100, 95, 99, 111, 110, 105, 99, 0, 116, 114, 97, 110, 115, 102,
1169 111, 114, 109, 95, 99, 111, 110, 105, 99, 0, 171, 171, 171, 3, 0,
1170 3, 0, 3, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 77,
1171 105, 99, 114, 111, 115, 111, 102, 116, 32, 40, 82, 41, 32, 72, 76,
1172 83, 76, 32, 83, 104, 97, 100, 101, 114, 32, 67, 111, 109, 112, 105,
1173 108, 101, 114, 32, 54, 46, 51, 46, 57, 54, 48, 48, 46, 49, 54,
1174 51, 56, 52, 0, 171, 171, 73, 83, 71, 78, 116, 0, 0, 0, 3,
1175 0, 0, 0, 8, 0, 0, 0, 80, 0, 0, 0, 0, 0, 0, 0,
1176 1, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 15, 0, 0,
1177 0, 92, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0,
1178 0, 0, 1, 0, 0, 0, 15, 3, 0, 0, 107, 0, 0, 0, 0,
1179 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 2, 0, 0, 0,
1180 15, 3, 0, 0, 83, 86, 95, 80, 79, 83, 73, 84, 73, 79, 78,
1181 0, 83, 67, 69, 78, 69, 95, 80, 79, 83, 73, 84, 73, 79, 78,
1182 0, 84, 69, 88, 67, 79, 79, 82, 68, 0, 79, 83, 71, 78, 44,
1183 0, 0, 0, 1, 0, 0, 0, 8, 0, 0, 0, 32, 0, 0, 0,
1184 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0,
1185 0, 15, 0, 0, 0, 83, 86, 95, 84, 97, 114, 103, 101, 116, 0,
1186 171, 171};