text: #if 0
  //
  // Generated by Microsoft (R) HLSL Shader Compiler 10.1
  //
  //
  // Buffer Definitions: 
  //
  // cbuffer Params
  // {
  //
  //   uint width;                        // Offset:    0 Size:     4 [unused]
  //   uint height;                       // Offset:    4 Size:     4 [unused]
  //   uint kernelLength;                 // Offset:    8 Size:     4
  //   uint doDiff;                       // Offset:   12 Size:     4
  //
  // }
  //
  //
  // Resource Bindings:
  //
  // Name                                 Type  Format         Dim      HLSL Bind  Count
  // ------------------------------ ---------- ------- ----------- -------------- ------
  // planeInY                          texture   unorm          2d             t0      1 
  // planeOutY                             UAV   unorm          2d             u0      1 
  // Params                            cbuffer      NA          NA            cb0      1 
  //
  //
  //
  // Input signature:
  //
  // Name                 Index   Mask Register SysValue  Format   Used
  // -------------------- ----- ------ -------- -------- ------- ------
  // no Input
  //
  // Output signature:
  //
  // Name                 Index   Mask Register SysValue  Format   Used
  // -------------------- ----- ------ -------- -------- ------- ------
  // no Output
  cs_5_0
  dcl_globalFlags refactoringAllowed
  dcl_constantbuffer CB0[1], immediateIndexed
  dcl_resource_texture2d (unorm,unorm,unorm,unorm) t0
  dcl_uav_typed_texture2d (unorm,unorm,unorm,unorm) u0
  dcl_input vThreadID.xy
  dcl_temps 4
  dcl_thread_group 8, 8, 1
  resinfo_indexable(texture2d)(unorm,unorm,unorm,unorm) r0.xy, l(0), t0.xyzw
  ftoi r0.xy, r0.xyxx
  ige r0.xy, vThreadID.xyxx, r0.xyxx
  or r0.x, r0.y, r0.x
  if_nz r0.x
    ret 
  endif 
  ushr r0.x, cb0[0].z, l(1)
  iadd r0.xy, -r0.xxxx, vThreadID.xyxx
  mov r1.zw, l(0,0,0,0)
  mov r0.zw, l(0,0,1.000000,0)
  mov r1.y, r0.y
  loop 
    uge r2.x, r0.w, cb0[0].z
    breakc_nz r2.x
    mov r2.y, r0.x
    mov r2.z, l(0)
    mov r2.xw, r0.wwwz
    loop 
      uge r3.x, r2.z, cb0[0].z
      breakc_nz r3.x
      mov r1.x, r2.y
      ld_indexable(texture2d)(unorm,unorm,unorm,unorm) r1.x, r1.xyzw, t0.xyzw
      min r1.x, r2.w, r1.x
      eq r3.x, r1.x, l(0.000000)
      if_nz r3.x
        mov r2.w, l(0)
        mov r2.x, cb0[0].z
        break 
      endif 
      iadd r2.yz, r2.yyzy, l(0, 1, 1, 0)
      mov r2.w, r1.x
    endloop 
    mov r0.z, r2.w
    iadd r0.w, r2.x, l(1)
    iadd r1.y, r1.y, l(1)
  endloop 
  if_nz cb0[0].w
    mov r1.xy, vThreadID.xyxx
    mov r1.zw, l(0,0,0,0)
    ld_indexable(texture2d)(unorm,unorm,unorm,unorm) r0.x, r1.xyzw, t0.xyzw
    add r0.z, -r0.z, r0.x
  endif 
  store_uav_typed u0.xyzw, vThreadID.xyyy, r0.zzzz
  ret 
  // Approximately 45 instruction slots used
  #endif
  
  const BYTE ChromaKeyErode_CS[] =
  {
       68,  88,  66,  67, 149, 178, 
      242,  65,   5,  35, 168, 161, 
       33, 239, 228,   4, 189, 179, 
      156,  26,   1,   0,   0,   0, 
      208,   6,   0,   0,   5,   0, 
        0,   0,  52,   0,   0,   0, 
       32,   2,   0,   0,  48,   2, 
        0,   0,  64,   2,   0,   0, 
       52,   6,   0,   0,  82,  68, 
       69,  70, 228,   1,   0,   0, 
        1,   0,   0,   0, 184,   0, 
        0,   0,   3,   0,   0,   0, 
       60,   0,   0,   0,   0,   5, 
       83,  67,   0,   1,   0,   0, 
      187,   1,   0,   0,  82,  68, 
       49,  49,  60,   0,   0,   0, 
       24,   0,   0,   0,  32,   0, 
        0,   0,  40,   0,   0,   0, 
       36,   0,   0,   0,  12,   0, 
        0,   0,   0,   0,   0,   0, 
      156,   0,   0,   0,   2,   0, 
        0,   0,   1,   0,   0,   0, 
        4,   0,   0,   0, 255, 255, 
      255, 255,   0,   0,   0,   0, 
        1,   0,   0,   0,   1,   0, 
        0,   0, 165,   0,   0,   0, 
        4,   0,   0,   0,   1,   0, 
        0,   0,   4,   0,   0,   0, 
      255, 255, 255, 255,   0,   0, 
        0,   0,   1,   0,   0,   0, 
        1,   0,   0,   0, 175,   0, 
        0,   0,   0,   0,   0,   0, 
        0,   0,   0,   0,   0,   0, 
        0,   0,   0,   0,   0,   0, 
        0,   0,   0,   0,   1,   0, 
        0,   0,   1,   0,   0,   0, 
      112, 108,  97, 110, 101,  73, 
      110,  89,   0, 112, 108,  97, 
      110, 101,  79, 117, 116,  89, 
        0,  80,  97, 114,  97, 109, 
      115,   0, 171, 171, 175,   0, 
        0,   0,   4,   0,   0,   0, 
      208,   0,   0,   0,  16,   0, 
        0,   0,   0,   0,   0,   0, 
        0,   0,   0,   0, 112,   1, 
        0,   0,   0,   0,   0,   0, 
        4,   0,   0,   0,   0,   0, 
        0,   0, 124,   1,   0,   0, 
        0,   0,   0,   0, 255, 255, 
      255, 255,   0,   0,   0,   0, 
      255, 255, 255, 255,   0,   0, 
        0,   0, 160,   1,   0,   0, 
        4,   0,   0,   0,   4,   0, 
        0,   0,   0,   0,   0,   0, 
      124,   1,   0,   0,   0,   0, 
        0,   0, 255, 255, 255, 255, 
        0,   0,   0,   0, 255, 255, 
      255, 255,   0,   0,   0,   0, 
      167,   1,   0,   0,   8,   0, 
        0,   0,   4,   0,   0,   0, 
        2,   0,   0,   0, 124,   1, 
        0,   0,   0,   0,   0,   0, 
      255, 255, 255, 255,   0,   0, 
        0,   0, 255, 255, 255, 255, 
        0,   0,   0,   0, 180,   1, 
        0,   0,  12,   0,   0,   0, 
        4,   0,   0,   0,   2,   0, 
        0,   0, 124,   1,   0,   0, 
        0,   0,   0,   0, 255, 255, 
      255, 255,   0,   0,   0,   0, 
      255, 255, 255, 255,   0,   0, 
        0,   0, 119, 105, 100, 116, 
      104,   0, 100, 119, 111, 114, 
      100,   0,   0,   0,  19,   0, 
        1,   0,   1,   0,   0,   0, 
        0,   0,   0,   0,   0,   0, 
        0,   0,   0,   0,   0,   0, 
        0,   0,   0,   0,   0,   0, 
        0,   0,   0,   0, 118,   1, 
        0,   0, 104, 101, 105, 103, 
      104, 116,   0, 107, 101, 114, 
      110, 101, 108,  76, 101, 110, 
      103, 116, 104,   0, 100, 111, 
       68, 105, 102, 102,   0,  77, 
      105,  99, 114, 111, 115, 111, 
      102, 116,  32,  40,  82,  41, 
       32,  72,  76,  83,  76,  32, 
       83, 104,  97, 100, 101, 114, 
       32,  67, 111, 109, 112, 105, 
      108, 101, 114,  32,  49,  48, 
       46,  49,   0, 171,  73,  83, 
       71,  78,   8,   0,   0,   0, 
        0,   0,   0,   0,   8,   0, 
        0,   0,  79,  83,  71,  78, 
        8,   0,   0,   0,   0,   0, 
        0,   0,   8,   0,   0,   0, 
       83,  72,  69,  88, 236,   3, 
        0,   0,  80,   0,   5,   0, 
      251,   0,   0,   0, 106,   8, 
        0,   1,  89,   0,   0,   4, 
       70, 142,  32,   0,   0,   0, 
        0,   0,   1,   0,   0,   0, 
       88,  24,   0,   4,   0, 112, 
       16,   0,   0,   0,   0,   0, 
       17,  17,   0,   0, 156,  24, 
        0,   4,   0, 224,  17,   0, 
        0,   0,   0,   0,  17,  17, 
        0,   0,  95,   0,   0,   2, 
       50,   0,   2,   0, 104,   0, 
        0,   2,   4,   0,   0,   0, 
      155,   0,   0,   4,   8,   0, 
        0,   0,   8,   0,   0,   0, 
        1,   0,   0,   0,  61,   0, 
        0, 137, 194,   0,   0, 128, 
       67,  68,   4,   0,  50,   0, 
       16,   0,   0,   0,   0,   0, 
        1,  64,   0,   0,   0,   0, 
        0,   0,  70, 126,  16,   0, 
        0,   0,   0,   0,  27,   0, 
        0,   5,  50,   0,  16,   0, 
        0,   0,   0,   0,  70,   0, 
       16,   0,   0,   0,   0,   0, 
       33,   0,   0,   6,  50,   0, 
       16,   0,   0,   0,   0,   0, 
       70,   0,   2,   0,  70,   0, 
       16,   0,   0,   0,   0,   0, 
       60,   0,   0,   7,  18,   0, 
       16,   0,   0,   0,   0,   0, 
       26,   0,  16,   0,   0,   0, 
        0,   0,  10,   0,  16,   0, 
        0,   0,   0,   0,  31,   0, 
        4,   3,  10,   0,  16,   0, 
        0,   0,   0,   0,  62,   0, 
        0,   1,  21,   0,   0,   1, 
       85,   0,   0,   8,  18,   0, 
       16,   0,   0,   0,   0,   0, 
       42, 128,  32,   0,   0,   0, 
        0,   0,   0,   0,   0,   0, 
        1,  64,   0,   0,   1,   0, 
        0,   0,  30,   0,   0,   7, 
       50,   0,  16,   0,   0,   0, 
        0,   0,   6,   0,  16, 128, 
       65,   0,   0,   0,   0,   0, 
        0,   0,  70,   0,   2,   0, 
       54,   0,   0,   8, 194,   0, 
       16,   0,   1,   0,   0,   0, 
        2,  64,   0,   0,   0,   0, 
        0,   0,   0,   0,   0,   0, 
        0,   0,   0,   0,   0,   0, 
        0,   0,  54,   0,   0,   8, 
      194,   0,  16,   0,   0,   0, 
        0,   0,   2,  64,   0,   0, 
        0,   0,   0,   0,   0,   0, 
        0,   0,   0,   0, 128,  63, 
        0,   0,   0,   0,  54,   0, 
        0,   5,  34,   0,  16,   0, 
        1,   0,   0,   0,  26,   0, 
       16,   0,   0,   0,   0,   0, 
       48,   0,   0,   1,  80,   0, 
        0,   8,  18,   0,  16,   0, 
        2,   0,   0,   0,  58,   0, 
       16,   0,   0,   0,   0,   0, 
       42, 128,  32,   0,   0,   0, 
        0,   0,   0,   0,   0,   0, 
        3,   0,   4,   3,  10,   0, 
       16,   0,   2,   0,   0,   0, 
       54,   0,   0,   5,  34,   0, 
       16,   0,   2,   0,   0,   0, 
       10,   0,  16,   0,   0,   0, 
        0,   0,  54,   0,   0,   5, 
       66,   0,  16,   0,   2,   0, 
        0,   0,   1,  64,   0,   0, 
        0,   0,   0,   0,  54,   0, 
        0,   5, 146,   0,  16,   0, 
        2,   0,   0,   0, 246,  11, 
       16,   0,   0,   0,   0,   0, 
       48,   0,   0,   1,  80,   0, 
        0,   8,  18,   0,  16,   0, 
        3,   0,   0,   0,  42,   0, 
       16,   0,   2,   0,   0,   0, 
       42, 128,  32,   0,   0,   0, 
        0,   0,   0,   0,   0,   0, 
        3,   0,   4,   3,  10,   0, 
       16,   0,   3,   0,   0,   0, 
       54,   0,   0,   5,  18,   0, 
       16,   0,   1,   0,   0,   0, 
       26,   0,  16,   0,   2,   0, 
        0,   0,  45,   0,   0, 137, 
      194,   0,   0, 128,  67,  68, 
        4,   0,  18,   0,  16,   0, 
        1,   0,   0,   0,  70,  14, 
       16,   0,   1,   0,   0,   0, 
       70, 126,  16,   0,   0,   0, 
        0,   0,  51,   0,   0,   7, 
       18,   0,  16,   0,   1,   0, 
        0,   0,  58,   0,  16,   0, 
        2,   0,   0,   0,  10,   0, 
       16,   0,   1,   0,   0,   0, 
       24,   0,   0,   7,  18,   0, 
       16,   0,   3,   0,   0,   0, 
       10,   0,  16,   0,   1,   0, 
        0,   0,   1,  64,   0,   0, 
        0,   0,   0,   0,  31,   0, 
        4,   3,  10,   0,  16,   0, 
        3,   0,   0,   0,  54,   0, 
        0,   5, 130,   0,  16,   0, 
        2,   0,   0,   0,   1,  64, 
        0,   0,   0,   0,   0,   0, 
       54,   0,   0,   6,  18,   0, 
       16,   0,   2,   0,   0,   0, 
       42, 128,  32,   0,   0,   0, 
        0,   0,   0,   0,   0,   0, 
        2,   0,   0,   1,  21,   0, 
        0,   1,  30,   0,   0,  10, 
       98,   0,  16,   0,   2,   0, 
        0,   0,  86,   6,  16,   0, 
        2,   0,   0,   0,   2,  64, 
        0,   0,   0,   0,   0,   0, 
        1,   0,   0,   0,   1,   0, 
        0,   0,   0,   0,   0,   0, 
       54,   0,   0,   5, 130,   0, 
       16,   0,   2,   0,   0,   0, 
       10,   0,  16,   0,   1,   0, 
        0,   0,  22,   0,   0,   1, 
       54,   0,   0,   5,  66,   0, 
       16,   0,   0,   0,   0,   0, 
       58,   0,  16,   0,   2,   0, 
        0,   0,  30,   0,   0,   7, 
      130,   0,  16,   0,   0,   0, 
        0,   0,  10,   0,  16,   0, 
        2,   0,   0,   0,   1,  64, 
        0,   0,   1,   0,   0,   0, 
       30,   0,   0,   7,  34,   0, 
       16,   0,   1,   0,   0,   0, 
       26,   0,  16,   0,   1,   0, 
        0,   0,   1,  64,   0,   0, 
        1,   0,   0,   0,  22,   0, 
        0,   1,  31,   0,   4,   4, 
       58, 128,  32,   0,   0,   0, 
        0,   0,   0,   0,   0,   0, 
       54,   0,   0,   4,  50,   0, 
       16,   0,   1,   0,   0,   0, 
       70,   0,   2,   0,  54,   0, 
        0,   8, 194,   0,  16,   0, 
        1,   0,   0,   0,   2,  64, 
        0,   0,   0,   0,   0,   0, 
        0,   0,   0,   0,   0,   0, 
        0,   0,   0,   0,   0,   0, 
       45,   0,   0, 137, 194,   0, 
        0, 128,  67,  68,   4,   0, 
       18,   0,  16,   0,   0,   0, 
        0,   0,  70,  14,  16,   0, 
        1,   0,   0,   0,  70, 126, 
       16,   0,   0,   0,   0,   0, 
        0,   0,   0,   8,  66,   0, 
       16,   0,   0,   0,   0,   0, 
       42,   0,  16, 128,  65,   0, 
        0,   0,   0,   0,   0,   0, 
       10,   0,  16,   0,   0,   0, 
        0,   0,  21,   0,   0,   1, 
      164,   0,   0,   6, 242, 224, 
       17,   0,   0,   0,   0,   0, 
       70,   5,   2,   0, 166,  10, 
       16,   0,   0,   0,   0,   0, 
       62,   0,   0,   1,  83,  84, 
       65,  84, 148,   0,   0,   0, 
       45,   0,   0,   0,   4,   0, 
        0,   0,   0,   0,   0,   0, 
        1,   0,   0,   0,   3,   0, 
        0,   0,   5,   0,   0,   0, 
        4,   0,   0,   0,   4,   0, 
        0,   0,   4,   0,   0,   0, 
        0,   0,   0,   0,   0,   0, 
        0,   0,   0,   0,   0,   0, 
        0,   0,   0,   0,   0,   0, 
        0,   0,   0,   0,   0,   0, 
        2,   0,   0,   0,   0,   0, 
        0,   0,   0,   0,   0,   0, 
        0,   0,   0,   0,  13,   0, 
        0,   0,   0,   0,   0,   0, 
        1,   0,   0,   0,   0,   0, 
        0,   0,   0,   0,   0,   0, 
        0,   0,   0,   0,   0,   0, 
        0,   0,   0,   0,   0,   0, 
        0,   0,   0,   0,   0,   0, 
        0,   0,   0,   0,   0,   0, 
        0,   0,   0,   0,   0,   0, 
        0,   0,   0,   0,   0,   0, 
        0,   0,   0,   0,   0,   0, 
        0,   0,   0,   0,   0,   0, 
        1,   0,   0,   0
  };
  