summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKonstantin Käfer <mail@kkaefer.com>2019-04-26 18:31:48 +0200
committerKonstantin Käfer <mail@kkaefer.com>2019-05-02 15:57:21 +0200
commit873fb6a76bd45dfca5624004b5df274673d640b1 (patch)
treec27fcae498ba0369328f79149bfe23e1b38cbaf8
parent386b013c5e8965ce99846cb5452ce1f897d0161f (diff)
downloadqtlocation-mapboxgl-upstream/extrusions-refactor.tar.gz
[core] render extrusions directly in the main framebufferupstream/extrusions-refactor
m---------mapbox-gl-js0
-rw-r--r--platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/style/layers/PropertyFactory.java4
-rw-r--r--platform/darwin/src/MGLSymbolStyleLayer.h2
-rw-r--r--platform/node/test/ignores.json1
-rw-r--r--src/core-files.json3
-rw-r--r--src/mbgl/programs/extrusion_texture_program.cpp10
-rw-r--r--src/mbgl/programs/extrusion_texture_program.hpp39
-rw-r--r--src/mbgl/programs/fill_extrusion_program.cpp5
-rw-r--r--src/mbgl/programs/fill_extrusion_program.hpp11
-rw-r--r--src/mbgl/programs/gl/extrusion_texture.cpp71
-rw-r--r--src/mbgl/programs/gl/fill_extrusion.cpp6
-rw-r--r--src/mbgl/programs/gl/fill_extrusion_pattern.cpp8
-rw-r--r--src/mbgl/programs/gl/hillshade.cpp4
-rw-r--r--src/mbgl/programs/gl/hillshade_prepare.cpp4
-rw-r--r--src/mbgl/programs/gl/line.cpp4
-rw-r--r--src/mbgl/programs/gl/line_gradient.cpp4
-rw-r--r--src/mbgl/programs/gl/line_pattern.cpp4
-rw-r--r--src/mbgl/programs/gl/line_sdf.cpp4
-rw-r--r--src/mbgl/programs/gl/raster.cpp4
-rw-r--r--src/mbgl/programs/gl/shader_source.cpp884
-rw-r--r--src/mbgl/programs/gl/symbol_icon.cpp4
-rw-r--r--src/mbgl/programs/gl/symbol_sdf_icon.cpp4
-rw-r--r--src/mbgl/programs/gl/symbol_sdf_text.cpp4
-rw-r--r--src/mbgl/renderer/layers/render_fill_extrusion_layer.cpp193
-rw-r--r--src/mbgl/renderer/layers/render_heatmap_layer.cpp4
-rw-r--r--src/mbgl/renderer/paint_parameters.cpp24
-rw-r--r--src/mbgl/renderer/paint_parameters.hpp5
-rw-r--r--src/mbgl/renderer/render_static_data.cpp16
-rw-r--r--src/mbgl/renderer/render_static_data.hpp6
29 files changed, 608 insertions, 724 deletions
diff --git a/mapbox-gl-js b/mapbox-gl-js
-Subproject fe03b706ff6fbda2ff4796bbf581aa667c6fbc7
+Subproject ed3d0e10ad36050e4ea63deb4c1b0733ac6a0e3
diff --git a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/style/layers/PropertyFactory.java b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/style/layers/PropertyFactory.java
index 43a1c8daac..3f2771a307 100644
--- a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/style/layers/PropertyFactory.java
+++ b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/style/layers/PropertyFactory.java
@@ -1786,7 +1786,7 @@ public class PropertyFactory {
}
/**
- * Sorts features in ascending order based on this value. Features with a higher sort key will appear above features with a lower sort key wehn they overlap. Features with a lower sort key will have priority over other features when doing placement.
+ * Sorts features in ascending order based on this value. Features with a higher sort key will appear above features with a lower sort key when they overlap. Features with a lower sort key will have priority over other features when doing placement.
*
* @param value a Float value
* @return property wrapper around Float
@@ -1796,7 +1796,7 @@ public class PropertyFactory {
}
/**
- * Sorts features in ascending order based on this value. Features with a higher sort key will appear above features with a lower sort key wehn they overlap. Features with a lower sort key will have priority over other features when doing placement.
+ * Sorts features in ascending order based on this value. Features with a higher sort key will appear above features with a lower sort key when they overlap. Features with a lower sort key will have priority over other features when doing placement.
*
* @param value a Float value
* @return property wrapper around Float
diff --git a/platform/darwin/src/MGLSymbolStyleLayer.h b/platform/darwin/src/MGLSymbolStyleLayer.h
index f5047745f6..cbe3464346 100644
--- a/platform/darwin/src/MGLSymbolStyleLayer.h
+++ b/platform/darwin/src/MGLSymbolStyleLayer.h
@@ -1025,7 +1025,7 @@ MGL_EXPORT
/**
Sorts features in ascending order based on this value. Features with a higher
- sort key will appear above features with a lower sort key wehn they overlap.
+ sort key will appear above features with a lower sort key when they overlap.
Features with a lower sort key will have priority over other features when
doing placement.
diff --git a/platform/node/test/ignores.json b/platform/node/test/ignores.json
index 779a9a17f0..0ffb8f1d6c 100644
--- a/platform/node/test/ignores.json
+++ b/platform/node/test/ignores.json
@@ -92,6 +92,7 @@
"render-tests/fill-extrusion-pattern/missing": "https://github.com/mapbox/mapbox-gl-js/issues/3327",
"render-tests/fill-extrusion-pattern/opacity": "https://github.com/mapbox/mapbox-gl-js/issues/3327",
"render-tests/fill-extrusion-pattern/feature-expression": "https://github.com/mapbox/mapbox-gl-js/issues/3327",
+ "render-tests/fill-extrusion-pattern/tile-buffer": "https://github.com/mapbox/mapbox-gl-js/issues/3327",
"render-tests/fill-pattern/update-feature-state": "skip - port https://github.com/mapbox/mapbox-gl-js/pull/6263 - needs issue",
"render-tests/geojson/inline-linestring-fill": "current behavior is arbitrary",
"render-tests/mixed-zoom/z10-z11": "https://github.com/mapbox/mapbox-gl-native/issues/10397",
diff --git a/src/core-files.json b/src/core-files.json
index e22e061ef0..c0412dd3a8 100644
--- a/src/core-files.json
+++ b/src/core-files.json
@@ -60,7 +60,6 @@
"src/mbgl/programs/clipping_mask_program.cpp",
"src/mbgl/programs/collision_box_program.cpp",
"src/mbgl/programs/debug_program.cpp",
- "src/mbgl/programs/extrusion_texture_program.cpp",
"src/mbgl/programs/fill_extrusion_program.cpp",
"src/mbgl/programs/fill_program.cpp",
"src/mbgl/programs/gl/background.cpp",
@@ -70,7 +69,6 @@
"src/mbgl/programs/gl/collision_box.cpp",
"src/mbgl/programs/gl/collision_circle.cpp",
"src/mbgl/programs/gl/debug.cpp",
- "src/mbgl/programs/gl/extrusion_texture.cpp",
"src/mbgl/programs/gl/fill.cpp",
"src/mbgl/programs/gl/fill_extrusion.cpp",
"src/mbgl/programs/gl/fill_extrusion_pattern.cpp",
@@ -577,7 +575,6 @@
"mbgl/programs/collision_box_program.hpp": "src/mbgl/programs/collision_box_program.hpp",
"mbgl/programs/collision_circle_program.hpp": "src/mbgl/programs/collision_circle_program.hpp",
"mbgl/programs/debug_program.hpp": "src/mbgl/programs/debug_program.hpp",
- "mbgl/programs/extrusion_texture_program.hpp": "src/mbgl/programs/extrusion_texture_program.hpp",
"mbgl/programs/fill_extrusion_pattern_program.hpp": "src/mbgl/programs/fill_extrusion_pattern_program.hpp",
"mbgl/programs/fill_extrusion_program.hpp": "src/mbgl/programs/fill_extrusion_program.hpp",
"mbgl/programs/fill_outline_pattern_program.hpp": "src/mbgl/programs/fill_outline_pattern_program.hpp",
diff --git a/src/mbgl/programs/extrusion_texture_program.cpp b/src/mbgl/programs/extrusion_texture_program.cpp
deleted file mode 100644
index 50fcd76221..0000000000
--- a/src/mbgl/programs/extrusion_texture_program.cpp
+++ /dev/null
@@ -1,10 +0,0 @@
-#include <mbgl/programs/extrusion_texture_program.hpp>
-#include <mbgl/gfx/context_impl.hpp>
-
-namespace mbgl {
-
-template std::unique_ptr<gfx::Program<ExtrusionTextureProgram>> gfx::Context::createProgram(const ProgramParameters&);
-
-static_assert(sizeof(ExtrusionTextureLayoutVertex) == 4, "expected ExtrusionTextureLayoutVertex size");
-
-} // namespace mbgl
diff --git a/src/mbgl/programs/extrusion_texture_program.hpp b/src/mbgl/programs/extrusion_texture_program.hpp
deleted file mode 100644
index 10dfdc8a16..0000000000
--- a/src/mbgl/programs/extrusion_texture_program.hpp
+++ /dev/null
@@ -1,39 +0,0 @@
-#pragma once
-
-#include <mbgl/programs/program.hpp>
-#include <mbgl/programs/attributes.hpp>
-#include <mbgl/programs/uniforms.hpp>
-#include <mbgl/programs/textures.hpp>
-#include <mbgl/style/properties.hpp>
-#include <mbgl/util/geometry.hpp>
-
-namespace mbgl {
-
-class ExtrusionTextureProgram : public Program<
- ExtrusionTextureProgram,
- gfx::PrimitiveType::Triangle,
- TypeList<attributes::pos>,
- TypeList<
- uniforms::matrix,
- uniforms::world,
- uniforms::opacity>,
- TypeList<
- textures::image>,
- style::Properties<>> {
-public:
- using Program::Program;
-
- static LayoutVertex layoutVertex(Point<int16_t> p) {
- return LayoutVertex{
- {{
- p.x,
- p.y
- }}
- };
- }
-};
-
-using ExtrusionTextureLayoutVertex = ExtrusionTextureProgram::LayoutVertex;
-using ExtrusionTextureAttributes = ExtrusionTextureProgram::AttributeList;
-
-} // namespace mbgl
diff --git a/src/mbgl/programs/fill_extrusion_program.cpp b/src/mbgl/programs/fill_extrusion_program.cpp
index d301f32707..09da6931b6 100644
--- a/src/mbgl/programs/fill_extrusion_program.cpp
+++ b/src/mbgl/programs/fill_extrusion_program.cpp
@@ -36,9 +36,10 @@ float lightIntensity(const EvaluatedLight& light) {
}
FillExtrusionProgram::LayoutUniformValues FillExtrusionProgram::layoutUniformValues(
- mat4 matrix, const TransformState& state, const EvaluatedLight& light) {
+ mat4 matrix, const TransformState& state, const float opacity, const EvaluatedLight& light) {
return {
uniforms::matrix::Value( matrix ),
+ uniforms::opacity::Value( opacity ),
uniforms::lightcolor::Value( lightColor(light) ),
uniforms::lightpos::Value( lightPosition(light, state) ),
uniforms::lightintensity::Value( lightIntensity(light) )
@@ -51,6 +52,7 @@ FillExtrusionPatternProgram::layoutUniformValues(mat4 matrix,
const CrossfadeParameters& crossfade,
const UnwrappedTileID& tileID,
const TransformState& state,
+ const float opacity,
const float heightFactor,
const float pixelRatio,
const EvaluatedLight& light) {
@@ -61,6 +63,7 @@ FillExtrusionPatternProgram::layoutUniformValues(mat4 matrix,
return {
uniforms::matrix::Value( matrix ),
+ uniforms::opacity::Value( opacity ),
uniforms::scale::Value( {{pixelRatio, tileRatio, crossfade.fromScale, crossfade.toScale}} ),
uniforms::texsize::Value( atlasSize ),
uniforms::fade::Value( crossfade.t ),
diff --git a/src/mbgl/programs/fill_extrusion_program.hpp b/src/mbgl/programs/fill_extrusion_program.hpp
index 85e2ff3caf..410b281f7a 100644
--- a/src/mbgl/programs/fill_extrusion_program.hpp
+++ b/src/mbgl/programs/fill_extrusion_program.hpp
@@ -2,7 +2,6 @@
#include <mbgl/programs/program.hpp>
#include <mbgl/programs/attributes.hpp>
-#include <mbgl/programs/extrusion_texture_program.hpp>
#include <mbgl/programs/uniforms.hpp>
#include <mbgl/programs/textures.hpp>
#include <mbgl/util/geometry.hpp>
@@ -34,12 +33,14 @@ using FillExtrusionLayoutAttributes = TypeList<
using FillExtrusionUniforms = TypeList<
uniforms::matrix,
+ uniforms::opacity,
uniforms::lightcolor,
uniforms::lightpos,
uniforms::lightintensity>;
using FillExtrusionPatternUniforms = TypeList<
uniforms::matrix,
+ uniforms::opacity,
uniforms::scale,
uniforms::texsize,
uniforms::fade,
@@ -82,7 +83,7 @@ public:
}
static LayoutUniformValues
- layoutUniformValues(mat4, const TransformState&, const EvaluatedLight&);
+ layoutUniformValues(mat4, const TransformState&, const float opacity, const EvaluatedLight&);
};
class FillExtrusionPatternProgram : public Program<
@@ -102,6 +103,7 @@ public:
const CrossfadeParameters&,
const UnwrappedTileID&,
const TransformState&,
+ const float opacity,
const float heightFactor,
const float pixelRatio,
const EvaluatedLight&);
@@ -115,11 +117,10 @@ class FillExtrusionLayerPrograms final : public LayerTypePrograms {
public:
FillExtrusionLayerPrograms(gfx::Context& context, const ProgramParameters& programParameters)
: fillExtrusion(context, programParameters),
- fillExtrusionPattern(context, programParameters),
- extrusionTexture(context, programParameters) {}
+ fillExtrusionPattern(context, programParameters) {
+ }
FillExtrusionProgram fillExtrusion;
FillExtrusionPatternProgram fillExtrusionPattern;
- ExtrusionTextureProgram extrusionTexture;
};
} // namespace mbgl
diff --git a/src/mbgl/programs/gl/extrusion_texture.cpp b/src/mbgl/programs/gl/extrusion_texture.cpp
deleted file mode 100644
index bca533a788..0000000000
--- a/src/mbgl/programs/gl/extrusion_texture.cpp
+++ /dev/null
@@ -1,71 +0,0 @@
-// NOTE: DO NOT CHANGE THIS FILE. IT IS AUTOMATICALLY GENERATED.
-
-#include <mbgl/programs/extrusion_texture_program.hpp>
-#include <mbgl/programs/gl/preludes.hpp>
-#include <mbgl/programs/gl/shader_source.hpp>
-#include <mbgl/gl/program.hpp>
-
-namespace mbgl {
-namespace programs {
-namespace gl {
-
-template <typename>
-struct ShaderSource;
-
-template <>
-struct ShaderSource<ExtrusionTextureProgram> {
- static constexpr const char* name = "extrusion_texture";
- static constexpr const uint8_t hash[8] = { 0xd9, 0x77, 0x11, 0xd2, 0x03, 0xc7, 0x27, 0xcb };
- static constexpr const auto vertexOffset = 27554;
- static constexpr const auto fragmentOffset = 27734;
-};
-
-constexpr const char* ShaderSource<ExtrusionTextureProgram>::name;
-constexpr const uint8_t ShaderSource<ExtrusionTextureProgram>::hash[8];
-
-} // namespace gl
-} // namespace programs
-
-namespace gfx {
-
-template <>
-std::unique_ptr<Program<ExtrusionTextureProgram>>
-Context::createProgram<gl::Context>(const ProgramParameters& programParameters) {
- return std::make_unique<gl::Program<ExtrusionTextureProgram>>(programParameters);
-}
-
-} // namespace gfx
-} // namespace mbgl
-
-// Uncompressed source of extrusion_texture.vertex.glsl:
-/*
-uniform mat4 u_matrix;
-uniform vec2 u_world;
-attribute vec2 a_pos;
-varying vec2 v_pos;
-
-void main() {
- gl_Position = u_matrix * vec4(a_pos * u_world, 0, 1);
-
- v_pos.x = a_pos.x;
- v_pos.y = 1.0 - a_pos.y;
-}
-
-*/
-
-// Uncompressed source of extrusion_texture.fragment.glsl:
-/*
-uniform sampler2D u_image;
-uniform float u_opacity;
-varying vec2 v_pos;
-
-void main() {
- gl_FragColor = texture2D(u_image, v_pos) * u_opacity;
-
-#ifdef OVERDRAW_INSPECTOR
- gl_FragColor = vec4(0.0);
-#endif
-}
-
-*/
-
diff --git a/src/mbgl/programs/gl/fill_extrusion.cpp b/src/mbgl/programs/gl/fill_extrusion.cpp
index 83a8eadee6..cd2c63d779 100644
--- a/src/mbgl/programs/gl/fill_extrusion.cpp
+++ b/src/mbgl/programs/gl/fill_extrusion.cpp
@@ -15,9 +15,9 @@ struct ShaderSource;
template <>
struct ShaderSource<FillExtrusionProgram> {
static constexpr const char* name = "fill_extrusion";
- static constexpr const uint8_t hash[8] = { 0x49, 0x8a, 0xa2, 0x8b, 0x21, 0x74, 0x27, 0x93 };
+ static constexpr const uint8_t hash[8] = { 0x9d, 0x76, 0x7f, 0xaa, 0x86, 0x57, 0x56, 0x96 };
static constexpr const auto vertexOffset = 21238;
- static constexpr const auto fragmentOffset = 23121;
+ static constexpr const auto fragmentOffset = 23169;
};
constexpr const char* ShaderSource<FillExtrusionProgram>::name;
@@ -44,6 +44,7 @@ uniform vec3 u_lightcolor;
uniform lowp vec3 u_lightpos;
uniform lowp float u_lightintensity;
uniform float u_vertical_gradient;
+uniform lowp float u_opacity;
attribute vec2 a_pos;
attribute vec4 a_normal_ed;
@@ -141,6 +142,7 @@ void main() {
v_color.r += clamp(color.r * directional * u_lightcolor.r, mix(0.0, 0.3, 1.0 - u_lightcolor.r), 1.0);
v_color.g += clamp(color.g * directional * u_lightcolor.g, mix(0.0, 0.3, 1.0 - u_lightcolor.g), 1.0);
v_color.b += clamp(color.b * directional * u_lightcolor.b, mix(0.0, 0.3, 1.0 - u_lightcolor.b), 1.0);
+ v_color *= u_opacity;
}
*/
diff --git a/src/mbgl/programs/gl/fill_extrusion_pattern.cpp b/src/mbgl/programs/gl/fill_extrusion_pattern.cpp
index 45068d84b8..a18140f418 100644
--- a/src/mbgl/programs/gl/fill_extrusion_pattern.cpp
+++ b/src/mbgl/programs/gl/fill_extrusion_pattern.cpp
@@ -15,9 +15,9 @@ struct ShaderSource;
template <>
struct ShaderSource<FillExtrusionPatternProgram> {
static constexpr const char* name = "fill_extrusion_pattern";
- static constexpr const uint8_t hash[8] = { 0x93, 0x2b, 0xd1, 0xab, 0xa3, 0xf2, 0x24, 0x63 };
- static constexpr const auto vertexOffset = 23237;
- static constexpr const auto fragmentOffset = 26157;
+ static constexpr const uint8_t hash[8] = { 0x5a, 0x8f, 0x1a, 0xbf, 0x43, 0x62, 0xf0, 0x86 };
+ static constexpr const auto vertexOffset = 23285;
+ static constexpr const auto fragmentOffset = 26256;
};
constexpr const char* ShaderSource<FillExtrusionPatternProgram>::name;
@@ -45,6 +45,7 @@ uniform vec2 u_pixel_coord_lower;
uniform float u_height_factor;
uniform vec4 u_scale;
uniform float u_vertical_gradient;
+uniform lowp float u_opacity;
uniform vec3 u_lightcolor;
uniform lowp vec3 u_lightpos;
@@ -168,6 +169,7 @@ void main() {
}
v_lighting.rgb += clamp(directional * u_lightcolor, mix(vec3(0.0), vec3(0.3), 1.0 - u_lightcolor), vec3(1.0));
+ v_lighting *= u_opacity;
}
*/
diff --git a/src/mbgl/programs/gl/hillshade.cpp b/src/mbgl/programs/gl/hillshade.cpp
index a33ddb4326..fcf52e7313 100644
--- a/src/mbgl/programs/gl/hillshade.cpp
+++ b/src/mbgl/programs/gl/hillshade.cpp
@@ -16,8 +16,8 @@ template <>
struct ShaderSource<HillshadeProgram> {
static constexpr const char* name = "hillshade";
static constexpr const uint8_t hash[8] = { 0x8a, 0x11, 0x29, 0x18, 0x52, 0x7f, 0x3b, 0xbb };
- static constexpr const auto vertexOffset = 29340;
- static constexpr const auto fragmentOffset = 29511;
+ static constexpr const auto vertexOffset = 29068;
+ static constexpr const auto fragmentOffset = 29239;
};
constexpr const char* ShaderSource<HillshadeProgram>::name;
diff --git a/src/mbgl/programs/gl/hillshade_prepare.cpp b/src/mbgl/programs/gl/hillshade_prepare.cpp
index a302db5feb..0af87635d3 100644
--- a/src/mbgl/programs/gl/hillshade_prepare.cpp
+++ b/src/mbgl/programs/gl/hillshade_prepare.cpp
@@ -16,8 +16,8 @@ template <>
struct ShaderSource<HillshadePrepareProgram> {
static constexpr const char* name = "hillshade_prepare";
static constexpr const uint8_t hash[8] = { 0xe6, 0x01, 0xf2, 0xbb, 0xa0, 0x77, 0x1d, 0xeb };
- static constexpr const auto vertexOffset = 27925;
- static constexpr const auto fragmentOffset = 28218;
+ static constexpr const auto vertexOffset = 27653;
+ static constexpr const auto fragmentOffset = 27946;
};
constexpr const char* ShaderSource<HillshadePrepareProgram>::name;
diff --git a/src/mbgl/programs/gl/line.cpp b/src/mbgl/programs/gl/line.cpp
index e59cb07cb9..6b1f8d0e5e 100644
--- a/src/mbgl/programs/gl/line.cpp
+++ b/src/mbgl/programs/gl/line.cpp
@@ -16,8 +16,8 @@ template <>
struct ShaderSource<LineProgram> {
static constexpr const char* name = "line";
static constexpr const uint8_t hash[8] = { 0x44, 0x46, 0x9e, 0x59, 0x02, 0xbb, 0xaa, 0xae };
- static constexpr const auto vertexOffset = 30585;
- static constexpr const auto fragmentOffset = 33509;
+ static constexpr const auto vertexOffset = 30313;
+ static constexpr const auto fragmentOffset = 33237;
};
constexpr const char* ShaderSource<LineProgram>::name;
diff --git a/src/mbgl/programs/gl/line_gradient.cpp b/src/mbgl/programs/gl/line_gradient.cpp
index f5325f84ba..8a24a43b57 100644
--- a/src/mbgl/programs/gl/line_gradient.cpp
+++ b/src/mbgl/programs/gl/line_gradient.cpp
@@ -16,8 +16,8 @@ template <>
struct ShaderSource<LineGradientProgram> {
static constexpr const char* name = "line_gradient";
static constexpr const uint8_t hash[8] = { 0xee, 0xdd, 0x10, 0x3d, 0x1a, 0x21, 0x26, 0x25 };
- static constexpr const auto vertexOffset = 34335;
- static constexpr const auto fragmentOffset = 37054;
+ static constexpr const auto vertexOffset = 34063;
+ static constexpr const auto fragmentOffset = 36782;
};
constexpr const char* ShaderSource<LineGradientProgram>::name;
diff --git a/src/mbgl/programs/gl/line_pattern.cpp b/src/mbgl/programs/gl/line_pattern.cpp
index e323b16785..0f030b746c 100644
--- a/src/mbgl/programs/gl/line_pattern.cpp
+++ b/src/mbgl/programs/gl/line_pattern.cpp
@@ -16,8 +16,8 @@ template <>
struct ShaderSource<LinePatternProgram> {
static constexpr const char* name = "line_pattern";
static constexpr const uint8_t hash[8] = { 0x73, 0xa0, 0x59, 0x46, 0x57, 0xa5, 0x60, 0x25 };
- static constexpr const auto vertexOffset = 37841;
- static constexpr const auto fragmentOffset = 41162;
+ static constexpr const auto vertexOffset = 37569;
+ static constexpr const auto fragmentOffset = 40890;
};
constexpr const char* ShaderSource<LinePatternProgram>::name;
diff --git a/src/mbgl/programs/gl/line_sdf.cpp b/src/mbgl/programs/gl/line_sdf.cpp
index a7b4e7e3b7..e6241db9c4 100644
--- a/src/mbgl/programs/gl/line_sdf.cpp
+++ b/src/mbgl/programs/gl/line_sdf.cpp
@@ -16,8 +16,8 @@ template <>
struct ShaderSource<LineSDFProgram> {
static constexpr const char* name = "line_sdf";
static constexpr const uint8_t hash[8] = { 0x66, 0x20, 0x75, 0x4e, 0xbe, 0x02, 0x9e, 0x67 };
- static constexpr const auto vertexOffset = 43475;
- static constexpr const auto fragmentOffset = 47089;
+ static constexpr const auto vertexOffset = 43203;
+ static constexpr const auto fragmentOffset = 46817;
};
constexpr const char* ShaderSource<LineSDFProgram>::name;
diff --git a/src/mbgl/programs/gl/raster.cpp b/src/mbgl/programs/gl/raster.cpp
index 1867a48f1c..c66f796701 100644
--- a/src/mbgl/programs/gl/raster.cpp
+++ b/src/mbgl/programs/gl/raster.cpp
@@ -16,8 +16,8 @@ template <>
struct ShaderSource<RasterProgram> {
static constexpr const char* name = "raster";
static constexpr const uint8_t hash[8] = { 0x40, 0x3d, 0x6c, 0xf4, 0xd0, 0x41, 0x51, 0x0e };
- static constexpr const auto vertexOffset = 48592;
- static constexpr const auto fragmentOffset = 48941;
+ static constexpr const auto vertexOffset = 48320;
+ static constexpr const auto fragmentOffset = 48669;
};
constexpr const char* ShaderSource<RasterProgram>::name;
diff --git a/src/mbgl/programs/gl/shader_source.cpp b/src/mbgl/programs/gl/shader_source.cpp
index 00e70f749a..ae9e517003 100644
--- a/src/mbgl/programs/gl/shader_source.cpp
+++ b/src/mbgl/programs/gl/shader_source.cpp
@@ -12,453 +12,453 @@ namespace gl {
constexpr const uint8_t compressedShaderSource[] = {
0x78, 0xda, 0xed, 0x3d, 0xfd, 0x6f, 0xe3, 0x36, 0xb2, 0xf7, 0x73, 0xfe, 0x0a, 0x17, 0x05, 0x0e,
0x92, 0x2c, 0x5b, 0xb6, 0x93, 0xec, 0x97, 0x4e, 0xaf, 0x08, 0x76, 0xb3, 0x7d, 0x01, 0xda, 0xdd,
- 0x60, 0xd3, 0xf6, 0x15, 0x57, 0x2c, 0x0c, 0xc9, 0x56, 0x6c, 0xdf, 0xd9, 0x96, 0x9f, 0xad, 0x24,
- 0x76, 0x0e, 0xf9, 0xdf, 0x1f, 0x87, 0xdf, 0xa4, 0x48, 0x59, 0x76, 0x12, 0xe7, 0xe3, 0x19, 0x45,
- 0x37, 0x16, 0x39, 0x1c, 0x0e, 0xc9, 0xe1, 0x70, 0x66, 0x48, 0x0e, 0x7f, 0x1c, 0x5d, 0xf6, 0xd3,
- 0xcb, 0xda, 0xcf, 0xbf, 0x74, 0x4f, 0x2f, 0x0e, 0x66, 0xf3, 0xb4, 0x37, 0x5a, 0x8c, 0xb2, 0x69,
- 0x6d, 0x38, 0x1a, 0x0c, 0x67, 0xb5, 0xcb, 0x71, 0x16, 0xe7, 0xe1, 0xc1, 0x8f, 0xe9, 0x78, 0x91,
- 0x1e, 0xfc, 0x38, 0xba, 0xac, 0xfd, 0x80, 0x60, 0x47, 0xd3, 0xb4, 0xef, 0x8c, 0xb3, 0x9b, 0x99,
- 0x7b, 0xf0, 0x23, 0xf9, 0xac, 0xc1, 0x17, 0x82, 0x9a, 0xf6, 0x47, 0x97, 0x2a, 0xd8, 0x24, 0xed,
- 0x8f, 0xae, 0x26, 0x12, 0x24, 0x4d, 0x30, 0x02, 0xe3, 0x3a, 0x05, 0x28, 0xfe, 0xe4, 0x80, 0xe4,
- 0xcf, 0x75, 0xda, 0xeb, 0xd4, 0xae, 0xa6, 0xb3, 0xb8, 0xf7, 0xef, 0x2e, 0x26, 0xce, 0xe9, 0x65,
- 0xd3, 0x45, 0x4e, 0x08, 0xad, 0x41, 0x72, 0xda, 0xff, 0x23, 0x1e, 0x5f, 0xa5, 0x6e, 0xed, 0x3f,
- 0xa3, 0x29, 0x4b, 0x39, 0x9b, 0xe6, 0x38, 0x31, 0x42, 0x49, 0x8e, 0x0c, 0x14, 0x02, 0xcc, 0x75,
- 0x2b, 0x52, 0xc1, 0x82, 0xce, 0xf1, 0x9b, 0x70, 0x9e, 0xe6, 0x57, 0xf3, 0x69, 0x0d, 0x2a, 0x74,
- 0xae, 0x5b, 0xbe, 0x0a, 0xd1, 0xb8, 0x6e, 0x79, 0x08, 0xc8, 0x0d, 0xef, 0x64, 0x82, 0x32, 0xf4,
- 0xef, 0x28, 0x5f, 0x19, 0x48, 0xfa, 0x4a, 0x72, 0x28, 0x51, 0xe8, 0x7f, 0x9a, 0x20, 0x11, 0xc4,
- 0x40, 0x82, 0x8e, 0x52, 0x35, 0x69, 0xa4, 0x28, 0xe1, 0x06, 0xed, 0xce, 0xdb, 0x66, 0xcb, 0x9f,
- 0x64, 0x7d, 0xb5, 0xa0, 0xdf, 0x69, 0xb6, 0x5c, 0x42, 0xd0, 0x51, 0xad, 0x9f, 0xf6, 0xb2, 0x7e,
- 0xda, 0xed, 0x65, 0xe3, 0x6c, 0x4e, 0xc9, 0xc1, 0x84, 0xa6, 0x53, 0x48, 0xef, 0x7f, 0x84, 0x74,
- 0x44, 0x8c, 0xa8, 0xe8, 0xc8, 0x51, 0x3a, 0x55, 0x86, 0xfb, 0xab, 0xf5, 0x1d, 0x11, 0x75, 0x7c,
- 0x8c, 0x2a, 0xb5, 0xc3, 0xb4, 0x19, 0xcc, 0x01, 0x22, 0x81, 0xb4, 0x9c, 0x02, 0x4f, 0x46, 0xcb,
- 0x2e, 0x6e, 0x89, 0x44, 0x86, 0x34, 0x04, 0xbe, 0xdc, 0x59, 0xb9, 0xa0, 0x09, 0x15, 0x93, 0x47,
- 0x0a, 0x11, 0xe1, 0xcb, 0x9f, 0xed, 0xef, 0x7e, 0xce, 0x1a, 0x2b, 0x55, 0xa4, 0x35, 0xf8, 0x88,
- 0xd6, 0x84, 0x69, 0x5c, 0x14, 0xaa, 0xc2, 0x10, 0x93, 0xd1, 0x14, 0x67, 0x47, 0x4a, 0x9f, 0x61,
- 0x8a, 0xe5, 0xc2, 0x82, 0x00, 0xfa, 0x8d, 0x5a, 0xec, 0x86, 0x04, 0x43, 0xbc, 0xac, 0x84, 0xa1,
- 0xa3, 0x61, 0x38, 0x04, 0x0c, 0x52, 0x73, 0x19, 0x25, 0x3e, 0x43, 0xc8, 0x9a, 0xd8, 0xa9, 0x0d,
- 0xd2, 0xbc, 0x3b, 0x8b, 0xf3, 0x3c, 0x9d, 0x4f, 0xbb, 0xb3, 0x6c, 0xa1, 0xf4, 0xe5, 0x68, 0x99,
- 0x8e, 0x51, 0x9d, 0xd9, 0xbc, 0xdf, 0xbd, 0x9a, 0xcd, 0xd2, 0xb9, 0x6f, 0xc9, 0x44, 0x73, 0x54,
- 0xcb, 0xa4, 0x08, 0x17, 0xa3, 0x5b, 0x6d, 0x18, 0x46, 0xe3, 0xb4, 0x7b, 0x35, 0x1d, 0xe5, 0x8b,
- 0x6e, 0x9e, 0x75, 0x31, 0x8e, 0x85, 0x52, 0x30, 0x5b, 0x90, 0xde, 0xeb, 0xd4, 0xb2, 0xcb, 0xcb,
- 0x45, 0x9a, 0x47, 0xc0, 0x8d, 0xec, 0xff, 0x22, 0x41, 0x72, 0x45, 0x2e, 0xcc, 0x9b, 0x66, 0xcb,
- 0x94, 0x56, 0x2f, 0x52, 0xab, 0x40, 0xb1, 0xbe, 0x72, 0x4c, 0xf4, 0x79, 0x88, 0xa8, 0x3a, 0xa1,
- 0xc6, 0x0d, 0xe4, 0x62, 0xe1, 0xdd, 0xc1, 0xdf, 0x7e, 0x34, 0xcb, 0x38, 0x2a, 0x8b, 0x9e, 0x9f,
- 0x94, 0xfb, 0x1b, 0xa2, 0x7f, 0x3e, 0x4a, 0xae, 0xf2, 0x94, 0x74, 0x78, 0x0c, 0x83, 0x1e, 0xa2,
- 0x16, 0x5f, 0x66, 0xf3, 0x09, 0xe2, 0xb7, 0x1c, 0x31, 0x7d, 0x17, 0xfd, 0x99, 0x8f, 0x96, 0xe1,
- 0x75, 0x36, 0xea, 0xa3, 0xa4, 0xd1, 0xd4, 0x41, 0x63, 0x32, 0x18, 0x77, 0xcf, 0xb3, 0xc5, 0x28,
- 0x47, 0xad, 0x8b, 0x18, 0x84, 0x87, 0xa7, 0x37, 0x46, 0xe1, 0xb7, 0xfc, 0xb6, 0x0b, 0x1d, 0xc2,
- 0x50, 0x91, 0xf9, 0x43, 0x38, 0x96, 0xe3, 0xa7, 0xd3, 0x97, 0x89, 0xb3, 0x42, 0x0d, 0x9f, 0xe7,
- 0xf1, 0x80, 0x30, 0x3c, 0x2d, 0xe9, 0x09, 0xd8, 0x03, 0xda, 0xd5, 0x5f, 0xff, 0x38, 0xfd, 0xf6,
- 0xe9, 0xdb, 0xc9, 0xff, 0x74, 0xcf, 0xbe, 0x5c, 0x9c, 0x9f, 0x7e, 0xfc, 0xed, 0xeb, 0xb7, 0x03,
- 0xa5, 0x24, 0xa6, 0xa9, 0x8d, 0x24, 0x56, 0xc8, 0xda, 0x2c, 0x51, 0xa5, 0x36, 0x50, 0xa2, 0x15,
- 0x49, 0xda, 0xae, 0x3c, 0xb6, 0xdd, 0xb8, 0x34, 0x37, 0x29, 0xe4, 0xea, 0xac, 0x59, 0x06, 0x80,
- 0x39, 0xb0, 0xd0, 0x29, 0x8b, 0x5e, 0x3c, 0x96, 0xeb, 0x55, 0xd3, 0x93, 0x42, 0xba, 0x89, 0x57,
- 0x43, 0xe3, 0xf0, 0x5e, 0xc7, 0xf3, 0xd5, 0x68, 0x3a, 0x20, 0x49, 0xd7, 0x90, 0x84, 0xaa, 0x31,
- 0x24, 0x26, 0x5b, 0x0c, 0x39, 0x45, 0x17, 0xe9, 0x72, 0xc4, 0xd0, 0x25, 0xbe, 0xa1, 0x17, 0x7c,
- 0xde, 0x6e, 0x4f, 0x1f, 0x00, 0xdf, 0xdc, 0x44, 0x1f, 0x57, 0xce, 0x2a, 0x4e, 0xee, 0x5d, 0x71,
- 0xa2, 0x57, 0x9c, 0xac, 0xa9, 0x58, 0x65, 0x72, 0x99, 0x35, 0xf2, 0xb1, 0x9d, 0x6d, 0x92, 0xb9,
- 0x3d, 0x0f, 0x95, 0x4b, 0x4a, 0xca, 0x15, 0xf2, 0xf2, 0x74, 0x89, 0xe5, 0x8f, 0xce, 0x11, 0x13,
- 0x89, 0xa7, 0xf5, 0xa9, 0xc6, 0xd2, 0x17, 0xf1, 0x64, 0x36, 0x4e, 0xe7, 0x9d, 0x4f, 0x28, 0x6f,
- 0x34, 0x89, 0x07, 0xe9, 0xb6, 0xdc, 0x81, 0x73, 0x30, 0x06, 0xdc, 0xab, 0x58, 0x50, 0xd3, 0xd2,
- 0x3e, 0x9e, 0x7e, 0x4c, 0xa0, 0x47, 0xb0, 0x02, 0xa9, 0x9d, 0x14, 0xf0, 0x36, 0xf8, 0x6a, 0x0f,
- 0x49, 0x19, 0x02, 0x35, 0x5d, 0x0c, 0xb1, 0x40, 0x68, 0x47, 0x28, 0x1f, 0xc9, 0xea, 0xb4, 0xf3,
- 0xc9, 0xa1, 0x0d, 0xf0, 0x09, 0x3b, 0xa8, 0xe4, 0x20, 0xc6, 0x10, 0x04, 0x25, 0x2a, 0x41, 0x9d,
- 0x22, 0x45, 0x89, 0x8d, 0xa2, 0xc4, 0x48, 0x51, 0x37, 0x91, 0x69, 0xea, 0x98, 0x69, 0xea, 0xb8,
- 0xa1, 0x22, 0x98, 0xa0, 0x52, 0xd2, 0x06, 0x9f, 0x14, 0xf3, 0xf1, 0x88, 0xb9, 0xbb, 0x91, 0x71,
- 0x49, 0x96, 0x8d, 0xb9, 0x30, 0xb9, 0x19, 0xe5, 0x43, 0x04, 0x30, 0xd3, 0x73, 0x67, 0xa3, 0xbc,
- 0x37, 0x2c, 0xe6, 0x52, 0xb6, 0x43, 0x8d, 0x9c, 0x5f, 0x21, 0x2d, 0x04, 0xe3, 0xe0, 0x99, 0x92,
- 0x3a, 0x0f, 0xf2, 0x3e, 0x9e, 0xa4, 0xf3, 0x18, 0x26, 0x4d, 0x2f, 0x9d, 0xa2, 0x4e, 0xec, 0xf6,
- 0x47, 0x8b, 0x3c, 0x9e, 0xf6, 0x52, 0xb3, 0x64, 0x82, 0x06, 0x4f, 0xa1, 0xc5, 0xff, 0x7d, 0x72,
- 0xd1, 0xfd, 0xfd, 0xcb, 0xd9, 0xe7, 0xaf, 0xdf, 0x7e, 0xed, 0x52, 0xd9, 0x7f, 0xc0, 0x6a, 0x80,
- 0xc5, 0x51, 0x54, 0x00, 0x59, 0xdd, 0x5c, 0x42, 0x47, 0x08, 0xc0, 0xc3, 0x11, 0xd3, 0xf5, 0x86,
- 0x71, 0xaf, 0x94, 0x45, 0x32, 0xe8, 0x4a, 0xac, 0xd2, 0xae, 0x2c, 0x55, 0xd2, 0xc2, 0x6a, 0x20,
- 0x6c, 0x1e, 0xa3, 0xd5, 0x77, 0x61, 0xa6, 0x8c, 0xe4, 0x29, 0xa4, 0x31, 0x35, 0x80, 0xb6, 0x98,
- 0x40, 0x70, 0xea, 0x14, 0x25, 0xa1, 0x46, 0x33, 0x35, 0x0a, 0x55, 0x18, 0x56, 0xc9, 0x1a, 0x2a,
- 0x93, 0xf1, 0x95, 0xa5, 0xf7, 0x20, 0x47, 0xa1, 0x10, 0xe7, 0x52, 0xf2, 0x20, 0x93, 0x13, 0x27,
- 0x15, 0xc3, 0xe9, 0x1a, 0x5d, 0x05, 0xac, 0x6b, 0x48, 0xa2, 0x1c, 0x6e, 0x2e, 0x4f, 0x33, 0xad,
- 0x84, 0x71, 0x75, 0xa1, 0x48, 0x9b, 0x98, 0x39, 0x76, 0xf2, 0x24, 0x98, 0x12, 0x0a, 0x17, 0xf9,
- 0x3c, 0xfb, 0x77, 0x5a, 0xc6, 0x7a, 0x32, 0x84, 0x9d, 0x03, 0x65, 0x28, 0x13, 0x23, 0x2a, 0xf9,
- 0x65, 0xfc, 0xa8, 0x03, 0xae, 0xa7, 0xfd, 0x66, 0xd4, 0xcf, 0x87, 0xa5, 0xb4, 0x63, 0x88, 0x32,
- 0x16, 0x95, 0xe1, 0x2c, 0x8c, 0xaa, 0x80, 0xac, 0x61, 0x57, 0x1d, 0x76, 0x7d, 0x1b, 0x4a, 0x19,
- 0x45, 0x85, 0xb1, 0xf2, 0x8b, 0x0a, 0x66, 0x62, 0x1b, 0x0d, 0xa2, 0x8c, 0x7b, 0x8a, 0xa0, 0xc4,
- 0x5d, 0x20, 0x16, 0xc8, 0x43, 0xb4, 0x40, 0xf6, 0xe3, 0x3c, 0x96, 0xd6, 0x47, 0xf8, 0x85, 0xd6,
- 0xc8, 0x52, 0xf1, 0xd6, 0x23, 0x8a, 0xae, 0x6e, 0x62, 0x52, 0x19, 0xe6, 0x73, 0x51, 0xe7, 0x32,
- 0xf2, 0x74, 0x69, 0x16, 0x6d, 0x24, 0xb3, 0xc8, 0x9f, 0x48, 0xb7, 0x9d, 0x99, 0x54, 0xf2, 0x85,
- 0x00, 0xe3, 0x15, 0x9a, 0x04, 0x54, 0xb4, 0x89, 0x0c, 0x82, 0x7f, 0x0c, 0x35, 0x42, 0xb2, 0xcf,
- 0x84, 0x11, 0xaf, 0x4d, 0x93, 0x38, 0xd1, 0x46, 0x72, 0x85, 0xfe, 0x35, 0x54, 0x46, 0x73, 0x7c,
- 0x49, 0xcc, 0x98, 0xaa, 0xe4, 0x08, 0xb6, 0x11, 0x17, 0xf2, 0x87, 0x69, 0x44, 0xe5, 0x7c, 0x5f,
- 0x17, 0x24, 0xa6, 0xf1, 0x55, 0x11, 0x6e, 0x2d, 0x0a, 0xe4, 0x0f, 0x43, 0xd7, 0xc8, 0xd9, 0xbe,
- 0x2e, 0x23, 0x2c, 0x5c, 0xa0, 0xa2, 0xbc, 0xc7, 0x04, 0x57, 0x3f, 0xed, 0xd4, 0x89, 0xf1, 0xd3,
- 0x67, 0xbf, 0x69, 0x18, 0x75, 0xac, 0xd6, 0xe9, 0x8b, 0x7d, 0x56, 0x44, 0xa1, 0x89, 0x70, 0x85,
- 0xa0, 0x2e, 0x12, 0xbb, 0x06, 0xdc, 0x5d, 0x1e, 0xfa, 0xa7, 0x21, 0xb4, 0xc6, 0xde, 0x68, 0xde,
- 0x43, 0x7a, 0x13, 0xd1, 0x69, 0x22, 0x54, 0x15, 0x1e, 0x56, 0x04, 0xec, 0xb5, 0x9a, 0xc7, 0x6e,
- 0x88, 0x8c, 0x70, 0x47, 0xd7, 0x9e, 0x98, 0x8a, 0xdc, 0xcb, 0xe6, 0x53, 0xa4, 0x07, 0xcd, 0x98,
- 0x25, 0xa5, 0xa0, 0xa2, 0x25, 0x55, 0xad, 0x0c, 0x95, 0xd4, 0x0a, 0xd5, 0x23, 0x4a, 0xaa, 0xe7,
- 0x90, 0xc9, 0x57, 0x97, 0xfb, 0x1d, 0x34, 0x48, 0x55, 0x37, 0xbb, 0xab, 0x41, 0xbf, 0x50, 0x37,
- 0xd4, 0x6c, 0x9e, 0xfd, 0x2b, 0xed, 0xe5, 0x69, 0x9f, 0x91, 0xaf, 0xda, 0x72, 0x0a, 0x3d, 0xc4,
- 0xa6, 0xbb, 0x5f, 0xed, 0x9e, 0xa3, 0xd7, 0xd8, 0xbc, 0x09, 0x4a, 0x34, 0x43, 0x64, 0x51, 0xd9,
- 0x2d, 0x4d, 0x8d, 0x14, 0xea, 0x66, 0xa0, 0xcd, 0x2b, 0x29, 0x56, 0x6c, 0x94, 0xa5, 0xa7, 0x25,
- 0x1c, 0xcd, 0xe5, 0x6a, 0xd3, 0xa6, 0x96, 0x29, 0xbc, 0x06, 0x2a, 0xb7, 0xa8, 0x41, 0x2e, 0x7d,
- 0x13, 0xde, 0xdd, 0x49, 0xbc, 0x1e, 0x4f, 0xf3, 0x51, 0x3c, 0x1e, 0xc5, 0x0b, 0x2c, 0x2e, 0x11,
- 0xb3, 0x06, 0x9f, 0x4e, 0xff, 0x38, 0xfb, 0x78, 0xda, 0x3d, 0x3f, 0xfb, 0xf3, 0xf4, 0x97, 0xee,
- 0xb7, 0x93, 0xdf, 0xce, 0xbe, 0x06, 0xc6, 0x5a, 0x42, 0xb2, 0x60, 0x01, 0xe3, 0x1f, 0x3a, 0xb4,
- 0xbe, 0xe6, 0xd2, 0x67, 0xbf, 0x56, 0xbe, 0x82, 0xda, 0xa5, 0x8e, 0x2e, 0xeb, 0x4a, 0xf6, 0xd8,
- 0xea, 0xf6, 0x6e, 0x14, 0xe6, 0x47, 0xd6, 0x7c, 0x77, 0xa7, 0xbc, 0x3e, 0x85, 0xd2, 0xf9, 0x94,
- 0xaa, 0xe2, 0x13, 0xe8, 0x77, 0x54, 0xb7, 0xb3, 0x4d, 0x88, 0x2a, 0x9a, 0x9a, 0x95, 0xdb, 0x2b,
- 0x6b, 0x5d, 0x16, 0x3e, 0x5e, 0xaf, 0x47, 0xd9, 0x99, 0xb4, 0xaa, 0x42, 0xb4, 0x86, 0x03, 0x37,
- 0xd7, 0x64, 0xd6, 0xb0, 0xd7, 0x56, 0x3a, 0xc8, 0x5a, 0xc6, 0xb9, 0xb7, 0xde, 0x80, 0xd9, 0x02,
- 0x09, 0xf5, 0x90, 0x20, 0x61, 0x92, 0x7b, 0x9c, 0x4e, 0x07, 0x88, 0x32, 0xf2, 0x87, 0xc9, 0x57,
- 0x37, 0xb4, 0x8a, 0x6e, 0x8a, 0xe7, 0x36, 0xd4, 0x32, 0xd1, 0x02, 0x8a, 0xf3, 0x1b, 0x93, 0x78,
- 0xe9, 0x60, 0xa5, 0x59, 0x93, 0xcb, 0xca, 0x48, 0x75, 0xf3, 0x68, 0x31, 0xc9, 0xb2, 0x7c, 0xb8,
- 0xc8, 0xd3, 0x99, 0xd3, 0x6a, 0xb6, 0x7c, 0x1d, 0x91, 0xaf, 0x12, 0x48, 0xf4, 0x1b, 0x82, 0x83,
- 0xea, 0xa2, 0x91, 0xdc, 0x97, 0xb5, 0x7f, 0xd4, 0x10, 0x96, 0x76, 0xed, 0x27, 0xf8, 0x53, 0xfb,
- 0x50, 0x93, 0xb0, 0x17, 0x30, 0x43, 0x75, 0x1a, 0x76, 0xc2, 0xb0, 0xe6, 0x05, 0x48, 0x73, 0x8d,
- 0xf1, 0x16, 0x78, 0xdc, 0x49, 0xe6, 0x31, 0xbd, 0x4f, 0xe6, 0x18, 0x4f, 0xd3, 0x09, 0x25, 0x0d,
- 0xfa, 0x1e, 0x8e, 0xb3, 0xc7, 0xde, 0x12, 0xb1, 0xef, 0x72, 0x08, 0x72, 0xac, 0x2b, 0xec, 0x4d,
- 0x8a, 0xe6, 0x52, 0x6e, 0x16, 0x5d, 0x24, 0xcf, 0xec, 0x8a, 0x80, 0x76, 0x90, 0x7c, 0xcd, 0x09,
- 0x41, 0x0a, 0xd3, 0x2c, 0xe3, 0x52, 0xa0, 0xa2, 0xdf, 0x85, 0x47, 0x6c, 0xb3, 0x35, 0xbc, 0xdc,
- 0xd1, 0xc9, 0x0a, 0x99, 0xbd, 0x95, 0x36, 0xb7, 0x38, 0x4b, 0x1f, 0x21, 0x1d, 0x6e, 0xba, 0x80,
- 0x9c, 0x2a, 0x3b, 0x29, 0xb4, 0x8e, 0x90, 0xec, 0x60, 0xca, 0xbd, 0xf7, 0xcf, 0xd3, 0x6f, 0x5f,
- 0xb1, 0x4a, 0x86, 0xb7, 0xae, 0x83, 0xf6, 0x9b, 0x66, 0x2b, 0xe4, 0x1b, 0x73, 0x3f, 0x9f, 0xfc,
- 0x7e, 0x71, 0xd1, 0xfd, 0xf8, 0xf5, 0xf4, 0x33, 0x9a, 0x59, 0x87, 0xef, 0xdf, 0xbd, 0x3f, 0xea,
- 0x74, 0xde, 0xb5, 0x8e, 0x5a, 0xed, 0xa3, 0xc3, 0xce, 0xdb, 0x83, 0xaa, 0x5e, 0x04, 0xca, 0x19,
- 0xe4, 0x8f, 0xc1, 0x7e, 0x22, 0x19, 0xbe, 0x60, 0x13, 0xcd, 0xd0, 0x94, 0x19, 0x21, 0xda, 0x6c,
- 0xb4, 0xcd, 0x4b, 0xd4, 0x83, 0x7b, 0x16, 0xe8, 0x09, 0x08, 0x3c, 0x82, 0xfd, 0x6e, 0x25, 0x6b,
- 0x8d, 0x20, 0xbc, 0x88, 0x16, 0xff, 0x3b, 0xcf, 0x9d, 0x06, 0x4a, 0xf6, 0xc6, 0xd9, 0xc0, 0x81,
- 0xd1, 0x08, 0x48, 0x03, 0x03, 0x69, 0x8c, 0x03, 0x31, 0x10, 0xae, 0x1b, 0x1c, 0xa2, 0x21, 0xe2,
- 0x43, 0x1a, 0x5d, 0x78, 0x7a, 0xc5, 0xa1, 0x26, 0xfb, 0x99, 0x1e, 0x4f, 0x88, 0x2e, 0xd8, 0x60,
- 0xc4, 0xf6, 0xca, 0x16, 0x64, 0x92, 0xeb, 0x26, 0x63, 0x9d, 0x02, 0x13, 0x21, 0x61, 0x94, 0x24,
- 0xc0, 0x6f, 0xeb, 0xc4, 0xc2, 0x03, 0x4d, 0x6d, 0x33, 0x90, 0x98, 0x0b, 0x16, 0xb6, 0xdf, 0x98,
- 0xa1, 0xad, 0x6a, 0x13, 0x6d, 0x4e, 0x15, 0xc6, 0x24, 0xb9, 0xfd, 0xa8, 0x81, 0xba, 0xd1, 0x43,
- 0x63, 0x86, 0xff, 0xef, 0x67, 0xb9, 0xc3, 0xe9, 0xf2, 0xf9, 0x2f, 0xc6, 0x0f, 0xd7, 0xf1, 0x38,
- 0x22, 0x68, 0x3c, 0xa9, 0x59, 0x9e, 0x20, 0xdb, 0x4b, 0x97, 0x33, 0xa7, 0xaf, 0xad, 0x4a, 0x78,
- 0xe0, 0x50, 0x51, 0xd8, 0x3d, 0x62, 0xff, 0xbb, 0x3b, 0xd8, 0x87, 0xbe, 0xc9, 0xe6, 0xe3, 0x7e,
- 0xd5, 0x9d, 0xdc, 0x8d, 0x96, 0x24, 0x8f, 0x22, 0x97, 0xb6, 0x6e, 0x9b, 0xcb, 0x28, 0x26, 0x7f,
- 0xe9, 0xf7, 0x0a, 0xc4, 0x56, 0x83, 0xa4, 0xad, 0xe4, 0xcd, 0xce, 0xe2, 0xce, 0xa1, 0x29, 0x87,
- 0x2c, 0xc9, 0x73, 0x94, 0x62, 0xdf, 0xf5, 0x5f, 0xd3, 0x08, 0x7a, 0x54, 0xc4, 0xb0, 0xab, 0x86,
- 0x81, 0xdd, 0xe6, 0x5c, 0xda, 0x7c, 0x53, 0xa0, 0x44, 0xe5, 0x3e, 0x96, 0x12, 0xb9, 0x0f, 0x73,
- 0x4d, 0x1b, 0xd6, 0x7b, 0x1d, 0x2c, 0x68, 0x55, 0xd1, 0x1d, 0x0a, 0x89, 0xf1, 0xb4, 0x37, 0xcc,
- 0xe6, 0xe6, 0x3c, 0x36, 0x99, 0x8a, 0x98, 0xc6, 0x71, 0x2f, 0x35, 0xf0, 0xc1, 0x62, 0x38, 0xba,
- 0xcc, 0xc3, 0x4a, 0x9c, 0x54, 0xbe, 0x06, 0xda, 0x5d, 0x17, 0x6c, 0x84, 0xe8, 0xec, 0x61, 0xa4,
- 0xe8, 0xc9, 0xd3, 0x2c, 0xff, 0x7d, 0x01, 0xe9, 0xda, 0xbe, 0xb0, 0xe4, 0x73, 0x3a, 0xcf, 0xd0,
- 0x74, 0x2b, 0xb0, 0xa2, 0xe8, 0x0f, 0xc2, 0x89, 0xf2, 0xbc, 0x17, 0x54, 0x51, 0x28, 0x46, 0x55,
- 0xa4, 0x22, 0x6d, 0xde, 0xa8, 0xc5, 0xb2, 0xf1, 0x18, 0x9f, 0xbd, 0xe9, 0xce, 0xd2, 0xf9, 0x62,
- 0x86, 0xe0, 0x46, 0xd7, 0x29, 0x62, 0x05, 0x34, 0x15, 0xa2, 0xde, 0x18, 0x71, 0x04, 0x1a, 0xba,
- 0xe3, 0x3a, 0xc8, 0x0c, 0xa7, 0xa4, 0xe5, 0x81, 0xb5, 0x76, 0x17, 0xab, 0xb8, 0x47, 0x30, 0xfc,
- 0x6b, 0xf5, 0x3e, 0x26, 0x2a, 0x74, 0xcf, 0x8f, 0xc3, 0x47, 0xbb, 0x4e, 0x87, 0x71, 0x8d, 0xbf,
- 0xc7, 0x2b, 0x69, 0x55, 0xc8, 0x86, 0x25, 0x62, 0xac, 0x82, 0xa7, 0x30, 0x1d, 0x13, 0x91, 0x88,
- 0xe7, 0xf0, 0x7d, 0x06, 0x94, 0x1a, 0x25, 0xe3, 0xd9, 0x30, 0x8e, 0x50, 0xff, 0x85, 0x46, 0x29,
- 0x87, 0x1b, 0xcd, 0x1a, 0xee, 0x61, 0x60, 0xec, 0x71, 0x63, 0x55, 0xd5, 0xfe, 0xab, 0x06, 0x53,
- 0xd1, 0xa4, 0xff, 0x4a, 0x25, 0xf1, 0x74, 0xa5, 0xa5, 0xef, 0x48, 0x71, 0x4a, 0x92, 0xb1, 0xbc,
- 0x17, 0x35, 0xdb, 0xe1, 0xdd, 0x4e, 0x66, 0xe1, 0xb3, 0x9a, 0x6e, 0x5a, 0xba, 0xb6, 0xad, 0xac,
- 0x2d, 0xd2, 0xe6, 0x64, 0xa6, 0xa4, 0xec, 0x67, 0xae, 0x71, 0xe6, 0xca, 0xf4, 0xcd, 0xe2, 0x7e,
- 0x1f, 0x75, 0x60, 0xf7, 0x32, 0xee, 0xe5, 0x19, 0xf8, 0x59, 0x3b, 0x85, 0x89, 0xcd, 0xf9, 0xa7,
- 0x30, 0x9d, 0xd5, 0xc2, 0x8f, 0x31, 0xbb, 0xd9, 0xf8, 0x47, 0x71, 0xb2, 0x10, 0x02, 0xa6, 0xb9,
- 0x72, 0x25, 0x65, 0x56, 0xd0, 0xa7, 0xd2, 0x13, 0x6a, 0xfc, 0x10, 0x6d, 0xe0, 0xdf, 0x2e, 0xa5,
- 0x5e, 0x52, 0x1b, 0xf8, 0xea, 0x7f, 0x8d, 0xa0, 0xb0, 0xf7, 0x9d, 0xd5, 0xfd, 0x3c, 0xb8, 0x5e,
- 0x17, 0x6f, 0x92, 0x6a, 0xb1, 0xb1, 0x70, 0xeb, 0x6d, 0x2b, 0xd5, 0x7a, 0x54, 0x9c, 0x75, 0xd8,
- 0x11, 0x67, 0x85, 0x60, 0xcd, 0xa1, 0xa4, 0x35, 0xc7, 0x2d, 0xf5, 0x3e, 0x09, 0x5d, 0xd8, 0x33,
- 0xe1, 0x0c, 0x0d, 0x1e, 0xb5, 0x36, 0xb2, 0x58, 0x8d, 0xc0, 0x81, 0x61, 0x14, 0x15, 0x0b, 0x8e,
- 0x8d, 0x4a, 0x59, 0x55, 0x8c, 0x7f, 0x80, 0xa5, 0xd2, 0xfe, 0x20, 0xc5, 0x7c, 0x6b, 0x74, 0x1d,
- 0x95, 0xfa, 0xb7, 0x1a, 0xca, 0xe6, 0x25, 0xf4, 0x74, 0x43, 0xc7, 0x6c, 0x75, 0x32, 0x11, 0xef,
- 0xe3, 0xdd, 0xee, 0x0e, 0xc3, 0x1a, 0x36, 0x3e, 0xd6, 0x1e, 0x7d, 0xdd, 0x90, 0xbe, 0x97, 0x76,
- 0x92, 0xea, 0x39, 0x1d, 0x08, 0x2a, 0x18, 0xa8, 0x4f, 0x7e, 0x66, 0x63, 0x07, 0xc7, 0x1a, 0xaa,
- 0xf2, 0xf0, 0x93, 0x6c, 0xfc, 0x3d, 0xf0, 0xa6, 0xd9, 0x23, 0x6f, 0xdc, 0x6c, 0xb4, 0x7b, 0x62,
- 0xb0, 0x45, 0x1f, 0xe4, 0xf8, 0xe7, 0x06, 0xb2, 0xc2, 0xe8, 0x6f, 0x30, 0x58, 0xe5, 0xb6, 0xc1,
- 0xb9, 0xca, 0xc7, 0xa3, 0x69, 0xe9, 0x51, 0x39, 0x05, 0xc4, 0x2e, 0x63, 0x14, 0x30, 0x93, 0xac,
- 0x51, 0x01, 0xca, 0xb8, 0xaa, 0x00, 0xf9, 0x8a, 0x64, 0x8f, 0xda, 0xe1, 0xca, 0x97, 0x49, 0x16,
- 0x29, 0x00, 0x7e, 0x61, 0x30, 0x4c, 0xb2, 0x49, 0xc3, 0xb9, 0x55, 0x6f, 0x3e, 0xb5, 0xac, 0xc2,
- 0x3c, 0x1b, 0x39, 0xaa, 0x6e, 0x1e, 0x28, 0x1a, 0x77, 0x1d, 0x26, 0x4d, 0x00, 0x5e, 0x61, 0xc6,
- 0xf5, 0x56, 0x01, 0xa7, 0xf6, 0xf9, 0xce, 0x59, 0xf3, 0xa1, 0xb8, 0x6b, 0x8d, 0xab, 0xcd, 0x22,
- 0xcf, 0x94, 0xb6, 0x6f, 0xc3, 0x26, 0xf7, 0x94, 0x91, 0x42, 0x53, 0x14, 0x6a, 0x2c, 0xa2, 0xbd,
- 0xc1, 0xa5, 0x60, 0x36, 0x47, 0xf6, 0xd0, 0x8a, 0x29, 0x88, 0x44, 0x79, 0x07, 0xb7, 0xa5, 0xb6,
- 0x01, 0x0a, 0xca, 0x37, 0x60, 0xd1, 0x35, 0x41, 0x99, 0x6c, 0xcf, 0xc1, 0xc5, 0x99, 0x10, 0xde,
- 0x9d, 0x83, 0xf7, 0xe1, 0x6e, 0x10, 0xb1, 0xb3, 0x1b, 0xd8, 0xb8, 0xb9, 0xef, 0x0d, 0xa0, 0xea,
- 0xcb, 0xc0, 0xb3, 0x3f, 0xd2, 0xcd, 0xee, 0x71, 0x5c, 0xce, 0xb3, 0x89, 0x19, 0x8f, 0x0c, 0x61,
+ 0x60, 0xd3, 0xf6, 0x15, 0x57, 0x2c, 0x0c, 0xc9, 0x56, 0x1c, 0xdf, 0xd9, 0x96, 0x9f, 0xad, 0x24,
+ 0x76, 0x0e, 0xf9, 0xdf, 0x1f, 0x87, 0xdf, 0xa4, 0x48, 0x59, 0xb6, 0x13, 0xe7, 0xe3, 0x19, 0x45,
+ 0x37, 0x16, 0x39, 0x1c, 0x0e, 0xc9, 0xe1, 0x70, 0x66, 0x48, 0x0e, 0x7f, 0x1c, 0x5e, 0xf6, 0xd3,
+ 0xcb, 0xda, 0xcf, 0xbf, 0x74, 0x4f, 0x2f, 0x0e, 0xa6, 0xb3, 0xb4, 0x37, 0x9c, 0x0f, 0xb3, 0x49,
+ 0xed, 0x6a, 0x38, 0xb8, 0x9a, 0xd6, 0x2e, 0x47, 0x59, 0x9c, 0x87, 0x07, 0x3f, 0xa6, 0xa3, 0x79,
+ 0x7a, 0xf0, 0xe3, 0xf0, 0xb2, 0xf6, 0x03, 0x82, 0x1d, 0x4e, 0xd2, 0xbe, 0x33, 0xca, 0x6e, 0xa7,
+ 0xee, 0xc1, 0x8f, 0xe4, 0xb3, 0x06, 0x5f, 0x08, 0x6a, 0xd2, 0x1f, 0x5e, 0xaa, 0x60, 0xe3, 0xb4,
+ 0x3f, 0xbc, 0x1e, 0x4b, 0x90, 0x34, 0xc1, 0x08, 0x8c, 0xeb, 0x14, 0xa0, 0xf8, 0x93, 0x03, 0x92,
+ 0x3f, 0x37, 0x69, 0xaf, 0x53, 0xbb, 0x9e, 0x4c, 0xe3, 0xde, 0xbf, 0xbb, 0x98, 0x38, 0xa7, 0x97,
+ 0x4d, 0xe6, 0x39, 0x21, 0xb4, 0x06, 0xc9, 0x69, 0xff, 0x8f, 0x78, 0x74, 0x9d, 0xba, 0xb5, 0xff,
+ 0x0c, 0x27, 0x2c, 0xe5, 0x6c, 0x92, 0xe3, 0xc4, 0x08, 0x25, 0x39, 0x32, 0x50, 0x08, 0x30, 0x37,
+ 0xad, 0x48, 0x05, 0x0b, 0x3a, 0xc7, 0x6f, 0xc2, 0x59, 0x9a, 0x5f, 0xcf, 0x26, 0x35, 0xa8, 0xd0,
+ 0xb9, 0x69, 0xf9, 0x2a, 0x44, 0xe3, 0xa6, 0xe5, 0x21, 0x20, 0x37, 0xbc, 0x97, 0x09, 0xca, 0xd0,
+ 0xbf, 0xc3, 0x7c, 0x69, 0x20, 0xe9, 0x2b, 0xc9, 0xa1, 0x44, 0xa1, 0xff, 0x69, 0x82, 0x44, 0x10,
+ 0x03, 0x09, 0x3a, 0x4a, 0xd5, 0xa4, 0x91, 0xa2, 0x84, 0x1b, 0xb4, 0x3b, 0x6f, 0x9b, 0x2d, 0x7f,
+ 0x9c, 0xf5, 0xd5, 0x82, 0x7e, 0xa7, 0xd9, 0x72, 0x09, 0x41, 0x47, 0xb5, 0x7e, 0xda, 0xcb, 0xfa,
+ 0x69, 0xb7, 0x97, 0x8d, 0xb2, 0x19, 0x25, 0x07, 0x13, 0x9a, 0x4e, 0x20, 0xbd, 0xff, 0x11, 0xd2,
+ 0x11, 0x31, 0xa2, 0xa2, 0x23, 0x47, 0xe9, 0x54, 0x19, 0xee, 0xaf, 0xd6, 0x77, 0x44, 0xd4, 0xf1,
+ 0x31, 0xaa, 0xd4, 0x0e, 0xd3, 0x66, 0x30, 0x07, 0x88, 0x04, 0xd2, 0x72, 0x0a, 0x3c, 0x1e, 0x2e,
+ 0xba, 0xb8, 0x25, 0x12, 0x19, 0xd2, 0x10, 0xf8, 0x72, 0x67, 0xe5, 0x82, 0x26, 0x54, 0x4c, 0x1e,
+ 0x29, 0x44, 0x84, 0x2f, 0x7f, 0xb6, 0xbf, 0xfb, 0x39, 0x6b, 0xac, 0x54, 0x91, 0xd6, 0xe0, 0x23,
+ 0x5a, 0x13, 0xa6, 0x71, 0x5e, 0xa8, 0x0a, 0x43, 0x8c, 0x87, 0x13, 0x9c, 0x1d, 0x29, 0x7d, 0x86,
+ 0x29, 0x96, 0x0b, 0x0b, 0x02, 0xe8, 0x37, 0x6a, 0xb1, 0x1b, 0x12, 0x0c, 0xf1, 0xa2, 0x12, 0x86,
+ 0x8e, 0x86, 0xe1, 0x10, 0x30, 0x48, 0xcd, 0x65, 0x94, 0xf8, 0x0c, 0x21, 0x6b, 0x62, 0xa7, 0x36,
+ 0x48, 0xf3, 0xee, 0x34, 0xce, 0xf3, 0x74, 0x36, 0xe9, 0x4e, 0xb3, 0xb9, 0xd2, 0x97, 0xc3, 0x45,
+ 0x3a, 0x42, 0x75, 0x66, 0xb3, 0x7e, 0xf7, 0x7a, 0x3a, 0x4d, 0x67, 0xbe, 0x25, 0x13, 0xcd, 0x51,
+ 0x2d, 0x93, 0x22, 0x9c, 0x0f, 0xef, 0xb4, 0x61, 0x18, 0x8e, 0xd2, 0xee, 0xf5, 0x64, 0x98, 0xcf,
+ 0xbb, 0x79, 0xd6, 0xc5, 0x38, 0xe6, 0x4a, 0xc1, 0x6c, 0x4e, 0x7a, 0xaf, 0x53, 0xcb, 0x2e, 0x2f,
+ 0xe7, 0x69, 0x1e, 0x01, 0x37, 0xb2, 0xff, 0x8b, 0x04, 0xc9, 0x15, 0xb9, 0x30, 0x6f, 0x9a, 0x2d,
+ 0x53, 0x5a, 0xbd, 0x48, 0xad, 0x02, 0xc5, 0xfa, 0xca, 0x31, 0xd1, 0xe7, 0x21, 0xa2, 0xea, 0x84,
+ 0x1a, 0x37, 0x90, 0x8b, 0x85, 0xf7, 0x07, 0x7f, 0xfb, 0xd1, 0x2c, 0xe3, 0xa8, 0x2c, 0x7a, 0x7e,
+ 0x52, 0xee, 0x6f, 0x88, 0xfe, 0xd9, 0x30, 0xb9, 0xce, 0x53, 0xd2, 0xe1, 0x31, 0x0c, 0x7a, 0x88,
+ 0x5a, 0x7c, 0x99, 0xcd, 0xc6, 0x88, 0xdf, 0x72, 0xc4, 0xf4, 0x5d, 0xf4, 0x67, 0x36, 0x5c, 0x84,
+ 0x37, 0xd9, 0xb0, 0x8f, 0x92, 0x86, 0x13, 0x07, 0x8d, 0xc9, 0x60, 0xd4, 0x3d, 0xcf, 0xe6, 0xc3,
+ 0x1c, 0xb5, 0x2e, 0x62, 0x10, 0x1e, 0x9e, 0xde, 0x18, 0x85, 0xdf, 0xf2, 0xdb, 0x2e, 0x74, 0x08,
+ 0x43, 0x45, 0xe6, 0x0f, 0xe1, 0x58, 0x8e, 0x9f, 0x4e, 0x5f, 0x26, 0xce, 0x0a, 0x35, 0x7c, 0x9e,
+ 0xc5, 0x03, 0xc2, 0xf0, 0xb4, 0xa4, 0x27, 0x60, 0x0f, 0x68, 0x57, 0x7f, 0xfd, 0xe3, 0xf4, 0xdb,
+ 0xa7, 0x6f, 0x27, 0xff, 0xd3, 0x3d, 0xfb, 0x72, 0x71, 0x7e, 0xfa, 0xf1, 0xb7, 0xaf, 0xdf, 0x0e,
+ 0x94, 0x92, 0x98, 0xa6, 0x36, 0x92, 0x58, 0x21, 0x6b, 0xb3, 0x44, 0x95, 0xda, 0x40, 0x89, 0x56,
+ 0x24, 0x69, 0xbb, 0xf2, 0xd8, 0x76, 0xe3, 0xd2, 0xdc, 0xa4, 0x90, 0xab, 0xb3, 0x66, 0x19, 0x00,
+ 0xe6, 0xc0, 0x42, 0xa7, 0xcc, 0x7b, 0xf1, 0x48, 0xae, 0x57, 0x4d, 0x4f, 0x0a, 0xe9, 0x26, 0x5e,
+ 0x0d, 0x8d, 0xc3, 0x7b, 0x13, 0xcf, 0x96, 0xc3, 0xc9, 0x80, 0x24, 0xdd, 0x40, 0x12, 0xaa, 0xc6,
+ 0x90, 0x98, 0x6c, 0x30, 0xe4, 0x14, 0x5d, 0xa4, 0xcb, 0x11, 0x43, 0x97, 0xf8, 0x86, 0x5e, 0xf0,
+ 0x79, 0xbb, 0x3d, 0x7d, 0x00, 0x7c, 0x73, 0x13, 0x7d, 0x5c, 0x39, 0xab, 0x38, 0xd9, 0xba, 0xe2,
+ 0x44, 0xaf, 0x38, 0x59, 0x51, 0xb1, 0xca, 0xe4, 0x32, 0x6b, 0xe4, 0x23, 0x3b, 0xdb, 0x24, 0x33,
+ 0x7b, 0x1e, 0x2a, 0x97, 0x94, 0x94, 0x2b, 0xe4, 0xe5, 0xe9, 0x02, 0xcb, 0x1f, 0x9d, 0x23, 0xc6,
+ 0x12, 0x4f, 0xeb, 0x53, 0x8d, 0xa5, 0xcf, 0xe3, 0xf1, 0x74, 0x94, 0xce, 0x3a, 0x9f, 0x50, 0xde,
+ 0x70, 0x1c, 0x0f, 0xd2, 0x4d, 0xb9, 0x03, 0xe7, 0x60, 0x0c, 0xb8, 0x57, 0xb1, 0xa0, 0xa6, 0xa5,
+ 0x7d, 0x3c, 0xfd, 0x98, 0x40, 0x8f, 0x60, 0x05, 0x52, 0x3b, 0x29, 0xe0, 0x6d, 0xf0, 0xd5, 0x1e,
+ 0x92, 0x32, 0x04, 0x6a, 0xba, 0x18, 0x62, 0x81, 0xd0, 0x8e, 0x50, 0x3e, 0x92, 0xd5, 0x69, 0xe7,
+ 0x93, 0x43, 0x1b, 0xe0, 0x13, 0x76, 0x50, 0xc9, 0x41, 0x8c, 0x21, 0x08, 0x4a, 0x54, 0x82, 0x3a,
+ 0x45, 0x8a, 0x12, 0x1b, 0x45, 0x89, 0x91, 0xa2, 0x6e, 0x22, 0xd3, 0xd4, 0x31, 0xd3, 0xd4, 0x71,
+ 0x43, 0x45, 0x30, 0x41, 0xa5, 0xa4, 0x0d, 0x3e, 0x29, 0xe6, 0xe3, 0x11, 0x73, 0x77, 0x23, 0xe3,
+ 0x92, 0x2c, 0x1b, 0x71, 0x61, 0x72, 0x3b, 0xcc, 0xaf, 0x10, 0xc0, 0x54, 0xcf, 0x9d, 0x0e, 0xf3,
+ 0xde, 0x55, 0x31, 0x97, 0xb2, 0x1d, 0x6a, 0xe4, 0xec, 0x1a, 0x69, 0x21, 0x18, 0x07, 0xcf, 0x94,
+ 0xd4, 0x79, 0x90, 0xf7, 0xf1, 0x38, 0x9d, 0xc5, 0x30, 0x69, 0x7a, 0xe9, 0x04, 0x75, 0x62, 0xb7,
+ 0x3f, 0x9c, 0xe7, 0xf1, 0xa4, 0x97, 0x9a, 0x25, 0x13, 0x34, 0x78, 0x02, 0x2d, 0xfe, 0xef, 0x93,
+ 0x8b, 0xee, 0xef, 0x5f, 0xce, 0x3e, 0x7f, 0xfd, 0xf6, 0x6b, 0x97, 0xca, 0xfe, 0x03, 0x56, 0x03,
+ 0x2c, 0x8e, 0xa2, 0x02, 0xc8, 0xea, 0xe6, 0x12, 0x3a, 0x42, 0x00, 0x1e, 0x8e, 0x98, 0xae, 0x37,
+ 0x8c, 0x7b, 0xa5, 0x2c, 0x92, 0x41, 0x57, 0x62, 0x95, 0x76, 0x65, 0xa9, 0x92, 0x16, 0x56, 0x03,
+ 0x61, 0xb3, 0x18, 0xad, 0xbe, 0x73, 0x33, 0x65, 0x24, 0x4f, 0x21, 0x8d, 0xa9, 0x01, 0xb4, 0xc5,
+ 0x04, 0x82, 0x53, 0xa7, 0x28, 0x09, 0x35, 0x9a, 0xa9, 0x51, 0xa8, 0xc2, 0xb0, 0x4a, 0x56, 0x50,
+ 0x99, 0x8c, 0xae, 0x2d, 0xbd, 0x07, 0x39, 0x0a, 0x85, 0x38, 0x97, 0x92, 0x07, 0x99, 0x9c, 0x38,
+ 0xa9, 0x18, 0x4e, 0xd7, 0xe8, 0x2a, 0x60, 0x5d, 0x41, 0x12, 0xe5, 0x70, 0x73, 0x79, 0x9a, 0x69,
+ 0x25, 0x8c, 0xab, 0x0b, 0x45, 0xda, 0xc4, 0xcc, 0xb1, 0x93, 0x27, 0xc1, 0x94, 0x50, 0x38, 0xcf,
+ 0x67, 0xd9, 0xbf, 0xd3, 0x32, 0xd6, 0x93, 0x21, 0xec, 0x1c, 0x28, 0x43, 0x99, 0x18, 0x51, 0xc9,
+ 0x2f, 0xe3, 0x47, 0x1d, 0x70, 0x35, 0xed, 0xb7, 0xc3, 0x7e, 0x7e, 0x55, 0x4a, 0x3b, 0x86, 0x28,
+ 0x63, 0x51, 0x19, 0xce, 0xc2, 0xa8, 0x0a, 0xc8, 0x0a, 0x76, 0xd5, 0x61, 0x57, 0xb7, 0xa1, 0x94,
+ 0x51, 0x54, 0x18, 0x2b, 0xbf, 0xa8, 0x60, 0x26, 0xb6, 0xd1, 0x20, 0xca, 0xb8, 0xa7, 0x08, 0x4a,
+ 0xdc, 0x05, 0x62, 0x81, 0x3c, 0x44, 0x0b, 0x64, 0x3f, 0xce, 0x63, 0x69, 0x7d, 0x84, 0x5f, 0x68,
+ 0x8d, 0x2c, 0x15, 0x6f, 0x3d, 0xa2, 0xe8, 0xea, 0x26, 0x26, 0x95, 0x61, 0x3e, 0x17, 0x75, 0x2e,
+ 0x23, 0x4f, 0x97, 0x66, 0xd1, 0x5a, 0x32, 0x8b, 0xfc, 0x89, 0x74, 0xdb, 0x99, 0x49, 0x25, 0x5f,
+ 0x08, 0x30, 0x5e, 0xa1, 0x49, 0x40, 0x45, 0xeb, 0xc8, 0x20, 0xf8, 0xc7, 0x50, 0x23, 0x24, 0xfb,
+ 0x4c, 0x18, 0xf1, 0xda, 0x34, 0x89, 0x13, 0xad, 0x25, 0x57, 0xe8, 0x5f, 0x43, 0x65, 0x34, 0xc7,
+ 0x97, 0xc4, 0x8c, 0xa9, 0x4a, 0x8e, 0x60, 0x13, 0x71, 0x21, 0x7f, 0x98, 0x46, 0x54, 0xce, 0xf7,
+ 0x75, 0x41, 0x62, 0x1a, 0x5f, 0x15, 0xe1, 0xc6, 0xa2, 0x40, 0xfe, 0x30, 0x74, 0x8d, 0x9c, 0xed,
+ 0xeb, 0x32, 0xc2, 0xc2, 0x05, 0x2a, 0xca, 0x2d, 0x26, 0xb8, 0xfa, 0x69, 0xa7, 0x4e, 0x8c, 0x9f,
+ 0x3e, 0xfb, 0x4d, 0xc3, 0xa8, 0x63, 0xb5, 0x4e, 0x5f, 0xec, 0xb3, 0x22, 0x0a, 0x4d, 0x84, 0x2b,
+ 0x04, 0x75, 0x91, 0xd8, 0x35, 0xe0, 0xee, 0xf2, 0xd0, 0x3f, 0x0d, 0xa1, 0x35, 0xf6, 0x86, 0xb3,
+ 0x1e, 0xd2, 0x9b, 0x88, 0x4e, 0x13, 0xa1, 0xaa, 0xf0, 0xb0, 0x22, 0x60, 0xaf, 0xd5, 0x3c, 0x76,
+ 0x43, 0x64, 0x84, 0x3b, 0xba, 0xf6, 0xc4, 0x54, 0xe4, 0x5e, 0x36, 0x9b, 0x20, 0x3d, 0x68, 0xca,
+ 0x2c, 0x29, 0x05, 0x15, 0x2d, 0xa9, 0x6a, 0x65, 0xa8, 0xa4, 0x56, 0xa8, 0x1e, 0x51, 0x52, 0x3d,
+ 0x87, 0x4c, 0xbe, 0xba, 0xdc, 0xef, 0xa0, 0x41, 0xaa, 0xba, 0xd9, 0x7d, 0x0d, 0xfa, 0x85, 0xba,
+ 0xa1, 0xa6, 0xb3, 0xec, 0x5f, 0x69, 0x2f, 0x4f, 0xfb, 0x8c, 0x7c, 0xd5, 0x96, 0x53, 0xe8, 0x21,
+ 0x36, 0xdd, 0x76, 0xb5, 0x7b, 0x8e, 0x5e, 0x63, 0xf3, 0x36, 0x28, 0xd1, 0x0c, 0x91, 0x45, 0x65,
+ 0xb7, 0x34, 0x35, 0x52, 0xa8, 0x9b, 0x81, 0x36, 0xaf, 0xa4, 0x58, 0xb1, 0x51, 0x96, 0x9e, 0x96,
+ 0x70, 0x34, 0x17, 0xcb, 0x75, 0x9b, 0x5a, 0xa6, 0xf0, 0x1a, 0xa8, 0xdc, 0xa0, 0x06, 0xb9, 0xf4,
+ 0x6d, 0x78, 0x7f, 0x2f, 0xf1, 0x7a, 0x3c, 0xc9, 0x87, 0xf1, 0x68, 0x18, 0xcf, 0xb1, 0xb8, 0x44,
+ 0xcc, 0x1a, 0x7c, 0x3a, 0xfd, 0xe3, 0xec, 0xe3, 0x69, 0xf7, 0xfc, 0xec, 0xcf, 0xd3, 0x5f, 0xba,
+ 0xdf, 0x4e, 0x7e, 0x3b, 0xfb, 0x1a, 0x18, 0x6b, 0x09, 0xc9, 0x82, 0x05, 0x8c, 0x7f, 0xe8, 0xd0,
+ 0xfa, 0x9a, 0x0b, 0x9f, 0xfd, 0x5a, 0xfa, 0x0a, 0x6a, 0x97, 0x3a, 0xba, 0xac, 0x2b, 0xd9, 0x63,
+ 0xab, 0xdb, 0xbb, 0x51, 0x98, 0x1f, 0x59, 0xf3, 0xdd, 0x9d, 0xf2, 0xfa, 0x14, 0x4a, 0xe7, 0x53,
+ 0xaa, 0x8a, 0x4f, 0xa0, 0xdf, 0x51, 0xdd, 0xce, 0x36, 0x21, 0xaa, 0x68, 0x6a, 0x56, 0x6e, 0xaf,
+ 0xac, 0x75, 0x59, 0xf8, 0x78, 0xb5, 0x1e, 0x65, 0x67, 0xd2, 0xaa, 0x0a, 0xd1, 0x0a, 0x0e, 0x5c,
+ 0x5f, 0x93, 0x59, 0xc1, 0x5e, 0x1b, 0xe9, 0x20, 0x2b, 0x19, 0x67, 0x6b, 0xbd, 0x01, 0xb3, 0x05,
+ 0x12, 0xea, 0x21, 0x41, 0xc2, 0x24, 0xf7, 0x28, 0x9d, 0x0c, 0x10, 0x65, 0xe4, 0x0f, 0x93, 0xaf,
+ 0x6e, 0x68, 0x15, 0xdd, 0x14, 0xcf, 0x5d, 0xa8, 0x65, 0xa2, 0x05, 0x14, 0xe7, 0x37, 0xc6, 0xf1,
+ 0xc2, 0xc1, 0x4a, 0xb3, 0x26, 0x97, 0x95, 0x91, 0xea, 0xe6, 0xd1, 0x7c, 0x9c, 0x65, 0xf9, 0xd5,
+ 0x3c, 0x4f, 0xa7, 0x4e, 0xab, 0xd9, 0xf2, 0x75, 0x44, 0xbe, 0x4a, 0x20, 0xd1, 0x6f, 0x08, 0x0e,
+ 0xaa, 0x8b, 0x46, 0x72, 0x5f, 0xd6, 0xfe, 0x51, 0x43, 0x58, 0xda, 0xb5, 0x9f, 0xe0, 0x4f, 0xed,
+ 0x43, 0x4d, 0xc2, 0x5e, 0xc0, 0x0c, 0xd5, 0x69, 0xd8, 0x09, 0xc3, 0x9a, 0x17, 0x20, 0xcd, 0x35,
+ 0xc6, 0x5b, 0xe0, 0x71, 0x27, 0x99, 0xc7, 0xf4, 0x3e, 0x99, 0x63, 0x3c, 0x4d, 0x27, 0x94, 0x34,
+ 0xe8, 0x2d, 0x1c, 0x67, 0x8f, 0xbd, 0x25, 0x62, 0xdf, 0xe5, 0x10, 0xe4, 0x58, 0x57, 0xd8, 0xdb,
+ 0x14, 0xcd, 0xa5, 0xdc, 0x2c, 0xba, 0x48, 0x9e, 0xd9, 0x15, 0x01, 0xed, 0x20, 0xf9, 0x9a, 0x13,
+ 0x82, 0x14, 0xa6, 0x59, 0xc6, 0xa5, 0x40, 0x45, 0xbf, 0x0b, 0x8f, 0xd8, 0x7a, 0x6b, 0x78, 0xb9,
+ 0xa3, 0x93, 0x15, 0x32, 0x7b, 0x2b, 0x6d, 0x6e, 0x71, 0x96, 0x3e, 0x44, 0x3a, 0xdc, 0x64, 0x0e,
+ 0x39, 0x55, 0x76, 0x52, 0x68, 0x1d, 0x21, 0xd9, 0xc1, 0x94, 0x7b, 0xef, 0x9f, 0xa7, 0xdf, 0xbe,
+ 0x62, 0x95, 0x0c, 0x6f, 0x5d, 0x07, 0xed, 0x37, 0xcd, 0x56, 0xc8, 0x37, 0xe6, 0x7e, 0x3e, 0xf9,
+ 0xfd, 0xe2, 0xa2, 0xfb, 0xf1, 0xeb, 0xe9, 0x67, 0x34, 0xb3, 0x0e, 0xdf, 0xbf, 0x7b, 0x7f, 0xd4,
+ 0xe9, 0xbc, 0x6b, 0x1d, 0xb5, 0xda, 0x47, 0x87, 0x9d, 0xb7, 0x07, 0x55, 0xbd, 0x08, 0x94, 0x33,
+ 0xc8, 0x1f, 0x83, 0xfd, 0x44, 0x32, 0x7c, 0xc1, 0x26, 0x9a, 0xa1, 0x29, 0x33, 0x42, 0xb4, 0xde,
+ 0x68, 0x9b, 0x97, 0xa8, 0x07, 0xf7, 0x2c, 0xd0, 0x13, 0x10, 0x78, 0x04, 0xfb, 0xdd, 0x4a, 0xd6,
+ 0x1a, 0x41, 0x78, 0x11, 0xcd, 0xff, 0x77, 0x96, 0x3b, 0x0d, 0x94, 0xec, 0x8d, 0xb2, 0x81, 0x03,
+ 0xa3, 0x11, 0x90, 0x06, 0x06, 0xd2, 0x18, 0x07, 0x62, 0x20, 0x5c, 0x37, 0x38, 0x44, 0x43, 0xc4,
+ 0x87, 0x34, 0xba, 0xf0, 0xf4, 0x8a, 0x43, 0x4d, 0xf6, 0x33, 0x3d, 0x9e, 0x10, 0x5d, 0xb0, 0xc1,
+ 0x88, 0xed, 0x95, 0xcd, 0xc9, 0x24, 0xd7, 0x4d, 0xc6, 0x3a, 0x05, 0x26, 0x42, 0xc2, 0x28, 0x49,
+ 0x80, 0xdf, 0x56, 0x89, 0x85, 0x07, 0x9a, 0xda, 0x66, 0x20, 0x31, 0x17, 0x2c, 0x6c, 0xbf, 0x36,
+ 0x43, 0x5b, 0xd5, 0x26, 0xda, 0x9c, 0x2a, 0x8c, 0x49, 0x72, 0xfb, 0x51, 0x03, 0x75, 0xa3, 0x87,
+ 0xc6, 0x0c, 0xff, 0xdf, 0xcf, 0x72, 0x87, 0xd3, 0xe5, 0xf3, 0x5f, 0x8c, 0x1f, 0x6e, 0xe2, 0x51,
+ 0x44, 0xd0, 0x78, 0x52, 0xb3, 0x3c, 0x41, 0xb6, 0x97, 0x2e, 0xa6, 0x4e, 0x5f, 0x5b, 0x95, 0xf0,
+ 0xc0, 0xa1, 0xa2, 0xb0, 0x7b, 0xc4, 0xfe, 0x77, 0x77, 0xb0, 0x0f, 0x7d, 0x9b, 0xcd, 0x46, 0xfd,
+ 0xaa, 0x3b, 0xb9, 0x6b, 0x2d, 0x49, 0x1e, 0x45, 0x2e, 0x6d, 0xdd, 0x36, 0x17, 0x51, 0x4c, 0xfe,
+ 0xd2, 0xef, 0x25, 0x88, 0xad, 0x06, 0x49, 0x5b, 0xca, 0x9b, 0x9d, 0xc5, 0x9d, 0x43, 0x53, 0x0e,
+ 0x59, 0x92, 0x67, 0x28, 0xc5, 0xbe, 0xeb, 0xbf, 0xa2, 0x11, 0xf4, 0xa8, 0x88, 0x61, 0x57, 0x0d,
+ 0x03, 0xbb, 0xcd, 0x99, 0xb4, 0xf9, 0xa6, 0x40, 0x89, 0xca, 0x7d, 0x2c, 0x25, 0x72, 0x1f, 0xe6,
+ 0x9a, 0x36, 0xac, 0x5b, 0x1d, 0x2c, 0x68, 0x55, 0xd1, 0x1d, 0x0a, 0x89, 0xf1, 0xa4, 0x77, 0x95,
+ 0xcd, 0xcc, 0x79, 0x6c, 0x32, 0x15, 0x31, 0x8d, 0xe2, 0x5e, 0x6a, 0xe0, 0x83, 0xf9, 0xd5, 0xf0,
+ 0x32, 0x0f, 0x2b, 0x71, 0x52, 0xf9, 0x1a, 0x68, 0x77, 0x5d, 0xb0, 0x11, 0xa2, 0xb3, 0x87, 0x91,
+ 0xa2, 0x27, 0x4f, 0xb2, 0xfc, 0xf7, 0x39, 0xa4, 0x6b, 0xfb, 0xc2, 0x92, 0xcf, 0xe9, 0x3c, 0x43,
+ 0xd3, 0xad, 0xc0, 0x8a, 0xa2, 0x3f, 0x08, 0x27, 0xca, 0xf3, 0x5e, 0x50, 0x45, 0xa1, 0x18, 0x55,
+ 0x91, 0x8a, 0xb4, 0x79, 0xab, 0x16, 0xcb, 0x46, 0x23, 0x7c, 0xf6, 0xa6, 0x3b, 0x4d, 0x67, 0xf3,
+ 0x29, 0x82, 0x1b, 0xde, 0xa4, 0x88, 0x15, 0xd0, 0x54, 0x88, 0x7a, 0x23, 0xc4, 0x11, 0x68, 0xe8,
+ 0x8e, 0xeb, 0x20, 0x33, 0x9c, 0x92, 0x96, 0x07, 0xd6, 0xda, 0x5d, 0xac, 0xe2, 0x1e, 0xc1, 0xf0,
+ 0xaf, 0xd4, 0xfb, 0x98, 0xa8, 0xd0, 0x3d, 0x3f, 0x0e, 0x1f, 0xed, 0x3a, 0x1d, 0xc6, 0x15, 0xfe,
+ 0x1e, 0xaf, 0xa4, 0x55, 0x21, 0x1b, 0x96, 0x88, 0xb1, 0x0a, 0x9e, 0xc2, 0x74, 0x4c, 0x44, 0x22,
+ 0x9e, 0xc3, 0xdb, 0x0c, 0x28, 0x35, 0x4a, 0x46, 0xd3, 0xab, 0x38, 0x42, 0xfd, 0x17, 0x1a, 0xa5,
+ 0x1c, 0x6e, 0x34, 0x6b, 0xb8, 0x87, 0x81, 0xb1, 0xc7, 0x8d, 0x55, 0x55, 0xfb, 0xaf, 0x1a, 0x4c,
+ 0x45, 0x93, 0xfe, 0x2b, 0x95, 0xc4, 0xd3, 0x95, 0x96, 0xbe, 0x27, 0xc5, 0x29, 0x49, 0xc6, 0xf2,
+ 0x5e, 0xd4, 0x6c, 0x87, 0xf7, 0x3b, 0x99, 0x85, 0xcf, 0x6a, 0xba, 0x69, 0xe9, 0xda, 0xb6, 0xb2,
+ 0xb6, 0x48, 0x9b, 0x93, 0x99, 0x92, 0xb2, 0x9f, 0xb9, 0xc6, 0x99, 0x2b, 0xd3, 0x37, 0x8d, 0xfb,
+ 0x7d, 0xd4, 0x81, 0xdd, 0xcb, 0xb8, 0x97, 0x67, 0xe0, 0x67, 0xed, 0x14, 0x26, 0x36, 0xe7, 0x9f,
+ 0xc2, 0x74, 0x56, 0x0b, 0x3f, 0xc6, 0xec, 0x66, 0xe3, 0x1f, 0xc5, 0xc9, 0x5c, 0x08, 0x98, 0xe6,
+ 0xd2, 0x95, 0x94, 0x59, 0x41, 0x9f, 0x4a, 0x4f, 0xa8, 0xf1, 0x43, 0xb4, 0x86, 0x7f, 0xbb, 0x94,
+ 0x7a, 0x49, 0x6d, 0xe0, 0xab, 0xff, 0x0d, 0x82, 0xc2, 0xde, 0x77, 0x56, 0xf7, 0xf3, 0xe0, 0x7a,
+ 0x5d, 0xbc, 0x49, 0xaa, 0xc5, 0xda, 0xc2, 0xad, 0xb7, 0xa9, 0x54, 0xeb, 0x51, 0x71, 0xd6, 0x61,
+ 0x47, 0x9c, 0x15, 0x82, 0x35, 0x87, 0x92, 0xd6, 0x1c, 0xb7, 0xd4, 0xfb, 0x24, 0x74, 0x61, 0xcf,
+ 0x84, 0x33, 0x34, 0x78, 0xd4, 0xda, 0xc8, 0x62, 0x35, 0x02, 0x07, 0x86, 0x51, 0x54, 0x2c, 0x38,
+ 0x36, 0x2a, 0x65, 0x55, 0x31, 0xfe, 0x01, 0x96, 0x4a, 0xfb, 0x83, 0x14, 0xf3, 0xad, 0xd1, 0x75,
+ 0x54, 0xea, 0xdf, 0x6a, 0x28, 0x9b, 0x97, 0xd0, 0xd3, 0x0d, 0x1d, 0xb3, 0xd5, 0xc9, 0x44, 0xbc,
+ 0x8f, 0xf7, 0xbb, 0x3b, 0x0c, 0x6b, 0xd8, 0xf8, 0x58, 0x79, 0xf4, 0x75, 0x4d, 0xfa, 0x5e, 0xda,
+ 0x49, 0xaa, 0xe7, 0x74, 0x20, 0xa8, 0x60, 0xa0, 0x3e, 0xf9, 0x99, 0x8d, 0x1d, 0x1c, 0x6b, 0xa8,
+ 0xca, 0xc3, 0x4f, 0xb2, 0xf1, 0xf7, 0xc0, 0x9b, 0x66, 0x8f, 0xbc, 0x71, 0xb3, 0xd6, 0xee, 0x89,
+ 0xc1, 0x16, 0x7d, 0x90, 0xe3, 0x9f, 0x6b, 0xc8, 0x0a, 0xa3, 0xbf, 0xc1, 0x60, 0x95, 0xdb, 0x06,
+ 0xe7, 0x3a, 0x1f, 0x0d, 0x27, 0xa5, 0x47, 0xe5, 0x14, 0x10, 0xbb, 0x8c, 0x51, 0xc0, 0x4c, 0xb2,
+ 0x46, 0x05, 0x28, 0xe3, 0xaa, 0x02, 0xe4, 0x2b, 0x92, 0x3d, 0x6a, 0x87, 0x2b, 0x5f, 0x26, 0x59,
+ 0xa4, 0x00, 0xf8, 0x85, 0xc1, 0x30, 0xc9, 0x26, 0x0d, 0xe7, 0x46, 0xbd, 0xf9, 0xd4, 0xb2, 0x0a,
+ 0xf3, 0x6c, 0xe4, 0xa8, 0xba, 0x79, 0xa0, 0x68, 0xdc, 0x75, 0x98, 0x34, 0x01, 0x78, 0x85, 0x19,
+ 0xd7, 0x5b, 0x05, 0x9c, 0xda, 0xe7, 0x3b, 0x67, 0xcd, 0x87, 0xe2, 0xae, 0x15, 0xae, 0x36, 0x8b,
+ 0x3c, 0x53, 0xda, 0xbe, 0x09, 0x9b, 0x6c, 0x29, 0x23, 0x85, 0xa6, 0x28, 0xd4, 0x58, 0x44, 0x7b,
+ 0x83, 0x4b, 0xc1, 0x6c, 0x86, 0xec, 0xa1, 0x25, 0x53, 0x10, 0x89, 0xf2, 0x0e, 0x6e, 0x4b, 0x6d,
+ 0x03, 0x14, 0x94, 0x6f, 0xc0, 0xa2, 0x6b, 0x82, 0x32, 0xd9, 0x9e, 0x83, 0x8b, 0x33, 0x21, 0xbc,
+ 0x3b, 0x07, 0xef, 0xc3, 0xdd, 0x20, 0x62, 0x67, 0x37, 0xb0, 0x71, 0xb3, 0xed, 0x0d, 0xa0, 0xea,
+ 0xcb, 0xc0, 0xb3, 0x3f, 0xd2, 0xcd, 0xee, 0x71, 0x5c, 0xce, 0xb2, 0xb1, 0x19, 0x8f, 0x0c, 0x61,
0xa4, 0x15, 0x56, 0x29, 0x19, 0x48, 0x25, 0x98, 0x5e, 0x04, 0x95, 0xb2, 0x4d, 0x44, 0xd3, 0xe1,
- 0xd1, 0xe1, 0x2a, 0x10, 0x9e, 0x67, 0xe5, 0x64, 0x23, 0x43, 0x67, 0x1d, 0xd1, 0x79, 0x56, 0x42,
+ 0xd1, 0xe1, 0x2a, 0x10, 0x9e, 0x67, 0xe5, 0x64, 0x23, 0x43, 0x67, 0x15, 0xd1, 0x79, 0x56, 0x42,
0x32, 0xca, 0xac, 0x40, 0x30, 0x81, 0xaa, 0xbe, 0x5a, 0x3d, 0xd5, 0x91, 0x5c, 0x65, 0xb8, 0xe5,
- 0x8f, 0x28, 0xee, 0x9a, 0x06, 0x49, 0xda, 0x8b, 0x56, 0x47, 0x31, 0xda, 0x76, 0xb0, 0xc4, 0xcf,
+ 0x8f, 0x28, 0xee, 0x9a, 0x06, 0x49, 0xda, 0x8b, 0x56, 0x47, 0x31, 0xda, 0x74, 0xb0, 0xc4, 0xcf,
0x28, 0xee, 0x16, 0x3b, 0xd9, 0x58, 0x21, 0x82, 0x35, 0x77, 0xb5, 0x7c, 0x91, 0x16, 0x2e, 0x4d,
- 0x45, 0x32, 0x4d, 0x70, 0xe8, 0x44, 0x81, 0x80, 0xdb, 0x53, 0x2a, 0xc4, 0xed, 0x4d, 0xa8, 0xe3,
+ 0x45, 0x32, 0x4d, 0x70, 0xe8, 0x44, 0x81, 0x80, 0xdb, 0x53, 0x2a, 0xc4, 0xdd, 0x6d, 0xa8, 0xe3,
0x48, 0x22, 0x51, 0x91, 0x09, 0x83, 0x92, 0x8f, 0xca, 0x53, 0x07, 0x18, 0x08, 0x9e, 0x6f, 0xd8,
- 0x1f, 0x47, 0x85, 0x4c, 0x73, 0x19, 0x8a, 0xfb, 0xbc, 0x6a, 0x0e, 0x3b, 0x0b, 0x03, 0x24, 0x5c,
- 0x50, 0x9f, 0x12, 0xc9, 0x61, 0xc7, 0x5b, 0xf2, 0x4c, 0x4d, 0xbf, 0x09, 0xab, 0x2d, 0xef, 0x40,
- 0x2b, 0x12, 0xe6, 0xb3, 0x71, 0xbc, 0xa2, 0x37, 0x04, 0xc9, 0x56, 0xb0, 0x23, 0x77, 0x41, 0x73,
- 0xd9, 0x90, 0xfb, 0xac, 0xb9, 0x74, 0x03, 0x41, 0xbe, 0xaf, 0x82, 0xae, 0x54, 0xd0, 0x95, 0x0c,
+ 0x1f, 0x47, 0x85, 0x4c, 0x73, 0x11, 0x8a, 0xfb, 0xbc, 0x6a, 0x0e, 0x3b, 0x0b, 0x03, 0x24, 0x5c,
+ 0x50, 0x9f, 0x12, 0xc9, 0x61, 0xc7, 0x5b, 0xf2, 0x4c, 0x4d, 0xbf, 0x0d, 0xab, 0x2d, 0xef, 0x40,
+ 0x2b, 0x12, 0xe6, 0xd3, 0x51, 0xbc, 0xa4, 0x37, 0x04, 0xc9, 0x56, 0xb0, 0x23, 0x77, 0x41, 0x73,
+ 0xd1, 0x90, 0xfb, 0xac, 0xb9, 0x70, 0x03, 0x41, 0xbe, 0xaf, 0x82, 0x2e, 0x55, 0xd0, 0xa5, 0x0c,
0x6a, 0xaa, 0x2f, 0x29, 0xd6, 0x97, 0xa8, 0xf5, 0x25, 0x25, 0xf5, 0x25, 0x6a, 0x7d, 0x49, 0xa1,
- 0xbe, 0x7b, 0x5e, 0xa4, 0xe4, 0x1d, 0xee, 0xa9, 0x9d, 0xe4, 0xf3, 0x31, 0x7a, 0xa8, 0x9b, 0x93,
- 0x74, 0x00, 0xd5, 0x7a, 0x12, 0x4b, 0x3d, 0x5b, 0x28, 0x64, 0x6b, 0x6e, 0x3b, 0xda, 0xf7, 0x21,
- 0x99, 0x78, 0xbc, 0x8c, 0xfb, 0xe9, 0xa3, 0x2e, 0x79, 0xbb, 0x5b, 0xb5, 0x76, 0xbd, 0xdc, 0x3c,
- 0xe6, 0x5a, 0xf1, 0x18, 0xc7, 0x0e, 0x95, 0xce, 0xda, 0x46, 0xa0, 0x97, 0xf6, 0xc6, 0x8b, 0x13,
- 0xd8, 0x9b, 0x5d, 0xca, 0xb5, 0x5c, 0xc9, 0x7d, 0xa2, 0x0b, 0xb9, 0x96, 0xeb, 0xb8, 0x0f, 0x76,
- 0x19, 0xf7, 0x91, 0x8d, 0x0a, 0xd3, 0xf5, 0x5e, 0x10, 0x44, 0xd4, 0xf3, 0xef, 0xed, 0x30, 0x8e,
- 0xc1, 0xf3, 0xb0, 0x24, 0xf6, 0x66, 0xc3, 0xde, 0x6c, 0xd8, 0x9b, 0x0d, 0x7b, 0xb3, 0xc1, 0x62,
- 0x36, 0xfc, 0x33, 0xcb, 0x26, 0xf7, 0x37, 0x1d, 0x5e, 0xbb, 0x55, 0xb0, 0x93, 0x18, 0x2c, 0xa5,
- 0xa6, 0x03, 0x1f, 0xa7, 0x1d, 0x98, 0x0f, 0x85, 0xba, 0xd6, 0x5b, 0x03, 0x8a, 0xce, 0xff, 0x10,
- 0x41, 0x4e, 0xf6, 0xaa, 0xff, 0x5e, 0xf5, 0xdf, 0xab, 0xfe, 0xaf, 0x4b, 0xf5, 0xaf, 0xa8, 0xa8,
- 0xef, 0x46, 0x45, 0x3f, 0x44, 0xa9, 0x63, 0x38, 0x8b, 0xae, 0xc6, 0x46, 0x63, 0x53, 0x8a, 0x67,
- 0xcb, 0xfb, 0xb7, 0x8a, 0x2c, 0xc1, 0xb9, 0xe2, 0x70, 0xbe, 0x2e, 0x09, 0xaf, 0xd3, 0x79, 0x3e,
- 0x42, 0x12, 0xb6, 0x3b, 0x80, 0x63, 0x34, 0xe9, 0x34, 0x0f, 0xd7, 0x1f, 0x8f, 0x04, 0xd5, 0x6f,
- 0x8a, 0x90, 0xa0, 0x52, 0xa9, 0xb2, 0x15, 0x7c, 0x84, 0xe4, 0x22, 0xdb, 0xdd, 0x31, 0x5f, 0x9d,
- 0x8d, 0xad, 0x77, 0x63, 0x51, 0x8e, 0xfd, 0x6e, 0x12, 0xe4, 0x96, 0xdf, 0x51, 0x60, 0x10, 0x25,
- 0xd2, 0x6b, 0x58, 0x72, 0x39, 0x6a, 0xb8, 0xe6, 0x72, 0xd4, 0xb0, 0xc2, 0x35, 0x89, 0x61, 0x95,
- 0x3b, 0x31, 0xf7, 0x3d, 0x62, 0x53, 0xfd, 0xac, 0x44, 0x15, 0x35, 0x1a, 0x8f, 0x87, 0xdc, 0x0a,
- 0x48, 0x30, 0xc5, 0xe0, 0x40, 0xc9, 0x3e, 0x1b, 0x24, 0xe3, 0xcd, 0x20, 0x52, 0x70, 0x83, 0x61,
- 0x90, 0x0b, 0x0f, 0x6d, 0xb7, 0x92, 0x86, 0xec, 0x56, 0xd2, 0xb0, 0xec, 0x56, 0x12, 0x2b, 0xbe,
- 0xc9, 0x08, 0x14, 0xcf, 0x6e, 0x3c, 0xe0, 0x31, 0x1d, 0x3c, 0x31, 0xc9, 0x0c, 0x89, 0xa4, 0xa9,
- 0x82, 0x04, 0xf3, 0x6d, 0x88, 0x3b, 0x0a, 0xae, 0x68, 0x82, 0x77, 0x00, 0x3e, 0xdc, 0x90, 0xd2,
- 0xcf, 0x12, 0xc9, 0x27, 0xf3, 0x2c, 0x90, 0xa0, 0x96, 0x04, 0x47, 0x73, 0x89, 0x2f, 0x30, 0xad,
- 0xd5, 0xf3, 0x72, 0x7c, 0x54, 0xb0, 0x55, 0xfb, 0x89, 0x76, 0x4d, 0xed, 0x03, 0x1e, 0x1f, 0xd0,
- 0xfe, 0xa4, 0x0b, 0x9c, 0xd7, 0x38, 0x14, 0x2d, 0xfe, 0xd9, 0x9c, 0x7b, 0xad, 0x66, 0xa7, 0xdd,
- 0x79, 0x53, 0x27, 0x9f, 0x03, 0xf4, 0xf9, 0xb6, 0x7d, 0xdc, 0xa1, 0x9f, 0x09, 0xfa, 0x6c, 0xbd,
- 0xed, 0x74, 0x42, 0x3a, 0xbd, 0xd5, 0x43, 0x8b, 0xfc, 0x1c, 0x2c, 0x61, 0xd4, 0x49, 0x02, 0x62,
- 0x04, 0x8b, 0x1d, 0x0e, 0x77, 0xe8, 0x8b, 0x7f, 0x30, 0x28, 0x46, 0x53, 0x8f, 0x64, 0x60, 0xee,
- 0x72, 0x99, 0xc3, 0xe1, 0xd0, 0x6c, 0x8a, 0xfa, 0x8e, 0x1c, 0xe8, 0x85, 0xeb, 0x3a, 0xa4, 0xfd,
- 0x41, 0xfb, 0xcd, 0xe1, 0xbb, 0x23, 0x08, 0x00, 0xcb, 0x85, 0x9e, 0x2b, 0xaa, 0x97, 0x4b, 0x82,
- 0xd8, 0x06, 0x61, 0xdb, 0xd0, 0x05, 0xa0, 0x0b, 0x51, 0x4d, 0x49, 0x96, 0xe8, 0x84, 0x7a, 0x11,
- 0x0a, 0x30, 0xfa, 0x12, 0x46, 0x12, 0x12, 0x82, 0x0e, 0xc3, 0xaa, 0xf6, 0x43, 0x04, 0x77, 0x3b,
- 0x6a, 0xff, 0x91, 0x20, 0xbc, 0x88, 0xd5, 0x58, 0x90, 0xa9, 0x6e, 0xdd, 0x31, 0xa4, 0x7a, 0xa4,
- 0x79, 0x4e, 0x5e, 0xc7, 0x6c, 0xe0, 0xcd, 0xb2, 0x1b, 0x87, 0x8c, 0x57, 0xd0, 0x3e, 0x6e, 0xd1,
- 0x93, 0xa0, 0x3e, 0xb4, 0x04, 0x0d, 0x06, 0xfa, 0x78, 0xff, 0xce, 0x37, 0xb7, 0x08, 0x68, 0xc5,
- 0x21, 0x77, 0xbb, 0x74, 0x30, 0xeb, 0xb4, 0xe7, 0xd8, 0xd8, 0xca, 0x54, 0xca, 0xcb, 0x49, 0x73,
- 0x4e, 0xd1, 0x43, 0x5d, 0x87, 0x32, 0x76, 0x9a, 0xed, 0xd2, 0x81, 0xa5, 0x88, 0x07, 0x2a, 0xe2,
- 0x81, 0x1d, 0xf1, 0xa0, 0x1c, 0xf1, 0x40, 0x43, 0x9c, 0xa8, 0x88, 0x13, 0x3b, 0xe2, 0xa4, 0x1c,
- 0x71, 0x42, 0x11, 0x4b, 0xb7, 0x18, 0x94, 0x75, 0xa9, 0xe4, 0x76, 0xad, 0xb4, 0x72, 0x3d, 0x5b,
- 0x8f, 0x9b, 0xb6, 0x5c, 0xd1, 0x53, 0xb5, 0x46, 0x7f, 0xdc, 0xfa, 0x85, 0xfe, 0x11, 0xb5, 0x8c,
- 0x7b, 0xe8, 0x10, 0xd5, 0xb7, 0x5f, 0x60, 0x54, 0x69, 0xbd, 0x83, 0x07, 0x50, 0x38, 0x94, 0xe0,
- 0x76, 0xb0, 0x8c, 0x99, 0x42, 0x7c, 0x18, 0xf4, 0x90, 0x02, 0xd6, 0x87, 0x55, 0x43, 0x64, 0xb2,
- 0x86, 0xea, 0x15, 0x6d, 0xa9, 0xa8, 0x59, 0x3f, 0x31, 0xe0, 0xde, 0x7b, 0x33, 0x9f, 0xa1, 0x37,
- 0x13, 0x73, 0xe9, 0x46, 0xaa, 0x97, 0xc6, 0x93, 0x9b, 0x69, 0x5e, 0x9b, 0x6b, 0x5b, 0x05, 0x4e,
- 0x8b, 0xb6, 0xe1, 0xa7, 0xbd, 0xbb, 0xf4, 0xe5, 0x9c, 0xb2, 0x28, 0x53, 0x61, 0xe9, 0x0d, 0x92,
- 0xfe, 0x20, 0xe5, 0x77, 0xb6, 0x64, 0x90, 0xd7, 0xef, 0x67, 0x7d, 0x08, 0x1d, 0x9e, 0xe4, 0xdc,
- 0x46, 0x16, 0x5d, 0x7d, 0xad, 0x8e, 0x7f, 0xcb, 0x8f, 0xb9, 0x80, 0x97, 0x86, 0xe1, 0x8e, 0x60,
- 0x0f, 0xb2, 0xf6, 0xf7, 0xbf, 0xd7, 0x98, 0xa6, 0x1a, 0x81, 0xa2, 0x2a, 0x25, 0xdc, 0x22, 0x08,
- 0xa2, 0x44, 0x1f, 0xfc, 0x44, 0xd6, 0xe5, 0x83, 0x0f, 0xe4, 0x85, 0x07, 0x79, 0x3c, 0xfd, 0x5b,
- 0x4f, 0x53, 0x32, 0x76, 0x72, 0xe4, 0x64, 0x37, 0x07, 0x4e, 0x68, 0x2d, 0x4c, 0x75, 0xb0, 0x18,
- 0x33, 0x15, 0xad, 0x91, 0xc3, 0x87, 0xb0, 0x46, 0xe0, 0xca, 0xe2, 0x6b, 0x31, 0x41, 0x58, 0xb7,
- 0x36, 0xe7, 0x03, 0xae, 0xd5, 0xdb, 0xb4, 0x79, 0x8c, 0x19, 0x87, 0x95, 0x83, 0xa6, 0xf8, 0xf4,
- 0xd7, 0xa1, 0x5b, 0xd0, 0xeb, 0x69, 0x5e, 0x9b, 0x3c, 0x2d, 0xb2, 0x7b, 0x37, 0xff, 0x36, 0x5a,
- 0xe7, 0xe3, 0xaa, 0x8f, 0xbb, 0xd2, 0x01, 0x5f, 0xf7, 0xbe, 0x02, 0x1e, 0xa8, 0xf5, 0xba, 0x94,
- 0x75, 0x14, 0xaa, 0xe9, 0x45, 0xfb, 0xdd, 0x88, 0xfd, 0x6e, 0xc4, 0xd6, 0xbb, 0x11, 0xf4, 0x71,
- 0xa0, 0x25, 0x7d, 0xae, 0xc7, 0xbe, 0x21, 0x51, 0xd8, 0xb7, 0xa0, 0x25, 0x3c, 0x4d, 0x5e, 0xed,
- 0xc3, 0xd1, 0x18, 0x8f, 0x81, 0x56, 0x8d, 0x37, 0xa3, 0xf4, 0x93, 0x2d, 0xe8, 0xcc, 0x43, 0x05,
- 0x8c, 0xa9, 0xd4, 0xe5, 0xfd, 0xd1, 0x04, 0x96, 0xe1, 0x6c, 0x1a, 0x56, 0x8b, 0x6c, 0x41, 0x89,
- 0x7e, 0x88, 0x31, 0x91, 0xc3, 0x3a, 0x90, 0x80, 0x57, 0xb3, 0xc5, 0x68, 0x8c, 0x60, 0x21, 0x98,
- 0x99, 0x4c, 0x19, 0xbd, 0x38, 0x8e, 0x8d, 0x0c, 0x47, 0xca, 0x40, 0x3a, 0x39, 0x68, 0xc3, 0x81,
- 0x92, 0xc4, 0xce, 0x02, 0x2b, 0xa4, 0x06, 0xef, 0xda, 0xef, 0x71, 0xf4, 0x2e, 0x8c, 0xa4, 0x4e,
- 0x2b, 0x2a, 0x79, 0x55, 0x49, 0x7b, 0x39, 0x4e, 0x09, 0x5d, 0x55, 0x45, 0x17, 0xb0, 0x77, 0xb3,
- 0xce, 0x3a, 0xb7, 0x19, 0x12, 0xce, 0x85, 0xe7, 0x55, 0xe2, 0x25, 0x4e, 0x27, 0xdf, 0x48, 0x99,
- 0x3d, 0x1d, 0xa7, 0xd7, 0xa0, 0x7f, 0x4e, 0x1d, 0x1a, 0xe9, 0x19, 0x09, 0x01, 0x9f, 0x2e, 0x3b,
- 0xa3, 0x78, 0xc1, 0x42, 0x6a, 0xe0, 0x50, 0xbb, 0x45, 0xbe, 0x22, 0x12, 0xcc, 0xc3, 0x01, 0xe2,
- 0xf8, 0x03, 0x54, 0x38, 0x10, 0xe4, 0xbc, 0x8e, 0xff, 0x0c, 0xe8, 0xe3, 0x55, 0xf8, 0x23, 0x21,
- 0x1f, 0xe4, 0x5f, 0x37, 0x40, 0xda, 0x3e, 0x52, 0xcd, 0x0a, 0xef, 0xb1, 0x94, 0x0f, 0x16, 0xd6,
- 0xf4, 0x25, 0xa2, 0xa1, 0x4f, 0xea, 0xd8, 0x52, 0x68, 0xd0, 0x82, 0xc8, 0x94, 0xe1, 0x3f, 0x57,
- 0x58, 0xf5, 0x65, 0x6a, 0x73, 0x62, 0x2d, 0xdb, 0xb2, 0x15, 0xe9, 0x59, 0x8b, 0xac, 0xad, 0xad,
- 0x5f, 0x85, 0xd2, 0x96, 0x52, 0x24, 0x35, 0x14, 0x91, 0xf3, 0x2f, 0x2b, 0x50, 0xa3, 0x62, 0x1c,
- 0x54, 0x21, 0xc2, 0x4c, 0xff, 0xb0, 0xa4, 0xb7, 0xcc, 0x25, 0x46, 0x15, 0xc8, 0x33, 0x97, 0x4c,
- 0x97, 0xf1, 0x60, 0x90, 0xe2, 0xb8, 0x1b, 0x30, 0xa3, 0x81, 0x45, 0x6b, 0xff, 0xa8, 0x75, 0xb0,
- 0x01, 0xda, 0x6a, 0x1e, 0x21, 0xeb, 0x93, 0x27, 0x1e, 0x35, 0x8f, 0x71, 0xe2, 0xe1, 0x31, 0x4a,
- 0x45, 0x7f, 0xa8, 0x99, 0x9d, 0xce, 0x47, 0xd7, 0xd4, 0xba, 0xee, 0xd5, 0x2f, 0xd1, 0x7f, 0x23,
- 0xb7, 0xe1, 0xc4, 0xf5, 0x3e, 0xfa, 0x6f, 0xe0, 0xfa, 0xce, 0xa0, 0x3e, 0x44, 0xff, 0x91, 0xb4,
- 0x04, 0xfd, 0xd7, 0x73, 0xdd, 0xa0, 0x06, 0x76, 0x05, 0xaa, 0xc3, 0x77, 0x08, 0xf2, 0x06, 0x9f,
- 0x1e, 0x10, 0x67, 0x42, 0x10, 0x54, 0x6f, 0xbf, 0x6f, 0x22, 0x96, 0xed, 0x34, 0x08, 0x98, 0x1e,
- 0x8a, 0x0b, 0xdb, 0x12, 0x58, 0xf8, 0x60, 0x22, 0x9a, 0x4b, 0xb8, 0x0b, 0x00, 0xb1, 0x5e, 0x7c,
- 0xf2, 0xbd, 0xe2, 0xdf, 0x2c, 0xfe, 0x9a, 0x30, 0xc7, 0x1e, 0x61, 0xe5, 0x7b, 0x22, 0x69, 0x4b,
- 0x84, 0xa3, 0x49, 0x36, 0x96, 0x2f, 0x78, 0xeb, 0x25, 0xdc, 0x18, 0x55, 0x18, 0x4f, 0xa5, 0xb5,
- 0x91, 0xa5, 0x63, 0x85, 0x56, 0xdf, 0x65, 0x18, 0xc6, 0xfd, 0xec, 0x46, 0x4f, 0x05, 0xa1, 0x6b,
- 0x04, 0x8f, 0x7b, 0x10, 0x11, 0x46, 0x04, 0x01, 0x3c, 0x3f, 0xab, 0x1d, 0x36, 0xdb, 0x47, 0xed,
- 0xe3, 0xf7, 0x9d, 0x37, 0xc7, 0x87, 0xc7, 0xef, 0xde, 0xbf, 0x7d, 0x7f, 0x78, 0x60, 0x08, 0x30,
- 0x04, 0xe6, 0xbd, 0x75, 0x99, 0x95, 0x39, 0xd2, 0x21, 0x0f, 0xfe, 0x21, 0xb3, 0x13, 0xe2, 0x3b,
- 0xba, 0x72, 0x80, 0x47, 0xbc, 0x62, 0x7c, 0x26, 0x01, 0x79, 0x7a, 0xd9, 0x02, 0xc7, 0x98, 0x8d,
- 0xa7, 0x0b, 0xc7, 0x11, 0x4d, 0xfe, 0xab, 0xf5, 0xbd, 0x21, 0x7d, 0xb5, 0xbf, 0xbb, 0x1e, 0xb6,
- 0xa4, 0xa9, 0x5a, 0xe1, 0xd6, 0xd5, 0x4c, 0x8e, 0x79, 0x9c, 0xcd, 0xd2, 0x08, 0x49, 0xdc, 0x29,
- 0x82, 0xee, 0x1c, 0x7b, 0xf4, 0xa8, 0x38, 0xa6, 0xc8, 0x0d, 0xa4, 0x7a, 0xf9, 0x39, 0x71, 0x1c,
- 0xfa, 0x26, 0xa2, 0xfc, 0x4b, 0x6c, 0x78, 0x34, 0xc9, 0x30, 0x06, 0xca, 0xc4, 0x7e, 0x83, 0xe6,
- 0xba, 0x68, 0xda, 0x9d, 0x9f, 0xe1, 0xfb, 0x2e, 0x2c, 0x8f, 0xfb, 0x8a, 0xc0, 0xcb, 0xf3, 0x41,
- 0x6e, 0x23, 0xb7, 0xc5, 0x23, 0x3a, 0x5e, 0xdc, 0x1f, 0x18, 0xdf, 0x8e, 0x26, 0x57, 0x38, 0xf4,
- 0x31, 0x49, 0x5f, 0xd5, 0xcf, 0xcf, 0x42, 0xc9, 0xdc, 0x69, 0x37, 0xdf, 0xbd, 0x3d, 0x6e, 0x88,
- 0x38, 0x87, 0xed, 0xe6, 0xdb, 0x63, 0x9a, 0x8f, 0x26, 0x29, 0x79, 0xaf, 0x14, 0xe2, 0x29, 0xf1,
- 0x52, 0x24, 0xd0, 0xe5, 0x05, 0x6e, 0x3a, 0x2f, 0x86, 0x9b, 0x02, 0xf2, 0x02, 0x8d, 0x03, 0x9a,
- 0xec, 0xd8, 0x6b, 0x8d, 0x7b, 0x87, 0x8c, 0x44, 0x20, 0x52, 0x19, 0x52, 0x92, 0xe1, 0x7a, 0xec,
- 0x1b, 0x62, 0x06, 0x43, 0x01, 0x46, 0x36, 0x66, 0x18, 0x3c, 0x5e, 0x52, 0x85, 0x6c, 0x93, 0x19,
- 0x67, 0xd2, 0xcd, 0x68, 0x3c, 0x50, 0x24, 0x05, 0x14, 0x2f, 0xf2, 0x8b, 0x7a, 0x36, 0x44, 0xb3,
- 0x3a, 0x45, 0xe7, 0x0e, 0xb0, 0x30, 0x89, 0x28, 0x03, 0x3a, 0xbe, 0x43, 0xc6, 0xa6, 0x4e, 0xfb,
- 0xcb, 0x0d, 0xce, 0xcf, 0xb0, 0x2c, 0x11, 0xdc, 0x44, 0x42, 0x54, 0x43, 0x21, 0x5a, 0x33, 0x79,
- 0x19, 0x8c, 0xcc, 0x04, 0x5f, 0x62, 0x7e, 0x1f, 0x03, 0x21, 0x55, 0x05, 0x71, 0xb2, 0x4c, 0x7c,
- 0x39, 0x51, 0x8a, 0x1c, 0x92, 0x5b, 0x48, 0x58, 0x51, 0xaa, 0xb8, 0x19, 0xbb, 0x75, 0xe9, 0xf3,
- 0x7e, 0xc2, 0x8d, 0x4f, 0xc9, 0x93, 0x2f, 0xbf, 0x9d, 0x9d, 0xfc, 0x72, 0x76, 0x72, 0x71, 0xf6,
- 0xe5, 0xe7, 0x9a, 0xe5, 0x81, 0x00, 0x44, 0x30, 0x87, 0xc7, 0x2d, 0xc3, 0x41, 0x9f, 0x8f, 0xdf,
- 0xbd, 0x3d, 0x6c, 0xb5, 0xdf, 0x1c, 0x14, 0x76, 0xf8, 0xc0, 0x6a, 0x22, 0x0e, 0xab, 0xe2, 0xee,
- 0x1f, 0x0e, 0x92, 0x5e, 0xae, 0xe0, 0x16, 0x43, 0xfb, 0x42, 0xb8, 0x28, 0x4d, 0x3a, 0xa1, 0x16,
- 0xea, 0xef, 0x1a, 0x6a, 0xa2, 0x8e, 0x52, 0xa0, 0xa5, 0xe2, 0x58, 0x40, 0x9d, 0x42, 0xa4, 0xa8,
- 0x41, 0x3c, 0x99, 0xc4, 0x2c, 0xf4, 0x93, 0x21, 0x60, 0x2a, 0x58, 0x53, 0xd3, 0x74, 0x91, 0x5d,
- 0xc6, 0xf3, 0x17, 0x17, 0x46, 0x67, 0xff, 0xd4, 0xd7, 0x16, 0xc7, 0x6c, 0x07, 0xf1, 0xac, 0xe4,
- 0xa9, 0x2c, 0x96, 0x5b, 0x16, 0xb7, 0x9a, 0xc1, 0xac, 0x8b, 0x5c, 0x2d, 0xc3, 0x95, 0x75, 0x19,
- 0x7e, 0x5d, 0xd6, 0xd2, 0x24, 0x9c, 0x67, 0xef, 0x30, 0x9c, 0x5d, 0xde, 0x29, 0x1c, 0xa4, 0x84,
- 0x84, 0x92, 0x0e, 0x59, 0xdb, 0x1b, 0x95, 0xba, 0x42, 0xed, 0x87, 0xe7, 0x17, 0x72, 0xe9, 0xb5,
- 0x3f, 0x58, 0xc5, 0x99, 0x5e, 0x1d, 0x18, 0x96, 0x6c, 0x20, 0x84, 0x65, 0xf9, 0xf2, 0x9c, 0xb0,
- 0x84, 0xf0, 0x16, 0x68, 0x36, 0xe4, 0x79, 0xb9, 0x45, 0xe4, 0xc5, 0x67, 0x43, 0x8f, 0xe0, 0x0c,
- 0x5f, 0xcc, 0x05, 0x63, 0x7f, 0xd0, 0xd2, 0x9b, 0xb0, 0xbb, 0xda, 0x06, 0x5b, 0x3f, 0xb0, 0x4e,
- 0x28, 0xef, 0x01, 0xd6, 0x7c, 0x8d, 0xcf, 0x95, 0xf0, 0xa2, 0x51, 0xcc, 0x5e, 0x8c, 0x68, 0xb4,
- 0x3b, 0xef, 0x90, 0x7a, 0x4f, 0x15, 0xa3, 0x2e, 0xdf, 0x4e, 0x89, 0x48, 0x60, 0x73, 0xf2, 0x1e,
- 0x04, 0x0e, 0x5a, 0x09, 0x8a, 0x4a, 0x28, 0x2d, 0x51, 0x11, 0x8f, 0x25, 0x4e, 0x80, 0xc0, 0x15,
- 0xe0, 0xd6, 0xe9, 0xd7, 0x8d, 0xf7, 0xe6, 0x88, 0xc6, 0x43, 0x17, 0x1e, 0x56, 0x79, 0xd1, 0x06,
- 0xdf, 0xad, 0x32, 0x7b, 0xf9, 0x86, 0xb0, 0x04, 0x03, 0xfe, 0x5b, 0xfa, 0x9b, 0x6e, 0x43, 0x86,
- 0x7c, 0x7c, 0xd9, 0x0f, 0xd0, 0x1b, 0x98, 0xb1, 0x1b, 0x8f, 0x2f, 0x49, 0xa6, 0xc8, 0xa1, 0xa3,
- 0x01, 0xc4, 0x7b, 0x74, 0x40, 0x98, 0x56, 0x0b, 0xe9, 0x0c, 0x4b, 0xdd, 0x61, 0xbf, 0xb8, 0x1e,
- 0xac, 0xe8, 0x2c, 0x60, 0xa5, 0x72, 0xe5, 0x2e, 0xbb, 0xca, 0x95, 0xb2, 0xbc, 0x5e, 0xaf, 0x88,
- 0xa5, 0x83, 0x5f, 0xac, 0x00, 0xc5, 0xa8, 0xee, 0x08, 0xfa, 0xa8, 0x6e, 0x4e, 0x9e, 0xb3, 0x90,
- 0x2b, 0x72, 0xd5, 0x4e, 0xc1, 0x97, 0x44, 0x49, 0x75, 0x9e, 0x88, 0x9d, 0x49, 0x34, 0x08, 0x4d,
- 0xae, 0x61, 0x45, 0x5a, 0x1a, 0x40, 0x2d, 0x3f, 0x27, 0xee, 0x4b, 0xa4, 0x90, 0x5e, 0x69, 0x75,
- 0x90, 0x5e, 0xe9, 0x44, 0xe4, 0xaf, 0x5e, 0x8d, 0xc7, 0x36, 0x05, 0x91, 0x32, 0x9d, 0x43, 0x20,
- 0xeb, 0xc6, 0x95, 0x7f, 0x05, 0xaf, 0xb6, 0x6b, 0x4f, 0x7a, 0x31, 0xc6, 0x52, 0x6d, 0x4b, 0xa0,
- 0x3f, 0xa0, 0xca, 0x15, 0xdb, 0x03, 0x2d, 0x3b, 0x63, 0x2a, 0x5e, 0x38, 0xef, 0x28, 0xc5, 0x70,
- 0xff, 0x15, 0x2a, 0x33, 0xc6, 0x9b, 0xc4, 0x6f, 0x6a, 0xa1, 0x2e, 0x93, 0x83, 0x81, 0xb2, 0x7b,
- 0xb6, 0xe4, 0xb6, 0xac, 0xb5, 0x94, 0xa9, 0x48, 0xa1, 0xd2, 0x42, 0xe8, 0x00, 0xcf, 0xa4, 0x27,
- 0x82, 0x2d, 0x2d, 0xa9, 0x7b, 0xd1, 0x7a, 0x1a, 0x83, 0x35, 0x04, 0x85, 0x4c, 0xad, 0x24, 0x0e,
- 0x12, 0xc2, 0x14, 0x3e, 0xe6, 0xe2, 0xa7, 0x0b, 0x8f, 0xf7, 0x82, 0xde, 0xab, 0x2a, 0x57, 0xd1,
- 0xcd, 0xea, 0xbc, 0x51, 0x71, 0x7f, 0xdc, 0x10, 0x7e, 0xbb, 0x79, 0x39, 0xc9, 0x74, 0x05, 0x9d,
- 0xb4, 0xdd, 0xf5, 0x58, 0xdf, 0x34, 0x17, 0xa1, 0x20, 0xa1, 0x13, 0xe1, 0x77, 0x7f, 0xea, 0x66,
- 0xdb, 0x0d, 0x0a, 0xc9, 0x7d, 0x24, 0x5f, 0x5c, 0x27, 0x76, 0xe9, 0x04, 0xf5, 0x17, 0x54, 0xd7,
- 0x70, 0x38, 0xfa, 0xbc, 0x81, 0x11, 0xbb, 0xbe, 0xa8, 0x10, 0x47, 0x4e, 0x75, 0x03, 0x9c, 0x6e,
- 0x31, 0x5e, 0x1f, 0x21, 0x54, 0x16, 0xb7, 0x3a, 0x7f, 0x3d, 0xf9, 0xb3, 0xfb, 0xcb, 0xd9, 0x97,
- 0xd3, 0xee, 0xa7, 0xb3, 0x8b, 0xdf, 0x4e, 0xbe, 0x7c, 0x3c, 0xad, 0x1d, 0x76, 0xde, 0xbe, 0x79,
- 0x2b, 0xd9, 0xa5, 0x7b, 0x3b, 0xb6, 0xba, 0x1d, 0x8b, 0x24, 0xe7, 0x60, 0x9e, 0x2e, 0xac, 0x31,
- 0x4c, 0xf6, 0x16, 0xe3, 0xde, 0x62, 0x7c, 0xad, 0x16, 0xe3, 0xde, 0x86, 0xdb, 0xdb, 0x70, 0xcf,
- 0xdc, 0x86, 0x63, 0xe2, 0xb9, 0xaa, 0x19, 0x17, 0x14, 0x56, 0xc7, 0xbd, 0x61, 0xb7, 0x37, 0xec,
- 0xf6, 0x86, 0xdd, 0x13, 0x19, 0x76, 0x2f, 0xc8, 0xf2, 0xaa, 0xbc, 0x6f, 0xbc, 0xbd, 0x4d, 0xb6,
- 0x5e, 0x09, 0xad, 0x72, 0x62, 0x73, 0x6f, 0x7a, 0xe9, 0xa6, 0x97, 0xe5, 0x79, 0x33, 0xba, 0x51,
- 0x0e, 0xec, 0xaa, 0x76, 0xb3, 0xfd, 0x99, 0xb3, 0xc7, 0xb1, 0xd8, 0x8a, 0xf6, 0x15, 0xcb, 0x51,
- 0x56, 0xaa, 0xee, 0xc5, 0xc7, 0x93, 0x5f, 0x4e, 0x6b, 0x9d, 0x2d, 0x2c, 0xb9, 0x87, 0xb6, 0xd7,
- 0xec, 0x16, 0x59, 0xb9, 0x45, 0x77, 0x1f, 0x7b, 0x4d, 0xec, 0x2a, 0x96, 0x4d, 0xa2, 0xbd, 0x99,
- 0xf6, 0x70, 0x66, 0xda, 0x33, 0xb0, 0x8a, 0x9e, 0x9d, 0xa5, 0xb8, 0x63, 0x33, 0x6d, 0x7f, 0x09,
- 0xf5, 0x19, 0x5d, 0x42, 0x7d, 0xe5, 0xe6, 0xf0, 0xd3, 0x9a, 0x9f, 0xcf, 0xcd, 0x18, 0xdf, 0x95,
- 0x39, 0xfc, 0xff, 0xe6, 0x5a, 0xf0, 0xfd, 0x4d, 0x7e, 0x06, 0xb7, 0xd9, 0xe6, 0xad, 0x41, 0x87,
- 0xda, 0xdb, 0xfc, 0x7b, 0x9b, 0x7f, 0x6f, 0xf3, 0x3f, 0x84, 0xcd, 0x2f, 0xa6, 0x62, 0x2c, 0x2b,
- 0xe8, 0xe5, 0xbe, 0x80, 0x6d, 0x2e, 0xa7, 0x2a, 0xf2, 0x46, 0x0f, 0xe1, 0xb2, 0xd6, 0x26, 0xdf,
- 0x9d, 0xa1, 0xf1, 0x5a, 0xee, 0x86, 0xbe, 0xfc, 0x9d, 0xf2, 0xf5, 0xae, 0x92, 0x67, 0x74, 0xc9,
- 0xf4, 0x09, 0x5d, 0x39, 0xfb, 0x10, 0xc7, 0xaf, 0xeb, 0xe1, 0x13, 0xb9, 0xab, 0xe5, 0xf6, 0xa9,
- 0x6d, 0x6e, 0x2e, 0x3d, 0xde, 0x6b, 0x81, 0x1a, 0x2c, 0x58, 0x03, 0x5c, 0x99, 0x70, 0x26, 0x06,
- 0x9c, 0x88, 0x6a, 0x8f, 0xf6, 0x77, 0x19, 0x46, 0xa0, 0x38, 0x7c, 0x51, 0xfe, 0x43, 0x82, 0x6d,
- 0x89, 0x3a, 0x92, 0x5c, 0x75, 0xe6, 0x0b, 0x44, 0xa0, 0xf6, 0x73, 0x73, 0xa9, 0xc2, 0x27, 0xe5,
- 0xf0, 0x89, 0x0a, 0xbf, 0xea, 0xe2, 0x17, 0x93, 0xeb, 0xbc, 0x27, 0x90, 0x82, 0x43, 0x6f, 0x74,
- 0x71, 0xfa, 0x30, 0x4d, 0x8e, 0x56, 0xeb, 0xaa, 0xde, 0xa1, 0xcf, 0xbe, 0xb8, 0x3a, 0x41, 0x2b,
- 0x81, 0x3c, 0xd9, 0x06, 0x79, 0x62, 0x47, 0x9e, 0x08, 0xc6, 0xc0, 0x51, 0x4f, 0x36, 0xbf, 0x78,
- 0x8e, 0x39, 0x08, 0xf5, 0xaa, 0x8f, 0x5a, 0xee, 0x4a, 0xb8, 0x92, 0x2d, 0xae, 0x8d, 0x53, 0x5c,
- 0x09, 0xc2, 0x95, 0xb8, 0x8a, 0xc7, 0x17, 0x70, 0x19, 0xaf, 0x8e, 0xa3, 0x4a, 0x7d, 0x73, 0x46,
- 0xe2, 0x9a, 0xaf, 0x8c, 0x13, 0x1f, 0xf0, 0x03, 0xbe, 0x3f, 0xf1, 0x82, 0x3d, 0xc0, 0x95, 0x4e,
- 0xec, 0xd0, 0xc1, 0x22, 0xcf, 0x56, 0xc7, 0x05, 0x05, 0x0f, 0xf5, 0x7e, 0x77, 0x25, 0xa5, 0x9b,
- 0x4a, 0x25, 0x96, 0x52, 0xc9, 0x23, 0x9d, 0x0e, 0xa2, 0xa9, 0x50, 0x49, 0x6c, 0x4a, 0x4c, 0xb6,
- 0x51, 0x0a, 0xf7, 0xf7, 0x5d, 0xf6, 0xa7, 0x97, 0xf6, 0xa7, 0x97, 0xca, 0xdd, 0xe2, 0x6c, 0xc8,
- 0x0c, 0x3e, 0xb3, 0x87, 0x70, 0x99, 0x63, 0x47, 0x51, 0x09, 0x95, 0x22, 0xdf, 0xda, 0x57, 0x02,
- 0xc4, 0xc4, 0x5f, 0x52, 0x6e, 0x59, 0x6f, 0xaa, 0x60, 0xfb, 0xcb, 0x3b, 0xfb, 0x83, 0x5f, 0xcf,
- 0xe4, 0xe0, 0xd7, 0xee, 0x7c, 0xdb, 0xd2, 0x54, 0x14, 0x3f, 0x0d, 0x35, 0x8b, 0x4c, 0x5f, 0x9d,
- 0x9f, 0xa6, 0x26, 0xcb, 0x98, 0x8c, 0x93, 0x6c, 0xef, 0x82, 0xde, 0xbb, 0xa0, 0xf7, 0x2e, 0xe8,
- 0x57, 0xe8, 0x82, 0xc6, 0xaa, 0x7a, 0x44, 0x65, 0x06, 0x9f, 0x97, 0x9e, 0x6e, 0x7d, 0x34, 0x97,
- 0x81, 0x24, 0x50, 0xf8, 0xf8, 0x15, 0xc0, 0x56, 0x75, 0x6e, 0x98, 0xb8, 0x14, 0x7b, 0xb2, 0x16,
- 0x7b, 0x52, 0x0d, 0x7b, 0x22, 0x61, 0x87, 0xe8, 0x66, 0xd5, 0xdc, 0xe4, 0xeb, 0x43, 0x73, 0x2d,
- 0xfa, 0x97, 0xb8, 0x5b, 0x8b, 0x31, 0x96, 0x90, 0xc5, 0xf6, 0xcc, 0xac, 0xa0, 0xfd, 0x2d, 0xae,
- 0xf2, 0x75, 0x78, 0x77, 0x7a, 0xf0, 0xe3, 0x2a, 0xb1, 0x2f, 0xf1, 0x42, 0x99, 0x11, 0x43, 0xc9,
- 0x41, 0x80, 0x62, 0x8f, 0x97, 0x76, 0xf8, 0x06, 0xea, 0xca, 0x0b, 0xf4, 0x8f, 0x22, 0x21, 0x04,
- 0xb9, 0xdd, 0xd8, 0x18, 0x8d, 0x08, 0x8b, 0x12, 0xb7, 0x19, 0x6b, 0xc0, 0x89, 0x15, 0x38, 0x29,
- 0x00, 0x63, 0x57, 0x1e, 0xaf, 0xc5, 0xe7, 0x28, 0x7c, 0x2c, 0xe7, 0xdc, 0x90, 0x38, 0xe6, 0x22,
- 0xe5, 0x7d, 0xd9, 0xe3, 0x86, 0x90, 0x8e, 0xb2, 0x84, 0x26, 0x01, 0x85, 0x4d, 0x39, 0x14, 0xed,
- 0xe3, 0x1f, 0xff, 0xac, 0x74, 0xc2, 0x32, 0x1f, 0xa3, 0x15, 0x64, 0x2e, 0x3f, 0x46, 0xc1, 0x65,
- 0x3e, 0x5e, 0x51, 0x2c, 0x99, 0xc9, 0xd5, 0xe5, 0x65, 0x3a, 0x2f, 0x7b, 0x78, 0x76, 0xc3, 0x30,
- 0x5c, 0x2d, 0x43, 0x5a, 0x7b, 0xdb, 0xd8, 0x5c, 0xad, 0xc8, 0x71, 0xcc, 0xb1, 0x0b, 0x1b, 0x70,
- 0xf2, 0x36, 0x50, 0xe9, 0xaf, 0xb9, 0x10, 0x65, 0x88, 0x94, 0x6c, 0x47, 0x24, 0x94, 0x1b, 0x3c,
- 0x70, 0x2e, 0x77, 0x00, 0x84, 0x9f, 0x12, 0x5d, 0x25, 0x75, 0xae, 0xbc, 0x97, 0xdc, 0xcd, 0xad,
- 0x31, 0x2d, 0xad, 0x4b, 0x6d, 0xcb, 0x9e, 0xd5, 0xae, 0xdc, 0x4d, 0x85, 0xd1, 0x99, 0x43, 0x0c,
- 0x24, 0xa4, 0x4a, 0x2c, 0x20, 0x22, 0x77, 0x59, 0x36, 0x08, 0xcb, 0xe2, 0xc8, 0xc7, 0xa8, 0xdb,
- 0x70, 0x38, 0x38, 0xfd, 0x7d, 0x13, 0xe1, 0x54, 0x9c, 0xe6, 0xf3, 0x78, 0x61, 0x7a, 0xff, 0x04,
- 0x5e, 0x2a, 0x59, 0xcc, 0x46, 0xd3, 0xee, 0x0d, 0x8e, 0xc2, 0xab, 0x1d, 0x29, 0x17, 0x62, 0xb9,
- 0x55, 0x9c, 0x98, 0x2d, 0x12, 0x54, 0xac, 0xb5, 0x26, 0x4c, 0x6c, 0x9b, 0x80, 0xb5, 0x49, 0x34,
- 0x6e, 0x82, 0xac, 0x19, 0x13, 0xd5, 0x1f, 0x55, 0x41, 0x13, 0xe6, 0x83, 0x24, 0x12, 0x3f, 0x03,
- 0x06, 0x16, 0xde, 0xf1, 0x42, 0x6d, 0xbd, 0x50, 0x5b, 0x14, 0x6a, 0x8b, 0x42, 0x6d, 0x28, 0xa4,
- 0xf9, 0xfb, 0x09, 0x36, 0x9f, 0x46, 0x81, 0x65, 0xa3, 0x4f, 0x1f, 0x55, 0x6a, 0x22, 0x19, 0x21,
- 0x45, 0x33, 0x85, 0x2e, 0xe1, 0x78, 0x01, 0x6d, 0x08, 0x5f, 0x38, 0x9a, 0x36, 0x44, 0x32, 0x47,
- 0x1f, 0xbe, 0xda, 0x63, 0x10, 0xe1, 0xdf, 0xf5, 0x2d, 0x79, 0xb7, 0xcb, 0x95, 0x35, 0x6f, 0x75,
- 0xbb, 0xe4, 0x71, 0xd1, 0xe2, 0xeb, 0x14, 0x49, 0x87, 0x34, 0x62, 0x2f, 0x10, 0xb1, 0x67, 0xa5,
- 0xd8, 0x7b, 0x52, 0x6e, 0x70, 0x08, 0x61, 0x2c, 0x21, 0x42, 0xb8, 0x43, 0x61, 0x1b, 0xe8, 0x0b,
- 0xc2, 0x77, 0x15, 0x87, 0x1f, 0x08, 0x86, 0x0a, 0xf1, 0xec, 0xf1, 0x0a, 0xc3, 0x4f, 0xa6, 0x0f,
- 0x19, 0x7a, 0x60, 0x28, 0xb0, 0xaf, 0x49, 0x03, 0x75, 0x56, 0xf4, 0xd7, 0x26, 0xb8, 0x0c, 0x11,
- 0xfa, 0x6d, 0xc1, 0x03, 0x55, 0xf8, 0x15, 0x52, 0x34, 0x09, 0x8b, 0x25, 0x05, 0x89, 0x17, 0xc6,
- 0x88, 0xf4, 0x79, 0x35, 0x3e, 0x6e, 0x3b, 0x1d, 0x3e, 0x9f, 0x85, 0xf8, 0xba, 0x9f, 0xfc, 0x45,
- 0xbd, 0xb4, 0xc8, 0xe9, 0x94, 0x39, 0x3f, 0x8b, 0x0a, 0xc1, 0xf6, 0x42, 0xe3, 0x96, 0x09, 0xb5,
- 0x96, 0xcd, 0x5b, 0x26, 0x4a, 0xea, 0x21, 0x94, 0xe0, 0x76, 0x92, 0x2a, 0x73, 0x99, 0x1b, 0x01,
- 0x33, 0xa6, 0x2e, 0x84, 0x92, 0x2c, 0x1b, 0x83, 0x90, 0x59, 0x90, 0x8d, 0x36, 0x08, 0xf4, 0xd8,
- 0xc5, 0xc4, 0xc6, 0x92, 0xa4, 0xd7, 0x80, 0x2e, 0xd3, 0x18, 0xcb, 0xd2, 0x02, 0x9c, 0xfa, 0x02,
- 0x1f, 0x86, 0x2d, 0xcb, 0xb4, 0x64, 0xf5, 0xe2, 0x09, 0xe2, 0x41, 0x30, 0xe4, 0x20, 0xe8, 0x1a,
- 0x92, 0xcc, 0xec, 0x1d, 0x04, 0x0b, 0xfc, 0x6c, 0x94, 0xf7, 0x86, 0x3a, 0xad, 0xf3, 0x2c, 0x8f,
- 0xf3, 0xb4, 0xbb, 0x58, 0x4d, 0x92, 0x6c, 0x6c, 0x29, 0x48, 0x42, 0xcc, 0x69, 0xbb, 0x49, 0x8a,
- 0x10, 0xef, 0x0d, 0x71, 0x04, 0xc6, 0x17, 0xb0, 0x7b, 0xb0, 0x66, 0x03, 0x8d, 0xa4, 0x8e, 0xe3,
- 0x24, 0x45, 0x0b, 0xd7, 0x38, 0x9e, 0xa6, 0x16, 0x88, 0x01, 0x7b, 0xbd, 0x41, 0xcb, 0x16, 0x1c,
- 0x00, 0x22, 0x58, 0x4f, 0xc6, 0x23, 0x40, 0xcc, 0xe5, 0x49, 0x3c, 0x0b, 0x2d, 0x47, 0xae, 0x8a,
- 0xa6, 0x5d, 0xc1, 0xb0, 0x53, 0x58, 0xf4, 0x99, 0xbc, 0x3c, 0x2e, 0xf4, 0x98, 0x48, 0x9e, 0x95,
- 0xfc, 0xa4, 0x09, 0x73, 0x93, 0xaa, 0xb9, 0xec, 0x9c, 0x0a, 0xd6, 0x3c, 0x84, 0x07, 0x90, 0x25,
- 0x42, 0x87, 0xb0, 0x54, 0x04, 0x2a, 0xf3, 0xe5, 0x22, 0x1d, 0x4c, 0x20, 0xd8, 0x20, 0xe2, 0xbc,
- 0x71, 0x1a, 0x35, 0xb4, 0x79, 0xfd, 0x57, 0xe7, 0x3b, 0x53, 0x54, 0xa1, 0x4f, 0x61, 0x01, 0xfb,
- 0xc1, 0x32, 0x7d, 0xe1, 0x9d, 0x91, 0x1f, 0xec, 0xb3, 0x16, 0x75, 0x2a, 0xa6, 0x02, 0xc4, 0x20,
- 0x21, 0xe8, 0xaf, 0xd6, 0x77, 0x9f, 0xfe, 0x6a, 0x7f, 0xf7, 0xd9, 0x04, 0x76, 0x03, 0x1c, 0xb7,
- 0x38, 0xbc, 0xab, 0x41, 0x9f, 0xd5, 0xa0, 0xc6, 0xfb, 0x55, 0xc8, 0x2b, 0x2b, 0x22, 0x2e, 0x6b,
- 0xca, 0x7a, 0xc4, 0x54, 0xaa, 0x50, 0x7c, 0x6a, 0x9a, 0xea, 0x2b, 0x3b, 0xcf, 0x46, 0xd3, 0x7c,
- 0x5d, 0x08, 0x6d, 0x1a, 0x09, 0x99, 0x4b, 0x23, 0x24, 0x82, 0x86, 0x99, 0x90, 0x46, 0x91, 0x8a,
- 0xad, 0xa9, 0x8e, 0x22, 0x83, 0x22, 0xd2, 0x25, 0xd2, 0xe7, 0x48, 0xed, 0xa7, 0x03, 0x2b, 0xe2,
- 0xa0, 0x44, 0x04, 0xd6, 0x3e, 0x1c, 0x94, 0xe4, 0x06, 0x56, 0x9c, 0x0a, 0x6d, 0x92, 0x4b, 0x8b,
- 0x92, 0x47, 0xcc, 0x32, 0xb0, 0x53, 0xc0, 0x85, 0xa9, 0xd2, 0x8e, 0x4d, 0x2f, 0xf0, 0x2c, 0x87,
- 0xd0, 0x93, 0x5e, 0x54, 0x28, 0xcd, 0xce, 0x45, 0x21, 0x45, 0x80, 0x9d, 0x7f, 0xa2, 0x72, 0xa2,
- 0xf6, 0x13, 0xe6, 0xd2, 0xa0, 0x73, 0x84, 0xbd, 0xac, 0x78, 0x24, 0x14, 0x56, 0xc7, 0xd2, 0x99,
- 0xc8, 0x6a, 0xd0, 0xe4, 0x51, 0x4d, 0x21, 0xe1, 0x2f, 0x45, 0x7c, 0x33, 0x5d, 0x91, 0x4c, 0xad,
- 0xf3, 0xb5, 0x83, 0x48, 0x62, 0x2f, 0xb7, 0x71, 0x48, 0x68, 0xfe, 0x2e, 0x4f, 0xac, 0x8f, 0xd7,
- 0x72, 0x15, 0x14, 0x46, 0x10, 0x43, 0x26, 0x91, 0xa9, 0x22, 0x80, 0x37, 0xa6, 0xdf, 0x84, 0x7a,
- 0x33, 0x70, 0xfc, 0x58, 0x07, 0xce, 0x4e, 0xe1, 0x03, 0x5a, 0xea, 0x42, 0xe3, 0xc3, 0xf1, 0x2b,
- 0x38, 0xe3, 0x15, 0xde, 0xc9, 0x5d, 0x81, 0x67, 0x3b, 0xe2, 0xd5, 0x69, 0x84, 0xc3, 0x94, 0xca,
- 0x32, 0xa0, 0xae, 0xe1, 0x57, 0xf9, 0x93, 0x14, 0xec, 0x21, 0xe9, 0x84, 0x83, 0xb3, 0x96, 0x17,
- 0x04, 0x07, 0x72, 0x8d, 0x7d, 0xd2, 0x8e, 0x8b, 0xb0, 0x57, 0x99, 0xa3, 0xf1, 0xb1, 0x9f, 0x9e,
- 0x93, 0xe3, 0xeb, 0xbf, 0x7a, 0x34, 0xd2, 0xaf, 0xec, 0x79, 0x06, 0xd9, 0x68, 0x5a, 0x5d, 0xf8,
- 0x98, 0xc8, 0x90, 0xa8, 0x23, 0x95, 0x40, 0x35, 0x92, 0x1d, 0xa7, 0xad, 0x3e, 0xd4, 0x21, 0xad,
- 0x15, 0x0e, 0xd4, 0x84, 0x9b, 0xba, 0xd6, 0x1e, 0x8f, 0x6f, 0x5c, 0x05, 0x87, 0x10, 0xad, 0x97,
- 0xf3, 0xa5, 0x14, 0x7f, 0xfa, 0x9a, 0x4a, 0x65, 0xf4, 0x6f, 0x20, 0x2d, 0x50, 0x30, 0xfa, 0xf2,
- 0x12, 0xc4, 0x96, 0x13, 0xfa, 0xe9, 0xa8, 0x3a, 0x14, 0x8f, 0x4e, 0x2e, 0x34, 0x85, 0x48, 0xce,
- 0x47, 0x42, 0x14, 0xdb, 0x14, 0x10, 0x87, 0x57, 0xd1, 0x27, 0x6a, 0x1f, 0x1a, 0xaa, 0x7e, 0xa1,
- 0x2e, 0x7c, 0xfc, 0xd9, 0x2a, 0x70, 0x93, 0x40, 0xec, 0x6c, 0x05, 0x69, 0xeb, 0x7b, 0x5d, 0x2a,
- 0xea, 0x5a, 0x9d, 0xb7, 0xd4, 0x54, 0x0a, 0x9f, 0x24, 0x54, 0xd4, 0xe6, 0x6b, 0xfb, 0x3d, 0x9d,
- 0x69, 0x12, 0x10, 0x71, 0x34, 0x51, 0x00, 0x4f, 0xab, 0xd7, 0xfa, 0x5e, 0x04, 0xfd, 0x4d, 0xfc,
- 0x41, 0x2e, 0x39, 0x77, 0xb5, 0x57, 0xf9, 0x1f, 0x5e, 0xe5, 0xb7, 0x79, 0x8a, 0x47, 0xe3, 0x71,
- 0xd9, 0xc9, 0x25, 0x91, 0x6f, 0x3f, 0xbe, 0x24, 0x60, 0x4c, 0x67, 0x98, 0xa4, 0xdc, 0x32, 0xe7,
- 0xbf, 0x0a, 0x56, 0xf6, 0xf2, 0x53, 0x3c, 0xce, 0xca, 0x28, 0x16, 0xf9, 0x76, 0x8a, 0x05, 0x8c,
- 0x89, 0x62, 0x29, 0xb7, 0x8c, 0x62, 0x15, 0xec, 0x45, 0x1f, 0x76, 0xc2, 0x4d, 0x29, 0x39, 0x37,
- 0x23, 0xf2, 0xed, 0x8f, 0xb2, 0x72, 0x10, 0xe3, 0xc3, 0xac, 0x22, 0xb7, 0xf4, 0x61, 0x2e, 0x05,
- 0x6c, 0x1d, 0xc1, 0xf6, 0x73, 0x6d, 0x3c, 0xbb, 0x9c, 0x5c, 0xdb, 0x09, 0x37, 0x91, 0xb9, 0x96,
- 0x58, 0x65, 0x6f, 0xe2, 0x39, 0xda, 0x82, 0x8f, 0x69, 0xb2, 0x6f, 0xea, 0x3e, 0x30, 0x99, 0xf8,
- 0xd5, 0x6c, 0x56, 0x90, 0xc2, 0x8a, 0xdb, 0xf5, 0x90, 0x26, 0xb6, 0x2b, 0x59, 0xab, 0x92, 0x94,
- 0x13, 0x3f, 0x4d, 0x47, 0xac, 0x44, 0xae, 0xaf, 0xca, 0x3e, 0xd3, 0x61, 0x2b, 0x19, 0xd5, 0x56,
- 0xf2, 0x4b, 0xfc, 0x34, 0xd1, 0x22, 0x72, 0x7d, 0x55, 0xaa, 0x99, 0x68, 0x91, 0x51, 0x6d, 0x2e,
- 0x99, 0x76, 0x7e, 0x36, 0x4b, 0x12, 0x38, 0xe2, 0xa7, 0xe9, 0x2d, 0x5e, 0x9e, 0xe9, 0xab, 0x52,
- 0xc8, 0xf8, 0x26, 0xaf, 0x84, 0x69, 0x1b, 0x51, 0xc2, 0x7f, 0xd9, 0x08, 0xa1, 0xa7, 0xe2, 0x24,
- 0xe9, 0x62, 0x25, 0x83, 0x6e, 0x5d, 0x16, 0x65, 0xc4, 0xde, 0xab, 0xb1, 0xf7, 0x6a, 0xec, 0xbd,
- 0x1a, 0x7b, 0xaf, 0xc6, 0xde, 0xab, 0xf1, 0x7a, 0xbc, 0x1a, 0xec, 0x44, 0xb0, 0x38, 0xf3, 0xa6,
- 0x9c, 0x92, 0x23, 0x7c, 0xf0, 0xac, 0x1c, 0x1f, 0xe2, 0xb5, 0xa4, 0xf9, 0x2c, 0x1b, 0xc7, 0xd0,
- 0xfa, 0x7b, 0x78, 0x42, 0xa8, 0x7e, 0x46, 0x4e, 0xb8, 0xa1, 0xb6, 0x35, 0x97, 0x70, 0xe7, 0x0a,
- 0x5f, 0x1d, 0x23, 0x4a, 0x1a, 0xd9, 0x40, 0x94, 0x3a, 0xc8, 0x27, 0xcf, 0x80, 0xda, 0xea, 0x27,
- 0xc1, 0xe4, 0xe8, 0xe5, 0xa7, 0x8b, 0x4f, 0x9f, 0xbb, 0xe7, 0x7f, 0xd6, 0xde, 0x49, 0xf7, 0xa1,
- 0x4e, 0x3f, 0xfd, 0x7c, 0xda, 0xfd, 0xf9, 0xe4, 0xd7, 0x5f, 0x4f, 0x50, 0x6b, 0xdb, 0xad, 0x63,
- 0xc3, 0x61, 0x98, 0x83, 0xa2, 0xd6, 0x0c, 0x8b, 0x71, 0x05, 0x3b, 0x78, 0xb7, 0x36, 0xec, 0x0e,
- 0xed, 0xcf, 0x5d, 0x99, 0x90, 0x3b, 0xb5, 0xff, 0x1e, 0xc1, 0x7c, 0x33, 0x79, 0xf3, 0xcc, 0x26,
- 0x8f, 0x7c, 0xda, 0xca, 0x62, 0xa5, 0xdd, 0xc3, 0x90, 0x29, 0xe5, 0xd2, 0xcd, 0xec, 0x90, 0x72,
- 0x33, 0x64, 0x23, 0x33, 0xe2, 0x31, 0x4e, 0xdf, 0x49, 0xcc, 0xb3, 0x99, 0x3e, 0x5f, 0xc6, 0x19,
- 0x9b, 0xa9, 0xe4, 0x20, 0x9e, 0xe9, 0xf0, 0x80, 0x62, 0x5d, 0x14, 0xe9, 0x74, 0x98, 0xf8, 0x65,
- 0x75, 0xac, 0x0f, 0xb2, 0xc4, 0x95, 0x2c, 0x99, 0x59, 0xe3, 0x69, 0xa6, 0xd0, 0xb1, 0x2b, 0xea,
- 0x34, 0x22, 0x68, 0x03, 0x19, 0x09, 0x69, 0x48, 0x65, 0xf6, 0xc3, 0xc4, 0x45, 0x42, 0x14, 0x06,
- 0x0e, 0xc7, 0xef, 0x29, 0xac, 0xe9, 0x86, 0xf2, 0x99, 0xca, 0xab, 0xcb, 0xcb, 0xc8, 0xc1, 0xaa,
- 0x72, 0x03, 0xdf, 0x5b, 0xa0, 0x6a, 0x33, 0x57, 0xc4, 0xa1, 0x7f, 0xd8, 0x61, 0x9c, 0x48, 0x62,
- 0x01, 0x52, 0x9d, 0xc3, 0xbb, 0xcf, 0x6b, 0x37, 0xdb, 0xef, 0x03, 0x22, 0x9c, 0xeb, 0x82, 0x0a,
- 0xb7, 0x84, 0x0c, 0x52, 0x37, 0xd4, 0x2c, 0x46, 0x33, 0x10, 0x0b, 0x2a, 0x45, 0x16, 0xde, 0x49,
- 0xe4, 0xe2, 0x23, 0x81, 0x26, 0x7f, 0x31, 0x78, 0x8b, 0x9b, 0x71, 0xb1, 0x43, 0x48, 0x5d, 0xfd,
- 0x08, 0x7f, 0x78, 0xf2, 0x04, 0x55, 0xd4, 0x1c, 0xec, 0xab, 0x96, 0x0e, 0x11, 0x02, 0x69, 0x0d,
- 0x19, 0x81, 0x0f, 0x29, 0x75, 0x25, 0xa5, 0xe2, 0x89, 0x41, 0x4f, 0x5d, 0xc9, 0xee, 0xe5, 0xcb,
- 0xfe, 0x3f, 0x2f, 0x9e, 0x06, 0x73
+ 0xbe, 0x2d, 0x2f, 0x52, 0xf2, 0x0e, 0xf7, 0xd4, 0x4e, 0xf2, 0xf9, 0x18, 0x3d, 0xd4, 0xcd, 0x49,
+ 0x3a, 0x80, 0x6a, 0x3d, 0x89, 0xa5, 0x9e, 0x0d, 0x14, 0xb2, 0x15, 0xb7, 0x1d, 0xed, 0xfb, 0x90,
+ 0x4c, 0x3c, 0x5e, 0xc6, 0xfd, 0xf4, 0x51, 0x97, 0xbc, 0xdd, 0xad, 0x5a, 0xbb, 0x5e, 0x6e, 0x1e,
+ 0x73, 0xad, 0x78, 0x8c, 0x63, 0x87, 0x4a, 0x67, 0x6d, 0x22, 0xd0, 0x4b, 0x7b, 0xe3, 0xc5, 0x09,
+ 0xec, 0xf5, 0x2e, 0xe5, 0x5a, 0xae, 0xe4, 0x3e, 0xd1, 0x85, 0x5c, 0xcb, 0x75, 0xdc, 0x07, 0xbb,
+ 0x8c, 0xfb, 0xc8, 0x46, 0x85, 0xe9, 0x7a, 0x2f, 0x08, 0x22, 0xea, 0xf9, 0xf7, 0x76, 0x18, 0xc7,
+ 0xe0, 0x79, 0x58, 0x12, 0x7b, 0xb3, 0x61, 0x6f, 0x36, 0xec, 0xcd, 0x86, 0xbd, 0xd9, 0x60, 0x31,
+ 0x1b, 0xfe, 0x99, 0x65, 0xe3, 0xed, 0x4d, 0x87, 0xd7, 0x6e, 0x15, 0xec, 0x24, 0x06, 0x4b, 0xa9,
+ 0xe9, 0xc0, 0xc7, 0x69, 0x07, 0xe6, 0x43, 0xa1, 0xae, 0xd5, 0xd6, 0x80, 0xa2, 0xf3, 0x3f, 0x44,
+ 0x90, 0x93, 0xbd, 0xea, 0xbf, 0x57, 0xfd, 0xf7, 0xaa, 0xff, 0xeb, 0x52, 0xfd, 0x2b, 0x2a, 0xea,
+ 0xbb, 0x51, 0xd1, 0x0f, 0x51, 0xea, 0x08, 0xce, 0xa2, 0xab, 0xb1, 0xd1, 0xd8, 0x94, 0xe2, 0xd9,
+ 0xf2, 0xfe, 0xad, 0x22, 0x4b, 0x70, 0xae, 0x38, 0x9c, 0xaf, 0x4b, 0xc2, 0x9b, 0x74, 0x96, 0x0f,
+ 0x91, 0x84, 0xed, 0x0e, 0xe0, 0x18, 0x4d, 0x3a, 0xc9, 0xc3, 0x52, 0x89, 0xb4, 0xfa, 0xec, 0x24,
+ 0xe8, 0x85, 0x13, 0x54, 0x1e, 0xa1, 0x4c, 0x95, 0x7d, 0xe2, 0x23, 0x24, 0x34, 0xd9, 0xd6, 0x8f,
+ 0xf9, 0x5e, 0x6d, 0x6c, 0xbd, 0x38, 0x8b, 0x72, 0xec, 0x17, 0x97, 0x20, 0xb7, 0xfc, 0x02, 0x03,
+ 0x83, 0x28, 0x11, 0x6d, 0x57, 0x25, 0x37, 0xa7, 0xae, 0x56, 0xdc, 0x9c, 0xba, 0xaa, 0x70, 0x87,
+ 0xe2, 0xaa, 0xca, 0x85, 0x99, 0x6d, 0xcf, 0xdf, 0x54, 0x3f, 0x48, 0x51, 0x45, 0xc7, 0xc6, 0xe3,
+ 0x21, 0xb7, 0x02, 0x12, 0x4c, 0x01, 0x3a, 0x50, 0xb2, 0xcf, 0x06, 0xc9, 0x78, 0x6d, 0x88, 0x14,
+ 0x5c, 0x63, 0x18, 0xe4, 0xc2, 0x57, 0xb6, 0x2b, 0x4b, 0x57, 0xec, 0xca, 0xd2, 0x55, 0xd9, 0x95,
+ 0x25, 0x56, 0x7c, 0x9d, 0x11, 0x28, 0x1e, 0xec, 0x78, 0xc0, 0x33, 0x3c, 0x78, 0xd6, 0x92, 0x19,
+ 0x12, 0x49, 0x53, 0x05, 0x49, 0xed, 0xbb, 0x10, 0x77, 0x14, 0xdc, 0xdf, 0x04, 0xd7, 0x01, 0x7c,
+ 0xb8, 0x21, 0xa5, 0x9f, 0x25, 0x92, 0x4f, 0xe6, 0x76, 0x20, 0x11, 0x2f, 0x09, 0x8e, 0xe6, 0x02,
+ 0xdf, 0x6e, 0x5a, 0xa9, 0x04, 0xe6, 0xf8, 0x1c, 0x61, 0xab, 0xf6, 0x13, 0xed, 0x9a, 0xda, 0x07,
+ 0x3c, 0x3e, 0xa0, 0x1a, 0x4a, 0xb7, 0x3b, 0x6f, 0x70, 0x9c, 0x5a, 0xfc, 0xb3, 0x39, 0xf3, 0x5a,
+ 0xcd, 0x4e, 0xbb, 0xf3, 0xa6, 0x4e, 0x3e, 0x07, 0xe8, 0xf3, 0x6d, 0xfb, 0xb8, 0x43, 0x3f, 0x13,
+ 0xf4, 0xd9, 0x7a, 0xdb, 0xe9, 0x84, 0x74, 0x7a, 0xab, 0x27, 0x1a, 0xf9, 0x21, 0x59, 0xc2, 0xa8,
+ 0xe3, 0x04, 0x64, 0x0c, 0x96, 0x49, 0x1c, 0xee, 0xd0, 0x17, 0xff, 0x60, 0x50, 0x8c, 0xa6, 0x1e,
+ 0xc9, 0xc0, 0xdc, 0x1f, 0x33, 0x83, 0x93, 0xa3, 0xd9, 0x04, 0xf5, 0x1d, 0x39, 0xed, 0x0b, 0x77,
+ 0x79, 0x48, 0xfb, 0x83, 0xf6, 0x9b, 0xc3, 0x77, 0x47, 0x10, 0x1d, 0x96, 0x4b, 0x44, 0x57, 0x54,
+ 0x2f, 0x97, 0x04, 0x99, 0x0e, 0x92, 0xb8, 0xa1, 0x4b, 0x47, 0x17, 0x42, 0x9e, 0x92, 0x2c, 0xd1,
+ 0x09, 0xf5, 0x22, 0x14, 0x60, 0xf4, 0x25, 0x8c, 0x24, 0x5e, 0x04, 0x1d, 0x86, 0x65, 0xed, 0x87,
+ 0x08, 0x2e, 0x7e, 0xd4, 0xfe, 0x23, 0x41, 0x78, 0x11, 0xab, 0xb1, 0x20, 0x70, 0xdd, 0xba, 0x63,
+ 0x48, 0xf5, 0x48, 0xf3, 0x9c, 0xbc, 0x8e, 0xd9, 0xc0, 0x9b, 0x66, 0xb7, 0x0e, 0x19, 0xaf, 0xa0,
+ 0x7d, 0xdc, 0xa2, 0xc7, 0x44, 0x7d, 0x68, 0x09, 0x1a, 0x0c, 0xf4, 0xf1, 0xfe, 0x9d, 0x6f, 0x6e,
+ 0x11, 0xd0, 0x8a, 0xe3, 0xf1, 0x76, 0xe9, 0x60, 0xd6, 0x69, 0xcf, 0xb1, 0xb1, 0x95, 0xa9, 0x94,
+ 0xd7, 0x9a, 0xe6, 0x8c, 0xa2, 0x87, 0xba, 0x0e, 0x65, 0xec, 0x34, 0xdb, 0xa5, 0x03, 0x4b, 0x11,
+ 0x0f, 0x54, 0xc4, 0x03, 0x3b, 0xe2, 0x41, 0x39, 0xe2, 0x81, 0x86, 0x38, 0x51, 0x11, 0x27, 0x76,
+ 0xc4, 0x49, 0x39, 0xe2, 0x44, 0x45, 0xec, 0x49, 0xba, 0xa3, 0x74, 0xeb, 0x41, 0x59, 0xaa, 0x4a,
+ 0x6e, 0xe3, 0x4a, 0x8b, 0xd9, 0xb3, 0xf5, 0xd0, 0x69, 0x2b, 0x18, 0x3d, 0x85, 0x6b, 0xf4, 0xdf,
+ 0x6d, 0xa9, 0x18, 0x3c, 0xa2, 0xca, 0xb2, 0x85, 0xce, 0x51, 0x7d, 0x2f, 0x07, 0x86, 0x9c, 0xd6,
+ 0x3b, 0x78, 0x00, 0x05, 0x45, 0x89, 0x94, 0x07, 0xcb, 0x9e, 0x29, 0x5e, 0x88, 0x41, 0x6f, 0x29,
+ 0x60, 0x7d, 0x58, 0xb5, 0x45, 0x26, 0xeb, 0x4a, 0xbd, 0xef, 0x2d, 0x15, 0x35, 0xeb, 0x33, 0x06,
+ 0xdc, 0x7b, 0xd7, 0xe8, 0x33, 0x74, 0x8d, 0x62, 0x2e, 0x5d, 0x4b, 0x55, 0xd3, 0x78, 0x72, 0x3d,
+ 0x4d, 0x6d, 0x7d, 0xed, 0xac, 0xc0, 0x69, 0xd1, 0x26, 0xfc, 0xb4, 0xf7, 0xbd, 0xbe, 0x9c, 0x23,
+ 0x1b, 0x65, 0x2a, 0x2f, 0xbd, 0x8e, 0xd2, 0x1f, 0xa4, 0xfc, 0x02, 0x98, 0x0c, 0xf2, 0xfa, 0x9d,
+ 0xb6, 0x0f, 0xa1, 0xf3, 0x93, 0x9c, 0xbb, 0xc8, 0xa2, 0xdb, 0xaf, 0xb4, 0x09, 0xee, 0xf8, 0x99,
+ 0x19, 0x70, 0xf9, 0x30, 0xdc, 0x11, 0x6c, 0x68, 0xd6, 0xfe, 0xfe, 0xf7, 0x1a, 0xd3, 0x6c, 0x23,
+ 0x50, 0x6c, 0xa5, 0x84, 0x3b, 0x04, 0x41, 0x94, 0xee, 0x83, 0x9f, 0xc8, 0xba, 0x7c, 0xf0, 0x81,
+ 0x3c, 0x17, 0x21, 0x8f, 0xa7, 0x7f, 0xe7, 0x69, 0x1a, 0xc8, 0x4e, 0xce, 0xaf, 0xec, 0xe6, 0xf4,
+ 0x0a, 0xad, 0x85, 0xa9, 0x0e, 0x16, 0xe3, 0xa7, 0xa2, 0xf5, 0x72, 0xf8, 0x10, 0xd6, 0x0b, 0xdc,
+ 0x7f, 0x7c, 0x2d, 0x26, 0x0b, 0xeb, 0xd6, 0xe6, 0x6c, 0xc0, 0xad, 0x00, 0x9b, 0xf6, 0x8f, 0x31,
+ 0xe3, 0x18, 0x75, 0xd0, 0x14, 0x9f, 0xfe, 0x3a, 0x74, 0x0b, 0x76, 0x00, 0xcd, 0xc3, 0xb5, 0x48,
+ 0x43, 0xa7, 0x99, 0x03, 0xbb, 0xde, 0x49, 0xd8, 0x44, 0x17, 0x7d, 0x5c, 0xa5, 0x72, 0x57, 0x9a,
+ 0xe1, 0xeb, 0xde, 0xba, 0xc0, 0x03, 0xb5, 0x5a, 0xc3, 0xb2, 0x8e, 0x42, 0x35, 0x6d, 0x69, 0xbf,
+ 0xe1, 0xb1, 0xdf, 0xf0, 0xd8, 0x78, 0xc3, 0x83, 0xbe, 0x3f, 0xb4, 0xa0, 0x2f, 0x02, 0xd9, 0xf7,
+ 0x3c, 0x0a, 0x5b, 0x23, 0xb4, 0x84, 0xa7, 0xc9, 0xab, 0xc7, 0xf5, 0x87, 0xf4, 0x87, 0x63, 0x58,
+ 0x29, 0xb2, 0x49, 0x58, 0x2d, 0x92, 0x03, 0x6d, 0xf6, 0x43, 0x84, 0xc4, 0x91, 0xc3, 0x18, 0x90,
+ 0x00, 0x4f, 0xd3, 0xf9, 0x70, 0x84, 0x60, 0x21, 0x78, 0x97, 0x4c, 0x19, 0xbd, 0x28, 0x8d, 0xf5,
+ 0x60, 0x47, 0xca, 0x40, 0x6a, 0x23, 0x28, 0x6c, 0x81, 0x92, 0xc4, 0xce, 0xbe, 0x2a, 0xa4, 0x06,
+ 0xef, 0xda, 0xef, 0x71, 0xb4, 0x2a, 0x8c, 0xa4, 0x4e, 0x2b, 0x2a, 0x79, 0x45, 0x48, 0x7b, 0x29,
+ 0x4d, 0x09, 0xd5, 0x54, 0x65, 0x61, 0xb2, 0x77, 0xb3, 0xbe, 0xe6, 0xdd, 0x65, 0x48, 0x52, 0x14,
+ 0x9e, 0x13, 0x89, 0x17, 0x38, 0x9d, 0x7c, 0x23, 0x7d, 0xeb, 0x74, 0x94, 0xde, 0x80, 0x8a, 0x34,
+ 0x71, 0x68, 0x64, 0x63, 0xc4, 0x91, 0x3e, 0x95, 0x81, 0xc3, 0x78, 0xce, 0x42, 0x48, 0xe0, 0xd0,
+ 0xb2, 0x45, 0xce, 0x24, 0xd3, 0xc9, 0xc3, 0x01, 0xd1, 0xf8, 0x83, 0x4b, 0x38, 0xf0, 0xe1, 0xac,
+ 0x8e, 0xff, 0x0c, 0xe8, 0x63, 0x4d, 0xf8, 0x23, 0x21, 0x1f, 0xe4, 0x5f, 0x37, 0x40, 0x0a, 0x29,
+ 0xd2, 0x1e, 0x0a, 0xef, 0x8f, 0x94, 0x0f, 0x16, 0x56, 0x46, 0x25, 0xa2, 0xa1, 0x4f, 0xea, 0x58,
+ 0x99, 0x6d, 0xd0, 0x82, 0x48, 0xdb, 0xe6, 0x3f, 0x97, 0x58, 0x3b, 0x63, 0x9a, 0x5d, 0x62, 0x2d,
+ 0xdb, 0xb2, 0x15, 0xe9, 0x59, 0x8b, 0xac, 0xac, 0xad, 0x5f, 0x85, 0xd2, 0x96, 0x52, 0x24, 0x35,
+ 0x14, 0x91, 0xf3, 0x2f, 0x2b, 0x50, 0xa3, 0x62, 0x1c, 0x54, 0x21, 0xc2, 0x4c, 0xff, 0x55, 0x49,
+ 0x6f, 0x99, 0x4b, 0x0c, 0x2b, 0x90, 0x67, 0x2e, 0x99, 0x2e, 0xe2, 0xc1, 0x20, 0xc5, 0x71, 0x26,
+ 0x60, 0x46, 0x03, 0x8b, 0xd6, 0xfe, 0x51, 0xeb, 0x60, 0x1b, 0xa9, 0xd5, 0x3c, 0x42, 0x06, 0x12,
+ 0x4f, 0x3c, 0x6a, 0x1e, 0xe3, 0xc4, 0xc3, 0x63, 0x94, 0x8a, 0xfe, 0x50, 0x4b, 0x30, 0x9d, 0x0d,
+ 0x6f, 0xa8, 0x01, 0xd8, 0xab, 0x5f, 0xa2, 0xff, 0x86, 0x6e, 0xc3, 0x89, 0xeb, 0x7d, 0xf4, 0xdf,
+ 0xc0, 0xf5, 0x9d, 0x41, 0xfd, 0x0a, 0xfd, 0x47, 0xd2, 0x12, 0xf4, 0x5f, 0xcf, 0x75, 0x83, 0x1a,
+ 0xa8, 0xbe, 0xa8, 0x0e, 0xdf, 0x21, 0xc8, 0x1b, 0x7c, 0x7a, 0x40, 0x5c, 0x05, 0x41, 0x50, 0xbd,
+ 0xfd, 0xbe, 0x89, 0x58, 0xb6, 0xd3, 0x20, 0x60, 0x7a, 0xe8, 0x29, 0xac, 0xee, 0x62, 0xe1, 0x83,
+ 0x89, 0x68, 0x2e, 0xe0, 0xec, 0x3b, 0xc4, 0x36, 0xf1, 0xc9, 0xf7, 0x92, 0x7f, 0xb3, 0x78, 0x63,
+ 0xc2, 0x62, 0x78, 0x04, 0x31, 0xfc, 0x44, 0xd2, 0x96, 0x08, 0x47, 0x93, 0x6c, 0x2c, 0x8f, 0x37,
+ 0xb6, 0x5a, 0xc2, 0x8d, 0x50, 0x85, 0xf1, 0x44, 0xba, 0x12, 0xc0, 0xd2, 0xb1, 0x76, 0xa5, 0x7b,
+ 0xc9, 0xaf, 0xe2, 0x7e, 0x76, 0xab, 0xa7, 0x82, 0xd0, 0x35, 0x82, 0xc7, 0x3d, 0x88, 0x80, 0x22,
+ 0x82, 0xde, 0x9d, 0x9f, 0xd5, 0x0e, 0x9b, 0xed, 0xa3, 0xf6, 0xf1, 0xfb, 0xce, 0x9b, 0xe3, 0xc3,
+ 0xe3, 0x77, 0xef, 0xdf, 0xbe, 0x3f, 0x3c, 0x30, 0x04, 0xd4, 0x01, 0x0b, 0xd4, 0x1a, 0xcb, 0x4c,
+ 0xe6, 0x48, 0x87, 0x3c, 0x70, 0x87, 0x2c, 0x23, 0x88, 0x67, 0xe8, 0xca, 0x01, 0x0d, 0xf1, 0x8a,
+ 0xf1, 0x99, 0x04, 0xa0, 0xe9, 0x21, 0x63, 0x17, 0xec, 0xb3, 0x78, 0x32, 0x77, 0x1c, 0xd1, 0xe4,
+ 0xbf, 0x5a, 0xdf, 0x1b, 0xd2, 0x57, 0xfb, 0xbb, 0xeb, 0x61, 0x63, 0x8f, 0x46, 0x75, 0x73, 0xeb,
+ 0x6a, 0x26, 0xc7, 0x3c, 0xca, 0xa6, 0x69, 0x84, 0x24, 0xee, 0x04, 0x41, 0x77, 0x8e, 0x3d, 0x7a,
+ 0x34, 0x1a, 0x53, 0xe4, 0x06, 0x52, 0xbd, 0xfc, 0x5c, 0x34, 0x0e, 0xf5, 0x12, 0x51, 0xfe, 0x25,
+ 0x66, 0x26, 0x9a, 0x64, 0x18, 0x03, 0x65, 0x62, 0xbf, 0x41, 0x73, 0x5d, 0x34, 0xed, 0xce, 0xcf,
+ 0xf0, 0xfd, 0x0e, 0x96, 0xc7, 0xdd, 0x19, 0xe0, 0x88, 0xf8, 0x20, 0xb7, 0x91, 0x9b, 0x8b, 0x11,
+ 0x1d, 0x2f, 0xee, 0xb2, 0x8a, 0xef, 0x86, 0xe3, 0x6b, 0x1c, 0xea, 0x97, 0xa4, 0x2f, 0xeb, 0xe7,
+ 0x67, 0xa1, 0xa4, 0x7b, 0xb7, 0x9b, 0xef, 0xde, 0x1e, 0x37, 0x44, 0x5c, 0xbf, 0x76, 0xf3, 0xed,
+ 0x31, 0xcd, 0x47, 0x93, 0x94, 0xbc, 0xcf, 0x09, 0xf1, 0x83, 0x78, 0x29, 0x12, 0xd8, 0xf1, 0x02,
+ 0x37, 0x9d, 0x17, 0xc3, 0x4d, 0x01, 0x79, 0x81, 0xc6, 0x01, 0x4d, 0x76, 0xec, 0x58, 0xc5, 0xbd,
+ 0x43, 0x46, 0x22, 0x10, 0xa9, 0x0c, 0x29, 0xc9, 0x70, 0x3d, 0xf6, 0x0d, 0x31, 0x72, 0xa1, 0x00,
+ 0x23, 0x1b, 0x33, 0x0c, 0x1e, 0x2f, 0xa9, 0x42, 0xb6, 0x6f, 0x8a, 0x33, 0xe9, 0xfe, 0x2a, 0x1e,
+ 0x28, 0x92, 0x02, 0x11, 0xc1, 0xc8, 0x2f, 0x6a, 0x7c, 0x8b, 0x66, 0x75, 0x8a, 0xfe, 0x07, 0x60,
+ 0x61, 0x12, 0x41, 0x05, 0x14, 0x4e, 0x87, 0x8c, 0x4d, 0x9d, 0xf6, 0x97, 0x1b, 0x9c, 0x9f, 0x61,
+ 0x59, 0x22, 0xb8, 0x89, 0x84, 0x64, 0x86, 0x42, 0xb4, 0x66, 0xf2, 0x12, 0x16, 0x99, 0x09, 0xbe,
+ 0xc4, 0xfc, 0x3e, 0x06, 0x42, 0xaa, 0x0a, 0xe2, 0x64, 0x99, 0xf8, 0x72, 0xa2, 0x14, 0x39, 0x24,
+ 0xb7, 0x90, 0xb0, 0xa2, 0x54, 0x71, 0x33, 0x76, 0xeb, 0xd2, 0xe7, 0x76, 0xc2, 0x8d, 0x4f, 0xc9,
+ 0x93, 0x2f, 0xbf, 0x9d, 0x9d, 0xfc, 0x72, 0x76, 0x72, 0x71, 0xf6, 0xe5, 0xe7, 0x9a, 0x25, 0x20,
+ 0x3e, 0x22, 0x98, 0xc3, 0xe3, 0x96, 0xe1, 0x20, 0xc7, 0xc7, 0xef, 0xde, 0x1e, 0xb6, 0xda, 0x6f,
+ 0x0e, 0x0a, 0x9b, 0x50, 0xa0, 0xc2, 0x13, 0x9f, 0x4a, 0x71, 0x83, 0x0a, 0x07, 0x05, 0x2f, 0x57,
+ 0x70, 0x8b, 0xa1, 0x6c, 0x21, 0x3c, 0x92, 0x26, 0x9d, 0x50, 0x0b, 0xf5, 0x77, 0xfc, 0x34, 0x51,
+ 0x47, 0x29, 0xd0, 0x52, 0x71, 0xec, 0x9b, 0x4e, 0x21, 0x32, 0xd2, 0x20, 0x1e, 0x8f, 0x63, 0x16,
+ 0xea, 0xc8, 0x10, 0x20, 0x14, 0x54, 0xfb, 0x49, 0x3a, 0xcf, 0x2e, 0xe3, 0xd9, 0x8b, 0x0b, 0x1b,
+ 0xb3, 0x7f, 0xda, 0x6a, 0x83, 0x63, 0xa5, 0x83, 0x78, 0x5a, 0xf2, 0x34, 0x14, 0xcb, 0x2d, 0x8b,
+ 0xd3, 0xcc, 0x60, 0x56, 0x45, 0x6a, 0x96, 0xe1, 0xca, 0xba, 0x0c, 0xbf, 0xa6, 0x6a, 0x69, 0x12,
+ 0xce, 0xb3, 0x77, 0x18, 0xce, 0x2e, 0xef, 0x14, 0x0e, 0x52, 0x42, 0x42, 0x49, 0x87, 0xac, 0xec,
+ 0x8d, 0x4a, 0x5d, 0xa1, 0xf6, 0xc3, 0xf3, 0x0b, 0x31, 0xf4, 0xda, 0x1f, 0x68, 0xe2, 0x4c, 0xaf,
+ 0x0e, 0x0c, 0x4b, 0x36, 0x10, 0xc2, 0xb2, 0x7c, 0x79, 0x4e, 0x58, 0x42, 0x56, 0x0b, 0x34, 0x6b,
+ 0xf2, 0xbc, 0xdc, 0x22, 0xf2, 0xc2, 0xb1, 0xa1, 0x47, 0x70, 0x86, 0x2f, 0xe6, 0x82, 0xb1, 0x3f,
+ 0x68, 0xe9, 0x75, 0xd8, 0x5d, 0x6d, 0x83, 0xad, 0x1f, 0x58, 0x27, 0x94, 0xf7, 0x00, 0x6b, 0xbe,
+ 0xc6, 0xe7, 0x4a, 0x38, 0xcd, 0x28, 0x66, 0x2f, 0x24, 0x34, 0xda, 0x9d, 0x77, 0x48, 0xbd, 0xa7,
+ 0x8a, 0x51, 0x97, 0x7b, 0xfc, 0x23, 0x12, 0xc8, 0x9b, 0xbc, 0x7f, 0x80, 0x83, 0x34, 0x82, 0xa2,
+ 0x12, 0x4a, 0x4b, 0x54, 0xc4, 0x63, 0x67, 0x13, 0x20, 0x70, 0x05, 0xb8, 0x75, 0xfa, 0x75, 0xeb,
+ 0xbd, 0x39, 0xa2, 0xf1, 0xbf, 0x85, 0xbb, 0x4f, 0x5e, 0xb4, 0xc1, 0x91, 0xa8, 0xcc, 0x5e, 0xbe,
+ 0x67, 0x29, 0xc1, 0x80, 0x33, 0x91, 0xfe, 0xa6, 0x3b, 0x65, 0x21, 0x1f, 0x5f, 0xf6, 0x03, 0xf4,
+ 0x06, 0x66, 0xec, 0xc6, 0xa3, 0x4b, 0x92, 0x29, 0x72, 0xe8, 0x68, 0x00, 0xf1, 0x1e, 0x1d, 0x10,
+ 0xa6, 0xd5, 0x42, 0x3a, 0xc3, 0x52, 0x77, 0xd8, 0x2f, 0xae, 0x07, 0x2b, 0x3a, 0x0b, 0x58, 0xa9,
+ 0x5c, 0xb9, 0xcb, 0xae, 0x73, 0xa5, 0x2c, 0xaf, 0xd7, 0x2b, 0x62, 0xe9, 0xe0, 0x17, 0x1a, 0x40,
+ 0x31, 0xaa, 0x3b, 0x82, 0x3e, 0xaa, 0x9b, 0x93, 0xe7, 0x1b, 0xe4, 0x8a, 0x5c, 0xb5, 0x53, 0xf0,
+ 0xa5, 0x48, 0x52, 0x9d, 0x27, 0x62, 0x45, 0x12, 0x0d, 0x42, 0x93, 0x6b, 0x58, 0x91, 0x96, 0x06,
+ 0x50, 0xcb, 0xcf, 0x49, 0xf4, 0x68, 0xa4, 0x90, 0x5e, 0x6b, 0x75, 0x90, 0x5e, 0xe9, 0x44, 0xe4,
+ 0xaf, 0x5e, 0x8d, 0xc7, 0xf6, 0xad, 0x90, 0x32, 0x9d, 0x43, 0xe0, 0xe6, 0xc6, 0xb5, 0x7f, 0x0d,
+ 0xaf, 0x94, 0x6b, 0x4f, 0x58, 0x31, 0xc6, 0x52, 0x6d, 0x4b, 0xa0, 0x3f, 0xa0, 0xca, 0x15, 0xdb,
+ 0xa6, 0x2b, 0x3b, 0x36, 0x29, 0x5e, 0xf4, 0xee, 0x28, 0xc5, 0x70, 0xff, 0x15, 0x2a, 0x33, 0xc6,
+ 0x57, 0xc4, 0x6f, 0x48, 0xa1, 0x2e, 0x93, 0x83, 0x5f, 0xb2, 0x7b, 0xa5, 0xe4, 0x76, 0xa8, 0xb5,
+ 0x94, 0xa9, 0x48, 0xa1, 0xd2, 0xc2, 0x55, 0x79, 0xcf, 0xa4, 0x27, 0x82, 0x2d, 0x2d, 0xa9, 0x7b,
+ 0xd1, 0x6a, 0x1a, 0x83, 0x15, 0x04, 0x85, 0x4c, 0xad, 0x24, 0x0e, 0x12, 0xc2, 0x14, 0x3e, 0xe6,
+ 0xe2, 0xa7, 0x0b, 0x07, 0xf7, 0x82, 0xde, 0x67, 0x2a, 0x57, 0xd1, 0xcd, 0xea, 0xbc, 0x51, 0x71,
+ 0x7f, 0xdc, 0x90, 0x75, 0xbb, 0x79, 0x29, 0xc8, 0x74, 0xe5, 0x9a, 0xb4, 0xdd, 0xf5, 0x58, 0xdf,
+ 0x34, 0xe7, 0xa1, 0x20, 0xa1, 0x13, 0xe1, 0x77, 0x6e, 0xea, 0x66, 0xdb, 0x0d, 0x0a, 0xc9, 0x7d,
+ 0x24, 0x5f, 0xd4, 0x26, 0x76, 0xe9, 0x18, 0xf5, 0x17, 0x54, 0xd7, 0x70, 0x38, 0xfa, 0xbc, 0x81,
+ 0x11, 0xbb, 0xbe, 0xa8, 0x10, 0x47, 0x0a, 0x75, 0x03, 0x9c, 0x6e, 0x31, 0x5e, 0x1f, 0x21, 0x34,
+ 0x14, 0xb7, 0x3a, 0x7f, 0x3d, 0xf9, 0xb3, 0xfb, 0xcb, 0xd9, 0x97, 0xd3, 0xee, 0xa7, 0xb3, 0x8b,
+ 0xdf, 0x4e, 0xbe, 0x7c, 0x3c, 0xad, 0x1d, 0x76, 0xde, 0xbe, 0x79, 0x2b, 0xd9, 0xa5, 0x7b, 0x3b,
+ 0xb6, 0xba, 0x1d, 0x8b, 0x24, 0xe7, 0x60, 0x96, 0xce, 0xad, 0x31, 0x3b, 0xf6, 0x16, 0xe3, 0xde,
+ 0x62, 0x7c, 0xad, 0x16, 0xe3, 0xde, 0x86, 0xdb, 0xdb, 0x70, 0xcf, 0xdc, 0x86, 0x63, 0xe2, 0xb9,
+ 0xaa, 0x19, 0x17, 0x14, 0x56, 0xc7, 0xbd, 0x61, 0xb7, 0x37, 0xec, 0xf6, 0x86, 0xdd, 0x13, 0x19,
+ 0x76, 0x2f, 0xc8, 0xf2, 0xaa, 0xbc, 0x6f, 0xbc, 0xb9, 0x4d, 0xb6, 0x5a, 0x09, 0xad, 0x72, 0x7c,
+ 0x70, 0x6f, 0x7a, 0xe9, 0xa6, 0x97, 0xe5, 0x39, 0x2f, 0xba, 0x51, 0x0e, 0xec, 0xaa, 0x76, 0xb3,
+ 0xfd, 0x59, 0xaf, 0xc7, 0xb1, 0xd8, 0x8a, 0xf6, 0x15, 0xcb, 0x51, 0x56, 0xaa, 0xee, 0xc5, 0xc7,
+ 0x93, 0x5f, 0x4e, 0x6b, 0x9d, 0x0d, 0x2c, 0xb9, 0x87, 0xb6, 0xd7, 0xec, 0x16, 0x59, 0xb9, 0x45,
+ 0xb7, 0x8d, 0xbd, 0x26, 0x76, 0x15, 0xcb, 0x26, 0xd1, 0xde, 0x4c, 0x7b, 0x38, 0x33, 0xed, 0x19,
+ 0x58, 0x45, 0xcf, 0xce, 0x52, 0xdc, 0xb1, 0x99, 0xb6, 0xbf, 0x27, 0xf9, 0x8c, 0xee, 0x49, 0xbe,
+ 0x72, 0x73, 0xf8, 0x69, 0xcd, 0xcf, 0xe7, 0x66, 0x8c, 0xef, 0xca, 0x1c, 0xfe, 0x7f, 0x73, 0x73,
+ 0x75, 0x7b, 0x93, 0x9f, 0xc1, 0xad, 0xb7, 0x79, 0x6b, 0xd0, 0xa1, 0xf6, 0x36, 0xff, 0xde, 0xe6,
+ 0xdf, 0xdb, 0xfc, 0x0f, 0x61, 0xf3, 0x8b, 0xa9, 0x18, 0xcb, 0x0a, 0x7a, 0xb9, 0x2f, 0x60, 0x93,
+ 0x9b, 0x92, 0x8a, 0xbc, 0xd1, 0x43, 0x90, 0xac, 0xb4, 0xc9, 0x77, 0x67, 0x68, 0xbc, 0x96, 0x8b,
+ 0x8a, 0x2f, 0x7f, 0xa7, 0x7c, 0xb5, 0xab, 0xe4, 0x19, 0xdd, 0x78, 0x7c, 0x42, 0x57, 0xce, 0x3e,
+ 0xa4, 0xef, 0xeb, 0x7a, 0xe8, 0x43, 0xee, 0x6a, 0xb9, 0x7d, 0x6a, 0x9b, 0x9b, 0x0b, 0x8f, 0xf7,
+ 0x5a, 0xa0, 0x06, 0xc7, 0xd5, 0x00, 0x97, 0x26, 0x9c, 0x89, 0x01, 0x27, 0xa2, 0xda, 0xa3, 0xfd,
+ 0x5d, 0x86, 0x11, 0x28, 0x0e, 0x5f, 0x94, 0xff, 0x90, 0x60, 0x5b, 0xa0, 0x8e, 0x24, 0xf7, 0x6e,
+ 0xf9, 0x02, 0x11, 0xa8, 0xfd, 0xdc, 0x5c, 0xa8, 0xf0, 0x49, 0x39, 0x7c, 0xa2, 0xc2, 0x2f, 0xbb,
+ 0xf8, 0x85, 0xe0, 0x3a, 0xef, 0x09, 0xa4, 0xe0, 0xd0, 0x1b, 0x5d, 0x9c, 0x3e, 0x4c, 0x93, 0xa3,
+ 0xd5, 0xba, 0xac, 0x77, 0xe8, 0x33, 0x27, 0xae, 0x4e, 0xd0, 0x52, 0x20, 0x4f, 0x36, 0x41, 0x9e,
+ 0xd8, 0x91, 0x27, 0x82, 0x31, 0x70, 0x60, 0x8e, 0xf5, 0x6f, 0x41, 0x63, 0x0e, 0x42, 0xbd, 0xea,
+ 0xa3, 0x96, 0xbb, 0x12, 0xae, 0x64, 0x83, 0x3b, 0xcc, 0x14, 0x57, 0x82, 0x70, 0x25, 0xae, 0xe2,
+ 0xf1, 0x05, 0x5c, 0xc6, 0x7b, 0xcc, 0xa8, 0x52, 0xdf, 0x9c, 0x91, 0xb8, 0xe6, 0xfb, 0xcb, 0xc4,
+ 0x07, 0xfc, 0x80, 0xef, 0x2d, 0xbc, 0x60, 0x0f, 0x70, 0xa5, 0x13, 0x3b, 0x74, 0xb0, 0xc8, 0x33,
+ 0xcd, 0x71, 0x41, 0xc1, 0x43, 0xbd, 0xdf, 0x5d, 0x4a, 0xe9, 0xa6, 0x52, 0x89, 0xa5, 0x54, 0xf2,
+ 0x48, 0xa7, 0x83, 0x68, 0x2a, 0x54, 0x12, 0x9b, 0x12, 0x93, 0x4d, 0x94, 0xc2, 0xfd, 0x7d, 0x97,
+ 0xfd, 0xe9, 0xa5, 0xfd, 0xe9, 0xa5, 0x72, 0xb7, 0x38, 0x1b, 0x32, 0x83, 0xcf, 0xec, 0x21, 0x5c,
+ 0xe6, 0xd8, 0x51, 0x54, 0x42, 0xa5, 0xc8, 0xb7, 0xf6, 0x95, 0x00, 0x31, 0xf1, 0x97, 0x94, 0x5b,
+ 0xd6, 0x9b, 0x2a, 0xd8, 0xfe, 0xf2, 0xce, 0xfe, 0xe0, 0xd7, 0x33, 0x39, 0xf8, 0xb5, 0x3b, 0xdf,
+ 0xb6, 0x34, 0x15, 0xc5, 0x4f, 0x43, 0xcd, 0x22, 0xd3, 0x57, 0xe7, 0xa7, 0xa9, 0xc9, 0x32, 0x26,
+ 0xe3, 0x24, 0xdb, 0xbb, 0xa0, 0xf7, 0x2e, 0xe8, 0xbd, 0x0b, 0xfa, 0x15, 0xba, 0xa0, 0xb1, 0xaa,
+ 0x1e, 0x51, 0x99, 0xc1, 0xe7, 0xa5, 0xa7, 0x5b, 0x1f, 0xcd, 0x45, 0x20, 0x09, 0x14, 0x3e, 0x7e,
+ 0x05, 0xb0, 0x65, 0x9d, 0x1b, 0x26, 0x2e, 0xc5, 0x9e, 0xac, 0xc4, 0x9e, 0x54, 0xc3, 0x9e, 0x48,
+ 0xd8, 0x21, 0xd4, 0x56, 0x35, 0x37, 0xf9, 0xea, 0x17, 0x49, 0xe7, 0xfd, 0x4b, 0xdc, 0xad, 0xc5,
+ 0x18, 0x4b, 0xc8, 0x62, 0x7b, 0x66, 0x56, 0xd0, 0xfe, 0x16, 0x57, 0xf9, 0x3a, 0xbc, 0x3b, 0x3d,
+ 0xf8, 0x71, 0x95, 0xd8, 0x97, 0x78, 0xa1, 0xcc, 0x88, 0xa1, 0xe4, 0x20, 0x40, 0xb1, 0xc7, 0x4b,
+ 0x3b, 0x7c, 0x0d, 0x75, 0xe5, 0x05, 0xfa, 0x47, 0x91, 0x10, 0x82, 0xdc, 0x6e, 0x6c, 0x8c, 0x46,
+ 0x84, 0x45, 0x89, 0xdb, 0x8c, 0x35, 0xe0, 0xc4, 0x0a, 0x9c, 0x14, 0x80, 0xb1, 0x2b, 0x8f, 0xd7,
+ 0xe2, 0x73, 0x14, 0x3e, 0x96, 0x73, 0x6e, 0x48, 0x1c, 0x73, 0x91, 0xf2, 0x9e, 0xea, 0x71, 0x43,
+ 0x48, 0x47, 0x59, 0x42, 0x93, 0x98, 0xb7, 0xa6, 0x1c, 0x8a, 0xf6, 0xf1, 0x8f, 0x7f, 0x56, 0x3a,
+ 0x61, 0x99, 0x8f, 0xd0, 0x0a, 0x32, 0x93, 0x1f, 0x53, 0xe0, 0x32, 0x1f, 0xaf, 0x28, 0x96, 0xcc,
+ 0xe4, 0xfa, 0xf2, 0x32, 0x9d, 0x95, 0x3d, 0xb4, 0xba, 0x66, 0x18, 0xae, 0x96, 0x21, 0xad, 0xbd,
+ 0x69, 0x6c, 0xae, 0x56, 0xe4, 0x38, 0xe6, 0xd8, 0x85, 0x0d, 0x38, 0x79, 0x1b, 0xa8, 0xf4, 0xd7,
+ 0x5c, 0x88, 0x32, 0x44, 0x4a, 0xb6, 0x23, 0x12, 0xca, 0x0d, 0x1e, 0xf4, 0x96, 0x3b, 0x00, 0xc2,
+ 0x4f, 0x89, 0xae, 0x92, 0x3a, 0x57, 0xde, 0x4b, 0xee, 0x16, 0xfb, 0x49, 0x7f, 0x8c, 0xa2, 0xb0,
+ 0xd4, 0xb6, 0xec, 0x59, 0xed, 0xca, 0xdd, 0x54, 0x18, 0x9d, 0x19, 0xc4, 0x40, 0x42, 0xaa, 0xc4,
+ 0x1c, 0x82, 0x46, 0x97, 0x65, 0x83, 0xb0, 0x2c, 0x8e, 0x7c, 0x8c, 0xba, 0x0d, 0x87, 0x83, 0xd3,
+ 0xdf, 0xe7, 0x10, 0x4e, 0xc5, 0x49, 0x3e, 0x8b, 0xe7, 0xa6, 0xf7, 0x3b, 0xe0, 0x31, 0x8d, 0xf9,
+ 0x74, 0x38, 0xe9, 0xde, 0xe2, 0x90, 0xb0, 0xda, 0x91, 0x72, 0x21, 0x96, 0x5b, 0xc5, 0x89, 0xd9,
+ 0x22, 0x41, 0xc5, 0x5a, 0x2b, 0x62, 0x96, 0xb6, 0x09, 0x58, 0x9b, 0x04, 0x8c, 0x26, 0xc8, 0x9a,
+ 0x31, 0x51, 0xfd, 0x51, 0x15, 0x34, 0x61, 0x36, 0x48, 0x22, 0xf1, 0x33, 0x60, 0x60, 0xe1, 0x3d,
+ 0x2f, 0xd4, 0xd6, 0x0b, 0xb5, 0x45, 0xa1, 0xb6, 0x28, 0xd4, 0x86, 0x42, 0x9a, 0xbf, 0x9f, 0x60,
+ 0xf3, 0x69, 0x48, 0x52, 0x36, 0xfa, 0xf4, 0x9d, 0xa0, 0x66, 0x2c, 0x07, 0x6e, 0xc6, 0x5d, 0xc2,
+ 0xf1, 0x02, 0xda, 0x10, 0xbe, 0x70, 0xc0, 0x67, 0x08, 0xb6, 0x8d, 0x3e, 0x7c, 0xb5, 0xc7, 0x20,
+ 0x08, 0xbd, 0xeb, 0x5b, 0xf2, 0xee, 0x16, 0x4b, 0x6b, 0xde, 0xf2, 0x6e, 0xc1, 0xe3, 0xa2, 0xc5,
+ 0x37, 0x29, 0x92, 0x0e, 0x69, 0xc4, 0x1e, 0xd5, 0x61, 0x2f, 0x25, 0xb1, 0x27, 0x92, 0xdc, 0xe0,
+ 0x10, 0xc2, 0x58, 0x42, 0x10, 0x6b, 0x87, 0xc2, 0x36, 0xd0, 0x17, 0x84, 0xef, 0x2a, 0x0e, 0x3f,
+ 0x10, 0x0c, 0x15, 0xe2, 0xd9, 0xe3, 0x15, 0x86, 0x9f, 0x4c, 0x1f, 0x32, 0xf4, 0xc0, 0x50, 0x60,
+ 0x5f, 0x93, 0x06, 0xea, 0xac, 0xe8, 0xaf, 0x4c, 0x70, 0x19, 0x22, 0xf4, 0xdb, 0x82, 0x07, 0xaa,
+ 0xf0, 0x2b, 0xa4, 0x68, 0x12, 0x16, 0x4b, 0x0a, 0x12, 0x2f, 0x8c, 0x11, 0xe9, 0xf3, 0x6a, 0x7c,
+ 0xdc, 0x76, 0x3a, 0x7c, 0x3e, 0x0b, 0xf1, 0xb5, 0x9d, 0xfc, 0x45, 0xbd, 0x34, 0xcf, 0xe9, 0x94,
+ 0x39, 0x3f, 0x8b, 0x0a, 0xc1, 0xf6, 0x42, 0xe3, 0x96, 0x09, 0xb5, 0x96, 0xcd, 0x5b, 0x26, 0x4a,
+ 0xea, 0x21, 0x94, 0xe0, 0x76, 0x92, 0x2a, 0x73, 0x99, 0x1b, 0x01, 0x33, 0xa6, 0x2e, 0x84, 0x92,
+ 0x2c, 0x1b, 0x81, 0x90, 0x99, 0x93, 0x8d, 0x36, 0x08, 0xf4, 0xd8, 0xc5, 0xc4, 0xc6, 0x92, 0xa4,
+ 0xd7, 0x80, 0x2e, 0xd3, 0x18, 0xcb, 0xd2, 0x02, 0x9c, 0xfa, 0xa8, 0x1c, 0x86, 0x2d, 0xcb, 0xb4,
+ 0x64, 0xf5, 0xe2, 0x31, 0xe2, 0x41, 0x30, 0xe4, 0x20, 0xe8, 0x1a, 0x92, 0xcc, 0x2c, 0x54, 0xbf,
+ 0x05, 0x7e, 0x3a, 0xcc, 0x7b, 0x57, 0x3a, 0xad, 0xb3, 0x2c, 0x8f, 0xf3, 0xb4, 0x3b, 0x5f, 0x8e,
+ 0x93, 0x6c, 0x64, 0x29, 0x48, 0x42, 0xcc, 0x69, 0xbb, 0x49, 0x8a, 0x10, 0xef, 0x5d, 0xe1, 0x08,
+ 0x8c, 0x2f, 0x60, 0xf7, 0x60, 0xc5, 0x06, 0x1a, 0x49, 0x1d, 0xc5, 0x49, 0x8a, 0x16, 0xae, 0x51,
+ 0x3c, 0x49, 0x2d, 0x10, 0x03, 0xf6, 0xc0, 0x80, 0x96, 0x2d, 0x38, 0x00, 0x44, 0xb0, 0x9e, 0x8c,
+ 0x47, 0x80, 0x98, 0xcb, 0xe3, 0x78, 0x1a, 0x5a, 0x8e, 0x5c, 0x15, 0x4d, 0xbb, 0x82, 0x61, 0xa7,
+ 0xb0, 0xe8, 0x33, 0x79, 0x69, 0x5b, 0xe8, 0x31, 0x91, 0x3c, 0x2b, 0xf9, 0x49, 0x13, 0xe6, 0x26,
+ 0x55, 0x73, 0xd9, 0x39, 0x15, 0xac, 0x79, 0x08, 0x0f, 0x20, 0x4b, 0x84, 0x0e, 0x61, 0xa9, 0x08,
+ 0x54, 0xe6, 0xcb, 0x79, 0x3a, 0x18, 0x43, 0xb0, 0x41, 0xc4, 0x79, 0xa3, 0x34, 0x6a, 0x68, 0xf3,
+ 0xfa, 0xaf, 0xce, 0x77, 0xa6, 0xa8, 0x42, 0x9f, 0xc2, 0x02, 0xf6, 0x83, 0x65, 0xfa, 0xc2, 0x53,
+ 0x18, 0x3f, 0xd8, 0x67, 0x2d, 0xea, 0x54, 0x4c, 0x05, 0x88, 0x41, 0x42, 0xd0, 0x5f, 0xad, 0xef,
+ 0x3e, 0xfd, 0xd5, 0xfe, 0xee, 0xb3, 0x09, 0xec, 0x06, 0x38, 0x6e, 0x71, 0x78, 0x5f, 0x83, 0x3e,
+ 0xab, 0x41, 0x8d, 0xdb, 0x55, 0xc8, 0x2b, 0x2b, 0x22, 0x2e, 0x6b, 0xca, 0x6a, 0xc4, 0x54, 0xaa,
+ 0x50, 0x7c, 0x6a, 0x9a, 0xea, 0x2b, 0x3b, 0xcf, 0x86, 0x93, 0x7c, 0x55, 0x08, 0x6d, 0x1a, 0x09,
+ 0x99, 0x4b, 0x23, 0x24, 0x82, 0xae, 0x32, 0x21, 0x8d, 0x22, 0x15, 0x5b, 0x53, 0x1d, 0x45, 0x06,
+ 0x45, 0xa4, 0x4b, 0xa4, 0xcf, 0x91, 0xda, 0x4f, 0x07, 0x56, 0xc4, 0x41, 0x89, 0x08, 0xac, 0x7d,
+ 0x38, 0x28, 0xc9, 0x0d, 0xac, 0x38, 0x15, 0xda, 0x24, 0x97, 0x16, 0x25, 0x8f, 0x98, 0x65, 0x60,
+ 0xa7, 0x80, 0x0b, 0x53, 0xa5, 0x1d, 0x9b, 0x5e, 0xe0, 0x59, 0x0e, 0xa1, 0x27, 0xbd, 0xa8, 0x50,
+ 0x9a, 0x9d, 0x8b, 0x42, 0x8a, 0x00, 0x3b, 0xff, 0x44, 0xe5, 0x44, 0xed, 0x27, 0xcc, 0xa5, 0x41,
+ 0xe7, 0x08, 0x7b, 0x59, 0xf1, 0x48, 0x28, 0xac, 0x8e, 0xa5, 0x33, 0x91, 0xd5, 0xa0, 0xc9, 0xa3,
+ 0x9a, 0x42, 0xc2, 0x5f, 0x8a, 0xf8, 0x66, 0xba, 0x22, 0x99, 0x5a, 0xe7, 0x2b, 0x07, 0x91, 0xc4,
+ 0x5e, 0x6e, 0xe3, 0x90, 0xd0, 0xfc, 0xe9, 0x98, 0x58, 0x1f, 0xaf, 0xc5, 0x32, 0x28, 0x8c, 0x20,
+ 0x86, 0x4c, 0x22, 0x53, 0x45, 0x00, 0x6f, 0x4c, 0xbf, 0x0d, 0xf5, 0x66, 0xe0, 0xf8, 0xb1, 0x0e,
+ 0x9c, 0x9d, 0xc2, 0x07, 0xb4, 0xd4, 0x85, 0xc6, 0x87, 0xe3, 0x57, 0x70, 0xc6, 0x2b, 0xbc, 0x97,
+ 0xbb, 0x02, 0xcf, 0x76, 0xc4, 0xab, 0x93, 0x08, 0x87, 0x29, 0x95, 0x65, 0x40, 0x5d, 0xc3, 0xaf,
+ 0xf2, 0x27, 0x29, 0xd8, 0x43, 0xd2, 0x09, 0x07, 0x67, 0x2d, 0x2f, 0x08, 0x0e, 0xe4, 0x1a, 0xfb,
+ 0xa4, 0x1d, 0x17, 0x61, 0xaf, 0x32, 0x47, 0xe3, 0x63, 0x3f, 0x3d, 0x27, 0xc7, 0xd7, 0x7f, 0xf5,
+ 0x68, 0xa4, 0x5f, 0xd9, 0xf3, 0x0c, 0xb2, 0xd1, 0xb4, 0xba, 0xf0, 0x31, 0x91, 0x21, 0x51, 0x47,
+ 0x2a, 0x81, 0x6a, 0x24, 0x3b, 0x4e, 0x5b, 0x7d, 0xa8, 0x43, 0x5a, 0x2b, 0x1c, 0xa8, 0x09, 0xb7,
+ 0x75, 0xad, 0x3d, 0x1e, 0xdf, 0xb8, 0x0a, 0x0e, 0x21, 0x5a, 0x2f, 0xe7, 0x4b, 0x29, 0xfe, 0xf4,
+ 0x0d, 0x95, 0xca, 0xe8, 0xdf, 0x40, 0x5a, 0xa0, 0x60, 0xf4, 0xe5, 0x25, 0x88, 0x2d, 0x27, 0xf4,
+ 0xd3, 0x51, 0x75, 0x28, 0x1e, 0x9d, 0x5c, 0x68, 0x0a, 0x91, 0x9c, 0x8f, 0x84, 0x28, 0xb6, 0x29,
+ 0x20, 0x0e, 0xaf, 0xa2, 0x4f, 0xd4, 0x3e, 0x34, 0x54, 0xfd, 0x42, 0x5d, 0xf8, 0xf8, 0xcb, 0x4a,
+ 0xe0, 0x26, 0x81, 0xd8, 0xd9, 0x0a, 0xd2, 0xd6, 0xf7, 0xba, 0x54, 0xd4, 0xb5, 0x3a, 0x6f, 0xa9,
+ 0xa9, 0x14, 0x3e, 0x49, 0xa8, 0xa8, 0xf5, 0xd7, 0xf6, 0x2d, 0x9d, 0x69, 0x12, 0x10, 0x71, 0x34,
+ 0x51, 0x00, 0x4f, 0xab, 0x57, 0xd1, 0xd4, 0x65, 0x6b, 0x92, 0xfe, 0x26, 0xfe, 0x20, 0x97, 0x9c,
+ 0xbb, 0xda, 0xab, 0xfc, 0x0f, 0xaf, 0xf2, 0xdb, 0x3c, 0xc5, 0xc3, 0xd1, 0xa8, 0xec, 0xe4, 0x92,
+ 0xc8, 0xb7, 0x1f, 0x5f, 0x12, 0x30, 0xa6, 0x33, 0x4c, 0x52, 0x6e, 0x99, 0xf3, 0x5f, 0x05, 0x2b,
+ 0x7b, 0x86, 0x28, 0x1e, 0x65, 0x65, 0x14, 0x8b, 0x7c, 0x3b, 0xc5, 0x02, 0xc6, 0x44, 0xb1, 0x94,
+ 0x5b, 0x46, 0xb1, 0x0a, 0xf6, 0xa2, 0x0f, 0x3b, 0xe1, 0xa6, 0x94, 0x9c, 0x9b, 0x11, 0xf9, 0xf6,
+ 0x77, 0x43, 0x39, 0x88, 0xf1, 0xed, 0x50, 0x91, 0x5b, 0xfa, 0x4a, 0x94, 0x02, 0xb6, 0x8a, 0x60,
+ 0xfb, 0xb9, 0x36, 0x9e, 0x5d, 0x4e, 0xae, 0xed, 0x84, 0x9b, 0xc8, 0x5c, 0x49, 0xac, 0xb2, 0x37,
+ 0xf1, 0x1c, 0x6d, 0xc1, 0xc7, 0x34, 0xd9, 0xd7, 0x75, 0x1f, 0x98, 0x4c, 0xfc, 0x6a, 0x36, 0x2b,
+ 0x48, 0x61, 0xc5, 0xed, 0x7a, 0x48, 0x13, 0xdb, 0x95, 0xac, 0x55, 0x49, 0xca, 0x89, 0x9f, 0xa6,
+ 0x23, 0x56, 0x22, 0xd7, 0x57, 0x65, 0x9f, 0xe9, 0xb0, 0x95, 0x8c, 0x6a, 0x23, 0xf9, 0x25, 0x7e,
+ 0x9a, 0x68, 0x11, 0xb9, 0xbe, 0x2a, 0xd5, 0x4c, 0xb4, 0xc8, 0xa8, 0xd6, 0x97, 0x4c, 0x3b, 0x3f,
+ 0x9b, 0x25, 0x09, 0x1c, 0xf1, 0xd3, 0xf4, 0x5c, 0x2c, 0xcf, 0xf4, 0x55, 0x29, 0x64, 0x7c, 0x36,
+ 0x56, 0xc2, 0xb4, 0x89, 0x28, 0xe1, 0xbf, 0x6c, 0x84, 0xd0, 0x53, 0x71, 0x92, 0x74, 0xb1, 0x92,
+ 0x41, 0xb7, 0x2e, 0x8b, 0x32, 0x62, 0xef, 0xd5, 0xd8, 0x7b, 0x35, 0xf6, 0x5e, 0x8d, 0xbd, 0x57,
+ 0x63, 0xef, 0xd5, 0x78, 0x3d, 0x5e, 0x0d, 0x76, 0x22, 0x58, 0x9c, 0x79, 0x53, 0x4e, 0xc9, 0x11,
+ 0x3e, 0x78, 0x56, 0x8e, 0x0f, 0xf1, 0x5a, 0xd2, 0x6c, 0x9a, 0x8d, 0x62, 0x68, 0xfd, 0x16, 0x9e,
+ 0x10, 0xaa, 0x9f, 0x91, 0x13, 0x6e, 0xa8, 0x6d, 0xcd, 0x05, 0xdc, 0xb9, 0xc2, 0x57, 0xc7, 0x88,
+ 0x92, 0x46, 0x36, 0x10, 0xa5, 0x0e, 0xf2, 0xc9, 0x9b, 0x94, 0xb6, 0xfa, 0x49, 0x30, 0x39, 0x7a,
+ 0xf9, 0xe9, 0xe2, 0xd3, 0xe7, 0xee, 0xf9, 0x9f, 0xb5, 0x77, 0xd2, 0x7d, 0xa8, 0xd3, 0x4f, 0x3f,
+ 0x9f, 0x76, 0x7f, 0x3e, 0xf9, 0xf5, 0xd7, 0x13, 0xd4, 0xda, 0x76, 0xeb, 0xd8, 0x70, 0x18, 0xe6,
+ 0xa0, 0xa8, 0x35, 0xc3, 0x62, 0x5c, 0xc1, 0x0e, 0xde, 0xad, 0x0d, 0xbb, 0x43, 0xfb, 0x73, 0x57,
+ 0x26, 0xe4, 0x4e, 0xed, 0xbf, 0x47, 0x30, 0xdf, 0x4c, 0xde, 0x3c, 0xb3, 0xc9, 0x23, 0x9f, 0xb6,
+ 0xb2, 0x58, 0x69, 0x5b, 0x18, 0x32, 0xa5, 0x5c, 0xba, 0x9e, 0x1d, 0x52, 0x6e, 0x86, 0xac, 0x65,
+ 0x46, 0x3c, 0xc6, 0xe9, 0x3b, 0x89, 0x79, 0xd6, 0xd3, 0xe7, 0xcb, 0x38, 0x63, 0x3d, 0x95, 0x1c,
+ 0xc4, 0x33, 0x1d, 0x1e, 0x50, 0xac, 0x8b, 0x22, 0x9d, 0x0e, 0x13, 0xbf, 0xac, 0x8e, 0xf5, 0x41,
+ 0x96, 0xb8, 0x94, 0x25, 0x33, 0x6b, 0x3c, 0xcd, 0x14, 0x3a, 0x76, 0x45, 0x9d, 0x46, 0x04, 0x6d,
+ 0x20, 0x23, 0x21, 0x0d, 0xa9, 0xcc, 0x7e, 0x98, 0xb8, 0x48, 0x88, 0xc2, 0xc0, 0xe1, 0xf8, 0x3d,
+ 0x85, 0x35, 0xdd, 0x50, 0x3e, 0x53, 0x79, 0x7d, 0x79, 0x19, 0x39, 0x58, 0x55, 0x6e, 0xe0, 0x7b,
+ 0x0b, 0x54, 0x6d, 0xe6, 0x8a, 0x38, 0xf4, 0x0f, 0x3b, 0x8c, 0x13, 0x49, 0x2c, 0x40, 0xaa, 0x73,
+ 0x78, 0xf7, 0x79, 0xed, 0x66, 0xfb, 0x7d, 0x40, 0x84, 0x73, 0x5d, 0x50, 0xe1, 0x96, 0x90, 0x41,
+ 0xea, 0x86, 0x9a, 0xc5, 0x68, 0x06, 0x62, 0x41, 0xa5, 0xc8, 0xc2, 0x7b, 0x89, 0x5c, 0x7c, 0x24,
+ 0xd0, 0xe4, 0x2f, 0x06, 0x6f, 0x71, 0x33, 0x2e, 0x76, 0x08, 0xa9, 0xab, 0x1f, 0xe1, 0x0f, 0x4f,
+ 0x9e, 0xa0, 0x8a, 0x9a, 0x83, 0x7d, 0xd5, 0xd2, 0x21, 0x42, 0x20, 0xad, 0x21, 0x23, 0xf0, 0x21,
+ 0xa5, 0xae, 0xa4, 0x54, 0x3c, 0x31, 0xe8, 0xa9, 0x2b, 0xd9, 0x56, 0xbe, 0xec, 0xff, 0x03, 0x24,
+ 0xfc, 0xa9, 0x11
};
const char* shaderSource() {
diff --git a/src/mbgl/programs/gl/symbol_icon.cpp b/src/mbgl/programs/gl/symbol_icon.cpp
index 6cb2b88543..52defc84e9 100644
--- a/src/mbgl/programs/gl/symbol_icon.cpp
+++ b/src/mbgl/programs/gl/symbol_icon.cpp
@@ -16,8 +16,8 @@ template <>
struct ShaderSource<SymbolIconProgram> {
static constexpr const char* name = "symbol_icon";
static constexpr const uint8_t hash[8] = { 0x96, 0x0c, 0xef, 0xec, 0x37, 0x23, 0xf9, 0xb1 };
- static constexpr const auto vertexOffset = 50000;
- static constexpr const auto fragmentOffset = 52654;
+ static constexpr const auto vertexOffset = 49728;
+ static constexpr const auto fragmentOffset = 52382;
};
constexpr const char* ShaderSource<SymbolIconProgram>::name;
diff --git a/src/mbgl/programs/gl/symbol_sdf_icon.cpp b/src/mbgl/programs/gl/symbol_sdf_icon.cpp
index d98554099f..aca8e6aba1 100644
--- a/src/mbgl/programs/gl/symbol_sdf_icon.cpp
+++ b/src/mbgl/programs/gl/symbol_sdf_icon.cpp
@@ -16,8 +16,8 @@ template <>
struct ShaderSource<SymbolSDFIconProgram> {
static constexpr const char* name = "symbol_sdf_icon";
static constexpr const uint8_t hash[8] = { 0x13, 0xfc, 0x05, 0x2a, 0xd1, 0x93, 0xfb, 0x7d };
- static constexpr const auto vertexOffset = 53059;
- static constexpr const auto fragmentOffset = 57099;
+ static constexpr const auto vertexOffset = 52787;
+ static constexpr const auto fragmentOffset = 56827;
};
constexpr const char* ShaderSource<SymbolSDFIconProgram>::name;
diff --git a/src/mbgl/programs/gl/symbol_sdf_text.cpp b/src/mbgl/programs/gl/symbol_sdf_text.cpp
index 81f3729d92..f059f074b9 100644
--- a/src/mbgl/programs/gl/symbol_sdf_text.cpp
+++ b/src/mbgl/programs/gl/symbol_sdf_text.cpp
@@ -16,8 +16,8 @@ template <>
struct ShaderSource<SymbolSDFTextProgram> {
static constexpr const char* name = "symbol_sdf_text";
static constexpr const uint8_t hash[8] = { 0x13, 0xfc, 0x05, 0x2a, 0xd1, 0x93, 0xfb, 0x7d };
- static constexpr const auto vertexOffset = 53059;
- static constexpr const auto fragmentOffset = 57099;
+ static constexpr const auto vertexOffset = 52787;
+ static constexpr const auto fragmentOffset = 56827;
};
constexpr const char* ShaderSource<SymbolSDFTextProgram>::name;
diff --git a/src/mbgl/renderer/layers/render_fill_extrusion_layer.cpp b/src/mbgl/renderer/layers/render_fill_extrusion_layer.cpp
index c8fa8765de..6c2d049948 100644
--- a/src/mbgl/renderer/layers/render_fill_extrusion_layer.cpp
+++ b/src/mbgl/renderer/layers/render_fill_extrusion_layer.cpp
@@ -56,86 +56,83 @@ bool RenderFillExtrusionLayer::hasCrossfade() const {
}
void RenderFillExtrusionLayer::render(PaintParameters& parameters, RenderSource*) {
- if (parameters.pass == RenderPass::Opaque) {
+ if (parameters.pass != RenderPass::Translucent) {
return;
}
- if (parameters.pass == RenderPass::Pass3D) {
- const auto& size = parameters.staticData.backendSize;
- if (!renderTexture || renderTexture->getSize() != size) {
- renderTexture.reset();
- renderTexture = parameters.context.createOffscreenTexture(size, *parameters.staticData.depthRenderbuffer);
- }
+ const auto& evaluated = static_cast<const FillExtrusionLayerProperties&>(*evaluatedProperties).evaluated;
+ const auto& crossfade = static_cast<const FillExtrusionLayerProperties&>(*evaluatedProperties).crossfade;
+ if (evaluated.get<FillExtrusionOpacity>() == 0) {
+ return;
+ }
- optional<float> depthClearValue = {};
- if (parameters.staticData.depthRenderbuffer->needsClearing()) depthClearValue = 1.0;
- // Flag the depth buffer as no longer needing to be cleared for the remainder of this pass.
- parameters.staticData.depthRenderbuffer->setShouldClear(false);
-
- auto renderPass = parameters.encoder->createRenderPass(
- "fill extrusion",
- { *renderTexture, Color{ 0.0f, 0.0f, 0.0f, 0.0f }, depthClearValue, {} });
-
- auto draw = [&](auto& programInstance,
- const auto& evaluated_,
- const auto& crossfade_,
- const auto& tileBucket,
- auto&& uniformValues,
- const optional<ImagePosition>& patternPositionA,
- const optional<ImagePosition>& patternPositionB,
- auto&& textureBindings) {
- const auto& paintPropertyBinders = tileBucket.paintPropertyBinders.at(getID());
- paintPropertyBinders.setPatternParameters(patternPositionA, patternPositionB, crossfade_);
-
- const auto allUniformValues = programInstance.computeAllUniformValues(
- std::move(uniformValues),
- paintPropertyBinders,
- evaluated_,
- parameters.state.getZoom()
- );
- const auto allAttributeBindings = programInstance.computeAllAttributeBindings(
- *tileBucket.vertexBuffer,
- paintPropertyBinders,
- evaluated_
- );
-
- checkRenderability(parameters, programInstance.activeBindingCount(allAttributeBindings));
-
- programInstance.draw(
- parameters.context,
- *renderPass,
- gfx::Triangles(),
- parameters.depthModeFor3D(gfx::DepthMaskType::ReadWrite),
- gfx::StencilMode::disabled(),
- parameters.colorModeForRenderPass(),
- gfx::CullFaceMode::backCCW(),
- *tileBucket.indexBuffer,
- tileBucket.triangleSegments,
- allUniformValues,
- allAttributeBindings,
- std::move(textureBindings),
- getID());
- };
+ const auto depthMode = parameters.depthModeFor3D();
+
+ auto draw = [&](auto& programInstance,
+ const auto& evaluated_,
+ const auto& crossfade_,
+ const gfx::StencilMode& stencilMode,
+ const gfx::ColorMode& colorMode,
+ const auto& tileBucket,
+ const auto& uniformValues,
+ const optional<ImagePosition>& patternPositionA,
+ const optional<ImagePosition>& patternPositionB,
+ const auto& textureBindings) {
+ const auto& paintPropertyBinders = tileBucket.paintPropertyBinders.at(getID());
+ paintPropertyBinders.setPatternParameters(patternPositionA, patternPositionB, crossfade_);
+
+ const auto allUniformValues = programInstance.computeAllUniformValues(
+ uniformValues,
+ paintPropertyBinders,
+ evaluated_,
+ parameters.state.getZoom()
+ );
+ const auto allAttributeBindings = programInstance.computeAllAttributeBindings(
+ *tileBucket.vertexBuffer,
+ paintPropertyBinders,
+ evaluated_
+ );
- if (unevaluated.get<FillExtrusionPattern>().isUndefined()) {
+ checkRenderability(parameters, programInstance.activeBindingCount(allAttributeBindings));
+
+ programInstance.draw(
+ parameters.context,
+ *parameters.renderPass,
+ gfx::Triangles(),
+ depthMode,
+ stencilMode,
+ colorMode,
+ gfx::CullFaceMode::backCCW(),
+ *tileBucket.indexBuffer,
+ tileBucket.triangleSegments,
+ allUniformValues,
+ allAttributeBindings,
+ textureBindings,
+ getID());
+ };
+
+ if (unevaluated.get<FillExtrusionPattern>().isUndefined()) {
+ // Draw solid color extrusions
+ auto drawTiles = [&](const gfx::StencilMode& stencilMode_, const gfx::ColorMode& colorMode_) {
for (const RenderTile& tile : renderTiles) {
const LayerRenderData* renderData = tile.tile.getLayerRenderData(*baseImpl);
if (!renderData) {
continue;
}
auto& bucket = static_cast<FillExtrusionBucket&>(*renderData->bucket);
- const auto& evaluated = getEvaluated<FillExtrusionLayerProperties>(renderData->layerProperties);
- const auto& crossfade = getCrossfade<FillExtrusionLayerProperties>(renderData->layerProperties);
draw(
parameters.programs.getFillExtrusionLayerPrograms().fillExtrusion,
evaluated,
crossfade,
+ stencilMode_,
+ colorMode_,
bucket,
FillExtrusionProgram::layoutUniformValues(
tile.translatedClipMatrix(evaluated.get<FillExtrusionTranslate>(),
evaluated.get<FillExtrusionTranslateAnchor>(),
parameters.state),
parameters.state,
+ evaluated.get<FillExtrusionOpacity>(),
parameters.evaluatedLight
),
{},
@@ -143,17 +140,32 @@ void RenderFillExtrusionLayer::render(PaintParameters& parameters, RenderSource*
FillExtrusionProgram::TextureBindings{}
);
}
+ };
+
+ if (evaluated.get<FillExtrusionOpacity>() == 1) {
+ // Draw opaque extrusions
+ drawTiles(gfx::StencilMode::disabled(), parameters.colorModeForRenderPass());
} else {
+ // Draw transparent buildings in two passes so that only the closest surface is drawn.
+ // First draw all the extrusions into only the depth buffer. No colors are drawn.
+ drawTiles(gfx::StencilMode::disabled(), gfx::ColorMode::disabled());
+
+ // Then draw all the extrusions a second time, only coloring fragments if they have the
+ // same depth value as the closest fragment in the previous pass. Use the stencil buffer
+ // to prevent the second draw in cases where we have coincident polygons.
+ drawTiles(parameters.stencilModeFor3D(), parameters.colorModeForRenderPass());
+ }
+ } else {
+ // Draw textured extrusions
+ const auto fillPatternValue = evaluated.get<FillExtrusionPattern>().constantOr(mbgl::Faded<std::basic_string<char> >{"", ""});
+ auto drawTiles = [&](const gfx::StencilMode& stencilMode_, const gfx::ColorMode& colorMode_) {
for (const RenderTile& tile : renderTiles) {
const LayerRenderData* renderData = tile.tile.getLayerRenderData(*baseImpl);
if (!renderData) {
continue;
}
auto& bucket = static_cast<FillExtrusionBucket&>(*renderData->bucket);
- const auto& evaluated = getEvaluated<FillExtrusionLayerProperties>(renderData->layerProperties);
- const auto& crossfade = getCrossfade<FillExtrusionLayerProperties>(renderData->layerProperties);
- const auto fillPatternValue = evaluated.get<FillExtrusionPattern>().constantOr(mbgl::Faded<std::basic_string<char> >{"", ""});
auto& geometryTile = static_cast<GeometryTile&>(tile.tile);
optional<ImagePosition> patternPosA = geometryTile.getPattern(fillPatternValue.from);
optional<ImagePosition> patternPosB = geometryTile.getPattern(fillPatternValue.to);
@@ -162,6 +174,8 @@ void RenderFillExtrusionLayer::render(PaintParameters& parameters, RenderSource*
parameters.programs.getFillExtrusionLayerPrograms().fillExtrusionPattern,
evaluated,
crossfade,
+ stencilMode_,
+ colorMode_,
bucket,
FillExtrusionPatternProgram::layoutUniformValues(
tile.translatedClipMatrix(evaluated.get<FillExtrusionTranslate>(),
@@ -171,6 +185,7 @@ void RenderFillExtrusionLayer::render(PaintParameters& parameters, RenderSource*
crossfade,
tile.id,
parameters.state,
+ evaluated.get<FillExtrusionOpacity>(),
-std::pow(2, tile.id.canonical.z) / util::tileSize / 8.0f,
parameters.pixelRatio,
parameters.evaluatedLight
@@ -182,54 +197,16 @@ void RenderFillExtrusionLayer::render(PaintParameters& parameters, RenderSource*
}
);
}
- }
-
- } else if (parameters.pass == RenderPass::Translucent) {
- const auto& size = parameters.staticData.backendSize;
- const auto& evaluated = static_cast<const FillExtrusionLayerProperties&>(*evaluatedProperties).evaluated;
-
- mat4 viewportMat;
- matrix::ortho(viewportMat, 0, size.width, size.height, 0, 0, 1);
-
- const Properties<>::PossiblyEvaluated properties;
- const ExtrusionTextureProgram::Binders paintAttributeData{ properties, 0 };
-
- auto& programInstance = parameters.programs.getFillExtrusionLayerPrograms().extrusionTexture;
-
- const auto allUniformValues = programInstance.computeAllUniformValues(
- ExtrusionTextureProgram::LayoutUniformValues{
- uniforms::matrix::Value( viewportMat ),
- uniforms::world::Value( size ),
- uniforms::opacity::Value( evaluated.get<FillExtrusionOpacity>() )
- },
- paintAttributeData,
- properties,
- parameters.state.getZoom()
- );
- const auto allAttributeBindings = programInstance.computeAllAttributeBindings(
- parameters.staticData.extrusionTextureVertexBuffer,
- paintAttributeData,
- properties
- );
+ };
- checkRenderability(parameters, programInstance.activeBindingCount(allAttributeBindings));
+ // Draw transparent buildings in two passes so that only the closest surface is drawn.
+ // First draw all the extrusions into only the depth buffer. No colors are drawn.
+ drawTiles(gfx::StencilMode::disabled(), gfx::ColorMode::disabled());
- programInstance.draw(
- parameters.context,
- *parameters.renderPass,
- gfx::Triangles(),
- gfx::DepthMode::disabled(),
- gfx::StencilMode::disabled(),
- parameters.colorModeForRenderPass(),
- gfx::CullFaceMode::disabled(),
- parameters.staticData.quadTriangleIndexBuffer,
- parameters.staticData.extrusionTextureSegments,
- allUniformValues,
- allAttributeBindings,
- ExtrusionTextureProgram::TextureBindings{
- textures::image::Value{ renderTexture->getTexture().getResource() },
- },
- getID());
+ // Then draw all the extrusions a second time, only coloring fragments if they have the
+ // same depth value as the closest fragment in the previous pass. Use the stencil buffer
+ // to prevent the second draw in cases where we have coincident polygons.
+ drawTiles(parameters.stencilModeFor3D(), parameters.colorModeForRenderPass());
}
}
diff --git a/src/mbgl/renderer/layers/render_heatmap_layer.cpp b/src/mbgl/renderer/layers/render_heatmap_layer.cpp
index 48249002ea..f1cce31ea4 100644
--- a/src/mbgl/renderer/layers/render_heatmap_layer.cpp
+++ b/src/mbgl/renderer/layers/render_heatmap_layer.cpp
@@ -159,7 +159,7 @@ void RenderHeatmapLayer::render(PaintParameters& parameters, RenderSource*) {
parameters.state.getZoom()
);
const auto allAttributeBindings = programInstance.computeAllAttributeBindings(
- parameters.staticData.extrusionTextureVertexBuffer,
+ parameters.staticData.heatmapTextureVertexBuffer,
paintAttributeData,
properties
);
@@ -175,7 +175,7 @@ void RenderHeatmapLayer::render(PaintParameters& parameters, RenderSource*) {
parameters.colorModeForRenderPass(),
gfx::CullFaceMode::disabled(),
parameters.staticData.quadTriangleIndexBuffer,
- parameters.staticData.extrusionTextureSegments,
+ parameters.staticData.heatmapTextureSegments,
allUniformValues,
allAttributeBindings,
HeatmapTextureProgram::TextureBindings{
diff --git a/src/mbgl/renderer/paint_parameters.cpp b/src/mbgl/renderer/paint_parameters.cpp
index e9f42d2579..33a741865e 100644
--- a/src/mbgl/renderer/paint_parameters.cpp
+++ b/src/mbgl/renderer/paint_parameters.cpp
@@ -72,8 +72,10 @@ gfx::DepthMode PaintParameters::depthModeForSublayer(uint8_t n, gfx::DepthMaskTy
return gfx::DepthMode { gfx::DepthFunctionType::LessEqual, mask, { nearDepth, farDepth } };
}
-gfx::DepthMode PaintParameters::depthModeFor3D(gfx::DepthMaskType mask) const {
- return gfx::DepthMode { gfx::DepthFunctionType::LessEqual, mask, { 0.0, 1.0 } };
+gfx::DepthMode PaintParameters::depthModeFor3D() const {
+ return gfx::DepthMode{ gfx::DepthFunctionType::LessEqual,
+ gfx::DepthMaskType::ReadWrite,
+ { 0.0, depthRangeSize } };
}
void PaintParameters::clearStencil() {
@@ -166,6 +168,24 @@ gfx::StencilMode PaintParameters::stencilModeForClipping(const UnwrappedTileID&
gfx::StencilOpType::Replace };
}
+gfx::StencilMode PaintParameters::stencilModeFor3D() {
+ if (nextStencilID + 1 > 256) {
+ clearStencil();
+ }
+
+ // We're potentially destroying the stencil clipping mask in this pass. That means we'll have
+ // to recreate it for the next source if any.
+ tileClippingMaskIDs.clear();
+
+ const int32_t id = nextStencilID++;
+ return gfx::StencilMode{ gfx::StencilMode::NotEqual{ 0b11111111 },
+ id,
+ 0b11111111,
+ gfx::StencilOpType::Keep,
+ gfx::StencilOpType::Keep,
+ gfx::StencilOpType::Replace };
+}
+
gfx::ColorMode PaintParameters::colorModeForRenderPass() const {
if (debugOptions & MapDebugOptions::Overdraw) {
const float overdraw = 1.0f / 8.0f;
diff --git a/src/mbgl/renderer/paint_parameters.hpp b/src/mbgl/renderer/paint_parameters.hpp
index 1a576b6c9c..28db87ed4f 100644
--- a/src/mbgl/renderer/paint_parameters.hpp
+++ b/src/mbgl/renderer/paint_parameters.hpp
@@ -69,7 +69,7 @@ public:
Programs& programs;
gfx::DepthMode depthModeForSublayer(uint8_t n, gfx::DepthMaskType) const;
- gfx::DepthMode depthModeFor3D(gfx::DepthMaskType) const;
+ gfx::DepthMode depthModeFor3D() const;
gfx::ColorMode colorModeForRenderPass() const;
mat4 matrixForTile(const UnwrappedTileID&, bool aligned = false) const;
@@ -82,6 +82,7 @@ public:
public:
void renderTileClippingMasks(const std::vector<std::reference_wrapper<RenderTile>>&);
gfx::StencilMode stencilModeForClipping(const UnwrappedTileID&) const;
+ gfx::StencilMode stencilModeFor3D();
private:
void clearStencil();
@@ -96,7 +97,7 @@ public:
float depthRangeSize;
const float depthEpsilon = 1.0f / (1 << 16);
-
+
float symbolFadeChange;
};
diff --git a/src/mbgl/renderer/render_static_data.cpp b/src/mbgl/renderer/render_static_data.cpp
index 24eed0326c..0814d6341b 100644
--- a/src/mbgl/renderer/render_static_data.cpp
+++ b/src/mbgl/renderer/render_static_data.cpp
@@ -39,19 +39,19 @@ static gfx::VertexVector<RasterLayoutVertex> rasterVertices() {
return result;
}
-static gfx::VertexVector<ExtrusionTextureLayoutVertex> extrusionTextureVertices() {
- gfx::VertexVector<ExtrusionTextureLayoutVertex> result;
- result.emplace_back(ExtrusionTextureProgram::layoutVertex({ 0, 0 }));
- result.emplace_back(ExtrusionTextureProgram::layoutVertex({ 1, 0 }));
- result.emplace_back(ExtrusionTextureProgram::layoutVertex({ 0, 1 }));
- result.emplace_back(ExtrusionTextureProgram::layoutVertex({ 1, 1 }));
+static gfx::VertexVector<HeatmapTextureLayoutVertex> heatmapTextureVertices() {
+ gfx::VertexVector<HeatmapTextureLayoutVertex> result;
+ result.emplace_back(HeatmapTextureProgram::layoutVertex({ 0, 0 }));
+ result.emplace_back(HeatmapTextureProgram::layoutVertex({ 1, 0 }));
+ result.emplace_back(HeatmapTextureProgram::layoutVertex({ 0, 1 }));
+ result.emplace_back(HeatmapTextureProgram::layoutVertex({ 1, 1 }));
return result;
}
RenderStaticData::RenderStaticData(gfx::Context& context, float pixelRatio, const optional<std::string>& programCacheDir)
: tileVertexBuffer(context.createVertexBuffer(tileVertices())),
rasterVertexBuffer(context.createVertexBuffer(rasterVertices())),
- extrusionTextureVertexBuffer(context.createVertexBuffer(extrusionTextureVertices())),
+ heatmapTextureVertexBuffer(context.createVertexBuffer(heatmapTextureVertices())),
quadTriangleIndexBuffer(context.createIndexBuffer(quadTriangleIndices())),
tileBorderIndexBuffer(context.createIndexBuffer(tileLineStripIndices())),
programs(context, ProgramParameters { pixelRatio, false, programCacheDir })
@@ -62,7 +62,7 @@ RenderStaticData::RenderStaticData(gfx::Context& context, float pixelRatio, cons
tileTriangleSegments.emplace_back(0, 0, 4, 6);
tileBorderSegments.emplace_back(0, 0, 4, 5);
rasterSegments.emplace_back(0, 0, 4, 6);
- extrusionTextureSegments.emplace_back(0, 0, 4, 6);
+ heatmapTextureSegments.emplace_back(0, 0, 4, 6);
}
} // namespace mbgl
diff --git a/src/mbgl/renderer/render_static_data.hpp b/src/mbgl/renderer/render_static_data.hpp
index f6c40163ee..ddf52f83f6 100644
--- a/src/mbgl/renderer/render_static_data.hpp
+++ b/src/mbgl/renderer/render_static_data.hpp
@@ -4,7 +4,7 @@
#include <mbgl/gfx/index_buffer.hpp>
#include <mbgl/gfx/renderbuffer.hpp>
#include <mbgl/programs/background_program.hpp>
-#include <mbgl/programs/extrusion_texture_program.hpp>
+#include <mbgl/programs/heatmap_texture_program.hpp>
#include <mbgl/programs/programs.hpp>
#include <mbgl/programs/raster_program.hpp>
#include <mbgl/util/optional.hpp>
@@ -22,7 +22,7 @@ public:
gfx::VertexBuffer<gfx::Vertex<PositionOnlyLayoutAttributes>> tileVertexBuffer;
gfx::VertexBuffer<RasterLayoutVertex> rasterVertexBuffer;
- gfx::VertexBuffer<ExtrusionTextureLayoutVertex> extrusionTextureVertexBuffer;
+ gfx::VertexBuffer<HeatmapTextureLayoutVertex> heatmapTextureVertexBuffer;
gfx::IndexBuffer quadTriangleIndexBuffer;
gfx::IndexBuffer tileBorderIndexBuffer;
@@ -30,7 +30,7 @@ public:
SegmentVector<BackgroundAttributes> tileTriangleSegments;
SegmentVector<DebugAttributes> tileBorderSegments;
SegmentVector<RasterAttributes> rasterSegments;
- SegmentVector<ExtrusionTextureAttributes> extrusionTextureSegments;
+ SegmentVector<HeatmapTextureAttributes> heatmapTextureSegments;
optional<gfx::Renderbuffer<gfx::RenderbufferPixelType::Depth>> depthRenderbuffer;
bool has3D = false;