From fdddafe980ff3f1b02f980032360d839574a8bbd Mon Sep 17 00:00:00 2001 From: OusmBlueNinja <89956790+OusmBlueNinja@users.noreply.github.com> Date: Tue, 1 Apr 2025 12:22:57 -0500 Subject: [PATCH] Added Normal Maps --- Engine/engine.cpp | 172 +- Makefile | 2 +- Three-Labs.exe | Bin 1805060 -> 1914832 bytes build/Engine/engine.o | Bin 12928 -> 133238 bytes normal.jpg | Bin 0 -> 368640 bytes vendor/stb/stb_image.h | 7991 ++++++++++++++++++++++++++++++++++++++++ 6 files changed, 8107 insertions(+), 58 deletions(-) create mode 100644 normal.jpg create mode 100644 vendor/stb/stb_image.h diff --git a/Engine/engine.cpp b/Engine/engine.cpp index c9142cf..ce28146 100644 --- a/Engine/engine.cpp +++ b/Engine/engine.cpp @@ -1,6 +1,8 @@ #include "Engine.h" #include #include +#define STB_IMAGE_IMPLEMENTATION +#include "stb_image.h" // Static member definitions. GLFWwindow* Engine::window = nullptr; @@ -14,6 +16,8 @@ float Engine::rotationAngle = 0.0f; int Engine::fbWidth = 640; int Engine::fbHeight = 400; +GLuint normalMapTexture = 0; // Global texture for the normal map + bool Engine::Init() { if (!glfwInit()) { std::cout << "Failed to initialize GLFW\n"; @@ -45,7 +49,7 @@ bool Engine::Init() { glGenFramebuffers(1, &framebuffer); ResizeFramebuffer(fbWidth, fbHeight); - // Setup cube geometry and shaders. + // Setup cube geometry, shaders, and load normal map. if (!SetupScene()) { std::cout << "Failed to set up scene\n"; return false; @@ -70,10 +74,10 @@ void Engine::ResizeFramebuffer(int width, int height) { int newWidth = width; int newHeight = height; if (currentAspect > targetAspect) { - // The viewport is too wide: adjust width. + // Too wide: adjust width. newWidth = static_cast(height * targetAspect); } else if (currentAspect < targetAspect) { - // The viewport is too tall: adjust height. + // Too tall: adjust height. newHeight = static_cast(width / targetAspect); } @@ -111,7 +115,6 @@ void Engine::ResizeFramebuffer(int width, int height) { glBindFramebuffer(GL_FRAMEBUFFER, 0); } - GLuint Engine::CompileShader(const char* vertexSrc, const char* fragmentSrc) { GLuint vertexShader = glCreateShader(GL_VERTEX_SHADER); glShaderSource(vertexShader, 1, &vertexSrc, nullptr); @@ -151,56 +154,57 @@ GLuint Engine::CompileShader(const char* vertexSrc, const char* fragmentSrc) { } bool Engine::SetupScene() { - // Cube vertices: positions and normals. + // Updated cube vertices: each vertex has: + // position (3), normal (3), texcoord (2), tangent (3) = 11 floats per vertex. float vertices[] = { - // positions // normals - // Front face - -0.5f, -0.5f, 0.5f, 0, 0, 1, - 0.5f, -0.5f, 0.5f, 0, 0, 1, - 0.5f, 0.5f, 0.5f, 0, 0, 1, - 0.5f, 0.5f, 0.5f, 0, 0, 1, - -0.5f, 0.5f, 0.5f, 0, 0, 1, - -0.5f, -0.5f, 0.5f, 0, 0, 1, + // Front face (normal: 0,0,1), tangent: (1,0,0) + // positions normals texcoords tangent + -0.5f, -0.5f, 0.5f, 0,0,1, 0,0, 1,0,0, + 0.5f, -0.5f, 0.5f, 0,0,1, 1,0, 1,0,0, + 0.5f, 0.5f, 0.5f, 0,0,1, 1,1, 1,0,0, + 0.5f, 0.5f, 0.5f, 0,0,1, 1,1, 1,0,0, + -0.5f, 0.5f, 0.5f, 0,0,1, 0,1, 1,0,0, + -0.5f, -0.5f, 0.5f, 0,0,1, 0,0, 1,0,0, - // Back face - -0.5f, -0.5f, -0.5f, 0, 0, -1, - 0.5f, -0.5f, -0.5f, 0, 0, -1, - 0.5f, 0.5f, -0.5f, 0, 0, -1, - 0.5f, 0.5f, -0.5f, 0, 0, -1, - -0.5f, 0.5f, -0.5f, 0, 0, -1, - -0.5f, -0.5f, -0.5f, 0, 0, -1, + // Back face (normal: 0,0,-1), tangent: (-1,0,0) + 0.5f, -0.5f, -0.5f, 0,0,-1, 0,0, -1,0,0, + -0.5f, -0.5f, -0.5f, 0,0,-1, 1,0, -1,0,0, + -0.5f, 0.5f, -0.5f, 0,0,-1, 1,1, -1,0,0, + -0.5f, 0.5f, -0.5f, 0,0,-1, 1,1, -1,0,0, + 0.5f, 0.5f, -0.5f, 0,0,-1, 0,1, -1,0,0, + 0.5f, -0.5f, -0.5f, 0,0,-1, 0,0, -1,0,0, - // Left face - -0.5f, 0.5f, 0.5f, -1, 0, 0, - -0.5f, 0.5f, -0.5f, -1, 0, 0, - -0.5f, -0.5f, -0.5f, -1, 0, 0, - -0.5f, -0.5f, -0.5f, -1, 0, 0, - -0.5f, -0.5f, 0.5f, -1, 0, 0, - -0.5f, 0.5f, 0.5f, -1, 0, 0, + // Left face (normal: -1,0,0), tangent: (0,0,-1) + -0.5f, -0.5f, -0.5f, -1,0,0, 0,0, 0,0,-1, + -0.5f, -0.5f, 0.5f, -1,0,0, 1,0, 0,0,-1, + -0.5f, 0.5f, 0.5f, -1,0,0, 1,1, 0,0,-1, + -0.5f, 0.5f, 0.5f, -1,0,0, 1,1, 0,0,-1, + -0.5f, 0.5f, -0.5f, -1,0,0, 0,1, 0,0,-1, + -0.5f, -0.5f, -0.5f, -1,0,0, 0,0, 0,0,-1, - // Right face - 0.5f, 0.5f, 0.5f, 1, 0, 0, - 0.5f, 0.5f, -0.5f, 1, 0, 0, - 0.5f, -0.5f, -0.5f, 1, 0, 0, - 0.5f, -0.5f, -0.5f, 1, 0, 0, - 0.5f, -0.5f, 0.5f, 1, 0, 0, - 0.5f, 0.5f, 0.5f, 1, 0, 0, + // Right face (normal: 1,0,0), tangent: (0,0,1) + 0.5f, -0.5f, 0.5f, 1,0,0, 0,0, 0,0,1, + 0.5f, -0.5f, -0.5f, 1,0,0, 1,0, 0,0,1, + 0.5f, 0.5f, -0.5f, 1,0,0, 1,1, 0,0,1, + 0.5f, 0.5f, -0.5f, 1,0,0, 1,1, 0,0,1, + 0.5f, 0.5f, 0.5f, 1,0,0, 0,1, 0,0,1, + 0.5f, -0.5f, 0.5f, 1,0,0, 0,0, 0,0,1, - // Top face - -0.5f, 0.5f, -0.5f, 0, 1, 0, - 0.5f, 0.5f, -0.5f, 0, 1, 0, - 0.5f, 0.5f, 0.5f, 0, 1, 0, - 0.5f, 0.5f, 0.5f, 0, 1, 0, - -0.5f, 0.5f, 0.5f, 0, 1, 0, - -0.5f, 0.5f, -0.5f, 0, 1, 0, + // Top face (normal: 0,1,0), tangent: (1,0,0) + -0.5f, 0.5f, 0.5f, 0,1,0, 0,0, 1,0,0, + 0.5f, 0.5f, 0.5f, 0,1,0, 1,0, 1,0,0, + 0.5f, 0.5f, -0.5f, 0,1,0, 1,1, 1,0,0, + 0.5f, 0.5f, -0.5f, 0,1,0, 1,1, 1,0,0, + -0.5f, 0.5f, -0.5f, 0,1,0, 0,1, 1,0,0, + -0.5f, 0.5f, 0.5f, 0,1,0, 0,0, 1,0,0, - // Bottom face - -0.5f, -0.5f, -0.5f, 0, -1, 0, - 0.5f, -0.5f, -0.5f, 0, -1, 0, - 0.5f, -0.5f, 0.5f, 0, -1, 0, - 0.5f, -0.5f, 0.5f, 0, -1, 0, - -0.5f, -0.5f, 0.5f, 0, -1, 0, - -0.5f, -0.5f, -0.5f, 0, -1, 0 + // Bottom face (normal: 0,-1,0), tangent: (1,0,0) + -0.5f, -0.5f, -0.5f, 0,-1,0, 0,0, 1,0,0, + 0.5f, -0.5f, -0.5f, 0,-1,0, 1,0, 1,0,0, + 0.5f, -0.5f, 0.5f, 0,-1,0, 1,1, 1,0,0, + 0.5f, -0.5f, 0.5f, 0,-1,0, 1,1, 1,0,0, + -0.5f, -0.5f, 0.5f, 0,-1,0, 0,1, 1,0,0, + -0.5f, -0.5f, -0.5f, 0,-1,0, 0,0, 1,0,0 }; glGenVertexArrays(1, &cubeVAO); @@ -209,11 +213,17 @@ bool Engine::SetupScene() { glBindBuffer(GL_ARRAY_BUFFER, cubeVBO); glBufferData(GL_ARRAY_BUFFER, sizeof(vertices), vertices, GL_STATIC_DRAW); // Position attribute. - glVertexAttribPointer(0, 3, GL_FLOAT, GL_FALSE, 6 * sizeof(float), (void*)0); + glVertexAttribPointer(0, 3, GL_FLOAT, GL_FALSE, 11 * sizeof(float), (void*)0); glEnableVertexAttribArray(0); // Normal attribute. - glVertexAttribPointer(1, 3, GL_FLOAT, GL_FALSE, 6 * sizeof(float), (void*)(3 * sizeof(float))); + glVertexAttribPointer(1, 3, GL_FLOAT, GL_FALSE, 11 * sizeof(float), (void*)(3 * sizeof(float))); glEnableVertexAttribArray(1); + // Texcoord attribute. + glVertexAttribPointer(2, 2, GL_FLOAT, GL_FALSE, 11 * sizeof(float), (void*)(6 * sizeof(float))); + glEnableVertexAttribArray(2); + // Tangent attribute. + glVertexAttribPointer(3, 3, GL_FLOAT, GL_FALSE, 11 * sizeof(float), (void*)(8 * sizeof(float))); + glEnableVertexAttribArray(3); glBindVertexArray(0); // Vertex shader source. @@ -221,6 +231,8 @@ bool Engine::SetupScene() { #version 330 core layout(location = 0) in vec3 aPos; layout(location = 1) in vec3 aNormal; + layout(location = 2) in vec2 aTexCoords; + layout(location = 3) in vec3 aTangent; uniform mat4 model; uniform mat4 view; @@ -228,40 +240,57 @@ bool Engine::SetupScene() { out vec3 FragPos; out vec3 Normal; + out vec2 TexCoords; + out vec3 Tangent; void main() { FragPos = vec3(model * vec4(aPos, 1.0)); Normal = mat3(transpose(inverse(model))) * aNormal; + TexCoords = aTexCoords; + Tangent = mat3(model) * aTangent; gl_Position = projection * view * vec4(FragPos, 1.0); } )"; - // Fragment shader source with red light. + // Fragment shader source with normal mapping. const char* fragmentShaderSrc = R"( #version 330 core out vec4 FragColor; in vec3 FragPos; in vec3 Normal; + in vec2 TexCoords; + in vec3 Tangent; uniform vec3 lightPos; uniform vec3 viewPos; + uniform sampler2D normalMap; void main() { + // Obtain the normal from the normal map in range [0,1] and remap to [-1,1]. + vec3 normMap = texture(normalMap, TexCoords).rgb; + normMap = normalize(normMap); + + // Calculate TBN matrix. For simplicity, compute bitangent as cross(normal, tangent). + vec3 N = normalize(Normal); + vec3 T = normalize(Tangent); + vec3 B = normalize(cross(N, T)); + mat3 TBN = mat3(T, B, N); + vec3 perturbedNormal = normalize(TBN * normMap); + // Ambient. - float ambientStrength = 0.3; + float ambientStrength = 0.5; vec3 ambient = ambientStrength * vec3(1.0, 0.0, 1.0); // Diffuse. - vec3 norm = normalize(Normal); vec3 lightDir = normalize(lightPos - FragPos); - float diff = max(dot(norm, lightDir), 0.0); - vec3 diffuse = diff * vec3(1.0, 0.0, 0.0); + float diff = max(dot(perturbedNormal, lightDir), 0.0); + vec3 diffuse = diff * vec3(1.0, 1.0, 1.0); // Specular. - float specularStrength = 0.5; + float specularStrength = 0.2; vec3 viewDir = normalize(viewPos - FragPos); - vec3 reflectDir = reflect(-lightDir, norm); + vec3 reflectDir = reflect(-lightDir, perturbedNormal); float spec = pow(max(dot(viewDir, reflectDir), 0.0), 32); vec3 specular = specularStrength * spec * vec3(1.0); @@ -274,6 +303,30 @@ bool Engine::SetupScene() { if (shaderProgram == 0) { return false; } + + // Load normal map from "./normal.png" + int texWidth, texHeight, texChannels; + unsigned char* data = stbi_load("./normal.jpg", &texWidth, &texHeight, &texChannels, 0); + if (!data) { + std::cout << "Failed to load normal map." << std::endl; + return false; + } + glGenTextures(1, &normalMapTexture); + glBindTexture(GL_TEXTURE_2D, normalMapTexture); + GLenum format = (texChannels == 3) ? GL_RGB : GL_RGBA; + glTexImage2D(GL_TEXTURE_2D, 0, format, texWidth, texHeight, 0, format, GL_UNSIGNED_BYTE, data); + glGenerateMipmap(GL_TEXTURE_2D); + // Set texture parameters. + glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_REPEAT); + glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_REPEAT); + glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR_MIPMAP_LINEAR); + glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR); + stbi_image_free(data); + + // Bind the normal map to texture unit 1. + glUseProgram(shaderProgram); + glUniform1i(glGetUniformLocation(shaderProgram, "normalMap"), 1); + return true; } @@ -295,6 +348,10 @@ ImTextureID Engine::RenderScene(const glm::mat4 &view, const glm::mat4 &projecti glUniform3f(glGetUniformLocation(shaderProgram, "lightPos"), 0.0f, 20.0f, 0.0f); + // Activate texture unit 1 and bind the normal map. + glActiveTexture(GL_TEXTURE1); + glBindTexture(GL_TEXTURE_2D, normalMapTexture); + glBindVertexArray(cubeVAO); glDrawArrays(GL_TRIANGLES, 0, 36); glBindVertexArray(0); @@ -313,6 +370,7 @@ void Engine::Shutdown() { glDeleteProgram(shaderProgram); glDeleteFramebuffers(1, &framebuffer); glDeleteTextures(1, &colorTexture); + glDeleteTextures(1, &normalMapTexture); glDeleteRenderbuffers(1, &depthRenderbuffer); glfwDestroyWindow(window); glfwTerminate(); diff --git a/Makefile b/Makefile index 432634f..8808db1 100644 --- a/Makefile +++ b/Makefile @@ -1,6 +1,6 @@ # Compiler and flags CXX := g++ -CXXFLAGS := -std=c++20 -Wall -Wextra -O2 -I/c/msys64/mingw64/include -Ivendor/imgui-docking +CXXFLAGS := -std=c++20 -Wall -Wextra -O2 -I/c/msys64/mingw64/include -Ivendor/imgui-docking -Ivendor/stb # Use this to link against the correct import lib LDFLAGS := -Llib -lglfw3 -lopengl32 -lglew32 -lglu32 diff --git a/Three-Labs.exe b/Three-Labs.exe index ca11185f97428b5d463f1f1b525b14e29bb2ea03..06a56497169af9ecd9537fdfcdf7f8b6edd71b70 100644 GIT binary patch delta 470348 zcma%k3w#vS_5V(?fg~i{jRZvn3A(n4fF=r>6|fmH3$wUUl!w+=!Pp4J3PPfwG?TEq znCUP{Y^<@Zwfd{=&tJ9D->)^`dpAHH_{u}xJ^~8t5P1tE5wid9xigz=0=EBrKG~hQ zk8{sG=iGD8J@?$Z{^uTTIa*v@arws?-#%=6^itbvqiwchwjbGs#l?-con=Cx?x%iI$WsJ0aSNrm>E*Wjl z8DYzOX55G&j;3^*JoK4ym(`Zdzcg`J*Y|+zK=HGz<`2S{n>yy;*?|Ot5=R;Re|a`r z@Y>}MEi7JWv$cE`XR|Fseh0qiJ8F&!m)^u%1_rkIsBVf#ldneBKSlvve7|r>&6)Tsk~{E9J*dB=W~}|voBlop&&QB972i#$ z9`lz+;9WQIl& zSc})b7d7_f-H9V?Mdi5#_mnWXaQ0MLXerN~?Y7y9i%{)4lvGpyGB(|&*#g1h{I`f3 z;m0O2TR43z1K^S8P(r&%bwuAkHs7yugeU!IIJG4`6+e0ajd;WhC?r+R;h7q5Qx+gCtl_0%2s(rjwNYxJrmIFKo6iC*;~XNIiL zb;@2{a?TEyPhd8Umk9(}<$M5_wQ17Z={4HW;#sKa+Nu0rmj$`7Sq|-u51&MFSv@YR z2?8=b>Xz_cp0cGNaG3eOAZh`Q|1)|hOxQn$nx3}yt@IjC;w_ia+w&gvkuPj=R)Z{T zk$sy0IAQIW^qQ9wokNiw9yXrUe3Uq9_JWP+Hcl;dQ~333m`zl7%KFH-`yFUK6#mvf1vMKS%a`n;~ms{%`yUYX7N?={1v*u2nEzdTgLZ$shTu@wic{PWjhdZGU5hed6}gQ=s9VON-bm!Fv3Lr5 zkqBbHhc6H|&jzAqf*4z}M$~Lg9y8`ISu`f-FMJK^R9AEPWMgf{y;-crKCCqPUWe@@ zb0jD|tY+P?@#Ecpfkdk(irCShN9{VvemXh7huKa@%;9xroM4XC&dihSo`&$4zYMS0 zH|)Wx%Qzp#pVm9{EdZdipipP^IE!F%k4YIrI z*@%RHA@yxi&a%2I{ICV#UV`v9UcNMPQe>s=HA3o$nl-5x-C`yN*?ld9@q_&Jz7QKR z@^=21mO$Tcix$A1(I!gw5x{9(tfnnBd-fT^1MQn2zT>YP#9scGmO$TcLq0i9>nsrW z5QtBygqxLqLmzvPGV3T z`Vvzw<8hVsh;B`s#-U~I7g=U2{&yp7+C+j179@=3;L|2Qg73zJ>+y-dnp4BmQp`sr z<^ZXS*!yXxLHx{+#4-)SYu0I2vzOfvhp&qrSHzuSH8(o4#+)+2rf!=LA&|f;H@oXN z9?~ZNH%hE_jG=;ma9l}WA2@Cqjq)P93qTdNmRRxEAgi#+|FAVh8RNp^R_FOW{4 zAH+9F;R$w6D4KUC(%5wgh4UP?C&mFt>iu{+$$r*^o>HCbk#BsCG0le?3MAyBK<78r z_*3Y^{B!5*QJX}yEvaSYB#hVGjTmc6PMdh9#}!hpbO(Yf$B6F`+loi>ERn6>n$w0_ z;+Za2s5DbjcW$DwMkP=363COXnj}|?$o{y=%!Ul19-7(O`FT;%wd_Y@{lqLAAEau_ zCQ7rCsy*t5?m%YBvGJ^rNU+yJHkmHIKuq z$%&nr)n3h3;A&ctR-n%oysE>^>TF_rhm=(B3ni+vN2#*I*F8!ZE~+hJdl=*_{=};$ zS{+h|T7l+bDJNLo9l=EMcw)$KY$O8!@A!Oth%bnwL|-?fM|;Sy`?}-lF)n1p<+S;_ z1@_x|p#^=l5tkyHimLgnlgT!mkkt>_2haZRBuq<1fwq+i;e9Be)hwv6*{0OojZdcN zhtWuU&3$G865Ya;X1hq~hA=fwuQO<;BYf8GQTp$??T@xEM?En691_IQR| z*d_~GS)CkLk&I8FVipP~R?LcHb$Rg>)8jQC!3EYTf0*K%i`Uhqnoq)a5qs3<9gl~2 zA0ec1gpk-yS4vF*Hyt7Y|UP0K@mr&RN@?_!0sRP#NAl=cpvA*dWyYgfE)Hj-2h zO63($)gEY8+G#R?EX1&|+MJcu55rSn`>6FBX&7LPB=R{81SCzCi7d>@zYVfFvUf7> zxz^(`YV{_Wp%e2;)zB#%3y-}Hq)av7Ze6%wUsN+ zuyF-okX=P%XP#*}WXkF%p2D3dBl}8WaA<3lCZH;7&js;SoGh!2a@G#lSF2${rCbJk zzzaD{msD<`VRF77z)S=@>dtVOS`c2OswV0K3zi`rgXL(}_Z~GIeg}og)X{Fsl=bw? z$b1LDyEZAnflv_Hvp{`q5Rb7?`bU{KUz{h-<^3rC)|P0qxz#P+!rd6L9(AkOdai)2 z-{lS*F1^ZA*dnVR=j@SvhXfB>-wuKDsGk)C_LN)(qfByjmUPMGn+XDSND=Q7?-w7~ zSdwclLc$683i{|vtIR6ue#mi3VPU#paLMv6V*`2h(9U+C8zmSdvTIBTxDgfc(JP)Rn+Z zs0~_rg)a)SJ_kja|L-u9JnA8@y3c69qiMN`S`xt&0rM0Ox;RV+z*$ev0|#tEy-148 z|7-BTt=|z5efzpteZFOa^A zDs9r!@5EQVfLfck4#gv?oZDKYu%#_UY+-8=TMQlbSeqRmE%;cvwTM03B(k)We1bKU zqcaq}e!dxf3)q=h2TtF`ogPhowGoEH_PFvlb(W?AT;QGD98`Rd~+Ez|>5 zUSIJUSQ+1!Kbqzmys7OXS6xOPIu;%6H7^xit;mHhI7v%r|8fTL2Rea6~ha%}>=xn;$6Y7FGJXn4X7_!F`@pxuO zC^ELZhfl2uXWBwNW2afqEupTl9xx)W!c}pHP$9-Oi186w*d@8Pv#JMboih`i3JA1_ z)DUT*O}^fttdarpdu903=XXI!_oxuJN4LGV^x~x#hr;ni5_@#Zd!;?4J^D(FvSn>F z>z#Y=p3(P=26NCAA_$UBy;t*H&38p^wk(Je%OX_l@Ou#(JuEv-Z~IB`6?*-qU;Ih( zsg0#=^s$Evwwo<&!rOutJ}!hJ(Uj7o^^~~N94u&P|A%qx8~Nq%UpetroFGP4q_1Eygfe2tzt; zZn=Y{*~@7-cwH?lAc1Hq)P9ezqe~9$OF+7;d($$EEnrlPP{`%qj)D$gX~oWEEbU!q z?dbnX@hTf_SX-bYOJ^^j&%6x!lrykmS(>*D1GAo<9og4YWLfev@?C75XT5dJ^H^Qj`X9F$~B!@v!R%MZ{Cw8&x%E5ZzQPf-`M@w#v? zKBxq8P;u#5z%O>9rG+Pf#kA)ZI&8!Qg0*~~ovMCGA7?1-96lBsfcrfj&g~>NeoUF0 zD18?_ZA03^5Ir5F4-$b>Bl7{1mib#yYZp+}3uM+r_nr#}XBZ#%tWHtFrA z+8Fme=}x?TkAJWZh@s{u;NcnMoJGQSc;1JiJ)h#E_ZwvQYyle&CL{e@{1fYYKBM*? za?YkAUsD3+o#j9k?52-zk}(BY9RSvB$^MgU=_4c{OR(TvI+qL4k}g!FLcGI7U_zGl zJOXk9)6elZ*Xh9H5~9}9E!4~*l-W%Wm_Pg40|RLsLq<&^vE^S=`%AXred!T=EZK?d zg_vp~*eJIdy&$SA{TL5NC<{tuA&KO1s__Xv7E;}XO(5;!V^k6pSbPvki@%`aP%|_{ zI9H%m*g_CA1Wm3i$7B669ire<+T)r7am2K9RwdEdSNf+64j{|D8KkCJkyY* z3?PTb`G|u>Kt+fcnDxPEV&Y^uSH46^_nFgv!#DvJ9dN)?_1PqB&TqLP4z5590$V2z>rc$q`QZ$6Pq(Wx7WRlEsO@SOR?okqpUdRle_j-?@ z6#9oT#t8z^qVd??r{) z&*+WBarr@dr3Mb*Z3)y&kCO&5CnZSVBLN=3o}da50(6Yz4?`HbnQ&;Kk8h|*ke+Bj ze*=&`#7rm_-Zl-eUMfxRW|K=gfT6_M$5Ehukm8|22k6nnvw>rfjmAzQt%n9^uW|xt zEFn%VY3*y5bo|4l_DCV|W*(-2W;O_b7`eOwXeo?Y_Aq38DJJ`eA^r zxw{A=L(|g&sEkF(Te=I+G>Z1&9sQoa;A=b}b149AA4e9+Z76|KivV$Z1~wk><=|h- z+K^>EZy#kQ?V%*|c{?Ogjz}YlPGO#LQb$7Zg*r$=_B|DEhkMi*HuO<69_B#b;beYNLonSlLe+hmu*v98}G>Ih%ac+-ZP9_L6X; zn8FLq#LA95lou*YiwgxN26IfF1kZ8#p$Y<+*${sF;^9~-Tq|9TK*(i^C<8=^hD-3WUYp3$>VEU@Fmn>X2zbv99JM%lGT`> zjW;y3qai=n2B_*g)SRrERjf9EnEX7eTahaZjh(w=tULHwe5=T-!O<RX)o5#k&ftsa1LKsHeq3Dt|vc230h)S zpxdILOL4U55i9ZpWXG|}_mJ(@e;VPA9Iv`32D#eL-;KM9R$5q+2$DYcPAr7x3K2=b zk^vCX^XOHGzRt}PXmRCnZ7TUxw_lF6oPM`}#TBGvZc^`U`rM?5o^mHveHZC-)8b4B zv}BFTudt&hK{%J9U0`)B6%9zjlFOkWy;^)H9%yc)Es@T@6EWdCqTUrhfX{dqs6_^R zFut&`a{5eN$~&h9;aBns^=xbzvTO}fd3*#u&gpS*vBXOiQh6M`+3883C!~>W9u@+@ zRc(+AazUZvqA#2vtUM;EwdKD|yhQ0kut5?*2drY_P*1e#9pd%GjkjM!;xV#o8u+TG zCf?$}Zqy&1Pq$U~dxi*qwMlI~vrB{np?$B~+8z$HiA)ahmDm&G`7RoO%((*=XI2QE zX%A0V*n0aKBt~XCY}2)rHSJwii&u^0Ek13w_+R*njJ$@o7^NsD*v1DEdAXmNx>jFRo-0E55g z*zzl7?XGN5I3{OpRa+!i{qoe#3FMj*f|4t^VjReO3Se(B!TyrKo=D?RJ747#S2w{= z7%ojlvlxw^sqo*<%p{kNuv1plnc0@V@h;M977nDU`t}*QJKvqt=7D!QS=6TsqPjpY!SQ7HjQ>3OZNiF-|wZqPi~tEByS@m zbJgtrzE@)n&$mo{^>*3!eOk#g+!2rygeU%e@?GaQ_#L(cJao>h4eg7Yct?~M>T$JE z2xjeS$4dR(YCHDK$=NRZdeWHx4V0JEX1Ep9_N|I9i>gw0_aI}uBd}|?)53? z++_~pK(^5cFO^4MiCyWC+!#c;NDjur!LEYBR8g~}+xb^hw@d1$ zvI^ZVxw@d;xziE&i$b#q+(7M<@@vLQV9I5SufJ7+0Gu@*L@Kn;T``_qj9l$qXEo74 z{X|r^DQAX9 zx4PS-9>>6O=NxwDd?V_&$2uXf^){j6i zQGB0wojtm{NS%EaXl#N>uP%c zk4TYZYM(k!{v%11yWnG=1$$nV&x&tZjF5YI+iio|{s8_Y&;gV;8GyF`gsl+Xb~9KF z3JtZ^71=hyMV|=^|49r9L{fx-BEdiX6N$O zVaeNO+pHfJICr$!eo6n!g$QktcWzX^2N8G31&Q1HABZcux|#p~zNd~4AnqFC?O-f8 zdrPSQT)r-Vfc-q~4np88-)QaU^E-q1oN1y0Ns3{0pm|kIe>tFBqI_;ddf++NXZDIb zmWuP~7{)WcIez&lcgy9E4vC zYBSkvQ&RU~F+Kw%nbY}ulQU=*N&utqG&HZ-&SNG+W?{JTL66~94~8`J;ik}dYog(g z@z#v-#-DpJ=-7s!7~1QQk`Rk9{Vdl78?b?Z(f6e&92Q+?nct87bxA#jW=yU?JErG@ zD^>mFB-g=`&y9OgkRr?U$v?gU7Q$x{SO|LR{vFKrqwq^Z@d9%p4`sxSqs<9r$@P3f zaiVl&G7NZ1S%(rQQ>{3payueqS+-%FG z9q>MxiHQvvkA3fK9^Mg+4Y`yeKGKWt<%wogh#3;%>WlfH5@6gO*c~emSy3eWa@u$e z9zoJAxfC8I()p3Omau|E@K#1Bif3Bg>W5;eb8P2pq~fA0S1egIPa+nSUbP{7doOyg z-8w2f!+darr_n9=)l1)dR^A&cfLe;k)6t zyJ($8k6GO?1TTR-9X0=gr8%BLtV&yCp_Rtb)d+fVkOKEf&n^&TjMJm00?><{3%DuW z2pnq1ZBD)n0WxY!dxy(j$*L|#OJvi^zHUc}!7Vm3V&^?VLDu2l72hTEJ352l5r&VX zrLR@z25f30RMxYi4T!;9enET)4_LsuApvP_^$0D-4v5(7T2}~glDgL|v}biI>JFie zTkGW+C{IYszAi_}Yhq*h0wlmEKp{e0F`QHPqv4t&X9%_UIz zW@1^tr3X8&j8Fmd(>^2Sk2!rEc)ul{c#kz(C;ZVIG4-o_J^gY?-PRf@-}kq_fkXR~ z$`8()XR{@3N!o$!!h^IpFF*JZ90%q5Znyz{prjskM`)it6tS1@J9Z4o2N?p=%)*IK zMF)8RWT+>x{oq?fdnsuj7FKd$q@8+ZA%>1kxI-3tu<;1mmL4;%g55$ZNIi97J4bjn zAv`jQuyGmkITtM>ghIJm5z2K9NP0uxaP7us?kI#)u=VhFbP1OReH|>}7~;HK^`)sf z!I%+`BF&Nz!otb8^!wqqY6(G1ut8c8chCZoTy!P1(z3`Vl5)gZ-2(}F3(BVcbLCW@|S%SNL>=}{;X(f7Th z_(79uSQ3I>O)#%tkV#Y^AnRlZhzBl!-NM%Lp0OaDawAAet3d}z3qr$wBxZ>Y2rjLY zxZJcKa;tZYf;`yX8bTN(JhL@?OzUnX9xARIU6G}N(IUzjWFi(Sw)rfkT*ryRE8 zi=c2aBXcsa{(e-OlMQPBRMvb!K#`~TxG&Aa-oHej)l$}-^u#TCN}XOjtHt!LaiOM*`|NoFe(QeJAb!skVI0B9kI(dpl?K58vmbmb%qVLR~i?U@s8O(nj z9(;$A%X;G3+6+9K3{o!bgIjzhKvH1x&B&#}q;WiD7v~rAT}6;?xrzlY!-H2Z%=AVe?vYuq-cjBRs#V{IKU1nazwI(_r^kGx-Kdf%ZR1`mr z_0Ck(KZ5T;9DExb%sC9%`r!YESu79_#QU7AU7Tf#$qcw!iHJrqaO6$|<`(axa%)<{_XTZmdV znQ!P2MCQOu2WLQ)D4ItJhQVx+JKPO2Epq(4dEh~1BGwRW5AyVNlt`>dO6;_=M$Ca zAM1;UKP8aVFD72K!yMUsD0tOB2Z59EV@_E=9ubp6Jd2PUX5ocfxIhEs^tV{2T)2gc zc?)H{fjPW^Hs;?2R$ZVA=QU6=)dGHD*uMc78s6NwQ!}Jtgz`LC@D#)$+}U7CNA%sG z!B;K!|Xs9X9g4|9i7P*H_~w}uevw<=64Zrwd7J5vE`eoi~Z&icZAt|`^Sn3KD_#B z=WNgWQJQm~6fhD@wt>!y&g6i=s!_~U_Wx4QU zcvTy`LbtCcam9nD>#@1E7&S5b533MPBNQ&M1h2w2^t5UewHo*ZK4nFL+Xx|WfMgDICH)A+f$S(ONb4xU+I8!a+s!Qf?Ez&hb7OnI!QPOj$`ALsq%? zP&kgtDb)F16r?j!uL7p-j?m_uWS`BWJ<+PEC5R1)Xc(k5-bXol@A?GqOGbgs26>sd z{tSOjiAd3T3iz@s+(Jn!c)7nt%TfBqPa-#SfFcnO39nK?H1JcrgBnB()Ad}77Lg!q zGkw{{(|E6a>}dQIii}YkXk&rluL zg_6D?9|u4WOaM-5efd5bV{C(W&Qx_PDSi?)3_W!_jk|F90m=qGWe0?k8x-%971_-9 zzeo}*ZbVZaOeoacn^toxenYsqK89KNU)Ja;@12DJz&U% zr?D`5)8^Ku{>vTM!vaqtoq%3#0cC4sbYGj39#BB~qd5wN(Ghfm z4|Pk2jA2jz9T_k(^^yA~V~0;0y+)h#G;jDpH0)K6c?*xoowG6 z0+|Dl2Ayex?>NtjvG>w0-mdUnIC%jx=^c_3BL|K2n=qnl6RSE1l0ZP2CPF^6{r4f8H5Fnn+h%B^CeJzk)8p|j!6Z-?6yqX;?X5CDsL z8?-|M;An!hLcW8qrQ17jMhLDpvHj4v771Ejz~=KYPX59p!~y+LlO!`XbCNV?fFwO9 zIZ5~ly`pNjiokW=%jJ8`G11nmVCJW;x>32B2=M$?&}I{1i&0bgiiey=zh261X{G>n%wpiek zL72!_FeoJFH2Ro|Eqv!KVyGig6oQoS6FdqaRed?wja4Z2zJessdg|4iIEj8S7D1Zf zT_;Q$HKWfa1)8bHqqI2=BLLlDnxCLV8Kom}Hc#{e6al++s<@G_di0S?$&dB+wK>=QLaW&jH4m%jE)&HSN}Pueu@w>#jRtDKo_jG|TEan%`Z4T9Yg+ zodi}J;VC=@AMN$BD?f4hqq24@w36z##{i!c3!k%~ zFS4eYS#v1s_%RdJy~yH&%Gjk)DRnC${?L~u=QdN4HiD>%9iQ+tqmPb8o!R|ELEe1_ z!FRF619yaLd&zkA{!Oy4QONUS z<#7d=HE`vz{1bCU9QXs^AuP?;!o_OZ+0j-T?4qV3nGTeu@s%|_Z|%&fj#=uM?Ofa6 z4kpT5Vj9wFnh2(=W%-BDsfyhEjGJgg`hF{IV(q++UB+6;1_RcTappT8VJ>4B@E z64Su}LzC7)SO8JO(RI)`uAB2P`B*9B;lLs@>fvYuANYboGieaThj-iL>;i!3x02xP z06)3U1qF=5c;0o#i(*dpusa79_}7~Y)m29Pn^+=(Yk1_tfM ze^AEh^@+NzK;7(BHx=m1?16J7nQ|)D60JDRc(UX;7FD$`?@CIyJc;}yS@Fd(4t7Q6 zlb`EGZ9e>5%wI#Gw6#I{nzEM2#(ZS2n{0lL(lLrMrHb*LHKfD`6kWbcn}KB?`8K}v z>ZPE{ZJ^4GNnQkz%|{R!ssolh{yCB@;W;ykY(7PiO&_`NGFW-4!x%|)G*^3%=6VoahLETJy#$SiyCJ&Fg!iEW z+hN5GroQKH5LS16=m2cA(27T8%nuNPAn;&yg3!?CnIli4_E>h{bn&;a*`vX6nO1C^ zeydA{#h(_RC zRoU330mUARp_p=l#s?=^*9A!yIgex@Bq&E*>7y9J2>S*c2l&JBiTxDYPQy+Cit0a2 zVc`C;euO#6Zn2so*Fsbw5V=gH`n)VO5XE?BJO5=Kv4!#t*OTs6cVWM3Bc4JX4#a

b;j)51SBS3|4qGdh2^(o2Z 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

bBb*$U8WJaWnXuEhb*}WU#z*PKEC+p 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

_)O(jqt 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 delta 364330 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�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%0D5I>VH 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 diff --git a/build/Engine/engine.o b/build/Engine/engine.o index cd0cfc7c6d67be9e06798c49afadebab9e368866..56a3314d8c7d4871500503fb815e395594c92b6e 100644 GIT binary patch literal 133238 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 delta 5182 zcmZXXdvH|M9mmh_W_PpEB)dRf1QJ4;U~D7V@DzC@DFGIFn3gx;kwDl4$O{CEyfzTA zz?zVd>TzJSN^_@ulyVud(OLR6$GgLoT7hA1f;SW&*JTubWS z5QQ4?qIFt-^2z*K>eae6CF)KO(fX_GsQV~RWk-viLfpy_t^ZDo-ikW0Jw;m|>ff^r z{0o@e{Z$~5BHE@>Ql2kbh;JZ2comA0!n}On&<8ai9&Oh@GA}PJZh2}QQlYlRRiO19g-t^En?@&~;xdK*;IElfNm=D@VZYrmzgKH4)=I!shx>U1T0xh#bUpX~E>DEk_tmX1Gmu%)T=#uXQXn=LlB`*f(m7%JBa(D{! z&*h&C&!EcIu>voaqE3%D@xEGr-n72a^36)hNayDAsHLeE>P3m3orPN{&LO|7q_i0J zfp)93;P7=gE?(=&UhkQ=HfYfxYH=&i^a)#>S>rpq51hT1nc zagk@<(IQXIO@v0w&SH<(>4*OHwq60xS6^_;GZ1*& zQBTgPu8ZO3Vjal6%V+>r^{Hi4;|#QfoC&gEIrWjf7g5|;wXl)ejW}inDKQ*7viRY{ zLm2UCQZJo)k{JO?Ag?^ToYG`$HF{kjz15T~gLUMVyQ|3~H`Y;%rh)bFJX4KFPc@~; zu{H3!TSL83r@n@gETKzzrj}ym+8W%xW17kYEk*`w5wDgXKd+@Y*{>E+A~!dplySuU z>@>HYVjpQJK%>k%eUjmD0tM~zDE zg`&KAB>a+Z!&l&zTtgnK;dgTD3QFgYDf0RX>dm%9R|{U#21|b3hP>6!BIx|JluavT z<60^&>Vm!Le3sT~47i}HJ{)=^-Aw=WvM^*}Gm z*YRt>meaV6ERr4DX^iX}q5*Px6Xnrh*<%OwlCp_P9kq2UYvk&e=rMV>i6-gC$<0*Y z@(uLmX82@lGmV#xO;|Lyn`w@V-5(z*-)+X2RPUhca(WA`k_%fYNseiypK+2O$oQSK zT3*~qU|B z&>`Lj%~Ny^#5K{0^beIerh)kH+B(pWmA1)f z+nvZiR*5Y}d>vG*v=2e!6kP|6SCol8Alw*3!$3Om4A27QR}EUIXq}<$hW3C|l%O~O zEK`o}gTl)URIapBpb3ip1oA7oYW(hk7Aeh%?P#&0SP;L!4v_-V@%TK_V>H0fSWph$ zKRA{Eb)RN{^h7LHX13NF>uO_dG}ablec4!dfhtrJ_8Y&0#_zE48|6lRy}gvUBW;}n z(rv9Uv=pR!_bh0M3cU`b8{KHA85B^~S3#AEehGS7(LRtKk9RwrMNxf3F$wfEJ;BV6=1`GCIj< zLlZzc-3+5G2I=*^)L1uwma4=pMze4@>AK0F;8bN!H)1a68Kn(2S`ny3X%mcA0{V&4 zW*KdXp*oP>)}90D9e=a2h77fMfXh^vU7!jf-N&eJFbPT&e)X)|iH{!;0-jD*79 zE8WU;DE!sZtpuR(w@bHj3<{5Cx5EFw;X6jQUZ&nI{+M}N$oDSeW4Qfmg_9Z56T%&#p4WOA&JG71YRz=6`b&tYS-k1Y7VKG&loxo?YFYMJV`R zIDXQ~b0~O)cKftIDSOCg9~7SBZl8~!=mCwy`3n@ju=K-`zvAN-{du5T6e94V>JF3) zlx;TU*HOH(!k4ag!sc|%rZ~7Y57o-CDU)nUg-zMu;O+jQ zK+@*)u1z^ZBx3!3J$VJdN03q>WV1&Zu#jA8ZvL9%`)4j@E5_u zwHs`Tv?+Vsa_&v+Sns*z#+x)`=wX}3r#9u!MiCgx>uw?IZ&9XG!k^(OrflUJjG diff --git a/normal.jpg b/normal.jpg new file mode 100644 index 0000000000000000000000000000000000000000..bc36a3b9d8e9006f3abe30dadf3c902036ea53fe GIT binary patch literal 368640 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

YHeX*lo~bbxeP-fj^YX)q!ja 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≪3 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 geQ15kUKP!V zWHSnUjl$(g1{MfHS>jGcwe0Qo8fr~uqFp7NDx6J6Wt!kU5W<8Yj0O=j(iL`p$aZ~9 zdAQeuB>q~u<|gWs#Hk(2i~#))Aa5~1e=}P#Hyew?8P|=i2J*Ztk1j3k#jH^bMay%t z6xXZC&`P4moLiD|W6U!Z&lZ`({>2LE`}bK~;pGATwBLtCdxUr(Db7@s#*6nRgv zJjvMlPd3iCoX#seYL^t!eVopSTvK5oyow+$()USsE}XC<^~J{I<;u&{W|cI}*4v&| zZucb?qJEyX#nj7T+ZCr|FWW1+Q|-ngLgN3ri|*hgnJr z4QZY$D^)PqE9RUWvP}Xig(W>U=&1A0n_I&ebDe5YWSXixVtry#MxEnr16fQ1r79lY zoDnFwJesS(R{QGmDO4g-s$8LY+59!bP92%8+9MwgG1~R^4~J;!al+j|rf_>fg-<_n z*L*rg%S!d(@^J-RXZWK@ja`+>gUkhdAf-no!kv#h_EZgBXn%RjGQ$hDpRrsUzjU+m z#YoT2iwOW+3QQE2w4RqKSQM}c6Ozgfd{f2pa$bc8Q=-J(>v9=0OffaG0;(x-Oiu5K z-e7J^Zhm%G)1Y!`!32T6Hn3qRVOR^)p-owEj)tZRXBp4kHP{CXH%bHy95vnx*wjnh z2-#5#ecNdxR!J0K&ZkMmcv|%dbpM!D;Z}o94|ilj{s#}e{^WWsp=lOXRBnLuJ+?Sp=vRxOkH z+(WU=uA5haQ$HANMb!o+11|+#Ypf+^I;8YfwF=)BZx1$}z84TBkn}$$-z0gtxPV#P2-fedZ)BRT;Tdtj zQETp)xn#BNa0_zGK&ubyZl~qmj1BVnSV16~dq|I#OfG$I2KR-3{@PpdU#DKJDJK4b zZcMX3g3^RFx{N3doGp8L&G*>B}A1If*Xzi$L||;*mQs zMkYj3Sbr`dEkUGS@Y-QIHZO79X++7J8L0ihQteSeuMl9DD1c1t^iO$5HP(SOl{1>d z3Y{ep?Xwk};=vla$TzU+%7~^Wv3?2B^=hjXLDvmIsS!nGfAaUp1;6Vf?R`C69*wNi z<&Qj#uMpZS%F~689zQ99sygNw>p-zdhSNrLH#&wq?q;*)@L9MzM}y?=XZ|W#%I$`4 zn-k7{Vt4E=M$@0yqG(q7z>4;Bt^gctZ+Vmjw#@u9nQY&n;a5B4UKetwZ7HxyYn-Xp zt#ZCslKI`IwKz2I)r9Xj!8k~#|BwSba~ejPgq^!m^m7EG?n(&HUq<+C8`wgI;KNmo z1KYI;#oEOyJs}Z9u95#Sm3e6NaSbQ_P8kSzHu%!p2wI0M8TEG`wzphz2rnJk5RGGl zs@NAIO^LoIV$kyP74R|I|A?{l%aLl_x{@%Pa0eAL*#*ONARaf==c^>$CvMfe+-`S` zgg^Qx>4Ip}{Ww{VIaYPJaVDpPb~tTRya{ZVO<(c~NX~4#(3TSanLgWl9M}7r^m% z>Kl?Ecr|S-7{-NQs(^iP#+aZkfxk{K_ei7TnNWZnN zG`TweCPf;I(2!fdmt{YM7A|1cQ1gRv1SptR@4$r`Mq~=#Mr^407Z&*31Ni@ImUt@c z^*bIX)5)O6y+LyakRyOa1dvES%meMaM_EJvdds=UQ%aDiQEPO$iXl}&r0M>{hRTIl zB|lWQaf`nSUr1(MKn~mbpBaUMi}#QGQ#0fXIcDP5IU;A?`*aw{m1vjB7tL#oukp(g zc(vjnuD)4TWV?ZYI`1w6PRp$9*&Zap!&a&EAiH7Dxv>1mVO;L@)<<>wdg9pB1A+nS zYvI8yeVM}Bm8U-!KC;vkpFE-tte5>ZTQTqIspcF;0|^Dda-Cp|A_0Qc&_MCv%g3@m zbQ&x4XFIr>NV*SZsC!z)z-+*cE>I2GK<^&QnCNm%l`C1UG8oxteC_?vD2OzcH@(lZ zZ(&9oC6CpU|w^r(oEXNfjjVmTi8IF7O%6tL)uC_02wJaJn{YWy^e-(aJ zISJl#tOMvV^G0~%6&GK1A68+g0el)TBd`k?D^!z1IlrMBv%bj>f8~7i6d>V3olO^J z?_uj-YU5wKh^Kdq3iG(2MACyw@m$pnwPGWT+~kt_cGnH0A$AuAT})aC5d zqfOjLOscF*OwzXcjT6%T$8@`1?%nw{ZZ^O}6tQe9_huST7W6gN)<#E-$*2{TOACkRzIAft4);+-G5M3<+XcZz{uK4ge5;tzq9}@ z!_N4J)@1>0Fx5Hf#JUq3!T&McS-hd~J>?0)(9Co>z2O=GqMn8f#Qj7jr&y%CPU}YQ zSIthxD7PBlo^aP4?Upm}Sf~3r?H0T?>$M)A5PpBl-%0WXuS2~?v1PB=34xzFw)DXt zGMzyJpfO9NMx0d>a(hCobhf$w zFz%DGK(8J@|NNyaAhV5bQXChr^@5^%DH8DY4Y&@-wMM z@Sd#6JuTv!xkw=A`Rgs$g%MQA6L5*eS{c;tMCS46PR}t%oYy|39V#d--j>INyY;QvrDe zwKcWdEYgn`#7Xy@x%CSFQ5;0gU+eRYttzSy~Ff%qylbZs_9_y}@}C z-^V8g&5qi4W@ z(#aaEryGo0JLfs2(MC&AhW4i6+-Xx*J0s{kQ!p3hO7t@D`fzFPje(9VUUzCIb(^;nIUv7mVUS`(Aa3)jHUrLooH=#afxiQiCHLZa?2|#;?@+DPT*X zMtmOeSP$(DSYCZI3k=4jQCIR2D`C?z4GE=K8HfmH0}f+HA-hw?$m?`eT}(J;>JI`Z zn#&>ew#II=%EFPyId*|-hJ`iouGYKH=qOZlQK~LE9jLNP?G5!GDgTuFrR@ZGVxy*7 zgoTjCh3khs47uv24Mg{6Nh9^PuUUU~G6&aWI3Hy}B%43%9H-4NgaK9w>J~ez{k~LL zqkZULB?xm+I|)KbD(3Y!rdh_kiad4*t=fDPCgjtG4m^yYlRCm9M9IaGP+9kB-7PvYu{S>eKDJqV$L0xu zA2#v9by_1$q2fOwxUK@Be)TY#1EuNb-Y>3Q;$Y!+G6qGZE0;1Hru%k{^*_do6ds}8 zf1D__Oc#EAyo;|TKmd3G3}8>2+yWu!3UlFXr^bd4dxpX4JP2B^$htH^fSJk4IYd>} zZYI|IkymnWstb>iP^)=A6i`}UnmN3Rv_G){_IK}%q=VTi=R;z|XV=>~##AK=r|Ok~Jr6XyHE| z7Hz2j&H2l2c1r1HaW7Qs+|LC3)^P=-N`Eke$M!^cPKpF*HI2KJBJmUn8TIl?!AW$Q z>IbQa`6Hb+#;I08naWy1VNSyz)l$jgfT?9k#5Tf~0W~_MAH1%Kx%ccU z&+G$BM8t9`ufCb>vrM?aFbstlbhGL7$yO2$(E2o&d$$Dxb-323Bn|69 zadg{%ldhEu0$&xp%vW(v?p34hcmN(+HKlBo>m;;3Q|v9ZKr0>FBZFvKZ1?}#PNBT3c7iGhyY!g!Kp}`;${ghKG*#%< zoZ-O@j_5}hm^`mt5{S=M7>iw4=|J_mhV_@9!yJxxS1d~yShsO%w+Jn`DIJPcqz)Mu zOT@hiMt%KpK_FHhHlX!xIXS06VKnwS!FUP=2qR7#*q)x)FQs^5I}CAtuwZX=B@7m7 zL4ZL~gh0MXLVNW&2vSnN4$JYp+_`=?Dj#_q5GQ-zjbR6ODgfPNFbSef zwjHIOO~hw*IMT~fRXdsxlPNU+n5ydT9)r19Kleoq4Ayi*1jhH`4WHj=5ye(n%OkDL z2Oy*wIIz{ea9ZBRtH!OLD(SVD>5&cCbuY&^42RYeteV1oxSug=+F}z@&yab5zYQow z?B-4(30i25k4=Qj9==cl0OFp2h81gOS>6~+_x1}kv)4BXec@sHXIa=+Ol|bIf$v9& zk@wQjT9r{ZyYx{dG}4B9L<5Ds$oH2VEeC*i>-a9d8Z z6Yl`i-5-zL%^&DTCn$J1Y)v*9*l+gLS-Y$GbH0jg`1!YSqi3p`KmrqCaBjJ$&5%rz zt!6CnJ#g_`j&{$7ND*7~vz$j>i8r)R`eajz_0;sMPABnS7 zoz8f-|A*48CVB$EP*;Hye|KL>qV**o!HrX=Oe;aPI#db#LV4;)V~Nhx^5bGE?azjv zfrj7j#2rB~r|bGku;{ip-wMq57f_UR3(SPN>$xN4H zn6+GDcr|@?1>@d(A)W4G+ylZPZlg^z(?|X^kM{kYvNZE8x$L)d2SBK7mZgDFHrKJo zGtjmas2y=L6mz-eqeS=*YI!u;X3sJe%Oz(-n3fJsPssF6Jf2@0|3PJd-|Hs60_@ULN>61;0ljI}Zr!@Sk zNH4$*X=j(68Hx*@1gZ!(o;;WrP_}*gD2g4qd}%nQGFNF)xc~tW>7gFj<*(BY9K9L* zuPcW_ZJFfh_<~y?cR70lKN$?{EvmQb^iSWwktyfy;Ay?GF6J}o9` z7jFpgCaD(pT<`6X2H0$bvo9Z=Bc58A4a*oAF?Z`c2@I|Z&cu|{JtxarVuU1uSRtUAL5kZ6^W{lc3LM2EAF+=T5)Ogk6Cp2bUt9JfJXA<`$mfWA|S3d3K<13^7q;|yVl*#{S%ooz{DJL_=rP0e7=LR(s0#AYOR?(1nQ^FjEn$g=0yCUbfgcsj&2Dx*7 zRPJ{e1ej8sRj}IGvh^vY&>ffAG&hcbbeI^ef%D!{T^&a&c-Es1~$%BP2!CR$(UBJlhBml zp{GT5k^NSA1uhd#8^8h=vgb^=!(iaBRj4S@aA-es;dI+3U~lwx>_4DW#H(@V!f#E` z9@J!tSD2Iac5b-u69&6w9t(-}hwYHdwc~Y6-O=IkiRVJl9XDe$u2diWAuC9|DQ*|4 zBWu1~c7XIVG z6BRXT!pFu37wN^r-j1Wb^hk1N5DkixwnwMv7TFYgdQX=?(L7<5j15yncnr?9 z7`@V0Vha^*7mDo2H``Ze({XEQLnq;E!C4CMO;_y%$HF=}Cj98lool9y5qII-_^6zy zrb)Ovrj>NiUJ$aglcxyFwnSv(E4EfQMgvlu7OGoZ@^DybSN_O3OWa^*c*ozv?!3uV zbe?79xKz)*NLSvgV7hUo9XFO#RExE1sOW42yWqjEuq~-@k~&r<#1Lp1=viKESyf$F zm|r(O%{L`-J?S0%j@{!$E(tV@3ut0#Sx0S14%G-%2Ch16w+u(VYybR1dB=t3N!*JtZ|6Hbg3WHnwX-b^oc-n&0Aqdo3L)}v6)+S6iP$bn&lv^X zv((yFjtT4Vn4VuOu#$IX&yk;n@%%xJjm#~rx9#2qu~O_Dy#5M}%&%C z_vy;jnFOM}mtZ>>Jt)#)7wW(ly&Ox-v#kw>hnYOqXUvrf{K2^s|IXrm{ZCh2dU1ZH z>-P?G1jC2qy|Y*;sL)o>3!FYsAE^Od#tq6$9CR{@;gNUT6cOsM`|DjAkB<%4`K%G_ zHKIsOmt~L6$S>m;pc+cN?nIP^>orWG8UAAMsHIwn{ebR0Mnd$~z^MuH#-DP?R|`wJ zw#qLdhd|{|(^zv8Q!4#_XdFY(5mP>>K`%-HEzhgET+S4=f$-Ql(*!l5%zRRIdiF^t z+UsI!HI$0H8ds+Fiej1DOgt6KTbY`e@~C68KI&Kh3#eDZatcZyqjJ>(5$UgE&H9~0 zr(i~NqU*>!* zR!_LAieyv$xVS#aIQyc>4l}eL;RwZS%Ae(D1%Enn-x}LHUsUQfR3t?Q8ST?GU}w<3 zW<2|(eC5}5r}S1{eq%u$a^holo+}18X6);+1bFpX!7`pFO5GM4ZIYju2L>ehqj!q? zG!1|U$&;~~0sNo164}>qgZ_~BvcY97tGlL83cSxuW3Us{LSd2bxtO#I;X7!aUXwKp z@jrrOn@N>oa!{!~Ct5?70L*!%ztv@KU6#9*Yg0r7}v)<8&Be!9ZEq-4VLx-4l#xgFNN=xf*N06OP!Nl zRp*!6V_Oa~68n$F+W$C6RhB9a|3YxWr43pRyGDaf7q+*Z$_nmh6$?7HFYTQeB=(TO z&GCxVgi2JFKgBw*HO-WqwI*aTs9kikK`Pv02Kk^!DX~FHcWPX+!T3J5Tn$Kb%9Oxo zIxh=Om38JaWuSleuV5Tq?6WtE)CRDEIL@Rfr`|}ZvC(e{_=jjUSy~;*8DpnWIhy4% z5#BzP*AB%6&h=Zh<&iFurrZ+xlZCck`qo&aNLq3(zs=U>po{ZfDb8AOiPQM|2T9%d zL7n=n#~LNCq#!NAyzkrBNQcaHr2WN6`LJE_Osma))ZsEMP2Z4j@9Mx?E zKaWDo3NV6np|U5>`elAAM!5Oi^N|72ZHbnD3a2|kqO3qkP*(uPNIUx$R;ntn z&mS)N;|UoW-t)83u@6?kau@VHVPQJ0{=H7De!ApaLDc%i%l0RE*`7kPL69EJ>AhB51uxl}{qC z`oWNtr(0)D?_V{22g4c)=y?6?N|%Zu4vKb@ED}x1W%yviFA^Wun-XWNyxXV?aKdXgyv#x3mV=SjvK++n(PSV#@0Va5o#fITe--x4LJjs@7nI(^~9l`)e+az zJC`RSU+)+-|%_?0MY}@uxG(b&u8X7CniT}Kvuh&%_1^+PGLsaToAmbV<}Uc`9sGA|(i4^06$d#ZT~}#;>Tg=EY2eNaSuZ z;v>wFXq1W37oKVx{i~xCSra~Qtl(lgflgK31b8^(q-0=uif7wq5qB3ZQV^6d8vj7m zHP12oJ37`&GGfi!rRWH7XSDC}_(`jH>K(A1YN7r?`8jbt5}i5j+f*MC*no2Ge@&$` z@>3v7w>ufb;*D~%t>5W~ew!Qid0ceO2?ip(pcEyUF=|9H48h}qVZp)7g`ouwVBj0d}Z}6sH~vU;Kix0n5Qe}w0=;FUJmKN z(4FcdNLDM*jk~?0?KMCE*AE{FZaF{HF-bEo5V_8IwXRjR7)0XiGDR>ri4-iaGtS1Xu^T_sB^&yK%eic2nRVXhT#}j*-3b zw;wCkRf>M9_sNN=oFoUrrZRX;rFm#b6KD1c;U2EQeum=IbnuK&NFP8kfqbYTfLk38 z6@LHLDeYudcuu&UIwR+8_Elx{>5nlp2bbn}AtSryave~OeAM3d+b_^r17vYE3`@2fL5ETMhYrs+K z-ugZuM+w{gnokek-7dVoaN6tnFk8{%qUHmz;MGq5^Xxo^$!Ev(*ITIYzJN}KQCL}R z)|%!}l}aa<-)6}?)HNLJHOexuXkPTmfJ3Lf>6E%FPLu#%0kbqk{!nc|b%VWS<9+tR zuVNFy(Qf!x#!OvE+kDIyr)*7sS^Ze7n|*A=8E#e~Hkt+Fnn(cDl~+_|B)r5o=+K!| zg2jnQgXz&HnQhGb`HMC0j?fe689(l>XoYkA*b*--#$)Rp6ZJl-Zx#1hRr34^r|wR! z>9s47VOeZvBjT3w@BVy~dPv1h-6sZHm_wt&$z?3(;2&c8?{m#N)+sQ_-X%G(#}G=F zysgn7+R_r#305sy5o=NIldmd(b9RK%4Rq}rbUSeD9|3(j->JLSP@X(@|E0jy#)|9- zT~v81gbMjG?Jzk`R3KLWtgL;auFu6uZjj~lHmDIFN644vrM^5c+PN6hk@j^dJx;fZ z9P+%_3F^t!S>uRughsCcRzMNV&uOy=QHjkyqW*n1gP(-qc`k#un7%So|s1 zwPBx=IQhmh8Lqem`&d#RA))I#gsm=QZwJpT@y9n91iS&)D14hq-DEj{CzDek|NcbNBTF}0R#M#w; zNHXlxDM$8cLmRMFg+oJuq(>hFAi?me8rmhCakj(pN{dB79!?s&0UIIaP#GPpF)YJk z1ofxO>C8WV76HFBa85b%DKY-2<>VZ=9%3_~RyU`73+ikn4;nh1!Xibc#`I8^Qtt37 z4045&sGL`iG%DQQX%bx?wQv1mZr&?A`Jh7!q+F)Q{vC=NJFGOmE=Js97_Ex>EewRXRVN=dpQxBv<5f9 z=>DDSE3Xg>37wK#u^a63JGZ^yX~r$rHdB(ng@^q7Wy|yF^Y?V}D|;@6%(7>+KJ+wv zAuZ!wm7{jl|ENrIOrsap(Y<}Enqa>f=GPD2L$6CR8pxlu6GGr1B+6`Z7fIG1v=6e! z#d^)h^#Jk>+bAtx=^zU32`ldZ4!;XY_*dISj`sD!_5!b!uxgQ`I1|Z<%Ec7pPNN7eES}&5%S9tYN*g%n3nB6f5Lh! z(uQ3pXQHI+U20jC;y3rq z@}ywnVvow_&YUt>8lSP+8FsIzS(G8d7Gys0Q2WdY^$$>eZIz!cOL1MR68AE4L-sRA zUz$L4X}k?a4o;=52W`%jr!R0<*{wxZ7up^2T}uMu&Gcc-ouSz#?F}LEk+v_YNvRu? zCyNyPo{k^CVJ)S7F~f8=Qdztk6Bab%X4LT_3U;K za6HM%AY9)&$$dHJ$M8&xba3&8-)oI0IXjwL{TO}+q17SmT6c59)I!p|Ygzl}KZUfrie z>~I|wr?lR*ER6bze--!0=@~trCy&uTwE}V1HdL^aLz~#q(ywrzGbj;ggU-Zl_c>nC zXG*g#+v#|LC0v`+tY?hf&A^RCquU~p;Sz(9KeyEx&)-n1MbXO)ZH_+sRy}o1#jSs* zNC($>d>`4x*=5tyu$gMLA1o^zwmpNcTs(tJ{8$o~wnRsrLO|BUIkTyg=)xWBLE4?= zN^6Q0>@CVDG&3-GZAvUeUlHAEhzQP8V`imtjkGoIQ>s@sI+>$9vYDn*`AX;tHiN%N z-#BE5?PqJNAFd=Gm%Xev`Ic#qZ=NHw{io(!M`tXp$nCI@>`(J6a+>sO zDj&RSTN>C)q<95e1jH1fbE|NXA&5z8`?fD6>bK*q|7bu|6-3cNyal~4(r4Qu5Bihq z;)ZF-Q!_}r)#C9?PVt#`oTjD97~r&dSa2AgX%=q5DSlMo4KsA`C%%dr!dXU5`GH}^ zX2&GP#XEY;YZL3nH@U4npPQIo&U!=Ie8#94&EVs}$(@MZxL6Q#Vo1zmOy^XG#5%#U z*5*GN*iLKk(+4BJ-?5bA3*TzG7|yGa{{>!@Rcq@u{sY#m5f3ztZlA#6j7emx_OrtF ziL>@?@V>;&F9FQ#u4hc#>543O5tb+m&SvpZvlOU)N7w+=zFe%C7}Bx)^|n)Jr5z4TPhCTbVs85kh#_@UqQ3frSwDEi!V-259l>kSiVG;~TFfx(W> z_hH3!r8H^0H0Af$>y;9szzZ@gGagptkx&j*aKFzg4U>S!Dczf*_bCPO1sUt(OS4H( zUu&nY%dS2a**T%1o8OxBa3lL0Z{(~;aFnp;^4oMq_n<-yIy#MH8LwT5^1eBdk^C8} zT?Y;dVKJ2*rxrO}b8o=srXeZzJ($gnIKY%FC|FAjCw7oNwA9)e^jIf|XY@Y*dwekS zqG}Tkmko4vCYn%)rArzi7>v$rHL&)wbGvhff~YX^9aAT;h+191uG}N%|@u} za!C*^F(>(Az|;23V>jkLu{OPZf$rfFPq}GZd!n7xPEMJl@~2`x5Q9thb9NOjx6c($ zZ1yJhFjE)DFT;Dvl`3dTS+LvLhVVj8`yhjEv1$?~^YrnoB`PQ|=)BUAr@t+r`(Qb$ zQw(lPT=>qCQV8CgszTUIocOsv6F+z_IANi0wrYrnWU33GE_B9&)ztj%MLpeba}&F< z-N7*Vl}qOuCyb7X=HU&W;kZ&JS&fMB`J1bpXHG@Zi7g|r-EPak(BgKt<;L+zOxdHGk)Nz5uI{eWs@{Plr;VU*2gz zYhArQaa+hY@2dU-Rym0A$%`Vo4O?tHTp`Sl&2mMjSq?nyW|eZfo$E$<9)= z2PA@pL-X7y_SL$Ao8)h$AzcA+93`~X+iiJUi5z<<0B~u&ods8F3%EMObXKR2Zw0yA zba1fm8ljlo+ILS26!I4WfgqU!(??818R60HAT;;+dZxZ2DXB#Ck$z`ne zKB?wboWY&UxR;VDcg*()%V`|($%rq%j3iLj5~qfT4x}clDT01Y<`r((;faNV-+Lo0 z(ph$6%+;mzC?zA=TiSvMgu*v~3BJ6o9ur8AqW`;?Q1EHp@MA2Y#qVx4jFj3CwG2 zTo(-Dy1koZ8=l2x-*f8^7a*#7<6pj5=CJ9-e#g`bNuOu|Ket6L3{u)va1lN$P-WYZ zT0Urhk@J!7iGOx@e8Mftsf`hpD#~5=p4YZ%|8*v`jF=Z%=ld%&QG`zGf_3=><{>RS zb#-&yDimT(XNwhaYrwYmPiSCiGh&pUv2!(MfF^b)TDKCjTy^EQpTT`Bobsj~UENu<34OXfrW zltlmY+V`NZhMGg~i8tpBIpFV60Xv?3eWLiph61z9 z{3tv=!y#bRQz6FCY)JvS4Lwfp>f{@J9H-E}jp*4nvP>oTi~h_|N%>9;Q(orkVRbag zSdF6ZK6~C}iSwPx}Mpo2cFAv2LW8Wr^9z?|})ELPI zyG_`l!-a-g1$RMxB6x!hG%$W3PrBsMuNnn@^p+*N70c6#PgxKe=ns30?lm{A?&ShY z(8sU<^GlL+fg{mwyndGud2&cFo9%T`DfP#tavRB$S|zA*9DKKlq@H6rS$3AP%X*>T z*fg##Lq#k^jT0#l@(%pN_-g;Tea26qpxTEM(a~$y1si|ebo>(L{bU)C+s_>kW^oGu ze!R;jUkd=1;p(7jM|MMh+oSEMJrgI2npBUNbcA*5u@L_U0BcVP_HuD|{!L9n`KFm_?ZKOt`f=Yf z?TmxQKTEDNWAk%pXH<~-vh@2)NL5X=<$p9eXAgcGGb@i)Mm2{v%*%hxKR}n|HC)|q z$!o3G?p*w)$pp_$`;Vr#j!vg%SU4xRa!p{BwlBrGdHG>V!CeM7PW{Q4(TJ0Jys@zs z#hKW(mw4}u|96DAzHumDn7ta@eV58|Z|5rn*;@)s&B$ZLcKssbx8+p}kU4*>2p8=x zJ@OrE_k-`j&r;iIdUfK||D$0jtM|UY;jpu5SbP@q#ww1IZEl%0V{}p3AVHcU%$r>J z)MUi!URHH5cjl60n3hCLbg1W?l(jzi2W^$AL-48b{W;}F#Gm+1ND+4kOO5Z|hRa^o|C|=M!7GvR z$ia5?6~ln?T=q(WwOL}POlL^D6llE>xr1~4(PsZ?gx5Ktf(_)=Qd2*P7{=SqIa-%Z zWik_IPC`5ILT;48#Z6Gc$F_`ts&Bar*Q~b%JXM?%Os%(n{=~i+W3V!Mx@u*Ms1I#8 zJ;qlz)@dfwcZJWG^o*t&D1?gK7V>C>Y(`?VEJOSjJ9#ej_D1qJ61AwiMGjslRYM;- z)DdJb+>a~=QCGi{DQDXCJZp@W<#{}1E-LZSpqN=r?%wI7|E9jVS^SExWirHqw}b?YD*fVZ63@n% zbuHiXK=cR2)aJ@2{Dx_FzU3!PKR`cGPvl50Nh{)+Zk>QxP3sWz11o@8f|I-0LBP%v zFI>Kl!_*|MLs)OkZk^pSPiMVRVDvCb%grU}c~Zzzv#Hh+ah5N^bGe*n( zrq!;F8c!_PUBz_@RwA?9e97#Om7iBinlxmMLdWaLWcV+rFU=KuoVtxk6=n=H(E! zupQfn4%x^0?G1N-uOB!BM6n@|%z<~5FX?fGGIuBjM1vymO3k;wBr*63%0exo@nV4Y ze!1w_rUDe#xx4Xay9uLNoZm2bWXw*qlMslK-3x|%0%U?0d7d@#ci(zZS`<|DWk3Uz z$+2jBYs&aHp%-sp9K`l<^7N9dj||46rce?-x}2@3eq}0YB*$W7vwl8zqsD!Dr`njk z`WMKLnnnoiIf(%`&g8$?+fM5f*X>pkSmyG6`}UAEjV|!lUQ?nolbspTQqC6_RshIc z4b?9ny*=l!5$bF2J(r;_LU>Bs-tJCKnv+nLWC`7!)3lRJ11rBzb9TA}1sfTG3}3YT zBNwZI4^@haA#XEQG7g|l3|(huKl_5UZc!AbPST*hwlblc%7r`g3YRqsL{H#FtHa<% zVB{Uav&Wa;91fcrk*F=`yvA06Jp^~)66k2Ru8M7*jG{+`fY|;a-N(IgZ*skj zKKm(<0*hOLU>iyqtnUzdm&2}0{aBe4-XtKB{G%$ZQ(k<7-wsj^9DSMvj6yGmnvkAA zl?0bMD%0r2MxQ2rgsgns5bd(+B~YtL26KV_nU!bZt}#Z|y6VJ8eSBwT%*=OB?gwef z%k#8h96hQQjfLgpEY3R6(q zJ|8lzgn)VUhck>Ew%E2q@*|ODsm3f}%gc@l;LokQsTVrs!zZaH#IF-&1qL*X30;AD zzm{(?NKT)14AXb>vQjt3c`?j%Q{t)0MC0nu25YE!9cNsZ>onNT5Rlnp3TMES3!+fV z?%#|_9i1$5z@JllyS*B|1HA!`ASt(A+qS3&3+QToS7wjLXW{|Ukj zm~YP*m?g)?${5UtPMj_$QeAH*py$R>l9}%T;J{Z(#-K%b2VJ{KbnN9BJo2MF1Ebq> z3|@U89XSp%_H`UA7~fgOMlaONxw-a8lYe4kO!C6Okfk90ZAm)S;93Ll*0Okz3H3~a z#WY_w51%cRnAi|KJvR9>$dKVh<9kNxjgvYOgF|@BCMihfyO4UX_1I9e-nz}dHwu|Q zM%_etMKtC{`^c*nR#2I|*Y5@{8o>PMEMD6GK74zYcKbs9j|(*D)|s2nJH+#L1upH= zSLhN6lwhWjQfM;7c-9jxc&7DgF^z9X86(xb=$;6_J!FCu(#^}-ri;oqgz>!l!|VBkwmx%EE(8N+8MfJR#IBrqRK&u zDSz~`!>k?l4FLumsiq->uu88>({vZ@@+eEn+?{u9l>8+cCGvx)XQ~y)bC8$Icz&ZV zf1AUC7BN;=1610;qJm7%oH}=#M$h*O+P$Mo6@gGcHQ-F}Zl`SsKTpRKo_kb&YqaI7 zO8?AR_4El|*H0pyW(5%h$qSji1BF6BxT|Q>MeQrcVDFqk>+b4jJ(D6Hi?56RqhZ7Z zkAo=lIwdgY{m3O>*lS<;`H!I=hit{GO9mhOJJzAq!&xOB=J#V_BXDAP;Xj%^nL}xH zjh?!1knX-gzZu+L(4-FtrS!OwLf(gPO$t%oR($Ca8Ogmmjk-G=7cdWJQC%#RxjGgc?%wNvW*QO}rnp;1l=3Bpc3|u#;!ol!wE=!7eiVb-g!W}e#@_I}|A~EfZ~Qr+9{*EiEpI=d<3?C4(6hhLT1HaGJ=P%tvhBlt zBwO?2LM<5q=8^$q672o3B6ai5T9%ivE0uiqj5e?UOf`YM@vhkG5yge7@K+HoMO8PL z6{fYj_-}h!nr2^X%%p5uL0XMYO)K%ymf5%sA}=VeS&!H?z+4&8Vg$1URR(%)#^m|3 zMEOyWmxa>R9a^19OE*V?Y#rtW1OB=9rGieI>WkADmk%yA?>n$jz_&<)u2}`VzNO!0 z=7dml$3~}(>6T5JFp-5ArV%!_V^MpoM4Nu@?F$?@p7tF+f{5 zyV|Ld;47b~5X0RgYKqQj`H(f?o!{BuUsz0Wj>8rbkPK*Q_!W3vq#_UUyG@;`ccgMYa-|&g6G*S$m!2_}d8@S5y&l6m#yXiJCl^ z4*8g9`5JH*9=LTwsTlDyphGf1gW*>J;yyJV?9t6)ns%|7lWT(#kOm1tLRUn1()Mj- zd)0+)k_uIsm{^ea|McWeTt!%#6`VPXh#nf5&!YWF1AR5z6#8ye;|n3a2YW}Y<~et} zKvn(SVQ{o0pEANC8g5eeC0F1q*Zi){9`*2KYKl*7C)^}mCn>k_?2=H;d(y2z9kC*+V^vI9;jWhE=CQbD-HQ#u5%-eYoE z79(fvWfJQVmg(Sn@3CO!Cl*;7p4`Wz3URjI^BW@{jRn-+UCrc#>2%4KaJC6iXV~HV zpBjA1@D&^*d3AZo1f!b1!7vf#_x&dDq$LU6y6j;6M! z;U>acMU6%~1h1(}dgh*%s3%rm4vb{;qcYaABwG+zkzo_1p#q@M;51drbi(f6?#s6H zE8iF_wK)s?v7~bJNAq960%u*45oEf_K9otS?=$U{TVHb5>{b9hr@ zqfZ(|+3FE8wBLiQl~j{%N*rRTt0s_`Q_vv7W8lU12uyLIk@_W~z%0(4fVS4tgNSEf zSH=WH25%(k<@7(V87353d|>1r^79f4E|+jRNlW)n!vUif6>oT**-Q^i!4FIGGpAq( zE@fTQwuZKXO6j0Ko-1KV;UBoengfS7_K~6$4$^S_sj`{+`Rtr0$({S*d9BIPhE<@` zGFy;FbXCe8TSiIZ>kK{Y_bTUA!MGdGu6-1V1O4&Z^SkrQHnJFaw~)IfJr6i!z>RV1*y*K>WV5LA<^N5?d%;@N3oMty6g=M zP7^TIN+}^RMf`NRSYvhdgnd52EO584nB@rbAI;Vn>xDedxrq)ZWzi;rFs6O~G!8yO zyCYiiarj!ZbcB0P5A`H9YLJr3%Z~liWZ2lzj&2GNeGNtZ-v<(lfi_O}WhpI2hMge_ zNHGcTS!Yf2yh-q%3D*)+$GaO+kBS(zbee>2E#bR~Q4d|>$8!GJS)VPis!iM*c=vrB z{yea~LsC~b($O~p*Z7x6kWXXDOD)(im}>9@uVWQ+1|OF-EZO$fvXa&{d0#FLhkshs zQ0GnGWo5EWITlQtUTT0ZHqn_P#gkGEhC2lA5(ZUKdMnV;*-kN3`ha*?xJ6*J1_~68 z5yJ=}r$c=Nm3kZ=?K7vzUz2$kbAw`L{mCe{5wX_}duSNs;L_1;bbu;M0ljhFtE$>A^VlWJdkZ0d8 z&2q_gSt83(?v zTl{jrGe)IJT+1A_`;1I}m9n*Q8N`CO0+EtY!jQ&w;ca-M))Op+Xj7!hWyQE8m$f}C zX8D&SEQ^LIqPQk9&9mT!Lq>81FfQB7a9@hm;=tB^<(yKYy8XG@h3Kzcnm%;n6)heC zaihI4r0>c1?;M6qyYTk3j$YWc$HJdVQ;6?%LO#<9S2ubrXJFY*1{yldR{s^DZX-BP z7T#SuoyO$(#MIf3A3; z&fa*S`jUS!t+1`0-D3uO&{oSg`C8NAj{*DK1AlG$lvL4)A~lwkV}niTnKv4glV7yn z+~nzSn%?7;D5d#u$u)f?+b_u^#jbGQqJbo?UW**L+_8i}GFOu+JfI{>%ejmPF!r4v zxF*5zb_^qFj;NRYLF@frZ@i|_c>GG`%EA*!iSBl9)=Ff{)1g`wIJfdz3W7_?*V_lo z;RB30hmb~bm?m+6?WF}TK_0tq-n$U+`?qPl9WI+{aDB^Lb>uB5mTnu*5%0is8+R$h z-dlIznD7Zs=ZvDIM3(%lX1U~Fw1hOt%0?#u+B2AfKFlV+Yd$lleokcVSi8f9G^bL% zU+h*ks&Ne+b)-76)={HVlV4sV`Ym9(awD~7NDDC=r&{T|DWyv-1zz?N74|JcJEi%C zb*CS$B-a)H0_SX^#3_*qy(TTts*Bq&$&qLF$p^rws`E*6HlESlmbm{-?NO~@djq2~ zF`bzxUjIAn=77f zD!DMSfFRZ4mwidAt8$t_k_Kq974UMHrQv_>lpeXA2_H25R;1DW}Pf6Zf@~o ziZZ4&EnfN>GpFAQW3fh6TcZ*>yX~b)+N_7evqv*#YIbk(*;u^!Y!QzbwOGDTTiCLv zHzPWkZ=HEXN3vlVTiiLs4-B#|2Ac=%y$UBBIT&4Az<>rXC!~|ePx8>FQ)QP&OFMa# z@HnY8(~{ECYWrJVYSE8zgCxVpMQt)|9nF-xwBzNYfuWBHcYgy;4$n#qs@zUqW&xP* ziF~@G8PV4g*qmj&vNkk9ue zNDugR&n5SFXdr@hI@h^4Z<+hdjs!BzOFSJu9GS{5GE1vS%*!-c^?DV8!=>5|JM3($ zi6YeuCi?ed?~<);miDZv3YltXQibSbz^SWe;M8j1)R6wJrbk(eZ(Gf>)y2KeA0!n_ z@zU5<(2|DcfKjpWKYss^x`ehG@jkB3_wloznXfgfC_ief|EI!Ht*1!bso6>{TW3Jl zzk8?@ZjfqIrop=RR$zZ^=GG? z&?h%~t#)-qTPyypjW?4PQoL1bt*c&A4L=*uc0j;iA?E{WnI-RGxiN$>!zMuf%+=HZ zXI3AO?B51&wX|vlATZnkq?ox_aO8@0n-wwYAD{Ypte=B5jJ*K4CXTIU|lMC&~~~1!ZJ;xTo?E zR#%ICeNF__zyr>cNfOBK2>_0LU02K*r&YQ^ysZ}c1xjS&)_{M8T3Jf9#5bTn3UH(*UXKW-z!_)HteRp$k}G>CMsHxM}a12RNZOFT)Pd~-Dc8T zS8NI=qqie;zX=$4jx-R4G$}S=GF9yb`eURH{m_yfDwT?eF zNKc7TKPW{{Rt5Jup1FcAlid<`qv9jFRkrj8IxEPqMUj8Zsw;7DlLq`IXRcJksl8h} zTf2J8x+^F37J?-#px+uT#MLm0ySr+ojpH)y5AiYbVKx72_b8e4UTOCD3BLMS4+*CK zOp(i4s2Fqj0anJdEn3}JT8B%@XZb}-SiKAB$Vt_aZUwDQyD(0u@9t`4)?qr5osIuTsb7xP>p8HU-fY~Zb`U)1T;pHV zC%fFKe1d(@@-T5(#kh^Zd0g`;+v4u6H(}$8Y}`d%Zzc@`ICEt@5LB*QW2H%b{i?&J zCGao?)f2<(Kl*(gBG4z=MRL8=kQ(<{;kO+hi71RfB`z?>QFWqd@ zqEC&oz5hngL&1>4%9HK6Zo&V)$!0*5s*t)fdeE1EJX4|8Log?#!{bF4LEiLK1tw&sH?q=F(q1e9G!9+p zLm-yI*qwD`d)y>RjUw0t6kwj4? z4;%d^Hg_@Af&!f35NzTw`9B(VjpG7;&wkSA-59?ox~Z_)XWEa1KE3h}6Xab948JOZ zzfDk0vtZ3{$}~1m6LPIQJDTPXi2v!27T4o2H7%c;aM+M*`rQB}Ha)dN)`PUYhJlk{ zNA8;n;i-Kitr}>Yp+I7e_>Et^%Rx>$gFF5a1%%}`#$$lGcK)lLXV3GH3ir|a&r281 zEE`j&h6W`BA>$DjZ}iEz9sJCKEk)ePeg^Qtn+K-`^YsQOjNSUe!~@%4E04II4#lKb z)3imZDNJDl8Z9;BLPq%p26LA?^J*9wj6-6dRm1(UMI6B-ZtqrHaN%no=VfV3*byy?7Jt%>#sy zn0ku994gO0U_uUCsOz-@#)v;PU^+_JqJU&o z+>tZ7{>j_V44avs>6L4EJ_dw&=gU+$#B340I1EWXKrzAmh)v(Y_Ds#ScgoUHhQ0S? zP0MEOzO7_7NwP-ad_+LH8|U_LjDF94&5}{hzTVxe?iq?@>21TkbuMV>z#e`Wj*&lCiy zs6sXldQ4kpD~RM-)>-8KzNA}aTk?ix`#$C4As{IRKRqOV2zHbN<~*rj8zGwlBlYJO zPt;K2Dx>m~MJf)_P4@&}l&1BN|1Gz%^`{qsFsX2^9SJ#R0#gIwu#O6;8DFgJHzI-b zH`01U2blHs$i!%88$>Y2Wj9%xjL(Udk)4&U?qQXTgM311lNlaLoAXPkSC7vHK0UM2 zn{o%@;t3AbW1#u5`s2o}{aTe&yBA~z1AT`XM|;0WaL4J?>1I$B?%`8gp~8_zwR}8I zR9$1cAXNRIn?E#u)QGpWxU6yb#5hX*_4Doc-z8J>=^HK$XST?#BU@YJyoSk3!})|J z$U2d5BJvSz9enxJX6z);e!A)dZb|WxU@r8hT%GTaJ95xFR-Zf5DT!}K4pWp)ig*~v zW;Ye#_h(&!$qs)JAQHgg$dApfhAC7k_Ss^Q;8jnJ?MA`m!-@{~(FuD!cg`+-sg7F^ zuN`c^wAkR8@pk?>6%ucfW3jLF0c_~r(==440H4Z;6`1}X?m^v);Q}4jMDMt85@+1q zUZWe!>dDEnzoVXJxm#vQPMX8Cz)BDJb~Ic;2$vRUS&-YAqCw$Auk-pFm?P`Qa+o&p z8Bx9%BW83le;+YId~XkPDV=aR=(q=p5!)AulaDs;KlwIq-Gp}-Fl)M`J?UoRwaYwryU>;onMg5tY68*5Os{Sy||QrY=BSMPNJOI zifHKO<@@H7)AQSvxl<~nu&M|Q*;}p@z4IIsJZ`Tw&G;E<>(Rve1R1|4;Kg}C& zE35EzWtE3SJ>n*AcRLYj_u-N1RedZT!`>QG(LYk3 z^)RqN@t0wVhj$ic42vVA16RguvXbP|Av3M9q z=`_77^L&<>&9OTnA>oG%&$X`tzw{xF(uqk;GcxdVa?ncJ_=*QJZv z8~^Kz;f`mEH}-Lq2agCK*xQ$=BcmY>Pc|7Dm2#$^z%*`(y3L~qIuKnmBf`Z#pg=x1 z(hxbcVE5y|VY-G}7$SC!sPG#qKz3l!dQ_{s->qioJEr(FTr3jrG$coIgx*`}*YSib zkEqu!M4PH~Z^|xqQ*>dPPJJ{}?P;WZ-w@5Rdq@wGRHd62Fry9C(&<-)C{{*}ofe4D zG|r6QGdxm77YSRsGc+!IxDZ$_b`A4J>RX}FB_;@GR&}VI2>FvSF7;&8(jnA_XxoSWS5D zy%J~cNoGU*x=HBEh{>^%&a>-6K>8#tiJ7DOXx*MyWh6@?nXmh|$@PQ888=UwqUN?S zX87^8yZk<>@Dk4iII7S2g@i0K)4_dhX&A>>=@IkyCqgD-% zt}3~A(h34uHMiD;i76Yujlhd?dUg1{#0^2hhJ0Mg?5qj~_IIz@~q4fqkMCdo=wd zb^WYZz)?7`_dMD_51<#6bs%m@4QWs(jE^RnA#dsBKqcxUA5WhH1&+GE+E(p!BRfl3 zeh<9taNUbnFgJlt3E*q*E!s|V0~3g0)D-pV-j$cC%PHF=EUHj$P_^Zlk>ox>6{ zeQxu*eF(8zjjToCOmSR%_8Pw{!SyZEEB><+6r79~tcAYUKYGedkBj{wT+Q{NkqWS* ze%?9)gh_iXpCA`I=V6bM^ha~({}_hXA^s_5ukQsS-uGs32uVhD`1~Wg*kUF=^W>e& ziEu8!a?aVoJV*E|-Y)!paszbDSn@?|%~Z;WexsPRQsVp_Z4@qu6;sQ)JC9w@!bWYo z9mJf8_AI&TzA(LlY3txp$e$_rQCZthmNf!W#lUA`PboIPtZ#e%`w;|Oo9>M(zE>V4 zIf!WY&i|CNZNMvg(JlaGW@jAi@tvj^x!9YP0`$tW@0&O-bP&w^k0HsrB*|HCS-qHK`AHg>SA!qlQTL{O!JLq`4E zqf0h%BY)eHODZoh-l(Kz4tKqAv^Rdzn;^3%GmLec8>9!H>^kgEJ97Ak#f`ijsMD@q zMY0QDf6D*7950|KC)zDFk^F`-Fe&r7u4HbYc@4WyA!!07}~ zjPM$t#=rJ_`>}H-7p^|DY)z?t#y9xu-KLqir>ob3oyy~o#Fjmjvubh`@HBJnkd&Zy zWP}xC)Xj)KD-|t?C%d`LN3RU?XRzfa$QYud;-QC`OJ++GLVcfx&e#Vt%~fZn+7NeT ze&^>P#nG(ep~MQ|OOY859%}4>8|)6sQzcWeBMQOoDH*X+P4ErB}1k2w|mM2kQ`8tMqUdSgXr_FFzqtyeaVsrR^kug)7(gTCCJssK_*N6d6Xk+pW$r2oxletA0vCG<1NeBqvYTLrYgu28Z4OqJdED z+szRgX4MNYtcu2=hjBpqL~=%^@g>oAaupKbp{F`hQSnMTb=K1efi-Q-~ zE}^3RYGkC{Bc|B2s$Yvsq0#K*)`8KF$rKswjR_2lJGaJ#u;?bydH>1Xs_es-+a2ZZ zpbxE&YA3kn>HqpXN&8Wsd4z`U@V?1p)ftbNMOVeYl_KAXhn=~~ijjkNIV7f)+Jpoo z-#2Tlrz%7l0s$gq+qvmG?6b$#FaC_`#hUsV7+9%@JiO+@*(fCvFZ7fD0l&++=ju=B zpkqB|i@+0H`(hikYk~^u@*1c3S<7gTKNkOGoT{Uy*|{*7qXb$qq*b}~X;ZBh<#-$u zL?37iZ8movB`g0U4|NanDV!5)y}`2*AVI?+)u^lf7I>aG0HUD)Fhe z+NffKNugD=p9w~@EteLJ>2s@wV>0K)QJ{WWi9aa1?(2NXCK&74kr!p)$gWvIE`|Go z!lz$G-f_B&lRg<^&`4C}w%;dq zla8<1mAS%lmqgUw3!lg&D99xx$QONbBngsf)pc;a5kC4UY;|<%@}}086>(2yp2Zto z9zibGLFjM3EQlr)JLlg?*ZcAtNh&d#NyZqba(v3QE(^~cQyOB6-eocl zBc)UFo$?9u2K8??E0sI%X|4{;c3o|5kd9A6Xj&N5^jS=5QSuWv(i-c&o=F`%-(=dJ z-fs!=F^D;mnWMB+ySU}lUraXvd&Zb&m~ECNJmmlNTFT1pcuj>Z7XM<|SIjspdXQkp zzpDch1+Kq8?yarX@7R>u_vq2^5c_U<_bPNuGClu!VCPcYy=8s1Mx{{eQnPs@@?HFCyd_=~t9#wL z8krP5Ybb`(clTW7ti0D65n|i(6-SCX_|jrc)>-?QbMB(vCG1DBX1EtNI=w<$-tzfx zUZ;qkS50UA7!P+JvsARQMSLn!GO^SY>Y{70baYi~hQs3h1XKhMZA9cNQPi!I+Jwk4 zp(fX+{@)c2e|z`mmj<)(MkCE#nk^*`1pOKhJkc+f@c8IlOPBd0vP9gvG}I?KcUz%Npi4JJ*u63!7O0#vqVS&J9+P&g zcA~i9n3c1swHLcN9O1#U{76wWhDu!|*7kYpS&lZX^vlnH$|_vGJo&C#nZ4CcVH1B5jdDjJlUeb3 z29COteerXH<9Yuvj4aRSMcR@pPg6piz;)FZwO~_|UvaFwPK*CBNO&*FXNST7x50wZ z*XkQxGmk1J#AeT~grx?3FexfF#RST@>#r;sq^&>X@lZ032E~EKM$0J4l6DD=V#v)y zBmGGClA-d605Nhv@R2$0^}w#j$$xV>W(vY@fZ(ifD`245(kyv$&%{18Z?aKrsa)@lC&h+iaM{yE z?cvNwbCtOodkVKf8RBXVotT!Q=eQt0Tle&IQM2VXDIq6N^?-P#zK&UUkE3tdz10;B z?YLAm`c)%*?7mdbxg~2xU@QhskxO*#Nk!MVrtk(7t*e`1lyc}qr#Tsb1J{v(K`ygI%^Hua z(HC!8OchEpem@$6bXmuL8PhMsn(9_6fsRknWl+(_o_hRG__|y z!zF{|1%Z2zdb7LSN4qa+;Ie{#T6`t`xTSv|QQHL_Q6R>(mY2x>Mvzi?8HwN8)3?U3 zPx9u<_x_%yC+pb;PwFxML8RK z&<05y4ivm+=4i>FS})-VJC+I^B(L+wZ0L}s#Xq^T4e;_fGw|O`xoR=qlIc8#rViEV z$*z(;$!k4-iZ=4oixWQ$iyHPqArJu``7!8`*a_&EK%c;sp1dTN7kNgjRIc zyhC&&t>x|;n?kaB_{M7oCc#d;kZ0aIdUUT6S3Ve0zdaBmuJ>eS$uJv-+=$OakDo1E zb0#keI8^)m`(Cm{Hfp+2jF6HtWvYgtL;YHv8)Iaw%X0ORWdW%Oaek8}g@X1Yd{FQi z<WI1mr7PAHE2STRqt{5<=)EOK@1^Mh2-f4AbcdB2MLqtsU8jJLeXR8zLdE|?qLl)HUC>F9|Hv?faA~|oTIf2Jx zxT&h{xmK3&h1>e(uy%o2ou1uZzbTjt`M~ z=i3XV92}&SsM!#2GeP!*YnzwZxl%O2@j1eh;CbAalE4z9Y9#Bs{66}*a4e?-a%O@t z&P#ODxw|Y+5t(_i=Dy(HEV7kj9QnzZ4fx#ni*&RwARP#k40*9J8T+=h7fe?%X%8YY zd}pxywY4!mQS)P!d>B!UFtXy2?eH?Hp{C_Yj;{8E>4BvWL@odxWTY%rk?0^c+KZbD zBubh~@aDkba-LK~H6dtz(%jD{!?#d3aw)*v9`)qw-Tu$lFN4-41~!zq9waj{J)gtt z)}GHZfC&Y$A6vB{7Sp|Jms*QI)%W|_fs@nIs^RMXQ~~EM0-RJ8*r6T2OH`X^R{JYC z+#VzIpyqbT972)L1%WS7cBnIeDmwP(thJd>3{j2_Pe|K`Y53Mu-Gn^Q}|=UTDEn;uyv+bsw^oIbEH_=A{Ahsou@7vDCiN< zb@Qrtq6dRyUzD2aCtP>k@zQ#81;rSU?+(Wv5K7^q4iXgSIej;%DgqU zrfZlS1xA983)B?5eiHM3dd!X8J3%}FszTj|_LZy$5IYN5eI4|YdWLG0C<4NoO@fGD zNOa1FC*nMC&-zw5Gyh#1w(I3v0l~^o3t~E*mftx7Qh;gzT#2rN4g_b>s%d*nln5|u zLA@th=~(Rwm0>TQQw=xW)|OXoxOQRvMj%0mJl5sSKNrsj6Pj3dPV@0vuAJ{TL+bLS zT}B^}4-9qQ6DcX!99dLkrTEd8FS~g%Hh!?1c`x1G*jc`fEE1CZ;lUU93pIA*8}r>Q zLKOWIB)FbWq@Go0uiC+PT(oxGGEOlG#(5SNlNd2;9o`N=9Y(Ihej;~>LVy*+OgowK zu3~4rG{0Jh#nmtbZ*(|}x-a;!VJy0da<)6x=+b^f-IZdZC`Rhe{-Omgwa1$pK*paA z^-;!GR^4NxR=uDX8uyjUzdCK{MzK2Xy)LP-dOLI!T9?i+axvz7@#ds4{Hi)6RtFl z>1ovayWf)fcvIE-_L+h&O`J#)yA-DX2Yl_uR`V~^Vs3_O9v8GG!Ovv0P2~w@^ zN*#>?V-t1Sv|ncA(e^!^<@>-CQWY#KzNP;*8=HU|LII`qnu zTvUd6(?Cb26ZeM#FU+JEHKtzcOL*ODo)y|MGl(^C{~!g_n^b!X?2Wh`hBCIjHAr)9 zfnwbNaNR7S{o<^6JUh;`*L^8tZ5(Q)BU^BkaiAdPTgX#m-Mq$J~TPPaKtz8=^a>54;9A%1+2PSS6~C!AM)ja^e=y`jP) zw$~|5xV}x0>s#3=Yl}V-DlH&| zL4lta6HHY!TYd;=RX#MFQIgJY2R?HLC_V^$awVE!=w~>FqA@40Bm%ptV>=}T1rPt}#kU}hb<5sq6d0$Vt z905qHG}O`IU#$x8S`FH*s;<)>*tWdMs7%)PsMe-$lUOG+h4M&Auo3w|6|*FbH=7cj z97CoYA}XL`#*8AFORrDqwpr2h1f^LoKeSP6<+gj3J80agugv*~w z9f=0*^2RTY3k2DS2yi$Ec%u#qX1(VsGY|1%`xhGeELwTa!@;fJ+g0BJK)+h>|Gpdrq#PDFXXM}l=I4xFW9W0 zCa?Glo$P19(hG)zYSdN1e3Ub=j93uo?%1ZT#os8ZsMPMhM-&PW99R&ZXcM|3#2trO zDT|Cs5Oa0mwPwDjZhiJA%@p_>{1 zRo6j>hHG%;HN&PlfMHeSWqG`l?LdyO(ZPIwl|h2sYUXHyka&FNC^Dg%jn~$lzO7iV zF@kM+Hw-THvz*a4z`%w)%Hxd7-7UeJ?l+0~e25!O)%Vo-^rX zAj0Q-wFj0HjWa6MLGnY4NUdDzI91ih$%x1Md}g-QIms9DS9`9gXX>$q6(aX!{RnM) z^f%9&4vvdx)6-r#S$#En?BxoQU8Pr5Ii6~2VQ+3*B>1R*&BgFmLB=T58cfwzRJfX1 zOCRt8=RT1p$2m@6&TQ-@Mm7PW`Dr5WQNu^eiwIpWxt?3_Rktgjb|ytu7f?OR@gSR#n&NvMDI^U886fzd;SXqs6U zdU8daMXN-y7$#2rK>5rIvx%`*x$3(e{{~^N--|L^YinI_k?&r%;en@Qp=f9WQ?ThW zN2xbL`&Hii$*Ibgpfoq8cS*=4fK)s#%9T(^{X9W-Gj)rkB*QW*5rElxBN*=e0Is`b z>F?MYc53PQ(ED+mo)q6ps%@LenA%o>w%3)#tud`3F#y^`PtkE!BByt%L_Y9C6!e66$b z4<05w7Q;|YEzHMd6M*UY{&r(H`-JQlcUL7n4_CmiI-kWD>V9y(a8D}b$HwJAafE^e z4&#q#nK+`S;RwO+*Eh&P$7Ka`0P9a-8DDA91197sBSiJ{?X1a$QSW_xu!-l$0zJrc za%Cnj&$s6J)G1v5kC(vKnz$3ztmdo0yJzT*>tF!1lKR|!E4H(pX#!a-P3I`Q9|GZJ zX_t2?C{vw@Md*lZ-+o_-v%-#V+?x{JD|icx@L=;$tSp|h!?EG)C1>5qd{c$C<&lHt&N-@B~eR#0IUJsueb^M>?LeYWeaJg#rQT|MA7_wx6pi4s>OsOyniiK)1D$>9J=-#GWGZrZwydWe=y04mqMwKZ= zRY{U_mwP2sWr-Rc^2awM94Zq%f-+a=Te%Ir7FzqG_0)lnRxQ5cg-uRBfGQ9E5J?GFk<9Ch8dHr zmrdk%+JN!r7ad%=3fn7Q+=&Vg_^yHU&N1rIjA$M)KWq!^>rER_jF?w9pI-W_xUEz_ zNcUaXZmnctlE~6g3#M*vXlxHe-Eh2t z)GcWSL(?Vcz+h2F;?-_Zx4LRNnTr;w2QycLKPLGI_`pvk;ka3NKbD7Cc!1vRNE4+u z&Grk<*k_sFPgA9;koY^PH3KyY`TrE;Ep+nBtFUom>Eov*>Pna=g(<|)dwQZH>MO__ zK~QeR8g}L61xZIQpI9+k4GBV2vgpk!9Is9jP-RzFX_#3+ri{xcn>J*$mqmiQsFGku z5lMK?ghkuN{_GxQ+*yd|$iO{9C#D0@ZFKhofwPV8ZVjwnRlV8V zqtV7BomvW>4_g!_vcOGp_tCIL&;J$JwG{f|S%1a^&m)3z>fbJe_52cVF zrO8ZHnAKVlJGS%HV7_>eHX|1vI}3*=+LlskHaa?cJ6O%pw*4(qObwaQzZBmX%P?qd z&+DPw>cW+pYVp9CBIZno6&kE#eBp~kigr02A!{+@{KQ#kWhCTF>Z2LQKZK7BxvE2_ zb8vvv7jY%WHc>X71vFW*5VZ;04Sq2la?5wQo|mtGyhbG37d)gW(4S_~?{%CPt$cQA zoA0Hbvg`A61zhq8*OPPy_&=SBeJ<&~Hhj+}5jz zQSy$69xxTK{`M@^rK>X0__Q(9-{zaTPqTO(GcV}Re9TErO^1#P{C)Z=oT$3vF!C;y zB~=om*y5f)9*@{7T+5?8O0Vkf1+D(e2qJRxGCqS+C6ZHitOI5whr%n*|w<_Q5jf2E+UJZhB5ZPp5$4Oad;Z?AQ7EF+^zc|w)ryZx zQDkzYbq4O>;yvUDv|8&Tob-YJ)YG#vde0;0;dv^;YV^6bMvH2Z&^e|xCeE}*zErLB zym$5}wDRjh;=`y`qjG5(HZhkG=o*bW%yHuvuLa`tzq5SKr+K(i$Lldc=AD~}sDqnn`6zG5P zRcFbC-?t^lZ0|H2F4GOPY3amMzyOK{RFZKGjf-W7ZCil?YeuB{(~o$o6Ys=w~zbuG&yr(^2_c| zaTzAT#Se_1ZhtY7*8ID0qd41>}u_CTgr;`-0- zpM-b+duG<(DNw5wo093khmzX8_aB3DkEw)zh?PUJ1~U82A(bqxJL#``^p9@CS{=DH zM(^~>+cWMy!5ENm-V^dWCJTylcT>aeN-!|Zr6xj>W z9)Z>=^g10=_t$D~I^MrE)M~V0{qbZu3i_OngPAbV=ps>4WH&(+Ven!|zVrJ*PRshQ zK(_|ljc{hECQZ@ed0@MAytPDD`k_fuRbVlFYujZt`O{S%+IU#*CF0=i_S3IH+A!sC zxD-tbuVWT-udB8TdHi@dSk)K)D~&a6+95__q(~eMlMvLbSgj!7IZ{=r6CEe9(yo)uSwOb z^?M9|9`l>{S?!w_QJ=3r@e(O`Wi|XMe<1#Cmq{D`nw;=H&NND>YGY0wXO)(v$)2_# zkK-0T8TGxGYNN@MYQk>9O#5akg+%-+>~}r8KgZ?$=ngJNX|a`cS)(rR8gUWQAj+GRI^T>QjwKXK|sOqQ=z(@Q=`qh!^ zMcg*W$gc}reCS^;NtMS3{ikDZFXNzAI0SroyFd5~J~Bh=YHgv8Aj)#M7Xlbu+pqQ+ z1rsa#166CQAvv;*i3*Uj<wQoOxZhL@V6_WLo*^bp6w)w zR-4i;9^1Nd-rX?m+!&yPbiVEf$m8mKN2)1(hfw+a;U&fVNy(1wPfH56I5cLakRTc> zU(zRy{zn3;e_o^>KpLWKsit37JP!(lzV3}*(|+9#aDVRn^BK>Vc2?&LAFiq)0$bU1 zYv6D3Lac*>m`b}rNwRYfWHAT=-mVCF(tQxh`GpB)v~O$(5(%WI+KGtvnY5RyJ}_}H zqGqf@{62 z>fk}BJaIv`p;oyL#DfBQFBv?XR9DmINVPUb&F`+BKZb60dRqi{BudIorVg&Liu`@p zaszppqtluAiyIJK; zMR-|~yx<5?>*G9g6`{Z&cP@!{TY`OarHK~8LXq#yxv!m5GJL|Iq;!`hXuEa!uYcK6 zzy>ZJN`+qaMl#n`UM)Svo{`z)kpK`|}%s z=jU{Xo&uN&{{ILs7(0llQ#Hpke`XadyJ-VdQyW5D?e!BXIk9kx+?oP<+}k6vE(WQl z)qSe4!zoEeN6!gANPSv9%k`U&t<6zK5uX7a%5#oA+4-j`e-BhBp(0%9wSt=1_a4j| zI(A;obsF}Rke}yC%3}okj;)Hgx$q9WQ4m8W$Hm2%?Oxz&vH$E?Oxufv?zotc%1=28 z7JhyQR3$$tCeZ}*lZjrr)d!|B{SKUj-s=1=G2=RR=_non2+%@_d!?hajq&rlspK3U z4%Kq+H7-u#l2KT8!LDgPWw)fiYmc;AvB{PJiXvJ#>t+=Nl1*c&)u5p&*!u!vC${9D zOYj5nTlLct?tMKkD7ArRJw8{`*niYNd;c3*4fs(zB!RR&AtIR@4w9I8MQ8p_ZIoa@ zW?lkD82+hIow9K>93wEFkE@e8UH`ZtS0VGs$}jSC^|dykjYHBnJ>|!$Z`NdMR!vRG zxO?nI{N$Yzk?hHXI60vtU6eG|!jq#nzps@qqET21>%oKik*p|s7sc>+q*ZC&I=Ydr z8mb4Cr4SUD-Zzg<>wtz)lzm7`yAC}pe9^b3HC}8M-{^OJuL5^6u;gV;@!o@p@Gos| z<%zZ2`J6uyx8#(+>av@)`3z`|lyc&G9AV)4Q#-6UK~cp!?BjB4zw4gfi-&DLKYmWC zNpb_?4 zf%t%byWXZc|Az7)ha-6587bH1cS36#ZGh|2`i3Q_LBVygyz22hz@E3n3B<)|Xd?Ir z8%}W+@;%)!_02D;_isG#;i71-Thi{?KjdkE$J;LA&Bfu& z*H&}J+gAnChsFIZqzxUPdPV8vLESS^n~QHIgk(uCmw-SEc7w?Ohl^^DgGBgehAFm` zAzz0XaK1C4|FLXqH3_FD3duO%vK-oJd&$i8x~mWG7jK4(UhlSEtBdAb+iHWu%Sj;l z(z+neC8GDrS!9fLLO$eE78OZF&j&2>Xbf8bp?ZlU-I7#cN=vWm{Tw)gpo0;vE6Wd5oIBogdRd$JaIQy!Bsxy1c4#DV<-u}NyB6aS4_W-V;{ z@`Oih^~l$r^ing^oa^ohs)XFLwL+bVF1g|09I-$vAv$RLT1=@k(fl8JP(YwIp*niK zz3@tBGTL8_xoKF9%{p@77MJKM(YN+(_rdlLUovqg6krIV*(v9wnTEX-}3c2n%^7i%<5o>hFqpVCLerP2c# zH2lgec-cO)AQR6S?ZWx5c&YB)0I70l&*aiOO2rF_4jW{Q(gTMdd*|!k{tS)bx$zSu zWe~fSCootoFh2hGI9X5&9BN#&Gt5UJ@@V;xP!??}l)_+QoYeurAaYx$?hh%7E!Ez% zytLZz>NlwieoR+i)VEn?Ndu&{?pcAlNutGpalNELa|MI~6g`|(t~IFNI9<}2o+^~s zV)9T4AFFpsTe4rydK7H}&g8Sr97`Us z{V53pYyt(?{LJO!4S`BVeZ3*&PJs}&>_veGF=s=sXtfacE-&FLE~#;-3m2u_ujvR|A1HgcC}*F9_C5p3lW5g3(TaH6f_z;~>`<8A^Fg+U|w3 zxN^CVZED5x2lt{K6IJOSKOJG_0_k*np*OWHXqb;tgX9E?X_F_@w*9@=9dh*$=Jq`; zU!K=!f3;`i|9qo-k?(Swq0AS3fs0|^0KxArpDPH|HM!v>#Q46@esyB6$|q`N7~$Nz z_-;wrI3Cuj{gm5cQMlSUeyz|O2OYKW3KrQw2Fq@k5DA}lR@IIs_JmS?)>K2HA|$J- zo)wmr{Qf=pxSimJ$f}cRuvh<^NU<(d0^pT|D}^f>j58<2vxcR0uUmA0iS4vMrz($s ze(0Y4()!LAqiCfMlDv&vtk)FWEg?5%BuHpF8~0huoV+?si*2foSS1B98g5Kv@S+|+ z9Goc&NTh8Aes_p`b_P+$t|evJjeQ1~7>8MBHb!OJ{>jWWHlgnw@IP{+ z9J+$;;v6LTE=08IT?@6W$lc{2q2dSLUQ=w4u8Nf{G@uJsbuEA(y^)5D*ysbu%zq3m zdZD=8p|5UkUT!|3&*H2{$8rVQn>a6~!A_^HznZN0#`L zz@Zlil|M2U3QFl#6Ktfx#goN|esn7pLCCjKM8NaVgz{Tb(?>nPqC7(7HF zq$;tz-$Q@l4v7$#V41%ORWY0xgfZ-29G^#Tg7w-jL(c&(XfAM^)H--bJvV zn-!*SA}3C52WQ9CMU{9VjegF&`3YrJ@sz#kE`h67qN2K+u`7=FKnB zg4GF)`Y;aVm(BCI)5m=@l*8@EiM1@FFYbgk`ayr75+4MrncmgC!dZ0iy-N|#SypL` zLS%1sV8$g8_eBGQRMKRcxNOe;%r!M+iVhMwcWBx;pvG;>-Zb%ezvLx%$q+9kAS?_I zbR@Us`gPswbbja%H!JB=d^(eJ{jN-D=yS_kp9+-J9jua5xD1d+;RS87W&g$}#ejnG zm1xU0m4CI5MNS$K87Zfz^$F|;W<;5j*9md;uqZL0cIx}+R368QH& zhLDSWmmzJp!Lo_wX6KL18K^IuuPQ0!b}Z;!VBPm7Cf;W{)}?CqY5rhyYqQ`u(|Jf)?x{(ZRPDG^Gt|v z0>8t1>(XybuZ+qzp2=<1NCAuw((ZF+*ZRosRG~b)BoLC5DhRLAiIvlN#hOO0FKtDe zIy!#}2nv2Gx{BOxNR$4+-k$=z$tmD3K2rhoSDseNYF7)VGA`PB6=C``S{<>XOPyZ= zF1u<7kKLy!E&SUoEAlEDl!~95nL^E5QUkgI+Nf4bB|hlD8nR>iq+g7$C6l~j;EMwY z8eO8d?*@ZlC5Kb`9J|Q&=_!dbA&h?MYpX9s(dI3ET2J$mdXyD-7+w`uC`PinaHIEJQY8WuyA9pr?F*-4{ty%V zV*WO{VK#=p!?7X$Q4--w4>zu3GBRmc%ah($9V)5bzcYV&=W~US@W%ERw=vUZwp@+t zqRBsXtSm{Q8n>fIo#pJTQSu1k_PZpfO4NL?%)k3(>MK!l-6fMnK3}~4dPc>G9ZVci zp)NX4nr<7qloqI${(3dbScx)T>pnj_Pe+7lwgguASFS8peZ>QA8lWp);>^$P9H@$00cw^0``1{FJn8A({d z4ENxrl3~a`Wv8Te)Nx{=%YICt-b}n89A6ZBVj*}~X|nUw zs6J%Fz!-JSb22iRn*vFR5GVY3^Tny4F!sq;PF5B7YUA=L*Xyfn9oCn)z+s`F?$u=p z1zPE7M(wg^K~IkiGh^xFLUEJp-=eT}6n8`CRW&U(xS9ip5IkU!{Cjj?@5_G-cWd}I z`*@<^zk)@`HQ07b=m-|4@_WnnbQbW+=jn6Fk5b>RT;S^e`Kht}$-g0-rl!RZm|R6B zrJU^7{eHJ~1AIj~LmaBW1(0yeXeZGk5rSyM(vL$ToZ3}T(Apxs4A#=D9P(W5c=h-8 zoORNVK$2ZO{R;SDw4U#}?i8_GG0)D7dyrD|W?*Hu%Z@#M%(ia}jWk9DcJUYBzWSwd z-1(Asns(o@a=>zj=I*)>Iyvrb1RwV)!}Da$b`=I}Uf+j&w8x#9(W18><=+^Mc{Y;B zXJ^d+=v(HT%|#ozFM9%_^ihDt8N_RZ5Hu+R>IoRnXlj}gp0Uj{HE@=pkS%jsBwDTD z1;$A@gHmUMvVv!|kIIMIqwJ)|<2ALj5gqH%dgCTuMvW>woMC0sTLiPkvc*)=O%)1(Tm zBNJ}iEk68s!Etlj>(`uTm(R58K(1kR~0!Ou5FD^jMJkBV<|ks&DHHXPyx@f+Gxikiw*~Gss+8X%rnEx z>MJwT6Mo{CaS)DBC=p|0mSOlcr=0#pj^kaHq`I6wqZr=LRpXe z9+vM%m|`asJGK0!z(U9{<2^P1|rI<0V0KtR>;lQ?|1VXL2LgT66-Q{>RWmqNhfdTJyd- zBaYe9Msp4O*I}~-gU6X?W zw$MN&F~NyFy|VOUwb-t@sZ8~fg{ZR&kmsAr)A$t9L?Y|&qt#?~!B-FBQkYXpAGULi z+`V5B^U7hIMhu2eFGQG!a813ptH_%E+Bg{p98G1k^IFT%xLr1ziNDm1j>Ob@GzFHV zu>zEkW9Y2@cmhA#OX;yeg@>kxaDg9C$v6sy48mEC^)yZ*_tNe-t;|7yWeWkAZSc&@ zeNmAF28`72mvPwl<)6p2l6Y(`mYkj57`>uPQUh-Ah2hSu(a9p{8zUg&?V<5UpbCFcF&CWv+1&ftH}IQAn)mqSvdOiS^S=U z0DSaD-&rT>(Gz{*H&=~Y(v_-_JJ0E&DrR{*_L{<~@}Dl7Ics-i;cE>#+(Aq{62P4z_6<8~>x|Jj0Uw-#%=6 zSXq{-XQ;6!ua%Dw&% z&r5j4aUa0_y{`N7InUBjrnzT#Kn0=tZ;fK2DaGq~%_q6 zqrV=&XmDF%xnKb5HSwvH@5SNg+ z)*CV(?2{gTbNWw%F>01L|HA$3aN!r6g1tn97xTjdhof!p5>ioe|BLd3NS7kRw;BeP z$>g-dJUAL;0Th{QVWe50LJNvhI>I0BgiVny!Z8s!`GwHy{6@cm6-Ixh*dI9w9{s&g z)LQyuW^Z_qHNre2^qSxhpXvi`&lvBsSFqYdT4g}Kj%u_ELU?X~`eSnM``SKSSOyQ< z8jwly;KaX_2C*?X^Zc-XnAwS7{btrCd}1#)0pZkWJQp)|U;C3_9C}pf+j~Ov&WR9- z#!L;{D;b?JN`9>zAqJT>2k6hj_oRh5RikQr=Pay+Vv{jzzc(V$A;aYzFDYxE=mX#X zrNLD4r8FPvjSM78bsOLZ4#$L99;&ChrcF&V7jz(#5kgZEV@z?*bJgfAnr*ssSRtcT zx5};S)ww%Sj9rON<1aE1)4#?pMu?ts34lF-wEm7SK+msJmC>1(cFkHN&*n&sMme^IZC+Dbx?@BicD5J8n_!p6R_&1LZ^ZQCgVXm|xXQ-s zz2`=yw>?#7a5e+bC)~Z#CIfGLx5vN|sq>WMzWEGr+yH z&FX-Cd9~iw96oq_)l8B}#6!k&>0INBTn_bt4-2zO{%%Qz?NqKc|BZkQmQ-NOFOYq3Kv!)nZ{6DU8VoO`A2>5#r zZ|cKLtI9O{YcV!D6~`b!UH^HmGoI*)G?et1O+gDcDNBr*!R1#Od| z6$38C17K`ri>#1#wtnj@GlW+>PQM(xbN^TeBIcc`&8Lgi)XhaZzOo_|PDZ+5)Vsl6 zWN0JIroja@UpnFRQugHhlyGV^YHpji#&Y|`^&$2`TBaRdEp?nGw|Vi#)PmqfOV}rO zGB@&6i-;kl^L<$xzdSiwZTYFPU)J;C4jR@0kyrM{GQ3BDO&+rW88YW0w!^E>iX0a zyFT(La5qfkoF>Wa*xRJ*3jS_0q^O8$i7<6Uq&weyei=+wtg!InZ+xhdwPj)^3~EXb zhj_{>MAXkq{qs+m710QLy>@qa3F_U3m8g8XG?~H=Lpz1l=DFM+m4kTP3Jvpd;6FKl zKPsK$lk`xv=yV}%laKjwOcb2n=bxyl_o~l$aWHp1% zPO~1&EBVIUu^9%XIwYG_#m>@>e+YaL=keu2c-udLD%nu8(Cup-v0Lk{{B_?~ z>+XnNYu04kt4*~gyM4HX1ys(*@+l#2?~ zn|e(P^Abj}+=(BVUB`4(-cJyu{K(&3=~bhRCz2ZYF$u1krsg13|E#=Ba7{wqZmJKc zO+mggK-T`?Zdd}*@n$kn8qklP7O|S+55&M268xc_zuz{T3ej~}t9SjjsAXLa+l$TA ziE{DdmFt_O20Sb^5{`S|S9+Q|k@%g*j{T&K|81IX0HusxoQTn-xQggWBG#u$3Uc(O;qzf}ELH9g6K9$O`jsRHiL2 zZv}cP(UOkgjlYtvyc>gPS6)ea(B`+<(LPk;s_4v*%QahEJ>V(JHtvW1-L_xx7M&oQ ztU&pfmIAKV0K8gSCF8x~PyaaQFrze z7zB)B=*+#)?ZIu&(OMObzCfV^2-Z^l&#@oi}SzydMHu z7n#hA@*`4T&UI~NQWCyX(9w|HxK1HJ77IHTirLQ9JL;1h3hY9t3mt*K#+Ju+#WD

$NSZ&8He*ZFtW3j@rDZB1BI+dH;P56N(D69$x_cnQV*R|YkEtOS18<_LK=+pke zyTmmCJzm1=m_b!jgkL76QG6hKI-**R!++ngLi#5qw~L<6k+*DS>aKdJ^Y3lPQc?pv zO53m9xBp@B3?cvf`}w5rW=aXhzY0Nbe7`z7o=NB-IIl06@?Y_20;+?mA1a5}m8BCY zYI!r0ft7H~uYZy)O3l`t1V{p`KM~Lq-eXa(&uogMftaDD@N^{r2Uc3`RYl_L0?W2v zH+t-wu#F~@h=d(KNAmdq6L_|=S=o4W56jgijZhl=4Dn&qP5II32M$RFQ+MIbme_aQ zu(lE*57~B%v~MfaydsMP(I|1DHK6pBdxCoelhhZ>t=9Oi?dF^6ZRQa*{j?3j^aI*c z2x>qD%Udj2pqJZF)CS&HLpAK&J{Zgv$ZwD}a;%G4D}eut3d)T||2*twc9@`5yZTg#}wM^xu8FYFxBQSxe81grJo71{z z)6TvAU~197o^znTaFc55c*;fL=aX-069oKN59#;yNh4ESS~IsG$Gp{Ti@8`xEMLTu zIJiBk@arqXOCAx?9!Va&^9B zbA~kbpCe+^3}1fhCt?2Y0SoQt1bfzN=4QUiBw3WzFMv5DeG|u!ys*Z22lX|PH?C92 zxBAB^xtHhL9{L|T*jq5qRJ%UbzWoo&BNyXZ5!3T*m5Sa|)#+3OVzqq3@p_17bZH0R z)_D5SVyI$Jq?>o<%Qk-Tt!FyzqGyLA3itQZmekSRGPNcc>%Uy_w!})N0s=%$}&S2b!mm`-%u+P8= z^W9Pp&;7HfNKvE;cds_KmSlLYo9@rrAt&F(j_6*1@H!3MA)0!wHPbkai}Luq>EPCV zjaJ~nQMV>eFw8*U+u@b{dq>?zd^=#VHO*4mrmhqG?Pn63{AbAcQw9o|69ltDqLVY~ z(5{jmx7Y{q8m-exRfNDj;wqaZGqx=Ove@rCAGyFTnpkM(J4%h1p%*J3>{XZRAr)<&CzUl%V#Tt#xMa ze>hLt3WCWT;g?8g3Rcj7fd$GxXjAA9vM2|xdCpx~!yTQQ+m|}}4Lu1>PSQEeygBHt zdb%prX0-{oafq%(Jgd{V|{f7l4(7L8=qX(o3@L;>2=X#5GVC*eK3Iq)Wx3a z2I2CdP-V6>dAxropv4aUp#TRIeU?iGawY_yIGX7>KO6#%g_o< z2MZbxF;jZttB0GV8KyTfjhqR8#@d2(qLgB_(*iDjZ{e4CKk}(1d7s1+OnF0m=YM~} zCm)e7Uo{xWs5WPM)dFbS=6T(2 zta5t{1A~IBcDdW5xWkdFQFclFQ|_@85WiJrjn5Xyw0DViF~O?NYg|?;AV5y}zQE5p zzCDD{{Z2n9H(xa2#`nP5cr*WOa(yNkrmY)Ty4?GIVNyAGdc77{SJV_BY@2EBc+!Pa zHOBHGz-cHnV_ZFAHEQck#$;Pw?rH)%cF3Q1{Leyqm%L5NYsL+^ckl)p*M4;>g6k=~ zf-E7_q3v($h}g4{ZKx@rRIgSKxSJNN?d-)_b39^&Q&VGZbiDcesRGj7;_5rtwKkCL z!V1@c>yGuZ=6rUQ$Xr5O4Q^0%vxB%D7b0^@>AAXG|SpyU^8QOt} z!;L6R^}2vCNymyW=%G&{=ZQeB4NL*tpST$}v>o42iAuE?F5tiN=!-pY>zKezJ>xdU zk61bJ=RBGs~9VL3sNWh|NNE_A)&py%!D(ULU!> z6b?CcIBo0=sw=ribs3wip81y`qJ0!Tbwtp5382nLIS%E19T&cqZ*N*qLhq9pE=f1# zWMM&#VhHe#PC{z8uS`ll1Ql9H+8OOVNQNsmSztd zmPpb@BvXr-a06l=syXl*D!AS56&0H*PJ~zIy6+@Mu-8 zbkh0r)ZF`of`; zX)QR|?5Y6J-#%|JGjS@vE3-axP+OgnS>L7ch|iWkO-3{3cCVp1us3reSq4=<<}#Y) zP|`tF56v%MV5eu6Wv~9Md&Z(b&z4lGU zTC^TwE6*0m!XMo85Mh~RzuOL;6I59|*Ty+ePcw-?e4WcMlvdOB2XBwub)3$4A z!?2vzRh%tSC|s>>M{N4TCVa4_64SFjvSPV}bb4TTY*pN=P|xmy>#H_?(O*YWEOMEM zW)jD~tlBl-I~m@Wll0GoVMhbiGN{`_ONY(P;i@{@F|%tLE`Kc(jU^?z!Q{d$XMsYR zd4fxZc9{ib%pya*-Qn_K)~4AjeW6YH)6&G{so$!n$mn3!-khg#(g_Ej!^DtdaTC ztt4|6&h*NxpXbo_%S7JGQ?35n}f`Tet|NeA!ss<@5rx{@TQ?ef}HOEahVPG&uwUe0M1G>Xq7Md@R3TmNA~}? z>IwCjK3m)J-y4VS_Jc&{>i((kagy%QCIRJ!SvMO)OkSS0DI57UkwQi_@+CD*uI{`$ z(;Wc2JF{!s&@CSbqz;84^AE2oa4cCKJ@p|#$j-28+6#Vu2K=BD9J(3UkWGsACzy-I z)#>6L0Wb5_!Qi!fx49(JPL5`eiB6uX$ob4SGtdREF1~yBN`hKKCfIw4vEtrPGv8GS z`()K4GqpOHhbM>=i;|m2t`T3kecN*DSj+okct5+k-?lAkaSgm-FT&Sj;-;1dEj&hC zxXHOn#uh)L6NGt#9jB&o39*ijheTD-T{@_WJh)60a_H97y-92wneFmX%CWY*l8C_6 zt9Et=V223frqmw!s*&|@(6b53)gbpZ+oj68-ODB94jvulAEm}EmCiD20PtNp- zB%R0$c)_*P?l*z}9h5LxIv7T$;~IvCA%Q)Y6k30W^qjx%%kmF^RP;4hmegR)ksK|b ziX*3BANQa8*>X8gsOD=g-XD6WPe*R|`R6?<*!hDJ-kG(d;OScf6oB9adF_UQL>W3xvg-EvDlxZvf5dMVT+%%0 z`T#nUedEfIRSByW;4qJi%v9~l95&1@=-2Dyj%fxHZlLEI-56W82H_Sk+Xyj#GSo9E za!QsXz4JV~SiGPXZKMx7&Z9gMpMW@3dFt0Ooh-Fu0;00#H(uO$R%E)GP)r``-wv3E zFRu789PI<1NJ6uvn=a=IIfR8(_y(Fvuh)7`_l(yUr?H)_bzDp2mQw5-K*w7?>arPW zzGU%E;|AX+m(dziYJY11 z&#mSz_MSX8;q)E7ilBtwNhT*qc<2go0H<>i5M>~sBnJ|KKbJg+Eh1PWELdqy)!yc+YZYv2J~g!g&nD;@&D#Kl0qxZ;rM^XY z?T1;{pcW{McQ>_jqy)B4WmjvArc0Ns*sLZV&c!EwsiKI&6HBhT?9XuSeUDw=KYt|4 z`}4sqHKiYiQ9PW|$S=$CzJldqVuU43-m=aDGy)4-IO@D8tmoKr{<7)76di&Btyiu| zQQX7oUA3wDodI)9@qW44AriR*MAf#9e`hI}h!D(oGxAPyO4;Wv@Wqw*Ms~`i;@(=m zsqwAYW>Hds^8k58x0=elGDoGv;J1k_MvPj!4mK6z4U>?T^@gkaryAY%k?6_3n3Fvv zFq5S6d7$IMD?nntpmx)*QGkZi%WFCJ?k|D*v%~ra>04n)k|AwlIrtg%JHd$OVS+t} z#^1$0!hzc~C2p^>l2fBaOX;kl8|J>ulD#U8~(sf-pj-v4Ib8$2d zD$u|HNLM#nOH+Pk%X#&;?VM9JY>A>BHUL?tRw-SRdhGJNEQTv7fh+RrPrabCCX6yu zPP?rl2;^8^-#=dzG{M7Cek2jMLoywZC!rrZwHgO!t;l3v zT|W4s_8+}=^-M=f$qj+fjeL`S;qF6LE;WNRNSEBP&u z>rv2pRTCFxr@`01FK)}-xA0GcLLETb*t`2-Ly-%LP#}liOpOPZG5jf&eGcvJ?`?>3IH6Zqa6!KQ(wJ)g^_5<>&&L{=E#{JG&l=6b zr;d1r?%^P`8c90*if#A4{<$a~O#ZEE51a~SPdLh`CXMBH^5;D8jhE%JDsoY~#$zIw z(6w5WwL6N9^!%8Zg$*3VFE=5C98=UXeap=-|Kq|8PYDg>T=H&1L(LPsGRXK)kO39Q zy9HCrkh7cv;Boq}h^VumGw-HqIF_hZf&7%&XaJ~XsJ$b&uJGx3lwjjPjMF=x3&%79 zo!g@I9KqkSnj5#S;5qJ?5}B+ znPK_mp+zQQtG3_P+pQ#Xj;Qk(-rqE7g-T7!1Za+8)L5xQN=c}ivOt&`CM9F4_xyaQ zL#}uZ-%NOY)$bz38TGRzXmno}u`YUyNNGBo@@hR@MY&{X zzhL5Wy-&ZO*zty+8hBY^7-Q6XuWsGh-nW z`5ThLe(Q7nXKr0KDlJ01B?(124nMqymX_XsJd|wIuw^<5qmQx+iyN_v8CoG8;q8y+ ze2qcxB=r@AQMyJB2M|>+6#g!rygt2{ol%yet$&~coh!07B!M3h`er$6O? z`~GVCoxH2$;{e&exUUmyOPcb)E9JS>BZbVpfJ2>wvHkOQq#Sq#rrW08dVAOvK3Y;i z$)>mu10|>Mw|78ac`ixEzAp*iIV(RW$cV6#J`tP zi{A)poK$Cu`KfED{+$e0Y943`yD$_^1=n%VE_EdDsHSXGpGtV(nOE-VPVSC;&_P$t zRzul>5)?a-LLoP-IP;p(Pe2Bq^0@uU?tzRGjspSGh0*g|jX5B5%q^x0=7)zPtf z0aeIO^I{c|>wk?`j@OHbVn+Wxy^{GSXpB|7=n z%qy#;f@q?n^}AlB@{F?97jpvY%e#1o`D&>7I;fCLo6rC8)-J$H{5CW`!D*RhSLp)~ zug1VXSLAo?^3h@P7xV>pv?tmV^(5wRn6*R*Gdy`Dev!#0!CQ3?X(I(sB_G{D&5PWp zWFT0sGRF@1V@vHoF`Y$yR9I6GUeCsA@If2aYGwfHyX{(8f1Ot6QgJxi>TqwWt6Z&f zop~b;7vE;^&)OH(U-)gp4dt_)J$H?fT9e4xzIEJi;9lE)9eL)@O-WAW_%uS!zm}vW zXlXfsa7#Q|KVp3rzfO}<{OF5IKrp-X_Jw}vIJUk_eA2HoO8`B5YK3pQ5)Y2tvxq0~ zyG)JC#s`7RKI{hC{M4Mio~v(2f#1pY4lg#b_*`EcTq+j8yPao^i2@>!6hPF8NG8_NA^8FuC;d*l3l|5 z0HALrX4;kLu?xoQMwxT1?!u?iR%co-?gwW$OC ze>Q9ne<2?8BPp&G?~79I_Gbvl_yT_2I_;J8<(OmGQqgaGuR!I^jz*U@D`w zeBV6C)5HMoz^(ApiXyBl9R@_9XQm~u7YuS9W$(U_Z|DrCc9Wj(sINi(TdU8ixt`+I zXE$2l3&MIs;#9oS&zdp0zT2&aSp3&0K)q&jq##^S+)70eIKbS|gO+7n* z_;Iga^!&^&$fmDwP)o&y?#(o#|D)A}`nD;83s`V%`|i}8Jx;XvS?X#JQg<7@+I@p0A3eD}G7 z2xy6OjwSWwCeqZdF4@5W)}d*FhIfjV)n^f59y5d0r1$iw7(Ly;!$&99=4r!#>RJ=y zyQqabbSn9tox%$jsUy4MI76Y+x(l5Sy*z_$FSqVme@`o%6QHh@qY4HGs$KmjX45d` zwwz1{ZM?zt;P#unVp*$v3#=LJQiui_PjlGMCHuZBx4v3PTBe$lLtIi>2ZcMCt3gj! z72_$n(OZ=@R>O4rmcD|uQRNPyHh?w2#o9@LZ~t|^(BR;a*YIY~gJfK$>uNhy`6&i; zcY3_olGbf&Yht1jzHE;g{y94+;=9mcx${CX)(_DahrNVMG+gzYNsXIH^A^uNH91PO zY`*dBJ8godc&j@2afMc#*dt%7j|Il;_CD3DTP9fTin-oBq}pMA%9`5I@F&xtzG=l%te`(T+|vrg)o$`X>>|hq zdFz(1Q@Esw z)e4X@_lZs@q9UY$N`B<4@#a}rsgf{XkUsouB-{7?0`hGxua4+iW>d8bIr;^}XU-_u`a%j41NoOw4tGNM9H_LQmBjkL_!P`V>u3C%ZgTz-jeW?k(J zO@;iP(|3)7z4+{F%yl8Dec&~FTy@;Qyr`btHzKDZd2LQsia@9&G>{xh=HYYwkFcw5 z)vhYhw7p)XCqI;pUy;3(?>+cIP3;#;$?};NK#fdQlHtmzw>)-b8xdxa zODSaC@TTOgBLH6HGLxX7s35E5#T}$wAw}q5uO(5>9;KruEb4WD9TziOv69_ z{~tiQ3^@PvZsm3Wic!gT^YcSEy!U;BTJ6pogi7zFaezm9P1QTVRnSYZkn^Y^` z#A>-#M}a4oBS+uKT6f9-1vF}YV-CkvFrX;iLEUTQK7vssOw%S3^z(E6WES1V?Z(?D z&M-hLrxhejRnNGO({&A&wl`Ec67fU@sn1kYMkq*Bu3a1Em)g&HR1j|+dHSrQ@}r)Y zhR-gnvS|%-ryxpO$&3ECPa(_AdxwJ`cK8pi6r1n+wmX&fBmC2xX@i<{&;9+6;1T8? zt_ZBjwlz!qs!q*SKmPbdG(h56g0rOFSW+mFy&((QB64`8-)uhA=WF_JVlfIZ zLa6!67Z+BY3T#fu6*Ta{T z??-(-SUM%2Bg4QrmJAEg_QKnJkWd-?k)b8-&Bm%n9Bn5#0by8a@XV^3(!jD=f z+l4HDtRmb^FDGDu;naW|m2$K<;QBdP8j>-)U5KR)vS%DA-ouGHn)?reIrVsE2CfxG zqKj)$uvEFAD^LDAbpmi3b`6=>M*HvK!P3G*qvt%vXR!^ z9}%VgCZQh17lF4@vw?MGW$|R8dfE(7z5JaD$^t}Ho?&@HYl7Z;Jr8_iQ;PmN%6cPQ za#mDUf$^#5{;;;`rE`Dv?Foj(gY(+DTaKh%$C{OmLDq+~3^DU~?{9ziB!w!&WC0ts zkUC_eQGWZyu7?{Y*Gl=;XO6#|V9WpFc>!}rnSJ0c2ey{l|-WzyPd zi{syDKjj|dYl;|_VK7-+q&C)VPgS;(!!kZsn{Qo_)n4^B%D}`JLqg)2+y)iD#ZF9<_~vX zeV=SUN)8&>UAbJ!w`OPaHom-)oRG;heI}f1fQ~W|xDb{*m(|709Up{C?Ak*AaqrbW7r0q)ZOVwj)2lXKcI#g@k zrKBNVG~un5!ZptP7U=zVX@g-DP(-%aE*XkD-G@XjozDGc<3I++JP2?VOngsWNqBqf z``=?+>*snIVrIpbSaWI?D%2h@UZ2fi&o*A{&wxskN_+{N)vtMtS;l0g?k0t?;xfqU zOz8U~LG!Q-j_zCTF0hDxAt5aLvccBnc>VpKr)*4pdILrshDRE#rDX#^n>9ndk$48c z7UuJ4PejELVsVy5Q69)2U8Wi@Lfib8Rjgc`9u3V0Acj< z;WXEU3t6xUJQ%AgrC{SAEg7M(Ov^S>fYXjO_k40-&BF z-YBoLr$r#pa{6o11IXnkimE>n974KJzJt*T(*NU1uX3Vl23I1ZN%UUJJ1m7YJ`F!oU0WRZtV@j{*Av0NDV@fVE>eKqS5b>Al3J=cz*$%$1(G32w8Za)4G{x73NFcmXp$xr+y)|7` znN^&iO_Tb!F{H;nCZM)F5V1_FPsg1i{Y6eYUThAn=!7>+#&=&3N>_7unjNz|t*?YQ zk=pa0s5_ASlCqSm7GE;I0;e-nDv05|H*yDLO|vF-IsVzavZN2P288N}Ppv@d){*tf z)*ZhmtA)uDt;z3uatqBA3ZG!m^>vBd757D07e8EnG2s1ktbkARXWf&h`qZ<(9HH^8Q zakJv9%6o9ILX3%85O0p@PCK=@HjZ!|B6-Wgdh(1XYBmlsQX9gsU-VWODx#ND36KRF zUFktq8cagGS^^O`=SH{i^#OGFfmB$XVQTr8u#+b6ZUab**>Tl>w=s<8&w1xd1+0a> zA3OHoSiGA7qFy~oqDiy{VnPTbFpnxj9YHt#Fq4#psaCd63B+wrHlbEA^ne!RTjn>6 zQB&D)JhtQ50e7URrevIbj^@d|a=zFuVp%9OVeZx%#mEl#$q6gz!DJu{wue$&xzx zd?sSd{Z!<9Yfa)xk)wXDV}`?Gj%@ zxmyi|QRQ3h30sUUmR2@DC?2|#>{qm)^(5#X&*^7I8Yxe`ceD5TNYXq+G0vq5Au*_OBR;&8V$Sn><~>0cG~X(qyEWqB-_<$46ldani|9* zX;2pHx~Bf_zq;zRlDBYIAHj4+fY5bc-dzC=ae~a9gp{hp+Rw_*vIs|SVn`Z&v6u2u zG`liJTW?`mYG{M~5~gh5eCNWHGB&{JmuCK zpR97ekgR@C(`QZ{`=B%Y+qFug2w{CIUvi`}vW9^qaxyJr7N+gPt|10mKn0@4Pa8?M z(VeXN*-c+aIY8cdxge)zs6*4zPp9_YFVxZ}w#5(jZL2JWz??HDh#=@#)q7fk5D35= z^{x6lY68w&>^E5$9vUE=|M(P_k5C8q6=v3khRYj3>D912x4qWEpeZ!CZ&81Jqn#;~q z7zvykI?+cW*l!^dC*X187rIFzxRO$@83ms7AcERY0yj~lnj+7i+-SGw{$ zT@}g9+WxxwkTH(-=wt2mE3JZ0Ge78X{nztsV^goHgzlez%AaDtc~qhM>39B{WRi5!0@b%uMz|%d!Ba4ZynGlUT}b`t)pQ42PcL;B3{%mtX=h9$Q|oB_e9+*$@hU~ z>ytYJA;OViu)RZOeGgsb`GQuFe2KTKJ8_%rUmF-S3+a=Um4)l2s5M@@-|NF2`Hu>a ztP+pD@|~)7r4lh2ZC!0AEhszJ%Llm_m#ATZkXNIZnMblyA+^5VwFR_t4kLA2CqUrE z_#Mw>x~#oT<=vHlPLG0Ob_46S^WmG&(vc7J2Lc}NEv^77AB%A%uwKo~2>Ww3*B*ps zCZ%yA;GkhrQ;TYq{RQQ%P_Muw*-GSBWb^fh1v1s^>9?w~-7q@eZ7xUq{LqvXDKwiDzt=dqzW#gk>f1S1G`MeRa03L#QHSOc&E({pZ7#eG*_Dy!0au0b!YSMD zgy&9tyuSjmRrI#aoZ++}8z*~t8;(;uw(7UQQ2E*@TmCw$%1|Wx{=~219~jL>@>KBn zNsXi4*FDPj46V;vW=$k*9{l{F`h6$s4UcqdQ$dln-?&LnpuPN{dJSVKnYiXjd?J}B zXb0;K(*`HF?0PRxN@=&z33RP-LOC?sEIwSxZwsa>&%5Pt-FSulMC|a6)aQcpMZfg? z<*PqG60Yb&0Z4y*mzuKH&ZC3rLq2F`R)-NM^;QP#v??YQz8_!MP))&9EY(#E0{1xsA2;drnQ==;>KfFks*;rn6Q^=QT*8DiRL zyR_w1%5}c%F22a*_LUItfVtzxmu|hheDX)TaM<*#`!Oz~FHOR*NHbl;3Msd1@uyW{ zXc;Cc-UXdSfoa>18@UW%Y>_L14R=acvul2S1B7NcJjOnM_8H=~v+ezW66kHsc=hMU zFENj%w{liEj}nLNVQ+=ap!z+cL$cpM_nIaeV37rpEu8HitOcIa)U~Yvh-1n_wX6Lu znO)WzyBInQ&Kbm^pMIM4b@Crgoc<`l)%ubzs`l6wJB#gi$p>?gcy=$%>GHl6$^9IZC3ee^5tNjRuPdk__LkdpEZ(k;SzlR z1SW=V-5-OB;g9t})eZi9o=iIXF!I5t#jPtoKzFk7F{V-fi3qL zsb@)aMcrO=2r`piyLzu{aSF%IhN;U~Y;jIOQug@P)>c2qbRaDrVi6$8A6&V`wd1{3 z#stBQSIyocZV$CUGMX(pDbczl0|nIOk1ZvcuOAxA{zFIvslhwHP7T?Av<|lO^2A%t zCPZXSgRjFh=%)D~<{lK>C#_N(R(F5u$=??Xno~uM(WXkAugp z0$qpcN8(gcVG50^!Orda{CXF|fvBl}Cb^G?h}baOcsRlG_%EuJ3U6EIzjRk?@$4T5 zqpzEj8?o>6<6_)_Ky$cZcK--2a(r$y3K484qOF`HdQM#{_tZw{H-o!0N}5GDc{H{x zHU-dn7_gc-y%O7?;lcYzHlBMi@Xn%fZ523O=h!c6?S$|w-Y?N-e=N_J*f3?8P`%vG zNp}Q7mGI})GQ@m*0c6(A0b2lYm}bJD%~SBdcS1pW(ifnSxN8eyDRDpEou3w!nbtM+ z8BW)14FLOjuE*OV=MLdJcDr>dYZ_e^g?J4G@X}@=+ugmawqbZ-q}Kl0BL+pjnrcjQ4R<(~^L0uXCg9|~h{#6!+Iq7wZQ8aCQyFuLS{XA-6O(lH8B(pFh6p3@% z#I^C9^yHOKD*Y0i&3021F10(*7{uI7Tt6FNYhlZkwYev9j40 z1J@HV@u4L)DrxE6YMB6r|GtJryZKWR(5f;sR`OzRQP5M%;(S5*NqM=YZIBR{sYUx* z7AM=S-XbskR>(hxci<@ieI}Ua^h>|-`GFft&1*rIfN6GXX=%lz{a>}(o}`F?h49#` ziY)_q`Cy`iI0{Xm!8mXC;-M>THF71cm2a${XBnsb%|OhjR3Q@{eKcNqy)tj#86WI) ztv_8Eox?ncI^#DO>!=0CD8I9hz^ddHWNkWR{EtiXYD-1Um-Nx*hKp;&rQgZShR>`2 zY--M>e0*et__6snY&FzpZc1bN?K};2^gI9bU>-|q{hxnL9db4mwBZpvrfY0IhyT!Q z>1&pedo?y0JGFqfT@IvR#^UXU!_@<@c{`~lYyabVr<&%!FZ?fDaainiVAgfCL4F98 z8h4M+?zFc3vviUuU)!Jae1l$>IFXhB2b#Ppodz=kZ(97V5zp?<%ZgA#s+wYio7D{r9*p7=U*wEjY4y8PI7glp z@fZYqC#zjLD|-8-+o;iQZxPZ>pk1Kk9&@NE5I@^o(Ew(Ns1^#@u_o(v^BRC*qdF3IFqk>mC*!oH~3{vU6r?Jf=itl)dM_m)jfx zW?hL2eC*qCgF4~vbIM3aqvJf!=XCJbkAn_0tYB+ND(;-L_^`^YG%Io$xga%+LU2qN zn)vLx8G+Ubyi{*o+35wosZuVkC*f%19FeQ(-8KSYt10@JO<^ z^pm3p?pXH}1Q z({32`yC2Ux>L5USEEG>ci1gV%KT@kf}OgmU%PZLYsf7RfPp- z7AKQE*TMo!*?ve@{8Dkh94+EbyH~U`?wQdcH~8rqRPD#^PY z=aO^r`p-@7OpCseJNl^zluBue*JRg=t@MOfoehsy%j7Nu+o}+f+9<&E+ub<*pbQKa z_`m=1OOEHad8TMQ)-D?FlrfXr6G6VUj!ho}=5`xP({=hkCFD=)S!z(RzsO7fsOA zJmtwfiMpEW3>RMXZte2Rnep~ND6*f<1MmAy9&SzlV>l8Y>$%x6wle2-ysIaXt<2#xZa`P zcItLg?k-2Hf%lf>3dU+}Y!AahTWgzesA|T}Mk>#7blL>+85@MZRqSaW^a_Bl^|R^l z{5r6?(PZ+>F)qPn(F@b=LwhY*1s=~(dmoQd?;)8bAR-H3nUb!MzPnH@i=h8^yUxUY z)xdW$1@cPD{c(>i(uF15eZ-u9x1`&wi1Wma6ez4XC<5I#p%}#DXcN>TtC5f8CG&jV zx*rj2(h)MnKm*4A8J$(OaxyS7?T)eNpS{1GHM{WnpfEl%xD-H~FjQY3ZJOK*P=TnS zp89vbqVRj{6cg3Ngzv7;NTtWD}=*N zJ{?(?=4aSl;rV<;Zb9f4;aH196ZusymFKDXG6YT8nN&C!9j|Im+IG-R^U>p&m#tiG z1sGYSBW6B+C1ZM4*5aORY#EBd0%x?0Rk{D#OzC;{=`jb96uUP% z*%(FDAGP^iGVc;MIU95c)^oq68YV%!yKh|6%ljw!Mx!25)cEF8)|aMW5CR#ld=*7_ znII#Sjh1-Q5@%%E7Jq=I`4<6?!mfOR_w}u^NQe7EB{j3_@3It(x_#~3R9?zuF_a_1Rqe?oiztp$EyU7NSN2u~ktLy!Y^WrAzp zlquthWypmbDMlk&`t8TFm+P|h>Jrn(*vilkQW};VYd0>wlI83*kn5w!fK3lKz_#R^ z_~Y^A;du@I1)fHGyLx(o@)pVnC=&=)A?vwpiP?)OyN%9_wm<~ljUT%lTxb3DFo>+ z2k<@7BK4^JP$%|RqotZ`ZU5%Z;T=#QF5gYtBGdBA+SkF|K53Z1=%7bU8{x!*LvtWS zw=nbM`6<(=4BGfqGE#}Mlq&lqpV%An!d2yLG{)z`y>+24djAn727KZ&WisJj{cl0>DZvM3^4`l7B{~|vCZSr3QifF5Ip{gJy{47n-`CdEIGUFBZd=@&3Pp-5^5!;fNj;#H(qp-XT`kiR z%KT<+EnLxV!&=sXGKoaNUP<(W#`^v52EmEHF2SuwKC22IhMHo&Og?6D6J$^99Ev!4oOU77gO?_ZG{mMbpCHyQNpf*tQAyG)^!W~;ca z*`IPYA3gni6DdN6sj2liaZ7^?dVntY&fIFkJJ(dqM%KmgtVAMt2jeOPn*j+)*(MTxGo+i!8bIPo5>WsSi3wA!AJKIr>_hvtM~aZ=L+eZ>J&nL`(xcN?spr-??|vAZBhDNt8&Nqa`B2^=U*M`Y|BF zndJ*-J^56dkmu32Ec%S(9t>^rlYL|xT|Omf3ol`UiUdX{+LW*C?en$1%DvH(u zB!H~X%5mop_4f^uZaD=lVjBsK&zT7_@LPm8v){US=ag>q3z;< zz~33nir(>BJ1lI0UMHB$yRm*1b;kt6#SN`6z7ng*Q< zEev{B*6;7utWn1nB3QmUR@m)Bey28%pjedIw-kd*Eh&KJ)$Y`&F*@kJutDwPx-DT& z#T*ygfg|-VU)g%jp2aD2f?ymi4b9vy0r+YAj1kOOqs>JKi+Sx{aQS>6<~>tBQ0@$X^ivZU{n<> z=G0hd9q>oAH*uNv-zl=`LQWdE21Y9#OR3pS#71cL%Z7ZNSIJWSq5pxtn171V1Rw_% ze{kB@>Gvt=o07Xc@GaYN5f1Z-jL)`lZ-2b+ZViNl)U-ejZt7Z6v!QFD6YkDZ#zx9wj;G;dyI>v#Y zilxJ{9i~Vj!WkN2SDqSCg2GDIq>p*c7^`B>3Ih#7NdIjMw8?zpem+veKW)r1AY|$A zAM;f~EFk7#B z5$LA7U4$K+n+xkQ7_ad-Vlo1|Ipee=urI9t4j87K%?7!dMr9jysZGqPIttEwOE zN1tdlC-pD)exjZzb`#>zmT~WaYI~VLGfazQXeJ%INMtsQV52xlUv%N>Hl>(`ttYXKw=l0wl;*2d`={Q{`8@EeV9mj`QcWC{Xd3F z5SmWul(ElDl}Oi`s>4IBiFV8KU!AhrQ45@HL)t6(%(>yaWmi6O4P8%j-v4T7W3Or` zC56RcCR<#xQ*knLjXHZS!&OY}$k%tl@6+6-Fyiq!ri-09DNNDh(TJZ31^FBg^SO5Q#gy5lRM7|a`MWb4 zKeinXo}T@{IBzG@C$?8B*qGb}zq#u0H-rB^B+DQ@V|*om1Hj0b@EO1+ttXNcp0s~_>A!Gjt!WPGC}?*k zx@F)vf#rgepl;dPSpGGmmzKvJmG5X%j=d`W{Wc(?vdfWIZUyc3L1!#r6ir_p%29J# zyvv^6>Gi3HeE8OO(vLk96MUz_DZ=>WGIemyG*c?<5h$fTdi*3}__`LS`_Cq0@7SgA zoiS)&bLEHE*(XZnhczv)R|K$DU4}u+>+el)ZwcF3eAmexOgmRyU!OMh6t9h)Ka*k9 z&~EG6HA9(brFKqO?oklIk$959>u5Qr5cgPW#Lt&YM#pNfBWO)V6W$vLb%e)muy0Qo zj$1Ap(qg@Sa{ASDbd1wkC!uc~#ba7q8ND;{*{2(vCRBqr6`Y^-Sl@eP8Xq8lbiXio zT%WWSzK+gMC9!lMB=gy=SVR;el%h!@{ z@3-QYvOMDrDe=jSCtso|aLivd0nn2~s=yo1hd)g_=kT`S8ahyg=-nL)&A`z$h{wr7 ziYv2S%5otVv|fN-MiZtFw-!yBXjStD-xhC&@U*4KS8ymDH1pO-en@@uw&T`SJ|km{ zi7rnY^R4`=yH37=3iP45xmC^KBE>2a>iQ?3*8h_JW}s)2a-dNCDQHU%oso&RnowGp zPySQ}wcXy!y=iwdcU8Jkr0C*mSh5%}f%S`TPGmA#<}!`DDgUZfA-%e$QfBdwfxFUn z3;U1ZQFD@6YzYhGnnfJ`9Ap922DvY8KrmVfSqqnOQI)pRsdENkrNjy#&8@X$`CZ$b zSL5tEm9_O^+M_m=AVmJB;*!k#I|uwr7)fBSrK`s z24SCZOy80RrCfAiJq02MT(Q-7w{QK7Jb&*pCv+}*=Id0mwl3hFhL%s#bmsQM#1Yg{ z0MNpLmCFMiEJ`qq1THmAV}7hm{MuQ?{K1=jaH=^-4{fYN4$W9JG?2IatfM4WGjZ|! zB?UB3$_?do_L=tq3yH0J1NTmA*B>vCu3V=x*EK|Y={Vvny!HIH6@I)rqXBYvA79sY z78{d4tedF+Gfbj%9~11=xFKDyh%s2VOrAgdd~X*DJyp&F8nRkEAhp#;q`UzLzdcc- z-f>>yTo77*@7*?Z**Cem$P&`fHJ=&;@Jxqz?&BBH)sFH^QeaG(Me&#=uG6w17-o64 z&>VM;mhki*UI;(4>fm--xhnzoFR|<5tsu!v&f7c>zQTIL6!X73HO$YS^L3>~psOP! zSLXeuh0q;x80i-c?F9wPCZ@hc^oT9`2zfa4 zS~f=-o9;DJ!R)VwdQ^oLBPnYo9S6k(CZh-RpBN%a==8|K>XHkdk^pUn`!ydMEA+JK zXFTHKoM!bqCIq_+Ex3@~aEFAvAME|iFjWDz2r-&w;1bwYxz+pQ4AGjr)I;6uH4ULM zm_LnmDUI6s@@J~_hF9O&Lz5Jf4;B%Yf@~`i_G&v&P47Wrw|PR@SjOj?e2BIHE7NMu z1BGeV1luOzcytgQ)@kAkBkb%on1Y2}LLqA1UV0@R~TB$=ffDD0XzQ+DXd)@QNKRCA$bLE@! zos7e-3Cf<4g=vd;3lUIFp3klf#4v>1e+FEcVL9iXHlT>TGibRm`8a9v|p4dVHSv7phI@wj0^&&^$y3jEm2xB+C5*gzSn7k3z)Tt@G2Z|3_*La&6=MMGWR|fDE8o z_asWpiX2!2p^*itc?aWz^r7o9b-pV3mK@zb4xjg?Yp_sb%ZBUdkZx&PqA8eU z#o5*QdqUBe+14Qv*9PLG4p_o$%ThdTue{kKYi!7iNu<1P*iQeYI+v+(eQ|$Q<@SS* zs(QD%VGT6*Po3rt%p3Y;u;6AQI1mL0N7QYI?YeRH4I#Xx0SgiqO&Pc*J+~~}^YXIA z1MHmlrySAhrqmN>ed;+{(&ZAa_O}8m0Q4=@Pxqwi7x7x#AFKO6ebKGFq6k6Vw7J26 z4bz4ri80G)&x3Js02)rU)V}R-?Ie!yis)%fv`Whx#Wf6zqGm8sq(y?5&4CsR4O7(R z^<^!WWlv^bLel8i;zwvw*A%;@2$8C^#vD2zSW`+@HJntOL3BiFFmOwPA*)ewo+{e?l(kCxMzGZcGE5$-he2U6p`(!rf^adfCU$(E2#BG`zn zxa?b6lEO*gbNP_GkkNBZr%U}WlD%1C(f7Mw+>5a$-~x|cXs{;il~J47d@S!aB*s_~qhv%H7t63j;=aqF1Dn=8O_ZHXoKTg0 zA6Ih^lihCHT!_~9Ze?$`1%<^XzZcUMCk z<~HR~>2?b9^ZPF`p9<60N!8+Az$$FLU0{eotR`&fL*DYBm(36>y(_MQdPvyH3)Z(^ z7|{|58QKPEdUkXa9KAZa(jLS!mXmO0GRFLrJS>PQGj5k=M5>Pl=?A~YE`G0oT zTpE>)Wty&qBT0Q#=HIZ8q6ZiT7JEXDE4PM7iN z)1)iQrU9i5>IK`@h0Wk`@UeQ)#Is&xn&Yylh$%XCB;2zlvzk6MfdL}`wAcdH&>tah zfVq-I-(10Lsu%Z|;?#E&7TyE3nL;iX)mdFEz=Z1uavzldFdZeE{X+c`I^B)DWmr=L z(TJ$7Zy0*o#MJURnpXn=DG9M$GPr7GJ~m1vJG8mfy1fx&p}hTBBW!nC^tDa3S8?ZC z@XgU&R;Li#?9d)YuBZC^qjsmTqJfogOR|pPpmG7Gk8-uPdz`Y(D2)Qj^veE3iQ+p? zq9I^gvm}AkjOz|}%n=jH5=JAGrb1#>LDbj`_g__j)Hu&q4 zknYk@ZlleOHJ3vx6gp~D`}Q0j9;)Fj_TDkn_Ue7WOX+#*OYy#(PxX_gn6WC}j1h7_ zOvW=nO{7x`i9RKq`D*R{=-~v=BlO7o1|_kSASP`|wDQB2;e-9K<7+@@;55*fD7fHk zrnuWc#U)#7FW>&PykQxRhPLo4W3^nIG@?5Pb3dn0}6jKhzFA#Ts-K zR)rS#0K!4XUXj=5`1w1X9IsOo#4z#GbRr``HsvS$7GA8s$VQ>RDI-Fd zhpD^4WHfXOxM(rb;=vM6d<>g8XFKVQ8dZMkg}j|1upV>C+*v!|UJ{XuuBHNar^!?fcT$B#WTbFzw)SzJyDcYMZ1C&N=r*YN4&6=Y`VWV2f| zk!K-#Qjo)eGZ4T6o7M52e+nyIW)$rG6~!{`_u`eG-_-<}kLUayJSKXA-}B&hqxoDS zdBK3c>12BL7y@?7%>OhO#g}t8EB}4sGJVDnSaa;J3eumdtbb=WVFk9!ZdRsMb^auN zYkY$Clr8@+Lv6fZCqIM7K-8x*-E=@XKvi{?dowcz!DaL)L4I9R{j4;=@tOy|%GV?a zYBRZ7R$mQTkJ(fm3JqX*}$0IHD4a)oD}nGH&n0A zZ4&-93MhxvY_8`OltKP6xX~ocsV8md2uW&9k(by1o&*NYX3H-@z|69p0MAJ?#IpP2 zsW+E3;8UzAW}V#u6wB1`Zcc=`pp1kWn!PA|r7-(+phaPxJDzCTO(-gCOkaBz4&0zm z7#j2k{hARORlFdM2KZpa1?tk!xU!i4VuU3AVzAu8eHXI}H|vZ>*=vXSu3?N~V zTG4r#GejThsaV=>f$SevGe1jBR)m2jGOC@3hWft2rU~$9?>My8gH}B1J)ZSb5~~?h z7u2)Ha(h^XOm_(1e_vkG2Phsws_yi555?rq^=fDr_ku%Dv`*D?4Ox4+J>#kUj{^Z3 zjoq8iFG3}+l5@TZ`3^T3zo!9j&0P=lz3w$MW7jRweZHT+k$NOLsmvZ}{IoIuiGJ!p zMZ{s6*Y?+%)Q?$VV@8HgN{oU2%ADAcU$7b5pCkP9qaCx}?Y*``(*QT6X@*f}cavQ& z4|)XL5IH8>9h8vp`FiQOfQ#bmg}5%fDOl#9(Llc!B^GWYfpfz*tdD|Ke#8to!fP!C zDjH!F%DXNno?y=d(D;e|AVg?AQ(3`P`g4@nisgm9nM>ybxtB1QA2F(odq9)EC)+cQl5~41hYL4C&H2_HE z#<1N_ZQo>5$ch;i_;CM?fC`_(=@X_L#ky(lujY_~3Jx5w{KbJDRRv^*MWAj&0;QSKB~yVLK>)gQDtKtqG#-U|70f0 zI@e3pq%LN*zt=f#vz4aa_SM?YDlsgs-)4SWoV54xg?GcDec7IY)y&7a>Hq32M7XO; z?j9l4u<2!4sS%a&m0=E~e1zZpEs{HY?lv zI(6(;{^fGaI}M&soyu20*T5c56+CF~t+A{Lh(`@}UuBJQXZ2-~sCjW#eNc&o&^&pQ z1TBKv=jHtN8f=g|AHk9Gfi1C7m&QKK#c`erUZ{O~O|H(m=G=Dc`2wRSfSJv+lP_AYRj z*MHJsEs%RXXIN*6kooj41uOS8?sv%gbGP)ZjirgRCNGFoW+T37lzeyg?1$Ea-Xc1l z=@0F8#}^`+)J35SKjd7ZLzDz08DxEUSz!%7b^RoUK`d0sUE^Y-W--EnXTUt4oYR|Z-N}igv|qJ^1(-1d@;#klKzhL_&wd>^+GA_`U$HX7^@ z?m2N-XK|E88Ih>^T7C9YOUxrmq=7n=pGUJ@+PraatD~5vG(Gk8P9@AG;nkO4lNX|> zt-rKoG`%l{Xx}zsFR|)+qTe^tWuDo%zSj`uS$32IKR%D_o{Zv=9@au;4wbzsJyAF- zqlnR|YdhUW(zk-Az2PUsLH>O2ljk9CWxm?c7~5~>IUoAb0+r}0r;U5F;rw}pxHkwH zwYx>h-EGY%wype?K`yBvf~G*EaenUA**Pwe&t({bMeq^mJUcwk|HRlBa^K!~&gyM? zTAUO3B1NksRPy^-gGW#!nq zrh?NbnsfQDW_B8eD$wCDd7QG7^%6h7lXmyz#ZMLn(gw`zxJx3J;^vy2<*C7mwZSYJ z{U3Hu4KM(IaSPi_&Fmu{zXblzBsjA?%*w=Q`_OOtfBAZ{ftFfc2)OaLI*)bI-wlGg zO$|1#0c5kC+X3RE8E=DFZh#M^g1>uuW^yZb4)OhRtZsh+0t(`&m8>xjn}>zA&6I{u z)k6OMrVJ2_QGIaRaQmY%Adw^z9km@CS9=N^@YiMz@rr9TTk4#ja(-eHi7NN9&#tG( zS}qCK(ryzKccs*ze&5{qJYcf=5@AL?Q@+;03p zE{LE|?dNcFIDbIn?wm#y54TN@_kLJqvc_!FN?UE8KKxx=Bbp=9{63Q6mNmScyODhI zDkQo?nV67!IpTu5W~opyj)Oz`>HA%jUYdFZLg{&E;;*0^@XcS1jJzhUiw26as6dztR%7z+gtP{iU_J3je!lVTHesD^6@A{Kvt!Br)z+XO!Vr_2h z#I*UeB9oGnQDU!-QU-=>3kk$8ZAaWr#rM}`yK|W%1i6fDgvGkGHnf8_hfKXpOyVpF zYXa(ZV_1VoT_WC&8d?51G@QExC;p-GveTanF|!Q!8|JRHu4@0FR<#j~UY0E_ESICU ztmwnt8`vLvs-Wu`-x3y7&EA1_!XCoClyRLiGHL(?bR=IK8`(3=azkkeY;+)O*e;%e z_{j6l%OtUJk;z#&bhyGOTdn!nfI?dd*WTR>Pm{f~5d^cv3P{xCtf-4%vhaq_<4s>& z3*G4}FOhtO+H{Iq@L<0b znhfAxRgQPR!y(hdx9s0v7SztX&Ch2R=6(Ib(W72INV0s4yvlW~&+mj%(cUg)SFwWi zEC4nbYNb~ZAo>#Z%`BwoBvW*^*9Opok?;j8VBAM=P5ogSI82d_d$?i&UP9i$_qzNu zY3AQ;)>Tihs$RFL!23hVcC}*jtFv=f94zi8U8*|jJ2*6^8cjIdSEs6|Sx=s5>2X7A z^42M?GJ*O4AyT|yb$Y$cpFsqlWTRTXZYSa++s8}VO=Dt1dd+&y6XWp*gDTO+yIMr_ ziesp#gzj;J!*h6~A~t5RW6aeim=G*i16<8 zaB;RS@|u?X@_UQ4zlt*`q|~|uVwRbvD>3uU;%tE8?g`IBtfayLu%RVTy2M5~e_w@| ztxDZA;~p6qFM5dNs0J?`*i`^(jubYDc>mFjy}{dEcXOeU67FA|;&!Gj^=>;$Em3~$ z{%@H}gg(kvq745w@1)aT$As0VH-PXF2-(-t$|~GeliNs4J-~7MPm(~t#EN|UZsN%@sTj_A;9z8;X+(Mg#;`6)&$%%wJK8*J*=vZ^#V4{Z8n)2)^2O@jydA@ zJEbM_4Qe-SvhK->)$&cHVk>_2^LvLZO z|53rW4~;CDj!KX#;|)(LeKY0lCKBv3<-IeOV&dn+NjCv(J$en;M8wwtksI>G!kMZU zznG~qEr_TbRT4};i0cjkHd>5n;YU!&N)hpu{FKto>9V6#{k3oFa}V>%;FAv4Cpd#_ z1>&kZx9PN0)pYBf?y46V>wi~WVP>hH1ya>N1o|K{uJDKL1@j=uv`rveLg!d>( z4p9HIa5M<;cXO-`Xa(F=Lc5`ZHu5CxJSvd&L|c01Qn3tmp!j(*rS&Q4h4m0;iE3{@ z^p`ui_xjHA60}!+2C@ZNJ!m0U=@Y|NjaTDR8?r}J!F2B^hZw5197p!ZgX<>8dhhqA zhlgxf=PMX$jRt)Q=4;J+$6((WDD-}`q6?pIs@C*+6rxABhwbr+ye(Z^HAoS;o6)zq zq8(c9mPeYz=7kp?Ru}J^a7;>9S96F@J2swZ4K#2VCcl92cZeU^4$zf#%2lBN9W;V z?aDPp>7HMYhYVgwOa{aeNaHgyI!>1@8?-&&`Q5p&bF)*H@9fbL{V5*NG7iii$$fY` z0}kkI2slTd$p^N)c(5y+IO*VJz2{}58Og9Vk?c8$_p)@DSPVK5uZk59+A5rmPCwIc zR-h|mCO#;9E)Hh%bO-Ri{ zLf6-k`IV!+s|e(L2yAUu7NKsIp;5|7ADC|qifIBTpKN%o5+7^~zb{i*dtO`r)-}#& zgKVy9DWsB*jiHH>yrr<5lHZTLn!cn+z=!5bixgF^1 z`Ivd7sevNDKEO#Uim!l)S)SSO>2dW+krL%{jptyf!f13PT-~Gp%F~aFM=<*uuMJJp ziNNE(DfE_7Amo9I0r)%H2iT-nxAJHGYENqxscsgA~a((;`kfa49_s`|Tfk4xh^pI3Z$GGAc0+uQA2H0C1UfHY z<2tt(Hf5uDaW}^wLv}$$VJ}Tg;eHe5aEJJMda`HOWcxmtP*j&Z@GD{Jk$flfRiU@N zya@@*9^Hn1goCudeP|V&giO$37$mPDE~9*AU>yMil$Gc*=lgpp*Nl66TY1~t(qK@b zRfw(oM{Ko!S%{}ZOo|Qv+%>l4D_2B{TvdMw@-kgt&D%D2*j!pzT&D+>%GcZ)R!4G} zKL#L$mH8rI4%0!l&HdDd*Il^Zdr%om-Jf_N@D58Fy2DF5V1t-XqcW@Ua<8H+oAjaj zU}^dVaA&~;-mg;=+!Z4q#CO^e!5Qd>@FlC}(m|cDX_;rmza#uACV|4_+SuMsklv*2 zvujM32P&L?0T}{@);EVB9i6VF1*G>)`%N2>{Pi{>P~ZfVmD-mzAji6x3dQz|2)ja6 z8@B?>>%sgn%|+!;<~60Qy{c=SPVVH*6RjUeItCH>2w$11#7i@#3N|z!x9)-|Y1CSR zt@JL;1Ul)jD^=SyIX&X%2Pk46%rk^L%T`k~>HZT`-|>v)XrwZL9H9yI*kie6;IhGc z90-@D;x50|MJIONDtjRV<56K`3gK*BMZH^ohXtrh@oynF=hIUsN#&&M$we>$4f|`Fk44 zC2mRhA-Vp-6Y@y@l_|d<{QQmh2c!A*c-Jo^K+WiUxY$)W#K(_sv{j%TJOI}PhIFUt zGT$^vxOrhZfoLdY+1QV*0|o=M&=1iouGXa?LlHsz7|GB&MK}!Lx4wQhA?DX@TZlLc z1UC!LKTMwwkF*5@kOg1X+%01}_jTG)_|M9@09N|?D6TvBQRXEEE+_vr3YHouiVqa; zsv{!*iSQZr;@*E`sTO435e+-R%wUy~A1KiuFAtlN6t(Y>kcx?IJ)0z}!KmD`nr z<~lU_nNl5u%QWr{C?-ej{;%#H^^p6yev1Jr!|bb~j(@xD;0_QQNcozBjMka)AiiIA zjA9Bmp-Ua1d(1r}LJsA<5={8Dp$ z!{p>n9a++f79CmO8LZ}V%esH5q+a<^Oj>@e;V+uT%_6Q>@=88Fk5`Jmwpa6}hH2R= z;fT5Ly<36W&4IXz>qjCDCUOeZ| zPaYlx2E9xrl!L%@uc`~UYzjh`wf@dJy!Bb5^~5!qO*G`7{}bO>GFdADR+X)Y{5dm6t~|F7C8W$oSrar zuo(1eY+%hCZGFm_F~=V?>U)qVrk7ninybK;07V_zrZypYv}6wQsaM|a*WtUkaj|Ik zZRlX9j&#J)hGXN4U!OmG!k-RS0LZ)`_ZxLd<~bU$kVanKIg9oW4jr3=g)_Vb;1FC-P$l%H}j_gqe9-MLyZ)rV>38-2Kmz%}Q6rkeDK=l7*SR<7H&$NNF`_2UOM z=s&|_Za|gHm)SW}WzZ$pDoIHdu1jwNfAQ7x`i^7cm%Y@q$ncYD_urTq#~LU!OIV|QR&!-F9l8%mzBTP}9Ngi+3hWV{`9d|S zAjuANu>LfkHfQtgezB@%wVTOw!lVU(TjZp~xSBK{B#@#X^&LNUr6tTL&X(PgEHw{! zkVVQdf={G-V2I~2+VB1`cn<%MRtkw%C#g38E3U%(h|`b4yz(Rkhom|bp1*j?o?=z{ z#l}c)i-!2`XTU^F;aF}v&M(NTj~=4jB9(B0xJ%$}uy$91Gu;R^RMrw~Bv)^msi=2n z;qI}PS7V7{)bQiXd55G%;Xo}c^++l}y@Fe(_;2%r?5%t=agJ9%Nk3}>>?hgMrygMe zOdPWzS?UA!o}3ZNirnRflc*A5F2AnHZX@|ji6-TIgKxzx;lF>Od?M9G)0v)i0(5g_ z6h%*jmIzyeCaRMqZ75MOhr`dddOWC84MGH`f^{lA-=?TuyZ_AfVRmF$<>#-Iyczil zd6a};M63#L>Zvy1L%uOjGRn5G0DYxjXv1YJGS4Jx4=TDARiYJ3u%vXjhKP=~{eJJA z5h!dV)i4Z~#*e51bY(}xo|-~MMX}@vVS<**U)wK)>cG*xVV0@EZ{DL^_dfS^Dmz~o z4OQ~iWyx?dPpIOihQzbBa|Q9Mg7{O>akftrZ2dR0nvh1y)pdBws&Fao+(%v_a|m}X zr!|WbGp+=*&<`#E$jp4K4grs?LS9@%^RdG|fIh7^`bTazuNgJq75M}@CM+{V^NkzS zOhf&MiyA}Jz;(hT+-&XAQ&-X@oHO+guY5+2B za4^zxH0mJJP^D^nVC{B0?Y~Kr4)ff~BF%>dM`Uc;mda`tK{v=R2pZmJEYlt(yY2oN ziloMV4jc@^1Mx`LCOp=PbhB{)!1CalbIPp`GjIMeD2;P5yanYv%(>pov1WaRKI#HJ z`k0#^U!Av3#@b3}>g|_5>#zxO?eJ~aPZS3i{^(~8zShUQV+1|{JlO?2OuN(6ohyXq zNIX}WI#p1iRZ%Z{KjUOEJ17pH%96wRIx5#A)zxtm0(uWUr8-@h}f|okuA9di2 z{0mDZBBaa{3bJ!0Q|aKIMTB?Db3eCczJ;IWsqIb_lifa!9R4!zbz=IKFp^`d*Bp{^ zqVSzE7&zep$GmSeLjq};ZIw2Ih4!``idBC|#V-y-Os67gQCEcc5O@T_2X3{e^ zC9$0Auz9x1Qc(#CZ^ly=)qBnrJu2iaP=TkJf6ef4OVNHs|L`?{5Jnw&9%Q>8Ww5As zv0Y*J^iy+RUy!(N@a>c@k#xpq+w6Ahpm{nOQ+nQld9;Vfy28Y#YL63>s38KR6fDDZ zkCkzeW#x8SSyC}8b3Asu0*|Eqt}-NcT$B^kl%nx(_4e4F4=GwkjNnK>mrU7LC9vSD`4 zMy=~N>x%n~2%ZJ_mxtz#ckx+40AfUz7ROn90mpyvqK(h<_HLb%8yTt*kJynNjDnb6 zF?oeoSAKatN@{hiE$V8F`nh5tmagSq*)^I)ueL??DK(esi}eNvS4S~}B%FR)>m;1F zeXp>B>RPzWL9p(eiX1|eNH192q4Z)9YsA$vcs0}$55h;?q9t3@zqKWvm}d1H(k`}c zKeBu7#ca|cbG-v5hgEj&MyG9`YvumzaU1(vpZr2MzLaPP5FIL*M+)UlP+eVvh4$Q2 ztva>Y{H?%FvSU1%4Obn(1{qdM^%0+Ub;A3$4P`>5osj1#)aABwDe8R0J!%BM09Lui zuQy*uBNdq6R8uoxu5Ub@viOVhFT+b+iA9>#wWJ^2*q>jIH(RRGLrM`93Gf8j6_NE( zK$kEE#20y&sMjWcAXix4Nn={lgonn+WtdQI>Dbhlm0UWJ6+ zpvbvR7B&ia=w0pqIOT)<`M5ib+QI42(A9IIh0V6QnA@~Dt=6kBW97Cr0xlij>WgvJ z&-h=t;5YyA_?IRhOGp_e#b<;q8>xc%_4PeB?N18iU|sx72Mk+nxz=oOO(+4`uHyRn zhr3CvDYsnq25N`=*>|A`_F5pv}MZ0OPh!t zfBQdu)BTDG7BAX{Ek^9^Cy~vYhky6hkNiTPv46-`7wH?bCGXVab2Rta;hNz(J#(I* zOXVIDAifFY$i9Jp_^SbF1@seJ(PgX-qx!{^I}FYj1-=&BrQK7EB*mki=zlmvY}Qr# z89JDsEpCYxrqvkYz!IHDs%2W&KTv(+mNONy5e+u#g^QF;dYA_=IoNmI#QNa;9<|e? zzsPQwIcI}XfJfIl2}H45KPY~A#C7vs5LN4S(&XIsqw386W9U4**?!wNth?2g)~eNM z$5ykHE;P|ldqk)$QY*wBtxjsRA+!W95-AZ{BteAQ6{|KO)Sj_7^?UOlJm-7P_nhas z@6YGDs%c>nBR*r$gYEr-7s?eCO?}p%O1-`5m294dDwb?LVzWA!pKODmE1Da_L-R(< z6mWd8VoLJm{NnGNHJw96f1D0biaXQ*Ml!y`T;3Loaxl*TO@9w}yjBh(_=e1g}Z zly$EZHUr#fli}O2aLtrAb%M^YJJN? zl;`ZV__hDJzLJ$LOx?vrFCFYJ!Lt=p4q+4jh_;)p)Bxzq44}^rWA_NDuwVK#S9<2e z*T2fAlCy@F9)lEEH=2Z%3)H$OX3F^^+81Mwz1zymvQBaBNu3j#zjxTp5-&G&vwxCd zu>j*s2m1CC)3Oc^_)8RO+QjbHOJ6*u1pHOdp8GB)b-fnU15nT~IXI#jFW=xK0-F#_ z8hch3R1Wps9S1{MZ=@O{Z|sDsb_nZ{pLUmCm^FAhG$*Ot9L#^IF7&h*Ldn0&!H2K! zf7`XjnY@wx4C_t32W@*+qrFhpMM;$F#{ zAus1(2&(I2^XZ=nvA-wcocvpLVq`aUYHFpfJJ0dAN!|0FPu;rKL|D#?^u?8z>2f!> zI<0+;_%uX)C}-iEer$lr2o8hNELWzBk{0UrnVVp&OC5ckizq_148|h|h&xc~ZRztxk zSSyXU-;S|S3~wdCSMo<3FIZiaC5VV5$gkvX-ubLqK|v6D=W*{1PMk_=9L&ux>{Qc& zW*fTy#{q#=dGx+m>%?8qFL_5!W)id&N&<_kC?keEqqyZUw@$oFM2_cgvldvLRtxe} zfmC{>Ia-r(73xhRZBz~K{8SSQLq)`rd#rq`x)s_S;@VdH8Z+)(9kmDg83M7-uYch1 zITio9MeyA9bD*BL9_MYbS=2CEkR5F-U43`-;F-LPDRvz2DcPr$3a!;^i%Ot`>O>ku zU-8Tq*k-q=OGA=?sGuJ|`vWzZwh<$Dd0M28MFXxv$CbHk&{~#ycN_LIpSjx<7W$~{ zB%7Ozm1hFAJx9ntVeCOhR&3VpmB;5|CNW@c7gN)nK&Y0k1zzG2Mto~FOcf{LMzyxP zYi-f()PHAVR*qAHzCM+;cWe6Q+*Sz@Z`&Je_!XO@8-yN=UYd3L(I04NQ{rP~BeBo- z`)*7?uTG?)!`BX^qKmBqpd;F`S2jHp2$c$t$T&Q9h_aUdqV;kA;vFeV=4g;uO>_e# z!iSa%cI=|0ZR4Zf8LKW&QK8h41LhfmQbOwbn=6OpCe*|EkQOPN7J=H>ObdCGj5nz{ zc5rZ9Qx%Eym)n^hK7-t#oDzN~v3t2BO)QM8{OX=d791^(3*BbtG+*ZrY_I05@y~VQ z&B~~mxdXKwNIrHc61rVl!^)Lz)VLc-1-%ben81^&s*nH;myYMPktRYMH>thxR#{sv zUJ0S9X``!U(2@Pj6!cSls|+KX3fzq@BT8W@iFx2TbV!m9kY{2q|ID*`ROVxOZf5Lp zB==9LRaXu^@f5Sv;(x@Af8iteNWX5pnWZ};436{}NQ`TpUqwdIGCWDOiCxH6zu&>w zU7=?umn!({ET?X{^y+MBNJYx1X5$XDk>IVcT6qnJG2yE_y3=Op;-ZpqTrWB+ol3&> zk0`>@XK8p|B-Se=A@r#m!r5t@!+-ExOs$d>o}d56kk=UN=@QfTU)Z=wHG`1n(Mhrz ziPorXD=s3eOF2aIdevO-!@n1dtu9NniM@n>dGE*Htrv*1+{N5sM}~@Y^i6(c3!H2d zMS>YM$DLQxx!yZHXcXCDPfvw5Xj$FC+*I{ylJcHeE<+0idnp(>u8`p3$gE52e8+-) zY<%=-cY!nF2|;U|XwfSMhF<@yHQLxaRu2O^HTNu568&>HEHtj4eyXmMleVRA6qShTRK0Ge!aZi1qd3J&l6k; z5d7OBwszJ=G{qPZ>|KJbcUgSFS7<#*N@t76QKoinMiC}%xb0>7_X%90Y0A`vO6jIC zWs6nsP*g(Ej6&!`P+J;gwT1FwrhGt*OzDYg3WfQ^(9cznGTm)8_$5`0>Tz#=nt$dN zc?w{yyeRuP*@s(2z(PTH->vek3VC9Cyc8#bjd#3S2=5vO;FrzbnZN+$lT&V13zc9s z4?*Te6A+{@5Ydr8o!h`B6v`vcuB#`A@-&J2w;KX3z6 zb0zbctaaun(RG^T8)jrRkQ!VaW~XjsHw02G?A<{YPwuQraL3mCp^XuJ*vWOk-W$Vg zuw@@nmA1opHTo>z&Q}Q@w=|gZh+xdg?bg%Cx-F%C`)qOCs$naY5EuknBJArahM)Uj z-f(EaNTL#e8|-XZr%vobF@19!BJsf+3u%)dOOvQh9OO(oUkd(R)W|^vWyN#f+9)!9 zAkJ0Uxz!ski;rTATl~k7k0u)uQ_K@0>=zz3)dfhmwidhoTTp{ZmLTcLL1xJV?Rk^3 zT0{~x`YK%b5zrrTczW0Pm!X(}Qr)YWkY*7D4l7N)U;?*hh33O~YLE#fTFrIbAglrd zwKFwka|8?)f%>+!YWW1T;}a5@c(*7Sl-6XmvGiO-qOyX#*~;CZZn%g35wAHPtfhzQ*fcgGotd{Y=Q~ z_hN~!cB|I%M3)E1x!>-^n?ixwIL~?(XvM6m7NR-gNps_y*`wu-&j;8I4~MLmlpmG@ zohvPk-th7SLq@OO{$ellcG>l}8HW_CRB(8cIvK59Y-?~dwvk#A zm{~IKFYdQL7W}4RVr}%Rj>f7zcBVtCA*_{>}~s*LtMBxuvL^bao1z*d5s z?5wYQO4Y{t66ds&<@@vdpjV@=*8R?I!pWffzU(LODs#2}K6mAWbWtZ}Ng7elW6GQ_ zO0UfTYlJW0tC{Em6xeFQq2XaA=KZ5@3AQQT5-F?}DDLSBaF_oI1~#4r^IfP(a4; zOo{rp@V^}Ae$;Wuyg!~Dl>K-6DB|n7f@6$V!ad9;I>X=EpW@0GV2sH$Z!9nGJC2w< z`XS(Ow%h%yp~vOok^D09<|Wfx`a$|H3^-c%%X+i6j}GfCGv!v5cc|5^ZDT=I$q4Ih z$2IPY3qt7)BCjScL8Zx~&V9()h?>r&aHg8KTI7ya*XiR1UDW|K%XNp>>%0vY^F)pC zdue7F^!E$)%@MT4H}GIB5o42f;GJ5Vjw9!ZBf^z6i+L+zEV!Tt$FKD`a(R0Y>(gTm zdwDFPx-N3zT}-ufYB}!GU@H~oW_Rn6oSc}*@;-9b7Fh=+oYgifM@-CPe z%Qw-1`UVSKmR%9riBrORUT`5U&%w+Yp#Ygy)h*LFv$&w=rZ8=7hK85!>nZI|S~a3Z z*geXxg-Ka8%6pOPk03TruZzbS1^_fU-bu|^w)t_5S~t0Pnb%F$PTak+;OsixFKryb zVo5h&jW2Oqg@VB1#sAo<<^aZ?Xk3V>`fb2QObqUtu7`NuO1m1)x3x-!_QKzLx~7QT+t{i26y7hn zKUZoDz@}-(Fl1;|61fu-M~R|psRb6U@WC1?A4BGU)fy=4h% zff?~cmjy(1bFp=YrNQ0WVbm_9Y{px=se%d&kWp~Wh)4Hs{>Kp)ea3Y?F^>?EH__6l zRi4c^YNwjo&4eV~nZM<@70o`jp-7$1&y*F5^J0%ntDl|mk()TWaYKtJ=&ZDciqBLZ zoy@A~uFn$Yv`>IApO-@d=1{YaYTu@99Xw()Uq0c%8)smgw-71(%XyF3E^b){pgRUW z8R!4jQRpu5Uq1VmM z5^-z|RT-?$k6^_a^Z^hMFP@`L>#NL*vcaa8!spkvl`Aem@J75EmIfdmOL1DZ+A8}p zbHlC8w;WsPCP?ZV3YnVt*(5yxnvtJ`cj6iZN0y7 zhxVAAw#?(~Urphn4R_)_P4U9Vt9NJPLkoc|=??h28lrJ> zx}Z0aNWp`(HReYmxy$G(5p5rp`_=?O-kk^%y4+#2)-^Subv~~+ZqWB#l)%xGy#lpV z!c>BX#oD!ZY8UaZafk9ngTX!t*Vr3f?>~8YnRpi-p$xdp^XTl5>?YBu(2rT>4ds?z zse8Vv3@|9THQm-qO=n;ghK|t~QGar7buq_1|8eCel%j zy6%mr;RYW`AdD-)hb;Uu`SQI;bpcZeYAJdQWwfbehWI70&(@We z;MNY`t_ztQ202NtBl)p7@ji_`dnYQnW}BF61UcqM%l*f3e^Som>iXqq@2}3{qj+`J zd1ys%e$oCdRB61O>AMMfpSiy+bYx@{s_&I!1>DdP;A6wv-h@?LCCSLhxTZ%D`M&g9L=#uO zY6UvJH2$+~{cJ z^hCpqs;n0H7WNJ%7aJNGHwa#FEH}b}>BpQHEx`t<9qg?a#X|ndf_1-`@i*XWI=PuL z{d;!8-K^~@BG~=ZzcuVKJLxky_c1w@G$uiB8`;%D}ZiRwu3kxiZ}P#0m);N zd+urZbReUz(3Y*NZroA-%M1)@3FHP+K~yJjl7G;B~WU{=_vI&BLDZO4h1D_Y651t@>|CZH1}MSh{Jsc8tfi z3Vcr&^_BCgc^Ujt{a$_#PD3%`%jbt$b>gQS*s=h}EldNN6UAL`gV|*8X#Xi!^)vOp(L^dOTKd0zms?X82&8= zt79gaOEy_FnC+NZ`ByuziaS@48-qw(A}B@1tfj_=XqiF^1Id2NCkm{3tZg{zm!j4j zc|12^4CX-Mu_#6Ji8CkM^gcY-UW@U%g2(?H3b zikCGHGn68Dt?i{no+zg6V^{tZCCyBw-QfJ31)r;;k{WoO- zgBo-_l}z6smVrDSUJ}hx95_-dY`Wf9>V&s4`pA)jS-G6>ABXCz75VqKiYF+y(gW(B zH$NJH+*jWk@vf59rHX+nU&>m)Ei|B;rGz49P5aexJtNrMUJR8LP+ygwgCBEv{N2ln zLN2+0(#-!6Hx_i(J|R#1v#1BBf6N2f@$9RQ((!!BpP&|))bW}A?Xutn8?OpEalqpX z-0o=FoQ4FQ*oG@-mv(K3Tj}ldFLi)Hv1-KpWN+lR^OaXYIvq`~#GL+3x}JE|a#OKD zb8~4zx(`SPOOSSkM-Gb_VqW{M73AdG zLx$&n816{Ev$_&dBICli@8`eW5;6G1DcDnQX*$x!_PyngZqqOcS{8ZS2+sVEBkN83 zmkcOH@9yuv08}9_igO(muyHgjSSP4;7H7!2osply6Di{Rba-q*HhiHa)qe1kSpvq9 zV65zIkQM8*9ekLY1d%B0*`3eTSl?fT2PYIg=9!k+>WnlvFC{ufxl^TeQ+}#SH9^5L z(pxqtoXtsE?T3#N)W+ZFc*qaFUD+NQvv|JFC~~BItNue3JCl;eDb!c^LtFF339J2= z<5v?t$bC2XW89M*wdkYMN)z@sF$^Mx56=%SS4+Jnd}*3o=c^4DpA%f_5NrWD&=<|n zxhStyL-?4eaizD@grXoYZ@$CnEYVFa{iSQf?Xob1YO?jFvZhY2X2+a^_jiMxYGMcLer~*5s77b*lq^CE zl6tQba7ekKR8z~o7jQS3!q)Zg>JuL$laxs5GqBXqL??1>24Jl6tAua zE>er_5Y}P;ac~(~rCWo&R?<+kq>dx+I=3GC`yX&_=UZ-i2X;RPbsiPyOYG$4dG~+o zx7i!>*4??UXP(^tZRQKVYcs#W2|13x9=aV_=e1fE@BRXGM|B`@-r-C~6Wz>y5?C#| zeaWpmu%Nf0EmbAR8}8am1(HcdK+mz7;Gacf4F%p7OP{qPv{?lJ!vZ z(iA`DwnO4oP3$x=KkgqRY{}a!XfP;w7TUKls@(`ujwl4#7l@Che?n0a4qI8Qk+jK~ z+NP{yv1AeYN65f^fV^{>A!p&tjF4-$f)jKO6u!nqOL`Z>xR+qcx?5Hw}=y#cQiy#7VBN>DAO5CgzA1JT=$y4&003vgshlk%ja{KSxIc<|4QcKVj54-M^9y6=q@%*Y`M+h#T0Fh6F z^aIuKQ=2RXWBz%fRJ=Y{fv>;V2)*NaJy=pHWWWA;DaYMczovrxKcDZxDZ)%G-m-kl za9Ih+!NRDY4zQ*7_z-C4U>G|jOQulhBX&DMNY~m+rI1!tUBCE!xcFE5#ItO%kzSJ8 za4W8V8DX5l)M$$gtg>bUE_N5o7r&snDq-P1BPV%zFWmarDB|00;V&qL7OZo=i{aY( z_vRCLd;B1Zmb|H>bN0kQni_H70Ph>NOC@155Dtrjk@PSFO2C<^Vd!Y{=ksYQ($*m< zSywP?=bRe2!r})=(#@mY;Mz)UnG8$v;AVcx$r#S@QQ2eNwn zGO>e-+54=~IV7M{w;7$mU>$9g+CdO{IZbZ~4$wPWm z^29N@>Fu*6wX)@t=}gB|JEm}vBC2t8c=+2#`gilhplQFS%&nX3)(YM##p^q8q@-=@ zn5rGIVjXkP|0HAFR|8q=R6bb7C{C>U?Kc#7@R}b2pRB5kL1w@(!C3iPzR*bD0 zNkxwALdZmjMfPU1u%`WuJ2*}?QMb;L8%PP5YM!w@(TLfvUNpIyYyW*2iKc)palH{* zYPl_58^rZ238$}h(57#new;T5)pQ$uP{MtY3n^q#gbT|1oeU4kM1cmWHQj7NdZ+XR z)E;>cEs156%hW4Atqo<9j<%BY?(X`QP(9kW((7*uWJHsj}S+TbJ4tX&`*;y{$v>ta2#gS@u;<+FFLnwuTj^pN`%GahmS$f$97TVD*6h?Ybpjl&m+sboe= z;-+XBpwZ}}W`V^A6(4oe53=9@$$O_-m{Q>~f-Xa)xB%-8zm(icv5py1M*qtLd^oOOO58u%cVGO8~(0+YuULZimpgScS0Jb$mN=}7uFcwXq3X*AS&68te ze`~Nv-W#09(*~|$oadRl4>>lpgmhduf-F0nWF9l8Ydgn-x91{Fy8UcP5hYStJQy*~ zbPeB7$$6?y8B!KT`p<& z6--{P9F9OsJi?b|dd9=nl+_ld2#PQ*ur{KVBA<&M@n#lxFviHTUBu#)c1Bj7Plup6 zTHXN?n~J|V|f6T{PyE?~1+3Ls3IYP&GgKkPVDxfQAak#mp$VeEijBg68p%-kOK zh|t%997O6Ao9y~TB1%n4HQcc$8VJWfk^gYW6j56?OMg?^wR3QJ8kGoHn+XB`Vh?B@fFH;?~hf=P~(_o^ZyDLqn@7~<(j&GS<%CEF*ooL+VX~H zgY~gvsI_Asi|eahUrT^$i0q|Lm9C;OTH9s@A!2cb7GC$#=czl#-x4AOG_Ekq%S^~j z{%pst;<>w%&i~neir3avEX_=bg0fV`h+Sk^%}ySVC53SNBkXEM)JI^xnI|BhB?lV#|9qcc4|L zmg`SQYmAYw%dMyJf-EN#HoNN7sm)Ux5l;1?!9uR)zo!0IG)~nJ1lB{Z=co63j-_k3 zm&5#4#6(P#5O|S*df?#?RK&spz4vYQ-QCC$Sje!r*KvID+ zZU#$B%zH}#!8-6F*ES*XZ!VVudS7C%7lCvw@(hn?sVh)O!$C%153 z6aaJHfXrZ2lZUn~7Dt9*<@b*3(Oln)#EcmXTi?T-P z(A$1xU(->ZG`fCmCxg~~q%pZ9t`ZV%RHOW8m*S5tZC-2h(8;y6`Ix8N1o+$-AJL#^ zn(aS#@DFr_&bKsC(x&Kfts3L9TA!PwXoZ(1`Mw|9-kCDt^Q*r0OYuV8j{>;{WwY5v z1I(PTg$uhrfqwd^6PsNcPs8Nmx@3SPqqOeg!0d}aY`wRR6#PulLD=KMgZF&Qee6-gAj5bREK(^Q+nAQOzSTeT>rSc#PIG$!{*%Y{m+xr5+_w zAA0#^8o=B6CJ6%@y8;@B7fD7&X%w23Q^>IhtT!8MyJO`qQrTngdlqPS>ZdWc)XL8; z`}i1yW*z@dMSK-Dx1ed6%KW#Q;Rp?5E7Hu~U*x?c^)q0`*H(TS1s)F$FQ>p3f+H{7 zLR}7;gxe5{mgfRKkgLA(b7$f`EZwBO45AEABQPHC;!-gAX%^tjSb&Y-(tMssrbVaNN+p@dRZ{rAl{B zv^0*TG%PB&Rc6-if%gcJUBwM7FIC&sUfL!=z&^)|D@@_Y)Lr4i=33{pR2e`ey*NaA zRMzk0dl$!&7tv%T63zf1j|<9)4!bAYR6_E`lKh!ulunhRs*SBB-p95N5kag8N`||x zo>A)vZ*6U|RqcEHXw7`dj?|o!7onaylREJeLFtARt^7W(>#)`yaP>3*lR!+yaD^Qi zy~#09#mAX0tkEOL-d=rnal6U(9Z2JW%Gs#^*vz+-(sl!7z?WcxVEBf8-@l?fd=(BZ ziJkKO>AngONM?ovTg6R>m{?S!#skeE#YxJN@*_t4BbZY$>WNSPPVuk0_}N zE^oyThJnXYc9k!TE&j*x6yjschHgMdEITir9BR?IWX*P(}3HwRBAUV})b{AM1W>y9NMrcx_=Lvpqs%RCjUY#;&I5b+48cSo|5D?X z8T!WmZnZ8^U-#5dvJ&oj@vHe77aph9BrvnJKG}$to#QkcaO8g4de}oP5ADb0(MEPr z<-zx&FTt$>JPi62oQyK`PYT%@OrL-KncT!c*mLQ=4S3VxfSEe{EsO7^jZv3yB?nol z<`*XK0$>Vu*2W_gLD_Be1FQrr!sE!Yq*3o_`lO)Mc6?WLT0y=mM-s*Id!C#$;) z+zJ<-vl0D|L(UX`&V>DQ#l_=Rr4$@&aB!d9oi9mu<7NZ?bPpV>?41HBdaCYLK|rqT>8#|0kU~K{Pt@Z0-O_lo8lt=+iRF0&hQT7yKK%G(S0tbSQ2iO6?O?5%E$2)W z=m{#L;e0=gMbOT@iIU$lvh5|F`H$nH{6wovaA2wa6{~ryq1=blKOMh(6qEnm3>S@j zh7=V`$Bq`2TZb*QCj(_=Ys3EOUJKNhOBOOHlAPD-XdA_OsI9A}%&ZWoh?TtHC?A{F z=Ipo#HRprOt`AAEc00}6HnNKcF#z?8DlZ$R`EDvPEOJ0qH|>NS|3*U@&Ksy-8h9q|WsrQS_W*f!k>_D8);(qB9NP!#Rq zWfkii;9Wfu8Dld`uJkbTv0ybOT!9idv)(GXynEadTO#v!GOsYRqzYx^PO%?%r!UZM zu!`GHm)VcUE;)O*8prF(5P;=6UYeSSnkcu(>lu(8GNE(8@GQ3^NEx%*;f*9^dt*vUd!hGU7D7U= zsX)rvk;G;fS?a}#H%AYCo@cXbeu~B?w`e;9K<{s0S%uc6{nS9CAZAfoYiOj^RRgu0 z&MCe;;;I{xI%8~-$|hGSELm7&7;C&Af4&J#G2jW8Y{?Muk8x00Fa0;I4HWgr5wdw{ zb;s96v#BMWWt)H82F}M)g01?+S28Pper+{3#k|Pfw=6!y_JumiXAM@dG1oP5;o4ts zKMcKN&?TJsV3dAu;$v6sGym)qE?HbXc%x+L;5b9mFNI(gwVV}8DK+!OXI77~7FTf@ zkb!U4<%-jl{a^c^e(^FYMj8G(HgI)YUUDl)yFZG++`XH0_189b@^eeyBeo zasr<8Q8@c!pc_~+5@Az9x~^ebik_{I_?7B^uZ`j_PvycU-M!r+twt|BaxfPT0l>4a zegfI=&VY`pfLeMpJy3M|Zc@8+vuenDi?#my<%R6>keYDVeYf)n@}OFe*Pl{T(?lX` zWYor}=7Pxo+IcTczX-p?bD!JE@u6m)6@0d~WO0tPTnOUKWHPho!uMIxUt9VV%=9-T zpY4CGFAy;i({0dN`j2DD3*$;Mbe%VE=pk9c$2X#jcMj=M;xXJmi*rTb4XIMUonOru z-hL=neD+)v0q&)wOq>C%5WEK5B`7 zA?5*_HepdqmUA^}gEO@9h;^L7+U~Jha1hC=)Mzruc<|T^aTR{tqT zQ{qWZ?T?GT=UO_&T-jnH!`Hto2PCS%Ma>HTj(SJmx89y3Qp!kK71m}%5B}gn zP%DLb$dsc9dLcP8CO0-rp4UvwY_DDI&qA$cuJ_RkrKL& z2)+3GrbI&sh9EK-q>^v93N$!k3^Vu&m>SiQBa-DX$qeJw^(fg%`+9` z586q9dvO{93X3TwNzNsi0^x}`J{bN<%VAR@mL71AcLgTr-es3Y^s5`o3_~>{EpfRc9)UPSe$H83 zzG0zfFy*q&Wxh}D>Jrr%4;@a)+>VvV5Wk`Uc&BZo9w=r;J8xOwCNDyouDR|TSZ=&v zYp~uwOqJ<`6%N^LL5Z5+$l?M7t?Irb(nH1*^>6ribQk+72Md#0T@-5NgSx7=GH{C&*b*qImcb66rW`j|_?wFTT zc))UmcH!QOkSzVR6{0V18=(5fNxIZ!5~bS9zarT!33a#62i1%j3A z_x)!#+d@qqWQd=5IOi_(udD%NR^q~R9@`h+TI~)vK0;ez7F6KotN}mUkvOk2Cdje&LHYB2c`GAc|pvzSFA z=HcSPpYE{KqO^ zXZBCKeRS87(rSiW&Pwuq*Vxx{88)BXbJX2W)yR)yq9-FDArbC~p0_w-ZHYXJ3d}aZ zXfkTCw0oRcH8Vt7hh|a4)vIzY`t_(Z-Oc?$edGUJqgii&rJ!+Eu+?#bPp;U)*Gyrl zupiNCJJu6qYRphwt+fiX_`yj$@9br}(JINJr&9X$-UBwe$J0An8QozHLIN8_2a%m$ z*ROOY@cA80iM}%O5ce_IKfkpA6?`W{Qj^7b1a0j@W=q76Hy1X-E?$o-&zvv@bd4b7S;uiB46u)%I zkspia_~>^52c5jB$Mr!G}m!Ru#rJYkUrc$x9fEJeNwwwJM^uiv$M_2`zvRT z_+D`6?_f{go=D;SD`*{?*})?;8sWP#<)OJdZb-VNbUrudL0d2jxs&aH763jjxkv zN%M)Kn?8=eo@4V@l>gS*`r~?Pl4p3y@j$dUew>W__8Qf=N61G9@ zhT_8E9YvO_uG7oo&^*soiD_ZpkRUpo@QZMUKC%yS)qGGwYB0?Fb-CdNcCd5qTgpaz zevK|Bvp~P2CA?X8lVY%(H3-iQzxui)u50tz{d@gP08)z6zuzeB8>yr8(?I6{`*H&X zME%J+Q?ti9RCX|2e>}l#c~7c+{{x87?Z=Kh?9ySl4^c$9N#oQ-HOA(3yo@=vKS;&P)xtJ| z2>h)Z?iptL*kpROhgjk;~M=Mr-^x`3T0qc$7(C*J?MR{01DPb)m#uPcFmle$ph-Q7}Pxe6yeZG zn6Tm%YiPJAag*6PT#lEP5Dqio^pQVYIcRN3RhjvcdvKlA^`3>y{&0^>x-=*d%M1JA zbzZz;f9$bO`*I=uf7kK;`))6|Of-yfoPyuX+6(Hw8)alR4MQc`bCU;5CU>o?i+kd9 zeI+xWWysm2^gpxo%GxT_r-JgU=>Xksqbx*92EIcJDkILi>=_X{;dlks`rX!3BPQfd z)8V7Lb60;ho>oi(=H?pM717utrBJDritsC^q^xPni`c@5qbT9?Yim4{4Z5I2L z&V44bI*DSupoFk~hcq9VVTYwu0AL|N<`LkYfpVt7WD1l`>pTMsYk7|Y3&QS<*|z^F zM5BYJxE#6o-)Qr=I6vPObbh)YJIn7Evb6|Egdu36f!0Q;>)wbaTVudoJE=hQnAp{H zce8?zO#z_iQL7p{(B))Plk8M8|AO{~=3al4buGz%>Be>Twvg@hD6~_@^L0NyPU5QQ z=9VV6zf~z-m56=$rox-!QfYde=CaS(ltrfzoOEUQSchJy?2&yUJ@=TE;XT%!;%Mb) zeGS6>q5g$a>+(cs=W~RYv3WG_n=x~{CM{iCE!av)ww`Cn&|G8G<-Xp=@v|(kGD;O@ z|3GcIGaq){=+x=>&M)dy!dK>Cqx(*u^R{&_P3^f0dYD|-4SlFh@^HHbuVAR4dwdqP zy;4YDR^|jTiHQLa-cK03pgucRr4aQL*Pd49qYN`dW%ii$t5>?rWQne^#fefDCambU zb{K?V;2N?29i94p^N!WG9lb6gMpIDb!`(M8PC5S1x~sG>MS&omSq>YXXEP{(FMHWw z&y|)a;|ilwpYjW*WGam^JAlCNhG@WH^uvTPR740yA0taCF-C2rc!uA-twJgPNHV=xfS-sK831cbVu zvU7A?>Jr64zD^lrJ^r{8tMoieT>rdvV4j@fmA~Ju|8;1yJ0~c+!Co`h7l~Psys~;QnA`=bB)SJ-{k)9& zDGc9H6bL(peeoZNOn2|B(G#+4R@@6L;m76<#5U_L=XA99VTiJLE;l(xUUp1TJK}P9 z_}wGP^-N~U?1~mqj?rW5Qualt)n?{PgN%0Unf{^j`%e|j3j7BY_+>2HVTV6vt>@xq zXMr-B`l_sa3|&2ooTjL;Sgtu+{iC{q9V2(qq|2C$7Y(X9s>EAFV%Rx5&!&w{x`OFz ztFE0V>nnK^=gVW={&X}|B@+yNqqWe}oCKQpT>OLAe3)vl)yh%sZ(eD<6H5DsL@85q z_$WGeflvwRsJCZPd?)R=IOR3R!2b-8lf||l>zXwS&EtvOLF@#e=?o3{2r#w^5WD?=; zjrU5p`=fMSg7R*=!+qS=mZ%`-BCBa~PmhGhJWoy3I$0i%d#*lFfk9tH-*~yPKPwo< zFKuUvF8Vhty%3m!6PV)Lj#>h~94+cXw<`UgqVtYs^Kav@{yJ2vbWl`FYj3Ld>_QV2 zwTV@$X6!w?P_-&n?G_P4q()-LrlP1Bf*`~WV(-3r|IRr%&pF9?p8L7KpU-u14cszk z`<)460tdWtH%YIbXDbvdgEhuHjS@ZpKDwFyyW1R8SOU~!TliqzX$x?+%x zl01B)Q|IHf3hcoNTWY1vT+>a@uVcyz3!;l7ybw<1T&l^%KQb-u!6jwSE@azFKHRZx zFoZK$XO3;;<>k4aHdZUuH>OmFN?y7%`egYm`z&G6N+g9;_W_$P&dG`rpu zx1Fw6;yv>}2cG?%GfpW%_lYa*o~O^R4Pz3xEc$?8RcoCFN`AfN3GgKuh^!$Cn z+Rdh8f%-YbT5YQTa&ux# zlV+yrKIUtOrMg$w{yXyh;{L7RN>zi1QAX8F1*7s?JKp!MxPIy4C3dzK1O-)bp$#N? zY^`apYMLujrJW-kZhpf6>Ml+8-^i)PV8X+OhYn&*MjGXVO6B*}BYA$+^#6uDtWEtD zP_>&>KR514C&FU){*ptGPUxivz`bd3WsS^2K8gloG>&~q2`Jf7xL=OFBUKVxV%AT~ zP$lcp#HNKo;jBRr|6QFm|2es&-v46U#$GPa8Imn_Ruwr^RhfZ%iZgNvGqmaE(sA&U z$a|qH4Wesdn+JqVR}U=Wx$#%lPoCepfPU=Le;Mbq^UiC)>HWjnK3yFoS0nwj&8_u@ zu+Cn2tq*n@IIOYh_}Q$tavYc9{k?7r6IC6{nI4+fdRHyrj+OMs?CGIF>;3~*{4ly9 z1${&GO?9QS@7Xi)*FrB?)>^JvR=roa=pVe(&1Yngs;C}jMaw(wTfUHt&0J&#rVtR1pl;@4}LSl z9t^X$D3&{uiU$`{O`Hlhrqg;Y&vpN-w9Zkdo`HS0WE{aJdSAbKCkFrt5+~r^ITMc; z{ijA$JJL%$NQHT8TN|QCpY10<>~JGk|J9IgRZq1*!0%6-v9sB9u5&wF52HMu&HdUr zaFN#y>49^Y)t-H?&P9R=4Q8-24q8{tK9o1JtNA9$$U^7p^Rkthv{X?ESHs*=pEwBr zrFnQ`3h5}}q&59!y#8dj8h_*Y^qBaMSNft9=~wQQ0s!lrZ`$-Io6S+~!xzOO@M~Vy zd1Nzwt4CSCx6%tf!zF@;<9>_+&^S^7zk~yvkKfrKv>e_ffIRIZZF1>$h07pP99VP2 z@-9*28I(<2_H!~Dk4gn`i`gD*dWwn?mVK_4wORV;5kCmntf)Z@Q2)+R=n~vntb?W* zQ!C7#f3P;wuo`Qz=CU7CmO=#uVJXPu<(KdtK40QHUarmXFo~tE9awY2g;a?UxRa za;d9sj`Z2Lk#ox=^LQO|9T-<`fR3sObnxuNMryFr&RJ=DF^AmCZq}W);wnQat%R(- z%M(A?m83u1Y|E8t`~)0BJ0$C;h@cVu>k_<*vvf>MAeMM|Ir(AEjA|l|IuYzA^!%?$ zKy?@%ZjO}q*3IyX)p6bp`n+1#_89I&oWd^-0y>ouJ^;S4sdDk6y40~T^qg|H88Y3x z0ewm19^krI&^Mbai*5^Vmpm`#7c6+ydToHRs{_O!z*!(E z^IQ@jJ6>&WqqKUhZ0L1Me($w3y_Ej3xafGm!p6mthe+cVAd4lS*$0!*H_-&~6D^{k zvzpS*B*lE<@0p^!v(O7oOEf`O{felnp&w*@GdAD`g;=8!j4fbncJSc)GNqjTQFCl6 zzUG3tPufMNE)uw$`35NN0lRF7GHwl21Clh{C`+-bpD;aI9ogEea(;0U=$!*7?nL`< z{;Ahk>vM$MOHOFSNJk~!2}~L~K6r!q%KECt!lF9K3c>cc_IU=ec6%Gn^x^8##wequ zvr%lEVR_+twP(Or^yXGCF&SHt32gw(tRId=u|-Rn-jC^$^}4lKVvu{JG(IdV+bgvk53RzoLtlxynIS(VzhCnh-?z$w#?q*rE1Ii?J3$sbZ5 zG6lbX+Ou>q!BkH#x{T5`oQn^M=W32;Yo@-IXSeT#oJ5T1Yt*fe&fRfc+FB3df8&LwT@ zc8E9kbEFPS(7u}j<)a&;lZjf6VPbKK%+rA(>wkNT*f;E-B6xlu8R^r%{&;nlMo0C& zaydd{)HFs8oj~$F}ZNAKZ&D4*yo}NiXtYDh)dG1A~nP|}w!ximR%LcjBI=3MY z?IzaI{ZW~iw^TO5Mkc`?%2Cw@xL4tD$!B|ivIY-#@oE>+%9L0;KJyq~h`Po?7J;U2 z!ZsZWno-u`qkH0Jt7;mH9ajPOF@H8zTIp+c)uB0RPA>j>iF}*<*xsU(;BbfisJ;&; zEG5-DH{0hZ2{^jX?l39(=Ju;@@G~n+1lFAT_QC9w%VYYE5LDz_;5)z>FvTPu? zN}d#@wQG-1>?+XEX~qx0ER%09uiSrMKGWvE17%R8`#3rPGAfZ5hU5J>cSm7(tC+%? zCR&qK+)`u|tf&|=)iBYN;e>o^K5fs?gJ|N*A}X4 zhEYAeSZhDz?F8ZZ8f}5q?(TaZ;y}pK`gN(F<`Ih)y(E)*qY5;HI z_4ygLW?DhNB}>@>64dv**D7dTu}AeaNoQa+jd~ ze5*NLI$WS9tV#HpvR3ZRlRM65IipkNfazsQU)`Jp+fOKo8he?&OgbxGARC*oO_nI=-W$|$JW0~#dd7JbQvcToDmThm_4ED8v zraTxvZ-{7j(=a7Db+$pe3d^QPbMX_DA<(h9|M3&I0oQWpE2>6uAKnyym6G><+_QXP zpmyof{8#duG_IPB-Dc~x<85p~yIzjUlSuweh}>}#1Y2*dF&MV!P@ZS!c;|V|?dNOB z7*mk;QVyI$mH9#aVm;ZojEFxvcN9aA;3u_+Y7}I26G`!#(L!n1ZUbcC8yf?T zyXX920k`JD4U6l5g=;n>r2kA)R(GnU8smvLxP!~rS5>=W;Rfh zTymuGi1@X51s@Gs{kPf{+Q?NtRZ*il?<&qUq?~ut+;Rmb#l40;kt`{$-^Ob%|J;GMR;j@;$gzxPhyEQaF>Q&7&{ zH3Q)QRq?*9I!m1<_q2fah%YnOP=2w6Tc`D5ou4y9(0}w4W3p_l)zhSPL_P`3Jh=dX z6mHnQT+9d$EN&A=>z}XZH8$7flRsOg%a%{+V=I8?P4@)?&QOeZrS)O#&;3M%&2VgF zcWIrj>jZ%#J2jVzbQPHUyL7)FF7-wUjot0RkWUj+gyL7_wme$a#CH$tZrs$@9Od;8 zlZHJ*WpvI}m}bjwt^$CPfla)wU>&rxJj9`)(p_3V;3!m%2dQFFVT6!nWl2fR|9QQq z#2J@Wyc=IOomWq4+Mv<%7mHxL8 zZs&__iJjDVOl=>nw31Q~5qv{X;$0?0u%QZgTGOcgr%Hvf#Ha%(GnA~CMWfx3Ke-Yi zKmfmcEU_}cVkvQby#P~JH6r6+|LQ=qJ|gYWyNl$LI-$bZJHMpZcbC?^C4xtO8mAg( z`G*f@^jVXPp+Ftc?UQ~Qv+A+E|nl2+40s=uVMp&du;8(|%v`8-tYFUH*u3ADf^+{uh99O2n((1A3!bDCA> zi7XSEMvtYo+H5Oo1K(t&KoI_rhGzs2Kw#J1*d#u;{2)98DSGIAY-wlp%U7$$F%B4T zJL$FeQxVo=SFPU;3W{%^Ucn+q1HUrmayj?-FHeP;>-MHjAn!G(icNB;WYJr%CZCaC zl9H{q^&q%|)N*`Px}?~V?{_>nv zpuEoLtOH|_6lb@w?4rhXH#z6sj$woDlbf6rL=0)1;|1Msqm%_!LTRAj1Cx=TG2YRm zD{V@yy1t-^DOx^22C6&Z=+1GuZx4Ons1g#7J)F2Cj zoNGkl$Ld$?!#Z}rBThgljNKaqkvpo6FKHuSHrZ7VQYj5f4IzFCgKA?o=%!ahZpxQU z+uP9z@X@%&UoKrEe8|3=TP5u6a~F;7c%CkQxQu8TB!01ZXlG+Yp7 zXAs%)Nu|HUcw_4jRs4>-k$6fdoLg%c+qmsM7JwefnaN5sXn#lCo&S?E9Otk}yQD1` z-;!c2F|@>L5KwNHPGydqJ$cZDfRwh2Bie}iSwGHw`x?alOJ1}S{Z0RUWI^fv*_At- zU_V}ZogIYrbg%{(w{KAsMogb*dv*L8q|9b8IhNu`frvQsmkBEZ(D%F+7Lrry9D@L& z3WZ3Ag_&yEghrL?+#E^7M}TF@YrB*|*Ti%JuFDJGcZ%0zyqL`!uk3EBIAJYwUxeR=Jix>T`wh&TLs zrD;0i1@%^}hddz-##B_w^lTM2rcA_Lw z3YK#nV-=3tT6S)o>%H9g@mv(~UF~m+MaH(C!0!v`d=zfq`RfOX7XO8Zr@A@N8)p+T zK_EFu4cn#}yegprpeO)s77azT3_KxQm3i*+a+wyF$fQ;SoN>v?{tYt$VZKgjdMg3m z&O1{Y6?xv$T`KSk??p_vuJRpl&|J>t1MaKsnf)seBt9pVh^ZWGQrqOY*cB zu3+jZm_Cm%^AQ9h@Sp{IYls(1_4q2b+W=rY;D%)L*7W8jS!_CXU)JhdR`o)HWztph zX5b$DGn<2}ArlhMa+azLrPzZ^k}E??dc*3F4xAIjeXv@mB;#7d7CM5Yu{8+h4ERv9 zrW6TJ^|<}hI`tCK0{Z(I>-JI<^p=Knfn*XBl=+5##{6-*uPeX8^L;JTNi?>6LJL7ncBJi_~W`>Luey9yeE& z{NmE(Z?e^=chpb!_KKnm)xdmiuwTYc3(_CHoi&*sZM2{LbLEkK$-To2VKd+@{YG%` z$uMYzW|>9ES2}7i7k1y6vr|#CfZa0=t=>8e9D?_;_&O$RPd@-lmuX;ezFhLxfhMn1tufjl8_7tIg8ChZev z__jGy)a)6+(#J<4aJi(e=lAK0j>Nlx(Fxwpo?Tj?#=8cyE=&1SrrYAOE0i^TvhlmjO!gTjjI(#|T)dK- zJz%^rG-Ez#PUBL=&xn9C$sB4rZ4){wcmGp6Xy{X`a^_pu^LNLSCtQn`VJK5A2x;JY zVEE8_P|Z!;FDb_L4%#vFQMf+cdQdN80IKg7JDQp0$-QK-PdmDKx_G6$L9m<<%w0m66B!K2p^|i~o@!jrm$pCX;4}V}E@&G@bx?bOjcJM2JoJV|LJc{zm=$uV0 z(N4Q2UX-0uK30N(CKJHoM)?~)7$SY;7P`aa;A`605b$T!#h{y*NpcG0ZlZeZ~(-ImS_~|r^+eC z{}JHucm$~NNMqA5{}joi zI6aIKG;R1kL^~SmOtk(U;5e!4qQC6ce9<~9Gc(*=GBpQF2_YOGEGnpQ3AahGrA+!m zCVMa_3=+I)xQP%Wx^8Rvri1_V`0)U1Clo!Y2Vy2uar3nYof;~9L5j{2Mvg;c;U=dl zO*b4q!y}95qb+`ct$NJ`%Bt~}JO>oS*y?H~Q&WLBdMrl_VHv}B(6tEKc@f2CU{uG%*J_dPpUTN4K&u% z+gRUSzshUdc#YGthV0nWhISez-Io(?0Kp8i8nep|ut`AUtT3L;CKOAWM+fuez=2jP z#SxhYb{+p6x1T6YQ)uX|O5Eh+WaGg#y*vEVcp+(K_KS4M4P1Boe;rk&tPGQ#Ut~=C zD5b6L0|>Nd^31#7M)M2@qr-027m}aIFx*t#5lmQK!bn)wRj3%o=`5@sIiU#=F+XAZ zX#Pq+@Zn zvIe?PkXght6e2=!aiFn%xP2tEeK2%Ixo4&bLn}$_2uvrthKO4bx^ha@zKd~@l$(Wq z)d(>pXb}GUh%1CX>ksOGJmNDDh14+d6YmYN^aD|vh`6!snU@3ljgQ1s9NBBPfmS<2 zT(3rms8)X1QTjH1h+WI?ezXR3$W@b{IQ9S`us5zPg56eo>jl*ewio@xp*6{W(hEms z=V>2#V=?t$n4@cfirAxTUMO&Y%a{dzWlIh(8s|6KS+vPtS~VZx^o3X6>I$1A#P^%U z6pxPgg&EFHQ5w^U#qAAXr5dW(8SdP+7cmc+pLe89UAHI7M05~tlZ3H)f9z6kV0v_l z57*sniA~*G57e9W5dgLL?MZEAOK~RfgbY$`9UE&8UsQgY{bfps{+pqrg2jEmBQ1K~ z_{S{k&Cz@SC+sYKtlvTCqEIT?gecj`h%g!xFw}7g; zoo}T%9cir(lau1+KF*K7*&4Au$~-S?2(8~$UUR4wG|p2^k&I9q3&olk>rjS&@@2xh zCeT_}9I_#R>>oq}?nidNH$RP2$Bj^q+@D;1@tX?NR3RehbJ%!;xFqr1SOfStHaL+q?Rg)r7?@!aA=DF|7 zLZ&-7pz=1j4QuxTxRq;yKBz_{OyWGmZ#(Rif+xV(OF>~CN3?UpqRq`QTdY@5T(v)^6dv%1gK7X7T#a&1P+h=4X+!Ws8{GETW|#f-=by zPw{g>nFj>B)^Ytjc`<$c3sUg#1yzaiq22P??BoZx-h>1O6T8$mSB9h_BxJiRo?OF3 zI(Z)~Ce8&!tc~nBwv3*`1LuEvrpuMsK3v*%p$?-ObJMqj^+LV0sl2P)4CfEo7f5E0 zwq&W7qv#}Fs!P#jzhyL{&FrU7F6F2g%53t(i|T_meQ?OOyCW$~TUX!kW?t=_`kfcR87p z?2kfsXmm0`MOz2T@`+(ybv9ddK>bI#Ujq{HjYG*l+ zvvD7?kB9TzlG1L&RaOc=W}PZ5k5KEd4_uwtb2}IxfHtDoI{`S+2?IETcB&5;ltcKK zY=Ju#u00F5zZI{t7AckCZ*5KJzPeJQF9N)c;6`G8Zqx|9SbGf22T7A58gMSx^yd4G zFAB1pRfJEToLXS*B<3N^A2;mM{+nt1ed%(t*pD1IXP$S>)9{aqi@LxRXG4Te*I4pm zw1%szB&`y6t*UOT&Li3&l{Grb?jsx#3u=@|t4wy5=YN+HIPb^| zh-tR}M;9;m%-ygvoOtW4cucZS1&_`j26~01G?iS@z9=?HzZ?txSJk7L2lt@pv>|^? zd}!hi#GIOqeqvSoyFjz*$x1|s+a_l_Y0+e~ka#fCLpza}&Ck7zmwm#7-g-hRes;Y( z!1*8DRinlp&lz7ie9pBE>!v*w$IPyvD>nDJE8E(G1jC&*y5wnEK6{E})QS^U3-6%9 zpc}n&_)b!)t#&AGRAvpQ-dGvuAlhY8ZGl3d^HYc27Eo%6t5t^yl3%#5{-bkXj+47J zV;PydINvTWQlnkbF0st`QImi0;8tEn^dAK^4EK{3J-7-JZzf@JI2C>*w$PbH;Q zVETJj#G8dWw_bWpq={f0a>?7-WZ++;AM@;5SvfdqJ!hQ1%dO1VWbb6%RMfLWuM?2V zu+wHisQIBN6+{S$9ZL&Y3B6vbN$moSbbQksa(~Kl6!Q!Ep2DA}uAcKEn)-wWiaWIz z?&^^+dr^dOUcpgt^Ufia&azJErO~x2Hy)GfJLd^`|q61AYC zS(JEgttoM%cqPJVVaAc|f$dawdEz@by`fp$co1TAi0VU={E z+dHS@rdvou&i)vq4bZ)=GncJ;czmUKqS)U|ylsBMDpCgMy|_1?-OJN$lj5l0gP7>- z6j!^uK6)%ymaKyiXBNr3Kw3708?#D9&~k&Kw?HEL3sot(XZfl10NnYSOsK<&ZYbv% zCBkPmk&B=$ljl_Xb(7{G_TPWb+(*8@{ZvqVnA~;Q)5hmsihXkSgKA?a8Wn~b4unA< zA*+Fkc~PM{aqS`%B~hs_iHKV|`~`sNUc*d%J&Ssn{}5RL$+n+;=r`wMr<(V^@m-DH zE23}Zq3!VuOx>5LV}aoGwJ!XL@AFmO86G zARL8OwS|lKJ~k93Q5Bp@y&IEJnigZpP>)OixbLLi7gL#>Xw6LFob9uFZNS?6_0QrP zyQ;j_d)0r-Y~Hwuh_wi{zEThT_-X-SQ})CynpxFVQ-rXZQof1YI9s04flQW0*raX&BpHIW5d;0QY!a=UBG$RkX;@WNc6uF6lH`tYv2CoXGj zQ8l9ax<*FWcQ6Ov^(k_g-YDT5AI_-l8hd?=YLO8$uN6IqMek$_&18tPN7>bW#QFca zf1y^skHp4gl;WaUcBekLUrA=t7%)-XAZl%CRo*At%F*6eYHQ)N=G56}^+42pcmZ*@ zKwv7Iz1Kt_mEc?yK5EUh+h=Ty89LQ_kTVj;kUmF5lTkPj>0@V>m}f1c=T+4hq!)W! z)~zU@>6bbLL}3PQ6^N7{6FG6)-P^Xh++jcJAOy;C-^U2vct>$Vv*RdL%$D=zD&67H5U z**zZ$u%Zra2qT`0`zSbz$|PE;T+dXJ6(I?C!2mm*&y7}UYh+T%B0h_6VjGdZ*}g*- zn7Ih&h}(z%=&ZH|qSQnVBU-`d1(2fEpoU@Ei%XIp011nkPqVMFc+f&_L|f1ZPLMv6 zD|3%NlkS6TL?y$NL&m%e3xLOK<&_qFs{Ui$4PD_}Bk*>`yPP-lWkqI3jur}YwhtkaQcVc>Lrr{N#^EDu^%fw_Zc|`nFH) zLK1#o=v|6vXI-};0U+G$f2_Q{Oc}Hk6?LuQS7%fh0KMk_F>K-|ED@uQp=??gmG%(U zvFeb2bni2rv@6Ojtjs|hRjrUBOHr+Afg#*hDQ4~)vn~9-31?UJs6gSA9d`tjMp_vL zxFcQBA!acDO^2whtXQ%R5UBwBgW?K?G)Egb_rSuqp~)exk>%&p%~$N2q@C5csg@n@ zWUbW(Ud7vhI&wDdCp>BUG*H}1%yngT!etY%r`T`=O;#fbgU>OubfuJvq!UGj>^6ByIzGA&^PVE&%{SoL~9(!^wPB!HuCB>OzY07X>Ig{NZRA{GijS-dvzL8 zFctj*`mDF3?$U$WwbOoszF)sm3j)Z!G=?R7SZ`}S_8hrhGB?^&Fkw_sd-g(`0aVYiGQfF>ov!wQe{`9FEEf zu12nmEaUfKhZntLyqG)B*b6*+#U{;%6&~J0XE^L14$k#{P^iBhIxalZV}S}gu{s~H z;;OwG{>aSo?&X%6>f8l7y4fJ7r~O*`bW1~($nSF^&j+*q(bX87v7IUyZ4D<-Qxu(T zER6OVSB8fMtiu5lW>&ZrNE6PV8&lIpF)+;}4!4Jk-)an5Xsp`m`1nu@WMjJ_WtjFD zMgMIACBTvGZ0OaY`L}+-ozf&*pVkN52VgT1_rEt^+hLTwr&1fIvQXeG3Ar*-KItsm zOS?}J-T%?ypv_ugCz_{9RQ^)!*>*HxgvA9-xezEoGv`N+)J=%WV#FaZ7Rqz}Kknx9fM$1)=t z05W2w2s*p|J>;ElUT>bWzN$4Fuil}ghE&#hluFAZ-;pth$&mX#cAI+F=#q`4lvMAC zdl@g3s?KVZD=Pmd9MR`gYG?VuVIxB(PQEwGIy4dZ}Ti=%lu4@)P z_!(VTm=AaNm;v5NS4&HdLwha7R-=Do&wgTWFK0TP_Z`L-S&66C#*2$df;Y^aKD^<* z)%IudS<6LkNpj*}sTAqgl^+Y912o(VoE6n7Q z2(x~*e(?hz1TM>e5rTDgn%)J;o*}{+Enf{=xe)#sxLuG7)YY5(y)gT1?bBoteTj#3 zivd70zzW(-o;+um;byMQO-bPgW!u^3P+25)ol&G<(P_W%7qnm92 zgL)B-_QP0$B|=pepFzb_uK4!(wC5_;Z)GQ&J15h-O63E}A^c|fnKE&Y|Fl>jD0Wc< z6U7#fl-8{ciE?$;9K*Pu`bdz&<-!8?VZ%8Ansg@sQeN-UY(jFsvahIS!dMz%W_sl) zlTeUVURv*5NWQA_d>=BQqtPQ_E>Cp*M_1jwP6?2)H{6D7&;u} zBkza^-*%r?gj#t~>G!J+eTuZ517-)lf@<#KUUsQUucz^SI!F`H*Bsu4O7$&+luJi? zA1gH2J|uJHuDR^*;`3>_I_p1yHLd4LB#Yh~1}DmyIqb63L4dZ2yBX*Pk~a+Bh&O|A zhEL`(p(!Fex?@=3>rxV2el=m-dQc8~Nb6Vmv_FCB60>>o>JM3xaa(9!{Tw+Wo?Hch z_~FuZAOWimCawK41(6s|@q@Z7YwXWJm|t&U0e85FymJp`V}I;44->sUryQ1LNnMxU z&!1v9^3~q93w<9k_G~16ijmIr+xTx0g+EH6BU1(9xrx^5e&G_7Ny8co1>GyBfGA#q z%70(Uo?~dP5@CRlVJzNEkYCuTJXsI@D#9&qqW7t>8XNU1Z*e$4 z-X+FT>z2txCa*;%=Cg!7@q+!7h2hcV>6fT5|F2`-ey`>&yh+aJbd_3x?VSmD(;xF4EKO156a!B`)kj;5^mmBfXn}BQrfH zY>%Jr7B-rTx7|vr&89#z_r{JlVWo2~!bK7`iN#|ld!KYzqnX!R+~@1FNZ!{|&q%7} zc_AY7-BgJF6_V1&aj|d@X8jVx=`=J>rTtsF*vIQ(T z?_Hu{R&E|r3H5k6eBd^pA3&Qc&S2r!vQ)>cZ>y-^uKJd?=6~m8{3u-SPH5>xCc0VH zE2)eiy(suK7euvD`BYX-RzOO6a)3X!p50(;CP8F$i3aK}#Rdo~tn`WEbhU|_={mCU zLugb1DR1)PoIr&NR)8AO8Ovz#jFa81u>}0Of?L`=nlMWde3<)WShn{=npUdKh!llC zU`*e&h!!t5gZ#u?Z0C~iwnLOEFqG(Emh=<^W;z`Wpz_WyTm>D=OW488l$;Y8=Y!kg z_zq_y_QDS)z$TH(i=z?#!Ay#+Ef)n@muW~&Rvx6p+FaVqA@kk@w@=EUM|Z6-)=eqV znxyaV3hy{*7~9_-h1Wn%e8YS9H`3`zhGqQ8&KOIkotyUWtvx?OEa)`gNC~J1d*plqi)pu@1<>oXM>u2)++& z=P(#AQzGK`Q}(Rsh~V7h+427iNDO~WqH|m>6`@bHJM`#M3iwc7j`R(Q(bP}6V=gnrG(nLQ^ute=fg zdpU%M%JNLck4{&U?e5HTw=)==0LA4ywD}ye$1M&8-S0{{!h1L!JDoXL31{Gi~L1{sk#m48GQ+}=MU2!7b_Wj)tNT_ ziEy4Y1Fa4irs!)U+-gFo?Je@h-W+!k{B;DN}aP776# zziH&^WCU&F?1R19ZxbD-UxY@VS3KXha)*tTAB!hj8vU#~oSb{20{nLPL8a_-#NkWH z1tw)C$cu~FcmCc4NqJ?4nzzeEP#y>DX?~mivx1XGiwaOeHLg!uLMTWGbhjxv*jcRkYzS(rMNtzYM(c{n|%1DvuX25NPs+0W&(g9{F7Yo@cuGPei+(FGS;&xUz; zoCus=r1I0sG1gTBZEFpRT@%RekJY>OHtk~GZCM2m;~vaNsWR(Xw+C_8NO}cG= z>V=^o#(L0TxX`G(G#KH%JTz+6x4TeF_#P~~MtXesyU9qQ_YT;iR2}I=)&Vu zz3xA8V}!?a8mFKd1y&@C90nVJt9=4BIwi6Ko<;)|fnvCX>uZ6T<1zgbL}DW^XP5DQ zdg&alFnIyE6F;Z!$d`3^K&ttq?nEo2#jb~69maB2C37i}!y2n7;^H z9mLTk4Y0k!#9+m?YayZAeyaU3S32fg#|9rOn6iVIDFAA4s<-jVJUION1PN$ zrPRTk7T>h?`#pJWo?P`cuyhr-?{Z496!)9%@!kV!ujMe!D`5~@jxE7ashpsy70T8c z;LZ2fVvz!$0v+C6`eFC&zJouxDv^#Xah;jbSlBQWmA6(~Ln4HMG>I8w zy~4ve3PYVFLuk4Rk@qIKZ&1|Gi?{|C{pyh+?}p+&TxRJ&r_r4@70l? z`>O7NKL4V<{lu^wxjgsC01EGD`rT_}lc9y`b%R&Ifu~_4OA!%_c`_cspeW*%&Tk?t zuQ&*b2c}2Dg<4CK{j1M9_4TrU%zT(Z542`oiHPQsJ4?bcwFVWv`ZeL2IrIKulyb`W z)hD1K)*YsaSAtG&3$Rc3d0TFG8>LXqh;k_~|M_cMWGg*TvJ2kCTpUHa82&jicuXNV zvYX2FWDRI^J6_BX9Lczu$;%A^ytcUKVl|%%CC+MF@Z{+xRnj-Zf<3pYE;49DxGdiIM>lS%69$2t zBC%;IU&!NxvGn~kakOJZ*#Pw*-5gTB$Q=_da>}vwU6e#yLvUY5@&sn|A!k0w44K-M zqSEWAEiLzF!$ejO15$>n9W&-xa%U*$jZ^4Sz{Gk(&Y=|->GkuJt?y+Pvw2PYUy!)! zK~U&a#pr}3${_vlTPQv0hM?|Y=T>stW2dpUeRFXit*WPKY_HNPr_M@=Qx&cP4A(XP zzOSegSuW`b4@G@>l6&*d8kxQEHC5(;pnlvcYR14T6D|a@KoDASdY)N8|N1Ow^$bcy zjguisTgq?j(HvRb>8GqXZxrII-hT7-JaL9D9UpHXKyCrX`V(>b3cH1Y+59++oke~0 z^$CE;ym94{7!=z?`;XjxTAWlkl*ahyAD!p>&%Eph|J5CqY3h9GmufccSTrq7h4XI= zB9wf2ub{-8X)aC_+JA#on7pXH;Ir;=+qO1}s9-BMDe2ndc#JJi3DeDPRu zM&C>Sn|L#uz*h3-sDf=w8|E1hpJkJZb~?#vfq~ zct!~6p&6)*oecn!)6mze$Z($KsCn(-+2(66zI@184;6RfbLx3BBqAjC#^VihN$aKm zbkwhJ1BX2ezIMU`9QR5IvLOPK7)-#-yWL>Pq4aC~nklY$l(0h4WQSp;{$vJD4`}SX zJrPpjJdg>1C*C~;j%~hv6ByDeeB*b-uT|+ocX_j|=!eDe`*|r8w{I6XKPVV~CEnZ0 zQBWM|uoKiXlc5^uCm;-u3c|Qb_6WU1t9RB(p8NMu5|VeUd=|aDB3)#9 zLS~+-xnEX}p1BpMfBk_^OZbKQu_S`%7fPeNOKah!(h8=sLaC*X-)YC*Os?%4>}|FW zUfFt;##ZT&MAi?$0GTnu&id#^;zdQ=_V_HnrS=_=J3vz!Avcs9pXE*?cy1gcCL|z| zV1-78LL#gtCj5RNsMTsr`~A$;`|)>guFTe5GZdn;f4gz%8_ttn>-baJC|r1MjU>W1 zbWrjAa{&@X)xhjwO8Z1RH%>EIR(A%EbHM2PKNblnYp4b%jl8py1-@&yW@h76v{?Sp2|M8rp4L6WApUDjcwFl@%-oWaBWzesy`|S+++~~P zH8udm0KgQPY@?0g!7v9gxO`5qOA$}C%{pl+yuz$E1m~SzO-_`qH;(-Z#8Gxcp@9Z% z^|=L*yFa%+wWQbEZ%YMks0bFN#~)Opz9AVTo?e1Jdvle)bqc*C@t|iJqAU2KGo#>;Tc;+Ox6!S2hB#Z;)%$OML z(6tszTt*QW8`VljoadHw;G5>GG5XUms$ns*C=J|Powjsm3x918&hjIBJ-eA8C@est zwY__keTE|`R~8$5GJ8%uLM^Zv#+=iv|6}O9quK2HFs@IB4z1GKMO)OS_U5V9NL17c z5~HmdX<~1sRik$8Hr8WCL}*E@ptWn42o++7nlXwf^}hK#_sKbT&dG0F-|M@yFLOOFRSUlX2MQa_UPi+}wx7xnV(&5TwCzTnhzU$Js!;gt{9s$F zwFO?BSJq+mK>=k`F!F z%pE%-`4j0;U+d+n8e#_)k5a19$>{0TDHyn4b|g~C^VZvM$BzS6wPP5%N`JIntRJ>b z#_hD!nZRtSXY!Bi$+AIYH7?2=oHU?r79-`Vl()yIUoEA9abtl%$uQ$`ro9zc3H~yE zMmm#Vyk?KOwI~Wf;L5s7IjE*S7n^JHa4~HCS6Ia|=^H7Gf4*w((6tujZj4};87Q*! zvn$+F`J?j|pn0|GsA)W_~Rl6xnSr%O(Dyi>XnKC*HcZGZFQ6k+7$uMRAaa9L_L@jkkSlWj+{f8Rj;&)u`2*nkSD$=jlR*Q9# zhJtZsToBK7PK<@}TKS}m#k=GxLb_LuBh*1PLZm&M!%T6&8MSN0yi6?0TBeO>-UHq` zD$Z}RawYeiegRE1+c@zuHWt_Qo3rzGZ`tSge_51pM{x(euK1_I`upt9sib8gpYGR= ztWn{L-+tuz@PP&OIWmw|n4yYppas$lWkX90pQKRDD6kzP_LkawHaQ1_35+a{jF_v2 z{!RNauPvY&0-uLN2xxy@JlcxerFVkiFSv0bUZF0jArtsqjglwkcRwr!=T*;-dTVqv zy~=*38}_zEY91*vtYG_n0TFHA&w&OLv{V=RYk;L1DEu_JbjISf(*z@K!6|lztCLsC z3e#bGAmqN8Z!MJ&v5hlz)SmG9DxCq5=mv^^V$>YAF)03I;tw1Xdg%X2B5~om^cE*A z^{z@A?>W-d|B_qMO(TlfFSO`Hm+_HsTEBx^tV>);N0a0YZ0PI+*l5+NMYZ2!`Bpcu zifUZZ4Jor0_L!5!=Vwh@q)%>E%x+J$@%^pTRbfoPlOID1fuy^&sZ5Fe<<3?ffd4Jg zYa4f1(iRxE92Lq^!n@QWzq5buo7&?`>sFyXia1D#FP%w8FBZgIBMW5U(V5arPXp1KU?Xc+_?n;Z(jq;D(*`mX&MlK$Eu&LnEDa(}geTTayr6_i(<>$JB^ zl>Sw)JoaZUGC-T=T`B*x__;mG024WduwJ&L+a?<2}22-Fn>FG1^+r zB{N^lWu|tr-VQzyGQ2D5g0bfs(b)7Gh}p?`<0>_5}!UQE8vC5*E=j`j5oXF{0PntGoEh< z3SJ?-Knec$t}yrBqj{t{)8Fg4+!L&@K!A)UKjlXd=!Q5C;31u_{A3S1XM{vs%dK?k4U+lohRL?ipB9N2 zNU>O`)!PawM3wXno}S-X;sVNF1L2rqS?hH?Wio4j7@_(*a5S*3dM((bU8%Yxeg%kD zBVHMjp51EF4J+eL_i3GT{3Fk_RYbN-YUiI{ybu%#<7iEIRPqhsoL#P^y>wUVRbvUph zagv%O&Rc;)2tmsZbLUpnBRifx5RuBV4|j*)aiL^)b2!p%v3T6ddTD@%PYzr~&EGq4 zqKF*M#hFLRYAsy|`ams>RhRiKAn8?uwXsrag{jsi|O%DtxEQ+GlDe<3l6R zq!=;R)ZiFRN&r*hnsX35KNPv5itb?X-_PV4~x1DkRNnEXpPbsXdmpT;lHjnxFP| zJecPY#UPYWp>~XPcs}S`T&zDzlt-x#zc2wdcu)KG?4140M^8V%hXzk?@BEKN093le z2)K%}!wf%6Fm+JZM?zI+P@#4h->sbh-W%{n-&Hk{5BZ22TA}*D@_3oO7 zJ*uu$tRUG_W_=5Cz+~k=xEpt{;vKzQm&q`QFKn;hzE8!CG>V4%Hty|<4`$k@H3)AR z;HDuV&1Q+Bu|bK0aDiXi)Rd}A6ED%1zj0(~f3W31Ep#yiI*!Y1G0)RYK%QPxYqLLm zT5=p+#wbJUW{0{;Twqiu2@lDDP1OW~30wXYa1g}=i)cE~qh$2J1s=CiCjPZ6&gcir z#DLCSxbtBq>D&i}5y%|-Z@+o#Kr#UBdJ4cQAAvn5A-YJoNznbsiiWPQEg3AOs`HP zIbdUwwBew)`%jA$27MTwlhO4u^4Pni#O&$s|FQHDe@~8B2-Ktqa|eVZ ztZTMbP2D})2jGo*sTb6;j+*FEYN3;MQIq4Eq^X^kSE3hm&ZKQKV@WSwc82+82CvbxnGOlfg>eXU+6^OtdgQ!+``zU~ z;NU{mM)^A#Mfzp3UZKGWyJisuqzs$3cq%fK@#@_bbx`(=yy8sUHpmC!=Qw=mg$Pwa zc$KT7cc-mL#h(gZ%L(|&S zu=!;F!1rGz9eZd)3*TJ&2_?C$fl-CuUqA6!JJZ~lQ1$Nj|9e9vPXaI!_bNC1tDFes z%Z<{4M>-ER*7SBSGK2ygFcT#7gpUd6D8O+xaj-vJfq70N15-;9uojb~Esby-+UE5& zo;hJ;bLmTAv! zyHKYR;$uw5xP^ZvT0Eeta{PF&N7g}Fhx~VY0GJ*gL4HNMX|zE7ho=2iDa=DvI%zeE zjqlDodLB~^*}cHvuX0!;Cr8Ju)yJ>)?dT=~aFb3hb_*8|x>tfth5w1(}UiY({rLOy{-)e^Ht z^mdNkd+uzDaL9nUtsGuyuj_h#rsc?BOzG;<7=6&NLaSDvbWL%Oi}FsmnD(|OD4$i# zT2@Sj-x9ms4+H>uZfIic@Dx(kfiPRdElO~2`|f&Z+$MP;*_-<7hi54G%VL<;b$tPb zyY2GcX>O%flQo058sDF}26ZD=hS_Mi#p(Jp4L!QE6-({%sBCcbYz;6XpuW`$KaT(L+(Bqd6u*v}J1Ic1?hfc|L z!D`^MnNff2Ym-i%v`>@PUkbOx2QPRD0A@-@(JlIDdiwB=()Y9~!NG%UL zRNKTw&FzB!$6|6z@{tz|R$}7kb1iwvKVH;sZ|7?4G`UtlST?u`Y~H1<^B%($jS-Wk zGV`!J5m4WLCHN<`5IMLq4!$0$xbTW}A8oXL9018kvZ@@%KyDWoxlxizG#*SNbRAw+ zPb!hUBNW>hc9p+&r9F=H)uS zRl6RteFMK1>1NeA?0G}wZi%{Kd4sQaX4MRWdm2@c5?9%|oC7&oGs+4O0n<0#azNmKIL(&6<;P(mLg03UMc5$8d_d} z6KdBb{}VucGlS@3@6Sv3CLDamjDQd8;Eso;XVtUOq#ieodc~{AVaVRxLh|ve)@`eq z(vr$lB3CU~_dn+H+wFCUfwe%0cS6R4k_k$R22%eXyFSB6n#sS{!qKpfw^bcQzx&drF ztl}kQQvO(9a+G(dxO+eZYP!B*s%|#L{PD%?u&2Ohz7(lpghN?mfNE}533t{(hJ#bU z4*Owd#sZmsde4a`oJha!0J=GCB>rjnyNJa!Xm>?U_@Y9COqWYaq|h$3!`A1u{MOU- z@h>}0-2J7js{v-9RSBK~3U^B!ziUO42@6`WZ5(rO#auW(^(JEknYqZS)u@#cPiu0DHv zqjQ%ejWZTnFmxh5SZP?M0Wet4%@i5X1yIrM4@xsK#Uk8~S3=(7lF*jtoCGXtOPoGQ zlKf%}xI}4YQ$0$)F_5%O&b*R~s;G$36TQ?(SfX%30q^+5)h(y_lWfw#mBp5wxcFR? zhA^up8M~K?5Hqnlg=znh+r*SrIT33VK>8?xqi1JZ_v`2Ho)zOUWQbRRk_ncU$Mu8| zl~mH-Wc708ScGe3XPY^8GBtMDvMfJ#)o4GVNQ~puuKvz)*?45AJdetF7v2xtEfDWq z(-rp!;`E`U%&Z1w^mzCofNbuA8+f8NhSbofK)#|Bw zKfyq=Hrj?Rx_vxTJ&io;U8tElIhUO0*n`hhRJxYlOnYZ_GPsW4|;`E>S`$B&+N zK0ei2%~+?L3wvfAZV_tUE3DkVth)W$+{@I}L|bQ}8WM))o)A-2lqq@^zWYCxw|u4& zz1P9z&fo#t9xLzle%%AR;h+TM9#Xb5Ye+2M_A#{ZXWdeET3FB`!mL~9DhU}qT~kFr zs1Y~Mx6U;FX-rE>rcJvYi6XB?FAIB#?y}xZ{ZqUro$h$&Pt%YtlLVTl*T?tu zC?qe^B+!0)DQdesT#FH|P`-C)u+^HcelovLMv*B+!6zy_JBzL{vW4`>g-H;4GVd`=1c;&q7{2&;4YC0;0N{Ap!1&4T>?x zAulYi%R%dBYC^(>Cz=7$4u9QmxE!c^byOWN2SUMH;%7XT7n4f3Uf;pVhE(C1Ps|=| znN>3M4#Rd`%WD?A&e=KqN^|%wr=kVF;x(KjDRp)B-~IbUjioRa`tsI@1bfbh$AaB_ zF0Suu%z+AZ$x9c-r2%0YhMX`JT*(eqhaYyT$Gekrd*##6oe0I2@#mNRC_(N&nM_K=gce-48I+9asMll19DkrnMw{ zJAupQ+WVb1AG-bq-Y9T>e4clqoRX5DK+9?+2Mlq!SEu{htZx<+tgq(b8^1rzkQChgZs5pq<>6zRRawCk5!9+7w%sy#&{H8iOmU|@)mL;HV9;UBiWC`{) zP&wNv-`+I*3?8O3#Ek!;Js=S^K|ZCkFtsm^WyAD_Ud-jiY(-1fBdxroo41#Ed!=(! zM&o;4O6aRdjweQemzP^IY`{kp6R!}+nFZc_{>A$1uv-TP5|0c{rKEfS>J1>0&%2GV zwJ}L8hj1rsaFjGaW?Nn?Wnxc6G<%XGR&^{2?aL#&#m40`Le&DDQyI;8?j4{YG^Wt< z-whr!Z+Nb&=yMGLCtlE=78VKQ>m;9{m1_LLZ#_g zMK#m#t`}qwfIOjUp=%UD6hUQvdYl*izft@?dfMzh`{vYA!;F3EryN#BB7&l5EK3q~ zUg0)}o{RCb-{y$;ZC{WxcC?uh!(B51V(HTQvL zM&%8V5J_lOLr@si<_})MvfUD-Q05xOG&qQsP886!^U#$LWiqb1mcjI6AEX|Z9mUHp zJMeoS!SC#Gy}EO3b_c%4dBt8@nApH4u4`>y!=BV~PygDq;Q%%HkgB0Y)Y7qWgl~p0 z#QDj)yj2&~D@Nb>WR~CzgskCe!2spW8J9DOuOS^`)JO;eu_UXy(P`?xA_(pplFgkm z{pWj-LON%UHWxUlLgbz{#*5t!?Lq=4~ zJi(I1&e?{jf09a1Ywz-2H2jTtKh?W#XNZXI8fG_uOZ*}^QPW{lYjV>nfmO~a$x_2y zJN;Z@lD;H>FCeU~Uv0(0+zh2@7lX9(Z^a1b3TUs`HGIe2 zzpJINH_#Z*v%>dG7hF?{EgcuF5uY^ZugY(3%}y92MO3ui@6v87dn#+ZZ&g*q2jk+p z-82I^%FW0?DlhS;wKxY-a#RoBdR45cVwmHTVQfIyg^_zLjTa>2pD_C43`F=oa9fMe zq(FX&e+Fj?Cqxic4b8`DV-u#wYhOkj^C9D{)n;KR2}& zYYsRO?_X{TnvgRO1j&}p$&$NmSS@+Xt^RAm>`MTd@WL=7kH&saz=>u$a4$VcWU%Bx ziD2Ok?IU0N>Fc23b^my9p!EJwQvUIGCWJx!s$ct^<!8S@Ng!T_ zSh|Lv2}vJ?g*}3deCksnMyi#NcaOSoVOD>$TkPg{L**uoO{| z_U3)Q#C5u{=ziVxr|?bR&HiW&@%QNX!)yvDUzyZkMAsq^Z9=JEONKU_r5POE>cCo) zpMRlY)3Z1se?piqzJ44d9Ef^1%5bx z>9K(5TzQyGkd9=Jg1;C@6CtKde~t3aIv}ePVPev~{R@AB!+TOV11z7JA2kr|6LUUo zOj8rgJ^}lF4JTT~*@tP2Du*?>zEPW!f0?Rf{H))qvaxp{zqI1JdXMP~zUS^15A$+l zerG}nq-NNLfa75^k-Kha+AjTl8#he%R@_Jf8POZ(6~IG4!NYopv62%K)TNZ*C0E$Fm&8Zs0`q=fh4}~^DOgzp}byQCLN>} zF)TH+h0%2>#c`MItlBlb#f4wleKNxO^Jsed@^Xx|VX)uib6>N&we)u0ND3NA95=KV_G6NhlImK~E@y_k+tc?yT+$7$_a_qNA3thG0vNb5&7RTQp;txcWj z!Z9Zgu4!~SOO085uKalD%g%+9pkFii*X_5BTGM<^HBp zUEsR+Gr!k2w_p*s?XtD}Yo#8f()wJ^%Qo=dd&7HYNyVx{-owHu&|JS=Wl2_no@8YnPfolHJ{-EU%Yigh>bq>-$imG_d(+E{7Irsyke-_g_j9Uk z$$u1Nu4FLueGmZOA zOTZYQuhq(UDKl2Q3&%}+_D`(Sk78~3L8X}I>l$#0Y8x@6%|+G+q=ZaneNASe?4+`F z=8xcd9ZOrnm$a9p;sRHE>*sgFH!EB_-n}C{Qpl^h_s0JG8+as-a=yvTl##a|sDKy4z3rmw6-=OPu3?v_cT1IGe0GrsKJ>d<|VYUZGS z(i2FD$hmJMR!Et*i&iX5V|G~&-a$?uaeZbHiNft4JIe9qxh!qw<_VVO5dCw5YQyV8 z0lMxyVRM*+ruv|F3o`|_En-(*N?9X*(Q!qr+b5q1O?mmpFann5X+A$O@R+1r$g#$6 z$+ToyKK&9>z5PP^>L4olQG9TG>!eWnF2^8N_>cA&V>^`@ULq5Eha>CNy3e7JjUYcqvaz3N z>n}NjAUrB)l-SAxFDE(P@ax5DV$Im!p)Ejp)1H0py1`Rcg(!T}tKUE<0H}f&RC}6! zj6X46A(i95+M-Efa+M9Q(nbAV26-Smh*TdrHky}dWhyTINLXUSvBLI zR9cL}ySobb!2|e&3w+$1?^p?n^-ud*3rvuJ3ZVvo9w`&5=bEABfX4ulR8vE+t3uA% zHL5+dOZ>=x{p@v@SNiwwW!KKdU2eIldQ(52Fkhw1H(s$e3R0uxsL6}Ez81|d&tB_? zl+WN-#&>FGu4^wPys#(`RJ#VCcIMdm>B1l;w)N8{HgX=NsQB-vPtzxRxEpx9;SJ?` z1Ap(6ARk_Nd~95BK9_%G<}v5D{3(aHv;#XZfBCr+E}#_WEUFG{5;!OI8UoZr$RXJM z)Y``fzA*Asc;%jyh~K938BsF}DHixrnjm>Pyw;Ovm6`Lq73{WQ=@ZlFpxhM*3w-f0Dpi&tha{N`LQ}fhjib`PmC~Nu3cBp=*Ek&69B7aKh?edIJz~0woqB)^pl2B;s znBMn7kns5ywKU4Ak&vz?onBfZ@&?#2&?8XP>FgWT!bq@1F~0kbn!Ijzvz^i}=Y-&O-M((a!yx1zgFaJP94<#OC;?1118;Od<6WB@E}vu3R0`kxcm6la z;nDon-w!7e%yUlJ$t4Lmeii9POET7>E#=P!t&BnsJCO2}08ejeCKxA`eXjVY-tYU! z-IN)QN#4bV(qr@hXynfcvnit=9d17^Q94H5#?Os3JMAFNvjfJ*OXVJc4HI0leiYdY z4PIHgyX>#qLMq^D{*YHXDb1{jT7=Xd^0IEP@;x9{G!BQ)4CJ2iDHrBv97Mb|jKaqFkB>pAYsl?C z8*bBQ?q%d2Sz39SN1Bt}pv(K1^o0@ueGISq%fP&U9v$=!Ug0tY=KYGbRR9r^p8ig?4O<-8Q{5lF`;7kq4uHElnR#iooDu3?!P2jU9RQWwwv+qA-NTOuY2Bob=DjUSj-rTh9gE*Fny)?jT+ve4VD^ug)KN^e)~kwodL2t}`- z3usA6YmfphM`gw zWt%5A28ovCHZKLI?#i>?pnd3Flp2l+8h9{mj*$=CYV7Cs%93@+XlNnl=SCX!j4K4} z{o$4QddmW5Oj*yjn>8)t;!)AjC?{o>E>e;W(ES;vq>ubc?0iD9}aq&5g9U9$g5K33bV zTOH+#iAN?YFStwY$p1A$2`F;U`! zHN39Z_rq~-zhJ3dQtFr*DT{8l%@B+P+0jfrk@c6F&WW-L=QOVrtw?$Ca6*l5nssl6(F>1WxgpUg?_d{RolhFpl^|F`Vy&x%{-KEgPf_0j6Z_ zplvue$oa(Td*SVkr2-)aKRW6ph9UFFSslTfjy#%E&93oIuR z#CY3`2WDFV5RNH4MOVLEwRwQ{zQ+QokdP2<5lZZ?&xEw~sp10Hf%ad%)YVi4b*$QI zzG~P^bR_wFS$%d=Rw9Kedkb|CV{2Y(m)$wd~eJtY+lxHL9NFru8xt=zj99(jVOb5 zrR9R>NAxI{QzfNJc&JUj)z~JR$a#CGg-mtlgwH?Q__`@oBI07It5Qha{i71M%mwj* zON2U8isww8Li?27wP2s*q1`mJ(bY0>rX>XctXioe%RO1wkaw4E^r}MQB#rt`IauGE z-Tvh!|F&6{+{`C;b=~G@%(3r|;R2QWe7p74TN%UD%1){45&50k%<&m-uhL>drPVSi znOEMO&$l-NRln_E|FSB(7DUQ4>-rqb=Kh``qbjdmHGB0P=D=Rr3a0-s^J}8D{v<{X z1`tQfc!^)^*AEX`(n9E)2AaBqV^`dST)Q$9@z@WB0I?K4>)22P>t~TeqmDcU%ky{G z$A2{|kRMs5N`=mj)+RI~v}7$|zo=*Zc7`^f#P-n=Q;VP$3;X&Y&t34l$*&H7;ssZ} zhybJ^hMlppcZwP}(gDLEYwMaqKI>Apq2A9@;yto(dyY;;8$AWw(fsd5#rkmwZ9HkY zp3)JnPcU_#PmT8)W0%bt(7GnK$E{(td_Jw~&3>=8zxpY(i$dyLZRFj~l3Hua$*f@R zW5$uyzcz+=KJNr+cWHzpIe;UZq?({GsEsOqGxVT0wnco`4=|=JKmXd@gmi!~>Xe0J zbc=*3HS!`3Ygs7q;Ntmh%CLUv;8o1I)MdU1J>d@9K@ht_^!f{`;biTR74j&PKdJP; z-{91ih0@Z}#Wra7og32XgFAMPBAlzB+xK`Yy2ql&-l1ra6F^uR{7DAZbQn$%V=rWu zIn3P*H)Xi*j&uoMIt}{IZk=X%uylh*8)Cfe4Hjhvyu-+< zh%1hJ3?~s!)=^3_E${18GZ`N=dj8)2OEyucVY>im`=57tQQqfxul1;u#Nt%Ina7SO z9m{OW+QfjV9Q6RXYVRQ~r9M&87r2GADsAI#@Kgo7V)oLuF8P6WMPICp%HfdJTlcRn z3(yc7!;kDgY<4EynO~)R!R6@RUV>znTp`xPV0H7WGPdB@kV2yjTI926E77Kv46`(} zbep>}6GmNE*W4CQ1a5DRLgs#c{}Y&{Glrx}Jq}FQVu@~!>0$KPMbJgt)a~DP0|UH& zW^H*&v}P@ik;??V24oAni)-OfwO`Ja*3nDvEP&=M9xr_m?>>Hi*htWCL%-mj zo=54plhw&w1of0K2@euW?tHdVer)eRe+@}YE}m$19IXTCI9a}2q%f}$b-}48j@y^3 zWhS>I1H4Dy150jatAXvaGT1KUcBC8IKTo~V6Jk%kVIXZnr2(j_8A%yt!BjONM;8KY zF1PTSj2b=*s7%7hCjd11>hoTXg-_7%uh#a|9{k;?FQ#Ah5aJmpaM$iWC@A#gZg(%3 zHGLZ=lTyu*N=>#iarVBdAp=+%QfOp6v*^&m)@K}5{ceVT3dkyyJ$9Jw6Zu}#rGBb= zpU?GL4+x|*)z~djK{OyGq7Z!>{s+DZttV7zhffNYs`I{W1c`V#M&b0b39XY#>K=Z)dNB;9v`!FQKAN^UbCuX66+B6>ZpPP(=C|6$(ZQ!39 z2BG`i3q=Drti?-+4H=Q#+2Ge94%zij_u$|nP*f(Y$0GZ~iVuNSlIbkH#w!&*Ir`wB zE{$pQ5Y}^X;s_qGWE%JB3o+x|Hook?Kg!coD~I+Xj<4>am#y4bSMGBD6jl40;e!;o zQ6RvbSAx*+k|oey3myT=%ComdLG|WwosX7Whxij0O!D^~K>L6mIU5*IX(gqW_AYaE zVBajcjr}xyhmCupO)bjY9iwI9er?^&R(rC)_IO9BM_AynrccB*-g5M-{x^3!kZLKF zmELO#P3D@_;YU=uQ7Rsd58^ zu1giYL-9%nZm%mOWE@3k?1N^8h)o&+6J?3LHnE7Ls=TZ%$w!UiybXiJ|6w{fqSGyc zk}Q^EN~8tVI&0nwbN;^e9dY_-Vfy5kg-mA{SJA#Yum3Umw&MHmBTkF5O42>Xu837*?bo zW~UmI2DHW1_2NBg1($bK)S>wU*Xcp^_fare{-ltJb@|x|i7jn~SK%6P?)-ofTp!_y zu*bi>SKlOeRSdXmpYIzn@2i=l0eY{1P?*XD$LhXUhh%^E+|HlC@rn}-a$wTST(2PB zsqNn>DRgL{I~2`$_k^6pIcNK+2<4*KUGC}oNHV}x3c7NR6wB5qay4RQJHkw*-{&gu zS;gW)n1eWX!3G>%T(@G=TBw8nV>`g{9+)rLIBTAPR0!<`^qK&s8pNf`TyQY?fc6C@ zSt@7#s4JH7b^+%pT8}c5+a6ON^Ps=@uJ|OdanDIlcm4*S4?b4Z*T?I{+< zUhDf;nAat0@YsI$-l=XY6QW^bCFvue`~?Gkf72>UimRQX-}s^xM4n>Q%YW1UAB$Yy zm|c>_3;3fRpf>%Jovuskn)*~qHhO&c^y%MyEl_WtjAZ(1EcR0Pt#h< z*GM2K$;bJ2%CxT|h4`b+jCma|;NMbhHT1_8vBlbfinUOKKX1#|4eWL56l0T1*pjBM z)Ny`-Qs8 zFZU9(KYFH48T3KZ0RW(RGChDF(Y~(>o7HnIFk6z1wEI!xANf8)faDc1SyX50`=`20 zd}@{OeAY!;G~r(Wdp{a!-t$Q2U#BUBM%&SnU?NiuOtSvFQc`6Jb=(VL1k{>1eI2R| z*M0nMUVRJ-K@Zl+&7Rw@-5?lnr$zpSTw)4F zwDe4rhNDjVX2-+b=+3?fxyi1;A?Lf$z!WF^<2$?IAF`<}P1^WizVk3XNAD{ttA?dJ zSxewy8~f^!Flct4M;XcgV54ZuJtT&$PR<*nnz7RGAOqH8y4R#zy?&G!WS+ddm~p3vPq(;;f}^Q73(UQ!Y1-6@bFaN%v9%VY`L(Bgx&J))M%Yhe>+g<}8u`XBpa zkZ|v!kClTvpMk@)iS+hTZPW4LaC90sz!-;(7zti<)d!{Pr+{c~3 z!?XK}NARhK-n4seb3-MSxG%)gYIBGlc?yd{F+9IsOlxR7-S{g3z(Z?=TPun7V@S?tHswpV zDPNV#N)iFShSJP>wl5cliOOo+N)QMinx%?|bbL$jq(RCHkz(lF8F&M&=Rc_uz$&34 z?m8j0VPZ!N>pu)~G=;mRhRLC`<}ub7Ay?4QoIfg)J~RNAgV{-V99te)+F+|r1$Tpz zpPSx4>ZunJYEgS|{r=)YvAOa(Hc{W|w7*ZXhvxjAoVg`t^R1@)VTb8>r)4HHZSa7S z()JexUrcR9*r=2Vxg_sQRhybzv%DVDIl#SUu-~`u+hlmOQYdAfL$uKD>(HL*U*EQ% z?gVwt-Gl@SxwSERniF1hQ|x|i#xt?rjt^1;M-*yt`PENLE)>bPi6xYn2weTp*{A^- z_9c6w;9FuXh+u+X22e6MWQ50NF~q$8;gqj6r!Qh8=jRx03{i>}3~|XUyM%)M_Q5RX zKYlb3!OBQ(k)rF2j-3sN4gIYih&g^N1KPxVNJ_9_xhPimZgNqbc@Iu*cmH_BbZtmO z0v+7ss0wo^3y?IJ16O6|=-x_H3LoHFn00{6)3VNi}}jo=-`(4+~mqI~>i?w7&^Q=3i*4Mn8d z!$>f1qpMVnyKe=Gx1XkedGpV_>ipxITt{3rkos#p?^5NZP`QZGDuS7jOI~j1+5lWU zcuHxqPvPg_*Xxqc%n$d7rUqDpipSZb_0=5Ey@o-Qr+G^=k@`<>PpKo*D(Q?clxBT& z_|awm+Lhbdue!whgDy&`&gaibvIt*!x$c^*A2Tih5f^|^v>eS$NiZrz?x=ZR{heZO z%MiJIxe_9uy-UQmN&41LALYp81~n%F0MIm(WG#c;@WTmI^n+nrmtc`>@`L29Wv5S8 z>ix!LUyk}|!FMZIXVBT!gF9)#AN$vEXenQdl;IuEwXNDfggSm|Aahz>du#lXp3G+DoX$v|3-DT} zFgsiFQ?JGQ0J?prh@u6p2(PcJE(DpGbv@S85aAWD{_aQ}?91_CvUx}6i5{po)!UIk|Wq!2Z+msyo{%Hqxb(n!kcoD{12HxgDeVunWW-7)uD<@P`n?eJmo{-C`3fIr%qzoA^o0VQ zVDa5<|8_%@?8nc5wQv);W};p71o2q@TVPR`Xkh!(51S|7pScIGYv}B*{UsTwi%V}X zDJ=0+Z51hRp9CZ|V!I%4K3CSSxS?8m;oYs0UAIKQY9}U`{-o+5s7jS!b$sT)x%paqw`*oUvZfzdlh1Ku(kEXA{o$snQOF zlBIJG85e8r_uXySpDH$q;mGPPZMpt+i_Q5*(4E2##%w7j_-*V;T_G9nnZ0faoc^7N z{Oec`6$a#*msz%lulSf{H60Ma9pmJ=lE5ixe`N1S!Nc8~J6q*(i-Nw3i+p!m4537< zZ~9}YYA%PT211Iz{=-Kqa76Xn<>+CTcS^Jc{wqa!0}jBRbK-6kvtv9=S~w^sUruNt zoX8Pfo~3D?*bFz|f;nZ|gzg#I95K_r>1~<1w-}VwPR+EjQ}IQo&jY?2w@s_QzprGu zCzfEx=4z95tj~Jx@jsU(9U3VL-TF#cfwH#4wEzTknrKSZ5ghd0Y>pK^udU-ca#=xV-2v%c*llU|!?{bUSLLvSA?=OSgN>Laq^J6%cDrAwP@ zXr}kg!Z%YOb0#B*wi5kvskknSTJ`c*;WZWLb-?z@&H-*VH^hHP0N~1(9>Q|BXXtj9 z=(|Cd*t_blus4fxCVLm}Szf!n^0&@>>@UT>f6Y;M>+s06`RRI}lD&)%L4uT?1l#ZT zCHgQC7;0Q}aXIKglJyeZ?s%90bKk)(zVr0+AmQO!ko6DK)pxHh+*lC01hBbr`}?C| z<8bCICA)7)v2hRJ*_1wo)eCUKBM>!2@Rwsf{*{oH#+XJxN3=jOb!kMy)Nn5`6W?5@ zOo__RbLJ6FK8#TLva{N)ckS2YB+5cNaJ1|0IIaizY7`oB@x8S|bBs)F&q9#GzyEFO zB01wu5RP`52y{TPMQd@cO%QBfbUdTBu5GnzRkt%bIPzjjZ^ZuXr5m>W@Tq-Ai}b*i z9L4A*$-dz~Xg-4>1wr*eZ0`nRVK!&P&+7A>ZD;ws}2plfC;o1pW_B25v8eo zoR{ZMpksAYg%{n4Ziv6ITb7EveJ(r^n0B z1grVKG>Jat2}}ikbNhGT>xm;>dd$NXrED_J?Ak@USLh-B1k2p)FG1cwDOoYzo}(4} z5u3FF_P>?kk9ShL4pClRYX?K_W=(I!P=`PM?V0L|N%wFy((`yMz|vm-{W3*>#&t7> zDaxjUcxoZ_U?Cv>A#5!UIKP?bBf2GXS!r)`+Y1?qE?*Wea~r#eZCaTHL0I{P41g1X-Zt$ zp_OxONPOUScD$V^-iY=wg?sU-p}Vjb2qfE+XK|F{p?}3Ahl*{f+8!|=w^;6sbQUNi zL|zOIX@Qn8N*;3u@pmWi@@r)VC_zns^ej@3sy;@9ZA&27RCx6Hloek|Gk_zL%O zaYJbRH1Rb7L6jD&1=tB)a>yd}d;4_sfb1KHVfE9#UI_c#KmhYIkGd8k-NaBEP?%fx zW*@CHR$8FZp+mKOK<=`0-O5$8fbTg90rDB19{7KX&NCqC_HDzKS(#>!=GLsI+_TJ? zqo<(;1}1KClp7HT?%lFdQBy=y94R6$+^C2nbA>Z^inwuab6fwH_cI^(cK@#Xy3g}C zpiOJ|Kc4A;W!jkICK81f`P2;`DRlQ?3_=F-Hn!yQaZbm{={DU@kAo+@$7V0JYi*cC zmT%(C-%7^oD1!|CNNZvQ+zY?|_(ypu?6szTD`z?*mFK1OfG<&Dy3-3uRSzxRLdatQ z#ihrtLbY5kSM_;k-F-ZD|D=27#x5q4$>d|GaXk#A$|oTNwP+LLWCqCJ>v9Ffceb4n z<9deLZzl4Z4~q8*-D{jli?EsH`v6@;6)spTMBG~ZB0nVZuIw?_iYaA)D5@alRvYR* zPnuVBrf8!MW0X;2t=iMq-lDLC%K&xPoBm*B;Gp|iFQD`p1z_uuU`G0r;#rM_i)4Rn z7V}RnPipo0;NL9c4ALBTQl>5#hz6a0N~n264k>-%aU{JHMli4HbpC1PuwkD0KbB8u zn~J4H%zUt>p2mt?^kL?IMf!=!?pcePNS4$$;QPMk30L6@!P-3;BeLdE|NC zN%tq&$xCNiGtE3xXQ4aSqQeY!uF%?eR@~)hM}+%(Fj=Ob5Q%4t+__18pITy$35k6X zsqb*YDNM^N&L~NDUm|zojRf36c-ktn{YBdR~i_Pe;*X0LW}*Vg6MTN zq8o!(>gaWbsWaoMo)cSogJlxN1>=+7QWHxauVgv#H0iF1KTYc1m6>O@A|ud7+@A=b zQ%$KKTU}(^RCG#82x;vwB1$&W;ysKcf*i+pyVaDCQe|VRF}N{045;oLJzM{i*gi9y zWma2bBn!w@-gxO?`OphaD>%kLNL|u_-^OWdSlKT?D;<|~D zuosiIg5+<=a#?QU3Bd_#xHO;$6l?ux6k zv-n0t^tdWakMC1)Z2O#Bfl*2(pH@w(EQR9JtW2k_^z1X1s!Lu4VILtR-PS#cd}rhs z+S9lXSN@Z{`=CIsV{rTqbIM#+p8PJ@1@^&U0o0~byHmAn(~`_aF3zqzr==@U8JPGP zdOAOyNcK3%Pf<(tMa(80TJvLlIJ8{c9Q|T$|N8b4FvDYtQm1!%vxWo}DR;Cy;TB)7 z_S`r@G?q5q*rM+i@k+g;7Il#fJH{|Wo_(7GaVZBD^$B{R`Od2kYSKzp15PINihB2c zu;nx*azc38>dTMc-jlwYlY00j{;uh)AzMtVzUkad8N7*UeJA?;M#!yB+GP|S)*pvu zD-mPUnazA(h42w|^)gDpV6$A@bX%EVL2rJl*X&KPAcwgr4Q-twSh0%vg8fQh%}{cd zdaC1n2mOD&|Hl&CWHO|>E0kgqgY+pA+O6H}Q;wP&_DpJkc&@oMIghGMZ{&Pv8|Z>9 z`cDqQpqRY%g~5T2?Ml1NxWBsxsr7N)*t*>8z>n1{3QMnDAQehqESv7~*bXXZNZV=3 zz6qv^J$F-b!N*{eLKJL?@HOcP_Nh%<$6$NIJ5(H|{>uc$hX*!$yq=NW&`40M!6frK zg5*j;cX}orrL_j2(^LHl8R~;ABE==U%J-8wX^-#9P}p8iJnvo?XzGE~AybI9rNR>>ltHq`CO7O`T=Ah@MqnfVl zNPSd&c=-tZ-B4S=yX1ZkevWOR6<4k=pZ83Faf$E*^=9Zp&yHuKsGjUe`=0fxwJJ<} z0&rS8vTt3SH$C92TJfd+sH?6ssNDSo$JiVIpoXWUCu7H!>`^x>L0j+6 zR?d_zQi^|pM5tbWvIccVDw7i@A2>+Xng3uZF1(V*LW{Ln9(NUhbiA;ePEu5m3gpE$ zn9aLN+#rFpYOsuf8%OJg9WQVXn9Zr7N_QC@n+0@3E@qy0Gg~dLw(DzCWVo|RaoPex z>-34C_x0YaUDqVKWs+rX48a8cD5&jUiBj?1LX4AVyR7l30vgc6K zGSUqfzj4pQ9miNI%G$zS5P`u{hQOkTy*9vfHLP8?5kEfN6!W(>S}4Ny%{Dsv?g`+# zB{56OQ&Y#k`LYtY3ba?e7HWc8d7Tmhwvx{%FaBxuF?rW{gW4XE zVAlw|Dk0`{xPl0zgqPJc#hNgtlr=1OA#X#hB0~;Vr_vElw29UAS|00VF3(b-DVaCY zPFJ{>5HvGZzxmBKA2e1H-z|=o>~JrbgF>b;(9qzmaDn{%FV3hAhZHfi&EN>tc9)>u zvmv5j3I!Xb+;iWu6+Ss2&WpGX`ENXsR?fe%+c&>{{U0HrO3Q>~P97WNBaWZ1uJG=X zWrrncQ&gph2XsGZBZLtmi4FZ7{zT49mncN-*lnnGhXAdM^~F}JOE>s>_K}T!7eN7s zPrOwN(kGvmxTG6bILLJ0bMR(qp>DievGW(c7kZnoLfsr-G`8Mup1E@fg^093UDYpv$!f?c|;RFBIt zB*@p8Vrb7#pR|S=dULC?f8e)Itm!Cuf5)KKP0FoBh~wkMs?Km^jK6o0ax&j!2s02_ z3#$#4TdRWQC-|N-5lNZVElSE*v(3XyHwvlC5PF8do5JJn$9VW>kgveU{opX2x!B=& zO_S@-oD3dQpdLjca6Zw6x0Cbnr0JVSrr+ej{D;dVkb9W`Ja78x;NVHhlD%T*6z_3f zS!f8|icTEC=QpYt%Ljd&J;?Mk%h|E?4Oi}D2~D+<@HgKrU-$W2BI;${r`*XX)8fEV zLHed-k8Ib*3`|Nb#Co@Sl&J9J)Ib3965kKrTdacF4cM%hhUTYNn@6Z5rUc!d6@>{VEa3@yz@3G^TaNuRCz0<3ar1I|fueFKJ*;Z_O=#pM=Lx zodjv>z=m6muA^F+70a0Vun|!vuPHfOT;isW_+Pn|@EaobmxFwtqt^$6ibQ<;oUa~S z{y2T5SI}VMv4g6}>(yY9sy&2-Kn!M8R&ijfu@rp>1x;C0oo);bce)6o>_^IZ=lfR2 z`_sndWWd+-0_8gOT*ed!lE9+8oJ1;*E$t|zaen{Py%ee>$4k!v>;(u4$`s!Um#tudeiw033Du< z=64~-nqX(T%5d^JEv#2H!a47xx$_$L>P~IEwutydNUK)cRw(>@^_6qSxX%|S-=x|5 z{_|x*B&pZdQa(QFvOL=}IaU57FU%oWXV4trPGXRf?zec`J!u{11ODplFIh4hLP84t zoyg&1Y$}7s9}1<5cbOr%*gKOeIel^y`nXpxg%33M4v9cz8ifu6fiSJxbW`>^s3y<<=XE9&V$kASH0$#z-X zkq?wE8)QVcj^wy?>;OXRnajn7t0x@Qz3D9PTC zKznp?>D2sJ4a=k)i>2D2&~WMWm;2m5Yy#(s=OmsaF+blcTlN$SKyf}A{C5NMo4mp} zngm^Q{qS7|m{((%rrs+)38|W3{!UN#Tv1uh7UBS%Fs~&a8x5^?u6_%yf##ntD)vGw zxm*kpz1E0|FVQt&H=J;gDWC_$F-FL4#IoNtIvKc+=E8Y9!5P84esA5ihcKg+=GHoz zWr0pL)z9fJR$iVG5BkdOR@vW|+jV+#7_`2uES>Y_3gp~2D3u$_5gdv!&2eiKuK62B z+tiKWHIwaADb#33^wfeV?uV4XF@s=OuH%N6R8~77-K$#mwV2w=i(q7+sON&?o#|zn z?@Y(I*V^{+|5#ddV=@J2y?t6uV$6hX==)WS!2?j(#`5E_5WN*lVwbdhKD*%6kEM?U zuiVelScaPkmjjuzV~dr8l+}=}3FUaXo}#2Uw%j=}B?5c%fg#l6=);=fc!zKldNQC< zXkh9O$v+l&z?5{ZkZS+BSO6wQ--2 z8o73|jG)?;@|gtIlTuQT;r=*E%^xMW{89efp%-pmxehkZo=j+(TCi2t-2kv;?C*En zvrt(z0qa7yT)nz0HeTQ$QC3}6sQwmZ37?1c(VLml@etY9}n`d6S zsH7xgso>!!q5iQqfW1!hYVG=a$t%8fD%h=vdavnC3N0tnuy$B7(XlBFBKhz0B6Y!I zj=rD1W90raB65rfOg}W6W^T44k3&R*8iuaD53E8X@=~F0wJ`ThOiGP8#f`M{5l|J& z>^`%?0ue|y3PA3M+J>Zn&CEROXM&8(sgau zw?e1Id;)Azxcbq!XA^(y4G?OT78Seu)m5;+TwWY&<`$o^=RwPR4+ro1)<2uQm)W(` z;B>M3Zfvmg70N@GmSMvbyjEzJ96~IXUhiclmtS40nuMU7)P?Cfwvol96@dvU_bM%3 z;5nLLh6ZA;L^5NuLoQ_}IlGy9$_W$xTkpT&+Qts&H4;bH9)wmt667qX>zuk;tpqqPVOycc!M;Bq0Cloh{&fOXo-TK>oK_ORTjv%7^U7}}U6-?Bp(-saJGptdKD|%KFU0h-L5jopx{Wb%NXX*$XtO|O|pYrpW z;m1$<-jXk#I?Z6Tv>TQLmjq8mYvZ;x{Pi_H%w;A^xe8KNbN{MTH#he${+{0EYuoMF z6FxfA0}Qum0=nD>K>3q+@L(#1KgoK-HMdfm&~dZMCAmpB{^5nZxR)=3#npV68m#k` zjy>|cEL>m%x&E(zu3us@bV}x44Lco{g$QNm46e-K0F zsU|w%5W^Ew{kEPxjYS)g}k! zwE7ek&bb4*QwA|==xNt7%SPeYLwih5as1t1D7LVUM$3+5d^g)VeGv_W#M(Pk@x_bi zSd@uRG6rFA5WW-GDu=x$xN?38SodL09pJZCEl}@NG-WB6QF z9`*XQP*en8x|3l1wLV=^tL6A(RDRxyNqQk$U&$6*55B5a#U?p85T<&P%`#u?q9SX7 zk7bz7^GTZ|EhG=2!A$IJO-bq8q>`NYZ+p!!rYH9;c$r@~XiQfisFI0E0M^u{yOgKt zHIzeBCe}N=?m79b+~GrIe){TpzS-!N<~#xT-U1N z5-~f70F~&_&(iG7+#ShS1w&A;A{TO32;EWwG5~7xn=SsjYnLKh?n#WCJ#xGm9fl}? z3A~u@^>KBD^Hm=PI^00bs`2iA;bd{r%6BelVLU|cE3l1pl#efe~))dIPq=nOyPYm^gw+&vG_BX4d)MljJ?0!u z%0BYOKbOgdo>n6a?dbQXA4cu zlH!aiqzV318HM4w1x&gHsAB-E`?FzaD>v!#%Z3MPBpn*fT{xhCnHdg7z1|ZEmOj4M zHQ%csl5Z)?Qt_shxl62GI1a}PP8b*73=VDlbL@r}K}tw#$pC5?kv&H^t%8ESxCf;> z=thu7Iua%k99ruy97T56*rLJ|ZbsWllZL}?ie;AtWymMBLS+f{J1nAXuH|k!WU+J+!wvKR|-fttiHPvm)E1=VW4bnNci<(!$gAFHs zwu(=h1QvdIbt{+oQW9q%XV;I_>)H?r*+P~4&h&b*y@{EXQ$T*72fJPze8fk{>I~@@ zA=d2vebq7NWI|?TQ~KA#NAP*L4SH?6Ojh*{TobMZyNDMsYu76a#&->ZI@6>jPWzy# z4tF#B-^{vx@|(RR@Cj6pPF4ZNdcFYFf%Et@YUciw@Au-iODlrFX7iRkh|eKjMv}mfWAhiG zN_7Vf4Jrj-kzQ%dcU~W9iDWE%DcMqOllAktjs|n3`@23!Y#oSuNI#WTnatEshwWzVrj zY}QBRR*{3`K|sAt7p*vdq-+2RrTGPaK~;%Fw>(JBC>&r;Y%+BQX_8~wE(^K1ZkNn5 z@oGjaDDW@u5q37yvun?C$iI8mty~B=?KZ|=KEbItn%W-rT;|I;b|(g#j#w-fPjbgLmg7~nfNZ9?ae5FXAAJUY<#+& zx5Jd@E4q5=)+TEr)n0&oBuJHmYNgS82JjfF2amarK~=k^652YKbSJV;Rh4|y=9whX zVoKw%=O9dr+UiPZ7|01HE{D`)$fqg3$ud2Ci2c{I-s!6fi zr>W+;n~$%JQjaC48fcA)8_t@#YJPtj&C|n1l;HZifL?rlBCvl7hNyf#Z@$O8;WTqb zyN1H=*fd-h-_~??VSO9hwfX%s@ZFvaD=}QY$Z@C6g3FC65iUGRb3cWL0@jCIzxi;% zQSA=qd=C(k3>9*)Ef(cS0e5Nlst47iWbLV_KD+=ESn<&og6^M=V?+LRq&naO@7(YvTK4Z76X6A&ayAqACwd*`xOh46DcP{KjAz0&`^t zpin%9>9}tH0EwmdVKNd?QKPt-|FQh0S%q~A-ilYdjBF-j6y_&JpS7G@- zmXcvpxS|0Ly%=bVzaeszSJrc)f=NJHl{$ZMUNI(i3nM|jw)A!l31_E4lzC-xlTf#z zUY$UPb>Mq{`U99>Y@;p*>R4TX|JMgl(SOso-+lOA&XL(JD0;P_yKCvoY*EXwN#KZ# zJBcneWESWw<}@-9sM;}Gp(3TfZ#uk@+enrP6Q~EYmxT~?hRw*6WSh9PGEuj`lGX4y z;k6fUhE)9+f3wO0yiUtS8jV<`9omRK^7ft=Rq)jI$3(1{FoXw8F%?Xb$!d(J#c@f+F%qZ0Kzy0SgouqT)Wr0$R~D1(fw-P zR3Shbj|hgQ%GSG2t(hO%D=}Z1j{x{E#Xs3+p^^FUY>$eO4aD=iY>8pnil*iw_6l({ zviR?Bw^%O4b!fh?@|5a+r7_{RGKU?XPXDK>e#mxo!s<9%udN~|;etkfb>W1WR21@% zOq4KJ=uD$q3%g+%jaU$}vv3bLU27%!5+T3890&Suj(WLp9I(?_cEJ2%lde=&LQr8_n*`$EfbByx;9yz7qru;|P_MvhnSV=y zA`-5D;e}pLm^ba$c~j9W>@)EjdBm_y*sgU@>=7PYxZ11(Oi49AXuZgVhbT?$dO#-AsZ_OGyh|?GW1_i@u2#00 z;Tn^l{d{cGF=@ZMHBh|i`N7VEw!9Q`+K&q#7PwnPMc>M;c=N&*H3T2~fUzjE;XG_I zVnlo-!%Ij;y{d9@_rBY_H<=XFF+f3kDjFk9!8=Aqfhh=;GQVl%v8UTt$D)SX)F$ks zC2A^%&R0L*&S`@)D&L%v9!hI@e|;In@lDj*C*CBkV|#Mti+lL3(TK?G)QxDs&Q3xd^8tR$#$}3P#a(Vn@Y!XOBL%3+KW@2p?2q zgEl3G{B{H|{$KtRz3)_u6>+`ggu?W5Y-inA6p}ykUA61;t4Nm6Fv>a`oVcAZ6`^#AV z5c*O1C~Btdgp1%HA^YxaL4vR&(uZXG%L5X_TAzRm;v7qQQ zFyk1y+OWfPUyy%ma5K*$cl+s2q~|_4`%daZoz*GGIPyu#y|)9JzWO~QN1^iy2EY;0 zL)OU&5-BTH0=x2$?UX`~_e6gq@jG?*8Tda?9Qr-vL6fHPs!!W1Gaz~~Re>OZUo0)M z56UkYPO4-k(vY|V&b}y2*oOgD0IH7=1te-K5skBHbAsA(bN{k$ZpF@!A;QLqELxbphaOVi;2vho)+yGrdPQss*wz{Yh zW@i=eFKc^Rf%>=Det(DhxK|}xt#|{tV~mcE!1_2GnEbMZR}gdJ%nd`Mook(Z>I49{ zUvT}lq}rUTyPox--e*`&8&XtQ7HCQ8qSH?R%Qz+hkC<6guTjoJjBbC7S}p`g(vw}K z@|d{=x!rMneosSe8vIfZ{$ttEe48B~txzpnf{{~a=$~Tv#Jg81MNC=z{g!BxFQu^!O8pxh7tQ&G{7sV$t4XVUTj?G5 z>=80QlUcFQbUSQ{V;&cDWD{XcRCBiJ$!GBW0-SlXDlO1mJykXL&xjxX2D5YGF&G#& z*&kiD-+%My_TKl;u%We-8XjI~TItp9cJ|=MM!W$2GwHZg&Lc56Ytk>Fg`^fnTD6?n z0~>1$_dJGN!-qN{dnQ%~;wi~I82=_xleW2Y}vc}KIWmQ&+6&|=xLL{C`b_hPj> zU27|pR=PP_wHcOjO$}%NK{$sU4D_<3rR2>UxzI-Y)ZuAz68s0C>GNT(bC*5+r!N}? z2|P~}v+Svo=I_Z#OpWSR99v~);fnYZ#;n;2Iy6@?MTJ8r-nEf1>HQT?`_Axd-A8K@ z9|Yd-2mwhXsf);xPu6znP1um*hCiUcaxgJpLD zJi+$7>DGFraK35PR3^gjamRR>tJSw?&SsC{xA-4F%=DjiUrY0eo174lk z$mk}G9@s0IdI!H?Wr=vf-ogIgrNRU6#QYfsXc`;N_j{|hdu;P`lEU`kNBJtA<22ZP zGTEzZeUpwUNw00}DWO@5yLBRp+{=l7(V@Ql3omVISd0I8?rfRl&G$)Gvm?Y$w9q6~ zelU{h#*3LA@~PLbKoP(J4N6jDa2=0Y^HZa<;ZcFg{9?(}(iPgk8`+%#C%tb%jB;LA zlypZ3>K)J+oUN)EX}`25$F4Eb1C4R#u^21yTqi-@P8t>Wjci4m%&Mv)o9K>JZb;l&lrF3;WN^r8IX#oxQ(Y1vxbp<-VLYP-HGe>{Bc zf9YKG$*z%&&ky3@p=jhxgniF8o zsD6R%@14ZqouS1!oV9;aA=OQn>E9bDGi%n%uV>z%2HOBSFH18w(Vn9WbBevoq50;# z9Pz5|-_22m-eRK1jZcp)XEe3_HK{)|=j#@H!FhKyR-~p+XnRtZhg}x(rZQ@3qP0$7 zL`eae6}+R)aSLK#TUfLnIY zrhU%t2gwpe423IWf2l5h3V)*>Hnx2`N&wFb)T)Ia5n{*#5U}nH&xr_t1;kU9>AbvEIVdMxY49fK4-Q+2rV>yP@{y?xniuv?}h$zTX(1 z&P8}~U6~`V&E-T$LLi` z(`OG;L>3IMLZ*AkmT#Y27~_#>dxf+OtW6bT#@KjyG#4z=-nJLrCt5=aC8Q$5Tcn|2 z%Yt^TkUe#Z=b^5zNTy+;=AcitV^=!L4;DJ12-BoaPa!eYaXDSdLqYl--%W2XNxu<) z6wtzAbdaY1UH@Fm9r1Jf%YT0o%|*QYgVqkE%4Rm230Mo|P6r$qbD1PlOt@ifeI|Pd z?haMGp)~wVRpG83K&B~4p`h=eX6E)YoSO!BIV;P;B?wF3{4YJA|2&&hw#z=eW~I?C zYmL4_KmO8%@jmOz#H*aF!PQa~Mo!%+-59&xiKD_$9Q2H1$F{e*r*fj?TC{-34_U2k z$xeR9_4le zb_jP-j$a-_NXI&iNa`6Oj9FQ4SOJd46@!x&RK0(T-Oko=!b3KRlXt+F;k*fx7)&Fb zY?_#xoPp@2zjSWP@r;^FyWi`U9i$yjagu&IsHsL8+y z?d}qU)Fv5x?3x8sZ*!(Gacrj%BU?xz{J%M-O{v-Z&w@=FQ zC`*L68nD9sxAJpcf$PyhvU_nF1(c57F7srOLq@-%-}6`R!PDH>&a-*ser=L;9fwXbj=**s=Db>_Dm*{qZj$j=E>FA7H(T8d~>qE^ar(E z6CJ_&?+e0}>ANZwen*ko`P)Y_rw>EZYB}1!_W=rO@Sac0y2ZDO<3_V@WH~C^n1_CB zVL&oPd4+9;BGyeE+04Bmm?2*jc}yAeY#SGngl9UX3+9hE$tE7aAsK{W^}C4`Pl2 zXEKGQjymTw1@#jR@hQ>+~G}fvdR<&OwA20yf=&LYl}CtoWJrsMx4f@ zc*FSd-|1ExIbfy|9ECzNYwnq3#ExmQKQkSbTr#&mHQx=lLKVN%Oy1|XnHbCClco_Y*rh6#*Hhfu^31^Ki>AUE^fG3 zMo9YCt2lhk?)?Nz0u6BLhO{Uws-pb=Bn)?{4y?DBqC@^f@cQuX`5UBn$&mO*l1*)C zgNpR)3nBQ>^}2qPwGQ#1kPDY@YbQ%v*%e%&_Sr~y1DnWkcfnEzo-%Bc&y21Yx%SJzzwK%#xjE3d?PEI$D@dQEu ze{h-GN(uY@AJhd-Br&-*d3W>P$~e{Or-b@DpxS-Nj}lpVXnm$Aer5pf2W*KeV@H)Y zbt0~D$^}EJ$*8E0Nsx69SqTWM(MtxFa&U`=#xA+vPi+=6gDJUo5xFdI6b8y8H^Wg= z)4xgl2s58>ogEXlE|#!O*I%SVZptJ<#aX1lFiqbW(JLc4D?TP) zv9XWkXg+66x7;G7o62RD@G02^LkMYMZko_}sDRGE1%^6WU^y~q6gJ*(1-%~!!G zH#uZRY!V?EysrFB9L10GCcoAK2!SQJ`zP|brS@&2j^<6EkA>E_jHN3{FujNk2T^RQ zIL&Oe71IS-h$~$$X@Ixc^Mr-wu6!A8xRxu4%J>jD!sN zth$K7wcGV7C0KNWqaYKmluVGgjL#cBCOB_pUux2tbdTWA2BdV1nS&n88NN~(2#!Ed z3Z!X|&%e7M>I`OS*|3*L_kQp0NVkW{Dr54FZI7)(-S@qUt1+}8TdhjY4^6Hyg^wu< zMKq9JCmoeaW-F!8NugHlsy$@qim~6}7g@b#DQ<`j+?PaWuRQ@s+rlf0K&{|c=(pfa zP^ijoS7m;V6Ktz2^Ujp4^8nshh7-P*gzaTwWPto zi@#R%0LkGSz&XZWvAUXTcJ9lAH{|h0eZZIT|J@3o67^)oUh3Ad@dLFmooQ�SlD0RbSYKfPfAs1p_a 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%0At3}0E-Znq$R!>}o12K>D92vm5l- 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 literal 0 HcmV?d00001 diff --git a/vendor/stb/stb_image.h b/vendor/stb/stb_image.h new file mode 100644 index 0000000..af81b13 --- /dev/null +++ b/vendor/stb/stb_image.h @@ -0,0 +1,7991 @@ +#pragma once + +/* stb_image - v2.30 - public domain image loader - http://nothings.org/stb + no warranty implied; use at your own risk + + Do this: + #define STB_IMAGE_IMPLEMENTATION + before you include this file in *one* C or C++ file to create the implementation. + + // i.e. it should look like this: + #include ... + #include ... + #include ... + #define STB_IMAGE_IMPLEMENTATION + #include "stb_image.h" + + You can #define STBI_ASSERT(x) before the #include to avoid using assert.h. + And #define STBI_MALLOC, STBI_REALLOC, and STBI_FREE to avoid using malloc,realloc,free + + + QUICK NOTES: + Primarily of interest to game developers and other people who can + avoid problematic images and only need the trivial interface + + JPEG baseline & progressive (12 bpc/arithmetic not supported, same as stock IJG lib) + PNG 1/2/4/8/16-bit-per-channel + + TGA (not sure what subset, if a subset) + BMP non-1bpp, non-RLE + PSD (composited view only, no extra channels, 8/16 bit-per-channel) + + GIF (*comp always reports as 4-channel) + HDR (radiance rgbE format) + PIC (Softimage PIC) + PNM (PPM and PGM binary only) + + Animated GIF still needs a proper API, but here's one way to do it: + http://gist.github.com/urraka/685d9a6340b26b830d49 + + - decode from memory or through FILE (define STBI_NO_STDIO to remove code) + - decode from arbitrary I/O callbacks + - SIMD acceleration on x86/x64 (SSE2) and ARM (NEON) + + Full documentation under "DOCUMENTATION" below. + + +LICENSE + + See end of file for license information. + +RECENT REVISION HISTORY: + + 2.30 (2024-05-31) avoid erroneous gcc warning + 2.29 (2023-05-xx) optimizations + 2.28 (2023-01-29) many error fixes, security errors, just tons of stuff + 2.27 (2021-07-11) document stbi_info better, 16-bit PNM support, bug fixes + 2.26 (2020-07-13) many minor fixes + 2.25 (2020-02-02) fix warnings + 2.24 (2020-02-02) fix warnings; thread-local failure_reason and flip_vertically + 2.23 (2019-08-11) fix clang static analysis warning + 2.22 (2019-03-04) gif fixes, fix warnings + 2.21 (2019-02-25) fix typo in comment + 2.20 (2019-02-07) support utf8 filenames in Windows; fix warnings and platform ifdefs + 2.19 (2018-02-11) fix warning + 2.18 (2018-01-30) fix warnings + 2.17 (2018-01-29) bugfix, 1-bit BMP, 16-bitness query, fix warnings + 2.16 (2017-07-23) all functions have 16-bit variants; optimizations; bugfixes + 2.15 (2017-03-18) fix png-1,2,4; all Imagenet JPGs; no runtime SSE detection on GCC + 2.14 (2017-03-03) remove deprecated STBI_JPEG_OLD; fixes for Imagenet JPGs + 2.13 (2016-12-04) experimental 16-bit API, only for PNG so far; fixes + 2.12 (2016-04-02) fix typo in 2.11 PSD fix that caused crashes + 2.11 (2016-04-02) 16-bit PNGS; enable SSE2 in non-gcc x64 + RGB-format JPEG; remove white matting in PSD; + allocate large structures on the stack; + correct channel count for PNG & BMP + 2.10 (2016-01-22) avoid warning introduced in 2.09 + 2.09 (2016-01-16) 16-bit TGA; comments in PNM files; STBI_REALLOC_SIZED + + See end of file for full revision history. + + + ============================ Contributors ========================= + + Image formats Extensions, features + Sean Barrett (jpeg, png, bmp) Jetro Lauha (stbi_info) + Nicolas Schulz (hdr, psd) Martin "SpartanJ" Golini (stbi_info) + Jonathan Dummer (tga) James "moose2000" Brown (iPhone PNG) + Jean-Marc Lienher (gif) Ben "Disch" Wenger (io callbacks) + Tom Seddon (pic) Omar Cornut (1/2/4-bit PNG) + Thatcher Ulrich (psd) Nicolas Guillemot (vertical flip) + Ken Miller (pgm, ppm) Richard Mitton (16-bit PSD) + github:urraka (animated gif) Junggon Kim (PNM comments) + Christopher Forseth (animated gif) Daniel Gibson (16-bit TGA) + socks-the-fox (16-bit PNG) + Jeremy Sawicki (handle all ImageNet JPGs) + Optimizations & bugfixes Mikhail Morozov (1-bit BMP) + Fabian "ryg" Giesen Anael Seghezzi (is-16-bit query) + Arseny Kapoulkine Simon Breuss (16-bit PNM) + John-Mark Allen + Carmelo J Fdez-Aguera + + Bug & warning fixes + Marc LeBlanc David Woo Guillaume George Martins Mozeiko + Christpher Lloyd Jerry Jansson Joseph Thomson Blazej Dariusz Roszkowski + Phil Jordan Dave Moore Roy Eltham + Hayaki Saito Nathan Reed Won Chun + Luke Graham Johan Duparc Nick Verigakis the Horde3D community + Thomas Ruf Ronny Chevalier github:rlyeh + Janez Zemva John Bartholomew Michal Cichon github:romigrou + Jonathan Blow Ken Hamada Tero Hanninen github:svdijk + Eugene Golushkov Laurent Gomila Cort Stratton github:snagar + Aruelien Pocheville Sergio Gonzalez Thibault Reuille github:Zelex + Cass Everitt Ryamond Barbiero github:grim210 + Paul Du Bois Engin Manap Aldo Culquicondor github:sammyhw + Philipp Wiesemann Dale Weiler Oriol Ferrer Mesia github:phprus + Josh Tobin Neil Bickford Matthew Gregan github:poppolopoppo + Julian Raschke Gregory Mullen Christian Floisand github:darealshinji + Baldur Karlsson Kevin Schmidt JR Smith github:Michaelangel007 + Brad Weinberger Matvey Cherevko github:mosra + Luca Sas Alexander Veselov Zack Middleton [reserved] + Ryan C. Gordon [reserved] [reserved] + DO NOT ADD YOUR NAME HERE + + Jacko Dirks + + To add your name to the credits, pick a random blank space in the middle and fill it. + 80% of merge conflicts on stb PRs are due to people adding their name at the end + of the credits. +*/ + +#ifndef STBI_INCLUDE_STB_IMAGE_H +#define STBI_INCLUDE_STB_IMAGE_H + +// DOCUMENTATION +// +// Limitations: +// - no 12-bit-per-channel JPEG +// - no JPEGs with arithmetic coding +// - GIF always returns *comp=4 +// +// Basic usage (see HDR discussion below for HDR usage): +// int x,y,n; +// unsigned char *data = stbi_load(filename, &x, &y, &n, 0); +// // ... process data if not NULL ... +// // ... x = width, y = height, n = # 8-bit components per pixel ... +// // ... replace '0' with '1'..'4' to force that many components per pixel +// // ... but 'n' will always be the number that it would have been if you said 0 +// stbi_image_free(data); +// +// Standard parameters: +// int *x -- outputs image width in pixels +// int *y -- outputs image height in pixels +// int *channels_in_file -- outputs # of image components in image file +// int desired_channels -- if non-zero, # of image components requested in result +// +// The return value from an image loader is an 'unsigned char *' which points +// to the pixel data, or NULL on an allocation failure or if the image is +// corrupt or invalid. The pixel data consists of *y scanlines of *x pixels, +// with each pixel consisting of N interleaved 8-bit components; the first +// pixel pointed to is top-left-most in the image. There is no padding between +// image scanlines or between pixels, regardless of format. The number of +// components N is 'desired_channels' if desired_channels is non-zero, or +// *channels_in_file otherwise. If desired_channels is non-zero, +// *channels_in_file has the number of components that _would_ have been +// output otherwise. E.g. if you set desired_channels to 4, you will always +// get RGBA output, but you can check *channels_in_file to see if it's trivially +// opaque because e.g. there were only 3 channels in the source image. +// +// An output image with N components has the following components interleaved +// in this order in each pixel: +// +// N=#comp components +// 1 grey +// 2 grey, alpha +// 3 red, green, blue +// 4 red, green, blue, alpha +// +// If image loading fails for any reason, the return value will be NULL, +// and *x, *y, *channels_in_file will be unchanged. The function +// stbi_failure_reason() can be queried for an extremely brief, end-user +// unfriendly explanation of why the load failed. Define STBI_NO_FAILURE_STRINGS +// to avoid compiling these strings at all, and STBI_FAILURE_USERMSG to get slightly +// more user-friendly ones. +// +// Paletted PNG, BMP, GIF, and PIC images are automatically depalettized. +// +// To query the width, height and component count of an image without having to +// decode the full file, you can use the stbi_info family of functions: +// +// int x,y,n,ok; +// ok = stbi_info(filename, &x, &y, &n); +// // returns ok=1 and sets x, y, n if image is a supported format, +// // 0 otherwise. +// +// Note that stb_image pervasively uses ints in its public API for sizes, +// including sizes of memory buffers. This is now part of the API and thus +// hard to change without causing breakage. As a result, the various image +// loaders all have certain limits on image size; these differ somewhat +// by format but generally boil down to either just under 2GB or just under +// 1GB. When the decoded image would be larger than this, stb_image decoding +// will fail. +// +// Additionally, stb_image will reject image files that have any of their +// dimensions set to a larger value than the configurable STBI_MAX_DIMENSIONS, +// which defaults to 2**24 = 16777216 pixels. Due to the above memory limit, +// the only way to have an image with such dimensions load correctly +// is for it to have a rather extreme aspect ratio. Either way, the +// assumption here is that such larger images are likely to be malformed +// or malicious. If you do need to load an image with individual dimensions +// larger than that, and it still fits in the overall size limit, you can +// #define STBI_MAX_DIMENSIONS on your own to be something larger. +// +// =========================================================================== +// +// UNICODE: +// +// If compiling for Windows and you wish to use Unicode filenames, compile +// with +// #define STBI_WINDOWS_UTF8 +// and pass utf8-encoded filenames. Call stbi_convert_wchar_to_utf8 to convert +// Windows wchar_t filenames to utf8. +// +// =========================================================================== +// +// Philosophy +// +// stb libraries are designed with the following priorities: +// +// 1. easy to use +// 2. easy to maintain +// 3. good performance +// +// Sometimes I let "good performance" creep up in priority over "easy to maintain", +// and for best performance I may provide less-easy-to-use APIs that give higher +// performance, in addition to the easy-to-use ones. Nevertheless, it's important +// to keep in mind that from the standpoint of you, a client of this library, +// all you care about is #1 and #3, and stb libraries DO NOT emphasize #3 above all. +// +// Some secondary priorities arise directly from the first two, some of which +// provide more explicit reasons why performance can't be emphasized. +// +// - Portable ("ease of use") +// - Small source code footprint ("easy to maintain") +// - No dependencies ("ease of use") +// +// =========================================================================== +// +// I/O callbacks +// +// I/O callbacks allow you to read from arbitrary sources, like packaged +// files or some other source. Data read from callbacks are processed +// through a small internal buffer (currently 128 bytes) to try to reduce +// overhead. +// +// The three functions you must define are "read" (reads some bytes of data), +// "skip" (skips some bytes of data), "eof" (reports if the stream is at the end). +// +// =========================================================================== +// +// SIMD support +// +// The JPEG decoder will try to automatically use SIMD kernels on x86 when +// supported by the compiler. For ARM Neon support, you must explicitly +// request it. +// +// (The old do-it-yourself SIMD API is no longer supported in the current +// code.) +// +// On x86, SSE2 will automatically be used when available based on a run-time +// test; if not, the generic C versions are used as a fall-back. On ARM targets, +// the typical path is to have separate builds for NEON and non-NEON devices +// (at least this is true for iOS and Android). Therefore, the NEON support is +// toggled by a build flag: define STBI_NEON to get NEON loops. +// +// If for some reason you do not want to use any of SIMD code, or if +// you have issues compiling it, you can disable it entirely by +// defining STBI_NO_SIMD. +// +// =========================================================================== +// +// HDR image support (disable by defining STBI_NO_HDR) +// +// stb_image supports loading HDR images in general, and currently the Radiance +// .HDR file format specifically. You can still load any file through the existing +// interface; if you attempt to load an HDR file, it will be automatically remapped +// to LDR, assuming gamma 2.2 and an arbitrary scale factor defaulting to 1; +// both of these constants can be reconfigured through this interface: +// +// stbi_hdr_to_ldr_gamma(2.2f); +// stbi_hdr_to_ldr_scale(1.0f); +// +// (note, do not use _inverse_ constants; stbi_image will invert them +// appropriately). +// +// Additionally, there is a new, parallel interface for loading files as +// (linear) floats to preserve the full dynamic range: +// +// float *data = stbi_loadf(filename, &x, &y, &n, 0); +// +// If you load LDR images through this interface, those images will +// be promoted to floating point values, run through the inverse of +// constants corresponding to the above: +// +// stbi_ldr_to_hdr_scale(1.0f); +// stbi_ldr_to_hdr_gamma(2.2f); +// +// Finally, given a filename (or an open file or memory block--see header +// file for details) containing image data, you can query for the "most +// appropriate" interface to use (that is, whether the image is HDR or +// not), using: +// +// stbi_is_hdr(char *filename); +// +// =========================================================================== +// +// iPhone PNG support: +// +// We optionally support converting iPhone-formatted PNGs (which store +// premultiplied BGRA) back to RGB, even though they're internally encoded +// differently. To enable this conversion, call +// stbi_convert_iphone_png_to_rgb(1). +// +// Call stbi_set_unpremultiply_on_load(1) as well to force a divide per +// pixel to remove any premultiplied alpha *only* if the image file explicitly +// says there's premultiplied data (currently only happens in iPhone images, +// and only if iPhone convert-to-rgb processing is on). +// +// =========================================================================== +// +// ADDITIONAL CONFIGURATION +// +// - You can suppress implementation of any of the decoders to reduce +// your code footprint by #defining one or more of the following +// symbols before creating the implementation. +// +// STBI_NO_JPEG +// STBI_NO_PNG +// STBI_NO_BMP +// STBI_NO_PSD +// STBI_NO_TGA +// STBI_NO_GIF +// STBI_NO_HDR +// STBI_NO_PIC +// STBI_NO_PNM (.ppm and .pgm) +// +// - You can request *only* certain decoders and suppress all other ones +// (this will be more forward-compatible, as addition of new decoders +// doesn't require you to disable them explicitly): +// +// STBI_ONLY_JPEG +// STBI_ONLY_PNG +// STBI_ONLY_BMP +// STBI_ONLY_PSD +// STBI_ONLY_TGA +// STBI_ONLY_GIF +// STBI_ONLY_HDR +// STBI_ONLY_PIC +// STBI_ONLY_PNM (.ppm and .pgm) +// +// - If you use STBI_NO_PNG (or _ONLY_ without PNG), and you still +// want the zlib decoder to be available, #define STBI_SUPPORT_ZLIB +// +// - If you define STBI_MAX_DIMENSIONS, stb_image will reject images greater +// than that size (in either width or height) without further processing. +// This is to let programs in the wild set an upper bound to prevent +// denial-of-service attacks on untrusted data, as one could generate a +// valid image of gigantic dimensions and force stb_image to allocate a +// huge block of memory and spend disproportionate time decoding it. By +// default this is set to (1 << 24), which is 16777216, but that's still +// very big. + +#ifndef STBI_NO_STDIO +#include +#endif // STBI_NO_STDIO + +#define STBI_VERSION 1 + +enum +{ + STBI_default = 0, // only used for desired_channels + + STBI_grey = 1, + STBI_grey_alpha = 2, + STBI_rgb = 3, + STBI_rgb_alpha = 4 +}; + +#include +typedef unsigned char stbi_uc; +typedef unsigned short stbi_us; + +#ifdef __cplusplus +extern "C" { +#endif + +#ifndef STBIDEF +#ifdef STB_IMAGE_STATIC +#define STBIDEF static +#else +#define STBIDEF extern +#endif +#endif + +////////////////////////////////////////////////////////////////////////////// +// +// PRIMARY API - works on images of any type +// + +// +// load image by filename, open file, or memory buffer +// + +typedef struct +{ + int (*read) (void *user,char *data,int size); // fill 'data' with 'size' bytes. return number of bytes actually read + void (*skip) (void *user,int n); // skip the next 'n' bytes, or 'unget' the last -n bytes if negative + int (*eof) (void *user); // returns nonzero if we are at end of file/data +} stbi_io_callbacks; + +//////////////////////////////////// +// +// 8-bits-per-channel interface +// + +STBIDEF stbi_uc *stbi_load_from_memory (stbi_uc const *buffer, int len , int *x, int *y, int *channels_in_file, int desired_channels); +STBIDEF stbi_uc *stbi_load_from_callbacks(stbi_io_callbacks const *clbk , void *user, int *x, int *y, int *channels_in_file, int desired_channels); + +#ifndef STBI_NO_STDIO +STBIDEF stbi_uc *stbi_load (char const *filename, int *x, int *y, int *channels_in_file, int desired_channels); +STBIDEF stbi_uc *stbi_load_from_file (FILE *f, int *x, int *y, int *channels_in_file, int desired_channels); +// for stbi_load_from_file, file pointer is left pointing immediately after image +#endif + +#ifndef STBI_NO_GIF +STBIDEF stbi_uc *stbi_load_gif_from_memory(stbi_uc const *buffer, int len, int **delays, int *x, int *y, int *z, int *comp, int req_comp); +#endif + +#ifdef STBI_WINDOWS_UTF8 +STBIDEF int stbi_convert_wchar_to_utf8(char *buffer, size_t bufferlen, const wchar_t* input); +#endif + +//////////////////////////////////// +// +// 16-bits-per-channel interface +// + +STBIDEF stbi_us *stbi_load_16_from_memory (stbi_uc const *buffer, int len, int *x, int *y, int *channels_in_file, int desired_channels); +STBIDEF stbi_us *stbi_load_16_from_callbacks(stbi_io_callbacks const *clbk, void *user, int *x, int *y, int *channels_in_file, int desired_channels); + +#ifndef STBI_NO_STDIO +STBIDEF stbi_us *stbi_load_16 (char const *filename, int *x, int *y, int *channels_in_file, int desired_channels); +STBIDEF stbi_us *stbi_load_from_file_16(FILE *f, int *x, int *y, int *channels_in_file, int desired_channels); +#endif + +//////////////////////////////////// +// +// float-per-channel interface +// +#ifndef STBI_NO_LINEAR + STBIDEF float *stbi_loadf_from_memory (stbi_uc const *buffer, int len, int *x, int *y, int *channels_in_file, int desired_channels); + STBIDEF float *stbi_loadf_from_callbacks (stbi_io_callbacks const *clbk, void *user, int *x, int *y, int *channels_in_file, int desired_channels); + + #ifndef STBI_NO_STDIO + STBIDEF float *stbi_loadf (char const *filename, int *x, int *y, int *channels_in_file, int desired_channels); + STBIDEF float *stbi_loadf_from_file (FILE *f, int *x, int *y, int *channels_in_file, int desired_channels); + #endif +#endif + +#ifndef STBI_NO_HDR + STBIDEF void stbi_hdr_to_ldr_gamma(float gamma); + STBIDEF void stbi_hdr_to_ldr_scale(float scale); +#endif // STBI_NO_HDR + +#ifndef STBI_NO_LINEAR + STBIDEF void stbi_ldr_to_hdr_gamma(float gamma); + STBIDEF void stbi_ldr_to_hdr_scale(float scale); +#endif // STBI_NO_LINEAR + +// stbi_is_hdr is always defined, but always returns false if STBI_NO_HDR +STBIDEF int stbi_is_hdr_from_callbacks(stbi_io_callbacks const *clbk, void *user); +STBIDEF int stbi_is_hdr_from_memory(stbi_uc const *buffer, int len); +#ifndef STBI_NO_STDIO +STBIDEF int stbi_is_hdr (char const *filename); +STBIDEF int stbi_is_hdr_from_file(FILE *f); +#endif // STBI_NO_STDIO + + +// get a VERY brief reason for failure +// on most compilers (and ALL modern mainstream compilers) this is threadsafe +STBIDEF const char *stbi_failure_reason (void); + +// free the loaded image -- this is just free() +STBIDEF void stbi_image_free (void *retval_from_stbi_load); + +// get image dimensions & components without fully decoding +STBIDEF int stbi_info_from_memory(stbi_uc const *buffer, int len, int *x, int *y, int *comp); +STBIDEF int stbi_info_from_callbacks(stbi_io_callbacks const *clbk, void *user, int *x, int *y, int *comp); +STBIDEF int stbi_is_16_bit_from_memory(stbi_uc const *buffer, int len); +STBIDEF int stbi_is_16_bit_from_callbacks(stbi_io_callbacks const *clbk, void *user); + +#ifndef STBI_NO_STDIO +STBIDEF int stbi_info (char const *filename, int *x, int *y, int *comp); +STBIDEF int stbi_info_from_file (FILE *f, int *x, int *y, int *comp); +STBIDEF int stbi_is_16_bit (char const *filename); +STBIDEF int stbi_is_16_bit_from_file(FILE *f); +#endif + + + +// for image formats that explicitly notate that they have premultiplied alpha, +// we just return the colors as stored in the file. set this flag to force +// unpremultiplication. results are undefined if the unpremultiply overflow. +STBIDEF void stbi_set_unpremultiply_on_load(int flag_true_if_should_unpremultiply); + +// indicate whether we should process iphone images back to canonical format, +// or just pass them through "as-is" +STBIDEF void stbi_convert_iphone_png_to_rgb(int flag_true_if_should_convert); + +// flip the image vertically, so the first pixel in the output array is the bottom left +STBIDEF void stbi_set_flip_vertically_on_load(int flag_true_if_should_flip); + +// as above, but only applies to images loaded on the thread that calls the function +// this function is only available if your compiler supports thread-local variables; +// calling it will fail to link if your compiler doesn't +STBIDEF void stbi_set_unpremultiply_on_load_thread(int flag_true_if_should_unpremultiply); +STBIDEF void stbi_convert_iphone_png_to_rgb_thread(int flag_true_if_should_convert); +STBIDEF void stbi_set_flip_vertically_on_load_thread(int flag_true_if_should_flip); + +// ZLIB client - used by PNG, available for other purposes + +STBIDEF char *stbi_zlib_decode_malloc_guesssize(const char *buffer, int len, int initial_size, int *outlen); +STBIDEF char *stbi_zlib_decode_malloc_guesssize_headerflag(const char *buffer, int len, int initial_size, int *outlen, int parse_header); +STBIDEF char *stbi_zlib_decode_malloc(const char *buffer, int len, int *outlen); +STBIDEF int stbi_zlib_decode_buffer(char *obuffer, int olen, const char *ibuffer, int ilen); + +STBIDEF char *stbi_zlib_decode_noheader_malloc(const char *buffer, int len, int *outlen); +STBIDEF int stbi_zlib_decode_noheader_buffer(char *obuffer, int olen, const char *ibuffer, int ilen); + + +#ifdef __cplusplus +} +#endif + +// +// +//// end header file ///////////////////////////////////////////////////// +#endif // STBI_INCLUDE_STB_IMAGE_H + +#ifdef STB_IMAGE_IMPLEMENTATION + +#if defined(STBI_ONLY_JPEG) || defined(STBI_ONLY_PNG) || defined(STBI_ONLY_BMP) \ + || defined(STBI_ONLY_TGA) || defined(STBI_ONLY_GIF) || defined(STBI_ONLY_PSD) \ + || defined(STBI_ONLY_HDR) || defined(STBI_ONLY_PIC) || defined(STBI_ONLY_PNM) \ + || defined(STBI_ONLY_ZLIB) + #ifndef STBI_ONLY_JPEG + #define STBI_NO_JPEG + #endif + #ifndef STBI_ONLY_PNG + #define STBI_NO_PNG + #endif + #ifndef STBI_ONLY_BMP + #define STBI_NO_BMP + #endif + #ifndef STBI_ONLY_PSD + #define STBI_NO_PSD + #endif + #ifndef STBI_ONLY_TGA + #define STBI_NO_TGA + #endif + #ifndef STBI_ONLY_GIF + #define STBI_NO_GIF + #endif + #ifndef STBI_ONLY_HDR + #define STBI_NO_HDR + #endif + #ifndef STBI_ONLY_PIC + #define STBI_NO_PIC + #endif + #ifndef STBI_ONLY_PNM + #define STBI_NO_PNM + #endif +#endif + +#if defined(STBI_NO_PNG) && !defined(STBI_SUPPORT_ZLIB) && !defined(STBI_NO_ZLIB) +#define STBI_NO_ZLIB +#endif + + +#include +#include // ptrdiff_t on osx +#include +#include +#include + +#if !defined(STBI_NO_LINEAR) || !defined(STBI_NO_HDR) +#include // ldexp, pow +#endif + +#ifndef STBI_NO_STDIO +#include +#endif + +#ifndef STBI_ASSERT +#include +#define STBI_ASSERT(x) assert(x) +#endif + +#ifdef __cplusplus +#define STBI_EXTERN extern "C" +#else +#define STBI_EXTERN extern +#endif + + +#ifndef _MSC_VER + #ifdef __cplusplus + #define stbi_inline inline + #else + #define stbi_inline + #endif +#else + #define stbi_inline __forceinline +#endif + +#ifndef STBI_NO_THREAD_LOCALS + #if defined(__cplusplus) && __cplusplus >= 201103L + #define STBI_THREAD_LOCAL thread_local + #elif defined(__GNUC__) && __GNUC__ < 5 + #define STBI_THREAD_LOCAL __thread + #elif defined(_MSC_VER) + #define STBI_THREAD_LOCAL __declspec(thread) + #elif defined (__STDC_VERSION__) && __STDC_VERSION__ >= 201112L && !defined(__STDC_NO_THREADS__) + #define STBI_THREAD_LOCAL _Thread_local + #endif + + #ifndef STBI_THREAD_LOCAL + #if defined(__GNUC__) + #define STBI_THREAD_LOCAL __thread + #endif + #endif +#endif + +#if defined(_MSC_VER) || defined(__SYMBIAN32__) +typedef unsigned short stbi__uint16; +typedef signed short stbi__int16; +typedef unsigned int stbi__uint32; +typedef signed int stbi__int32; +#else +#include +typedef uint16_t stbi__uint16; +typedef int16_t stbi__int16; +typedef uint32_t stbi__uint32; +typedef int32_t stbi__int32; +#endif + +// should produce compiler error if size is wrong +typedef unsigned char validate_uint32[sizeof(stbi__uint32)==4 ? 1 : -1]; + +#ifdef _MSC_VER +#define STBI_NOTUSED(v) (void)(v) +#else +#define STBI_NOTUSED(v) (void)sizeof(v) +#endif + +#ifdef _MSC_VER +#define STBI_HAS_LROTL +#endif + +#ifdef STBI_HAS_LROTL + #define stbi_lrot(x,y) _lrotl(x,y) +#else + #define stbi_lrot(x,y) (((x) << (y)) | ((x) >> (-(y) & 31))) +#endif + +#if defined(STBI_MALLOC) && defined(STBI_FREE) && (defined(STBI_REALLOC) || defined(STBI_REALLOC_SIZED)) +// ok +#elif !defined(STBI_MALLOC) && !defined(STBI_FREE) && !defined(STBI_REALLOC) && !defined(STBI_REALLOC_SIZED) +// ok +#else +#error "Must define all or none of STBI_MALLOC, STBI_FREE, and STBI_REALLOC (or STBI_REALLOC_SIZED)." +#endif + +#ifndef STBI_MALLOC +#define STBI_MALLOC(sz) malloc(sz) +#define STBI_REALLOC(p,newsz) realloc(p,newsz) +#define STBI_FREE(p) free(p) +#endif + +#ifndef STBI_REALLOC_SIZED +#define STBI_REALLOC_SIZED(p,oldsz,newsz) STBI_REALLOC(p,newsz) +#endif + +// x86/x64 detection +#if defined(__x86_64__) || defined(_M_X64) +#define STBI__X64_TARGET +#elif defined(__i386) || defined(_M_IX86) +#define STBI__X86_TARGET +#endif + +#if defined(__GNUC__) && defined(STBI__X86_TARGET) && !defined(__SSE2__) && !defined(STBI_NO_SIMD) +// gcc doesn't support sse2 intrinsics unless you compile with -msse2, +// which in turn means it gets to use SSE2 everywhere. This is unfortunate, +// but previous attempts to provide the SSE2 functions with runtime +// detection caused numerous issues. The way architecture extensions are +// exposed in GCC/Clang is, sadly, not really suited for one-file libs. +// New behavior: if compiled with -msse2, we use SSE2 without any +// detection; if not, we don't use it at all. +#define STBI_NO_SIMD +#endif + +#if defined(__MINGW32__) && defined(STBI__X86_TARGET) && !defined(STBI_MINGW_ENABLE_SSE2) && !defined(STBI_NO_SIMD) +// Note that __MINGW32__ doesn't actually mean 32-bit, so we have to avoid STBI__X64_TARGET +// +// 32-bit MinGW wants ESP to be 16-byte aligned, but this is not in the +// Windows ABI and VC++ as well as Windows DLLs don't maintain that invariant. +// As a result, enabling SSE2 on 32-bit MinGW is dangerous when not +// simultaneously enabling "-mstackrealign". +// +// See https://github.com/nothings/stb/issues/81 for more information. +// +// So default to no SSE2 on 32-bit MinGW. If you've read this far and added +// -mstackrealign to your build settings, feel free to #define STBI_MINGW_ENABLE_SSE2. +#define STBI_NO_SIMD +#endif + +#if !defined(STBI_NO_SIMD) && (defined(STBI__X86_TARGET) || defined(STBI__X64_TARGET)) +#define STBI_SSE2 +#include + +#ifdef _MSC_VER + +#if _MSC_VER >= 1400 // not VC6 +#include // __cpuid +static int stbi__cpuid3(void) +{ + int info[4]; + __cpuid(info,1); + return info[3]; +} +#else +static int stbi__cpuid3(void) +{ + int res; + __asm { + mov eax,1 + cpuid + mov res,edx + } + return res; +} +#endif + +#define STBI_SIMD_ALIGN(type, name) __declspec(align(16)) type name + +#if !defined(STBI_NO_JPEG) && defined(STBI_SSE2) +static int stbi__sse2_available(void) +{ + int info3 = stbi__cpuid3(); + return ((info3 >> 26) & 1) != 0; +} +#endif + +#else // assume GCC-style if not VC++ +#define STBI_SIMD_ALIGN(type, name) type name __attribute__((aligned(16))) + +#if !defined(STBI_NO_JPEG) && defined(STBI_SSE2) +static int stbi__sse2_available(void) +{ + // If we're even attempting to compile this on GCC/Clang, that means + // -msse2 is on, which means the compiler is allowed to use SSE2 + // instructions at will, and so are we. + return 1; +} +#endif + +#endif +#endif + +// ARM NEON +#if defined(STBI_NO_SIMD) && defined(STBI_NEON) +#undef STBI_NEON +#endif + +#ifdef STBI_NEON +#include +#ifdef _MSC_VER +#define STBI_SIMD_ALIGN(type, name) __declspec(align(16)) type name +#else +#define STBI_SIMD_ALIGN(type, name) type name __attribute__((aligned(16))) +#endif +#endif + +#ifndef STBI_SIMD_ALIGN +#define STBI_SIMD_ALIGN(type, name) type name +#endif + +#ifndef STBI_MAX_DIMENSIONS +#define STBI_MAX_DIMENSIONS (1 << 24) +#endif + +/////////////////////////////////////////////// +// +// stbi__context struct and start_xxx functions + +// stbi__context structure is our basic context used by all images, so it +// contains all the IO context, plus some basic image information +typedef struct +{ + stbi__uint32 img_x, img_y; + int img_n, img_out_n; + + stbi_io_callbacks io; + void *io_user_data; + + int read_from_callbacks; + int buflen; + stbi_uc buffer_start[128]; + int callback_already_read; + + stbi_uc *img_buffer, *img_buffer_end; + stbi_uc *img_buffer_original, *img_buffer_original_end; +} stbi__context; + + +static void stbi__refill_buffer(stbi__context *s); + +// initialize a memory-decode context +static void stbi__start_mem(stbi__context *s, stbi_uc const *buffer, int len) +{ + s->io.read = NULL; + s->read_from_callbacks = 0; + s->callback_already_read = 0; + s->img_buffer = s->img_buffer_original = (stbi_uc *) buffer; + s->img_buffer_end = s->img_buffer_original_end = (stbi_uc *) buffer+len; +} + +// initialize a callback-based context +static void stbi__start_callbacks(stbi__context *s, stbi_io_callbacks *c, void *user) +{ + s->io = *c; + s->io_user_data = user; + s->buflen = sizeof(s->buffer_start); + s->read_from_callbacks = 1; + s->callback_already_read = 0; + s->img_buffer = s->img_buffer_original = s->buffer_start; + stbi__refill_buffer(s); + s->img_buffer_original_end = s->img_buffer_end; +} + +#ifndef STBI_NO_STDIO + +static int stbi__stdio_read(void *user, char *data, int size) +{ + return (int) fread(data,1,size,(FILE*) user); +} + +static void stbi__stdio_skip(void *user, int n) +{ + int ch; + fseek((FILE*) user, n, SEEK_CUR); + ch = fgetc((FILE*) user); /* have to read a byte to reset feof()'s flag */ + if (ch != EOF) { + ungetc(ch, (FILE *) user); /* push byte back onto stream if valid. */ + } +} + +static int stbi__stdio_eof(void *user) +{ + return feof((FILE*) user) || ferror((FILE *) user); +} + +static stbi_io_callbacks stbi__stdio_callbacks = +{ + stbi__stdio_read, + stbi__stdio_skip, + stbi__stdio_eof, +}; + +static void stbi__start_file(stbi__context *s, FILE *f) +{ + stbi__start_callbacks(s, &stbi__stdio_callbacks, (void *) f); +} + +//static void stop_file(stbi__context *s) { } + +#endif // !STBI_NO_STDIO + +static void stbi__rewind(stbi__context *s) +{ + // conceptually rewind SHOULD rewind to the beginning of the stream, + // but we just rewind to the beginning of the initial buffer, because + // we only use it after doing 'test', which only ever looks at at most 92 bytes + s->img_buffer = s->img_buffer_original; + s->img_buffer_end = s->img_buffer_original_end; +} + +enum +{ + STBI_ORDER_RGB, + STBI_ORDER_BGR +}; + +typedef struct +{ + int bits_per_channel; + int num_channels; + int channel_order; +} stbi__result_info; + +#ifndef STBI_NO_JPEG +static int stbi__jpeg_test(stbi__context *s); +static void *stbi__jpeg_load(stbi__context *s, int *x, int *y, int *comp, int req_comp, stbi__result_info *ri); +static int stbi__jpeg_info(stbi__context *s, int *x, int *y, int *comp); +#endif + +#ifndef STBI_NO_PNG +static int stbi__png_test(stbi__context *s); +static void *stbi__png_load(stbi__context *s, int *x, int *y, int *comp, int req_comp, stbi__result_info *ri); +static int stbi__png_info(stbi__context *s, int *x, int *y, int *comp); +static int stbi__png_is16(stbi__context *s); +#endif + +#ifndef STBI_NO_BMP +static int stbi__bmp_test(stbi__context *s); +static void *stbi__bmp_load(stbi__context *s, int *x, int *y, int *comp, int req_comp, stbi__result_info *ri); +static int stbi__bmp_info(stbi__context *s, int *x, int *y, int *comp); +#endif + +#ifndef STBI_NO_TGA +static int stbi__tga_test(stbi__context *s); +static void *stbi__tga_load(stbi__context *s, int *x, int *y, int *comp, int req_comp, stbi__result_info *ri); +static int stbi__tga_info(stbi__context *s, int *x, int *y, int *comp); +#endif + +#ifndef STBI_NO_PSD +static int stbi__psd_test(stbi__context *s); +static void *stbi__psd_load(stbi__context *s, int *x, int *y, int *comp, int req_comp, stbi__result_info *ri, int bpc); +static int stbi__psd_info(stbi__context *s, int *x, int *y, int *comp); +static int stbi__psd_is16(stbi__context *s); +#endif + +#ifndef STBI_NO_HDR +static int stbi__hdr_test(stbi__context *s); +static float *stbi__hdr_load(stbi__context *s, int *x, int *y, int *comp, int req_comp, stbi__result_info *ri); +static int stbi__hdr_info(stbi__context *s, int *x, int *y, int *comp); +#endif + +#ifndef STBI_NO_PIC +static int stbi__pic_test(stbi__context *s); +static void *stbi__pic_load(stbi__context *s, int *x, int *y, int *comp, int req_comp, stbi__result_info *ri); +static int stbi__pic_info(stbi__context *s, int *x, int *y, int *comp); +#endif + +#ifndef STBI_NO_GIF +static int stbi__gif_test(stbi__context *s); +static void *stbi__gif_load(stbi__context *s, int *x, int *y, int *comp, int req_comp, stbi__result_info *ri); +static void *stbi__load_gif_main(stbi__context *s, int **delays, int *x, int *y, int *z, int *comp, int req_comp); +static int stbi__gif_info(stbi__context *s, int *x, int *y, int *comp); +#endif + +#ifndef STBI_NO_PNM +static int stbi__pnm_test(stbi__context *s); +static void *stbi__pnm_load(stbi__context *s, int *x, int *y, int *comp, int req_comp, stbi__result_info *ri); +static int stbi__pnm_info(stbi__context *s, int *x, int *y, int *comp); +static int stbi__pnm_is16(stbi__context *s); +#endif + +static +#ifdef STBI_THREAD_LOCAL +STBI_THREAD_LOCAL +#endif +const char *stbi__g_failure_reason; + +STBIDEF const char *stbi_failure_reason(void) +{ + return stbi__g_failure_reason; +} + +#ifndef STBI_NO_FAILURE_STRINGS +static int stbi__err(const char *str) +{ + stbi__g_failure_reason = str; + return 0; +} +#endif + +static void *stbi__malloc(size_t size) +{ + return STBI_MALLOC(size); +} + +// stb_image uses ints pervasively, including for offset calculations. +// therefore the largest decoded image size we can support with the +// current code, even on 64-bit targets, is INT_MAX. this is not a +// significant limitation for the intended use case. +// +// we do, however, need to make sure our size calculations don't +// overflow. hence a few helper functions for size calculations that +// multiply integers together, making sure that they're non-negative +// and no overflow occurs. + +// return 1 if the sum is valid, 0 on overflow. +// negative terms are considered invalid. +static int stbi__addsizes_valid(int a, int b) +{ + if (b < 0) return 0; + // now 0 <= b <= INT_MAX, hence also + // 0 <= INT_MAX - b <= INTMAX. + // And "a + b <= INT_MAX" (which might overflow) is the + // same as a <= INT_MAX - b (no overflow) + return a <= INT_MAX - b; +} + +// returns 1 if the product is valid, 0 on overflow. +// negative factors are considered invalid. +static int stbi__mul2sizes_valid(int a, int b) +{ + if (a < 0 || b < 0) return 0; + if (b == 0) return 1; // mul-by-0 is always safe + // portable way to check for no overflows in a*b + return a <= INT_MAX/b; +} + +#if !defined(STBI_NO_JPEG) || !defined(STBI_NO_PNG) || !defined(STBI_NO_TGA) || !defined(STBI_NO_HDR) +// returns 1 if "a*b + add" has no negative terms/factors and doesn't overflow +static int stbi__mad2sizes_valid(int a, int b, int add) +{ + return stbi__mul2sizes_valid(a, b) && stbi__addsizes_valid(a*b, add); +} +#endif + +// returns 1 if "a*b*c + add" has no negative terms/factors and doesn't overflow +static int stbi__mad3sizes_valid(int a, int b, int c, int add) +{ + return stbi__mul2sizes_valid(a, b) && stbi__mul2sizes_valid(a*b, c) && + stbi__addsizes_valid(a*b*c, add); +} + +// returns 1 if "a*b*c*d + add" has no negative terms/factors and doesn't overflow +#if !defined(STBI_NO_LINEAR) || !defined(STBI_NO_HDR) || !defined(STBI_NO_PNM) +static int stbi__mad4sizes_valid(int a, int b, int c, int d, int add) +{ + return stbi__mul2sizes_valid(a, b) && stbi__mul2sizes_valid(a*b, c) && + stbi__mul2sizes_valid(a*b*c, d) && stbi__addsizes_valid(a*b*c*d, add); +} +#endif + +#if !defined(STBI_NO_JPEG) || !defined(STBI_NO_PNG) || !defined(STBI_NO_TGA) || !defined(STBI_NO_HDR) +// mallocs with size overflow checking +static void *stbi__malloc_mad2(int a, int b, int add) +{ + if (!stbi__mad2sizes_valid(a, b, add)) return NULL; + return stbi__malloc(a*b + add); +} +#endif + +static void *stbi__malloc_mad3(int a, int b, int c, int add) +{ + if (!stbi__mad3sizes_valid(a, b, c, add)) return NULL; + return stbi__malloc(a*b*c + add); +} + +#if !defined(STBI_NO_LINEAR) || !defined(STBI_NO_HDR) || !defined(STBI_NO_PNM) +static void *stbi__malloc_mad4(int a, int b, int c, int d, int add) +{ + if (!stbi__mad4sizes_valid(a, b, c, d, add)) return NULL; + return stbi__malloc(a*b*c*d + add); +} +#endif + +// returns 1 if the sum of two signed ints is valid (between -2^31 and 2^31-1 inclusive), 0 on overflow. +static int stbi__addints_valid(int a, int b) +{ + if ((a >= 0) != (b >= 0)) return 1; // a and b have different signs, so no overflow + if (a < 0 && b < 0) return a >= INT_MIN - b; // same as a + b >= INT_MIN; INT_MIN - b cannot overflow since b < 0. + return a <= INT_MAX - b; +} + +// returns 1 if the product of two ints fits in a signed short, 0 on overflow. +static int stbi__mul2shorts_valid(int a, int b) +{ + if (b == 0 || b == -1) return 1; // multiplication by 0 is always 0; check for -1 so SHRT_MIN/b doesn't overflow + if ((a >= 0) == (b >= 0)) return a <= SHRT_MAX/b; // product is positive, so similar to mul2sizes_valid + if (b < 0) return a <= SHRT_MIN / b; // same as a * b >= SHRT_MIN + return a >= SHRT_MIN / b; +} + +// stbi__err - error +// stbi__errpf - error returning pointer to float +// stbi__errpuc - error returning pointer to unsigned char + +#ifdef STBI_NO_FAILURE_STRINGS + #define stbi__err(x,y) 0 +#elif defined(STBI_FAILURE_USERMSG) + #define stbi__err(x,y) stbi__err(y) +#else + #define stbi__err(x,y) stbi__err(x) +#endif + +#define stbi__errpf(x,y) ((float *)(size_t) (stbi__err(x,y)?NULL:NULL)) +#define stbi__errpuc(x,y) ((unsigned char *)(size_t) (stbi__err(x,y)?NULL:NULL)) + +STBIDEF void stbi_image_free(void *retval_from_stbi_load) +{ + STBI_FREE(retval_from_stbi_load); +} + +#ifndef STBI_NO_LINEAR +static float *stbi__ldr_to_hdr(stbi_uc *data, int x, int y, int comp); +#endif + +#ifndef STBI_NO_HDR +static stbi_uc *stbi__hdr_to_ldr(float *data, int x, int y, int comp); +#endif + +static int stbi__vertically_flip_on_load_global = 0; + +STBIDEF void stbi_set_flip_vertically_on_load(int flag_true_if_should_flip) +{ + stbi__vertically_flip_on_load_global = flag_true_if_should_flip; +} + +#ifndef STBI_THREAD_LOCAL +#define stbi__vertically_flip_on_load stbi__vertically_flip_on_load_global +#else +static STBI_THREAD_LOCAL int stbi__vertically_flip_on_load_local, stbi__vertically_flip_on_load_set; + +STBIDEF void stbi_set_flip_vertically_on_load_thread(int flag_true_if_should_flip) +{ + stbi__vertically_flip_on_load_local = flag_true_if_should_flip; + stbi__vertically_flip_on_load_set = 1; +} + +#define stbi__vertically_flip_on_load (stbi__vertically_flip_on_load_set \ + ? stbi__vertically_flip_on_load_local \ + : stbi__vertically_flip_on_load_global) +#endif // STBI_THREAD_LOCAL + +static void *stbi__load_main(stbi__context *s, int *x, int *y, int *comp, int req_comp, stbi__result_info *ri, int bpc) +{ + memset(ri, 0, sizeof(*ri)); // make sure it's initialized if we add new fields + ri->bits_per_channel = 8; // default is 8 so most paths don't have to be changed + ri->channel_order = STBI_ORDER_RGB; // all current input & output are this, but this is here so we can add BGR order + ri->num_channels = 0; + + // test the formats with a very explicit header first (at least a FOURCC + // or distinctive magic number first) + #ifndef STBI_NO_PNG + if (stbi__png_test(s)) return stbi__png_load(s,x,y,comp,req_comp, ri); + #endif + #ifndef STBI_NO_BMP + if (stbi__bmp_test(s)) return stbi__bmp_load(s,x,y,comp,req_comp, ri); + #endif + #ifndef STBI_NO_GIF + if (stbi__gif_test(s)) return stbi__gif_load(s,x,y,comp,req_comp, ri); + #endif + #ifndef STBI_NO_PSD + if (stbi__psd_test(s)) return stbi__psd_load(s,x,y,comp,req_comp, ri, bpc); + #else + STBI_NOTUSED(bpc); + #endif + #ifndef STBI_NO_PIC + if (stbi__pic_test(s)) return stbi__pic_load(s,x,y,comp,req_comp, ri); + #endif + + // then the formats that can end up attempting to load with just 1 or 2 + // bytes matching expectations; these are prone to false positives, so + // try them later + #ifndef STBI_NO_JPEG + if (stbi__jpeg_test(s)) return stbi__jpeg_load(s,x,y,comp,req_comp, ri); + #endif + #ifndef STBI_NO_PNM + if (stbi__pnm_test(s)) return stbi__pnm_load(s,x,y,comp,req_comp, ri); + #endif + + #ifndef STBI_NO_HDR + if (stbi__hdr_test(s)) { + float *hdr = stbi__hdr_load(s, x,y,comp,req_comp, ri); + return stbi__hdr_to_ldr(hdr, *x, *y, req_comp ? req_comp : *comp); + } + #endif + + #ifndef STBI_NO_TGA + // test tga last because it's a crappy test! + if (stbi__tga_test(s)) + return stbi__tga_load(s,x,y,comp,req_comp, ri); + #endif + + return stbi__errpuc("unknown image type", "Image not of any known type, or corrupt"); +} + +static stbi_uc *stbi__convert_16_to_8(stbi__uint16 *orig, int w, int h, int channels) +{ + int i; + int img_len = w * h * channels; + stbi_uc *reduced; + + reduced = (stbi_uc *) stbi__malloc(img_len); + if (reduced == NULL) return stbi__errpuc("outofmem", "Out of memory"); + + for (i = 0; i < img_len; ++i) + reduced[i] = (stbi_uc)((orig[i] >> 8) & 0xFF); // top half of each byte is sufficient approx of 16->8 bit scaling + + STBI_FREE(orig); + return reduced; +} + +static stbi__uint16 *stbi__convert_8_to_16(stbi_uc *orig, int w, int h, int channels) +{ + int i; + int img_len = w * h * channels; + stbi__uint16 *enlarged; + + enlarged = (stbi__uint16 *) stbi__malloc(img_len*2); + if (enlarged == NULL) return (stbi__uint16 *) stbi__errpuc("outofmem", "Out of memory"); + + for (i = 0; i < img_len; ++i) + enlarged[i] = (stbi__uint16)((orig[i] << 8) + orig[i]); // replicate to high and low byte, maps 0->0, 255->0xffff + + STBI_FREE(orig); + return enlarged; +} + +static void stbi__vertical_flip(void *image, int w, int h, int bytes_per_pixel) +{ + int row; + size_t bytes_per_row = (size_t)w * bytes_per_pixel; + stbi_uc temp[2048]; + stbi_uc *bytes = (stbi_uc *)image; + + for (row = 0; row < (h>>1); row++) { + stbi_uc *row0 = bytes + row*bytes_per_row; + stbi_uc *row1 = bytes + (h - row - 1)*bytes_per_row; + // swap row0 with row1 + size_t bytes_left = bytes_per_row; + while (bytes_left) { + size_t bytes_copy = (bytes_left < sizeof(temp)) ? bytes_left : sizeof(temp); + memcpy(temp, row0, bytes_copy); + memcpy(row0, row1, bytes_copy); + memcpy(row1, temp, bytes_copy); + row0 += bytes_copy; + row1 += bytes_copy; + bytes_left -= bytes_copy; + } + } +} + +#ifndef STBI_NO_GIF +static void stbi__vertical_flip_slices(void *image, int w, int h, int z, int bytes_per_pixel) +{ + int slice; + int slice_size = w * h * bytes_per_pixel; + + stbi_uc *bytes = (stbi_uc *)image; + for (slice = 0; slice < z; ++slice) { + stbi__vertical_flip(bytes, w, h, bytes_per_pixel); + bytes += slice_size; + } +} +#endif + +static unsigned char *stbi__load_and_postprocess_8bit(stbi__context *s, int *x, int *y, int *comp, int req_comp) +{ + stbi__result_info ri; + void *result = stbi__load_main(s, x, y, comp, req_comp, &ri, 8); + + if (result == NULL) + return NULL; + + // it is the responsibility of the loaders to make sure we get either 8 or 16 bit. + STBI_ASSERT(ri.bits_per_channel == 8 || ri.bits_per_channel == 16); + + if (ri.bits_per_channel != 8) { + result = stbi__convert_16_to_8((stbi__uint16 *) result, *x, *y, req_comp == 0 ? *comp : req_comp); + ri.bits_per_channel = 8; + } + + // @TODO: move stbi__convert_format to here + + if (stbi__vertically_flip_on_load) { + int channels = req_comp ? req_comp : *comp; + stbi__vertical_flip(result, *x, *y, channels * sizeof(stbi_uc)); + } + + return (unsigned char *) result; +} + +static stbi__uint16 *stbi__load_and_postprocess_16bit(stbi__context *s, int *x, int *y, int *comp, int req_comp) +{ + stbi__result_info ri; + void *result = stbi__load_main(s, x, y, comp, req_comp, &ri, 16); + + if (result == NULL) + return NULL; + + // it is the responsibility of the loaders to make sure we get either 8 or 16 bit. + STBI_ASSERT(ri.bits_per_channel == 8 || ri.bits_per_channel == 16); + + if (ri.bits_per_channel != 16) { + result = stbi__convert_8_to_16((stbi_uc *) result, *x, *y, req_comp == 0 ? *comp : req_comp); + ri.bits_per_channel = 16; + } + + // @TODO: move stbi__convert_format16 to here + // @TODO: special case RGB-to-Y (and RGBA-to-YA) for 8-bit-to-16-bit case to keep more precision + + if (stbi__vertically_flip_on_load) { + int channels = req_comp ? req_comp : *comp; + stbi__vertical_flip(result, *x, *y, channels * sizeof(stbi__uint16)); + } + + return (stbi__uint16 *) result; +} + +#if !defined(STBI_NO_HDR) && !defined(STBI_NO_LINEAR) +static void stbi__float_postprocess(float *result, int *x, int *y, int *comp, int req_comp) +{ + if (stbi__vertically_flip_on_load && result != NULL) { + int channels = req_comp ? req_comp : *comp; + stbi__vertical_flip(result, *x, *y, channels * sizeof(float)); + } +} +#endif + +#ifndef STBI_NO_STDIO + +#if defined(_WIN32) && defined(STBI_WINDOWS_UTF8) +STBI_EXTERN __declspec(dllimport) int __stdcall MultiByteToWideChar(unsigned int cp, unsigned long flags, const char *str, int cbmb, wchar_t *widestr, int cchwide); +STBI_EXTERN __declspec(dllimport) int __stdcall WideCharToMultiByte(unsigned int cp, unsigned long flags, const wchar_t *widestr, int cchwide, char *str, int cbmb, const char *defchar, int *used_default); +#endif + +#if defined(_WIN32) && defined(STBI_WINDOWS_UTF8) +STBIDEF int stbi_convert_wchar_to_utf8(char *buffer, size_t bufferlen, const wchar_t* input) +{ + return WideCharToMultiByte(65001 /* UTF8 */, 0, input, -1, buffer, (int) bufferlen, NULL, NULL); +} +#endif + +static FILE *stbi__fopen(char const *filename, char const *mode) +{ + FILE *f; +#if defined(_WIN32) && defined(STBI_WINDOWS_UTF8) + wchar_t wMode[64]; + wchar_t wFilename[1024]; + if (0 == MultiByteToWideChar(65001 /* UTF8 */, 0, filename, -1, wFilename, sizeof(wFilename)/sizeof(*wFilename))) + return 0; + + if (0 == MultiByteToWideChar(65001 /* UTF8 */, 0, mode, -1, wMode, sizeof(wMode)/sizeof(*wMode))) + return 0; + +#if defined(_MSC_VER) && _MSC_VER >= 1400 + if (0 != _wfopen_s(&f, wFilename, wMode)) + f = 0; +#else + f = _wfopen(wFilename, wMode); +#endif + +#elif defined(_MSC_VER) && _MSC_VER >= 1400 + if (0 != fopen_s(&f, filename, mode)) + f=0; +#else + f = fopen(filename, mode); +#endif + return f; +} + + +STBIDEF stbi_uc *stbi_load(char const *filename, int *x, int *y, int *comp, int req_comp) +{ + FILE *f = stbi__fopen(filename, "rb"); + unsigned char *result; + if (!f) return stbi__errpuc("can't fopen", "Unable to open file"); + result = stbi_load_from_file(f,x,y,comp,req_comp); + fclose(f); + return result; +} + +STBIDEF stbi_uc *stbi_load_from_file(FILE *f, int *x, int *y, int *comp, int req_comp) +{ + unsigned char *result; + stbi__context s; + stbi__start_file(&s,f); + result = stbi__load_and_postprocess_8bit(&s,x,y,comp,req_comp); + if (result) { + // need to 'unget' all the characters in the IO buffer + fseek(f, - (int) (s.img_buffer_end - s.img_buffer), SEEK_CUR); + } + return result; +} + +STBIDEF stbi__uint16 *stbi_load_from_file_16(FILE *f, int *x, int *y, int *comp, int req_comp) +{ + stbi__uint16 *result; + stbi__context s; + stbi__start_file(&s,f); + result = stbi__load_and_postprocess_16bit(&s,x,y,comp,req_comp); + if (result) { + // need to 'unget' all the characters in the IO buffer + fseek(f, - (int) (s.img_buffer_end - s.img_buffer), SEEK_CUR); + } + return result; +} + +STBIDEF stbi_us *stbi_load_16(char const *filename, int *x, int *y, int *comp, int req_comp) +{ + FILE *f = stbi__fopen(filename, "rb"); + stbi__uint16 *result; + if (!f) return (stbi_us *) stbi__errpuc("can't fopen", "Unable to open file"); + result = stbi_load_from_file_16(f,x,y,comp,req_comp); + fclose(f); + return result; +} + + +#endif //!STBI_NO_STDIO + +STBIDEF stbi_us *stbi_load_16_from_memory(stbi_uc const *buffer, int len, int *x, int *y, int *channels_in_file, int desired_channels) +{ + stbi__context s; + stbi__start_mem(&s,buffer,len); + return stbi__load_and_postprocess_16bit(&s,x,y,channels_in_file,desired_channels); +} + +STBIDEF stbi_us *stbi_load_16_from_callbacks(stbi_io_callbacks const *clbk, void *user, int *x, int *y, int *channels_in_file, int desired_channels) +{ + stbi__context s; + stbi__start_callbacks(&s, (stbi_io_callbacks *)clbk, user); + return stbi__load_and_postprocess_16bit(&s,x,y,channels_in_file,desired_channels); +} + +STBIDEF stbi_uc *stbi_load_from_memory(stbi_uc const *buffer, int len, int *x, int *y, int *comp, int req_comp) +{ + stbi__context s; + stbi__start_mem(&s,buffer,len); + return stbi__load_and_postprocess_8bit(&s,x,y,comp,req_comp); +} + +STBIDEF stbi_uc *stbi_load_from_callbacks(stbi_io_callbacks const *clbk, void *user, int *x, int *y, int *comp, int req_comp) +{ + stbi__context s; + stbi__start_callbacks(&s, (stbi_io_callbacks *) clbk, user); + return stbi__load_and_postprocess_8bit(&s,x,y,comp,req_comp); +} + +#ifndef STBI_NO_GIF +STBIDEF stbi_uc *stbi_load_gif_from_memory(stbi_uc const *buffer, int len, int **delays, int *x, int *y, int *z, int *comp, int req_comp) +{ + unsigned char *result; + stbi__context s; + stbi__start_mem(&s,buffer,len); + + result = (unsigned char*) stbi__load_gif_main(&s, delays, x, y, z, comp, req_comp); + if (stbi__vertically_flip_on_load) { + stbi__vertical_flip_slices( result, *x, *y, *z, *comp ); + } + + return result; +} +#endif + +#ifndef STBI_NO_LINEAR +static float *stbi__loadf_main(stbi__context *s, int *x, int *y, int *comp, int req_comp) +{ + unsigned char *data; + #ifndef STBI_NO_HDR + if (stbi__hdr_test(s)) { + stbi__result_info ri; + float *hdr_data = stbi__hdr_load(s,x,y,comp,req_comp, &ri); + if (hdr_data) + stbi__float_postprocess(hdr_data,x,y,comp,req_comp); + return hdr_data; + } + #endif + data = stbi__load_and_postprocess_8bit(s, x, y, comp, req_comp); + if (data) + return stbi__ldr_to_hdr(data, *x, *y, req_comp ? req_comp : *comp); + return stbi__errpf("unknown image type", "Image not of any known type, or corrupt"); +} + +STBIDEF float *stbi_loadf_from_memory(stbi_uc const *buffer, int len, int *x, int *y, int *comp, int req_comp) +{ + stbi__context s; + stbi__start_mem(&s,buffer,len); + return stbi__loadf_main(&s,x,y,comp,req_comp); +} + +STBIDEF float *stbi_loadf_from_callbacks(stbi_io_callbacks const *clbk, void *user, int *x, int *y, int *comp, int req_comp) +{ + stbi__context s; + stbi__start_callbacks(&s, (stbi_io_callbacks *) clbk, user); + return stbi__loadf_main(&s,x,y,comp,req_comp); +} + +#ifndef STBI_NO_STDIO +STBIDEF float *stbi_loadf(char const *filename, int *x, int *y, int *comp, int req_comp) +{ + float *result; + FILE *f = stbi__fopen(filename, "rb"); + if (!f) return stbi__errpf("can't fopen", "Unable to open file"); + result = stbi_loadf_from_file(f,x,y,comp,req_comp); + fclose(f); + return result; +} + +STBIDEF float *stbi_loadf_from_file(FILE *f, int *x, int *y, int *comp, int req_comp) +{ + stbi__context s; + stbi__start_file(&s,f); + return stbi__loadf_main(&s,x,y,comp,req_comp); +} +#endif // !STBI_NO_STDIO + +#endif // !STBI_NO_LINEAR + +// these is-hdr-or-not is defined independent of whether STBI_NO_LINEAR is +// defined, for API simplicity; if STBI_NO_LINEAR is defined, it always +// reports false! + +STBIDEF int stbi_is_hdr_from_memory(stbi_uc const *buffer, int len) +{ + #ifndef STBI_NO_HDR + stbi__context s; + stbi__start_mem(&s,buffer,len); + return stbi__hdr_test(&s); + #else + STBI_NOTUSED(buffer); + STBI_NOTUSED(len); + return 0; + #endif +} + +#ifndef STBI_NO_STDIO +STBIDEF int stbi_is_hdr (char const *filename) +{ + FILE *f = stbi__fopen(filename, "rb"); + int result=0; + if (f) { + result = stbi_is_hdr_from_file(f); + fclose(f); + } + return result; +} + +STBIDEF int stbi_is_hdr_from_file(FILE *f) +{ + #ifndef STBI_NO_HDR + long pos = ftell(f); + int res; + stbi__context s; + stbi__start_file(&s,f); + res = stbi__hdr_test(&s); + fseek(f, pos, SEEK_SET); + return res; + #else + STBI_NOTUSED(f); + return 0; + #endif +} +#endif // !STBI_NO_STDIO + +STBIDEF int stbi_is_hdr_from_callbacks(stbi_io_callbacks const *clbk, void *user) +{ + #ifndef STBI_NO_HDR + stbi__context s; + stbi__start_callbacks(&s, (stbi_io_callbacks *) clbk, user); + return stbi__hdr_test(&s); + #else + STBI_NOTUSED(clbk); + STBI_NOTUSED(user); + return 0; + #endif +} + +#ifndef STBI_NO_LINEAR +static float stbi__l2h_gamma=2.2f, stbi__l2h_scale=1.0f; + +STBIDEF void stbi_ldr_to_hdr_gamma(float gamma) { stbi__l2h_gamma = gamma; } +STBIDEF void stbi_ldr_to_hdr_scale(float scale) { stbi__l2h_scale = scale; } +#endif + +static float stbi__h2l_gamma_i=1.0f/2.2f, stbi__h2l_scale_i=1.0f; + +STBIDEF void stbi_hdr_to_ldr_gamma(float gamma) { stbi__h2l_gamma_i = 1/gamma; } +STBIDEF void stbi_hdr_to_ldr_scale(float scale) { stbi__h2l_scale_i = 1/scale; } + + +////////////////////////////////////////////////////////////////////////////// +// +// Common code used by all image loaders +// + +enum +{ + STBI__SCAN_load=0, + STBI__SCAN_type, + STBI__SCAN_header +}; + +static void stbi__refill_buffer(stbi__context *s) +{ + int n = (s->io.read)(s->io_user_data,(char*)s->buffer_start,s->buflen); + s->callback_already_read += (int) (s->img_buffer - s->img_buffer_original); + if (n == 0) { + // at end of file, treat same as if from memory, but need to handle case + // where s->img_buffer isn't pointing to safe memory, e.g. 0-byte file + s->read_from_callbacks = 0; + s->img_buffer = s->buffer_start; + s->img_buffer_end = s->buffer_start+1; + *s->img_buffer = 0; + } else { + s->img_buffer = s->buffer_start; + s->img_buffer_end = s->buffer_start + n; + } +} + +stbi_inline static stbi_uc stbi__get8(stbi__context *s) +{ + if (s->img_buffer < s->img_buffer_end) + return *s->img_buffer++; + if (s->read_from_callbacks) { + stbi__refill_buffer(s); + return *s->img_buffer++; + } + return 0; +} + +#if defined(STBI_NO_JPEG) && defined(STBI_NO_HDR) && defined(STBI_NO_PIC) && defined(STBI_NO_PNM) +// nothing +#else +stbi_inline static int stbi__at_eof(stbi__context *s) +{ + if (s->io.read) { + if (!(s->io.eof)(s->io_user_data)) return 0; + // if feof() is true, check if buffer = end + // special case: we've only got the special 0 character at the end + if (s->read_from_callbacks == 0) return 1; + } + + return s->img_buffer >= s->img_buffer_end; +} +#endif + +#if defined(STBI_NO_JPEG) && defined(STBI_NO_PNG) && defined(STBI_NO_BMP) && defined(STBI_NO_PSD) && defined(STBI_NO_TGA) && defined(STBI_NO_GIF) && defined(STBI_NO_PIC) +// nothing +#else +static void stbi__skip(stbi__context *s, int n) +{ + if (n == 0) return; // already there! + if (n < 0) { + s->img_buffer = s->img_buffer_end; + return; + } + if (s->io.read) { + int blen = (int) (s->img_buffer_end - s->img_buffer); + if (blen < n) { + s->img_buffer = s->img_buffer_end; + (s->io.skip)(s->io_user_data, n - blen); + return; + } + } + s->img_buffer += n; +} +#endif + +#if defined(STBI_NO_PNG) && defined(STBI_NO_TGA) && defined(STBI_NO_HDR) && defined(STBI_NO_PNM) +// nothing +#else +static int stbi__getn(stbi__context *s, stbi_uc *buffer, int n) +{ + if (s->io.read) { + int blen = (int) (s->img_buffer_end - s->img_buffer); + if (blen < n) { + int res, count; + + memcpy(buffer, s->img_buffer, blen); + + count = (s->io.read)(s->io_user_data, (char*) buffer + blen, n - blen); + res = (count == (n-blen)); + s->img_buffer = s->img_buffer_end; + return res; + } + } + + if (s->img_buffer+n <= s->img_buffer_end) { + memcpy(buffer, s->img_buffer, n); + s->img_buffer += n; + return 1; + } else + return 0; +} +#endif + +#if defined(STBI_NO_JPEG) && defined(STBI_NO_PNG) && defined(STBI_NO_PSD) && defined(STBI_NO_PIC) +// nothing +#else +static int stbi__get16be(stbi__context *s) +{ + int z = stbi__get8(s); + return (z << 8) + stbi__get8(s); +} +#endif + +#if defined(STBI_NO_PNG) && defined(STBI_NO_PSD) && defined(STBI_NO_PIC) +// nothing +#else +static stbi__uint32 stbi__get32be(stbi__context *s) +{ + stbi__uint32 z = stbi__get16be(s); + return (z << 16) + stbi__get16be(s); +} +#endif + +#if defined(STBI_NO_BMP) && defined(STBI_NO_TGA) && defined(STBI_NO_GIF) +// nothing +#else +static int stbi__get16le(stbi__context *s) +{ + int z = stbi__get8(s); + return z + (stbi__get8(s) << 8); +} +#endif + +#ifndef STBI_NO_BMP +static stbi__uint32 stbi__get32le(stbi__context *s) +{ + stbi__uint32 z = stbi__get16le(s); + z += (stbi__uint32)stbi__get16le(s) << 16; + return z; +} +#endif + +#define STBI__BYTECAST(x) ((stbi_uc) ((x) & 255)) // truncate int to byte without warnings + +#if defined(STBI_NO_JPEG) && defined(STBI_NO_PNG) && defined(STBI_NO_BMP) && defined(STBI_NO_PSD) && defined(STBI_NO_TGA) && defined(STBI_NO_GIF) && defined(STBI_NO_PIC) && defined(STBI_NO_PNM) +// nothing +#else +////////////////////////////////////////////////////////////////////////////// +// +// generic converter from built-in img_n to req_comp +// individual types do this automatically as much as possible (e.g. jpeg +// does all cases internally since it needs to colorspace convert anyway, +// and it never has alpha, so very few cases ). png can automatically +// interleave an alpha=255 channel, but falls back to this for other cases +// +// assume data buffer is malloced, so malloc a new one and free that one +// only failure mode is malloc failing + +static stbi_uc stbi__compute_y(int r, int g, int b) +{ + return (stbi_uc) (((r*77) + (g*150) + (29*b)) >> 8); +} +#endif + +#if defined(STBI_NO_PNG) && defined(STBI_NO_BMP) && defined(STBI_NO_PSD) && defined(STBI_NO_TGA) && defined(STBI_NO_GIF) && defined(STBI_NO_PIC) && defined(STBI_NO_PNM) +// nothing +#else +static unsigned char *stbi__convert_format(unsigned char *data, int img_n, int req_comp, unsigned int x, unsigned int y) +{ + int i,j; + unsigned char *good; + + if (req_comp == img_n) return data; + STBI_ASSERT(req_comp >= 1 && req_comp <= 4); + + good = (unsigned char *) stbi__malloc_mad3(req_comp, x, y, 0); + if (good == NULL) { + STBI_FREE(data); + return stbi__errpuc("outofmem", "Out of memory"); + } + + for (j=0; j < (int) y; ++j) { + unsigned char *src = data + j * x * img_n ; + unsigned char *dest = good + j * x * req_comp; + + #define STBI__COMBO(a,b) ((a)*8+(b)) + #define STBI__CASE(a,b) case STBI__COMBO(a,b): for(i=x-1; i >= 0; --i, src += a, dest += b) + // convert source image with img_n components to one with req_comp components; + // avoid switch per pixel, so use switch per scanline and massive macros + switch (STBI__COMBO(img_n, req_comp)) { + STBI__CASE(1,2) { dest[0]=src[0]; dest[1]=255; } break; + STBI__CASE(1,3) { dest[0]=dest[1]=dest[2]=src[0]; } break; + STBI__CASE(1,4) { dest[0]=dest[1]=dest[2]=src[0]; dest[3]=255; } break; + STBI__CASE(2,1) { dest[0]=src[0]; } break; + STBI__CASE(2,3) { dest[0]=dest[1]=dest[2]=src[0]; } break; + STBI__CASE(2,4) { dest[0]=dest[1]=dest[2]=src[0]; dest[3]=src[1]; } break; + STBI__CASE(3,4) { dest[0]=src[0];dest[1]=src[1];dest[2]=src[2];dest[3]=255; } break; + STBI__CASE(3,1) { dest[0]=stbi__compute_y(src[0],src[1],src[2]); } break; + STBI__CASE(3,2) { dest[0]=stbi__compute_y(src[0],src[1],src[2]); dest[1] = 255; } break; + STBI__CASE(4,1) { dest[0]=stbi__compute_y(src[0],src[1],src[2]); } break; + STBI__CASE(4,2) { dest[0]=stbi__compute_y(src[0],src[1],src[2]); dest[1] = src[3]; } break; + STBI__CASE(4,3) { dest[0]=src[0];dest[1]=src[1];dest[2]=src[2]; } break; + default: STBI_ASSERT(0); STBI_FREE(data); STBI_FREE(good); return stbi__errpuc("unsupported", "Unsupported format conversion"); + } + #undef STBI__CASE + } + + STBI_FREE(data); + return good; +} +#endif + +#if defined(STBI_NO_PNG) && defined(STBI_NO_PSD) +// nothing +#else +static stbi__uint16 stbi__compute_y_16(int r, int g, int b) +{ + return (stbi__uint16) (((r*77) + (g*150) + (29*b)) >> 8); +} +#endif + +#if defined(STBI_NO_PNG) && defined(STBI_NO_PSD) +// nothing +#else +static stbi__uint16 *stbi__convert_format16(stbi__uint16 *data, int img_n, int req_comp, unsigned int x, unsigned int y) +{ + int i,j; + stbi__uint16 *good; + + if (req_comp == img_n) return data; + STBI_ASSERT(req_comp >= 1 && req_comp <= 4); + + good = (stbi__uint16 *) stbi__malloc(req_comp * x * y * 2); + if (good == NULL) { + STBI_FREE(data); + return (stbi__uint16 *) stbi__errpuc("outofmem", "Out of memory"); + } + + for (j=0; j < (int) y; ++j) { + stbi__uint16 *src = data + j * x * img_n ; + stbi__uint16 *dest = good + j * x * req_comp; + + #define STBI__COMBO(a,b) ((a)*8+(b)) + #define STBI__CASE(a,b) case STBI__COMBO(a,b): for(i=x-1; i >= 0; --i, src += a, dest += b) + // convert source image with img_n components to one with req_comp components; + // avoid switch per pixel, so use switch per scanline and massive macros + switch (STBI__COMBO(img_n, req_comp)) { + STBI__CASE(1,2) { dest[0]=src[0]; dest[1]=0xffff; } break; + STBI__CASE(1,3) { dest[0]=dest[1]=dest[2]=src[0]; } break; + STBI__CASE(1,4) { dest[0]=dest[1]=dest[2]=src[0]; dest[3]=0xffff; } break; + STBI__CASE(2,1) { dest[0]=src[0]; } break; + STBI__CASE(2,3) { dest[0]=dest[1]=dest[2]=src[0]; } break; + STBI__CASE(2,4) { dest[0]=dest[1]=dest[2]=src[0]; dest[3]=src[1]; } break; + STBI__CASE(3,4) { dest[0]=src[0];dest[1]=src[1];dest[2]=src[2];dest[3]=0xffff; } break; + STBI__CASE(3,1) { dest[0]=stbi__compute_y_16(src[0],src[1],src[2]); } break; + STBI__CASE(3,2) { dest[0]=stbi__compute_y_16(src[0],src[1],src[2]); dest[1] = 0xffff; } break; + STBI__CASE(4,1) { dest[0]=stbi__compute_y_16(src[0],src[1],src[2]); } break; + STBI__CASE(4,2) { dest[0]=stbi__compute_y_16(src[0],src[1],src[2]); dest[1] = src[3]; } break; + STBI__CASE(4,3) { dest[0]=src[0];dest[1]=src[1];dest[2]=src[2]; } break; + default: STBI_ASSERT(0); STBI_FREE(data); STBI_FREE(good); return (stbi__uint16*) stbi__errpuc("unsupported", "Unsupported format conversion"); + } + #undef STBI__CASE + } + + STBI_FREE(data); + return good; +} +#endif + +#ifndef STBI_NO_LINEAR +static float *stbi__ldr_to_hdr(stbi_uc *data, int x, int y, int comp) +{ + int i,k,n; + float *output; + if (!data) return NULL; + output = (float *) stbi__malloc_mad4(x, y, comp, sizeof(float), 0); + if (output == NULL) { STBI_FREE(data); return stbi__errpf("outofmem", "Out of memory"); } + // compute number of non-alpha components + if (comp & 1) n = comp; else n = comp-1; + for (i=0; i < x*y; ++i) { + for (k=0; k < n; ++k) { + output[i*comp + k] = (float) (pow(data[i*comp+k]/255.0f, stbi__l2h_gamma) * stbi__l2h_scale); + } + } + if (n < comp) { + for (i=0; i < x*y; ++i) { + output[i*comp + n] = data[i*comp + n]/255.0f; + } + } + STBI_FREE(data); + return output; +} +#endif + +#ifndef STBI_NO_HDR +#define stbi__float2int(x) ((int) (x)) +static stbi_uc *stbi__hdr_to_ldr(float *data, int x, int y, int comp) +{ + int i,k,n; + stbi_uc *output; + if (!data) return NULL; + output = (stbi_uc *) stbi__malloc_mad3(x, y, comp, 0); + if (output == NULL) { STBI_FREE(data); return stbi__errpuc("outofmem", "Out of memory"); } + // compute number of non-alpha components + if (comp & 1) n = comp; else n = comp-1; + for (i=0; i < x*y; ++i) { + for (k=0; k < n; ++k) { + float z = (float) pow(data[i*comp+k]*stbi__h2l_scale_i, stbi__h2l_gamma_i) * 255 + 0.5f; + if (z < 0) z = 0; + if (z > 255) z = 255; + output[i*comp + k] = (stbi_uc) stbi__float2int(z); + } + if (k < comp) { + float z = data[i*comp+k] * 255 + 0.5f; + if (z < 0) z = 0; + if (z > 255) z = 255; + output[i*comp + k] = (stbi_uc) stbi__float2int(z); + } + } + STBI_FREE(data); + return output; +} +#endif + +////////////////////////////////////////////////////////////////////////////// +// +// "baseline" JPEG/JFIF decoder +// +// simple implementation +// - doesn't support delayed output of y-dimension +// - simple interface (only one output format: 8-bit interleaved RGB) +// - doesn't try to recover corrupt jpegs +// - doesn't allow partial loading, loading multiple at once +// - still fast on x86 (copying globals into locals doesn't help x86) +// - allocates lots of intermediate memory (full size of all components) +// - non-interleaved case requires this anyway +// - allows good upsampling (see next) +// high-quality +// - upsampled channels are bilinearly interpolated, even across blocks +// - quality integer IDCT derived from IJG's 'slow' +// performance +// - fast huffman; reasonable integer IDCT +// - some SIMD kernels for common paths on targets with SSE2/NEON +// - uses a lot of intermediate memory, could cache poorly + +#ifndef STBI_NO_JPEG + +// huffman decoding acceleration +#define FAST_BITS 9 // larger handles more cases; smaller stomps less cache + +typedef struct +{ + stbi_uc fast[1 << FAST_BITS]; + // weirdly, repacking this into AoS is a 10% speed loss, instead of a win + stbi__uint16 code[256]; + stbi_uc values[256]; + stbi_uc size[257]; + unsigned int maxcode[18]; + int delta[17]; // old 'firstsymbol' - old 'firstcode' +} stbi__huffman; + +typedef struct +{ + stbi__context *s; + stbi__huffman huff_dc[4]; + stbi__huffman huff_ac[4]; + stbi__uint16 dequant[4][64]; + stbi__int16 fast_ac[4][1 << FAST_BITS]; + +// sizes for components, interleaved MCUs + int img_h_max, img_v_max; + int img_mcu_x, img_mcu_y; + int img_mcu_w, img_mcu_h; + +// definition of jpeg image component + struct + { + int id; + int h,v; + int tq; + int hd,ha; + int dc_pred; + + int x,y,w2,h2; + stbi_uc *data; + void *raw_data, *raw_coeff; + stbi_uc *linebuf; + short *coeff; // progressive only + int coeff_w, coeff_h; // number of 8x8 coefficient blocks + } img_comp[4]; + + stbi__uint32 code_buffer; // jpeg entropy-coded buffer + int code_bits; // number of valid bits + unsigned char marker; // marker seen while filling entropy buffer + int nomore; // flag if we saw a marker so must stop + + int progressive; + int spec_start; + int spec_end; + int succ_high; + int succ_low; + int eob_run; + int jfif; + int app14_color_transform; // Adobe APP14 tag + int rgb; + + int scan_n, order[4]; + int restart_interval, todo; + +// kernels + void (*idct_block_kernel)(stbi_uc *out, int out_stride, short data[64]); + void (*YCbCr_to_RGB_kernel)(stbi_uc *out, const stbi_uc *y, const stbi_uc *pcb, const stbi_uc *pcr, int count, int step); + stbi_uc *(*resample_row_hv_2_kernel)(stbi_uc *out, stbi_uc *in_near, stbi_uc *in_far, int w, int hs); +} stbi__jpeg; + +static int stbi__build_huffman(stbi__huffman *h, int *count) +{ + int i,j,k=0; + unsigned int code; + // build size list for each symbol (from JPEG spec) + for (i=0; i < 16; ++i) { + for (j=0; j < count[i]; ++j) { + h->size[k++] = (stbi_uc) (i+1); + if(k >= 257) return stbi__err("bad size list","Corrupt JPEG"); + } + } + h->size[k] = 0; + + // compute actual symbols (from jpeg spec) + code = 0; + k = 0; + for(j=1; j <= 16; ++j) { + // compute delta to add to code to compute symbol id + h->delta[j] = k - code; + if (h->size[k] == j) { + while (h->size[k] == j) + h->code[k++] = (stbi__uint16) (code++); + if (code-1 >= (1u << j)) return stbi__err("bad code lengths","Corrupt JPEG"); + } + // compute largest code + 1 for this size, preshifted as needed later + h->maxcode[j] = code << (16-j); + code <<= 1; + } + h->maxcode[j] = 0xffffffff; + + // build non-spec acceleration table; 255 is flag for not-accelerated + memset(h->fast, 255, 1 << FAST_BITS); + for (i=0; i < k; ++i) { + int s = h->size[i]; + if (s <= FAST_BITS) { + int c = h->code[i] << (FAST_BITS-s); + int m = 1 << (FAST_BITS-s); + for (j=0; j < m; ++j) { + h->fast[c+j] = (stbi_uc) i; + } + } + } + return 1; +} + +// build a table that decodes both magnitude and value of small ACs in +// one go. +static void stbi__build_fast_ac(stbi__int16 *fast_ac, stbi__huffman *h) +{ + int i; + for (i=0; i < (1 << FAST_BITS); ++i) { + stbi_uc fast = h->fast[i]; + fast_ac[i] = 0; + if (fast < 255) { + int rs = h->values[fast]; + int run = (rs >> 4) & 15; + int magbits = rs & 15; + int len = h->size[fast]; + + if (magbits && len + magbits <= FAST_BITS) { + // magnitude code followed by receive_extend code + int k = ((i << len) & ((1 << FAST_BITS) - 1)) >> (FAST_BITS - magbits); + int m = 1 << (magbits - 1); + if (k < m) k += (~0U << magbits) + 1; + // if the result is small enough, we can fit it in fast_ac table + if (k >= -128 && k <= 127) + fast_ac[i] = (stbi__int16) ((k * 256) + (run * 16) + (len + magbits)); + } + } + } +} + +static void stbi__grow_buffer_unsafe(stbi__jpeg *j) +{ + do { + unsigned int b = j->nomore ? 0 : stbi__get8(j->s); + if (b == 0xff) { + int c = stbi__get8(j->s); + while (c == 0xff) c = stbi__get8(j->s); // consume fill bytes + if (c != 0) { + j->marker = (unsigned char) c; + j->nomore = 1; + return; + } + } + j->code_buffer |= b << (24 - j->code_bits); + j->code_bits += 8; + } while (j->code_bits <= 24); +} + +// (1 << n) - 1 +static const stbi__uint32 stbi__bmask[17]={0,1,3,7,15,31,63,127,255,511,1023,2047,4095,8191,16383,32767,65535}; + +// decode a jpeg huffman value from the bitstream +stbi_inline static int stbi__jpeg_huff_decode(stbi__jpeg *j, stbi__huffman *h) +{ + unsigned int temp; + int c,k; + + if (j->code_bits < 16) stbi__grow_buffer_unsafe(j); + + // look at the top FAST_BITS and determine what symbol ID it is, + // if the code is <= FAST_BITS + c = (j->code_buffer >> (32 - FAST_BITS)) & ((1 << FAST_BITS)-1); + k = h->fast[c]; + if (k < 255) { + int s = h->size[k]; + if (s > j->code_bits) + return -1; + j->code_buffer <<= s; + j->code_bits -= s; + return h->values[k]; + } + + // naive test is to shift the code_buffer down so k bits are + // valid, then test against maxcode. To speed this up, we've + // preshifted maxcode left so that it has (16-k) 0s at the + // end; in other words, regardless of the number of bits, it + // wants to be compared against something shifted to have 16; + // that way we don't need to shift inside the loop. + temp = j->code_buffer >> 16; + for (k=FAST_BITS+1 ; ; ++k) + if (temp < h->maxcode[k]) + break; + if (k == 17) { + // error! code not found + j->code_bits -= 16; + return -1; + } + + if (k > j->code_bits) + return -1; + + // convert the huffman code to the symbol id + c = ((j->code_buffer >> (32 - k)) & stbi__bmask[k]) + h->delta[k]; + if(c < 0 || c >= 256) // symbol id out of bounds! + return -1; + STBI_ASSERT((((j->code_buffer) >> (32 - h->size[c])) & stbi__bmask[h->size[c]]) == h->code[c]); + + // convert the id to a symbol + j->code_bits -= k; + j->code_buffer <<= k; + return h->values[c]; +} + +// bias[n] = (-1<code_bits < n) stbi__grow_buffer_unsafe(j); + if (j->code_bits < n) return 0; // ran out of bits from stream, return 0s intead of continuing + + sgn = j->code_buffer >> 31; // sign bit always in MSB; 0 if MSB clear (positive), 1 if MSB set (negative) + k = stbi_lrot(j->code_buffer, n); + j->code_buffer = k & ~stbi__bmask[n]; + k &= stbi__bmask[n]; + j->code_bits -= n; + return k + (stbi__jbias[n] & (sgn - 1)); +} + +// get some unsigned bits +stbi_inline static int stbi__jpeg_get_bits(stbi__jpeg *j, int n) +{ + unsigned int k; + if (j->code_bits < n) stbi__grow_buffer_unsafe(j); + if (j->code_bits < n) return 0; // ran out of bits from stream, return 0s intead of continuing + k = stbi_lrot(j->code_buffer, n); + j->code_buffer = k & ~stbi__bmask[n]; + k &= stbi__bmask[n]; + j->code_bits -= n; + return k; +} + +stbi_inline static int stbi__jpeg_get_bit(stbi__jpeg *j) +{ + unsigned int k; + if (j->code_bits < 1) stbi__grow_buffer_unsafe(j); + if (j->code_bits < 1) return 0; // ran out of bits from stream, return 0s intead of continuing + k = j->code_buffer; + j->code_buffer <<= 1; + --j->code_bits; + return k & 0x80000000; +} + +// given a value that's at position X in the zigzag stream, +// where does it appear in the 8x8 matrix coded as row-major? +static const stbi_uc stbi__jpeg_dezigzag[64+15] = +{ + 0, 1, 8, 16, 9, 2, 3, 10, + 17, 24, 32, 25, 18, 11, 4, 5, + 12, 19, 26, 33, 40, 48, 41, 34, + 27, 20, 13, 6, 7, 14, 21, 28, + 35, 42, 49, 56, 57, 50, 43, 36, + 29, 22, 15, 23, 30, 37, 44, 51, + 58, 59, 52, 45, 38, 31, 39, 46, + 53, 60, 61, 54, 47, 55, 62, 63, + // let corrupt input sample past end + 63, 63, 63, 63, 63, 63, 63, 63, + 63, 63, 63, 63, 63, 63, 63 +}; + +// decode one 64-entry block-- +static int stbi__jpeg_decode_block(stbi__jpeg *j, short data[64], stbi__huffman *hdc, stbi__huffman *hac, stbi__int16 *fac, int b, stbi__uint16 *dequant) +{ + int diff,dc,k; + int t; + + if (j->code_bits < 16) stbi__grow_buffer_unsafe(j); + t = stbi__jpeg_huff_decode(j, hdc); + if (t < 0 || t > 15) return stbi__err("bad huffman code","Corrupt JPEG"); + + // 0 all the ac values now so we can do it 32-bits at a time + memset(data,0,64*sizeof(data[0])); + + diff = t ? stbi__extend_receive(j, t) : 0; + if (!stbi__addints_valid(j->img_comp[b].dc_pred, diff)) return stbi__err("bad delta","Corrupt JPEG"); + dc = j->img_comp[b].dc_pred + diff; + j->img_comp[b].dc_pred = dc; + if (!stbi__mul2shorts_valid(dc, dequant[0])) return stbi__err("can't merge dc and ac", "Corrupt JPEG"); + data[0] = (short) (dc * dequant[0]); + + // decode AC components, see JPEG spec + k = 1; + do { + unsigned int zig; + int c,r,s; + if (j->code_bits < 16) stbi__grow_buffer_unsafe(j); + c = (j->code_buffer >> (32 - FAST_BITS)) & ((1 << FAST_BITS)-1); + r = fac[c]; + if (r) { // fast-AC path + k += (r >> 4) & 15; // run + s = r & 15; // combined length + if (s > j->code_bits) return stbi__err("bad huffman code", "Combined length longer than code bits available"); + j->code_buffer <<= s; + j->code_bits -= s; + // decode into unzigzag'd location + zig = stbi__jpeg_dezigzag[k++]; + data[zig] = (short) ((r >> 8) * dequant[zig]); + } else { + int rs = stbi__jpeg_huff_decode(j, hac); + if (rs < 0) return stbi__err("bad huffman code","Corrupt JPEG"); + s = rs & 15; + r = rs >> 4; + if (s == 0) { + if (rs != 0xf0) break; // end block + k += 16; + } else { + k += r; + // decode into unzigzag'd location + zig = stbi__jpeg_dezigzag[k++]; + data[zig] = (short) (stbi__extend_receive(j,s) * dequant[zig]); + } + } + } while (k < 64); + return 1; +} + +static int stbi__jpeg_decode_block_prog_dc(stbi__jpeg *j, short data[64], stbi__huffman *hdc, int b) +{ + int diff,dc; + int t; + if (j->spec_end != 0) return stbi__err("can't merge dc and ac", "Corrupt JPEG"); + + if (j->code_bits < 16) stbi__grow_buffer_unsafe(j); + + if (j->succ_high == 0) { + // first scan for DC coefficient, must be first + memset(data,0,64*sizeof(data[0])); // 0 all the ac values now + t = stbi__jpeg_huff_decode(j, hdc); + if (t < 0 || t > 15) return stbi__err("can't merge dc and ac", "Corrupt JPEG"); + diff = t ? stbi__extend_receive(j, t) : 0; + + if (!stbi__addints_valid(j->img_comp[b].dc_pred, diff)) return stbi__err("bad delta", "Corrupt JPEG"); + dc = j->img_comp[b].dc_pred + diff; + j->img_comp[b].dc_pred = dc; + if (!stbi__mul2shorts_valid(dc, 1 << j->succ_low)) return stbi__err("can't merge dc and ac", "Corrupt JPEG"); + data[0] = (short) (dc * (1 << j->succ_low)); + } else { + // refinement scan for DC coefficient + if (stbi__jpeg_get_bit(j)) + data[0] += (short) (1 << j->succ_low); + } + return 1; +} + +// @OPTIMIZE: store non-zigzagged during the decode passes, +// and only de-zigzag when dequantizing +static int stbi__jpeg_decode_block_prog_ac(stbi__jpeg *j, short data[64], stbi__huffman *hac, stbi__int16 *fac) +{ + int k; + if (j->spec_start == 0) return stbi__err("can't merge dc and ac", "Corrupt JPEG"); + + if (j->succ_high == 0) { + int shift = j->succ_low; + + if (j->eob_run) { + --j->eob_run; + return 1; + } + + k = j->spec_start; + do { + unsigned int zig; + int c,r,s; + if (j->code_bits < 16) stbi__grow_buffer_unsafe(j); + c = (j->code_buffer >> (32 - FAST_BITS)) & ((1 << FAST_BITS)-1); + r = fac[c]; + if (r) { // fast-AC path + k += (r >> 4) & 15; // run + s = r & 15; // combined length + if (s > j->code_bits) return stbi__err("bad huffman code", "Combined length longer than code bits available"); + j->code_buffer <<= s; + j->code_bits -= s; + zig = stbi__jpeg_dezigzag[k++]; + data[zig] = (short) ((r >> 8) * (1 << shift)); + } else { + int rs = stbi__jpeg_huff_decode(j, hac); + if (rs < 0) return stbi__err("bad huffman code","Corrupt JPEG"); + s = rs & 15; + r = rs >> 4; + if (s == 0) { + if (r < 15) { + j->eob_run = (1 << r); + if (r) + j->eob_run += stbi__jpeg_get_bits(j, r); + --j->eob_run; + break; + } + k += 16; + } else { + k += r; + zig = stbi__jpeg_dezigzag[k++]; + data[zig] = (short) (stbi__extend_receive(j,s) * (1 << shift)); + } + } + } while (k <= j->spec_end); + } else { + // refinement scan for these AC coefficients + + short bit = (short) (1 << j->succ_low); + + if (j->eob_run) { + --j->eob_run; + for (k = j->spec_start; k <= j->spec_end; ++k) { + short *p = &data[stbi__jpeg_dezigzag[k]]; + if (*p != 0) + if (stbi__jpeg_get_bit(j)) + if ((*p & bit)==0) { + if (*p > 0) + *p += bit; + else + *p -= bit; + } + } + } else { + k = j->spec_start; + do { + int r,s; + int rs = stbi__jpeg_huff_decode(j, hac); // @OPTIMIZE see if we can use the fast path here, advance-by-r is so slow, eh + if (rs < 0) return stbi__err("bad huffman code","Corrupt JPEG"); + s = rs & 15; + r = rs >> 4; + if (s == 0) { + if (r < 15) { + j->eob_run = (1 << r) - 1; + if (r) + j->eob_run += stbi__jpeg_get_bits(j, r); + r = 64; // force end of block + } else { + // r=15 s=0 should write 16 0s, so we just do + // a run of 15 0s and then write s (which is 0), + // so we don't have to do anything special here + } + } else { + if (s != 1) return stbi__err("bad huffman code", "Corrupt JPEG"); + // sign bit + if (stbi__jpeg_get_bit(j)) + s = bit; + else + s = -bit; + } + + // advance by r + while (k <= j->spec_end) { + short *p = &data[stbi__jpeg_dezigzag[k++]]; + if (*p != 0) { + if (stbi__jpeg_get_bit(j)) + if ((*p & bit)==0) { + if (*p > 0) + *p += bit; + else + *p -= bit; + } + } else { + if (r == 0) { + *p = (short) s; + break; + } + --r; + } + } + } while (k <= j->spec_end); + } + } + return 1; +} + +// take a -128..127 value and stbi__clamp it and convert to 0..255 +stbi_inline static stbi_uc stbi__clamp(int x) +{ + // trick to use a single test to catch both cases + if ((unsigned int) x > 255) { + if (x < 0) return 0; + if (x > 255) return 255; + } + return (stbi_uc) x; +} + +#define stbi__f2f(x) ((int) (((x) * 4096 + 0.5))) +#define stbi__fsh(x) ((x) * 4096) + +// derived from jidctint -- DCT_ISLOW +#define STBI__IDCT_1D(s0,s1,s2,s3,s4,s5,s6,s7) \ + int t0,t1,t2,t3,p1,p2,p3,p4,p5,x0,x1,x2,x3; \ + p2 = s2; \ + p3 = s6; \ + p1 = (p2+p3) * stbi__f2f(0.5411961f); \ + t2 = p1 + p3*stbi__f2f(-1.847759065f); \ + t3 = p1 + p2*stbi__f2f( 0.765366865f); \ + p2 = s0; \ + p3 = s4; \ + t0 = stbi__fsh(p2+p3); \ + t1 = stbi__fsh(p2-p3); \ + x0 = t0+t3; \ + x3 = t0-t3; \ + x1 = t1+t2; \ + x2 = t1-t2; \ + t0 = s7; \ + t1 = s5; \ + t2 = s3; \ + t3 = s1; \ + p3 = t0+t2; \ + p4 = t1+t3; \ + p1 = t0+t3; \ + p2 = t1+t2; \ + p5 = (p3+p4)*stbi__f2f( 1.175875602f); \ + t0 = t0*stbi__f2f( 0.298631336f); \ + t1 = t1*stbi__f2f( 2.053119869f); \ + t2 = t2*stbi__f2f( 3.072711026f); \ + t3 = t3*stbi__f2f( 1.501321110f); \ + p1 = p5 + p1*stbi__f2f(-0.899976223f); \ + p2 = p5 + p2*stbi__f2f(-2.562915447f); \ + p3 = p3*stbi__f2f(-1.961570560f); \ + p4 = p4*stbi__f2f(-0.390180644f); \ + t3 += p1+p4; \ + t2 += p2+p3; \ + t1 += p2+p4; \ + t0 += p1+p3; + +static void stbi__idct_block(stbi_uc *out, int out_stride, short data[64]) +{ + int i,val[64],*v=val; + stbi_uc *o; + short *d = data; + + // columns + for (i=0; i < 8; ++i,++d, ++v) { + // if all zeroes, shortcut -- this avoids dequantizing 0s and IDCTing + if (d[ 8]==0 && d[16]==0 && d[24]==0 && d[32]==0 + && d[40]==0 && d[48]==0 && d[56]==0) { + // no shortcut 0 seconds + // (1|2|3|4|5|6|7)==0 0 seconds + // all separate -0.047 seconds + // 1 && 2|3 && 4|5 && 6|7: -0.047 seconds + int dcterm = d[0]*4; + v[0] = v[8] = v[16] = v[24] = v[32] = v[40] = v[48] = v[56] = dcterm; + } else { + STBI__IDCT_1D(d[ 0],d[ 8],d[16],d[24],d[32],d[40],d[48],d[56]) + // constants scaled things up by 1<<12; let's bring them back + // down, but keep 2 extra bits of precision + x0 += 512; x1 += 512; x2 += 512; x3 += 512; + v[ 0] = (x0+t3) >> 10; + v[56] = (x0-t3) >> 10; + v[ 8] = (x1+t2) >> 10; + v[48] = (x1-t2) >> 10; + v[16] = (x2+t1) >> 10; + v[40] = (x2-t1) >> 10; + v[24] = (x3+t0) >> 10; + v[32] = (x3-t0) >> 10; + } + } + + for (i=0, v=val, o=out; i < 8; ++i,v+=8,o+=out_stride) { + // no fast case since the first 1D IDCT spread components out + STBI__IDCT_1D(v[0],v[1],v[2],v[3],v[4],v[5],v[6],v[7]) + // constants scaled things up by 1<<12, plus we had 1<<2 from first + // loop, plus horizontal and vertical each scale by sqrt(8) so together + // we've got an extra 1<<3, so 1<<17 total we need to remove. + // so we want to round that, which means adding 0.5 * 1<<17, + // aka 65536. Also, we'll end up with -128 to 127 that we want + // to encode as 0..255 by adding 128, so we'll add that before the shift + x0 += 65536 + (128<<17); + x1 += 65536 + (128<<17); + x2 += 65536 + (128<<17); + x3 += 65536 + (128<<17); + // tried computing the shifts into temps, or'ing the temps to see + // if any were out of range, but that was slower + o[0] = stbi__clamp((x0+t3) >> 17); + o[7] = stbi__clamp((x0-t3) >> 17); + o[1] = stbi__clamp((x1+t2) >> 17); + o[6] = stbi__clamp((x1-t2) >> 17); + o[2] = stbi__clamp((x2+t1) >> 17); + o[5] = stbi__clamp((x2-t1) >> 17); + o[3] = stbi__clamp((x3+t0) >> 17); + o[4] = stbi__clamp((x3-t0) >> 17); + } +} + +#ifdef STBI_SSE2 +// sse2 integer IDCT. not the fastest possible implementation but it +// produces bit-identical results to the generic C version so it's +// fully "transparent". +static void stbi__idct_simd(stbi_uc *out, int out_stride, short data[64]) +{ + // This is constructed to match our regular (generic) integer IDCT exactly. + __m128i row0, row1, row2, row3, row4, row5, row6, row7; + __m128i tmp; + + // dot product constant: even elems=x, odd elems=y + #define dct_const(x,y) _mm_setr_epi16((x),(y),(x),(y),(x),(y),(x),(y)) + + // out(0) = c0[even]*x + c0[odd]*y (c0, x, y 16-bit, out 32-bit) + // out(1) = c1[even]*x + c1[odd]*y + #define dct_rot(out0,out1, x,y,c0,c1) \ + __m128i c0##lo = _mm_unpacklo_epi16((x),(y)); \ + __m128i c0##hi = _mm_unpackhi_epi16((x),(y)); \ + __m128i out0##_l = _mm_madd_epi16(c0##lo, c0); \ + __m128i out0##_h = _mm_madd_epi16(c0##hi, c0); \ + __m128i out1##_l = _mm_madd_epi16(c0##lo, c1); \ + __m128i out1##_h = _mm_madd_epi16(c0##hi, c1) + + // out = in << 12 (in 16-bit, out 32-bit) + #define dct_widen(out, in) \ + __m128i out##_l = _mm_srai_epi32(_mm_unpacklo_epi16(_mm_setzero_si128(), (in)), 4); \ + __m128i out##_h = _mm_srai_epi32(_mm_unpackhi_epi16(_mm_setzero_si128(), (in)), 4) + + // wide add + #define dct_wadd(out, a, b) \ + __m128i out##_l = _mm_add_epi32(a##_l, b##_l); \ + __m128i out##_h = _mm_add_epi32(a##_h, b##_h) + + // wide sub + #define dct_wsub(out, a, b) \ + __m128i out##_l = _mm_sub_epi32(a##_l, b##_l); \ + __m128i out##_h = _mm_sub_epi32(a##_h, b##_h) + + // butterfly a/b, add bias, then shift by "s" and pack + #define dct_bfly32o(out0, out1, a,b,bias,s) \ + { \ + __m128i abiased_l = _mm_add_epi32(a##_l, bias); \ + __m128i abiased_h = _mm_add_epi32(a##_h, bias); \ + dct_wadd(sum, abiased, b); \ + dct_wsub(dif, abiased, b); \ + out0 = _mm_packs_epi32(_mm_srai_epi32(sum_l, s), _mm_srai_epi32(sum_h, s)); \ + out1 = _mm_packs_epi32(_mm_srai_epi32(dif_l, s), _mm_srai_epi32(dif_h, s)); \ + } + + // 8-bit interleave step (for transposes) + #define dct_interleave8(a, b) \ + tmp = a; \ + a = _mm_unpacklo_epi8(a, b); \ + b = _mm_unpackhi_epi8(tmp, b) + + // 16-bit interleave step (for transposes) + #define dct_interleave16(a, b) \ + tmp = a; \ + a = _mm_unpacklo_epi16(a, b); \ + b = _mm_unpackhi_epi16(tmp, b) + + #define dct_pass(bias,shift) \ + { \ + /* even part */ \ + dct_rot(t2e,t3e, row2,row6, rot0_0,rot0_1); \ + __m128i sum04 = _mm_add_epi16(row0, row4); \ + __m128i dif04 = _mm_sub_epi16(row0, row4); \ + dct_widen(t0e, sum04); \ + dct_widen(t1e, dif04); \ + dct_wadd(x0, t0e, t3e); \ + dct_wsub(x3, t0e, t3e); \ + dct_wadd(x1, t1e, t2e); \ + dct_wsub(x2, t1e, t2e); \ + /* odd part */ \ + dct_rot(y0o,y2o, row7,row3, rot2_0,rot2_1); \ + dct_rot(y1o,y3o, row5,row1, rot3_0,rot3_1); \ + __m128i sum17 = _mm_add_epi16(row1, row7); \ + __m128i sum35 = _mm_add_epi16(row3, row5); \ + dct_rot(y4o,y5o, sum17,sum35, rot1_0,rot1_1); \ + dct_wadd(x4, y0o, y4o); \ + dct_wadd(x5, y1o, y5o); \ + dct_wadd(x6, y2o, y5o); \ + dct_wadd(x7, y3o, y4o); \ + dct_bfly32o(row0,row7, x0,x7,bias,shift); \ + dct_bfly32o(row1,row6, x1,x6,bias,shift); \ + dct_bfly32o(row2,row5, x2,x5,bias,shift); \ + dct_bfly32o(row3,row4, x3,x4,bias,shift); \ + } + + __m128i rot0_0 = dct_const(stbi__f2f(0.5411961f), stbi__f2f(0.5411961f) + stbi__f2f(-1.847759065f)); + __m128i rot0_1 = dct_const(stbi__f2f(0.5411961f) + stbi__f2f( 0.765366865f), stbi__f2f(0.5411961f)); + __m128i rot1_0 = dct_const(stbi__f2f(1.175875602f) + stbi__f2f(-0.899976223f), stbi__f2f(1.175875602f)); + __m128i rot1_1 = dct_const(stbi__f2f(1.175875602f), stbi__f2f(1.175875602f) + stbi__f2f(-2.562915447f)); + __m128i rot2_0 = dct_const(stbi__f2f(-1.961570560f) + stbi__f2f( 0.298631336f), stbi__f2f(-1.961570560f)); + __m128i rot2_1 = dct_const(stbi__f2f(-1.961570560f), stbi__f2f(-1.961570560f) + stbi__f2f( 3.072711026f)); + __m128i rot3_0 = dct_const(stbi__f2f(-0.390180644f) + stbi__f2f( 2.053119869f), stbi__f2f(-0.390180644f)); + __m128i rot3_1 = dct_const(stbi__f2f(-0.390180644f), stbi__f2f(-0.390180644f) + stbi__f2f( 1.501321110f)); + + // rounding biases in column/row passes, see stbi__idct_block for explanation. + __m128i bias_0 = _mm_set1_epi32(512); + __m128i bias_1 = _mm_set1_epi32(65536 + (128<<17)); + + // load + row0 = _mm_load_si128((const __m128i *) (data + 0*8)); + row1 = _mm_load_si128((const __m128i *) (data + 1*8)); + row2 = _mm_load_si128((const __m128i *) (data + 2*8)); + row3 = _mm_load_si128((const __m128i *) (data + 3*8)); + row4 = _mm_load_si128((const __m128i *) (data + 4*8)); + row5 = _mm_load_si128((const __m128i *) (data + 5*8)); + row6 = _mm_load_si128((const __m128i *) (data + 6*8)); + row7 = _mm_load_si128((const __m128i *) (data + 7*8)); + + // column pass + dct_pass(bias_0, 10); + + { + // 16bit 8x8 transpose pass 1 + dct_interleave16(row0, row4); + dct_interleave16(row1, row5); + dct_interleave16(row2, row6); + dct_interleave16(row3, row7); + + // transpose pass 2 + dct_interleave16(row0, row2); + dct_interleave16(row1, row3); + dct_interleave16(row4, row6); + dct_interleave16(row5, row7); + + // transpose pass 3 + dct_interleave16(row0, row1); + dct_interleave16(row2, row3); + dct_interleave16(row4, row5); + dct_interleave16(row6, row7); + } + + // row pass + dct_pass(bias_1, 17); + + { + // pack + __m128i p0 = _mm_packus_epi16(row0, row1); // a0a1a2a3...a7b0b1b2b3...b7 + __m128i p1 = _mm_packus_epi16(row2, row3); + __m128i p2 = _mm_packus_epi16(row4, row5); + __m128i p3 = _mm_packus_epi16(row6, row7); + + // 8bit 8x8 transpose pass 1 + dct_interleave8(p0, p2); // a0e0a1e1... + dct_interleave8(p1, p3); // c0g0c1g1... + + // transpose pass 2 + dct_interleave8(p0, p1); // a0c0e0g0... + dct_interleave8(p2, p3); // b0d0f0h0... + + // transpose pass 3 + dct_interleave8(p0, p2); // a0b0c0d0... + dct_interleave8(p1, p3); // a4b4c4d4... + + // store + _mm_storel_epi64((__m128i *) out, p0); out += out_stride; + _mm_storel_epi64((__m128i *) out, _mm_shuffle_epi32(p0, 0x4e)); out += out_stride; + _mm_storel_epi64((__m128i *) out, p2); out += out_stride; + _mm_storel_epi64((__m128i *) out, _mm_shuffle_epi32(p2, 0x4e)); out += out_stride; + _mm_storel_epi64((__m128i *) out, p1); out += out_stride; + _mm_storel_epi64((__m128i *) out, _mm_shuffle_epi32(p1, 0x4e)); out += out_stride; + _mm_storel_epi64((__m128i *) out, p3); out += out_stride; + _mm_storel_epi64((__m128i *) out, _mm_shuffle_epi32(p3, 0x4e)); + } + +#undef dct_const +#undef dct_rot +#undef dct_widen +#undef dct_wadd +#undef dct_wsub +#undef dct_bfly32o +#undef dct_interleave8 +#undef dct_interleave16 +#undef dct_pass +} + +#endif // STBI_SSE2 + +#ifdef STBI_NEON + +// NEON integer IDCT. should produce bit-identical +// results to the generic C version. +static void stbi__idct_simd(stbi_uc *out, int out_stride, short data[64]) +{ + int16x8_t row0, row1, row2, row3, row4, row5, row6, row7; + + int16x4_t rot0_0 = vdup_n_s16(stbi__f2f(0.5411961f)); + int16x4_t rot0_1 = vdup_n_s16(stbi__f2f(-1.847759065f)); + int16x4_t rot0_2 = vdup_n_s16(stbi__f2f( 0.765366865f)); + int16x4_t rot1_0 = vdup_n_s16(stbi__f2f( 1.175875602f)); + int16x4_t rot1_1 = vdup_n_s16(stbi__f2f(-0.899976223f)); + int16x4_t rot1_2 = vdup_n_s16(stbi__f2f(-2.562915447f)); + int16x4_t rot2_0 = vdup_n_s16(stbi__f2f(-1.961570560f)); + int16x4_t rot2_1 = vdup_n_s16(stbi__f2f(-0.390180644f)); + int16x4_t rot3_0 = vdup_n_s16(stbi__f2f( 0.298631336f)); + int16x4_t rot3_1 = vdup_n_s16(stbi__f2f( 2.053119869f)); + int16x4_t rot3_2 = vdup_n_s16(stbi__f2f( 3.072711026f)); + int16x4_t rot3_3 = vdup_n_s16(stbi__f2f( 1.501321110f)); + +#define dct_long_mul(out, inq, coeff) \ + int32x4_t out##_l = vmull_s16(vget_low_s16(inq), coeff); \ + int32x4_t out##_h = vmull_s16(vget_high_s16(inq), coeff) + +#define dct_long_mac(out, acc, inq, coeff) \ + int32x4_t out##_l = vmlal_s16(acc##_l, vget_low_s16(inq), coeff); \ + int32x4_t out##_h = vmlal_s16(acc##_h, vget_high_s16(inq), coeff) + +#define dct_widen(out, inq) \ + int32x4_t out##_l = vshll_n_s16(vget_low_s16(inq), 12); \ + int32x4_t out##_h = vshll_n_s16(vget_high_s16(inq), 12) + +// wide add +#define dct_wadd(out, a, b) \ + int32x4_t out##_l = vaddq_s32(a##_l, b##_l); \ + int32x4_t out##_h = vaddq_s32(a##_h, b##_h) + +// wide sub +#define dct_wsub(out, a, b) \ + int32x4_t out##_l = vsubq_s32(a##_l, b##_l); \ + int32x4_t out##_h = vsubq_s32(a##_h, b##_h) + +// butterfly a/b, then shift using "shiftop" by "s" and pack +#define dct_bfly32o(out0,out1, a,b,shiftop,s) \ + { \ + dct_wadd(sum, a, b); \ + dct_wsub(dif, a, b); \ + out0 = vcombine_s16(shiftop(sum_l, s), shiftop(sum_h, s)); \ + out1 = vcombine_s16(shiftop(dif_l, s), shiftop(dif_h, s)); \ + } + +#define dct_pass(shiftop, shift) \ + { \ + /* even part */ \ + int16x8_t sum26 = vaddq_s16(row2, row6); \ + dct_long_mul(p1e, sum26, rot0_0); \ + dct_long_mac(t2e, p1e, row6, rot0_1); \ + dct_long_mac(t3e, p1e, row2, rot0_2); \ + int16x8_t sum04 = vaddq_s16(row0, row4); \ + int16x8_t dif04 = vsubq_s16(row0, row4); \ + dct_widen(t0e, sum04); \ + dct_widen(t1e, dif04); \ + dct_wadd(x0, t0e, t3e); \ + dct_wsub(x3, t0e, t3e); \ + dct_wadd(x1, t1e, t2e); \ + dct_wsub(x2, t1e, t2e); \ + /* odd part */ \ + int16x8_t sum15 = vaddq_s16(row1, row5); \ + int16x8_t sum17 = vaddq_s16(row1, row7); \ + int16x8_t sum35 = vaddq_s16(row3, row5); \ + int16x8_t sum37 = vaddq_s16(row3, row7); \ + int16x8_t sumodd = vaddq_s16(sum17, sum35); \ + dct_long_mul(p5o, sumodd, rot1_0); \ + dct_long_mac(p1o, p5o, sum17, rot1_1); \ + dct_long_mac(p2o, p5o, sum35, rot1_2); \ + dct_long_mul(p3o, sum37, rot2_0); \ + dct_long_mul(p4o, sum15, rot2_1); \ + dct_wadd(sump13o, p1o, p3o); \ + dct_wadd(sump24o, p2o, p4o); \ + dct_wadd(sump23o, p2o, p3o); \ + dct_wadd(sump14o, p1o, p4o); \ + dct_long_mac(x4, sump13o, row7, rot3_0); \ + dct_long_mac(x5, sump24o, row5, rot3_1); \ + dct_long_mac(x6, sump23o, row3, rot3_2); \ + dct_long_mac(x7, sump14o, row1, rot3_3); \ + dct_bfly32o(row0,row7, x0,x7,shiftop,shift); \ + dct_bfly32o(row1,row6, x1,x6,shiftop,shift); \ + dct_bfly32o(row2,row5, x2,x5,shiftop,shift); \ + dct_bfly32o(row3,row4, x3,x4,shiftop,shift); \ + } + + // load + row0 = vld1q_s16(data + 0*8); + row1 = vld1q_s16(data + 1*8); + row2 = vld1q_s16(data + 2*8); + row3 = vld1q_s16(data + 3*8); + row4 = vld1q_s16(data + 4*8); + row5 = vld1q_s16(data + 5*8); + row6 = vld1q_s16(data + 6*8); + row7 = vld1q_s16(data + 7*8); + + // add DC bias + row0 = vaddq_s16(row0, vsetq_lane_s16(1024, vdupq_n_s16(0), 0)); + + // column pass + dct_pass(vrshrn_n_s32, 10); + + // 16bit 8x8 transpose + { +// these three map to a single VTRN.16, VTRN.32, and VSWP, respectively. +// whether compilers actually get this is another story, sadly. +#define dct_trn16(x, y) { int16x8x2_t t = vtrnq_s16(x, y); x = t.val[0]; y = t.val[1]; } +#define dct_trn32(x, y) { int32x4x2_t t = vtrnq_s32(vreinterpretq_s32_s16(x), vreinterpretq_s32_s16(y)); x = vreinterpretq_s16_s32(t.val[0]); y = vreinterpretq_s16_s32(t.val[1]); } +#define dct_trn64(x, y) { int16x8_t x0 = x; int16x8_t y0 = y; x = vcombine_s16(vget_low_s16(x0), vget_low_s16(y0)); y = vcombine_s16(vget_high_s16(x0), vget_high_s16(y0)); } + + // pass 1 + dct_trn16(row0, row1); // a0b0a2b2a4b4a6b6 + dct_trn16(row2, row3); + dct_trn16(row4, row5); + dct_trn16(row6, row7); + + // pass 2 + dct_trn32(row0, row2); // a0b0c0d0a4b4c4d4 + dct_trn32(row1, row3); + dct_trn32(row4, row6); + dct_trn32(row5, row7); + + // pass 3 + dct_trn64(row0, row4); // a0b0c0d0e0f0g0h0 + dct_trn64(row1, row5); + dct_trn64(row2, row6); + dct_trn64(row3, row7); + +#undef dct_trn16 +#undef dct_trn32 +#undef dct_trn64 + } + + // row pass + // vrshrn_n_s32 only supports shifts up to 16, we need + // 17. so do a non-rounding shift of 16 first then follow + // up with a rounding shift by 1. + dct_pass(vshrn_n_s32, 16); + + { + // pack and round + uint8x8_t p0 = vqrshrun_n_s16(row0, 1); + uint8x8_t p1 = vqrshrun_n_s16(row1, 1); + uint8x8_t p2 = vqrshrun_n_s16(row2, 1); + uint8x8_t p3 = vqrshrun_n_s16(row3, 1); + uint8x8_t p4 = vqrshrun_n_s16(row4, 1); + uint8x8_t p5 = vqrshrun_n_s16(row5, 1); + uint8x8_t p6 = vqrshrun_n_s16(row6, 1); + uint8x8_t p7 = vqrshrun_n_s16(row7, 1); + + // again, these can translate into one instruction, but often don't. +#define dct_trn8_8(x, y) { uint8x8x2_t t = vtrn_u8(x, y); x = t.val[0]; y = t.val[1]; } +#define dct_trn8_16(x, y) { uint16x4x2_t t = vtrn_u16(vreinterpret_u16_u8(x), vreinterpret_u16_u8(y)); x = vreinterpret_u8_u16(t.val[0]); y = vreinterpret_u8_u16(t.val[1]); } +#define dct_trn8_32(x, y) { uint32x2x2_t t = vtrn_u32(vreinterpret_u32_u8(x), vreinterpret_u32_u8(y)); x = vreinterpret_u8_u32(t.val[0]); y = vreinterpret_u8_u32(t.val[1]); } + + // sadly can't use interleaved stores here since we only write + // 8 bytes to each scan line! + + // 8x8 8-bit transpose pass 1 + dct_trn8_8(p0, p1); + dct_trn8_8(p2, p3); + dct_trn8_8(p4, p5); + dct_trn8_8(p6, p7); + + // pass 2 + dct_trn8_16(p0, p2); + dct_trn8_16(p1, p3); + dct_trn8_16(p4, p6); + dct_trn8_16(p5, p7); + + // pass 3 + dct_trn8_32(p0, p4); + dct_trn8_32(p1, p5); + dct_trn8_32(p2, p6); + dct_trn8_32(p3, p7); + + // store + vst1_u8(out, p0); out += out_stride; + vst1_u8(out, p1); out += out_stride; + vst1_u8(out, p2); out += out_stride; + vst1_u8(out, p3); out += out_stride; + vst1_u8(out, p4); out += out_stride; + vst1_u8(out, p5); out += out_stride; + vst1_u8(out, p6); out += out_stride; + vst1_u8(out, p7); + +#undef dct_trn8_8 +#undef dct_trn8_16 +#undef dct_trn8_32 + } + +#undef dct_long_mul +#undef dct_long_mac +#undef dct_widen +#undef dct_wadd +#undef dct_wsub +#undef dct_bfly32o +#undef dct_pass +} + +#endif // STBI_NEON + +#define STBI__MARKER_none 0xff +// if there's a pending marker from the entropy stream, return that +// otherwise, fetch from the stream and get a marker. if there's no +// marker, return 0xff, which is never a valid marker value +static stbi_uc stbi__get_marker(stbi__jpeg *j) +{ + stbi_uc x; + if (j->marker != STBI__MARKER_none) { x = j->marker; j->marker = STBI__MARKER_none; return x; } + x = stbi__get8(j->s); + if (x != 0xff) return STBI__MARKER_none; + while (x == 0xff) + x = stbi__get8(j->s); // consume repeated 0xff fill bytes + return x; +} + +// in each scan, we'll have scan_n components, and the order +// of the components is specified by order[] +#define STBI__RESTART(x) ((x) >= 0xd0 && (x) <= 0xd7) + +// after a restart interval, stbi__jpeg_reset the entropy decoder and +// the dc prediction +static void stbi__jpeg_reset(stbi__jpeg *j) +{ + j->code_bits = 0; + j->code_buffer = 0; + j->nomore = 0; + j->img_comp[0].dc_pred = j->img_comp[1].dc_pred = j->img_comp[2].dc_pred = j->img_comp[3].dc_pred = 0; + j->marker = STBI__MARKER_none; + j->todo = j->restart_interval ? j->restart_interval : 0x7fffffff; + j->eob_run = 0; + // no more than 1<<31 MCUs if no restart_interal? that's plenty safe, + // since we don't even allow 1<<30 pixels +} + +static int stbi__parse_entropy_coded_data(stbi__jpeg *z) +{ + stbi__jpeg_reset(z); + if (!z->progressive) { + if (z->scan_n == 1) { + int i,j; + STBI_SIMD_ALIGN(short, data[64]); + int n = z->order[0]; + // non-interleaved data, we just need to process one block at a time, + // in trivial scanline order + // number of blocks to do just depends on how many actual "pixels" this + // component has, independent of interleaved MCU blocking and such + int w = (z->img_comp[n].x+7) >> 3; + int h = (z->img_comp[n].y+7) >> 3; + for (j=0; j < h; ++j) { + for (i=0; i < w; ++i) { + int ha = z->img_comp[n].ha; + if (!stbi__jpeg_decode_block(z, data, z->huff_dc+z->img_comp[n].hd, z->huff_ac+ha, z->fast_ac[ha], n, z->dequant[z->img_comp[n].tq])) return 0; + z->idct_block_kernel(z->img_comp[n].data+z->img_comp[n].w2*j*8+i*8, z->img_comp[n].w2, data); + // every data block is an MCU, so countdown the restart interval + if (--z->todo <= 0) { + if (z->code_bits < 24) stbi__grow_buffer_unsafe(z); + // if it's NOT a restart, then just bail, so we get corrupt data + // rather than no data + if (!STBI__RESTART(z->marker)) return 1; + stbi__jpeg_reset(z); + } + } + } + return 1; + } else { // interleaved + int i,j,k,x,y; + STBI_SIMD_ALIGN(short, data[64]); + for (j=0; j < z->img_mcu_y; ++j) { + for (i=0; i < z->img_mcu_x; ++i) { + // scan an interleaved mcu... process scan_n components in order + for (k=0; k < z->scan_n; ++k) { + int n = z->order[k]; + // scan out an mcu's worth of this component; that's just determined + // by the basic H and V specified for the component + for (y=0; y < z->img_comp[n].v; ++y) { + for (x=0; x < z->img_comp[n].h; ++x) { + int x2 = (i*z->img_comp[n].h + x)*8; + int y2 = (j*z->img_comp[n].v + y)*8; + int ha = z->img_comp[n].ha; + if (!stbi__jpeg_decode_block(z, data, z->huff_dc+z->img_comp[n].hd, z->huff_ac+ha, z->fast_ac[ha], n, z->dequant[z->img_comp[n].tq])) return 0; + z->idct_block_kernel(z->img_comp[n].data+z->img_comp[n].w2*y2+x2, z->img_comp[n].w2, data); + } + } + } + // after all interleaved components, that's an interleaved MCU, + // so now count down the restart interval + if (--z->todo <= 0) { + if (z->code_bits < 24) stbi__grow_buffer_unsafe(z); + if (!STBI__RESTART(z->marker)) return 1; + stbi__jpeg_reset(z); + } + } + } + return 1; + } + } else { + if (z->scan_n == 1) { + int i,j; + int n = z->order[0]; + // non-interleaved data, we just need to process one block at a time, + // in trivial scanline order + // number of blocks to do just depends on how many actual "pixels" this + // component has, independent of interleaved MCU blocking and such + int w = (z->img_comp[n].x+7) >> 3; + int h = (z->img_comp[n].y+7) >> 3; + for (j=0; j < h; ++j) { + for (i=0; i < w; ++i) { + short *data = z->img_comp[n].coeff + 64 * (i + j * z->img_comp[n].coeff_w); + if (z->spec_start == 0) { + if (!stbi__jpeg_decode_block_prog_dc(z, data, &z->huff_dc[z->img_comp[n].hd], n)) + return 0; + } else { + int ha = z->img_comp[n].ha; + if (!stbi__jpeg_decode_block_prog_ac(z, data, &z->huff_ac[ha], z->fast_ac[ha])) + return 0; + } + // every data block is an MCU, so countdown the restart interval + if (--z->todo <= 0) { + if (z->code_bits < 24) stbi__grow_buffer_unsafe(z); + if (!STBI__RESTART(z->marker)) return 1; + stbi__jpeg_reset(z); + } + } + } + return 1; + } else { // interleaved + int i,j,k,x,y; + for (j=0; j < z->img_mcu_y; ++j) { + for (i=0; i < z->img_mcu_x; ++i) { + // scan an interleaved mcu... process scan_n components in order + for (k=0; k < z->scan_n; ++k) { + int n = z->order[k]; + // scan out an mcu's worth of this component; that's just determined + // by the basic H and V specified for the component + for (y=0; y < z->img_comp[n].v; ++y) { + for (x=0; x < z->img_comp[n].h; ++x) { + int x2 = (i*z->img_comp[n].h + x); + int y2 = (j*z->img_comp[n].v + y); + short *data = z->img_comp[n].coeff + 64 * (x2 + y2 * z->img_comp[n].coeff_w); + if (!stbi__jpeg_decode_block_prog_dc(z, data, &z->huff_dc[z->img_comp[n].hd], n)) + return 0; + } + } + } + // after all interleaved components, that's an interleaved MCU, + // so now count down the restart interval + if (--z->todo <= 0) { + if (z->code_bits < 24) stbi__grow_buffer_unsafe(z); + if (!STBI__RESTART(z->marker)) return 1; + stbi__jpeg_reset(z); + } + } + } + return 1; + } + } +} + +static void stbi__jpeg_dequantize(short *data, stbi__uint16 *dequant) +{ + int i; + for (i=0; i < 64; ++i) + data[i] *= dequant[i]; +} + +static void stbi__jpeg_finish(stbi__jpeg *z) +{ + if (z->progressive) { + // dequantize and idct the data + int i,j,n; + for (n=0; n < z->s->img_n; ++n) { + int w = (z->img_comp[n].x+7) >> 3; + int h = (z->img_comp[n].y+7) >> 3; + for (j=0; j < h; ++j) { + for (i=0; i < w; ++i) { + short *data = z->img_comp[n].coeff + 64 * (i + j * z->img_comp[n].coeff_w); + stbi__jpeg_dequantize(data, z->dequant[z->img_comp[n].tq]); + z->idct_block_kernel(z->img_comp[n].data+z->img_comp[n].w2*j*8+i*8, z->img_comp[n].w2, data); + } + } + } + } +} + +static int stbi__process_marker(stbi__jpeg *z, int m) +{ + int L; + switch (m) { + case STBI__MARKER_none: // no marker found + return stbi__err("expected marker","Corrupt JPEG"); + + case 0xDD: // DRI - specify restart interval + if (stbi__get16be(z->s) != 4) return stbi__err("bad DRI len","Corrupt JPEG"); + z->restart_interval = stbi__get16be(z->s); + return 1; + + case 0xDB: // DQT - define quantization table + L = stbi__get16be(z->s)-2; + while (L > 0) { + int q = stbi__get8(z->s); + int p = q >> 4, sixteen = (p != 0); + int t = q & 15,i; + if (p != 0 && p != 1) return stbi__err("bad DQT type","Corrupt JPEG"); + if (t > 3) return stbi__err("bad DQT table","Corrupt JPEG"); + + for (i=0; i < 64; ++i) + z->dequant[t][stbi__jpeg_dezigzag[i]] = (stbi__uint16)(sixteen ? stbi__get16be(z->s) : stbi__get8(z->s)); + L -= (sixteen ? 129 : 65); + } + return L==0; + + case 0xC4: // DHT - define huffman table + L = stbi__get16be(z->s)-2; + while (L > 0) { + stbi_uc *v; + int sizes[16],i,n=0; + int q = stbi__get8(z->s); + int tc = q >> 4; + int th = q & 15; + if (tc > 1 || th > 3) return stbi__err("bad DHT header","Corrupt JPEG"); + for (i=0; i < 16; ++i) { + sizes[i] = stbi__get8(z->s); + n += sizes[i]; + } + if(n > 256) return stbi__err("bad DHT header","Corrupt JPEG"); // Loop over i < n would write past end of values! + L -= 17; + if (tc == 0) { + if (!stbi__build_huffman(z->huff_dc+th, sizes)) return 0; + v = z->huff_dc[th].values; + } else { + if (!stbi__build_huffman(z->huff_ac+th, sizes)) return 0; + v = z->huff_ac[th].values; + } + for (i=0; i < n; ++i) + v[i] = stbi__get8(z->s); + if (tc != 0) + stbi__build_fast_ac(z->fast_ac[th], z->huff_ac + th); + L -= n; + } + return L==0; + } + + // check for comment block or APP blocks + if ((m >= 0xE0 && m <= 0xEF) || m == 0xFE) { + L = stbi__get16be(z->s); + if (L < 2) { + if (m == 0xFE) + return stbi__err("bad COM len","Corrupt JPEG"); + else + return stbi__err("bad APP len","Corrupt JPEG"); + } + L -= 2; + + if (m == 0xE0 && L >= 5) { // JFIF APP0 segment + static const unsigned char tag[5] = {'J','F','I','F','\0'}; + int ok = 1; + int i; + for (i=0; i < 5; ++i) + if (stbi__get8(z->s) != tag[i]) + ok = 0; + L -= 5; + if (ok) + z->jfif = 1; + } else if (m == 0xEE && L >= 12) { // Adobe APP14 segment + static const unsigned char tag[6] = {'A','d','o','b','e','\0'}; + int ok = 1; + int i; + for (i=0; i < 6; ++i) + if (stbi__get8(z->s) != tag[i]) + ok = 0; + L -= 6; + if (ok) { + stbi__get8(z->s); // version + stbi__get16be(z->s); // flags0 + stbi__get16be(z->s); // flags1 + z->app14_color_transform = stbi__get8(z->s); // color transform + L -= 6; + } + } + + stbi__skip(z->s, L); + return 1; + } + + return stbi__err("unknown marker","Corrupt JPEG"); +} + +// after we see SOS +static int stbi__process_scan_header(stbi__jpeg *z) +{ + int i; + int Ls = stbi__get16be(z->s); + z->scan_n = stbi__get8(z->s); + if (z->scan_n < 1 || z->scan_n > 4 || z->scan_n > (int) z->s->img_n) return stbi__err("bad SOS component count","Corrupt JPEG"); + if (Ls != 6+2*z->scan_n) return stbi__err("bad SOS len","Corrupt JPEG"); + for (i=0; i < z->scan_n; ++i) { + int id = stbi__get8(z->s), which; + int q = stbi__get8(z->s); + for (which = 0; which < z->s->img_n; ++which) + if (z->img_comp[which].id == id) + break; + if (which == z->s->img_n) return 0; // no match + z->img_comp[which].hd = q >> 4; if (z->img_comp[which].hd > 3) return stbi__err("bad DC huff","Corrupt JPEG"); + z->img_comp[which].ha = q & 15; if (z->img_comp[which].ha > 3) return stbi__err("bad AC huff","Corrupt JPEG"); + z->order[i] = which; + } + + { + int aa; + z->spec_start = stbi__get8(z->s); + z->spec_end = stbi__get8(z->s); // should be 63, but might be 0 + aa = stbi__get8(z->s); + z->succ_high = (aa >> 4); + z->succ_low = (aa & 15); + if (z->progressive) { + if (z->spec_start > 63 || z->spec_end > 63 || z->spec_start > z->spec_end || z->succ_high > 13 || z->succ_low > 13) + return stbi__err("bad SOS", "Corrupt JPEG"); + } else { + if (z->spec_start != 0) return stbi__err("bad SOS","Corrupt JPEG"); + if (z->succ_high != 0 || z->succ_low != 0) return stbi__err("bad SOS","Corrupt JPEG"); + z->spec_end = 63; + } + } + + return 1; +} + +static int stbi__free_jpeg_components(stbi__jpeg *z, int ncomp, int why) +{ + int i; + for (i=0; i < ncomp; ++i) { + if (z->img_comp[i].raw_data) { + STBI_FREE(z->img_comp[i].raw_data); + z->img_comp[i].raw_data = NULL; + z->img_comp[i].data = NULL; + } + if (z->img_comp[i].raw_coeff) { + STBI_FREE(z->img_comp[i].raw_coeff); + z->img_comp[i].raw_coeff = 0; + z->img_comp[i].coeff = 0; + } + if (z->img_comp[i].linebuf) { + STBI_FREE(z->img_comp[i].linebuf); + z->img_comp[i].linebuf = NULL; + } + } + return why; +} + +static int stbi__process_frame_header(stbi__jpeg *z, int scan) +{ + stbi__context *s = z->s; + int Lf,p,i,q, h_max=1,v_max=1,c; + Lf = stbi__get16be(s); if (Lf < 11) return stbi__err("bad SOF len","Corrupt JPEG"); // JPEG + p = stbi__get8(s); if (p != 8) return stbi__err("only 8-bit","JPEG format not supported: 8-bit only"); // JPEG baseline + s->img_y = stbi__get16be(s); if (s->img_y == 0) return stbi__err("no header height", "JPEG format not supported: delayed height"); // Legal, but we don't handle it--but neither does IJG + s->img_x = stbi__get16be(s); if (s->img_x == 0) return stbi__err("0 width","Corrupt JPEG"); // JPEG requires + if (s->img_y > STBI_MAX_DIMENSIONS) return stbi__err("too large","Very large image (corrupt?)"); + if (s->img_x > STBI_MAX_DIMENSIONS) return stbi__err("too large","Very large image (corrupt?)"); + c = stbi__get8(s); + if (c != 3 && c != 1 && c != 4) return stbi__err("bad component count","Corrupt JPEG"); + s->img_n = c; + for (i=0; i < c; ++i) { + z->img_comp[i].data = NULL; + z->img_comp[i].linebuf = NULL; + } + + if (Lf != 8+3*s->img_n) return stbi__err("bad SOF len","Corrupt JPEG"); + + z->rgb = 0; + for (i=0; i < s->img_n; ++i) { + static const unsigned char rgb[3] = { 'R', 'G', 'B' }; + z->img_comp[i].id = stbi__get8(s); + if (s->img_n == 3 && z->img_comp[i].id == rgb[i]) + ++z->rgb; + q = stbi__get8(s); + z->img_comp[i].h = (q >> 4); if (!z->img_comp[i].h || z->img_comp[i].h > 4) return stbi__err("bad H","Corrupt JPEG"); + z->img_comp[i].v = q & 15; if (!z->img_comp[i].v || z->img_comp[i].v > 4) return stbi__err("bad V","Corrupt JPEG"); + z->img_comp[i].tq = stbi__get8(s); if (z->img_comp[i].tq > 3) return stbi__err("bad TQ","Corrupt JPEG"); + } + + if (scan != STBI__SCAN_load) return 1; + + if (!stbi__mad3sizes_valid(s->img_x, s->img_y, s->img_n, 0)) return stbi__err("too large", "Image too large to decode"); + + for (i=0; i < s->img_n; ++i) { + if (z->img_comp[i].h > h_max) h_max = z->img_comp[i].h; + if (z->img_comp[i].v > v_max) v_max = z->img_comp[i].v; + } + + // check that plane subsampling factors are integer ratios; our resamplers can't deal with fractional ratios + // and I've never seen a non-corrupted JPEG file actually use them + for (i=0; i < s->img_n; ++i) { + if (h_max % z->img_comp[i].h != 0) return stbi__err("bad H","Corrupt JPEG"); + if (v_max % z->img_comp[i].v != 0) return stbi__err("bad V","Corrupt JPEG"); + } + + // compute interleaved mcu info + z->img_h_max = h_max; + z->img_v_max = v_max; + z->img_mcu_w = h_max * 8; + z->img_mcu_h = v_max * 8; + // these sizes can't be more than 17 bits + z->img_mcu_x = (s->img_x + z->img_mcu_w-1) / z->img_mcu_w; + z->img_mcu_y = (s->img_y + z->img_mcu_h-1) / z->img_mcu_h; + + for (i=0; i < s->img_n; ++i) { + // number of effective pixels (e.g. for non-interleaved MCU) + z->img_comp[i].x = (s->img_x * z->img_comp[i].h + h_max-1) / h_max; + z->img_comp[i].y = (s->img_y * z->img_comp[i].v + v_max-1) / v_max; + // to simplify generation, we'll allocate enough memory to decode + // the bogus oversized data from using interleaved MCUs and their + // big blocks (e.g. a 16x16 iMCU on an image of width 33); we won't + // discard the extra data until colorspace conversion + // + // img_mcu_x, img_mcu_y: <=17 bits; comp[i].h and .v are <=4 (checked earlier) + // so these muls can't overflow with 32-bit ints (which we require) + z->img_comp[i].w2 = z->img_mcu_x * z->img_comp[i].h * 8; + z->img_comp[i].h2 = z->img_mcu_y * z->img_comp[i].v * 8; + z->img_comp[i].coeff = 0; + z->img_comp[i].raw_coeff = 0; + z->img_comp[i].linebuf = NULL; + z->img_comp[i].raw_data = stbi__malloc_mad2(z->img_comp[i].w2, z->img_comp[i].h2, 15); + if (z->img_comp[i].raw_data == NULL) + return stbi__free_jpeg_components(z, i+1, stbi__err("outofmem", "Out of memory")); + // align blocks for idct using mmx/sse + z->img_comp[i].data = (stbi_uc*) (((size_t) z->img_comp[i].raw_data + 15) & ~15); + if (z->progressive) { + // w2, h2 are multiples of 8 (see above) + z->img_comp[i].coeff_w = z->img_comp[i].w2 / 8; + z->img_comp[i].coeff_h = z->img_comp[i].h2 / 8; + z->img_comp[i].raw_coeff = stbi__malloc_mad3(z->img_comp[i].w2, z->img_comp[i].h2, sizeof(short), 15); + if (z->img_comp[i].raw_coeff == NULL) + return stbi__free_jpeg_components(z, i+1, stbi__err("outofmem", "Out of memory")); + z->img_comp[i].coeff = (short*) (((size_t) z->img_comp[i].raw_coeff + 15) & ~15); + } + } + + return 1; +} + +// use comparisons since in some cases we handle more than one case (e.g. SOF) +#define stbi__DNL(x) ((x) == 0xdc) +#define stbi__SOI(x) ((x) == 0xd8) +#define stbi__EOI(x) ((x) == 0xd9) +#define stbi__SOF(x) ((x) == 0xc0 || (x) == 0xc1 || (x) == 0xc2) +#define stbi__SOS(x) ((x) == 0xda) + +#define stbi__SOF_progressive(x) ((x) == 0xc2) + +static int stbi__decode_jpeg_header(stbi__jpeg *z, int scan) +{ + int m; + z->jfif = 0; + z->app14_color_transform = -1; // valid values are 0,1,2 + z->marker = STBI__MARKER_none; // initialize cached marker to empty + m = stbi__get_marker(z); + if (!stbi__SOI(m)) return stbi__err("no SOI","Corrupt JPEG"); + if (scan == STBI__SCAN_type) return 1; + m = stbi__get_marker(z); + while (!stbi__SOF(m)) { + if (!stbi__process_marker(z,m)) return 0; + m = stbi__get_marker(z); + while (m == STBI__MARKER_none) { + // some files have extra padding after their blocks, so ok, we'll scan + if (stbi__at_eof(z->s)) return stbi__err("no SOF", "Corrupt JPEG"); + m = stbi__get_marker(z); + } + } + z->progressive = stbi__SOF_progressive(m); + if (!stbi__process_frame_header(z, scan)) return 0; + return 1; +} + +static stbi_uc stbi__skip_jpeg_junk_at_end(stbi__jpeg *j) +{ + // some JPEGs have junk at end, skip over it but if we find what looks + // like a valid marker, resume there + while (!stbi__at_eof(j->s)) { + stbi_uc x = stbi__get8(j->s); + while (x == 0xff) { // might be a marker + if (stbi__at_eof(j->s)) return STBI__MARKER_none; + x = stbi__get8(j->s); + if (x != 0x00 && x != 0xff) { + // not a stuffed zero or lead-in to another marker, looks + // like an actual marker, return it + return x; + } + // stuffed zero has x=0 now which ends the loop, meaning we go + // back to regular scan loop. + // repeated 0xff keeps trying to read the next byte of the marker. + } + } + return STBI__MARKER_none; +} + +// decode image to YCbCr format +static int stbi__decode_jpeg_image(stbi__jpeg *j) +{ + int m; + for (m = 0; m < 4; m++) { + j->img_comp[m].raw_data = NULL; + j->img_comp[m].raw_coeff = NULL; + } + j->restart_interval = 0; + if (!stbi__decode_jpeg_header(j, STBI__SCAN_load)) return 0; + m = stbi__get_marker(j); + while (!stbi__EOI(m)) { + if (stbi__SOS(m)) { + if (!stbi__process_scan_header(j)) return 0; + if (!stbi__parse_entropy_coded_data(j)) return 0; + if (j->marker == STBI__MARKER_none ) { + j->marker = stbi__skip_jpeg_junk_at_end(j); + // if we reach eof without hitting a marker, stbi__get_marker() below will fail and we'll eventually return 0 + } + m = stbi__get_marker(j); + if (STBI__RESTART(m)) + m = stbi__get_marker(j); + } else if (stbi__DNL(m)) { + int Ld = stbi__get16be(j->s); + stbi__uint32 NL = stbi__get16be(j->s); + if (Ld != 4) return stbi__err("bad DNL len", "Corrupt JPEG"); + if (NL != j->s->img_y) return stbi__err("bad DNL height", "Corrupt JPEG"); + m = stbi__get_marker(j); + } else { + if (!stbi__process_marker(j, m)) return 1; + m = stbi__get_marker(j); + } + } + if (j->progressive) + stbi__jpeg_finish(j); + return 1; +} + +// static jfif-centered resampling (across block boundaries) + +typedef stbi_uc *(*resample_row_func)(stbi_uc *out, stbi_uc *in0, stbi_uc *in1, + int w, int hs); + +#define stbi__div4(x) ((stbi_uc) ((x) >> 2)) + +static stbi_uc *resample_row_1(stbi_uc *out, stbi_uc *in_near, stbi_uc *in_far, int w, int hs) +{ + STBI_NOTUSED(out); + STBI_NOTUSED(in_far); + STBI_NOTUSED(w); + STBI_NOTUSED(hs); + return in_near; +} + +static stbi_uc* stbi__resample_row_v_2(stbi_uc *out, stbi_uc *in_near, stbi_uc *in_far, int w, int hs) +{ + // need to generate two samples vertically for every one in input + int i; + STBI_NOTUSED(hs); + for (i=0; i < w; ++i) + out[i] = stbi__div4(3*in_near[i] + in_far[i] + 2); + return out; +} + +static stbi_uc* stbi__resample_row_h_2(stbi_uc *out, stbi_uc *in_near, stbi_uc *in_far, int w, int hs) +{ + // need to generate two samples horizontally for every one in input + int i; + stbi_uc *input = in_near; + + if (w == 1) { + // if only one sample, can't do any interpolation + out[0] = out[1] = input[0]; + return out; + } + + out[0] = input[0]; + out[1] = stbi__div4(input[0]*3 + input[1] + 2); + for (i=1; i < w-1; ++i) { + int n = 3*input[i]+2; + out[i*2+0] = stbi__div4(n+input[i-1]); + out[i*2+1] = stbi__div4(n+input[i+1]); + } + out[i*2+0] = stbi__div4(input[w-2]*3 + input[w-1] + 2); + out[i*2+1] = input[w-1]; + + STBI_NOTUSED(in_far); + STBI_NOTUSED(hs); + + return out; +} + +#define stbi__div16(x) ((stbi_uc) ((x) >> 4)) + +static stbi_uc *stbi__resample_row_hv_2(stbi_uc *out, stbi_uc *in_near, stbi_uc *in_far, int w, int hs) +{ + // need to generate 2x2 samples for every one in input + int i,t0,t1; + if (w == 1) { + out[0] = out[1] = stbi__div4(3*in_near[0] + in_far[0] + 2); + return out; + } + + t1 = 3*in_near[0] + in_far[0]; + out[0] = stbi__div4(t1+2); + for (i=1; i < w; ++i) { + t0 = t1; + t1 = 3*in_near[i]+in_far[i]; + out[i*2-1] = stbi__div16(3*t0 + t1 + 8); + out[i*2 ] = stbi__div16(3*t1 + t0 + 8); + } + out[w*2-1] = stbi__div4(t1+2); + + STBI_NOTUSED(hs); + + return out; +} + +#if defined(STBI_SSE2) || defined(STBI_NEON) +static stbi_uc *stbi__resample_row_hv_2_simd(stbi_uc *out, stbi_uc *in_near, stbi_uc *in_far, int w, int hs) +{ + // need to generate 2x2 samples for every one in input + int i=0,t0,t1; + + if (w == 1) { + out[0] = out[1] = stbi__div4(3*in_near[0] + in_far[0] + 2); + return out; + } + + t1 = 3*in_near[0] + in_far[0]; + // process groups of 8 pixels for as long as we can. + // note we can't handle the last pixel in a row in this loop + // because we need to handle the filter boundary conditions. + for (; i < ((w-1) & ~7); i += 8) { +#if defined(STBI_SSE2) + // load and perform the vertical filtering pass + // this uses 3*x + y = 4*x + (y - x) + __m128i zero = _mm_setzero_si128(); + __m128i farb = _mm_loadl_epi64((__m128i *) (in_far + i)); + __m128i nearb = _mm_loadl_epi64((__m128i *) (in_near + i)); + __m128i farw = _mm_unpacklo_epi8(farb, zero); + __m128i nearw = _mm_unpacklo_epi8(nearb, zero); + __m128i diff = _mm_sub_epi16(farw, nearw); + __m128i nears = _mm_slli_epi16(nearw, 2); + __m128i curr = _mm_add_epi16(nears, diff); // current row + + // horizontal filter works the same based on shifted vers of current + // row. "prev" is current row shifted right by 1 pixel; we need to + // insert the previous pixel value (from t1). + // "next" is current row shifted left by 1 pixel, with first pixel + // of next block of 8 pixels added in. + __m128i prv0 = _mm_slli_si128(curr, 2); + __m128i nxt0 = _mm_srli_si128(curr, 2); + __m128i prev = _mm_insert_epi16(prv0, t1, 0); + __m128i next = _mm_insert_epi16(nxt0, 3*in_near[i+8] + in_far[i+8], 7); + + // horizontal filter, polyphase implementation since it's convenient: + // even pixels = 3*cur + prev = cur*4 + (prev - cur) + // odd pixels = 3*cur + next = cur*4 + (next - cur) + // note the shared term. + __m128i bias = _mm_set1_epi16(8); + __m128i curs = _mm_slli_epi16(curr, 2); + __m128i prvd = _mm_sub_epi16(prev, curr); + __m128i nxtd = _mm_sub_epi16(next, curr); + __m128i curb = _mm_add_epi16(curs, bias); + __m128i even = _mm_add_epi16(prvd, curb); + __m128i odd = _mm_add_epi16(nxtd, curb); + + // interleave even and odd pixels, then undo scaling. + __m128i int0 = _mm_unpacklo_epi16(even, odd); + __m128i int1 = _mm_unpackhi_epi16(even, odd); + __m128i de0 = _mm_srli_epi16(int0, 4); + __m128i de1 = _mm_srli_epi16(int1, 4); + + // pack and write output + __m128i outv = _mm_packus_epi16(de0, de1); + _mm_storeu_si128((__m128i *) (out + i*2), outv); +#elif defined(STBI_NEON) + // load and perform the vertical filtering pass + // this uses 3*x + y = 4*x + (y - x) + uint8x8_t farb = vld1_u8(in_far + i); + uint8x8_t nearb = vld1_u8(in_near + i); + int16x8_t diff = vreinterpretq_s16_u16(vsubl_u8(farb, nearb)); + int16x8_t nears = vreinterpretq_s16_u16(vshll_n_u8(nearb, 2)); + int16x8_t curr = vaddq_s16(nears, diff); // current row + + // horizontal filter works the same based on shifted vers of current + // row. "prev" is current row shifted right by 1 pixel; we need to + // insert the previous pixel value (from t1). + // "next" is current row shifted left by 1 pixel, with first pixel + // of next block of 8 pixels added in. + int16x8_t prv0 = vextq_s16(curr, curr, 7); + int16x8_t nxt0 = vextq_s16(curr, curr, 1); + int16x8_t prev = vsetq_lane_s16(t1, prv0, 0); + int16x8_t next = vsetq_lane_s16(3*in_near[i+8] + in_far[i+8], nxt0, 7); + + // horizontal filter, polyphase implementation since it's convenient: + // even pixels = 3*cur + prev = cur*4 + (prev - cur) + // odd pixels = 3*cur + next = cur*4 + (next - cur) + // note the shared term. + int16x8_t curs = vshlq_n_s16(curr, 2); + int16x8_t prvd = vsubq_s16(prev, curr); + int16x8_t nxtd = vsubq_s16(next, curr); + int16x8_t even = vaddq_s16(curs, prvd); + int16x8_t odd = vaddq_s16(curs, nxtd); + + // undo scaling and round, then store with even/odd phases interleaved + uint8x8x2_t o; + o.val[0] = vqrshrun_n_s16(even, 4); + o.val[1] = vqrshrun_n_s16(odd, 4); + vst2_u8(out + i*2, o); +#endif + + // "previous" value for next iter + t1 = 3*in_near[i+7] + in_far[i+7]; + } + + t0 = t1; + t1 = 3*in_near[i] + in_far[i]; + out[i*2] = stbi__div16(3*t1 + t0 + 8); + + for (++i; i < w; ++i) { + t0 = t1; + t1 = 3*in_near[i]+in_far[i]; + out[i*2-1] = stbi__div16(3*t0 + t1 + 8); + out[i*2 ] = stbi__div16(3*t1 + t0 + 8); + } + out[w*2-1] = stbi__div4(t1+2); + + STBI_NOTUSED(hs); + + return out; +} +#endif + +static stbi_uc *stbi__resample_row_generic(stbi_uc *out, stbi_uc *in_near, stbi_uc *in_far, int w, int hs) +{ + // resample with nearest-neighbor + int i,j; + STBI_NOTUSED(in_far); + for (i=0; i < w; ++i) + for (j=0; j < hs; ++j) + out[i*hs+j] = in_near[i]; + return out; +} + +// this is a reduced-precision calculation of YCbCr-to-RGB introduced +// to make sure the code produces the same results in both SIMD and scalar +#define stbi__float2fixed(x) (((int) ((x) * 4096.0f + 0.5f)) << 8) +static void stbi__YCbCr_to_RGB_row(stbi_uc *out, const stbi_uc *y, const stbi_uc *pcb, const stbi_uc *pcr, int count, int step) +{ + int i; + for (i=0; i < count; ++i) { + int y_fixed = (y[i] << 20) + (1<<19); // rounding + int r,g,b; + int cr = pcr[i] - 128; + int cb = pcb[i] - 128; + r = y_fixed + cr* stbi__float2fixed(1.40200f); + g = y_fixed + (cr*-stbi__float2fixed(0.71414f)) + ((cb*-stbi__float2fixed(0.34414f)) & 0xffff0000); + b = y_fixed + cb* stbi__float2fixed(1.77200f); + r >>= 20; + g >>= 20; + b >>= 20; + if ((unsigned) r > 255) { if (r < 0) r = 0; else r = 255; } + if ((unsigned) g > 255) { if (g < 0) g = 0; else g = 255; } + if ((unsigned) b > 255) { if (b < 0) b = 0; else b = 255; } + out[0] = (stbi_uc)r; + out[1] = (stbi_uc)g; + out[2] = (stbi_uc)b; + out[3] = 255; + out += step; + } +} + +#if defined(STBI_SSE2) || defined(STBI_NEON) +static void stbi__YCbCr_to_RGB_simd(stbi_uc *out, stbi_uc const *y, stbi_uc const *pcb, stbi_uc const *pcr, int count, int step) +{ + int i = 0; + +#ifdef STBI_SSE2 + // step == 3 is pretty ugly on the final interleave, and i'm not convinced + // it's useful in practice (you wouldn't use it for textures, for example). + // so just accelerate step == 4 case. + if (step == 4) { + // this is a fairly straightforward implementation and not super-optimized. + __m128i signflip = _mm_set1_epi8(-0x80); + __m128i cr_const0 = _mm_set1_epi16( (short) ( 1.40200f*4096.0f+0.5f)); + __m128i cr_const1 = _mm_set1_epi16( - (short) ( 0.71414f*4096.0f+0.5f)); + __m128i cb_const0 = _mm_set1_epi16( - (short) ( 0.34414f*4096.0f+0.5f)); + __m128i cb_const1 = _mm_set1_epi16( (short) ( 1.77200f*4096.0f+0.5f)); + __m128i y_bias = _mm_set1_epi8((char) (unsigned char) 128); + __m128i xw = _mm_set1_epi16(255); // alpha channel + + for (; i+7 < count; i += 8) { + // load + __m128i y_bytes = _mm_loadl_epi64((__m128i *) (y+i)); + __m128i cr_bytes = _mm_loadl_epi64((__m128i *) (pcr+i)); + __m128i cb_bytes = _mm_loadl_epi64((__m128i *) (pcb+i)); + __m128i cr_biased = _mm_xor_si128(cr_bytes, signflip); // -128 + __m128i cb_biased = _mm_xor_si128(cb_bytes, signflip); // -128 + + // unpack to short (and left-shift cr, cb by 8) + __m128i yw = _mm_unpacklo_epi8(y_bias, y_bytes); + __m128i crw = _mm_unpacklo_epi8(_mm_setzero_si128(), cr_biased); + __m128i cbw = _mm_unpacklo_epi8(_mm_setzero_si128(), cb_biased); + + // color transform + __m128i yws = _mm_srli_epi16(yw, 4); + __m128i cr0 = _mm_mulhi_epi16(cr_const0, crw); + __m128i cb0 = _mm_mulhi_epi16(cb_const0, cbw); + __m128i cb1 = _mm_mulhi_epi16(cbw, cb_const1); + __m128i cr1 = _mm_mulhi_epi16(crw, cr_const1); + __m128i rws = _mm_add_epi16(cr0, yws); + __m128i gwt = _mm_add_epi16(cb0, yws); + __m128i bws = _mm_add_epi16(yws, cb1); + __m128i gws = _mm_add_epi16(gwt, cr1); + + // descale + __m128i rw = _mm_srai_epi16(rws, 4); + __m128i bw = _mm_srai_epi16(bws, 4); + __m128i gw = _mm_srai_epi16(gws, 4); + + // back to byte, set up for transpose + __m128i brb = _mm_packus_epi16(rw, bw); + __m128i gxb = _mm_packus_epi16(gw, xw); + + // transpose to interleave channels + __m128i t0 = _mm_unpacklo_epi8(brb, gxb); + __m128i t1 = _mm_unpackhi_epi8(brb, gxb); + __m128i o0 = _mm_unpacklo_epi16(t0, t1); + __m128i o1 = _mm_unpackhi_epi16(t0, t1); + + // store + _mm_storeu_si128((__m128i *) (out + 0), o0); + _mm_storeu_si128((__m128i *) (out + 16), o1); + out += 32; + } + } +#endif + +#ifdef STBI_NEON + // in this version, step=3 support would be easy to add. but is there demand? + if (step == 4) { + // this is a fairly straightforward implementation and not super-optimized. + uint8x8_t signflip = vdup_n_u8(0x80); + int16x8_t cr_const0 = vdupq_n_s16( (short) ( 1.40200f*4096.0f+0.5f)); + int16x8_t cr_const1 = vdupq_n_s16( - (short) ( 0.71414f*4096.0f+0.5f)); + int16x8_t cb_const0 = vdupq_n_s16( - (short) ( 0.34414f*4096.0f+0.5f)); + int16x8_t cb_const1 = vdupq_n_s16( (short) ( 1.77200f*4096.0f+0.5f)); + + for (; i+7 < count; i += 8) { + // load + uint8x8_t y_bytes = vld1_u8(y + i); + uint8x8_t cr_bytes = vld1_u8(pcr + i); + uint8x8_t cb_bytes = vld1_u8(pcb + i); + int8x8_t cr_biased = vreinterpret_s8_u8(vsub_u8(cr_bytes, signflip)); + int8x8_t cb_biased = vreinterpret_s8_u8(vsub_u8(cb_bytes, signflip)); + + // expand to s16 + int16x8_t yws = vreinterpretq_s16_u16(vshll_n_u8(y_bytes, 4)); + int16x8_t crw = vshll_n_s8(cr_biased, 7); + int16x8_t cbw = vshll_n_s8(cb_biased, 7); + + // color transform + int16x8_t cr0 = vqdmulhq_s16(crw, cr_const0); + int16x8_t cb0 = vqdmulhq_s16(cbw, cb_const0); + int16x8_t cr1 = vqdmulhq_s16(crw, cr_const1); + int16x8_t cb1 = vqdmulhq_s16(cbw, cb_const1); + int16x8_t rws = vaddq_s16(yws, cr0); + int16x8_t gws = vaddq_s16(vaddq_s16(yws, cb0), cr1); + int16x8_t bws = vaddq_s16(yws, cb1); + + // undo scaling, round, convert to byte + uint8x8x4_t o; + o.val[0] = vqrshrun_n_s16(rws, 4); + o.val[1] = vqrshrun_n_s16(gws, 4); + o.val[2] = vqrshrun_n_s16(bws, 4); + o.val[3] = vdup_n_u8(255); + + // store, interleaving r/g/b/a + vst4_u8(out, o); + out += 8*4; + } + } +#endif + + for (; i < count; ++i) { + int y_fixed = (y[i] << 20) + (1<<19); // rounding + int r,g,b; + int cr = pcr[i] - 128; + int cb = pcb[i] - 128; + r = y_fixed + cr* stbi__float2fixed(1.40200f); + g = y_fixed + cr*-stbi__float2fixed(0.71414f) + ((cb*-stbi__float2fixed(0.34414f)) & 0xffff0000); + b = y_fixed + cb* stbi__float2fixed(1.77200f); + r >>= 20; + g >>= 20; + b >>= 20; + if ((unsigned) r > 255) { if (r < 0) r = 0; else r = 255; } + if ((unsigned) g > 255) { if (g < 0) g = 0; else g = 255; } + if ((unsigned) b > 255) { if (b < 0) b = 0; else b = 255; } + out[0] = (stbi_uc)r; + out[1] = (stbi_uc)g; + out[2] = (stbi_uc)b; + out[3] = 255; + out += step; + } +} +#endif + +// set up the kernels +static void stbi__setup_jpeg(stbi__jpeg *j) +{ + j->idct_block_kernel = stbi__idct_block; + j->YCbCr_to_RGB_kernel = stbi__YCbCr_to_RGB_row; + j->resample_row_hv_2_kernel = stbi__resample_row_hv_2; + +#ifdef STBI_SSE2 + if (stbi__sse2_available()) { + j->idct_block_kernel = stbi__idct_simd; + j->YCbCr_to_RGB_kernel = stbi__YCbCr_to_RGB_simd; + j->resample_row_hv_2_kernel = stbi__resample_row_hv_2_simd; + } +#endif + +#ifdef STBI_NEON + j->idct_block_kernel = stbi__idct_simd; + j->YCbCr_to_RGB_kernel = stbi__YCbCr_to_RGB_simd; + j->resample_row_hv_2_kernel = stbi__resample_row_hv_2_simd; +#endif +} + +// clean up the temporary component buffers +static void stbi__cleanup_jpeg(stbi__jpeg *j) +{ + stbi__free_jpeg_components(j, j->s->img_n, 0); +} + +typedef struct +{ + resample_row_func resample; + stbi_uc *line0,*line1; + int hs,vs; // expansion factor in each axis + int w_lores; // horizontal pixels pre-expansion + int ystep; // how far through vertical expansion we are + int ypos; // which pre-expansion row we're on +} stbi__resample; + +// fast 0..255 * 0..255 => 0..255 rounded multiplication +static stbi_uc stbi__blinn_8x8(stbi_uc x, stbi_uc y) +{ + unsigned int t = x*y + 128; + return (stbi_uc) ((t + (t >>8)) >> 8); +} + +static stbi_uc *load_jpeg_image(stbi__jpeg *z, int *out_x, int *out_y, int *comp, int req_comp) +{ + int n, decode_n, is_rgb; + z->s->img_n = 0; // make stbi__cleanup_jpeg safe + + // validate req_comp + if (req_comp < 0 || req_comp > 4) return stbi__errpuc("bad req_comp", "Internal error"); + + // load a jpeg image from whichever source, but leave in YCbCr format + if (!stbi__decode_jpeg_image(z)) { stbi__cleanup_jpeg(z); return NULL; } + + // determine actual number of components to generate + n = req_comp ? req_comp : z->s->img_n >= 3 ? 3 : 1; + + is_rgb = z->s->img_n == 3 && (z->rgb == 3 || (z->app14_color_transform == 0 && !z->jfif)); + + if (z->s->img_n == 3 && n < 3 && !is_rgb) + decode_n = 1; + else + decode_n = z->s->img_n; + + // nothing to do if no components requested; check this now to avoid + // accessing uninitialized coutput[0] later + if (decode_n <= 0) { stbi__cleanup_jpeg(z); return NULL; } + + // resample and color-convert + { + int k; + unsigned int i,j; + stbi_uc *output; + stbi_uc *coutput[4] = { NULL, NULL, NULL, NULL }; + + stbi__resample res_comp[4]; + + for (k=0; k < decode_n; ++k) { + stbi__resample *r = &res_comp[k]; + + // allocate line buffer big enough for upsampling off the edges + // with upsample factor of 4 + z->img_comp[k].linebuf = (stbi_uc *) stbi__malloc(z->s->img_x + 3); + if (!z->img_comp[k].linebuf) { stbi__cleanup_jpeg(z); return stbi__errpuc("outofmem", "Out of memory"); } + + r->hs = z->img_h_max / z->img_comp[k].h; + r->vs = z->img_v_max / z->img_comp[k].v; + r->ystep = r->vs >> 1; + r->w_lores = (z->s->img_x + r->hs-1) / r->hs; + r->ypos = 0; + r->line0 = r->line1 = z->img_comp[k].data; + + if (r->hs == 1 && r->vs == 1) r->resample = resample_row_1; + else if (r->hs == 1 && r->vs == 2) r->resample = stbi__resample_row_v_2; + else if (r->hs == 2 && r->vs == 1) r->resample = stbi__resample_row_h_2; + else if (r->hs == 2 && r->vs == 2) r->resample = z->resample_row_hv_2_kernel; + else r->resample = stbi__resample_row_generic; + } + + // can't error after this so, this is safe + output = (stbi_uc *) stbi__malloc_mad3(n, z->s->img_x, z->s->img_y, 1); + if (!output) { stbi__cleanup_jpeg(z); return stbi__errpuc("outofmem", "Out of memory"); } + + // now go ahead and resample + for (j=0; j < z->s->img_y; ++j) { + stbi_uc *out = output + n * z->s->img_x * j; + for (k=0; k < decode_n; ++k) { + stbi__resample *r = &res_comp[k]; + int y_bot = r->ystep >= (r->vs >> 1); + coutput[k] = r->resample(z->img_comp[k].linebuf, + y_bot ? r->line1 : r->line0, + y_bot ? r->line0 : r->line1, + r->w_lores, r->hs); + if (++r->ystep >= r->vs) { + r->ystep = 0; + r->line0 = r->line1; + if (++r->ypos < z->img_comp[k].y) + r->line1 += z->img_comp[k].w2; + } + } + if (n >= 3) { + stbi_uc *y = coutput[0]; + if (z->s->img_n == 3) { + if (is_rgb) { + for (i=0; i < z->s->img_x; ++i) { + out[0] = y[i]; + out[1] = coutput[1][i]; + out[2] = coutput[2][i]; + out[3] = 255; + out += n; + } + } else { + z->YCbCr_to_RGB_kernel(out, y, coutput[1], coutput[2], z->s->img_x, n); + } + } else if (z->s->img_n == 4) { + if (z->app14_color_transform == 0) { // CMYK + for (i=0; i < z->s->img_x; ++i) { + stbi_uc m = coutput[3][i]; + out[0] = stbi__blinn_8x8(coutput[0][i], m); + out[1] = stbi__blinn_8x8(coutput[1][i], m); + out[2] = stbi__blinn_8x8(coutput[2][i], m); + out[3] = 255; + out += n; + } + } else if (z->app14_color_transform == 2) { // YCCK + z->YCbCr_to_RGB_kernel(out, y, coutput[1], coutput[2], z->s->img_x, n); + for (i=0; i < z->s->img_x; ++i) { + stbi_uc m = coutput[3][i]; + out[0] = stbi__blinn_8x8(255 - out[0], m); + out[1] = stbi__blinn_8x8(255 - out[1], m); + out[2] = stbi__blinn_8x8(255 - out[2], m); + out += n; + } + } else { // YCbCr + alpha? Ignore the fourth channel for now + z->YCbCr_to_RGB_kernel(out, y, coutput[1], coutput[2], z->s->img_x, n); + } + } else + for (i=0; i < z->s->img_x; ++i) { + out[0] = out[1] = out[2] = y[i]; + out[3] = 255; // not used if n==3 + out += n; + } + } else { + if (is_rgb) { + if (n == 1) + for (i=0; i < z->s->img_x; ++i) + *out++ = stbi__compute_y(coutput[0][i], coutput[1][i], coutput[2][i]); + else { + for (i=0; i < z->s->img_x; ++i, out += 2) { + out[0] = stbi__compute_y(coutput[0][i], coutput[1][i], coutput[2][i]); + out[1] = 255; + } + } + } else if (z->s->img_n == 4 && z->app14_color_transform == 0) { + for (i=0; i < z->s->img_x; ++i) { + stbi_uc m = coutput[3][i]; + stbi_uc r = stbi__blinn_8x8(coutput[0][i], m); + stbi_uc g = stbi__blinn_8x8(coutput[1][i], m); + stbi_uc b = stbi__blinn_8x8(coutput[2][i], m); + out[0] = stbi__compute_y(r, g, b); + out[1] = 255; + out += n; + } + } else if (z->s->img_n == 4 && z->app14_color_transform == 2) { + for (i=0; i < z->s->img_x; ++i) { + out[0] = stbi__blinn_8x8(255 - coutput[0][i], coutput[3][i]); + out[1] = 255; + out += n; + } + } else { + stbi_uc *y = coutput[0]; + if (n == 1) + for (i=0; i < z->s->img_x; ++i) out[i] = y[i]; + else + for (i=0; i < z->s->img_x; ++i) { *out++ = y[i]; *out++ = 255; } + } + } + } + stbi__cleanup_jpeg(z); + *out_x = z->s->img_x; + *out_y = z->s->img_y; + if (comp) *comp = z->s->img_n >= 3 ? 3 : 1; // report original components, not output + return output; + } +} + +static void *stbi__jpeg_load(stbi__context *s, int *x, int *y, int *comp, int req_comp, stbi__result_info *ri) +{ + unsigned char* result; + stbi__jpeg* j = (stbi__jpeg*) stbi__malloc(sizeof(stbi__jpeg)); + if (!j) return stbi__errpuc("outofmem", "Out of memory"); + memset(j, 0, sizeof(stbi__jpeg)); + STBI_NOTUSED(ri); + j->s = s; + stbi__setup_jpeg(j); + result = load_jpeg_image(j, x,y,comp,req_comp); + STBI_FREE(j); + return result; +} + +static int stbi__jpeg_test(stbi__context *s) +{ + int r; + stbi__jpeg* j = (stbi__jpeg*)stbi__malloc(sizeof(stbi__jpeg)); + if (!j) return stbi__err("outofmem", "Out of memory"); + memset(j, 0, sizeof(stbi__jpeg)); + j->s = s; + stbi__setup_jpeg(j); + r = stbi__decode_jpeg_header(j, STBI__SCAN_type); + stbi__rewind(s); + STBI_FREE(j); + return r; +} + +static int stbi__jpeg_info_raw(stbi__jpeg *j, int *x, int *y, int *comp) +{ + if (!stbi__decode_jpeg_header(j, STBI__SCAN_header)) { + stbi__rewind( j->s ); + return 0; + } + if (x) *x = j->s->img_x; + if (y) *y = j->s->img_y; + if (comp) *comp = j->s->img_n >= 3 ? 3 : 1; + return 1; +} + +static int stbi__jpeg_info(stbi__context *s, int *x, int *y, int *comp) +{ + int result; + stbi__jpeg* j = (stbi__jpeg*) (stbi__malloc(sizeof(stbi__jpeg))); + if (!j) return stbi__err("outofmem", "Out of memory"); + memset(j, 0, sizeof(stbi__jpeg)); + j->s = s; + result = stbi__jpeg_info_raw(j, x, y, comp); + STBI_FREE(j); + return result; +} +#endif + +// public domain zlib decode v0.2 Sean Barrett 2006-11-18 +// simple implementation +// - all input must be provided in an upfront buffer +// - all output is written to a single output buffer (can malloc/realloc) +// performance +// - fast huffman + +#ifndef STBI_NO_ZLIB + +// fast-way is faster to check than jpeg huffman, but slow way is slower +#define STBI__ZFAST_BITS 9 // accelerate all cases in default tables +#define STBI__ZFAST_MASK ((1 << STBI__ZFAST_BITS) - 1) +#define STBI__ZNSYMS 288 // number of symbols in literal/length alphabet + +// zlib-style huffman encoding +// (jpegs packs from left, zlib from right, so can't share code) +typedef struct +{ + stbi__uint16 fast[1 << STBI__ZFAST_BITS]; + stbi__uint16 firstcode[16]; + int maxcode[17]; + stbi__uint16 firstsymbol[16]; + stbi_uc size[STBI__ZNSYMS]; + stbi__uint16 value[STBI__ZNSYMS]; +} stbi__zhuffman; + +stbi_inline static int stbi__bitreverse16(int n) +{ + n = ((n & 0xAAAA) >> 1) | ((n & 0x5555) << 1); + n = ((n & 0xCCCC) >> 2) | ((n & 0x3333) << 2); + n = ((n & 0xF0F0) >> 4) | ((n & 0x0F0F) << 4); + n = ((n & 0xFF00) >> 8) | ((n & 0x00FF) << 8); + return n; +} + +stbi_inline static int stbi__bit_reverse(int v, int bits) +{ + STBI_ASSERT(bits <= 16); + // to bit reverse n bits, reverse 16 and shift + // e.g. 11 bits, bit reverse and shift away 5 + return stbi__bitreverse16(v) >> (16-bits); +} + +static int stbi__zbuild_huffman(stbi__zhuffman *z, const stbi_uc *sizelist, int num) +{ + int i,k=0; + int code, next_code[16], sizes[17]; + + // DEFLATE spec for generating codes + memset(sizes, 0, sizeof(sizes)); + memset(z->fast, 0, sizeof(z->fast)); + for (i=0; i < num; ++i) + ++sizes[sizelist[i]]; + sizes[0] = 0; + for (i=1; i < 16; ++i) + if (sizes[i] > (1 << i)) + return stbi__err("bad sizes", "Corrupt PNG"); + code = 0; + for (i=1; i < 16; ++i) { + next_code[i] = code; + z->firstcode[i] = (stbi__uint16) code; + z->firstsymbol[i] = (stbi__uint16) k; + code = (code + sizes[i]); + if (sizes[i]) + if (code-1 >= (1 << i)) return stbi__err("bad codelengths","Corrupt PNG"); + z->maxcode[i] = code << (16-i); // preshift for inner loop + code <<= 1; + k += sizes[i]; + } + z->maxcode[16] = 0x10000; // sentinel + for (i=0; i < num; ++i) { + int s = sizelist[i]; + if (s) { + int c = next_code[s] - z->firstcode[s] + z->firstsymbol[s]; + stbi__uint16 fastv = (stbi__uint16) ((s << 9) | i); + z->size [c] = (stbi_uc ) s; + z->value[c] = (stbi__uint16) i; + if (s <= STBI__ZFAST_BITS) { + int j = stbi__bit_reverse(next_code[s],s); + while (j < (1 << STBI__ZFAST_BITS)) { + z->fast[j] = fastv; + j += (1 << s); + } + } + ++next_code[s]; + } + } + return 1; +} + +// zlib-from-memory implementation for PNG reading +// because PNG allows splitting the zlib stream arbitrarily, +// and it's annoying structurally to have PNG call ZLIB call PNG, +// we require PNG read all the IDATs and combine them into a single +// memory buffer + +typedef struct +{ + stbi_uc *zbuffer, *zbuffer_end; + int num_bits; + int hit_zeof_once; + stbi__uint32 code_buffer; + + char *zout; + char *zout_start; + char *zout_end; + int z_expandable; + + stbi__zhuffman z_length, z_distance; +} stbi__zbuf; + +stbi_inline static int stbi__zeof(stbi__zbuf *z) +{ + return (z->zbuffer >= z->zbuffer_end); +} + +stbi_inline static stbi_uc stbi__zget8(stbi__zbuf *z) +{ + return stbi__zeof(z) ? 0 : *z->zbuffer++; +} + +static void stbi__fill_bits(stbi__zbuf *z) +{ + do { + if (z->code_buffer >= (1U << z->num_bits)) { + z->zbuffer = z->zbuffer_end; /* treat this as EOF so we fail. */ + return; + } + z->code_buffer |= (unsigned int) stbi__zget8(z) << z->num_bits; + z->num_bits += 8; + } while (z->num_bits <= 24); +} + +stbi_inline static unsigned int stbi__zreceive(stbi__zbuf *z, int n) +{ + unsigned int k; + if (z->num_bits < n) stbi__fill_bits(z); + k = z->code_buffer & ((1 << n) - 1); + z->code_buffer >>= n; + z->num_bits -= n; + return k; +} + +static int stbi__zhuffman_decode_slowpath(stbi__zbuf *a, stbi__zhuffman *z) +{ + int b,s,k; + // not resolved by fast table, so compute it the slow way + // use jpeg approach, which requires MSbits at top + k = stbi__bit_reverse(a->code_buffer, 16); + for (s=STBI__ZFAST_BITS+1; ; ++s) + if (k < z->maxcode[s]) + break; + if (s >= 16) return -1; // invalid code! + // code size is s, so: + b = (k >> (16-s)) - z->firstcode[s] + z->firstsymbol[s]; + if (b >= STBI__ZNSYMS) return -1; // some data was corrupt somewhere! + if (z->size[b] != s) return -1; // was originally an assert, but report failure instead. + a->code_buffer >>= s; + a->num_bits -= s; + return z->value[b]; +} + +stbi_inline static int stbi__zhuffman_decode(stbi__zbuf *a, stbi__zhuffman *z) +{ + int b,s; + if (a->num_bits < 16) { + if (stbi__zeof(a)) { + if (!a->hit_zeof_once) { + // This is the first time we hit eof, insert 16 extra padding btis + // to allow us to keep going; if we actually consume any of them + // though, that is invalid data. This is caught later. + a->hit_zeof_once = 1; + a->num_bits += 16; // add 16 implicit zero bits + } else { + // We already inserted our extra 16 padding bits and are again + // out, this stream is actually prematurely terminated. + return -1; + } + } else { + stbi__fill_bits(a); + } + } + b = z->fast[a->code_buffer & STBI__ZFAST_MASK]; + if (b) { + s = b >> 9; + a->code_buffer >>= s; + a->num_bits -= s; + return b & 511; + } + return stbi__zhuffman_decode_slowpath(a, z); +} + +static int stbi__zexpand(stbi__zbuf *z, char *zout, int n) // need to make room for n bytes +{ + char *q; + unsigned int cur, limit, old_limit; + z->zout = zout; + if (!z->z_expandable) return stbi__err("output buffer limit","Corrupt PNG"); + cur = (unsigned int) (z->zout - z->zout_start); + limit = old_limit = (unsigned) (z->zout_end - z->zout_start); + if (UINT_MAX - cur < (unsigned) n) return stbi__err("outofmem", "Out of memory"); + while (cur + n > limit) { + if(limit > UINT_MAX / 2) return stbi__err("outofmem", "Out of memory"); + limit *= 2; + } + q = (char *) STBI_REALLOC_SIZED(z->zout_start, old_limit, limit); + STBI_NOTUSED(old_limit); + if (q == NULL) return stbi__err("outofmem", "Out of memory"); + z->zout_start = q; + z->zout = q + cur; + z->zout_end = q + limit; + return 1; +} + +static const int stbi__zlength_base[31] = { + 3,4,5,6,7,8,9,10,11,13, + 15,17,19,23,27,31,35,43,51,59, + 67,83,99,115,131,163,195,227,258,0,0 }; + +static const int stbi__zlength_extra[31]= +{ 0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,0,0 }; + +static const int stbi__zdist_base[32] = { 1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193, +257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577,0,0}; + +static const int stbi__zdist_extra[32] = +{ 0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13}; + +static int stbi__parse_huffman_block(stbi__zbuf *a) +{ + char *zout = a->zout; + for(;;) { + int z = stbi__zhuffman_decode(a, &a->z_length); + if (z < 256) { + if (z < 0) return stbi__err("bad huffman code","Corrupt PNG"); // error in huffman codes + if (zout >= a->zout_end) { + if (!stbi__zexpand(a, zout, 1)) return 0; + zout = a->zout; + } + *zout++ = (char) z; + } else { + stbi_uc *p; + int len,dist; + if (z == 256) { + a->zout = zout; + if (a->hit_zeof_once && a->num_bits < 16) { + // The first time we hit zeof, we inserted 16 extra zero bits into our bit + // buffer so the decoder can just do its speculative decoding. But if we + // actually consumed any of those bits (which is the case when num_bits < 16), + // the stream actually read past the end so it is malformed. + return stbi__err("unexpected end","Corrupt PNG"); + } + return 1; + } + if (z >= 286) return stbi__err("bad huffman code","Corrupt PNG"); // per DEFLATE, length codes 286 and 287 must not appear in compressed data + z -= 257; + len = stbi__zlength_base[z]; + if (stbi__zlength_extra[z]) len += stbi__zreceive(a, stbi__zlength_extra[z]); + z = stbi__zhuffman_decode(a, &a->z_distance); + if (z < 0 || z >= 30) return stbi__err("bad huffman code","Corrupt PNG"); // per DEFLATE, distance codes 30 and 31 must not appear in compressed data + dist = stbi__zdist_base[z]; + if (stbi__zdist_extra[z]) dist += stbi__zreceive(a, stbi__zdist_extra[z]); + if (zout - a->zout_start < dist) return stbi__err("bad dist","Corrupt PNG"); + if (len > a->zout_end - zout) { + if (!stbi__zexpand(a, zout, len)) return 0; + zout = a->zout; + } + p = (stbi_uc *) (zout - dist); + if (dist == 1) { // run of one byte; common in images. + stbi_uc v = *p; + if (len) { do *zout++ = v; while (--len); } + } else { + if (len) { do *zout++ = *p++; while (--len); } + } + } + } +} + +static int stbi__compute_huffman_codes(stbi__zbuf *a) +{ + static const stbi_uc length_dezigzag[19] = { 16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15 }; + stbi__zhuffman z_codelength; + stbi_uc lencodes[286+32+137];//padding for maximum single op + stbi_uc codelength_sizes[19]; + int i,n; + + int hlit = stbi__zreceive(a,5) + 257; + int hdist = stbi__zreceive(a,5) + 1; + int hclen = stbi__zreceive(a,4) + 4; + int ntot = hlit + hdist; + + memset(codelength_sizes, 0, sizeof(codelength_sizes)); + for (i=0; i < hclen; ++i) { + int s = stbi__zreceive(a,3); + codelength_sizes[length_dezigzag[i]] = (stbi_uc) s; + } + if (!stbi__zbuild_huffman(&z_codelength, codelength_sizes, 19)) return 0; + + n = 0; + while (n < ntot) { + int c = stbi__zhuffman_decode(a, &z_codelength); + if (c < 0 || c >= 19) return stbi__err("bad codelengths", "Corrupt PNG"); + if (c < 16) + lencodes[n++] = (stbi_uc) c; + else { + stbi_uc fill = 0; + if (c == 16) { + c = stbi__zreceive(a,2)+3; + if (n == 0) return stbi__err("bad codelengths", "Corrupt PNG"); + fill = lencodes[n-1]; + } else if (c == 17) { + c = stbi__zreceive(a,3)+3; + } else if (c == 18) { + c = stbi__zreceive(a,7)+11; + } else { + return stbi__err("bad codelengths", "Corrupt PNG"); + } + if (ntot - n < c) return stbi__err("bad codelengths", "Corrupt PNG"); + memset(lencodes+n, fill, c); + n += c; + } + } + if (n != ntot) return stbi__err("bad codelengths","Corrupt PNG"); + if (!stbi__zbuild_huffman(&a->z_length, lencodes, hlit)) return 0; + if (!stbi__zbuild_huffman(&a->z_distance, lencodes+hlit, hdist)) return 0; + return 1; +} + +static int stbi__parse_uncompressed_block(stbi__zbuf *a) +{ + stbi_uc header[4]; + int len,nlen,k; + if (a->num_bits & 7) + stbi__zreceive(a, a->num_bits & 7); // discard + // drain the bit-packed data into header + k = 0; + while (a->num_bits > 0) { + header[k++] = (stbi_uc) (a->code_buffer & 255); // suppress MSVC run-time check + a->code_buffer >>= 8; + a->num_bits -= 8; + } + if (a->num_bits < 0) return stbi__err("zlib corrupt","Corrupt PNG"); + // now fill header the normal way + while (k < 4) + header[k++] = stbi__zget8(a); + len = header[1] * 256 + header[0]; + nlen = header[3] * 256 + header[2]; + if (nlen != (len ^ 0xffff)) return stbi__err("zlib corrupt","Corrupt PNG"); + if (a->zbuffer + len > a->zbuffer_end) return stbi__err("read past buffer","Corrupt PNG"); + if (a->zout + len > a->zout_end) + if (!stbi__zexpand(a, a->zout, len)) return 0; + memcpy(a->zout, a->zbuffer, len); + a->zbuffer += len; + a->zout += len; + return 1; +} + +static int stbi__parse_zlib_header(stbi__zbuf *a) +{ + int cmf = stbi__zget8(a); + int cm = cmf & 15; + /* int cinfo = cmf >> 4; */ + int flg = stbi__zget8(a); + if (stbi__zeof(a)) return stbi__err("bad zlib header","Corrupt PNG"); // zlib spec + if ((cmf*256+flg) % 31 != 0) return stbi__err("bad zlib header","Corrupt PNG"); // zlib spec + if (flg & 32) return stbi__err("no preset dict","Corrupt PNG"); // preset dictionary not allowed in png + if (cm != 8) return stbi__err("bad compression","Corrupt PNG"); // DEFLATE required for png + // window = 1 << (8 + cinfo)... but who cares, we fully buffer output + return 1; +} + +static const stbi_uc stbi__zdefault_length[STBI__ZNSYMS] = +{ + 8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8, 8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8, + 8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8, 8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8, + 8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8, 8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8, + 8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8, 8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8, + 8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8, 9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9, + 9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9, 9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9, + 9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9, 9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9, + 9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9, 9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9, + 7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7, 7,7,7,7,7,7,7,7,8,8,8,8,8,8,8,8 +}; +static const stbi_uc stbi__zdefault_distance[32] = +{ + 5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5 +}; +/* +Init algorithm: +{ + int i; // use <= to match clearly with spec + for (i=0; i <= 143; ++i) stbi__zdefault_length[i] = 8; + for ( ; i <= 255; ++i) stbi__zdefault_length[i] = 9; + for ( ; i <= 279; ++i) stbi__zdefault_length[i] = 7; + for ( ; i <= 287; ++i) stbi__zdefault_length[i] = 8; + + for (i=0; i <= 31; ++i) stbi__zdefault_distance[i] = 5; +} +*/ + +static int stbi__parse_zlib(stbi__zbuf *a, int parse_header) +{ + int final, type; + if (parse_header) + if (!stbi__parse_zlib_header(a)) return 0; + a->num_bits = 0; + a->code_buffer = 0; + a->hit_zeof_once = 0; + do { + final = stbi__zreceive(a,1); + type = stbi__zreceive(a,2); + if (type == 0) { + if (!stbi__parse_uncompressed_block(a)) return 0; + } else if (type == 3) { + return 0; + } else { + if (type == 1) { + // use fixed code lengths + if (!stbi__zbuild_huffman(&a->z_length , stbi__zdefault_length , STBI__ZNSYMS)) return 0; + if (!stbi__zbuild_huffman(&a->z_distance, stbi__zdefault_distance, 32)) return 0; + } else { + if (!stbi__compute_huffman_codes(a)) return 0; + } + if (!stbi__parse_huffman_block(a)) return 0; + } + } while (!final); + return 1; +} + +static int stbi__do_zlib(stbi__zbuf *a, char *obuf, int olen, int exp, int parse_header) +{ + a->zout_start = obuf; + a->zout = obuf; + a->zout_end = obuf + olen; + a->z_expandable = exp; + + return stbi__parse_zlib(a, parse_header); +} + +STBIDEF char *stbi_zlib_decode_malloc_guesssize(const char *buffer, int len, int initial_size, int *outlen) +{ + stbi__zbuf a; + char *p = (char *) stbi__malloc(initial_size); + if (p == NULL) return NULL; + a.zbuffer = (stbi_uc *) buffer; + a.zbuffer_end = (stbi_uc *) buffer + len; + if (stbi__do_zlib(&a, p, initial_size, 1, 1)) { + if (outlen) *outlen = (int) (a.zout - a.zout_start); + return a.zout_start; + } else { + STBI_FREE(a.zout_start); + return NULL; + } +} + +STBIDEF char *stbi_zlib_decode_malloc(char const *buffer, int len, int *outlen) +{ + return stbi_zlib_decode_malloc_guesssize(buffer, len, 16384, outlen); +} + +STBIDEF char *stbi_zlib_decode_malloc_guesssize_headerflag(const char *buffer, int len, int initial_size, int *outlen, int parse_header) +{ + stbi__zbuf a; + char *p = (char *) stbi__malloc(initial_size); + if (p == NULL) return NULL; + a.zbuffer = (stbi_uc *) buffer; + a.zbuffer_end = (stbi_uc *) buffer + len; + if (stbi__do_zlib(&a, p, initial_size, 1, parse_header)) { + if (outlen) *outlen = (int) (a.zout - a.zout_start); + return a.zout_start; + } else { + STBI_FREE(a.zout_start); + return NULL; + } +} + +STBIDEF int stbi_zlib_decode_buffer(char *obuffer, int olen, char const *ibuffer, int ilen) +{ + stbi__zbuf a; + a.zbuffer = (stbi_uc *) ibuffer; + a.zbuffer_end = (stbi_uc *) ibuffer + ilen; + if (stbi__do_zlib(&a, obuffer, olen, 0, 1)) + return (int) (a.zout - a.zout_start); + else + return -1; +} + +STBIDEF char *stbi_zlib_decode_noheader_malloc(char const *buffer, int len, int *outlen) +{ + stbi__zbuf a; + char *p = (char *) stbi__malloc(16384); + if (p == NULL) return NULL; + a.zbuffer = (stbi_uc *) buffer; + a.zbuffer_end = (stbi_uc *) buffer+len; + if (stbi__do_zlib(&a, p, 16384, 1, 0)) { + if (outlen) *outlen = (int) (a.zout - a.zout_start); + return a.zout_start; + } else { + STBI_FREE(a.zout_start); + return NULL; + } +} + +STBIDEF int stbi_zlib_decode_noheader_buffer(char *obuffer, int olen, const char *ibuffer, int ilen) +{ + stbi__zbuf a; + a.zbuffer = (stbi_uc *) ibuffer; + a.zbuffer_end = (stbi_uc *) ibuffer + ilen; + if (stbi__do_zlib(&a, obuffer, olen, 0, 0)) + return (int) (a.zout - a.zout_start); + else + return -1; +} +#endif + +// public domain "baseline" PNG decoder v0.10 Sean Barrett 2006-11-18 +// simple implementation +// - only 8-bit samples +// - no CRC checking +// - allocates lots of intermediate memory +// - avoids problem of streaming data between subsystems +// - avoids explicit window management +// performance +// - uses stb_zlib, a PD zlib implementation with fast huffman decoding + +#ifndef STBI_NO_PNG +typedef struct +{ + stbi__uint32 length; + stbi__uint32 type; +} stbi__pngchunk; + +static stbi__pngchunk stbi__get_chunk_header(stbi__context *s) +{ + stbi__pngchunk c; + c.length = stbi__get32be(s); + c.type = stbi__get32be(s); + return c; +} + +static int stbi__check_png_header(stbi__context *s) +{ + static const stbi_uc png_sig[8] = { 137,80,78,71,13,10,26,10 }; + int i; + for (i=0; i < 8; ++i) + if (stbi__get8(s) != png_sig[i]) return stbi__err("bad png sig","Not a PNG"); + return 1; +} + +typedef struct +{ + stbi__context *s; + stbi_uc *idata, *expanded, *out; + int depth; +} stbi__png; + + +enum { + STBI__F_none=0, + STBI__F_sub=1, + STBI__F_up=2, + STBI__F_avg=3, + STBI__F_paeth=4, + // synthetic filter used for first scanline to avoid needing a dummy row of 0s + STBI__F_avg_first +}; + +static stbi_uc first_row_filter[5] = +{ + STBI__F_none, + STBI__F_sub, + STBI__F_none, + STBI__F_avg_first, + STBI__F_sub // Paeth with b=c=0 turns out to be equivalent to sub +}; + +static int stbi__paeth(int a, int b, int c) +{ + // This formulation looks very different from the reference in the PNG spec, but is + // actually equivalent and has favorable data dependencies and admits straightforward + // generation of branch-free code, which helps performance significantly. + int thresh = c*3 - (a + b); + int lo = a < b ? a : b; + int hi = a < b ? b : a; + int t0 = (hi <= thresh) ? lo : c; + int t1 = (thresh <= lo) ? hi : t0; + return t1; +} + +static const stbi_uc stbi__depth_scale_table[9] = { 0, 0xff, 0x55, 0, 0x11, 0,0,0, 0x01 }; + +// adds an extra all-255 alpha channel +// dest == src is legal +// img_n must be 1 or 3 +static void stbi__create_png_alpha_expand8(stbi_uc *dest, stbi_uc *src, stbi__uint32 x, int img_n) +{ + int i; + // must process data backwards since we allow dest==src + if (img_n == 1) { + for (i=x-1; i >= 0; --i) { + dest[i*2+1] = 255; + dest[i*2+0] = src[i]; + } + } else { + STBI_ASSERT(img_n == 3); + for (i=x-1; i >= 0; --i) { + dest[i*4+3] = 255; + dest[i*4+2] = src[i*3+2]; + dest[i*4+1] = src[i*3+1]; + dest[i*4+0] = src[i*3+0]; + } + } +} + +// create the png data from post-deflated data +static int stbi__create_png_image_raw(stbi__png *a, stbi_uc *raw, stbi__uint32 raw_len, int out_n, stbi__uint32 x, stbi__uint32 y, int depth, int color) +{ + int bytes = (depth == 16 ? 2 : 1); + stbi__context *s = a->s; + stbi__uint32 i,j,stride = x*out_n*bytes; + stbi__uint32 img_len, img_width_bytes; + stbi_uc *filter_buf; + int all_ok = 1; + int k; + int img_n = s->img_n; // copy it into a local for later + + int output_bytes = out_n*bytes; + int filter_bytes = img_n*bytes; + int width = x; + + STBI_ASSERT(out_n == s->img_n || out_n == s->img_n+1); + a->out = (stbi_uc *) stbi__malloc_mad3(x, y, output_bytes, 0); // extra bytes to write off the end into + if (!a->out) return stbi__err("outofmem", "Out of memory"); + + // note: error exits here don't need to clean up a->out individually, + // stbi__do_png always does on error. + if (!stbi__mad3sizes_valid(img_n, x, depth, 7)) return stbi__err("too large", "Corrupt PNG"); + img_width_bytes = (((img_n * x * depth) + 7) >> 3); + if (!stbi__mad2sizes_valid(img_width_bytes, y, img_width_bytes)) return stbi__err("too large", "Corrupt PNG"); + img_len = (img_width_bytes + 1) * y; + + // we used to check for exact match between raw_len and img_len on non-interlaced PNGs, + // but issue #276 reported a PNG in the wild that had extra data at the end (all zeros), + // so just check for raw_len < img_len always. + if (raw_len < img_len) return stbi__err("not enough pixels","Corrupt PNG"); + + // Allocate two scan lines worth of filter workspace buffer. + filter_buf = (stbi_uc *) stbi__malloc_mad2(img_width_bytes, 2, 0); + if (!filter_buf) return stbi__err("outofmem", "Out of memory"); + + // Filtering for low-bit-depth images + if (depth < 8) { + filter_bytes = 1; + width = img_width_bytes; + } + + for (j=0; j < y; ++j) { + // cur/prior filter buffers alternate + stbi_uc *cur = filter_buf + (j & 1)*img_width_bytes; + stbi_uc *prior = filter_buf + (~j & 1)*img_width_bytes; + stbi_uc *dest = a->out + stride*j; + int nk = width * filter_bytes; + int filter = *raw++; + + // check filter type + if (filter > 4) { + all_ok = stbi__err("invalid filter","Corrupt PNG"); + break; + } + + // if first row, use special filter that doesn't sample previous row + if (j == 0) filter = first_row_filter[filter]; + + // perform actual filtering + switch (filter) { + case STBI__F_none: + memcpy(cur, raw, nk); + break; + case STBI__F_sub: + memcpy(cur, raw, filter_bytes); + for (k = filter_bytes; k < nk; ++k) + cur[k] = STBI__BYTECAST(raw[k] + cur[k-filter_bytes]); + break; + case STBI__F_up: + for (k = 0; k < nk; ++k) + cur[k] = STBI__BYTECAST(raw[k] + prior[k]); + break; + case STBI__F_avg: + for (k = 0; k < filter_bytes; ++k) + cur[k] = STBI__BYTECAST(raw[k] + (prior[k]>>1)); + for (k = filter_bytes; k < nk; ++k) + cur[k] = STBI__BYTECAST(raw[k] + ((prior[k] + cur[k-filter_bytes])>>1)); + break; + case STBI__F_paeth: + for (k = 0; k < filter_bytes; ++k) + cur[k] = STBI__BYTECAST(raw[k] + prior[k]); // prior[k] == stbi__paeth(0,prior[k],0) + for (k = filter_bytes; k < nk; ++k) + cur[k] = STBI__BYTECAST(raw[k] + stbi__paeth(cur[k-filter_bytes], prior[k], prior[k-filter_bytes])); + break; + case STBI__F_avg_first: + memcpy(cur, raw, filter_bytes); + for (k = filter_bytes; k < nk; ++k) + cur[k] = STBI__BYTECAST(raw[k] + (cur[k-filter_bytes] >> 1)); + break; + } + + raw += nk; + + // expand decoded bits in cur to dest, also adding an extra alpha channel if desired + if (depth < 8) { + stbi_uc scale = (color == 0) ? stbi__depth_scale_table[depth] : 1; // scale grayscale values to 0..255 range + stbi_uc *in = cur; + stbi_uc *out = dest; + stbi_uc inb = 0; + stbi__uint32 nsmp = x*img_n; + + // expand bits to bytes first + if (depth == 4) { + for (i=0; i < nsmp; ++i) { + if ((i & 1) == 0) inb = *in++; + *out++ = scale * (inb >> 4); + inb <<= 4; + } + } else if (depth == 2) { + for (i=0; i < nsmp; ++i) { + if ((i & 3) == 0) inb = *in++; + *out++ = scale * (inb >> 6); + inb <<= 2; + } + } else { + STBI_ASSERT(depth == 1); + for (i=0; i < nsmp; ++i) { + if ((i & 7) == 0) inb = *in++; + *out++ = scale * (inb >> 7); + inb <<= 1; + } + } + + // insert alpha=255 values if desired + if (img_n != out_n) + stbi__create_png_alpha_expand8(dest, dest, x, img_n); + } else if (depth == 8) { + if (img_n == out_n) + memcpy(dest, cur, x*img_n); + else + stbi__create_png_alpha_expand8(dest, cur, x, img_n); + } else if (depth == 16) { + // convert the image data from big-endian to platform-native + stbi__uint16 *dest16 = (stbi__uint16*)dest; + stbi__uint32 nsmp = x*img_n; + + if (img_n == out_n) { + for (i = 0; i < nsmp; ++i, ++dest16, cur += 2) + *dest16 = (cur[0] << 8) | cur[1]; + } else { + STBI_ASSERT(img_n+1 == out_n); + if (img_n == 1) { + for (i = 0; i < x; ++i, dest16 += 2, cur += 2) { + dest16[0] = (cur[0] << 8) | cur[1]; + dest16[1] = 0xffff; + } + } else { + STBI_ASSERT(img_n == 3); + for (i = 0; i < x; ++i, dest16 += 4, cur += 6) { + dest16[0] = (cur[0] << 8) | cur[1]; + dest16[1] = (cur[2] << 8) | cur[3]; + dest16[2] = (cur[4] << 8) | cur[5]; + dest16[3] = 0xffff; + } + } + } + } + } + + STBI_FREE(filter_buf); + if (!all_ok) return 0; + + return 1; +} + +static int stbi__create_png_image(stbi__png *a, stbi_uc *image_data, stbi__uint32 image_data_len, int out_n, int depth, int color, int interlaced) +{ + int bytes = (depth == 16 ? 2 : 1); + int out_bytes = out_n * bytes; + stbi_uc *final; + int p; + if (!interlaced) + return stbi__create_png_image_raw(a, image_data, image_data_len, out_n, a->s->img_x, a->s->img_y, depth, color); + + // de-interlacing + final = (stbi_uc *) stbi__malloc_mad3(a->s->img_x, a->s->img_y, out_bytes, 0); + if (!final) return stbi__err("outofmem", "Out of memory"); + for (p=0; p < 7; ++p) { + int xorig[] = { 0,4,0,2,0,1,0 }; + int yorig[] = { 0,0,4,0,2,0,1 }; + int xspc[] = { 8,8,4,4,2,2,1 }; + int yspc[] = { 8,8,8,4,4,2,2 }; + int i,j,x,y; + // pass1_x[4] = 0, pass1_x[5] = 1, pass1_x[12] = 1 + x = (a->s->img_x - xorig[p] + xspc[p]-1) / xspc[p]; + y = (a->s->img_y - yorig[p] + yspc[p]-1) / yspc[p]; + if (x && y) { + stbi__uint32 img_len = ((((a->s->img_n * x * depth) + 7) >> 3) + 1) * y; + if (!stbi__create_png_image_raw(a, image_data, image_data_len, out_n, x, y, depth, color)) { + STBI_FREE(final); + return 0; + } + for (j=0; j < y; ++j) { + for (i=0; i < x; ++i) { + int out_y = j*yspc[p]+yorig[p]; + int out_x = i*xspc[p]+xorig[p]; + memcpy(final + out_y*a->s->img_x*out_bytes + out_x*out_bytes, + a->out + (j*x+i)*out_bytes, out_bytes); + } + } + STBI_FREE(a->out); + image_data += img_len; + image_data_len -= img_len; + } + } + a->out = final; + + return 1; +} + +static int stbi__compute_transparency(stbi__png *z, stbi_uc tc[3], int out_n) +{ + stbi__context *s = z->s; + stbi__uint32 i, pixel_count = s->img_x * s->img_y; + stbi_uc *p = z->out; + + // compute color-based transparency, assuming we've + // already got 255 as the alpha value in the output + STBI_ASSERT(out_n == 2 || out_n == 4); + + if (out_n == 2) { + for (i=0; i < pixel_count; ++i) { + p[1] = (p[0] == tc[0] ? 0 : 255); + p += 2; + } + } else { + for (i=0; i < pixel_count; ++i) { + if (p[0] == tc[0] && p[1] == tc[1] && p[2] == tc[2]) + p[3] = 0; + p += 4; + } + } + return 1; +} + +static int stbi__compute_transparency16(stbi__png *z, stbi__uint16 tc[3], int out_n) +{ + stbi__context *s = z->s; + stbi__uint32 i, pixel_count = s->img_x * s->img_y; + stbi__uint16 *p = (stbi__uint16*) z->out; + + // compute color-based transparency, assuming we've + // already got 65535 as the alpha value in the output + STBI_ASSERT(out_n == 2 || out_n == 4); + + if (out_n == 2) { + for (i = 0; i < pixel_count; ++i) { + p[1] = (p[0] == tc[0] ? 0 : 65535); + p += 2; + } + } else { + for (i = 0; i < pixel_count; ++i) { + if (p[0] == tc[0] && p[1] == tc[1] && p[2] == tc[2]) + p[3] = 0; + p += 4; + } + } + return 1; +} + +static int stbi__expand_png_palette(stbi__png *a, stbi_uc *palette, int len, int pal_img_n) +{ + stbi__uint32 i, pixel_count = a->s->img_x * a->s->img_y; + stbi_uc *p, *temp_out, *orig = a->out; + + p = (stbi_uc *) stbi__malloc_mad2(pixel_count, pal_img_n, 0); + if (p == NULL) return stbi__err("outofmem", "Out of memory"); + + // between here and free(out) below, exitting would leak + temp_out = p; + + if (pal_img_n == 3) { + for (i=0; i < pixel_count; ++i) { + int n = orig[i]*4; + p[0] = palette[n ]; + p[1] = palette[n+1]; + p[2] = palette[n+2]; + p += 3; + } + } else { + for (i=0; i < pixel_count; ++i) { + int n = orig[i]*4; + p[0] = palette[n ]; + p[1] = palette[n+1]; + p[2] = palette[n+2]; + p[3] = palette[n+3]; + p += 4; + } + } + STBI_FREE(a->out); + a->out = temp_out; + + STBI_NOTUSED(len); + + return 1; +} + +static int stbi__unpremultiply_on_load_global = 0; +static int stbi__de_iphone_flag_global = 0; + +STBIDEF void stbi_set_unpremultiply_on_load(int flag_true_if_should_unpremultiply) +{ + stbi__unpremultiply_on_load_global = flag_true_if_should_unpremultiply; +} + +STBIDEF void stbi_convert_iphone_png_to_rgb(int flag_true_if_should_convert) +{ + stbi__de_iphone_flag_global = flag_true_if_should_convert; +} + +#ifndef STBI_THREAD_LOCAL +#define stbi__unpremultiply_on_load stbi__unpremultiply_on_load_global +#define stbi__de_iphone_flag stbi__de_iphone_flag_global +#else +static STBI_THREAD_LOCAL int stbi__unpremultiply_on_load_local, stbi__unpremultiply_on_load_set; +static STBI_THREAD_LOCAL int stbi__de_iphone_flag_local, stbi__de_iphone_flag_set; + +STBIDEF void stbi_set_unpremultiply_on_load_thread(int flag_true_if_should_unpremultiply) +{ + stbi__unpremultiply_on_load_local = flag_true_if_should_unpremultiply; + stbi__unpremultiply_on_load_set = 1; +} + +STBIDEF void stbi_convert_iphone_png_to_rgb_thread(int flag_true_if_should_convert) +{ + stbi__de_iphone_flag_local = flag_true_if_should_convert; + stbi__de_iphone_flag_set = 1; +} + +#define stbi__unpremultiply_on_load (stbi__unpremultiply_on_load_set \ + ? stbi__unpremultiply_on_load_local \ + : stbi__unpremultiply_on_load_global) +#define stbi__de_iphone_flag (stbi__de_iphone_flag_set \ + ? stbi__de_iphone_flag_local \ + : stbi__de_iphone_flag_global) +#endif // STBI_THREAD_LOCAL + +static void stbi__de_iphone(stbi__png *z) +{ + stbi__context *s = z->s; + stbi__uint32 i, pixel_count = s->img_x * s->img_y; + stbi_uc *p = z->out; + + if (s->img_out_n == 3) { // convert bgr to rgb + for (i=0; i < pixel_count; ++i) { + stbi_uc t = p[0]; + p[0] = p[2]; + p[2] = t; + p += 3; + } + } else { + STBI_ASSERT(s->img_out_n == 4); + if (stbi__unpremultiply_on_load) { + // convert bgr to rgb and unpremultiply + for (i=0; i < pixel_count; ++i) { + stbi_uc a = p[3]; + stbi_uc t = p[0]; + if (a) { + stbi_uc half = a / 2; + p[0] = (p[2] * 255 + half) / a; + p[1] = (p[1] * 255 + half) / a; + p[2] = ( t * 255 + half) / a; + } else { + p[0] = p[2]; + p[2] = t; + } + p += 4; + } + } else { + // convert bgr to rgb + for (i=0; i < pixel_count; ++i) { + stbi_uc t = p[0]; + p[0] = p[2]; + p[2] = t; + p += 4; + } + } + } +} + +#define STBI__PNG_TYPE(a,b,c,d) (((unsigned) (a) << 24) + ((unsigned) (b) << 16) + ((unsigned) (c) << 8) + (unsigned) (d)) + +static int stbi__parse_png_file(stbi__png *z, int scan, int req_comp) +{ + stbi_uc palette[1024], pal_img_n=0; + stbi_uc has_trans=0, tc[3]={0}; + stbi__uint16 tc16[3]; + stbi__uint32 ioff=0, idata_limit=0, i, pal_len=0; + int first=1,k,interlace=0, color=0, is_iphone=0; + stbi__context *s = z->s; + + z->expanded = NULL; + z->idata = NULL; + z->out = NULL; + + if (!stbi__check_png_header(s)) return 0; + + if (scan == STBI__SCAN_type) return 1; + + for (;;) { + stbi__pngchunk c = stbi__get_chunk_header(s); + switch (c.type) { + case STBI__PNG_TYPE('C','g','B','I'): + is_iphone = 1; + stbi__skip(s, c.length); + break; + case STBI__PNG_TYPE('I','H','D','R'): { + int comp,filter; + if (!first) return stbi__err("multiple IHDR","Corrupt PNG"); + first = 0; + if (c.length != 13) return stbi__err("bad IHDR len","Corrupt PNG"); + s->img_x = stbi__get32be(s); + s->img_y = stbi__get32be(s); + if (s->img_y > STBI_MAX_DIMENSIONS) return stbi__err("too large","Very large image (corrupt?)"); + if (s->img_x > STBI_MAX_DIMENSIONS) return stbi__err("too large","Very large image (corrupt?)"); + z->depth = stbi__get8(s); if (z->depth != 1 && z->depth != 2 && z->depth != 4 && z->depth != 8 && z->depth != 16) return stbi__err("1/2/4/8/16-bit only","PNG not supported: 1/2/4/8/16-bit only"); + color = stbi__get8(s); if (color > 6) return stbi__err("bad ctype","Corrupt PNG"); + if (color == 3 && z->depth == 16) return stbi__err("bad ctype","Corrupt PNG"); + if (color == 3) pal_img_n = 3; else if (color & 1) return stbi__err("bad ctype","Corrupt PNG"); + comp = stbi__get8(s); if (comp) return stbi__err("bad comp method","Corrupt PNG"); + filter= stbi__get8(s); if (filter) return stbi__err("bad filter method","Corrupt PNG"); + interlace = stbi__get8(s); if (interlace>1) return stbi__err("bad interlace method","Corrupt PNG"); + if (!s->img_x || !s->img_y) return stbi__err("0-pixel image","Corrupt PNG"); + if (!pal_img_n) { + s->img_n = (color & 2 ? 3 : 1) + (color & 4 ? 1 : 0); + if ((1 << 30) / s->img_x / s->img_n < s->img_y) return stbi__err("too large", "Image too large to decode"); + } else { + // if paletted, then pal_n is our final components, and + // img_n is # components to decompress/filter. + s->img_n = 1; + if ((1 << 30) / s->img_x / 4 < s->img_y) return stbi__err("too large","Corrupt PNG"); + } + // even with SCAN_header, have to scan to see if we have a tRNS + break; + } + + case STBI__PNG_TYPE('P','L','T','E'): { + if (first) return stbi__err("first not IHDR", "Corrupt PNG"); + if (c.length > 256*3) return stbi__err("invalid PLTE","Corrupt PNG"); + pal_len = c.length / 3; + if (pal_len * 3 != c.length) return stbi__err("invalid PLTE","Corrupt PNG"); + for (i=0; i < pal_len; ++i) { + palette[i*4+0] = stbi__get8(s); + palette[i*4+1] = stbi__get8(s); + palette[i*4+2] = stbi__get8(s); + palette[i*4+3] = 255; + } + break; + } + + case STBI__PNG_TYPE('t','R','N','S'): { + if (first) return stbi__err("first not IHDR", "Corrupt PNG"); + if (z->idata) return stbi__err("tRNS after IDAT","Corrupt PNG"); + if (pal_img_n) { + if (scan == STBI__SCAN_header) { s->img_n = 4; return 1; } + if (pal_len == 0) return stbi__err("tRNS before PLTE","Corrupt PNG"); + if (c.length > pal_len) return stbi__err("bad tRNS len","Corrupt PNG"); + pal_img_n = 4; + for (i=0; i < c.length; ++i) + palette[i*4+3] = stbi__get8(s); + } else { + if (!(s->img_n & 1)) return stbi__err("tRNS with alpha","Corrupt PNG"); + if (c.length != (stbi__uint32) s->img_n*2) return stbi__err("bad tRNS len","Corrupt PNG"); + has_trans = 1; + // non-paletted with tRNS = constant alpha. if header-scanning, we can stop now. + if (scan == STBI__SCAN_header) { ++s->img_n; return 1; } + if (z->depth == 16) { + for (k = 0; k < s->img_n && k < 3; ++k) // extra loop test to suppress false GCC warning + tc16[k] = (stbi__uint16)stbi__get16be(s); // copy the values as-is + } else { + for (k = 0; k < s->img_n && k < 3; ++k) + tc[k] = (stbi_uc)(stbi__get16be(s) & 255) * stbi__depth_scale_table[z->depth]; // non 8-bit images will be larger + } + } + break; + } + + case STBI__PNG_TYPE('I','D','A','T'): { + if (first) return stbi__err("first not IHDR", "Corrupt PNG"); + if (pal_img_n && !pal_len) return stbi__err("no PLTE","Corrupt PNG"); + if (scan == STBI__SCAN_header) { + // header scan definitely stops at first IDAT + if (pal_img_n) + s->img_n = pal_img_n; + return 1; + } + if (c.length > (1u << 30)) return stbi__err("IDAT size limit", "IDAT section larger than 2^30 bytes"); + if ((int)(ioff + c.length) < (int)ioff) return 0; + if (ioff + c.length > idata_limit) { + stbi__uint32 idata_limit_old = idata_limit; + stbi_uc *p; + if (idata_limit == 0) idata_limit = c.length > 4096 ? c.length : 4096; + while (ioff + c.length > idata_limit) + idata_limit *= 2; + STBI_NOTUSED(idata_limit_old); + p = (stbi_uc *) STBI_REALLOC_SIZED(z->idata, idata_limit_old, idata_limit); if (p == NULL) return stbi__err("outofmem", "Out of memory"); + z->idata = p; + } + if (!stbi__getn(s, z->idata+ioff,c.length)) return stbi__err("outofdata","Corrupt PNG"); + ioff += c.length; + break; + } + + case STBI__PNG_TYPE('I','E','N','D'): { + stbi__uint32 raw_len, bpl; + if (first) return stbi__err("first not IHDR", "Corrupt PNG"); + if (scan != STBI__SCAN_load) return 1; + if (z->idata == NULL) return stbi__err("no IDAT","Corrupt PNG"); + // initial guess for decoded data size to avoid unnecessary reallocs + bpl = (s->img_x * z->depth + 7) / 8; // bytes per line, per component + raw_len = bpl * s->img_y * s->img_n /* pixels */ + s->img_y /* filter mode per row */; + z->expanded = (stbi_uc *) stbi_zlib_decode_malloc_guesssize_headerflag((char *) z->idata, ioff, raw_len, (int *) &raw_len, !is_iphone); + if (z->expanded == NULL) return 0; // zlib should set error + STBI_FREE(z->idata); z->idata = NULL; + if ((req_comp == s->img_n+1 && req_comp != 3 && !pal_img_n) || has_trans) + s->img_out_n = s->img_n+1; + else + s->img_out_n = s->img_n; + if (!stbi__create_png_image(z, z->expanded, raw_len, s->img_out_n, z->depth, color, interlace)) return 0; + if (has_trans) { + if (z->depth == 16) { + if (!stbi__compute_transparency16(z, tc16, s->img_out_n)) return 0; + } else { + if (!stbi__compute_transparency(z, tc, s->img_out_n)) return 0; + } + } + if (is_iphone && stbi__de_iphone_flag && s->img_out_n > 2) + stbi__de_iphone(z); + if (pal_img_n) { + // pal_img_n == 3 or 4 + s->img_n = pal_img_n; // record the actual colors we had + s->img_out_n = pal_img_n; + if (req_comp >= 3) s->img_out_n = req_comp; + if (!stbi__expand_png_palette(z, palette, pal_len, s->img_out_n)) + return 0; + } else if (has_trans) { + // non-paletted image with tRNS -> source image has (constant) alpha + ++s->img_n; + } + STBI_FREE(z->expanded); z->expanded = NULL; + // end of PNG chunk, read and skip CRC + stbi__get32be(s); + return 1; + } + + default: + // if critical, fail + if (first) return stbi__err("first not IHDR", "Corrupt PNG"); + if ((c.type & (1 << 29)) == 0) { + #ifndef STBI_NO_FAILURE_STRINGS + // not threadsafe + static char invalid_chunk[] = "XXXX PNG chunk not known"; + invalid_chunk[0] = STBI__BYTECAST(c.type >> 24); + invalid_chunk[1] = STBI__BYTECAST(c.type >> 16); + invalid_chunk[2] = STBI__BYTECAST(c.type >> 8); + invalid_chunk[3] = STBI__BYTECAST(c.type >> 0); + #endif + return stbi__err(invalid_chunk, "PNG not supported: unknown PNG chunk type"); + } + stbi__skip(s, c.length); + break; + } + // end of PNG chunk, read and skip CRC + stbi__get32be(s); + } +} + +static void *stbi__do_png(stbi__png *p, int *x, int *y, int *n, int req_comp, stbi__result_info *ri) +{ + void *result=NULL; + if (req_comp < 0 || req_comp > 4) return stbi__errpuc("bad req_comp", "Internal error"); + if (stbi__parse_png_file(p, STBI__SCAN_load, req_comp)) { + if (p->depth <= 8) + ri->bits_per_channel = 8; + else if (p->depth == 16) + ri->bits_per_channel = 16; + else + return stbi__errpuc("bad bits_per_channel", "PNG not supported: unsupported color depth"); + result = p->out; + p->out = NULL; + if (req_comp && req_comp != p->s->img_out_n) { + if (ri->bits_per_channel == 8) + result = stbi__convert_format((unsigned char *) result, p->s->img_out_n, req_comp, p->s->img_x, p->s->img_y); + else + result = stbi__convert_format16((stbi__uint16 *) result, p->s->img_out_n, req_comp, p->s->img_x, p->s->img_y); + p->s->img_out_n = req_comp; + if (result == NULL) return result; + } + *x = p->s->img_x; + *y = p->s->img_y; + if (n) *n = p->s->img_n; + } + STBI_FREE(p->out); p->out = NULL; + STBI_FREE(p->expanded); p->expanded = NULL; + STBI_FREE(p->idata); p->idata = NULL; + + return result; +} + +static void *stbi__png_load(stbi__context *s, int *x, int *y, int *comp, int req_comp, stbi__result_info *ri) +{ + stbi__png p; + p.s = s; + return stbi__do_png(&p, x,y,comp,req_comp, ri); +} + +static int stbi__png_test(stbi__context *s) +{ + int r; + r = stbi__check_png_header(s); + stbi__rewind(s); + return r; +} + +static int stbi__png_info_raw(stbi__png *p, int *x, int *y, int *comp) +{ + if (!stbi__parse_png_file(p, STBI__SCAN_header, 0)) { + stbi__rewind( p->s ); + return 0; + } + if (x) *x = p->s->img_x; + if (y) *y = p->s->img_y; + if (comp) *comp = p->s->img_n; + return 1; +} + +static int stbi__png_info(stbi__context *s, int *x, int *y, int *comp) +{ + stbi__png p; + p.s = s; + return stbi__png_info_raw(&p, x, y, comp); +} + +static int stbi__png_is16(stbi__context *s) +{ + stbi__png p; + p.s = s; + if (!stbi__png_info_raw(&p, NULL, NULL, NULL)) + return 0; + if (p.depth != 16) { + stbi__rewind(p.s); + return 0; + } + return 1; +} +#endif + +// Microsoft/Windows BMP image + +#ifndef STBI_NO_BMP +static int stbi__bmp_test_raw(stbi__context *s) +{ + int r; + int sz; + if (stbi__get8(s) != 'B') return 0; + if (stbi__get8(s) != 'M') return 0; + stbi__get32le(s); // discard filesize + stbi__get16le(s); // discard reserved + stbi__get16le(s); // discard reserved + stbi__get32le(s); // discard data offset + sz = stbi__get32le(s); + r = (sz == 12 || sz == 40 || sz == 56 || sz == 108 || sz == 124); + return r; +} + +static int stbi__bmp_test(stbi__context *s) +{ + int r = stbi__bmp_test_raw(s); + stbi__rewind(s); + return r; +} + + +// returns 0..31 for the highest set bit +static int stbi__high_bit(unsigned int z) +{ + int n=0; + if (z == 0) return -1; + if (z >= 0x10000) { n += 16; z >>= 16; } + if (z >= 0x00100) { n += 8; z >>= 8; } + if (z >= 0x00010) { n += 4; z >>= 4; } + if (z >= 0x00004) { n += 2; z >>= 2; } + if (z >= 0x00002) { n += 1;/* >>= 1;*/ } + return n; +} + +static int stbi__bitcount(unsigned int a) +{ + a = (a & 0x55555555) + ((a >> 1) & 0x55555555); // max 2 + a = (a & 0x33333333) + ((a >> 2) & 0x33333333); // max 4 + a = (a + (a >> 4)) & 0x0f0f0f0f; // max 8 per 4, now 8 bits + a = (a + (a >> 8)); // max 16 per 8 bits + a = (a + (a >> 16)); // max 32 per 8 bits + return a & 0xff; +} + +// extract an arbitrarily-aligned N-bit value (N=bits) +// from v, and then make it 8-bits long and fractionally +// extend it to full full range. +static int stbi__shiftsigned(unsigned int v, int shift, int bits) +{ + static unsigned int mul_table[9] = { + 0, + 0xff/*0b11111111*/, 0x55/*0b01010101*/, 0x49/*0b01001001*/, 0x11/*0b00010001*/, + 0x21/*0b00100001*/, 0x41/*0b01000001*/, 0x81/*0b10000001*/, 0x01/*0b00000001*/, + }; + static unsigned int shift_table[9] = { + 0, 0,0,1,0,2,4,6,0, + }; + if (shift < 0) + v <<= -shift; + else + v >>= shift; + STBI_ASSERT(v < 256); + v >>= (8-bits); + STBI_ASSERT(bits >= 0 && bits <= 8); + return (int) ((unsigned) v * mul_table[bits]) >> shift_table[bits]; +} + +typedef struct +{ + int bpp, offset, hsz; + unsigned int mr,mg,mb,ma, all_a; + int extra_read; +} stbi__bmp_data; + +static int stbi__bmp_set_mask_defaults(stbi__bmp_data *info, int compress) +{ + // BI_BITFIELDS specifies masks explicitly, don't override + if (compress == 3) + return 1; + + if (compress == 0) { + if (info->bpp == 16) { + info->mr = 31u << 10; + info->mg = 31u << 5; + info->mb = 31u << 0; + } else if (info->bpp == 32) { + info->mr = 0xffu << 16; + info->mg = 0xffu << 8; + info->mb = 0xffu << 0; + info->ma = 0xffu << 24; + info->all_a = 0; // if all_a is 0 at end, then we loaded alpha channel but it was all 0 + } else { + // otherwise, use defaults, which is all-0 + info->mr = info->mg = info->mb = info->ma = 0; + } + return 1; + } + return 0; // error +} + +static void *stbi__bmp_parse_header(stbi__context *s, stbi__bmp_data *info) +{ + int hsz; + if (stbi__get8(s) != 'B' || stbi__get8(s) != 'M') return stbi__errpuc("not BMP", "Corrupt BMP"); + stbi__get32le(s); // discard filesize + stbi__get16le(s); // discard reserved + stbi__get16le(s); // discard reserved + info->offset = stbi__get32le(s); + info->hsz = hsz = stbi__get32le(s); + info->mr = info->mg = info->mb = info->ma = 0; + info->extra_read = 14; + + if (info->offset < 0) return stbi__errpuc("bad BMP", "bad BMP"); + + if (hsz != 12 && hsz != 40 && hsz != 56 && hsz != 108 && hsz != 124) return stbi__errpuc("unknown BMP", "BMP type not supported: unknown"); + if (hsz == 12) { + s->img_x = stbi__get16le(s); + s->img_y = stbi__get16le(s); + } else { + s->img_x = stbi__get32le(s); + s->img_y = stbi__get32le(s); + } + if (stbi__get16le(s) != 1) return stbi__errpuc("bad BMP", "bad BMP"); + info->bpp = stbi__get16le(s); + if (hsz != 12) { + int compress = stbi__get32le(s); + if (compress == 1 || compress == 2) return stbi__errpuc("BMP RLE", "BMP type not supported: RLE"); + if (compress >= 4) return stbi__errpuc("BMP JPEG/PNG", "BMP type not supported: unsupported compression"); // this includes PNG/JPEG modes + if (compress == 3 && info->bpp != 16 && info->bpp != 32) return stbi__errpuc("bad BMP", "bad BMP"); // bitfields requires 16 or 32 bits/pixel + stbi__get32le(s); // discard sizeof + stbi__get32le(s); // discard hres + stbi__get32le(s); // discard vres + stbi__get32le(s); // discard colorsused + stbi__get32le(s); // discard max important + if (hsz == 40 || hsz == 56) { + if (hsz == 56) { + stbi__get32le(s); + stbi__get32le(s); + stbi__get32le(s); + stbi__get32le(s); + } + if (info->bpp == 16 || info->bpp == 32) { + if (compress == 0) { + stbi__bmp_set_mask_defaults(info, compress); + } else if (compress == 3) { + info->mr = stbi__get32le(s); + info->mg = stbi__get32le(s); + info->mb = stbi__get32le(s); + info->extra_read += 12; + // not documented, but generated by photoshop and handled by mspaint + if (info->mr == info->mg && info->mg == info->mb) { + // ?!?!? + return stbi__errpuc("bad BMP", "bad BMP"); + } + } else + return stbi__errpuc("bad BMP", "bad BMP"); + } + } else { + // V4/V5 header + int i; + if (hsz != 108 && hsz != 124) + return stbi__errpuc("bad BMP", "bad BMP"); + info->mr = stbi__get32le(s); + info->mg = stbi__get32le(s); + info->mb = stbi__get32le(s); + info->ma = stbi__get32le(s); + if (compress != 3) // override mr/mg/mb unless in BI_BITFIELDS mode, as per docs + stbi__bmp_set_mask_defaults(info, compress); + stbi__get32le(s); // discard color space + for (i=0; i < 12; ++i) + stbi__get32le(s); // discard color space parameters + if (hsz == 124) { + stbi__get32le(s); // discard rendering intent + stbi__get32le(s); // discard offset of profile data + stbi__get32le(s); // discard size of profile data + stbi__get32le(s); // discard reserved + } + } + } + return (void *) 1; +} + + +static void *stbi__bmp_load(stbi__context *s, int *x, int *y, int *comp, int req_comp, stbi__result_info *ri) +{ + stbi_uc *out; + unsigned int mr=0,mg=0,mb=0,ma=0, all_a; + stbi_uc pal[256][4]; + int psize=0,i,j,width; + int flip_vertically, pad, target; + stbi__bmp_data info; + STBI_NOTUSED(ri); + + info.all_a = 255; + if (stbi__bmp_parse_header(s, &info) == NULL) + return NULL; // error code already set + + flip_vertically = ((int) s->img_y) > 0; + s->img_y = abs((int) s->img_y); + + if (s->img_y > STBI_MAX_DIMENSIONS) return stbi__errpuc("too large","Very large image (corrupt?)"); + if (s->img_x > STBI_MAX_DIMENSIONS) return stbi__errpuc("too large","Very large image (corrupt?)"); + + mr = info.mr; + mg = info.mg; + mb = info.mb; + ma = info.ma; + all_a = info.all_a; + + if (info.hsz == 12) { + if (info.bpp < 24) + psize = (info.offset - info.extra_read - 24) / 3; + } else { + if (info.bpp < 16) + psize = (info.offset - info.extra_read - info.hsz) >> 2; + } + if (psize == 0) { + // accept some number of extra bytes after the header, but if the offset points either to before + // the header ends or implies a large amount of extra data, reject the file as malformed + int bytes_read_so_far = s->callback_already_read + (int)(s->img_buffer - s->img_buffer_original); + int header_limit = 1024; // max we actually read is below 256 bytes currently. + int extra_data_limit = 256*4; // what ordinarily goes here is a palette; 256 entries*4 bytes is its max size. + if (bytes_read_so_far <= 0 || bytes_read_so_far > header_limit) { + return stbi__errpuc("bad header", "Corrupt BMP"); + } + // we established that bytes_read_so_far is positive and sensible. + // the first half of this test rejects offsets that are either too small positives, or + // negative, and guarantees that info.offset >= bytes_read_so_far > 0. this in turn + // ensures the number computed in the second half of the test can't overflow. + if (info.offset < bytes_read_so_far || info.offset - bytes_read_so_far > extra_data_limit) { + return stbi__errpuc("bad offset", "Corrupt BMP"); + } else { + stbi__skip(s, info.offset - bytes_read_so_far); + } + } + + if (info.bpp == 24 && ma == 0xff000000) + s->img_n = 3; + else + s->img_n = ma ? 4 : 3; + if (req_comp && req_comp >= 3) // we can directly decode 3 or 4 + target = req_comp; + else + target = s->img_n; // if they want monochrome, we'll post-convert + + // sanity-check size + if (!stbi__mad3sizes_valid(target, s->img_x, s->img_y, 0)) + return stbi__errpuc("too large", "Corrupt BMP"); + + out = (stbi_uc *) stbi__malloc_mad3(target, s->img_x, s->img_y, 0); + if (!out) return stbi__errpuc("outofmem", "Out of memory"); + if (info.bpp < 16) { + int z=0; + if (psize == 0 || psize > 256) { STBI_FREE(out); return stbi__errpuc("invalid", "Corrupt BMP"); } + for (i=0; i < psize; ++i) { + pal[i][2] = stbi__get8(s); + pal[i][1] = stbi__get8(s); + pal[i][0] = stbi__get8(s); + if (info.hsz != 12) stbi__get8(s); + pal[i][3] = 255; + } + stbi__skip(s, info.offset - info.extra_read - info.hsz - psize * (info.hsz == 12 ? 3 : 4)); + if (info.bpp == 1) width = (s->img_x + 7) >> 3; + else if (info.bpp == 4) width = (s->img_x + 1) >> 1; + else if (info.bpp == 8) width = s->img_x; + else { STBI_FREE(out); return stbi__errpuc("bad bpp", "Corrupt BMP"); } + pad = (-width)&3; + if (info.bpp == 1) { + for (j=0; j < (int) s->img_y; ++j) { + int bit_offset = 7, v = stbi__get8(s); + for (i=0; i < (int) s->img_x; ++i) { + int color = (v>>bit_offset)&0x1; + out[z++] = pal[color][0]; + out[z++] = pal[color][1]; + out[z++] = pal[color][2]; + if (target == 4) out[z++] = 255; + if (i+1 == (int) s->img_x) break; + if((--bit_offset) < 0) { + bit_offset = 7; + v = stbi__get8(s); + } + } + stbi__skip(s, pad); + } + } else { + for (j=0; j < (int) s->img_y; ++j) { + for (i=0; i < (int) s->img_x; i += 2) { + int v=stbi__get8(s),v2=0; + if (info.bpp == 4) { + v2 = v & 15; + v >>= 4; + } + out[z++] = pal[v][0]; + out[z++] = pal[v][1]; + out[z++] = pal[v][2]; + if (target == 4) out[z++] = 255; + if (i+1 == (int) s->img_x) break; + v = (info.bpp == 8) ? stbi__get8(s) : v2; + out[z++] = pal[v][0]; + out[z++] = pal[v][1]; + out[z++] = pal[v][2]; + if (target == 4) out[z++] = 255; + } + stbi__skip(s, pad); + } + } + } else { + int rshift=0,gshift=0,bshift=0,ashift=0,rcount=0,gcount=0,bcount=0,acount=0; + int z = 0; + int easy=0; + stbi__skip(s, info.offset - info.extra_read - info.hsz); + if (info.bpp == 24) width = 3 * s->img_x; + else if (info.bpp == 16) width = 2*s->img_x; + else /* bpp = 32 and pad = 0 */ width=0; + pad = (-width) & 3; + if (info.bpp == 24) { + easy = 1; + } else if (info.bpp == 32) { + if (mb == 0xff && mg == 0xff00 && mr == 0x00ff0000 && ma == 0xff000000) + easy = 2; + } + if (!easy) { + if (!mr || !mg || !mb) { STBI_FREE(out); return stbi__errpuc("bad masks", "Corrupt BMP"); } + // right shift amt to put high bit in position #7 + rshift = stbi__high_bit(mr)-7; rcount = stbi__bitcount(mr); + gshift = stbi__high_bit(mg)-7; gcount = stbi__bitcount(mg); + bshift = stbi__high_bit(mb)-7; bcount = stbi__bitcount(mb); + ashift = stbi__high_bit(ma)-7; acount = stbi__bitcount(ma); + if (rcount > 8 || gcount > 8 || bcount > 8 || acount > 8) { STBI_FREE(out); return stbi__errpuc("bad masks", "Corrupt BMP"); } + } + for (j=0; j < (int) s->img_y; ++j) { + if (easy) { + for (i=0; i < (int) s->img_x; ++i) { + unsigned char a; + out[z+2] = stbi__get8(s); + out[z+1] = stbi__get8(s); + out[z+0] = stbi__get8(s); + z += 3; + a = (easy == 2 ? stbi__get8(s) : 255); + all_a |= a; + if (target == 4) out[z++] = a; + } + } else { + int bpp = info.bpp; + for (i=0; i < (int) s->img_x; ++i) { + stbi__uint32 v = (bpp == 16 ? (stbi__uint32) stbi__get16le(s) : stbi__get32le(s)); + unsigned int a; + out[z++] = STBI__BYTECAST(stbi__shiftsigned(v & mr, rshift, rcount)); + out[z++] = STBI__BYTECAST(stbi__shiftsigned(v & mg, gshift, gcount)); + out[z++] = STBI__BYTECAST(stbi__shiftsigned(v & mb, bshift, bcount)); + a = (ma ? stbi__shiftsigned(v & ma, ashift, acount) : 255); + all_a |= a; + if (target == 4) out[z++] = STBI__BYTECAST(a); + } + } + stbi__skip(s, pad); + } + } + + // if alpha channel is all 0s, replace with all 255s + if (target == 4 && all_a == 0) + for (i=4*s->img_x*s->img_y-1; i >= 0; i -= 4) + out[i] = 255; + + if (flip_vertically) { + stbi_uc t; + for (j=0; j < (int) s->img_y>>1; ++j) { + stbi_uc *p1 = out + j *s->img_x*target; + stbi_uc *p2 = out + (s->img_y-1-j)*s->img_x*target; + for (i=0; i < (int) s->img_x*target; ++i) { + t = p1[i]; p1[i] = p2[i]; p2[i] = t; + } + } + } + + if (req_comp && req_comp != target) { + out = stbi__convert_format(out, target, req_comp, s->img_x, s->img_y); + if (out == NULL) return out; // stbi__convert_format frees input on failure + } + + *x = s->img_x; + *y = s->img_y; + if (comp) *comp = s->img_n; + return out; +} +#endif + +// Targa Truevision - TGA +// by Jonathan Dummer +#ifndef STBI_NO_TGA +// returns STBI_rgb or whatever, 0 on error +static int stbi__tga_get_comp(int bits_per_pixel, int is_grey, int* is_rgb16) +{ + // only RGB or RGBA (incl. 16bit) or grey allowed + if (is_rgb16) *is_rgb16 = 0; + switch(bits_per_pixel) { + case 8: return STBI_grey; + case 16: if(is_grey) return STBI_grey_alpha; + // fallthrough + case 15: if(is_rgb16) *is_rgb16 = 1; + return STBI_rgb; + case 24: // fallthrough + case 32: return bits_per_pixel/8; + default: return 0; + } +} + +static int stbi__tga_info(stbi__context *s, int *x, int *y, int *comp) +{ + int tga_w, tga_h, tga_comp, tga_image_type, tga_bits_per_pixel, tga_colormap_bpp; + int sz, tga_colormap_type; + stbi__get8(s); // discard Offset + tga_colormap_type = stbi__get8(s); // colormap type + if( tga_colormap_type > 1 ) { + stbi__rewind(s); + return 0; // only RGB or indexed allowed + } + tga_image_type = stbi__get8(s); // image type + if ( tga_colormap_type == 1 ) { // colormapped (paletted) image + if (tga_image_type != 1 && tga_image_type != 9) { + stbi__rewind(s); + return 0; + } + stbi__skip(s,4); // skip index of first colormap entry and number of entries + sz = stbi__get8(s); // check bits per palette color entry + if ( (sz != 8) && (sz != 15) && (sz != 16) && (sz != 24) && (sz != 32) ) { + stbi__rewind(s); + return 0; + } + stbi__skip(s,4); // skip image x and y origin + tga_colormap_bpp = sz; + } else { // "normal" image w/o colormap - only RGB or grey allowed, +/- RLE + if ( (tga_image_type != 2) && (tga_image_type != 3) && (tga_image_type != 10) && (tga_image_type != 11) ) { + stbi__rewind(s); + return 0; // only RGB or grey allowed, +/- RLE + } + stbi__skip(s,9); // skip colormap specification and image x/y origin + tga_colormap_bpp = 0; + } + tga_w = stbi__get16le(s); + if( tga_w < 1 ) { + stbi__rewind(s); + return 0; // test width + } + tga_h = stbi__get16le(s); + if( tga_h < 1 ) { + stbi__rewind(s); + return 0; // test height + } + tga_bits_per_pixel = stbi__get8(s); // bits per pixel + stbi__get8(s); // ignore alpha bits + if (tga_colormap_bpp != 0) { + if((tga_bits_per_pixel != 8) && (tga_bits_per_pixel != 16)) { + // when using a colormap, tga_bits_per_pixel is the size of the indexes + // I don't think anything but 8 or 16bit indexes makes sense + stbi__rewind(s); + return 0; + } + tga_comp = stbi__tga_get_comp(tga_colormap_bpp, 0, NULL); + } else { + tga_comp = stbi__tga_get_comp(tga_bits_per_pixel, (tga_image_type == 3) || (tga_image_type == 11), NULL); + } + if(!tga_comp) { + stbi__rewind(s); + return 0; + } + if (x) *x = tga_w; + if (y) *y = tga_h; + if (comp) *comp = tga_comp; + return 1; // seems to have passed everything +} + +static int stbi__tga_test(stbi__context *s) +{ + int res = 0; + int sz, tga_color_type; + stbi__get8(s); // discard Offset + tga_color_type = stbi__get8(s); // color type + if ( tga_color_type > 1 ) goto errorEnd; // only RGB or indexed allowed + sz = stbi__get8(s); // image type + if ( tga_color_type == 1 ) { // colormapped (paletted) image + if (sz != 1 && sz != 9) goto errorEnd; // colortype 1 demands image type 1 or 9 + stbi__skip(s,4); // skip index of first colormap entry and number of entries + sz = stbi__get8(s); // check bits per palette color entry + if ( (sz != 8) && (sz != 15) && (sz != 16) && (sz != 24) && (sz != 32) ) goto errorEnd; + stbi__skip(s,4); // skip image x and y origin + } else { // "normal" image w/o colormap + if ( (sz != 2) && (sz != 3) && (sz != 10) && (sz != 11) ) goto errorEnd; // only RGB or grey allowed, +/- RLE + stbi__skip(s,9); // skip colormap specification and image x/y origin + } + if ( stbi__get16le(s) < 1 ) goto errorEnd; // test width + if ( stbi__get16le(s) < 1 ) goto errorEnd; // test height + sz = stbi__get8(s); // bits per pixel + if ( (tga_color_type == 1) && (sz != 8) && (sz != 16) ) goto errorEnd; // for colormapped images, bpp is size of an index + if ( (sz != 8) && (sz != 15) && (sz != 16) && (sz != 24) && (sz != 32) ) goto errorEnd; + + res = 1; // if we got this far, everything's good and we can return 1 instead of 0 + +errorEnd: + stbi__rewind(s); + return res; +} + +// read 16bit value and convert to 24bit RGB +static void stbi__tga_read_rgb16(stbi__context *s, stbi_uc* out) +{ + stbi__uint16 px = (stbi__uint16)stbi__get16le(s); + stbi__uint16 fiveBitMask = 31; + // we have 3 channels with 5bits each + int r = (px >> 10) & fiveBitMask; + int g = (px >> 5) & fiveBitMask; + int b = px & fiveBitMask; + // Note that this saves the data in RGB(A) order, so it doesn't need to be swapped later + out[0] = (stbi_uc)((r * 255)/31); + out[1] = (stbi_uc)((g * 255)/31); + out[2] = (stbi_uc)((b * 255)/31); + + // some people claim that the most significant bit might be used for alpha + // (possibly if an alpha-bit is set in the "image descriptor byte") + // but that only made 16bit test images completely translucent.. + // so let's treat all 15 and 16bit TGAs as RGB with no alpha. +} + +static void *stbi__tga_load(stbi__context *s, int *x, int *y, int *comp, int req_comp, stbi__result_info *ri) +{ + // read in the TGA header stuff + int tga_offset = stbi__get8(s); + int tga_indexed = stbi__get8(s); + int tga_image_type = stbi__get8(s); + int tga_is_RLE = 0; + int tga_palette_start = stbi__get16le(s); + int tga_palette_len = stbi__get16le(s); + int tga_palette_bits = stbi__get8(s); + int tga_x_origin = stbi__get16le(s); + int tga_y_origin = stbi__get16le(s); + int tga_width = stbi__get16le(s); + int tga_height = stbi__get16le(s); + int tga_bits_per_pixel = stbi__get8(s); + int tga_comp, tga_rgb16=0; + int tga_inverted = stbi__get8(s); + // int tga_alpha_bits = tga_inverted & 15; // the 4 lowest bits - unused (useless?) + // image data + unsigned char *tga_data; + unsigned char *tga_palette = NULL; + int i, j; + unsigned char raw_data[4] = {0}; + int RLE_count = 0; + int RLE_repeating = 0; + int read_next_pixel = 1; + STBI_NOTUSED(ri); + STBI_NOTUSED(tga_x_origin); // @TODO + STBI_NOTUSED(tga_y_origin); // @TODO + + if (tga_height > STBI_MAX_DIMENSIONS) return stbi__errpuc("too large","Very large image (corrupt?)"); + if (tga_width > STBI_MAX_DIMENSIONS) return stbi__errpuc("too large","Very large image (corrupt?)"); + + // do a tiny bit of precessing + if ( tga_image_type >= 8 ) + { + tga_image_type -= 8; + tga_is_RLE = 1; + } + tga_inverted = 1 - ((tga_inverted >> 5) & 1); + + // If I'm paletted, then I'll use the number of bits from the palette + if ( tga_indexed ) tga_comp = stbi__tga_get_comp(tga_palette_bits, 0, &tga_rgb16); + else tga_comp = stbi__tga_get_comp(tga_bits_per_pixel, (tga_image_type == 3), &tga_rgb16); + + if(!tga_comp) // shouldn't really happen, stbi__tga_test() should have ensured basic consistency + return stbi__errpuc("bad format", "Can't find out TGA pixelformat"); + + // tga info + *x = tga_width; + *y = tga_height; + if (comp) *comp = tga_comp; + + if (!stbi__mad3sizes_valid(tga_width, tga_height, tga_comp, 0)) + return stbi__errpuc("too large", "Corrupt TGA"); + + tga_data = (unsigned char*)stbi__malloc_mad3(tga_width, tga_height, tga_comp, 0); + if (!tga_data) return stbi__errpuc("outofmem", "Out of memory"); + + // skip to the data's starting position (offset usually = 0) + stbi__skip(s, tga_offset ); + + if ( !tga_indexed && !tga_is_RLE && !tga_rgb16 ) { + for (i=0; i < tga_height; ++i) { + int row = tga_inverted ? tga_height -i - 1 : i; + stbi_uc *tga_row = tga_data + row*tga_width*tga_comp; + stbi__getn(s, tga_row, tga_width * tga_comp); + } + } else { + // do I need to load a palette? + if ( tga_indexed) + { + if (tga_palette_len == 0) { /* you have to have at least one entry! */ + STBI_FREE(tga_data); + return stbi__errpuc("bad palette", "Corrupt TGA"); + } + + // any data to skip? (offset usually = 0) + stbi__skip(s, tga_palette_start ); + // load the palette + tga_palette = (unsigned char*)stbi__malloc_mad2(tga_palette_len, tga_comp, 0); + if (!tga_palette) { + STBI_FREE(tga_data); + return stbi__errpuc("outofmem", "Out of memory"); + } + if (tga_rgb16) { + stbi_uc *pal_entry = tga_palette; + STBI_ASSERT(tga_comp == STBI_rgb); + for (i=0; i < tga_palette_len; ++i) { + stbi__tga_read_rgb16(s, pal_entry); + pal_entry += tga_comp; + } + } else if (!stbi__getn(s, tga_palette, tga_palette_len * tga_comp)) { + STBI_FREE(tga_data); + STBI_FREE(tga_palette); + return stbi__errpuc("bad palette", "Corrupt TGA"); + } + } + // load the data + for (i=0; i < tga_width * tga_height; ++i) + { + // if I'm in RLE mode, do I need to get a RLE stbi__pngchunk? + if ( tga_is_RLE ) + { + if ( RLE_count == 0 ) + { + // yep, get the next byte as a RLE command + int RLE_cmd = stbi__get8(s); + RLE_count = 1 + (RLE_cmd & 127); + RLE_repeating = RLE_cmd >> 7; + read_next_pixel = 1; + } else if ( !RLE_repeating ) + { + read_next_pixel = 1; + } + } else + { + read_next_pixel = 1; + } + // OK, if I need to read a pixel, do it now + if ( read_next_pixel ) + { + // load however much data we did have + if ( tga_indexed ) + { + // read in index, then perform the lookup + int pal_idx = (tga_bits_per_pixel == 8) ? stbi__get8(s) : stbi__get16le(s); + if ( pal_idx >= tga_palette_len ) { + // invalid index + pal_idx = 0; + } + pal_idx *= tga_comp; + for (j = 0; j < tga_comp; ++j) { + raw_data[j] = tga_palette[pal_idx+j]; + } + } else if(tga_rgb16) { + STBI_ASSERT(tga_comp == STBI_rgb); + stbi__tga_read_rgb16(s, raw_data); + } else { + // read in the data raw + for (j = 0; j < tga_comp; ++j) { + raw_data[j] = stbi__get8(s); + } + } + // clear the reading flag for the next pixel + read_next_pixel = 0; + } // end of reading a pixel + + // copy data + for (j = 0; j < tga_comp; ++j) + tga_data[i*tga_comp+j] = raw_data[j]; + + // in case we're in RLE mode, keep counting down + --RLE_count; + } + // do I need to invert the image? + if ( tga_inverted ) + { + for (j = 0; j*2 < tga_height; ++j) + { + int index1 = j * tga_width * tga_comp; + int index2 = (tga_height - 1 - j) * tga_width * tga_comp; + for (i = tga_width * tga_comp; i > 0; --i) + { + unsigned char temp = tga_data[index1]; + tga_data[index1] = tga_data[index2]; + tga_data[index2] = temp; + ++index1; + ++index2; + } + } + } + // clear my palette, if I had one + if ( tga_palette != NULL ) + { + STBI_FREE( tga_palette ); + } + } + + // swap RGB - if the source data was RGB16, it already is in the right order + if (tga_comp >= 3 && !tga_rgb16) + { + unsigned char* tga_pixel = tga_data; + for (i=0; i < tga_width * tga_height; ++i) + { + unsigned char temp = tga_pixel[0]; + tga_pixel[0] = tga_pixel[2]; + tga_pixel[2] = temp; + tga_pixel += tga_comp; + } + } + + // convert to target component count + if (req_comp && req_comp != tga_comp) + tga_data = stbi__convert_format(tga_data, tga_comp, req_comp, tga_width, tga_height); + + // the things I do to get rid of an error message, and yet keep + // Microsoft's C compilers happy... [8^( + tga_palette_start = tga_palette_len = tga_palette_bits = + tga_x_origin = tga_y_origin = 0; + STBI_NOTUSED(tga_palette_start); + // OK, done + return tga_data; +} +#endif + +// ************************************************************************************************* +// Photoshop PSD loader -- PD by Thatcher Ulrich, integration by Nicolas Schulz, tweaked by STB + +#ifndef STBI_NO_PSD +static int stbi__psd_test(stbi__context *s) +{ + int r = (stbi__get32be(s) == 0x38425053); + stbi__rewind(s); + return r; +} + +static int stbi__psd_decode_rle(stbi__context *s, stbi_uc *p, int pixelCount) +{ + int count, nleft, len; + + count = 0; + while ((nleft = pixelCount - count) > 0) { + len = stbi__get8(s); + if (len == 128) { + // No-op. + } else if (len < 128) { + // Copy next len+1 bytes literally. + len++; + if (len > nleft) return 0; // corrupt data + count += len; + while (len) { + *p = stbi__get8(s); + p += 4; + len--; + } + } else if (len > 128) { + stbi_uc val; + // Next -len+1 bytes in the dest are replicated from next source byte. + // (Interpret len as a negative 8-bit int.) + len = 257 - len; + if (len > nleft) return 0; // corrupt data + val = stbi__get8(s); + count += len; + while (len) { + *p = val; + p += 4; + len--; + } + } + } + + return 1; +} + +static void *stbi__psd_load(stbi__context *s, int *x, int *y, int *comp, int req_comp, stbi__result_info *ri, int bpc) +{ + int pixelCount; + int channelCount, compression; + int channel, i; + int bitdepth; + int w,h; + stbi_uc *out; + STBI_NOTUSED(ri); + + // Check identifier + if (stbi__get32be(s) != 0x38425053) // "8BPS" + return stbi__errpuc("not PSD", "Corrupt PSD image"); + + // Check file type version. + if (stbi__get16be(s) != 1) + return stbi__errpuc("wrong version", "Unsupported version of PSD image"); + + // Skip 6 reserved bytes. + stbi__skip(s, 6 ); + + // Read the number of channels (R, G, B, A, etc). + channelCount = stbi__get16be(s); + if (channelCount < 0 || channelCount > 16) + return stbi__errpuc("wrong channel count", "Unsupported number of channels in PSD image"); + + // Read the rows and columns of the image. + h = stbi__get32be(s); + w = stbi__get32be(s); + + if (h > STBI_MAX_DIMENSIONS) return stbi__errpuc("too large","Very large image (corrupt?)"); + if (w > STBI_MAX_DIMENSIONS) return stbi__errpuc("too large","Very large image (corrupt?)"); + + // Make sure the depth is 8 bits. + bitdepth = stbi__get16be(s); + if (bitdepth != 8 && bitdepth != 16) + return stbi__errpuc("unsupported bit depth", "PSD bit depth is not 8 or 16 bit"); + + // Make sure the color mode is RGB. + // Valid options are: + // 0: Bitmap + // 1: Grayscale + // 2: Indexed color + // 3: RGB color + // 4: CMYK color + // 7: Multichannel + // 8: Duotone + // 9: Lab color + if (stbi__get16be(s) != 3) + return stbi__errpuc("wrong color format", "PSD is not in RGB color format"); + + // Skip the Mode Data. (It's the palette for indexed color; other info for other modes.) + stbi__skip(s,stbi__get32be(s) ); + + // Skip the image resources. (resolution, pen tool paths, etc) + stbi__skip(s, stbi__get32be(s) ); + + // Skip the reserved data. + stbi__skip(s, stbi__get32be(s) ); + + // Find out if the data is compressed. + // Known values: + // 0: no compression + // 1: RLE compressed + compression = stbi__get16be(s); + if (compression > 1) + return stbi__errpuc("bad compression", "PSD has an unknown compression format"); + + // Check size + if (!stbi__mad3sizes_valid(4, w, h, 0)) + return stbi__errpuc("too large", "Corrupt PSD"); + + // Create the destination image. + + if (!compression && bitdepth == 16 && bpc == 16) { + out = (stbi_uc *) stbi__malloc_mad3(8, w, h, 0); + ri->bits_per_channel = 16; + } else + out = (stbi_uc *) stbi__malloc(4 * w*h); + + if (!out) return stbi__errpuc("outofmem", "Out of memory"); + pixelCount = w*h; + + // Initialize the data to zero. + //memset( out, 0, pixelCount * 4 ); + + // Finally, the image data. + if (compression) { + // RLE as used by .PSD and .TIFF + // Loop until you get the number of unpacked bytes you are expecting: + // Read the next source byte into n. + // If n is between 0 and 127 inclusive, copy the next n+1 bytes literally. + // Else if n is between -127 and -1 inclusive, copy the next byte -n+1 times. + // Else if n is 128, noop. + // Endloop + + // The RLE-compressed data is preceded by a 2-byte data count for each row in the data, + // which we're going to just skip. + stbi__skip(s, h * channelCount * 2 ); + + // Read the RLE data by channel. + for (channel = 0; channel < 4; channel++) { + stbi_uc *p; + + p = out+channel; + if (channel >= channelCount) { + // Fill this channel with default data. + for (i = 0; i < pixelCount; i++, p += 4) + *p = (channel == 3 ? 255 : 0); + } else { + // Read the RLE data. + if (!stbi__psd_decode_rle(s, p, pixelCount)) { + STBI_FREE(out); + return stbi__errpuc("corrupt", "bad RLE data"); + } + } + } + + } else { + // We're at the raw image data. It's each channel in order (Red, Green, Blue, Alpha, ...) + // where each channel consists of an 8-bit (or 16-bit) value for each pixel in the image. + + // Read the data by channel. + for (channel = 0; channel < 4; channel++) { + if (channel >= channelCount) { + // Fill this channel with default data. + if (bitdepth == 16 && bpc == 16) { + stbi__uint16 *q = ((stbi__uint16 *) out) + channel; + stbi__uint16 val = channel == 3 ? 65535 : 0; + for (i = 0; i < pixelCount; i++, q += 4) + *q = val; + } else { + stbi_uc *p = out+channel; + stbi_uc val = channel == 3 ? 255 : 0; + for (i = 0; i < pixelCount; i++, p += 4) + *p = val; + } + } else { + if (ri->bits_per_channel == 16) { // output bpc + stbi__uint16 *q = ((stbi__uint16 *) out) + channel; + for (i = 0; i < pixelCount; i++, q += 4) + *q = (stbi__uint16) stbi__get16be(s); + } else { + stbi_uc *p = out+channel; + if (bitdepth == 16) { // input bpc + for (i = 0; i < pixelCount; i++, p += 4) + *p = (stbi_uc) (stbi__get16be(s) >> 8); + } else { + for (i = 0; i < pixelCount; i++, p += 4) + *p = stbi__get8(s); + } + } + } + } + } + + // remove weird white matte from PSD + if (channelCount >= 4) { + if (ri->bits_per_channel == 16) { + for (i=0; i < w*h; ++i) { + stbi__uint16 *pixel = (stbi__uint16 *) out + 4*i; + if (pixel[3] != 0 && pixel[3] != 65535) { + float a = pixel[3] / 65535.0f; + float ra = 1.0f / a; + float inv_a = 65535.0f * (1 - ra); + pixel[0] = (stbi__uint16) (pixel[0]*ra + inv_a); + pixel[1] = (stbi__uint16) (pixel[1]*ra + inv_a); + pixel[2] = (stbi__uint16) (pixel[2]*ra + inv_a); + } + } + } else { + for (i=0; i < w*h; ++i) { + unsigned char *pixel = out + 4*i; + if (pixel[3] != 0 && pixel[3] != 255) { + float a = pixel[3] / 255.0f; + float ra = 1.0f / a; + float inv_a = 255.0f * (1 - ra); + pixel[0] = (unsigned char) (pixel[0]*ra + inv_a); + pixel[1] = (unsigned char) (pixel[1]*ra + inv_a); + pixel[2] = (unsigned char) (pixel[2]*ra + inv_a); + } + } + } + } + + // convert to desired output format + if (req_comp && req_comp != 4) { + if (ri->bits_per_channel == 16) + out = (stbi_uc *) stbi__convert_format16((stbi__uint16 *) out, 4, req_comp, w, h); + else + out = stbi__convert_format(out, 4, req_comp, w, h); + if (out == NULL) return out; // stbi__convert_format frees input on failure + } + + if (comp) *comp = 4; + *y = h; + *x = w; + + return out; +} +#endif + +// ************************************************************************************************* +// Softimage PIC loader +// by Tom Seddon +// +// See http://softimage.wiki.softimage.com/index.php/INFO:_PIC_file_format +// See http://ozviz.wasp.uwa.edu.au/~pbourke/dataformats/softimagepic/ + +#ifndef STBI_NO_PIC +static int stbi__pic_is4(stbi__context *s,const char *str) +{ + int i; + for (i=0; i<4; ++i) + if (stbi__get8(s) != (stbi_uc)str[i]) + return 0; + + return 1; +} + +static int stbi__pic_test_core(stbi__context *s) +{ + int i; + + if (!stbi__pic_is4(s,"\x53\x80\xF6\x34")) + return 0; + + for(i=0;i<84;++i) + stbi__get8(s); + + if (!stbi__pic_is4(s,"PICT")) + return 0; + + return 1; +} + +typedef struct +{ + stbi_uc size,type,channel; +} stbi__pic_packet; + +static stbi_uc *stbi__readval(stbi__context *s, int channel, stbi_uc *dest) +{ + int mask=0x80, i; + + for (i=0; i<4; ++i, mask>>=1) { + if (channel & mask) { + if (stbi__at_eof(s)) return stbi__errpuc("bad file","PIC file too short"); + dest[i]=stbi__get8(s); + } + } + + return dest; +} + +static void stbi__copyval(int channel,stbi_uc *dest,const stbi_uc *src) +{ + int mask=0x80,i; + + for (i=0;i<4; ++i, mask>>=1) + if (channel&mask) + dest[i]=src[i]; +} + +static stbi_uc *stbi__pic_load_core(stbi__context *s,int width,int height,int *comp, stbi_uc *result) +{ + int act_comp=0,num_packets=0,y,chained; + stbi__pic_packet packets[10]; + + // this will (should...) cater for even some bizarre stuff like having data + // for the same channel in multiple packets. + do { + stbi__pic_packet *packet; + + if (num_packets==sizeof(packets)/sizeof(packets[0])) + return stbi__errpuc("bad format","too many packets"); + + packet = &packets[num_packets++]; + + chained = stbi__get8(s); + packet->size = stbi__get8(s); + packet->type = stbi__get8(s); + packet->channel = stbi__get8(s); + + act_comp |= packet->channel; + + if (stbi__at_eof(s)) return stbi__errpuc("bad file","file too short (reading packets)"); + if (packet->size != 8) return stbi__errpuc("bad format","packet isn't 8bpp"); + } while (chained); + + *comp = (act_comp & 0x10 ? 4 : 3); // has alpha channel? + + for(y=0; ytype) { + default: + return stbi__errpuc("bad format","packet has bad compression type"); + + case 0: {//uncompressed + int x; + + for(x=0;xchannel,dest)) + return 0; + break; + } + + case 1://Pure RLE + { + int left=width, i; + + while (left>0) { + stbi_uc count,value[4]; + + count=stbi__get8(s); + if (stbi__at_eof(s)) return stbi__errpuc("bad file","file too short (pure read count)"); + + if (count > left) + count = (stbi_uc) left; + + if (!stbi__readval(s,packet->channel,value)) return 0; + + for(i=0; ichannel,dest,value); + left -= count; + } + } + break; + + case 2: {//Mixed RLE + int left=width; + while (left>0) { + int count = stbi__get8(s), i; + if (stbi__at_eof(s)) return stbi__errpuc("bad file","file too short (mixed read count)"); + + if (count >= 128) { // Repeated + stbi_uc value[4]; + + if (count==128) + count = stbi__get16be(s); + else + count -= 127; + if (count > left) + return stbi__errpuc("bad file","scanline overrun"); + + if (!stbi__readval(s,packet->channel,value)) + return 0; + + for(i=0;ichannel,dest,value); + } else { // Raw + ++count; + if (count>left) return stbi__errpuc("bad file","scanline overrun"); + + for(i=0;ichannel,dest)) + return 0; + } + left-=count; + } + break; + } + } + } + } + + return result; +} + +static void *stbi__pic_load(stbi__context *s,int *px,int *py,int *comp,int req_comp, stbi__result_info *ri) +{ + stbi_uc *result; + int i, x,y, internal_comp; + STBI_NOTUSED(ri); + + if (!comp) comp = &internal_comp; + + for (i=0; i<92; ++i) + stbi__get8(s); + + x = stbi__get16be(s); + y = stbi__get16be(s); + + if (y > STBI_MAX_DIMENSIONS) return stbi__errpuc("too large","Very large image (corrupt?)"); + if (x > STBI_MAX_DIMENSIONS) return stbi__errpuc("too large","Very large image (corrupt?)"); + + if (stbi__at_eof(s)) return stbi__errpuc("bad file","file too short (pic header)"); + if (!stbi__mad3sizes_valid(x, y, 4, 0)) return stbi__errpuc("too large", "PIC image too large to decode"); + + stbi__get32be(s); //skip `ratio' + stbi__get16be(s); //skip `fields' + stbi__get16be(s); //skip `pad' + + // intermediate buffer is RGBA + result = (stbi_uc *) stbi__malloc_mad3(x, y, 4, 0); + if (!result) return stbi__errpuc("outofmem", "Out of memory"); + memset(result, 0xff, x*y*4); + + if (!stbi__pic_load_core(s,x,y,comp, result)) { + STBI_FREE(result); + result=0; + } + *px = x; + *py = y; + if (req_comp == 0) req_comp = *comp; + result=stbi__convert_format(result,4,req_comp,x,y); + + return result; +} + +static int stbi__pic_test(stbi__context *s) +{ + int r = stbi__pic_test_core(s); + stbi__rewind(s); + return r; +} +#endif + +// ************************************************************************************************* +// GIF loader -- public domain by Jean-Marc Lienher -- simplified/shrunk by stb + +#ifndef STBI_NO_GIF +typedef struct +{ + stbi__int16 prefix; + stbi_uc first; + stbi_uc suffix; +} stbi__gif_lzw; + +typedef struct +{ + int w,h; + stbi_uc *out; // output buffer (always 4 components) + stbi_uc *background; // The current "background" as far as a gif is concerned + stbi_uc *history; + int flags, bgindex, ratio, transparent, eflags; + stbi_uc pal[256][4]; + stbi_uc lpal[256][4]; + stbi__gif_lzw codes[8192]; + stbi_uc *color_table; + int parse, step; + int lflags; + int start_x, start_y; + int max_x, max_y; + int cur_x, cur_y; + int line_size; + int delay; +} stbi__gif; + +static int stbi__gif_test_raw(stbi__context *s) +{ + int sz; + if (stbi__get8(s) != 'G' || stbi__get8(s) != 'I' || stbi__get8(s) != 'F' || stbi__get8(s) != '8') return 0; + sz = stbi__get8(s); + if (sz != '9' && sz != '7') return 0; + if (stbi__get8(s) != 'a') return 0; + return 1; +} + +static int stbi__gif_test(stbi__context *s) +{ + int r = stbi__gif_test_raw(s); + stbi__rewind(s); + return r; +} + +static void stbi__gif_parse_colortable(stbi__context *s, stbi_uc pal[256][4], int num_entries, int transp) +{ + int i; + for (i=0; i < num_entries; ++i) { + pal[i][2] = stbi__get8(s); + pal[i][1] = stbi__get8(s); + pal[i][0] = stbi__get8(s); + pal[i][3] = transp == i ? 0 : 255; + } +} + +static int stbi__gif_header(stbi__context *s, stbi__gif *g, int *comp, int is_info) +{ + stbi_uc version; + if (stbi__get8(s) != 'G' || stbi__get8(s) != 'I' || stbi__get8(s) != 'F' || stbi__get8(s) != '8') + return stbi__err("not GIF", "Corrupt GIF"); + + version = stbi__get8(s); + if (version != '7' && version != '9') return stbi__err("not GIF", "Corrupt GIF"); + if (stbi__get8(s) != 'a') return stbi__err("not GIF", "Corrupt GIF"); + + stbi__g_failure_reason = ""; + g->w = stbi__get16le(s); + g->h = stbi__get16le(s); + g->flags = stbi__get8(s); + g->bgindex = stbi__get8(s); + g->ratio = stbi__get8(s); + g->transparent = -1; + + if (g->w > STBI_MAX_DIMENSIONS) return stbi__err("too large","Very large image (corrupt?)"); + if (g->h > STBI_MAX_DIMENSIONS) return stbi__err("too large","Very large image (corrupt?)"); + + if (comp != 0) *comp = 4; // can't actually tell whether it's 3 or 4 until we parse the comments + + if (is_info) return 1; + + if (g->flags & 0x80) + stbi__gif_parse_colortable(s,g->pal, 2 << (g->flags & 7), -1); + + return 1; +} + +static int stbi__gif_info_raw(stbi__context *s, int *x, int *y, int *comp) +{ + stbi__gif* g = (stbi__gif*) stbi__malloc(sizeof(stbi__gif)); + if (!g) return stbi__err("outofmem", "Out of memory"); + if (!stbi__gif_header(s, g, comp, 1)) { + STBI_FREE(g); + stbi__rewind( s ); + return 0; + } + if (x) *x = g->w; + if (y) *y = g->h; + STBI_FREE(g); + return 1; +} + +static void stbi__out_gif_code(stbi__gif *g, stbi__uint16 code) +{ + stbi_uc *p, *c; + int idx; + + // recurse to decode the prefixes, since the linked-list is backwards, + // and working backwards through an interleaved image would be nasty + if (g->codes[code].prefix >= 0) + stbi__out_gif_code(g, g->codes[code].prefix); + + if (g->cur_y >= g->max_y) return; + + idx = g->cur_x + g->cur_y; + p = &g->out[idx]; + g->history[idx / 4] = 1; + + c = &g->color_table[g->codes[code].suffix * 4]; + if (c[3] > 128) { // don't render transparent pixels; + p[0] = c[2]; + p[1] = c[1]; + p[2] = c[0]; + p[3] = c[3]; + } + g->cur_x += 4; + + if (g->cur_x >= g->max_x) { + g->cur_x = g->start_x; + g->cur_y += g->step; + + while (g->cur_y >= g->max_y && g->parse > 0) { + g->step = (1 << g->parse) * g->line_size; + g->cur_y = g->start_y + (g->step >> 1); + --g->parse; + } + } +} + +static stbi_uc *stbi__process_gif_raster(stbi__context *s, stbi__gif *g) +{ + stbi_uc lzw_cs; + stbi__int32 len, init_code; + stbi__uint32 first; + stbi__int32 codesize, codemask, avail, oldcode, bits, valid_bits, clear; + stbi__gif_lzw *p; + + lzw_cs = stbi__get8(s); + if (lzw_cs > 12) return NULL; + clear = 1 << lzw_cs; + first = 1; + codesize = lzw_cs + 1; + codemask = (1 << codesize) - 1; + bits = 0; + valid_bits = 0; + for (init_code = 0; init_code < clear; init_code++) { + g->codes[init_code].prefix = -1; + g->codes[init_code].first = (stbi_uc) init_code; + g->codes[init_code].suffix = (stbi_uc) init_code; + } + + // support no starting clear code + avail = clear+2; + oldcode = -1; + + len = 0; + for(;;) { + if (valid_bits < codesize) { + if (len == 0) { + len = stbi__get8(s); // start new block + if (len == 0) + return g->out; + } + --len; + bits |= (stbi__int32) stbi__get8(s) << valid_bits; + valid_bits += 8; + } else { + stbi__int32 code = bits & codemask; + bits >>= codesize; + valid_bits -= codesize; + // @OPTIMIZE: is there some way we can accelerate the non-clear path? + if (code == clear) { // clear code + codesize = lzw_cs + 1; + codemask = (1 << codesize) - 1; + avail = clear + 2; + oldcode = -1; + first = 0; + } else if (code == clear + 1) { // end of stream code + stbi__skip(s, len); + while ((len = stbi__get8(s)) > 0) + stbi__skip(s,len); + return g->out; + } else if (code <= avail) { + if (first) { + return stbi__errpuc("no clear code", "Corrupt GIF"); + } + + if (oldcode >= 0) { + p = &g->codes[avail++]; + if (avail > 8192) { + return stbi__errpuc("too many codes", "Corrupt GIF"); + } + + p->prefix = (stbi__int16) oldcode; + p->first = g->codes[oldcode].first; + p->suffix = (code == avail) ? p->first : g->codes[code].first; + } else if (code == avail) + return stbi__errpuc("illegal code in raster", "Corrupt GIF"); + + stbi__out_gif_code(g, (stbi__uint16) code); + + if ((avail & codemask) == 0 && avail <= 0x0FFF) { + codesize++; + codemask = (1 << codesize) - 1; + } + + oldcode = code; + } else { + return stbi__errpuc("illegal code in raster", "Corrupt GIF"); + } + } + } +} + +// this function is designed to support animated gifs, although stb_image doesn't support it +// two back is the image from two frames ago, used for a very specific disposal format +static stbi_uc *stbi__gif_load_next(stbi__context *s, stbi__gif *g, int *comp, int req_comp, stbi_uc *two_back) +{ + int dispose; + int first_frame; + int pi; + int pcount; + STBI_NOTUSED(req_comp); + + // on first frame, any non-written pixels get the background colour (non-transparent) + first_frame = 0; + if (g->out == 0) { + if (!stbi__gif_header(s, g, comp,0)) return 0; // stbi__g_failure_reason set by stbi__gif_header + if (!stbi__mad3sizes_valid(4, g->w, g->h, 0)) + return stbi__errpuc("too large", "GIF image is too large"); + pcount = g->w * g->h; + g->out = (stbi_uc *) stbi__malloc(4 * pcount); + g->background = (stbi_uc *) stbi__malloc(4 * pcount); + g->history = (stbi_uc *) stbi__malloc(pcount); + if (!g->out || !g->background || !g->history) + return stbi__errpuc("outofmem", "Out of memory"); + + // image is treated as "transparent" at the start - ie, nothing overwrites the current background; + // background colour is only used for pixels that are not rendered first frame, after that "background" + // color refers to the color that was there the previous frame. + memset(g->out, 0x00, 4 * pcount); + memset(g->background, 0x00, 4 * pcount); // state of the background (starts transparent) + memset(g->history, 0x00, pcount); // pixels that were affected previous frame + first_frame = 1; + } else { + // second frame - how do we dispose of the previous one? + dispose = (g->eflags & 0x1C) >> 2; + pcount = g->w * g->h; + + if ((dispose == 3) && (two_back == 0)) { + dispose = 2; // if I don't have an image to revert back to, default to the old background + } + + if (dispose == 3) { // use previous graphic + for (pi = 0; pi < pcount; ++pi) { + if (g->history[pi]) { + memcpy( &g->out[pi * 4], &two_back[pi * 4], 4 ); + } + } + } else if (dispose == 2) { + // restore what was changed last frame to background before that frame; + for (pi = 0; pi < pcount; ++pi) { + if (g->history[pi]) { + memcpy( &g->out[pi * 4], &g->background[pi * 4], 4 ); + } + } + } else { + // This is a non-disposal case eithe way, so just + // leave the pixels as is, and they will become the new background + // 1: do not dispose + // 0: not specified. + } + + // background is what out is after the undoing of the previou frame; + memcpy( g->background, g->out, 4 * g->w * g->h ); + } + + // clear my history; + memset( g->history, 0x00, g->w * g->h ); // pixels that were affected previous frame + + for (;;) { + int tag = stbi__get8(s); + switch (tag) { + case 0x2C: /* Image Descriptor */ + { + stbi__int32 x, y, w, h; + stbi_uc *o; + + x = stbi__get16le(s); + y = stbi__get16le(s); + w = stbi__get16le(s); + h = stbi__get16le(s); + if (((x + w) > (g->w)) || ((y + h) > (g->h))) + return stbi__errpuc("bad Image Descriptor", "Corrupt GIF"); + + g->line_size = g->w * 4; + g->start_x = x * 4; + g->start_y = y * g->line_size; + g->max_x = g->start_x + w * 4; + g->max_y = g->start_y + h * g->line_size; + g->cur_x = g->start_x; + g->cur_y = g->start_y; + + // if the width of the specified rectangle is 0, that means + // we may not see *any* pixels or the image is malformed; + // to make sure this is caught, move the current y down to + // max_y (which is what out_gif_code checks). + if (w == 0) + g->cur_y = g->max_y; + + g->lflags = stbi__get8(s); + + if (g->lflags & 0x40) { + g->step = 8 * g->line_size; // first interlaced spacing + g->parse = 3; + } else { + g->step = g->line_size; + g->parse = 0; + } + + if (g->lflags & 0x80) { + stbi__gif_parse_colortable(s,g->lpal, 2 << (g->lflags & 7), g->eflags & 0x01 ? g->transparent : -1); + g->color_table = (stbi_uc *) g->lpal; + } else if (g->flags & 0x80) { + g->color_table = (stbi_uc *) g->pal; + } else + return stbi__errpuc("missing color table", "Corrupt GIF"); + + o = stbi__process_gif_raster(s, g); + if (!o) return NULL; + + // if this was the first frame, + pcount = g->w * g->h; + if (first_frame && (g->bgindex > 0)) { + // if first frame, any pixel not drawn to gets the background color + for (pi = 0; pi < pcount; ++pi) { + if (g->history[pi] == 0) { + g->pal[g->bgindex][3] = 255; // just in case it was made transparent, undo that; It will be reset next frame if need be; + memcpy( &g->out[pi * 4], &g->pal[g->bgindex], 4 ); + } + } + } + + return o; + } + + case 0x21: // Comment Extension. + { + int len; + int ext = stbi__get8(s); + if (ext == 0xF9) { // Graphic Control Extension. + len = stbi__get8(s); + if (len == 4) { + g->eflags = stbi__get8(s); + g->delay = 10 * stbi__get16le(s); // delay - 1/100th of a second, saving as 1/1000ths. + + // unset old transparent + if (g->transparent >= 0) { + g->pal[g->transparent][3] = 255; + } + if (g->eflags & 0x01) { + g->transparent = stbi__get8(s); + if (g->transparent >= 0) { + g->pal[g->transparent][3] = 0; + } + } else { + // don't need transparent + stbi__skip(s, 1); + g->transparent = -1; + } + } else { + stbi__skip(s, len); + break; + } + } + while ((len = stbi__get8(s)) != 0) { + stbi__skip(s, len); + } + break; + } + + case 0x3B: // gif stream termination code + return (stbi_uc *) s; // using '1' causes warning on some compilers + + default: + return stbi__errpuc("unknown code", "Corrupt GIF"); + } + } +} + +static void *stbi__load_gif_main_outofmem(stbi__gif *g, stbi_uc *out, int **delays) +{ + STBI_FREE(g->out); + STBI_FREE(g->history); + STBI_FREE(g->background); + + if (out) STBI_FREE(out); + if (delays && *delays) STBI_FREE(*delays); + return stbi__errpuc("outofmem", "Out of memory"); +} + +static void *stbi__load_gif_main(stbi__context *s, int **delays, int *x, int *y, int *z, int *comp, int req_comp) +{ + if (stbi__gif_test(s)) { + int layers = 0; + stbi_uc *u = 0; + stbi_uc *out = 0; + stbi_uc *two_back = 0; + stbi__gif g; + int stride; + int out_size = 0; + int delays_size = 0; + + STBI_NOTUSED(out_size); + STBI_NOTUSED(delays_size); + + memset(&g, 0, sizeof(g)); + if (delays) { + *delays = 0; + } + + do { + u = stbi__gif_load_next(s, &g, comp, req_comp, two_back); + if (u == (stbi_uc *) s) u = 0; // end of animated gif marker + + if (u) { + *x = g.w; + *y = g.h; + ++layers; + stride = g.w * g.h * 4; + + if (out) { + void *tmp = (stbi_uc*) STBI_REALLOC_SIZED( out, out_size, layers * stride ); + if (!tmp) + return stbi__load_gif_main_outofmem(&g, out, delays); + else { + out = (stbi_uc*) tmp; + out_size = layers * stride; + } + + if (delays) { + int *new_delays = (int*) STBI_REALLOC_SIZED( *delays, delays_size, sizeof(int) * layers ); + if (!new_delays) + return stbi__load_gif_main_outofmem(&g, out, delays); + *delays = new_delays; + delays_size = layers * sizeof(int); + } + } else { + out = (stbi_uc*)stbi__malloc( layers * stride ); + if (!out) + return stbi__load_gif_main_outofmem(&g, out, delays); + out_size = layers * stride; + if (delays) { + *delays = (int*) stbi__malloc( layers * sizeof(int) ); + if (!*delays) + return stbi__load_gif_main_outofmem(&g, out, delays); + delays_size = layers * sizeof(int); + } + } + memcpy( out + ((layers - 1) * stride), u, stride ); + if (layers >= 2) { + two_back = out - 2 * stride; + } + + if (delays) { + (*delays)[layers - 1U] = g.delay; + } + } + } while (u != 0); + + // free temp buffer; + STBI_FREE(g.out); + STBI_FREE(g.history); + STBI_FREE(g.background); + + // do the final conversion after loading everything; + if (req_comp && req_comp != 4) + out = stbi__convert_format(out, 4, req_comp, layers * g.w, g.h); + + *z = layers; + return out; + } else { + return stbi__errpuc("not GIF", "Image was not as a gif type."); + } +} + +static void *stbi__gif_load(stbi__context *s, int *x, int *y, int *comp, int req_comp, stbi__result_info *ri) +{ + stbi_uc *u = 0; + stbi__gif g; + memset(&g, 0, sizeof(g)); + STBI_NOTUSED(ri); + + u = stbi__gif_load_next(s, &g, comp, req_comp, 0); + if (u == (stbi_uc *) s) u = 0; // end of animated gif marker + if (u) { + *x = g.w; + *y = g.h; + + // moved conversion to after successful load so that the same + // can be done for multiple frames. + if (req_comp && req_comp != 4) + u = stbi__convert_format(u, 4, req_comp, g.w, g.h); + } else if (g.out) { + // if there was an error and we allocated an image buffer, free it! + STBI_FREE(g.out); + } + + // free buffers needed for multiple frame loading; + STBI_FREE(g.history); + STBI_FREE(g.background); + + return u; +} + +static int stbi__gif_info(stbi__context *s, int *x, int *y, int *comp) +{ + return stbi__gif_info_raw(s,x,y,comp); +} +#endif + +// ************************************************************************************************* +// Radiance RGBE HDR loader +// originally by Nicolas Schulz +#ifndef STBI_NO_HDR +static int stbi__hdr_test_core(stbi__context *s, const char *signature) +{ + int i; + for (i=0; signature[i]; ++i) + if (stbi__get8(s) != signature[i]) + return 0; + stbi__rewind(s); + return 1; +} + +static int stbi__hdr_test(stbi__context* s) +{ + int r = stbi__hdr_test_core(s, "#?RADIANCE\n"); + stbi__rewind(s); + if(!r) { + r = stbi__hdr_test_core(s, "#?RGBE\n"); + stbi__rewind(s); + } + return r; +} + +#define STBI__HDR_BUFLEN 1024 +static char *stbi__hdr_gettoken(stbi__context *z, char *buffer) +{ + int len=0; + char c = '\0'; + + c = (char) stbi__get8(z); + + while (!stbi__at_eof(z) && c != '\n') { + buffer[len++] = c; + if (len == STBI__HDR_BUFLEN-1) { + // flush to end of line + while (!stbi__at_eof(z) && stbi__get8(z) != '\n') + ; + break; + } + c = (char) stbi__get8(z); + } + + buffer[len] = 0; + return buffer; +} + +static void stbi__hdr_convert(float *output, stbi_uc *input, int req_comp) +{ + if ( input[3] != 0 ) { + float f1; + // Exponent + f1 = (float) ldexp(1.0f, input[3] - (int)(128 + 8)); + if (req_comp <= 2) + output[0] = (input[0] + input[1] + input[2]) * f1 / 3; + else { + output[0] = input[0] * f1; + output[1] = input[1] * f1; + output[2] = input[2] * f1; + } + if (req_comp == 2) output[1] = 1; + if (req_comp == 4) output[3] = 1; + } else { + switch (req_comp) { + case 4: output[3] = 1; /* fallthrough */ + case 3: output[0] = output[1] = output[2] = 0; + break; + case 2: output[1] = 1; /* fallthrough */ + case 1: output[0] = 0; + break; + } + } +} + +static float *stbi__hdr_load(stbi__context *s, int *x, int *y, int *comp, int req_comp, stbi__result_info *ri) +{ + char buffer[STBI__HDR_BUFLEN]; + char *token; + int valid = 0; + int width, height; + stbi_uc *scanline; + float *hdr_data; + int len; + unsigned char count, value; + int i, j, k, c1,c2, z; + const char *headerToken; + STBI_NOTUSED(ri); + + // Check identifier + headerToken = stbi__hdr_gettoken(s,buffer); + if (strcmp(headerToken, "#?RADIANCE") != 0 && strcmp(headerToken, "#?RGBE") != 0) + return stbi__errpf("not HDR", "Corrupt HDR image"); + + // Parse header + for(;;) { + token = stbi__hdr_gettoken(s,buffer); + if (token[0] == 0) break; + if (strcmp(token, "FORMAT=32-bit_rle_rgbe") == 0) valid = 1; + } + + if (!valid) return stbi__errpf("unsupported format", "Unsupported HDR format"); + + // Parse width and height + // can't use sscanf() if we're not using stdio! + token = stbi__hdr_gettoken(s,buffer); + if (strncmp(token, "-Y ", 3)) return stbi__errpf("unsupported data layout", "Unsupported HDR format"); + token += 3; + height = (int) strtol(token, &token, 10); + while (*token == ' ') ++token; + if (strncmp(token, "+X ", 3)) return stbi__errpf("unsupported data layout", "Unsupported HDR format"); + token += 3; + width = (int) strtol(token, NULL, 10); + + if (height > STBI_MAX_DIMENSIONS) return stbi__errpf("too large","Very large image (corrupt?)"); + if (width > STBI_MAX_DIMENSIONS) return stbi__errpf("too large","Very large image (corrupt?)"); + + *x = width; + *y = height; + + if (comp) *comp = 3; + if (req_comp == 0) req_comp = 3; + + if (!stbi__mad4sizes_valid(width, height, req_comp, sizeof(float), 0)) + return stbi__errpf("too large", "HDR image is too large"); + + // Read data + hdr_data = (float *) stbi__malloc_mad4(width, height, req_comp, sizeof(float), 0); + if (!hdr_data) + return stbi__errpf("outofmem", "Out of memory"); + + // Load image data + // image data is stored as some number of sca + if ( width < 8 || width >= 32768) { + // Read flat data + for (j=0; j < height; ++j) { + for (i=0; i < width; ++i) { + stbi_uc rgbe[4]; + main_decode_loop: + stbi__getn(s, rgbe, 4); + stbi__hdr_convert(hdr_data + j * width * req_comp + i * req_comp, rgbe, req_comp); + } + } + } else { + // Read RLE-encoded data + scanline = NULL; + + for (j = 0; j < height; ++j) { + c1 = stbi__get8(s); + c2 = stbi__get8(s); + len = stbi__get8(s); + if (c1 != 2 || c2 != 2 || (len & 0x80)) { + // not run-length encoded, so we have to actually use THIS data as a decoded + // pixel (note this can't be a valid pixel--one of RGB must be >= 128) + stbi_uc rgbe[4]; + rgbe[0] = (stbi_uc) c1; + rgbe[1] = (stbi_uc) c2; + rgbe[2] = (stbi_uc) len; + rgbe[3] = (stbi_uc) stbi__get8(s); + stbi__hdr_convert(hdr_data, rgbe, req_comp); + i = 1; + j = 0; + STBI_FREE(scanline); + goto main_decode_loop; // yes, this makes no sense + } + len <<= 8; + len |= stbi__get8(s); + if (len != width) { STBI_FREE(hdr_data); STBI_FREE(scanline); return stbi__errpf("invalid decoded scanline length", "corrupt HDR"); } + if (scanline == NULL) { + scanline = (stbi_uc *) stbi__malloc_mad2(width, 4, 0); + if (!scanline) { + STBI_FREE(hdr_data); + return stbi__errpf("outofmem", "Out of memory"); + } + } + + for (k = 0; k < 4; ++k) { + int nleft; + i = 0; + while ((nleft = width - i) > 0) { + count = stbi__get8(s); + if (count > 128) { + // Run + value = stbi__get8(s); + count -= 128; + if ((count == 0) || (count > nleft)) { STBI_FREE(hdr_data); STBI_FREE(scanline); return stbi__errpf("corrupt", "bad RLE data in HDR"); } + for (z = 0; z < count; ++z) + scanline[i++ * 4 + k] = value; + } else { + // Dump + if ((count == 0) || (count > nleft)) { STBI_FREE(hdr_data); STBI_FREE(scanline); return stbi__errpf("corrupt", "bad RLE data in HDR"); } + for (z = 0; z < count; ++z) + scanline[i++ * 4 + k] = stbi__get8(s); + } + } + } + for (i=0; i < width; ++i) + stbi__hdr_convert(hdr_data+(j*width + i)*req_comp, scanline + i*4, req_comp); + } + if (scanline) + STBI_FREE(scanline); + } + + return hdr_data; +} + +static int stbi__hdr_info(stbi__context *s, int *x, int *y, int *comp) +{ + char buffer[STBI__HDR_BUFLEN]; + char *token; + int valid = 0; + int dummy; + + if (!x) x = &dummy; + if (!y) y = &dummy; + if (!comp) comp = &dummy; + + if (stbi__hdr_test(s) == 0) { + stbi__rewind( s ); + return 0; + } + + for(;;) { + token = stbi__hdr_gettoken(s,buffer); + if (token[0] == 0) break; + if (strcmp(token, "FORMAT=32-bit_rle_rgbe") == 0) valid = 1; + } + + if (!valid) { + stbi__rewind( s ); + return 0; + } + token = stbi__hdr_gettoken(s,buffer); + if (strncmp(token, "-Y ", 3)) { + stbi__rewind( s ); + return 0; + } + token += 3; + *y = (int) strtol(token, &token, 10); + while (*token == ' ') ++token; + if (strncmp(token, "+X ", 3)) { + stbi__rewind( s ); + return 0; + } + token += 3; + *x = (int) strtol(token, NULL, 10); + *comp = 3; + return 1; +} +#endif // STBI_NO_HDR + +#ifndef STBI_NO_BMP +static int stbi__bmp_info(stbi__context *s, int *x, int *y, int *comp) +{ + void *p; + stbi__bmp_data info; + + info.all_a = 255; + p = stbi__bmp_parse_header(s, &info); + if (p == NULL) { + stbi__rewind( s ); + return 0; + } + if (x) *x = s->img_x; + if (y) *y = s->img_y; + if (comp) { + if (info.bpp == 24 && info.ma == 0xff000000) + *comp = 3; + else + *comp = info.ma ? 4 : 3; + } + return 1; +} +#endif + +#ifndef STBI_NO_PSD +static int stbi__psd_info(stbi__context *s, int *x, int *y, int *comp) +{ + int channelCount, dummy, depth; + if (!x) x = &dummy; + if (!y) y = &dummy; + if (!comp) comp = &dummy; + if (stbi__get32be(s) != 0x38425053) { + stbi__rewind( s ); + return 0; + } + if (stbi__get16be(s) != 1) { + stbi__rewind( s ); + return 0; + } + stbi__skip(s, 6); + channelCount = stbi__get16be(s); + if (channelCount < 0 || channelCount > 16) { + stbi__rewind( s ); + return 0; + } + *y = stbi__get32be(s); + *x = stbi__get32be(s); + depth = stbi__get16be(s); + if (depth != 8 && depth != 16) { + stbi__rewind( s ); + return 0; + } + if (stbi__get16be(s) != 3) { + stbi__rewind( s ); + return 0; + } + *comp = 4; + return 1; +} + +static int stbi__psd_is16(stbi__context *s) +{ + int channelCount, depth; + if (stbi__get32be(s) != 0x38425053) { + stbi__rewind( s ); + return 0; + } + if (stbi__get16be(s) != 1) { + stbi__rewind( s ); + return 0; + } + stbi__skip(s, 6); + channelCount = stbi__get16be(s); + if (channelCount < 0 || channelCount > 16) { + stbi__rewind( s ); + return 0; + } + STBI_NOTUSED(stbi__get32be(s)); + STBI_NOTUSED(stbi__get32be(s)); + depth = stbi__get16be(s); + if (depth != 16) { + stbi__rewind( s ); + return 0; + } + return 1; +} +#endif + +#ifndef STBI_NO_PIC +static int stbi__pic_info(stbi__context *s, int *x, int *y, int *comp) +{ + int act_comp=0,num_packets=0,chained,dummy; + stbi__pic_packet packets[10]; + + if (!x) x = &dummy; + if (!y) y = &dummy; + if (!comp) comp = &dummy; + + if (!stbi__pic_is4(s,"\x53\x80\xF6\x34")) { + stbi__rewind(s); + return 0; + } + + stbi__skip(s, 88); + + *x = stbi__get16be(s); + *y = stbi__get16be(s); + if (stbi__at_eof(s)) { + stbi__rewind( s); + return 0; + } + if ( (*x) != 0 && (1 << 28) / (*x) < (*y)) { + stbi__rewind( s ); + return 0; + } + + stbi__skip(s, 8); + + do { + stbi__pic_packet *packet; + + if (num_packets==sizeof(packets)/sizeof(packets[0])) + return 0; + + packet = &packets[num_packets++]; + chained = stbi__get8(s); + packet->size = stbi__get8(s); + packet->type = stbi__get8(s); + packet->channel = stbi__get8(s); + act_comp |= packet->channel; + + if (stbi__at_eof(s)) { + stbi__rewind( s ); + return 0; + } + if (packet->size != 8) { + stbi__rewind( s ); + return 0; + } + } while (chained); + + *comp = (act_comp & 0x10 ? 4 : 3); + + return 1; +} +#endif + +// ************************************************************************************************* +// Portable Gray Map and Portable Pixel Map loader +// by Ken Miller +// +// PGM: http://netpbm.sourceforge.net/doc/pgm.html +// PPM: http://netpbm.sourceforge.net/doc/ppm.html +// +// Known limitations: +// Does not support comments in the header section +// Does not support ASCII image data (formats P2 and P3) + +#ifndef STBI_NO_PNM + +static int stbi__pnm_test(stbi__context *s) +{ + char p, t; + p = (char) stbi__get8(s); + t = (char) stbi__get8(s); + if (p != 'P' || (t != '5' && t != '6')) { + stbi__rewind( s ); + return 0; + } + return 1; +} + +static void *stbi__pnm_load(stbi__context *s, int *x, int *y, int *comp, int req_comp, stbi__result_info *ri) +{ + stbi_uc *out; + STBI_NOTUSED(ri); + + ri->bits_per_channel = stbi__pnm_info(s, (int *)&s->img_x, (int *)&s->img_y, (int *)&s->img_n); + if (ri->bits_per_channel == 0) + return 0; + + if (s->img_y > STBI_MAX_DIMENSIONS) return stbi__errpuc("too large","Very large image (corrupt?)"); + if (s->img_x > STBI_MAX_DIMENSIONS) return stbi__errpuc("too large","Very large image (corrupt?)"); + + *x = s->img_x; + *y = s->img_y; + if (comp) *comp = s->img_n; + + if (!stbi__mad4sizes_valid(s->img_n, s->img_x, s->img_y, ri->bits_per_channel / 8, 0)) + return stbi__errpuc("too large", "PNM too large"); + + out = (stbi_uc *) stbi__malloc_mad4(s->img_n, s->img_x, s->img_y, ri->bits_per_channel / 8, 0); + if (!out) return stbi__errpuc("outofmem", "Out of memory"); + if (!stbi__getn(s, out, s->img_n * s->img_x * s->img_y * (ri->bits_per_channel / 8))) { + STBI_FREE(out); + return stbi__errpuc("bad PNM", "PNM file truncated"); + } + + if (req_comp && req_comp != s->img_n) { + if (ri->bits_per_channel == 16) { + out = (stbi_uc *) stbi__convert_format16((stbi__uint16 *) out, s->img_n, req_comp, s->img_x, s->img_y); + } else { + out = stbi__convert_format(out, s->img_n, req_comp, s->img_x, s->img_y); + } + if (out == NULL) return out; // stbi__convert_format frees input on failure + } + return out; +} + +static int stbi__pnm_isspace(char c) +{ + return c == ' ' || c == '\t' || c == '\n' || c == '\v' || c == '\f' || c == '\r'; +} + +static void stbi__pnm_skip_whitespace(stbi__context *s, char *c) +{ + for (;;) { + while (!stbi__at_eof(s) && stbi__pnm_isspace(*c)) + *c = (char) stbi__get8(s); + + if (stbi__at_eof(s) || *c != '#') + break; + + while (!stbi__at_eof(s) && *c != '\n' && *c != '\r' ) + *c = (char) stbi__get8(s); + } +} + +static int stbi__pnm_isdigit(char c) +{ + return c >= '0' && c <= '9'; +} + +static int stbi__pnm_getinteger(stbi__context *s, char *c) +{ + int value = 0; + + while (!stbi__at_eof(s) && stbi__pnm_isdigit(*c)) { + value = value*10 + (*c - '0'); + *c = (char) stbi__get8(s); + if((value > 214748364) || (value == 214748364 && *c > '7')) + return stbi__err("integer parse overflow", "Parsing an integer in the PPM header overflowed a 32-bit int"); + } + + return value; +} + +static int stbi__pnm_info(stbi__context *s, int *x, int *y, int *comp) +{ + int maxv, dummy; + char c, p, t; + + if (!x) x = &dummy; + if (!y) y = &dummy; + if (!comp) comp = &dummy; + + stbi__rewind(s); + + // Get identifier + p = (char) stbi__get8(s); + t = (char) stbi__get8(s); + if (p != 'P' || (t != '5' && t != '6')) { + stbi__rewind(s); + return 0; + } + + *comp = (t == '6') ? 3 : 1; // '5' is 1-component .pgm; '6' is 3-component .ppm + + c = (char) stbi__get8(s); + stbi__pnm_skip_whitespace(s, &c); + + *x = stbi__pnm_getinteger(s, &c); // read width + if(*x == 0) + return stbi__err("invalid width", "PPM image header had zero or overflowing width"); + stbi__pnm_skip_whitespace(s, &c); + + *y = stbi__pnm_getinteger(s, &c); // read height + if (*y == 0) + return stbi__err("invalid width", "PPM image header had zero or overflowing width"); + stbi__pnm_skip_whitespace(s, &c); + + maxv = stbi__pnm_getinteger(s, &c); // read max value + if (maxv > 65535) + return stbi__err("max value > 65535", "PPM image supports only 8-bit and 16-bit images"); + else if (maxv > 255) + return 16; + else + return 8; +} + +static int stbi__pnm_is16(stbi__context *s) +{ + if (stbi__pnm_info(s, NULL, NULL, NULL) == 16) + return 1; + return 0; +} +#endif + +static int stbi__info_main(stbi__context *s, int *x, int *y, int *comp) +{ + #ifndef STBI_NO_JPEG + if (stbi__jpeg_info(s, x, y, comp)) return 1; + #endif + + #ifndef STBI_NO_PNG + if (stbi__png_info(s, x, y, comp)) return 1; + #endif + + #ifndef STBI_NO_GIF + if (stbi__gif_info(s, x, y, comp)) return 1; + #endif + + #ifndef STBI_NO_BMP + if (stbi__bmp_info(s, x, y, comp)) return 1; + #endif + + #ifndef STBI_NO_PSD + if (stbi__psd_info(s, x, y, comp)) return 1; + #endif + + #ifndef STBI_NO_PIC + if (stbi__pic_info(s, x, y, comp)) return 1; + #endif + + #ifndef STBI_NO_PNM + if (stbi__pnm_info(s, x, y, comp)) return 1; + #endif + + #ifndef STBI_NO_HDR + if (stbi__hdr_info(s, x, y, comp)) return 1; + #endif + + // test tga last because it's a crappy test! + #ifndef STBI_NO_TGA + if (stbi__tga_info(s, x, y, comp)) + return 1; + #endif + return stbi__err("unknown image type", "Image not of any known type, or corrupt"); +} + +static int stbi__is_16_main(stbi__context *s) +{ + #ifndef STBI_NO_PNG + if (stbi__png_is16(s)) return 1; + #endif + + #ifndef STBI_NO_PSD + if (stbi__psd_is16(s)) return 1; + #endif + + #ifndef STBI_NO_PNM + if (stbi__pnm_is16(s)) return 1; + #endif + return 0; +} + +#ifndef STBI_NO_STDIO +STBIDEF int stbi_info(char const *filename, int *x, int *y, int *comp) +{ + FILE *f = stbi__fopen(filename, "rb"); + int result; + if (!f) return stbi__err("can't fopen", "Unable to open file"); + result = stbi_info_from_file(f, x, y, comp); + fclose(f); + return result; +} + +STBIDEF int stbi_info_from_file(FILE *f, int *x, int *y, int *comp) +{ + int r; + stbi__context s; + long pos = ftell(f); + stbi__start_file(&s, f); + r = stbi__info_main(&s,x,y,comp); + fseek(f,pos,SEEK_SET); + return r; +} + +STBIDEF int stbi_is_16_bit(char const *filename) +{ + FILE *f = stbi__fopen(filename, "rb"); + int result; + if (!f) return stbi__err("can't fopen", "Unable to open file"); + result = stbi_is_16_bit_from_file(f); + fclose(f); + return result; +} + +STBIDEF int stbi_is_16_bit_from_file(FILE *f) +{ + int r; + stbi__context s; + long pos = ftell(f); + stbi__start_file(&s, f); + r = stbi__is_16_main(&s); + fseek(f,pos,SEEK_SET); + return r; +} +#endif // !STBI_NO_STDIO + +STBIDEF int stbi_info_from_memory(stbi_uc const *buffer, int len, int *x, int *y, int *comp) +{ + stbi__context s; + stbi__start_mem(&s,buffer,len); + return stbi__info_main(&s,x,y,comp); +} + +STBIDEF int stbi_info_from_callbacks(stbi_io_callbacks const *c, void *user, int *x, int *y, int *comp) +{ + stbi__context s; + stbi__start_callbacks(&s, (stbi_io_callbacks *) c, user); + return stbi__info_main(&s,x,y,comp); +} + +STBIDEF int stbi_is_16_bit_from_memory(stbi_uc const *buffer, int len) +{ + stbi__context s; + stbi__start_mem(&s,buffer,len); + return stbi__is_16_main(&s); +} + +STBIDEF int stbi_is_16_bit_from_callbacks(stbi_io_callbacks const *c, void *user) +{ + stbi__context s; + stbi__start_callbacks(&s, (stbi_io_callbacks *) c, user); + return stbi__is_16_main(&s); +} + +#endif // STB_IMAGE_IMPLEMENTATION + +/* + revision history: + 2.20 (2019-02-07) support utf8 filenames in Windows; fix warnings and platform ifdefs + 2.19 (2018-02-11) fix warning + 2.18 (2018-01-30) fix warnings + 2.17 (2018-01-29) change sbti__shiftsigned to avoid clang -O2 bug + 1-bit BMP + *_is_16_bit api + avoid warnings + 2.16 (2017-07-23) all functions have 16-bit variants; + STBI_NO_STDIO works again; + compilation fixes; + fix rounding in unpremultiply; + optimize vertical flip; + disable raw_len validation; + documentation fixes + 2.15 (2017-03-18) fix png-1,2,4 bug; now all Imagenet JPGs decode; + warning fixes; disable run-time SSE detection on gcc; + uniform handling of optional "return" values; + thread-safe initialization of zlib tables + 2.14 (2017-03-03) remove deprecated STBI_JPEG_OLD; fixes for Imagenet JPGs + 2.13 (2016-11-29) add 16-bit API, only supported for PNG right now + 2.12 (2016-04-02) fix typo in 2.11 PSD fix that caused crashes + 2.11 (2016-04-02) allocate large structures on the stack + remove white matting for transparent PSD + fix reported channel count for PNG & BMP + re-enable SSE2 in non-gcc 64-bit + support RGB-formatted JPEG + read 16-bit PNGs (only as 8-bit) + 2.10 (2016-01-22) avoid warning introduced in 2.09 by STBI_REALLOC_SIZED + 2.09 (2016-01-16) allow comments in PNM files + 16-bit-per-pixel TGA (not bit-per-component) + info() for TGA could break due to .hdr handling + info() for BMP to shares code instead of sloppy parse + can use STBI_REALLOC_SIZED if allocator doesn't support realloc + code cleanup + 2.08 (2015-09-13) fix to 2.07 cleanup, reading RGB PSD as RGBA + 2.07 (2015-09-13) fix compiler warnings + partial animated GIF support + limited 16-bpc PSD support + #ifdef unused functions + bug with < 92 byte PIC,PNM,HDR,TGA + 2.06 (2015-04-19) fix bug where PSD returns wrong '*comp' value + 2.05 (2015-04-19) fix bug in progressive JPEG handling, fix warning + 2.04 (2015-04-15) try to re-enable SIMD on MinGW 64-bit + 2.03 (2015-04-12) extra corruption checking (mmozeiko) + stbi_set_flip_vertically_on_load (nguillemot) + fix NEON support; fix mingw support + 2.02 (2015-01-19) fix incorrect assert, fix warning + 2.01 (2015-01-17) fix various warnings; suppress SIMD on gcc 32-bit without -msse2 + 2.00b (2014-12-25) fix STBI_MALLOC in progressive JPEG + 2.00 (2014-12-25) optimize JPG, including x86 SSE2 & NEON SIMD (ryg) + progressive JPEG (stb) + PGM/PPM support (Ken Miller) + STBI_MALLOC,STBI_REALLOC,STBI_FREE + GIF bugfix -- seemingly never worked + STBI_NO_*, STBI_ONLY_* + 1.48 (2014-12-14) fix incorrectly-named assert() + 1.47 (2014-12-14) 1/2/4-bit PNG support, both direct and paletted (Omar Cornut & stb) + optimize PNG (ryg) + fix bug in interlaced PNG with user-specified channel count (stb) + 1.46 (2014-08-26) + fix broken tRNS chunk (colorkey-style transparency) in non-paletted PNG + 1.45 (2014-08-16) + fix MSVC-ARM internal compiler error by wrapping malloc + 1.44 (2014-08-07) + various warning fixes from Ronny Chevalier + 1.43 (2014-07-15) + fix MSVC-only compiler problem in code changed in 1.42 + 1.42 (2014-07-09) + don't define _CRT_SECURE_NO_WARNINGS (affects user code) + fixes to stbi__cleanup_jpeg path + added STBI_ASSERT to avoid requiring assert.h + 1.41 (2014-06-25) + fix search&replace from 1.36 that messed up comments/error messages + 1.40 (2014-06-22) + fix gcc struct-initialization warning + 1.39 (2014-06-15) + fix to TGA optimization when req_comp != number of components in TGA; + fix to GIF loading because BMP wasn't rewinding (whoops, no GIFs in my test suite) + add support for BMP version 5 (more ignored fields) + 1.38 (2014-06-06) + suppress MSVC warnings on integer casts truncating values + fix accidental rename of 'skip' field of I/O + 1.37 (2014-06-04) + remove duplicate typedef + 1.36 (2014-06-03) + convert to header file single-file library + if de-iphone isn't set, load iphone images color-swapped instead of returning NULL + 1.35 (2014-05-27) + various warnings + fix broken STBI_SIMD path + fix bug where stbi_load_from_file no longer left file pointer in correct place + fix broken non-easy path for 32-bit BMP (possibly never used) + TGA optimization by Arseny Kapoulkine + 1.34 (unknown) + use STBI_NOTUSED in stbi__resample_row_generic(), fix one more leak in tga failure case + 1.33 (2011-07-14) + make stbi_is_hdr work in STBI_NO_HDR (as specified), minor compiler-friendly improvements + 1.32 (2011-07-13) + support for "info" function for all supported filetypes (SpartanJ) + 1.31 (2011-06-20) + a few more leak fixes, bug in PNG handling (SpartanJ) + 1.30 (2011-06-11) + added ability to load files via callbacks to accomidate custom input streams (Ben Wenger) + removed deprecated format-specific test/load functions + removed support for installable file formats (stbi_loader) -- would have been broken for IO callbacks anyway + error cases in bmp and tga give messages and don't leak (Raymond Barbiero, grisha) + fix inefficiency in decoding 32-bit BMP (David Woo) + 1.29 (2010-08-16) + various warning fixes from Aurelien Pocheville + 1.28 (2010-08-01) + fix bug in GIF palette transparency (SpartanJ) + 1.27 (2010-08-01) + cast-to-stbi_uc to fix warnings + 1.26 (2010-07-24) + fix bug in file buffering for PNG reported by SpartanJ + 1.25 (2010-07-17) + refix trans_data warning (Won Chun) + 1.24 (2010-07-12) + perf improvements reading from files on platforms with lock-heavy fgetc() + minor perf improvements for jpeg + deprecated type-specific functions so we'll get feedback if they're needed + attempt to fix trans_data warning (Won Chun) + 1.23 fixed bug in iPhone support + 1.22 (2010-07-10) + removed image *writing* support + stbi_info support from Jetro Lauha + GIF support from Jean-Marc Lienher + iPhone PNG-extensions from James Brown + warning-fixes from Nicolas Schulz and Janez Zemva (i.stbi__err. Janez (U+017D)emva) + 1.21 fix use of 'stbi_uc' in header (reported by jon blow) + 1.20 added support for Softimage PIC, by Tom Seddon + 1.19 bug in interlaced PNG corruption check (found by ryg) + 1.18 (2008-08-02) + fix a threading bug (local mutable static) + 1.17 support interlaced PNG + 1.16 major bugfix - stbi__convert_format converted one too many pixels + 1.15 initialize some fields for thread safety + 1.14 fix threadsafe conversion bug + header-file-only version (#define STBI_HEADER_FILE_ONLY before including) + 1.13 threadsafe + 1.12 const qualifiers in the API + 1.11 Support installable IDCT, colorspace conversion routines + 1.10 Fixes for 64-bit (don't use "unsigned long") + optimized upsampling by Fabian "ryg" Giesen + 1.09 Fix format-conversion for PSD code (bad global variables!) + 1.08 Thatcher Ulrich's PSD code integrated by Nicolas Schulz + 1.07 attempt to fix C++ warning/errors again + 1.06 attempt to fix C++ warning/errors again + 1.05 fix TGA loading to return correct *comp and use good luminance calc + 1.04 default float alpha is 1, not 255; use 'void *' for stbi_image_free + 1.03 bugfixes to STBI_NO_STDIO, STBI_NO_HDR + 1.02 support for (subset of) HDR files, float interface for preferred access to them + 1.01 fix bug: possible bug in handling right-side up bmps... not sure + fix bug: the stbi__bmp_load() and stbi__tga_load() functions didn't work at all + 1.00 interface to zlib that skips zlib header + 0.99 correct handling of alpha in palette + 0.98 TGA loader by lonesock; dynamically add loaders (untested) + 0.97 jpeg errors on too large a file; also catch another malloc failure + 0.96 fix detection of invalid v value - particleman@mollyrocket forum + 0.95 during header scan, seek to markers in case of padding + 0.94 STBI_NO_STDIO to disable stdio usage; rename all #defines the same + 0.93 handle jpegtran output; verbose errors + 0.92 read 4,8,16,24,32-bit BMP files of several formats + 0.91 output 24-bit Windows 3.0 BMP files + 0.90 fix a few more warnings; bump version number to approach 1.0 + 0.61 bugfixes due to Marc LeBlanc, Christopher Lloyd + 0.60 fix compiling as c++ + 0.59 fix warnings: merge Dave Moore's -Wall fixes + 0.58 fix bug: zlib uncompressed mode len/nlen was wrong endian + 0.57 fix bug: jpg last huffman symbol before marker was >9 bits but less than 16 available + 0.56 fix bug: zlib uncompressed mode len vs. nlen + 0.55 fix bug: restart_interval not initialized to 0 + 0.54 allow NULL for 'int *comp' + 0.53 fix bug in png 3->4; speedup png decoding + 0.52 png handles req_comp=3,4 directly; minor cleanup; jpeg comments + 0.51 obey req_comp requests, 1-component jpegs return as 1-component, + on 'test' only check type, not whether we support this variant + 0.50 (2006-11-19) + first released version +*/ + + +/* +------------------------------------------------------------------------------ +This software is available under 2 licenses -- choose whichever you prefer. +------------------------------------------------------------------------------ +ALTERNATIVE A - MIT License +Copyright (c) 2017 Sean Barrett +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal in +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies +of the Software, and to permit persons to whom the Software is furnished to do +so, subject to the following conditions: +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. +------------------------------------------------------------------------------ +ALTERNATIVE B - Public Domain (www.unlicense.org) +This is free and unencumbered software released into the public domain. +Anyone is free to copy, modify, publish, use, compile, sell, or distribute this +software, either in source code form or as a compiled binary, for any purpose, +commercial or non-commercial, and by any means. +In jurisdictions that recognize copyright laws, the author or authors of this +software dedicate any and all copyright interest in the software to the public +domain. We make this dedication for the benefit of the public at large and to +the detriment of our heirs and successors. We intend this dedication to be an +overt act of relinquishment in perpetuity of all present and future rights to +this software under copyright law. +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN +ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +------------------------------------------------------------------------------ +*/ +