Added an advanced shader for the GPU renderer

This allows us to support YUV colorspaces and HDR in the GPU renderer.

Fixes https://github.com/libsdl-org/SDL/issues/11281
Fixes https://github.com/libsdl-org/SDL/issues/11282
This commit is contained in:
Sam Lantinga
2025-09-29 21:23:15 -07:00
parent fe3b399b7e
commit 9735c45db6
42 changed files with 5205 additions and 3589 deletions

View File

@@ -864,6 +864,12 @@ extern SDL_DECLSPEC SDL_Texture * SDLCALL SDL_CreateTextureWithProperties(SDL_Re
*
* - `SDL_PROP_TEXTURE_GPU_TEXTURE_POINTER`: the SDL_GPUTexture associated
* with the texture
* - `SDL_PROP_TEXTURE_GPU_TEXTURE_UV_POINTER`: the SDL_GPUTexture associated
* with the UV plane of an NV12 texture
* - `SDL_PROP_TEXTURE_GPU_TEXTURE_U_POINTER`: the SDL_GPUTexture associated
* with the U plane of a YUV texture
* - `SDL_PROP_TEXTURE_GPU_TEXTURE_V_POINTER`: the SDL_GPUTexture associated
* with the V plane of a YUV texture
*
* \param texture the texture to query.
* \returns a valid property ID on success or 0 on failure; call
@@ -902,6 +908,9 @@ extern SDL_DECLSPEC SDL_PropertiesID SDLCALL SDL_GetTextureProperties(SDL_Textur
#define SDL_PROP_TEXTURE_OPENGLES2_TEXTURE_TARGET_NUMBER "SDL.texture.opengles2.target"
#define SDL_PROP_TEXTURE_VULKAN_TEXTURE_NUMBER "SDL.texture.vulkan.texture"
#define SDL_PROP_TEXTURE_GPU_TEXTURE_POINTER "SDL.texture.gpu.texture"
#define SDL_PROP_TEXTURE_GPU_TEXTURE_UV_POINTER "SDL.texture.gpu.texture_uv"
#define SDL_PROP_TEXTURE_GPU_TEXTURE_U_POINTER "SDL.texture.gpu.texture_u"
#define SDL_PROP_TEXTURE_GPU_TEXTURE_V_POINTER "SDL.texture.gpu.texture_v"
/**
* Get the renderer that created an SDL_Texture.

View File

@@ -35,13 +35,51 @@ typedef struct GPU_VertexShaderUniformData
SDL_FColor color;
} GPU_VertexShaderUniformData;
typedef struct GPU_FragmentShaderUniformData
typedef struct GPU_SimpleFragmentShaderUniformData
{
float color_scale;
} GPU_SimpleFragmentShaderUniformData;
typedef struct GPU_AdvancedFragmentShaderUniformData
{
float scRGB_output;
float texture_type;
float input_type;
float color_scale;
float texel_width;
float texel_height;
float texture_width;
float texture_height;
} GPU_FragmentShaderUniformData;
float tonemap_method;
float tonemap_factor1;
float tonemap_factor2;
float sdr_white_point;
float YCbCr_matrix[16];
} GPU_AdvancedFragmentShaderUniformData;
// These should mirror the definitions in shaders/texture_advanced.frag.hlsl
static const float TONEMAP_NONE = 0;
//static const float TONEMAP_LINEAR = 1;
static const float TONEMAP_CHROME = 2;
//static const float TEXTURETYPE_NONE = 0;
static const float TEXTURETYPE_RGB = 1;
static const float TEXTURETYPE_RGB_PIXELART = 2;
static const float TEXTURETYPE_RGBA = 3;
static const float TEXTURETYPE_RGBA_PIXELART = 4;
static const float TEXTURETYPE_PALETTE = 5;
static const float TEXTURETYPE_PALETTE_PIXELART = 6;
static const float TEXTURETYPE_NV12 = 7;
static const float TEXTURETYPE_NV21 = 8;
static const float TEXTURETYPE_YUV = 9;
static const float INPUTTYPE_UNSPECIFIED = 0;
static const float INPUTTYPE_SRGB = 1;
static const float INPUTTYPE_SCRGB = 2;
static const float INPUTTYPE_HDR10 = 3;
typedef struct GPU_RenderData
{
@@ -95,10 +133,20 @@ typedef struct GPU_TextureData
{
SDL_GPUTexture *texture;
SDL_GPUTextureFormat format;
GPU_FragmentShaderID shader;
void *pixels;
int pitch;
SDL_Rect locked_rect;
const float *YCbCr_matrix;
#ifdef SDL_HAVE_YUV
// YV12 texture support
bool yuv;
SDL_GPUTexture *textureU;
SDL_GPUTexture *textureV;
// NV12 texture support
bool nv12;
SDL_GPUTexture *textureNV;
#endif
} GPU_TextureData;
static bool GPU_SupportsBlendMode(SDL_Renderer *renderer, SDL_BlendMode blendMode)
@@ -211,10 +259,32 @@ static bool GPU_CreateTexture(SDL_Renderer *renderer, SDL_Texture *texture, SDL_
SDL_GPUTextureFormat format;
SDL_GPUTextureUsageFlags usage = SDL_GPU_TEXTUREUSAGE_SAMPLER;
if (texture->format == SDL_PIXELFORMAT_INDEX8) {
switch (texture->format) {
case SDL_PIXELFORMAT_INDEX8:
case SDL_PIXELFORMAT_YV12:
case SDL_PIXELFORMAT_IYUV:
case SDL_PIXELFORMAT_NV12:
case SDL_PIXELFORMAT_NV21:
format = SDL_GPU_TEXTUREFORMAT_R8_UNORM;
} else {
break;
case SDL_PIXELFORMAT_P010:
format = SDL_GPU_TEXTUREFORMAT_R16_UNORM;
break;
default:
format = SDL_GetGPUTextureFormatFromPixelFormat(texture->format);
break;
}
if (renderer->output_colorspace == SDL_COLORSPACE_SRGB_LINEAR) {
switch (format) {
case SDL_GPU_TEXTUREFORMAT_R8G8B8A8_UNORM:
format = SDL_GPU_TEXTUREFORMAT_R8G8B8A8_UNORM_SRGB;
break;
case SDL_GPU_TEXTUREFORMAT_B8G8R8A8_UNORM:
format = SDL_GPU_TEXTUREFORMAT_B8G8R8A8_UNORM_SRGB;
break;
default:
break;
}
}
if (format == SDL_GPU_TEXTUREFORMAT_INVALID) {
return SDL_SetError("Texture format %s not supported by SDL_GPU",
@@ -236,7 +306,8 @@ static bool GPU_CreateTexture(SDL_Renderer *renderer, SDL_Texture *texture, SDL_
size += 2 * ((texture->h + 1) / 2) * ((data->pitch + 1) / 2);
}
if (texture->format == SDL_PIXELFORMAT_NV12 ||
texture->format == SDL_PIXELFORMAT_NV21) {
texture->format == SDL_PIXELFORMAT_NV21 ||
texture->format == SDL_PIXELFORMAT_P010) {
// Need to add size for the U/V plane
size += 2 * ((texture->h + 1) / 2) * ((data->pitch + 1) / 2);
}
@@ -273,26 +344,74 @@ static bool GPU_CreateTexture(SDL_Renderer *renderer, SDL_Texture *texture, SDL_
SDL_PropertiesID props = SDL_GetTextureProperties(texture);
SDL_SetPointerProperty(props, SDL_PROP_TEXTURE_GPU_TEXTURE_POINTER, data->texture);
if (texture->format == SDL_PIXELFORMAT_RGBA32 || texture->format == SDL_PIXELFORMAT_BGRA32) {
data->shader = FRAG_SHADER_TEXTURE_RGBA;
#ifdef SDL_HAVE_YUV
if (texture->format == SDL_PIXELFORMAT_YV12 ||
texture->format == SDL_PIXELFORMAT_IYUV) {
data->yuv = true;
tci.width = (tci.width + 1) / 2;
tci.height = (tci.height + 1) / 2;
data->textureU = SDL_CreateGPUTexture(renderdata->device, &tci);
if (!data->textureU) {
return false;
}
SDL_SetPointerProperty(props, SDL_PROP_TEXTURE_GPU_TEXTURE_U_POINTER, data->textureU);
data->textureV = SDL_CreateGPUTexture(renderdata->device, &tci);
if (!data->textureV) {
return false;
}
SDL_SetPointerProperty(props, SDL_PROP_TEXTURE_GPU_TEXTURE_V_POINTER, data->textureU);
data->YCbCr_matrix = SDL_GetYCbCRtoRGBConversionMatrix(texture->colorspace, texture->w, texture->h, 8);
if (!data->YCbCr_matrix) {
return SDL_SetError("Unsupported YUV colorspace");
}
}
if (texture->format == SDL_PIXELFORMAT_NV12 ||
texture->format == SDL_PIXELFORMAT_NV21 ||
texture->format == SDL_PIXELFORMAT_P010) {
int bits_per_pixel;
data->nv12 = true;
tci.width = ((tci.width + 1) / 2);
tci.height = ((tci.height + 1) / 2);
if (texture->format == SDL_PIXELFORMAT_P010) {
tci.format = SDL_GPU_TEXTUREFORMAT_R16G16_UNORM;
} else {
data->shader = FRAG_SHADER_TEXTURE_RGB;
tci.format = SDL_GPU_TEXTUREFORMAT_R8G8_UNORM;
}
data->textureNV = SDL_CreateGPUTexture(renderdata->device, &tci);
if (!data->textureNV) {
return false;
}
SDL_SetPointerProperty(props, SDL_PROP_TEXTURE_GPU_TEXTURE_UV_POINTER, data->textureNV);
switch (texture->format) {
case SDL_PIXELFORMAT_P010:
bits_per_pixel = 10;
break;
default:
bits_per_pixel = 8;
break;
}
data->YCbCr_matrix = SDL_GetYCbCRtoRGBConversionMatrix(texture->colorspace, texture->w, texture->h, bits_per_pixel);
if (!data->YCbCr_matrix) {
return SDL_SetError("Unsupported YUV colorspace");
}
}
#endif // SDL_HAVE_YUV
return true;
}
static bool GPU_UpdateTexture(SDL_Renderer *renderer, SDL_Texture *texture,
const SDL_Rect *rect, const void *pixels, int pitch)
static bool GPU_UpdateTextureInternal(GPU_RenderData *renderdata, SDL_GPUCopyPass *cpass, SDL_GPUTexture *texture, int bpp, int x, int y, int w, int h, const void *pixels, int pitch)
{
GPU_RenderData *renderdata = (GPU_RenderData *)renderer->internal;
GPU_TextureData *data = (GPU_TextureData *)texture->internal;
const Uint32 texturebpp = SDL_BYTESPERPIXEL(texture->format);
size_t row_size, data_size;
if (!SDL_size_mul_check_overflow(rect->w, texturebpp, &row_size) ||
!SDL_size_mul_check_overflow(rect->h, row_size, &data_size)) {
if (!SDL_size_mul_check_overflow(w, bpp, &row_size) ||
!SDL_size_mul_check_overflow(h, row_size, &data_size)) {
return SDL_SetError("update size overflow");
}
@@ -302,54 +421,144 @@ static bool GPU_UpdateTexture(SDL_Renderer *renderer, SDL_Texture *texture,
tbci.usage = SDL_GPU_TRANSFERBUFFERUSAGE_UPLOAD;
SDL_GPUTransferBuffer *tbuf = SDL_CreateGPUTransferBuffer(renderdata->device, &tbci);
if (tbuf == NULL) {
return false;
}
Uint8 *output = SDL_MapGPUTransferBuffer(renderdata->device, tbuf, false);
if (!output) {
return false;
}
if ((size_t)pitch == row_size) {
SDL_memcpy(output, pixels, data_size);
} else {
// FIXME is negative pitch supposed to work?
// If not, maybe use SDL_GPUTextureTransferInfo::pixels_per_row instead of this
const Uint8 *input = pixels;
for (int i = 0; i < rect->h; ++i) {
for (int i = 0; i < h; ++i) {
SDL_memcpy(output, input, row_size);
output += row_size;
input += pitch;
}
}
SDL_UnmapGPUTransferBuffer(renderdata->device, tbuf);
SDL_GPUCommandBuffer *cbuf = renderdata->state.command_buffer;
SDL_GPUCopyPass *cpass = SDL_BeginGPUCopyPass(cbuf);
SDL_GPUTextureTransferInfo tex_src;
SDL_zero(tex_src);
tex_src.transfer_buffer = tbuf;
tex_src.rows_per_layer = rect->h;
tex_src.pixels_per_row = rect->w;
tex_src.rows_per_layer = h;
tex_src.pixels_per_row = w;
SDL_GPUTextureRegion tex_dst;
SDL_zero(tex_dst);
tex_dst.texture = data->texture;
tex_dst.x = rect->x;
tex_dst.y = rect->y;
tex_dst.w = rect->w;
tex_dst.h = rect->h;
tex_dst.texture = texture;
tex_dst.x = x;
tex_dst.y = y;
tex_dst.w = w;
tex_dst.h = h;
tex_dst.d = 1;
SDL_UploadToGPUTexture(cpass, &tex_src, &tex_dst, false);
SDL_EndGPUCopyPass(cpass);
SDL_ReleaseGPUTransferBuffer(renderdata->device, tbuf);
return true;
}
#ifdef SDL_HAVE_YUV
static bool GPU_UpdateTextureNV(SDL_Renderer *renderer, SDL_Texture *texture,
const SDL_Rect *rect,
const Uint8 *Yplane, int Ypitch,
const Uint8 *UVplane, int UVpitch);
static bool GPU_UpdateTextureYUV(SDL_Renderer *renderer, SDL_Texture *texture,
const SDL_Rect *rect,
const Uint8 *Yplane, int Ypitch,
const Uint8 *Uplane, int Upitch,
const Uint8 *Vplane, int Vpitch);
#endif
static bool GPU_UpdateTexture(SDL_Renderer *renderer, SDL_Texture *texture, const SDL_Rect *rect, const void *pixels, int pitch)
{
GPU_RenderData *renderdata = (GPU_RenderData *)renderer->internal;
GPU_TextureData *data = (GPU_TextureData *)texture->internal;
bool retval = true;
SDL_GPUCommandBuffer *cbuf = renderdata->state.command_buffer;
SDL_GPUCopyPass *cpass = SDL_BeginGPUCopyPass(cbuf);
int bpp = SDL_BYTESPERPIXEL(texture->format);
retval = GPU_UpdateTextureInternal(renderdata, cpass, data->texture, bpp, rect->x, rect->y, rect->w, rect->h, pixels, pitch);
#ifdef SDL_HAVE_YUV
if (data->nv12) {
const Uint8 *Yplane = (const Uint8 *)pixels;
const Uint8 *UVplane = Yplane + rect->h * pitch;
int UVpitch;
bpp *= 2;
if (texture->format == SDL_PIXELFORMAT_P010) {
UVpitch = (pitch + 3) & ~3;
} else {
bpp = 1;
UVpitch = (pitch + 1) & ~1;
}
retval &= GPU_UpdateTextureInternal(renderdata, cpass, data->textureNV, bpp, rect->x / 2, rect->y / 2, (rect->w + 1) / 2, (rect->h + 1) / 2, UVplane, UVpitch);
} else if (data->yuv) {
int Ypitch = pitch;
int UVpitch = ((Ypitch + 1) / 2);
const Uint8 *Yplane = (const Uint8 *)pixels;
const Uint8 *Uplane = Yplane + rect->h * Ypitch;
const Uint8 *Vplane = Uplane + ((rect->h + 1) / 2) * UVpitch;
retval &= GPU_UpdateTextureInternal(renderdata, cpass, data->textureU, bpp, rect->x / 2, rect->y / 2, (rect->w + 1) / 2, (rect->h + 1) / 2, Uplane, UVpitch);
retval &= GPU_UpdateTextureInternal(renderdata, cpass, data->textureV, bpp, rect->x / 2, rect->y / 2, (rect->w + 1) / 2, (rect->h + 1) / 2, Vplane, UVpitch);
}
#endif
SDL_EndGPUCopyPass(cpass);
return retval;
}
#ifdef SDL_HAVE_YUV
static bool GPU_UpdateTextureYUV(SDL_Renderer *renderer, SDL_Texture *texture,
const SDL_Rect *rect,
const Uint8 *Yplane, int Ypitch,
const Uint8 *Uplane, int Upitch,
const Uint8 *Vplane, int Vpitch)
{
GPU_RenderData *renderdata = (GPU_RenderData *)renderer->internal;
GPU_TextureData *data = (GPU_TextureData *)texture->internal;
int bpp = SDL_BYTESPERPIXEL(texture->format);
bool retval = true;
SDL_GPUCommandBuffer *cbuf = renderdata->state.command_buffer;
SDL_GPUCopyPass *cpass = SDL_BeginGPUCopyPass(cbuf);
retval &= GPU_UpdateTextureInternal(renderdata, cpass, data->texture, bpp, rect->x, rect->y, rect->w, rect->h, Yplane, Ypitch);
retval &= GPU_UpdateTextureInternal(renderdata, cpass, data->textureU, bpp, rect->x / 2, rect->y / 2, (rect->w + 1) / 2, (rect->h + 1) / 2, Uplane, Upitch);
retval &= GPU_UpdateTextureInternal(renderdata, cpass, data->textureV, bpp, rect->x / 2, rect->y / 2, (rect->w + 1) / 2, (rect->h + 1) / 2, Vplane, Vpitch);
SDL_EndGPUCopyPass(cpass);
return retval;
}
static bool GPU_UpdateTextureNV(SDL_Renderer *renderer, SDL_Texture *texture,
const SDL_Rect *rect,
const Uint8 *Yplane, int Ypitch,
const Uint8 *UVplane, int UVpitch)
{
GPU_RenderData *renderdata = (GPU_RenderData *)renderer->internal;
GPU_TextureData *data = (GPU_TextureData *)texture->internal;
int bpp = SDL_BYTESPERPIXEL(texture->format);
bool retval = true;
SDL_GPUCommandBuffer *cbuf = renderdata->state.command_buffer;
SDL_GPUCopyPass *cpass = SDL_BeginGPUCopyPass(cbuf);
retval &= GPU_UpdateTextureInternal(renderdata, cpass, data->texture, bpp, rect->x, rect->y, rect->w, rect->h, Yplane, Ypitch);
bpp *= 2;
retval &= GPU_UpdateTextureInternal(renderdata, cpass, data->textureNV, bpp, rect->x / 2, rect->y / 2, (rect->w + 1) / 2, (rect->h + 1) / 2, UVplane, UVpitch);
SDL_EndGPUCopyPass(cpass);
return retval;
}
#endif // SDL_HAVE_YUV
static bool GPU_LockTexture(SDL_Renderer *renderer, SDL_Texture *texture,
const SDL_Rect *rect, void **pixels, int *pitch)
{
@@ -431,7 +640,6 @@ static bool GPU_QueueGeometry(SDL_Renderer *renderer, SDL_RenderCommand *cmd, SD
int count = indices ? num_indices : num_vertices;
float *verts;
size_t sz = 2 * sizeof(float) + 4 * sizeof(float) + (texture ? 2 : 0) * sizeof(float);
const float color_scale = cmd->data.draw.color_scale;
bool convert_color = SDL_RenderingLinearSpace(renderer);
verts = (float *)SDL_AllocateRenderVertices(renderer, count * sz, 0, &cmd->data.draw.first);
@@ -466,11 +674,9 @@ static bool GPU_QueueGeometry(SDL_Renderer *renderer, SDL_RenderCommand *cmd, SD
SDL_ConvertToLinear(&col_);
}
// FIXME: The Vulkan backend doesn't multiply by color_scale. GL does. I'm not sure which one is wrong.
// ANSWER: The color scale should be applied in linear space when using the scRGB colorspace. This is done in shaders in the Vulkan backend.
*(verts++) = col_.r * color_scale;
*(verts++) = col_.g * color_scale;
*(verts++) = col_.b * color_scale;
*(verts++) = col_.r;
*(verts++) = col_.g;
*(verts++) = col_.b;
*(verts++) = col_.a;
if (texture) {
@@ -524,21 +730,6 @@ static void PushVertexUniforms(GPU_RenderData *data, SDL_RenderCommand *cmd)
SDL_PushGPUVertexUniformData(data->state.command_buffer, 0, &uniforms, sizeof(uniforms));
}
static void PushFragmentUniforms(GPU_RenderData *data, SDL_RenderCommand *cmd)
{
if (cmd->data.draw.texture &&
cmd->data.draw.texture_scale_mode == SDL_SCALEMODE_PIXELART) {
SDL_Texture *texture = cmd->data.draw.texture;
GPU_FragmentShaderUniformData uniforms;
SDL_zero(uniforms);
uniforms.texture_width = texture->w;
uniforms.texture_height = texture->h;
uniforms.texel_width = 1.0f / uniforms.texture_width;
uniforms.texel_height = 1.0f / uniforms.texture_height;
SDL_PushGPUFragmentUniformData(data->state.command_buffer, 0, &uniforms, sizeof(uniforms));
}
}
static void SetViewportAndScissor(GPU_RenderData *data)
{
SDL_SetGPUViewport(data->state.render_pass, &data->state.viewport);
@@ -609,6 +800,104 @@ static SDL_GPUSampler *GetSampler(GPU_RenderData *data, SDL_ScaleMode scale_mode
return data->samplers[key];
}
static void CalculateAdvancedShaderConstants(SDL_Renderer *renderer, const SDL_RenderCommand *cmd, const SDL_Texture *texture, GPU_AdvancedFragmentShaderUniformData *constants)
{
float output_headroom;
SDL_zerop(constants);
constants->scRGB_output = (float)SDL_RenderingLinearSpace(renderer);
constants->color_scale = cmd->data.draw.color_scale;
switch (texture->format) {
case SDL_PIXELFORMAT_YV12:
case SDL_PIXELFORMAT_IYUV:
constants->texture_type = TEXTURETYPE_YUV;
constants->input_type = INPUTTYPE_SRGB;
break;
case SDL_PIXELFORMAT_NV12:
constants->texture_type = TEXTURETYPE_NV12;
constants->input_type = INPUTTYPE_SRGB;
break;
case SDL_PIXELFORMAT_NV21:
constants->texture_type = TEXTURETYPE_NV21;
constants->input_type = INPUTTYPE_SRGB;
break;
case SDL_PIXELFORMAT_P010:
constants->texture_type = TEXTURETYPE_NV12;
constants->input_type = INPUTTYPE_HDR10;
break;
default:
switch (texture->format) {
case SDL_PIXELFORMAT_INDEX8:
if (cmd->data.draw.texture_scale_mode == SDL_SCALEMODE_PIXELART) {
constants->texture_type = TEXTURETYPE_PALETTE_PIXELART;
} else {
constants->texture_type = TEXTURETYPE_PALETTE;
}
break;
case SDL_PIXELFORMAT_BGRX32:
case SDL_PIXELFORMAT_RGBX32:
if (cmd->data.draw.texture_scale_mode == SDL_SCALEMODE_PIXELART) {
constants->texture_type = TEXTURETYPE_RGB_PIXELART;
} else {
constants->texture_type = TEXTURETYPE_RGB;
}
break;
case SDL_PIXELFORMAT_BGRA32:
case SDL_PIXELFORMAT_RGBA32:
case SDL_PIXELFORMAT_ABGR2101010:
case SDL_PIXELFORMAT_RGBA64_FLOAT:
if (cmd->data.draw.texture_scale_mode == SDL_SCALEMODE_PIXELART) {
constants->texture_type = TEXTURETYPE_RGBA_PIXELART;
} else {
constants->texture_type = TEXTURETYPE_RGBA;
}
break;
default:
SDL_assert(!"Unhandled pixel format");
break;
}
if (texture->colorspace == SDL_COLORSPACE_SRGB_LINEAR) {
constants->input_type = INPUTTYPE_SCRGB;
} else if (texture->colorspace == SDL_COLORSPACE_HDR10) {
constants->input_type = INPUTTYPE_HDR10;
} else {
// The sampler will convert from sRGB to linear on load if working in linear colorspace
constants->input_type = INPUTTYPE_UNSPECIFIED;
}
break;
}
if (cmd->data.draw.texture_scale_mode == SDL_SCALEMODE_PIXELART) {
constants->texture_width = texture->w;
constants->texture_height = texture->h;
constants->texel_width = 1.0f / constants->texture_width;
constants->texel_height = 1.0f / constants->texture_height;
}
constants->sdr_white_point = texture->SDR_white_point;
if (renderer->target) {
output_headroom = renderer->target->HDR_headroom;
} else {
output_headroom = renderer->HDR_headroom;
}
if (texture->HDR_headroom > output_headroom) {
constants->tonemap_method = TONEMAP_CHROME;
constants->tonemap_factor1 = (output_headroom / (texture->HDR_headroom * texture->HDR_headroom));
constants->tonemap_factor2 = (1.0f / output_headroom);
}
#ifdef SDL_HAVE_YUV
GPU_TextureData *data = (GPU_TextureData *)texture->internal;
if (data->yuv || data->nv12) {
SDL_memcpy(constants->YCbCr_matrix, data->YCbCr_matrix, sizeof(constants->YCbCr_matrix));
}
#endif
}
static void Draw(
GPU_RenderData *data, SDL_RenderCommand *cmd,
Uint32 num_verts,
@@ -624,29 +913,26 @@ static void Draw(
SDL_GPUShader *custom_frag_shader = custom_state ? custom_state->fragment_shader : NULL;
GPU_VertexShaderID v_shader;
GPU_FragmentShaderID f_shader;
GPU_SimpleFragmentShaderUniformData simple_constants = { cmd->data.draw.color_scale };
GPU_AdvancedFragmentShaderUniformData advanced_constants;
if (prim == SDL_GPU_PRIMITIVETYPE_TRIANGLELIST) {
SDL_Texture *texture = cmd->data.draw.texture;
if (texture) {
v_shader = VERT_SHADER_TRI_TEXTURE;
if (texture->format == SDL_PIXELFORMAT_INDEX8) {
if (cmd->data.draw.texture_scale_mode == SDL_SCALEMODE_PIXELART) {
f_shader = FRAG_SHADER_TEXTURE_PALETTE_PIXELART;
} else {
f_shader = FRAG_SHADER_TEXTURE_PALETTE;
}
} else if (texture->format == SDL_PIXELFORMAT_RGBA32 || texture->format == SDL_PIXELFORMAT_BGRA32) {
if (cmd->data.draw.texture_scale_mode == SDL_SCALEMODE_PIXELART) {
f_shader = FRAG_SHADER_TEXTURE_RGBA_PIXELART;
} else {
CalculateAdvancedShaderConstants(texture->renderer, cmd, texture, &advanced_constants);
if ((advanced_constants.texture_type == TEXTURETYPE_RGB ||
advanced_constants.texture_type == TEXTURETYPE_RGBA) &&
advanced_constants.input_type == INPUTTYPE_UNSPECIFIED &&
advanced_constants.tonemap_method == TONEMAP_NONE) {
if (texture->format == SDL_PIXELFORMAT_RGBA32 || texture->format == SDL_PIXELFORMAT_BGRA32) {
f_shader = FRAG_SHADER_TEXTURE_RGBA;
}
} else {
if (cmd->data.draw.texture_scale_mode == SDL_SCALEMODE_PIXELART) {
f_shader = FRAG_SHADER_TEXTURE_RGB_PIXELART;
} else {
f_shader = FRAG_SHADER_TEXTURE_RGB;
}
} else {
f_shader = FRAG_SHADER_TEXTURE_ADVANCED;
}
} else {
v_shader = VERT_SHADER_TRI_COLOR;
@@ -693,12 +979,29 @@ static void Draw(
sampler_bind.texture = tdata->texture;
SDL_BindGPUFragmentSamplers(pass, sampler_slot++, &sampler_bind, 1);
if (f_shader == FRAG_SHADER_TEXTURE_ADVANCED) {
if (texture->palette) {
GPU_PaletteData *palette = (GPU_PaletteData *)texture->palette->internal;
sampler_bind.sampler = GetSampler(data, SDL_SCALEMODE_NEAREST, SDL_TEXTURE_ADDRESS_CLAMP, SDL_TEXTURE_ADDRESS_CLAMP);
sampler_bind.texture = palette->texture;
SDL_BindGPUFragmentSamplers(pass, sampler_slot++, &sampler_bind, 1);
#ifdef SDL_HAVE_YUV
} else if (tdata->yuv) {
sampler_bind.texture = tdata->textureU;
SDL_BindGPUFragmentSamplers(pass, sampler_slot++, &sampler_bind, 1);
sampler_bind.texture = tdata->textureV;
SDL_BindGPUFragmentSamplers(pass, sampler_slot++, &sampler_bind, 1);
} else if (tdata->nv12) {
sampler_bind.texture = tdata->textureNV;
SDL_BindGPUFragmentSamplers(pass, sampler_slot++, &sampler_bind, 1);
#endif
}
// We need to fill 3 sampler slots for the advanced shader
while (sampler_slot < 3) {
SDL_BindGPUFragmentSamplers(pass, sampler_slot++, &sampler_bind, 1);
}
}
}
if (custom_state) {
@@ -718,7 +1021,11 @@ static void Draw(
}
}
} else {
PushFragmentUniforms(data, cmd);
if (f_shader == FRAG_SHADER_TEXTURE_ADVANCED) {
SDL_PushGPUFragmentUniformData(data->state.command_buffer, 0, &advanced_constants, sizeof(advanced_constants));
} else {
SDL_PushGPUFragmentUniformData(data->state.command_buffer, 0, &simple_constants, sizeof(simple_constants));
}
}
SDL_GPUBufferBinding buffer_bind;
@@ -1160,6 +1467,11 @@ static void GPU_DestroyTexture(SDL_Renderer *renderer, SDL_Texture *texture)
}
SDL_ReleaseGPUTexture(renderdata->device, data->texture);
#ifdef SDL_HAVE_YUV
SDL_ReleaseGPUTexture(renderdata->device, data->textureU);
SDL_ReleaseGPUTexture(renderdata->device, data->textureV);
SDL_ReleaseGPUTexture(renderdata->device, data->textureNV);
#endif
SDL_free(data->pixels);
SDL_free(data);
texture->internal = NULL;
@@ -1262,8 +1574,9 @@ static bool GPU_CreateRenderer(SDL_Renderer *renderer, SDL_Window *window, SDL_P
SDL_SetupRendererColorspace(renderer, create_props);
if (renderer->output_colorspace != SDL_COLORSPACE_SRGB) {
// TODO
if (renderer->output_colorspace != SDL_COLORSPACE_SRGB &&
renderer->output_colorspace != SDL_COLORSPACE_SRGB_LINEAR &&
renderer->output_colorspace != SDL_COLORSPACE_HDR10) {
return SDL_SetError("Unsupported output colorspace");
}
@@ -1278,6 +1591,10 @@ static bool GPU_CreateRenderer(SDL_Renderer *renderer, SDL_Window *window, SDL_P
renderer->DestroyPalette = GPU_DestroyPalette;
renderer->CreateTexture = GPU_CreateTexture;
renderer->UpdateTexture = GPU_UpdateTexture;
#ifdef SDL_HAVE_YUV
renderer->UpdateTextureYUV = GPU_UpdateTextureYUV;
renderer->UpdateTextureNV = GPU_UpdateTextureNV;
#endif
renderer->LockTexture = GPU_LockTexture;
renderer->UnlockTexture = GPU_UnlockTexture;
renderer->SetRenderTarget = GPU_SetRenderTarget;
@@ -1341,7 +1658,7 @@ static bool GPU_CreateRenderer(SDL_Renderer *renderer, SDL_Window *window, SDL_P
return false;
}
// XXX what's a good initial size?
// FIXME: What's a good initial size?
if (!InitVertexBuffer(data, 1 << 16)) {
return false;
}
@@ -1350,7 +1667,18 @@ static bool GPU_CreateRenderer(SDL_Renderer *renderer, SDL_Window *window, SDL_P
return false;
}
switch (renderer->output_colorspace) {
case SDL_COLORSPACE_SRGB_LINEAR:
data->swapchain.composition = SDL_GPU_SWAPCHAINCOMPOSITION_HDR_EXTENDED_LINEAR;
break;
case SDL_COLORSPACE_HDR10:
data->swapchain.composition = SDL_GPU_SWAPCHAINCOMPOSITION_HDR10_ST2084;
break;
case SDL_COLORSPACE_SRGB:
default:
data->swapchain.composition = SDL_GPU_SWAPCHAINCOMPOSITION_SDR;
break;
}
data->swapchain.present_mode = SDL_GPU_PRESENTMODE_VSYNC;
int vsync = (int)SDL_GetNumberProperty(create_props, SDL_PROP_RENDERER_CREATE_PRESENT_VSYNC_NUMBER, 0);
@@ -1364,7 +1692,14 @@ static bool GPU_CreateRenderer(SDL_Renderer *renderer, SDL_Window *window, SDL_P
SDL_AddSupportedTextureFormat(renderer, SDL_PIXELFORMAT_RGBA32);
SDL_AddSupportedTextureFormat(renderer, SDL_PIXELFORMAT_BGRX32);
SDL_AddSupportedTextureFormat(renderer, SDL_PIXELFORMAT_RGBX32);
SDL_AddSupportedTextureFormat(renderer, SDL_PIXELFORMAT_ABGR2101010);
SDL_AddSupportedTextureFormat(renderer, SDL_PIXELFORMAT_RGBA64_FLOAT);
SDL_AddSupportedTextureFormat(renderer, SDL_PIXELFORMAT_INDEX8);
SDL_AddSupportedTextureFormat(renderer, SDL_PIXELFORMAT_YV12);
SDL_AddSupportedTextureFormat(renderer, SDL_PIXELFORMAT_IYUV);
SDL_AddSupportedTextureFormat(renderer, SDL_PIXELFORMAT_NV12);
SDL_AddSupportedTextureFormat(renderer, SDL_PIXELFORMAT_NV21);
SDL_AddSupportedTextureFormat(renderer, SDL_PIXELFORMAT_P010);
SDL_SetNumberProperty(SDL_GetRendererProperties(renderer), SDL_PROP_RENDERER_MAX_TEXTURE_SIZE_NUMBER, 16384);

View File

@@ -106,52 +106,31 @@ static const GPU_ShaderSources vert_shader_sources[NUM_VERT_SHADERS] = {
static const GPU_ShaderSources frag_shader_sources[NUM_FRAG_SHADERS] = {
[FRAG_SHADER_COLOR] = {
.num_samplers = 0,
.num_uniform_buffers = 0,
.num_uniform_buffers = 1,
SHADER_SPIRV(color_frag_spv)
SHADER_DXIL60(color_frag_dxil)
SHADER_METAL(color_frag_msl)
},
[FRAG_SHADER_TEXTURE_PALETTE] = {
.num_samplers = 2,
.num_uniform_buffers = 0,
SHADER_SPIRV(texture_palette_frag_spv)
SHADER_DXIL60(texture_palette_frag_dxil)
SHADER_METAL(texture_palette_frag_msl)
},
[FRAG_SHADER_TEXTURE_RGB] = {
.num_samplers = 1,
.num_uniform_buffers = 0,
.num_uniform_buffers = 1,
SHADER_SPIRV(texture_rgb_frag_spv)
SHADER_DXIL60(texture_rgb_frag_dxil)
SHADER_METAL(texture_rgb_frag_msl)
},
[FRAG_SHADER_TEXTURE_RGBA] = {
.num_samplers = 1,
.num_uniform_buffers = 0,
.num_uniform_buffers = 1,
SHADER_SPIRV(texture_rgba_frag_spv)
SHADER_DXIL60(texture_rgba_frag_dxil)
SHADER_METAL(texture_rgba_frag_msl)
},
[FRAG_SHADER_TEXTURE_PALETTE_PIXELART] = {
.num_samplers = 2,
[FRAG_SHADER_TEXTURE_ADVANCED] = {
.num_samplers = 3,
.num_uniform_buffers = 1,
SHADER_SPIRV(texture_palette_pixelart_frag_spv)
SHADER_DXIL60(texture_palette_pixelart_frag_dxil)
SHADER_METAL(texture_palette_pixelart_frag_msl)
},
[FRAG_SHADER_TEXTURE_RGB_PIXELART] = {
.num_samplers = 1,
.num_uniform_buffers = 1,
SHADER_SPIRV(texture_rgb_pixelart_frag_spv)
SHADER_DXIL60(texture_rgb_pixelart_frag_dxil)
SHADER_METAL(texture_rgb_pixelart_frag_msl)
},
[FRAG_SHADER_TEXTURE_RGBA_PIXELART] = {
.num_samplers = 1,
.num_uniform_buffers = 1,
SHADER_SPIRV(texture_rgba_pixelart_frag_spv)
SHADER_DXIL60(texture_rgba_pixelart_frag_dxil)
SHADER_METAL(texture_rgba_pixelart_frag_msl)
SHADER_SPIRV(texture_advanced_frag_spv)
SHADER_DXIL60(texture_advanced_frag_dxil)
SHADER_METAL(texture_advanced_frag_msl)
},
};
// clang-format on

View File

@@ -40,12 +40,9 @@ typedef enum
{
FRAG_SHADER_INVALID = -1,
FRAG_SHADER_COLOR,
FRAG_SHADER_TEXTURE_PALETTE,
FRAG_SHADER_TEXTURE_RGB,
FRAG_SHADER_TEXTURE_RGBA,
FRAG_SHADER_TEXTURE_PALETTE_PIXELART,
FRAG_SHADER_TEXTURE_RGB_PIXELART,
FRAG_SHADER_TEXTURE_RGBA_PIXELART,
FRAG_SHADER_TEXTURE_ADVANCED,
FRAG_SHADER_TEXTURE_CUSTOM,
NUM_FRAG_SHADERS,

View File

@@ -12,6 +12,7 @@ make-header() {
# Requires shadercross CLI installed from SDL_shadercross
for filename in *.hlsl; do
if [ -f "$filename" ]; then
echo "$filename"
shadercross "$filename" -o "${filename/.hlsl/.spv}"
make-header "${filename/.hlsl/.spv}"
shadercross "$filename" -o "${filename/.hlsl/.msl}"

View File

@@ -1,9 +1,9 @@
static const unsigned char color_frag_dxil[] = {
0x44, 0x58, 0x42, 0x43, 0x22, 0x83, 0x29, 0x5c, 0x68, 0x9b, 0xf1, 0x0d,
0x9d, 0x30, 0x30, 0x3c, 0x40, 0x0e, 0xef, 0x82, 0x01, 0x00, 0x00, 0x00,
0x04, 0x0b, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x00, 0x00,
0x44, 0x58, 0x42, 0x43, 0x14, 0xca, 0x57, 0x62, 0x73, 0xf9, 0xd9, 0x39,
0xf2, 0x3f, 0x7b, 0x7c, 0x48, 0x51, 0x30, 0xa5, 0x01, 0x00, 0x00, 0x00,
0x18, 0x0d, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x00, 0x00,
0x4c, 0x00, 0x00, 0x00, 0x88, 0x00, 0x00, 0x00, 0xc4, 0x00, 0x00, 0x00,
0x58, 0x01, 0x00, 0x00, 0x0c, 0x06, 0x00, 0x00, 0x28, 0x06, 0x00, 0x00,
0x74, 0x01, 0x00, 0x00, 0x34, 0x07, 0x00, 0x00, 0x50, 0x07, 0x00, 0x00,
0x53, 0x46, 0x49, 0x30, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x49, 0x53, 0x47, 0x31, 0x34, 0x00, 0x00, 0x00,
0x01, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
@@ -15,40 +15,49 @@ static const unsigned char color_frag_dxil[] = {
0x28, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00,
0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0f, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x53, 0x56, 0x5f, 0x54, 0x61, 0x72, 0x67, 0x65,
0x74, 0x00, 0x00, 0x00, 0x50, 0x53, 0x56, 0x30, 0x8c, 0x00, 0x00, 0x00,
0x74, 0x00, 0x00, 0x00, 0x50, 0x53, 0x56, 0x30, 0xa8, 0x00, 0x00, 0x00,
0x34, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x00, 0x01,
0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x0a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x10, 0x00, 0x00, 0x00, 0x00, 0x54, 0x45, 0x58, 0x43, 0x4f, 0x4f, 0x52,
0x44, 0x00, 0x6d, 0x61, 0x69, 0x6e, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x44, 0x00, 0x03, 0x02, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x44, 0x10,
0x03, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00,
0x04, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x53, 0x54, 0x41, 0x54,
0xac, 0x04, 0x00, 0x00, 0x60, 0x00, 0x00, 0x00, 0x2b, 0x01, 0x00, 0x00,
0x44, 0x58, 0x49, 0x4c, 0x00, 0x01, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00,
0x94, 0x04, 0x00, 0x00, 0x42, 0x43, 0xc0, 0xde, 0x21, 0x0c, 0x00, 0x00,
0x22, 0x01, 0x00, 0x00, 0x0b, 0x82, 0x20, 0x00, 0x02, 0x00, 0x00, 0x00,
0x13, 0x00, 0x00, 0x00, 0x07, 0x81, 0x23, 0x91, 0x41, 0xc8, 0x04, 0x49,
0x06, 0x10, 0x32, 0x39, 0x92, 0x01, 0x84, 0x0c, 0x25, 0x05, 0x08, 0x19,
0x1e, 0x04, 0x8b, 0x62, 0x80, 0x10, 0x45, 0x02, 0x42, 0x92, 0x0b, 0x42,
0x84, 0x10, 0x32, 0x14, 0x38, 0x08, 0x18, 0x4b, 0x0a, 0x32, 0x42, 0x88,
0x48, 0x90, 0x14, 0x20, 0x43, 0x46, 0x88, 0xa5, 0x00, 0x19, 0x32, 0x42,
0xe4, 0x48, 0x0e, 0x90, 0x11, 0x22, 0xc4, 0x50, 0x41, 0x51, 0x81, 0x8c,
0xe1, 0x83, 0xe5, 0x8a, 0x04, 0x21, 0x46, 0x06, 0x51, 0x18, 0x00, 0x00,
0x06, 0x00, 0x00, 0x00, 0x1b, 0x8c, 0xe0, 0xff, 0xff, 0xff, 0xff, 0x07,
0x40, 0x02, 0xa8, 0x0d, 0x84, 0xf0, 0xff, 0xff, 0xff, 0xff, 0x03, 0x20,
0x01, 0x00, 0x00, 0x00, 0x49, 0x18, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00,
0x13, 0x82, 0x60, 0x42, 0x20, 0x00, 0x00, 0x00, 0x89, 0x20, 0x00, 0x00,
0x0f, 0x00, 0x00, 0x00, 0x32, 0x22, 0x08, 0x09, 0x20, 0x64, 0x85, 0x04,
0x13, 0x22, 0xa4, 0x84, 0x04, 0x13, 0x22, 0xe3, 0x84, 0xa1, 0x90, 0x14,
0x12, 0x4c, 0x88, 0x8c, 0x0b, 0x84, 0x84, 0x4c, 0x10, 0x30, 0x23, 0x00,
0x25, 0x00, 0x8a, 0x19, 0x80, 0x39, 0x02, 0x30, 0x98, 0x23, 0x40, 0x8a,
0x31, 0x44, 0x54, 0x44, 0x56, 0x0c, 0x20, 0xa2, 0x1a, 0xc2, 0x81, 0x80,
0x34, 0x20, 0x00, 0x00, 0x13, 0x14, 0x72, 0xc0, 0x87, 0x74, 0x60, 0x87,
0x00, 0x00, 0x00, 0x00, 0x0a, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
0x18, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0d, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x54, 0x45, 0x58,
0x43, 0x4f, 0x4f, 0x52, 0x44, 0x00, 0x6d, 0x61, 0x69, 0x6e, 0x00, 0x00,
0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00,
0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x44, 0x00,
0x03, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x01, 0x00, 0x44, 0x10, 0x03, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
0x02, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00,
0x53, 0x54, 0x41, 0x54, 0xb8, 0x05, 0x00, 0x00, 0x60, 0x00, 0x00, 0x00,
0x6e, 0x01, 0x00, 0x00, 0x44, 0x58, 0x49, 0x4c, 0x00, 0x01, 0x00, 0x00,
0x10, 0x00, 0x00, 0x00, 0xa0, 0x05, 0x00, 0x00, 0x42, 0x43, 0xc0, 0xde,
0x21, 0x0c, 0x00, 0x00, 0x65, 0x01, 0x00, 0x00, 0x0b, 0x82, 0x20, 0x00,
0x02, 0x00, 0x00, 0x00, 0x13, 0x00, 0x00, 0x00, 0x07, 0x81, 0x23, 0x91,
0x41, 0xc8, 0x04, 0x49, 0x06, 0x10, 0x32, 0x39, 0x92, 0x01, 0x84, 0x0c,
0x25, 0x05, 0x08, 0x19, 0x1e, 0x04, 0x8b, 0x62, 0x80, 0x14, 0x45, 0x02,
0x42, 0x92, 0x0b, 0x42, 0xa4, 0x10, 0x32, 0x14, 0x38, 0x08, 0x18, 0x4b,
0x0a, 0x32, 0x52, 0x88, 0x48, 0x90, 0x14, 0x20, 0x43, 0x46, 0x88, 0xa5,
0x00, 0x19, 0x32, 0x42, 0xe4, 0x48, 0x0e, 0x90, 0x91, 0x22, 0xc4, 0x50,
0x41, 0x51, 0x81, 0x8c, 0xe1, 0x83, 0xe5, 0x8a, 0x04, 0x29, 0x46, 0x06,
0x51, 0x18, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x1b, 0x8c, 0xe0, 0xff,
0xff, 0xff, 0xff, 0x07, 0x40, 0x02, 0xa8, 0x0d, 0x84, 0xf0, 0xff, 0xff,
0xff, 0xff, 0x03, 0x20, 0x6d, 0x30, 0x86, 0xff, 0xff, 0xff, 0xff, 0x1f,
0x00, 0x09, 0xa8, 0x00, 0x49, 0x18, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00,
0x13, 0x82, 0x60, 0x42, 0x20, 0x4c, 0x08, 0x06, 0x00, 0x00, 0x00, 0x00,
0x89, 0x20, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x32, 0x22, 0x48, 0x09,
0x20, 0x64, 0x85, 0x04, 0x93, 0x22, 0xa4, 0x84, 0x04, 0x93, 0x22, 0xe3,
0x84, 0xa1, 0x90, 0x14, 0x12, 0x4c, 0x8a, 0x8c, 0x0b, 0x84, 0xa4, 0x4c,
0x10, 0x58, 0x23, 0x00, 0x25, 0x00, 0x14, 0x66, 0x00, 0xe6, 0x08, 0xc0,
0x60, 0x8e, 0x00, 0x29, 0xc6, 0x20, 0x84, 0x14, 0x42, 0xa6, 0x18, 0x80,
0x10, 0x52, 0x06, 0xa1, 0xa3, 0x86, 0xcb, 0x9f, 0xb0, 0x87, 0x90, 0x7c,
0x6e, 0xa3, 0x8a, 0x95, 0x98, 0xfc, 0xe2, 0xb6, 0x11, 0x31, 0xc6, 0x18,
0x54, 0xee, 0x19, 0x2e, 0x7f, 0xc2, 0x1e, 0x42, 0xf2, 0x43, 0xa0, 0x19,
0x16, 0x02, 0x05, 0xab, 0x10, 0x8a, 0x30, 0x42, 0x6d, 0x8e, 0x20, 0x28,
0x06, 0x23, 0x85, 0x90, 0x47, 0x70, 0x20, 0xe0, 0x9c, 0x09, 0x7b, 0x88,
0x9f, 0x73, 0x1a, 0x69, 0x02, 0x9a, 0x49, 0x42, 0xc1, 0xa0, 0x99, 0x06,
0x04, 0x00, 0x00, 0x00, 0x13, 0x14, 0x72, 0xc0, 0x87, 0x74, 0x60, 0x87,
0x36, 0x68, 0x87, 0x79, 0x68, 0x03, 0x72, 0xc0, 0x87, 0x0d, 0xaf, 0x50,
0x0e, 0x6d, 0xd0, 0x0e, 0x7a, 0x50, 0x0e, 0x6d, 0x00, 0x0f, 0x7a, 0x30,
0x07, 0x72, 0xa0, 0x07, 0x73, 0x20, 0x07, 0x6d, 0x90, 0x0e, 0x71, 0xa0,
@@ -63,40 +72,164 @@ static const unsigned char color_frag_dxil[] = {
0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x86,
0x3c, 0x06, 0x10, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x0c, 0x79, 0x10, 0x20, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0xc8, 0x02, 0x01, 0x0b, 0x00, 0x00, 0x00, 0x32, 0x1e, 0x98, 0x14,
0x19, 0x11, 0x4c, 0x90, 0x8c, 0x09, 0x26, 0x47, 0xc6, 0x04, 0x43, 0xa2,
0x12, 0x18, 0x01, 0x28, 0x86, 0x32, 0x28, 0x8f, 0x92, 0x28, 0x04, 0xaa,
0x92, 0x18, 0x01, 0x28, 0x82, 0x42, 0x28, 0x10, 0xda, 0xb1, 0x0c, 0x82,
0x08, 0x04, 0x02, 0x01, 0x79, 0x18, 0x00, 0x00, 0x58, 0x00, 0x00, 0x00,
0x00, 0x18, 0xf2, 0x34, 0x40, 0x00, 0x0c, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x30, 0xe4, 0x81, 0x80, 0x00, 0x18, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x20, 0x0b, 0x04, 0x00, 0x00, 0x0d, 0x00, 0x00, 0x00,
0x32, 0x1e, 0x98, 0x14, 0x19, 0x11, 0x4c, 0x90, 0x8c, 0x09, 0x26, 0x47,
0xc6, 0x04, 0x43, 0x22, 0x25, 0x30, 0x02, 0x50, 0x0c, 0x65, 0x50, 0x08,
0xe5, 0x50, 0x12, 0xe5, 0x41, 0xa5, 0x24, 0x46, 0x00, 0x8a, 0xa0, 0x10,
0x0a, 0x84, 0xe6, 0x0c, 0x00, 0xd1, 0x19, 0x00, 0xaa, 0x63, 0x19, 0x04,
0x11, 0x08, 0x04, 0x02, 0x79, 0x18, 0x00, 0x00, 0x75, 0x00, 0x00, 0x00,
0x1a, 0x03, 0x4c, 0x90, 0x46, 0x02, 0x13, 0x44, 0x8f, 0x0c, 0x6f, 0xec,
0xed, 0x4d, 0x0c, 0x24, 0xc6, 0x05, 0xc7, 0x45, 0xa6, 0x06, 0xa6, 0xc6,
0x45, 0x06, 0x07, 0x04, 0x25, 0xa7, 0xcc, 0x4c, 0x4c, 0xcc, 0x66, 0x6c,
0x46, 0x26, 0x65, 0x43, 0x10, 0x4c, 0x10, 0x88, 0x61, 0x82, 0x40, 0x10,
0x46, 0x26, 0x65, 0x43, 0x10, 0x4c, 0x10, 0x88, 0x62, 0x82, 0x40, 0x18,
0x1b, 0x84, 0x81, 0xd8, 0x20, 0x10, 0x04, 0x05, 0xb8, 0xb9, 0x09, 0x02,
0x51, 0x6c, 0x18, 0x0e, 0x84, 0x98, 0x20, 0x08, 0xc0, 0x06, 0x60, 0xc3,
0x40, 0x2c, 0xcb, 0x86, 0x80, 0xd9, 0x30, 0x0c, 0x4a, 0x33, 0x41, 0x58,
0x9e, 0x0d, 0xc1, 0x43, 0xa2, 0x2d, 0x2c, 0xcd, 0x8d, 0x08, 0x55, 0x11,
0xd6, 0xd0, 0xd3, 0x93, 0x14, 0xd1, 0x04, 0xa1, 0x50, 0x26, 0x08, 0xc5,
0xb2, 0x21, 0x20, 0x26, 0x08, 0x05, 0x33, 0x41, 0x28, 0x9a, 0x09, 0x02,
0x61, 0x4c, 0x10, 0x88, 0x63, 0x83, 0x80, 0x65, 0x1b, 0x16, 0x42, 0x9a,
0xa8, 0xca, 0x1a, 0x2e, 0x82, 0xd2, 0x36, 0x04, 0x1b, 0x93, 0x29, 0xab,
0x2f, 0xaa, 0x30, 0xb9, 0xb3, 0x32, 0xba, 0x09, 0x42, 0xe1, 0x6c, 0x58,
0x88, 0x6e, 0xf2, 0x2a, 0x6a, 0xb8, 0x08, 0x4a, 0xdb, 0x10, 0x7c, 0x1b,
0x06, 0x0e, 0x0c, 0x80, 0x0d, 0x85, 0x12, 0x85, 0x01, 0x00, 0xb0, 0x48,
0x73, 0x9b, 0xa3, 0x9b, 0x9b, 0x20, 0x10, 0x08, 0x8d, 0xb9, 0xb4, 0xb3,
0x2f, 0x36, 0xb2, 0x09, 0x02, 0x91, 0xd0, 0x98, 0x4b, 0x3b, 0xfb, 0x9a,
0xa3, 0xdb, 0x60, 0x8c, 0x01, 0x19, 0x94, 0x81, 0x19, 0x9c, 0x81, 0x19,
0x54, 0x61, 0x63, 0xb3, 0x6b, 0x73, 0x49, 0x23, 0x2b, 0x73, 0xa3, 0x9b,
0x12, 0x04, 0x55, 0xc8, 0xf0, 0x5c, 0xec, 0xca, 0xe4, 0xe6, 0xd2, 0xde,
0xdc, 0xa6, 0x04, 0x44, 0x13, 0x32, 0x3c, 0x17, 0xbb, 0x30, 0x36, 0xbb,
0x32, 0xb9, 0x29, 0x41, 0x51, 0x87, 0x0c, 0xcf, 0x65, 0x0e, 0x2d, 0x8c,
0xac, 0x4c, 0xae, 0xe9, 0x8d, 0xac, 0x8c, 0x6d, 0x4a, 0x80, 0x54, 0x22,
0xc3, 0x73, 0xa1, 0xcb, 0x83, 0x2b, 0x0b, 0x72, 0x73, 0x7b, 0xa3, 0x0b,
0xa3, 0x4b, 0x7b, 0x73, 0x9b, 0x9b, 0x12, 0x34, 0x75, 0xc8, 0xf0, 0x5c,
0xec, 0xd2, 0xca, 0xee, 0x92, 0xc8, 0xa6, 0xe8, 0xc2, 0xe8, 0xca, 0xa6,
0x04, 0x4f, 0x1d, 0x32, 0x3c, 0x97, 0x32, 0x37, 0x3a, 0xb9, 0x3c, 0xa8,
0xb7, 0x34, 0x37, 0xba, 0xb9, 0x29, 0x41, 0x18, 0x74, 0x21, 0xc3, 0x73,
0x19, 0x7b, 0xab, 0x73, 0xa3, 0x2b, 0x93, 0x9b, 0x9b, 0x12, 0x9c, 0x01,
0x71, 0x6c, 0x18, 0x0e, 0x84, 0x98, 0x20, 0x50, 0x13, 0x1d, 0xba, 0x3c,
0xb8, 0xb2, 0xaf, 0xa1, 0x37, 0xb7, 0x39, 0xba, 0x30, 0x37, 0xba, 0xb9,
0x09, 0x02, 0x81, 0x4c, 0x10, 0x88, 0x64, 0x03, 0x42, 0x28, 0x0b, 0x43,
0x0c, 0x0d, 0xb0, 0x21, 0x70, 0x36, 0x10, 0x00, 0xf0, 0x00, 0x13, 0x84,
0x49, 0x62, 0x35, 0xf4, 0xe6, 0x36, 0x47, 0x17, 0xe6, 0x46, 0x37, 0xf7,
0x35, 0xf6, 0xc6, 0xf6, 0x26, 0xf7, 0x35, 0x37, 0x16, 0xc6, 0x56, 0x36,
0x41, 0x20, 0x94, 0x09, 0x02, 0xb1, 0x6c, 0x30, 0x10, 0x89, 0x21, 0x26,
0x6a, 0x83, 0xd0, 0x54, 0x1b, 0x06, 0x22, 0xb2, 0x26, 0x08, 0x02, 0xb0,
0x01, 0xd8, 0x30, 0x10, 0x59, 0xb6, 0x21, 0xd0, 0x36, 0x0c, 0x03, 0xb6,
0x4d, 0x10, 0x2a, 0x6a, 0x43, 0xd0, 0x91, 0x68, 0x0b, 0x4b, 0x73, 0x23,
0x42, 0x55, 0x84, 0x35, 0xf4, 0xf4, 0x24, 0x45, 0x34, 0x41, 0x28, 0x9a,
0x09, 0x42, 0xe1, 0x6c, 0x08, 0x88, 0x09, 0x42, 0xf1, 0x4c, 0x10, 0x0a,
0x68, 0x82, 0x40, 0x30, 0x1b, 0x04, 0xc6, 0x0c, 0x36, 0x2c, 0x04, 0x18,
0x84, 0x81, 0x18, 0x8c, 0x01, 0x19, 0x0c, 0x65, 0x40, 0x88, 0xc1, 0x19,
0x6c, 0x08, 0xd0, 0x80, 0xc9, 0x94, 0xd5, 0x17, 0x55, 0x98, 0xdc, 0x59,
0x19, 0xdd, 0x04, 0xa1, 0x88, 0x36, 0x2c, 0x84, 0x1a, 0x84, 0xc1, 0x1a,
0x8c, 0x81, 0x18, 0x0c, 0x65, 0x40, 0x88, 0xc1, 0x19, 0x6c, 0x08, 0xd8,
0x60, 0xc3, 0x90, 0x06, 0x6d, 0x00, 0x6c, 0x28, 0xb0, 0xcf, 0x0d, 0x20,
0x80, 0x86, 0x19, 0xdb, 0x5b, 0x18, 0xdd, 0x1c, 0x8b, 0x34, 0xb7, 0x39,
0xba, 0x39, 0x1a, 0x73, 0x69, 0x67, 0x5f, 0x6c, 0x64, 0x34, 0xe6, 0xd2,
0xce, 0xbe, 0xe6, 0xe8, 0x36, 0x20, 0x70, 0xc0, 0xc4, 0x81, 0x19, 0xc8,
0x41, 0x33, 0x07, 0x4d, 0x15, 0x36, 0x36, 0xbb, 0x36, 0x97, 0x34, 0xb2,
0x32, 0x37, 0xba, 0x29, 0x41, 0x50, 0x85, 0x0c, 0xcf, 0xc5, 0xae, 0x4c,
0x6e, 0x2e, 0xed, 0xcd, 0x6d, 0x4a, 0x40, 0x34, 0x21, 0xc3, 0x73, 0xb1,
0x0b, 0x63, 0xb3, 0x2b, 0x93, 0x9b, 0x12, 0x14, 0x75, 0xc8, 0xf0, 0x5c,
0xe6, 0xd0, 0xc2, 0xc8, 0xca, 0xe4, 0x9a, 0xde, 0xc8, 0xca, 0xd8, 0xa6,
0x04, 0x48, 0x19, 0x32, 0x3c, 0x17, 0xb9, 0xb2, 0xb9, 0xb7, 0x3a, 0xb9,
0xb1, 0xb2, 0xb9, 0x29, 0xc1, 0x53, 0x89, 0x0c, 0xcf, 0x85, 0x2e, 0x0f,
0xae, 0x2c, 0xc8, 0xcd, 0xed, 0x8d, 0x2e, 0x8c, 0x2e, 0xed, 0xcd, 0x6d,
0x6e, 0x8a, 0x60, 0x6d, 0x75, 0xc8, 0xf0, 0x5c, 0xec, 0xd2, 0xca, 0xee,
0x92, 0xc8, 0xa6, 0xe8, 0xc2, 0xe8, 0xca, 0xa6, 0x04, 0x5d, 0x1d, 0x32,
0x3c, 0x97, 0x32, 0x37, 0x3a, 0xb9, 0x3c, 0xa8, 0xb7, 0x34, 0x37, 0xba,
0xb9, 0x29, 0x81, 0x1b, 0x74, 0x21, 0xc3, 0x73, 0x19, 0x7b, 0xab, 0x73,
0xa3, 0x2b, 0x93, 0x9b, 0x9b, 0x12, 0xcc, 0x01, 0x00, 0x00, 0x00, 0x00,
0x79, 0x18, 0x00, 0x00, 0x4c, 0x00, 0x00, 0x00, 0x33, 0x08, 0x80, 0x1c,
0xc4, 0xe1, 0x1c, 0x66, 0x14, 0x01, 0x3d, 0x88, 0x43, 0x38, 0x84, 0xc3,
0x8c, 0x42, 0x80, 0x07, 0x79, 0x78, 0x07, 0x73, 0x98, 0x71, 0x0c, 0xe6,
0x00, 0x0f, 0xed, 0x10, 0x0e, 0xf4, 0x80, 0x0e, 0x33, 0x0c, 0x42, 0x1e,
0xc2, 0xc1, 0x1d, 0xce, 0xa1, 0x1c, 0x66, 0x30, 0x05, 0x3d, 0x88, 0x43,
0x38, 0x84, 0x83, 0x1b, 0xcc, 0x03, 0x3d, 0xc8, 0x43, 0x3d, 0x8c, 0x03,
0x3d, 0xcc, 0x78, 0x8c, 0x74, 0x70, 0x07, 0x7b, 0x08, 0x07, 0x79, 0x48,
0x87, 0x70, 0x70, 0x07, 0x7a, 0x70, 0x03, 0x76, 0x78, 0x87, 0x70, 0x20,
0x87, 0x19, 0xcc, 0x11, 0x0e, 0xec, 0x90, 0x0e, 0xe1, 0x30, 0x0f, 0x6e,
0x30, 0x0f, 0xe3, 0xf0, 0x0e, 0xf0, 0x50, 0x0e, 0x33, 0x10, 0xc4, 0x1d,
0xde, 0x21, 0x1c, 0xd8, 0x21, 0x1d, 0xc2, 0x61, 0x1e, 0x66, 0x30, 0x89,
0x3b, 0xbc, 0x83, 0x3b, 0xd0, 0x43, 0x39, 0xb4, 0x03, 0x3c, 0xbc, 0x83,
0x3c, 0x84, 0x03, 0x3b, 0xcc, 0xf0, 0x14, 0x76, 0x60, 0x07, 0x7b, 0x68,
0x07, 0x37, 0x68, 0x87, 0x72, 0x68, 0x07, 0x37, 0x80, 0x87, 0x70, 0x90,
0x87, 0x70, 0x60, 0x07, 0x76, 0x28, 0x07, 0x76, 0xf8, 0x05, 0x76, 0x78,
0x87, 0x77, 0x80, 0x87, 0x5f, 0x08, 0x87, 0x71, 0x18, 0x87, 0x72, 0x98,
0x87, 0x79, 0x98, 0x81, 0x2c, 0xee, 0xf0, 0x0e, 0xee, 0xe0, 0x0e, 0xf5,
0xc0, 0x0e, 0xec, 0x30, 0x03, 0x62, 0xc8, 0xa1, 0x1c, 0xe4, 0xa1, 0x1c,
0xcc, 0xa1, 0x1c, 0xe4, 0xa1, 0x1c, 0xdc, 0x61, 0x1c, 0xca, 0x21, 0x1c,
0xc4, 0x81, 0x1d, 0xca, 0x61, 0x06, 0xd6, 0x90, 0x43, 0x39, 0xc8, 0x43,
0x39, 0x98, 0x43, 0x39, 0xc8, 0x43, 0x39, 0xb8, 0xc3, 0x38, 0x94, 0x43,
0x38, 0x88, 0x03, 0x3b, 0x94, 0xc3, 0x2f, 0xbc, 0x83, 0x3c, 0xfc, 0x82,
0x3b, 0xd4, 0x03, 0x3b, 0xb0, 0xc3, 0x8c, 0xc8, 0x21, 0x07, 0x7c, 0x70,
0x03, 0x72, 0x10, 0x87, 0x73, 0x70, 0x03, 0x7b, 0x08, 0x07, 0x79, 0x60,
0x87, 0x70, 0xc8, 0x87, 0x77, 0xa8, 0x07, 0x7a, 0x98, 0x81, 0x3c, 0xe4,
0x80, 0x0f, 0x6e, 0x40, 0x0f, 0xe5, 0xd0, 0x0e, 0xf0, 0x00, 0x00, 0x00,
0x71, 0x20, 0x00, 0x00, 0x14, 0x00, 0x00, 0x00, 0x36, 0xb0, 0x0d, 0x97,
0xef, 0x3c, 0xbe, 0x10, 0x50, 0x45, 0x41, 0x44, 0xa5, 0x03, 0x0c, 0x25,
0x61, 0x00, 0x02, 0xe6, 0x17, 0xb7, 0x6d, 0x04, 0xd2, 0x70, 0xf9, 0xce,
0xe3, 0x0b, 0x11, 0x01, 0x4c, 0x44, 0x08, 0x34, 0xc3, 0x42, 0x58, 0xc0,
0x34, 0x5c, 0xbe, 0xf3, 0xf8, 0x8b, 0x03, 0x0c, 0x62, 0xf3, 0x50, 0x93,
0x5f, 0xdc, 0xb6, 0x09, 0x54, 0xc3, 0xe5, 0x3b, 0x8f, 0x2f, 0x4d, 0x4e,
0x44, 0xa0, 0xd4, 0xf4, 0x50, 0x93, 0x5f, 0xdc, 0xb6, 0x01, 0x10, 0x0c,
0x80, 0x34, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x48, 0x41, 0x53, 0x48,
0x14, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x6b, 0xf9, 0x83, 0x7e,
0x3a, 0x8a, 0x94, 0x7f, 0x05, 0xc4, 0x15, 0xe1, 0x35, 0x35, 0x42, 0x4f,
0x44, 0x58, 0x49, 0x4c, 0xc0, 0x05, 0x00, 0x00, 0x60, 0x00, 0x00, 0x00,
0x70, 0x01, 0x00, 0x00, 0x44, 0x58, 0x49, 0x4c, 0x00, 0x01, 0x00, 0x00,
0x10, 0x00, 0x00, 0x00, 0xa8, 0x05, 0x00, 0x00, 0x42, 0x43, 0xc0, 0xde,
0x21, 0x0c, 0x00, 0x00, 0x67, 0x01, 0x00, 0x00, 0x0b, 0x82, 0x20, 0x00,
0x02, 0x00, 0x00, 0x00, 0x13, 0x00, 0x00, 0x00, 0x07, 0x81, 0x23, 0x91,
0x41, 0xc8, 0x04, 0x49, 0x06, 0x10, 0x32, 0x39, 0x92, 0x01, 0x84, 0x0c,
0x25, 0x05, 0x08, 0x19, 0x1e, 0x04, 0x8b, 0x62, 0x80, 0x14, 0x45, 0x02,
0x42, 0x92, 0x0b, 0x42, 0xa4, 0x10, 0x32, 0x14, 0x38, 0x08, 0x18, 0x4b,
0x0a, 0x32, 0x52, 0x88, 0x48, 0x90, 0x14, 0x20, 0x43, 0x46, 0x88, 0xa5,
0x00, 0x19, 0x32, 0x42, 0xe4, 0x48, 0x0e, 0x90, 0x91, 0x22, 0xc4, 0x50,
0x41, 0x51, 0x81, 0x8c, 0xe1, 0x83, 0xe5, 0x8a, 0x04, 0x29, 0x46, 0x06,
0x51, 0x18, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x1b, 0x8c, 0xe0, 0xff,
0xff, 0xff, 0xff, 0x07, 0x40, 0x02, 0xa8, 0x0d, 0x84, 0xf0, 0xff, 0xff,
0xff, 0xff, 0x03, 0x20, 0x6d, 0x30, 0x86, 0xff, 0xff, 0xff, 0xff, 0x1f,
0x00, 0x09, 0xa8, 0x00, 0x49, 0x18, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00,
0x13, 0x82, 0x60, 0x42, 0x20, 0x4c, 0x08, 0x06, 0x00, 0x00, 0x00, 0x00,
0x89, 0x20, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x32, 0x22, 0x48, 0x09,
0x20, 0x64, 0x85, 0x04, 0x93, 0x22, 0xa4, 0x84, 0x04, 0x93, 0x22, 0xe3,
0x84, 0xa1, 0x90, 0x14, 0x12, 0x4c, 0x8a, 0x8c, 0x0b, 0x84, 0xa4, 0x4c,
0x10, 0x58, 0x23, 0x00, 0x25, 0x00, 0x14, 0x66, 0x00, 0xe6, 0x08, 0xc0,
0x60, 0x8e, 0x00, 0x29, 0xc6, 0x20, 0x84, 0x14, 0x42, 0xa6, 0x18, 0x80,
0x10, 0x52, 0x06, 0xa1, 0xa3, 0x86, 0xcb, 0x9f, 0xb0, 0x87, 0x90, 0x7c,
0x6e, 0xa3, 0x8a, 0x95, 0x98, 0xfc, 0xe2, 0xb6, 0x11, 0x31, 0xc6, 0x18,
0x54, 0xee, 0x19, 0x2e, 0x7f, 0xc2, 0x1e, 0x42, 0xf2, 0x43, 0xa0, 0x19,
0x16, 0x02, 0x05, 0xab, 0x10, 0x8a, 0x30, 0x42, 0x6d, 0x8e, 0x20, 0x28,
0x06, 0x23, 0x85, 0x90, 0x47, 0x70, 0x20, 0xe0, 0x9c, 0x09, 0x7b, 0x88,
0x9f, 0x73, 0x1a, 0x69, 0x02, 0x9a, 0x49, 0x42, 0xc1, 0xa0, 0x99, 0x06,
0x04, 0x00, 0x00, 0x00, 0x13, 0x14, 0x72, 0xc0, 0x87, 0x74, 0x60, 0x87,
0x36, 0x68, 0x87, 0x79, 0x68, 0x03, 0x72, 0xc0, 0x87, 0x0d, 0xaf, 0x50,
0x0e, 0x6d, 0xd0, 0x0e, 0x7a, 0x50, 0x0e, 0x6d, 0x00, 0x0f, 0x7a, 0x30,
0x07, 0x72, 0xa0, 0x07, 0x73, 0x20, 0x07, 0x6d, 0x90, 0x0e, 0x71, 0xa0,
0x07, 0x73, 0x20, 0x07, 0x6d, 0x90, 0x0e, 0x78, 0xa0, 0x07, 0x73, 0x20,
0x07, 0x6d, 0x90, 0x0e, 0x71, 0x60, 0x07, 0x7a, 0x30, 0x07, 0x72, 0xd0,
0x06, 0xe9, 0x30, 0x07, 0x72, 0xa0, 0x07, 0x73, 0x20, 0x07, 0x6d, 0x90,
0x0e, 0x76, 0x40, 0x07, 0x7a, 0x60, 0x07, 0x74, 0xd0, 0x06, 0xe6, 0x10,
0x07, 0x76, 0xa0, 0x07, 0x73, 0x20, 0x07, 0x6d, 0x60, 0x0e, 0x73, 0x20,
0x07, 0x7a, 0x30, 0x07, 0x72, 0xd0, 0x06, 0xe6, 0x60, 0x07, 0x74, 0xa0,
0x07, 0x76, 0x40, 0x07, 0x6d, 0xe0, 0x0e, 0x78, 0xa0, 0x07, 0x71, 0x60,
0x07, 0x7a, 0x30, 0x07, 0x72, 0xa0, 0x07, 0x76, 0x40, 0x07, 0x43, 0x9e,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x86,
0x3c, 0x06, 0x10, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x0c, 0x79, 0x10, 0x20, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x18, 0xf2, 0x34, 0x40, 0x00, 0x0c, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x30, 0xe4, 0x81, 0x80, 0x00, 0x18, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x20, 0x0b, 0x04, 0x00, 0x00, 0x0c, 0x00, 0x00, 0x00,
0x32, 0x1e, 0x98, 0x14, 0x19, 0x11, 0x4c, 0x90, 0x8c, 0x09, 0x26, 0x47,
0xc6, 0x04, 0x43, 0x22, 0x25, 0x30, 0x02, 0x50, 0x12, 0xc5, 0x50, 0x06,
0x85, 0x50, 0x1e, 0x54, 0x4a, 0x62, 0x04, 0xa0, 0x08, 0x0a, 0xa1, 0x40,
0x88, 0xce, 0x00, 0x50, 0x1d, 0xcb, 0x20, 0x88, 0x40, 0x20, 0x10, 0x00,
0x79, 0x18, 0x00, 0x00, 0x4d, 0x00, 0x00, 0x00, 0x1a, 0x03, 0x4c, 0x90,
0x46, 0x02, 0x13, 0x44, 0x8f, 0x0c, 0x6f, 0xec, 0xed, 0x4d, 0x0c, 0x24,
0xc6, 0x05, 0xc7, 0x45, 0xa6, 0x06, 0xa6, 0xc6, 0x45, 0x06, 0x07, 0x04,
0x25, 0xa7, 0xcc, 0x4c, 0x4c, 0xcc, 0x66, 0x6c, 0x46, 0x26, 0x65, 0x43,
0x10, 0x4c, 0x10, 0x88, 0x62, 0x82, 0x40, 0x18, 0x1b, 0x84, 0x81, 0x98,
0x20, 0x10, 0xc7, 0x06, 0x61, 0x30, 0x28, 0xc0, 0xcd, 0x4d, 0x10, 0x08,
0x64, 0xc3, 0x80, 0x24, 0xc4, 0x04, 0x81, 0x8a, 0x08, 0x4c, 0x10, 0x88,
0x64, 0x82, 0x40, 0x28, 0x1b, 0x10, 0x62, 0x61, 0x1a, 0x62, 0x70, 0x80,
0x0d, 0xc1, 0xb3, 0x81, 0x00, 0x00, 0x08, 0x98, 0x20, 0x54, 0xd2, 0x86,
0x40, 0x9a, 0x20, 0x08, 0x00, 0x89, 0xb6, 0xb0, 0x34, 0x37, 0x22, 0x54,
0x45, 0x58, 0x43, 0x4f, 0x4f, 0x52, 0x44, 0x13, 0x84, 0x82, 0x99, 0x20,
0x14, 0xcd, 0x86, 0x80, 0x98, 0x20, 0x14, 0xce, 0x04, 0xa1, 0x78, 0x26,
0x08, 0xc4, 0xb2, 0x41, 0x68, 0xb8, 0x0d, 0x0b, 0x61, 0x5d, 0x58, 0xa6,
0x0d, 0x1b, 0x81, 0x75, 0x1b, 0x02, 0x8f, 0xc9, 0x94, 0xd5, 0x17, 0x55,
0x98, 0xdc, 0x59, 0x19, 0xdd, 0x04, 0xa1, 0x80, 0x36, 0x2c, 0x04, 0x18,
0x5c, 0x61, 0x90, 0x61, 0xc3, 0x46, 0x60, 0xdd, 0x86, 0x40, 0x0c, 0x36,
0x0c, 0xdf, 0x18, 0x00, 0x1b, 0x0a, 0xaa, 0x22, 0x83, 0x08, 0xa8, 0xc2,
0xc6, 0x66, 0xd7, 0xe6, 0x92, 0x46, 0x56, 0xe6, 0x46, 0x37, 0x25, 0x08,
0xaa, 0x90, 0xe1, 0xb9, 0xd8, 0x95, 0xc9, 0xcd, 0xa5, 0xbd, 0xb9, 0x4d,
0x09, 0x88, 0x26, 0x64, 0x78, 0x2e, 0x76, 0x61, 0x6c, 0x76, 0x65, 0x72,
0x53, 0x02, 0xa3, 0x0e, 0x19, 0x9e, 0xcb, 0x1c, 0x5a, 0x18, 0x59, 0x99,
0x5c, 0xd3, 0x1b, 0x59, 0x19, 0xdb, 0x94, 0x20, 0x29, 0x43, 0x86, 0xe7,
0x22, 0x57, 0x36, 0xf7, 0x56, 0x27, 0x37, 0x56, 0x36, 0x37, 0x25, 0x80,
0xea, 0x90, 0xe1, 0xb9, 0xd8, 0xa5, 0x95, 0xdd, 0x25, 0x91, 0x4d, 0xd1,
0x85, 0xd1, 0x95, 0x4d, 0x09, 0xa4, 0x3a, 0x64, 0x78, 0x2e, 0x65, 0x6e,
0x74, 0x72, 0x79, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x53, 0x02, 0x32,
0x00, 0x00, 0x00, 0x00, 0x79, 0x18, 0x00, 0x00, 0x4c, 0x00, 0x00, 0x00,
0x33, 0x08, 0x80, 0x1c, 0xc4, 0xe1, 0x1c, 0x66, 0x14, 0x01, 0x3d, 0x88,
0x43, 0x38, 0x84, 0xc3, 0x8c, 0x42, 0x80, 0x07, 0x79, 0x78, 0x07, 0x73,
@@ -123,116 +256,28 @@ static const unsigned char color_frag_dxil[] = {
0x21, 0x07, 0x7c, 0x70, 0x03, 0x72, 0x10, 0x87, 0x73, 0x70, 0x03, 0x7b,
0x08, 0x07, 0x79, 0x60, 0x87, 0x70, 0xc8, 0x87, 0x77, 0xa8, 0x07, 0x7a,
0x98, 0x81, 0x3c, 0xe4, 0x80, 0x0f, 0x6e, 0x40, 0x0f, 0xe5, 0xd0, 0x0e,
0xf0, 0x00, 0x00, 0x00, 0x71, 0x20, 0x00, 0x00, 0x0b, 0x00, 0x00, 0x00,
0x16, 0x30, 0x0d, 0x97, 0xef, 0x3c, 0xfe, 0xe2, 0x00, 0x83, 0xd8, 0x3c,
0xd4, 0xe4, 0x17, 0xb7, 0x6d, 0x02, 0xd5, 0x70, 0xf9, 0xce, 0xe3, 0x4b,
0x93, 0x13, 0x11, 0x28, 0x35, 0x3d, 0xd4, 0xe4, 0x17, 0xb7, 0x6d, 0x00,
0x04, 0x03, 0x20, 0x0d, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x48, 0x41, 0x53, 0x48, 0x14, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x1c, 0x7c, 0xd7, 0x34, 0x1f, 0x6e, 0x13, 0xad, 0x41, 0x1b, 0x61, 0x87,
0x0c, 0x13, 0x10, 0xdc, 0x44, 0x58, 0x49, 0x4c, 0xd4, 0x04, 0x00, 0x00,
0x60, 0x00, 0x00, 0x00, 0x35, 0x01, 0x00, 0x00, 0x44, 0x58, 0x49, 0x4c,
0x00, 0x01, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0xbc, 0x04, 0x00, 0x00,
0x42, 0x43, 0xc0, 0xde, 0x21, 0x0c, 0x00, 0x00, 0x2c, 0x01, 0x00, 0x00,
0x0b, 0x82, 0x20, 0x00, 0x02, 0x00, 0x00, 0x00, 0x13, 0x00, 0x00, 0x00,
0x07, 0x81, 0x23, 0x91, 0x41, 0xc8, 0x04, 0x49, 0x06, 0x10, 0x32, 0x39,
0x92, 0x01, 0x84, 0x0c, 0x25, 0x05, 0x08, 0x19, 0x1e, 0x04, 0x8b, 0x62,
0x80, 0x10, 0x45, 0x02, 0x42, 0x92, 0x0b, 0x42, 0x84, 0x10, 0x32, 0x14,
0x38, 0x08, 0x18, 0x4b, 0x0a, 0x32, 0x42, 0x88, 0x48, 0x90, 0x14, 0x20,
0x43, 0x46, 0x88, 0xa5, 0x00, 0x19, 0x32, 0x42, 0xe4, 0x48, 0x0e, 0x90,
0x11, 0x22, 0xc4, 0x50, 0x41, 0x51, 0x81, 0x8c, 0xe1, 0x83, 0xe5, 0x8a,
0x04, 0x21, 0x46, 0x06, 0x51, 0x18, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00,
0x1b, 0x8c, 0xe0, 0xff, 0xff, 0xff, 0xff, 0x07, 0x40, 0x02, 0xa8, 0x0d,
0x84, 0xf0, 0xff, 0xff, 0xff, 0xff, 0x03, 0x20, 0x01, 0x00, 0x00, 0x00,
0x49, 0x18, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x13, 0x82, 0x60, 0x42,
0x20, 0x00, 0x00, 0x00, 0x89, 0x20, 0x00, 0x00, 0x0f, 0x00, 0x00, 0x00,
0x32, 0x22, 0x08, 0x09, 0x20, 0x64, 0x85, 0x04, 0x13, 0x22, 0xa4, 0x84,
0x04, 0x13, 0x22, 0xe3, 0x84, 0xa1, 0x90, 0x14, 0x12, 0x4c, 0x88, 0x8c,
0x0b, 0x84, 0x84, 0x4c, 0x10, 0x30, 0x23, 0x00, 0x25, 0x00, 0x8a, 0x19,
0x80, 0x39, 0x02, 0x30, 0x98, 0x23, 0x40, 0x8a, 0x31, 0x44, 0x54, 0x44,
0x56, 0x0c, 0x20, 0xa2, 0x1a, 0xc2, 0x81, 0x80, 0x34, 0x20, 0x00, 0x00,
0x13, 0x14, 0x72, 0xc0, 0x87, 0x74, 0x60, 0x87, 0x36, 0x68, 0x87, 0x79,
0x68, 0x03, 0x72, 0xc0, 0x87, 0x0d, 0xaf, 0x50, 0x0e, 0x6d, 0xd0, 0x0e,
0x7a, 0x50, 0x0e, 0x6d, 0x00, 0x0f, 0x7a, 0x30, 0x07, 0x72, 0xa0, 0x07,
0x73, 0x20, 0x07, 0x6d, 0x90, 0x0e, 0x71, 0xa0, 0x07, 0x73, 0x20, 0x07,
0x6d, 0x90, 0x0e, 0x78, 0xa0, 0x07, 0x73, 0x20, 0x07, 0x6d, 0x90, 0x0e,
0x71, 0x60, 0x07, 0x7a, 0x30, 0x07, 0x72, 0xd0, 0x06, 0xe9, 0x30, 0x07,
0x72, 0xa0, 0x07, 0x73, 0x20, 0x07, 0x6d, 0x90, 0x0e, 0x76, 0x40, 0x07,
0x7a, 0x60, 0x07, 0x74, 0xd0, 0x06, 0xe6, 0x10, 0x07, 0x76, 0xa0, 0x07,
0x73, 0x20, 0x07, 0x6d, 0x60, 0x0e, 0x73, 0x20, 0x07, 0x7a, 0x30, 0x07,
0x72, 0xd0, 0x06, 0xe6, 0x60, 0x07, 0x74, 0xa0, 0x07, 0x76, 0x40, 0x07,
0x6d, 0xe0, 0x0e, 0x78, 0xa0, 0x07, 0x71, 0x60, 0x07, 0x7a, 0x30, 0x07,
0x72, 0xa0, 0x07, 0x76, 0x40, 0x07, 0x43, 0x9e, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x86, 0x3c, 0x06, 0x10, 0x00,
0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0c, 0x79, 0x10, 0x20,
0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc8, 0x02, 0x01,
0x0b, 0x00, 0x00, 0x00, 0x32, 0x1e, 0x98, 0x10, 0x19, 0x11, 0x4c, 0x90,
0x8c, 0x09, 0x26, 0x47, 0xc6, 0x04, 0x43, 0xa2, 0x12, 0x18, 0x01, 0x28,
0x89, 0x62, 0x28, 0x83, 0xf2, 0xa0, 0x2a, 0x89, 0x11, 0x80, 0x22, 0x28,
0x84, 0x02, 0xa1, 0x1d, 0xcb, 0x20, 0x88, 0x40, 0x20, 0x10, 0x00, 0x00,
0x79, 0x18, 0x00, 0x00, 0x42, 0x00, 0x00, 0x00, 0x1a, 0x03, 0x4c, 0x90,
0x46, 0x02, 0x13, 0x44, 0x8f, 0x0c, 0x6f, 0xec, 0xed, 0x4d, 0x0c, 0x24,
0xc6, 0x05, 0xc7, 0x45, 0xa6, 0x06, 0xa6, 0xc6, 0x45, 0x06, 0x07, 0x04,
0x25, 0xa7, 0xcc, 0x4c, 0x4c, 0xcc, 0x66, 0x6c, 0x46, 0x26, 0x65, 0x43,
0x10, 0x4c, 0x10, 0x88, 0x61, 0x82, 0x40, 0x10, 0x1b, 0x84, 0x81, 0x98,
0x20, 0x10, 0xc5, 0x06, 0x61, 0x30, 0x28, 0xc0, 0xcd, 0x4d, 0x10, 0x08,
0x63, 0xc3, 0x80, 0x24, 0xc4, 0x04, 0x61, 0x71, 0x36, 0x04, 0xcb, 0x04,
0x41, 0x00, 0x48, 0xb4, 0x85, 0xa5, 0xb9, 0x11, 0xa1, 0x2a, 0xc2, 0x1a,
0x7a, 0x7a, 0x92, 0x22, 0x9a, 0x20, 0x14, 0xc9, 0x04, 0xa1, 0x50, 0x36,
0x04, 0xc4, 0x04, 0xa1, 0x58, 0x26, 0x08, 0x05, 0x33, 0x41, 0x20, 0x8e,
0x09, 0x02, 0x81, 0x6c, 0x10, 0x2a, 0x6b, 0xc3, 0x42, 0x3c, 0x50, 0x24,
0x4d, 0x03, 0x45, 0x44, 0xd7, 0x86, 0x00, 0x63, 0x32, 0x65, 0xf5, 0x45,
0x15, 0x26, 0x77, 0x56, 0x46, 0x37, 0x41, 0x28, 0x9a, 0x0d, 0x0b, 0xa1,
0x41, 0x9b, 0x14, 0x0d, 0x14, 0x11, 0x5d, 0x1b, 0x02, 0x6e, 0xc3, 0x90,
0x75, 0xc0, 0x86, 0xa2, 0x71, 0x3c, 0x00, 0xa8, 0xc2, 0xc6, 0x66, 0xd7,
0xe6, 0x92, 0x46, 0x56, 0xe6, 0x46, 0x37, 0x25, 0x08, 0xaa, 0x90, 0xe1,
0xb9, 0xd8, 0x95, 0xc9, 0xcd, 0xa5, 0xbd, 0xb9, 0x4d, 0x09, 0x88, 0x26,
0x64, 0x78, 0x2e, 0x76, 0x61, 0x6c, 0x76, 0x65, 0x72, 0x53, 0x02, 0xa3,
0x0e, 0x19, 0x9e, 0xcb, 0x1c, 0x5a, 0x18, 0x59, 0x99, 0x5c, 0xd3, 0x1b,
0x59, 0x19, 0xdb, 0x94, 0x20, 0xa9, 0x43, 0x86, 0xe7, 0x62, 0x97, 0x56,
0x76, 0x97, 0x44, 0x36, 0x45, 0x17, 0x46, 0x57, 0x36, 0x25, 0x58, 0xea,
0x90, 0xe1, 0xb9, 0x94, 0xb9, 0xd1, 0xc9, 0xe5, 0x41, 0xbd, 0xa5, 0xb9,
0xd1, 0xcd, 0x4d, 0x09, 0x3c, 0x00, 0x00, 0x00, 0x79, 0x18, 0x00, 0x00,
0x4c, 0x00, 0x00, 0x00, 0x33, 0x08, 0x80, 0x1c, 0xc4, 0xe1, 0x1c, 0x66,
0x14, 0x01, 0x3d, 0x88, 0x43, 0x38, 0x84, 0xc3, 0x8c, 0x42, 0x80, 0x07,
0x79, 0x78, 0x07, 0x73, 0x98, 0x71, 0x0c, 0xe6, 0x00, 0x0f, 0xed, 0x10,
0x0e, 0xf4, 0x80, 0x0e, 0x33, 0x0c, 0x42, 0x1e, 0xc2, 0xc1, 0x1d, 0xce,
0xa1, 0x1c, 0x66, 0x30, 0x05, 0x3d, 0x88, 0x43, 0x38, 0x84, 0x83, 0x1b,
0xcc, 0x03, 0x3d, 0xc8, 0x43, 0x3d, 0x8c, 0x03, 0x3d, 0xcc, 0x78, 0x8c,
0x74, 0x70, 0x07, 0x7b, 0x08, 0x07, 0x79, 0x48, 0x87, 0x70, 0x70, 0x07,
0x7a, 0x70, 0x03, 0x76, 0x78, 0x87, 0x70, 0x20, 0x87, 0x19, 0xcc, 0x11,
0x0e, 0xec, 0x90, 0x0e, 0xe1, 0x30, 0x0f, 0x6e, 0x30, 0x0f, 0xe3, 0xf0,
0x0e, 0xf0, 0x50, 0x0e, 0x33, 0x10, 0xc4, 0x1d, 0xde, 0x21, 0x1c, 0xd8,
0x21, 0x1d, 0xc2, 0x61, 0x1e, 0x66, 0x30, 0x89, 0x3b, 0xbc, 0x83, 0x3b,
0xd0, 0x43, 0x39, 0xb4, 0x03, 0x3c, 0xbc, 0x83, 0x3c, 0x84, 0x03, 0x3b,
0xcc, 0xf0, 0x14, 0x76, 0x60, 0x07, 0x7b, 0x68, 0x07, 0x37, 0x68, 0x87,
0x72, 0x68, 0x07, 0x37, 0x80, 0x87, 0x70, 0x90, 0x87, 0x70, 0x60, 0x07,
0x76, 0x28, 0x07, 0x76, 0xf8, 0x05, 0x76, 0x78, 0x87, 0x77, 0x80, 0x87,
0x5f, 0x08, 0x87, 0x71, 0x18, 0x87, 0x72, 0x98, 0x87, 0x79, 0x98, 0x81,
0x2c, 0xee, 0xf0, 0x0e, 0xee, 0xe0, 0x0e, 0xf5, 0xc0, 0x0e, 0xec, 0x30,
0x03, 0x62, 0xc8, 0xa1, 0x1c, 0xe4, 0xa1, 0x1c, 0xcc, 0xa1, 0x1c, 0xe4,
0xa1, 0x1c, 0xdc, 0x61, 0x1c, 0xca, 0x21, 0x1c, 0xc4, 0x81, 0x1d, 0xca,
0x61, 0x06, 0xd6, 0x90, 0x43, 0x39, 0xc8, 0x43, 0x39, 0x98, 0x43, 0x39,
0xc8, 0x43, 0x39, 0xb8, 0xc3, 0x38, 0x94, 0x43, 0x38, 0x88, 0x03, 0x3b,
0x94, 0xc3, 0x2f, 0xbc, 0x83, 0x3c, 0xfc, 0x82, 0x3b, 0xd4, 0x03, 0x3b,
0xb0, 0xc3, 0x8c, 0xc8, 0x21, 0x07, 0x7c, 0x70, 0x03, 0x72, 0x10, 0x87,
0x73, 0x70, 0x03, 0x7b, 0x08, 0x07, 0x79, 0x60, 0x87, 0x70, 0xc8, 0x87,
0x77, 0xa8, 0x07, 0x7a, 0x98, 0x81, 0x3c, 0xe4, 0x80, 0x0f, 0x6e, 0x40,
0x0f, 0xe5, 0xd0, 0x0e, 0xf0, 0x00, 0x00, 0x00, 0x71, 0x20, 0x00, 0x00,
0x0b, 0x00, 0x00, 0x00, 0x16, 0x30, 0x0d, 0x97, 0xef, 0x3c, 0xfe, 0xe2,
0x00, 0x83, 0xd8, 0x3c, 0xd4, 0xe4, 0x17, 0xb7, 0x6d, 0x02, 0xd5, 0x70,
0xf9, 0xce, 0xe3, 0x4b, 0x93, 0x13, 0x11, 0x28, 0x35, 0x3d, 0xd4, 0xe4,
0x17, 0xb7, 0x6d, 0x00, 0x04, 0x03, 0x20, 0x0d, 0x00, 0x00, 0x00, 0x00,
0x61, 0x20, 0x00, 0x00, 0x1e, 0x00, 0x00, 0x00, 0x13, 0x04, 0x41, 0x2c,
0x10, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x44, 0x85, 0x30, 0x03,
0x50, 0x0a, 0x54, 0x25, 0x50, 0x06, 0x00, 0x00, 0x23, 0x06, 0x09, 0x00,
0x82, 0x60, 0x60, 0x4c, 0x05, 0x04, 0x29, 0xc4, 0x88, 0x41, 0x02, 0x80,
0x20, 0x18, 0x18, 0x94, 0x11, 0x45, 0x43, 0x31, 0x62, 0x90, 0x00, 0x20,
0x08, 0x06, 0x46, 0x75, 0x48, 0xd2, 0x62, 0x8c, 0x18, 0x24, 0x00, 0x08,
0x82, 0x81, 0x61, 0x21, 0xd3, 0x44, 0x1c, 0x23, 0x06, 0x09, 0x00, 0x82,
0x60, 0x80, 0x58, 0x07, 0x45, 0x39, 0xc4, 0x88, 0x41, 0x02, 0x80, 0x20,
0x18, 0x20, 0xd6, 0x41, 0x51, 0xc6, 0x30, 0x62, 0x90, 0x00, 0x20, 0x08,
0x06, 0x88, 0x75, 0x50, 0x54, 0x23, 0x8c, 0x18, 0x24, 0x00, 0x08, 0x82,
0x01, 0x62, 0x1d, 0x14, 0x55, 0x04, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00
0xf0, 0x00, 0x00, 0x00, 0x71, 0x20, 0x00, 0x00, 0x14, 0x00, 0x00, 0x00,
0x36, 0xb0, 0x0d, 0x97, 0xef, 0x3c, 0xbe, 0x10, 0x50, 0x45, 0x41, 0x44,
0xa5, 0x03, 0x0c, 0x25, 0x61, 0x00, 0x02, 0xe6, 0x17, 0xb7, 0x6d, 0x04,
0xd2, 0x70, 0xf9, 0xce, 0xe3, 0x0b, 0x11, 0x01, 0x4c, 0x44, 0x08, 0x34,
0xc3, 0x42, 0x58, 0xc0, 0x34, 0x5c, 0xbe, 0xf3, 0xf8, 0x8b, 0x03, 0x0c,
0x62, 0xf3, 0x50, 0x93, 0x5f, 0xdc, 0xb6, 0x09, 0x54, 0xc3, 0xe5, 0x3b,
0x8f, 0x2f, 0x4d, 0x4e, 0x44, 0xa0, 0xd4, 0xf4, 0x50, 0x93, 0x5f, 0xdc,
0xb6, 0x01, 0x10, 0x0c, 0x80, 0x34, 0x00, 0x00, 0x61, 0x20, 0x00, 0x00,
0x29, 0x00, 0x00, 0x00, 0x13, 0x04, 0x41, 0x2c, 0x10, 0x00, 0x00, 0x00,
0x04, 0x00, 0x00, 0x00, 0x44, 0x66, 0x00, 0x4a, 0xa1, 0xe4, 0xca, 0x8e,
0x4a, 0x09, 0x94, 0x01, 0xbd, 0x11, 0x00, 0x00, 0x23, 0x06, 0x09, 0x00,
0x82, 0x60, 0x00, 0x59, 0x05, 0x43, 0x51, 0xc1, 0x88, 0x41, 0x02, 0x80,
0x20, 0x18, 0x18, 0x5a, 0x54, 0x55, 0x0e, 0x32, 0x62, 0x90, 0x00, 0x20,
0x08, 0x06, 0xc6, 0x26, 0x59, 0x56, 0x91, 0x8c, 0x18, 0x24, 0x00, 0x08,
0x82, 0x81, 0xc1, 0x4d, 0xd7, 0xf5, 0x28, 0x23, 0x06, 0x09, 0x00, 0x82,
0x60, 0x60, 0x74, 0x14, 0x86, 0x19, 0xcb, 0x88, 0xc1, 0x01, 0x80, 0x20,
0x18, 0x34, 0x5c, 0x52, 0x64, 0xa3, 0x09, 0x01, 0x60, 0x81, 0x21, 0x1f,
0x13, 0x0c, 0xf9, 0xd8, 0x60, 0xc8, 0x67, 0xc4, 0x20, 0x01, 0x40, 0x10,
0x0c, 0x10, 0x31, 0x80, 0x3c, 0xef, 0x1a, 0x46, 0x0c, 0x12, 0x00, 0x04,
0xc1, 0x00, 0x11, 0x03, 0xc8, 0xf3, 0x1a, 0x61, 0xc4, 0x20, 0x01, 0x40,
0x10, 0x0c, 0x10, 0x31, 0x80, 0x3c, 0xcf, 0x0a, 0x46, 0x0c, 0x12, 0x00,
0x04, 0xc1, 0x00, 0x11, 0x03, 0xc8, 0xf3, 0x18, 0x03, 0x01, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00
};
static const unsigned int color_frag_dxil_len = 2820;
static const unsigned int color_frag_dxil_len = 3352;

View File

@@ -1,3 +1,9 @@
cbuffer Constants : register(b0, space3)
{
float color_scale;
};
struct PSInput {
float4 v_color : COLOR0;
};
@@ -6,8 +12,10 @@ struct PSOutput {
float4 o_color : SV_Target;
};
#include "common.frag.hlsli"
PSOutput main(PSInput input) {
PSOutput output;
output.o_color = input.v_color;
output.o_color = GetOutputColor(1.0) * input.v_color;
return output;
}

View File

@@ -5,28 +5,50 @@ static const unsigned char color_frag_msl[] = {
0x6d, 0x64, 0x2f, 0x73, 0x69, 0x6d, 0x64, 0x2e, 0x68, 0x3e, 0x0a, 0x0a,
0x75, 0x73, 0x69, 0x6e, 0x67, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70,
0x61, 0x63, 0x65, 0x20, 0x6d, 0x65, 0x74, 0x61, 0x6c, 0x3b, 0x0a, 0x0a,
0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x20, 0x74, 0x79, 0x70, 0x65, 0x5f,
0x43, 0x6f, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x73, 0x0a, 0x7b, 0x0a,
0x20, 0x20, 0x20, 0x20, 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x20, 0x63, 0x6f,
0x6c, 0x6f, 0x72, 0x5f, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x3b, 0x0a, 0x7d,
0x3b, 0x0a, 0x0a, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x20,
0x66, 0x6c, 0x6f, 0x61, 0x74, 0x34, 0x20, 0x5f, 0x31, 0x39, 0x20, 0x3d,
0x20, 0x7b, 0x7d, 0x3b, 0x0a, 0x0a, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74,
0x20, 0x6d, 0x61, 0x69, 0x6e, 0x30, 0x5f, 0x6f, 0x75, 0x74, 0x0a, 0x7b,
0x0a, 0x20, 0x20, 0x20, 0x20, 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x34, 0x20,
0x6f, 0x75, 0x74, 0x5f, 0x76, 0x61, 0x72, 0x5f, 0x53, 0x56, 0x5f, 0x54,
0x61, 0x72, 0x67, 0x65, 0x74, 0x20, 0x5b, 0x5b, 0x63, 0x6f, 0x6c, 0x6f,
0x72, 0x28, 0x30, 0x29, 0x5d, 0x5d, 0x3b, 0x0a, 0x7d, 0x3b, 0x0a, 0x0a,
0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x20, 0x6d, 0x61, 0x69, 0x6e, 0x30,
0x5f, 0x6f, 0x75, 0x74, 0x0a, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x66,
0x6c, 0x6f, 0x61, 0x74, 0x34, 0x20, 0x6f, 0x75, 0x74, 0x5f, 0x76, 0x61,
0x72, 0x5f, 0x53, 0x56, 0x5f, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x20,
0x5b, 0x5b, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x28, 0x30, 0x29, 0x5d, 0x5d,
0x3b, 0x0a, 0x7d, 0x3b, 0x0a, 0x0a, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74,
0x20, 0x6d, 0x61, 0x69, 0x6e, 0x30, 0x5f, 0x69, 0x6e, 0x0a, 0x7b, 0x0a,
0x20, 0x20, 0x20, 0x20, 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x34, 0x20, 0x69,
0x6e, 0x5f, 0x76, 0x61, 0x72, 0x5f, 0x43, 0x4f, 0x4c, 0x4f, 0x52, 0x30,
0x20, 0x5b, 0x5b, 0x75, 0x73, 0x65, 0x72, 0x28, 0x6c, 0x6f, 0x63, 0x6e,
0x30, 0x29, 0x5d, 0x5d, 0x3b, 0x0a, 0x7d, 0x3b, 0x0a, 0x0a, 0x66, 0x72,
0x61, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6d, 0x61, 0x69, 0x6e, 0x30,
0x5f, 0x6f, 0x75, 0x74, 0x20, 0x6d, 0x61, 0x69, 0x6e, 0x30, 0x28, 0x6d,
0x61, 0x69, 0x6e, 0x30, 0x5f, 0x69, 0x6e, 0x20, 0x69, 0x6e, 0x20, 0x5b,
0x5b, 0x73, 0x74, 0x61, 0x67, 0x65, 0x5f, 0x69, 0x6e, 0x5d, 0x5d, 0x29,
0x0a, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x6d, 0x61, 0x69, 0x6e, 0x30,
0x5f, 0x6f, 0x75, 0x74, 0x20, 0x6f, 0x75, 0x74, 0x20, 0x3d, 0x20, 0x7b,
0x7d, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x6f, 0x75, 0x74, 0x2e, 0x6f,
0x5f, 0x69, 0x6e, 0x0a, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x66, 0x6c,
0x6f, 0x61, 0x74, 0x34, 0x20, 0x69, 0x6e, 0x5f, 0x76, 0x61, 0x72, 0x5f,
0x43, 0x4f, 0x4c, 0x4f, 0x52, 0x30, 0x20, 0x5b, 0x5b, 0x75, 0x73, 0x65,
0x72, 0x28, 0x6c, 0x6f, 0x63, 0x6e, 0x30, 0x29, 0x5d, 0x5d, 0x3b, 0x0a,
0x7d, 0x3b, 0x0a, 0x0a, 0x66, 0x72, 0x61, 0x67, 0x6d, 0x65, 0x6e, 0x74,
0x20, 0x6d, 0x61, 0x69, 0x6e, 0x30, 0x5f, 0x6f, 0x75, 0x74, 0x20, 0x6d,
0x61, 0x69, 0x6e, 0x30, 0x28, 0x6d, 0x61, 0x69, 0x6e, 0x30, 0x5f, 0x69,
0x6e, 0x20, 0x69, 0x6e, 0x20, 0x5b, 0x5b, 0x73, 0x74, 0x61, 0x67, 0x65,
0x5f, 0x69, 0x6e, 0x5d, 0x5d, 0x2c, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x74,
0x61, 0x6e, 0x74, 0x20, 0x74, 0x79, 0x70, 0x65, 0x5f, 0x43, 0x6f, 0x6e,
0x73, 0x74, 0x61, 0x6e, 0x74, 0x73, 0x26, 0x20, 0x43, 0x6f, 0x6e, 0x73,
0x74, 0x61, 0x6e, 0x74, 0x73, 0x20, 0x5b, 0x5b, 0x62, 0x75, 0x66, 0x66,
0x65, 0x72, 0x28, 0x30, 0x29, 0x5d, 0x5d, 0x29, 0x0a, 0x7b, 0x0a, 0x20,
0x20, 0x20, 0x20, 0x6d, 0x61, 0x69, 0x6e, 0x30, 0x5f, 0x6f, 0x75, 0x74,
0x20, 0x6f, 0x75, 0x74, 0x20, 0x3d, 0x20, 0x7b, 0x7d, 0x3b, 0x0a, 0x20,
0x20, 0x20, 0x20, 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x33, 0x20, 0x5f, 0x32,
0x34, 0x20, 0x3d, 0x20, 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x33, 0x28, 0x31,
0x2e, 0x30, 0x29, 0x20, 0x2a, 0x20, 0x43, 0x6f, 0x6e, 0x73, 0x74, 0x61,
0x6e, 0x74, 0x73, 0x2e, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x5f, 0x73, 0x63,
0x61, 0x6c, 0x65, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x66, 0x6c, 0x6f,
0x61, 0x74, 0x34, 0x20, 0x5f, 0x32, 0x35, 0x20, 0x3d, 0x20, 0x66, 0x6c,
0x6f, 0x61, 0x74, 0x34, 0x28, 0x5f, 0x32, 0x34, 0x2e, 0x78, 0x2c, 0x20,
0x5f, 0x32, 0x34, 0x2e, 0x79, 0x2c, 0x20, 0x5f, 0x32, 0x34, 0x2e, 0x7a,
0x2c, 0x20, 0x5f, 0x31, 0x39, 0x2e, 0x77, 0x29, 0x3b, 0x0a, 0x20, 0x20,
0x20, 0x20, 0x5f, 0x32, 0x35, 0x2e, 0x77, 0x20, 0x3d, 0x20, 0x31, 0x2e,
0x30, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x6f, 0x75, 0x74, 0x2e, 0x6f,
0x75, 0x74, 0x5f, 0x76, 0x61, 0x72, 0x5f, 0x53, 0x56, 0x5f, 0x54, 0x61,
0x72, 0x67, 0x65, 0x74, 0x20, 0x3d, 0x20, 0x69, 0x6e, 0x2e, 0x69, 0x6e,
0x5f, 0x76, 0x61, 0x72, 0x5f, 0x43, 0x4f, 0x4c, 0x4f, 0x52, 0x30, 0x3b,
0x0a, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20,
0x6f, 0x75, 0x74, 0x3b, 0x0a, 0x7d, 0x0a, 0x0a
0x72, 0x67, 0x65, 0x74, 0x20, 0x3d, 0x20, 0x5f, 0x32, 0x35, 0x20, 0x2a,
0x20, 0x69, 0x6e, 0x2e, 0x69, 0x6e, 0x5f, 0x76, 0x61, 0x72, 0x5f, 0x43,
0x4f, 0x4c, 0x4f, 0x52, 0x30, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x72,
0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x6f, 0x75, 0x74, 0x3b, 0x0a, 0x7d,
0x0a, 0x0a
};
static const unsigned int color_frag_msl_len = 344;
static const unsigned int color_frag_msl_len = 602;

View File

@@ -1,34 +1,70 @@
static const unsigned char color_frag_spv[] = {
0x03, 0x02, 0x23, 0x07, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x0e, 0x00,
0x0c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x11, 0x00, 0x02, 0x00,
0x1c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x11, 0x00, 0x02, 0x00,
0x01, 0x00, 0x00, 0x00, 0x0e, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
0x01, 0x00, 0x00, 0x00, 0x0f, 0x00, 0x07, 0x00, 0x04, 0x00, 0x00, 0x00,
0x01, 0x00, 0x00, 0x00, 0x6d, 0x61, 0x69, 0x6e, 0x00, 0x00, 0x00, 0x00,
0x02, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x10, 0x00, 0x03, 0x00,
0x01, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03, 0x00,
0x05, 0x00, 0x00, 0x00, 0x58, 0x02, 0x00, 0x00, 0x05, 0x00, 0x06, 0x00,
0x02, 0x00, 0x00, 0x00, 0x69, 0x6e, 0x2e, 0x76, 0x61, 0x72, 0x2e, 0x43,
0x4f, 0x4c, 0x4f, 0x52, 0x30, 0x00, 0x00, 0x00, 0x05, 0x00, 0x07, 0x00,
0x03, 0x00, 0x00, 0x00, 0x6f, 0x75, 0x74, 0x2e, 0x76, 0x61, 0x72, 0x2e,
0x53, 0x56, 0x5f, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x00, 0x00, 0x00,
0x05, 0x00, 0x04, 0x00, 0x01, 0x00, 0x00, 0x00, 0x6d, 0x61, 0x69, 0x6e,
0x00, 0x00, 0x00, 0x00, 0x47, 0x00, 0x04, 0x00, 0x02, 0x00, 0x00, 0x00,
0x04, 0x00, 0x00, 0x00, 0x74, 0x79, 0x70, 0x65, 0x2e, 0x43, 0x6f, 0x6e,
0x73, 0x74, 0x61, 0x6e, 0x74, 0x73, 0x00, 0x00, 0x06, 0x00, 0x06, 0x00,
0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x63, 0x6f, 0x6c, 0x6f,
0x72, 0x5f, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x00, 0x05, 0x00, 0x05, 0x00,
0x05, 0x00, 0x00, 0x00, 0x43, 0x6f, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x74,
0x73, 0x00, 0x00, 0x00, 0x05, 0x00, 0x06, 0x00, 0x02, 0x00, 0x00, 0x00,
0x69, 0x6e, 0x2e, 0x76, 0x61, 0x72, 0x2e, 0x43, 0x4f, 0x4c, 0x4f, 0x52,
0x30, 0x00, 0x00, 0x00, 0x05, 0x00, 0x07, 0x00, 0x03, 0x00, 0x00, 0x00,
0x6f, 0x75, 0x74, 0x2e, 0x76, 0x61, 0x72, 0x2e, 0x53, 0x56, 0x5f, 0x54,
0x61, 0x72, 0x67, 0x65, 0x74, 0x00, 0x00, 0x00, 0x05, 0x00, 0x04, 0x00,
0x01, 0x00, 0x00, 0x00, 0x6d, 0x61, 0x69, 0x6e, 0x00, 0x00, 0x00, 0x00,
0x47, 0x00, 0x04, 0x00, 0x02, 0x00, 0x00, 0x00, 0x1e, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x47, 0x00, 0x04, 0x00, 0x03, 0x00, 0x00, 0x00,
0x1e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x47, 0x00, 0x04, 0x00,
0x03, 0x00, 0x00, 0x00, 0x1e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x16, 0x00, 0x03, 0x00, 0x04, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00,
0x17, 0x00, 0x04, 0x00, 0x05, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00,
0x04, 0x00, 0x00, 0x00, 0x20, 0x00, 0x04, 0x00, 0x06, 0x00, 0x00, 0x00,
0x01, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x20, 0x00, 0x04, 0x00,
0x07, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00,
0x13, 0x00, 0x02, 0x00, 0x08, 0x00, 0x00, 0x00, 0x21, 0x00, 0x03, 0x00,
0x09, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x3b, 0x00, 0x04, 0x00,
0x06, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
0x3b, 0x00, 0x04, 0x00, 0x07, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00,
0x03, 0x00, 0x00, 0x00, 0x36, 0x00, 0x05, 0x00, 0x08, 0x00, 0x00, 0x00,
0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x09, 0x00, 0x00, 0x00,
0xf8, 0x00, 0x02, 0x00, 0x0a, 0x00, 0x00, 0x00, 0x3d, 0x00, 0x04, 0x00,
0x05, 0x00, 0x00, 0x00, 0x0b, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00,
0x3e, 0x00, 0x03, 0x00, 0x03, 0x00, 0x00, 0x00, 0x0b, 0x00, 0x00, 0x00,
0xfd, 0x00, 0x01, 0x00, 0x38, 0x00, 0x01, 0x00
0x05, 0x00, 0x00, 0x00, 0x22, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00,
0x47, 0x00, 0x04, 0x00, 0x05, 0x00, 0x00, 0x00, 0x21, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x48, 0x00, 0x05, 0x00, 0x04, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x23, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x47, 0x00, 0x03, 0x00, 0x04, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00,
0x16, 0x00, 0x03, 0x00, 0x06, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00,
0x2b, 0x00, 0x04, 0x00, 0x06, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00,
0x00, 0x00, 0x80, 0x3f, 0x17, 0x00, 0x04, 0x00, 0x08, 0x00, 0x00, 0x00,
0x06, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x15, 0x00, 0x04, 0x00,
0x09, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
0x2b, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x0a, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x1e, 0x00, 0x03, 0x00, 0x04, 0x00, 0x00, 0x00,
0x06, 0x00, 0x00, 0x00, 0x20, 0x00, 0x04, 0x00, 0x0b, 0x00, 0x00, 0x00,
0x02, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x20, 0x00, 0x04, 0x00,
0x0c, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00,
0x20, 0x00, 0x04, 0x00, 0x0d, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00,
0x08, 0x00, 0x00, 0x00, 0x13, 0x00, 0x02, 0x00, 0x0e, 0x00, 0x00, 0x00,
0x21, 0x00, 0x03, 0x00, 0x0f, 0x00, 0x00, 0x00, 0x0e, 0x00, 0x00, 0x00,
0x17, 0x00, 0x04, 0x00, 0x10, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00,
0x03, 0x00, 0x00, 0x00, 0x20, 0x00, 0x04, 0x00, 0x11, 0x00, 0x00, 0x00,
0x02, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x3b, 0x00, 0x04, 0x00,
0x0b, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00,
0x3b, 0x00, 0x04, 0x00, 0x0c, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00,
0x01, 0x00, 0x00, 0x00, 0x3b, 0x00, 0x04, 0x00, 0x0d, 0x00, 0x00, 0x00,
0x03, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x2c, 0x00, 0x06, 0x00,
0x10, 0x00, 0x00, 0x00, 0x12, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00,
0x07, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00, 0x01, 0x00, 0x03, 0x00,
0x08, 0x00, 0x00, 0x00, 0x13, 0x00, 0x00, 0x00, 0x36, 0x00, 0x05, 0x00,
0x0e, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x0f, 0x00, 0x00, 0x00, 0xf8, 0x00, 0x02, 0x00, 0x14, 0x00, 0x00, 0x00,
0x3d, 0x00, 0x04, 0x00, 0x08, 0x00, 0x00, 0x00, 0x15, 0x00, 0x00, 0x00,
0x02, 0x00, 0x00, 0x00, 0x41, 0x00, 0x05, 0x00, 0x11, 0x00, 0x00, 0x00,
0x16, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x0a, 0x00, 0x00, 0x00,
0x3d, 0x00, 0x04, 0x00, 0x06, 0x00, 0x00, 0x00, 0x17, 0x00, 0x00, 0x00,
0x16, 0x00, 0x00, 0x00, 0x8e, 0x00, 0x05, 0x00, 0x10, 0x00, 0x00, 0x00,
0x18, 0x00, 0x00, 0x00, 0x12, 0x00, 0x00, 0x00, 0x17, 0x00, 0x00, 0x00,
0x4f, 0x00, 0x09, 0x00, 0x08, 0x00, 0x00, 0x00, 0x19, 0x00, 0x00, 0x00,
0x13, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00,
0x05, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00,
0x52, 0x00, 0x06, 0x00, 0x08, 0x00, 0x00, 0x00, 0x1a, 0x00, 0x00, 0x00,
0x07, 0x00, 0x00, 0x00, 0x19, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00,
0x85, 0x00, 0x05, 0x00, 0x08, 0x00, 0x00, 0x00, 0x1b, 0x00, 0x00, 0x00,
0x1a, 0x00, 0x00, 0x00, 0x15, 0x00, 0x00, 0x00, 0x3e, 0x00, 0x03, 0x00,
0x03, 0x00, 0x00, 0x00, 0x1b, 0x00, 0x00, 0x00, 0xfd, 0x00, 0x01, 0x00,
0x38, 0x00, 0x01, 0x00
};
static const unsigned int color_frag_spv_len = 368;
static const unsigned int color_frag_spv_len = 796;

View File

@@ -0,0 +1,10 @@
float4 GetOutputColor(float4 rgba)
{
float4 output;
output.rgb = rgba.rgb * color_scale;
output.a = rgba.a;
return output;
}

View File

@@ -1,10 +1,7 @@
#include "color.frag.dxil.h"
#include "linepoint.vert.dxil.h"
#include "texture_palette.frag.dxil.h"
#include "texture_palette_pixelart.frag.dxil.h"
#include "texture_advanced.frag.dxil.h"
#include "texture_rgb.frag.dxil.h"
#include "texture_rgb_pixelart.frag.dxil.h"
#include "texture_rgba.frag.dxil.h"
#include "texture_rgba_pixelart.frag.dxil.h"
#include "tri_color.vert.dxil.h"
#include "tri_texture.vert.dxil.h"

View File

@@ -1,10 +1,7 @@
#include "color.frag.msl.h"
#include "linepoint.vert.msl.h"
#include "texture_palette.frag.msl.h"
#include "texture_palette_pixelart.frag.msl.h"
#include "texture_advanced.frag.msl.h"
#include "texture_rgb.frag.msl.h"
#include "texture_rgb_pixelart.frag.msl.h"
#include "texture_rgba.frag.msl.h"
#include "texture_rgba_pixelart.frag.msl.h"
#include "tri_color.vert.msl.h"
#include "tri_texture.vert.msl.h"

View File

@@ -1,10 +1,7 @@
#include "color.frag.spv.h"
#include "linepoint.vert.spv.h"
#include "texture_palette.frag.spv.h"
#include "texture_palette_pixelart.frag.spv.h"
#include "texture_advanced.frag.spv.h"
#include "texture_rgb.frag.spv.h"
#include "texture_rgb_pixelart.frag.spv.h"
#include "texture_rgba.frag.spv.h"
#include "texture_rgba_pixelart.frag.spv.h"
#include "tri_color.vert.spv.h"
#include "tri_texture.vert.spv.h"

View File

@@ -0,0 +1,833 @@
static const unsigned char texture_advanced_frag_dxil[] = {
0x44, 0x58, 0x42, 0x43, 0xda, 0x67, 0x33, 0xb5, 0x45, 0xee, 0x36, 0x5b,
0xae, 0xa0, 0xf7, 0x36, 0x8d, 0x0f, 0x82, 0x95, 0x01, 0x00, 0x00, 0x00,
0xe4, 0x26, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x00, 0x00,
0x4c, 0x00, 0x00, 0x00, 0xa8, 0x00, 0x00, 0x00, 0xe4, 0x00, 0x00, 0x00,
0x38, 0x02, 0x00, 0x00, 0x74, 0x0c, 0x00, 0x00, 0x90, 0x0c, 0x00, 0x00,
0x53, 0x46, 0x49, 0x30, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x49, 0x53, 0x47, 0x31, 0x54, 0x00, 0x00, 0x00,
0x02, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x48, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0f, 0x0f, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x48, 0x00, 0x00, 0x00,
0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00,
0x01, 0x00, 0x00, 0x00, 0x03, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x54, 0x45, 0x58, 0x43, 0x4f, 0x4f, 0x52, 0x44, 0x00, 0x00, 0x00, 0x00,
0x4f, 0x53, 0x47, 0x31, 0x34, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x28, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x53, 0x56, 0x5f, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x00, 0x00, 0x00,
0x50, 0x53, 0x56, 0x30, 0x4c, 0x01, 0x00, 0x00, 0x34, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff,
0x00, 0x00, 0x00, 0x00, 0x02, 0x01, 0x00, 0x02, 0x01, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x13, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x00,
0x02, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x0d, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x01, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x0e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x01, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
0x01, 0x00, 0x00, 0x00, 0x0e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x03, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x03, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
0x01, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x03, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00,
0x02, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x18, 0x00, 0x00, 0x00, 0x00, 0x54, 0x45, 0x58, 0x43, 0x4f, 0x4f, 0x52,
0x44, 0x00, 0x54, 0x45, 0x58, 0x43, 0x4f, 0x4f, 0x52, 0x44, 0x00, 0x6d,
0x61, 0x69, 0x6e, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x01, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x44, 0x00, 0x03, 0x02, 0x00, 0x00,
0x0a, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x01, 0x01, 0x42, 0x00,
0x03, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x01, 0x00, 0x44, 0x10, 0x03, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
0x02, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00,
0x0f, 0x00, 0x00, 0x00, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x53, 0x54, 0x41, 0x54, 0x34, 0x0a, 0x00, 0x00,
0x60, 0x00, 0x00, 0x00, 0x8d, 0x02, 0x00, 0x00, 0x44, 0x58, 0x49, 0x4c,
0x00, 0x01, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x1c, 0x0a, 0x00, 0x00,
0x42, 0x43, 0xc0, 0xde, 0x21, 0x0c, 0x00, 0x00, 0x84, 0x02, 0x00, 0x00,
0x0b, 0x82, 0x20, 0x00, 0x02, 0x00, 0x00, 0x00, 0x13, 0x00, 0x00, 0x00,
0x07, 0x81, 0x23, 0x91, 0x41, 0xc8, 0x04, 0x49, 0x06, 0x10, 0x32, 0x39,
0x92, 0x01, 0x84, 0x0c, 0x25, 0x05, 0x08, 0x19, 0x1e, 0x04, 0x8b, 0x62,
0x80, 0x18, 0x45, 0x02, 0x42, 0x92, 0x0b, 0x42, 0xc4, 0x10, 0x32, 0x14,
0x38, 0x08, 0x18, 0x4b, 0x0a, 0x32, 0x62, 0x88, 0x48, 0x90, 0x14, 0x20,
0x43, 0x46, 0x88, 0xa5, 0x00, 0x19, 0x32, 0x42, 0xe4, 0x48, 0x0e, 0x90,
0x11, 0x23, 0xc4, 0x50, 0x41, 0x51, 0x81, 0x8c, 0xe1, 0x83, 0xe5, 0x8a,
0x04, 0x31, 0x46, 0x06, 0x51, 0x18, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00,
0x1b, 0x8c, 0xe0, 0xff, 0xff, 0xff, 0xff, 0x07, 0x40, 0x02, 0xa8, 0x0d,
0x84, 0xf0, 0xff, 0xff, 0xff, 0xff, 0x03, 0x20, 0x6d, 0x30, 0x86, 0xff,
0xff, 0xff, 0xff, 0x1f, 0x00, 0x09, 0xa8, 0x00, 0x49, 0x18, 0x00, 0x00,
0x03, 0x00, 0x00, 0x00, 0x13, 0x82, 0x60, 0x42, 0x20, 0x4c, 0x08, 0x06,
0x00, 0x00, 0x00, 0x00, 0x89, 0x20, 0x00, 0x00, 0x5c, 0x00, 0x00, 0x00,
0x32, 0x22, 0x88, 0x09, 0x20, 0x64, 0x85, 0x04, 0x13, 0x23, 0xa4, 0x84,
0x04, 0x13, 0x23, 0xe3, 0x84, 0xa1, 0x90, 0x14, 0x12, 0x4c, 0x8c, 0x8c,
0x0b, 0x84, 0xc4, 0x4c, 0x10, 0xa4, 0xc1, 0x08, 0x40, 0x09, 0x00, 0x0a,
0x66, 0x00, 0xe6, 0x08, 0xc0, 0x60, 0x8e, 0x00, 0x29, 0xc6, 0x40, 0x10,
0x44, 0x41, 0x90, 0x51, 0x0c, 0x80, 0x20, 0x88, 0x62, 0x20, 0xe4, 0xa6,
0xe1, 0xf2, 0x27, 0xec, 0x21, 0x24, 0x7f, 0x25, 0xa4, 0x95, 0x98, 0xfc,
0xe2, 0xb6, 0x51, 0x31, 0x0c, 0xc3, 0x40, 0x50, 0x71, 0xcf, 0x70, 0xf9,
0x13, 0xf6, 0x10, 0x92, 0x1f, 0x02, 0xcd, 0xb0, 0x10, 0x28, 0x58, 0x0a,
0xa3, 0x10, 0x0c, 0x33, 0x0c, 0xc3, 0x40, 0x10, 0xc4, 0x40, 0x4d, 0x19,
0x06, 0x62, 0xa0, 0xa7, 0x10, 0x03, 0x31, 0x0c, 0x14, 0x15, 0x49, 0x21,
0x18, 0x66, 0x18, 0x86, 0x81, 0x20, 0x88, 0x61, 0x18, 0x86, 0x61, 0x18,
0x68, 0x2a, 0xc8, 0x40, 0x0c, 0xc3, 0x30, 0x0c, 0x03, 0x55, 0x47, 0x0d,
0x97, 0x3f, 0x61, 0x0f, 0x21, 0xf9, 0xdc, 0x46, 0x15, 0x2b, 0x31, 0xf9,
0xc5, 0x6d, 0x23, 0x62, 0x18, 0x86, 0xa1, 0x10, 0x17, 0xc1, 0x10, 0x84,
0x95, 0x62, 0x20, 0x86, 0x61, 0x20, 0x6d, 0x8e, 0x20, 0x28, 0x06, 0x43,
0x14, 0x04, 0xc1, 0x51, 0x37, 0x10, 0x30, 0x8c, 0x40, 0x0c, 0x33, 0xb5,
0xc1, 0x38, 0xb0, 0x43, 0x38, 0xcc, 0xc3, 0x3c, 0xb8, 0x01, 0x2d, 0x94,
0x03, 0x3e, 0xd0, 0x43, 0x3d, 0xc8, 0x43, 0x39, 0xc8, 0x01, 0x29, 0xf0,
0x81, 0x3d, 0x94, 0xc3, 0x38, 0xd0, 0xc3, 0x3b, 0xc8, 0x03, 0x1f, 0x98,
0x03, 0x3b, 0xbc, 0x43, 0x38, 0xd0, 0x03, 0x1b, 0x80, 0x01, 0x1d, 0xf8,
0x01, 0x18, 0xf8, 0x81, 0x1e, 0xe8, 0x41, 0x3b, 0xa4, 0x03, 0x3c, 0xcc,
0xc3, 0x2f, 0xd0, 0x43, 0x3e, 0xc0, 0x43, 0x39, 0xa0, 0x80, 0x98, 0x49,
0x0c, 0xc6, 0x81, 0x1d, 0xc2, 0x61, 0x1e, 0xe6, 0xc1, 0x0d, 0x68, 0xa1,
0x1c, 0xf0, 0x81, 0x1e, 0xea, 0x41, 0x1e, 0xca, 0x41, 0x0e, 0x48, 0x81,
0x0f, 0xec, 0xa1, 0x1c, 0xc6, 0x81, 0x1e, 0xde, 0x41, 0x1e, 0xf8, 0xc0,
0x1c, 0xd8, 0xe1, 0x1d, 0xc2, 0x81, 0x1e, 0xd8, 0x00, 0x0c, 0xe8, 0xc0,
0x0f, 0xc0, 0xc0, 0x0f, 0x90, 0x00, 0x86, 0x24, 0x9e, 0x33, 0x61, 0x0f,
0xf1, 0x73, 0x4e, 0x23, 0x4d, 0x40, 0x33, 0x49, 0xa8, 0x19, 0x86, 0x61,
0x00, 0x87, 0x61, 0x18, 0x40, 0x10, 0x04, 0x89, 0xbc, 0x49, 0x9a, 0x22,
0x4a, 0x98, 0x7c, 0x16, 0x60, 0x9e, 0x85, 0x88, 0xd8, 0x09, 0x98, 0x08,
0x14, 0x10, 0x64, 0x26, 0x02, 0x01, 0x00, 0x00, 0x13, 0x14, 0x72, 0xc0,
0x87, 0x74, 0x60, 0x87, 0x36, 0x68, 0x87, 0x79, 0x68, 0x03, 0x72, 0xc0,
0x87, 0x0d, 0xaf, 0x50, 0x0e, 0x6d, 0xd0, 0x0e, 0x7a, 0x50, 0x0e, 0x6d,
0x00, 0x0f, 0x7a, 0x30, 0x07, 0x72, 0xa0, 0x07, 0x73, 0x20, 0x07, 0x6d,
0x90, 0x0e, 0x71, 0xa0, 0x07, 0x73, 0x20, 0x07, 0x6d, 0x90, 0x0e, 0x78,
0xa0, 0x07, 0x73, 0x20, 0x07, 0x6d, 0x90, 0x0e, 0x71, 0x60, 0x07, 0x7a,
0x30, 0x07, 0x72, 0xd0, 0x06, 0xe9, 0x30, 0x07, 0x72, 0xa0, 0x07, 0x73,
0x20, 0x07, 0x6d, 0x90, 0x0e, 0x76, 0x40, 0x07, 0x7a, 0x60, 0x07, 0x74,
0xd0, 0x06, 0xe6, 0x10, 0x07, 0x76, 0xa0, 0x07, 0x73, 0x20, 0x07, 0x6d,
0x60, 0x0e, 0x73, 0x20, 0x07, 0x7a, 0x30, 0x07, 0x72, 0xd0, 0x06, 0xe6,
0x60, 0x07, 0x74, 0xa0, 0x07, 0x76, 0x40, 0x07, 0x6d, 0xe0, 0x0e, 0x78,
0xa0, 0x07, 0x71, 0x60, 0x07, 0x7a, 0x30, 0x07, 0x72, 0xa0, 0x07, 0x76,
0x40, 0x07, 0x43, 0x9e, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x86, 0x3c, 0x06, 0x10, 0x00, 0x01, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x0c, 0x79, 0x10, 0x20, 0x00, 0x04, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0xf2, 0x34, 0x40, 0x00, 0x0c, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0xe4, 0x79, 0x80, 0x00, 0x08,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x60, 0xc8, 0x13, 0x01, 0x01,
0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x90, 0x67, 0x02,
0x02, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x21, 0x4f,
0x05, 0x04, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43,
0x1e, 0x0c, 0x08, 0x80, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x86, 0x3c, 0x1a, 0x10, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x0c, 0x79, 0x3a, 0x20, 0x00, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0xc8, 0x02, 0x01, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x00,
0x32, 0x1e, 0x98, 0x18, 0x19, 0x11, 0x4c, 0x90, 0x8c, 0x09, 0x26, 0x47,
0xc6, 0x04, 0x43, 0x22, 0x4a, 0x60, 0x04, 0xa0, 0x18, 0x8a, 0xa0, 0x24,
0xca, 0xa0, 0xc0, 0x03, 0xca, 0xa1, 0x10, 0x0a, 0xa2, 0x30, 0x0a, 0xa4,
0x34, 0x0a, 0xa8, 0x90, 0x0a, 0xaa, 0xb0, 0x0a, 0xac, 0x00, 0x03, 0x0a,
0x34, 0xa0, 0x80, 0x03, 0xca, 0xa3, 0x58, 0x0b, 0x4a, 0x39, 0x81, 0x8a,
0x92, 0x18, 0x01, 0x28, 0x82, 0x42, 0x28, 0x10, 0xe2, 0x6a, 0x80, 0xc6,
0x19, 0x00, 0x22, 0x67, 0x00, 0xa8, 0x9c, 0x01, 0xa0, 0x73, 0x06, 0x80,
0xd0, 0xb1, 0x10, 0x83, 0x08, 0x04, 0x02, 0x79, 0x1e, 0x00, 0x00, 0x00,
0x79, 0x18, 0x00, 0x00, 0x1e, 0x01, 0x00, 0x00, 0x1a, 0x03, 0x4c, 0x90,
0x46, 0x02, 0x13, 0x44, 0x8f, 0x0c, 0x6f, 0xec, 0xed, 0x4d, 0x0c, 0x24,
0xc6, 0x05, 0xc7, 0x45, 0xa6, 0x06, 0xa6, 0xc6, 0x45, 0x06, 0x07, 0x04,
0x25, 0xa7, 0xcc, 0x4c, 0x4c, 0xcc, 0x66, 0x6c, 0x46, 0x26, 0x65, 0x43,
0x10, 0x4c, 0x10, 0x88, 0x65, 0x82, 0x40, 0x30, 0x1b, 0x84, 0x81, 0xd8,
0x20, 0x10, 0x04, 0x05, 0xb8, 0xb9, 0x09, 0x02, 0xd1, 0x6c, 0x18, 0x0e,
0x84, 0x98, 0x20, 0x8c, 0x41, 0x1a, 0x10, 0xa1, 0x2b, 0xc3, 0xa3, 0xab,
0x93, 0x2b, 0x83, 0x99, 0x20, 0x10, 0xce, 0x04, 0x81, 0x78, 0x36, 0x08,
0x44, 0xb3, 0x21, 0x21, 0x94, 0x85, 0x21, 0x06, 0x86, 0x70, 0x88, 0xd0,
0x95, 0xe1, 0xd1, 0xd5, 0xc9, 0x95, 0xc5, 0x6c, 0x48, 0x06, 0x05, 0x62,
0x86, 0x81, 0x21, 0x1c, 0x22, 0x74, 0x65, 0x78, 0x74, 0x75, 0x72, 0x65,
0x32, 0x1b, 0x12, 0x46, 0x91, 0x18, 0x66, 0x60, 0x08, 0x67, 0xc3, 0xf0,
0x44, 0xd3, 0x04, 0xa1, 0x0c, 0xd6, 0x80, 0x0e, 0x5d, 0x1e, 0x5c, 0xd9,
0xd7, 0xd0, 0x9b, 0xdb, 0x1c, 0x5d, 0x98, 0x1b, 0xdd, 0xdc, 0x04, 0x81,
0x80, 0x26, 0x08, 0x44, 0xb4, 0x01, 0x21, 0x2a, 0xeb, 0x22, 0x06, 0x0c,
0xd8, 0x10, 0x64, 0x13, 0x84, 0x33, 0x60, 0x03, 0x22, 0x73, 0x61, 0x6d,
0x70, 0x6c, 0x65, 0x72, 0x30, 0x1b, 0x10, 0x62, 0xe3, 0x18, 0x62, 0x20,
0x00, 0x22, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x72, 0x31, 0x1b, 0x90,
0x61, 0xf3, 0x98, 0x61, 0x20, 0x80, 0x0d, 0x42, 0xf7, 0x6d, 0x20, 0x28,
0x40, 0x03, 0x83, 0x09, 0x02, 0x19, 0xa8, 0x01, 0xad, 0xa1, 0x37, 0xb7,
0x39, 0xba, 0x30, 0x37, 0xba, 0xb9, 0xaf, 0xb9, 0x31, 0xa9, 0x23, 0xa1,
0xaf, 0xb7, 0x3a, 0x3a, 0xb8, 0x3a, 0xba, 0x09, 0x02, 0x21, 0x4d, 0x10,
0x38, 0x34, 0xd8, 0x80, 0x20, 0x63, 0x70, 0x11, 0x64, 0xd0, 0x34, 0x65,
0x40, 0x6b, 0xe8, 0xcd, 0x6d, 0x8e, 0x2e, 0xcc, 0x8d, 0x6e, 0xee, 0x8b,
0xae, 0x0c, 0x8f, 0xae, 0x4e, 0xae, 0xec, 0x8b, 0x2e, 0x0f, 0xae, 0x6c,
0x82, 0x40, 0x4c, 0x1b, 0x10, 0xe4, 0x0c, 0x2e, 0x34, 0x20, 0x83, 0xa6,
0x29, 0x03, 0x52, 0x43, 0x6f, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x73,
0x5f, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x13,
0x04, 0x82, 0xda, 0x80, 0x20, 0x6a, 0x70, 0xad, 0x01, 0x19, 0x34, 0x4d,
0x19, 0xb0, 0x1a, 0x7a, 0x73, 0x9b, 0xa3, 0x0b, 0x73, 0xa3, 0x9b, 0xfb,
0x1a, 0x7b, 0x63, 0x7b, 0x93, 0xfb, 0x9a, 0x1b, 0x0b, 0x63, 0x2b, 0x9b,
0x20, 0x10, 0xd5, 0x06, 0x04, 0x69, 0x83, 0xcb, 0x0d, 0xc8, 0xa0, 0x69,
0xca, 0x80, 0xd4, 0xd0, 0x9b, 0xdb, 0x1c, 0x5d, 0x98, 0x1b, 0xdd, 0xdc,
0x17, 0x5d, 0x19, 0x5e, 0x19, 0xdb, 0xd7, 0x5c, 0x9a, 0x5e, 0xd9, 0x04,
0x81, 0xb0, 0x26, 0x08, 0xc4, 0xb5, 0x41, 0x41, 0xe0, 0xe0, 0x8a, 0x03,
0x32, 0x68, 0x9a, 0x32, 0x90, 0x03, 0x34, 0x20, 0x36, 0xf4, 0xe6, 0x36,
0x47, 0x17, 0xe6, 0x46, 0x37, 0xf7, 0x45, 0xf7, 0xe6, 0x56, 0xd6, 0x16,
0x06, 0xf7, 0xd5, 0x56, 0x46, 0x87, 0xf6, 0x46, 0x36, 0x41, 0x20, 0xb0,
0x0d, 0x08, 0x42, 0x07, 0x57, 0x1d, 0x90, 0x41, 0xd3, 0x94, 0x01, 0xb3,
0xa1, 0x37, 0xb7, 0x39, 0xba, 0x30, 0x37, 0xba, 0xb9, 0x2f, 0xba, 0x37,
0xb7, 0xb2, 0xb6, 0x30, 0xb8, 0x2f, 0xb3, 0xb0, 0x31, 0xba, 0x37, 0xb9,
0x98, 0x09, 0x02, 0x91, 0x6d, 0x40, 0x90, 0x3b, 0xb8, 0xf0, 0x80, 0x0c,
0x9a, 0xa6, 0x0c, 0x98, 0x0d, 0xbd, 0xb9, 0xcd, 0xd1, 0x85, 0xb9, 0xd1,
0xcd, 0x7d, 0xd1, 0xbd, 0xb9, 0x95, 0xb5, 0x85, 0xc1, 0x7d, 0x99, 0x85,
0x8d, 0xd1, 0xbd, 0xc9, 0xc9, 0x4c, 0x10, 0x08, 0x6d, 0x03, 0x82, 0xe8,
0xc1, 0xb5, 0x07, 0x64, 0xd0, 0x34, 0x65, 0xc0, 0x6c, 0xe8, 0xcd, 0x6d,
0x8e, 0x2e, 0xcc, 0x8d, 0x6e, 0xee, 0x6b, 0x8e, 0x4c, 0xee, 0xeb, 0x0e,
0x2d, 0x8d, 0xae, 0xec, 0x0b, 0xee, 0x2d, 0xcd, 0x8d, 0x6e, 0x82, 0x40,
0x6c, 0x1b, 0x10, 0xa4, 0x0f, 0x2e, 0x3f, 0x20, 0x83, 0xa6, 0x29, 0x03,
0x46, 0x43, 0x6f, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x73, 0x5f, 0x59,
0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x13, 0x04, 0x82, 0xdb, 0xa0, 0x20,
0xa0, 0x70, 0x85, 0x02, 0x19, 0x34, 0x4d, 0x19, 0xc8, 0x01, 0x1a, 0x10,
0x1a, 0x7a, 0x73, 0x9b, 0xa3, 0x0b, 0x73, 0xa3, 0x9b, 0xfb, 0x92, 0x1a,
0x7b, 0x2b, 0x33, 0x33, 0x9b, 0x20, 0x10, 0xdd, 0x06, 0x05, 0x19, 0x85,
0x8b, 0x14, 0xc8, 0xa0, 0x69, 0xca, 0x40, 0x0e, 0xd0, 0x80, 0xd0, 0xd0,
0x9b, 0xdb, 0x1c, 0x5d, 0x98, 0x1b, 0xdd, 0xdc, 0xd7, 0xd1, 0xd8, 0x5b,
0x99, 0x99, 0xd9, 0x04, 0x81, 0xf0, 0x36, 0x28, 0x88, 0x29, 0x5c, 0xa7,
0x40, 0x06, 0x4d, 0x53, 0x06, 0x72, 0x80, 0x06, 0x84, 0x86, 0xde, 0xdc,
0xe6, 0xe8, 0xc2, 0xdc, 0xe8, 0xe6, 0xbe, 0x84, 0xc6, 0xde, 0xca, 0xcc,
0xcc, 0x26, 0x08, 0xc4, 0xb7, 0x41, 0x41, 0x52, 0xe1, 0x52, 0x05, 0x32,
0x68, 0x9a, 0x32, 0x90, 0x03, 0x34, 0xd8, 0xe0, 0x60, 0x66, 0x90, 0x06,
0x6c, 0xf0, 0x06, 0x73, 0x60, 0x07, 0x79, 0xc0, 0x07, 0x7f, 0x20, 0x0a,
0xa5, 0x80, 0x0a, 0xab, 0xb0, 0x61, 0x20, 0xc4, 0x80, 0x15, 0x26, 0x08,
0x02, 0xb0, 0x01, 0xd8, 0x30, 0x10, 0xaf, 0xf0, 0x0a, 0x1b, 0x02, 0x58,
0xd8, 0x30, 0x0c, 0xae, 0x10, 0x0b, 0x13, 0x04, 0x34, 0x68, 0x83, 0x0d,
0xc1, 0x2c, 0x90, 0x68, 0x0b, 0x4b, 0x73, 0x23, 0x42, 0x55, 0x84, 0x35,
0xf4, 0xf4, 0x24, 0x45, 0x34, 0x41, 0x28, 0xc6, 0x60, 0x82, 0x50, 0x90,
0xc1, 0x86, 0x80, 0x98, 0x20, 0x14, 0x65, 0x30, 0x41, 0x28, 0xcc, 0x60,
0x82, 0x40, 0x80, 0xc1, 0x06, 0xe1, 0xe2, 0x85, 0x0d, 0x0b, 0x61, 0x0b,
0xb7, 0x80, 0x0b, 0xb9, 0xa0, 0x0b, 0xc3, 0x2e, 0x10, 0xb8, 0xd0, 0x0b,
0x1b, 0x82, 0x61, 0x83, 0x70, 0x5d, 0x1b, 0x96, 0xc1, 0x16, 0x6e, 0x01,
0x17, 0x7e, 0x41, 0x17, 0x06, 0x5d, 0x18, 0x70, 0x01, 0x1c, 0x36, 0x08,
0xbe, 0x10, 0x0e, 0x4c, 0xa6, 0xac, 0xbe, 0xa8, 0xc2, 0xe4, 0xce, 0xca,
0xe8, 0x26, 0x08, 0xc5, 0x19, 0x6c, 0x58, 0x88, 0x71, 0xb8, 0x05, 0x72,
0xc8, 0x05, 0x5c, 0x18, 0x76, 0x81, 0xc0, 0x85, 0x5e, 0xd8, 0x10, 0x94,
0xc3, 0x86, 0x41, 0x1c, 0xcc, 0x01, 0xd8, 0x50, 0xb8, 0x42, 0x2d, 0x9c,
0x43, 0x18, 0x00, 0x44, 0xc4, 0xe4, 0xc2, 0xdc, 0xc6, 0xd0, 0xca, 0xe6,
0x68, 0x98, 0xb1, 0xbd, 0x85, 0xd1, 0xcd, 0x4d, 0x10, 0x88, 0x30, 0x60,
0x91, 0xe6, 0x36, 0x47, 0x37, 0x37, 0x41, 0x20, 0xc4, 0x80, 0xc6, 0x5c,
0xda, 0xd9, 0x17, 0x1b, 0x19, 0x8d, 0xb9, 0xb4, 0xb3, 0xaf, 0x39, 0x3a,
0x22, 0x74, 0x65, 0x78, 0x5f, 0x67, 0x72, 0x61, 0x64, 0x44, 0xe8, 0xca,
0xf0, 0xbe, 0xdc, 0xde, 0xe4, 0xda, 0x36, 0x38, 0xe9, 0x50, 0x07, 0xea,
0xb0, 0x0e, 0xec, 0xd0, 0x0e, 0xee, 0x80, 0xbc, 0x03, 0x1a, 0xc0, 0xc3,
0x15, 0x0f, 0x6e, 0x50, 0x85, 0x8d, 0xcd, 0xae, 0xcd, 0x25, 0x8d, 0xac,
0xcc, 0x8d, 0x6e, 0x4a, 0x10, 0x54, 0x21, 0xc3, 0x73, 0xb1, 0x2b, 0x93,
0x9b, 0x4b, 0x7b, 0x73, 0x9b, 0x12, 0x10, 0x4d, 0xc8, 0xf0, 0x5c, 0xec,
0xc2, 0xd8, 0xec, 0xca, 0xe4, 0xa6, 0x04, 0x45, 0x1d, 0x32, 0x3c, 0x97,
0x39, 0xb4, 0x30, 0xb2, 0x32, 0xb9, 0xa6, 0x37, 0xb2, 0x32, 0xb6, 0x29,
0x01, 0x52, 0x86, 0x0c, 0xcf, 0x45, 0xae, 0x6c, 0xee, 0xad, 0x4e, 0x6e,
0xac, 0x6c, 0x6e, 0x4a, 0x00, 0x06, 0x95, 0xc8, 0xf0, 0x5c, 0xe8, 0xf2,
0xe0, 0xca, 0x82, 0xdc, 0xdc, 0xde, 0xe8, 0xc2, 0xe8, 0xd2, 0xde, 0xdc,
0xe6, 0xa6, 0x08, 0xac, 0x10, 0x0b, 0x75, 0xc8, 0xf0, 0x5c, 0xec, 0xd2,
0xca, 0xee, 0x92, 0xc8, 0xa6, 0xe8, 0xc2, 0xe8, 0xca, 0xa6, 0x04, 0xb3,
0x50, 0x87, 0x0c, 0xcf, 0xa5, 0xcc, 0x8d, 0x4e, 0x2e, 0x0f, 0xea, 0x2d,
0xcd, 0x8d, 0x6e, 0x6e, 0x4a, 0x70, 0x0e, 0x5d, 0xc8, 0xf0, 0x5c, 0xc6,
0xde, 0xea, 0xdc, 0xe8, 0xca, 0xe4, 0xe6, 0xa6, 0x04, 0xf1, 0x00, 0x00,
0x79, 0x18, 0x00, 0x00, 0x51, 0x00, 0x00, 0x00, 0x33, 0x08, 0x80, 0x1c,
0xc4, 0xe1, 0x1c, 0x66, 0x14, 0x01, 0x3d, 0x88, 0x43, 0x38, 0x84, 0xc3,
0x8c, 0x42, 0x80, 0x07, 0x79, 0x78, 0x07, 0x73, 0x98, 0x71, 0x0c, 0xe6,
0x00, 0x0f, 0xed, 0x10, 0x0e, 0xf4, 0x80, 0x0e, 0x33, 0x0c, 0x42, 0x1e,
0xc2, 0xc1, 0x1d, 0xce, 0xa1, 0x1c, 0x66, 0x30, 0x05, 0x3d, 0x88, 0x43,
0x38, 0x84, 0x83, 0x1b, 0xcc, 0x03, 0x3d, 0xc8, 0x43, 0x3d, 0x8c, 0x03,
0x3d, 0xcc, 0x78, 0x8c, 0x74, 0x70, 0x07, 0x7b, 0x08, 0x07, 0x79, 0x48,
0x87, 0x70, 0x70, 0x07, 0x7a, 0x70, 0x03, 0x76, 0x78, 0x87, 0x70, 0x20,
0x87, 0x19, 0xcc, 0x11, 0x0e, 0xec, 0x90, 0x0e, 0xe1, 0x30, 0x0f, 0x6e,
0x30, 0x0f, 0xe3, 0xf0, 0x0e, 0xf0, 0x50, 0x0e, 0x33, 0x10, 0xc4, 0x1d,
0xde, 0x21, 0x1c, 0xd8, 0x21, 0x1d, 0xc2, 0x61, 0x1e, 0x66, 0x30, 0x89,
0x3b, 0xbc, 0x83, 0x3b, 0xd0, 0x43, 0x39, 0xb4, 0x03, 0x3c, 0xbc, 0x83,
0x3c, 0x84, 0x03, 0x3b, 0xcc, 0xf0, 0x14, 0x76, 0x60, 0x07, 0x7b, 0x68,
0x07, 0x37, 0x68, 0x87, 0x72, 0x68, 0x07, 0x37, 0x80, 0x87, 0x70, 0x90,
0x87, 0x70, 0x60, 0x07, 0x76, 0x28, 0x07, 0x76, 0xf8, 0x05, 0x76, 0x78,
0x87, 0x77, 0x80, 0x87, 0x5f, 0x08, 0x87, 0x71, 0x18, 0x87, 0x72, 0x98,
0x87, 0x79, 0x98, 0x81, 0x2c, 0xee, 0xf0, 0x0e, 0xee, 0xe0, 0x0e, 0xf5,
0xc0, 0x0e, 0xec, 0x30, 0x03, 0x62, 0xc8, 0xa1, 0x1c, 0xe4, 0xa1, 0x1c,
0xcc, 0xa1, 0x1c, 0xe4, 0xa1, 0x1c, 0xdc, 0x61, 0x1c, 0xca, 0x21, 0x1c,
0xc4, 0x81, 0x1d, 0xca, 0x61, 0x06, 0xd6, 0x90, 0x43, 0x39, 0xc8, 0x43,
0x39, 0x98, 0x43, 0x39, 0xc8, 0x43, 0x39, 0xb8, 0xc3, 0x38, 0x94, 0x43,
0x38, 0x88, 0x03, 0x3b, 0x94, 0xc3, 0x2f, 0xbc, 0x83, 0x3c, 0xfc, 0x82,
0x3b, 0xd4, 0x03, 0x3b, 0xb0, 0xc3, 0x8c, 0xc8, 0x21, 0x07, 0x7c, 0x70,
0x03, 0x72, 0x10, 0x87, 0x73, 0x70, 0x03, 0x7b, 0x08, 0x07, 0x79, 0x60,
0x87, 0x70, 0xc8, 0x87, 0x77, 0xa8, 0x07, 0x7a, 0x98, 0x81, 0x3c, 0xe4,
0x80, 0x0f, 0x6e, 0x40, 0x0f, 0xe5, 0xd0, 0x0e, 0xf0, 0x30, 0x83, 0x81,
0xc8, 0x01, 0x1f, 0xdc, 0x40, 0x1c, 0xe4, 0xa1, 0x1c, 0xc2, 0x61, 0x1d,
0xdc, 0x40, 0x1c, 0xe4, 0x01, 0x00, 0x00, 0x00, 0x71, 0x20, 0x00, 0x00,
0x2a, 0x00, 0x00, 0x00, 0x56, 0x00, 0x0d, 0x97, 0xef, 0x3c, 0x7e, 0x80,
0x34, 0x40, 0x84, 0xf9, 0xc5, 0x6d, 0x1b, 0xc2, 0x36, 0x5c, 0xbe, 0xf3,
0xf8, 0x42, 0x40, 0x15, 0x05, 0x11, 0x95, 0x0e, 0x30, 0x94, 0x84, 0x01,
0x08, 0x98, 0x5f, 0xdc, 0xb6, 0x29, 0x48, 0xc3, 0xe5, 0x3b, 0x8f, 0x2f,
0x44, 0x04, 0x30, 0x11, 0x21, 0xd0, 0x0c, 0x0b, 0x61, 0x07, 0xce, 0x70,
0xf9, 0xce, 0xe3, 0x0f, 0xce, 0x74, 0xfb, 0xc5, 0x6d, 0x5b, 0xc0, 0x34,
0x5c, 0xbe, 0xf3, 0xf8, 0x8b, 0x03, 0x0c, 0x62, 0xf3, 0x50, 0x93, 0x5f,
0xdc, 0xb6, 0x0d, 0x40, 0xc3, 0xe5, 0x3b, 0x8f, 0x2f, 0x01, 0xcc, 0xb3,
0x10, 0x7e, 0x71, 0xdb, 0x66, 0x40, 0x0d, 0x97, 0xef, 0x3c, 0xbe, 0x04,
0x30, 0xcf, 0x42, 0x80, 0x11, 0x30, 0xf8, 0xc5, 0x6d, 0x9b, 0x40, 0x35,
0x5c, 0xbe, 0xf3, 0xf8, 0xd2, 0xe4, 0x44, 0x04, 0x4a, 0x4d, 0x0f, 0x35,
0xf9, 0xc5, 0x6d, 0x5b, 0x82, 0x34, 0x5c, 0xbe, 0xf3, 0xf8, 0x13, 0x11,
0x4d, 0x08, 0x10, 0x61, 0x7e, 0x71, 0xdb, 0x46, 0xf0, 0x0c, 0x97, 0xef,
0x3c, 0x3e, 0xd5, 0x00, 0x11, 0xe6, 0x17, 0xb7, 0x6d, 0x00, 0x04, 0x03,
0x20, 0x0d, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x48, 0x41, 0x53, 0x48,
0x14, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xea, 0xbb, 0xc8, 0x24,
0x70, 0xb5, 0x43, 0xb5, 0x13, 0x10, 0xd8, 0x04, 0x6d, 0xf2, 0xdf, 0x34,
0x44, 0x58, 0x49, 0x4c, 0x4c, 0x1a, 0x00, 0x00, 0x60, 0x00, 0x00, 0x00,
0x93, 0x06, 0x00, 0x00, 0x44, 0x58, 0x49, 0x4c, 0x00, 0x01, 0x00, 0x00,
0x10, 0x00, 0x00, 0x00, 0x34, 0x1a, 0x00, 0x00, 0x42, 0x43, 0xc0, 0xde,
0x21, 0x0c, 0x00, 0x00, 0x8a, 0x06, 0x00, 0x00, 0x0b, 0x82, 0x20, 0x00,
0x02, 0x00, 0x00, 0x00, 0x13, 0x00, 0x00, 0x00, 0x07, 0x81, 0x23, 0x91,
0x41, 0xc8, 0x04, 0x49, 0x06, 0x10, 0x32, 0x39, 0x92, 0x01, 0x84, 0x0c,
0x25, 0x05, 0x08, 0x19, 0x1e, 0x04, 0x8b, 0x62, 0x80, 0x18, 0x45, 0x02,
0x42, 0x92, 0x0b, 0x42, 0xc4, 0x10, 0x32, 0x14, 0x38, 0x08, 0x18, 0x4b,
0x0a, 0x32, 0x62, 0x88, 0x48, 0x90, 0x14, 0x20, 0x43, 0x46, 0x88, 0xa5,
0x00, 0x19, 0x32, 0x42, 0xe4, 0x48, 0x0e, 0x90, 0x11, 0x23, 0xc4, 0x50,
0x41, 0x51, 0x81, 0x8c, 0xe1, 0x83, 0xe5, 0x8a, 0x04, 0x31, 0x46, 0x06,
0x51, 0x18, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x1b, 0x8c, 0xe0, 0xff,
0xff, 0xff, 0xff, 0x07, 0x40, 0x02, 0xa8, 0x0d, 0x84, 0xf0, 0xff, 0xff,
0xff, 0xff, 0x03, 0x20, 0x6d, 0x30, 0x86, 0xff, 0xff, 0xff, 0xff, 0x1f,
0x00, 0x09, 0xa8, 0x00, 0x49, 0x18, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00,
0x13, 0x82, 0x60, 0x42, 0x20, 0x4c, 0x08, 0x06, 0x00, 0x00, 0x00, 0x00,
0x89, 0x20, 0x00, 0x00, 0x5c, 0x00, 0x00, 0x00, 0x32, 0x22, 0x88, 0x09,
0x20, 0x64, 0x85, 0x04, 0x13, 0x23, 0xa4, 0x84, 0x04, 0x13, 0x23, 0xe3,
0x84, 0xa1, 0x90, 0x14, 0x12, 0x4c, 0x8c, 0x8c, 0x0b, 0x84, 0xc4, 0x4c,
0x10, 0xa8, 0xc1, 0x08, 0x40, 0x09, 0x00, 0x0a, 0x66, 0x00, 0xe6, 0x08,
0xc0, 0x60, 0x8e, 0x00, 0x29, 0xc6, 0x40, 0x10, 0x44, 0x41, 0x90, 0x51,
0x0c, 0x80, 0x20, 0x88, 0x62, 0x20, 0xe4, 0xa6, 0xe1, 0xf2, 0x27, 0xec,
0x21, 0x24, 0x7f, 0x25, 0xa4, 0x95, 0x98, 0xfc, 0xe2, 0xb6, 0x51, 0x31,
0x0c, 0xc3, 0x40, 0x50, 0x71, 0xcf, 0x70, 0xf9, 0x13, 0xf6, 0x10, 0x92,
0x1f, 0x02, 0xcd, 0xb0, 0x10, 0x28, 0x58, 0x0a, 0xa3, 0x10, 0x0c, 0x33,
0x0c, 0xc3, 0x40, 0x10, 0xc4, 0x40, 0x4d, 0x19, 0x06, 0x62, 0xa0, 0xa7,
0x10, 0x03, 0x31, 0x0c, 0x14, 0x15, 0x49, 0x21, 0x18, 0x66, 0x18, 0x86,
0x81, 0x20, 0x88, 0x61, 0x18, 0x86, 0x61, 0x18, 0x68, 0x2a, 0xc8, 0x40,
0x0c, 0xc3, 0x30, 0x0c, 0x03, 0x55, 0x47, 0x0d, 0x97, 0x3f, 0x61, 0x0f,
0x21, 0xf9, 0xdc, 0x46, 0x15, 0x2b, 0x31, 0xf9, 0xc5, 0x6d, 0x23, 0x62,
0x18, 0x86, 0xa1, 0x10, 0x17, 0xc1, 0x10, 0x84, 0x95, 0x62, 0x20, 0x86,
0x61, 0x20, 0x6d, 0x8e, 0x20, 0x28, 0x06, 0x43, 0x14, 0x04, 0xc1, 0x51,
0x37, 0x10, 0x30, 0x8c, 0x40, 0x0c, 0x33, 0xb5, 0xc1, 0x38, 0xb0, 0x43,
0x38, 0xcc, 0xc3, 0x3c, 0xb8, 0x01, 0x2d, 0x94, 0x03, 0x3e, 0xd0, 0x43,
0x3d, 0xc8, 0x43, 0x39, 0xc8, 0x01, 0x29, 0xf0, 0x81, 0x3d, 0x94, 0xc3,
0x38, 0xd0, 0xc3, 0x3b, 0xc8, 0x03, 0x1f, 0x98, 0x03, 0x3b, 0xbc, 0x43,
0x38, 0xd0, 0x03, 0x1b, 0x80, 0x01, 0x1d, 0xf8, 0x01, 0x18, 0xf8, 0x81,
0x1e, 0xe8, 0x41, 0x3b, 0xa4, 0x03, 0x3c, 0xcc, 0xc3, 0x2f, 0xd0, 0x43,
0x3e, 0xc0, 0x43, 0x39, 0xa0, 0x80, 0x98, 0x49, 0x0c, 0xc6, 0x81, 0x1d,
0xc2, 0x61, 0x1e, 0xe6, 0xc1, 0x0d, 0x68, 0xa1, 0x1c, 0xf0, 0x81, 0x1e,
0xea, 0x41, 0x1e, 0xca, 0x41, 0x0e, 0x48, 0x81, 0x0f, 0xec, 0xa1, 0x1c,
0xc6, 0x81, 0x1e, 0xde, 0x41, 0x1e, 0xf8, 0xc0, 0x1c, 0xd8, 0xe1, 0x1d,
0xc2, 0x81, 0x1e, 0xd8, 0x00, 0x0c, 0xe8, 0xc0, 0x0f, 0xc0, 0xc0, 0x0f,
0x90, 0x00, 0x86, 0x24, 0x9e, 0x33, 0x61, 0x0f, 0xf1, 0x73, 0x4e, 0x23,
0x4d, 0x40, 0x33, 0x49, 0xa8, 0x19, 0x86, 0x61, 0x00, 0x87, 0x61, 0x18,
0x40, 0x10, 0x04, 0x89, 0xbc, 0x49, 0x9a, 0x22, 0x4a, 0x98, 0x7c, 0x16,
0x60, 0x9e, 0x85, 0x88, 0xd8, 0x09, 0x98, 0x08, 0x14, 0x10, 0x64, 0x26,
0x02, 0x31, 0x05, 0x00, 0x13, 0x14, 0x72, 0xc0, 0x87, 0x74, 0x60, 0x87,
0x36, 0x68, 0x87, 0x79, 0x68, 0x03, 0x72, 0xc0, 0x87, 0x0d, 0xaf, 0x50,
0x0e, 0x6d, 0xd0, 0x0e, 0x7a, 0x50, 0x0e, 0x6d, 0x00, 0x0f, 0x7a, 0x30,
0x07, 0x72, 0xa0, 0x07, 0x73, 0x20, 0x07, 0x6d, 0x90, 0x0e, 0x71, 0xa0,
0x07, 0x73, 0x20, 0x07, 0x6d, 0x90, 0x0e, 0x78, 0xa0, 0x07, 0x73, 0x20,
0x07, 0x6d, 0x90, 0x0e, 0x71, 0x60, 0x07, 0x7a, 0x30, 0x07, 0x72, 0xd0,
0x06, 0xe9, 0x30, 0x07, 0x72, 0xa0, 0x07, 0x73, 0x20, 0x07, 0x6d, 0x90,
0x0e, 0x76, 0x40, 0x07, 0x7a, 0x60, 0x07, 0x74, 0xd0, 0x06, 0xe6, 0x10,
0x07, 0x76, 0xa0, 0x07, 0x73, 0x20, 0x07, 0x6d, 0x60, 0x0e, 0x73, 0x20,
0x07, 0x7a, 0x30, 0x07, 0x72, 0xd0, 0x06, 0xe6, 0x60, 0x07, 0x74, 0xa0,
0x07, 0x76, 0x40, 0x07, 0x6d, 0xe0, 0x0e, 0x78, 0xa0, 0x07, 0x71, 0x60,
0x07, 0x7a, 0x30, 0x07, 0x72, 0xa0, 0x07, 0x76, 0x40, 0x07, 0x43, 0x9e,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x86,
0x3c, 0x06, 0x10, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x0c, 0x79, 0x10, 0x20, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x18, 0xf2, 0x34, 0x40, 0x00, 0x0c, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x30, 0xe4, 0x79, 0x80, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x60, 0xc8, 0x13, 0x01, 0x01, 0x10, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0xc0, 0x90, 0x67, 0x02, 0x02, 0x60, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x21, 0x4f, 0x05, 0x04, 0x40, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0x1e, 0x0c, 0x08, 0x80,
0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x86, 0x3c, 0x1a, 0x10,
0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0c, 0x79, 0x3a,
0x20, 0x00, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc8, 0x02,
0x01, 0x00, 0x00, 0x00, 0x0f, 0x00, 0x00, 0x00, 0x32, 0x1e, 0x98, 0x14,
0x19, 0x11, 0x4c, 0x90, 0x8c, 0x09, 0x26, 0x47, 0xc6, 0x04, 0x43, 0x22,
0x4a, 0x60, 0x04, 0xa0, 0x24, 0x8a, 0xa1, 0x08, 0xca, 0xa0, 0xc0, 0x03,
0xca, 0x83, 0x8a, 0x92, 0x18, 0x01, 0x28, 0x82, 0x42, 0x28, 0x10, 0x1a,
0x67, 0x00, 0xa8, 0x9c, 0x01, 0xa0, 0x73, 0x06, 0x80, 0xd0, 0xb1, 0x10,
0x83, 0x08, 0x04, 0x02, 0x79, 0x1e, 0x00, 0x00, 0x79, 0x18, 0x00, 0x00,
0x66, 0x00, 0x00, 0x00, 0x1a, 0x03, 0x4c, 0x90, 0x46, 0x02, 0x13, 0x44,
0x8f, 0x0c, 0x6f, 0xec, 0xed, 0x4d, 0x0c, 0x24, 0xc6, 0x05, 0xc7, 0x45,
0xa6, 0x06, 0xa6, 0xc6, 0x45, 0x06, 0x07, 0x04, 0x25, 0xa7, 0xcc, 0x4c,
0x4c, 0xcc, 0x66, 0x6c, 0x46, 0x26, 0x65, 0x43, 0x10, 0x4c, 0x10, 0x88,
0x65, 0x82, 0x40, 0x30, 0x1b, 0x84, 0x81, 0x98, 0x20, 0x10, 0xcd, 0x06,
0x61, 0x30, 0x28, 0xc0, 0xcd, 0x4d, 0x10, 0x08, 0x67, 0xc3, 0x80, 0x24,
0xc4, 0x04, 0x61, 0x0c, 0x30, 0x02, 0x13, 0x04, 0xe2, 0xd9, 0x20, 0x10,
0xc6, 0x86, 0x84, 0x58, 0x98, 0x86, 0x18, 0x1a, 0xc2, 0xd9, 0x90, 0x0c,
0x0b, 0xd3, 0x0c, 0x43, 0x43, 0x38, 0x1b, 0x92, 0x66, 0x61, 0x9a, 0x66,
0x68, 0x08, 0x67, 0xc3, 0xf0, 0x40, 0xd1, 0x04, 0xa1, 0x0c, 0xb2, 0x09,
0x02, 0x01, 0x4d, 0x10, 0x88, 0x68, 0x03, 0x42, 0x4c, 0x0c, 0x45, 0x0c,
0x15, 0xb0, 0x21, 0xb0, 0x26, 0x08, 0x67, 0xa0, 0x6d, 0x40, 0x08, 0x8c,
0x69, 0x88, 0x81, 0x00, 0x36, 0x20, 0x03, 0xc6, 0x34, 0xc3, 0x40, 0x00,
0x1b, 0x84, 0x4c, 0xdb, 0x40, 0x48, 0xc0, 0xb5, 0x4d, 0x10, 0xd0, 0x60,
0xdb, 0x10, 0x74, 0x13, 0x04, 0x01, 0x20, 0xd1, 0x16, 0x96, 0xe6, 0x46,
0x84, 0xaa, 0x08, 0x6b, 0xe8, 0xe9, 0x49, 0x8a, 0x68, 0x82, 0x50, 0x4c,
0x13, 0x84, 0x82, 0xda, 0x10, 0x10, 0x13, 0x84, 0xa2, 0x9a, 0x20, 0x14,
0xd6, 0x04, 0x81, 0x90, 0x36, 0x08, 0xd4, 0x19, 0x6c, 0x58, 0x88, 0x30,
0x10, 0x83, 0x31, 0x20, 0x83, 0x32, 0x18, 0xcc, 0x80, 0x18, 0x03, 0x34,
0xd8, 0x10, 0x0c, 0x1b, 0x04, 0x8a, 0xda, 0xb0, 0x0c, 0x61, 0x20, 0x06,
0x63, 0xa0, 0x06, 0x65, 0x30, 0x94, 0xc1, 0x30, 0x06, 0x6b, 0xb0, 0x41,
0x48, 0x03, 0x36, 0x60, 0x32, 0x65, 0xf5, 0x45, 0x15, 0x26, 0x77, 0x56,
0x46, 0x37, 0x41, 0x28, 0xae, 0x0d, 0x0b, 0xe1, 0x06, 0x62, 0xf0, 0x06,
0x64, 0x30, 0x06, 0x83, 0x19, 0x10, 0x63, 0x80, 0x06, 0x1b, 0x02, 0x38,
0xd8, 0x30, 0xb4, 0x41, 0x1c, 0x00, 0x1b, 0x8a, 0x0f, 0x0c, 0xe4, 0x80,
0x03, 0xaa, 0xb0, 0xb1, 0xd9, 0xb5, 0xb9, 0xa4, 0x91, 0x95, 0xb9, 0xd1,
0x4d, 0x09, 0x82, 0x2a, 0x64, 0x78, 0x2e, 0x76, 0x65, 0x72, 0x73, 0x69,
0x6f, 0x6e, 0x53, 0x02, 0xa2, 0x09, 0x19, 0x9e, 0x8b, 0x5d, 0x18, 0x9b,
0x5d, 0x99, 0xdc, 0x94, 0xc0, 0xa8, 0x43, 0x86, 0xe7, 0x32, 0x87, 0x16,
0x46, 0x56, 0x26, 0xd7, 0xf4, 0x46, 0x56, 0xc6, 0x36, 0x25, 0x48, 0xca,
0x90, 0xe1, 0xb9, 0xc8, 0x95, 0xcd, 0xbd, 0xd5, 0xc9, 0x8d, 0x95, 0xcd,
0x4d, 0x09, 0xb6, 0x3a, 0x64, 0x78, 0x2e, 0x76, 0x69, 0x65, 0x77, 0x49,
0x64, 0x53, 0x74, 0x61, 0x74, 0x65, 0x53, 0x82, 0xae, 0x0e, 0x19, 0x9e,
0x4b, 0x99, 0x1b, 0x9d, 0x5c, 0x1e, 0xd4, 0x5b, 0x9a, 0x1b, 0xdd, 0xdc,
0x94, 0x40, 0x0e, 0x00, 0x79, 0x18, 0x00, 0x00, 0x51, 0x00, 0x00, 0x00,
0x33, 0x08, 0x80, 0x1c, 0xc4, 0xe1, 0x1c, 0x66, 0x14, 0x01, 0x3d, 0x88,
0x43, 0x38, 0x84, 0xc3, 0x8c, 0x42, 0x80, 0x07, 0x79, 0x78, 0x07, 0x73,
0x98, 0x71, 0x0c, 0xe6, 0x00, 0x0f, 0xed, 0x10, 0x0e, 0xf4, 0x80, 0x0e,
0x33, 0x0c, 0x42, 0x1e, 0xc2, 0xc1, 0x1d, 0xce, 0xa1, 0x1c, 0x66, 0x30,
0x05, 0x3d, 0x88, 0x43, 0x38, 0x84, 0x83, 0x1b, 0xcc, 0x03, 0x3d, 0xc8,
0x43, 0x3d, 0x8c, 0x03, 0x3d, 0xcc, 0x78, 0x8c, 0x74, 0x70, 0x07, 0x7b,
0x08, 0x07, 0x79, 0x48, 0x87, 0x70, 0x70, 0x07, 0x7a, 0x70, 0x03, 0x76,
0x78, 0x87, 0x70, 0x20, 0x87, 0x19, 0xcc, 0x11, 0x0e, 0xec, 0x90, 0x0e,
0xe1, 0x30, 0x0f, 0x6e, 0x30, 0x0f, 0xe3, 0xf0, 0x0e, 0xf0, 0x50, 0x0e,
0x33, 0x10, 0xc4, 0x1d, 0xde, 0x21, 0x1c, 0xd8, 0x21, 0x1d, 0xc2, 0x61,
0x1e, 0x66, 0x30, 0x89, 0x3b, 0xbc, 0x83, 0x3b, 0xd0, 0x43, 0x39, 0xb4,
0x03, 0x3c, 0xbc, 0x83, 0x3c, 0x84, 0x03, 0x3b, 0xcc, 0xf0, 0x14, 0x76,
0x60, 0x07, 0x7b, 0x68, 0x07, 0x37, 0x68, 0x87, 0x72, 0x68, 0x07, 0x37,
0x80, 0x87, 0x70, 0x90, 0x87, 0x70, 0x60, 0x07, 0x76, 0x28, 0x07, 0x76,
0xf8, 0x05, 0x76, 0x78, 0x87, 0x77, 0x80, 0x87, 0x5f, 0x08, 0x87, 0x71,
0x18, 0x87, 0x72, 0x98, 0x87, 0x79, 0x98, 0x81, 0x2c, 0xee, 0xf0, 0x0e,
0xee, 0xe0, 0x0e, 0xf5, 0xc0, 0x0e, 0xec, 0x30, 0x03, 0x62, 0xc8, 0xa1,
0x1c, 0xe4, 0xa1, 0x1c, 0xcc, 0xa1, 0x1c, 0xe4, 0xa1, 0x1c, 0xdc, 0x61,
0x1c, 0xca, 0x21, 0x1c, 0xc4, 0x81, 0x1d, 0xca, 0x61, 0x06, 0xd6, 0x90,
0x43, 0x39, 0xc8, 0x43, 0x39, 0x98, 0x43, 0x39, 0xc8, 0x43, 0x39, 0xb8,
0xc3, 0x38, 0x94, 0x43, 0x38, 0x88, 0x03, 0x3b, 0x94, 0xc3, 0x2f, 0xbc,
0x83, 0x3c, 0xfc, 0x82, 0x3b, 0xd4, 0x03, 0x3b, 0xb0, 0xc3, 0x8c, 0xc8,
0x21, 0x07, 0x7c, 0x70, 0x03, 0x72, 0x10, 0x87, 0x73, 0x70, 0x03, 0x7b,
0x08, 0x07, 0x79, 0x60, 0x87, 0x70, 0xc8, 0x87, 0x77, 0xa8, 0x07, 0x7a,
0x98, 0x81, 0x3c, 0xe4, 0x80, 0x0f, 0x6e, 0x40, 0x0f, 0xe5, 0xd0, 0x0e,
0xf0, 0x30, 0x83, 0x81, 0xc8, 0x01, 0x1f, 0xdc, 0x40, 0x1c, 0xe4, 0xa1,
0x1c, 0xc2, 0x61, 0x1d, 0xdc, 0x40, 0x1c, 0xe4, 0x01, 0x00, 0x00, 0x00,
0x71, 0x20, 0x00, 0x00, 0x2a, 0x00, 0x00, 0x00, 0x56, 0x00, 0x0d, 0x97,
0xef, 0x3c, 0x7e, 0x80, 0x34, 0x40, 0x84, 0xf9, 0xc5, 0x6d, 0x1b, 0xc2,
0x36, 0x5c, 0xbe, 0xf3, 0xf8, 0x42, 0x40, 0x15, 0x05, 0x11, 0x95, 0x0e,
0x30, 0x94, 0x84, 0x01, 0x08, 0x98, 0x5f, 0xdc, 0xb6, 0x29, 0x48, 0xc3,
0xe5, 0x3b, 0x8f, 0x2f, 0x44, 0x04, 0x30, 0x11, 0x21, 0xd0, 0x0c, 0x0b,
0x61, 0x07, 0xce, 0x70, 0xf9, 0xce, 0xe3, 0x0f, 0xce, 0x74, 0xfb, 0xc5,
0x6d, 0x5b, 0xc0, 0x34, 0x5c, 0xbe, 0xf3, 0xf8, 0x8b, 0x03, 0x0c, 0x62,
0xf3, 0x50, 0x93, 0x5f, 0xdc, 0xb6, 0x0d, 0x40, 0xc3, 0xe5, 0x3b, 0x8f,
0x2f, 0x01, 0xcc, 0xb3, 0x10, 0x7e, 0x71, 0xdb, 0x66, 0x40, 0x0d, 0x97,
0xef, 0x3c, 0xbe, 0x04, 0x30, 0xcf, 0x42, 0x80, 0x11, 0x30, 0xf8, 0xc5,
0x6d, 0x9b, 0x40, 0x35, 0x5c, 0xbe, 0xf3, 0xf8, 0xd2, 0xe4, 0x44, 0x04,
0x4a, 0x4d, 0x0f, 0x35, 0xf9, 0xc5, 0x6d, 0x5b, 0x82, 0x34, 0x5c, 0xbe,
0xf3, 0xf8, 0x13, 0x11, 0x4d, 0x08, 0x10, 0x61, 0x7e, 0x71, 0xdb, 0x46,
0xf0, 0x0c, 0x97, 0xef, 0x3c, 0x3e, 0xd5, 0x00, 0x11, 0xe6, 0x17, 0xb7,
0x6d, 0x00, 0x04, 0x03, 0x20, 0x0d, 0x00, 0x00, 0x61, 0x20, 0x00, 0x00,
0xc5, 0x04, 0x00, 0x00, 0x13, 0x04, 0xa5, 0x10, 0x0b, 0x04, 0x00, 0x00,
0x5e, 0x00, 0x00, 0x00, 0xc4, 0x8d, 0x00, 0x50, 0x51, 0x02, 0x65, 0x40,
0x44, 0xf9, 0x95, 0x43, 0xb1, 0x94, 0x4d, 0xa1, 0x06, 0x94, 0x69, 0x40,
0xc9, 0x95, 0x42, 0xb9, 0x15, 0x42, 0x21, 0x15, 0x5e, 0xa9, 0x94, 0x4b,
0x19, 0x15, 0x57, 0xd9, 0xcd, 0x00, 0xd0, 0x30, 0x46, 0xe0, 0xf6, 0xb1,
0x68, 0x7b, 0x63, 0x04, 0xef, 0x9e, 0x96, 0xf7, 0x37, 0x46, 0xa0, 0xb3,
0xe6, 0x1c, 0x82, 0xc1, 0x18, 0x01, 0x08, 0x82, 0xfe, 0xfd, 0x8d, 0x11,
0x80, 0x20, 0x08, 0xc2, 0xdd, 0x18, 0x81, 0x98, 0x8b, 0x69, 0xff, 0x8d,
0x11, 0x80, 0x25, 0xcf, 0xc6, 0xbf, 0x30, 0x46, 0x30, 0xa6, 0xab, 0x9a,
0xfb, 0xc2, 0x18, 0xc1, 0x3f, 0x93, 0xfe, 0xef, 0x0b, 0x63, 0x04, 0x74,
0x0d, 0x8a, 0xf9, 0x37, 0x46, 0xd0, 0xc2, 0x71, 0x0c, 0xfa, 0xc2, 0x18,
0xc1, 0xdc, 0xb7, 0x69, 0xea, 0x0b, 0x63, 0x04, 0xad, 0x1b, 0xf2, 0xbc,
0x2f, 0x8c, 0x11, 0xf0, 0x39, 0xeb, 0xe3, 0xdf, 0x18, 0x01, 0x08, 0x82,
0x20, 0x0a, 0x06, 0x63, 0x04, 0x20, 0x08, 0x82, 0x2a, 0x18, 0x8c, 0x11,
0x80, 0x20, 0x08, 0xb2, 0x60, 0x30, 0x46, 0x00, 0x82, 0x20, 0xe8, 0x82,
0xc1, 0x18, 0x01, 0x08, 0x82, 0x20, 0x0c, 0x06, 0x63, 0x04, 0x20, 0x08,
0x82, 0x31, 0x18, 0x8c, 0x11, 0xb0, 0xec, 0x19, 0xca, 0xdf, 0x18, 0x01,
0xea, 0x97, 0xb1, 0xfa, 0x8d, 0x11, 0xe4, 0xa7, 0x2e, 0xce, 0xde, 0x18,
0x81, 0x5e, 0x83, 0x3b, 0xee, 0x8d, 0x11, 0xa8, 0x78, 0x6e, 0xdb, 0xdf,
0x18, 0xc1, 0xdb, 0xa7, 0xf4, 0xe8, 0x8d, 0x11, 0xac, 0x73, 0xcc, 0xa2,
0xde, 0x18, 0x41, 0x1a, 0xc2, 0xe8, 0xee, 0x8d, 0x11, 0xdc, 0x6d, 0xac,
0xda, 0xdf, 0x18, 0x41, 0xcc, 0x83, 0x7d, 0xee, 0x8d, 0x11, 0x98, 0xf7,
0xba, 0xca, 0xde, 0x18, 0x01, 0x08, 0xc2, 0x78, 0x38, 0x06, 0x63, 0x04,
0xeb, 0x88, 0xc7, 0x2c, 0x18, 0x8c, 0x11, 0x80, 0x20, 0xdd, 0xe6, 0x60,
0x30, 0x46, 0x00, 0x82, 0xe0, 0x9a, 0x83, 0xc1, 0x18, 0x01, 0x08, 0x82,
0x6c, 0xfd, 0x0b, 0x63, 0x04, 0x6c, 0x3b, 0xff, 0xa4, 0x37, 0x46, 0xe0,
0xf6, 0xb1, 0x68, 0xfb, 0xc2, 0x18, 0x41, 0x1f, 0x8b, 0x2e, 0xfe, 0x8d,
0x11, 0xd4, 0x6a, 0xad, 0xb6, 0xdf, 0x18, 0x81, 0x2c, 0xba, 0x3d, 0x0d,
0x06, 0x63, 0x04, 0x3c, 0xbc, 0xea, 0x74, 0x37, 0x46, 0x00, 0x82, 0x20,
0x88, 0xff, 0xc2, 0x18, 0x01, 0xdb, 0xc6, 0xaf, 0xbc, 0x8d, 0x11, 0x80,
0x20, 0x08, 0x92, 0x60, 0x30, 0x46, 0x00, 0x82, 0x20, 0x08, 0x82, 0xc1,
0x18, 0x01, 0x08, 0x82, 0x20, 0xfc, 0x8d, 0x00, 0x8c, 0x11, 0x80, 0x20,
0x08, 0xe2, 0xdf, 0x0c, 0x00, 0x00, 0x00, 0x00, 0x23, 0x06, 0x09, 0x00,
0x82, 0x60, 0xd0, 0xe5, 0x82, 0x1f, 0xbc, 0x02, 0x2d, 0xd0, 0xc2, 0x29,
0x8c, 0x18, 0x24, 0x00, 0x08, 0x82, 0x41, 0xa7, 0x0b, 0x7f, 0x00, 0x0b,
0xb9, 0x90, 0x0b, 0xa8, 0x30, 0x62, 0x90, 0x00, 0x20, 0x08, 0x06, 0xdd,
0x2e, 0x80, 0x42, 0x2c, 0xe4, 0x42, 0x2e, 0xa4, 0xc2, 0x88, 0x41, 0x02,
0x80, 0x20, 0x18, 0x74, 0xbc, 0x10, 0x0a, 0xa8, 0xb0, 0x0b, 0xbb, 0xa0,
0x0a, 0x23, 0x06, 0x09, 0x00, 0x82, 0x60, 0xd0, 0xf5, 0x82, 0x28, 0xa4,
0xc2, 0x2e, 0xec, 0xc2, 0x2a, 0x8c, 0x18, 0x24, 0x00, 0x08, 0x82, 0x41,
0xe7, 0x0b, 0xa3, 0x30, 0x0b, 0xbc, 0xc0, 0x0b, 0xac, 0x30, 0x62, 0x90,
0x00, 0x20, 0x08, 0x06, 0x06, 0x3a, 0x84, 0x82, 0x2f, 0xf4, 0x42, 0x2d,
0xe4, 0xc1, 0x88, 0x41, 0x02, 0x80, 0x20, 0x18, 0x18, 0xe9, 0x20, 0x0a,
0xbf, 0xe0, 0x0b, 0xad, 0xa0, 0x07, 0x23, 0x06, 0x09, 0x00, 0x82, 0x60,
0x60, 0xa8, 0xc3, 0x28, 0xfc, 0xc2, 0x2f, 0xdc, 0xc2, 0x1e, 0x8c, 0x18,
0x24, 0x00, 0x08, 0x82, 0x81, 0xb1, 0x0e, 0xa4, 0x00, 0x0e, 0xe0, 0xf0,
0x0a, 0x7c, 0x30, 0x62, 0x90, 0x00, 0x20, 0x08, 0x06, 0x06, 0x3b, 0x94,
0x42, 0x38, 0x84, 0x03, 0x2e, 0xf4, 0xc1, 0x88, 0x41, 0x02, 0x80, 0x20,
0x18, 0x18, 0xed, 0x60, 0x0a, 0xe2, 0x20, 0x0e, 0xb0, 0xe0, 0x07, 0x23,
0x06, 0x07, 0x00, 0x82, 0x60, 0x80, 0x9d, 0x03, 0x28, 0x1c, 0xe3, 0x30,
0x9a, 0x10, 0x04, 0xc3, 0x11, 0x41, 0x14, 0x7c, 0xb3, 0x0c, 0x53, 0x10,
0x0c, 0x47, 0x08, 0x55, 0xf0, 0xcd, 0x32, 0x08, 0x43, 0x30, 0x62, 0xf0,
0x00, 0x20, 0x08, 0x06, 0x0d, 0x3c, 0xa4, 0x82, 0xc3, 0x28, 0x49, 0x14,
0x9d, 0xc3, 0x39, 0x8c, 0x42, 0x34, 0x9a, 0x10, 0x00, 0xa3, 0x09, 0x42,
0x30, 0x9a, 0x30, 0x08, 0xa3, 0x09, 0xc4, 0x30, 0x4b, 0x30, 0x0d, 0x47,
0x20, 0x79, 0x10, 0x7c, 0xb3, 0x0c, 0x44, 0x11, 0x8c, 0x18, 0x18, 0x00,
0x08, 0x82, 0xc1, 0x53, 0x0f, 0xb5, 0x00, 0x8d, 0x18, 0x18, 0x00, 0x08,
0x82, 0xc1, 0x63, 0x0f, 0xb6, 0x00, 0x8d, 0x18, 0x18, 0x00, 0x08, 0x82,
0xc1, 0x73, 0x0f, 0xed, 0x20, 0x8c, 0x18, 0x18, 0x00, 0x08, 0x82, 0xc1,
0x83, 0x0f, 0xee, 0x20, 0x8c, 0x18, 0x18, 0x00, 0x08, 0x82, 0xc1, 0x93,
0x0f, 0xba, 0x40, 0x8d, 0x18, 0x18, 0x00, 0x08, 0x82, 0xc1, 0xa3, 0x0f,
0xbb, 0x40, 0x8d, 0x18, 0x18, 0x00, 0x08, 0x82, 0xc1, 0xb3, 0x0f, 0xf1,
0x20, 0x8c, 0x18, 0x18, 0x00, 0x08, 0x82, 0xc1, 0xc3, 0x0f, 0xf2, 0x20,
0x98, 0x60, 0xc0, 0xc7, 0x04, 0x03, 0x3e, 0x23, 0x06, 0x07, 0x00, 0x82,
0x60, 0x80, 0xed, 0x03, 0x2d, 0x6c, 0xf8, 0x30, 0x9a, 0x10, 0x08, 0xa3,
0x09, 0xc2, 0x60, 0x42, 0x21, 0x1f, 0x13, 0x0a, 0xf9, 0x8c, 0x18, 0x1c,
0x00, 0x08, 0x82, 0x41, 0x34, 0x12, 0xbb, 0x20, 0xb0, 0xc1, 0x88, 0xc1,
0x01, 0x80, 0x20, 0x18, 0x44, 0x24, 0xc1, 0x0b, 0x42, 0x1b, 0x8c, 0x18,
0x1c, 0x00, 0x08, 0x82, 0x41, 0x54, 0x12, 0xe1, 0x20, 0xa4, 0xc1, 0x88,
0xc1, 0x01, 0x80, 0x20, 0x18, 0x44, 0x26, 0x21, 0x0e, 0x82, 0x1a, 0x18,
0x32, 0x06, 0xf2, 0x31, 0x64, 0x0c, 0xe4, 0x63, 0xc4, 0x1b, 0xc8, 0xc7,
0x08, 0x38, 0x90, 0x8f, 0x11, 0x42, 0x7c, 0x8c, 0x10, 0xe2, 0x33, 0x62,
0x60, 0x00, 0x20, 0x08, 0x06, 0x8f, 0x4b, 0xc0, 0x83, 0x30, 0x62, 0x60,
0x00, 0x20, 0x08, 0x06, 0xcf, 0x4b, 0xc4, 0x83, 0x60, 0x42, 0x1d, 0xc0,
0xc7, 0x04, 0x3b, 0x80, 0xcf, 0x88, 0x81, 0x01, 0x80, 0x20, 0x18, 0x3c,
0x32, 0x51, 0x0f, 0xc6, 0x88, 0x81, 0x01, 0x80, 0x20, 0x18, 0x3c, 0x33,
0x61, 0x0f, 0x86, 0x39, 0x7d, 0x00, 0x1f, 0x0b, 0x06, 0xf8, 0xd8, 0xf3,
0x07, 0xf0, 0xb1, 0x80, 0x80, 0x8f, 0x0d, 0x12, 0x7d, 0x4c, 0x90, 0xe8,
0x33, 0x62, 0x60, 0x00, 0x20, 0x08, 0x06, 0x8f, 0x4e, 0xf8, 0x83, 0x30,
0x62, 0x60, 0x00, 0x20, 0x08, 0x06, 0xcf, 0x4e, 0xfc, 0x83, 0x60, 0x82,
0x28, 0xc8, 0xc7, 0x84, 0x51, 0x90, 0x8f, 0x95, 0x82, 0x10, 0x1f, 0x33,
0x05, 0x21, 0x3e, 0x66, 0x18, 0xf2, 0xb1, 0x60, 0x90, 0x8f, 0x1d, 0x87,
0x7c, 0x2c, 0x20, 0xe4, 0x63, 0xd4, 0x00, 0x1f, 0xa3, 0x04, 0xf8, 0x8c,
0x26, 0x9c, 0x01, 0x30, 0x9a, 0x80, 0x06, 0x81, 0x11, 0x82, 0x7c, 0x8c,
0x10, 0xe4, 0x33, 0x62, 0x50, 0x01, 0x20, 0x08, 0x06, 0x13, 0x5a, 0xbc,
0x44, 0x2a, 0x9c, 0x82, 0x10, 0xb0, 0x02, 0x2b, 0x88, 0x85, 0x58, 0xf8,
0x43, 0x1d, 0xd0, 0x01, 0x2b, 0xc4, 0x01, 0x1c, 0xb0, 0x02, 0x2b, 0x8c,
0x26, 0x04, 0xc0, 0x68, 0x82, 0x10, 0x8c, 0x26, 0x0c, 0xc2, 0x68, 0x02,
0x31, 0xcc, 0x12, 0x4c, 0xc3, 0x11, 0xa3, 0x20, 0x0b, 0xc1, 0x37, 0xcb,
0x60, 0x1c, 0xc1, 0x88, 0xc1, 0x03, 0x80, 0x20, 0x18, 0x34, 0x71, 0xa1,
0x12, 0xaf, 0xd0, 0x0a, 0xab, 0xa0, 0x0a, 0xb2, 0x20, 0x0b, 0x68, 0x81,
0x16, 0x24, 0x21, 0x0b, 0xa3, 0x09, 0x01, 0x30, 0x9a, 0x20, 0x04, 0xa3,
0x09, 0x83, 0x30, 0x4b, 0x30, 0x0d, 0x47, 0xa0, 0x82, 0x2e, 0x04, 0xdf,
0x2c, 0x03, 0x92, 0x04, 0x23, 0x06, 0x06, 0x00, 0x82, 0x60, 0xf0, 0xd4,
0x45, 0x4d, 0xc0, 0xc2, 0x88, 0x81, 0x01, 0x80, 0x20, 0x18, 0x3c, 0x76,
0x61, 0x13, 0xb0, 0x30, 0x62, 0x60, 0x00, 0x20, 0x08, 0x06, 0xcf, 0x5d,
0xb4, 0x85, 0x30, 0x62, 0x60, 0x00, 0x20, 0x08, 0x06, 0x0f, 0x5e, 0xb8,
0x85, 0x30, 0x62, 0x60, 0x00, 0x20, 0x08, 0x06, 0x4f, 0x5e, 0xe8, 0x04,
0x2d, 0x8c, 0x18, 0x18, 0x00, 0x08, 0x82, 0xc1, 0xa3, 0x17, 0x3b, 0x41,
0x0b, 0x23, 0x06, 0x06, 0x00, 0x82, 0x60, 0xf0, 0xec, 0x45, 0x5c, 0x08,
0x23, 0x06, 0x06, 0x00, 0x82, 0x60, 0xf0, 0xf0, 0x85, 0x5c, 0x08, 0x26,
0x18, 0xf0, 0x31, 0xc1, 0x80, 0xcf, 0x88, 0xc1, 0x01, 0x80, 0x20, 0x18,
0x60, 0x7b, 0x41, 0x13, 0xbb, 0x80, 0x17, 0xa3, 0x09, 0x81, 0x30, 0x9a,
0x20, 0x0c, 0x26, 0x14, 0xf2, 0x31, 0xa1, 0x90, 0xcf, 0x88, 0xc1, 0x01,
0x80, 0x20, 0x18, 0x44, 0xa3, 0xb1, 0x13, 0x02, 0x3b, 0x8c, 0x18, 0x1c,
0x00, 0x08, 0x82, 0x41, 0x44, 0x1a, 0x3c, 0x21, 0xb4, 0xc3, 0x88, 0xc1,
0x01, 0x80, 0x20, 0x18, 0x44, 0xa5, 0x11, 0x16, 0x42, 0x3a, 0x8c, 0x18,
0x1c, 0x00, 0x08, 0x82, 0x41, 0x64, 0x1a, 0x62, 0x21, 0xa8, 0x83, 0x21,
0xe3, 0x20, 0x1f, 0x43, 0xc6, 0x41, 0x3e, 0x46, 0xbc, 0x83, 0x7c, 0x8c,
0x80, 0x07, 0xf9, 0x18, 0x21, 0xc4, 0xc7, 0x08, 0x21, 0x3e, 0x23, 0x06,
0x06, 0x00, 0x82, 0x60, 0xf0, 0xb8, 0x06, 0x5c, 0x08, 0x23, 0x06, 0x06,
0x00, 0x82, 0x60, 0xf0, 0xbc, 0x46, 0x5c, 0x08, 0x26, 0xd4, 0x03, 0x7c,
0x4c, 0xb0, 0x07, 0xf8, 0x8c, 0x18, 0x18, 0x00, 0x08, 0x82, 0xc1, 0x23,
0x1b, 0x75, 0x61, 0x8c, 0x18, 0x18, 0x00, 0x08, 0x82, 0xc1, 0x33, 0x1b,
0x76, 0x61, 0x98, 0xd3, 0x0f, 0xf0, 0xb1, 0x60, 0x80, 0x8f, 0x3d, 0xff,
0x00, 0x1f, 0x0b, 0x08, 0xf8, 0xd8, 0x20, 0xd1, 0xc7, 0x04, 0x89, 0x3e,
0x23, 0x06, 0x06, 0x00, 0x82, 0x60, 0xf0, 0xe8, 0x86, 0x5f, 0x08, 0x23,
0x06, 0x06, 0x00, 0x82, 0x60, 0xf0, 0xec, 0xc6, 0x5f, 0x08, 0x26, 0x88,
0x84, 0x7c, 0x4c, 0x18, 0x09, 0xf9, 0x58, 0x49, 0x08, 0xf1, 0x31, 0x93,
0x10, 0xe2, 0x63, 0x86, 0x21, 0x1f, 0x0b, 0x06, 0xf9, 0xd8, 0x71, 0xc8,
0xc7, 0x02, 0x42, 0x3e, 0x46, 0x0d, 0xf0, 0x31, 0x4a, 0x80, 0xcf, 0x68,
0xc2, 0x19, 0x00, 0xa3, 0x09, 0x68, 0x10, 0x18, 0x21, 0xc8, 0xc7, 0x08,
0x41, 0x3e, 0x23, 0x06, 0x15, 0x00, 0x82, 0x60, 0x30, 0xa1, 0xc7, 0x6b,
0xa4, 0xc4, 0x49, 0x08, 0x01, 0x4b, 0xb0, 0x84, 0x78, 0x88, 0x87, 0x5f,
0xd4, 0x01, 0x1d, 0xb0, 0x44, 0x1c, 0xc0, 0x01, 0x4b, 0xb0, 0xc4, 0x68,
0x42, 0x00, 0x8c, 0x26, 0x08, 0xc1, 0x68, 0xc2, 0x20, 0xcc, 0x12, 0x4c,
0xc3, 0x11, 0x22, 0x21, 0x17, 0xc1, 0x37, 0xcb, 0xa0, 0x2c, 0xc1, 0x88,
0xc1, 0x03, 0x80, 0x20, 0x18, 0x34, 0xf0, 0x91, 0x1a, 0x2e, 0xc1, 0x12,
0x2a, 0x91, 0x12, 0x31, 0x11, 0x13, 0xe7, 0x71, 0x1e, 0xa3, 0x11, 0x13,
0xa3, 0x09, 0x01, 0x60, 0x41, 0x68, 0xc8, 0xc7, 0x82, 0xd0, 0x80, 0xcf,
0x88, 0xc1, 0x03, 0x80, 0x20, 0x18, 0x34, 0xf4, 0xd1, 0x1a, 0x33, 0x11,
0x13, 0x01, 0x4e, 0xd4, 0x44, 0x4d, 0xac, 0xc7, 0x7a, 0x9c, 0x46, 0x4d,
0x8c, 0x26, 0x04, 0xc0, 0x68, 0x82, 0x10, 0x8c, 0x26, 0x0c, 0xc2, 0x68,
0x02, 0x31, 0xcc, 0x12, 0x4c, 0xc3, 0x11, 0x2c, 0xb1, 0x17, 0xc1, 0x37,
0xcb, 0xc0, 0x34, 0xc1, 0x88, 0x81, 0x01, 0x80, 0x20, 0x18, 0x3c, 0xf9,
0x91, 0x1b, 0x34, 0x31, 0x62, 0x60, 0x00, 0x20, 0x08, 0x06, 0x8f, 0x7e,
0xe8, 0x06, 0x4d, 0x8c, 0x18, 0x18, 0x00, 0x08, 0x82, 0xc1, 0xb3, 0x1f,
0xf1, 0x21, 0x8c, 0x18, 0x18, 0x00, 0x08, 0x82, 0xc1, 0xc3, 0x1f, 0xf2,
0x21, 0x8c, 0x18, 0x18, 0x00, 0x08, 0x82, 0xc1, 0xd3, 0x1f, 0xbe, 0x81,
0x13, 0x23, 0x06, 0x06, 0x00, 0x82, 0x60, 0xf0, 0xf8, 0xc7, 0x6f, 0xe0,
0xc4, 0x88, 0x81, 0x01, 0x80, 0x20, 0x18, 0x3c, 0xff, 0x51, 0x1f, 0xc2,
0x88, 0x81, 0x01, 0x80, 0x20, 0x18, 0x3c, 0x20, 0x62, 0x1f, 0x82, 0x09,
0x06, 0x7c, 0x4c, 0x30, 0xe0, 0x33, 0x62, 0x70, 0x00, 0x20, 0x08, 0x06,
0xd8, 0x7f, 0xe0, 0xc6, 0x4f, 0xf0, 0xc7, 0x68, 0x42, 0x20, 0x8c, 0x26,
0x08, 0x83, 0x09, 0x85, 0x7c, 0x4c, 0x28, 0xe4, 0x33, 0x62, 0x70, 0x00,
0x20, 0x08, 0x06, 0xd1, 0x89, 0xfc, 0x86, 0x00, 0x17, 0x23, 0x06, 0x07,
0x00, 0x82, 0x60, 0x10, 0xa1, 0x08, 0x78, 0x08, 0x71, 0x31, 0x62, 0x70,
0x00, 0x20, 0x08, 0x06, 0x51, 0x8a, 0x94, 0x87, 0xd0, 0x16, 0x23, 0x06,
0x07, 0x00, 0x82, 0x60, 0x10, 0xa9, 0x88, 0x79, 0x08, 0x6e, 0x61, 0xc8,
0x59, 0xc8, 0xc7, 0x90, 0xb3, 0x90, 0x8f, 0x11, 0x73, 0x21, 0x1f, 0x23,
0xe8, 0x42, 0x3e, 0x46, 0x08, 0xf1, 0x31, 0x42, 0x88, 0xcf, 0x88, 0x81,
0x01, 0x80, 0x20, 0x18, 0x3c, 0x32, 0x42, 0x1f, 0xc2, 0x88, 0x81, 0x01,
0x80, 0x20, 0x18, 0x3c, 0x33, 0x52, 0x1f, 0x82, 0x09, 0x79, 0x01, 0x1f,
0x13, 0xf4, 0x02, 0x3e, 0x23, 0x06, 0x06, 0x00, 0x82, 0x60, 0xf0, 0xd8,
0x48, 0x7e, 0x18, 0x23, 0x06, 0x06, 0x00, 0x82, 0x60, 0xf0, 0xdc, 0x88,
0x7e, 0x18, 0xe6, 0x84, 0x06, 0x7c, 0x2c, 0x18, 0xe0, 0x63, 0xcf, 0x68,
0xc0, 0xc7, 0x02, 0x02, 0x3e, 0x36, 0x48, 0xf4, 0x31, 0x41, 0xa2, 0xcf,
0x88, 0x81, 0x01, 0x80, 0x20, 0x18, 0x3c, 0x3e, 0x22, 0x22, 0xc2, 0x88,
0x81, 0x01, 0x80, 0x20, 0x18, 0x3c, 0x3f, 0x32, 0x22, 0x82, 0x09, 0xa6,
0x21, 0x1f, 0x13, 0x4e, 0x43, 0x3e, 0x96, 0x1a, 0x42, 0x7c, 0x4c, 0x35,
0x84, 0xf8, 0x98, 0x61, 0xc8, 0xc7, 0x82, 0x41, 0x3e, 0x76, 0x1c, 0xf2,
0xb1, 0x80, 0x90, 0x8f, 0x51, 0x03, 0x7c, 0x8c, 0x12, 0xe0, 0x33, 0x9a,
0x70, 0x06, 0xc0, 0x68, 0x02, 0x1a, 0x04, 0x46, 0x08, 0xf2, 0x31, 0x42,
0x90, 0xcf, 0x88, 0x41, 0x05, 0x80, 0x20, 0x18, 0x4c, 0x6c, 0x32, 0x23,
0xad, 0xb1, 0x1a, 0x42, 0x00, 0x1b, 0xb0, 0x61, 0x26, 0x66, 0x22, 0x22,
0x75, 0x40, 0x07, 0xb0, 0x11, 0x07, 0x70, 0x00, 0x1b, 0xb0, 0x31, 0x9a,
0x10, 0x00, 0x16, 0x80, 0x88, 0x7c, 0x2c, 0x00, 0x11, 0xf8, 0x8c, 0x18,
0x3c, 0x00, 0x08, 0x82, 0x41, 0x33, 0x27, 0x2c, 0x22, 0x1b, 0xb0, 0x11,
0xdc, 0x06, 0x6d, 0xd0, 0x86, 0x9a, 0xa8, 0x89, 0x89, 0xd0, 0xc6, 0x68,
0x42, 0x00, 0x8c, 0x26, 0x08, 0xc1, 0x68, 0xc2, 0x20, 0x8c, 0x26, 0x10,
0xc3, 0x2c, 0xc1, 0x34, 0x1c, 0xb1, 0x1a, 0xf9, 0x11, 0x7c, 0xb3, 0x0c,
0xce, 0x13, 0x8c, 0x18, 0x3c, 0x00, 0x08, 0x82, 0x41, 0x93, 0x27, 0x32,
0x72, 0x1b, 0xb5, 0x31, 0x1b, 0xb2, 0xa1, 0x1b, 0xba, 0x01, 0x27, 0x70,
0xc2, 0x22, 0xba, 0x31, 0x9a, 0x10, 0x00, 0x23, 0x06, 0x0f, 0x00, 0x82,
0x60, 0xd0, 0xec, 0x09, 0x8d, 0xe8, 0xc6, 0x6d, 0xd4, 0x06, 0x6d, 0xf0,
0x06, 0x6f, 0xc8, 0x89, 0x9c, 0xb8, 0x08, 0x6f, 0x8c, 0x26, 0x04, 0xc0,
0x68, 0x82, 0x10, 0x8c, 0x18, 0x1c, 0x00, 0x08, 0x82, 0x01, 0x96, 0x27,
0x32, 0x92, 0x1b, 0x71, 0x32, 0x9a, 0x10, 0x00, 0xa3, 0x09, 0x42, 0x30,
0x9a, 0x30, 0x08, 0x36, 0x20, 0xf0, 0xb1, 0xe1, 0x80, 0x8f, 0x0d, 0x07,
0x7c, 0x46, 0x0c, 0x0e, 0x00, 0x04, 0xc1, 0x00, 0x03, 0x95, 0x1c, 0x01,
0x0f, 0x30, 0x19, 0x4d, 0x08, 0x80, 0xd1, 0x04, 0x21, 0x18, 0x4d, 0x18,
0x84, 0x11, 0x83, 0x05, 0x00, 0x41, 0x30, 0xa8, 0x4a, 0xa5, 0x4c, 0x0e,
0xa3, 0x18, 0x84, 0x60, 0xc4, 0xe0, 0x00, 0x40, 0x10, 0x0c, 0xb0, 0x52,
0xf1, 0x91, 0xf2, 0x38, 0x93, 0xd1, 0x84, 0x00, 0x18, 0x4d, 0x10, 0x82,
0xd1, 0x84, 0x41, 0x18, 0x31, 0x58, 0x00, 0x10, 0x04, 0x83, 0x4a, 0x55,
0xd4, 0x84, 0x59, 0x94, 0x41, 0x08, 0x46, 0x0c, 0x0e, 0x00, 0x04, 0xc1,
0x00, 0x53, 0x95, 0x31, 0x51, 0x0f, 0x52, 0x19, 0x4d, 0x08, 0x80, 0xd1,
0x04, 0x21, 0x18, 0x4d, 0x18, 0x84, 0x11, 0x83, 0x05, 0x00, 0x41, 0x30,
0xa8, 0x5e, 0xe5, 0x4d, 0x22, 0xe8, 0x19, 0x84, 0x60, 0x96, 0x60, 0x1a,
0x8e, 0x38, 0x0f, 0x1a, 0x09, 0xbe, 0x59, 0x06, 0x28, 0x0a, 0x46, 0x0c,
0x1e, 0x00, 0x04, 0xc1, 0xa0, 0xa9, 0x15, 0x37, 0x99, 0x8f, 0xf8, 0x78,
0x0f, 0xf7, 0xb0, 0x0f, 0xfb, 0x60, 0x15, 0x56, 0x41, 0x13, 0xfb, 0x18,
0x4d, 0x08, 0x80, 0x11, 0x83, 0x07, 0x00, 0x41, 0x30, 0x68, 0x6e, 0x05,
0x4e, 0xec, 0x63, 0x3e, 0xe2, 0x03, 0x3e, 0xf0, 0x03, 0x3f, 0x5c, 0xc5,
0x55, 0xd4, 0x04, 0x3f, 0x46, 0x13, 0x02, 0x60, 0x34, 0x41, 0x08, 0x46,
0x0c, 0x0e, 0x00, 0x04, 0xc1, 0x00, 0xab, 0x15, 0x37, 0xa9, 0x8f, 0x56,
0x19, 0x4d, 0x08, 0x80, 0xd1, 0x04, 0x21, 0x18, 0x4d, 0x18, 0x04, 0x1b,
0x10, 0xf8, 0xd8, 0x60, 0xc0, 0xc7, 0x06, 0x04, 0x3e, 0x23, 0x06, 0x07,
0x00, 0x82, 0x60, 0x80, 0xf1, 0x4a, 0x9d, 0xf0, 0x07, 0x9f, 0x8c, 0x26,
0x04, 0xc0, 0x68, 0x82, 0x10, 0x8c, 0x26, 0x0c, 0xc2, 0x88, 0xc1, 0x02,
0x80, 0x20, 0x18, 0x54, 0xe1, 0x12, 0x2a, 0x87, 0x51, 0x0c, 0x42, 0x30,
0x62, 0x70, 0x00, 0x20, 0x08, 0x06, 0x58, 0xb8, 0xe8, 0x49, 0x88, 0x8c,
0xca, 0x68, 0x42, 0x00, 0x8c, 0x26, 0x08, 0xc1, 0x68, 0xc2, 0x20, 0x8c,
0x18, 0x2c, 0x00, 0x08, 0x82, 0x41, 0x65, 0x2e, 0xa6, 0xc2, 0x2c, 0xca,
0x20, 0x04, 0x23, 0x06, 0x07, 0x00, 0x82, 0x60, 0x80, 0x99, 0xcb, 0x9f,
0x98, 0x08, 0xb8, 0x8c, 0x26, 0x04, 0xc0, 0x68, 0x82, 0x10, 0x8c, 0x26,
0x0c, 0xc2, 0x88, 0xc1, 0x02, 0x80, 0x20, 0x18, 0x54, 0xeb, 0xb2, 0x2a,
0x11, 0xf4, 0x0c, 0x42, 0x30, 0x4b, 0x30, 0x0d, 0x47, 0x8c, 0xc8, 0x9b,
0x04, 0xdf, 0x2c, 0x83, 0x34, 0x05, 0x23, 0x06, 0x0f, 0x00, 0x82, 0x60,
0xd0, 0xc4, 0x8b, 0xaa, 0xbc, 0x48, 0x8b, 0xac, 0x88, 0x8a, 0xc8, 0x88,
0x8c, 0xa0, 0x0b, 0xba, 0x90, 0x8a, 0x8c, 0x8c, 0x26, 0x04, 0xc0, 0x88,
0xc1, 0x03, 0x80, 0x20, 0x18, 0x34, 0xf3, 0xc2, 0x2a, 0x32, 0xf2, 0x22,
0x2d, 0xc2, 0x22, 0x34, 0x42, 0x23, 0xea, 0xa2, 0x2e, 0xa6, 0x42, 0x23,
0xa3, 0x09, 0x01, 0x30, 0x62, 0xf0, 0x00, 0x20, 0x08, 0x06, 0x4d, 0xbd,
0xb8, 0x4a, 0x8d, 0xc4, 0xc8, 0x8b, 0xb8, 0x88, 0x8d, 0xd8, 0x08, 0xbb,
0xb0, 0x0b, 0xaa, 0xd8, 0xc8, 0x68, 0x42, 0x00, 0x8c, 0x18, 0x1c, 0x00,
0x08, 0x82, 0x01, 0x26, 0x2f, 0xab, 0x22, 0x23, 0xea, 0x32, 0x9a, 0x10,
0x00, 0xa3, 0x09, 0x42, 0x30, 0x9a, 0x30, 0x08, 0x36, 0x24, 0xf0, 0xb1,
0x01, 0x81, 0x8f, 0x0d, 0x07, 0x7c, 0x46, 0x0c, 0x0e, 0x00, 0x04, 0xc1,
0x00, 0xcb, 0x17, 0x59, 0xc9, 0x91, 0x5c, 0x19, 0x4d, 0x08, 0x80, 0xd1,
0x04, 0x21, 0x18, 0x4d, 0x18, 0x84, 0x11, 0x83, 0x05, 0x00, 0x41, 0x30,
0xa8, 0xfc, 0xc5, 0x57, 0x0e, 0xa3, 0x18, 0x84, 0x60, 0xc4, 0xe0, 0x00,
0x40, 0x10, 0x0c, 0x30, 0x7f, 0xb9, 0x15, 0x1f, 0x01, 0x97, 0xd1, 0x84,
0x00, 0x18, 0x4d, 0x10, 0x82, 0xd1, 0x84, 0x41, 0x18, 0x31, 0x58, 0x00,
0x10, 0x04, 0x83, 0x6a, 0x64, 0xc6, 0x85, 0x59, 0x94, 0x41, 0x08, 0x46,
0x0c, 0x0e, 0x00, 0x04, 0xc1, 0x00, 0x1b, 0x19, 0x5e, 0x19, 0x93, 0x7e,
0x19, 0x4d, 0x08, 0x80, 0xd1, 0x04, 0x21, 0x18, 0x4d, 0x18, 0x84, 0x11,
0x83, 0x05, 0x00, 0x41, 0x30, 0xa8, 0x50, 0x06, 0x5d, 0x22, 0xe8, 0x19,
0x84, 0x60, 0x96, 0x60, 0x1a, 0xe8, 0x1a, 0x7c, 0x09, 0xc0, 0x23, 0x41,
0x74, 0x08, 0xbb, 0x31, 0x44, 0x05, 0x81, 0x13, 0x45, 0x2e, 0x18, 0x94,
0x70, 0x60, 0x01, 0xb2, 0x24, 0x5f, 0x8a, 0x06, 0xba, 0x06, 0x70, 0x02,
0xf0, 0x48, 0x10, 0x1d, 0xc2, 0x6e, 0x0c, 0x51, 0x41, 0xe0, 0x44, 0x91,
0x0b, 0x06, 0x24, 0x1c, 0x54, 0x80, 0x1c, 0x49, 0x9c, 0xa2, 0x81, 0xae,
0x41, 0x9c, 0x00, 0x3c, 0x12, 0x44, 0x87, 0xb0, 0x1b, 0x43, 0x54, 0x10,
0x38, 0x51, 0xe4, 0x82, 0xc1, 0x07, 0x07, 0x14, 0x20, 0x43, 0x22, 0xa7,
0x68, 0xa0, 0x6b, 0x20, 0x27, 0x00, 0x8f, 0x04, 0xd1, 0x21, 0xc8, 0xc9,
0x20, 0x27, 0x04, 0x4e, 0x14, 0xb9, 0x60, 0xc8, 0xc9, 0x21, 0x27, 0x88,
0x9c, 0x24, 0x72, 0x8a, 0x46, 0x13, 0xca, 0x44, 0x18, 0x8e, 0x08, 0xf0,
0x24, 0xf8, 0x66, 0x19, 0xa8, 0x2a, 0x18, 0x31, 0x30, 0x00, 0x10, 0x04,
0x83, 0x47, 0x66, 0x50, 0xc6, 0x18, 0x31, 0x30, 0x00, 0x10, 0x04, 0x83,
0x67, 0x66, 0x52, 0xc6, 0x18, 0x31, 0x30, 0x00, 0x10, 0x04, 0x83, 0x87,
0x66, 0x54, 0xc6, 0x18, 0x31, 0x30, 0x00, 0x10, 0x04, 0x83, 0xa7, 0x66,
0xda, 0x65, 0x18, 0x31, 0x30, 0x00, 0x10, 0x04, 0x83, 0xc7, 0x66, 0xdc,
0x65, 0x18, 0x31, 0x30, 0x00, 0x10, 0x04, 0x83, 0xe7, 0x66, 0xde, 0x65,
0xb0, 0xe1, 0x54, 0xe4, 0x63, 0x03, 0xaa, 0xc8, 0xc7, 0x86, 0x54, 0x91,
0xcf, 0x88, 0x81, 0x01, 0x80, 0x20, 0x18, 0x3c, 0x3b, 0x43, 0x2f, 0xc3,
0x88, 0x81, 0x01, 0x80, 0x20, 0x18, 0x3c, 0x3c, 0x53, 0x2f, 0xc3, 0x88,
0x81, 0x01, 0x80, 0x20, 0x18, 0x3c, 0x3d, 0x63, 0x2f, 0x83, 0x0d, 0xae,
0x02, 0x1f, 0x1b, 0x5e, 0x05, 0x3e, 0x36, 0xc0, 0x0a, 0x7c, 0x46, 0x0c,
0x0e, 0x00, 0x04, 0xc1, 0x20, 0x02, 0x1b, 0x7c, 0x19, 0x4a, 0x65, 0xc4,
0xe0, 0x00, 0x40, 0x10, 0x0c, 0xa2, 0xb0, 0xc9, 0x97, 0xc1, 0x54, 0x46,
0x0c, 0x0e, 0x00, 0x04, 0xc1, 0x20, 0x12, 0x1b, 0x7d, 0x19, 0x4e, 0xc5,
0x92, 0x5a, 0x91, 0x8f, 0x25, 0xb6, 0x22, 0x1f, 0x4b, 0x6e, 0x45, 0x3e,
0x96, 0x2b, 0x43, 0x7c, 0x4c, 0x57, 0x86, 0xf8, 0xd8, 0xae, 0x0c, 0xf1,
0xb1, 0x64, 0xa0, 0x8f, 0x25, 0x03, 0x7d, 0x2c, 0x19, 0xe8, 0x33, 0x62,
0x60, 0x00, 0x20, 0x08, 0x06, 0x4f, 0xdb, 0x8c, 0xcd, 0x30, 0x62, 0x60,
0x00, 0x20, 0x08, 0x06, 0x8f, 0xdb, 0x90, 0xcd, 0x30, 0x62, 0x60, 0x00,
0x20, 0x08, 0x06, 0xcf, 0xdb, 0x94, 0xcd, 0x30, 0x62, 0x60, 0x00, 0x20,
0x08, 0x06, 0x0f, 0xdc, 0xa0, 0xcc, 0x30, 0x62, 0x60, 0x00, 0x20, 0x08,
0x06, 0x4f, 0xdc, 0xa4, 0xcc, 0x30, 0x62, 0x60, 0x00, 0x20, 0x08, 0x06,
0x8f, 0xdc, 0xa8, 0xcc, 0x60, 0x83, 0xb9, 0xc8, 0xc7, 0x86, 0x73, 0x91,
0x8f, 0x0d, 0xe8, 0x22, 0x9f, 0x11, 0x03, 0x03, 0x00, 0x41, 0x30, 0x78,
0xec, 0xe6, 0x65, 0x86, 0x11, 0x03, 0x03, 0x00, 0x41, 0x30, 0x78, 0xee,
0x06, 0x66, 0x86, 0x11, 0x03, 0x03, 0x00, 0x41, 0x30, 0x78, 0xf0, 0x26,
0x66, 0x06, 0x1b, 0xda, 0x45, 0x3e, 0x36, 0xb8, 0x8b, 0x7c, 0x6c, 0x78,
0x17, 0xf9, 0x8c, 0x18, 0x1c, 0x00, 0x08, 0x82, 0x01, 0x86, 0x37, 0x31,
0x83, 0x2b, 0x71, 0x33, 0x9a, 0x10, 0x0c, 0x56, 0x04, 0xf4, 0xb1, 0x42,
0xa0, 0x8f, 0x15, 0x03, 0x7d, 0x66, 0x09, 0xaa, 0x81, 0x8a, 0xc1, 0xa0,
0xd4, 0x61, 0x1a, 0xa8, 0x18, 0x0c, 0x4a, 0x1d, 0xa6, 0x81, 0x8a, 0xc1,
0xa0, 0xd4, 0x61, 0x1a, 0x31, 0x38, 0x00, 0x10, 0x04, 0x03, 0x0c, 0x74,
0x72, 0x06, 0x5c, 0xf2, 0x66, 0x34, 0x21, 0x00, 0x86, 0x23, 0x02, 0x75,
0x71, 0xbe, 0x59, 0x06, 0xeb, 0x0b, 0x86, 0x23, 0x04, 0x75, 0x09, 0xbe,
0x59, 0x86, 0x0b, 0x0b, 0x46, 0x13, 0x88, 0xc0, 0x02, 0x44, 0x3e, 0x26,
0x20, 0xf2, 0xb1, 0x01, 0x91, 0xcf, 0x2c, 0xc1, 0x37, 0x1c, 0x71, 0xc8,
0x4b, 0xf0, 0xcd, 0x32, 0x64, 0x5f, 0x30, 0x1c, 0xd1, 0x07, 0xf3, 0x12,
0x7c, 0xb3, 0x0c, 0xda, 0x16, 0x58, 0xd3, 0x32, 0xf2, 0x19, 0x31, 0x40,
0x00, 0x10, 0x04, 0x03, 0x4d, 0x75, 0xca, 0xa6, 0x65, 0x9a, 0x60, 0xc4,
0x00, 0x01, 0x40, 0x10, 0x0c, 0xb4, 0xd5, 0x31, 0x9b, 0x96, 0x69, 0x02,
0x83, 0x5a, 0x46, 0x3e, 0x23, 0x06, 0x08, 0x00, 0x82, 0x60, 0xa0, 0xb5,
0x0e, 0xda, 0xb4, 0x0c, 0x14, 0x8c, 0x18, 0x20, 0x00, 0x08, 0x82, 0x81,
0xe6, 0x3a, 0x69, 0xd3, 0x32, 0x50, 0x60, 0x53, 0xcb, 0xc8, 0x67, 0xc4,
0x00, 0x01, 0x40, 0x10, 0x0c, 0x34, 0xd8, 0x59, 0x9b, 0x96, 0x99, 0x82,
0x11, 0x03, 0x04, 0x00, 0x41, 0x30, 0xd0, 0x62, 0x87, 0x6d, 0x5a, 0x66,
0x0a, 0x66, 0x09, 0xb6, 0x81, 0x8a, 0xc1, 0xd1, 0xd8, 0x20, 0x1b, 0xa8,
0x18, 0x14, 0x8d, 0x0d, 0xb2, 0x81, 0x8a, 0xc1, 0xd0, 0xd8, 0x20, 0x1b,
0x31, 0x38, 0x00, 0x10, 0x04, 0x83, 0x28, 0x77, 0xe2, 0x46, 0x08, 0x46,
0x0c, 0x0e, 0x00, 0x04, 0xc1, 0x20, 0xd2, 0x1d, 0xb9, 0x21, 0x82, 0xe1,
0x88, 0x00, 0x64, 0x84, 0x6f, 0x96, 0x81, 0xeb, 0x82, 0xd1, 0x84, 0x2c,
0xb0, 0x21, 0x90, 0x8f, 0x05, 0x22, 0x03, 0x9f, 0xd1, 0x04, 0x4e, 0x30,
0x23, 0x90, 0x8f, 0x05, 0x25, 0x03, 0x1f, 0x23, 0x02, 0xfa, 0x58, 0xd0,
0xc8, 0xc7, 0x84, 0x46, 0x3e, 0x36, 0x34, 0xf2, 0x99, 0x25, 0xe8, 0x06,
0x2a, 0x06, 0x83, 0x03, 0x83, 0x6d, 0xa0, 0x62, 0x30, 0x38, 0x30, 0xd8,
0x06, 0x2a, 0x06, 0x83, 0x03, 0x83, 0x6d, 0x96, 0xc1, 0xfb, 0x3a, 0x1b,
0xf0, 0x46, 0x3e, 0x23, 0x06, 0x08, 0x00, 0x82, 0x60, 0xa0, 0x99, 0x4f,
0xe8, 0xe0, 0xcd, 0x10, 0x8c, 0x18, 0x20, 0x00, 0x08, 0x82, 0x81, 0x76,
0x3e, 0xa2, 0x83, 0x37, 0x43, 0x60, 0x06, 0xde, 0xc8, 0x67, 0xc4, 0x00,
0x01, 0x40, 0x10, 0x0c, 0xb4, 0xf4, 0x21, 0x1d, 0xbc, 0x31, 0x82, 0x11,
0x03, 0x04, 0x00, 0x41, 0x30, 0xd0, 0xd4, 0xa7, 0x74, 0xf0, 0xc6, 0x08,
0x2c, 0xc1, 0x1b, 0xf9, 0x8c, 0x18, 0x20, 0x00, 0x08, 0x82, 0x81, 0xc6,
0x3e, 0xa7, 0x83, 0x37, 0x49, 0x30, 0x62, 0x80, 0x00, 0x20, 0x08, 0x06,
0x5a, 0xfb, 0xa0, 0x0e, 0xde, 0x24, 0xc1, 0x2c, 0xc1, 0x37, 0xd0, 0x32,
0x90, 0x43, 0x45, 0x0b, 0x97, 0xe3, 0x61, 0x1d, 0x39, 0x60, 0x03, 0x2d,
0x03, 0x39, 0x54, 0xb4, 0x70, 0x29, 0x1e, 0xd6, 0x91, 0x03, 0x36, 0xd0,
0x32, 0x90, 0x43, 0x45, 0x0b, 0x97, 0xe1, 0x61, 0x1d, 0x39, 0x60, 0xc3,
0x11, 0xe6, 0x90, 0x33, 0xc1, 0x37, 0xcb, 0x00, 0x06, 0x6b, 0x10, 0x8c,
0x26, 0xb0, 0x0c, 0x30, 0x1c, 0x11, 0xf0, 0x8c, 0xf3, 0xcd, 0x32, 0x84,
0x81, 0x1a, 0x04, 0xc3, 0x11, 0x86, 0xdb, 0x28, 0xdf, 0x2c, 0xc3, 0x18,
0x88, 0x41, 0x60, 0x07, 0xdc, 0xc8, 0x67, 0x96, 0x80, 0x0c, 0x0c, 0x71,
0x1d, 0xf8, 0x8c, 0x18, 0x18, 0x00, 0x08, 0x82, 0xc1, 0xc3, 0x3f, 0xf2,
0x13, 0x58, 0xf0, 0x3a, 0xf2, 0x19, 0x31, 0x30, 0x00, 0x10, 0x04, 0x83,
0xc7, 0x7f, 0x6c, 0x27, 0xb0, 0x00, 0x76, 0xe4, 0x33, 0x62, 0x60, 0x00,
0x20, 0x08, 0x06, 0x0f, 0x08, 0xe5, 0x4e, 0x30, 0x4b, 0x40, 0x06, 0x03,
0x15, 0x83, 0x23, 0x06, 0xc2, 0x18, 0x0c, 0x47, 0x38, 0x77, 0xa3, 0x7c,
0xb3, 0x0c, 0x66, 0x50, 0x06, 0x81, 0x3d, 0x79, 0x23, 0x9f, 0x59, 0x82,
0x33, 0x30, 0xe8, 0x76, 0xe0, 0x33, 0x62, 0x60, 0x00, 0x20, 0x08, 0x06,
0x4f, 0x09, 0xed, 0x4f, 0x60, 0x01, 0xee, 0xc8, 0x67, 0xc4, 0xc0, 0x00,
0x40, 0x10, 0x0c, 0x9e, 0x13, 0xfa, 0x9d, 0xc0, 0x82, 0xdc, 0x91, 0xcf,
0x88, 0x81, 0x01, 0x80, 0x20, 0x18, 0x3c, 0x29, 0x24, 0x3e, 0xc1, 0x2c,
0xc1, 0x19, 0x0c, 0x54, 0x0c, 0x4e, 0x19, 0x08, 0x66, 0x30, 0x1c, 0x61,
0x81, 0x8e, 0xf2, 0xcd, 0x32, 0xa4, 0x01, 0x1a, 0x04, 0x76, 0x89, 0x8e,
0x7c, 0x66, 0x09, 0xd4, 0xc0, 0x30, 0xf0, 0x81, 0xcf, 0x88, 0x81, 0x01,
0x80, 0x20, 0x18, 0x3c, 0x2e, 0x44, 0x42, 0x81, 0x05, 0xe1, 0x23, 0x9f,
0x11, 0x03, 0x03, 0x00, 0x41, 0x30, 0x78, 0x60, 0x08, 0x7d, 0x02, 0x0b,
0xc4, 0x47, 0x3e, 0x23, 0x06, 0x06, 0x00, 0x82, 0x60, 0xf0, 0xc8, 0xd0,
0xfa, 0x04, 0xb3, 0x04, 0x6a, 0x30, 0xd0, 0x31, 0x90, 0x41, 0x1a, 0x90,
0x01, 0x1a, 0x80, 0x02, 0x18, 0x0c, 0x74, 0x0c, 0x54, 0x1a, 0x50, 0x68,
0x00, 0x0a, 0x60, 0x30, 0xd0, 0x31, 0x18, 0x69, 0x20, 0xa1, 0x01, 0x28,
0x80, 0xc1, 0x68, 0xc2, 0xda, 0x0c, 0x46, 0x04, 0xf2, 0x31, 0x42, 0x90,
0x8f, 0x11, 0x83, 0x7c, 0x66, 0x09, 0x48, 0x61, 0x38, 0x42, 0x25, 0x40,
0x27, 0xf8, 0x46, 0x13, 0xe0, 0x66, 0x98, 0x65, 0x60, 0x83, 0x3b, 0x10,
0x2c, 0x0d, 0x02, 0xf9, 0x58, 0x1a, 0x08, 0xf2, 0xb1, 0x34, 0x18, 0xe4,
0x33, 0x9a, 0x40, 0x37, 0xc0, 0x70, 0x44, 0x40, 0x3a, 0xce, 0x37, 0xcb,
0x40, 0x0a, 0x6d, 0x10, 0x0c, 0x47, 0x14, 0xab, 0xa3, 0x7c, 0xb3, 0x0c,
0x6f, 0xe0, 0x06, 0x81, 0x19, 0xad, 0x23, 0x9f, 0x59, 0x02, 0x38, 0x18,
0x31, 0x30, 0x00, 0x10, 0x04, 0x83, 0x67, 0x8c, 0x72, 0xe8, 0x18, 0x31,
0x30, 0x00, 0x10, 0x04, 0x83, 0x87, 0x8c, 0xf8, 0x27, 0xb0, 0x20, 0x76,
0xe4, 0x33, 0x62, 0x60, 0x00, 0x20, 0x08, 0x06, 0x8f, 0x19, 0xfd, 0x4f,
0x60, 0x01, 0xed, 0xc8, 0xc7, 0x02, 0xdb, 0x81, 0xcf, 0x2c, 0x01, 0x1c,
0x0c, 0x54, 0x0c, 0x8e, 0x1b, 0x08, 0x6f, 0x30, 0x1c, 0xd1, 0xd0, 0x8e,
0xf2, 0xcd, 0x32, 0xc8, 0x41, 0x1c, 0x04, 0xe6, 0xd8, 0x8e, 0x7c, 0x66,
0x09, 0xe6, 0x60, 0xc4, 0xc0, 0x00, 0x40, 0x10, 0x0c, 0x1e, 0x36, 0x12,
0xa3, 0x67, 0xc4, 0xc0, 0x00, 0x40, 0x10, 0x0c, 0x9e, 0x36, 0x2a, 0xa1,
0xc0, 0x02, 0xdd, 0x91, 0xcf, 0x88, 0x81, 0x01, 0x80, 0x20, 0x18, 0x3c,
0x6f, 0x84, 0x42, 0x81, 0x05, 0xbd, 0x23, 0x1f, 0x0b, 0x7e, 0x07, 0x3e,
0xb3, 0x04, 0x73, 0x30, 0x50, 0x31, 0x38, 0x71, 0x20, 0xc8, 0xc1, 0x70,
0x44, 0xd5, 0x3b, 0xca, 0x37, 0xcb, 0x50, 0x07, 0x74, 0x10, 0x98, 0xf5,
0x3b, 0xf2, 0x99, 0x25, 0xb0, 0x83, 0x11, 0x03, 0x03, 0x00, 0x41, 0x30,
0x78, 0xea, 0x68, 0x8d, 0xae, 0x11, 0x03, 0x03, 0x00, 0x41, 0x30, 0x78,
0xec, 0xc8, 0x85, 0x02, 0x0b, 0xc6, 0x47, 0x3e, 0x23, 0x06, 0x06, 0x00,
0x82, 0x60, 0xf0, 0xe0, 0x51, 0x0c, 0x05, 0x16, 0x98, 0x8f, 0x7c, 0x2c,
0x40, 0x1f, 0xf8, 0xcc, 0x12, 0xd8, 0xc1, 0x40, 0xc5, 0xe0, 0xd0, 0x81,
0x50, 0x07, 0x23, 0x06, 0x07, 0x00, 0x82, 0x60, 0x10, 0xed, 0xd1, 0x0c,
0x4d, 0xe0, 0x33, 0x62, 0x70, 0x00, 0x20, 0x08, 0x06, 0x11, 0x1f, 0xd1,
0xd0, 0x12, 0x3e, 0x23, 0x06, 0x07, 0x00, 0x82, 0x60, 0x10, 0xf5, 0x51,
0x0d, 0x0d, 0xe2, 0x33, 0x62, 0x70, 0x00, 0x20, 0x08, 0x06, 0x91, 0x1f,
0xe9, 0xd0, 0x20, 0x3e, 0x23, 0x06, 0x07, 0x00, 0x82, 0x60, 0x10, 0xfd,
0xd1, 0x0e, 0x0d, 0xe3, 0x33, 0x62, 0x70, 0x00, 0x20, 0x08, 0x06, 0x11,
0x28, 0xf1, 0xd0, 0x40, 0x3e, 0xb3, 0x04, 0xa4, 0x30, 0xcb, 0x80, 0x07,
0xa3, 0x10, 0x17, 0xf6, 0x0a, 0x30, 0x24, 0x9f, 0x11, 0x03, 0x04, 0x00,
0x41, 0x30, 0xd0, 0xfc, 0x28, 0x87, 0x60, 0xe8, 0x15, 0x82, 0x11, 0x03,
0x04, 0x00, 0x41, 0x30, 0xd0, 0xfe, 0x48, 0x87, 0x60, 0xe8, 0x15, 0x02,
0x93, 0x05, 0x18, 0x92, 0xcf, 0x88, 0x01, 0x02, 0x80, 0x20, 0x18, 0x68,
0xa1, 0xc4, 0x43, 0x30, 0x24, 0x0b, 0xc1, 0x88, 0x01, 0x02, 0x80, 0x20,
0x18, 0x68, 0xa2, 0xd4, 0x43, 0x30, 0x24, 0x0b, 0x81, 0xd5, 0x02, 0x0c,
0xc9, 0x67, 0xc4, 0x00, 0x01, 0x40, 0x10, 0x0c, 0x34, 0x52, 0xfa, 0x21,
0x18, 0xaa, 0x85, 0x60, 0xc4, 0x00, 0x01, 0x40, 0x10, 0x0c, 0xb4, 0x52,
0x02, 0x23, 0x18, 0xaa, 0x85, 0xc0, 0x0e, 0x38, 0x90, 0x8f, 0x15, 0x71,
0x20, 0x1f, 0x1b, 0xe4, 0x40, 0x3e, 0xa3, 0x09, 0xe3, 0x03, 0x0c, 0x47,
0x04, 0xf3, 0xe3, 0x7c, 0xb3, 0x0c, 0xa4, 0x90, 0x07, 0xc1, 0x70, 0x44,
0xa1, 0x3f, 0xca, 0x37, 0xcb, 0xb0, 0x07, 0x7a, 0x10, 0x98, 0xc1, 0x3f,
0xf2, 0x99, 0x25, 0xe0, 0x83, 0x11, 0x03, 0x03, 0x00, 0x41, 0x30, 0x78,
0x64, 0x09, 0x95, 0x8e, 0x11, 0x03, 0x03, 0x00, 0x41, 0x30, 0x78, 0x66,
0x69, 0x8d, 0x02, 0x0b, 0x40, 0x48, 0x3e, 0x23, 0x06, 0x06, 0x00, 0x82,
0x60, 0xf0, 0xd4, 0x92, 0x1b, 0x05, 0x16, 0x8c, 0x90, 0x7c, 0x2c, 0x28,
0x21, 0xf8, 0xcc, 0x12, 0xf0, 0xc1, 0x40, 0xc5, 0xe0, 0xe8, 0x81, 0xb0,
0x07, 0xc3, 0x11, 0xcd, 0x08, 0x29, 0xdf, 0x2c, 0x83, 0x1f, 0xf4, 0x41,
0x60, 0x4e, 0x09, 0xc9, 0x67, 0x96, 0xe0, 0x0f, 0x46, 0x0c, 0x0c, 0x00,
0x04, 0xc1, 0xe0, 0xd9, 0xa5, 0x58, 0x7a, 0x46, 0x0c, 0x0c, 0x00, 0x04,
0xc1, 0xe0, 0xe1, 0x25, 0x3a, 0x0a, 0x2c, 0x48, 0x21, 0xf9, 0x8c, 0x18,
0x18, 0x00, 0x08, 0x82, 0xc1, 0xe3, 0x4b, 0x77, 0x14, 0x58, 0xc0, 0x42,
0xf2, 0xb1, 0xc0, 0x85, 0xe0, 0x33, 0x4b, 0xf0, 0x07, 0x03, 0x15, 0x83,
0xd3, 0x07, 0x82, 0x1f, 0x0c, 0x47, 0x54, 0x2c, 0xa4, 0x7c, 0xb3, 0x0c,
0xa1, 0x00, 0x0a, 0x81, 0x59, 0x2e, 0x24, 0x9f, 0x59, 0x02, 0x51, 0x18,
0x31, 0x30, 0x00, 0x10, 0x04, 0x83, 0x87, 0x9c, 0x74, 0xe9, 0x1a, 0x31,
0x30, 0x00, 0x10, 0x04, 0x83, 0xa7, 0x9c, 0xfa, 0x28, 0xb0, 0x40, 0x86,
0xe4, 0x33, 0x62, 0x60, 0x00, 0x20, 0x08, 0x06, 0xcf, 0x39, 0x81, 0x52,
0x60, 0x41, 0x0d, 0xc9, 0xc7, 0x82, 0x1b, 0x82, 0xcf, 0x2c, 0x81, 0x28,
0x0c, 0x54, 0x0c, 0x0e, 0x28, 0x08, 0xa1, 0x30, 0x62, 0x70, 0x00, 0x20,
0x08, 0x06, 0x91, 0x3a, 0x89, 0xd2, 0xf4, 0x42, 0x23, 0x06, 0x07, 0x00,
0x82, 0x60, 0x10, 0xad, 0xd3, 0x28, 0x2d, 0x30, 0x34, 0x62, 0x70, 0x00,
0x20, 0x08, 0x06, 0x11, 0x3b, 0x91, 0xd2, 0x10, 0x43, 0x23, 0x06, 0x07,
0x00, 0x82, 0x60, 0x10, 0xb5, 0x53, 0x2a, 0x0d, 0x31, 0x34, 0x62, 0x70,
0x00, 0x20, 0x08, 0x06, 0x91, 0x3b, 0xa9, 0xd2, 0x20, 0x43, 0x23, 0x06,
0x07, 0x00, 0x82, 0x60, 0x10, 0xbd, 0xd3, 0x2a, 0x0d, 0x33, 0x34, 0x4b,
0x40, 0x0a, 0xe6, 0x0f, 0xb6, 0x20, 0x1f, 0xf3, 0x87, 0x5b, 0x90, 0x8f,
0xf9, 0x03, 0x2e, 0xc8, 0x67, 0x96, 0x80, 0x14, 0x06, 0x6a, 0x06, 0xbd,
0x50, 0x03, 0x63, 0x14, 0xd4, 0xc1, 0x0e, 0xe0, 0x82, 0x0d, 0x18, 0x51,
0x90, 0x05, 0x3c, 0x18, 0xa8, 0x19, 0xf4, 0x42, 0x0d, 0x8c, 0x51, 0x50,
0x07, 0x3b, 0x80, 0x0b, 0x36, 0x60, 0x44, 0x41, 0x16, 0xf0, 0x60, 0xa0,
0x66, 0xd0, 0x0b, 0x35, 0x30, 0x46, 0x41, 0x1d, 0xec, 0x00, 0x2e, 0xd8,
0x80, 0x11, 0x05, 0x59, 0xc0, 0x03, 0x1b, 0x60, 0x48, 0x3e, 0x36, 0xc0,
0x90, 0x7c, 0x6c, 0x80, 0x21, 0xf9, 0xd8, 0x7a, 0xc0, 0x90, 0x7c, 0x46,
0x0c, 0x12, 0x00, 0x04, 0xc1, 0x00, 0xe9, 0xa7, 0x5c, 0x9a, 0xa7, 0x79,
0x5a, 0x27, 0x62, 0xc4, 0x20, 0x01, 0x40, 0x10, 0x0c, 0x90, 0x7e, 0xca,
0xa5, 0x79, 0x9a, 0x27, 0x71, 0x1a, 0x46, 0x0c, 0x12, 0x00, 0x04, 0xc1,
0x00, 0xe9, 0xa7, 0x5c, 0x9a, 0xa7, 0x79, 0x52, 0x27, 0x61, 0xc4, 0x20,
0x01, 0x40, 0x10, 0x0c, 0x90, 0x7e, 0xca, 0xa5, 0x79, 0x9a, 0xa7, 0x70,
0x0a, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
};
static const unsigned int texture_advanced_frag_dxil_len = 9956;

View File

@@ -0,0 +1,282 @@
cbuffer Constants : register(b0, space3)
{
float scRGB_output;
float texture_type;
float input_type;
float color_scale;
float4 texel_size;
float tonemap_method;
float tonemap_factor1;
float tonemap_factor2;
float sdr_white_point;
float4 Yoffset;
float4 Rcoeff;
float4 Gcoeff;
float4 Bcoeff;
};
Texture2D texture0 : register(t0, space2);
Texture2D texture1 : register(t1, space2);
Texture2D texture2 : register(t2, space2);
SamplerState sampler0 : register(s0, space2);
SamplerState sampler1 : register(s1, space2);
struct PSInput {
float4 v_color : COLOR0;
float2 v_uv : TEXCOORD0;
};
struct PSOutput {
float4 o_color : SV_Target;
};
// These should mirror the definitions in SDL_render_gpu.c
static const float TONEMAP_NONE = 0;
static const float TONEMAP_LINEAR = 1;
static const float TONEMAP_CHROME = 2;
static const float TEXTURETYPE_NONE = 0;
static const float TEXTURETYPE_RGB = 1;
static const float TEXTURETYPE_RGB_PIXELART = 2;
static const float TEXTURETYPE_RGBA = 3;
static const float TEXTURETYPE_RGBA_PIXELART = 4;
static const float TEXTURETYPE_PALETTE = 5;
static const float TEXTURETYPE_PALETTE_PIXELART = 6;
static const float TEXTURETYPE_NV12 = 7;
static const float TEXTURETYPE_NV21 = 8;
static const float TEXTURETYPE_YUV = 9;
static const float INPUTTYPE_UNSPECIFIED = 0;
static const float INPUTTYPE_SRGB = 1;
static const float INPUTTYPE_SCRGB = 2;
static const float INPUTTYPE_HDR10 = 3;
static const float3x3 mat709to2020 = {
{ 0.627404, 0.329283, 0.043313 },
{ 0.069097, 0.919541, 0.011362 },
{ 0.016391, 0.088013, 0.895595 }
};
static const float3x3 mat2020to709 = {
{ 1.660496, -0.587656, -0.072840 },
{ -0.124547, 1.132895, -0.008348 },
{ -0.018154, -0.100597, 1.118751 }
};
float sRGBtoLinear(float v)
{
if (v <= 0.04045) {
v = (v / 12.92);
} else {
v = pow(abs(v + 0.055) / 1.055, 2.4);
}
return v;
}
float sRGBfromLinear(float v)
{
if (v <= 0.0031308) {
v = (v * 12.92);
} else {
v = (pow(abs(v), 1.0 / 2.4) * 1.055 - 0.055);
}
return v;
}
float3 PQtoLinear(float3 v)
{
const float c1 = 0.8359375;
const float c2 = 18.8515625;
const float c3 = 18.6875;
const float oo_m1 = 1.0 / 0.1593017578125;
const float oo_m2 = 1.0 / 78.84375;
float3 num = max(pow(abs(v), oo_m2) - c1, 0.0);
float3 den = c2 - c3 * pow(abs(v), oo_m2);
return (10000.0 * pow(abs(num / den), oo_m1) / sdr_white_point);
}
float3 ApplyTonemap(float3 v)
{
if (tonemap_method == TONEMAP_LINEAR) {
v *= tonemap_factor1;
} else if (tonemap_method == TONEMAP_CHROME) {
if (input_type == INPUTTYPE_SCRGB) {
// Convert to BT.2020 colorspace for tone mapping
v = mul(mat709to2020, v);
}
float vmax = max(v.r, max(v.g, v.b));
if (vmax > 0.0) {
float scale = (1.0 + tonemap_factor1 * vmax) / (1.0 + tonemap_factor2 * vmax);
v *= scale;
}
if (input_type == INPUTTYPE_SCRGB) {
// Convert to BT.709 colorspace after tone mapping
v = mul(mat2020to709, v);
}
}
return v;
}
float2 GetPixelArtUV(PSInput input)
{
// box filter size in texel units
float2 boxSize = clamp(fwidth(input.v_uv) * texel_size.zw, 1e-5, 1);
// scale uv by texture size to get texel coordinate
float2 tx = input.v_uv * texel_size.zw - 0.5 * boxSize;
// compute offset for pixel-sized box filter
float2 txOffset = smoothstep(1 - boxSize, 1, frac(tx));
// compute bilinear sample uv coordinates
float2 uv = (floor(tx) + 0.5 + txOffset) * texel_size.xy;
return uv;
}
float4 GetInputColor(PSInput input)
{
float4 rgba;
if (texture_type == TEXTURETYPE_NONE) {
rgba = 1.0;
} else if (texture_type == TEXTURETYPE_RGBA) {
rgba = texture0.Sample(sampler0, input.v_uv);
} else if (texture_type == TEXTURETYPE_RGBA_PIXELART) {
float2 uv = GetPixelArtUV(input);
rgba = texture0.SampleGrad(sampler0, uv, ddx(input.v_uv), ddy(input.v_uv));
} else if (texture_type == TEXTURETYPE_RGB) {
rgba = float4(texture0.Sample(sampler0, input.v_uv).rgb, 1.0);
} else if (texture_type == TEXTURETYPE_RGB_PIXELART) {
float2 uv = GetPixelArtUV(input);
rgba = float4(texture0.SampleGrad(sampler0, uv, ddx(input.v_uv), ddy(input.v_uv)).rgb, 1.0);
} else if (texture_type == TEXTURETYPE_PALETTE) {
float index = texture0.Sample(sampler0, input.v_uv).r * 255;
rgba = texture1.Sample(sampler1, float2((index + 0.5) / 256, 0.5));
} else if (texture_type == TEXTURETYPE_PALETTE_PIXELART) {
float2 uv = GetPixelArtUV(input);
float index = texture0.SampleGrad(sampler0, uv, ddx(input.v_uv), ddy(input.v_uv)).r * 255;
rgba = texture1.Sample(sampler1, float2((index + 0.5) / 256, 0.5));
} else if (texture_type == TEXTURETYPE_NV12) {
float3 yuv;
yuv.x = texture0.Sample(sampler0, input.v_uv).r;
yuv.yz = texture1.Sample(sampler0, input.v_uv).rg;
yuv += Yoffset.xyz;
rgba.r = dot(yuv, Rcoeff.xyz);
rgba.g = dot(yuv, Gcoeff.xyz);
rgba.b = dot(yuv, Bcoeff.xyz);
rgba.a = 1.0;
} else if (texture_type == TEXTURETYPE_NV21) {
float3 yuv;
yuv.x = texture0.Sample(sampler0, input.v_uv).r;
yuv.yz = texture1.Sample(sampler0, input.v_uv).gr;
yuv += Yoffset.xyz;
rgba.r = dot(yuv, Rcoeff.xyz);
rgba.g = dot(yuv, Gcoeff.xyz);
rgba.b = dot(yuv, Bcoeff.xyz);
rgba.a = 1.0;
} else if (texture_type == TEXTURETYPE_YUV) {
float3 yuv;
yuv.x = texture0.Sample(sampler0, input.v_uv).r;
yuv.y = texture1.Sample(sampler0, input.v_uv).r;
yuv.z = texture2.Sample(sampler0, input.v_uv).r;
yuv += Yoffset.xyz;
rgba.r = dot(yuv, Rcoeff.xyz);
rgba.g = dot(yuv, Gcoeff.xyz);
rgba.b = dot(yuv, Bcoeff.xyz);
rgba.a = 1.0;
} else {
// Error!
rgba.r = 1.0;
rgba.g = 0.0;
rgba.b = 0.0;
rgba.a = 1.0;
}
return rgba;
}
float4 GetOutputColor(float4 rgba)
{
float4 output;
output.rgb = rgba.rgb * color_scale;
output.a = rgba.a;
return output;
}
float3 GetOutputColorFromSRGB(float3 rgb)
{
float3 output;
if (scRGB_output) {
rgb.r = sRGBtoLinear(rgb.r);
rgb.g = sRGBtoLinear(rgb.g);
rgb.b = sRGBtoLinear(rgb.b);
}
output.rgb = rgb * color_scale;
return output;
}
float3 GetOutputColorFromLinear(float3 rgb)
{
float3 output;
output.rgb = rgb * color_scale;
if (!scRGB_output) {
output.r = sRGBfromLinear(output.r);
output.g = sRGBfromLinear(output.g);
output.b = sRGBfromLinear(output.b);
output.rgb = saturate(output.rgb);
}
return output;
}
float4 AdvancedPixelShader(PSInput input)
{
float4 rgba = GetInputColor(input);
float4 output;
if (input_type == INPUTTYPE_HDR10) {
rgba.rgb = PQtoLinear(rgba.rgb);
}
if (tonemap_method != TONEMAP_NONE) {
rgba.rgb = ApplyTonemap(rgba.rgb);
}
if (input_type == INPUTTYPE_SRGB) {
output.rgb = GetOutputColorFromSRGB(rgba.rgb);
output.a = rgba.a;
} else if (input_type == INPUTTYPE_SCRGB) {
output.rgb = GetOutputColorFromLinear(rgba.rgb);
output.a = rgba.a;
} else if (input_type == INPUTTYPE_HDR10) {
rgba.rgb = mul(mat2020to709, rgba.rgb);
output.rgb = GetOutputColorFromLinear(rgba.rgb);
output.a = rgba.a;
} else {
output = GetOutputColor(rgba);
}
return output * input.v_color;
}
PSOutput main(PSInput input) {
PSOutput output;
output.o_color = AdvancedPixelShader(input);
return output;
}

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -1,341 +0,0 @@
static const unsigned char texture_palette_frag_dxil[] = {
0x44, 0x58, 0x42, 0x43, 0x55, 0x86, 0x21, 0xa0, 0x19, 0xf3, 0xde, 0xc6,
0x36, 0x0f, 0xde, 0xab, 0xfc, 0x7c, 0x9b, 0x93, 0x01, 0x00, 0x00, 0x00,
0xd0, 0x0f, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x00, 0x00,
0x4c, 0x00, 0x00, 0x00, 0xa8, 0x00, 0x00, 0x00, 0xe4, 0x00, 0x00, 0x00,
0x08, 0x02, 0x00, 0x00, 0x90, 0x08, 0x00, 0x00, 0xac, 0x08, 0x00, 0x00,
0x53, 0x46, 0x49, 0x30, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x49, 0x53, 0x47, 0x31, 0x54, 0x00, 0x00, 0x00,
0x02, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x48, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0f, 0x0f, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x48, 0x00, 0x00, 0x00,
0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00,
0x01, 0x00, 0x00, 0x00, 0x03, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x54, 0x45, 0x58, 0x43, 0x4f, 0x4f, 0x52, 0x44, 0x00, 0x00, 0x00, 0x00,
0x4f, 0x53, 0x47, 0x31, 0x34, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x28, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x53, 0x56, 0x5f, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x00, 0x00, 0x00,
0x50, 0x53, 0x56, 0x30, 0x1c, 0x01, 0x00, 0x00, 0x34, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff,
0x00, 0x00, 0x00, 0x00, 0x02, 0x01, 0x00, 0x02, 0x01, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x13, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x00,
0x01, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x0e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x01, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
0x01, 0x00, 0x00, 0x00, 0x0e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x03, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x03, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
0x01, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x18, 0x00, 0x00, 0x00, 0x00, 0x54, 0x45, 0x58, 0x43, 0x4f, 0x4f, 0x52,
0x44, 0x00, 0x54, 0x45, 0x58, 0x43, 0x4f, 0x4f, 0x52, 0x44, 0x00, 0x6d,
0x61, 0x69, 0x6e, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x01, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x44, 0x00, 0x03, 0x02, 0x00, 0x00,
0x0a, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x01, 0x01, 0x42, 0x00,
0x03, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x01, 0x00, 0x44, 0x10, 0x03, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
0x02, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00,
0x0f, 0x00, 0x00, 0x00, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x53, 0x54, 0x41, 0x54, 0x80, 0x06, 0x00, 0x00,
0x60, 0x00, 0x00, 0x00, 0xa0, 0x01, 0x00, 0x00, 0x44, 0x58, 0x49, 0x4c,
0x00, 0x01, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x68, 0x06, 0x00, 0x00,
0x42, 0x43, 0xc0, 0xde, 0x21, 0x0c, 0x00, 0x00, 0x97, 0x01, 0x00, 0x00,
0x0b, 0x82, 0x20, 0x00, 0x02, 0x00, 0x00, 0x00, 0x13, 0x00, 0x00, 0x00,
0x07, 0x81, 0x23, 0x91, 0x41, 0xc8, 0x04, 0x49, 0x06, 0x10, 0x32, 0x39,
0x92, 0x01, 0x84, 0x0c, 0x25, 0x05, 0x08, 0x19, 0x1e, 0x04, 0x8b, 0x62,
0x80, 0x14, 0x45, 0x02, 0x42, 0x92, 0x0b, 0x42, 0xa4, 0x10, 0x32, 0x14,
0x38, 0x08, 0x18, 0x4b, 0x0a, 0x32, 0x52, 0x88, 0x48, 0x90, 0x14, 0x20,
0x43, 0x46, 0x88, 0xa5, 0x00, 0x19, 0x32, 0x42, 0xe4, 0x48, 0x0e, 0x90,
0x91, 0x22, 0xc4, 0x50, 0x41, 0x51, 0x81, 0x8c, 0xe1, 0x83, 0xe5, 0x8a,
0x04, 0x29, 0x46, 0x06, 0x51, 0x18, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00,
0x1b, 0x8c, 0xe0, 0xff, 0xff, 0xff, 0xff, 0x07, 0x40, 0x02, 0xa8, 0x0d,
0x84, 0xf0, 0xff, 0xff, 0xff, 0xff, 0x03, 0x20, 0x6d, 0x30, 0x86, 0xff,
0xff, 0xff, 0xff, 0x1f, 0x00, 0x09, 0xa8, 0x00, 0x49, 0x18, 0x00, 0x00,
0x03, 0x00, 0x00, 0x00, 0x13, 0x82, 0x60, 0x42, 0x20, 0x4c, 0x08, 0x06,
0x00, 0x00, 0x00, 0x00, 0x89, 0x20, 0x00, 0x00, 0x43, 0x00, 0x00, 0x00,
0x32, 0x22, 0x48, 0x09, 0x20, 0x64, 0x85, 0x04, 0x93, 0x22, 0xa4, 0x84,
0x04, 0x93, 0x22, 0xe3, 0x84, 0xa1, 0x90, 0x14, 0x12, 0x4c, 0x8a, 0x8c,
0x0b, 0x84, 0xa4, 0x4c, 0x10, 0x68, 0x23, 0x00, 0x25, 0x00, 0x14, 0x66,
0x00, 0xe6, 0x08, 0xc0, 0x60, 0x8e, 0x00, 0x29, 0xc6, 0x20, 0x84, 0x14,
0x42, 0xa6, 0x18, 0x80, 0x10, 0x52, 0x06, 0xa1, 0x9b, 0x86, 0xcb, 0x9f,
0xb0, 0x87, 0x90, 0xfc, 0x95, 0x90, 0x56, 0x62, 0xf2, 0x8b, 0xdb, 0x46,
0xc5, 0x18, 0x63, 0x10, 0x2a, 0xf7, 0x0c, 0x97, 0x3f, 0x61, 0x0f, 0x21,
0xf9, 0x21, 0xd0, 0x0c, 0x0b, 0x81, 0x82, 0x55, 0x18, 0x45, 0x18, 0x1b,
0x63, 0x0c, 0x42, 0xc8, 0xa0, 0x36, 0x47, 0x10, 0x14, 0x83, 0x91, 0x42,
0xc8, 0x23, 0x38, 0x10, 0x30, 0x8c, 0x40, 0x0c, 0x33, 0xb5, 0xc1, 0x38,
0xb0, 0x43, 0x38, 0xcc, 0xc3, 0x3c, 0xb8, 0x01, 0x2d, 0x94, 0x03, 0x3e,
0xd0, 0x43, 0x3d, 0xc8, 0x43, 0x39, 0xc8, 0x01, 0x29, 0xf0, 0x81, 0x3d,
0x94, 0xc3, 0x38, 0xd0, 0xc3, 0x3b, 0xc8, 0x03, 0x1f, 0x98, 0x03, 0x3b,
0xbc, 0x43, 0x38, 0xd0, 0x03, 0x1b, 0x80, 0x01, 0x1d, 0xf8, 0x01, 0x18,
0xf8, 0x81, 0x1e, 0xe8, 0x41, 0x3b, 0xa4, 0x03, 0x3c, 0xcc, 0xc3, 0x2f,
0xd0, 0x43, 0x3e, 0xc0, 0x43, 0x39, 0xa0, 0x80, 0xcc, 0x24, 0x06, 0xe3,
0xc0, 0x0e, 0xe1, 0x30, 0x0f, 0xf3, 0xe0, 0x06, 0xb4, 0x50, 0x0e, 0xf8,
0x40, 0x0f, 0xf5, 0x20, 0x0f, 0xe5, 0x20, 0x07, 0xa4, 0xc0, 0x07, 0xf6,
0x50, 0x0e, 0xe3, 0x40, 0x0f, 0xef, 0x20, 0x0f, 0x7c, 0x60, 0x0e, 0xec,
0xf0, 0x0e, 0xe1, 0x40, 0x0f, 0x6c, 0x00, 0x06, 0x74, 0xe0, 0x07, 0x60,
0xe0, 0x07, 0x48, 0x98, 0x94, 0xea, 0x4d, 0xd2, 0x14, 0x51, 0xc2, 0xe4,
0xb3, 0x00, 0xf3, 0x2c, 0x44, 0xc4, 0x4e, 0xc0, 0x44, 0xa0, 0x80, 0xd0,
0x4d, 0x04, 0x02, 0x00, 0x13, 0x14, 0x72, 0xc0, 0x87, 0x74, 0x60, 0x87,
0x36, 0x68, 0x87, 0x79, 0x68, 0x03, 0x72, 0xc0, 0x87, 0x0d, 0xaf, 0x50,
0x0e, 0x6d, 0xd0, 0x0e, 0x7a, 0x50, 0x0e, 0x6d, 0x00, 0x0f, 0x7a, 0x30,
0x07, 0x72, 0xa0, 0x07, 0x73, 0x20, 0x07, 0x6d, 0x90, 0x0e, 0x71, 0xa0,
0x07, 0x73, 0x20, 0x07, 0x6d, 0x90, 0x0e, 0x78, 0xa0, 0x07, 0x73, 0x20,
0x07, 0x6d, 0x90, 0x0e, 0x71, 0x60, 0x07, 0x7a, 0x30, 0x07, 0x72, 0xd0,
0x06, 0xe9, 0x30, 0x07, 0x72, 0xa0, 0x07, 0x73, 0x20, 0x07, 0x6d, 0x90,
0x0e, 0x76, 0x40, 0x07, 0x7a, 0x60, 0x07, 0x74, 0xd0, 0x06, 0xe6, 0x10,
0x07, 0x76, 0xa0, 0x07, 0x73, 0x20, 0x07, 0x6d, 0x60, 0x0e, 0x73, 0x20,
0x07, 0x7a, 0x30, 0x07, 0x72, 0xd0, 0x06, 0xe6, 0x60, 0x07, 0x74, 0xa0,
0x07, 0x76, 0x40, 0x07, 0x6d, 0xe0, 0x0e, 0x78, 0xa0, 0x07, 0x71, 0x60,
0x07, 0x7a, 0x30, 0x07, 0x72, 0xa0, 0x07, 0x76, 0x40, 0x07, 0x43, 0x9e,
0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x86,
0x3c, 0x06, 0x10, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x0c, 0x79, 0x10, 0x20, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x18, 0xf2, 0x34, 0x40, 0x00, 0x0c, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x30, 0xe4, 0x81, 0x80, 0x00, 0x18, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x20, 0x0b, 0x04, 0x00, 0x00, 0x0e, 0x00, 0x00, 0x00,
0x32, 0x1e, 0x98, 0x14, 0x19, 0x11, 0x4c, 0x90, 0x8c, 0x09, 0x26, 0x47,
0xc6, 0x04, 0x43, 0x22, 0x25, 0x30, 0x02, 0x50, 0x0c, 0x45, 0x50, 0x12,
0x65, 0x50, 0x1e, 0x85, 0x53, 0x08, 0x54, 0x4a, 0x62, 0x04, 0xa0, 0x08,
0x0a, 0xa1, 0x40, 0xc8, 0xce, 0x00, 0x10, 0x9e, 0x01, 0xa0, 0x3c, 0x16,
0x62, 0x10, 0x81, 0x40, 0x20, 0xcf, 0x03, 0x00, 0x79, 0x18, 0x00, 0x00,
0x85, 0x00, 0x00, 0x00, 0x1a, 0x03, 0x4c, 0x90, 0x46, 0x02, 0x13, 0x44,
0x8f, 0x0c, 0x6f, 0xec, 0xed, 0x4d, 0x0c, 0x24, 0xc6, 0x05, 0xc7, 0x45,
0xa6, 0x06, 0xa6, 0xc6, 0x45, 0x06, 0x07, 0x04, 0x25, 0xa7, 0xcc, 0x4c,
0x4c, 0xcc, 0x66, 0x6c, 0x46, 0x26, 0x65, 0x43, 0x10, 0x4c, 0x10, 0x88,
0x62, 0x82, 0x40, 0x18, 0x1b, 0x84, 0x81, 0xd8, 0x20, 0x10, 0x04, 0x05,
0xb8, 0xb9, 0x09, 0x02, 0x71, 0x6c, 0x18, 0x0e, 0x84, 0x98, 0x20, 0x58,
0x13, 0x93, 0xba, 0x2f, 0xba, 0x32, 0x3c, 0xba, 0x3a, 0xb9, 0xb2, 0x09,
0x02, 0x81, 0x4c, 0x10, 0x88, 0x64, 0x83, 0x40, 0x34, 0x1b, 0x12, 0x42,
0x59, 0x18, 0x62, 0x60, 0x08, 0x87, 0x49, 0xdd, 0x17, 0x5c, 0x18, 0x5b,
0x19, 0x1d, 0x5d, 0xd9, 0x86, 0x64, 0x50, 0x20, 0x66, 0x18, 0x18, 0xc2,
0xd9, 0x20, 0x3c, 0xd1, 0x04, 0x01, 0xa3, 0xa8, 0xd4, 0x7d, 0xcd, 0x85,
0xb5, 0xc1, 0xb1, 0x95, 0xc9, 0xc5, 0x6c, 0x40, 0x88, 0x89, 0x62, 0x88,
0x81, 0x00, 0xa8, 0xd4, 0x7d, 0xcd, 0x85, 0xb5, 0xc1, 0xb1, 0x95, 0xc9,
0xc9, 0x6c, 0x40, 0x86, 0xc9, 0x62, 0x86, 0x81, 0x00, 0x36, 0x08, 0xd5,
0xb5, 0x81, 0x90, 0x00, 0x00, 0x9b, 0x20, 0x08, 0xc0, 0x06, 0x60, 0xc3,
0x40, 0x6c, 0xdb, 0x86, 0x80, 0xdb, 0x30, 0x0c, 0x5a, 0x37, 0x41, 0xc8,
0xaa, 0x0d, 0xc1, 0x47, 0xa2, 0x2d, 0x2c, 0xcd, 0x8d, 0x08, 0x55, 0x11,
0xd6, 0xd0, 0xd3, 0x93, 0x14, 0xd1, 0x04, 0xa1, 0x70, 0x26, 0x08, 0xc5,
0xb3, 0x21, 0x20, 0x26, 0x08, 0x05, 0x34, 0x41, 0x28, 0xa2, 0x09, 0x02,
0xa1, 0x4c, 0x10, 0x88, 0x65, 0x83, 0x80, 0x06, 0x69, 0xb0, 0x61, 0x21,
0xc4, 0x60, 0x0c, 0xc8, 0xa0, 0x0c, 0xcc, 0x60, 0x38, 0x03, 0x82, 0x0c,
0xd4, 0x60, 0x43, 0x30, 0x6c, 0x10, 0xd0, 0x00, 0x0d, 0x36, 0x2c, 0x83,
0x18, 0x8c, 0x01, 0x19, 0xb0, 0x81, 0x19, 0x0c, 0x66, 0x30, 0x90, 0x41,
0x1b, 0x6c, 0x10, 0xd6, 0xc0, 0x0d, 0x98, 0x4c, 0x59, 0x7d, 0x51, 0x85,
0xc9, 0x9d, 0x95, 0xd1, 0x4d, 0x10, 0x0a, 0x69, 0xc3, 0x42, 0xc0, 0xc1,
0x18, 0xc4, 0x41, 0x19, 0x90, 0xc1, 0x70, 0x06, 0x04, 0x19, 0xa8, 0xc1,
0x86, 0x40, 0x0e, 0x36, 0x0c, 0x6f, 0x30, 0x07, 0xc0, 0x86, 0x42, 0x0b,
0x03, 0x3a, 0xc8, 0x00, 0x1a, 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x73, 0x2c,
0xd2, 0xdc, 0xe6, 0xe8, 0xe6, 0x26, 0x08, 0x04, 0x43, 0x63, 0x2e, 0xed,
0xec, 0x8b, 0x8d, 0x8c, 0xc6, 0x5c, 0xda, 0xd9, 0xd7, 0x1c, 0xdd, 0x04,
0x81, 0x68, 0x88, 0xd0, 0x95, 0xe1, 0x7d, 0xb9, 0xbd, 0xc9, 0xb5, 0x6d,
0x50, 0xec, 0x00, 0xb9, 0x03, 0x3c, 0xc8, 0x03, 0x44, 0x0f, 0xf6, 0x80,
0x0f, 0x98, 0x2a, 0x6c, 0x6c, 0x76, 0x6d, 0x2e, 0x69, 0x64, 0x65, 0x6e,
0x74, 0x53, 0x82, 0xa0, 0x0a, 0x19, 0x9e, 0x8b, 0x5d, 0x99, 0xdc, 0x5c,
0xda, 0x9b, 0xdb, 0x94, 0x80, 0x68, 0x42, 0x86, 0xe7, 0x62, 0x17, 0xc6,
0x66, 0x57, 0x26, 0x37, 0x25, 0x28, 0xea, 0x90, 0xe1, 0xb9, 0xcc, 0xa1,
0x85, 0x91, 0x95, 0xc9, 0x35, 0xbd, 0x91, 0x95, 0xb1, 0x4d, 0x09, 0x90,
0x32, 0x64, 0x78, 0x2e, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65,
0x73, 0x53, 0x02, 0xac, 0x12, 0x19, 0x9e, 0x0b, 0x5d, 0x1e, 0x5c, 0x59,
0x90, 0x9b, 0xdb, 0x1b, 0x5d, 0x18, 0x5d, 0xda, 0x9b, 0xdb, 0xdc, 0x94,
0xa0, 0xab, 0x43, 0x86, 0xe7, 0x62, 0x97, 0x56, 0x76, 0x97, 0x44, 0x36,
0x45, 0x17, 0x46, 0x57, 0x36, 0x25, 0xf8, 0xea, 0x90, 0xe1, 0xb9, 0x94,
0xb9, 0xd1, 0xc9, 0xe5, 0x41, 0xbd, 0xa5, 0xb9, 0xd1, 0xcd, 0x4d, 0x09,
0xe8, 0xa0, 0x0b, 0x19, 0x9e, 0xcb, 0xd8, 0x5b, 0x9d, 0x1b, 0x5d, 0x99,
0xdc, 0xdc, 0x94, 0x80, 0x0f, 0x00, 0x00, 0x00, 0x79, 0x18, 0x00, 0x00,
0x4c, 0x00, 0x00, 0x00, 0x33, 0x08, 0x80, 0x1c, 0xc4, 0xe1, 0x1c, 0x66,
0x14, 0x01, 0x3d, 0x88, 0x43, 0x38, 0x84, 0xc3, 0x8c, 0x42, 0x80, 0x07,
0x79, 0x78, 0x07, 0x73, 0x98, 0x71, 0x0c, 0xe6, 0x00, 0x0f, 0xed, 0x10,
0x0e, 0xf4, 0x80, 0x0e, 0x33, 0x0c, 0x42, 0x1e, 0xc2, 0xc1, 0x1d, 0xce,
0xa1, 0x1c, 0x66, 0x30, 0x05, 0x3d, 0x88, 0x43, 0x38, 0x84, 0x83, 0x1b,
0xcc, 0x03, 0x3d, 0xc8, 0x43, 0x3d, 0x8c, 0x03, 0x3d, 0xcc, 0x78, 0x8c,
0x74, 0x70, 0x07, 0x7b, 0x08, 0x07, 0x79, 0x48, 0x87, 0x70, 0x70, 0x07,
0x7a, 0x70, 0x03, 0x76, 0x78, 0x87, 0x70, 0x20, 0x87, 0x19, 0xcc, 0x11,
0x0e, 0xec, 0x90, 0x0e, 0xe1, 0x30, 0x0f, 0x6e, 0x30, 0x0f, 0xe3, 0xf0,
0x0e, 0xf0, 0x50, 0x0e, 0x33, 0x10, 0xc4, 0x1d, 0xde, 0x21, 0x1c, 0xd8,
0x21, 0x1d, 0xc2, 0x61, 0x1e, 0x66, 0x30, 0x89, 0x3b, 0xbc, 0x83, 0x3b,
0xd0, 0x43, 0x39, 0xb4, 0x03, 0x3c, 0xbc, 0x83, 0x3c, 0x84, 0x03, 0x3b,
0xcc, 0xf0, 0x14, 0x76, 0x60, 0x07, 0x7b, 0x68, 0x07, 0x37, 0x68, 0x87,
0x72, 0x68, 0x07, 0x37, 0x80, 0x87, 0x70, 0x90, 0x87, 0x70, 0x60, 0x07,
0x76, 0x28, 0x07, 0x76, 0xf8, 0x05, 0x76, 0x78, 0x87, 0x77, 0x80, 0x87,
0x5f, 0x08, 0x87, 0x71, 0x18, 0x87, 0x72, 0x98, 0x87, 0x79, 0x98, 0x81,
0x2c, 0xee, 0xf0, 0x0e, 0xee, 0xe0, 0x0e, 0xf5, 0xc0, 0x0e, 0xec, 0x30,
0x03, 0x62, 0xc8, 0xa1, 0x1c, 0xe4, 0xa1, 0x1c, 0xcc, 0xa1, 0x1c, 0xe4,
0xa1, 0x1c, 0xdc, 0x61, 0x1c, 0xca, 0x21, 0x1c, 0xc4, 0x81, 0x1d, 0xca,
0x61, 0x06, 0xd6, 0x90, 0x43, 0x39, 0xc8, 0x43, 0x39, 0x98, 0x43, 0x39,
0xc8, 0x43, 0x39, 0xb8, 0xc3, 0x38, 0x94, 0x43, 0x38, 0x88, 0x03, 0x3b,
0x94, 0xc3, 0x2f, 0xbc, 0x83, 0x3c, 0xfc, 0x82, 0x3b, 0xd4, 0x03, 0x3b,
0xb0, 0xc3, 0x8c, 0xc8, 0x21, 0x07, 0x7c, 0x70, 0x03, 0x72, 0x10, 0x87,
0x73, 0x70, 0x03, 0x7b, 0x08, 0x07, 0x79, 0x60, 0x87, 0x70, 0xc8, 0x87,
0x77, 0xa8, 0x07, 0x7a, 0x98, 0x81, 0x3c, 0xe4, 0x80, 0x0f, 0x6e, 0x40,
0x0f, 0xe5, 0xd0, 0x0e, 0xf0, 0x00, 0x00, 0x00, 0x71, 0x20, 0x00, 0x00,
0x12, 0x00, 0x00, 0x00, 0x46, 0x20, 0x0d, 0x97, 0xef, 0x3c, 0xbe, 0x10,
0x11, 0xc0, 0x44, 0x84, 0x40, 0x33, 0x2c, 0x84, 0x05, 0x4c, 0xc3, 0xe5,
0x3b, 0x8f, 0xbf, 0x38, 0xc0, 0x20, 0x36, 0x0f, 0x35, 0xf9, 0xc5, 0x6d,
0xdb, 0x00, 0x34, 0x5c, 0xbe, 0xf3, 0xf8, 0x12, 0xc0, 0x3c, 0x0b, 0xe1,
0x17, 0xb7, 0x6d, 0x02, 0xd5, 0x70, 0xf9, 0xce, 0xe3, 0x4b, 0x93, 0x13,
0x11, 0x28, 0x35, 0x3d, 0xd4, 0xe4, 0x17, 0xb7, 0x6d, 0x00, 0x04, 0x03,
0x20, 0x0d, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x48, 0x41, 0x53, 0x48,
0x14, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x67, 0xe9, 0xb9, 0xc5,
0x3e, 0x0d, 0xf1, 0xc0, 0xc2, 0x52, 0xbd, 0xf2, 0xbd, 0xb8, 0x68, 0x11,
0x44, 0x58, 0x49, 0x4c, 0x1c, 0x07, 0x00, 0x00, 0x60, 0x00, 0x00, 0x00,
0xc7, 0x01, 0x00, 0x00, 0x44, 0x58, 0x49, 0x4c, 0x00, 0x01, 0x00, 0x00,
0x10, 0x00, 0x00, 0x00, 0x04, 0x07, 0x00, 0x00, 0x42, 0x43, 0xc0, 0xde,
0x21, 0x0c, 0x00, 0x00, 0xbe, 0x01, 0x00, 0x00, 0x0b, 0x82, 0x20, 0x00,
0x02, 0x00, 0x00, 0x00, 0x13, 0x00, 0x00, 0x00, 0x07, 0x81, 0x23, 0x91,
0x41, 0xc8, 0x04, 0x49, 0x06, 0x10, 0x32, 0x39, 0x92, 0x01, 0x84, 0x0c,
0x25, 0x05, 0x08, 0x19, 0x1e, 0x04, 0x8b, 0x62, 0x80, 0x14, 0x45, 0x02,
0x42, 0x92, 0x0b, 0x42, 0xa4, 0x10, 0x32, 0x14, 0x38, 0x08, 0x18, 0x4b,
0x0a, 0x32, 0x52, 0x88, 0x48, 0x90, 0x14, 0x20, 0x43, 0x46, 0x88, 0xa5,
0x00, 0x19, 0x32, 0x42, 0xe4, 0x48, 0x0e, 0x90, 0x91, 0x22, 0xc4, 0x50,
0x41, 0x51, 0x81, 0x8c, 0xe1, 0x83, 0xe5, 0x8a, 0x04, 0x29, 0x46, 0x06,
0x51, 0x18, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x1b, 0x8c, 0xe0, 0xff,
0xff, 0xff, 0xff, 0x07, 0x40, 0x02, 0xa8, 0x0d, 0x84, 0xf0, 0xff, 0xff,
0xff, 0xff, 0x03, 0x20, 0x6d, 0x30, 0x86, 0xff, 0xff, 0xff, 0xff, 0x1f,
0x00, 0x09, 0xa8, 0x00, 0x49, 0x18, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00,
0x13, 0x82, 0x60, 0x42, 0x20, 0x4c, 0x08, 0x06, 0x00, 0x00, 0x00, 0x00,
0x89, 0x20, 0x00, 0x00, 0x43, 0x00, 0x00, 0x00, 0x32, 0x22, 0x48, 0x09,
0x20, 0x64, 0x85, 0x04, 0x93, 0x22, 0xa4, 0x84, 0x04, 0x93, 0x22, 0xe3,
0x84, 0xa1, 0x90, 0x14, 0x12, 0x4c, 0x8a, 0x8c, 0x0b, 0x84, 0xa4, 0x4c,
0x10, 0x68, 0x23, 0x00, 0x25, 0x00, 0x14, 0x66, 0x00, 0xe6, 0x08, 0xc0,
0x60, 0x8e, 0x00, 0x29, 0xc6, 0x20, 0x84, 0x14, 0x42, 0xa6, 0x18, 0x80,
0x10, 0x52, 0x06, 0xa1, 0x9b, 0x86, 0xcb, 0x9f, 0xb0, 0x87, 0x90, 0xfc,
0x95, 0x90, 0x56, 0x62, 0xf2, 0x8b, 0xdb, 0x46, 0xc5, 0x18, 0x63, 0x10,
0x2a, 0xf7, 0x0c, 0x97, 0x3f, 0x61, 0x0f, 0x21, 0xf9, 0x21, 0xd0, 0x0c,
0x0b, 0x81, 0x82, 0x55, 0x18, 0x45, 0x18, 0x1b, 0x63, 0x0c, 0x42, 0xc8,
0xa0, 0x36, 0x47, 0x10, 0x14, 0x83, 0x91, 0x42, 0xc8, 0x23, 0x38, 0x10,
0x30, 0x8c, 0x40, 0x0c, 0x33, 0xb5, 0xc1, 0x38, 0xb0, 0x43, 0x38, 0xcc,
0xc3, 0x3c, 0xb8, 0x01, 0x2d, 0x94, 0x03, 0x3e, 0xd0, 0x43, 0x3d, 0xc8,
0x43, 0x39, 0xc8, 0x01, 0x29, 0xf0, 0x81, 0x3d, 0x94, 0xc3, 0x38, 0xd0,
0xc3, 0x3b, 0xc8, 0x03, 0x1f, 0x98, 0x03, 0x3b, 0xbc, 0x43, 0x38, 0xd0,
0x03, 0x1b, 0x80, 0x01, 0x1d, 0xf8, 0x01, 0x18, 0xf8, 0x81, 0x1e, 0xe8,
0x41, 0x3b, 0xa4, 0x03, 0x3c, 0xcc, 0xc3, 0x2f, 0xd0, 0x43, 0x3e, 0xc0,
0x43, 0x39, 0xa0, 0x80, 0xcc, 0x24, 0x06, 0xe3, 0xc0, 0x0e, 0xe1, 0x30,
0x0f, 0xf3, 0xe0, 0x06, 0xb4, 0x50, 0x0e, 0xf8, 0x40, 0x0f, 0xf5, 0x20,
0x0f, 0xe5, 0x20, 0x07, 0xa4, 0xc0, 0x07, 0xf6, 0x50, 0x0e, 0xe3, 0x40,
0x0f, 0xef, 0x20, 0x0f, 0x7c, 0x60, 0x0e, 0xec, 0xf0, 0x0e, 0xe1, 0x40,
0x0f, 0x6c, 0x00, 0x06, 0x74, 0xe0, 0x07, 0x60, 0xe0, 0x07, 0x48, 0x98,
0x94, 0xea, 0x4d, 0xd2, 0x14, 0x51, 0xc2, 0xe4, 0xb3, 0x00, 0xf3, 0x2c,
0x44, 0xc4, 0x4e, 0xc0, 0x44, 0xa0, 0x80, 0xd0, 0x4d, 0x04, 0x02, 0x00,
0x13, 0x14, 0x72, 0xc0, 0x87, 0x74, 0x60, 0x87, 0x36, 0x68, 0x87, 0x79,
0x68, 0x03, 0x72, 0xc0, 0x87, 0x0d, 0xaf, 0x50, 0x0e, 0x6d, 0xd0, 0x0e,
0x7a, 0x50, 0x0e, 0x6d, 0x00, 0x0f, 0x7a, 0x30, 0x07, 0x72, 0xa0, 0x07,
0x73, 0x20, 0x07, 0x6d, 0x90, 0x0e, 0x71, 0xa0, 0x07, 0x73, 0x20, 0x07,
0x6d, 0x90, 0x0e, 0x78, 0xa0, 0x07, 0x73, 0x20, 0x07, 0x6d, 0x90, 0x0e,
0x71, 0x60, 0x07, 0x7a, 0x30, 0x07, 0x72, 0xd0, 0x06, 0xe9, 0x30, 0x07,
0x72, 0xa0, 0x07, 0x73, 0x20, 0x07, 0x6d, 0x90, 0x0e, 0x76, 0x40, 0x07,
0x7a, 0x60, 0x07, 0x74, 0xd0, 0x06, 0xe6, 0x10, 0x07, 0x76, 0xa0, 0x07,
0x73, 0x20, 0x07, 0x6d, 0x60, 0x0e, 0x73, 0x20, 0x07, 0x7a, 0x30, 0x07,
0x72, 0xd0, 0x06, 0xe6, 0x60, 0x07, 0x74, 0xa0, 0x07, 0x76, 0x40, 0x07,
0x6d, 0xe0, 0x0e, 0x78, 0xa0, 0x07, 0x71, 0x60, 0x07, 0x7a, 0x30, 0x07,
0x72, 0xa0, 0x07, 0x76, 0x40, 0x07, 0x43, 0x9e, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x86, 0x3c, 0x06, 0x10, 0x00,
0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0c, 0x79, 0x10, 0x20,
0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0xf2, 0x34,
0x40, 0x00, 0x0c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0xe4,
0x81, 0x80, 0x00, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20,
0x0b, 0x04, 0x00, 0x00, 0x0d, 0x00, 0x00, 0x00, 0x32, 0x1e, 0x98, 0x14,
0x19, 0x11, 0x4c, 0x90, 0x8c, 0x09, 0x26, 0x47, 0xc6, 0x04, 0x43, 0x22,
0x25, 0x30, 0x02, 0x50, 0x12, 0xc5, 0x50, 0x04, 0x65, 0x50, 0x1e, 0x54,
0x4a, 0x62, 0x04, 0xa0, 0x08, 0x0a, 0xa1, 0x40, 0xc8, 0xce, 0x00, 0x10,
0x9e, 0x01, 0xa0, 0x3c, 0x16, 0x62, 0x10, 0x81, 0x40, 0x20, 0xcf, 0x03,
0x79, 0x18, 0x00, 0x00, 0x5c, 0x00, 0x00, 0x00, 0x1a, 0x03, 0x4c, 0x90,
0x46, 0x02, 0x13, 0x44, 0x8f, 0x0c, 0x6f, 0xec, 0xed, 0x4d, 0x0c, 0x24,
0xc6, 0x05, 0xc7, 0x45, 0xa6, 0x06, 0xa6, 0xc6, 0x45, 0x06, 0x07, 0x04,
0x25, 0xa7, 0xcc, 0x4c, 0x4c, 0xcc, 0x66, 0x6c, 0x46, 0x26, 0x65, 0x43,
0x10, 0x4c, 0x10, 0x88, 0x62, 0x82, 0x40, 0x18, 0x1b, 0x84, 0x81, 0x98,
0x20, 0x10, 0xc7, 0x06, 0x61, 0x30, 0x28, 0xc0, 0xcd, 0x4d, 0x10, 0x08,
0x64, 0xc3, 0x80, 0x24, 0xc4, 0x04, 0xc1, 0x8a, 0x08, 0x4c, 0x10, 0x88,
0x64, 0x83, 0x40, 0x18, 0x1b, 0x12, 0x62, 0x61, 0x1a, 0x62, 0x68, 0x08,
0x67, 0x43, 0x32, 0x2c, 0x4c, 0x33, 0x0c, 0x0d, 0xe1, 0x6c, 0x10, 0x1e,
0x68, 0x82, 0x80, 0x49, 0x1b, 0x10, 0x42, 0x62, 0x1a, 0x62, 0x20, 0x80,
0x0d, 0xc8, 0x20, 0x31, 0xcd, 0x30, 0x10, 0xc0, 0x06, 0x61, 0xa2, 0x36,
0x10, 0x11, 0x00, 0x54, 0x13, 0x84, 0x6c, 0xda, 0x10, 0x5c, 0x13, 0x04,
0x01, 0x20, 0xd1, 0x16, 0x96, 0xe6, 0x46, 0x84, 0xaa, 0x08, 0x6b, 0xe8,
0xe9, 0x49, 0x8a, 0x68, 0x82, 0x50, 0x30, 0x13, 0x84, 0xa2, 0xd9, 0x10,
0x10, 0x13, 0x84, 0xc2, 0x99, 0x20, 0x14, 0xcf, 0x04, 0x81, 0x50, 0x26,
0x08, 0xc4, 0xb2, 0x41, 0x08, 0x03, 0x31, 0xd8, 0xb0, 0x10, 0x1b, 0xd7,
0x79, 0xdf, 0x00, 0x06, 0x44, 0x37, 0x06, 0x1b, 0x82, 0x61, 0x83, 0x10,
0x06, 0x61, 0xb0, 0x61, 0x19, 0x36, 0xae, 0x2b, 0x83, 0x6f, 0xf8, 0x86,
0xce, 0x0c, 0x36, 0x08, 0x64, 0x70, 0x06, 0x4c, 0xa6, 0xac, 0xbe, 0xa8,
0xc2, 0xe4, 0xce, 0xca, 0xe8, 0x26, 0x08, 0x05, 0xb4, 0x61, 0x21, 0xd2,
0x80, 0x53, 0x03, 0xaf, 0x1b, 0xc0, 0x80, 0xe8, 0xc6, 0x60, 0x43, 0xb0,
0x06, 0x1b, 0x06, 0x34, 0x60, 0x03, 0x60, 0x43, 0x91, 0x69, 0x6d, 0x60,
0x01, 0x55, 0xd8, 0xd8, 0xec, 0xda, 0x5c, 0xd2, 0xc8, 0xca, 0xdc, 0xe8,
0xa6, 0x04, 0x41, 0x15, 0x32, 0x3c, 0x17, 0xbb, 0x32, 0xb9, 0xb9, 0xb4,
0x37, 0xb7, 0x29, 0x01, 0xd1, 0x84, 0x0c, 0xcf, 0xc5, 0x2e, 0x8c, 0xcd,
0xae, 0x4c, 0x6e, 0x4a, 0x60, 0xd4, 0x21, 0xc3, 0x73, 0x99, 0x43, 0x0b,
0x23, 0x2b, 0x93, 0x6b, 0x7a, 0x23, 0x2b, 0x63, 0x9b, 0x12, 0x24, 0x65,
0xc8, 0xf0, 0x5c, 0xe4, 0xca, 0xe6, 0xde, 0xea, 0xe4, 0xc6, 0xca, 0xe6,
0xa6, 0x04, 0x55, 0x1d, 0x32, 0x3c, 0x17, 0xbb, 0xb4, 0xb2, 0xbb, 0x24,
0xb2, 0x29, 0xba, 0x30, 0xba, 0xb2, 0x29, 0xc1, 0x55, 0x87, 0x0c, 0xcf,
0xa5, 0xcc, 0x8d, 0x4e, 0x2e, 0x0f, 0xea, 0x2d, 0xcd, 0x8d, 0x6e, 0x6e,
0x4a, 0xd0, 0x06, 0x00, 0x79, 0x18, 0x00, 0x00, 0x4c, 0x00, 0x00, 0x00,
0x33, 0x08, 0x80, 0x1c, 0xc4, 0xe1, 0x1c, 0x66, 0x14, 0x01, 0x3d, 0x88,
0x43, 0x38, 0x84, 0xc3, 0x8c, 0x42, 0x80, 0x07, 0x79, 0x78, 0x07, 0x73,
0x98, 0x71, 0x0c, 0xe6, 0x00, 0x0f, 0xed, 0x10, 0x0e, 0xf4, 0x80, 0x0e,
0x33, 0x0c, 0x42, 0x1e, 0xc2, 0xc1, 0x1d, 0xce, 0xa1, 0x1c, 0x66, 0x30,
0x05, 0x3d, 0x88, 0x43, 0x38, 0x84, 0x83, 0x1b, 0xcc, 0x03, 0x3d, 0xc8,
0x43, 0x3d, 0x8c, 0x03, 0x3d, 0xcc, 0x78, 0x8c, 0x74, 0x70, 0x07, 0x7b,
0x08, 0x07, 0x79, 0x48, 0x87, 0x70, 0x70, 0x07, 0x7a, 0x70, 0x03, 0x76,
0x78, 0x87, 0x70, 0x20, 0x87, 0x19, 0xcc, 0x11, 0x0e, 0xec, 0x90, 0x0e,
0xe1, 0x30, 0x0f, 0x6e, 0x30, 0x0f, 0xe3, 0xf0, 0x0e, 0xf0, 0x50, 0x0e,
0x33, 0x10, 0xc4, 0x1d, 0xde, 0x21, 0x1c, 0xd8, 0x21, 0x1d, 0xc2, 0x61,
0x1e, 0x66, 0x30, 0x89, 0x3b, 0xbc, 0x83, 0x3b, 0xd0, 0x43, 0x39, 0xb4,
0x03, 0x3c, 0xbc, 0x83, 0x3c, 0x84, 0x03, 0x3b, 0xcc, 0xf0, 0x14, 0x76,
0x60, 0x07, 0x7b, 0x68, 0x07, 0x37, 0x68, 0x87, 0x72, 0x68, 0x07, 0x37,
0x80, 0x87, 0x70, 0x90, 0x87, 0x70, 0x60, 0x07, 0x76, 0x28, 0x07, 0x76,
0xf8, 0x05, 0x76, 0x78, 0x87, 0x77, 0x80, 0x87, 0x5f, 0x08, 0x87, 0x71,
0x18, 0x87, 0x72, 0x98, 0x87, 0x79, 0x98, 0x81, 0x2c, 0xee, 0xf0, 0x0e,
0xee, 0xe0, 0x0e, 0xf5, 0xc0, 0x0e, 0xec, 0x30, 0x03, 0x62, 0xc8, 0xa1,
0x1c, 0xe4, 0xa1, 0x1c, 0xcc, 0xa1, 0x1c, 0xe4, 0xa1, 0x1c, 0xdc, 0x61,
0x1c, 0xca, 0x21, 0x1c, 0xc4, 0x81, 0x1d, 0xca, 0x61, 0x06, 0xd6, 0x90,
0x43, 0x39, 0xc8, 0x43, 0x39, 0x98, 0x43, 0x39, 0xc8, 0x43, 0x39, 0xb8,
0xc3, 0x38, 0x94, 0x43, 0x38, 0x88, 0x03, 0x3b, 0x94, 0xc3, 0x2f, 0xbc,
0x83, 0x3c, 0xfc, 0x82, 0x3b, 0xd4, 0x03, 0x3b, 0xb0, 0xc3, 0x8c, 0xc8,
0x21, 0x07, 0x7c, 0x70, 0x03, 0x72, 0x10, 0x87, 0x73, 0x70, 0x03, 0x7b,
0x08, 0x07, 0x79, 0x60, 0x87, 0x70, 0xc8, 0x87, 0x77, 0xa8, 0x07, 0x7a,
0x98, 0x81, 0x3c, 0xe4, 0x80, 0x0f, 0x6e, 0x40, 0x0f, 0xe5, 0xd0, 0x0e,
0xf0, 0x00, 0x00, 0x00, 0x71, 0x20, 0x00, 0x00, 0x12, 0x00, 0x00, 0x00,
0x46, 0x20, 0x0d, 0x97, 0xef, 0x3c, 0xbe, 0x10, 0x11, 0xc0, 0x44, 0x84,
0x40, 0x33, 0x2c, 0x84, 0x05, 0x4c, 0xc3, 0xe5, 0x3b, 0x8f, 0xbf, 0x38,
0xc0, 0x20, 0x36, 0x0f, 0x35, 0xf9, 0xc5, 0x6d, 0xdb, 0x00, 0x34, 0x5c,
0xbe, 0xf3, 0xf8, 0x12, 0xc0, 0x3c, 0x0b, 0xe1, 0x17, 0xb7, 0x6d, 0x02,
0xd5, 0x70, 0xf9, 0xce, 0xe3, 0x4b, 0x93, 0x13, 0x11, 0x28, 0x35, 0x3d,
0xd4, 0xe4, 0x17, 0xb7, 0x6d, 0x00, 0x04, 0x03, 0x20, 0x0d, 0x00, 0x00,
0x61, 0x20, 0x00, 0x00, 0x4f, 0x00, 0x00, 0x00, 0x13, 0x04, 0x41, 0x2c,
0x10, 0x00, 0x00, 0x00, 0x0a, 0x00, 0x00, 0x00, 0xf4, 0x46, 0x00, 0xa8,
0x94, 0x40, 0x19, 0x10, 0x29, 0xbc, 0x19, 0x80, 0x42, 0x28, 0xb9, 0x52,
0xa0, 0x31, 0x46, 0x00, 0x82, 0x20, 0x08, 0x7f, 0x63, 0x04, 0x20, 0x08,
0x82, 0x70, 0x37, 0x46, 0x00, 0x82, 0xa0, 0x7f, 0x7f, 0x33, 0x00, 0x00,
0x23, 0x06, 0x09, 0x00, 0x82, 0x60, 0x00, 0x71, 0xc6, 0xb4, 0x6d, 0xcc,
0x88, 0x41, 0x02, 0x80, 0x20, 0x18, 0x40, 0xdd, 0x41, 0x6d, 0x5b, 0x33,
0x62, 0x90, 0x00, 0x20, 0x08, 0x06, 0x90, 0x87, 0x30, 0x5d, 0xe7, 0x8c,
0x18, 0x24, 0x00, 0x08, 0x82, 0x01, 0xf4, 0x25, 0x4d, 0xd7, 0x3d, 0x23,
0x06, 0x09, 0x00, 0x82, 0x60, 0x60, 0x8c, 0xc1, 0xf2, 0x79, 0x17, 0x33,
0x62, 0x90, 0x00, 0x20, 0x08, 0x06, 0x06, 0x19, 0x30, 0x60, 0xf0, 0x41,
0xcd, 0x88, 0x41, 0x02, 0x80, 0x20, 0x18, 0x18, 0x65, 0xd0, 0x80, 0x01,
0x18, 0x64, 0xce, 0x88, 0x41, 0x02, 0x80, 0x20, 0x18, 0x18, 0x66, 0xe0,
0x84, 0x41, 0x18, 0x48, 0xcf, 0x88, 0x41, 0x02, 0x80, 0x20, 0x18, 0x18,
0x67, 0xf0, 0x88, 0x81, 0x18, 0x68, 0xd0, 0x88, 0x41, 0x02, 0x80, 0x20,
0x18, 0x18, 0x68, 0x00, 0x8d, 0xc1, 0x18, 0x4c, 0xd1, 0x88, 0xc1, 0x03,
0x80, 0x20, 0x18, 0x34, 0x67, 0x30, 0x25, 0x87, 0x51, 0x2c, 0x0b, 0x19,
0x90, 0x81, 0xb4, 0x8c, 0x26, 0x04, 0x80, 0x05, 0x8e, 0x7c, 0x2c, 0x80,
0xe0, 0x33, 0x62, 0xf0, 0x00, 0x20, 0x08, 0x06, 0xcd, 0x1a, 0x5c, 0x0e,
0x13, 0x48, 0xcf, 0x83, 0x06, 0x68, 0x60, 0x3d, 0xa3, 0x09, 0x01, 0x30,
0x9a, 0x20, 0x04, 0xa3, 0x09, 0x83, 0x30, 0x9a, 0x40, 0x0c, 0x46, 0x34,
0xf2, 0x31, 0xa2, 0x91, 0x8f, 0x11, 0x8d, 0x7c, 0x8c, 0x68, 0xe4, 0x33,
0x62, 0x90, 0x00, 0x20, 0x08, 0x06, 0x48, 0x1d, 0x70, 0x71, 0x10, 0x07,
0x6a, 0x40, 0x8c, 0x18, 0x24, 0x00, 0x08, 0x82, 0x01, 0x52, 0x07, 0x5c,
0x1c, 0xc4, 0x81, 0x18, 0x0c, 0x23, 0x06, 0x09, 0x00, 0x82, 0x60, 0x80,
0xd4, 0x01, 0x17, 0x07, 0x71, 0x90, 0x06, 0xc2, 0x88, 0x41, 0x02, 0x80,
0x20, 0x18, 0x20, 0x75, 0xc0, 0xc5, 0x41, 0x1c, 0x84, 0x41, 0x80, 0x00,
0x00, 0x00, 0x00, 0x00
};
static const unsigned int texture_palette_frag_dxil_len = 4048;

View File

@@ -1,21 +0,0 @@
Texture2D u_texture : register(t0, space2);
Texture2D u_palette : register(t1, space2);
SamplerState u_sampler1 : register(s0, space2);
SamplerState u_sampler2 : register(s1, space2);
struct PSInput {
float4 v_color : COLOR0;
float2 v_uv : TEXCOORD0;
};
struct PSOutput {
float4 o_color : SV_Target;
};
PSOutput main(PSInput input) {
PSOutput output;
float index = u_texture.Sample(u_sampler1, input.v_uv).r * 255;
float4 color = u_palette.Sample(u_sampler2, float2((index + 0.5) / 256, 0.5));
output.o_color = color * input.v_color;
return output;
}

View File

@@ -1,60 +0,0 @@
static const unsigned char texture_palette_frag_msl[] = {
0x23, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x20, 0x3c, 0x6d, 0x65,
0x74, 0x61, 0x6c, 0x5f, 0x73, 0x74, 0x64, 0x6c, 0x69, 0x62, 0x3e, 0x0a,
0x23, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x20, 0x3c, 0x73, 0x69,
0x6d, 0x64, 0x2f, 0x73, 0x69, 0x6d, 0x64, 0x2e, 0x68, 0x3e, 0x0a, 0x0a,
0x75, 0x73, 0x69, 0x6e, 0x67, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70,
0x61, 0x63, 0x65, 0x20, 0x6d, 0x65, 0x74, 0x61, 0x6c, 0x3b, 0x0a, 0x0a,
0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x20, 0x6d, 0x61, 0x69, 0x6e, 0x30,
0x5f, 0x6f, 0x75, 0x74, 0x0a, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x66,
0x6c, 0x6f, 0x61, 0x74, 0x34, 0x20, 0x6f, 0x75, 0x74, 0x5f, 0x76, 0x61,
0x72, 0x5f, 0x53, 0x56, 0x5f, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x20,
0x5b, 0x5b, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x28, 0x30, 0x29, 0x5d, 0x5d,
0x3b, 0x0a, 0x7d, 0x3b, 0x0a, 0x0a, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74,
0x20, 0x6d, 0x61, 0x69, 0x6e, 0x30, 0x5f, 0x69, 0x6e, 0x0a, 0x7b, 0x0a,
0x20, 0x20, 0x20, 0x20, 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x34, 0x20, 0x69,
0x6e, 0x5f, 0x76, 0x61, 0x72, 0x5f, 0x43, 0x4f, 0x4c, 0x4f, 0x52, 0x30,
0x20, 0x5b, 0x5b, 0x75, 0x73, 0x65, 0x72, 0x28, 0x6c, 0x6f, 0x63, 0x6e,
0x30, 0x29, 0x5d, 0x5d, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x66, 0x6c,
0x6f, 0x61, 0x74, 0x32, 0x20, 0x69, 0x6e, 0x5f, 0x76, 0x61, 0x72, 0x5f,
0x54, 0x45, 0x58, 0x43, 0x4f, 0x4f, 0x52, 0x44, 0x30, 0x20, 0x5b, 0x5b,
0x75, 0x73, 0x65, 0x72, 0x28, 0x6c, 0x6f, 0x63, 0x6e, 0x31, 0x29, 0x5d,
0x5d, 0x3b, 0x0a, 0x7d, 0x3b, 0x0a, 0x0a, 0x66, 0x72, 0x61, 0x67, 0x6d,
0x65, 0x6e, 0x74, 0x20, 0x6d, 0x61, 0x69, 0x6e, 0x30, 0x5f, 0x6f, 0x75,
0x74, 0x20, 0x6d, 0x61, 0x69, 0x6e, 0x30, 0x28, 0x6d, 0x61, 0x69, 0x6e,
0x30, 0x5f, 0x69, 0x6e, 0x20, 0x69, 0x6e, 0x20, 0x5b, 0x5b, 0x73, 0x74,
0x61, 0x67, 0x65, 0x5f, 0x69, 0x6e, 0x5d, 0x5d, 0x2c, 0x20, 0x74, 0x65,
0x78, 0x74, 0x75, 0x72, 0x65, 0x32, 0x64, 0x3c, 0x66, 0x6c, 0x6f, 0x61,
0x74, 0x3e, 0x20, 0x75, 0x5f, 0x74, 0x65, 0x78, 0x74, 0x75, 0x72, 0x65,
0x20, 0x5b, 0x5b, 0x74, 0x65, 0x78, 0x74, 0x75, 0x72, 0x65, 0x28, 0x30,
0x29, 0x5d, 0x5d, 0x2c, 0x20, 0x74, 0x65, 0x78, 0x74, 0x75, 0x72, 0x65,
0x32, 0x64, 0x3c, 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x3e, 0x20, 0x75, 0x5f,
0x70, 0x61, 0x6c, 0x65, 0x74, 0x74, 0x65, 0x20, 0x5b, 0x5b, 0x74, 0x65,
0x78, 0x74, 0x75, 0x72, 0x65, 0x28, 0x31, 0x29, 0x5d, 0x5d, 0x2c, 0x20,
0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x72, 0x20, 0x75, 0x5f, 0x73, 0x61,
0x6d, 0x70, 0x6c, 0x65, 0x72, 0x31, 0x20, 0x5b, 0x5b, 0x73, 0x61, 0x6d,
0x70, 0x6c, 0x65, 0x72, 0x28, 0x30, 0x29, 0x5d, 0x5d, 0x2c, 0x20, 0x73,
0x61, 0x6d, 0x70, 0x6c, 0x65, 0x72, 0x20, 0x75, 0x5f, 0x73, 0x61, 0x6d,
0x70, 0x6c, 0x65, 0x72, 0x32, 0x20, 0x5b, 0x5b, 0x73, 0x61, 0x6d, 0x70,
0x6c, 0x65, 0x72, 0x28, 0x31, 0x29, 0x5d, 0x5d, 0x29, 0x0a, 0x7b, 0x0a,
0x20, 0x20, 0x20, 0x20, 0x6d, 0x61, 0x69, 0x6e, 0x30, 0x5f, 0x6f, 0x75,
0x74, 0x20, 0x6f, 0x75, 0x74, 0x20, 0x3d, 0x20, 0x7b, 0x7d, 0x3b, 0x0a,
0x20, 0x20, 0x20, 0x20, 0x6f, 0x75, 0x74, 0x2e, 0x6f, 0x75, 0x74, 0x5f,
0x76, 0x61, 0x72, 0x5f, 0x53, 0x56, 0x5f, 0x54, 0x61, 0x72, 0x67, 0x65,
0x74, 0x20, 0x3d, 0x20, 0x75, 0x5f, 0x70, 0x61, 0x6c, 0x65, 0x74, 0x74,
0x65, 0x2e, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x28, 0x75, 0x5f, 0x73,
0x61, 0x6d, 0x70, 0x6c, 0x65, 0x72, 0x32, 0x2c, 0x20, 0x66, 0x6c, 0x6f,
0x61, 0x74, 0x32, 0x28, 0x28, 0x28, 0x75, 0x5f, 0x74, 0x65, 0x78, 0x74,
0x75, 0x72, 0x65, 0x2e, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x28, 0x75,
0x5f, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x72, 0x31, 0x2c, 0x20, 0x69,
0x6e, 0x2e, 0x69, 0x6e, 0x5f, 0x76, 0x61, 0x72, 0x5f, 0x54, 0x45, 0x58,
0x43, 0x4f, 0x4f, 0x52, 0x44, 0x30, 0x29, 0x2e, 0x78, 0x20, 0x2a, 0x20,
0x32, 0x35, 0x35, 0x2e, 0x30, 0x29, 0x20, 0x2b, 0x20, 0x30, 0x2e, 0x35,
0x29, 0x20, 0x2a, 0x20, 0x30, 0x2e, 0x30, 0x30, 0x33, 0x39, 0x30, 0x36,
0x32, 0x35, 0x2c, 0x20, 0x30, 0x2e, 0x35, 0x29, 0x29, 0x20, 0x2a, 0x20,
0x69, 0x6e, 0x2e, 0x69, 0x6e, 0x5f, 0x76, 0x61, 0x72, 0x5f, 0x43, 0x4f,
0x4c, 0x4f, 0x52, 0x30, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65,
0x74, 0x75, 0x72, 0x6e, 0x20, 0x6f, 0x75, 0x74, 0x3b, 0x0a, 0x7d, 0x0a,
0x0a
};
static const unsigned int texture_palette_frag_msl_len = 673;

View File

@@ -1,106 +0,0 @@
static const unsigned char texture_palette_frag_spv[] = {
0x03, 0x02, 0x23, 0x07, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x0e, 0x00,
0x2a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x11, 0x00, 0x02, 0x00,
0x01, 0x00, 0x00, 0x00, 0x0e, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
0x01, 0x00, 0x00, 0x00, 0x0f, 0x00, 0x08, 0x00, 0x04, 0x00, 0x00, 0x00,
0x01, 0x00, 0x00, 0x00, 0x6d, 0x61, 0x69, 0x6e, 0x00, 0x00, 0x00, 0x00,
0x02, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00,
0x10, 0x00, 0x03, 0x00, 0x01, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00,
0x03, 0x00, 0x03, 0x00, 0x05, 0x00, 0x00, 0x00, 0x58, 0x02, 0x00, 0x00,
0x05, 0x00, 0x06, 0x00, 0x05, 0x00, 0x00, 0x00, 0x74, 0x79, 0x70, 0x65,
0x2e, 0x32, 0x64, 0x2e, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x00, 0x00, 0x00,
0x05, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x75, 0x5f, 0x74, 0x65,
0x78, 0x74, 0x75, 0x72, 0x65, 0x00, 0x00, 0x00, 0x05, 0x00, 0x05, 0x00,
0x07, 0x00, 0x00, 0x00, 0x75, 0x5f, 0x70, 0x61, 0x6c, 0x65, 0x74, 0x74,
0x65, 0x00, 0x00, 0x00, 0x05, 0x00, 0x06, 0x00, 0x08, 0x00, 0x00, 0x00,
0x74, 0x79, 0x70, 0x65, 0x2e, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x72,
0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x05, 0x00, 0x09, 0x00, 0x00, 0x00,
0x75, 0x5f, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x72, 0x31, 0x00, 0x00,
0x05, 0x00, 0x05, 0x00, 0x0a, 0x00, 0x00, 0x00, 0x75, 0x5f, 0x73, 0x61,
0x6d, 0x70, 0x6c, 0x65, 0x72, 0x32, 0x00, 0x00, 0x05, 0x00, 0x06, 0x00,
0x02, 0x00, 0x00, 0x00, 0x69, 0x6e, 0x2e, 0x76, 0x61, 0x72, 0x2e, 0x43,
0x4f, 0x4c, 0x4f, 0x52, 0x30, 0x00, 0x00, 0x00, 0x05, 0x00, 0x07, 0x00,
0x03, 0x00, 0x00, 0x00, 0x69, 0x6e, 0x2e, 0x76, 0x61, 0x72, 0x2e, 0x54,
0x45, 0x58, 0x43, 0x4f, 0x4f, 0x52, 0x44, 0x30, 0x00, 0x00, 0x00, 0x00,
0x05, 0x00, 0x07, 0x00, 0x04, 0x00, 0x00, 0x00, 0x6f, 0x75, 0x74, 0x2e,
0x76, 0x61, 0x72, 0x2e, 0x53, 0x56, 0x5f, 0x54, 0x61, 0x72, 0x67, 0x65,
0x74, 0x00, 0x00, 0x00, 0x05, 0x00, 0x04, 0x00, 0x01, 0x00, 0x00, 0x00,
0x6d, 0x61, 0x69, 0x6e, 0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x07, 0x00,
0x0b, 0x00, 0x00, 0x00, 0x74, 0x79, 0x70, 0x65, 0x2e, 0x73, 0x61, 0x6d,
0x70, 0x6c, 0x65, 0x64, 0x2e, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x00, 0x00,
0x47, 0x00, 0x04, 0x00, 0x02, 0x00, 0x00, 0x00, 0x1e, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x47, 0x00, 0x04, 0x00, 0x03, 0x00, 0x00, 0x00,
0x1e, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x47, 0x00, 0x04, 0x00,
0x04, 0x00, 0x00, 0x00, 0x1e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x47, 0x00, 0x04, 0x00, 0x06, 0x00, 0x00, 0x00, 0x22, 0x00, 0x00, 0x00,
0x02, 0x00, 0x00, 0x00, 0x47, 0x00, 0x04, 0x00, 0x06, 0x00, 0x00, 0x00,
0x21, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x47, 0x00, 0x04, 0x00,
0x07, 0x00, 0x00, 0x00, 0x22, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00,
0x47, 0x00, 0x04, 0x00, 0x07, 0x00, 0x00, 0x00, 0x21, 0x00, 0x00, 0x00,
0x01, 0x00, 0x00, 0x00, 0x47, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
0x22, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x47, 0x00, 0x04, 0x00,
0x09, 0x00, 0x00, 0x00, 0x21, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x47, 0x00, 0x04, 0x00, 0x0a, 0x00, 0x00, 0x00, 0x22, 0x00, 0x00, 0x00,
0x02, 0x00, 0x00, 0x00, 0x47, 0x00, 0x04, 0x00, 0x0a, 0x00, 0x00, 0x00,
0x21, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x16, 0x00, 0x03, 0x00,
0x0c, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x2b, 0x00, 0x04, 0x00,
0x0c, 0x00, 0x00, 0x00, 0x0d, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7f, 0x43,
0x2b, 0x00, 0x04, 0x00, 0x0c, 0x00, 0x00, 0x00, 0x0e, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x3f, 0x19, 0x00, 0x09, 0x00, 0x05, 0x00, 0x00, 0x00,
0x0c, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x04, 0x00, 0x0f, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x1a, 0x00, 0x02, 0x00,
0x08, 0x00, 0x00, 0x00, 0x20, 0x00, 0x04, 0x00, 0x10, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x17, 0x00, 0x04, 0x00,
0x11, 0x00, 0x00, 0x00, 0x0c, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00,
0x20, 0x00, 0x04, 0x00, 0x12, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
0x11, 0x00, 0x00, 0x00, 0x17, 0x00, 0x04, 0x00, 0x13, 0x00, 0x00, 0x00,
0x0c, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x20, 0x00, 0x04, 0x00,
0x14, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x13, 0x00, 0x00, 0x00,
0x20, 0x00, 0x04, 0x00, 0x15, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00,
0x11, 0x00, 0x00, 0x00, 0x13, 0x00, 0x02, 0x00, 0x16, 0x00, 0x00, 0x00,
0x21, 0x00, 0x03, 0x00, 0x17, 0x00, 0x00, 0x00, 0x16, 0x00, 0x00, 0x00,
0x1b, 0x00, 0x03, 0x00, 0x0b, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00,
0x3b, 0x00, 0x04, 0x00, 0x0f, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x3b, 0x00, 0x04, 0x00, 0x0f, 0x00, 0x00, 0x00,
0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3b, 0x00, 0x04, 0x00,
0x10, 0x00, 0x00, 0x00, 0x09, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x3b, 0x00, 0x04, 0x00, 0x10, 0x00, 0x00, 0x00, 0x0a, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x3b, 0x00, 0x04, 0x00, 0x12, 0x00, 0x00, 0x00,
0x02, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x3b, 0x00, 0x04, 0x00,
0x14, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
0x3b, 0x00, 0x04, 0x00, 0x15, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00,
0x03, 0x00, 0x00, 0x00, 0x2b, 0x00, 0x04, 0x00, 0x0c, 0x00, 0x00, 0x00,
0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x3b, 0x36, 0x00, 0x05, 0x00,
0x16, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x17, 0x00, 0x00, 0x00, 0xf8, 0x00, 0x02, 0x00, 0x19, 0x00, 0x00, 0x00,
0x3d, 0x00, 0x04, 0x00, 0x11, 0x00, 0x00, 0x00, 0x1a, 0x00, 0x00, 0x00,
0x02, 0x00, 0x00, 0x00, 0x3d, 0x00, 0x04, 0x00, 0x13, 0x00, 0x00, 0x00,
0x1b, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x3d, 0x00, 0x04, 0x00,
0x05, 0x00, 0x00, 0x00, 0x1c, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00,
0x3d, 0x00, 0x04, 0x00, 0x08, 0x00, 0x00, 0x00, 0x1d, 0x00, 0x00, 0x00,
0x09, 0x00, 0x00, 0x00, 0x56, 0x00, 0x05, 0x00, 0x0b, 0x00, 0x00, 0x00,
0x1e, 0x00, 0x00, 0x00, 0x1c, 0x00, 0x00, 0x00, 0x1d, 0x00, 0x00, 0x00,
0x57, 0x00, 0x06, 0x00, 0x11, 0x00, 0x00, 0x00, 0x1f, 0x00, 0x00, 0x00,
0x1e, 0x00, 0x00, 0x00, 0x1b, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x51, 0x00, 0x05, 0x00, 0x0c, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00,
0x1f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00,
0x0c, 0x00, 0x00, 0x00, 0x21, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00,
0x0d, 0x00, 0x00, 0x00, 0x3d, 0x00, 0x04, 0x00, 0x05, 0x00, 0x00, 0x00,
0x22, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00, 0x3d, 0x00, 0x04, 0x00,
0x08, 0x00, 0x00, 0x00, 0x23, 0x00, 0x00, 0x00, 0x0a, 0x00, 0x00, 0x00,
0x81, 0x00, 0x05, 0x00, 0x0c, 0x00, 0x00, 0x00, 0x24, 0x00, 0x00, 0x00,
0x21, 0x00, 0x00, 0x00, 0x0e, 0x00, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00,
0x0c, 0x00, 0x00, 0x00, 0x25, 0x00, 0x00, 0x00, 0x24, 0x00, 0x00, 0x00,
0x18, 0x00, 0x00, 0x00, 0x50, 0x00, 0x05, 0x00, 0x13, 0x00, 0x00, 0x00,
0x26, 0x00, 0x00, 0x00, 0x25, 0x00, 0x00, 0x00, 0x0e, 0x00, 0x00, 0x00,
0x56, 0x00, 0x05, 0x00, 0x0b, 0x00, 0x00, 0x00, 0x27, 0x00, 0x00, 0x00,
0x22, 0x00, 0x00, 0x00, 0x23, 0x00, 0x00, 0x00, 0x57, 0x00, 0x06, 0x00,
0x11, 0x00, 0x00, 0x00, 0x28, 0x00, 0x00, 0x00, 0x27, 0x00, 0x00, 0x00,
0x26, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00,
0x11, 0x00, 0x00, 0x00, 0x29, 0x00, 0x00, 0x00, 0x28, 0x00, 0x00, 0x00,
0x1a, 0x00, 0x00, 0x00, 0x3e, 0x00, 0x03, 0x00, 0x04, 0x00, 0x00, 0x00,
0x29, 0x00, 0x00, 0x00, 0xfd, 0x00, 0x01, 0x00, 0x38, 0x00, 0x01, 0x00
};
static const unsigned int texture_palette_frag_spv_len = 1236;

View File

@@ -1,426 +0,0 @@
static const unsigned char texture_palette_pixelart_frag_dxil[] = {
0x44, 0x58, 0x42, 0x43, 0xfc, 0xac, 0x96, 0xa0, 0x23, 0xe7, 0x88, 0xda,
0x37, 0xdd, 0x85, 0x27, 0x01, 0x50, 0x7b, 0xe3, 0x01, 0x00, 0x00, 0x00,
0xd0, 0x13, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x00, 0x00,
0x4c, 0x00, 0x00, 0x00, 0xa8, 0x00, 0x00, 0x00, 0xe4, 0x00, 0x00, 0x00,
0x20, 0x02, 0x00, 0x00, 0xe4, 0x09, 0x00, 0x00, 0x00, 0x0a, 0x00, 0x00,
0x53, 0x46, 0x49, 0x30, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x49, 0x53, 0x47, 0x31, 0x54, 0x00, 0x00, 0x00,
0x02, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x48, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0f, 0x0f, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x48, 0x00, 0x00, 0x00,
0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00,
0x01, 0x00, 0x00, 0x00, 0x03, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x54, 0x45, 0x58, 0x43, 0x4f, 0x4f, 0x52, 0x44, 0x00, 0x00, 0x00, 0x00,
0x4f, 0x53, 0x47, 0x31, 0x34, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x28, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x53, 0x56, 0x5f, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x00, 0x00, 0x00,
0x50, 0x53, 0x56, 0x30, 0x34, 0x01, 0x00, 0x00, 0x34, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff,
0x00, 0x00, 0x00, 0x00, 0x02, 0x01, 0x00, 0x02, 0x01, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x13, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x00,
0x02, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x0d, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x01, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x0e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x01, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
0x01, 0x00, 0x00, 0x00, 0x0e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x03, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x03, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
0x01, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x18, 0x00, 0x00, 0x00, 0x00, 0x54, 0x45, 0x58, 0x43, 0x4f, 0x4f, 0x52,
0x44, 0x00, 0x54, 0x45, 0x58, 0x43, 0x4f, 0x4f, 0x52, 0x44, 0x00, 0x6d,
0x61, 0x69, 0x6e, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x01, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x44, 0x00, 0x03, 0x02, 0x00, 0x00,
0x0a, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x01, 0x01, 0x42, 0x00,
0x03, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x01, 0x00, 0x44, 0x10, 0x03, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
0x02, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00,
0x0f, 0x00, 0x00, 0x00, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x53, 0x54, 0x41, 0x54, 0xbc, 0x07, 0x00, 0x00,
0x60, 0x00, 0x00, 0x00, 0xef, 0x01, 0x00, 0x00, 0x44, 0x58, 0x49, 0x4c,
0x00, 0x01, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0xa4, 0x07, 0x00, 0x00,
0x42, 0x43, 0xc0, 0xde, 0x21, 0x0c, 0x00, 0x00, 0xe6, 0x01, 0x00, 0x00,
0x0b, 0x82, 0x20, 0x00, 0x02, 0x00, 0x00, 0x00, 0x13, 0x00, 0x00, 0x00,
0x07, 0x81, 0x23, 0x91, 0x41, 0xc8, 0x04, 0x49, 0x06, 0x10, 0x32, 0x39,
0x92, 0x01, 0x84, 0x0c, 0x25, 0x05, 0x08, 0x19, 0x1e, 0x04, 0x8b, 0x62,
0x80, 0x18, 0x45, 0x02, 0x42, 0x92, 0x0b, 0x42, 0xc4, 0x10, 0x32, 0x14,
0x38, 0x08, 0x18, 0x4b, 0x0a, 0x32, 0x62, 0x88, 0x48, 0x90, 0x14, 0x20,
0x43, 0x46, 0x88, 0xa5, 0x00, 0x19, 0x32, 0x42, 0xe4, 0x48, 0x0e, 0x90,
0x11, 0x23, 0xc4, 0x50, 0x41, 0x51, 0x81, 0x8c, 0xe1, 0x83, 0xe5, 0x8a,
0x04, 0x31, 0x46, 0x06, 0x51, 0x18, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00,
0x1b, 0x8c, 0xe0, 0xff, 0xff, 0xff, 0xff, 0x07, 0x40, 0x02, 0xa8, 0x0d,
0x84, 0xf0, 0xff, 0xff, 0xff, 0xff, 0x03, 0x20, 0x6d, 0x30, 0x86, 0xff,
0xff, 0xff, 0xff, 0x1f, 0x00, 0x09, 0xa8, 0x00, 0x49, 0x18, 0x00, 0x00,
0x03, 0x00, 0x00, 0x00, 0x13, 0x82, 0x60, 0x42, 0x20, 0x4c, 0x08, 0x06,
0x00, 0x00, 0x00, 0x00, 0x89, 0x20, 0x00, 0x00, 0x56, 0x00, 0x00, 0x00,
0x32, 0x22, 0x88, 0x09, 0x20, 0x64, 0x85, 0x04, 0x13, 0x23, 0xa4, 0x84,
0x04, 0x13, 0x23, 0xe3, 0x84, 0xa1, 0x90, 0x14, 0x12, 0x4c, 0x8c, 0x8c,
0x0b, 0x84, 0xc4, 0x4c, 0x10, 0x94, 0xc1, 0x08, 0x40, 0x09, 0x00, 0x0a,
0x66, 0x00, 0xe6, 0x08, 0xc0, 0x60, 0x8e, 0x00, 0x29, 0xc6, 0x40, 0x10,
0x44, 0x41, 0x90, 0x51, 0x0c, 0x80, 0x20, 0x88, 0x62, 0x20, 0xa4, 0x0c,
0x03, 0x31, 0x90, 0x52, 0x88, 0x81, 0x18, 0x06, 0x62, 0x6e, 0x1a, 0x2e,
0x7f, 0xc2, 0x1e, 0x42, 0xf2, 0x57, 0x42, 0x5a, 0x89, 0xc9, 0x2f, 0x6e,
0x1b, 0x15, 0xc3, 0x30, 0x0c, 0x04, 0x15, 0xf7, 0x0c, 0x97, 0x3f, 0x61,
0x0f, 0x21, 0xf9, 0x21, 0xd0, 0x0c, 0x0b, 0x81, 0x82, 0xa7, 0x30, 0x0e,
0x01, 0x41, 0xc3, 0x30, 0x0c, 0x04, 0x41, 0x0c, 0x14, 0x15, 0xc9, 0x21,
0x20, 0x68, 0x18, 0x86, 0x81, 0x20, 0x88, 0x61, 0x18, 0x86, 0x61, 0x18,
0x68, 0x3a, 0x6a, 0xb8, 0xfc, 0x09, 0x7b, 0x08, 0xc9, 0xe7, 0x36, 0xaa,
0x58, 0x89, 0xc9, 0x2f, 0x6e, 0x1b, 0x11, 0xc3, 0x30, 0x0c, 0x85, 0xa8,
0x08, 0x88, 0x20, 0x6b, 0x8e, 0x20, 0x28, 0x06, 0x44, 0x14, 0x04, 0x81,
0x51, 0x36, 0x10, 0x30, 0x8c, 0x40, 0x0c, 0x33, 0xb5, 0xc1, 0x38, 0xb0,
0x43, 0x38, 0xcc, 0xc3, 0x3c, 0xb8, 0x01, 0x2d, 0x94, 0x03, 0x3e, 0xd0,
0x43, 0x3d, 0xc8, 0x43, 0x39, 0xc8, 0x01, 0x29, 0xf0, 0x81, 0x3d, 0x94,
0xc3, 0x38, 0xd0, 0xc3, 0x3b, 0xc8, 0x03, 0x1f, 0x98, 0x03, 0x3b, 0xbc,
0x43, 0x38, 0xd0, 0x03, 0x1b, 0x80, 0x01, 0x1d, 0xf8, 0x01, 0x18, 0xf8,
0x81, 0x1e, 0xe8, 0x41, 0x3b, 0xa4, 0x03, 0x3c, 0xcc, 0xc3, 0x2f, 0xd0,
0x43, 0x3e, 0xc0, 0x43, 0x39, 0xa0, 0x80, 0x98, 0x49, 0x0c, 0xc6, 0x81,
0x1d, 0xc2, 0x61, 0x1e, 0xe6, 0xc1, 0x0d, 0x68, 0xa1, 0x1c, 0xf0, 0x81,
0x1e, 0xea, 0x41, 0x1e, 0xca, 0x41, 0x0e, 0x48, 0x81, 0x0f, 0xec, 0xa1,
0x1c, 0xc6, 0x81, 0x1e, 0xde, 0x41, 0x1e, 0xf8, 0xc0, 0x1c, 0xd8, 0xe1,
0x1d, 0xc2, 0x81, 0x1e, 0xd8, 0x00, 0x0c, 0xe8, 0xc0, 0x0f, 0xc0, 0xc0,
0x0f, 0x90, 0xc0, 0x75, 0xe4, 0x1d, 0x33, 0x61, 0x0f, 0xf1, 0x73, 0x4e,
0x33, 0x11, 0xd7, 0x84, 0x02, 0x8e, 0xc0, 0x9b, 0xa4, 0x29, 0xa2, 0x84,
0xc9, 0x67, 0x01, 0xe6, 0x59, 0x88, 0x88, 0x9d, 0x80, 0x89, 0x40, 0x01,
0x41, 0x62, 0x22, 0x10, 0x00, 0x00, 0x00, 0x00, 0x13, 0x14, 0x72, 0xc0,
0x87, 0x74, 0x60, 0x87, 0x36, 0x68, 0x87, 0x79, 0x68, 0x03, 0x72, 0xc0,
0x87, 0x0d, 0xaf, 0x50, 0x0e, 0x6d, 0xd0, 0x0e, 0x7a, 0x50, 0x0e, 0x6d,
0x00, 0x0f, 0x7a, 0x30, 0x07, 0x72, 0xa0, 0x07, 0x73, 0x20, 0x07, 0x6d,
0x90, 0x0e, 0x71, 0xa0, 0x07, 0x73, 0x20, 0x07, 0x6d, 0x90, 0x0e, 0x78,
0xa0, 0x07, 0x73, 0x20, 0x07, 0x6d, 0x90, 0x0e, 0x71, 0x60, 0x07, 0x7a,
0x30, 0x07, 0x72, 0xd0, 0x06, 0xe9, 0x30, 0x07, 0x72, 0xa0, 0x07, 0x73,
0x20, 0x07, 0x6d, 0x90, 0x0e, 0x76, 0x40, 0x07, 0x7a, 0x60, 0x07, 0x74,
0xd0, 0x06, 0xe6, 0x10, 0x07, 0x76, 0xa0, 0x07, 0x73, 0x20, 0x07, 0x6d,
0x60, 0x0e, 0x73, 0x20, 0x07, 0x7a, 0x30, 0x07, 0x72, 0xd0, 0x06, 0xe6,
0x60, 0x07, 0x74, 0xa0, 0x07, 0x76, 0x40, 0x07, 0x6d, 0xe0, 0x0e, 0x78,
0xa0, 0x07, 0x71, 0x60, 0x07, 0x7a, 0x30, 0x07, 0x72, 0xa0, 0x07, 0x76,
0x40, 0x07, 0x43, 0x9e, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x86, 0x3c, 0x06, 0x10, 0x00, 0x01, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x0c, 0x79, 0x10, 0x20, 0x00, 0x04, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0xf2, 0x28, 0x40, 0x00, 0x04, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0xe4, 0x61, 0x80, 0x00, 0x08,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x60, 0xc8, 0x13, 0x01, 0x01,
0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x90, 0x67, 0x02,
0x02, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x21, 0x8f,
0x05, 0x04, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43,
0x9e, 0x0c, 0x08, 0x80, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0xb2, 0x40, 0x00, 0x00, 0x12, 0x00, 0x00, 0x00, 0x32, 0x1e, 0x98, 0x18,
0x19, 0x11, 0x4c, 0x90, 0x8c, 0x09, 0x26, 0x47, 0xc6, 0x04, 0x43, 0x22,
0x4a, 0x60, 0x04, 0xa0, 0x18, 0x8a, 0xa0, 0x24, 0xca, 0xa0, 0x40, 0xca,
0xa1, 0x34, 0x0a, 0xa1, 0x3c, 0x8a, 0xac, 0x48, 0x03, 0xa8, 0x28, 0x89,
0x11, 0x80, 0x22, 0x28, 0x84, 0x02, 0xa1, 0x6f, 0x06, 0x80, 0xc0, 0x19,
0x00, 0x0a, 0x67, 0x00, 0x68, 0x9c, 0x01, 0x20, 0x72, 0x2c, 0xc4, 0x20,
0x02, 0x81, 0x40, 0x9e, 0x07, 0x00, 0x00, 0x00, 0x79, 0x18, 0x00, 0x00,
0x9f, 0x00, 0x00, 0x00, 0x1a, 0x03, 0x4c, 0x90, 0x46, 0x02, 0x13, 0x44,
0x8f, 0x0c, 0x6f, 0xec, 0xed, 0x4d, 0x0c, 0x24, 0xc6, 0x05, 0xc7, 0x45,
0xa6, 0x06, 0xa6, 0xc6, 0x45, 0x06, 0x07, 0x04, 0x25, 0xa7, 0xcc, 0x4c,
0x4c, 0xcc, 0x66, 0x6c, 0x46, 0x26, 0x65, 0x43, 0x10, 0x4c, 0x10, 0x88,
0x64, 0x82, 0x40, 0x28, 0x1b, 0x84, 0x81, 0xd8, 0x20, 0x10, 0x04, 0x05,
0xb8, 0xb9, 0x09, 0x02, 0xb1, 0x6c, 0x18, 0x0e, 0x84, 0x98, 0x20, 0x7c,
0x1b, 0x93, 0xba, 0x2f, 0xba, 0x32, 0x3c, 0xba, 0x3a, 0xb9, 0xb2, 0x09,
0x02, 0xc1, 0x4c, 0x10, 0x88, 0x66, 0x83, 0x40, 0x34, 0x1b, 0x12, 0x42,
0x59, 0x18, 0x62, 0x60, 0x08, 0x87, 0x49, 0xdd, 0x17, 0x5c, 0x18, 0x5b,
0x19, 0x1d, 0x5d, 0xd9, 0x86, 0x64, 0x50, 0x20, 0x66, 0x18, 0x18, 0xc2,
0xd9, 0x20, 0x3c, 0xd1, 0x04, 0x21, 0x0c, 0x3a, 0x32, 0x74, 0x79, 0x70,
0x65, 0x5f, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x13, 0x04, 0xc2,
0x99, 0x20, 0x10, 0xcf, 0x06, 0x84, 0x98, 0xa8, 0x8a, 0x18, 0x2c, 0x60,
0x43, 0x70, 0x4d, 0x10, 0xc6, 0xc0, 0xa3, 0x52, 0xf7, 0x35, 0x17, 0xd6,
0x06, 0xc7, 0x56, 0x26, 0x17, 0xb3, 0x01, 0x21, 0x32, 0x8d, 0x21, 0x06,
0x02, 0xa0, 0x52, 0xf7, 0x35, 0x17, 0xd6, 0x06, 0xc7, 0x56, 0x26, 0x27,
0xb3, 0x01, 0x19, 0x32, 0x8e, 0x19, 0x06, 0x02, 0xd8, 0x20, 0x6c, 0xdd,
0x06, 0x42, 0x02, 0x30, 0x6f, 0x82, 0x00, 0x06, 0x1c, 0xa5, 0xa1, 0x37,
0x37, 0xba, 0x32, 0x3c, 0xba, 0x2f, 0xba, 0x32, 0xbc, 0x32, 0xb6, 0xaf,
0xb9, 0x34, 0xbd, 0xb2, 0x09, 0x02, 0x01, 0x4d, 0x10, 0x88, 0x68, 0x82,
0x40, 0x48, 0x1b, 0x10, 0x24, 0x0c, 0x2a, 0x42, 0x0c, 0x9a, 0x31, 0x20,
0x83, 0x0d, 0x82, 0x55, 0x06, 0x1b, 0x06, 0x02, 0x0c, 0xcc, 0x60, 0x82,
0x20, 0x00, 0x1b, 0x80, 0x0d, 0x03, 0x91, 0x06, 0x69, 0xb0, 0x21, 0x50,
0x83, 0x0d, 0xc3, 0x80, 0x06, 0x6b, 0x30, 0x41, 0x20, 0x83, 0x6f, 0x43,
0xd0, 0x06, 0x24, 0xda, 0xc2, 0xd2, 0xdc, 0x88, 0x50, 0x15, 0x61, 0x0d,
0x3d, 0x3d, 0x49, 0x11, 0x4d, 0x10, 0x0a, 0x6b, 0x82, 0x50, 0x5c, 0x1b,
0x02, 0x62, 0x82, 0x50, 0x60, 0x13, 0x84, 0x22, 0x9b, 0x20, 0x10, 0xd3,
0x06, 0xa1, 0xb2, 0x83, 0x0d, 0x0b, 0x01, 0x07, 0x71, 0x20, 0x07, 0x73,
0x40, 0x07, 0x43, 0x1d, 0x10, 0x72, 0x70, 0x07, 0x1b, 0x82, 0x61, 0x83,
0x50, 0x55, 0x1b, 0x96, 0x01, 0x0e, 0xe2, 0x40, 0x0e, 0xf2, 0x80, 0x0e,
0x06, 0x3a, 0x18, 0xe4, 0x40, 0x0f, 0x36, 0x08, 0x78, 0xb0, 0x07, 0x4c,
0xa6, 0xac, 0xbe, 0xa8, 0xc2, 0xe4, 0xce, 0xca, 0xe8, 0x26, 0x08, 0x85,
0xb6, 0x61, 0x21, 0xfa, 0x20, 0x0e, 0xfc, 0x60, 0x0e, 0xe4, 0x60, 0xa8,
0x03, 0x42, 0x0e, 0xee, 0x60, 0x43, 0xf0, 0x07, 0x1b, 0x06, 0x3e, 0x00,
0x05, 0x60, 0x43, 0x81, 0x06, 0x6f, 0x10, 0x0a, 0x1f, 0x40, 0xc3, 0x8c,
0xed, 0x2d, 0x8c, 0x6e, 0x6e, 0x82, 0x40, 0x50, 0x2c, 0xd2, 0xdc, 0xe6,
0xe8, 0xe6, 0x26, 0x08, 0x44, 0x45, 0x63, 0x2e, 0xed, 0xec, 0x8b, 0x8d,
0x8c, 0xc6, 0x5c, 0xda, 0xd9, 0xd7, 0x1c, 0x1d, 0x11, 0xba, 0x32, 0xbc,
0xaf, 0x33, 0xb9, 0x30, 0x32, 0x22, 0x74, 0x65, 0x78, 0x5f, 0x6e, 0x6f,
0x72, 0x6d, 0x1b, 0x98, 0x51, 0x20, 0x85, 0x52, 0x30, 0x85, 0x53, 0x40,
0x50, 0x81, 0x0c, 0x52, 0x61, 0x50, 0x85, 0xa1, 0x0a, 0x1b, 0x9b, 0x5d,
0x9b, 0x4b, 0x1a, 0x59, 0x99, 0x1b, 0xdd, 0x94, 0x20, 0xa8, 0x42, 0x86,
0xe7, 0x62, 0x57, 0x26, 0x37, 0x97, 0xf6, 0xe6, 0x36, 0x25, 0x20, 0x9a,
0x90, 0xe1, 0xb9, 0xd8, 0x85, 0xb1, 0xd9, 0x95, 0xc9, 0x4d, 0x09, 0x8a,
0x3a, 0x64, 0x78, 0x2e, 0x73, 0x68, 0x61, 0x64, 0x65, 0x72, 0x4d, 0x6f,
0x64, 0x65, 0x6c, 0x53, 0x02, 0xa4, 0x0c, 0x19, 0x9e, 0x8b, 0x5c, 0xd9,
0xdc, 0x5b, 0x9d, 0xdc, 0x58, 0xd9, 0xdc, 0x94, 0xc0, 0xab, 0x44, 0x86,
0xe7, 0x42, 0x97, 0x07, 0x57, 0x16, 0xe4, 0xe6, 0xf6, 0x46, 0x17, 0x46,
0x97, 0xf6, 0xe6, 0x36, 0x37, 0x45, 0x30, 0x83, 0x35, 0xa8, 0x43, 0x86,
0xe7, 0x62, 0x97, 0x56, 0x76, 0x97, 0x44, 0x36, 0x45, 0x17, 0x46, 0x57,
0x36, 0x25, 0x68, 0x83, 0x3a, 0x64, 0x78, 0x2e, 0x65, 0x6e, 0x74, 0x72,
0x79, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x53, 0x82, 0x50, 0xe8, 0x42,
0x86, 0xe7, 0x32, 0xf6, 0x56, 0xe7, 0x46, 0x57, 0x26, 0x37, 0x37, 0x25,
0x50, 0x05, 0x00, 0x00, 0x79, 0x18, 0x00, 0x00, 0x4c, 0x00, 0x00, 0x00,
0x33, 0x08, 0x80, 0x1c, 0xc4, 0xe1, 0x1c, 0x66, 0x14, 0x01, 0x3d, 0x88,
0x43, 0x38, 0x84, 0xc3, 0x8c, 0x42, 0x80, 0x07, 0x79, 0x78, 0x07, 0x73,
0x98, 0x71, 0x0c, 0xe6, 0x00, 0x0f, 0xed, 0x10, 0x0e, 0xf4, 0x80, 0x0e,
0x33, 0x0c, 0x42, 0x1e, 0xc2, 0xc1, 0x1d, 0xce, 0xa1, 0x1c, 0x66, 0x30,
0x05, 0x3d, 0x88, 0x43, 0x38, 0x84, 0x83, 0x1b, 0xcc, 0x03, 0x3d, 0xc8,
0x43, 0x3d, 0x8c, 0x03, 0x3d, 0xcc, 0x78, 0x8c, 0x74, 0x70, 0x07, 0x7b,
0x08, 0x07, 0x79, 0x48, 0x87, 0x70, 0x70, 0x07, 0x7a, 0x70, 0x03, 0x76,
0x78, 0x87, 0x70, 0x20, 0x87, 0x19, 0xcc, 0x11, 0x0e, 0xec, 0x90, 0x0e,
0xe1, 0x30, 0x0f, 0x6e, 0x30, 0x0f, 0xe3, 0xf0, 0x0e, 0xf0, 0x50, 0x0e,
0x33, 0x10, 0xc4, 0x1d, 0xde, 0x21, 0x1c, 0xd8, 0x21, 0x1d, 0xc2, 0x61,
0x1e, 0x66, 0x30, 0x89, 0x3b, 0xbc, 0x83, 0x3b, 0xd0, 0x43, 0x39, 0xb4,
0x03, 0x3c, 0xbc, 0x83, 0x3c, 0x84, 0x03, 0x3b, 0xcc, 0xf0, 0x14, 0x76,
0x60, 0x07, 0x7b, 0x68, 0x07, 0x37, 0x68, 0x87, 0x72, 0x68, 0x07, 0x37,
0x80, 0x87, 0x70, 0x90, 0x87, 0x70, 0x60, 0x07, 0x76, 0x28, 0x07, 0x76,
0xf8, 0x05, 0x76, 0x78, 0x87, 0x77, 0x80, 0x87, 0x5f, 0x08, 0x87, 0x71,
0x18, 0x87, 0x72, 0x98, 0x87, 0x79, 0x98, 0x81, 0x2c, 0xee, 0xf0, 0x0e,
0xee, 0xe0, 0x0e, 0xf5, 0xc0, 0x0e, 0xec, 0x30, 0x03, 0x62, 0xc8, 0xa1,
0x1c, 0xe4, 0xa1, 0x1c, 0xcc, 0xa1, 0x1c, 0xe4, 0xa1, 0x1c, 0xdc, 0x61,
0x1c, 0xca, 0x21, 0x1c, 0xc4, 0x81, 0x1d, 0xca, 0x61, 0x06, 0xd6, 0x90,
0x43, 0x39, 0xc8, 0x43, 0x39, 0x98, 0x43, 0x39, 0xc8, 0x43, 0x39, 0xb8,
0xc3, 0x38, 0x94, 0x43, 0x38, 0x88, 0x03, 0x3b, 0x94, 0xc3, 0x2f, 0xbc,
0x83, 0x3c, 0xfc, 0x82, 0x3b, 0xd4, 0x03, 0x3b, 0xb0, 0xc3, 0x8c, 0xc8,
0x21, 0x07, 0x7c, 0x70, 0x03, 0x72, 0x10, 0x87, 0x73, 0x70, 0x03, 0x7b,
0x08, 0x07, 0x79, 0x60, 0x87, 0x70, 0xc8, 0x87, 0x77, 0xa8, 0x07, 0x7a,
0x98, 0x81, 0x3c, 0xe4, 0x80, 0x0f, 0x6e, 0x40, 0x0f, 0xe5, 0xd0, 0x0e,
0xf0, 0x00, 0x00, 0x00, 0x71, 0x20, 0x00, 0x00, 0x23, 0x00, 0x00, 0x00,
0x46, 0x00, 0x0d, 0x97, 0xef, 0x3c, 0x7e, 0x80, 0x34, 0x40, 0x84, 0xf9,
0xc5, 0x6d, 0xdb, 0xc1, 0x36, 0x5c, 0xbe, 0xf3, 0xf8, 0x42, 0x40, 0x15,
0x05, 0x11, 0x95, 0x0e, 0x30, 0x94, 0x84, 0x01, 0x08, 0x98, 0x5f, 0xdc,
0xb6, 0x21, 0x48, 0xc3, 0xe5, 0x3b, 0x8f, 0x2f, 0x44, 0x04, 0x30, 0x11,
0x21, 0xd0, 0x0c, 0x0b, 0x61, 0x01, 0xd3, 0x70, 0xf9, 0xce, 0xe3, 0x2f,
0x0e, 0x30, 0x88, 0xcd, 0x43, 0x4d, 0x7e, 0x71, 0xdb, 0x56, 0x00, 0x0d,
0x97, 0xef, 0x3c, 0xbe, 0x04, 0x30, 0xcf, 0x42, 0xf8, 0xc5, 0x6d, 0x9b,
0x01, 0x35, 0x5c, 0xbe, 0xf3, 0xf8, 0x12, 0xc0, 0x3c, 0x0b, 0x01, 0x46,
0xc0, 0xe0, 0x17, 0xb7, 0x6d, 0x02, 0xd5, 0x70, 0xf9, 0xce, 0xe3, 0x4b,
0x93, 0x13, 0x11, 0x28, 0x35, 0x3d, 0xd4, 0xe4, 0x17, 0xb7, 0x6d, 0x03,
0xcf, 0x70, 0xf9, 0xce, 0xe3, 0x53, 0x0d, 0x10, 0x61, 0x7e, 0x71, 0xdb,
0x06, 0x40, 0x30, 0x00, 0xd2, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x48, 0x41, 0x53, 0x48, 0x14, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x9f, 0xb3, 0x26, 0x31, 0x36, 0xb8, 0x29, 0x67, 0x66, 0xc8, 0x7e, 0x84,
0x3e, 0x27, 0x25, 0x2a, 0x44, 0x58, 0x49, 0x4c, 0xc8, 0x09, 0x00, 0x00,
0x60, 0x00, 0x00, 0x00, 0x72, 0x02, 0x00, 0x00, 0x44, 0x58, 0x49, 0x4c,
0x00, 0x01, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0xb0, 0x09, 0x00, 0x00,
0x42, 0x43, 0xc0, 0xde, 0x21, 0x0c, 0x00, 0x00, 0x69, 0x02, 0x00, 0x00,
0x0b, 0x82, 0x20, 0x00, 0x02, 0x00, 0x00, 0x00, 0x13, 0x00, 0x00, 0x00,
0x07, 0x81, 0x23, 0x91, 0x41, 0xc8, 0x04, 0x49, 0x06, 0x10, 0x32, 0x39,
0x92, 0x01, 0x84, 0x0c, 0x25, 0x05, 0x08, 0x19, 0x1e, 0x04, 0x8b, 0x62,
0x80, 0x18, 0x45, 0x02, 0x42, 0x92, 0x0b, 0x42, 0xc4, 0x10, 0x32, 0x14,
0x38, 0x08, 0x18, 0x4b, 0x0a, 0x32, 0x62, 0x88, 0x48, 0x90, 0x14, 0x20,
0x43, 0x46, 0x88, 0xa5, 0x00, 0x19, 0x32, 0x42, 0xe4, 0x48, 0x0e, 0x90,
0x11, 0x23, 0xc4, 0x50, 0x41, 0x51, 0x81, 0x8c, 0xe1, 0x83, 0xe5, 0x8a,
0x04, 0x31, 0x46, 0x06, 0x51, 0x18, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00,
0x1b, 0x8c, 0xe0, 0xff, 0xff, 0xff, 0xff, 0x07, 0x40, 0x02, 0xa8, 0x0d,
0x84, 0xf0, 0xff, 0xff, 0xff, 0xff, 0x03, 0x20, 0x6d, 0x30, 0x86, 0xff,
0xff, 0xff, 0xff, 0x1f, 0x00, 0x09, 0xa8, 0x00, 0x49, 0x18, 0x00, 0x00,
0x03, 0x00, 0x00, 0x00, 0x13, 0x82, 0x60, 0x42, 0x20, 0x4c, 0x08, 0x06,
0x00, 0x00, 0x00, 0x00, 0x89, 0x20, 0x00, 0x00, 0x56, 0x00, 0x00, 0x00,
0x32, 0x22, 0x88, 0x09, 0x20, 0x64, 0x85, 0x04, 0x13, 0x23, 0xa4, 0x84,
0x04, 0x13, 0x23, 0xe3, 0x84, 0xa1, 0x90, 0x14, 0x12, 0x4c, 0x8c, 0x8c,
0x0b, 0x84, 0xc4, 0x4c, 0x10, 0x94, 0xc1, 0x08, 0x40, 0x09, 0x00, 0x0a,
0x66, 0x00, 0xe6, 0x08, 0xc0, 0x60, 0x8e, 0x00, 0x29, 0xc6, 0x40, 0x10,
0x44, 0x41, 0x90, 0x51, 0x0c, 0x80, 0x20, 0x88, 0x62, 0x20, 0xa4, 0x0c,
0x03, 0x31, 0x90, 0x52, 0x88, 0x81, 0x18, 0x06, 0x62, 0x6e, 0x1a, 0x2e,
0x7f, 0xc2, 0x1e, 0x42, 0xf2, 0x57, 0x42, 0x5a, 0x89, 0xc9, 0x2f, 0x6e,
0x1b, 0x15, 0xc3, 0x30, 0x0c, 0x04, 0x15, 0xf7, 0x0c, 0x97, 0x3f, 0x61,
0x0f, 0x21, 0xf9, 0x21, 0xd0, 0x0c, 0x0b, 0x81, 0x82, 0xa7, 0x30, 0x0e,
0x01, 0x41, 0xc3, 0x30, 0x0c, 0x04, 0x41, 0x0c, 0x14, 0x15, 0xc9, 0x21,
0x20, 0x68, 0x18, 0x86, 0x81, 0x20, 0x88, 0x61, 0x18, 0x86, 0x61, 0x18,
0x68, 0x3a, 0x6a, 0xb8, 0xfc, 0x09, 0x7b, 0x08, 0xc9, 0xe7, 0x36, 0xaa,
0x58, 0x89, 0xc9, 0x2f, 0x6e, 0x1b, 0x11, 0xc3, 0x30, 0x0c, 0x85, 0xa8,
0x08, 0x88, 0x20, 0x6b, 0x8e, 0x20, 0x28, 0x06, 0x44, 0x14, 0x04, 0x81,
0x51, 0x36, 0x10, 0x30, 0x8c, 0x40, 0x0c, 0x33, 0xb5, 0xc1, 0x38, 0xb0,
0x43, 0x38, 0xcc, 0xc3, 0x3c, 0xb8, 0x01, 0x2d, 0x94, 0x03, 0x3e, 0xd0,
0x43, 0x3d, 0xc8, 0x43, 0x39, 0xc8, 0x01, 0x29, 0xf0, 0x81, 0x3d, 0x94,
0xc3, 0x38, 0xd0, 0xc3, 0x3b, 0xc8, 0x03, 0x1f, 0x98, 0x03, 0x3b, 0xbc,
0x43, 0x38, 0xd0, 0x03, 0x1b, 0x80, 0x01, 0x1d, 0xf8, 0x01, 0x18, 0xf8,
0x81, 0x1e, 0xe8, 0x41, 0x3b, 0xa4, 0x03, 0x3c, 0xcc, 0xc3, 0x2f, 0xd0,
0x43, 0x3e, 0xc0, 0x43, 0x39, 0xa0, 0x80, 0x98, 0x49, 0x0c, 0xc6, 0x81,
0x1d, 0xc2, 0x61, 0x1e, 0xe6, 0xc1, 0x0d, 0x68, 0xa1, 0x1c, 0xf0, 0x81,
0x1e, 0xea, 0x41, 0x1e, 0xca, 0x41, 0x0e, 0x48, 0x81, 0x0f, 0xec, 0xa1,
0x1c, 0xc6, 0x81, 0x1e, 0xde, 0x41, 0x1e, 0xf8, 0xc0, 0x1c, 0xd8, 0xe1,
0x1d, 0xc2, 0x81, 0x1e, 0xd8, 0x00, 0x0c, 0xe8, 0xc0, 0x0f, 0xc0, 0xc0,
0x0f, 0x90, 0xc0, 0x75, 0xe4, 0x1d, 0x33, 0x61, 0x0f, 0xf1, 0x73, 0x4e,
0x33, 0x11, 0xd7, 0x84, 0x02, 0x8e, 0xc0, 0x9b, 0xa4, 0x29, 0xa2, 0x84,
0xc9, 0x67, 0x01, 0xe6, 0x59, 0x88, 0x88, 0x9d, 0x80, 0x89, 0x40, 0x01,
0x41, 0x62, 0x22, 0x10, 0x00, 0x00, 0x00, 0x00, 0x13, 0x14, 0x72, 0xc0,
0x87, 0x74, 0x60, 0x87, 0x36, 0x68, 0x87, 0x79, 0x68, 0x03, 0x72, 0xc0,
0x87, 0x0d, 0xaf, 0x50, 0x0e, 0x6d, 0xd0, 0x0e, 0x7a, 0x50, 0x0e, 0x6d,
0x00, 0x0f, 0x7a, 0x30, 0x07, 0x72, 0xa0, 0x07, 0x73, 0x20, 0x07, 0x6d,
0x90, 0x0e, 0x71, 0xa0, 0x07, 0x73, 0x20, 0x07, 0x6d, 0x90, 0x0e, 0x78,
0xa0, 0x07, 0x73, 0x20, 0x07, 0x6d, 0x90, 0x0e, 0x71, 0x60, 0x07, 0x7a,
0x30, 0x07, 0x72, 0xd0, 0x06, 0xe9, 0x30, 0x07, 0x72, 0xa0, 0x07, 0x73,
0x20, 0x07, 0x6d, 0x90, 0x0e, 0x76, 0x40, 0x07, 0x7a, 0x60, 0x07, 0x74,
0xd0, 0x06, 0xe6, 0x10, 0x07, 0x76, 0xa0, 0x07, 0x73, 0x20, 0x07, 0x6d,
0x60, 0x0e, 0x73, 0x20, 0x07, 0x7a, 0x30, 0x07, 0x72, 0xd0, 0x06, 0xe6,
0x60, 0x07, 0x74, 0xa0, 0x07, 0x76, 0x40, 0x07, 0x6d, 0xe0, 0x0e, 0x78,
0xa0, 0x07, 0x71, 0x60, 0x07, 0x7a, 0x30, 0x07, 0x72, 0xa0, 0x07, 0x76,
0x40, 0x07, 0x43, 0x9e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x86, 0x3c, 0x06, 0x10, 0x00, 0x01, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x0c, 0x79, 0x10, 0x20, 0x00, 0x04, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0xf2, 0x28, 0x40, 0x00, 0x04, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0xe4, 0x61, 0x80, 0x00, 0x08,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x60, 0xc8, 0x13, 0x01, 0x01,
0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x90, 0x67, 0x02,
0x02, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x21, 0x8f,
0x05, 0x04, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43,
0x9e, 0x0c, 0x08, 0x80, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0xb2, 0x40, 0x00, 0x00, 0x0f, 0x00, 0x00, 0x00, 0x32, 0x1e, 0x98, 0x14,
0x19, 0x11, 0x4c, 0x90, 0x8c, 0x09, 0x26, 0x47, 0xc6, 0x04, 0x43, 0x22,
0x4a, 0x60, 0x04, 0xa0, 0x24, 0x8a, 0xa1, 0x08, 0xca, 0xa0, 0x40, 0xca,
0x83, 0x8a, 0x92, 0x18, 0x01, 0x28, 0x82, 0x42, 0x28, 0x10, 0xfa, 0x66,
0x00, 0x28, 0x9c, 0x01, 0xa0, 0x71, 0x06, 0x80, 0xc8, 0xb1, 0x10, 0x83,
0x08, 0x04, 0x02, 0x79, 0x1e, 0x00, 0x00, 0x00, 0x79, 0x18, 0x00, 0x00,
0x64, 0x00, 0x00, 0x00, 0x1a, 0x03, 0x4c, 0x90, 0x46, 0x02, 0x13, 0x44,
0x8f, 0x0c, 0x6f, 0xec, 0xed, 0x4d, 0x0c, 0x24, 0xc6, 0x05, 0xc7, 0x45,
0xa6, 0x06, 0xa6, 0xc6, 0x45, 0x06, 0x07, 0x04, 0x25, 0xa7, 0xcc, 0x4c,
0x4c, 0xcc, 0x66, 0x6c, 0x46, 0x26, 0x65, 0x43, 0x10, 0x4c, 0x10, 0x88,
0x64, 0x82, 0x40, 0x28, 0x1b, 0x84, 0x81, 0x98, 0x20, 0x10, 0xcb, 0x06,
0x61, 0x30, 0x28, 0xc0, 0xcd, 0x4d, 0x10, 0x08, 0x66, 0xc3, 0x80, 0x24,
0xc4, 0x04, 0xe1, 0xb3, 0x08, 0x4c, 0x10, 0x88, 0x66, 0x83, 0x40, 0x18,
0x1b, 0x12, 0x62, 0x61, 0x1a, 0x62, 0x68, 0x08, 0x67, 0x43, 0x32, 0x2c,
0x4c, 0x33, 0x0c, 0x0d, 0xe1, 0x6c, 0x10, 0x1e, 0x68, 0x82, 0x10, 0x06,
0xd7, 0x04, 0x81, 0x70, 0x26, 0x08, 0xc4, 0xb3, 0x01, 0x21, 0x24, 0x66,
0x22, 0x06, 0x0a, 0xd8, 0x10, 0x54, 0x13, 0x84, 0x31, 0xc0, 0x36, 0x20,
0xc4, 0xc5, 0x34, 0xc4, 0x40, 0x00, 0x1b, 0x90, 0xe1, 0x62, 0x9a, 0x61,
0x20, 0x80, 0x0d, 0x02, 0x96, 0x6d, 0x20, 0x22, 0xc0, 0xd2, 0x26, 0x08,
0x64, 0x90, 0x6d, 0x08, 0xb8, 0x09, 0x82, 0x00, 0x90, 0x68, 0x0b, 0x4b,
0x73, 0x23, 0x42, 0x55, 0x84, 0x35, 0xf4, 0xf4, 0x24, 0x45, 0x34, 0x41,
0x28, 0xa2, 0x09, 0x42, 0x21, 0x6d, 0x08, 0x88, 0x09, 0x42, 0x31, 0x4d,
0x10, 0x0a, 0x6a, 0x82, 0x40, 0x40, 0x1b, 0x84, 0xc9, 0x0c, 0x36, 0x2c,
0x04, 0x18, 0x84, 0x81, 0x18, 0x8c, 0x01, 0x19, 0x0c, 0x65, 0x40, 0x88,
0xc1, 0x19, 0x6c, 0x08, 0x86, 0x0d, 0xc2, 0x34, 0x6d, 0x58, 0x06, 0x30,
0x08, 0x03, 0x31, 0x48, 0x03, 0x32, 0x18, 0xc8, 0x60, 0x10, 0x03, 0x35,
0xd8, 0x20, 0xa0, 0xc1, 0x1a, 0x30, 0x99, 0xb2, 0xfa, 0xa2, 0x0a, 0x93,
0x3b, 0x2b, 0xa3, 0x9b, 0x20, 0x14, 0xd5, 0x86, 0x85, 0x68, 0x83, 0x30,
0x70, 0x83, 0x31, 0x10, 0x83, 0xa1, 0x0c, 0x08, 0x31, 0x38, 0x83, 0x0d,
0xc1, 0x1b, 0x6c, 0x18, 0xd8, 0x00, 0x0e, 0x80, 0x0d, 0x85, 0xf7, 0xc5,
0xc1, 0x06, 0x54, 0x61, 0x63, 0xb3, 0x6b, 0x73, 0x49, 0x23, 0x2b, 0x73,
0xa3, 0x9b, 0x12, 0x04, 0x55, 0xc8, 0xf0, 0x5c, 0xec, 0xca, 0xe4, 0xe6,
0xd2, 0xde, 0xdc, 0xa6, 0x04, 0x44, 0x13, 0x32, 0x3c, 0x17, 0xbb, 0x30,
0x36, 0xbb, 0x32, 0xb9, 0x29, 0x81, 0x51, 0x87, 0x0c, 0xcf, 0x65, 0x0e,
0x2d, 0x8c, 0xac, 0x4c, 0xae, 0xe9, 0x8d, 0xac, 0x8c, 0x6d, 0x4a, 0x90,
0x94, 0x21, 0xc3, 0x73, 0x91, 0x2b, 0x9b, 0x7b, 0xab, 0x93, 0x1b, 0x2b,
0x9b, 0x9b, 0x12, 0x68, 0x75, 0xc8, 0xf0, 0x5c, 0xec, 0xd2, 0xca, 0xee,
0x92, 0xc8, 0xa6, 0xe8, 0xc2, 0xe8, 0xca, 0xa6, 0x04, 0x5c, 0x1d, 0x32,
0x3c, 0x97, 0x32, 0x37, 0x3a, 0xb9, 0x3c, 0xa8, 0xb7, 0x34, 0x37, 0xba,
0xb9, 0x29, 0x41, 0x1c, 0x00, 0x00, 0x00, 0x00, 0x79, 0x18, 0x00, 0x00,
0x4c, 0x00, 0x00, 0x00, 0x33, 0x08, 0x80, 0x1c, 0xc4, 0xe1, 0x1c, 0x66,
0x14, 0x01, 0x3d, 0x88, 0x43, 0x38, 0x84, 0xc3, 0x8c, 0x42, 0x80, 0x07,
0x79, 0x78, 0x07, 0x73, 0x98, 0x71, 0x0c, 0xe6, 0x00, 0x0f, 0xed, 0x10,
0x0e, 0xf4, 0x80, 0x0e, 0x33, 0x0c, 0x42, 0x1e, 0xc2, 0xc1, 0x1d, 0xce,
0xa1, 0x1c, 0x66, 0x30, 0x05, 0x3d, 0x88, 0x43, 0x38, 0x84, 0x83, 0x1b,
0xcc, 0x03, 0x3d, 0xc8, 0x43, 0x3d, 0x8c, 0x03, 0x3d, 0xcc, 0x78, 0x8c,
0x74, 0x70, 0x07, 0x7b, 0x08, 0x07, 0x79, 0x48, 0x87, 0x70, 0x70, 0x07,
0x7a, 0x70, 0x03, 0x76, 0x78, 0x87, 0x70, 0x20, 0x87, 0x19, 0xcc, 0x11,
0x0e, 0xec, 0x90, 0x0e, 0xe1, 0x30, 0x0f, 0x6e, 0x30, 0x0f, 0xe3, 0xf0,
0x0e, 0xf0, 0x50, 0x0e, 0x33, 0x10, 0xc4, 0x1d, 0xde, 0x21, 0x1c, 0xd8,
0x21, 0x1d, 0xc2, 0x61, 0x1e, 0x66, 0x30, 0x89, 0x3b, 0xbc, 0x83, 0x3b,
0xd0, 0x43, 0x39, 0xb4, 0x03, 0x3c, 0xbc, 0x83, 0x3c, 0x84, 0x03, 0x3b,
0xcc, 0xf0, 0x14, 0x76, 0x60, 0x07, 0x7b, 0x68, 0x07, 0x37, 0x68, 0x87,
0x72, 0x68, 0x07, 0x37, 0x80, 0x87, 0x70, 0x90, 0x87, 0x70, 0x60, 0x07,
0x76, 0x28, 0x07, 0x76, 0xf8, 0x05, 0x76, 0x78, 0x87, 0x77, 0x80, 0x87,
0x5f, 0x08, 0x87, 0x71, 0x18, 0x87, 0x72, 0x98, 0x87, 0x79, 0x98, 0x81,
0x2c, 0xee, 0xf0, 0x0e, 0xee, 0xe0, 0x0e, 0xf5, 0xc0, 0x0e, 0xec, 0x30,
0x03, 0x62, 0xc8, 0xa1, 0x1c, 0xe4, 0xa1, 0x1c, 0xcc, 0xa1, 0x1c, 0xe4,
0xa1, 0x1c, 0xdc, 0x61, 0x1c, 0xca, 0x21, 0x1c, 0xc4, 0x81, 0x1d, 0xca,
0x61, 0x06, 0xd6, 0x90, 0x43, 0x39, 0xc8, 0x43, 0x39, 0x98, 0x43, 0x39,
0xc8, 0x43, 0x39, 0xb8, 0xc3, 0x38, 0x94, 0x43, 0x38, 0x88, 0x03, 0x3b,
0x94, 0xc3, 0x2f, 0xbc, 0x83, 0x3c, 0xfc, 0x82, 0x3b, 0xd4, 0x03, 0x3b,
0xb0, 0xc3, 0x8c, 0xc8, 0x21, 0x07, 0x7c, 0x70, 0x03, 0x72, 0x10, 0x87,
0x73, 0x70, 0x03, 0x7b, 0x08, 0x07, 0x79, 0x60, 0x87, 0x70, 0xc8, 0x87,
0x77, 0xa8, 0x07, 0x7a, 0x98, 0x81, 0x3c, 0xe4, 0x80, 0x0f, 0x6e, 0x40,
0x0f, 0xe5, 0xd0, 0x0e, 0xf0, 0x00, 0x00, 0x00, 0x71, 0x20, 0x00, 0x00,
0x23, 0x00, 0x00, 0x00, 0x46, 0x00, 0x0d, 0x97, 0xef, 0x3c, 0x7e, 0x80,
0x34, 0x40, 0x84, 0xf9, 0xc5, 0x6d, 0xdb, 0xc1, 0x36, 0x5c, 0xbe, 0xf3,
0xf8, 0x42, 0x40, 0x15, 0x05, 0x11, 0x95, 0x0e, 0x30, 0x94, 0x84, 0x01,
0x08, 0x98, 0x5f, 0xdc, 0xb6, 0x21, 0x48, 0xc3, 0xe5, 0x3b, 0x8f, 0x2f,
0x44, 0x04, 0x30, 0x11, 0x21, 0xd0, 0x0c, 0x0b, 0x61, 0x01, 0xd3, 0x70,
0xf9, 0xce, 0xe3, 0x2f, 0x0e, 0x30, 0x88, 0xcd, 0x43, 0x4d, 0x7e, 0x71,
0xdb, 0x56, 0x00, 0x0d, 0x97, 0xef, 0x3c, 0xbe, 0x04, 0x30, 0xcf, 0x42,
0xf8, 0xc5, 0x6d, 0x9b, 0x01, 0x35, 0x5c, 0xbe, 0xf3, 0xf8, 0x12, 0xc0,
0x3c, 0x0b, 0x01, 0x46, 0xc0, 0xe0, 0x17, 0xb7, 0x6d, 0x02, 0xd5, 0x70,
0xf9, 0xce, 0xe3, 0x4b, 0x93, 0x13, 0x11, 0x28, 0x35, 0x3d, 0xd4, 0xe4,
0x17, 0xb7, 0x6d, 0x03, 0xcf, 0x70, 0xf9, 0xce, 0xe3, 0x53, 0x0d, 0x10,
0x61, 0x7e, 0x71, 0xdb, 0x06, 0x40, 0x30, 0x00, 0xd2, 0x00, 0x00, 0x00,
0x61, 0x20, 0x00, 0x00, 0xbf, 0x00, 0x00, 0x00, 0x13, 0x04, 0x41, 0x2c,
0x10, 0x00, 0x00, 0x00, 0x17, 0x00, 0x00, 0x00, 0x84, 0x8d, 0x00, 0x50,
0x51, 0x02, 0x65, 0x40, 0x44, 0xe1, 0x95, 0x5f, 0xd9, 0x95, 0x43, 0xb1,
0x94, 0xcd, 0x0c, 0x40, 0x21, 0x94, 0x5c, 0x29, 0x94, 0x69, 0x40, 0xa1,
0x06, 0x94, 0x51, 0x21, 0xd1, 0x30, 0x46, 0x00, 0x82, 0x20, 0x08, 0x77,
0x63, 0x04, 0x20, 0x08, 0xfa, 0xf7, 0x37, 0x46, 0x00, 0x82, 0x20, 0x48,
0x82, 0xc1, 0x18, 0x01, 0x08, 0x82, 0x20, 0x08, 0x06, 0x63, 0x04, 0x20,
0x08, 0x82, 0xf8, 0x2f, 0x8c, 0x11, 0x80, 0x20, 0x08, 0xe2, 0xdf, 0x18,
0x01, 0xdb, 0xc6, 0xaf, 0xbc, 0x8d, 0x11, 0x80, 0x20, 0x08, 0xc2, 0xdf,
0x0c, 0x00, 0x00, 0x00, 0x23, 0x06, 0x09, 0x00, 0x82, 0x60, 0x90, 0xb1,
0xc1, 0x23, 0x06, 0x6b, 0xb0, 0x06, 0xda, 0x88, 0x41, 0x02, 0x80, 0x20,
0x18, 0x64, 0x6d, 0x00, 0x8d, 0xc1, 0x1a, 0xac, 0xc1, 0x36, 0x62, 0x90,
0x00, 0x20, 0x08, 0x06, 0x99, 0x1b, 0x44, 0x5a, 0x1b, 0xb4, 0x01, 0x37,
0x62, 0x90, 0x00, 0x20, 0x08, 0x06, 0xd9, 0x1b, 0x48, 0x5b, 0x1b, 0xb4,
0x41, 0x37, 0x62, 0x90, 0x00, 0x20, 0x08, 0x06, 0x19, 0x1c, 0x4c, 0x65,
0xe0, 0x06, 0x6e, 0xe0, 0x8d, 0x18, 0x24, 0x00, 0x08, 0x82, 0x81, 0x81,
0x07, 0x15, 0x1c, 0xbc, 0xc1, 0x19, 0x58, 0x23, 0x06, 0x09, 0x00, 0x82,
0x60, 0x60, 0xe4, 0x81, 0x15, 0x07, 0x70, 0xf0, 0x5d, 0x23, 0x06, 0x09,
0x00, 0x82, 0x60, 0x60, 0xe8, 0xc1, 0x15, 0x07, 0x71, 0x90, 0x06, 0xd8,
0x88, 0x41, 0x02, 0x80, 0x20, 0x18, 0x18, 0x7b, 0x80, 0xc9, 0x81, 0x1c,
0x84, 0x41, 0x36, 0x62, 0x90, 0x00, 0x20, 0x08, 0x06, 0x06, 0x1f, 0x64,
0x73, 0x30, 0x07, 0x6a, 0xa0, 0x8d, 0x18, 0x24, 0x00, 0x08, 0x82, 0x81,
0xd1, 0x07, 0x1a, 0x1d, 0xd0, 0x81, 0x18, 0x6c, 0x23, 0x06, 0x06, 0x00,
0x82, 0x60, 0xa0, 0xf0, 0x01, 0x66, 0x8c, 0x18, 0x18, 0x00, 0x08, 0x82,
0x81, 0xd2, 0x07, 0x99, 0x31, 0x62, 0x60, 0x00, 0x20, 0x08, 0x06, 0x8a,
0x1f, 0xd4, 0x81, 0x30, 0x62, 0x60, 0x00, 0x20, 0x08, 0x06, 0xca, 0x1f,
0xd8, 0x81, 0x30, 0x62, 0x60, 0x00, 0x20, 0x08, 0x06, 0x0a, 0x28, 0x6c,
0xca, 0x88, 0x81, 0x01, 0x80, 0x20, 0x18, 0x28, 0xa1, 0xc0, 0x29, 0x23,
0x06, 0x06, 0x00, 0x82, 0x60, 0xa0, 0x88, 0x42, 0x1e, 0x08, 0x23, 0x06,
0x06, 0x00, 0x82, 0x60, 0xa0, 0x8c, 0x82, 0x1e, 0x08, 0x26, 0x18, 0xf0,
0x31, 0xc1, 0x80, 0xcf, 0x88, 0xc1, 0x01, 0x80, 0x20, 0x18, 0x58, 0xa2,
0xa0, 0x06, 0xd1, 0x1f, 0x8c, 0x26, 0x04, 0xc2, 0x68, 0x82, 0x30, 0x98,
0x50, 0xc8, 0xc7, 0x84, 0x42, 0x3e, 0x23, 0x06, 0x07, 0x00, 0x82, 0x60,
0xc0, 0xa8, 0x42, 0x19, 0x08, 0xdd, 0x88, 0xc1, 0x01, 0x80, 0x20, 0x18,
0x30, 0xab, 0x60, 0x06, 0x82, 0x37, 0x62, 0x70, 0x00, 0x20, 0x08, 0x06,
0x0c, 0x2b, 0x98, 0x81, 0x00, 0x06, 0x23, 0x06, 0x07, 0x00, 0x82, 0x60,
0xc0, 0xb4, 0xc2, 0x19, 0x08, 0x61, 0x60, 0x48, 0x26, 0x1f, 0x43, 0x32,
0xf9, 0x18, 0x21, 0x06, 0xf2, 0x31, 0x62, 0x0c, 0xe4, 0x63, 0x84, 0x10,
0x1f, 0x23, 0x84, 0xf8, 0x8c, 0x18, 0x18, 0x00, 0x08, 0x82, 0x81, 0x52,
0x0b, 0x76, 0x20, 0x8c, 0x18, 0x18, 0x00, 0x08, 0x82, 0x81, 0x62, 0x0b,
0x77, 0x20, 0x98, 0x80, 0x06, 0xf0, 0x31, 0x21, 0x0d, 0xe0, 0x33, 0x62,
0x60, 0x00, 0x20, 0x08, 0x06, 0x4a, 0x2e, 0xec, 0x81, 0x31, 0x62, 0x60,
0x00, 0x20, 0x08, 0x06, 0x8a, 0x2e, 0xf0, 0x81, 0x61, 0xce, 0x1b, 0xc0,
0xc7, 0x82, 0x01, 0x3e, 0xf6, 0xc4, 0x01, 0x7c, 0x2c, 0x20, 0xe0, 0x63,
0x83, 0x44, 0x1f, 0x13, 0x24, 0xfa, 0x8c, 0x18, 0x18, 0x00, 0x08, 0x82,
0x81, 0x12, 0x0e, 0xa4, 0x20, 0x8c, 0x18, 0x18, 0x00, 0x08, 0x82, 0x81,
0x22, 0x0e, 0xa5, 0x20, 0x98, 0x80, 0x07, 0xf2, 0x31, 0x21, 0x0f, 0xe4,
0x63, 0x7b, 0x20, 0xc4, 0xc7, 0xf8, 0x40, 0x88, 0x8f, 0x19, 0x86, 0x7c,
0x2c, 0x18, 0xe4, 0x63, 0xc7, 0x21, 0x1f, 0x0b, 0x08, 0xf9, 0x18, 0x35,
0xc0, 0xc7, 0x28, 0x01, 0x3e, 0xa3, 0x09, 0x67, 0x00, 0x8c, 0x26, 0xa0,
0x41, 0x60, 0x84, 0x20, 0x1f, 0x23, 0x04, 0xf9, 0x8c, 0x18, 0x54, 0x00,
0x08, 0x82, 0xc1, 0xe4, 0x0e, 0xb6, 0xf0, 0x07, 0x7d, 0x20, 0x04, 0xa1,
0x10, 0x0a, 0xea, 0xa0, 0x0e, 0xb1, 0x50, 0x07, 0x74, 0x10, 0x0a, 0x71,
0x00, 0x07, 0xa1, 0x10, 0x0a, 0xa3, 0x09, 0x01, 0x60, 0x81, 0x2a, 0xc8,
0xc7, 0x02, 0x56, 0x80, 0xcf, 0x88, 0xc1, 0x03, 0x80, 0x20, 0x18, 0x44,
0xf3, 0xb0, 0x0b, 0xa4, 0x20, 0x0a, 0x81, 0x29, 0x94, 0x42, 0x29, 0xb8,
0x83, 0x3b, 0xd4, 0x42, 0x29, 0x8c, 0x26, 0x04, 0xc0, 0x68, 0x82, 0x10,
0x8c, 0x26, 0x0c, 0xc2, 0x68, 0x02, 0x31, 0x18, 0x21, 0x0a, 0xf2, 0x31,
0x42, 0x14, 0xe4, 0x63, 0x84, 0x28, 0xc8, 0xc7, 0x08, 0x51, 0x90, 0xcf,
0x88, 0x41, 0x02, 0x80, 0x20, 0x18, 0x20, 0xff, 0xb0, 0x0b, 0xf7, 0x70,
0x0f, 0xef, 0x40, 0x8c, 0x18, 0x24, 0x00, 0x08, 0x82, 0x01, 0xf2, 0x0f,
0xbb, 0x70, 0x0f, 0xf7, 0x60, 0x0e, 0xc3, 0x88, 0x41, 0x02, 0x80, 0x20,
0x18, 0x20, 0xff, 0xb0, 0x0b, 0xf7, 0x70, 0x0f, 0xee, 0x20, 0x8c, 0x18,
0x24, 0x00, 0x08, 0x82, 0x01, 0xf2, 0x0f, 0xbb, 0x70, 0x0f, 0xf7, 0x50,
0x0e, 0x01, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00
};
static const unsigned int texture_palette_pixelart_frag_dxil_len = 5072;

View File

@@ -1,44 +0,0 @@
cbuffer Context : register(b0, space3) {
float4 texel_size;
};
Texture2D u_texture : register(t0, space2);
Texture2D u_palette : register(t1, space2);
SamplerState u_sampler1 : register(s0, space2);
SamplerState u_sampler2 : register(s1, space2);
struct PSInput {
float4 v_color : COLOR0;
float2 v_uv : TEXCOORD0;
};
struct PSOutput {
float4 o_color : SV_Target;
};
float2 GetPixelArtUV(PSInput input)
{
// box filter size in texel units
float2 boxSize = clamp(fwidth(input.v_uv) * texel_size.zw, 1e-5, 1);
// scale uv by texture size to get texel coordinate
float2 tx = input.v_uv * texel_size.zw - 0.5 * boxSize;
// compute offset for pixel-sized box filter
float2 txOffset = smoothstep(1 - boxSize, 1, frac(tx));
// compute bilinear sample uv coordinates
float2 uv = (floor(tx) + 0.5 + txOffset) * texel_size.xy;
return uv;
}
PSOutput main(PSInput input) {
PSOutput output;
float2 uv = GetPixelArtUV(input);
float index = u_texture.SampleGrad(u_sampler1, uv, ddx(input.v_uv), ddy(input.v_uv)).r * 255;
float4 color = u_palette.Sample(u_sampler2, float2((index + 0.5) / 256, 0.5));
output.o_color = color * input.v_color;
return output;
}

View File

@@ -1,99 +0,0 @@
static const unsigned char texture_palette_pixelart_frag_msl[] = {
0x23, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x20, 0x3c, 0x6d, 0x65,
0x74, 0x61, 0x6c, 0x5f, 0x73, 0x74, 0x64, 0x6c, 0x69, 0x62, 0x3e, 0x0a,
0x23, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x20, 0x3c, 0x73, 0x69,
0x6d, 0x64, 0x2f, 0x73, 0x69, 0x6d, 0x64, 0x2e, 0x68, 0x3e, 0x0a, 0x0a,
0x75, 0x73, 0x69, 0x6e, 0x67, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70,
0x61, 0x63, 0x65, 0x20, 0x6d, 0x65, 0x74, 0x61, 0x6c, 0x3b, 0x0a, 0x0a,
0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x20, 0x74, 0x79, 0x70, 0x65, 0x5f,
0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x0a, 0x7b, 0x0a, 0x20, 0x20,
0x20, 0x20, 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x34, 0x20, 0x74, 0x65, 0x78,
0x65, 0x6c, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x3b, 0x0a, 0x7d, 0x3b, 0x0a,
0x0a, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x20, 0x6d, 0x61, 0x69, 0x6e,
0x30, 0x5f, 0x6f, 0x75, 0x74, 0x0a, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20,
0x66, 0x6c, 0x6f, 0x61, 0x74, 0x34, 0x20, 0x6f, 0x75, 0x74, 0x5f, 0x76,
0x61, 0x72, 0x5f, 0x53, 0x56, 0x5f, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74,
0x20, 0x5b, 0x5b, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x28, 0x30, 0x29, 0x5d,
0x5d, 0x3b, 0x0a, 0x7d, 0x3b, 0x0a, 0x0a, 0x73, 0x74, 0x72, 0x75, 0x63,
0x74, 0x20, 0x6d, 0x61, 0x69, 0x6e, 0x30, 0x5f, 0x69, 0x6e, 0x0a, 0x7b,
0x0a, 0x20, 0x20, 0x20, 0x20, 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x34, 0x20,
0x69, 0x6e, 0x5f, 0x76, 0x61, 0x72, 0x5f, 0x43, 0x4f, 0x4c, 0x4f, 0x52,
0x30, 0x20, 0x5b, 0x5b, 0x75, 0x73, 0x65, 0x72, 0x28, 0x6c, 0x6f, 0x63,
0x6e, 0x30, 0x29, 0x5d, 0x5d, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x66,
0x6c, 0x6f, 0x61, 0x74, 0x32, 0x20, 0x69, 0x6e, 0x5f, 0x76, 0x61, 0x72,
0x5f, 0x54, 0x45, 0x58, 0x43, 0x4f, 0x4f, 0x52, 0x44, 0x30, 0x20, 0x5b,
0x5b, 0x75, 0x73, 0x65, 0x72, 0x28, 0x6c, 0x6f, 0x63, 0x6e, 0x31, 0x29,
0x5d, 0x5d, 0x3b, 0x0a, 0x7d, 0x3b, 0x0a, 0x0a, 0x66, 0x72, 0x61, 0x67,
0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6d, 0x61, 0x69, 0x6e, 0x30, 0x5f, 0x6f,
0x75, 0x74, 0x20, 0x6d, 0x61, 0x69, 0x6e, 0x30, 0x28, 0x6d, 0x61, 0x69,
0x6e, 0x30, 0x5f, 0x69, 0x6e, 0x20, 0x69, 0x6e, 0x20, 0x5b, 0x5b, 0x73,
0x74, 0x61, 0x67, 0x65, 0x5f, 0x69, 0x6e, 0x5d, 0x5d, 0x2c, 0x20, 0x63,
0x6f, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x20, 0x74, 0x79, 0x70, 0x65,
0x5f, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x26, 0x20, 0x43, 0x6f,
0x6e, 0x74, 0x65, 0x78, 0x74, 0x20, 0x5b, 0x5b, 0x62, 0x75, 0x66, 0x66,
0x65, 0x72, 0x28, 0x30, 0x29, 0x5d, 0x5d, 0x2c, 0x20, 0x74, 0x65, 0x78,
0x74, 0x75, 0x72, 0x65, 0x32, 0x64, 0x3c, 0x66, 0x6c, 0x6f, 0x61, 0x74,
0x3e, 0x20, 0x75, 0x5f, 0x74, 0x65, 0x78, 0x74, 0x75, 0x72, 0x65, 0x20,
0x5b, 0x5b, 0x74, 0x65, 0x78, 0x74, 0x75, 0x72, 0x65, 0x28, 0x30, 0x29,
0x5d, 0x5d, 0x2c, 0x20, 0x74, 0x65, 0x78, 0x74, 0x75, 0x72, 0x65, 0x32,
0x64, 0x3c, 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x3e, 0x20, 0x75, 0x5f, 0x70,
0x61, 0x6c, 0x65, 0x74, 0x74, 0x65, 0x20, 0x5b, 0x5b, 0x74, 0x65, 0x78,
0x74, 0x75, 0x72, 0x65, 0x28, 0x31, 0x29, 0x5d, 0x5d, 0x2c, 0x20, 0x73,
0x61, 0x6d, 0x70, 0x6c, 0x65, 0x72, 0x20, 0x75, 0x5f, 0x73, 0x61, 0x6d,
0x70, 0x6c, 0x65, 0x72, 0x31, 0x20, 0x5b, 0x5b, 0x73, 0x61, 0x6d, 0x70,
0x6c, 0x65, 0x72, 0x28, 0x30, 0x29, 0x5d, 0x5d, 0x2c, 0x20, 0x73, 0x61,
0x6d, 0x70, 0x6c, 0x65, 0x72, 0x20, 0x75, 0x5f, 0x73, 0x61, 0x6d, 0x70,
0x6c, 0x65, 0x72, 0x32, 0x20, 0x5b, 0x5b, 0x73, 0x61, 0x6d, 0x70, 0x6c,
0x65, 0x72, 0x28, 0x31, 0x29, 0x5d, 0x5d, 0x29, 0x0a, 0x7b, 0x0a, 0x20,
0x20, 0x20, 0x20, 0x6d, 0x61, 0x69, 0x6e, 0x30, 0x5f, 0x6f, 0x75, 0x74,
0x20, 0x6f, 0x75, 0x74, 0x20, 0x3d, 0x20, 0x7b, 0x7d, 0x3b, 0x0a, 0x20,
0x20, 0x20, 0x20, 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x32, 0x20, 0x5f, 0x34,
0x35, 0x20, 0x3d, 0x20, 0x66, 0x61, 0x73, 0x74, 0x3a, 0x3a, 0x63, 0x6c,
0x61, 0x6d, 0x70, 0x28, 0x66, 0x77, 0x69, 0x64, 0x74, 0x68, 0x28, 0x69,
0x6e, 0x2e, 0x69, 0x6e, 0x5f, 0x76, 0x61, 0x72, 0x5f, 0x54, 0x45, 0x58,
0x43, 0x4f, 0x4f, 0x52, 0x44, 0x30, 0x29, 0x20, 0x2a, 0x20, 0x43, 0x6f,
0x6e, 0x74, 0x65, 0x78, 0x74, 0x2e, 0x74, 0x65, 0x78, 0x65, 0x6c, 0x5f,
0x73, 0x69, 0x7a, 0x65, 0x2e, 0x7a, 0x77, 0x2c, 0x20, 0x66, 0x6c, 0x6f,
0x61, 0x74, 0x32, 0x28, 0x39, 0x2e, 0x39, 0x39, 0x39, 0x39, 0x39, 0x39,
0x37, 0x34, 0x37, 0x33, 0x37, 0x38, 0x37, 0x35, 0x31, 0x36, 0x33, 0x35,
0x35, 0x35, 0x31, 0x34, 0x35, 0x32, 0x36, 0x33, 0x36, 0x37, 0x31, 0x38,
0x38, 0x65, 0x2d, 0x30, 0x36, 0x29, 0x2c, 0x20, 0x66, 0x6c, 0x6f, 0x61,
0x74, 0x32, 0x28, 0x31, 0x2e, 0x30, 0x29, 0x29, 0x3b, 0x0a, 0x20, 0x20,
0x20, 0x20, 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x32, 0x20, 0x5f, 0x34, 0x38,
0x20, 0x3d, 0x20, 0x28, 0x69, 0x6e, 0x2e, 0x69, 0x6e, 0x5f, 0x76, 0x61,
0x72, 0x5f, 0x54, 0x45, 0x58, 0x43, 0x4f, 0x4f, 0x52, 0x44, 0x30, 0x20,
0x2a, 0x20, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x2e, 0x74, 0x65,
0x78, 0x65, 0x6c, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x2e, 0x7a, 0x77, 0x29,
0x20, 0x2d, 0x20, 0x28, 0x5f, 0x34, 0x35, 0x20, 0x2a, 0x20, 0x30, 0x2e,
0x35, 0x29, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x6f, 0x75, 0x74, 0x2e,
0x6f, 0x75, 0x74, 0x5f, 0x76, 0x61, 0x72, 0x5f, 0x53, 0x56, 0x5f, 0x54,
0x61, 0x72, 0x67, 0x65, 0x74, 0x20, 0x3d, 0x20, 0x75, 0x5f, 0x70, 0x61,
0x6c, 0x65, 0x74, 0x74, 0x65, 0x2e, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65,
0x28, 0x75, 0x5f, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x72, 0x32, 0x2c,
0x20, 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x32, 0x28, 0x28, 0x28, 0x75, 0x5f,
0x74, 0x65, 0x78, 0x74, 0x75, 0x72, 0x65, 0x2e, 0x73, 0x61, 0x6d, 0x70,
0x6c, 0x65, 0x28, 0x75, 0x5f, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x72,
0x31, 0x2c, 0x20, 0x28, 0x28, 0x28, 0x66, 0x6c, 0x6f, 0x6f, 0x72, 0x28,
0x5f, 0x34, 0x38, 0x29, 0x20, 0x2b, 0x20, 0x66, 0x6c, 0x6f, 0x61, 0x74,
0x32, 0x28, 0x30, 0x2e, 0x35, 0x29, 0x29, 0x20, 0x2b, 0x20, 0x73, 0x6d,
0x6f, 0x6f, 0x74, 0x68, 0x73, 0x74, 0x65, 0x70, 0x28, 0x66, 0x6c, 0x6f,
0x61, 0x74, 0x32, 0x28, 0x31, 0x2e, 0x30, 0x29, 0x20, 0x2d, 0x20, 0x5f,
0x34, 0x35, 0x2c, 0x20, 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x32, 0x28, 0x31,
0x2e, 0x30, 0x29, 0x2c, 0x20, 0x66, 0x72, 0x61, 0x63, 0x74, 0x28, 0x5f,
0x34, 0x38, 0x29, 0x29, 0x29, 0x20, 0x2a, 0x20, 0x43, 0x6f, 0x6e, 0x74,
0x65, 0x78, 0x74, 0x2e, 0x74, 0x65, 0x78, 0x65, 0x6c, 0x5f, 0x73, 0x69,
0x7a, 0x65, 0x2e, 0x78, 0x79, 0x29, 0x2c, 0x20, 0x67, 0x72, 0x61, 0x64,
0x69, 0x65, 0x6e, 0x74, 0x32, 0x64, 0x28, 0x64, 0x66, 0x64, 0x78, 0x28,
0x69, 0x6e, 0x2e, 0x69, 0x6e, 0x5f, 0x76, 0x61, 0x72, 0x5f, 0x54, 0x45,
0x58, 0x43, 0x4f, 0x4f, 0x52, 0x44, 0x30, 0x29, 0x2c, 0x20, 0x64, 0x66,
0x64, 0x79, 0x28, 0x69, 0x6e, 0x2e, 0x69, 0x6e, 0x5f, 0x76, 0x61, 0x72,
0x5f, 0x54, 0x45, 0x58, 0x43, 0x4f, 0x4f, 0x52, 0x44, 0x30, 0x29, 0x29,
0x29, 0x2e, 0x78, 0x20, 0x2a, 0x20, 0x32, 0x35, 0x35, 0x2e, 0x30, 0x29,
0x20, 0x2b, 0x20, 0x30, 0x2e, 0x35, 0x29, 0x20, 0x2a, 0x20, 0x30, 0x2e,
0x30, 0x30, 0x33, 0x39, 0x30, 0x36, 0x32, 0x35, 0x2c, 0x20, 0x30, 0x2e,
0x35, 0x29, 0x29, 0x20, 0x2a, 0x20, 0x69, 0x6e, 0x2e, 0x69, 0x6e, 0x5f,
0x76, 0x61, 0x72, 0x5f, 0x43, 0x4f, 0x4c, 0x4f, 0x52, 0x30, 0x3b, 0x0a,
0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x6f,
0x75, 0x74, 0x3b, 0x0a, 0x7d, 0x0a, 0x0a
};
static const unsigned int texture_palette_pixelart_frag_msl_len = 1147;

View File

@@ -1,169 +0,0 @@
static const unsigned char texture_palette_pixelart_frag_spv[] = {
0x03, 0x02, 0x23, 0x07, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x0e, 0x00,
0x49, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x11, 0x00, 0x02, 0x00,
0x01, 0x00, 0x00, 0x00, 0x0b, 0x00, 0x06, 0x00, 0x01, 0x00, 0x00, 0x00,
0x47, 0x4c, 0x53, 0x4c, 0x2e, 0x73, 0x74, 0x64, 0x2e, 0x34, 0x35, 0x30,
0x00, 0x00, 0x00, 0x00, 0x0e, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
0x01, 0x00, 0x00, 0x00, 0x0f, 0x00, 0x08, 0x00, 0x04, 0x00, 0x00, 0x00,
0x02, 0x00, 0x00, 0x00, 0x6d, 0x61, 0x69, 0x6e, 0x00, 0x00, 0x00, 0x00,
0x03, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00,
0x10, 0x00, 0x03, 0x00, 0x02, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00,
0x03, 0x00, 0x03, 0x00, 0x05, 0x00, 0x00, 0x00, 0x58, 0x02, 0x00, 0x00,
0x05, 0x00, 0x06, 0x00, 0x06, 0x00, 0x00, 0x00, 0x74, 0x79, 0x70, 0x65,
0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x00, 0x00, 0x00, 0x00,
0x06, 0x00, 0x06, 0x00, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x74, 0x65, 0x78, 0x65, 0x6c, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x00, 0x00,
0x05, 0x00, 0x04, 0x00, 0x07, 0x00, 0x00, 0x00, 0x43, 0x6f, 0x6e, 0x74,
0x65, 0x78, 0x74, 0x00, 0x05, 0x00, 0x06, 0x00, 0x08, 0x00, 0x00, 0x00,
0x74, 0x79, 0x70, 0x65, 0x2e, 0x32, 0x64, 0x2e, 0x69, 0x6d, 0x61, 0x67,
0x65, 0x00, 0x00, 0x00, 0x05, 0x00, 0x05, 0x00, 0x09, 0x00, 0x00, 0x00,
0x75, 0x5f, 0x74, 0x65, 0x78, 0x74, 0x75, 0x72, 0x65, 0x00, 0x00, 0x00,
0x05, 0x00, 0x05, 0x00, 0x0a, 0x00, 0x00, 0x00, 0x75, 0x5f, 0x70, 0x61,
0x6c, 0x65, 0x74, 0x74, 0x65, 0x00, 0x00, 0x00, 0x05, 0x00, 0x06, 0x00,
0x0b, 0x00, 0x00, 0x00, 0x74, 0x79, 0x70, 0x65, 0x2e, 0x73, 0x61, 0x6d,
0x70, 0x6c, 0x65, 0x72, 0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x05, 0x00,
0x0c, 0x00, 0x00, 0x00, 0x75, 0x5f, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65,
0x72, 0x31, 0x00, 0x00, 0x05, 0x00, 0x05, 0x00, 0x0d, 0x00, 0x00, 0x00,
0x75, 0x5f, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x72, 0x32, 0x00, 0x00,
0x05, 0x00, 0x06, 0x00, 0x03, 0x00, 0x00, 0x00, 0x69, 0x6e, 0x2e, 0x76,
0x61, 0x72, 0x2e, 0x43, 0x4f, 0x4c, 0x4f, 0x52, 0x30, 0x00, 0x00, 0x00,
0x05, 0x00, 0x07, 0x00, 0x04, 0x00, 0x00, 0x00, 0x69, 0x6e, 0x2e, 0x76,
0x61, 0x72, 0x2e, 0x54, 0x45, 0x58, 0x43, 0x4f, 0x4f, 0x52, 0x44, 0x30,
0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x07, 0x00, 0x05, 0x00, 0x00, 0x00,
0x6f, 0x75, 0x74, 0x2e, 0x76, 0x61, 0x72, 0x2e, 0x53, 0x56, 0x5f, 0x54,
0x61, 0x72, 0x67, 0x65, 0x74, 0x00, 0x00, 0x00, 0x05, 0x00, 0x04, 0x00,
0x02, 0x00, 0x00, 0x00, 0x6d, 0x61, 0x69, 0x6e, 0x00, 0x00, 0x00, 0x00,
0x05, 0x00, 0x07, 0x00, 0x0e, 0x00, 0x00, 0x00, 0x74, 0x79, 0x70, 0x65,
0x2e, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x64, 0x2e, 0x69, 0x6d, 0x61,
0x67, 0x65, 0x00, 0x00, 0x47, 0x00, 0x04, 0x00, 0x03, 0x00, 0x00, 0x00,
0x1e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x47, 0x00, 0x04, 0x00,
0x04, 0x00, 0x00, 0x00, 0x1e, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
0x47, 0x00, 0x04, 0x00, 0x05, 0x00, 0x00, 0x00, 0x1e, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x47, 0x00, 0x04, 0x00, 0x07, 0x00, 0x00, 0x00,
0x22, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x47, 0x00, 0x04, 0x00,
0x07, 0x00, 0x00, 0x00, 0x21, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x47, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x22, 0x00, 0x00, 0x00,
0x02, 0x00, 0x00, 0x00, 0x47, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00,
0x21, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x47, 0x00, 0x04, 0x00,
0x0a, 0x00, 0x00, 0x00, 0x22, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00,
0x47, 0x00, 0x04, 0x00, 0x0a, 0x00, 0x00, 0x00, 0x21, 0x00, 0x00, 0x00,
0x01, 0x00, 0x00, 0x00, 0x47, 0x00, 0x04, 0x00, 0x0c, 0x00, 0x00, 0x00,
0x22, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x47, 0x00, 0x04, 0x00,
0x0c, 0x00, 0x00, 0x00, 0x21, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x47, 0x00, 0x04, 0x00, 0x0d, 0x00, 0x00, 0x00, 0x22, 0x00, 0x00, 0x00,
0x02, 0x00, 0x00, 0x00, 0x47, 0x00, 0x04, 0x00, 0x0d, 0x00, 0x00, 0x00,
0x21, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x48, 0x00, 0x05, 0x00,
0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x23, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x47, 0x00, 0x03, 0x00, 0x06, 0x00, 0x00, 0x00,
0x02, 0x00, 0x00, 0x00, 0x15, 0x00, 0x04, 0x00, 0x0f, 0x00, 0x00, 0x00,
0x20, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x16, 0x00, 0x03, 0x00,
0x10, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x2b, 0x00, 0x04, 0x00,
0x10, 0x00, 0x00, 0x00, 0x11, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7f, 0x43,
0x2b, 0x00, 0x04, 0x00, 0x10, 0x00, 0x00, 0x00, 0x12, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x3f, 0x2b, 0x00, 0x04, 0x00, 0x0f, 0x00, 0x00, 0x00,
0x13, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2b, 0x00, 0x04, 0x00,
0x10, 0x00, 0x00, 0x00, 0x14, 0x00, 0x00, 0x00, 0xac, 0xc5, 0x27, 0x37,
0x17, 0x00, 0x04, 0x00, 0x15, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00,
0x02, 0x00, 0x00, 0x00, 0x2c, 0x00, 0x05, 0x00, 0x15, 0x00, 0x00, 0x00,
0x16, 0x00, 0x00, 0x00, 0x14, 0x00, 0x00, 0x00, 0x14, 0x00, 0x00, 0x00,
0x2b, 0x00, 0x04, 0x00, 0x10, 0x00, 0x00, 0x00, 0x17, 0x00, 0x00, 0x00,
0x00, 0x00, 0x80, 0x3f, 0x2c, 0x00, 0x05, 0x00, 0x15, 0x00, 0x00, 0x00,
0x18, 0x00, 0x00, 0x00, 0x17, 0x00, 0x00, 0x00, 0x17, 0x00, 0x00, 0x00,
0x2c, 0x00, 0x05, 0x00, 0x15, 0x00, 0x00, 0x00, 0x19, 0x00, 0x00, 0x00,
0x12, 0x00, 0x00, 0x00, 0x12, 0x00, 0x00, 0x00, 0x17, 0x00, 0x04, 0x00,
0x1a, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00,
0x1e, 0x00, 0x03, 0x00, 0x06, 0x00, 0x00, 0x00, 0x1a, 0x00, 0x00, 0x00,
0x20, 0x00, 0x04, 0x00, 0x1b, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00,
0x06, 0x00, 0x00, 0x00, 0x19, 0x00, 0x09, 0x00, 0x08, 0x00, 0x00, 0x00,
0x10, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x04, 0x00, 0x1c, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x1a, 0x00, 0x02, 0x00,
0x0b, 0x00, 0x00, 0x00, 0x20, 0x00, 0x04, 0x00, 0x1d, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x0b, 0x00, 0x00, 0x00, 0x20, 0x00, 0x04, 0x00,
0x1e, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x1a, 0x00, 0x00, 0x00,
0x20, 0x00, 0x04, 0x00, 0x1f, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
0x15, 0x00, 0x00, 0x00, 0x20, 0x00, 0x04, 0x00, 0x20, 0x00, 0x00, 0x00,
0x03, 0x00, 0x00, 0x00, 0x1a, 0x00, 0x00, 0x00, 0x13, 0x00, 0x02, 0x00,
0x21, 0x00, 0x00, 0x00, 0x21, 0x00, 0x03, 0x00, 0x22, 0x00, 0x00, 0x00,
0x21, 0x00, 0x00, 0x00, 0x1b, 0x00, 0x03, 0x00, 0x0e, 0x00, 0x00, 0x00,
0x08, 0x00, 0x00, 0x00, 0x20, 0x00, 0x04, 0x00, 0x23, 0x00, 0x00, 0x00,
0x02, 0x00, 0x00, 0x00, 0x1a, 0x00, 0x00, 0x00, 0x3b, 0x00, 0x04, 0x00,
0x1b, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00,
0x3b, 0x00, 0x04, 0x00, 0x1c, 0x00, 0x00, 0x00, 0x09, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x3b, 0x00, 0x04, 0x00, 0x1c, 0x00, 0x00, 0x00,
0x0a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3b, 0x00, 0x04, 0x00,
0x1d, 0x00, 0x00, 0x00, 0x0c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x3b, 0x00, 0x04, 0x00, 0x1d, 0x00, 0x00, 0x00, 0x0d, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x3b, 0x00, 0x04, 0x00, 0x1e, 0x00, 0x00, 0x00,
0x03, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x3b, 0x00, 0x04, 0x00,
0x1f, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
0x3b, 0x00, 0x04, 0x00, 0x20, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00,
0x03, 0x00, 0x00, 0x00, 0x2b, 0x00, 0x04, 0x00, 0x10, 0x00, 0x00, 0x00,
0x24, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x3b, 0x36, 0x00, 0x05, 0x00,
0x21, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x22, 0x00, 0x00, 0x00, 0xf8, 0x00, 0x02, 0x00, 0x25, 0x00, 0x00, 0x00,
0x3d, 0x00, 0x04, 0x00, 0x1a, 0x00, 0x00, 0x00, 0x26, 0x00, 0x00, 0x00,
0x03, 0x00, 0x00, 0x00, 0x3d, 0x00, 0x04, 0x00, 0x15, 0x00, 0x00, 0x00,
0x27, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0xd1, 0x00, 0x04, 0x00,
0x15, 0x00, 0x00, 0x00, 0x28, 0x00, 0x00, 0x00, 0x27, 0x00, 0x00, 0x00,
0x41, 0x00, 0x05, 0x00, 0x23, 0x00, 0x00, 0x00, 0x29, 0x00, 0x00, 0x00,
0x07, 0x00, 0x00, 0x00, 0x13, 0x00, 0x00, 0x00, 0x3d, 0x00, 0x04, 0x00,
0x1a, 0x00, 0x00, 0x00, 0x2a, 0x00, 0x00, 0x00, 0x29, 0x00, 0x00, 0x00,
0x4f, 0x00, 0x07, 0x00, 0x15, 0x00, 0x00, 0x00, 0x2b, 0x00, 0x00, 0x00,
0x2a, 0x00, 0x00, 0x00, 0x2a, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00,
0x03, 0x00, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00, 0x15, 0x00, 0x00, 0x00,
0x2c, 0x00, 0x00, 0x00, 0x28, 0x00, 0x00, 0x00, 0x2b, 0x00, 0x00, 0x00,
0x0c, 0x00, 0x08, 0x00, 0x15, 0x00, 0x00, 0x00, 0x2d, 0x00, 0x00, 0x00,
0x01, 0x00, 0x00, 0x00, 0x2b, 0x00, 0x00, 0x00, 0x2c, 0x00, 0x00, 0x00,
0x16, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00,
0x15, 0x00, 0x00, 0x00, 0x2e, 0x00, 0x00, 0x00, 0x27, 0x00, 0x00, 0x00,
0x2b, 0x00, 0x00, 0x00, 0x8e, 0x00, 0x05, 0x00, 0x15, 0x00, 0x00, 0x00,
0x2f, 0x00, 0x00, 0x00, 0x2d, 0x00, 0x00, 0x00, 0x12, 0x00, 0x00, 0x00,
0x83, 0x00, 0x05, 0x00, 0x15, 0x00, 0x00, 0x00, 0x30, 0x00, 0x00, 0x00,
0x2e, 0x00, 0x00, 0x00, 0x2f, 0x00, 0x00, 0x00, 0x83, 0x00, 0x05, 0x00,
0x15, 0x00, 0x00, 0x00, 0x31, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x00,
0x2d, 0x00, 0x00, 0x00, 0x0c, 0x00, 0x06, 0x00, 0x15, 0x00, 0x00, 0x00,
0x32, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x0a, 0x00, 0x00, 0x00,
0x30, 0x00, 0x00, 0x00, 0x0c, 0x00, 0x08, 0x00, 0x15, 0x00, 0x00, 0x00,
0x33, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x31, 0x00, 0x00, 0x00,
0x31, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x00, 0x32, 0x00, 0x00, 0x00,
0x0c, 0x00, 0x06, 0x00, 0x15, 0x00, 0x00, 0x00, 0x34, 0x00, 0x00, 0x00,
0x01, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x30, 0x00, 0x00, 0x00,
0x81, 0x00, 0x05, 0x00, 0x15, 0x00, 0x00, 0x00, 0x35, 0x00, 0x00, 0x00,
0x34, 0x00, 0x00, 0x00, 0x19, 0x00, 0x00, 0x00, 0x81, 0x00, 0x05, 0x00,
0x15, 0x00, 0x00, 0x00, 0x36, 0x00, 0x00, 0x00, 0x35, 0x00, 0x00, 0x00,
0x33, 0x00, 0x00, 0x00, 0x4f, 0x00, 0x07, 0x00, 0x15, 0x00, 0x00, 0x00,
0x37, 0x00, 0x00, 0x00, 0x2a, 0x00, 0x00, 0x00, 0x2a, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00,
0x15, 0x00, 0x00, 0x00, 0x38, 0x00, 0x00, 0x00, 0x36, 0x00, 0x00, 0x00,
0x37, 0x00, 0x00, 0x00, 0x3d, 0x00, 0x04, 0x00, 0x08, 0x00, 0x00, 0x00,
0x39, 0x00, 0x00, 0x00, 0x09, 0x00, 0x00, 0x00, 0x3d, 0x00, 0x04, 0x00,
0x0b, 0x00, 0x00, 0x00, 0x3a, 0x00, 0x00, 0x00, 0x0c, 0x00, 0x00, 0x00,
0xcf, 0x00, 0x04, 0x00, 0x15, 0x00, 0x00, 0x00, 0x3b, 0x00, 0x00, 0x00,
0x27, 0x00, 0x00, 0x00, 0xd0, 0x00, 0x04, 0x00, 0x15, 0x00, 0x00, 0x00,
0x3c, 0x00, 0x00, 0x00, 0x27, 0x00, 0x00, 0x00, 0x56, 0x00, 0x05, 0x00,
0x0e, 0x00, 0x00, 0x00, 0x3d, 0x00, 0x00, 0x00, 0x39, 0x00, 0x00, 0x00,
0x3a, 0x00, 0x00, 0x00, 0x58, 0x00, 0x08, 0x00, 0x1a, 0x00, 0x00, 0x00,
0x3e, 0x00, 0x00, 0x00, 0x3d, 0x00, 0x00, 0x00, 0x38, 0x00, 0x00, 0x00,
0x04, 0x00, 0x00, 0x00, 0x3b, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x00, 0x00,
0x51, 0x00, 0x05, 0x00, 0x10, 0x00, 0x00, 0x00, 0x3f, 0x00, 0x00, 0x00,
0x3e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00,
0x10, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, 0x3f, 0x00, 0x00, 0x00,
0x11, 0x00, 0x00, 0x00, 0x3d, 0x00, 0x04, 0x00, 0x08, 0x00, 0x00, 0x00,
0x41, 0x00, 0x00, 0x00, 0x0a, 0x00, 0x00, 0x00, 0x3d, 0x00, 0x04, 0x00,
0x0b, 0x00, 0x00, 0x00, 0x42, 0x00, 0x00, 0x00, 0x0d, 0x00, 0x00, 0x00,
0x81, 0x00, 0x05, 0x00, 0x10, 0x00, 0x00, 0x00, 0x43, 0x00, 0x00, 0x00,
0x40, 0x00, 0x00, 0x00, 0x12, 0x00, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00,
0x10, 0x00, 0x00, 0x00, 0x44, 0x00, 0x00, 0x00, 0x43, 0x00, 0x00, 0x00,
0x24, 0x00, 0x00, 0x00, 0x50, 0x00, 0x05, 0x00, 0x15, 0x00, 0x00, 0x00,
0x45, 0x00, 0x00, 0x00, 0x44, 0x00, 0x00, 0x00, 0x12, 0x00, 0x00, 0x00,
0x56, 0x00, 0x05, 0x00, 0x0e, 0x00, 0x00, 0x00, 0x46, 0x00, 0x00, 0x00,
0x41, 0x00, 0x00, 0x00, 0x42, 0x00, 0x00, 0x00, 0x57, 0x00, 0x06, 0x00,
0x1a, 0x00, 0x00, 0x00, 0x47, 0x00, 0x00, 0x00, 0x46, 0x00, 0x00, 0x00,
0x45, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00,
0x1a, 0x00, 0x00, 0x00, 0x48, 0x00, 0x00, 0x00, 0x47, 0x00, 0x00, 0x00,
0x26, 0x00, 0x00, 0x00, 0x3e, 0x00, 0x03, 0x00, 0x05, 0x00, 0x00, 0x00,
0x48, 0x00, 0x00, 0x00, 0xfd, 0x00, 0x01, 0x00, 0x38, 0x00, 0x01, 0x00
};
static const unsigned int texture_palette_pixelart_frag_spv_len = 1992;

View File

@@ -1,33 +0,0 @@
cbuffer Context : register(b0, space3) {
float4 texel_size;
};
Texture2D u_texture : register(t0, space2);
SamplerState u_sampler : register(s0, space2);
struct PSInput {
float4 v_color : COLOR0;
float2 v_uv : TEXCOORD0;
};
struct PSOutput {
float4 o_color : SV_Target;
};
float2 GetPixelArtUV(PSInput input)
{
// box filter size in texel units
float2 boxSize = clamp(fwidth(input.v_uv) * texel_size.zw, 1e-5, 1);
// scale uv by texture size to get texel coordinate
float2 tx = input.v_uv * texel_size.zw - 0.5 * boxSize;
// compute offset for pixel-sized box filter
float2 txOffset = smoothstep(1 - boxSize, 1, frac(tx));
// compute bilinear sample uv coordinates
float2 uv = (floor(tx) + 0.5 + txOffset) * texel_size.xy;
return uv;
}

View File

@@ -1,9 +1,9 @@
static const unsigned char texture_rgb_frag_dxil[] = {
0x44, 0x58, 0x42, 0x43, 0x1a, 0x3e, 0x83, 0x3d, 0xad, 0x4a, 0x78, 0x19,
0xf8, 0xe8, 0xda, 0xf6, 0xa3, 0x17, 0xb1, 0xec, 0x01, 0x00, 0x00, 0x00,
0x04, 0x0f, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x00, 0x00,
0x44, 0x58, 0x42, 0x43, 0x37, 0x73, 0xca, 0xeb, 0x37, 0xaa, 0x03, 0x92,
0x6e, 0xc9, 0x41, 0x8a, 0x5a, 0xd5, 0x6f, 0x91, 0x01, 0x00, 0x00, 0x00,
0x60, 0x10, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x00, 0x00,
0x4c, 0x00, 0x00, 0x00, 0xa8, 0x00, 0x00, 0x00, 0xe4, 0x00, 0x00, 0x00,
0xd8, 0x01, 0x00, 0x00, 0x34, 0x08, 0x00, 0x00, 0x50, 0x08, 0x00, 0x00,
0xf0, 0x01, 0x00, 0x00, 0xf0, 0x08, 0x00, 0x00, 0x0c, 0x09, 0x00, 0x00,
0x53, 0x46, 0x49, 0x30, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x49, 0x53, 0x47, 0x31, 0x54, 0x00, 0x00, 0x00,
0x02, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
@@ -18,12 +18,14 @@ static const unsigned char texture_rgb_frag_dxil[] = {
0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x53, 0x56, 0x5f, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x00, 0x00, 0x00,
0x50, 0x53, 0x56, 0x30, 0xec, 0x00, 0x00, 0x00, 0x34, 0x00, 0x00, 0x00,
0x50, 0x53, 0x56, 0x30, 0x04, 0x01, 0x00, 0x00, 0x34, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff,
0x00, 0x00, 0x00, 0x00, 0x02, 0x01, 0x00, 0x02, 0x01, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x13, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x00,
0x13, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x00,
0x02, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x0d, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x01, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x0e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x03, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
@@ -38,10 +40,10 @@ static const unsigned char texture_rgb_frag_dxil[] = {
0x01, 0x00, 0x44, 0x10, 0x03, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
0x02, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00,
0x07, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x53, 0x54, 0x41, 0x54, 0x54, 0x06, 0x00, 0x00,
0x60, 0x00, 0x00, 0x00, 0x95, 0x01, 0x00, 0x00, 0x44, 0x58, 0x49, 0x4c,
0x00, 0x01, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x3c, 0x06, 0x00, 0x00,
0x42, 0x43, 0xc0, 0xde, 0x21, 0x0c, 0x00, 0x00, 0x8c, 0x01, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x53, 0x54, 0x41, 0x54, 0xf8, 0x06, 0x00, 0x00,
0x60, 0x00, 0x00, 0x00, 0xbe, 0x01, 0x00, 0x00, 0x44, 0x58, 0x49, 0x4c,
0x00, 0x01, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0xe0, 0x06, 0x00, 0x00,
0x42, 0x43, 0xc0, 0xde, 0x21, 0x0c, 0x00, 0x00, 0xb5, 0x01, 0x00, 0x00,
0x0b, 0x82, 0x20, 0x00, 0x02, 0x00, 0x00, 0x00, 0x13, 0x00, 0x00, 0x00,
0x07, 0x81, 0x23, 0x91, 0x41, 0xc8, 0x04, 0x49, 0x06, 0x10, 0x32, 0x39,
0x92, 0x01, 0x84, 0x0c, 0x25, 0x05, 0x08, 0x19, 0x1e, 0x04, 0x8b, 0x62,
@@ -54,168 +56,185 @@ static const unsigned char texture_rgb_frag_dxil[] = {
0x84, 0xf0, 0xff, 0xff, 0xff, 0xff, 0x03, 0x20, 0x6d, 0x30, 0x86, 0xff,
0xff, 0xff, 0xff, 0x1f, 0x00, 0x09, 0xa8, 0x00, 0x49, 0x18, 0x00, 0x00,
0x03, 0x00, 0x00, 0x00, 0x13, 0x82, 0x60, 0x42, 0x20, 0x4c, 0x08, 0x06,
0x00, 0x00, 0x00, 0x00, 0x89, 0x20, 0x00, 0x00, 0x43, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x89, 0x20, 0x00, 0x00, 0x4d, 0x00, 0x00, 0x00,
0x32, 0x22, 0x48, 0x09, 0x20, 0x64, 0x85, 0x04, 0x93, 0x22, 0xa4, 0x84,
0x04, 0x93, 0x22, 0xe3, 0x84, 0xa1, 0x90, 0x14, 0x12, 0x4c, 0x8a, 0x8c,
0x0b, 0x84, 0xa4, 0x4c, 0x10, 0x68, 0x23, 0x00, 0x25, 0x00, 0x14, 0x66,
0x0b, 0x84, 0xa4, 0x4c, 0x10, 0x7c, 0x23, 0x00, 0x25, 0x00, 0x14, 0x66,
0x00, 0xe6, 0x08, 0xc0, 0x60, 0x8e, 0x00, 0x29, 0xc6, 0x20, 0x84, 0x14,
0x42, 0xa6, 0x18, 0x80, 0x10, 0x52, 0x06, 0xa1, 0x9b, 0x86, 0xcb, 0x9f,
0xb0, 0x87, 0x90, 0xfc, 0x95, 0x90, 0x56, 0x62, 0xf2, 0x8b, 0xdb, 0x46,
0xc5, 0x18, 0x63, 0x10, 0x2a, 0xf7, 0x0c, 0x97, 0x3f, 0x61, 0x0f, 0x21,
0xf9, 0x21, 0xd0, 0x0c, 0x0b, 0x81, 0x82, 0x55, 0x18, 0x45, 0x18, 0x1b,
0x63, 0x0c, 0x42, 0xc8, 0xa0, 0x36, 0x47, 0x10, 0x14, 0x83, 0x91, 0x42,
0xc8, 0x23, 0x38, 0x10, 0x30, 0x8c, 0x40, 0x0c, 0x33, 0xb5, 0xc1, 0x38,
0xb0, 0x43, 0x38, 0xcc, 0xc3, 0x3c, 0xb8, 0x01, 0x2d, 0x94, 0x03, 0x3e,
0xd0, 0x43, 0x3d, 0xc8, 0x43, 0x39, 0xc8, 0x01, 0x29, 0xf0, 0x81, 0x3d,
0x94, 0xc3, 0x38, 0xd0, 0xc3, 0x3b, 0xc8, 0x03, 0x1f, 0x98, 0x03, 0x3b,
0xbc, 0x43, 0x38, 0xd0, 0x03, 0x1b, 0x80, 0x01, 0x1d, 0xf8, 0x01, 0x18,
0xf8, 0x81, 0x1e, 0xe8, 0x41, 0x3b, 0xa4, 0x03, 0x3c, 0xcc, 0xc3, 0x2f,
0xd0, 0x43, 0x3e, 0xc0, 0x43, 0x39, 0xa0, 0x80, 0xcc, 0x24, 0x06, 0xe3,
0xc0, 0x0e, 0xe1, 0x30, 0x0f, 0xf3, 0xe0, 0x06, 0xb4, 0x50, 0x0e, 0xf8,
0x40, 0x0f, 0xf5, 0x20, 0x0f, 0xe5, 0x20, 0x07, 0xa4, 0xc0, 0x07, 0xf6,
0x50, 0x0e, 0xe3, 0x40, 0x0f, 0xef, 0x20, 0x0f, 0x7c, 0x60, 0x0e, 0xec,
0xf0, 0x0e, 0xe1, 0x40, 0x0f, 0x6c, 0x00, 0x06, 0x74, 0xe0, 0x07, 0x60,
0xe0, 0x07, 0x48, 0x98, 0x94, 0xea, 0x4d, 0xd2, 0x14, 0x51, 0xc2, 0xe4,
0xb3, 0x00, 0xf3, 0x2c, 0x44, 0xc4, 0x4e, 0xc0, 0x44, 0xa0, 0x80, 0xd0,
0x4d, 0x04, 0x02, 0x00, 0x13, 0x14, 0x72, 0xc0, 0x87, 0x74, 0x60, 0x87,
0x36, 0x68, 0x87, 0x79, 0x68, 0x03, 0x72, 0xc0, 0x87, 0x0d, 0xaf, 0x50,
0x0e, 0x6d, 0xd0, 0x0e, 0x7a, 0x50, 0x0e, 0x6d, 0x00, 0x0f, 0x7a, 0x30,
0x07, 0x72, 0xa0, 0x07, 0x73, 0x20, 0x07, 0x6d, 0x90, 0x0e, 0x71, 0xa0,
0x07, 0x73, 0x20, 0x07, 0x6d, 0x90, 0x0e, 0x78, 0xa0, 0x07, 0x73, 0x20,
0x07, 0x6d, 0x90, 0x0e, 0x71, 0x60, 0x07, 0x7a, 0x30, 0x07, 0x72, 0xd0,
0x06, 0xe9, 0x30, 0x07, 0x72, 0xa0, 0x07, 0x73, 0x20, 0x07, 0x6d, 0x90,
0x0e, 0x76, 0x40, 0x07, 0x7a, 0x60, 0x07, 0x74, 0xd0, 0x06, 0xe6, 0x10,
0x07, 0x76, 0xa0, 0x07, 0x73, 0x20, 0x07, 0x6d, 0x60, 0x0e, 0x73, 0x20,
0x07, 0x7a, 0x30, 0x07, 0x72, 0xd0, 0x06, 0xe6, 0x60, 0x07, 0x74, 0xa0,
0x07, 0x76, 0x40, 0x07, 0x6d, 0xe0, 0x0e, 0x78, 0xa0, 0x07, 0x71, 0x60,
0x07, 0x7a, 0x30, 0x07, 0x72, 0xa0, 0x07, 0x76, 0x40, 0x07, 0x43, 0x9e,
0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x86,
0x3c, 0x06, 0x10, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x0c, 0x79, 0x10, 0x20, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x18, 0xf2, 0x34, 0x40, 0x00, 0x0c, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x30, 0xe4, 0x81, 0x80, 0x00, 0x18, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x20, 0x0b, 0x04, 0x00, 0x00, 0x0e, 0x00, 0x00, 0x00,
0x32, 0x1e, 0x98, 0x14, 0x19, 0x11, 0x4c, 0x90, 0x8c, 0x09, 0x26, 0x47,
0xc6, 0x04, 0x43, 0x22, 0x25, 0x30, 0x02, 0x50, 0x0c, 0x45, 0x50, 0x12,
0x65, 0x50, 0x1e, 0x85, 0x52, 0x08, 0x54, 0x4a, 0x62, 0x04, 0xa0, 0x08,
0x0a, 0xa1, 0x40, 0xc8, 0xce, 0x00, 0x10, 0x9e, 0x01, 0xa0, 0x3c, 0x16,
0x62, 0x10, 0x81, 0x40, 0x20, 0xc7, 0x01, 0x00, 0x79, 0x18, 0x00, 0x00,
0x7a, 0x00, 0x00, 0x00, 0x1a, 0x03, 0x4c, 0x90, 0x46, 0x02, 0x13, 0x44,
0x63, 0x0c, 0x42, 0xc8, 0xa0, 0x76, 0xd4, 0x70, 0xf9, 0x13, 0xf6, 0x10,
0x92, 0xcf, 0x6d, 0x54, 0xb1, 0x12, 0x93, 0x5f, 0xdc, 0x36, 0x22, 0xc6,
0x18, 0xa3, 0x10, 0x8f, 0x30, 0x42, 0x70, 0x8e, 0x20, 0x28, 0x06, 0x23,
0x85, 0x10, 0x49, 0x73, 0x20, 0x60, 0x18, 0x81, 0x18, 0x66, 0x6a, 0x83,
0x71, 0x60, 0x87, 0x70, 0x98, 0x87, 0x79, 0x70, 0x03, 0x5a, 0x28, 0x07,
0x7c, 0xa0, 0x87, 0x7a, 0x90, 0x87, 0x72, 0x90, 0x03, 0x52, 0xe0, 0x03,
0x7b, 0x28, 0x87, 0x71, 0xa0, 0x87, 0x77, 0x90, 0x07, 0x3e, 0x30, 0x07,
0x76, 0x78, 0x87, 0x70, 0xa0, 0x07, 0x36, 0x00, 0x03, 0x3a, 0xf0, 0x03,
0x30, 0xf0, 0x03, 0x3d, 0xd0, 0x83, 0x76, 0x48, 0x07, 0x78, 0x98, 0x87,
0x5f, 0xa0, 0x87, 0x7c, 0x80, 0x87, 0x72, 0x40, 0x01, 0x99, 0x49, 0x0c,
0xc6, 0x81, 0x1d, 0xc2, 0x61, 0x1e, 0xe6, 0xc1, 0x0d, 0x68, 0xa1, 0x1c,
0xf0, 0x81, 0x1e, 0xea, 0x41, 0x1e, 0xca, 0x41, 0x0e, 0x48, 0x81, 0x0f,
0xec, 0xa1, 0x1c, 0xc6, 0x81, 0x1e, 0xde, 0x41, 0x1e, 0xf8, 0xc0, 0x1c,
0xd8, 0xe1, 0x1d, 0xc2, 0x81, 0x1e, 0xd8, 0x00, 0x0c, 0xe8, 0xc0, 0x0f,
0xc0, 0xc0, 0x0f, 0x90, 0x60, 0x2f, 0xe1, 0x73, 0x26, 0xec, 0x21, 0x7e,
0xce, 0x69, 0xa4, 0x09, 0x68, 0x26, 0x09, 0x05, 0x83, 0xf4, 0x4d, 0xd2,
0x14, 0x51, 0xc2, 0xe4, 0xb3, 0x00, 0xf3, 0x2c, 0x44, 0xc4, 0x4e, 0xc0,
0x44, 0xa0, 0x80, 0x10, 0x4f, 0x04, 0x02, 0x00, 0x13, 0x14, 0x72, 0xc0,
0x87, 0x74, 0x60, 0x87, 0x36, 0x68, 0x87, 0x79, 0x68, 0x03, 0x72, 0xc0,
0x87, 0x0d, 0xaf, 0x50, 0x0e, 0x6d, 0xd0, 0x0e, 0x7a, 0x50, 0x0e, 0x6d,
0x00, 0x0f, 0x7a, 0x30, 0x07, 0x72, 0xa0, 0x07, 0x73, 0x20, 0x07, 0x6d,
0x90, 0x0e, 0x71, 0xa0, 0x07, 0x73, 0x20, 0x07, 0x6d, 0x90, 0x0e, 0x78,
0xa0, 0x07, 0x73, 0x20, 0x07, 0x6d, 0x90, 0x0e, 0x71, 0x60, 0x07, 0x7a,
0x30, 0x07, 0x72, 0xd0, 0x06, 0xe9, 0x30, 0x07, 0x72, 0xa0, 0x07, 0x73,
0x20, 0x07, 0x6d, 0x90, 0x0e, 0x76, 0x40, 0x07, 0x7a, 0x60, 0x07, 0x74,
0xd0, 0x06, 0xe6, 0x10, 0x07, 0x76, 0xa0, 0x07, 0x73, 0x20, 0x07, 0x6d,
0x60, 0x0e, 0x73, 0x20, 0x07, 0x7a, 0x30, 0x07, 0x72, 0xd0, 0x06, 0xe6,
0x60, 0x07, 0x74, 0xa0, 0x07, 0x76, 0x40, 0x07, 0x6d, 0xe0, 0x0e, 0x78,
0xa0, 0x07, 0x71, 0x60, 0x07, 0x7a, 0x30, 0x07, 0x72, 0xa0, 0x07, 0x76,
0x40, 0x07, 0x43, 0x9e, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x86, 0x3c, 0x06, 0x10, 0x00, 0x01, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x0c, 0x79, 0x10, 0x20, 0x00, 0x04, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0xf2, 0x34, 0x40, 0x00, 0x0c, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0xe4, 0x81, 0x80, 0x00, 0x18,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x60, 0xc8, 0x33, 0x01, 0x01,
0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x16, 0x08, 0x00,
0x10, 0x00, 0x00, 0x00, 0x32, 0x1e, 0x98, 0x14, 0x19, 0x11, 0x4c, 0x90,
0x8c, 0x09, 0x26, 0x47, 0xc6, 0x04, 0x43, 0x22, 0x25, 0x30, 0x02, 0x50,
0x0c, 0x45, 0x50, 0x12, 0x65, 0x50, 0x08, 0xe5, 0x50, 0x1e, 0x45, 0x43,
0xa5, 0x24, 0x46, 0x00, 0x8a, 0xa0, 0x10, 0x0a, 0x84, 0xf2, 0x0c, 0x00,
0xe9, 0x19, 0x00, 0xda, 0x33, 0x00, 0xd4, 0x67, 0x00, 0xc8, 0x8f, 0x85,
0x18, 0x44, 0x20, 0x10, 0xc8, 0x71, 0x00, 0x00, 0x79, 0x18, 0x00, 0x00,
0x8e, 0x00, 0x00, 0x00, 0x1a, 0x03, 0x4c, 0x90, 0x46, 0x02, 0x13, 0x44,
0x8f, 0x0c, 0x6f, 0xec, 0xed, 0x4d, 0x0c, 0x24, 0xc6, 0x05, 0xc7, 0x45,
0xa6, 0x06, 0xa6, 0xc6, 0x45, 0x06, 0x07, 0x04, 0x25, 0xa7, 0xcc, 0x4c,
0x4c, 0xcc, 0x66, 0x6c, 0x46, 0x26, 0x65, 0x43, 0x10, 0x4c, 0x10, 0x88,
0x62, 0x82, 0x40, 0x18, 0x1b, 0x84, 0x81, 0xd8, 0x20, 0x10, 0x04, 0x05,
0xb8, 0xb9, 0x09, 0x02, 0x71, 0x6c, 0x18, 0x0e, 0x84, 0x98, 0x20, 0x58,
0x13, 0x93, 0xba, 0x2f, 0xba, 0x32, 0x3c, 0xba, 0x3a, 0xb9, 0xb2, 0x09,
0x02, 0x81, 0x4c, 0x10, 0x88, 0x64, 0x83, 0x40, 0x34, 0x1b, 0x12, 0x42,
0x59, 0x18, 0x62, 0x60, 0x08, 0x67, 0x43, 0xf0, 0x4c, 0x10, 0x30, 0x8a,
0x49, 0xdd, 0xd7, 0x5c, 0x58, 0x1b, 0x1c, 0x5b, 0x99, 0xdc, 0x06, 0x84,
0x88, 0x24, 0x86, 0x18, 0x08, 0x60, 0x43, 0x30, 0x6d, 0x20, 0x20, 0x00,
0xa0, 0x26, 0x08, 0x02, 0xb0, 0x01, 0xd8, 0x30, 0x10, 0xd7, 0xb5, 0x21,
0xc0, 0x36, 0x0c, 0x83, 0x95, 0x4d, 0x10, 0xb2, 0x6a, 0x43, 0xb0, 0x91,
0x68, 0x0b, 0x4b, 0x73, 0x23, 0x42, 0x55, 0x84, 0x35, 0xf4, 0xf4, 0x24,
0x45, 0x34, 0x41, 0x28, 0x9c, 0x09, 0x42, 0xf1, 0x6c, 0x08, 0x88, 0x09,
0x42, 0x01, 0x4d, 0x10, 0x8a, 0x68, 0x82, 0x40, 0x28, 0x13, 0x04, 0x62,
0xd9, 0x20, 0x90, 0x41, 0x19, 0x6c, 0x58, 0x08, 0xef, 0x03, 0x83, 0x30,
0x10, 0x83, 0x61, 0x0c, 0x08, 0x30, 0x30, 0x83, 0x0d, 0xc1, 0xb0, 0x41,
0x20, 0x03, 0x32, 0xd8, 0xb0, 0x0c, 0xde, 0x07, 0x06, 0x68, 0x20, 0x06,
0x83, 0x18, 0x0c, 0x60, 0x90, 0x06, 0x1b, 0x84, 0x33, 0x50, 0x03, 0x26,
0x53, 0x56, 0x5f, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x13, 0x84, 0x42,
0xda, 0xb0, 0x10, 0x6c, 0xf0, 0xb5, 0x41, 0x18, 0x80, 0xc1, 0x30, 0x06,
0x04, 0x18, 0x98, 0xc1, 0x86, 0xc0, 0x0d, 0x36, 0x0c, 0x6b, 0xf0, 0x06,
0xc0, 0x86, 0xc2, 0xea, 0xe0, 0xa0, 0x02, 0x68, 0x98, 0xb1, 0xbd, 0x85,
0xd1, 0xcd, 0xb1, 0x48, 0x73, 0x9b, 0xa3, 0x9b, 0x9b, 0x20, 0x10, 0x0c,
0x8d, 0xb9, 0xb4, 0xb3, 0x2f, 0x36, 0x32, 0x1a, 0x73, 0x69, 0x67, 0x5f,
0x73, 0x74, 0x13, 0x04, 0xa2, 0x21, 0x42, 0x57, 0x86, 0xf7, 0xe5, 0xf6,
0x26, 0xd7, 0xb6, 0x41, 0x91, 0x03, 0x32, 0x98, 0x03, 0x3a, 0xa8, 0x03,
0xc4, 0x0e, 0xee, 0x00, 0x0f, 0x86, 0x2a, 0x6c, 0x6c, 0x76, 0x6d, 0x2e,
0x69, 0x64, 0x65, 0x6e, 0x74, 0x53, 0x82, 0xa0, 0x0a, 0x19, 0x9e, 0x8b,
0x5d, 0x99, 0xdc, 0x5c, 0xda, 0x9b, 0xdb, 0x94, 0x80, 0x68, 0x42, 0x86,
0xe7, 0x62, 0x17, 0xc6, 0x66, 0x57, 0x26, 0x37, 0x25, 0x28, 0xea, 0x90,
0xe1, 0xb9, 0xcc, 0xa1, 0x85, 0x91, 0x95, 0xc9, 0x35, 0xbd, 0x91, 0x95,
0xb1, 0x4d, 0x09, 0x90, 0x32, 0x64, 0x78, 0x2e, 0x72, 0x65, 0x73, 0x6f,
0x75, 0x72, 0x63, 0x65, 0x73, 0x53, 0x02, 0xaa, 0x12, 0x19, 0x9e, 0x0b,
0x5d, 0x1e, 0x5c, 0x59, 0x90, 0x9b, 0xdb, 0x1b, 0x5d, 0x18, 0x5d, 0xda,
0x9b, 0xdb, 0xdc, 0x94, 0x20, 0xab, 0x43, 0x86, 0xe7, 0x62, 0x97, 0x56,
0x76, 0x97, 0x44, 0x36, 0x45, 0x17, 0x46, 0x57, 0x36, 0x25, 0xd8, 0xea,
0x90, 0xe1, 0xb9, 0x94, 0xb9, 0xd1, 0xc9, 0xe5, 0x41, 0xbd, 0xa5, 0xb9,
0xd1, 0xcd, 0x4d, 0x09, 0xe0, 0xa0, 0x0b, 0x19, 0x9e, 0xcb, 0xd8, 0x5b,
0x9d, 0x1b, 0x5d, 0x99, 0xdc, 0xdc, 0x94, 0x00, 0x0f, 0x00, 0x00, 0x00,
0x79, 0x18, 0x00, 0x00, 0x4c, 0x00, 0x00, 0x00, 0x33, 0x08, 0x80, 0x1c,
0xc4, 0xe1, 0x1c, 0x66, 0x14, 0x01, 0x3d, 0x88, 0x43, 0x38, 0x84, 0xc3,
0x8c, 0x42, 0x80, 0x07, 0x79, 0x78, 0x07, 0x73, 0x98, 0x71, 0x0c, 0xe6,
0x00, 0x0f, 0xed, 0x10, 0x0e, 0xf4, 0x80, 0x0e, 0x33, 0x0c, 0x42, 0x1e,
0xc2, 0xc1, 0x1d, 0xce, 0xa1, 0x1c, 0x66, 0x30, 0x05, 0x3d, 0x88, 0x43,
0x38, 0x84, 0x83, 0x1b, 0xcc, 0x03, 0x3d, 0xc8, 0x43, 0x3d, 0x8c, 0x03,
0x3d, 0xcc, 0x78, 0x8c, 0x74, 0x70, 0x07, 0x7b, 0x08, 0x07, 0x79, 0x48,
0x87, 0x70, 0x70, 0x07, 0x7a, 0x70, 0x03, 0x76, 0x78, 0x87, 0x70, 0x20,
0x87, 0x19, 0xcc, 0x11, 0x0e, 0xec, 0x90, 0x0e, 0xe1, 0x30, 0x0f, 0x6e,
0x30, 0x0f, 0xe3, 0xf0, 0x0e, 0xf0, 0x50, 0x0e, 0x33, 0x10, 0xc4, 0x1d,
0xde, 0x21, 0x1c, 0xd8, 0x21, 0x1d, 0xc2, 0x61, 0x1e, 0x66, 0x30, 0x89,
0x3b, 0xbc, 0x83, 0x3b, 0xd0, 0x43, 0x39, 0xb4, 0x03, 0x3c, 0xbc, 0x83,
0x3c, 0x84, 0x03, 0x3b, 0xcc, 0xf0, 0x14, 0x76, 0x60, 0x07, 0x7b, 0x68,
0x07, 0x37, 0x68, 0x87, 0x72, 0x68, 0x07, 0x37, 0x80, 0x87, 0x70, 0x90,
0x87, 0x70, 0x60, 0x07, 0x76, 0x28, 0x07, 0x76, 0xf8, 0x05, 0x76, 0x78,
0x87, 0x77, 0x80, 0x87, 0x5f, 0x08, 0x87, 0x71, 0x18, 0x87, 0x72, 0x98,
0x87, 0x79, 0x98, 0x81, 0x2c, 0xee, 0xf0, 0x0e, 0xee, 0xe0, 0x0e, 0xf5,
0xc0, 0x0e, 0xec, 0x30, 0x03, 0x62, 0xc8, 0xa1, 0x1c, 0xe4, 0xa1, 0x1c,
0xcc, 0xa1, 0x1c, 0xe4, 0xa1, 0x1c, 0xdc, 0x61, 0x1c, 0xca, 0x21, 0x1c,
0xc4, 0x81, 0x1d, 0xca, 0x61, 0x06, 0xd6, 0x90, 0x43, 0x39, 0xc8, 0x43,
0x39, 0x98, 0x43, 0x39, 0xc8, 0x43, 0x39, 0xb8, 0xc3, 0x38, 0x94, 0x43,
0x38, 0x88, 0x03, 0x3b, 0x94, 0xc3, 0x2f, 0xbc, 0x83, 0x3c, 0xfc, 0x82,
0x3b, 0xd4, 0x03, 0x3b, 0xb0, 0xc3, 0x8c, 0xc8, 0x21, 0x07, 0x7c, 0x70,
0x03, 0x72, 0x10, 0x87, 0x73, 0x70, 0x03, 0x7b, 0x08, 0x07, 0x79, 0x60,
0x87, 0x70, 0xc8, 0x87, 0x77, 0xa8, 0x07, 0x7a, 0x98, 0x81, 0x3c, 0xe4,
0x80, 0x0f, 0x6e, 0x40, 0x0f, 0xe5, 0xd0, 0x0e, 0xf0, 0x00, 0x00, 0x00,
0x71, 0x20, 0x00, 0x00, 0x12, 0x00, 0x00, 0x00, 0x46, 0x20, 0x0d, 0x97,
0xef, 0x3c, 0xbe, 0x10, 0x11, 0xc0, 0x44, 0x84, 0x40, 0x33, 0x2c, 0x84,
0x05, 0x4c, 0xc3, 0xe5, 0x3b, 0x8f, 0xbf, 0x38, 0xc0, 0x20, 0x36, 0x0f,
0x35, 0xf9, 0xc5, 0x6d, 0xdb, 0x00, 0x34, 0x5c, 0xbe, 0xf3, 0xf8, 0x12,
0xc0, 0x3c, 0x0b, 0xe1, 0x17, 0xb7, 0x6d, 0x02, 0xd5, 0x70, 0xf9, 0xce,
0xe3, 0x4b, 0x93, 0x13, 0x11, 0x28, 0x35, 0x3d, 0xd4, 0xe4, 0x17, 0xb7,
0x6d, 0x00, 0x04, 0x03, 0x20, 0x0d, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x48, 0x41, 0x53, 0x48, 0x14, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x78, 0x26, 0x97, 0x60, 0x43, 0xbf, 0xcf, 0x6c, 0xbf, 0xbb, 0xa0, 0x5f,
0xca, 0x55, 0x34, 0x5d, 0x44, 0x58, 0x49, 0x4c, 0xac, 0x06, 0x00, 0x00,
0x60, 0x00, 0x00, 0x00, 0xab, 0x01, 0x00, 0x00, 0x44, 0x58, 0x49, 0x4c,
0x00, 0x01, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x94, 0x06, 0x00, 0x00,
0x42, 0x43, 0xc0, 0xde, 0x21, 0x0c, 0x00, 0x00, 0xa2, 0x01, 0x00, 0x00,
0x0b, 0x82, 0x20, 0x00, 0x02, 0x00, 0x00, 0x00, 0x13, 0x00, 0x00, 0x00,
0x07, 0x81, 0x23, 0x91, 0x41, 0xc8, 0x04, 0x49, 0x06, 0x10, 0x32, 0x39,
0x92, 0x01, 0x84, 0x0c, 0x25, 0x05, 0x08, 0x19, 0x1e, 0x04, 0x8b, 0x62,
0x80, 0x14, 0x45, 0x02, 0x42, 0x92, 0x0b, 0x42, 0xa4, 0x10, 0x32, 0x14,
0x38, 0x08, 0x18, 0x4b, 0x0a, 0x32, 0x52, 0x88, 0x48, 0x90, 0x14, 0x20,
0x43, 0x46, 0x88, 0xa5, 0x00, 0x19, 0x32, 0x42, 0xe4, 0x48, 0x0e, 0x90,
0x91, 0x22, 0xc4, 0x50, 0x41, 0x51, 0x81, 0x8c, 0xe1, 0x83, 0xe5, 0x8a,
0x04, 0x29, 0x46, 0x06, 0x51, 0x18, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00,
0x1b, 0x8c, 0xe0, 0xff, 0xff, 0xff, 0xff, 0x07, 0x40, 0x02, 0xa8, 0x0d,
0x84, 0xf0, 0xff, 0xff, 0xff, 0xff, 0x03, 0x20, 0x6d, 0x30, 0x86, 0xff,
0xff, 0xff, 0xff, 0x1f, 0x00, 0x09, 0xa8, 0x00, 0x49, 0x18, 0x00, 0x00,
0x03, 0x00, 0x00, 0x00, 0x13, 0x82, 0x60, 0x42, 0x20, 0x4c, 0x08, 0x06,
0x00, 0x00, 0x00, 0x00, 0x89, 0x20, 0x00, 0x00, 0x43, 0x00, 0x00, 0x00,
0x32, 0x22, 0x48, 0x09, 0x20, 0x64, 0x85, 0x04, 0x93, 0x22, 0xa4, 0x84,
0x04, 0x93, 0x22, 0xe3, 0x84, 0xa1, 0x90, 0x14, 0x12, 0x4c, 0x8a, 0x8c,
0x0b, 0x84, 0xa4, 0x4c, 0x10, 0x68, 0x23, 0x00, 0x25, 0x00, 0x14, 0x66,
0x00, 0xe6, 0x08, 0xc0, 0x60, 0x8e, 0x00, 0x29, 0xc6, 0x20, 0x84, 0x14,
0x42, 0xa6, 0x18, 0x80, 0x10, 0x52, 0x06, 0xa1, 0x9b, 0x86, 0xcb, 0x9f,
0xb0, 0x87, 0x90, 0xfc, 0x95, 0x90, 0x56, 0x62, 0xf2, 0x8b, 0xdb, 0x46,
0xc5, 0x18, 0x63, 0x10, 0x2a, 0xf7, 0x0c, 0x97, 0x3f, 0x61, 0x0f, 0x21,
0xf9, 0x21, 0xd0, 0x0c, 0x0b, 0x81, 0x82, 0x55, 0x18, 0x45, 0x18, 0x1b,
0x63, 0x0c, 0x42, 0xc8, 0xa0, 0x36, 0x47, 0x10, 0x14, 0x83, 0x91, 0x42,
0xc8, 0x23, 0x38, 0x10, 0x30, 0x8c, 0x40, 0x0c, 0x33, 0xb5, 0xc1, 0x38,
0xb0, 0x43, 0x38, 0xcc, 0xc3, 0x3c, 0xb8, 0x01, 0x2d, 0x94, 0x03, 0x3e,
0xd0, 0x43, 0x3d, 0xc8, 0x43, 0x39, 0xc8, 0x01, 0x29, 0xf0, 0x81, 0x3d,
0x94, 0xc3, 0x38, 0xd0, 0xc3, 0x3b, 0xc8, 0x03, 0x1f, 0x98, 0x03, 0x3b,
0xbc, 0x43, 0x38, 0xd0, 0x03, 0x1b, 0x80, 0x01, 0x1d, 0xf8, 0x01, 0x18,
0xf8, 0x81, 0x1e, 0xe8, 0x41, 0x3b, 0xa4, 0x03, 0x3c, 0xcc, 0xc3, 0x2f,
0xd0, 0x43, 0x3e, 0xc0, 0x43, 0x39, 0xa0, 0x80, 0xcc, 0x24, 0x06, 0xe3,
0xc0, 0x0e, 0xe1, 0x30, 0x0f, 0xf3, 0xe0, 0x06, 0xb4, 0x50, 0x0e, 0xf8,
0x40, 0x0f, 0xf5, 0x20, 0x0f, 0xe5, 0x20, 0x07, 0xa4, 0xc0, 0x07, 0xf6,
0x50, 0x0e, 0xe3, 0x40, 0x0f, 0xef, 0x20, 0x0f, 0x7c, 0x60, 0x0e, 0xec,
0xf0, 0x0e, 0xe1, 0x40, 0x0f, 0x6c, 0x00, 0x06, 0x74, 0xe0, 0x07, 0x60,
0xe0, 0x07, 0x48, 0x98, 0x94, 0xea, 0x4d, 0xd2, 0x14, 0x51, 0xc2, 0xe4,
0xb3, 0x00, 0xf3, 0x2c, 0x44, 0xc4, 0x4e, 0xc0, 0x44, 0xa0, 0x80, 0xd0,
0x4d, 0x04, 0x02, 0x00, 0x13, 0x14, 0x72, 0xc0, 0x87, 0x74, 0x60, 0x87,
0x4c, 0xcc, 0x66, 0x6c, 0x46, 0x26, 0x65, 0x43, 0x10, 0x4c, 0x10, 0x08,
0x63, 0x82, 0x40, 0x1c, 0x1b, 0x84, 0x81, 0xd8, 0x20, 0x10, 0x04, 0x05,
0xb8, 0xb9, 0x09, 0x02, 0x81, 0x6c, 0x18, 0x0e, 0x84, 0x98, 0x20, 0x64,
0x15, 0x93, 0xba, 0x2f, 0xba, 0x32, 0x3c, 0xba, 0x3a, 0xb9, 0xb2, 0x09,
0x02, 0x91, 0x4c, 0x10, 0x08, 0x65, 0x83, 0x40, 0x34, 0x1b, 0x12, 0x42,
0x59, 0x18, 0x62, 0x60, 0x08, 0x67, 0x43, 0xf0, 0x4c, 0x10, 0xb6, 0x8b,
0x0e, 0x5d, 0x1e, 0x5c, 0xd9, 0xd7, 0xd0, 0x9b, 0xdb, 0x1c, 0x5d, 0x98,
0x1b, 0xdd, 0xdc, 0x04, 0x81, 0x58, 0x26, 0x08, 0x04, 0xb3, 0x01, 0x21,
0x22, 0x69, 0x22, 0x06, 0x0a, 0xd8, 0x10, 0x54, 0x13, 0x84, 0x0e, 0x63,
0x52, 0xf7, 0x35, 0x17, 0xd6, 0x06, 0xc7, 0x56, 0x26, 0xb7, 0x01, 0x21,
0x2e, 0x8c, 0x21, 0x06, 0x02, 0xd8, 0x10, 0x64, 0x1b, 0x08, 0x08, 0xb0,
0xb4, 0x09, 0x82, 0x66, 0xb1, 0x1a, 0x7a, 0x73, 0x9b, 0xa3, 0x0b, 0x73,
0xa3, 0x9b, 0xfb, 0x1a, 0x7b, 0x63, 0x7b, 0x93, 0xfb, 0x9a, 0x1b, 0x0b,
0x63, 0x2b, 0x9b, 0x20, 0x10, 0xcd, 0x06, 0x03, 0xe9, 0x26, 0xc2, 0x6b,
0x36, 0x08, 0xd4, 0xb7, 0x61, 0x20, 0x38, 0x30, 0x98, 0x20, 0x08, 0xc0,
0x06, 0x60, 0xc3, 0x40, 0x8c, 0xc1, 0x18, 0x6c, 0x08, 0xc8, 0x60, 0xc3,
0x30, 0x88, 0x41, 0x19, 0x4c, 0x10, 0xbc, 0x6c, 0x43, 0x70, 0x06, 0x24,
0xda, 0xc2, 0xd2, 0xdc, 0x88, 0x50, 0x15, 0x61, 0x0d, 0x3d, 0x3d, 0x49,
0x11, 0x4d, 0x10, 0x0a, 0x68, 0x82, 0x50, 0x44, 0x1b, 0x02, 0x62, 0x82,
0x50, 0x48, 0x13, 0x84, 0x62, 0x9a, 0x20, 0x10, 0xce, 0x06, 0x61, 0x82,
0x83, 0x0d, 0x0b, 0xa1, 0x06, 0x6b, 0xc0, 0x06, 0x6d, 0xe0, 0x06, 0xc3,
0x1b, 0x10, 0x6c, 0x10, 0x07, 0x1b, 0x82, 0x61, 0x83, 0x30, 0x4d, 0x1b,
0x96, 0x41, 0x0d, 0xd6, 0x80, 0x0d, 0xe6, 0xc0, 0x0d, 0x06, 0x37, 0x18,
0xd8, 0x80, 0x0e, 0x36, 0x08, 0x72, 0x50, 0x07, 0x4c, 0xa6, 0xac, 0xbe,
0xa8, 0xc2, 0xe4, 0xce, 0xca, 0xe8, 0x26, 0x08, 0x05, 0xb5, 0x61, 0x21,
0xee, 0x60, 0x0d, 0xf0, 0xa0, 0x0d, 0xd8, 0x60, 0x78, 0x03, 0x82, 0x0d,
0xe2, 0x60, 0x43, 0x90, 0x07, 0x1b, 0x06, 0x3b, 0xd0, 0x03, 0x60, 0x43,
0x21, 0x06, 0x69, 0xb0, 0x07, 0x1b, 0x40, 0xc3, 0x8c, 0xed, 0x2d, 0x8c,
0x6e, 0x8e, 0x45, 0x9a, 0xdb, 0x1c, 0xdd, 0xdc, 0x04, 0x81, 0x78, 0x68,
0xcc, 0xa5, 0x9d, 0x7d, 0xb1, 0x91, 0xd1, 0x98, 0x4b, 0x3b, 0xfb, 0x9a,
0xa3, 0x23, 0x42, 0x57, 0x86, 0xf7, 0xe5, 0xf6, 0x26, 0xd7, 0xb6, 0x41,
0xe9, 0x03, 0xc4, 0x0f, 0xfe, 0x00, 0x14, 0x90, 0x50, 0xa0, 0x44, 0x61,
0xa8, 0xc2, 0xc6, 0x66, 0xd7, 0xe6, 0x92, 0x46, 0x56, 0xe6, 0x46, 0x37,
0x25, 0x08, 0xaa, 0x90, 0xe1, 0xb9, 0xd8, 0x95, 0xc9, 0xcd, 0xa5, 0xbd,
0xb9, 0x4d, 0x09, 0x88, 0x26, 0x64, 0x78, 0x2e, 0x76, 0x61, 0x6c, 0x76,
0x65, 0x72, 0x53, 0x82, 0xa2, 0x0e, 0x19, 0x9e, 0xcb, 0x1c, 0x5a, 0x18,
0x59, 0x99, 0x5c, 0xd3, 0x1b, 0x59, 0x19, 0xdb, 0x94, 0x00, 0x29, 0x43,
0x86, 0xe7, 0x22, 0x57, 0x36, 0xf7, 0x56, 0x27, 0x37, 0x56, 0x36, 0x37,
0x25, 0xd0, 0x2a, 0x91, 0xe1, 0xb9, 0xd0, 0xe5, 0xc1, 0x95, 0x05, 0xb9,
0xb9, 0xbd, 0xd1, 0x85, 0xd1, 0xa5, 0xbd, 0xb9, 0xcd, 0x4d, 0x11, 0xc0,
0xa0, 0x0c, 0xea, 0x90, 0xe1, 0xb9, 0xd8, 0xa5, 0x95, 0xdd, 0x25, 0x91,
0x4d, 0xd1, 0x85, 0xd1, 0x95, 0x4d, 0x09, 0xce, 0xa0, 0x0e, 0x19, 0x9e,
0x4b, 0x99, 0x1b, 0x9d, 0x5c, 0x1e, 0xd4, 0x5b, 0x9a, 0x1b, 0xdd, 0xdc,
0x94, 0x60, 0x0f, 0xba, 0x90, 0xe1, 0xb9, 0x8c, 0xbd, 0xd5, 0xb9, 0xd1,
0x95, 0xc9, 0xcd, 0x4d, 0x09, 0x44, 0x01, 0x00, 0x79, 0x18, 0x00, 0x00,
0x4c, 0x00, 0x00, 0x00, 0x33, 0x08, 0x80, 0x1c, 0xc4, 0xe1, 0x1c, 0x66,
0x14, 0x01, 0x3d, 0x88, 0x43, 0x38, 0x84, 0xc3, 0x8c, 0x42, 0x80, 0x07,
0x79, 0x78, 0x07, 0x73, 0x98, 0x71, 0x0c, 0xe6, 0x00, 0x0f, 0xed, 0x10,
0x0e, 0xf4, 0x80, 0x0e, 0x33, 0x0c, 0x42, 0x1e, 0xc2, 0xc1, 0x1d, 0xce,
0xa1, 0x1c, 0x66, 0x30, 0x05, 0x3d, 0x88, 0x43, 0x38, 0x84, 0x83, 0x1b,
0xcc, 0x03, 0x3d, 0xc8, 0x43, 0x3d, 0x8c, 0x03, 0x3d, 0xcc, 0x78, 0x8c,
0x74, 0x70, 0x07, 0x7b, 0x08, 0x07, 0x79, 0x48, 0x87, 0x70, 0x70, 0x07,
0x7a, 0x70, 0x03, 0x76, 0x78, 0x87, 0x70, 0x20, 0x87, 0x19, 0xcc, 0x11,
0x0e, 0xec, 0x90, 0x0e, 0xe1, 0x30, 0x0f, 0x6e, 0x30, 0x0f, 0xe3, 0xf0,
0x0e, 0xf0, 0x50, 0x0e, 0x33, 0x10, 0xc4, 0x1d, 0xde, 0x21, 0x1c, 0xd8,
0x21, 0x1d, 0xc2, 0x61, 0x1e, 0x66, 0x30, 0x89, 0x3b, 0xbc, 0x83, 0x3b,
0xd0, 0x43, 0x39, 0xb4, 0x03, 0x3c, 0xbc, 0x83, 0x3c, 0x84, 0x03, 0x3b,
0xcc, 0xf0, 0x14, 0x76, 0x60, 0x07, 0x7b, 0x68, 0x07, 0x37, 0x68, 0x87,
0x72, 0x68, 0x07, 0x37, 0x80, 0x87, 0x70, 0x90, 0x87, 0x70, 0x60, 0x07,
0x76, 0x28, 0x07, 0x76, 0xf8, 0x05, 0x76, 0x78, 0x87, 0x77, 0x80, 0x87,
0x5f, 0x08, 0x87, 0x71, 0x18, 0x87, 0x72, 0x98, 0x87, 0x79, 0x98, 0x81,
0x2c, 0xee, 0xf0, 0x0e, 0xee, 0xe0, 0x0e, 0xf5, 0xc0, 0x0e, 0xec, 0x30,
0x03, 0x62, 0xc8, 0xa1, 0x1c, 0xe4, 0xa1, 0x1c, 0xcc, 0xa1, 0x1c, 0xe4,
0xa1, 0x1c, 0xdc, 0x61, 0x1c, 0xca, 0x21, 0x1c, 0xc4, 0x81, 0x1d, 0xca,
0x61, 0x06, 0xd6, 0x90, 0x43, 0x39, 0xc8, 0x43, 0x39, 0x98, 0x43, 0x39,
0xc8, 0x43, 0x39, 0xb8, 0xc3, 0x38, 0x94, 0x43, 0x38, 0x88, 0x03, 0x3b,
0x94, 0xc3, 0x2f, 0xbc, 0x83, 0x3c, 0xfc, 0x82, 0x3b, 0xd4, 0x03, 0x3b,
0xb0, 0xc3, 0x8c, 0xc8, 0x21, 0x07, 0x7c, 0x70, 0x03, 0x72, 0x10, 0x87,
0x73, 0x70, 0x03, 0x7b, 0x08, 0x07, 0x79, 0x60, 0x87, 0x70, 0xc8, 0x87,
0x77, 0xa8, 0x07, 0x7a, 0x98, 0x81, 0x3c, 0xe4, 0x80, 0x0f, 0x6e, 0x40,
0x0f, 0xe5, 0xd0, 0x0e, 0xf0, 0x00, 0x00, 0x00, 0x71, 0x20, 0x00, 0x00,
0x18, 0x00, 0x00, 0x00, 0x46, 0xb0, 0x0d, 0x97, 0xef, 0x3c, 0xbe, 0x10,
0x50, 0x45, 0x41, 0x44, 0xa5, 0x03, 0x0c, 0x25, 0x61, 0x00, 0x02, 0xe6,
0x17, 0xb7, 0x6d, 0x05, 0xd2, 0x70, 0xf9, 0xce, 0xe3, 0x0b, 0x11, 0x01,
0x4c, 0x44, 0x08, 0x34, 0xc3, 0x42, 0x58, 0xc0, 0x34, 0x5c, 0xbe, 0xf3,
0xf8, 0x8b, 0x03, 0x0c, 0x62, 0xf3, 0x50, 0x93, 0x5f, 0xdc, 0xb6, 0x0d,
0x40, 0xc3, 0xe5, 0x3b, 0x8f, 0x2f, 0x01, 0xcc, 0xb3, 0x10, 0x7e, 0x71,
0xdb, 0x26, 0x50, 0x0d, 0x97, 0xef, 0x3c, 0xbe, 0x34, 0x39, 0x11, 0x81,
0x52, 0xd3, 0x43, 0x4d, 0x7e, 0x71, 0xdb, 0x06, 0x40, 0x30, 0x00, 0xd2,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x48, 0x41, 0x53, 0x48,
0x14, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe3, 0xfd, 0xb6, 0x60,
0x88, 0x06, 0x02, 0x15, 0xb2, 0xad, 0x97, 0x06, 0x58, 0xab, 0xdb, 0x1f,
0x44, 0x58, 0x49, 0x4c, 0x4c, 0x07, 0x00, 0x00, 0x60, 0x00, 0x00, 0x00,
0xd3, 0x01, 0x00, 0x00, 0x44, 0x58, 0x49, 0x4c, 0x00, 0x01, 0x00, 0x00,
0x10, 0x00, 0x00, 0x00, 0x34, 0x07, 0x00, 0x00, 0x42, 0x43, 0xc0, 0xde,
0x21, 0x0c, 0x00, 0x00, 0xca, 0x01, 0x00, 0x00, 0x0b, 0x82, 0x20, 0x00,
0x02, 0x00, 0x00, 0x00, 0x13, 0x00, 0x00, 0x00, 0x07, 0x81, 0x23, 0x91,
0x41, 0xc8, 0x04, 0x49, 0x06, 0x10, 0x32, 0x39, 0x92, 0x01, 0x84, 0x0c,
0x25, 0x05, 0x08, 0x19, 0x1e, 0x04, 0x8b, 0x62, 0x80, 0x14, 0x45, 0x02,
0x42, 0x92, 0x0b, 0x42, 0xa4, 0x10, 0x32, 0x14, 0x38, 0x08, 0x18, 0x4b,
0x0a, 0x32, 0x52, 0x88, 0x48, 0x90, 0x14, 0x20, 0x43, 0x46, 0x88, 0xa5,
0x00, 0x19, 0x32, 0x42, 0xe4, 0x48, 0x0e, 0x90, 0x91, 0x22, 0xc4, 0x50,
0x41, 0x51, 0x81, 0x8c, 0xe1, 0x83, 0xe5, 0x8a, 0x04, 0x29, 0x46, 0x06,
0x51, 0x18, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x1b, 0x8c, 0xe0, 0xff,
0xff, 0xff, 0xff, 0x07, 0x40, 0x02, 0xa8, 0x0d, 0x84, 0xf0, 0xff, 0xff,
0xff, 0xff, 0x03, 0x20, 0x6d, 0x30, 0x86, 0xff, 0xff, 0xff, 0xff, 0x1f,
0x00, 0x09, 0xa8, 0x00, 0x49, 0x18, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00,
0x13, 0x82, 0x60, 0x42, 0x20, 0x4c, 0x08, 0x06, 0x00, 0x00, 0x00, 0x00,
0x89, 0x20, 0x00, 0x00, 0x4d, 0x00, 0x00, 0x00, 0x32, 0x22, 0x48, 0x09,
0x20, 0x64, 0x85, 0x04, 0x93, 0x22, 0xa4, 0x84, 0x04, 0x93, 0x22, 0xe3,
0x84, 0xa1, 0x90, 0x14, 0x12, 0x4c, 0x8a, 0x8c, 0x0b, 0x84, 0xa4, 0x4c,
0x10, 0x7c, 0x23, 0x00, 0x25, 0x00, 0x14, 0x66, 0x00, 0xe6, 0x08, 0xc0,
0x60, 0x8e, 0x00, 0x29, 0xc6, 0x20, 0x84, 0x14, 0x42, 0xa6, 0x18, 0x80,
0x10, 0x52, 0x06, 0xa1, 0x9b, 0x86, 0xcb, 0x9f, 0xb0, 0x87, 0x90, 0xfc,
0x95, 0x90, 0x56, 0x62, 0xf2, 0x8b, 0xdb, 0x46, 0xc5, 0x18, 0x63, 0x10,
0x2a, 0xf7, 0x0c, 0x97, 0x3f, 0x61, 0x0f, 0x21, 0xf9, 0x21, 0xd0, 0x0c,
0x0b, 0x81, 0x82, 0x55, 0x18, 0x45, 0x18, 0x1b, 0x63, 0x0c, 0x42, 0xc8,
0xa0, 0x76, 0xd4, 0x70, 0xf9, 0x13, 0xf6, 0x10, 0x92, 0xcf, 0x6d, 0x54,
0xb1, 0x12, 0x93, 0x5f, 0xdc, 0x36, 0x22, 0xc6, 0x18, 0xa3, 0x10, 0x8f,
0x30, 0x42, 0x70, 0x8e, 0x20, 0x28, 0x06, 0x23, 0x85, 0x10, 0x49, 0x73,
0x20, 0x60, 0x18, 0x81, 0x18, 0x66, 0x6a, 0x83, 0x71, 0x60, 0x87, 0x70,
0x98, 0x87, 0x79, 0x70, 0x03, 0x5a, 0x28, 0x07, 0x7c, 0xa0, 0x87, 0x7a,
0x90, 0x87, 0x72, 0x90, 0x03, 0x52, 0xe0, 0x03, 0x7b, 0x28, 0x87, 0x71,
0xa0, 0x87, 0x77, 0x90, 0x07, 0x3e, 0x30, 0x07, 0x76, 0x78, 0x87, 0x70,
0xa0, 0x07, 0x36, 0x00, 0x03, 0x3a, 0xf0, 0x03, 0x30, 0xf0, 0x03, 0x3d,
0xd0, 0x83, 0x76, 0x48, 0x07, 0x78, 0x98, 0x87, 0x5f, 0xa0, 0x87, 0x7c,
0x80, 0x87, 0x72, 0x40, 0x01, 0x99, 0x49, 0x0c, 0xc6, 0x81, 0x1d, 0xc2,
0x61, 0x1e, 0xe6, 0xc1, 0x0d, 0x68, 0xa1, 0x1c, 0xf0, 0x81, 0x1e, 0xea,
0x41, 0x1e, 0xca, 0x41, 0x0e, 0x48, 0x81, 0x0f, 0xec, 0xa1, 0x1c, 0xc6,
0x81, 0x1e, 0xde, 0x41, 0x1e, 0xf8, 0xc0, 0x1c, 0xd8, 0xe1, 0x1d, 0xc2,
0x81, 0x1e, 0xd8, 0x00, 0x0c, 0xe8, 0xc0, 0x0f, 0xc0, 0xc0, 0x0f, 0x90,
0x60, 0x2f, 0xe1, 0x73, 0x26, 0xec, 0x21, 0x7e, 0xce, 0x69, 0xa4, 0x09,
0x68, 0x26, 0x09, 0x05, 0x83, 0xf4, 0x4d, 0xd2, 0x14, 0x51, 0xc2, 0xe4,
0xb3, 0x00, 0xf3, 0x2c, 0x44, 0xc4, 0x4e, 0xc0, 0x44, 0xa0, 0x80, 0x10,
0x4f, 0x04, 0x02, 0x00, 0x13, 0x14, 0x72, 0xc0, 0x87, 0x74, 0x60, 0x87,
0x36, 0x68, 0x87, 0x79, 0x68, 0x03, 0x72, 0xc0, 0x87, 0x0d, 0xaf, 0x50,
0x0e, 0x6d, 0xd0, 0x0e, 0x7a, 0x50, 0x0e, 0x6d, 0x00, 0x0f, 0x7a, 0x30,
0x07, 0x72, 0xa0, 0x07, 0x73, 0x20, 0x07, 0x6d, 0x90, 0x0e, 0x71, 0xa0,
@@ -232,41 +251,45 @@ static const unsigned char texture_rgb_frag_dxil[] = {
0x0c, 0x79, 0x10, 0x20, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x18, 0xf2, 0x34, 0x40, 0x00, 0x0c, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x30, 0xe4, 0x81, 0x80, 0x00, 0x18, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x20, 0x0b, 0x04, 0x00, 0x00, 0x0d, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x60, 0xc8, 0x33, 0x01, 0x01, 0x30, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x40, 0x16, 0x08, 0x00, 0x0f, 0x00, 0x00, 0x00,
0x32, 0x1e, 0x98, 0x14, 0x19, 0x11, 0x4c, 0x90, 0x8c, 0x09, 0x26, 0x47,
0xc6, 0x04, 0x43, 0x22, 0x25, 0x30, 0x02, 0x50, 0x12, 0xc5, 0x50, 0x04,
0x65, 0x50, 0x1e, 0x54, 0x4a, 0x62, 0x04, 0xa0, 0x08, 0x0a, 0xa1, 0x40,
0xc8, 0xce, 0x00, 0x10, 0x9e, 0x01, 0xa0, 0x3c, 0x16, 0x62, 0x10, 0x81,
0x40, 0x20, 0xc7, 0x01, 0x79, 0x18, 0x00, 0x00, 0x57, 0x00, 0x00, 0x00,
0x1a, 0x03, 0x4c, 0x90, 0x46, 0x02, 0x13, 0x44, 0x8f, 0x0c, 0x6f, 0xec,
0xed, 0x4d, 0x0c, 0x24, 0xc6, 0x05, 0xc7, 0x45, 0xa6, 0x06, 0xa6, 0xc6,
0x45, 0x06, 0x07, 0x04, 0x25, 0xa7, 0xcc, 0x4c, 0x4c, 0xcc, 0x66, 0x6c,
0x46, 0x26, 0x65, 0x43, 0x10, 0x4c, 0x10, 0x88, 0x62, 0x82, 0x40, 0x18,
0x1b, 0x84, 0x81, 0x98, 0x20, 0x10, 0xc7, 0x06, 0x61, 0x30, 0x28, 0xc0,
0xcd, 0x4d, 0x10, 0x08, 0x64, 0xc3, 0x80, 0x24, 0xc4, 0x04, 0xc1, 0x8a,
0x08, 0x4c, 0x10, 0x88, 0x64, 0x83, 0x40, 0x18, 0x1b, 0x12, 0x62, 0x61,
0x1a, 0x62, 0x68, 0x08, 0x67, 0x43, 0xf0, 0x4c, 0x10, 0x30, 0x69, 0x03,
0x42, 0x44, 0x4c, 0x43, 0x0c, 0x04, 0xb0, 0x21, 0x90, 0x36, 0x10, 0x10,
0x00, 0x4c, 0x13, 0x84, 0x6c, 0xda, 0x10, 0x54, 0x13, 0x04, 0x01, 0x20,
0xd1, 0x16, 0x96, 0xe6, 0x46, 0x84, 0xaa, 0x08, 0x6b, 0xe8, 0xe9, 0x49,
0x8a, 0x68, 0x82, 0x50, 0x30, 0x13, 0x84, 0xa2, 0xd9, 0x10, 0x10, 0x13,
0x84, 0xc2, 0x99, 0x20, 0x14, 0xcf, 0x04, 0x81, 0x50, 0x26, 0x08, 0xc4,
0xb2, 0x41, 0xf8, 0xc0, 0x60, 0xc3, 0x42, 0x64, 0xda, 0xc6, 0x75, 0x83,
0x47, 0x6c, 0x61, 0xb0, 0x21, 0x18, 0x36, 0x08, 0xdf, 0xb7, 0x61, 0x19,
0x32, 0x6d, 0x1b, 0x83, 0x6e, 0xe8, 0x86, 0x8d, 0x0c, 0x36, 0x08, 0x62,
0x50, 0x06, 0x4c, 0xa6, 0xac, 0xbe, 0xa8, 0xc2, 0xe4, 0xce, 0xca, 0xe8,
0x26, 0x08, 0x05, 0xb4, 0x61, 0x21, 0xce, 0x40, 0x43, 0x03, 0x6e, 0x1b,
0x3c, 0x62, 0x0b, 0x83, 0x0d, 0x41, 0x1a, 0x6c, 0x18, 0xcc, 0x40, 0x0d,
0x80, 0x0d, 0xc5, 0x85, 0xad, 0x01, 0x05, 0x54, 0x61, 0x63, 0xb3, 0x6b,
0x73, 0x49, 0x23, 0x2b, 0x73, 0xa3, 0x9b, 0x12, 0x04, 0x55, 0xc8, 0xf0,
0x5c, 0xec, 0xca, 0xe4, 0xe6, 0xd2, 0xde, 0xdc, 0xa6, 0x04, 0x44, 0x13,
0x32, 0x3c, 0x17, 0xbb, 0x30, 0x36, 0xbb, 0x32, 0xb9, 0x29, 0x81, 0x51,
0x87, 0x0c, 0xcf, 0x65, 0x0e, 0x2d, 0x8c, 0xac, 0x4c, 0xae, 0xe9, 0x8d,
0xac, 0x8c, 0x6d, 0x4a, 0x90, 0x94, 0x21, 0xc3, 0x73, 0x91, 0x2b, 0x9b,
0x7b, 0xab, 0x93, 0x1b, 0x2b, 0x9b, 0x9b, 0x12, 0x4c, 0x75, 0xc8, 0xf0,
0x5c, 0xec, 0xd2, 0xca, 0xee, 0x92, 0xc8, 0xa6, 0xe8, 0xc2, 0xe8, 0xca,
0xa6, 0x04, 0x55, 0x1d, 0x32, 0x3c, 0x97, 0x32, 0x37, 0x3a, 0xb9, 0x3c,
0xa8, 0xb7, 0x34, 0x37, 0xba, 0xb9, 0x29, 0xc1, 0x1a, 0x00, 0x00, 0x00,
0x65, 0x50, 0x08, 0xe5, 0x41, 0xa5, 0x24, 0x46, 0x00, 0x8a, 0xa0, 0x10,
0x0a, 0x84, 0xf2, 0x0c, 0x00, 0xed, 0x19, 0x00, 0xea, 0x33, 0x00, 0xe4,
0xc7, 0x42, 0x0c, 0x22, 0x10, 0x08, 0xe4, 0x38, 0x00, 0x00, 0x00, 0x00,
0x79, 0x18, 0x00, 0x00, 0x5e, 0x00, 0x00, 0x00, 0x1a, 0x03, 0x4c, 0x90,
0x46, 0x02, 0x13, 0x44, 0x8f, 0x0c, 0x6f, 0xec, 0xed, 0x4d, 0x0c, 0x24,
0xc6, 0x05, 0xc7, 0x45, 0xa6, 0x06, 0xa6, 0xc6, 0x45, 0x06, 0x07, 0x04,
0x25, 0xa7, 0xcc, 0x4c, 0x4c, 0xcc, 0x66, 0x6c, 0x46, 0x26, 0x65, 0x43,
0x10, 0x4c, 0x10, 0x08, 0x63, 0x82, 0x40, 0x1c, 0x1b, 0x84, 0x81, 0x98,
0x20, 0x10, 0xc8, 0x06, 0x61, 0x30, 0x28, 0xc0, 0xcd, 0x4d, 0x10, 0x88,
0x64, 0xc3, 0x80, 0x24, 0xc4, 0x04, 0x21, 0x9b, 0x08, 0x4c, 0x10, 0x08,
0x65, 0x83, 0x40, 0x18, 0x1b, 0x12, 0x62, 0x61, 0x1a, 0x62, 0x68, 0x08,
0x67, 0x43, 0xf0, 0x4c, 0x10, 0x36, 0x6a, 0x82, 0x40, 0x2c, 0x13, 0x04,
0x82, 0xd9, 0x80, 0x10, 0x11, 0x23, 0x11, 0xc3, 0x04, 0x6c, 0x08, 0xa8,
0x09, 0x42, 0x57, 0x6d, 0x40, 0x08, 0x8b, 0x69, 0x88, 0x81, 0x00, 0x36,
0x04, 0xd7, 0x06, 0x02, 0x02, 0x2a, 0x6c, 0x82, 0xe0, 0x59, 0x1b, 0x02,
0x6d, 0x82, 0x20, 0x00, 0x24, 0xda, 0xc2, 0xd2, 0xdc, 0x88, 0x50, 0x15,
0x61, 0x0d, 0x3d, 0x3d, 0x49, 0x11, 0x4d, 0x10, 0x0a, 0x67, 0x82, 0x50,
0x3c, 0x1b, 0x02, 0x62, 0x82, 0x50, 0x40, 0x13, 0x84, 0x22, 0x9a, 0x20,
0x10, 0xcd, 0x06, 0x41, 0x22, 0x83, 0x0d, 0x0b, 0xe1, 0x7d, 0x60, 0x10,
0x06, 0x62, 0x30, 0x8c, 0x01, 0x01, 0x06, 0x65, 0xb0, 0x21, 0x18, 0x36,
0x08, 0x92, 0xb4, 0x61, 0x19, 0xbc, 0x0f, 0x0c, 0xce, 0x40, 0x0c, 0x06,
0x31, 0x18, 0xc0, 0x00, 0x0d, 0x36, 0x08, 0x66, 0x90, 0x06, 0x4c, 0xa6,
0xac, 0xbe, 0xa8, 0xc2, 0xe4, 0xce, 0xca, 0xe8, 0x26, 0x08, 0x85, 0xb4,
0x61, 0x21, 0xd6, 0xe0, 0x63, 0x83, 0x30, 0x00, 0x83, 0x61, 0x0c, 0x08,
0x30, 0x28, 0x83, 0x0d, 0x41, 0x1b, 0x6c, 0x18, 0xd4, 0xc0, 0x0d, 0x80,
0x0d, 0x05, 0xd7, 0xbd, 0x41, 0x06, 0x54, 0x61, 0x63, 0xb3, 0x6b, 0x73,
0x49, 0x23, 0x2b, 0x73, 0xa3, 0x9b, 0x12, 0x04, 0x55, 0xc8, 0xf0, 0x5c,
0xec, 0xca, 0xe4, 0xe6, 0xd2, 0xde, 0xdc, 0xa6, 0x04, 0x44, 0x13, 0x32,
0x3c, 0x17, 0xbb, 0x30, 0x36, 0xbb, 0x32, 0xb9, 0x29, 0x81, 0x51, 0x87,
0x0c, 0xcf, 0x65, 0x0e, 0x2d, 0x8c, 0xac, 0x4c, 0xae, 0xe9, 0x8d, 0xac,
0x8c, 0x6d, 0x4a, 0x90, 0x94, 0x21, 0xc3, 0x73, 0x91, 0x2b, 0x9b, 0x7b,
0xab, 0x93, 0x1b, 0x2b, 0x9b, 0x9b, 0x12, 0x60, 0x75, 0xc8, 0xf0, 0x5c,
0xec, 0xd2, 0xca, 0xee, 0x92, 0xc8, 0xa6, 0xe8, 0xc2, 0xe8, 0xca, 0xa6,
0x04, 0x5a, 0x1d, 0x32, 0x3c, 0x97, 0x32, 0x37, 0x3a, 0xb9, 0x3c, 0xa8,
0xb7, 0x34, 0x37, 0xba, 0xb9, 0x29, 0xc1, 0x1b, 0x00, 0x00, 0x00, 0x00,
0x79, 0x18, 0x00, 0x00, 0x4c, 0x00, 0x00, 0x00, 0x33, 0x08, 0x80, 0x1c,
0xc4, 0xe1, 0x1c, 0x66, 0x14, 0x01, 0x3d, 0x88, 0x43, 0x38, 0x84, 0xc3,
0x8c, 0x42, 0x80, 0x07, 0x79, 0x78, 0x07, 0x73, 0x98, 0x71, 0x0c, 0xe6,
@@ -293,32 +316,38 @@ static const unsigned char texture_rgb_frag_dxil[] = {
0x03, 0x72, 0x10, 0x87, 0x73, 0x70, 0x03, 0x7b, 0x08, 0x07, 0x79, 0x60,
0x87, 0x70, 0xc8, 0x87, 0x77, 0xa8, 0x07, 0x7a, 0x98, 0x81, 0x3c, 0xe4,
0x80, 0x0f, 0x6e, 0x40, 0x0f, 0xe5, 0xd0, 0x0e, 0xf0, 0x00, 0x00, 0x00,
0x71, 0x20, 0x00, 0x00, 0x12, 0x00, 0x00, 0x00, 0x46, 0x20, 0x0d, 0x97,
0xef, 0x3c, 0xbe, 0x10, 0x11, 0xc0, 0x44, 0x84, 0x40, 0x33, 0x2c, 0x84,
0x05, 0x4c, 0xc3, 0xe5, 0x3b, 0x8f, 0xbf, 0x38, 0xc0, 0x20, 0x36, 0x0f,
0x35, 0xf9, 0xc5, 0x6d, 0xdb, 0x00, 0x34, 0x5c, 0xbe, 0xf3, 0xf8, 0x12,
0xc0, 0x3c, 0x0b, 0xe1, 0x17, 0xb7, 0x6d, 0x02, 0xd5, 0x70, 0xf9, 0xce,
0xe3, 0x4b, 0x93, 0x13, 0x11, 0x28, 0x35, 0x3d, 0xd4, 0xe4, 0x17, 0xb7,
0x6d, 0x00, 0x04, 0x03, 0x20, 0x0d, 0x00, 0x00, 0x61, 0x20, 0x00, 0x00,
0x38, 0x00, 0x00, 0x00, 0x13, 0x04, 0x41, 0x2c, 0x10, 0x00, 0x00, 0x00,
0x05, 0x00, 0x00, 0x00, 0xf4, 0x46, 0x00, 0x88, 0xcc, 0x00, 0x14, 0x42,
0x29, 0x94, 0x5c, 0xe1, 0x51, 0x29, 0x83, 0x12, 0xa0, 0x31, 0x03, 0x00,
0x23, 0x06, 0x09, 0x00, 0x82, 0x60, 0x00, 0x65, 0x05, 0x74, 0x5d, 0xc9,
0x88, 0x41, 0x02, 0x80, 0x20, 0x18, 0x40, 0x9a, 0x41, 0x60, 0x98, 0x32,
0x62, 0x90, 0x00, 0x20, 0x08, 0x06, 0x86, 0x97, 0x68, 0x99, 0xa4, 0x8c,
0x18, 0x24, 0x00, 0x08, 0x82, 0x81, 0xf1, 0x29, 0x9b, 0x56, 0x2c, 0x23,
0x06, 0x09, 0x00, 0x82, 0x60, 0x60, 0x80, 0xc1, 0xb2, 0x6d, 0x14, 0x33,
0x62, 0x90, 0x00, 0x20, 0x08, 0x06, 0x46, 0x18, 0x30, 0x1c, 0x77, 0x34,
0x23, 0x06, 0x09, 0x00, 0x82, 0x60, 0x60, 0x88, 0x41, 0xd3, 0x75, 0x95,
0x33, 0x62, 0x90, 0x00, 0x20, 0x08, 0x06, 0xc6, 0x18, 0x38, 0x9e, 0xa7,
0x3c, 0x23, 0x06, 0x0f, 0x00, 0x82, 0x60, 0xd0, 0x88, 0x01, 0x83, 0x1c,
0x46, 0x91, 0x24, 0xdf, 0x07, 0x25, 0xa3, 0x09, 0x01, 0x30, 0x9a, 0x20,
0x04, 0xa3, 0x09, 0x83, 0x60, 0x03, 0x22, 0x1f, 0x1b, 0x10, 0xf9, 0xd8,
0x80, 0xc8, 0x67, 0xc4, 0x20, 0x01, 0x40, 0x10, 0x0c, 0x10, 0x35, 0xa8,
0xcc, 0xc0, 0x0c, 0xbe, 0x61, 0xc4, 0x20, 0x01, 0x40, 0x10, 0x0c, 0x10,
0x35, 0xa8, 0xcc, 0xc0, 0x0c, 0x22, 0x61, 0xc4, 0x20, 0x01, 0x40, 0x10,
0x0c, 0x10, 0x35, 0xa8, 0xcc, 0xc0, 0x0c, 0xbc, 0x60, 0xc4, 0x20, 0x01,
0x40, 0x10, 0x0c, 0x10, 0x35, 0xa8, 0xcc, 0xc0, 0x0c, 0x24, 0x04, 0x01,
0x71, 0x20, 0x00, 0x00, 0x18, 0x00, 0x00, 0x00, 0x46, 0xb0, 0x0d, 0x97,
0xef, 0x3c, 0xbe, 0x10, 0x50, 0x45, 0x41, 0x44, 0xa5, 0x03, 0x0c, 0x25,
0x61, 0x00, 0x02, 0xe6, 0x17, 0xb7, 0x6d, 0x05, 0xd2, 0x70, 0xf9, 0xce,
0xe3, 0x0b, 0x11, 0x01, 0x4c, 0x44, 0x08, 0x34, 0xc3, 0x42, 0x58, 0xc0,
0x34, 0x5c, 0xbe, 0xf3, 0xf8, 0x8b, 0x03, 0x0c, 0x62, 0xf3, 0x50, 0x93,
0x5f, 0xdc, 0xb6, 0x0d, 0x40, 0xc3, 0xe5, 0x3b, 0x8f, 0x2f, 0x01, 0xcc,
0xb3, 0x10, 0x7e, 0x71, 0xdb, 0x26, 0x50, 0x0d, 0x97, 0xef, 0x3c, 0xbe,
0x34, 0x39, 0x11, 0x81, 0x52, 0xd3, 0x43, 0x4d, 0x7e, 0x71, 0xdb, 0x06,
0x40, 0x30, 0x00, 0xd2, 0x00, 0x00, 0x00, 0x00, 0x61, 0x20, 0x00, 0x00,
0x44, 0x00, 0x00, 0x00, 0x13, 0x04, 0x41, 0x2c, 0x10, 0x00, 0x00, 0x00,
0x05, 0x00, 0x00, 0x00, 0x24, 0x47, 0x00, 0x88, 0xcc, 0x00, 0x94, 0x42,
0xc9, 0x15, 0x5e, 0xd9, 0x51, 0x29, 0x83, 0x12, 0xa0, 0x31, 0x03, 0x00,
0x23, 0x06, 0x09, 0x00, 0x82, 0x60, 0x30, 0x6d, 0x46, 0x94, 0x65, 0xc9,
0x88, 0x41, 0x02, 0x80, 0x20, 0x18, 0x4c, 0xdc, 0x41, 0x68, 0x9a, 0x32,
0x62, 0x90, 0x00, 0x20, 0x08, 0x06, 0x53, 0x87, 0x48, 0xdb, 0xb6, 0x8c,
0x18, 0x24, 0x00, 0x08, 0x82, 0x81, 0x21, 0x06, 0x57, 0xc7, 0x51, 0xcb,
0x88, 0x41, 0x02, 0x80, 0x20, 0x18, 0x18, 0x63, 0x80, 0x79, 0x9d, 0xc1,
0x8c, 0x18, 0x24, 0x00, 0x08, 0x82, 0x81, 0x41, 0x06, 0x99, 0xe7, 0x59,
0xcd, 0x88, 0x41, 0x02, 0x80, 0x20, 0x18, 0x18, 0x65, 0xa0, 0x7d, 0x1f,
0xe2, 0x8c, 0x18, 0x24, 0x00, 0x08, 0x82, 0x81, 0x61, 0x06, 0x1b, 0x18,
0x80, 0xc1, 0xf5, 0x8c, 0x18, 0x24, 0x00, 0x08, 0x82, 0x81, 0x71, 0x06,
0x5c, 0x18, 0x84, 0xc1, 0x02, 0x8d, 0x18, 0x3c, 0x00, 0x08, 0x82, 0x41,
0x63, 0x06, 0x4e, 0x82, 0x18, 0x85, 0xa2, 0x88, 0x81, 0x18, 0x44, 0xca,
0x68, 0x42, 0x00, 0x8c, 0x26, 0x08, 0xc1, 0x68, 0xc2, 0x20, 0x8c, 0x18,
0x1c, 0x00, 0x08, 0x82, 0x01, 0x94, 0x06, 0xd1, 0x62, 0x06, 0xa3, 0x09,
0x01, 0x60, 0x85, 0x22, 0x1f, 0x0b, 0x04, 0xf9, 0x98, 0xb1, 0xc8, 0xc7,
0x02, 0x42, 0x3e, 0x76, 0x30, 0xf2, 0xb1, 0xc0, 0x90, 0xcf, 0x88, 0x41,
0x02, 0x80, 0x20, 0x18, 0x20, 0x73, 0xc0, 0xb9, 0x81, 0x1b, 0x98, 0x41,
0x31, 0x62, 0x90, 0x00, 0x20, 0x08, 0x06, 0xc8, 0x1c, 0x70, 0x6e, 0xe0,
0x06, 0xd7, 0x30, 0x62, 0x90, 0x00, 0x20, 0x08, 0x06, 0xc8, 0x1c, 0x70,
0x6e, 0xe0, 0x06, 0x65, 0x10, 0x8c, 0x18, 0x24, 0x00, 0x08, 0x82, 0x01,
0x32, 0x07, 0x9c, 0x1b, 0xb8, 0x01, 0xd6, 0x20, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00
};
static const unsigned int texture_rgb_frag_dxil_len = 3844;
static const unsigned int texture_rgb_frag_dxil_len = 4192;

View File

@@ -1,3 +1,9 @@
cbuffer Constants : register(b0, space3)
{
float color_scale;
};
Texture2D u_texture : register(t0, space2);
SamplerState u_sampler : register(s0, space2);
@@ -10,8 +16,10 @@ struct PSOutput {
float4 o_color : SV_Target;
};
#include "common.frag.hlsli"
PSOutput main(PSInput input) {
PSOutput output;
output.o_color = float4(u_texture.Sample(u_sampler, input.v_uv).rgb, 1.0f) * input.v_color;
output.o_color = GetOutputColor(float4(u_texture.Sample(u_sampler, input.v_uv).rgb, 1.0f)) * input.v_color;
return output;
}

View File

@@ -5,44 +5,65 @@ static const unsigned char texture_rgb_frag_msl[] = {
0x6d, 0x64, 0x2f, 0x73, 0x69, 0x6d, 0x64, 0x2e, 0x68, 0x3e, 0x0a, 0x0a,
0x75, 0x73, 0x69, 0x6e, 0x67, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70,
0x61, 0x63, 0x65, 0x20, 0x6d, 0x65, 0x74, 0x61, 0x6c, 0x3b, 0x0a, 0x0a,
0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x20, 0x74, 0x79, 0x70, 0x65, 0x5f,
0x43, 0x6f, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x73, 0x0a, 0x7b, 0x0a,
0x20, 0x20, 0x20, 0x20, 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x20, 0x63, 0x6f,
0x6c, 0x6f, 0x72, 0x5f, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x3b, 0x0a, 0x7d,
0x3b, 0x0a, 0x0a, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x20,
0x66, 0x6c, 0x6f, 0x61, 0x74, 0x34, 0x20, 0x5f, 0x32, 0x38, 0x20, 0x3d,
0x20, 0x7b, 0x7d, 0x3b, 0x0a, 0x0a, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74,
0x20, 0x6d, 0x61, 0x69, 0x6e, 0x30, 0x5f, 0x6f, 0x75, 0x74, 0x0a, 0x7b,
0x0a, 0x20, 0x20, 0x20, 0x20, 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x34, 0x20,
0x6f, 0x75, 0x74, 0x5f, 0x76, 0x61, 0x72, 0x5f, 0x53, 0x56, 0x5f, 0x54,
0x61, 0x72, 0x67, 0x65, 0x74, 0x20, 0x5b, 0x5b, 0x63, 0x6f, 0x6c, 0x6f,
0x72, 0x28, 0x30, 0x29, 0x5d, 0x5d, 0x3b, 0x0a, 0x7d, 0x3b, 0x0a, 0x0a,
0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x20, 0x6d, 0x61, 0x69, 0x6e, 0x30,
0x5f, 0x6f, 0x75, 0x74, 0x0a, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x66,
0x6c, 0x6f, 0x61, 0x74, 0x34, 0x20, 0x6f, 0x75, 0x74, 0x5f, 0x76, 0x61,
0x72, 0x5f, 0x53, 0x56, 0x5f, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x20,
0x5b, 0x5b, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x28, 0x30, 0x29, 0x5d, 0x5d,
0x3b, 0x0a, 0x7d, 0x3b, 0x0a, 0x0a, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74,
0x20, 0x6d, 0x61, 0x69, 0x6e, 0x30, 0x5f, 0x69, 0x6e, 0x0a, 0x7b, 0x0a,
0x20, 0x20, 0x20, 0x20, 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x34, 0x20, 0x69,
0x6e, 0x5f, 0x76, 0x61, 0x72, 0x5f, 0x43, 0x4f, 0x4c, 0x4f, 0x52, 0x30,
0x20, 0x5b, 0x5b, 0x75, 0x73, 0x65, 0x72, 0x28, 0x6c, 0x6f, 0x63, 0x6e,
0x30, 0x29, 0x5d, 0x5d, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x66, 0x6c,
0x6f, 0x61, 0x74, 0x32, 0x20, 0x69, 0x6e, 0x5f, 0x76, 0x61, 0x72, 0x5f,
0x54, 0x45, 0x58, 0x43, 0x4f, 0x4f, 0x52, 0x44, 0x30, 0x20, 0x5b, 0x5b,
0x75, 0x73, 0x65, 0x72, 0x28, 0x6c, 0x6f, 0x63, 0x6e, 0x31, 0x29, 0x5d,
0x5d, 0x3b, 0x0a, 0x7d, 0x3b, 0x0a, 0x0a, 0x66, 0x72, 0x61, 0x67, 0x6d,
0x65, 0x6e, 0x74, 0x20, 0x6d, 0x61, 0x69, 0x6e, 0x30, 0x5f, 0x6f, 0x75,
0x74, 0x20, 0x6d, 0x61, 0x69, 0x6e, 0x30, 0x28, 0x6d, 0x61, 0x69, 0x6e,
0x30, 0x5f, 0x69, 0x6e, 0x20, 0x69, 0x6e, 0x20, 0x5b, 0x5b, 0x73, 0x74,
0x61, 0x67, 0x65, 0x5f, 0x69, 0x6e, 0x5d, 0x5d, 0x2c, 0x20, 0x74, 0x65,
0x78, 0x74, 0x75, 0x72, 0x65, 0x32, 0x64, 0x3c, 0x66, 0x6c, 0x6f, 0x61,
0x74, 0x3e, 0x20, 0x75, 0x5f, 0x74, 0x65, 0x78, 0x74, 0x75, 0x72, 0x65,
0x20, 0x5b, 0x5b, 0x74, 0x65, 0x78, 0x74, 0x75, 0x72, 0x65, 0x28, 0x30,
0x29, 0x5d, 0x5d, 0x2c, 0x20, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x72,
0x20, 0x75, 0x5f, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x72, 0x20, 0x5b,
0x5b, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x72, 0x28, 0x30, 0x29, 0x5d,
0x5d, 0x29, 0x0a, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x6d, 0x61, 0x69,
0x6e, 0x30, 0x5f, 0x6f, 0x75, 0x74, 0x20, 0x6f, 0x75, 0x74, 0x20, 0x3d,
0x20, 0x7b, 0x7d, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x6f, 0x75, 0x74,
0x2e, 0x6f, 0x75, 0x74, 0x5f, 0x76, 0x61, 0x72, 0x5f, 0x53, 0x56, 0x5f,
0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x20, 0x3d, 0x20, 0x66, 0x6c, 0x6f,
0x61, 0x74, 0x34, 0x28, 0x75, 0x5f, 0x74, 0x65, 0x78, 0x74, 0x75, 0x72,
0x65, 0x2e, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x28, 0x75, 0x5f, 0x73,
0x61, 0x6d, 0x70, 0x6c, 0x65, 0x72, 0x2c, 0x20, 0x69, 0x6e, 0x2e, 0x69,
0x5f, 0x69, 0x6e, 0x0a, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x66, 0x6c,
0x6f, 0x61, 0x74, 0x34, 0x20, 0x69, 0x6e, 0x5f, 0x76, 0x61, 0x72, 0x5f,
0x43, 0x4f, 0x4c, 0x4f, 0x52, 0x30, 0x20, 0x5b, 0x5b, 0x75, 0x73, 0x65,
0x72, 0x28, 0x6c, 0x6f, 0x63, 0x6e, 0x30, 0x29, 0x5d, 0x5d, 0x3b, 0x0a,
0x20, 0x20, 0x20, 0x20, 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x32, 0x20, 0x69,
0x6e, 0x5f, 0x76, 0x61, 0x72, 0x5f, 0x54, 0x45, 0x58, 0x43, 0x4f, 0x4f,
0x52, 0x44, 0x30, 0x29, 0x2e, 0x78, 0x79, 0x7a, 0x2c, 0x20, 0x31, 0x2e,
0x30, 0x29, 0x20, 0x2a, 0x20, 0x69, 0x6e, 0x2e, 0x69, 0x6e, 0x5f, 0x76,
0x61, 0x72, 0x5f, 0x43, 0x4f, 0x4c, 0x4f, 0x52, 0x30, 0x3b, 0x0a, 0x20,
0x20, 0x20, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x6f, 0x75,
0x74, 0x3b, 0x0a, 0x7d, 0x0a, 0x0a
0x52, 0x44, 0x30, 0x20, 0x5b, 0x5b, 0x75, 0x73, 0x65, 0x72, 0x28, 0x6c,
0x6f, 0x63, 0x6e, 0x31, 0x29, 0x5d, 0x5d, 0x3b, 0x0a, 0x7d, 0x3b, 0x0a,
0x0a, 0x66, 0x72, 0x61, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6d, 0x61,
0x69, 0x6e, 0x30, 0x5f, 0x6f, 0x75, 0x74, 0x20, 0x6d, 0x61, 0x69, 0x6e,
0x30, 0x28, 0x6d, 0x61, 0x69, 0x6e, 0x30, 0x5f, 0x69, 0x6e, 0x20, 0x69,
0x6e, 0x20, 0x5b, 0x5b, 0x73, 0x74, 0x61, 0x67, 0x65, 0x5f, 0x69, 0x6e,
0x5d, 0x5d, 0x2c, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x74,
0x20, 0x74, 0x79, 0x70, 0x65, 0x5f, 0x43, 0x6f, 0x6e, 0x73, 0x74, 0x61,
0x6e, 0x74, 0x73, 0x26, 0x20, 0x43, 0x6f, 0x6e, 0x73, 0x74, 0x61, 0x6e,
0x74, 0x73, 0x20, 0x5b, 0x5b, 0x62, 0x75, 0x66, 0x66, 0x65, 0x72, 0x28,
0x30, 0x29, 0x5d, 0x5d, 0x2c, 0x20, 0x74, 0x65, 0x78, 0x74, 0x75, 0x72,
0x65, 0x32, 0x64, 0x3c, 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x3e, 0x20, 0x75,
0x5f, 0x74, 0x65, 0x78, 0x74, 0x75, 0x72, 0x65, 0x20, 0x5b, 0x5b, 0x74,
0x65, 0x78, 0x74, 0x75, 0x72, 0x65, 0x28, 0x30, 0x29, 0x5d, 0x5d, 0x2c,
0x20, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x72, 0x20, 0x75, 0x5f, 0x73,
0x61, 0x6d, 0x70, 0x6c, 0x65, 0x72, 0x20, 0x5b, 0x5b, 0x73, 0x61, 0x6d,
0x70, 0x6c, 0x65, 0x72, 0x28, 0x30, 0x29, 0x5d, 0x5d, 0x29, 0x0a, 0x7b,
0x0a, 0x20, 0x20, 0x20, 0x20, 0x6d, 0x61, 0x69, 0x6e, 0x30, 0x5f, 0x6f,
0x75, 0x74, 0x20, 0x6f, 0x75, 0x74, 0x20, 0x3d, 0x20, 0x7b, 0x7d, 0x3b,
0x0a, 0x20, 0x20, 0x20, 0x20, 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x33, 0x20,
0x5f, 0x34, 0x33, 0x20, 0x3d, 0x20, 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x34,
0x28, 0x75, 0x5f, 0x74, 0x65, 0x78, 0x74, 0x75, 0x72, 0x65, 0x2e, 0x73,
0x61, 0x6d, 0x70, 0x6c, 0x65, 0x28, 0x75, 0x5f, 0x73, 0x61, 0x6d, 0x70,
0x6c, 0x65, 0x72, 0x2c, 0x20, 0x69, 0x6e, 0x2e, 0x69, 0x6e, 0x5f, 0x76,
0x61, 0x72, 0x5f, 0x54, 0x45, 0x58, 0x43, 0x4f, 0x4f, 0x52, 0x44, 0x30,
0x29, 0x2e, 0x78, 0x79, 0x7a, 0x2c, 0x20, 0x31, 0x2e, 0x30, 0x29, 0x2e,
0x78, 0x79, 0x7a, 0x20, 0x2a, 0x20, 0x43, 0x6f, 0x6e, 0x73, 0x74, 0x61,
0x6e, 0x74, 0x73, 0x2e, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x5f, 0x73, 0x63,
0x61, 0x6c, 0x65, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x66, 0x6c, 0x6f,
0x61, 0x74, 0x34, 0x20, 0x5f, 0x34, 0x34, 0x20, 0x3d, 0x20, 0x66, 0x6c,
0x6f, 0x61, 0x74, 0x34, 0x28, 0x5f, 0x34, 0x33, 0x2e, 0x78, 0x2c, 0x20,
0x5f, 0x34, 0x33, 0x2e, 0x79, 0x2c, 0x20, 0x5f, 0x34, 0x33, 0x2e, 0x7a,
0x2c, 0x20, 0x5f, 0x32, 0x38, 0x2e, 0x77, 0x29, 0x3b, 0x0a, 0x20, 0x20,
0x20, 0x20, 0x5f, 0x34, 0x34, 0x2e, 0x77, 0x20, 0x3d, 0x20, 0x31, 0x2e,
0x30, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x6f, 0x75, 0x74, 0x2e, 0x6f,
0x75, 0x74, 0x5f, 0x76, 0x61, 0x72, 0x5f, 0x53, 0x56, 0x5f, 0x54, 0x61,
0x72, 0x67, 0x65, 0x74, 0x20, 0x3d, 0x20, 0x5f, 0x34, 0x34, 0x20, 0x2a,
0x20, 0x69, 0x6e, 0x2e, 0x69, 0x6e, 0x5f, 0x76, 0x61, 0x72, 0x5f, 0x43,
0x4f, 0x4c, 0x4f, 0x52, 0x30, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x72,
0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x6f, 0x75, 0x74, 0x3b, 0x0a, 0x7d,
0x0a, 0x0a
};
static const unsigned int texture_rgb_frag_msl_len = 534;
static const unsigned int texture_rgb_frag_msl_len = 782;

View File

@@ -1,6 +1,6 @@
static const unsigned char texture_rgb_frag_spv[] = {
0x03, 0x02, 0x23, 0x07, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x0e, 0x00,
0x21, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x11, 0x00, 0x02, 0x00,
0x2f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x11, 0x00, 0x02, 0x00,
0x01, 0x00, 0x00, 0x00, 0x0e, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
0x01, 0x00, 0x00, 0x00, 0x0f, 0x00, 0x08, 0x00, 0x04, 0x00, 0x00, 0x00,
0x01, 0x00, 0x00, 0x00, 0x6d, 0x61, 0x69, 0x6e, 0x00, 0x00, 0x00, 0x00,
@@ -8,78 +8,111 @@ static const unsigned char texture_rgb_frag_spv[] = {
0x10, 0x00, 0x03, 0x00, 0x01, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00,
0x03, 0x00, 0x03, 0x00, 0x05, 0x00, 0x00, 0x00, 0x58, 0x02, 0x00, 0x00,
0x05, 0x00, 0x06, 0x00, 0x05, 0x00, 0x00, 0x00, 0x74, 0x79, 0x70, 0x65,
0x2e, 0x32, 0x64, 0x2e, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x00, 0x00, 0x00,
0x05, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x75, 0x5f, 0x74, 0x65,
0x78, 0x74, 0x75, 0x72, 0x65, 0x00, 0x00, 0x00, 0x05, 0x00, 0x06, 0x00,
0x07, 0x00, 0x00, 0x00, 0x74, 0x79, 0x70, 0x65, 0x2e, 0x73, 0x61, 0x6d,
0x70, 0x6c, 0x65, 0x72, 0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x05, 0x00,
0x08, 0x00, 0x00, 0x00, 0x75, 0x5f, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65,
0x72, 0x00, 0x00, 0x00, 0x05, 0x00, 0x06, 0x00, 0x02, 0x00, 0x00, 0x00,
0x69, 0x6e, 0x2e, 0x76, 0x61, 0x72, 0x2e, 0x43, 0x4f, 0x4c, 0x4f, 0x52,
0x30, 0x00, 0x00, 0x00, 0x05, 0x00, 0x07, 0x00, 0x03, 0x00, 0x00, 0x00,
0x69, 0x6e, 0x2e, 0x76, 0x61, 0x72, 0x2e, 0x54, 0x45, 0x58, 0x43, 0x4f,
0x4f, 0x52, 0x44, 0x30, 0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x07, 0x00,
0x04, 0x00, 0x00, 0x00, 0x6f, 0x75, 0x74, 0x2e, 0x76, 0x61, 0x72, 0x2e,
0x53, 0x56, 0x5f, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x00, 0x00, 0x00,
0x05, 0x00, 0x04, 0x00, 0x01, 0x00, 0x00, 0x00, 0x6d, 0x61, 0x69, 0x6e,
0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x07, 0x00, 0x09, 0x00, 0x00, 0x00,
0x74, 0x79, 0x70, 0x65, 0x2e, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x64,
0x2e, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x00, 0x00, 0x47, 0x00, 0x04, 0x00,
0x02, 0x00, 0x00, 0x00, 0x1e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x47, 0x00, 0x04, 0x00, 0x03, 0x00, 0x00, 0x00, 0x1e, 0x00, 0x00, 0x00,
0x01, 0x00, 0x00, 0x00, 0x47, 0x00, 0x04, 0x00, 0x04, 0x00, 0x00, 0x00,
0x2e, 0x43, 0x6f, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x73, 0x00, 0x00,
0x06, 0x00, 0x06, 0x00, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x5f, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x00,
0x05, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x43, 0x6f, 0x6e, 0x73,
0x74, 0x61, 0x6e, 0x74, 0x73, 0x00, 0x00, 0x00, 0x05, 0x00, 0x06, 0x00,
0x07, 0x00, 0x00, 0x00, 0x74, 0x79, 0x70, 0x65, 0x2e, 0x32, 0x64, 0x2e,
0x69, 0x6d, 0x61, 0x67, 0x65, 0x00, 0x00, 0x00, 0x05, 0x00, 0x05, 0x00,
0x08, 0x00, 0x00, 0x00, 0x75, 0x5f, 0x74, 0x65, 0x78, 0x74, 0x75, 0x72,
0x65, 0x00, 0x00, 0x00, 0x05, 0x00, 0x06, 0x00, 0x09, 0x00, 0x00, 0x00,
0x74, 0x79, 0x70, 0x65, 0x2e, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x72,
0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x05, 0x00, 0x0a, 0x00, 0x00, 0x00,
0x75, 0x5f, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x72, 0x00, 0x00, 0x00,
0x05, 0x00, 0x06, 0x00, 0x02, 0x00, 0x00, 0x00, 0x69, 0x6e, 0x2e, 0x76,
0x61, 0x72, 0x2e, 0x43, 0x4f, 0x4c, 0x4f, 0x52, 0x30, 0x00, 0x00, 0x00,
0x05, 0x00, 0x07, 0x00, 0x03, 0x00, 0x00, 0x00, 0x69, 0x6e, 0x2e, 0x76,
0x61, 0x72, 0x2e, 0x54, 0x45, 0x58, 0x43, 0x4f, 0x4f, 0x52, 0x44, 0x30,
0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x07, 0x00, 0x04, 0x00, 0x00, 0x00,
0x6f, 0x75, 0x74, 0x2e, 0x76, 0x61, 0x72, 0x2e, 0x53, 0x56, 0x5f, 0x54,
0x61, 0x72, 0x67, 0x65, 0x74, 0x00, 0x00, 0x00, 0x05, 0x00, 0x04, 0x00,
0x01, 0x00, 0x00, 0x00, 0x6d, 0x61, 0x69, 0x6e, 0x00, 0x00, 0x00, 0x00,
0x05, 0x00, 0x07, 0x00, 0x0b, 0x00, 0x00, 0x00, 0x74, 0x79, 0x70, 0x65,
0x2e, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x64, 0x2e, 0x69, 0x6d, 0x61,
0x67, 0x65, 0x00, 0x00, 0x47, 0x00, 0x04, 0x00, 0x02, 0x00, 0x00, 0x00,
0x1e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x47, 0x00, 0x04, 0x00,
0x06, 0x00, 0x00, 0x00, 0x22, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00,
0x47, 0x00, 0x04, 0x00, 0x06, 0x00, 0x00, 0x00, 0x21, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x47, 0x00, 0x04, 0x00, 0x08, 0x00, 0x00, 0x00,
0x22, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x47, 0x00, 0x04, 0x00,
0x08, 0x00, 0x00, 0x00, 0x21, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x16, 0x00, 0x03, 0x00, 0x0a, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00,
0x2b, 0x00, 0x04, 0x00, 0x0a, 0x00, 0x00, 0x00, 0x0b, 0x00, 0x00, 0x00,
0x00, 0x00, 0x80, 0x3f, 0x19, 0x00, 0x09, 0x00, 0x05, 0x00, 0x00, 0x00,
0x0a, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00,
0x03, 0x00, 0x00, 0x00, 0x1e, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
0x47, 0x00, 0x04, 0x00, 0x04, 0x00, 0x00, 0x00, 0x1e, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x47, 0x00, 0x04, 0x00, 0x06, 0x00, 0x00, 0x00,
0x22, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x47, 0x00, 0x04, 0x00,
0x06, 0x00, 0x00, 0x00, 0x21, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x47, 0x00, 0x04, 0x00, 0x08, 0x00, 0x00, 0x00, 0x22, 0x00, 0x00, 0x00,
0x02, 0x00, 0x00, 0x00, 0x47, 0x00, 0x04, 0x00, 0x08, 0x00, 0x00, 0x00,
0x21, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x47, 0x00, 0x04, 0x00,
0x0a, 0x00, 0x00, 0x00, 0x22, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00,
0x47, 0x00, 0x04, 0x00, 0x0a, 0x00, 0x00, 0x00, 0x21, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x48, 0x00, 0x05, 0x00, 0x05, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x23, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x47, 0x00, 0x03, 0x00, 0x05, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00,
0x15, 0x00, 0x04, 0x00, 0x0c, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00,
0x01, 0x00, 0x00, 0x00, 0x16, 0x00, 0x03, 0x00, 0x0d, 0x00, 0x00, 0x00,
0x20, 0x00, 0x00, 0x00, 0x2b, 0x00, 0x04, 0x00, 0x0d, 0x00, 0x00, 0x00,
0x0e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x3f, 0x2b, 0x00, 0x04, 0x00,
0x0c, 0x00, 0x00, 0x00, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x1e, 0x00, 0x03, 0x00, 0x05, 0x00, 0x00, 0x00, 0x0d, 0x00, 0x00, 0x00,
0x20, 0x00, 0x04, 0x00, 0x10, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00,
0x05, 0x00, 0x00, 0x00, 0x19, 0x00, 0x09, 0x00, 0x07, 0x00, 0x00, 0x00,
0x0d, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x04, 0x00, 0x0c, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x1a, 0x00, 0x02, 0x00,
0x07, 0x00, 0x00, 0x00, 0x20, 0x00, 0x04, 0x00, 0x0d, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00, 0x17, 0x00, 0x04, 0x00,
0x0e, 0x00, 0x00, 0x00, 0x0a, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00,
0x20, 0x00, 0x04, 0x00, 0x0f, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
0x0e, 0x00, 0x00, 0x00, 0x17, 0x00, 0x04, 0x00, 0x10, 0x00, 0x00, 0x00,
0x0a, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x20, 0x00, 0x04, 0x00,
0x11, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00,
0x20, 0x00, 0x04, 0x00, 0x12, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00,
0x0e, 0x00, 0x00, 0x00, 0x13, 0x00, 0x02, 0x00, 0x13, 0x00, 0x00, 0x00,
0x21, 0x00, 0x03, 0x00, 0x14, 0x00, 0x00, 0x00, 0x13, 0x00, 0x00, 0x00,
0x1b, 0x00, 0x03, 0x00, 0x09, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00,
0x3b, 0x00, 0x04, 0x00, 0x0c, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x3b, 0x00, 0x04, 0x00, 0x0d, 0x00, 0x00, 0x00,
0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3b, 0x00, 0x04, 0x00,
0x0f, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
0x3b, 0x00, 0x04, 0x00, 0x11, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00,
0x01, 0x00, 0x00, 0x00, 0x3b, 0x00, 0x04, 0x00, 0x12, 0x00, 0x00, 0x00,
0x04, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x36, 0x00, 0x05, 0x00,
0x13, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x14, 0x00, 0x00, 0x00, 0xf8, 0x00, 0x02, 0x00, 0x15, 0x00, 0x00, 0x00,
0x3d, 0x00, 0x04, 0x00, 0x0e, 0x00, 0x00, 0x00, 0x16, 0x00, 0x00, 0x00,
0x02, 0x00, 0x00, 0x00, 0x3d, 0x00, 0x04, 0x00, 0x10, 0x00, 0x00, 0x00,
0x17, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x3d, 0x00, 0x04, 0x00,
0x05, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00,
0x3d, 0x00, 0x04, 0x00, 0x07, 0x00, 0x00, 0x00, 0x19, 0x00, 0x00, 0x00,
0x08, 0x00, 0x00, 0x00, 0x56, 0x00, 0x05, 0x00, 0x09, 0x00, 0x00, 0x00,
0x1a, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x00, 0x19, 0x00, 0x00, 0x00,
0x57, 0x00, 0x06, 0x00, 0x0e, 0x00, 0x00, 0x00, 0x1b, 0x00, 0x00, 0x00,
0x1a, 0x00, 0x00, 0x00, 0x17, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x51, 0x00, 0x05, 0x00, 0x0a, 0x00, 0x00, 0x00, 0x1c, 0x00, 0x00, 0x00,
0x1b, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x51, 0x00, 0x05, 0x00,
0x0a, 0x00, 0x00, 0x00, 0x1d, 0x00, 0x00, 0x00, 0x1b, 0x00, 0x00, 0x00,
0x01, 0x00, 0x00, 0x00, 0x51, 0x00, 0x05, 0x00, 0x0a, 0x00, 0x00, 0x00,
0x1e, 0x00, 0x00, 0x00, 0x1b, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00,
0x50, 0x00, 0x07, 0x00, 0x0e, 0x00, 0x00, 0x00, 0x1f, 0x00, 0x00, 0x00,
0x1c, 0x00, 0x00, 0x00, 0x1d, 0x00, 0x00, 0x00, 0x1e, 0x00, 0x00, 0x00,
0x0b, 0x00, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00, 0x0e, 0x00, 0x00, 0x00,
0x20, 0x00, 0x00, 0x00, 0x1f, 0x00, 0x00, 0x00, 0x16, 0x00, 0x00, 0x00,
0x3e, 0x00, 0x03, 0x00, 0x04, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00,
0xfd, 0x00, 0x01, 0x00, 0x38, 0x00, 0x01, 0x00
0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x04, 0x00, 0x11, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00, 0x1a, 0x00, 0x02, 0x00,
0x09, 0x00, 0x00, 0x00, 0x20, 0x00, 0x04, 0x00, 0x12, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x09, 0x00, 0x00, 0x00, 0x17, 0x00, 0x04, 0x00,
0x13, 0x00, 0x00, 0x00, 0x0d, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00,
0x20, 0x00, 0x04, 0x00, 0x14, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
0x13, 0x00, 0x00, 0x00, 0x17, 0x00, 0x04, 0x00, 0x15, 0x00, 0x00, 0x00,
0x0d, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x20, 0x00, 0x04, 0x00,
0x16, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x15, 0x00, 0x00, 0x00,
0x20, 0x00, 0x04, 0x00, 0x17, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00,
0x13, 0x00, 0x00, 0x00, 0x13, 0x00, 0x02, 0x00, 0x18, 0x00, 0x00, 0x00,
0x21, 0x00, 0x03, 0x00, 0x19, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x00,
0x1b, 0x00, 0x03, 0x00, 0x0b, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00,
0x17, 0x00, 0x04, 0x00, 0x1a, 0x00, 0x00, 0x00, 0x0d, 0x00, 0x00, 0x00,
0x03, 0x00, 0x00, 0x00, 0x20, 0x00, 0x04, 0x00, 0x1b, 0x00, 0x00, 0x00,
0x02, 0x00, 0x00, 0x00, 0x0d, 0x00, 0x00, 0x00, 0x3b, 0x00, 0x04, 0x00,
0x10, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00,
0x3b, 0x00, 0x04, 0x00, 0x11, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x3b, 0x00, 0x04, 0x00, 0x12, 0x00, 0x00, 0x00,
0x0a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3b, 0x00, 0x04, 0x00,
0x14, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
0x3b, 0x00, 0x04, 0x00, 0x16, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00,
0x01, 0x00, 0x00, 0x00, 0x3b, 0x00, 0x04, 0x00, 0x17, 0x00, 0x00, 0x00,
0x04, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x01, 0x00, 0x03, 0x00,
0x13, 0x00, 0x00, 0x00, 0x1c, 0x00, 0x00, 0x00, 0x36, 0x00, 0x05, 0x00,
0x18, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x19, 0x00, 0x00, 0x00, 0xf8, 0x00, 0x02, 0x00, 0x1d, 0x00, 0x00, 0x00,
0x3d, 0x00, 0x04, 0x00, 0x13, 0x00, 0x00, 0x00, 0x1e, 0x00, 0x00, 0x00,
0x02, 0x00, 0x00, 0x00, 0x3d, 0x00, 0x04, 0x00, 0x15, 0x00, 0x00, 0x00,
0x1f, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x3d, 0x00, 0x04, 0x00,
0x07, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00,
0x3d, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x21, 0x00, 0x00, 0x00,
0x0a, 0x00, 0x00, 0x00, 0x56, 0x00, 0x05, 0x00, 0x0b, 0x00, 0x00, 0x00,
0x22, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x21, 0x00, 0x00, 0x00,
0x57, 0x00, 0x06, 0x00, 0x13, 0x00, 0x00, 0x00, 0x23, 0x00, 0x00, 0x00,
0x22, 0x00, 0x00, 0x00, 0x1f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x51, 0x00, 0x05, 0x00, 0x0d, 0x00, 0x00, 0x00, 0x24, 0x00, 0x00, 0x00,
0x23, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x51, 0x00, 0x05, 0x00,
0x0d, 0x00, 0x00, 0x00, 0x25, 0x00, 0x00, 0x00, 0x23, 0x00, 0x00, 0x00,
0x01, 0x00, 0x00, 0x00, 0x51, 0x00, 0x05, 0x00, 0x0d, 0x00, 0x00, 0x00,
0x26, 0x00, 0x00, 0x00, 0x23, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00,
0x50, 0x00, 0x07, 0x00, 0x13, 0x00, 0x00, 0x00, 0x27, 0x00, 0x00, 0x00,
0x24, 0x00, 0x00, 0x00, 0x25, 0x00, 0x00, 0x00, 0x26, 0x00, 0x00, 0x00,
0x0e, 0x00, 0x00, 0x00, 0x4f, 0x00, 0x08, 0x00, 0x1a, 0x00, 0x00, 0x00,
0x28, 0x00, 0x00, 0x00, 0x27, 0x00, 0x00, 0x00, 0x27, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00,
0x41, 0x00, 0x05, 0x00, 0x1b, 0x00, 0x00, 0x00, 0x29, 0x00, 0x00, 0x00,
0x06, 0x00, 0x00, 0x00, 0x0f, 0x00, 0x00, 0x00, 0x3d, 0x00, 0x04, 0x00,
0x0d, 0x00, 0x00, 0x00, 0x2a, 0x00, 0x00, 0x00, 0x29, 0x00, 0x00, 0x00,
0x8e, 0x00, 0x05, 0x00, 0x1a, 0x00, 0x00, 0x00, 0x2b, 0x00, 0x00, 0x00,
0x28, 0x00, 0x00, 0x00, 0x2a, 0x00, 0x00, 0x00, 0x4f, 0x00, 0x09, 0x00,
0x13, 0x00, 0x00, 0x00, 0x2c, 0x00, 0x00, 0x00, 0x1c, 0x00, 0x00, 0x00,
0x2b, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00,
0x06, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x52, 0x00, 0x06, 0x00,
0x13, 0x00, 0x00, 0x00, 0x2d, 0x00, 0x00, 0x00, 0x0e, 0x00, 0x00, 0x00,
0x2c, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00,
0x13, 0x00, 0x00, 0x00, 0x2e, 0x00, 0x00, 0x00, 0x2d, 0x00, 0x00, 0x00,
0x1e, 0x00, 0x00, 0x00, 0x3e, 0x00, 0x03, 0x00, 0x04, 0x00, 0x00, 0x00,
0x2e, 0x00, 0x00, 0x00, 0xfd, 0x00, 0x01, 0x00, 0x38, 0x00, 0x01, 0x00
};
static const unsigned int texture_rgb_frag_spv_len = 980;
static const unsigned int texture_rgb_frag_spv_len = 1380;

View File

@@ -1,401 +0,0 @@
static const unsigned char texture_rgb_pixelart_frag_dxil[] = {
0x44, 0x58, 0x42, 0x43, 0xd3, 0x3a, 0xee, 0x83, 0x73, 0x42, 0x41, 0x69,
0x2e, 0xcf, 0xf1, 0xea, 0x25, 0x30, 0xca, 0x66, 0x01, 0x00, 0x00, 0x00,
0xa4, 0x12, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x00, 0x00,
0x4c, 0x00, 0x00, 0x00, 0xa8, 0x00, 0x00, 0x00, 0xe4, 0x00, 0x00, 0x00,
0xf0, 0x01, 0x00, 0x00, 0x54, 0x09, 0x00, 0x00, 0x70, 0x09, 0x00, 0x00,
0x53, 0x46, 0x49, 0x30, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x49, 0x53, 0x47, 0x31, 0x54, 0x00, 0x00, 0x00,
0x02, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x48, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0f, 0x0f, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x48, 0x00, 0x00, 0x00,
0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00,
0x01, 0x00, 0x00, 0x00, 0x03, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x54, 0x45, 0x58, 0x43, 0x4f, 0x4f, 0x52, 0x44, 0x00, 0x00, 0x00, 0x00,
0x4f, 0x53, 0x47, 0x31, 0x34, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x28, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x53, 0x56, 0x5f, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x00, 0x00, 0x00,
0x50, 0x53, 0x56, 0x30, 0x04, 0x01, 0x00, 0x00, 0x34, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff,
0x00, 0x00, 0x00, 0x00, 0x02, 0x01, 0x00, 0x02, 0x01, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x13, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x00,
0x02, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x0d, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x01, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x0e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x03, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x18, 0x00, 0x00, 0x00, 0x00, 0x54, 0x45, 0x58, 0x43, 0x4f, 0x4f, 0x52,
0x44, 0x00, 0x54, 0x45, 0x58, 0x43, 0x4f, 0x4f, 0x52, 0x44, 0x00, 0x6d,
0x61, 0x69, 0x6e, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x01, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x44, 0x00, 0x03, 0x02, 0x00, 0x00,
0x0a, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x01, 0x01, 0x42, 0x00,
0x03, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x01, 0x00, 0x44, 0x10, 0x03, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
0x02, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00,
0x07, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x53, 0x54, 0x41, 0x54, 0x5c, 0x07, 0x00, 0x00,
0x60, 0x00, 0x00, 0x00, 0xd7, 0x01, 0x00, 0x00, 0x44, 0x58, 0x49, 0x4c,
0x00, 0x01, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x44, 0x07, 0x00, 0x00,
0x42, 0x43, 0xc0, 0xde, 0x21, 0x0c, 0x00, 0x00, 0xce, 0x01, 0x00, 0x00,
0x0b, 0x82, 0x20, 0x00, 0x02, 0x00, 0x00, 0x00, 0x13, 0x00, 0x00, 0x00,
0x07, 0x81, 0x23, 0x91, 0x41, 0xc8, 0x04, 0x49, 0x06, 0x10, 0x32, 0x39,
0x92, 0x01, 0x84, 0x0c, 0x25, 0x05, 0x08, 0x19, 0x1e, 0x04, 0x8b, 0x62,
0x80, 0x18, 0x45, 0x02, 0x42, 0x92, 0x0b, 0x42, 0xc4, 0x10, 0x32, 0x14,
0x38, 0x08, 0x18, 0x4b, 0x0a, 0x32, 0x62, 0x88, 0x48, 0x90, 0x14, 0x20,
0x43, 0x46, 0x88, 0xa5, 0x00, 0x19, 0x32, 0x42, 0xe4, 0x48, 0x0e, 0x90,
0x11, 0x23, 0xc4, 0x50, 0x41, 0x51, 0x81, 0x8c, 0xe1, 0x83, 0xe5, 0x8a,
0x04, 0x31, 0x46, 0x06, 0x51, 0x18, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00,
0x1b, 0x8c, 0xe0, 0xff, 0xff, 0xff, 0xff, 0x07, 0x40, 0x02, 0xa8, 0x0d,
0x84, 0xf0, 0xff, 0xff, 0xff, 0xff, 0x03, 0x20, 0x6d, 0x30, 0x86, 0xff,
0xff, 0xff, 0xff, 0x1f, 0x00, 0x09, 0xa8, 0x00, 0x49, 0x18, 0x00, 0x00,
0x03, 0x00, 0x00, 0x00, 0x13, 0x82, 0x60, 0x42, 0x20, 0x4c, 0x08, 0x06,
0x00, 0x00, 0x00, 0x00, 0x89, 0x20, 0x00, 0x00, 0x53, 0x00, 0x00, 0x00,
0x32, 0x22, 0x88, 0x09, 0x20, 0x64, 0x85, 0x04, 0x13, 0x23, 0xa4, 0x84,
0x04, 0x13, 0x23, 0xe3, 0x84, 0xa1, 0x90, 0x14, 0x12, 0x4c, 0x8c, 0x8c,
0x0b, 0x84, 0xc4, 0x4c, 0x10, 0x8c, 0xc1, 0x08, 0x40, 0x09, 0x00, 0x0a,
0x66, 0x00, 0xe6, 0x08, 0xc0, 0x60, 0x8e, 0x00, 0x29, 0xc6, 0x40, 0x10,
0x44, 0x41, 0x90, 0x51, 0x0c, 0x80, 0x20, 0x88, 0x62, 0x20, 0xa4, 0x0c,
0x03, 0x31, 0x90, 0x52, 0x88, 0x81, 0x18, 0x06, 0x62, 0x6e, 0x1a, 0x2e,
0x7f, 0xc2, 0x1e, 0x42, 0xf2, 0x57, 0x42, 0x5a, 0x89, 0xc9, 0x2f, 0x6e,
0x1b, 0x15, 0xc3, 0x30, 0x0c, 0x04, 0x15, 0xf7, 0x0c, 0x97, 0x3f, 0x61,
0x0f, 0x21, 0xf9, 0x21, 0xd0, 0x0c, 0x0b, 0x81, 0x82, 0xa7, 0x48, 0x0e,
0x01, 0x41, 0xc3, 0x30, 0x0c, 0x04, 0x41, 0x0c, 0xc3, 0x30, 0x0c, 0xc3,
0x40, 0xd1, 0x51, 0xc3, 0xe5, 0x4f, 0xd8, 0x43, 0x48, 0x3e, 0xb7, 0x51,
0xc5, 0x4a, 0x4c, 0x7e, 0x71, 0xdb, 0x88, 0x18, 0x86, 0x61, 0x28, 0xc4,
0x44, 0x40, 0x04, 0x51, 0x73, 0x04, 0x41, 0x31, 0x20, 0xa2, 0x20, 0x08,
0x8b, 0xae, 0x81, 0x80, 0x61, 0x04, 0x62, 0x98, 0xa9, 0x0d, 0xc6, 0x81,
0x1d, 0xc2, 0x61, 0x1e, 0xe6, 0xc1, 0x0d, 0x68, 0xa1, 0x1c, 0xf0, 0x81,
0x1e, 0xea, 0x41, 0x1e, 0xca, 0x41, 0x0e, 0x48, 0x81, 0x0f, 0xec, 0xa1,
0x1c, 0xc6, 0x81, 0x1e, 0xde, 0x41, 0x1e, 0xf8, 0xc0, 0x1c, 0xd8, 0xe1,
0x1d, 0xc2, 0x81, 0x1e, 0xd8, 0x00, 0x0c, 0xe8, 0xc0, 0x0f, 0xc0, 0xc0,
0x0f, 0xf4, 0x40, 0x0f, 0xda, 0x21, 0x1d, 0xe0, 0x61, 0x1e, 0x7e, 0x81,
0x1e, 0xf2, 0x01, 0x1e, 0xca, 0x01, 0x05, 0xc4, 0x4c, 0x62, 0x30, 0x0e,
0xec, 0x10, 0x0e, 0xf3, 0x30, 0x0f, 0x6e, 0x40, 0x0b, 0xe5, 0x80, 0x0f,
0xf4, 0x50, 0x0f, 0xf2, 0x50, 0x0e, 0x72, 0x40, 0x0a, 0x7c, 0x60, 0x0f,
0xe5, 0x30, 0x0e, 0xf4, 0xf0, 0x0e, 0xf2, 0xc0, 0x07, 0xe6, 0xc0, 0x0e,
0xef, 0x10, 0x0e, 0xf4, 0xc0, 0x06, 0x60, 0x40, 0x07, 0x7e, 0x00, 0x06,
0x7e, 0x80, 0x04, 0x6d, 0x23, 0xee, 0x98, 0x09, 0x7b, 0x88, 0x9f, 0x73,
0x9a, 0x89, 0xb8, 0x26, 0x14, 0x68, 0xe4, 0xdd, 0x24, 0x4d, 0x11, 0x25,
0x4c, 0x3e, 0x0b, 0x30, 0xcf, 0x42, 0x44, 0xec, 0x04, 0x4c, 0x04, 0x0a,
0x08, 0x02, 0x13, 0x81, 0x00, 0x00, 0x00, 0x00, 0x13, 0x14, 0x72, 0xc0,
0x87, 0x74, 0x60, 0x87, 0x36, 0x68, 0x87, 0x79, 0x68, 0x03, 0x72, 0xc0,
0x87, 0x0d, 0xaf, 0x50, 0x0e, 0x6d, 0xd0, 0x0e, 0x7a, 0x50, 0x0e, 0x6d,
0x00, 0x0f, 0x7a, 0x30, 0x07, 0x72, 0xa0, 0x07, 0x73, 0x20, 0x07, 0x6d,
0x90, 0x0e, 0x71, 0xa0, 0x07, 0x73, 0x20, 0x07, 0x6d, 0x90, 0x0e, 0x78,
0xa0, 0x07, 0x73, 0x20, 0x07, 0x6d, 0x90, 0x0e, 0x71, 0x60, 0x07, 0x7a,
0x30, 0x07, 0x72, 0xd0, 0x06, 0xe9, 0x30, 0x07, 0x72, 0xa0, 0x07, 0x73,
0x20, 0x07, 0x6d, 0x90, 0x0e, 0x76, 0x40, 0x07, 0x7a, 0x60, 0x07, 0x74,
0xd0, 0x06, 0xe6, 0x10, 0x07, 0x76, 0xa0, 0x07, 0x73, 0x20, 0x07, 0x6d,
0x60, 0x0e, 0x73, 0x20, 0x07, 0x7a, 0x30, 0x07, 0x72, 0xd0, 0x06, 0xe6,
0x60, 0x07, 0x74, 0xa0, 0x07, 0x76, 0x40, 0x07, 0x6d, 0xe0, 0x0e, 0x78,
0xa0, 0x07, 0x71, 0x60, 0x07, 0x7a, 0x30, 0x07, 0x72, 0xa0, 0x07, 0x76,
0x40, 0x07, 0x43, 0x9e, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x86, 0x3c, 0x06, 0x10, 0x00, 0x01, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x0c, 0x79, 0x10, 0x20, 0x00, 0x04, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0xf2, 0x28, 0x40, 0x00, 0x04, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0xe4, 0x61, 0x80, 0x00, 0x08,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x60, 0xc8, 0x13, 0x01, 0x01,
0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x90, 0x87, 0x02,
0x02, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x21, 0xcf,
0x05, 0x04, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x59,
0x20, 0x00, 0x00, 0x00, 0x12, 0x00, 0x00, 0x00, 0x32, 0x1e, 0x98, 0x14,
0x19, 0x11, 0x4c, 0x90, 0x8c, 0x09, 0x26, 0x47, 0xc6, 0x04, 0x43, 0x22,
0x4a, 0x60, 0x04, 0xa0, 0x18, 0x8a, 0xa0, 0x24, 0xca, 0xa0, 0x40, 0xca,
0xa1, 0x34, 0x0a, 0xa1, 0x3c, 0xca, 0xab, 0x28, 0x03, 0xa8, 0x28, 0x89,
0x11, 0x80, 0x22, 0x28, 0x84, 0x02, 0xa1, 0x6e, 0x06, 0x80, 0xbc, 0x19,
0x00, 0xfa, 0x66, 0x00, 0x28, 0x9c, 0x01, 0x20, 0x71, 0x2c, 0xc4, 0x20,
0x02, 0x81, 0x40, 0x8e, 0x03, 0x00, 0x00, 0x00, 0x79, 0x18, 0x00, 0x00,
0x91, 0x00, 0x00, 0x00, 0x1a, 0x03, 0x4c, 0x90, 0x46, 0x02, 0x13, 0x44,
0x8f, 0x0c, 0x6f, 0xec, 0xed, 0x4d, 0x0c, 0x24, 0xc6, 0x05, 0xc7, 0x45,
0xa6, 0x06, 0xa6, 0xc6, 0x45, 0x06, 0x07, 0x04, 0x25, 0xa7, 0xcc, 0x4c,
0x4c, 0xcc, 0x66, 0x6c, 0x46, 0x26, 0x65, 0x43, 0x10, 0x4c, 0x10, 0x08,
0x64, 0x82, 0x40, 0x24, 0x1b, 0x84, 0x81, 0xd8, 0x20, 0x10, 0x04, 0x05,
0xb8, 0xb9, 0x09, 0x02, 0xa1, 0x6c, 0x18, 0x0e, 0x84, 0x98, 0x20, 0x74,
0x1a, 0x93, 0xba, 0x2f, 0xba, 0x32, 0x3c, 0xba, 0x3a, 0xb9, 0xb2, 0x09,
0x02, 0xb1, 0x4c, 0x10, 0x08, 0x66, 0x83, 0x40, 0x34, 0x1b, 0x12, 0x42,
0x59, 0x18, 0x62, 0x60, 0x08, 0x67, 0x43, 0xf0, 0x4c, 0x10, 0x3e, 0x8e,
0x0c, 0x5d, 0x1e, 0x5c, 0xd9, 0xd7, 0xd0, 0x9b, 0x1b, 0x5d, 0x19, 0x1e,
0xdd, 0x04, 0x81, 0x68, 0x26, 0x08, 0x84, 0xb3, 0x01, 0x21, 0x22, 0x69,
0x22, 0x06, 0x0a, 0xd8, 0x10, 0x54, 0x13, 0x84, 0x30, 0xe8, 0x98, 0xd4,
0x7d, 0xcd, 0x85, 0xb5, 0xc1, 0xb1, 0x95, 0xc9, 0x6d, 0x40, 0x88, 0x0b,
0x63, 0x88, 0x81, 0x00, 0x36, 0x04, 0xd9, 0x06, 0x02, 0x02, 0x2c, 0x6d,
0x82, 0xe0, 0x6d, 0x94, 0x86, 0xde, 0xdc, 0xe8, 0xca, 0xf0, 0xe8, 0xbe,
0xe8, 0xca, 0xf0, 0xca, 0xd8, 0xbe, 0xe6, 0xd2, 0xf4, 0xca, 0x26, 0x08,
0xc4, 0x33, 0x41, 0x20, 0xa0, 0x09, 0x02, 0x11, 0x6d, 0x40, 0x90, 0x6e,
0x22, 0xbc, 0xe6, 0x03, 0x83, 0x0d, 0x02, 0x15, 0x06, 0x1b, 0x06, 0x82,
0x13, 0x83, 0x09, 0x82, 0x00, 0x6c, 0x00, 0x36, 0x0c, 0x44, 0x19, 0x94,
0xc1, 0x86, 0xc0, 0x0c, 0x36, 0x0c, 0x03, 0x19, 0x9c, 0xc1, 0x04, 0x41,
0x0c, 0xbc, 0x0d, 0x41, 0x1a, 0x90, 0x68, 0x0b, 0x4b, 0x73, 0x23, 0x42,
0x55, 0x84, 0x35, 0xf4, 0xf4, 0x24, 0x45, 0x34, 0x41, 0x28, 0xaa, 0x09,
0x42, 0x61, 0x6d, 0x08, 0x88, 0x09, 0x42, 0x71, 0x4d, 0x10, 0x0a, 0x6c,
0x82, 0x40, 0x48, 0x1b, 0x84, 0x49, 0x0e, 0x36, 0x2c, 0x04, 0x1b, 0xb4,
0x81, 0x1b, 0xbc, 0x01, 0x1c, 0x0c, 0x71, 0x40, 0xb8, 0xc1, 0x1c, 0x6c,
0x08, 0x86, 0x0d, 0xc2, 0x34, 0x6d, 0x58, 0x06, 0x36, 0x68, 0x03, 0x37,
0xa8, 0x03, 0x38, 0x18, 0xe0, 0x60, 0x70, 0x03, 0x3b, 0xd8, 0x20, 0xd0,
0xc1, 0x1d, 0x30, 0x99, 0xb2, 0xfa, 0xa2, 0x0a, 0x93, 0x3b, 0x2b, 0xa3,
0x9b, 0x20, 0x14, 0xd9, 0x86, 0x85, 0xc8, 0x83, 0x36, 0xd0, 0x83, 0x37,
0x70, 0x83, 0x21, 0x0e, 0x08, 0x37, 0x98, 0x83, 0x0d, 0xc1, 0x1e, 0x6c,
0x18, 0xf0, 0x80, 0x0f, 0x80, 0x0d, 0x05, 0x19, 0xac, 0x41, 0x1f, 0x6c,
0x00, 0x0d, 0x33, 0xb6, 0xb7, 0x30, 0xba, 0xb9, 0x09, 0x02, 0x31, 0xb1,
0x48, 0x73, 0x9b, 0xa3, 0x9b, 0x9b, 0x20, 0x10, 0x14, 0x8d, 0xb9, 0xb4,
0xb3, 0x2f, 0x36, 0x32, 0x1a, 0x73, 0x69, 0x67, 0x5f, 0x73, 0x74, 0x44,
0xe8, 0xca, 0xf0, 0xbe, 0xce, 0xe4, 0xc2, 0xc8, 0x36, 0x28, 0x7f, 0x00,
0x0a, 0xa1, 0x20, 0x0a, 0xa3, 0x80, 0x90, 0x02, 0x18, 0x94, 0xc2, 0x50,
0x85, 0x8d, 0xcd, 0xae, 0xcd, 0x25, 0x8d, 0xac, 0xcc, 0x8d, 0x6e, 0x4a,
0x10, 0x54, 0x21, 0xc3, 0x73, 0xb1, 0x2b, 0x93, 0x9b, 0x4b, 0x7b, 0x73,
0x9b, 0x12, 0x10, 0x4d, 0xc8, 0xf0, 0x5c, 0xec, 0xc2, 0xd8, 0xec, 0xca,
0xe4, 0xa6, 0x04, 0x45, 0x1d, 0x32, 0x3c, 0x97, 0x39, 0xb4, 0x30, 0xb2,
0x32, 0xb9, 0xa6, 0x37, 0xb2, 0x32, 0xb6, 0x29, 0x01, 0x52, 0x86, 0x0c,
0xcf, 0x45, 0xae, 0x6c, 0xee, 0xad, 0x4e, 0x6e, 0xac, 0x6c, 0x6e, 0x4a,
0xa0, 0x55, 0x22, 0xc3, 0x73, 0xa1, 0xcb, 0x83, 0x2b, 0x0b, 0x72, 0x73,
0x7b, 0xa3, 0x0b, 0xa3, 0x4b, 0x7b, 0x73, 0x9b, 0x9b, 0x22, 0x88, 0xc1,
0x19, 0xd4, 0x21, 0xc3, 0x73, 0xb1, 0x4b, 0x2b, 0xbb, 0x4b, 0x22, 0x9b,
0xa2, 0x0b, 0xa3, 0x2b, 0x9b, 0x12, 0xa4, 0x41, 0x1d, 0x32, 0x3c, 0x97,
0x32, 0x37, 0x3a, 0xb9, 0x3c, 0xa8, 0xb7, 0x34, 0x37, 0xba, 0xb9, 0x29,
0x41, 0x1f, 0x74, 0x21, 0xc3, 0x73, 0x19, 0x7b, 0xab, 0x73, 0xa3, 0x2b,
0x93, 0x9b, 0x9b, 0x12, 0x94, 0x02, 0x00, 0x00, 0x79, 0x18, 0x00, 0x00,
0x4c, 0x00, 0x00, 0x00, 0x33, 0x08, 0x80, 0x1c, 0xc4, 0xe1, 0x1c, 0x66,
0x14, 0x01, 0x3d, 0x88, 0x43, 0x38, 0x84, 0xc3, 0x8c, 0x42, 0x80, 0x07,
0x79, 0x78, 0x07, 0x73, 0x98, 0x71, 0x0c, 0xe6, 0x00, 0x0f, 0xed, 0x10,
0x0e, 0xf4, 0x80, 0x0e, 0x33, 0x0c, 0x42, 0x1e, 0xc2, 0xc1, 0x1d, 0xce,
0xa1, 0x1c, 0x66, 0x30, 0x05, 0x3d, 0x88, 0x43, 0x38, 0x84, 0x83, 0x1b,
0xcc, 0x03, 0x3d, 0xc8, 0x43, 0x3d, 0x8c, 0x03, 0x3d, 0xcc, 0x78, 0x8c,
0x74, 0x70, 0x07, 0x7b, 0x08, 0x07, 0x79, 0x48, 0x87, 0x70, 0x70, 0x07,
0x7a, 0x70, 0x03, 0x76, 0x78, 0x87, 0x70, 0x20, 0x87, 0x19, 0xcc, 0x11,
0x0e, 0xec, 0x90, 0x0e, 0xe1, 0x30, 0x0f, 0x6e, 0x30, 0x0f, 0xe3, 0xf0,
0x0e, 0xf0, 0x50, 0x0e, 0x33, 0x10, 0xc4, 0x1d, 0xde, 0x21, 0x1c, 0xd8,
0x21, 0x1d, 0xc2, 0x61, 0x1e, 0x66, 0x30, 0x89, 0x3b, 0xbc, 0x83, 0x3b,
0xd0, 0x43, 0x39, 0xb4, 0x03, 0x3c, 0xbc, 0x83, 0x3c, 0x84, 0x03, 0x3b,
0xcc, 0xf0, 0x14, 0x76, 0x60, 0x07, 0x7b, 0x68, 0x07, 0x37, 0x68, 0x87,
0x72, 0x68, 0x07, 0x37, 0x80, 0x87, 0x70, 0x90, 0x87, 0x70, 0x60, 0x07,
0x76, 0x28, 0x07, 0x76, 0xf8, 0x05, 0x76, 0x78, 0x87, 0x77, 0x80, 0x87,
0x5f, 0x08, 0x87, 0x71, 0x18, 0x87, 0x72, 0x98, 0x87, 0x79, 0x98, 0x81,
0x2c, 0xee, 0xf0, 0x0e, 0xee, 0xe0, 0x0e, 0xf5, 0xc0, 0x0e, 0xec, 0x30,
0x03, 0x62, 0xc8, 0xa1, 0x1c, 0xe4, 0xa1, 0x1c, 0xcc, 0xa1, 0x1c, 0xe4,
0xa1, 0x1c, 0xdc, 0x61, 0x1c, 0xca, 0x21, 0x1c, 0xc4, 0x81, 0x1d, 0xca,
0x61, 0x06, 0xd6, 0x90, 0x43, 0x39, 0xc8, 0x43, 0x39, 0x98, 0x43, 0x39,
0xc8, 0x43, 0x39, 0xb8, 0xc3, 0x38, 0x94, 0x43, 0x38, 0x88, 0x03, 0x3b,
0x94, 0xc3, 0x2f, 0xbc, 0x83, 0x3c, 0xfc, 0x82, 0x3b, 0xd4, 0x03, 0x3b,
0xb0, 0xc3, 0x8c, 0xc8, 0x21, 0x07, 0x7c, 0x70, 0x03, 0x72, 0x10, 0x87,
0x73, 0x70, 0x03, 0x7b, 0x08, 0x07, 0x79, 0x60, 0x87, 0x70, 0xc8, 0x87,
0x77, 0xa8, 0x07, 0x7a, 0x98, 0x81, 0x3c, 0xe4, 0x80, 0x0f, 0x6e, 0x40,
0x0f, 0xe5, 0xd0, 0x0e, 0xf0, 0x00, 0x00, 0x00, 0x71, 0x20, 0x00, 0x00,
0x1f, 0x00, 0x00, 0x00, 0x46, 0x00, 0x0d, 0x97, 0xef, 0x3c, 0x7e, 0x80,
0x34, 0x40, 0x84, 0xf9, 0xc5, 0x6d, 0x9b, 0xc1, 0x36, 0x5c, 0xbe, 0xf3,
0xf8, 0x42, 0x40, 0x15, 0x05, 0x11, 0x95, 0x0e, 0x30, 0x94, 0x84, 0x01,
0x08, 0x98, 0x5f, 0xdc, 0xb6, 0x1d, 0x48, 0xc3, 0xe5, 0x3b, 0x8f, 0x2f,
0x44, 0x04, 0x30, 0x11, 0x21, 0xd0, 0x0c, 0x0b, 0x61, 0x01, 0xd3, 0x70,
0xf9, 0xce, 0xe3, 0x2f, 0x0e, 0x30, 0x88, 0xcd, 0x43, 0x4d, 0x7e, 0x71,
0xdb, 0x56, 0x40, 0x0d, 0x97, 0xef, 0x3c, 0xbe, 0x04, 0x30, 0xcf, 0x42,
0x80, 0x11, 0x30, 0xf8, 0xc5, 0x6d, 0x9b, 0x40, 0x35, 0x5c, 0xbe, 0xf3,
0xf8, 0xd2, 0xe4, 0x44, 0x04, 0x4a, 0x4d, 0x0f, 0x35, 0xf9, 0xc5, 0x6d,
0xdb, 0xc0, 0x33, 0x5c, 0xbe, 0xf3, 0xf8, 0x54, 0x03, 0x44, 0x98, 0x5f,
0xdc, 0xb6, 0x01, 0x10, 0x0c, 0x80, 0x34, 0x00, 0x00, 0x00, 0x00, 0x00,
0x48, 0x41, 0x53, 0x48, 0x14, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x9e, 0x1e, 0xf5, 0xe1, 0xa2, 0x09, 0x7a, 0x62, 0x93, 0xeb, 0xdb, 0x38,
0x69, 0x0e, 0xec, 0x47, 0x44, 0x58, 0x49, 0x4c, 0x2c, 0x09, 0x00, 0x00,
0x60, 0x00, 0x00, 0x00, 0x4b, 0x02, 0x00, 0x00, 0x44, 0x58, 0x49, 0x4c,
0x00, 0x01, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x14, 0x09, 0x00, 0x00,
0x42, 0x43, 0xc0, 0xde, 0x21, 0x0c, 0x00, 0x00, 0x42, 0x02, 0x00, 0x00,
0x0b, 0x82, 0x20, 0x00, 0x02, 0x00, 0x00, 0x00, 0x13, 0x00, 0x00, 0x00,
0x07, 0x81, 0x23, 0x91, 0x41, 0xc8, 0x04, 0x49, 0x06, 0x10, 0x32, 0x39,
0x92, 0x01, 0x84, 0x0c, 0x25, 0x05, 0x08, 0x19, 0x1e, 0x04, 0x8b, 0x62,
0x80, 0x18, 0x45, 0x02, 0x42, 0x92, 0x0b, 0x42, 0xc4, 0x10, 0x32, 0x14,
0x38, 0x08, 0x18, 0x4b, 0x0a, 0x32, 0x62, 0x88, 0x48, 0x90, 0x14, 0x20,
0x43, 0x46, 0x88, 0xa5, 0x00, 0x19, 0x32, 0x42, 0xe4, 0x48, 0x0e, 0x90,
0x11, 0x23, 0xc4, 0x50, 0x41, 0x51, 0x81, 0x8c, 0xe1, 0x83, 0xe5, 0x8a,
0x04, 0x31, 0x46, 0x06, 0x51, 0x18, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00,
0x1b, 0x8c, 0xe0, 0xff, 0xff, 0xff, 0xff, 0x07, 0x40, 0x02, 0xa8, 0x0d,
0x84, 0xf0, 0xff, 0xff, 0xff, 0xff, 0x03, 0x20, 0x6d, 0x30, 0x86, 0xff,
0xff, 0xff, 0xff, 0x1f, 0x00, 0x09, 0xa8, 0x00, 0x49, 0x18, 0x00, 0x00,
0x03, 0x00, 0x00, 0x00, 0x13, 0x82, 0x60, 0x42, 0x20, 0x4c, 0x08, 0x06,
0x00, 0x00, 0x00, 0x00, 0x89, 0x20, 0x00, 0x00, 0x53, 0x00, 0x00, 0x00,
0x32, 0x22, 0x88, 0x09, 0x20, 0x64, 0x85, 0x04, 0x13, 0x23, 0xa4, 0x84,
0x04, 0x13, 0x23, 0xe3, 0x84, 0xa1, 0x90, 0x14, 0x12, 0x4c, 0x8c, 0x8c,
0x0b, 0x84, 0xc4, 0x4c, 0x10, 0x8c, 0xc1, 0x08, 0x40, 0x09, 0x00, 0x0a,
0x66, 0x00, 0xe6, 0x08, 0xc0, 0x60, 0x8e, 0x00, 0x29, 0xc6, 0x40, 0x10,
0x44, 0x41, 0x90, 0x51, 0x0c, 0x80, 0x20, 0x88, 0x62, 0x20, 0xa4, 0x0c,
0x03, 0x31, 0x90, 0x52, 0x88, 0x81, 0x18, 0x06, 0x62, 0x6e, 0x1a, 0x2e,
0x7f, 0xc2, 0x1e, 0x42, 0xf2, 0x57, 0x42, 0x5a, 0x89, 0xc9, 0x2f, 0x6e,
0x1b, 0x15, 0xc3, 0x30, 0x0c, 0x04, 0x15, 0xf7, 0x0c, 0x97, 0x3f, 0x61,
0x0f, 0x21, 0xf9, 0x21, 0xd0, 0x0c, 0x0b, 0x81, 0x82, 0xa7, 0x48, 0x0e,
0x01, 0x41, 0xc3, 0x30, 0x0c, 0x04, 0x41, 0x0c, 0xc3, 0x30, 0x0c, 0xc3,
0x40, 0xd1, 0x51, 0xc3, 0xe5, 0x4f, 0xd8, 0x43, 0x48, 0x3e, 0xb7, 0x51,
0xc5, 0x4a, 0x4c, 0x7e, 0x71, 0xdb, 0x88, 0x18, 0x86, 0x61, 0x28, 0xc4,
0x44, 0x40, 0x04, 0x51, 0x73, 0x04, 0x41, 0x31, 0x20, 0xa2, 0x20, 0x08,
0x8b, 0xae, 0x81, 0x80, 0x61, 0x04, 0x62, 0x98, 0xa9, 0x0d, 0xc6, 0x81,
0x1d, 0xc2, 0x61, 0x1e, 0xe6, 0xc1, 0x0d, 0x68, 0xa1, 0x1c, 0xf0, 0x81,
0x1e, 0xea, 0x41, 0x1e, 0xca, 0x41, 0x0e, 0x48, 0x81, 0x0f, 0xec, 0xa1,
0x1c, 0xc6, 0x81, 0x1e, 0xde, 0x41, 0x1e, 0xf8, 0xc0, 0x1c, 0xd8, 0xe1,
0x1d, 0xc2, 0x81, 0x1e, 0xd8, 0x00, 0x0c, 0xe8, 0xc0, 0x0f, 0xc0, 0xc0,
0x0f, 0xf4, 0x40, 0x0f, 0xda, 0x21, 0x1d, 0xe0, 0x61, 0x1e, 0x7e, 0x81,
0x1e, 0xf2, 0x01, 0x1e, 0xca, 0x01, 0x05, 0xc4, 0x4c, 0x62, 0x30, 0x0e,
0xec, 0x10, 0x0e, 0xf3, 0x30, 0x0f, 0x6e, 0x40, 0x0b, 0xe5, 0x80, 0x0f,
0xf4, 0x50, 0x0f, 0xf2, 0x50, 0x0e, 0x72, 0x40, 0x0a, 0x7c, 0x60, 0x0f,
0xe5, 0x30, 0x0e, 0xf4, 0xf0, 0x0e, 0xf2, 0xc0, 0x07, 0xe6, 0xc0, 0x0e,
0xef, 0x10, 0x0e, 0xf4, 0xc0, 0x06, 0x60, 0x40, 0x07, 0x7e, 0x00, 0x06,
0x7e, 0x80, 0x04, 0x6d, 0x23, 0xee, 0x98, 0x09, 0x7b, 0x88, 0x9f, 0x73,
0x9a, 0x89, 0xb8, 0x26, 0x14, 0x68, 0xe4, 0xdd, 0x24, 0x4d, 0x11, 0x25,
0x4c, 0x3e, 0x0b, 0x30, 0xcf, 0x42, 0x44, 0xec, 0x04, 0x4c, 0x04, 0x0a,
0x08, 0x02, 0x13, 0x81, 0x00, 0x00, 0x00, 0x00, 0x13, 0x14, 0x72, 0xc0,
0x87, 0x74, 0x60, 0x87, 0x36, 0x68, 0x87, 0x79, 0x68, 0x03, 0x72, 0xc0,
0x87, 0x0d, 0xaf, 0x50, 0x0e, 0x6d, 0xd0, 0x0e, 0x7a, 0x50, 0x0e, 0x6d,
0x00, 0x0f, 0x7a, 0x30, 0x07, 0x72, 0xa0, 0x07, 0x73, 0x20, 0x07, 0x6d,
0x90, 0x0e, 0x71, 0xa0, 0x07, 0x73, 0x20, 0x07, 0x6d, 0x90, 0x0e, 0x78,
0xa0, 0x07, 0x73, 0x20, 0x07, 0x6d, 0x90, 0x0e, 0x71, 0x60, 0x07, 0x7a,
0x30, 0x07, 0x72, 0xd0, 0x06, 0xe9, 0x30, 0x07, 0x72, 0xa0, 0x07, 0x73,
0x20, 0x07, 0x6d, 0x90, 0x0e, 0x76, 0x40, 0x07, 0x7a, 0x60, 0x07, 0x74,
0xd0, 0x06, 0xe6, 0x10, 0x07, 0x76, 0xa0, 0x07, 0x73, 0x20, 0x07, 0x6d,
0x60, 0x0e, 0x73, 0x20, 0x07, 0x7a, 0x30, 0x07, 0x72, 0xd0, 0x06, 0xe6,
0x60, 0x07, 0x74, 0xa0, 0x07, 0x76, 0x40, 0x07, 0x6d, 0xe0, 0x0e, 0x78,
0xa0, 0x07, 0x71, 0x60, 0x07, 0x7a, 0x30, 0x07, 0x72, 0xa0, 0x07, 0x76,
0x40, 0x07, 0x43, 0x9e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x86, 0x3c, 0x06, 0x10, 0x00, 0x01, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x0c, 0x79, 0x10, 0x20, 0x00, 0x04, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0xf2, 0x28, 0x40, 0x00, 0x04, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0xe4, 0x61, 0x80, 0x00, 0x08,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x60, 0xc8, 0x13, 0x01, 0x01,
0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x90, 0x87, 0x02,
0x02, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x21, 0xcf,
0x05, 0x04, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x59,
0x20, 0x00, 0x00, 0x00, 0x0f, 0x00, 0x00, 0x00, 0x32, 0x1e, 0x98, 0x14,
0x19, 0x11, 0x4c, 0x90, 0x8c, 0x09, 0x26, 0x47, 0xc6, 0x04, 0x43, 0x22,
0x4a, 0x60, 0x04, 0xa0, 0x24, 0x8a, 0xa1, 0x08, 0xca, 0xa0, 0x40, 0xca,
0x83, 0x8a, 0x92, 0x18, 0x01, 0x28, 0x82, 0x42, 0x28, 0x10, 0xea, 0x66,
0x00, 0xe8, 0x9b, 0x01, 0xa0, 0x70, 0x06, 0x80, 0xc4, 0xb1, 0x10, 0x83,
0x08, 0x04, 0x02, 0x39, 0x0e, 0x00, 0x00, 0x00, 0x79, 0x18, 0x00, 0x00,
0x5e, 0x00, 0x00, 0x00, 0x1a, 0x03, 0x4c, 0x90, 0x46, 0x02, 0x13, 0x44,
0x8f, 0x0c, 0x6f, 0xec, 0xed, 0x4d, 0x0c, 0x24, 0xc6, 0x05, 0xc7, 0x45,
0xa6, 0x06, 0xa6, 0xc6, 0x45, 0x06, 0x07, 0x04, 0x25, 0xa7, 0xcc, 0x4c,
0x4c, 0xcc, 0x66, 0x6c, 0x46, 0x26, 0x65, 0x43, 0x10, 0x4c, 0x10, 0x08,
0x64, 0x82, 0x40, 0x24, 0x1b, 0x84, 0x81, 0x98, 0x20, 0x10, 0xca, 0x06,
0x61, 0x30, 0x28, 0xc0, 0xcd, 0x4d, 0x10, 0x88, 0x65, 0xc3, 0x80, 0x24,
0xc4, 0x04, 0xa1, 0xab, 0x08, 0x4c, 0x10, 0x08, 0x66, 0x83, 0x40, 0x18,
0x1b, 0x12, 0x62, 0x61, 0x1a, 0x62, 0x68, 0x08, 0x67, 0x43, 0xf0, 0x4c,
0x10, 0x3e, 0x6b, 0x82, 0x40, 0x34, 0x13, 0x04, 0xc2, 0xd9, 0x80, 0x10,
0x11, 0x23, 0x11, 0xc3, 0x04, 0x6c, 0x08, 0xa8, 0x09, 0x42, 0x18, 0x5c,
0x1b, 0x10, 0xc2, 0x62, 0x1a, 0x62, 0x20, 0x80, 0x0d, 0xc1, 0xb5, 0x81,
0x80, 0x80, 0x0a, 0x9b, 0x20, 0x88, 0x01, 0xb6, 0x21, 0xd0, 0x26, 0x08,
0x02, 0x40, 0xa2, 0x2d, 0x2c, 0xcd, 0x8d, 0x08, 0x55, 0x11, 0xd6, 0xd0,
0xd3, 0x93, 0x14, 0xd1, 0x04, 0xa1, 0x80, 0x26, 0x08, 0x45, 0xb4, 0x21,
0x20, 0x26, 0x08, 0x85, 0x34, 0x41, 0x28, 0xa6, 0x09, 0x02, 0xf1, 0x6c,
0x10, 0x24, 0x32, 0xd8, 0xb0, 0x10, 0xde, 0x07, 0x06, 0x61, 0x20, 0x06,
0xc3, 0x18, 0x10, 0x60, 0x50, 0x06, 0x1b, 0x82, 0x61, 0x83, 0x20, 0x49,
0x1b, 0x96, 0xc1, 0xfb, 0xc0, 0xe0, 0x0c, 0xc4, 0x60, 0x10, 0x83, 0x01,
0x0c, 0xd0, 0x60, 0x83, 0x60, 0x06, 0x69, 0xc0, 0x64, 0xca, 0xea, 0x8b,
0x2a, 0x4c, 0xee, 0xac, 0x8c, 0x6e, 0x82, 0x50, 0x50, 0x1b, 0x16, 0x62,
0x0d, 0x3e, 0x36, 0x08, 0x03, 0x30, 0x18, 0xc6, 0x80, 0x00, 0x83, 0x32,
0xd8, 0x10, 0xb4, 0xc1, 0x86, 0x41, 0x0d, 0xdc, 0x00, 0xd8, 0x50, 0x70,
0xdd, 0x1b, 0x64, 0x40, 0x15, 0x36, 0x36, 0xbb, 0x36, 0x97, 0x34, 0xb2,
0x32, 0x37, 0xba, 0x29, 0x41, 0x50, 0x85, 0x0c, 0xcf, 0xc5, 0xae, 0x4c,
0x6e, 0x2e, 0xed, 0xcd, 0x6d, 0x4a, 0x40, 0x34, 0x21, 0xc3, 0x73, 0xb1,
0x0b, 0x63, 0xb3, 0x2b, 0x93, 0x9b, 0x12, 0x18, 0x75, 0xc8, 0xf0, 0x5c,
0xe6, 0xd0, 0xc2, 0xc8, 0xca, 0xe4, 0x9a, 0xde, 0xc8, 0xca, 0xd8, 0xa6,
0x04, 0x49, 0x19, 0x32, 0x3c, 0x17, 0xb9, 0xb2, 0xb9, 0xb7, 0x3a, 0xb9,
0xb1, 0xb2, 0xb9, 0x29, 0x01, 0x56, 0x87, 0x0c, 0xcf, 0xc5, 0x2e, 0xad,
0xec, 0x2e, 0x89, 0x6c, 0x8a, 0x2e, 0x8c, 0xae, 0x6c, 0x4a, 0xa0, 0xd5,
0x21, 0xc3, 0x73, 0x29, 0x73, 0xa3, 0x93, 0xcb, 0x83, 0x7a, 0x4b, 0x73,
0xa3, 0x9b, 0x9b, 0x12, 0xbc, 0x01, 0x00, 0x00, 0x79, 0x18, 0x00, 0x00,
0x4c, 0x00, 0x00, 0x00, 0x33, 0x08, 0x80, 0x1c, 0xc4, 0xe1, 0x1c, 0x66,
0x14, 0x01, 0x3d, 0x88, 0x43, 0x38, 0x84, 0xc3, 0x8c, 0x42, 0x80, 0x07,
0x79, 0x78, 0x07, 0x73, 0x98, 0x71, 0x0c, 0xe6, 0x00, 0x0f, 0xed, 0x10,
0x0e, 0xf4, 0x80, 0x0e, 0x33, 0x0c, 0x42, 0x1e, 0xc2, 0xc1, 0x1d, 0xce,
0xa1, 0x1c, 0x66, 0x30, 0x05, 0x3d, 0x88, 0x43, 0x38, 0x84, 0x83, 0x1b,
0xcc, 0x03, 0x3d, 0xc8, 0x43, 0x3d, 0x8c, 0x03, 0x3d, 0xcc, 0x78, 0x8c,
0x74, 0x70, 0x07, 0x7b, 0x08, 0x07, 0x79, 0x48, 0x87, 0x70, 0x70, 0x07,
0x7a, 0x70, 0x03, 0x76, 0x78, 0x87, 0x70, 0x20, 0x87, 0x19, 0xcc, 0x11,
0x0e, 0xec, 0x90, 0x0e, 0xe1, 0x30, 0x0f, 0x6e, 0x30, 0x0f, 0xe3, 0xf0,
0x0e, 0xf0, 0x50, 0x0e, 0x33, 0x10, 0xc4, 0x1d, 0xde, 0x21, 0x1c, 0xd8,
0x21, 0x1d, 0xc2, 0x61, 0x1e, 0x66, 0x30, 0x89, 0x3b, 0xbc, 0x83, 0x3b,
0xd0, 0x43, 0x39, 0xb4, 0x03, 0x3c, 0xbc, 0x83, 0x3c, 0x84, 0x03, 0x3b,
0xcc, 0xf0, 0x14, 0x76, 0x60, 0x07, 0x7b, 0x68, 0x07, 0x37, 0x68, 0x87,
0x72, 0x68, 0x07, 0x37, 0x80, 0x87, 0x70, 0x90, 0x87, 0x70, 0x60, 0x07,
0x76, 0x28, 0x07, 0x76, 0xf8, 0x05, 0x76, 0x78, 0x87, 0x77, 0x80, 0x87,
0x5f, 0x08, 0x87, 0x71, 0x18, 0x87, 0x72, 0x98, 0x87, 0x79, 0x98, 0x81,
0x2c, 0xee, 0xf0, 0x0e, 0xee, 0xe0, 0x0e, 0xf5, 0xc0, 0x0e, 0xec, 0x30,
0x03, 0x62, 0xc8, 0xa1, 0x1c, 0xe4, 0xa1, 0x1c, 0xcc, 0xa1, 0x1c, 0xe4,
0xa1, 0x1c, 0xdc, 0x61, 0x1c, 0xca, 0x21, 0x1c, 0xc4, 0x81, 0x1d, 0xca,
0x61, 0x06, 0xd6, 0x90, 0x43, 0x39, 0xc8, 0x43, 0x39, 0x98, 0x43, 0x39,
0xc8, 0x43, 0x39, 0xb8, 0xc3, 0x38, 0x94, 0x43, 0x38, 0x88, 0x03, 0x3b,
0x94, 0xc3, 0x2f, 0xbc, 0x83, 0x3c, 0xfc, 0x82, 0x3b, 0xd4, 0x03, 0x3b,
0xb0, 0xc3, 0x8c, 0xc8, 0x21, 0x07, 0x7c, 0x70, 0x03, 0x72, 0x10, 0x87,
0x73, 0x70, 0x03, 0x7b, 0x08, 0x07, 0x79, 0x60, 0x87, 0x70, 0xc8, 0x87,
0x77, 0xa8, 0x07, 0x7a, 0x98, 0x81, 0x3c, 0xe4, 0x80, 0x0f, 0x6e, 0x40,
0x0f, 0xe5, 0xd0, 0x0e, 0xf0, 0x00, 0x00, 0x00, 0x71, 0x20, 0x00, 0x00,
0x1f, 0x00, 0x00, 0x00, 0x46, 0x00, 0x0d, 0x97, 0xef, 0x3c, 0x7e, 0x80,
0x34, 0x40, 0x84, 0xf9, 0xc5, 0x6d, 0x9b, 0xc1, 0x36, 0x5c, 0xbe, 0xf3,
0xf8, 0x42, 0x40, 0x15, 0x05, 0x11, 0x95, 0x0e, 0x30, 0x94, 0x84, 0x01,
0x08, 0x98, 0x5f, 0xdc, 0xb6, 0x1d, 0x48, 0xc3, 0xe5, 0x3b, 0x8f, 0x2f,
0x44, 0x04, 0x30, 0x11, 0x21, 0xd0, 0x0c, 0x0b, 0x61, 0x01, 0xd3, 0x70,
0xf9, 0xce, 0xe3, 0x2f, 0x0e, 0x30, 0x88, 0xcd, 0x43, 0x4d, 0x7e, 0x71,
0xdb, 0x56, 0x40, 0x0d, 0x97, 0xef, 0x3c, 0xbe, 0x04, 0x30, 0xcf, 0x42,
0x80, 0x11, 0x30, 0xf8, 0xc5, 0x6d, 0x9b, 0x40, 0x35, 0x5c, 0xbe, 0xf3,
0xf8, 0xd2, 0xe4, 0x44, 0x04, 0x4a, 0x4d, 0x0f, 0x35, 0xf9, 0xc5, 0x6d,
0xdb, 0xc0, 0x33, 0x5c, 0xbe, 0xf3, 0xf8, 0x54, 0x03, 0x44, 0x98, 0x5f,
0xdc, 0xb6, 0x01, 0x10, 0x0c, 0x80, 0x34, 0x00, 0x61, 0x20, 0x00, 0x00,
0xa8, 0x00, 0x00, 0x00, 0x13, 0x04, 0x41, 0x2c, 0x10, 0x00, 0x00, 0x00,
0x13, 0x00, 0x00, 0x00, 0x64, 0x8d, 0x00, 0x50, 0x51, 0x02, 0x65, 0x40,
0x44, 0xf9, 0x95, 0x5d, 0x39, 0x14, 0xcb, 0x0c, 0x40, 0x21, 0x94, 0x42,
0xc9, 0x95, 0x69, 0x40, 0xa1, 0x06, 0x94, 0x51, 0x21, 0x95, 0x0d, 0x0d,
0x63, 0x04, 0x20, 0x08, 0x82, 0x24, 0x18, 0x8c, 0x11, 0x80, 0x20, 0x08,
0x82, 0x60, 0x30, 0x46, 0x00, 0x82, 0x20, 0x88, 0xff, 0xc2, 0x18, 0x01,
0x08, 0x82, 0x20, 0xfe, 0x8d, 0x11, 0xb0, 0x6d, 0xfc, 0xca, 0xdb, 0x18,
0x01, 0x08, 0x82, 0x20, 0xfc, 0xcd, 0x00, 0x00, 0x23, 0x06, 0x09, 0x00,
0x82, 0x60, 0x70, 0xa5, 0x41, 0xf3, 0x9d, 0xc1, 0x19, 0x5c, 0x23, 0x06,
0x09, 0x00, 0x82, 0x60, 0x70, 0xa9, 0x81, 0x63, 0xa1, 0x01, 0x1a, 0x60,
0x23, 0x06, 0x09, 0x00, 0x82, 0x60, 0x70, 0xad, 0xc1, 0x03, 0x06, 0x69,
0x90, 0x06, 0xd9, 0x88, 0x41, 0x02, 0x80, 0x20, 0x18, 0x18, 0x72, 0x20,
0xad, 0x81, 0x1a, 0x88, 0xc1, 0x34, 0x62, 0x90, 0x00, 0x20, 0x08, 0x06,
0xc6, 0x1c, 0x4c, 0x6c, 0xb0, 0x06, 0x1a, 0x35, 0x62, 0x90, 0x00, 0x20,
0x08, 0x06, 0x06, 0x1d, 0x50, 0x6c, 0xc0, 0x06, 0x64, 0x50, 0x8d, 0x18,
0x24, 0x00, 0x08, 0x82, 0x81, 0x51, 0x07, 0x55, 0x1b, 0xb4, 0x01, 0x67,
0x8d, 0x18, 0x24, 0x00, 0x08, 0x82, 0x81, 0x61, 0x07, 0x96, 0x1b, 0xb8,
0x41, 0x19, 0x5c, 0x23, 0x06, 0x09, 0x00, 0x82, 0x60, 0x60, 0xdc, 0xc1,
0xf5, 0x06, 0x6f, 0xd0, 0x61, 0x23, 0x06, 0x06, 0x00, 0x82, 0x60, 0xa0,
0xd8, 0x41, 0x65, 0x8c, 0x18, 0x18, 0x00, 0x08, 0x82, 0x81, 0x72, 0x07,
0x96, 0x31, 0x62, 0x60, 0x00, 0x20, 0x08, 0x06, 0x0a, 0x1e, 0xc0, 0x81,
0x30, 0x62, 0x60, 0x00, 0x20, 0x08, 0x06, 0x4a, 0x1e, 0xc4, 0x81, 0x30,
0x62, 0x60, 0x00, 0x20, 0x08, 0x06, 0x8a, 0x1e, 0x60, 0xca, 0x88, 0x81,
0x01, 0x80, 0x20, 0x18, 0x28, 0x7b, 0x90, 0x29, 0x23, 0x06, 0x06, 0x00,
0x82, 0x60, 0xa0, 0xf0, 0x01, 0x1d, 0x08, 0x23, 0x06, 0x06, 0x00, 0x82,
0x60, 0xa0, 0xf4, 0x41, 0x1d, 0x08, 0x26, 0x18, 0xf0, 0x31, 0xc1, 0x80,
0xcf, 0x88, 0xc1, 0x01, 0x80, 0x20, 0x18, 0x50, 0x7d, 0x60, 0x06, 0x91,
0x1e, 0x8c, 0x26, 0x04, 0xc2, 0x68, 0x82, 0x30, 0x98, 0x50, 0xc8, 0xc7,
0x84, 0x42, 0x3e, 0x23, 0x06, 0x07, 0x00, 0x82, 0x60, 0xc0, 0x90, 0x82,
0x18, 0x08, 0xdb, 0x88, 0xc1, 0x01, 0x80, 0x20, 0x18, 0x30, 0xa5, 0x30,
0x06, 0x02, 0x37, 0x62, 0x70, 0x00, 0x20, 0x08, 0x06, 0x8c, 0x29, 0x8c,
0x81, 0xe0, 0x8d, 0x18, 0x1c, 0x00, 0x08, 0x82, 0x01, 0x73, 0x0a, 0x64,
0x20, 0x7c, 0x86, 0x64, 0xf2, 0x31, 0x24, 0x93, 0x8f, 0x11, 0x60, 0x20,
0x1f, 0x23, 0xc2, 0x40, 0x3e, 0x46, 0x08, 0xf1, 0x31, 0x42, 0x88, 0xcf,
0x88, 0x81, 0x01, 0x80, 0x20, 0x18, 0x28, 0xaf, 0xa0, 0x06, 0xc2, 0x88,
0x81, 0x01, 0x80, 0x20, 0x18, 0x28, 0xb0, 0xb0, 0x06, 0x82, 0x09, 0x66,
0x00, 0x1f, 0x13, 0xce, 0x00, 0x3e, 0x23, 0x06, 0x06, 0x00, 0x82, 0x60,
0xa0, 0xcc, 0xc2, 0x1d, 0x18, 0x23, 0x06, 0x06, 0x00, 0x82, 0x60, 0xa0,
0xd0, 0x02, 0x1e, 0x18, 0xe6, 0xb4, 0x01, 0x7c, 0x2c, 0x18, 0xe0, 0x63,
0xcf, 0x1b, 0xc0, 0xc7, 0x02, 0x02, 0x3e, 0x36, 0x48, 0xf4, 0x31, 0x41,
0xa2, 0xcf, 0x88, 0x81, 0x01, 0x80, 0x20, 0x18, 0x28, 0xbb, 0x00, 0x0a,
0xc2, 0x88, 0x81, 0x01, 0x80, 0x20, 0x18, 0x28, 0xbc, 0x10, 0x0a, 0x82,
0x09, 0x76, 0x20, 0x1f, 0x13, 0xee, 0x40, 0x3e, 0x96, 0x07, 0x42, 0x7c,
0x4c, 0x0f, 0x84, 0xf8, 0x98, 0x61, 0xc8, 0xc7, 0x82, 0x41, 0x3e, 0x76,
0x1c, 0xf2, 0xb1, 0x80, 0x90, 0x8f, 0x51, 0x03, 0x7c, 0x8c, 0x12, 0xe0,
0x33, 0x9a, 0x70, 0x06, 0xc0, 0x68, 0x02, 0x1a, 0x04, 0x46, 0x08, 0xf2,
0x31, 0x42, 0x90, 0xcf, 0x88, 0x41, 0x05, 0x80, 0x20, 0x18, 0x44, 0xe9,
0x20, 0x0b, 0x7e, 0xd0, 0x07, 0x42, 0xf0, 0x07, 0x7f, 0x50, 0x0e, 0xe5,
0xe0, 0x0a, 0x75, 0x40, 0x07, 0x7f, 0x10, 0x07, 0x70, 0xf0, 0x07, 0x7f,
0x30, 0x9a, 0x10, 0x00, 0xa3, 0x09, 0x42, 0x30, 0x9a, 0x30, 0x08, 0x36,
0xf4, 0x81, 0x7c, 0x6c, 0xe8, 0x03, 0xf9, 0xd8, 0xd0, 0x07, 0xf2, 0x19,
0x31, 0x48, 0x00, 0x10, 0x04, 0x03, 0x64, 0x1e, 0x66, 0x81, 0x1d, 0xd8,
0x81, 0x1c, 0x86, 0x11, 0x83, 0x04, 0x00, 0x41, 0x30, 0x40, 0xe6, 0x61,
0x16, 0xd8, 0x81, 0x1d, 0x76, 0x41, 0x18, 0x31, 0x48, 0x00, 0x10, 0x04,
0x03, 0x64, 0x1e, 0x66, 0x81, 0x1d, 0xd8, 0x61, 0x1c, 0x82, 0x11, 0x83,
0x04, 0x00, 0x41, 0x30, 0x40, 0xe6, 0x61, 0x16, 0xd8, 0x81, 0x1d, 0x74,
0xa1, 0x0f, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00
};
static const unsigned int texture_rgb_pixelart_frag_dxil_len = 4772;

View File

@@ -1,8 +0,0 @@
#include "texture_pixelart.frag.hlsli"
PSOutput main(PSInput input) {
PSOutput output;
float2 uv = GetPixelArtUV(input);
output.o_color = float4(u_texture.SampleGrad(u_sampler, uv, ddx(input.v_uv), ddy(input.v_uv)).rgb, 1.0f) * input.v_color;
return output;
}

View File

@@ -1,87 +0,0 @@
static const unsigned char texture_rgb_pixelart_frag_msl[] = {
0x23, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x20, 0x3c, 0x6d, 0x65,
0x74, 0x61, 0x6c, 0x5f, 0x73, 0x74, 0x64, 0x6c, 0x69, 0x62, 0x3e, 0x0a,
0x23, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x20, 0x3c, 0x73, 0x69,
0x6d, 0x64, 0x2f, 0x73, 0x69, 0x6d, 0x64, 0x2e, 0x68, 0x3e, 0x0a, 0x0a,
0x75, 0x73, 0x69, 0x6e, 0x67, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70,
0x61, 0x63, 0x65, 0x20, 0x6d, 0x65, 0x74, 0x61, 0x6c, 0x3b, 0x0a, 0x0a,
0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x20, 0x74, 0x79, 0x70, 0x65, 0x5f,
0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x0a, 0x7b, 0x0a, 0x20, 0x20,
0x20, 0x20, 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x34, 0x20, 0x74, 0x65, 0x78,
0x65, 0x6c, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x3b, 0x0a, 0x7d, 0x3b, 0x0a,
0x0a, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x20, 0x6d, 0x61, 0x69, 0x6e,
0x30, 0x5f, 0x6f, 0x75, 0x74, 0x0a, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20,
0x66, 0x6c, 0x6f, 0x61, 0x74, 0x34, 0x20, 0x6f, 0x75, 0x74, 0x5f, 0x76,
0x61, 0x72, 0x5f, 0x53, 0x56, 0x5f, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74,
0x20, 0x5b, 0x5b, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x28, 0x30, 0x29, 0x5d,
0x5d, 0x3b, 0x0a, 0x7d, 0x3b, 0x0a, 0x0a, 0x73, 0x74, 0x72, 0x75, 0x63,
0x74, 0x20, 0x6d, 0x61, 0x69, 0x6e, 0x30, 0x5f, 0x69, 0x6e, 0x0a, 0x7b,
0x0a, 0x20, 0x20, 0x20, 0x20, 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x34, 0x20,
0x69, 0x6e, 0x5f, 0x76, 0x61, 0x72, 0x5f, 0x43, 0x4f, 0x4c, 0x4f, 0x52,
0x30, 0x20, 0x5b, 0x5b, 0x75, 0x73, 0x65, 0x72, 0x28, 0x6c, 0x6f, 0x63,
0x6e, 0x30, 0x29, 0x5d, 0x5d, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x66,
0x6c, 0x6f, 0x61, 0x74, 0x32, 0x20, 0x69, 0x6e, 0x5f, 0x76, 0x61, 0x72,
0x5f, 0x54, 0x45, 0x58, 0x43, 0x4f, 0x4f, 0x52, 0x44, 0x30, 0x20, 0x5b,
0x5b, 0x75, 0x73, 0x65, 0x72, 0x28, 0x6c, 0x6f, 0x63, 0x6e, 0x31, 0x29,
0x5d, 0x5d, 0x3b, 0x0a, 0x7d, 0x3b, 0x0a, 0x0a, 0x66, 0x72, 0x61, 0x67,
0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6d, 0x61, 0x69, 0x6e, 0x30, 0x5f, 0x6f,
0x75, 0x74, 0x20, 0x6d, 0x61, 0x69, 0x6e, 0x30, 0x28, 0x6d, 0x61, 0x69,
0x6e, 0x30, 0x5f, 0x69, 0x6e, 0x20, 0x69, 0x6e, 0x20, 0x5b, 0x5b, 0x73,
0x74, 0x61, 0x67, 0x65, 0x5f, 0x69, 0x6e, 0x5d, 0x5d, 0x2c, 0x20, 0x63,
0x6f, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x20, 0x74, 0x79, 0x70, 0x65,
0x5f, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x26, 0x20, 0x43, 0x6f,
0x6e, 0x74, 0x65, 0x78, 0x74, 0x20, 0x5b, 0x5b, 0x62, 0x75, 0x66, 0x66,
0x65, 0x72, 0x28, 0x30, 0x29, 0x5d, 0x5d, 0x2c, 0x20, 0x74, 0x65, 0x78,
0x74, 0x75, 0x72, 0x65, 0x32, 0x64, 0x3c, 0x66, 0x6c, 0x6f, 0x61, 0x74,
0x3e, 0x20, 0x75, 0x5f, 0x74, 0x65, 0x78, 0x74, 0x75, 0x72, 0x65, 0x20,
0x5b, 0x5b, 0x74, 0x65, 0x78, 0x74, 0x75, 0x72, 0x65, 0x28, 0x30, 0x29,
0x5d, 0x5d, 0x2c, 0x20, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x72, 0x20,
0x75, 0x5f, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x72, 0x20, 0x5b, 0x5b,
0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x72, 0x28, 0x30, 0x29, 0x5d, 0x5d,
0x29, 0x0a, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x6d, 0x61, 0x69, 0x6e,
0x30, 0x5f, 0x6f, 0x75, 0x74, 0x20, 0x6f, 0x75, 0x74, 0x20, 0x3d, 0x20,
0x7b, 0x7d, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x66, 0x6c, 0x6f, 0x61,
0x74, 0x32, 0x20, 0x5f, 0x34, 0x31, 0x20, 0x3d, 0x20, 0x66, 0x61, 0x73,
0x74, 0x3a, 0x3a, 0x63, 0x6c, 0x61, 0x6d, 0x70, 0x28, 0x66, 0x77, 0x69,
0x64, 0x74, 0x68, 0x28, 0x69, 0x6e, 0x2e, 0x69, 0x6e, 0x5f, 0x76, 0x61,
0x72, 0x5f, 0x54, 0x45, 0x58, 0x43, 0x4f, 0x4f, 0x52, 0x44, 0x30, 0x29,
0x20, 0x2a, 0x20, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x2e, 0x74,
0x65, 0x78, 0x65, 0x6c, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x2e, 0x7a, 0x77,
0x2c, 0x20, 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x32, 0x28, 0x39, 0x2e, 0x39,
0x39, 0x39, 0x39, 0x39, 0x39, 0x37, 0x34, 0x37, 0x33, 0x37, 0x38, 0x37,
0x35, 0x31, 0x36, 0x33, 0x35, 0x35, 0x35, 0x31, 0x34, 0x35, 0x32, 0x36,
0x33, 0x36, 0x37, 0x31, 0x38, 0x38, 0x65, 0x2d, 0x30, 0x36, 0x29, 0x2c,
0x20, 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x32, 0x28, 0x31, 0x2e, 0x30, 0x29,
0x29, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x66, 0x6c, 0x6f, 0x61, 0x74,
0x32, 0x20, 0x5f, 0x34, 0x34, 0x20, 0x3d, 0x20, 0x28, 0x69, 0x6e, 0x2e,
0x69, 0x6e, 0x5f, 0x76, 0x61, 0x72, 0x5f, 0x54, 0x45, 0x58, 0x43, 0x4f,
0x4f, 0x52, 0x44, 0x30, 0x20, 0x2a, 0x20, 0x43, 0x6f, 0x6e, 0x74, 0x65,
0x78, 0x74, 0x2e, 0x74, 0x65, 0x78, 0x65, 0x6c, 0x5f, 0x73, 0x69, 0x7a,
0x65, 0x2e, 0x7a, 0x77, 0x29, 0x20, 0x2d, 0x20, 0x28, 0x5f, 0x34, 0x31,
0x20, 0x2a, 0x20, 0x30, 0x2e, 0x35, 0x29, 0x3b, 0x0a, 0x20, 0x20, 0x20,
0x20, 0x6f, 0x75, 0x74, 0x2e, 0x6f, 0x75, 0x74, 0x5f, 0x76, 0x61, 0x72,
0x5f, 0x53, 0x56, 0x5f, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x20, 0x3d,
0x20, 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x34, 0x28, 0x75, 0x5f, 0x74, 0x65,
0x78, 0x74, 0x75, 0x72, 0x65, 0x2e, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65,
0x28, 0x75, 0x5f, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x72, 0x2c, 0x20,
0x28, 0x28, 0x28, 0x66, 0x6c, 0x6f, 0x6f, 0x72, 0x28, 0x5f, 0x34, 0x34,
0x29, 0x20, 0x2b, 0x20, 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x32, 0x28, 0x30,
0x2e, 0x35, 0x29, 0x29, 0x20, 0x2b, 0x20, 0x73, 0x6d, 0x6f, 0x6f, 0x74,
0x68, 0x73, 0x74, 0x65, 0x70, 0x28, 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x32,
0x28, 0x31, 0x2e, 0x30, 0x29, 0x20, 0x2d, 0x20, 0x5f, 0x34, 0x31, 0x2c,
0x20, 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x32, 0x28, 0x31, 0x2e, 0x30, 0x29,
0x2c, 0x20, 0x66, 0x72, 0x61, 0x63, 0x74, 0x28, 0x5f, 0x34, 0x34, 0x29,
0x29, 0x29, 0x20, 0x2a, 0x20, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74,
0x2e, 0x74, 0x65, 0x78, 0x65, 0x6c, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x2e,
0x78, 0x79, 0x29, 0x2c, 0x20, 0x67, 0x72, 0x61, 0x64, 0x69, 0x65, 0x6e,
0x74, 0x32, 0x64, 0x28, 0x64, 0x66, 0x64, 0x78, 0x28, 0x69, 0x6e, 0x2e,
0x69, 0x6e, 0x5f, 0x76, 0x61, 0x72, 0x5f, 0x54, 0x45, 0x58, 0x43, 0x4f,
0x4f, 0x52, 0x44, 0x30, 0x29, 0x2c, 0x20, 0x64, 0x66, 0x64, 0x79, 0x28,
0x69, 0x6e, 0x2e, 0x69, 0x6e, 0x5f, 0x76, 0x61, 0x72, 0x5f, 0x54, 0x45,
0x58, 0x43, 0x4f, 0x4f, 0x52, 0x44, 0x30, 0x29, 0x29, 0x29, 0x2e, 0x78,
0x79, 0x7a, 0x2c, 0x20, 0x31, 0x2e, 0x30, 0x29, 0x20, 0x2a, 0x20, 0x69,
0x6e, 0x2e, 0x69, 0x6e, 0x5f, 0x76, 0x61, 0x72, 0x5f, 0x43, 0x4f, 0x4c,
0x4f, 0x52, 0x30, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x74,
0x75, 0x72, 0x6e, 0x20, 0x6f, 0x75, 0x74, 0x3b, 0x0a, 0x7d, 0x0a, 0x0a
};
static const unsigned int texture_rgb_pixelart_frag_msl_len = 1008;

View File

@@ -1,148 +0,0 @@
static const unsigned char texture_rgb_pixelart_frag_spv[] = {
0x03, 0x02, 0x23, 0x07, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x0e, 0x00,
0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x11, 0x00, 0x02, 0x00,
0x01, 0x00, 0x00, 0x00, 0x0b, 0x00, 0x06, 0x00, 0x01, 0x00, 0x00, 0x00,
0x47, 0x4c, 0x53, 0x4c, 0x2e, 0x73, 0x74, 0x64, 0x2e, 0x34, 0x35, 0x30,
0x00, 0x00, 0x00, 0x00, 0x0e, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
0x01, 0x00, 0x00, 0x00, 0x0f, 0x00, 0x08, 0x00, 0x04, 0x00, 0x00, 0x00,
0x02, 0x00, 0x00, 0x00, 0x6d, 0x61, 0x69, 0x6e, 0x00, 0x00, 0x00, 0x00,
0x03, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00,
0x10, 0x00, 0x03, 0x00, 0x02, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00,
0x03, 0x00, 0x03, 0x00, 0x05, 0x00, 0x00, 0x00, 0x58, 0x02, 0x00, 0x00,
0x05, 0x00, 0x06, 0x00, 0x06, 0x00, 0x00, 0x00, 0x74, 0x79, 0x70, 0x65,
0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x00, 0x00, 0x00, 0x00,
0x06, 0x00, 0x06, 0x00, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x74, 0x65, 0x78, 0x65, 0x6c, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x00, 0x00,
0x05, 0x00, 0x04, 0x00, 0x07, 0x00, 0x00, 0x00, 0x43, 0x6f, 0x6e, 0x74,
0x65, 0x78, 0x74, 0x00, 0x05, 0x00, 0x06, 0x00, 0x08, 0x00, 0x00, 0x00,
0x74, 0x79, 0x70, 0x65, 0x2e, 0x32, 0x64, 0x2e, 0x69, 0x6d, 0x61, 0x67,
0x65, 0x00, 0x00, 0x00, 0x05, 0x00, 0x05, 0x00, 0x09, 0x00, 0x00, 0x00,
0x75, 0x5f, 0x74, 0x65, 0x78, 0x74, 0x75, 0x72, 0x65, 0x00, 0x00, 0x00,
0x05, 0x00, 0x06, 0x00, 0x0a, 0x00, 0x00, 0x00, 0x74, 0x79, 0x70, 0x65,
0x2e, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x72, 0x00, 0x00, 0x00, 0x00,
0x05, 0x00, 0x05, 0x00, 0x0b, 0x00, 0x00, 0x00, 0x75, 0x5f, 0x73, 0x61,
0x6d, 0x70, 0x6c, 0x65, 0x72, 0x00, 0x00, 0x00, 0x05, 0x00, 0x06, 0x00,
0x03, 0x00, 0x00, 0x00, 0x69, 0x6e, 0x2e, 0x76, 0x61, 0x72, 0x2e, 0x43,
0x4f, 0x4c, 0x4f, 0x52, 0x30, 0x00, 0x00, 0x00, 0x05, 0x00, 0x07, 0x00,
0x04, 0x00, 0x00, 0x00, 0x69, 0x6e, 0x2e, 0x76, 0x61, 0x72, 0x2e, 0x54,
0x45, 0x58, 0x43, 0x4f, 0x4f, 0x52, 0x44, 0x30, 0x00, 0x00, 0x00, 0x00,
0x05, 0x00, 0x07, 0x00, 0x05, 0x00, 0x00, 0x00, 0x6f, 0x75, 0x74, 0x2e,
0x76, 0x61, 0x72, 0x2e, 0x53, 0x56, 0x5f, 0x54, 0x61, 0x72, 0x67, 0x65,
0x74, 0x00, 0x00, 0x00, 0x05, 0x00, 0x04, 0x00, 0x02, 0x00, 0x00, 0x00,
0x6d, 0x61, 0x69, 0x6e, 0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x07, 0x00,
0x0c, 0x00, 0x00, 0x00, 0x74, 0x79, 0x70, 0x65, 0x2e, 0x73, 0x61, 0x6d,
0x70, 0x6c, 0x65, 0x64, 0x2e, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x00, 0x00,
0x47, 0x00, 0x04, 0x00, 0x03, 0x00, 0x00, 0x00, 0x1e, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x47, 0x00, 0x04, 0x00, 0x04, 0x00, 0x00, 0x00,
0x1e, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x47, 0x00, 0x04, 0x00,
0x05, 0x00, 0x00, 0x00, 0x1e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x47, 0x00, 0x04, 0x00, 0x07, 0x00, 0x00, 0x00, 0x22, 0x00, 0x00, 0x00,
0x03, 0x00, 0x00, 0x00, 0x47, 0x00, 0x04, 0x00, 0x07, 0x00, 0x00, 0x00,
0x21, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x47, 0x00, 0x04, 0x00,
0x09, 0x00, 0x00, 0x00, 0x22, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00,
0x47, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x21, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x47, 0x00, 0x04, 0x00, 0x0b, 0x00, 0x00, 0x00,
0x22, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x47, 0x00, 0x04, 0x00,
0x0b, 0x00, 0x00, 0x00, 0x21, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x48, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x23, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x47, 0x00, 0x03, 0x00,
0x06, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x15, 0x00, 0x04, 0x00,
0x0d, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
0x16, 0x00, 0x03, 0x00, 0x0e, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00,
0x2b, 0x00, 0x04, 0x00, 0x0e, 0x00, 0x00, 0x00, 0x0f, 0x00, 0x00, 0x00,
0x00, 0x00, 0x80, 0x3f, 0x2b, 0x00, 0x04, 0x00, 0x0d, 0x00, 0x00, 0x00,
0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2b, 0x00, 0x04, 0x00,
0x0e, 0x00, 0x00, 0x00, 0x11, 0x00, 0x00, 0x00, 0xac, 0xc5, 0x27, 0x37,
0x17, 0x00, 0x04, 0x00, 0x12, 0x00, 0x00, 0x00, 0x0e, 0x00, 0x00, 0x00,
0x02, 0x00, 0x00, 0x00, 0x2c, 0x00, 0x05, 0x00, 0x12, 0x00, 0x00, 0x00,
0x13, 0x00, 0x00, 0x00, 0x11, 0x00, 0x00, 0x00, 0x11, 0x00, 0x00, 0x00,
0x2c, 0x00, 0x05, 0x00, 0x12, 0x00, 0x00, 0x00, 0x14, 0x00, 0x00, 0x00,
0x0f, 0x00, 0x00, 0x00, 0x0f, 0x00, 0x00, 0x00, 0x2b, 0x00, 0x04, 0x00,
0x0e, 0x00, 0x00, 0x00, 0x15, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3f,
0x2c, 0x00, 0x05, 0x00, 0x12, 0x00, 0x00, 0x00, 0x16, 0x00, 0x00, 0x00,
0x15, 0x00, 0x00, 0x00, 0x15, 0x00, 0x00, 0x00, 0x17, 0x00, 0x04, 0x00,
0x17, 0x00, 0x00, 0x00, 0x0e, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00,
0x1e, 0x00, 0x03, 0x00, 0x06, 0x00, 0x00, 0x00, 0x17, 0x00, 0x00, 0x00,
0x20, 0x00, 0x04, 0x00, 0x18, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00,
0x06, 0x00, 0x00, 0x00, 0x19, 0x00, 0x09, 0x00, 0x08, 0x00, 0x00, 0x00,
0x0e, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x04, 0x00, 0x19, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x1a, 0x00, 0x02, 0x00,
0x0a, 0x00, 0x00, 0x00, 0x20, 0x00, 0x04, 0x00, 0x1a, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x0a, 0x00, 0x00, 0x00, 0x20, 0x00, 0x04, 0x00,
0x1b, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x17, 0x00, 0x00, 0x00,
0x20, 0x00, 0x04, 0x00, 0x1c, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
0x12, 0x00, 0x00, 0x00, 0x20, 0x00, 0x04, 0x00, 0x1d, 0x00, 0x00, 0x00,
0x03, 0x00, 0x00, 0x00, 0x17, 0x00, 0x00, 0x00, 0x13, 0x00, 0x02, 0x00,
0x1e, 0x00, 0x00, 0x00, 0x21, 0x00, 0x03, 0x00, 0x1f, 0x00, 0x00, 0x00,
0x1e, 0x00, 0x00, 0x00, 0x1b, 0x00, 0x03, 0x00, 0x0c, 0x00, 0x00, 0x00,
0x08, 0x00, 0x00, 0x00, 0x20, 0x00, 0x04, 0x00, 0x20, 0x00, 0x00, 0x00,
0x02, 0x00, 0x00, 0x00, 0x17, 0x00, 0x00, 0x00, 0x3b, 0x00, 0x04, 0x00,
0x18, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00,
0x3b, 0x00, 0x04, 0x00, 0x19, 0x00, 0x00, 0x00, 0x09, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x3b, 0x00, 0x04, 0x00, 0x1a, 0x00, 0x00, 0x00,
0x0b, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3b, 0x00, 0x04, 0x00,
0x1b, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
0x3b, 0x00, 0x04, 0x00, 0x1c, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00,
0x01, 0x00, 0x00, 0x00, 0x3b, 0x00, 0x04, 0x00, 0x1d, 0x00, 0x00, 0x00,
0x05, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x36, 0x00, 0x05, 0x00,
0x1e, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x1f, 0x00, 0x00, 0x00, 0xf8, 0x00, 0x02, 0x00, 0x21, 0x00, 0x00, 0x00,
0x3d, 0x00, 0x04, 0x00, 0x17, 0x00, 0x00, 0x00, 0x22, 0x00, 0x00, 0x00,
0x03, 0x00, 0x00, 0x00, 0x3d, 0x00, 0x04, 0x00, 0x12, 0x00, 0x00, 0x00,
0x23, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0xd1, 0x00, 0x04, 0x00,
0x12, 0x00, 0x00, 0x00, 0x24, 0x00, 0x00, 0x00, 0x23, 0x00, 0x00, 0x00,
0x41, 0x00, 0x05, 0x00, 0x20, 0x00, 0x00, 0x00, 0x25, 0x00, 0x00, 0x00,
0x07, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x3d, 0x00, 0x04, 0x00,
0x17, 0x00, 0x00, 0x00, 0x26, 0x00, 0x00, 0x00, 0x25, 0x00, 0x00, 0x00,
0x4f, 0x00, 0x07, 0x00, 0x12, 0x00, 0x00, 0x00, 0x27, 0x00, 0x00, 0x00,
0x26, 0x00, 0x00, 0x00, 0x26, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00,
0x03, 0x00, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00, 0x12, 0x00, 0x00, 0x00,
0x28, 0x00, 0x00, 0x00, 0x24, 0x00, 0x00, 0x00, 0x27, 0x00, 0x00, 0x00,
0x0c, 0x00, 0x08, 0x00, 0x12, 0x00, 0x00, 0x00, 0x29, 0x00, 0x00, 0x00,
0x01, 0x00, 0x00, 0x00, 0x2b, 0x00, 0x00, 0x00, 0x28, 0x00, 0x00, 0x00,
0x13, 0x00, 0x00, 0x00, 0x14, 0x00, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00,
0x12, 0x00, 0x00, 0x00, 0x2a, 0x00, 0x00, 0x00, 0x23, 0x00, 0x00, 0x00,
0x27, 0x00, 0x00, 0x00, 0x8e, 0x00, 0x05, 0x00, 0x12, 0x00, 0x00, 0x00,
0x2b, 0x00, 0x00, 0x00, 0x29, 0x00, 0x00, 0x00, 0x15, 0x00, 0x00, 0x00,
0x83, 0x00, 0x05, 0x00, 0x12, 0x00, 0x00, 0x00, 0x2c, 0x00, 0x00, 0x00,
0x2a, 0x00, 0x00, 0x00, 0x2b, 0x00, 0x00, 0x00, 0x83, 0x00, 0x05, 0x00,
0x12, 0x00, 0x00, 0x00, 0x2d, 0x00, 0x00, 0x00, 0x14, 0x00, 0x00, 0x00,
0x29, 0x00, 0x00, 0x00, 0x0c, 0x00, 0x06, 0x00, 0x12, 0x00, 0x00, 0x00,
0x2e, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x0a, 0x00, 0x00, 0x00,
0x2c, 0x00, 0x00, 0x00, 0x0c, 0x00, 0x08, 0x00, 0x12, 0x00, 0x00, 0x00,
0x2f, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x31, 0x00, 0x00, 0x00,
0x2d, 0x00, 0x00, 0x00, 0x14, 0x00, 0x00, 0x00, 0x2e, 0x00, 0x00, 0x00,
0x0c, 0x00, 0x06, 0x00, 0x12, 0x00, 0x00, 0x00, 0x30, 0x00, 0x00, 0x00,
0x01, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x2c, 0x00, 0x00, 0x00,
0x81, 0x00, 0x05, 0x00, 0x12, 0x00, 0x00, 0x00, 0x31, 0x00, 0x00, 0x00,
0x30, 0x00, 0x00, 0x00, 0x16, 0x00, 0x00, 0x00, 0x81, 0x00, 0x05, 0x00,
0x12, 0x00, 0x00, 0x00, 0x32, 0x00, 0x00, 0x00, 0x31, 0x00, 0x00, 0x00,
0x2f, 0x00, 0x00, 0x00, 0x4f, 0x00, 0x07, 0x00, 0x12, 0x00, 0x00, 0x00,
0x33, 0x00, 0x00, 0x00, 0x26, 0x00, 0x00, 0x00, 0x26, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00,
0x12, 0x00, 0x00, 0x00, 0x34, 0x00, 0x00, 0x00, 0x32, 0x00, 0x00, 0x00,
0x33, 0x00, 0x00, 0x00, 0x3d, 0x00, 0x04, 0x00, 0x08, 0x00, 0x00, 0x00,
0x35, 0x00, 0x00, 0x00, 0x09, 0x00, 0x00, 0x00, 0x3d, 0x00, 0x04, 0x00,
0x0a, 0x00, 0x00, 0x00, 0x36, 0x00, 0x00, 0x00, 0x0b, 0x00, 0x00, 0x00,
0xcf, 0x00, 0x04, 0x00, 0x12, 0x00, 0x00, 0x00, 0x37, 0x00, 0x00, 0x00,
0x23, 0x00, 0x00, 0x00, 0xd0, 0x00, 0x04, 0x00, 0x12, 0x00, 0x00, 0x00,
0x38, 0x00, 0x00, 0x00, 0x23, 0x00, 0x00, 0x00, 0x56, 0x00, 0x05, 0x00,
0x0c, 0x00, 0x00, 0x00, 0x39, 0x00, 0x00, 0x00, 0x35, 0x00, 0x00, 0x00,
0x36, 0x00, 0x00, 0x00, 0x58, 0x00, 0x08, 0x00, 0x17, 0x00, 0x00, 0x00,
0x3a, 0x00, 0x00, 0x00, 0x39, 0x00, 0x00, 0x00, 0x34, 0x00, 0x00, 0x00,
0x04, 0x00, 0x00, 0x00, 0x37, 0x00, 0x00, 0x00, 0x38, 0x00, 0x00, 0x00,
0x51, 0x00, 0x05, 0x00, 0x0e, 0x00, 0x00, 0x00, 0x3b, 0x00, 0x00, 0x00,
0x3a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x51, 0x00, 0x05, 0x00,
0x0e, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x00, 0x00, 0x3a, 0x00, 0x00, 0x00,
0x01, 0x00, 0x00, 0x00, 0x51, 0x00, 0x05, 0x00, 0x0e, 0x00, 0x00, 0x00,
0x3d, 0x00, 0x00, 0x00, 0x3a, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00,
0x50, 0x00, 0x07, 0x00, 0x17, 0x00, 0x00, 0x00, 0x3e, 0x00, 0x00, 0x00,
0x3b, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x00, 0x00, 0x3d, 0x00, 0x00, 0x00,
0x0f, 0x00, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00, 0x17, 0x00, 0x00, 0x00,
0x3f, 0x00, 0x00, 0x00, 0x3e, 0x00, 0x00, 0x00, 0x22, 0x00, 0x00, 0x00,
0x3e, 0x00, 0x03, 0x00, 0x05, 0x00, 0x00, 0x00, 0x3f, 0x00, 0x00, 0x00,
0xfd, 0x00, 0x01, 0x00, 0x38, 0x00, 0x01, 0x00
};
static const unsigned int texture_rgb_pixelart_frag_spv_len = 1736;

View File

@@ -1,9 +1,9 @@
static const unsigned char texture_rgba_frag_dxil[] = {
0x44, 0x58, 0x42, 0x43, 0x62, 0x3b, 0x7d, 0x43, 0xba, 0x04, 0xbd, 0x2f,
0x58, 0xb0, 0x44, 0xf9, 0x75, 0xb5, 0x45, 0xe3, 0x01, 0x00, 0x00, 0x00,
0x0c, 0x0f, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x00, 0x00,
0x44, 0x58, 0x42, 0x43, 0x2b, 0x94, 0x5f, 0xcd, 0x98, 0x2a, 0x37, 0x41,
0x73, 0x69, 0x67, 0xea, 0xbf, 0xa7, 0x06, 0xfb, 0x01, 0x00, 0x00, 0x00,
0x64, 0x10, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x00, 0x00,
0x4c, 0x00, 0x00, 0x00, 0xa8, 0x00, 0x00, 0x00, 0xe4, 0x00, 0x00, 0x00,
0xd8, 0x01, 0x00, 0x00, 0x34, 0x08, 0x00, 0x00, 0x50, 0x08, 0x00, 0x00,
0xf0, 0x01, 0x00, 0x00, 0xf0, 0x08, 0x00, 0x00, 0x0c, 0x09, 0x00, 0x00,
0x53, 0x46, 0x49, 0x30, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x49, 0x53, 0x47, 0x31, 0x54, 0x00, 0x00, 0x00,
0x02, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
@@ -18,12 +18,14 @@ static const unsigned char texture_rgba_frag_dxil[] = {
0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x53, 0x56, 0x5f, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x00, 0x00, 0x00,
0x50, 0x53, 0x56, 0x30, 0xec, 0x00, 0x00, 0x00, 0x34, 0x00, 0x00, 0x00,
0x50, 0x53, 0x56, 0x30, 0x04, 0x01, 0x00, 0x00, 0x34, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff,
0x00, 0x00, 0x00, 0x00, 0x02, 0x01, 0x00, 0x02, 0x01, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x13, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x00,
0x13, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x00,
0x02, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x0d, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x01, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x0e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x03, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
@@ -38,10 +40,10 @@ static const unsigned char texture_rgba_frag_dxil[] = {
0x01, 0x00, 0x44, 0x10, 0x03, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
0x02, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00,
0x0f, 0x00, 0x00, 0x00, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x53, 0x54, 0x41, 0x54, 0x54, 0x06, 0x00, 0x00,
0x60, 0x00, 0x00, 0x00, 0x95, 0x01, 0x00, 0x00, 0x44, 0x58, 0x49, 0x4c,
0x00, 0x01, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x3c, 0x06, 0x00, 0x00,
0x42, 0x43, 0xc0, 0xde, 0x21, 0x0c, 0x00, 0x00, 0x8c, 0x01, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x53, 0x54, 0x41, 0x54, 0xf8, 0x06, 0x00, 0x00,
0x60, 0x00, 0x00, 0x00, 0xbe, 0x01, 0x00, 0x00, 0x44, 0x58, 0x49, 0x4c,
0x00, 0x01, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0xe0, 0x06, 0x00, 0x00,
0x42, 0x43, 0xc0, 0xde, 0x21, 0x0c, 0x00, 0x00, 0xb5, 0x01, 0x00, 0x00,
0x0b, 0x82, 0x20, 0x00, 0x02, 0x00, 0x00, 0x00, 0x13, 0x00, 0x00, 0x00,
0x07, 0x81, 0x23, 0x91, 0x41, 0xc8, 0x04, 0x49, 0x06, 0x10, 0x32, 0x39,
0x92, 0x01, 0x84, 0x0c, 0x25, 0x05, 0x08, 0x19, 0x1e, 0x04, 0x8b, 0x62,
@@ -54,168 +56,185 @@ static const unsigned char texture_rgba_frag_dxil[] = {
0x84, 0xf0, 0xff, 0xff, 0xff, 0xff, 0x03, 0x20, 0x6d, 0x30, 0x86, 0xff,
0xff, 0xff, 0xff, 0x1f, 0x00, 0x09, 0xa8, 0x00, 0x49, 0x18, 0x00, 0x00,
0x03, 0x00, 0x00, 0x00, 0x13, 0x82, 0x60, 0x42, 0x20, 0x4c, 0x08, 0x06,
0x00, 0x00, 0x00, 0x00, 0x89, 0x20, 0x00, 0x00, 0x43, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x89, 0x20, 0x00, 0x00, 0x4d, 0x00, 0x00, 0x00,
0x32, 0x22, 0x48, 0x09, 0x20, 0x64, 0x85, 0x04, 0x93, 0x22, 0xa4, 0x84,
0x04, 0x93, 0x22, 0xe3, 0x84, 0xa1, 0x90, 0x14, 0x12, 0x4c, 0x8a, 0x8c,
0x0b, 0x84, 0xa4, 0x4c, 0x10, 0x68, 0x23, 0x00, 0x25, 0x00, 0x14, 0x66,
0x0b, 0x84, 0xa4, 0x4c, 0x10, 0x7c, 0x23, 0x00, 0x25, 0x00, 0x14, 0x66,
0x00, 0xe6, 0x08, 0xc0, 0x60, 0x8e, 0x00, 0x29, 0xc6, 0x20, 0x84, 0x14,
0x42, 0xa6, 0x18, 0x80, 0x10, 0x52, 0x06, 0xa1, 0x9b, 0x86, 0xcb, 0x9f,
0xb0, 0x87, 0x90, 0xfc, 0x95, 0x90, 0x56, 0x62, 0xf2, 0x8b, 0xdb, 0x46,
0xc5, 0x18, 0x63, 0x10, 0x2a, 0xf7, 0x0c, 0x97, 0x3f, 0x61, 0x0f, 0x21,
0xf9, 0x21, 0xd0, 0x0c, 0x0b, 0x81, 0x82, 0x55, 0x18, 0x45, 0x18, 0x1b,
0x63, 0x0c, 0x42, 0xc8, 0xa0, 0x36, 0x47, 0x10, 0x14, 0x83, 0x91, 0x42,
0xc8, 0x23, 0x38, 0x10, 0x30, 0x8c, 0x40, 0x0c, 0x33, 0xb5, 0xc1, 0x38,
0xb0, 0x43, 0x38, 0xcc, 0xc3, 0x3c, 0xb8, 0x01, 0x2d, 0x94, 0x03, 0x3e,
0xd0, 0x43, 0x3d, 0xc8, 0x43, 0x39, 0xc8, 0x01, 0x29, 0xf0, 0x81, 0x3d,
0x94, 0xc3, 0x38, 0xd0, 0xc3, 0x3b, 0xc8, 0x03, 0x1f, 0x98, 0x03, 0x3b,
0xbc, 0x43, 0x38, 0xd0, 0x03, 0x1b, 0x80, 0x01, 0x1d, 0xf8, 0x01, 0x18,
0xf8, 0x81, 0x1e, 0xe8, 0x41, 0x3b, 0xa4, 0x03, 0x3c, 0xcc, 0xc3, 0x2f,
0xd0, 0x43, 0x3e, 0xc0, 0x43, 0x39, 0xa0, 0x80, 0xcc, 0x24, 0x06, 0xe3,
0xc0, 0x0e, 0xe1, 0x30, 0x0f, 0xf3, 0xe0, 0x06, 0xb4, 0x50, 0x0e, 0xf8,
0x40, 0x0f, 0xf5, 0x20, 0x0f, 0xe5, 0x20, 0x07, 0xa4, 0xc0, 0x07, 0xf6,
0x50, 0x0e, 0xe3, 0x40, 0x0f, 0xef, 0x20, 0x0f, 0x7c, 0x60, 0x0e, 0xec,
0xf0, 0x0e, 0xe1, 0x40, 0x0f, 0x6c, 0x00, 0x06, 0x74, 0xe0, 0x07, 0x60,
0xe0, 0x07, 0x48, 0x98, 0x94, 0xea, 0x4d, 0xd2, 0x14, 0x51, 0xc2, 0xe4,
0xb3, 0x00, 0xf3, 0x2c, 0x44, 0xc4, 0x4e, 0xc0, 0x44, 0xa0, 0x80, 0xd0,
0x4d, 0x04, 0x02, 0x00, 0x13, 0x14, 0x72, 0xc0, 0x87, 0x74, 0x60, 0x87,
0x36, 0x68, 0x87, 0x79, 0x68, 0x03, 0x72, 0xc0, 0x87, 0x0d, 0xaf, 0x50,
0x0e, 0x6d, 0xd0, 0x0e, 0x7a, 0x50, 0x0e, 0x6d, 0x00, 0x0f, 0x7a, 0x30,
0x07, 0x72, 0xa0, 0x07, 0x73, 0x20, 0x07, 0x6d, 0x90, 0x0e, 0x71, 0xa0,
0x07, 0x73, 0x20, 0x07, 0x6d, 0x90, 0x0e, 0x78, 0xa0, 0x07, 0x73, 0x20,
0x07, 0x6d, 0x90, 0x0e, 0x71, 0x60, 0x07, 0x7a, 0x30, 0x07, 0x72, 0xd0,
0x06, 0xe9, 0x30, 0x07, 0x72, 0xa0, 0x07, 0x73, 0x20, 0x07, 0x6d, 0x90,
0x0e, 0x76, 0x40, 0x07, 0x7a, 0x60, 0x07, 0x74, 0xd0, 0x06, 0xe6, 0x10,
0x07, 0x76, 0xa0, 0x07, 0x73, 0x20, 0x07, 0x6d, 0x60, 0x0e, 0x73, 0x20,
0x07, 0x7a, 0x30, 0x07, 0x72, 0xd0, 0x06, 0xe6, 0x60, 0x07, 0x74, 0xa0,
0x07, 0x76, 0x40, 0x07, 0x6d, 0xe0, 0x0e, 0x78, 0xa0, 0x07, 0x71, 0x60,
0x07, 0x7a, 0x30, 0x07, 0x72, 0xa0, 0x07, 0x76, 0x40, 0x07, 0x43, 0x9e,
0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x86,
0x3c, 0x06, 0x10, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x0c, 0x79, 0x10, 0x20, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x18, 0xf2, 0x34, 0x40, 0x00, 0x0c, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x30, 0xe4, 0x81, 0x80, 0x00, 0x18, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x20, 0x0b, 0x04, 0x00, 0x00, 0x0e, 0x00, 0x00, 0x00,
0x32, 0x1e, 0x98, 0x14, 0x19, 0x11, 0x4c, 0x90, 0x8c, 0x09, 0x26, 0x47,
0xc6, 0x04, 0x43, 0x22, 0x25, 0x30, 0x02, 0x50, 0x0c, 0x45, 0x50, 0x12,
0x65, 0x50, 0x1e, 0x85, 0x50, 0x2c, 0x54, 0x4a, 0x62, 0x04, 0xa0, 0x08,
0x0a, 0xa1, 0x40, 0xc8, 0xce, 0x00, 0x10, 0x9e, 0x01, 0xa0, 0x3c, 0x16,
0x62, 0x10, 0x81, 0x40, 0x20, 0xcf, 0x03, 0x00, 0x79, 0x18, 0x00, 0x00,
0x7a, 0x00, 0x00, 0x00, 0x1a, 0x03, 0x4c, 0x90, 0x46, 0x02, 0x13, 0x44,
0x63, 0x0c, 0x42, 0xc8, 0xa0, 0x76, 0xd4, 0x70, 0xf9, 0x13, 0xf6, 0x10,
0x92, 0xcf, 0x6d, 0x54, 0xb1, 0x12, 0x93, 0x5f, 0xdc, 0x36, 0x22, 0xc6,
0x18, 0xa3, 0x10, 0x8f, 0x30, 0x42, 0x70, 0x8e, 0x20, 0x28, 0x06, 0x23,
0x85, 0x10, 0x49, 0x73, 0x20, 0x60, 0x18, 0x81, 0x18, 0x66, 0x6a, 0x83,
0x71, 0x60, 0x87, 0x70, 0x98, 0x87, 0x79, 0x70, 0x03, 0x5a, 0x28, 0x07,
0x7c, 0xa0, 0x87, 0x7a, 0x90, 0x87, 0x72, 0x90, 0x03, 0x52, 0xe0, 0x03,
0x7b, 0x28, 0x87, 0x71, 0xa0, 0x87, 0x77, 0x90, 0x07, 0x3e, 0x30, 0x07,
0x76, 0x78, 0x87, 0x70, 0xa0, 0x07, 0x36, 0x00, 0x03, 0x3a, 0xf0, 0x03,
0x30, 0xf0, 0x03, 0x3d, 0xd0, 0x83, 0x76, 0x48, 0x07, 0x78, 0x98, 0x87,
0x5f, 0xa0, 0x87, 0x7c, 0x80, 0x87, 0x72, 0x40, 0x01, 0x99, 0x49, 0x0c,
0xc6, 0x81, 0x1d, 0xc2, 0x61, 0x1e, 0xe6, 0xc1, 0x0d, 0x68, 0xa1, 0x1c,
0xf0, 0x81, 0x1e, 0xea, 0x41, 0x1e, 0xca, 0x41, 0x0e, 0x48, 0x81, 0x0f,
0xec, 0xa1, 0x1c, 0xc6, 0x81, 0x1e, 0xde, 0x41, 0x1e, 0xf8, 0xc0, 0x1c,
0xd8, 0xe1, 0x1d, 0xc2, 0x81, 0x1e, 0xd8, 0x00, 0x0c, 0xe8, 0xc0, 0x0f,
0xc0, 0xc0, 0x0f, 0x90, 0x60, 0x2f, 0xe1, 0x73, 0x26, 0xec, 0x21, 0x7e,
0xce, 0x69, 0xa4, 0x09, 0x68, 0x26, 0x09, 0x05, 0x83, 0xf4, 0x4d, 0xd2,
0x14, 0x51, 0xc2, 0xe4, 0xb3, 0x00, 0xf3, 0x2c, 0x44, 0xc4, 0x4e, 0xc0,
0x44, 0xa0, 0x80, 0x10, 0x4f, 0x04, 0x02, 0x00, 0x13, 0x14, 0x72, 0xc0,
0x87, 0x74, 0x60, 0x87, 0x36, 0x68, 0x87, 0x79, 0x68, 0x03, 0x72, 0xc0,
0x87, 0x0d, 0xaf, 0x50, 0x0e, 0x6d, 0xd0, 0x0e, 0x7a, 0x50, 0x0e, 0x6d,
0x00, 0x0f, 0x7a, 0x30, 0x07, 0x72, 0xa0, 0x07, 0x73, 0x20, 0x07, 0x6d,
0x90, 0x0e, 0x71, 0xa0, 0x07, 0x73, 0x20, 0x07, 0x6d, 0x90, 0x0e, 0x78,
0xa0, 0x07, 0x73, 0x20, 0x07, 0x6d, 0x90, 0x0e, 0x71, 0x60, 0x07, 0x7a,
0x30, 0x07, 0x72, 0xd0, 0x06, 0xe9, 0x30, 0x07, 0x72, 0xa0, 0x07, 0x73,
0x20, 0x07, 0x6d, 0x90, 0x0e, 0x76, 0x40, 0x07, 0x7a, 0x60, 0x07, 0x74,
0xd0, 0x06, 0xe6, 0x10, 0x07, 0x76, 0xa0, 0x07, 0x73, 0x20, 0x07, 0x6d,
0x60, 0x0e, 0x73, 0x20, 0x07, 0x7a, 0x30, 0x07, 0x72, 0xd0, 0x06, 0xe6,
0x60, 0x07, 0x74, 0xa0, 0x07, 0x76, 0x40, 0x07, 0x6d, 0xe0, 0x0e, 0x78,
0xa0, 0x07, 0x71, 0x60, 0x07, 0x7a, 0x30, 0x07, 0x72, 0xa0, 0x07, 0x76,
0x40, 0x07, 0x43, 0x9e, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x86, 0x3c, 0x06, 0x10, 0x00, 0x01, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x0c, 0x79, 0x10, 0x20, 0x00, 0x04, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0xf2, 0x34, 0x40, 0x00, 0x0c, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0xe4, 0x81, 0x80, 0x00, 0x18,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x60, 0xc8, 0x33, 0x01, 0x01,
0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x16, 0x08, 0x00,
0x10, 0x00, 0x00, 0x00, 0x32, 0x1e, 0x98, 0x14, 0x19, 0x11, 0x4c, 0x90,
0x8c, 0x09, 0x26, 0x47, 0xc6, 0x04, 0x43, 0x22, 0x25, 0x30, 0x02, 0x50,
0x0c, 0x45, 0x50, 0x12, 0x65, 0x50, 0x08, 0xe5, 0x50, 0x1e, 0x85, 0x43,
0xa5, 0x24, 0x46, 0x00, 0x8a, 0xa0, 0x10, 0x0a, 0x84, 0xf2, 0x0c, 0x00,
0xe9, 0x19, 0x00, 0xda, 0x33, 0x00, 0xd4, 0x67, 0x00, 0xc8, 0x8f, 0x85,
0x18, 0x44, 0x20, 0x10, 0xc8, 0xf3, 0x00, 0x00, 0x79, 0x18, 0x00, 0x00,
0x8e, 0x00, 0x00, 0x00, 0x1a, 0x03, 0x4c, 0x90, 0x46, 0x02, 0x13, 0x44,
0x8f, 0x0c, 0x6f, 0xec, 0xed, 0x4d, 0x0c, 0x24, 0xc6, 0x05, 0xc7, 0x45,
0xa6, 0x06, 0xa6, 0xc6, 0x45, 0x06, 0x07, 0x04, 0x25, 0xa7, 0xcc, 0x4c,
0x4c, 0xcc, 0x66, 0x6c, 0x46, 0x26, 0x65, 0x43, 0x10, 0x4c, 0x10, 0x88,
0x62, 0x82, 0x40, 0x18, 0x1b, 0x84, 0x81, 0xd8, 0x20, 0x10, 0x04, 0x05,
0xb8, 0xb9, 0x09, 0x02, 0x71, 0x6c, 0x18, 0x0e, 0x84, 0x98, 0x20, 0x58,
0x13, 0x93, 0xba, 0x2f, 0xba, 0x32, 0x3c, 0xba, 0x3a, 0xb9, 0xb2, 0x09,
0x02, 0x81, 0x4c, 0x10, 0x88, 0x64, 0x83, 0x40, 0x34, 0x1b, 0x12, 0x42,
0x59, 0x18, 0x62, 0x60, 0x08, 0x67, 0x43, 0xf0, 0x4c, 0x10, 0x30, 0x8a,
0x49, 0xdd, 0xd7, 0x5c, 0x58, 0x1b, 0x1c, 0x5b, 0x99, 0xdc, 0x06, 0x84,
0x88, 0x24, 0x86, 0x18, 0x08, 0x60, 0x43, 0x30, 0x6d, 0x20, 0x20, 0x00,
0xa0, 0x26, 0x08, 0x02, 0xb0, 0x01, 0xd8, 0x30, 0x10, 0xd7, 0xb5, 0x21,
0xc0, 0x36, 0x0c, 0x83, 0x95, 0x4d, 0x10, 0xb2, 0x6a, 0x43, 0xb0, 0x91,
0x68, 0x0b, 0x4b, 0x73, 0x23, 0x42, 0x55, 0x84, 0x35, 0xf4, 0xf4, 0x24,
0x45, 0x34, 0x41, 0x28, 0x9c, 0x09, 0x42, 0xf1, 0x6c, 0x08, 0x88, 0x09,
0x42, 0x01, 0x4d, 0x10, 0x8a, 0x68, 0x82, 0x40, 0x28, 0x13, 0x04, 0x62,
0xd9, 0x20, 0x90, 0x41, 0x19, 0x6c, 0x58, 0x08, 0xef, 0x03, 0x83, 0x30,
0x10, 0x83, 0x61, 0x0c, 0x08, 0x30, 0x30, 0x83, 0x0d, 0xc1, 0xb0, 0x41,
0x20, 0x03, 0x32, 0xd8, 0xb0, 0x0c, 0xde, 0x07, 0x06, 0x68, 0x20, 0x06,
0x83, 0x18, 0x0c, 0x60, 0x90, 0x06, 0x1b, 0x84, 0x33, 0x50, 0x03, 0x26,
0x53, 0x56, 0x5f, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x13, 0x84, 0x42,
0xda, 0xb0, 0x10, 0x6c, 0xf0, 0xb5, 0x41, 0x18, 0x80, 0xc1, 0x30, 0x06,
0x04, 0x18, 0x98, 0xc1, 0x86, 0xc0, 0x0d, 0x36, 0x0c, 0x6b, 0xf0, 0x06,
0xc0, 0x86, 0xc2, 0xea, 0xe0, 0xa0, 0x02, 0x68, 0x98, 0xb1, 0xbd, 0x85,
0xd1, 0xcd, 0x4d, 0x10, 0x08, 0x86, 0x45, 0x9a, 0xdb, 0x1c, 0xdd, 0xdc,
0x04, 0x81, 0x68, 0x68, 0xcc, 0xa5, 0x9d, 0x7d, 0xb1, 0x91, 0xd1, 0x98,
0x4b, 0x3b, 0xfb, 0x9a, 0xa3, 0x23, 0x42, 0x57, 0x86, 0xf7, 0xe5, 0xf6,
0x26, 0xd7, 0xb6, 0x41, 0x91, 0x83, 0x39, 0xa0, 0x83, 0x3a, 0xb0, 0x03,
0xe4, 0x0e, 0xe6, 0x00, 0x0f, 0x86, 0x2a, 0x6c, 0x6c, 0x76, 0x6d, 0x2e,
0x69, 0x64, 0x65, 0x6e, 0x74, 0x53, 0x82, 0xa0, 0x0a, 0x19, 0x9e, 0x8b,
0x5d, 0x99, 0xdc, 0x5c, 0xda, 0x9b, 0xdb, 0x94, 0x80, 0x68, 0x42, 0x86,
0xe7, 0x62, 0x17, 0xc6, 0x66, 0x57, 0x26, 0x37, 0x25, 0x28, 0xea, 0x90,
0xe1, 0xb9, 0xcc, 0xa1, 0x85, 0x91, 0x95, 0xc9, 0x35, 0xbd, 0x91, 0x95,
0xb1, 0x4d, 0x09, 0x90, 0x32, 0x64, 0x78, 0x2e, 0x72, 0x65, 0x73, 0x6f,
0x75, 0x72, 0x63, 0x65, 0x73, 0x53, 0x02, 0xaa, 0x12, 0x19, 0x9e, 0x0b,
0x5d, 0x1e, 0x5c, 0x59, 0x90, 0x9b, 0xdb, 0x1b, 0x5d, 0x18, 0x5d, 0xda,
0x9b, 0xdb, 0xdc, 0x94, 0x20, 0xab, 0x43, 0x86, 0xe7, 0x62, 0x97, 0x56,
0x76, 0x97, 0x44, 0x36, 0x45, 0x17, 0x46, 0x57, 0x36, 0x25, 0xd8, 0xea,
0x90, 0xe1, 0xb9, 0x94, 0xb9, 0xd1, 0xc9, 0xe5, 0x41, 0xbd, 0xa5, 0xb9,
0xd1, 0xcd, 0x4d, 0x09, 0xe0, 0xa0, 0x0b, 0x19, 0x9e, 0xcb, 0xd8, 0x5b,
0x9d, 0x1b, 0x5d, 0x99, 0xdc, 0xdc, 0x94, 0x00, 0x0f, 0x00, 0x00, 0x00,
0x79, 0x18, 0x00, 0x00, 0x4c, 0x00, 0x00, 0x00, 0x33, 0x08, 0x80, 0x1c,
0xc4, 0xe1, 0x1c, 0x66, 0x14, 0x01, 0x3d, 0x88, 0x43, 0x38, 0x84, 0xc3,
0x8c, 0x42, 0x80, 0x07, 0x79, 0x78, 0x07, 0x73, 0x98, 0x71, 0x0c, 0xe6,
0x00, 0x0f, 0xed, 0x10, 0x0e, 0xf4, 0x80, 0x0e, 0x33, 0x0c, 0x42, 0x1e,
0xc2, 0xc1, 0x1d, 0xce, 0xa1, 0x1c, 0x66, 0x30, 0x05, 0x3d, 0x88, 0x43,
0x38, 0x84, 0x83, 0x1b, 0xcc, 0x03, 0x3d, 0xc8, 0x43, 0x3d, 0x8c, 0x03,
0x3d, 0xcc, 0x78, 0x8c, 0x74, 0x70, 0x07, 0x7b, 0x08, 0x07, 0x79, 0x48,
0x87, 0x70, 0x70, 0x07, 0x7a, 0x70, 0x03, 0x76, 0x78, 0x87, 0x70, 0x20,
0x87, 0x19, 0xcc, 0x11, 0x0e, 0xec, 0x90, 0x0e, 0xe1, 0x30, 0x0f, 0x6e,
0x30, 0x0f, 0xe3, 0xf0, 0x0e, 0xf0, 0x50, 0x0e, 0x33, 0x10, 0xc4, 0x1d,
0xde, 0x21, 0x1c, 0xd8, 0x21, 0x1d, 0xc2, 0x61, 0x1e, 0x66, 0x30, 0x89,
0x3b, 0xbc, 0x83, 0x3b, 0xd0, 0x43, 0x39, 0xb4, 0x03, 0x3c, 0xbc, 0x83,
0x3c, 0x84, 0x03, 0x3b, 0xcc, 0xf0, 0x14, 0x76, 0x60, 0x07, 0x7b, 0x68,
0x07, 0x37, 0x68, 0x87, 0x72, 0x68, 0x07, 0x37, 0x80, 0x87, 0x70, 0x90,
0x87, 0x70, 0x60, 0x07, 0x76, 0x28, 0x07, 0x76, 0xf8, 0x05, 0x76, 0x78,
0x87, 0x77, 0x80, 0x87, 0x5f, 0x08, 0x87, 0x71, 0x18, 0x87, 0x72, 0x98,
0x87, 0x79, 0x98, 0x81, 0x2c, 0xee, 0xf0, 0x0e, 0xee, 0xe0, 0x0e, 0xf5,
0xc0, 0x0e, 0xec, 0x30, 0x03, 0x62, 0xc8, 0xa1, 0x1c, 0xe4, 0xa1, 0x1c,
0xcc, 0xa1, 0x1c, 0xe4, 0xa1, 0x1c, 0xdc, 0x61, 0x1c, 0xca, 0x21, 0x1c,
0xc4, 0x81, 0x1d, 0xca, 0x61, 0x06, 0xd6, 0x90, 0x43, 0x39, 0xc8, 0x43,
0x39, 0x98, 0x43, 0x39, 0xc8, 0x43, 0x39, 0xb8, 0xc3, 0x38, 0x94, 0x43,
0x38, 0x88, 0x03, 0x3b, 0x94, 0xc3, 0x2f, 0xbc, 0x83, 0x3c, 0xfc, 0x82,
0x3b, 0xd4, 0x03, 0x3b, 0xb0, 0xc3, 0x8c, 0xc8, 0x21, 0x07, 0x7c, 0x70,
0x03, 0x72, 0x10, 0x87, 0x73, 0x70, 0x03, 0x7b, 0x08, 0x07, 0x79, 0x60,
0x87, 0x70, 0xc8, 0x87, 0x77, 0xa8, 0x07, 0x7a, 0x98, 0x81, 0x3c, 0xe4,
0x80, 0x0f, 0x6e, 0x40, 0x0f, 0xe5, 0xd0, 0x0e, 0xf0, 0x00, 0x00, 0x00,
0x71, 0x20, 0x00, 0x00, 0x12, 0x00, 0x00, 0x00, 0x46, 0x20, 0x0d, 0x97,
0xef, 0x3c, 0xbe, 0x10, 0x11, 0xc0, 0x44, 0x84, 0x40, 0x33, 0x2c, 0x84,
0x05, 0x4c, 0xc3, 0xe5, 0x3b, 0x8f, 0xbf, 0x38, 0xc0, 0x20, 0x36, 0x0f,
0x35, 0xf9, 0xc5, 0x6d, 0xdb, 0x00, 0x34, 0x5c, 0xbe, 0xf3, 0xf8, 0x12,
0xc0, 0x3c, 0x0b, 0xe1, 0x17, 0xb7, 0x6d, 0x02, 0xd5, 0x70, 0xf9, 0xce,
0xe3, 0x4b, 0x93, 0x13, 0x11, 0x28, 0x35, 0x3d, 0xd4, 0xe4, 0x17, 0xb7,
0x6d, 0x00, 0x04, 0x03, 0x20, 0x0d, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x48, 0x41, 0x53, 0x48, 0x14, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x48, 0x75, 0xb4, 0xc1, 0x62, 0x05, 0x2f, 0xdc, 0xc4, 0xd5, 0x60, 0x2b,
0x9d, 0x56, 0xf2, 0x75, 0x44, 0x58, 0x49, 0x4c, 0xb4, 0x06, 0x00, 0x00,
0x60, 0x00, 0x00, 0x00, 0xad, 0x01, 0x00, 0x00, 0x44, 0x58, 0x49, 0x4c,
0x00, 0x01, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x9c, 0x06, 0x00, 0x00,
0x42, 0x43, 0xc0, 0xde, 0x21, 0x0c, 0x00, 0x00, 0xa4, 0x01, 0x00, 0x00,
0x0b, 0x82, 0x20, 0x00, 0x02, 0x00, 0x00, 0x00, 0x13, 0x00, 0x00, 0x00,
0x07, 0x81, 0x23, 0x91, 0x41, 0xc8, 0x04, 0x49, 0x06, 0x10, 0x32, 0x39,
0x92, 0x01, 0x84, 0x0c, 0x25, 0x05, 0x08, 0x19, 0x1e, 0x04, 0x8b, 0x62,
0x80, 0x14, 0x45, 0x02, 0x42, 0x92, 0x0b, 0x42, 0xa4, 0x10, 0x32, 0x14,
0x38, 0x08, 0x18, 0x4b, 0x0a, 0x32, 0x52, 0x88, 0x48, 0x90, 0x14, 0x20,
0x43, 0x46, 0x88, 0xa5, 0x00, 0x19, 0x32, 0x42, 0xe4, 0x48, 0x0e, 0x90,
0x91, 0x22, 0xc4, 0x50, 0x41, 0x51, 0x81, 0x8c, 0xe1, 0x83, 0xe5, 0x8a,
0x04, 0x29, 0x46, 0x06, 0x51, 0x18, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00,
0x1b, 0x8c, 0xe0, 0xff, 0xff, 0xff, 0xff, 0x07, 0x40, 0x02, 0xa8, 0x0d,
0x84, 0xf0, 0xff, 0xff, 0xff, 0xff, 0x03, 0x20, 0x6d, 0x30, 0x86, 0xff,
0xff, 0xff, 0xff, 0x1f, 0x00, 0x09, 0xa8, 0x00, 0x49, 0x18, 0x00, 0x00,
0x03, 0x00, 0x00, 0x00, 0x13, 0x82, 0x60, 0x42, 0x20, 0x4c, 0x08, 0x06,
0x00, 0x00, 0x00, 0x00, 0x89, 0x20, 0x00, 0x00, 0x43, 0x00, 0x00, 0x00,
0x32, 0x22, 0x48, 0x09, 0x20, 0x64, 0x85, 0x04, 0x93, 0x22, 0xa4, 0x84,
0x04, 0x93, 0x22, 0xe3, 0x84, 0xa1, 0x90, 0x14, 0x12, 0x4c, 0x8a, 0x8c,
0x0b, 0x84, 0xa4, 0x4c, 0x10, 0x68, 0x23, 0x00, 0x25, 0x00, 0x14, 0x66,
0x00, 0xe6, 0x08, 0xc0, 0x60, 0x8e, 0x00, 0x29, 0xc6, 0x20, 0x84, 0x14,
0x42, 0xa6, 0x18, 0x80, 0x10, 0x52, 0x06, 0xa1, 0x9b, 0x86, 0xcb, 0x9f,
0xb0, 0x87, 0x90, 0xfc, 0x95, 0x90, 0x56, 0x62, 0xf2, 0x8b, 0xdb, 0x46,
0xc5, 0x18, 0x63, 0x10, 0x2a, 0xf7, 0x0c, 0x97, 0x3f, 0x61, 0x0f, 0x21,
0xf9, 0x21, 0xd0, 0x0c, 0x0b, 0x81, 0x82, 0x55, 0x18, 0x45, 0x18, 0x1b,
0x63, 0x0c, 0x42, 0xc8, 0xa0, 0x36, 0x47, 0x10, 0x14, 0x83, 0x91, 0x42,
0xc8, 0x23, 0x38, 0x10, 0x30, 0x8c, 0x40, 0x0c, 0x33, 0xb5, 0xc1, 0x38,
0xb0, 0x43, 0x38, 0xcc, 0xc3, 0x3c, 0xb8, 0x01, 0x2d, 0x94, 0x03, 0x3e,
0xd0, 0x43, 0x3d, 0xc8, 0x43, 0x39, 0xc8, 0x01, 0x29, 0xf0, 0x81, 0x3d,
0x94, 0xc3, 0x38, 0xd0, 0xc3, 0x3b, 0xc8, 0x03, 0x1f, 0x98, 0x03, 0x3b,
0xbc, 0x43, 0x38, 0xd0, 0x03, 0x1b, 0x80, 0x01, 0x1d, 0xf8, 0x01, 0x18,
0xf8, 0x81, 0x1e, 0xe8, 0x41, 0x3b, 0xa4, 0x03, 0x3c, 0xcc, 0xc3, 0x2f,
0xd0, 0x43, 0x3e, 0xc0, 0x43, 0x39, 0xa0, 0x80, 0xcc, 0x24, 0x06, 0xe3,
0xc0, 0x0e, 0xe1, 0x30, 0x0f, 0xf3, 0xe0, 0x06, 0xb4, 0x50, 0x0e, 0xf8,
0x40, 0x0f, 0xf5, 0x20, 0x0f, 0xe5, 0x20, 0x07, 0xa4, 0xc0, 0x07, 0xf6,
0x50, 0x0e, 0xe3, 0x40, 0x0f, 0xef, 0x20, 0x0f, 0x7c, 0x60, 0x0e, 0xec,
0xf0, 0x0e, 0xe1, 0x40, 0x0f, 0x6c, 0x00, 0x06, 0x74, 0xe0, 0x07, 0x60,
0xe0, 0x07, 0x48, 0x98, 0x94, 0xea, 0x4d, 0xd2, 0x14, 0x51, 0xc2, 0xe4,
0xb3, 0x00, 0xf3, 0x2c, 0x44, 0xc4, 0x4e, 0xc0, 0x44, 0xa0, 0x80, 0xd0,
0x4d, 0x04, 0x02, 0x00, 0x13, 0x14, 0x72, 0xc0, 0x87, 0x74, 0x60, 0x87,
0x4c, 0xcc, 0x66, 0x6c, 0x46, 0x26, 0x65, 0x43, 0x10, 0x4c, 0x10, 0x08,
0x63, 0x82, 0x40, 0x1c, 0x1b, 0x84, 0x81, 0xd8, 0x20, 0x10, 0x04, 0x05,
0xb8, 0xb9, 0x09, 0x02, 0x81, 0x6c, 0x18, 0x0e, 0x84, 0x98, 0x20, 0x64,
0x15, 0x93, 0xba, 0x2f, 0xba, 0x32, 0x3c, 0xba, 0x3a, 0xb9, 0xb2, 0x09,
0x02, 0x91, 0x4c, 0x10, 0x08, 0x65, 0x83, 0x40, 0x34, 0x1b, 0x12, 0x42,
0x59, 0x18, 0x62, 0x60, 0x08, 0x67, 0x43, 0xf0, 0x4c, 0x10, 0xb6, 0x8b,
0x0e, 0x5d, 0x1e, 0x5c, 0xd9, 0xd7, 0xd0, 0x9b, 0xdb, 0x1c, 0x5d, 0x98,
0x1b, 0xdd, 0xdc, 0x04, 0x81, 0x58, 0x26, 0x08, 0x04, 0xb3, 0x01, 0x21,
0x22, 0x69, 0x22, 0x06, 0x0a, 0xd8, 0x10, 0x54, 0x13, 0x84, 0x0e, 0x63,
0x52, 0xf7, 0x35, 0x17, 0xd6, 0x06, 0xc7, 0x56, 0x26, 0xb7, 0x01, 0x21,
0x2e, 0x8c, 0x21, 0x06, 0x02, 0xd8, 0x10, 0x64, 0x1b, 0x08, 0x08, 0xb0,
0xb4, 0x09, 0x82, 0x66, 0xb1, 0x1a, 0x7a, 0x73, 0x9b, 0xa3, 0x0b, 0x73,
0xa3, 0x9b, 0xfb, 0x1a, 0x7b, 0x63, 0x7b, 0x93, 0xfb, 0x9a, 0x1b, 0x0b,
0x63, 0x2b, 0x9b, 0x20, 0x10, 0xcd, 0x06, 0x03, 0xe9, 0x26, 0xc2, 0x6b,
0x36, 0x08, 0xd4, 0xb7, 0x61, 0x20, 0x38, 0x30, 0x98, 0x20, 0x08, 0xc0,
0x06, 0x60, 0xc3, 0x40, 0x8c, 0xc1, 0x18, 0x6c, 0x08, 0xc8, 0x60, 0xc3,
0x30, 0x88, 0x41, 0x19, 0x4c, 0x10, 0xbc, 0x6c, 0x43, 0x70, 0x06, 0x24,
0xda, 0xc2, 0xd2, 0xdc, 0x88, 0x50, 0x15, 0x61, 0x0d, 0x3d, 0x3d, 0x49,
0x11, 0x4d, 0x10, 0x0a, 0x68, 0x82, 0x50, 0x44, 0x1b, 0x02, 0x62, 0x82,
0x50, 0x48, 0x13, 0x84, 0x62, 0x9a, 0x20, 0x10, 0xce, 0x06, 0x61, 0x82,
0x83, 0x0d, 0x0b, 0xa1, 0x06, 0x6b, 0xc0, 0x06, 0x6d, 0xe0, 0x06, 0xc3,
0x1b, 0x10, 0x6c, 0x10, 0x07, 0x1b, 0x82, 0x61, 0x83, 0x30, 0x4d, 0x1b,
0x96, 0x41, 0x0d, 0xd6, 0x80, 0x0d, 0xe6, 0xc0, 0x0d, 0x06, 0x37, 0x18,
0xd8, 0x80, 0x0e, 0x36, 0x08, 0x72, 0x50, 0x07, 0x4c, 0xa6, 0xac, 0xbe,
0xa8, 0xc2, 0xe4, 0xce, 0xca, 0xe8, 0x26, 0x08, 0x05, 0xb5, 0x61, 0x21,
0xee, 0x60, 0x0d, 0xf0, 0xa0, 0x0d, 0xd8, 0x60, 0x78, 0x03, 0x82, 0x0d,
0xe2, 0x60, 0x43, 0x90, 0x07, 0x1b, 0x06, 0x3b, 0xd0, 0x03, 0x60, 0x43,
0x21, 0x06, 0x69, 0xb0, 0x07, 0x1b, 0x40, 0xc3, 0x8c, 0xed, 0x2d, 0x8c,
0x6e, 0x8e, 0x45, 0x9a, 0xdb, 0x1c, 0xdd, 0xdc, 0x04, 0x81, 0x78, 0x68,
0xcc, 0xa5, 0x9d, 0x7d, 0xb1, 0x91, 0xd1, 0x98, 0x4b, 0x3b, 0xfb, 0x9a,
0xa3, 0x23, 0x42, 0x57, 0x86, 0xf7, 0xe5, 0xf6, 0x26, 0xd7, 0xb6, 0x41,
0xe9, 0x03, 0xcf, 0x0f, 0xfe, 0x00, 0x14, 0x90, 0x50, 0xa0, 0x44, 0x61,
0xa8, 0xc2, 0xc6, 0x66, 0xd7, 0xe6, 0x92, 0x46, 0x56, 0xe6, 0x46, 0x37,
0x25, 0x08, 0xaa, 0x90, 0xe1, 0xb9, 0xd8, 0x95, 0xc9, 0xcd, 0xa5, 0xbd,
0xb9, 0x4d, 0x09, 0x88, 0x26, 0x64, 0x78, 0x2e, 0x76, 0x61, 0x6c, 0x76,
0x65, 0x72, 0x53, 0x82, 0xa2, 0x0e, 0x19, 0x9e, 0xcb, 0x1c, 0x5a, 0x18,
0x59, 0x99, 0x5c, 0xd3, 0x1b, 0x59, 0x19, 0xdb, 0x94, 0x00, 0x29, 0x43,
0x86, 0xe7, 0x22, 0x57, 0x36, 0xf7, 0x56, 0x27, 0x37, 0x56, 0x36, 0x37,
0x25, 0xd0, 0x2a, 0x91, 0xe1, 0xb9, 0xd0, 0xe5, 0xc1, 0x95, 0x05, 0xb9,
0xb9, 0xbd, 0xd1, 0x85, 0xd1, 0xa5, 0xbd, 0xb9, 0xcd, 0x4d, 0x11, 0xc0,
0xa0, 0x0c, 0xea, 0x90, 0xe1, 0xb9, 0xd8, 0xa5, 0x95, 0xdd, 0x25, 0x91,
0x4d, 0xd1, 0x85, 0xd1, 0x95, 0x4d, 0x09, 0xce, 0xa0, 0x0e, 0x19, 0x9e,
0x4b, 0x99, 0x1b, 0x9d, 0x5c, 0x1e, 0xd4, 0x5b, 0x9a, 0x1b, 0xdd, 0xdc,
0x94, 0x60, 0x0f, 0xba, 0x90, 0xe1, 0xb9, 0x8c, 0xbd, 0xd5, 0xb9, 0xd1,
0x95, 0xc9, 0xcd, 0x4d, 0x09, 0x44, 0x01, 0x00, 0x79, 0x18, 0x00, 0x00,
0x4c, 0x00, 0x00, 0x00, 0x33, 0x08, 0x80, 0x1c, 0xc4, 0xe1, 0x1c, 0x66,
0x14, 0x01, 0x3d, 0x88, 0x43, 0x38, 0x84, 0xc3, 0x8c, 0x42, 0x80, 0x07,
0x79, 0x78, 0x07, 0x73, 0x98, 0x71, 0x0c, 0xe6, 0x00, 0x0f, 0xed, 0x10,
0x0e, 0xf4, 0x80, 0x0e, 0x33, 0x0c, 0x42, 0x1e, 0xc2, 0xc1, 0x1d, 0xce,
0xa1, 0x1c, 0x66, 0x30, 0x05, 0x3d, 0x88, 0x43, 0x38, 0x84, 0x83, 0x1b,
0xcc, 0x03, 0x3d, 0xc8, 0x43, 0x3d, 0x8c, 0x03, 0x3d, 0xcc, 0x78, 0x8c,
0x74, 0x70, 0x07, 0x7b, 0x08, 0x07, 0x79, 0x48, 0x87, 0x70, 0x70, 0x07,
0x7a, 0x70, 0x03, 0x76, 0x78, 0x87, 0x70, 0x20, 0x87, 0x19, 0xcc, 0x11,
0x0e, 0xec, 0x90, 0x0e, 0xe1, 0x30, 0x0f, 0x6e, 0x30, 0x0f, 0xe3, 0xf0,
0x0e, 0xf0, 0x50, 0x0e, 0x33, 0x10, 0xc4, 0x1d, 0xde, 0x21, 0x1c, 0xd8,
0x21, 0x1d, 0xc2, 0x61, 0x1e, 0x66, 0x30, 0x89, 0x3b, 0xbc, 0x83, 0x3b,
0xd0, 0x43, 0x39, 0xb4, 0x03, 0x3c, 0xbc, 0x83, 0x3c, 0x84, 0x03, 0x3b,
0xcc, 0xf0, 0x14, 0x76, 0x60, 0x07, 0x7b, 0x68, 0x07, 0x37, 0x68, 0x87,
0x72, 0x68, 0x07, 0x37, 0x80, 0x87, 0x70, 0x90, 0x87, 0x70, 0x60, 0x07,
0x76, 0x28, 0x07, 0x76, 0xf8, 0x05, 0x76, 0x78, 0x87, 0x77, 0x80, 0x87,
0x5f, 0x08, 0x87, 0x71, 0x18, 0x87, 0x72, 0x98, 0x87, 0x79, 0x98, 0x81,
0x2c, 0xee, 0xf0, 0x0e, 0xee, 0xe0, 0x0e, 0xf5, 0xc0, 0x0e, 0xec, 0x30,
0x03, 0x62, 0xc8, 0xa1, 0x1c, 0xe4, 0xa1, 0x1c, 0xcc, 0xa1, 0x1c, 0xe4,
0xa1, 0x1c, 0xdc, 0x61, 0x1c, 0xca, 0x21, 0x1c, 0xc4, 0x81, 0x1d, 0xca,
0x61, 0x06, 0xd6, 0x90, 0x43, 0x39, 0xc8, 0x43, 0x39, 0x98, 0x43, 0x39,
0xc8, 0x43, 0x39, 0xb8, 0xc3, 0x38, 0x94, 0x43, 0x38, 0x88, 0x03, 0x3b,
0x94, 0xc3, 0x2f, 0xbc, 0x83, 0x3c, 0xfc, 0x82, 0x3b, 0xd4, 0x03, 0x3b,
0xb0, 0xc3, 0x8c, 0xc8, 0x21, 0x07, 0x7c, 0x70, 0x03, 0x72, 0x10, 0x87,
0x73, 0x70, 0x03, 0x7b, 0x08, 0x07, 0x79, 0x60, 0x87, 0x70, 0xc8, 0x87,
0x77, 0xa8, 0x07, 0x7a, 0x98, 0x81, 0x3c, 0xe4, 0x80, 0x0f, 0x6e, 0x40,
0x0f, 0xe5, 0xd0, 0x0e, 0xf0, 0x00, 0x00, 0x00, 0x71, 0x20, 0x00, 0x00,
0x18, 0x00, 0x00, 0x00, 0x46, 0xb0, 0x0d, 0x97, 0xef, 0x3c, 0xbe, 0x10,
0x50, 0x45, 0x41, 0x44, 0xa5, 0x03, 0x0c, 0x25, 0x61, 0x00, 0x02, 0xe6,
0x17, 0xb7, 0x6d, 0x05, 0xd2, 0x70, 0xf9, 0xce, 0xe3, 0x0b, 0x11, 0x01,
0x4c, 0x44, 0x08, 0x34, 0xc3, 0x42, 0x58, 0xc0, 0x34, 0x5c, 0xbe, 0xf3,
0xf8, 0x8b, 0x03, 0x0c, 0x62, 0xf3, 0x50, 0x93, 0x5f, 0xdc, 0xb6, 0x0d,
0x40, 0xc3, 0xe5, 0x3b, 0x8f, 0x2f, 0x01, 0xcc, 0xb3, 0x10, 0x7e, 0x71,
0xdb, 0x26, 0x50, 0x0d, 0x97, 0xef, 0x3c, 0xbe, 0x34, 0x39, 0x11, 0x81,
0x52, 0xd3, 0x43, 0x4d, 0x7e, 0x71, 0xdb, 0x06, 0x40, 0x30, 0x00, 0xd2,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x48, 0x41, 0x53, 0x48,
0x14, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc7, 0x1c, 0x0d, 0x85,
0xb4, 0x48, 0x99, 0xc0, 0xce, 0x90, 0xaf, 0x39, 0xfa, 0x8e, 0xec, 0xfd,
0x44, 0x58, 0x49, 0x4c, 0x50, 0x07, 0x00, 0x00, 0x60, 0x00, 0x00, 0x00,
0xd4, 0x01, 0x00, 0x00, 0x44, 0x58, 0x49, 0x4c, 0x00, 0x01, 0x00, 0x00,
0x10, 0x00, 0x00, 0x00, 0x38, 0x07, 0x00, 0x00, 0x42, 0x43, 0xc0, 0xde,
0x21, 0x0c, 0x00, 0x00, 0xcb, 0x01, 0x00, 0x00, 0x0b, 0x82, 0x20, 0x00,
0x02, 0x00, 0x00, 0x00, 0x13, 0x00, 0x00, 0x00, 0x07, 0x81, 0x23, 0x91,
0x41, 0xc8, 0x04, 0x49, 0x06, 0x10, 0x32, 0x39, 0x92, 0x01, 0x84, 0x0c,
0x25, 0x05, 0x08, 0x19, 0x1e, 0x04, 0x8b, 0x62, 0x80, 0x14, 0x45, 0x02,
0x42, 0x92, 0x0b, 0x42, 0xa4, 0x10, 0x32, 0x14, 0x38, 0x08, 0x18, 0x4b,
0x0a, 0x32, 0x52, 0x88, 0x48, 0x90, 0x14, 0x20, 0x43, 0x46, 0x88, 0xa5,
0x00, 0x19, 0x32, 0x42, 0xe4, 0x48, 0x0e, 0x90, 0x91, 0x22, 0xc4, 0x50,
0x41, 0x51, 0x81, 0x8c, 0xe1, 0x83, 0xe5, 0x8a, 0x04, 0x29, 0x46, 0x06,
0x51, 0x18, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x1b, 0x8c, 0xe0, 0xff,
0xff, 0xff, 0xff, 0x07, 0x40, 0x02, 0xa8, 0x0d, 0x84, 0xf0, 0xff, 0xff,
0xff, 0xff, 0x03, 0x20, 0x6d, 0x30, 0x86, 0xff, 0xff, 0xff, 0xff, 0x1f,
0x00, 0x09, 0xa8, 0x00, 0x49, 0x18, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00,
0x13, 0x82, 0x60, 0x42, 0x20, 0x4c, 0x08, 0x06, 0x00, 0x00, 0x00, 0x00,
0x89, 0x20, 0x00, 0x00, 0x4d, 0x00, 0x00, 0x00, 0x32, 0x22, 0x48, 0x09,
0x20, 0x64, 0x85, 0x04, 0x93, 0x22, 0xa4, 0x84, 0x04, 0x93, 0x22, 0xe3,
0x84, 0xa1, 0x90, 0x14, 0x12, 0x4c, 0x8a, 0x8c, 0x0b, 0x84, 0xa4, 0x4c,
0x10, 0x7c, 0x23, 0x00, 0x25, 0x00, 0x14, 0x66, 0x00, 0xe6, 0x08, 0xc0,
0x60, 0x8e, 0x00, 0x29, 0xc6, 0x20, 0x84, 0x14, 0x42, 0xa6, 0x18, 0x80,
0x10, 0x52, 0x06, 0xa1, 0x9b, 0x86, 0xcb, 0x9f, 0xb0, 0x87, 0x90, 0xfc,
0x95, 0x90, 0x56, 0x62, 0xf2, 0x8b, 0xdb, 0x46, 0xc5, 0x18, 0x63, 0x10,
0x2a, 0xf7, 0x0c, 0x97, 0x3f, 0x61, 0x0f, 0x21, 0xf9, 0x21, 0xd0, 0x0c,
0x0b, 0x81, 0x82, 0x55, 0x18, 0x45, 0x18, 0x1b, 0x63, 0x0c, 0x42, 0xc8,
0xa0, 0x76, 0xd4, 0x70, 0xf9, 0x13, 0xf6, 0x10, 0x92, 0xcf, 0x6d, 0x54,
0xb1, 0x12, 0x93, 0x5f, 0xdc, 0x36, 0x22, 0xc6, 0x18, 0xa3, 0x10, 0x8f,
0x30, 0x42, 0x70, 0x8e, 0x20, 0x28, 0x06, 0x23, 0x85, 0x10, 0x49, 0x73,
0x20, 0x60, 0x18, 0x81, 0x18, 0x66, 0x6a, 0x83, 0x71, 0x60, 0x87, 0x70,
0x98, 0x87, 0x79, 0x70, 0x03, 0x5a, 0x28, 0x07, 0x7c, 0xa0, 0x87, 0x7a,
0x90, 0x87, 0x72, 0x90, 0x03, 0x52, 0xe0, 0x03, 0x7b, 0x28, 0x87, 0x71,
0xa0, 0x87, 0x77, 0x90, 0x07, 0x3e, 0x30, 0x07, 0x76, 0x78, 0x87, 0x70,
0xa0, 0x07, 0x36, 0x00, 0x03, 0x3a, 0xf0, 0x03, 0x30, 0xf0, 0x03, 0x3d,
0xd0, 0x83, 0x76, 0x48, 0x07, 0x78, 0x98, 0x87, 0x5f, 0xa0, 0x87, 0x7c,
0x80, 0x87, 0x72, 0x40, 0x01, 0x99, 0x49, 0x0c, 0xc6, 0x81, 0x1d, 0xc2,
0x61, 0x1e, 0xe6, 0xc1, 0x0d, 0x68, 0xa1, 0x1c, 0xf0, 0x81, 0x1e, 0xea,
0x41, 0x1e, 0xca, 0x41, 0x0e, 0x48, 0x81, 0x0f, 0xec, 0xa1, 0x1c, 0xc6,
0x81, 0x1e, 0xde, 0x41, 0x1e, 0xf8, 0xc0, 0x1c, 0xd8, 0xe1, 0x1d, 0xc2,
0x81, 0x1e, 0xd8, 0x00, 0x0c, 0xe8, 0xc0, 0x0f, 0xc0, 0xc0, 0x0f, 0x90,
0x60, 0x2f, 0xe1, 0x73, 0x26, 0xec, 0x21, 0x7e, 0xce, 0x69, 0xa4, 0x09,
0x68, 0x26, 0x09, 0x05, 0x83, 0xf4, 0x4d, 0xd2, 0x14, 0x51, 0xc2, 0xe4,
0xb3, 0x00, 0xf3, 0x2c, 0x44, 0xc4, 0x4e, 0xc0, 0x44, 0xa0, 0x80, 0x10,
0x4f, 0x04, 0x02, 0x00, 0x13, 0x14, 0x72, 0xc0, 0x87, 0x74, 0x60, 0x87,
0x36, 0x68, 0x87, 0x79, 0x68, 0x03, 0x72, 0xc0, 0x87, 0x0d, 0xaf, 0x50,
0x0e, 0x6d, 0xd0, 0x0e, 0x7a, 0x50, 0x0e, 0x6d, 0x00, 0x0f, 0x7a, 0x30,
0x07, 0x72, 0xa0, 0x07, 0x73, 0x20, 0x07, 0x6d, 0x90, 0x0e, 0x71, 0xa0,
@@ -232,41 +251,45 @@ static const unsigned char texture_rgba_frag_dxil[] = {
0x0c, 0x79, 0x10, 0x20, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x18, 0xf2, 0x34, 0x40, 0x00, 0x0c, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x30, 0xe4, 0x81, 0x80, 0x00, 0x18, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x20, 0x0b, 0x04, 0x00, 0x00, 0x0d, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x60, 0xc8, 0x33, 0x01, 0x01, 0x30, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x40, 0x16, 0x08, 0x00, 0x0f, 0x00, 0x00, 0x00,
0x32, 0x1e, 0x98, 0x14, 0x19, 0x11, 0x4c, 0x90, 0x8c, 0x09, 0x26, 0x47,
0xc6, 0x04, 0x43, 0x22, 0x25, 0x30, 0x02, 0x50, 0x12, 0xc5, 0x50, 0x04,
0x65, 0x50, 0x1e, 0x54, 0x4a, 0x62, 0x04, 0xa0, 0x08, 0x0a, 0xa1, 0x40,
0xc8, 0xce, 0x00, 0x10, 0x9e, 0x01, 0xa0, 0x3c, 0x16, 0x62, 0x10, 0x81,
0x40, 0x20, 0xcf, 0x03, 0x79, 0x18, 0x00, 0x00, 0x57, 0x00, 0x00, 0x00,
0x1a, 0x03, 0x4c, 0x90, 0x46, 0x02, 0x13, 0x44, 0x8f, 0x0c, 0x6f, 0xec,
0xed, 0x4d, 0x0c, 0x24, 0xc6, 0x05, 0xc7, 0x45, 0xa6, 0x06, 0xa6, 0xc6,
0x45, 0x06, 0x07, 0x04, 0x25, 0xa7, 0xcc, 0x4c, 0x4c, 0xcc, 0x66, 0x6c,
0x46, 0x26, 0x65, 0x43, 0x10, 0x4c, 0x10, 0x88, 0x62, 0x82, 0x40, 0x18,
0x1b, 0x84, 0x81, 0x98, 0x20, 0x10, 0xc7, 0x06, 0x61, 0x30, 0x28, 0xc0,
0xcd, 0x4d, 0x10, 0x08, 0x64, 0xc3, 0x80, 0x24, 0xc4, 0x04, 0xc1, 0x8a,
0x08, 0x4c, 0x10, 0x88, 0x64, 0x83, 0x40, 0x18, 0x1b, 0x12, 0x62, 0x61,
0x1a, 0x62, 0x68, 0x08, 0x67, 0x43, 0xf0, 0x4c, 0x10, 0x30, 0x69, 0x03,
0x42, 0x44, 0x4c, 0x43, 0x0c, 0x04, 0xb0, 0x21, 0x90, 0x36, 0x10, 0x10,
0x00, 0x4c, 0x13, 0x84, 0x6c, 0xda, 0x10, 0x54, 0x13, 0x04, 0x01, 0x20,
0xd1, 0x16, 0x96, 0xe6, 0x46, 0x84, 0xaa, 0x08, 0x6b, 0xe8, 0xe9, 0x49,
0x8a, 0x68, 0x82, 0x50, 0x30, 0x13, 0x84, 0xa2, 0xd9, 0x10, 0x10, 0x13,
0x84, 0xc2, 0x99, 0x20, 0x14, 0xcf, 0x04, 0x81, 0x50, 0x26, 0x08, 0xc4,
0xb2, 0x41, 0xf8, 0xc0, 0x60, 0xc3, 0x42, 0x64, 0xda, 0xc6, 0x75, 0x83,
0x47, 0x6c, 0x61, 0xb0, 0x21, 0x18, 0x36, 0x08, 0xdf, 0xb7, 0x61, 0x19,
0x32, 0x6d, 0x1b, 0x83, 0x6e, 0xe8, 0x86, 0x8d, 0x0c, 0x36, 0x08, 0x62,
0x50, 0x06, 0x4c, 0xa6, 0xac, 0xbe, 0xa8, 0xc2, 0xe4, 0xce, 0xca, 0xe8,
0x26, 0x08, 0x05, 0xb4, 0x61, 0x21, 0xce, 0x40, 0x43, 0x03, 0x6e, 0x1b,
0x3c, 0x62, 0x0b, 0x83, 0x0d, 0x41, 0x1a, 0x6c, 0x18, 0xcc, 0x40, 0x0d,
0x80, 0x0d, 0xc5, 0x85, 0xad, 0x01, 0x05, 0x54, 0x61, 0x63, 0xb3, 0x6b,
0x73, 0x49, 0x23, 0x2b, 0x73, 0xa3, 0x9b, 0x12, 0x04, 0x55, 0xc8, 0xf0,
0x5c, 0xec, 0xca, 0xe4, 0xe6, 0xd2, 0xde, 0xdc, 0xa6, 0x04, 0x44, 0x13,
0x32, 0x3c, 0x17, 0xbb, 0x30, 0x36, 0xbb, 0x32, 0xb9, 0x29, 0x81, 0x51,
0x87, 0x0c, 0xcf, 0x65, 0x0e, 0x2d, 0x8c, 0xac, 0x4c, 0xae, 0xe9, 0x8d,
0xac, 0x8c, 0x6d, 0x4a, 0x90, 0x94, 0x21, 0xc3, 0x73, 0x91, 0x2b, 0x9b,
0x7b, 0xab, 0x93, 0x1b, 0x2b, 0x9b, 0x9b, 0x12, 0x4c, 0x75, 0xc8, 0xf0,
0x5c, 0xec, 0xd2, 0xca, 0xee, 0x92, 0xc8, 0xa6, 0xe8, 0xc2, 0xe8, 0xca,
0xa6, 0x04, 0x55, 0x1d, 0x32, 0x3c, 0x97, 0x32, 0x37, 0x3a, 0xb9, 0x3c,
0xa8, 0xb7, 0x34, 0x37, 0xba, 0xb9, 0x29, 0xc1, 0x1a, 0x00, 0x00, 0x00,
0x65, 0x50, 0x08, 0xe5, 0x41, 0xa5, 0x24, 0x46, 0x00, 0x8a, 0xa0, 0x10,
0x0a, 0x84, 0xf2, 0x0c, 0x00, 0xed, 0x19, 0x00, 0xea, 0x33, 0x00, 0xe4,
0xc7, 0x42, 0x0c, 0x22, 0x10, 0x08, 0xe4, 0x79, 0x00, 0x00, 0x00, 0x00,
0x79, 0x18, 0x00, 0x00, 0x5e, 0x00, 0x00, 0x00, 0x1a, 0x03, 0x4c, 0x90,
0x46, 0x02, 0x13, 0x44, 0x8f, 0x0c, 0x6f, 0xec, 0xed, 0x4d, 0x0c, 0x24,
0xc6, 0x05, 0xc7, 0x45, 0xa6, 0x06, 0xa6, 0xc6, 0x45, 0x06, 0x07, 0x04,
0x25, 0xa7, 0xcc, 0x4c, 0x4c, 0xcc, 0x66, 0x6c, 0x46, 0x26, 0x65, 0x43,
0x10, 0x4c, 0x10, 0x08, 0x63, 0x82, 0x40, 0x1c, 0x1b, 0x84, 0x81, 0x98,
0x20, 0x10, 0xc8, 0x06, 0x61, 0x30, 0x28, 0xc0, 0xcd, 0x4d, 0x10, 0x88,
0x64, 0xc3, 0x80, 0x24, 0xc4, 0x04, 0x21, 0x9b, 0x08, 0x4c, 0x10, 0x08,
0x65, 0x83, 0x40, 0x18, 0x1b, 0x12, 0x62, 0x61, 0x1a, 0x62, 0x68, 0x08,
0x67, 0x43, 0xf0, 0x4c, 0x10, 0x36, 0x6a, 0x82, 0x40, 0x2c, 0x13, 0x04,
0x82, 0xd9, 0x80, 0x10, 0x11, 0x23, 0x11, 0xc3, 0x04, 0x6c, 0x08, 0xa8,
0x09, 0x42, 0x57, 0x6d, 0x40, 0x08, 0x8b, 0x69, 0x88, 0x81, 0x00, 0x36,
0x04, 0xd7, 0x06, 0x02, 0x02, 0x2a, 0x6c, 0x82, 0xe0, 0x59, 0x1b, 0x02,
0x6d, 0x82, 0x20, 0x00, 0x24, 0xda, 0xc2, 0xd2, 0xdc, 0x88, 0x50, 0x15,
0x61, 0x0d, 0x3d, 0x3d, 0x49, 0x11, 0x4d, 0x10, 0x0a, 0x67, 0x82, 0x50,
0x3c, 0x1b, 0x02, 0x62, 0x82, 0x50, 0x40, 0x13, 0x84, 0x22, 0x9a, 0x20,
0x10, 0xcd, 0x06, 0x41, 0x22, 0x83, 0x0d, 0x0b, 0xe1, 0x7d, 0x60, 0x10,
0x06, 0x62, 0x30, 0x8c, 0x01, 0x01, 0x06, 0x65, 0xb0, 0x21, 0x18, 0x36,
0x08, 0x92, 0xb4, 0x61, 0x19, 0xbc, 0x0f, 0x0c, 0xce, 0x40, 0x0c, 0x06,
0x31, 0x18, 0xc0, 0x00, 0x0d, 0x36, 0x08, 0x66, 0x90, 0x06, 0x4c, 0xa6,
0xac, 0xbe, 0xa8, 0xc2, 0xe4, 0xce, 0xca, 0xe8, 0x26, 0x08, 0x85, 0xb4,
0x61, 0x21, 0xd6, 0xe0, 0x63, 0x83, 0x30, 0x00, 0x83, 0x61, 0x0c, 0x08,
0x30, 0x28, 0x83, 0x0d, 0x41, 0x1b, 0x6c, 0x18, 0xd4, 0xc0, 0x0d, 0x80,
0x0d, 0x05, 0xd7, 0xbd, 0x41, 0x06, 0x54, 0x61, 0x63, 0xb3, 0x6b, 0x73,
0x49, 0x23, 0x2b, 0x73, 0xa3, 0x9b, 0x12, 0x04, 0x55, 0xc8, 0xf0, 0x5c,
0xec, 0xca, 0xe4, 0xe6, 0xd2, 0xde, 0xdc, 0xa6, 0x04, 0x44, 0x13, 0x32,
0x3c, 0x17, 0xbb, 0x30, 0x36, 0xbb, 0x32, 0xb9, 0x29, 0x81, 0x51, 0x87,
0x0c, 0xcf, 0x65, 0x0e, 0x2d, 0x8c, 0xac, 0x4c, 0xae, 0xe9, 0x8d, 0xac,
0x8c, 0x6d, 0x4a, 0x90, 0x94, 0x21, 0xc3, 0x73, 0x91, 0x2b, 0x9b, 0x7b,
0xab, 0x93, 0x1b, 0x2b, 0x9b, 0x9b, 0x12, 0x60, 0x75, 0xc8, 0xf0, 0x5c,
0xec, 0xd2, 0xca, 0xee, 0x92, 0xc8, 0xa6, 0xe8, 0xc2, 0xe8, 0xca, 0xa6,
0x04, 0x5a, 0x1d, 0x32, 0x3c, 0x97, 0x32, 0x37, 0x3a, 0xb9, 0x3c, 0xa8,
0xb7, 0x34, 0x37, 0xba, 0xb9, 0x29, 0xc1, 0x1b, 0x00, 0x00, 0x00, 0x00,
0x79, 0x18, 0x00, 0x00, 0x4c, 0x00, 0x00, 0x00, 0x33, 0x08, 0x80, 0x1c,
0xc4, 0xe1, 0x1c, 0x66, 0x14, 0x01, 0x3d, 0x88, 0x43, 0x38, 0x84, 0xc3,
0x8c, 0x42, 0x80, 0x07, 0x79, 0x78, 0x07, 0x73, 0x98, 0x71, 0x0c, 0xe6,
@@ -293,32 +316,38 @@ static const unsigned char texture_rgba_frag_dxil[] = {
0x03, 0x72, 0x10, 0x87, 0x73, 0x70, 0x03, 0x7b, 0x08, 0x07, 0x79, 0x60,
0x87, 0x70, 0xc8, 0x87, 0x77, 0xa8, 0x07, 0x7a, 0x98, 0x81, 0x3c, 0xe4,
0x80, 0x0f, 0x6e, 0x40, 0x0f, 0xe5, 0xd0, 0x0e, 0xf0, 0x00, 0x00, 0x00,
0x71, 0x20, 0x00, 0x00, 0x12, 0x00, 0x00, 0x00, 0x46, 0x20, 0x0d, 0x97,
0xef, 0x3c, 0xbe, 0x10, 0x11, 0xc0, 0x44, 0x84, 0x40, 0x33, 0x2c, 0x84,
0x05, 0x4c, 0xc3, 0xe5, 0x3b, 0x8f, 0xbf, 0x38, 0xc0, 0x20, 0x36, 0x0f,
0x35, 0xf9, 0xc5, 0x6d, 0xdb, 0x00, 0x34, 0x5c, 0xbe, 0xf3, 0xf8, 0x12,
0xc0, 0x3c, 0x0b, 0xe1, 0x17, 0xb7, 0x6d, 0x02, 0xd5, 0x70, 0xf9, 0xce,
0xe3, 0x4b, 0x93, 0x13, 0x11, 0x28, 0x35, 0x3d, 0xd4, 0xe4, 0x17, 0xb7,
0x6d, 0x00, 0x04, 0x03, 0x20, 0x0d, 0x00, 0x00, 0x61, 0x20, 0x00, 0x00,
0x3a, 0x00, 0x00, 0x00, 0x13, 0x04, 0x41, 0x2c, 0x10, 0x00, 0x00, 0x00,
0x05, 0x00, 0x00, 0x00, 0xf4, 0x46, 0x00, 0x88, 0xcc, 0x00, 0x14, 0x42,
0x29, 0x94, 0x5c, 0xe1, 0x51, 0x29, 0x83, 0x12, 0xa0, 0x31, 0x03, 0x00,
0x23, 0x06, 0x09, 0x00, 0x82, 0x60, 0x00, 0x65, 0x05, 0x74, 0x5d, 0xc9,
0x88, 0x41, 0x02, 0x80, 0x20, 0x18, 0x40, 0x9a, 0x41, 0x60, 0x98, 0x32,
0x62, 0x90, 0x00, 0x20, 0x08, 0x06, 0x86, 0x97, 0x68, 0x99, 0xa4, 0x8c,
0x18, 0x24, 0x00, 0x08, 0x82, 0x81, 0xf1, 0x29, 0x9b, 0x56, 0x2c, 0x23,
0x06, 0x09, 0x00, 0x82, 0x60, 0x60, 0x80, 0xc1, 0xb2, 0x6d, 0x14, 0x33,
0x62, 0x90, 0x00, 0x20, 0x08, 0x06, 0x46, 0x18, 0x30, 0x1c, 0x77, 0x34,
0x23, 0x06, 0x09, 0x00, 0x82, 0x60, 0x60, 0x88, 0x41, 0xd3, 0x75, 0x95,
0x33, 0x62, 0x90, 0x00, 0x20, 0x08, 0x06, 0xc6, 0x18, 0x38, 0x9e, 0xa7,
0x3c, 0x23, 0x06, 0x0f, 0x00, 0x82, 0x60, 0xd0, 0x88, 0x01, 0x83, 0x1c,
0x46, 0x91, 0x24, 0xdf, 0x07, 0x25, 0xa3, 0x09, 0x01, 0x30, 0x9a, 0x20,
0x04, 0xa3, 0x09, 0x83, 0x30, 0x9a, 0x40, 0x0c, 0x46, 0x24, 0xf2, 0x31,
0x22, 0x91, 0x8f, 0x11, 0x89, 0x7c, 0x8c, 0x48, 0xe4, 0x33, 0x62, 0x90,
0x00, 0x20, 0x08, 0x06, 0x08, 0x1b, 0x5c, 0x68, 0x80, 0x06, 0x61, 0x40,
0x8c, 0x18, 0x24, 0x00, 0x08, 0x82, 0x01, 0xc2, 0x06, 0x17, 0x1a, 0xa0,
0xc1, 0x34, 0x8c, 0x18, 0x24, 0x00, 0x08, 0x82, 0x01, 0xc2, 0x06, 0x17,
0x1a, 0xa0, 0x01, 0x18, 0x08, 0x23, 0x06, 0x09, 0x00, 0x82, 0x60, 0x80,
0xb0, 0xc1, 0x85, 0x06, 0x68, 0x40, 0x05, 0x08, 0x00, 0x00, 0x00, 0x00
0x71, 0x20, 0x00, 0x00, 0x18, 0x00, 0x00, 0x00, 0x46, 0xb0, 0x0d, 0x97,
0xef, 0x3c, 0xbe, 0x10, 0x50, 0x45, 0x41, 0x44, 0xa5, 0x03, 0x0c, 0x25,
0x61, 0x00, 0x02, 0xe6, 0x17, 0xb7, 0x6d, 0x05, 0xd2, 0x70, 0xf9, 0xce,
0xe3, 0x0b, 0x11, 0x01, 0x4c, 0x44, 0x08, 0x34, 0xc3, 0x42, 0x58, 0xc0,
0x34, 0x5c, 0xbe, 0xf3, 0xf8, 0x8b, 0x03, 0x0c, 0x62, 0xf3, 0x50, 0x93,
0x5f, 0xdc, 0xb6, 0x0d, 0x40, 0xc3, 0xe5, 0x3b, 0x8f, 0x2f, 0x01, 0xcc,
0xb3, 0x10, 0x7e, 0x71, 0xdb, 0x26, 0x50, 0x0d, 0x97, 0xef, 0x3c, 0xbe,
0x34, 0x39, 0x11, 0x81, 0x52, 0xd3, 0x43, 0x4d, 0x7e, 0x71, 0xdb, 0x06,
0x40, 0x30, 0x00, 0xd2, 0x00, 0x00, 0x00, 0x00, 0x61, 0x20, 0x00, 0x00,
0x45, 0x00, 0x00, 0x00, 0x13, 0x04, 0x41, 0x2c, 0x10, 0x00, 0x00, 0x00,
0x05, 0x00, 0x00, 0x00, 0x24, 0x47, 0x00, 0x88, 0xcc, 0x00, 0x94, 0x42,
0xc9, 0x15, 0x5e, 0xd9, 0x51, 0x29, 0x83, 0x12, 0xa0, 0x31, 0x03, 0x00,
0x23, 0x06, 0x09, 0x00, 0x82, 0x60, 0x30, 0x6d, 0x46, 0x94, 0x65, 0xc9,
0x88, 0x41, 0x02, 0x80, 0x20, 0x18, 0x4c, 0xdc, 0x41, 0x68, 0x9a, 0x32,
0x62, 0x90, 0x00, 0x20, 0x08, 0x06, 0x53, 0x87, 0x48, 0xdb, 0xb6, 0x8c,
0x18, 0x24, 0x00, 0x08, 0x82, 0x81, 0x21, 0x06, 0x57, 0xc7, 0x51, 0xcb,
0x88, 0x41, 0x02, 0x80, 0x20, 0x18, 0x18, 0x63, 0x80, 0x79, 0x9d, 0xc1,
0x8c, 0x18, 0x24, 0x00, 0x08, 0x82, 0x81, 0x41, 0x06, 0x99, 0xe7, 0x59,
0xcd, 0x88, 0x41, 0x02, 0x80, 0x20, 0x18, 0x18, 0x65, 0xa0, 0x7d, 0x1f,
0xe2, 0x8c, 0x18, 0x24, 0x00, 0x08, 0x82, 0x81, 0x61, 0x06, 0x1b, 0x18,
0x80, 0xc1, 0xf5, 0x8c, 0x18, 0x24, 0x00, 0x08, 0x82, 0x81, 0x71, 0x06,
0x5c, 0x18, 0x84, 0xc1, 0x02, 0x8d, 0x18, 0x3c, 0x00, 0x08, 0x82, 0x41,
0x63, 0x06, 0x4e, 0x82, 0x18, 0x85, 0xa2, 0x88, 0x81, 0x18, 0x44, 0xca,
0x68, 0x42, 0x00, 0x8c, 0x26, 0x08, 0xc1, 0x68, 0xc2, 0x20, 0x8c, 0x26,
0x10, 0xc3, 0x88, 0xc1, 0x01, 0x80, 0x20, 0x18, 0x40, 0x6a, 0x20, 0x31,
0x67, 0x30, 0x9a, 0x10, 0x00, 0x66, 0x2c, 0xf2, 0xb1, 0x40, 0x90, 0x8f,
0x1d, 0x8c, 0x7c, 0x2c, 0x20, 0xe4, 0x63, 0x48, 0x23, 0x1f, 0x0b, 0x0c,
0xf9, 0x58, 0xe2, 0xc8, 0x67, 0xc4, 0x20, 0x01, 0x40, 0x10, 0x0c, 0x90,
0x3a, 0xf0, 0xe0, 0x00, 0x0e, 0xd0, 0xc0, 0x18, 0x31, 0x48, 0x00, 0x10,
0x04, 0x03, 0xa4, 0x0e, 0x3c, 0x38, 0x80, 0x83, 0x8c, 0x18, 0x31, 0x48,
0x00, 0x10, 0x04, 0x03, 0xa4, 0x0e, 0x3c, 0x38, 0x80, 0x83, 0x33, 0x10,
0x46, 0x0c, 0x12, 0x00, 0x04, 0xc1, 0x00, 0xa9, 0x03, 0x0f, 0x0e, 0xe0,
0x40, 0x0b, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00
};
static const unsigned int texture_rgba_frag_dxil_len = 3852;
static const unsigned int texture_rgba_frag_dxil_len = 4196;

View File

@@ -1,3 +1,9 @@
cbuffer Constants : register(b0, space3)
{
float color_scale;
};
Texture2D u_texture : register(t0, space2);
SamplerState u_sampler : register(s0, space2);
@@ -10,8 +16,10 @@ struct PSOutput {
float4 o_color : SV_Target;
};
#include "common.frag.hlsli"
PSOutput main(PSInput input) {
PSOutput output;
output.o_color = u_texture.Sample(u_sampler, input.v_uv) * input.v_color;
output.o_color = GetOutputColor(u_texture.Sample(u_sampler, input.v_uv)) * input.v_color;
return output;
}

View File

@@ -5,43 +5,65 @@ static const unsigned char texture_rgba_frag_msl[] = {
0x6d, 0x64, 0x2f, 0x73, 0x69, 0x6d, 0x64, 0x2e, 0x68, 0x3e, 0x0a, 0x0a,
0x75, 0x73, 0x69, 0x6e, 0x67, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70,
0x61, 0x63, 0x65, 0x20, 0x6d, 0x65, 0x74, 0x61, 0x6c, 0x3b, 0x0a, 0x0a,
0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x20, 0x74, 0x79, 0x70, 0x65, 0x5f,
0x43, 0x6f, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x73, 0x0a, 0x7b, 0x0a,
0x20, 0x20, 0x20, 0x20, 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x20, 0x63, 0x6f,
0x6c, 0x6f, 0x72, 0x5f, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x3b, 0x0a, 0x7d,
0x3b, 0x0a, 0x0a, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x20,
0x66, 0x6c, 0x6f, 0x61, 0x74, 0x34, 0x20, 0x5f, 0x32, 0x37, 0x20, 0x3d,
0x20, 0x7b, 0x7d, 0x3b, 0x0a, 0x0a, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74,
0x20, 0x6d, 0x61, 0x69, 0x6e, 0x30, 0x5f, 0x6f, 0x75, 0x74, 0x0a, 0x7b,
0x0a, 0x20, 0x20, 0x20, 0x20, 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x34, 0x20,
0x6f, 0x75, 0x74, 0x5f, 0x76, 0x61, 0x72, 0x5f, 0x53, 0x56, 0x5f, 0x54,
0x61, 0x72, 0x67, 0x65, 0x74, 0x20, 0x5b, 0x5b, 0x63, 0x6f, 0x6c, 0x6f,
0x72, 0x28, 0x30, 0x29, 0x5d, 0x5d, 0x3b, 0x0a, 0x7d, 0x3b, 0x0a, 0x0a,
0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x20, 0x6d, 0x61, 0x69, 0x6e, 0x30,
0x5f, 0x6f, 0x75, 0x74, 0x0a, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x66,
0x6c, 0x6f, 0x61, 0x74, 0x34, 0x20, 0x6f, 0x75, 0x74, 0x5f, 0x76, 0x61,
0x5f, 0x69, 0x6e, 0x0a, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x66, 0x6c,
0x6f, 0x61, 0x74, 0x34, 0x20, 0x69, 0x6e, 0x5f, 0x76, 0x61, 0x72, 0x5f,
0x43, 0x4f, 0x4c, 0x4f, 0x52, 0x30, 0x20, 0x5b, 0x5b, 0x75, 0x73, 0x65,
0x72, 0x28, 0x6c, 0x6f, 0x63, 0x6e, 0x30, 0x29, 0x5d, 0x5d, 0x3b, 0x0a,
0x20, 0x20, 0x20, 0x20, 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x32, 0x20, 0x69,
0x6e, 0x5f, 0x76, 0x61, 0x72, 0x5f, 0x54, 0x45, 0x58, 0x43, 0x4f, 0x4f,
0x52, 0x44, 0x30, 0x20, 0x5b, 0x5b, 0x75, 0x73, 0x65, 0x72, 0x28, 0x6c,
0x6f, 0x63, 0x6e, 0x31, 0x29, 0x5d, 0x5d, 0x3b, 0x0a, 0x7d, 0x3b, 0x0a,
0x0a, 0x66, 0x72, 0x61, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6d, 0x61,
0x69, 0x6e, 0x30, 0x5f, 0x6f, 0x75, 0x74, 0x20, 0x6d, 0x61, 0x69, 0x6e,
0x30, 0x28, 0x6d, 0x61, 0x69, 0x6e, 0x30, 0x5f, 0x69, 0x6e, 0x20, 0x69,
0x6e, 0x20, 0x5b, 0x5b, 0x73, 0x74, 0x61, 0x67, 0x65, 0x5f, 0x69, 0x6e,
0x5d, 0x5d, 0x2c, 0x20, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x74,
0x20, 0x74, 0x79, 0x70, 0x65, 0x5f, 0x43, 0x6f, 0x6e, 0x73, 0x74, 0x61,
0x6e, 0x74, 0x73, 0x26, 0x20, 0x43, 0x6f, 0x6e, 0x73, 0x74, 0x61, 0x6e,
0x74, 0x73, 0x20, 0x5b, 0x5b, 0x62, 0x75, 0x66, 0x66, 0x65, 0x72, 0x28,
0x30, 0x29, 0x5d, 0x5d, 0x2c, 0x20, 0x74, 0x65, 0x78, 0x74, 0x75, 0x72,
0x65, 0x32, 0x64, 0x3c, 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x3e, 0x20, 0x75,
0x5f, 0x74, 0x65, 0x78, 0x74, 0x75, 0x72, 0x65, 0x20, 0x5b, 0x5b, 0x74,
0x65, 0x78, 0x74, 0x75, 0x72, 0x65, 0x28, 0x30, 0x29, 0x5d, 0x5d, 0x2c,
0x20, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x72, 0x20, 0x75, 0x5f, 0x73,
0x61, 0x6d, 0x70, 0x6c, 0x65, 0x72, 0x20, 0x5b, 0x5b, 0x73, 0x61, 0x6d,
0x70, 0x6c, 0x65, 0x72, 0x28, 0x30, 0x29, 0x5d, 0x5d, 0x29, 0x0a, 0x7b,
0x0a, 0x20, 0x20, 0x20, 0x20, 0x6d, 0x61, 0x69, 0x6e, 0x30, 0x5f, 0x6f,
0x75, 0x74, 0x20, 0x6f, 0x75, 0x74, 0x20, 0x3d, 0x20, 0x7b, 0x7d, 0x3b,
0x0a, 0x20, 0x20, 0x20, 0x20, 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x34, 0x20,
0x5f, 0x33, 0x34, 0x20, 0x3d, 0x20, 0x75, 0x5f, 0x74, 0x65, 0x78, 0x74,
0x75, 0x72, 0x65, 0x2e, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x28, 0x75,
0x5f, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x72, 0x2c, 0x20, 0x69, 0x6e,
0x2e, 0x69, 0x6e, 0x5f, 0x76, 0x61, 0x72, 0x5f, 0x54, 0x45, 0x58, 0x43,
0x4f, 0x4f, 0x52, 0x44, 0x30, 0x29, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20,
0x66, 0x6c, 0x6f, 0x61, 0x74, 0x33, 0x20, 0x5f, 0x33, 0x38, 0x20, 0x3d,
0x20, 0x5f, 0x33, 0x34, 0x2e, 0x78, 0x79, 0x7a, 0x20, 0x2a, 0x20, 0x43,
0x6f, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x73, 0x2e, 0x63, 0x6f, 0x6c,
0x6f, 0x72, 0x5f, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x3b, 0x0a, 0x20, 0x20,
0x20, 0x20, 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x34, 0x20, 0x5f, 0x33, 0x39,
0x20, 0x3d, 0x20, 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x34, 0x28, 0x5f, 0x33,
0x38, 0x2e, 0x78, 0x2c, 0x20, 0x5f, 0x33, 0x38, 0x2e, 0x79, 0x2c, 0x20,
0x5f, 0x33, 0x38, 0x2e, 0x7a, 0x2c, 0x20, 0x5f, 0x32, 0x37, 0x2e, 0x77,
0x29, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x5f, 0x33, 0x39, 0x2e, 0x77,
0x20, 0x3d, 0x20, 0x5f, 0x33, 0x34, 0x2e, 0x77, 0x3b, 0x0a, 0x20, 0x20,
0x20, 0x20, 0x6f, 0x75, 0x74, 0x2e, 0x6f, 0x75, 0x74, 0x5f, 0x76, 0x61,
0x72, 0x5f, 0x53, 0x56, 0x5f, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x20,
0x5b, 0x5b, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x28, 0x30, 0x29, 0x5d, 0x5d,
0x3b, 0x0a, 0x7d, 0x3b, 0x0a, 0x0a, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74,
0x20, 0x6d, 0x61, 0x69, 0x6e, 0x30, 0x5f, 0x69, 0x6e, 0x0a, 0x7b, 0x0a,
0x20, 0x20, 0x20, 0x20, 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x34, 0x20, 0x69,
0x3d, 0x20, 0x5f, 0x33, 0x39, 0x20, 0x2a, 0x20, 0x69, 0x6e, 0x2e, 0x69,
0x6e, 0x5f, 0x76, 0x61, 0x72, 0x5f, 0x43, 0x4f, 0x4c, 0x4f, 0x52, 0x30,
0x20, 0x5b, 0x5b, 0x75, 0x73, 0x65, 0x72, 0x28, 0x6c, 0x6f, 0x63, 0x6e,
0x30, 0x29, 0x5d, 0x5d, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x66, 0x6c,
0x6f, 0x61, 0x74, 0x32, 0x20, 0x69, 0x6e, 0x5f, 0x76, 0x61, 0x72, 0x5f,
0x54, 0x45, 0x58, 0x43, 0x4f, 0x4f, 0x52, 0x44, 0x30, 0x20, 0x5b, 0x5b,
0x75, 0x73, 0x65, 0x72, 0x28, 0x6c, 0x6f, 0x63, 0x6e, 0x31, 0x29, 0x5d,
0x5d, 0x3b, 0x0a, 0x7d, 0x3b, 0x0a, 0x0a, 0x66, 0x72, 0x61, 0x67, 0x6d,
0x65, 0x6e, 0x74, 0x20, 0x6d, 0x61, 0x69, 0x6e, 0x30, 0x5f, 0x6f, 0x75,
0x74, 0x20, 0x6d, 0x61, 0x69, 0x6e, 0x30, 0x28, 0x6d, 0x61, 0x69, 0x6e,
0x30, 0x5f, 0x69, 0x6e, 0x20, 0x69, 0x6e, 0x20, 0x5b, 0x5b, 0x73, 0x74,
0x61, 0x67, 0x65, 0x5f, 0x69, 0x6e, 0x5d, 0x5d, 0x2c, 0x20, 0x74, 0x65,
0x78, 0x74, 0x75, 0x72, 0x65, 0x32, 0x64, 0x3c, 0x66, 0x6c, 0x6f, 0x61,
0x74, 0x3e, 0x20, 0x75, 0x5f, 0x74, 0x65, 0x78, 0x74, 0x75, 0x72, 0x65,
0x20, 0x5b, 0x5b, 0x74, 0x65, 0x78, 0x74, 0x75, 0x72, 0x65, 0x28, 0x30,
0x29, 0x5d, 0x5d, 0x2c, 0x20, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x72,
0x20, 0x75, 0x5f, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x72, 0x20, 0x5b,
0x5b, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x72, 0x28, 0x30, 0x29, 0x5d,
0x5d, 0x29, 0x0a, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x6d, 0x61, 0x69,
0x6e, 0x30, 0x5f, 0x6f, 0x75, 0x74, 0x20, 0x6f, 0x75, 0x74, 0x20, 0x3d,
0x20, 0x7b, 0x7d, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x6f, 0x75, 0x74,
0x2e, 0x6f, 0x75, 0x74, 0x5f, 0x76, 0x61, 0x72, 0x5f, 0x53, 0x56, 0x5f,
0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x20, 0x3d, 0x20, 0x75, 0x5f, 0x74,
0x65, 0x78, 0x74, 0x75, 0x72, 0x65, 0x2e, 0x73, 0x61, 0x6d, 0x70, 0x6c,
0x65, 0x28, 0x75, 0x5f, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x72, 0x2c,
0x20, 0x69, 0x6e, 0x2e, 0x69, 0x6e, 0x5f, 0x76, 0x61, 0x72, 0x5f, 0x54,
0x45, 0x58, 0x43, 0x4f, 0x4f, 0x52, 0x44, 0x30, 0x29, 0x20, 0x2a, 0x20,
0x69, 0x6e, 0x2e, 0x69, 0x6e, 0x5f, 0x76, 0x61, 0x72, 0x5f, 0x43, 0x4f,
0x4c, 0x4f, 0x52, 0x30, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65,
0x74, 0x75, 0x72, 0x6e, 0x20, 0x6f, 0x75, 0x74, 0x3b, 0x0a, 0x7d, 0x0a,
0x0a
0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e,
0x20, 0x6f, 0x75, 0x74, 0x3b, 0x0a, 0x7d, 0x0a, 0x0a
};
static const unsigned int texture_rgba_frag_msl_len = 517;
static const unsigned int texture_rgba_frag_msl_len = 789;

View File

@@ -1,6 +1,6 @@
static const unsigned char texture_rgba_frag_spv[] = {
0x03, 0x02, 0x23, 0x07, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x0e, 0x00,
0x1c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x11, 0x00, 0x02, 0x00,
0x2b, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x11, 0x00, 0x02, 0x00,
0x01, 0x00, 0x00, 0x00, 0x0e, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
0x01, 0x00, 0x00, 0x00, 0x0f, 0x00, 0x08, 0x00, 0x04, 0x00, 0x00, 0x00,
0x01, 0x00, 0x00, 0x00, 0x6d, 0x61, 0x69, 0x6e, 0x00, 0x00, 0x00, 0x00,
@@ -8,69 +8,104 @@ static const unsigned char texture_rgba_frag_spv[] = {
0x10, 0x00, 0x03, 0x00, 0x01, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00,
0x03, 0x00, 0x03, 0x00, 0x05, 0x00, 0x00, 0x00, 0x58, 0x02, 0x00, 0x00,
0x05, 0x00, 0x06, 0x00, 0x05, 0x00, 0x00, 0x00, 0x74, 0x79, 0x70, 0x65,
0x2e, 0x32, 0x64, 0x2e, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x00, 0x00, 0x00,
0x05, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x75, 0x5f, 0x74, 0x65,
0x78, 0x74, 0x75, 0x72, 0x65, 0x00, 0x00, 0x00, 0x05, 0x00, 0x06, 0x00,
0x07, 0x00, 0x00, 0x00, 0x74, 0x79, 0x70, 0x65, 0x2e, 0x73, 0x61, 0x6d,
0x70, 0x6c, 0x65, 0x72, 0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x05, 0x00,
0x08, 0x00, 0x00, 0x00, 0x75, 0x5f, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65,
0x72, 0x00, 0x00, 0x00, 0x05, 0x00, 0x06, 0x00, 0x02, 0x00, 0x00, 0x00,
0x69, 0x6e, 0x2e, 0x76, 0x61, 0x72, 0x2e, 0x43, 0x4f, 0x4c, 0x4f, 0x52,
0x30, 0x00, 0x00, 0x00, 0x05, 0x00, 0x07, 0x00, 0x03, 0x00, 0x00, 0x00,
0x69, 0x6e, 0x2e, 0x76, 0x61, 0x72, 0x2e, 0x54, 0x45, 0x58, 0x43, 0x4f,
0x4f, 0x52, 0x44, 0x30, 0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x07, 0x00,
0x04, 0x00, 0x00, 0x00, 0x6f, 0x75, 0x74, 0x2e, 0x76, 0x61, 0x72, 0x2e,
0x53, 0x56, 0x5f, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x00, 0x00, 0x00,
0x05, 0x00, 0x04, 0x00, 0x01, 0x00, 0x00, 0x00, 0x6d, 0x61, 0x69, 0x6e,
0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x07, 0x00, 0x09, 0x00, 0x00, 0x00,
0x74, 0x79, 0x70, 0x65, 0x2e, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x64,
0x2e, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x00, 0x00, 0x47, 0x00, 0x04, 0x00,
0x02, 0x00, 0x00, 0x00, 0x1e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x47, 0x00, 0x04, 0x00, 0x03, 0x00, 0x00, 0x00, 0x1e, 0x00, 0x00, 0x00,
0x01, 0x00, 0x00, 0x00, 0x47, 0x00, 0x04, 0x00, 0x04, 0x00, 0x00, 0x00,
0x2e, 0x43, 0x6f, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x73, 0x00, 0x00,
0x06, 0x00, 0x06, 0x00, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x5f, 0x73, 0x63, 0x61, 0x6c, 0x65, 0x00,
0x05, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x43, 0x6f, 0x6e, 0x73,
0x74, 0x61, 0x6e, 0x74, 0x73, 0x00, 0x00, 0x00, 0x05, 0x00, 0x06, 0x00,
0x07, 0x00, 0x00, 0x00, 0x74, 0x79, 0x70, 0x65, 0x2e, 0x32, 0x64, 0x2e,
0x69, 0x6d, 0x61, 0x67, 0x65, 0x00, 0x00, 0x00, 0x05, 0x00, 0x05, 0x00,
0x08, 0x00, 0x00, 0x00, 0x75, 0x5f, 0x74, 0x65, 0x78, 0x74, 0x75, 0x72,
0x65, 0x00, 0x00, 0x00, 0x05, 0x00, 0x06, 0x00, 0x09, 0x00, 0x00, 0x00,
0x74, 0x79, 0x70, 0x65, 0x2e, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x72,
0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x05, 0x00, 0x0a, 0x00, 0x00, 0x00,
0x75, 0x5f, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x72, 0x00, 0x00, 0x00,
0x05, 0x00, 0x06, 0x00, 0x02, 0x00, 0x00, 0x00, 0x69, 0x6e, 0x2e, 0x76,
0x61, 0x72, 0x2e, 0x43, 0x4f, 0x4c, 0x4f, 0x52, 0x30, 0x00, 0x00, 0x00,
0x05, 0x00, 0x07, 0x00, 0x03, 0x00, 0x00, 0x00, 0x69, 0x6e, 0x2e, 0x76,
0x61, 0x72, 0x2e, 0x54, 0x45, 0x58, 0x43, 0x4f, 0x4f, 0x52, 0x44, 0x30,
0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x07, 0x00, 0x04, 0x00, 0x00, 0x00,
0x6f, 0x75, 0x74, 0x2e, 0x76, 0x61, 0x72, 0x2e, 0x53, 0x56, 0x5f, 0x54,
0x61, 0x72, 0x67, 0x65, 0x74, 0x00, 0x00, 0x00, 0x05, 0x00, 0x04, 0x00,
0x01, 0x00, 0x00, 0x00, 0x6d, 0x61, 0x69, 0x6e, 0x00, 0x00, 0x00, 0x00,
0x05, 0x00, 0x07, 0x00, 0x0b, 0x00, 0x00, 0x00, 0x74, 0x79, 0x70, 0x65,
0x2e, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x64, 0x2e, 0x69, 0x6d, 0x61,
0x67, 0x65, 0x00, 0x00, 0x47, 0x00, 0x04, 0x00, 0x02, 0x00, 0x00, 0x00,
0x1e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x47, 0x00, 0x04, 0x00,
0x06, 0x00, 0x00, 0x00, 0x22, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00,
0x47, 0x00, 0x04, 0x00, 0x06, 0x00, 0x00, 0x00, 0x21, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x47, 0x00, 0x04, 0x00, 0x08, 0x00, 0x00, 0x00,
0x22, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x47, 0x00, 0x04, 0x00,
0x08, 0x00, 0x00, 0x00, 0x21, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x16, 0x00, 0x03, 0x00, 0x0a, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00,
0x19, 0x00, 0x09, 0x00, 0x05, 0x00, 0x00, 0x00, 0x0a, 0x00, 0x00, 0x00,
0x03, 0x00, 0x00, 0x00, 0x1e, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
0x47, 0x00, 0x04, 0x00, 0x04, 0x00, 0x00, 0x00, 0x1e, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x47, 0x00, 0x04, 0x00, 0x06, 0x00, 0x00, 0x00,
0x22, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x47, 0x00, 0x04, 0x00,
0x06, 0x00, 0x00, 0x00, 0x21, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x47, 0x00, 0x04, 0x00, 0x08, 0x00, 0x00, 0x00, 0x22, 0x00, 0x00, 0x00,
0x02, 0x00, 0x00, 0x00, 0x47, 0x00, 0x04, 0x00, 0x08, 0x00, 0x00, 0x00,
0x21, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x47, 0x00, 0x04, 0x00,
0x0a, 0x00, 0x00, 0x00, 0x22, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00,
0x47, 0x00, 0x04, 0x00, 0x0a, 0x00, 0x00, 0x00, 0x21, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x48, 0x00, 0x05, 0x00, 0x05, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x23, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x47, 0x00, 0x03, 0x00, 0x05, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00,
0x15, 0x00, 0x04, 0x00, 0x0c, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00,
0x01, 0x00, 0x00, 0x00, 0x2b, 0x00, 0x04, 0x00, 0x0c, 0x00, 0x00, 0x00,
0x0d, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x16, 0x00, 0x03, 0x00,
0x0e, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x1e, 0x00, 0x03, 0x00,
0x05, 0x00, 0x00, 0x00, 0x0e, 0x00, 0x00, 0x00, 0x20, 0x00, 0x04, 0x00,
0x0f, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00,
0x19, 0x00, 0x09, 0x00, 0x07, 0x00, 0x00, 0x00, 0x0e, 0x00, 0x00, 0x00,
0x01, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x20, 0x00, 0x04, 0x00, 0x0b, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x05, 0x00, 0x00, 0x00, 0x1a, 0x00, 0x02, 0x00, 0x07, 0x00, 0x00, 0x00,
0x20, 0x00, 0x04, 0x00, 0x0c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x07, 0x00, 0x00, 0x00, 0x17, 0x00, 0x04, 0x00, 0x0d, 0x00, 0x00, 0x00,
0x0a, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x20, 0x00, 0x04, 0x00,
0x0e, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x0d, 0x00, 0x00, 0x00,
0x17, 0x00, 0x04, 0x00, 0x0f, 0x00, 0x00, 0x00, 0x0a, 0x00, 0x00, 0x00,
0x02, 0x00, 0x00, 0x00, 0x20, 0x00, 0x04, 0x00, 0x10, 0x00, 0x00, 0x00,
0x01, 0x00, 0x00, 0x00, 0x0f, 0x00, 0x00, 0x00, 0x20, 0x00, 0x04, 0x00,
0x11, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x0d, 0x00, 0x00, 0x00,
0x13, 0x00, 0x02, 0x00, 0x12, 0x00, 0x00, 0x00, 0x21, 0x00, 0x03, 0x00,
0x13, 0x00, 0x00, 0x00, 0x12, 0x00, 0x00, 0x00, 0x1b, 0x00, 0x03, 0x00,
0x09, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x3b, 0x00, 0x04, 0x00,
0x0b, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x3b, 0x00, 0x04, 0x00, 0x0c, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x3b, 0x00, 0x04, 0x00, 0x0e, 0x00, 0x00, 0x00,
0x20, 0x00, 0x04, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x07, 0x00, 0x00, 0x00, 0x1a, 0x00, 0x02, 0x00, 0x09, 0x00, 0x00, 0x00,
0x20, 0x00, 0x04, 0x00, 0x11, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x09, 0x00, 0x00, 0x00, 0x17, 0x00, 0x04, 0x00, 0x12, 0x00, 0x00, 0x00,
0x0e, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x20, 0x00, 0x04, 0x00,
0x13, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x12, 0x00, 0x00, 0x00,
0x17, 0x00, 0x04, 0x00, 0x14, 0x00, 0x00, 0x00, 0x0e, 0x00, 0x00, 0x00,
0x02, 0x00, 0x00, 0x00, 0x20, 0x00, 0x04, 0x00, 0x15, 0x00, 0x00, 0x00,
0x01, 0x00, 0x00, 0x00, 0x14, 0x00, 0x00, 0x00, 0x20, 0x00, 0x04, 0x00,
0x16, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x12, 0x00, 0x00, 0x00,
0x13, 0x00, 0x02, 0x00, 0x17, 0x00, 0x00, 0x00, 0x21, 0x00, 0x03, 0x00,
0x18, 0x00, 0x00, 0x00, 0x17, 0x00, 0x00, 0x00, 0x1b, 0x00, 0x03, 0x00,
0x0b, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00, 0x17, 0x00, 0x04, 0x00,
0x19, 0x00, 0x00, 0x00, 0x0e, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00,
0x20, 0x00, 0x04, 0x00, 0x1a, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00,
0x0e, 0x00, 0x00, 0x00, 0x3b, 0x00, 0x04, 0x00, 0x0f, 0x00, 0x00, 0x00,
0x06, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x3b, 0x00, 0x04, 0x00,
0x10, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x3b, 0x00, 0x04, 0x00, 0x11, 0x00, 0x00, 0x00, 0x0a, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x3b, 0x00, 0x04, 0x00, 0x13, 0x00, 0x00, 0x00,
0x02, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x3b, 0x00, 0x04, 0x00,
0x10, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
0x3b, 0x00, 0x04, 0x00, 0x11, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00,
0x03, 0x00, 0x00, 0x00, 0x36, 0x00, 0x05, 0x00, 0x12, 0x00, 0x00, 0x00,
0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x13, 0x00, 0x00, 0x00,
0xf8, 0x00, 0x02, 0x00, 0x14, 0x00, 0x00, 0x00, 0x3d, 0x00, 0x04, 0x00,
0x0d, 0x00, 0x00, 0x00, 0x15, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00,
0x3d, 0x00, 0x04, 0x00, 0x0f, 0x00, 0x00, 0x00, 0x16, 0x00, 0x00, 0x00,
0x03, 0x00, 0x00, 0x00, 0x3d, 0x00, 0x04, 0x00, 0x05, 0x00, 0x00, 0x00,
0x17, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x3d, 0x00, 0x04, 0x00,
0x07, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00,
0x56, 0x00, 0x05, 0x00, 0x09, 0x00, 0x00, 0x00, 0x19, 0x00, 0x00, 0x00,
0x17, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x00, 0x57, 0x00, 0x06, 0x00,
0x0d, 0x00, 0x00, 0x00, 0x1a, 0x00, 0x00, 0x00, 0x19, 0x00, 0x00, 0x00,
0x16, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00,
0x0d, 0x00, 0x00, 0x00, 0x1b, 0x00, 0x00, 0x00, 0x1a, 0x00, 0x00, 0x00,
0x15, 0x00, 0x00, 0x00, 0x3e, 0x00, 0x03, 0x00, 0x04, 0x00, 0x00, 0x00,
0x1b, 0x00, 0x00, 0x00, 0xfd, 0x00, 0x01, 0x00, 0x38, 0x00, 0x01, 0x00
0x15, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
0x3b, 0x00, 0x04, 0x00, 0x16, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00,
0x03, 0x00, 0x00, 0x00, 0x01, 0x00, 0x03, 0x00, 0x12, 0x00, 0x00, 0x00,
0x1b, 0x00, 0x00, 0x00, 0x36, 0x00, 0x05, 0x00, 0x17, 0x00, 0x00, 0x00,
0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x00,
0xf8, 0x00, 0x02, 0x00, 0x1c, 0x00, 0x00, 0x00, 0x3d, 0x00, 0x04, 0x00,
0x12, 0x00, 0x00, 0x00, 0x1d, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00,
0x3d, 0x00, 0x04, 0x00, 0x14, 0x00, 0x00, 0x00, 0x1e, 0x00, 0x00, 0x00,
0x03, 0x00, 0x00, 0x00, 0x3d, 0x00, 0x04, 0x00, 0x07, 0x00, 0x00, 0x00,
0x1f, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x3d, 0x00, 0x04, 0x00,
0x09, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x0a, 0x00, 0x00, 0x00,
0x56, 0x00, 0x05, 0x00, 0x0b, 0x00, 0x00, 0x00, 0x21, 0x00, 0x00, 0x00,
0x1f, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x57, 0x00, 0x06, 0x00,
0x12, 0x00, 0x00, 0x00, 0x22, 0x00, 0x00, 0x00, 0x21, 0x00, 0x00, 0x00,
0x1e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x4f, 0x00, 0x08, 0x00,
0x19, 0x00, 0x00, 0x00, 0x23, 0x00, 0x00, 0x00, 0x22, 0x00, 0x00, 0x00,
0x22, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
0x02, 0x00, 0x00, 0x00, 0x41, 0x00, 0x05, 0x00, 0x1a, 0x00, 0x00, 0x00,
0x24, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x0d, 0x00, 0x00, 0x00,
0x3d, 0x00, 0x04, 0x00, 0x0e, 0x00, 0x00, 0x00, 0x25, 0x00, 0x00, 0x00,
0x24, 0x00, 0x00, 0x00, 0x8e, 0x00, 0x05, 0x00, 0x19, 0x00, 0x00, 0x00,
0x26, 0x00, 0x00, 0x00, 0x23, 0x00, 0x00, 0x00, 0x25, 0x00, 0x00, 0x00,
0x4f, 0x00, 0x09, 0x00, 0x12, 0x00, 0x00, 0x00, 0x27, 0x00, 0x00, 0x00,
0x1b, 0x00, 0x00, 0x00, 0x26, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00,
0x05, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00,
0x51, 0x00, 0x05, 0x00, 0x0e, 0x00, 0x00, 0x00, 0x28, 0x00, 0x00, 0x00,
0x22, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x52, 0x00, 0x06, 0x00,
0x12, 0x00, 0x00, 0x00, 0x29, 0x00, 0x00, 0x00, 0x28, 0x00, 0x00, 0x00,
0x27, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00,
0x12, 0x00, 0x00, 0x00, 0x2a, 0x00, 0x00, 0x00, 0x29, 0x00, 0x00, 0x00,
0x1d, 0x00, 0x00, 0x00, 0x3e, 0x00, 0x03, 0x00, 0x04, 0x00, 0x00, 0x00,
0x2a, 0x00, 0x00, 0x00, 0xfd, 0x00, 0x01, 0x00, 0x38, 0x00, 0x01, 0x00
};
static const unsigned int texture_rgba_frag_spv_len = 876;
static const unsigned int texture_rgba_frag_spv_len = 1296;

View File

@@ -1,402 +0,0 @@
static const unsigned char texture_rgba_pixelart_frag_dxil[] = {
0x44, 0x58, 0x42, 0x43, 0xf4, 0x83, 0x28, 0x2e, 0xe0, 0xed, 0xd2, 0xe2,
0x3c, 0x78, 0x6f, 0xb7, 0x3e, 0x59, 0xdf, 0x55, 0x01, 0x00, 0x00, 0x00,
0xac, 0x12, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x00, 0x00,
0x4c, 0x00, 0x00, 0x00, 0xa8, 0x00, 0x00, 0x00, 0xe4, 0x00, 0x00, 0x00,
0xf0, 0x01, 0x00, 0x00, 0x54, 0x09, 0x00, 0x00, 0x70, 0x09, 0x00, 0x00,
0x53, 0x46, 0x49, 0x30, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x49, 0x53, 0x47, 0x31, 0x54, 0x00, 0x00, 0x00,
0x02, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x48, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0f, 0x0f, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x48, 0x00, 0x00, 0x00,
0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00,
0x01, 0x00, 0x00, 0x00, 0x03, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x54, 0x45, 0x58, 0x43, 0x4f, 0x4f, 0x52, 0x44, 0x00, 0x00, 0x00, 0x00,
0x4f, 0x53, 0x47, 0x31, 0x34, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x28, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x53, 0x56, 0x5f, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x00, 0x00, 0x00,
0x50, 0x53, 0x56, 0x30, 0x04, 0x01, 0x00, 0x00, 0x34, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff,
0x00, 0x00, 0x00, 0x00, 0x02, 0x01, 0x00, 0x02, 0x01, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x13, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x00,
0x02, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x0d, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x01, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x0e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x03, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x18, 0x00, 0x00, 0x00, 0x00, 0x54, 0x45, 0x58, 0x43, 0x4f, 0x4f, 0x52,
0x44, 0x00, 0x54, 0x45, 0x58, 0x43, 0x4f, 0x4f, 0x52, 0x44, 0x00, 0x6d,
0x61, 0x69, 0x6e, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x01, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x44, 0x00, 0x03, 0x02, 0x00, 0x00,
0x0a, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x01, 0x01, 0x42, 0x00,
0x03, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x01, 0x00, 0x44, 0x10, 0x03, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
0x02, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00,
0x0f, 0x00, 0x00, 0x00, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x53, 0x54, 0x41, 0x54, 0x5c, 0x07, 0x00, 0x00,
0x60, 0x00, 0x00, 0x00, 0xd7, 0x01, 0x00, 0x00, 0x44, 0x58, 0x49, 0x4c,
0x00, 0x01, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x44, 0x07, 0x00, 0x00,
0x42, 0x43, 0xc0, 0xde, 0x21, 0x0c, 0x00, 0x00, 0xce, 0x01, 0x00, 0x00,
0x0b, 0x82, 0x20, 0x00, 0x02, 0x00, 0x00, 0x00, 0x13, 0x00, 0x00, 0x00,
0x07, 0x81, 0x23, 0x91, 0x41, 0xc8, 0x04, 0x49, 0x06, 0x10, 0x32, 0x39,
0x92, 0x01, 0x84, 0x0c, 0x25, 0x05, 0x08, 0x19, 0x1e, 0x04, 0x8b, 0x62,
0x80, 0x18, 0x45, 0x02, 0x42, 0x92, 0x0b, 0x42, 0xc4, 0x10, 0x32, 0x14,
0x38, 0x08, 0x18, 0x4b, 0x0a, 0x32, 0x62, 0x88, 0x48, 0x90, 0x14, 0x20,
0x43, 0x46, 0x88, 0xa5, 0x00, 0x19, 0x32, 0x42, 0xe4, 0x48, 0x0e, 0x90,
0x11, 0x23, 0xc4, 0x50, 0x41, 0x51, 0x81, 0x8c, 0xe1, 0x83, 0xe5, 0x8a,
0x04, 0x31, 0x46, 0x06, 0x51, 0x18, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00,
0x1b, 0x8c, 0xe0, 0xff, 0xff, 0xff, 0xff, 0x07, 0x40, 0x02, 0xa8, 0x0d,
0x84, 0xf0, 0xff, 0xff, 0xff, 0xff, 0x03, 0x20, 0x6d, 0x30, 0x86, 0xff,
0xff, 0xff, 0xff, 0x1f, 0x00, 0x09, 0xa8, 0x00, 0x49, 0x18, 0x00, 0x00,
0x03, 0x00, 0x00, 0x00, 0x13, 0x82, 0x60, 0x42, 0x20, 0x4c, 0x08, 0x06,
0x00, 0x00, 0x00, 0x00, 0x89, 0x20, 0x00, 0x00, 0x53, 0x00, 0x00, 0x00,
0x32, 0x22, 0x88, 0x09, 0x20, 0x64, 0x85, 0x04, 0x13, 0x23, 0xa4, 0x84,
0x04, 0x13, 0x23, 0xe3, 0x84, 0xa1, 0x90, 0x14, 0x12, 0x4c, 0x8c, 0x8c,
0x0b, 0x84, 0xc4, 0x4c, 0x10, 0x8c, 0xc1, 0x08, 0x40, 0x09, 0x00, 0x0a,
0x66, 0x00, 0xe6, 0x08, 0xc0, 0x60, 0x8e, 0x00, 0x29, 0xc6, 0x40, 0x10,
0x44, 0x41, 0x90, 0x51, 0x0c, 0x80, 0x20, 0x88, 0x62, 0x20, 0xa4, 0x0c,
0x03, 0x31, 0x90, 0x52, 0x88, 0x81, 0x18, 0x06, 0x62, 0x6e, 0x1a, 0x2e,
0x7f, 0xc2, 0x1e, 0x42, 0xf2, 0x57, 0x42, 0x5a, 0x89, 0xc9, 0x2f, 0x6e,
0x1b, 0x15, 0xc3, 0x30, 0x0c, 0x04, 0x15, 0xf7, 0x0c, 0x97, 0x3f, 0x61,
0x0f, 0x21, 0xf9, 0x21, 0xd0, 0x0c, 0x0b, 0x81, 0x82, 0xa7, 0x48, 0x0e,
0x01, 0x41, 0xc3, 0x30, 0x0c, 0x04, 0x41, 0x0c, 0xc3, 0x30, 0x0c, 0xc3,
0x40, 0xd1, 0x51, 0xc3, 0xe5, 0x4f, 0xd8, 0x43, 0x48, 0x3e, 0xb7, 0x51,
0xc5, 0x4a, 0x4c, 0x7e, 0x71, 0xdb, 0x88, 0x18, 0x86, 0x61, 0x28, 0xc4,
0x44, 0x40, 0x04, 0x51, 0x73, 0x04, 0x41, 0x31, 0x20, 0xa2, 0x20, 0x08,
0x8b, 0xae, 0x81, 0x80, 0x61, 0x04, 0x62, 0x98, 0xa9, 0x0d, 0xc6, 0x81,
0x1d, 0xc2, 0x61, 0x1e, 0xe6, 0xc1, 0x0d, 0x68, 0xa1, 0x1c, 0xf0, 0x81,
0x1e, 0xea, 0x41, 0x1e, 0xca, 0x41, 0x0e, 0x48, 0x81, 0x0f, 0xec, 0xa1,
0x1c, 0xc6, 0x81, 0x1e, 0xde, 0x41, 0x1e, 0xf8, 0xc0, 0x1c, 0xd8, 0xe1,
0x1d, 0xc2, 0x81, 0x1e, 0xd8, 0x00, 0x0c, 0xe8, 0xc0, 0x0f, 0xc0, 0xc0,
0x0f, 0xf4, 0x40, 0x0f, 0xda, 0x21, 0x1d, 0xe0, 0x61, 0x1e, 0x7e, 0x81,
0x1e, 0xf2, 0x01, 0x1e, 0xca, 0x01, 0x05, 0xc4, 0x4c, 0x62, 0x30, 0x0e,
0xec, 0x10, 0x0e, 0xf3, 0x30, 0x0f, 0x6e, 0x40, 0x0b, 0xe5, 0x80, 0x0f,
0xf4, 0x50, 0x0f, 0xf2, 0x50, 0x0e, 0x72, 0x40, 0x0a, 0x7c, 0x60, 0x0f,
0xe5, 0x30, 0x0e, 0xf4, 0xf0, 0x0e, 0xf2, 0xc0, 0x07, 0xe6, 0xc0, 0x0e,
0xef, 0x10, 0x0e, 0xf4, 0xc0, 0x06, 0x60, 0x40, 0x07, 0x7e, 0x00, 0x06,
0x7e, 0x80, 0x04, 0x6d, 0x23, 0xee, 0x98, 0x09, 0x7b, 0x88, 0x9f, 0x73,
0x9a, 0x89, 0xb8, 0x26, 0x14, 0x68, 0xe4, 0xdd, 0x24, 0x4d, 0x11, 0x25,
0x4c, 0x3e, 0x0b, 0x30, 0xcf, 0x42, 0x44, 0xec, 0x04, 0x4c, 0x04, 0x0a,
0x08, 0x02, 0x13, 0x81, 0x00, 0x00, 0x00, 0x00, 0x13, 0x14, 0x72, 0xc0,
0x87, 0x74, 0x60, 0x87, 0x36, 0x68, 0x87, 0x79, 0x68, 0x03, 0x72, 0xc0,
0x87, 0x0d, 0xaf, 0x50, 0x0e, 0x6d, 0xd0, 0x0e, 0x7a, 0x50, 0x0e, 0x6d,
0x00, 0x0f, 0x7a, 0x30, 0x07, 0x72, 0xa0, 0x07, 0x73, 0x20, 0x07, 0x6d,
0x90, 0x0e, 0x71, 0xa0, 0x07, 0x73, 0x20, 0x07, 0x6d, 0x90, 0x0e, 0x78,
0xa0, 0x07, 0x73, 0x20, 0x07, 0x6d, 0x90, 0x0e, 0x71, 0x60, 0x07, 0x7a,
0x30, 0x07, 0x72, 0xd0, 0x06, 0xe9, 0x30, 0x07, 0x72, 0xa0, 0x07, 0x73,
0x20, 0x07, 0x6d, 0x90, 0x0e, 0x76, 0x40, 0x07, 0x7a, 0x60, 0x07, 0x74,
0xd0, 0x06, 0xe6, 0x10, 0x07, 0x76, 0xa0, 0x07, 0x73, 0x20, 0x07, 0x6d,
0x60, 0x0e, 0x73, 0x20, 0x07, 0x7a, 0x30, 0x07, 0x72, 0xd0, 0x06, 0xe6,
0x60, 0x07, 0x74, 0xa0, 0x07, 0x76, 0x40, 0x07, 0x6d, 0xe0, 0x0e, 0x78,
0xa0, 0x07, 0x71, 0x60, 0x07, 0x7a, 0x30, 0x07, 0x72, 0xa0, 0x07, 0x76,
0x40, 0x07, 0x43, 0x9e, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x86, 0x3c, 0x06, 0x10, 0x00, 0x01, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x0c, 0x79, 0x10, 0x20, 0x00, 0x04, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0xf2, 0x28, 0x40, 0x00, 0x04, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0xe4, 0x61, 0x80, 0x00, 0x08,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x60, 0xc8, 0x13, 0x01, 0x01,
0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x90, 0x87, 0x02,
0x02, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x21, 0xcf,
0x05, 0x04, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x59,
0x20, 0x00, 0x00, 0x00, 0x12, 0x00, 0x00, 0x00, 0x32, 0x1e, 0x98, 0x14,
0x19, 0x11, 0x4c, 0x90, 0x8c, 0x09, 0x26, 0x47, 0xc6, 0x04, 0x43, 0x22,
0x4a, 0x60, 0x04, 0xa0, 0x18, 0x8a, 0xa0, 0x24, 0xca, 0xa0, 0x40, 0xca,
0xa1, 0x34, 0x0a, 0xa1, 0x3c, 0x0a, 0xac, 0x30, 0x03, 0xa8, 0x28, 0x89,
0x11, 0x80, 0x22, 0x28, 0x84, 0x02, 0xa1, 0x6e, 0x06, 0x80, 0xbc, 0x19,
0x00, 0xfa, 0x66, 0x00, 0x28, 0x9c, 0x01, 0x20, 0x71, 0x2c, 0xc4, 0x20,
0x02, 0x81, 0x40, 0x9e, 0x07, 0x00, 0x00, 0x00, 0x79, 0x18, 0x00, 0x00,
0x91, 0x00, 0x00, 0x00, 0x1a, 0x03, 0x4c, 0x90, 0x46, 0x02, 0x13, 0x44,
0x8f, 0x0c, 0x6f, 0xec, 0xed, 0x4d, 0x0c, 0x24, 0xc6, 0x05, 0xc7, 0x45,
0xa6, 0x06, 0xa6, 0xc6, 0x45, 0x06, 0x07, 0x04, 0x25, 0xa7, 0xcc, 0x4c,
0x4c, 0xcc, 0x66, 0x6c, 0x46, 0x26, 0x65, 0x43, 0x10, 0x4c, 0x10, 0x08,
0x64, 0x82, 0x40, 0x24, 0x1b, 0x84, 0x81, 0xd8, 0x20, 0x10, 0x04, 0x05,
0xb8, 0xb9, 0x09, 0x02, 0xa1, 0x6c, 0x18, 0x0e, 0x84, 0x98, 0x20, 0x74,
0x1a, 0x93, 0xba, 0x2f, 0xba, 0x32, 0x3c, 0xba, 0x3a, 0xb9, 0xb2, 0x09,
0x02, 0xb1, 0x4c, 0x10, 0x08, 0x66, 0x83, 0x40, 0x34, 0x1b, 0x12, 0x42,
0x59, 0x18, 0x62, 0x60, 0x08, 0x67, 0x43, 0xf0, 0x4c, 0x10, 0x3e, 0x8e,
0x0c, 0x5d, 0x1e, 0x5c, 0xd9, 0xd7, 0xd0, 0x9b, 0x1b, 0x5d, 0x19, 0x1e,
0xdd, 0x04, 0x81, 0x68, 0x26, 0x08, 0x84, 0xb3, 0x01, 0x21, 0x22, 0x69,
0x22, 0x06, 0x0a, 0xd8, 0x10, 0x54, 0x13, 0x84, 0x30, 0xe8, 0x98, 0xd4,
0x7d, 0xcd, 0x85, 0xb5, 0xc1, 0xb1, 0x95, 0xc9, 0x6d, 0x40, 0x88, 0x0b,
0x63, 0x88, 0x81, 0x00, 0x36, 0x04, 0xd9, 0x06, 0x02, 0x02, 0x2c, 0x6d,
0x82, 0xe0, 0x6d, 0x94, 0x86, 0xde, 0xdc, 0xe8, 0xca, 0xf0, 0xe8, 0xbe,
0xe8, 0xca, 0xf0, 0xca, 0xd8, 0xbe, 0xe6, 0xd2, 0xf4, 0xca, 0x26, 0x08,
0xc4, 0x33, 0x41, 0x20, 0xa0, 0x09, 0x02, 0x11, 0x6d, 0x40, 0x90, 0x6e,
0x22, 0xbc, 0xe6, 0x03, 0x83, 0x0d, 0x02, 0x15, 0x06, 0x1b, 0x06, 0x82,
0x13, 0x83, 0x09, 0x82, 0x00, 0x6c, 0x00, 0x36, 0x0c, 0x44, 0x19, 0x94,
0xc1, 0x86, 0xc0, 0x0c, 0x36, 0x0c, 0x03, 0x19, 0x9c, 0xc1, 0x04, 0x41,
0x0c, 0xbc, 0x0d, 0x41, 0x1a, 0x90, 0x68, 0x0b, 0x4b, 0x73, 0x23, 0x42,
0x55, 0x84, 0x35, 0xf4, 0xf4, 0x24, 0x45, 0x34, 0x41, 0x28, 0xaa, 0x09,
0x42, 0x61, 0x6d, 0x08, 0x88, 0x09, 0x42, 0x71, 0x4d, 0x10, 0x0a, 0x6c,
0x82, 0x40, 0x48, 0x1b, 0x84, 0x49, 0x0e, 0x36, 0x2c, 0x04, 0x1b, 0xb4,
0x81, 0x1b, 0xbc, 0x01, 0x1c, 0x0c, 0x71, 0x40, 0xb8, 0xc1, 0x1c, 0x6c,
0x08, 0x86, 0x0d, 0xc2, 0x34, 0x6d, 0x58, 0x06, 0x36, 0x68, 0x03, 0x37,
0xa8, 0x03, 0x38, 0x18, 0xe0, 0x60, 0x70, 0x03, 0x3b, 0xd8, 0x20, 0xd0,
0xc1, 0x1d, 0x30, 0x99, 0xb2, 0xfa, 0xa2, 0x0a, 0x93, 0x3b, 0x2b, 0xa3,
0x9b, 0x20, 0x14, 0xd9, 0x86, 0x85, 0xc8, 0x83, 0x36, 0xd0, 0x83, 0x37,
0x70, 0x83, 0x21, 0x0e, 0x08, 0x37, 0x98, 0x83, 0x0d, 0xc1, 0x1e, 0x6c,
0x18, 0xf0, 0x80, 0x0f, 0x80, 0x0d, 0x05, 0x19, 0xac, 0x41, 0x1f, 0x6c,
0x00, 0x0d, 0x33, 0xb6, 0xb7, 0x30, 0xba, 0xb9, 0x09, 0x02, 0x31, 0xb1,
0x48, 0x73, 0x9b, 0xa3, 0x9b, 0x9b, 0x20, 0x10, 0x14, 0x8d, 0xb9, 0xb4,
0xb3, 0x2f, 0x36, 0x32, 0x1a, 0x73, 0x69, 0x67, 0x5f, 0x73, 0x74, 0x44,
0xe8, 0xca, 0xf0, 0xbe, 0xce, 0xe4, 0xc2, 0xc8, 0x36, 0x28, 0x7f, 0x00,
0x0a, 0xa1, 0x20, 0x0a, 0xa3, 0x80, 0x90, 0x02, 0x18, 0x94, 0xc2, 0x50,
0x85, 0x8d, 0xcd, 0xae, 0xcd, 0x25, 0x8d, 0xac, 0xcc, 0x8d, 0x6e, 0x4a,
0x10, 0x54, 0x21, 0xc3, 0x73, 0xb1, 0x2b, 0x93, 0x9b, 0x4b, 0x7b, 0x73,
0x9b, 0x12, 0x10, 0x4d, 0xc8, 0xf0, 0x5c, 0xec, 0xc2, 0xd8, 0xec, 0xca,
0xe4, 0xa6, 0x04, 0x45, 0x1d, 0x32, 0x3c, 0x97, 0x39, 0xb4, 0x30, 0xb2,
0x32, 0xb9, 0xa6, 0x37, 0xb2, 0x32, 0xb6, 0x29, 0x01, 0x52, 0x86, 0x0c,
0xcf, 0x45, 0xae, 0x6c, 0xee, 0xad, 0x4e, 0x6e, 0xac, 0x6c, 0x6e, 0x4a,
0xa0, 0x55, 0x22, 0xc3, 0x73, 0xa1, 0xcb, 0x83, 0x2b, 0x0b, 0x72, 0x73,
0x7b, 0xa3, 0x0b, 0xa3, 0x4b, 0x7b, 0x73, 0x9b, 0x9b, 0x22, 0x88, 0xc1,
0x19, 0xd4, 0x21, 0xc3, 0x73, 0xb1, 0x4b, 0x2b, 0xbb, 0x4b, 0x22, 0x9b,
0xa2, 0x0b, 0xa3, 0x2b, 0x9b, 0x12, 0xa4, 0x41, 0x1d, 0x32, 0x3c, 0x97,
0x32, 0x37, 0x3a, 0xb9, 0x3c, 0xa8, 0xb7, 0x34, 0x37, 0xba, 0xb9, 0x29,
0x41, 0x1f, 0x74, 0x21, 0xc3, 0x73, 0x19, 0x7b, 0xab, 0x73, 0xa3, 0x2b,
0x93, 0x9b, 0x9b, 0x12, 0x94, 0x02, 0x00, 0x00, 0x79, 0x18, 0x00, 0x00,
0x4c, 0x00, 0x00, 0x00, 0x33, 0x08, 0x80, 0x1c, 0xc4, 0xe1, 0x1c, 0x66,
0x14, 0x01, 0x3d, 0x88, 0x43, 0x38, 0x84, 0xc3, 0x8c, 0x42, 0x80, 0x07,
0x79, 0x78, 0x07, 0x73, 0x98, 0x71, 0x0c, 0xe6, 0x00, 0x0f, 0xed, 0x10,
0x0e, 0xf4, 0x80, 0x0e, 0x33, 0x0c, 0x42, 0x1e, 0xc2, 0xc1, 0x1d, 0xce,
0xa1, 0x1c, 0x66, 0x30, 0x05, 0x3d, 0x88, 0x43, 0x38, 0x84, 0x83, 0x1b,
0xcc, 0x03, 0x3d, 0xc8, 0x43, 0x3d, 0x8c, 0x03, 0x3d, 0xcc, 0x78, 0x8c,
0x74, 0x70, 0x07, 0x7b, 0x08, 0x07, 0x79, 0x48, 0x87, 0x70, 0x70, 0x07,
0x7a, 0x70, 0x03, 0x76, 0x78, 0x87, 0x70, 0x20, 0x87, 0x19, 0xcc, 0x11,
0x0e, 0xec, 0x90, 0x0e, 0xe1, 0x30, 0x0f, 0x6e, 0x30, 0x0f, 0xe3, 0xf0,
0x0e, 0xf0, 0x50, 0x0e, 0x33, 0x10, 0xc4, 0x1d, 0xde, 0x21, 0x1c, 0xd8,
0x21, 0x1d, 0xc2, 0x61, 0x1e, 0x66, 0x30, 0x89, 0x3b, 0xbc, 0x83, 0x3b,
0xd0, 0x43, 0x39, 0xb4, 0x03, 0x3c, 0xbc, 0x83, 0x3c, 0x84, 0x03, 0x3b,
0xcc, 0xf0, 0x14, 0x76, 0x60, 0x07, 0x7b, 0x68, 0x07, 0x37, 0x68, 0x87,
0x72, 0x68, 0x07, 0x37, 0x80, 0x87, 0x70, 0x90, 0x87, 0x70, 0x60, 0x07,
0x76, 0x28, 0x07, 0x76, 0xf8, 0x05, 0x76, 0x78, 0x87, 0x77, 0x80, 0x87,
0x5f, 0x08, 0x87, 0x71, 0x18, 0x87, 0x72, 0x98, 0x87, 0x79, 0x98, 0x81,
0x2c, 0xee, 0xf0, 0x0e, 0xee, 0xe0, 0x0e, 0xf5, 0xc0, 0x0e, 0xec, 0x30,
0x03, 0x62, 0xc8, 0xa1, 0x1c, 0xe4, 0xa1, 0x1c, 0xcc, 0xa1, 0x1c, 0xe4,
0xa1, 0x1c, 0xdc, 0x61, 0x1c, 0xca, 0x21, 0x1c, 0xc4, 0x81, 0x1d, 0xca,
0x61, 0x06, 0xd6, 0x90, 0x43, 0x39, 0xc8, 0x43, 0x39, 0x98, 0x43, 0x39,
0xc8, 0x43, 0x39, 0xb8, 0xc3, 0x38, 0x94, 0x43, 0x38, 0x88, 0x03, 0x3b,
0x94, 0xc3, 0x2f, 0xbc, 0x83, 0x3c, 0xfc, 0x82, 0x3b, 0xd4, 0x03, 0x3b,
0xb0, 0xc3, 0x8c, 0xc8, 0x21, 0x07, 0x7c, 0x70, 0x03, 0x72, 0x10, 0x87,
0x73, 0x70, 0x03, 0x7b, 0x08, 0x07, 0x79, 0x60, 0x87, 0x70, 0xc8, 0x87,
0x77, 0xa8, 0x07, 0x7a, 0x98, 0x81, 0x3c, 0xe4, 0x80, 0x0f, 0x6e, 0x40,
0x0f, 0xe5, 0xd0, 0x0e, 0xf0, 0x00, 0x00, 0x00, 0x71, 0x20, 0x00, 0x00,
0x1f, 0x00, 0x00, 0x00, 0x46, 0x00, 0x0d, 0x97, 0xef, 0x3c, 0x7e, 0x80,
0x34, 0x40, 0x84, 0xf9, 0xc5, 0x6d, 0x9b, 0xc1, 0x36, 0x5c, 0xbe, 0xf3,
0xf8, 0x42, 0x40, 0x15, 0x05, 0x11, 0x95, 0x0e, 0x30, 0x94, 0x84, 0x01,
0x08, 0x98, 0x5f, 0xdc, 0xb6, 0x1d, 0x48, 0xc3, 0xe5, 0x3b, 0x8f, 0x2f,
0x44, 0x04, 0x30, 0x11, 0x21, 0xd0, 0x0c, 0x0b, 0x61, 0x01, 0xd3, 0x70,
0xf9, 0xce, 0xe3, 0x2f, 0x0e, 0x30, 0x88, 0xcd, 0x43, 0x4d, 0x7e, 0x71,
0xdb, 0x56, 0x40, 0x0d, 0x97, 0xef, 0x3c, 0xbe, 0x04, 0x30, 0xcf, 0x42,
0x80, 0x11, 0x30, 0xf8, 0xc5, 0x6d, 0x9b, 0x40, 0x35, 0x5c, 0xbe, 0xf3,
0xf8, 0xd2, 0xe4, 0x44, 0x04, 0x4a, 0x4d, 0x0f, 0x35, 0xf9, 0xc5, 0x6d,
0xdb, 0xc0, 0x33, 0x5c, 0xbe, 0xf3, 0xf8, 0x54, 0x03, 0x44, 0x98, 0x5f,
0xdc, 0xb6, 0x01, 0x10, 0x0c, 0x80, 0x34, 0x00, 0x00, 0x00, 0x00, 0x00,
0x48, 0x41, 0x53, 0x48, 0x14, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0xf3, 0x80, 0xe9, 0x01, 0x7f, 0xa8, 0xd4, 0x53, 0x8b, 0xb2, 0x5c, 0xd1,
0xbf, 0xdc, 0xed, 0x2a, 0x44, 0x58, 0x49, 0x4c, 0x34, 0x09, 0x00, 0x00,
0x60, 0x00, 0x00, 0x00, 0x4d, 0x02, 0x00, 0x00, 0x44, 0x58, 0x49, 0x4c,
0x00, 0x01, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x1c, 0x09, 0x00, 0x00,
0x42, 0x43, 0xc0, 0xde, 0x21, 0x0c, 0x00, 0x00, 0x44, 0x02, 0x00, 0x00,
0x0b, 0x82, 0x20, 0x00, 0x02, 0x00, 0x00, 0x00, 0x13, 0x00, 0x00, 0x00,
0x07, 0x81, 0x23, 0x91, 0x41, 0xc8, 0x04, 0x49, 0x06, 0x10, 0x32, 0x39,
0x92, 0x01, 0x84, 0x0c, 0x25, 0x05, 0x08, 0x19, 0x1e, 0x04, 0x8b, 0x62,
0x80, 0x18, 0x45, 0x02, 0x42, 0x92, 0x0b, 0x42, 0xc4, 0x10, 0x32, 0x14,
0x38, 0x08, 0x18, 0x4b, 0x0a, 0x32, 0x62, 0x88, 0x48, 0x90, 0x14, 0x20,
0x43, 0x46, 0x88, 0xa5, 0x00, 0x19, 0x32, 0x42, 0xe4, 0x48, 0x0e, 0x90,
0x11, 0x23, 0xc4, 0x50, 0x41, 0x51, 0x81, 0x8c, 0xe1, 0x83, 0xe5, 0x8a,
0x04, 0x31, 0x46, 0x06, 0x51, 0x18, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00,
0x1b, 0x8c, 0xe0, 0xff, 0xff, 0xff, 0xff, 0x07, 0x40, 0x02, 0xa8, 0x0d,
0x84, 0xf0, 0xff, 0xff, 0xff, 0xff, 0x03, 0x20, 0x6d, 0x30, 0x86, 0xff,
0xff, 0xff, 0xff, 0x1f, 0x00, 0x09, 0xa8, 0x00, 0x49, 0x18, 0x00, 0x00,
0x03, 0x00, 0x00, 0x00, 0x13, 0x82, 0x60, 0x42, 0x20, 0x4c, 0x08, 0x06,
0x00, 0x00, 0x00, 0x00, 0x89, 0x20, 0x00, 0x00, 0x53, 0x00, 0x00, 0x00,
0x32, 0x22, 0x88, 0x09, 0x20, 0x64, 0x85, 0x04, 0x13, 0x23, 0xa4, 0x84,
0x04, 0x13, 0x23, 0xe3, 0x84, 0xa1, 0x90, 0x14, 0x12, 0x4c, 0x8c, 0x8c,
0x0b, 0x84, 0xc4, 0x4c, 0x10, 0x8c, 0xc1, 0x08, 0x40, 0x09, 0x00, 0x0a,
0x66, 0x00, 0xe6, 0x08, 0xc0, 0x60, 0x8e, 0x00, 0x29, 0xc6, 0x40, 0x10,
0x44, 0x41, 0x90, 0x51, 0x0c, 0x80, 0x20, 0x88, 0x62, 0x20, 0xa4, 0x0c,
0x03, 0x31, 0x90, 0x52, 0x88, 0x81, 0x18, 0x06, 0x62, 0x6e, 0x1a, 0x2e,
0x7f, 0xc2, 0x1e, 0x42, 0xf2, 0x57, 0x42, 0x5a, 0x89, 0xc9, 0x2f, 0x6e,
0x1b, 0x15, 0xc3, 0x30, 0x0c, 0x04, 0x15, 0xf7, 0x0c, 0x97, 0x3f, 0x61,
0x0f, 0x21, 0xf9, 0x21, 0xd0, 0x0c, 0x0b, 0x81, 0x82, 0xa7, 0x48, 0x0e,
0x01, 0x41, 0xc3, 0x30, 0x0c, 0x04, 0x41, 0x0c, 0xc3, 0x30, 0x0c, 0xc3,
0x40, 0xd1, 0x51, 0xc3, 0xe5, 0x4f, 0xd8, 0x43, 0x48, 0x3e, 0xb7, 0x51,
0xc5, 0x4a, 0x4c, 0x7e, 0x71, 0xdb, 0x88, 0x18, 0x86, 0x61, 0x28, 0xc4,
0x44, 0x40, 0x04, 0x51, 0x73, 0x04, 0x41, 0x31, 0x20, 0xa2, 0x20, 0x08,
0x8b, 0xae, 0x81, 0x80, 0x61, 0x04, 0x62, 0x98, 0xa9, 0x0d, 0xc6, 0x81,
0x1d, 0xc2, 0x61, 0x1e, 0xe6, 0xc1, 0x0d, 0x68, 0xa1, 0x1c, 0xf0, 0x81,
0x1e, 0xea, 0x41, 0x1e, 0xca, 0x41, 0x0e, 0x48, 0x81, 0x0f, 0xec, 0xa1,
0x1c, 0xc6, 0x81, 0x1e, 0xde, 0x41, 0x1e, 0xf8, 0xc0, 0x1c, 0xd8, 0xe1,
0x1d, 0xc2, 0x81, 0x1e, 0xd8, 0x00, 0x0c, 0xe8, 0xc0, 0x0f, 0xc0, 0xc0,
0x0f, 0xf4, 0x40, 0x0f, 0xda, 0x21, 0x1d, 0xe0, 0x61, 0x1e, 0x7e, 0x81,
0x1e, 0xf2, 0x01, 0x1e, 0xca, 0x01, 0x05, 0xc4, 0x4c, 0x62, 0x30, 0x0e,
0xec, 0x10, 0x0e, 0xf3, 0x30, 0x0f, 0x6e, 0x40, 0x0b, 0xe5, 0x80, 0x0f,
0xf4, 0x50, 0x0f, 0xf2, 0x50, 0x0e, 0x72, 0x40, 0x0a, 0x7c, 0x60, 0x0f,
0xe5, 0x30, 0x0e, 0xf4, 0xf0, 0x0e, 0xf2, 0xc0, 0x07, 0xe6, 0xc0, 0x0e,
0xef, 0x10, 0x0e, 0xf4, 0xc0, 0x06, 0x60, 0x40, 0x07, 0x7e, 0x00, 0x06,
0x7e, 0x80, 0x04, 0x6d, 0x23, 0xee, 0x98, 0x09, 0x7b, 0x88, 0x9f, 0x73,
0x9a, 0x89, 0xb8, 0x26, 0x14, 0x68, 0xe4, 0xdd, 0x24, 0x4d, 0x11, 0x25,
0x4c, 0x3e, 0x0b, 0x30, 0xcf, 0x42, 0x44, 0xec, 0x04, 0x4c, 0x04, 0x0a,
0x08, 0x02, 0x13, 0x81, 0x00, 0x00, 0x00, 0x00, 0x13, 0x14, 0x72, 0xc0,
0x87, 0x74, 0x60, 0x87, 0x36, 0x68, 0x87, 0x79, 0x68, 0x03, 0x72, 0xc0,
0x87, 0x0d, 0xaf, 0x50, 0x0e, 0x6d, 0xd0, 0x0e, 0x7a, 0x50, 0x0e, 0x6d,
0x00, 0x0f, 0x7a, 0x30, 0x07, 0x72, 0xa0, 0x07, 0x73, 0x20, 0x07, 0x6d,
0x90, 0x0e, 0x71, 0xa0, 0x07, 0x73, 0x20, 0x07, 0x6d, 0x90, 0x0e, 0x78,
0xa0, 0x07, 0x73, 0x20, 0x07, 0x6d, 0x90, 0x0e, 0x71, 0x60, 0x07, 0x7a,
0x30, 0x07, 0x72, 0xd0, 0x06, 0xe9, 0x30, 0x07, 0x72, 0xa0, 0x07, 0x73,
0x20, 0x07, 0x6d, 0x90, 0x0e, 0x76, 0x40, 0x07, 0x7a, 0x60, 0x07, 0x74,
0xd0, 0x06, 0xe6, 0x10, 0x07, 0x76, 0xa0, 0x07, 0x73, 0x20, 0x07, 0x6d,
0x60, 0x0e, 0x73, 0x20, 0x07, 0x7a, 0x30, 0x07, 0x72, 0xd0, 0x06, 0xe6,
0x60, 0x07, 0x74, 0xa0, 0x07, 0x76, 0x40, 0x07, 0x6d, 0xe0, 0x0e, 0x78,
0xa0, 0x07, 0x71, 0x60, 0x07, 0x7a, 0x30, 0x07, 0x72, 0xa0, 0x07, 0x76,
0x40, 0x07, 0x43, 0x9e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x86, 0x3c, 0x06, 0x10, 0x00, 0x01, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x0c, 0x79, 0x10, 0x20, 0x00, 0x04, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0xf2, 0x28, 0x40, 0x00, 0x04, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0xe4, 0x61, 0x80, 0x00, 0x08,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x60, 0xc8, 0x13, 0x01, 0x01,
0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x90, 0x87, 0x02,
0x02, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x21, 0xcf,
0x05, 0x04, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x59,
0x20, 0x00, 0x00, 0x00, 0x0f, 0x00, 0x00, 0x00, 0x32, 0x1e, 0x98, 0x14,
0x19, 0x11, 0x4c, 0x90, 0x8c, 0x09, 0x26, 0x47, 0xc6, 0x04, 0x43, 0x22,
0x4a, 0x60, 0x04, 0xa0, 0x24, 0x8a, 0xa1, 0x08, 0xca, 0xa0, 0x40, 0xca,
0x83, 0x8a, 0x92, 0x18, 0x01, 0x28, 0x82, 0x42, 0x28, 0x10, 0xea, 0x66,
0x00, 0xe8, 0x9b, 0x01, 0xa0, 0x70, 0x06, 0x80, 0xc4, 0xb1, 0x10, 0x83,
0x08, 0x04, 0x02, 0x79, 0x1e, 0x00, 0x00, 0x00, 0x79, 0x18, 0x00, 0x00,
0x5e, 0x00, 0x00, 0x00, 0x1a, 0x03, 0x4c, 0x90, 0x46, 0x02, 0x13, 0x44,
0x8f, 0x0c, 0x6f, 0xec, 0xed, 0x4d, 0x0c, 0x24, 0xc6, 0x05, 0xc7, 0x45,
0xa6, 0x06, 0xa6, 0xc6, 0x45, 0x06, 0x07, 0x04, 0x25, 0xa7, 0xcc, 0x4c,
0x4c, 0xcc, 0x66, 0x6c, 0x46, 0x26, 0x65, 0x43, 0x10, 0x4c, 0x10, 0x08,
0x64, 0x82, 0x40, 0x24, 0x1b, 0x84, 0x81, 0x98, 0x20, 0x10, 0xca, 0x06,
0x61, 0x30, 0x28, 0xc0, 0xcd, 0x4d, 0x10, 0x88, 0x65, 0xc3, 0x80, 0x24,
0xc4, 0x04, 0xa1, 0xab, 0x08, 0x4c, 0x10, 0x08, 0x66, 0x83, 0x40, 0x18,
0x1b, 0x12, 0x62, 0x61, 0x1a, 0x62, 0x68, 0x08, 0x67, 0x43, 0xf0, 0x4c,
0x10, 0x3e, 0x6b, 0x82, 0x40, 0x34, 0x13, 0x04, 0xc2, 0xd9, 0x80, 0x10,
0x11, 0x23, 0x11, 0xc3, 0x04, 0x6c, 0x08, 0xa8, 0x09, 0x42, 0x18, 0x5c,
0x1b, 0x10, 0xc2, 0x62, 0x1a, 0x62, 0x20, 0x80, 0x0d, 0xc1, 0xb5, 0x81,
0x80, 0x80, 0x0a, 0x9b, 0x20, 0x88, 0x01, 0xb6, 0x21, 0xd0, 0x26, 0x08,
0x02, 0x40, 0xa2, 0x2d, 0x2c, 0xcd, 0x8d, 0x08, 0x55, 0x11, 0xd6, 0xd0,
0xd3, 0x93, 0x14, 0xd1, 0x04, 0xa1, 0x80, 0x26, 0x08, 0x45, 0xb4, 0x21,
0x20, 0x26, 0x08, 0x85, 0x34, 0x41, 0x28, 0xa6, 0x09, 0x02, 0xf1, 0x6c,
0x10, 0x24, 0x32, 0xd8, 0xb0, 0x10, 0xde, 0x07, 0x06, 0x61, 0x20, 0x06,
0xc3, 0x18, 0x10, 0x60, 0x50, 0x06, 0x1b, 0x82, 0x61, 0x83, 0x20, 0x49,
0x1b, 0x96, 0xc1, 0xfb, 0xc0, 0xe0, 0x0c, 0xc4, 0x60, 0x10, 0x83, 0x01,
0x0c, 0xd0, 0x60, 0x83, 0x60, 0x06, 0x69, 0xc0, 0x64, 0xca, 0xea, 0x8b,
0x2a, 0x4c, 0xee, 0xac, 0x8c, 0x6e, 0x82, 0x50, 0x50, 0x1b, 0x16, 0x62,
0x0d, 0x3e, 0x36, 0x08, 0x03, 0x30, 0x18, 0xc6, 0x80, 0x00, 0x83, 0x32,
0xd8, 0x10, 0xb4, 0xc1, 0x86, 0x41, 0x0d, 0xdc, 0x00, 0xd8, 0x50, 0x70,
0xdd, 0x1b, 0x64, 0x40, 0x15, 0x36, 0x36, 0xbb, 0x36, 0x97, 0x34, 0xb2,
0x32, 0x37, 0xba, 0x29, 0x41, 0x50, 0x85, 0x0c, 0xcf, 0xc5, 0xae, 0x4c,
0x6e, 0x2e, 0xed, 0xcd, 0x6d, 0x4a, 0x40, 0x34, 0x21, 0xc3, 0x73, 0xb1,
0x0b, 0x63, 0xb3, 0x2b, 0x93, 0x9b, 0x12, 0x18, 0x75, 0xc8, 0xf0, 0x5c,
0xe6, 0xd0, 0xc2, 0xc8, 0xca, 0xe4, 0x9a, 0xde, 0xc8, 0xca, 0xd8, 0xa6,
0x04, 0x49, 0x19, 0x32, 0x3c, 0x17, 0xb9, 0xb2, 0xb9, 0xb7, 0x3a, 0xb9,
0xb1, 0xb2, 0xb9, 0x29, 0x01, 0x56, 0x87, 0x0c, 0xcf, 0xc5, 0x2e, 0xad,
0xec, 0x2e, 0x89, 0x6c, 0x8a, 0x2e, 0x8c, 0xae, 0x6c, 0x4a, 0xa0, 0xd5,
0x21, 0xc3, 0x73, 0x29, 0x73, 0xa3, 0x93, 0xcb, 0x83, 0x7a, 0x4b, 0x73,
0xa3, 0x9b, 0x9b, 0x12, 0xbc, 0x01, 0x00, 0x00, 0x79, 0x18, 0x00, 0x00,
0x4c, 0x00, 0x00, 0x00, 0x33, 0x08, 0x80, 0x1c, 0xc4, 0xe1, 0x1c, 0x66,
0x14, 0x01, 0x3d, 0x88, 0x43, 0x38, 0x84, 0xc3, 0x8c, 0x42, 0x80, 0x07,
0x79, 0x78, 0x07, 0x73, 0x98, 0x71, 0x0c, 0xe6, 0x00, 0x0f, 0xed, 0x10,
0x0e, 0xf4, 0x80, 0x0e, 0x33, 0x0c, 0x42, 0x1e, 0xc2, 0xc1, 0x1d, 0xce,
0xa1, 0x1c, 0x66, 0x30, 0x05, 0x3d, 0x88, 0x43, 0x38, 0x84, 0x83, 0x1b,
0xcc, 0x03, 0x3d, 0xc8, 0x43, 0x3d, 0x8c, 0x03, 0x3d, 0xcc, 0x78, 0x8c,
0x74, 0x70, 0x07, 0x7b, 0x08, 0x07, 0x79, 0x48, 0x87, 0x70, 0x70, 0x07,
0x7a, 0x70, 0x03, 0x76, 0x78, 0x87, 0x70, 0x20, 0x87, 0x19, 0xcc, 0x11,
0x0e, 0xec, 0x90, 0x0e, 0xe1, 0x30, 0x0f, 0x6e, 0x30, 0x0f, 0xe3, 0xf0,
0x0e, 0xf0, 0x50, 0x0e, 0x33, 0x10, 0xc4, 0x1d, 0xde, 0x21, 0x1c, 0xd8,
0x21, 0x1d, 0xc2, 0x61, 0x1e, 0x66, 0x30, 0x89, 0x3b, 0xbc, 0x83, 0x3b,
0xd0, 0x43, 0x39, 0xb4, 0x03, 0x3c, 0xbc, 0x83, 0x3c, 0x84, 0x03, 0x3b,
0xcc, 0xf0, 0x14, 0x76, 0x60, 0x07, 0x7b, 0x68, 0x07, 0x37, 0x68, 0x87,
0x72, 0x68, 0x07, 0x37, 0x80, 0x87, 0x70, 0x90, 0x87, 0x70, 0x60, 0x07,
0x76, 0x28, 0x07, 0x76, 0xf8, 0x05, 0x76, 0x78, 0x87, 0x77, 0x80, 0x87,
0x5f, 0x08, 0x87, 0x71, 0x18, 0x87, 0x72, 0x98, 0x87, 0x79, 0x98, 0x81,
0x2c, 0xee, 0xf0, 0x0e, 0xee, 0xe0, 0x0e, 0xf5, 0xc0, 0x0e, 0xec, 0x30,
0x03, 0x62, 0xc8, 0xa1, 0x1c, 0xe4, 0xa1, 0x1c, 0xcc, 0xa1, 0x1c, 0xe4,
0xa1, 0x1c, 0xdc, 0x61, 0x1c, 0xca, 0x21, 0x1c, 0xc4, 0x81, 0x1d, 0xca,
0x61, 0x06, 0xd6, 0x90, 0x43, 0x39, 0xc8, 0x43, 0x39, 0x98, 0x43, 0x39,
0xc8, 0x43, 0x39, 0xb8, 0xc3, 0x38, 0x94, 0x43, 0x38, 0x88, 0x03, 0x3b,
0x94, 0xc3, 0x2f, 0xbc, 0x83, 0x3c, 0xfc, 0x82, 0x3b, 0xd4, 0x03, 0x3b,
0xb0, 0xc3, 0x8c, 0xc8, 0x21, 0x07, 0x7c, 0x70, 0x03, 0x72, 0x10, 0x87,
0x73, 0x70, 0x03, 0x7b, 0x08, 0x07, 0x79, 0x60, 0x87, 0x70, 0xc8, 0x87,
0x77, 0xa8, 0x07, 0x7a, 0x98, 0x81, 0x3c, 0xe4, 0x80, 0x0f, 0x6e, 0x40,
0x0f, 0xe5, 0xd0, 0x0e, 0xf0, 0x00, 0x00, 0x00, 0x71, 0x20, 0x00, 0x00,
0x1f, 0x00, 0x00, 0x00, 0x46, 0x00, 0x0d, 0x97, 0xef, 0x3c, 0x7e, 0x80,
0x34, 0x40, 0x84, 0xf9, 0xc5, 0x6d, 0x9b, 0xc1, 0x36, 0x5c, 0xbe, 0xf3,
0xf8, 0x42, 0x40, 0x15, 0x05, 0x11, 0x95, 0x0e, 0x30, 0x94, 0x84, 0x01,
0x08, 0x98, 0x5f, 0xdc, 0xb6, 0x1d, 0x48, 0xc3, 0xe5, 0x3b, 0x8f, 0x2f,
0x44, 0x04, 0x30, 0x11, 0x21, 0xd0, 0x0c, 0x0b, 0x61, 0x01, 0xd3, 0x70,
0xf9, 0xce, 0xe3, 0x2f, 0x0e, 0x30, 0x88, 0xcd, 0x43, 0x4d, 0x7e, 0x71,
0xdb, 0x56, 0x40, 0x0d, 0x97, 0xef, 0x3c, 0xbe, 0x04, 0x30, 0xcf, 0x42,
0x80, 0x11, 0x30, 0xf8, 0xc5, 0x6d, 0x9b, 0x40, 0x35, 0x5c, 0xbe, 0xf3,
0xf8, 0xd2, 0xe4, 0x44, 0x04, 0x4a, 0x4d, 0x0f, 0x35, 0xf9, 0xc5, 0x6d,
0xdb, 0xc0, 0x33, 0x5c, 0xbe, 0xf3, 0xf8, 0x54, 0x03, 0x44, 0x98, 0x5f,
0xdc, 0xb6, 0x01, 0x10, 0x0c, 0x80, 0x34, 0x00, 0x61, 0x20, 0x00, 0x00,
0xaa, 0x00, 0x00, 0x00, 0x13, 0x04, 0x41, 0x2c, 0x10, 0x00, 0x00, 0x00,
0x13, 0x00, 0x00, 0x00, 0x64, 0x8d, 0x00, 0x50, 0x51, 0x02, 0x65, 0x40,
0x44, 0xf9, 0x95, 0x5d, 0x39, 0x14, 0xcb, 0x0c, 0x40, 0x21, 0x94, 0x42,
0xc9, 0x95, 0x69, 0x40, 0xa1, 0x06, 0x94, 0x51, 0x21, 0x95, 0x0d, 0x0d,
0x63, 0x04, 0x20, 0x08, 0x82, 0x24, 0x18, 0x8c, 0x11, 0x80, 0x20, 0x08,
0x82, 0x60, 0x30, 0x46, 0x00, 0x82, 0x20, 0x88, 0xff, 0xc2, 0x18, 0x01,
0x08, 0x82, 0x20, 0xfe, 0x8d, 0x11, 0xb0, 0x6d, 0xfc, 0xca, 0xdb, 0x18,
0x01, 0x08, 0x82, 0x20, 0xfc, 0xcd, 0x00, 0x00, 0x23, 0x06, 0x09, 0x00,
0x82, 0x60, 0x70, 0xa5, 0x41, 0xf3, 0x9d, 0xc1, 0x19, 0x5c, 0x23, 0x06,
0x09, 0x00, 0x82, 0x60, 0x70, 0xa9, 0x81, 0x63, 0xa1, 0x01, 0x1a, 0x60,
0x23, 0x06, 0x09, 0x00, 0x82, 0x60, 0x70, 0xad, 0xc1, 0x03, 0x06, 0x69,
0x90, 0x06, 0xd9, 0x88, 0x41, 0x02, 0x80, 0x20, 0x18, 0x18, 0x72, 0x20,
0xad, 0x81, 0x1a, 0x88, 0xc1, 0x34, 0x62, 0x90, 0x00, 0x20, 0x08, 0x06,
0xc6, 0x1c, 0x4c, 0x6c, 0xb0, 0x06, 0x1a, 0x35, 0x62, 0x90, 0x00, 0x20,
0x08, 0x06, 0x06, 0x1d, 0x50, 0x6c, 0xc0, 0x06, 0x64, 0x50, 0x8d, 0x18,
0x24, 0x00, 0x08, 0x82, 0x81, 0x51, 0x07, 0x55, 0x1b, 0xb4, 0x01, 0x67,
0x8d, 0x18, 0x24, 0x00, 0x08, 0x82, 0x81, 0x61, 0x07, 0x96, 0x1b, 0xb8,
0x41, 0x19, 0x5c, 0x23, 0x06, 0x09, 0x00, 0x82, 0x60, 0x60, 0xdc, 0xc1,
0xf5, 0x06, 0x6f, 0xd0, 0x61, 0x23, 0x06, 0x06, 0x00, 0x82, 0x60, 0xa0,
0xd8, 0x41, 0x65, 0x8c, 0x18, 0x18, 0x00, 0x08, 0x82, 0x81, 0x72, 0x07,
0x96, 0x31, 0x62, 0x60, 0x00, 0x20, 0x08, 0x06, 0x0a, 0x1e, 0xc0, 0x81,
0x30, 0x62, 0x60, 0x00, 0x20, 0x08, 0x06, 0x4a, 0x1e, 0xc4, 0x81, 0x30,
0x62, 0x60, 0x00, 0x20, 0x08, 0x06, 0x8a, 0x1e, 0x60, 0xca, 0x88, 0x81,
0x01, 0x80, 0x20, 0x18, 0x28, 0x7b, 0x90, 0x29, 0x23, 0x06, 0x06, 0x00,
0x82, 0x60, 0xa0, 0xf0, 0x01, 0x1d, 0x08, 0x23, 0x06, 0x06, 0x00, 0x82,
0x60, 0xa0, 0xf4, 0x41, 0x1d, 0x08, 0x26, 0x18, 0xf0, 0x31, 0xc1, 0x80,
0xcf, 0x88, 0xc1, 0x01, 0x80, 0x20, 0x18, 0x50, 0x7d, 0x60, 0x06, 0x91,
0x1e, 0x8c, 0x26, 0x04, 0xc2, 0x68, 0x82, 0x30, 0x98, 0x50, 0xc8, 0xc7,
0x84, 0x42, 0x3e, 0x23, 0x06, 0x07, 0x00, 0x82, 0x60, 0xc0, 0x90, 0x82,
0x18, 0x08, 0xdb, 0x88, 0xc1, 0x01, 0x80, 0x20, 0x18, 0x30, 0xa5, 0x30,
0x06, 0x02, 0x37, 0x62, 0x70, 0x00, 0x20, 0x08, 0x06, 0x8c, 0x29, 0x8c,
0x81, 0xe0, 0x8d, 0x18, 0x1c, 0x00, 0x08, 0x82, 0x01, 0x73, 0x0a, 0x64,
0x20, 0x7c, 0x86, 0x64, 0xf2, 0x31, 0x24, 0x93, 0x8f, 0x11, 0x60, 0x20,
0x1f, 0x23, 0xc2, 0x40, 0x3e, 0x46, 0x08, 0xf1, 0x31, 0x42, 0x88, 0xcf,
0x88, 0x81, 0x01, 0x80, 0x20, 0x18, 0x28, 0xaf, 0xa0, 0x06, 0xc2, 0x88,
0x81, 0x01, 0x80, 0x20, 0x18, 0x28, 0xb0, 0xb0, 0x06, 0x82, 0x09, 0x66,
0x00, 0x1f, 0x13, 0xce, 0x00, 0x3e, 0x23, 0x06, 0x06, 0x00, 0x82, 0x60,
0xa0, 0xcc, 0xc2, 0x1d, 0x18, 0x23, 0x06, 0x06, 0x00, 0x82, 0x60, 0xa0,
0xd0, 0x02, 0x1e, 0x18, 0xe6, 0xb4, 0x01, 0x7c, 0x2c, 0x18, 0xe0, 0x63,
0xcf, 0x1b, 0xc0, 0xc7, 0x02, 0x02, 0x3e, 0x36, 0x48, 0xf4, 0x31, 0x41,
0xa2, 0xcf, 0x88, 0x81, 0x01, 0x80, 0x20, 0x18, 0x28, 0xbb, 0x00, 0x0a,
0xc2, 0x88, 0x81, 0x01, 0x80, 0x20, 0x18, 0x28, 0xbc, 0x10, 0x0a, 0x82,
0x09, 0x76, 0x20, 0x1f, 0x13, 0xee, 0x40, 0x3e, 0x96, 0x07, 0x42, 0x7c,
0x4c, 0x0f, 0x84, 0xf8, 0x98, 0x61, 0xc8, 0xc7, 0x82, 0x41, 0x3e, 0x76,
0x1c, 0xf2, 0xb1, 0x80, 0x90, 0x8f, 0x51, 0x03, 0x7c, 0x8c, 0x12, 0xe0,
0x33, 0x9a, 0x70, 0x06, 0xc0, 0x68, 0x02, 0x1a, 0x04, 0x46, 0x08, 0xf2,
0x31, 0x42, 0x90, 0xcf, 0x88, 0x41, 0x05, 0x80, 0x20, 0x18, 0x44, 0xe9,
0x20, 0x0b, 0x7e, 0xd0, 0x07, 0x42, 0xf0, 0x07, 0x7f, 0x50, 0x0e, 0xe5,
0xe0, 0x0a, 0x75, 0x40, 0x07, 0x7f, 0x10, 0x07, 0x70, 0xf0, 0x07, 0x7f,
0x30, 0x9a, 0x10, 0x00, 0xa3, 0x09, 0x42, 0x30, 0x9a, 0x30, 0x08, 0xa3,
0x09, 0xc4, 0x60, 0x84, 0x1f, 0xc8, 0xc7, 0x08, 0x3f, 0x90, 0x8f, 0x11,
0x7e, 0x20, 0x1f, 0x23, 0xfc, 0x40, 0x3e, 0x23, 0x06, 0x09, 0x00, 0x82,
0x60, 0x80, 0xd4, 0x43, 0x2d, 0xb8, 0x83, 0x3b, 0x98, 0x03, 0x31, 0x62,
0x90, 0x00, 0x20, 0x08, 0x06, 0x48, 0x3d, 0xd4, 0x82, 0x3b, 0xb8, 0x43,
0x2f, 0x0c, 0x23, 0x06, 0x09, 0x00, 0x82, 0x60, 0x80, 0xd4, 0x43, 0x2d,
0xb8, 0x83, 0x3b, 0x94, 0x83, 0x30, 0x62, 0x90, 0x00, 0x20, 0x08, 0x06,
0x48, 0x3d, 0xd4, 0x82, 0x3b, 0xb8, 0x03, 0x2f, 0x04, 0x08, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00
};
static const unsigned int texture_rgba_pixelart_frag_dxil_len = 4780;

View File

@@ -1,8 +0,0 @@
#include "texture_pixelart.frag.hlsli"
PSOutput main(PSInput input) {
PSOutput output;
float2 uv = GetPixelArtUV(input);
output.o_color = u_texture.SampleGrad(u_sampler, uv, ddx(input.v_uv), ddy(input.v_uv)) * input.v_color;
return output;
}

View File

@@ -1,86 +0,0 @@
static const unsigned char texture_rgba_pixelart_frag_msl[] = {
0x23, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x20, 0x3c, 0x6d, 0x65,
0x74, 0x61, 0x6c, 0x5f, 0x73, 0x74, 0x64, 0x6c, 0x69, 0x62, 0x3e, 0x0a,
0x23, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x20, 0x3c, 0x73, 0x69,
0x6d, 0x64, 0x2f, 0x73, 0x69, 0x6d, 0x64, 0x2e, 0x68, 0x3e, 0x0a, 0x0a,
0x75, 0x73, 0x69, 0x6e, 0x67, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70,
0x61, 0x63, 0x65, 0x20, 0x6d, 0x65, 0x74, 0x61, 0x6c, 0x3b, 0x0a, 0x0a,
0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x20, 0x74, 0x79, 0x70, 0x65, 0x5f,
0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x0a, 0x7b, 0x0a, 0x20, 0x20,
0x20, 0x20, 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x34, 0x20, 0x74, 0x65, 0x78,
0x65, 0x6c, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x3b, 0x0a, 0x7d, 0x3b, 0x0a,
0x0a, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x20, 0x6d, 0x61, 0x69, 0x6e,
0x30, 0x5f, 0x6f, 0x75, 0x74, 0x0a, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20,
0x66, 0x6c, 0x6f, 0x61, 0x74, 0x34, 0x20, 0x6f, 0x75, 0x74, 0x5f, 0x76,
0x61, 0x72, 0x5f, 0x53, 0x56, 0x5f, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74,
0x20, 0x5b, 0x5b, 0x63, 0x6f, 0x6c, 0x6f, 0x72, 0x28, 0x30, 0x29, 0x5d,
0x5d, 0x3b, 0x0a, 0x7d, 0x3b, 0x0a, 0x0a, 0x73, 0x74, 0x72, 0x75, 0x63,
0x74, 0x20, 0x6d, 0x61, 0x69, 0x6e, 0x30, 0x5f, 0x69, 0x6e, 0x0a, 0x7b,
0x0a, 0x20, 0x20, 0x20, 0x20, 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x34, 0x20,
0x69, 0x6e, 0x5f, 0x76, 0x61, 0x72, 0x5f, 0x43, 0x4f, 0x4c, 0x4f, 0x52,
0x30, 0x20, 0x5b, 0x5b, 0x75, 0x73, 0x65, 0x72, 0x28, 0x6c, 0x6f, 0x63,
0x6e, 0x30, 0x29, 0x5d, 0x5d, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x66,
0x6c, 0x6f, 0x61, 0x74, 0x32, 0x20, 0x69, 0x6e, 0x5f, 0x76, 0x61, 0x72,
0x5f, 0x54, 0x45, 0x58, 0x43, 0x4f, 0x4f, 0x52, 0x44, 0x30, 0x20, 0x5b,
0x5b, 0x75, 0x73, 0x65, 0x72, 0x28, 0x6c, 0x6f, 0x63, 0x6e, 0x31, 0x29,
0x5d, 0x5d, 0x3b, 0x0a, 0x7d, 0x3b, 0x0a, 0x0a, 0x66, 0x72, 0x61, 0x67,
0x6d, 0x65, 0x6e, 0x74, 0x20, 0x6d, 0x61, 0x69, 0x6e, 0x30, 0x5f, 0x6f,
0x75, 0x74, 0x20, 0x6d, 0x61, 0x69, 0x6e, 0x30, 0x28, 0x6d, 0x61, 0x69,
0x6e, 0x30, 0x5f, 0x69, 0x6e, 0x20, 0x69, 0x6e, 0x20, 0x5b, 0x5b, 0x73,
0x74, 0x61, 0x67, 0x65, 0x5f, 0x69, 0x6e, 0x5d, 0x5d, 0x2c, 0x20, 0x63,
0x6f, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x20, 0x74, 0x79, 0x70, 0x65,
0x5f, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x26, 0x20, 0x43, 0x6f,
0x6e, 0x74, 0x65, 0x78, 0x74, 0x20, 0x5b, 0x5b, 0x62, 0x75, 0x66, 0x66,
0x65, 0x72, 0x28, 0x30, 0x29, 0x5d, 0x5d, 0x2c, 0x20, 0x74, 0x65, 0x78,
0x74, 0x75, 0x72, 0x65, 0x32, 0x64, 0x3c, 0x66, 0x6c, 0x6f, 0x61, 0x74,
0x3e, 0x20, 0x75, 0x5f, 0x74, 0x65, 0x78, 0x74, 0x75, 0x72, 0x65, 0x20,
0x5b, 0x5b, 0x74, 0x65, 0x78, 0x74, 0x75, 0x72, 0x65, 0x28, 0x30, 0x29,
0x5d, 0x5d, 0x2c, 0x20, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x72, 0x20,
0x75, 0x5f, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x72, 0x20, 0x5b, 0x5b,
0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x72, 0x28, 0x30, 0x29, 0x5d, 0x5d,
0x29, 0x0a, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x6d, 0x61, 0x69, 0x6e,
0x30, 0x5f, 0x6f, 0x75, 0x74, 0x20, 0x6f, 0x75, 0x74, 0x20, 0x3d, 0x20,
0x7b, 0x7d, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x66, 0x6c, 0x6f, 0x61,
0x74, 0x32, 0x20, 0x5f, 0x34, 0x31, 0x20, 0x3d, 0x20, 0x66, 0x61, 0x73,
0x74, 0x3a, 0x3a, 0x63, 0x6c, 0x61, 0x6d, 0x70, 0x28, 0x66, 0x77, 0x69,
0x64, 0x74, 0x68, 0x28, 0x69, 0x6e, 0x2e, 0x69, 0x6e, 0x5f, 0x76, 0x61,
0x72, 0x5f, 0x54, 0x45, 0x58, 0x43, 0x4f, 0x4f, 0x52, 0x44, 0x30, 0x29,
0x20, 0x2a, 0x20, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x2e, 0x74,
0x65, 0x78, 0x65, 0x6c, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x2e, 0x7a, 0x77,
0x2c, 0x20, 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x32, 0x28, 0x39, 0x2e, 0x39,
0x39, 0x39, 0x39, 0x39, 0x39, 0x37, 0x34, 0x37, 0x33, 0x37, 0x38, 0x37,
0x35, 0x31, 0x36, 0x33, 0x35, 0x35, 0x35, 0x31, 0x34, 0x35, 0x32, 0x36,
0x33, 0x36, 0x37, 0x31, 0x38, 0x38, 0x65, 0x2d, 0x30, 0x36, 0x29, 0x2c,
0x20, 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x32, 0x28, 0x31, 0x2e, 0x30, 0x29,
0x29, 0x3b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x66, 0x6c, 0x6f, 0x61, 0x74,
0x32, 0x20, 0x5f, 0x34, 0x34, 0x20, 0x3d, 0x20, 0x28, 0x69, 0x6e, 0x2e,
0x69, 0x6e, 0x5f, 0x76, 0x61, 0x72, 0x5f, 0x54, 0x45, 0x58, 0x43, 0x4f,
0x4f, 0x52, 0x44, 0x30, 0x20, 0x2a, 0x20, 0x43, 0x6f, 0x6e, 0x74, 0x65,
0x78, 0x74, 0x2e, 0x74, 0x65, 0x78, 0x65, 0x6c, 0x5f, 0x73, 0x69, 0x7a,
0x65, 0x2e, 0x7a, 0x77, 0x29, 0x20, 0x2d, 0x20, 0x28, 0x5f, 0x34, 0x31,
0x20, 0x2a, 0x20, 0x30, 0x2e, 0x35, 0x29, 0x3b, 0x0a, 0x20, 0x20, 0x20,
0x20, 0x6f, 0x75, 0x74, 0x2e, 0x6f, 0x75, 0x74, 0x5f, 0x76, 0x61, 0x72,
0x5f, 0x53, 0x56, 0x5f, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x20, 0x3d,
0x20, 0x75, 0x5f, 0x74, 0x65, 0x78, 0x74, 0x75, 0x72, 0x65, 0x2e, 0x73,
0x61, 0x6d, 0x70, 0x6c, 0x65, 0x28, 0x75, 0x5f, 0x73, 0x61, 0x6d, 0x70,
0x6c, 0x65, 0x72, 0x2c, 0x20, 0x28, 0x28, 0x28, 0x66, 0x6c, 0x6f, 0x6f,
0x72, 0x28, 0x5f, 0x34, 0x34, 0x29, 0x20, 0x2b, 0x20, 0x66, 0x6c, 0x6f,
0x61, 0x74, 0x32, 0x28, 0x30, 0x2e, 0x35, 0x29, 0x29, 0x20, 0x2b, 0x20,
0x73, 0x6d, 0x6f, 0x6f, 0x74, 0x68, 0x73, 0x74, 0x65, 0x70, 0x28, 0x66,
0x6c, 0x6f, 0x61, 0x74, 0x32, 0x28, 0x31, 0x2e, 0x30, 0x29, 0x20, 0x2d,
0x20, 0x5f, 0x34, 0x31, 0x2c, 0x20, 0x66, 0x6c, 0x6f, 0x61, 0x74, 0x32,
0x28, 0x31, 0x2e, 0x30, 0x29, 0x2c, 0x20, 0x66, 0x72, 0x61, 0x63, 0x74,
0x28, 0x5f, 0x34, 0x34, 0x29, 0x29, 0x29, 0x20, 0x2a, 0x20, 0x43, 0x6f,
0x6e, 0x74, 0x65, 0x78, 0x74, 0x2e, 0x74, 0x65, 0x78, 0x65, 0x6c, 0x5f,
0x73, 0x69, 0x7a, 0x65, 0x2e, 0x78, 0x79, 0x29, 0x2c, 0x20, 0x67, 0x72,
0x61, 0x64, 0x69, 0x65, 0x6e, 0x74, 0x32, 0x64, 0x28, 0x64, 0x66, 0x64,
0x78, 0x28, 0x69, 0x6e, 0x2e, 0x69, 0x6e, 0x5f, 0x76, 0x61, 0x72, 0x5f,
0x54, 0x45, 0x58, 0x43, 0x4f, 0x4f, 0x52, 0x44, 0x30, 0x29, 0x2c, 0x20,
0x64, 0x66, 0x64, 0x79, 0x28, 0x69, 0x6e, 0x2e, 0x69, 0x6e, 0x5f, 0x76,
0x61, 0x72, 0x5f, 0x54, 0x45, 0x58, 0x43, 0x4f, 0x4f, 0x52, 0x44, 0x30,
0x29, 0x29, 0x29, 0x20, 0x2a, 0x20, 0x69, 0x6e, 0x2e, 0x69, 0x6e, 0x5f,
0x76, 0x61, 0x72, 0x5f, 0x43, 0x4f, 0x4c, 0x4f, 0x52, 0x30, 0x3b, 0x0a,
0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x6f,
0x75, 0x74, 0x3b, 0x0a, 0x7d, 0x0a, 0x0a
};
static const unsigned int texture_rgba_pixelart_frag_msl_len = 991;

View File

@@ -1,141 +0,0 @@
static const unsigned char texture_rgba_pixelart_frag_spv[] = {
0x03, 0x02, 0x23, 0x07, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x0e, 0x00,
0x3c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x11, 0x00, 0x02, 0x00,
0x01, 0x00, 0x00, 0x00, 0x0b, 0x00, 0x06, 0x00, 0x01, 0x00, 0x00, 0x00,
0x47, 0x4c, 0x53, 0x4c, 0x2e, 0x73, 0x74, 0x64, 0x2e, 0x34, 0x35, 0x30,
0x00, 0x00, 0x00, 0x00, 0x0e, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
0x01, 0x00, 0x00, 0x00, 0x0f, 0x00, 0x08, 0x00, 0x04, 0x00, 0x00, 0x00,
0x02, 0x00, 0x00, 0x00, 0x6d, 0x61, 0x69, 0x6e, 0x00, 0x00, 0x00, 0x00,
0x03, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00,
0x10, 0x00, 0x03, 0x00, 0x02, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00,
0x03, 0x00, 0x03, 0x00, 0x05, 0x00, 0x00, 0x00, 0x58, 0x02, 0x00, 0x00,
0x05, 0x00, 0x06, 0x00, 0x06, 0x00, 0x00, 0x00, 0x74, 0x79, 0x70, 0x65,
0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x00, 0x00, 0x00, 0x00,
0x06, 0x00, 0x06, 0x00, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x74, 0x65, 0x78, 0x65, 0x6c, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x00, 0x00,
0x05, 0x00, 0x04, 0x00, 0x07, 0x00, 0x00, 0x00, 0x43, 0x6f, 0x6e, 0x74,
0x65, 0x78, 0x74, 0x00, 0x05, 0x00, 0x06, 0x00, 0x08, 0x00, 0x00, 0x00,
0x74, 0x79, 0x70, 0x65, 0x2e, 0x32, 0x64, 0x2e, 0x69, 0x6d, 0x61, 0x67,
0x65, 0x00, 0x00, 0x00, 0x05, 0x00, 0x05, 0x00, 0x09, 0x00, 0x00, 0x00,
0x75, 0x5f, 0x74, 0x65, 0x78, 0x74, 0x75, 0x72, 0x65, 0x00, 0x00, 0x00,
0x05, 0x00, 0x06, 0x00, 0x0a, 0x00, 0x00, 0x00, 0x74, 0x79, 0x70, 0x65,
0x2e, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x72, 0x00, 0x00, 0x00, 0x00,
0x05, 0x00, 0x05, 0x00, 0x0b, 0x00, 0x00, 0x00, 0x75, 0x5f, 0x73, 0x61,
0x6d, 0x70, 0x6c, 0x65, 0x72, 0x00, 0x00, 0x00, 0x05, 0x00, 0x06, 0x00,
0x03, 0x00, 0x00, 0x00, 0x69, 0x6e, 0x2e, 0x76, 0x61, 0x72, 0x2e, 0x43,
0x4f, 0x4c, 0x4f, 0x52, 0x30, 0x00, 0x00, 0x00, 0x05, 0x00, 0x07, 0x00,
0x04, 0x00, 0x00, 0x00, 0x69, 0x6e, 0x2e, 0x76, 0x61, 0x72, 0x2e, 0x54,
0x45, 0x58, 0x43, 0x4f, 0x4f, 0x52, 0x44, 0x30, 0x00, 0x00, 0x00, 0x00,
0x05, 0x00, 0x07, 0x00, 0x05, 0x00, 0x00, 0x00, 0x6f, 0x75, 0x74, 0x2e,
0x76, 0x61, 0x72, 0x2e, 0x53, 0x56, 0x5f, 0x54, 0x61, 0x72, 0x67, 0x65,
0x74, 0x00, 0x00, 0x00, 0x05, 0x00, 0x04, 0x00, 0x02, 0x00, 0x00, 0x00,
0x6d, 0x61, 0x69, 0x6e, 0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x07, 0x00,
0x0c, 0x00, 0x00, 0x00, 0x74, 0x79, 0x70, 0x65, 0x2e, 0x73, 0x61, 0x6d,
0x70, 0x6c, 0x65, 0x64, 0x2e, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x00, 0x00,
0x47, 0x00, 0x04, 0x00, 0x03, 0x00, 0x00, 0x00, 0x1e, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x47, 0x00, 0x04, 0x00, 0x04, 0x00, 0x00, 0x00,
0x1e, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x47, 0x00, 0x04, 0x00,
0x05, 0x00, 0x00, 0x00, 0x1e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x47, 0x00, 0x04, 0x00, 0x07, 0x00, 0x00, 0x00, 0x22, 0x00, 0x00, 0x00,
0x03, 0x00, 0x00, 0x00, 0x47, 0x00, 0x04, 0x00, 0x07, 0x00, 0x00, 0x00,
0x21, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x47, 0x00, 0x04, 0x00,
0x09, 0x00, 0x00, 0x00, 0x22, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00,
0x47, 0x00, 0x04, 0x00, 0x09, 0x00, 0x00, 0x00, 0x21, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x47, 0x00, 0x04, 0x00, 0x0b, 0x00, 0x00, 0x00,
0x22, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x47, 0x00, 0x04, 0x00,
0x0b, 0x00, 0x00, 0x00, 0x21, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x48, 0x00, 0x05, 0x00, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x23, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x47, 0x00, 0x03, 0x00,
0x06, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x15, 0x00, 0x04, 0x00,
0x0d, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
0x2b, 0x00, 0x04, 0x00, 0x0d, 0x00, 0x00, 0x00, 0x0e, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x16, 0x00, 0x03, 0x00, 0x0f, 0x00, 0x00, 0x00,
0x20, 0x00, 0x00, 0x00, 0x2b, 0x00, 0x04, 0x00, 0x0f, 0x00, 0x00, 0x00,
0x10, 0x00, 0x00, 0x00, 0xac, 0xc5, 0x27, 0x37, 0x17, 0x00, 0x04, 0x00,
0x11, 0x00, 0x00, 0x00, 0x0f, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00,
0x2c, 0x00, 0x05, 0x00, 0x11, 0x00, 0x00, 0x00, 0x12, 0x00, 0x00, 0x00,
0x10, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x2b, 0x00, 0x04, 0x00,
0x0f, 0x00, 0x00, 0x00, 0x13, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x3f,
0x2c, 0x00, 0x05, 0x00, 0x11, 0x00, 0x00, 0x00, 0x14, 0x00, 0x00, 0x00,
0x13, 0x00, 0x00, 0x00, 0x13, 0x00, 0x00, 0x00, 0x2b, 0x00, 0x04, 0x00,
0x0f, 0x00, 0x00, 0x00, 0x15, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3f,
0x2c, 0x00, 0x05, 0x00, 0x11, 0x00, 0x00, 0x00, 0x16, 0x00, 0x00, 0x00,
0x15, 0x00, 0x00, 0x00, 0x15, 0x00, 0x00, 0x00, 0x17, 0x00, 0x04, 0x00,
0x17, 0x00, 0x00, 0x00, 0x0f, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00,
0x1e, 0x00, 0x03, 0x00, 0x06, 0x00, 0x00, 0x00, 0x17, 0x00, 0x00, 0x00,
0x20, 0x00, 0x04, 0x00, 0x18, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00,
0x06, 0x00, 0x00, 0x00, 0x19, 0x00, 0x09, 0x00, 0x08, 0x00, 0x00, 0x00,
0x0f, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x04, 0x00, 0x19, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x1a, 0x00, 0x02, 0x00,
0x0a, 0x00, 0x00, 0x00, 0x20, 0x00, 0x04, 0x00, 0x1a, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x0a, 0x00, 0x00, 0x00, 0x20, 0x00, 0x04, 0x00,
0x1b, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x17, 0x00, 0x00, 0x00,
0x20, 0x00, 0x04, 0x00, 0x1c, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
0x11, 0x00, 0x00, 0x00, 0x20, 0x00, 0x04, 0x00, 0x1d, 0x00, 0x00, 0x00,
0x03, 0x00, 0x00, 0x00, 0x17, 0x00, 0x00, 0x00, 0x13, 0x00, 0x02, 0x00,
0x1e, 0x00, 0x00, 0x00, 0x21, 0x00, 0x03, 0x00, 0x1f, 0x00, 0x00, 0x00,
0x1e, 0x00, 0x00, 0x00, 0x1b, 0x00, 0x03, 0x00, 0x0c, 0x00, 0x00, 0x00,
0x08, 0x00, 0x00, 0x00, 0x20, 0x00, 0x04, 0x00, 0x20, 0x00, 0x00, 0x00,
0x02, 0x00, 0x00, 0x00, 0x17, 0x00, 0x00, 0x00, 0x3b, 0x00, 0x04, 0x00,
0x18, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00,
0x3b, 0x00, 0x04, 0x00, 0x19, 0x00, 0x00, 0x00, 0x09, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x3b, 0x00, 0x04, 0x00, 0x1a, 0x00, 0x00, 0x00,
0x0b, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3b, 0x00, 0x04, 0x00,
0x1b, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
0x3b, 0x00, 0x04, 0x00, 0x1c, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00,
0x01, 0x00, 0x00, 0x00, 0x3b, 0x00, 0x04, 0x00, 0x1d, 0x00, 0x00, 0x00,
0x05, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x36, 0x00, 0x05, 0x00,
0x1e, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x1f, 0x00, 0x00, 0x00, 0xf8, 0x00, 0x02, 0x00, 0x21, 0x00, 0x00, 0x00,
0x3d, 0x00, 0x04, 0x00, 0x17, 0x00, 0x00, 0x00, 0x22, 0x00, 0x00, 0x00,
0x03, 0x00, 0x00, 0x00, 0x3d, 0x00, 0x04, 0x00, 0x11, 0x00, 0x00, 0x00,
0x23, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0xd1, 0x00, 0x04, 0x00,
0x11, 0x00, 0x00, 0x00, 0x24, 0x00, 0x00, 0x00, 0x23, 0x00, 0x00, 0x00,
0x41, 0x00, 0x05, 0x00, 0x20, 0x00, 0x00, 0x00, 0x25, 0x00, 0x00, 0x00,
0x07, 0x00, 0x00, 0x00, 0x0e, 0x00, 0x00, 0x00, 0x3d, 0x00, 0x04, 0x00,
0x17, 0x00, 0x00, 0x00, 0x26, 0x00, 0x00, 0x00, 0x25, 0x00, 0x00, 0x00,
0x4f, 0x00, 0x07, 0x00, 0x11, 0x00, 0x00, 0x00, 0x27, 0x00, 0x00, 0x00,
0x26, 0x00, 0x00, 0x00, 0x26, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00,
0x03, 0x00, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00, 0x11, 0x00, 0x00, 0x00,
0x28, 0x00, 0x00, 0x00, 0x24, 0x00, 0x00, 0x00, 0x27, 0x00, 0x00, 0x00,
0x0c, 0x00, 0x08, 0x00, 0x11, 0x00, 0x00, 0x00, 0x29, 0x00, 0x00, 0x00,
0x01, 0x00, 0x00, 0x00, 0x2b, 0x00, 0x00, 0x00, 0x28, 0x00, 0x00, 0x00,
0x12, 0x00, 0x00, 0x00, 0x14, 0x00, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00,
0x11, 0x00, 0x00, 0x00, 0x2a, 0x00, 0x00, 0x00, 0x23, 0x00, 0x00, 0x00,
0x27, 0x00, 0x00, 0x00, 0x8e, 0x00, 0x05, 0x00, 0x11, 0x00, 0x00, 0x00,
0x2b, 0x00, 0x00, 0x00, 0x29, 0x00, 0x00, 0x00, 0x15, 0x00, 0x00, 0x00,
0x83, 0x00, 0x05, 0x00, 0x11, 0x00, 0x00, 0x00, 0x2c, 0x00, 0x00, 0x00,
0x2a, 0x00, 0x00, 0x00, 0x2b, 0x00, 0x00, 0x00, 0x83, 0x00, 0x05, 0x00,
0x11, 0x00, 0x00, 0x00, 0x2d, 0x00, 0x00, 0x00, 0x14, 0x00, 0x00, 0x00,
0x29, 0x00, 0x00, 0x00, 0x0c, 0x00, 0x06, 0x00, 0x11, 0x00, 0x00, 0x00,
0x2e, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x0a, 0x00, 0x00, 0x00,
0x2c, 0x00, 0x00, 0x00, 0x0c, 0x00, 0x08, 0x00, 0x11, 0x00, 0x00, 0x00,
0x2f, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x31, 0x00, 0x00, 0x00,
0x2d, 0x00, 0x00, 0x00, 0x14, 0x00, 0x00, 0x00, 0x2e, 0x00, 0x00, 0x00,
0x0c, 0x00, 0x06, 0x00, 0x11, 0x00, 0x00, 0x00, 0x30, 0x00, 0x00, 0x00,
0x01, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x2c, 0x00, 0x00, 0x00,
0x81, 0x00, 0x05, 0x00, 0x11, 0x00, 0x00, 0x00, 0x31, 0x00, 0x00, 0x00,
0x30, 0x00, 0x00, 0x00, 0x16, 0x00, 0x00, 0x00, 0x81, 0x00, 0x05, 0x00,
0x11, 0x00, 0x00, 0x00, 0x32, 0x00, 0x00, 0x00, 0x31, 0x00, 0x00, 0x00,
0x2f, 0x00, 0x00, 0x00, 0x4f, 0x00, 0x07, 0x00, 0x11, 0x00, 0x00, 0x00,
0x33, 0x00, 0x00, 0x00, 0x26, 0x00, 0x00, 0x00, 0x26, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x85, 0x00, 0x05, 0x00,
0x11, 0x00, 0x00, 0x00, 0x34, 0x00, 0x00, 0x00, 0x32, 0x00, 0x00, 0x00,
0x33, 0x00, 0x00, 0x00, 0x3d, 0x00, 0x04, 0x00, 0x08, 0x00, 0x00, 0x00,
0x35, 0x00, 0x00, 0x00, 0x09, 0x00, 0x00, 0x00, 0x3d, 0x00, 0x04, 0x00,
0x0a, 0x00, 0x00, 0x00, 0x36, 0x00, 0x00, 0x00, 0x0b, 0x00, 0x00, 0x00,
0xcf, 0x00, 0x04, 0x00, 0x11, 0x00, 0x00, 0x00, 0x37, 0x00, 0x00, 0x00,
0x23, 0x00, 0x00, 0x00, 0xd0, 0x00, 0x04, 0x00, 0x11, 0x00, 0x00, 0x00,
0x38, 0x00, 0x00, 0x00, 0x23, 0x00, 0x00, 0x00, 0x56, 0x00, 0x05, 0x00,
0x0c, 0x00, 0x00, 0x00, 0x39, 0x00, 0x00, 0x00, 0x35, 0x00, 0x00, 0x00,
0x36, 0x00, 0x00, 0x00, 0x58, 0x00, 0x08, 0x00, 0x17, 0x00, 0x00, 0x00,
0x3a, 0x00, 0x00, 0x00, 0x39, 0x00, 0x00, 0x00, 0x34, 0x00, 0x00, 0x00,
0x04, 0x00, 0x00, 0x00, 0x37, 0x00, 0x00, 0x00, 0x38, 0x00, 0x00, 0x00,
0x85, 0x00, 0x05, 0x00, 0x17, 0x00, 0x00, 0x00, 0x3b, 0x00, 0x00, 0x00,
0x3a, 0x00, 0x00, 0x00, 0x22, 0x00, 0x00, 0x00, 0x3e, 0x00, 0x03, 0x00,
0x05, 0x00, 0x00, 0x00, 0x3b, 0x00, 0x00, 0x00, 0xfd, 0x00, 0x01, 0x00,
0x38, 0x00, 0x01, 0x00
};
static const unsigned int texture_rgba_pixelart_frag_spv_len = 1648;