gfx/2d/ShadersD2D1.h

Tue, 06 Jan 2015 21:39:09 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Tue, 06 Jan 2015 21:39:09 +0100
branch
TOR_BUG_9701
changeset 8
97036ab72558
permissions
-rw-r--r--

Conditionally force memory storage according to privacy.thirdparty.isolate;
This solves Tor bug #9701, complying with disk avoidance documented in
https://www.torproject.org/projects/torbrowser/design/#disk-avoidance.

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

mercurial